<?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>230278</bug_id>
          
          <creation_ts>2021-09-14 15:00:38 -0700</creation_ts>
          <short_desc>Use ObjectIdentifier for ResourceLoader</short_desc>
          <delta_ts>2021-09-17 17:10:44 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>berto</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>japhet</cc>
    
    <cc>joepeck</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kevin_neal</cc>
    
    <cc>kkinnunen</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mkwst</cc>
    
    <cc>pangle</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1793453</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-14 15:00:38 -0700</bug_when>
    <thetext>Use ObjectIdentifier for URL scheme handlers and tasks: WebURLSchemeTask, WebURLSchemeTaskProxy, and WebURLSchemeHandler

This patch is not ready quite yet because it currently conflicts with the patch in bug #229116. I&apos;ll refresh it after the patch in bug #229116 lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793459</commentid>
    <comment_count>1</comment_count>
      <attachid>438177</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-14 15:14:40 -0700</bug_when>
    <thetext>Created attachment 438177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793460</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-09-14 15:15:43 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See https://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793461</commentid>
    <comment_count>3</comment_count>
      <attachid>438178</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-14 15:16:30 -0700</bug_when>
    <thetext>Created attachment 438178
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793472</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-14 15:34:15 -0700</bug_when>
    <thetext>Looks like I have some build errors to fix. It looks like release logs are not enabled for GTK/WPE release builds, because these look like mostly cross-platform build errors that I didn&apos;t hit....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793718</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-09-15 08:55:27 -0700</bug_when>
    <thetext>&lt;rdar://problem/83152801&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793823</commentid>
    <comment_count>6</comment_count>
      <attachid>438282</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 13:09:42 -0700</bug_when>
    <thetext>Created attachment 438282
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793824</commentid>
    <comment_count>7</comment_count>
      <attachid>438282</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-15 13:13:52 -0700</bug_when>
    <thetext>Comment on attachment 438282
Patch

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

&gt; Source/WebKit/Shared/URLSchemeTaskParameters.cpp:50
&gt; +    WebURLSchemeHandlerIdentifier handlerIdentifier;

Doesn&apos;t Decoder::operator&gt;&gt; work here?

&gt; Source/WebKit/UIProcess/WebURLSchemeHandler.cpp:107
&gt; +    for (auto&amp; t : m_tasks.values()) {
&gt; +        if (t-&gt;webProcessTaskID() == webProcessTaskIdentifier) {

This is a loop we don&apos;t want to introduce in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793829</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 13:27:13 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #7)
&gt; Doesn&apos;t Decoder::operator&gt;&gt; work here?

I&apos;m not sure. Will find out.

&gt; &gt; Source/WebKit/UIProcess/WebURLSchemeHandler.cpp:107
&gt; &gt; +    for (auto&amp; t : m_tasks.values()) {
&gt; &gt; +        if (t-&gt;webProcessTaskID() == webProcessTaskIdentifier) {
&gt; 
&gt; This is a loop we don&apos;t want to introduce in this patch.

Yeah it&apos;s the same loop we&apos;re already discussing in https://bugs.webkit.org/show_bug.cgi?id=229116#c24. Once we agree how to proceed there, I will update this patch to match.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793830</commentid>
    <comment_count>9</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-15 13:28:03 -0700</bug_when>
    <thetext>I think we should make this patch only changing uint64_t to ObjectIdentifier, then we can do another change to address that bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793832</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 13:37:41 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #9)
&gt; I think we should make this patch only changing uint64_t to
&gt; ObjectIdentifier, then we can do another change to address that bug.

OK, as you prefer, but note it&apos;s going to be a little weird for the reason I mention in https://bugs.webkit.org/show_bug.cgi?id=229116#c25.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793848</commentid>
    <comment_count>11</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 14:26:23 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #10)
&gt; OK, as you prefer, but note it&apos;s going to be a little weird for the reason I
&gt; mention in https://bugs.webkit.org/show_bug.cgi?id=229116#c25.

I decided to avoid that by removing WebURLSchemeTaskIdentifier. Instead, I only introduce WebURLSchemeTaskProxyIdentifier here, that way this patch can misuse it exactly the same as the original code and avoid behavior changes in this bug. Then in bug #229116 I can fix things by introducing WebURLSchemeTaskIndentifier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793857</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 14:40:49 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #7)
&gt; &gt; Source/WebKit/Shared/URLSchemeTaskParameters.cpp:50
&gt; &gt; +    WebURLSchemeHandlerIdentifier handlerIdentifier;
&gt; 
&gt; Doesn&apos;t Decoder::operator&gt;&gt; work here?

It actually does work fine. I must have misread an error message at some point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793863</commentid>
    <comment_count>13</comment_count>
      <attachid>438293</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 14:48:49 -0700</bug_when>
    <thetext>Created attachment 438293
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793867</commentid>
    <comment_count>14</comment_count>
      <attachid>438293</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-15 14:51:54 -0700</bug_when>
    <thetext>Comment on attachment 438293
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:88
&gt; -    m_urlSchemeHandler.page().send(Messages::WebPageProxy::StartURLSchemeTask(URLSchemeTaskParameters { m_urlSchemeHandler.identifier(), m_coreLoader-&gt;identifier(), m_request, m_frame-&gt;info() }));
&gt; +    m_urlSchemeHandler.page().send(Messages::WebPageProxy::StartURLSchemeTask(URLSchemeTaskParameters { m_urlSchemeHandler.identifier(), m_identifier, m_request, m_frame-&gt;info() }));
&gt;  }
&gt;  
&gt;  void WebURLSchemeTaskProxy::stopLoading()
&gt;  {
&gt;      ASSERT(m_coreLoader);
&gt;      WEBURLSCHEMETASKPROXY_RELEASE_LOG(&quot;stopLoading&quot;);
&gt; -    m_urlSchemeHandler.page().send(Messages::WebPageProxy::StopURLSchemeTask(m_urlSchemeHandler.identifier(), m_coreLoader-&gt;identifier()));
&gt; +    m_urlSchemeHandler.page().send(Messages::WebPageProxy::StopURLSchemeTask(m_urlSchemeHandler.identifier(), m_identifier));

These are the only two changes that aren&apos;t a literal translation of the existing code, but it makes no difference because WebCore::ResourceLoader&apos;s identifier does not change after it is created. Seems cleaner to avoid converting from that to ObjectIdentifier again when we have a member variable handy already.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793929</commentid>
    <comment_count>15</comment_count>
      <attachid>438293</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-09-15 18:17:47 -0700</bug_when>
    <thetext>Comment on attachment 438293
Patch

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

&gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:465
&gt; +    if (auto task = m_urlSchemeTasks.take(makeObjectIdentifier&lt;WebURLSchemeTaskProxy&gt;(resourceLoader-&gt;identifier()))) {

I don’t understand this recurring pattern. Does the resource loader have an identifier that is a plain old integer; is it a different type of identifier for each different type of resource load? What makes it safe to just assume it’s a scheme task proxy identifier here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1793966</commentid>
    <comment_count>16</comment_count>
      <attachid>438293</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-16 00:32:03 -0700</bug_when>
    <thetext>Comment on attachment 438293
Patch

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

&gt; Source/WebKit/UIProcess/WebURLSchemeTask.cpp:51
&gt; +    // https://bugs.webkit.org/show_bug.cgi?id=229116

s/not not/not/
But also,  m_identifier+m_webPageProxyID is unique within UIProcess.
It could be that paired identifier that could be publicly exposed.

&gt;&gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:465
&gt;&gt; +    if (auto task = m_urlSchemeTasks.take(makeObjectIdentifier&lt;WebURLSchemeTaskProxy&gt;(resourceLoader-&gt;identifier()))) {
&gt; 
&gt; I don’t understand this recurring pattern. Does the resource loader have an identifier that is a plain old integer; is it a different type of identifier for each different type of resource load? What makes it safe to just assume it’s a scheme task proxy identifier here?

I also feel like we can do without this change.
Typing ResourceLoader::identifier() is a good thing and we could then reuse ResourceLoaderIdentifier directly.
If needed, there could be a mapping in UIProcess from PageProxyID+ResourceLoaderIdentifier to UIProcess generated WebURLSchemeTaskIdentifier.

&gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.h:140
&gt;      HashMap&lt;unsigned long, PreconnectCompletionHandler&gt; m_preconnectCompletionHandlers;

All these maps should in the end take the same key type (uint64_t or ResourceLoaderIdentifier).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794101</commentid>
    <comment_count>17</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-16 10:47:18 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #15)
&gt; &gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:465
&gt; &gt; +    if (auto task = m_urlSchemeTasks.take(makeObjectIdentifier&lt;WebURLSchemeTaskProxy&gt;(resourceLoader-&gt;identifier()))) {
&gt; 
&gt; I don’t understand this recurring pattern. Does the resource loader have an
&gt; identifier that is a plain old integer; 

This is correct.

&gt; is it a different type of identifier
&gt; for each different type of resource load?

No, it&apos;s just one identifier.

&gt; What makes it safe to just assume
&gt; it’s a scheme task proxy identifier here?

It&apos;s safe in the web process because each task corresponds to exactly one resource load. But in the UI process code, it is not safe. That&apos;s causing bug #229116 and ultimately that&apos;s what I want to fix. But in this intermediate patch, I&apos;m just trying to switch to ObjectIdentifier without changing behavior, since that&apos;s the order in which Alex preferred to do this.

That is: it&apos;s intentionally incorrect, matching the existing code, as a precursor to fix it in bug #229116.

(In reply to youenn fablet from comment #16)
&gt; s/not not/not/
&gt; But also,  m_identifier+m_webPageProxyID is unique within UIProcess.
&gt; It could be that paired identifier that could be publicly exposed.

Hm, I&apos;m not certain whether that is actually right with PSON. In theory, the WebPageProxy could correspond to multiple different WebPages. Maybe if a URI scheme request for a subresource load that is in flight at the same time that a process swap occurs, there could be confusion? I&apos;m not sure. We should discuss this proposal more in bug #229116.

&gt; I also feel like we can do without this change.
&gt; Typing ResourceLoader::identifier() is a good thing and we could then reuse
&gt; ResourceLoaderIdentifier directly.
&gt; If needed, there could be a mapping in UIProcess from
&gt; PageProxyID+ResourceLoaderIdentifier to UIProcess generated
&gt; WebURLSchemeTaskIdentifier.
&gt; 
&gt; &gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.h:140
&gt; &gt;      HashMap&lt;unsigned long, PreconnectCompletionHandler&gt; m_preconnectCompletionHandlers;
&gt; 
&gt; All these maps should in the end take the same key type (uint64_t or
&gt; ResourceLoaderIdentifier).

Hm, that does seem elegant, but it would require changes in a lot more code, unrelated to the URI scheme handlers. It&apos;s taking me a bit far away from the goal of fixing bug #229116. That said, we should absolutely convert ResourceLoader to use ObjectIdentifier. I would just rather not block bug #229116 on this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794196</commentid>
    <comment_count>18</comment_count>
      <attachid>438397</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-16 13:39:18 -0700</bug_when>
    <thetext>Created attachment 438397
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794206</commentid>
    <comment_count>19</comment_count>
      <attachid>438397</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-16 14:27:51 -0700</bug_when>
    <thetext>Comment on attachment 438397
Patch

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

OK, thanks Alex. This obviously turned out better than my approach. I&apos;m surprised you managed such a huge change so quickly.

(Note: I reviewed the first patch you attached.)

&gt; Source/WebCore/loader/DocumentLoader.cpp:2019
&gt; -void DocumentLoader::addSubresourceLoader(ResourceLoader* loader)
&gt; +void DocumentLoader::addSubresourceLoader(ResourceLoader&amp; loader)

Nice pointer -&gt; ref improvements too.

&gt; Source/WebCore/loader/ProgressTracker.cpp:290
&gt;  unsigned long ProgressTracker::createUniqueIdentifier()
&gt;  {
&gt; +    // FIXME: Use a strongly typed identifier for websockets and remove this.
&gt;      return ++s_uniqueIdentifier;
&gt;  }

Ah great, I was going to ask if it was possible to remove this.

&gt; Source/WebCore/loader/WorkerThreadableLoader.cpp:118
&gt; +    // FIXME: m_workerRequestIdentifier should have its own type, distinct from ResourceLoaderIdentifier, which should only be used to identify ResourceLoaders.

Hm, is this FIXME actually practical? You have to eventually cast to ResourceLoaderIdentifier no matter what, right? So you have to ensure the values don&apos;t clash with the values of ResourceLoaderIdentifiers. Am I missing something? Unless you have thought of something that I missed, I would just remove the FIXME.

&gt; Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:1271
&gt; -void NetworkConnectionToWebProcess::prioritizeResourceLoads(Vector&lt;ResourceLoadIdentifier&gt; loadIdentifiers)
&gt; +void NetworkConnectionToWebProcess::prioritizeResourceLoads(const Vector&lt;WebCore::ResourceLoaderIdentifier&gt;&amp; loadIdentifiers)

Oops, good.

&gt; Source/WebKit/UIProcess/ProvisionalPageProxy.h:128
&gt; -    void decidePolicyForResponse(WebCore::FrameIdentifier, FrameInfoData&amp;&amp;, WebCore::PolicyCheckIdentifier, uint64_t navigationID, const WebCore::ResourceResponse&amp;, const WebCore::ResourceRequest&amp;, bool canShowMIMEType, const String&amp; downloadAttribute, bool wasAllowedByInjectedBundle, WebCore::BrowsingContextGroupSwitchDecision, uint64_t listenerID, uint64_t mainResourceLoadIdentifier, const UserData&amp;);
&gt; +    void decidePolicyForResponse(WebCore::FrameIdentifier, FrameInfoData&amp;&amp;, WebCore::PolicyCheckIdentifier, uint64_t navigationID, const WebCore::ResourceResponse&amp;, const WebCore::ResourceRequest&amp;, bool canShowMIMEType, const String&amp; downloadAttribute, bool wasAllowedByInjectedBundle, WebCore::BrowsingContextGroupSwitchDecision, WebCore::ResourceLoaderIdentifier mainResourceLoadIdentifier, uint64_t listenerID, const UserData&amp;);

Wow, I see the parameters here were previously misnamed. Dangerous. Another win for ObjectIdentifier....

&gt; Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:709
&gt; -    loadParameters.identifier = WebLoaderStrategy::generateLoadIdentifier();
&gt; +    loadParameters.identifier =  WebCore::ResourceLoaderIdentifier::generate();

Extra space here.

&gt; Source/WebKit/WebProcess/WebPage/WebURLSchemeHandlerProxy.h:72
&gt; +    // FIXME: This should be a strongly typed identifier.
&gt;      uint64_t m_identifier { 0 };

Do you want to follow up on WebURLSchemeHandlerProxy, or want me to do it? This seems like the least-controversial portion of my patch since it&apos;s just a straight 1:1 conversion to use ObjectIdentifier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794208</commentid>
    <comment_count>20</comment_count>
      <attachid>438397</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-16 14:30:28 -0700</bug_when>
    <thetext>Comment on attachment 438397
Patch

r=me, of course I assume you placate EWS. Looks like there are missing spots in WebFrameLoaderClientIOS.mm. Then I&apos;m not sure what&apos;s wrong with the include path on the Windows bot....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794515</commentid>
    <comment_count>21</comment_count>
      <attachid>438397</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 11:17:20 -0700</bug_when>
    <thetext>Comment on attachment 438397
Patch

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

&gt; Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:852
&gt; +    auto mainResourceLoadIdentifier = policyDocumentLoader &amp;&amp; policyDocumentLoader-&gt;mainResourceLoader() ? policyDocumentLoader-&gt;mainResourceLoader()-&gt;identifier() : WebCore::ResourceLoaderIdentifier();

This needs to be std::nullopt instead of an empty ResourceLoaderIdentifier because we are sending it across IPC, which only allows valid identifiers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794516</commentid>
    <comment_count>22</comment_count>
      <attachid>438489</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 11:18:22 -0700</bug_when>
    <thetext>Created attachment 438489
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794555</commentid>
    <comment_count>23</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 12:30:49 -0700</bug_when>
    <thetext>Careful, you accidentally included a project.pbxproj.orig in the diff.

Also the GTK/WPE EWS is not happy with this version of the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794556</commentid>
    <comment_count>24</comment_count>
      <attachid>438489</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 12:32:52 -0700</bug_when>
    <thetext>Comment on attachment 438489
Patch

There&apos;s also a Document.cpp.orig... probably more, not sure because it&apos;s taking forever to load the full diff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794557</commentid>
    <comment_count>25</comment_count>
      <attachid>438502</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 12:39:55 -0700</bug_when>
    <thetext>Created attachment 438502
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794583</commentid>
    <comment_count>26</comment_count>
      <attachid>438502</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 13:38:40 -0700</bug_when>
    <thetext>Comment on attachment 438502
Patch

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

&gt; Source/WebCore/loader/FrameLoader.cpp:3598
&gt; -    identifier = 0;
&gt; +    identifier = { };
&gt;      if (Page* page = m_frame.page()) {
&gt; -        identifier = page-&gt;progress().createUniqueIdentifier();
&gt; +        identifier = ResourceLoaderIdentifier::generate();
&gt;          notifier().assignIdentifierToInitialRequest(identifier, m_documentLoader.get(), request);
&gt;      }

This condition needs to be removed, because page is no longer required to generate the identifier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794584</commentid>
    <comment_count>27</comment_count>
      <attachid>438502</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 13:41:14 -0700</bug_when>
    <thetext>Comment on attachment 438502
Patch

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

&gt; Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:61
&gt; +    void didInitiateLoadForResource(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier, const WebCore::ResourceRequest&amp;, bool /*pageIsProvisionallyLoading*/) override;
&gt; +    void willSendRequestForFrame(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier, WebCore::ResourceRequest&amp;, const WebCore::ResourceResponse&amp;) override;
&gt; +    void didReceiveResponseForResource(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier, const WebCore::ResourceResponse&amp;) override;
&gt; +    void didReceiveContentLengthForResource(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier, uint64_t contentLength) override;
&gt; +    void didFinishLoadForResource(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier) override;
&gt; +    void didFailLoadForResource(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier, const WebCore::ResourceError&amp;) override;
&gt; +    bool shouldCacheResponse(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier) override;
&gt; +    bool shouldUseCredentialStorage(WebPage&amp;, WebFrame&amp;, WebCore::ResourceLoaderIdentifier) override;

This is what&apos;s breaking the WPE/GTK EWS. It should work if you also update PageResourceLoadClient in WebKitWebPage.cpp. Should be trivial.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794588</commentid>
    <comment_count>28</comment_count>
      <attachid>438510</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 13:44:25 -0700</bug_when>
    <thetext>Created attachment 438510
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794593</commentid>
    <comment_count>29</comment_count>
      <attachid>438502</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 13:51:46 -0700</bug_when>
    <thetext>Comment on attachment 438502
Patch

Ah, I notice there is also Source/WebKit/NetworkProcess/NetworkProcess.h.rej added my mistake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794594</commentid>
    <comment_count>30</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 13:52:50 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #29)
&gt; Comment on attachment 438502 [details]
&gt; Patch
&gt; 
&gt; Ah, I notice there is also Source/WebKit/NetworkProcess/NetworkProcess.h.rej
&gt; added my mistake.

Oops.  I&apos;ll remove in my next iteration.

(In reply to Michael Catanzaro from comment #26)
&gt; Comment on attachment 438502 [details]
&gt; Patch
&gt; 
&gt; This condition needs to be removed, because page is no longer required to
&gt; generate the identifier.

That may be true, but in a separate patch.  I think this should change as little as possible to help with bisection.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794604</commentid>
    <comment_count>31</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-09-17 14:05:08 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #30)
&gt; That may be true, but in a separate patch.  I think this should change as
&gt; little as possible to help with bisection.

I mean it&apos;s really totally unused, I noticed because it introduces a -Wunused-variable warning. Don&apos;t do that. :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794624</commentid>
    <comment_count>32</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-09-17 14:42:58 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #31)
&gt; (In reply to Alex Christensen from comment #30)
&gt; &gt; That may be true, but in a separate patch.  I think this should change as
&gt; &gt; little as possible to help with bisection.
&gt; 
&gt; I mean it&apos;s really totally unused, I noticed because it introduces a
&gt; -Wunused-variable warning. Don&apos;t do that. :P

So we can leave the null check in for now, and remove that in a later patch, but must not put it in a local variable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794636</commentid>
    <comment_count>33</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 15:07:49 -0700</bug_when>
    <thetext>Ohhh.  Now I see what you&apos;re talking about.  page is no longer needed.  Will remove the now-unnecessary branch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794640</commentid>
    <comment_count>34</comment_count>
      <attachid>438522</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 15:23:31 -0700</bug_when>
    <thetext>Created attachment 438522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794653</commentid>
    <comment_count>35</comment_count>
      <attachid>438523</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 15:43:46 -0700</bug_when>
    <thetext>Created attachment 438523
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794703</commentid>
    <comment_count>36</comment_count>
      <attachid>438523</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-09-17 17:10:33 -0700</bug_when>
    <thetext>Comment on attachment 438523
Patch

https://trac.webkit.org/r282712</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438177</attachid>
            <date>2021-09-14 15:14:40 -0700</date>
            <delta_ts>2021-09-14 15:16:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210914171439.patch</filename>
            <type>text/plain</type>
            <size>54925</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyMjU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE4M2IzMTY0NDBiM2Q0MGYy
ODdmMjhlMWRmZGNiZmIxMTgzYmUyNjMuLmU3ZDE3YWEwOWMzZmQwYTBjMjkxMWM3MTI1ZjY4ODdj
MzZlZTgzYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMjEtMDktMTQgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElk
ZW50aWZpZXIgZm9yIFVSTCBzY2hlbWUgaGFuZGxlcnMgYW5kIHRhc2tzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3Nh
Z2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6
CisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hh
cmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmg6CisgICAgICAgICgpOiBEZWxldGVkLgorICAg
ICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnN0b3BV
UkxTY2hlbWVUYXNrKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXI6OldlYlVSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2spOgorICAgICAgICAoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXApOgorICAgICAgICAo
V2ViS2l0OjpnZW5lcmF0ZVdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKTogRGVsZXRlZC4K
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZVRhc2s6OldlYlVSTFNjaGVtZVRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVUYXNrOjp3aWxsUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJM
U2NoZW1lVGFzazo6ZGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxT
Y2hlbWVUYXNrOjpkaWRDb21wbGV0ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVt
ZVRhc2suaDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6aWRlbnRpZmllciBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2s6OndlYlByb2Nlc3NUYXNr
SUQgY29uc3QpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVnaXN0ZXJV
UkxTY2hlbWVIYW5kbGVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxT
Y2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tE
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZENvbXBsZXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5OjpyZW1vdmVUYXNrKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6V2ViVVJMU2NoZW1lVGFza1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5OjpzdGFydExvYWRpbmcpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0b3BMb2FkaW5nKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5Lmg6CisgICAgICAg
IChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6aWRlbnRpZmllciBjb25zdCk6CisKIDIw
MjEtMDktMDkgIEJlbiBOaGFtICA8bmhhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUHJlY29ubmVj
dGVkIHNvY2tldCBpcyBzb21ldGltZXMgbm90IHVzZWQgZm9yIGluaXRpYWwgcmVxdWVzdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJj
ZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggM2QxMTZkYmM2YmNhYjQ3
NTU0ZWZjMjQ0YzI3MWIxYmNlYTNmNDFmMy4uYzNhMDNiODQ3NjkxZmQzYzRiMzlkMjQ4YmUzYmQw
NDViZTMzMzlmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNz
YWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBA
IC0zNTMsNiArMzUzLDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFy
ZWQoKToKICAgICAgICAgJ1dlYktpdDo6VHJhbnNhY3Rpb25JRCcsCiAgICAgICAgICdXZWJLaXQ6
OlVzZXJDb250ZW50Q29udHJvbGxlcklkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpXZWJQ
YWdlUHJveHlJZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxl
cklkZW50aWZpZXInLAorICAgICAgICAnV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6WFJEZXZpY2VJZGVudGlmaWVyJywKICAgICBdKQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAK
aW5kZXggZDVjYTNiYmZlMDgwYmU3ZTg3MDJjNTIyNTViOTViOWI4ZWI5OWViNi4uZGRiZWIzNmQx
NWFhYWJlYmU2NWQ2NDcxNWYwYjJlY2QxYmYzNWI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcApAQCAtNDcsMTQgKzQ3LDEyIEBAIHZv
aWQgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIp
IGNvbnN0CiAKIHN0ZDo6b3B0aW9uYWw8VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM+IFVSTFNjaGVt
ZVRhc2tQYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQogewotICAgIHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGhhbmRsZXJJZGVudGlmaWVyOwotICAgIGRlY29kZXIgPj4g
aGFuZGxlcklkZW50aWZpZXI7Ci0gICAgaWYgKCFoYW5kbGVySWRlbnRpZmllcikKKyAgICBXZWJV
UkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllcjsKKyAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKGhhbmRsZXJJZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKICAgICAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB0YXNrSWRlbnRpZmllcjsK
LSAgICBkZWNvZGVyID4+IHRhc2tJZGVudGlmaWVyOwotICAgIGlmICghdGFza0lkZW50aWZpZXIp
CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcjsKKyAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKHRhc2tJZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKIAogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0OwpAQCAt
NzgsOCArNzYsOCBAQCBzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxT
Y2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjbwogICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwogCiAgICAgcmV0dXJuIHt7Ci0gICAgICAgIFdURk1vdmUoKmhhbmRsZXJJZGVu
dGlmaWVyKSwKLSAgICAgICAgV1RGTW92ZSgqdGFza0lkZW50aWZpZXIpLAorICAgICAgICBXVEZN
b3ZlKGhhbmRsZXJJZGVudGlmaWVyKSwKKyAgICAgICAgV1RGTW92ZSh0YXNrSWRlbnRpZmllciks
CiAgICAgICAgIFdURk1vdmUocmVxdWVzdCksCiAgICAgICAgIFdURk1vdmUoKmZyYW1lSW5mbyks
CiAgICAgfX07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNr
UGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuaAppbmRleCA2NzgyMzk2YjBmOWQwOWIzYmVkMmVmNDliY2JkNWNjOTUzYzZkNTk1Li5lNGQy
YTAwZjI1Y2UyZGY3NGUwZTQ4MzE4MTMzMWZhMzM2Njk0ZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKQEAgLTI2LDYgKzI2LDggQEAKICNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRnJhbWVJbmZvRGF0YS5oIgorI2luY2x1ZGUgIldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAK
IG5hbWVzcGFjZSBJUEMgewpAQCAtMzYsOCArMzgsOCBAQCBjbGFzcyBEZWNvZGVyOwogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHN0cnVjdCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7Ci0gICAgdWlu
dDY0X3QgaGFuZGxlcklkZW50aWZpZXIgeyAwIH07Ci0gICAgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIgeyAwIH07CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50
aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmll
cjsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdDsKICAgICBGcmFtZUluZm9E
YXRhIGZyYW1lSW5mbzsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA5NjgyNDhkNDMyZjY0NTFlMGQyYzI5ZjdhMzQwYjA2
NzQxNzI5ZjcwLi42Mjg2NTU3MmYxNjdlODNiYzcwMWUwM2QxMDVhODc0YWE4YjM1ZTlkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBA
IC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiV2ViUGFnZUdyb3VwRGF0YS5oIgogI2luY2x1ZGUg
IldlYlBhZ2VQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJlbmNlc1N0b3Jl
LmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0FjdGl2aXR5U3RhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0NvbG9yLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9EZXN0aW5hdGlvbkNvbG9yU3BhY2UuaD4KQEAgLTIwMSw3ICsyMDIs
NyBAQCBzdHJ1Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIG92ZXJy
aWRlQ29udGVudFNlY3VyaXR5UG9saWN5OwogICAgIHN0ZDo6b3B0aW9uYWw8ZG91YmxlPiBjcHVM
aW1pdDsKIAotICAgIEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gdXJsU2NoZW1lSGFuZGxlcnM7
CisgICAgSGFzaE1hcDxTdHJpbmcsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyPiB1cmxT
Y2hlbWVIYW5kbGVyczsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzV2l0aExlZ2FjeUN1
c3RvbVByb3RvY29sSGFuZGxlcnM7CiAKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1Qp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNv
bnRleHQuY3BwCmluZGV4IGJkMmQ0ZDIwMjA2ZjhiODZmZTRjZDFhYzkwZDkwYjc5YzM0OGVkOWQu
LmY1NDNkN2Y0OTI1NTU0MzlkNjI4ZDNlYmNjNzkwNTEyMzk0YmU2MjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwCkBA
IC0xOTQsNyArMTk0LDcgQEAgcHJpdmF0ZToKICAgICBXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Q2Fs
bGJhY2sgbV9jYWxsYmFjayB7IG51bGxwdHIgfTsKICAgICB2b2lkKiBtX3VzZXJEYXRhIHsgbnVs
bHB0ciB9OwogICAgIEdEZXN0cm95Tm90aWZ5IG1fZGVzdHJveU5vdGlmeSB7IG51bGxwdHIgfTsK
LSAgICBIYXNoTWFwPHVpbnQ2NF90LCBHUmVmUHRyPFdlYktpdFVSSVNjaGVtZVJlcXVlc3Q+PiBt
X3JlcXVlc3RzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza0lkZW50aWZpZXIsIEdSZWZQ
dHI8V2ViS2l0VVJJU2NoZW1lUmVxdWVzdD4+IG1fcmVxdWVzdHM7CiB9OwogCiB0eXBlZGVmIEhh
c2hNYXA8U3RyaW5nLCBSZWZQdHI8V2ViS2l0VVJJU2NoZW1lSGFuZGxlcj4gPiBVUklTY2hlbWVI
YW5kbGVyTWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXgg
M2VlZGM5ZjYzY2MzOTYyNzE2MzlhOGJjOWMxZmY3Mzc0NmYwYjE0My4uOTAwNzA1NGJiMTAzNWIx
MjNmY2M0MmRiNDFlYzRhMjdlMmQxMjE0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCkBAIC05OTc3LDcgKzk5NzcsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c3Rh
cnRVUkxTY2hlbWVUYXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFn
ZQogICAgIGl0ZXJhdG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCBwcm9jZXNzLCB3ZWJQYWdl
SUQsIFdURk1vdmUocGFyYW1ldGVycyksIG51bGxwdHIpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94
eTo6c3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyKQordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKFdl
YlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAgIE1FU1NBR0VfQ0hF
Q0sobV9wcm9jZXNzLCBkZWNsdHlwZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6
aXNWYWxpZEtleShoYW5kbGVySWRlbnRpZmllcikpOwogICAgIGF1dG8gaXRlcmF0b3IgPSBtX3Vy
bFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA0N2UxODdjYjZkZmFmM2ZhNjJm
OWM2YzAzNDJmZTVhNmE4YWE1ZjBkLi4wYTk1YTE1NTc2MDJlYjBhNGZmNmZiNzQwYmJhYjk2MTVl
NmU1OWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtNzcsNiAr
NzcsOCBAQAogI2luY2x1ZGUgIldlYlBheW1lbnRDb29yZGluYXRvclByb3h5LmgiCiAjaW5jbHVk
ZSAiV2ViUG9wdXBNZW51UHJveHkuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJlbmNlcy5oIgorI2lu
Y2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5jbHVkZSAiV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlVuZG9TdGVwSUQuaCIK
ICNpbmNsdWRlICJXZWJzaXRlUG9saWNpZXNEYXRhLmgiCiAjaW5jbHVkZSAiV2luZG93S2luZC5o
IgpAQCAtMjQzMCw3ICsyNDMyLDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgdm9pZCBzdGFy
dFVSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7Ci0gICAgdm9pZCBzdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFVSTFNjaGVtZVRhc2soV2ViVVJMU2NoZW1lSGFuZGxl
cklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZp
ZXIpOwogICAgIHZvaWQgbG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNr
UGFyYW1ldGVycyYmLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxT
Y2hlbWVUYXNrRGVsYXllZFJlcGx5JiYpOwogCiAgICAgYm9vbCBjaGVja1VSTFJlY2VpdmVkRnJv
bUN1cnJlbnRPclByZXZpb3VzV2ViUHJvY2VzcyhXZWJQcm9jZXNzUHJveHkmLCBjb25zdCBTdHJp
bmcmKTsKQEAgLTI5ODQsNyArMjk4Niw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3ByZWZlckZh
c3RlckNsaWNrT3ZlckRvdWJsZVRhcCB7IGZhbHNlIH07CiAKICAgICBIYXNoTWFwPFN0cmluZywg
UmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+PiBtX3VybFNjaGVtZUhhbmRsZXJzQnlTY2hlbWU7Ci0g
ICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+PiBtX3VybFNjaGVt
ZUhhbmRsZXJzQnlJZGVudGlmaWVyOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lSGFuZGxlcklk
ZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPj4gbV91cmxTY2hlbWVIYW5kbGVyc0J5
SWRlbnRpZmllcjsKIAogI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCiAgICAgdXNpbmcg
SWRlbnRpZmllclRvQXR0YWNobWVudE1hcCA9IEhhc2hNYXA8U3RyaW5nLCBSZWY8QVBJOjpBdHRh
Y2htZW50Pj47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVz
c2FnZXMuaW4KaW5kZXggZmM1NWU3NjU5YTg5MjA5ODBmZDQyMTI5YWMzZjBkYWM3NWJiYjkxMy4u
MjgwNDBhNzc1MmIyZDcxZTRhNjEzMDM1OGQ4ZDIwODU1NmY3OTc0NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtNTIzLDcgKzUy
Myw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgU2V0SXNVc2luZ0hpZ2hQZXJm
b3JtYW5jZVdlYkdMKGJvb2wgaXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKQogCiAgICAgU3Rh
cnRVUkxTY2hlbWVUYXNrKHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBh
cmFtZXRlcnMpCi0gICAgU3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKQorICAgIFN0b3BVUkxTY2hlbWVUYXNrKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktp
dDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKICAgICBM
b2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQ
YXJhbWV0ZXJzIHBhcmFtZXRlcnMpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3Bv
bnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBWZWN0b3I8dWludDhfdD4gZGF0YSkg
U3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCmluZGV4IGZmNjhkNjRl
MTgwMmFkZWJjNDAxNGI4YjYxNzkxYTAyZjRlNGU0YTAuLjMyNDE1YzZlNjdjOWVmZDhlMjAyNjU0
YjYxZTczMjdjY2Y0ZTJmYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlVSTFNjaGVtZUhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVS
TFNjaGVtZUhhbmRsZXIuY3BwCkBAIC0zMywxNCArMzMsOCBAQAogbmFtZXNwYWNlIFdlYktpdCB7
CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlV2Vi
VVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIoKQotewotICAgIHN0YXRpYyB1aW50NjRfdCBuZXh0
SWRlbnRpZmllciA9IDE7Ci0gICAgcmV0dXJuIG5leHRJZGVudGlmaWVyKys7Ci19Ci0KIFdlYlVS
TFNjaGVtZUhhbmRsZXI6OldlYlVSTFNjaGVtZUhhbmRsZXIoKQotICAgIDogbV9pZGVudGlmaWVy
KGdlbmVyYXRlV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIoKSkKKyAgICA6IG1faWRlbnRp
ZmllcihPYmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZUhhbmRsZXI+OjpnZW5lcmF0ZSgpKQog
ewogfQogCkBAIC01MSwxOCArNDUsMTkgQEAgV2ViVVJMU2NoZW1lSGFuZGxlcjo6fldlYlVSTFNj
aGVtZUhhbmRsZXIoKQogCiB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0YXJ0VGFzayhXZWJQ
YWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIg
d2ViUGFnZUlELCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMsIFN5bmNMb2Fk
Q29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBhdXRvIHRhc2tJ
ZGVudGlmaWVyID0gcGFyYW1ldGVycy50YXNrSWRlbnRpZmllcjsKLSAgICBhdXRvIHJlc3VsdCA9
IG1fdGFza3MuYWRkKHRhc2tJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoKnRo
aXMsIHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpKTsKKyAgICBhdXRvIHRhc2sgPSBXZWJVUkxTY2hlbWVUYXNr
OjpjcmVhdGUoKnRoaXMsIHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0
ZXJzKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIGF1dG8gdGFza0lkZW50aWZp
ZXIgPSB0YXNrLT5pZGVudGlmaWVyKCk7CisgICAgYXV0byByZXN1bHQgPSBtX3Rhc2tzLmFkZCh0
YXNrSWRlbnRpZmllciwgV1RGTW92ZSh0YXNrKSk7CiAgICAgQVNTRVJUKHJlc3VsdC5pc05ld0Vu
dHJ5KTsKIAotICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuYWRk
KHBhZ2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PHVpbnQ2NF90PigpKTsKKyAgICBhdXRvIHBhZ2VF
bnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFkZChwYWdlLmlkZW50aWZpZXIoKSwgSGFz
aFNldDxXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllcj4oKSk7CiAgICAgQVNTRVJUKCFwYWdlRW50
cnkuaXRlcmF0b3ItPnZhbHVlLmNvbnRhaW5zKHRhc2tJZGVudGlmaWVyKSk7CiAgICAgcGFnZUVu
dHJ5Lml0ZXJhdG9yLT52YWx1ZS5hZGQodGFza0lkZW50aWZpZXIpOwogCiAgICAgcGxhdGZvcm1T
dGFydFRhc2socGFnZSwgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiB9CiAKLVdlYlByb2Nlc3NQ
cm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyKSBjb25zdAorV2ViUHJvY2Vzc1Byb3h5KiBXZWJVUkxTY2hlbWVI
YW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIoV2ViVVJMU2NoZW1lVGFza0lkZW50aWZp
ZXIgdGFza0lkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNsdHlwZShtX3Rhc2tzKTo6
aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAt
NzksNyArNzQsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBh
Z2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAgICAgICByZXR1cm47CiAK
ICAgICBhdXRvJiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsKLSAgICBWZWN0b3I8dWlu
dDY0X3Q+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8V2ViVVJMU2NoZW1lVGFz
a0lkZW50aWZpZXI+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKICAgICB0YXNrSWRlbnRpZmllcnNU
b1N0b3AucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSh0YXNrc0J5UGFnZS5zaXplKCkpOwogICAgIGZv
ciAoYXV0byB0YXNrSWRlbnRpZmllciA6IHRhc2tzQnlQYWdlKSB7CiAgICAgICAgIGlmICghcHJv
Y2VzcyB8fCBwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIodGFza0lkZW50aWZpZXIpID09IHByb2Nl
c3MpCkBAIC05MSw3ICs4Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRh
c2tzRm9yUGFnZShXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94CiAKIH0KIAotdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wVGFzayhXZWJQYWdlUHJveHkmIHBhZ2UsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wVGFzayhX
ZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyKQogewogICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6OmlzVmFsaWRLZXkodGFza0lkZW50
aWZpZXIpKQogICAgICAgICByZXR1cm47CkBAIC0xMDYsNiArMTAxLDE2IEBAIHZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCB0YXNr
SWRlbnRpZmllcikKICAgICBtX3Rhc2tzLnJlbW92ZShpdGVyYXRvcik7CiB9CiAKK3ZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyIHdlYlByb2Nlc3NUYXNrSWRlbnRpZmllcikKK3sKKyAgICBm
b3IgKGF1dG8mIHQgOiBtX3Rhc2tzLnZhbHVlcygpKSB7CisgICAgICAgIGlmICh0LT53ZWJQcm9j
ZXNzVGFza0lEKCkgPT0gd2ViUHJvY2Vzc1Rhc2tJZGVudGlmaWVyKSB7CisgICAgICAgICAgICBz
dG9wVGFzayhwYWdlLCB0LT5pZGVudGlmaWVyKCkpOworICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnRhc2tDb21wbGV0
ZWQoV2ViVVJMU2NoZW1lVGFzayYgdGFzaykKIHsKICAgICBhdXRvIHRha2VuVGFzayA9IG1fdGFz
a3MudGFrZSh0YXNrLmlkZW50aWZpZXIoKSk7CkBAIC0xMTUsNyArMTIwLDcgQEAgdm9pZCBXZWJV
UkxTY2hlbWVIYW5kbGVyOjp0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smIHRhc2spCiAg
ICAgcGxhdGZvcm1UYXNrQ29tcGxldGVkKHRhc2spOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXI6OnJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJ
RCwgdWludDY0X3QgdGFza0lEKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNr
RnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIFdlYlVSTFNjaGVtZVRh
c2tJZGVudGlmaWVyIHRhc2tJRCkKIHsKICAgICBhdXRvIGl0ZXJhdG9yID0gbV90YXNrc0J5UGFn
ZUlkZW50aWZpZXIuZmluZChwYWdlSUQpOwogICAgIEFTU0VSVChpdGVyYXRvciAhPSBtX3Rhc2tz
QnlQYWdlSWRlbnRpZmllci5lbmQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJV
UkxTY2hlbWVIYW5kbGVyLmgKaW5kZXggZjRlM2RiNjBjYzNiOGUwMDBiMzQ2MDMyYTk5OTdlZWMw
MTQ0ZDhkYi4uNzZmM2UzZGZmZDZiZGM1YTI4ZTk0N2I5M2FlYzRmY2ViMGNmOTgyOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuaApAQCAtMjUsNiAr
MjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFzay5oIgogI2luY2x1ZGUgPHd0
Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTQ4LDEwICs0OSwxMSBA
QCBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViVVJMU2No
ZW1lSGFuZGxlcj4gewogcHVibGljOgogICAgIHZpcnR1YWwgfldlYlVSTFNjaGVtZUhhbmRsZXIo
KTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZp
ZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHN0YXJ0VGFzayhXZWJQYWdl
UHJveHkmLCBXZWJQcm9jZXNzUHJveHkmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMmJiwgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciYmKTsKLSAgICB2
b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKTsKKyAg
ICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNjaGVtZVRhc2tQcm94
eUlkZW50aWZpZXIgd2ViUHJvY2Vzc1Rhc2tJRCk7CiAgICAgdm9pZCBzdG9wQWxsVGFza3NGb3JQ
YWdlKFdlYlBhZ2VQcm94eSYsIFdlYlByb2Nlc3NQcm94eSopOwogICAgIHZvaWQgdGFza0NvbXBs
ZXRlZChXZWJVUkxTY2hlbWVUYXNrJik7CiAKQEAgLTYzLDEzICs2NSwxMyBAQCBwcml2YXRlOgog
ICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNj
aGVtZVRhc2smKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtVGFza0NvbXBsZXRlZChX
ZWJVUkxTY2hlbWVUYXNrJikgeyB9OwogCi0gICAgdm9pZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAo
V2ViUGFnZVByb3h5SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lEKTsKLSAgICBXZWJQcm9jZXNz
UHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCkgY29uc3Q7CisgICAgdm9p
ZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgV2ViVVJMU2No
ZW1lVGFza0lkZW50aWZpZXIpOworICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJ
ZGVudGlmaWVyKFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyKSBjb25zdDsKIAotICAgIHVpbnQ2
NF90IG1faWRlbnRpZmllcjsKKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBtX2lk
ZW50aWZpZXI7CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWY8V2ViVVJMU2NoZW1lVGFzaz4+
IG1fdGFza3M7Ci0gICAgSGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBIYXNoU2V0PHVp
bnQ2NF90Pj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hl
bWVUYXNrSWRlbnRpZmllciwgUmVmPFdlYlVSTFNjaGVtZVRhc2s+PiBtX3Rhc2tzOworICAgIEhh
c2hNYXA8V2ViUGFnZVByb3h5SWRlbnRpZmllciwgSGFzaFNldDxXZWJVUkxTY2hlbWVUYXNrSWRl
bnRpZmllcj4+IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOwogICAgIAogICAgIFN5bmNMb2FkQ29t
cGxldGlvbkhhbmRsZXIgbV9zeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suY3BwCmluZGV4IDllMWRiYmZjOGU4Mjg4
MDFlYjA4ODNhMjYwMGQxZWFhM2ZmY2ZmYjcuLmZkMzY5YjA5YzkzMjE2Yjk0YWM3NjczOWZkOThi
ZGFmYTM0Mjk2ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNj
aGVtZVRhc2suY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suY3BwCkBAIC00NSw3ICs0NSw4IEBAIFJlZjxXZWJVUkxTY2hlbWVUYXNrPiBXZWJVUkxTY2hl
bWVUYXNrOjpjcmVhdGUoV2ViVVJMU2NoZW1lSGFuZGxlciYgaGFuZGxlciwgV2ViCiBXZWJVUkxT
Y2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIs
IFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBQYWdlSWRlbnRp
ZmllciB3ZWJQYWdlSUQsIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYgcGFyYW1ldGVycywgU3lu
Y0xvYWRDb21wbGV0aW9uSGFuZGxlciYmIHN5bmNDb21wbGV0aW9uSGFuZGxlcikKICAgICA6IG1f
dXJsU2NoZW1lSGFuZGxlcihoYW5kbGVyKQogICAgICwgbV9wcm9jZXNzKG1ha2VSZWYocHJvY2Vz
cykpCi0gICAgLCBtX2lkZW50aWZpZXIocGFyYW1ldGVycy50YXNrSWRlbnRpZmllcikKKyAgICAs
IG1faWRlbnRpZmllcihPYmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZVRhc2s+OjpnZW5lcmF0
ZSgpKQorICAgICwgbV93ZWJQcm9jZXNzVGFza0lEKHBhcmFtZXRlcnMudGFza0lkZW50aWZpZXIp
CiAgICAgLCBtX3BhZ2VQcm94eUlEKHBhZ2UuaWRlbnRpZmllcigpKQogICAgICwgbV93ZWJQYWdl
SUQod2ViUGFnZUlEKQogICAgICwgbV9yZXF1ZXN0KFdURk1vdmUocGFyYW1ldGVycy5yZXF1ZXN0
KSkKQEAgLTEwNiw3ICsxMDcsNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6OndpbGxQZXJmb3Jt
UmVkaXJlY3Rpb24oUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdQogICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShyZXF1ZXN0KSk7CiAgICAgfTsKIAotICAgIHBh
Z2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza1dp
bGxQZXJmb3JtUmVkaXJlY3Rpb24obV91cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1f
aWRlbnRpZmllciwgcmVzcG9uc2UsIHJlcXVlc3QpLCBXVEZNb3ZlKGlubmVyQ29tcGxldGlvbkhh
bmRsZXIpKTsKKyAgICBwYWdlLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6
OlVSTFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKG1fdXJsU2NoZW1lSGFuZGxlci0+
aWRlbnRpZmllcigpLCBtX3dlYlByb2Nlc3NUYXNrSUQsIHJlc3BvbnNlLCByZXF1ZXN0KSwgV1RG
TW92ZShpbm5lckNvbXBsZXRpb25IYW5kbGVyKSk7CiAKICAgICByZXR1cm4gRXhjZXB0aW9uVHlw
ZTo6Tm9uZTsKIH0KQEAgLTEzOCw3ICsxMzksNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6OmRp
ZFBlcmZvcm1SZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9ucwog
ICAgICAgICBtX3JlcXVlc3QgPSByZXF1ZXN0OwogICAgIH0KIAotICAgIG1fcHJvY2Vzcy0+c2Vu
ZChNZXNzYWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbiht
X3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyLCByZXNwb25zZSwg
cmVxdWVzdCksIG1fd2ViUGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24obV91cmxTY2hlbWVIYW5k
bGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgcmVzcG9uc2UsIHJlcXVlc3Qp
LCBtX3dlYlBhZ2VJRCk7CiAKICAgICByZXR1cm4gRXhjZXB0aW9uVHlwZTo6Tm9uZTsKIH0KQEAg
LTE2NCw3ICsxNjUsNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6OmRpZFJlY2VpdmVSZXNwb25z
ZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgLT4gRQogICAgIGlmIChpc1N5bmMo
KSkKICAgICAgICAgbV9zeW5jUmVzcG9uc2UgPSByZXNwb25zZTsKIAotICAgIG1fcHJvY2Vzcy0+
c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSht
X3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyLCByZXNwb25zZSks
IG1fd2ViUGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVS
TFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UobV91cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlm
aWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgcmVzcG9uc2UpLCBtX3dlYlBhZ2VJRCk7CiAgICAg
cmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CiB9CiAKQEAgLTE5NCw3ICsxOTUsNyBAQCBhdXRv
IFdlYlVSTFNjaGVtZVRhc2s6OmRpZFJlY2VpdmVEYXRhKFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVm
ZmVyKSAtPiBFeGNlcHRpb25UeQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uVHlwZTo6Tm9uZTsK
ICAgICB9CiAKLSAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVt
ZVRhc2tEaWRSZWNlaXZlRGF0YShtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9p
ZGVudGlmaWVyLCBidWZmZXIuZ2V0KCkpLCBtX3dlYlBhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEobV91cmxT
Y2hlbWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgYnVmZmVyLmdl
dCgpKSwgbV93ZWJQYWdlSUQpOwogICAgIHJldHVybiBFeGNlcHRpb25UeXBlOjpOb25lOwogfQog
CkBAIC0yMjUsNyArMjI2LDcgQEAgYXV0byBXZWJVUkxTY2hlbWVUYXNrOjpkaWRDb21wbGV0ZShj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikgLT4gRXhjZXB0aW9uVHlwZQogICAgICAgICBtX3N5
bmNEYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZShtX3VybFNjaGVtZUhhbmRsZXItPmlk
ZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyLCBlcnJvciksIG1fd2ViUGFnZUlEKTsKKyAgICBtX3By
b2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZSht
X3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV93ZWJQcm9jZXNzVGFza0lELCBlcnJv
ciksIG1fd2ViUGFnZUlEKTsKICAgICBtX3VybFNjaGVtZUhhbmRsZXItPnRhc2tDb21wbGV0ZWQo
KnRoaXMpOwogCiAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKaW5kZXggZWFjMDliZGVjYTFkZWMwY2IyMTlh
YzFkMDMzMDhiMmUyNzIzMDljZS4uYTllMWIwMjdkMzBkNmI1MzhkMWNlOTA1OTNmYWY0ZDE3NTBh
ODFjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFz
ay5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaApAQCAt
MjcsMTIgKzI3LDE0IEBACiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNpbmNsdWRlICJXZWJQ
cm9jZXNzUHJveHkuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZVJlcXVlc3QuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1Jlc291cmNlUmVzcG9uc2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlZEJ1ZmZlci5o
PgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1ZGUgPHd0Zi9JbnN0
YW5jZUNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9PYmpl
Y3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3
dGYvUmVmUHRyLmg+CiAKQEAgLTUwLDkgKzUyLDExIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBz
dHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM7CiBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVy
OworY2xhc3MgV2ViVVJMU2NoZW1lVGFzazsKIGNsYXNzIFdlYlBhZ2VQcm94eTsKIAogdXNpbmcg
U3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciA9IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
LCBjb25zdCBWZWN0b3I8dWludDhfdD4mKT47Cit1c2luZyBXZWJVUkxTY2hlbWVUYXNrSWRlbnRp
ZmllciA9IE9iamVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFzaz47CiAKIGNsYXNzIFdlYlVS
TFNjaGVtZVRhc2sgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2JqZWN0OjpUeXBlOjpV
UkxTY2hlbWVUYXNrPiwgcHVibGljIEluc3RhbmNlQ291bnRlZDxXZWJVUkxTY2hlbWVUYXNrPiB7
CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoV2ViVVJMU2NoZW1lVGFzayk7CkBAIC02MSw3ICs2
NSw4IEBAIHB1YmxpYzoKIAogICAgIH5XZWJVUkxTY2hlbWVUYXNrKCk7CiAKLSAgICB1aW50NjRf
dCBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4g
bV9pZGVudGlmaWVyOyB9CisgICAgV2ViVVJMU2NoZW1lVGFza0lkZW50aWZpZXIgaWRlbnRpZmll
cigpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1faWRlbnRpZmll
cjsgfQorICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgd2ViUHJvY2Vzc1Rhc2tJ
RCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fd2ViUHJvY2Vz
c1Rhc2tJRDsgfQogICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZVByb3h5SUQoKSBjb25z
dCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3BhZ2VQcm94eUlEOyB9CiAg
ICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlEKCkgY29uc3QgeyBBU1NFUlQoUnVu
TG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV93ZWJQYWdlSUQ7IH0KICAgICBXZWJQcm9jZXNzUHJv
eHkqIHByb2Nlc3MoKSB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3Byb2Nl
c3MuZ2V0KCk7IH0KQEAgLTEwMSw3ICsxMDYsOCBAQCBwcml2YXRlOgogCiAgICAgUmVmPFdlYlVS
TFNjaGVtZUhhbmRsZXI+IG1fdXJsU2NoZW1lSGFuZGxlcjsKICAgICBSZWZQdHI8V2ViUHJvY2Vz
c1Byb3h5PiBtX3Byb2Nlc3M7Ci0gICAgdWludDY0X3QgbV9pZGVudGlmaWVyOworICAgIFdlYlVS
TFNjaGVtZVRhc2tJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyIG1fd2ViUHJvY2Vzc1Rhc2tJRDsKICAgICBXZWJQYWdlUHJveHlJZGVu
dGlmaWVyIG1fcGFnZVByb3h5SUQ7CiAgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgbV93ZWJQ
YWdlSUQ7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG1fcmVxdWVzdCBXVEZfR1VBUkRF
RF9CWV9MT0NLKG1fcmVxdWVzdExvY2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJL
aXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZGE2MzNjODgwZTUxNjhmNjkzNGQ2OGZjYjI2Njk5
YjExMDljY2U3MC4uNzRjNjM3ZDBjYjQyMWE2NTEzZTQ2MTcxOGZhMzM4NjBiNDgxZWZkMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00
NTk2LDYgKzQ1OTYsOCBAQAogCQk1Q0QyODY0RjFFNzIyRjQ0MDA5NEZEQzggLyogV0tDb250ZW50
UnVsZUxpc3RTdG9yZUludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdLQ29udGVudFJ1bGVMaXN0U3RvcmVJbnRlcm5hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1Q0QyODY1MDFFNzIyRjQ0MDA5NEZEQzggLyogV0tDb250ZW50UnVsZUxpc3RTdG9y
ZVByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tDb250ZW50UnVs
ZUxpc3RTdG9yZVByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNENzQ4
QjUyM0M4RUIxOTAwOTJBOUI1IC8qIE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlm
aWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDRDc0OEI1MjNDOEVCMTkwMDky
QjBDNiAvKiBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNENzQ4QjUyM0M4RUIxOTAwOTJDMUQ3IC8qIFdl
YlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDRTBDMzY2MjI5RjJEM0QwMDM2OTVGMCAvKiBBUElDb250ZXh0TWVudUVs
ZW1lbnRJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFQSUNv
bnRleHRNZW51RWxlbWVudEluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1
Q0UwQzM2NzIyOUYyRDNFMDAzNjk1RjAgLyogQVBJQ29udGV4dE1lbnVFbGVtZW50SW5mby5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElDb250ZXh0TWVudUVsZW1lbnRJbmZv
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDRTBDMzY4MjI5RjJENEEwMDM2OTVG
MCAvKiBXS0NvbnRleHRNZW51RWxlbWVudEluZm8ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBXS0NvbnRleHRNZW51RWxlbWVudEluZm8ubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC03MDAxLDYgKzcwMDMsOCBAQAogCQkJCTgzNjAzNDlFMUFDQjM0
RDYwMDYyNjU0OSAvKiBXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCAqLywKIAkJCQlDMDMzN0RE
NzEyN0E1MUI2MDA4RkY0RjQgLyogV2ViVG91Y2hFdmVudC5jcHAgKi8sCiAJCQkJMEY0MDAxMDAy
NTI3RDczQzAwRTkxREE3IC8qIFdlYlRvdWNoRXZlbnQuaCAqLywKKwkJCQk1Q0Q3NDhCNTIzQzhF
QjE5MDA5MkMxRDcgLyogV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIuaCAqLywKKwkJCQk1
Q0Q3NDhCNTIzQzhFQjE5MDA5MkIwQzYgLyogV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmll
ci5oICovLAogCQkJCTdDMDY1RjI5MUM4Q0Q5NUYwMEMyRDk1MCAvKiBXZWJVc2VyQ29udGVudENv
bnRyb2xsZXJEYXRhVHlwZXMuY3BwICovLAogCQkJCTdDMDY1RjJBMUM4Q0Q5NUYwMEMyRDk1MCAv
KiBXZWJVc2VyQ29udGVudENvbnRyb2xsZXJEYXRhVHlwZXMuaCAqLywKIAkJCQlDMDMzN0REMDEy
N0EyOTgwMDA4RkY0RjQgLyogV2ViV2hlZWxFdmVudC5jcHAgKi8sCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKaW5kZXgg
MzUyNTMxMDZjYjFkMzAxMzM5YzJiMzBlODYwMmY2YmYyNGEzZTcyYi4uMDM0N2ExZTdmNTI5ZWRh
MDA2ZGUwN2ZkMDVjYmQ4OWZjZjcxNmMwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcApAQCAtNDYyLDcgKzQ2Miw3
IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnJlbW92ZShSZXNvdXJjZUxvYWRlciogcmVzb3Vy
Y2VMb2FkZXIpCiAgICAgQVNTRVJUKHJlc291cmNlTG9hZGVyKTsKICAgICBMT0coTmV0d29ya1Nj
aGVkdWxpbmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVyU3RyYXRlZ3k6OnJlbW92ZSwgdXJsICcl
cyciLCByZXNvdXJjZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKLSAg
ICBpZiAoYXV0byB0YXNrID0gbV91cmxTY2hlbWVUYXNrcy50YWtlKHJlc291cmNlTG9hZGVyLT5p
ZGVudGlmaWVyKCkpKSB7CisgICAgaWYgKGF1dG8gdGFzayA9IG1fdXJsU2NoZW1lVGFza3MudGFr
ZShtYWtlT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+KHJlc291cmNlTG9h
ZGVyLT5pZGVudGlmaWVyKCkpKSkgewogICAgICAgICBBU1NFUlQoIW1faW50ZXJuYWxseUZhaWxl
ZFJlc291cmNlTG9hZGVycy5jb250YWlucyhyZXNvdXJjZUxvYWRlcikpOwogICAgICAgICB0YXNr
LT5zdG9wTG9hZGluZygpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaAppbmRleCBjNzk2YWU1MGYx
NGMxNmVjMjVlNmUwMTQ5ZDc2NmJmN2QxMWUxODdiLi5mNGY1YWJiZDNlOWIyMzA1ZThkYzQwYWRi
ZWFkMzEwMTYyMTVkNzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUg
Ik5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViUmVzb3VyY2VM
b2FkZXIuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9Mb2FkZXJTdHJhdGVneS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVz
b3VyY2VFcnJvci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXIuaD4KQEAgLTEz
NCw3ICsxMzUsNyBAQCBwcml2YXRlOgogICAgIFJ1bkxvb3A6OlRpbWVyPFdlYkxvYWRlclN0cmF0
ZWd5PiBtX2ludGVybmFsbHlGYWlsZWRMb2FkVGltZXI7CiAgICAgCiAgICAgSGFzaE1hcDx1bnNp
Z25lZCBsb25nLCBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkZXI+PiBtX3dlYlJlc291cmNlTG9hZGVy
czsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFdlYlVSTFNjaGVtZVRhc2tQcm94eSo+IG1f
dXJsU2NoZW1lVGFza3M7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlm
aWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHkqPiBtX3VybFNjaGVtZVRhc2tzOwogICAgIEhhc2hN
YXA8dW5zaWduZWQgbG9uZywgUGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcj4gbV9waW5nTG9hZENv
bXBsZXRpb25IYW5kbGVyczsKICAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFByZWNvbm5lY3RD
b21wbGV0aW9uSGFuZGxlcj4gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzOwogICAgIFZl
Y3RvcjxGdW5jdGlvbjx2b2lkKGJvb2wpPj4gbV9vbmxpbmVTdGF0ZUNoYW5nZUxpc3RlbmVyczsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggODBl
ZTE0NjE2MDE0ZmJlNDIzNjRhYjRiNmMwZTc5NmJhZmE3N2ZiMS4uYmExMmIzOTc1MmY1ZDIyNzQ4
MWQ5OGE2ZWI3MzZhYmQ3ZTg1MzEyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTY5MTMsMTYgKzY5MTMsMTYgQEAgdm9pZCBXZWJQYWdlOjpz
dG9wQWxsVVJMU2NoZW1lVGFza3MoKQogICAgICAgICBoYW5kbGVyLT5zdG9wQWxsVGFza3MoKTsK
IH0KIAotdm9pZCBXZWJQYWdlOjpyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKQordm9pZCBXZWJQYWdlOjpyZWdp
c3RlclVSTFNjaGVtZUhhbmRsZXIoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxl
cklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKQogewotICAgIFdFQlBBR0VfUkVMRUFT
RV9MT0coUHJvY2VzcywgInJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcjogUmVnaXN0ZXJlZCBoYW5k
bGVyICUiIFBSSXU2NCAiIGZvciB0aGUgJyVzJyBzY2hlbWUiLCBoYW5kbGVySWRlbnRpZmllciwg
c2NoZW1lLnV0ZjgoKS5kYXRhKCkpOworICAgIFdFQlBBR0VfUkVMRUFTRV9MT0coUHJvY2Vzcywg
InJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcjogUmVnaXN0ZXJlZCBoYW5kbGVyICUiIFBSSXU2NCAi
IGZvciB0aGUgJyVzJyBzY2hlbWUiLCBoYW5kbGVySWRlbnRpZmllci50b1VJbnQ2NCgpLCBzY2hl
bWUudXRmOCgpLmRhdGEoKSk7CiAgICAgV2ViQ29yZTo6TGVnYWN5U2NoZW1lUmVnaXN0cnk6OnJl
Z2lzdGVyVVJMU2NoZW1lQXNIYW5kbGVkQnlTY2hlbWVIYW5kbGVyKHNjaGVtZSk7CiAgICAgV2Vi
Q29yZTo6TGVnYWN5U2NoZW1lUmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNDT1JTRW5hYmxl
ZChzY2hlbWUpOwogICAgIGF1dG8gc2NoZW1lUmVzdWx0ID0gbV9zY2hlbWVUb1VSTFNjaGVtZUhh
bmRsZXJQcm94eU1hcC5hZGQoc2NoZW1lLCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmNyZWF0
ZSgqdGhpcywgaGFuZGxlcklkZW50aWZpZXIpKTsKICAgICBtX2lkZW50aWZpZXJUb1VSTFNjaGVt
ZUhhbmRsZXJQcm94eU1hcC5hZGQoaGFuZGxlcklkZW50aWZpZXIsIHNjaGVtZVJlc3VsdC5pdGVy
YXRvci0+dmFsdWUuZ2V0KCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxs
UGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVl
c3QmJiByZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFu
ZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmll
clRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAg
QVNTRVJUKGhhbmRsZXIpOwpAQCAtNjkzMSw3ICs2OTMxLDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxT
Y2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmll
ciwgdWkKICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRhc2tJZGVudGlm
aWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3Jt
UmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJl
cXVlc3QpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24o
V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNj
aGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2Um
JiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkKIHsKICAgICBhdXRvKiBoYW5k
bGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJ
ZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTM5LDcgKzY5MzksNyBAQCB2
b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpbgogICAgIGhhbmRsZXItPnRhc2tEaWRQZXJmb3JtUmVkaXJl
Y3Rpb24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVzcG9uc2UpLCBXVEZNb3ZlKHJlcXVlc3Qp
LCBbXSAoUmVzb3VyY2VSZXF1ZXN0JiYpIHt9KTsKIH0KICAgICAKLXZvaWQgV2ViUGFnZTo6dXJs
U2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYlVSTFNj
aGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVI
YW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxl
cik7CkBAIC02OTQ3LDcgKzY5NDcsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRS
ZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NAogICAgIGhh
bmRsZXItPnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodGFza0lkZW50aWZpZXIsIHJlc3BvbnNlKTsK
IH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRh
dGFSZWZlcmVuY2UmIGRhdGEpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZl
RGF0YShXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2Vi
VVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpE
YXRhUmVmZXJlbmNlJiBkYXRhKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJU
b1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFT
U0VSVChoYW5kbGVyKTsKQEAgLTY5NTUsNyArNjk1NSw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2No
ZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRf
dCB0CiAgICAgaGFuZGxlci0+dGFza0RpZFJlY2VpdmVEYXRhKHRhc2tJZGVudGlmaWVyLCBkYXRh
LnNpemUoKSwgZGF0YS5kYXRhKCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tE
aWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJQYWdlOjp1cmxTY2hl
bWVUYXNrRGlkQ29tcGxldGUoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklk
ZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lk
ZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIp
OwogICAgIEFTU0VSVChoYW5kbGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuaAppbmRleCBiMjg2NDU3MmI3NDE0NDlkYTM2ZjdhY2MxNWY4YmQ3MmYyNDM0NDY4
Li5jZDA2MzA3ZTEwMGIxZTY2ZmQzN2Q0NmNiZTgxYmMxZTRlNzFiNGQzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC02MCw2ICs2MCw3IEBACiAjaW5j
bHVkZSAiV2ViQmFja0ZvcndhcmRMaXN0UHJveHkuaCIKICNpbmNsdWRlICJXZWJQYWdlTWVzc2Fn
ZXNSZXBsaWVzLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5oIgorI2luY2x1ZGUg
IldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJXZWJVbmRvU3Rl
cElELmgiCiAjaW5jbHVkZSAiV2ViVXNlckNvbnRlbnRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAi
V2Vic2l0ZVBvbGljaWVzRGF0YS5oIgpAQCAtMTg3MiwxMyArMTg3MywxMyBAQCBwcml2YXRlOgog
CiAgICAgdm9pZCBmcmFtZUJlY2FtZVJlbW90ZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFdl
YkNvcmU6Okdsb2JhbEZyYW1lSWRlbnRpZmllciYmIHJlbW90ZUZyYW1lSWRlbnRpZmllciwgV2Vi
Q29yZTo6R2xvYmFsV2luZG93SWRlbnRpZmllciYmIHJlbW90ZVdpbmRvd0lkZW50aWZpZXIpOwog
Ci0gICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiBzY2hlbWUpOworICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVy
KFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSk7CiAK
LSAgICB2b2lkIHVybFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhh
bmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdXJsU2No
ZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2Vp
dmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIHVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYpOwotICAgIHZvaWQg
dXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOworICAg
IHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lSGFu
ZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lk
IHVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lSGFuZGxlcklk
ZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOworICAgIHZvaWQgdXJs
U2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmll
ciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKFdlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVy
LCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRD
b21wbGV0ZShXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOwogCiAgICAgdm9p
ZCBzZXRJc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lvbihib29sKTsKICAg
ICB2b2lkIHNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKTsKQEAgLTIzMDYsNyArMjMwNyw3
IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8V2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Pj4gbV9zY2hlbWVUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsK
LSAgICBIYXNoTWFwPHVpbnQ2NF90LCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkqPiBtX2lkZW50
aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsKKyAgICBIYXNoTWFwPFdlYlVSTFNjaGVt
ZUhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkqPiBtX2lkZW50aWZp
ZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsKIAogICAgIEhhc2hNYXA8dWludDY0X3QsIEZ1
bmN0aW9uPHZvaWQoYm9vbCBncmFudGVkKT4+IG1fc3RvcmFnZUFjY2Vzc1Jlc3BvbnNlQ2FsbGJh
Y2tNYXA7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluCmluZGV4IDU5NmI0ZjdmNjAyMmY1YWFlMzQzYTZlM2YwMDlmOWY5NmJi
ZTg5ODUuLjZmNmIzODY4ODdlZjI5NGE4Y2Y2MmVkYzVlMDY2MTAxM2MwMjc4NTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4K
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5p
bgpAQCAtNTQ5LDEzICs1NDksMTMgQEAgR2VuZXJhdGVTeW50aGV0aWNFZGl0aW5nQ29tbWFuZChl
bnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUKIAogICAgIEZy
YW1lQmVjYW1lUmVtb3RlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3Qg
V2ViQ29yZTo6R2xvYmFsRnJhbWVJZGVudGlmaWVyIHJlbW90ZUZyYW1lSWRlbnRpZmllciwgc3Ry
dWN0IFdlYkNvcmU6Okdsb2JhbFdpbmRvd0lkZW50aWZpZXIgcmVtb3RlV2luZG93SWRlbnRpZmll
cikKIAotICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRfdCBpZGVudGlmaWVyLCBT
dHJpbmcgc2NoZW1lKQorICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcihXZWJLaXQ6OldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBzY2hlbWUpCiAKLSAg
ICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpIC0+
IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5bmMKLSAgICBVUkxT
Y2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkKLSAgICBVUkxT
Y2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25z
ZSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZl
cmVuY2UgZGF0YSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxl
cklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGVycm9yKQorICAgIFVSTFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktp
dDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHBy
b3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBhY3R1YWxSZXF1ZXN0
KSBBc3luYworICAgIFVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViS2l0OjpX
ZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViS2l0OjpX
ZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9z
ZWRSZXF1ZXN0KQorICAgIFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViS2l0OjpX
ZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViS2l0OjpX
ZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0
YShXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIs
IElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBkYXRhKQorICAgIFVSTFNjaGVtZVRhc2tE
aWRDb21wbGV0ZShXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJ
ZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IpCiAKICAgICBTZXRJc1N1c3Bl
bmRlZChib29sIHN1c3BlbmRlZCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKaW5kZXggMzZl
NTcyNTEyMzM3ZDYzMDBjMjJlOGEzMmUxNzE1MTkwNDNiNTAzNy4uMDUxY2VhY2I3ZDdhYjYwYjBk
N2IzYTE1Y2JhY2Y4ZjYzNDAzODdhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCkBAIC00
Myw3ICs0Myw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3Jl
OwogCi1XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eShX
ZWJQYWdlJiBwYWdlLCB1aW50NjRfdCBpZGVudGlmaWVyKQorV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoV2ViUGFnZSYgcGFnZSwgV2ViVVJMU2NoZW1l
SGFuZGxlcklkZW50aWZpZXIgaWRlbnRpZmllcikKICAgICA6IG1fd2ViUGFnZShwYWdlKQogICAg
ICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiB7CkBAIC01Niw3ICs1Niw3IEBAIFdlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6fldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSgpCiAKIHZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VMb2FkZXImIGxvYWRl
ciwgV2ViRnJhbWUmIHdlYkZyYW1lKQogewotICAgIGF1dG8gcmVzdWx0ID0gbV90YXNrcy5hZGQo
bG9hZGVyLmlkZW50aWZpZXIoKSwgV2ViVVJMU2NoZW1lVGFza1Byb3h5OjpjcmVhdGUoKnRoaXMs
IGxvYWRlciwgd2ViRnJhbWUpKTsKKyAgICBhdXRvIHJlc3VsdCA9IG1fdGFza3MuYWRkKG1ha2VP
YmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4obG9hZGVyLmlkZW50aWZpZXIo
KSksIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6Y3JlYXRlKCp0aGlzLCBsb2FkZXIsIHdlYkZyYW1l
KSk7CiAgICAgQVNTRVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKIAogICAgIFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCkuYWRkVVJMU2NoZW1lVGFza1Byb3h5KCpyZXN1
bHQuaXRlcmF0b3ItPnZhbHVlKTsKQEAgLTY2LDcgKzY2LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayhSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBXZWJGcmFt
ZSYgd2UKIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hyb25vdXNseShS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYgd2ViRnJhbWUs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlRXJyb3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAg
ZGF0YS5zaHJpbmsoMCk7Ci0gICAgaWYgKCFtX3dlYlBhZ2Uuc2VuZFN5bmMoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFy
YW1ldGVycyB7IG1faWRlbnRpZmllciwgbG9hZElkZW50aWZpZXIsIHJlcXVlc3QsIHdlYkZyYW1l
LmluZm8oKSB9KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2No
ZW1lVGFzazo6UmVwbHkocmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKKyAgICBpZiAoIW1fd2Vi
UGFnZS5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxT
Y2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsgbV9pZGVudGlmaWVyLCBtYWtlT2Jq
ZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+KGxvYWRJZGVudGlmaWVyKSwgcmVx
dWVzdCwgd2ViRnJhbWUuaW5mbygpIH0pLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3lu
Y2hyb25vdXNVUkxTY2hlbWVUYXNrOjpSZXBseShyZXNwb25zZSwgZXJyb3IsIGRhdGEpKSkgewog
ICAgICAgICBlcnJvciA9IGZhaWxlZEN1c3RvbVByb3RvY29sU3luY0xvYWQocmVxdWVzdCk7CiAg
ICAgICAgIHJldHVybjsKICAgICB9CkBAIC03OCw3ICs3OCw3IEBAIHZvaWQgV2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5OjpzdG9wQWxsVGFza3MoKQogICAgICAgICBtX3Rhc2tzLmJlZ2luKCktPnZh
bHVlLT5zdG9wTG9hZGluZygpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6
dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYmIG5ld1JlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYm
IHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3Qs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRl
bnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAtODcsNyArODcsNyBAQCB2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCB0YXNr
SWRlbnRpZmllcgogICAgIHRhc2stPmRpZFBlcmZvcm1SZWRpcmVjdGlvbihXVEZNb3ZlKHJlZGly
ZWN0UmVzcG9uc2UpLCBXVEZNb3ZlKG5ld1JlcXVlc3QpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2
ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2
ZVJlc3BvbnNlKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGF1dG8qIHRhc2sgPSBt
X3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAtOTYsNyArOTYs
NyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25z
ZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgYwogICAgIHRhc2stPmRpZFJlY2VpdmVSZXNwb25z
ZShyZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlk
UmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZpZXIsIHNpemVfdCBzaXplLCBjb25zdCB1
aW50OF90KiBkYXRhKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNl
aXZlRGF0YShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBz
aXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCogZGF0YSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90
YXNrcy5nZXQodGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAgLTEwNSw3ICsxMDUs
NyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKHVp
bnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXplXwogICAgIHRhc2stPmRpZFJlY2VpdmVEYXRhKHNp
emUsIGRhdGEpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENv
bXBsZXRlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJv
cikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkQ29tcGxldGUoV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKGF1dG8gdGFzayA9IHJlbW92ZVRhc2sodGFza0lkZW50
aWZpZXIpKQogICAgICAgICB0YXNrLT5kaWRDb21wbGV0ZShlcnJvcik7CkBAIC0xMTcsNyArMTE3
LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRTdG9wTG9hZGluZyhX
ZWJVUkxTY2hlbWVUYXNrUHJveHkmIHRhc2spCiAgICAgcmVtb3ZlVGFzayh0YXNrLmlkZW50aWZp
ZXIoKSk7CiB9CiAKLVJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eTo6cmVtb3ZlVGFzayh1aW50NjRfdCBpZGVudGlmaWVyKQorUmVmUHRyPFdlYlVS
TFNjaGVtZVRhc2tQcm94eT4gV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpyZW1vdmVUYXNrKFdl
YlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIHRh
c2sgPSBtX3Rhc2tzLnRha2UoaWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHkuaAppbmRleCAwNDJkNzljNmU2Zjg0NWRjMWIwNmIyY2EzMzgwMDcyZDQ4MGJhNmYw
Li45ZDFjOTliYTk1ZWZjZjVmZDE0ZjU2ZjRhMmM0ZjhjYTkwYzMyN2NhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHku
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHkuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUg
IldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1l
VGFza1Byb3h5LmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgpAQCAtNDMsNyArNDQsNyBAQCB0eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9h
ZElkZW50aWZpZXI7CiAKIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSA6IHB1YmxpYyBS
ZWZDb3VudGVkPFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gewogcHVibGljOgotICAgIHN0YXRp
YyBSZWY8V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5PiBjcmVhdGUoV2ViUGFnZSYgcGFnZSwgdWlu
dDY0X3QgaWRlbnRpZmllcikKKyAgICBzdGF0aWMgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eT4gY3JlYXRlKFdlYlBhZ2UmIHBhZ2UsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHkocGFnZSwgaWRlbnRpZmllcikpOwogICAgIH0KQEAgLTU0LDI0ICs1NSwy
NCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlTG9hZElk
ZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBWZWN0b3I8
dWludDhfdD4mKTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2lkZW50aWZpZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVudGlm
aWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgV2ViUGFnZSYgcGFnZSgp
IHsgcmV0dXJuIG1fd2ViUGFnZTsgfQogCi0gICAgdm9pZCB0YXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYs
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVjZWl2ZVJlc3Bv
bnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7Ci0gICAgdm9pZCB0YXNrRGlkQ29tcGxl
dGUodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KTsKKyAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYm
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNw
b25zZShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURh
dGEoV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgc2l6ZV90
LCBjb25zdCB1aW50OF90KiBkYXRhKTsKKyAgICB2b2lkIHRhc2tEaWRDb21wbGV0ZShXZWJVUkxT
Y2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZUVycm9yJik7CiAgICAgdm9pZCB0YXNrRGlkU3RvcExvYWRpbmcoV2ViVVJMU2NoZW1l
VGFza1Byb3h5Jik7CiAKIHByaXZhdGU6Ci0gICAgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5KFdl
YlBhZ2UmLCB1aW50NjRfdCBpZGVudGlmaWVyKTsKKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHkoV2ViUGFnZSYsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKTsKIAotICAgIFJlZlB0
cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcik7
CisgICAgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFzayhXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyKTsKIAogICAgIFdlYlBhZ2UmIG1fd2ViUGFnZTsKLSAgICB1
aW50NjRfdCBtX2lkZW50aWZpZXIgeyAwIH07CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50
aWZpZXIgbV9pZGVudGlmaWVyOwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmUHRyPFdlYlVS
TFNjaGVtZVRhc2tQcm94eT4+IG1fdGFza3M7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyLCBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pj4gbV90YXNrczsK
IH07IC8vIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVS
TFNjaGVtZVRhc2tQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCmluZGV4IDc1Nzk5YTBjNjVkMGNkYWZkZTZmMjY1YjFj
NTQ3NTZiODRhMjA5ZDkuLjJhMWExY2JhZTdkMjk0NzlhODg2Y2VlNmZiMTYyOGFkOGQxY2VjMTEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVt
ZVRhc2tQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
VVJMU2NoZW1lVGFza1Byb3h5LmNwcApAQCAtNDAsNyArNDAsNyBAQAogI2luY2x1ZGUgPHd0Zi9D
b21wbGV0aW9uSGFuZGxlci5oPgogCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxF
QVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiW3NjaGVtZUhhbmRsZXI9JSIgUFJJdTY0ICIsIHdl
YlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgdGFza0lEPSVsdV0gV2Vi
VVJMU2NoZW1lVGFza1Byb3h5OjoiCi0jZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxF
QVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVy
KCksIHBhZ2VJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2Zy
YW1lKSwgbV9pZGVudGlmaWVyCisjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNF
X0xPR19TVEFOREFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCks
IHBhZ2VJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1l
KSwgbV9pZGVudGlmaWVyLnRvVUludDY0KCkKICNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZ
X1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCBXRUJVUkxTQ0hFTUVU
QVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJVUkxTQ0hFTUVU
QVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykK
IAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC02OSw3ICs2OSw3IEBAIFdlYlVSTFNjaGVtZVRhc2tQ
cm94eTo6V2ViVVJMU2NoZW1lVGFza1Byb3h5KFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSYgaGFu
ZGxlciwKICAgICAsIG1fY29yZUxvYWRlcigmbG9hZGVyKQogICAgICwgbV9mcmFtZSgmZnJhbWUp
CiAgICAgLCBtX3JlcXVlc3QobG9hZGVyLnJlcXVlc3QoKSkKLSAgICAsIG1faWRlbnRpZmllcihs
b2FkZXIuaWRlbnRpZmllcigpKQorICAgICwgbV9pZGVudGlmaWVyKG1ha2VPYmplY3RJZGVudGlm
aWVyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4obG9hZGVyLmlkZW50aWZpZXIoKSkpCiB7CiB9CiAK
QEAgLTc4LDE0ICs3OCwxNCBAQCB2b2lkIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6c3RhcnRMb2Fk
aW5nKCkKICAgICBBU1NFUlQobV9jb3JlTG9hZGVyKTsKICAgICBBU1NFUlQobV9mcmFtZSk7CiAg
ICAgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HKCJzdGFydExvYWRpbmciKTsKLSAg
ICBtX3VybFNjaGVtZUhhbmRsZXIucGFnZSgpLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U3RhcnRVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsgbV91cmxTY2hlbWVI
YW5kbGVyLmlkZW50aWZpZXIoKSwgbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCksIG1fcmVxdWVz
dCwgbV9mcmFtZS0+aW5mbygpIH0pKTsKKyAgICBtX3VybFNjaGVtZUhhbmRsZXIucGFnZSgpLnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U3RhcnRVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRh
c2tQYXJhbWV0ZXJzIHsgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgbV9pZGVudGlm
aWVyLCBtX3JlcXVlc3QsIG1fZnJhbWUtPmluZm8oKSB9KSk7CiB9CiAKIHZvaWQgV2ViVVJMU2No
ZW1lVGFza1Byb3h5OjpzdG9wTG9hZGluZygpCiB7CiAgICAgQVNTRVJUKG1fY29yZUxvYWRlcik7
CiAgICAgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HKCJzdG9wTG9hZGluZyIpOwot
ICAgIG1fdXJsU2NoZW1lSGFuZGxlci5wYWdlKCkuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTdG9wVVJMU2NoZW1lVGFzayhtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBtX2Nv
cmVMb2FkZXItPmlkZW50aWZpZXIoKSkpOworICAgIG1fdXJsU2NoZW1lSGFuZGxlci5wYWdlKCku
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTdG9wVVJMU2NoZW1lVGFzayhtX3VybFNjaGVt
ZUhhbmRsZXIuaWRlbnRpZmllcigpLCBtX2lkZW50aWZpZXIpKTsKICAgICBtX2NvcmVMb2FkZXIg
PSBudWxscHRyOwogICAgIG1fZnJhbWUgPSBudWxscHRyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCmluZGV4
IGI1ZTMzNGRmYzIzMzY0OGVjNTdlOGY2MTYzZGMxNWZhYjU2ZjZjNWMuLmRkZjIzZmM3OWU3YWVi
Mjk0OTY2YTg4YTc0OWNkYTllZTY2ZmI4ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCkBAIC0yNSw2ICsy
NSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW5j
bHVkZSA8d3RmL0RlcXVlLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTU3LDcg
KzU4LDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoc2l6ZV90LCBjb25zdCB1
aW50OF90KiBkYXRhKTsKICAgICB2b2lkIGRpZENvbXBsZXRlKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKTsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0
dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIg
aWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiBwcml2YXRlOgog
ICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eShXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkmLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlciYsIFdlYkZyYW1lJik7CkBAIC03MCw3ICs3MSw3IEBAIHByaXZh
dGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPiBtX2NvcmVMb2FkZXI7CiAg
ICAgUmVmUHRyPFdlYkZyYW1lPiBtX2ZyYW1lOwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCBtX3JlcXVlc3Q7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgYm9vbCBtX3dhaXRp
bmdGb3JDb21wbGV0aW9uSGFuZGxlciB7IGZhbHNlIH07CiAgICAgRGVxdWU8RnVuY3Rpb248dm9p
ZCgpPj4gbV9xdWV1ZWRUYXNrczsKIH07CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggZTI3ODM5MzQ0ZTYxOTdlZjViMzYzYmE5YWIzNTIwODcyNGQw
NGNlMC4uYWMwMGIxOGIzMjRjZDM1NjhlMTJmNzdhZTE2MTlkMzg0YWE3NWMxZCAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBA
CisyMDIxLTA5LTE0ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgor
CisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBVUkwgc2NoZW1lIGhhbmRsZXJzIGFu
ZCB0YXNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYkNvbnRleHQuY3Bw
OgorICAgICAgICAoY3JlYXRlVGVzdFdlYlZpZXdXaXRoV2ViQ29udGV4dCk6CisgICAgICAgICh0
ZXN0V2ViQ29udGV4dFVSSVNjaGVtZSk6CisKIDIwMjEtMDktMDkgIFNpbW9uIEZyYXNlciAgPHNp
bW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHNvbWUgbGxkYiBkYXRhIHByb3Zp
ZGVyIGlzc3VlcwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRH
TGliL1Rlc3RXZWJLaXRXZWJDb250ZXh0LmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0R0xpYi9UZXN0V2ViS2l0V2ViQ29udGV4dC5jcHAKaW5kZXggNTMyNTQ4YjFlNGUyYTBh
ZjVjOWEyZWUxYzMyMDZiY2JmMjg4ZjQzYS4uNWU3ODgyMGZjYTlkOTVkOGZiYzhkMWI2MjIzNWY2
MTFkNmIzMGQyMiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRH
TGliL1Rlc3RXZWJLaXRXZWJDb250ZXh0LmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdEdMaWIvVGVzdFdlYktpdFdlYkNvbnRleHQuY3BwCkBAIC0xMTMsNyArMTEzLDgg
QEAgcHVibGljOgogICAgICAgICB0ZXN0LT5tX3VyaVNjaGVtZVJlcXVlc3QgPSByZXF1ZXN0Owog
ICAgICAgICB0ZXN0LT5hc3NlcnRPYmplY3RJc0RlbGV0ZWRXaGVuVGVzdEZpbmlzaGVzKEdfT0JK
RUNUKHJlcXVlc3QpKTsKIAotICAgICAgICBnX2Fzc2VydF90cnVlKHdlYmtpdF91cmlfc2NoZW1l
X3JlcXVlc3RfZ2V0X3dlYl92aWV3KHJlcXVlc3QpID09IHRlc3QtPm1fd2ViVmlldyk7CisgICAg
ICAgIGlmICh0ZXN0LT5tX3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmlldykK
KyAgICAgICAgICAgIGdfYXNzZXJ0X3RydWUod2Via2l0X3VyaV9zY2hlbWVfcmVxdWVzdF9nZXRf
d2ViX3ZpZXcocmVxdWVzdCkgPT0gdGVzdC0+bV93ZWJWaWV3KTsKIAogICAgICAgICBjb25zdCBj
aGFyKiBzY2hlbWUgPSB3ZWJraXRfdXJpX3NjaGVtZV9yZXF1ZXN0X2dldF9zY2hlbWUocmVxdWVz
dCk7CiAgICAgICAgIGdfYXNzZXJ0X25vbm51bGwoc2NoZW1lKTsKQEAgLTE2NCw2ICsxNjUsOCBA
QCBwdWJsaWM6CiAKICAgICBHUmVmUHRyPFdlYktpdFVSSVNjaGVtZVJlcXVlc3Q+IG1fdXJpU2No
ZW1lUmVxdWVzdDsKICAgICBIYXNoTWFwPFN0cmluZywgVVJJU2NoZW1lSGFuZGxlcj4gbV9oYW5k
bGVyc01hcDsKKyAgICBib29sIG1fdXJpU2NoZW1lUmVxdWVzdENhbGxiYWNrVXNlc1Rlc3RXZWJW
aWV3IHsgdHJ1ZSB9OworICAgIGludCBtX2xvYWRDb3VudGVyIHsgMCB9OwogfTsKIAogU3RyaW5n
IGdlbmVyYXRlSFRNTENvbnRlbnQodW5zaWduZWQgY29udGVudExlbmd0aCkKQEAgLTE5Myw2ICsx
OTYsMjEgQEAgU3RyaW5nIGdlbmVyYXRlSFRNTENvbnRlbnQodW5zaWduZWQgY29udGVudExlbmd0
aCkKICAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpOwogfQogCitzdGF0aWMgR1JlZlB0cjxX
ZWJLaXRXZWJWaWV3PiBjcmVhdGVUZXN0V2ViVmlld1dpdGhXZWJDb250ZXh0KFdlYktpdFdlYkNv
bnRleHQqIGNvbnRleHQpCit7CisgICAgV2ViS2l0V2ViVmlldyogdmlldyA9IFdFQktJVF9XRUJf
VklFVyhnX29iamVjdF9uZXcoV0VCS0lUX1RZUEVfV0VCX1ZJRVcsCisjaWYgUExBVEZPUk0oV1BF
KQorICAgICAgICAiYmFja2VuZCIsIFRlc3Q6OmNyZWF0ZVdlYlZpZXdCYWNrZW5kKCksCisjZW5k
aWYKKyAgICAgICAgIndlYi1jb250ZXh0IiwgY29udGV4dCwKKyAgICAgICAgbnVsbHB0cikpOwor
CisjaWYgUExBVEZPUk0oR1RLKQorICAgIGdfb2JqZWN0X3JlZl9zaW5rKHZpZXcpOworI2VuZGlm
CisgICAgcmV0dXJuIGFkb3B0R1JlZih2aWV3KTsKK30KKwogc3RhdGljIHZvaWQgdGVzdFdlYkNv
bnRleHRVUklTY2hlbWUoVVJJU2NoZW1lVGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKIHsKICAg
ICB0ZXN0LT5yZWdpc3RlclVSSVNjaGVtZUhhbmRsZXIoImZvbyIsIGtCYXJIVE1MLCBzdHJsZW4o
a0JhckhUTUwpLCAidGV4dC9odG1sIik7CkBAIC0yNzgsNiArMjk2LDQxIEBAIHN0YXRpYyB2b2lk
IHRlc3RXZWJDb250ZXh0VVJJU2NoZW1lKFVSSVNjaGVtZVRlc3QqIHRlc3QsIGdjb25zdHBvaW50
ZXIpCiAgICAgZ19hc3NlcnRfdHJ1ZSh0ZXN0LT5tX2xvYWRFdmVudHMuY29udGFpbnMoTG9hZFRy
YWNraW5nVGVzdDo6UHJvdmlzaW9uYWxMb2FkRmFpbGVkKSk7CiAgICAgZ19hc3NlcnRfdHJ1ZSh0
ZXN0LT5tX2xvYWRGYWlsZWQpOwogICAgIGdfYXNzZXJ0X2Vycm9yKHRlc3QtPm1fZXJyb3IuZ2V0
KCksIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfQ0xPU0VEKTsKKworICAgIC8vIFRvcnR1cmUgdGVz
dCB0aW1lOiBtYWtlIHN1cmUgaXQgc3RpbGwgd29ya3MgaWYgd2UgaXNzdWUgYSBidW5jaCBvZiBk
aWZmZXJlbnQgcmVxdWVzdHMgYWxsIGF0CisgICAgLy8gb25jZS4gRWFjaCByZXF1ZXN0IHNob3Vs
ZCBmaW5pc2ggYW5kIHJldHVybiBleGFjdGx5IHRoZSBzYW1lIGRhdGEuCisgICAgaW50IG51bUl0
ZXJhdGlvbnMgPSA1MDsKKyAgICBHUmVmUHRyPFdlYktpdFdlYlZpZXc+IHZpZXdzW251bUl0ZXJh
dGlvbnNdOworICAgIHRlc3QtPm1fdXJpU2NoZW1lUmVxdWVzdENhbGxiYWNrVXNlc1Rlc3RXZWJW
aWV3ID0gZmFsc2U7CisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1JdGVyYXRpb25zOyBpKysp
IHsKKyAgICAgICAgdmlld3NbaV0gPSBjcmVhdGVUZXN0V2ViVmlld1dpdGhXZWJDb250ZXh0KHRl
c3QtPm1fd2ViQ29udGV4dC5nZXQoKSk7CisgICAgICAgIHRlc3QtPmFzc2VydE9iamVjdElzRGVs
ZXRlZFdoZW5UZXN0RmluaXNoZXMoR19PQkpFQ1Qodmlld3NbaV0uZ2V0KCkpKTsKKyAgICAgICAg
d2Via2l0X3dlYl92aWV3X2xvYWRfdXJpKHZpZXdzW2ldLmdldCgpLCAiZm9vOmJsYW5rIik7Cisg
ICAgICAgIGdfc2lnbmFsX2Nvbm5lY3Qodmlld3NbaV0uZ2V0KCksICJsb2FkLWNoYW5nZWQiLCBH
X0NBTExCQUNLKCtbXSAoV2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViS2l0TG9hZEV2ZW50IGxv
YWRFdmVudCwgZ3BvaW50ZXIgdXNlckRhdGEpIHsKKyAgICAgICAgICAgIGF1dG8qIHRlc3QgPSBz
dGF0aWNfY2FzdDxVUklTY2hlbWVUZXN0Kj4odXNlckRhdGEpOworICAgICAgICAgICAgaWYgKGxv
YWRFdmVudCAhPSBXRUJLSVRfTE9BRF9GSU5JU0hFRCkKKyAgICAgICAgICAgICAgICByZXR1cm47
CisgICAgICAgICAgICB0ZXN0LT5tX2xvYWRDb3VudGVyLS07CisgICAgICAgICAgICBpZiAoIXRl
c3QtPm1fbG9hZENvdW50ZXIpCisgICAgICAgICAgICAgICAgZ19tYWluX2xvb3BfcXVpdCh0ZXN0
LT5tX21haW5Mb29wKTsKKyAgICAgICAgfSksIHRlc3QpOworICAgIH0KKyAgICB0ZXN0LT5tX2xv
YWRDb3VudGVyID0gbnVtSXRlcmF0aW9uczsKKyAgICBnX21haW5fbG9vcF9ydW4odGVzdC0+bV9t
YWluTG9vcCk7CisKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IG51bUl0ZXJhdGlvbnM7IGkrKykg
eworICAgICAgICBXZWJLaXRXZWJSZXNvdXJjZSogcmVzb3VyY2UgPSB3ZWJraXRfd2ViX3ZpZXdf
Z2V0X21haW5fcmVzb3VyY2Uodmlld3NbaV0uZ2V0KCkpOworICAgICAgICBnX2Fzc2VydF9ub25u
dWxsKHJlc291cmNlKTsKKyAgICAgICAgd2Via2l0X3dlYl9yZXNvdXJjZV9nZXRfZGF0YShyZXNv
dXJjZSwgbnVsbHB0ciwgK1tdIChHT2JqZWN0KiBvYmplY3QsIEdBc3luY1Jlc3VsdCogcmVzdWx0
LCBncG9pbnRlciB1c2VyRGF0YSkgeworICAgICAgICAgICAgYXV0byogdGVzdCA9IHN0YXRpY19j
YXN0PFVSSVNjaGVtZVRlc3QqPih1c2VyRGF0YSk7CisgICAgICAgICAgICBnc2l6ZSBkYXRhU2l6
ZTsKKyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIqIGRhdGEgPSB3ZWJraXRfd2ViX3Jlc291cmNl
X2dldF9kYXRhX2ZpbmlzaChXRUJLSVRfV0VCX1JFU09VUkNFKG9iamVjdCksIHJlc3VsdCwgJmRh
dGFTaXplLCBudWxscHRyKTsKKyAgICAgICAgICAgIGdfYXNzZXJ0X2NtcGludChzdHJuY21wKHJl
aW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGRhdGEpLCBrQmFySFRNTCwgZGF0YVNpemUpLCA9PSwgMCk7
CisgICAgICAgICAgICBnX21haW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3ApOworICAgICAg
ICB9LCB0ZXN0KTsKKyAgICAgICAgZ19tYWluX2xvb3BfcnVuKHRlc3QtPm1fbWFpbkxvb3ApOwor
ICAgIH0KKyAgICB0ZXN0LT5tX3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmll
dyA9IHRydWU7CiB9CiAKICNpZiBQTEFURk9STShHVEspCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438178</attachid>
            <date>2021-09-14 15:16:30 -0700</date>
            <delta_ts>2021-09-15 13:09:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210914171629.patch</filename>
            <type>text/plain</type>
            <size>58679</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyMjU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE4M2IzMTY0NDBiM2Q0MGYy
ODdmMjhlMWRmZGNiZmIxMTgzYmUyNjMuLmU3ZDE3YWEwOWMzZmQwYTBjMjkxMWM3MTI1ZjY4ODdj
MzZlZTgzYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMjEtMDktMTQgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElk
ZW50aWZpZXIgZm9yIFVSTCBzY2hlbWUgaGFuZGxlcnMgYW5kIHRhc2tzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3Nh
Z2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6
CisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hh
cmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmg6CisgICAgICAgICgpOiBEZWxldGVkLgorICAg
ICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnN0b3BV
UkxTY2hlbWVUYXNrKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXI6OldlYlVSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2spOgorICAgICAgICAoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXApOgorICAgICAgICAo
V2ViS2l0OjpnZW5lcmF0ZVdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKTogRGVsZXRlZC4K
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZVRhc2s6OldlYlVSTFNjaGVtZVRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVUYXNrOjp3aWxsUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJM
U2NoZW1lVGFzazo6ZGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxT
Y2hlbWVUYXNrOjpkaWRDb21wbGV0ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVt
ZVRhc2suaDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6aWRlbnRpZmllciBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2s6OndlYlByb2Nlc3NUYXNr
SUQgY29uc3QpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVnaXN0ZXJV
UkxTY2hlbWVIYW5kbGVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxT
Y2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tE
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZENvbXBsZXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5OjpyZW1vdmVUYXNrKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6V2ViVVJMU2NoZW1lVGFza1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5OjpzdGFydExvYWRpbmcpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0b3BMb2FkaW5nKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5Lmg6CisgICAgICAg
IChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6aWRlbnRpZmllciBjb25zdCk6CisKIDIw
MjEtMDktMDkgIEJlbiBOaGFtICA8bmhhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUHJlY29ubmVj
dGVkIHNvY2tldCBpcyBzb21ldGltZXMgbm90IHVzZWQgZm9yIGluaXRpYWwgcmVxdWVzdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJj
ZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggM2QxMTZkYmM2YmNhYjQ3
NTU0ZWZjMjQ0YzI3MWIxYmNlYTNmNDFmMy4uYzNhMDNiODQ3NjkxZmQzYzRiMzlkMjQ4YmUzYmQw
NDViZTMzMzlmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNz
YWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBA
IC0zNTMsNiArMzUzLDggQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFy
ZWQoKToKICAgICAgICAgJ1dlYktpdDo6VHJhbnNhY3Rpb25JRCcsCiAgICAgICAgICdXZWJLaXQ6
OlVzZXJDb250ZW50Q29udHJvbGxlcklkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpXZWJQ
YWdlUHJveHlJZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxl
cklkZW50aWZpZXInLAorICAgICAgICAnV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6WFJEZXZpY2VJZGVudGlmaWVyJywKICAgICBdKQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAK
aW5kZXggZDVjYTNiYmZlMDgwYmU3ZTg3MDJjNTIyNTViOTViOWI4ZWI5OWViNi4uZGRiZWIzNmQx
NWFhYWJlYmU2NWQ2NDcxNWYwYjJlY2QxYmYzNWI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcApAQCAtNDcsMTQgKzQ3LDEyIEBAIHZv
aWQgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIp
IGNvbnN0CiAKIHN0ZDo6b3B0aW9uYWw8VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM+IFVSTFNjaGVt
ZVRhc2tQYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQogewotICAgIHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGhhbmRsZXJJZGVudGlmaWVyOwotICAgIGRlY29kZXIgPj4g
aGFuZGxlcklkZW50aWZpZXI7Ci0gICAgaWYgKCFoYW5kbGVySWRlbnRpZmllcikKKyAgICBXZWJV
UkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllcjsKKyAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKGhhbmRsZXJJZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKICAgICAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB0YXNrSWRlbnRpZmllcjsK
LSAgICBkZWNvZGVyID4+IHRhc2tJZGVudGlmaWVyOwotICAgIGlmICghdGFza0lkZW50aWZpZXIp
CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcjsKKyAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKHRhc2tJZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKIAogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0OwpAQCAt
NzgsOCArNzYsOCBAQCBzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxT
Y2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjbwogICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OwogCiAgICAgcmV0dXJuIHt7Ci0gICAgICAgIFdURk1vdmUoKmhhbmRsZXJJZGVu
dGlmaWVyKSwKLSAgICAgICAgV1RGTW92ZSgqdGFza0lkZW50aWZpZXIpLAorICAgICAgICBXVEZN
b3ZlKGhhbmRsZXJJZGVudGlmaWVyKSwKKyAgICAgICAgV1RGTW92ZSh0YXNrSWRlbnRpZmllciks
CiAgICAgICAgIFdURk1vdmUocmVxdWVzdCksCiAgICAgICAgIFdURk1vdmUoKmZyYW1lSW5mbyks
CiAgICAgfX07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNr
UGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuaAppbmRleCA2NzgyMzk2YjBmOWQwOWIzYmVkMmVmNDliY2JkNWNjOTUzYzZkNTk1Li5lNGQy
YTAwZjI1Y2UyZGY3NGUwZTQ4MzE4MTMzMWZhMzM2Njk0ZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKQEAgLTI2LDYgKzI2LDggQEAKICNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRnJhbWVJbmZvRGF0YS5oIgorI2luY2x1ZGUgIldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAK
IG5hbWVzcGFjZSBJUEMgewpAQCAtMzYsOCArMzgsOCBAQCBjbGFzcyBEZWNvZGVyOwogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHN0cnVjdCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7Ci0gICAgdWlu
dDY0X3QgaGFuZGxlcklkZW50aWZpZXIgeyAwIH07Ci0gICAgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIgeyAwIH07CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50
aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmll
cjsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdDsKICAgICBGcmFtZUluZm9E
YXRhIGZyYW1lSW5mbzsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA5NjgyNDhkNDMyZjY0NTFlMGQyYzI5ZjdhMzQwYjA2
NzQxNzI5ZjcwLi42Mjg2NTU3MmYxNjdlODNiYzcwMWUwM2QxMDVhODc0YWE4YjM1ZTlkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBA
IC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiV2ViUGFnZUdyb3VwRGF0YS5oIgogI2luY2x1ZGUg
IldlYlBhZ2VQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJlbmNlc1N0b3Jl
LmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0FjdGl2aXR5U3RhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0NvbG9yLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9EZXN0aW5hdGlvbkNvbG9yU3BhY2UuaD4KQEAgLTIwMSw3ICsyMDIs
NyBAQCBzdHJ1Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIG92ZXJy
aWRlQ29udGVudFNlY3VyaXR5UG9saWN5OwogICAgIHN0ZDo6b3B0aW9uYWw8ZG91YmxlPiBjcHVM
aW1pdDsKIAotICAgIEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gdXJsU2NoZW1lSGFuZGxlcnM7
CisgICAgSGFzaE1hcDxTdHJpbmcsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyPiB1cmxT
Y2hlbWVIYW5kbGVyczsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzV2l0aExlZ2FjeUN1
c3RvbVByb3RvY29sSGFuZGxlcnM7CiAKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1Qp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJVUkxTY2hlbWVIYW5kbGVySWRl
bnRpZmllci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50
aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xYjJkYWU4ODk1YWFmNmVkMTVkMWY1MTE5NDQyNjU1ZWQ1N2Qy
MGE1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1l
SGFuZGxlcklkZW50aWZpZXIuaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIxIFJlZCBIYXQgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUg
PHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBX
ZWJVUkxTY2hlbWVIYW5kbGVyOworCit1c2luZyBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmll
ciA9IE9iamVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lSGFuZGxlcj47CisKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIu
aCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43ZGM3MzcwY2U5M2IxZDBmZjg5NjVmYzNlNTY5YjYxYzYyYTU5MjE3Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgUmVkIEhhdCBJbmMuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3Rm
L09iamVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIFdlYlVS
TFNjaGVtZVRhc2tQcm94eTsKKwordXNpbmcgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmll
ciA9IE9iamVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PjsKKworfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViQ29udGV4dC5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNw
cAppbmRleCBiZDJkNGQyMDIwNmY4Yjg2ZmU0Y2QxYWM5MGQ5MGI3OWMzNDhlZDlkLi5mNTQzZDdm
NDkyNTU1NDM5ZDYyOGQzZWJjYzc5MDUxMjM5NGJlNjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcApAQCAtMTk0LDcg
KzE5NCw3IEBAIHByaXZhdGU6CiAgICAgV2ViS2l0VVJJU2NoZW1lUmVxdWVzdENhbGxiYWNrIG1f
Y2FsbGJhY2sgeyBudWxscHRyIH07CiAgICAgdm9pZCogbV91c2VyRGF0YSB7IG51bGxwdHIgfTsK
ICAgICBHRGVzdHJveU5vdGlmeSBtX2Rlc3Ryb3lOb3RpZnkgeyBudWxscHRyIH07Ci0gICAgSGFz
aE1hcDx1aW50NjRfdCwgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Pj4gbV9yZXF1ZXN0
czsKKyAgICBIYXNoTWFwPFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyLCBHUmVmUHRyPFdlYktp
dFVSSVNjaGVtZVJlcXVlc3Q+PiBtX3JlcXVlc3RzOwogfTsKIAogdHlwZWRlZiBIYXNoTWFwPFN0
cmluZywgUmVmUHRyPFdlYktpdFVSSVNjaGVtZUhhbmRsZXI+ID4gVVJJU2NoZW1lSGFuZGxlck1h
cDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDNlZWRjOWY2
M2NjMzk2MjcxNjM5YThiYzljMWZmNzM3NDZmMGIxNDMuLjkwMDcwNTRiYjEwMzViMTIzZmNjNDJk
YjQxZWM0YTI3ZTJkMTIxNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcApAQCAtOTk3Nyw3ICs5OTc3LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnN0YXJ0VVJMU2No
ZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2UKICAgICBp
dGVyYXRvci0+dmFsdWUtPnN0YXJ0VGFzaygqdGhpcywgcHJvY2Vzcywgd2ViUGFnZUlELCBXVEZN
b3ZlKHBhcmFtZXRlcnMpLCBudWxscHRyKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OnN0b3BV
UkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRl
bnRpZmllcikKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayhXZWJVUkxTY2hl
bWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKIHsKICAgICBNRVNTQUdFX0NIRUNLKG1fcHJv
Y2VzcywgZGVjbHR5cGUobV91cmxTY2hlbWVIYW5kbGVyc0J5SWRlbnRpZmllcik6OmlzVmFsaWRL
ZXkoaGFuZGxlcklkZW50aWZpZXIpKTsKICAgICBhdXRvIGl0ZXJhdG9yID0gbV91cmxTY2hlbWVI
YW5kbGVyc0J5SWRlbnRpZmllci5maW5kKGhhbmRsZXJJZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNDdlMTg3Y2I2ZGZhZjNmYTYyZjljNmMwMzQy
ZmU1YTZhOGFhNWYwZC4uMGE5NWExNTU3NjAyZWIwYTRmZjZmYjc0MGJiYWI5NjE1ZTZlNTljMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTc3LDYgKzc3LDggQEAK
ICNpbmNsdWRlICJXZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eS5oIgogI2luY2x1ZGUgIldlYlBv
cHVwTWVudVByb3h5LmgiCiAjaW5jbHVkZSAiV2ViUHJlZmVyZW5jZXMuaCIKKyNpbmNsdWRlICJX
ZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllci5oIgorI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRh
c2tQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJXZWJVbmRvU3RlcElELmgiCiAjaW5jbHVk
ZSAiV2Vic2l0ZVBvbGljaWVzRGF0YS5oIgogI2luY2x1ZGUgIldpbmRvd0tpbmQuaCIKQEAgLTI0
MzAsNyArMjQzMiw3IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAgIHZvaWQgc3RhcnRVUkxTY2hl
bWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYpOwotICAgIHZvaWQgc3RvcFVSTFNjaGVt
ZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHN0b3BVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlm
aWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKTsKICAg
ICB2b2lkIGxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMmJiwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFz
a0RlbGF5ZWRSZXBseSYmKTsKIAogICAgIGJvb2wgY2hlY2tVUkxSZWNlaXZlZEZyb21DdXJyZW50
T3JQcmV2aW91c1dlYlByb2Nlc3MoV2ViUHJvY2Vzc1Byb3h5JiwgY29uc3QgU3RyaW5nJik7CkBA
IC0yOTg0LDcgKzI5ODYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9wcmVmZXJGYXN0ZXJDbGlj
a092ZXJEb3VibGVUYXAgeyBmYWxzZSB9OwogCiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZjxXZWJV
UkxTY2hlbWVIYW5kbGVyPj4gbV91cmxTY2hlbWVIYW5kbGVyc0J5U2NoZW1lOwotICAgIEhhc2hN
YXA8dWludDY0X3QsIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPj4gbV91cmxTY2hlbWVIYW5kbGVy
c0J5SWRlbnRpZmllcjsKKyAgICBIYXNoTWFwPFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVy
LCBSZWY8V2ViVVJMU2NoZW1lSGFuZGxlcj4+IG1fdXJsU2NoZW1lSGFuZGxlcnNCeUlkZW50aWZp
ZXI7CiAKICNpZiBFTkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQogICAgIHVzaW5nIElkZW50aWZp
ZXJUb0F0dGFjaG1lbnRNYXAgPSBIYXNoTWFwPFN0cmluZywgUmVmPEFQSTo6QXR0YWNobWVudD4+
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CmluZGV4IGZjNTVlNzY1OWE4OTIwOTgwZmQ0MjEyOWFjM2YwZGFjNzViYmI5MTMuLjI4MDQwYTc3
NTJiMmQ3MWU0YTYxMzAzNThkOGQyMDg1NTZmNzk3NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KQEAgLTUyMyw3ICs1MjMsNyBAQCBt
ZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAgIFNldElzVXNpbmdIaWdoUGVyZm9ybWFuY2VX
ZWJHTChib29sIGlzVXNpbmdIaWdoUGVyZm9ybWFuY2VXZWJHTCkKIAogICAgIFN0YXJ0VVJMU2No
ZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyBwYXJhbWV0ZXJz
KQotICAgIFN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllcikKKyAgICBTdG9wVVJMU2NoZW1lVGFzayhXZWJLaXQ6OldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpCiAgICAgTG9hZFN5bmNo
cm9ub3VzVVJMU2NoZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVy
cyBwYXJhbWV0ZXJzKSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+IGRhdGEpIFN5bmNocm9u
b3VzCiAKICNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAppbmRleCBmZjY4ZDY0ZTE4MDJhZGVi
YzQwMTRiOGI2MTc5MWEwMmY0ZTRlNGEwLi4zMjQxNWM2ZTY3YzllZmQ4ZTIwMjY1NGI2MWU3MzI3
Y2NmNGUyZmIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hl
bWVIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVI
YW5kbGVyLmNwcApAQCAtMzMsMTQgKzMzLDggQEAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcg
bmFtZXNwYWNlIFdlYkNvcmU7CiAKLXN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZVdlYlVSTFNjaGVt
ZUhhbmRsZXJJZGVudGlmaWVyKCkKLXsKLSAgICBzdGF0aWMgdWludDY0X3QgbmV4dElkZW50aWZp
ZXIgPSAxOwotICAgIHJldHVybiBuZXh0SWRlbnRpZmllcisrOwotfQotCiBXZWJVUkxTY2hlbWVI
YW5kbGVyOjpXZWJVUkxTY2hlbWVIYW5kbGVyKCkKLSAgICA6IG1faWRlbnRpZmllcihnZW5lcmF0
ZVdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKCkpCisgICAgOiBtX2lkZW50aWZpZXIoT2Jq
ZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVIYW5kbGVyPjo6Z2VuZXJhdGUoKSkKIHsKIH0KIApA
QCAtNTEsMTggKzQ1LDE5IEBAIFdlYlVSTFNjaGVtZUhhbmRsZXI6On5XZWJVUkxTY2hlbWVIYW5k
bGVyKCkKIAogdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2soV2ViUGFnZVByb3h5
JiBwYWdlLCBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIFBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJ
RCwgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzLCBTeW5jTG9hZENvbXBsZXRp
b25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgYXV0byB0YXNrSWRlbnRpZmll
ciA9IHBhcmFtZXRlcnMudGFza0lkZW50aWZpZXI7Ci0gICAgYXV0byByZXN1bHQgPSBtX3Rhc2tz
LmFkZCh0YXNrSWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFzazo6Y3JlYXRlKCp0aGlzLCBwYWdl
LCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdURk1vdmUocGFyYW1ldGVycyksIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKSk7CisgICAgYXV0byB0YXNrID0gV2ViVVJMU2NoZW1lVGFzazo6Y3JlYXRl
KCp0aGlzLCBwYWdlLCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdURk1vdmUocGFyYW1ldGVycyksIFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBhdXRvIHRhc2tJZGVudGlmaWVyID0gdGFz
ay0+aWRlbnRpZmllcigpOworICAgIGF1dG8gcmVzdWx0ID0gbV90YXNrcy5hZGQodGFza0lkZW50
aWZpZXIsIFdURk1vdmUodGFzaykpOwogICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CiAK
LSAgICBhdXRvIHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFkZChwYWdlLmlk
ZW50aWZpZXIoKSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CisgICAgYXV0byBwYWdlRW50cnkgPSBt
X3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCksIEhhc2hTZXQ8V2Vi
VVJMU2NoZW1lVGFza0lkZW50aWZpZXI+KCkpOwogICAgIEFTU0VSVCghcGFnZUVudHJ5Lml0ZXJh
dG9yLT52YWx1ZS5jb250YWlucyh0YXNrSWRlbnRpZmllcikpOwogICAgIHBhZ2VFbnRyeS5pdGVy
YXRvci0+dmFsdWUuYWRkKHRhc2tJZGVudGlmaWVyKTsKIAogICAgIHBsYXRmb3JtU3RhcnRUYXNr
KHBhZ2UsIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwogfQogCi1XZWJQcm9jZXNzUHJveHkqIFdl
YlVSTFNjaGVtZUhhbmRsZXI6OnByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCB0YXNr
SWRlbnRpZmllcikgY29uc3QKK1dlYlByb2Nlc3NQcm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6
cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIHRhc2tJ
ZGVudGlmaWVyKSBjb25zdAogewogICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6OmlzVmFsaWRL
ZXkodGFza0lkZW50aWZpZXIpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTc5LDcgKzc0
LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBh
Z2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3gKICAgICAgICAgcmV0dXJuOwogCiAgICAgYXV0
byYgdGFza3NCeVBhZ2UgPSBpdGVyYXRvci0+dmFsdWU7Ci0gICAgVmVjdG9yPHVpbnQ2NF90PiB0
YXNrSWRlbnRpZmllcnNUb1N0b3A7CisgICAgVmVjdG9yPFdlYlVSTFNjaGVtZVRhc2tJZGVudGlm
aWVyPiB0YXNrSWRlbnRpZmllcnNUb1N0b3A7CiAgICAgdGFza0lkZW50aWZpZXJzVG9TdG9wLnJl
c2VydmVJbml0aWFsQ2FwYWNpdHkodGFza3NCeVBhZ2Uuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8g
dGFza0lkZW50aWZpZXIgOiB0YXNrc0J5UGFnZSkgewogICAgICAgICBpZiAoIXByb2Nlc3MgfHwg
cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHRhc2tJZGVudGlmaWVyKSA9PSBwcm9jZXNzKQpAQCAt
OTEsNyArODYsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBh
Z2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogCiB9CiAKLXZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCB0YXNr
SWRlbnRpZmllcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVBy
b3h5JiBwYWdlLCBXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKIHsK
ICAgICBpZiAoIWRlY2x0eXBlKG1fdGFza3MpOjppc1ZhbGlkS2V5KHRhc2tJZGVudGlmaWVyKSkK
ICAgICAgICAgcmV0dXJuOwpAQCAtMTA2LDYgKzEwMSwxNiBAQCB2b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIpCiAgICAgbV90YXNrcy5yZW1vdmUoaXRlcmF0b3IpOwogfQogCit2b2lkIFdlYlVSTFNjaGVt
ZUhhbmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciB3ZWJQcm9jZXNzVGFza0lkZW50aWZpZXIpCit7CisgICAgZm9yIChhdXRv
JiB0IDogbV90YXNrcy52YWx1ZXMoKSkgeworICAgICAgICBpZiAodC0+d2ViUHJvY2Vzc1Rhc2tJ
RCgpID09IHdlYlByb2Nlc3NUYXNrSWRlbnRpZmllcikgeworICAgICAgICAgICAgc3RvcFRhc2so
cGFnZSwgdC0+aWRlbnRpZmllcigpKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQor
ICAgIH0KK30KKwogdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjp0YXNrQ29tcGxldGVkKFdlYlVS
TFNjaGVtZVRhc2smIHRhc2spCiB7CiAgICAgYXV0byB0YWtlblRhc2sgPSBtX3Rhc2tzLnRha2Uo
dGFzay5pZGVudGlmaWVyKCkpOwpAQCAtMTE1LDcgKzEyMCw3IEBAIHZvaWQgV2ViVVJMU2NoZW1l
SGFuZGxlcjo6dGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJiB0YXNrKQogICAgIHBsYXRm
b3JtVGFza0NvbXBsZXRlZCh0YXNrKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpy
ZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIHVpbnQ2
NF90IHRhc2tJRCkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdl
TWFwKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCBXZWJVUkxTY2hlbWVUYXNrSWRlbnRp
ZmllciB0YXNrSUQpCiB7CiAgICAgYXV0byBpdGVyYXRvciA9IG1fdGFza3NCeVBhZ2VJZGVudGlm
aWVyLmZpbmQocGFnZUlEKTsKICAgICBBU1NFUlQoaXRlcmF0b3IgIT0gbV90YXNrc0J5UGFnZUlk
ZW50aWZpZXIuZW5kKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
VVJMU2NoZW1lSGFuZGxlci5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1l
SGFuZGxlci5oCmluZGV4IGY0ZTNkYjYwY2MzYjhlMDAwYjM0NjAzMmE5OTk3ZWVjMDE0NGQ4ZGIu
Ljc2ZjNlM2RmZmQ2YmRjNWEyOGU5NDdiOTNhZWM0ZmNlYjBjZjk4MjggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKQEAgLTI1LDYgKzI1LDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2suaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1h
cC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CkBAIC00OCwxMCArNDksMTEgQEAgY2xhc3Mg
V2ViVVJMU2NoZW1lSGFuZGxlciA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlVSTFNjaGVtZUhhbmRs
ZXI+IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5XZWJVUkxTY2hlbWVIYW5kbGVyKCk7CiAKLSAg
ICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9Cisg
ICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0
dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgdm9pZCBzdGFydFRhc2soV2ViUGFnZVByb3h5Jiwg
V2ViUHJvY2Vzc1Byb3h5JiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFVSTFNjaGVtZVRhc2tQ
YXJhbWV0ZXJzJiYsIFN5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXImJik7Ci0gICAgdm9pZCBzdG9w
VGFzayhXZWJQYWdlUHJveHkmLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcik7CisgICAgdm9pZCBz
dG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllcik7CisgICAg
dm9pZCBzdG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlm
aWVyIHdlYlByb2Nlc3NUYXNrSUQpOwogICAgIHZvaWQgc3RvcEFsbFRhc2tzRm9yUGFnZShXZWJQ
YWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkqKTsKICAgICB2b2lkIHRhc2tDb21wbGV0ZWQoV2Vi
VVJMU2NoZW1lVGFzayYpOwogCkBAIC02MywxMyArNjUsMTMgQEAgcHJpdmF0ZToKICAgICB2aXJ0
dWFsIHZvaWQgcGxhdGZvcm1TdG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJVUkxTY2hlbWVUYXNr
JikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQoV2ViVVJMU2No
ZW1lVGFzayYpIHsgfTsKIAotICAgIHZvaWQgcmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdlYlBhZ2VQ
cm94eUlkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJRCk7Ci0gICAgV2ViUHJvY2Vzc1Byb3h5KiBw
cm9jZXNzRm9yVGFza0lkZW50aWZpZXIodWludDY0X3QpIGNvbnN0OworICAgIHZvaWQgcmVtb3Zl
VGFza0Zyb21QYWdlTWFwKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tJ
ZGVudGlmaWVyKTsKKyAgICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmll
cihXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllcikgY29uc3Q7CiAKLSAgICB1aW50NjRfdCBtX2lk
ZW50aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgbV9pZGVudGlmaWVy
OwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmPFdlYlVSTFNjaGVtZVRhc2s+PiBtX3Rhc2tz
OwotICAgIEhhc2hNYXA8V2ViUGFnZVByb3h5SWRlbnRpZmllciwgSGFzaFNldDx1aW50NjRfdD4+
IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza0lk
ZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNrczsKKyAgICBIYXNoTWFwPFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8V2ViVVJMU2NoZW1lVGFza0lkZW50aWZpZXI+
PiBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllcjsKICAgICAKICAgICBTeW5jTG9hZENvbXBsZXRpb25I
YW5kbGVyIG1fc3luY0xvYWRDb21wbGV0aW9uSGFuZGxlcjsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcAppbmRleCA5ZTFkYmJmYzhlODI4ODAxZWIwODgz
YTI2MDBkMWVhYTNmZmNmZmI3Li5mZDM2OWIwOWM5MzIxNmI5NGFjNzY3MzlmZDk4YmRhZmEzNDI5
Njg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNr
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcApA
QCAtNDUsNyArNDUsOCBAQCBSZWY8V2ViVVJMU2NoZW1lVGFzaz4gV2ViVVJMU2NoZW1lVGFzazo6
Y3JlYXRlKFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIsIFdlYgogV2ViVVJMU2NoZW1lVGFz
azo6V2ViVVJMU2NoZW1lVGFzayhXZWJVUkxTY2hlbWVIYW5kbGVyJiBoYW5kbGVyLCBXZWJQYWdl
UHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2Vi
UGFnZUlELCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMsIFN5bmNMb2FkQ29t
cGxldGlvbkhhbmRsZXImJiBzeW5jQ29tcGxldGlvbkhhbmRsZXIpCiAgICAgOiBtX3VybFNjaGVt
ZUhhbmRsZXIoaGFuZGxlcikKICAgICAsIG1fcHJvY2VzcyhtYWtlUmVmKHByb2Nlc3MpKQotICAg
ICwgbV9pZGVudGlmaWVyKHBhcmFtZXRlcnMudGFza0lkZW50aWZpZXIpCisgICAgLCBtX2lkZW50
aWZpZXIoT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrPjo6Z2VuZXJhdGUoKSkKKyAg
ICAsIG1fd2ViUHJvY2Vzc1Rhc2tJRChwYXJhbWV0ZXJzLnRhc2tJZGVudGlmaWVyKQogICAgICwg
bV9wYWdlUHJveHlJRChwYWdlLmlkZW50aWZpZXIoKSkKICAgICAsIG1fd2ViUGFnZUlEKHdlYlBh
Z2VJRCkKICAgICAsIG1fcmVxdWVzdChXVEZNb3ZlKHBhcmFtZXRlcnMucmVxdWVzdCkpCkBAIC0x
MDYsNyArMTA3LDcgQEAgYXV0byBXZWJVUkxTY2hlbWVUYXNrOjp3aWxsUGVyZm9ybVJlZGlyZWN0
aW9uKFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3UKICAgICAgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKFdURk1vdmUocmVxdWVzdCkpOwogICAgIH07CiAKLSAgICBwYWdlLT5zZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tXaWxsUGVyZm9y
bVJlZGlyZWN0aW9uKG1fdXJsU2NoZW1lSGFuZGxlci0+aWRlbnRpZmllcigpLCBtX2lkZW50aWZp
ZXIsIHJlc3BvbnNlLCByZXF1ZXN0KSwgV1RGTW92ZShpbm5lckNvbXBsZXRpb25IYW5kbGVyKSk7
CisgICAgcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hl
bWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbihtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZp
ZXIoKSwgbV93ZWJQcm9jZXNzVGFza0lELCByZXNwb25zZSwgcmVxdWVzdCksIFdURk1vdmUoaW5u
ZXJDb21wbGV0aW9uSGFuZGxlcikpOwogCiAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7
CiB9CkBAIC0xMzgsNyArMTM5LDcgQEAgYXV0byBXZWJVUkxTY2hlbWVUYXNrOjpkaWRQZXJmb3Jt
UmVkaXJlY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnMKICAgICAgICAg
bV9yZXF1ZXN0ID0gcmVxdWVzdDsKICAgICB9CiAKLSAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24obV91cmxTY2hl
bWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1faWRlbnRpZmllciwgcmVzcG9uc2UsIHJlcXVlc3Qp
LCBtX3dlYlBhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpV
UkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKG1fdXJsU2NoZW1lSGFuZGxlci0+aWRl
bnRpZmllcigpLCBtX3dlYlByb2Nlc3NUYXNrSUQsIHJlc3BvbnNlLCByZXF1ZXN0KSwgbV93ZWJQ
YWdlSUQpOwogCiAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CiB9CkBAIC0xNjQsNyAr
MTY1LDcgQEAgYXV0byBXZWJVUkxTY2hlbWVUYXNrOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIC0+IEUKICAgICBpZiAoaXNTeW5jKCkpCiAgICAg
ICAgIG1fc3luY1Jlc3BvbnNlID0gcmVzcG9uc2U7CiAKLSAgICBtX3Byb2Nlc3MtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UobV91cmxTY2hl
bWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1faWRlbnRpZmllciwgcmVzcG9uc2UpLCBtX3dlYlBh
Z2VJRCk7CisgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hlbWVU
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKG1fdXJsU2NoZW1lSGFuZGxlci0+aWRlbnRpZmllcigpLCBt
X3dlYlByb2Nlc3NUYXNrSUQsIHJlc3BvbnNlKSwgbV93ZWJQYWdlSUQpOwogICAgIHJldHVybiBF
eGNlcHRpb25UeXBlOjpOb25lOwogfQogCkBAIC0xOTQsNyArMTk1LDcgQEAgYXV0byBXZWJVUkxT
Y2hlbWVUYXNrOjpkaWRSZWNlaXZlRGF0YShSZWY8U2hhcmVkQnVmZmVyPiYmIGJ1ZmZlcikgLT4g
RXhjZXB0aW9uVHkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CiAgICAgfQog
Ci0gICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hlbWVUYXNrRGlk
UmVjZWl2ZURhdGEobV91cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1faWRlbnRpZmll
ciwgYnVmZmVyLmdldCgpKSwgbV93ZWJQYWdlSUQpOworICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKG1fdXJsU2NoZW1lSGFu
ZGxlci0+aWRlbnRpZmllcigpLCBtX3dlYlByb2Nlc3NUYXNrSUQsIGJ1ZmZlci5nZXQoKSksIG1f
d2ViUGFnZUlEKTsKICAgICByZXR1cm4gRXhjZXB0aW9uVHlwZTo6Tm9uZTsKIH0KIApAQCAtMjI1
LDcgKzIyNiw3IEBAIGF1dG8gV2ViVVJMU2NoZW1lVGFzazo6ZGlkQ29tcGxldGUoY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpIC0+IEV4Y2VwdGlvblR5cGUKICAgICAgICAgbV9zeW5jRGF0YSA9
IG51bGxwdHI7CiAgICAgfQogCi0gICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
OjpVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUobV91cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlmaWVy
KCksIG1faWRlbnRpZmllciwgZXJyb3IpLCBtX3dlYlBhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5z
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUobV91cmxTY2hl
bWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgZXJyb3IpLCBtX3dl
YlBhZ2VJRCk7CiAgICAgbV91cmxTY2hlbWVIYW5kbGVyLT50YXNrQ29tcGxldGVkKCp0aGlzKTsK
IAogICAgIHJldHVybiBFeGNlcHRpb25UeXBlOjpOb25lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lVGFzay5oCmluZGV4IGVhYzA5YmRlY2ExZGVjMGNiMjE5YWMxZDAzMzA4
YjJlMjcyMzA5Y2UuLmE5ZTFiMDI3ZDMwZDZiNTM4ZDFjZTkwNTkzZmFmNGQxNzUwYTgxYzYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKQEAgLTI3LDEyICsy
NywxNCBAQAogCiAjaW5jbHVkZSAiQVBJT2JqZWN0LmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1By
b3h5LmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNv
dXJjZVJlc3BvbnNlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KICNpbmNs
dWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRlIDx3dGYvSW5zdGFuY2VDb3Vu
dGVkLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRp
Zmllci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0
ci5oPgogCkBAIC01MCw5ICs1MiwxMSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RydWN0IFVS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzOwogY2xhc3MgV2ViVVJMU2NoZW1lSGFuZGxlcjsKK2NsYXNz
IFdlYlVSTFNjaGVtZVRhc2s7CiBjbGFzcyBXZWJQYWdlUHJveHk7CiAKIHVzaW5nIFN5bmNMb2Fk
Q29tcGxldGlvbkhhbmRsZXIgPSBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgY29uc3Qg
VmVjdG9yPHVpbnQ4X3Q+Jik+OwordXNpbmcgV2ViVVJMU2NoZW1lVGFza0lkZW50aWZpZXIgPSBP
YmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZVRhc2s+OwogCiBjbGFzcyBXZWJVUkxTY2hlbWVU
YXNrIDogcHVibGljIEFQSTo6T2JqZWN0SW1wbDxBUEk6Ok9iamVjdDo6VHlwZTo6VVJMU2NoZW1l
VGFzaz4sIHB1YmxpYyBJbnN0YW5jZUNvdW50ZWQ8V2ViVVJMU2NoZW1lVGFzaz4gewogICAgIFdU
Rl9NQUtFX05PTkNPUFlBQkxFKFdlYlVSTFNjaGVtZVRhc2spOwpAQCAtNjEsNyArNjUsOCBAQCBw
dWJsaWM6CiAKICAgICB+V2ViVVJMU2NoZW1lVGFzaygpOwogCi0gICAgdWludDY0X3QgaWRlbnRp
ZmllcigpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1faWRlbnRp
ZmllcjsgfQorICAgIFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25z
dCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAg
ICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHdlYlByb2Nlc3NUYXNrSUQoKSBjb25z
dCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3dlYlByb2Nlc3NUYXNrSUQ7
IH0KICAgICBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VQcm94eUlEKCkgY29uc3QgeyBBU1NF
UlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9wYWdlUHJveHlJRDsgfQogICAgIFdlYkNv
cmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsgcmV0dXJuIG1fd2ViUGFnZUlEOyB9CiAgICAgV2ViUHJvY2Vzc1Byb3h5KiBwcm9j
ZXNzKCkgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9wcm9jZXNzLmdldCgp
OyB9CkBAIC0xMDEsNyArMTA2LDggQEAgcHJpdmF0ZToKIAogICAgIFJlZjxXZWJVUkxTY2hlbWVI
YW5kbGVyPiBtX3VybFNjaGVtZUhhbmRsZXI7CiAgICAgUmVmUHRyPFdlYlByb2Nlc3NQcm94eT4g
bV9wcm9jZXNzOwotICAgIHVpbnQ2NF90IG1faWRlbnRpZmllcjsKKyAgICBXZWJVUkxTY2hlbWVU
YXNrSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllciBtX3dlYlByb2Nlc3NUYXNrSUQ7CiAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciBt
X3BhZ2VQcm94eUlEOwogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIG1fd2ViUGFnZUlEOwog
ICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVlc3QgV1RGX0dVQVJERURfQllfTE9D
SyhtX3JlcXVlc3RMb2NrKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGRhNjMzYzg4MGU1MTY4ZjY5MzRkNjhmY2IyNjY5OWIxMTA5Y2Nl
NzAuLjc0YzYzN2QwY2I0MjFhNjUxM2U0NjE3MThmYTMzODYwYjQ4MWVmZDIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDU5Niw2ICs0
NTk2LDggQEAKIAkJNUNEMjg2NEYxRTcyMkY0NDAwOTRGREM4IC8qIFdLQ29udGVudFJ1bGVMaXN0
U3RvcmVJbnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0NvbnRl
bnRSdWxlTGlzdFN0b3JlSW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NUNEMjg2NTAxRTcyMkY0NDAwOTRGREM4IC8qIFdLQ29udGVudFJ1bGVMaXN0U3RvcmVQcml2YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQ29udGVudFJ1bGVMaXN0U3Rv
cmVQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDRDc0OEI1MjNDOEVC
MTkwMDkyQTlCNSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0Q3NDhCNTIzQzhFQjE5MDA5MkIwQzYgLyog
V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTVDRDc0OEI1MjNDOEVCMTkwMDkyQzFENyAvKiBXZWJVUkxTY2hl
bWVIYW5kbGVySWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0UwQzM2NjIyOUYyRDNEMDAzNjk1RjAgLyogQVBJQ29udGV4dE1lbnVFbGVtZW50SW5m
by5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBUElDb250ZXh0TWVu
dUVsZW1lbnRJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNFMEMzNjcy
MjlGMkQzRTAwMzY5NUYwIC8qIEFQSUNvbnRleHRNZW51RWxlbWVudEluZm8uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJQ29udGV4dE1lbnVFbGVtZW50SW5mby5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0UwQzM2ODIyOUYyRDRBMDAzNjk1RjAgLyogV0tD
b250ZXh0TWVudUVsZW1lbnRJbmZvLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtNzAwMSw2ICs3MDAzLDggQEAKIAkJCQk4MzYwMzQ5RTFBQ0IzNEQ2MDA2MjY1
NDkgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmggKi8sCiAJCQkJQzAzMzdERDcxMjdBNTFC
NjAwOEZGNEY0IC8qIFdlYlRvdWNoRXZlbnQuY3BwICovLAogCQkJCTBGNDAwMTAwMjUyN0Q3M0Mw
MEU5MURBNyAvKiBXZWJUb3VjaEV2ZW50LmggKi8sCisJCQkJNUNENzQ4QjUyM0M4RUIxOTAwOTJD
MUQ3IC8qIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmggKi8sCisJCQkJNUNENzQ4QjUy
M0M4RUIxOTAwOTJCMEM2IC8qIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCAqLywK
IAkJCQk3QzA2NUYyOTFDOENEOTVGMDBDMkQ5NTAgLyogV2ViVXNlckNvbnRlbnRDb250cm9sbGVy
RGF0YVR5cGVzLmNwcCAqLywKIAkJCQk3QzA2NUYyQTFDOENEOTVGMDBDMkQ5NTAgLyogV2ViVXNl
ckNvbnRlbnRDb250cm9sbGVyRGF0YVR5cGVzLmggKi8sCiAJCQkJQzAzMzdERDAxMjdBMjk4MDAw
OEZGNEY0IC8qIFdlYldoZWVsRXZlbnQuY3BwICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCmluZGV4IDM1MjUzMTA2
Y2IxZDMwMTMzOWMyYjMwZTg2MDJmNmJmMjRhM2U3MmIuLjAzNDdhMWU3ZjUyOWVkYTAwNmRlMDdm
ZDA1Y2JkODlmY2Y3MTZjMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTQ2Miw3ICs0NjIsNyBAQCB2b2lk
IFdlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQogICAgIEFTU0VSVChyZXNvdXJjZUxvYWRlcik7CiAgICAgTE9HKE5ldHdvcmtTY2hlZHVsaW5n
LCAiKFdlYlByb2Nlc3MpIFdlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUsIHVybCAnJXMnIiwgcmVz
b3VyY2VMb2FkZXItPnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgaWYgKGF1
dG8gdGFzayA9IG1fdXJsU2NoZW1lVGFza3MudGFrZShyZXNvdXJjZUxvYWRlci0+aWRlbnRpZmll
cigpKSkgeworICAgIGlmIChhdXRvIHRhc2sgPSBtX3VybFNjaGVtZVRhc2tzLnRha2UobWFrZU9i
amVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PihyZXNvdXJjZUxvYWRlci0+aWRl
bnRpZmllcigpKSkpIHsKICAgICAgICAgQVNTRVJUKCFtX2ludGVybmFsbHlGYWlsZWRSZXNvdXJj
ZUxvYWRlcnMuY29udGFpbnMocmVzb3VyY2VMb2FkZXIpKTsKICAgICAgICAgdGFzay0+c3RvcExv
YWRpbmcoKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKaW5kZXggYzc5NmFlNTBmMTRjMTZlYzI1
ZTZlMDE0OWQ3NjZiZjdkMTFlMTg3Yi4uZjRmNWFiYmQzZTliMjMwNWU4ZGM0MGFkYmVhZDMxMDE2
MjE1ZDc2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9X
ZWJMb2FkZXJTdHJhdGVneS5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJOZXR3b3Jr
UmVzb3VyY2VMb2FkSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlJlc291cmNlTG9hZGVyLmgi
CisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvTG9hZGVyU3RyYXRlZ3kuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlRXJy
b3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVyLmg+CkBAIC0xMzQsNyArMTM1
LDcgQEAgcHJpdmF0ZToKICAgICBSdW5Mb29wOjpUaW1lcjxXZWJMb2FkZXJTdHJhdGVneT4gbV9p
bnRlcm5hbGx5RmFpbGVkTG9hZFRpbWVyOwogICAgIAogICAgIEhhc2hNYXA8dW5zaWduZWQgbG9u
ZywgUmVmUHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJjZUxvYWRlcnM7Ci0gICAg
SGFzaE1hcDx1bnNpZ25lZCBsb25nLCBXZWJVUkxTY2hlbWVUYXNrUHJveHkqPiBtX3VybFNjaGVt
ZVRhc2tzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgV2Vi
VVJMU2NoZW1lVGFza1Byb3h5Kj4gbV91cmxTY2hlbWVUYXNrczsKICAgICBIYXNoTWFwPHVuc2ln
bmVkIGxvbmcsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+IG1fcGluZ0xvYWRDb21wbGV0aW9u
SGFuZGxlcnM7CiAgICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBQcmVjb25uZWN0Q29tcGxldGlv
bkhhbmRsZXI+IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyczsKICAgICBWZWN0b3I8RnVu
Y3Rpb248dm9pZChib29sKT4+IG1fb25saW5lU3RhdGVDaGFuZ2VMaXN0ZW5lcnM7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDgwZWUxNDYxNjAx
NGZiZTQyMzY0YWI0YjZjMGU3OTZiYWZhNzdmYjEuLmJhMTJiMzk3NTJmNWQyMjc0ODFkOThhNmVi
NzM2YWJkN2U4NTMxMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCkBAIC02OTEzLDE2ICs2OTEzLDE2IEBAIHZvaWQgV2ViUGFnZTo6c3RvcEFsbFVS
TFNjaGVtZVRhc2tzKCkKICAgICAgICAgaGFuZGxlci0+c3RvcEFsbFRhc2tzKCk7CiB9CiAKLXZv
aWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGhhbmRsZXJJZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSkKK3ZvaWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxT
Y2hlbWVIYW5kbGVyKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlm
aWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSkKIHsKLSAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFBy
b2Nlc3MsICJyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXI6IFJlZ2lzdGVyZWQgaGFuZGxlciAlIiBQ
Ukl1NjQgIiBmb3IgdGhlICclcycgc2NoZW1lIiwgaGFuZGxlcklkZW50aWZpZXIsIHNjaGVtZS51
dGY4KCkuZGF0YSgpKTsKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJyZWdpc3Rl
clVSTFNjaGVtZUhhbmRsZXI6IFJlZ2lzdGVyZWQgaGFuZGxlciAlIiBQUkl1NjQgIiBmb3IgdGhl
ICclcycgc2NoZW1lIiwgaGFuZGxlcklkZW50aWZpZXIudG9VSW50NjQoKSwgc2NoZW1lLnV0Zjgo
KS5kYXRhKCkpOwogICAgIFdlYkNvcmU6OkxlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVS
TFNjaGVtZUFzSGFuZGxlZEJ5U2NoZW1lSGFuZGxlcihzY2hlbWUpOwogICAgIFdlYkNvcmU6Okxl
Z2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzQ09SU0VuYWJsZWQoc2NoZW1l
KTsKICAgICBhdXRvIHNjaGVtZVJlc3VsdCA9IG1fc2NoZW1lVG9VUkxTY2hlbWVIYW5kbGVyUHJv
eHlNYXAuYWRkKHNjaGVtZSwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpjcmVhdGUoKnRoaXMs
IGhhbmRsZXJJZGVudGlmaWVyKSk7CiAgICAgbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVy
UHJveHlNYXAuYWRkKGhhbmRsZXJJZGVudGlmaWVyLCBzY2hlbWVSZXN1bHQuaXRlcmF0b3ItPnZh
bHVlLmdldCgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1S
ZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxsUGVy
Zm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVu
dGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBS
ZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNj
aGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVCho
YW5kbGVyKTsKQEAgLTY5MzEsNyArNjkzMSw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpCiAg
ICAgaGFuZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRlbnRpZmllciwgV1RG
TW92ZShyZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
UmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQor
dm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNj
aGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9u
c2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1f
aWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmll
cik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjkzOSw3ICs2OTM5LDcgQEAgdm9pZCBXZWJQ
YWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW4KICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRh
c2tJZGVudGlmaWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgW10gKFJl
c291cmNlUmVxdWVzdCYmKSB7fSk7CiB9CiAgICAgCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQg
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJVUkxTY2hlbWVIYW5k
bGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclBy
b3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAt
Njk0Nyw3ICs2OTQ3LDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJl
c3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjQKICAgICBoYW5kbGVyLT50
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHRhc2tJZGVudGlmaWVyLCByZXNwb25zZSk7CiB9CiAKLXZv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJl
bmNlJiBkYXRhKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEoV2Vi
VVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVy
ZW5jZSYgZGF0YSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hl
bWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFu
ZGxlcik7CkBAIC02OTU1LDcgKzY5NTUsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tE
aWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdAogICAg
IGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlRGF0YSh0YXNrSWRlbnRpZmllciwgZGF0YS5zaXplKCks
IGRhdGEuZGF0YSgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkQ29tcGxl
dGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0Rp
ZENvbXBsZXRlKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVy
VG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBB
U1NFUlQoaGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmgKaW5kZXggYjI4NjQ1NzJiNzQxNDQ5ZGEzNmY3YWNjMTVmOGJkNzJmMjQzNDQ2OC4uY2QwNjMw
N2UxMDBiMWU2NmZkMzdkNDZjYmU4MWJjMWU0ZTcxYjRkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIldl
YkJhY2tGb3J3YXJkTGlzdFByb3h5LmgiCiAjaW5jbHVkZSAiV2ViUGFnZU1lc3NhZ2VzUmVwbGll
cy5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXIuaCIKKyNpbmNsdWRlICJXZWJVUkxT
Y2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVW5kb1N0ZXBJRC5oIgog
I2luY2x1ZGUgIldlYlVzZXJDb250ZW50Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIldlYnNpdGVQ
b2xpY2llc0RhdGEuaCIKQEAgLTE4NzIsMTMgKzE4NzMsMTMgQEAgcHJpdmF0ZToKIAogICAgIHZv
aWQgZnJhbWVCZWNhbWVSZW1vdGUoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBXZWJDb3JlOjpH
bG9iYWxGcmFtZUlkZW50aWZpZXImJiByZW1vdGVGcmFtZUlkZW50aWZpZXIsIFdlYkNvcmU6Okds
b2JhbFdpbmRvd0lkZW50aWZpZXImJiByZW1vdGVXaW5kb3dJZGVudGlmaWVyKTsKIAotICAgIHZv
aWQgcmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc2NoZW1lKTsKKyAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcihXZWJVUkxT
Y2hlbWVIYW5kbGVySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzY2hlbWUpOwogCi0gICAgdm9p
ZCB1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tE
aWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9u
c2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNr
RGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKLSAgICB2b2lkIHVybFNjaGVt
ZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHVy
bFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVu
dGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB1cmxTY2hl
bWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVy
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YShXZWJVUkxTY2hlbWVI
YW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUo
V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAogICAgIHZvaWQgc2V0SXNU
YWtpbmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oYm9vbCk7CiAgICAgdm9pZCBz
ZXROZWVkc0RPTVdpbmRvd1Jlc2l6ZUV2ZW50KCk7CkBAIC0yMzA2LDcgKzIzMDcsNyBAQCBwcml2
YXRlOgogI2VuZGlmCiAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eT4+IG1fc2NoZW1lVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXA7Ci0gICAgSGFz
aE1hcDx1aW50NjRfdCwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Kj4gbV9pZGVudGlmaWVyVG9V
UkxTY2hlbWVIYW5kbGVyUHJveHlNYXA7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hlbWVIYW5kbGVy
SWRlbnRpZmllciwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Kj4gbV9pZGVudGlmaWVyVG9VUkxT
Y2hlbWVIYW5kbGVyUHJveHlNYXA7CiAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBGdW5jdGlvbjx2
b2lkKGJvb2wgZ3JhbnRlZCk+PiBtX3N0b3JhZ2VBY2Nlc3NSZXNwb25zZUNhbGxiYWNrTWFwOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbgppbmRleCA1OTZiNGY3ZjYwMjJmNWFhZTM0M2E2ZTNmMDA5ZjlmOTZiYmU4OTg1Li42
ZjZiMzg2ODg3ZWYyOTRhOGNmNjJlZGM1ZTA2NjEwMTNjMDI3ODU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KQEAgLTU0
OSwxMyArNTQ5LDEzIEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50
OF90IFdlYktpdDo6U3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlCiAKICAgICBGcmFtZUJlY2Ft
ZVJlbW90ZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYkNvcmU6
Okdsb2JhbEZyYW1lSWRlbnRpZmllciByZW1vdGVGcmFtZUlkZW50aWZpZXIsIHN0cnVjdCBXZWJD
b3JlOjpHbG9iYWxXaW5kb3dJZGVudGlmaWVyIHJlbW90ZVdpbmRvd0lkZW50aWZpZXIpCiAKLSAg
ICBSZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaWRlbnRpZmllciwgU3RyaW5nIHNj
aGVtZSkKKyAgICBSZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIoV2ViS2l0OjpXZWJVUkxTY2hlbWVI
YW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgc2NoZW1lKQogCi0gICAgVVJMU2No
ZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIs
IHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3Bv
bnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0IGFjdHVhbFJlcXVlc3QpIEFzeW5jCi0gICAgVVJMU2NoZW1lVGFz
a0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCi0gICAgVVJMU2NoZW1lVGFz
a0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3Qg
dGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAg
VVJMU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRh
dGEpCi0gICAgVVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJv
cikKKyAgICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbihXZWJLaXQ6OldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJl
cXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5bmMK
KyAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYktpdDo6V2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktpdDo6V2ViVVJMU2No
ZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVz
dCkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYktpdDo6V2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktpdDo6V2ViVVJMU2No
ZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViS2l0
OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBJUEM6OlNo
YXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxl
dGUoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmll
ciwgV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogCiAgICAgU2V0SXNTdXNwZW5kZWQoYm9v
bCBzdXNwZW5kZWQpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCmluZGV4IDM2ZTU3MjUxMjMz
N2Q2MzAwYzIyZThhMzJlMTcxNTE5MDQzYjUwMzcuLjA1MWNlYWNiN2Q3YWI2MGIwZDdiM2ExNWNi
YWNmOGY2MzQwMzg3YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcApAQCAtNDMsNyArNDMs
NyBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoV2ViUGFnZSYg
cGFnZSwgdWludDY0X3QgaWRlbnRpZmllcikKK1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6V2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5KFdlYlBhZ2UmIHBhZ2UsIFdlYlVSTFNjaGVtZUhhbmRsZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgOiBtX3dlYlBhZ2UocGFnZSkKICAgICAsIG1faWRl
bnRpZmllcihpZGVudGlmaWVyKQogewpAQCAtNTYsNyArNTYsNyBAQCBXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6On5XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoKQogCiB2b2lkIFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eTo6c3RhcnROZXdUYXNrKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIFdlYkZy
YW1lJiB3ZWJGcmFtZSkKIHsKLSAgICBhdXRvIHJlc3VsdCA9IG1fdGFza3MuYWRkKGxvYWRlci5p
ZGVudGlmaWVyKCksIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6Y3JlYXRlKCp0aGlzLCBsb2FkZXIs
IHdlYkZyYW1lKSk7CisgICAgYXV0byByZXN1bHQgPSBtX3Rhc2tzLmFkZChtYWtlT2JqZWN0SWRl
bnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+KGxvYWRlci5pZGVudGlmaWVyKCkpLCBXZWJV
UkxTY2hlbWVUYXNrUHJveHk6OmNyZWF0ZSgqdGhpcywgbG9hZGVyLCB3ZWJGcmFtZSkpOwogICAg
IEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CiAKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS53ZWJMb2FkZXJTdHJhdGVneSgpLmFkZFVSTFNjaGVtZVRhc2tQcm94eSgqcmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSk7CkBAIC02Niw3ICs2Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgV2ViRnJhbWUmIHdlCiB2
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VM
b2FkSWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJhbWUmIHdlYkZyYW1lLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNv
dXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewogICAgIGRhdGEuc2hy
aW5rKDApOwotICAgIGlmICghbV93ZWJQYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMg
eyBtX2lkZW50aWZpZXIsIGxvYWRJZGVudGlmaWVyLCByZXF1ZXN0LCB3ZWJGcmFtZS5pbmZvKCkg
fSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2s6
OlJlcGx5KHJlc3BvbnNlLCBlcnJvciwgZGF0YSkpKSB7CisgICAgaWYgKCFtX3dlYlBhZ2Uuc2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFz
ayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7IG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50
aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pihsb2FkSWRlbnRpZmllciksIHJlcXVlc3QsIHdl
YkZyYW1lLmluZm8oKSB9KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3Vz
VVJMU2NoZW1lVGFzazo6UmVwbHkocmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKICAgICAgICAg
ZXJyb3IgPSBmYWlsZWRDdXN0b21Qcm90b2NvbFN5bmNMb2FkKHJlcXVlc3QpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQpAQCAtNzgsNyArNzgsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQ
cm94eTo6c3RvcEFsbFRhc2tzKCkKICAgICAgICAgbV90YXNrcy5iZWdpbigpLT52YWx1ZS0+c3Rv
cExvYWRpbmcoKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQ
ZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
JiBuZXdSZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVj
dFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZpZXIp
OwogICAgIGlmICghdGFzaykKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZp
ZXIKICAgICB0YXNrLT5kaWRQZXJmb3JtUmVkaXJlY3Rpb24oV1RGTW92ZShyZWRpcmVjdFJlc3Bv
bnNlKSwgV1RGTW92ZShuZXdSZXF1ZXN0KSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwog
fQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25z
ZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25z
ZShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5n
ZXQodGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAgLTk2LDcgKzk2LDcgQEAgdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGMKICAgICB0YXNrLT5kaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9u
c2UpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVE
YXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCog
ZGF0YSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEo
V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgc2l6ZV90IHNp
emUsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpCiB7CiAgICAgYXV0byogdGFzayA9IG1fdGFza3MuZ2V0
KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2spCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgc2l6ZV8KICAgICB0YXNrLT5kaWRSZWNlaXZlRGF0YShzaXplLCBkYXRh
KTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSh1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKFdlYlVSTFNjaGVtZVRh
c2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVy
cm9yKQogewogICAgIGlmIChhdXRvIHRhc2sgPSByZW1vdmVUYXNrKHRhc2tJZGVudGlmaWVyKSkK
ICAgICAgICAgdGFzay0+ZGlkQ29tcGxldGUoZXJyb3IpOwpAQCAtMTE3LDcgKzExNyw3IEBAIHZv
aWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkU3RvcExvYWRpbmcoV2ViVVJMU2No
ZW1lVGFza1Byb3h5JiB0YXNrKQogICAgIHJlbW92ZVRhc2sodGFzay5pZGVudGlmaWVyKCkpOwog
fQogCi1SZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHk6OnJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcikKK1JlZlB0cjxXZWJVUkxTY2hlbWVU
YXNrUHJveHk+IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayhXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byB0YXNrID0gbV90
YXNrcy50YWtlKGlkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmgKaW5kZXggMDQyZDc5YzZlNmY4NDVkYzFiMDZiMmNhMzM4MDA3MmQ0ODBiYTZmMC4uOWQxYzk5
YmE5NWVmY2Y1ZmQxNGY1NmY0YTJjNGY4Y2E5MGMzMjdjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJXZWJVUkxT
Y2hlbWVIYW5kbGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2tQcm94
eS5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KQEAgLTQzLDcgKzQ0LDcgQEAgdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlm
aWVyOwogCiBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkgOiBwdWJsaWMgUmVmQ291bnRl
ZDxXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk+IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gY3JlYXRlKFdlYlBhZ2UmIHBhZ2UsIHVpbnQ2NF90IGlk
ZW50aWZpZXIpCisgICAgc3RhdGljIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk+IGNyZWF0
ZShXZWJQYWdlJiBwYWdlLCBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5KHBhZ2UsIGlkZW50aWZpZXIpKTsKICAgICB9CkBAIC01NCwyNCArNTUsMjQgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShSZXNvdXJjZUxvYWRJZGVudGlmaWVy
LCBXZWJGcmFtZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgVmVjdG9yPHVpbnQ4X3Q+
Jik7CiAKLSAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlm
aWVyOyB9CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogICAgIFdlYlBhZ2UmIHBhZ2UoKSB7IHJldHVy
biBtX3dlYlBhZ2U7IH0KIAotICAgIHZvaWQgdGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwot
ICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXpl
X3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwotICAgIHZvaWQgdGFza0RpZENvbXBsZXRlKHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CisgICAg
dm9pZCB0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
VVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKFdlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIHNpemVfdCwgY29uc3Qg
dWludDhfdCogZGF0YSk7CisgICAgdm9pZCB0YXNrRGlkQ29tcGxldGUoV2ViVVJMU2NoZW1lVGFz
a1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpOwogICAgIHZvaWQgdGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNjaGVtZVRhc2tQcm94
eSYpOwogCiBwcml2YXRlOgotICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eShXZWJQYWdlJiwg
dWludDY0X3QgaWRlbnRpZmllcik7CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5KFdlYlBh
Z2UmLCBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllcik7CiAKLSAgICBSZWZQdHI8V2ViVVJM
U2NoZW1lVGFza1Byb3h5PiByZW1vdmVUYXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpOworICAgIFJl
ZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2soV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllcik7CiAKICAgICBXZWJQYWdlJiBtX3dlYlBhZ2U7Ci0gICAgdWludDY0X3Qg
bV9pZGVudGlmaWVyIHsgMCB9OworICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIG1f
aWRlbnRpZmllcjsKIAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJVUkxTY2hlbWVU
YXNrUHJveHk+PiBtX3Rhc2tzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllciwgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4+IG1fdGFza3M7CiB9OyAvLyBj
bGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVU
YXNrUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lVGFza1Byb3h5LmNwcAppbmRleCA3NTc5OWEwYzY1ZDBjZGFmZGU2ZjI2NWIxYzU0NzU2Yjg0
YTIwOWQ5Li4yYTFhMWNiYWU3ZDI5NDc5YTg4NmNlZTZmYjE2MjhhZDhkMWNlYzExIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJv
eHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVt
ZVRhc2tQcm94eS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KIAogI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0df
U1RBTkRBUkRfVEVNUExBVEUgIltzY2hlbWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHRhc2tJRD0lbHVdIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eTo6IgotI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0df
U1RBTkRBUkRfUEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBwYWdl
SURGcm9tV2ViRnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIG1f
aWRlbnRpZmllcgorI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RB
TkRBUkRfUEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBwYWdlSURG
cm9tV2ViRnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIG1faWRl
bnRpZmllci50b1VJbnQ2NCgpCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNF
X0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgV0VCVVJMU0NIRU1FVEFTS1BST1hZ
X1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCVVJMU0NIRU1FVEFTS1BST1hZ
X1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMsICMjX19WQV9BUkdTX18pCiAKIG5hbWVz
cGFjZSBXZWJLaXQgewpAQCAtNjksNyArNjksNyBAQCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6Oldl
YlVSTFNjaGVtZVRhc2tQcm94eShXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkmIGhhbmRsZXIsCiAg
ICAgLCBtX2NvcmVMb2FkZXIoJmxvYWRlcikKICAgICAsIG1fZnJhbWUoJmZyYW1lKQogICAgICwg
bV9yZXF1ZXN0KGxvYWRlci5yZXF1ZXN0KCkpCi0gICAgLCBtX2lkZW50aWZpZXIobG9hZGVyLmlk
ZW50aWZpZXIoKSkKKyAgICAsIG1faWRlbnRpZmllcihtYWtlT2JqZWN0SWRlbnRpZmllcjxXZWJV
UkxTY2hlbWVUYXNrUHJveHk+KGxvYWRlci5pZGVudGlmaWVyKCkpKQogewogfQogCkBAIC03OCwx
NCArNzgsMTQgQEAgdm9pZCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0YXJ0TG9hZGluZygpCiAg
ICAgQVNTRVJUKG1fY29yZUxvYWRlcik7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwogICAgIFdFQlVS
TFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPRygic3RhcnRMb2FkaW5nIik7Ci0gICAgbV91cmxT
Y2hlbWVIYW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlN0YXJ0VVJM
U2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7IG1fdXJsU2NoZW1lSGFuZGxlci5p
ZGVudGlmaWVyKCksIG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpLCBtX3JlcXVlc3QsIG1fZnJh
bWUtPmluZm8oKSB9KSk7CisgICAgbV91cmxTY2hlbWVIYW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlN0YXJ0VVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1l
dGVycyB7IG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIG1faWRlbnRpZmllciwgbV9y
ZXF1ZXN0LCBtX2ZyYW1lLT5pbmZvKCkgfSkpOwogfQogCiB2b2lkIFdlYlVSTFNjaGVtZVRhc2tQ
cm94eTo6c3RvcExvYWRpbmcoKQogewogICAgIEFTU0VSVChtX2NvcmVMb2FkZXIpOwogICAgIFdF
QlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPRygic3RvcExvYWRpbmciKTsKLSAgICBtX3Vy
bFNjaGVtZUhhbmRsZXIucGFnZSgpLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U3RvcFVS
TFNjaGVtZVRhc2sobV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgbV9jb3JlTG9hZGVy
LT5pZGVudGlmaWVyKCkpKTsKKyAgICBtX3VybFNjaGVtZUhhbmRsZXIucGFnZSgpLnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U3RvcFVSTFNjaGVtZVRhc2sobV91cmxTY2hlbWVIYW5kbGVy
LmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyKSk7CiAgICAgbV9jb3JlTG9hZGVyID0gbnVsbHB0
cjsKICAgICBtX2ZyYW1lID0gbnVsbHB0cjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAppbmRleCBiNWUzMzRk
ZmMyMzM2NDhlYzU3ZThmNjE2M2RjMTVmYWI1NmY2YzVjLi5kZGYyM2ZjNzllN2FlYjI5NDk2NmE4
OGE3NDljZGE5ZWU2NmZiOGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaApAQCAtMjUsNiArMjUsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZp
ZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgogI2luY2x1ZGUgPHd0
Zi9EZXF1ZS5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC01Nyw3ICs1OCw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKHNpemVfdCwgY29uc3QgdWludDhfdCog
ZGF0YSk7CiAgICAgdm9pZCBkaWRDb21wbGV0ZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
Jik7CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lk
ZW50aWZpZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIGlkZW50aWZp
ZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogcHJpdmF0ZToKICAgICBXZWJV
UkxTY2hlbWVUYXNrUHJveHkoV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5JiwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXImLCBXZWJGcmFtZSYpOwpAQCAtNzAsNyArNzEsNyBAQCBwcml2YXRlOgogICAg
IFJlZlB0cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4gbV9jb3JlTG9hZGVyOwogICAgIFJlZlB0
cjxXZWJGcmFtZT4gbV9mcmFtZTsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgbV9yZXF1
ZXN0OwotICAgIHVuc2lnbmVkIGxvbmcgbV9pZGVudGlmaWVyOworICAgIFdlYlVSTFNjaGVtZVRh
c2tQcm94eUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV93YWl0aW5nRm9yQ29t
cGxldGlvbkhhbmRsZXIgeyBmYWxzZSB9OwogICAgIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+IG1f
cXVldWVkVGFza3M7CiB9OwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hh
bmdlTG9nCmluZGV4IGUyNzgzOTM0NGU2MTk3ZWY1YjM2M2JhOWFiMzUyMDg3MjRkMDRjZTAuLmFj
MDBiMThiMzI0Y2QzNTY4ZTEyZjc3YWUxNjE5ZDM4NGFhNzVjMWQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0w
OS0xNCAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGdub21lLm9yZz4KKworICAgICAg
ICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgVVJMIHNjaGVtZSBoYW5kbGVycyBhbmQgdGFza3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRXZWJDb250ZXh0LmNwcDoKKyAgICAg
ICAgKGNyZWF0ZVRlc3RXZWJWaWV3V2l0aFdlYkNvbnRleHQpOgorICAgICAgICAodGVzdFdlYkNv
bnRleHRVUklTY2hlbWUpOgorCiAyMDIxLTA5LTA5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFz
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCBzb21lIGxsZGIgZGF0YSBwcm92aWRlciBpc3N1
ZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0
V2ViS2l0V2ViQ29udGV4dC5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdM
aWIvVGVzdFdlYktpdFdlYkNvbnRleHQuY3BwCmluZGV4IDUzMjU0OGIxZTRlMmEwYWY1YzlhMmVl
MWMzMjA2YmNiZjI4OGY0M2EuLjVlNzg4MjBmY2E5ZDk1ZDhmYmM4ZDFiNjIyMzVmNjExZDZiMzBk
MjIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0
V2ViS2l0V2ViQ29udGV4dC5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRHTGliL1Rlc3RXZWJLaXRXZWJDb250ZXh0LmNwcApAQCAtMTEzLDcgKzExMyw4IEBAIHB1Ymxp
YzoKICAgICAgICAgdGVzdC0+bV91cmlTY2hlbWVSZXF1ZXN0ID0gcmVxdWVzdDsKICAgICAgICAg
dGVzdC0+YXNzZXJ0T2JqZWN0SXNEZWxldGVkV2hlblRlc3RGaW5pc2hlcyhHX09CSkVDVChyZXF1
ZXN0KSk7CiAKLSAgICAgICAgZ19hc3NlcnRfdHJ1ZSh3ZWJraXRfdXJpX3NjaGVtZV9yZXF1ZXN0
X2dldF93ZWJfdmlldyhyZXF1ZXN0KSA9PSB0ZXN0LT5tX3dlYlZpZXcpOworICAgICAgICBpZiAo
dGVzdC0+bV91cmlTY2hlbWVSZXF1ZXN0Q2FsbGJhY2tVc2VzVGVzdFdlYlZpZXcpCisgICAgICAg
ICAgICBnX2Fzc2VydF90cnVlKHdlYmtpdF91cmlfc2NoZW1lX3JlcXVlc3RfZ2V0X3dlYl92aWV3
KHJlcXVlc3QpID09IHRlc3QtPm1fd2ViVmlldyk7CiAKICAgICAgICAgY29uc3QgY2hhciogc2No
ZW1lID0gd2Via2l0X3VyaV9zY2hlbWVfcmVxdWVzdF9nZXRfc2NoZW1lKHJlcXVlc3QpOwogICAg
ICAgICBnX2Fzc2VydF9ub25udWxsKHNjaGVtZSk7CkBAIC0xNjQsNiArMTY1LDggQEAgcHVibGlj
OgogCiAgICAgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0PiBtX3VyaVNjaGVtZVJlcXVl
c3Q7CiAgICAgSGFzaE1hcDxTdHJpbmcsIFVSSVNjaGVtZUhhbmRsZXI+IG1faGFuZGxlcnNNYXA7
CisgICAgYm9vbCBtX3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmlldyB7IHRy
dWUgfTsKKyAgICBpbnQgbV9sb2FkQ291bnRlciB7IDAgfTsKIH07CiAKIFN0cmluZyBnZW5lcmF0
ZUhUTUxDb250ZW50KHVuc2lnbmVkIGNvbnRlbnRMZW5ndGgpCkBAIC0xOTMsNiArMTk2LDIxIEBA
IFN0cmluZyBnZW5lcmF0ZUhUTUxDb250ZW50KHVuc2lnbmVkIGNvbnRlbnRMZW5ndGgpCiAgICAg
cmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKIH0KIAorc3RhdGljIEdSZWZQdHI8V2ViS2l0V2Vi
Vmlldz4gY3JlYXRlVGVzdFdlYlZpZXdXaXRoV2ViQ29udGV4dChXZWJLaXRXZWJDb250ZXh0KiBj
b250ZXh0KQoreworICAgIFdlYktpdFdlYlZpZXcqIHZpZXcgPSBXRUJLSVRfV0VCX1ZJRVcoZ19v
YmplY3RfbmV3KFdFQktJVF9UWVBFX1dFQl9WSUVXLAorI2lmIFBMQVRGT1JNKFdQRSkKKyAgICAg
ICAgImJhY2tlbmQiLCBUZXN0OjpjcmVhdGVXZWJWaWV3QmFja2VuZCgpLAorI2VuZGlmCisgICAg
ICAgICJ3ZWItY29udGV4dCIsIGNvbnRleHQsCisgICAgICAgIG51bGxwdHIpKTsKKworI2lmIFBM
QVRGT1JNKEdUSykKKyAgICBnX29iamVjdF9yZWZfc2luayh2aWV3KTsKKyNlbmRpZgorICAgIHJl
dHVybiBhZG9wdEdSZWYodmlldyk7Cit9CisKIHN0YXRpYyB2b2lkIHRlc3RXZWJDb250ZXh0VVJJ
U2NoZW1lKFVSSVNjaGVtZVRlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCiB7CiAgICAgdGVzdC0+
cmVnaXN0ZXJVUklTY2hlbWVIYW5kbGVyKCJmb28iLCBrQmFySFRNTCwgc3RybGVuKGtCYXJIVE1M
KSwgInRleHQvaHRtbCIpOwpAQCAtMjc4LDYgKzI5Niw0MSBAQCBzdGF0aWMgdm9pZCB0ZXN0V2Vi
Q29udGV4dFVSSVNjaGVtZShVUklTY2hlbWVUZXN0KiB0ZXN0LCBnY29uc3Rwb2ludGVyKQogICAg
IGdfYXNzZXJ0X3RydWUodGVzdC0+bV9sb2FkRXZlbnRzLmNvbnRhaW5zKExvYWRUcmFja2luZ1Rl
c3Q6OlByb3Zpc2lvbmFsTG9hZEZhaWxlZCkpOwogICAgIGdfYXNzZXJ0X3RydWUodGVzdC0+bV9s
b2FkRmFpbGVkKTsKICAgICBnX2Fzc2VydF9lcnJvcih0ZXN0LT5tX2Vycm9yLmdldCgpLCBHX0lP
X0VSUk9SLCBHX0lPX0VSUk9SX0NMT1NFRCk7CisKKyAgICAvLyBUb3J0dXJlIHRlc3QgdGltZTog
bWFrZSBzdXJlIGl0IHN0aWxsIHdvcmtzIGlmIHdlIGlzc3VlIGEgYnVuY2ggb2YgZGlmZmVyZW50
IHJlcXVlc3RzIGFsbCBhdAorICAgIC8vIG9uY2UuIEVhY2ggcmVxdWVzdCBzaG91bGQgZmluaXNo
IGFuZCByZXR1cm4gZXhhY3RseSB0aGUgc2FtZSBkYXRhLgorICAgIGludCBudW1JdGVyYXRpb25z
ID0gNTA7CisgICAgR1JlZlB0cjxXZWJLaXRXZWJWaWV3PiB2aWV3c1tudW1JdGVyYXRpb25zXTsK
KyAgICB0ZXN0LT5tX3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmlldyA9IGZh
bHNlOworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnVtSXRlcmF0aW9uczsgaSsrKSB7CisgICAg
ICAgIHZpZXdzW2ldID0gY3JlYXRlVGVzdFdlYlZpZXdXaXRoV2ViQ29udGV4dCh0ZXN0LT5tX3dl
YkNvbnRleHQuZ2V0KCkpOworICAgICAgICB0ZXN0LT5hc3NlcnRPYmplY3RJc0RlbGV0ZWRXaGVu
VGVzdEZpbmlzaGVzKEdfT0JKRUNUKHZpZXdzW2ldLmdldCgpKSk7CisgICAgICAgIHdlYmtpdF93
ZWJfdmlld19sb2FkX3VyaSh2aWV3c1tpXS5nZXQoKSwgImZvbzpibGFuayIpOworICAgICAgICBn
X3NpZ25hbF9jb25uZWN0KHZpZXdzW2ldLmdldCgpLCAibG9hZC1jaGFuZ2VkIiwgR19DQUxMQkFD
SygrW10gKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIFdlYktpdExvYWRFdmVudCBsb2FkRXZlbnQs
IGdwb2ludGVyIHVzZXJEYXRhKSB7CisgICAgICAgICAgICBhdXRvKiB0ZXN0ID0gc3RhdGljX2Nh
c3Q8VVJJU2NoZW1lVGVzdCo+KHVzZXJEYXRhKTsKKyAgICAgICAgICAgIGlmIChsb2FkRXZlbnQg
IT0gV0VCS0lUX0xPQURfRklOSVNIRUQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICAgICAgdGVzdC0+bV9sb2FkQ291bnRlci0tOworICAgICAgICAgICAgaWYgKCF0ZXN0LT5tX2xv
YWRDb3VudGVyKQorICAgICAgICAgICAgICAgIGdfbWFpbl9sb29wX3F1aXQodGVzdC0+bV9tYWlu
TG9vcCk7CisgICAgICAgIH0pLCB0ZXN0KTsKKyAgICB9CisgICAgdGVzdC0+bV9sb2FkQ291bnRl
ciA9IG51bUl0ZXJhdGlvbnM7CisgICAgZ19tYWluX2xvb3BfcnVuKHRlc3QtPm1fbWFpbkxvb3Ap
OworCisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1JdGVyYXRpb25zOyBpKyspIHsKKyAgICAg
ICAgV2ViS2l0V2ViUmVzb3VyY2UqIHJlc291cmNlID0gd2Via2l0X3dlYl92aWV3X2dldF9tYWlu
X3Jlc291cmNlKHZpZXdzW2ldLmdldCgpKTsKKyAgICAgICAgZ19hc3NlcnRfbm9ubnVsbChyZXNv
dXJjZSk7CisgICAgICAgIHdlYmtpdF93ZWJfcmVzb3VyY2VfZ2V0X2RhdGEocmVzb3VyY2UsIG51
bGxwdHIsICtbXSAoR09iamVjdCogb2JqZWN0LCBHQXN5bmNSZXN1bHQqIHJlc3VsdCwgZ3BvaW50
ZXIgdXNlckRhdGEpIHsKKyAgICAgICAgICAgIGF1dG8qIHRlc3QgPSBzdGF0aWNfY2FzdDxVUklT
Y2hlbWVUZXN0Kj4odXNlckRhdGEpOworICAgICAgICAgICAgZ3NpemUgZGF0YVNpemU7CisgICAg
ICAgICAgICB1bnNpZ25lZCBjaGFyKiBkYXRhID0gd2Via2l0X3dlYl9yZXNvdXJjZV9nZXRfZGF0
YV9maW5pc2goV0VCS0lUX1dFQl9SRVNPVVJDRShvYmplY3QpLCByZXN1bHQsICZkYXRhU2l6ZSwg
bnVsbHB0cik7CisgICAgICAgICAgICBnX2Fzc2VydF9jbXBpbnQoc3RybmNtcChyZWludGVycHJl
dF9jYXN0PGNoYXIqPihkYXRhKSwga0JhckhUTUwsIGRhdGFTaXplKSwgPT0sIDApOworICAgICAg
ICAgICAgZ19tYWluX2xvb3BfcXVpdCh0ZXN0LT5tX21haW5Mb29wKTsKKyAgICAgICAgfSwgdGVz
dCk7CisgICAgICAgIGdfbWFpbl9sb29wX3J1bih0ZXN0LT5tX21haW5Mb29wKTsKKyAgICB9Cisg
ICAgdGVzdC0+bV91cmlTY2hlbWVSZXF1ZXN0Q2FsbGJhY2tVc2VzVGVzdFdlYlZpZXcgPSB0cnVl
OwogfQogCiAjaWYgUExBVEZPUk0oR1RLKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438282</attachid>
            <date>2021-09-15 13:09:42 -0700</date>
            <delta_ts>2021-09-15 14:48:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210915150941.patch</filename>
            <type>text/plain</type>
            <size>58957</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGY2YzA3ZGE1ODRmNWY3NWNk
M2RjNmI0MDIwMjgwMjkxNzE1MDMzMjguLmFkNTY2MTNlMDFhNTc1NGZiYTEzZDc3NWRmOTliMGVh
ZDRiYTdmMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzUgQEAKKzIwMjEtMDktMTUgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElk
ZW50aWZpZXIgZm9yIFVSTCBzY2hlbWUgaGFuZGxlcnMgYW5kIHRhc2tzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3Nh
Z2VzLnB5OgorICAgICAgICAodHlwZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6
CisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hh
cmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmg6CisgICAgICAgICgpOiBEZWxldGVkLgorICAg
ICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnN0b3BV
UkxTY2hlbWVUYXNrKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXI6OldlYlVSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2spOgorICAgICAgICAoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXApOgorICAgICAgICAo
V2ViS2l0OjpnZW5lcmF0ZVdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKTogRGVsZXRlZC4K
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZVRhc2s6OldlYlVSTFNjaGVtZVRhc2spOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVUYXNrOjp3aWxsUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJM
U2NoZW1lVGFzazo6ZGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lVGFzazo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxT
Y2hlbWVUYXNrOjpkaWRDb21wbGV0ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVt
ZVRhc2suaDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6aWRlbnRpZmllciBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2s6OndlYlByb2Nlc3NUYXNr
SUQgY29uc3QpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVnaXN0ZXJV
UkxTY2hlbWVIYW5kbGVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxT
Y2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tE
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZENvbXBsZXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5OjpyZW1vdmVUYXNrKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjppZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6V2ViVVJMU2NoZW1lVGFza1Byb3h5KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5OjpzdGFydExvYWRpbmcpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0b3BMb2FkaW5nKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5Lmg6CisgICAgICAg
IChXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eTo6aWRlbnRpZmllciBjb25zdCk6CisKIDIw
MjEtMDktMTUgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgUmVtb3ZlIHRoZSAiUmVwbGFjZSBXZWJLaXRBZGRpdGlvbnMgaW4gRnJhbWV3b3JrIEhlYWRl
cnMiIGJ1aWxkIHBoYXNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0
L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQpp
bmRleCAzZDExNmRiYzZiY2FiNDc1NTRlZmMyNDRjMjcxYjFiY2VhM2Y0MWYzLi5jM2EwM2I4NDc2
OTFmZDNjNGIzOWQyNDhiZTNiZDA0NWJlMzMzOWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93
ZWJraXQvbWVzc2FnZXMucHkKQEAgLTM1Myw2ICszNTMsOCBAQCBkZWYgdHlwZXNfdGhhdF9jYW5u
b3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViS2l0OjpUcmFuc2FjdGlvbklE
JywKICAgICAgICAgJ1dlYktpdDo6VXNlckNvbnRlbnRDb250cm9sbGVySWRlbnRpZmllcicsCiAg
ICAgICAgICdXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXInLAorICAgICAgICAnV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllcicsCisgICAgICAgICdXZWJLaXQ6OldlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXInLAogICAgICAgICAnV2ViS2l0OjpYUkRldmljZUlk
ZW50aWZpZXInLAogICAgIF0pCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVt
ZVRhc2tQYXJhbWV0ZXJzLmNwcAppbmRleCBkNWNhM2JiZmUwODBiZTdlODcwMmM1MjI1NWI5NWI5
YjhlYjk5ZWI2Li5kZGJlYjM2ZDE1YWFhYmViZTY1ZDY0NzE1ZjBiMmVjZDFiZjM1YjRhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCkBA
IC00NywxNCArNDcsMTIgQEAgdm9pZCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZW5jb2RlKElQ
Qzo6RW5jb2RlciYgZW5jb2RlcikgY29uc3QKIAogc3RkOjpvcHRpb25hbDxVUkxTY2hlbWVUYXNr
UGFyYW1ldGVycz4gVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY29kZXIm
IGRlY29kZXIpCiB7Ci0gICAgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaGFuZGxlcklkZW50aWZp
ZXI7Ci0gICAgZGVjb2RlciA+PiBoYW5kbGVySWRlbnRpZmllcjsKLSAgICBpZiAoIWhhbmRsZXJJ
ZGVudGlmaWVyKQorICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVu
dGlmaWVyOworICAgIGlmICghZGVjb2Rlci5kZWNvZGUoaGFuZGxlcklkZW50aWZpZXIpKQogICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogICAgIAotICAgIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IHRhc2tJZGVudGlmaWVyOwotICAgIGRlY29kZXIgPj4gdGFza0lkZW50aWZpZXI7Ci0gICAg
aWYgKCF0YXNrSWRlbnRpZmllcikKKyAgICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyOworICAgIGlmICghZGVjb2Rlci5kZWNvZGUodGFza0lkZW50aWZpZXIp
KQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0IHJlcXVlc3Q7CkBAIC03OCw4ICs3Niw4IEBAIHN0ZDo6b3B0aW9uYWw8VVJMU2NoZW1l
VGFza1BhcmFtZXRlcnM+IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpEZWNv
CiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAKICAgICByZXR1cm4ge3sKLSAgICAgICAg
V1RGTW92ZSgqaGFuZGxlcklkZW50aWZpZXIpLAotICAgICAgICBXVEZNb3ZlKCp0YXNrSWRlbnRp
ZmllciksCisgICAgICAgIFdURk1vdmUoaGFuZGxlcklkZW50aWZpZXIpLAorICAgICAgICBXVEZN
b3ZlKHRhc2tJZGVudGlmaWVyKSwKICAgICAgICAgV1RGTW92ZShyZXF1ZXN0KSwKICAgICAgICAg
V1RGTW92ZSgqZnJhbWVJbmZvKSwKICAgICB9fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9V
UkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCmluZGV4IDY3ODIzOTZiMGY5ZDA5YjNiZWQyZWY0OWJj
YmQ1Y2M5NTNjNmQ1OTUuLmU0ZDJhMDBmMjVjZTJkZjc0ZTBlNDgzMTgxMzMxZmEzMzY2OTRmYzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
LmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaApA
QCAtMjYsNiArMjYsOCBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJGcmFtZUluZm9EYXRh
LmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIuaCIKKyNpbmNsdWRl
ICJXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9S
ZXNvdXJjZVJlcXVlc3QuaD4KIAogbmFtZXNwYWNlIElQQyB7CkBAIC0zNiw4ICszOCw4IEBAIGNs
YXNzIERlY29kZXI7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RydWN0IFVSTFNjaGVtZVRhc2tQ
YXJhbWV0ZXJzIHsKLSAgICB1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciB7IDAgfTsKLSAgICB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciB7IDAgfTsKKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRl
bnRpZmllciBoYW5kbGVySWRlbnRpZmllcjsKKyAgICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyOwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1
ZXN0OwogICAgIEZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvOwogICAgIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDk4ZGY0NmNmYTRh
MjE0ZDc4MTAxNzQzYmIzZThlYTAwODNmNDMzODQuLjRhMDVkNjBiMmFjZTEyMjQwMTM0OGJiYTlh
YTFkYTE3NDZiODkyNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzLmgKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJXZWJQYWdlR3Jv
dXBEYXRhLmgiCiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUg
IldlYlByZWZlcmVuY2VzU3RvcmUuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5kbGVySWRl
bnRpZmllci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvQWN0aXZpdHlTdGF0ZS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvQ29sb3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0Rlc3RpbmF0aW9uQ29sb3JTcGFj
ZS5oPgpAQCAtMjAxLDcgKzIwMiw3IEBAIHN0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
IHsKICAgICBTdHJpbmcgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgc3RkOjpv
cHRpb25hbDxkb3VibGU+IGNwdUxpbWl0OwogCi0gICAgSGFzaE1hcDxTdHJpbmcsIHVpbnQ2NF90
PiB1cmxTY2hlbWVIYW5kbGVyczsKKyAgICBIYXNoTWFwPFN0cmluZywgV2ViVVJMU2NoZW1lSGFu
ZGxlcklkZW50aWZpZXI+IHVybFNjaGVtZUhhbmRsZXJzOwogICAgIFZlY3RvcjxTdHJpbmc+IHVy
bFNjaGVtZXNXaXRoTGVnYWN5Q3VzdG9tUHJvdG9jb2xIYW5kbGVyczsKIAogI2lmIEVOQUJMRShB
UFBMSUNBVElPTl9NQU5JRkVTVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJV
UkxTY2hlbWVIYW5kbGVySWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiMmRhZTg4OTVhYWY2ZWQx
NWQxZjUxMTk0NDI2NTVlZDU3ZDIwYTUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9XZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzYgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgUmVkIEhhdCBJbmMuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNl
IFdlYktpdCB7CisKK2NsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXI7CisKK3VzaW5nIFdlYlVSTFNj
aGVtZUhhbmRsZXJJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVIYW5k
bGVyPjsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1l
VGFza1Byb3h5SWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1l
VGFza1Byb3h5SWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdkYzczNzBjZTkzYjFkMGZmODk2NWZj
M2U1NjliNjFjNjJhNTkyMTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNiBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBSZWQgSGF0IEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBv
bmNlCisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2Vi
S2l0IHsKKworY2xhc3MgV2ViVVJMU2NoZW1lVGFza1Byb3h5OworCit1c2luZyBXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNr
UHJveHk+OworCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xp
Yi9XZWJLaXRXZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGli
L1dlYktpdFdlYkNvbnRleHQuY3BwCmluZGV4IDFiYzUxZGQxZWQzYjExODVlZDcyNjU1NTliYjFk
M2FlZDk3OTAyNmQuLmFlMWEyMGY5OTI4MDNmNTk4ZWEzZmNhMDdhNzMzN2Q1MTQ5NTU4NTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRl
eHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNv
bnRleHQuY3BwCkBAIC0xOTQsNyArMTk0LDcgQEAgcHJpdmF0ZToKICAgICBXZWJLaXRVUklTY2hl
bWVSZXF1ZXN0Q2FsbGJhY2sgbV9jYWxsYmFjayB7IG51bGxwdHIgfTsKICAgICB2b2lkKiBtX3Vz
ZXJEYXRhIHsgbnVsbHB0ciB9OwogICAgIEdEZXN0cm95Tm90aWZ5IG1fZGVzdHJveU5vdGlmeSB7
IG51bGxwdHIgfTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBHUmVmUHRyPFdlYktpdFVSSVNjaGVt
ZVJlcXVlc3Q+PiBtX3JlcXVlc3RzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza0lkZW50
aWZpZXIsIEdSZWZQdHI8V2ViS2l0VVJJU2NoZW1lUmVxdWVzdD4+IG1fcmVxdWVzdHM7CiB9Owog
CiB0eXBlZGVmIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8V2ViS2l0VVJJU2NoZW1lSGFuZGxlcj4g
PiBVUklTY2hlbWVIYW5kbGVyTWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAKaW5kZXggZDlmMzg1NWM2ZjQ4ZmEyZmM1YzhhNzBkMTA1YWFhZjVmZmQyNmM5Ny4uNTg4
MzE2ODVjMTVkMDRiMDRiOTUxZmI0NzczZmUzYTJlNzE2ZGE5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC05OTc5LDcgKzk5NzksNyBAQCB2b2lkIFdlYlBh
Z2VQcm94eTo6c3RhcnRVUkxTY2hlbWVUYXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYg
cHJvY2VzcywgUGFnZQogICAgIGl0ZXJhdG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCBwcm9j
ZXNzLCB3ZWJQYWdlSUQsIFdURk1vdmUocGFyYW1ldGVycyksIG51bGxwdHIpOwogfQogCi12b2lk
IFdlYlBhZ2VQcm94eTo6c3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKQordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxT
Y2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAg
IE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBkZWNsdHlwZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJ
ZGVudGlmaWVyKTo6aXNWYWxpZEtleShoYW5kbGVySWRlbnRpZmllcikpOwogICAgIGF1dG8gaXRl
cmF0b3IgPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50
aWZpZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBmNDQxNzE0
NDMxYTQxNGZiNTM5NWY2NDFiYmY4ZWRlOGQzNTQ2YTFiLi43NjY3MjdjNjAwNjgwZjc5ZDM3ZjZm
NTU3NWE4YmM2OThkNWU5MTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aApAQCAtNzcsNiArNzcsOCBAQAogI2luY2x1ZGUgIldlYlBheW1lbnRDb29yZGluYXRvclByb3h5
LmgiCiAjaW5jbHVkZSAiV2ViUG9wdXBNZW51UHJveHkuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJl
bmNlcy5oIgorI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5j
bHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlVu
ZG9TdGVwSUQuaCIKICNpbmNsdWRlICJXZWJzaXRlUG9saWNpZXNEYXRhLmgiCiAjaW5jbHVkZSAi
V2luZG93S2luZC5oIgpAQCAtMjQyNyw3ICsyNDI5LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAg
ICAgdm9pZCBzdGFydFVSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7Ci0g
ICAgdm9pZCBzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFVSTFNjaGVtZVRhc2soV2ViVVJM
U2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIg
dGFza0lkZW50aWZpZXIpOwogICAgIHZvaWQgbG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhV
UkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3lu
Y2hyb25vdXNVUkxTY2hlbWVUYXNrRGVsYXllZFJlcGx5JiYpOwogCiAgICAgYm9vbCBjaGVja1VS
TFJlY2VpdmVkRnJvbUN1cnJlbnRPclByZXZpb3VzV2ViUHJvY2VzcyhXZWJQcm9jZXNzUHJveHkm
LCBjb25zdCBTdHJpbmcmKTsKQEAgLTI5ODEsNyArMjk4Myw3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBtX3ByZWZlckZhc3RlckNsaWNrT3ZlckRvdWJsZVRhcCB7IGZhbHNlIH07CiAKICAgICBIYXNo
TWFwPFN0cmluZywgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+PiBtX3VybFNjaGVtZUhhbmRsZXJz
QnlTY2hlbWU7Ci0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+
PiBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyOworICAgIEhhc2hNYXA8V2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPj4gbV91cmxTY2hl
bWVIYW5kbGVyc0J5SWRlbnRpZmllcjsKIAogI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQp
CiAgICAgdXNpbmcgSWRlbnRpZmllclRvQXR0YWNobWVudE1hcCA9IEhhc2hNYXA8U3RyaW5nLCBS
ZWY8QVBJOjpBdHRhY2htZW50Pj47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggNGJhNTU4YWU4MjRjYjMzOTAyN2M0YWYzMGMwZWI4
ODc4MzE1YzliZi4uNjVlZTQ4OThmMWNmODQzOTQ2YTEzZjNmZGVkZGY5MTE5NTNjYmFiNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpA
QCAtNTIxLDcgKzUyMSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAgICAgU2V0SXNV
c2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKGJvb2wgaXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdM
KQogCiAgICAgU3RhcnRVUkxTY2hlbWVUYXNrKHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQ
YXJhbWV0ZXJzIHBhcmFtZXRlcnMpCi0gICAgU3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKQorICAgIFN0b3BVUkxTY2hl
bWVUYXNrKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50
aWZpZXIsIFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRp
ZmllcikKICAgICBMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKHN0cnVjdCBXZWJLaXQ6OlVS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBWZWN0b3I8dWlu
dDhfdD4gZGF0YSkgU3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVy
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCmlu
ZGV4IGZmNjhkNjRlMTgwMmFkZWJjNDAxNGI4YjYxNzkxYTAyZjRlNGU0YTAuLjMyNDE1YzZlNjdj
OWVmZDhlMjAyNjU0YjYxZTczMjdjY2Y0ZTJmYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCkBAIC0zMywxNCArMzMsOCBAQAogbmFtZXNw
YWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RhdGljIHVpbnQ2NF90
IGdlbmVyYXRlV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIoKQotewotICAgIHN0YXRpYyB1
aW50NjRfdCBuZXh0SWRlbnRpZmllciA9IDE7Ci0gICAgcmV0dXJuIG5leHRJZGVudGlmaWVyKys7
Ci19Ci0KIFdlYlVSTFNjaGVtZUhhbmRsZXI6OldlYlVSTFNjaGVtZUhhbmRsZXIoKQotICAgIDog
bV9pZGVudGlmaWVyKGdlbmVyYXRlV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIoKSkKKyAg
ICA6IG1faWRlbnRpZmllcihPYmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZUhhbmRsZXI+Ojpn
ZW5lcmF0ZSgpKQogewogfQogCkBAIC01MSwxOCArNDUsMTkgQEAgV2ViVVJMU2NoZW1lSGFuZGxl
cjo6fldlYlVSTFNjaGVtZUhhbmRsZXIoKQogCiB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0
YXJ0VGFzayhXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgUGFn
ZUlkZW50aWZpZXIgd2ViUGFnZUlELCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBhcmFtZXRl
cnMsIFN5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAg
ICBhdXRvIHRhc2tJZGVudGlmaWVyID0gcGFyYW1ldGVycy50YXNrSWRlbnRpZmllcjsKLSAgICBh
dXRvIHJlc3VsdCA9IG1fdGFza3MuYWRkKHRhc2tJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNr
OjpjcmVhdGUoKnRoaXMsIHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0
ZXJzKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpKTsKKyAgICBhdXRvIHRhc2sgPSBXZWJV
UkxTY2hlbWVUYXNrOjpjcmVhdGUoKnRoaXMsIHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RG
TW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIGF1dG8g
dGFza0lkZW50aWZpZXIgPSB0YXNrLT5pZGVudGlmaWVyKCk7CisgICAgYXV0byByZXN1bHQgPSBt
X3Rhc2tzLmFkZCh0YXNrSWRlbnRpZmllciwgV1RGTW92ZSh0YXNrKSk7CiAgICAgQVNTRVJUKHJl
c3VsdC5pc05ld0VudHJ5KTsKIAotICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90YXNrc0J5UGFnZUlk
ZW50aWZpZXIuYWRkKHBhZ2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PHVpbnQ2NF90PigpKTsKKyAg
ICBhdXRvIHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFkZChwYWdlLmlkZW50
aWZpZXIoKSwgSGFzaFNldDxXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllcj4oKSk7CiAgICAgQVNT
RVJUKCFwYWdlRW50cnkuaXRlcmF0b3ItPnZhbHVlLmNvbnRhaW5zKHRhc2tJZGVudGlmaWVyKSk7
CiAgICAgcGFnZUVudHJ5Lml0ZXJhdG9yLT52YWx1ZS5hZGQodGFza0lkZW50aWZpZXIpOwogCiAg
ICAgcGxhdGZvcm1TdGFydFRhc2socGFnZSwgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiB9CiAK
LVdlYlByb2Nlc3NQcm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVu
dGlmaWVyKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKSBjb25zdAorV2ViUHJvY2Vzc1Byb3h5KiBX
ZWJVUkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIoV2ViVVJMU2NoZW1l
VGFza0lkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNsdHlw
ZShtX3Rhc2tzKTo6aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybiBu
dWxscHRyOwpAQCAtNzksNyArNzQsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BB
bGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAgICAg
ICByZXR1cm47CiAKICAgICBhdXRvJiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsKLSAg
ICBWZWN0b3I8dWludDY0X3Q+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8V2Vi
VVJMU2NoZW1lVGFza0lkZW50aWZpZXI+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKICAgICB0YXNr
SWRlbnRpZmllcnNUb1N0b3AucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eSh0YXNrc0J5UGFnZS5zaXpl
KCkpOwogICAgIGZvciAoYXV0byB0YXNrSWRlbnRpZmllciA6IHRhc2tzQnlQYWdlKSB7CiAgICAg
ICAgIGlmICghcHJvY2VzcyB8fCBwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIodGFza0lkZW50aWZp
ZXIpID09IHByb2Nlc3MpCkBAIC05MSw3ICs4Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxl
cjo6c3RvcEFsbFRhc2tzRm9yUGFnZShXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94
CiAKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wVGFzayhXZWJQYWdlUHJveHkm
IHBhZ2UsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVy
OjpzdG9wVGFzayhXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyKQogewogICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6OmlzVmFsaWRL
ZXkodGFza0lkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CkBAIC0xMDYsNiArMTAxLDE2IEBA
IHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllcikKICAgICBtX3Rhc2tzLnJlbW92ZShpdGVyYXRvcik7CiB9
CiAKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdl
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHdlYlByb2Nlc3NUYXNrSWRlbnRpZmll
cikKK3sKKyAgICBmb3IgKGF1dG8mIHQgOiBtX3Rhc2tzLnZhbHVlcygpKSB7CisgICAgICAgIGlm
ICh0LT53ZWJQcm9jZXNzVGFza0lEKCkgPT0gd2ViUHJvY2Vzc1Rhc2tJZGVudGlmaWVyKSB7Cisg
ICAgICAgICAgICBzdG9wVGFzayhwYWdlLCB0LT5pZGVudGlmaWVyKCkpOworICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CisgICAgfQorfQorCiB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6
OnRhc2tDb21wbGV0ZWQoV2ViVVJMU2NoZW1lVGFzayYgdGFzaykKIHsKICAgICBhdXRvIHRha2Vu
VGFzayA9IG1fdGFza3MudGFrZSh0YXNrLmlkZW50aWZpZXIoKSk7CkBAIC0xMTUsNyArMTIwLDcg
QEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjp0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRh
c2smIHRhc2spCiAgICAgcGxhdGZvcm1UYXNrQ29tcGxldGVkKHRhc2spOwogfQogCi12b2lkIFdl
YlVSTFNjaGVtZUhhbmRsZXI6OnJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVu
dGlmaWVyIHBhZ2VJRCwgdWludDY0X3QgdGFza0lEKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVy
OjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIFdl
YlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIHRhc2tJRCkKIHsKICAgICBhdXRvIGl0ZXJhdG9yID0g
bV90YXNrc0J5UGFnZUlkZW50aWZpZXIuZmluZChwYWdlSUQpOwogICAgIEFTU0VSVChpdGVyYXRv
ciAhPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5lbmQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKaW5kZXggZjRlM2RiNjBjYzNiOGUwMDBiMzQ2
MDMyYTk5OTdlZWMwMTQ0ZDhkYi4uNzZmM2UzZGZmZDZiZGM1YTI4ZTk0N2I5M2FlYzRmY2ViMGNm
OTgyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFu
ZGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIu
aApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIldlYlVSTFNj
aGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFzay5oIgog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTQ4
LDEwICs0OSwxMSBAQCBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyIDogcHVibGljIFJlZkNvdW50
ZWQ8V2ViVVJMU2NoZW1lSGFuZGxlcj4gewogcHVibGljOgogICAgIHZpcnR1YWwgfldlYlVSTFNj
aGVtZUhhbmRsZXIoKTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVy
biBtX2lkZW50aWZpZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHN0YXJ0
VGFzayhXZWJQYWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkmLCBXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciwgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxl
ciYmKTsKLSAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyKTsKKyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNjaGVtZVRh
c2tJZGVudGlmaWVyKTsKKyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNj
aGVtZVRhc2tQcm94eUlkZW50aWZpZXIgd2ViUHJvY2Vzc1Rhc2tJRCk7CiAgICAgdm9pZCBzdG9w
QWxsVGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYsIFdlYlByb2Nlc3NQcm94eSopOwogICAgIHZv
aWQgdGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJik7CiAKQEAgLTYzLDEzICs2NSwxMyBA
QCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVN0b3BUYXNrKFdlYlBhZ2VQcm94
eSYsIFdlYlVSTFNjaGVtZVRhc2smKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtVGFz
a0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJikgeyB9OwogCi0gICAgdm9pZCByZW1vdmVUYXNr
RnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lEKTsKLSAg
ICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCkgY29u
c3Q7CisgICAgdm9pZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmll
ciwgV2ViVVJMU2NoZW1lVGFza0lkZW50aWZpZXIpOworICAgIFdlYlByb2Nlc3NQcm94eSogcHJv
Y2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyKSBjb25zdDsK
IAotICAgIHVpbnQ2NF90IG1faWRlbnRpZmllcjsKKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRl
bnRpZmllciBtX2lkZW50aWZpZXI7CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWY8V2ViVVJM
U2NoZW1lVGFzaz4+IG1fdGFza3M7Ci0gICAgSGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVy
LCBIYXNoU2V0PHVpbnQ2NF90Pj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CisgICAgSGFzaE1h
cDxXZWJVUkxTY2hlbWVUYXNrSWRlbnRpZmllciwgUmVmPFdlYlVSTFNjaGVtZVRhc2s+PiBtX3Rh
c2tzOworICAgIEhhc2hNYXA8V2ViUGFnZVByb3h5SWRlbnRpZmllciwgSGFzaFNldDxXZWJVUkxT
Y2hlbWVUYXNrSWRlbnRpZmllcj4+IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOwogICAgIAogICAg
IFN5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXIgbV9zeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNw
cCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suY3BwCmluZGV4IDll
MWRiYmZjOGU4Mjg4MDFlYjA4ODNhMjYwMGQxZWFhM2ZmY2ZmYjcuLmZkMzY5YjA5YzkzMjE2Yjk0
YWM3NjczOWZkOThiZGFmYTM0Mjk2ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlVSTFNjaGVtZVRhc2suY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlVSTFNjaGVtZVRhc2suY3BwCkBAIC00NSw3ICs0NSw4IEBAIFJlZjxXZWJVUkxTY2hlbWVUYXNr
PiBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoV2ViVVJMU2NoZW1lSGFuZGxlciYgaGFuZGxlciwg
V2ViCiBXZWJVUkxTY2hlbWVUYXNrOjpXZWJVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVtZUhhbmRs
ZXImIGhhbmRsZXIsIFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNz
LCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYgcGFy
YW1ldGVycywgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciYmIHN5bmNDb21wbGV0aW9uSGFuZGxl
cikKICAgICA6IG1fdXJsU2NoZW1lSGFuZGxlcihoYW5kbGVyKQogICAgICwgbV9wcm9jZXNzKG1h
a2VSZWYocHJvY2VzcykpCi0gICAgLCBtX2lkZW50aWZpZXIocGFyYW1ldGVycy50YXNrSWRlbnRp
ZmllcikKKyAgICAsIG1faWRlbnRpZmllcihPYmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZVRh
c2s+OjpnZW5lcmF0ZSgpKQorICAgICwgbV93ZWJQcm9jZXNzVGFza0lEKHBhcmFtZXRlcnMudGFz
a0lkZW50aWZpZXIpCiAgICAgLCBtX3BhZ2VQcm94eUlEKHBhZ2UuaWRlbnRpZmllcigpKQogICAg
ICwgbV93ZWJQYWdlSUQod2ViUGFnZUlEKQogICAgICwgbV9yZXF1ZXN0KFdURk1vdmUocGFyYW1l
dGVycy5yZXF1ZXN0KSkKQEAgLTEwNiw3ICsxMDcsNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6
OndpbGxQZXJmb3JtUmVkaXJlY3Rpb24oUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNv
dQogICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShyZXF1ZXN0KSk7CiAgICAg
fTsKIAotICAgIHBhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6VVJM
U2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24obV91cmxTY2hlbWVIYW5kbGVyLT5pZGVu
dGlmaWVyKCksIG1faWRlbnRpZmllciwgcmVzcG9uc2UsIHJlcXVlc3QpLCBXVEZNb3ZlKGlubmVy
Q29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBwYWdlLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2Fn
ZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKG1fdXJsU2No
ZW1lSGFuZGxlci0+aWRlbnRpZmllcigpLCBtX3dlYlByb2Nlc3NUYXNrSUQsIHJlc3BvbnNlLCBy
ZXF1ZXN0KSwgV1RGTW92ZShpbm5lckNvbXBsZXRpb25IYW5kbGVyKSk7CiAKICAgICByZXR1cm4g
RXhjZXB0aW9uVHlwZTo6Tm9uZTsKIH0KQEAgLTEzOCw3ICsxMzksNyBAQCBhdXRvIFdlYlVSTFNj
aGVtZVRhc2s6OmRpZFBlcmZvcm1SZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JiYgcmVzcG9ucwogICAgICAgICBtX3JlcXVlc3QgPSByZXF1ZXN0OwogICAgIH0KIAotICAgIG1f
cHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza0RpZFBlcmZvcm1S
ZWRpcmVjdGlvbihtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVy
LCByZXNwb25zZSwgcmVxdWVzdCksIG1fd2ViUGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQo
TWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24obV91
cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgcmVzcG9u
c2UsIHJlcXVlc3QpLCBtX3dlYlBhZ2VJRCk7CiAKICAgICByZXR1cm4gRXhjZXB0aW9uVHlwZTo6
Tm9uZTsKIH0KQEAgLTE2NCw3ICsxNjUsNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6OmRpZFJl
Y2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgLT4gRQogICAg
IGlmIChpc1N5bmMoKSkKICAgICAgICAgbV9zeW5jUmVzcG9uc2UgPSByZXNwb25zZTsKIAotICAg
IG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6VVJMU2NoZW1lVGFza0RpZFJlY2Vp
dmVSZXNwb25zZShtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVy
LCByZXNwb25zZSksIG1fd2ViUGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UobV91cmxTY2hlbWVIYW5k
bGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJRCwgcmVzcG9uc2UpLCBtX3dlYlBh
Z2VJRCk7CiAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CiB9CiAKQEAgLTE5NCw3ICsx
OTUsNyBAQCBhdXRvIFdlYlVSTFNjaGVtZVRhc2s6OmRpZFJlY2VpdmVEYXRhKFJlZjxTaGFyZWRC
dWZmZXI+JiYgYnVmZmVyKSAtPiBFeGNlcHRpb25UeQogICAgICAgICByZXR1cm4gRXhjZXB0aW9u
VHlwZTo6Tm9uZTsKICAgICB9CiAKLSAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OlVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YShtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50
aWZpZXIoKSwgbV9pZGVudGlmaWVyLCBidWZmZXIuZ2V0KCkpLCBtX3dlYlBhZ2VJRCk7CisgICAg
bV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVUkxTY2hlbWVUYXNrRGlkUmVjZWl2
ZURhdGEobV91cmxTY2hlbWVIYW5kbGVyLT5pZGVudGlmaWVyKCksIG1fd2ViUHJvY2Vzc1Rhc2tJ
RCwgYnVmZmVyLmdldCgpKSwgbV93ZWJQYWdlSUQpOwogICAgIHJldHVybiBFeGNlcHRpb25UeXBl
OjpOb25lOwogfQogCkBAIC0yMjUsNyArMjI2LDcgQEAgYXV0byBXZWJVUkxTY2hlbWVUYXNrOjpk
aWRDb21wbGV0ZShjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikgLT4gRXhjZXB0aW9uVHlwZQog
ICAgICAgICBtX3N5bmNEYXRhID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBtX3Byb2Nlc3MtPnNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZShtX3VybFNjaGVt
ZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyLCBlcnJvciksIG1fd2ViUGFnZUlE
KTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVSTFNjaGVtZVRhc2tE
aWRDb21wbGV0ZShtX3VybFNjaGVtZUhhbmRsZXItPmlkZW50aWZpZXIoKSwgbV93ZWJQcm9jZXNz
VGFza0lELCBlcnJvciksIG1fd2ViUGFnZUlEKTsKICAgICBtX3VybFNjaGVtZUhhbmRsZXItPnRh
c2tDb21wbGV0ZWQoKnRoaXMpOwogCiAgICAgcmV0dXJuIEV4Y2VwdGlvblR5cGU6Ok5vbmU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKaW5kZXggZWFjMDliZGVj
YTFkZWMwY2IyMTlhYzFkMDMzMDhiMmUyNzIzMDljZS4uYTllMWIwMjdkMzBkNmI1MzhkMWNlOTA1
OTNmYWY0ZDE3NTBhODFjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
VVJMU2NoZW1lVGFzay5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVt
ZVRhc2suaApAQCAtMjcsMTIgKzI3LDE0IEBACiAKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNp
bmNsdWRlICJXZWJQcm9jZXNzUHJveHkuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrUHJv
eHlJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZVJlcXVlc3QuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlUmVzcG9uc2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1No
YXJlZEJ1ZmZlci5oPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogI2luY2x1
ZGUgPHd0Zi9JbnN0YW5jZUNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1
ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTUwLDkgKzUyLDExIEBAIG5hbWVzcGFjZSBX
ZWJLaXQgewogCiBzdHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnM7CiBjbGFzcyBXZWJVUkxT
Y2hlbWVIYW5kbGVyOworY2xhc3MgV2ViVVJMU2NoZW1lVGFzazsKIGNsYXNzIFdlYlBhZ2VQcm94
eTsKIAogdXNpbmcgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciA9IENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImLCBjb25zdCBWZWN0b3I8dWludDhfdD4mKT47Cit1c2luZyBXZWJVUkxTY2hl
bWVUYXNrSWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFzaz47CiAK
IGNsYXNzIFdlYlVSTFNjaGVtZVRhc2sgOiBwdWJsaWMgQVBJOjpPYmplY3RJbXBsPEFQSTo6T2Jq
ZWN0OjpUeXBlOjpVUkxTY2hlbWVUYXNrPiwgcHVibGljIEluc3RhbmNlQ291bnRlZDxXZWJVUkxT
Y2hlbWVUYXNrPiB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoV2ViVVJMU2NoZW1lVGFzayk7
CkBAIC02MSw3ICs2NSw4IEBAIHB1YmxpYzoKIAogICAgIH5XZWJVUkxTY2hlbWVUYXNrKCk7CiAK
LSAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWlu
KCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgV2ViVVJMU2NoZW1lVGFza0lkZW50aWZp
ZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJu
IG1faWRlbnRpZmllcjsgfQorICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgd2Vi
UHJvY2Vzc1Rhc2tJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJu
IG1fd2ViUHJvY2Vzc1Rhc2tJRDsgfQogICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZVBy
b3h5SUQoKSBjb25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3BhZ2VQ
cm94eUlEOyB9CiAgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlEKCkgY29uc3Qg
eyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV93ZWJQYWdlSUQ7IH0KICAgICBX
ZWJQcm9jZXNzUHJveHkqIHByb2Nlc3MoKSB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJl
dHVybiBtX3Byb2Nlc3MuZ2V0KCk7IH0KQEAgLTEwMSw3ICsxMDYsOCBAQCBwcml2YXRlOgogCiAg
ICAgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+IG1fdXJsU2NoZW1lSGFuZGxlcjsKICAgICBSZWZQ
dHI8V2ViUHJvY2Vzc1Byb3h5PiBtX3Byb2Nlc3M7Ci0gICAgdWludDY0X3QgbV9pZGVudGlmaWVy
OworICAgIFdlYlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICBXZWJV
UkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIG1fd2ViUHJvY2Vzc1Rhc2tJRDsKICAgICBXZWJQ
YWdlUHJveHlJZGVudGlmaWVyIG1fcGFnZVByb3h5SUQ7CiAgICAgV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgbV93ZWJQYWdlSUQ7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG1fcmVxdWVz
dCBXVEZfR1VBUkRFRF9CWV9MT0NLKG1fcmVxdWVzdExvY2spOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQv
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzA4MWI4NDNmN2VjMDUyOTY2
MmVmZjMzODg3MWM3MDZjNThhYTk2Yi4uM2ZlYzE3NmJlZjNmMWFkYmI4YzdjZmU4YzA0ZTQwNDM4
YzI5ZGNmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC00NTk2LDYgKzQ1OTYsOCBAQAogCQk1Q0QyODY0RjFFNzIyRjQ0MDA5NEZEQzgg
LyogV0tDb250ZW50UnVsZUxpc3RTdG9yZUludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdLQ29udGVudFJ1bGVMaXN0U3RvcmVJbnRlcm5hbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1Q0QyODY1MDFFNzIyRjQ0MDA5NEZEQzggLyogV0tDb250ZW50
UnVsZUxpc3RTdG9yZVByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V0tDb250ZW50UnVsZUxpc3RTdG9yZVByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNUNENzQ4QjUyM0M4RUIxOTAwOTJBOUI1IC8qIE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdvcmtSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDRDc0OEI1
MjNDOEVCMTkwMDkyQjBDNiAvKiBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNENzQ4QjUyM0M4RUIxOTAw
OTJDMUQ3IC8qIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDRTBDMzY2MjI5RjJEM0QwMDM2OTVGMCAvKiBBUElD
b250ZXh0TWVudUVsZW1lbnRJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEFQSUNvbnRleHRNZW51RWxlbWVudEluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1Q0UwQzM2NzIyOUYyRDNFMDAzNjk1RjAgLyogQVBJQ29udGV4dE1lbnVFbGVt
ZW50SW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElDb250ZXh0TWVu
dUVsZW1lbnRJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDRTBDMzY4MjI5
RjJENEEwMDM2OTVGMCAvKiBXS0NvbnRleHRNZW51RWxlbWVudEluZm8ubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS0NvbnRleHRNZW51RWxlbWVudEluZm8ubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03MDAxLDYgKzcwMDMsOCBAQAogCQkJCTgz
NjAzNDlFMUFDQjM0RDYwMDYyNjU0OSAvKiBXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCAqLywK
IAkJCQlDMDMzN0RENzEyN0E1MUI2MDA4RkY0RjQgLyogV2ViVG91Y2hFdmVudC5jcHAgKi8sCiAJ
CQkJMEY0MDAxMDAyNTI3RDczQzAwRTkxREE3IC8qIFdlYlRvdWNoRXZlbnQuaCAqLywKKwkJCQk1
Q0Q3NDhCNTIzQzhFQjE5MDA5MkMxRDcgLyogV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIu
aCAqLywKKwkJCQk1Q0Q3NDhCNTIzQzhFQjE5MDA5MkIwQzYgLyogV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllci5oICovLAogCQkJCTdDMDY1RjI5MUM4Q0Q5NUYwMEMyRDk1MCAvKiBXZWJV
c2VyQ29udGVudENvbnRyb2xsZXJEYXRhVHlwZXMuY3BwICovLAogCQkJCTdDMDY1RjJBMUM4Q0Q5
NUYwMEMyRDk1MCAvKiBXZWJVc2VyQ29udGVudENvbnRyb2xsZXJEYXRhVHlwZXMuaCAqLywKIAkJ
CQlDMDMzN0REMDEyN0EyOTgwMDA4RkY0RjQgLyogV2ViV2hlZWxFdmVudC5jcHAgKi8sCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVn
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVn
eS5jcHAKaW5kZXggMzUyNTMxMDZjYjFkMzAxMzM5YzJiMzBlODYwMmY2YmYyNGEzZTcyYi4uMDM0
N2ExZTdmNTI5ZWRhMDA2ZGUwN2ZkMDVjYmQ4OWZjZjcxNmMwOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcApAQCAt
NDYyLDcgKzQ2Miw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnJlbW92ZShSZXNvdXJjZUxv
YWRlciogcmVzb3VyY2VMb2FkZXIpCiAgICAgQVNTRVJUKHJlc291cmNlTG9hZGVyKTsKICAgICBM
T0coTmV0d29ya1NjaGVkdWxpbmcsICIoV2ViUHJvY2VzcykgV2ViTG9hZGVyU3RyYXRlZ3k6OnJl
bW92ZSwgdXJsICclcyciLCByZXNvdXJjZUxvYWRlci0+dXJsKCkuc3RyaW5nKCkudXRmOCgpLmRh
dGEoKSk7CiAKLSAgICBpZiAoYXV0byB0YXNrID0gbV91cmxTY2hlbWVUYXNrcy50YWtlKHJlc291
cmNlTG9hZGVyLT5pZGVudGlmaWVyKCkpKSB7CisgICAgaWYgKGF1dG8gdGFzayA9IG1fdXJsU2No
ZW1lVGFza3MudGFrZShtYWtlT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+
KHJlc291cmNlTG9hZGVyLT5pZGVudGlmaWVyKCkpKSkgewogICAgICAgICBBU1NFUlQoIW1faW50
ZXJuYWxseUZhaWxlZFJlc291cmNlTG9hZGVycy5jb250YWlucyhyZXNvdXJjZUxvYWRlcikpOwog
ICAgICAgICB0YXNrLT5zdG9wTG9hZGluZygpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaAppbmRl
eCBjNzk2YWU1MGYxNGMxNmVjMjVlNmUwMTQ5ZDc2NmJmN2QxMWUxODdiLi5mNGY1YWJiZDNlOWIy
MzA1ZThkYzQwYWRiZWFkMzEwMTYyMTVkNzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKQEAgLTI3LDYgKzI3LDcgQEAK
IAogI2luY2x1ZGUgIk5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAi
V2ViUmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVu
dGlmaWVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Mb2FkZXJTdHJhdGVneS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvUmVzb3VyY2VFcnJvci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2Fk
ZXIuaD4KQEAgLTEzNCw3ICsxMzUsNyBAQCBwcml2YXRlOgogICAgIFJ1bkxvb3A6OlRpbWVyPFdl
YkxvYWRlclN0cmF0ZWd5PiBtX2ludGVybmFsbHlGYWlsZWRMb2FkVGltZXI7CiAgICAgCiAgICAg
SGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkZXI+PiBtX3dlYlJl
c291cmNlTG9hZGVyczsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFdlYlVSTFNjaGVtZVRh
c2tQcm94eSo+IG1fdXJsU2NoZW1lVGFza3M7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHkqPiBtX3VybFNjaGVtZVRhc2tz
OwogICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcj4g
bV9waW5nTG9hZENvbXBsZXRpb25IYW5kbGVyczsKICAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcs
IFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcj4gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRs
ZXJzOwogICAgIFZlY3RvcjxGdW5jdGlvbjx2b2lkKGJvb2wpPj4gbV9vbmxpbmVTdGF0ZUNoYW5n
ZUxpc3RlbmVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggMWFiZGY3ZTA0MjQ4OGU2YzVlOTg3NDAzNTRhNWVmZjlhOGViOGY0NS4uOTMwMTdh
ZWI1NWE5ZjZkOTQ3NWQ0OTM5ZmUyNDI1ZWFhNWE1MmE3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTY5MTgsMTYgKzY5MTgsMTYgQEAgdm9p
ZCBXZWJQYWdlOjpzdG9wQWxsVVJMU2NoZW1lVGFza3MoKQogICAgICAgICBoYW5kbGVyLT5zdG9w
QWxsVGFza3MoKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIo
dWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKQordm9pZCBX
ZWJQYWdlOjpyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50
aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKQogewotICAgIFdF
QlBBR0VfUkVMRUFTRV9MT0coUHJvY2VzcywgInJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcjogUmVn
aXN0ZXJlZCBoYW5kbGVyICUiIFBSSXU2NCAiIGZvciB0aGUgJyVzJyBzY2hlbWUiLCBoYW5kbGVy
SWRlbnRpZmllciwgc2NoZW1lLnV0ZjgoKS5kYXRhKCkpOworICAgIFdFQlBBR0VfUkVMRUFTRV9M
T0coUHJvY2VzcywgInJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcjogUmVnaXN0ZXJlZCBoYW5kbGVy
ICUiIFBSSXU2NCAiIGZvciB0aGUgJyVzJyBzY2hlbWUiLCBoYW5kbGVySWRlbnRpZmllci50b1VJ
bnQ2NCgpLCBzY2hlbWUudXRmOCgpLmRhdGEoKSk7CiAgICAgV2ViQ29yZTo6TGVnYWN5U2NoZW1l
UmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNIYW5kbGVkQnlTY2hlbWVIYW5kbGVyKHNjaGVt
ZSk7CiAgICAgV2ViQ29yZTo6TGVnYWN5U2NoZW1lUmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1l
QXNDT1JTRW5hYmxlZChzY2hlbWUpOwogICAgIGF1dG8gc2NoZW1lUmVzdWx0ID0gbV9zY2hlbWVU
b1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5hZGQoc2NoZW1lLCBXZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHk6OmNyZWF0ZSgqdGhpcywgaGFuZGxlcklkZW50aWZpZXIpKTsKICAgICBtX2lkZW50aWZp
ZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5hZGQoaGFuZGxlcklkZW50aWZpZXIsIHNjaGVt
ZVJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNj
aGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBS
ZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViUGFnZTo6
dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lSGFuZGxlcklk
ZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZp
ZXIgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VS
ZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgYXV0byogaGFuZGxlciA9
IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRp
Zmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjkzNiw3ICs2OTM2LDcgQEAgdm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciwgdWkKICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9u
KHRhc2tJZGVudGlmaWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRh
c2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNl
UmVxdWVzdCYmIHJlcXVlc3QpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3Jt
UmVkaXJlY3Rpb24oV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZp
ZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFJlc291
cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkKIHsKICAg
ICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAu
Z2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTQ0LDcg
KzY5NDQsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbgogICAgIGhhbmRsZXItPnRhc2tEaWRQ
ZXJmb3JtUmVkaXJlY3Rpb24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVzcG9uc2UpLCBXVEZN
b3ZlKHJlcXVlc3QpLCBbXSAoUmVzb3VyY2VSZXF1ZXN0JiYpIHt9KTsKIH0KICAgICAKLXZvaWQg
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3Bv
bnNlKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJV
UkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVy
VG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBB
U1NFUlQoaGFuZGxlcik7CkBAIC02OTUyLDcgKzY5NTIsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVp
bnQ2NAogICAgIGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodGFza0lkZW50aWZpZXIs
IHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURh
dGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRh
c2tEaWRSZWNlaXZlRGF0YShXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRl
bnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwg
Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBt
X2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZp
ZXIpOwogICAgIEFTU0VSVChoYW5kbGVyKTsKQEAgLTY5NjAsNyArNjk2MCw3IEBAIHZvaWQgV2Vi
UGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCB1aW50NjRfdCB0CiAgICAgaGFuZGxlci0+dGFza0RpZFJlY2VpdmVEYXRhKHRhc2tJZGVu
dGlmaWVyLCBkYXRhLnNpemUoKSwgZGF0YS5kYXRhKCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVy
bFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJQ
YWdlOjp1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZp
ZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGF1dG8qIGhh
bmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxl
cklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA3ZjY1ZDJiNDgzNTRiODRiMDA1MmI3MGY3NDhl
MmE2NGM5Yjg1ZjY3Li4xYzBlNWE3ZTFhMDk0MDM4NDllODM1NjYyZmIxY2NiMDI0MWMzNDJmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC02MCw2ICs2
MCw3IEBACiAjaW5jbHVkZSAiV2ViQmFja0ZvcndhcmRMaXN0UHJveHkuaCIKICNpbmNsdWRlICJX
ZWJQYWdlTWVzc2FnZXNSZXBsaWVzLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlci5o
IgorI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRl
ICJXZWJVbmRvU3RlcElELmgiCiAjaW5jbHVkZSAiV2ViVXNlckNvbnRlbnRDb250cm9sbGVyLmgi
CiAjaW5jbHVkZSAiV2Vic2l0ZVBvbGljaWVzRGF0YS5oIgpAQCAtMTg3MiwxMyArMTg3MywxMyBA
QCBwcml2YXRlOgogCiAgICAgdm9pZCBmcmFtZUJlY2FtZVJlbW90ZShXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIsIFdlYkNvcmU6Okdsb2JhbEZyYW1lSWRlbnRpZmllciYmIHJlbW90ZUZyYW1lSWRl
bnRpZmllciwgV2ViQ29yZTo6R2xvYmFsV2luZG93SWRlbnRpZmllciYmIHJlbW90ZVdpbmRvd0lk
ZW50aWZpZXIpOwogCi0gICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3Qg
aWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzY2hlbWUpOworICAgIHZvaWQgcmVnaXN0ZXJVUkxT
Y2hlbWVIYW5kbGVyKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcm
IHNjaGVtZSk7CiAKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9u
KHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOwotICAg
IHZvaWQgdXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgIHZvaWQgdXJsU2NoZW1l
VGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKLSAg
ICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYp
OwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVu
dGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24oV2Vi
VVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYm
KTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwor
ICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJVUkxTY2hlbWVIYW5k
bGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2Vp
dmVEYXRhKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJv
eHlJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKKyAgICB2b2lkIHVybFNj
aGVtZVRhc2tEaWRDb21wbGV0ZShXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciwgV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
OwogCiAgICAgdm9pZCBzZXRJc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lv
bihib29sKTsKICAgICB2b2lkIHNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKTsKQEAgLTIz
MDgsNyArMjMwOSw3IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAgIEhhc2hNYXA8U3RyaW5nLCBS
ZWZQdHI8V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Pj4gbV9zY2hlbWVUb1VSTFNjaGVtZUhhbmRs
ZXJQcm94eU1hcDsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHkqPiBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsKKyAgICBIYXNoTWFw
PFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkq
PiBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsKIAogICAgIEhhc2hNYXA8
dWludDY0X3QsIEZ1bmN0aW9uPHZvaWQoYm9vbCBncmFudGVkKT4+IG1fc3RvcmFnZUFjY2Vzc1Jl
c3BvbnNlQ2FsbGJhY2tNYXA7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDBjNTljOTEzMGVhMjViN2JkNjBiNWU4
NDVmZDVlM2U1NWQwY2ZhOTAuLmNhODA0Mzg4NTk2NDAwNjYzZDVkMmIwNWNmZmZkOTM2YTBjMTFl
Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
bWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5tZXNzYWdlcy5pbgpAQCAtNTQ5LDEzICs1NDksMTMgQEAgR2VuZXJhdGVTeW50aGV0aWNFZGl0
aW5nQ29tbWFuZChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5
cGUKIAogICAgIEZyYW1lQmVjYW1lUmVtb3RlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBzdHJ1Y3QgV2ViQ29yZTo6R2xvYmFsRnJhbWVJZGVudGlmaWVyIHJlbW90ZUZyYW1lSWRl
bnRpZmllciwgc3RydWN0IFdlYkNvcmU6Okdsb2JhbFdpbmRvd0lkZW50aWZpZXIgcmVtb3RlV2lu
ZG93SWRlbnRpZmllcikKIAotICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRfdCBp
ZGVudGlmaWVyLCBTdHJpbmcgc2NoZW1lKQorICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcihX
ZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFN0cmluZyBz
Y2hlbWUpCiAKLSAgICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRf
dCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3Nl
ZFJlcXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5
bmMKLSAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVz
dCkKLSAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSByZXNwb25zZSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBJUEM6OlNoYXJlZEJ1
ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWlu
dDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGVycm9yKQorICAgIFVSTFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGly
ZWN0aW9uKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50
aWZpZXIsIFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBh
Y3R1YWxSZXF1ZXN0KSBBc3luYworICAgIFVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24oV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmll
ciwgV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QgcHJvcG9zZWRSZXF1ZXN0KQorICAgIFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9u
c2UoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmll
ciwgV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIFVSTFNjaGVtZVRhc2tE
aWRSZWNlaXZlRGF0YShXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBkYXRhKQorICAgIFVS
TFNjaGVtZVRhc2tEaWRDb21wbGV0ZShXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlm
aWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IpCiAKICAg
ICBTZXRJc1N1c3BlbmRlZChib29sIHN1c3BlbmRlZCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5j
cHAKaW5kZXggMzZlNTcyNTEyMzM3ZDYzMDBjMjJlOGEzMmUxNzE1MTkwNDNiNTAzNy4uMDUxY2Vh
Y2I3ZDdhYjYwYjBkN2IzYTE1Y2JhY2Y4ZjYzNDAzODdhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHkuY3BwCkBAIC00Myw3ICs0Myw3IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogCi1XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OldlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eShXZWJQYWdlJiBwYWdlLCB1aW50NjRfdCBpZGVudGlmaWVyKQorV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoV2ViUGFnZSYgcGFnZSwg
V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaWRlbnRpZmllcikKICAgICA6IG1fd2ViUGFn
ZShwYWdlKQogICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiB7CkBAIC01Niw3ICs1Niw3
IEBAIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6fldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSgp
CiAKIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VM
b2FkZXImIGxvYWRlciwgV2ViRnJhbWUmIHdlYkZyYW1lKQogewotICAgIGF1dG8gcmVzdWx0ID0g
bV90YXNrcy5hZGQobG9hZGVyLmlkZW50aWZpZXIoKSwgV2ViVVJMU2NoZW1lVGFza1Byb3h5Ojpj
cmVhdGUoKnRoaXMsIGxvYWRlciwgd2ViRnJhbWUpKTsKKyAgICBhdXRvIHJlc3VsdCA9IG1fdGFz
a3MuYWRkKG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4obG9hZGVy
LmlkZW50aWZpZXIoKSksIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6Y3JlYXRlKCp0aGlzLCBsb2Fk
ZXIsIHdlYkZyYW1lKSk7CiAgICAgQVNTRVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKIAogICAgIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCkuYWRkVVJMU2NoZW1lVGFz
a1Byb3h5KCpyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKQEAgLTY2LDcgKzY2LDcgQEAgdm9pZCBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayhSZXNvdXJjZUxvYWRlciYgbG9h
ZGVyLCBXZWJGcmFtZSYgd2UKIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3lu
Y2hyb25vdXNseShSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFt
ZSYgd2ViRnJhbWUsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIFJlc291cmNlRXJyb3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRh
dGEpCiB7CiAgICAgZGF0YS5zaHJpbmsoMCk7Ci0gICAgaWYgKCFtX3dlYlBhZ2Uuc2VuZFN5bmMo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxT
Y2hlbWVUYXNrUGFyYW1ldGVycyB7IG1faWRlbnRpZmllciwgbG9hZElkZW50aWZpZXIsIHJlcXVl
c3QsIHdlYkZyYW1lLmluZm8oKSB9KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNo
cm9ub3VzVVJMU2NoZW1lVGFzazo6UmVwbHkocmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKKyAg
ICBpZiAoIW1fd2ViUGFnZS5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3lu
Y2hyb25vdXNVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsgbV9pZGVudGlm
aWVyLCBtYWtlT2JqZWN0SWRlbnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+KGxvYWRJZGVu
dGlmaWVyKSwgcmVxdWVzdCwgd2ViRnJhbWUuaW5mbygpIH0pLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrOjpSZXBseShyZXNwb25zZSwgZXJyb3Is
IGRhdGEpKSkgewogICAgICAgICBlcnJvciA9IGZhaWxlZEN1c3RvbVByb3RvY29sU3luY0xvYWQo
cmVxdWVzdCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC03OCw3ICs3OCw3IEBAIHZvaWQg
V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdG9wQWxsVGFza3MoKQogICAgICAgICBtX3Rhc2tz
LmJlZ2luKCktPnZhbHVlLT5zdG9wTG9hZGluZygpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCB0YXNrSWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
IG5ld1JlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIHRhc2sgPSBtX3Rhc2tz
LmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAtODcsNyArODcsNyBAQCB2
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1
aW50NjRfdCB0YXNrSWRlbnRpZmllcgogICAgIHRhc2stPmRpZFBlcmZvcm1SZWRpcmVjdGlvbihX
VEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCBXVEZNb3ZlKG5ld1JlcXVlc3QpLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGF1
dG8qIHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpA
QCAtOTYsNyArOTYsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJl
Y2VpdmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgYwogICAgIHRhc2stPmRpZFJl
Y2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZpZXIsIHNpemVfdCBz
aXplLCBjb25zdCB1aW50OF90KiBkYXRhKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6
OnRhc2tEaWRSZWNlaXZlRGF0YShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJ
ZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCogZGF0YSkKIHsKICAgICBhdXRv
KiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAg
LTEwNSw3ICsxMDUsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJl
Y2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXplXwogICAgIHRhc2stPmRpZFJl
Y2VpdmVEYXRhKHNpemUsIGRhdGEpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkQ29t
cGxldGUoV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKGF1dG8gdGFzayA9IHJlbW92ZVRh
c2sodGFza0lkZW50aWZpZXIpKQogICAgICAgICB0YXNrLT5kaWRDb21wbGV0ZShlcnJvcik7CkBA
IC0xMTcsNyArMTE3LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRT
dG9wTG9hZGluZyhXZWJVUkxTY2hlbWVUYXNrUHJveHkmIHRhc2spCiAgICAgcmVtb3ZlVGFzayh0
YXNrLmlkZW50aWZpZXIoKSk7CiB9CiAKLVJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayh1aW50NjRfdCBpZGVudGlmaWVyKQor
UmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpy
ZW1vdmVUYXNrKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgaWRlbnRpZmllcikKIHsK
ICAgICBhdXRvIHRhc2sgPSBtX3Rhc2tzLnRha2UoaWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNr
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHkuaAppbmRleCAwNDJkNzljNmU2Zjg0NWRjMWIwNmIyY2EzMzgw
MDcyZDQ4MGJhNmYwLi45ZDFjOTliYTk1ZWZjZjVmZDE0ZjU2ZjRhMmM0ZjhjYTkwYzMyN2NhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHkuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAi
V2ViVVJMU2NoZW1lVGFza1Byb3h5LmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNDMsNyArNDQsNyBAQCB0eXBlZGVmIHVpbnQ2NF90
IFJlc291cmNlTG9hZElkZW50aWZpZXI7CiAKIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eSA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gewogcHVibGlj
OgotICAgIHN0YXRpYyBSZWY8V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5PiBjcmVhdGUoV2ViUGFn
ZSYgcGFnZSwgdWludDY0X3QgaWRlbnRpZmllcikKKyAgICBzdGF0aWMgUmVmPFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eT4gY3JlYXRlKFdlYlBhZ2UmIHBhZ2UsIFdlYlVSTFNjaGVtZUhhbmRsZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgewogICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkocGFnZSwgaWRlbnRpZmllcikpOwogICAgIH0KQEAg
LTU0LDI0ICs1NSwyNCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGxvYWRTeW5jaHJvbm91c2x5KFJl
c291cmNlTG9hZElkZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJlc291cmNlRXJy
b3ImLCBWZWN0b3I8dWludDhfdD4mKTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25z
dCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgV2Vi
UGFnZSYgcGFnZSgpIHsgcmV0dXJuIG1fd2ViUGFnZTsgfQogCi0gICAgdm9pZCB0YXNrRGlkUGVy
Zm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB0YXNrRGlk
UmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3Qg
dGFza0lkZW50aWZpZXIsIHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7Ci0gICAgdm9pZCB0
YXNrRGlkQ29tcGxldGUodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViVVJM
U2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOworICAgIHZvaWQgdGFza0Rp
ZFJlY2VpdmVSZXNwb25zZShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCB0YXNr
RGlkUmVjZWl2ZURhdGEoV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRp
Zmllciwgc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsKKyAgICB2b2lkIHRhc2tEaWRDb21w
bGV0ZShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAgICAgdm9pZCB0YXNrRGlkU3RvcExvYWRpbmco
V2ViVVJMU2NoZW1lVGFza1Byb3h5Jik7CiAKIHByaXZhdGU6Ci0gICAgV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5KFdlYlBhZ2UmLCB1aW50NjRfdCBpZGVudGlmaWVyKTsKKyAgICBXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHkoV2ViUGFnZSYsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyKTsK
IAotICAgIFJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2sodWludDY0X3Qg
aWRlbnRpZmllcik7CisgICAgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFz
ayhXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyKTsKIAogICAgIFdlYlBhZ2UmIG1fd2Vi
UGFnZTsKLSAgICB1aW50NjRfdCBtX2lkZW50aWZpZXIgeyAwIH07CisgICAgV2ViVVJMU2NoZW1l
SGFuZGxlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwg
UmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4+IG1fdGFza3M7CisgICAgSGFzaE1hcDxXZWJV
UkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLCBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5
Pj4gbV90YXNrczsKIH07IC8vIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCmluZGV4IDc1Nzk5YTBjNjVkMGNk
YWZkZTZmMjY1YjFjNTQ3NTZiODRhMjA5ZDkuLjAyNGVjZjE2YmIwOGE3MGRhNzFlMWNkMDQ1ZmI4
NWY3Mjk0YTg4NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcApAQCAtMzksOCArMzksOCBAQAogI2lu
Y2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXIuaD4KICNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KIAotI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0df
U1RBTkRBUkRfVEVNUExBVEUgIltzY2hlbWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHRhc2tJRD0lbHVdIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eTo6IgotI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0df
U1RBTkRBUkRfUEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBwYWdl
SURGcm9tV2ViRnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIG1f
aWRlbnRpZmllcgorI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RB
TkRBUkRfVEVNUExBVEUgIltzY2hlbWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIg
UFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHRhc2tJRD0lIiBQUkl1NjQgIl0gV2ViVVJM
U2NoZW1lVGFza1Byb3h5OjoiCisjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNF
X0xPR19TVEFOREFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCku
dG9VSW50NjQoKSwgcGFnZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBmcmFtZUlERnJvbVdlYkZy
YW1lKG1fZnJhbWUpLCBtX2lkZW50aWZpZXIudG9VSW50NjQoKQogI2RlZmluZSBXRUJVUkxTQ0hF
TUVUQVNLUFJPWFlfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssIFdF
QlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdF
QlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19f
VkFfQVJHU19fKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKQEAgLTY5LDcgKzY5LDcgQEAgV2ViVVJM
U2NoZW1lVGFza1Byb3h5OjpXZWJVUkxTY2hlbWVUYXNrUHJveHkoV2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5JiBoYW5kbGVyLAogICAgICwgbV9jb3JlTG9hZGVyKCZsb2FkZXIpCiAgICAgLCBtX2Zy
YW1lKCZmcmFtZSkKICAgICAsIG1fcmVxdWVzdChsb2FkZXIucmVxdWVzdCgpKQotICAgICwgbV9p
ZGVudGlmaWVyKGxvYWRlci5pZGVudGlmaWVyKCkpCisgICAgLCBtX2lkZW50aWZpZXIobWFrZU9i
amVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pihsb2FkZXIuaWRlbnRpZmllcigp
KSkKIHsKIH0KIApAQCAtNzgsMTQgKzc4LDE0IEBAIHZvaWQgV2ViVVJMU2NoZW1lVGFza1Byb3h5
OjpzdGFydExvYWRpbmcoKQogICAgIEFTU0VSVChtX2NvcmVMb2FkZXIpOwogICAgIEFTU0VSVCht
X2ZyYW1lKTsKICAgICBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0coInN0YXJ0TG9h
ZGluZyIpOwotICAgIG1fdXJsU2NoZW1lSGFuZGxlci5wYWdlKCkuc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpTdGFydFVSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgeyBt
X3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIo
KSwgbV9yZXF1ZXN0LCBtX2ZyYW1lLT5pbmZvKCkgfSkpOworICAgIG1fdXJsU2NoZW1lSGFuZGxl
ci5wYWdlKCkuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTdGFydFVSTFNjaGVtZVRhc2so
VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgeyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigp
LCBtX2lkZW50aWZpZXIsIG1fcmVxdWVzdCwgbV9mcmFtZS0+aW5mbygpIH0pKTsKIH0KIAogdm9p
ZCBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OnN0b3BMb2FkaW5nKCkKIHsKICAgICBBU1NFUlQobV9j
b3JlTG9hZGVyKTsKICAgICBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0coInN0b3BM
b2FkaW5nIik7Ci0gICAgbV91cmxTY2hlbWVIYW5kbGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlN0b3BVUkxTY2hlbWVUYXNrKG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlm
aWVyKCksIG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpKSk7CisgICAgbV91cmxTY2hlbWVIYW5k
bGVyLnBhZ2UoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlN0b3BVUkxTY2hlbWVUYXNr
KG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIG1faWRlbnRpZmllcikpOwogICAgIG1f
Y29yZUxvYWRlciA9IG51bGxwdHI7CiAgICAgbV9mcmFtZSA9IG51bGxwdHI7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94
eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1By
b3h5LmgKaW5kZXggYjVlMzM0ZGZjMjMzNjQ4ZWM1N2U4ZjYxNjNkYzE1ZmFiNTZmNmM1Yy4uZGRm
MjNmYzc5ZTdhZWIyOTQ5NjZhODhhNzQ5Y2RhOWVlNjZmYjhlNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmgK
QEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZVJlcXVl
c3QuaD4KICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgpAQCAtNTcsNyArNTgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShzaXpl
X3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwogICAgIHZvaWQgZGlkQ29tcGxldGUoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYpOwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKCkg
Y29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5
SWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAK
IHByaXZhdGU6CiAgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5KFdlYlVSTFNjaGVtZUhhbmRsZXJQ
cm94eSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVyJiwgV2ViRnJhbWUmKTsKQEAgLTcwLDcgKzcx
LDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+IG1fY29y
ZUxvYWRlcjsKICAgICBSZWZQdHI8V2ViRnJhbWU+IG1fZnJhbWU7CiAgICAgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0IG1fcmVxdWVzdDsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllcjsK
KyAgICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBi
b29sIG1fd2FpdGluZ0ZvckNvbXBsZXRpb25IYW5kbGVyIHsgZmFsc2UgfTsKICAgICBEZXF1ZTxG
dW5jdGlvbjx2b2lkKCk+PiBtX3F1ZXVlZFRhc2tzOwogfTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBmYTdjZDFjMDRjNjVjOTYwOWViNjhmYjg3
OTdhOWMwNjYxNWQzYzFlLi5kZjlkM2Q4NmMwOTljMDM5NTNiMDAxMDllNGUzM2FkOWY0NDA2ZjNj
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTQgQEAKKzIwMjEtMDktMTUgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0Bn
bm9tZS5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFVSTCBzY2hlbWUg
aGFuZGxlcnMgYW5kIHRhc2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0V2ViS2l0V2Vi
Q29udGV4dC5jcHA6CisgICAgICAgIChjcmVhdGVUZXN0V2ViVmlld1dpdGhXZWJDb250ZXh0KToK
KyAgICAgICAgKHRlc3RXZWJDb250ZXh0VVJJU2NoZW1lKToKKwogMjAyMS0wOS0xNCAgRG9uIE9s
bXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIFJlbmFtZSBSRVNPVVJD
RV9MT0FEX1NUQVRJU1RJQ1MgdG8gSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTgpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRX
ZWJDb250ZXh0LmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0R0xpYi9UZXN0
V2ViS2l0V2ViQ29udGV4dC5jcHAKaW5kZXggNTMyNTQ4YjFlNGUyYTBhZjVjOWEyZWUxYzMyMDZi
Y2JmMjg4ZjQzYS4uNWU3ODgyMGZjYTlkOTVkOGZiYzhkMWI2MjIzNWY2MTFkNmIzMGQyMiAxMDA2
NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRHTGliL1Rlc3RXZWJLaXRX
ZWJDb250ZXh0LmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdEdMaWIv
VGVzdFdlYktpdFdlYkNvbnRleHQuY3BwCkBAIC0xMTMsNyArMTEzLDggQEAgcHVibGljOgogICAg
ICAgICB0ZXN0LT5tX3VyaVNjaGVtZVJlcXVlc3QgPSByZXF1ZXN0OwogICAgICAgICB0ZXN0LT5h
c3NlcnRPYmplY3RJc0RlbGV0ZWRXaGVuVGVzdEZpbmlzaGVzKEdfT0JKRUNUKHJlcXVlc3QpKTsK
IAotICAgICAgICBnX2Fzc2VydF90cnVlKHdlYmtpdF91cmlfc2NoZW1lX3JlcXVlc3RfZ2V0X3dl
Yl92aWV3KHJlcXVlc3QpID09IHRlc3QtPm1fd2ViVmlldyk7CisgICAgICAgIGlmICh0ZXN0LT5t
X3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmlldykKKyAgICAgICAgICAgIGdf
YXNzZXJ0X3RydWUod2Via2l0X3VyaV9zY2hlbWVfcmVxdWVzdF9nZXRfd2ViX3ZpZXcocmVxdWVz
dCkgPT0gdGVzdC0+bV93ZWJWaWV3KTsKIAogICAgICAgICBjb25zdCBjaGFyKiBzY2hlbWUgPSB3
ZWJraXRfdXJpX3NjaGVtZV9yZXF1ZXN0X2dldF9zY2hlbWUocmVxdWVzdCk7CiAgICAgICAgIGdf
YXNzZXJ0X25vbm51bGwoc2NoZW1lKTsKQEAgLTE2NCw2ICsxNjUsOCBAQCBwdWJsaWM6CiAKICAg
ICBHUmVmUHRyPFdlYktpdFVSSVNjaGVtZVJlcXVlc3Q+IG1fdXJpU2NoZW1lUmVxdWVzdDsKICAg
ICBIYXNoTWFwPFN0cmluZywgVVJJU2NoZW1lSGFuZGxlcj4gbV9oYW5kbGVyc01hcDsKKyAgICBi
b29sIG1fdXJpU2NoZW1lUmVxdWVzdENhbGxiYWNrVXNlc1Rlc3RXZWJWaWV3IHsgdHJ1ZSB9Owor
ICAgIGludCBtX2xvYWRDb3VudGVyIHsgMCB9OwogfTsKIAogU3RyaW5nIGdlbmVyYXRlSFRNTENv
bnRlbnQodW5zaWduZWQgY29udGVudExlbmd0aCkKQEAgLTE5Myw2ICsxOTYsMjEgQEAgU3RyaW5n
IGdlbmVyYXRlSFRNTENvbnRlbnQodW5zaWduZWQgY29udGVudExlbmd0aCkKICAgICByZXR1cm4g
YnVpbGRlci50b1N0cmluZygpOwogfQogCitzdGF0aWMgR1JlZlB0cjxXZWJLaXRXZWJWaWV3PiBj
cmVhdGVUZXN0V2ViVmlld1dpdGhXZWJDb250ZXh0KFdlYktpdFdlYkNvbnRleHQqIGNvbnRleHQp
Cit7CisgICAgV2ViS2l0V2ViVmlldyogdmlldyA9IFdFQktJVF9XRUJfVklFVyhnX29iamVjdF9u
ZXcoV0VCS0lUX1RZUEVfV0VCX1ZJRVcsCisjaWYgUExBVEZPUk0oV1BFKQorICAgICAgICAiYmFj
a2VuZCIsIFRlc3Q6OmNyZWF0ZVdlYlZpZXdCYWNrZW5kKCksCisjZW5kaWYKKyAgICAgICAgIndl
Yi1jb250ZXh0IiwgY29udGV4dCwKKyAgICAgICAgbnVsbHB0cikpOworCisjaWYgUExBVEZPUk0o
R1RLKQorICAgIGdfb2JqZWN0X3JlZl9zaW5rKHZpZXcpOworI2VuZGlmCisgICAgcmV0dXJuIGFk
b3B0R1JlZih2aWV3KTsKK30KKwogc3RhdGljIHZvaWQgdGVzdFdlYkNvbnRleHRVUklTY2hlbWUo
VVJJU2NoZW1lVGVzdCogdGVzdCwgZ2NvbnN0cG9pbnRlcikKIHsKICAgICB0ZXN0LT5yZWdpc3Rl
clVSSVNjaGVtZUhhbmRsZXIoImZvbyIsIGtCYXJIVE1MLCBzdHJsZW4oa0JhckhUTUwpLCAidGV4
dC9odG1sIik7CkBAIC0yNzgsNiArMjk2LDQxIEBAIHN0YXRpYyB2b2lkIHRlc3RXZWJDb250ZXh0
VVJJU2NoZW1lKFVSSVNjaGVtZVRlc3QqIHRlc3QsIGdjb25zdHBvaW50ZXIpCiAgICAgZ19hc3Nl
cnRfdHJ1ZSh0ZXN0LT5tX2xvYWRFdmVudHMuY29udGFpbnMoTG9hZFRyYWNraW5nVGVzdDo6UHJv
dmlzaW9uYWxMb2FkRmFpbGVkKSk7CiAgICAgZ19hc3NlcnRfdHJ1ZSh0ZXN0LT5tX2xvYWRGYWls
ZWQpOwogICAgIGdfYXNzZXJ0X2Vycm9yKHRlc3QtPm1fZXJyb3IuZ2V0KCksIEdfSU9fRVJST1Is
IEdfSU9fRVJST1JfQ0xPU0VEKTsKKworICAgIC8vIFRvcnR1cmUgdGVzdCB0aW1lOiBtYWtlIHN1
cmUgaXQgc3RpbGwgd29ya3MgaWYgd2UgaXNzdWUgYSBidW5jaCBvZiBkaWZmZXJlbnQgcmVxdWVz
dHMgYWxsIGF0CisgICAgLy8gb25jZS4gRWFjaCByZXF1ZXN0IHNob3VsZCBmaW5pc2ggYW5kIHJl
dHVybiBleGFjdGx5IHRoZSBzYW1lIGRhdGEuCisgICAgaW50IG51bUl0ZXJhdGlvbnMgPSA1MDsK
KyAgICBHUmVmUHRyPFdlYktpdFdlYlZpZXc+IHZpZXdzW251bUl0ZXJhdGlvbnNdOworICAgIHRl
c3QtPm1fdXJpU2NoZW1lUmVxdWVzdENhbGxiYWNrVXNlc1Rlc3RXZWJWaWV3ID0gZmFsc2U7Cisg
ICAgZm9yIChpbnQgaSA9IDA7IGkgPCBudW1JdGVyYXRpb25zOyBpKyspIHsKKyAgICAgICAgdmll
d3NbaV0gPSBjcmVhdGVUZXN0V2ViVmlld1dpdGhXZWJDb250ZXh0KHRlc3QtPm1fd2ViQ29udGV4
dC5nZXQoKSk7CisgICAgICAgIHRlc3QtPmFzc2VydE9iamVjdElzRGVsZXRlZFdoZW5UZXN0Rmlu
aXNoZXMoR19PQkpFQ1Qodmlld3NbaV0uZ2V0KCkpKTsKKyAgICAgICAgd2Via2l0X3dlYl92aWV3
X2xvYWRfdXJpKHZpZXdzW2ldLmdldCgpLCAiZm9vOmJsYW5rIik7CisgICAgICAgIGdfc2lnbmFs
X2Nvbm5lY3Qodmlld3NbaV0uZ2V0KCksICJsb2FkLWNoYW5nZWQiLCBHX0NBTExCQUNLKCtbXSAo
V2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViS2l0TG9hZEV2ZW50IGxvYWRFdmVudCwgZ3BvaW50
ZXIgdXNlckRhdGEpIHsKKyAgICAgICAgICAgIGF1dG8qIHRlc3QgPSBzdGF0aWNfY2FzdDxVUklT
Y2hlbWVUZXN0Kj4odXNlckRhdGEpOworICAgICAgICAgICAgaWYgKGxvYWRFdmVudCAhPSBXRUJL
SVRfTE9BRF9GSU5JU0hFRCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB0
ZXN0LT5tX2xvYWRDb3VudGVyLS07CisgICAgICAgICAgICBpZiAoIXRlc3QtPm1fbG9hZENvdW50
ZXIpCisgICAgICAgICAgICAgICAgZ19tYWluX2xvb3BfcXVpdCh0ZXN0LT5tX21haW5Mb29wKTsK
KyAgICAgICAgfSksIHRlc3QpOworICAgIH0KKyAgICB0ZXN0LT5tX2xvYWRDb3VudGVyID0gbnVt
SXRlcmF0aW9uczsKKyAgICBnX21haW5fbG9vcF9ydW4odGVzdC0+bV9tYWluTG9vcCk7CisKKyAg
ICBmb3IgKGludCBpID0gMDsgaSA8IG51bUl0ZXJhdGlvbnM7IGkrKykgeworICAgICAgICBXZWJL
aXRXZWJSZXNvdXJjZSogcmVzb3VyY2UgPSB3ZWJraXRfd2ViX3ZpZXdfZ2V0X21haW5fcmVzb3Vy
Y2Uodmlld3NbaV0uZ2V0KCkpOworICAgICAgICBnX2Fzc2VydF9ub25udWxsKHJlc291cmNlKTsK
KyAgICAgICAgd2Via2l0X3dlYl9yZXNvdXJjZV9nZXRfZGF0YShyZXNvdXJjZSwgbnVsbHB0ciwg
K1tdIChHT2JqZWN0KiBvYmplY3QsIEdBc3luY1Jlc3VsdCogcmVzdWx0LCBncG9pbnRlciB1c2Vy
RGF0YSkgeworICAgICAgICAgICAgYXV0byogdGVzdCA9IHN0YXRpY19jYXN0PFVSSVNjaGVtZVRl
c3QqPih1c2VyRGF0YSk7CisgICAgICAgICAgICBnc2l6ZSBkYXRhU2l6ZTsKKyAgICAgICAgICAg
IHVuc2lnbmVkIGNoYXIqIGRhdGEgPSB3ZWJraXRfd2ViX3Jlc291cmNlX2dldF9kYXRhX2Zpbmlz
aChXRUJLSVRfV0VCX1JFU09VUkNFKG9iamVjdCksIHJlc3VsdCwgJmRhdGFTaXplLCBudWxscHRy
KTsKKyAgICAgICAgICAgIGdfYXNzZXJ0X2NtcGludChzdHJuY21wKHJlaW50ZXJwcmV0X2Nhc3Q8
Y2hhcio+KGRhdGEpLCBrQmFySFRNTCwgZGF0YVNpemUpLCA9PSwgMCk7CisgICAgICAgICAgICBn
X21haW5fbG9vcF9xdWl0KHRlc3QtPm1fbWFpbkxvb3ApOworICAgICAgICB9LCB0ZXN0KTsKKyAg
ICAgICAgZ19tYWluX2xvb3BfcnVuKHRlc3QtPm1fbWFpbkxvb3ApOworICAgIH0KKyAgICB0ZXN0
LT5tX3VyaVNjaGVtZVJlcXVlc3RDYWxsYmFja1VzZXNUZXN0V2ViVmlldyA9IHRydWU7CiB9CiAK
ICNpZiBQTEFURk9STShHVEspCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438293</attachid>
            <date>2021-09-15 14:48:49 -0700</date>
            <delta_ts>2021-09-16 13:39:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210915164847.patch</filename>
            <type>text/plain</type>
            <size>49777</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGY2YzA3ZGE1ODRmNWY3NWNk
M2RjNmI0MDIwMjgwMjkxNzE1MDMzMjguLmI1NzkxYWEwZjE1OTYwNzFkMTExNDRjNzQ2NTlmZjVl
ZWY0YjRlOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzkgQEAKKzIwMjEtMDktMTUgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElk
ZW50aWZpZXIgZm9yIFVSTCBzY2hlbWUgaGFuZGxlcnMgYW5kIHRhc2tzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzgzMTUyODAxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFRoaXMgY29tbWl0IGNvbnRhaW5zIG5vIGJlaGF2aW9yIGNoYW5nZXMuIEl0
IGp1c3QgcmVwbGFjZXMgdWludDY0X3Qgd2l0aAorICAgICAgICBXZWJVUkxTY2hlbWVIYW5kbGVy
SWRlbnRpZmllciBhbmQgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci4gTW9zdCBvZiB0
aGUgdXNlcyBvZgorICAgICAgICBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIGluIHRo
ZSBVSSBwcm9jZXNzIGFyZSBhY3R1YWxseSBpbmNvcnJlY3QsIGJlY2F1c2UgdGhlIFVJCisgICAg
ICAgIHByb2Nlc3MgY29kZSBhc3N1bWVzIHRoZSBpZGVudGlmaWVycyBhcmUgdW5pcXVlIGluIHRo
ZSBVSSBwcm9jZXNzLCBidXQgdGhlCisgICAgICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgaXMgb25seSB1bmlxdWUgd2l0aGluIGEgcGFydGljdWxhciB3ZWIgcHJvY2Vzcy4gVGhp
cyB3aWxsCisgICAgICAgIG5lZWQgdG8gYmUgZml4ZWQgaW4gYSBzdWJzZXF1ZW50IGNvbW1pdC4K
KworICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAodHlwZXNf
dGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCk6CisgICAgICAgICogU2hhcmVkL1VSTFNj
aGVtZVRhc2tQYXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6VVJMU2NoZW1lVGFza1Bh
cmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0
ZXJzLmg6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3Jl
YXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogU2hhcmVkL1dlYlVSTFNjaGVtZUhhbmRsZXJJ
ZGVudGlmaWVyLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRh
c2tQYXJhbWV0ZXJzLmguCisgICAgICAgICogU2hhcmVkL1dlYlVSTFNjaGVtZVRhc2tQcm94eUlk
ZW50aWZpZXIuaDogQ29waWVkIGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFz
a1BhcmFtZXRlcnMuaC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViQ29u
dGV4dC5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6V2ViVVJMU2NoZW1lSGFu
ZGxlcik6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0YXJ0VGFzayk6
CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnByb2Nlc3NGb3JUYXNrSWRl
bnRpZmllciBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0
b3BBbGxUYXNrc0ZvclBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVy
OjpzdG9wVGFzayk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnJlbW92
ZVRhc2tGcm9tUGFnZU1hcCk6CisgICAgICAgIChXZWJLaXQ6OmdlbmVyYXRlV2ViVVJMU2NoZW1l
SGFuZGxlcklkZW50aWZpZXIpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxT
Y2hlbWVIYW5kbGVyLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6Omlk
ZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFzazo6V2ViVVJMU2NoZW1lVGFzayk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVVJMU2NoZW1lVGFzazo6aWRlbnRpZmllciBjb25zdCk6CisgICAgICAgICogV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3Jr
L1dlYkxvYWRlclN0cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRl
Z3k6OnJlbW92ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0
ZWd5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlOjpyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJl
c3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2Vp
dmVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZENvbXBs
ZXRlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSk6
CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6c3RhcnROZXdUYXNr
KToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hy
b25vdXNseSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFz
a0RpZFBlcmZvcm1SZWRpcmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdl
YktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkQ29tcGxldGUpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnJlbW92ZVRhc2spOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpjcmVhdGUpOgorICAgICAgICAo
V2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmlkZW50aWZpZXIgY29uc3QpOgorICAg
ICAgICAoKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lVGFza1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5
OjpXZWJVUkxTY2hlbWVUYXNrUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVU
YXNrUHJveHk6OnN0YXJ0TG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRh
c2tQcm94eTo6c3RvcExvYWRpbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJV
UkxTY2hlbWVUYXNrUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1By
b3h5OjppZGVudGlmaWVyIGNvbnN0KToKKwogMjAyMS0wOS0xNSAgVGltIEhvcnRvbiAgPHRpbW90
aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgdGhlICJSZXBsYWNlIFdlYktp
dEFkZGl0aW9ucyBpbiBGcmFtZXdvcmsgSGVhZGVycyIgYnVpbGQgcGhhc2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkgYi9Tb3VyY2UvV2ViS2l0
L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CmluZGV4IDNkMTE2ZGJjNmJjYWI0NzU1NGVmYzI0
NGMyNzFiMWJjZWEzZjQxZjMuLmMzYTAzYjg0NzY5MWZkM2M0YjM5ZDI0OGJlM2JkMDQ1YmUzMzM5
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkK
KysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQpAQCAtMzUzLDYg
KzM1Myw4IEBAIGRlZiB0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKCk6CiAg
ICAgICAgICdXZWJLaXQ6OlRyYW5zYWN0aW9uSUQnLAogICAgICAgICAnV2ViS2l0OjpVc2VyQ29u
dGVudENvbnRyb2xsZXJJZGVudGlmaWVyJywKICAgICAgICAgJ1dlYktpdDo6V2ViUGFnZVByb3h5
SWRlbnRpZmllcicsCisgICAgICAgICdXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlm
aWVyJywKKyAgICAgICAgJ1dlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllcics
CiAgICAgICAgICdXZWJLaXQ6OlhSRGV2aWNlSWRlbnRpZmllcicsCiAgICAgXSkKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCmluZGV4IGQ1
Y2EzYmJmZTA4MGJlN2U4NzAyYzUyMjU1Yjk1YjliOGViOTllYjYuLmE4ZTQzMGMyYzk3Yzk4Njdl
ZDhjNTdhMDdjYmNiZDFhNzFlN2M3ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9V
UkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAKQEAgLTQ3LDEyICs0NywxMiBAQCB2b2lkIFVSTFNj
aGVtZVRhc2tQYXJhbWV0ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAog
CiBzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxTY2hlbWVUYXNrUGFy
YW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlcikKIHsKLSAgICBzdGQ6Om9wdGlv
bmFsPHVpbnQ2NF90PiBoYW5kbGVySWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyPiBoYW5kbGVySWRlbnRpZmllcjsKICAgICBkZWNvZGVy
ID4+IGhhbmRsZXJJZGVudGlmaWVyOwogICAgIGlmICghaGFuZGxlcklkZW50aWZpZXIpCiAgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAgICAgCi0gICAgc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4gdGFza0lkZW50aWZpZXI7CisgICAgc3RkOjpvcHRpb25hbDxXZWJVUkxTY2hlbWVUYXNrUHJv
eHlJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcjsKICAgICBkZWNvZGVyID4+IHRhc2tJZGVudGlm
aWVyOwogICAgIGlmICghdGFza0lkZW50aWZpZXIpCiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1l
dGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaApp
bmRleCA2NzgyMzk2YjBmOWQwOWIzYmVkMmVmNDliY2JkNWNjOTUzYzZkNTk1Li5lNGQyYTAwZjI1
Y2UyZGY3NGUwZTQ4MzE4MTMzMWZhMzM2Njk0ZmM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKQEAgLTI2LDYgKzI2LDggQEAKICNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSAiRnJhbWVJbmZvRGF0YS5oIgorI2luY2x1ZGUgIldlYlVSTFNjaGVt
ZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAKIG5hbWVz
cGFjZSBJUEMgewpAQCAtMzYsOCArMzgsOCBAQCBjbGFzcyBEZWNvZGVyOwogbmFtZXNwYWNlIFdl
YktpdCB7CiAKIHN0cnVjdCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7Ci0gICAgdWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIgeyAwIH07Ci0gICAgdWludDY0X3QgdGFza0lkZW50aWZpZXIgeyAw
IH07CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXI7
CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcjsKICAg
ICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdDsKICAgICBGcmFtZUluZm9EYXRhIGZy
YW1lSW5mbzsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VD
cmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMuaAppbmRleCA5OGRmNDZjZmE0YTIxNGQ3ODEwMTc0M2JiM2U4ZWEwMDgzZjQz
Mzg0Li40YTA1ZDYwYjJhY2UxMjI0MDEzNDhiYmE5YWExZGExNzQ2Yjg5MjQwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysrIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0zNCw2
ICszNCw3IEBACiAjaW5jbHVkZSAiV2ViUGFnZUdyb3VwRGF0YS5oIgogI2luY2x1ZGUgIldlYlBh
Z2VQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJlbmNlc1N0b3JlLmgiCisj
aW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlIDxXZWJD
b3JlL0FjdGl2aXR5U3RhdGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0NvbG9yLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9EZXN0aW5hdGlvbkNvbG9yU3BhY2UuaD4KQEAgLTIwMSw3ICsyMDIsNyBAQCBz
dHJ1Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIG92ZXJyaWRlQ29u
dGVudFNlY3VyaXR5UG9saWN5OwogICAgIHN0ZDo6b3B0aW9uYWw8ZG91YmxlPiBjcHVMaW1pdDsK
IAotICAgIEhhc2hNYXA8U3RyaW5nLCB1aW50NjRfdD4gdXJsU2NoZW1lSGFuZGxlcnM7CisgICAg
SGFzaE1hcDxTdHJpbmcsIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyPiB1cmxTY2hlbWVI
YW5kbGVyczsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzV2l0aExlZ2FjeUN1c3RvbVBy
b3RvY29sSGFuZGxlcnM7CiAKICNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmll
ci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xYjJkYWU4ODk1YWFmNmVkMTVkMWY1MTE5NDQyNjU1ZWQ1N2QyMGE1Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1lSGFuZGxl
cklkZW50aWZpZXIuaApAQCAtMCwwICsxLDM2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIx
IFJlZCBIYXQgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9P
YmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBXZWJVUkxT
Y2hlbWVIYW5kbGVyOworCit1c2luZyBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciA9IE9i
amVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lSGFuZGxlcj47CisKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi43ZGM3MzcwY2U5M2IxZDBmZjg5NjVmYzNlNTY5YjYxYzYyYTU5MjE3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgUmVk
IEhhdCBJbmMuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09iamVj
dElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eTsKKwordXNpbmcgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciA9IE9i
amVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PjsKKworfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViQ29udGV4dC5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcAppbmRl
eCAxYmM1MWRkMWVkM2IxMTg1ZWQ3MjY1NTU5YmIxZDNhZWQ5NzkwMjZkLi4yMTQzODUyYTcxNmY1
YTdmMjZiYzIzNzM0OTQ5NTgwMDEwNGE5MGI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcApAQCAtMTk0LDcgKzE5NCw3
IEBAIHByaXZhdGU6CiAgICAgV2ViS2l0VVJJU2NoZW1lUmVxdWVzdENhbGxiYWNrIG1fY2FsbGJh
Y2sgeyBudWxscHRyIH07CiAgICAgdm9pZCogbV91c2VyRGF0YSB7IG51bGxwdHIgfTsKICAgICBH
RGVzdHJveU5vdGlmeSBtX2Rlc3Ryb3lOb3RpZnkgeyBudWxscHRyIH07Ci0gICAgSGFzaE1hcDx1
aW50NjRfdCwgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Pj4gbV9yZXF1ZXN0czsKKyAg
ICBIYXNoTWFwPFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIEdSZWZQdHI8V2ViS2l0
VVJJU2NoZW1lUmVxdWVzdD4+IG1fcmVxdWVzdHM7CiB9OwogCiB0eXBlZGVmIEhhc2hNYXA8U3Ry
aW5nLCBSZWZQdHI8V2ViS2l0VVJJU2NoZW1lSGFuZGxlcj4gPiBVUklTY2hlbWVIYW5kbGVyTWFw
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggZDlmMzg1NWM2
ZjQ4ZmEyZmM1YzhhNzBkMTA1YWFhZjVmZmQyNmM5Ny4uNTg4MzE2ODVjMTVkMDRiMDRiOTUxZmI0
NzczZmUzYTJlNzE2ZGE5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCkBAIC05OTc5LDcgKzk5NzksNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c3RhcnRVUkxTY2hl
bWVUYXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZQogICAgIGl0
ZXJhdG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdURk1v
dmUocGFyYW1ldGVycyksIG51bGxwdHIpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6c3RvcFVS
TFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyKQordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKFdlYlVSTFNjaGVt
ZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJv
eHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9j
ZXNzLCBkZWNsdHlwZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6aXNWYWxpZEtl
eShoYW5kbGVySWRlbnRpZmllcikpOwogICAgIGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVtZUhh
bmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBmNDQxNzE0NDMxYTQxNGZiNTM5NWY2NDFiYmY4
ZWRlOGQzNTQ2YTFiLi5kNGNhMGE3YWMyODBiNjE3YzFlZDVhNDlkNDJkNGJmZmQ4NTlkZjNkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtNzcsNiArNzcsOCBAQAog
I2luY2x1ZGUgIldlYlBheW1lbnRDb29yZGluYXRvclByb3h5LmgiCiAjaW5jbHVkZSAiV2ViUG9w
dXBNZW51UHJveHkuaCIKICNpbmNsdWRlICJXZWJQcmVmZXJlbmNlcy5oIgorI2luY2x1ZGUgIldl
YlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFz
a1Byb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlVuZG9TdGVwSUQuaCIKICNpbmNsdWRl
ICJXZWJzaXRlUG9saWNpZXNEYXRhLmgiCiAjaW5jbHVkZSAiV2luZG93S2luZC5oIgpAQCAtMjQy
Nyw3ICsyNDI5LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgdm9pZCBzdGFydFVSTFNjaGVt
ZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7Ci0gICAgdm9pZCBzdG9wVVJMU2NoZW1l
VGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIp
OworICAgIHZvaWQgc3RvcFVSTFNjaGVtZVRhc2soV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZp
ZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIpOwogICAgIHZvaWQgbG9hZFN5bmNo
cm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmLCBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrRGVsYXllZFJlcGx5JiYp
OwogCiAgICAgYm9vbCBjaGVja1VSTFJlY2VpdmVkRnJvbUN1cnJlbnRPclByZXZpb3VzV2ViUHJv
Y2VzcyhXZWJQcm9jZXNzUHJveHkmLCBjb25zdCBTdHJpbmcmKTsKQEAgLTI5ODEsNyArMjk4Myw3
IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3ByZWZlckZhc3RlckNsaWNrT3ZlckRvdWJsZVRhcCB7
IGZhbHNlIH07CiAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+
PiBtX3VybFNjaGVtZUhhbmRsZXJzQnlTY2hlbWU7Ci0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVm
PFdlYlVSTFNjaGVtZUhhbmRsZXI+PiBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyOwor
ICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hl
bWVIYW5kbGVyPj4gbV91cmxTY2hlbWVIYW5kbGVyc0J5SWRlbnRpZmllcjsKIAogI2lmIEVOQUJM
RShBVFRBQ0hNRU5UX0VMRU1FTlQpCiAgICAgdXNpbmcgSWRlbnRpZmllclRvQXR0YWNobWVudE1h
cCA9IEhhc2hNYXA8U3RyaW5nLCBSZWY8QVBJOjpBdHRhY2htZW50Pj47CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggNGJhNTU4YWU4
MjRjYjMzOTAyN2M0YWYzMGMwZWI4ODc4MzE1YzliZi4uNjVlZTQ4OThmMWNmODQzOTQ2YTEzZjNm
ZGVkZGY5MTE5NTNjYmFiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtNTIxLDcgKzUyMSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBh
Z2VQcm94eSB7CiAgICAgU2V0SXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKGJvb2wgaXNVc2lu
Z0hpZ2hQZXJmb3JtYW5jZVdlYkdMKQogCiAgICAgU3RhcnRVUkxTY2hlbWVUYXNrKHN0cnVjdCBX
ZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpCi0gICAgU3RvcFVSTFNj
aGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyKQorICAgIFN0b3BVUkxTY2hlbWVUYXNrKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcklk
ZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKICAgICBMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVU
YXNrKHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpIC0+
IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGVycm9yLCBWZWN0b3I8dWludDhfdD4gZGF0YSkgU3luY2hyb25vdXMKIAogI2lmIEVOQUJM
RShERVZJQ0VfT1JJRU5UQVRJT04pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVS
TFNjaGVtZUhhbmRsZXIuY3BwCmluZGV4IGZmNjhkNjRlMTgwMmFkZWJjNDAxNGI4YjYxNzkxYTAy
ZjRlNGU0YTAuLjU4NTdjMTUyYTUzNGE4MGFlZDJiNGMwOWQzMjZmM2MxYzI3MTM1NDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCkBAIC0z
MywxNCArMzMsOCBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29y
ZTsKIAotc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZp
ZXIoKQotewotICAgIHN0YXRpYyB1aW50NjRfdCBuZXh0SWRlbnRpZmllciA9IDE7Ci0gICAgcmV0
dXJuIG5leHRJZGVudGlmaWVyKys7Ci19Ci0KIFdlYlVSTFNjaGVtZUhhbmRsZXI6OldlYlVSTFNj
aGVtZUhhbmRsZXIoKQotICAgIDogbV9pZGVudGlmaWVyKGdlbmVyYXRlV2ViVVJMU2NoZW1lSGFu
ZGxlcklkZW50aWZpZXIoKSkKKyAgICA6IG1faWRlbnRpZmllcihPYmplY3RJZGVudGlmaWVyPFdl
YlVSTFNjaGVtZUhhbmRsZXI+OjpnZW5lcmF0ZSgpKQogewogfQogCkBAIC01NSwxNCArNDksMTQg
QEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2soV2ViUGFnZVByb3h5JiBwYWdl
LCBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MKICAgICBhdXRvIHJlc3VsdCA9IG1fdGFza3MuYWRk
KHRhc2tJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoKnRoaXMsIHBhZ2UsIHBy
b2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpKTsKICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOwogCi0gICAgYXV0byBw
YWdlRW50cnkgPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCks
IEhhc2hTZXQ8dWludDY0X3Q+KCkpOworICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90YXNrc0J5UGFn
ZUlkZW50aWZpZXIuYWRkKHBhZ2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PFdlYlVSTFNjaGVtZVRh
c2tQcm94eUlkZW50aWZpZXI+KCkpOwogICAgIEFTU0VSVCghcGFnZUVudHJ5Lml0ZXJhdG9yLT52
YWx1ZS5jb250YWlucyh0YXNrSWRlbnRpZmllcikpOwogICAgIHBhZ2VFbnRyeS5pdGVyYXRvci0+
dmFsdWUuYWRkKHRhc2tJZGVudGlmaWVyKTsKIAogICAgIHBsYXRmb3JtU3RhcnRUYXNrKHBhZ2Us
IHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwogfQogCi1XZWJQcm9jZXNzUHJveHkqIFdlYlVSTFNj
aGVtZUhhbmRsZXI6OnByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCB0YXNrSWRlbnRp
ZmllcikgY29uc3QKK1dlYlByb2Nlc3NQcm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vz
c0ZvclRhc2tJZGVudGlmaWVyKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lk
ZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNsdHlwZShtX3Rhc2tzKTo6aXNWYWxpZEtl
eSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtNzksNyArNzMs
NyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFn
ZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAgICAgICByZXR1cm47CiAKICAgICBhdXRv
JiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsKLSAgICBWZWN0b3I8dWludDY0X3Q+IHRh
c2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllcj4gdGFza0lkZW50aWZpZXJzVG9TdG9wOwogICAgIHRhc2tJZGVudGlmaWVyc1RvU3Rv
cC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHRhc2tzQnlQYWdlLnNpemUoKSk7CiAgICAgZm9yIChh
dXRvIHRhc2tJZGVudGlmaWVyIDogdGFza3NCeVBhZ2UpIHsKICAgICAgICAgaWYgKCFwcm9jZXNz
IHx8IHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih0YXNrSWRlbnRpZmllcikgPT0gcHJvY2VzcykK
QEAgLTkxLDcgKzg1LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NG
b3JQYWdlKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3gKIAogfQogCi12b2lkIFdl
YlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3Qg
dGFza0lkZW50aWZpZXIpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKFdlYlBh
Z2VQcm94eSYgcGFnZSwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRp
ZmllcikKIHsKICAgICBpZiAoIWRlY2x0eXBlKG1fdGFza3MpOjppc1ZhbGlkS2V5KHRhc2tJZGVu
dGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMTE1LDcgKzEwOSw3IEBAIHZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6dGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJiB0YXNrKQogICAg
IHBsYXRmb3JtVGFza0NvbXBsZXRlZCh0YXNrKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQs
IHVpbnQ2NF90IHRhc2tJRCkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zy
b21QYWdlTWFwKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCBXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyIHRhc2tJRCkKIHsKICAgICBhdXRvIGl0ZXJhdG9yID0gbV90YXNrc0J5
UGFnZUlkZW50aWZpZXIuZmluZChwYWdlSUQpOwogICAgIEFTU0VSVChpdGVyYXRvciAhPSBtX3Rh
c2tzQnlQYWdlSWRlbnRpZmllci5lbmQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJVUkxTY2hlbWVIYW5kbGVyLmgKaW5kZXggZjRlM2RiNjBjYzNiOGUwMDBiMzQ2MDMyYTk5OTdl
ZWMwMTQ0ZDhkYi4uYzYxZmUyZDc3NWU4YjlkZjAzNzQ4Y2UwMmE3NzE0MmZhZDRiYTc1MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuaApAQCAtMjUs
NiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRs
ZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFzay5oIgogI2luY2x1ZGUg
PHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KQEAgLTQ4LDEwICs0OSwx
MCBAQCBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViVVJM
U2NoZW1lSGFuZGxlcj4gewogcHVibGljOgogICAgIHZpcnR1YWwgfldlYlVSTFNjaGVtZUhhbmRs
ZXIoKTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50
aWZpZXI7IH0KKyAgICBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkg
Y29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHN0YXJ0VGFzayhXZWJQ
YWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJM
U2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciYmKTsKLSAg
ICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKTsK
KyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlk
ZW50aWZpZXIpOwogICAgIHZvaWQgc3RvcEFsbFRhc2tzRm9yUGFnZShXZWJQYWdlUHJveHkmLCBX
ZWJQcm9jZXNzUHJveHkqKTsKICAgICB2b2lkIHRhc2tDb21wbGV0ZWQoV2ViVVJMU2NoZW1lVGFz
ayYpOwogCkBAIC02MywxMyArNjQsMTMgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgcGxh
dGZvcm1TdG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJVUkxTY2hlbWVUYXNrJikgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQoV2ViVVJMU2NoZW1lVGFzayYpIHsg
fTsKIAotICAgIHZvaWQgcmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdlYlBhZ2VQcm94eUlkZW50aWZp
ZXIsIHVpbnQ2NF90IHRhc2tJRCk7Ci0gICAgV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzRm9yVGFz
a0lkZW50aWZpZXIodWludDY0X3QpIGNvbnN0OworICAgIHZvaWQgcmVtb3ZlVGFza0Zyb21QYWdl
TWFwKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZp
ZXIpOworICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIpIGNvbnN0OwogCi0gICAgdWludDY0X3QgbV9pZGVu
dGlmaWVyOworICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsK
IAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNrczsK
LSAgICBIYXNoTWFwPFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8dWludDY0X3Q+PiBt
X3Rhc2tzQnlQYWdlSWRlbnRpZmllcjsKKyAgICBIYXNoTWFwPFdlYlVSTFNjaGVtZVRhc2tQcm94
eUlkZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNrczsKKyAgICBIYXNoTWFw
PFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllcj4+IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOwogICAgIAogICAgIFN5bmNMb2FkQ29t
cGxldGlvbkhhbmRsZXIgbV9zeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suY3BwCmluZGV4IDllMWRiYmZjOGU4Mjg4
MDFlYjA4ODNhMjYwMGQxZWFhM2ZmY2ZmYjcuLmE3ODgyOTcyMGNjNGVjM2UxYTUwOGNlZTUyNjMz
ZDE5MDEwNmY1N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNj
aGVtZVRhc2suY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suY3BwCkBAIC00NSw2ICs0NSwxMCBAQCBSZWY8V2ViVVJMU2NoZW1lVGFzaz4gV2ViVVJMU2No
ZW1lVGFzazo6Y3JlYXRlKFdlYlVSTFNjaGVtZUhhbmRsZXImIGhhbmRsZXIsIFdlYgogV2ViVVJM
U2NoZW1lVGFzazo6V2ViVVJMU2NoZW1lVGFzayhXZWJVUkxTY2hlbWVIYW5kbGVyJiBoYW5kbGVy
LCBXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgUGFnZUlkZW50
aWZpZXIgd2ViUGFnZUlELCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMsIFN5
bmNMb2FkQ29tcGxldGlvbkhhbmRsZXImJiBzeW5jQ29tcGxldGlvbkhhbmRsZXIpCiAgICAgOiBt
X3VybFNjaGVtZUhhbmRsZXIoaGFuZGxlcikKICAgICAsIG1fcHJvY2VzcyhtYWtlUmVmKHByb2Nl
c3MpKQorICAgIC8vIEZJWE1FOiBUaGlzIGlzIGJyb2tlbi4gV2Ugc2hvdWxkIGNyZWF0ZSBhIFdl
YlVSTFNjaGVtZVRhc2tJZGVudGlmaWVyIHVzaW5nCisgICAgLy8gT2JqZWN0SWRlbnRpZmllcjxX
ZWJVUkxTY2hlbWVUYXNrPjo6Z2VuZXJhdGUoKSBiZWNhdXNlIHRoZSBpZGVudGlmaWVycyBnZW5l
cmF0ZWQgaW4gdGhlIHdlYgorICAgIC8vIHByb2Nlc3MgYXJlIG5vdCBub3QgdW5pcXVlIGhlcmUg
aW4gdGhlIFVJIHByb2Nlc3MuCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyOTExNgogICAgICwgbV9pZGVudGlmaWVyKHBhcmFtZXRlcnMudGFza0lkZW50
aWZpZXIpCiAgICAgLCBtX3BhZ2VQcm94eUlEKHBhZ2UuaWRlbnRpZmllcigpKQogICAgICwgbV93
ZWJQYWdlSUQod2ViUGFnZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViVVJMU2NoZW1lVGFzay5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1l
VGFzay5oCmluZGV4IGVhYzA5YmRlY2ExZGVjMGNiMjE5YWMxZDAzMzA4YjJlMjcyMzA5Y2UuLjI1
ZDViM2VmN2ZjNTM2NTM2ODhiMDNkOTU3NjZhOTk0MTAwNTY2ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1
ZGUgIkFQSU9iamVjdC5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NQcm94eS5oIgorI2luY2x1ZGUg
IldlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1Jl
c291cmNlUmVxdWVzdC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXNwb25zZS5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CkBAIC02MSw3ICs2Miw3IEBAIHB1Ymxp
YzoKIAogICAgIH5XZWJVUkxTY2hlbWVUYXNrKCk7CiAKLSAgICB1aW50NjRfdCBpZGVudGlmaWVy
KCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9pZGVudGlmaWVy
OyB9CisgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29u
c3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAg
ICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlUHJveHlJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1
bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fcGFnZVByb3h5SUQ7IH0KICAgICBXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllciB3ZWJQYWdlSUQoKSBjb25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4o
KSk7IHJldHVybiBtX3dlYlBhZ2VJRDsgfQogICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzcygp
IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fcHJvY2Vzcy5nZXQoKTsgfQpA
QCAtMTAxLDcgKzEwMiw3IEBAIHByaXZhdGU6CiAKICAgICBSZWY8V2ViVVJMU2NoZW1lSGFuZGxl
cj4gbV91cmxTY2hlbWVIYW5kbGVyOwogICAgIFJlZlB0cjxXZWJQcm9jZXNzUHJveHk+IG1fcHJv
Y2VzczsKLSAgICB1aW50NjRfdCBtX2lkZW50aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciBt
X3BhZ2VQcm94eUlEOwogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIG1fd2ViUGFnZUlEOwog
ICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVlc3QgV1RGX0dVQVJERURfQllfTE9D
SyhtX3JlcXVlc3RMb2NrKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IDcwODFiODQzZjdlYzA1Mjk2NjJlZmYzMzg4NzFjNzA2YzU4YWE5
NmIuLjNmZWMxNzZiZWYzZjFhZGJiOGM3Y2ZlOGMwNGU0MDQzOGMyOWRjZjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDU5Niw2ICs0
NTk2LDggQEAKIAkJNUNEMjg2NEYxRTcyMkY0NDAwOTRGREM4IC8qIFdLQ29udGVudFJ1bGVMaXN0
U3RvcmVJbnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0NvbnRl
bnRSdWxlTGlzdFN0b3JlSW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NUNEMjg2NTAxRTcyMkY0NDAwOTRGREM4IC8qIFdLQ29udGVudFJ1bGVMaXN0U3RvcmVQcml2YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQ29udGVudFJ1bGVMaXN0U3Rv
cmVQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDRDc0OEI1MjNDOEVC
MTkwMDkyQTlCNSAvKiBOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0Q3NDhCNTIzQzhFQjE5MDA5MkIwQzYgLyog
V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTVDRDc0OEI1MjNDOEVCMTkwMDkyQzFENyAvKiBXZWJVUkxTY2hl
bWVIYW5kbGVySWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0UwQzM2NjIyOUYyRDNEMDAzNjk1RjAgLyogQVBJQ29udGV4dE1lbnVFbGVtZW50SW5m
by5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBUElDb250ZXh0TWVu
dUVsZW1lbnRJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUNFMEMzNjcy
MjlGMkQzRTAwMzY5NUYwIC8qIEFQSUNvbnRleHRNZW51RWxlbWVudEluZm8uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVBJQ29udGV4dE1lbnVFbGVtZW50SW5mby5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0UwQzM2ODIyOUYyRDRBMDAzNjk1RjAgLyogV0tD
b250ZXh0TWVudUVsZW1lbnRJbmZvLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gV0tDb250ZXh0TWVudUVsZW1lbnRJbmZvLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtNzAwMSw2ICs3MDAzLDggQEAKIAkJCQk4MzYwMzQ5RTFBQ0IzNEQ2MDA2MjY1
NDkgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyLmggKi8sCiAJCQkJQzAzMzdERDcxMjdBNTFC
NjAwOEZGNEY0IC8qIFdlYlRvdWNoRXZlbnQuY3BwICovLAogCQkJCTBGNDAwMTAwMjUyN0Q3M0Mw
MEU5MURBNyAvKiBXZWJUb3VjaEV2ZW50LmggKi8sCisJCQkJNUNENzQ4QjUyM0M4RUIxOTAwOTJD
MUQ3IC8qIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyLmggKi8sCisJCQkJNUNENzQ4QjUy
M0M4RUIxOTAwOTJCMEM2IC8qIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIuaCAqLywK
IAkJCQk3QzA2NUYyOTFDOENEOTVGMDBDMkQ5NTAgLyogV2ViVXNlckNvbnRlbnRDb250cm9sbGVy
RGF0YVR5cGVzLmNwcCAqLywKIAkJCQk3QzA2NUYyQTFDOENEOTVGMDBDMkQ5NTAgLyogV2ViVXNl
ckNvbnRlbnRDb250cm9sbGVyRGF0YVR5cGVzLmggKi8sCiAJCQkJQzAzMzdERDAxMjdBMjk4MDAw
OEZGNEY0IC8qIFdlYldoZWVsRXZlbnQuY3BwICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCmluZGV4IDM1MjUzMTA2
Y2IxZDMwMTMzOWMyYjMwZTg2MDJmNmJmMjRhM2U3MmIuLjAzNDdhMWU3ZjUyOWVkYTAwNmRlMDdm
ZDA1Y2JkODlmY2Y3MTZjMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTQ2Miw3ICs0NjIsNyBAQCB2b2lk
IFdlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUoUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQogICAgIEFTU0VSVChyZXNvdXJjZUxvYWRlcik7CiAgICAgTE9HKE5ldHdvcmtTY2hlZHVsaW5n
LCAiKFdlYlByb2Nlc3MpIFdlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUsIHVybCAnJXMnIiwgcmVz
b3VyY2VMb2FkZXItPnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCi0gICAgaWYgKGF1
dG8gdGFzayA9IG1fdXJsU2NoZW1lVGFza3MudGFrZShyZXNvdXJjZUxvYWRlci0+aWRlbnRpZmll
cigpKSkgeworICAgIGlmIChhdXRvIHRhc2sgPSBtX3VybFNjaGVtZVRhc2tzLnRha2UobWFrZU9i
amVjdElkZW50aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PihyZXNvdXJjZUxvYWRlci0+aWRl
bnRpZmllcigpKSkpIHsKICAgICAgICAgQVNTRVJUKCFtX2ludGVybmFsbHlGYWlsZWRSZXNvdXJj
ZUxvYWRlcnMuY29udGFpbnMocmVzb3VyY2VMb2FkZXIpKTsKICAgICAgICAgdGFzay0+c3RvcExv
YWRpbmcoKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKaW5kZXggYzc5NmFlNTBmMTRjMTZlYzI1
ZTZlMDE0OWQ3NjZiZjdkMTFlMTg3Yi4uZjRmNWFiYmQzZTliMjMwNWU4ZGM0MGFkYmVhZDMxMDE2
MjE1ZDc2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9X
ZWJMb2FkZXJTdHJhdGVneS5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJOZXR3b3Jr
UmVzb3VyY2VMb2FkSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlJlc291cmNlTG9hZGVyLmgi
CisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllci5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvTG9hZGVyU3RyYXRlZ3kuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlRXJy
b3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVyLmg+CkBAIC0xMzQsNyArMTM1
LDcgQEAgcHJpdmF0ZToKICAgICBSdW5Mb29wOjpUaW1lcjxXZWJMb2FkZXJTdHJhdGVneT4gbV9p
bnRlcm5hbGx5RmFpbGVkTG9hZFRpbWVyOwogICAgIAogICAgIEhhc2hNYXA8dW5zaWduZWQgbG9u
ZywgUmVmUHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJjZUxvYWRlcnM7Ci0gICAg
SGFzaE1hcDx1bnNpZ25lZCBsb25nLCBXZWJVUkxTY2hlbWVUYXNrUHJveHkqPiBtX3VybFNjaGVt
ZVRhc2tzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgV2Vi
VVJMU2NoZW1lVGFza1Byb3h5Kj4gbV91cmxTY2hlbWVUYXNrczsKICAgICBIYXNoTWFwPHVuc2ln
bmVkIGxvbmcsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+IG1fcGluZ0xvYWRDb21wbGV0aW9u
SGFuZGxlcnM7CiAgICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBQcmVjb25uZWN0Q29tcGxldGlv
bkhhbmRsZXI+IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyczsKICAgICBWZWN0b3I8RnVu
Y3Rpb248dm9pZChib29sKT4+IG1fb25saW5lU3RhdGVDaGFuZ2VMaXN0ZW5lcnM7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDFhYmRmN2UwNDI0
ODhlNmM1ZTk4NzQwMzU0YTVlZmY5YThlYjhmNDUuLjkzMDE3YWViNTVhOWY2ZDk0NzVkNDkzOWZl
MjQyNWVhYTVhNTJhNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCkBAIC02OTE4LDE2ICs2OTE4LDE2IEBAIHZvaWQgV2ViUGFnZTo6c3RvcEFsbFVS
TFNjaGVtZVRhc2tzKCkKICAgICAgICAgaGFuZGxlci0+c3RvcEFsbFRhc2tzKCk7CiB9CiAKLXZv
aWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGhhbmRsZXJJZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSkKK3ZvaWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxT
Y2hlbWVIYW5kbGVyKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlm
aWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSkKIHsKLSAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFBy
b2Nlc3MsICJyZWdpc3RlclVSTFNjaGVtZUhhbmRsZXI6IFJlZ2lzdGVyZWQgaGFuZGxlciAlIiBQ
Ukl1NjQgIiBmb3IgdGhlICclcycgc2NoZW1lIiwgaGFuZGxlcklkZW50aWZpZXIsIHNjaGVtZS51
dGY4KCkuZGF0YSgpKTsKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJyZWdpc3Rl
clVSTFNjaGVtZUhhbmRsZXI6IFJlZ2lzdGVyZWQgaGFuZGxlciAlIiBQUkl1NjQgIiBmb3IgdGhl
ICclcycgc2NoZW1lIiwgaGFuZGxlcklkZW50aWZpZXIudG9VSW50NjQoKSwgc2NoZW1lLnV0Zjgo
KS5kYXRhKCkpOwogICAgIFdlYkNvcmU6OkxlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVS
TFNjaGVtZUFzSGFuZGxlZEJ5U2NoZW1lSGFuZGxlcihzY2hlbWUpOwogICAgIFdlYkNvcmU6Okxl
Z2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzQ09SU0VuYWJsZWQoc2NoZW1l
KTsKICAgICBhdXRvIHNjaGVtZVJlc3VsdCA9IG1fc2NoZW1lVG9VUkxTY2hlbWVIYW5kbGVyUHJv
eHlNYXAuYWRkKHNjaGVtZSwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpjcmVhdGUoKnRoaXMs
IGhhbmRsZXJJZGVudGlmaWVyKSk7CiAgICAgbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVy
UHJveHlNYXAuYWRkKGhhbmRsZXJJZGVudGlmaWVyLCBzY2hlbWVSZXN1bHQuaXRlcmF0b3ItPnZh
bHVlLmdldCgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1S
ZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxsUGVy
Zm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVu
dGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBS
ZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNj
aGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVCho
YW5kbGVyKTsKQEAgLTY5MzYsNyArNjkzNiw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpCiAg
ICAgaGFuZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRlbnRpZmllciwgV1RG
TW92ZShyZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
UmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQor
dm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNj
aGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNr
UHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9u
c2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1f
aWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmll
cik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjk0NCw3ICs2OTQ0LDcgQEAgdm9pZCBXZWJQ
YWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW4KICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRh
c2tJZGVudGlmaWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgW10gKFJl
c291cmNlUmVxdWVzdCYmKSB7fSk7CiB9CiAgICAgCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQg
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJVUkxTY2hlbWVIYW5k
bGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclBy
b3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAt
Njk1Miw3ICs2OTUyLDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJl
c3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjQKICAgICBoYW5kbGVyLT50
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHRhc2tJZGVudGlmaWVyLCByZXNwb25zZSk7CiB9CiAKLXZv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJl
bmNlJiBkYXRhKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEoV2Vi
VVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVt
ZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVy
ZW5jZSYgZGF0YSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hl
bWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFu
ZGxlcik7CkBAIC02OTYwLDcgKzY5NjAsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tE
aWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdAogICAg
IGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlRGF0YSh0YXNrSWRlbnRpZmllciwgZGF0YS5zaXplKCks
IGRhdGEuZGF0YSgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkQ29tcGxl
dGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0Rp
ZENvbXBsZXRlKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVy
VG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBB
U1NFUlQoaGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmgKaW5kZXggN2Y2NWQyYjQ4MzU0Yjg0YjAwNTJiNzBmNzQ4ZTJhNjRjOWI4NWY2Ny4uMWMwZTVh
N2UxYTA5NDAzODQ5ZTgzNTY2MmZiMWNjYjAyNDFjMzQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1ZGUgIldl
YkJhY2tGb3J3YXJkTGlzdFByb3h5LmgiCiAjaW5jbHVkZSAiV2ViUGFnZU1lc3NhZ2VzUmVwbGll
cy5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZUhhbmRsZXIuaCIKKyNpbmNsdWRlICJXZWJVUkxT
Y2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiV2ViVW5kb1N0ZXBJRC5oIgog
I2luY2x1ZGUgIldlYlVzZXJDb250ZW50Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIldlYnNpdGVQ
b2xpY2llc0RhdGEuaCIKQEAgLTE4NzIsMTMgKzE4NzMsMTMgQEAgcHJpdmF0ZToKIAogICAgIHZv
aWQgZnJhbWVCZWNhbWVSZW1vdGUoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBXZWJDb3JlOjpH
bG9iYWxGcmFtZUlkZW50aWZpZXImJiByZW1vdGVGcmFtZUlkZW50aWZpZXIsIFdlYkNvcmU6Okds
b2JhbFdpbmRvd0lkZW50aWZpZXImJiByZW1vdGVXaW5kb3dJZGVudGlmaWVyKTsKIAotICAgIHZv
aWQgcmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc2NoZW1lKTsKKyAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcihXZWJVUkxT
Y2hlbWVIYW5kbGVySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzY2hlbWUpOwogCi0gICAgdm9p
ZCB1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tE
aWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9u
c2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNr
RGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKLSAgICB2b2lkIHVybFNjaGVt
ZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHVy
bFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVu
dGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB1cmxTY2hl
bWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVy
LCBXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YShXZWJVUkxTY2hlbWVI
YW5kbGVySWRlbnRpZmllciwgV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUo
V2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAogICAgIHZvaWQgc2V0SXNU
YWtpbmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oYm9vbCk7CiAgICAgdm9pZCBz
ZXROZWVkc0RPTVdpbmRvd1Jlc2l6ZUV2ZW50KCk7CkBAIC0yMzA4LDcgKzIzMDksNyBAQCBwcml2
YXRlOgogI2VuZGlmCiAKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eT4+IG1fc2NoZW1lVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXA7Ci0gICAgSGFz
aE1hcDx1aW50NjRfdCwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Kj4gbV9pZGVudGlmaWVyVG9V
UkxTY2hlbWVIYW5kbGVyUHJveHlNYXA7CisgICAgSGFzaE1hcDxXZWJVUkxTY2hlbWVIYW5kbGVy
SWRlbnRpZmllciwgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Kj4gbV9pZGVudGlmaWVyVG9VUkxT
Y2hlbWVIYW5kbGVyUHJveHlNYXA7CiAKICAgICBIYXNoTWFwPHVpbnQ2NF90LCBGdW5jdGlvbjx2
b2lkKGJvb2wgZ3JhbnRlZCk+PiBtX3N0b3JhZ2VBY2Nlc3NSZXNwb25zZUNhbGxiYWNrTWFwOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbgppbmRleCAwYzU5YzkxMzBlYTI1YjdiZDYwYjVlODQ1ZmQ1ZTNlNTVkMGNmYTkwLi5j
YTgwNDM4ODU5NjQwMDY2M2Q1ZDJiMDVjZmZmZDkzNmEwYzExZWNmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KQEAgLTU0
OSwxMyArNTQ5LDEzIEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50
OF90IFdlYktpdDo6U3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlCiAKICAgICBGcmFtZUJlY2Ft
ZVJlbW90ZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYkNvcmU6
Okdsb2JhbEZyYW1lSWRlbnRpZmllciByZW1vdGVGcmFtZUlkZW50aWZpZXIsIHN0cnVjdCBXZWJD
b3JlOjpHbG9iYWxXaW5kb3dJZGVudGlmaWVyIHJlbW90ZVdpbmRvd0lkZW50aWZpZXIpCiAKLSAg
ICBSZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaWRlbnRpZmllciwgU3RyaW5nIHNj
aGVtZSkKKyAgICBSZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIoV2ViS2l0OjpXZWJVUkxTY2hlbWVI
YW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBTdHJpbmcgc2NoZW1lKQogCi0gICAgVVJMU2No
ZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIs
IHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3Bv
bnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0IGFjdHVhbFJlcXVlc3QpIEFzeW5jCi0gICAgVVJMU2NoZW1lVGFz
a0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCi0gICAgVVJMU2NoZW1lVGFz
a0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3Qg
dGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAg
VVJMU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRh
dGEpCi0gICAgVVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJv
cikKKyAgICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbihXZWJLaXQ6OldlYlVS
TFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIGhhbmRsZXJJZGVudGlmaWVyLCBXZWJLaXQ6OldlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJl
cXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5bmMK
KyAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYktpdDo6V2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktpdDo6V2ViVVJMU2No
ZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVz
dCkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYktpdDo6V2ViVVJMU2No
ZW1lSGFuZGxlcklkZW50aWZpZXIgaGFuZGxlcklkZW50aWZpZXIsIFdlYktpdDo6V2ViVVJMU2No
ZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEoV2ViS2l0
OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmllciwgV2ViS2l0
OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBJUEM6OlNo
YXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxl
dGUoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBoYW5kbGVySWRlbnRpZmll
ciwgV2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogCiAgICAgU2V0SXNTdXNwZW5kZWQoYm9v
bCBzdXNwZW5kZWQpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCmluZGV4IDM2ZTU3MjUxMjMz
N2Q2MzAwYzIyZThhMzJlMTcxNTE5MDQzYjUwMzcuLjA1MWNlYWNiN2Q3YWI2MGIwZDdiM2ExNWNi
YWNmOGY2MzQwMzg3YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcApAQCAtNDMsNyArNDMs
NyBAQAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoV2ViUGFnZSYg
cGFnZSwgdWludDY0X3QgaWRlbnRpZmllcikKK1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6V2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5KFdlYlBhZ2UmIHBhZ2UsIFdlYlVSTFNjaGVtZUhhbmRsZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgOiBtX3dlYlBhZ2UocGFnZSkKICAgICAsIG1faWRl
bnRpZmllcihpZGVudGlmaWVyKQogewpAQCAtNTYsNyArNTYsNyBAQCBXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6On5XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkoKQogCiB2b2lkIFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eTo6c3RhcnROZXdUYXNrKFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIFdlYkZy
YW1lJiB3ZWJGcmFtZSkKIHsKLSAgICBhdXRvIHJlc3VsdCA9IG1fdGFza3MuYWRkKGxvYWRlci5p
ZGVudGlmaWVyKCksIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6Y3JlYXRlKCp0aGlzLCBsb2FkZXIs
IHdlYkZyYW1lKSk7CisgICAgYXV0byByZXN1bHQgPSBtX3Rhc2tzLmFkZChtYWtlT2JqZWN0SWRl
bnRpZmllcjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+KGxvYWRlci5pZGVudGlmaWVyKCkpLCBXZWJV
UkxTY2hlbWVUYXNrUHJveHk6OmNyZWF0ZSgqdGhpcywgbG9hZGVyLCB3ZWJGcmFtZSkpOwogICAg
IEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CiAKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS53ZWJMb2FkZXJTdHJhdGVneSgpLmFkZFVSTFNjaGVtZVRhc2tQcm94eSgqcmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSk7CkBAIC02Niw3ICs2Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgV2ViRnJhbWUmIHdlCiB2
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkoUmVzb3VyY2VM
b2FkSWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJhbWUmIHdlYkZyYW1lLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNv
dXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewogICAgIGRhdGEuc2hy
aW5rKDApOwotICAgIGlmICghbV93ZWJQYWdlLnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMg
eyBtX2lkZW50aWZpZXIsIGxvYWRJZGVudGlmaWVyLCByZXF1ZXN0LCB3ZWJGcmFtZS5pbmZvKCkg
fSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2s6
OlJlcGx5KHJlc3BvbnNlLCBlcnJvciwgZGF0YSkpKSB7CisgICAgaWYgKCFtX3dlYlBhZ2Uuc2Vu
ZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFz
ayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7IG1faWRlbnRpZmllciwgbWFrZU9iamVjdElkZW50
aWZpZXI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pihsb2FkSWRlbnRpZmllciksIHJlcXVlc3QsIHdl
YkZyYW1lLmluZm8oKSB9KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3Vz
VVJMU2NoZW1lVGFzazo6UmVwbHkocmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKICAgICAgICAg
ZXJyb3IgPSBmYWlsZWRDdXN0b21Qcm90b2NvbFN5bmNMb2FkKHJlcXVlc3QpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQpAQCAtNzgsNyArNzgsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQ
cm94eTo6c3RvcEFsbFRhc2tzKCkKICAgICAgICAgbV90YXNrcy5iZWdpbigpLT52YWx1ZS0+c3Rv
cExvYWRpbmcoKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQ
ZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
JiBuZXdSZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVj
dFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZpZXIp
OwogICAgIGlmICghdGFzaykKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZp
ZXIKICAgICB0YXNrLT5kaWRQZXJmb3JtUmVkaXJlY3Rpb24oV1RGTW92ZShyZWRpcmVjdFJlc3Bv
bnNlKSwgV1RGTW92ZShuZXdSZXF1ZXN0KSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwog
fQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25z
ZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25z
ZShXZWJVUkxTY2hlbWVUYXNrUHJveHlJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5n
ZXQodGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAgLTk2LDcgKzk2LDcgQEAgdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0
X3QgdGFza0lkZW50aWZpZXIsIGMKICAgICB0YXNrLT5kaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9u
c2UpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVE
YXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCog
ZGF0YSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEo
V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgc2l6ZV90IHNp
emUsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpCiB7CiAgICAgYXV0byogdGFzayA9IG1fdGFza3MuZ2V0
KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2spCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgc2l6ZV8KICAgICB0YXNrLT5kaWRSZWNlaXZlRGF0YShzaXplLCBkYXRh
KTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSh1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKFdlYlVSTFNjaGVtZVRh
c2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVy
cm9yKQogewogICAgIGlmIChhdXRvIHRhc2sgPSByZW1vdmVUYXNrKHRhc2tJZGVudGlmaWVyKSkK
ICAgICAgICAgdGFzay0+ZGlkQ29tcGxldGUoZXJyb3IpOwpAQCAtMTE3LDcgKzExNyw3IEBAIHZv
aWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkU3RvcExvYWRpbmcoV2ViVVJMU2No
ZW1lVGFza1Byb3h5JiB0YXNrKQogICAgIHJlbW92ZVRhc2sodGFzay5pZGVudGlmaWVyKCkpOwog
fQogCi1SZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHk6OnJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcikKK1JlZlB0cjxXZWJVUkxTY2hlbWVU
YXNrUHJveHk+IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayhXZWJVUkxTY2hl
bWVUYXNrUHJveHlJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byB0YXNrID0gbV90
YXNrcy50YWtlKGlkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmgKaW5kZXggMDQyZDc5YzZlNmY4NDVkYzFiMDZiMmNhMzM4MDA3MmQ0ODBiYTZmMC4uOWQxYzk5
YmE5NWVmY2Y1ZmQxNGY1NmY0YTJjNGY4Y2E5MGMzMjdjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJXZWJVUkxT
Y2hlbWVIYW5kbGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2tQcm94
eS5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KQEAgLTQzLDcgKzQ0LDcgQEAgdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlm
aWVyOwogCiBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkgOiBwdWJsaWMgUmVmQ291bnRl
ZDxXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk+IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gY3JlYXRlKFdlYlBhZ2UmIHBhZ2UsIHVpbnQ2NF90IGlk
ZW50aWZpZXIpCisgICAgc3RhdGljIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk+IGNyZWF0
ZShXZWJQYWdlJiBwYWdlLCBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5KHBhZ2UsIGlkZW50aWZpZXIpKTsKICAgICB9CkBAIC01NCwyNCArNTUsMjQgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShSZXNvdXJjZUxvYWRJZGVudGlmaWVy
LCBXZWJGcmFtZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgVmVjdG9yPHVpbnQ4X3Q+
Jik7CiAKLSAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlm
aWVyOyB9CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogICAgIFdlYlBhZ2UmIHBhZ2UoKSB7IHJldHVy
biBtX3dlYlBhZ2U7IH0KIAotICAgIHZvaWQgdGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwot
ICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXpl
X3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwotICAgIHZvaWQgdGFza0RpZENvbXBsZXRlKHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CisgICAg
dm9pZCB0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50
aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
VVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKFdlYlVS
TFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIHNpemVfdCwgY29uc3Qg
dWludDhfdCogZGF0YSk7CisgICAgdm9pZCB0YXNrRGlkQ29tcGxldGUoV2ViVVJMU2NoZW1lVGFz
a1Byb3h5SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpOwogICAgIHZvaWQgdGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNjaGVtZVRhc2tQcm94
eSYpOwogCiBwcml2YXRlOgotICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eShXZWJQYWdlJiwg
dWludDY0X3QgaWRlbnRpZmllcik7CisgICAgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5KFdlYlBh
Z2UmLCBXZWJVUkxTY2hlbWVIYW5kbGVySWRlbnRpZmllcik7CiAKLSAgICBSZWZQdHI8V2ViVVJM
U2NoZW1lVGFza1Byb3h5PiByZW1vdmVUYXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpOworICAgIFJl
ZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2soV2ViVVJMU2NoZW1lVGFza1By
b3h5SWRlbnRpZmllcik7CiAKICAgICBXZWJQYWdlJiBtX3dlYlBhZ2U7Ci0gICAgdWludDY0X3Qg
bV9pZGVudGlmaWVyIHsgMCB9OworICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJJZGVudGlmaWVyIG1f
aWRlbnRpZmllcjsKIAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJVUkxTY2hlbWVU
YXNrUHJveHk+PiBtX3Rhc2tzOworICAgIEhhc2hNYXA8V2ViVVJMU2NoZW1lVGFza1Byb3h5SWRl
bnRpZmllciwgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4+IG1fdGFza3M7CiB9OyAvLyBj
bGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVU
YXNrUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lVGFza1Byb3h5LmNwcAppbmRleCA3NTc5OWEwYzY1ZDBjZGFmZGU2ZjI2NWIxYzU0NzU2Yjg0
YTIwOWQ5Li4wMjRlY2YxNmJiMDhhNzBkYTcxZTFjZDA0NWZiODVmNzI5NGE4ODUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJv
eHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVt
ZVRhc2tQcm94eS5jcHAKQEAgLTM5LDggKzM5LDggQEAKICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAKLSNkZWZp
bmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFICJb
c2NoZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlE
PSUiIFBSSXU2NCAiLCB0YXNrSUQ9JWx1XSBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OiIKLSNkZWZp
bmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMg
bV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgcGFnZUlERnJvbVdlYkZyYW1lKG1fZnJh
bWUpLCBmcmFtZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBtX2lkZW50aWZpZXIKKyNkZWZpbmUg
V0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFICJbc2No
ZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCB0YXNrSUQ9JSIgUFJJdTY0ICJdIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6Igor
I2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1F
VEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLnRvVUludDY0KCksIHBhZ2VJREZy
b21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgbV9pZGVu
dGlmaWVyLnRvVUludDY0KCkKICNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0Vf
TE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKIAogbmFtZXNw
YWNlIFdlYktpdCB7CkBAIC02OSw3ICs2OSw3IEBAIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6V2Vi
VVJMU2NoZW1lVGFza1Byb3h5KFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSYgaGFuZGxlciwKICAg
ICAsIG1fY29yZUxvYWRlcigmbG9hZGVyKQogICAgICwgbV9mcmFtZSgmZnJhbWUpCiAgICAgLCBt
X3JlcXVlc3QobG9hZGVyLnJlcXVlc3QoKSkKLSAgICAsIG1faWRlbnRpZmllcihsb2FkZXIuaWRl
bnRpZmllcigpKQorICAgICwgbV9pZGVudGlmaWVyKG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYlVS
TFNjaGVtZVRhc2tQcm94eT4obG9hZGVyLmlkZW50aWZpZXIoKSkpCiB7CiB9CiAKQEAgLTc4LDE0
ICs3OCwxNCBAQCB2b2lkIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6c3RhcnRMb2FkaW5nKCkKICAg
ICBBU1NFUlQobV9jb3JlTG9hZGVyKTsKICAgICBBU1NFUlQobV9mcmFtZSk7CiAgICAgV0VCVVJM
U0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HKCJzdGFydExvYWRpbmciKTsKLSAgICBtX3VybFNj
aGVtZUhhbmRsZXIucGFnZSgpLnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U3RhcnRVUkxT
Y2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsgbV91cmxTY2hlbWVIYW5kbGVyLmlk
ZW50aWZpZXIoKSwgbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCksIG1fcmVxdWVzdCwgbV9mcmFt
ZS0+aW5mbygpIH0pKTsKKyAgICBtX3VybFNjaGVtZUhhbmRsZXIucGFnZSgpLnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6U3RhcnRVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0
ZXJzIHsgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgbV9pZGVudGlmaWVyLCBtX3Jl
cXVlc3QsIG1fZnJhbWUtPmluZm8oKSB9KSk7CiB9CiAKIHZvaWQgV2ViVVJMU2NoZW1lVGFza1By
b3h5OjpzdG9wTG9hZGluZygpCiB7CiAgICAgQVNTRVJUKG1fY29yZUxvYWRlcik7CiAgICAgV0VC
VVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HKCJzdG9wTG9hZGluZyIpOwotICAgIG1fdXJs
U2NoZW1lSGFuZGxlci5wYWdlKCkuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTdG9wVVJM
U2NoZW1lVGFzayhtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBtX2NvcmVMb2FkZXIt
PmlkZW50aWZpZXIoKSkpOworICAgIG1fdXJsU2NoZW1lSGFuZGxlci5wYWdlKCkuc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpTdG9wVVJMU2NoZW1lVGFzayhtX3VybFNjaGVtZUhhbmRsZXIu
aWRlbnRpZmllcigpLCBtX2lkZW50aWZpZXIpKTsKICAgICBtX2NvcmVMb2FkZXIgPSBudWxscHRy
OwogICAgIG1fZnJhbWUgPSBudWxscHRyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCmluZGV4IGI1ZTMzNGRm
YzIzMzY0OGVjNTdlOGY2MTYzZGMxNWZhYjU2ZjZjNWMuLmRkZjIzZmM3OWU3YWViMjk0OTY2YTg4
YTc0OWNkYTllZTY2ZmI4ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCkBAIC0yNSw2ICsyNSw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFza1Byb3h5SWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW5jbHVkZSA8d3Rm
L0RlcXVlLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTU3LDcgKzU4LDcgQEAg
cHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoc2l6ZV90LCBjb25zdCB1aW50OF90KiBk
YXRhKTsKICAgICB2b2lkIGRpZENvbXBsZXRlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KTsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQorICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eUlkZW50aWZpZXIgaWRlbnRpZmll
cigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiBwcml2YXRlOgogICAgIFdlYlVS
TFNjaGVtZVRhc2tQcm94eShXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkmLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlciYsIFdlYkZyYW1lJik7CkBAIC03MCw3ICs3MSw3IEBAIHByaXZhdGU6CiAgICAg
UmVmUHRyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPiBtX2NvcmVMb2FkZXI7CiAgICAgUmVmUHRy
PFdlYkZyYW1lPiBtX2ZyYW1lOwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVl
c3Q7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgV2ViVVJMU2NoZW1lVGFz
a1Byb3h5SWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb21w
bGV0aW9uSGFuZGxlciB7IGZhbHNlIH07CiAgICAgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4gbV9x
dWV1ZWRUYXNrczsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438397</attachid>
            <date>2021-09-16 13:39:18 -0700</date>
            <delta_ts>2021-09-17 11:18:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210916133917.patch</filename>
            <type>text/plain</type>
            <size>364670</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNDg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTNhYTY5ODg1YTg2OGFm
MTI5NWZkYTk1YWFkMWVjNzg0MmRhOWFmOS4uOGNiNTRlNmQ1MDhjYjhjOTQ5MjcwN2ZiMjM1MzAz
Njc0Y2Y2MjE0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNiAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgor
ICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmlsZWFw
aS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVyTG9h
ZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJMb2Fk
ZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1
ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Ondp
bGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxv
YWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBsKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVNj
cmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZSk6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVU
aHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29u
dGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2Vw
dFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
V2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbldl
YktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICog
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVzcG9u
c2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZl
RGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZpbmlz
aExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRG
YWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRp
ZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVhZGFi
bGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdl
bnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29y
a0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNv
bnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRpZFJl
Y2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRpZEZh
aWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5o
OgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVByZWZs
aWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hl
Y2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdo
dENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9u
c09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToKKyAg
ICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFk
YWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdl
YkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6CisgICAg
ICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxvYWRl
ci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29y
ZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgor
ICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29y
ZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rp
b25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpjb25u
ZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAg
ICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNo
TG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5
RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxvYWRl
ci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxlbWVu
dFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxM
b2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJv
bm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURlbGVn
YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZyb21N
ZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJy
dXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5o
OgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxvYWRl
ci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6
cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3JlOjpM
b2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6
CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9y
bWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9Mb2Fk
ZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29pbmdM
b2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9QaW5n
TG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xvYWQp
OgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJDb3Jl
OjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29yZTo6
UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBsb2Fk
ZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlm
aWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNl
aXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6
CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRp
c3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90
aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNv
dXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMp
OgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAqIGxv
YWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6
d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRl
ci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29uc3Qp
OgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVkIGZy
b20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAgICAg
ICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VMb2Fk
ZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJlc291
cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVz
b3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVz
b3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VMb2Fk
ZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmREYXRh
KToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2VpdmVS
ZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50OjpkaWRS
ZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGll
bnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVudDo6
ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGll
bnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3Jh
cHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVM
b2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6
OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25D
YW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRC
cmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFk
YWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAg
ICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
Lmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6Cisg
ICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAgICAg
ICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAgICog
bG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNh
Y2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciBj
b25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkV2
ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291cmNl
Lmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29y
a2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6Cisg
ICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAg
ICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAg
ICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdvcmtl
cnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRlZC4K
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAq
IHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJT
Y3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2Vy
U2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VX
b3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpv
Yi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpY
TUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1MSHR0
cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBJREwgc2tlbGV0b24gZm9yIFNoYXJlZFdvcmtl
cgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCA2NTQ4NWU1MzFlYzI0ZjZjZjc0YTNjNGY4NWFhNmExODZhMTNiN2U5Li45
NDFlN2Y5MDQ3MDQwOWQzMDM1ODZiNWIwNGM3N2I1M2ZiNjBjNTM0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE3MyBAQAorMjAyMS0wOS0xNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3
ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxv
YWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMw
Mjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRSZWNlaXZlTWVzc2Fn
ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZXNv
bHZlQmxvYlJlZmVyZW5jZXMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6c2NoZWR1bGVSZXNvdXJjZUxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cGVyZm9ybVN5bmNocm9ub3VzTG9hZCk6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpsb2FkUGluZyk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZW1vdmVMb2Fk
SWRlbnRpZmllcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpwcmVjb25uZWN0VG8pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRNYWlu
UmVzb3VyY2VMb2FkVG9Eb3dubG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2luZ1Jlc291cmNl
TG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpm
aW5kTmV0d29ya0FjdGl2aXR5VHJhY2tlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyk6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp0YWtlTmV0d29ya1Jlc291cmNl
TG9hZGVyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6Z2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRl
SW5mb3JtYXRpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6dGFrZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmFkZE5ldHdvcmtMb2FkSW5mb3JtYXRp
b24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6YWRk
TmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlvbik6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZXNvdXJjZU5l
dHdvcmtBY3Rpdml0eVRyYWNrZXI6OlJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcik6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVz
c2FnZXMuaW46CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNz
VHJhbnNmZXIpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW46CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5jcHA6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmFkZCk6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnJlbW92ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtSZXNvdXJjZUxvYWRNYXA6OnRha2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjpnZXQgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtS
ZXNvdXJjZUxvYWRNYXAuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6Y29udGFpbnMgY29uc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNv
dXJjZUxvYWRQYXJhbWV0ZXJzLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVy
Ojp0cmFuc2ZlclRvTmV3V2ViUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OmVzY2FwZUlERm9y
SlNPTik6CisgICAgICAgIChXZWJLaXQ6OmxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbik6Cisg
ICAgICAgIChXZWJLaXQ6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uSW50ZXJuYWwpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKToKKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAg
KiBTY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKHR5cGVzX3RoYXRfY2Fubm90
X2JlX2ZvcndhcmRfZGVjbGFyZWQpOgorICAgICAgICAqIFNoYXJlZC9VUkxTY2hlbWVUYXNrUGFy
YW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzOjpk
ZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NU
cmFuc2Zlcik6CisgICAgICAgICogVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94
eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlByb3Zpc2lvbmFsUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JSZXNwb25z
ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5Lmg6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayk6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMu
aW46CisgICAgICAgICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2spOgorICAgICAgICAoV2Vi
S2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIgY29uc3Qp
OgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQ
YWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2spOgor
ICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VN
YXApOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJM
U2NoZW1lVGFzazo6aWRlbnRpZmllciBjb25zdCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6
CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZElu
aXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJl
c291cmNlTG9hZENsaWVudDo6d2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUpOgorICAgICAgICAoQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlUmVzcG9uc2VG
b3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRD
bGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAoQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVz
b3VyY2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50
OjpkaWRGYWlsTG9hZEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6
OlJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZSk6CisgICAgICAgIChBUEk6
OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVk
QnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2Up
OgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6
OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSk6
CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6
ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6Oklu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291
cmNlKToKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRGYWlsTG9hZEZvclJlc291cmNlKToKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKToKKyAgICAg
ICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRs
ZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZSk6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUGluZ0xvYWQp
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBy
ZWNvbm5lY3Rpb24pOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9X
ZWJMb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
OjpzY2hlZHVsZUxvYWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2No
ZWR1bGVMb2FkRnJvbU5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVy
U3RyYXRlZ3k6OnJlbW92ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojp0
cnlMb2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcik6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnN0YXJ0UGluZ0xvYWQpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6ZGlkRmluaXNoUGluZ0xvYWQpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6cHJlY29ubmVjdFRvKToKKyAgICAgICAgKFdl
YktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24pOgorICAgICAg
ICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRl
bnRpZmllcik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlh
dGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByaW9yaXRp
emVSZXNvdXJjZUxvYWRzKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6Omdl
bmVyYXRlTG9hZElkZW50aWZpZXIpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0
d29yay9XZWJMb2FkZXJTdHJhdGVneS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9X
ZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJS
ZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmlzSW50ZXJjZXB0aW5nIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpiZWdpbkludGVyY2Vw
dGluZ1Jlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJbnRlcmNlcHRDb250
cm9sbGVyOjpjb250aW51ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjppbnRlcmNlcHRlZFJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpkZWZlcik6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjptZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCBjb25z
dCk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5oOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlv
bi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWdu
SWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJL
aXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVD
b250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UgY29uc3Qp
OgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6c2VuZEgyUGluZyk6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYkZyYW1lOjpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjph
ZGRSZXNvdXJjZVJlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyZW1vdmVSZXNv
dXJjZVJlcXVlc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2ls
bFBlcmZvcm1SZWRpcmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNjaGVt
ZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1
cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFn
ZTo6dXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjphZGRDb25zb2xlTWVzc2Fn
ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW46Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9u
b3VzbHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tE
aWRQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJL
aXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpyZW1vdmVUYXNrKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Lmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHA6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oOgorICAgICAgICAo
V2ViS2l0OjpXZWJVUkxTY2hlbWVUYXNrUHJveHk6OmlkZW50aWZpZXIgY29uc3QpOgorCiAyMDIx
LTA5LTE1ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wbGVt
ZW50IG5ldHdvcmsgcHJvY2VzcyBjcmFzaCByZWNvdmVyeSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L0NoYW5nZUxvZwppbmRleCAzM2YxMDljZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNi
OWI4ZDEzLi5hMGU1YTIxOWI5NDQ0MGMzYjFhMTM4Y2Q4NjI0NGY4Mjg3ZmY5NjUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA5LTE2ICBBbGV4IENocmlzdGVu
c2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50
aWZpZXIgZm9yIFJlc291cmNlTG9hZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxl
ci5jcHA6CisgICAgICAgIChXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHkpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNj
aGVkdWxlci5oOgorCiAyMDIxLTA5LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+
CiAKICAgICAgICAgSW1wbGVtZW50IG9yaWdpbiBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJh
bWUtb3JpZ2luKSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9n
CmluZGV4IGUzYjQ5M2ZkYTg3OGE3OWRhY2NiZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmQxZjNlNDNj
MTM1MTllZjg4MWQ2YjczYjE1ZGFlMjYwYTAxZWI0YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAyMS0wOS0xNiAgQWxleCBDaHJpc3RlbnNlbiAgPGFj
aHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZv
ciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAg
ICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6Cisg
ICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5B
dXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAg
ICAqIFdlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dl
YkRvY3VtZW50TG9hZGVyTWFjLm1tOgorICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6Omlu
Y3JlYXNlTG9hZENvdW50KToKKyAgICAgICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFz
ZUxvYWRDb3VudCk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAy
MS0wOS0xNCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJk
ZW5pbmddIFZhbGlkYXRlIElEQlZhbHVlJ3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1
dE9yQWRkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRleCA4NmYyMGMyYmZjNmY3NjY3
NzE3ZTg2YTU5NDdmZTJmNmQzZWMzMGFjLi5jYzBkODExM2NlMjdjZGFjZmJmMTM5MjVkMjBiZThh
MmEyNjg0ODRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAK
KzIwMjEtMDktMTYgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1
ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVS
ZXNwb25zZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlQ29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91
bGRDYWNoZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oOgorCiAyMDIxLTA5LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+
CiAKICAgICAgICAgW0hhcmRlbmluZ10gVmFsaWRhdGUgSURCVmFsdWUncyBibG9iIHBhdGhzIGlu
IFdlYklEQlNlcnZlcjo6cHV0T3JBZGQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9mZXRjaC9GZXRjaExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNo
L0ZldGNoTG9hZGVyLmNwcAppbmRleCA4NmY1MzQ3ZmQ5MTMzZGMwZWFiMzViZGVlYzM2ZTZiMzkw
YjlmMmU3Li42Y2JkMWY0OTNkNDgwN2M1MzJjMjgxM2VmZTE3ZmM5MDE1OTVmNzQyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcApAQCAtMTQyLDcgKzE0
Miw3IEBAIFJlZlB0cjxTaGFyZWRCdWZmZXI+IEZldGNoTG9hZGVyOjpzdGFydFN0cmVhbWluZygp
CiAgICAgcmV0dXJuIGZpcnN0Q2h1bms7CiB9CiAKLXZvaWQgRmV0Y2hMb2FkZXI6OmRpZFJlY2Vp
dmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkKK3ZvaWQgRmV0Y2hMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIG1fY2xp
ZW50LmRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9CkBAIC0xNTYsNyArMTU2LDcgQEAg
dm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCogdmFsdWUsIGlu
dCBzaXplKQogICAgIG1fY29uc3VtZXItPmFwcGVuZCh2YWx1ZSwgc2l6ZSk7CiB9CiAKLXZvaWQg
RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgRmV0Y2hM
b2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAg
IG1fY2xpZW50LmRpZFN1Y2NlZWQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuaAppbmRleCBmMzE0YTA1ZmNmYWM2MTdjM2NiZDMyYmE5MDNmN2NmMjAxYjlm
ZTQ1Li40MDcyOGQyNTdlODQzYzQxMTQ4NmZkNmU0MzgwNzA0NDMxYWNmY2EyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCkBAIC01Nyw5ICs1Nyw5IEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50IEFQSS4KLSAg
ICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAgICAgdm9pZCBk
aWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50KSBmaW5hbDsKLSAgICB2b2lkIGRpZEZp
bmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAgICAgdm9pZCBkaWRGYWlsKGNv
bnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxZGIxYzY2MTYyOThm
MTdmOWMxOWE5NTk1ZDY1ZjYyNWQ1MzRhNmJkLi40YjIzNzcwZTA2NjAyOGNlN2UyNzliNmVmMDkz
YWNkMDQyODRiOWY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0yMDEwLDYgKzIwMTAsNyBAQAogCQk1QjMwNjk1RTE4QjNEMzQ1
MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUIzMDY5NUIxOEIzRDM0NTAwOTlENUU4IC8qIFdlYkdMRHJh
d0J1ZmZlcnMuaCAqLzsgfTsKIAkJNUI0NjY1NjMyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbGlu
Z0VmZmVjdHNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1QjQ2NjU1RjI1RDE0QzA5MDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0Nv
bnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk1QjQ2NjU2NDI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsU25hcEFuaW1hdG9yU3RhdGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTYw
MjVEMTRDMEEwMDBDRkUxNCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDMUIxRDNGMjZGMzk3ODAw
MDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk1QzJCMUFFQzIyMzk3RUJDMDBCOTFDRjcgLyogUmVzb3VyY2VS
ZXNwb25zZUNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTFGNzhEMEIxQzI1NDIyQzAwMjQ1NDQ2IC8qIFJlc291cmNlUmVzcG9uc2VDb2NvYS5t
bSAqLzsgfTsKIAkJNUM0MzA0QjExOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNoYWRlclRleHR1cmVM
T0QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNDMw
NEFFMTkxQUM5MDgwMDBFMkJDMCAvKiBFWFRTaGFkZXJUZXh0dXJlTE9ELmggKi87IH07CiAJCTVD
NDMwNEI2MTkxQUVGNDYwMDBFMkJDMCAvKiBKU0VYVFNoYWRlclRleHR1cmVMT0QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNDMwNEI0MTkxQUVGNDYw
MDBFMkJDMCAvKiBKU0VYVFNoYWRlclRleHR1cmVMT0QuaCAqLzsgfTsKQEAgLTk3NTQsNiArOTc1
NSw3IEBACiAJCTVDMUIxRDI0MjZGMTVCMUEwMDg4MkRBMiAvKiBTaGFyZWRXb3JrZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVkV29ya2VyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTVDMUIxRDI1MjZGMTg4RDgwMDg4MkRBMiAvKiBXb3JrZXJPcHRp
b25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXb3JrZXJPcHRpb25zLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjYyNkYxOEE0QjAwODgyREEyIC8qIFdvcmtl
ck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzFCMUQzRDI2RjM5NzdGMDA4ODJE
QTIgLyogUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1QzJFQkUwMTI1NzcxOTg5MDBENTVCMDUgLyogU2VyaWFsaXplZE5GQS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJpYWxpemVkTkZBLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAzMjU3NzFBNEMwMEQ1NUIwNSAvKiBTZXJpYWxp
emVkTkZBLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcmlhbGl6
ZWRORkEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzM5MzA1RDFBQTBGNkE5
MDAyOUM4MTYgLyogREZBQnl0ZWNvZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gREZBQnl0ZWNvZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI3NzMzLDYg
KzI3NzM1LDcgQEAKIAkJCQk3QzJGQTYxMDFFQTk1QTMyMDBBMDMxMDggLyogUmVzb3VyY2VDcnlw
dG9ncmFwaGljRGlnZXN0LmggKi8sCiAJCQkJOTNFMjI3REUwQUY1ODlBRDAwRDQ4MzI0IC8qIFJl
c291cmNlTG9hZGVyLmNwcCAqLywKIAkJCQk2NTZEMzcyNzBBREJBNURFMDBBNDU1NEQgLyogUmVz
b3VyY2VMb2FkZXIuaCAqLywKKwkJCQk1QzFCMUQzRDI2RjM5NzdGMDA4ODJEQTIgLyogUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLmggKi8sCiAJCQkJRDBBM0E3MzAxNDA1QTM5ODAwRkI4RUQzIC8q
IFJlc291cmNlTG9hZGVyT3B0aW9ucy5oICovLAogCQkJCTUxQUY1MDM1MTZGMTAwRjYwMDk1QjJF
OCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggKi8sCiAJCQkJNTFFRTdCMzkxQUE1MTIzMTAwRjky
QjIxIC8qIFJlc291cmNlTG9hZEluZm8uY3BwICovLApAQCAtMzQ2ODMsNiArMzQ2ODYsNyBAQAog
CQkJCTUxNEM3NjdBMENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUNsaWVudC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTE0Qzc2N0IwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFu
ZGxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NkQzNzNGMEFEQkE1REUwMEE0NTU0
RCAvKiBSZXNvdXJjZUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUMxQjFEM0YyNkYzOTc4
MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRDBBM0E3MzExNDA1QTM5ODAwRkI4RUQzIC8qIFJlc291cmNlTG9hZGVyT3B0aW9ucy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTFBRjUwMzYxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9h
ZGVyVHlwZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxRUU3QjM4MUFBNTBCMDUwMEY5MkIyMSAv
KiBSZXNvdXJjZUxvYWRJbmZvLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgKaW5kZXggNzZkMTRk
YWZhYWFkMTIyOWJlZTAzZWI3MTI5NjJiMGFiNjNhMDViNS4uOTYzOTBhMDgwZTYxMTQ5ZGMxNmNi
ODZlYjlhOTA4ZWFiMGUxOTZiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgKQEAgLTY1LDcgKzY1LDcgQEAgcHVibGlj
OgogcHJpdmF0ZToKICAgICBXb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIoTW9kdWxlU2NyaXB0TG9h
ZGVyQ2xpZW50JiwgRGVmZXJyZWRQcm9taXNlJiwgV29ya2VyU2NyaXB0RmV0Y2hlciYsIFJlZlB0
cjxNb2R1bGVGZXRjaFBhcmFtZXRlcnM+JiYpOwogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsIHsgfQorICAg
IHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsIHsgfQogICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBm
aW5hbDsKIAogICAgIHZvaWQgbm90aWZ5Q2xpZW50RmluaXNoZWQoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCmluZGV4IDE4ODA2MjBlZGYwYzYxZDU1MzlmMWVhZDY0NTBmZDc5OGE2YjMwMDguLjU2
ZjNmODYxYWVlYTBmZWY1N2IyYzljMTI5ZjU4ZGI4MGUxODc1ODIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmNwcApAQCAtMzgzNywxMiArMzgzNywxMiBAQCB2b2lkIERvY3VtZW50Ojpwcm9jZXNzTWV0
YUh0dHBFcXVpdihjb25zdCBTdHJpbmcmIGVxdWl2LCBjb25zdCBTdHJpbmcmIGNvbnRlbnQsCiAg
ICAgY2FzZSBIVFRQSGVhZGVyTmFtZTo6WEZyYW1lT3B0aW9uczoKICAgICAgICAgaWYgKGZyYW1l
KSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIgPSBmcmFtZS0+bG9hZGVy
KCk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyID0gMDsKKyAg
ICAgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllcjsKICAg
ICAgICAgICAgIGlmIChmcmFtZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpICYmIGZyYW1l
TG9hZGVyLmFjdGl2ZURvY3VtZW50TG9hZGVyKCktPm1haW5SZXNvdXJjZUxvYWRlcigpKQogICAg
ICAgICAgICAgICAgIHJlcXVlc3RJZGVudGlmaWVyID0gZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1l
bnRMb2FkZXIoKS0+bWFpblJlc291cmNlTG9hZGVyKCktPmlkZW50aWZpZXIoKTsKIAogICAgICAg
ICAgICAgU3RyaW5nIG1lc3NhZ2UgPSAiVGhlIFgtRnJhbWUtT3B0aW9uICciICsgY29udGVudCAr
ICInIHN1cHBsaWVkIGluIGEgPG1ldGE+IGVsZW1lbnQgd2FzIGlnbm9yZWQuIFgtRnJhbWUtT3B0
aW9ucyBtYXkgb25seSBiZSBwcm92aWRlZCBieSBhbiBIVFRQIGhlYWRlciBzZW50IHdpdGggdGhl
IGRvY3VtZW50LiI7Ci0gICAgICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgcmVxdWVzdElkZW50aWZp
ZXIpOworICAgICAgICAgICAgYWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJp
dHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUlu
dDY0KCkpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcAppbmRleCA0NDNjNTQ5YzE1YTU3MWViM2I1ZTQ4NjRh
Yjc5NTNiMzQzMjg2NWEyLi5kY2M2MTNiODVkOGIxZWZjNGM4OGFlNzBhNThkMjYxNWM3ZWI5NDk2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5jcHAKQEAgLTEy
Niw3ICsxMjYsNyBAQCB2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmNsZWFudXAoKQogICAgIH0KIH0K
IAotdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIEZpbGVSZWFkZXJMb2Fk
ZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVz
Q29kZSgpICE9IDIwMCkgewogICAgICAgICBmYWlsZWQoaHR0cFN0YXR1c0NvZGVUb0Vycm9yQ29k
ZShyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKSk7CkBAIC0yMTUsNyArMjE1LDcgQEAgdm9pZCBG
aWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQg
ZGF0YUxlbmd0aCkKICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRhKCk7CiB9CiAKLXZv
aWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9p
ZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllcikKIHsKICAgICBpZiAobV92YXJpYWJsZUxlbmd0aCAmJiBtX3RvdGFsQnl0ZXMgPiBtX2J5
dGVzTG9hZGVkKSB7CiAgICAgICAgIG1fcmF3RGF0YSA9IG1fcmF3RGF0YS0+c2xpY2UoMCwgbV9i
eXRlc0xvYWRlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFk
ZXJMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCmlu
ZGV4IDljYmI5YjYxMTFhNzE2MjcxM2RkNWRjY2U3ZjA1M2VlYzA4NTY4ZGQuLjk2ODQyNzkwM2Jk
ZTk1MDc1NWU3OGI3ZWY1MDZjMWM4M2NmOGJhZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVJlYWRlckxvYWRlci5oCkBAIC02OSw5ICs2OSw5IEBAIHB1YmxpYzoKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIGNhbmNlbCgpOwogCiAgICAgLy8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAot
ICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAg
ICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQpIG92ZXJyaWRlOwotICAg
IHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAg
ICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCiAgICAgU3Ry
aW5nIHN0cmluZ1Jlc3VsdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCBmZTIwNmFlYTM1ZTY3OTMzZTIwMTlm
YzVhZjFlOTNhZmRhMGUzODM3Li5mOTFkNTUxYjNmMTAzNjAwNTc5NTU3NjQ4MmMyNjg4NDBmODhh
NjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uLmNwcApAQCAtNTc1LDEzICs1NzUsMTMgQEAgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmFwcGx5RW11bGF0ZWRNZWRpYUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYg
aW5zdHIKICAgICAgICAgcGFnZUFnZW50LT5hcHBseUVtdWxhdGVkTWVkaWEobWVkaWEpOwogfQog
Ci12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVz
b3VyY2UqIGNhY2hlZFJlc291cmNlKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Ondp
bGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50
cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQog
ewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJs
ZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3Qo
aWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlLCBjYWNoZWRSZXNv
dXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVl
c3RPZlR5cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2FkVHlwZSkKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
IGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRU
eXBlIGxvYWRUeXBlKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50
aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT53
aWxsU2VuZFJlcXVlc3RPZlR5cGUoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBsb2FkVHlw
ZSk7CkBAIC01OTYsNyArNTk2LDcgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRp
ZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZUltcGwoSW5zdHJ1bWVudGluZ0EKICAgICAgICAg
bmV0d29ya0FnZW50LT5kaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUobG9hZGVyLCAqY2Fj
aGVkUmVzb3VyY2UpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVj
ZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRp
bmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNv
dXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50
cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlciog
cmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKExJS0VMWSghaW5zdHJ1bWVudGluZ0FnZW50cy5p
bnNwZWN0b3JFbnZpcm9ubWVudCgpLmRldmVsb3BlckV4dHJhc0VuYWJsZWQoKSkpCiAgICAgICAg
IHJldHVybjsKQEAgLTYwNywyNSArNjA3LDI1IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50CiAg
ICAgICAgIGNvbnNvbGVBZ2VudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3Bv
bnNlKTsgLy8gVGhpcyBzaG91bGQgY29tZSBBRlRFUiByZXNvdXJjZSBub3RpZmljYXRpb24sIGZy
b250LWVuZCByZWxpZXMgb24gdGhpcy4KIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25z
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBp
bnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29y
a0FnZW50LT5kaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKGlkZW50aWZpZXIsIGRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcik7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGlu
Z0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQordm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
IHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFi
bGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+ZGlkUmVjZWl2ZURhdGEo
aWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQog
ewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJs
ZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRGaW5pc2hMb2FkaW5n
KGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7
CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBl
cnJvcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChMSUtFTFkoIWluc3RydW1lbnRpbmdBZ2VudHMu
aW5zcGVjdG9yRW52aXJvbm1lbnQoKS5kZXZlbG9wZXJFeHRyYXNFbmFibGVkKCkpKQogICAgICAg
ICByZXR1cm47CkBAIC02NDgsNyArNjQ4LDcgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJgogICAg
ICAgICBuZXR3b3JrQWdlbnQtPmRpZExvYWRYSFJTeW5jaHJvbm91c2x5KCk7CiB9CiAKLXZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0Fn
ZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYg
c291cmNlU3RyaW5nKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50
aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5z
ZXRJbml0aWFsU2NyaXB0Q29udGVudChpZGVudGlmaWVyLCBzb3VyY2VTdHJpbmcpOwpAQCAtNjYw
LDcgKzY2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRFeGVjdXRp
b25CbG9ja2VkQnlDU1BJbXBsKEluc3RydW1lbnRpbmdBZ2VuCiAgICAgICAgIHdlYkRlYnVnZ2Vy
QWdlbnQtPnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRCeUNTUChkaXJlY3RpdmVUZXh0KTsKIH0KIAot
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUlt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVT
Y3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50
cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKGF1dG8q
IG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgp
KQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShpZGVudGlm
aWVyKTsKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
aW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bQogICAgICAg
ICBuZXR3b3JrQWdlbnQtPmludGVyY2VwdFJlcXVlc3QobG9hZGVyLCBXVEZNb3ZlKGhhbmRsZXIp
KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNl
cHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBpZiAoYXV0byog
bmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkp
CiAgICAgICAgIG5ldHdvcmtBZ2VudC0+aW50ZXJjZXB0UmVzcG9uc2UocmVzcG9uc2UsIGlkZW50
aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCmluZGV4IDMxZjA1YzUwZjgwNWRiNTc5Yjhj
OTMwYmM5MGI5ZjYxYTkyZmFjNjguLmM2NDZlMzEzMWM5MWFhOTI0MjYxMGJhY2M4NmY1YmMzOTA4
MmY4MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uLmgKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb25QdWJsaWMuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VMb2FkZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUgIldlYkFuaW1hdGlvbi5oIgogI2luY2x1ZGUg
Ildvcmtlckluc3BlY3RvclByb3h5LmgiCkBAIC0xODQsMzQgKzE4NSwzNCBAQCBwdWJsaWM6CiAg
ICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRPdmVycmlkZShGcmFtZSYsIFN0cmluZyYpOwog
ICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0ZWRNZWRpYShGcmFtZSYsIFN0cmluZyYpOwogCi0g
ICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KEZyYW1lKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CisgICAg
c3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KEZyYW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CiAgICAgc3Rh
dGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFBhZ2UmLCBEb2N1bWVudExv
YWRlciosIENhY2hlZFJlc291cmNlKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291
cmNlUmVzcG9uc2UoRnJhbWUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3Rh
dGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lk
IGRpZFJlY2VpdmVEYXRhKEZyYW1lKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAg
ICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291
cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmcoRnJhbWUqLCBEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOwotCi0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEds
b2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmKTsK
LSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmts
ZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBk
YXRhLCBpbnQgZGF0YUxlbmd0aCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhX
b3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJik7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmco
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VS
ZXNwb25zZShGcmFtZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlciYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgc3RhdGljIHZvaWQgZGlk
UmVjZWl2ZURhdGEoRnJhbWUqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4
X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHN0
YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VM
b2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhGcmFtZSosIERvY3VtZW50
TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7
CisKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFs
U2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYpOworICAg
IHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEds
b2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xv
YmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEs
IGludCBkYXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhXb3Jr
ZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYpOwogCiAgICAgLy8gU29tZSBuZXR3b3JrIHJlcXVlc3RzIGRvIG5vdCBn
byB0aHJvdWdoIHRoZSBub3JtYWwgbmV0d29yayBsb2FkaW5nIHBhdGguCiAgICAgLy8gVGhlc2Ug
bmV0d29yayByZXF1ZXN0cyBoYXZlIHRvIGlzc3VlIHRoZWlyIG93biB3aWxsU2VuZFJlcXVlc3Qg
LyBkaWRSZWNlaXZlUmVzcG9uc2UgLyBkaWRGaW5pc2hMb2FkaW5nIC8gZGlkRmFpbExvYWRpbmcK
ICAgICAvLyBpbnN0cnVtZW50YXRpb24gY2FsbHMuIFNvbWUgb2YgdGhlc2UgbG9hZHMgYXJlIGZv
ciByZXNvdXJjZXMgdGhhdCBsYWNrIGEgQ2FjaGVkUmVzb3VyY2U6OlR5cGUuCiAgICAgZW51bSBj
bGFzcyBMb2FkVHlwZSB7IFBpbmcsIEJlYWNvbiB9OwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5k
UmVxdWVzdE9mVHlwZShGcmFtZSosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2FkVHlwZSk7CisgICAgc3RhdGljIHZvaWQgd2ls
bFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKIAotICAgIHN0YXRpYyB2
b2lkIGNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25zRGVuaWVkKEZyYW1lJiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsK
LSAgICBzdGF0aWMgdm9pZCBjb250aW51ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7Ci0gICAgc3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCBjb250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0Rl
bmllZChGcmFtZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgY29udGludWVXaXRoUG9s
aWN5RG93bmxvYWQoRnJhbWUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVl
V2l0aFBvbGljeUlnbm9yZShGcmFtZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZvaWQgd2ls
bExvYWRYSFJTeW5jaHJvbm91c2x5KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKICAgICBzdGF0
aWMgdm9pZCBkaWRMb2FkWEhSU3luY2hyb25vdXNseShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7
Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOwor
ICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKTsKICAg
ICBzdGF0aWMgdm9pZCBzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCosIGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCk7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsK
ICAgICBzdGF0aWMgdm9pZCBkb21Db250ZW50TG9hZGVkRXZlbnRGaXJlZChGcmFtZSYpOwogICAg
IHN0YXRpYyB2b2lkIGxvYWRFdmVudEZpcmVkKEZyYW1lKik7CiAgICAgc3RhdGljIHZvaWQgZnJh
bWVEZXRhY2hlZEZyb21QYXJlbnQoRnJhbWUmKTsKQEAgLTIzMSw3ICsyMzIsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdChjb25zdCBGcmFtZSYsIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJl
c3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRp
YyB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNw
b25zZShjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0
UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogCiAgICAgc3RhdGljIHZvaWQgYWRk
TWVzc2FnZVRvQ29uc29sZShQYWdlJiwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29s
ZU1lc3NhZ2U+KTsKICAgICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1l
c3NhZ2U+KTsKQEAgLTQwMywyMCArNDA0LDIwIEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQg
YXBwbHlVc2VyQWdlbnRPdmVycmlkZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYp
OwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0ZWRNZWRpYUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYsIFN0cmluZyYpOwogCi0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0
UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7Ci0gICAgc3RhdGljIHZvaWQgd2lsbFNl
bmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsK
LSAgICBzdGF0aWMgdm9pZCBtYXJrUmVzb3VyY2VBc0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNl
bmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CisgICAgc3Rh
dGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVz
dCYsIExvYWRUeXBlKTsKKyAgICBzdGF0aWMgdm9pZCBtYXJrUmVzb3VyY2VBc0NhY2hlZEltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAgICAgc3Rh
dGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlSW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzJiwgRG9jdW1lbnRMb2FkZXIqLCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHN0YXRpYyB2
b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVU
aHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOwotICAgIHN0YXRp
YyB2b2lkIGRpZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50
IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0g
ICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VF
cnJvciYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0
YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1l
bnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRh
LCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9p
ZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYs
IFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmdJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogICAgIHN0YXRpYyB2b2lkIHdpbGxMb2FkWEhS
U3luY2hyb25vdXNseUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lk
IGRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJik7Ci0gICAg
c3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKTsKKyAgICBz
dGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHN0
YXRpYyB2b2lkIHNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRCeUNTUEltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYsIGNvbnN0IFN0cmluZyYgZGlyZWN0aXZlVGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlk
UmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9u
c2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwog
ICAgIHN0YXRpYyB2b2lkIGRvbUNvbnRlbnRMb2FkZWRFdmVudEZpcmVkSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgRnJhbWUmKTsKICAgICBzdGF0aWMgdm9pZCBsb2FkRXZlbnRGaXJlZEltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIEZyYW1lKik7CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRh
Y2hlZEZyb21QYXJlbnRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwpAQCAtNDM2
LDcgKzQzNyw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVx
dWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwog
ICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVy
Y2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlciYsIEZ1
bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lk
IGludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsK
KyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50
cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+KT4mJik7CiAKICAgICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiwgc3RkOjp1bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29s
ZU1lc3NhZ2U+KTsKIApAQCAtMTAzMywyMCArMTAzNCwyMCBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0ZWRNZWRpYShGcmFtZSYgZnJhbWUsIFN0cmlu
ZyYgbQogICAgICAgICBhcHBseUVtdWxhdGVkTWVkaWFJbXBsKCphZ2VudHMsIG1lZGlhKTsKIH0K
IAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3Qo
RnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQor
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJh
bWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVz
b3VyY2UpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAg
aWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAgICAgICB3
aWxsU2VuZFJlcXVlc3RJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwg
cmVkaXJlY3RSZXNwb25zZSwgY2FjaGVkUmVzb3VyY2UpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdChXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3
aWxsU2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIHdp
bGxTZW5kUmVxdWVzdEltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50
aWZpZXIsIG51bGxwdHIsIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UgeyB9LCBudWxscHRyKTsK
IH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVl
c3RPZlR5cGUoRnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5
cGUpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVz
dE9mVHlwZShGcmFtZSogZnJhbWUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRU
eXBlIGxvYWRUeXBlKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkp
OwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKQEAg
LTEwNTksNzYgKzEwNjAsNzYgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoUGFnZSYgcGFnZSwKICAgICBkaWRMb2Fk
UmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGVJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMocGFnZSksIGxv
YWRlciwgcmVzb3VyY2UpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQoraW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShG
cmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3Vy
Y2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0
cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgcmVzcG9uc2UsIHJlc291cmNlTG9h
ZGVyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNl
aXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2Nv
cGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVS
ZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewogICAgIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChpbnN0
cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgcmVzcG9u
c2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikK
K2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFi
bGVMb2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFk
YWJsZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAg
RkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50
cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmRvY3VtZW50
KCkpKQogICAgICAgICBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlSW1wbCgqYWdl
bnRzLCBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIsIGlkZW50aWZpZXIpOwogfQogICAgIAotaW5s
aW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YShGcmFtZSog
ZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKK2lubGluZSB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURhdGEoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFM
ZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19G
Uk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0Fn
ZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2VpdmVEYXRhSW1wbCgqYWdlbnRzLCBpZGVudGlm
aWVyLCBkYXRhLCBkYXRhTGVuZ3RoLCBlbmNvZGVkRGF0YUxlbmd0aCk7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3Jr
bGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKQoraW5saW5lIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29w
ZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25z
dCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9O
T19GUk9OVEVORFModm9pZCgpKTsKICAgICBkaWRSZWNlaXZlRGF0YUltcGwoaW5zdHJ1bWVudGlu
Z0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGRhdGFM
ZW5ndGgpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZp
bmlzaExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRN
ZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCitpbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9h
ZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFMo
dm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFt
ZSkpCiAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxv
YWRlciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldv
cmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCitpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3Jr
bGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCiB7
CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgZGlkRmluaXNo
TG9hZGluZ0ltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIs
IG51bGxwdHIsIG5ldHdvcmtMb2FkTWV0cmljcywgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoRnJhbWUqIGZyYW1lLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlRXJyb3ImIGVycm9yKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRGYWlsTG9hZGluZyhGcmFtZSogZnJhbWUsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBl
cnJvcikKIHsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFt
ZSkpCiAgICAgICAgIGRpZEZhaWxMb2FkaW5nSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCBsb2Fk
ZXIsIGVycm9yKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCitpbmxp
bmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZhaWxMb2FkaW5nKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGRpZEZhaWxM
b2FkaW5nSW1wbChpbnN0cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwg
bnVsbHB0ciwgZXJyb3IpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25zRGVuaWVkKEZyYW1lJiBmcmFtZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlvbnNEZW5pZWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgLy8gVHJlYXQgdGhlIHNhbWUg
YXMgZGlkUmVjZWl2ZVJlc3BvbnNlLgogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50
aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBs
KCphZ2VudHMsIGlkZW50aWZpZXIsICZsb2FkZXIsIHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAot
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lE
b3dubG9hZChGcmFtZSYgZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlV2l0aFBvbGljeURvd25sb2Fk
KEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2Vp
dmVSZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCAmbG9hZGVyLCByZXNw
b25zZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGlu
dWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNw
b25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkp
CkBAIC0xMTQ5LDcgKzExNTAsNyBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5KFNjcmlwdEV4ZWN1dGlvbkNvbgogICAgICAgICBk
aWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoKmFnZW50cyk7CiB9CiAKLWlubGluZSB2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCYgY29udGV4dCwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVN0cmluZykKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0
SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewogICAg
IEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2Vu
dHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGNvbnRleHQpKQpAQCAtMTE2Myw3ICsxMTY0LDcgQEAg
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9j
a2VkQnlDU1AoU2NyaXB0RXhlY3V0aW8KICAgICAgICAgc2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5
Q1NQSW1wbCgqYWdlbnRzLCBkaXJlY3RpdmVUZXh0KTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQoraW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAg
ICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoY29udGV4dCkpCkBAIC0x
Mjg0LDcgKzEyODUsNyBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Omlu
dGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgRgogICAgICAgICBpbnRlcmNl
cHRSZXF1ZXN0SW1wbCgqYWdlbnRzLCBsb2FkZXIsIFdURk1vdmUoaGFuZGxlcikpOwogfQogCi1p
bmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCitpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1l
JiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBB
U1NFUlQoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzaG91bGRJbnRlcmNlcHRSZXNwb25zZShm
cmFtZSwgcmVzcG9uc2UpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0Fn
ZW50cyhmcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCmluZGV4IDczMTYzMjc4Y2NhMzk5OGY0
ZjAxMjJkNWNiMDU3N2RhNDZhNTA3NDcuLjYxZTRiYzNiYTAxOWVlMjVlNWM4YmMyMjFkZmY2MDc3
ZWRkYjg2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwo
UmVzb3VyY2VMb2FkZXImIGxvCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNl
cHRSZXF1ZXN0KGxvYWRlciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZy
YW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFt
ZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCiB7CiAgICAg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9u
c2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oCmlu
ZGV4IGJmZmM4NzA4MDY0NzY1MzgxMTVlODBmMjBkZGNhNGU4MjIyZTYyOWIuLmY3NjExNGNlOThm
NDJhN2ZmOTA2YTQ4ZDA0MjBiOTYzMDVkMzY5MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmgKQEAgLTQz
LDEzICs0MywxMyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVx
dWVzdChjb25zdCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBi
b29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lKiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2Fk
ZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0
aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAg
c3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwog
CiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlcXVlc3RJbnRlcm5h
bChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29s
IHNob3VsZEludGVyY2VwdFJlc3BvbnNlSW50ZXJuYWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVxdWVzdEludGVybmFs
KFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9pZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4m
Jik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFt
ZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5h
bChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiB9OwogCiBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3VsZEludGVyY2VwdFJlcXVlc3QoY29uc3QgRnJhbWUq
IGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCkBAIC03Niw3ICs3Niw3IEBA
IGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVx
dWVzdChSZXNvdXJjZUxvYWRlciYgbG9hCiAgICAgaW50ZXJjZXB0UmVxdWVzdEludGVybmFsKGxv
YWRlciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUqIGZyYW1lLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8
U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAgIEFTU0VSVChJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3VsZEludGVyY2VwdFJlc3BvbnNlKGZyYW1lLCBy
ZXNwb25zZSkpOwogICAgIGludGVyY2VwdFJlc3BvbnNlSW50ZXJuYWwoKmZyYW1lLCByZXNwb25z
ZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5kbGVyKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5jcHAKaW5kZXgg
Nzk0ODg1MmRkOWE2YmM0MmI0MDExNjk0MWNlMDM0NmMzMmUxNmYyZC4uMzM3NTdiOWUzY2U3ZTMw
NGNiNzFmYjY0ZjMzZTJlZWYwNmFhYjNjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmNwcApAQCAtMTA4LDcg
KzEwOCw3IEBAIHB1YmxpYzoKIAogICAgIH5JbnNwZWN0b3JUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
KCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5z
aWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCisg
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIG1f
bWltZVR5cGUgPSByZXNwb25zZS5taW1lVHlwZSgpOwogICAgICAgICBtX3N0YXR1c0NvZGUgPSBy
ZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpOwpAQCAtMTM1LDcgKzEzNSw3IEBAIHB1YmxpYzoKICAg
ICAgICAgbV9yZXNwb25zZVRleHQuYXBwZW5kKG1fZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGRhdGFM
ZW5ndGgpKTsKICAgICB9CiAKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9u
Zykgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgaWYgKG1fZGVjb2RlcikKICAgICAgICAg
ICAgIG1fcmVzcG9uc2VUZXh0LmFwcGVuZChtX2RlY29kZXItPmZsdXNoKCkpOwpAQCAtNDE2LDcg
KzQxNiw3IEBAIGRvdWJsZSBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OnRpbWVzdGFtcCgpCiAgICAg
cmV0dXJuIG1fZW52aXJvbm1lbnQuZXhlY3V0aW9uU3RvcHdhdGNoKCkuZWxhcHNlZFRpbWUoKS5z
ZWNvbmRzKCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVl
c3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVz
cG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHR5cGUpCit2b2lkIEluc3Bl
Y3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3Rv
clBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHR5cGUpCiB7CiAgICAgaWYgKHJlcXVlc3QuaGlkZGVu
RnJvbUluc3BlY3RvcigpKSB7CiAgICAgICAgIG1faGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLmFk
ZChpZGVudGlmaWVyKTsKQEAgLTQyNiw3ICs0MjYsNyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtB
Z2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
bwogICAgIGRvdWJsZSBzZW5kVGltZXN0YW1wID0gdGltZXN0YW1wKCk7CiAgICAgV2FsbFRpbWUg
d2FsbHRpbWUgPSBXYWxsVGltZTo6bm93KCk7CiAKLSAgICBhdXRvIHJlcXVlc3RJZCA9IElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpOworICAgIGF1dG8gcmVxdWVzdElk
ID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsK
ICAgICBhdXRvIGZyYW1lSWQgPSBmcmFtZUlkZW50aWZpZXIobG9hZGVyKTsKICAgICBhdXRvIGxv
YWRlcklkID0gbG9hZGVySWRlbnRpZmllcihsb2FkZXIpOwogICAgIFN0cmluZyB0YXJnZXRJZCA9
IHJlcXVlc3QuaW5pdGlhdG9ySWRlbnRpZmllcigpOwpAQCAtNDg2LDI0ICs0ODYsMjQgQEAgc3Rh
dGljIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHJlc291cmNlVHlwZUZvckxvYWRU
eXBlKEluc3BlY3Rvckluc3RydW0KICAgICByZXR1cm4gSW5zcGVjdG9yUGFnZUFnZW50OjpPdGhl
clJlc291cmNlOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCit2b2lkIEluc3Bl
Y3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENh
Y2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAgICBpZiAoIWNhY2hlZFJlc291cmNl
ICYmIGxvYWRlcikKICAgICAgICAgY2FjaGVkUmVzb3VyY2UgPSBJbnNwZWN0b3JQYWdlQWdlbnQ6
OmNhY2hlZFJlc291cmNlKGxvYWRlci0+ZnJhbWUoKSwgcmVxdWVzdC51cmwoKSk7CiAgICAgd2ls
bFNlbmRSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25z
ZSwgcmVzb3VyY2VUeXBlRm9yQ2FjaGVkUmVzb3VyY2UoY2FjaGVkUmVzb3VyY2UpKTsKIH0KIAot
dm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OndpbGxTZW5kUmVxdWVzdE9mVHlwZSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkK
K3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlw
ZSBsb2FkVHlwZSkKIHsKICAgICB3aWxsU2VuZFJlcXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCBy
ZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIHJlc291cmNlVHlwZUZvckxvYWRUeXBlKGxvYWRU
eXBlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9h
ZGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJj
ZUxvYWRlcikKIHsKICAgICBpZiAobV9oaWRkZW5SZXF1ZXN0SWRlbnRpZmllcnMuY29udGFpbnMo
aWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVx
dWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2
NCgpKTsKIAogICAgIHN0ZDo6b3B0aW9uYWw8UmVzb3VyY2VSZXNwb25zZT4gcmVhbFJlc3BvbnNl
OwogICAgIGlmIChwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9hZGVyU3RyYXRlZ3koKS0+aGF2ZVBl
cmZvcm1lZFNlY3VyaXR5Q2hlY2tzKHJlc3BvbnNlKSkgewpAQCAtNTc1LDEyICs1NzUsMTIgQEAg
dm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIERvY3VtZW4KICAgICAgICAgZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmll
ciwgbnVsbHB0ciwgY2FjaGVkUmVzb3VyY2UtPmVuY29kZWRTaXplKCksIDApOwogfQogCi12b2lk
IEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRhKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQogewogICAgIGlmIChtX2hpZGRl
blJlcXVlc3RJZGVudGlmaWVycy5jb250YWlucyhpZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6
OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgaWYgKGRhdGEpIHsKICAg
ICAgICAgTmV0d29ya1Jlc291cmNlc0RhdGE6OlJlc291cmNlRGF0YSBjb25zdCogcmVzb3VyY2VE
YXRhID0gbV9yZXNvdXJjZXNEYXRhLT5tYXliZUFkZFJlc291cmNlRGF0YShyZXF1ZXN0SWQsIGRh
dGEsIGRhdGFMZW5ndGgpOwpAQCAtNTk1LDcgKzU5NSw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29y
a0FnZW50OjpkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVp
bnQ4CiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPmRhdGFSZWNlaXZlZChyZXF1ZXN0SWQsIHRp
bWVzdGFtcCgpLCBkYXRhTGVuZ3RoLCBlbmNvZGVkRGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgSW5z
cGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBu
ZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKikKK3ZvaWQgSW5zcGVjdG9yTmV0d29y
a0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqKQogewogICAgIGlmIChtX2hpZGRlblJl
cXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKQEAg
LTYwNiw3ICs2MDYsNyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9h
ZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TAogICAgIGVsc2UKICAgICAg
ICAgZWxhcHNlZEZpbmlzaFRpbWUgPSB0aW1lc3RhbXAoKTsKIAotICAgIFN0cmluZyByZXF1ZXN0
SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJp
bmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50
b1VJbnQ2NCgpKTsKICAgICBpZiAobG9hZGVyICYmIG1fcmVzb3VyY2VzRGF0YS0+cmVzb3VyY2VU
eXBlKHJlcXVlc3RJZCkgPT0gSW5zcGVjdG9yUGFnZUFnZW50OjpEb2N1bWVudFJlc291cmNlKQog
ICAgICAgICBtX3Jlc291cmNlc0RhdGEtPmFkZFJlc291cmNlU2hhcmVkQnVmZmVyKHJlcXVlc3RJ
ZCwgbG9hZGVyLT5mcmFtZUxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VE
YXRhKCksIGxvYWRlci0+ZnJhbWUoKS0+ZG9jdW1lbnQoKS0+ZW5jb2RpbmcoKSk7CiAKQEAgLTYy
OCwxMiArNjI4LDEyIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2Fk
aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMCiAgICAgbV9mcm9udGVuZERp
c3BhdGNoZXItPmxvYWRpbmdGaW5pc2hlZChyZXF1ZXN0SWQsIGVsYXBzZWRGaW5pc2hUaW1lLCBz
b3VyY2VNYXBwaW5nVVJMLCBXVEZNb3ZlKG1ldHJpY3MpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JO
ZXR3b3JrQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIElu
c3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUo
aWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVx
dWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2
NCgpKTsKIAogICAgIGlmIChsb2FkZXIgJiYgbV9yZXNvdXJjZXNEYXRhLT5yZXNvdXJjZVR5cGUo
cmVxdWVzdElkKSA9PSBJbnNwZWN0b3JQYWdlQWdlbnQ6OkRvY3VtZW50UmVzb3VyY2UpIHsKICAg
ICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5mcmFtZSgpOwpAQCAtNjUzLDggKzY1Myw4IEBA
IHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2Fj
aGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlCiAgICAgaWYgKCFsb2FkZXIpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IGxvYWRlci0+ZnJhbWUoKS0+cGFn
ZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgcmVx
dWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllcik7CisgICAg
YXV0byBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwor
ICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVu
dGlmaWVyLnRvVUludDY0KCkpOwogICAgIFByb3RvY29sOjpOZXR3b3JrOjpMb2FkZXJJZCBsb2Fk
ZXJJZCA9IGxvYWRlcklkZW50aWZpZXIobG9hZGVyKTsKICAgICBQcm90b2NvbDo6TmV0d29yazo6
RnJhbWVJZCBmcmFtZUlkID0gZnJhbWVJZGVudGlmaWVyKGxvYWRlcik7CiAKQEAgLTY2OSwyMyAr
NjY5LDIzIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9t
TWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlCiAgICAgbV9mcm9udGVuZERpc3BhdGNo
ZXItPnJlcXVlc3RTZXJ2ZWRGcm9tTWVtb3J5Q2FjaGUocmVxdWVzdElkLCBmcmFtZUlkLCBsb2Fk
ZXJJZCwgbG9hZGVyLT51cmwoKS5zdHJpbmcoKSwgdGltZXN0YW1wKCksIFdURk1vdmUoaW5pdGlh
dG9yT2JqZWN0KSwgYnVpbGRPYmplY3RGb3JDYWNoZWRSZXNvdXJjZSgmcmVzb3VyY2UpKTsKIH0K
IAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpCit2b2lk
IEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6c2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQog
ewotICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VDb250ZW50KElkZW50aWZpZXJzRmFj
dG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBzb3VyY2VTdHJpbmcpOworICAgIG1fcmVzb3Vy
Y2VzRGF0YS0+c2V0UmVzb3VyY2VDb250ZW50KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIudG9VSW50NjQoKSksIHNvdXJjZVN0cmluZyk7CiB9CiAKLXZvaWQgSW5zcGVj
dG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVTY3JpcHRS
ZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKLSAgICBtX3Jl
c291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJ
ZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpTY3JpcHRSZXNvdXJjZSk7CisgICAg
bV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1
ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpTY3JpcHRS
ZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlVGhy
ZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIpCit2b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBk
b2N1bWVudFRocmVhZGFibGVMb2FkZXIpCiB7CiAgICAgU3RyaW5nIGluaXRpYXRvciA9IGRvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlci5vcHRpb25zKCkuaW5pdGlhdG9yOwogICAgIGlmIChpbml0aWF0
b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpLmZldGNoKQotICAgICAgICBt
X3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVl
c3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpGZXRjaFJlc291cmNlKTsKKyAg
ICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5
OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpG
ZXRjaFJlc291cmNlKTsKICAgICBlbHNlIGlmIChpbml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VS
ZXF1ZXN0SW5pdGlhdG9ycygpLnhtbGh0dHByZXF1ZXN0KQotICAgICAgICBtX3Jlc291cmNlc0Rh
dGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlm
aWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpYSFJSZXNvdXJjZSk7CisgICAgICAgIG1fcmVzb3Vy
Y2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlk
ZW50aWZpZXIudG9VSW50NjQoKSksIEluc3BlY3RvclBhZ2VBZ2VudDo6WEhSUmVzb3VyY2UpOwog
fQogCiB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbExvYWRYSFJTeW5jaHJvbm91c2x5
KCkKQEAgLTExMjksNyArMTEyOSw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRl
cmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIEZ1bmN0aW9uPHZvCiAgICAgQVNT
RVJUKG1fZW5hYmxlZCk7CiAgICAgQVNTRVJUKG1faW50ZXJjZXB0aW9uRW5hYmxlZCk7CiAKLSAg
ICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQobG9hZGVy
LmlkZW50aWZpZXIoKSk7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9y
eTo6cmVxdWVzdElkKGxvYWRlci5pZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAgICAgaWYgKG1f
cGVuZGluZ0ludGVyY2VwdFJlcXVlc3RzLmNvbnRhaW5zKHJlcXVlc3RJZCkpIHsKICAgICAgICAg
aGFuZGxlcihsb2FkZXIucmVxdWVzdCgpKTsKICAgICAgICAgcmV0dXJuOwpAQCAtMTEzOCwxMiAr
MTEzOCwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6aW50ZXJjZXB0UmVxdWVzdChS
ZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBGdW5jdGlvbjx2bwogICAgIG1fZnJvbnRlbmREaXNwYXRj
aGVyLT5yZXF1ZXN0SW50ZXJjZXB0ZWQocmVxdWVzdElkLCBidWlsZE9iamVjdEZvclJlc291cmNl
UmVxdWVzdChsb2FkZXIucmVxdWVzdCgpKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0Fn
ZW50OjppbnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQg
SW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAgIEFTU0VSVChtX2VuYWJsZWQpOwogICAgIEFT
U0VSVChtX2ludGVyY2VwdGlvbkVuYWJsZWQpOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1
ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0
KCkpOwogICAgIGlmIChtX3BlbmRpbmdJbnRlcmNlcHRSZXNwb25zZXMuY29udGFpbnMocmVxdWVz
dElkKSkgewogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgaGFuZGxlcihy
ZXNwb25zZSwgbnVsbHB0cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaAppbmRleCA3Y2RjNTg2NWU1OGU5YTlhMzBl
YTI1MjAyNjkyZDRiOWFhNzdiMmQ2Li40YzI1YjNiMmFjZjA5MDJlOGJiOTY3NjRkMGJmOWJhZDM3
ODliMThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3Rvck5ldHdvcmtBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9yTmV0d29ya0FnZW50LmgKQEAgLTk4LDE3ICs5OCwxNyBAQCBwdWJsaWM6CiAgICAg
Ly8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uCiAgICAgdm9pZCB3aWxsUmVjYWxjdWxhdGVTdHls
ZSgpOwogICAgIHZvaWQgZGlkUmVjYWxjdWxhdGVTdHlsZSgpOwotICAgIHZvaWQgd2lsbFNlbmRS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRUeXBlKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgdm9pZCBkaWRSZWNlaXZl
RGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwotICAgIHZvaWQgZGlkRmluaXNoTG9h
ZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICB2b2lkIGRpZEZhaWxMb2Fk
aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNv
dXJjZUVycm9yJik7CisgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CisgICAg
dm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
TG9hZFR5cGUpOworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3Vy
Y2VMb2FkZXIqKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0
YUxlbmd0aCk7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJj
ZUxvYWRlciopOworICAgIHZvaWQgZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKICAgICB2b2lkIGRp
ZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciosIENhY2hlZFJlc291
cmNlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJik7CisgICAgdm9p
ZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJik7CiAgICAgdm9pZCB3aWxsTG9hZFhIUlN5
bmNocm9ub3VzbHkoKTsKICAgICB2b2lkIGRpZExvYWRYSFJTeW5jaHJvbm91c2x5KCk7Ci0gICAg
dm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsK
KyAgICB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpOwogICAgIHZvaWQgd2lsbERlc3Ryb3lDYWNoZWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZSYp
OwogICAgIHZvaWQgZGlkQ3JlYXRlV2ViU29ja2V0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgVVJMJiByZXF1ZXN0VVJMKTsKICAgICB2b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNo
YWtlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpOwpAQCAtMTE4LDEyICsxMTgsMTIgQEAgcHVibGljOgogICAgIHZvaWQgZGlkU2VuZFdlYlNv
Y2tldEZyYW1lKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29ja2V0RnJhbWUm
KTsKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRGcmFtZUVycm9yKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBtYWluRnJhbWVOYXZpZ2F0ZWQo
RG9jdW1lbnRMb2FkZXImKTsKLSAgICB2b2lkIHNldEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHZv
aWQgc2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CiAgICAgdm9pZCBkaWRTY2hlZHVsZVN0eWxlUmVjYWxj
dWxhdGlvbihEb2N1bWVudCYpOwogICAgIGJvb2wgd2lsbEludGVyY2VwdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmKTsKICAgICBib29sIHNob3VsZEludGVyY2VwdFJlcXVlc3QoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0Jik7CiAgICAgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwor
ICAgIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKICAgICB2b2lkIGludGVyY2Vw
dFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVx
dWVzdCYpPiYmKTsKIAogICAgIHZvaWQgc2VhcmNoT3RoZXJSZXF1ZXN0cyhjb25zdCBKU0M6Ollh
cnI6OlJlZ3VsYXJFeHByZXNzaW9uJiwgUmVmPEpTT046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90
b2NvbDo6UGFnZTo6U2VhcmNoUmVzdWx0Pj4mKTsKQEAgLTE0MCw3ICsxNDAsNyBAQCBwcm90ZWN0
ZWQ6CiAgICAgdmlydHVhbCBib29sIHNob3VsZEZvcmNlQnVmZmVyaW5nTmV0d29ya1Jlc291cmNl
RGF0YSgpIGNvbnN0ID0gMDsKIAogcHJpdmF0ZToKLSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdCh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFn
ZUFnZW50OjpSZXNvdXJjZVR5cGUpOworICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6
OlJlc291cmNlVHlwZSk7CiAKICAgICBib29sIHNob3VsZEludGVyY2VwdChVUkwsIEluc3BlY3Rv
cjo6UHJvdG9jb2w6Ok5ldHdvcms6Ok5ldHdvcmtTdGFnZSk7CiAgICAgdm9pZCBjb250aW51ZVBl
bmRpbmdSZXF1ZXN0cygpOwpAQCAtMjI2LDcgKzIyNiw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjp1
bmlxdWVfcHRyPE5ldHdvcmtSZXNvdXJjZXNEYXRhPiBtX3Jlc291cmNlc0RhdGE7CiAKICAgICBI
YXNoTWFwPFN0cmluZywgU3RyaW5nPiBtX2V4dHJhUmVxdWVzdEhlYWRlcnM7Ci0gICAgSGFzaFNl
dDx1bnNpZ25lZCBsb25nPiBtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVyczsKKyAgICBIYXNoU2V0
PFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9oaWRkZW5SZXF1ZXN0SWRlbnRpZmllcnM7CiAK
ICAgICBzdHJ1Y3QgSW50ZXJjZXB0IHsKICAgICAgICAgU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmNwcAppbmRleCA0
OGI5YTcxODUzZjQ0OTRmYmY0N2UzODM4YTg2MzY0NzllNjdkZWIzLi5iZGZmODQzNGRiZWY4YzU0
ODViMTUwNmVkMjA4YTAxYzllY2FkMjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuY3BwCkBAIC02NSwyMiArNjUsMjIgQEAgdm9p
ZCBXZWJDb25zb2xlQWdlbnQ6OmZyYW1lV2luZG93RGlzY2FyZGVkKERPTVdpbmRvdyogd2luZG93
KQogICAgIHN0YXRpY19jYXN0PFdlYkluamVjdGVkU2NyaXB0TWFuYWdlciY+KG1faW5qZWN0ZWRT
Y3JpcHRNYW5hZ2VyKS5kaXNjYXJkSW5qZWN0ZWRTY3JpcHRzRm9yKHdpbmRvdyk7CiB9CiAKLXZv
aWQgV2ViQ29uc29sZUFnZW50OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyByZXF1
ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdl
YkNvbnNvbGVBZ2VudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7
CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwKSB7CiAgICAgICAgIGF1
dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxlZCB0byBsb2FkIHJlc291cmNlOiB0aGUgc2Vy
dmVyIHJlc3BvbmRlZCB3aXRoIGEgc3RhdHVzIG9mICIsIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2Rl
KCksICIgKCIsIFNjcmlwdEFyZ3VtZW50czo6dHJ1bmNhdGVTdHJpbmdGb3JDb25zb2xlTWVzc2Fn
ZShyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKSwgJyknKTsKLSAgICAgICAgYWRkTWVzc2FnZVRv
Q29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3Jr
LCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25z
ZS51cmwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVzdElkZW50aWZpZXIpKTsKKyAg
ICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNz
YWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9y
LCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVz
dElkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAgIH0KIH0KIAotdm9pZCBXZWJDb25zb2xlQWdl
bnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2Fk
aW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8gUmVwb3J0IGZhaWx1cmVzIG9ubHkuCiAgICAg
aWYgKGVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGF1dG8g
bWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxlZCB0byBsb2FkIHJlc291cmNlIiwgZXJyb3IubG9j
YWxpemVkRGVzY3JpcHRpb24oKS5pc0VtcHR5KCkgPyAiIiA6ICI6ICIsIGVycm9yLmxvY2FsaXpl
ZERlc2NyaXB0aW9uKCkpOwotICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25z
b2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVz
c2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgZXJyb3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAw
LCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmllcikpOworICAgIGFkZE1lc3NhZ2VUb0NvbnNv
bGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVz
c2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgZXJyb3IuZmFpbGlu
Z1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2
NCgpKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5oCmluZGV4IDBiOGYyMGVhYzM0M2I2
NjgxN2FjOWYwZjBjNmM4Y2IyMGM5YmFjN2IuLjkwYzcwOGU5YjgwMTcxMmI2NTk0MDdhZTBjMWQ2
Njg2OGFlYTk0YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
V2ViQ29uc29sZUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9X
ZWJDb25zb2xlQWdlbnQuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlICJJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9JbnNwZWN0b3JDb25zb2xlQWdl
bnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDMsOCArNDQsOCBAQCBwdWJsaWM6CiAK
ICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24KICAgICB2b2lkIGZyYW1lV2luZG93RGlz
Y2FyZGVkKERPTVdpbmRvdyopOwotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2
b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIGRpZEZh
aWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYp
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcAppbmRleCAwYWRjYTcwY2Zh
MTYyOThhN2E2YzliM2YyODZmYWEzZGIyY2RiZTk1Li44YjMxZTE3MzkyYTk3YmI5NmQzNDk3Yjky
OGVkZGEyZTY3Y2NkNmQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NP
cmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jv
c3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcApAQCAtNTgsNyArNTgsNyBAQCBDcm9zc09yaWdp
blByZWZsaWdodENoZWNrZXI6On5Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIoKQogICAgICAg
ICBtX3Jlc291cmNlLT5yZW1vdmVDbGllbnQoKnRoaXMpOwogfQogCi12b2lkIENyb3NzT3JpZ2lu
UHJlZmxpZ2h0Q2hlY2tlcjo6dmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXImIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQg
Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byogZnJhbWUgPSBsb2FkZXIuZG9jdW1lbnQoKS5m
cmFtZSgpOwogICAgIGlmICghZnJhbWUpIHsKQEAgLTE0MSw3ICsxNDEsNyBAQCB2b2lkIENyb3Nz
T3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6ZG9QcmVmbGlnaHQoRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyJiBsb2FkZXIsCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKICAgICBSZWZQdHI8
U2hhcmVkQnVmZmVyPiBkYXRhOwogCi0gICAgdW5zaWduZWQgaWRlbnRpZmllciA9IGxvYWRlci5k
b2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkocHJl
ZmxpZ2h0UmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeTo6Q2Fubm90QXNrQ2xpZW50Rm9y
Q3JlZGVudGlhbHMsIEZldGNoT3B0aW9ucyB7IH0sIHsgfSwgZXJyb3IsIHJlc3BvbnNlLCBkYXRh
KTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBsb2FkZXIuZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2Fk
ZXIoKS5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHByZWZsaWdodFJlcXVlc3QsIENsaWVudENy
ZWRlbnRpYWxQb2xpY3k6OkNhbm5vdEFza0NsaWVudEZvckNyZWRlbnRpYWxzLCBGZXRjaE9wdGlv
bnMgeyB9LCB7IH0sIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CiAKICAgICBpZiAoIWVycm9yLmlz
TnVsbCgpKSB7CiAgICAgICAgIC8vIElmIHRoZSBwcmVmbGlnaHQgd2FzIGNhbmNlbGxlZCBieSB1
bmRlcmx5aW5nIGNvZGUsIGl0IHByb2JhYmx5IG1lYW5zIHRoZSByZXF1ZXN0IHdhcyBibG9ja2Vk
IGR1ZSB0byBzb21lIGFjY2VzcyBjb250cm9sIHBvbGljeS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaAppbmRleCAyYTAzN2NjNGI2
MWU4MWZiZTJmMDNjNzM4NmM5YjhjM2RhZTA5NWNhLi41MzI5ODBkMzU5ZDVkZTdlNzNlYmNhN2Jh
YjEwMTZmYjJlMDcwYWE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NP
cmlnaW5QcmVmbGlnaHRDaGVja2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3Nz
T3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oCkBAIC0zMiw2ICszMiw3IEBACiAKICNpbmNsdWRlICJD
YWNoZWRSYXdSZXNvdXJjZUNsaWVudC5oIgogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlSGFuZGxl
LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VSZXF1ZXN0LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTU3LDcgKzU4LDcgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHJlZGlyZWN0UmVjZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmLCBSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBmaW5hbDsKIAogICAgIHN0YXRpYyB2b2lkIGhh
bmRsZUxvYWRpbmdGYWlsdXJlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVkIGxv
bmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLSAgICBzdGF0aWMgdm9pZCB2YWxpZGF0ZVByZWZs
aWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIFJlc291cmNlUmVxdWVzdCYm
LCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZv
aWQgdmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBS
ZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7CiAKICAgICBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIG1fbG9hZGVyOwog
ICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJhd1Jlc291cmNlPiBtX3Jlc291cmNlOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKaW5kZXggMGQyZDE0MTIyMmRl
NzZmZGFiYWQ2ZTA0ZGY3MjQ2Njc0ZjcwYTY0ZC4uZDNlOWNlYWQ5Y2I3YzgyZTJkOTAyNzA5MWFi
ZWU0OGQ2NWM0ZTQ5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50
TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3Bw
CkBAIC00NjQsOCArNDY0LDggQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5n
KCkKICAgICAgICAgLy8gYmVmb3JlIGNhbGxpbmcgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nIHNv
IHRoYXQgd2UgZG9uJ3QgbGF0ZXIgdHJ5IHRvCiAgICAgICAgIC8vIGNhbmNlbCB0aGUgYWxyZWFk
eS1maW5pc2hlZCBzdWJzdGl0dXRlIGxvYWQuCiAgICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBl
bXB0eU1ldHJpY3M7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7Ci0gICAgICAgIG1faWRlbnRpZmllckZv
ckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSAwOworICAgICAgICBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VM
b2FkZXI7CisgICAgICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIg
PSB7IH07CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hEaWRGaW5p
c2hMb2FkaW5nKHRoaXMsIGlkZW50aWZpZXIsIGVtcHR5TWV0cmljcywgbnVsbHB0cik7CiAgICAg
fQogCkBAIC04ODYsNyArODg2LDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1
YnN0aXR1dGVEYXRhKCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgRE9DVU1FTlRMT0FE
RVJfUkVMRUFTRV9MT0coInN0YXJ0TG9hZGluZ01haW5SZXNvdXJjZTogUmV0dXJuaW5nIHN1YnN0
aXR1dGUgZGF0YSIpOwotICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXIgPSBtX2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigp
OworICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZp
ZXIoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChtX2lkZW50aWZpZXJGb3JMb2Fk
V2l0aG91dFJlc291cmNlTG9hZGVyLCB0aGlzLCBtX3JlcXVlc3QpOwogICAgIGZyYW1lTG9hZGVy
KCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVy
Rm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwgbV9yZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNl
KCksIG51bGxwdHIpOwogCkBAIC05MzksNyArOTM5LDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6
dHJ5TG9hZGluZ1JlZGlyZWN0UmVxdWVzdEZyb21BcHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291
cmMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRp
bmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9p
ZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgUmVmPERvY3VtZW50TG9h
ZGVyPiBwcm90ZWN0ZWRUaGlzIHsgKnRoaXMgfTsKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25zRGVuaWVkKCptX2ZyYW1lLCBpZGVudGlmaWVy
LCAqdGhpcywgcmVzcG9uc2UpOwpAQCAtMTAzNyw3ICsxMDM3LDcgQEAgdm9pZCBEb2N1bWVudExv
YWRlcjo6cmVzcG9uc2VSZWNlaXZlZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
Q29tcGxldGkKICAgICB9CiAKICAgICBBU1NFUlQobV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRS
ZXNvdXJjZUxvYWRlciB8fCBtX21haW5SZXNvdXJjZSk7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRl
bnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRl
bnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyID0gbV9p
ZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxv
YWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOwog
ICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAogICAgIGlmIChtX3N1YnN0aXR1dGVEYXRhLmlzVmFs
aWQoKSB8fCAhcGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmhhdmVQZXJm
b3JtZWRTZWN1cml0eUNoZWNrcyhyZXNwb25zZSkpIHsKQEAgLTEwNTQsNyArMTA1NCw3IEBAIHZv
aWQgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIENvbXBsZXRpCiAgICAgICAgICAgICBpZiAoIWZyYW1lT3B0aW9ucy5pc051
bGwoKSkgewogICAgICAgICAgICAgICAgIGlmIChmcmFtZUxvYWRlcigpLT5zaG91bGRJbnRlcnJ1
cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhmcmFtZU9wdGlvbnMsIHVybCwgaWRlbnRpZmllcikpIHsK
ICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSAiUmVmdXNlZCB0byBkaXNwbGF5
ICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicgaW4gYSBmcmFt
ZSBiZWNhdXNlIGl0IHNldCAnWC1GcmFtZS1PcHRpb25zJyB0byAnIiArIGZyYW1lT3B0aW9ucyAr
ICInLiI7Ci0gICAgICAgICAgICAgICAgICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNv
bGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBt
ZXNzYWdlLCBpZGVudGlmaWVyKTsKKyAgICAgICAgICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1l
bnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VM
ZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgICAgICAg
ICAgICAgICAgIHN0b3BMb2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQ
b2xpY3lEZW5pZWQoaWRlbnRpZmllciwgcmVzcG9uc2UpOwogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgICAgICAgICAgfQpAQCAtMTE4MCwxMCArMTE4MCwxMCBAQCBib29sIERv
Y3VtZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0KCkgY29uc3QKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgaWYgKGF1dG8qIGN1cnJlbnREb2N1bWVudCA9IGZyYW1lKCktPmRvY3Vt
ZW50KCkpIHsKLSAgICAgICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVy
Rm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0
UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOworICAgICAgICBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRX
aXRob3V0UmVzb3VyY2VMb2FkZXIgPyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNl
TG9hZGVyIDogbV9tYWluUmVzb3VyY2UtPmlkZW50aWZpZXIoKTsKICAgICAgICAgQVNTRVJUKGlk
ZW50aWZpZXIpOwogCi0gICAgICAgIGN1cnJlbnREb2N1bWVudC0+YWRkQ29uc29sZU1lc3NhZ2Uo
TWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1ha2VTdHJpbmco
Ik5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRvcCBmcmFtZSB0byBkYXRhIFVSTCAnIiwgbV9yZXNw
b25zZS51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSwgIicuIiksIGlkZW50
aWZpZXIpOworICAgICAgICBjdXJyZW50RG9jdW1lbnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtYWtlU3RyaW5nKCJOb3Qg
YWxsb3dlZCB0byBuYXZpZ2F0ZSB0b3AgZnJhbWUgdG8gZGF0YSBVUkwgJyIsIG1fcmVzcG9uc2Uu
dXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCksICInLiIpLCBpZGVudGlmaWVy
LnRvVUludDY0KCkpOwogICAgIH0KICAgICBET0NVTUVOVExPQURFUl9SRUxFQVNFX0xPRygiY29u
dGludWVBZnRlckNvbnRlbnRQb2xpY3k6IGNhbm5vdCBzaG93IFVSTCIpOwogCkBAIC0yMDE2LDcg
KzIwMTYsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ1N1YnJlc291cmNlcygp
CiAgICAgQVNTRVJUKG1fc3VicmVzb3VyY2VMb2FkZXJzLmlzRW1wdHkoKSk7CiB9CiAKLXZvaWQg
RG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyKiBsb2Fk
ZXIpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxv
YWRlciYgbG9hZGVyKQogewogICAgIC8vIFRoZSBtYWluIHJlc291cmNlJ3MgdW5kZXJseWluZyBS
ZXNvdXJjZUxvYWRlciB3aWxsIGFzayB0byBiZSBhZGRlZCBoZXJlLgogICAgIC8vIEl0IGlzIG11
Y2ggc2ltcGxlciB0byBoYW5kbGUgc3BlY2lhbCBjYXNpbmcgb2YgbWFpbiByZXNvdXJjZSBsb2Fk
cyBpZiB3ZSBkb24ndApAQCAtMjAyNSwxMiArMjAyNSwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgIC8vIGlm
IHdlIGFyZSBqdXN0IHN0YXJ0aW5nIHRoZSBtYWluIHJlc291cmNlIGxvYWQuCiAgICAgaWYgKCFt
X2dvdEZpcnN0Qnl0ZSkKICAgICAgICAgcmV0dXJuOwotICAgIEFTU0VSVChsb2FkZXItPmlkZW50
aWZpZXIoKSk7Ci0gICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVycy5jb250YWlucyhsb2Fk
ZXItPmlkZW50aWZpZXIoKSkpOwotICAgIEFTU0VSVCghbWFpblJlc291cmNlTG9hZGVyKCkgfHwg
bWFpblJlc291cmNlTG9hZGVyKCkgIT0gbG9hZGVyKTsKKyAgICBBU1NFUlQobG9hZGVyLmlkZW50
aWZpZXIoKSk7CisgICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVycy5jb250YWlucyhsb2Fk
ZXIuaWRlbnRpZmllcigpKSk7CisgICAgQVNTRVJUKCFtYWluUmVzb3VyY2VMb2FkZXIoKSB8fCBt
YWluUmVzb3VyY2VMb2FkZXIoKSAhPSAmbG9hZGVyKTsKIAogICAgIC8vIEFwcGxpY2F0aW9uIENh
Y2hlIGxvYWRlcnMgYXJlIGhhbmRsZWQgYnkgdGhlaXIgQXBwbGljYXRpb25DYWNoZUdyb3VwIGRp
cmVjdGx5LgotICAgIGlmIChsb2FkZXItPm9wdGlvbnMoKS5hcHBsaWNhdGlvbkNhY2hlTW9kZSA9
PSBBcHBsaWNhdGlvbkNhY2hlTW9kZTo6QnlwYXNzKQorICAgIGlmIChsb2FkZXIub3B0aW9ucygp
LmFwcGxpY2F0aW9uQ2FjaGVNb2RlID09IEFwcGxpY2F0aW9uQ2FjaGVNb2RlOjpCeXBhc3MpCiAg
ICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9FTkFCTEVECkBAIC0yMDQwLDcgKzIwNDAsNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRl
ciogbG9hZGVyKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgRG9jdW1lbnQ6OkFi
b3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6IHsKICAgICAgICAgICAgIC8vIEEgcGFnZSBhYm91
dCB0byBlbnRlciB0aGUgQmFja0ZvcndhcmRDYWNoZSBzaG91bGQgb25seSBiZSBhYmxlIHRvIHN0
YXJ0IHBpbmcgbG9hZHMuCi0gICAgICAgICAgICBhdXRvKiBjYWNoZWRSZXNvdXJjZSA9IGRvd25j
YXN0PFN1YnJlc291cmNlTG9hZGVyPihsb2FkZXIpLT5jYWNoZWRSZXNvdXJjZSgpOworICAgICAg
ICAgICAgYXV0byogY2FjaGVkUmVzb3VyY2UgPSBkb3duY2FzdDxTdWJyZXNvdXJjZUxvYWRlcj4o
bG9hZGVyKS5jYWNoZWRSZXNvdXJjZSgpOwogICAgICAgICAgICAgQVNTRVJUKGNhY2hlZFJlc291
cmNlICYmIChDYWNoZWRSZXNvdXJjZTo6c2hvdWxkVXNlUGluZ0xvYWQoY2FjaGVkUmVzb3VyY2Ut
PnR5cGUoKSkgfHwgY2FjaGVkUmVzb3VyY2UtPm9wdGlvbnMoKS5rZWVwQWxpdmUpKTsKICAgICAg
ICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0yMDUyLDcgKzIwNTIsNyBAQCB2b2lkIERvY3Vt
ZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQog
ICAgIH0KICNlbmRpZgogCi0gICAgbV9zdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGxvYWRlci0+aWRl
bnRpZmllcigpLCBsb2FkZXIpOworICAgIG1fc3VicmVzb3VyY2VMb2FkZXJzLmFkZChsb2FkZXIu
aWRlbnRpZmllcigpLCAmbG9hZGVyKTsKIH0KIAogdm9pZCBEb2N1bWVudExvYWRlcjo6cmVtb3Zl
U3VicmVzb3VyY2VMb2FkZXIoTG9hZENvbXBsZXRpb25UeXBlIHR5cGUsIFJlc291cmNlTG9hZGVy
KiBsb2FkZXIpCkBAIC0yMjc4LDcgKzIyNzgsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpsb2Fk
TWFpblJlc291cmNlKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiAjZW5kaWYKIAogICAgIGlm
ICghbWFpblJlc291cmNlTG9hZGVyKCkpIHsKLSAgICAgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdp
dGhvdXRSZXNvdXJjZUxvYWRlciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVV
bmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVz
b3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAg
ICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QobV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwgdGhpcywgbWFp
blJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSk7CiAgICAgICAgIGZyYW1lTG9hZGVy
KCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVy
Rm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwgbWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJj
ZVJlcXVlc3QoKSwgUmVzb3VyY2VSZXNwb25zZSgpLCBudWxscHRyKTsKICAgICB9CkBAIC0yMzQ0
LDEzICsyMzQ0LDEzIEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmNsZWFyTWFpblJlc291cmNlKCkK
ICAgICB1bnJlZ2lzdGVyVGVtcG9yYXJ5U2VydmljZVdvcmtlckNsaWVudCgpOwogfQogCi12b2lk
IERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQo
UmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNl
TG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewot
ICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IGxvYWRlci0+aWRlbnRpZmllcigpOworICAg
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyID0gbG9hZGVyLmlkZW50aWZpZXIo
KTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKLSAgICBpZiAoIW1fbXVsdGlwYXJ0U3VicmVz
b3VyY2VMb2FkZXJzLmFkZChpZGVudGlmaWVyLCBsb2FkZXIpLmlzTmV3RW50cnkpIHsKLSAgICAg
ICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKSA9
PSBsb2FkZXIpOworICAgIGlmICghbV9tdWx0aXBhcnRTdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGlk
ZW50aWZpZXIsICZsb2FkZXIpLmlzTmV3RW50cnkpIHsKKyAgICAgICAgQVNTRVJUKG1fbXVsdGlw
YXJ0U3VicmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKSA9PSAmbG9hZGVyKTsKICAgICAg
ICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKSk7CiAg
ICAgfSBlbHNlIHsKICAgICAgICAgQVNTRVJUKG1fc3VicmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXgg
YTczMTM5MjZhY2RhNTkyMThiMDIxNTExMGI5NzNhNTNmYTRiYjJmOS4uOGVlMTRhMjRkNTdiMzRj
YzdjYmVhNGNkYzc3MzEwMjcyNmQyZTVkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50
TG9hZGVyLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNpbmNsdWRlICJMaW5rSWNvbi5oIgogI2luY2x1
ZGUgIk5hdmlnYXRpb25BY3Rpb24uaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCisjaW5j
bHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VSZXNwb25zZS5oIgpAQCAtODksNyArOTAsNyBAQCBjbGFzcyBTdWJzdGl0dXRlUmVzb3Vy
Y2U7CiAKIGVudW0gY2xhc3MgU2hvdWxkQ29udGludWU7CiAKLXVzaW5nIFJlc291cmNlTG9hZGVy
TWFwID0gSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKK3Vz
aW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBlbnVtIGNsYXNzIEF1dG9wbGF5UG9saWN5IDog
dWludDhfdCB7CiAgICAgRGVmYXVsdCwgLy8gVXNlcyBwb2xpY2llcyBzcGVjaWZpZWQgaW4gZG9j
dW1lbnQgc2V0dGluZ3MuCkBAIC0yOTUsNyArMjk2LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBz
dG9wTG9hZGluZ1BsdWdJbnMoKTsKICAgICB2b2lkIHN0b3BMb2FkaW5nU3VicmVzb3VyY2VzKCk7
Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09y
Q29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc3RvcExvYWRp
bmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKIAogICAgIGJvb2wg
dXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlckNvbnRl
bnRFeHRlbnNpb25zRW5hYmxlZDsgfQogICAgIHZvaWQgc2V0VXNlckNvbnRlbnRFeHRlbnNpb25z
RW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV91c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkID0g
ZW5hYmxlZDsgfQpAQCAtMzM4LDEyICszMzksMTIgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQ
T1JUIE1vdXNlRXZlbnRQb2xpY3kgbW91c2VFdmVudFBvbGljeSgpIGNvbnN0OwogICAgIHZvaWQg
c2V0TW91c2VFdmVudFBvbGljeShNb3VzZUV2ZW50UG9saWN5IHBvbGljeSkgeyBtX21vdXNlRXZl
bnRQb2xpY3kgPSBwb2xpY3k7IH0KIAotICAgIHZvaWQgYWRkU3VicmVzb3VyY2VMb2FkZXIoUmVz
b3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGFkZFN1YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9h
ZGVyJik7CiAgICAgdm9pZCByZW1vdmVTdWJyZXNvdXJjZUxvYWRlcihMb2FkQ29tcGxldGlvblR5
cGUsIFJlc291cmNlTG9hZGVyKik7CiAgICAgdm9pZCBhZGRQbHVnSW5TdHJlYW1Mb2FkZXIoUmVz
b3VyY2VMb2FkZXImKTsKICAgICB2b2lkIHJlbW92ZVBsdWdJblN0cmVhbUxvYWRlcihSZXNvdXJj
ZUxvYWRlciYpOwogCi0gICAgdm9pZCBzdWJyZXNvdXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09u
ZVBhcnQoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIHN1YnJlc291cmNlTG9hZGVyRmluaXNo
ZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRlciYpOwogCiAgICAgdm9pZCBzZXREZWZlck1h
aW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIpIHsgbV9kZWZlck1haW5SZXNvdXJjZURhdGFM
b2FkID0gZGVmZXI7IH0KICAgICAKQEAgLTYxMCw3ICs2MTEsNyBAQCBwcml2YXRlOgogICAgIGJv
b2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFsc2UgfTsKICAgICBEb2N1bWVudExvYWRUaW1p
bmcgbV9sb2FkVGltaW5nOwogCi0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2Fk
V2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOwogCiAgICAgRGF0YUxv
YWRUb2tlbiBtX2RhdGFMb2FkVG9rZW47CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9s
aWN5IHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggNWE5YTU3ZTkzOTA1MjhmZDM1OTliMDdkYjYwYWMxNWIw
MDY2Yzk3MC4uMDhhNDM5YzkwZWE1NjJkZTZlOTg4NWMwNzgxMzRmM2RhYTQ4YTBhNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAK
QEAgLTM5OSw3ICszOTksNyBAQCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cmVzcG9u
c2VSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0CiAgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKCk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX2NsaWVudCk7CiAgICAg
QVNTRVJUKHJlc3BvbnNlLnR5cGUoKSAhPSBSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpFcnJvcik7
CkBAIC00MzMsNyArNDMzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRhdGFS
ZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIGNvbnN0IHVpbnQKICAgICBkaWRSZWNl
aXZlRGF0YShtX3Jlc291cmNlLT5pZGVudGlmaWVyKCksIGRhdGEsIGRhdGFMZW5ndGgpOwogfQog
Ci12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQg
bG9uZywgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit2b2lkIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKIHsKICAgICBBU1NFUlQobV9j
bGllbnQpOwogCkBAIC00NjksNyArNDY5LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2Fk
ZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiByZXNvdXJjZSwgY29uc3QgTmUKICAg
ICAgICAgZGlkRmluaXNoTG9hZGluZyhtX3Jlc291cmNlLT5pZGVudGlmaWVyKCkpOwogfQogCi12
b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNo
TG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBBU1NF
UlQobV9jbGllbnQpOwogCkBAIC01MDMsNyArNTAzLDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAg
IG1fY2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlkZW50aWZpZXIpOwogfQogCi12b2lkIERvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZUVycm9yJiBlcnJvcikKK3ZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGYWlsKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAg
ICAgQVNTRVJUKG1fY2xpZW50KTsKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCkBAIC01MzUs
NyArNTM1LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodFN1Y2Nl
c3MoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkKICAgICBsb2FkUmVxdWVzdChXVEZNb3ZlKGFj
dHVhbFJlcXVlc3QpLCBTZWN1cml0eUNoZWNrUG9saWN5OjpTa2lwU2VjdXJpdHlDaGVjayk7CiB9
CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpwcmVmbGlnaHRGYWlsdXJlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cHJlZmxpZ2h0RmFpbHVyZShSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAg
bV9wcmVmbGlnaHRDaGVja2VyID0gc3RkOjpudWxsb3B0OwogCkBAIC01OTgsNyArNTk4LDcgQEAg
dm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KFJlc291cmNlUmVxdWVz
dCYmIHJlcXVlc3QsIFNlY3VyaXR5Q2gKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwog
ICAgIFJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsK
LSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBzdGQ6Om51bWVyaWNfbGltaXRzPHVuc2ln
bmVkIGxvbmc+OjptYXgoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBtYWtlT2JqZWN0SWRlbnRp
ZmllcjxSZXNvdXJjZUxvYWRlcj4oc3RkOjpudW1lcmljX2xpbWl0czx1aW50NjRfdD46Om1heCgp
KTsKICAgICBpZiAoYXV0byogZnJhbWUgPSBtX2RvY3VtZW50LmZyYW1lKCkpIHsKICAgICAgICAg
aWYgKCFNaXhlZENvbnRlbnRDaGVja2VyOjpjYW5SdW5JbnNlY3VyZUNvbnRlbnQoKmZyYW1lLCBt
X2RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJlcXVlc3RVUkwpKQogICAgICAgICAgICAgcmV0
dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci5oCmluZGV4IGYxYmYwZWY4NDZiZWZiNWIwNTM1ZTgwNGQ1MDM0MDAzMjg3MTE4MDAuLjgzZmE5
MDkxZjE0N2UzOGQ3NGNhYTZkODFjNTBhYzk1N2EyMzQyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAK
IAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNyb3NzT3Jp
Z2luUHJlZmxpZ2h0Q2hlY2tlci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKICNpbmNsdWRlICJTZWN1cml0eU9y
aWdpbi5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXIuaCIKQEAgLTkxLDE1ICs5MiwxNSBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgZmluaXNoZWRUaW1pbmdGb3JXb3Jr
ZXJMb2FkKGNvbnN0IFJlc291cmNlVGltaW5nJik7CiAgICAgICAgIHZvaWQgbm90aWZ5RmluaXNo
ZWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsK
IAotICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0
YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRh
TGVuZ3RoKTsKLSAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcik7Ci0gICAgICAgIHZvaWQgZGlkRmFpbCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2Uo
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
ICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgICAgICB2b2lkIGRpZEZhaWwoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAgICAgICAgIHZv
aWQgbWFrZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAg
ICAgIHZvaWQgbWFrZVNpbXBsZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVzdChSZXNvdXJjZVJlcXVl
c3QmJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVzdFdpdGhQcmVm
bGlnaHQoUmVzb3VyY2VSZXF1ZXN0JiYpOwogICAgICAgICB2b2lkIHByZWZsaWdodFN1Y2Nlc3Mo
UmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgICAgICB2b2lkIHByZWZsaWdodEZhaWx1cmUodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgICAgIHZvaWQg
cHJlZmxpZ2h0RmFpbHVyZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
RXJyb3ImKTsKIAogICAgICAgICB2b2lkIGxvYWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmLCBT
ZWN1cml0eUNoZWNrUG9saWN5KTsKICAgICAgICAgYm9vbCBpc0FsbG93ZWRSZWRpcmVjdChjb25z
dCBVUkwmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKaW5kZXggYzE4Mjdm
ZWNkZjllNThlNzQxNTBjZDg4MmE3NGQwYmNmZDQ1OGE4OC4uZDc3YmEzNjc4YWEwYWQxNzUxMDk0
YmQ3MjQ0YjIxZWI2ZTVmYTk0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHAKQEAgLTY3MywyNiArNjczLDI2IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29u
dmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwKIHsKIH0KIAot
dm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVx
dWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRp
YWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmKQogewogfQogCi1ib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZykKK2Jvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3Jh
Z2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0
dXJuIGZhbHNlOwogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2ls
bFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgUmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikK
IHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNv
bnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlJikKIHsKIH0KIAogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCiAK
LWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFByb3RlY3Rp
b25TcGFjZSYpCitib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFn
YWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpA
QCAtNzAxLDIyICs3MDEsMjIgQEAgYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRo
ZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGUKIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAKLVJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZykKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKQogewogICAgIHJldHVybiBudWxscHRyOwogfQogCiAjZW5kaWYKIAotdm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGludCkKK3Zv
aWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0
aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgaW50KQogewogfQog
Ci12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikKIHsKIH0KIApAQCAtNzI4LDcgKzcyOCw3IEBAIHZvaWQgRW1wdHlGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikK
IAogI2VuZGlmCiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWls
TG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJy
b3ImKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJikKIHsKIH0KIApAQCAtMTA2Nyw3ICsxMDY3LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYg
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6YWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpCiAgICAg
cmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6d2lsbENh
Y2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJl
c3BvbnNlICpyZXNwb25zZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3Bv
bnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAordm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSAqcmVzcG9uc2UsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29u
c3QKIHsKICAgICBjb21wbGV0aW9uSGFuZGxlcihyZXNwb25zZSk7CiB9CkBAIC0xMDc2LDcgKzEw
NzYsNyBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgTgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElP
TikKIAotYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNv
bnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBsb25nIGxvbmcpCitib29sIEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25l
ZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKQogewogICAgIHJldHVybiB0cnVlOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggMDE3
ZTM3ZTE1NGNlMmZmYTY0YzE4MmYxZTViZWJlMzdjMDRhY2U2MC4uMDI5NGRjNDM0MjA0YjZmOWJm
ZjI5MjYxYTA3NzliNjhhMDRmZWJkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1w
dHlGcmFtZUxvYWRlckNsaWVudC5oCkBAIC01MywyNSArNTMsMjUgQEAgcHJpdmF0ZToKIAogICAg
IHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwog
Ci0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25n
LCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwotICAgIGJv
b2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5p
dGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNv
bnN0IFJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJy
aWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9O
X1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJv
dGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVj
dGlvblNwYWNlJikgZmluYWw7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVj
dGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGll
cyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcpIGZpbmFsOworICAgIFJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNv
bnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBpbnQpIGZpbmFsOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZykgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1
bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgaW50KSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQogICAg
IHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikgZmluYWw7CiAj
ZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgYm9vbCBkaXNwYXRjaERpZExv
YWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBpbnQpIGZpbmFsOwogCiAgICAgdm9p
ZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmluYWw7CkBAIC0xODIsMTEgKzE4
MiwxMSBAQCBwcml2YXRlOgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmVtb3RlQVhPYmpl
Y3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsOwotICAgIHZvaWQgd2lsbENh
Y2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJl
c3BvbnNlICosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4m
JikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRl
ciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSAqLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFs
OwogI2VuZGlmCiAKICNpZiBVU0UoQ0ZVUkxDT05ORUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2Fj
aGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5h
bDsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25l
ZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbDsKICNlbmRpZgogCiAgICAgUmVmPEZy
YW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5ldHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCAyYTZlMTY2ZWIyMjdlNTY0Yjg4
MWVkMzE4OWI4YzExMjUxMTRkMWE3Li4zMzI2M2M4MTUwM2ZiNTM0OWM5ZWJhNDNmN2RmMjEyNzdk
NjYyMGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTE2ODksNyAr
MTY4OSw3IEBAIGJvb2wgRnJhbWVMb2FkZXI6OndpbGxMb2FkTWVkaWFFbGVtZW50VVJMKFVSTCYg
dXJsLCBOb2RlJiBpbml0aWF0b3JOb2RlKQogICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHVy
bCk7CiAgICAgcmVxdWVzdC5zZXRJbnNwZWN0b3JJbml0aWF0b3JOb2RlSWRlbnRpZmllcihJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmlkZW50aWZpZXJGb3JOb2RlKGluaXRpYXRvck5vZGUpKTsK
IAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcjsKICAgICBSZXNvdXJjZUVycm9yIGVycm9yOwogICAgIHJlcXVlc3RG
cm9tRGVsZWdhdGUocmVxdWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogICAgIG5vdGlmaWVyKCku
c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMobV9kb2N1bWVudExvYWRlci5nZXQoKSwgaWRl
bnRpZmllciwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSh1cmwsIFN0cmluZygpLCAtMSwgU3Ry
aW5nKCkpLCAwLCAtMSwgLTEsIGVycm9yKTsKQEAgLTIwNjgsNyArMjA2OCw3IEBAIHZvaWQgRnJh
bWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFsTG9hZCgpCiAgICAgICAgIC8vIFN0YXJ0IHJlcXVl
c3QgZm9yIHRoZSBtYWluIHJlc291cmNlIGFuZCBkaXNwYXRjaCBkaWRSZWNlaXZlUmVzcG9uc2Ug
YmVmb3JlIHRoZSBsb2FkIGlzIGNvbW1pdHRlZCBmb3IKICAgICAgICAgLy8gY29uc2lzdGVuY3kg
d2l0aCBhbGwgb3RoZXIgbG9hZHMuIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTUwOTI3LgogICAgICAgICBSZXNvdXJjZUVycm9yIG1haW5SZXNvdWNlRXJyb3I7
Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgbWFpblJlc291cmNlSWRlbnRpZmllcjsKKyAgICAgICAg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1haW5SZXNvdXJjZUlkZW50aWZpZXI7CiAgICAgICAg
IFJlc291cmNlUmVxdWVzdCBtYWluUmVzb3VyY2VSZXF1ZXN0KGNhY2hlZFBhZ2UtPmRvY3VtZW50
TG9hZGVyKCktPnJlcXVlc3QoKSk7CiAgICAgICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUobWFpblJl
c291cmNlUmVxdWVzdCwgbWFpblJlc291cmNlSWRlbnRpZmllciwgbWFpblJlc291Y2VFcnJvcik7
CiAgICAgICAgIG5vdGlmaWVyKCkuZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoY2FjaGVkUGFn
ZS0+ZG9jdW1lbnRMb2FkZXIoKSwgbWFpblJlc291cmNlSWRlbnRpZmllciwgY2FjaGVkUGFnZS0+
ZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKSk7CkBAIC0yMTMzLDcgKzIxMzMsNyBAQCB2b2lk
IEZyYW1lTG9hZGVyOjpjb21taXRQcm92aXNpb25hbExvYWQoKQogICAgICAgICAgICAgY29uc3Qg
YXV0byYgcmVzcG9uc2UgPSBtX2RvY3VtZW50TG9hZGVyLT5yZXNwb25zZXMoKVtpXTsKICAgICAg
ICAgICAgIC8vIEZJWE1FOiBJZiB0aGUgV2ViS2l0IGNsaWVudCBjaGFuZ2VzIG9yIGNhbmNlbHMg
dGhlIHJlcXVlc3QsIHRoaXMgaXMgbm90IHJlc3BlY3RlZC4KICAgICAgICAgICAgIFJlc291cmNl
RXJyb3IgZXJyb3I7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXI7CisgICAg
ICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICAgICAgICAg
IFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHJlc3BvbnNlLnVybCgpKTsKICAgICAgICAgICAgIHJl
cXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogICAgICAgICAg
ICAgLy8gRklYTUU6IElmIHdlIGdldCBhIHJlc291cmNlIHdpdGggbW9yZSB0aGFuIDJCIGJ5dGVz
LCB0aGlzIGNvZGUgd29uJ3QgZG8gdGhlIHJpZ2h0IHRoaW5nLgpAQCAtMzEwNiw3ICszMTA2LDcg
QEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KEZyYW1lTG9hZFJlcXVlc3QmJiBy
ZXF1ZXN0LCBjb25zdCBTdHJpbmcmIHJlZmUKICAgICB9KTsKIH0KIAotdW5zaWduZWQgbG9uZyBG
cmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGlj
eSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmln
aW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRCdWZmZXI+JiBkYXRhKQorUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIEZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVk
ZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFk
ZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGRhdGEpCiB7CiAg
ICAgQVNTRVJUKG1fZnJhbWUuZG9jdW1lbnQoKSk7CiAgICAgU3RyaW5nIHJlZmVycmVyID0gU2Vj
dXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJIZWFkZXIobV9mcmFtZS5kb2N1bWVudCgpLT5y
ZWZlcnJlclBvbGljeSgpLCByZXF1ZXN0LnVybCgpLCBvdXRnb2luZ1JlZmVycmVyKCkpOwpAQCAt
MzEyNCw3ICszMTI0LDcgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNl
U3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUKIAogICAgIGFwcGx5VXNl
ckFnZW50SWZOZWVkZWQoaW5pdGlhbFJlcXVlc3QpOwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyID0gMDsgICAgCisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7
ICAgIAogICAgIFJlc291cmNlUmVxdWVzdCBuZXdSZXF1ZXN0KGluaXRpYWxSZXF1ZXN0KTsKICAg
ICByZXF1ZXN0RnJvbURlbGVnYXRlKG5ld1JlcXVlc3QsIGlkZW50aWZpZXIsIGVycm9yKTsKIApA
QCAtMzU4NywxMyArMzU4NywxMyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRl
ck5ld1dpbmRvd1BvbGljeShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlcwogICAgIG1haW5G
cmFtZS0+bG9hZGVyKCkubG9hZFdpdGhOYXZpZ2F0aW9uQWN0aW9uKHJlcXVlc3QsIFdURk1vdmUo
bmV3QWN0aW9uKSwgRnJhbWVMb2FkVHlwZTo6U3RhbmRhcmQsIGZvcm1TdGF0ZSwgYWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMKTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21E
ZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIHVuc2lnbmVkIGxvbmcmIGlkZW50aWZp
ZXIsIFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21E
ZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgQVNTRVJUKCFyZXF1
ZXN0LmlzTnVsbCgpKTsKIAotICAgIGlkZW50aWZpZXIgPSAwOworICAgIGlkZW50aWZpZXIgPSB7
IH07CiAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLnBhZ2UoKSkgewotICAgICAgICBpZGVu
dGlmaWVyID0gcGFnZS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAg
ICAgIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAg
ICAgICAgIG5vdGlmaWVyKCkuYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoaWRlbnRp
ZmllciwgbV9kb2N1bWVudExvYWRlci5nZXQoKSwgcmVxdWVzdCk7CiAgICAgfQogCkBAIC0zNjM0
LDcgKzM2MzQsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZyb21NZW1vcnlD
YWNoZShDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UsIFJlc291cgogICAgICAgICByZXR1cm47CiAg
ICAgfQogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyOworICAgIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUobmV3UmVxdWVz
dCwgaWRlbnRpZmllciwgZXJyb3IpOwogCiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSA9
IHJlc291cmNlLnJlc3BvbnNlKCk7CkBAIC0zNjUxLDcgKzM2NTEsNyBAQCB2b2lkIEZyYW1lTG9h
ZGVyOjphcHBseVVzZXJBZ2VudElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKICAg
ICB9CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVP
cHRpb25zKGNvbnN0IFN0cmluZyYgY29udGVudCwgY29uc3QgVVJMJiB1cmwsIHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIpCitib29sIEZyYW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRM
b2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmIGNvbnRlbnQsIGNvbnN0IFVSTCYgdXJs
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVxdWVzdElkZW50aWZpZXIpCiB7CiAgICAgRnJh
bWUmIHRvcEZyYW1lID0gbV9mcmFtZS50cmVlKCkudG9wKCk7CiAgICAgaWYgKCZtX2ZyYW1lID09
ICZ0b3BGcmFtZSkKQEAgLTM2NzUsMTAgKzM2NzUsMTAgQEAgYm9vbCBGcmFtZUxvYWRlcjo6c2hv
dWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiBjb250ZW50LCBj
b24KICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6QWxsb3dBbGw6CiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6Q29uZmxp
Y3Q6Ci0gICAgICAgIG1fZnJhbWUuZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2Fn
ZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJyb3IsICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRp
b25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3RpbmcgdmFsdWVzICgnIiArIGNvbnRlbnQgKyAiJykg
ZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRU
b0xlbmd0aCgpICsgIicuIEZhbGxpbmcgYmFjayB0byAnREVOWScuIiwgcmVxdWVzdElkZW50aWZp
ZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0
aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5nIHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicp
IGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVk
VG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJhY2sgdG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlm
aWVyLnRvVUludDY0KCkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBjYXNlIFhGcmFtZU9w
dGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDoKLSAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5h
ZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwg
IkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGlu
ZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInOiAnIiArIGNv
bnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVkIGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxs
IGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3Vt
ZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6
OkVycm9yLCAiSW52YWxpZCAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXIgZW5jb3VudGVyZWQgd2hl
biBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIic6
ICciICsgY29udGVudCArICInIGlzIG5vdCBhIHJlY29nbml6ZWQgZGlyZWN0aXZlLiBUaGUgaGVh
ZGVyIHdpbGwgYmUgaWdub3JlZC4iLCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpO
b25lOgogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5o
CmluZGV4IGY3NTI0MTBhODlmNTkyNzAxYzg0MWE0MmQ0YWJlNDRhZDc4OTIzMTEuLmU3NDc1YTQy
NDdlOTllNmM0Yjg3ODFhOTQzMjE3NWJlZmIyZjRiNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFt
ZUxvYWRlci5oCkBAIC0xMjcsNyArMTI3LDcgQEAgcHVibGljOgogI2lmIEVOQUJMRShXRUJfQVJD
SElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgbG9hZEFyY2hp
dmUoUmVmPEFyY2hpdmU+JiYpOwogI2VuZGlmCi0gICAgdW5zaWduZWQgbG9uZyBsb2FkUmVzb3Vy
Y2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENsaWVudENyZWRlbnRpYWxQ
b2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJj
ZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+JiBkYXRhKTsK
KyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRj
aE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNl
UmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPiYgZGF0YSk7CiAKICAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIGNoYW5nZUxvY2F0aW9uKGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgdGFyZ2V0
LCBFdmVudCosIGNvbnN0IFJlZmVycmVyUG9saWN5JiwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeSwgc3RkOjpvcHRpb25hbDxOZXdGcmFtZU9wZW5lclBvbGljeT4gPSBzdGQ6Om51bGxvcHQs
IGNvbnN0IEF0b21TdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlID0gbnVsbEF0b20oKSwgY29uc3Qg
U3lzdGVtUHJldmlld0luZm8mID0geyB9LCBzdGQ6Om9wdGlvbmFsPFByaXZhdGVDbGlja01lYXN1
cmVtZW50PiYmID0gc3RkOjpudWxsb3B0KTsKICAgICB2b2lkIGNoYW5nZUxvY2F0aW9uKEZyYW1l
TG9hZFJlcXVlc3QmJiwgRXZlbnQqID0gbnVsbHB0ciwgc3RkOjpvcHRpb25hbDxQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudD4mJiA9IHN0ZDo6bnVsbG9wdCk7CkBAIC0yNzUsNyArMjc1LDcgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBhcHBseVVzZXJBZ2VudElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYp
OwogCi0gICAgYm9vbCBzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBT
dHJpbmcmLCBjb25zdCBVUkwmLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAg
ICBib29sIHNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYs
IGNvbnN0IFVSTCYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICB2b2lkIGNvbXBs
ZXRlZCgpOwogICAgIGJvb2wgYWxsQW5jZXN0b3JzQXJlQ29tcGxldGUoKSBjb25zdDsgLy8gaW5j
bHVkaW5nIHRoaXMKQEAgLTM4Niw3ICszODYsNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91
bGRSZWxvYWQoY29uc3QgVVJMJiBjdXJyZW50VVJMLCBjb25zdCBVUkwmIGRlc3RpbmF0aW9uVVJM
KTsKIAotICAgIHZvaWQgcmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmLCB1bnNp
Z25lZCBsb25nJiBpZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCByZXF1ZXN0
RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciYs
IFJlc291cmNlRXJyb3ImKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZGV0YWNoQ2hpbGRy
ZW4oKTsKICAgICB2b2lkIGNsb3NlQW5kUmVtb3ZlQ2hpbGQoRnJhbWUmKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggMDRhMTJmN2E5MzAxNWNjZjRlZTA3
M2FlZTA0MDgyY2E4MTI2MDdkMC4uNGE3MDZjODdmNThjOGIwODI0ZThjZWIzNjNjNjE0N2MyN2Nk
YzM1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM1
LDYgKzM1LDcgQEAKICNpbmNsdWRlICJMaW5rSWNvbi5oIgogI2luY2x1ZGUgIlBhZ2VJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSAiUmVnaXN0cmFibGVEb21haW4uaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvRXhwZWN0ZWQuaD4KICNpbmNsdWRl
IDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgpAQCAtMTM4LDIzICsx
MzksMjMgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQzKCkgPSAwOwogCi0gICAg
dmlydHVhbCB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpID0gMDsKLSAgICB2
aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hE
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlcios
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRl
bnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSA9IDA7CiAjaWYgVVNFKFBST1RFQ1RJ
T05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICB2aXJ0dWFsIGJvb2wgY2FuQXV0aGVudGljYXRl
QWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNlJikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKSA9IDA7CiAjZW5k
aWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgdmlydHVhbCBSZXRhaW5QdHI8Q0ZE
aWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpID0gMDsKICNlbmRpZgogCi0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9j
dW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRM
ZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRh
TGVuZ3RoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgPSAwOwogICAgIHZpcnR1YWwg
Ym9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRl
ciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBpbnQg
bGVuZ3RoKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9h
ZEV2ZW50cygpID0gMDsKQEAgLTI5OCwxMyArMjk5LDEzIEBAIHB1YmxpYzoKICNpZiBQTEFURk9S
TShDT0NPQSkKICAgICAvLyBBbGxvdyBhbiBhY2Nlc3NpYmlsaXR5IG9iamVjdCB0byByZXRyaWV2
ZSBhIEZyYW1lIHBhcmVudCBpZiB0aGVyZSdzIG5vIFBsYXRmb3JtV2lkZ2V0LgogICAgIHZpcnR1
YWwgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5T
Q2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlv
bmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYK
IAogI2lmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAgICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxk
IHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTcyNTc+LgotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxl
bmd0aCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50
TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkg
PSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9j
dW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBlKi8pIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcAppbmRleCA4YjU1ODFkYjRm
MjY1OTMyNGE3YjdlY2VlYjcyNjQxM2JmYTQ5MWU0Li4zYmMxMmViMGUxNzVjY2YzZjU5ZTQwMGQ5
ZWM4YzAyMWNmNTI4MWQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVy
U3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5j
cHAKQEAgLTQxLDE3ICs0MSwxNyBAQCB2b2lkIExvYWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVz
b3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8U3VicmVzb3VyY2VMb2FkZXIqPiYpCiB7CiB9CiAKLVJl
c291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElk
ZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VMb2FkSWRlbnRpZmllciAqLykKK1Jlc291cmNl
UmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZp
ZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07CiB9CiAKLU5l
dHdvcmtMb2FkTWV0cmljcyBMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJjZUxvYWRJZGVudGlmaWVyICovKQor
TmV0d29ya0xvYWRNZXRyaWNzIExvYWRlclN0cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNv
dXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1
cm4geyB9OwogfQogCi1WZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IExvYWRl
clN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRl
bnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJjZUxvYWRJZGVudGlmaWVyICovKQorVmVjdG9yPE5l
dHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRl
TG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2Fk
ZXJTdHJhdGVneS5oCmluZGV4IGIwMThhZjA0ZDA1Y2UzYWMzOGJiNTdkOGU1MGE3YjA2M2VlNTE3
MzMuLmUyZWNkMWFmYzM1YmE2ZDMxMjM4OGM4MjhlYTRjZTFkZGMyM2FjZmMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAi
TG9hZFNjaGVkdWxpbmdNb2RlLmgiCiAjaW5jbHVkZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgogI2luY2x1ZGUg
IlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAg
LTU4LDcgKzU5LDcgQEAgc3RydWN0IEZldGNoT3B0aW9uczsKIGNsYXNzIFdFQkNPUkVfRVhQT1JU
IExvYWRlclN0cmF0ZWd5IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNl
KEZyYW1lJiwgQ2FjaGVkUmVzb3VyY2UmLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3Vy
Y2VMb2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8U3VicmVzb3Vy
Y2VMb2FkZXI+JiYpPiYmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNo
cm9ub3VzbHkoRnJhbWVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9u
cyYsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25z
ZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVyJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBG
ZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291
cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgcGFnZUxvYWRDb21wbGV0ZWQoUGFnZSYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgYnJvd3Np
bmdDb250ZXh0UmVtb3ZlZChGcmFtZSYpID0gMDsKIApAQCAtODgsMTQgKzg5LDE0IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGVyZm9ybVNlY3VyaXR5Q2hlY2tzKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgaGF2ZVBlcmZvcm1lZFNlY3VyaXR5
Q2hlY2tzKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQog
Ci0gICAgdmlydHVhbCBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElk
ZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7Ci0gICAgdmlydHVhbCBW
ZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZv
cm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElk
ZW50aWZpZXIpOwotICAgIHZpcnR1YWwgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNz
RnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cik7CisgICAgdmlydHVhbCBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2aXJ0dWFsIFZlY3Rv
cjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0
aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsK
KyAgICB2aXJ0dWFsIE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJj
ZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICB2aXJ0dWFs
IHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spID0gMDsKIAogICAgIC8vIFVzZWQgZm9yIHRl
c3Rpbmcgb25seS4KLSAgICB2aXJ0dWFsIFZlY3Rvcjx1aW50NjRfdD4gb25nb2luZ0xvYWRzKCkg
Y29uc3QgeyByZXR1cm4geyB9OyB9CisgICAgdmlydHVhbCBWZWN0b3I8UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25zdCB7IHJldHVybiB7IH07IH0KIAogcHJvdGVj
dGVkOgogICAgIHZpcnR1YWwgfkxvYWRlclN0cmF0ZWd5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGlu
Z0xvYWRlci5jcHAKaW5kZXggYjgwYTdmOWJmNTEwNzgzNGI3NThiMzZmN2NjOTkwNjNkYzM4NWUx
ZS4uMjUxNzU3Mzk0MTgwMzQ4MjMxZDNjZTBhYTVlNTY2ZTdiOGE1ZTljNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMTk5LDcgKzE5OSw3IEBAIHZvaWQgUGluZ0xvYWRl
cjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcmVwb3J0VVJM
LCBSZWY8Rm9yCiAKIHZvaWQgUGluZ0xvYWRlcjo6c3RhcnRQaW5nTG9hZChGcmFtZSYgZnJhbWUs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSFRUUEhlYWRlck1hcCYmIG9yaWdpbmFsUmVxdWVz
dEhlYWRlcnMsIFNob3VsZEZvbGxvd1JlZGlyZWN0cyBzaG91bGRGb2xsb3dSZWRpcmVjdHMsIENv
bnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24gcG9saWN5Q2hlY2ssIFJlZmVycmVyUG9saWN5
IHJlZmVycmVyUG9saWN5LCBzdGQ6Om9wdGlvbmFsPFZpb2xhdGlvblJlcG9ydFR5cGU+IHZpb2xh
dGlvblJlcG9ydFR5cGUpCiB7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gZnJhbWUu
cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlk
ZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgLy8g
RklYTUU6IFdoeSBhY3RpdmVEb2N1bWVudExvYWRlcj8gSSB3b3VsZCBoYXZlIGV4cGVjdGVkIGRv
Y3VtZW50TG9hZGVyKCkuCiAgICAgLy8gSXQgc2VlbXMgbGlrZSB0aGUgUGluZ0xvYWRlciBzaG91
bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50CiAgICAgLy8gRG9jdW1lbnQgaW4gdGhl
IEZyYW1lLCBidXQgdGhlIGFjdGl2ZURvY3VtZW50TG9hZGVyIHdpbGwgYmUgYXNzb2NpYXRlZApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcAppbmRleCAwZGNiNDc1NTZk
MDQ4NzQ4Nzg2NTZlNDU5YzliYWM5YWY2NGRjZmJmLi5hMjE1ZDZhOWI0MDIyYzllNzc1ODhlNWZi
MDdhZmYwNDJjYzQ5YTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jl
c3NUcmFja2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2Vy
LmNwcApAQCAtMTgzLDcgKzE4Myw3IEBAIHZvaWQgUHJvZ3Jlc3NUcmFja2VyOjpmaW5hbFByb2dy
ZXNzQ29tcGxldGUoKQogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZnJhbWVTdG9wcGVk
TG9hZGluZygqZnJhbWUpOwogfQogCi12b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJv
Z3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCiB7CiAgICAgTE9HKFByb2dyZXNzLCAiUHJvZ3Jlc3MgaW5jcmVtZW50ZWQgKCVwKSAt
IHZhbHVlICVmLCB0cmFja2VkIGZyYW1lcyAlZCwgb3JpZ2luYXRpbmcgZnJhbWUgJXAiLCB0aGlz
LCBtX3Byb2dyZXNzVmFsdWUsIG1fbnVtUHJvZ3Jlc3NUcmFja2VkRnJhbWVzLCBtX29yaWdpbmF0
aW5nUHJvZ3Jlc3NGcmFtZS5nZXQoKSk7CiAKQEAgLTIwNiw3ICsyMDYsNyBAQCB2b2lkIFByb2dy
ZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZQogICAgIGl0ZW0tPmVzdGltYXRlZExlbmd0aCA9IGVzdGltYXRlZExlbmd0
aDsKIH0KIAotdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCkKK3ZvaWQgUHJvZ3Jlc3NU
cmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCkKIHsKICAgICBQcm9ncmVzc0l0ZW0qIGl0ZW0g
PSBtX3Byb2dyZXNzSXRlbXMuZ2V0KGlkZW50aWZpZXIpOwogCkBAIC0yNjYsNyArMjY2LDcgQEAg
dm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgdW5zaWduZWQgYnl0ZXMKICAgICBtX2NsaWVudC0+ZGlkQ2hhbmdlRXN0aW1hdGVk
UHJvZ3Jlc3MoKTsKIH0KIAotdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3Mo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRl
UHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0
byBpdCA9IG1fcHJvZ3Jlc3NJdGVtcy5maW5kKGlkZW50aWZpZXIpOwogCkBAIC0yODUsNiArMjg1
LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQogCiB1bnNpZ25lZCBsb25nIFByb2dyZXNzVHJhY2tlcjo6Y3JlYXRlVW5p
cXVlSWRlbnRpZmllcigpCiB7CisgICAgLy8gRklYTUU6IFVzZSBhIHN0cm9uZ2x5IHR5cGVkIGlk
ZW50aWZpZXIgZm9yIHdlYnNvY2tldHMgYW5kIHJlbW92ZSB0aGlzLgogICAgIHJldHVybiArK3Nf
dW5pcXVlSWRlbnRpZmllcjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1Byb2dyZXNzVHJhY2tlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tl
ci5oCmluZGV4IDMxOWIwY2M4MWI5OTQ2MWQ4ZDVlOGY1MTkyNWY0ZWE3MDRjMDVlZWUuLjkzYTY4
YTk5ZGZhODdlNGFkNzE5M2I4OGVjMDg2NjIzZTZmMDIyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUHJvZ3Jlc3NUcmFja2VyLmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJUaW1lci5o
IgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAg
LTU1LDkgKzU2LDkgQEAgcHVibGljOgogICAgIHZvaWQgcHJvZ3Jlc3NTdGFydGVkKEZyYW1lJik7
CiAgICAgdm9pZCBwcm9ncmVzc0NvbXBsZXRlZChGcmFtZSYpOwogCi0gICAgdm9pZCBpbmNyZW1l
bnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKTsKLSAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7Ci0gICAgdm9pZCBjb21wbGV0ZVByb2dyZXNzKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBpbmNyZW1lbnRQcm9ncmVzcyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lk
IGluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgdW5zaWduZWQgYnl0
ZXNSZWNlaXZlZCk7CisgICAgdm9pZCBjb21wbGV0ZVByb2dyZXNzKFJlc291cmNlTG9hZGVySWRl
bnRpZmllcik7CiAKICAgICBsb25nIGxvbmcgdG90YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9h
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9hZDsgfQog
ICAgIGxvbmcgbG9uZyB0b3RhbEJ5dGVzUmVjZWl2ZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdGFs
Qnl0ZXNSZWNlaXZlZDsgfQpAQCAtNzQsNyArNzUsNyBAQCBwcml2YXRlOgogCiAgICAgVW5pcXVl
UmVmPFByb2dyZXNzVHJhY2tlckNsaWVudD4gbV9jbGllbnQ7CiAgICAgUmVmUHRyPEZyYW1lPiBt
X29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZTsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIHN0
ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBtX3Byb2dyZXNzSXRlbXM7CisgICAgSGFzaE1h
cDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+
PiBtX3Byb2dyZXNzSXRlbXM7CiAgICAgVGltZXIgbV9wcm9ncmVzc0hlYXJ0YmVhdFRpbWVyOwog
CiAgICAgbG9uZyBsb25nIG1fdG90YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9hZCB7IDAgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4
IDliNzZjMDU5MDJmM2M5ZjI2NGMwMDc0MjhlMzZiOThiZWY3NDkzMmUuLjE0N2I0NWUwNjQzODEy
MjdiMDUyMjA2NDQxODUyM2MwNzlmNjRkMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAtNTYsNyArNTYsNyBAQCB2b2lkIFJlc291cmNl
TG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VM
b2FkZXIqIGxvYQogICAgIGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShsb2FkZXIt
PmlkZW50aWZpZXIoKSwgbG9hZGVyLT5kb2N1bWVudExvYWRlcigpLCBjdXJyZW50V2ViQ2hhbGxl
bmdlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGN1cnJlbnRXZWJDaGFsbGVu
Z2UpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjdXJyZW50V2ViQ2hh
bGxlbmdlKQogewogICAgIG1fZnJhbWUubG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRSZWNl
aXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UobG9hZGVyLCBpZGVudGlmaWVyLCBjdXJyZW50V2Vi
Q2hhbGxlbmdlKTsKIH0KQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlm
aWVyOjpkaWRGYWlsVG9Mb2FkKFJlc291cmNlTG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNl
RQogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUs
IGxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKSwgbG9hZGVyLT5pZGVudGlmaWVyKCksIGVycm9yKTsK
IH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlh
bFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFJlc291cmNlTG9hZE5vdGlm
aWVyOjphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGJvb2wgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcg
PSBmYWxzZTsKICAgICBpZiAoYXV0byogZnJhbWVMb2FkZXIgPSBsb2FkZXIgPyBsb2FkZXItPmZy
YW1lTG9hZGVyKCkgOiBudWxscHRyKQpAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgUmVzb3VyY2VM
b2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxv
bmcgaWRlbnRpCiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQoKS5hc3NpZ25JZGVudGlmaWVy
VG9Jbml0aWFsUmVxdWVzdChpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QpOwogfQogCi12b2lk
IFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3Qg
Q2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVz
b3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogI2lmIFVTRShRVUlDS19MT09LKQogICAgIC8vIEFs
d2F5cyBhbGxvdyBRdWlja0xvb2stZ2VuZXJhdGVkIFVSTHMgYmFzZWQgb24gdGhlIHByb3RvY29s
IHNjaGVtZS4KQEAgLTE1MCw3ICsxNTAsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpk
aXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZwogICAg
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0KCZtX2ZyYW1lLCBpZGVu
dGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNl
KTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIp
Cit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgciwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9h
ZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNl
IHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJh
bWUpOwpAQCAtMTU5LDcgKzE1OSw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3Bh
dGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShtX2ZyYW1l
LCBpZGVudGlmaWVyLCBsb2FkZXIsIHIsIHJlc291cmNlTG9hZGVyKTsKIH0KIAotdm9pZCBSZXNv
dXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciog
bG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGlu
dCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpCit2b2lkIFJlc291cmNlTG9hZE5v
dGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVEYXRhKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQogewogICAgIC8vIE5vdGlmeWlu
ZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95
ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTY4LDcgKzE2OCw3IEBA
IHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlRGF0YSgmbV9mcmFtZSwgaWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5j
b2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRj
aERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3Mm
IG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewog
ICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFt
ZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAt
MTc3LDcgKzE3Nyw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpCiAgICAgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5nKCZtX2ZyYW1lLCBsb2FkZXIsIGlkZW50aWZp
ZXIsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2VMb2FkZXIpOwogfQogCi12b2lkIFJlc291
cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJy
b3IpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICAvLyBOb3RpZnlpbmcgdGhlIEZy
YW1lTG9hZGVyQ2xpZW50IG1heSBjYXVzZSB0aGUgZnJhbWUgdG8gYmUgZGVzdHJveWVkLgogICAg
IFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsKQEAgLTE4Niw3ICsxODYsNyBAQCB2b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIHVuc2lnbgogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExv
YWRpbmcoJm1fZnJhbWUsIGxvYWRlciwgaWRlbnRpZmllciwgZXJyb3IpOwogfQogCi12b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpzZW5kUmVtYWluaW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNv
bnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6c2Vu
ZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRh
dGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGVycm9yKQogewogICAgIC8vIElmIHRoZSByZXF1ZXN0IGlzIG51bGwsIHdpbGxTZW5k
UmVxdWVzdCBjYW5jZWxsZWQgdGhlIGxvYWQuIFdlIHNob3VsZAogICAgIC8vIG9ubHkgZGlzcGF0
Y2ggZGlkRmFpbExvYWRpbmcgaW4gdGhpcyBjYXNlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkTm90aWZpZXIuaAppbmRleCAxY2M0NjMxOTJkNTIzMjE1ZmM4ZmUyZmFiYWMx
ODg3MmEyOWRmMTFiLi40ZGJkNGNjNDlkNjUwNDIxMTg0ZTYwYzI0ZGQ3MTRkY2JlMGJkYjBkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaApAQCAtMjks
NiArMjksNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIgogI2luY2x1ZGUgPG9wdGlvbmFsPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJs
ZS5oPgogCkBAIC01MCw3ICs1MSw3IEBAIHB1YmxpYzoKICAgICBleHBsaWNpdCBSZXNvdXJjZUxv
YWROb3RpZmllcihGcmFtZSYpOwogCiAgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
OwotICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYpOworICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYpOwogCiAgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIq
LCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3Bv
bnNlKTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKQEAgLTU4LDE4ICs1OSwxOCBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBkaWRGaW5pc2hMb2FkKFJlc291cmNlTG9hZGVyKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
Jik7CiAgICAgdm9pZCBkaWRGYWlsVG9Mb2FkKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYpOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0Jik7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VM
b2FkZXIqID0gbnVsbHB0cik7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVEYXRhKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRh
LCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGFzc2lnbklkZW50
aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNl
bmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBj
b25zdCBDYWNoZWRSZXNvdXJjZSopOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciogPSBudWxscHRyKTsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFM
ZW5ndGgpOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVy
KiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBS
ZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYp
OwogCi0gICAgdm9pZCBzZW5kUmVtYWluaW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lk
IHNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2VzKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVk
RGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiBwcml2YXRlOgogICAgIEZyYW1l
JiBtX2ZyYW1lOwotICAgIHN0ZDo6b3B0aW9uYWw8dW5zaWduZWQgbG9uZz4gbV9pbml0aWFsUmVx
dWVzdElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRpb25hbDxSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXI+IG1faW5pdGlhbFJlcXVlc3RJZGVudGlmaWVyOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMzBjNjU0
ODY1ZWVmZjg5MDIyYjgwNTllYTZmNjA3ZDNiOTA2MDVlMy4uMGEwZDQzZWQ1NzUwNGNkODEwNWFj
ODZlMGYwMzVmNjgzY2QzMjkyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jl
c291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
ZXIuY3BwCkBAIC02Nyw3ICs2Nyw3IEBACiAjdW5kZWYgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9M
T0cKICNkZWZpbmUgUEFHRV9JRCAoKGZyYW1lKCkgPyBmcmFtZSgpLT5wYWdlSUQoKS52YWx1ZV9v
cihQYWdlSWRlbnRpZmllcigpKSA6IFBhZ2VJZGVudGlmaWVyKCkpLnRvVUludDY0KCkpCiAjZGVm
aW5lIEZSQU1FX0lEICgoZnJhbWUoKSA/IGZyYW1lKCktPmZyYW1lSUQoKS52YWx1ZV9vcihGcmFt
ZUlkZW50aWZpZXIoKSkgOiBGcmFtZUlkZW50aWZpZXIoKSkudG9VSW50NjQoKSkKLSNkZWZpbmUg
UkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmss
ICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9h
ZGVyPSVwLCByZXNvdXJjZUlEPSVsdV0gUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdF
X0lELCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIoKSwgaWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19f
KQorI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9M
T0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQg
IiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFJlc291cmNlTG9hZGVy
OjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZp
ZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
QEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIFJlc291cmNlTG9hZGVyOjpyZWxlYXNlUmVzb3VyY2Vz
KCkKIAogICAgIGZpbmlzaE5ldHdvcmtMb2FkKCk7CiAKLSAgICBtX2lkZW50aWZpZXIgPSAwOwor
ICAgIG1faWRlbnRpZmllciA9IHsgfTsKIAogICAgIG1fcmVzb3VyY2VEYXRhID0gbnVsbHB0cjsK
ICAgICBtX2RlZmVycmVkUmVxdWVzdCA9IFJlc291cmNlUmVxdWVzdCgpOwpAQCAtMzczLDcgKzM3
Myw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKFJlc291
cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFJlCiAgICAgLy8gV2UgbmVlZCBhIHJlc291cmNl
IGlkZW50aWZpZXIgZm9yIGFsbCByZXF1ZXN0cywgZXZlbiBpZiBGcmFtZUxvYWRlciBpcyBuZXZl
ciBnb2luZyB0byBzZWUgaXQgKHN1Y2ggYXMgd2l0aCBDT1JTIHByZWZsaWdodCByZXF1ZXN0cyku
CiAgICAgYm9vbCBjcmVhdGVkUmVzb3VyY2VJZGVudGlmaWVyID0gZmFsc2U7CiAgICAgaWYgKCFt
X2lkZW50aWZpZXIpIHsKLSAgICAgICAgbV9pZGVudGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5w
cm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICAgICAgbV9pZGVudGlmaWVy
ID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgICAgICBjcmVhdGVk
UmVzb3VyY2VJZGVudGlmaWVyID0gdHJ1ZTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jl
c291cmNlTG9hZGVyLmgKaW5kZXggN2E0YTBkN2Q3ZjQ2NDUzNmMyYzY4ODVhZjgzNjlkZjA2OTc1
YmI5NS4uNGZkMmJmMGJiYjNiMWJkMjE1NDVkYjUyYzJlMWNhNjRlZTQyYjkxNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1
ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5n
LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJUeXBlcy5oIgog
I2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgpAQCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHNldERlZmVyc0xvYWRpbmcoYm9vbCk7CiAgICAgYm9vbCBkZWZlcnNM
b2FkaW5nKCkgY29uc3QgeyByZXR1cm4gbV9kZWZlcnNMb2FkaW5nOyB9CiAKLSAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQogCiAgICAgYm9vbCB3YXNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJsb2NrZWQo
KSBjb25zdCB7IHJldHVybiBtX3dhc0F1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmxvY2tlZDsgfQog
CkBAIC0yMjgsNyArMjI5LDcgQEAgcHJpdmF0ZToKICAgICBSZXNvdXJjZVJlcXVlc3QgbV9vcmln
aW5hbFJlcXVlc3Q7IC8vIEJlZm9yZSByZWRpcmVjdHMuCiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4gbV9yZXNvdXJjZURhdGE7CiAgICAgCi0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIg
eyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKIAogICAg
IGJvb2wgbV9yZWFjaGVkVGVybWluYWxTdGF0ZSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX25vdGlm
aWVkTG9hZENvbXBsZXRlIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MjdlMTYwODliNWY2NWM2MmI1
ZDZkMWZiMGYzNDc2M2U2N2Y2MmI3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+
CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUmVzb3VyY2VMb2FkZXI7CisKK3VzaW5n
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8UmVzb3VyY2VMb2Fk
ZXI+OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1
YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAxYWQ4NDBiY2RmN2UxZjY3ZDIwMjhlZTBjZTcxOGRj
MjFjZGI0MGUxLi42M2FhZDNjYTczZWU5MDJlZGJiYzRlMGU2MWNmYWYwODU0ZjQwNDAyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTc1LDggKzc1
LDggQEAKICNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFVO
VVNFRF9WQVJJQUJMRSh0aGlzKQogI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xP
R19FUlJPUihmbXQsIC4uLikgVU5VU0VEX1ZBUklBQkxFKHRoaXMpCiAjZWxzZQotI2RlZmluZSBT
VUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coUmVzb3Vy
Y2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAi
LCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0lbHVdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZt
dCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKSwg
IyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJS
T1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3Bh
Z2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJl
c291cmNlSUQ9JWx1XSBTdWJyZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZS
QU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlmaWVyKCksICMjX19WQV9BUkdTX18pCisjZGVm
aW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhS
ZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJ
dTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBTdWJyZXNvdXJj
ZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBp
ZGVudGlmaWVyKCkudG9VSW50NjQoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VS
Q0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKFJl
c291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1
NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFN1YnJlc291cmNl
TG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlk
ZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19fKQogI2VuZGlmCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTE3Miw3ICsxNzIsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpp
bml0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYgog
ICAgICAgICB9CiAgICAgICAgIEFTU0VSVCghcmVhY2hlZFRlcm1pbmFsU3RhdGUoKSk7CiAgICAg
ICAgIG1fc3RhdGUgPSBJbml0aWFsaXplZDsKLSAgICAgICAgbV9kb2N1bWVudExvYWRlci0+YWRk
U3VicmVzb3VyY2VMb2FkZXIodGhpcyk7CisgICAgICAgIG1fZG9jdW1lbnRMb2FkZXItPmFkZFN1
YnJlc291cmNlTG9hZGVyKCp0aGlzKTsKICAgICAgICAgbV9vcmlnaW4gPSBtX3Jlc291cmNlLT5v
cmlnaW4oKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSk7CiAgICAgfSk7CkBAIC0y
MTAsNyArMjEwLDcgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0SW50
ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwgY28KICAgICAgICAgfQogCiAgICAg
ICAgIFJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3RJbnRlcm5hbChXVEZNb3ZlKG5ld1Jl
cXVlc3QpLCByZWRpcmVjdFJlc3BvbnNlLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUo
cHJvdGVjdGVkVGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlciksIHJlZGlyZWN0UmVzcG9uc2VdIChSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KSBtdXRh
YmxlIHsKLSAgICAgICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBp
ZGVudGlmaWVyKCksIFBBR0VfSUQsIEZSQU1FX0lEKTsKKyAgICAgICAgICAgIHRyYWNlUG9pbnQo
U3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSwgUEFHRV9J
RCwgRlJBTUVfSUQpOwogCiAgICAgICAgICAgICBpZiAocmVhY2hlZFRlcm1pbmFsU3RhdGUoKSkg
ewogICAgICAgICAgICAgICAgIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2Vu
ZFJlcXVlc3RJbnRlcm5hbDogcmVhY2hlZCB0ZXJtaW5hbCBzdGF0ZTsgY2FsbGluZyBjb21wbGV0
aW9uIGhhbmRsZXIiKTsKQEAgLTQ5MSw3ICs0OTEsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVy
OjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENv
bQogICAgICAgICAgICAgLy8gU2luY2UgYSBzdWJyZXNvdXJjZSBsb2FkZXIgZG9lcyBub3QgbG9h
ZCBtdWx0aXBhcnQgc2VjdGlvbnMgcHJvZ3Jlc3NpdmVseSwgZGF0YSB3YXMgZGVsaXZlcmVkIHRv
IHRoZSBsb2FkZXIgYWxsIGF0IG9uY2UuCiAgICAgICAgICAgICAvLyBBZnRlciB0aGUgZmlyc3Qg
bXVsdGlwYXJ0IHNlY3Rpb24gaXMgY29tcGxldGUsIHNpZ25hbCB0byBkZWxlZ2F0ZXMgdGhhdCB0
aGlzIGxvYWQgaXMgImZpbmlzaGVkIgogICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVt
cHR5TWV0cmljczsKLSAgICAgICAgICAgIG1fZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9h
ZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydCh0aGlzKTsKKyAgICAgICAgICAgIG1fZG9jdW1lbnRM
b2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydCgqdGhpcyk7CiAg
ICAgICAgICAgICBkaWRGaW5pc2hMb2FkaW5nT25lUGFydChlbXB0eU1ldHJpY3MpOwogICAgICAg
ICB9CiAKQEAgLTc0NSw3ICs3NDUsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRGaW5p
c2hMb2FkaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZQogICAgIH0K
IAogICAgIGlmIChtX3Jlc291cmNlLT50eXBlKCkgIT0gQ2FjaGVkUmVzb3VyY2U6OlR5cGU6Ok1h
aW5SZXNvdXJjZSkKLSAgICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlk
ZW50aWZpZXIoKSk7CisgICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBp
ZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAKICAgICBtX3N0YXRlID0gRmluaXNoaW5nOwogICAg
IG1fcmVzb3VyY2UtPmZpbmlzaExvYWRpbmcocmVzb3VyY2VEYXRhKCksIG5ldHdvcmtMb2FkTWV0
cmljcyk7CkBAIC03OTEsNyArNzkxLDcgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkRmFp
bChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBtX3N0YXRlID0gRmluaXNoaW5nOwog
CiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFp
blJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRl
bnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlk
ZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZVRv
UmV2YWxpZGF0ZSgpKQogICAgICAgICBNZW1vcnlDYWNoZTo6c2luZ2xldG9uKCkucmV2YWxpZGF0
aW9uRmFpbGVkKCptX3Jlc291cmNlKTsKQEAgLTg0NCw3ICs4NDQsNyBAQCB2b2lkIFN1YnJlc291
cmNlTG9hZGVyOjpkaWRDYW5jZWwoY29uc3QgUmVzb3VyY2VFcnJvciYpCiAgICAgQVNTRVJUKG1f
cmVzb3VyY2UpOwogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJj
ZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9h
ZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxv
YWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAgIG1fcmVzb3VyY2UtPmNh
bmNlbExvYWQoKTsKICAgICBub3RpZnlEb25lKExvYWRDb21wbGV0aW9uVHlwZTo6Q2FuY2VsKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxvYWRlckNsaWVudC5oCmluZGV4
IDYyNWJiN2ViMmU3YjUwNzFjMWQxMmMwNzUyMzZlMWZiZTZiZWViYTcuLjg0ZDc5YjBjOTlkZjEw
ZDk5MzgwYjg0ODMxNzM3MWJjMWU4NTczYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1RocmVhZGFibGVMb2FkZXJDbGllbnQuaApAQCAtMzAsMjcgKzMwLDI5IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCisKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIFJlc291cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKLSAgICBjbGFzcyBSZXNvdXJjZVRpbWluZzsKLQotICAgIGNsYXNzIFRocmVh
ZGFibGVMb2FkZXJDbGllbnQgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRh
YmxlTG9hZGVyQ2xpZW50KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgot
ICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0
ZXNTZW50Ki8sIHVuc2lnbmVkIGxvbmcgbG9uZyAvKnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0K
LQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcg
LyppZGVudGlmaWVyKi8sIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSB7IH0KLSAgICAgICAgdmly
dHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQgLypkYXRhTGVuZ3Ro
Ki8pIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIC8qaWRlbnRpZmllciovKSB7IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYpIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoVGlt
aW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBub3Rp
ZnlJc0RvbmUoYm9vbCkgeyBBU1NFUlRfTk9UX1JFQUNIRUQoKTsgfQotCi0gICAgcHJvdGVjdGVk
OgotICAgICAgICBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgPSBkZWZhdWx0OwotICAgICAgICB2
aXJ0dWFsIH5UaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgPSBkZWZhdWx0OwotICAgIH07CitjbGFz
cyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKK2NsYXNzIFJlc291cmNl
VGltaW5nOworCitjbGFzcyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50IHsKKyAgICBXVEZfTUFLRV9O
T05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIGRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcg
bG9uZyAvKmJ5dGVzU2VudCovLCB1bnNpZ25lZCBsb25nIGxvbmcgLyp0b3RhbEJ5dGVzVG9CZVNl
bnQqLykgeyB9CisKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIHsgfQorICAgIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50IC8qZGF0YUxlbmd0aCov
KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJy
b3ImKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNl
VGltaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lkIG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOyB9CisKK3Byb3RlY3RlZDoKKyAgICBUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KCkgPSBkZWZhdWx0OworICAgIHZpcnR1YWwgflRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9
IGRlZmF1bHQ7Cit9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlci5oCmluZGV4IDhl
ZmUzOWNmN2I4NWRkOWRkNGY4YjQwOGI0ZWJjNDkxMDE5MDJhYTQuLjQyYWU2NDkwOWE1ZTBmZTQ0
YzZhNWUwMDYwZDU4Yzk2NGVjNTYwNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlci5oCkBAIC02MCw3ICs2MCw3IEBAIHB1
YmxpYzoKICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRTZW5kRGF0YShieXRlc1NlbnQsIHRvdGFs
Qnl0ZXNUb0JlU2VudCk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkK
KyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAg
ICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNl
KGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKQEAgLTcyLDcgKzcyLDcgQEAgcHVibGljOgogICAgICAg
ICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRhKGRhdGEsIGRhdGFMZW5ndGgpOwogICAgIH0K
IAotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCisg
ICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyKQogICAgIHsKICAgICAgICAgbV9kb25lID0gdHJ1ZTsKICAgICAgICAgaWYgKG1fY2xpZW50
KQpAQCAtOTIsNyArOTIsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkRmFp
bChlcnJvcik7CiAgICAgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DYW5j
ZWxsYXRpb24odW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNhbmNlbGxhdGlv
bihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgICAg
ICBtX2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRl
eCA0NThiNjg5Yjc0Yjk4NDU0MzJkYjRiMDVkNTVjODZlOGIwZDJiOGIwLi44NDRjZGNmOGI3NzNk
NmVkYTdlMGFkYWU0Y2U4N2E2OGQ2NDFmMzk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuY3BwCkBAIC0xMTMsOCArMTEzLDkgQEAgV29ya2Vy
VGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6TWFpblRocmVhZEJyaWRnZShUaHJl
YWRhYmxlTG9hZGVyQ2xpZW4KICAgICA6IG1fd29ya2VyQ2xpZW50V3JhcHBlcigmd29ya2VyQ2xp
ZW50V3JhcHBlcikKICAgICAsIG1fbG9hZGVyUHJveHkobG9hZGVyUHJveHkpCiAgICAgLCBtX3Rh
c2tNb2RlKHRhc2tNb2RlLmlzb2xhdGVkQ29weSgpKQotICAgICwgbV93b3JrZXJSZXF1ZXN0SWRl
bnRpZmllcihnbG9iYWxTY29wZS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCkpCisgICAgLCBtX3dv
cmtlclJlcXVlc3RJZGVudGlmaWVyIHsgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0
ZSgpIH0KIHsKKyAgICAvLyBGSVhNRTogbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllciBzaG91bGQg
aGF2ZSBpdHMgb3duIHR5cGUsIGRpc3RpbmN0IGZyb20gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCB3aGljaCBzaG91bGQgb25seSBiZSB1c2VkIHRvIGlkZW50aWZ5IFJlc291cmNlTG9hZGVycy4K
ICAgICBhdXRvKiBzZWN1cml0eU9yaWdpbiA9IGdsb2JhbFNjb3BlLnNlY3VyaXR5T3JpZ2luKCk7
CiAgICAgYXV0byogY29udGVudFNlY3VyaXR5UG9saWN5ID0gZ2xvYmFsU2NvcGUuY29udGVudFNl
Y3VyaXR5UG9saWN5KCk7CiAKQEAgLTIyMCw3ICsyMjEsNyBAQCB2b2lkIFdvcmtlclRocmVhZGFi
bGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9u
ZyBieQogICAgIH0sIG1fdGFza01vZGUpOwogfQogCi12b2lkIFdvcmtlclRocmVhZGFibGVMb2Fk
ZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3JrZXJU
aHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQogewogICAgIG1fbG9hZGVyUHJveHkucG9zdFRhc2tGb3JNb2RlVG9Xb3JrZXJP
cldvcmtsZXRHbG9iYWxTY29wZShbcHJvdGVjdGVkV29ya2VyQ2xpZW50V3JhcHBlciA9IG1ha2VS
ZWYoKm1fd29ya2VyQ2xpZW50V3JhcHBlciksIHdvcmtlclJlcXVlc3RJZGVudGlmaWVyID0gbV93
b3JrZXJSZXF1ZXN0SWRlbnRpZmllciwgaWRlbnRpZmllciwgcmVzcG9uc2VEYXRhID0gcmVzcG9u
c2UuY3Jvc3NUaHJlYWREYXRhKCldIChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KSBt
dXRhYmxlIHsKICAgICAgICAgQVNTRVJUKGNvbnRleHQuaXNXb3JrZXJHbG9iYWxTY29wZSgpIHx8
IGNvbnRleHQuaXNXb3JrbGV0R2xvYmFsU2NvcGUoKSk7CkBAIC0yNDIsNyArMjQzLDcgQEAgdm9p
ZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpkaWRSZWNlaXZlRGF0
YShjb25zdCB1aW50OF90KiBkYXQKICAgICB9LCBtX3Rhc2tNb2RlKTsKIH0KIAotdm9pZCBXb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpkaWRGaW5pc2hMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFp
blRocmVhZEJyaWRnZTo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllcikKIHsKICAgICBtX2xvYWRpbmdGaW5pc2hlZCA9IHRydWU7CiAgICAgbV9sb2Fk
ZXJQcm94eS5wb3N0VGFza0Zvck1vZGVUb1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlKFtwcm90
ZWN0ZWRXb3JrZXJDbGllbnRXcmFwcGVyID0gbWFrZVJlZigqbV93b3JrZXJDbGllbnRXcmFwcGVy
KSwgd29ya2VyUmVxdWVzdElkZW50aWZpZXIgPSBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyLCBu
ZXR3b3JrTG9hZE1ldHJpY3MgPSBtX25ldHdvcmtMb2FkTWV0cmljcy5pc29sYXRlZENvcHkoKSwg
aWRlbnRpZmllcl0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIG11dGFibGUgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmgKaW5kZXgg
NTc2MjYwZWE3ZjkzZWZmMjNiNGI0N2QxZWE4ZTA5MGNjZDViNDQ1Zi4uNzIzYjQ1NmVjOGU5ZTMw
NmZjMThjYzhmMzZkZTZkY2Q4YWUzMDQ3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
V29ya2VyVGhyZWFkYWJsZUxvYWRlci5oCkBAIC0zMSw2ICszMSw3IEBACiAjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9h
ZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXIuaCIKICNpbmNsdWRl
ICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNs
aWVudFdyYXBwZXIuaCIKQEAgLTM4LDEwMiArMzksMTAyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotICAgIGNsYXNzIENvbnRlbnRTZWN1cml0eVBvbGljeTsKLSAgICBjbGFzcyBEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXI7Ci0gICAgY2xhc3MgUmVzb3VyY2VFcnJvcjsKLSAgICBjbGFzcyBS
ZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgU2VjdXJpdHlPcmlnaW47Ci0gICAgY2xhc3MgV29y
a2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Ci0gICAgY2xhc3MgV29ya2VyTG9hZGVyUHJveHk7Ci0K
LSAgICBjbGFzcyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V29y
a2VyVGhyZWFkYWJsZUxvYWRlcj4sIHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyIHsKLSAgICAgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitjbGFzcyBDb250ZW50U2VjdXJpdHlQb2xpY3k7Citj
bGFzcyBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI7CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xh
c3MgUmVzb3VyY2VSZXF1ZXN0OworY2xhc3MgU2VjdXJpdHlPcmlnaW47CitjbGFzcyBXb3JrZXJP
cldvcmtsZXRHbG9iYWxTY29wZTsKK2NsYXNzIFdvcmtlckxvYWRlclByb3h5OworCitjbGFzcyBX
b3JrZXJUaHJlYWRhYmxlTG9hZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJs
ZUxvYWRlcj4sIHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91
c2x5KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFRocmVh
ZGFibGVMb2FkZXJDbGllbnQmLCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYpOworICAg
IHN0YXRpYyBSZWY8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4gY3JlYXRlKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSwgVGhyZWFkYWJsZUxvYWRl
ckNsaWVudCYgY2xpZW50LCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3Qm
JiByZXF1ZXN0LCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucywgY29uc3Qg
U3RyaW5nJiByZWZlcnJlcikKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdv
cmtlclRocmVhZGFibGVMb2FkZXIoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUsIGNsaWVudCwg
dGFza01vZGUsIFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMsIHJlZmVycmVyKSk7CisgICAgfQor
CisgICAgfldvcmtlclRocmVhZGFibGVMb2FkZXIoKTsKKworICAgIHZvaWQgY2FuY2VsKCkgb3Zl
cnJpZGU7CisKKyAgICBib29sIGRvbmUoKSBjb25zdCB7IHJldHVybiBtX3dvcmtlckNsaWVudFdy
YXBwZXItPmRvbmUoKTsgfQorCisgICAgdm9pZCBub3RpZnlJc0RvbmUoYm9vbCBpc0RvbmUpOwor
CisgICAgdXNpbmcgUmVmQ291bnRlZDxXb3JrZXJUaHJlYWRhYmxlTG9hZGVyPjo6cmVmOworICAg
IHVzaW5nIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OmRlcmVmOworCitwcm90
ZWN0ZWQ6CisgICAgdm9pZCByZWZUaHJlYWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyByZWYoKTsg
fQorICAgIHZvaWQgZGVyZWZUaHJlYWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyBkZXJlZigpOyB9
CisKK3ByaXZhdGU6CisgICAgLy8gQ3JlYXRlcyBhIGxvYWRlciBvbiB0aGUgbWFpbiB0aHJlYWQg
YW5kIGJyaWRnZXMgY29tbXVuaWNhdGlvbiBiZXR3ZWVuCisgICAgLy8gdGhlIG1haW4gdGhyZWFk
IGFuZCB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQgd2hlcmUgV29ya2VyVGhyZWFkYWJsZUxv
YWRlciBydW5zLgorICAgIC8vCisgICAgLy8gUmVnYXJkaW5nIHRoZSBicmlkZ2UgYW5kIGxpZmV0
aW1lcyBvZiBpdGVtcyB1c2VkIGluIGNhbGxiYWNrcywgdGhlcmUgYXJlIGEgZmV3IGNhc2VzOgor
ICAgIC8vCisgICAgLy8gYWxsIGNhc2VzLiBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhlIHdvcmtl
ciBjb250ZXh0J3MgdGhyZWFkIGFyZSBvayBiZWNhdXNlCisgICAgLy8gICAgdGhlIGxhc3QgdGFz
ayBwb3N0ZWQgYWx3YXlzIGlzICJtYWluVGhyZWFkRGVzdHJveSIsIHNvIE1haW5UaHJlYWRCcmlk
Z2UgaXMKKyAgICAvLyAgICBhcm91bmQgZm9yIGFsbCB0YXNrcyB0aGF0IHVzZSBpdCBvbiB0aGUg
bWFpbiB0aHJlYWQuCisgICAgLy8KKyAgICAvLyBjYXNlIDEuIHdvcmtlci50ZXJtaW5hdGUgaXMg
Y2FsbGVkLgorICAgIC8vICAgIEluIHRoaXMgY2FzZSwgbm8gbW9yZSB0YXNrcyBhcmUgcG9zdGVk
IGZyb20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlcgorICAgIC8vICAg
IGNvbnRleHQncyB0aHJlYWQgLS0gV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGVQcm94eSBpbXBs
ZW1lbnRhdGlvbiBlbmZvcmNlcyB0aGlzLgorICAgIC8vCisgICAgLy8gY2FzZSAyLiB4aHIgZ2V0
cyBhYm9ydGVkIGFuZCB0aGUgd29ya2VyIGNvbnRleHQgY29udGludWVzIHJ1bm5pbmcuCisgICAg
Ly8gICAgVGhlIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGhhcyB0aGUgdW5kZXJseWlu
ZyBjbGllbnQgY2xlYXJlZCwgc28gbm8gbW9yZSBjYWxscworICAgIC8vICAgIGdvIHRocm91Z2gg
aXQuIEFsbCB0YXNrcyBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIG9iamVjdCdzIHRocmVhZCB0byB0
aGUgd29ya2VyIGNvbnRleHQncworICAgIC8vICAgIHRocmVhZCBjb250YWluIHRoZSBSZWZQdHI8
VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG9iamVjdCwgc28gdGhlCisgICAgLy8gICAg
VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaW5zdGFuY2UgaXMgdGhlcmUgdW50aWwgYWxs
IHRhc2tzIGFyZSBleGVjdXRlZC4KKyAgICBjbGFzcyBNYWluVGhyZWFkQnJpZGdlIDogcHVibGlj
IFRocmVhZGFibGVMb2FkZXJDbGllbnQgewogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIHZv
aWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYs
IFJlc291cmNlUmVxdWVzdCYmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29uc3QgVGhyZWFk
YWJsZUxvYWRlck9wdGlvbnMmKTsKLSAgICAgICAgc3RhdGljIFJlZjxXb3JrZXJUaHJlYWRhYmxl
TG9hZGVyPiBjcmVhdGUoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiBjbGllbnQsIGNvbnN0IFN0cmlu
ZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFRocmVhZGFibGVM
b2FkZXJPcHRpb25zJiBvcHRpb25zLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQotICAgICAgICB7
Ci0gICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBjbGllbnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJl
cXVlc3QpLCBvcHRpb25zLCByZWZlcnJlcikpOwotICAgICAgICB9Ci0KLSAgICAgICAgfldvcmtl
clRocmVhZGFibGVMb2FkZXIoKTsKLQotICAgICAgICB2b2lkIGNhbmNlbCgpIG92ZXJyaWRlOwot
Ci0gICAgICAgIGJvb2wgZG9uZSgpIGNvbnN0IHsgcmV0dXJuIG1fd29ya2VyQ2xpZW50V3JhcHBl
ci0+ZG9uZSgpOyB9CisgICAgICAgIC8vIEFsbCBleGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRl
eHQncyB0aHJlYWQuCisgICAgICAgIE1haW5UaHJlYWRCcmlkZ2UoVGhyZWFkYWJsZUxvYWRlckNs
aWVudFdyYXBwZXImLCBXb3JrZXJMb2FkZXJQcm94eSYsIGNvbnN0IFN0cmluZyYgdGFza01vZGUs
IFJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYsIGNvbnN0
IFN0cmluZyYgb3V0Z29pbmdSZWZlcnJlciwgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmKTsK
KyAgICAgICAgdm9pZCBjYW5jZWwoKTsKKyAgICAgICAgdm9pZCBkZXN0cm95KCk7CisgICAgICAg
IHZvaWQgY29tcHV0ZUlzRG9uZSgpOwogCi0gICAgICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wg
aXNEb25lKTsKKyAgICBwcml2YXRlOgorICAgICAgICAvLyBFeGVjdXRlZCBvbiB0aGUgd29ya2Vy
IGNvbnRleHQncyB0aHJlYWQuCisgICAgICAgIHZvaWQgY2xlYXJDbGllbnRXcmFwcGVyKCk7CisK
KyAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICAgICAgdm9p
ZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25n
IGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVycmlkZTsKKyAgICAgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhf
dCosIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKKyAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2Fk
aW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlk
RmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmlu
aXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQg
bm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKSBmaW5hbDsKKworICAgICAgICAvLyBPbmx5IHRvIGJl
IHVzZWQgb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAgICBSZWZQdHI8RG9jdW1lbnRUaHJlYWRh
YmxlTG9hZGVyPiBtX21haW5UaHJlYWRMb2FkZXI7CisgICAgICAgIGJvb2wgbV9sb2FkaW5nRmlu
aXNoZWQgeyBmYWxzZSB9OworCisgICAgICAgIC8vIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFw
cGVyIGlzIHRvIGJlIHVzZWQgb24gdGhlIHdvcmtlciBjb250ZXh0IHRocmVhZC4KKyAgICAgICAg
Ly8gVGhlIHJlZiBjb3VudGluZyBpcyBkb25lIG9uIGVpdGhlciB0aHJlYWQuCisgICAgICAgIFJl
ZlB0cjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gbV93b3JrZXJDbGllbnRXcmFwcGVy
OworCisgICAgICAgIC8vIE1heSBiZSB1c2VkIG9uIGVpdGhlciB0aHJlYWQuCisgICAgICAgIFdv
cmtlckxvYWRlclByb3h5JiBtX2xvYWRlclByb3h5OworCisgICAgICAgIC8vIEZvciB1c2Ugb24g
dGhlIG1haW4gdGhyZWFkLgorICAgICAgICBTdHJpbmcgbV90YXNrTW9kZTsKKyAgICAgICAgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXI7CisgICAgICAg
IE5ldHdvcmtMb2FkTWV0cmljcyBtX25ldHdvcmtMb2FkTWV0cmljczsKKyAgICB9OwogCi0gICAg
ICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OnJlZjsKLSAgICAg
ICAgdXNpbmcgUmVmQ291bnRlZDxXb3JrZXJUaHJlYWRhYmxlTG9hZGVyPjo6ZGVyZWY7CisgICAg
V29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFRocmVh
ZGFibGVMb2FkZXJDbGllbnQmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVl
c3QmJiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyKTsKIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAgdm9pZCByZWZUaHJlYWRhYmxlTG9hZGVy
KCkgb3ZlcnJpZGUgeyByZWYoKTsgfQotICAgICAgICB2b2lkIGRlcmVmVGhyZWFkYWJsZUxvYWRl
cigpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorICAgIHZvaWQgY29tcHV0ZUlzRG9uZSgpIGZpbmFs
OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgLy8gQ3JlYXRlcyBhIGxvYWRlciBvbiB0aGUgbWFp
biB0aHJlYWQgYW5kIGJyaWRnZXMgY29tbXVuaWNhdGlvbiBiZXR3ZWVuCi0gICAgICAgIC8vIHRo
ZSBtYWluIHRocmVhZCBhbmQgdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIHdoZXJlIFdvcmtl
clRocmVhZGFibGVMb2FkZXIgcnVucy4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gUmVnYXJkaW5n
IHRoZSBicmlkZ2UgYW5kIGxpZmV0aW1lcyBvZiBpdGVtcyB1c2VkIGluIGNhbGxiYWNrcywgdGhl
cmUgYXJlIGEgZmV3IGNhc2VzOgotICAgICAgICAvLwotICAgICAgICAvLyBhbGwgY2FzZXMuIEFs
bCB0YXNrcyBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQgYXJlIG9rIGJl
Y2F1c2UKLSAgICAgICAgLy8gICAgdGhlIGxhc3QgdGFzayBwb3N0ZWQgYWx3YXlzIGlzICJtYWlu
VGhyZWFkRGVzdHJveSIsIHNvIE1haW5UaHJlYWRCcmlkZ2UgaXMKLSAgICAgICAgLy8gICAgYXJv
dW5kIGZvciBhbGwgdGFza3MgdGhhdCB1c2UgaXQgb24gdGhlIG1haW4gdGhyZWFkLgotICAgICAg
ICAvLwotICAgICAgICAvLyBjYXNlIDEuIHdvcmtlci50ZXJtaW5hdGUgaXMgY2FsbGVkLgotICAg
ICAgICAvLyAgICBJbiB0aGlzIGNhc2UsIG5vIG1vcmUgdGFza3MgYXJlIHBvc3RlZCBmcm9tIHRo
ZSB3b3JrZXIgb2JqZWN0J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIKLSAgICAgICAgLy8gICAgY29u
dGV4dCdzIHRocmVhZCAtLSBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZVByb3h5IGltcGxlbWVu
dGF0aW9uIGVuZm9yY2VzIHRoaXMuCi0gICAgICAgIC8vCi0gICAgICAgIC8vIGNhc2UgMi4geGhy
IGdldHMgYWJvcnRlZCBhbmQgdGhlIHdvcmtlciBjb250ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgot
ICAgICAgICAvLyAgICBUaGUgVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaGFzIHRoZSB1
bmRlcmx5aW5nIGNsaWVudCBjbGVhcmVkLCBzbyBubyBtb3JlIGNhbGxzCi0gICAgICAgIC8vICAg
IGdvIHRocm91Z2ggaXQuICBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBvYmplY3Qn
cyB0aHJlYWQgdG8gdGhlIHdvcmtlciBjb250ZXh0J3MKLSAgICAgICAgLy8gICAgdGhyZWFkIGNv
bnRhaW4gdGhlIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gb2JqZWN0LCBz
byB0aGUKLSAgICAgICAgLy8gICAgVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaW5zdGFu
Y2UgaXMgdGhlcmUgdW50aWwgYWxsIHRhc2tzIGFyZSBleGVjdXRlZC4KLSAgICAgICAgY2xhc3Mg
TWFpblRocmVhZEJyaWRnZSA6IHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50IHsKLSAgICAg
ICAgcHVibGljOgotICAgICAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRoZSB3b3JrZXIgY29u
dGV4dCdzIHRocmVhZC4KLSAgICAgICAgICAgIE1haW5UaHJlYWRCcmlkZ2UoVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXImLCBXb3JrZXJMb2FkZXJQcm94eSYsIGNvbnN0IFN0cmluZyYgdGFz
a01vZGUsIFJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYs
IGNvbnN0IFN0cmluZyYgb3V0Z29pbmdSZWZlcnJlciwgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGUmKTsKLSAgICAgICAgICAgIHZvaWQgY2FuY2VsKCk7Ci0gICAgICAgICAgICB2b2lkIGRlc3Ry
b3koKTsKLSAgICAgICAgICAgIHZvaWQgY29tcHV0ZUlzRG9uZSgpOwotCi0gICAgICAgIHByaXZh
dGU6Ci0gICAgICAgICAgICAvLyBFeGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJl
YWQuCi0gICAgICAgICAgICB2b2lkIGNsZWFyQ2xpZW50V3JhcHBlcigpOwotCi0gICAgICAgICAg
ICAvLyBBbGwgZXhlY3V0ZWQgb24gdGhlIG1haW4gdGhyZWFkLgotICAgICAgICAgICAgdm9pZCBk
aWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxv
bmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRG
aW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgICAg
ICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgICAg
ICAgICAgdm9pZCBkaWRGaW5pc2hUaW1pbmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSBvdmVycmlk
ZTsKLSAgICAgICAgICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKSBmaW5hbDsKLQot
ICAgICAgICAgICAgLy8gT25seSB0byBiZSB1c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAg
ICAgICAgIFJlZlB0cjxEb2N1bWVudFRocmVhZGFibGVMb2FkZXI+IG1fbWFpblRocmVhZExvYWRl
cjsKLSAgICAgICAgICAgIGJvb2wgbV9sb2FkaW5nRmluaXNoZWQgeyBmYWxzZSB9OwotCi0gICAg
ICAgICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlciBpcyB0byBiZSB1c2VkIG9u
IHRoZSB3b3JrZXIgY29udGV4dCB0aHJlYWQuCi0gICAgICAgICAgICAvLyBUaGUgcmVmIGNvdW50
aW5nIGlzIGRvbmUgb24gZWl0aGVyIHRocmVhZC4KLSAgICAgICAgICAgIFJlZlB0cjxUaHJlYWRh
YmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOwotCi0gICAgICAg
ICAgICAvLyBNYXkgYmUgdXNlZCBvbiBlaXRoZXIgdGhyZWFkLgotICAgICAgICAgICAgV29ya2Vy
TG9hZGVyUHJveHkmIG1fbG9hZGVyUHJveHk7Ci0KLSAgICAgICAgICAgIC8vIEZvciB1c2Ugb24g
dGhlIG1haW4gdGhyZWFkLgotICAgICAgICAgICAgU3RyaW5nIG1fdGFza01vZGU7Ci0gICAgICAg
ICAgICB1bnNpZ25lZCBsb25nIG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIgeyAwIH07Ci0gICAg
ICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbV9uZXR3b3JrTG9hZE1ldHJpY3M7Ci0gICAgICAg
IH07Ci0KLSAgICAgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2Rl
LCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25z
dCBTdHJpbmcmIHJlZmVycmVyKTsKLQotICAgICAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5h
bDsKLQotICAgICAgICBSZWY8V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JX
b3JrbGV0R2xvYmFsU2NvcGU7Ci0gICAgICAgIFJlZjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3Jh
cHBlcj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOwotICAgICAgICBNYWluVGhyZWFkQnJpZGdlJiBt
X2JyaWRnZTsKLSAgICB9OworICAgIFJlZjxXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZT4gbV9X
b3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZTsKKyAgICBSZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVu
dFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKKyAgICBNYWluVGhyZWFkQnJpZGdlJiBt
X2JyaWRnZTsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5k
ZXggNjhmMjI0MzExMmY4Njk1ZGI2ZmQ2OWY1ZjgzMjU3ZDc2Mjc5NjA5OS4uNGJjMmIwOTI3NWYx
MzgyMDM2OWE5NGJlMDhmZmNiOGQxMmZiOGI5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKQEAgLTQzNyw3
ICs0MzcsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6dXBkYXRlKEZyYW1lJiBmcmFt
ZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB1cAogCiAgICAgYXV0byByZXF1ZXN0ID0g
Y3JlYXRlUmVxdWVzdChVUkwgeyBtX21hbmlmZXN0VVJMIH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25l
d2VzdENhY2hlLT5tYW5pZmVzdFJlc291cmNlKCkgOiBudWxscHRyKTsKIAotICAgIG1fY3VycmVu
dFJlc291cmNlSWRlbnRpZmllciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVV
bmlxdWVJZGVudGlmaWVyKCk7CisgICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0KG1fZnJhbWUuZ2V0KCksIG1fY3VycmVudFJlc291cmNl
SWRlbnRpZmllciwgbV9mcmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwg
UmVzb3VyY2VSZXNwb25zZSB7IH0sIG51bGxwdHIpOwogCiAgICAgbV9tYW5pZmVzdExvYWRlciA9
IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlcjo6Y3JlYXRlKEFwcGxpY2F0aW9uQ2FjaGVS
ZXNvdXJjZTo6VHlwZTo6TWFuaWZlc3QsIGRvY3VtZW50TG9hZGVyLmNhY2hlZFJlc291cmNlTG9h
ZGVyKCksIFdURk1vdmUocmVxdWVzdCksIFt0aGlzXSAoYXV0byYmIHJlc291cmNlT3JFcnJvcikg
ewpAQCAtODk4LDcgKzg5OCw3IEBAIHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFydExv
YWRpbmdFbnRyeSgpCiAKICAgICBhdXRvIHJlcXVlc3QgPSBjcmVhdGVSZXF1ZXN0KFVSTCB7IHsg
fSwgZmlyc3RQZW5kaW5nRW50cnlVUkwgfSwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUt
PnJlc291cmNlRm9yVVJMKGZpcnN0UGVuZGluZ0VudHJ5VVJMKSA6IG51bGxwdHIpOwogCi0gICAg
bV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygp
LmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZp
ZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QobV9mcmFtZS5nZXQoKSwgbV9jdXJyZW50
UmVzb3VyY2VJZGVudGlmaWVyLCBtX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLCBy
ZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlIHsgfSwgbnVsbHB0cik7CiAKICAgICBhdXRvJiBkb2N1
bWVudExvYWRlciA9ICptX2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5oCmluZGV4IDYzNzFmYTU4ZWJjNjU0MDk1MDEyZTAzYTRlN2Q0ZTY0YjQwYjFiOWEuLmI5YmY4
NzYzOGYzMDNhZWE5Yzg2YTY0NWVlOGMxZjkyOTI1NjM4ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKQEAgLTE4
MSw3ICsxODEsNyBAQCBwcml2YXRlOgogICAgIAogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2U+IG1fY3VycmVudFJlc291cmNlOwogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2VMb2FkZXI+IG1fZW50cnlMb2FkZXI7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2N1cnJl
bnRSZXNvdXJjZUlkZW50aWZpZXI7CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1fY3Vy
cmVudFJlc291cmNlSWRlbnRpZmllcjsKIAogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVz
b3VyY2U+IG1fbWFuaWZlc3RSZXNvdXJjZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJl
c291cmNlTG9hZGVyPiBtX21hbmlmZXN0TG9hZGVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAKaW5kZXggOTAwOWEzOWI3NWM3NWExMjE2
YTdlYmE3ZDZjZmFiOWY5Njc3ZWVmZS4uOTJiMDgzNjk3NTg4ODQ0MDkxOTM5ZTNlZWQ3OWQ3N2Yx
ODM5NTYyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJh
d1Jlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3
UmVzb3VyY2UuY3BwCkBAIC00Myw3ICs0Myw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ2Fj
aGVkUmF3UmVzb3VyY2U6OkNhY2hlZFJhd1Jlc291cmNlKENhY2hlZFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QsIFR5cGUgdHlwZSwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBDb29r
aWVKYXIqIGNvb2tpZUphcikKICAgICA6IENhY2hlZFJlc291cmNlKFdURk1vdmUocmVxdWVzdCks
IHR5cGUsIHNlc3Npb25JRCwgY29va2llSmFyKQotICAgICwgbV9pZGVudGlmaWVyKDApCiAgICAg
LCBtX2FsbG93RW5jb2RlZERhdGFSZXBsYWNlbWVudCh0cnVlKQogewogICAgIEFTU0VSVChpc01h
aW5Pck1lZGlhT3JJY29uT3JSYXdSZXNvdXJjZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKaW5kZXggZmQ0YTI2OWJkNWEyYmI2MDQ5ODVj
NDdkNmIzOGE3OTMwNzZmZjk0Yi4uODRlMGQ4NDRkNTcxMDk5NTNhZTZiZmY2NTU2NTk5NTNlMjhi
YTY5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jl
c291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291
cmNlLmgKQEAgLTM5LDcgKzM5LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0RGF0YUJ1ZmZlcmlu
Z1BvbGljeShEYXRhQnVmZmVyaW5nUG9saWN5KTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIGlzIGV4
cG9zZWQgZm9yIHRoZSBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24gZm9yIHByZWZsaWdodHMgaW4g
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLiBJdCdzIGFsc28gcmVhbGx5IGxhbWUuCi0gICAgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9Cisg
ICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgY2xlYXIoKTsKIApAQCAtNzMsNyArNzMsNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgcHJldmlld1Jlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmll
cjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wg
bV9hbGxvd0VuY29kZWREYXRhUmVwbGFjZW1lbnQ7CiAgICAgYm9vbCBtX2luSW5jcmVtZW50YWxE
YXRhTm90aWZ5IHsgZmFsc2UgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggODZmNzcyMGI4M2ViMDNlMTE4Y2VlZDZmMjM0MThiOGIy
NjVkZjQyNi4uNWFiNGE0OGQyZmNiNjBlM2M5NzMyZWZjMDBkNWNkZmI3ZjllNzUyNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCkBAIC0yNjUs
NyArMjY1LDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZTo6bG9hZChDYWNoZWRSZXNvdXJjZUxvYWRl
ciYgY2FjaGVkUmVzb3VyY2VMb2FkZXIpCiAgICAgICAgIEFTU0VSVChtX29yaWdpbmFsUmVxdWVz
dCk7CiAgICAgICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBwcm90ZWN0
ZWRUaGlzKHRoaXMpOwogCi0gICAgICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IGZyYW1l
LnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIGF1
dG8gaWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAg
ICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoJmZy
YW1lLCBpZGVudGlmaWVyLCBmcmFtZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpLCByZXF1
ZXN0LCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRUeXBlOjpCZWFjb24pOwogCiAgICAg
ICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgpLT5zdGFydFBpbmdMb2Fk
KGZyYW1lLCByZXF1ZXN0LCBtX29yaWdpbmFsUmVxdWVzdC0+aHR0cEhlYWRlckZpZWxkcygpLCBt
X29wdGlvbnMsIG1fb3B0aW9ucy5jb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uLCBbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIHByb3RlY3RlZEZyYW1l
ID0gbWFrZVJlZihmcmFtZSksIGlkZW50aWZpZXJdIChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJv
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKaW5kZXggNWY5NTY5ZWNhYjEzY2ZjMmZmYWNl
N2ZmMTFlNzg2MTcyZWVlNzMwMC4uMzk2MDAyODMyY2MxNTNjNTkwNDc4Y2EyNTE4MTNlNmMwMzVi
YzI3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgK
QEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJGcmFtZUxvYWRlclR5cGVzLmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFByaW9yaXR5LmgiCisj
aW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VM
b2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAi
UmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtMjg2LDcgKzI4Nyw3IEBAIHB1YmxpYzoKICAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHRyeVJlcGxhY2VFbmNvZGVkRGF0YShTaGFyZWRCdWZmZXImKTsKICNl
bmRpZgogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJj
ZUxvYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3Vy
Y2VMb2FkZXI7IH0KKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllckZvckxv
YWRXaXRob3V0UmVzb3VyY2VMb2FkZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXJGb3JM
b2FkV2l0aG91dFJlc291cmNlTG9hZGVyOyB9CiAKICAgICB2b2lkIHNldE9yaWdpbmFsUmVxdWVz
dChzdGQ6OnVuaXF1ZV9wdHI8UmVzb3VyY2VSZXF1ZXN0PiYmIG9yaWdpbmFsUmVxdWVzdCkgeyBt
X29yaWdpbmFsUmVxdWVzdCA9IFdURk1vdmUob3JpZ2luYWxSZXF1ZXN0KTsgfQogICAgIGNvbnN0
IHN0ZDo6dW5pcXVlX3B0cjxSZXNvdXJjZVJlcXVlc3Q+JiBvcmlnaW5hbFJlcXVlc3QoKSBjb25z
dCB7IHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsgfQpAQCAtMzQyLDcgKzM0Myw3IEBAIHByaXZh
dGU6CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9uSUQ7CiAgICAgUmVmUHRyPGNvbnN0IENv
b2tpZUphcj4gbV9jb29raWVKYXI7CiAgICAgV2FsbFRpbWUgbV9yZXNwb25zZVRpbWVzdGFtcDsK
LSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXIgeyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllckZvckxv
YWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CiAKICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlQ2xp
ZW50Kiwgc3RkOjp1bmlxdWVfcHRyPENhbGxiYWNrPj4gbV9jbGllbnRzQXdhaXRpbmdDYWxsYmFj
azsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNwcAppbmRleCA3Yjc3ZTQwN2VlNWQwOGFi
Mzc4NGQwODk5Y2ZhMzNmMDE3N2YwNjQ4Li42MDI2MzFiYjdjZDEwODYwYjFhMzEyMTA0M2M5N2Q4
ZWZlNDQ3NjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNwcApAQCAtMTg4LDcgKzE4
OCw3IEBAIGJvb2wgRXZlbnRTb3VyY2U6OnJlc3BvbnNlSXNWYWxpZChjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBFdmVu
dFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgQVNTRVJUKG1fc3RhdGUgPT0gQ09OTkVDVElORyk7CiAgICAgQVNTRVJUKG1f
cmVxdWVzdEluRmxpZ2h0KTsKQEAgLTIyMCw3ICsyMjAsNyBAQCB2b2lkIEV2ZW50U291cmNlOjpk
aWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgbGVuZ3RoKQogICAgIHBhcnNl
RXZlbnRTdHJlYW0oKTsKIH0KIAotdm9pZCBFdmVudFNvdXJjZTo6ZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nKQordm9pZCBFdmVudFNvdXJjZTo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJUKG1fc3RhdGUgPT0gT1BFTik7CiAgICAg
QVNTRVJUKG1fcmVxdWVzdEluRmxpZ2h0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRXZlbnRTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaAppbmRl
eCBlMTBkOGQ5MTZmYjBmMjVmYmVhM2Y3YWMyYWY1NWY1NzBiMjBkY2E2Li5kMDEyZDM3N2QxOTc2
NzVmMGZlMTE0NWYxNzE5ZjE3ZmRkYmZlYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0V2ZW50U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5o
CkBAIC04Myw5ICs4Myw5IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkb0V4cGxpY2l0TG9hZENhbmNl
bGxhdGlvbigpOwogCiAgICAgLy8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAotICAgIHZvaWQgZGlk
UmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVE
YXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3Vy
Y2VFcnJvciYpIGZpbmFsOwogCiAgICAgLy8gQWN0aXZlRE9NT2JqZWN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlci5jcHAKaW5kZXggYzQ4YTI5NmNjYzAyZTU3YmMyZGJkNjAxNzQ0NDU5N2NjOWFhMzBk
Ny4uZTk3YTA1OGRmNmM4YmQyZmFkM2MxYTNiMjgzZGY3ZTY2OTc5NTE1MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyLmNwcApAQCAtMTk2LDcgKzE5Niw3IEBAIHZvaWQgV29ya2VyOjpub3RpZnlO
ZXR3b3JrU3RhdGVDaGFuZ2UoYm9vbCBpc09uTGluZSkKICAgICBtX2NvbnRleHRQcm94eS5ub3Rp
ZnlOZXR3b3JrU3RhdGVDaGFuZ2UoaXNPbkxpbmUpOwogfQogCi12b2lkIFdvcmtlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkKIHsKICAgICBjb25zdCBVUkwmIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAg
ICAgaWYgKCFyZXNwb25zZVVSTC5wcm90b2NvbElzQmxvYigpICYmICFyZXNwb25zZVVSTC5wcm90
b2NvbElzKCJmaWxlIikgJiYgIVNlY3VyaXR5T3JpZ2luOjpjcmVhdGUocmVzcG9uc2VVUkwpLT5p
c1VuaXF1ZSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgKaW5kZXggYzMxZTc5YmQ1NWZmODIwOGZj
N2I0MmQ3ZTk4MmJjM2Q1MWFjYjEyMy4uYmQyOWU1N2ZlNGYyYTI2NzgzNThmZWQxZTE3M2FmYzJi
ZDY4N2ViNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5oCkBAIC04Nyw3ICs4Nyw3IEBAIHByaXZh
dGU6CiAKICAgICB2b2lkIG5vdGlmeU5ldHdvcmtTdGF0ZUNoYW5nZShib29sIGlzT25saW5lKTsK
IAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZp
bmFsOwogICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIC8vIEFjdGl2ZURP
TU9iamVjdC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExv
YWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1
ZXN0LmNwcAppbmRleCBmYWJiZDAzZWIwYWRjMTIwNGUxMDQxYTEwOGUwNWI3NmU0NTQ1NTA3Li5m
MTU3ZDMwOTdkZjY5ODdhNGI2MzRiN2ZkNjMzMzllOTA5ZDg2ZTlmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0xMDUsNyArMTA1
LDcgQEAgdm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OnNldENsaWVudChGb250TG9hZFJlcXVl
c3RDbGllbnQqIGNsaWVudCkKICAgICB9CiB9CiAKLXZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0
OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCiB7CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAm
JiByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKQogICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0
cnVlOwpAQCAtMTIyLDcgKzEyMiw3IEBAIHZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRS
ZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKICAgICBtX2Rh
dGEtPmFwcGVuZChkYXRhLCBkYXRhTGVuZ3RoKTsKIH0KIAotdm9pZCBXb3JrZXJGb250TG9hZFJl
cXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgV29ya2VyRm9udExv
YWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsK
ICAgICBtX2lzTG9hZGluZyA9IGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJGb250TG9hZFJlcXVlc3QuaAppbmRleCAxNWM0NTEzODAwNTA0YWIwM2Q0OTE3OWJiNTRl
ODIwMGUyZDQ5OThkLi5hZjY5MjA2MzAyZGMxYmFlZDU5OTA0NGU3Yjc2NWU3YmM1MDI4ZjkyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKQEAg
LTYwLDkgKzYwLDkgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgaXNXb3JrZXJGb250TG9hZFJlcXVl
c3QoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2Vp
dmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2
b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAg
ICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsK
ICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCiAgICAgVVJM
IG1fdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJPcldvcmts
ZXRHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZS5oCmluZGV4IGU0NzlkZGVhMDRlYTVlMWUyNjZlNTE1YWY5MmNlZDNmOTk1N2Vj
NTYuLmI5NzBjZGU0MWU3YzU0MTEyMTAyNTJlNjVhMThlNDFjNmI5MzlkNjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmgKQEAg
LTU0LDggKzU0LDYgQEAgcHVibGljOgogICAgIEpTQzo6Vk0mIHZtKCkgZmluYWw7CiAgICAgV29y
a2VySW5zcGVjdG9yQ29udHJvbGxlciYgaW5zcGVjdG9yQ29udHJvbGxlcigpIGNvbnN0IHsgcmV0
dXJuICptX2luc3BlY3RvckNvbnRyb2xsZXI7IH0KIAotICAgIHVuc2lnbmVkIGxvbmcgY3JlYXRl
VW5pcXVlSWRlbnRpZmllcigpIHsgcmV0dXJuIG1fdW5pcXVlSWRlbnRpZmllcisrOyB9Ci0KICAg
ICBTY3JpcHRNb2R1bGVMb2FkZXImIG1vZHVsZUxvYWRlcigpIHsgcmV0dXJuICptX21vZHVsZUxv
YWRlcjsgfQogCiAgICAgLy8gU2NyaXB0RXhlY3V0aW9uQ29udGV4dC4KQEAgLTk5LDcgKzk3LDYg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V29ya2VyRXZlbnRMb29wPiBtX2V2ZW50TG9vcDsKICAg
ICBzdGQ6OnVuaXF1ZV9wdHI8RXZlbnRMb29wVGFza0dyb3VwPiBtX2RlZmF1bHRUYXNrR3JvdXA7
CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXI+IG1faW5zcGVj
dG9yQ29udHJvbGxlcjsKLSAgICB1bnNpZ25lZCBsb25nIG1fdW5pcXVlSWRlbnRpZmllciB7IDEg
fTsKICAgICBib29sIG1faXNDbG9zaW5nIHsgZmFsc2UgfTsKIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNwcAppbmRleCA3M2FlN2FiYjcxM2M2YWY2
OTQ1YjhkNTFlMGEwZTdmOTc5YjExNWYxLi5iZjVhNDRmZTM0OGQyZmZjZTkxNmZiMTk0OTE1ZTY3
YmZkYTlhZWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlw
dExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2Fk
ZXIuY3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgUmVzb3VyY2VFcnJvciBXb3JrZXJTY3JpcHRMb2Fk
ZXI6OnZhbGlkYXRlV29ya2VyUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYKICAgICBy
ZXR1cm4geyB9OwogfQogCi12b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCit2b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKIHsKICAgICBtX2Vycm9yID0gdmFsaWRhdGVXb3JrZXJSZXNwb25zZShyZXNwb25z
ZSwgbV9kZXN0aW5hdGlvbik7CiAgICAgaWYgKCFtX2Vycm9yLmlzTnVsbCgpKSB7CkBAIC0yMjEs
NyArMjIxLDcgQEAgdm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBsZW4pCiAgICAgbV9zY3JpcHQuYXBwZW5kKG1fZGVjb2Rlci0+
ZGVjb2RlKGRhdGEsIGxlbikpOwogfQogCi12b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkRmlu
aXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdvcmtlclNjcmlwdExv
YWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBpZiAobV9mYWlsZWQpIHsKICAgICAgICAgbm90aWZ5RXJyb3IoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oCmluZGV4IDNlZTRkYTZjNTA2
Y2JmZDZlYjg3NWQ5YzI3NDk4ZjEzZjNjN2ExMTkuLmVhNTM4MGZiZWVmODc1NDAzMTZhNmZhOTI3
OGNjMjE3Yzg5MzE0ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
U2NyaXB0TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRM
b2FkZXIuaApAQCAtNzUsMTIgKzc1LDEyIEBAIHB1YmxpYzoKICAgICBjb25zdCBDZXJ0aWZpY2F0
ZUluZm8mIGNlcnRpZmljYXRlSW5mbygpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGVJbmZv
OyB9CiAgICAgY29uc3QgU3RyaW5nJiByZXNwb25zZU1JTUVUeXBlKCkgY29uc3QgeyByZXR1cm4g
bV9yZXNwb25zZU1JTUVUeXBlOyB9CiAgICAgYm9vbCBmYWlsZWQoKSBjb25zdCB7IHJldHVybiBt
X2ZhaWxlZDsgfQotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJu
IG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IoKSBjb25zdCB7IHJldHVybiBtX2Vycm9yOyB9CiAKLSAgICB2b2lkIGRpZFJlY2Vp
dmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lk
IGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOwogCiAgICAgdm9pZCBjYW5jZWwoKTsKQEAgLTExMCw3ICsxMTAsNyBAQCBwcml2
YXRlOgogICAgIENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyBtX2NvbnRlbnRT
ZWN1cml0eVBvbGljeTsKICAgICBTdHJpbmcgbV9yZWZlcnJlclBvbGljeTsKICAgICBDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5IG1fY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeTsKLSAgICB1bnNp
Z25lZCBsb25nIG1faWRlbnRpZmllciB7IDAgfTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV9mYWlsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wg
bV9maW5pc2hpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pc1JlZGlyZWN0ZWQgeyBmYWxzZSB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXJD
bGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50
LmgKaW5kZXggMjc0Y2U0OGUxZDZmM2ZiMDY5NGQyMjU2ZDE2ZjM1ZWFhMzU5NzY1Zi4uMTViMzI1
ZTQ3NWY0YzliYmI0ZjI5ODI4ODFlNDU3ZjZjNGNmZjc2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlckNsaWVudC5oCkBAIC0zMiw3ICszMiw3IEBA
IGNsYXNzIFJlc291cmNlUmVzcG9uc2U7CiAKIGNsYXNzIFdvcmtlclNjcmlwdExvYWRlckNsaWVu
dCB7CiBwdWJsaWM6Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlz
aGVkKCkgPSAwOwogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAKaW5kZXggODY3Yjg2OTQ3NTM0NGZjZTMzY2Nk
YTk5ZjdlYzkwY2Y0NzcxM2Q1Yi4uNjllZjlkNzA3ZmM0M2Q0N2MyZTIyNjVhYTE0OTYzNGUzYmIw
MThkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VX
b3JrZXJKb2IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNl
V29ya2VySm9iLmNwcApAQCAtMTQwLDcgKzE0MCw3IEBAIFJlc291cmNlRXJyb3IgU2VydmljZVdv
cmtlckpvYjo6dmFsaWRhdGVTZXJ2aWNlV29ya2VyUmVzcG9uc2UoY29uc3QgU2VydmljZVdvcmtl
CiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBTZXJ2aWNlV29ya2VySm9iOjpkaWRSZWNlaXZl
UmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
Cit2b2lkIFNlcnZpY2VXb3JrZXJKb2I6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFT
U0VSVChtX2NyZWF0aW9uVGhyZWFkLnB0cigpID09ICZUaHJlYWQ6OmN1cnJlbnQoKSk7CiAgICAg
QVNTRVJUKCFtX2NvbXBsZXRlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL1NlcnZpY2VXb3JrZXJKb2IuaAppbmRleCAwN2NjYjc0NzAyZTU0MDA2NTBhNjYyODU0M2U4
MzNjNTQ2NGY5YmJiLi43YzU4YTQ2YzI0MjA1ODIwYWIwMTA5YzFlNTNjYzZkZWFkYmViZjg4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpv
Yi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9i
LmgKQEAgLTc0LDcgKzc0LDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFdvcmtlclNj
cmlwdExvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIGZpbmFsOwogICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAog
ICAgIFNlcnZpY2VXb3JrZXJKb2JDbGllbnQmIG1fY2xpZW50OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxI
dHRwUmVxdWVzdC5jcHAKaW5kZXggMjViZjgyMDA5ZTNhYTgyYzEzOGMxNzU3MDJiNjQwYTQ3YWIz
Zjk5YS4uNjJmNzBlZWI4MDFkODQ4NGUxYTQ4OTVmN2QzNDZjMWI0ZTRjNzhlZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCkBAIC05MjYsNyArOTI2LDcgQEAgdm9pZCBYTUxI
dHRwUmVxdWVzdDo6ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBuZXR3
b3JrRXJyb3IoKTsKIH0KIAotdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nKQordm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJl
ZigqdGhpcyk7CiAKQEAgLTk3MCw3ICs5NzAsNyBAQCB2b2lkIFhNTEh0dHBSZXF1ZXN0OjpkaWRT
ZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbgog
ICAgIH0KIH0KIAotdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBYTUxIdHRw
UmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9yZXNwb25zZSA9IHJlc3Bv
bnNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaAppbmRleCBjMDRhMTY4OTYwOWI2
ZmI5MWE2ODBjOThmN2UwNzMyYTc0OGY5ZWYyLi44ZjZlODkyNjBkZWMxNjc1ZWRmY2VmNTg0YjAz
MGQ4NmM3NjY4ODM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVl
c3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaApAQCAtMTYxLDkg
KzE2MSw5IEBAIHByaXZhdGU6CiAKICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50CiAgICAg
dm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBs
b25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2Vp
dmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lk
IGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYp
IG92ZXJyaWRlOwogICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wpIGZpbmFsOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MuY3BwCmluZGV4IDVkZDhiMzU2ODNkNTg4ZjFlN2Q3MmNiMTgxMjNjMjY2
NzY1ZGU2MjMuLmJiMDVmMGVlNTI0ZjU1NDcyMmUzZWFhN2VlNWRkMWIwZTFhNGU1ZjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC0yMDYsNyArMjA2LDcgQEAgdm9pZCBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9u
JiBjb25uZWN0aW8KICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVz
c2FnZXM6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAg
ICAgICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICAgICAgUkVMRUFT
RV9BU1NFUlQoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpOwotICAgICAgICBpZiAoYXV0byogbG9h
ZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldChkZWNvZGVyLmRlc3RpbmF0aW9uSUQo
KSkpCisgICAgICAgIGlmIChhdXRvKiBsb2FkZXIgPSBtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMu
Z2V0KG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPihkZWNvZGVy
LmRlc3RpbmF0aW9uSUQoKSkpKQogICAgICAgICAgICAgbG9hZGVyLT5kaWRSZWNlaXZlTmV0d29y
a1Jlc291cmNlTG9hZGVyTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KQEAgLTQ1OSw3ICs0NTksNyBAQCBOZXR3b3JrU2Vzc2lvbiogTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om5ldHdvcmtTZXNzaW9uKCkKIAogVmVjdG9yPFJlZlB0cjxX
ZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6cmVzb2x2ZUJsb2JSZWZlcmVuY2VzKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzJiBsb2FkUGFyYW1ldGVycykKIHsKLSAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExv
YWRpbmcsICJyZXNvbHZlQmxvYlJlZmVyZW5jZXM6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlE
PSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIs
IHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2Fk
UGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQ
YWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBs
b2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExv
YWRpbmcsICJyZXNvbHZlQmxvYlJlZmVyZW5jZXM6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlE
PSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIs
IHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2Fk
UGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQ
YWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBs
b2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byogc2Vzc2lv
biA9IG5ldHdvcmtTZXNzaW9uKCk7CiAgICAgaWYgKCFzZXNzaW9uKQpAQCAtNDg4LDcgKzQ4OCw3
IEBAIHN0ZDo6dW5pcXVlX3B0cjxTZXJ2aWNlV29ya2VyRmV0Y2hUYXNrPiBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlRmV0CiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElk
ZW50aWZpZXI+IGV4aXN0aW5nTG9hZGVyVG9SZXN1bWUpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxF
QVNFX0xPRyhMb2FkaW5nLCAic2NoZWR1bGVSZXNvdXJjZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBh
Z2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIg
UFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9
JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lLnZhbHVlX29yKE5ldHdvcmtSZXNv
dXJjZUxvYWRJZGVudGlmaWVyIHsgfSkudG9VSW50NjQoKSk7CisgICAgQ09OTkVDVElPTl9SRUxF
QVNFX0xPRyhMb2FkaW5nLCAic2NoZWR1bGVSZXNvdXJjZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBh
Z2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIg
UFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9
JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyLnRvVUludDY0KCksIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWUudmFsdWVfb3Io
TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXIgeyB9KS50b1VJbnQ2NCgpKTsKIAogI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKICAgICBhdXRvJiBzZXJ2ZXIgPSBtX25ldHdvcmtQcm9jZXNz
LT5zd1NlcnZlckZvclNlc3Npb24obV9zZXNzaW9uSUQpOwpAQCAtNTMyLDcgKzUzMiw3IEBAIHZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKE5l
dHdvcmtSZXNvdXJjZUxvYWRQYXJhCiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQoTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMm
JiBsb2FkUGFyYW1ldGVycywgTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
OjpQZXJmb3JtU3luY2hyb25vdXNMb2FkOjpEZWxheWVkUmVwbHkmJiByZXBseSkKIHsKLSAgICBD
T05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJwZXJmb3JtU3luY2hyb25vdXNMb2FkOiAo
cGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2
NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQ
YXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJz
LndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAg
Q09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicGVyZm9ybVN5bmNocm9ub3VzTG9hZDog
KHBhcmVudFBJRD0lZCwgcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1
NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2Fk
UGFyYW1ldGVycy5wYXJlbnRQSUQsIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUlu
dDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy53ZWJGcmFtZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50
NjQoKSk7CiAKICAgICBhdXRvIGlkZW50aWZpZXIgPSBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVy
OwogICAgIFJFTEVBU0VfQVNTRVJUKGlkZW50aWZpZXIpOwpAQCAtNTU0LDcgKzU1NCw3IEBAIHZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRlc3RQcm9jZXNzSW5jb21pbmdTeW5j
TWVzc2FnZXNXaGVuV2FpdGluZ0ZvCiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OmxvYWRQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRl
cnMpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZFBpbmc6IChw
YXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0
ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBh
cmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBD
T05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJsb2FkUGluZzogKHBhcmVudFBJRD0lZCwg
cGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0l
IiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJl
bnRQSUQsIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJh
bWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRv
VUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBh
dXRvIGNvbXBsZXRpb25IYW5kbGVyID0gW2Nvbm5lY3Rpb24gPSBtX2Nvbm5lY3Rpb24sIGlkZW50
aWZpZXIgPSBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyXSAoY29uc3QgUmVzb3VyY2VFcnJvciYg
ZXJyb3IsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKSB7CiAgICAgICAgIGNvbm5l
Y3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6RGlkRmluaXNo
UGluZ0xvYWQoaWRlbnRpZmllciwgZXJyb3IsIHJlc3BvbnNlKSwgMCk7CkBAIC01NzQsNyArNTc0
LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y29va2llQWNjZXB0UG9s
aWN5Q2hhbmdlZChIVFRQQ29va2llQWNjZXB0UG8KICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVz
c2FnZXM6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6Q29va2llQWNjZXB0UG9saWN5Q2hhbmdl
ZChuZXdQb2xpY3kpLCAwKTsKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6cmVtb3ZlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVy
KQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAg
UkVMRUFTRV9BU1NFUlQoaWRlbnRpZmllcik7CiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOwpAQCAtNTg3LDcgKzU4Nyw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIKIAog
ICAgIC8vIEFib3J0IHRoZSBsb2FkIG5vdywgYXMgdGhlIFdlYlByb2Nlc3Mgd29uJ3QgYmUgYWJs
ZSB0byByZXNwb25kIHRvIG1lc3NhZ2VzIGFueSBtb3JlIHdoaWNoIG1pZ2h0IGxlYWQKICAgICAv
LyB0byBsZWFrZWQgbG9hZGVyIHJlc291cmNlcyAoY29ubmVjdGlvbnMsIHRocmVhZHMsIGV0Yyku
Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVtb3ZlTG9hZElkZW50aWZp
ZXI6IFJlbW92aW5nIGlkZW50aWZpZXIgJSIgUFJJdTY0ICIgYW5kIGFib3J0aW5nIGNvcnJlc3Bv
bmRpbmcgbG9hZGVyIiwgaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAicmVtb3ZlTG9hZElkZW50aWZpZXI6IFJlbW92aW5nIGlkZW50aWZpZXIgJSIgUFJJ
dTY0ICIgYW5kIGFib3J0aW5nIGNvcnJlc3BvbmRpbmcgbG9hZGVyIiwgaWRlbnRpZmllci50b1VJ
bnQ2NCgpKTsKICAgICBsb2FkZXItPmFib3J0KCk7CiAgICAgQVNTRVJUKCFtX25ldHdvcmtSZXNv
dXJjZUxvYWRlcnMuY29udGFpbnMoaWRlbnRpZmllcikpOwogfQpAQCAtNjI3LDkgKzYyNyw5IEBA
IHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNlbmRIMlBpbmcoTmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnMmJiBwCiAjZW5kaWYKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHBy
ZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmIGxv
YWRQYXJhbWV0ZXJzKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29u
bmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBw
cmVjb25uZWN0aW9uSWRlbnRpZmllciwgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBs
b2FkUGFyYW1ldGVycykKIHsKLSAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJw
cmVjb25uZWN0VG86IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQ
YWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJ
dTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdl
UHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwg
bG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVu
dGlmaWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJwcmVjb25uZWN0
VG86IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIg
UFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwg
bG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50
b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFt
ZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRv
VUludDY0KCkpOwogCiAgICAgQVNTRVJUKCFsb2FkUGFyYW1ldGVycy5yZXF1ZXN0Lmh0dHBCb2R5
KCkpOwogCkBAIC02NTcsMTIgKzY1NywxMiBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubgogICAg
IGNvbXBsZXRpb25IYW5kbGVyKGludGVybmFsRXJyb3IobG9hZFBhcmFtZXRlcnMucmVxdWVzdC51
cmwoKSkpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjppc1Jlc291
cmNlTG9hZEZpbmlzaGVkKHVpbnQ2NF90IGxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgbG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2Fs
bGJhY2spCiB7CiAgICAgY2FsbGJhY2soIW1fbmV0d29ya1Jlc291cmNlTG9hZGVycy5jb250YWlu
cyhsb2FkSWRlbnRpZmllcikpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9y
JiBlcnJvcikKIHsKICAgICBpZiAoIW1fY29ubmVjdGlvbi0+aXNWYWxpZCgpKQogICAgICAgICBy
ZXR1cm47CkBAIC02ODMsNyArNjgzLDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6c3RhcnREb3dubG9hZChEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFIKICAgICBt
X25ldHdvcmtQcm9jZXNzLT5kb3dubG9hZE1hbmFnZXIoKS5zdGFydERvd25sb2FkKG1fc2Vzc2lv
bklELCBkb3dubG9hZElELCByZXF1ZXN0LCBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBz
dWdnZXN0ZWROYW1lKTsKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHVpbnQ2NF90IG1haW5SZXNvdXJjZUxv
YWRJZGVudGlmaWVyLCBEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHN0ZDo6b3B0aW9u
YWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4pCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291
cmNlTG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElEIGRvd25sb2Fk
SUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9v
cDo6aXNNYWluKCkpOwogCkBAIC02OTMsNyArNjkzLDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHVpbnQ2NF90
IG0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRlciog
bG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldChtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllcik7CisgICAgTmV0d29ya1Jlc291cmNlTG9hZGVyKiBsb2FkZXIgPSBtX25ldHdvcmtS
ZXNvdXJjZUxvYWRlcnMuZ2V0KCptYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CiAgICAgaWYg
KCFsb2FkZXIpIHsKICAgICAgICAgLy8gSWYgd2UncmUgdHJ5aW5nIHRvIGRvd25sb2FkIGEgYmxv
YiBoZXJlIGxvYWRlciBjYW4gYmUgbnVsbC4KICAgICAgICAgcmV0dXJuOwpAQCAtMTAyOSw3ICsx
MDI5LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzZXRPcmlnaW5B
Y2Nlc3NBbGxvd0xpc3RzKCkKICAgICBTZWN1cml0eVBvbGljeTo6cmVzZXRPcmlnaW5BY2Nlc3NB
bGxvd2xpc3RzKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4g
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQo
UGFnZUlkZW50aWZpZXIgcGFnZUlELCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQs
IGJvb2wgaXNUb3BSZXNvdXJjZSkKK3N0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tl
cj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxv
YWQoUGFnZUlkZW50aWZpZXIgcGFnZUlELCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgcmVzb3VyY2VJRCwgYm9vbCBpc1RvcFJlc291cmNlKQogewogICAgIGlmIChtX3Nlc3Npb25J
RC5pc0VwaGVtZXJhbCgpKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwpAQCAtMTA4MCw3
ICsxMDgwLDcgQEAgc3RkOjpvcHRpb25hbDxOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RhcnRUcmFja2kKICAgICByZXR1cm4gbmV3QWN0aXZp
dHlUcmFja2VyLm5ldHdvcmtBY3Rpdml0eTsKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6c3RvcFRyYWNraW5nUmVzb3VyY2VMb2FkKFJlc291cmNlTG9hZElkZW50aWZp
ZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUgY29k
ZSkKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2luZ1Jlc291
cmNlTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0
d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUgY29kZSkKIHsKICAgICBhdXRvIGl0
ZW1JbmRleCA9IGZpbmROZXR3b3JrQWN0aXZpdHlUcmFja2VyKHJlc291cmNlSUQpOwogICAgIGlm
IChpdGVtSW5kZXggPT0gbm90Rm91bmQpCkBAIC0xMTE3LDcgKzExMTcsNyBAQCBzaXplX3QgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmRSb290TmV0d29ya0FjdGl2aXR5KFBhZ2VJ
ZGVudGlmaWVyIHBhZwogICAgIH0pOwogfQogCi1zaXplX3QgTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OmZpbmROZXR3b3JrQWN0aXZpdHlUcmFja2VyKFJlc291cmNlTG9hZElkZW50aWZp
ZXIgcmVzb3VyY2VJRCkKK3NpemVfdCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Zmlu
ZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlc291cmNlSUQpCiB7CiAgICAgcmV0dXJuIG1fbmV0d29ya0FjdGl2aXR5VHJhY2tlcnMuZmlu
ZE1hdGNoaW5nKFsmXShjb25zdCBhdXRvJiBpdGVtKSB7CiAgICAgICAgIHJldHVybiBpdGVtLnJl
c291cmNlSUQgPT0gcmVzb3VyY2VJRDsKQEAgLTEyNjgsNyArMTI2OCw3IEBAIHZvaWQgTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdl
YkNvcmU6OlBhZ2VJCiAgICAgc2Vzc2lvbi0+bmV0d29ya0xvYWRTY2hlZHVsZXIoKS5zZXRSZXNv
dXJjZUxvYWRTY2hlZHVsaW5nTW9kZShwYWdlSWRlbnRpZmllciwgbW9kZSk7CiB9CiAKLXZvaWQg
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKFZl
Y3RvcjxSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBsb2FkSWRlbnRpZmllcnMpCit2b2lkIE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBW
ZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiYgbG9hZElkZW50aWZpZXJz
KQogewogICAgIGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbigpOwogICAgIGlmICghc2Vz
c2lvbikKQEAgLTEyODUsNyArMTI4NSw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKFZlY3RvcjxSZXNvdXJjZUxvYWRJCiAgICAg
c2Vzc2lvbi0+bmV0d29ya0xvYWRTY2hlZHVsZXIoKS5wcmlvcml0aXplTG9hZHMobG9hZHMpOwog
fQogCi1SZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiBOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcih1aW50NjRfdCByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKQorUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrUmVzb3VyY2VMb2FkZXIoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFO
ZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBlOjppc1ZhbGlkS2V5KHJlc291cmNlTG9hZElk
ZW50aWZpZXIpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aAppbmRleCBlOThhMmU1ZGExNWY2YjA4ZGQyNTBiZTk4YjZmOGZhYjUzMzQxYTRjLi5kMTYxY2Y5
NmM0YzVkOWFkMTMwOTQ5NjJlMTk5MWE1ZjRlZmQ4MGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cy5oCkBAIC04Nyw3ICs4Nyw2IEBAIGNsYXNzIE5ldHdvcmtTb2NrZXRTdHJlYW07CiBjbGFzcyBT
ZXJ2aWNlV29ya2VyRmV0Y2hUYXNrOwogY2xhc3MgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOwogY2xh
c3MgV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uOwotdHlwZWRlZiB1aW50NjRfdCBSZXNv
dXJjZUxvYWRJZGVudGlmaWVyOwogCiBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIHN0cnVjdCBE
YXRhS2V5OwpAQCAtMTI1LDM0ICsxMjQsMzQgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYW51cEZv
clN1c3BlbnNpb24oRnVuY3Rpb248dm9pZCgpPiYmKTsKICAgICB2b2lkIGVuZFN1c3BlbnNpb24o
KTsKIAotICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlKFJlc291cmNl
TG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgdm9p
ZCBnZXROZXR3b3JrTG9hZEluZm9ybWF0aW9uUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogICAgIHsKICAg
ICAgICAgaWYgKGF1dG8qIGluZm8gPSBtX25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmdldChp
ZGVudGlmaWVyKSkKICAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihpbmZvLT5y
ZXNwb25zZSk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CiAgICAgfQogCi0gICAg
dm9pZCBnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKFJlc291cmNlTG9hZElk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCisgICAgdm9pZCBnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1h
dGlvbj4mKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICB7CiAgICAgICAgIGlmIChhdXRvKiBp
bmZvID0gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5nZXQoaWRlbnRpZmllcikpCiAgICAg
ICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoaW5mby0+dHJhbnNhY3Rpb25zKTsKICAg
ICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKICAgICB9CiAKLSAgICB2b2lkIHRha2VOZXR3
b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRy
aWNzJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgdm9pZCB0YWtlTmV0d29ya0xvYWRJbmZv
cm1hdGlvbk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRy
aWNzJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiAgICAgewogICAgICAgICBpZiAoYXV0byBpbmZv
ID0gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC50YWtlKGlkZW50aWZpZXIpKQogICAgICAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGluZm8tPm1ldHJpY3MpOwogICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcih7IH0pOwogICAgIH0KIAotICAgIHZvaWQgYWRkTmV0d29ya0xvYWRJ
bmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6Ok5l
dHdvcmtMb2FkSW5mb3JtYXRpb24mJiBpbmZvcm1hdGlvbikKKyAgICB2b2lkIGFkZE5ldHdvcmtM
b2FkSW5mb3JtYXRpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24mJiBpbmZvcm1hdGlvbikKICAgICB7
CiAgICAgICAgIEFTU0VSVCghbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5jb250YWlucyhp
ZGVudGlmaWVyKSk7CiAgICAgICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuYWRkKGlk
ZW50aWZpZXIsIG1ha2VVbmlxdWU8V2ViQ29yZTo6TmV0d29ya0xvYWRJbmZvcm1hdGlvbj4oV1RG
TW92ZShpbmZvcm1hdGlvbikpKTsKICAgICB9CiAKLSAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5m
b3JtYXRpb25NZXRyaWNzKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJiBtZXRyaWNzKQorICAgIHZvaWQgYWRkTmV0d29y
a0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykK
ICAgICB7CiAgICAgICAgIEFTU0VSVChtX25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmNvbnRh
aW5zKGlkZW50aWZpZXIpKTsKICAgICAgICAgbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5l
bnN1cmUoaWRlbnRpZmllciwgW10gewpAQCAtMTYwLDEzICsxNTksMTMgQEAgcHVibGljOgogICAg
ICAgICB9KS5pdGVyYXRvci0+dmFsdWUtPm1ldHJpY3MgPSBtZXRyaWNzOwogICAgIH0KIAotICAg
IHZvaWQgcmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVy
IGlkZW50aWZpZXIpCisgICAgdm9pZCByZW1vdmVOZXR3b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIHsKICAgICAgICAg
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5yZW1vdmUoaWRlbnRpZmllcik7CiAgICAgfQog
Ci0gICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBzdGFydFRyYWNraW5n
UmVzb3VyY2VMb2FkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBSZXNvdXJjZUxvYWRJZGVudGlm
aWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSk7Ci0gICAgdm9pZCBzdG9wVHJhY2tp
bmdSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBOZXR3b3Jr
QWN0aXZpdHlUcmFja2VyOjpDb21wbGV0aW9uQ29kZSk7CisgICAgc3RkOjpvcHRpb25hbDxOZXR3
b3JrQWN0aXZpdHlUcmFja2VyPiBzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJ
RCwgYm9vbCBpc1RvcFJlc291cmNlKTsKKyAgICB2b2lkIHN0b3BUcmFja2luZ1Jlc291cmNlTG9h
ZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxXZWJD
b3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiByZXNvbHZlQmxvYlJlZmVyZW5jZXMoY29uc3Qg
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmKTsKIApAQCAtMTg3LDEyICsxODYsMTIgQEAg
cHVibGljOgogICAgIHZvaWQgY29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChXZWJDb3JlOjpIVFRQ
Q29va2llQWNjZXB0UG9saWN5KTsKIAogICAgIHZvaWQgYnJvYWRjYXN0Q29uc29sZU1lc3NhZ2Uo
SlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNz
YWdlKTsKLSAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiB0YWtlTmV0d29ya1Jlc291
cmNlTG9hZGVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIFJlZlB0cjxO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI+IHRha2VOZXR3b3JrUmVzb3VyY2VMb2FkZXIoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogcHJpdmF0ZToKICAgICBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2VzcyhOZXR3b3JrUHJvY2VzcyYsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlm
aWVyLCBQQUw6OlNlc3Npb25JRCwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKIAotICAg
IHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgZGlkRmluaXNo
UHJlY29ubmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVj
dGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKICAgICBXZWJD
b3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24qIHN0b3JhZ2VTZXNzaW9uKCk7CiAKICAgICAvLyBJ
UEM6OkNvbm5lY3Rpb246OkNsaWVudApAQCAtMjExLDE1ICsyMTAsMTUgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGxvYWRQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYpOwogICAgIHZv
aWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBzZW5kSDJQaW5nKE5ldHdv
cmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0
ZWQ8V1RGOjpTZWNvbmRzLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yPiYmKT4mJik7Ci0gICAgdm9p
ZCBwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVjdGlvbklkZW50
aWZpZXIsIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYpOwotICAgIHZvaWQgaXNSZXNv
dXJjZUxvYWRGaW5pc2hlZCh1aW50NjRfdCBsb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVy
LCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmKTsKKyAgICB2b2lkIGlzUmVzb3VyY2VM
b2FkRmluaXNoZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKIAotICAgIHZvaWQgcmVtb3ZlTG9hZElkZW50aWZpZXIo
UmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdm9pZCByZW1vdmVMb2FkSWRlbnRpZmllcihX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHZvaWQgcGFnZUxvYWRDb21w
bGV0ZWQoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIpOwogICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0
UmVtb3ZlZChXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwg
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyKTsKLSAgICB2b2lkIGNyb3NzT3JpZ2luUmVkaXJlY3RS
ZWNlaXZlZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBVUkwmIHJlZGlyZWN0VVJMKTsK
KyAgICB2b2lkIGNyb3NzT3JpZ2luUmVkaXJlY3RSZWNlaXZlZChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFVSTCYgcmVkaXJlY3RVUkwpOwogICAgIHZvaWQgc3RhcnRE
b3dubG9hZChEb3dubG9hZElELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBzdGQ6
Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiwgY29uc3QgU3RyaW5nJiBzdWdn
ZXN0ZWROYW1lID0geyB9KTsKLSAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgRG93bmxvYWRJRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+KTsKKyAgICB2
b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIs
IERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluPik7CiAKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lc0FzQ09SU0VuYWJsZWQoVmVj
dG9yPFN0cmluZz4mJiBzY2hlbWVzKTsKIApAQCAtMzI3LDcgKzMyNiw3IEBAIHByaXZhdGU6CiAg
ICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJh
Y2tlcihXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdlSUQsIFJlc291cmNlTG9hZElkZW50aWZp
ZXIgcmVzb3VyY2VJRCkKKyAgICAgICAgUmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyKFdl
YkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHJlc291cmNlSUQpCiAgICAgICAgICAgICA6IHBhZ2VJRCB7IHBhZ2VJRCB9CiAgICAg
ICAgICAgICAsIHJlc291cmNlSUQgeyByZXNvdXJjZUlEIH0KICAgICAgICAgICAgICwgbmV0d29y
a0FjdGl2aXR5IHsgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6TGFiZWw6OkxvYWRSZXNvdXJjZSB9
CkBAIC0zMzUsNyArMzM0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgfQogCiAgICAgICAgIFdlYkNv
cmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRDsKLSAgICAgICAgUmVzb3VyY2VMb2FkSWRlbnRpZmll
ciByZXNvdXJjZUlEIHsgMCB9OworICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgcmVzb3VyY2VJRDsKICAgICAgICAgYm9vbCBpc1Jvb3RBY3Rpdml0eSB7IGZhbHNlIH07
CiAgICAgICAgIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIgbmV0d29ya0FjdGl2aXR5OwogICAgIH07
CkBAIC0zNDMsMTIgKzM0MiwxMiBAQCBwcml2YXRlOgogICAgIHZvaWQgc3RvcEFsbE5ldHdvcmtB
Y3Rpdml0eVRyYWNraW5nKCk7CiAgICAgdm9pZCBzdG9wQWxsTmV0d29ya0FjdGl2aXR5VHJhY2tp
bmdGb3JQYWdlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyKTsKICAgICBzaXplX3QgZmluZFJvb3RO
ZXR3b3JrQWN0aXZpdHkoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIpOwotICAgIHNpemVfdCBmaW5k
TmV0d29ya0FjdGl2aXR5VHJhY2tlcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQp
OworICAgIHNpemVfdCBmaW5kTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCk7CiAKICAgICB2b2lkIGhhc1VwbG9hZFN0YXRl
Q2hhbmdlZChib29sKTsKIAogICAgIHZvaWQgc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUo
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkxvYWRTY2hlZHVsaW5nTW9kZSk7Ci0g
ICAgdm9pZCBwcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRp
Zmllcj4pOworICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4mKTsKIAogI2lmIEVOQUJMRShBUFBMRV9Q
QVlfUkVNT1RFX1VJKQogICAgIFdlYlBheW1lbnRDb29yZGluYXRvclByb3h5JiBwYXltZW50Q29v
cmRpbmF0b3IoKTsKQEAgLTM3NSw3ICszNzQsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8U3Ry
aW5nLCBSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVmZXJlbmNlPj4gbV9ibG9iRGF0YUZp
bGVSZWZlcmVuY2VzOwogICAgIFZlY3RvcjxSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+
IG1fbmV0d29ya0FjdGl2aXR5VHJhY2tlcnM7CiAKLSAgICBIYXNoTWFwPFJlc291cmNlTG9hZElk
ZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9u
Pj4gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRDsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6Ok5ldHdvcmtM
b2FkSW5mb3JtYXRpb24+PiBtX25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlEOwogCiAKICNpZiBV
U0UoTElCV0VCUlRDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4K
aW5kZXggMTVkYTZhYmZjNTM4NjlmZDQzODYyNDc2OTZmZWE1MTFiNmE5ZGI5Mi4uNzY4MmJhOWJi
MjlmZjZmMDhlYmViYjk0M2ZjODk0NTQ2NzM0YzJlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5p
bgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNiwxNiArMjYsMTYgQEAgbWVzc2FnZXMgLT4gTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFBlcmZvcm1T
eW5jaHJvbm91c0xvYWQoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyByZXNv
dXJjZUxvYWRQYXJhbWV0ZXJzKSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+IGRhdGEpIFN5
bmNocm9ub3VzCiAgICAgVGVzdFByb2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0aW5n
Rm9yU3luY1JlcGx5KFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQpIC0+IChi
b29sIGhhbmRsZWQpIFN5bmNocm9ub3VzCiAgICAgTG9hZFBpbmcoV2ViS2l0OjpOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyByZXNvdXJjZUxvYWRQYXJhbWV0ZXJzKQotICAgIFJlbW92ZUxv
YWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCisgICAgUmVtb3Zl
TG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNl
TG9hZElkZW50aWZpZXIpCiAgICAgUGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgd2ViUGFnZUlEKQogICAgIEJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViS2l0OjpXZWJQ
YWdlUHJveHlJZGVudGlmaWVyIHdlYlBhZ2VQcm94eUlELCBXZWJDb3JlOjpQYWdlSWRlbnRpZmll
ciB3ZWJQYWdlSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciB3ZWJGcmFtZUlEKQogICAgIFBy
ZWZldGNoRE5TKFN0cmluZyBob3N0bmFtZSkKICAgICBTZW5kSDJQaW5nKFdlYktpdDo6TmV0d29y
a1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcGFyYW1ldGVycykgLT4gKEV4cGVjdGVkPFNlY29uZHMs
IFdlYkNvcmU6OlJlc291cmNlRXJyb3I+IHJlc3VsdCkgQXN5bmMKLSAgICBQcmVjb25uZWN0VG8o
c3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFtZXRlcnMpOwotICAgIElzUmVz
b3VyY2VMb2FkRmluaXNoZWQodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKGJv
b2wgaXNGaW5pc2hlZCkgQXN5bmMKKyAgICBQcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBX
ZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKKyAg
ICBJc1Jlc291cmNlTG9hZEZpbmlzaGVkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoYm9vbCBpc0ZpbmlzaGVkKSBBc3luYwogCiAg
ICAgU3RhcnREb3dubG9hZChXZWJLaXQ6OkRvd25sb2FkSUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIGVudW06Ym9vbCBzdGQ6Om9wdGlvbmFsPFdlYktpdDo6
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4s
IFN0cmluZyBzdWdnZXN0ZWROYW1lKQotICAgIENvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgV2ViS2l0OjpEb3dubG9h
ZElEIGRvd25sb2FkSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBlbnVtOmJvb2wgc3RkOjpvcHRpb25hbDxXZWJL
aXQ6Ok5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluKQorICAgIENvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50
aWZpZXIsIFdlYktpdDo6RG93bmxvYWRJRCBkb3dubG9hZElELCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgZW51bTpi
b29sIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikKIAogICAgIENvb2tpZXNGb3JET00oVVJMIGZpcnN0
UGFydHksIHN0cnVjdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8gc2FtZVNpdGVJbmZvLCBVUkwgdXJs
LCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZp
ZXIgcGFnZUlELCBlbnVtOmJvb2wgV2ViQ29yZTo6SW5jbHVkZVNlY3VyZUNvb2tpZXMgaW5jbHVk
ZVNlY3VyZUNvb2tpZXMsIGVudW06Ym9vbCBXZWJDb3JlOjpTaG91bGRBc2tJVFAgc2hvdWxkQXNr
SVRQLCBlbnVtOmJvb2wgV2ViQ29yZTo6U2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tp
bmcgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIC0+IChTdHJpbmcgY29va2ll
U3RyaW5nLCBib29sIGRpZEFjY2Vzc1NlY3VyZUNvb2tpZXMpIFN5bmNocm9ub3VzCiAgICAgU2V0
Q29va2llc0Zyb21ET00oVVJMIGZpcnN0UGFydHksIHN0cnVjdCBXZWJDb3JlOjpTYW1lU2l0ZUlu
Zm8gc2FtZVNpdGVJbmZvLCBVUkwgdXJsLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlELCBlbnVtOmJvb2wgV2ViQ29yZTo6U2hv
dWxkQXNrSVRQIHNob3VsZEFza0lUUCwgU3RyaW5nIGNvb2tpZVN0cmluZywgZW51bTpib29sIFdl
YkNvcmU6OlNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nKQpAQCAtNzksOSArNzksOSBAQCBtZXNzYWdlcyAtPiBOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgUmVtb3ZlT3Jp
Z2luQWNjZXNzQWxsb3dMaXN0RW50cnkoU3RyaW5nIHNvdXJjZU9yaWdpbiwgU3RyaW5nIGRlc3Rp
bmF0aW9uUHJvdG9jb2wsIFN0cmluZyBkZXN0aW5hdGlvbkhvc3QsIGJvb2wgYWxsb3dEZXN0aW5h
dGlvblN1YmRvbWFpbnMpOwogICAgIFJlc2V0T3JpZ2luQWNjZXNzQWxsb3dMaXN0cygpOwogCi0g
ICAgR2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlKHVpbnQ2NF90IHJlc291cmNlTG9h
ZElkZW50aWZpZXIpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKSBTeW5j
aHJvbm91cwotICAgIEdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb24odWludDY0
X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJh
bnNhY3Rpb25JbmZvcm1hdGlvbj4gdHJhbnNhY3Rpb25zKSBTeW5jaHJvbm91cwotICAgIFRha2VO
ZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyh1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlm
aWVyKSAtPiAoV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzKSBTeW5j
aHJvbm91cworICAgIEdldE5ldHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZShXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpIFN5bmNocm9ub3VzCisgICAgR2V0TmV0d29y
a0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFZlY3RvcjxXZWJDb3JlOjpOZXR3b3Jr
VHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gdHJhbnNhY3Rpb25zKSBTeW5jaHJvbm91cworICAgIFRh
a2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6Ok5ldHdvcmtMb2Fk
TWV0cmljcyBuZXR3b3JrTWV0cmljcykgU3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShTRVJWSUNF
X1dPUktFUikKICAgICBFc3RhYmxpc2hTV0NvbnRleHRDb25uZWN0aW9uKFdlYktpdDo6V2ViUGFn
ZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJveHlJRCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21h
aW4gZG9tYWluKSAtPiAoKSBBc3luYwpAQCAtMTA4LDUgKzEwOCw1IEBAIG1lc3NhZ2VzIC0+IE5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBVcGRhdGVB
Y3RpdmVQYWdlcyhTdHJpbmcgbmFtZSwgVmVjdG9yPFN0cmluZz4gYWN0aXZlUGFnZXNPcmlnaW5z
LCBhdWRpdF90b2tlbl90IGF1ZGl0VG9rZW4pCiAjZW5kaWYKICAgICBTZXRSZXNvdXJjZUxvYWRT
Y2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIGVudW06dWlu
dDhfdCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUgbW9kZSkKLSAgICBQcmlvcml0aXplUmVz
b3VyY2VMb2FkcyhWZWN0b3I8dWludDY0X3Q+IGxvYWRJZGVudGlmaWVycykKKyAgICBQcmlvcml0
aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiBsb2FkSWRlbnRpZmllcnMpCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Byb2Nlc3MuY3BwCmluZGV4IDRkY2IzMmNkYjc1NzU2NGJmYjAyMzQ1NWY5ZmZjYmFh
YjNkZjYxZmMuLjMwOTJkN2E0ODZhMjYwNTljYmYzNmMyNzUzMjQ2NjMzZTVhZjYwMTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCkBAIC0y
ODQxLDcgKzI4NDEsNyBAQCBSVENEYXRhQ2hhbm5lbFJlbW90ZU1hbmFnZXJQcm94eSYgTmV0d29y
a1Byb2Nlc3M6OnJ0Y0RhdGFDaGFubmVsUHJveHkoKQogfQogI2VuZGlmCiAKLXZvaWQgTmV0d29y
a1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nl
c3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgTmV0
d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlBy
b2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKHJlc291cmNlTG9hZElkZW50aWZpZXIp
OwogICAgIGF1dG8qIGNvbm5lY3Rpb24gPSB3ZWJQcm9jZXNzQ29ubmVjdGlvbihzb3VyY2VQcm9j
ZXNzSWRlbnRpZmllcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQ
cm9jZXNzLmgKaW5kZXggMTA2MDIyY2U2ODUxOTc4MzBmMjY1YWFiNjUzZDg0ZTAwZjg1MWNkOS4u
NmQzOTQ2NjE1N2VmNmI1Zjc2NWFmYjBiYTkzYTYxMWZlY2UyMjczZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaApAQCAtNDIzLDcgKzQyMyw3IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBkaWRSZWNlaXZlU3luY05ldHdvcmtQcm9jZXNzTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImLCBVbmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYp
OwogICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzKE5ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgY3JlYXRlTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIsIFBBTDo6U2Vzc2lvbklELCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8SVBDOjpBdHRhY2htZW50PiYmLCBXZWJDb3Jl
OjpIVFRQQ29va2llQWNjZXB0UG9saWN5KT4mJik7Ci0gICAgdm9pZCBwcmVwYXJlTG9hZEZvcldl
YlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNz
SWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+
JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4m
Jik7CiAKICAgICB2b2lkIGZldGNoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNl
dDxXZWJzaXRlRGF0YVR5cGU+LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vic2l0ZURhdGEmJik+JiYpOwogICAgIHZvaWQgZGVsZXRl
V2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBX
YWxsVGltZSBtb2RpZmllZFNpbmNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNz
YWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVz
c2FnZXMuaW4KaW5kZXggZDU5NTg5MzZmYWUxMWVkOGJiMmEzNzNhN2Q0ZmYwYmQ3ZmIzNGY1MS4u
YmY2ZTdjOTNlYjAxMjdiZWUwZTNhMmFiY2NiMmNkZWY3NDY4OWVjOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmlu
CkBAIC0xOTYsNyArMTk2LDcgQEAgbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3MgTGVnYWN5UmVj
ZWl2ZXIgewogICAgIENsZWFyQXBwUHJpdmFjeVJlcG9ydFRlc3RpbmdEYXRhKFBBTDo6U2Vzc2lv
bklEIHNlc3Npb25JRCkgLT4gKCkgQXN5bmMKICNlbmRpZgogCi0gICAgUHJlcGFyZUxvYWRGb3JX
ZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vz
c0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChzdGQ6Om9w
dGlvbmFsPFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IG5ldHdvcmtSZXNv
dXJjZUxvYWRJZGVudGlmaWVyKSBBc3luYworICAgIFByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1Ry
YW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikgLT4gKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmll
cj4gbmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXIpIEFzeW5jCiAKICAgICBBZGRXZWJQYWdl
TmV0d29ya1BhcmFtZXRlcnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJLaXQ6OldlYlBh
Z2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCBXZWJLaXQ6OldlYlBhZ2VOZXR3b3JrUGFyYW1ldGVy
cyBwYXJhbWV0ZXJzKQogICAgIFJlbW92ZVdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyhQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJj
ZUxvYWRNYXAuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwLmNwcAppbmRleCBkYjk3ZjU1MmZlZTdhMzg5MTY1MWYzYmRkNmU0YWRlZTYyNDdh
MmU5Li5mOWEyYWEyMGRiNDM5MDc2YzQ0ZjIwMWE2ZGJkZGFiYjNkN2M4Y2JkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1h
cC5jcHAKQEAgLTM5LDcgKzM5LDcgQEAgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6fk5ldHdvcmtS
ZXNvdXJjZUxvYWRNYXAoKQogICAgIGNsZWFyKCk7CiB9CiAKLU5ldHdvcmtSZXNvdXJjZUxvYWRN
YXA6Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQoUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPiYm
IGxvYWRlcikKK05ldHdvcmtSZXNvdXJjZUxvYWRNYXA6Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3
b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+JiYgbG9hZGVyKQogewogICAg
IEFTU0VSVCghbV9sb2FkZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKICAgICBib29sIGhhc1Vw
bG9hZCA9IGxvYWRlci0+b3JpZ2luYWxSZXF1ZXN0KCkuaGFzVXBsb2FkKCk7CkBAIC00OSw3ICs0
OSw3IEBAIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjphZGQoUmVzb3VyY2VMCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAot
Ym9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUoUmVzb3VyY2VMb2FkSWRlbnRpZmll
ciBpZGVudGlmaWVyKQorYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuICEh
dGFrZShpZGVudGlmaWVyKTsKIH0KQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjpjbGVhcigpCiAgICAgc2V0SGFzVXBsb2FkKGZhbHNlKTsKIH0KIAotUmVmUHRy
PE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6dGFrZShSZXNv
dXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpCitSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9h
ZGVyPiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGF1dG8gbG9hZGVyID0gbV9sb2FkZXJzLnRh
a2UoaWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpCkBAIC03Miw3ICs3Miw3IEBAIFJlZlB0
cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnRha2UoUmVz
b3VyY2VMb2FkSWRlbnRpZmllCiAgICAgcmV0dXJuIGxvYWRlcjsKIH0KIAotTmV0d29ya1Jlc291
cmNlTG9hZGVyKiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpnZXQoUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciBpZGVudGlmaWVyKSBjb25zdAorTmV0d29ya1Jlc291cmNlTG9hZGVyKiBOZXR3b3JrUmVz
b3VyY2VMb2FkTWFwOjpnZXQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fbG9hZGVycy5nZXQoaWRlbnRpZmllcik7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJj
ZUxvYWRNYXAuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNl
TG9hZE1hcC5oCmluZGV4IDBlZjI3OGMzNDA1Y2RkZTZhODNmYmYwYWI3MmZmYzQ3YzE0ZDMxMTcu
LjcxNjBkZGUxZDU3YzAwZjE1ZmI0YWMzNWU0MTgyZTNlY2M5ODViMTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5oCkBA
IC0yNSw2ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogCkBAIC0zNywyNCArMzgsMjIgQEAgbmFtZXNwYWNlIFdlYktp
dCB7CiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CiBjbGFzcyBOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2VzczsKIAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVy
OwotCiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwIHsKIHB1YmxpYzoKLSAgICB0eXBlZGVm
IEhhc2hNYXA8UmVzb3VyY2VMb2FkSWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRl
cj4+IE1hcFR5cGU7CisgICAgdXNpbmcgTWFwVHlwZSA9IEhhc2hNYXA8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPj47CiAgICAgTmV0
d29ya1Jlc291cmNlTG9hZE1hcChGdW5jdGlvbjx2b2lkKGJvb2wgaGFzVXBsb2FkKT4mJik7CiAg
ICAgfk5ldHdvcmtSZXNvdXJjZUxvYWRNYXAoKTsKIAogICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0
IHsgcmV0dXJuIG1fbG9hZGVycy5pc0VtcHR5KCk7IH0KLSAgICBib29sIGNvbnRhaW5zKFJlc291
cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QgeyByZXR1cm4gbV9sb2FkZXJzLmNv
bnRhaW5zKGlkZW50aWZpZXIpOyB9CisgICAgYm9vbCBjb250YWlucyhXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QgeyByZXR1cm4gbV9sb2FkZXJzLmNv
bnRhaW5zKGlkZW50aWZpZXIpOyB9CiAgICAgTWFwVHlwZTo6aXRlcmF0b3IgYmVnaW4oKSB7IHJl
dHVybiBtX2xvYWRlcnMuYmVnaW4oKTsgfQogICAgIE1hcFR5cGU6OlZhbHVlc0l0ZXJhdG9yUmFu
Z2UgdmFsdWVzKCkgeyByZXR1cm4gbV9sb2FkZXJzLnZhbHVlcygpOyB9CiAgICAgdm9pZCBjbGVh
cigpOwogCi0gICAgTWFwVHlwZTo6QWRkUmVzdWx0IGFkZChSZXNvdXJjZUxvYWRJZGVudGlmaWVy
LCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPiYmKTsKLSAgICBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXIqIGdldChSZXNvdXJjZUxvYWRJZGVudGlmaWVyKSBjb25zdDsKLSAgICBib29sIHJlbW92ZShS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKLSAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVy
PiB0YWtlKFJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIE1hcFR5cGU6OkFkZFJlc3VsdCBh
ZGQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNl
TG9hZGVyPiYmKTsKKyAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGdldChXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIGNvbnN0OworICAgIGJvb2wgcmVtb3ZlKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRl
cj4gdGFrZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgYm9vbCBo
YXNVcGxvYWQoKSBjb25zdCB7IHJldHVybiBtX2hhc1VwbG9hZDsgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
LmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzLmgKaW5kZXggY2NjOGI1M2NmOGRlYjhjMGM1YWMxZGY2MjEyOTJmNGM5ZGY2NWVkYy4u
NGNiODVjYmEyMDZiODAyODdkNDJiNWJlNTZiY2M4ZTkzMjYxMjU1MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMuaApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvQ3Jvc3NPcmln
aW5BY2Nlc3NDb250cm9sLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Dcm9zc09yaWdpbkVtYmVkZGVy
UG9saWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GZXRjaE9wdGlvbnMuaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9TZWNvbmRz
Lmg+CiAKIG5hbWVzcGFjZSBJUEMgewpAQCAtNDIsOCArNDMsNiBAQCBjbGFzcyBFbmNvZGVyOwog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyOwotCiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyA6IHB1YmxpYyBO
ZXR3b3JrTG9hZFBhcmFtZXRlcnMgewogcHVibGljOgogICAgIHZvaWQgZW5jb2RlKElQQzo6RW5j
b2RlciYpIGNvbnN0OwpAQCAtNTEsNyArNTAsNyBAQCBwdWJsaWM6CiAKICAgICBSZWZQdHI8V2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW4+IHBhcmVudE9yaWdpbigpIGNvbnN0OwogCi0gICAgbXV0YWJs
ZSBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgeyAwIH07CisgICAgbXV0YWJsZSBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICBWZWN0b3I8
UmVmUHRyPFNhbmRib3hFeHRlbnNpb24+PiByZXF1ZXN0Qm9keVNhbmRib3hFeHRlbnNpb25zOyAv
LyBDcmVhdGVkIGF1dG9tYXRpY2FsbHkgZm9yIHRoZSBzZW5kZXIuCiAgICAgUmVmUHRyPFNhbmRi
b3hFeHRlbnNpb24+IHJlc291cmNlU2FuZGJveEV4dGVuc2lvbjsgLy8gQ3JlYXRlZCBhdXRvbWF0
aWNhbGx5IGZvciB0aGUgc2VuZGVyLgogICAgIG11dGFibGUgU2Vjb25kcyBtYXhpbXVtQnVmZmVy
aW5nVGltZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCBkYzRkNTAyNzk3NDlhNTJmYTc5OTY3NjE4OGY5NThh
YzdmMjM1MDM1Li5kMTY0YzA2MTBmZWIxYmNiNDY3NTRlYjAxZDQ0NzU0ODFhOGFhOGUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkZXIuY3BwCkBAIC02Niw4ICs2Niw4IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9QcmV2aWV3Q29u
dmVydGVyLmg+CiAjZW5kaWYKIAotI2RlZmluZSBMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4p
IFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2Vi
UGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBS
SXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9
JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQ
YWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCks
IG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlm
aWVyLCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJz
Lm9wdGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNocm9ub3VzKCksICMjX19WQV9BUkdTX18pCi0j
ZGVmaW5lIExPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJS
T1IoTmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIg
UFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGlz
TWFpblJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJvbm91cz0lZF0gTmV0d29y
a1Jlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlE
LnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0
ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIsIGlzTWFp
blJlc291cmNlKCksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3BhcmFtZXRlcnMub3B0aW9ucy5k
ZXN0aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgTE9B
REVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbcGFn
ZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3VyY2U9JWQsIGRlc3Rp
bmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OiIgZm10
LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbV9wYXJhbWV0
ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2
NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpLCBpc01haW5SZXNvdXJjZSgp
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24p
LCBpc1N5bmNocm9ub3VzKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIExPQURFUl9SRUxFQVNF
X0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgIiVwIC0gW3Bh
Z2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIg
UFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGlzTWFpblJlc291cmNlPSVkLCBkZXN0
aW5hdGlvbj0ldSwgaXNTeW5jaHJvbm91cz0lZF0gTmV0d29ya1Jlc291cmNlTG9hZGVyOjoiIGZt
dCwgdGhpcywgbV9wYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIG1fcGFyYW1l
dGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50
NjQoKSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSwgaXNNYWluUmVzb3VyY2Uo
KSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9u
KSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtNTIzLDcgKzUyMyw3IEBAIHZvaWQgTmV0d29y
a1Jlc291cmNlTG9hZGVyOjphYm9ydCgpCiAgICAgY2xlYW51cChMb2FkUmVzdWx0OjpDYW5jZWwp
OwogfQogCi12b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNmZXJUb05ld1dlYlByb2Nl
c3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIG5ld0Nvbm5lY3Rpb24sIFJlc291cmNl
TG9hZElkZW50aWZpZXIgbmV3Q29yZUlkZW50aWZpZXIpCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxv
YWRlcjo6dHJhbnNmZXJUb05ld1dlYlByb2Nlc3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIG5ld0Nvbm5lY3Rpb24sIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBuZXdD
b3JlSWRlbnRpZmllcikKIHsKICAgICBtX2Nvbm5lY3Rpb24gPSBuZXdDb25uZWN0aW9uOwogICAg
IG1fcGFyYW1ldGVycy5pZGVudGlmaWVyID0gbmV3Q29yZUlkZW50aWZpZXI7CkBAIC0xMzc0LDE3
ICsxMzc0LDggQEAgc3RhdGljIFN0cmluZyBlc2NhcGVGb3JKU09OKFN0cmluZyBzKQogICAgIHJl
dHVybiBzLnJlcGxhY2UoJ1xcJywgIlxcXFwiKS5yZXBsYWNlKCciJywgIlxcXCIiKTsKIH0KIAot
c3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4mIHZhbHVlKQotewotICAgIHJldHVybiB2YWx1ZSA/IFN0cmluZzo6bnVtYmVyKHZhbHVlLnZh
bHVlKCkpIDogU3RyaW5nKCJOb25lIl9zKTsKLX0KLQotc3RhdGljIFN0cmluZyBlc2NhcGVJREZv
ckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+JiB2YWx1ZSkKLXsKLSAg
ICByZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS0+dG9VSW50NjQoKSkgOiBTdHJp
bmcoIk5vbmUiX3MpOwotfQotCi1zdGF0aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBz
dGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiYgdmFsdWUpCit0ZW1wbGF0ZTx0eXBlbmFtZSBJ
ZGVudGlmaWVyVHlwZT4KK3N0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0ZDo6
b3B0aW9uYWw8T2JqZWN0SWRlbnRpZmllcjxJZGVudGlmaWVyVHlwZT4+JiB2YWx1ZSkKIHsKICAg
ICByZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS0+dG9VSW50NjQoKSkgOiBTdHJp
bmcoIk5vbmUiX3MpOwogfQpAQCAtMTM5OSw3ICsxMzkwLDcgQEAgdm9pZCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKCkgY29uc3QKICAgICBsb2dDb29raWVJbmZv
cm1hdGlvbihtX2Nvbm5lY3Rpb24sICJOZXR3b3JrUmVzb3VyY2VMb2FkZXIiLCByZWludGVycHJl
dF9jYXN0PGNvbnN0IHZvaWQqPih0aGlzKSwgKm5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgb3JpZ2lu
YWxSZXF1ZXN0KCkuZmlyc3RQYXJ0eUZvckNvb2tpZXMoKSwgU2FtZVNpdGVJbmZvOjpjcmVhdGUo
b3JpZ2luYWxSZXF1ZXN0KCkpLCBvcmlnaW5hbFJlcXVlc3QoKS51cmwoKSwgb3JpZ2luYWxSZXF1
ZXN0KCkuaHR0cFJlZmVycmVyKCksIGZyYW1lSUQoKSwgcGFnZUlEKCksIGNvcmVJZGVudGlmaWVy
KCkpOwogfQogCi1zdGF0aWMgdm9pZCBsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24oTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWws
IGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29u
c3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJp
bmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3Rk
OjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90
PiBpZGVudGlmaWVyKQorc3RhdGljIHZvaWQgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKE5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxh
YmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHks
IGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwgY29uc3Qg
U3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQs
IHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IGlkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJU
KE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oY29ubmVj
dGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7CiAKQEAgLTE0MjYsNyAr
MTQxNyw3IEBAIHN0YXRpYyB2b2lkIGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvCiAjdW5kZWYgTE9DQUxfTE9HX0lGX0FM
TE9XRUQKIH0KIAotc3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJl
bCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFn
ZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBj
b25zdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmws
IGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBm
cmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9u
YWw8dWludDY0X3Q+IGlkZW50aWZpZXIpCitzdGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlv
bkludGVybmFsKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25z
dCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6
Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwm
IGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFt
ZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJ
RCwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IGlkZW50
aWZpZXIpCiB7CiAgICAgQVNTRVJUKE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29v
a2llSW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25J
RCgpKSk7CiAKQEAgLTE0ODcsNyArMTQ3OCw3IEBAIHN0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9y
bWF0aW9uSW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3RpCiAj
dW5kZWYgTE9DQUxfTE9HX0lGX0FMTE9XRUQKIH0KIAotdm9pZCBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBj
b25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3Qs
IGNvbnN0IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25z
dCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlk
ZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwg
c3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya1Jlc291cmNl
TG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2Jq
ZWN0LCBjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwg
Y29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywg
Y29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJh
bWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdl
SUQsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBpZGVu
dGlmaWVyKQogewogICAgIEFTU0VSVChzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihjb25uZWN0
aW9uLCBuZXR3b3JrU3RvcmFnZVNlc3Npb24uc2Vzc2lvbklEKCkpKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKaW5kZXgg
NTZmOTJlNmQ3YTNjNzkzMWEwOGYyOWVlZjA1OTg1Y2QzNWViNDFkMS4uMzBhMjg0ODE3MThlZWRm
Y2VkNjk3YzEzOTJjODAyNWVlNDFhMmQwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCkBAIC04NSw3ICs4NSw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHN0YXJ0KCk7CiAgICAgdm9pZCBhYm9ydCgpOwogCi0gICAgdm9pZCB0
cmFuc2ZlclRvTmV3V2ViUHJvY2VzcyhOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFJl
c291cmNlTG9hZElkZW50aWZpZXIpOworICAgIHZvaWQgdHJhbnNmZXJUb05ld1dlYlByb2Nlc3Mo
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOwogCiAgICAgLy8gTWVzc2FnZSBoYW5kbGVycy4KICAgICB2b2lkIGRpZFJlY2Vp
dmVOZXR3b3JrUmVzb3VyY2VMb2FkZXJNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVj
b2RlciYpOwpAQCAtOTcsNyArOTcsNyBAQCBwdWJsaWM6CiAKICAgICBOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2VzcyYgY29ubmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0IHsgcmV0dXJuIG1f
Y29ubmVjdGlvbjsgfQogICAgIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0
dXJuIG1fY29ubmVjdGlvbi0+c2Vzc2lvbklEKCk7IH0KLSAgICBSZXNvdXJjZUxvYWRJZGVudGlm
aWVyIGNvcmVJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50aWZp
ZXI7IH0KKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgY29yZUlkZW50aWZp
ZXIoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllcjsgfQogICAgIFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJz
LndlYkZyYW1lSUQ7IH0KICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdlSUQoKSBjb25z
dCB7IHJldHVybiBtX3BhcmFtZXRlcnMud2ViUGFnZUlEOyB9CiAgICAgY29uc3QgTmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnMmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFt
ZXRlcnM7IH0KQEAgLTEzMSw3ICsxMzEsNyBAQCBwdWJsaWM6CiAKICNpZiBFTkFCTEUoSU5URUxM
SUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikgJiYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAgICAg
c3RhdGljIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3MmLCBQQUw6OlNlc3Npb25JRCk7Ci0gICAgc3RhdGljIHZvaWQgbG9nQ29va2ll
SW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBjb25zdCBTdHJpbmcm
IGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiYsIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2Ft
ZVNpdGVJbmZvJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcik7CisgICAg
c3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNv
bnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYsIGNvbnN0IFVSTCYgZmlyc3RQYXJ0
eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5n
JiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+LCBzdGQ6
Om9wdGlvbmFsPFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+KTsKICNlbmRpZgogCiAgICAgdm9pZCBkaXNhYmxl
RXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NDYXB0dXJlKCkgeyBtX3Nob3VsZENhcHR1cmVFeHRyYU5l
dHdvcmtMb2FkTWV0cmljcyA9IGZhbHNlOyB9CkBAIC0xNTIsNyArMTUyLDcgQEAgcHJpdmF0ZToK
IAogICAgIC8vIElQQzo6TWVzc2FnZVNlbmRlcgogICAgIElQQzo6Q29ubmVjdGlvbiogbWVzc2Fn
ZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdCBvdmVycmlkZTsKLSAgICB1aW50NjRfdCBtZXNzYWdl
U2VuZGVyRGVzdGluYXRpb25JRCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fcGFyYW1ldGVy
cy5pZGVudGlmaWVyOyB9CisgICAgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQo
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2
NCgpOyB9CiAKICAgICBib29sIGNhblVzZUNhY2hlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpIGNvbnN0OwogICAgIGJvb2wgY2FuVXNlQ2FjaGVkUmVkaXJlY3QoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9t
ZXNzYWdlcy5weQppbmRleCAzZDExNmRiYzZiY2FiNDc1NTRlZmMyNDRjMjcxYjFiY2VhM2Y0MWYz
Li40OWE5NTM5NTVjN2U3MzViZWU3NTA5NTQwOWE4MWJmODUzZWIwYmVlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJL
aXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTI5Nyw2ICsyOTcsNyBAQCBkZWYgdHlw
ZXNfdGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViQ29yZTo6
UmVhbHRpbWVNZWRpYVNvdXJjZUlkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29yZTo6UmVuZGVy
aW5nTW9kZScsCiAgICAgICAgICdXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIn
LAorICAgICAgICAnV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyJywKICAgICAgICAg
J1dlYkNvcmU6OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29y
ZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29yZTo6U2VydmljZVdv
cmtlckpvYklkZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJM
U2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMuY3BwCmluZGV4IGQ1Y2EzYmJmZTA4MGJlN2U4NzAyYzUyMjU1Yjk1Yjli
OGViOTllYjYuLjU3MzdkOWM4M2MxNTFiOGU4NDYyMWE3MmIxM2ZlYWRlOThhZTllNzEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAKQEAg
LTUyLDcgKzUyLDcgQEAgc3RkOjpvcHRpb25hbDxVUkxTY2hlbWVUYXNrUGFyYW1ldGVycz4gVVJM
U2NoZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY28KICAgICBpZiAoIWhhbmRsZXJJ
ZGVudGlmaWVyKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogICAgIAotICAgIHN0ZDo6
b3B0aW9uYWw8dWludDY0X3Q+IHRhc2tJZGVudGlmaWVyOworICAgIHN0ZDo6b3B0aW9uYWw8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcjsKICAgICBkZWNv
ZGVyID4+IHRhc2tJZGVudGlmaWVyOwogICAgIGlmICghdGFza0lkZW50aWZpZXIpCiAgICAgICAg
IHJldHVybiBzdGQ6Om51bGxvcHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9V
UkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMuaAppbmRleCA2NzgyMzk2YjBmOWQwOWIzYmVkMmVmNDliY2JkNWNjOTUz
YzZkNTk1Li4xYjRkOWViMjdkZDBiMWU4NjA0N2Y3YWMzYWQwNjcwM2M1M2YzM2ZkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKQEAgLTI2LDYg
KzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRnJhbWVJbmZvRGF0YS5oIgorI2lu
Y2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9SZXNvdXJjZVJlcXVlc3QuaD4KIAogbmFtZXNwYWNlIElQQyB7CkBAIC0zNyw3ICszOCw3
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBzdHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMg
ewogICAgIHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyIHsgMCB9OwotICAgIHVpbnQ2NF90IHRh
c2tJZGVudGlmaWVyIHsgMCB9OworICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciB0YXNrSWRlbnRpZmllcjsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdDsK
ICAgICBGcmFtZUluZm9EYXRhIGZyYW1lSW5mbzsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCmluZGV4IDFj
ZGNmY2UwNmY5NWU2YjUzMTI3NWE4M2UzZWY3ZjA5NjhmZThhNzcuLmMyNjc2MjAyZDFjNTA2MzA4
ZWZmZDhhYzUyYjg4NGJhNGYxMjk4NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcApAQCAtNDc2LDkgKzQ3Niw5
IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6dGVybWluYXRlVW5yZXNwb25zaXZlU2Vydmlj
ZVdvcmtlclByb2Nlc3NlcyhXZWJDb3JlOjpQCiAgICAgfQogfQogCi12b2lkIE5ldHdvcmtQcm9j
ZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nl
c3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgTmV0
d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29y
ZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBp
bmcsICIlcCAtIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1Ry
YW5zZmVyOiBzb3VyY2VQcm9jZXNzSWRlbnRpZmllcjogJSIgUFJJdTY0ICIsIHJlc291cmNlTG9h
ZElkZW50aWZpZXI6ICUiIFBSSXU2NCwgdGhpcywgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIudG9V
SW50NjQoKSwgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vz
c1N3YXBwaW5nLCAiJXAgLSBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlBy
b2Nlc3NUcmFuc2Zlcjogc291cmNlUHJvY2Vzc0lkZW50aWZpZXI6ICUiIFBSSXU2NCAiLCByZXNv
dXJjZUxvYWRJZGVudGlmaWVyOiAlIiBQUkl1NjQsIHRoaXMsIHNvdXJjZVByb2Nlc3NJZGVudGlm
aWVyLnRvVUludDY0KCksIHJlc291cmNlTG9hZElkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAg
aWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KHsgfSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKaW5kZXggNjk5YTgyNTllZmFkYTEyYmFl
ZmYxY2RlOGJlMTBkMTM2ODQ1ZWQ2Mi4uNGU1MzRkZTA0N2YxZDI2NWNkMmRhMjNmZmZkNTY1MDUw
ZmU5N2NiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3
b3JrUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc1Byb3h5LmgKQEAgLTIxNCw3ICsyMTQsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCB0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGb3JTeW5jUmVwbHko
V2ViUGFnZVByb3h5SWRlbnRpZmllciwgTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OlRl
c3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseURlbGF5
ZWRSZXBseSYmKTsKICAgICB2b2lkIHRlcm1pbmF0ZVVucmVzcG9uc2l2ZVNlcnZpY2VXb3JrZXJQ
cm9jZXNzZXMoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIpOwogCi0gICAgdm9pZCBwcmVwYXJl
TG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3Vy
Y2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIo
V2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6
Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYpOwogCiAgICAgUHJv
Y2Vzc1Rocm90dGxlciYgdGhyb3R0bGVyKCkgZmluYWwgeyByZXR1cm4gbV90aHJvdHRsZXI7IH0K
ICAgICB2b2lkIHVwZGF0ZVByb2Nlc3NBc3NlcnRpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcAppbmRleCBmNjViOGE0ODdjMmU2YzAx
Y2IzMDlhM2NkODUwYTVjM2UzM2NiNmYwLi5kNjkwNjRjNzk1MGEyZDZjYjE2NjFiMDY2YmYzN2Rh
NzVhMTZhM2E5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25h
bFBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQ
YWdlUHJveHkuY3BwCkBAIC0zMzMsNyArMzMzLDcgQEAgdm9pZCBQcm92aXNpb25hbFBhZ2VQcm94
eTo6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5jKEZyYW1lSWRlbnRpZmllcgog
ICAgIG1fcGFnZS5kZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmNTaGFyZWQobV9w
cm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQYWdlSUQsIGZyYW1lSUQsIFdURk1vdmUoZnJhbWVJbmZv
KSwgaWRlbnRpZmllciwgbmF2aWdhdGlvbklELCBXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb25EYXRh
KSwgV1RGTW92ZShvcmlnaW5hdGluZ0ZyYW1lSW5mbyksIG9yaWdpbmF0aW5nUGFnZUlELCBvcmln
aW5hbFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUocmVxdWVzdEJvZHkpLCBXVEZN
b3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCB1c2VyRGF0YSwgbGlzdGVuZXJJRCk7CiB9CiAKLXZvaWQg
UHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlKEZyYW1lSWRlbnRp
ZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lD
aGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBk
b3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3Np
bmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlz
dGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQordm9pZCBQcm92aXNpb25hbFBhZ2VQ
cm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZy
YW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBp
ZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRl
LCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3
aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWlu
dDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGlmICgh
dmFsaWRhdGVJbnB1dChmcmFtZUlELCBuYXZpZ2F0aW9uSUQpKQogICAgICAgICByZXR1cm47CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuaAppbmRleCBk
NzhjMzhlMDA1MjBkOGM4NDBlMzcxMTI5YjJlNDU0ZWI4OWFhNjA3Li45ZWZhZWMyM2I5ZGZiMGQ3
YWI3ZDUzMjA5NmViYTg0MmEwMTYyNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1Byb3Zpc2lvbmFsUGFnZVByb3h5LmgKQEAgLTEyNSw3ICsxMjUsNyBAQCBwcml2YXRlOgogICAg
IGJvb2wgc2VuZE1lc3NhZ2UoVW5pcXVlUmVmPElQQzo6RW5jb2Rlcj4mJiwgT3B0aW9uU2V0PElQ
Qzo6U2VuZE9wdGlvbj4sIHN0ZDo6b3B0aW9uYWw8c3RkOjpwYWlyPENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoSVBDOjpEZWNvZGVyKik+LCB1aW50NjRfdD4+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBk
ZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmMoV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWlu
dDY0X3QgbmF2aWdhdGlvbklELCBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYmLCBGcmFtZUluZm9EYXRh
JiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6b3B0aW9uYWw8V2ViUGFnZVByb3h5SWRlbnRp
Zmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYg
b3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgSVBDOjpGb3JtRGF0
YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVk
aXJlY3RSZXNwb25zZSwgY29uc3QgVXNlckRhdGEmLCB1aW50NjRfdCBsaXN0ZW5lcklEKTsKLSAg
ICB2b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwg
RnJhbWVJbmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90
IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJp
bmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBX
ZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBsaXN0
ZW5lcklELCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgVXNlckRh
dGEmKTsKKyAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRl
bnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIs
IHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBj
b25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVk
QnVuZGxlLCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIs
IHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBkaWRDaGFu
Z2VQcm92aXNpb25hbFVSTEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgdWludDY0
X3QgbmF2aWdhdGlvbklELCBVUkwmJik7CiAgICAgdm9pZCBkaWRQZXJmb3JtU2VydmVyUmVkaXJl
Y3QoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgZGVzdGluYXRp
b25VUkxTdHJpbmcsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcik7CiAgICAgdm9pZCBkaWRSZWNl
aXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWRGb3JGcmFtZShXZWJDb3JlOjpGcmFt
ZUlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYsIGNvbnN0IFVzZXJEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcAppbmRleCBkOWYzODU1YzZmNDhmYTJmYzVjOGE3MGQxMDVhYWFmNWZmZDI2Yzk3Li44
YzNiOWUxNTc4ZGI3MmRmOTVjY2NkNzMzMWI0MTQ0YjA2NDk3ODIzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTU2MzAsMTIgKzU2MzAsMTIgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihGcmFtZUlkZW50aWZp
ZXIgZnJhbWVJRCwgRnJhbWUKIAogdm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJl
c3BvbnNlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZv
LCBQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwKICAgICB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25s
b2FkQXR0cmlidXRlLAotICAgIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dz
aW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hE
ZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxp
c3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKKyAgICBib29sIHdhc0FsbG93ZWRC
eUluamVjdGVkQnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dz
aW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwg
Y29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGRlY2lkZVBvbGljeUZvclJlc3BvbnNl
U2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlELCBmcmFtZUlELCBXVEZNb3Zl
KGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwgcmVzcG9uc2UsIHJlcXVlc3Qs
IGNhblNob3dNSU1FVHlwZSwgZG93bmxvYWRBdHRyaWJ1dGUsIHdhc0FsbG93ZWRCeUluamVjdGVk
QnVuZGxlLCBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgbGlzdGVuZXJJRCwgdXNlckRhdGEpOwogfQogCi12b2lkIFdlYlBhZ2VQ
cm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4m
JiBwcm9jZXNzLCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRl
bnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1F
VHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJ
bmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQor
dm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJlZjxXZWJQ
cm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgUG9saWN5Q2hlY2tJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9v
bCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wg
d2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVj
aXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCiB7CiAgICAgUGFnZUNsaWVudFBy
b3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKIApAQCAtOTk3OSw3ICs5OTc5LDcgQEAg
dm9pZCBXZWJQYWdlUHJveHk6OnN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vz
c1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2UKICAgICBpdGVyYXRvci0+dmFsdWUtPnN0YXJ0VGFzaygq
dGhpcywgcHJvY2Vzcywgd2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMpLCBudWxscHRyKTsK
IH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKK3ZvaWQgV2ViUGFnZVByb3h5
OjpzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAgIE1FU1NBR0Vf
Q0hFQ0sobV9wcm9jZXNzLCBkZWNsdHlwZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVy
KTo6aXNWYWxpZEtleShoYW5kbGVySWRlbnRpZmllcikpOwogICAgIGF1dG8gaXRlcmF0b3IgPSBt
X3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBmNDQxNzE0NDMxYTQxNGZi
NTM5NWY2NDFiYmY4ZWRlOGQzNTQ2YTFiLi5jN2NjZTU2ZmFjN2QwNWZiMzM5NzQ3ZjU2OTY3ODc1
NjY2ZTk3MjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTc0
NSw3ICsxNzQ1LDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlv
bkRhdGFTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgY29uc3QgV2ViTmF2aWdhdGlvbkRh
dGFTdG9yZSYsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcik7CiAgICAgdm9pZCBkaWRDaGFuZ2VQ
cm92aXNpb25hbFVSTEZvckZyYW1lU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBVUkwmJik7CiAgICAg
dm9pZCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmNTaGFyZWQoUmVmPFdlYlBy
b2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRl
bnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIs
IHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwgRnJhbWVJbmZv
RGF0YSYmIG9yaWdpbmF0aW5nRnJhbWVJbmZvLCBzdGQ6Om9wdGlvbmFsPFdlYlBhZ2VQcm94eUlk
ZW50aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmIG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIElQQzo6Rm9y
bURhdGFSZWZlcmVuY2UmJiByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYm
IHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IFVzZXJEYXRhJiwgdWludDY0X3QgbGlzdGVuZXJJRCk7
Ci0gICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1By
b3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
LCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0
X3QgbmF2aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0
cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUs
IFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1h
aW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2Vy
RGF0YSYpOworICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlBy
b2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRl
bnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIs
IHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBj
b25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVk
QnVuZGxlLCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIs
IHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBzdGFydFVS
TFNjaGVtZVRhc2tTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXIsIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgbG9hZERhdGFX
aXRoTmF2aWdhdGlvblNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdl
SWRlbnRpZmllciwgQVBJOjpOYXZpZ2F0aW9uJiwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwg
Y29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGluZywgY29uc3QgU3Ry
aW5nJiBiYXNlVVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0
QXNDb250aW51aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bj4sIHN0ZDo6b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiwgV2ViQ29yZTo6U2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSwgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGE6OlNlc3Npb25I
aXN0b3J5VmlzaWJpbGl0eSk7CiAgICAgdm9pZCBsb2FkUmVxdWVzdFdpdGhOYXZpZ2F0aW9uU2hh
cmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6
Ok5hdmlnYXRpb24mLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29yZTo6U2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBXZWJDb3JlOjpT
aG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4+LCBzdGQ6Om9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgPSBzdGQ6
Om51bGxvcHQsIHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IGV4
aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSA9IHN0ZDo6bnVsbG9w
dCk7CkBAIC0yMDYzLDcgKzIwNjMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGVjaWRlUG9saWN5
Rm9yTmV3V2luZG93QWN0aW9uKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0
YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIE5hdmlnYXRpb25BY3Rpb25EYXRh
JiYsCiAgICAgICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lk
IGRlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJ
bmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmln
YXRpb25JRCwKLSAgICAgICAgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBT
dHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxl
LCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNl
ckRhdGEmKTsKKyAgICAgICAgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBT
dHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxl
LCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2
NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCB1bmFibGVUb0ltcGxl
bWVudFBvbGljeShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImLCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgYmVnaW5TYWZlQnJvd3NpbmdD
aGVjayhjb25zdCBVUkwmLCBib29sLCBXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHkmKTsKIApA
QCAtMjQyNyw3ICsyNDI3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAgICAgdm9pZCBzdGFydFVS
TFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7Ci0gICAgdm9pZCBzdG9wVVJM
U2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIpOworICAgIHZvaWQgc3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAgICAgdm9pZCBsb2Fk
U3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYsIE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2tEZWxheWVkUmVw
bHkmJik7CiAKICAgICBib29sIGNoZWNrVVJMUmVjZWl2ZWRGcm9tQ3VycmVudE9yUHJldmlvdXNX
ZWJQcm9jZXNzKFdlYlByb2Nlc3NQcm94eSYsIGNvbnN0IFN0cmluZyYpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDRiYTU1OGFl
ODI0Y2IzMzkwMjdjNGFmMzBjMGViODg3ODMxNWM5YmYuLmM5ODA5ZTMxMGI4ZTQwOWIxNjY2MDky
MzMzMWMyNTczNzIzMjBjNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4KQEAgLTEwNyw3ICsxMDcsNyBAQCBtZXNzYWdlcyAtPiBXZWJQ
YWdlUHJveHkgewogI2VuZGlmCiAKICAgICAjIFBvbGljeSBtZXNzYWdlcwotICAgIERlY2lkZVBv
bGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3Qg
V2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVu
dGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qg
cmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIFN0cmluZyBkb3dubG9hZEF0dHJpYnV0ZSwg
Ym9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgZW51bTp1aW50OF90IFdlYkNvcmU6OkJy
b3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpCisgICAgRGVjaWRlUG9saWN5
Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJL
aXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZp
ZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1
ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgU3RyaW5nIGRvd25sb2FkQXR0cmlidXRlLCBib29s
IHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6QnJvd3Np
bmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbWFpblJlc291cmNlTG9h
ZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIFdlYktpdDo6VXNlckRhdGEgdXNlckRh
dGEpCiAgICAgRGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5jKFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1l
SW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmll
ciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9u
RGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBv
cmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEsIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpXZWJQYWdlUHJv
eHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1BhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
IG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIElQQzo6
Rm9ybURhdGFSZWZlcmVuY2UgcmVxdWVzdEJvZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVkaXJlY3RSZXNwb25zZSwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSwgdWludDY0X3QgbGlz
dGVuZXJJRCkKICAgICBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uU3luYyhXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgYm9vbCBpc01haW5GcmFtZSwgc3RydWN0IFdlYktp
dDo6RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmll
ciBwb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgc3RydWN0IFdl
YktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIHN0cnVjdCBX
ZWJLaXQ6OkZyYW1lSW5mb0RhdGEgb3JpZ2luYXRpbmdGcmFtZUluZm9EYXRhLCBzdGQ6Om9wdGlv
bmFsPFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCBvcmlnaW5hbFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCByZXF1ZXN0LCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlIHJlcXVlc3RCb2R5LCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlZGlyZWN0UmVzcG9uc2UsIFdlYktpdDo6VXNlckRhdGEg
dXNlckRhdGEpIC0+IChzdHJ1Y3QgV2ViS2l0OjpQb2xpY3lEZWNpc2lvbiBQb2xpY3lEZWNpc2lv
bikgU3luY2hyb25vdXMKICAgICBEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEg
ZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVu
dGlmaWVyLCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0
aW9uRGF0YSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIFN0cmluZyBmcmFtZU5h
bWUsIHVpbnQ2NF90IGxpc3RlbmVySUQsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpCkBAIC01
MjEsNyArNTIxLDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICAgICBTZXRJc1VzaW5n
SGlnaFBlcmZvcm1hbmNlV2ViR0woYm9vbCBpc1VzaW5nSGlnaFBlcmZvcm1hbmNlV2ViR0wpCiAK
ICAgICBTdGFydFVSTFNjaGVtZVRhc2soc3RydWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFt
ZXRlcnMgcGFyYW1ldGVycykKLSAgICBTdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpCisgICAgU3RvcFVSTFNjaGVtZVRh
c2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciB0YXNrSWRlbnRpZmllcikKICAgICBMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNr
KHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpIC0+IChX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
IGVycm9yLCBWZWN0b3I8dWludDhfdD4gZGF0YSkgU3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShE
RVZJQ0VfT1JJRU5UQVRJT04pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJVUkxTY2hlbWVIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNj
aGVtZUhhbmRsZXIuY3BwCmluZGV4IGZmNjhkNjRlMTgwMmFkZWJjNDAxNGI4YjYxNzkxYTAyZjRl
NGU0YTAuLmFmOTVhMjUxMmJjNDIzM2ExZGFkZTlhZmViMTFjN2VhNDdmNGI3ZDIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCkBAIC01NSwx
NCArNTUsMTQgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdGFydFRhc2soV2ViUGFnZVBy
b3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MKICAgICBhdXRvIHJlc3VsdCA9IG1f
dGFza3MuYWRkKHRhc2tJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoKnRoaXMs
IHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpKTsKICAgICBBU1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOwogCi0g
ICAgYXV0byBwYWdlRW50cnkgPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVu
dGlmaWVyKCksIEhhc2hTZXQ8dWludDY0X3Q+KCkpOworICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90
YXNrc0J5UGFnZUlkZW50aWZpZXIuYWRkKHBhZ2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4oKSk7CiAgICAgQVNTRVJUKCFwYWdlRW50cnku
aXRlcmF0b3ItPnZhbHVlLmNvbnRhaW5zKHRhc2tJZGVudGlmaWVyKSk7CiAgICAgcGFnZUVudHJ5
Lml0ZXJhdG9yLT52YWx1ZS5hZGQodGFza0lkZW50aWZpZXIpOwogCiAgICAgcGxhdGZvcm1TdGFy
dFRhc2socGFnZSwgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiB9CiAKLVdlYlByb2Nlc3NQcm94
eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyKSBjb25zdAorV2ViUHJvY2Vzc1Byb3h5KiBXZWJVUkxTY2hlbWVIYW5k
bGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyKSBjb25zdAogewogICAgIGlmICghZGVjbHR5cGUobV90YXNr
cyk6OmlzVmFsaWRLZXkodGFza0lkZW50aWZpZXIpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
QEAgLTc5LDcgKzc5LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NG
b3JQYWdlKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3gKICAgICAgICAgcmV0dXJu
OwogCiAgICAgYXV0byYgdGFza3NCeVBhZ2UgPSBpdGVyYXRvci0+dmFsdWU7Ci0gICAgVmVjdG9y
PHVpbnQ2NF90PiB0YXNrSWRlbnRpZmllcnNUb1N0b3A7CisgICAgVmVjdG9yPFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcj4gdGFza0lkZW50aWZpZXJzVG9TdG9wOwogICAgIHRhc2tJ
ZGVudGlmaWVyc1RvU3RvcC5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHRhc2tzQnlQYWdlLnNpemUo
KSk7CiAgICAgZm9yIChhdXRvIHRhc2tJZGVudGlmaWVyIDogdGFza3NCeVBhZ2UpIHsKICAgICAg
ICAgaWYgKCFwcm9jZXNzIHx8IHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih0YXNrSWRlbnRpZmll
cikgPT0gcHJvY2VzcykKQEAgLTkxLDcgKzkxLDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVy
OjpzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3gK
IAogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYg
cGFnZSwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6
OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6Omlz
VmFsaWRLZXkodGFza0lkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CkBAIC0xMTUsNyArMTE1
LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjp0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVt
ZVRhc2smIHRhc2spCiAgICAgcGxhdGZvcm1UYXNrQ29tcGxldGVkKHRhc2spOwogfQogCi12b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXI6OnJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyIHBhZ2VJRCwgdWludDY0X3QgdGFza0lEKQordm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSUQpCiB7CiAgICAgYXV0byBp
dGVyYXRvciA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmZpbmQocGFnZUlEKTsKICAgICBBU1NF
UlQoaXRlcmF0b3IgIT0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuZW5kKCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCmluZGV4IGY0ZTNkYjYwY2Mz
YjhlMDAwYjM0NjAzMmE5OTk3ZWVjMDE0NGQ4ZGIuLjRjOTk2NjliYTQ0ZDkwNWEwYTI1ZDEyNTYw
NWZiMTM4MDczZmRiNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVS
TFNjaGVtZUhhbmRsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hl
bWVIYW5kbGVyLmgKQEAgLTI2LDYgKzI2LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAi
V2ViVVJMU2NoZW1lVGFzay5oIgorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC01MSw3ICs1Miw3IEBAIHB1Ymxp
YzoKICAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVy
OyB9CiAKICAgICB2b2lkIHN0YXJ0VGFzayhXZWJQYWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkm
LCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgU3lu
Y0xvYWRDb21wbGV0aW9uSGFuZGxlciYmKTsKLSAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94
eSYsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKTsKKyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQ
cm94eSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllcik7
CiAgICAgdm9pZCBzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYsIFdlYlByb2Nlc3NQ
cm94eSopOwogICAgIHZvaWQgdGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJik7CiAKQEAg
LTYzLDEzICs2NCwxMyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVN0b3BU
YXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNjaGVtZVRhc2smKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIHBsYXRmb3JtVGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJikgeyB9OwogCi0gICAg
dm9pZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lEKTsKLSAgICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmll
cih1aW50NjRfdCkgY29uc3Q7CisgICAgdm9pZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFn
ZVByb3h5SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAg
ICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcihXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIGNvbnN0OwogCiAgICAgdWludDY0X3QgbV9pZGVudGlmaWVy
OwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmPFdlYlVSTFNjaGVtZVRhc2s+PiBtX3Rhc2tz
OwotICAgIEhhc2hNYXA8V2ViUGFnZVByb3h5SWRlbnRpZmllciwgSGFzaFNldDx1aW50NjRfdD4+
IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBSZWY8V2ViVVJMU2NoZW1lVGFzaz4+IG1fdGFza3M7CisgICAgSGFz
aE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBIYXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcj4+IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOwogICAgIAogICAgIFN5bmNM
b2FkQ29tcGxldGlvbkhhbmRsZXIgbV9zeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKaW5kZXggZWFjMDliZGVjYTFk
ZWMwY2IyMTlhYzFkMDMzMDhiMmUyNzIzMDljZS4uMmE5ZTA2YTJhMmIwZmQyZDZjZGU0NDY1MTkz
YjZkZjhjODAyNjRjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJM
U2NoZW1lVGFzay5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAKICAgICB+V2ViVVJMU2NoZW1lVGFzaygp
OwogCi0gICAgdWludDY0X3QgaWRlbnRpZmllcigpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWlu
KCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciBw
YWdlUHJveHlJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1f
cGFnZVByb3h5SUQ7IH0KICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQoKSBj
b25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3dlYlBhZ2VJRDsgfQog
ICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2VzcygpIHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsgcmV0dXJuIG1fcHJvY2Vzcy5nZXQoKTsgfQpAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6
CiAKICAgICBSZWY8V2ViVVJMU2NoZW1lSGFuZGxlcj4gbV91cmxTY2hlbWVIYW5kbGVyOwogICAg
IFJlZlB0cjxXZWJQcm9jZXNzUHJveHk+IG1fcHJvY2VzczsKLSAgICB1aW50NjRfdCBtX2lkZW50
aWZpZXI7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmll
cjsKICAgICBXZWJQYWdlUHJveHlJZGVudGlmaWVyIG1fcGFnZVByb3h5SUQ7CiAgICAgV2ViQ29y
ZTo6UGFnZUlkZW50aWZpZXIgbV93ZWJQYWdlSUQ7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0IG1fcmVxdWVzdCBXVEZfR1VBUkRFRF9CWV9MT0NLKG1fcmVxdWVzdExvY2spOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmpl
Y3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2Fk
Q2xpZW50LmgKaW5kZXggM2Y4MjdhMDFmNDg4MTc0NDY2NmEzNmVlN2FiYWE3MzA3MDE0MGQ0Yi4u
NDVjZDYxZTcxZDg4NWNmMWY3Y2MzOGIzNTUxYTJjNDhiZDA2ZGY1MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dC5oCkBAIC0yNSw2ICsyNSw4IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2ViQ29y
ZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KKwogbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFz
cyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CkBAIC00NSwxNCArNDcsMTQgQEAgY2xhc3MgUmVz
b3VyY2VMb2FkQ2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5SZXNvdXJjZUxvYWRDbGll
bnQoKSA9IGRlZmF1bHQ7CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVz
b3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRl
bnRpZmllciovLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIC8qcGFnZUlz
UHJvdmlzaW9uYWxseUxvYWRpbmcqLykgeyB9Ci0gICAgdmlydHVhbCB2b2lkIHdpbGxTZW5kUmVx
dWVzdEZvckZyYW1lKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRf
dCAvKmlkZW50aWZpZXIqLywgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVz
cG9uc2VGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWlu
dDY0X3QgLyppZGVudGlmaWVyKi8sIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSB7
IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShX
ZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVy
Ki8sIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5p
c2hMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVp
bnQ2NF90IC8qaWRlbnRpZmllciovKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbExvYWRG
b3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3Qg
LyppZGVudGlmaWVyKi8sIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSB7IH0KLSAgICB2
aXJ0dWFsIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6
OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8pIHsgcmV0dXJuIHRydWU7IH0KLSAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViS2l0OjpXZWJQYWdl
JiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovKSB7IHJldHVybiB0
cnVlOyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYktp
dDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQ
cm92aXNpb25hbGx5TG9hZGluZyovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgd2lsbFNlbmRSZXF1
ZXN0Rm9yRnJhbWUoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZy
YW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVDb250ZW50
TGVuZ3RoRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkg
eyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6Oldl
YlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6
OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgeyB9CisgICAgdmlydHVhbCBi
b29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFt
ZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgeyByZXR1cm4gdHJ1ZTsgfQor
ICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJLaXQ6OldlYlBh
Z2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBJbmplY3RlZEJ1bmRsZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50
LmNwcAppbmRleCBiOGJkNDEyNDMyMTRlODBlYmQ2YjdjNTExNjNhNTkwZDkzYjk3ZWY4Li4wNmQ4
YWRhMjUwYTM3MWJiY2E1ZWIwZTY0NDFhNTJiNzIzNDVjOWY5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcApAQCAtMzksMjAg
KzM5LDIwIEBAIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6SW5qZWN0ZWRC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50KGNvbnN0CiAgICAgaW5pdGlhbGl6ZShjbGllbnQp
OwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkSW5p
dGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50
NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgcGFn
ZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcpCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNl
TG9hZENsaWVudDo6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2Vi
RnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIHBhZ2VJc1Byb3Zpc2lvbmFs
bHlMb2FkaW5nKQogewogICAgIGlmICghbV9jbGllbnQuZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3Vy
Y2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRpZEluaXRpYXRlTG9hZEZvclJl
c291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgdG9BUEkocmVx
dWVzdCksIHBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nLCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pOworICAgIG1fY2xpZW50LmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKHRvQVBJKCZwYWdl
KSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShyZXF1ZXN0KSwg
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9
CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2VuZFJl
cXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSkKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2Fk
Q2xpZW50Ojp3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYg
ZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVz
cG9uc2UpCiB7CiAgICAgaWYgKCFtX2NsaWVudC53aWxsU2VuZFJlcXVlc3RGb3JGcmFtZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEFQSTo6VVJMUmVxdWVzdD4gcmV0dXJuZWRSZXF1
ZXN0ID0gYWRvcHRSZWYodG9JbXBsKG1fY2xpZW50LndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKHRv
QVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgdG9BUEkocmVxdWVzdCksIHRv
QVBJKHJlZGlyZWN0UmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pKSk7CisgICAg
UmVmUHRyPEFQSTo6VVJMUmVxdWVzdD4gcmV0dXJuZWRSZXF1ZXN0ID0gYWRvcHRSZWYodG9JbXBs
KG1fY2xpZW50LndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZy
YW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShyZXF1ZXN0KSwgdG9BUEkocmVkaXJl
Y3RSZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbykpKTsKICAgICBpZiAocmV0dXJu
ZWRSZXF1ZXN0KSB7CiAgICAgICAgIC8vIElmIHRoZSBjbGllbnQgcmV0dXJuZWQgYW4gSFRUUCBi
b2R5LCB3ZSB3YW50IHRvIHVzZSB0aGF0IGh0dHAgYm9keS4gVGhpcyBpcyBuZWVkZWQgdG8gZml4
IDxyZGFyOi8vcHJvYmxlbS8yMzc2MzU4ND4KICAgICAgICAgYXV0byYgcmV0dXJuZWRSZXNvdXJj
ZVJlcXVlc3QgPSByZXR1cm5lZFJlcXVlc3QtPnJlc291cmNlUmVxdWVzdCgpOwpAQCAtNjQsNTIg
KzY0LDUyIEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxs
U2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdlCiAgICAgICAgIHJlcXVlc3QgPSB7IH07
CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNl
aXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVp
bnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9p
ZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVSZXNwb25z
ZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQogewogICAgIGlmICghbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVz
b3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRpZFJlY2VpdmVSZXNwb25z
ZUZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgdG9B
UEkocmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRp
ZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwg
aWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShyZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xp
ZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50
OjpkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZy
YW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkK
K3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlQ29u
dGVudExlbmd0aEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IGNvbnRl
bnRMZW5ndGgpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRSZWNlaXZlQ29udGVudExlbmd0aEZv
clJlc291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRSZWNlaXZlQ29u
dGVudExlbmd0aEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRp
ZmllciwgY29udGVudExlbmd0aCwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBtX2Ns
aWVudC5kaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9B
UEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBjb250ZW50TGVuZ3RoLCBtX2NsaWVu
dC5iYXNlLmNsaWVudEluZm8pOwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNl
TG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZy
YW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFn
ZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllcikKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkRmluaXNoTG9hZEZvclJlc291cmNl
KHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgbV9jbGllbnQuYmFzZS5j
bGllbnRJbmZvKTsKKyAgICBtX2NsaWVudC5kaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UodG9BUEko
JnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIG1fY2xpZW50LmJh
c2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2Fk
Q2xpZW50OjpkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBm
cmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2
b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkRmFpbExvYWRGb3JS
ZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICBpZiAoIW1fY2xpZW50LmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIG1fY2xpZW50LmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2Up
LCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShlcnJvciksIG1fY2xpZW50LmJhc2Uu
Y2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkRmFpbExvYWRGb3JSZXNvdXJjZSh0b0FQSSgm
cGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgdG9BUEkoZXJyb3Ip
LCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwogfQogCi1ib29sIEluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZShXZWJQYWdlJiBwYWdlLCBX
ZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIpCitib29sIEluamVjdGVkQnVuZGxl
UGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZShXZWJQYWdlJiBwYWdl
LCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuc2hvdWxkQ2FjaGVSZXNwb25zZSkKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAKLSAgICByZXR1cm4gbV9jbGllbnQuc2hvdWxkQ2FjaGVSZXNwb25z
ZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIG1fY2xpZW50LmJhc2Uu
Y2xpZW50SW5mbyk7CisgICAgcmV0dXJuIG1fY2xpZW50LnNob3VsZENhY2hlUmVzcG9uc2UodG9B
UEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIG1fY2xpZW50
LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLWJvb2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJQYWdlJiBwYWdlLCBXZWJG
cmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIpCitib29sIEluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViUGFnZSYg
cGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllcikKIHsKICAgICBpZiAoIW1fY2xpZW50LnNob3VsZFVzZUNyZWRlbnRpYWxTdG9y
YWdlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIHJldHVybiBtX2NsaWVudC5zaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZp
ZXIsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgcmV0dXJuIG1fY2xpZW50LnNob3Vs
ZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRp
Zmllci50b1VJbnQ2NCgpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNv
dXJjZUxvYWRDbGllbnQuaAppbmRleCAzYWVmM2RjY2VhMzk2NTBjZDYxZjg0ZWZmMjgxYWQwZDI0
N2E2YWU3Li45ODgxM2Q5YjE1NGJiM2QyM2JjZTM0NTQ0NGFiZGJlYjA1MjQzYWI1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCkBA
IC01MSwxNCArNTEsMTQgQEAgY2xhc3MgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50IDogcHVibGljIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmMKIHB1YmxpYzoKICAgICBl
eHBsaWNpdCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQoY29uc3QgV0tCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50QmFzZSopOwogCi0gICAgdm9pZCBkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIC8qcGFnZUlzUHJvdmlzaW9uYWxs
eUxvYWRpbmcqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShX
ZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0g
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUm
LCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdl
YlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIHVpbnQ2NF90IGNvbnRlbnRM
ZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYlBh
Z2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQg
ZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7Ci0gICAgYm9v
bCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50
aWZpZXIpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2Vi
UGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGJvb2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyovKSBvdmVycmlkZTsKKyAgICB2
b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdl
YlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgdWlu
dDY0X3QgY29udGVudExlbmd0aCkgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkRm9y
UmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFn
ZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRDYWNoZVJl
c3BvbnNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
Zmllcikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJQ
YWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJy
aWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNw
cAppbmRleCA2MGI5NWVkM2ViYTg3OWJjNDllNzExNTY0MTVhMWJmMDU5Yzg2YTU0Li40N2I5MWNl
ODdkMzYxM2UzNWQ1Nzk0MDc5N2FkZjBiMWRkMDBhNDhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bi5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjp+TmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uKCkKIHZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRS
ZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIElQQzo6RGVjb2RlciYg
ZGVjb2RlcikKIHsKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVz
c2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKLSAgICAg
ICAgaWYgKGF1dG8qIHdlYlJlc291cmNlTG9hZGVyID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
d2ViTG9hZGVyU3RyYXRlZ3koKS53ZWJSZXNvdXJjZUxvYWRlckZvcklkZW50aWZpZXIoZGVjb2Rl
ci5kZXN0aW5hdGlvbklEKCkpKQorICAgICAgICBpZiAoYXV0byogd2ViUmVzb3VyY2VMb2FkZXIg
PSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVneSgpLndlYlJlc291cmNl
TG9hZGVyRm9ySWRlbnRpZmllcihtYWtlT2JqZWN0SWRlbnRpZmllcjxXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcj4oZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKSkKICAgICAgICAgICAgIHdlYlJlc291
cmNlTG9hZGVyLT5kaWRSZWNlaXZlV2ViUmVzb3VyY2VMb2FkZXJNZXNzYWdlKGNvbm5lY3Rpb24s
IGRlY29kZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMjI2LDEyICsyMjYsMTIgQEAg
dm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OndyaXRlQmxvYnNUb1RlbXBvcmFyeUZpbGVz
Rm9ySW5kZXhlZERCKGNvbnN0IFZlY3QKICAgICBjb25uZWN0aW9uKCkuc2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6V3JpdGVCbG9ic1Rv
VGVtcG9yYXJ5RmlsZXNGb3JJbmRleGVkREIoYmxvYlVSTHMpLCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7CiB9CiAKLXZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQ
aW5nTG9hZCh1aW50NjRfdCBwaW5nTG9hZElkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJv
ciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQordm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5l
Y3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBwaW5nTG9hZElkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvciwgUmVzb3VyY2VSZXNw
b25zZSYmIHJlc3BvbnNlKQogewogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRl
clN0cmF0ZWd5KCkuZGlkRmluaXNoUGluZ0xvYWQocGluZ0xvYWRJZGVudGlmaWVyLCBXVEZNb3Zl
KGVycm9yKSwgV1RGTW92ZShyZXNwb25zZSkpOwogfQogCi12b2lkIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbjo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRl
bnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQordm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5l
Y3Rpb246OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCiB7
CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViTG9hZGVyU3RyYXRlZ3koKS5kaWRGaW5p
c2hQcmVjb25uZWN0aW9uKHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXVEZNb3ZlKGVycm9yKSk7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3Jr
UHJvY2Vzc0Nvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCmluZGV4IGY4MTE5NmFlMDEyNDAwYmIxYzZjZmZlMjhh
NjJiZmZjNGNkYTc1MTQuLmQ2MmRmZTRkZjVhYTVhN2Y4NDc2YWExOWZlY2Y4NzRiYmY4NDlhZGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCkBAIC0yMywxNCArMjMsMTQgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbl9oCi0jZGVmaW5lIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbl9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJTaGFyZWFibGVSZXNvdXJj
ZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NvbnNvbGVUeXBlcy5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaD4KICNpbmNsdWRlIDxXZWJDb3Jl
L1JUQ0RhdGFDaGFubmVsSWRlbnRpZmllci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TZXJ2aWNlV29ya2VyVHlwZXMu
aD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgpAQCAtNTAsOCArNTAsNiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYklE
QkNvbm5lY3Rpb25Ub1NlcnZlcjsKIGNsYXNzIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjsKIAotdHlw
ZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwotCiBjbGFzcyBOZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b24+LCBJUEM6OkNvbm5lY3Rpb246OkNsaWVudCB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24+IGNyZWF0ZShJUEM6OkNvbm5lY3Rpb246OklkZW50aWZp
ZXIgY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQb2xpY3kg
aHR0cENvb2tpZUFjY2VwdFBvbGljeSkKQEAgLTk2LDggKzk0LDggQEAgcHJpdmF0ZToKICAgICB2
b2lkIGRpZENsb3NlKElQQzo6Q29ubmVjdGlvbiYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVj
ZWl2ZUludmFsaWRNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6TWVzc2FnZU5hbWUpIG92
ZXJyaWRlOwogCi0gICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRfdCBwaW5nTG9hZElk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYmKTsKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24odWludDY0X3QgcHJlY29u
bmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJik7CisgICAgdm9pZCBk
aWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcGluZ0xv
YWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmJik7CisgICAgdm9pZCBkaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYmKTsKICAgICB2b2lkIHNldE9uTGluZVN0YXRlKGJvb2wgaXNPbkxpbmUp
OwogICAgIHZvaWQgY29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChXZWJDb3JlOjpIVFRQQ29va2ll
QWNjZXB0UG9saWN5KTsKIApAQCAtMTI5LDUgKzEyNywzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbl9o
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4KaW5kZXggYzhiNGExOGY3
ZTk0MjQ1NGIwYWE5NjY2MTJmMTkzYWNmZGFjODY0MC4uNmJhMzFmNTQ4YjlhYTUwMDE3ZDZhZDQ3
ODI2YzczMTgyMTZhNjM2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdl
cy5pbgpAQCAtMjYsOCArMjYsOCBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b24gTGVnYWN5UmVjZWl2ZXIgewogICAgIERpZENhY2hlUmVzb3VyY2UoV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0IHJlcXVlc3QsIFdlYktpdDo6U2hhcmVhYmxlUmVzb3VyY2U6OkhhbmRsZSByZXNv
dXJjZSkKICNlbmRpZgogCi0gICAgRGlkRmluaXNoUGluZ0xvYWQodWludDY0X3QgcGluZ0xvYWRJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlIHJlc3BvbnNlKQotICAgIERpZEZpbmlzaFByZWNvbm5lY3Rpb24odWludDY0X3Qg
cHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IpCisg
ICAgRGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHBp
bmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkKKyAgICBEaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKICAgICBTZXRPbkxpbmVTdGF0ZShib29sIGlz
T25MaW5lKTsKICAgICBDb29raWVBY2NlcHRQb2xpY3lDaGFuZ2VkKGVudW06dWludDhfdCBXZWJD
b3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5IHBvbGljeSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAppbmRleCAz
NTI1MzEwNmNiMWQzMDEzMzljMmIzMGU4NjAyZjZiZjI0YTNlNzJiLi5lNTVjYWUzNDU0ZjEzOGU5
ZjQ5ZjQ1NGFhNmZiMjQ5ZDU2ODI1NzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCkBAIC04MSw4ICs4MSw4IEBA
CiAjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX0VSUk9SX0JBU0lDKGZtdCwg
Li4uKSBSRUxFQVNFX0xPR19FUlJPUihOZXR3b3JrLCAiJXAgLSBXZWJMb2FkZXJTdHJhdGVneTo6
IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCiAKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgIiVwIC0gW3Jlc291cmNlTG9hZGVyPSVwLCBm
cmFtZUxvYWRlcj0lcCwgZnJhbWU9JXAsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0l
IiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIl0gV2ViTG9hZGVyU3RyYXRlZ3k6OiIK
LSNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVS
UyB0aGlzLCAmcmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9hZGVyLmZyYW1lTG9hZGVyKCksIHJl
c291cmNlTG9hZGVyLmZyYW1lKCksIHRyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQudG9VSW50NjQo
KSwgdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0
ZXJzLnJlc291cmNlSUQKLSNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfV0lUSF9GUkFNRUxPQURF
Ul9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMsIG51bGxwdHIsICZmcmFtZUxv
YWRlciwgJmZyYW1lTG9hZGVyLmZyYW1lKCksIHRyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQudG9V
SW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQ
YXJhbWV0ZXJzLnJlc291cmNlSUQKKyNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9M
T0dfU1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCAmcmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9h
ZGVyLmZyYW1lTG9hZGVyKCksIHJlc291cmNlTG9hZGVyLmZyYW1lKCksIHRyYWNraW5nUGFyYW1l
dGVycy5wYWdlSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50
NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQudG9VSW50NjQoKQorI2RlZmluZSBX
RUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BB
UkFNRVRFUlMgdGhpcywgbnVsbHB0ciwgJmZyYW1lTG9hZGVyLCAmZnJhbWVMb2FkZXIuZnJhbWUo
KSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRl
cnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRC50b1VJ
bnQ2NCgpCiAKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0coZm10LCAuLi4p
IFJFTEVBU0VfTE9HKE5ldHdvcmssIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5E
QVJEX1RFTVBMQVRFIGZtdCwgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRf
UEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVM
RUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssIFdFQkxP
QURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCTE9BREVS
U1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykK
QEAgLTE3MCw3ICsxNzAsNyBAQCBzdGF0aWMgU2Vjb25kcyBtYXhpbXVtQnVmZmVyaW5nVGltZShD
YWNoZWRSZXNvdXJjZSogcmVzb3VyY2UpCiAKIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVk
dWxlTG9hZChSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIsIENhY2hlZFJlc291cmNlKiBy
ZXNvdXJjZSwgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KQog
ewotICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVy
LmlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSByZXNvdXJjZUxvYWRlci5pZGVu
dGlmaWVyKCk7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCiAgICAgYXV0byYgZnJhbWVMb2Fk
ZXJDbGllbnQgPSByZXNvdXJjZUxvYWRlci5mcmFtZUxvYWRlcigpLT5jbGllbnQoKTsKQEAgLTI5
NSw3ICsyOTUsNyBAQCBzdGF0aWMgdm9pZCBhZGRQYXJhbWV0ZXJzU2hhcmVkKGNvbnN0IEZyYW1l
KiBmcmFtZSwgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcgogCiB2b2lkIFdlYkxvYWRlclN0
cmF0ZWd5OjpzY2hlZHVsZUxvYWRGcm9tTmV0d29ya1Byb2Nlc3MoUmVzb3VyY2VMb2FkZXImIHJl
c291cmNlTG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFdlYlJl
c291cmNlTG9hZGVyOjpUcmFja2luZ1BhcmFtZXRlcnMmIHRyYWNraW5nUGFyYW1ldGVycywgYm9v
bCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0LCBTZWNvbmRzIG1heGlt
dW1CdWZmZXJpbmdUaW1lKQogewotICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmll
ciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBy
ZXNvdXJjZUxvYWRlci5pZGVudGlmaWVyKCk7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCiAg
ICAgQ29udGVudFNuaWZmaW5nUG9saWN5IGNvbnRlbnRTbmlmZmluZ1BvbGljeSA9IHJlc291cmNl
TG9hZGVyLnNob3VsZFNuaWZmQ29udGVudCgpID8gQ29udGVudFNuaWZmaW5nUG9saWN5OjpTbmlm
ZkNvbnRlbnQgOiBDb250ZW50U25pZmZpbmdQb2xpY3k6OkRvTm90U25pZmZDb250ZW50OwpAQCAt
NDczLDcgKzQ3Myw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnJlbW92ZShSZXNvdXJjZUxv
YWRlciogcmVzb3VyY2VMb2FkZXIpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAgCi0gICAg
UmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXItPmlkZW50
aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSByZXNvdXJjZUxvYWRlci0+aWRlbnRpZmll
cigpOwogICAgIGlmICghaWRlbnRpZmllcikgewogICAgICAgICBMT0dfRVJST1IoIldlYkxvYWRl
clN0cmF0ZWd5IHJlbW92aW5nIGEgUmVzb3VyY2VMb2FkZXIgdGhhdCBoYXMgbm8gaWRlbnRpZmll
ci4iKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNTY2LDcgKzU2Niw3IEBAIFdlYkxvYWRlclN0cmF0
ZWd5OjpTeW5jTG9hZFJlc3VsdCBXZWJMb2FkZXJTdHJhdGVneTo6bG9hZERhdGFVUkxTeW5jaHJv
bm91c2x5KGNvCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RkOjpvcHRpb25hbDxXZWJMb2Fk
ZXJTdHJhdGVneTo6U3luY0xvYWRSZXN1bHQ+IFdlYkxvYWRlclN0cmF0ZWd5Ojp0cnlMb2FkaW5n
U3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihGcmFtZUxvYWRlciYgZnJhbWVMb2Fk
ZXIsIFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0KQorc3RkOjpvcHRpb25hbDxXZWJMb2FkZXJTdHJhdGVneTo6U3luY0xvYWRS
ZXN1bHQ+IFdlYkxvYWRlclN0cmF0ZWd5Ojp0cnlMb2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJM
U2NoZW1lSGFuZGxlcihGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QpCiB7CiAgICAgYXV0byogd2ViRnJhbWVMb2FkZXJDbGllbnQgPSB0b1dlYkZyYW1lTG9hZGVy
Q2xpZW50KGZyYW1lTG9hZGVyLmNsaWVudCgpKTsKICAgICBhdXRvKiB3ZWJGcmFtZSA9IHdlYkZy
YW1lTG9hZGVyQ2xpZW50ID8gJndlYkZyYW1lTG9hZGVyQ2xpZW50LT53ZWJGcmFtZSgpIDogbnVs
bHB0cjsKQEAgLTU4Niw3ICs1ODYsNyBAQCBzdGQ6Om9wdGlvbmFsPFdlYkxvYWRlclN0cmF0ZWd5
OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6OnRyeUxvYWRpbmdTeQogICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKLXZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCB1bnNpZ25lZCBsb25nIHJlc291
cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50
Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5LCAgY29uc3QgRmV0Y2hPcHRp
b25zJiBvcHRpb25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJz
LCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFZlY3Rv
cjx1aW50OF90PiYgZGF0YSkKK3ZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xp
Y3ksICBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9y
aWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewogICAgIGF1dG8qIHdlYkZy
YW1lTG9hZGVyQ2xpZW50ID0gdG9XZWJGcmFtZUxvYWRlckNsaWVudChmcmFtZUxvYWRlci5jbGll
bnQoKSk7CiAgICAgYXV0byogd2ViRnJhbWUgPSB3ZWJGcmFtZUxvYWRlckNsaWVudCA/ICZ3ZWJG
cmFtZUxvYWRlckNsaWVudC0+d2ViRnJhbWUoKSA6IG51bGxwdHI7CkBAIC02ODMsMTIgKzY4Myw2
IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmJyb3dzaW5nQ29udGV4dFJlbW92ZWQoRnJhbWUm
IGZyYW1lKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6QnJvd3NpbmdDb250ZXh0UmVtb3ZlZChwYWdlLndlYlBhZ2VQcm94eUlk
ZW50aWZpZXIoKSwgcGFnZS5pZGVudGlmaWVyKCksIFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKGZy
YW1lKS0+ZnJhbWVJRCgpKSwgMCk7CiB9CiAKLXVpbnQ2NF90IFdlYkxvYWRlclN0cmF0ZWd5Ojpn
ZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCkKLXsKLSAgICBzdGF0aWMgdWludDY0X3QgaWRlbnRpZmll
ciA9IDA7Ci0gICAgcmV0dXJuICsraWRlbnRpZmllcjsKLX0KLQogYm9vbCBXZWJMb2FkZXJTdHJh
dGVneTo6dXNlUGluZ0xvYWQoKSBjb25zdAogewogICAgIHJldHVybiAhUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5mZXRjaEFQSUtlZXBBbGl2ZUVuYWJsZWQoKTsKQEAg
LTcxMiw3ICs3MDYsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKEZy
YW1lJiBmcmFtZSwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjbwogICAgIH0KIAogICAgIE5l
dHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIGxvYWRQYXJhbWV0ZXJzOwotICAgIGxvYWRQYXJh
bWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJMb2FkZXJTdHJhdGVneTo6Z2VuZXJhdGVMb2FkSWRlbnRp
ZmllcigpOworICAgIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSAgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIGxvYWRQYXJhbWV0ZXJzLndlYlBh
Z2VQcm94eUlEID0gd2ViUGFnZS0+d2ViUGFnZVByb3h5SWRlbnRpZmllcigpOwogICAgIGxvYWRQ
YXJhbWV0ZXJzLndlYlBhZ2VJRCA9IHdlYlBhZ2UtPmlkZW50aWZpZXIoKTsKICAgICBsb2FkUGFy
YW1ldGVycy53ZWJGcmFtZUlEID0gd2ViRnJhbWUtPmZyYW1lSUQoKTsKQEAgLTc0OSw3ICs3NDMs
NyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKEZyYW1lJiBmcmFtZSwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjbwogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6TG9hZFBpbmcgeyBsb2FkUGFyYW1l
dGVycyB9LCAwKTsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6ZGlkRmluaXNoUGluZ0xv
YWQodWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJl
c291cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKK3ZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZp
bmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwaW5nTG9hZElk
ZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3Bv
bnNlKQogewogICAgIGlmIChhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gbV9waW5nTG9hZENvbXBs
ZXRpb25IYW5kbGVycy50YWtlKHBpbmdMb2FkSWRlbnRpZmllcikpCiAgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKFdURk1vdmUoZXJyb3IpLCBXVEZNb3ZlKHJlc3BvbnNlKSk7CkBAIC03ODcsOSAr
NzgxLDkgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJlY29ubmVjdFRvKFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UKICAgICAgICAgICAgIHJlcXVlc3Quc2V0
SXNBcHBJbml0aWF0ZWQobG9hZGVyLT5sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCgpKTsK
ICAgICB9CiAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBwcmVjb25uZWN0aW9uSWRlbnRp
ZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cj4gcHJlY29ubmVjdGlvbklkZW50aWZpZXI7CiAgICAgaWYgKGNvbXBsZXRpb25IYW5kbGVyKSB7
Ci0gICAgICAgIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRlZ3k6Omdl
bmVyYXRlTG9hZElkZW50aWZpZXIoKTsKKyAgICAgICAgcHJlY29ubmVjdGlvbklkZW50aWZpZXIg
PSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAg
IGF1dG8gYWRkUmVzdWx0ID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzLmFkZCgqcHJl
Y29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKICAgICAg
ICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKICAgICB9
CkBAIC04MTksMTAgKzgxMywxMiBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpwcmVjb25uZWN0
VG8oV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgV2ViUGFnZQogICAgIHBhcmFt
ZXRlcnMuaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9IHdlYkZyYW1lLmlzVG9wRnJhbWVO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbigpOwogI2VuZGlmCiAKKyAgICAvLyBGSVhNRTogVXNl
IHNlbmRXaXRoQXN5bmNSZXBseSBpbnN0ZWFkIG9mIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyCisg
ICAgLy8gRklYTUU6IGRvbid0IHVzZSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
Zm9yIGEgcHJlY29ubmVjdGlvbiBpZGVudGlmaWVyLCB0b28uIEl0IHNob3VsZCBoYXZlIGl0cyBv
d24gdHlwZS4KICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OlByZWNvbm5lY3RUbyhwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV1RG
TW92ZShwYXJhbWV0ZXJzKSksIDApOwogfQogCi12b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpkaWRG
aW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNv
dXJjZUVycm9yJiYgZXJyb3IpCit2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVj
b25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9u
SWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQogewogICAgIGlmIChhdXRvIGNvbXBs
ZXRpb25IYW5kbGVyID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzLnRha2UocHJlY29u
bmVjdGlvbklkZW50aWZpZXIpKQogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGVy
cm9yKSk7CkBAIC04NjMsMjEgKzg1OSwyMSBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzZXRD
YXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5j
b25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OlNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljc0VuYWJsZWQoZW5hYmxlZCksIDApOwog
fQogCi1SZXNvdXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5OjpyZXNwb25zZUZyb21SZXNv
dXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCitSZXNv
dXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5OjpyZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVy
KQogewogICAgIFJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2U7CiAgICAgV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNl
bmRTeW5jKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6R2V0TmV0d29y
a0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlIHsgcmVzb3VyY2VMb2FkSWRlbnRpZmllciB9LCBNZXNz
YWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZTo6UmVwbHkgeyByZXNwb25zZSB9LCAwKTsKICAgICByZXR1cm4gcmVzcG9u
c2U7CiB9CiAKLVZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gV2ViTG9hZGVy
U3RyYXRlZ3k6OmludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCitWZWN0b3I8TmV0d29ya1Ry
YW5zYWN0aW9uSW5mb3JtYXRpb24+IFdlYkxvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2Fk
SW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKIHsKICAgICBWZWN0b3I8TmV0
d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGluZm9ybWF0aW9uOwogICAgIFdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24o
KS5zZW5kU3luYyhNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5l
dHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb24geyByZXNvdXJjZUxvYWRJZGVudGlmaWVy
IH0sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6R2V0TmV0d29ya0xv
YWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbjo6UmVwbHkgeyBpbmZvcm1hdGlvbiB9LCAwKTsKICAg
ICByZXR1cm4gaW5mb3JtYXRpb247CiB9CiAKLU5ldHdvcmtMb2FkTWV0cmljcyBXZWJMb2FkZXJT
dHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRf
dCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorTmV0d29ya0xvYWRNZXRyaWNzIFdlYkxvYWRlclN0
cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQogewogICAg
IE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljczsKICAgICBXZWJQcm9jZXNzOjpzaW5n
bGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2Vu
ZFN5bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpUYWtlTmV0d29y
a0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MgeyByZXNvdXJjZUxvYWRJZGVudGlmaWVyIH0sIE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6VGFrZU5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25NZXRyaWNzOjpSZXBseSB7IG5ldHdvcmtNZXRyaWNzIH0sIDApOwpAQCAtOTE5LDcgKzkx
NSw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdN
b2RlKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIFdlYkNvCiAKIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6
OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTdWJyZXNvdXJj
ZUxvYWRlcio+JiByZXNvdXJjZXMpCiB7Ci0gICAgYXV0byBpZGVudGlmaWVycyA9IHJlc291cmNl
cy5tYXAoW10oYXV0byogbG9hZGVyKSAtPiBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHsKKyAgICBh
dXRvIGlkZW50aWZpZXJzID0gcmVzb3VyY2VzLm1hcChbXShhdXRvKiBsb2FkZXIpIC0+IFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB7CiAgICAgICAgIHJldHVybiBsb2FkZXItPmlk
ZW50aWZpZXIoKTsKICAgICB9KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKaW5kZXggYzc5NmFlNTBmMTRjMTZlYzI1ZTZl
MDE0OWQ3NjZiZjdkMTFlMTg3Yi4uNDA1YzczNDMwZTIxMDEyYjFlMWFjNzg4OTY1Y2JjOTc2Nzc2
MjM2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9h
ZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJM
b2FkZXJTdHJhdGVneS5oCkBAIC00NCw3ICs0NCw2IEBAIGNsYXNzIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbjsKIGNsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFnZTsKIGNsYXNzIFdlYlVSTFNj
aGVtZVRhc2tQcm94eTsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsK
IAogY2xhc3MgV2ViTG9hZGVyU3RyYXRlZ3kgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6TG9hZGVy
U3RyYXRlZ3kgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdlYkxvYWRlclN0cmF0ZWd5KTsg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC01Myw3ICs1Miw3IEBAIHB1YmxpYzoKICAgICB+
V2ViTG9hZGVyU3RyYXRlZ3koKSBmaW5hbDsKICAgICAKICAgICB2b2lkIGxvYWRSZXNvdXJjZShX
ZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9hZGVyT3B0aW9ucyYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyPiYmKT4m
JikgZmluYWw7Ci0gICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdlYkNvcmU6OkZy
YW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5
LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVy
TWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBWZWN0b3I8dWludDhfdD4mIGRhdGEpIGZpbmFsOworICAgIHZvaWQgbG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxvYWRlciYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xp
ZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3Qg
V2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKSBmaW5hbDsKICAgICB2
b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2UmKSBmaW5hbDsKICAgICB2b2lkIGJy
b3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViQ29yZTo6RnJhbWUmKSBmaW5hbDsKIApAQCAtNjgsMTUg
KzY3LDE1IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgdXNlUGluZ0xvYWQoKSBjb25zdCBmaW5hbDsK
ICAgICB2b2lkIHN0YXJ0UGluZ0xvYWQoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RI
ZWFkZXJzLCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBXZWJDb3JlOjpDb250ZW50U2Vj
dXJpdHlQb2xpY3lJbXBvc2l0aW9uLCBQaW5nTG9hZENvbXBsZXRpb25IYW5kbGVyJiYpIGZpbmFs
OwotICAgIHZvaWQgZGlkRmluaXNoUGluZ0xvYWQodWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJik7
CisgICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmJik7CiAKICAgICB2b2lkIHByZWNvbm5lY3RUbyhXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6U3RvcmVk
Q3JlZGVudGlhbHNQb2xpY3ksIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlciYmID0gbnVsbHB0
cik7CiAgICAgdm9pZCBwcmVjb25uZWN0VG8oV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBjb25zdCBV
UkwmLCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgUHJlY29ubmVjdENvbXBsZXRp
b25IYW5kbGVyJiYpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50
NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsK
KyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JiYpOwogCiAgICAgdm9pZCBzZXRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVk
KGJvb2wpIGZpbmFsOwogCi0gICAgV2ViUmVzb3VyY2VMb2FkZXIqIHdlYlJlc291cmNlTG9hZGVy
Rm9ySWRlbnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsg
cmV0dXJuIG1fd2ViUmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKTsgfQorICAgIFdlYlJl
c291cmNlTG9hZGVyKiB3ZWJSZXNvdXJjZUxvYWRlckZvcklkZW50aWZpZXIoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fd2ViUmVz
b3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKTsgfQogICAgIHZvaWQgc2NoZWR1bGVQbHVnaW5T
dHJlYW1Mb2FkKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6TmV0c2NhcGVQbHVnSW5TdHJlYW1M
b2FkZXJDbGllbnQmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChSZWZQdHI8V2ViQ29yZTo6TmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXI+JiYpPiYm
KTsKIAogICAgIHZvaWQgbmV0d29ya1Byb2Nlc3NDcmFzaGVkKCk7CkBAIC05MCw4ICs4OSw2IEBA
IHB1YmxpYzoKICAgICB2b2lkIGFkZE9ubGluZVN0YXRlQ2hhbmdlTGlzdGVuZXIoRnVuY3Rpb248
dm9pZChib29sKT4mJikgZmluYWw7CiAgICAgdm9pZCBzZXRPbkxpbmVTdGF0ZShib29sKTsKIAot
ICAgIHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7Ci0KICAgICB2b2lk
IHNldEV4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZShzdGQ6Om9w
dGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlzdGluZ05ldHdvcmtSZXNv
dXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUpIHsgbV9leGlzdGluZ05ldHdvcmtSZXNvdXJjZUxv
YWRJZGVudGlmaWVyVG9SZXN1bWUgPSBleGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlm
aWVyVG9SZXN1bWU7IH0KIAogICAgIHN0YXRpYyBjb25zdGV4cHIgU2Vjb25kcyBtZWRpYU1heGlt
dW1CdWZmZXJpbmdUaW1lIHsgNTBfbXMgfTsKQEAgLTEwOCwxMiArMTA1LDEyIEBAIHByaXZhdGU6
CiAgICAgICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAgICAgIFZlY3Rvcjx1
aW50OF90PiBkYXRhOwogICAgIH07Ci0gICAgc3RkOjpvcHRpb25hbDxTeW5jTG9hZFJlc3VsdD4g
dHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIoV2ViQ29yZTo6RnJh
bWVMb2FkZXImLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKTsKKyAgICBzdGQ6Om9wdGlvbmFsPFN5bmNMb2FkUmVzdWx0PiB0cnlMb2FkaW5n
U3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihXZWJDb3JlOjpGcmFtZUxvYWRlciYs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0Jik7CiAgICAgU3luY0xvYWRSZXN1bHQgbG9hZERhdGFVUkxTeW5jaHJvbm91c2x5
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwogCi0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSByZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJl
c291cmNlTG9hZElkZW50aWZpZXIpIGZpbmFsOwotICAgIFZlY3RvcjxXZWJDb3JlOjpOZXR3b3Jr
VHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJl
c291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgZmlu
YWw7Ci0gICAgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJl
c291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZUZyb21SZXNvdXJjZUxv
YWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7Cisg
ICAgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBpbnRlcm1l
ZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIFdlYkNvcmU6Ok5ldHdvcmtMb2Fk
TWV0cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAKICAgICBib29sIHNob3VsZFBlcmZv
cm1TZWN1cml0eUNoZWNrcygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgaGF2ZVBlcmZvcm1lZFNl
Y3VyaXR5Q2hlY2tzKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBjb25zdCBmaW5h
bDsKQEAgLTEyMyw5ICsxMjAsOSBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0UmVzb3VyY2VMb2Fk
U2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZSYsIFdlYkNvcmU6OkxvYWRTY2hlZHVsaW5nTW9k
ZSkgZmluYWw7CiAgICAgdm9pZCBwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8
V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXIqPiYpIGZpbmFsOwogCi0gICAgVmVjdG9yPHVpbnQ2
NF90PiBvbmdvaW5nTG9hZHMoKSBjb25zdCBmaW5hbAorICAgIFZlY3RvcjxXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXI+IG9uZ29pbmdMb2FkcygpIGNvbnN0IGZpbmFsCiAgICAgewot
ICAgICAgICByZXR1cm4gV1RGOjptYXAobV93ZWJSZXNvdXJjZUxvYWRlcnMsIFtdKGF1dG8mJiBr
ZXlWYWx1ZSkgLT4gdWludDY0X3QgeworICAgICAgICByZXR1cm4gV1RGOjptYXAobV93ZWJSZXNv
dXJjZUxvYWRlcnMsIFtdKGF1dG8mJiBrZXlWYWx1ZSkgLT4gV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHsKICAgICAgICAgICAgIHJldHVybiBrZXlWYWx1ZS5rZXk7CiAgICAgICAg
IH0pOwogICAgIH0KQEAgLTEzMywxMCArMTMwLDEwIEBAIHByaXZhdGU6CiAgICAgSGFzaFNldDxS
ZWZQdHI8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+PiBtX2ludGVybmFsbHlGYWlsZWRSZXNvdXJj
ZUxvYWRlcnM7CiAgICAgUnVuTG9vcDo6VGltZXI8V2ViTG9hZGVyU3RyYXRlZ3k+IG1faW50ZXJu
YWxseUZhaWxlZExvYWRUaW1lcjsKICAgICAKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJl
ZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4+IG1fd2ViUmVzb3VyY2VMb2FkZXJzOwotICAgIEhhc2hN
YXA8dW5zaWduZWQgbG9uZywgV2ViVVJMU2NoZW1lVGFza1Byb3h5Kj4gbV91cmxTY2hlbWVUYXNr
czsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+
IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcnM7Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25n
LCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXI+IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5k
bGVyczsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVm
UHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJjZUxvYWRlcnM7CisgICAgSGFzaE1h
cDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94
eSo+IG1fdXJsU2NoZW1lVGFza3M7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+IG1fcGluZ0xvYWRDb21wbGV0
aW9uSGFuZGxlcnM7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcj4gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhh
bmRsZXJzOwogICAgIFZlY3RvcjxGdW5jdGlvbjx2b2lkKGJvb2wpPj4gbV9vbmxpbmVTdGF0ZUNo
YW5nZUxpc3RlbmVyczsKICAgICBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyPiBtX2V4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZTsK
ICAgICBib29sIG1faXNPbkxpbmUgeyB0cnVlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250
cm9sbGVyLmNwcAppbmRleCBkMzY0ZTcwMTJkODNiZmEyOTUzOGU0YmI3MDljN2E1N2ExYmZkNDhh
Li41NmM3YmNkYzA4MjRmOTgyZTA5ZTVlZGQwZmNjMzI1Njg1OGU0YWU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRy
b2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291
cmNlSW50ZXJjZXB0Q29udHJvbGxlci5jcHAKQEAgLTI4LDI5ICsyOCwyOSBAQAogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAotYm9vbCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmlzSW50
ZXJjZXB0aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgY29uc3QKK2Jvb2wgV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyhXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QKIHsKICAgICByZXR1cm4gbV9pbnRlcmNl
cHRlZFJlc3BvbnNlUXVldWUuY29udGFpbnMoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViUmVz
b3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpiZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVy
OjpiZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewogICAgIG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLnNldChp
ZGVudGlmaWVyLCBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+PigpKTsKIH0KIAotdm9pZCBXZWJSZXNv
dXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmNvbnRpbnVlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQordm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmNvbnRpbnVl
UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgYXV0byBxdWV1ZSA9IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLnRha2UoaWRlbnRp
Zmllcik7CiAgICAgZm9yIChhdXRvJiBjYWxsYmFjayA6IHF1ZXVlKQogICAgICAgICBjYWxsYmFj
aygpOwogfQogCi12b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0
ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYlJlc291cmNlSW50
ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX2ludGVyY2VwdGVkUmVzcG9uc2VR
dWV1ZS5yZW1vdmUoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRD
b250cm9sbGVyOjpkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQo
KT4mJiBmdW5jdGlvbikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpkZWZl
cihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRnVuY3Rpb248
dm9pZCgpPiYmIGZ1bmN0aW9uKQogewogICAgIEFTU0VSVChpc0ludGVyY2VwdGluZyhpZGVudGlm
aWVyKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dl
YlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKaW5kZXggZDcxYjkwNzNl
YTQ1Yzg2MTAyZWI0ODc1ZDlmOTFjMDAxYzg5ZThmNi4uODgzNzgyNzAwYmE5YzcxZmIyNjc2YWY3
ZjYzYTZlMGMzZmVmY2I2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKQEAg
LTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9EZXF1ZS5oPgogI2luY2x1ZGUg
PHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC0zMywyMSArMzQs
MjEgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlJlc291cmNlSW50ZXJjZXB0Q29u
dHJvbGxlciB7CiBwdWJsaWM6Ci0gICAgYm9vbCBpc0ludGVyY2VwdGluZyh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIpIGNvbnN0OworICAgIGJvb2wgaXNJbnRlcmNlcHRpbmcoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKSBjb25zdDsKIAogICAgIC8vIFN0YXJ0IGludGVyY2VwdGlu
ZyBhIHJlc3BvbnNlLgotICAgIHZvaWQgYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZShX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgLy8gU3RvcCBpbnRlcmNl
cHRpbmcgYSByZXNwb25zZS4gQW4gaW50ZXJjZXB0IHJlc3BvbnNlIHdhcyBub3Qgc3VwcGxpZWQu
IFNlbmQgZGVmZXJyZWQgbmV0d29ya2luZyBjYWxsYmFja3MuCi0gICAgdm9pZCBjb250aW51ZVJl
c3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBjb250aW51ZVJlc3Bv
bnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICAvLyBTdG9wIGlu
dGVyY2VwdGluZyBhIHJlc3BvbnNlLiBBbiBpbnRlcmNlcHQgcmVzcG9uc2Ugd2FzIHN1cHBsaWVk
LiBTZW5kIG5vIGRlZmVycmVkIG5ldHdvcmtpbmcgY2FsbGJhY2tzLgotICAgIHZvaWQgaW50ZXJj
ZXB0ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgaW50ZXJj
ZXB0ZWRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCi0gICAg
dm9pZCBkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQoKT4mJik7
CisgICAgdm9pZCBkZWZlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIEZ1bmN0
aW9uPHZvaWQoKT4mJik7CiAKIHByaXZhdGU6Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBE
ZXF1ZTxGdW5jdGlvbjx2b2lkKCk+Pj4gbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWU7CisgICAg
SGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERlcXVlPEZ1bmN0aW9u
PHZvaWQoKT4+PiBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGVjZDQwNTJlYWMwMzgwMjgyNTVhNzg2MjM2ZTE5
Njk4NTNhZmExZDguLmM5ZmNiMGQ3OGY5M2ZjNWYwZjgxMzY2YzBiMTMwOThjM2YzZTA2YzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9h
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJj
ZUxvYWRlci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1N1YnJlc291
cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAKLSNkZWZp
bmUgV0VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5l
dHdvcmssICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIs
IHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYlJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywg
bV90cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0
ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCwg
IyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgV0VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10
LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIs
IGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYlJlc291cmNl
TG9hZGVyOjoiIGZtdCwgdGhpcywgbV90cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0
KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1Bh
cmFtZXRlcnMucmVzb3VyY2VJRC50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtODMsNyArODMsNyBAQCB1
aW50NjRfdCBXZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBj
b25zdAogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICBSRUxF
QVNFX0FTU0VSVChtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSk7Ci0gICAgcmV0dXJuIG1fY29y
ZUxvYWRlci0+aWRlbnRpZmllcigpOworICAgIHJldHVybiBtX2NvcmVMb2FkZXItPmlkZW50aWZp
ZXIoKS50b1VJbnQ2NCgpOwogfQogCiB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkZXRhY2hGcm9t
Q29yZUxvYWRlcigpCkBAIC0xNTMsNyArMTUzLDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBib28K
ICAgICB9CiAKICAgICBpZiAoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjpzaG91bGRJ
bnRlcmNlcHRSZXNwb25zZShtX2NvcmVMb2FkZXItPmZyYW1lKCksIHJlc3BvbnNlKSkgewotICAg
ICAgICB1bnNpZ25lZCBsb25nIGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIgPSBtX2NvcmVM
b2FkZXItPmlkZW50aWZpZXIoKTsKKyAgICAgICAgYXV0byBpbnRlcmNlcHRlZFJlcXVlc3RJZGVu
dGlmaWVyID0gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAgICAgICAgIG1faW50ZXJjZXB0
Q29udHJvbGxlci5iZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKGludGVyY2VwdGVkUmVxdWVzdElk
ZW50aWZpZXIpOwogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVy
Y2VwdFJlc3BvbnNlKG1fY29yZUxvYWRlci0+ZnJhbWUoKSwgcmVzcG9uc2UsIGludGVyY2VwdGVk
UmVxdWVzdElkZW50aWZpZXIsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyks
IGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIsIHBvbGljeURlY2lzaW9uQ29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKHBvbGljeURlY2lzaW9uQ29tcGxldGlvbkhhbmRsZXIpXShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiBpbnNwZWN0b3JSZXNwb25zZSwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
b3ZlcnJpZGVEYXRhKSBtdXRhYmxlIHsKICAgICAgICAgICAgIGlmICghbV9jb3JlTG9hZGVyIHx8
ICFtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmgKaW5kZXggMzU1MjAxYjk3MDQz
NWM1NGQ1NGIzZmJmOWU0NDJhY2QyYmNiMmIxMi4uYTIyZTYyZjI4YjVmYTRjZmM5MWFhNWU1Y2U4
MmNhMjdhZTI2YWQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdv
cmsvV2ViUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiV2Vi
UmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZUlk
ZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BhZ2VJZGVudGlmaWVyLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIApAQCAtNTAsMTUgKzUxLDEzIEBA
IGNsYXNzIFJlc291cmNlUmVzcG9uc2U7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi10eXBlZGVm
IHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7Ci0KIGNsYXNzIFdlYlJlc291cmNlTG9h
ZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViUmVzb3VyY2VMb2FkZXI+LCBwdWJsaWMgSVBDOjpN
ZXNzYWdlU2VuZGVyIHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgVHJhY2tpbmdQYXJhbWV0ZXJzIHsK
ICAgICAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJveHlJRDsKICAgICAgICAg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEOwogICAgICAgICBXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRDsKLSAgICAgICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJj
ZUlEIHsgMCB9OworICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVz
b3VyY2VJRDsKICAgICB9OwogCiAgICAgc3RhdGljIFJlZjxXZWJSZXNvdXJjZUxvYWRlcj4gY3Jl
YXRlKFJlZjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4mJiwgY29uc3QgVHJhY2tpbmdQYXJhbWV0
ZXJzJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAppbmRleCAwNmIzMjVjNTBlNzQ0
MjQxZDQ3ODUxZjEwNzk1ZDBiNmVkMDRlMzcwLi41OTk2ZTZjY2FlZDhhZTc2YjRkYmIwODQ5MTli
OGI0YmYwMDEzY2FiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFn
ZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKQEAgLTEzNSw3
ICsxMzUsNyBAQCBwcml2YXRlOgogICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlkZW50
aWZpZXI+IHBhZ2VJRCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fcGFnZUlEOyB9CiAgICAgc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBtX2ZyYW1lSUQ7IH0KIAotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0
b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmlu
YWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIGJvb2wgaXNTZXJ2aWNlV29ya2VyRnJhbWVMb2FkZXJD
bGllbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBTdHJpbmcgdXNlckFn
ZW50KGNvbnN0IFVSTCYpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdXNlckFnZW50OyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCAwMDg4OWIwMGM4NTc5MzU5OGI3ZmUxMzMw
ZWYyOWQ4NmE3N2VlNDhmLi42MDY1NWQ4ZTMyZTMzNTBiNzk2MDNkNGE0Y2Q0ODlmMTRiMjY2ZDU1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTIyMSw3ICsyMjEsNyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkZXRhY2hlZEZyb21QYXJlbnQzKCkKICAgICBub3RJ
bXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVu
dGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9
IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yMzUsNyArMjM1LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVl
c3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICB3ZWJQYWdlLT5hZGRSZXNvdXJjZVJlcXVlc3Qo
aWRlbnRpZmllciwgcmVxdWVzdCk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yNTIsNyArMjUyLDcgQEAgdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb24KICAgICB9CiB9CiAKLWJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcikKIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlm
ICghd2ViUGFnZSkKQEAgLTI2MSwxMyArMjYxLDEzIEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQK
ICAgICByZXR1cm4gd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVSZXNvdXJjZUxvYWRDbGllbnQoKS5z
aG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSgqd2ViUGFnZSwgbV9mcmFtZSwgaWRlbnRpZmllcik7
CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3Qg
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJikKIHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAogI2lmIFVTRShQUk9U
RUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCitib29s
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNw
YWNlKERvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKIHsKICAgICAvLyBUaGUgV2Vi
S2l0IDIgTmV0d29ya2luZyBwcm9jZXNzIGFza3MgdGhlIFVJUHJvY2VzcyBkaXJlY3RseSwgc28g
dGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBzaG91bGQgbmV2ZXIgcmVjZWl2ZSB0aGlzIGNhbGxiYWNr
LgogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMjc1LDcgKzI3NSw3IEBAIGJvb2wgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2Uo
RG9jdW1lbnRMb2FkZXIqCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yODQsNyArMjg0LDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZAogICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlUmVzb3VyY2VMb2FkQ2xpZW50
KCkuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoKndlYlBhZ2UsIG1fZnJhbWUsIGlkZW50
aWZpZXIsIHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKQogewogICAgIFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMzAz
LDcgKzMwMyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNo
RGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1CiB9CiAjZW5kaWYKIAotdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0zMTMsNyArMzEzLDcgQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG8KICAgICB3ZWJQYWdlLT5yZW1vdmVSZXNvdXJjZVJlcXVlc3QoaWRl
bnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBXZWJQYWdl
KiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTg0OSw4
ICs4NDksNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgIGF1dG8qIGNvcmVGcmFtZSA9
IG1fZnJhbWUtPmNvcmVGcmFtZSgpOwogICAgIGF1dG8qIHBvbGljeURvY3VtZW50TG9hZGVyID0g
Y29yZUZyYW1lID8gY29yZUZyYW1lLT5sb2FkZXIoKS5wcm92aXNpb25hbERvY3VtZW50TG9hZGVy
KCkgOiBudWxscHRyOwogICAgIGF1dG8gbmF2aWdhdGlvbklEID0gcG9saWN5RG9jdW1lbnRMb2Fk
ZXIgPyBzdGF0aWNfY2FzdDxXZWJEb2N1bWVudExvYWRlciY+KCpwb2xpY3lEb2N1bWVudExvYWRl
cikubmF2aWdhdGlvbklEKCkgOiAwOwotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgdXNpbmcg
YSBzdHJvbmdseS10eXBlZCBpZGVudGlmaWVyIGZvciBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmll
ci4KLSAgICBhdXRvIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyID0gcG9saWN5RG9jdW1lbnRM
b2FkZXIgJiYgcG9saWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpID8gcG9s
aWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpLT5pZGVudGlmaWVyKCkgOiAw
OworICAgIGF1dG8gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIgPSBwb2xpY3lEb2N1bWVudExv
YWRlciAmJiBwb2xpY3lEb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlTG9hZGVyKCkgPyBwb2xp
Y3lEb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlTG9hZGVyKCktPmlkZW50aWZpZXIoKSA6IFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcigpOwogCiAgICAgYm9vbCB3YXNBbGxvd2Vk
QnlJbmplY3RlZEJ1bmRsZSA9IHBvbGljeSA9PSBXS0J1bmRsZVBhZ2VQb2xpY3lBY3Rpb25Vc2U7
CiAgICAgYXV0byBwcm90ZWN0b3IgPSBtX2ZyYW1lLmNvcHlSZWYoKTsKQEAgLTE4MDgsNyArMTgw
Nyw3IEBAIFJlbW90ZUFYT2JqZWN0UmVmIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjphY2Nlc3NpYmls
aXR5UmVtb3RlT2JqZWN0KCkKICAgICByZXR1cm4gd2ViUGFnZS0+YWNjZXNzaWJpbGl0eVJlbW90
ZU9iamVjdCgpOwogfQogICAgIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hl
UmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2Fj
aGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVk
VVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0Cit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25z
ZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5w
YWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMTg4OSw3ICsxODg4LDcgQEAgdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6c2VuZEgyUGluZyhjb25zdCBVUkwmIHVybCwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChFeHAKIAogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIHBhcmFt
ZXRlcnM7CiAgICAgcGFyYW1ldGVycy5yZXF1ZXN0ID0gUmVzb3VyY2VSZXF1ZXN0KHVybCk7Ci0g
ICAgcGFyYW1ldGVycy5pZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRlZ3k6OmdlbmVyYXRlTG9h
ZElkZW50aWZpZXIoKTsKKyAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgcGFyYW1ldGVycy53ZWJQYWdl
UHJveHlJRCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICBwYXJhbWV0
ZXJzLndlYlBhZ2VJRCA9IHdlYlBhZ2UtPmlkZW50aWZpZXIoKTsKICAgICBwYXJhbWV0ZXJzLndl
YkZyYW1lSUQgPSBtX2ZyYW1lLT5mcmFtZUlEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
CmluZGV4IDc3ZGE0MTE4ODIyNDhlMmMwZWJlZGMxN2Y3OGI0M2NiODkwZDVhODAuLmE2OTg1YTc4
MDQ0YWIyYTc2M2U0OTRjNjg1Nzk4MzMxNzZhYTc3YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oCkBAIC04MSwyMSArODEsMjEgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRldGFjaGVkRnJv
bVBhcmVudDIoKSBmaW5hbDsKICAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0lu
aXRpYWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
ICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBm
aW5hbDsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKLSAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykK
LSAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5z
dFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmlu
YWw7CiAjZW5kaWYKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxDRkRp
Y3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0
aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjZW5kaWYKLSAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxl
bmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFs
OworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNv
bnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2Fk
aW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgYm9vbCBk
aXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRF
Q1RJT04pCiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAq
ZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CkBAIC0yMzgsNyArMjM4LDcgQEAgcHJpdmF0ZToKICNp
ZiBQTEFURk9STShDT0NPQSkKICAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVt
b3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRV
UkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNo
ZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25z
ZSAqKT4mJikgY29uc3QgZmluYWw7CiAKICAgICBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25D
b250ZXh0KCkgZmluYWw7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYkZyYW1lLmNwcAppbmRleCAzNjIwOGIwM2Y4Y2M2MzY3ODY3MWRkYmRiNGNhMjdmYjli
YjE1ZGMzLi4zN2IyOGUzZTlmMjU0MmVkNWY3M2I1MmI5ZTA5YjA1YjYzYjQ4YTYzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwCkBAIC0zMDQsMTQg
KzMwNCwxMiBAQCB2b2lkIFdlYkZyYW1lOjpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxv
YWQoRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyLAogICAgIFN1YnJlc291cmNlTG9hZGVy
KiBtYWluUmVzb3VyY2VMb2FkZXIgPSBkb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlTG9hZGVy
KCk7CiAKICAgICBhdXRvJiB3ZWJQcm9jZXNzID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCk7Ci0g
ICAgLy8gVXNlIDAgdG8gaW5kaWNhdGUgdGhhdCB0aGUgcmVzb3VyY2UgbG9hZCBjYW4ndCBiZSBj
b252ZXJ0ZWQgYW5kIGEgbmV3IGRvd25sb2FkIG11c3QgYmUgc3RhcnRlZC4KKyAgICAvLyBVc2Ug
c3RkOjpudWxsb3B0IHRvIGluZGljYXRlIHRoYXQgdGhlIHJlc291cmNlIGxvYWQgY2FuJ3QgYmUg
Y29udmVydGVkIGFuZCBhIG5ldyBkb3dubG9hZCBtdXN0IGJlIHN0YXJ0ZWQuCiAgICAgLy8gVGhp
cyBjYW4gaGFwcGVuIGlmIHRoZXJlIGlzIG5vIGxvYWRlciBiZWNhdXNlIHRoZSBtYWluIHJlc291
cmNlIGlzIGluIHRoZSBXZWJDb3JlIG1lbW9yeSBjYWNoZSwKICAgICAvLyBvciBiZWNhdXNlIHRo
ZSBjb252ZXJzaW9uIHdhcyBhdHRlbXB0ZWQgd2hlbiBub3QgY2FsbGluZyBTdWJyZXNvdXJjZUxv
YWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKCkuCi0gICAgdWludDY0X3QgbWFpblJlc291cmNlTG9h
ZElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyOwogICAgIGlmIChtYWluUmVzb3Vy
Y2VMb2FkZXIpCiAgICAgICAgIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyID0gbWFpblJlc291
cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7Ci0gICAgZWxzZQotICAgICAgICBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciA9IDA7CiAKICAgICBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluPiBpc0FwcEJvdW5kID0gTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW46Ok5vOwog
ICAgIGlzQXBwQm91bmQgPSBtX2lzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW47CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDFhYmRmN2UwNDI0
ODhlNmM1ZTk4NzQwMzU0YTVlZmY5YThlYjhmNDUuLjQ0NTdiOTU5NjUyOGIyYTU3NGFlYTdlMWM4
YjA3MDliZWMyNmI0N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCkBAIC00MzIwLDEwICs0MzIwLDEwIEBAIFdlYkZ1bGxTY3JlZW5NYW5hZ2VyKiBX
ZWJQYWdlOjpmdWxsU2NyZWVuTWFuYWdlcigpCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjph
ZGRDb25zb2xlTWVzc2FnZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVzc2FnZVNvdXJjZSBt
ZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIHVpbnQ2NF90IHJlcXVlc3RJRCkKK3ZvaWQgV2ViUGFnZTo6YWRkQ29uc29sZU1lc3Nh
Z2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIE1lc3NhZ2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwg
TWVzc2FnZUxldmVsIG1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVxdWVzdElEKQogewogICAgIGlmIChhdXRvKiBm
cmFtZSA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkZyYW1lKGZyYW1lSUQpKQotICAgICAg
ICBmcmFtZS0+YWRkQ29uc29sZU1lc3NhZ2UobWVzc2FnZVNvdXJjZSwgbWVzc2FnZUxldmVsLCBt
ZXNzYWdlLCByZXF1ZXN0SUQpOworICAgICAgICBmcmFtZS0+YWRkQ29uc29sZU1lc3NhZ2UobWVz
c2FnZVNvdXJjZSwgbWVzc2FnZUxldmVsLCBtZXNzYWdlLCByZXF1ZXN0SUQudG9VSW50NjQoKSk7
CiB9CiAKIHZvaWQgV2ViUGFnZTo6c2VuZENTUFZpb2xhdGlvblJlcG9ydChGcmFtZUlkZW50aWZp
ZXIgZnJhbWVJRCwgY29uc3QgVVJMJiByZXBvcnRVUkwsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2Um
JiByZXBvcnREYXRhKQpAQCAtNTUxNSw3ICs1NTE1LDcgQEAgdm9pZCBXZWJQYWdlOjpzYXZlUERG
VG9UZW1wb3JhcnlGb2xkZXJBbmRPcGVuV2l0aE5hdGl2ZUFwcGxpY2F0aW9uKGNvbnN0IFN0cmlu
ZyYKIH0KICNlbmRpZgogCi12b2lkIFdlYlBhZ2U6OmFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCkKK3ZvaWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QpCiB7CiAgICAgaWYgKCFyZXF1ZXN0LnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1p
bHkoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNTUzMCw3ICs1NTMwLDcgQEAgdm9pZCBXZWJQYWdl
OjphZGRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXIKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXROZXR3
b3JrUmVxdWVzdHNJblByb2dyZXNzKHRydWUpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjpyZW1vdmVS
ZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJQYWdlOjpy
ZW1vdmVSZXNvdXJjZVJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX3RyYWNrZWROZXR3b3JrUmVzb3VyY2VSZXF1ZXN0SWRl
bnRpZmllcnMucmVtb3ZlKGlkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CkBAIC02OTI3LDcg
KzY5MjcsNyBAQCB2b2lkIFdlYlBhZ2U6OnJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRf
dCBoYW5kbGVySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJgogICAgIG1faWRlbnRpZmllclRvVVJM
U2NoZW1lSGFuZGxlclByb3h5TWFwLmFkZChoYW5kbGVySWRlbnRpZmllciwgc2NoZW1lUmVzdWx0
Lml0ZXJhdG9yLT52YWx1ZS5nZXQoKSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNl
UmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBXZWJQYWdlOjp1cmxTY2hl
bWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBSZXNvdXJj
ZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhh
bmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVy
KTsKQEAgLTY5MzYsNyArNjkzNiw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQ
ZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpCiAgICAgaGFu
ZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRlbnRpZmllciwgV1RGTW92ZShy
ZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
IH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVp
bnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3Vy
Y2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQordm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5k
bGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7
CkBAIC02OTQ0LDcgKzY5NDQsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJm
b3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbgogICAgIGhhbmRs
ZXItPnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVz
cG9uc2UpLCBXVEZNb3ZlKHJlcXVlc3QpLCBbXSAoUmVzb3VyY2VSZXF1ZXN0JiYpIHt9KTsKIH0K
ICAgICAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNj
aGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVCho
YW5kbGVyKTsKQEAgLTY5NTIsNyArNjk1Miw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0CiAg
ICAgaGFuZGxlci0+dGFza0RpZFJlY2VpdmVSZXNwb25zZSh0YXNrSWRlbnRpZmllciwgcmVzcG9u
c2UpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQ
Qzo6RGF0YVJlZmVyZW5jZSYgZGF0YSkKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJl
Y2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYg
ZGF0YSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5k
bGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7
CkBAIC02OTYwLDcgKzY5NjAsNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNl
aXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdAogICAgIGhhbmRs
ZXItPnRhc2tEaWRSZWNlaXZlRGF0YSh0YXNrSWRlbnRpZmllciwgZGF0YS5zaXplKCksIGRhdGEu
ZGF0YSgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWlu
dDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZENvbXBs
ZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewog
ICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1h
cC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAppbmRleCA3ZjY1ZDJiNDgzNTRiODRi
MDA1MmI3MGY3NDhlMmE2NGM5Yjg1ZjY3Li5hMDIwNjBjNGE4ZDliZGE0YWZjN2JkMmIwODQ4Mzky
MjMzZmM5YzQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CkBAIC00MzYsNyArNDM2LDcgQEAgcHVibGljOgogICAgIFdlYkZ1bGxTY3JlZW5NYW5hZ2VyKiBm
dWxsU2NyZWVuTWFuYWdlcigpOwogI2VuZGlmCiAKLSAgICB2b2lkIGFkZENvbnNvbGVNZXNzYWdl
KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBj
b25zdCBTdHJpbmcmLCB1aW50NjRfdCByZXF1ZXN0SUQgPSAwKTsKKyAgICB2b2lkIGFkZENvbnNv
bGVNZXNzYWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgTWVzc2FnZVNvdXJjZSwgTWVzc2Fn
ZUxldmVsLCBjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
PSB7IH0pOwogICAgIHZvaWQgc2VuZENTUFZpb2xhdGlvblJlcG9ydChXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIsIGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlJiYp
OwogICAgIHZvaWQgZW5xdWV1ZVNlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyLCBXZWJDb3JlOjpTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50OjpJ
bml0JiYpOwogCkBAIC0xMDEzLDggKzEwMTMsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkcmF3UGFn
ZXNGb3JQcmludGluZyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFByaW50SW5mbyYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpPiYm
KTsKICNlbmRpZgogCi0gICAgdm9pZCBhZGRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZywg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgdm9pZCByZW1vdmVSZXNvdXJj
ZVJlcXVlc3QodW5zaWduZWQgbG9uZyk7CisgICAgdm9pZCBhZGRSZXNvdXJjZVJlcXVlc3QoV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKTsKKyAgICB2b2lkIHJlbW92ZVJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgdm9pZCBzZXRNZWRpYVZvbHVtZShmbG9hdCk7CiAg
ICAgdm9pZCBzZXRNdXRlZChXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNdXRlZFN0YXRlRmxhZ3Ms
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CkBAIC0xODc0LDExICsxODc0LDExIEBAIHBy
aXZhdGU6CiAKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRfdCBpZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIHNjaGVtZSk7CiAKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tX
aWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRf
dCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVj
dGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYp
OwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1
aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0
IElQQzo6RGF0YVJlZmVyZW5jZSYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZENvbXBsZXRl
KHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQ
ZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOworICAgIHZvaWQgdXJsU2NoZW1l
VGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKTsKKyAgICB2b2lk
IHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0Rp
ZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5j
ZSYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAogICAgIHZvaWQgc2V0SXNUYWtp
bmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oYm9vbCk7CiAgICAgdm9pZCBzZXRO
ZWVkc0RPTVdpbmRvd1Jlc2l6ZUV2ZW50KCk7CkBAIC0yMTU4LDcgKzIxNTgsNyBAQCBwcml2YXRl
OgogCiAgICAgdW5zaWduZWQgbV9jYWNoZWRQYWdlQ291bnQgeyAwIH07CiAKLSAgICBIYXNoU2V0
PHVuc2lnbmVkIGxvbmc+IG1fdHJhY2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJZGVudGlmaWVy
czsKKyAgICBIYXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV90cmFj
a2VkTmV0d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzOwogCiAgICAgV2ViQ29yZTo6SW50
U2l6ZSBtX21pbmltdW1TaXplRm9yQXV0b0xheW91dDsKICAgICBXZWJDb3JlOjpJbnRTaXplIG1f
c2l6ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgppbmRleCAwYzU5YzkxMzBl
YTI1YjdiZDYwYjVlODQ1ZmQ1ZTNlNTVkMGNmYTkwLi5jM2MyZGFjYmIxMWI1NDE4ZDJiY2YzN2E2
NGU3NjVjM2JkY2M3ZTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KQEAgLTI3LDcgKzI3LDcgQEAgbWVzc2FnZXMgLT4g
V2ViUGFnZSBMZWdhY3lSZWNlaXZlciB7CiAKICAgICBTZXRCYWNrZ3JvdW5kQ29sb3Ioc3RkOjpv
cHRpb25hbDxXZWJDb3JlOjpDb2xvcj4gY29sb3IpCiAKLSAgICBBZGRDb25zb2xlTWVzc2FnZShX
ZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgZW51bTp1aW50OF90IEpTQzo6TWVzc2Fn
ZVNvdXJjZSBtZXNzYWdlU291cmNlLCBlbnVtOnVpbnQ4X3QgSlNDOjpNZXNzYWdlTGV2ZWwgbWVz
c2FnZUxldmVsLCBTdHJpbmcgbWVzc2FnZSwgdWludDY0X3QgcmVxdWVzdElEKQorICAgIEFkZENv
bnNvbGVNZXNzYWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBlbnVtOnVpbnQ4
X3QgSlNDOjpNZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIGVudW06dWludDhfdCBKU0M6Ok1l
c3NhZ2VMZXZlbCBtZXNzYWdlTGV2ZWwsIFN0cmluZyBtZXNzYWdlLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcmVxdWVzdElEKQogICAgIFNlbmRDU1BWaW9sYXRpb25SZXBvcnQo
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFVSTCByZXBvcnRVUkwsIElQQzo6Rm9y
bURhdGFSZWZlcmVuY2UgcmVwb3J0RGF0YSkKICAgICBFbnF1ZXVlU2VjdXJpdHlQb2xpY3lWaW9s
YXRpb25FdmVudChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgV2ViQ29yZTo6U2Vj
dXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudDo6SW5pdCBldmVudEluaXQpCiAKQEAgLTU1MSwxMSAr
NTUxLDExIEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50OF90IFdl
YktpdDo6U3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlCiAKICAgICBSZWdpc3RlclVSTFNjaGVt
ZUhhbmRsZXIodWludDY0X3QgaWRlbnRpZmllciwgU3RyaW5nIHNjaGVtZSkKIAotICAgIFVSTFNj
aGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCBhY3R1YWxSZXF1ZXN0KSBBc3luYwotICAgIFVSTFNjaGVtZVRh
c2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KQotICAgIFVSTFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQotICAg
IFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIsIElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBk
YXRhKQotICAgIFVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJy
b3IpCisgICAgVVJMU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCBhY3R1YWxSZXF1ZXN0KSBBc3luYworICAgIFVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJl
Y3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkKKyAgICBVUkxT
Y2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCisgICAgVVJMU2NoZW1lVGFza0RpZFJlY2VpdmVE
YXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBk
YXRhKQorICAgIFVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogCiAgICAgU2V0SXNTdXNwZW5kZWQoYm9vbCBz
dXNwZW5kZWQpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCmluZGV4IDM2ZTU3MjUxMjMzN2Q2
MzAwYzIyZThhMzJlMTcxNTE5MDQzYjUwMzcuLmNlOTI2MTc0MWJkYjI4YzA0ZDk3ZDBkNzBlYThl
YWExYzRkYjQxMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcApAQCAtNjMsNyArNjMsNyBA
QCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6c3RhcnROZXdUYXNrKFJlc291cmNlTG9h
ZGVyJiBsb2FkZXIsIFdlYkZyYW1lJiB3ZQogICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnN0
YXJ0TG9hZGluZygpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5
bmNocm9ub3VzbHkoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJh
bWUmIHdlYkZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBk
YXRhKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJhbWUm
IHdlYkZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRh
KQogewogICAgIGRhdGEuc2hyaW5rKDApOwogICAgIGlmICghbV93ZWJQYWdlLnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMgeyBtX2lkZW50aWZpZXIsIGxvYWRJZGVudGlmaWVyLCByZXF1ZXN0
LCB3ZWJGcmFtZS5pbmZvKCkgfSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJv
bm91c1VSTFNjaGVtZVRhc2s6OlJlcGx5KHJlc3BvbnNlLCBlcnJvciwgZGF0YSkpKSB7CkBAIC03
OCw3ICs3OCw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdG9wQWxsVGFza3Mo
KQogICAgICAgICBtX3Rhc2tzLmJlZ2luKCktPnZhbHVlLT5zdG9wTG9hZGluZygpOwogfQogCi12
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGly
ZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3Jt
UmVkaXJlY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAg
YXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2sp
CkBAIC04Nyw3ICs4Nyw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyCiAgICAgdGFzay0+ZGlk
UGVyZm9ybVJlZGlyZWN0aW9uKFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSksIFdURk1vdmUobmV3
UmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBXZWJVUkxT
Y2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJVUkxT
Y2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZp
ZXIpOwogICAgIGlmICghdGFzaykKQEAgLTk2LDcgKzk2LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIGMKICAgICB0YXNrLT5kaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOwogfQogCi12b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRh
c2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCogZGF0YSkKK3ZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWlu
dDhfdCogZGF0YSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZp
ZXIpOwogICAgIGlmICghdGFzaykKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBzaXplXwogICAgIHRhc2stPmRpZFJlY2VpdmVEYXRhKHNpemUsIGRhdGEpOwogfQogCi12b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkQ29tcGxldGUoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAg
ICBpZiAoYXV0byB0YXNrID0gcmVtb3ZlVGFzayh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHRh
c2stPmRpZENvbXBsZXRlKGVycm9yKTsKQEAgLTExNyw3ICsxMTcsNyBAQCB2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNjaGVtZVRhc2tQcm94
eSYgdGFzaykKICAgICByZW1vdmVUYXNrKHRhc2suaWRlbnRpZmllcigpKTsKIH0KIAotUmVmUHRy
PFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpyZW1vdmVU
YXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpCitSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnJlbW92ZVRhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byB0YXNrID0gbV90YXNrcy50YWtl
KGlkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKaW5kZXgg
MDQyZDc5YzZlNmY4NDVkYzFiMDZiMmNhMzM4MDA3MmQ0ODBiYTZmMC4uMDY5NWM0MDc0NzgzZDEx
ZDY2Y2Q1MDA0MTQzY2Q0YWRkMTU3ZDk2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKQEAgLTM5
LDcgKzM5LDYgQEAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwogbmFtZXNwYWNlIFdlYktpdCB7CiAK
IGNsYXNzIFdlYlBhZ2U7Ci10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7
CiAKIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSA6IHB1YmxpYyBSZWZDb3VudGVkPFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gewogcHVibGljOgpAQCAtNTIsMjYgKzUxLDI3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHN0YXJ0TmV3VGFzayhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlciYsIFdl
YkZyYW1lJik7CiAgICAgdm9pZCBzdG9wQWxsVGFza3MoKTsKIAotICAgIHZvaWQgbG9hZFN5bmNo
cm9ub3VzbHkoUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgV2ViRnJhbWUmLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYsIFZlY3Rvcjx1aW50OF90PiYpOworICAgIHZvaWQgbG9hZFN5bmNocm9u
b3VzbHkoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJGcmFtZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgVmVjdG9yPHVpbnQ4X3Q+Jik7CiAKICAgICB1aW50NjRf
dCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgV2ViUGFn
ZSYgcGFnZSgpIHsgcmV0dXJuIG1fd2ViUGFnZTsgfQogCi0gICAgdm9pZCB0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVj
ZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7Ci0gICAgdm9pZCB0YXNr
RGlkQ29tcGxldGUodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKTsKKyAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB0YXNrRGlkUmVjZWl2ZVJlc3BvbnNl
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsKKyAgICB2
b2lkIHRhc2tEaWRDb21wbGV0ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKICAgICB2b2lkIHRhc2tEaWRTdG9wTG9hZGlu
ZyhXZWJVUkxTY2hlbWVUYXNrUHJveHkmKTsKIAogcHJpdmF0ZToKICAgICBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHkoV2ViUGFnZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpOwogCi0gICAgUmVmUHRy
PFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFzayh1aW50NjRfdCBpZGVudGlmaWVyKTsK
KyAgICBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiByZW1vdmVUYXNrKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBXZWJQYWdlJiBtX3dlYlBhZ2U7CisgICAg
Ly8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGEgc3Ryb25nbHkgdHlwZWQgaWRlbnRpZmllci4KICAg
ICB1aW50NjRfdCBtX2lkZW50aWZpZXIgeyAwIH07CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBS
ZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pj4gbV90YXNrczsKKyAgICBIYXNoTWFwPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94
eT4+IG1fdGFza3M7CiB9OyAvLyBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcAppbmRleCA3NTc5OWEwYzY1ZDBj
ZGFmZGU2ZjI2NWIxYzU0NzU2Yjg0YTIwOWQ5Li5jOGM0YWY3ZWJkOGYxMWNmNmM4Y2E3YWU3ZTA3
YTAzYjRkNTk0NTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAKQEAgLTM5LDggKzM5LDggQEAKICNp
bmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRp
b25IYW5kbGVyLmg+CiAKLSNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9H
X1NUQU5EQVJEX1RFTVBMQVRFICJbc2NoZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCB0YXNrSUQ9JWx1XSBXZWJVUkxTY2hl
bWVUYXNrUHJveHk6OiIKLSNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9H
X1NUQU5EQVJEX1BBUkFNRVRFUlMgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgcGFn
ZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBmcmFtZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBt
X2lkZW50aWZpZXIKKyNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NU
QU5EQVJEX1RFTVBMQVRFICJbc2NoZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCB0YXNrSUQ9JSIgUFJJdTY0ICJdIFdlYlVS
TFNjaGVtZVRhc2tQcm94eTo6IgorI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFT
RV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigp
LCBwYWdlSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFt
ZSksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9Y
WV9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgV0VCVVJMU0NIRU1F
VEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCVVJMU0NIRU1F
VEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMsICMjX19WQV9BUkdTX18p
CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAppbmRleCBiNWUzMzRkZmMyMzM2
NDhlYzU3ZThmNjE2M2RjMTVmYWI1NmY2YzVjLi45M2Q5YTQ5YjVhNzBkMmUwYjEzZmY2OGNhYmZi
NWVlMDQ3YTU1ZWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaApAQCAtNTcsNyArNTcsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShzaXplX3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwog
ICAgIHZvaWQgZGlkQ29tcGxldGUoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOwogCi0g
ICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVy
OyB9CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBj
b25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogcHJpdmF0ZToKICAgICBXZWJVUkxTY2hl
bWVUYXNrUHJveHkoV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5JiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXImLCBXZWJGcmFtZSYpOwpAQCAtNzAsNyArNzAsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0
cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4gbV9jb3JlTG9hZGVyOwogICAgIFJlZlB0cjxXZWJG
cmFtZT4gbV9mcmFtZTsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgbV9yZXF1ZXN0Owot
ICAgIHVuc2lnbmVkIGxvbmcgbV9pZGVudGlmaWVyOworICAgIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb21wbGV0
aW9uSGFuZGxlciB7IGZhbHNlIH07CiAgICAgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4gbV9xdWV1
ZWRUYXNrczsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBw
b3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dl
YkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKaW5kZXggN2RjZmUwYjg3
OWNhODU0NTY5NjgzN2VlYzdjYTg5MGY5OThhOTkxZS4uMWU0ZDI5YzBlNDFmNzg2YzY1ZDQzMWYz
NzFiMjZjNDc1MDQ5NWQwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3Jl
U3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcApAQCAtMTA3
LDcgKzEwNyw3IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3VyY2Uo
RnJhbWUmIGZyYW1lLCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyCiAgICAgfSk7CiB9CiAKLXZvaWQg
V2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1l
TG9hZGVyJiBmcmFtZUxvYWRlciwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmIG9w
dGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKK3ZvaWQgV2ViUmVz
b3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVy
JiBmcmFtZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9u
cyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1hcCYsIFJlc291cmNlRXJyb3ImIGVycm9yLCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewogICAg
IGF1dG8qIGRvY3VtZW50ID0gZnJhbWVMb2FkZXIuZnJhbWUoKS5kb2N1bWVudCgpOwogICAgIGF1
dG8qIHNvdXJjZU9yaWdpbiA9IGRvY3VtZW50ID8gJmRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigp
IDogbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBv
cnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNv
cmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oCmluZGV4IDE2MThiNjdhMWZmNmQ2
MmY4MTE0MjdlOTZjOTllOTM5NmE5YjBhMGIuLmU1OTU1MGZiYmJhMGY2ZGMzNGNjMzNkNTEwZTg5
ZTZlMzQ5OGRhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBv
cnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9X
ZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuaApAQCAtNDUsNyArNDUsNyBA
QCBwdWJsaWM6CiAgICAgV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyKCk7CiAKICAgICB2b2lkIGxv
YWRSZXNvdXJjZShXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlJiwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9hZGVyT3B0
aW9ucyYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OlN1YnJlc291cmNl
TG9hZGVyPiYmKT4mJikgZmluYWw7Ci0gICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5
KFdlYkNvcmU6OkZyYW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZywgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgV2Vi
Q29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVp
bnQ4X3Q+JikgZmluYWw7CisgICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdlYkNv
cmU6OkZyYW1lTG9hZGVyJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9s
aWN5LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVh
ZGVyTWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmLCBWZWN0b3I8dWludDhfdD4mKSBmaW5hbDsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxldGVk
KFdlYkNvcmU6OlBhZ2UmKSBmaW5hbDsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQo
V2ViQ29yZTo6RnJhbWUmKSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXgg
M2MyNDgxMzFlNWRiODE5YWMyM2I2ZjE4ZjI4ZjliYjEyMWY0YmJjMy4uZTNmNWY5YzlmMGZmZDhh
ZWUyZGJmMGU3ODMyMTZiYzNjMGE3NTVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCkBA
IC04MiwyOCArODIsMjggQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJj
ZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFs
OwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0
aWFsUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAK
LSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5hbDsK
LSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
JikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICBi
b29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3Rl
Y3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAj
ZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5n
dGgpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3Ro
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExv
YWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpIGZpbmFsOwogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKICAgICB2b2lkIGRp
c3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBm
aW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgdm9pZCB3aWxs
Q2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlND
YWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2FjaGVS
ZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
TlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CiAKICAgICB2b2lkIGRpc3Bh
dGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBmaW5hbDsKICAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50Lm1tCmluZGV4IGZiYWVhOGVhNjg2OGRhODEyNGMwMTEyYjUwYjJjZDQ1
NWU3MTVmNjguLjcxYTcxNWIzN2ZhNWU2YzVmNzQ0NGUyMzdjODJkMTU5Y2UwODhhZDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCkBAIC0zMzYsNyArMzM2LDcgQEAgYm9vbCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoV2Vi
Q29yZTo6RG9jdW0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3Np
Z25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlZpZXcgKndlYlZp
ZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdh
dGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3Vy
Y2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC0zNTYsNyArMzU2LDcg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICBbd2ViVmlldyBfYWRkT2JqZWN0Om9iamVj
dC5nZXQoKSBmb3JJZGVudGlmaWVyOmlkZW50aWZpZXJdOwogfQogCi12b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RS
ZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1
ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCiB7
CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAg
ICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9u
cyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3
KTsKQEAgLTM4Niw3ICszODYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZAogICAgICAgICBy
ZXF1ZXN0LnVwZGF0ZUZyb21EZWxlZ2F0ZVByZXNlcnZpbmdPbGRQcm9wZXJ0aWVzKFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdChuZXdVUkxSZXF1ZXN0KSk7CiB9CiAKLWJvb2wgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK2Jvb2wgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkp
OwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRh
dGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2Vi
Vmlldyk7CkBAIC0zOTksNyArMzk5LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hv
dWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGwKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2UpCiB7
CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAg
ICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9u
cyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3
KTsKQEAgLTQyMCw3ICs0MjAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEbwogfQogCiAjaWYg
VVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLWJvb2wgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKK2Jvb2wgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNw
YWNlKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0
KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1l
bnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMo
d2ViVmlldyk7CkBAIC00NDEsNyArNDQxLDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWUKICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLVJldGFpblB0cjxDRkRpY3Rpb25hcnlS
ZWY+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitSZXRhaW5Q
dHI8Q0ZEaWN0aW9uYXJ5UmVmPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlvblByb3Bl
cnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdl
dFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgaWQgcmVzb3VyY2UgPSBbd2ViVmlldyBf
b2JqZWN0Rm9ySWRlbnRpZmllcjppZGVudGlmaWVyXTsKQEAgLTQ2OCw3ICs0NjgsNyBAQCBib29s
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFVSTCYg
aW1hZ2VVUkwpIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9
IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUlt
cGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxv
YWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTQ4Niw3ICs0ODYsNyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciogbAogICAgIH0KIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6d2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25zZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRp
b25IYW5kbGVyKSBjb25zdAordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVz
cG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXco
bV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9u
Q2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUlt
cGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTUwNiw3ICs1MDYsNyBAQCB2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciog
bG9hZGVyLCB1bgogICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3BvbnNlKTsKIH0KIAotdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGlu
dCBkYXRhTGVuZ3RoKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpCiB7
CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAg
ICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9u
cyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3
KTsKQEAgLTUyOCw3ICs1MjgsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqKQogfQogI2VuZGlmCiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5n
ZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxl
bWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9u
cyh3ZWJWaWV3KTsKQEAgLTU1MCw3ICs1NTAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYQog
ICAgIHN0YXRpY19jYXN0PFdlYkRvY3VtZW50TG9hZGVyTWFjKj4obG9hZGVyKS0+ZGVjcmVhc2VM
b2FkQ291bnQoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBlcnJv
cikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yKQog
ewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwog
ICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlv
bnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmll
dyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLmgKaW5kZXggZTgwMzE0YjJhMDg5NDg0YTRhMmU0OWU2MDk3NGZlNjA5N2Ix
Zjc4ZS4uNjAyZmJjMjBmNWUyZjAwMmZiYmU4OGFiZTVkYmZhMjZiNTAwNTU0NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5o
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJN
YWMuaApAQCAtMjcsNiArMjcsNyBAQAogICovCiAKICNpbXBvcnQgPFdlYkNvcmUvRG9jdW1lbnRM
b2FkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAj
aW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAjaW1wb3J0IDx3dGYvSGFzaFNldC5oPgogCkBAIC00
OCw4ICs0OSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGRldGFjaERhdGFTb3VyY2UoKTsKICAgICBX
ZWJEYXRhU291cmNlICpkYXRhU291cmNlKCkgY29uc3Q7CiAKLSAgICB2b2lkIGluY3JlYXNlTG9h
ZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7Ci0gICAgdm9pZCBkZWNyZWFzZUxvYWRD
b3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgaW5jcmVhc2VMb2FkQ291
bnQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRlY3JlYXNl
TG9hZENvdW50KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKIHByaXZhdGU6
CiAgICAgV2ViRG9jdW1lbnRMb2FkZXJNYWMoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKTsKQEAgLTY0LDUgKzY1LDUgQEAgcHJp
dmF0ZToKICAgICBib29sIG1faXNEYXRhU291cmNlUmV0YWluZWQ7CiAgICAgUmV0YWluUHRyPGlk
PiBtX3Jlc291cmNlTG9hZERlbGVnYXRlOwogICAgIFJldGFpblB0cjxpZD4gbV9kb3dubG9hZERl
bGVnYXRlOwotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV9sb2FkaW5nUmVzb3VyY2VzOwor
ICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtX2xvYWRpbmdS
ZXNvdXJjZXM7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJEb2N1bWVudExvYWRlck1hYy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMubW0KaW5kZXggZDJlYmNiMDAxZGY2YTdlNzQwNTI2NzM5
MzZlOTc1NzMzMjEwYmM3MC4uNTFiM2RjZWQzMWFiMTMxMTI1OTgxOTc5OGMyZmNiZGIwOWM0NTRk
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVu
dExvYWRlck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRv
Y3VtZW50TG9hZGVyTWFjLm1tCkBAIC05Miw3ICs5Miw3IEBAIHZvaWQgV2ViRG9jdW1lbnRMb2Fk
ZXJNYWM6OmRldGFjaEZyb21GcmFtZSgpCiAgICAgLy8gZnJhbWUgaXMgbm90IGF0dGFjaGVkPwog
fQogCi12b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjppbmNyZWFzZUxvYWRDb3VudCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjppbmNyZWFzZUxv
YWRDb3VudChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsK
ICAgICBBU1NFUlQobV9kYXRhU291cmNlKTsKIApAQCAtMTAzLDkgKzEwMyw5IEBAIHZvaWQgV2Vi
RG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllcikKICAgICByZXRhaW5EYXRhU291cmNlKCk7CiB9CiAKLXZvaWQgV2ViRG9jdW1lbnRMb2Fk
ZXJNYWM6OmRlY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQg
V2ViRG9jdW1lbnRMb2FkZXJNYWM6OmRlY3JlYXNlTG9hZENvdW50KFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9u
Zz46Oml0ZXJhdG9yIGl0ID0gbV9sb2FkaW5nUmVzb3VyY2VzLmZpbmQoaWRlbnRpZmllcik7Cisg
ICAgYXV0byBpdCA9IG1fbG9hZGluZ1Jlc291cmNlcy5maW5kKGlkZW50aWZpZXIpOwogICAgIAog
ICAgIC8vIEl0IGlzIHZhbGlkIGZvciBhIGxvYWQgdG8gYmUgY2FuY2VsbGVkIGJlZm9yZSBpdCdz
IHN0YXJ0ZWQuCiAgICAgaWYgKGl0ID09IG1fbG9hZGluZ1Jlc291cmNlcy5lbmQoKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRlcm5hbC5oCmluZGV4
IGUxZmRkNDAwZjFiZTc1ZjdkOTUxNzBlNjc0MDNkNDRlZmMxNGRhZjUuLmE0N2RhMmNmNGQ3NDk0
OTYwZjVjNTA4ZjIyYjdmMTUwYTI3ZDhkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaApAQCAtNDIsNiArNDIsNyBAQAogI2ltcG9y
dCA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvTGF5
b3V0TWlsZXN0b25lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BsYXliYWNrVGFyZ2V0Q2xpZW50Q29u
dGV4dElkZW50aWZpZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oPgogI2lt
cG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRp
Y2F0b3JXaW5kb3cuaD4KQEAgLTI1MCw5ICsyNTEsMTEgQEAgV2ViTGF5b3V0TWlsZXN0b25lcyBr
aXRMYXlvdXRNaWxlc3RvbmVzKE9wdGlvblNldDxXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmU+KTsK
IC0gKHZvaWQpcmVtb3ZlUGx1Z2luSW5zdGFuY2VWaWV3c0ZvcjooV2ViRnJhbWUqKXdlYkZyYW1l
OwogI2VuZGlmCiAKLS0gKHZvaWQpX2FkZE9iamVjdDooaWQpb2JqZWN0IGZvcklkZW50aWZpZXI6
KHVuc2lnbmVkIGxvbmcpaWRlbnRpZmllcjsKLS0gKGlkKV9vYmplY3RGb3JJZGVudGlmaWVyOih1
bnNpZ25lZCBsb25nKWlkZW50aWZpZXI7Ci0tICh2b2lkKV9yZW1vdmVPYmplY3RGb3JJZGVudGlm
aWVyOih1bnNpZ25lZCBsb25nKWlkZW50aWZpZXI7CisjaWZkZWYgX19jcGx1c3BsdXMKKy0gKHZv
aWQpX2FkZE9iamVjdDooaWQpb2JqZWN0IGZvcklkZW50aWZpZXI6KFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcilpZGVudGlmaWVyOworLSAoaWQpX29iamVjdEZvcklkZW50aWZpZXI6
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcilpZGVudGlmaWVyOworLSAodm9pZClf
cmVtb3ZlT2JqZWN0Rm9ySWRlbnRpZmllcjooV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyKWlkZW50aWZpZXI7CisjZW5kaWYKIAogLSAodm9pZClfc2V0Wm9vbU11bHRpcGxpZXI6KGZs
b2F0KW11bHRpcGxpZXIgaXNUZXh0T25seTooQk9PTClpc1RleHRPbmx5OwogLSAoZmxvYXQpX3pv
b21NdWx0aXBsaWVyOihCT09MKWlzVGV4dE9ubHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5j
cHAKaW5kZXggMjg5NTNkNmY2ZGI0M2ExYjM2NjQyOTJkMzY3ZTZiN2UwNmMwNjQ4YS4uNTg4OTky
ZDRhYWZlNWZjODM5YjY1NGRjZWRhODkyZGQ3MDM1ODIzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmNwcApAQCAtMTc3LDcgKzE3Nyw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVyCiAg
ICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgV2ViVmlldyogd2ViVmll
dyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERl
bGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAgLTE4NSwxMCArMTg1LDEwIEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVu
c2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgICAgIHJldHVybjsKIAogICAgIENPTVB0cjxXZWJNdXRh
YmxlVVJMUmVxdWVzdD4gd2ViVVJMUmVxdWVzdChBZG9wdENPTSwgV2ViTXV0YWJsZVVSTFJlcXVl
c3Q6OmNyZWF0ZUluc3RhbmNlKHJlcXVlc3QpKTsKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+
aWRlbnRpZmllckZvckluaXRpYWxSZXF1ZXN0KHdlYlZpZXcsIHdlYlVSTFJlcXVlc3QuZ2V0KCks
IGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgaWRlbnRpZmllcik7CisgICAgcmVzb3VyY2VMb2Fk
RGVsZWdhdGUtPmlkZW50aWZpZXJGb3JJbml0aWFsUmVxdWVzdCh3ZWJWaWV3LCB3ZWJVUkxSZXF1
ZXN0LmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksIGlkZW50aWZpZXIudG9VSW50NjQo
KSk7CiB9CiAKLWJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikK
K2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAg
Q09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBA
IC0yMDAsMTMgKzIwMCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bgogICAgICAgICByZXR1
cm4gdHJ1ZTsKIAogICAgIEJPT0wgc2hvdWxkVXNlOwotICAgIGlmIChTVUNDRUVERUQocmVzb3Vy
Y2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSh3ZWJWaWV3
LCBpZGVudGlmaWVyLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZzaG91bGRVc2UpKSkKKyAg
ICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBnZXRXZWJEYXRh
U291cmNlKGxvYWRlciksICZzaG91bGRVc2UpKSkKICAgICAgICAgcmV0dXJuIHNob3VsZFVzZTsK
IAogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciogbG9h
ZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlJiBjaGFsbGVuZ2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJl
Y2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UmIGNoYWxsZW5nZSkKIHsKICAgICBBU1NFUlQoY2hhbGxlbmdlLmF1dGhlbnRpY2F0aW9u
Q2xpZW50KCkpOwogCkBAIC0yMTQsNyArMjE0LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2EK
ICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0
ZTsKICAgICBpZiAoU1VDQ0VFREVEKHdlYlZpZXctPnJlc291cmNlTG9hZERlbGVnYXRlKCZyZXNv
dXJjZUxvYWREZWxlZ2F0ZSkpKSB7CiAgICAgICAgIENPTVB0cjxXZWJVUkxBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZT4gd2ViQ2hhbGxlbmdlKEFkb3B0Q09NLCBXZWJVUkxBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZTo6Y3JlYXRlSW5zdGFuY2UoY2hhbGxlbmdlKSk7Ci0gICAgICAgIGlmIChTVUNDRUVE
RUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJDaGFsbGVuZ2UuZ2V0KCksIGdldFdlYkRhdGFTb3Vy
Y2UobG9hZGVyKSkpKQorICAgICAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVnYXRl
LT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uod2ViVmlldywgaWRlbnRpZmllci50
b1VJbnQ2NCgpLCB3ZWJDaGFsbGVuZ2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSkp
KQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMjIzLDcgKzIyMyw3IEBAIHZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlKERvY3VtZW50TG9hCiAgICAgY2hhbGxlbmdlLmF1dGhlbnRpY2F0aW9uQ2xpZW50KCkt
PnJlY2VpdmVkUmVxdWVzdFRvQ29udGludWVXaXRob3V0Q3JlZGVudGlhbChjaGFsbGVuZ2UpOwog
fQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChE
b2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25z
ZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGly
ZWN0UmVzcG9uc2UpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZp
ZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWRE
ZWxlZ2F0ZTsKQEAgLTIzNCw3ICsyMzQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZwogICAg
IENPTVB0cjxXZWJVUkxSZXNwb25zZT4gd2ViVVJMUmVkaXJlY3RSZXNwb25zZShBZG9wdENPTSwg
V2ViVVJMUmVzcG9uc2U6OmNyZWF0ZUluc3RhbmNlKHJlZGlyZWN0UmVzcG9uc2UpKTsKIAogICAg
IENPTVB0cjxJV2ViVVJMUmVxdWVzdD4gbmV3V2ViVVJMUmVxdWVzdDsKLSAgICBpZiAoRkFJTEVE
KHJlc291cmNlTG9hZERlbGVnYXRlLT53aWxsU2VuZFJlcXVlc3Qod2ViVmlldywgaWRlbnRpZmll
ciwgd2ViVVJMUmVxdWVzdC5nZXQoKSwgd2ViVVJMUmVkaXJlY3RSZXNwb25zZS5nZXQoKSwgZ2V0
V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmbmV3V2ViVVJMUmVxdWVzdCkpKQorICAgIGlmIChGQUlM
RUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPndpbGxTZW5kUmVxdWVzdCh3ZWJWaWV3LCBpZGVudGlm
aWVyLnRvVUludDY0KCksIHdlYlVSTFJlcXVlc3QuZ2V0KCksIHdlYlVSTFJlZGlyZWN0UmVzcG9u
c2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJm5ld1dlYlVSTFJlcXVlc3QpKSkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHdlYlVSTFJlcXVlc3QgPT0gbmV3V2ViVVJMUmVx
dWVzdCkKQEAgLTI1Miw3ICsyNTIsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZwogICAgIHJl
cXVlc3QgPSBuZXdXZWJVUkxSZXF1ZXN0SW1wbC0+cmVzb3VyY2VSZXF1ZXN0KCk7CiB9CiAKLXZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBD
T01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAg
LTI2MCwzMCArMjYwLDMwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
UmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgICAgIHJldHVy
bjsKIAogICAgIENPTVB0cjxXZWJVUkxSZXNwb25zZT4gd2ViVVJMUmVzcG9uc2UoQWRvcHRDT00s
IFdlYlVSTFJlc3BvbnNlOjpjcmVhdGVJbnN0YW5jZShyZXNwb25zZSkpOwotICAgIHJlc291cmNl
TG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlUmVzcG9uc2Uod2ViVmlldywgaWRlbnRpZmllciwgd2Vi
VVJMUmVzcG9uc2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3Vy
Y2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVSZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRv
VUludDY0KCksIHdlYlVSTFJlc3BvbnNlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikp
OwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250
ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgaW50IGxlbmd0aCkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBsZW5ndGgpCiB7CiAgICAgV2ViVmlldyogd2ViVmll
dyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERl
bGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKICAgICBpZiAoRkFJTEVEKHdlYlZpZXctPnJl
c291cmNlTG9hZERlbGVnYXRlKCZyZXNvdXJjZUxvYWREZWxlZ2F0ZSkpKQogICAgICAgICByZXR1
cm47CiAKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
d2ViVmlldywgaWRlbnRpZmllciwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOwor
ICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlQ29udGVudExlbmd0aCh3ZWJWaWV3
LCBpZGVudGlmaWVyLnRvVUludDY0KCksIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIp
KTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsK
ICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0
cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAgIGlm
IChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVn
YXRlKSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRG
aW5pc2hMb2FkaW5nRnJvbURhdGFTb3VyY2Uod2ViVmlldywgaWRlbnRpZmllciwgZ2V0V2ViRGF0
YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkRmluaXNoTG9h
ZGluZ0Zyb21EYXRhU291cmNlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgZ2V0V2Vi
RGF0YVNvdXJjZShsb2FkZXIpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVy
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXco
KTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxl
Z2F0ZTsKQEAgLTI5MSwxMSArMjkxLDExIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAg
ICAgIHJldHVybjsKIAogICAgIENPTVB0cjxXZWJFcnJvcj4gd2ViRXJyb3IoQWRvcHRDT00sIFdl
YkVycm9yOjpjcmVhdGVJbnN0YW5jZShlcnJvcikpOwotICAgIHJlc291cmNlTG9hZERlbGVnYXRl
LT5kaWRGYWlsTG9hZGluZ1dpdGhFcnJvcih3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJFcnJvci5n
ZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0
ZS0+ZGlkRmFpbExvYWRpbmdXaXRoRXJyb3Iod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgp
LCB3ZWJFcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKIH0KIAogI2lmIFVT
RShDRlVSTENPTk5FQ1RJT04pCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRDYWNo
ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVuc2lnbmVkIGNoYXIq
IGRhdGEsIGNvbnN0IHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpCitib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgY29uc3QgdW5zaWduZWQgbG9u
ZyBsb25nIGxlbmd0aCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2Vi
VmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9h
ZERlbGVnYXRlOwpAQCAtMzA4LDcgKzMwOCw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQKIAog
ICAgIENPTVB0cjxJV2ViVVJMUmVzcG9uc2U+IHVybFJlc3BvbnNlKEFkb3B0Q09NLCBXZWJVUkxS
ZXNwb25zZTo6Y3JlYXRlSW5zdGFuY2UocmVzcG9uc2UpKTsKICAgICBCT09MIHNob3VsZENhY2hl
OwotICAgIGlmIChTVUNDRUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRD
YWNoZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIHVybFJlc3BvbnNlLmdldCgpLCBkYXRh
LCBsZW5ndGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJnNob3VsZENhY2hlKSkpCisgICAg
aWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZENhY2hlUmVz
cG9uc2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB1cmxSZXNwb25zZS5nZXQoKSwg
ZGF0YSwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZzaG91bGRDYWNoZSkpKQog
ICAgICAgICByZXR1cm4gc2hvdWxkQ2FjaGU7CiAKICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oCmluZGV4IGViN2YyMzNjZjRmMmQ0M2RlMTc3NmUyYjBkMzYyZmFjMmRl
YWQ0NDAuLjc4MDc3ZTA2OTMxZGM1MTk2OTg1N2FhNGUyMmY2ZDNkZGFlYzQ0MDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuaApAQCAtNjAsMTcgKzYwLDE3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKIAogICAgIHZvaWQgY29udmVydE1haW5S
ZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IG92ZXJyaWRlOwotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVD
b250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZp
bmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRv
SW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOworCisg
ICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7
CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
YWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogI2lmIFVTRShD
RlVSTENPTk5FQ1RJT04pCi0gICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9u
ZyBsb25nIGxlbmd0aCkgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5z
aWduZWQgbG9uZyBsb25nIGxlbmd0aCkgb3ZlcnJpZGU7CiAjZW5kaWYKIAogICAgIHZvaWQgZGlz
cGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIG92ZXJyaWRlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438489</attachid>
            <date>2021-09-17 11:18:22 -0700</date>
            <delta_ts>2021-09-17 12:39:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210917111818.patch</filename>
            <type>text/plain</type>
            <size>6213643</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNjU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2NhY2VhZjU3ZWJiMDVk
ODRkOGIwOWY1OTZjOGIzM2EzNmZiN2IxMy4uYWJlMDc0NThhNDg3NjU5YjUwZGZmZTAxYTk4NGFi
OGFhOTEwOWM2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNyAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
TWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVy
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJM
b2FkZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRS
ZXF1ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRp
b25zRGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVy
Y2VwdFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAg
ICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNl
aXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dl
YkNvbnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0
aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToK
KyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6Cisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
b25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxl
bWVudFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9u
YWxMb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50
ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5oOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxv
YWRlci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3Jl
OjpMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9M
b2FkZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29p
bmdMb2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9Q
aW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xv
YWQpOgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJD
b3JlOjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBs
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5v
dGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29u
c3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmRE
YXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVu
dDo6ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJD
bGllbnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFi
bGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DYW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJl
YWRCcmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
ciBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291
cmNlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRl
ZC4KKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1M
SHR0cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIE1vdmUgbm9uLXRyYXZlcnNhbCBm
dW5jdGlvbnMgZnJvbSBpdGVyYXRvciB0byB0aGUgZGVyZWZlcmVuY2VkIHR5cGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggNzI5NmI1M2E1ZGEyM2E3OGE0MGQ3ZWE0YzRmYTRmMWEzN2M2MTI0ZS4uYzAzYWUwNzNhMDdm
OWJiZmI4ODc2NGI3YmU4NjkyOGJjYmZjOGEyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNzMgQEAK
KzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JS
ZWZlcmVuY2VzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9hZFBpbmcpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJl
Y29ubmVjdFRvKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OmlzUmVzb3VyY2VMb2FkRmluaXNoZWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6c3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmdldE5l
dHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0
aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRh
a2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjphZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmFkZE5ldHdvcmtM
b2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVzb3VyY2VOZXR3b3JrQWN0
aXZpdHlUcmFja2VyOjpSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjp0YWtlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmNvbnRh
aW5zIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNm
ZXJUb05ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0Ojplc2NhcGVJREZvckpTT04pOgor
ICAgICAgICAoV2ViS2l0Ojpsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0Ojpsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbik6CisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3
YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRh
c2s6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oOgorICAgICAg
ICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxv
YWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3Vy
Y2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50Ojpk
aWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKToK
KyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmFp
bExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJj
ZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAoQVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAgICAg
ICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2Vu
ZFJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJl
c291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UpOgorICAgICAg
ICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlk
RmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZSk6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0
aW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1
bGVMb2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9h
ZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
OjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3Vy
Y2VMb2Fkcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxv
YWRJZGVudGlmaWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyBjb25zdCk6CisgICAgICAgIChXZWJL
aXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNw
b25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6
Y29udGludWVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQgY29uc3QpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZp
ZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1
dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRIMlBpbmcpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmFkZENvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkUmVzb3Vy
Y2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1
ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3Jt
UmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1l
VGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KToK
KyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViVVJMU2NoZW1lVGFza1Byb3h5OjppZGVudGlmaWVyIGNvbnN0KToKKwogMjAyMS0wOS0xNyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dU
S11bYTExeV0gQWRkIGEgYnVpbGQgb3B0aW9uIHRvIGVuYWJsZSBBVFNQSQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5n
ZUxvZwppbmRleCAzM2YxMDljZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNiOWI4ZDEzLi45MjY5
YzAxNjUzYmQzOTA1ZWZhMDk4OTU2ZmM0YmYyOGJmNjEyMGRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA5LTE3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFJl
c291cmNlTG9hZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6Cisg
ICAgICAgIChXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5o
OgorCiAyMDIxLTA5LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IG9yaWdpbiBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJhbWUtb3JpZ2lu
KSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGUz
YjQ5M2ZkYTg3OGE3OWRhY2NiZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmE0ZThkNzFlMDhhZmFmNmUx
ZTdlMzVjZmYxYTJjMDAwODExZTczNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyOSBAQAorMjAyMS0wOS0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJj
ZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAg
ICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAgICAqIFdl
YlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLm1tOgorICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNl
TG9hZENvdW50KToKKyAgICAgICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRD
b3VudCk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAyMS0wOS0x
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJkZW5pbmdd
IFZhbGlkYXRlIElEQlZhbHVlJ3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1dE9yQWRk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRleCA4NmYyMGMyYmZjNmY3NjY3NzE3ZTg2
YTU5NDdmZTJmNmQzZWMzMGFjLi4wOWQzYThjMjg1ZDM4ZTdkMGY1YzcwM2IyOWFhMzJjMGExNWQw
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEt
MDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Up
OgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZl
Q29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOgorCiAyMDIxLTA5LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hhcmRlbmluZ10gVmFsaWRhdGUgSURCVmFsdWUncyBibG9iIHBhdGhzIGluIFdl
YklEQlNlcnZlcjo6cHV0T3JBZGQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzI5OTNhMWJjMTgz
MmZlYzJjZTRjM2IyNzU5NTczOTJiNzMxNTE3NC4uYmVmOTgzNmE2MDE0ODk3YmEwZjI4YmE2YzNl
YTU3OGE2ZDRjZjEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC04NDQsNiArODQ0LDcgQEAgc2V0
KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGxvYWRlci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkVGltaW5nLmgKICAgICBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaAorICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aAogICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaAogICAgIGxvYWRlci9SZXNvdXJj
ZUxvYWRlclR5cGVzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCmluZGV4IDg2ZjUz
NDdmZDkxMzNkYzBlYWIzNWJkZWVjMzZlNmIzOTBiOWYyZTcuLjZjYmQxZjQ5M2Q0ODA3YzUzMmMy
ODEzZWZlMTdmYzkwMTU5NWY3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuY3BwCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
RmV0Y2hMb2FkZXI6OnN0YXJ0U3RyZWFtaW5nKCkKICAgICByZXR1cm4gZmlyc3RDaHVuazsKIH0K
IAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3Bv
bnNlKTsKIH0KQEAgLTE1Niw3ICsxNTYsNyBAQCB2b2lkIEZldGNoTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShjb25zdCB1aW50OF90KiB2YWx1ZSwgaW50IHNpemUpCiAgICAgbV9jb25zdW1lci0+YXBw
ZW5kKHZhbHVlLCBzaXplKTsKIH0KIAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9jbGllbnQuZGlkU3VjY2VlZCgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCmluZGV4IGYzMTRhMDVm
Y2ZhYzYxN2MzY2JkMzJiYTkwM2Y3Y2YyMDFiOWZlNDUuLjQwNzI4ZDI1N2U4NDNjNDExNDg2ZmQ2
ZTQzODA3MDQ0MzFhY2ZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
TG9hZGVyLmgKQEAgLTU3LDkgKzU3LDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQgQVBJLgotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
LCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBm
aW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGM3NTg0MzA2MTc3ZDg2NWI0OWUxOWI3ZTAzOWRlZGY1MDBmMTNkNmQu
LjUzZmU4OTk1ZDdjODM4MTkyNDRmZmFhYjg0NmU2MWRlN2M3MDJlZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwMTEsNiAr
MjAxMSw3IEBACiAJCTVCMzA2OTVFMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjMwNjk1
QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oICovOyB9OwogCQk1QjQ2NjU2
MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTVGMjVEMTRDMDkw
MDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVCNDY2NTY0MjVEMTRDMEEwMDBDRkUx
NCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNu
YXBBbmltYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUMxQjFEM0YyNkYzOTc4MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUMxQjFEM0QyNkYzOTc3RjAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVDMkIxQUVD
MjIzOTdFQkMwMEI5MUNGNyAvKiBSZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovOyB9OwogCQk1QzQzMDRCMTE5MUFDOTA4
MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNo
YWRlclRleHR1cmVMT0QuaCAqLzsgfTsKIAkJNUM0MzA0QjYxOTFBRUY0NjAwMEUyQkMwIC8qIEpT
RVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVy
ZUxPRC5oICovOyB9OwpAQCAtOTc1Nyw2ICs5NzU4LDcgQEAKIAkJNUMxQjFEMjQyNkYxNUIxQTAw
ODgyREEyIC8qIFNoYXJlZFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaGFyZWRXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjUy
NkYxODhEODAwODgyREEyIC8qIFdvcmtlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdvcmtlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzFC
MUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAxMjU3NzE5ODkw
MEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcmlhbGl6ZWRORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyRUJF
MDMyNTc3MUE0QzAwRDU1QjA1IC8qIFNlcmlhbGl6ZWRORkEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFCeXRlY29kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjc3MzgsNiArMjc3NDAsNyBAQAogCQkJCTdDMkZBNjEwMUVB
OTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLywKIAkJCQk5
M0UyMjdERTBBRjU4OUFEMDBENDgzMjQgLyogUmVzb3VyY2VMb2FkZXIuY3BwICovLAogCQkJCTY1
NkQzNzI3MEFEQkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCTVDMUIx
RDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLywKIAkJ
CQlEMEEzQTczMDE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggKi8s
CiAJCQkJNTFBRjUwMzUxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAq
LywKIAkJCQk1MUVFN0IzOTFBQTUxMjMxMDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAg
Ki8sCkBAIC0zMzEzMiw3ICszMzEzNSw2IEBACiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQx
IC8qIEpTRE9NV2luZG93QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NC
NjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQk0NjBD
QkYzNjFENEJDRDBFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmggaW4gSGVhZGVy
cyAqLywKLQkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVz
Y3JpcHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk2NUUwRTk0NDExMzNDODlGMDBCNENC
MTAgLyogSlNET01XcmFwcGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3QzQ1QzlEMzFFM0ZDQkQ3
MDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzQTgw
NjFFMUUwM0I1ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLywKQEAg
LTM0Njg5LDYgKzM0NjkxLDcgQEAKIAkJCQk1MTRDNzY3QTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVz
b3VyY2VIYW5kbGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3NjdCMENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
NTZEMzczRjBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTVDMUIxRDNGMjZGMzk3ODAwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUQwQTNBNzMxMTQwNUEzOTgwMEZCOEVEMyAvKiBSZXNv
dXJjZUxvYWRlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxQUY1MDM2MTZGMTAwRjYw
MDk1QjJFOCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUVF
N0IzODFBQTUwQjA1MDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5oIGluIEhlYWRlcnMgKi8s
CkBAIC0zNDc0Miw2ICszNDc0NSw3IEBACiAJCQkJMDdBQjk5NkIxOERBM0MwMTAwMTg3NzFFIC8q
IFJUQ0ljZVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkxMDgxRTdEREM3MzAwRjMw
NjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFBvbGljeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkx
MDkxRTdEREM3MzAwRjMwNjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3Jp
cHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUMxNEJDNjI2REU2REU4MDA2ODVCRjUg
LyogUlRDTmV0d29ya01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3Mzc5NEZFMTlGNTg2
NEUwMEU1QTA0NSAvKiBSVENOb3RpZmllcnNNb2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzM3
OTRERTE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvai5vcmlnIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzc1ODQzMDYxNzdkODY1YjQ5ZTE5YjdlMDM5ZGVk
ZjUwMGYxM2Q2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvai5vcmlnCkBAIC0wLDAgKzEsMzc0MjUgQEAKKy8vICEkKlVU
RjgqJCEKK3sKKwlhcmNoaXZlVmVyc2lvbiA9IDE7CisJY2xhc3NlcyA9IHsKKwl9OworCW9iamVj
dFZlcnNpb24gPSA1MTsKKwlvYmplY3RzID0geworCisvKiBCZWdpbiBQQlhBZ2dyZWdhdGVUYXJn
ZXQgc2VjdGlvbiAqLworCQk0MTgxNkY3OTEzODU5QzU1MDA1N0FBQTQgLyogQWxsICovID0gewor
CQkJaXNhID0gUEJYQWdncmVnYXRlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9
IDQxODE2RjgxMTM4NTlDNjQwMDU3QUFBNCAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9y
IFBCWEFnZ3JlZ2F0ZVRhcmdldCAiQWxsIiAqLzsKKwkJCWJ1aWxkUGhhc2VzID0gKAorCQkJKTsK
KwkJCWRlcGVuZGVuY2llcyA9ICgKKwkJCQk0MTgxNkY4MzEzODU5QzdBMDA1N0FBQTQgLyogUEJY
VGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCQk0MTgxNkY4NTEzODU5QzdEMDA1N0FBQTQgLyogUEJY
VGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCQlFMUJBNjcxQzE3NDJDQkY4MDBDMjAyNTEgLyogUEJY
VGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCSk7CisJCQluYW1lID0gQWxsOworCQkJcHJvZHVjdE5h
bWUgPSBBbGw7CisJCX07CisJCTUzMjVCREM2MjFERkYzMzcwMEEwREVFMSAvKiBBcHBseSBDb25m
aWd1cmF0aW9uIHRvIFhDRmlsZUxpc3RzICovID0geworCQkJaXNhID0gUEJYQWdncmVnYXRlVGFy
Z2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDUzMjVCRENCMjFERkYzM0EwMEEwREVF
MSAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWEFnZ3JlZ2F0ZVRhcmdldCAiQXBw
bHkgQ29uZmlndXJhdGlvbiB0byBYQ0ZpbGVMaXN0cyIgKi87CisJCQlidWlsZFBoYXNlcyA9ICgK
KwkJCQk1MzI1QkRDQzIxREZGMzNFMDBBMERFRTEgLyogU2hlbGxTY3JpcHQgKi8sCisJCQkpOwor
CQkJZGVwZW5kZW5jaWVzID0gKAorCQkJKTsKKwkJCW5hbWUgPSAiQXBwbHkgQ29uZmlndXJhdGlv
biB0byBYQ0ZpbGVMaXN0cyI7CisJCQlwcm9kdWN0TmFtZSA9ICJBcHBseSBDb25maWd1cmF0aW9u
IHRvIFhDRmlsZUxpc3RzIjsKKwkJfTsKKwkJNTM1NUU4RDExRjk2N0U5RDAwMzFFMDhDIC8qIEdl
bmVyYXRlIFVuaWZpZWQgU291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEFnZ3JlZ2F0ZVRhcmdl
dDsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSA1MzU1RThENDFGOTY3RTlEMDAzMUUwOEMg
LyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhBZ2dyZWdhdGVUYXJnZXQgIkdlbmVy
YXRlIFVuaWZpZWQgU291cmNlcyIgKi87CisJCQlidWlsZFBoYXNlcyA9ICgKKwkJCQk1MzU1RThE
MjFGOTY3RTlEMDAzMUUwOEMgLyogR2VuZXJhdGUgVW5pZmllZCBTb3VyY2VzICovLAorCQkJKTsK
KwkJCWRlcGVuZGVuY2llcyA9ICgKKwkJCSk7CisJCQluYW1lID0gIkdlbmVyYXRlIFVuaWZpZWQg
U291cmNlcyI7CisJCQlwcm9kdWN0TmFtZSA9ICJEZXJpdmVkIFNvdXJjZXMiOworCQl9OworCQlE
RDA0MUZCRTA5RDlEREJFMDAxMEFGMkEgLyogRGVyaXZlZCBTb3VyY2VzICovID0geworCQkJaXNh
ID0gUEJYQWdncmVnYXRlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEREMDQx
RkMxMDlEOUREREMwMDEwQUYyQSAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWEFn
Z3JlZ2F0ZVRhcmdldCAiRGVyaXZlZCBTb3VyY2VzIiAqLzsKKwkJCWJ1aWxkUGhhc2VzID0gKAor
CQkJCUREMDQxRkJEMDlEOUREQkUwMDEwQUYyQSAvKiBHZW5lcmF0ZSBEZXJpdmVkIFNvdXJjZXMg
Ki8sCisJCQkpOworCQkJZGVwZW5kZW5jaWVzID0gKAorCQkJKTsKKwkJCW5hbWUgPSAiRGVyaXZl
ZCBTb3VyY2VzIjsKKwkJCXByb2R1Y3ROYW1lID0gIkRlcml2ZWQgU291cmNlcyI7CisJCX07Cisv
KiBFbmQgUEJYQWdncmVnYXRlVGFyZ2V0IHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYQnVpbGRG
aWxlIHNlY3Rpb24gKi8KKwkJMDAxNDYyOEIxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vz
c0VudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
MDE0NjI4OTEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuaCAqLzsgfTsKKwkJ
MDAzRjFGRUExMUU2QUI0MzAwODI1OEQ5IC8qIFVzZXJDb250ZW50VHlwZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDAwM0YxRkU5MTFFNkFCNDMwMDgy
NThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDA4MUZGMDAxNkIwQTJEMzAwOEFBQTdBIC8qIFB1YmxpY1N1
ZmZpeC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDA4
MUZFRkQxNkIwQTI0NDAwOEFBQTdBIC8qIFB1YmxpY1N1ZmZpeC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTAwQjkzMTg4MTNCQThEQkEwMDM1QTk0
OCAvKiBYTUxEb2N1bWVudFBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDBCOTMxODIxM0JBODY3RjAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFy
c2VyLmggKi87IH07CisJCTAwQjkzMThDMTNCQThEQ0MwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBh
cnNlclNjb3BlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwMEI5MzE4NjEzQkE4NjdGMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXJTY29wZS5oICov
OyB9OworCQkwMEM2MEUzRjEzRDc2RDdFMDA5MkEyNzUgLyogTWFya3VwVG9rZW5pemVySW5saW5l
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDBDNjBF
M0UxM0Q3NkQ3RTAwOTJBMjc1IC8qIE1hcmt1cFRva2VuaXplcklubGluZXMuaCAqLzsgfTsKKwkJ
MDFEM0NGODMxNEJEMEEzMDAwRkU5OTcwIC8qIFdlYkdMQ29udGV4dEdyb3VwLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwMUQzQ0Y3RDE0QkQwQTMwMDBG
RTk5NzAgLyogV2ViR0xDb250ZXh0R3JvdXAuaCAqLzsgfTsKKwkJMDFEM0NGODUxNEJEMEEzMDAw
RkU5OTcwIC8qIFdlYkdMQ29udGV4dE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDFEM0NGN0YxNEJEMEEzMDAwRkU5OTcwIC8qIFdlYkdMQ29u
dGV4dE9iamVjdC5oICovOyB9OworCQkwMUQzQ0Y4NzE0QkQwQTMwMDBGRTk5NzAgLyogV2ViR0xT
aGFyZWRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDAxRDNDRjgxMTRCRDBBMzAwMEZFOTk3MCAvKiBXZWJHTFNoYXJlZE9iamVjdC5oICovOyB9
OworCQkwNTYyRjk2MTE1NzNGODhGMDAzMUNBMTYgLyogUGxhdGZvcm1MYXllci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDU2MkY5NjAxNTczRjg4RjAw
MzFDQTE2IC8qIFBsYXRmb3JtTGF5ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkwNTZBN0FDODI1NkM0RjQ4MDAyRjlEREMgLyogU2hhZG93Um9v
dEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA1
NEUzQTMzMjU2QzNCRDkwMDcyQzVCOSAvKiBTaGFkb3dSb290SW5pdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA1RkQ2OUUwMTI4NDVENDMwMEIy
QkVCMyAvKiBET01UaW1lU3RhbXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA1RkQ2OURGMTI4NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNjAyN0NB
RDBCMUNCRkMwMDA4ODRCMkQgLyogQ29udGV4dE1lbnVJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNjAyN0NBQzBCMUNCRkMwMDA4ODRCMkQgLyog
Q29udGV4dE1lbnVJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMDYyMjg3ODQwQjREQjMyMjAwMEMzNERGIC8qIEZvY3VzRGlyZWN0aW9uLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNjIyODc4MzBC
NERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNjVBRDRGNTBCMEMyRURBMDA1QTJCMUQgLyog
Q29udGV4dE1lbnVDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA2NUFENEYyMEIwQzJFREEwMDVBMkIxRCAvKiBDb250ZXh0TWVudUNsaWVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA2NUFE
NEY3MEIwQzJFREEwMDVBMkIxRCAvKiBDb250ZXh0TWVudUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA2NUFENEY0MEIwQzJFREEwMDVB
MkIxRCAvKiBDb250ZXh0TWVudUNvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNjY4RTE4QjBBREQ5NjI0MDA0MTI4RTAgLyogUG9w
dXBNZW51LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NjY4RTE4OTBBREQ5NjI0MDA0MTI4RTAgLyogUG9wdXBNZW51LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDY2Qzc3MkIwQUI2MDNCNzAwMjM4Q0M0
IC8qIEZpbGVDaG9vc2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNjZDNzcyQTBBQjYwM0I3MDAyMzhDQzQgLyogRmlsZUNob29zZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNjZDNzczMTBBQjYw
M0ZEMDAyMzhDQzQgLyogUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA2NkM3NzJGMEFCNjAzRkQwMDIzOENDNCAv
KiBSZW5kZXJGaWxlVXBsb2FkQ29udHJvbC5oICovOyB9OworCQkwNkU4MUVENzBBQjVENUU5MDBD
ODc4MzcgLyogTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNkU4MUVENjBBQjVENUU5MDBDODc4MzcgLyog
TG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDcwMzM0RDcxNDU5RkZENTAwOEQ4RDQ1IC8qIFRyYWNr
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcw
MzM0RDYxNDU5RkZENTAwOEQ4RDQ1IC8qIFRyYWNrQmFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3MDM2M0UyMTgxQTFDREMwMEMwNzRBNSAv
KiBBVkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzAzNjNEQTE4MUExQ0RDMDBDMDc0QTUgLyogQVZDYXB0dXJlRGV2
aWNlTWFuYWdlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA3MDM2M0UzMTgxQTFDREMwMEMwNzRBNSAvKiBBVkNhcHR1cmVEZXZpY2VNYW5hZ2Vy
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwMzYz
REIxODFBMUNEQzAwQzA3NEE1IC8qIEFWQ2FwdHVyZURldmljZU1hbmFnZXIubW0gKi87IH07CisJ
CTA3MDM2M0U2MTgxQTFDREMwMEMwNzRBNSAvKiBBVlZpZGVvQ2FwdHVyZVNvdXJjZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwMzYzREUxODFBMUNE
QzAwQzA3NEE1IC8qIEFWVmlkZW9DYXB0dXJlU291cmNlLmggKi87IH07CisJCTA3MDM2M0U3MTgx
QTFDREMwMEMwNzRBNSAvKiBBVlZpZGVvQ2FwdHVyZVNvdXJjZS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MDM2M0RGMTgxQTFDREMwMEMwNzRBNSAv
KiBBVlZpZGVvQ2FwdHVyZVNvdXJjZS5tbSAqLzsgfTsKKwkJMDcwNEE0MDgxRDZERTlGMTAwODZE
Q0RCIC8qIE92ZXJjb25zdHJhaW5lZEVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwNzA0QTQwNTFENkRFOUYxMDA4NkRDREIgLyogT3ZlcmNvbnN0
cmFpbmVkRXJyb3IuaCAqLzsgfTsKKwkJMDcwNEE0MEMxRDZERkM2OTAwODZEQ0RCIC8qIEpTT3Zl
cmNvbnN0cmFpbmVkRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3MDRBNDBBMUQ2REZDNjkwMDg2RENEQiAvKiBKU092ZXJjb25zdHJhaW5lZEVy
cm9yLmggKi87IH07CisJCTA3MDRBNDE2MUQ2RjM5RkIwMDg2RENEQiAvKiBKU092ZXJjb25zdHJh
aW5lZEVycm9yRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MDRBNDE0MUQ2RjM5RkIwMDg2RENEQiAvKiBKU092ZXJjb25zdHJhaW5lZEVycm9y
RXZlbnQuaCAqLzsgfTsKKwkJMDcwNkEwRDkyNDA4MzBBNzAwRTkzODE4IC8qIEluYmFuZEdlbmVy
aWNDdWVJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzA2QTBENzI0MDgzMEE2MDBFOTM4MTggLyogSW5iYW5kR2VuZXJpY0N1ZUlkZW50
aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkwNzA3NTY4QzE0MjI2MkQ2MDA0MTQxNjEgLyogSFRNTFRyYWNrRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwNzU2ODkxNDIyNjJENjAw
NDE0MTYxIC8qIEhUTUxUcmFja0VsZW1lbnQuaCAqLzsgfTsKKwkJMDcwNzU2OTUxNDIyNjY4RDAw
NDE0MTYxIC8qIEpTVGV4dFRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzA3NTY4RjE0MjI2NjhDMDA0MTQxNjEgLyogSlNUZXh0VHJhY2suaCAq
LzsgfTsKKwkJMDcwNzU2RDQxNDIzOUE0RjAwNDE0MTYxIC8qIEpTSFRNTFRyYWNrRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwNzU2RDIx
NDIzOUE0RTAwNDE0MTYxIC8qIEpTSFRNTFRyYWNrRWxlbWVudC5oICovOyB9OworCQkwNzA3NTZE
RTE0MjM5QjRFMDA0MTQxNjEgLyogSlNUZXh0VHJhY2tDdWUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MDc1NkQ4MTQyMzlCNEIwMDQxNDE2MSAvKiBK
U1RleHRUcmFja0N1ZS5oICovOyB9OworCQkwNzA3NTZFMDE0MjM5QjRFMDA0MTQxNjEgLyogSlNU
ZXh0VHJhY2tDdWVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzA3NTZEQTE0MjM5QjRFMDA0MTQxNjEgLyogSlNUZXh0VHJhY2tDdWVMaXN0Lmgg
Ki87IH07CisJCTA3MDlENzhGMUFFNTU1NTQwMDRFNDJGOCAvKiBXZWJNZWRpYVNlc3Npb25NYW5h
Z2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzA5
RDc4RDFBRTU1NTU0MDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3MDlENzkyMUFFNTU1
N0UwMDRFNDJGOCAvKiBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MDlENzkwMUFFNTU1N0UwMDRFNDJG
OCAvKiBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmNwcCAqLzsgfTsKKwkJMDcwOUQ3OTMxQUU1
NTU3RTAwNEU0MkY4IC8qIFdlYk1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MDlENzkxMUFFNTU1N0UwMDRFNDJG
OCAvKiBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDcwOUQ3OTUxQUU1NUEyOTAwNEU0MkY4IC8qIFdl
Yk1lZGlhU2Vzc2lvbk1hbmFnZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3MDlENzk0MUFFNTVBMjkwMDRFNDJGOCAvKiBXZWJNZWRpYVNl
c3Npb25NYW5hZ2VyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMDcwOUZDNEUxMDI1REVFMzAwNTlDREJBIC8qIEFjY2Vzc2liaWxpdHlT
bGlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
MDlGQzREMTAyNURFRTMwMDU5Q0RCQSAvKiBBY2Nlc3NpYmlsaXR5U2xpZGVyLmggKi87IH07CisJ
CTA3MEUwOTE5MTg3NUVFRkMwMDNBMUQzQyAvKiBQbGF0Zm9ybU1lZGlhU2Vzc2lvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwRTA5MTgxODc1RUQ5
MzAwM0ExRDNDIC8qIFBsYXRmb3JtTWVkaWFTZXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDcwRTgxRDExQkYyNzY1NjAwMUZEQTQ4IC8q
IFZpZGVvVHJhY2tQcml2YXRlTWVkaWFTdHJlYW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MEU4MUQwMUJGMjc2NTYwMDFGREE0OCAvKiBWaWRlb1Ry
YWNrUHJpdmF0ZU1lZGlhU3RyZWFtLmggKi87IH07CisJCTA3MEY1NDk4MTdGMTJGNkIwMDE2OUUw
NCAvKiBNZWRpYVN0cmVhbUNvbnN0cmFpbnRzVmFsaWRhdGlvbkNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcwRjU0OTcxN0YxMkY2QjAwMTY5
RTA0IC8qIE1lZGlhU3RyZWFtQ29uc3RyYWludHNWYWxpZGF0aW9uQ2xpZW50LmggKi87IH07CisJ
CTA3MTk0MjdGMUQwODhGMjEwMDJBQTUxRCAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3QzhBRDExMUQwNzNE
NjMwMDg3QzVDRSAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5tbSAqLzsgfTsKKwkJMDcxQTlFQzMx
NjhGQkM1NTAwMjYyOUY5IC8qIFRleHRUcmFja0N1ZUdlbmVyaWMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MUE5RUMxMTY4RkI1NkMwMDI2MjlGOSAv
KiBUZXh0VHJhY2tDdWVHZW5lcmljLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMDcxRTQ5NkUxQUQ1QUEwRDAwOEE1MEI0IC8qIE1lZGlhUGxheWJh
Y2tUYXJnZXRDb2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MUU0OTZEMUFENUFBMEQwMDhBNTBCNCAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29j
b2EubW0gKi87IH07CisJCTA3MUU0OTcwMUFENUFCNUUwMDhBNTBCNCAvKiBNZWRpYVBsYXliYWNr
VGFyZ2V0Q29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3MUU0OTZGMUFENUFCNUUwMDhBNTBCNCAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29jb2Eu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzI1
RUZBOTIzOUFENzkzMDBBNTM4QTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzlGNUU0QjBGM0JFQkVBMDA1RTA3
ODIgLyogTWVkaWFQbGF5ZXJQcml2YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDcyNzdFNEQxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFT
dHJlYW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
Mjc3RTQxMTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtLmggKi87IH07CisJCTA3Mjc3
RTREMTdEMDE4Q0MwMDE1NTM0RSAvKiBKU0NhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzI3N0U0MTE3
RDAxOENDMDAxNTUzNEUgLyogSlNDYW52YXNDYXB0dXJlTWVkaWFTdHJlYW1UcmFjay5oICovOyB9
OworCQkwNzI3N0U0RjE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbUF1ZGlvRGVzdGlu
YXRpb25Ob2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzI3N0U0MzE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRp
b25Ob2RlLmggKi87IH07CisJCTA3Mjc3RTUzMTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3Ry
ZWFtVHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3Mjc3RTQ3MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suaCAqLzsgfTsK
KwkJMDcyNzdFNTUxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzI3N0U0OTE3
RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCAqLzsgfTsKKwkJMDcy
ODgwRDEyMDEwRjFGNjAwNzFCMjU1IC8qIFJlYWx0aW1lVmlkZW9DYXB0dXJlU291cmNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzI4ODBEMDIwMTBF
RUQ3MDA3MUIyNTUgLyogUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzJBNzA0MDFENkU4RjYyMDBE
RjBBRkMgLyogT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQTcwM0UxRDZFOEY2MjAwREYwQUZDIC8qIE92
ZXJjb25zdHJhaW5lZEVycm9yRXZlbnQuaCAqLzsgfTsKKwkJMDcyQUUxRTUxODNDMDc0MTAwMEE1
OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFj
ZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkwNzJBRTFFODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFFMUUy
MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9Owor
CQkwNzJDOEIxMTEzMUM1MTg2MDBBNEZDRTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
NkYwRDA5MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24u
Y3BwICovOyB9OworCQkwNzM3OTRERTE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJP
cHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzM3OTREQzE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggKi87IH07
CisJCTA3Mzc5NEU2MTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mzc5NEU0MTlFRTJG
RjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLzsgfTsKKwkJMDczNzk0RUMxOUVF
MzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM3OTRFQTE5RUUzNDFFMDBFNUEwNDUgLyogSlNSVENJ
Y2VTZXJ2ZXIuaCAqLzsgfTsKKwkJMDczNzk0RkExOUY1ODY0RTAwRTVBMDQ1IC8qIFJUQ0RhdGFD
aGFubmVsSGFuZGxlck1vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3Mzc5NEY0MTlGNTg2NEUwMEU1QTA0NSAvKiBSVENEYXRhQ2hhbm5lbEhhbmRs
ZXJNb2NrLmggKi87IH07CisJCTA3Mzc5NEZFMTlGNTg2NEUwMEU1QTA0NSAvKiBSVENOb3RpZmll
cnNNb2NrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzM3OTRGODE5RjU4NjRFMDBFNUEwNDUgLyogUlRDTm90aWZpZXJzTW9jay5oICovOyB9OworCQkw
NzM4RTVFQzI0OTk4MzkwMDBEQTEwMUMgLyogQVZPdXRwdXREZXZpY2VNZW51Q29udHJvbGxlclRh
cmdldFBpY2tlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3MzhFNUVBMjQ5OTY4QUQwMERBMTAxQyAvKiBBVk91dHB1dERldmljZU1lbnVDb250cm9s
bGVyVGFyZ2V0UGlja2VyLm1tICovOyB9OworCQkwNzNBMTU1NDIxNzdBNDI2MDBFQTA4RjIgLyog
UmVtb3RlVmlkZW9TYW1wbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3M0ExNTUzMjE3N0EzOUEwMEVBMDhGMiAvKiBSZW1vdGVWaWRlb1NhbXBsZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3M0I4
NzY3MUU0Mzg1QUMwMDcxQzBFQyAvKiBBdWRpb1NhbXBsZUJ1ZmZlckxpc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0I4NzYzMUU0Mzg1OUQwMDcx
QzBFQyAvKiBBdWRpb1NhbXBsZUJ1ZmZlckxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzNCODc2OTFFNDM4NUFDMDA3MUMwRUMgLyogQXVk
aW9TYW1wbGVEYXRhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzNCODc2NTFFNDM4NTlEMDA3MUMwRUMgLyogQXVkaW9TYW1wbGVEYXRhU291
cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MDc0MEIxNDQyNURFMzFGODAwRTM4REJBIC8qIE1vY2tNZWRpYVNlc3Npb25Db29yZGluYXRvci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzQwQjE0
MzI1REUzMUE5MDBFMzhEQkEgLyogTW9ja01lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmNwcCAqLzsg
fTsKKwkJMDc0RTgyQkIxOEE2OUYwRTAwN0VGNTRDIC8qIFBsYXRmb3JtVGltZVJhbmdlcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc0RTgyQjkxOEE2
OUYwRTAwN0VGNTRDIC8qIFBsYXRmb3JtVGltZVJhbmdlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3NTAzM0E4MjUyQkQzNjgwMEY3MENFMyAv
KiBWaWRlb1BsYXliYWNrUXVhbGl0eU1ldHJpY3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NTAzM0E2MjUyQkQzNjgwMEY3MENFMyAvKiBWaWRlb1Bs
YXliYWNrUXVhbGl0eU1ldHJpY3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkwNzUzODYwMzE0NDg5RTk4MDBCNzg0NTIgLyogQ2FjaGVkVGV4dFRy
YWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzUz
ODYwMTE0NDg5RTk4MDBCNzg0NTIgLyogQ2FjaGVkVGV4dFRyYWNrLmggKi87IH07CisJCTA3NTRB
NUVBMjE1RUEzQjgwMDJEM0E5OSAvKiBSZWFsdGltZU1lZGlhU291cmNlRmFjdG9yeS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc1NEE1RTgyMTVFQTNC
NzAwMkQzQTk5IC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VGYWN0b3J5LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc1N0IxM0UyMTRBRTc5OTAwNzk0
QjBEIC8qIFZpZGVvUHJlc2V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzU3QjEzQzIxNEFFNzk3MDA3OTRCMEQgLyogVmlkZW9QcmVzZXQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzYxMURDMTI0
NDBFNTlCMDBEODA3MDQgLyogTWVkaWFVc2FnZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NjExREI4MjQzRkI3NUMwMEQ4MDcwNCAvKiBNZWRp
YVVzYWdlSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA3NjM4QTk5MTg4NDQ4NzIwMEUxNUExQiAvKiBNZWRpYVNlc3Npb25NYW5hZ2VySU9T
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzYzOEE5
NzE4ODQ0ODcyMDBFMTVBMUIgLyogTWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3NjM4QTlBMTg4NDQ4NzIw
MEUxNUExQiAvKiBNZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2MzhBOTgxODg0NDg3MjAwRTE1QTFCIC8qIE1l
ZGlhU2Vzc2lvbk1hbmFnZXJJT1MubW0gKi87IH07CisJCTA3Njk3MDg3MTQ2M0FEODcwMEY1MDJD
RiAvKiBUZXh0VHJhY2tMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzY5NzA4NTE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICov
OyB9OworCQkwNzZEMUMxRjIzRjZFQjVCMDBEOTVCMDYgLyogU2VyaWFsaXplZFBsYXRmb3JtRGF0
YUN1ZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzZEMUMxRDIzRjZEOUQ4MDBEOTVCMDYgLyogU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZVZh
bHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MDc2RjBEMEUxMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2RjBE
MEExMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICov
OyB9OworCQkwNzc2NjRGRDE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
aCAqLzsgfTsKKwkJMDc3QUYxNDAxOEY0QUU0MDAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9y
bURhdGFDdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3N0FGMTNFMThGNEFFNDAwMDAxRUQ2MSAvKiBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc3QUYx
NDMxOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybURhdGFDdWVNYWMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3N0FGMTQxMThGNEIx
QkIwMDAxRUQ2MSAvKiBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlTWFjLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc3QjY0MTMxQjk0RjEyRTAw
M0U5QUQ1IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzdCNjQxMTFCOTRGMTJFMDAzRTlBRDUg
LyogTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlck1vY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzdCNjQxNzFCOTVGNzAzMDAzRTlBRDUgLyog
TWVkaWFQbGF5YmFja1RhcmdldE1vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3N0I2NDE1MUI5NUY3MDMwMDNFOUFENSAvKiBNZWRpYVBsYXliYWNr
VGFyZ2V0TW9jay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA3N0JBNTcxMjYwRjlGNzYwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRv
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyREJD
MDMyNURDNkJEMzAwQTEzNTBFIC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc3QkE1NzIyNjBGQTAx
NDAwNzJGMTlGIC8qIE5hdmlnYXRvck1lZGlhU2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0REREVBMjYyNTM4Q0RBQjAwQTEzMDBDIC8qIE5h
dmlnYXRvck1lZGlhU2Vzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTA3N0JBNTc1MjYwRkE1RkUwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERERFQTIz
MjUzOENEODAwMEExMzAwQyAvKiBNZWRpYVNlc3Npb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzdCQTU3NjI2MEZBREY2MDA3MkYxOUYgLyog
TWVkaWFQb3NpdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRERERUEzNDI1MzhDRTYyMDBBMTMwMEMgLyogTWVkaWFQb3NpdGlvblN0YXRl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc3
QkE1NzcyNjBGQUVDODAwNzJGMTlGIC8qIE1lZGlhU2Vzc2lvbkFjdGlvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0REREVBMkIyNTM4Q0RFMzAwQTEz
MDBDIC8qIE1lZGlhU2Vzc2lvbkFjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTA3N0JBNTc4MjYwRkFFREIwMDcyRjE5RiAvKiBNZWRpYVNl
c3Npb25BY3Rpb25IYW5kbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRERERUEzQTI1MzhFOUMyMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9u
SGFuZGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTA3N0JBNTc5MjYwRkFFRTgwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25QbGF5YmFja1N0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRERERUEy
OTI1MzhDRENCMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3N0JBNTdBMjYwRkFF
RjgwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25SZWFkeVN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzQ0NzFGRDI1RTE4MDA1MDA1NEIyMzEgLyog
TWVkaWFTZXNzaW9uUmVhZHlTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTA3N0JBNTdCMjYwRkIxMDIwMDcyRjE5RiAvKiBNZWRpYVNlc3Np
b25BY3Rpb25EZXRhaWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRERERUEzNjI1MzhDRTcwMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9uRGV0
YWlscy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTA3N0JBNTdFMjYwRkVGMzYwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRvclByaXZh
dGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3N0JB
NTdDMjYwRkU3MzgwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRvclByaXZhdGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzgyODk0
ODI1QzIzRkU1MDBBN0JBMDMgLyogTWVkaWFNZXRhZGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0REREVBMkQyNTM4Q0UwNDAwQTEzMDBDIC8qIE1l
ZGlhTWV0YWRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkwNzgyODk0QjI1QzM2RkVEMDBBN0JBMDMgLyogTWVkaWFJbWFnZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0REREVBMzIyNTM4Q0UzNTAw
QTEzMDBDIC8qIE1lZGlhSW1hZ2UuaCAqLzsgfTsKKwkJMDc4Mjg5NEMyNUMzNzAwQjAwQTdCQTAz
IC8qIE1lZGlhTWV0YWRhdGFJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRERERUEzMDI1MzhDRTFFMDBBMTMwMEMgLyogTWVkaWFNZXRhZGF0YUlu
aXQuaCAqLzsgfTsKKwkJMDc4MzIyODUxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVk
aW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3ODMyMjgzMTgwMTNFRDgwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmggKi87
IH07CisJCTA3ODQ2MzQzMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2MzQxMTQ1QjE1MUEw
MEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLzsgfTsKKwkJMDc4NDYzODUxNDVCMUI4RTAwQTU4
REYxIC8qIEpTVHJhY2tDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDA3ODQ2Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmgg
Ki87IH07CisJCTA3ODYzM0U5MjNGRjM0N0IwMDg3QUUyMSAvKiBJbmJhbmRHZW5lcmljQ3VlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzg2MzNERTIz
RkVERjIyMDA4N0FFMjEgLyogSW5iYW5kR2VuZXJpY0N1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3ODdDNDZBMUJGQkRGNkYwMDZEQ0Q3RiAv
KiBKU01lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc4N0M0NjgxQkZCREY2RjAwNkRDRDdGIC8qIEpT
TWVkaWFUcmFja1N1cHBvcnRlZENvbnN0cmFpbnRzLmggKi87IH07CisJCTA3OEUwOTE1MTdEMTRE
MUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCNEQxN0NFQzMyNzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFt
LmggKi87IH07CisJCTA3OEUwOTE4MTdEMTREMUMwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbVRyYWNr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI1
NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUwOTE5MTdEMTREMUMwMDQyMEFB
MSAvKiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjU4MTdDRUMzMjcwMDg0OEU1MSAvKiBNZWRpYVN0cmVh
bVRyYWNrRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkwNzhFMDkxRTE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWwuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjY0MTdDRUMz
MjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUwOTFGMTdEMTREMUMwMDQyMEFBMSAvKiBSVENE
YXRhQ2hhbm5lbEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzIyMUI2NzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUw
OTIwMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEVE1GU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI2QTE3Q0VDMzI3MDA4NDhFNTEgLyog
UlRDRFRNRlNlbmRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTA3OEUwOTIxMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIy
MUI2RDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUwOTIzMTdEMTRE
MUMwMDQyMEFBMSAvKiBSVENJY2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjcyMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VD
YW5kaWRhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkwNzhFMDkyNDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VFdmVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFC
NzUxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uSWNlRXZlbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzhFMDkyNTE3RDE0
RDFDMDA0MjBBQTEgLyogUlRDUGVlckNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjc4MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQ
ZWVyQ29ubmVjdGlvbi5oICovOyB9OworCQkwNzhFMDkyNjE3RDE0RDFDMDA0MjBBQTEgLyogUlRD
U2Vzc2lvbkRlc2NyaXB0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzIyMUI3QjE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0
aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MDc4RTA5MkExN0QxNEQxQzAwNDIwQUExIC8qIFJUQ1N0YXRzUmVwb3J0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI4NDE3Q0VDMzI3MDA4NDhF
NTEgLyogUlRDU3RhdHNSZXBvcnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkwNzhFMDkyRTE3RDE0RDFDMDA0MjBBQTEgLyogVXNlck1lZGlhQ2xp
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIy
MUI4RDE3Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhQ2xpZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc4RTA5MkYxN0QxNEQxQzAwNDIw
QUExIC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjhGMTdDRUMzMjcwMDg0OEU1MSAvKiBVc2VyTWVkaWFD
b250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMDc4RTA5MzAxN0QxNEQxQzAwNDIwQUExIC8qIFVzZXJNZWRpYVJlcXVlc3QuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQjkxMTdDRUMz
MjcwMDg0OEU1MSAvKiBVc2VyTWVkaWFSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc4RTA5MzcxN0QxNkIyQzAwNDIwQUExIC8qIE1l
ZGlhU3RyZWFtUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyMjFCOUQxN0NGMEFENDAwODQ4RTUxIC8qIE1lZGlhU3RyZWFtUHJpdmF0ZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUw
OTNBMTdEMTZFMUMwMDQyMEFBMSAvKiBNZWRpYUNvbnN0cmFpbnRzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI5OTE3Q0YwQUQ0MDA4NDhFNTEg
LyogTWVkaWFDb25zdHJhaW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTA3OEUwOTNDMTdEMTZFMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5l
bEhhbmRsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3MjIxQkEyMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbEhhbmRsZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzhFMDkzRDE3
RDE2RTFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyQ2xpZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJBMzE3Q0YwQUQ0MDA4
NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc4RTA5NDAxN0QxNkUxQzAwNDIwQUEx
IC8qIFJUQ0ljZUNhbmRpZGF0ZURlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MjIxQkE3MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENJY2VD
YW5kaWRhdGVEZXNjcmlwdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMDc4RTA5NDIxN0QxNkUxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0
aW9uSGFuZGxlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyMjFCQUExN0NGMEFENDAwODQ4RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uSGFu
ZGxlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTA3OEUwOTQzMTdEMTZFMUMwMDQyMEFBMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25E
ZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzIyMUJBQzE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3Jp
cHRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTA3OEUwOTQ0MTdEMTZFMUMwMDQyMEFBMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUJB
RDE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OEUwOTQ3MTdE
MTZFMUMwMDQyMEFBMSAvKiBSVENWb2lkUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyMjFCQjAxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ1Zv
aWRSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMDc4RTA5NEMxN0QxNzA5NjAwNDIwQUExIC8qIE1lZGlhU3RyZWFtQXVkaW9EZXN0aW5h
dGlvbk5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3OEUwOTQ5MTdEMTcwOTYwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25O
b2RlLmggKi87IH07CisJCTA3OEUzQ0MwMUZFMUM3M0MwMDQ4M0MxRCAvKiBNZWRpYVN0cmVhbVJl
cXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
OEUzQ0JFMUZFMTlGMzAwMDQ4M0MxRCAvKiBNZWRpYVN0cmVhbVJlcXVlc3QuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzhFNDNEQTFBQkI2QzdF
MDAxQzJGQTYgLyogTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc4RTQzRDgxQUJCNkM3RTAwMUMyRkE2IC8q
IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkwNzhFNDNERDFBQkI2RjZGMDAxQzJGQTYgLyogTWVkaWFQ
bGF5YmFja1RhcmdldFBpY2tlck1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDc4RTQzREIxQUJCNkY2RjAwMUMyRkE2IC8qIE1lZGlhUGxheWJhY2tU
YXJnZXRQaWNrZXJNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkwNzhFNDNERTFBQkI2RjZGMDAxQzJGQTYgLyogTWVkaWFQbGF5YmFja1Rhcmdl
dFBpY2tlck1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3OEU0M0RDMUFCQjZGNkYwMDFDMkZBNiAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2Vy
TWFjLm1tICovOyB9OworCQkwNzhFRDE5MzIxNkQwNzk1MDA3NzVCMzMgLyogSW1hZ2VUcmFuc2Zl
clNlc3Npb25WVC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDc0NkQzMEMyMTQ2RUEzODAwM0RERjg0IC8qIEltYWdlVHJhbnNmZXJTZXNzaW9uVlQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzkyMTY1
NTFBQTU2MEFBMDBBM0MwNDkgLyogTWVkaWFQbGF5YmFja1RhcmdldENsaWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5MjE2NTMxQUE1NjBBQTAw
QTNDMDQ5IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzk0MTc5MjE2NkU4NTVGMDA5NDE2QzIg
LyogSW5iYW5kVGV4dFRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzk0MTc5MDE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrLmgg
Ki87IH07CisJCTA3OTQxNzk0MTY2RUEwNEUwMDk0MTZDMiAvKiBJbmJhbmRUZXh0VHJhY2tQcml2
YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzk0
MTc5MzE2NkVBMDRFMDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3OTY5REFDMTdEMTQx
NTEwMDdGRjg0MiAvKiBKU1JUQ0RhdGFDaGFubmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5MjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENE
YXRhQ2hhbm5lbC5oICovOyB9OworCQkwNzk2OURBRTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENE
YXRhQ2hhbm5lbEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwNzk2OUQ5NDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbEV2ZW50
LmggKi87IH07CisJCTA3OTY5REIwMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZTZW5kZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDk2
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZTZW5kZXIuaCAqLzsgfTsKKwkJMDc5NjlEQjIx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEOTgxN0QxNDE1MTAwN0ZG
ODQyIC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5oICovOyB9OworCQkwNzk2OURCNjE3RDE0
MTUxMDA3RkY4NDIgLyogSlNSVENJY2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OTY5RDlDMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JU
Q0ljZUNhbmRpZGF0ZS5oICovOyB9OworCQkwNzk2OURCODE3RDE0MTUxMDA3RkY4NDIgLyogSlNS
VENQZWVyQ29ubmVjdGlvbkljZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzk2OUQ5RTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29u
bmVjdGlvbkljZUV2ZW50LmggKi87IH07CisJCTA3OTY5REJBMTdEMTQxNTEwMDdGRjg0MiAvKiBK
U1JUQ1BlZXJDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzk2OURBMDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlv
bi5oICovOyB9OworCQkwNzk2OURCQzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENTZXNzaW9uRGVz
Y3JpcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3OTY5REEyMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oICov
OyB9OworCQkwNzk2OURDMjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENTdGF0c1JlcG9ydC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc5NjlEQTgxN0Qx
NDE1MTAwN0ZGODQyIC8qIEpTUlRDU3RhdHNSZXBvcnQuaCAqLzsgfTsKKwkJMDc5RDA4NjgxNjJG
MjBFODAwREI4NjU4IC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3OUQwODY3MTYyRjIwRTgwMERCODY1OCAv
KiBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDc5RDA4NkIxNjJGMjFGOTAwREI4NjU4IC8qIENhcHRpb25V
c2VyUHJlZmVyZW5jZXNNZWRpYUFGLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzlEMDg2OTE2MkYyMUY5MDBEQjg2NTggLyogQ2FwdGlvblVzZXJQcmVm
ZXJlbmNlc01lZGlhQUYuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkwN0E2RDFFQzE0OTExMzc3MDAwNTFEMEMgLyogTWVkaWFGcmFnbWVudFVSSVBh
cnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdB
NkQxRUExNDkxMTM3NzAwMDUxRDBDIC8qIE1lZGlhRnJhZ21lbnRVUklQYXJzZXIuaCAqLzsgfTsK
KwkJMDdBQTZCNkIxNjZEMkMwNzAwRDQ1NjcxIC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGVBVkZP
YmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdB
QTZCNkExNjZEMDE5NTAwRDQ1NjcxIC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGVBVkZPYmpDLm1t
ICovOyB9OworCQkwN0FBNkI2QzE2NkQyQzEzMDBENDU2NzEgLyogSW5iYW5kVGV4dFRyYWNrUHJp
dmF0ZUFWRk9iakMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3QUE2QjY5MTY2RDAxOTUwMEQ0NTY3MSAvKiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZG
T2JqQy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTA3QUI5OTY5MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0FCOTk2NTE4REEzQzAxMDAx
ODc3MUUgLyogUlRDQ29uZmlndXJhdGlvbi5oICovOyB9OworCQkwN0FCOTk2QjE4REEzQzAxMDAx
ODc3MUUgLyogUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwN0FCOTk2NzE4REEzQzAxMDAxODc3MUUgLyogUlRDSWNlU2VydmVyLmgg
Ki87IH07CisJCTA3QUZGNDIyMUVGQjE0NDkwMEI1NDVCMyAvKiBDb3JlQXVkaW9DYXB0dXJlU291
cmNlSU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
N0FGRjQyMDFFRkIxNDQ3MDBCNTQ1QjMgLyogQ29yZUF1ZGlvQ2FwdHVyZVNvdXJjZUlPUy5oICov
OyB9OworCQkwN0FGRjQyMzFFRkIxNDQ5MDBCNTQ1QjMgLyogQ29yZUF1ZGlvQ2FwdHVyZVNvdXJj
ZUlPUy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
QUZGNDIxMUVGQjE0NDcwMEI1NDVCMyAvKiBDb3JlQXVkaW9DYXB0dXJlU291cmNlSU9TLm1tICov
OyB9OworCQkwN0IwQUJDRjEwMzIyNDIyMDBGQkRDMzMgLyogQWNjZXNzaWJpbGl0eU1hdGhNTEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3
QjBBQkNFMTAzMjI0MjIwMEZCREMzMyAvKiBBY2Nlc3NpYmlsaXR5TWF0aE1MRWxlbWVudC5oICov
OyB9OworCQkwN0I0NDJENjE2NkM3MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZUFWRi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
N0I0NDJENDE2NkM3MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAg
Ki87IH07CisJCTA3QjQ0MkQ3MTY2QzcwQjAwMDU1NkNBRCAvKiBJbmJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
N0I0NDJENTE2NkM3MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3QjVBMkRD
MTQ2NDMyMEEwMEE4MUVDRSAvKiBKU1RleHRUcmFja0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3QjVBMkRBMTQ2NDMyMEEwMEE4MUVDRSAvKiBK
U1RleHRUcmFja0xpc3QuaCAqLzsgfTsKKwkJMDdCNzExNkQxRDg5OUU2MzAwOUYwRkZCIC8qIENh
cHR1cmVEZXZpY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3QjcxMTZBMUQ4OTlFNjMwMDlGMEZGQiAvKiBDYXB0dXJlRGV2aWNlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDdCNzExNkYxRDg5OUU2
MzAwOUYwRkZCIC8qIENhcHR1cmVEZXZpY2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0I3MTE2QzFEODk5RTYzMDA5RjBGRkIgLyogQ2Fw
dHVyZURldmljZU1hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkwN0I5M0ZGQzIzQjk0RUM3MDAzNkY4RUEgLyogTUlNRVR5cGVDYWNoZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdCOTNGRjky
M0I5MkFBQTAwMzZGOEVBIC8qIE1JTUVUeXBlQ2FjaGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwN0MwNDZDNDFFNDI1MDhCMDA3MjAxRTcgLyog
Q0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzNCODc1ODFFNDBEQ0ZEMDA3MUMwRUMgLyogQ0FBdWRpb1N0cmVh
bURlc2NyaXB0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMDdDMDQ2Q0IxRTQyNjQxMzAwNzIwMUU3IC8qIEF1ZGlvU3RyZWFtRGVzY3JpcHRp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3M0I4
NzU2MUU0MERDRTUwMDcxQzBFQyAvKiBBdWRpb1N0cmVhbURlc2NyaXB0aW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDdDMTQ4MkUyNjEyQTIx
RjAwNzc1ODI4IC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3N0JBNTg4MjYxMjZENjYwMDcyRjE5
RiAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDdDMUMwRTIxQkZCNjAwMTAwQkQyMjU2IC8q
IE1lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdDMUMwRTAxQkZCNjAwMTAwQkQyMjU2IC8qIE1lZGlh
VHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oICovOyB9OworCQkwN0MxQzBFNTFCRkI2MEVEMDBC
RDIyNTYgLyogUmVhbHRpbWVNZWRpYVNvdXJjZVN1cHBvcnRlZENvbnN0cmFpbnRzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwN0MxQzBFNDFCRkI2MEVE
MDBCRDIyNTYgLyogUmVhbHRpbWVNZWRpYVNvdXJjZVN1cHBvcnRlZENvbnN0cmFpbnRzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDdDQjlFNzIy
NDlDMzZCMjAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0UGlja2VyLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdDQjlFNkYyNDlDMjI2
QzAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0UGlja2VyLm1tICovOyB9OworCQkw
N0NFNzdENTE2NzEyQTZBMDBDNTVBNDcgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUNsaWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdDRTc3RDQx
NjcxMkE2QTAwQzU1QTQ3IC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGVDbGllbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwN0QxMkY1QzIzREU1
NDNGMDA4MDk5N0QgLyogSVNPVlRUQ3VlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRDg3MUM2NTFGQjUyQjY3MDBGMEI5NjUgLyogSVNPVlRUQ3VlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDdENjM3
NDAxQkIwQjExMzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJDb2NvYS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENjM3M0UxQkIwQjEx
MzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJDb2NvYS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3RDZBNEY0MUJFRDVGODgwMDE3
NDE0NiAvKiBNb2NrUmVhbHRpbWVBdWRpb1NvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdENkE0RjIxQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tS
ZWFsdGltZUF1ZGlvU291cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMDdENkE0RjgxQkYyMzA3RDAwMTc0MTQ2IC8qIEF1ZGlvVHJhY2tQcml2
YXRlTWVkaWFTdHJlYW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3RDZBNEY2MUJGMjMwN0QwMDE3NDE0NiAvKiBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlh
U3RyZWFtLmggKi87IH07CisJCTA3RTNERkQxMUE5RTc4NjUwMDc2NENBOCAvKiBNZWRpYVBsYXli
YWNrVGFyZ2V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwN0UzREZEMDFBOUU3ODY1MDA3NjRDQTggLyogTWVkaWFQbGF5YmFja1RhcmdldC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3RTlFMTJFMThG
NUUyNzYwMDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RTlFMTJEMThGNUUy
NzYwMDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuaCAqLzsgfTsK
KwkJMDdFOUUxMzAxOEY2MkIzNzAwMTFBM0E0IC8qIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJp
dmF0ZUFWRi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwN0U5RTEyRjE4RjYyQjM3MDAxMUEzQTQgLyogSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcCAqLzsgfTsKKwkJMDdFRTc2RUMxQkU5NkRCMDAwRjg5MTMzIC8qIE1vY2tSZWFs
dGltZVZpZGVvU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwN0VFNzZFQTFCRTk2REIwMDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3Vy
Y2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkw
N0VFNzZFRjFCRUE2MTk4MDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2VNYWMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RUU3NkVEMUJF
QTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1hYy5oICovOyB9OworCQkw
N0Y0RTkzMzIwQjM1ODdGMDAyRTM4MDMgLyogQVZBc3NldE1JTUVUeXBlQ2FjaGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3QzhBRDEyMUQwNzNENjMw
MDg3QzVDRSAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3RjVDRkY1MjU4MkE1MUQwMDY2MkVGNSAvKiBX
ZWJNQXVkaW9VdGlsaXRpZXNDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDdGNUNGRjQyNTgyQTRGODAwNjYyRUY1IC8qIFdlYk1BdWRpb1V0aWxp
dGllc0NvY29hLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMDdGNUNGRjYyNTgyQTUyOTAwNjYyRUY1IC8qIFdlYk1BdWRpb1V0aWxpdGllc0NvY29h
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDdGNUNG
RjIyNTgyQTRGODAwNjYyRUY1IC8qIFdlYk1BdWRpb1V0aWxpdGllc0NvY29hLm1tICovOyB9Owor
CQkwN0Y4NzY4NDFBRDU4MEY5MDA5MDU4NDkgLyogTWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Rjg3Njgz
MUFENEE5NDUwMDkwNTg0OSAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3Rjk0NDE2MTg2NEQw
NDYwMDVEMzFDQiAvKiBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQUU4QzA4MTc0NkI5NTcwMDUzMkQ3
OCAvKiBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwN0ZFOTlERDE4ODA3QTdEMDAyNTY2NDggLyog
TWVkaWFFbGVtZW50U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDdGRTk5REIxODgwN0E3RDAwMjU2NjQ4IC8qIE1lZGlhRWxlbWVudFNlc3Np
b24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkw
N0ZGREU2OTE4MUFFRDQyMDA3MkQ0MDkgLyogTWVkaWFTdHJlYW1UcmFja1ByaXZhdGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3RkZERTY3MTgxQUVE
NDIwMDcyRDQwOSAvKiBNZWRpYVN0cmVhbVRyYWNrUHJpdmF0ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA4MDZFNTdBMTI4OTMwNDUwMDdDRUQz
MiAvKiBTVkdNYXRyaXguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA4MDZFNTc5MTI4OTMwNDUwMDdDRUQzMiAvKiBTVkdNYXRyaXguaCAqLzsgfTsKKwkJ
MDgwRTQ5MjYxMjU1RjNCRDAwRUZDQTI3IC8qIFNWR1RleHRMYXlvdXRFbmdpbmVCYXNlbGluZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDgwRTQ5MjIx
MjU1RjNCRDAwRUZDQTI3IC8qIFNWR1RleHRMYXlvdXRFbmdpbmVCYXNlbGluZS5oICovOyB9Owor
CQkwODBFNDkyODEyNTVGM0JEMDBFRkNBMjcgLyogU1ZHVGV4dExheW91dEVuZ2luZVNwYWNpbmcu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4MEU0OTI0
MTI1NUYzQkQwMEVGQ0EyNyAvKiBTVkdUZXh0TGF5b3V0RW5naW5lU3BhY2luZy5oICovOyB9Owor
CQkwODEwOTNEQzEyNTVGMEU3MDBFRDlEMjkgLyogU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWls
ZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwODEw
OTNEQTEyNTVGMEU3MDBFRDlEMjkgLyogU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyLmgg
Ki87IH07CisJCTA4MTY2OEQ0MTI1NjAzQkYwMDZGMjVERSAvKiBTVkdUZXh0Q2h1bmtCdWlsZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwODE2NjhE
MjEyNTYwM0JGMDA2RjI1REUgLyogU1ZHVGV4dENodW5rQnVpbGRlci5oICovOyB9OworCQkwODE2
NjhEQTEyNTYwM0Q1MDA2RjI1REUgLyogU1ZHVGV4dExheW91dEVuZ2luZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDgxNjY4RDgxMjU2MDNENTAwNkYy
NURFIC8qIFNWR1RleHRMYXlvdXRFbmdpbmUuaCAqLzsgfTsKKwkJMDgxQUE4REExMTExMjM3RTAw
MkFCMDZFIC8qIFNWR0VsZW1lbnRSYXJlRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDgxQUE4RDkxMTExMjM3RTAwMkFCMDZFIC8qIFNWR0VsZW1l
bnRSYXJlRGF0YS5oICovOyB9OworCQkwODFFQkYzQjBGRDM0RjQxMDBEQTc1NTkgLyogU1ZHRmls
dGVyQnVpbGRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDgxRUJGMzkwRkQzNEY0MTAwREE3NTU5IC8qIFNWR0ZpbHRlckJ1aWxkZXIuaCAqLzsgfTsK
KwkJMDgzREFFQTcwRjAxQTdGQjAwMzQyNzU0IC8qIFJlbmRlclRleHRDb250cm9sTXVsdGlMaW5l
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwODNEQUVB
MzBGMDFBN0ZCMDAzNDI3NTQgLyogUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxpbmUuaCAqLzsgfTsK
KwkJMDgzREFFQTkwRjAxQTdGQjAwMzQyNzU0IC8qIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGlu
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDgzREFF
QTUwRjAxQTdGQjAwMzQyNzU0IC8qIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZS5oICovOyB9
OworCQkwODQ1NjgwODEyQjkwREE2MDA5NjBBOUYgLyogRm9udE1ldHJpY3MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NDU2ODA3MTJCOTBEQTYwMDk2
MEE5RiAvKiBGb250TWV0cmljcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTA4NTRCMDE1MTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdJbmxp
bmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NTRC
MDAzMTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdJbmxpbmUuaCAqLzsgfTsKKwkJMDg1NEIw
MTcxMjU1RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR0lubGluZVRleHQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NTRCMDA1MTI1NUU0RTYwMEI5Q0RE
MCAvKiBSZW5kZXJTVkdJbmxpbmVUZXh0LmggKi87IH07CisJCTA4NTRCMDE5MTI1NUU0RTYwMEI5
Q0REMCAvKiBSZW5kZXJTVkdUZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwODU0QjAwNzEyNTVFNEU2MDBCOUNERDAgLyogUmVuZGVyU1ZHVGV4dC5o
ICovOyB9OworCQkwODU0QjAxQjEyNTVFNEU2MDBCOUNERDAgLyogUmVuZGVyU1ZHVGV4dFBhdGgu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NTRCMDA5
MTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdUZXh0UGF0aC5oICovOyB9OworCQkwODU0QjAx
RDEyNTVFNEU2MDBCOUNERDAgLyogUmVuZGVyU1ZHVFNwYW4uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NTRCMDBCMTI1NUU0RTYwMEI5Q0REMCAvKiBS
ZW5kZXJTVkdUU3Bhbi5oICovOyB9OworCQkwODU0QjAxRjEyNTVFNEU2MDBCOUNERDAgLyogU1ZH
SW5saW5lRmxvd0JveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDg1NEIwMEQxMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZUZsb3dCb3guaCAqLzsg
fTsKKwkJMDg1NEIwMjExMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZVRleHRCb3guaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NTRCMDBGMTI1NUU0
RTYwMEI5Q0REMCAvKiBTVkdJbmxpbmVUZXh0Qm94LmggKi87IH07CisJCTA4NTRCMDIzMTI1NUU0
RTYwMEI5Q0REMCAvKiBTVkdSb290SW5saW5lQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwODU0QjAxMTEyNTVFNEU2MDBCOUNERDAgLyogU1ZHUm9v
dElubGluZUJveC5oICovOyB9OworCQkwODU0QjAyNTEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4
dFF1ZXJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
ODU0QjAxMzEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4dFF1ZXJ5LmggKi87IH07CisJCTA4NUI5
MkJCMEVGREU3M0QwMEU2MTIzQyAvKiBGb3JtRGF0YUJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4NUI5MkI5MEVGREU3M0QwMEU2MTIzQyAv
KiBGb3JtRGF0YUJ1aWxkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9
OworCQkwODY0MUQ0ODEyMTQyRjdEMDA4REU5RjYgLyogUmVuZGVySW1hZ2VSZXNvdXJjZVN0eWxl
SW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4
NjQxRDQ2MTIxNDJGN0QwMDhERTlGNiAvKiBSZW5kZXJJbWFnZVJlc291cmNlU3R5bGVJbWFnZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA4NkJC
RDBGMTM2MDM5QzIwMDhCMTVEOCAvKiBHbHlwaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMDg2QkJEMEUxMzYwMzlDMjAwOEIxNUQ4IC8qIEdseXBoLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDg3M0I4
NkIxMzYwNjRFQTAwQTUyMkMyIC8qIEdseXBoUGFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDg3M0I4NkExMzYwNjRFQTAwQTUyMkMyIC8qIEdseXBo
UGFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTA4ODUwNjdGMTFEQTA0NUIwMDE4MkI5OCAvKiBQYWludEluZm8uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4ODUwNjdEMTFEQTA0NUIwMDE4MkI5OCAv
KiBQYWludEluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkwODg1MDY4MDExREEwNDVCMDAxODJCOTggLyogUGFpbnRQaGFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDg4NTA2N0UxMURBMDQ1QjAw
MTgyQjk4IC8qIFBhaW50UGhhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkwODhBMEUwQzEyNkVGMURCMDA5NzhGN0EgLyogU1ZHUHJvcGVydHlU
cmFpdHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4
OEEwRTAzMTI2RUYxREIwMDk3OEY3QSAvKiBTVkdQcm9wZXJ0eVRyYWl0cy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA4OEMyRjdBMTIzOTAwODEw
MDNENjVDRSAvKiBTVkdUZXh0TGF5b3V0QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDg4QzJGNzYxMjM5MDA4MDAwM0Q2NUNFIC8qIFNW
R1RleHRMYXlvdXRBdHRyaWJ1dGVzLmggKi87IH07CisJCTA4OTU4MjU2MEU4NTdBN0UwMEY4MkM4
MyAvKiBJbWFnZUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDg5NTgyNTQwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDhBNDg0NzgwRTUy
NzJDNTAwQzNGRTc2IC8qIFNjcmlwdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4QTQ4NDc2MEU1MjcyQzUwMEMzRkU3NiAvKiBTY3JpcHRF
bGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMDhDN0EyQzcxMERDNzQ2MjAwMkQzNjhCIC8qIFNWR05hbWVzLmggaW4gQ29weSBHZW5lcmF0
ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTY1ODFFOTA5
RDE1MDhEMDAwRTYxRDcgLyogU1ZHTmFtZXMuaCAqLzsgfTsKKwkJMDhDOTI1MUEwRkNDN0M0QTAw
NDgwREVDIC8qIEZpbHRlckVmZmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDhDOTI1MTgwRkNDN0M0QTAwNDgwREVDIC8qIEZpbHRlckVmZmVjdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA4RURF
MTlGMTJBNTBCOEUwMEI5NTc5NyAvKiBTVkdSZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwOEVERTE5RTEyQTUwQjhFMDBCOTU3OTcgLyogU1ZHUmVj
dC5oICovOyB9OworCQkwOEYwQkZDMzEyNTVDNTNDMDAwNzUxODUgLyogU1ZHVGV4dENodW5rLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwOEYwQkZCRTEy
NTVDNTNDMDAwNzUxODUgLyogU1ZHVGV4dENodW5rLmggKi87IH07CisJCTA4RjBCRkM0MTI1NUM1
M0MwMDA3NTE4NSAvKiBTVkdUZXh0RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4RjBCRkJGMTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0
RnJhZ21lbnQuaCAqLzsgfTsKKwkJMDhGMEJGQzYxMjU1QzUzQzAwMDc1MTg1IC8qIFNWR1RleHRN
ZXRyaWNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
OEYwQkZDMTEyNTVDNTNDMDAwNzUxODUgLyogU1ZHVGV4dE1ldHJpY3MuaCAqLzsgfTsKKwkJMDhG
MkYwMEExMjEzRTYxNzAwRENFQzQ4IC8qIFJlbmRlckltYWdlUmVzb3VyY2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA4RjJGMDA4MTIxM0U2MTcwMERD
RUM0OCAvKiBSZW5kZXJJbWFnZVJlc291cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDhGODU5RDUxNDYzRjlDRDAwNjdEOTMzIC8qIFNWR0lt
YWdlQ2FjaGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA4Rjg1OUQzMTQ2M0Y5Q0QwMDY3RDkzMyAvKiBTVkdJbWFnZUNhY2hlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDhGODU5RDUxNDYzRjlDRDAw
NjdEOTM0IC8qIFNWR0ltYWdlRm9yQ29udGFpbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwOEY4NTlEMzE0NjNGOUNEMDA2N0Q5MzQgLyogU1ZHSW1h
Z2VGb3JDb250YWluZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkwQUZEQUMzRDEwRjU0NDhDMDBFMUYzRDIgLyogUGx1Z2luVmlld0Jhc2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBBRkRBQzNDMTBG
NTQ0OEMwMEUxRjNEMiAvKiBQbHVnaW5WaWV3QmFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBCOTA1NjFBMEYyNTc4QkYwMDk1RkY2QSAvKiBE
b2N1bWVudFRocmVhZGFibGVMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDBCOTA1NjE2MEYyNTc4QkUwMDk1RkY2QSAvKiBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OworCQkw
QjkwNTYxQjBGMjU3OEJGMDA5NUZGNkEgLyogVGhyZWFkYWJsZUxvYWRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEI5MDU2MTcwRjI1NzhCRTAwOTVG
RjZBIC8qIFRocmVhZGFibGVMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkwQjkwNTYxQzBGMjU3OEJGMDA5NUZGNkEgLyogVGhyZWFkYWJs
ZUxvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMEI5MDU2MTgwRjI1NzhCRTAwOTVGRjZBIC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwQjkw
NTZGOTBGMjY4NUYzMDA5NUZGNkEgLyogV29ya2VyVGhyZWFkYWJsZUxvYWRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEI5MDU2RjcwRjI2ODVGMzAw
OTVGRjZBIC8qIFdvcmtlclRocmVhZGFibGVMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9ICgpOyB9OyB9OworCQkwQkNGODNGNzEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MRnJh
Y3Rpb25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAwQkNGODNGMDEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MRnJhY3Rpb25FbGVtZW50Lmgg
Ki87IH07CisJCTBCRTAzMEEyMEYzMTEyRkIwMDNDMUE0NiAvKiBSZW5kZXJMaW5lQm94TGlzdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEJFMDMwQTEw
RjMxMTJGQjAwM0MxQTQ2IC8qIFJlbmRlckxpbmVCb3hMaXN0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEMzRjFGNUIxMEM4ODcxMjAwRDcyQ0Ux
IC8qIFdlYkdMVW5pZm9ybUxvY2F0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwQzNGMUY1ODEwQzg4NzEyMDBENzJDRTEgLyogV2ViR0xVbmlmb3Jt
TG9jYXRpb24uaCAqLzsgfTsKKwkJMEM0NTM0MjgxMENEQkJGQTAwODY5MTU3IC8qIEpTV2ViR0xV
bmlmb3JtTG9jYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBDNDUzNDI2MTBDREJCRkEwMDg2OTE1NyAvKiBKU1dlYkdMVW5pZm9ybUxvY2F0aW9u
LmggKi87IH07CisJCTBFNzA1OEY0MUJDNUNFREEwMDQ1QTUwNyAvKiBTZWFyY2hQb3B1cE1lbnVD
b2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEU3
MDU4RjMxQkM1Q0NENzAwNDVBNTA3IC8qIFNlYXJjaFBvcHVwTWVudUNvY29hLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEYwM0MwNzQxODg0Njk1
RTAwQTVGOENBIC8qIFN5c3RlbU1lbW9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMEYwM0MwNzMxODg0Njk1RTAwQTVGOENBIC8qIFN5c3RlbU1lbW9y
eS5oICovOyB9OworCQkwRjAzQzA3NTE4ODQ4MDU1MDBBNUY4Q0EgLyogSW5zcGVjdG9yT3Zlcmxh
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M1MjJE
NEExNUI0NzhCMjAwOUI3Qzk1IC8qIEluc3BlY3Rvck92ZXJsYXkuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjA5OUQwOTE3Qjk2OEExMDBGRjg0
QjkgLyogV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjA5OUQwNzE3Qjk2OEExMDBGRjg0QjkgLyogV2Vi
Q29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEYxMTc4MTgyMkUzQzQ3RjAwOEJENTcwIC8qIEZyYW1lSWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MEYxMTc4MTYyMkUzQzQ3RTAwOEJENTcwIC8qIEZyYW1lSWRlbnRpZmllci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGMTFBNTRGMEYzOTIzMzEw
MEMzNzg4NCAvKiBSZW5kZXJTZWxlY3Rpb25JbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjExQTU0RTBGMzkyMzMxMDBDMzc4ODQgLyogUmVuZGVy
U2VsZWN0aW9uSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTBGMTMxNjNFMTZFRDBDQzgwMDM1Q0MwNCAvKiBQbGF0Zm9ybUNBRmlsdGVycy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEYxMzE2M0Qx
NkVEMENDODAwMzVDQzA0IC8qIFBsYXRmb3JtQ0FGaWx0ZXJzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEYxNUVENUMxQjdFQzdDNTAwRURERkVC
IC8qIFdpbGxDaGFuZ2VEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwRjE1RUQ1QTFCN0VDN0M1MDBFRERGRUIgLyogV2lsbENoYW5nZURhdGEuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjE3NzQ4
MDEzNzhCNzcyMDA5REE3NkEgLyogU2Nyb2xsQW5pbWF0b3JJT1MuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGMTc3NDdFMTM3OEI3NzEwMDlEQTc2QSAv
KiBTY3JvbGxBbmltYXRvcklPUy5oICovOyB9OworCQkwRjFBMEMzODIyOUE0ODE4MDBEMzdBREIg
LyogVmVsb2NpdHlEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwRjFBMEMzNjIyOUE0ODE4MDBEMzdBREIgLyogVmVsb2NpdHlEYXRhLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEYzN0YwODUyMjAy
QkY5ODAwQTg5QzBCIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGVNYWMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGMzdGMDg0MjIw
MkFDQjcwMEE4OUMwQiAvKiBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRlTWFjLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEYzREQ0
NTAxMkY1RUExQjAwMEQ5MTkwIC8qIFNoYWRvd0JsdXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGM0RENDRFMTJGNUVBMUIwMDBEOTE5MCAvKiBTaGFk
b3dCbHVyLmggKi87IH07CisJCTBGM0YwRTVBMTU3MDMwQzMwMDZEQTU3RiAvKiBSZW5kZXJHZW9t
ZXRyeU1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MEYzRjBFNTgxNTcwMzBDMzAwNkRBNTdGIC8qIFJlbmRlckdlb21ldHJ5TWFwLmggKi87IH07CisJ
CTBGNDcxMEFGMURCNTZBRkMwMDJEQ0VDMyAvKiBET01SZWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjQ3MTBBOTFEQjU2QUZDMDAyRENFQzMgLyog
RE9NUmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTBGNDcxMEIxMURCNTZBRkMwMDJEQ0VDMyAvKiBET01SZWN0SW5pdC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0NzEwQUIxREI1NkFGQzAwMkRD
RUMzIC8qIERPTVJlY3RJbml0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMEY0NzEwQjMxREI1NkFGQzAwMkRDRUMzIC8qIERPTVJlY3RSZWFkT25s
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0NzEw
QUQxREI1NkFGQzAwMkRDRUMzIC8qIERPTVJlY3RSZWFkT25seS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNDcxMEJDMURCNTZCRTgwMDJEQ0VD
MyAvKiBKU0RPTVJlY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBGNDcxMEI2MURCNTZCRTgwMDJEQ0VDMyAvKiBKU0RPTVJlY3QuaCAqLzsgfTsKKwkJ
MEY0NzEwQkUxREI1NkJFODAwMkRDRUMzIC8qIEpTRE9NUmVjdEluaXQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNDcxMEI4MURCNTZCRTgwMDJEQ0VD
MyAvKiBKU0RPTVJlY3RJbml0LmggKi87IH07CisJCTBGNDcxMEMwMURCNTZCRTgwMDJEQ0VDMyAv
KiBKU0RPTVJlY3RSZWFkT25seS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMEY0NzEwQkExREI1NkJFODAwMkRDRUMzIC8qIEpTRE9NUmVjdFJlYWRPbmx5
LmggKi87IH07CisJCTBGNDcxMERDMURCNkZFMjIwMDJEQ0VDMyAvKiBJbnRlcnNlY3Rpb25PYnNl
cnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0
NzEwRDYxREI2RkUyMjAwMkRDRUMzIC8qIEludGVyc2VjdGlvbk9ic2VydmVyLmggKi87IH07CisJ
CTBGNDcxMERGMURCNkZFMjIwMDJEQ0VDMyAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjQ3MTBEOTFE
QjZGRTIyMDAyRENFQzMgLyogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oICovOyB9OworCQkw
RjQ3MTBFNjFEQjcwMEM3MDAyRENFQzMgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0NzEwRTIxREI3MDBD
NzAwMkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaCAqLzsgfTsKKwkJMEY0NzEwRTgx
REI3MDBDNzAwMkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0NzEwRTQxREI3MDBDNzAw
MkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oICovOyB9OworCQkwRjQ5NjY5
RDFEQjQwOEMxMDBBMjc0QkIgLyogRE9NUG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNDk2Njk5MURCNDA4QzEwMEEyNzRCQiAvKiBET01Qb2lu
dC5oICovOyB9OworCQkwRjQ5NjY5RjFEQjQwOEMxMDBBMjc0QkIgLyogRE9NUG9pbnRSZWFkT25s
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0OTY2
OUIxREI0MDhDMTAwQTI3NEJCIC8qIERPTVBvaW50UmVhZE9ubHkuaCAqLzsgfTsKKwkJMEY0OTY2
QTMxREI0MDkxMDAwQTI3NEJCIC8qIERPTVBvaW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0OTY2QTIxREI0MDkxMDAwQTI3NEJCIC8qIERP
TVBvaW50SW5pdC5oICovOyB9OworCQkwRjQ5NjZBQjFEQjQwQzQzMDBBMjc0QkIgLyogSlNET01Q
b2ludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY0
OTY2QTUxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnQuaCAqLzsgfTsKKwkJMEY0OTY2QUQx
REI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjQ5NjZBNzFEQjQwQzQzMDBBMjc0QkIgLyogSlNE
T01Qb2ludEluaXQuaCAqLzsgfTsKKwkJMEY0OTY2QUYxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9N
UG9pbnRSZWFkT25seS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMEY0OTY2QTkxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnRSZWFkT25seS5oICov
OyB9OworCQkwRjRENUQxODI2Q0NDNEFFMDBBOURGQzEgLyogTGF5ZXJUcmVlQXNUZXh0T3B0aW9u
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY3MzZF
Q0EyNkNDQjk3QTAwMEFEN0NBIC8qIExheWVyVHJlZUFzVGV4dE9wdGlvbnMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjUzRkI4NDIxM0I3QTY0
MDBDNDBEMzQgLyogUmVuZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY1M0ZCODQyMTNCNzg2NDAwQzQwRDM0IC8q
IFJlbmRlckxheWVyU2Nyb2xsYWJsZUFyZWEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkwRjU0RENFNjE4ODEwNTFEMDAzRUVEQkIgLyogVGV4dEF1
dG9TaXppbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDBGNTREQ0U0MTg4MTA1MUQwMDNFRURCQiAvKiBUZXh0QXV0b1NpemluZy5oICovOyB9OworCQkw
RjU0REQwODE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNTRERDA1MTg4MUQ1RjUwMDNFRURCQiAvKiBUb3Vj
aC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBG
NTRERDA5MTg4MUQ1RjUwMDNFRURCQiAvKiBUb3VjaEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjU0REQwNjE4ODFENUY1MDAzRUVEQkIgLyog
VG91Y2hFdmVudC5oICovOyB9OworCQkwRjU0REQwQTE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2hM
aXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjU0
REQwNzE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2hMaXN0LmggKi87IH07CisJCTBGNTYwMjhGMEU0
Qjc2NTgwMDY1QjAzOCAvKiBSZW5kZXJNYXJxdWVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjU2MDI4RDBFNEI3NjU4MDA2NUIwMzggLyogUmVuZGVy
TWFycXVlZS5oICovOyB9OworCQkwRjU4MEIwRDBGMTJBMjY5MDA1MUQ2ODkgLyogR3JhcGhpY3NM
YXllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY1
ODBCMEEwRjEyQTI2OTAwNTFENjg5IC8qIEdyYXBoaWNzTGF5ZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjU4MEIwRTBGMTJBMjY5MDA1MUQ2
ODkgLyogR3JhcGhpY3NMYXllckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMEY1ODBCMEIwRjEyQTI2OTAwNTFENjg5IC8qIEdyYXBoaWNzTGF5
ZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkwRjU4MENGRDBGMTJERTlCMDA1MUQ2ODkgLyogUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjU4MENGOTBG
MTJERTlCMDA1MUQ2ODkgLyogUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY1ODBDRkYwRjEyREU5QjAwNTFE
Njg5IC8qIFJlbmRlckxheWVyQmFja2luZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMEY1ODBDRkIwRjEyREU5QjAwNTFENjg5IC8qIFJlbmRlckxheWVy
QmFja2luZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTBGNTgwRkEzMTQ5NjkzOTEwMEZCNUJEOCAvKiBXZWJUaWxlZEJhY2tpbmdMYXllci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY1ODBGQTExNDk2
OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLmggKi87IH07CisJCTBGNTgwRkFG
MTQ5ODAwRDQwMEZCNUJEOCAvKiBBbmltYXRpb25VdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNTgwRkFFMTQ5ODAwRDQwMEZCNUJEOCAv
KiBBbmltYXRpb25VdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkwRjVCN0E1NTEwRjY1RDdBMDAzNzYzMDIgLyogUmVuZGVyRW1iZWRk
ZWRPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDBGNUI3QTUzMTBGNjVEN0EwMDM3NjMwMiAvKiBSZW5kZXJFbWJlZGRlZE9iamVjdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNURBOEIxMjJC
ODU2MzkwMEMyNjZGQSAvKiBTY3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjlCNTQ3NTIy
QjRBNzcyMDA3QjVFOEEgLyogU2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNUUy
MDA2MThFNzcxRkMwMDNFQzNFNSAvKiBQbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGNUUyMDA1MThFNzcxRkMw
MDNFQzNFNSAvKiBQbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjYwNUFFRDE1Rjk0ODQ4MDA0REYwQzAg
LyogU2Nyb2xsaW5nQ29uc3RyYWludHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDBGNjA1QUVCMTVGOTQ4NDgwMDRERjBDMCAvKiBTY3JvbGxpbmdDb25z
dHJhaW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTBGNjBGMzJCMURGQkIxMDcwMDQxNkQ2QyAvKiBDb21tb25WTS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2MEYzMkExREZCQjEwNDAwNDE2RDZD
IC8qIENvbW1vblZNLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMEY2MzgzREUxODYxNUIyOTAwM0U1REI1IC8qIFRocmVhZGVkU2Nyb2xsaW5nVHJl
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2Mzgz
REMxODYxNUIyOTAwM0U1REI1IC8qIFRocmVhZGVkU2Nyb2xsaW5nVHJlZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNkExMkJFMUEwMDkyMzcw
MEM2REU3MiAvKiBEZWJ1Z1BhZ2VPdmVybGF5cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMEY2QTEyQkMxQTAwOTIzNzAwQzZERTcyIC8qIERlYnVnUGFn
ZU92ZXJsYXlzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMEY2QjcwN0EyMzdCQzM2RDAwNTJDQTQ3IC8qIENTU1VuaXRzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjZCNzA3NzIzN0JDMTJGMDA1MkNB
NDcgLyogQ1NTVW5pdHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkwRjczQjc2OTIyMkIzQTBDMDA4MDUzMTYgLyogU2Nyb2xsaW5nVHJlZU92ZXJm
bG93U2Nyb2xsaW5nTm9kZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMEZDMDUxNkEyMTlCNUVCRTAwMzFDMzlFIC8qIFNjcm9sbGluZ1RyZWVPdmVy
Zmxvd1Njcm9sbGluZ05vZGVNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkwRjc2OEMyRDI2RDAzODQxMDA4REJFMEIgLyogVXNlck1lZGlhUmVx
dWVzdElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBGNzY4QzJCMjZEMDM4NDEwMDhEQkUwQiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRp
Zmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTBGNzY4QzM1MjZEMEFCMzkwMDhEQkUwQiAvKiBNZWRpYUtleVN5c3RlbVJlcXVlc3RJZGVudGlm
aWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjc2
OEMzMzI2RDBBQjM5MDA4REJFMEIgLyogTWVkaWFLZXlTeXN0ZW1SZXF1ZXN0SWRlbnRpZmllci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGNzkw
RjQzMjUxN0NFNkUwMDlCQTAzNCAvKiBEaXNwbGF5Vmlldy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY3OTBGM0YyNTE3Q0U2RDAwOUJBMDM0IC8qIERp
c3BsYXlWaWV3LmggKi87IH07CisJCTBGN0QwNzMzMTg4NEM1NkMwMEI0QUY4NiAvKiBQbGF0Zm9y
bVRleHRUcmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDcyODQ3RTIxNkVCQzVCMDAwNDNDRkE0IC8qIFBsYXRmb3JtVGV4dFRyYWNrLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY4NTBGRTMxRUQ3
QzE4MzAwRkI3N0E3IC8qIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY4NTBGRTIxRUQ3QzE4MzAwRkI3N0E3
IC8qIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGODcxNjcwMUM4NjlEODMwMDRGRjBERSAvKiBMZW5n
dGhQb2ludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MEY4NzE2NkUxQzg2OUQ4MzAwNEZGMERFIC8qIExlbmd0aFBvaW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY4QjQ1NzIxREMzRkJBMzAwNDQz
QzNGIC8qIEludGVyc2VjdGlvbk9ic2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGOEI0NTcxMURDM0ZCQTMwMDQ0M0MzRiAvKiBJ
bnRlcnNlY3Rpb25PYnNlcnZlckNhbGxiYWNrLmggKi87IH07CisJCTBGOEI0NTc2MURDNDFEQkEw
MDQ0M0MzRiAvKiBKU0ludGVyc2VjdGlvbk9ic2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGOEI0NTc0MURDNDFEQkEwMDQ0M0Mz
RiAvKiBKU0ludGVyc2VjdGlvbk9ic2VydmVyQ2FsbGJhY2suaCAqLzsgfTsKKwkJMEY5NEI2NDcy
MjA4RkUzNjAwMTU3MDE0IC8qIFNjcm9sbGluZ1RyZWVGaXhlZE5vZGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGOTRCNjQyMjIwOEY3MDEwMDE1NzAx
NCAvKiBTY3JvbGxpbmdUcmVlRml4ZWROb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY5NEI2NDkyMjA4RkUzQjAwMTU3MDE0IC8qIFNjcm9s
bGluZ1RyZWVTdGlja3lOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwRjk0QjY0MzIyMDhGNzAyMDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJlZVN0aWNr
eU5vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkwRjk0QjY1MjIyMDkxNTA2MDAxNTcwMTQgLyogU2Nyb2xsaW5nU3RhdGVQb3NpdGlvbmVkTm9k
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY5NEI2
NTEyMjA5MTRGRjAwMTU3MDE0IC8qIFNjcm9sbGluZ1N0YXRlUG9zaXRpb25lZE5vZGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRjk0QjY1NTIy
MDkzMUU0MDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJlZVBvc2l0aW9uZWROb2RlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRjk0QjY1MzIyMDkxNTZDMDAx
NTcwMTQgLyogU2Nyb2xsaW5nVHJlZVBvc2l0aW9uZWROb2RlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY5NEYzN0UyMzY2MTYyNjAwM0FBNUM3
IC8qIFN0eWxlUnVsZVR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDBGOTRGMzdDMjM2NjExMzEwMDNBQTVDNyAvKiBTdHlsZVJ1bGVUeXBlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEY5REFBMEYx
RkQxQzY2QTAwNzlDNUIyIC8qIERPTUdDT3V0cHV0Q29uc3RyYWludC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEY5REFBMEUxRkQxQzY2NDAwNzlDNUIy
IC8qIERPTUdDT3V0cHV0Q29uc3RyYWludC5oICovOyB9OworCQkwRkEyNEQ3QTE2MkRGOTE5MDBB
M0Y0QzAgLyogR3JhcGhpY3NMYXllclVwZGF0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGQTI0RDc4MTYyREY5MTkwMEEzRjRDMCAvKiBHcmFwaGlj
c0xheWVyVXBkYXRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTBGQjYyNTJGMThERTFCMTUwMEEwN0MwNSAvKiBHZW9tZXRyeVV0aWxpdGllcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEZCNjI1MkQx
OERFMUIxNTAwQTA3QzA1IC8qIEdlb21ldHJ5VXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEZCODg5MEYxNjdEMzAxNjAwMTBDREE1
IC8qIFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMEZCODg5MEQxNjdEMzAxNjAwMTBDREE1IC8qIFNjcm9sbGlu
Z1N0YXRlU3RpY2t5Tm9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTBGQkI1RkJFMjYwOTkxRDIwMDU0NTcyQyAvKiBEaXNwbGF5UmVmcmVzaE1v
bml0b3JGYWN0b3J5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAwRkJCNUZCRDI2MDk1QTlDMDA1NDU3MkMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yRmFj
dG9yeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTBGQkI1RkNDMjYwRTlFMDcwMDU0NTcyQyAvKiBEaXNwbGF5VXBkYXRlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkJCNUZDQjI2MEU5QjQ0MDA1NDU3
MkMgLyogRGlzcGxheVVwZGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTBGQzRCMDA2MjJCOUEwMkQwMENGM0IxRSAvKiBTY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDBGQzRCMDA0MjJCOUEwMkMwMENGM0IxRSAvKiBTY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkwRkNGMzMyRjBGMkI5QTI1MDA0QjY3OTUgLyogV2ViTGF5ZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGQ0YzMzJC
MEYyQjlBMjUwMDRCNjc5NSAvKiBXZWJMYXllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGRDMwODBGMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5k
ZXJGcmFtZUJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDBGRDMwODBEMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5kZXJGcmFtZUJhc2UuaCAqLzsgfTsK
KwkJMEZEMzA4RDYxMTdEMTY4NTAwQTc5MUY3IC8qIFJlbmRlcklGcmFtZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEZEMzA4RDQxMTdEMTY4NDAwQTc5
MUY3IC8qIFJlbmRlcklGcmFtZS5oICovOyB9OworCQkwRkQ0MUU2ODIxRjgwQzBFMDAwQzAwNkQg
LyogU2Nyb2xsaW5nVHJlZUZyYW1lSG9zdGluZ05vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRDQxRTY2MjFGODAyODIwMDBDMDA2RCAvKiBTY3Jv
bGxpbmdUcmVlRnJhbWVIb3N0aW5nTm9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTBGRDQxRTY5MjFGODBEMTQwMDBDMDA2RCAvKiBTY3JvbGxp
bmdTdGF0ZUZyYW1lSG9zdGluZ05vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDBGRDQxRTY1MjFGODAyNjEwMDBDMDA2RCAvKiBTY3JvbGxpbmdTdGF0
ZUZyYW1lSG9zdGluZ05vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkwRkQ2QTY4NTI2RUVDMjIxMDA3QjIyMzEgLyogSlNSZXNpemVPYnNlcnZl
ck9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDBGRDZBNjgyMjZFRUMxRDkwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyT3B0aW9ucy5oICov
OyB9OworCQkwRkQ2QTY4NzI2RUVDMjI2MDA3QjIyMzEgLyogSlNSZXNpemVPYnNlcnZlclNpemUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRDZBNjdE
MjZFRUMwNzYwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyU2l6ZS5oICovOyB9OworCQkwRkQ2
QTY4ODI2RUVDMjJCMDA3QjIyMzEgLyogSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRDZBNjdDMjZFRUMw
NzYwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyQm94T3B0aW9ucy5oICovOyB9OworCQkwRkQ2
QTY4QTI2RUVDMzJCMDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkQ2QTY4OTI2RUVDMzJBMDA3
QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRpb25zLmggKi87IH07CisJCTBGRDZBNjhDMjZFRUMz
N0YwMDdCMjIzMSAvKiBSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRDZBNjhCMjZFRUMzN0YwMDdCMjIzMSAv
KiBSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaCAqLzsgfTsKKwkJMEZENkE2OEUyNkVFQzVFOTAw
N0IyMjMxIC8qIFJlc2l6ZU9ic2VydmVyU2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMEZENkE2OEQyNkVFQzVFODAwN0IyMjMxIC8qIFJlc2l6ZU9i
c2VydmVyU2l6ZS5oICovOyB9OworCQkwRkQ3MjM4MjBFQzhCRDkzMDBDQTVERDcgLyogRmxvYXRR
dWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkQ3
MjM4MDBFQzhCRDkzMDBDQTVERDcgLyogRmxvYXRRdWFkLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMEZEOTc1RDUyNDVDQ0I0NzAwQzQyMjk5IC8q
IFNjcm9sbGluZ1RyZWVHZXN0dXJlU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDBGRDk3NUQyMjQ1Q0JEQUYwMEM0MjI5OSAvKiBTY3JvbGxpbmdU
cmVlR2VzdHVyZVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMEZEQTdDMTcxODgzMjJFQjAwQzk1NEI1IC8qIEpTVG91Y2guaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGREE3QzExMTg4MzIyRUIw
MEM5NTRCNSAvKiBKU1RvdWNoLmggKi87IH07CisJCTBGREE3QzE5MTg4MzIyRUIwMEM5NTRCNSAv
KiBKU1RvdWNoRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBGREE3QzEzMTg4MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoRXZlbnQuaCAqLzsgfTsK
KwkJMEZEQTdDMUIxODgzMjJFQjAwQzk1NEI1IC8qIEpTVG91Y2hMaXN0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkRBN0MxNTE4ODMyMkVCMDBDOTU0
QjUgLyogSlNUb3VjaExpc3QuaCAqLzsgfTsKKwkJMEZEQTdDMUYxODgzMjJGQzAwQzk1NEI1IC8q
IEpTR2VzdHVyZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAwRkRBN0MxRDE4ODMyMkZDMDBDOTU0QjUgLyogSlNHZXN0dXJlRXZlbnQuaCAqLzsg
fTsKKwkJMEZEQTdDMjcxODgzMzMzMjAwQzk1NEI1IC8qIEpTV2ViS2l0UGxheWJhY2tUYXJnZXRB
dmFpbGFiaWxpdHlFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMEZEQTdDMjUxODgzMzMzMjAwQzk1NEI1IC8qIEpTV2ViS2l0UGxheWJhY2tUYXJn
ZXRBdmFpbGFiaWxpdHlFdmVudC5oICovOyB9OworCQkwRkRDRDdGMzFENDdFNjU1MDA5RjA4QkMg
LyogTG9nSW5pdGlhbGl6YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDBGRENEN0YyMUQ0N0U2NTUwMDlGMDhCQyAvKiBMb2dJbml0aWFsaXphdGlv
bi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBG
RTU4MDY0MTkzMjdBNjIwMERFMzJFQiAvKiBTY3JvbGxpbmdUcmVlTWFjLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkU1ODA2MjE5MzI3QTYyMDBERTMy
RUIgLyogU2Nyb2xsaW5nVHJlZU1hYy5oICovOyB9OworCQkwRkU1RkJEMzFDM0RENTFFMDAwN0Ey
Q0EgLyogRGlzcGxheUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDBGRTVGQkNCMUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGRTVGQkQ1MUMz
REQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdEl0ZW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkU1RkJDRDFDM0RENTFFMDAwN0EyQ0EgLyogRGlz
cGxheUxpc3RJdGVtcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTBGRTVGQkQ3MUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdFJlY29yZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkU1RkJD
RjFDM0RENTFFMDAwN0EyQ0EgLyogRGlzcGxheUxpc3RSZWNvcmRlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGRTVGQkQ5MUMzREQ1MUUwMDA3
QTJDQSAvKiBEaXNwbGF5TGlzdFJlcGxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAwRkU1RkJEMTFDM0RENTFFMDAwN0EyQ0EgLyogRGlzcGxheUxp
c3RSZXBsYXllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTBGRTcxNDA2MTQyMTcwQjgwMERCMzNCQSAvKiBTY3JvbGxiYXJUaGVtZU1vY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRTcxNDA0MTQy
MTcwQjgwMERCMzNCQSAvKiBTY3JvbGxiYXJUaGVtZU1vY2suaCAqLzsgfTsKKwkJMEZFQTNFN0Ix
OTFCMkZDNTAwMEYxQjU1IC8qIFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkVBM0U3OTE5MUIy
RkM1MDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRkVBM0U4MDE5MUIz
MTY5MDAwRjFCNTUgLyogU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMEZFQTNFN0UxOTFCMzE2
OTAwMEYxQjU1IC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRkVBM0U4NDE5MUIz
MUJGMDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbGluZ05vZGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDBGRUEzRTgyMTkxQjMx
QkYwMDBGMUI1NSAvKiBTY3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGRUEzRTg4MTkx
QjNCRDcwMDBGMUI1NSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkVBM0U4NjE5MUIzQkQ3
MDAwRjFCNTUgLyogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTBGRUFGNjZCMjNCRkMzOUUw
MDQwMzBEQSAvKiBDb2xvclV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMEZFNkM3NkMxRkJGQjdBNjAwMjVDMDUzIC8qIENvbG9yVXRpbGl0
aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MEZFQzEyMEMyMkJGMkNEMjAwNEU5RDM1IC8qIExheWVyQW5jZXN0b3JDbGlwcGluZ1N0YWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkVDMTIwOTIy
QkYyQ0M3MDA0RTlEMzUgLyogTGF5ZXJBbmNlc3RvckNsaXBwaW5nU3RhY2suaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwRkYzQjkyOTFFRTNCNkRF
MDBCODQxNDQgLyogSlNET01RdWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwRkYzQjkyNTFFRTNCNkRFMDBCODQxNDQgLyogSlNET01RdWFkLmggKi87
IH07CisJCTBGRjNCOTJCMUVFM0I2REUwMEI4NDE0NCAvKiBKU0RPTVF1YWRJbml0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkYzQjkyNzFFRTNCNkRF
MDBCODQxNDQgLyogSlNET01RdWFkSW5pdC5oICovOyB9OworCQkwRkY1MDI2QTEwMkJBOTQzMDA2
NkYzOUEgLyogSlNTdHlsZU1lZGlhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwRkY1MDI2ODEwMkJBOTQzMDA2NkYzOUEgLyogSlNTdHlsZU1lZGlhLmgg
Ki87IH07CisJCTBGRjUwMjcyMTAyQkE5NkEwMDY2RjM5QSAvKiBTdHlsZU1lZGlhLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkY1MDI2RjEwMkJBOTZB
MDA2NkYzOUEgLyogU3R5bGVNZWRpYS5oICovOyB9OworCQkwRkY4MzVDMzFFRTM1NERBMDA4QjRD
QzcgLyogRE9NUXVhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMEZGODM1QkUxRUUzNTREQTAwOEI0Q0M3IC8qIERPTVF1YWQuaCAqLzsgfTsKKwkJMEZG
ODM1QzUxRUUzNTREQTAwOEI0Q0M3IC8qIERPTVF1YWRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwRkY4MzVDMDFFRTM1NERBMDA4QjRDQzcgLyog
RE9NUXVhZEluaXQuaCAqLzsgfTsKKwkJMEZGRDQ1QUEyNDNDMzAyNzAwMEQ0QkVBIC8qIFNjcm9s
bGluZ1RyZWVMYXRjaGluZ0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDBGRkQ0NUE3MjQzQkYyNTcwMDBENEJFQSAvKiBTY3JvbGxpbmdU
cmVlTGF0Y2hpbmdDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMEZGRDRENjExODY1MUZBMzAwNTEyRjZFIC8qIEFzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDBGRkQ0RDVGMTg2NTFGQTMwMDUxMkY2RSAvKiBBc3luY1Njcm9sbGluZ0Nvb3JkaW5h
dG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MTBGQjA4NEIxNEUxNUM3RTAwQTNEQjk4IC8qIFB1YmxpY1VSTE1hbmFnZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDEwRkIwODRBMTRFMTVDN0UwMEEz
REI5OCAvKiBQdWJsaWNVUkxNYW5hZ2VyLmggKi87IH07CisJCTExMUZBMUM3MjZGMEYzMEYwMDNC
OEYxNiAvKiBJbmxpbmVJbnZhbGlkYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDExMUZBMUM1MjZGMEYzMEYwMDNCOEYxNiAvKiBJbmxpbmVJbnZh
bGlkYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkxMTFGQTFDODI2RjBGMzBGMDAzQjhGMTYgLyogSW5saW5lRGFtYWdlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMTFGQTFDNjI2RjBGMzBGMDAz
QjhGMTYgLyogSW5saW5lRGFtYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMTEzMTBDRjIyMEJBNEEzMjAwNjVBOEQwIC8qIExheW91dFRyZWVC
dWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
MTEwMEZENzIwOTUxNERGMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxMTMxMENGMzIwQkE0QTM3
MDA2NUE4RDAgLyogTGF5b3V0UmVwbGFjZWRCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExMUM2MTU2MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRS
ZXBsYWNlZEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTExMzEwQ0Y0MjBCQTRBM0QwMDY1QThEMCAvKiBMYXlvdXRJdGVyYXRvci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTExMDBGQzcyMDkyNzY0
QzAwODFBQTZDIC8qIExheW91dEl0ZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTEzMTBDRjUyMEJBNEE0QzAwNjVBOEQwIC8qIExheW91
dERlc2NlbmRhbnRJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTFCMDQyRkIyMEIwRTIxNDAwODI4QTZCIC8qIExheW91dERlc2NlbmRhbnRJ
dGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTExMzEwQ0Y2MjBCQTRBNTYwMDY1QThEMCAvKiBMYXlvdXRDaGlsZEl0ZXJhdG9yLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMTEwMEZDOTIwOTI3
Q0JDMDA4MUFBNkMgLyogTGF5b3V0Q2hpbGRJdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTExMzQwOURBMjAzRTAzODAwMEM2NjkxNSAv
KiBSZW5kZXJUcmVlQnVpbGRlckNvbnRpbnVhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTEzNDA5RDgyMDNFMDM4MDAwQzY2OTE1IC8qIFJlbmRl
clRyZWVCdWlsZGVyQ29udGludWF0aW9uLmggKi87IH07CisJCTExM0QwQjUyMUY5RkREMkIwMEY2
MTFCQiAvKiBGcmFtZVZpZXdMYXlvdXRDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMTNEMEI1MDFGOUZERDJCMDBGNjExQkIgLyogRnJhbWVW
aWV3TGF5b3V0Q29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTExNTEzRDAzMjZEOTgxRTgwMDREM0ZBQSAvKiBJbmxpbmVEaXNwbGF5Q29u
dGVudEJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDExNTEzRDAyMjZEOTgxRTcwMDREM0ZBQSAvKiBJbmxpbmVEaXNwbGF5Q29udGVudEJ1aWxk
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkx
MTVDRkE2QTIwOEFGN0QwMDAxRTY5OTEgLyogRm9ybWF0dGluZ0NvbnRleHQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExNUNGQTY4MjA4QUY3RDAwMDFF
Njk5MSAvKiBGb3JtYXR0aW5nQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTExNUNGQTZFMjA4QUZBQjcwMDFFNjk5MSAvKiBCbG9ja0Zv
cm1hdHRpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxMTVDRkE2QzIwOEFGQUI2MDAxRTY5OTEgLyogQmxvY2tGb3JtYXR0aW5nQ29udGV4
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTEx
NUNGQTc2MjA4QUZFMzAwMDFFNjk5MSAvKiBGb3JtYXR0aW5nU3RhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExNUNGQTc0MjA4QUZFMzAwMDFFNjk5
MSAvKiBGb3JtYXR0aW5nU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkxMTVDRkE3QTIwOEI4RDlEMDAxRTY5OTEgLyogQmxvY2tGb3JtYXR0
aW5nU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDExNUNGQTc4MjA4QjhEOUQwMDFFNjk5MSAvKiBCbG9ja0Zvcm1hdHRpbmdTdGF0ZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTExNUNGQTdFMjA4
QjhFMTAwMDFFNjk5MSAvKiBJbmxpbmVGb3JtYXR0aW5nU3RhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExNUNGQTdDMjA4QjhFMTAwMDFFNjk5MSAv
KiBJbmxpbmVGb3JtYXR0aW5nU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkxMTVDRkE4MjIwOEI4RURBMDAxRTY5OTEgLyogRmxvYXRpbmdT
dGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTE1
Q0ZBODAyMDhCOEVEQTAwMUU2OTkxIC8qIEZsb2F0aW5nU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxMTVDRkE4NjIwOEI5MDY2MDAxRTY5
OTEgLyogRmxvYXRpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxMTVDRkE4NDIwOEI5MDY2MDAxRTY5OTEgLyogRmxvYXRpbmdDb250ZXh0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTE1
Q0ZBOTcyMDhCOTUyQjAwMUU2OTkxIC8qIExheW91dEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTE1Q0ZBOTUyMDhCOTUyQjAwMUU2OTkxIC8qIExh
eW91dEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTExNjNGODI0MjRFNUQ1QUUwMDBBQjk2MCAvKiBSZW5kZXJUcmVlTXV0YXRpb25EaXNhbGxv
d2VkU2NvcGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDExNjNGODIxMjRFNUQ1OUIwMDBBQjk2MCAvKiBSZW5kZXJUcmVlTXV0YXRpb25EaXNhbGxvd2Vk
U2NvcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkxMThCMDY4QjI1RTQxRTUzMDA3MEJFNEIgLyogT3BlblhSRXh0ZW5zaW9ucy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMThCMDY4NjI1RTQxRTUx
MDA3MEJFNEIgLyogT3BlblhSRXh0ZW5zaW9ucy5jcHAgKi87IH07CisJCTExOEIwNjhDMjVFNDFF
NTMwMDcwQkU0QiAvKiBPcGVuWFJFeHRlbnNpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMThCMDY4ODI1RTQxRTUyMDA3MEJFNEIgLyogT3BlblhS
RXh0ZW5zaW9ucy5oICovOyB9OworCQkxMThCMDY4RDI1RTQxRTUzMDA3MEJFNEIgLyogT3BlblhS
SW5zdGFuY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMTE4QjA2ODkyNUU0MUU1MjAwNzBCRTRCIC8qIE9wZW5YUkluc3RhbmNlLmNwcCAqLzsgfTsK
KwkJMTE4QjA2OEUyNUU0MUU1MzAwNzBCRTRCIC8qIE9wZW5YUlV0aWxzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxMThCMDY4QTI1RTQxRTUzMDA3MEJF
NEIgLyogT3BlblhSVXRpbHMuaCAqLzsgfTsKKwkJMTE5MzQwNzkxRkU4QjkyMzAwOTM1RjFFIC8q
IFJlbmRlclRyZWVCdWlsZGVyVGFibGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDExOTM0MDc3MUZFOEI5MjMwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVp
bGRlclRhYmxlLmggKi87IH07CisJCTExOTM0MDhBMUZFQjM1NUQwMDkzNUYxRSAvKiBSZW5kZXJU
cmVlQnVpbGRlclJ1YnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDExOTM0MDg4MUZFQjM1NUQwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlclJ1Ynku
aCAqLzsgfTsKKwkJMTE5MzQwOTcxRkVENzE1NTAwOTM1RjFFIC8qIFJlbmRlclRyZWVCdWlsZGVy
Rm9ybUNvbnRyb2xzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxMTkzNDA5NTFGRUQ3MTU1MDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJGb3JtQ29u
dHJvbHMuaCAqLzsgfTsKKwkJMTE5MzQwQTMxRkVFMDI0MDAwOTM1RjFFIC8qIFJlbmRlclRyZWVC
dWlsZGVyQmxvY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDExOTM0MEExMUZFRTAyNDAwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlckJsb2NrLmgg
Ki87IH07CisJCTExOTlGQTQ2MjA4RTM1QTMwMDIzNThDQyAvKiBMYXlvdXRDb250YWluZXJCb3gu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExOTlGQTQ0
MjA4RTM1QTMwMDIzNThDQyAvKiBMYXlvdXRDb250YWluZXJCb3guaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxMUMzMjI3RDI2RDk1OENFMDAzMjhG
NEQgLyogSW5saW5lTGluZUJveEJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDExQzMyMjdDMjZEOTU4Q0UwMDMyOEY0RCAvKiBJbmxpbmVMaW5l
Qm94QnVpbGRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTExQ0IyNzg5MjAzQkE1NzAwMDRBMURDOSAvKiBSZW5kZXJUcmVlQnVpbGRlckZ1bGxT
Y3JlZW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDEx
Q0IyNzg3MjAzQkE1NzAwMDRBMURDOSAvKiBSZW5kZXJUcmVlQnVpbGRlckZ1bGxTY3JlZW4uaCAq
LzsgfTsKKwkJMTFFNTE2MzgyNjFFMUEwNjAwRTY5RjI1IC8qIFdlYlhSSW5wdXRTcGFjZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTFFNTE2MzUyNjFF
MUEwNTAwRTY5RjI1IC8qIFdlYlhSSW5wdXRTcGFjZS5oICovOyB9OworCQkxMUU1MTYzOTI2MUUx
QTA2MDBFNjlGMjUgLyogV2ViWFJJbnB1dFNwYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDExRTUxNjM3MjYxRTFBMDUwMEU2OUYyNSAvKiBXZWJY
UklucHV0U3BhY2UuY3BwICovOyB9OworCQkxMUU1MTYzQzI2MUUxQTE1MDBFNjlGMjUgLyogV2Vi
WFJHYW1lcGFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxMUU1MTYzQTI2MUUxQTE0MDBFNjlGMjUgLyogV2ViWFJHYW1lcGFkLmggKi87IH07CisJCTEx
RTUxNjNEMjYxRTFBMTUwMEU2OUYyNSAvKiBXZWJYUkdhbWVwYWQuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTFFNTE2M0IyNjFFMUExNDAwRTY5RjI1
IC8qIFdlYlhSR2FtZXBhZC5jcHAgKi87IH07CisJCTE0MDBEN0E4MTcxMzZFQTcwMDc3Q0UwNSAv
KiBTY3JpcHRXcmFwcGFibGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxNDAwRDdBNzE3MTM2RUE3MDA3N0NFMDUgLyogU2NyaXB0V3JhcHBh
YmxlSW5saW5lcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTE0MDNCOTk3MDlFQjEzQUYwMDc5N0M3RiAvKiBET01XaW5kb3cuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0MDNCOTk1MDlFQjEzQUYwMDc5
N0M3RiAvKiBET01XaW5kb3cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkxNDAzQkEwRjA5RUIxOEY5MDA3OTdDN0YgLyogSlNET01XaW5kb3cuaCBp
biBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDE0MDNCQTBFMDlFQjE4RjgwMDc5N0M3RiAvKiBKU0RPTVdpbmRvdy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0MTE1QjUyMDlGODRCNzEw
MENBNEZDMSAvKiBOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxNDExNUI1MTA5Rjg0QjcxMDBDQTRGQzEgLyogTm9kZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0MTE1QjczMDlGODRDRDYwMENB
NEZDMSAvKiBKU05vZGVGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDE0MTE1QjcxMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0ZXIuaCAq
LzsgfTsKKwkJMTQxMURDQjExNjRDMzlBODAwRDQ5QkMxIC8qIFdpZHRoQ2FjaGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0MTFEQ0IwMTY0QzM5QTgw
MEQ0OUJDMSAvKiBXaWR0aENhY2hlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMTQxREMwNDgxNjQ4MzQ4RjAwMzcxRTVBIC8qIExheW91dFVuaXQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0MURDMDQ3
MTY0ODM0OEYwMDM3MUU1QSAvKiBMYXlvdXRVbml0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTQxREMwNTExNjQ4MzRCOTAwMzcxRTVBIC8qIExh
eW91dFBvaW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxNDFEQzA0QjE2NDgzNEI5MDAzNzFFNUEgLyogTGF5b3V0UG9pbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxNDFEQzA1MzE2NDgzNEI5MDAz
NzFFNUEgLyogTGF5b3V0UmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTQxREMwNEQxNjQ4MzRCOTAwMzcxRTVBIC8qIExheW91dFJlY3QuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxNDFEQzA1NDE2
NDgzNEI5MDAzNzFFNUEgLyogTGF5b3V0U2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMTQxREMwNEUxNjQ4MzRCOTAwMzcxRTVBIC8qIExheW91dFNp
emUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkx
NDIwMTFCNzBBMDAzMTMzMDA4MzAzRjkgLyogSlNDU1NTdHlsZURlY2xhcmF0aW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDIwMTFCNTBBMDAzMTMz
MDA4MzAzRjkgLyogSlNDU1NTdHlsZURlY2xhcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTQyQjk3Q0ExMzEzODk0MzAwOEJFRjRCIC8q
IFRleHRDb250cm9sSW5uZXJFbGVtZW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMTQyQjk3QzgxMzEzODk0MzAwOEJFRjRCIC8qIFRleHRDb250cm9s
SW5uZXJFbGVtZW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTE0MzJFODQ3MEM1MTQ5MzgwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0MzJFODQ2MEM1MTQ5
MzgwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkxNDQ3NkFBODE1REM0QkIxMDAzMDVEQjIgLyogV3JpdGlu
Z01vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0
NDc2QUE3MTVEQzRCQjEwMDMwNURCMiAvKiBXcml0aW5nTW9kZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0NDlFMjRDMTA3RDRBODQwMEI1Nzkz
RiAvKiBKU0NhbGxiYWNrRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTQ0OUUyNEExMDdENEE4NDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tEYXRhLmgg
Ki87IH07CisJCTE0NzdFNzc3MEJGNDEzNEEwMDE1Mjg3MiAvKiBCYWNrRm9yd2FyZENhY2hlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDc3RTc3NTBC
RjQxMzRBMDAxNTI4NzIgLyogQmFja0ZvcndhcmRDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0NzlGQUVFMTA5QUUzNzUwMERFRDY1NSAv
KiBSZW5kZXJSdWJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxNDc5RkFFNjEwOUFFMzc1MDBERUQ2NTUgLyogUmVuZGVyUnVieS5oICovOyB9OworCQkx
NDc5RkFGMDEwOUFFMzc1MDBERUQ2NTUgLyogUmVuZGVyUnVieUJhc2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0NzlGQUU4MTA5QUUzNzUwMERFRDY1
NSAvKiBSZW5kZXJSdWJ5QmFzZS5oICovOyB9OworCQkxNDc5RkFGMjEwOUFFMzc1MDBERUQ2NTUg
LyogUmVuZGVyUnVieVJ1bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMTQ3OUZBRUExMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnlSdW4uaCAqLzsg
fTsKKwkJMTQ3OUZBRjQxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnlUZXh0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDc5RkFFQzEwOUFFMzc1
MDBERUQ2NTUgLyogUmVuZGVyUnVieVRleHQuaCAqLzsgfTsKKwkJMTQ5NDdGRkUxMkY4MENEMjAw
QTBGNjMxIC8qIFRyZWVTY29wZU9yZGVyZWRNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0OTQ3RkZDMTJGODBDRDIwMEEwRjYzMSAvKiBUcmVlU2Nv
cGVPcmRlcmVkTWFwLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMTQ5OTNCRTYwQjJGMkIxQzAwNTA0OTdGIC8qIEZvY3VzQ29udHJvbGxlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTQ5OTNCRTQwQjJG
MkIxQzAwNTA0OTdGIC8qIEZvY3VzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0Q0Y3QjM0MDlGNkVDRDcwMEVCMzY2NSAvKiBK
U0NTU1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDE0Q0Y3QjMyMDlGNkVDRDcwMEVCMzY2NSAvKiBKU0NTU1J1bGUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxNEQ2NEI1RDEzNEE1QjZCMDBFNThG
REEgLyogVHJlZVNjb3BlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxNEQ2NEI1QjEzNEE1QjZCMDBFNThGREEgLyogVHJlZVNjb3BlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTREODIzNTIwQUY5MkE3
OTAwMDRGMDU3IC8qIENocm9tZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTREODIzNTAwQUY5MkE3OTAwMDRGMDU3IC8qIENocm9tZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE0RDgyNDA4MEFGOTNB
RUIwMDA0RjA1NyAvKiBDaHJvbWVDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDE0RDgyNDA2MEFGOTNBRUIwMDA0RjA1NyAvKiBDaHJvbWVDbGll
bnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkx
NERDMEQzODA5RkVEMDczMDA3QjAyMzUgLyogSlNOb2RlLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNERDMEQzNjA5RkVEMDcz
MDA3QjAyMzUgLyogSlNOb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsg
fTsKKwkJMTREQ0YzQjMxQjZCRTIwODAwNjJENEMyIC8qIEpTQ291bnRRdWV1aW5nU3RyYXRlZ3ku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0RENGM0Ix
MUI2QkUyMDgwMDYyRDRDMiAvKiBKU0NvdW50UXVldWluZ1N0cmF0ZWd5LmggKi87IH07CisJCTE0
RENGM0IzMUI2QkUyMDgwMDYyRDRDMyAvKiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0RENGM0IxMUI2
QkUyMDgwMDYyRDRDMyAvKiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuaCAqLzsgfTsKKwkJ
MTRFODM3OEUwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE0RTgzNzhEMDlGODVENEYwMEI4NUFFNCAvKiBK
U0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMTRGRkUzMUQwQUUxOTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNEZGRTMxQjBBRTE5
NjMzMDAxMzZCRjUgLyogSFRNTEZyYW1lRWxlbWVudEJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxNTA1MjRGNDFCNzEyRkY2MDA2OTZBQTkg
LyogTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNTA1MjRGMDFCNzEyRkYwMDA2OTZBQTkg
LyogTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZPYmpDLmggKi87IH07CisJCTE1MDUy
NEY1MUI3MTJGRjkwMDY5NkFBOSAvKiBNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNTA1
MjRGMTFCNzEyRkYwMDA2OTZBQTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJlYW1BVkZP
YmpDLm1tICovOyB9OworCQkxNTE0NUI5MDFCM0ExQ0UwMDA2NjJCRjcgLyogTWVkaWFEZXZpY2VJ
bmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNTE0
NUI4RjFCM0ExQjNFMDA2NjJCRjcgLyogTWVkaWFEZXZpY2VJbmZvLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMTU3MzlCQkIxQjQyMDEyRDAwRDI1
OEMxIC8qIEpTTWVkaWFEZXZpY2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxNTczOUJCOTFCNDIwMTIyMDBEMjU4QzEgLyogSlNNZWRpYURldmljZXMu
aCAqLzsgfTsKKwkJMTU5NzQxREIxQjdEMTQwMTAwMjAxQzkyIC8qIEpTTWVkaWFEZXZpY2VJbmZv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNTdDQzI2
MjFCN0MxQ0E0MDBEOEQwNzUgLyogSlNNZWRpYURldmljZUluZm8uaCAqLzsgfTsKKwkJMTVDNzcw
OEQxMDBEM0M2QjAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE1Qzc3MDhBMTAwRDNDNkEwMDVCQTI2NyAvKiBW
YWxpZGl0eVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMTVDNzcwOTMxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMTVDNzcwOTExMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oICovOyB9OworCQkxODVCQ0YyOTBGMzI3
OUNFMDAwRUEyNjIgLyogVGhyZWFkVGltZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxODVCQ0YyNzBGMzI3OUNFMDAwRUEyNjIgLyogVGhyZWFkVGlt
ZXJzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MTg4NjA0QjQwRjJFNjU0QTAwMEI2NDQzIC8qIERPTVRpbWVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxODg2MDRCMjBGMkU2NTRBMDAwQjY0NDMgLyog
RE9NVGltZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkxOEY4MzFCODBGRDQ4Qzc4MDBEOEM1NkIgLyogV29ya2VyTG9hZGVyUHJveHkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDE4RjgzMUI3MEZENDhD
NzgwMEQ4QzU2QiAvKiBXb3JrZXJMb2FkZXJQcm94eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTE5MjEzMjc1MTFDMEU2QkIwMDQ1NjIzOCAvKiBT
VkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMTkyMTMyNzIxMUMwRTZCQjAwNDU2MjM4IC8qIFNWR0ZFQ29udm9s
dmVNYXRyaXhFbGVtZW50LmggKi87IH07CisJCTE5N0IxODBDMTUwNjM1MzIwMEU0QURBOCAvKiBT
VkdSZW5kZXJpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxOTdCMTgwQjE1MDYzNEMwMDBFNEFEQTggLyogU1ZHUmVuZGVyaW5nQ29udGV4
dC5oICovOyB9OworCQkxOUJGRjY0RjExQzBGMkFDMDBCOEMwNEQgLyogSlNTVkdGRUNvbnZvbHZl
TWF0cml4RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMTlCRkY2NEExMUMwRjJBQzAwQjhDMDREIC8qIEpTU1ZHRkVDb252b2x2ZU1hdHJpeEVs
ZW1lbnQuaCAqLzsgfTsKKwkJMUEwOEZFREQxRDU5MkI4QjAwOEJBOENCIC8qIFBsdWdpbkluZm9Q
cm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUEwOEZFREIxRDU5MkI4QjAwOEJBOENCIC8qIFBsdWdpbkluZm9Qcm92aWRlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBMEQ1NzM3MEE1Qzc3
RkUwMDdFREQ0QyAvKiBPdmVyZmxvd0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTBENTczNTBBNUM3N0ZFMDA3RURENEMgLyogT3ZlcmZsb3dF
dmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTFBMEQ1NzQxMEE1Qzc4NjcwMDdFREQ0QyAvKiBKU092ZXJmbG93RXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMEQ1NzNGMEE1Qzc4NjcwMDdF
REQ0QyAvKiBKU092ZXJmbG93RXZlbnQuaCAqLzsgfTsKKwkJMUExNDE0QjUxM0EwRjA1MDAwMTk5
OTZDIC8qIFdlYktpdEZvbnRGYW1pbHlOYW1lcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTE0MTRCMzEzQTBGMDUwMDAxOTk5NkMgLyogV2ViS2l0
Rm9udEZhbWlseU5hbWVzLmNwcCAqLzsgfTsKKwkJMUExNDE0QjYxM0EwRjA1MDAwMTk5OTZDIC8q
IFdlYktpdEZvbnRGYW1pbHlOYW1lcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUExNDE0QjQxM0EwRjA1MDAwMTk5OTZDIC8q
IFdlYktpdEZvbnRGYW1pbHlOYW1lcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKCk7
IH07IH07CisJCTFBMjE5QjNCMERDQTg3QUIwMDQwRTNBMCAvKiBucGZ1bmN0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUEyMTlCM0EwRENBODdB
QjAwNDBFM0EwIC8qIG5wZnVuY3Rpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUEyMjQ2NEEwQ0M5OEREQjAwQzA1MjQwIC8qIFNRTGl0ZURh
dGFiYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QTIyNDY0NDBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlRGF0YWJhc2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTIyNDY0QzBDQzk4RERCMDBD
MDUyNDAgLyogU1FMaXRlU3RhdGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTIyNDY0NjBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlU3RhdGVt
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MUEyMjQ2NEUwQ0M5OEREQjAwQzA1MjQwIC8qIFNRTGl0ZVRyYW5zYWN0aW9uLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTIyNDY0ODBDQzk4RERCMDBD
MDUyNDAgLyogU1FMaXRlVHJhbnNhY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkxQTI1MEUwRDFDREQ2MzIwMDBEMEJFNjMgLyogTGlua0lj
b25UeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QTI1MEUwQzFDREQ2MzIwMDBEMEJFNjMgLyogTGlua0ljb25UeXBlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUEyOTlGRTgxRDdGNUZBNjAwQTYw
MDkzIC8qIFJlbmRlclRoZW1lQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFBMjk5RkU2MUQ3RjVGQTYwMEE2MDA5MyAvKiBSZW5kZXJUaGVtZUNv
Y29hLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MUEyQTY4MjQwQjVCRURFNzAwMDJBNDgwIC8qIFByb2dyZXNzVHJhY2tlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUEyQTY4MjIwQjVCRURFNzAwMDJB
NDgwIC8qIFByb2dyZXNzVHJhY2tlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTFBMkFBQzU5MERDMkEzQjEwMEEyMEQ5QSAvKiBBcHBsaWNhdGlv
bkNhY2hlU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUEyQUFDNTcwREMyQTNCMTAwQTIwRDlBIC8qIEFwcGxpY2F0aW9uQ2FjaGVTdG9yYWdl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUEy
RTZFNUEwQ0M1NTIxMzAwNEEyMDYyIC8qIFNRTFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTJFNkU1ODBDQzU1MjEzMDA0QTIwNjIgLyogU1FM
VmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkxQTM1ODZFMDE1MjY0QzQ1MDAyMkE2NTkgLyogUmVuZGVyTXVsdGlDb2x1bW5GbG93LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTM1ODZERTE1MjY0
QzQ1MDAyMkE2NTkgLyogUmVuZGVyTXVsdGlDb2x1bW5GbG93LmggKi87IH07CisJCTFBMzc2MzZD
MUEyRTY4QkIwMDlBN0VFMiAvKiBTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMzc2MzZBMUEyRTY4QkIwMDlB
N0VFMiAvKiBTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTQ5NEJGQjBBMTIyRjQ0MDBGREFGQzEgLyog
SlNIVE1MRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUE0OTRCRjkwQTEyMkY0NDAwRkRBRkMxIC8qIEpTSFRNTEVsZW1lbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTQ5NEUzNTBBMTIz
NThCMDBGREFGQzEgLyogSlNIVE1MRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNDk0RTMzMEExMjM1OEIwMEZEQUZDMSAvKiBKU0hUTUxE
b2N1bWVudC5oICovOyB9OworCQkxQTQ5NEVERjBBMTIzRjRDMDBGREFGQzEgLyogSlNEb2N1bWVu
dEZyYWdtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTQ5NEVERDBBMTIzRjRDMDBGREFGQzEgLyogSlNEb2N1bWVudEZyYWdtZW50LmggKi87IH07
CisJCTFBNEEyREYwMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBbmNob3JFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTRBMkRFQzBBMUI4
NTJBMDBDODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVudC5oICovOyB9OworCQkxQTRBOTU0RTBC
NEVEQ0NCMDAyRDhDM0MgLyogU2hhcmVkQnVmZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTRBOTU0QzBCNEVEQ0NCMDAyRDhDM0MgLyogU2hhcmVk
QnVmZmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMUE0REE0MjIxQ0REM0E4MzAwRjQ0NzNDIC8qIExpbmtJY29uQ29sbGVjdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTREQTQyMDFDREQzQTgz
MDBGNDQ3M0MgLyogTGlua0ljb25Db2xsZWN0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTU2OUNGODBEN0UyQjgyMDA3QzM5ODMgLyogY19j
bGFzcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1
NjlDQzcwRDdFMkI4MjAwN0MzOTgzIC8qIGNfY2xhc3MuaCAqLzsgfTsKKwkJMUE1NjlDRkEwRDdF
MkI4MjAwN0MzOTgzIC8qIGNfaW5zdGFuY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0M5MEQ3RTJCODIwMDdDMzk4MyAvKiBjX2luc3RhbmNl
LmggKi87IH07CisJCTFBNTY5Q0ZDMEQ3RTJCODIwMDdDMzk4MyAvKiBjX3J1bnRpbWUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0NCMEQ3RTJC
ODIwMDdDMzk4MyAvKiBjX3J1bnRpbWUuaCAqLzsgfTsKKwkJMUE1NjlDRkUwRDdFMkI4MjAwN0Mz
OTgzIC8qIGNfdXRpbGl0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUE1NjlDQ0QwRDdFMkI4MjAwN0MzOTgzIC8qIGNfdXRpbGl0eS5oICovOyB9Owor
CQkxQTU2OUQwQjBEN0UyQjgyMDA3QzM5ODMgLyogTlBfanNvYmplY3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0RCMEQ3RTJCODIwMDdDMzk4
MyAvKiBOUF9qc29iamVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTFBNTY5RDBGMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1bnRpbWVfaW1wbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDREYw
RDdFMkI4MjAwN0MzOTgzIC8qIG5wcnVudGltZV9pbXBsLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUE1NjlEMTAwRDdFMkI4MjAwN0MzOTgzIC8q
IG5wcnVudGltZV9pbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUE1NjlDRTAwRDdFMkI4MjAwN0MzOTgzIC8qIG5wcnVudGltZV9pbnRlcm5h
bC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFB
NTY5RDExMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1bnRpbWVfcHJpdi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRTEwRDdFMkI4MjAwN0MzOTgz
IC8qIG5wcnVudGltZV9wcml2LmggKi87IH07CisJCTFBNTY5RDEyMEQ3RTJCODIwMDdDMzk4MyAv
KiBvYmpjX2NsYXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQTU2OUNFMzBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19jbGFzcy5oICovOyB9OworCQkx
QTU2OUQxMzBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19jbGFzcy5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0U0MEQ3RTJCODIwMDdDMzk4MyAv
KiBvYmpjX2NsYXNzLm1tICovOyB9OworCQkxQTU2OUQxNDBEN0UyQjgyMDA3QzM5ODMgLyogb2Jq
Y19oZWFkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBNTY5Q0U1MEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjX2hlYWRlci5oICovOyB9OworCQkxQTU2
OUQxNTBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19pbnN0YW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRTYwRDdFMkI4MjAwN0MzOTgzIC8q
IG9iamNfaW5zdGFuY2UuaCAqLzsgfTsKKwkJMUE1NjlEMTYwRDdFMkI4MjAwN0MzOTgzIC8qIG9i
amNfaW5zdGFuY2UubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQTU2OUNFNzBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19pbnN0YW5jZS5tbSAqLzsgfTsK
KwkJMUE1NjlEMTcwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRTgwRDdFMkI4MjAwN0Mz
OTgzIC8qIG9iamNfcnVudGltZS5oICovOyB9OworCQkxQTU2OUQxODBEN0UyQjgyMDA3QzM5ODMg
Lyogb2JqY19ydW50aW1lLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUE1NjlDRTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5tbSAqLzsg
fTsKKwkJMUE1NjlEMTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0eS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRUEwRDdFMkI4MjAw
N0MzOTgzIC8qIG9iamNfdXRpbGl0eS5oICovOyB9OworCQkxQTU2OUQxQTBEN0UyQjgyMDA3QzM5
ODMgLyogb2JqY191dGlsaXR5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUE1NjlDRUIwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0eS5tbSAq
LzsgfTsKKwkJMUE1NjlEMUIwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVjdFByb3Rv
Y29sLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTU2
OUNFQzBEN0UyQjgyMDA3QzM5ODMgLyogV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCAqLzsgfTsK
KwkJMUE1NjlEMUYwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfYXJyYXkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0YwMEQ3RTJCODIwMDdD
Mzk4MyAvKiBydW50aW1lX2FycmF5LmggKi87IH07CisJCTFBNTY5RDIxMEQ3RTJCODIwMDdDMzk4
MyAvKiBydW50aW1lX21ldGhvZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUE1NjlDRjIwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfbWV0aG9kLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUE1NjlE
MjMwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfb2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTU2OUNGNDBEN0UyQjgyMDA3QzM5ODMgLyog
cnVudGltZV9vYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkxQTU2OUQyNTBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9yb290LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTU2OUNGNjBEN0Uy
QjgyMDA3QzM5ODMgLyogcnVudGltZV9yb290LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUE1OEU4NjUxRDE5RDRFQjAwQzBFQTczIC8qIEFwcGxl
UGF5U2Vzc2lvblBheW1lbnRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTU4RTg2NDFEMTlENERGMDBDMEVBNzMgLyogQXBwbGVQYXlTZXNz
aW9uUGF5bWVudFJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkxQTU4RTg2NjFEMTlENEYwMDBDMEVBNzMgLyogUGF5bWVudENvb3JkaW5h
dG9yQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTU4RTg2MjFEMTlEM0JGMDBDMEVBNzMgLyogUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUE1OEU4
NkUxRDE5RTQyRDAwQzBFQTczIC8qIFBheW1lbnRDb29yZGluYXRvci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1OEU4NkMxRDE5RTQyRDAwQzBFQTcz
IC8qIFBheW1lbnRDb29yZGluYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTFBNzFENTdDMEYzMzgxOTAwMEY5Q0U0RSAvKiBJZGVudGlmaWVy
UmVwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTcx
RDU3QTBGMzM4MTkwMDBGOUNFNEUgLyogSWRlbnRpZmllclJlcC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBNzUwRDVEMEE5MERFRTEwMDBGRjIx
NSAvKiBKU1RyZWVXYWxrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBNzUwRDVCMEE5MERFRTEwMDBGRjIxNSAvKiBKU1RyZWVXYWxrZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTc1MEQ4RTBB
OTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNzUwRDhDMEE5MEU1MjEwMDBGRjIxNSAvKiBKU05v
ZGVJdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTFBNzYyQzc0MEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoRXZhbHVhdG9yLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTc2MkM2QzBBMDc0
RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV2YWx1YXRvci5oICovOyB9OworCQkxQTc2MkM3NjBBMDc0
RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV4cHJlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNzYyQzZFMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQ
YXRoRXhwcmVzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTFBNzYyQzc4MEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoTlNSZXNvbHZlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3NjJDNzAw
QTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhOU1Jlc29sdmVyLmggKi87IH07CisJCTFBNzYyQzdB
MEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoUmVzdWx0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTc2MkM3MjBBMDc0RjI2MDA5ODlGNUIgLyogSlNY
UGF0aFJlc3VsdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTFBN0UzQzI5MTcxMDk5NzMwMDM2NzkzNSAvKiBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUE3RTNDMjgxNzEwOTk3MzAwMzY3OTM1IC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVy
LmggKi87IH07CisJCTFBN0ZBNjE5MEREQTNCM0EwMDI4RjhBNSAvKiBOZXR3b3JrU3RhdGVOb3Rp
Zmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3
RkE2MTgwRERBM0IzQTAwMjhGOEE1IC8qIE5ldHdvcmtTdGF0ZU5vdGlmaWVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUE4NUIxOTAwQTFCMThB
MjAwRDhDODdDIC8qIEpTSFRNTEh0bWxFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjE4RTBBMUIxOEEyMDBEOEM4N0MgLyogSlNIVE1M
SHRtbEVsZW1lbnQuaCAqLzsgfTsKKwkJMUE4NUIxRTcwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRN
TERpcmVjdG9yeUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBODVCMUUxMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxEaXJlY3RvcnlFbGVt
ZW50LmggKi87IH07CisJCTFBODVCMUU5MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxETGlzdEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
ODVCMUUzMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxETGlzdEVsZW1lbnQuaCAqLzsgfTsKKwkJ
MUE4NUIxRUIwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTE9MaXN0RWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4NUIxRTUwQTFCMjQwNTAw
RDhDODdDIC8qIEpTSFRNTE9MaXN0RWxlbWVudC5oICovOyB9OworCQkxQTg1QjIxMTBBMUIyNTg3
MDBEOEM4N0MgLyogSlNIVE1MVUxpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg1QjIwRjBBMUIyNTg3MDBEOEM4N0MgLyogSlNIVE1M
VUxpc3RFbGVtZW50LmggKi87IH07CisJCTFBODVCMkI3MEExQjJBQzcwMEQ4Qzg3QyAvKiBKU0hU
TUxEaXZFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQTg1QjJCNTBBMUIyQUM3MDBEOEM4N0MgLyogSlNIVE1MRGl2RWxlbWVudC5oICovOyB9
OworCQkxQTg3NEFERjE5MDg1RTkxMDBCMDMxNzEgLyogV0FLVmlld0ludGVybmFsLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTg3NEFERTE5MDg1RTkx
MDBCMDMxNzEgLyogV0FLVmlld0ludGVybmFsLmggKi87IH07CisJCTFBODhBOTA1MTc1NTNDRDcw
MDBDNzRGOSAvKiBGaWxlSWNvbkxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE4OEE5MDMxNzU1M0NENzAwMEM3NEY5IC8qIEZpbGVJY29uTG9h
ZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MUE4QTY0M0ExRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEE2NDM3MUQxOUZDNTMwMEQwRTAwRiAvKiBQ
YXltZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMUE4QTY0M0IxRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnRDb250YWN0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThBNjQzODFEMTlGQzUzMDBE
MEUwMEYgLyogUGF5bWVudENvbnRhY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkxQThBNjQzQzFEMTlGQzUzMDBEMEUwMEYgLyogUGF5bWVudE1l
dGhvZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4
QTY0MzkxRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnRNZXRob2QuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQThBNjQ1MjFEMTlGQ0ZCMDBEMEUw
MEYgLyogQXBwbGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThBNjQzRTFEMTlGQ0ZCMDBEMEUwMEYgLyog
QXBwbGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50LmggKi87IH07CisJCTFBOEE2NDU2MUQxOUZD
RkMwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThBNjQ0MjFEMTlGQ0ZC
MDBEMEUwMEYgLyogQXBwbGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVudC5oICovOyB9Owor
CQkxQThBNjQ1OTFEMTlGQ0ZDMDBEMEUwMEYgLyogQXBwbGVQYXlTZXNzaW9uLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThBNjQ0NTFEMTlGQ0ZCMDBE
MEUwMEYgLyogQXBwbGVQYXlTZXNzaW9uLmggKi87IH07CisJCTFBOEE2NDVDMUQxOUZDRkMwMEQw
RTAwRiAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEE2NDQ4MUQxOUZDRkIwMEQw
RTAwRiAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuaCAqLzsgfTsKKwkJ
MUE4QTY0NjAxRDE5RkNGQzAwRDBFMDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3Rl
ZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QThBNjQ0QzFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVk
RXZlbnQuaCAqLzsgfTsKKwkJMUE4QTY0NjMxRDE5RkNGQzAwRDBFMDBGIC8qIEFwcGxlUGF5VmFs
aWRhdGVNZXJjaGFudEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQThBNjQ0RjFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlWYWxpZGF0ZU1l
cmNoYW50RXZlbnQuaCAqLzsgfTsKKwkJMUE4QTY0NjgxRDE5RkRGRjAwRDBFMDBGIC8qIFBheW1l
bnRSZXF1ZXN0VmFsaWRhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQThBNjQ2NjFEMTlGREZGMDBEMEUwMEYgLyogUGF5bWVudFJlcXVlc3RWYWxp
ZGF0b3IuaCAqLzsgfTsKKwkJMUE4RjZCMDIwREI1MzAwNjAwMURCNzk0IC8qIFN1YnN0aXR1dGVS
ZXNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUE4RjZCMDEwREI1MzAwNjAwMURCNzk0IC8qIFN1YnN0aXR1dGVSZXNvdXJjZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBOEY2QkJEMERCNTVD
REMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThGNkJCMjBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGlj
YXRpb25DYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTFBOEY2QkJGMERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXAu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEY2QkI0
MERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9OworCQkxQThGNkJDMTBEQjU1Q0RDMDAxREI3OTQgLyog
QXBwbGljYXRpb25DYWNoZVJlc291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQThGNkJCNjBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25D
YWNoZVJlc291cmNlLmggKi87IH07CisJCTFBOEY2QkMzMERCNTVDREMwMDFEQjc5NCAvKiBET01B
cHBsaWNhdGlvbkNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQThGNkJCODBEQjU1Q0RDMDAxREI3OTQgLyogRE9NQXBwbGljYXRpb25DYWNoZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKCk7IH07IH07CisJCTFBOEY2QkM2MERCNTVD
REMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlTWFuaWZlc3RQYXJzZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEY2QkJCMERCNTVDREMwMDFE
Qjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlTWFuaWZlc3RQYXJzZXIuaCAqLzsgfTsKKwkJMUE5MjdG
RDIxNDE2QTE1QjAwM0E4M0M4IC8qIG5wYXBpLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTkyN0ZDRjE0MTZBMTVCMDAzQTgzQzggLyogbnBhcGkuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQTkyN0ZE
MzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTkyN0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8qIG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBu
cHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMUFBQUREQTQxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQUFEREEyMTREQjQwOUYwMEFG
NjRCMyAvKiBTY3JvbGxpbmdUcmVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMUFBQURERTQxNERDOEM4RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1Ry
ZWVOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QUFBRERFMjE0REM4QzhGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZU5vZGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUIzM0RBNTEyNTUxRTMy
MDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCMzNEQTQxMjU1MUUzMjAwMjQ0NTdBIC8qIElPS2l0LmZy
YW1ld29yayAqLzsgfTsKKwkJMUFCNUVCRDIxOTRBNTBGMzAwNTlBQzcwIC8qIEhUVFBIZWFkZXJO
YW1lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFD
OTAwQzIxOTQzQzBBMDAwODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1lcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBQjdGQzY5MEE4QjkyRUMwMEQ5
RDM3QiAvKiBYUGF0aEV2YWx1YXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUFCN0ZDNDgwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9y
LmggKi87IH07CisJCTFBQjdGQzZDMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjdGQzRC
MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUI3RkM2RjBBOEI5MkVDMDBEOUQzN0Ig
LyogWFBhdGhFeHByZXNzaW9uTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUFCN0ZDNEUwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXhwcmVzc2lv
bk5vZGUuaCAqLzsgfTsKKwkJMUFCN0ZDNzEwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRnVuY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3
RkM1MDBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhGdW5jdGlvbnMuaCAqLzsgfTsKKwkJMUFCN0ZD
NzYwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCN0ZDNTUwQThCOTJFQzAwRDlEMzdCIC8q
IFhQYXRoTlNSZXNvbHZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTFBQjdGQzc5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhcnNlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCN0ZDNTgwQThC
OTJFQzAwRDlEMzdCIC8qIFhQYXRoUGFyc2VyLmggKi87IH07CisJCTFBQjdGQzdCMEE4QjkyRUMw
MEQ5RDM3QiAvKiBYUGF0aFBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFBQjdGQzVBMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhdGguaCAqLzsg
fTsKKwkJMUFCN0ZDN0QwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoUHJlZGljYXRlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3RkM1QzBBOEI5MkVD
MDBEOUQzN0IgLyogWFBhdGhQcmVkaWNhdGUuaCAqLzsgfTsKKwkJMUFCN0ZDN0YwQThCOTJFQzAw
RDlEMzdCIC8qIFhQYXRoUmVzdWx0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUI3RkM1RTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhSZXN1bHQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUI3RkM4
MjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhTdGVwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3RkM2MTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhT
dGVwLmggKi87IH07CisJCTFBQjdGQzg0MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFV0aWwuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjdGQzYzMEE4
QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFV0aWwuaCAqLzsgfTsKKwkJMUFCN0ZDODYwQThCOTJFQzAw
RDlEMzdCIC8qIFhQYXRoVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFBQjdGQzY1MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFZhbHVlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFCN0ZDODgw
QThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoVmFyaWFibGVSZWZlcmVuY2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjdGQzY3MEE4QjkyRUMwMEQ5RDM3
QiAvKiBYUGF0aFZhcmlhYmxlUmVmZXJlbmNlLmggKi87IH07CisJCTFBQkE3NkNBMTFEMjBFNTAw
MDRDMjAxQyAvKiBDU1NQcm9wZXJ0eU5hbWVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0MUVBMDM4MTE5ODM2REIwMDcxMEJDNSAvKiBDU1NQcm9w
ZXJ0eU5hbWVzLmNwcCAqLzsgfTsKKwkJMUFCQTgwMDAxODk3MzQxMjAwRENFOUQ2IC8qIFZpc2l0
ZWRMaW5rU3RvcmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBQkE3RkZGMTg5NzM0MTIwMERDRTlENiAvKiBWaXNpdGVkTGlua1N0b3JlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFDMjI2MEQwREI2
OUYxOTAwODlCNjY5IC8qIEpTRE9NQXBwbGljYXRpb25DYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFDMjI2MEIwREI2OUYxOTAwODlCNjY5IC8q
IEpTRE9NQXBwbGljYXRpb25DYWNoZS5oICovOyB9OworCQkxQUMyRDg0NTE3MTczNEExMDA2NTJG
QzAgLyogU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFFM0Y5QzQwREEwNTlEQzAwMjUwOTExIC8qIFN0b3JhZ2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUMyRDg5RDFCMUUyOTFGMDBE
NTJFODcgLyogRm9udEFudGlhbGlhc2luZ1N0YXRlU2F2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQzJEODlDMUIxRTI5MUYwMEQ1MkU4NyAvKiBG
b250QW50aWFsaWFzaW5nU3RhdGVTYXZlci5oICovOyB9OworCQkxQUM2OTU5MzE2MUExRTUzMDAz
NzMyQ0IgLyogR3JhcGhpY3NMYXllckZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQzY5NTkyMTYxQTFFNTMwMDM3MzJDQiAvKiBHcmFwaGlj
c0xheWVyRmFjdG9yeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTFBQzkwMEMzMTk0M0MwRkMwMDg2MjVCNSAvKiBIVFRQSGVhZGVyTmFtZXMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFDOTAwQzAx
OTQzQzBBMDAwODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1lcy5jcHAgKi87IH07CisJCTFBQ0FERDc5
MTg4MEQ5MUMwMEQ4QjcxRCAvKiBQcm9ncmVzc1RyYWNrZXJDbGllbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQ0FERDc4MTg4MEQ5MUMwMEQ4Qjcx
RCAvKiBQcm9ncmVzc1RyYWNrZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkxQUNCMkIyNDFBNTczM0Y0MDAzMzMzOTIgLyogRGF0YWJh
c2VQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUFDQjJCMjIxQTU3MzNGNDAwMzMzMzkyIC8qIERhdGFiYXNlUHJvdmlkZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUNFNTNFMDBBOEQx
ODgxMDAyMjk0N0QgLyogSlNET01QYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFBQ0U1M0RFMEE4RDE4ODEwMDIyOTQ3RCAvKiBKU0RPTVBhcnNl
ci5oICovOyB9OworCQkxQUNFNTNFODBBOEQxOEU3MDAyMjk0N0QgLyogRE9NUGFyc2VyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUNFNTNFMjBBOEQx
OEU3MDAyMjk0N0QgLyogRE9NUGFyc2VyLmggKi87IH07CisJCTFBQ0U1M0VCMEE4RDE4RTcwMDIy
OTQ3RCAvKiBYTUxTZXJpYWxpemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUNFNTNFNTBBOEQxOEU3MDAyMjk0N0QgLyogWE1MU2VyaWFsaXplci5o
ICovOyB9OworCQkxQUNFNTNGNzBBOEQxOTQ3MDAyMjk0N0QgLyogSlNYTUxTZXJpYWxpemVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUNFNTNGNTBB
OEQxOTQ3MDAyMjk0N0QgLyogSlNYTUxTZXJpYWxpemVyLmggKi87IH07CisJCTFBRDhGODFCMTFD
QUI5RTkwMEU5M0U1NCAvKiBQbGF0Zm9ybVN0cmF0ZWdpZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRDhGODE5MTFDQUI5RTkwMEU5M0U1NCAvKiBQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkxQUUwMEQ1OTE4MkRBQzhEMDAwODdERDcgLyogS2V5ZWRDb2RpbmcuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTAwRDU3MTgy
REFDOEQwMDA4N0RENyAvKiBLZXllZENvZGluZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBRTJBQTFGMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hU
TUxBcmVhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUFFMkFBMEIwQTFDREFCMzAwQjQyQjI1IC8qIEpTSFRNTEFyZWFFbGVtZW50LmggKi87
IH07CisJCTFBRTJBQTIzMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxCb2R5RWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFBMEYwQTFD
REFCMzAwQjQyQjI1IC8qIEpTSFRNTEJvZHlFbGVtZW50LmggKi87IH07CisJCTFBRTJBQTI1MEEx
Q0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxCUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTJBQTExMEExQ0RBQjMwMEI0MkIyNSAvKiBKU0hU
TUxCUkVsZW1lbnQuaCAqLzsgfTsKKwkJMUFFMkFBMjcwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRN
TEZpZWxkU2V0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUFFMkFBMTMwQTFDREFCMzAwQjQyQjI1IC8qIEpTSFRNTEZpZWxkU2V0RWxlbWVu
dC5oICovOyB9OworCQkxQUUyQUEyOTBBMUNEQUI0MDBCNDJCMjUgLyogSlNIVE1MRm9udEVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTJB
QTE1MEExQ0RBQjMwMEI0MkIyNSAvKiBKU0hUTUxGb250RWxlbWVudC5oICovOyB9OworCQkxQUUy
QUEyRjBBMUNEQUI0MDBCNDJCMjUgLyogSlNIVE1MSGVhZGluZ0VsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTJBQTFCMEExQ0RBQjQwMEI0
MkIyNSAvKiBKU0hUTUxIZWFkaW5nRWxlbWVudC5oICovOyB9OworCQkxQUUyQUEzMTBBMUNEQUI0
MDBCNDJCMjUgLyogSlNIVE1MSFJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQUUyQUExRDBBMUNEQUI0MDBCNDJCMjUgLyogSlNIVE1MSFJF
bGVtZW50LmggKi87IH07CisJCTFBRTJBQTk4MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hUTUxJbWFn
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBRTJBQTk0MEExQ0REMkQwMEI0MkIyNSAvKiBKU0hUTUxJbWFnZUVsZW1lbnQuaCAqLzsgfTsK
KwkJMUFFMkFCMjIwQTFDRTYzQjAwQjQyQjI1IC8qIEpTSFRNTExhYmVsRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFCMTgwQTFDRTYz
QjAwQjQyQjI1IC8qIEpTSFRNTExhYmVsRWxlbWVudC5oICovOyB9OworCQkxQUUyQUIyNDBBMUNF
NjNCMDBCNDJCMjUgLyogSlNIVE1MTGVnZW5kRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFCMUEwQTFDRTYzQjAwQjQyQjI1IC8qIEpT
SFRNTExlZ2VuZEVsZW1lbnQuaCAqLzsgfTsKKwkJMUFFMkFCMjYwQTFDRTYzQjAwQjQyQjI1IC8q
IEpTSFRNTExJRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUFFMkFCMUMwQTFDRTYzQjAwQjQyQjI1IC8qIEpTSFRNTExJRWxlbWVudC5oICov
OyB9OworCQkxQUUyQUIyODBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTWFwRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFCMUUwQTFD
RTYzQjAwQjQyQjI1IC8qIEpTSFRNTE1hcEVsZW1lbnQuaCAqLzsgfTsKKwkJMUFFMkFCMkEwQTFD
RTYzQjAwQjQyQjI1IC8qIEpTSFRNTE1vZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTJBQjIwMEExQ0U2M0IwMEI0MkIyNSAvKiBKU0hU
TUxNb2RFbGVtZW50LmggKi87IH07CisJCTFBRTJBQkE3MEExQ0U5MDUwMEI0MkIyNSAvKiBKU0hU
TUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQUUyQUI5RjBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFyYWdyYXBoRWxl
bWVudC5oICovOyB9OworCQkxQUUyQUJBOTBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFyYW1F
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QUUyQUJBMTBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFyYW1FbGVtZW50LmggKi87IH07CisJ
CTFBRTJBQkFCMEExQ0U5MDUwMEI0MkIyNSAvKiBKU0hUTUxQcmVFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUUyQUJBMzBBMUNFOTA1MDBC
NDJCMjUgLyogSlNIVE1MUHJlRWxlbWVudC5oICovOyB9OworCQkxQUUyQUJBRDBBMUNFOTA1MDBC
NDJCMjUgLyogSlNIVE1MU2NyaXB0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFCQTUwQTFDRTkwNTAwQjQyQjI1IC8qIEpTSFRNTFNj
cmlwdEVsZW1lbnQuaCAqLzsgfTsKKwkJMUFFMkFFNUMwQTFEMjZGMjAwQjQyQjI1IC8qIEpTSFRN
TE1lbnVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQUUyQUU1QTBBMUQyNkYyMDBCNDJCMjUgLyogSlNIVE1MTWVudUVsZW1lbnQuaCAqLzsg
fTsKKwkJMUFFMkFFQzgwQTFEMjk3QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFMkFFQzQwQTFE
Mjk3QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxlbWVudC5oICovOyB9OworCQkxQUU3OUQ0MzE4
OERCNjFGMDAyMjM5QzIgLyogVXNlckNvbnRlbnRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUU3OUQ0MTE4OERCNjFGMDAyMjM5QzIg
LyogVXNlckNvbnRlbnRDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFFODJGOTAwQ0FBRkE5RDAwMjIzN0FFIC8qIEpTRGF0YWJh
c2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTgy
RjhFMENBQUZBOUQwMDIyMzdBRSAvKiBKU0RhdGFiYXNlLmggKi87IH07CisJCTFBRTgyRkVEMENB
QjA3RUUwMDIyMzdBRSAvKiBKU1NRTFJlc3VsdFNldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFODJGRUIwQ0FCMDdFRTAwMjIzN0FFIC8qIEpTU1FM
UmVzdWx0U2V0LmggKi87IH07CisJCTFBRTk2QTg4MUQxQTBDRUIwMEI4Njc2OCAvKiBQYXltZW50
QXV0aG9yaXphdGlvblN0YXR1cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUFFOTZBODYxRDFBMENFQjAwQjg2NzY4IC8qIFBheW1lbnRBdXRob3JpemF0
aW9uU3RhdHVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMUFFOTZBODkxRDFBMENFQjAwQjg2NzY4IC8qIFBheW1lbnRNZXJjaGFudFNlc3Npb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTk2QTg3
MUQxQTBDRUIwMEI4Njc2OCAvKiBQYXltZW50TWVyY2hhbnRTZXNzaW9uLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFFOTZBOEIxRDFBMERERDAw
Qjg2NzY4IC8qIEpTQXBwbGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUU5NkE3QjFEMUEwQTgwMDBCODY3
NjggLyogSlNBcHBsZVBheVBheW1lbnRBdXRob3JpemVkRXZlbnQuaCAqLzsgfTsKKwkJMUFFOTZB
OEQxRDFBMERERDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFOTZB
N0QxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVu
dC5oICovOyB9OworCQkxQUU5NkE4RjFEMUEwREREMDBCODY3NjggLyogSlNBcHBsZVBheVNlc3Np
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRTk2
QTdGMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5U2Vzc2lvbi5oICovOyB9OworCQkxQUU5
NkE5MTFEMUEwREREMDBCODY3NjggLyogSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVk
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
RTk2QTgxMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0U2VsZWN0
ZWRFdmVudC5oICovOyB9OworCQkxQUU5NkE5MzFEMUEwREREMDBCODY3NjggLyogSlNBcHBsZVBh
eVNoaXBwaW5nTWV0aG9kU2VsZWN0ZWRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUFFOTZBODMxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQ
YXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQuaCAqLzsgfTsKKwkJMUFFRjRFNjcxNzBFMTYw
MzAwQUIyNzk5IC8qIENhY2hlZEZvbnRDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRUY0RTY2MTcwRTE2MDMwMEFCMjc5OSAvKiBDYWNoZWRG
b250Q2xpZW50LmggKi87IH07CisJCTFBRUY0RTY5MTcwRTE3NDgwMEFCMjc5OSAvKiBDYWNoZWRT
VkdEb2N1bWVudENsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUFFRjRFNjgxNzBFMTc0ODAwQUIyNzk5IC8qIENhY2hlZFNWR0RvY3VtZW50Q2xp
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MUFGMzI2NzkwRDc4Qjk0NDAwNjhGMEM0IC8qIEVkaXRvckNsaWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFGMzI2NzcwRDc4Qjk0NDAwNjhGMEM0
IC8qIEVkaXRvckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTFBRjVFNEQ1MUU1NjczNUIwMDRBMUYwMSAvKiBQYXN0ZWJvYXJkV3JpdGVy
RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFG
NUU0RDMxRTU2NzM1QTAwNEExRjAxIC8qIFBhc3RlYm9hcmRXcml0ZXJEYXRhLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFGNUU0RDkxRTU2NzdB
OTAwNEExRjAxIC8qIERyYWdJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUY1RTRENzFFNTY3N0E5MDA0QTFGMDEgLyogRHJhZ0l0ZW0uaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQUY1RTRFMzFF
NTc3OUIxMDA0QTFGMDEgLyogUGFzdGVib2FyZFdyaXRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFGNUU0RTExRTU3NzlCMTAwNEExRjAxIC8qIFBh
c3RlYm9hcmRXcml0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRjYy
RUU1MTREQTIyQTcwMDQxNTU2QyAvKiBTY3JvbGxpbmdDb29yZGluYXRvci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFBRjYyRjI2MTREQUZFQTEw
MDQxNTU2QyAvKiBTY3JvbGxpbmdUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFBRjYyRjIxMTREQUZFNzkwMDQxNTU2QyAvKiBTY3JvbGxpbmdU
aHJlYWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkxQUY3QUZDODFBNDhBOEJDMDBDOEU0RTcgLyogU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBRjdBRkM2MUE0OEE4
QkMwMEM4RTRFNyAvKiBTZWN1cml0eU9yaWdpblBvbGljeS5oICovOyB9OworCQkxQUY4OUE0MjE1
MThGREVBMDBFNTQ3QjUgLyogVGlsZWRCYWNraW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUY4OUE0MTE1MThGREVBMDBFNTQ3QjUgLyogVGlsZWRC
YWNraW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMUFGOEUxMUExMjU2NTkyNjAwMjMwRkY3IC8qIFByb3h5U2VydmVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUY4RTExOTEyNTY1OTI2MDAyMzBG
RjcgLyogUHJveHlTZXJ2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkxQUZFMTE5QTBDQkZGQ0M0MDAzMDE3RkEgLyogSlNTUUxSZXN1bHRTZXRS
b3dMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QUZFMTE5ODBDQkZGQ0M0MDAzMDE3RkEgLyogSlNTUUxSZXN1bHRTZXRSb3dMaXN0LmggKi87IH07
CisJCTFBRkZDNDU4MUQ1RTg2NTUwMDI2N0E2NiAvKiBXZWJHTEJsb2NrbGlzdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFGRkM0NTExRDVFN0VDNzAw
MjY3QTY2IC8qIFdlYkdMQmxvY2tsaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUFGRkM0NTkxRDVFODY2MTAwMjY3QTY2IC8qIFBsdWdpbkJs
b2NrbGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUFGRkM0NEYxRDVFN0VDNzAwMjY3QTY2IC8qIFBsdWdpbkJsb2NrbGlzdC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFCMTI0RDhEMUQzODBCNzAw
MEVDREZCMCAvKiBNZWRpYVNhbXBsZUFWRk9iakMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFCMTI0RDhDMUQzODBCNzAwMEVDREZCMCAvKiBNZWRpYVNh
bXBsZUFWRk9iakMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkxQjEyNEQ4RjFEMzgwQkI2MDBFQ0RGQjAgLyogTWVkaWFTYW1wbGVBVkZPYmpDLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUIxMjREOEUx
RDM4MEJCNjAwRUNERkIwIC8qIE1lZGlhU2FtcGxlQVZGT2JqQy5tbSAqLzsgfTsKKwkJMUJGOURC
M0MxRDM5NzNBRDAwMjZBRUI3IC8qIE1lZGlhU2FtcGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDY0MUVDNzE4MUVENjAxMDBFRTRDNDEgLyogTWVk
aWFTYW1wbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkxQzAxMDcwMTE5MjU5NERGMDA4QTQyMDEgLyogSW5saW5lVGV4dEJveFN0eWxlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzAxMDZGRjE5MjU5
NERGMDA4QTQyMDEgLyogSW5saW5lVGV4dEJveFN0eWxlLmggKi87IH07CisJCTFDMDIyRjAwMjJD
RkVENjgwMDZERjAxQiAvKiBsaWJjb21wcmVzc2lvbi50YmQgaW4gRnJhbWV3b3JrcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzhEMjZEMDIyQzA5Q0RFMDBEMTI1RjMgLyog
bGliY29tcHJlc3Npb24udGJkICovOyB9OworCQkxQzA5MzlFQjFBMTNFMTI5MDBCNzg4RTUgLyog
Q2FjaGVkU1ZHRm9udC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUMwOTM5RTkxQTEzRTEyOTAwQjc4OEU1IC8qIENhY2hlZFNWR0ZvbnQuaCAqLzsgfTsK
KwkJMUMwOUQwNTkxRTMxQzZBOTAwNzI1RjE4IC8qIGxpYlBBTC5hIGluIEZyYW1ld29ya3MgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMwOUQwNTAxRTMxQzMyOTAwNzI1RjE4
IC8qIGxpYlBBTC5hICovOyB9OworCQkxQzBBQTE2RDIxOTQwREM4MDA4OTY4MjkgLyogU3R5bGVD
b2xvclNjaGVtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUMwQUExNkEyMTk0MERDNzAwODk2ODI5IC8qIFN0eWxlQ29sb3JTY2hlbWUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQzEyQUMyQjFFRTc3
OEFFMDA3OUUwQTAgLyogRm9udEZhbWlseVNwZWNpZmljYXRpb25Db3JlVGV4dC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMxMkFDMjkxRUU3NzhBRTAw
NzlFMEEwIC8qIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uQ29yZVRleHQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQzE4REE1OTE4MUFGNkE1MDBD
NEVGMjIgLyogVGV4dFBhaW50ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFDMThEQTU3MTgxQUY2QTUwMEM0RUYyMiAvKiBUZXh0UGFpbnRlci5oICov
OyB9OworCQkxQzIxRTU3RDE4M0VEMUZGMDAxQzI4OUQgLyogSU9TdXJmYWNlUG9vbC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMyMUU1N0IxODNFRDFG
RjAwMUMyODlEIC8qIElPU3VyZmFjZVBvb2wuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkxQzI0RUVBNTFDNzI5Q0U0MDA4MEY4RkMgLyogRm9udEZh
Y2VTZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
MjRFRUEzMUM3MjlDRTQwMDgwRjhGQyAvKiBGb250RmFjZVNldC5oICovOyB9OworCQkxQzI0RUVB
OTFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFjZVNldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUMyNEVFQTcxQzcyQTdCNDAwODBGOEZDIC8qIEpT
Rm9udEZhY2VTZXQuaCAqLzsgfTsKKwkJMUM0M0RFNkIyMkFCNEI4QTAwMTUyN0Q5IC8qIExvY2Fs
Q3VycmVudFRyYWl0Q29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUM0M0RFNjgyMkFCNEI4QTAwMTUyN0Q5IC8qIExvY2FsQ3VycmVudFRy
YWl0Q29sbGVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTFDNEQwREQzMjREOUYxMEQwMDNENzQ5OCAvKiBHbHlwaEJ1ZmZlck1lbWJlcnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDNEQwREQx
MjREOUYwREIwMDNENzQ5OCAvKiBHbHlwaEJ1ZmZlck1lbWJlcnMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQzY2MjYxMTFDNkU3Q0E2MDBBQjUy
N0MgLyogRm9udEZhY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDFDNjYyNjBGMUM2RTdDQTYwMEFCNTI3QyAvKiBGb250RmFjZS5oICovOyB9OworCQkx
QzczQTcxMzIxODU3NTdFMDA0Q0NFQTUgLyogVGV4dFVuZGVybGluZU9mZnNldC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNCNkI0RkIyMTdCODM5NDAw
OTNCOUNEIC8qIFRleHRVbmRlcmxpbmVPZmZzZXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQzczQTcxNTIxODU3NTg3MDA0Q0NFQTUgLyogVGV4
dERlY29yYXRpb25UaGlja25lc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFDQjZCNEY4MjE3QjgzOTMwMDkzQjlDRCAvKiBUZXh0RGVjb3JhdGlvblRo
aWNrbmVzcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTFDODFCOTVBMEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQzgxQjk1NjBFOTcz
MzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFDODFCOTVDMEU5NzMzMDgwMDI2NkUwNyAv
KiBJbnNwZWN0b3JDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFDODFCOTU4MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0b3JDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQ0FGMzQ4
MTBBNkM0MDUyMDBBQkUwNkUgLyogV2ViU2NyaXB0T2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0FGMzQ3RTBBNkM0MDUyMDBBQkUwNkUgLyog
V2ViU2NyaXB0T2JqZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMUNBRjM0ODIwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFDQUYzNDdG
MEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QubW0gKi87IH07CisJCTFDQUYzNDgz
MEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3RQcml2YXRlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0FGMzQ4MDBBNkM0MDUyMDBBQkUw
NkUgLyogV2ViU2NyaXB0T2JqZWN0UHJpdmF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTFDQUY1NkRCMjUzMDFBQzgwMDE3QjQ3MiAvKiBEaXNw
bGF5TGlzdERyYXdHbHlwaHNSZWNvcmRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUNBRjU2RDgyNTMwMTQ1NzAwMTdCNDcyIC8qIERpc3BsYXlMaXN0
RHJhd0dseXBoc1JlY29yZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMUNDRDgxNTAyMjMxRjgzRTAwNjVGQzJCIC8qIFdlYkNvcmVSZXNvdXJj
ZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTI1NTE0MTZGRDIzNEYwMDNEN0FEQiAvKiBXZWJD
b3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUubW0gKi87IH07CisJCTFD
Q0RGNUJFMTk5MDMzMjQwMEJDRUJBRCAvKiBTVkdUb09URkZvbnRDb252ZXJzaW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NERjVCQzE5OTAzMzI0
MDBCQ0VCQUQgLyogU1ZHVG9PVEZGb250Q29udmVyc2lvbi5oICovOyB9OworCQkxQ0U4ODY0MTI2
MTA1QkYyMDAwQzgxNkMgLyogSW5NZW1vcnlEaXNwbGF5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNFODg2M0YyNjEwNUE1RjAwMEM4MTZDIC8q
IEluTWVtb3J5RGlzcGxheUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkxQ0U4RDEyNzI2MTg1QzBFMDBGQzNBRUYgLyogRGlzcGxheUxpc3RJ
dGVtQnVmZmVySWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUNFOEQxMjUyNjE4NUJEODAwRkMzQUVGIC8qIERpc3BsYXlMaXN0SXRlbUJ1
ZmZlcklkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkxQ0U4RDEyRTI2MTg2MUM0MDBGQzNBRUYgLyogRGlzcGxheUxpc3RJdGVyYXRv
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUNFOEQx
MkMyNjE4NjE2NDAwRkMzQUVGIC8qIERpc3BsYXlMaXN0SXRlcmF0b3IuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxQ0ZBRTMyMzBBNkQ2QTNGMDAz
MjU5M0QgLyogbGlib2JqYy5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFDRkFFMzIyMEE2RDZBM0YwMDMyNTkzRCAvKiBsaWJvYmpjLmR5bGli
ICovOyB9OworCQkxRDAwMjZBNDIzNzRENjI0MDBDQTZDREYgLyogSlNQaWN0dXJlSW5QaWN0dXJl
V2luZG93LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
RDAwMjZBMjIzNzRENjIzMDBDQTZDREYgLyogSlNQaWN0dXJlSW5QaWN0dXJlV2luZG93LmggKi87
IH07CisJCTFEMDAyNkFBMjM3NEY5RUEwMENBNkNERiAvKiBKU0VudGVyUGljdHVyZUluUGljdHVy
ZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
RDAwMjZBODIzNzRGOUQ5MDBDQTZDREYgLyogSlNFbnRlclBpY3R1cmVJblBpY3R1cmVFdmVudC5o
ICovOyB9OworCQkxRDJDODJCNzIzNkEzRjZBMDA1NUQ2QzUgLyogUGljdHVyZUluUGljdHVyZVN1
cHBvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFE
MkM4MkI2MjM2QTNGNkEwMDU1RDZDNSAvKiBQaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFEMkY4RTAzMjM0
NDc0RUYwMDk5M0I2OCAvKiBEb2N1bWVudFBpY3R1cmVJblBpY3R1cmUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFERUYwNkREMjMzRDJFMUMwMEVFMjI4
RCAvKiBEb2N1bWVudFBpY3R1cmVJblBpY3R1cmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxRDJGOEUwNDIzNDQ3NTE2MDA5OTNCNjggLyogRW50
ZXJQaWN0dXJlSW5QaWN0dXJlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFERUYwNkNBMjMzQzNEMEIwMEVFMjI4RCAvKiBFbnRlclBpY3R1cmVJ
blBpY3R1cmVFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTFEMkY4RTA1MjM0NDc1MUQwMDk5M0I2OCAvKiBIVE1MVmlkZW9FbGVtZW50UGlj
dHVyZUluUGljdHVyZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMURFRjA2Q0MyMzNDM0QyMDAwRUUyMjhEIC8qIEhUTUxWaWRlb0VsZW1lbnRQaWN0dXJl
SW5QaWN0dXJlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJMUQyRjhFMDYyMzQ0NzUyMzAwOTkzQjY4IC8qIFBpY3R1cmVJblBpY3R1cmVXaW5kb3cu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFERUYwNkNE
MjMzQzNEMkEwMEVFMjI4RCAvKiBQaWN0dXJlSW5QaWN0dXJlV2luZG93LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUQ0NzY1OEUyNUNDQTc3ODAw
N0FGMzEyIC8qIEltYWdlRGVjb2RlcklkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFENDc2NThEMjVDQ0E3NzgwMDdBRjMxMiAvKiBJbWFn
ZURlY29kZXJJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMUQ5RjBGQzEyMTIyMDI5QjAwNUQ4RkQ0IC8qIFNoYXJlRGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMURDNTU0MDAyMTFC
QThDODAwNEI3ODBFIC8qIFNoYXJlRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTFEQUIzMTEyMjUxRDZCRjMwMEZDOTQ4NSAvKiBXZWJWaWRl
b0NvbnRhaW5lckxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRDhCMzFBMTIzNzlEQzgzMDA4ODNGREUgLyogV2ViVmlkZW9Db250YWluZXJMYXll
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFE
QUIzMTE0MjUxRDcyNUMwMEZDOTQ4NSAvKiBWaWRlb0xheWVyTWFuYWdlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMURBQjMxMTMyNTFENzI1QzAwRkM5
NDg1IC8qIFZpZGVvTGF5ZXJNYW5hZ2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMURBQjMxMTUyNTFENzREQjAwRkM5NDg1IC8qIFZpZGVvTGF5
ZXJNYW5hZ2VyT2JqQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTJENUExOEUxQzU0NTkwMzAwREUzNEEzIC8qIFZpZGVvTGF5ZXJNYW5hZ2VyT2JqQy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFEQjY2
RDNCMjUzN0E5NTYwMEI2NzFCOSAvKiBBdWRpb091dHB1dFVuaXRBZGFwdG9yLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxREI2NkQzNzI1MzY3OEVBMDBC
NjcxQjkgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFEQkMxQjU2MjM0N0IzRDIwMEI5MDFBRiAvKiBQ
aWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFEQkMxQjU1MjM0N0IzRDIwMEI5MDFBRiAvKiBQaWN0dXJlSW5QaWN0
dXJlT2JzZXJ2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkxREQzQjRDNjI1MURBMEI4MDA2OUIyNEEgLyogVmlkZW9MYXllck1hbmFnZXJPYmpD
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTJENUEx
OEQxQzU0NTkwMzAwREUzNEEzIC8qIFZpZGVvTGF5ZXJNYW5hZ2VyT2JqQy5tbSAqLzsgfTsKKwkJ
MURGN0U4MUYyNTFBOUUwNjAwREI4RjYxIC8qIFRleHRUcmFja1JlcHJlc2VudGF0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREQxRTUyNTE2N0JB
NTY0MDBDRTgyMEIgLyogVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxRjAyMEFFRjI2NzgwRkNFMDAwMDgw
OUEgLyogS2V5Ym9hcmRTY3JvbGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFGMDIwQUVEMjY3ODBGQ0UwMDAwODA5QSAvKiBLZXlib2FyZFNjcm9sbC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFGMzZF
QTlDMUUyMUJBMTcwMDYyMUUyNSAvKiBXZWJCYWNrZ3JvdW5kVGFza0NvbnRyb2xsZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFGMzZFQTlBMUUyMUJB
MTcwMDYyMUUyNSAvKiBXZWJCYWNrZ3JvdW5kVGFza0NvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxRjcyQkYwQjE4N0ZENDVDMDAw
OUJDQjMgLyogVGlsZUNvbnRyb2xsZXJNZW1vcnlIYW5kbGVySU9TLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxRjcyQkYwOTE4N0ZENDI3MDAwOUJDQjMg
LyogVGlsZUNvbnRyb2xsZXJNZW1vcnlIYW5kbGVySU9TLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMUY4NzU2QjIxRTIyQzMzNTAwNDJDNDBEIC8q
IFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUY4NzU2QjExRTIyQkVFRjAwNDJDNDBEIC8qIFdlYlNR
TGl0ZURhdGFiYXNlVHJhY2tlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTFGQUZCRjE5MTVBNUZBNzQwMDA4M0EyMCAvKiBVVElVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFG
QUZCRjE2MTVBNUZBNTIwMDA4M0EyMCAvKiBVVElVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkxRkM0MEZCQTE2NTVDQ0I5MDA0MEYy
OUUgLyogU3ViaW1hZ2VDYWNoZVdpdGhUaW1lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUZDNDBGQjcxNjU1QzU5MTAwNDBGMjlFIC8qIFN1YmltYWdl
Q2FjaGVXaXRoVGltZXIuaCAqLzsgfTsKKwkJMUZEOTkyRjgyNkFBMjRGOTAwODhFNTk2IC8qIEtl
eWJvYXJkU2Nyb2xsaW5nQW5pbWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDFGRDk5MkY2MjZBQTI0RjgwMDg4RTU5NiAvKiBLZXlib2FyZFNjcm9s
bGluZ0FuaW1hdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMjBENjI5MjcxMjUzNjkwQjAwMDgxNTQzIC8qIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjBE
NjI5MjUxMjUzNjkwQjAwMDgxNTQzIC8qIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oICovOyB9
OworCQkyMjVBMTZCNTBENUMxMUU5MDAwOTAyOTUgLyogV2ViRXZlbnRSZWdpb24uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDIyNUExNkIzMEQ1QzExRTkw
MDA5MDI5NSAvKiBXZWJFdmVudFJlZ2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTIyOEMyODQ1MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRX
cmFwcGFibGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDIyOEMyODQ0MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRXcmFwcGFibGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyNEQ5MTI5MjEzQ0E5NTFF
MDBEMjE5MTUgLyogSlNTVkdBbHRHbHlwaERlZkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI0RDkxMjkwMTNDQTk1MUUwMEQyMTkxNSAvKiBK
U1NWR0FsdEdseXBoRGVmRWxlbWVudC5oICovOyB9OworCQkyNEQ5MTI5NjEzQ0E5NTYxMDBEMjE5
MTUgLyogSlNTVkdBbHRHbHlwaEl0ZW1FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNEQ5MTI5NDEzQ0E5NTYxMDBEMjE5MTUgLyogSlNTVkdB
bHRHbHlwaEl0ZW1FbGVtZW50LmggKi87IH07CisJCTI0RDkxMjlBMTNDQTk3MTQwMEQyMTkxNSAv
KiBKU1NWR0dseXBoUmVmRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMjREOTEyOTkxM0NBOTcxNDAwRDIxOTE1IC8qIEpTU1ZHR2x5cGhSZWZF
bGVtZW50LmggKi87IH07CisJCTI0RDkxMkIxMTNDQTlBMUYwMEQyMTkxNSAvKiBTVkdBbHRHbHlw
aERlZkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDI0RDkxMkFFMTNDQTlBMUYwMEQyMTkxNSAvKiBTVkdBbHRHbHlwaERlZkVsZW1lbnQuaCAq
LzsgfTsKKwkJMjREOTEyQjgxM0NBOUE2OTAwRDIxOTE1IC8qIFNWR0FsdEdseXBoSXRlbUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI0RDkx
MkI1MTNDQTlBNjkwMEQyMTkxNSAvKiBTVkdBbHRHbHlwaEl0ZW1FbGVtZW50LmggKi87IH07CisJ
CTI0RDkxMkJFMTNDQTlBOTcwMEQyMTkxNSAvKiBTVkdHbHlwaFJlZkVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI0RDkxMkJCMTNDQTlBOTcw
MEQyMTkxNSAvKiBTVkdHbHlwaFJlZkVsZW1lbnQuaCAqLzsgfTsKKwkJMjRGNTRFQUQxMDFGRTkx
NDAwMEFFNzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVIb3N0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNEY1NEVBQjEwMUZFOTE0MDAwQUU3NDEgLyogQXBw
bGljYXRpb25DYWNoZUhvc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkyNTQyRjREQjExNjZDMjVBMDBFODlBODYgLyogVXNlckdlc3R1cmVJbmRp
Y2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI1
NDJGNEQ5MTE2NkMyNUEwMEU4OUE4NiAvKiBVc2VyR2VzdHVyZUluZGljYXRvci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTI2MjM5MTM2MUE2NDhD
RUUwMDcyNTFBMyAvKiBDb250ZW50RXh0ZW5zaW9uc0RlYnVnZ2luZy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjYyMzkxMzUxQTY0OENFRTAwNzI1MUEz
IC8qIENvbnRlbnRFeHRlbnNpb25zRGVidWdnaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjYyRUM0MUExRDA3OEZCOTAwQkE3OEZDIC8qIEV2
ZW50VHJhY2tpbmdSZWdpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyNjJFQzQxOTFEMDc4RjNEMDBCQTc4RkMgLyogRXZlbnRUcmFja2luZ1JlZ2lv
bnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQky
NjU1NDEzOTE0ODk4MTFDMDAwREZDNUQgLyogS2V5RXZlbnRDb2Rlc0lPUy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjY1NTQxMzcxNDg5ODExQzAwMERG
QzVEIC8qIEtleUV2ZW50Q29kZXNJT1MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkyNjYwMUVCRjE0QjNCOUFEMDAxMkMwRkUgLyogUGxhdGZvcm1F
dmVudEZhY3RvcnlJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDI2NjAxRUJEMTRCM0I5QUQwMDEyQzBGRSAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeUlP
Uy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTI2
NzcyNUZEMUE1QjNBRDkwMDNDMjRERCAvKiBERkEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2NzcyNUY3MUE1QjNBRDkwMDNDMjRERCAvKiBERkEuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyNjc3MjVG
RjFBNUIzQUQ5MDAzQzI0REQgLyogREZBTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMjY3NzI1RjkxQTVCM0FEOTAwM0MyNEREIC8qIERGQU5vZGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyNjc3
MjYwMTFBNUIzQUQ5MDAzQzI0REQgLyogTkZBVG9ERkEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2NzcyNUZCMUE1QjNBRDkwMDNDMjRERCAvKiBORkFU
b0RGQS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTI2NzcyNjA1MUE1REY2RjIwMDNDMjRERCAvKiBVUkxGaWx0ZXJQYXJzZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2NzcyNjAzMUE1REY2RjIwMDND
MjRERCAvKiBVUkxGaWx0ZXJQYXJzZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkyNjkyMzk5NjE1MDVFMUFBMDA5RTU3RkMgLyogSlNJREJWZXJz
aW9uQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDI2OTIzOTkyMTUwNUUxQUEwMDlFNTdGQyAvKiBKU0lEQlZlcnNpb25DaGFuZ2VFdmVu
dC5oICovOyB9OworCQkyNjkzOTcyMjFBNEE0MTJGMDBFODM0OUQgLyogTkZBTm9kZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjY5Mzk3MjAxQTRBNDEy
RjAwRTgzNDlEIC8qIE5GQU5vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkyNjkzOTcyNDFBNEE1QjY0MDBFODM0OUQgLyogTkZBLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNjkzOTcyMzFBNEE1QjY0
MDBFODM0OUQgLyogTkZBLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMjZBNTE3RkUxQUI5MjIzODAwNjMzNURGIC8qIERGQU1pbmltaXplci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjZBNTE3RkMxQUI5
MjIzODAwNjMzNURGIC8qIERGQU1pbmltaXplci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTI2QTgwNzg1MUIxOEY5NzcwMEUyMTlCRSAvKiBERkFD
b21iaW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MjZBODA3ODMxQjE4Rjk3NzAwRTIxOUJFIC8qIERGQUNvbWJpbmVyLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjZBQTBGOUUxOEQyQTE4QjAwNDE5
MzgxIC8qIFNlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjZBQTBGOUQxOEQyQTE4QjAwNDE5MzgxIC8q
IFNlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuY3BwICovOyB9OworCQkyNkI5OTk4RjE4MDNB
RTcyMDBEMDExMjEgLyogUmVnaXN0ZXJBbGxvY2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2Qjk5OThFMTgwM0FFNzIwMEQwMTEyMSAvKiBSZWdp
c3RlckFsbG9jYXRvci5oICovOyB9OworCQkyNkI5OTk5MTE4MDNCM0M5MDBEMDExMjEgLyogU3Rh
Y2tBbGxvY2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDI2Qjk5OTkwMTgwM0IzQzkwMEQwMTEyMSAvKiBTdGFja0FsbG9jYXRvci5oICovOyB9Owor
CQkyNkI5OTk5MzE4MDNCOUQ5MDBEMDExMjEgLyogRnVuY3Rpb25DYWxsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNkI5OTk5MjE4MDNCOUQ5MDBEMDEx
MjEgLyogRnVuY3Rpb25DYWxsLmggKi87IH07CisJCTI2Qjk5OTk3MTgwNEQ1NDIwMEQwMTEyMSAv
KiBTZWxlY3RvckNvbXBpbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyNkI5OTk5NTE4MDRENTQyMDBEMDExMjEgLyogU2VsZWN0b3JDb21waWxlci5o
ICovOyB9OworCQkyNkU5NDREOTFBQzRCMkREMDA3Qjg1QjUgLyogQ29tYmluZWRVUkxGaWx0ZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNkU5NDRE
NTFBQzRCMkREMDA3Qjg1QjUgLyogQ29tYmluZWRVUkxGaWx0ZXJzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjZFOTQ0REQxQUM0QjRFQTAwN0I4
NUI1IC8qIFRlcm0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDI2RTk0NERDMUFDNEI0RUEwMDdCODVCNSAvKiBUZXJtLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjZFOThBMTAxMzBBOUZDQTAwOEVCN0Iy
IC8qIFRleHRDb2RlY0FTQ0lJRmFzdFBhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDI2RTk4QTBGMTMwQTlGQ0EwMDhFQjdCMiAvKiBUZXh0Q29kZWNB
U0NJSUZhc3RQYXRoLmggKi87IH07CisJCTI2RUE4OUE3MUI0RjJCNzUwMDhDNUZEMiAvKiBIYXNo
YWJsZUFjdGlvbkxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDI2RUE4OUE2MUI0RjJCNzUwMDhDNUZEMiAvKiBIYXNoYWJsZUFjdGlvbkxpc3QuaCAq
LzsgfTsKKwkJMjZGMEM4OTgxQTJFNzI0QjAwMjc5NEY4IC8qIENvbnRlbnRFeHRlbnNpb25QYXJz
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2RjBD
ODk2MUEyRTcyNEIwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uUGFyc2VyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjZGMEM4OUMxQTJFQzEx
MDAwMjc5NEY4IC8qIENvbnRlbnRFeHRlbnNpb25SdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNkYwQzg5QTFBMkVDMTEwMDAyNzk0RjggLyogQ29u
dGVudEV4dGVuc2lvblJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQkyNkYwQzhBMDFBMkVDM0JFMDAyNzk0RjggLyogQ29udGVudEV4dGVuc2lv
bnNCYWNrZW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAyNkYwQzg5RTFBMkVDM0JFMDAyNzk0RjggLyogQ29udGVudEV4dGVuc2lvbnNCYWNrZW5kLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjZGNzU2
QjAxQjNCNjVBQzAwMDVERDc5IC8qIE11dGFibGVSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjZGNzU2QUUxQjNCNjVBQzAwMDVERDc5IC8qIE11
dGFibGVSYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTI2Rjc1NkIxMUIzQjY1QUMwMDA1REQ3OSAvKiBNdXRhYmxlUmFuZ2VMaXN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyNkY3NTZBRjFCM0I2
NUFDMDAwNURENzkgLyogTXV0YWJsZVJhbmdlTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTI2Rjc1NkIzMUIzQjY2RjcwMDA1REQ3OSAvKiBJ
bW11dGFibGVORkEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDI2Rjc1NkIyMUIzQjY2RjcwMDA1REQ3OSAvKiBJbW11dGFibGVORkEuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyNkY3NTZCNTFCM0I2OEYy
MDAwNURENzkgLyogSW1tdXRhYmxlTkZBTm9kZUJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2Rjc1NkI0MUIzQjY4RjIwMDA1REQ3OSAvKiBJ
bW11dGFibGVORkFOb2RlQnVpbGRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTI2RjlBODM4MThBMDQ2QUMwMEFFQjg4QSAvKiBWaWV3cG9ydENv
bmZpZ3VyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMjZGOUE4MzYxOEEwNDZBQzAwQUVCODhBIC8qIFZpZXdwb3J0Q29uZmlndXJhdGlvbi5j
cHAgKi87IH07CisJCTI2RjlBODM5MThBMDQ2QUMwMEFFQjg4QSAvKiBWaWV3cG9ydENvbmZpZ3Vy
YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2
RjlBODM3MThBMDQ2QUMwMEFFQjg4QSAvKiBWaWV3cG9ydENvbmZpZ3VyYXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyN0UzQzgwODI1N0Y1
RTZFMDBDOTg2QUIgLyogQU5HTEVIZWFkZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAyN0UzQzgwNjI1N0Y1RTZFMDBDOTg2QUIgLyogQU5HTEVIZWFk
ZXJzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MjkxNEUzMDgxQ0FCNUE0NDAwNDk5NjZGIC8qIEFjY2Vzc2liaWxpdHlBdHRhY2htZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOTE0RTMwNjFDQUI1
QTQ0MDA0OTk2NkYgLyogQWNjZXNzaWJpbGl0eUF0dGFjaG1lbnQuaCAqLzsgfTsKKwkJMjkzNkJG
NUMyMUQ2OUU0QjAwNEE4RkM5IC8qIEFjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5MzZCRjVBMjFENjk5
OUUwMDRBOEZDOSAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjkzRUFFMUYxMzU2QjJGRTAw
NjdBQ0Y5IC8qIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjkzRUFFMUUxMzU2QjJGRTAwNjdBQ0Y5IC8qIFJ1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTI5NDg5RkM3MTJDMDBGMDMwMEQ4M0YwRiAvKiBBY2Nlc3NpYmls
aXR5U2Nyb2xsVmlldy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMjk0ODlGQzUxMkMwMEYwMzAwRDgzRjBGIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3
LmggKi87IH07CisJCTI5N0JFM0Q1MTZDMDNDMDgwMDMzMTZCRCAvKiBQbGF0Zm9ybVNwZWVjaFN5
bnRoZXNpc1V0dGVyYW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMjUyN0NDOTExNkJGOEJBMTAwOUREQUMwIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhl
c2lzVXR0ZXJhbmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMjk3QkUzRDYxNkMwM0MwQjAwMzMxNkJEIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhl
c2lzVm9pY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDI1MjdDQzkyMTZCRjkwQjQwMDlEREFDMCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjk3
QkUzRDcxNkMwM0MwRTAwMzMxNkJEIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RTREOERGMTZCMDk0
MEYwMEM4NDcwNCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMjlBODEyMkIwRkJCOUMxRDAwNTEw
MjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMEQwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxp
dHlUYWJsZS5oICovOyB9OworCQkyOUE4MTIyQzBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJp
bGl0eUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDI5QTgxMjBFMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5TGlzdC5oICovOyB9Owor
CQkyOUE4MTIyRTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkQ2VsbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMTAw
RkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaCAqLzsgfTsKKwkJ
MjlBODEyMzEwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMTMwRkJCOUMx
RDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oICovOyB9OworCQkyOUE4MTIzMjBG
QkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRhYmxlQ2VsbC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMTQwRkJCOUMxRDAwNTEwMjkz
IC8qIEFjY2Vzc2liaWxpdHlUYWJsZUNlbGwuaCAqLzsgfTsKKwkJMjlBODEyMzMwRkJCOUMxRDAw
NTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZFJvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMTUwRkJCOUMxRDAwNTEwMjkzIC8qIEFj
Y2Vzc2liaWxpdHlBUklBR3JpZFJvdy5oICovOyB9OworCQkyOUE4MTIzNjBGQkI5QzFEMDA1MTAy
OTMgLyogQWNjZXNzaWJpbGl0eU9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMTgwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxp
dHlPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkyOUE4MTIzODBGQkI5QzFEMDA1MTAyOTMgLyogQVhPYmplY3RDYWNoZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMUEwRkJCOUMxRDAw
NTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkyOUE4MTIzOTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJp
bGl0eVJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMjlBODEyMUIwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QuaCAqLzsgfTsKKwkJMjlBODEyM0IwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxp
dHlJbWFnZU1hcExpbmsuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDI5QTgxMjFEMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5SW1hZ2VNYXBM
aW5rLmggKi87IH07CisJCTI5QTgxMjNGMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5
VGFibGVIZWFkZXJDb250YWluZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDI5QTgxMjIxMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5VGFi
bGVIZWFkZXJDb250YWluZXIuaCAqLzsgfTsKKwkJMjlBODEyNDEwRkJCOUMxRDAwNTEwMjkzIC8q
IEFjY2Vzc2liaWxpdHlUYWJsZUNvbHVtbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMjlBODEyMjMwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxp
dHlUYWJsZUNvbHVtbi5oICovOyB9OworCQkyOUE4MTI0MjBGQkI5QzFEMDA1MTAyOTMgLyogQWNj
ZXNzaWJpbGl0eUxpc3RCb3hPcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDI5QTgxMjI0MEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5
TGlzdEJveE9wdGlvbi5oICovOyB9OworCQkyOUE4MTI0MzBGQkI5QzFEMDA1MTAyOTMgLyogQWNj
ZXNzaWJpbGl0eUxpc3RCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDI5QTgxMjI1MEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5TGlzdEJv
eC5oICovOyB9OworCQkyOUE4MTI0OTBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0
eU9iamVjdFdyYXBwZXJCYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyOUE4MTI0NTBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMjlBQ0IyMTIxNDNFNzEyODAwNkJDQTVGIC8qIEFjY2Vzc2liaWxpdHlNb2Nr
T2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
OUFDQjIxMTE0M0U3MTI4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0eU1vY2tPYmplY3QuaCAqLzsg
fTsKKwkJMjlBRTIxMkQyMUFCOUVFQjAwODY5MjgzIC8qIEFYSXNvbGF0ZWRUcmVlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUFFMjEyQjIxQUI5RUVC
MDA4NjkyODMgLyogQVhJc29sYXRlZFRyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkyOUFFMjEzNTIxQUJBNDhBMDA4NjkyODMgLyogQVhJc29s
YXRlZE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMjlBRTIxMzMyMUFCQTQ4QTAwODY5MjgzIC8qIEFYSXNvbGF0ZWRPYmplY3QuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyOUQ3QkNGQTE0NDRB
RjdEMDA3MDYxOUMgLyogQWNjZXNzaWJpbGl0eVNwaW5CdXR0b24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RDdCQ0Y5MTQ0NEFGN0QwMDcwNjE5QyAv
KiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oICovOyB9OworCQkyOUZBRjRCNjE5NUFCMDg5MDBB
NTIyREMgLyogVGV4dFVuZG9JbnNlcnRpb25NYXJrdXBNYWMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5RkFGNEI1MTk1QUIwODkwMEE1MjJEQyAvKiBU
ZXh0VW5kb0luc2VydGlvbk1hcmt1cE1hYy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTJBNDEwN0E0MjZDQjY2RjgwMDNCRjc5NyAvKiBDU1NLZXl3
b3JkVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJBNDEwN0EzMjZDQjY2RUUwMDNCRjc5NyAvKiBDU1NLZXl3b3JkVmFsdWUuaCAqLzsgfTsKKwkJ
MkFCRkZGRjMyNkM1MzVDMDAwNDg4NzVCIC8qIENTU09NVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkFCRkZGRjEy
NkM1MzVCRDAwNDg4NzVCIC8qIENTU09NVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5oICovOyB9Owor
CQkyQUNCNEQyQjI2REM0QUNFMDBCRUI3NTMgLyogQ1NTTnVtZXJpY0ZhY3RvcnkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJBQ0I0RDI3MjZEQzRBQjIw
MEJFQjc1MyAvKiBDU1NOdW1lcmljRmFjdG9yeS5oICovOyB9OworCQkyQUVGNkZEMzI2RTdFQ0E1
MDAzMjZEMDIgLyogQ1NTTWF0aEludmVydC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkFFRjZGQzYyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhJbnZl
cnQuaCAqLzsgfTsKKwkJMkFFRjZGRDQyNkU3RUNBQTAwMzI2RDAyIC8qIENTU01hdGhNYXguaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJBRUY2RkJEMjZF
NzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRoTWF4LmggKi87IH07CisJCTJBRUY2RkQ1MjZFN0VDQUUw
MDMyNkQwMiAvKiBDU1NNYXRoTWluLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAyQUVGNkZDQTI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aE1pbi5oICov
OyB9OworCQkyQUVGNkZENjI2RTdFQ0I0MDAzMjZEMDIgLyogQ1NTTWF0aE5lZ2F0ZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkFFRjZGRDIyNkU3RUM5
QjAwMzI2RDAyIC8qIENTU01hdGhOZWdhdGUuaCAqLzsgfTsKKwkJMkFFRjZGRDcyNkU3RUNCODAw
MzI2RDAyIC8qIENTU01hdGhPcGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkFFRjZGQzUyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhPcGVy
YXRvci5oICovOyB9OworCQkyQUVGNkZEODI2RTdFQ0JDMDAzMjZEMDIgLyogQ1NTTWF0aFByb2R1
Y3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJBRUY2
RkMyMjZFNzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRoUHJvZHVjdC5oICovOyB9OworCQkyQUVGNkZE
OTI2RTdFQ0MwMDAzMjZEMDIgLyogQ1NTTWF0aFN1bS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkFFRjZGQzEyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01h
dGhTdW0uaCAqLzsgfTsKKwkJMkFFRjZGREEyNkU3RUNDMzAwMzI2RDAyIC8qIENTU01hdGhWYWx1
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkFFRjZG
QzcyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhWYWx1ZS5oICovOyB9OworCQkyQUVGNkZEQjI2
RTdFQ0M3MDAzMjZEMDIgLyogQ1NTTnVtZXJpY0FycmF5LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQUVGNkZCRjI2RTcxNkVFMDAzMjZEMDIgLyogQ1NT
TnVtZXJpY0FycmF5LmggKi87IH07CisJCTJBRUY2RkRDMjZFN0VDQ0MwMDMyNkQwMiAvKiBDU1NO
dW1lcmljQmFzZVR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDJBRUY2RkNGMjZFNzFGMkUwMDMyNkQwMiAvKiBDU1NOdW1lcmljQmFzZVR5cGUuaCAq
LzsgfTsKKwkJMkFFRjZGREQyNkU3RUNDRjAwMzI2RDAyIC8qIENTU051bWVyaWNUeXBlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQUVGNkZDRTI2RTcx
RjJEMDAzMjZEMDIgLyogQ1NTTnVtZXJpY1R5cGUuaCAqLzsgfTsKKwkJMkIzNjVDODQxNTI1MTE5
RTAwOTFEMjdCIC8qIFJlbmRlclNWR0VsbGlwc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJCNDIzNUEwMTUyNTBGNjAwMERCQkNEOCAvKiBSZW5kZXJT
VkdFbGxpcHNlLmggKi87IH07CisJCTJCRThFMkM3MTJBNTg5RUMwMEZBRDU1MCAvKiBIVE1MTWV0
YUNoYXJzZXRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDJCRThFMkM2MTJBNTg5RUMwMEZBRDU1MCAvKiBIVE1MTWV0YUNoYXJzZXRQYXJzZXIu
aCAqLzsgfTsKKwkJMkM4NTY1MzQyNEMwRjczQzAwQTM3NjczIC8qIEZpbHRlckVmZmVjdFJlbmRl
cmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQzg1
NjUzMzI0QzBGNzNDMDBBMzc2NzMgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuaCAqLzsgfTsKKwkJ
MkNBQTRBM0EyNEJFMThCNzAwOURFRTcwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyQ0FBNEEz
OTI0QkUxOEI3MDA5REVFNzAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2UuaCAqLzsg
fTsKKwkJMkQwNjIxNDQxREE2MzlCNjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2
ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJE
MDYyMTQyMURBNjM5ODgwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAg
Ki87IH07CisJCTJEMDYyMTQ1MURBNjM5QkEwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleU1lc3Nh
Z2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkQwNjIxNDMxREE2Mzk4ODAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50Lmgg
Ki87IH07CisJCTJEMDYyMTREMURBNjNBOEIwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleXMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQwNjIxNDkx
REE2M0E3OTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5cy5jcHAgKi87IH07CisJCTJEMDYyMTRF
MURBNjNBOEUwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEMDYyMTRBMURBNjNBNzkwMEE3RkIyNiAvKiBX
ZWJLaXRNZWRpYUtleXMuaCAqLzsgfTsKKwkJMkQwNjIxNEYxREE2M0E5MTAwQTdGQjI2IC8qIFdl
YktpdE1lZGlhS2V5U2Vzc2lvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAyRDA2MjE0QjFEQTYzQTc5MDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFLZXlT
ZXNzaW9uLmNwcCAqLzsgfTsKKwkJMkQwNjIxNTAxREE2M0E5NDAwQTdGQjI2IC8qIFdlYktpdE1l
ZGlhS2V5U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMkQwNjIxNEMxREE2M0E3OTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5U2Vzc2lvbi5o
ICovOyB9OworCQkyRDA2MjE1MTFEQTYzQTlGMDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFLZXlOZWVk
ZWRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkQwNjIxNDgxREE2M0E3OTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TmVlZGVkRXZlbnQuaCAq
LzsgfTsKKwkJMkQwNjIxNTIxREE2M0FBMjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TmVlZGVk
RXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkQwNjIxNDcxREE2M0E3OTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TmVlZGVkRXZlbnQuY3Bw
ICovOyB9OworCQkyRDBCNEFBQjE4REExQ0NEMDA0MzRERTEgLyogSU9TdXJmYWNlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDBCNEFBOTE4REExQ0NE
MDA0MzRERTEgLyogSU9TdXJmYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJMkQyMjgzMDMyM0E4NDcwNzAwMzY0QjdFIC8qIEN1cnNvck1hYy5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1ODc4NEYw
MDJERTM3NTkwMUVBNDEyMiAvKiBDdXJzb3JNYWMubW0gKi87IH07CisJCTJEMjkzODZCMjM1RjZC
NjkwMEM3RjNCMiAvKiBFeGNlcHRpb25EZXRhaWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDI5Mzg2OTIzNUY2QjY4MDBDN0YzQjIgLyogRXhjZXB0
aW9uRGV0YWlscy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTJEMjlFQ0M2MTkyRUNDODMwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JD
bGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJE
MjlFQ0MyMTkyRUNDODMwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRDI5RUND
ODE5MkVDQzgzMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQyOUVDQzQxOTJFQ0M4
MzAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRDI5RUNDQTE5MkYxRjFEMDA5
ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDI5RUNDOTE5MkYxRjFEMDA5ODRCNzggLyogRGlz
cGxheVJlZnJlc2hNb25pdG9ySU9TLmggKi87IH07CisJCTJEMkJFQjMxMjIzNEEzMzUwMDU1NDRD
QSAvKiBFbGVtZW50SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkQyQkVCMkYyMjM0QTMzNDAwNTU0NENBIC8qIEVsZW1lbnRJZGVudGlm
aWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
MkQzQTBFMzYxM0E3RDc2MTAwRTg1QUYwIC8qIFNWR1BhcnNpbmdFcnJvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQzQTBFMzUxM0E3RDc2MTAwRTg1
QUYwIC8qIFNWR1BhcnNpbmdFcnJvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTJEM0VGNDQ4MTkxNzkxNUMwMDAzNDE4NCAvKiBXZWJBY3Rpb25E
aXNhYmxpbmdDQUxheWVyRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJEM0VGNDQ0MTkxNzkxNUMwMDAzNDE4NCAvKiBXZWJBY3Rpb25EaXNh
YmxpbmdDQUxheWVyRGVsZWdhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkyRDNFRjQ0QTE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5
ZXJFeHRyYXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJEM0VGNDQ2MTkxNzkxNUMwMDAzNDE4NCAvKiBXZWJDb3JlQ0FMYXllckV4dHJhcy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJENDE1MERFMUMx
Rjg2OEMwMDBBM0JBMiAvKiBKU01vY2tQYWdlT3ZlcmxheS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDZGM0U5MjFDMUY4NTU1MDA2MURCRDQgLyog
SlNNb2NrUGFnZU92ZXJsYXkuY3BwICovOyB9OworCQkyRDQxNTBERTFDMUY4NjhDMDAwQTNCQTMg
LyogSlNJbnRlcm5hbHNTZXRMaWtlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJENkYzRTkyMUMxRjg1NTUwMDYxREJENSAvKiBKU0ludGVybmFsc1Nl
dExpa2UuY3BwICovOyB9OworCQkyRDQ4MUYwMjE0NkI1QzU1MDBBQTc4MzQgLyogQ3Jvc3NmYWRl
R2VuZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDJEMkZDMDU1MTQ2MENENkYwMDI2MzYzMyAvKiBDcm9zc2ZhZGVHZW5lcmF0ZWRJbWFn
ZS5oICovOyB9OworCQkyRDQ4MUYwNDE0NkI1QzZCMDBBQTc4MzQgLyogR3JhZGllbnRJbWFnZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQyRkMwNTcx
NDYwQ0Q2RjAwMjYzNjMzIC8qIEdyYWRpZW50SW1hZ2UuaCAqLzsgfTsKKwkJMkQ0Rjk2RjYxQTFF
Q0MyNDAwOThCRjg4IC8qIFRleHRJbmRpY2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENEY5NkYyMUExRUNDMjQwMDk4QkY4OCAvKiBUZXh0SW5k
aWNhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMkQ0Rjk2RjcxQTFFQ0MyNDAwOThCRjg4IC8qIFRleHRJbmRpY2F0b3JXaW5kb3cuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENEY5NkYzMUExRUND
MjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9yV2luZG93LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ1MDAyRkMxQjU2RDc5OTAwMjBBQUY3IC8q
IFBhdGhVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDJENTAwMkZBMUI1NkQ3OTkwMDIwQUFGNyAvKiBQYXRoVXRpbGl0aWVzLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ1MEE0QjcxQ0Ux
MEUwMDAwMTk4MDQ5IC8qIEF0dGFjaG1lbnRQbGFjZWhvbGRlci5wbmcgaW4gUmVzb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENTBBNEI1MUNFMTBFMDAwMDE5ODA0
OSAvKiBBdHRhY2htZW50UGxhY2Vob2xkZXIucG5nICovOyB9OworCQkyRDUwQTRCODFDRTEwRTAw
MDAxOTgwNDkgLyogQXR0YWNobWVudFBsYWNlaG9sZGVyQDJ4LnBuZyBpbiBSZXNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ1MEE0QjYxQ0UxMEUwMDAwMTk4MDQ5
IC8qIEF0dGFjaG1lbnRQbGFjZWhvbGRlckAyeC5wbmcgKi87IH07CisJCTJENTY0NkIwMUI4Rjg0
OTMwMDNDNDk5NCAvKiBEaWN0aW9uYXJ5UG9wdXBJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDU2NDZBRjFCOEY4NDkzMDAzQzQ5OTQgLyogRGlj
dGlvbmFyeVBvcHVwSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTJENUE1OTMxMTUyNTI1RDAwMDM2RUU1MSAvKiBJbWFnZU9yaWVudGF0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODc0OEQ2
NjEyQ0MzNzYzMDAxRkJBNDEgLyogSW1hZ2VPcmllbnRhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJENUJDNDI3MTZGODgyRUUwMDcwNDhE
MCAvKiBTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDVCQzQyNTE2Rjg4MkJFMDA3MDQ4RDAgLyogU2Vj
dXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTJENUM5RDAwMTlDN0I1MkUwMEIzQzVDMSAvKiBQYWdlT3Zl
cmxheS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ1
QzlDRkMxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ1QzlEMDIxOUM3QjUyRTAwQjNDNUMx
IC8qIFBhZ2VPdmVybGF5Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkQ1QzlDRkUxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5
Q29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTJENkYzRTkwMUMxRUNCMjcwMDYxREJENCAvKiBNb2NrUGFnZU92ZXJsYXkuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ2RjNFOEExQzFF
Q0IxQzAwNjFEQkQ0IC8qIE1vY2tQYWdlT3ZlcmxheS5jcHAgKi87IH07CisJCTJENkYzRTkxMUMx
RUNCMkYwMDYxREJENCAvKiBNb2NrUGFnZU92ZXJsYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENkYzRThCMUMxRUNCMUMwMDYxREJENCAvKiBNb2Nr
UGFnZU92ZXJsYXkuaCAqLzsgfTsKKwkJMkQ3MEJBMTMxODA3NERERjAwMDE5MDhBIC8qIFBsYXRm
b3JtQ0FMYXllckNvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAyRDcwQkExMjE4MDc0RERGMDAwMTkwOEEgLyogUGxhdGZvcm1DQUxheWVyQ29jb2Eu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRDc2
QkI4MjE5NDU2MzI0MDBDRkQyOUEgLyogUnVuTG9vcE9ic2VydmVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDc2QkI4MDE5NDU2MzI0MDBDRkQyOUEg
LyogUnVuTG9vcE9ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMkQ3NzA1QzcyNTUyNzZDRDAwMUQwQzk0IC8qIFBsYXRmb3JtSW1hZ2VC
dWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcy
QkFDM0E2MjNFMTczMjgwMDhENzQxQyAvKiBQbGF0Zm9ybUltYWdlQnVmZmVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ3NzA1QzkyNTUyOEQz
NDAwMUQwQzk0IC8qIEltYWdlQnVmZmVyQ0dCaXRtYXBCYWNrZW5kLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MkJBQzNBQTIzRTFFNTQ0MDA4RDc0MUMg
LyogSW1hZ2VCdWZmZXJDR0JpdG1hcEJhY2tlbmQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRDdEQTBGMjI0MzVFQjE5MDBGMDQ4RDEgLyogV2Vi
Vmlld1Zpc3VhbElkZW50aWZpY2F0aW9uT3ZlcmxheS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ3REEwRUYyNDM1RUIxNzAwRjA0OEQxIC8qIFdlYlZp
ZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJsYXkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRDdFRDBBQjFCQUU5OTE3MDA0M0IzRTUgLyogVGlt
ZXJFdmVudEJhc2VkTW9jay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMkQ3RUQwQTkxQkFFOTkxNzAwNDNCM0U1IC8qIFRpbWVyRXZlbnRCYXNlZE1vY2su
aCAqLzsgfTsKKwkJMkQ4Mjg3RjcxNkU0QTAzODAwODZCRDAwIC8qIEhpdFRlc3RMb2NhdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ4Mjg3RjUx
NkU0QTAzODAwODZCRDAwIC8qIEhpdFRlc3RMb2NhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJEOEI5MkNFMjAzRDEzRTEwMDlDODY4RiAv
KiBVbmlmaWVkU291cmNlNDgxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFNUY4NEFEMUZBMUE0OEIwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDgx
LmNwcCAqLzsgfTsKKwkJMkQ4QjkyQ0YyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U0
ODIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1
Rjg0QzgxRkExQTRBNDAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODIuY3BwICovOyB9OworCQky
RDhCOTJEMDIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTQ4My5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBOTFGQTFBNDg3MDA2
REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4My5jcHAgKi87IH07CisJCTJEOEI5MkQxMjAzRDEzRTEw
MDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEEyMUZBMUE0ODEwMDZEQjYzQiAvKiBVbmlmaWVk
U291cmNlNDg0LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRDIyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZp
ZWRTb3VyY2U0ODUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREU1Rjg0QzQxRkExQTRBMDAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODUuY3BwICov
OyB9OworCQkyRDhCOTJEMzIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTQ4Ni5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRDQzFG
QTFBNEE4MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4Ni5jcHAgKi87IH07CisJCTJEOEI5MkQ0
MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg3LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEM1MUZBMUE0QTEwMDZEQjYzQiAv
KiBVbmlmaWVkU291cmNlNDg3LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRDUyMDNEMTNFMTAwOUM4NjhG
IC8qIFVuaWZpZWRTb3VyY2U0ODguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREU1Rjg0QzYxRkExQTRBMjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0
ODguY3BwICovOyB9OworCQkyRDhCOTJENjIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJj
ZTQ4OS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RTVGODRDRjFGQTFBNEFCMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4OS5jcHAgKi87IH07CisJ
CTJEOEI5MkQ3MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDkwLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEJEMUZBMUE0OUEw
MDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDkwLmNwcCAqLzsgfTsKKwkJMkQ4QjkyRDgyMDNEMTNF
MTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U0OTEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QjYxRkExQTQ5MzAwNkRCNjNCIC8qIFVuaWZp
ZWRTb3VyY2U0OTEuY3BwICovOyB9OworCQkyRDhCOTJEOTIwM0QxM0UxMDA5Qzg2OEYgLyogVW5p
ZmllZFNvdXJjZTQ5Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERTVGODRDMDFGQTFBNDlEMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5Mi5jcHAg
Ki87IH07CisJCTJEOEI5MkRBMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDkzLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEE0
MUZBMUE0ODMwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDkzLmNwcCAqLzsgfTsKKwkJMkQ4Qjky
REIyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U0OTQuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QUYxRkExQTQ4RDAwNkRCNjNC
IC8qIFVuaWZpZWRTb3VyY2U0OTQuY3BwICovOyB9OworCQkyRDhCOTJEQzIwM0QxM0UxMDA5Qzg2
OEYgLyogVW5pZmllZFNvdXJjZTQ5NS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBRTFGQTFBNDhDMDA2REI2M0IgLyogVW5pZmllZFNvdXJj
ZTQ5NS5jcHAgKi87IH07CisJCTJEOEI5MkREMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291
cmNlNDk2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFNUY4NEE4MUZBMUE0ODYwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDk2LmNwcCAqLzsgfTsK
KwkJMkQ4QjkyREUyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U0OTcuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QUExRkExQTQ4
ODAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0OTcuY3BwICovOyB9OworCQkyRDhCOTJERjIwM0Qx
M0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTQ5OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBNjFGQTFBNDg0MDA2REI2M0IgLyogVW5p
ZmllZFNvdXJjZTQ5OC5jcHAgKi87IH07CisJCTJEOEI5MkUwMjAzRDEzRTEwMDlDODY4RiAvKiBV
bmlmaWVkU291cmNlNDk5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFNUY4NEIwMUZBMUE0OEUwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDk5LmNw
cCAqLzsgfTsKKwkJMkQ4QjkyRTEyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MDAu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0
QjMxRkExQTQ5MTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDAuY3BwICovOyB9OworCQkyRDhC
OTJFMjIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUwMS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVCQjFGQTIzODM5MDA2REI2
M0IgLyogVW5pZmllZFNvdXJjZTUwMS5jcHAgKi87IH07CisJCTJEOEI5MkUzMjAzRDEzRTEwMDlD
ODY4RiAvKiBVbmlmaWVkU291cmNlNTAyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUMyMUZBMjM4M0YwMDZEQjYzQiAvKiBVbmlmaWVkU291
cmNlNTAyLmNwcCAqLzsgfTsKKwkJMkQ4QjkyRTQyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRT
b3VyY2U1MDMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1Rjg1QkQxRkEyMzgzQTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDMuY3BwICovOyB9
OworCQkyRDhCOTJFNTIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUwNC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDODFGQTIz
ODQ2MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUwNC5jcHAgKi87IH07CisJCTJEOEI5MkU2MjAz
RDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA1LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUM3MUZBMjM4NDUwMDZEQjYzQiAvKiBV
bmlmaWVkU291cmNlNTA1LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRTcyMDNEMTNFMTAwOUM4NjhGIC8q
IFVuaWZpZWRTb3VyY2U1MDYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREU1Rjg1QzUxRkEyMzg0MzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDYu
Y3BwICovOyB9OworCQkyRDhCOTJFODIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUw
Ny5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVG
ODVCRTFGQTIzODNCMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUwNy5jcHAgKi87IH07CisJCTJE
OEI5MkU5MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA4LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUI4MUZBMjM4MzYwMDZE
QjYzQiAvKiBVbmlmaWVkU291cmNlNTA4LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRUEyMDNEMTNFMTAw
OUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MDkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1RDAxRkEyMzg1MjAwNkRCNjNCIC8qIFVuaWZpZWRT
b3VyY2U1MDkuY3BwICovOyB9OworCQkyRDhCOTJFQjIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmll
ZFNvdXJjZTUxMC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERTVGODVDMDFGQTIzODNEMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUxMC5jcHAgKi87
IH07CisJCTJEOEI5MkVDMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTExLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUNDMUZB
MjM4NEMwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTExLmNwcCAqLzsgfTsKKwkJMkQ4QjkyRUQy
MDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MTIuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QkMxRkEyMzgzQTAwNkRCNjNCIC8q
IFVuaWZpZWRTb3VyY2U1MTIuY3BwICovOyB9OworCQkyRDhCOTJFRTIwM0QxM0UxMDA5Qzg2OEYg
LyogVW5pZmllZFNvdXJjZTUxMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERTVGODVDMzFGQTIzODQwMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUx
My5jcHAgKi87IH07CisJCTJEOEI5MkVGMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNl
NTE0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
NUY4NUI5MUZBMjM4MzcwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTE0LmNwcCAqLzsgfTsKKwkJ
MkQ4QjkyRjAyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MTUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QkYxRkEyMzgzQzAw
NkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTUuY3BwICovOyB9OworCQkyRDhCOTJGMTIwM0QxM0Ux
MDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUxNi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVCQTFGQTIzODM4MDA2REI2M0IgLyogVW5pZmll
ZFNvdXJjZTUxNi5jcHAgKi87IH07CisJCTJEOEI5MkYyMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlm
aWVkU291cmNlNTE3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4NUNCMUZBMjM4NEIwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTE3LmNwcCAq
LzsgfTsKKwkJMkQ4QjkyRjMyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MTguY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QjYx
RkEyMzgzNTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTguY3BwICovOyB9OworCQkyRDhCOTJG
NDIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUxOS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVCNzFGQTIzODM1MDA2REI2M0Ig
LyogVW5pZmllZFNvdXJjZTUxOS5jcHAgKi87IH07CisJCTJEOEI5MkY1MjAzRDEzRTEwMDlDODY4
RiAvKiBVbmlmaWVkU291cmNlNTIwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4NUMxMUZBMjM4M0UwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNl
NTIwLmNwcCAqLzsgfTsKKwkJMkQ4QjkyRjYyMDNEMTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3Vy
Y2U1MjEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REU1Rjg1QzQxRkEyMzg0MjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjEuY3BwICovOyB9Owor
CQkyRDhCOTJGNzIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUyMi5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDOTFGQTIzODQ4
MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyMi5jcHAgKi87IH07CisJCTJEOEI5MkY4MjAzRDEz
RTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTIzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUNBMUZBMjM4NEEwMDZEQjYzQiAvKiBVbmlm
aWVkU291cmNlNTIzLmNwcCAqLzsgfTsKKwkJMkQ4QjkyRjkyMDNEMTNFMTAwOUM4NjhGIC8qIFVu
aWZpZWRTb3VyY2U1MjQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1Rjg1Q0QxRkEyMzg0RDAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjQuY3Bw
ICovOyB9OworCQkyRDhCOTJGQTIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNvdXJjZTUyNS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVD
RTFGQTIzODRFMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyNS5jcHAgKi87IH07CisJCTJEOEI5
MkZCMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTI2LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUQxMUZBMjM4NTQwMDZEQjYz
QiAvKiBVbmlmaWVkU291cmNlNTI2LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRkMyMDNEMTNFMTAwOUM4
NjhGIC8qIFVuaWZpZWRTb3VyY2U1MjcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QzYxRkEyMzg0NDAwNkRCNjNCIC8qIFVuaWZpZWRTb3Vy
Y2U1MjcuY3BwICovOyB9OworCQkyRDhCOTJGRDIwM0QxM0UxMDA5Qzg2OEYgLyogVW5pZmllZFNv
dXJjZTUyOC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODVEMjFGQTIzODU2MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyOC5jcHAgKi87IH07
CisJCTJEOEI5MkZFMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTI5LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUNGMUZBMjM4
NTAwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTI5LmNwcCAqLzsgfTsKKwkJMkQ4QjkyRkYyMDNE
MTNFMTAwOUM4NjhGIC8qIFVuaWZpZWRTb3VyY2U1MzAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1RDMxRkEyMzg1OTAwNkRCNjNCIC8qIFVu
aWZpZWRTb3VyY2U1MzAuY3BwICovOyB9OworCQkyRDhGRUJERDE0M0UzRUY3MDA3MjUwMkIgLyog
Q1NTQ3Jvc3NmYWRlVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJEOEZFQkRCMTQzRTNFRjcwMDcyNTAyQiAvKiBDU1NDcm9zc2ZhZGVWYWx1ZS5o
ICovOyB9OworCQkyRDkwNjYwNzBCRTE0MUQ0MDA5NTY5OTggLyogUmVuZGVyTGF5b3V0U3RhdGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOTA2NjA1
MEJFMTQxRDQwMDk1Njk5OCAvKiBSZW5kZXJMYXlvdXRTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJEOTNBRUUzMTlERjU2NDEwMDJBODZD
MyAvKiBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDkzQUVFMTE5REY1NjQxMDAyQTg2QzMgLyogU2Vydmlj
ZXNPdmVybGF5Q29udHJvbGxlci5oICovOyB9OworCQkyRDk3RjA0NzE5REQ0MTNDMDAxRUU5QzMg
LyogTW9ja1BhZ2VPdmVybGF5Q2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDJEQUFFMzJDMTlEQ0FGNjAwMEUwMDJEMiAvKiBNb2NrUGFnZU92
ZXJsYXlDbGllbnQuY3BwICovOyB9OworCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5QzMgLyogTW9j
a1BhZ2VPdmVybGF5Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyREFBRTMyRDE5RENBRjYwMDBFMDAyRDIgLyogTW9ja1BhZ2VPdmVybGF5Q2xp
ZW50LmggKi87IH07CisJCTJEOUJGNzA1MURCRkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5cHRl
ZEV2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJEOUJGNzAxMURCRkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5cHRlZEV2ZW50LmNwcCAqLzsg
fTsKKwkJMkQ5QkY3MDYxREJGQkIyNDAwN0E3RDk5IC8qIE1lZGlhRW5jcnlwdGVkRXZlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOUJGNzAyMURC
RkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5cHRlZEV2ZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkQ5QkY3MDgxREJGQkIyNDAwN0E3RDk5
IC8qIE1lZGlhRW5jcnlwdGVkRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAyRDlCRjcwNDFEQkZCQjI0MDA3QTdEOTkgLyogTWVkaWFFbmNy
eXB0ZWRFdmVudEluaXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkyRDlCRjcxMjFEQkZEOTE0MDA3QTdEOTkgLyogSlNNZWRpYUVuY3J5cHRlZEV2
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDlC
RjcxMTFEQkZEOTE0MDA3QTdEOTkgLyogSlNNZWRpYUVuY3J5cHRlZEV2ZW50LmggKi87IH07CisJ
CTJEOUJGNzI4MURCRkRCMEQwMDdBN0Q5OSAvKiBKU01lZGlhS2V5TWVzc2FnZUV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDlCRjcxNDFEQkZE
QUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleU1lc3NhZ2VFdmVudC5oICovOyB9OworCQkyRDlCRjcy
OTFEQkZEQjEwMDA3QTdEOTkgLyogSlNNZWRpYUtleXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOUJGNzE2MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01l
ZGlhS2V5cy5oICovOyB9OworCQkyRDlCRjcyQTFEQkZEQjEzMDA3QTdEOTkgLyogSlNNZWRpYUtl
eVNlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJEOUJGNzE4MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U2Vzc2lvbi5oICovOyB9Owor
CQkyRDlCRjcyQjFEQkZEQjE1MDA3QTdEOTkgLyogSlNNZWRpYUtleVN0YXR1c01hcC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ5QkY3MUExREJGREFC
MTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTdGF0dXNNYXAuaCAqLzsgfTsKKwkJMkQ5QkY3MkMxREJG
REIxNzAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTeXN0ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOUJGNzFDMURCRkRBQjEwMDdBN0Q5OSAv
KiBKU01lZGlhS2V5U3lzdGVtQWNjZXNzLmggKi87IH07CisJCTJEOUJGNzJEMURCRkRCMTkwMDdB
N0Q5OSAvKiBKU01lZGlhS2V5U3lzdGVtQ29uZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ5QkY3MUUxREJGREFCMTAwN0E3RDk5IC8q
IEpTTWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmggKi87IH07CisJCTJEOUJGNzJFMURCRkRC
MUMwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3lzdGVtTWVkaWFDYXBhYmlsaXR5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDlCRjcyMDFEQkZEQUIxMDA3
QTdEOTkgLyogSlNNZWRpYUtleVN5c3RlbU1lZGlhQ2FwYWJpbGl0eS5oICovOyB9OworCQkyRDlC
Rjc0MjFEQkZEQzI3MDA3QTdEOTkgLyogTmF2aWdhdG9yRU1FLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOUJGNzQwMURCRkRDMEYwMDdBN0Q5OSAv
KiBOYXZpZ2F0b3JFTUUuY3BwICovOyB9OworCQkyRDlCRjc0MzFEQkZEQzNFMDA3QTdEOTkgLyog
TWVkaWFLZXlTeXN0ZW1BY2Nlc3MuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkQ5QkY3M0MxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3lzdGVt
QWNjZXNzLmNwcCAqLzsgfTsKKwkJMkQ5QkY3NDQxREJGREM0MTAwN0E3RDk5IC8qIE1lZGlhS2V5
U3RhdHVzTWFwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDJEOUJGNzNBMURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleVN0YXR1c01hcC5jcHAgKi87
IH07CisJCTJEOUJGNzQ1MURCRkRDNDQwMDdBN0Q5OSAvKiBNZWRpYUtleVNlc3Npb24uY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ5QkY3MzUxREJG
REMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U2Vzc2lvbi5jcHAgKi87IH07CisJCTJEOUJGNzQ2MURC
RkRDNDcwMDdBN0Q5OSAvKiBNZWRpYUtleXMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ5QkY3MzMxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5
cy5jcHAgKi87IH07CisJCTJEOUJGNzQ3MURCRkRDNDkwMDdBN0Q5OSAvKiBNZWRpYUtleU1lc3Nh
Z2VFdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAyRDlCRjcyRjFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlNZXNzYWdlRXZlbnQuY3BwICov
OyB9OworCQkyRDlGMEUxMzE0RkYxQ0JGMDBCQTBGRjcgLyogbGluZWFyU1JHQi5pY2MgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEOUYwRTEyMTRGRjFD
QkYwMEJBMEZGNyAvKiBsaW5lYXJTUkdCLmljYyAqLzsgfTsKKwkJMkRBMzk3RTUyNjVDNzM3NTAw
NDY4RjMzIC8qIE51bGxHcmFwaGljc0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEQTM5N0UzMjY1QzczNzQwMDQ2OEYzMyAvKiBOdWxsR3Jh
cGhpY3NDb250ZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJMkRBRjM0M0QxRUE3RTBGMTAwMzgyQ0QzIC8qIENvbnN0YW50UHJvcGVydHlNYXAu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEQUYzNDNC
MUVBN0UwRjEwMDM4MkNEMyAvKiBDb25zdGFudFByb3BlcnR5TWFwLmggKi87IH07CisJCTJEQzhE
Mzk4MjVGMkZFOTcwMENGQ0JBQiAvKiBNb2RlbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMkRDOEQzOTcyNUYyRkU5NDAwQ0ZDQkFCIC8qIE1vZGVsLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkRENUE3
MjcxRUJFRTQ3RDAwOUJBNTk3IC8qIENvbXBvc2l0aW9uVW5kZXJsaW5lLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyREQ1QTcyNjFFQkVFNDdEMDA5QkE1
OTcgLyogQ29tcG9zaXRpb25VbmRlcmxpbmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkyREQ4NzE0QjI2NUY0MzY2MDA1Rjk5N0MgLyogQmlmdXJj
YXRlZEdyYXBoaWNzQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMkREODcxNDkyNjVGNDM2NTAwNUY5OTdDIC8qIEJpZnVyY2F0ZWRHcmFwaGlj
c0NvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogTGVnYWN5RGlzcGxheVJlZnJlc2hNb25p
dG9yTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
REU3MDAyMjE5MkZFODJBMDBCMDk3NUMgLyogTGVnYWN5RGlzcGxheVJlZnJlc2hNb25pdG9yTWFj
LmggKi87IH07CisJCTJERjUxMkNFMUQ4NzNFNDcwMDFENjc4MCAvKiBSZXBsYWNlUmFuZ2VXaXRo
VGV4dENvbW1hbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDJERjUxMkNDMUQ4NzNFNDcwMDFENjc4MCAvKiBSZXBsYWNlUmFuZ2VXaXRoVGV4dENvbW1h
bmQuaCAqLzsgfTsKKwkJMkRGQTQ4OEYxREI1NDFEMDAwMzYyQjk5IC8qIEJ1ZmZlclNvdXJjZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkRGQTQ4OEUx
REI1NDFDMjAwMzYyQjk5IC8qIEJ1ZmZlclNvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJFMDg4OEQ1MTE0ODg0OEEwMEFGNDI2NSAvKiBK
U0RPTUZvcm1EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAyRTA4ODhEMzExNDg4NDhBMDBBRjQyNjUgLyogSlNET01Gb3JtRGF0YS5oICovOyB9Owor
CQkyRTJEOTlDRTEwRTJCQkRBMDA0OTYzMzcgLyogSlNCbG9iLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTJEOTlDQzEwRTJCQkRBMDA0OTYzMzcgLyog
SlNCbG9iLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMkUzN0RGREIxMkRCQUZCODAwQTZCMjMzIC8qIERPTVVSTC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUzN0RGRDgxMkRCQUZCODAwQTZCMjMzIC8q
IERPTVVSTC5oICovOyB9OworCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFMzdFMDA0
MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5oICovOyB9OworCQkyRTQzNDY0NjBGNTQ2QTgy
MDBCMEYxQkEgLyogV29ya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRTQzNDYzNDBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyLmggKi87IH07CisJ
CTJFNDM0NjQ5MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU0MzQ2MzcwRjU0NkE4MjAw
QjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkU0MzQ2NEIwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtl
ckdsb2JhbFNjb3BlUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJFNDM0NjM5MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZVBy
b3h5LmggKi87IH07CisJCTJFNDM0NjREMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJMb2NhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU0MzQ2
M0IwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckxvY2F0aW9uLmggKi87IH07CisJCTJFNDM0NjUw
MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJNZXNzYWdpbmdQcm94eS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU0MzQ2M0UwRjU0NkE4MjAwQjBGMUJB
IC8qIFdvcmtlck1lc3NhZ2luZ1Byb3h5LmggKi87IH07CisJCTJFNDM0NjUxMEY1NDZBODIwMEIw
RjFCQSAvKiBXb3JrZXJPYmplY3RQcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkU0MzQ2M0YwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlck9iamVj
dFByb3h5LmggKi87IH07CisJCTJFNDM0NjUzMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJSdW5M
b29wLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTQz
NDY0MTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyUnVuTG9vcC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJFNDM0NjU1MEY1NDZBODIwMEIwRjFC
QSAvKiBXb3JrZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJFNDM0NjQzMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJUaHJlYWQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRTc1ODQxRTEy
Nzc5QURBMDA2MjYyOEIgLyogRmlsZVJlYWRlckxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU3NTg0MUIxMjc3OUFEQTAwNjI2MjhCIC8qIEZp
bGVSZWFkZXJMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkyRTc1ODQxRjEyNzc5QURBMDA2MjYyOEIgLyogRmlsZVJlYWRlckxvYWRlckNs
aWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU3
NTg0MUMxMjc3OUFEQTAwNjI2MjhCIC8qIEZpbGVSZWFkZXJMb2FkZXJDbGllbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyRTg4OENBQTI1RjZB
NDExMDA1NzkxNEEgLyogRmxvYXRMaW5lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAyRTg4OENBODI1RjZBNDExMDA1NzkxNEEgLyogRmxvYXRMaW5lLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkU5NEY0
M0MxMTkyMDdEQTAwQjdGNzVEIC8qIEpTRmlsZVJlYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkU5NEY0M0ExMTkyMDdEQTAwQjdGNzVEIC8qIEpT
RmlsZVJlYWRlci5oICovOyB9OworCQkyRTlCNUQ4RjFCNjZBOTRFMDA4QzZBMjQgLyogV2hlZWxF
dmVudERlbHRhRmlsdGVyTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRTlCNUQ4RTFCNjZBOTRFMDA4QzZBMjQgLyogV2hlZWxFdmVudERlbHRhRmls
dGVyTWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJMkVBNzY4MDQwRkU3MTI2NDAwQUI5QzhBIC8qIFdvcmtlclNjcmlwdExvYWRlckNsaWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkVBNzY4MDMw
RkU3MTI2NDAwQUI5QzhBIC8qIFdvcmtlclNjcmlwdExvYWRlckNsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTJFQjRCQ0QzMTIxRjAzRTMw
MEVDNDg4NSAvKiBCbG9iUmVzb3VyY2VIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFQjRCQ0QxMTIxRjAzRTMwMEVDNDg4NSAvKiBCbG9iUmVz
b3VyY2VIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkyRUI3Njc1NzFEQTE5QkRGMDAzRTIzQjUgLyogSW5wdXRFdmVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkVCNzY3NTQxREExOUI2NzAw
M0UyM0I1IC8qIElucHV0RXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkyRUJCQzNEODFCNjU5ODgzMDBGNTI1M0QgLyogV2hlZWxFdmVudERl
bHRhRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAyRUJCQzNENzFCNjU5ODgzMDBGNTI1M0QgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkVDREJBRDEy
MUQ4OTAzNDAwRjAwRUNEIC8qIFVuZG9NYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRUNEQkFDRTIxRDg5MDM0MDBGMDBFQ0QgLyogVW5kb01h
bmFnZXIuaCAqLzsgfTsKKwkJMkVDREJBRDgyMUQ4OTA2MzAwRjAwRUNEIC8qIFVuZG9JdGVtLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRUNEQkFENTIx
RDg5MDYzMDBGMDBFQ0QgLyogVW5kb0l0ZW0uaCAqLzsgfTsKKwkJMkVDRjdBREQxMDE2MkIzODAw
NDI3REU3IC8qIEpTRXJyb3JFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkVDRjdBREIxMDE2MkIzODAwNDI3REU3IC8qIEpTRXJyb3JFdmVudC5o
ICovOyB9OworCQkyRUNGN0FFMjEwMTYyQjU4MDA0MjdERTcgLyogRXJyb3JFdmVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkVDRjdBREYxMDE2MkI1
ODAwNDI3REU3IC8qIEVycm9yRXZlbnQuaCAqLzsgfTsKKwkJMkVENjA5QkQxMTQ1QjA3MTAwQzg2
ODRFIC8qIERPTUZvcm1EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRUQ2MDlCQjExNDVCMDcxMDBDODY4NEUgLyogRE9NRm9ybURhdGEuaCAqLzsg
fTsKKwkJMkVERUYxRjQxMjFCMEVGQzAwNzI2REIyIC8qIEJsb2JEYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRURFRjFFRTEyMUIwRUZDMDA3MjZE
QjIgLyogQmxvYkRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQkyRURFRjFGNTEyMUIwRUZDMDA3MjZEQjIgLyogQmxvYlJlZ2lzdHJ5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRURFRjFFRjEyMUIw
RUZDMDA3MjZEQjIgLyogQmxvYlJlZ2lzdHJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkVERUYxRjcxMjFCMEVGQzAwNzI2REIyIC8qIEJsb2JS
ZWdpc3RyeUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDJFREVGMUYxMTIxQjBFRkMwMDcyNkRCMiAvKiBCbG9iUmVnaXN0cnlJbXBsLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkVERjM2OUQxMjJD
OTRCNDAwMkY3RDRFIC8qIEZpbGVSZWFkZXJTeW5jLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRURGMzY5QjEyMkM5NEI0MDAyRjdENEUgLyogRmlsZVJl
YWRlclN5bmMuaCAqLzsgfTsKKwkJMkVGMUJGRUIxMjFDOUY0MjAwQzI3NjI3IC8qIEZpbGVTdHJl
YW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJFRjFC
RkU5MTIxQzlGNDIwMEMyNzYyNyAvKiBGaWxlU3RyZWFtLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkVGMUJGRjkxMjFDQjBDRTAwQzI3NjI3IC8q
IEZpbGVTdHJlYW1DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJFRjFCRkY4MTIxQ0IwQ0UwMEMyNzYyNyAvKiBGaWxlU3RyZWFtQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMkYzMUUw
NzUxRkEzQjYyQjAwRTA1OUJBIC8qIEhUTUxNZW51SXRlbUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJGMzFFMDcxMUZBM0IzM0IwMEUwNTlC
QSAvKiBIVE1MTWVudUl0ZW1FbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzEwM0I3REYxREIwMTU2NzAwOEJCODkwIC8qIENvbG9ySGFz
aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEwM0I3
REUxREIwMTU1NjAwOEJCODkwIC8qIENvbG9ySGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTMxMDc4Q0M4MTg4MEFBQkIwMDgwOTlEQyAvKiBP
RVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzMTA3OENDMzE4ODBBNkE2MDA4MDk5REMgLyogT0VTVGV4dHVyZUhh
bGZGbG9hdExpbmVhci5oICovOyB9OworCQkzMTA3OENDQTE4ODBBQUNFMDA4MDk5REMgLyogSlNP
RVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzMTA3OENDNjE4ODBBQUFBMDA4MDk5REMgLyogSlNPRVNUZXh0dXJl
SGFsZkZsb2F0TGluZWFyLmggKi87IH07CisJCTMxMEQ3MTk2MUIzMzVDOUUwMDlDN0I3MyAvKiBU
aGVtZUNvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTBENzE5NDFCMzM1QzlEMDA5QzdCNzMgLyogVGhlbWVDb2NvYS5oICovOyB9OworCQkzMTE1
MThGQzFFNzhDMTVGMDBFQzUxNEEgLyogR1BVQmFzZWRDYW52YXNSZW5kZXJpbmdDb250ZXh0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTE1MThGQjFF
NzhDMTVGMDBFQzUxNEEgLyogR1BVQmFzZWRDYW52YXNSZW5kZXJpbmdDb250ZXh0LmggKi87IH07
CisJCTMxMjg4RTczMEUzMDA1RDYwMDM2MTlBRSAvKiBDU1NLZXlmcmFtZVJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMjg4RTZGMEUzMDA1RDYw
MDM2MTlBRSAvKiBDU1NLZXlmcmFtZVJ1bGUuaCAqLzsgfTsKKwkJMzEyODhFNzUwRTMwMDVENjAw
MzYxOUFFIC8qIENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMjg4RTcxMEUzMDA1RDYwMDM2MTlBRSAvKiBDU1NLZXlmcmFt
ZXNSdWxlLmggKi87IH07CisJCTMxMjhDQTZCMTQ3MzMxNjMwMDc0QzcyQSAvKiBOb3RpZmljYXRp
b25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAzMTI4Q0E2QTE0NzMzMTYzMDA3NEM3MkEgLyogTm90aWZpY2F0aW9uQ29udHJvbGxlci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTMxMkMw
QzQxMTQ2REM2Q0MwMDE2QzkxMSAvKiBOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzM0Y3MDRGMEZCNDlDQTIwMDhFMTJBNiAvKiBO
b3RpZmljYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkzMTMxNzE1NjFGQjA3OUU1MDA4RDkxRkMgLyogQ2FudmFzQmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzMTcxNTQxRkIwNzlEMTAw
OEQ5MUZDIC8qIENhbnZhc0Jhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkzMTM1OTEwNjFFN0REQzczMDBGMzA2MzAgLyogUlRDSWNlQ29ubmVj
dGlvblN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTM1OTEwMDFFN0REQzYwMDBGMzA2MzAgLyogUlRDSWNlQ29ubmVjdGlvblN0YXRlLmggKi87
IH07CisJCTMxMzU5MTA3MUU3RERDNzMwMEYzMDYzMCAvKiBSVENJY2VHYXRoZXJpbmdTdGF0ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzNTkxMDEx
RTdEREM2MDAwRjMwNjMwIC8qIFJUQ0ljZUdhdGhlcmluZ1N0YXRlLmggKi87IH07CisJCTMxMzU5
MTA4MUU3RERDNzMwMEYzMDYzMCAvKiBSVENJY2VUcmFuc3BvcnRQb2xpY3kuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzU5MTAyMUU3RERDNjAwMEYz
MDYzMCAvKiBSVENJY2VUcmFuc3BvcnRQb2xpY3kuaCAqLzsgfTsKKwkJMzEzNTkxMDkxRTdEREM3
MzAwRjMwNjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTM1OTEwMzFFN0REQzYwMDBGMzA2MzAgLyogUlRD
SWNlVHJhbnNwb3J0U3RhdGUuaCAqLzsgfTsKKwkJMzEzNTkxMEExRTdEREM3MzAwRjMwNjMwIC8q
IFJUQ1NkcFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxMzU5MTA0MUU3RERDNjAwMEYzMDYzMCAvKiBSVENTZHBUeXBlLmggKi87IH07CisJCTMx
MzU5MTBCMUU3RERDNzMwMEYzMDYzMCAvKiBSVENTaWduYWxpbmdTdGF0ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzNTkxMDUxRTdEREM2MDAwRjMw
NjMwIC8qIFJUQ1NpZ25hbGluZ1N0YXRlLmggKi87IH07CisJCTMxM0JDRTFDMjM1RTNCRTUwMEZD
MzlFNSAvKiBFbGVtZW50Q29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzEzQkNFMUIyMzVFM0JEQjAwRkMzOUU1IC8qIEVsZW1lbnRDb250ZXh0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzEz
REU4NzAyM0E5Njk3MzAwOEZDNDdCIC8qIEdyYXBoaWNzQ29udGV4dEdMLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTNERTg2RjIzQTk2OTY3MDA4RkM0
N0IgLyogR3JhcGhpY3NDb250ZXh0R0wuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQkzMTQwMzc5QjEyNEJFQTdGMDBBRjQwRTQgLyogV2ViQ29yZU1v
dGlvbk1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxNDAzNzk3MTI0QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTMxNDAzNzlE
MTI0QkVBN0YwMEFGNDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0MDM3OTkxMjRCRUE3RjAw
QUY0MEU0IC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmggKi87IH07CisJCTMxNDBDNTIw
MUZERjE1MUEwMEQyQTg3MyAvKiBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNDBDNTFFMUZE
RjE1MUEwMEQyQTg3MyAvKiBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCAqLzsg
fTsKKwkJMzE0MEM1MjQxRkRGMzE4NzAwRDJBODczIC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQy
REJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMx
NDBDNTIyMUZERjMxODYwMEQyQTg3MyAvKiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlLmgg
Ki87IH07CisJCTMxNDBDNTI3MUZERjU1ODIwMEQyQTg3MyAvKiBKU09mZnNjcmVlbkNhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzE0MEM1MjUxRkRGNTU3RjAwRDJBODczIC8qIEpTT2Zmc2NyZWVuQ2FudmFzUmVu
ZGVyaW5nQ29udGV4dDJELmggKi87IH07CisJCTMxNDZGRTZFMTg0NDIwQTgwMDFBOTM3QyAvKiBP
RVNUZXh0dXJlRmxvYXRMaW5lYXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDZGRTY2MTg0NDIwODcwMDFBOTM3QyAvKiBPRVNUZXh0dXJlRmxvYXRM
aW5lYXIuaCAqLzsgfTsKKwkJMzE0NkZFNzUxODQ0MjM3MDAwMUE5MzdDIC8qIEpTT0VTVGV4dHVy
ZUZsb2F0TGluZWFyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAzMTQ2RkU3MTE4NDQyMzY3MDAxQTkzN0MgLyogSlNPRVNUZXh0dXJlRmxvYXRMaW5lYXIu
aCAqLzsgfTsKKwkJMzE0ODc3RTMxRkFBOEZFOTAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0ODc3RTEx
RkFBOEZFOTAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5oICovOyB9OworCQkzMTQ4NzdFNjFG
QUFCMDI1MDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNDg3N0U0MUZBQUIwMjIwMEMwNTc1OSAvKiBK
U09mZnNjcmVlbkNhbnZhcy5oICovOyB9OworCQkzMTRCRTNBMTFCMzBGNkI3MDAxNDE5ODIgLyog
Q1NTTmFtZWRJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAzMTRCRTNBMDFCMzBGNkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZhbHVl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzE0
QkUzQTcxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0QkUzQTUxQjMxMDNG
QjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICovOyB9OworCQkzMTRGMTY5
RTI2NDBCQzNCMDA2NjNFQ0UgLyogV2ViWFJPcGFxdWVGcmFtZWJ1ZmZlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTRGMTY5QjI2NDBCNjdFMDA2
NjNFQ0UgLyogV2ViWFJPcGFxdWVGcmFtZWJ1ZmZlci5jcHAgKi87IH07CisJCTMxNEYxNjlGMjY0
MEJDNDEwMDY2M0VDRSAvKiBXZWJYUk9wYXF1ZUZyYW1lYnVmZmVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTRGMTY5RDI2NDBCNjdFMDA2NjNFQ0Ug
LyogV2ViWFJPcGFxdWVGcmFtZWJ1ZmZlci5oICovOyB9OworCQkzMTY0N0ZBQjI1MTYxOEUyMDAx
MEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNv
ZnRMaW5rQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQkzMTZEQ0IyMDFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlv
bnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRD
QjFBMUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oICovOyB9Owor
CQkzMTZEQ0IyMjFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENC
MUMxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLzsg
fTsKKwkJMzE2RENCNEMxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0I0
NjFFNzkxMEE2MDAxQjVGODcgLyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaCAqLzsgfTsKKwkJ
MzE2RENCNEUxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlR2F0aGVyaW5nU3RhdGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjQ4MUU3OTEw
QTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUdhdGhlcmluZ1N0YXRlLmggKi87IH07CisJCTMxNkRDQjUw
MUU3OTEwQTYwMDFCNUY4NyAvKiBKU1JUQ1NpZ25hbGluZ1N0YXRlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0I0QTFFNzkxMEE2MDAxQjVGODcg
LyogSlNSVENTaWduYWxpbmdTdGF0ZS5oICovOyB9OworCQkzMTZERTcwMjFFODNBRTFEMDA4NEMy
NjEgLyogUlRDRGF0YUNoYW5uZWxTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2REU3MDExRTgzQUUxRDAwODRDMjYxIC8qIFJUQ0RhdGFDaGFu
bmVsU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkzMTZGRTA3MjBFNkNDQkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFtZVJ1bGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkZFMDZFMEU2Q0NC
RUUwMEJGNjA4OCAvKiBKU0NTU0tleWZyYW1lUnVsZS5oICovOyB9OworCQkzMTZGRTA3NDBFNkND
QkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFtZXNSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZGRTA3MDBFNkNDQkVFMDBCRjYwODggLyogSlND
U1NLZXlmcmFtZXNSdWxlLmggKi87IH07CisJCTMxNzQxQUFEMTY2MzY2MDkwMDhBNUI3RSAvKiBT
aW11bGF0ZWRDbGlja09wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNzQxQUFCMTY2MzVFNDUwMDhBNUI3RSAvKiBTaW11bGF0ZWRDbGlja09w
dGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkzMTdEM0ZGMzIxNTU5OUY0MDAzNEUzQjkgLyogUG9pbnRlckV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTdEM0ZGMjIxNTU5OUUzMDAzNEUz
QjkgLyogUG9pbnRlckV2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMzE4MTVBMzExRjlBNkM4RjAwRkNCRjg5IC8qIEltYWdlQml0bWFwLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUQyNkJCRjFG
ODZEMTg5MDA4RkYyNTUgLyogSW1hZ2VCaXRtYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzMTg4OTE2MTFBQjdFRUExMDBFQTYyN0IgLyogbWlz
c2luZ0ltYWdlQDN4LnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0RGNDE5OTkxQUIwREExNDAwNEU2NEUxIC8qIG1pc3NpbmdJbWFnZUAzeC5wbmcg
Ki87IH07CisJCTMxOEVBRDREMUZBOTEzODAwMDhDRUY4NiAvKiBJbWFnZUJpdG1hcFJlbmRlcmlu
Z0NvbnRleHRTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzE4RUFENEExRkE5MTE1NzAwOENFRjg2IC8qIEltYWdlQml0bWFwUmVuZGVyaW5n
Q29udGV4dFNldHRpbmdzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJMzE5ODQ4MDExQTFEODE3QjAwQTEzMzE4IC8qIEFuaW1hdGlvbkV2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTk4NDdGRjFB
MUQ4MTY3MDBBMTMzMTggLyogQW5pbWF0aW9uRXZlbnQuaCAqLzsgfTsKKwkJMzE5ODQ4MEMxQTFF
NkNFODAwQTEzMzE4IC8qIEpTQW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxOTg0ODA0MUExRTZCNUQwMEExMzMxOCAvKiBKU0Fu
aW1hdGlvbkV2ZW50LmggKi87IH07CisJCTMxOUE3Mjg4MjNDMjY3RkUwMDg1MzUzQyAvKiBHcmFw
aGljc0NvbnRleHRHTE9wZW5HTE1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxOUE3Mjg3MjNDMjY3RTcwMDg1MzUzQyAvKiBHcmFwaGljc0Nv
bnRleHRHTE9wZW5HTE1hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQkzMTlBRTA2NDE0MkQ2QjI0MDA2NTYzQTEgLyogU3R5bGVGaWx0ZXJE
YXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTlB
RTA2MjE0MkQ2QjI0MDA2NTYzQTEgLyogU3R5bGVGaWx0ZXJEYXRhLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzE5RkJENUYxNUQyRjQ2NDAwOTY0
MEE2IC8qIENhY2hlZEltYWdlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzMTlGQkQ1RDE1RDJGNDQ0MDA5NjQwQTYgLyogQ2FjaGVkSW1hZ2VD
bGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkzMUEwODk1NjFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVCdWZmZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTA4OTFEMUU3MzhENTkwMDNC
NjYwOSAvKiBKU1dlYkdQVUJ1ZmZlci5oICovOyB9OworCQkzMUEwODk1OTFFNzM4RDU5MDAzQjY2
MDkgLyogSlNXZWJHUFVDb21tYW5kQnVmZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEwODkyMDFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVD
b21tYW5kQnVmZmVyLmggKi87IH07CisJCTMxQTA4OTVDMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dl
YkdQVUNvbW1hbmRRdWV1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzFBMDg5MjMxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVQ29tbWFuZFF1ZXVl
LmggKi87IH07CisJCTMxQTA4OTVGMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURlcHRoU3Rl
bmNpbERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxQTA4OTI2MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURlcHRoU3RlbmNpbERl
c2NyaXB0b3IuaCAqLzsgfTsKKwkJMzFBMDg5NjIxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BV
RGVwdGhTdGVuY2lsU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMxQTA4OTI5MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURlcHRoU3RlbmNp
bFN0YXRlLmggKi87IH07CisJCTMxQTA4OTY1MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURy
YXdhYmxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MUEwODkyQzFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVEcmF3YWJsZS5oICovOyB9OworCQkz
MUEwODk2ODFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVGdW5jdGlvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMDg5MkYxRTczOEQ1OTAwM0I2
NjA5IC8qIEpTV2ViR1BVRnVuY3Rpb24uaCAqLzsgfTsKKwkJMzFBMDg5NkIxRTczOEQ1OTAwM0I2
NjA5IC8qIEpTV2ViR1BVTGlicmFyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzFBMDg5MzIxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVTGlicmFy
eS5oICovOyB9OworCQkzMUEwODk2RTFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJD
b21tYW5kRW5jb2Rlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFBMDg5MzUxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyQ29tbWFuZEVu
Y29kZXIuaCAqLzsgfTsKKwkJMzFBMDg5NzExRTczOEQ1QTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVu
ZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFBMDg5MzgxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyaW5nQ29udGV4
dC5oICovOyB9OworCQkzMUEwODk3NDFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQ
YXNzQXR0YWNobWVudERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDMxQTA4OTNCMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRl
clBhc3NBdHRhY2htZW50RGVzY3JpcHRvci5oICovOyB9OworCQkzMUEwODk3NzFFNzM4RDVBMDAz
QjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMDg5M0UxRTcz
OEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0
b3IuaCAqLzsgfTsKKwkJMzFBMDg5N0ExRTczOEQ1QTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVy
UGFzc0RlcHRoQXR0YWNobWVudERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTA4OTQxMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQ
VVJlbmRlclBhc3NEZXB0aEF0dGFjaG1lbnREZXNjcmlwdG9yLmggKi87IH07CisJCTMxQTA4OTdE
MUU3MzhENUEwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBhc3NEZXNjcmlwdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEwODk0NDFFNzM4RDU5
MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5oICovOyB9OworCQkzMUEw
ODk4MDFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZUNvbG9yQXR0YWNo
bWVudERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxQTA4OTQ3MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBpcGVsaW5l
Q29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oICovOyB9OworCQkzMUEwODk4MzFFNzM4RDVBMDAz
QjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZURlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTA4OTRBMUU3MzhENTkwMDNCNjYw
OSAvKiBKU1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oICovOyB9OworCQkzMUEwODk4
NjFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZVN0YXRlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEwODk0RDFFNzM4RDU5
MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZVN0YXRlLmggKi87IH07CisJCTMxQTA4
OTg5MUU3MzhENUEwMDNCNjYwOSAvKiBKU1dlYkdQVVRleHR1cmUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTA4OTUwMUU3MzhENTkwMDNCNjYwOSAv
KiBKU1dlYkdQVVRleHR1cmUuaCAqLzsgfTsKKwkJMzFBMDg5OEMxRTczOEQ1QTAwM0I2NjA5IC8q
IEpTV2ViR1BVVGV4dHVyZURlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTA4OTUzMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVRl
eHR1cmVEZXNjcmlwdG9yLmggKi87IH07CisJCTMxQTc5NUM3MTg4OEJDQjIwMDM4MkY5MCAvKiBB
TkdMRUluc3RhbmNlZEFycmF5cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMzFBNzk1QzIxODg4QjcyNDAwMzgyRjkwIC8qIEFOR0xFSW5zdGFuY2VkQXJy
YXlzLmggKi87IH07CisJCTMxQzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRp
b25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MzFDMEZGMUMwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdEFuaW1hdGlvbkV2ZW50LmggKi87IH07
CisJCTMxQzBGRjI1MEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQzBGRjFGMEU0
Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaCAqLzsgfTsKKwkJMzFDMEZG
M0UwRTRDRUZBQzAwN0Q2RkU1IC8qIEpTV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQzBGRjNBMEU0Q0VGQUMwMDdE
NkZFNSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50LmggKi87IH07CisJCTMxQzBGRjQwMEU0Q0VG
QUMwMDdENkZFNSAvKiBKU1dlYktpdFRyYW5zaXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFDMEZGM0MwRTRDRUZBQzAwN0Q2RkU1IC8q
IEpTV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmggKi87IH07CisJCTMxREVBNDU2MUIzOUY0RDkwMEY3
NzE3OCAvKiBXZWJTeXN0ZW1CYWNrZHJvcExheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMURFQTQ1NDFCMzlGNEQ5MDBGNzcxNzggLyogV2ViU3lz
dGVtQmFja2Ryb3BMYXllci5oICovOyB9OworCQkzMUVBRjk3RTEyMTQzNUE0MDBFN0MxQkYgLyog
RGV2aWNlTW90aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAzMUVBRjk3QzEyMTQzNUE0MDBFN0MxQkYgLyogRGV2aWNlTW90aW9uQ2xp
ZW50SU9TLmggKi87IH07CisJCTMxRUI1NERGMUU3REM3NDQwMEMxNjIzQiAvKiBSVENSdHBUcmFu
c2NlaXZlckRpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzFFQjU0REQxRTdEQzc0NDAwQzE2MjNCIC8qIFJUQ1J0cFRyYW5zY2VpdmVyRGly
ZWN0aW9uLmggKi87IH07CisJCTMxRUMxRTI5MTRGRjYwRUUwMEM5NDY2MiAvKiBKU05vdGlmaWNh
dGlvblBlcm1pc3Npb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzFFQzFFMjcxNEZGNjBFRTAwQzk0NjYyIC8qIEpTTm90aWZpY2F0aW9u
UGVybWlzc2lvbkNhbGxiYWNrLmggKi87IH07CisJCTMxRkIxQTU3MTIwQTVEMDYwMERDMDJBMCAv
KiBEZXZpY2VNb3Rpb25DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxRkIxQTRGMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25DbGll
bnQuaCAqLzsgfTsKKwkJMzFGQjFBNTkxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkNv
bnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxRkIxQTUxMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25Db250cm9sbGVyLmggKi87
IH07CisJCTMxRkIxQTVCMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25EYXRhLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUZCMUE1MzEyMEE1
RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0YS5oICovOyB9OworCQkzMUZCMUE1RDEyMEE1
RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxRkIxQTU1MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZp
Y2VNb3Rpb25FdmVudC5oICovOyB9OworCQkzMUZCMUE2NjEyMEE1RDNGMDBEQzAyQTAgLyogSlNE
ZXZpY2VNb3Rpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzFGQjFBNjQxMjBBNUQzRjAwREMwMkEwIC8qIEpTRGV2aWNlTW90aW9uRXZlbnQu
aCAqLzsgfTsKKwkJMzFGRTZERkExNTAwNEMyQTAwMDRFQkM0IC8qIE5vdGlmaWNhdGlvblBlcm1p
c3Npb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFFQzFEQUMxNEZGMjZFQTAwQzk0NjYyIC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb25D
YWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTMzNTAzQzlBMTAxNzlBNzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMzNTAzQzk5MTAxNzlB
NzQwMDNCNDdFMSAvKiBOb3RpZmljYXRpb25DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzMzUwM0NBNDEwMTc5QUQ3MDAzQjQ3RTEgLyog
SlNOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMzNTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTMzRDAyMTJEMTMx
REIzN0IwMDQwOTFBOCAvKiBDb29raWVTdG9yYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTNGMDFFQTEyNzBFMTBEMDBERkJBNzEgLyogQ29va2ll
U3RvcmFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTM1Qzc0RkRCMjI4QTFFRjYwMDBDMjFBMCAvKiBDU1NHcmlkSW50ZWdlclJlcGVhdFZhbHVl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNUM3NEZE
NzIyOEExOUE2MDAwQzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3MTdEN0U4MTdFQ0M1
OTEwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmluZ3MucGwgaW4gQ29weSBTY3Jp
cHRzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM3MTdEN0U1MTdFQ0MzQTYw
MDNDMjc2RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmluZ3MucGwgKi87IH07CisJCTM3MUU2
NUNDMTM2NjFFREMwMEJFRURCMCAvKiBQYWdlU2VyaWFsaXplci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxRTY1Q0IxMzY2MUVEQzAwQkVFREIwIC8q
IFBhZ2VTZXJpYWxpemVyLmggKi87IH07CisJCTM3MUY0RkZDMEQyNUU3RjMwMEVDRTBENSAvKiBG
b250UmFuZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzNzFGNEZGQTBEMjVFN0YzMDBFQ0UwRDUgLyogRm9udFJhbmdlcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3MUY1MUExMEQyNjJGQTAwMEVD
RTBENSAvKiBDU1NTZWdtZW50ZWRGb250RmFjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMzcxRjUxOUYwRDI2MkZBMDAwRUNFMEQ1IC8qIENTU1NlZ21l
bnRlZEZvbnRGYWNlLmggKi87IH07CisJCTM3MUY1M0U5MEQyNzA0RjkwMEVDRTBENSAvKiBDU1NV
bmljb2RlUmFuZ2VWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzcxRjUzRTcwRDI3MDRGOTAwRUNFMEQ1IC8qIENTU1VuaWNvZGVSYW5nZVZhbHVl
LmggKi87IH07CisJCTM3MkFEQTM4MTk3RjQ3QjkwMEZDNTAxRSAvKiBQcm90ZWN0aW9uU3BhY2VD
b2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzcy
QURBMzcxOTdGNDdCOTAwRkM1MDFFIC8qIFByb3RlY3Rpb25TcGFjZUNvY29hLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzcyQzAwRDkxMjk2MTlG
ODAwNUM5NTc1IC8qIEZpbmRPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzNzJDMDBEODEyOTYxOUY4MDA1Qzk1NzUgLyogRmluZE9wdGlvbnMu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzNzJE
M0U1NDIxNjU3OEFFMDBDNUUwMjEgLyogRGF0YVVSTERlY29kZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0QTAwNzgyMUI4MjBFQzgwMDJDNUE2RSAv
KiBEYXRhVVJMRGVjb2Rlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTM3MkQzRTU1MjE2NTc4QUUwMEM1RTAyMSAvKiBTY3JpcHRNb2R1bGVMb2Fk
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzODgz
ODk1MUJBRDE0NUYwMEQ2MkVFMyAvKiBTY3JpcHRNb2R1bGVMb2FkZXIuaCAqLzsgfTsKKwkJMzcy
RDNFNTcyMTY1NzhBRTAwQzVFMDIxIC8qIE5hdmlnYXRvckNyZWRlbnRpYWxzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0Q4NDYyNjFGRTg5NUY4MDBD
QTM2ODIgLyogTmF2aWdhdG9yQ3JlZGVudGlhbHMuaCAqLzsgfTsKKwkJMzc1Q0QyMzIxMTlENDND
ODAwQTJBODU5IC8qIEh5cGhlbmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzNzVDRDIzMTExOUQ0M0M4MDBBMkE4NTkgLyogSHlwaGVuYXRpb24u
aCAqLzsgfTsKKwkJMzc3NEFCQTUwRkEyMUVCNDAwQUQ3REU5IC8qIE92ZXJsYXBUZXN0UmVxdWVz
dENsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Mzc3NEFCQTMwRkEyMUVCNDAwQUQ3REU5IC8qIE92ZXJsYXBUZXN0UmVxdWVzdENsaWVudC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3OTE5QzI0
MEI3RDE4ODYwMEE1Njk5OCAvKiBQb3NpdGlvbkl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNzkxOUMyMjBCN0QxODg2MDBBNTY5OTggLyog
UG9zaXRpb25JdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKCk7IH07IH07
CisJCTM3OTI5MTdBMTk4NUVGMzkwMEY0QjY2MSAvKiBDcmVkZW50aWFsQmFzZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzc5MjkxNzgxOTg1RUYzOTAw
RjRCNjYxIC8qIENyZWRlbnRpYWxCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzc5MjkxN0UxOTg3Njc4RjAwRjRCNjYxIC8qIENyZWRlbnRp
YWxDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Mzc5MjkxN0MxOTg3Njc4RjAwRjRCNjYxIC8qIENyZWRlbnRpYWxDb2NvYS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3OTkxOTk3MTIwMERERjQw
MEVBMDQxQyAvKiBXT0ZGRmlsZUZvcm1hdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzc5OTE5OTUxMjAwRERGNDAwRUEwNDFDIC8qIFdPRkZGaWxlRm9y
bWF0LmggKi87IH07CisJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliIGlu
IEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzc5OTE5QjEx
MjAwREU1MDAwRUEwNDFDIC8qIGxpYnouZHlsaWIgKi87IH07CisJCTM3OUUzNzE3MTM3MzZBNjYw
MEI5RTkxOSAvKiBRdW90ZWRQcmludGFibGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDM3OUUzNzE1MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmlu
dGFibGUuaCAqLzsgfTsKKwkJMzc5RTYxQ0ExMjZDQTVDNDAwQjYzRThEIC8qIEJhc2VCdXR0b25J
bnB1dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDM3OUU2MUM2MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNlQnV0dG9uSW5wdXRUeXBlLmggKi87IH07
CisJCTM3OUU2MUNDMTI2Q0E1QzQwMEI2M0U4RCAvKiBCYXNlQ2hlY2thYmxlSW5wdXRUeXBlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNzlFNjFDODEy
NkNBNUMzMDBCNjNFOEQgLyogQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5oICovOyB9OworCQkzN0JB
QUU1ODE5ODBEMUREMDA1REZFNzEgLyogUHJvdGVjdGlvblNwYWNlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzN0JBQUU1NzE5ODBEMUREMDA1REZFNzEg
LyogUHJvdGVjdGlvblNwYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJMzdDNzM4RTkxRURCRDJGQTAwM0YyQjBCIC8qIFBlcmZvcm1hbmNlTWFy
ay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzdDNzM4
RTgxRURCRDJFRDAwM0YyQjBCIC8qIFBlcmZvcm1hbmNlTWFyay5oICovOyB9OworCQkzN0M3MzhF
QjFFREJEMzg0MDAzRjJCMEIgLyogUGVyZm9ybWFuY2VNZWFzdXJlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzN0M3MzhFQTFFREJEMzgxMDAzRjJCMEIg
LyogUGVyZm9ybWFuY2VNZWFzdXJlLmggKi87IH07CisJCTM3QzczOEVEMUVEQkQ1QkMwMDNGMkIw
QiAvKiBTVkdVbmtub3duRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzdDNzM4RUMxRURCRDVCNzAwM0YyQjBCIC8qIFNWR1Vua25vd25FbGVt
ZW50LmggKi87IH07CisJCTM3QzczOEVGMUVEQkQ3MUIwMDNGMkIwQiAvKiBNYXRoTUxVbmtub3du
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MzdDNzM4RUUxRURCRDcxODAwM0YyQjBCIC8qIE1hdGhNTFVua25vd25FbGVtZW50LmggKi87IH07
CisJCTM3QzczOEYzMUVEQkRFOEEwMDNGMkIwQiAvKiBEYXRlVGltZUNob29zZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM3QzczOEYxMUVEQkRFODcw
MDNGMkIwQiAvKiBEYXRlVGltZUNob29zZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkzN0M3MzhGNDFFREJERThEMDAzRjJCMEIgLyogRGF0ZVRp
bWVDaG9vc2VyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzN0M3MzhGMjFFREJERTg3MDAzRjJCMEIgLyogRGF0ZVRpbWVDaG9vc2VyQ2xpZW50
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzdE
NDU2RkQxQTlBNTBEODAwMzMzMEExIC8qIExvY2FsaXphYmxlU3RyaW5ncy5wbSBpbiBDb3B5IFNj
cmlwdHMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzdENDU2RkIxQTlBNTBC
NjAwMzMzMEExIC8qIExvY2FsaXphYmxlU3RyaW5ncy5wbSAqLzsgfTsKKwkJMzdFMzUyNEQxMjQ1
MEM2NjAwQkFGNUQ5IC8qIElucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzdFMzUyNEMxMjQ1MEM2NjAwQkFGNUQ5IC8qIElucHV0VHlwZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3RjU2
N0NFMTY1MzU4RjQwMERERTkyQiAvKiBQb3B1cE9wZW5pbmdPYnNlcnZlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzc3MkIwOTUxNjUzNTg1NjAwMEE0
OUNBIC8qIFBvcHVwT3BlbmluZ09ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJMzdGODE4RkQwRDY1NzYwNjAwNUUxRjA1IC8qIFdlYkNv
cmVVUkxSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzdGODE4RkIwRDY1NzYwNjAwNUUxRjA1IC8qIFdlYkNvcmVVUkxSZXNwb25zZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTM3RkQ0Mjk4
MTE4MzY4NDYwMDkzQzAyOSAvKiBUcmVlRGVwdGhMaW1pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzdGRDQyOTcxMTgzNjg0NjAwOTNDMDI5IC8qIFRy
ZWVEZXB0aExpbWl0LmggKi87IH07CisJCTM4N0FFOTVCMUU4RTkyRUYwMDAwREU5NiAvKiBKU1dl
YkdQVVNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDM4N0FFOTU5MUU4RTkyRUYwMDAwREU5NiAvKiBKU1dlYkdQVVNpemUuaCAqLzsgfTsKKwkJMzhG
MjNBQjMxRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0ZUNvbW1hbmRFbmNvZGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzOEYyM0FCMDFF
OEU4M0QwMDBDRTQ2RjUgLyogSlNXZWJHUFVDb21wdXRlQ29tbWFuZEVuY29kZXIuaCAqLzsgfTsK
KwkJMzhGMjNBQjUxRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0ZVBpcGVsaW5lU3Rh
dGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM4RjIz
QUIyMUU4RTgzRDAwMENFNDZGNSAvKiBKU1dlYkdQVUNvbXB1dGVQaXBlbGluZVN0YXRlLmggKi87
IH07CisJCTNBQzY0OEIyMTI5RTE0NjUwMEMzRUIyNSAvKiBFZGl0aW5nQm91bmRhcnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNBQzY0OEIxMTI5RTE0
NjUwMEMzRUIyNSAvKiBFZGl0aW5nQm91bmRhcnkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzQkI2QjgxMTIyQTdEMzEzMDAzQTJBNjkgLyogVGFi
U2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gM0JC
NkI4MEYyMkE3RDMxMTAwM0EyQTY5IC8qIFRhYlNpemUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzQzI0NEZFQUEzNzVBQzYzM0Y4OEJFNkYgLyog
UmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gM0MyNDRGRTRBMzc1QUM2MzNGODhCRTZGIC8qIFJlbmRlckxheWVyTW9k
ZWxPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQkzRjJCMzNFRjE2NUFGMTU2MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGMkIzM0VB
MTY1QUYxNTUwMEUzOTg3QyAvKiBKU1dlYktpdENTU1ZpZXdwb3J0UnVsZS5oICovOyB9OworCQkz
RjQyQjMxRDE4ODExOTFCMDAyNzhBQUMgLyogV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFW
S2l0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzRjQy
QjMxQjE4ODExOTFCMDAyNzhBQUMgLyogV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJM0Y4
MDIwMzUxRTlFNDdCRjAwREVDNjFEIC8qIENvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODAyMDMyMUU5RTM4MUQw
MERFQzYxRCAvKiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlLmggKi87IH07CisJCTNGODAyMDM3MUU5
RTQ3QzUwMERFQzYxRCAvKiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gM0Y4MDIwMzQxRTlFMzgxRDAw
REVDNjFEIC8qIENvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmggKi87IH07CisJCTNGQkM0
QUYzMTg5ODgxNTYwMDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGQkM0QUYxMTg5
ODgxNTYwMDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSAqLzsgfTsK
KwkJM0ZCQzRBRjQxODk4ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzRkJD
NEFGMjE4OTg4MTU2MDA0NkVFMzggLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkzRkY4MTNB
NzFEQkE4NjQwMDA5QkYwMDEgLyogUG9pbnRlckxvY2tDb250cm9sbGVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0ZDNDM0RjE5MjQwNkE5MDBBMEQz
QjUgLyogUG9pbnRlckxvY2tDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDEwNzkwOEMxRkMzRjAzMzAwNjFCMjdBIC8qIENsaWVu
dE9yaWdpbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NDEwNzkwOEExRkMzRTRGMjAwNjFCMjdBIC8qIENsaWVudE9yaWdpbi5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxMEJDRjU2MjZGMENEOEMwMDQw
QjEyNCAvKiBSVENMb2NhbFNlc3Npb25EZXNjcmlwdGlvbkluaXQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMEJDRjUzMjZGMENEOEIwMDQwQjEyNCAv
KiBSVENMb2NhbFNlc3Npb25EZXNjcmlwdGlvbkluaXQuaCAqLzsgfTsKKwkJNDEwRTQ0NjEyMzQz
NzNFOTAwMDE3M0Q0IC8qIExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMEU0NDVGMjM0MzczQUQwMDAxNzNE
NCAvKiBMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDExMDBDODAyM0Y3NDU4MzAwMUJDMzNCIC8qIFdl
YlNvY2tldENoYW5uZWxJbnNwZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQxMTAwQzdFMjNGNzM5ODIwMDFCQzMzQiAvKiBXZWJTb2NrZXRDaGFu
bmVsSW5zcGVjdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNDExMDNBQUMxRTM5NzkxMDAwNzY5RjAzIC8qIFJlYWx0aW1lT3V0Z29pbmdBdWRp
b1NvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NDExMDNBQTgxRTM5NzkwQTAwNzY5RjAzIC8qIFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZS5o
ICovOyB9OworCQk0MTEwM0FBQzFFMzk3OTEwMDA3NjlGMTQgLyogUmVhbHRpbWVPdXRnb2luZ0F1
ZGlvU291cmNlQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxMTAzQUE4MUUzOTc5MEEwMDc2OUYxNCAvKiBSZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2VDb2NvYS5oICovOyB9OworCQk0MTEwM0FBRDFFMzk3OTEwMDA3NjlGMDMgLyogUmVhbHRp
bWVJbmNvbWluZ0F1ZGlvU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MTEwM0FBOTFFMzk3OTBBMDA3NjlGMDMgLyogUmVhbHRpbWVJbmNvbWlu
Z0F1ZGlvU291cmNlLmggKi87IH07CisJCTQxMTAzQUFEMUUzOTc5MTAwMDc2OUYxNCAvKiBSZWFs
dGltZUluY29taW5nQXVkaW9Tb3VyY2VDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDExMDNBQTkxRTM5NzkwQTAwNzY5RjE0IC8qIFJlYWx0aW1l
SW5jb21pbmdBdWRpb1NvdXJjZUNvY29hLmggKi87IH07CisJCTQxMTIyM0JBMjYwMjQ0RkUwMEIw
QTBCNiAvKiBTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDExMjIzQjgyNjAyNDRGRTAwQjBBMEI2
IC8qIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHRJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDExMjIzQkUyNjAyNUJDMTAwQjBBMEI2
IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZFREJFRjI1RkZCMjI0MDAwOTI2NzUgLyogUlRDRGF0
YUNoYW5uZWxSZW1vdGVTb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk0MTEyMjNDNTI2MDM1NjdEMDBCMEEwQjYgLyogRGV0YWNoZWRSVENE
YXRhQ2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDExMjIzQzMyNjAzNTY3QzAwQjBBMEI2IC8qIERldGFjaGVkUlRDRGF0YUNoYW5uZWwuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTEyQjU0
MzFGOUY5Q0EwMDBFNjc4NzUgLyogU2VydmljZVdvcmtlclRocmVhZFByb3h5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTEyQjUzRjFGOUY5QzlCMDBF
Njc4NzUgLyogU2VydmljZVdvcmtlclRocmVhZFByb3h5LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDExNEZFMzIyNUJFQkQxOTAwOUQ5RjIwIC8q
IFJUQ1J0Y3BQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTE0RkUyRjI1QkVCRDE4MDA5RDlGMjAgLyogUlRDUnRjcFBhcmFtZXRlcnMu
aCAqLzsgfTsKKwkJNDEyMzA4MUIxMzhDNDI5NzAwQkNDRkNBIC8qIFdlYkNvcmUuZnJhbWV3b3Jr
IGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNGMTlC
MUEwODI0NUU1QTAwMUU5QUJDIC8qIFdlYkNvcmUuZnJhbWV3b3JrICovOyB9OworCQk0MTIzMDkx
MzEzOEM0MkZGMDBCQ0NGQ0EgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29y
a3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjgyMTYyOTkwMjlGNEZCNTAx
MDAwMTMxIC8qIEphdmFTY3JpcHRDb3JlLmZyYW1ld29yayAqLzsgfTsKKwkJNDEyOUM5OTcxRjU5
Qjk2MzAwOUQ3NDAzIC8qIEZldGNoQm9keVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzMDE1RDYxQzdCNTcwNDAwMDkxQzZGIC8qIEZldGNo
Qm9keVNvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTQxMjlDOUE5MUY1OUM1NkIwMDlENzQwMyAvKiBSZWFkYWJsZVN0cmVhbURlZmF1bHRD
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MThDMzk1RjFDOEYwQUFCMDA1MUM4QTMgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTQxMjlDOUFCMUY1OUM1NzMwMDlENzQwMyAvKiBSZWFkYWJsZVN0cmVhbVNvdXJjZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4QzM5NUIxQzhGMEE2
MTAwNTFDOEEzIC8qIFJlYWRhYmxlU3RyZWFtU291cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDEyOUM5QUYxRjU5Q0Y1QjAwOUQ3NDAzIC8q
IFJlYWRhYmxlU3RyZWFtU2luay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDEyOUM5ODAxRjU4NjFDNzAwOUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2lu
ay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQx
MkRFNEI4MjE5Mjg1QzAwMDc1RjNBNyAvKiBSVENSdHBDYXBhYmlsaXRpZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMkRFNEI2MjE5Mjg1QkYwMDc1
RjNBNyAvKiBSVENSdHBDYXBhYmlsaXRpZXMuaCAqLzsgfTsKKwkJNDEyREVGMUQyM0E5MTg2NjAw
RDg0MEY2IC8qIE1vY2tBdWRpb1NoYXJlZFVuaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NDRFQ0VCMUUwQzRBRTUwMDBEMDk0NCAvKiBNb2NrQXVk
aW9TaGFyZWRVbml0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNDEyREVGMUYyM0E5MThBMzAwRDg0MEY2IC8qIEJhc2VBdWRpb1NoYXJlZFVuaXQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNzdGNTFF
MjM4MjU0NUUwMEMwNDQ4NiAvKiBCYXNlQXVkaW9TaGFyZWRVbml0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDEzM0NCOEIyMEY4MEU5OTAwRTg5
QjExIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VDb2NvYS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTMzQ0I4OTIwRjgwRTg2MDBFODlCMTEgLyog
TWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29hLmNwcCAqLzsgfTsKKwkJNDEzNkM1N0EyMzk4RTVC
RTAwMjQ5N0QzIC8qIEludGVybmFsc01hcExpa2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzNkM1NzgyMzk4RTVCNTAwMjQ5N0QzIC8qIEludGVy
bmFsc01hcExpa2UuY3BwICovOyB9OworCQk0MTM2QzU3QzIzOThFQ0NGMDAyNDk3RDMgLyogSlNJ
bnRlcm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJENkYzRTkyMUMxRjg1NTUwMDYxREJENiAvKiBKU0ludGVybmFsc01hcExpa2Uu
Y3BwICovOyB9OworCQk0MTM2RUMwQzIzODM4ODcwMDAwQURCQ0UgLyogSW50ZXJuYWxzU2V0TGlr
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTM2
RUMwOTIzODM4N0MzMDAwQURCQ0UgLyogSW50ZXJuYWxzU2V0TGlrZS5jcHAgKi87IH07CisJCTQx
MzZFQzBEMjM4MzhBNDcwMDBBREJDRSAvKiBJbnRlcm5hbHNTZXRMaWtlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTM2RUMwQTIzODM4N0M0MDAwQURC
Q0UgLyogSW50ZXJuYWxzU2V0TGlrZS5oICovOyB9OworCQk0MTM4MEMyNzFGMzQzNkFDMDAxNTVG
REEgLyogRE9NQ2FjaGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxMzgwQzI1MUYzNDM2OUEwMDE1NUZEQSAvKiBET01DYWNoZS5oICovOyB9OworCQk0
MTM4MEMyOTFGMzQzNkFDMDAxNTVGREEgLyogRE9NQ2FjaGVTdG9yYWdlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTM4MEMyMjFGMzQzNjkwMDAxNTVG
REEgLyogRE9NQ2FjaGVTdG9yYWdlLmggKi87IH07CisJCTQxMzhEMzM1MTI0NDA1NDgwMDMyM0Qz
MyAvKiBFdmVudENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVudENvbnRleHQuaCAqLzsg
fTsKKwkJNDEzOEY4NTgxRDI1M0YwRTAwMUNCNjFFIC8qIEpTRE9NSXRlcmF0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMzhGODU2MUQyNTNFRUUw
MDFDQjYxRSAvKiBKU0RPTUl0ZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDEzQTFBQTIyMzcxQThCNDAwN0VGM0E1IC8qIEpTRE9NU2V0
TGlrZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEz
QTFBOUYyMzcxQThBODAwN0VGM0E1IC8qIEpTRE9NU2V0TGlrZS5oICovOyB9OworCQk0MTNDMkMz
NDFCQzI5QThGMDA3NTIwNEMgLyogSlNET01Db25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzQzJDMzMxQkMyOUE3QjAwNzUyMDRDIC8q
IEpTRE9NQ29uc3RydWN0b3IuaCAqLzsgfTsKKwkJNDEzQzhCMzMyNTUyRjI3RDAwRTY1MDU1IC8q
IFJUQ1J0cFNlbmRlcldpdGhUcmFuc2Zvcm0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxM0M4QjJFMjU1MkYyN0IwMEU2NTA1NSAvKiBSVENSdHBTZW5k
ZXJXaXRoVHJhbnNmb3JtLmggKi87IH07CisJCTQxM0M4QjM0MjU1MkYyN0QwMEU2NTA1NSAvKiBS
VENSdHBUcmFuc2Zvcm0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxM0M4QjJGMjU1MkYyN0IwMEU2NTA1NSAvKiBSVENSdHBUcmFuc2Zvcm0uaCAqLzsg
fTsKKwkJNDEzQzhCMzUyNTUyRjI3RDAwRTY1MDU1IC8qIFJUQ1J0cFJlY2VpdmVyV2l0aFRyYW5z
Zm9ybS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEz
QzhCMzAyNTUyRjI3QzAwRTY1MDU1IC8qIFJUQ1J0cFJlY2VpdmVyV2l0aFRyYW5zZm9ybS5oICov
OyB9OworCQk0MTNDQzExRDI1RTdEOThFMDBENTlDNEIgLyogUlRDUHJpb3JpdHlUeXBlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTNDQzExQzI1RTdE
OThEMDBENTlDNEIgLyogUlRDUHJpb3JpdHlUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDEzQ0NENEEyMERFMDM0RjAwNjVBMjFBIC8qIE1v
Y2tNZWRpYURldmljZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDEzQ0NENDgyMERFMDEzQzAwNjVBMjFBIC8qIE1vY2tNZWRpYURldmljZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxM0UwMDc5MURC
MEU0RjIwMDIzNDFEMiAvKiBNZW1vcnlSZWxlYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTNFMDA3ODFEQjBFNERFMDAyMzQxRDIgLyogTWVtb3J5
UmVsZWFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTQxNDQ2MEEyMjQxMjk5NDUwMDgxNEJFNyAvKiBNZWRpYVNlc3Npb25JZGVudGlmaWVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTQ0NjBBMDI0
MTI5OTQxMDA4MTRCRTcgLyogTWVkaWFTZXNzaW9uSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNDUxNkVDMjZDRTUyNjYwMEFB
QUJFMCAvKiBSVENTY3RwVHJhbnNwb3J0QmFja2VuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE0NTE2RUIyNkNFNTI2NjAwQUFBQkUwIC8qIFJUQ1Nj
dHBUcmFuc3BvcnRCYWNrZW5kLmggKi87IH07CisJCTQxNDU5OEMyMjNDOEQxNzcwMDJCOUNDOCAv
KiBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNDU5OEMxMjNDOEFENzkwMDJCOUNDOCAvKiBMb2Nh
bFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5tbSAqLzsgfTsKKwkJNDE0QjdGQUQyNEQ4MUNDMTAw
MzNENDQyIC8qIE1lZGlhUmVjb3JkZXJQcml2YXRlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE0QjdGQUIyNEQ4MUM4RjAwMzNENDQyIC8q
IE1lZGlhUmVjb3JkZXJQcml2YXRlT3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNEI4MjA1MUQ2REYwRTUwMDc3RUJFMyAvKiBTdHJ1
Y3R1cmVkQ2xvbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxNEI4MjAzMUQ2REYwRDkwMDc3RUJFMyAvKiBTdHJ1Y3R1cmVkQ2xvbmUuaCAqLzsgfTsK
KwkJNDE0REVERTcxRjlGRTkxRTAwNDdDNDBEIC8qIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNERFREU1MUY5
RkU5MTUwMDQ3QzQwRCAvKiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE1MDcxNTgxNjg1MDY3MzAwQzND
N0IzIC8qIFNlbGVjdG9yRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MTUwNzE1NjE2ODUwNjczMDBDM0M3QjMgLyogU2VsZWN0b3JGaWx0ZXIu
aCAqLzsgfTsKKwkJNDE1MDgwMzYxRTNGMDBBRDAwNTFENzVEIC8qIExpYldlYlJUQ0F1ZGlvTW9k
dWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
NTA4MDM0MUUzRjAwQUEwMDUxRDc1RCAvKiBMaWJXZWJSVENBdWRpb01vZHVsZS5jcHAgKi87IH07
CisJCTQxNTA4MDM3MUUzRjAwQjAwMDUxRDc1RCAvKiBMaWJXZWJSVENBdWRpb01vZHVsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE1MDgwMzUxRTNG
MDBBQTAwNTFENzVEIC8qIExpYldlYlJUQ0F1ZGlvTW9kdWxlLmggKi87IH07CisJCTQxNTBGOUYx
MTJCNkUwRTcwMDA4Qzg2MCAvKiBTbGlkZXJUaHVtYkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNTBGOUVGMTJCNkUwRTcwMDA4Qzg2MCAv
KiBTbGlkZXJUaHVtYkVsZW1lbnQuaCAqLzsgfTsKKwkJNDE1MTlDQjgxRkQxRjAyRTAwN0Y2MjND
IC8qIFNlcnZpY2VXb3JrZXJDbGllbnRRdWVyeU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxM0ZDNENEMUZEMUREOEMwMDU0MUM0QiAvKiBT
ZXJ2aWNlV29ya2VyQ2xpZW50UXVlcnlPcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE1MUU1QkIxRkJBNEM3QTAwRTQ3RTJEIC8qIFNX
T3JpZ2luU3RvcmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxNTFFNUI3MUZCQTRDNzUwMEU0N0UyRCAvKiBTV09yaWdpblN0b3JlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE1NzQ3NDcxRTM4NjlB
NDAwRTkxNEQ4IC8qIExpYldlYlJUQ01hY3Jvcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDE1NzQ3NDMxRTM4Njk5RTAwRTkxNEQ4IC8qIExpYldlYlJU
Q01hY3Jvcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTQxNTc0NzQ4MUUzODY5QTcwMEU5MTREOCAvKiBMaWJXZWJSVENQcm92aWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE1NzQ3NDQxRTM4Njk5
RTAwRTkxNEQ4IC8qIExpYldlYlJUQ1Byb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE1N0VCRkExRTNBQjY3OTAwQUM5RkU5IC8qIE1v
Y2tMaWJXZWJSVENQZWVyQ29ubmVjdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MTU3RUJGOTFFM0FCMDY4MDBBQzlGRTkgLyogTW9ja0xpYldl
YlJUQ1BlZXJDb25uZWN0aW9uLmNwcCAqLzsgfTsKKwkJNDE1N0VCRkIxRTNBQjY3RjAwQUM5RkU5
IC8qIE1vY2tMaWJXZWJSVENQZWVyQ29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE1N0VCRjgxRTNBQjA2ODAwQUM5RkU5IC8qIE1vY2tM
aWJXZWJSVENQZWVyQ29ubmVjdGlvbi5oICovOyB9OworCQk0MTU4NjRBMDIzQkY3Q0JGMDBBMEE2
MUUgLyogUmVhbHRpbWVWaWRlb1V0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDFEMTkzOEYyMTUyQzU2MTAwNkYxNENBIC8qIFJlYWx0aW1l
VmlkZW9VdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk0MTVDREFGNTFFNkI4RjhCMDA0RjExRUUgLyogQ2FudmFzQ2FwdHVyZU1lZGlh
U3RyZWFtVHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxQzdFMTA2MUU2QTU0MzYwMDI3QjRERSAvKiBDYW52YXNDYXB0dXJlTWVkaWFTdHJlYW1U
cmFjay5oICovOyB9OworCQk0MTYxNEE3OTFEQTY0MjQxMDA0QUQwNkYgLyogSFRUUEhlYWRlclZh
bHVlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2
MTRBNzcxREE2NDIzNjAwNEFEMDZGIC8qIEhUVFBIZWFkZXJWYWx1ZXMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTYxRTJENTFGRTQ4REM1MDBF
QzJFOTYgLyogRmV0Y2hMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxNDdFMkI1MUM4OTkxMjYwMEE3RTcxNSAvKiBGZXRjaExvYWRlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNjJBNDUx
MTAxMTQ1QUUwMERGRjNFRCAvKiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2MkE0NEUxMDExNDVBRTAw
REZGM0VEIC8qIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggKi87IH07CisJCTQxNjJBNDU4
MTAxMTQ2NDcwMERGRjNFRCAvKiBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTYyQTQ1NjEwMTE0NjQ3
MDBERkYzRUQgLyogSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oICovOyB9OworCQk0MTZB
MDZBMTIzQ0NBRDAzMDAzNDcxMDkgLyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkEwNjk2MjND
Q0FBOUYwMDM0NzEwOSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNkQ3NUEyMjBDNjUx
QTUwMEQwMkQyQyAvKiBOZXR3b3JrTG9hZEluZm9ybWF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZENzU5RjIwQzY0NDEzMDBEMDJEMkMgLyog
TmV0d29ya0xvYWRJbmZvcm1hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTQxNkUwQjNBMjA5QkMzQ0IwMDRBOTVEOSAvKiBGZXRjaElkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
NkUwQjM3MjA5QkMzQzIwMDRBOTVEOSAvKiBGZXRjaElkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTZFMjlBNjEwMkZBOTYyMDA3
RkMxNEUgLyogV29ya2VyUmVwb3J0aW5nUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkUyOUE1MTAyRkE5NjIwMDdGQzE0RSAvKiBXb3JrZXJS
ZXBvcnRpbmdQcm94eS5oICovOyB9OworCQk0MTZFNkZFODFCQkQxMkRGMDAwQTNGNjQgLyogUmVh
ZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOUIwM0Q4MDYxQkIzMTEwRDAwQjc2NEQ5IC8qIFJlYWRhYmxl
U3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk0MTZFNkZFODFCQkQxMkRGMDAwQTNGNjUgLyogSlNET01CaW5k
aW5nSW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDlCMDNEODA2MUJCMzExMEQwMEI3NjREQSAvKiBKU0RPTUJpbmRpbmdJbnRl
cm5hbHNCdWlsdGlucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTQxNkU2RkU4MUJCRDEyREYwMDBBM0Y3NCAvKiBUcmFuc2Zvcm1TdHJlYW1JbnRl
cm5hbHNCdWlsdGlucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOUIwM0Q4MDYxQkIzMTEwRDAwQjc2NEVBIC8qIFRyYW5zZm9ybVN0cmVhbUludGVybmFs
c0J1aWx0aW5zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNDE2RTZGRTgxQkJEMTJERjAwMEE2MDMzIC8qIFN0cmVhbUludGVybmFsc0J1aWx0aW5z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjAzRDgw
NjFCQjMxMTBEMDBCNzY0QzkgLyogU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTZFNkZFODFCQkQxMkRG
MDAwQTYwNDMgLyogUmVhZGFibGVCeXRlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCMDNEODA2MUJCMzExMEQw
MEI3M0Y2NCAvKiBSZWFkYWJsZUJ5dGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNkU2RkU4MUJCRDEy
REYwMDBBNjA1MyAvKiBXcml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjAzRDgwNjFCQjMxMTBEMDBC
NzY0RTkgLyogV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNkU2RkU5MUJCRDEyRTUwMDBB
NjA0MyAvKiBSZWFkYWJsZVN0cmVhbUJ1aWx0aW5zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjAzRDgwNjFCQjMxMTBEMDBCNzY0RDggLyogUmVhZGFi
bGVTdHJlYW1CdWlsdGlucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTQxNkVDQUU1MjVCNThDQzQwMEIzNERBNSAvKiBNZWRpYVNlc3Npb25Hcm91
cElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxNkVDQUUzMjVCNThDQzQwMEIzNERBNSAvKiBNZWRpYVNlc3Npb25Hcm91cElkZW50aWZp
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0
MTZFREJGNjI2MDBENjc5MDAwOTI2NzUgLyogUlRDRGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZFREJGNDI2
MDBENjc4MDAwOTI2NzUgLyogUlRDRGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE2RURDMDAyNjAwRTc4
ODAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RURCRkYyNjAwRTc4NzAwMDkyNjc1IC8q
IFJUQ0RhdGFDaGFubmVsSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTQxNkVEQzAyMjYwMEU3QjAwMDA5MjY3NSAvKiBSVENEYXRh
Q2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZFREMwMTI2MDBFN0IwMDAwOTI2NzUgLyogUlRDRGF0
YUNoYW5uZWxSZW1vdGVIYW5kbGVyQ29ubmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNkVEQzA0MjYwMEU4MTAwMDA5MjY3NSAvKiBS
VENEYXRhQ2hhbm5lbFJlbW90ZVNvdXJjZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkVEQzAzMjYwMEU4MEYwMDA5MjY3NSAvKiBS
VENEYXRhQ2hhbm5lbFJlbW90ZVNvdXJjZUNvbm5lY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTZGRDI1RjI0MEZBNEU1MDA2NjYxRDgg
LyogTm93UGxheWluZ0luZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxNkZEMjVEMjQwRUUxQUUwMDY2NjFEOCAvKiBOb3dQbGF5aW5nSW5mby5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxNzI1M0FC
MTM1NEJCQkMwMDM2MEYyQSAvKiBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTcyNTNB
OTEzNTRCQkJDMDAzNjBGMkEgLyogTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVu
dC5oICovOyB9OworCQk0MTc2MTJBRjFFM0E5OTQwMDBDM0Q4MUQgLyogTGliV2ViUlRDTWVkaWFF
bmRwb2ludC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTc2MTJBQjFFM0E5OTNCMDBDM0Q4MUQgLyogTGliV2ViUlRDTWVkaWFFbmRwb2ludC5jcHAg
Ki87IH07CisJCTQxNzYxMkIwMUUzQTk5NDAwMEMzRDgxRCAvKiBMaWJXZWJSVENNZWRpYUVuZHBv
aW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTc2
MTJBQzFFM0E5OTNCMDBDM0Q4MUQgLyogTGliV2ViUlRDTWVkaWFFbmRwb2ludC5oICovOyB9Owor
CQk0MTc2MTJCMTFFM0E5OTQwMDBDM0Q4MUQgLyogTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNr
ZW5kLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
NzYxMkFEMUUzQTk5M0IwMEMzRDgxRCAvKiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQu
Y3BwICovOyB9OworCQk0MTc2MTJCMjFFM0E5OTQwMDBDM0Q4MUQgLyogTGliV2ViUlRDUGVlckNv
bm5lY3Rpb25CYWNrZW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0MTc2MTJBRTFFM0E5OTNCMDBDM0Q4MUQgLyogTGliV2ViUlRDUGVlckNvbm5lY3Rp
b25CYWNrZW5kLmggKi87IH07CisJCTQxNzZFODk2MjNDMzUzN0IwMDNFODNGRSAvKiBNZWRpYVJl
Y29yZGVyUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxNzZFODhGMjNDMzQ4RDIwMDNFODNGRSAvKiBNZWRpYVJlY29yZGVyUHJvdmlkZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTc4
RUYxNzI0MTI2MDg0MDAxOTNDNzQgLyogTm93UGxheWluZ01hbmFnZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNzhFRjE0MjQxMjVCNkMwMDE5M0M3
NCAvKiBOb3dQbGF5aW5nTWFuYWdlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTQxN0RBNkQ5MTM3MzRFNkUwMDdDNTdGQiAvKiBJbnRlcm5hbHMu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE3REE0
Q0YxMzczNDMyNjAwN0M1N0ZCIC8qIEludGVybmFscy5jcHAgKi87IH07CisJCTQxN0RBNkRBMTM3
MzRFNkUwMDdDNTdGQiAvKiBJbnRlcm5hbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxN0RBNENFMTM3MzQzMjYwMDdDNTdGQiAvKiBJbnRlcm5hbHMu
aCAqLzsgfTsKKwkJNDE3REE3MUQxMzczNURGQTAwN0M1N0ZCIC8qIEpTSW50ZXJuYWxzLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxN0RBNzFCMTM3
MzVERkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5jcHAgKi87IH07CisJCTQxN0RBNzFFMTM3MzVE
RkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDE3REE3MUMxMzczNURGQTAwN0M1N0ZCIC8qIEpTSW50ZXJuYWxz
LmggKi87IH07CisJCTQxN0YwRDgyMUZGRUU5NzkwMDhFRjMwMyAvKiBTZXJ2aWNlV29ya2VySW50
ZXJuYWxzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQxN0YwRDgwMUZGRUUxNEYwMDhFRjMwMyAvKiBTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmNwcCAq
LzsgfTsKKwkJNDE3RjdBRUUyMTM5QkY2ODAwRkJBN0VDIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE3RjdBRUMy
MTM5QkY2NTAwRkJBN0VDIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxN0Y3QUVGMjEzOUJGNkYwMEZCQTdF
QyAvKiBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxN0Y3QUVEMjEzOUJGNjUwMEZCQTdFQyAvKiBNZWRpYVNl
c3Npb25NYW5hZ2VyQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk0MTgxNUMxRTEzODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBw
b3J0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
ODE1QzFDMTM4MzE5ODMwMDU3QUFBNCAvKiBXZWJDb3JlVGVzdFN1cHBvcnQuY3BwICovOyB9Owor
CQk0MTgxNUMxRjEzODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTgxNUMxRDEzODMxOTgz
MDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE4MUM1QzkyNTU1NzNERjAwQUVCMEZGIC8qIFJU
Q1J0cFRyYW5zZm9ybUJhY2tlbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxODFDNUM4MjU1NTczREYwMEFFQjBGRiAvKiBSVENSdHBUcmFuc2Zvcm1C
YWNrZW5kLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNDE4MUM1Q0IyNTU1ODJFNDAwQUVCMEZGIC8qIFJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4MUM1Q0Ey
NTU1ODJFMzAwQUVCMEZGIC8qIFJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5oICovOyB9OworCQk0
MTgxQzVDRDI1NTU4MzY5MDBBRUIwRkYgLyogTGliV2ViUlRDUnRwVHJhbnNmb3JtYWJsZUZyYW1l
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTgxQzVD
QzI1NTU4MzY4MDBBRUIwRkYgLyogTGliV2ViUlRDUnRwVHJhbnNmb3JtYWJsZUZyYW1lLmggKi87
IH07CisJCTQxODFDNUQxMjU1NTg5NTYwMEFFQjBGRiAvKiBMaWJXZWJSVENSdHBUcmFuc2Zvcm1C
YWNrZW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTgxQzVDRjI1NTU4OTU2MDBBRUIwRkYgLyogTGliV2ViUlRDUnRwVHJhbnNmb3JtQmFja2VuZC5o
ICovOyB9OworCQk0MTgxQzY0ODI1NUI0QzI4MDBBRUIwRkYgLyogUlRDUnRwU0ZyYW1lVHJhbnNm
b3JtZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
ODFDNjQyMjU1QjRDMjYwMEFFQjBGRiAvKiBSVENSdHBTRnJhbWVUcmFuc2Zvcm1lci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxODFDNjRBMjU1
QjRDMjgwMEFFQjBGRiAvKiBSVENSdHBTRnJhbWVUcmFuc2Zvcm0uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxODFDNjQ0MjU1QjRDMjcwMEFFQjBGRiAv
KiBSVENSdHBTRnJhbWVUcmFuc2Zvcm0uaCAqLzsgfTsKKwkJNDE4MjA1NDcxRTUzRTk4QzAwRDYy
MjA3IC8qIFJUQ0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxODIwNTQ1MUU1M0M4Q0QwMEQ2MjIwNyAvKiBSVENDb250cm9sbGVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDE4MjZC
RjIyM0ZCNTk3NzAwQjkyMkIxIC8qIERvY3VtZW50SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4MjZCRjEyM0ZCNTk3MDAwQjkyMkIx
IC8qIERvY3VtZW50SWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTQxODRGNTE2MUVBRjA1QTgwMEYxOEJGMCAvKiBPcmllbnRhdGlv
bk5vdGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTg0RjUxNTFFQUYwNTk4MDBGMThCRjAgLyogT3JpZW50YXRpb25Ob3RpZmllci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxODZCRDNFMjEz
RUUzNDAwMDAxODI2RiAvKiBMaWJXZWJSVENVdGlscy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUQxQTA0OTIxM0VEREZEMDA2M0ZCNkIgLyogTGli
V2ViUlRDVXRpbHMuY3BwICovOyB9OworCQk0MTg2QkQzRjIxM0VFMzQzMDAwMTgyNkYgLyogTGli
V2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MUQxQTA0QjIxM0VEREZFMDA2M0ZCNkIgLyogTGliV2ViUlRDUnRw
U2VuZGVyQmFja2VuZC5jcHAgKi87IH07CisJCTQxODZCRDQwMjEzRUUzNDUwMDAxODI2RiAvKiBM
aWJXZWJSVENSdHBSZWNlaXZlckJhY2tlbmQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDFEMUEwNEEyMTNFRERGRTAwNjNGQjZCIC8qIExpYldlYlJU
Q1J0cFJlY2VpdmVyQmFja2VuZC5jcHAgKi87IH07CisJCTQxODZCRDRFMjE0MEI5RTgwMDAxODI2
RiAvKiBMaWJXZWJSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4NkJENEQyMTQwQjlFODAwMDE4MjZGIC8q
IExpYldlYlJUQ1J0cFRyYW5zY2VpdmVyQmFja2VuZC5jcHAgKi87IH07CisJCTQxODg1QjkzMTFC
NkZEQTYwMDMzODNCQiAvKiBGb3JtU3VibWlzc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4ODVCOTExMUI2RkRBNjAwMzM4M0JCIC8qIEZvcm1T
dWJtaXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNDE4OEQ1NUMyNkM1NEQ2RjAwNDg1OEM4IC8qIFJUQ0R0bHNUcmFuc3BvcnRCYWNrZW5k
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTg4RDU1
QTI2QzU0RDZGMDA0ODU4QzggLyogUlRDRHRsc1RyYW5zcG9ydEJhY2tlbmQuaCAqLzsgfTsKKwkJ
NDE4OEQ1NjMyNkM1NTFCMTAwNDg1OEM4IC8qIFJUQ0R0bHNUcmFuc3BvcnRTdGF0ZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4OEQ1NjIyNkM1NTFC
MTAwNDg1OEM4IC8qIFJUQ0R0bHNUcmFuc3BvcnRTdGF0ZS5oICovOyB9OworCQk0MTg5MzhCMjI0
MjlGOUI0MDA3RkRDNDEgLyogUmV0cmlldmVSZWNvcmRzT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE4OTM4QUYyNDI5RjlBQjAwN0ZEQzQx
IC8qIFJldHJpZXZlUmVjb3Jkc09wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk0MThBMDZEMDEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnRE
aXNwYXRjaGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MThBMDZDRTEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnREaXNwYXRjaGVyLmggKi87IH07CisJ
CTQxOEY4ODA1MEZGOTU3QUYwMDgwRjA0NSAvKiBKU0Fic3RyYWN0V29ya2VyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MThGODgwMzBGRjk1N0FFMDA4
MEYwNDUgLyogSlNBYnN0cmFjdFdvcmtlci5oICovOyB9OworCQk0MTkwRjNBNTI0QTBCNEVFMDA1
MzFDNTcgLyogRnJhbWVSYXRlTW9uaXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDE5MEYzQTMyNDlEMTUyODAwNTMxQzU3IC8qIEZyYW1lUmF0ZU1v
bml0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk0MTkyNDI0OTIxMjdCOTNFMDA2MzRGQ0YgLyogUmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNl
Q29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTkyNDI0NzIxMjdCN0NDMDA2MzRGQ0YgLyogUmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNlQ29j
b2EubW0gKi87IH07CisJCTQxOUFDRjkyMUY5N0U3REEwMDlGMUE4MyAvKiBTZXJ2aWNlV29ya2Vy
RmV0Y2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
OUFDRjhFMUY5N0U3RDUwMDlGMUE4MyAvKiBTZXJ2aWNlV29ya2VyRmV0Y2guaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MTlCQzJERjE2ODUzMjk5
MDBENjRENkQgLyogVmlzaXRlZExpbmtTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDE5QkMyREQxNjg1MzI5OTAwRDY0RDZEIC8qIFZpc2l0ZWRM
aW5rU3RhdGUuaCAqLzsgfTsKKwkJNDE5QkU3NTkxQkM3RjQyQjAwRTFDODVCIC8qIFdlYkNvcmVC
dWlsdGluTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxOUJFNzUyMUJDN0YzREIwMEUxQzg1QiAvKiBXZWJDb3JlQnVpbHRpbk5hbWVzLmggKi87
IH07CisJCTQxOUU2RUM5MjU2NkQyNzgwMDJCNTAxMCAvKiBSVENQZWVyQ29ubmVjdGlvbkljZUVy
cm9yRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQxOUU2RUM3MjU2NkQyMTQwMDJCNTAxMCAvKiBSVENQZWVyQ29ubmVjdGlvbkljZUVycm9yRXZl
bnQuaCAqLzsgfTsKKwkJNDFBMDgyOUMyMjkzNUYzRDAwODQyNkUwIC8qIEZlYXR1cmVQb2xpY3ku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTA4Mjk5
MjI5MzJFRjQwMDg0MjZFMCAvKiBGZWF0dXJlUG9saWN5LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDFBMUIwMUMxRTU0MjM5QjAwN0YzNzY5IC8q
IEpTRE9NR3VhcmRlZE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDFBMUIwMUExRTU0MjM5NjAwN0YzNzY5IC8qIEpTRE9NR3VhcmRlZE9iamVj
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQx
QTNENThGMTAxQzE1MkQwMDMxNkQwNyAvKiBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTNENThEMTAxQzE1MkQw
MDMxNkQwNyAvKiBEZWRpY2F0ZWRXb3JrZXJUaHJlYWQuaCAqLzsgfTsKKwkJNDFBN0QzNTMxRjQz
OEQxNjAwODk4OERFIC8qIFdvcmtlckNhY2hlU3RvcmFnZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTdEMzUwMUY0MzhEMTAwMDg5
ODhERSAvKiBXb3JrZXJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmggKi87IH07CisJCTQxQUI5Nzk1
MjZFNzVBMkUwMDdDMEZFNiAvKiBSVENFcnJvckRldGFpbFR5cGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQUI5NzkyMjZFNzVBMkQwMDdDMEZFNiAv
KiBSVENFcnJvckRldGFpbFR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk0MUFCRTY3QjFEMDU4MERCMDA2RDg2MkQgLyogQ3Jvc3NPcmlnaW5Q
cmVmbGlnaHRDaGVja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0MUFCRTY3QTFEMDU4MEQ1MDA2RDg2MkQgLyogQ3Jvc3NPcmlnaW5QcmVmbGlnaHRD
aGVja2VyLmggKi87IH07CisJCTQxQUQ3NTNBMUNFRjZCRDEwMEEzMTQ4NiAvKiBGZXRjaE9wdGlv
bnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQUQ3
NTM5MUNFRjZCQ0UwMEEzMTQ4NiAvKiBGZXRjaE9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUIyOEIxNTFGODUwMUQzMDBGQjUyQUMg
LyogTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQjI4QjEyMUY4NTAxQTMwMEZCNTJBQyAvKiBNZWRpYUVu
ZHBvaW50Q29uZmlndXJhdGlvbi5oICovOyB9OworCQk0MUIyOEIzRDFGODYwRUYzMDBGQjUyQUMg
LyogTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDFCMjhCMzYxRjg2MEJEMDAwRkI1MkFDIC8qIExpYldlYlJUQ1By
b3ZpZGVyQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk0MUIyQTYyNjFFRjFCRjZEMDAyQjlEN0EgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFCMkE2
MjUxRUYxQkY2MDAwMkI5RDdBIC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUI4Nzc2MjIzREUxMDQ1
MDAzNjM4QjggLyogUmVhbHRpbWVNZWRpYVNvdXJjZUlkZW50aWZpZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQjg3NzYwMjNERTEwNDIwMDM2MzhC
OCAvKiBSZWFsdGltZU1lZGlhU291cmNlSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxQkJBODY2MjU3RTM3M0IwMEFDN0Y2RCAv
KiBTRnJhbWVVdGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDEyMDlFMjQyNTdBMkZCQjAwMTIwQUNBIC8qIFNGcmFtZVV0aWxzLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDFCRjIwNDkyMkJBN0JF
ODAwMDRGODEyIC8qIFJlYWx0aW1lVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQkYyMDQwMjJCOTQ3MTYwMDA0RjgxMiAvKiBSZWFs
dGltZVZpZGVvU291cmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNDFDMTRCQzYyNkRFNkRFODAwNjg1QkY1IC8qIFJUQ05ldHdvcmtNYW5hZ2Vy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUMxNEJD
NDI2REU2REU4MDA2ODVCRjUgLyogUlRDTmV0d29ya01hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUMxNEJDNzI2REU4NTg0MDA2ODVC
RjUgLyogTGliV2ViUlRDVXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxRDFBMDRDMjEzRURERkYwMDYzRkI2QiAvKiBMaWJXZWJSVENVdGlscy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxQzE0
QkM5MjZERjc5RDcwMDY4NUJGNSAvKiBNRE5TUmVnaXN0ZXJFcnJvci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFDMTRCQzgyNkRGNzlENjAwNjg1QkY1
IC8qIE1ETlNSZWdpc3RlckVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNDFDM0I4QTEyNjQ5QjFFMDAwNEVENERFIC8qIEF1ZGlvTWVkaWFT
dHJlYW1UcmFja1JlbmRlcmVySW50ZXJuYWxVbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUMzQjg5RjI2NDlCMUI3MDA0RUQ0REUgLyogQXVkaW9N
ZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJJbnRlcm5hbFVuaXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUMzQjhBMjI2NDlCMUU1MDA0RUQ0REUg
LyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUMzQjg5QjI2NDlCMUI2MDA0RUQ0REUgLyog
QXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJVbml0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDFDNzYwQjEwRURFMDNEMzAwQzE2NTVGIC8q
IFNjcmlwdFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0MUM3NjBCMDBFREUwM0QzMDBDMTY1NUYgLyogU2NyaXB0U3RhdGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUNCODQwMTI1Q0FCN0Iz
MDAxMEUyQjEgLyogUmVhbHRpbWVJbmNvbWluZ1ZpZGVvU291cmNlQ29jb2EuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQ0I4NDAwMjVDQUI3QjAwMDEw
RTJCMSAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2VDb2NvYS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxQ0I4NDAyMjVDQUI4MUUwMDEw
RTJCMSAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDREQ4MzNBMUU0MzI0QkIwMDYyMUU5MiAvKiBS
ZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk0MUQwMTVDQTBGNEI1QzcxMDA0QTY2MkYgLyogQ29udGVu
dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
RDAxNUM4MEY0QjVDNzEwMDRBNjYyRiAvKiBDb250ZW50VHlwZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRDEyOUNFMUYzRDBFRjYwMEQxNUU0
NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlQ2FjaGVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUZCMjc4RDFGMzRDMjgyMDA3OTU0ODcgLyog
V2luZG93T3JXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oICovOyB9OworCQk0MUQxMjlEMDFGM0Qw
RjA1MDBEMTVFNDcgLyogQ2FjaGVRdWVyeU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRkIyNzlCMUYzNENFRjAwMDc5NTQ4NyAvKiBDYWNo
ZVF1ZXJ5T3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTQxRDEyOUQzMUYzRDBGMTYwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VDb25uZWN0
aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUQx
MjlDQzFGM0QwRUUzMDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbi5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRDEyOUQ1MUYzRDBG
NjkwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFEMTI5RDQxRjNEMEY2NjAwRDE1RTQ3IC8qIENh
Y2hlU3RvcmFnZVByb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNDFEMTI5REIxRjNEMTQzODAwRDE1RTQ3IC8qIEZldGNoSGVhZGVycy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFGNTRGODMx
QzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoSGVhZGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRDI4RDBEMjEzOUUwNTgwMEY0MjA2RiAvKiBM
aWJXZWJSVENTdGF0c0NvbGxlY3Rvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MUQyOEQwQjIxMzlFMDFEMDBGNDIwNkYgLyogTGliV2ViUlRDU3Rh
dHNDb2xsZWN0b3IuY3BwICovOyB9OworCQk0MUQ0MUM2NzIyNTY4NzRGMDA2OTc5NDIgLyogU2Vy
dmljZVdvcmtlckludGVybmFscy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxRDQxQzY1MjI1Njg1OTIwMDY5Nzk0MiAvKiBTZXJ2aWNlV29ya2VySW50
ZXJuYWxzLm1tICovOyB9OworCQk0MURFN0M3QzIyMkRBMTQzMDA1MzJCNjUgLyogU3RvcmFnZVF1
b3RhTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDFERTdDN0IyMjJEQTEzRTAwNTMyQjY1IC8qIFN0b3JhZ2VRdW90YU1hbmFnZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MURFRkNCNjFF
NTZDMUJEMDAwRDlFNUYgLyogSlNET01NYXBMaWtlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MURFRkNCNDFFNTZDMUI5MDAwRDlFNUYgLyogSlNET01N
YXBMaWtlLmggKi87IH07CisJCTQxRTEyRTlGMjRGRTc0RTIwMDkzRkZCNCAvKiBXZWJTb2NrZXRJ
ZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MUUxMkU5RDI0RkU3NEUyMDA5M0ZGQjQgLyogV2ViU29ja2V0SWRlbnRpZmllci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRTFCMUQxMEZG
NTk4NjkwMDU3NkIzQiAvKiBBYnN0cmFjdFdvcmtlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFFMUIxQ0IwRkY1OTg2OTAwNTc2QjNCIC8qIEFic3Ry
YWN0V29ya2VyLmggKi87IH07CisJCTQxRTY3QTgzMjVEMTY4NDcwMDdCMEE0QyAvKiBTVFVOTWVz
c2FnZVBhcnNpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxRTY3QTgxMjVEMTY4NDcwMDdCMEE0QyAvKiBTVFVOTWVzc2FnZVBhcnNpbmcuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MUU2RDcxQjI2
RUExQTQ2MDBCNzY1RDYgLyogUlRDRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxQjdDMDRCMjZFNjkxNzEwMEQzNkMwNyAvKiBSVENFcnJvci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRTlE
Q0U3MjMxOTc0QkYwMEYzNTk0OSAvKiBCbG9iTG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUU5RENFNDIzMTk3M0ZFMDBGMzU5NDkgLyogQmxv
YkxvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTQxRTlEQ0U5MjMxOUNBNzYwMEYzNTk0OSAvKiBOZXR3b3JrU2VuZFF1ZXVlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUU5RENFODIzMTlDQTc1
MDBGMzU5NDkgLyogTmV0d29ya1NlbmRRdWV1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTQxRjA2MjE0MEY1RjE5MjYwMEEwN0VBQyAvKiBJbnNw
ZWN0b3JEYXRhYmFzZVJlc291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MUYwNjIxMjBGNUYxOTI2MDBBMDdFQUMgLyogSW5zcGVjdG9yRGF0YWJh
c2VSZXNvdXJjZS5oICovOyB9OworCQk0MUYxRDIxRjBFRjM1QzJBMDBEQTg3NTMgLyogU2NyaXB0
Q2FjaGVkRnJhbWVEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0MUYxRDIxRDBFRjM1QzJBMDBEQTg3NTMgLyogU2NyaXB0Q2FjaGVkRnJhbWVEYXRh
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDFG
QUJEMkQxRjRERkU0QTAwNkE2Qzk3IC8qIERPTUNhY2hlRW5naW5lLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUZBQkQyQjFGNERGRTQyMDA2QTZDOTcg
LyogRE9NQ2FjaGVFbmdpbmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk0MUZDRDZCOTIzQ0UwMTU1MDBDNjI1NjcgLyogU2FtcGxlQnVmZmVyRGlz
cGxheUxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTQ1OThCRTIzQzhBQUI4MDAyQjlDQzggLyogU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDFGQ0Q2
QkIyM0NFMDI3NzAwQzYyNTY3IC8qIExvY2FsU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTQ1OThDMDIzQzhB
RDc4MDAyQjlDQzggLyogTG9jYWxTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0MjdEQTcxRDEzNzM1REZB
MDA3QzU3RkIgLyogSlNTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQyN0RBNzFCMTM3MzVERkEwMDdDNTdGQiAv
KiBKU1NlcnZpY2VXb3JrZXJJbnRlcm5hbHMuY3BwICovOyB9OworCQk0MjdEQTcxRTEzNzM1REZB
MDA3QzU3RkIgLyogSlNTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MjdEQTcxQzEzNzM1REZBMDA3QzU3RkIgLyog
SlNTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmggKi87IH07CisJCTQzMTA3QkUyMThDQzE5REUwMEND
MThFOCAvKiBTZWxlY3RvclBzZXVkb1R5cGVNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzMTA3QkUxMThDQzE5REUwMENDMThFOCAvKiBTZWxlY3Rv
clBzZXVkb1R5cGVNYXAuaCAqLzsgfTsKKwkJNDMyRDNGRTgxOEE4NjU4NDAwRDdEQzAzIC8qIFNl
bGVjdG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQzMkQzRkU3MThBODY1ODQwMEQ3REMwMyAvKiBTZWxlY3RvckNo
ZWNrZXJUZXN0RnVuY3Rpb25zLmggKi87IH07CisJCTQzNThFODdEMTM2MEEyRUUwMEU0NzQ4QyAv
KiBKU1NWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQzNThFODdCMTM2MEEyRUUwMEU0NzQ4QyAvKiBKU1NWR0ZFRHJv
cFNoYWRvd0VsZW1lbnQuaCAqLzsgfTsKKwkJNDM1OEU4ODExMzYwQTMxNzAwRTQ3NDhDIC8qIEZF
RHJvcFNoYWRvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDM1OEU4N0YxMzYwQTMxNzAwRTQ3NDhDIC8qIEZFRHJvcFNoYWRvdy5oICovOyB9OworCQk0
MzU4RTg4NjEzNjBBMzNCMDBFNDc0OEMgLyogU1ZHRkVEcm9wU2hhZG93RWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM1OEU4ODMxMzYwQTMz
QjAwRTQ3NDhDIC8qIFNWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuaCAqLzsgfTsKKwkJNDM2NzA4QzEx
MkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR0Jsb2NrLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDg4MjEyRDlDQTRBMDAwNDQyMzQgLyogUmVu
ZGVyU1ZHQmxvY2suaCAqLzsgfTsKKwkJNDM2NzA4QzMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRl
clNWR0NvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDM2NzA4ODQxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR0NvbnRhaW5lci5oICov
OyB9OworCQk0MzY3MDhDNTEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHR3JhZGllbnRTdG9w
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDg4
NjEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHR3JhZGllbnRTdG9wLmggKi87IH07CisJCTQz
NjcwOEM3MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdIaWRkZW5Db250YWluZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwODg4MTJEOUNB
NEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdIaWRkZW5Db250YWluZXIuaCAqLzsgfTsKKwkJNDM2NzA4
QzkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR0ltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDg4QTEyRDlDQTRBMDAwNDQyMzQgLyog
UmVuZGVyU1ZHSW1hZ2UuaCAqLzsgfTsKKwkJNDM2NzA4Q0IxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJl
bmRlclNWR01vZGVsT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MzY3MDg4QzEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHTW9kZWxPYmpl
Y3QuaCAqLzsgfTsKKwkJNDM2NzA4Q0QxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291
cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3
MDg4RTEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2UuaCAqLzsgfTsKKwkJNDM2
NzA4Q0YxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlQ2xpcHBlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4OTAxMkQ5Q0E0
QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlQ2xpcHBlci5oICovOyB9OworCQk0MzY3MDhE
MTEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwODkyMTJEOUNBNEEw
MDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lci5oICovOyB9OworCQk0MzY3MDhE
MzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwODk0MTJEOUNBNEEwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5oICovOyB9OworCQk0MzY3MDhENTEyRDlD
QTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwODk2MTJEOUNBNEEw
MDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5oICovOyB9OworCQk0
MzY3MDhENzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4OTgxMkQ5
Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlR3JhZGllbnQuaCAqLzsgfTsKKwkJNDM2
NzA4RDkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTGluZWFyR3JhZGllbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwODlB
MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUxpbmVhckdyYWRpZW50LmggKi87
IH07CisJCTQzNjcwOERCMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZU1hcmtl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4
OUMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTWFya2VyLmggKi87IH07CisJ
CTQzNjcwOEREMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4OUUxMkQ5
Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTWFza2VyLmggKi87IH07CisJCTQzNjcw
OERGMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwOEEwMTJEOUNBNEIw
MDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uaCAqLzsgfTsKKwkJNDM2NzA4RTEx
MkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlUmFkaWFsR3JhZGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwOEEyMTJEOUNB
NEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVJhZGlhbEdyYWRpZW50LmggKi87IH07CisJ
CTQzNjcwOEUzMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3Iu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwOEE0
MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3IuaCAqLzsgfTsK
KwkJNDM2NzA4RTUxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jvb3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwOEE2MTJEOUNBNEIwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSb290LmggKi87IH07CisJCTQzNjcwOEU5MTJEOUNBNEIwMDA0NDIz
NCAvKiBSZW5kZXJTVkdUcmFuc2Zvcm1hYmxlQ29udGFpbmVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDhBQTEyRDlDQTRCMDAwNDQyMzQgLyog
UmVuZGVyU1ZHVHJhbnNmb3JtYWJsZUNvbnRhaW5lci5oICovOyB9OworCQk0MzY3MDhFQjEyRDlD
QTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHVmlld3BvcnRDb250YWluZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzNjcwOEFDMTJEOUNBNEIwMDA0NDIz
NCAvKiBSZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5oICovOyB9OworCQk0MzY3MDhFRTEyRDlD
QTRCMDAwNDQyMzQgLyogU1ZHTWFya2VyRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4QUYxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR01hcmtl
ckRhdGEuaCAqLzsgfTsKKwkJNDM2NzA4RjIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1JlbmRlclN1
cHBvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQz
NjcwOEIzMTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZW5kZXJTdXBwb3J0LmggKi87IH07CisJCTQz
NjcwOEY0MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZW5kZXJUcmVlQXNUZXh0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDhCNTEyRDlDQTRCMDAw
NDQyMzQgLyogU1ZHUmVuZGVyVHJlZUFzVGV4dC5oICovOyB9OworCQk0MzY3MDhGNjEyRDlDQTRC
MDAwNDQyMzQgLyogU1ZHUmVzb3VyY2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDhCNzEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVzb3VyY2Vz
LmggKi87IH07CisJCTQzNjcwOEY4MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZXNvdXJjZXNDYWNo
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM2NzA4
QjkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291cmNlc0NhY2hlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDM2NzA4RkExMkQ5Q0E0QjAwMDQ0
MjM0IC8qIFNWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MzY3MDhCQjEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVz
b3VyY2VzQ3ljbGVTb2x2ZXIuaCAqLzsgfTsKKwkJNDM5MDQ2RDgxMkRBMjVFODAwQUY4MEEyIC8q
IFJlbmRlck1hdGhNTEJsb2NrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MzkwNDZDNDEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MQmxvY2su
aCAqLzsgfTsKKwkJNDM5MDQ2REExMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTEZlbmNl
ZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2
QzYxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTEZlbmNlZC5oICovOyB9OworCQk0Mzkw
NDZEQTEyREEyNUU4MDBBRjgxQjMgLyogUmVuZGVyTWF0aE1MRmVuY2VkT3BlcmF0b3IuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0NkM2MTJEQTI1
RTgwMEFGODFCMyAvKiBSZW5kZXJNYXRoTUxGZW5jZWRPcGVyYXRvci5oICovOyB9OworCQk0Mzkw
NDZEQzEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MRnJhY3Rpb24uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0NkM4MTJEQTI1RTgwMEFG
ODBBMiAvKiBSZW5kZXJNYXRoTUxGcmFjdGlvbi5oICovOyB9OworCQk0MzkwNDZERTEyREEyNUU4
MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MTWF0aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2Q0ExMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1h
dGhNTE1hdGguaCAqLzsgfTsKKwkJNDM5MDQ2RTAxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1h
dGhNTE9wZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0MzkwNDZDQzEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MT3BlcmF0b3IuaCAq
LzsgfTsKKwkJNDM5MDQ2RTIxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFJvb3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0NkNFMTJE
QTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxSb290LmggKi87IH07CisJCTQzOTA0NkU0MTJE
QTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxSb3cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0NkQwMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5k
ZXJNYXRoTUxSb3cuaCAqLzsgfTsKKwkJNDM5MDQ2RTgxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRl
ck1hdGhNTFNjcmlwdHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQzOTA0NkQ0MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxTY3JpcHRzLmgg
Ki87IH07CisJCTQzOTA0NkVBMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxVbmRlck92
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTA0
NkQ2MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxVbmRlck92ZXIuaCAqLzsgfTsKKwkJ
NDM5MDQ2RUExMkRBMjVFODEyQUY4MEFDIC8qIE1hdGhPcGVyYXRvci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDM5MDQ2RDYxMkRBMjVFODEyQUY4MEFD
IC8qIE1hdGhPcGVyYXRvci5oICovOyB9OworCQk0MzkwNDZFQzEyREEyNUU4MDBBRjgwQTkgLyog
UmVuZGVyTWF0aE1MVG9rZW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQzOTA0NkQ4MTJEQTI1RTgwMEFGODBBOSAvKiBSZW5kZXJNYXRoTUxUb2tlbi5o
ICovOyB9OworCQk0MzkxNzZFMDEyREEyNUUxN0JBRjgwQTIgLyogTWF0aE1MU3R5bGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzOTE3NkNDMTJEQTI1
RTE3QkFGODBBMiAvKiBNYXRoTUxTdHlsZS5oICovOyB9OworCQk0M0I4NUVENDE4Q0JFQzUyMDBF
MzFBRjQgLyogU2VsZWN0b3JQc2V1ZG9DbGFzc0FuZENvbXBhdGliaWxpdHlFbGVtZW50TWFwLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQzQjg1RUQy
MThDQkVDNTIwMEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0aWJpbGl0eUVs
ZW1lbnRNYXAuY3BwICovOyB9OworCQk0M0MwOTJCQzEyRDlFNEVFMDBBOTg5QzMgLyogUmVuZGVy
U1ZHRm9yZWlnbk9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDNDMDkyQkExMkQ5RTRFRTAwQTk4OUMzIC8qIFJlbmRlclNWR0ZvcmVpZ25PYmpl
Y3QuaCAqLzsgfTsKKwkJNDNFREQ2N0YxQjQ4NURCRjAwNjQwRTc1IC8qIENvbWJpbmVkRmlsdGVy
c0FscGhhYmV0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0M0VERDY3RDFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFiZXQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NDE1Mjky
RTBFMUFFOEEwMDBDNEEyRDAgLyogSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQxNTI5MkMwRTFBRThBMDAwQzRB
MkQwIC8qIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NDI1MDcwOTI1ODI5QTI3MDBDMDkzNjggLyogQXBw
SGlnaGxpZ2h0U3RvcmFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDQyNTA3MDcyNTgyOUExNDAwQzA5MzY4IC8qIEFwcEhpZ2hsaWdodFN0b3JhZ2Uu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NDMw
RDAwQjI1NzVBODNFMDA0NkQ0MDEgLyogSGlnaGxpZ2h0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEU4OEU1MTIzNkE1QzhEMDA5QjQ4NDcgLyogSGln
aGxpZ2h0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNDQzMEQwMEQyNTc1QThBNTAwNDZENDAxIC8qIEhpZ2hsaWdodFJlZ2lzdGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NEU4OEU1MDIzNkE1NkFD
MDA5QjQ4NDcgLyogSGlnaGxpZ2h0UmVnaXN0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NDUyMTBERjI1RDYxRjAwMDAzQTJFRDggLyogQXBw
SGlnaGxpZ2h0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0NDUyMTBERDI1RDYxRUZGMDAzQTJFRDggLyogQXBwSGlnaGxpZ2h0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDQ1Nzc1RTUyMDQ3MkY3MzAw
OERDRTVEIC8qIExvY2FsRGVmYXVsdFN5c3RlbUFwcGVhcmFuY2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0NTc3NUU0MjA0NzJGNzMwMDhEQ0U1RCAv
KiBMb2NhbERlZmF1bHRTeXN0ZW1BcHBlYXJhbmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDQ2NUQ3QkQyNTM2RDA1RTAwMTY2NjZEIC8qIFNl
bGVjdGlvblJhbmdlRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDRCMzhCRjQyNTM2OTAxQTAwQTQ0NThEIC8qIFNlbGVjdGlvblJhbmdlRGF0YS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ0NkRD
NjQ4MjRBMjlEQUIwMDYxRjM5MCAvKiBQbGF5YmFja1RhcmdldENsaWVudENvbnRleHRJZGVudGlm
aWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NDZE
QzY0NjI0QTI5RDlCMDA2MUYzOTAgLyogUGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRp
Zmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTQ0NzE3MTBFMjA1QUY5NDUwMDBBMTE2RSAvKiBNZWRpYVF1ZXJ5UGFyc2VyQ29udGV4dC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ3MTcxMEMyMDVB
Rjk0NTAwMEExMTZFIC8qIE1lZGlhUXVlcnlQYXJzZXJDb250ZXh0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDQ3OTU4MDQxNjQzQjQ5QTAwMUUw
QTdGIC8qIFBhcnNlZENvbnRlbnRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NDc5NTgwMzE2NDNCNDdCMDAxRTBBN0YgLyogUGFyc2VkQ29udGVu
dFR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk0NDhBMjlCRjBBNDZEOUNCMDAzMDc1OUYgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb24uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0OEEyOUJEMEE0
NkQ5Q0IwMDMwNzU5RiAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbi5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ0OEIxQjdBMEYzQTJGOUIwMDQ3
QTlFMiAvKiBUZXh0U2l6ZUFkanVzdG1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ0OEIxQjc4MEYzQTJGOUIwMDQ3QTlFMiAvKiBUZXh0U2l6ZUFk
anVzdG1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk0NDk2RTM5RTEzOTgxMzZDMDAzRUUzMkEgLyogSlNTVkdBbmltYXRlTW90aW9uRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ5NkUz
OUMxMzk4MTM2QzAwM0VFMzJBIC8qIEpTU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuaCAqLzsgfTsK
KwkJNDQ5NkUzQTAxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NDk2RTM5RjEzOTgxM0E1
MDAzRUUzMkEgLyogSlNTVkdNUGF0aEVsZW1lbnQuaCAqLzsgfTsKKwkJNDQ5RDg2NEYyNjQwQzlD
NTAwMDEyMkRFIC8qIEhpZ2hsaWdodFZpc2liaWxpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0OUQ4NjREMjY0MEM5QjkwMDAxMjJERSAvKiBIaWdo
bGlnaHRWaXNpYmlsaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNDRBMjBEQjkwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25z
ZUlPUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRB
MjBEQjgwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ0QTI4QUFDMTJERkI4
QUMwMEFFOTIzQiAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDRBMjhBQUIxMkRGQjhBQzAwQUU5MjNCIC8qIE1h
dGhNTEVsZW1lbnRGYWN0b3J5LmggKi87IH07CisJCTQ0QTI4QUFGMTJERkI4QkYwMEFFOTIzQiAv
KiBNYXRoTUxOYW1lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDRBMjhBQUUxMkRGQjhCRjAwQUU5MjNCIC8qIE1hdGhNTE5hbWVzLmggKi87IH07CisJ
CTQ0QUUwNDVDMjU3OUNGRkIwMEM0MkU2NSAvKiBBcHBIaWdobGlnaHRSYW5nZURhdGEuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0QUUwNDVBMjU3OUNG
RkIwMEM0MkU2NSAvKiBBcHBIaWdobGlnaHRSYW5nZURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NEM5OTE4NjBGM0QxRUJFMDA1ODY2NzAg
LyogU2Nyb2xsYmFyVGhlbWVJT1MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3MCAvKiBTY3JvbGxiYXJUaGVtZUlP
Uy5oICovOyB9OworCQk0NEM5OTE5RjBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0Qzk5MTlEMEYzRDIx
MEUwMDU4NjY3MCAvKiBUaGVtZUlPUy5oICovOyB9OworCQk0NENFMkJCRjI2NDM3OUFGMDA3QUUx
MTAgLyogV2ViVGV4dEluZGljYXRvckxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0NENFMkJCRTI2NDM3OTlFMDA3QUUxMTAgLyogV2ViVGV4dElu
ZGljYXRvckxheWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNDRFMzQ5RjkyNDZGNEUxOTAwNjg0NzlDIC8qIExpYldlYlJUQ0VudW1UcmFpdHMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0RTM0OUY3
MjQ2RjREQzcwMDY4NDc5QyAvKiBMaWJXZWJSVENFbnVtVHJhaXRzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDUwQ0VCRjExNTA3M0JCRTAwMkJC
MTQ5IC8qIExhYmVsYWJsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ1MENFQkVGMTUwNzNCQkUwMDJCQjE0OSAvKiBMYWJlbGFibGVFbGVt
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
NDUxMjUwMjMxNURDRTM3RDAwMkY4NEUyIC8qIFNwaW5CdXR0b25FbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NTEyNTAyMTE1RENFMzdEMDAy
Rjg0RTIgLyogU3BpbkJ1dHRvbkVsZW1lbnQuaCAqLzsgfTsKKwkJNDUzRUI2MzcxNTlDNTcwNDAw
MDAxQkI3IC8qIERhdGVUaW1lRm9ybWF0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NTNFQjYzNTE1OUM1NzA0MDAwMDFCQjcgLyogRGF0ZVRpbWVGb3Jt
YXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0
NTgzMEQ0RTE2NzlCNEY4MDBBQ0Y4QzMgLyogQXV0b3Njcm9sbENvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ1ODMwRDRDMTY3OUI0Rjgw
MEFDRjhDMyAvKiBBdXRvc2Nyb2xsQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ1OEZFNDBBMTU4OURGMEIwMDU2MDlFNiAvKiBS
ZW5kZXJTZWFyY2hGaWVsZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDU4RkU0MDgxNTg5REYwQjAwNTYwOUU2IC8qIFJlbmRlclNlYXJjaEZpZWxkLmgg
Ki87IH07CisJCTQ1RkVBNUQwMTU2RERFOEMwMDY1NDEwMSAvKiBEZWNpbWFsLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NUZFQTVDRTE1NkRERThDMDA2
NTQxMDEgLyogRGVjaW1hbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTQ2MEJCNjE2MUQwQTFCRjAwMDIyMTgxMiAvKiBCYXNlNjRVdGlsaXRpZXMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2MEJCNjE0
MUQwQTFCRUMwMDIyMTgxMiAvKiBCYXNlNjRVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NjBDNzQ1OTI2REQ2OUJCMDA0MjdEM0Ug
LyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDYwQzc0NTgyNkRENjk5RDAwNDI3RDNFIC8qIFdpbmRvd09y
V29ya2VyR2xvYmFsU2NvcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk0NjBDQkYzNjFENEJDRDBFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9w
ZXJ0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NjBDQkYzNDFENEJDQ0ZFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmggKi87IH07
CisJCTQ2MEUzMDc3MjIyRjRGMDMwMDlBMDYwNiAvKiBEZXZpY2VPcmllbnRhdGlvbk9yTW90aW9u
UGVybWlzc2lvblN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NjVFREQ5RjIyMkY0RUMzMDBCNDZFMTYgLyogRGV2aWNlT3JpZW50YXRpb25Pck1v
dGlvblBlcm1pc3Npb25TdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTQ2MjE4QUNCMUY3MkQ2NEUwMDU3NEZCRSAvKiBET01IaWdoUmVzVGlt
ZVN0YW1wLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NkUwMTZBRDFGNzJENjFFMDAyODJCMkMgLyogRE9NSGlnaFJlc1RpbWVTdGFtcC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2MjczQ0FGMjYwRTU5
RUYwMDZGQUE5MSAvKiBTV1NjcmlwdFN0b3JhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2MjczQ0FDMjYwRTU5REYwMDZGQUE5MSAvKiBTV1Njcmlw
dFN0b3JhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk0NjJFNEM1MDI2MTZBODExMDAzQTJDNjcgLyogU2NyaXB0QnVmZmVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjJFNEM0RDI2MTZBODAxMDAz
QTJDNjcgLyogU2NyaXB0QnVmZmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNDYzNTIxQUQyMDgxMDkyQTAwQzI4OTIyIC8qIFdpbmRvd1Byb3h5
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjM1MjFB
QTIwODEwOTBCMDBDMjg5MjIgLyogV2luZG93UHJveHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NjNFQjYyMzFCODc4OUUwMDA5NkVENTEgLyog
VGFnQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDYzRUI2MjExQjg3ODlDQjAwOTZFRDUxIC8qIFRhZ0NvbGxlY3Rpb24uaCAqLzsgfTsK
KwkJNDY1MzA3RDAxREI2RUU0ODAwRTQxMzdDIC8qIEpTVUlFdmVudEluaXQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRTA0NUVGMURBQTEwNEYwMEIw
RDhCOSAvKiBKU1VJRXZlbnRJbml0LmggKi87IH07CisJCTQ2NjU4REM5MUZBMjRCODcwMEY3REQ1
NCAvKiBTV0NvbnRleHRNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0NjcyNDEzQjFGQTI0QjE0MDA4OEJENkQgLyogU1dDb250ZXh0TWFuYWdl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2
NkMyREFEMjZDNzNBRkMwMDY1MTkzMSAvKiBQb2xpY3lDb250YWluZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2NkMyREFCMjZDNzNBRkIwMDY1MTkz
MSAvKiBQb2xpY3lDb250YWluZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk0NjZFRDhEMzFFREUwMTQ0MDA1RTQzRjYgLyogSlNET01SZWN0TGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDY2RUQ4
RDIxRURFMDEzNTAwNUU0M0Y2IC8qIEpTRE9NUmVjdExpc3QuaCAqLzsgfTsKKwkJNDY3MUUwNjYx
RDY3QTU5NjAwQzZCNDk3IC8qIENhbnZhc1BhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2NzFFMDY0MUQ2N0E1N0IwMEM2QjQ5NyAvKiBDYW52YXNQ
YXRoLmggKi87IH07CisJCTQ2NzJBQTk4MjZCMDk0MzMwMEU2RUMzOCAvKiBDcm9zc09yaWdpbkVt
YmVkZGVyUG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0NjcyQUE5NjI2QjA5NDIxMDBFNkVDMzggLyogQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGlj
eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2
NzJBQTk5MjZCMDk0M0YwMEU2RUMzOCAvKiBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDY3MkFBOTcyNkIwOTQy
MTAwRTZFQzM4IC8qIENyb3NzT3JpZ2luT3BlbmVyUG9saWN5LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDY3MzAyMDIxQzRFRkU3ODAwQkNCMzU3
IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDY3MzAyMDExQzRFRkU2NjAwQkNC
MzU3IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291bnRJbmNyZW1lbnRlci5oICovOyB9Owor
CQk0NjgyRDIwMDFGNzk3ODMwMDBDODYzREIgLyogU3RvcmVkQ3JlZGVudGlhbHNQb2xpY3kuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2ODJEMUZGMUY3
OTc4MjMwMEM4NjNEQiAvKiBTdG9yZWRDcmVkZW50aWFsc1BvbGljeS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2ODM0NEUwMUVEREZBQUEwMEI3
Nzk1QiAvKiBET01SZWN0TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDY4MzQ0REUxRURERkE1RjAwQjc3OTVCIC8qIERPTVJlY3RMaXN0LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDY4OEVFM0My
NkREMjYxMDAwMkFGNUM0IC8qIENyb3NzT3JpZ2luTW9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDY4OEVFM0EyNkREMjYwQzAwMkFGNUM0IC8qIENy
b3NzT3JpZ2luTW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTQ2OUNDQ0ZFMjY5RDAyMUMwMDZFMDMxNCAvKiBCcm9hZGNhc3RDaGFubmVsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjlDQ0NGQzI2
OUQwMjAyMDA2RTAzMTQgLyogQnJvYWRjYXN0Q2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2QUFBQTNEMjVEMzYzMjAwMEJBRjQyRiAv
KiBBdWRpb0ZpbGVSZWFkZXJDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDZBQUFBM0EyNUQzNjMxNDAwQkFGNDJGIC8qIEF1ZGlvRmlsZVJlYWRl
ckNvY29hLmggKi87IH07CisJCTQ2QjYzRjZDMUM2RThEMTkwMDJFOTE0QiAvKiBKU0V2ZW50VGFy
Z2V0Q3VzdG9tLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0NkI2M0Y2QjFDNkU4Q0RGMDAyRTkxNEIgLyogSlNFdmVudFRhcmdldEN1c3RvbS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2QjY1MEREMjI5
NjI2MjcwMEZEOEFBNCAvKiBQYWdlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZCNjUwREIyMjk2MjYyNzAwRkQ4QUE0IC8qIFBhZ2VJ
ZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNDZCODU5M0MyNjE2NzIyNzAwMTlFREM2IC8qIFNjcmlwdEJ1ZmZlclNvdXJjZVByb3Zp
ZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkI4
NTkzQTI2MTY3MjBDMDAxOUVEQzYgLyogU2NyaXB0QnVmZmVyU291cmNlUHJvdmlkZXIuaCAqLzsg
fTsKKwkJNDZCOTUxOTUyMDdENjMzNDAwQTdEMkREIC8qIEFic3RyYWN0RE9NV2luZG93LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkI5NTE4QTIwN0Q2
MzI4MDBBN0QyREQgLyogQWJzdHJhY3RET01XaW5kb3cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NkI5NTE5NjIwN0Q2MzNBMDBBN0QyREQgLyog
QWJzdHJhY3RGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDZCOTUxOEYyMDdENjMyQjAwQTdEMkREIC8qIEFic3RyYWN0RnJhbWUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NkI5NTE5NzIwN0Q2
MzQwMDBBN0QyREQgLyogR2xvYmFsV2luZG93SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZCOTUxOTAyMDdENjMyQzAwQTdEMkREIC8q
IEdsb2JhbFdpbmRvd0lkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk0NkI5NTE5ODIwN0Q2MzQ3MDBBN0QyREQgLyogR2xvYmFsRnJh
bWVJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0NkI5NTE5MTIwN0Q2MzJEMDBBN0QyREQgLyogR2xvYmFsRnJhbWVJZGVudGlmaWVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDZCOTUx
OTkyMDdENjM0RDAwQTdEMkREIC8qIFJlbW90ZURPTVdpbmRvdy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZCOTUxOEUyMDdENjMyQTAwQTdEMkREIC8q
IFJlbW90ZURPTVdpbmRvdy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTQ2Qjk1MTlBMjA3RDYzNTQwMEE3RDJERCAvKiBSZW1vdGVGcmFtZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZCOTUxOTIyMDdE
NjMyRTAwQTdEMkREIC8qIFJlbW90ZUZyYW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDZCOTVCRjUyMjMxQ0ZENjAwNTNBNTA0IC8qIERldmlj
ZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZCOTVCRjQyMjMxQ0ZCODAwNTNBNTA0IC8q
IERldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5oICovOyB9OworCQk0
NkJDQkJDMjIwODUwMDhGMDA3MTA2MzggLyogSlNSZW1vdGVET01XaW5kb3dCYXNlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkJDQkJDMDIwODUwMDdG
MDA3MTA2MzggLyogSlNSZW1vdGVET01XaW5kb3dCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDZCRDA1QzUyNUJCNkU1OTAwMjI1RjMwIC8q
IEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NkJEMDVDMjI1QkI2RTRFMDAyMjVGMzAgLyogQWRkRXZlbnRMaXN0
ZW5lck9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk0NkJEMDVDNjI1QkI2RTZDMDAyMjVGMzAgLyogRXZlbnRMaXN0ZW5lck9wdGlvbnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2QkQwNUMz
MjVCQjZFNEUwMDIyNUYzMCAvKiBFdmVudExpc3RlbmVyT3B0aW9ucy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2QzA5NjIxMjNENzhERDYwMDY1
N0MwOSAvKiBIVFRQQ29va2llQWNjZXB0UG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkMwOTYyMDIzRDc4REQ2MDA2NTdDMDkgLyogSFRUUENv
b2tpZUFjY2VwdFBvbGljeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTQ2QzM3NjYyMjA4NTE3N0QwMEM3MzgyOSAvKiBKU1JlbW90ZURPTVdpbmRv
dy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZDMzc2
NjEyMDg1MTc2RDAwQzczODI5IC8qIEpTUmVtb3RlRE9NV2luZG93LmggKi87IH07CisJCTQ2QzY5
NkNCMUU3MjA1RjcwMDU5NzkzNyAvKiBDUFVNb25pdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM2OTZDOTFFNzIwNUU0MDA1OTc5MzcgLyogQ1BV
TW9uaXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTQ2QzY5NkNDMUU3MjA1RkMwMDU5NzkzNyAvKiBDUFVNb25pdG9yLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2QzY5NkNBMUU3MjA1RTQwMDU5
NzkzNyAvKiBDUFVNb25pdG9yLmNwcCAqLzsgfTsKKwkJNDZDODNFRkUxQTlCQkUyOTAwQTc5QTQx
IC8qIEdlb05vdGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NkM4M0VGQzFBOUJCRTI5MDBBNzlBNDEgLyogR2VvTm90aWZpZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NkNBOUM0NDFGOTdC
QkU5MDA0Q0ZDM0EgLyogVmlzaWJpbGl0eVN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkNBOUM0MTFGOTdCQkU3MDA0Q0ZDM0EgLyogVmlzaWJp
bGl0eVN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNDZEMDAwNDAyNkEwRkVCMzAwRDFCRjFFIC8qIFN1Ym1pdEV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkQwMDAzRTI2QTBGRTZGMDBE
MUJGMUUgLyogU3VibWl0RXZlbnQuaCAqLzsgfTsKKwkJNDZEQkI2NTAxQUI4Qzk2RjAwRDlBODEz
IC8qIFBvd2VyT2JzZXJ2ZXJNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQ2REJCNjRFMUFCOEM5NkYwMEQ5QTgxMyAvKiBQb3dlck9ic2VydmVyTWFj
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDZE
RDZFMUYyNkU3REJFNzAwOEMxRjRDIC8qIFJlcG9ydGluZ0VuZHBvaW50c0NhY2hlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkRENkUxQzI2RTdEQkU2
MDA4QzFGNEMgLyogUmVwb3J0aW5nRW5kcG9pbnRzQ2FjaGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NkREOTNENzI2OURFNzU2MDAxQUZEODgg
LyogQnJvYWRjYXN0Q2hhbm5lbElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REQ5M0Q1MjY5REU3NEIwMDFBRkQ4OCAvKiBCcm9hZGNh
c3RDaGFubmVsSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTQ2REU5QkI1MjY5REY5M0UwMDI0QzVBNiAvKiBCcm9hZGNhc3RDaGFu
bmVsUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ2REU5QkI0MjY5REY5MzIwMDI0QzVBNiAvKiBCcm9hZGNhc3RDaGFubmVsUmVnaXN0cnku
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0NkRG
RjQ5ODFEQzI2MDMxMDBCODBCNDggLyogU2hhZG93Um9vdE1vZGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2REZGNDk2MURDMjYwMTMwMEI4MEI0OCAv
KiBTaGFkb3dSb290TW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTQ2REZGNDlDMURDMjYyMEIwMEI4MEI0OCAvKiBKU1NoYWRvd1Jvb3RNb2Rl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkRGRjQ5
QTFEQzI2MUY5MDBCODBCNDggLyogSlNTaGFkb3dSb290TW9kZS5oICovOyB9OworCQk0NkUwQzBE
RTIzQzAwNkU5MDA1RTQ3QUUgLyogRHJhZ0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkUwQzBEQTIzQzAwNkIzMDA1RTQ3QUUgLyogRHJhZ0V2
ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
NDZFMTM5RjgyM0Q4QjhFQjAwNzU4NDhFIC8qIEhUVFBDb29raWVBY2NlcHRQb2xpY3lDb2NvYS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZFMTM5RjYy
M0Q4QjhFNzAwNzU4NDhFIC8qIEhUVFBDb29raWVBY2NlcHRQb2xpY3lDb2NvYS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2RTc5MTQ5MUY5N0Uw
MUEwMDE5OTczOSAvKiBKU1Zpc2liaWxpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZFNzkxNDYxRjk3RTAxNzAwMTk5NzM5IC8qIEpTVmlz
aWJpbGl0eVN0YXRlLmggKi87IH07CisJCTQ2RUIzN0NBMUY5N0NDRDIwMEI2NTUyMyAvKiBKU1Nl
cnZpY2VXb3JrZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQ2RUIzN0MzMUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJDbGll
bnQuaCAqLzsgfTsKKwkJNDZFQjM3Q0MxRjk3Q0NEMjAwQjY1NTIzIC8qIEpTU2VydmljZVdvcmtl
ckNsaWVudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ2RUIzN0M1MUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJDbGllbnRzLmggKi87
IH07CisJCTQ2RUIzN0NFMUY5N0NDRDIwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJXaW5kb3dD
bGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2
RUIzN0M3MUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJXaW5kb3dDbGllbnQuaCAq
LzsgfTsKKwkJNDZFQkVBMDIxQjdENEQ2NTAwQkU0OTQxIC8qIENvbGxlY3Rpb25UcmF2ZXJzYWwu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2RUJFQTAx
MUI3RDRENUQwMEJFNDk0MSAvKiBDb2xsZWN0aW9uVHJhdmVyc2FsLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDZFQ0I2MzgxRkQwQTNDODAwODhF
NUFEIC8qIFNXQ2xpZW50Q29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDZFQ0I2MzcxRkQwQTNCQjAwODhFNUFEIC8qIFNXQ2xpZW50Q29u
bmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTQ2RUYxNDJBMUY5N0I3RDgwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyV2luZG93Q2xpZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkVGMTQy
MDFGOTdCN0JBMDBDMkE1MjQgLyogU2VydmljZVdvcmtlcldpbmRvd0NsaWVudC5oICovOyB9Owor
CQk0NkVGMTQyQzFGOTdCN0Q4MDBDMkE1MjQgLyogU2VydmljZVdvcmtlckNsaWVudHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2RUYxNDIyMUY5N0I3
QkEwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50cy5oICovOyB9OworCQk0NkVGMTQyRDFG
OTdCN0Q4MDBDMkE1MjQgLyogU2VydmljZVdvcmtlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZFRjE0MjQxRjk3QjdCQTAwQzJBNTI0IC8q
IFNlcnZpY2VXb3JrZXJDbGllbnQuaCAqLzsgfTsKKwkJNDZFRkFGMTIxRTVGQjlGMTAwRTdGMzRC
IC8qIExvd1Bvd2VyTW9kZU5vdGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NkVGQUYxMDFFNUZCOUUxMDBFN0YzNEIgLyogTG93UG93ZXJNb2Rl
Tm90aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk0NkYwMkExQTIzNzM3RjgzMDAxMDZBNjQgLyogRXZlbnRMb29wLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjBBQkNBMTIzNjc5QUIzMDBCNDUw
ODUgLyogRXZlbnRMb29wLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNDZGQ0I2MTgxQTcwODIwRTAwQzVBMjFFIC8qIERpYWdub3N0aWNMb2dnaW5n
S2V5cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Qz
N0IzNzUxNUMxQTdFMTAwNkRDODk4IC8qIERpYWdub3N0aWNMb2dnaW5nS2V5cy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ2RkVGQkM4MjZERDY3
QTIwMEIwQzQ4OCAvKiBTdHJ1Y3R1cmVkU2VyaWFsaXplT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZGRUZCQzYyNkRENjc4MjAwQjBDNDg4
IC8qIFN0cnVjdHVyZWRTZXJpYWxpemVPcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDc1Qzg5QTQyNjUwQUMzQzAwRjNCNDU2IC8qIEZv
cm1hdHRpbmdHZW9tZXRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDc1Qzg5QTMyNjUwQUMzQjAwRjNCNDU2IC8qIEZvcm1hdHRpbmdHZW9tZXRyeS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ3ODYz
NTY1MjY1MDdBMzgwMEM1RTJFMCAvKiBCbG9ja0Zvcm1hdHRpbmdHZW9tZXRyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDc4NjM1NjQyNjUwN0EzNzAw
QzVFMkUwIC8qIEJsb2NrRm9ybWF0dGluZ0dlb21ldHJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDdDNEQ1N0QyNjUwOEJDQjAwQzdBQjFGIC8q
IElubGluZUZvcm1hdHRpbmdHZW9tZXRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNDdDNEQ1N0MyNjUwOEJDQTAwQzdBQjFGIC8qIElubGluZUZvcm1h
dHRpbmdHZW9tZXRyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTQ3Rjk0N0RCMjY1MDJGMkYwMDg3OTY4QyAvKiBCbG9ja0Zvcm1hdHRpbmdRdWly
a3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ3Rjk0
N0RBMjY1MDJGMkYwMDg3OTY4QyAvKiBCbG9ja0Zvcm1hdHRpbmdRdWlya3MuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0N0ZBOTcwMDI2NTA5ODJC
MDA4NDE0MTYgLyogVGFibGVGb3JtYXR0aW5nR2VvbWV0cnkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ3RkE5NkZGMjY1MDk4MkEwMDg0MTQxNiAvKiBU
YWJsZUZvcm1hdHRpbmdHZW9tZXRyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTQ5M0U1RTA5MTJENjQyMDUwMDAyMDA4MSAvKiBQbGF0Zm9ybUNB
TGF5ZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ5M0U1RTA4MTJENjQyMDUwMDAyMDA4MSAvKiBQbGF0Zm9ybUNBTGF5ZXJDbGllbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0OTQ1QkZE
NDEzQ0Y4MDkwMDBDQzNCMzggLyogVHJhbnNmb3JtU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NDVCRkQyMTNDRjgwOTAwMENDM0IzOCAvKiBU
cmFuc2Zvcm1TdGF0ZS5oICovOyB9OworCQk0OTQ4NEZDMjEwMkNGMjNDMDAxODdERDMgLyogQ2Fu
dmFzR3JhZGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ5NDg0RkI0MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5oICovOyB9Owor
CQk0OTQ4NEZDNTEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFzUGF0dGVybi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk0ODRGQjcxMDJDRjIzQzAwMTg3
REQzIC8qIENhbnZhc1BhdHRlcm4uaCAqLzsgfTsKKwkJNDk0ODRGQ0IxMDJDRjIzQzAwMTg3REQz
IC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDk0ODRGQkQxMDJDRjIzQzAwMTg3REQzIC8qIENhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyRC5oICovOyB9OworCQk0OTQ4NEZDRTEwMkNGMjNDMDAxODdERDMgLyog
Q2FudmFzU3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ5NDg0RkMwMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNTdHlsZS5oICovOyB9OworCQk0
OTRCRDc5NTBGNTVDOEVFMDA3NDc4MjggLyogV2ViS2l0UG9pbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NEJENzkzMEY1NUM4RUUwMDc0NzgyOCAv
KiBXZWJLaXRQb2ludC5oICovOyB9OworCQk0OTRCRDc5RTBGNTVDOTRDMDA3NDc4MjggLyogSlNX
ZWJLaXRQb2ludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDk0QkQ3OUMwRjU1Qzk0QzAwNzQ3ODI4IC8qIEpTV2ViS2l0UG9pbnQuaCAqLzsgfTsKKwkJ
NDk2OUIwRjMxM0QwQjMzRjAwREYzNTIxIC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk2OUIwRjExM0Qw
QjMzRjAwREYzNTIxIC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5oICovOyB9OworCQk0OTk4
QUVDNjEzRjlEMEVBMDA5MEIxQUEgLyogUmVxdWVzdEFuaW1hdGlvbkZyYW1lQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5OThBRUM0MTNG
OUQwRUEwMDkwQjFBQSAvKiBSZXF1ZXN0QW5pbWF0aW9uRnJhbWVDYWxsYmFjay5oICovOyB9Owor
CQk0OTk4QUVDRTEzRjlENkM5MDA5MEIxQUEgLyogSlNSZXF1ZXN0QW5pbWF0aW9uRnJhbWVDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk5
OEFFQ0MxM0Y5RDZDOTAwOTBCMUFBIC8qIEpTUmVxdWVzdEFuaW1hdGlvbkZyYW1lQ2FsbGJhY2su
aCAqLzsgfTsKKwkJNDk5OEFFRDIxM0ZCMjI0RDAwOTBCMUFBIC8qIFNjcmlwdGVkQW5pbWF0aW9u
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDk5OEFFRDAxM0ZCMjI0RDAwOTBCMUFBIC8qIFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxl
ci5oICovOyB9OworCQk0OTlCM0VDNTEyOENDQzQ3MDBFNzI2QzIgLyogUGxhdGZvcm1DQUxheWVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OTlCM0VD
MzEyOENDQzQ3MDBFNzI2QzIgLyogUGxhdGZvcm1DQUxheWVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDk5QjNFRDcxMjhDRDMxNDAwRTcyNkMy
IC8qIEdyYXBoaWNzTGF5ZXJDQS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDk5QjNFRDUxMjhDRDMxNDAwRTcyNkMyIC8qIEdyYXBoaWNzTGF5ZXJDQS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ5OUIz
RUREMTI4REI1MDIwMEU3MjZDMiAvKiBQbGF0Zm9ybUNBQW5pbWF0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OTlCM0VEQzEyOERCNTAxMDBFNzI2
QzIgLyogUGxhdGZvcm1DQUFuaW1hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTQ5QUUyRDhGMTM0RUU1MEMwMDcyOTIwQSAvKiBDU1NDYWxj
VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5
QUUyRDhEMTM0RUU1MEMwMDcyOTIwQSAvKiBDU1NDYWxjVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0OUFFMkQ5NzEzNEVFNUY5MDA3Mjky
MEEgLyogQ2FsY3VsYXRpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDlBRTJEOTUxMzRFRTVGOTAwNzI5MjBBIC8qIENhbGN1bGF0aW9uVmFs
dWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0
OUFGMkQ2OTE0NDM1RDA1MDAxNkE3ODQgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUFGMkQ2ODE0NDM1RDA1
MDAxNkE3ODQgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlDN0I5OTQxMDQyRDJEMzAwMDlENDQ3IC8q
IEpTV2ViR0xCdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQ5QzdCOTgxMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMQnVmZmVyLmggKi87IH07
CisJCTQ5QzdCOTk4MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMRnJhbWVidWZmZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QzdCOTg1MTA0MkQy
RDMwMDA5RDQ0NyAvKiBKU1dlYkdMRnJhbWVidWZmZXIuaCAqLzsgfTsKKwkJNDlDN0I5OUMxMDQy
RDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUM3Qjk4OTEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJH
TFByb2dyYW0uaCAqLzsgfTsKKwkJNDlDN0I5OUUxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xS
ZW5kZXJidWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ5QzdCOThCMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMUmVuZGVyYnVmZmVyLmggKi87
IH07CisJCTQ5QzdCOUEzMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMU2hhZGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUM3Qjk5MDEwNDJEMkQz
MDAwOUQ0NDcgLyogSlNXZWJHTFNoYWRlci5oICovOyB9OworCQk0OUM3QjlBNTEwNDJEMkQzMDAw
OUQ0NDcgLyogSlNXZWJHTFRleHR1cmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ5QzdCOTkyMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMVGV4dHVy
ZS5oICovOyB9OworCQk0OUM3QjlDOTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QzdCOUE5MTA0
MkQzMkUwMDA5RDQ0NyAvKiBXZWJHTEJ1ZmZlci5oICovOyB9OworCQk0OUM3QjlDRjEwNDJEMzJG
MDAwOUQ0NDcgLyogV2ViR0xGcmFtZWJ1ZmZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDlDN0I5QUYxMDQyRDMyRTAwMDlENDQ3IC8qIFdlYkdMRnJh
bWVidWZmZXIuaCAqLzsgfTsKKwkJNDlDN0I5RDUxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMT2Jq
ZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUM3
QjlCNTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xPYmplY3QuaCAqLzsgfTsKKwkJNDlDN0I5RDcx
MDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlDN0I5QjcxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdM
UHJvZ3JhbS5oICovOyB9OworCQk0OUM3QjlEQTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xSZW5k
ZXJidWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ5QzdCOUJBMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFJlbmRlcmJ1ZmZlci5oICovOyB9Owor
CQk0OUM3QjlERDEwNDJEMzJGMDAwOUQ0NDcgLyogQ2FudmFzUmVuZGVyaW5nQ29udGV4dC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlDN0I5QkQxMDQy
RDMyRjAwMDlENDQ3IC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQuaCAqLzsgfTsKKwkJNDlDN0I5
RTAxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlDN0I5QzAxMDQyRDMyRjAwMDlE
NDQ3IC8qIFdlYkdMUmVuZGVyaW5nQ29udGV4dC5oICovOyB9OworCQk0OUM3QjlFMzEwNDJEMzJG
MDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ5QzdCOUMzMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFNoYWRlci5o
ICovOyB9OworCQk0OUM3QjlFNjEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xUZXh0dXJlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUM3QjlDNjEwNDJE
MzJGMDAwOUQ0NDcgLyogV2ViR0xUZXh0dXJlLmggKi87IH07CisJCTQ5QzdCOUZDMTA0MkQzNjUw
MDA5RDQ0NyAvKiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlDN0I5RkIxMDQyRDM2NTAwMDlENDQ3IC8qIEdy
YXBoaWNzQ29udGV4dEdMT3BlbkdMLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNDlENURDMkMwRjQyM0E3MzAwOEYyMEZEIC8qIE1hdHJpeDNEVHJh
bnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0OUQ1REMyODBGNDIzQTczMDA4RjIwRkQgLyogTWF0cml4M0RUcmFuc2Zvcm1PcGVy
YXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk0OUQ1REMyRTBGNDIzQTczMDA4RjIwRkQgLyogUGVyc3BlY3RpdmVUcmFuc2Zvcm1PcGVyYXRp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RDVE
QzJBMEY0MjNBNzMwMDhGMjBGRCAvKiBQZXJzcGVjdGl2ZVRyYW5zZm9ybU9wZXJhdGlvbi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ5RTkxMUM0
MEVGODZENDcwMDlEMENBRiAvKiBUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFOTExQjQwRUY4NkQ0NzAwOUQwQ0FG
IC8qIFRyYW5zZm9ybWF0aW9uTWF0cml4LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFOTExQzUwRUY4NkQ0NzAwOUQwQ0FGIC8qIElkZW50aXR5
VHJhbnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0OUU5MTFCNTBFRjg2RDQ3MDA5RDBDQUYgLyogSWRlbnRpdHlUcmFuc2Zvcm1P
cGVyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk0OUU5MTFDNzBFRjg2RDQ3MDA5RDBDQUYgLyogTWF0cml4VHJhbnNmb3JtT3BlcmF0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUU5MTFC
NzBFRjg2RDQ3MDA5RDBDQUYgLyogTWF0cml4VHJhbnNmb3JtT3BlcmF0aW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFOTExQzkwRUY4NkQ0
NzAwOUQwQ0FGIC8qIFJvdGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlFOTExQjkwRUY4NkQ0NzAwOUQwQ0FGIC8q
IFJvdGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTQ5RTkxMUNCMEVGODZENDcwMDlEMENBRiAvKiBTY2FsZVRy
YW5zZm9ybU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDlFOTExQkIwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNjYWxlVHJhbnNmb3JtT3BlcmF0
aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
NDlFOTExQ0QwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNrZXdUcmFuc2Zvcm1PcGVyYXRpb24uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RTkxMUJEMEVGODZE
NDcwMDlEMENBRiAvKiBTa2V3VHJhbnNmb3JtT3BlcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFOTExQ0UwRUY4NkQ0NzAwOUQwQ0FG
IC8qIFRyYW5zZm9ybU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDlFOTExQkUwRUY4NkQ0NzAwOUQwQ0FGIC8qIFRyYW5zZm9ybU9wZXJh
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTQ5RTkxMUQwMEVGODZENDcwMDlEMENBRiAvKiBUcmFuc2Zvcm1PcGVyYXRpb25zLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUU5MTFDMDBFRjg2RDQ3
MDA5RDBDQUYgLyogVHJhbnNmb3JtT3BlcmF0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTQ5RTkxMUQyMEVGODZENDcwMDlEMENBRiAvKiBU
cmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RTkxMUMyMEVGODZENDcwMDlEMENBRiAvKiBUcmFuc2xhdGVU
cmFuc2Zvcm1PcGVyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk0OUU5MTJBQjBFRkFDOTA2MDA5RDBDQUYgLyogQW5pbWF0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUU5MTJBNjBFRkFD
OTA2MDA5RDBDQUYgLyogQW5pbWF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFOTEyQUQwRUZBQzkwNjAwOUQwQ0FGIC8qIEFuaW1hdGlv
bkxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5
RTkxMkE4MEVGQUM5MDYwMDlEMENBRiAvKiBBbmltYXRpb25MaXN0LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFOTEyQUUwRUZBQzkwNjAwOUQw
Q0FGIC8qIFRpbWluZ0Z1bmN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0OUU5MTJBOTBFRkFDOTA2MDA5RDBDQUYgLyogVGltaW5nRnVuY3Rpb24u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0OUVD
RUI2RTE0OTk3OTBEMDBDREQzQTQgLyogRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVDRUI2NDE0OTk3OTBEMDBDREQzQTQg
LyogRmlsdGVyT3BlcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNDlFQ0VCNzAxNDk5NzkwRDAwQ0REM0E0IC8qIEZpbHRlck9wZXJhdGlv
bnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5RUNF
QjY2MTQ5OTc5MEQwMENERDNBNCAvKiBGaWx0ZXJPcGVyYXRpb25zLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNDlFRUQxNDUxMDUxOTY5NDAwMDk5
RkFCIC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVFRDEzRjEwNTE5Njk0MDAwOTlGQUIgLyogSlND
YW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCAqLzsgfTsKKwkJNDlFRUQxNDcxMDUxOTY5NDAwMDk5
RkFCIC8qIEpTV2ViR0xSZW5kZXJpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUVFRDE0MTEwNTE5Njk0MDAwOTlGQUIgLyogSlNXZWJH
TFJlbmRlcmluZ0NvbnRleHQuaCAqLzsgfTsKKwkJNDlGRkJGM0YxMUM5M0VFMzAwNkE3MTE4IC8q
IFdlYkdMTGF5ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ5RkZCRjNEMTFDOTNFRTMwMDZBNzExOCAvKiBXZWJHTExheWVyLmggKi87IH07CisJCTRB
MERBMkZGMTI5QjI0MTkwMEFCNjFFMSAvKiBGb3JtQXNzb2NpYXRlZEVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRBMERBMkZEMTI5QjI0MTkw
MEFCNjFFMSAvKiBGb3JtQXNzb2NpYXRlZEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk0QTBGRkE5RTFBQUY1RTdFMDA2MjgwM0IgLyog
TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRBMEZGQTlDMUFBRjVFNkMwMDYyODAzQiAvKiBNb2NrUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTRBMEZGQUEyMUFBRjVFQTIwMDYyODAzQiAvKiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0QTBGRkFBMDFBQUY1RUEyMDA2MjgwM0IgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTRBMzhCRjUxMTRGRTFDMDkwMDYxMjUxMiAvKiBXZWJTb2NrZXREZWZsYXRlRnJhbWVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QTM4QkY0RjE0RkUx
QzA5MDA2MTI1MTIgLyogV2ViU29ja2V0RGVmbGF0ZUZyYW1lci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTRBNEY0OEFBMTZCMERGQzAwMEVEQkIy
OSAvKiBTdHlsZVNjb3BlUnVsZVNldHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDRBNEY0OEE4MTZCMERGQzAwMEVEQkIyOSAvKiBTdHlsZVNjb3BlUnVs
ZVNldHMuaCAqLzsgfTsKKwkJNEE0RjY1NzExQUE5OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1lTWVk
aWFTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDRBNEY2NTZDMUFBOTk3RjEwMEUzOENERCAvKiBSZWFsdGltZU1lZGlhU291cmNlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEE0RjY1NzIxQUE5
OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VDYXBhYmlsaXRpZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRBNEY2NTZEMUFBOTk3RjEw
MEUzOENERCAvKiBSZWFsdGltZU1lZGlhU291cmNlQ2FwYWJpbGl0aWVzLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEE0RjY1NzQxQUE5OTdGMTAw
RTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE0RjY1NkYxQUE5OTdGMTAwRTM4Q0REIC8q
IFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTRBNUEyQURDMTYxRTdFMDAwMDU4ODlERCAvKiBXZWJT
b2NrZXRFeHRlbnNpb25QYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDRBNUEyQURBMTYxRTdFMDAwMDU4ODlERCAvKiBXZWJTb2NrZXRFeHRlbnNp
b25QYXJzZXIuaCAqLzsgfTsKKwkJNEE2RTlGQzQxM0MxN0QxRDAwNDZBN0Y4IC8qIENTU0ZvbnRG
ZWF0dXJlVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDRBNkU5RkMyMTNDMTdEMUQwMDQ2QTdGOCAvKiBDU1NGb250RmVhdHVyZVZhbHVlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEE2RTlGQzgx
M0MxN0Q1NzAwNDZBN0Y4IC8qIEZvbnRUYWdnZWRTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE2RTlGQzYxM0MxN0Q1NzAwNDZBN0Y4IC8q
IEZvbnRUYWdnZWRTZXR0aW5ncy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTRBOUNDODE4MTZCQjlBQzYwMEVDNjQ1QSAvKiBVc2VyQWdlbnRTdHls
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE5Q0M4
MTYxNkJCOUFDNjAwRUM2NDVBIC8qIFVzZXJBZ2VudFN0eWxlLmggKi87IH07CisJCTRBOUNDODIx
MTZCRjlCQjQwMEVDNjQ1QSAvKiBJbnNwZWN0b3JDU1NPTVdyYXBwZXJzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QTlDQzgxRjE2QkY5QkI0MDBFQzY0
NUEgLyogSW5zcGVjdG9yQ1NTT01XcmFwcGVycy5oICovOyB9OworCQk0QUQwMTAwOTEyN0U2NDJB
MDAxNTAzNUYgLyogSFRNTE91dHB1dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRBRDAxMDA2MTI3RTY0MkEwMDE1MDM1RiAvKiBIVE1MT3V0
cHV0RWxlbWVudC5oICovOyB9OworCQk0QUQwMTczRDEyN0U4Mjg2MDAxNTAzNUYgLyogSlNIVE1M
T3V0cHV0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNEFEMDE3M0IxMjdFODI4NjAwMTUwMzVGIC8qIEpTSFRNTE91dHB1dEVsZW1lbnQuaCAq
LzsgfTsKKwkJNEIxRTEzRTcyMTc5MEQ2NjAwNDJDRjk4IC8qIEN1c3RvbVBhaW50Q2FudmFzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjFFMTNFNjIx
NzkwRDY2MDA0MkNGOTggLyogQ3VzdG9tUGFpbnRDYW52YXMuaCAqLzsgfTsKKwkJNEIxRTEzRUIy
MTc5MzdCMzAwNDJDRjk4IC8qIFBhaW50UmVuZGVyaW5nQ29udGV4dDJELmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjFFMTNFQTIxNzkzN0IzMDA0MkNG
OTggLyogUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQuaCAqLzsgfTsKKwkJNEIyNzA4QzcwQUYxOUVF
NDAwNjUxMjdGIC8qIFBhc3RlYm9hcmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDRCMjcwOEM1MEFGMTlFRTQwMDY1MTI3RiAvKiBQYXN0ZWJvYXJkLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEIzMDQz
Q0QwQUUwMzczQjAwQTgyNjQ3IC8qIEVkaXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNEIzMDQzQ0IwQUUwMzczQjAwQTgyNjQ3IC8qIEVkaXRvci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTRCMzQ4
MDk0MEVFRjUwRDQwMEFDMUI0MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjM0ODA5MjBFRUY1MEQ0MDBBQzFCNDEgLyog
SW1hZ2VTb3VyY2VDRy5oICovOyB9OworCQk0QjQzODY1MDIxOUNENTYxMDBGOEQzQzUgLyogQ1NT
U3R5bGVJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0QjQzODY0RjIxOUNENTYxMDBGOEQzQzUgLyogQ1NTU3R5bGVJbWFnZVZhbHVlLmgg
Ki87IH07CisJCTRCNUJERDlCMjE2NThBMTUwMERENDI2MiAvKiBDU1NQYWludENhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjVCREQ5QTIx
NjU4QTE1MDBERDQyNjIgLyogQ1NTUGFpbnRDYWxsYmFjay5oICovOyB9OworCQk0QjZCNUNCRDIx
NjQwRUZGMDA2MDM4MTcgLyogRE9NQ1NTUGFpbnRXb3JrbGV0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjZCNUNCODIxNjNFQzA3MDA2MDM4MTcgLyog
RE9NQ1NTUGFpbnRXb3JrbGV0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNEI2QjVDQzAyMTY0Mzg2NDAwNjAzODE3IC8qIFBhaW50V29ya2xldEds
b2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0QjZCNUNCRjIxNjQzODY0MDA2MDM4MTcgLyogUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaCAq
LzsgfTsKKwkJNEI2RTg3NjkyMTc2RDY5MjAwNDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEI2RTg3Njgy
MTc2RDY5MjAwNDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5oICovOyB9OworCQk0QjZGQTZG
NDBDMzlFNDhDMDAwODcwMTEgLyogU21hcnRSZXBsYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QjZGQTZGMjBDMzlFNDhDMDAwODcwMTEgLyogU21h
cnRSZXBsYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNEJBRTk1QjEwQjJGQTlDRTAwQUVEOEEwIC8qIEVkaXRvckRlbGV0ZUFjdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJBRTk1QjAwQjJG
QTlDRTAwQUVEOEEwIC8qIEVkaXRvckRlbGV0ZUFjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTRCQUZEMENCMjE5MEVCRDYwMEMwQUI2NCAv
KiBDU1NQYWludFNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDRCQUZEMENBMjE5MEVCRDYwMEMwQUI2NCAvKiBDU1NQYWludFNpemUuaCAqLzsgfTsK
KwkJNEJBRkQwQ0YyMTkwRjlCNTAwQzBBQjY0IC8qIFN0eWxlUHJvcGVydHlNYXBSZWFkT25seS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJBRkQwQ0Uy
MTkwRjlCNDAwQzBBQjY0IC8qIFN0eWxlUHJvcGVydHlNYXBSZWFkT25seS5oICovOyB9OworCQk0
QkFGRDBENjIxOTIxNDZCMDBDMEFCNjQgLyogQ1NTU3R5bGVWYWx1ZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJBRkQwRDUyMTkyMTQ2QjAwQzBBQjY0
IC8qIENTU1N0eWxlVmFsdWUuaCAqLzsgfTsKKwkJNEJBRkQwRDkyMTkyMUVBMDAwQzBBQjY0IC8q
IENTU1VucGFyc2VkVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDRCQUZEMEQ4MjE5MjFFQTAwMEMwQUI2NCAvKiBDU1NVbnBhcnNlZFZhbHVlLmgg
Ki87IH07CisJCTRCQUZEMEUwMjE5MjIwQUIwMEMwQUI2NCAvKiBDU1NOdW1lcmljVmFsdWUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRCQUZEMERGMjE5
MjIwQUIwMEMwQUI2NCAvKiBDU1NOdW1lcmljVmFsdWUuaCAqLzsgfTsKKwkJNEJBRkQwRTEyMTky
NDJBMDAwQzBBQjY0IC8qIENTU1VuaXRWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNEJBRkQwREQyMTkyMjA5MjAwQzBBQjY0IC8qIENTU1VuaXRW
YWx1ZS5oICovOyB9OworCQk0QkQ3ODFCRjIxQzE5NjVGMDBEOTcwM0UgLyogU3R5bGVQcm9wZXJ0
eU1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJE
NzgxQkUyMUMxOTY1RjAwRDk3MDNFIC8qIFN0eWxlUHJvcGVydHlNYXAuaCAqLzsgfTsKKwkJNEJE
QTNGRkUyMTUxQjZGNTAwRkQ2NjA0IC8qIERPTUNTU0N1c3RvbVByb3BlcnR5RGVzY3JpcHRvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJEQTNGRjgy
MTUxQjZGMjAwRkQ2NjA0IC8qIERPTUNTU0N1c3RvbVByb3BlcnR5RGVzY3JpcHRvci5oICovOyB9
OworCQk0QkRBM0ZGRjIxNTFCNkY1MDBGRDY2MDQgLyogRE9NQ1NTUmVnaXN0ZXJDdXN0b21Qcm9w
ZXJ0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJE
QTNGRjkyMTUxQjZGMzAwRkQ2NjA0IC8qIERPTUNTU1JlZ2lzdGVyQ3VzdG9tUHJvcGVydHkuaCAq
LzsgfTsKKwkJNEJEQTQwMDEyMTUxQjZGNTAwRkQ2NjA0IC8qIENTU1JlZ2lzdGVyZWRDdXN0b21Q
cm9wZXJ0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NEJEQTNGRkIyMTUxQjZGNDAwRkQ2NjA0IC8qIENTU1JlZ2lzdGVyZWRDdXN0b21Qcm9wZXJ0eS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTRCREVB
MzIwMjE3RUM1NUYwMDUyREZDRCAvKiBXb3JrbGV0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QkRFQTMxRjIxN0VDNTVGMDA1MkRGQ0QgLyogV29ya2xl
dC5oICovOyB9OworCQk0QkRFQTMyNTIxN0ZFMkU0MDA1MkRGQ0QgLyogV29ya2xldEdsb2JhbFNj
b3BlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QkRF
QTMyNDIxN0ZFMkU0MDA1MkRGQ0QgLyogV29ya2xldEdsb2JhbFNjb3BlLmggKi87IH07CisJCTRC
REVBMzJDMjE4MDMzRUIwMDUyREZDRCAvKiBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRCREVBMzJCMjE4MDMz
RUIwMDUyREZDRCAvKiBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuaCAqLzsgfTsKKwkJNEQzQjAw
QUIyMTVENjlBNzAwNzZCOTgzIC8qIE1lZGlhUmVjb3JkZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDREM0IwMEE5MjE1RDY5QTcwMDc2Qjk4MyAvKiBN
ZWRpYVJlY29yZGVyLmggKi87IH07CisJCTREM0IwMEFGMjE1RDZBNjkwMDc2Qjk4MyAvKiBCbG9i
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRE
M0IwMEFEMjE1RDZBNjkwMDc2Qjk4MyAvKiBCbG9iRXZlbnQuaCAqLzsgfTsKKwkJNEQzQjUwMTYy
MTdFNThCNzAwNjY1REIxIC8qIE1lZGlhUmVjb3JkZXJQcml2YXRlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0RDNCNTAxNDIxN0U1OEI3MDA2NjVEQjEg
LyogTWVkaWFSZWNvcmRlclByaXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk0RDczRjk0NjIxOEJDNUZBMDAzQTNFRDYgLyogTWVkaWFSZWNv
cmRlclByaXZhdGVBVkZJbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0RDczRjk0NDIxOEJDNUZBMDAzQTNFRDYgLyogTWVkaWFSZWNvcmRlclByaXZh
dGVBVkZJbXBsLmggKi87IH07CisJCTRENzNGOTRFMjE4QzRBODcwMDNBM0VENiAvKiBNZWRpYVJl
Y29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0RDczRjk0QzIxOEM0QTg3MDAzQTNFRDYgLyogTWVkaWFSZWNvcmRl
clByaXZhdGVXcml0ZXJDb2NvYS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTREQjcxMzBEMjE2RUNCNEQwMDk2QTRERCAvKiBNZWRpYVJlY29yZGVy
RXJyb3JFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNERCNzEzMEMyMTZFQzJCRDAwOTZBNEREIC8qIE1lZGlhUmVjb3JkZXJFcnJvckV2ZW50Lmgg
Ki87IH07CisJCTRFMTk1OTIyMEEzOURBQkEwMDIyMEZFNSAvKiBNZWRpYUZlYXR1cmVOYW1lcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEUxOTU5MjAw
QTM5REFCQTAwMjIwRkU1IC8qIE1lZGlhRmVhdHVyZU5hbWVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEUxOTU5MkEwQTM5REFDQzAwMjIwRkU1
IC8qIE1lZGlhUXVlcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDRFMTk1OTI0MEEzOURBQ0MwMDIyMEZFNSAvKiBNZWRpYVF1ZXJ5LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNEUxOTU5MkMwQTM5REFD
QzAwMjIwRkU1IC8qIE1lZGlhUXVlcnlFdmFsdWF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRFMTk1OTI2MEEzOURBQ0MwMDIyMEZFNSAvKiBNZWRp
YVF1ZXJ5RXZhbHVhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNEYxNTM0REUxMUI1MzJFQzAwMjFGRDg2IC8qIEVkaXRpbmdCZWhhdmlvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEYxNTM0REQx
MUI1MzJFQzAwMjFGRDg2IC8qIEVkaXRpbmdCZWhhdmlvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTRGMTUzNEUwMTFCNTMzMDIwMDIxRkQ4NiAv
KiBFZGl0aW5nQmVoYXZpb3JUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0RjE1MzRERjExQjUzMzAyMDAyMUZEODYgLyogRWRpdGluZ0JlaGF2aW9y
VHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTRGQTY1QTZDMTEwOEFCRUQwMDI2MTVFMCAvKiBNYXRoTUxTcGFjZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRGQTY1QTZBMTEwOEFCRUQw
MDI2MTVFMCAvKiBNYXRoTUxTcGFjZUVsZW1lbnQuaCAqLzsgfTsKKwkJNTAxQkFBQTkxMzk1MEUy
QzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyogV2luZFJ1bGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MDRBQUNDRTE4
MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA0QUFDQ0MxODM0NDU1OTAwRTNEOUJDIC8q
IEluc3BlY3Rvck5vZGVGaW5kZXIuaCAqLzsgfTsKKwkJNTA4MUUzRTAzQ0ZGODBDMTZFRjhCNDhC
IC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTA4MUUzRTEzRDAyODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291
cmNlUmVxdWVzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTUwOENDQTRGMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGcmFnbWVudGVkRmxvdy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTA4Q0NBNEQx
M0NGMTA2QjAwMzE1MUYzIC8qIFJlbmRlckZyYWdtZW50ZWRGbG93LmggKi87IH07CisJCTUxMDE4
NDY5MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTAxODQ2NzBCMDg2MDJBMDA0QTgyNUYgLyogQ2Fj
aGVkUGFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTUxMDU4QURCMUQ2NzkyQzEwMDlBNTM4QyAvKiBNb2NrR2FtZXBhZC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTA1OEFENzFENjc5MjU3MDA5
QTUzOEMgLyogTW9ja0dhbWVwYWQuY3BwICovOyB9OworCQk1MTA1OEFERDFENjc5MkMxMDA5QTUz
OEMgLyogTW9ja0dhbWVwYWRQcm92aWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MTA1OEFEOTFENjc5MjU3MDA5QTUzOEMgLyogTW9ja0dhbWVw
YWRQcm92aWRlci5jcHAgKi87IH07CisJCTUxMDU4QUUwMUQ2N0MyMjkwMDlBNTM4QyAvKiBNb2Nr
R2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTEwNThBRDgxRDY3OTI1NzAwOUE1MzhDIC8qIE1vY2tHYW1lcGFkLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTEwNThBRTIxRDY3QzIyOTAwOUE1
MzhDIC8qIE1vY2tHYW1lcGFkUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxMDU4QURBMUQ2NzkyNTcwMDlBNTM4QyAvKiBNb2NrR2FtZXBh
ZFByb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNTEwNUYwNjkxRDRCQTlEOTAwRkI4MEJDIC8qIElEQkdldFJlY29yZERhdGEuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMDVGMDY4MUQ0QkE1
NDEwMEZCODBCQyAvKiBJREJHZXRSZWNvcmREYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTEwNkQ3QkUxOEJEQjc2RjAwMEFCMTY2IC8qIENv
bnRleHRNZW51Q29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTEwNkQ3QkMxOEJEQjc2RjAwMEFCMTY2IC8qIENvbnRleHRNZW51Q29udGV4dC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxMEE1
OEZBMUJBQ0M3RjIwMEMxOTI4MiAvKiBJREJSZXF1ZXN0RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwQTU4RjYxQkFDQzRBNTAwQzE5MjgyIC8q
IElEQlJlcXVlc3REYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTEwQTkxREEyNENGM0Q4QzAwQkZEODlDIC8qIEhJREdhbWVwYWRFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTBBOTFE
NjI0Q0U4RURFMDBCRkQ4OUMgLyogSElER2FtZXBhZEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTBBOTFEQzI0Q0Y0NkZFMDBCRkQ4
OUMgLyogU2hhcmVkR2FtZXBhZFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MTBBOTFEQjI0Q0Y0NDE4MDBCRkQ4OUMgLyogU2hhcmVkR2FtZXBh
ZFZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNTEwQTkxRUEyNEQwMDRDMzAwQkZEODlDIC8qIEhJREVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMEE5MUUzMjRDRkNDMTgwMEJGRDg5
QyAvKiBISURFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTEwQTkxRUIyNEQwMDRDODAwQkZEODlDIC8qIEhJRERldmljZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwQTkxRTIyNENGQ0Mx
ODAwQkZEODlDIC8qIEhJRERldmljZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTUxMEE5MUY2MjREMzJEREMwMEJGRDg5QyAvKiBEdWFsc2hvY2sz
SElER2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTEwQTkxRjQyNEQzMjRGRjAwQkZEODlDIC8qIER1YWxzaG9jazNISURHYW1lcGFkLmggKi87
IH07CisJCTUxMEE5MUZEMjREM0MxNjIwMEJGRDg5QyAvKiBHYW1lcGFkQ29uc3RhbnRzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTcxNUZFOTI0Q0Qw
NUREMDAyQzk3RTYgLyogR2FtZXBhZENvbnN0YW50cy5oICovOyB9OworCQk1MTBBOTFGRTI0RDND
MTY3MDBCRkQ4OUMgLyogR2FtZXBhZENvbnN0YW50c01hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwQTkxRkIyNEQzQzBGRDAwQkZEODlDIC8qIEdh
bWVwYWRDb25zdGFudHNNYWMuaCAqLzsgfTsKKwkJNTEwQTkyMDgyNEQ0RjQ5OTAwQkZEODlDIC8q
IExvZ2l0ZWNoR2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTEwQTkyMDUyNEQ0RjA3QTAwQkZEODlDIC8qIExvZ2l0ZWNoR2FtZXBhZC5oICov
OyB9OworCQk1MTBBOTIxMjI0RDVFNjBFMDBCRkQ4OUMgLyogU3RhZGlhSElER2FtZXBhZC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwQTkyMTEyNEQ1
RTIxNzAwQkZEODlDIC8qIFN0YWRpYUhJREdhbWVwYWQuaCAqLzsgfTsKKwkJNTEwRDRBMzQxMDMx
NjVFRTAwNDlFQTU0IC8qIFNvY2tldFN0cmVhbUVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTBENEEyRTEwMzE2NUVFMDA0OUVBNTQgLyogU29j
a2V0U3RyZWFtRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk1MTBENEEzNzEwMzE2NUVFMDA0OUVBNTQgLyogU29ja2V0U3RyZWFtSGFuZGxl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTBENEEz
MTEwMzE2NUVFMDA0OUVBNTQgLyogU29ja2V0U3RyZWFtSGFuZGxlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTEwRDRBMzgxMDMxNjVFRTAwNDlF
QTU0IC8qIFNvY2tldFN0cmVhbUhhbmRsZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwRDRBMzIxMDMxNjVFRTAwNDlFQTU0IC8qIFNvY2tl
dFN0cmVhbUhhbmRsZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTUxMTBGQ0ZDMUUwMzY0MUQwMDZGOEQwQiAvKiBJREJDdXJzb3JSZWNv
cmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMTBG
Q0ZCMUUwMzYyQTUwMDZGOEQwQiAvKiBJREJDdXJzb3JSZWNvcmQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTE3RjMwRTI1RTYxMDIwMDAyQTlG
MUUgLyogUmVtb3RlQ29tbWFuZExpc3RlbmVyQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMTdGMzBDMjVFNjEwMUYwMDJBOUYxRSAvKiBSZW1v
dGVDb21tYW5kTGlzdGVuZXJDb2NvYS5oICovOyB9OworCQk1MTFFQzEyODFDNTBBQUNBMDAzMkY5
ODMgLyogSURCU2VyaWFsaXphdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTExRUMxMjYxQzUwQUE1NzAwMzJGOTgzIC8qIElEQlNlcmlhbGl6YXRp
b24uaCAqLzsgfTsKKwkJNTExRUMxMkMxQzUwQUJCRjAwMzJGOTgzIC8qIFNRTGl0ZUlEQlRyYW5z
YWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MTFFQzEyQTFDNTBBQkJBMDAzMkY5ODMgLyogU1FMaXRlSURCVHJhbnNhY3Rpb24uaCAqLzsgfTsK
KwkJNTExRUMxMzAxQzUwQUJGNTAwMzJGOTgzIC8qIFNRTGl0ZUlEQkN1cnNvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTExRUMxMkUxQzUwQUJFQzAw
MzJGOTgzIC8qIFNRTGl0ZUlEQkN1cnNvci5oICovOyB9OworCQk1MTIwQkJBRjFGMUNFQ0U3MDBF
RkVCRjEgLyogQ29va2llU3RvcmFnZU9ic2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTIwQkJBRDFGMUNFNzcwMDBFRkVCRjEgLyogQ29va2ll
U3RvcmFnZU9ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTEyQkRCNEIxQzQ1NkZGQTAwNjQ5NERGIC8qIFNRTGl0ZUlEQkJhY2tpbmdT
dG9yZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEy
QkRCNDkxQzQ1NkZBQjAwNjQ5NERGIC8qIFNRTGl0ZUlEQkJhY2tpbmdTdG9yZS5oICovOyB9Owor
CQk1MTJERDhGNTBEOTFFNkFGMDAwRjg5RUUgLyogTGVnYWN5V2ViQXJjaGl2ZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEyREQ4RUIwRDkxRTZBRjAw
MEY4OUVFIC8qIExlZ2FjeVdlYkFyY2hpdmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk1MTJERDhGNjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEyREQ4
RUMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTJERDhGODBEOTFFNkFGMDAwRjg5RUUgLyogQXJj
aGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTEyREQ4RUUwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJj
ZUNvbGxlY3Rpb24uaCAqLzsgfTsKKwkJNTEyREQ4RkMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hp
dmVSZXNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTEyREQ4RjIwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxMkREOEZEMEQ5MUU2
QUYwMDBGODlFRSAvKiBBcmNoaXZlRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTEyREQ4RjMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVG
YWN0b3J5LmggKi87IH07CisJCTUxMzBGMkY2MjRBRUE2MEEwMEUxRDBBMCAvKiBHYW1lQ29udHJv
bGxlclNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTEzMEYyRjQyNEFFQTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsu
bW0gKi87IH07CisJCTUxMzI3RDYwMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMzI3RDVFMTFB
MzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuaCAqLzsgfTsKKwkJNTEzRjE0NTQwQUI2MzRD
NDAwMDk0RERGIC8qIEljb25Mb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUxM0YxNDUyMEFCNjM0QzQwMDA5NERERiAvKiBJY29uTG9hZGVyLmgg
Ki87IH07CisJCTUxNDA1Qzg5MTkwQjAxNDQwMDc1NEY5NCAvKiBTZWxlY3Rpb25HZW9tZXRyeUdh
dGhlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MTQwNUM4NzE5MEIwMTQ0MDA3NTRGOTQgLyogU2VsZWN0aW9uR2VvbWV0cnlHYXRoZXJlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNDEyOTk5
MUM2OTc2OTAwMDU5RTcxNCAvKiBJREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTQxMjk5NzFDNjk3NjE1MDA1
OUU3MTQgLyogSURCUmVxdWVzdENvbXBsZXRpb25FdmVudC5oICovOyB9OworCQk1MTQzQjI2MzFE
REQxNTIwMDAxNEZBQzYgLyogTGlua0ljb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxNDNCMjYyMURERDE0OTAwMDE0RkFDNiAvKiBMaW5rSWNvbi5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNDVC
MTBBMUJDNDhFMkUwMEU4NjIxOSAvKiBJREJSZXNvdXJjZUlkZW50aWZpZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNDVCMTA4MUJDNDg5MEIwMEU4
NjIxOSAvKiBJREJSZXNvdXJjZUlkZW50aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTQ4NDUzRjFCQjlEMDdFMDA2QTcyRUQgLyogSURC
RXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUx
NDg0NTNEMUJCOUQwNzYwMDZBNzJFRCAvKiBJREJFcnJvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNEM3NjRDMENFOTIzNEUwMDdFRjNDRCAv
KiBBdXRoZW50aWNhdGlvbk1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTE0Qzc2NDIwQ0U5MjM0RTAwN0VGM0NEIC8qIEF1dGhlbnRpY2F0aW9uTWFj
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE0
Qzc2NEUwQ0U5MjM0RTAwN0VGM0NEIC8qIEZvcm1EYXRhU3RyZWFtTWFjLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTRDNzY0NDBDRTkyMzRFMDA3RUYz
Q0QgLyogRm9ybURhdGFTdHJlYW1NYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk1MTRDNzY2RTBDRTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVudGlh
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE0Qzc2
NTkwQ0U5MjNBMTAwN0VGM0NEIC8qIENyZWRlbnRpYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTRDNzY3MDBDRTkyM0ExMDA3RUYzQ0QgLyog
Rm9ybURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxNEM3NjVCMENFOTIzQTEwMDdFRjNDRCAvKiBGb3JtRGF0YS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNEM3NjcxMENFOTIzQTEwMDdFRjND
RCAvKiBIVFRQSGVhZGVyTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MTRDNzY1QzBDRTkyM0ExMDA3RUYzQ0QgLyogSFRUUEhlYWRlck1hcC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNEM3Njcz
MENFOTIzQTEwMDdFRjNDRCAvKiBIVFRQUGFyc2Vycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE0Qzc2NUUwQ0U5MjNBMTAwN0VGM0NEIC8qIEhUVFBQ
YXJzZXJzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNTE0Qzc2NzUwQ0U5MjNBMTAwN0VGM0NEIC8qIFByb3RlY3Rpb25TcGFjZUJhc2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNEM3NjYwMENFOTIz
QTEwMDdFRjNDRCAvKiBQcm90ZWN0aW9uU3BhY2VCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE0Qzc2NzkwQ0U5MjNBMTAwN0VGM0NEIC8q
IFJlc291cmNlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MTRDNzY2NDBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTRDNzY3QTBD
RTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGVDbGllbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNEM3NjY1MENFOTIzQTEwMDdFRjNDRCAv
KiBSZXNvdXJjZUhhbmRsZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTUxNEM3NjdCMENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhh
bmRsZUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MTRDNzY2NjBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5o
ICovOyB9OworCQk1MTRDNzY3RDBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VSZXF1ZXN0QmFz
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE0Qzc2
NjgwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlUmVxdWVzdEJhc2UuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTRDNzY3RjBDRTkyM0ExMDA3
RUYzQ0QgLyogUmVzb3VyY2VSZXNwb25zZUJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNEM3NjZBMENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJj
ZVJlc3BvbnNlQmFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTUxNTFGMDdFMjYxNTQzNUEwMEZEQjJCNCAvKiBNZWRpYVVuaXF1ZUlkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNTFG
MDdCMjYxNTM2M0YwMEZEQjJCNCAvKiBNZWRpYVVuaXF1ZUlkZW50aWZpZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTVCRTE5MDFENTRGNUZC
MDBERDdDNjggLyogRW1wdHlHYW1lcGFkUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNUJFMTg5MUQ1NEY1RjYwMEREN0M2OCAvKiBFbXB0
eUdhbWVwYWRQcm92aWRlci5oICovOyB9OworCQk1MTVCRTE5MjFENTRGNUZCMDBERDdDNjggLyog
R2FtZXBhZFByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MTVCRTE4QjFENTRGNUY2MDBERDdDNjggLyogR2FtZXBhZFByb3ZpZGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE1QkUxOTMx
RDU0RjVGQjAwREQ3QzY4IC8qIEdhbWVwYWRQcm92aWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE1QkUxOEMxRDU0RjVGNjAwREQ3QzY4
IC8qIEdhbWVwYWRQcm92aWRlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTUxNUJFMTk1MUQ1NEY1RkIwMEREN0M2OCAvKiBQbGF0Zm9y
bUdhbWVwYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxNUJFMThFMUQ1NEY1RjYwMEREN0M2OCAvKiBQbGF0Zm9ybUdhbWVwYWQuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTVCRTE5QzFENTRGNkMx
MDBERDdDNjggLyogSElER2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTE1QkUxOTgxRDU0RjZCRDAwREQ3QzY4IC8qIEhJREdhbWVwYWQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTVCRTE5
RTFENTRGNkMxMDBERDdDNjggLyogSElER2FtZXBhZFByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTVCRTE5QTFENTRGNkJEMDBERDdDNjgg
LyogSElER2FtZXBhZFByb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNTE1RTM3RjYxRkFBOTQwMjAwRDdGMjJBIC8qIFNlcnZpY2VXb3Jr
ZXJUeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTE1RTM3RjQxRkFBOTM4ODAwRDdGMjJBIC8qIFNlcnZpY2VXb3JrZXJUeXBlcy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNUY3OTU0MUNGQ0Ez
RDUwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3BpZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNUY3OTUyMUNGQ0EzQzcwMENDRUQ5MyAv
KiBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3BpZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk1MTYwNzEyRjFCRDgzMDc4MDBEQkM0RjIgLyogSURCT2Jq
ZWN0U3RvcmVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MTYwNzEyRDFCRDgzMDcyMDBEQkM0RjIgLyogSURCT2JqZWN0U3RvcmVJbmZvLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE2MDcxMzIx
QkQ4MzA4QjAwREJDNEYyIC8qIFRyYW5zYWN0aW9uT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTYwNzEyQjFCRDgzMDUzMDBEQkM0RjIg
LyogVHJhbnNhY3Rpb25PcGVyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk1MTYxMDNBRjFDQURCQTc3MDAxNkI0QzcgLyogSURCVmFsdWUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjEwM0FF
MUNBREI5QTMwMDE2QjRDNyAvKiBJREJWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNjJDN0Y1MTFGNzdFRkIwMDYxMkVGRSAvKiBMZWdh
Y3lTY2hlbWVSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTE2MkM3RjMxMUY3N0VGQjAwNjEyRUZFIC8qIExlZ2FjeVNjaGVtZVJlZ2lzdHJ5
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE2
NkQzQ0QxRThFRDQ4RjAwQUQ2MkUzIC8qIFN0b3JhZ2VUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTY2RDNDQzFFOEVENDExMDBBRDYyRTMgLyog
U3RvcmFnZVR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk1MTZDNjIyMDE5NTBENDg3MDAzMzdFNzUgLyogR2FtZXBhZEV2ZW50LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNkM2MjFEMTk1MEQ0
ODcwMDMzN0U3NSAvKiBHYW1lcGFkRXZlbnQuY3BwICovOyB9OworCQk1MTZDNjIyMTE5NTBENDg3
MDAzMzdFNzUgLyogR2FtZXBhZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MTZDNjIxRTE5NTBENDg3MDAzMzdFNzUgLyogR2FtZXBhZEV2ZW50
LmggKi87IH07CisJCTUxNkQ3RDcwMUJCNUYwQkQwMEFGN0M3NyAvKiBJREJDb25uZWN0aW9uVG9T
ZXJ2ZXJEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTE4NUZDQkQxQkI1Q0I3NzAwMTI4OThGIC8qIElEQkNvbm5lY3Rpb25Ub1NlcnZlckRl
bGVnYXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNTE2RDdENzIxQkI1RjBCRDAwQUY3Qzc3IC8qIElEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVn
YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTZE
N0Q2RTFCQjVGMDY1MDBBRjdDNzcgLyogSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTZGN0Y2
RDFDMzFFMzlBMDBGMTExREMgLyogU2VydmVyT3BlbkRCUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2RjdGNkMxQzMxQzc5RDAwRjExMURD
IC8qIFNlcnZlck9wZW5EQlJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk1MTcxMzhGMDFCRUQxRDFBMDAwRDVGMDEgLyogSW5kZXhLZXku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNzEzOEVF
MUJFRDFEMTcwMDBENUYwMSAvKiBJbmRleEtleS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxNzEzOEY4MUJGMTI4QkIwMDBENUYwMSAvKiBJbmRl
eFZhbHVlU3RvcmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxNzEzOEY2MUJGMTIyNjIwMDBENUYwMSAvKiBJbmRleFZhbHVlU3RvcmUuaCAqLzsgfTsK
KwkJNTE3MTM4RkMxQkYzQURGNDAwMEQ1RjAxIC8qIElEQkN1cnNvckluZm8uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNzEzOEZBMUJGM0FEQUMwMDBE
NUYwMSAvKiBJREJDdXJzb3JJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNTE3MTM5MDYxQkY2NERFQzAwMEQ1RjAxIC8qIE1lbW9yeU9iamVj
dFN0b3JlQ3Vyc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MTcxMzkwNDFCRjY0REUzMDAwRDVGMDEgLyogTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3Iu
aCAqLzsgfTsKKwkJNTE3MTM5MDgxQkY2NERFRjAwMEQ1RjAxIC8qIE1lbW9yeUN1cnNvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3MTM5MDIxQkY2
NERFMzAwMEQ1RjAxIC8qIE1lbW9yeUN1cnNvci5oICovOyB9OworCQk1MTcxNEVBODFDRjRFNEIx
MDA0NzIzQzQgLyogSURCQWN0aXZlRE9NT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTcxNEVBNzFDRjRERTg3MDA0NzIzQzQgLyogSURCQWN0
aXZlRE9NT2JqZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNTE3MTRFQUMxQ0Y2NTk1MTAwNDcyM0M0IC8qIEdDT2JzZXJ2YXRpb24uY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3MTRFQTkxQ0Y2
NTg5OTAwNDcyM0M0IC8qIEdDT2JzZXJ2YXRpb24uY3BwICovOyB9OworCQk1MTcxNEVBRDFDRjY1
OTUxMDA0NzIzQzQgLyogR0NPYnNlcnZhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3MTRFQUExQ0Y2NTg5OTAwNDcyM0M0IC8qIEdDT2JzZXJ2
YXRpb24uaCAqLzsgfTsKKwkJNTE3MTRFQjExQ0Y2NjVDRTAwNDcyM0M0IC8qIEpTR0NPYnNlcnZh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3
MTRFQUYxQ0Y2NjU0QTAwNDcyM0M0IC8qIEpTR0NPYnNlcnZhdGlvbi5oICovOyB9OworCQk1MTc0
MUQwRjBCMDcyNTlBMDBFRDQ0MkMgLyogQmFja0ZvcndhcmRDbGllbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNzQxRDBCMEIwNzI1OUEwMEVENDQy
QyAvKiBCYWNrRm9yd2FyZENsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTUxNzQxRDExMEIwNzI1OUEwMEVENDQyQyAvKiBIaXN0b3J5SXRl
bS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3NDFE
MEQwQjA3MjU5QTAwRUQ0NDJDIC8qIEhpc3RvcnlJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE3NEUyMEExMEExRjQ0RjAwRjk1RTZGIC8q
IFBvcFN0YXRlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUxNzRFMjA4MTBBMUY0NEYwMEY5NUU2RiAvKiBQb3BTdGF0ZUV2ZW50LmggKi87IH07
CisJCTUxNzcxREZGMUJEQjQ4NTAwMENBRThFNCAvKiBNZW1vcnlPYmplY3RTdG9yZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3NzFERkQxQkRCNDc1
NjAwQ0FFOEU0IC8qIE1lbW9yeU9iamVjdFN0b3JlLmggKi87IH07CisJCTUxN0E1MkYwMUY0NzUz
NUIwMERDREMwQSAvKiBTV1NlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTE3QTUyRUUxRjQ3NTM1OTAwRENEQzBBIC8qIFNXU2VydmVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE3QTUzMjkx
RjRCOTBCOTAwRENEQzBBIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxN0E1MzI2MUY0QjkwQjIw
MERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE3QTUzNDYxRjUwQzE3RjAwRENE
QzBBIC8qIFNXU2VydmVyV29ya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MTdBNTM0MjFGNTBDMTYxMDBEQ0RDMEEgLyogU1dTZXJ2ZXJXb3JrZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTdB
NTM0RjFGNTRBOEJBMDBEQ0RDMEEgLyogU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxN0E1MzRDMUY1
NDlENEEwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxN0E1MzU4MUY1ODg5
RTgwMERDREMwQSAvKiBGZXRjaExvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE0N0UyQjYxQzg5OTEyNjAwQTdFNzE1IC8qIEZldGNo
TG9hZGVyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNTE3QTUzNUIxRjU4OEE0QzAwRENEQzBBIC8qIEZldGNoQm9keUNvbnN1bWVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUNGOEJFNTFE
NDYyMjIwMDA3MDdEQzkgLyogRmV0Y2hCb2R5Q29uc3VtZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTdBNTM1RDFGNTg5OUZFMDBEQ0RDMEEg
LyogU2VydmljZVdvcmtlckZldGNoUmVzdWx0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MTdBNTM1QzFGNTg5OUYyMDBEQ0RDMEEgLyogU2VydmljZVdv
cmtlckZldGNoUmVzdWx0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTE3QTYzQzUxQjc0MzE4RjAwRTdEQ0RDIC8qIEtleWVkRGVjb2RlckNGLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTdBNjNDMDFC
NzQzMTdFMDBFN0RDREMgLyogS2V5ZWREZWNvZGVyQ0YuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTdBNjNDNjFCNzQzMTkyMDBFN0RDREMgLyog
S2V5ZWRFbmNvZGVyQ0YuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUxN0E2M0MyMUI3NDMxN0UwMEU3RENEQyAvKiBLZXllZEVuY29kZXJDRi5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxN0IyNUFBMUND
ODJCMkEwMDYxQzAxMSAvKiBJREJDb25uZWN0aW9uUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxN0IyNUE4MUNDODIwMzIwMDYxQzAxMSAvKiBJ
REJDb25uZWN0aW9uUHJveHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1MTdERUVFODFERTk0QjA4MDBCOTE2NDQgLyogU2Nyb2xsaW5nTW9tZW50
dW1DYWxjdWxhdG9yTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MTdERUVFNzFERTk0QjA4MDBCOTE2NDQgLyogU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yTWFjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNTE3RTAzRjcyNEI2RDk4NDAwNTQ4OTVBIC8qIE11bHRpR2FtZXBhZFByb3ZpZGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTdFMDNGNDI0
QjZCOTYzMDA1NDg5NUEgLyogTXVsdGlHYW1lcGFkUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTgyQzI1NjFGMzE0M0NEMDA1OUJB
N0MgLyogSlNTZXJ2aWNlV29ya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MTgyQzI1MjFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2Vy
LmggKi87IH07CisJCTUxODJDMjU4MUYzMTQzQ0QwMDU5QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXJD
b250YWluZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxODJDMjU0MUYzMTQyNTAwMDU5QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXJDb250YWluZXIuaCAq
LzsgfTsKKwkJNTE4MkMyNUExRjMxNDNDRDAwNTlCQTdDIC8qIEpTU2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MTgyQzI0RDFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCAq
LzsgfTsKKwkJNTE4MkMyNUMxRjMxNDNDRDAwNTlCQTdDIC8qIEpTU2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTE4MkMyNTAxRjMxNDI1MDAwNTlCQTdDIC8qIEpTU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbi5o
ICovOyB9OworCQk1MTg1NDMwQjFGQjY3ODQ1MDA0NzhGOTUgLyogU1dTZXJ2ZXJUb0NvbnRleHRD
b25uZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MTg1NDMwOTFGQjY3ODNFMDA0NzhGOTUgLyogU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9u
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE4
NUZDN0IxQkI0QzRFODAwMTI4OThGIC8qIElEQkN1cnNvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2NDVCNDExQjlGODg5QjAwRjc4OUNFIC8qIElE
QkN1cnNvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTUxODVGQzdFMUJCNEM0RTgwMDEyODk4RiAvKiBJREJDdXJzb3JXaXRoVmFsdWUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjQ1QjQzMUI5Rjg4
OUIwMEY3ODlDRSAvKiBJREJDdXJzb3JXaXRoVmFsdWUuaCAqLzsgfTsKKwkJNTE4NUZDODExQkI0
QzRFODAwMTI4OThGIC8qIElEQkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MTY0NUI0NTFCOUY4ODlCMDBGNzg5Q0UgLyogSURCRGF0YWJh
c2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1
MTg1RkM4NzFCQjRDNEU4MDAxMjg5OEYgLyogSURCRGF0YWJhc2VJZGVudGlmaWVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTAzMTA1RjFCQThFMDkw
MDAzMzI5QzAgLyogSURCRGF0YWJhc2VJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE4NUZDOEQxQkI0QzRFODAwMTI4OThGIC8q
IElEQkZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDUxNjQ1QjQ3MUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJGYWN0b3J5LmggKi87IH07CisJCTUx
ODVGQzhGMUJCNEM0RTgwMDEyODk4RiAvKiBJREJHZXRSZXN1bHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMjNBRjFDMTg5MThBRTQwMDMxQ0RDOSAv
KiBJREJHZXRSZXN1bHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk1MTg1RkM5MTFCQjRDNEU4MDAxMjg5OEYgLyogSURCSW5kZXguaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjQ1QjQ5MUI5Rjg4OUIw
MEY3ODlDRSAvKiBJREJJbmRleC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTUxODVGQzk1MUJCNEM0RTgwMDEyODk4RiAvKiBJREJLZXkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRDcxOTkyMTgxMTA2
RTAwMDE2REM1MSAvKiBJREJLZXkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk1MTg1RkM5NzFCQjRDNEU4MDAxMjg5OEYgLyogSURCS2V5RGF0YS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTExRUMxQTUx
ODhEQUNBNDAwQkEzRUI2IC8qIElEQktleURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTg1RkM5OTFCQjRDNEU4MDAxMjg5OEYgLyogSURC
S2V5UGF0aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTFENzE5OTQxODExMDZFMDAwMTZEQzUxIC8qIElEQktleVBhdGguaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTg1RkM5QjFCQjRDNEU4MDAxMjg5
OEYgLyogSURCS2V5UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxRDcxOTk2MTgxMTA2RTAwMDE2REM1MSAvKiBJREJLZXlSYW5nZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxODVGQzlFMUJC
NEM0RTgwMDEyODk4RiAvKiBJREJLZXlSYW5nZURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMjNBRjE3MTg5MEE0Q0EwMDMxQ0RDOSAvKiBJREJL
ZXlSYW5nZURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk1MTg1RkNBMDFCQjRDNEU4MDAxMjg5OEYgLyogSURCT2JqZWN0U3RvcmUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjQ1QjRCMUI5Rjg4
OUIwMEY3ODlDRSAvKiBJREJPYmplY3RTdG9yZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxODVGQ0E0MUJCNEM0RTgwMDEyODk4RiAvKiBJREJP
cGVuREJSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MTY0NUI0RDFCOUY4ODlCMDBGNzg5Q0UgLyogSURCT3BlbkRCUmVxdWVzdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxODVGQ0E5MUJC
NEM0RTgwMDEyODk4RiAvKiBJREJSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MTY0NUI0RjFCOUY4ODlCMDBGNzg5Q0UgLyogSURCUmVxdWVz
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUx
ODVGQ0FEMUJCNEM0RTgwMDEyODk4RiAvKiBJREJUcmFuc2FjdGlvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2NDVCNTExQjlGODg5QjAwRjc4OUNF
IC8qIElEQlRyYW5zYWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNTE4NUZDQjAxQkI0QzRFODAwMTI4OThGIC8qIElEQlZlcnNpb25DaGFu
Z2VFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTE2NDVCNTMxQjlGODg5QjAwRjc4OUNFIC8qIElEQlZlcnNpb25DaGFuZ2VFdmVudC5oICovOyB9
OworCQk1MTg1RkNCMjFCQjRDNEU4MDAxMjg5OEYgLyogSW5kZXhlZERCLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUQ3MTlBRTE4MTEwNkUwMDAxNkRD
NTEgLyogSW5kZXhlZERCLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTE4NUZDQjQxQkI0QzRFODAwMTI4OThGIC8qIFdpbmRvd09yV29ya2VyR2xv
YmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUxRDcxOUIyMTgxMTA2RTAwMDE2REM1MSAvKiBXaW5kb3dPcldvcmtl
ckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmggKi87IH07CisJCTUxODVGQ0I5MUJCNENCRjgw
MDEyODk4RiAvKiBJREJDb25uZWN0aW9uVG9DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMEE1OEZFMUJCMDdBQTUwMEMxOTI4MiAvKiBJREJD
b25uZWN0aW9uVG9DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1MTg1RkNCQjFCQjRDQkY4MDAxMjg5OEYgLyogSURCU2VydmVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTBBNThGMDFCQUI3
MjBGMDBDMTkyODIgLyogSURCU2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTE4ODY0RTExQkJBRjU3NDAwRTU0MEM5IC8qIFVuaXF1ZUlE
QkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MTg4NjRERjFCQkFGMzBGMDBFNTQwQzkgLyogVW5pcXVlSURCRGF0YWJhc2UuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTg5RjAxRTEwQjM3
QkQ5MDBGM0M3MzkgLyogSlNQb3BTdGF0ZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTg5RjAxQzEwQjM3QkQ5MDBGM0M3MzkgLyogSlNQb3BT
dGF0ZUV2ZW50LmggKi87IH07CisJCTUxOEY0RkY2MTk0Q0E0RTYwMDgxQkFBRSAvKiBHYW1lcGFk
QnV0dG9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxOEY0RkVEMTk0Q0E0RTYwMDgxQkFBRSAvKiBHYW1lcGFkQnV0dG9uLmNwcCAqLzsgfTsKKwkJ
NTE4RjUwMDIxOTRDQUMzQTAwODFCQUFFIC8qIEpTR2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE4RjRGRkUxOTRDQUMzQTAwODFCQUFFIC8q
IEpTR2FtZXBhZC5oICovOyB9OworCQk1MThGNTAwNDE5NENBQzNBMDA4MUJBQUUgLyogSlNHYW1l
cGFkQnV0dG9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MThGNTAwMDE5NENBQzNBMDA4MUJBQUUgLyogSlNHYW1lcGFkQnV0dG9uLmggKi87IH07CisJ
CTUxOEY5NzAzMUJFOTRDNjMwMDIzMTg3QyAvKiBNZW1vcnlJbmRleC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE4Rjk3MDExQkU5NEM1QjAwMjMxODdD
IC8qIE1lbW9yeUluZGV4LmggKi87IH07CisJCTUxOTc1NUZBMUJGRDdEQzMwMDNERTk4MCAvKiBN
ZW1vcnlJbmRleEN1cnNvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTE5NzU1RjgxQkZEN0RCQzAwM0RFOTgwIC8qIE1lbW9yeUluZGV4Q3Vyc29yLmgg
Ki87IH07CisJCTUxOThGN0E1MUJCREI3OTMwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNv
bm5lY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDUxOThGN0EzMUJCREFBMjkwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNvbm5lY3Rpb24u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTk4
RjdBOTFCQkREMzg1MDBFMkNDNUYgLyogVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE5OEY3QTcxQkJE
RDM4MTAwRTJDQzVGIC8qIFVuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MTk4RjdBRDFCQkREM0VC
MDBFMkNDNUYgLyogSURCVHJhbnNhY3Rpb25JbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTk4RjdBQjFCQkREM0UzMDBFMkNDNUYgLyogSURCVHJh
bnNhY3Rpb25JbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNTE5OEY3QzExQkM0ODU2NzAwRTJDQzVGIC8qIElEQkNvbm5lY3Rpb25Ub1NlcnZl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEwQTU4
RkQxQkIwN0E5NjAwQzE5MjgyIC8qIElEQkNvbm5lY3Rpb25Ub1NlcnZlci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxOURCQzZGMURDMDExQTcw
MDMyOUJGNSAvKiBJREJHZXRBbGxSZWNvcmRzRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE5REJDNkMxREMwMEZBMDAwMzI5QkY1IC8qIElEQkdl
dEFsbFJlY29yZHNEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTE5REJDNzIxREMxMEY1MjAwMzI5QkY1IC8qIElEQkdldEFsbFJlc3VsdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE5REJDNzEx
REMxMEQzMzAwMzI5QkY1IC8qIElEQkdldEFsbFJlc3VsdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxQTA1MjMzMTA1ODc3NEYwMENDOUU5NSAv
KiBDcmVkZW50aWFsU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTFBMDUyMzExMDU4Nzc0RjAwQ0M5RTk1IC8qIENyZWRlbnRpYWxTdG9yYWdl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFB
MDUyNTYxMDU4ODc0MDAwQ0M5RTk1IC8qIFByb3RlY3Rpb25TcGFjZUhhc2guaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQTA1MjU1MTA1ODg3NDAwMEND
OUU5NSAvKiBQcm90ZWN0aW9uU3BhY2VIYXNoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFBMUI4N0QyMDg3QzRDMDAwOTc5QTc1IC8qIEJhY2tG
b3J3YXJkSXRlbUlkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUxQTFCODdCMjA4N0M0QjgwMDk3OUE3NSAvKiBCYWNrRm9yd2FyZEl0ZW1J
ZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNTFBNEJCMEExOTU0RDYxNjAwRkE1QzJFIC8qIEdhbWVwYWQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFBNEJCMDcxOTU0RDYxNjAwRkE1
QzJFIC8qIEdhbWVwYWQuY3BwICovOyB9OworCQk1MUE0QkIxMDE5NTRENjI3MDBGQTVDMkUgLyog
TmF2aWdhdG9yR2FtZXBhZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MUE0QkIwRDE5NTRENjI3MDBGQTVDMkUgLyogTmF2aWdhdG9yR2FtZXBhZC5j
cHAgKi87IH07CisJCTUxQTc0OEUzMjAwNUQwRTgwMDc1QkE2OCAvKiBNZXNzYWdlV2l0aE1lc3Nh
Z2VQb3J0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTFBNzQ4RTAyMDA1RDBFMDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFBNzQ4RTYy
MDA2MDA0RjAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFBNzQ4RTUyMDA2MDAy
MTAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5oICovOyB9OworCQk1
MUE5RDlFOTE5NUI5MzFGMDAxQjJCNUMgLyogR2FtZXBhZE1hbmFnZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFBOUQ5RTcxOTVCOTMxRjAwMUIy
QjVDIC8qIEdhbWVwYWRNYW5hZ2VyLmNwcCAqLzsgfTsKKwkJNTFBOUQ5RUExOTVCOTMxRjAwMUIy
QjVDIC8qIEdhbWVwYWRNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MUE5RDlFODE5NUI5MzFGMDAxQjJCNUMgLyogR2FtZXBhZE1hbmFnZXIu
aCAqLzsgfTsKKwkJNTFBQkFFMUUxMDNDMTkxMzAwOEM1MjYwIC8qIFNvY2tldFN0cmVhbUhhbmRs
ZUltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUx
QUJBRTFDMTAzQzE5MTMwMDhDNTI2MCAvKiBTb2NrZXRTdHJlYW1IYW5kbGVJbXBsLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFBRjUwMzYxNkYx
MDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQUY1MDM1MTZGMTAwRjYwMDk1QjJFOCAvKiBS
ZXNvdXJjZUxvYWRlclR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNTFCNDVEMjExQUI4RDFFMjAwMTE3Q0QyIC8qIENvbnRlbnRFeHRlbnNp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQjQ1
RDFGMUFCOEQxRTIwMDExN0NEMiAvKiBDb250ZW50RXh0ZW5zaW9uLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFCOTE0MTAxRkQyNzgyRDAwRUUy
ODU5IC8qIFJlZ2lzdHJhdGlvbkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MUI5MTQwQzFGRDI3ODI1MDBFRTI4NTkgLyogUmVnaXN0cmF0
aW9uRGF0YWJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk1MUI5MTQxMTFGRDI3ODJEMDBFRTI4NTkgLyogUmVnaXN0cmF0aW9uU3RvcmUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQjkxNDBCMUZE
Mjc4MjUwMEVFMjg1OSAvKiBSZWdpc3RyYXRpb25TdG9yZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxQkE0QUM0MUJCQjVDRDgwMERGM0Q2RCAv
KiBJREJEYXRhYmFzZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUxQkE0QUMyMUJCQjVDQkYwMERGM0Q2RCAvKiBJREJEYXRhYmFzZUluZm8uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUJBNEFD
QjFCQkM1QkQ5MDBERjNENkQgLyogTWVtb3J5SURCQmFja2luZ1N0b3JlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUJBNEFDOTFCQkM1QjlFMDBERjNE
NkQgLyogTWVtb3J5SURCQmFja2luZ1N0b3JlLmggKi87IH07CisJCTUxQkE0QUNDMUJCQzVCREQw
MERGM0Q2RCAvKiBJREJCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxQkE0QUM3MUJCQzVBRDYwMERGM0Q2RCAvKiBJREJCYWNraW5n
U3RvcmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk1MUJBOTQ3MTIzQUMzMDUzMDA0NDQ4NDYgLyogUnVuSmF2YVNjcmlwdFBhcmFtZXRlcnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxQkE5NDZGMjNB
QzMwNTAwMDQ0NDg0NiAvKiBSdW5KYXZhU2NyaXB0UGFyYW1ldGVycy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxQkNDRTMwMUY4RjE3OUUwMDZC
QTBFRCAvKiBTZXJ2aWNlV29ya2VyVGhyZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MTdDODcxMDFGOEVFNzJFMDBFQjgwNzYgLyogU2VydmljZVdv
cmtlclRocmVhZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTUxQkUzN0UwMERBRUUwMEUwMDEwODVGQyAvKiBTdG9yYWdlQXJlYS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFCRTM3REUwREFFRTAwRTAw
MTA4NUZDIC8qIFN0b3JhZ2VBcmVhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNTFDMEFBMzkwRjJBQTEwQTAwMTY0OEMyIC8qIENhY2hlZEZyYW1l
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUMwQUEz
ODBGMkFBMTBBMDAxNjQ4QzIgLyogQ2FjaGVkRnJhbWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUM2MUIwQjFERTUzNkU3MDA4QTIxMkQgLyog
U2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MUM2MUIwOTFERTUzNkU3MDA4QTIxMkQgLyogU2Nyb2xsaW5n
TW9tZW50dW1DYWxjdWxhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNTFDODFCOEEwQzQ0MjJGNzAwMTlFQ0UzIC8qIEZUUERpcmVjdG9yeVBh
cnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFD
ODFCODgwQzQ0MjJGNzAwMTlFQ0UzIC8qIEZUUERpcmVjdG9yeVBhcnNlci5oICovOyB9OworCQk1
MUNBN0VFOTFGODgzMzkwMDAzRDMxMzEgLyogU2VydmljZVdvcmtlckNvbnRleHREYXRhLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUNBN0VFNzFGODgz
MkUwMDAzRDMxMzEgLyogU2VydmljZVdvcmtlckNvbnRleHREYXRhLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFDQkZDOTkwRDEwRTQ4MzAwMkRC
RjUxIC8qIENhY2hlZEZyYW1lUGxhdGZvcm1EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUNCRkM5ODBEMTBFNDgzMDAyREJGNTEgLyogQ2FjaGVk
RnJhbWVQbGF0Zm9ybURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1MUQ3MjM2RDFCQjYxNzQ5MDA0NzhDQTMgLyogSURCUmVzdWx0RGF0YS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFENzIzNkIx
QkI2MEJGRTAwNDc4Q0EzIC8qIElEQlJlc3VsdERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUQ3RUZFQTFCREU4RjhDMDBFOTNFMTAgLyog
VGhyZWFkU2FmZURhdGFCdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUxMUZBRUE5MUJEQzk4OUEwMEI0QUZFNCAvKiBUaHJlYWRTYWZlRGF0YUJ1
ZmZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTUxREY2RDdFMEI5MkExNkQwMEMyREM4NSAvKiBUaHJlYWRDaGVjay5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFERjZEN0QwQjkyQTE2RDAwQzJEQzg1
IC8qIFRocmVhZENoZWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTFERjZEODAwQjkyQTE4RTAwQzJEQzg1IC8qIFRocmVhZENoZWNrLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFERjZEN0YwQjky
QTE4RTAwQzJEQzg1IC8qIFRocmVhZENoZWNrLm1tICovOyB9OworCQk1MUUwQkFCQjBEQTU1NDcx
MDBBOUU0MTcgLyogU3RvcmFnZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MUUwQkFCOTBEQTU1NDcxMDBBOUU0MTcgLyogU3RvcmFnZUV2ZW50
LmggKi87IH07CisJCTUxRTBCQUVCMERBNTVENEEwMEE5RTQxNyAvKiBKU1N0b3JhZ2VFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFFMEJBRTkw
REE1NUQ0QTAwQTlFNDE3IC8qIEpTU3RvcmFnZUV2ZW50LmggKi87IH07CisJCTUxRTBCQjM4MERB
NUFDQjYwMEE5RTQxNyAvKiBTdG9yYWdlTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MUUwQkIzNjBEQTVBQ0I2MDBBOUU0MTcgLyogU3RvcmFnZU1h
cC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUx
RTFCQUMzMUJEODA2NEUwMDU1RDgxRiAvKiBNZW1vcnlCYWNraW5nU3RvcmVUcmFuc2FjdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFFMUJBQzEx
QkQ4MDY0NzAwNTVEODFGIC8qIE1lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmggKi87IH07
CisJCTUxRTI2OTM3MUREM0JEOUIwMDZCNkE1OCAvKiBJREJJdGVyYXRlQ3Vyc29yRGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFFMjY5MzUxREQz
QkQ5MTAwNkI2QTU4IC8qIElEQkl0ZXJhdGVDdXJzb3JEYXRhLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFFMzk5MDAxRDZFNDc1MDAwOUM4ODMx
IC8qIEdhbWVDb250cm9sbGVyR2FtZXBhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTFFMzk4RkMxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250cm9s
bGVyR2FtZXBhZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTUxRTM5OTAyMUQ2RTQ3NTAwMDlDODgzMSAvKiBHYW1lQ29udHJvbGxlckdhbWVwYWRQ
cm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTFFMzk4RkUxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVy
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFF
M0FBMEIxQjk4QkNBQjAwMzZBRDgxIC8qIFNlY3VyaXR5T3JpZ2luRGF0YS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFFM0FBMDkxQjk4QkM5QTAwMzZB
RDgxIC8qIFNlY3VyaXR5T3JpZ2luRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTUxRTY4MjEwMTYzODczMDIwMDNCQkYzQyAvKiBMb2FkZXJT
dHJhdGVneS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTFFNjgyMEYxNjM4NzMwMjAwM0JCRjNDIC8qIExvYWRlclN0cmF0ZWd5LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFFQ0MzRjYyMDA1ODdCRjAw
NDgzRUFFIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTFFQ0MzRjQyMDA1ODdCNzAwNDgzRUFFIC8qIE1lc3NhZ2VQ
b3J0Q2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTUxRUNDM0Y4MjAwNTg3QkYwMDQ4M0VBRSAvKiBNZXNzYWdlUG9ydENoYW5uZWxSZWdp
c3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFF
Q0MzRjEyMDA1ODdCNTAwNDgzRUFFIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFJlZ2lzdHJ5LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFFQ0MzRkQy
MDA1OTMwRDAwNDgzRUFFIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUVDQzNGQjIwMDU5MzAxMDA0
ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUVFN0IzODFBQTUwQjA1MDBGOTJCMjEg
LyogUmVzb3VyY2VMb2FkSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTFFRTdCMzcxQUE1MEIwNTAwRjkyQjIxIC8qIFJlc291cmNlTG9hZEluZm8u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUVF
QUE3NDFCRUZGQUIxMDAyMTgwMDggLyogSW5kZXhWYWx1ZUVudHJ5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUVFQUE3MjFCRUZGQTc5MDAyMTgwMDgg
LyogSW5kZXhWYWx1ZUVudHJ5LmggKi87IH07CisJCTUxRjE3NEZFMUYzNTg5OTIwMEM3NDk1MCAv
KiBXb3JrZXJUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MUYxNzRGQzFGMzU4OTg4MDBDNzQ5NTAgLyogV29ya2VyVHlwZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxRjE3NTAzMUYzNThCM0Iw
MEM3NDk1MCAvKiBKU1NlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGMTc1MDExRjM1OEIzNjAwQzc0OTUw
IC8qIEpTU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmggKi87IH07CisJCTUxRjE3NTA2MUYz
NThCRjcwMEM3NDk1MCAvKiBKU1dvcmtlclR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjE3NTA1MUYzNThCREUwMEM3NDk1MCAvKiBKU1dvcmtl
clR5cGUuaCAqLzsgfTsKKwkJNTFGMTc1NUQxRjNFQkM4MzAwQzc0OTUwIC8qIFNlcnZpY2VXb3Jr
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjE3
NTVBMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyLmggKi87IH07CisJCTUxRjE3NTVG
MUYzRUJDODMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyQ29udGFpbmVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUYxNzU1NzFGM0VCQzBDMDBDNzQ5
NTAgLyogU2VydmljZVdvcmtlckNvbnRhaW5lci5oICovOyB9OworCQk1MUYxNzU2MTFGM0VCQzgz
MDBDNzQ5NTAgLyogU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUYxNzU1NDFGM0VCQzBDMDBDNzQ5NTAgLyog
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggKi87IH07CisJCTUxRjE3NTYzMUYzRUJDODMwMEM3
NDk1MCAvKiBTZXJ2aWNlV29ya2VySm9iLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MUYxNzU1MTFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtl
ckpvYi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTUxRjE3NTY0MUYzRUJDODMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VySm9iQ2xpZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUYxNzU1MDFGM0VC
QzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlckpvYkNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxRjE3NTY2MUYzRUJDODMwMEM3NDk1
MCAvKiBTZXJ2aWNlV29ya2VyUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjE3NTRFMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29y
a2VyUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk1MUYxNzU2ODFGM0VCQzgzMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFG
MTc1NEMxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24uaCAqLzsg
fTsKKwkJNTFGMTc1NjkxRjNFQkM4MzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25PcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MUYxNzU0QTFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbk9w
dGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk1MUYxNzU2QzFGM0VCQzgzMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUYxNzU0
NzFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFGNjQ1NjIxRjQ1
Mzk4RjAwQjU0REVEIC8qIEV4Y2VwdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjY0NTYwMUY0NTM5OEIwMEI1NERFRCAvKiBFeGNlcHRp
b25EYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNTFGNjQ1NjkxRjQ1MzlCOTAwQjU0REVEIC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUY2NDU2NjFGNDUz
OTlGMDBCNTRERUQgLyogU2VydmljZVdvcmtlckpvYkRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MUY2NDU2QTFGNDUzOUMwMDBCNTRERUQg
LyogU2VydmljZVdvcmtlckpvYlR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUxRjY0NTY1MUY0NTM5OUYwMEI1NERFRCAvKiBTZXJ2aWNlV29ya2Vy
Sm9iVHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTUxRjY0NTk3MUY0QTY4NkYwMEI1NERFRCAvKiBTV1NlcnZlclJlZ2lzdHJhdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGNjQ1OTQxRjRB
Njg0RjAwQjU0REVEIC8qIFNXU2VydmVyUmVnaXN0cmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFGNjQ1RDUxRkVDREJDRTAwQjU0REVE
IC8qIFByb2Nlc3NJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MUY2NDVEMzFGRUNEQkM4MDBCNTRERUQgLyogUHJvY2Vzc0lkZW50aWZp
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1
MUY2NDVFMDFGRjQ1OTRFMDBCNTRERUQgLyogTWVzc2FnZVBvcnRJZGVudGlmaWVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUY2NDVERTFGRjQ1OTRC
MDBCNTRERUQgLyogTWVzc2FnZVBvcnRJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTFGNzk4RjAxQkU4ODBFNzAwOEFFNDkxIC8q
IElEQkluZGV4SW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTFGNzk4RUMxQkU4ODBEMzAwOEFFNDkxIC8qIElEQkluZGV4SW5mby5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUxRjg4NkMwMUYzMjky
MzEwMEMxOTNFRiAvKiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRjg4NkJGMUYzMjkyMDcwMEMxOTNFRiAv
KiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuaCAqLzsgfTsKKwkJNTFGQTJENzgxNTIxMzJCMzAw
QzFCQTBCIC8qIERPTVdpbmRvd0V4dGVuc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTE3RkJBMTgxNTFBQTcxQjAwQjU3OTU5IC8qIERPTVdpbmRv
d0V4dGVuc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTUxRkI1NTA0MTEzRTNFOTEwMDgyMTE3NiAvKiBKU0Nsb3NlRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxRkI1NTAyMTEzRTNFOTEw
MDgyMTE3NiAvKiBKU0Nsb3NlRXZlbnQuaCAqLzsgfTsKKwkJNTFGQjY3REMxQUU2QjgyRjAwRDA2
QzVBIC8qIENvbnRlbnRFeHRlbnNpb25TdHlsZVNoZWV0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MUZCNjdEQTFBRTZCNUU0MDBEMDZDNUEgLyogQ29u
dGVudEV4dGVuc2lvblN0eWxlU2hlZXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk1MjczQ0M3NzI1NjEwM0NGMDA4NTAwMDcgLyogUGxhdGZvcm1Y
UkNvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MjczQ0M3NTI1NjEwM0NGMDA4NTAwMDcgLyogUGxhdGZvcm1YUkNvY29hLmggKi87IH07CisJCTUy
NzNDQzhFMjU2MzdFQjUwMDg1MDAwNyAvKiBXZWJYUlRlc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE4RDgzRTAyNDNGNzFDRTAwOTI0N0Q2IC8q
IFdlYlhSVGVzdC5jcHAgKi87IH07CisJCTUyNzNDQzkwMjU2MzdGNjcwMDg1MDAwNyAvKiBXZWJG
YWtlWFJEZXZpY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTE4RDgzRTkyNDNGNzFEMzAwOTI0N0Q2IC8qIFdlYkZha2VYUkRldmljZS5jcHAgKi87
IH07CisJCTUyNzNDQzkxMjU2MzdGNzUwMDg1MDAwNyAvKiBXZWJGYWtlWFJJbnB1dENvbnRyb2xs
ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE4
RDgzREQyNDNGNzFDQzAwOTI0N0Q2IC8qIFdlYkZha2VYUklucHV0Q29udHJvbGxlci5jcHAgKi87
IH07CisJCTUyNzNDQzlDMjU2M0IyNUEwMDg1MDAwNyAvKiBKU1dlYlhSVGVzdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MjczQ0M5QTI1NjNCMjEy
MDA4NTAwMDcgLyogSlNXZWJYUlRlc3QuY3BwICovOyB9OworCQk1MjczQ0NBMDI1NjNCMzc3MDA4
NTAwMDcgLyogSlNXZWJGYWtlWFJEZXZpY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTI3M0NDOUUyNTYzQjM3NjAwODUwMDA3IC8qIEpTV2ViRmFr
ZVhSRGV2aWNlLmNwcCAqLzsgfTsKKwkJNTI3M0NDQTQyNTYzQjRGODAwODUwMDA3IC8qIEpTWFJT
aW11bGF0ZVVzZXJBY3RpdmF0aW9uRnVuY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI3M0NDQTIyNTYzQjRGNzAwODUwMDA3IC8qIEpTWFJT
aW11bGF0ZVVzZXJBY3RpdmF0aW9uRnVuY3Rpb24uY3BwICovOyB9OworCQk1MjczQ0NBODI1NjNC
NUNBMDA4NTAwMDcgLyogSlNXZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTI3M0NDQTYyNTYzQjVDOTAwODUw
MDA3IC8qIEpTV2ViRmFrZVhSSW5wdXRDb250cm9sbGVyLmNwcCAqLzsgfTsKKwkJNTI3M0NDQjAy
NTY0NTc2RjAwODUwMDA3IC8qIEpTRmFrZVhSSW5wdXRTb3VyY2VJbml0LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNzNDQ0FBMjU2NDU3NkIwMDg1
MDAwNyAvKiBKU0Zha2VYUklucHV0U291cmNlSW5pdC5jcHAgKi87IH07CisJCTUyNzNDQ0IxMjU2
NDU3NkYwMDg1MDAwNyAvKiBKU0Zha2VYUkJvdW5kc1BvaW50LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNzNDQ0FDMjU2NDU3NkMwMDg1MDAwNyAv
KiBKU0Zha2VYUkJvdW5kc1BvaW50LmNwcCAqLzsgfTsKKwkJNTI3M0NDQjIyNTY0NTc2RjAwODUw
MDA3IC8qIEpTRmFrZVhSQnV0dG9uU3RhdGVJbml0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyNzNDQ0FEMjU2NDU3NkMwMDg1MDAwNyAvKiBKU0Zh
a2VYUkJ1dHRvblN0YXRlSW5pdC5jcHAgKi87IH07CisJCTUyNzNDQ0IzMjU2NDU3NkYwMDg1MDAw
NyAvKiBKU0Zha2VYUlJpZ2lkVHJhbnNmb3JtSW5pdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MjczQ0NBRTI1NjQ1NzZEMDA4NTAwMDcgLyogSlNG
YWtlWFJSaWdpZFRyYW5zZm9ybUluaXQuY3BwICovOyB9OworCQk1MjczQ0NCNDI1NjQ1NzZGMDA4
NTAwMDcgLyogSlNGYWtlWFJWaWV3SW5pdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1MjczQ0NBRjI1NjQ1NzZFMDA4NTAwMDcgLyogSlNGYWtlWFJW
aWV3SW5pdC5jcHAgKi87IH07CisJCTUyQjBENEJFMUM1N0ZEMUUwMDc3Q0U1MyAvKiBQbGF0Zm9y
bVZpZXcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUy
QjBENEJEMUM1N0ZEMUUwMDc3Q0U1MyAvKiBQbGF0Zm9ybVZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MkIwRDRDMDFDNTdGRDY2MDA3N0NF
NTMgLyogVmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyQjBENEJGMUM1N0ZENjYwMDc3Q0U1MyAvKiBW
aWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTUyQjBENEMyMUM1N0ZGOTEwMDc3Q0U1MyAvKiBWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUyQjBENEMxMUM1N0ZGOTEwMDc3Q0U1MyAvKiBWaWRlb0Z1bGxzY3Jl
ZW5JbnRlcmZhY2VNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk1MkQ1QTFBNzFDNTc0ODlEMDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTW9k
ZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyRDVB
MUE0MUM1NzQ4ODkwMERFMzRBMyAvKiBWaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUyRDVBMUE4MUM1NzQ4QTMw
MERFMzRBMyAvKiBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTJENUExQTUxQzU3NDg4OTAwREUz
NEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTJFMkNBRkMxOUZGMDIwNzAwMUVF
QjRGIC8qIE1lZGlhUHJvZHVjZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUyRTJDQUZCMTlGRjAyMDcwMDFFRUI0RiAvKiBNZWRpYVByb2R1Y2VyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTJGMTA4
NjYxNjJCNkRBODAwOUFDODFFIC8qIE1peGVkQ29udGVudENoZWNrZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUyRjEwODYzMTYyQjZEODIwMDlBQzgx
RSAvKiBNaXhlZENvbnRlbnRDaGVja2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTMxNzYxMjMxM0M1MTY2OTAwMjZFNDU0IC8qIFN0eWxlRmxl
eGlibGVCb3hEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MzE3NjEyMTEzQzUxNjY5MDAyNkU0NTQgLyogU3R5bGVGbGV4aWJsZUJveERhdGEuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1MzIwNDIw
MjFGOUE5RjEwMDBCODFCMkEgLyogVXNlckFnZW50U2NyaXB0c0RhdGEuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBQjZEMzAxN0M5MjU5NTAwQzYw
QjM0IC8qIFVzZXJBZ2VudFNjcmlwdHNEYXRhLmNwcCAqLzsgfTsKKwkJNTM1MUQ0QjExREY5MTZC
NDAwODAxMENEIC8qIEZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUzNTFENEFGMURGOTE2QUMwMDgwMTBDRCAvKiBGaWxlSGFuZGxlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTM2RDVB
MjAxOTNFMThFOTAwQ0U0Q0FCIC8qIEhUTUxTcmNzZXRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzNkQ1QTFGMTkzRTE4RTkwMENFNENBQiAv
KiBIVE1MU3Jjc2V0UGFyc2VyLmggKi87IH07CisJCTUzNkQ1QTIzMTkzRThFMEMwMENFNENBQiAv
KiBQYXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2luZ1V0aWxpdGllcy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTUzOEVD
ODAyMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzdGQTFGOTZBQTcwMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTEuY3BwICovOyB9OworCQk1MzhFQzgwMzFGOTZBRjgxMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTEtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MzhFQzdGMzFGOTZBQTVCMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEt
bW0ubW0gKi87IH07CisJCTUzOEVDODA0MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhF
QzdFRTFGOTZBQTU2MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTIuY3BwICovOyB9OworCQk1MzhF
QzgwNTFGOTZBRjgxMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTItbW0ubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzdGODFGOTZBQTY5MDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTItbW0ubW0gKi87IH07CisJCTUzOEVDODA2MUY5NkFGODEwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzdFQzFGOTZBQTU0MDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTMuY3BwICovOyB9OworCQk1MzhFQzgwNzFGOTZBRjgxMDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTMtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MzhFQzdFRDFGOTZBQTU1MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTMtbW0ubW0gKi87IH07CisJ
CTUzOEVDODA4MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzdFRjFGOTZBQTU3MDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTQuY3BwICovOyB9OworCQk1MzhFQzgwOTFGOTZBRjgxMDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RjAxRjk2QUE1ODAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U1LmNwcCAqLzsgfTsKKwkJNTM4RUM4MEExRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
OEVDN0VCMUY5NkFBNTMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNi5jcHAgKi87IH07CisJCTUz
OEVDODBCMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNy5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzdGMTFGOTZBQTU5MDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTcuY3BwICovOyB9OworCQk1MzhFQzgwQzFGOTZBRjgxMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM3RjIxRjk2QUE1QTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4
LmNwcCAqLzsgfTsKKwkJNTM4RUM4MEQxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVD
N0ZFMUY5NkFBNzYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOS5jcHAgKi87IH07CisJCTUzOEVD
ODBFMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTAuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RjUxRjk2QUE1RTAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UxMC5jcHAgKi87IH07CisJCTUzOEVDODBGMUY5NkFGODEwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM3RjQxRjk2QUE1RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2Ux
MS5jcHAgKi87IH07CisJCTUzOEVDODEwMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4
RUM3RjYxRjk2QUE1RjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMi5jcHAgKi87IH07CisJCTUz
OEVDODExMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTMuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RkQxRjk2QUE3NDAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxMy5jcHAgKi87IH07CisJCTUzOEVDODEyMUY5NkFGODEwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RkMxRjk2QUE3MzAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxNC5jcHAgKi87IH07CisJCTUzOEVDODEzMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM3RkYxRjk2QUE3NzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxNS5jcHAgKi87IH07CisJ
CTUzOEVDODE0MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTYuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RjcxRjk2QUE2MDAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxNi5jcHAgKi87IH07CisJCTUzOEVDODE1MUY5NkFGODEw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MDExRjk2QUE3QTAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UxNy5jcHAgKi87IH07CisJCTUzOEVDODE2MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlMTguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM3RkIxRjk2QUE3MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxOC5jcHAgKi87IH07
CisJCTUzOEVDODE3MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTkuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM3RjkxRjk2QUE2
RTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxOS5jcHAgKi87IH07CisJCTUzOEVDODE4MUY5NkFG
ODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MDAxRjk2QUE3ODAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UyMC5jcHAgKi87IH07CisJCTUzOEVDODg2MUY5OTNGOUMwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMjEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM4RUM4MzUxRjk5M0YwRDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyMS5jcHAgKi87
IH07CisJCTUzOEVDODg3MUY5OTNGOUMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NEExRjk5
M0YxODAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyMi5jcHAgKi87IH07CisJCTUzOEVDODg4MUY5
OTNGOUMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MkExRjk5M0YwNzAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UyMy5jcHAgKi87IH07CisJCTUzOEVDODg5MUY5OTNGOUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMjQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM4RUM4M0YxRjk5M0YxMjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNC5jcHAg
Ki87IH07CisJCTUzOEVDODhBMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4M0Ex
Rjk5M0YxMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNS5jcHAgKi87IH07CisJCTUzOEVDODhC
MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjYuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NEMxRjk5M0YxOTAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UyNi5jcHAgKi87IH07CisJCTUzOEVDODhDMUY5OTNGOUQwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlMjcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTM4RUM4NUYxRjk5M0YyMzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNy5j
cHAgKi87IH07CisJCTUzOEVDODhEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjgu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4
NEIxRjk5M0YxODAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyOC5jcHAgKi87IH07CisJCTUzOEVD
ODhFMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjkuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NTUxRjk5M0YxRTAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UyOS5jcHAgKi87IH07CisJCTUzOEVDODhGMUY5OTNGOUQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMzAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM4NzYxRjk5M0YyRjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2Uz
MC5jcHAgKi87IH07CisJCTUzOEVDODkwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MzEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4
RUM4NUIxRjk5M0YyMTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMS5jcHAgKi87IH07CisJCTUz
OEVDODkxMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MkIxRjk5M0YwODAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UzMi5jcHAgKi87IH07CisJCTUzOEVDODkyMUY5OTNGOUQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMzMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4N0YxRjk5M0YzNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UzMy5jcHAgKi87IH07CisJCTUzOEVDODkzMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMzQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM4NTcxRjk5M0YxRjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNC5jcHAgKi87IH07CisJ
CTUzOEVDODk0MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4N0ExRjk5M0YzMTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNS5jcHAgKi87IH07CisJCTUzOEVDODk1MUY5OTNGOUQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjAxRjk5M0YyMzAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UzNi5jcHAgKi87IH07CisJCTUzOEVDODk2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlMzcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM4MzIxRjk5M0YwQzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNy5jcHAgKi87IH07
CisJCTUzOEVDODk3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzguY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4N0IxRjk5M0Yz
MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzOC5jcHAgKi87IH07CisJCTUzOEVDODk4MUY5OTNG
OUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4N0MxRjk5M0YzMjAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UzOS5jcHAgKi87IH07CisJCTUzOEVDODk5MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNDAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM4RUM4NDkxRjk5M0YxNzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0MC5jcHAgKi87
IH07CisJCTUzOEVDODlBMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDEuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NEUxRjk5
M0YxQTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0MS5jcHAgKi87IH07CisJCTUzOEVDODlCMUY5
OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4M0IxRjk5M0YxMDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U0Mi5jcHAgKi87IH07CisJCTUzOEVDODlDMUY5OTNGOUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlNDMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM4RUM4NTIxRjk5M0YxQzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0My5jcHAg
Ki87IH07CisJCTUzOEVDODlEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NkEx
Rjk5M0YyOTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0NC5jcHAgKi87IH07CisJCTUzOEVDODlF
MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDUuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4M0MxRjk5M0YxMTAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2U0NS5jcHAgKi87IH07CisJCTUzOEVDODlGMUY5OTNGOUQwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlNDYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTM4RUM4NzcxRjk5M0YzMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0Ni5j
cHAgKi87IH07CisJCTUzOEVDOEEwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDcu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4
NjgxRjk5M0YyODAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0Ny5jcHAgKi87IH07CisJCTUzOEVD
OEExMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDguY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NDMxRjk5M0YxNDAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U0OC5jcHAgKi87IH07CisJCTUzOEVDOEEyMUY5OTNGOUQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlNDkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM4N0QxRjk5M0YzMzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0
OS5jcHAgKi87IH07CisJCTUzOEVDOEEzMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4
RUM4MjcxRjk5M0YwNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1MC5jcHAgKi87IH07CisJCTUz
OEVDOEE0MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTEuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NDcxRjk5M0YxNjAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U1MS5jcHAgKi87IH07CisJCTUzOEVDOEE1MUY5OTNGOUQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNTIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4ODAxRjk5M0YzNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U1Mi5jcHAgKi87IH07CisJCTUzOEVDOEE2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlNTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM4MkMxRjk5M0YwOTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1My5jcHAgKi87IH07CisJ
CTUzOEVDOEE3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjkxRjk5M0YyODAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1NC5jcHAgKi87IH07CisJCTUzOEVDOEE4MUY5OTNGOUQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NkMxRjk5M0YyQTAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2U1NS5jcHAgKi87IH07CisJCTUzOEVDOEE5MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlNTYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM4ODUxRjk5M0YzQTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1Ni5jcHAgKi87IH07
CisJCTUzOEVDOEFBMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTcuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NzgxRjk5M0Yz
MDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1Ny5jcHAgKi87IH07CisJCTUzOEVDOEFCMUY5OTNG
OUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MkYxRjk5M0YwQTAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U1OC5jcHAgKi87IH07CisJCTUzOEVDOEFDMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNTkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM4RUM4NkIxRjk5M0YyOTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1OS5jcHAgKi87
IH07CisJCTUzOEVDOEFEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjAuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NzkxRjk5
M0YzMTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2MC5jcHAgKi87IH07CisJCTUzOEVDOEFFMUY5
OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4N0UxRjk5M0YzMzAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U2MS5jcHAgKi87IH07CisJCTUzOEVDOEFGMUY5OTNGOUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlNjIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM4RUM4NUExRjk5M0YyMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2Mi5jcHAg
Ki87IH07CisJCTUzOEVDOEIwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjEx
Rjk5M0YyNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2My5jcHAgKi87IH07CisJCTUzOEVDOEIx
MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NDIxRjk5M0YxNDAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2U2NC5jcHAgKi87IH07CisJCTUzOEVDOEIyMUY5OTNGOUQwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlNjUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTM4RUM4MzAxRjk5M0YwQjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2NS5j
cHAgKi87IH07CisJCTUzOEVDOEIzMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjYu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4
NEYxRjk5M0YxQTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2Ni5jcHAgKi87IH07CisJCTUzOEVD
OEI0MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjcuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NTAxRjk5M0YxQjAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U2Ny5jcHAgKi87IH07CisJCTUzOEVDOEI1MUY5OTNGOUQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlNjguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM4NTExRjk5M0YxQzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2
OC5jcHAgKi87IH07CisJCTUzOEVDOEI2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4
RUM4MzYxRjk5M0YwRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2OS5jcHAgKi87IH07CisJCTUz
OEVDOEI3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzAuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjMxRjk5M0YyNTAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U3MC5jcHAgKi87IH07CisJCTUzOEVDOEI4MUY5OTNGOUQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNzEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NEQxRjk5M0YxOTAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U3MS5jcHAgKi87IH07CisJCTUzOEVDOEI5MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlNzIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM4ODExRjk5M0YzNTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3Mi5jcHAgKi87IH07CisJ
CTUzOEVDOEJBMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4M0QxRjk5M0YxMTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3My5jcHAgKi87IH07CisJCTUzOEVDOEJCMUY5OTNGOUQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjIxRjk5M0YyNDAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2U3NC5jcHAgKi87IH07CisJCTUzOEVDOEJDMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlNzUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM4NUUxRjk5M0YyMjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3NS5jcHAgKi87IH07
CisJCTUzOEVDOEJEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzYuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4M0UxRjk5M0Yx
MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3Ni5jcHAgKi87IH07CisJCTUzOEVDOEJFMUY5OTNG
OUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjQxRjk5M0YyNjAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U3Ny5jcHAgKi87IH07CisJCTUzOEVDOEJGMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNzguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM4RUM4NUQxRjk5M0YyMjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3OC5jcHAgKi87
IH07CisJCTUzOEVDOEMwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzkuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MzcxRjk5
M0YwRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3OS5jcHAgKi87IH07CisJCTUzOEVDOEMxMUY5
OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NDAxRjk5M0YxMzAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U4MC5jcHAgKi87IH07CisJCTUzOEVDOEMyMUY5OTNGOUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlODEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM4RUM4NjUxRjk5M0YyNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4MS5jcHAg
Ki87IH07CisJCTUzOEVDOEMzMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODIuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4ODIx
Rjk5M0YzNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4Mi5jcHAgKi87IH07CisJCTUzOEVDOEM0
MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MjYxRjk5M0YwNTAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2U4My5jcHAgKi87IH07CisJCTUzOEVDOEM1MUY5OTNGOUQwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlODQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTM4RUM4NDQxRjk5M0YxNTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4NC5j
cHAgKi87IH07CisJCTUzOEVDOEM2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4
NTYxRjk5M0YxRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4NS5jcHAgKi87IH07CisJCTUzOEVD
OEM3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODYuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NkQxRjk5M0YyQTAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U4Ni5jcHAgKi87IH07CisJCTUzOEVDOEM4MUY5OTNGOUQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlODcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTM4RUM4NTMxRjk5M0YxRDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4
Ny5jcHAgKi87IH07CisJCTUzOEVDOEM5MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4
RUM4MkUxRjk5M0YwQTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4OC5jcHAgKi87IH07CisJCTUz
OEVDOENBMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODkuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MzExRjk5M0YwQjAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U4OS5jcHAgKi87IH07CisJCTUzOEVDOENCMUY5OTNGOUQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlOTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NkUxRjk5M0YyQjAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U5MC5jcHAgKi87IH07CisJCTUzOEVDOENDMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlOTEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM4NTkxRjk5M0YyMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5MS5jcHAgKi87IH07CisJ
CTUzOEVDOENEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NkYxRjk5M0YyQjAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5Mi5jcHAgKi87IH07CisJCTUzOEVDOENFMUY5OTNGOUQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjcxRjk5M0YyNzAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2U5My5jcHAgKi87IH07CisJCTUzOEVDOENGMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlOTQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM4NDExRjk5M0YxMzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5NC5jcHAgKi87IH07
CisJCTUzOEVDOEQwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTUuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NDUxRjk5M0Yx
NTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5NS5jcHAgKi87IH07CisJCTUzOEVDOEQxMUY5OTNG
OUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NzAxRjk5M0YyQzAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U5Ni5jcHAgKi87IH07CisJCTUzOEVDOEQyMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlOTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTM4RUM4MzMxRjk5M0YwQzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5Ny5jcHAgKi87
IH07CisJCTUzOEVDOEQzMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTguY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NzQxRjk5
M0YyRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5OC5jcHAgKi87IH07CisJCTUzOEVDOEQ0MUY5
OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4MkQxRjk5M0YwOTAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U5OS5jcHAgKi87IH07CisJCTUzOEVDOEQ1MUY5OTNGOUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTAwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDUzOEVDODcxMUY5OTNGMkMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTAwLmNw
cCAqLzsgfTsKKwkJNTM4RUM4RDYxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMDEu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4
MjgxRjk5M0YwNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMDEuY3BwICovOyB9OworCQk1MzhF
QzhENzFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEwMi5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzg1ODFGOTkzRjFGMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTEwMi5jcHAgKi87IH07CisJCTUzOEVDOEQ4MUY5OTNGOUUwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTAzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDODM0MUY5OTNGMEQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTAzLmNwcCAqLzsgfTsKKwkJNTM4RUM4RDkxRjk5M0Y5RTAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UxMDQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTM4RUM4NTQxRjk5M0YxRDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMDQuY3BwICovOyB9
OworCQk1MzhFQzhEQTFGOTkzRjlFMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEwNS5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzg0NjFGOTkz
RjE2MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEwNS5jcHAgKi87IH07CisJCTUzOEVDOERCMUY5
OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA2LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDODczMUY5OTNGMkQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTA2LmNwcCAqLzsgfTsKKwkJNTM4RUM4REMxRjk5M0Y5RTAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMDcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTM4RUM4NzUxRjk5M0YyRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMDcu
Y3BwICovOyB9OworCQk1MzhFQzhERDFGOTkzRjlFMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEw
OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhF
QzgzODFGOTkzRjBGMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEwOC5jcHAgKi87IH07CisJCTUz
OEVDOERFMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDODcyMUY5OTNGMkQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTA5LmNwcCAqLzsgfTsKKwkJNTM4RUM4REYxRjk5M0Y5RTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NUMxRjk5M0YyMTAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UxMTAuY3BwICovOyB9OworCQk1MzhFQzhFMDFGOTkzRjlFMDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTExMS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MzhFQzgyOTFGOTkzRjA3MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTExMS5jcHAgKi87
IH07CisJCTUzOEVDOEUxMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTEyLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDODgzMUY5
OTNGMzcwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTEyLmNwcCAqLzsgfTsKKwkJNTM4RUM4RTIx
Rjk5M0Y5RTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4ODQxRjk5M0YzODAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMTMuY3BwICovOyB9OworCQk1MzhFQzhFMzFGOTkzRjlFMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTExNC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MzhFQzgzOTFGOTkzRjBGMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEx
NC5jcHAgKi87IH07CisJCTUzOEVDOEU0MUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTE1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUz
OEVDODQ4MUY5OTNGMTcwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE1LmNwcCAqLzsgfTsKKwkJ
NTM4RUM4RTUxRjk5M0Y5RTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTYuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM4NjYxRjk5M0YyNzAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTYuY3BwICovOyB9OworCQk1MzhFQzkxMTFGOTlCNjk4
MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTExNy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzkwODFGOTlCNjRGMDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTExNy5jcHAgKi87IH07CisJCTUzOEVDOTEyMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMTE4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDUzOEVDOTBFMUY5OUI2NTQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE4LmNwcCAq
LzsgfTsKKwkJNTM4RUM5MTMxRjk5QjY5ODAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTM4RUM5MDUx
Rjk5QjY0QjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTkuY3BwICovOyB9OworCQk1MzhFQzkx
NDFGOTlCNjk4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyMC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzkwOTFGOTlCNjRGMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTEyMC5jcHAgKi87IH07CisJCTUzOEVDOTE1MUY5OUI2OTgwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTIxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUzOEVDOTBCMUY5OUI2NTEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTIxLmNwcCAqLzsgfTsKKwkJNTM4RUM5MTYxRjk5QjY5ODAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxMjIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTM4RUM5MEYxRjk5QjY1NTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjIuY3BwICovOyB9Owor
CQk1MzhFQzkxNzFGOTlCNjk4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyMy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzkwNjFGOTlCNjRE
MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyMy5jcHAgKi87IH07CisJCTUzOEVDOTE4MUY5OUI2
OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDOTBEMUY5OUI2NTMwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMTI0LmNwcCAqLzsgfTsKKwkJNTM4RUM5MTkxRjk5QjY5ODAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UxMjUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTM4RUM5MDIxRjk5QjY0QTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjUuY3Bw
ICovOyB9OworCQk1MzhFQzkxQTFGOTlCNjk4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyNi5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhFQzkw
QTFGOTlCNjUwMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyNi5jcHAgKi87IH07CisJCTUzOEVD
OTFCMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI3LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDOTA3MUY5OUI2NEUwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTI3LmNwcCAqLzsgfTsKKwkJNTM4RUM5MUMxRjk5QjY5ODAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxMjguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTM4RUM5MEMxRjk5QjY1MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxMjguY3BwICovOyB9OworCQk1MzhFQzkxRDFGOTlCNjk4MDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTEyOS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1MzhFQzkxMDFGOTlCNjU2MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyOS5jcHAgKi87IH07
CisJCTUzOEVDOTFFMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTMwLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUzOEVDOTA0MUY5OUI2
NEEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTMwLmNwcCAqLzsgfTsKKwkJNTM4RUM5MzIxRjk5
QjlGNzAwNEQyMkE4IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0I0RUE2ODE0QzkzNDg0MDBDOEY1QkYgLyog
SlNNYWxsb2NTdGF0aXN0aWNzLmNwcCAqLzsgfTsKKwkJNTM4RUM5MzMxRjk5QjlGNzAwNEQyMkE4
IC8qIEpTTW9ja0NETUZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENERjRCNzJFMUUwM0NBNEEwMEUyMzVBMiAvKiBKU01vY2tDRE1GYWN0b3J5
LmggKi87IH07CisJCTUzOEVDOTM0MUY5OUI5RjcwMDREMjJBOCAvKiBKU01vY2tQYWdlT3Zlcmxh
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ2RjNF
OTMxQzFGODU1NTAwNjFEQkQ0IC8qIEpTTW9ja1BhZ2VPdmVybGF5LmggKi87IH07CisJCTUzOEVD
OTNFMUY5OUJGNUEwMDREMjJBOCAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NzY2NEZBMTgz
RTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCAqLzsgfTsK
KwkJNTM4RjEwQTgxRjkwMjJBNDAwNTEwMkNFIC8qIFNvZnRMaW5rTGlieHNsdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MzhGMTBBMzFGOTAwQkRD
MDA1MTAyQ0UgLyogU29mdExpbmtMaWJ4c2x0LmNwcCAqLzsgfTsKKwkJNTNCODk1QUYxOURDN0VE
OTAwOUNBQTkzIC8qIE1pY3JvdGFza3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUzQjg5NUFEMTlEQzdDMzcwMDlDQUE5MyAvKiBNaWNyb3Rhc2tzLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTNDODI5
OEUxM0Q4RDkyNzAwREUyREVCIC8qIFJlbmRlckZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1M0M4Mjk4QzEzRDhEOTI3MDBERTJERUIg
LyogUmVuZGVyRmxleGlibGVCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk1M0UyOUU1RjE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJuYWxTZXR0
aW5nc0dlbmVyYXRlZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTNFMjlFNUQxNjdBOEExOTAwNTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0
ZWQuaCAqLzsgfTsKKwkJNTNFRDNGREUxNjdBODhFNzAwNjc2MkU2IC8qIEpTSW50ZXJuYWxTZXR0
aW5nc0dlbmVyYXRlZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1M0VEM0ZEQzE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcCAqLzsgfTsKKwkJNTNFRDNGREYxNjdBODhFNzAwNjc2MkU2IC8qIEpTSW50ZXJu
YWxTZXR0aW5nc0dlbmVyYXRlZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTNFRDNGREQxNjdBODhFNzAwNjc2MkU2IC8qIEpTSW50ZXJuYWxTZXR0aW5n
c0dlbmVyYXRlZC5oICovOyB9OworCQk1NTA2NDBBRjI0MDc1ODJEMDBBQUUwNDUgLyogUGxhdGZv
cm1JbWFnZUJ1ZmZlckJhY2tlbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU1MDY0MEFEMjQwNzU2REEwMEFBRTA0NSAvKiBQbGF0Zm9ybUltYWdlQnVm
ZmVyQmFja2VuZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTU1MDY0MEIwMjQwNzU4N0UwMEFBRTA0NSAvKiBJbWFnZUJ1ZmZlckNHQmFja2VuZC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzJCQUMzQUQy
M0UxRTU0NTAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQ0dCYWNrZW5kLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTUwQTBCQ0EwODVGNjAzOTAwNzM1
M0Q2IC8qIFF1YWxpZmllZE5hbWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU1MEEwQkM4MDg1RjYwMzkwMDczNTNENiAvKiBRdWFsaWZpZWROYW1lLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTU0Njc1
N0IxRkQyMTJBOTAwM0IxMEIwIC8qIEltYWdlU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NTQ2NzU3ODFGRDFGQzFBMDAzQjEwQjAgLyogSW1h
Z2VTb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1NTUwQ0I0MjFFOTU1RTNDMDAxMTFBQTAgLyogSW1hZ2VUeXBlcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTU1MENCNDExRTk1NUUzQzAwMTEx
QUEwIC8qIEltYWdlVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1NTUxMzAwMTFFN0NDQ0NCMDBBNjlFMzggLyogRGVjb2RpbmdPcHRpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NTUxMzAw
MDFFN0NDQ0NBMDBBNjlFMzggLyogRGVjb2RpbmdPcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTU1Qjg3RUQxQ0FBRjBBQjAwMzQ5NDI1
IC8qIEltYWdlRGVjb2RlckNHLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1NTVCODdFQjFDQUFGMEFCMDAzNDk0MjUgLyogSW1hZ2VEZWNvZGVyQ0cuaCAq
LzsgfTsKKwkJNTU2QzdDNEIyMjEyMzk5NzAwOUIwNkNBIC8qIFJlbmRlcmluZ1VwZGF0ZVNjaGVk
dWxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTU2
QzdDNDcyMjEyMzk0MjAwOUIwNkNBIC8qIFJlbmRlcmluZ1VwZGF0ZVNjaGVkdWxlci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU1NzZBNTY1MUQ4
OEE3MDgwMENDQzA0QyAvKiBJbWFnZUZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1NTc2QTU2MzFEODhBNzA4MDBDQ0MwNEMgLyogSW1hZ2VGcmFt
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU1
ODQ3NjVBMjQ1M0YzMzQwMDlGNTUwQyAvKiBSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU1ODQ3NjU4MjQ1M0FC
QzIwMDlGNTUwQyAvKiBSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NUEzMzZGOTFEODIxRTNDMDAyMkM0
QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDU1QTMzNkY4MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdT
dG9yZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTU1QUQwOTNFMjQwODk2MzUwMERFNEQyRiAvKiBEaXNwbGF5TGlzdEltYWdlQnVmZmVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MkVBMDlGNzIzRkND
QjNEMDA4NTA0QTUgLyogRGlzcGxheUxpc3RJbWFnZUJ1ZmZlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU1QUQwOTQwMjQwODk2NDAwMERFNEQy
RiAvKiBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MkVBMDlGOTIzRkNDQzZBMDA4NTA0QTUgLyogRGlzcGxh
eUxpc3REcmF3aW5nQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTU1QUQwOTQxMjQwODk2NEEwMERFNEQyRiAvKiBDb25jcmV0ZUltYWdl
QnVmZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
MkJBQzNBNzIzRTE3MzI4MDA4RDc0MUMgLyogQ29uY3JldGVJbWFnZUJ1ZmZlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU1QUYxNEU2MUVBQUM1
OUIwMDI2RUVBQSAvKiBVVElSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTVBRjE0RTQxRUFBQzU5QjAwMjZFRUFBIC8qIFVUSVJlZ2lzdHJ5
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTVC
QkQ0MjkyNERCNTYwNDAwQkI2RTBDIC8qIEltYWdlVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NUJCRDQyODI0REI1M0EyMDBCQjZFMEMg
LyogSW1hZ2VVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1NURDQzUyODIyNDA3QjIwMDBDMjZFMzIgLyogU1ZHUHJpbWl0aXZlTGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTVEQ0M1
MjUyMjQwNzQ5RTAwQzI2RTMyIC8qIFNWR1ByaW1pdGl2ZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NURDQzUyOTIyNDA3QjJBMDBDMjZF
MzIgLyogU1ZHTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNTVEQ0M1MjMyMjQwNzNGRTAwQzI2RTMyIC8qIFNWR0xpc3QuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NUVDOTU5OTIwNkFBN0EwMDA3
REQwQTkgLyogUGFpbnRGcmVxdWVuY3lUcmFja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NUVDOTU5NzIwNjlDOTJEMDA3REQwQTkgLyogUGFpbnRG
cmVxdWVuY3lUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTVGQTdGRkIyMTEwRUNENzAwNUFFRkU3IC8qIFNWR1pvb21BbmRQYW5UeXBl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NUZBN0ZG
QTIxMTBFQ0Q3MDA1QUVGRTcgLyogU1ZHWm9vbUFuZFBhblR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NzA0NDA1QTFFNTM5MzYyMDAzNTY2
MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDU3MDQ0MDU5MUU1MzkzNjIwMDM1NjYwMSAvKiBKU0Flc0NiY0NmYlBh
cmFtcy5oICovOyB9OworCQk1NzA2QTY5NjFEREU1Qzk1MDBBMDNCMTQgLyogQ3J5cHRvQWxnb3Jp
dGhtUnNhT2FlcFBhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTcwNkE2OTUxRERFNUM5NTAwQTAzQjE0IC8qIENyeXB0b0FsZ29yaXRobVJzYU9h
ZXBQYXJhbXMuaCAqLzsgfTsKKwkJNTcwNkE2OTgxRERFNUU0NjAwQTAzQjE0IC8qIEpTUnNhT2Fl
cFBhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTcwNkE2OTcxRERFNUU0NjAwQTAzQjE0IC8qIEpTUnNhT2FlcFBhcmFtcy5oICovOyB9OworCQk1
NzA5M0QxMzI0Qzk3QzhGMDA4NkM1MkQgLyogRmV0Y2hSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEzMDE1RDYxQzdCNTcwNDAwMDkxQzZF
IC8qIEZldGNoUmVzcG9uc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1NzEyNTI2OTFFNTI0RUIxMDA4RkYzNjkgLyogQ3J5cHRvQWxnb3JpdGht
QUVTX0NGQi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTcxMjUyNjgxRTUyNEVCMTAwOEZGMzY5IC8qIENyeXB0b0FsZ29yaXRobUFFU19DRkIuaCAqLzsg
fTsKKwkJNTcxNTJCNUEyMUNCM0U4ODAwMEMzN0NBIC8qIEFwZHVDb21tYW5kLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzE1MkI1ODIxQ0IyRTNCMDAw
QzM3Q0EgLyogQXBkdUNvbW1hbmQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk1NzE1MkI1QzIxQ0MxOTAyMDAwQzM3Q0EgLyogQXBkdVJlc3BvbnNl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzE1MkI1
NjIxQ0IyRTNBMDAwQzM3Q0EgLyogQXBkdVJlc3BvbnNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTcxNTJCNkUyMUNEOTk1RDAwMEMzN0NBIC8q
IFUyZkNvbW1hbmRDb25zdHJ1Y3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTcxNTJCNkMyMUNEOTk1QzAwMEMzN0NBIC8qIFUyZkNvbW1hbmRDb25z
dHJ1Y3Rvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTU3MTUyQjdDMjFERDhCQTEwMDBDMzdDQSAvKiBVMmZSZXNwb25zZUNvbnZlcnRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcxNTJCN0EyMURE
OEJBMTAwMEMzN0NBIC8qIFUyZlJlc3BvbnNlQ29udmVydGVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTcxNTJCODAyMUREQTU4MTAwMEMzN0NB
IC8qIFdlYkF1dGhlbnRpY2F0aW9uVXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDU3MTUyQjdFMjFEREE1ODEwMDBDMzdDQSAvKiBXZWJBdXRoZW50
aWNhdGlvblV0aWxzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNTcxNTYxMEIyMzRDMUI0OTAwOEZDN0FCIC8qIE1vY2tXZWJBdXRoZW50aWNhdGlv
bkNvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDU3MTU2MTA4MjM0QzFCMzEwMDhGQzdBQiAvKiBNb2NrV2ViQXV0aGVudGljYXRpb25D
b25maWd1cmF0aW9uLmggKi87IH07CisJCTU3MTU2MTBDMjM0QzFDQTEwMDhGQzdBQiAvKiBNb2Nr
V2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzE1NjEwODIzNEMxQjMxMDA4RkM3QUIgLyogTW9ja1dl
YkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3MTU2MTE0MjM0QzdGRDYwMDhGQzdBQiAvKiBKU01v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcxNTYxMTEyMzRDN0ZCQzAwOEZDN0FCIC8qIEpT
TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5jcHAgKi87IH07CisJCTU3MTU2MTE1
MjM0QzdGREMwMDhGQzdBQiAvKiBKU01vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MTU2MTEw
MjM0QzdGQkMwMDhGQzdBQiAvKiBKU01vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24u
aCAqLzsgfTsKKwkJNTcxRjIxODkxREE1N0M1NDAwNUM5RUZEIC8qIEpTU3VidGxlQ3J5cHRvLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzFGMjE4ODFE
QTU3QzU0MDA1QzlFRkQgLyogSlNTdWJ0bGVDcnlwdG8uaCAqLzsgfTsKKwkJNTcyMDkzRDMxRERD
RUI5QTAwMzEwQUIwIC8qIENyeXB0b0FsZ29yaXRobUFlc0NiY0NmYlBhcmFtcy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcyMDkzRDIxRERDRUI5QTAw
MzEwQUIwIC8qIENyeXB0b0FsZ29yaXRobUFlc0NiY0NmYlBhcmFtcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3MjFBOTg3MUVDRTUzQjEwMDgx
Mjk1QSAvKiBDcnlwdG9EaWdlc3RBbGdvcml0aG0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MjFBOTg2MUVDRTUzQjEwMDgxMjk1QSAvKiBDcnlwdG9E
aWdlc3RBbGdvcml0aG0uaCAqLzsgfTsKKwkJNTcyMUE5OEIxRUNFNTcwNDAwODEyOTVBIC8qIENy
eXB0b0FsZ29yaXRobVJzYVBzc1BhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTcyMUE5ODgxRUNFNTcwNDAwODEyOTVBIC8qIENyeXB0b0FsZ29y
aXRobVJzYVBzc1BhcmFtcy5oICovOyB9OworCQk1NzI1NzZENjIzQTg4NzJCMDA5MDk1NDAgLyog
Q3J5cHRvS2V5Rm9ybWF0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3QzlBQ0FDOTFGNDBCOTZBMDBGM0FBMDkgLyogQ3J5cHRvS2V5Rm9ybWF0LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTcyQTdGMjEx
QzZFNTcxOTAwOUM2MTQ5IC8qIFNpbXVsYXRlZENsaWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzJBN0YyMDFDNkU1NzE5MDA5QzYxNDkgLyogU2lt
dWxhdGVkQ2xpY2suaCAqLzsgfTsKKwkJNTcyQjQwMUYyMTc1N0E2NDAwMEFENDNFIC8qIERldmlj
ZVJlcXVlc3RDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDU3MkI0MDFEMjE3NTdBNjQwMDBBRDQzRSAvKiBEZXZpY2VSZXF1ZXN0Q29udmVy
dGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
NTcyQjQwMkMyMTc2OTAyMDAwMEFENDNFIC8qIEpTVXNlclZlcmlmaWNhdGlvblJlcXVpcmVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzJCNDAy
QTIxNzY5MDFGMDAwQUQ0M0UgLyogSlNVc2VyVmVyaWZpY2F0aW9uUmVxdWlyZW1lbnQuaCAqLzsg
fTsKKwkJNTcyQjQwMzYyMTc2QTkyMjAwMEFENDNFIC8qIFVzZXJWZXJpZmljYXRpb25SZXF1aXJl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcy
QjQwMjMyMTc2OEQ4NTAwMEFENDNFIC8qIFVzZXJWZXJpZmljYXRpb25SZXF1aXJlbWVudC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3MkI0MDNB
MjE3NzI1ODEwMDBBRDQzRSAvKiBEZXZpY2VSZXNwb25zZUNvbnZlcnRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcyQjQwMzcyMTc3MjU2QzAwMEFE
NDNFIC8qIERldmljZVJlc3BvbnNlQ29udmVydGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTcyQjQwNDAyMTc4MDE3MTAwMEFENDNFIC8qIEF1
dGhlbnRpY2F0b3JTdXBwb3J0ZWRPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1NzJCNDAzRTIxNzgwMTcwMDAwQUQ0M0UgLyogQXV0aGVudGlj
YXRvclN1cHBvcnRlZE9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk1NzJCNDA0MjIxNzgxMTRBMDAwQUQ0M0UgLyogQXV0aGVudGljYXRv
ckdldEluZm9SZXNwb25zZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTcyQjQwM0MyMTc3RkI2MTAwMEFENDNFIC8qIEF1dGhlbnRpY2F0b3JHZXRJbmZv
UmVzcG9uc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1NzMwM0JCOTIwMDZDNkVFMDAzNTU5NjUgLyogQ0JPUlZhbHVlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0JCNDIwMDZDNkVEMDAzNTU5
NjUgLyogQ0JPUlZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNTczMDNCQkEyMDA2QzZFRTAwMzU1OTY1IC8qIENCT1JXcml0ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MzAzQkI1MjAwNkM2
RUQwMDM1NTk2NSAvKiBDQk9SV3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTczMDNCQkIyMDA2QzZFRTAwMzU1OTY1IC8qIENCT1JCaW5h
cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MzAz
QkI2MjAwNkM2RUQwMDM1NTk2NSAvKiBDQk9SQmluYXJ5LmggKi87IH07CisJCTU3MzAzQkMxMjAw
NkUwMEMwMDM1NTk2NSAvKiBDQk9SUmVhZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0JCRjIwMDZFMDBDMDAzNTU5NjUgLyogQ0JPUlJlYWRl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3
MzAzQkQyMjAwODdBODMwMDM1NTk2NSAvKiBBdXRoZW50aWNhdG9yUmVzcG9uc2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MzAzQkNGMjAwODdBODMw
MDM1NTk2NSAvKiBBdXRoZW50aWNhdG9yUmVzcG9uc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NzMwM0JFMTIwMDk1RDYxMDAzNTU5NjUgLyog
SlNBdXRoZW50aWNhdG9yUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDU3MzAzQkREMjAwOTVCMjYwMDM1NTk2NSAvKiBKU0F1dGhlbnRpY2F0
b3JSZXNwb25zZS5oICovOyB9OworCQk1NzMwM0JFOTIwMDk3NDhEMDAzNTU5NjUgLyogUHVibGlj
S2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTczMDNCRTYyMDA5NzQ3QTAwMzU1OTY1IC8qIFB1YmxpY0tl
eUNyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk1NzMwM0JFQjIwMDk3RjQwMDAzNTU5NjUgLyogUHVibGlj
S2V5Q3JlZGVudGlhbFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDU3MzAzQkVBMjAwOTdGNDAwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFs
VHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTU3MzAzQkVGMjAwOTgwQzYwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRv
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTczMDNC
RUMyMDA5ODBCRjAwMzU1OTY1IC8qIFB1YmxpY0tleUNyZWRlbnRpYWxEZXNjcmlwdG9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTczMDNCRjQy
MDA5OTA0NjAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MzAzQkYyMjAwOTkw
NDUwMDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRpYWxEZXNjcmlwdG9yLmggKi87IH07CisJ
CTU3MzAzQzAwMjAwOTk1MUMwMDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRpYWxUeXBlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0JGOTIw
MDk5MTM0MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsVHlwZS5oICovOyB9OworCQk1
NzMwM0MwQTIwMDk5QkFEMDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbFJlcXVlc3RPcHRp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMw
M0MwNjIwMDk5OEY4MDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25z
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTcz
MDNDMTEyMDA5OUNCMTAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbFJlcXVlc3RPcHRp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMw
M0MwQzIwMDk5Qzc1MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVzdE9wdGlv
bnMuaCAqLzsgfTsKKwkJNTczMDNDMTkyMDA5QTJGMzAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3Jl
ZGVudGlhbENyZWF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNTczMDNDMTMyMDA5QTI1NzAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3Jl
ZGVudGlhbENyZWF0aW9uT3B0aW9ucy5oICovOyB9OworCQk1NzMwM0MxRjIwMDlBQjQyMDAzNTU5
NjUgLyogQXV0aGVudGljYXRvckF0dGVzdGF0aW9uUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MzAzQzFCMjAwOUE5ODYwMDM1NTk2NSAv
KiBBdXRoZW50aWNhdG9yQXR0ZXN0YXRpb25SZXNwb25zZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3MzAzQzIyMjAwOUFGMDMwMDM1NTk2NSAv
KiBKU0F1dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJlc3BvbnNlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0MyMTIwMDlBRUY2MDAzNTU5NjUgLyog
SlNBdXRoZW50aWNhdG9yQXR0ZXN0YXRpb25SZXNwb25zZS5oICovOyB9OworCQk1NzMwM0MyQzIw
MDlCNEE4MDAzNTU5NjUgLyogQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0MyNzIwMDlCMkZD
MDAzNTU5NjUgLyogQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTczMDNDMkYyMDA5QjdFMTAw
MzU1OTY1IC8qIEpTQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzMwM0MyRDIwMDlCN0Q5MDAzNTU5
NjUgLyogSlNBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuaCAqLzsgfTsKKwkJNTczMDND
NDYyMDEwNUQyRjAwMzU1OTY1IC8qIEF1dGhlbnRpY2F0b3JDb29yZGluYXRvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTczMDNDNDMyMDEwNUIzRDAw
MzU1OTY1IC8qIEF1dGhlbnRpY2F0b3JDb29yZGluYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3MzQ4OTM5MURBQzZCNkUwMERDMDY2NyAv
KiBDcnlwdG9BbGdvcml0aG1QYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1NzM0ODkzODFEQUM2QjZEMDBEQzA2NjcgLyogQ3J5cHRvQWxn
b3JpdGhtUGFyYW1ldGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTU3MzlFMTJGMURBQzdGNzgwMEUxNDM4MyAvKiBKU0NyeXB0b0FsZ29yaXRo
bVBhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDU3MzlFMTJFMURBQzdGNzgwMEUxNDM4MyAvKiBKU0NyeXB0b0FsZ29yaXRobVBhcmFtZXRl
cnMuaCAqLzsgfTsKKwkJNTczRjUzMzIyMTY4MDZFMTAwNDU1ODdBIC8qIEZpZG9IaWRNZXNzYWdl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0JBRjI4
QTIxNjdEMzAzMDA4RTk1NEUgLyogRmlkb0hpZE1lc3NhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NzNGNTMzNzIxNjgwRDE1MDA0NTU4N0Eg
LyogRmlkb1BhcnNpbmdVdGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTczRjUzMzUyMTY4MEQxNDAwNDU1ODdBIC8qIEZpZG9QYXJzaW5nVXRpbHMu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NzRG
NTVFMTIwNEYzQjIzMDAyOTQ4QzYgLyogV2ViQXV0aGVudGljYXRpb25Db25zdGFudHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3NEY1NURDMjA0RjM3
MzIwMDI5NDhDNiAvKiBXZWJBdXRoZW50aWNhdGlvbkNvbnN0YW50cy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3NTBBOTc1MUU2OEQwMDAwMDcw
NUM0QSAvKiBDcnlwdG9LZXlFQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTc1MEE5NzMxRTY4RDAwMDAwNzA1QzRBIC8qIENyeXB0b0tleUVDLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTc1MEE5N0Ux
RTZBMTNFRjAwNzA1QzRBIC8qIENyeXB0b0FsZ29yaXRobUVjS2V5UGFyYW1zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzUwQTk3RDFFNkExM0VGMDA3
MDVDNEEgLyogQ3J5cHRvQWxnb3JpdGhtRWNLZXlQYXJhbXMuaCAqLzsgfTsKKwkJNTc1MEE5ODIx
RTZBMTUwODAwNzA1QzRBIC8qIEpTRWNLZXlQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3NTBBOTgwMUU2QTE1MDgwMDcwNUM0QSAvKiBKU0Vj
S2V5UGFyYW1zLmggKi87IH07CisJCTU3NTBBOTg3MUU2QTIxNjgwMDcwNUM0QSAvKiBDcnlwdG9B
bGdvcml0aG1FQ0RILmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1NzUwQTk4NTFFNkEyMTY4MDA3MDVDNEEgLyogQ3J5cHRvQWxnb3JpdGhtRUNESC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3NTMzRTA4
MjRDNkM1OTgwMDNFRjJEMyAvKiBGZXRjaFJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRjU0Rjg4MUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRj
aFJlcXVlc3QuaCAqLzsgfTsKKwkJNTc1NDcxOUYxRUNFNjI4MzAwREQ2M0IyIC8qIEpTUnNhUHNz
UGFyYW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
NzU0NzE5OTFFQ0U1RDJBMDBERDYzQjIgLyogSlNSc2FQc3NQYXJhbXMuaCAqLzsgfTsKKwkJNTc1
ODU5NjEyMzlGMTI0RDAwQzc0NTcyIC8qIEpTQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50
T3V0cHV0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTc1ODU5NUUyMzlGMTE3MzAwQzc0NTcyIC8qIEpTQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xp
ZW50T3V0cHV0cy5oICovOyB9OworCQk1NzU4NTk2QzIzOUYzMjFDMDBDNzQ1NzIgLyogQXV0aGVu
dGljYXRpb25FeHRlbnNpb25zQ2xpZW50T3V0cHV0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTc1ODU5NjUyMzlGMTRDQzAwQzc0NTcyIC8qIEF1dGhl
bnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1NzU4NTk3QzIzQTFGQ0YzMDBDNzQ1NzIgLyog
UGluLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzU4
NTk3OTIzQTFGQ0YyMDBDNzQ1NzIgLyogUGluLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTc2MDgyNzIyMDIxNUE1NTAwMTE2Njc4IC8qIEF1dGhl
bnRpY2F0b3JDb29yZGluYXRvckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTc2MDgyNzAyMDIxNTEzRjAwMTE2Njc4IC8qIEF1dGhlbnRpY2F0
b3JDb29yZGluYXRvckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTU3NjgxNDJBMUU2Rjk5QzEwMEU3Nzc1NCAvKiBDcnlwdG9BbGdvcml0
aG1FY2RoS2V5RGVyaXZlUGFyYW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1NzY4MTQyOTFFNkY5OUMxMDBFNzc3NTQgLyogQ3J5cHRvQWxnb3JpdGht
RWNkaEtleURlcml2ZVBhcmFtcy5oICovOyB9OworCQk1NzY4MTQ0MTFFNzA5RkE0MDBFNzc3NTQg
LyogSlNFY2RoS2V5RGVyaXZlUGFyYW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1NzY4MTQzRTFFNzA5QzM2MDBFNzc3NTQgLyogSlNFY2RoS2V5RGVy
aXZlUGFyYW1zLmggKi87IH07CisJCTU3NjgxNDQ1MUU3MENCMUYwMEU3Nzc1NCAvKiBKU0Flc0tl
eVBhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTc2ODE0NDMxRTcwQ0IxMDAwRTc3NzU0IC8qIEpTQWVzS2V5UGFyYW1zLmggKi87IH07CisJCTU3
NjhFNDM0MURCNzUyNDUwMEQwQTRGNyAvKiBKU1JzYUhhc2hlZEtleUdlblBhcmFtcy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTc2OEU0MzMxREI3NTI0
NTAwRDBBNEY3IC8qIEpTUnNhSGFzaGVkS2V5R2VuUGFyYW1zLmggKi87IH07CisJCTU3NzQ4MzEy
MURBREM1NUQwMDcxNkVGOSAvKiBDcnlwdG9BbGdvcml0aG1BZXNLZXlQYXJhbXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3NzQ4MzExMURBREM1NUQw
MDcxNkVGOSAvKiBDcnlwdG9BbGdvcml0aG1BZXNLZXlQYXJhbXMuaCAqLzsgfTsKKwkJNTc3NDgz
MTkxREI0NDkxRjAwNzE2RUY5IC8qIENyeXB0b0FsZ29yaXRobUhtYWNLZXlQYXJhbXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3NzQ4MzE4MURCNDQ5
MUYwMDcxNkVGOSAvKiBDcnlwdG9BbGdvcml0aG1IbWFjS2V5UGFyYW1zLmggKi87IH07CisJCTU3
Nzc3RTM5MUU3MTIxN0QwMEVFMUE4RCAvKiBDcnlwdG9BbGdvcml0aG1QQktERjIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3Nzc3RTM3MUU3MTIxN0Qw
MEVFMUE4RCAvKiBDcnlwdG9BbGdvcml0aG1QQktERjIuaCAqLzsgfTsKKwkJNTc3OEJEODIxREE0
ODA2QzAwOUUzMDA5IC8qIFN1YnRsZUNyeXB0by5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNTc3OEJEODExREE0ODAyQzAwOUUzMDA5IC8qIFN1YnRsZUNy
eXB0by5oICovOyB9OworCQk1NzkwOTk2RDFFQ0QyM0RBMDBGQzA3NjggLyogQ3J5cHRvQWxnb3Jp
dGhtUlNBX1BTUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTc5MDk5NkIxRUNEMjNEQTAwRkMwNzY4IC8qIENyeXB0b0FsZ29yaXRobVJTQV9QU1MuaCAq
LzsgfTsKKwkJNTc5NTdDQTkxRTk3MURFMDAwODA3MkFCIC8qIENyeXB0b0FsZ29yaXRobUhLREYu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3OTU3Q0E3
MUU5NzFERTAwMDgwNzJBQiAvKiBDcnlwdG9BbGdvcml0aG1IS0RGLmggKi87IH07CisJCTU3OTU3
Q0IyMUU5NzI2NDUwMDgwNzJBQiAvKiBDcnlwdG9BbGdvcml0aG1Ia2RmUGFyYW1zLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Nzk1N0NBRjFFOTcyNjQ1
MDA4MDcyQUIgLyogQ3J5cHRvQWxnb3JpdGhtSGtkZlBhcmFtcy5oICovOyB9OworCQk1Nzk1N0NC
NzFFOTcyQzc4MDA4MDcyQUIgLyogSlNIa2RmUGFyYW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Nzk1N0NCNTFFOTcyQzc4MDA4MDcyQUIgLyogSlNI
a2RmUGFyYW1zLmggKi87IH07CisJCTU3QjVGN0Y5MUU1QkU4NDAwMEYzNEY5MCAvKiBDcnlwdG9B
bGdvcml0aG1BRVNfR0NNLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1N0I1RjdGNzFFNUJFODQwMDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0dD
TS5oICovOyB9OworCQk1N0I1RjgwOTFFNUQxQTk4MDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGht
QWVzR2NtUGFyYW1zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1N0I1RjgwODFFNUQxQTk4MDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGhtQWVzR2NtUGFy
YW1zLmggKi87IH07CisJCTU3QjVGODEwMUU1RTJBNEUwMEYzNEY5MCAvKiBKU0Flc0djbVBhcmFt
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdCNUY4
MEIxRTVEMjJEQTAwRjM0RjkwIC8qIEpTQWVzR2NtUGFyYW1zLmggKi87IH07CisJCTU3QkFGMjhD
MjE2N0QzMTYwMDhFOTU0RSAvKiBGaWRvQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzhBNEMwQjIxNjdEMjk2MDBEMDhGMzQgLyogRmlk
b0NvbnN0YW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTU3QkFGMjhFMjE2N0QzMzkwMDhFOTU0RSAvKiBGaWRvSGlkUGFja2V0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NzhBNEMwQTIxNjdEMjk2
MDBEMDhGMzQgLyogRmlkb0hpZFBhY2tldC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTU3QzdBNjhDMUU1Njk2NzUwMEM2N0Q3MSAvKiBCYXNpY0Ny
ZWRlbnRpYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDU3QzdBNjhCMUU1Njk2NzUwMEM2N0Q3MSAvKiBCYXNpY0NyZWRlbnRpYWwuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1N0M3QTY5RjFFNTc5MTc4
MDBDNjdENzEgLyogSlNCYXNpY0NyZWRlbnRpYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3QzdBNjlEMUU1NzkxMEQwMEM2N0Q3MSAvKiBKU0Jhc2lj
Q3JlZGVudGlhbC5oICovOyB9OworCQk1N0QwMDE4RDFERDU0MTMyMDBFRDE5RDkgLyogSlNDcnlw
dG9LZXlVc2FnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTdEMDAxOEMxREQ1NDEzMjAwRUQxOUQ5IC8qIEpTQ3J5cHRvS2V5VXNhZ2UuaCAqLzsgfTsK
KwkJNTdEMTM1MjUyMjk0QTMzQzAwODI3NDAxIC8qIEF0dGVzdGF0aW9uQ29udmV5YW5jZVByZWZl
cmVuY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3
RDEzNTIxMjI5NDk3MzQwMDgyNzQwMSAvKiBBdHRlc3RhdGlvbkNvbnZleWFuY2VQcmVmZXJlbmNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNTdE
MTM1MkEyMjk0QUEzOTAwODI3NDAxIC8qIEpTQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50
SW5wdXRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
N0RBNDdBRDIyNDAzMkREMDAyQTQ2MTIgLyogSlNBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGll
bnRJbnB1dHMuaCAqLzsgfTsKKwkJNTdEMTM1MkMyMjk0QUEzRDAwODI3NDAxIC8qIEpTQXR0ZXN0
YXRpb25Db252ZXlhbmNlUHJlZmVyZW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTdEMTM1MjYyMjk0QTdBNzAwODI3NDAxIC8qIEpTQXR0ZXN0YXRp
b25Db252ZXlhbmNlUHJlZmVyZW5jZS5oICovOyB9OworCQk1N0Q4NDYyRTFGRUFGNjk5MDBDQTM2
ODIgLyogUHVibGljS2V5Q3JlZGVudGlhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTdEODQ2MkIxRkVBRjY4RjAwQ0EzNjgyIC8qIFB1YmxpY0tleUNy
ZWRlbnRpYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1N0Q4NDYzNTFGRUFGQ0QzMDBDQTM2ODIgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0Q4NDYzMDFG
RUFGQzJGMDBDQTM2ODIgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsLmggKi87IH07CisJCTU3REE0
N0IwMjI0MDM0RTQwMDJBNDYxMiAvKiBBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRJbnB1
dHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3REE0
N0E1MjI0MDFFMEYwMDJBNDYxMiAvKiBBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRJbnB1
dHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1
N0RDRUQ3NDIxNDMwNUYwMDAxNkI4NDcgLyogQXV0aGVudGljYXRvclJlc3BvbnNlRGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdEQ0VENzIyMTQz
MDVGMDAwMTZCODQ3IC8qIEF1dGhlbnRpY2F0b3JSZXNwb25zZURhdGEuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1N0RDRUQ5MDIxNDg3RkY3MDAx
NkI4NDcgLyogQXV0aGVudGljYXRvclRyYW5zcG9ydC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdEQ0VEOEMyMTQ4N0VEQjAwMTZCODQ3IC8qIEF1dGhl
bnRpY2F0b3JUcmFuc3BvcnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk1N0RDRUQ5ODIxNDg4MjE2MDAxNkI4NDcgLyogSlNBdXRoZW50aWNhdG9y
VHJhbnNwb3J0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1N0RDRUQ5MjIxNDg4MEM2MDAxNkI4NDcgLyogSlNBdXRoZW50aWNhdG9yVHJhbnNwb3J0Lmgg
Ki87IH07CisJCTU3RTFFNUEzMUU4QzkxQjUwMEVFMzdDOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNf
Q1RSLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0Ux
RTVBMTFFOEM5MUI1MDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NUUi5oICovOyB9Owor
CQk1N0UxRTVBNzFFOERCRDNFMDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQWVzQ3RyUGFyYW1z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0UxRTVB
NjFFOERCRDNFMDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQWVzQ3RyUGFyYW1zLmggKi87IH07
CisJCTU3RTFFNUFEMUU4REQwOUIwMEVFMzdDOSAvKiBKU0Flc0N0clBhcmFtcy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdFMUU1QUIxRThERDA5QjAw
RUUzN0M5IC8qIEpTQWVzQ3RyUGFyYW1zLmggKi87IH07CisJCTU3RTIzMzVCMURDN0Q1RTUwMEYy
OEQwMSAvKiBKU0pzb25XZWJLZXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDU3RTIzMzVBMURDN0Q1RTUwMEYyOEQwMSAvKiBKU0pzb25XZWJLZXkuaCAq
LzsgfTsKKwkJNTdFMjMzNUQxREM3RDYwODAwRjI4RDAxIC8qIEpTUnNhT3RoZXJQcmltZXNJbmZv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0UyMzM1
QzFEQzdENjA4MDBGMjhEMDEgLyogSlNSc2FPdGhlclByaW1lc0luZm8uaCAqLzsgfTsKKwkJNTdF
MjMzNjMxREM3REEyNDAwRjI4RDAxIC8qIFJzYU90aGVyUHJpbWVzSW5mby5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdFMjMzNjIxREM3REEyNDAwRjI4
RDAxIC8qIFJzYU90aGVyUHJpbWVzSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTU3RTIzMzY1MURDN0RCMUYwMEYyOEQwMSAvKiBKc29uV2Vi
S2V5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0Uy
MzM2NDFEQzdEQjFGMDBGMjhEMDEgLyogSnNvbldlYktleS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU3RTIzMzY3MURDQUIyMUMwMEYyOEQwMSAv
KiBKU0htYWNLZXlQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDU3RTIzMzY2MURDQUIyMUMwMEYyOEQwMSAvKiBKU0htYWNLZXlQYXJhbXMuaCAq
LzsgfTsKKwkJNTdFMjMzNkUxRENENDNGRDAwRjI4RDAxIC8qIENyeXB0b0FsZ29yaXRobVJzYUhh
c2hlZEltcG9ydFBhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTdFMjMzNkQxRENENDNGRDAwRjI4RDAxIC8qIENyeXB0b0FsZ29yaXRobVJzYUhh
c2hlZEltcG9ydFBhcmFtcy5oICovOyB9OworCQk1N0UyMzM3MTFEQ0Q0NjhGMDBGMjhEMDEgLyog
SlNSc2FIYXNoZWRJbXBvcnRQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDU3RTIzMzcwMURDRDQ2OEYwMEYyOEQwMSAvKiBKU1JzYUhhc2hlZElt
cG9ydFBhcmFtcy5oICovOyB9OworCQk1N0U2NTdERjFFNzEzNzNBMDBGOTQxQ0EgLyogQ3J5cHRv
S2V5UmF3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
Nzc3N0UzQjFFNzEyNDIyMDBFRTFBOEQgLyogQ3J5cHRvS2V5UmF3LmggKi87IH07CisJCTU3RTY1
N0VDMUU3MTYyRUEwMEY5NDFDQSAvKiBDcnlwdG9BbGdvcml0aG1QYmtkZjJQYXJhbXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3RTY1N0VCMUU3MTYy
RUEwMEY5NDFDQSAvKiBDcnlwdG9BbGdvcml0aG1QYmtkZjJQYXJhbXMuaCAqLzsgfTsKKwkJNTdF
NjU3RjAxRTcxNjY1NDAwRjk0MUNBIC8qIEpTUGJrZGYyUGFyYW1zLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0U2NTdFRTFFNzE2NjU0MDBGOTQxQ0Eg
LyogSlNQYmtkZjJQYXJhbXMuaCAqLzsgfTsKKwkJNTdFNjY0RkMxRTczNzAzMzAwNzY1NTM2IC8q
IENvbW1vbkNyeXB0b0RFUlV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTdFNjY0RkIxRTczNzAzMzAwNzY1NTM2IC8qIENvbW1vbkNyeXB0
b0RFUlV0aWxpdGllcy5oICovOyB9OworCQk1N0VFQUE0NzFFOUVEMkREMDA3MDExMjQgLyogQ3J5
cHRvQWxnb3JpdGhtRUNEU0EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDU3RUVBQTQ1MUU5RUQyREQwMDcwMTEyNCAvKiBDcnlwdG9BbGdvcml0aG1FQ0RT
QS5oICovOyB9OworCQk1N0VFQUE1MDFFOUZGQkZDMDA3MDExMjQgLyogQ3J5cHRvQWxnb3JpdGht
RWNkc2FQYXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDU3RUVBQTREMUU5RkZCRkMwMDcwMTEyNCAvKiBDcnlwdG9BbGdvcml0aG1FY2RzYVBhcmFt
cy5oICovOyB9OworCQk1N0VFQUE1NTFFQTAwMUIxMDA3MDExMjQgLyogSlNFY2RzYVBhcmFtcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTdFRUFBNTMx
RUEwMDFCMTAwNzAxMTI0IC8qIEpTRWNkc2FQYXJhbXMuaCAqLzsgfTsKKwkJNTdFRjVFNjAxRDIw
QzgzOTAwMTcxRTYwIC8qIFRleHRDb2RlY1JlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1N0VGNUU1RjFEMjBDODM5MDAxNzFFNjAgLyog
VGV4dENvZGVjUmVwbGFjZW1lbnQuaCAqLzsgfTsKKwkJNTdGRTY4NzEyNjA1MkUzMTAwQkY0NUU0
IC8qIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1N0ZFNjg2RTI2MDUyRTMxMDBCRjQ1RTQgLyogQXV0aGVudGlj
YXRvckF0dGFjaG1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk1N0ZFNjg3NjI2MDU1Njg1MDBCRjQ1RTQgLyogSlNBdXRoZW50aWNhdG9yQXR0
YWNobWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTdGRTY4NzUyNjA1NTY4NTAwQkY0NUU0IC8qIEpTQXV0aGVudGljYXRvckF0dGFjaG1lbnQuaCAq
LzsgfTsKKwkJNTdGRUREM0YxREI2RDU5MjAwRUI5NkY1IC8qIENyeXB0b0FsZ29yaXRobVJzYUtl
eUdlblBhcmFtcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTdGRUREM0UxREI2RDU5MjAwRUI5NkY1IC8qIENyeXB0b0FsZ29yaXRobVJzYUtleUdlblBh
cmFtcy5oICovOyB9OworCQk1N0ZFREQ0MTFEQjZENzNBMDBFQjk2RjUgLyogSlNSc2FLZXlHZW5Q
YXJhbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3
RkVERDQwMURCNkQ3M0EwMEVCOTZGNSAvKiBKU1JzYUtleUdlblBhcmFtcy5oICovOyB9OworCQk1
ODAzNzE2MjFBNjZGMDBBMDBCQUY1MTkgLyogQ2xpcFJlY3QuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU4MDM3MTYwMUE2NkYwMEEwMEJBRjUxOSAvKiBD
bGlwUmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTU4MDM3MTY0MUE2NkYxRDMwMEJBRjUxOSAvKiBMYXllckZyYWdtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1ODAzNzE2MzFBNjZGMUQzMDBC
QUY1MTkgLyogTGF5ZXJGcmFnbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTU4MjRBQkEzMUFFODExMTYwMDkwNzRCNyAvKiBSdWJ5RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTgyNEFC
QTExQUU4MTExNjAwOTA3NEI3IC8qIFJ1YnlFbGVtZW50LmggKi87IH07CisJCTU4MjRBQkE3MUFF
ODEzODQwMDkwNzRCNyAvKiBSdWJ5VGV4dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU4MjRBQkE1MUFFODEzODQwMDkwNzRCNyAvKiBSdWJ5
VGV4dEVsZW1lbnQuaCAqLzsgfTsKKwkJNTgyREUzMjUxQzMwQzg1NDAwQkUwMkE4IC8qIFRleHRE
ZWNvcmF0aW9uUGFpbnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTgyREUzMjMxQzMwQzg1NDAwQkUwMkE4IC8qIFRleHREZWNvcmF0aW9uUGFpbnRl
ci5oICovOyB9OworCQk1ODk1NTZFRDE4RDRBNDQwMDA3NjRCMDMgLyogQm9yZGVyRWRnZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTg5NTU2RUMxOEQ0
QTQ0MDAwNzY0QjAzIC8qIEJvcmRlckVkZ2UuaCAqLzsgfTsKKwkJNThCMkY5RjQyMjMyRDQ1MzAw
OTM4RDYzIC8qIFJlc2l6ZU9ic2VydmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OEIyRjlGMzIyMzJENDNGMDA5MzhENjMgLyogUmVzaXplT2Jz
ZXJ2YXRpb24uaCAqLzsgfTsKKwkJNThCMkY5RjUyMjMyRDQ1ODAwOTM4RDYzIC8qIFJlc2l6ZU9i
c2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
OEIyRjlFQzIyMzJENDNCMDA5MzhENjMgLyogUmVzaXplT2JzZXJ2ZXIuaCAqLzsgfTsKKwkJNThC
MkY5RjYyMjMyRDQ1QzAwOTM4RDYzIC8qIFJlc2l6ZU9ic2VydmVyQ2FsbGJhY2suaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU4QjJGOUYwMjIzMkQ0M0Uw
MDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckNhbGxiYWNrLmggKi87IH07CisJCTU4QjJGOUY3MjIz
MkQ0NjEwMDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckVudHJ5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OEIyRjlFRTIyMzJENDNEMDA5MzhENjMgLyog
UmVzaXplT2JzZXJ2ZXJFbnRyeS5oICovOyB9OworCQk1OEIyRkEwNDIyMzJEOUJFMDA5MzhENjMg
LyogSlNSZXNpemVPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNThCMkZBMDEyMjMyRDYwQTAwOTM4RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXIu
aCAqLzsgfTsKKwkJNThCMkZBMDUyMjMyREM0RjAwOTM4RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXJF
bnRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNThC
MkZBMDIyMjMyRDYwQTAwOTM4RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXJFbnRyeS5oICovOyB9Owor
CQk1OEIyRkEwNjIyMzJEQzU1MDA5MzhENjMgLyogSlNSZXNpemVPYnNlcnZlckNhbGxiYWNrLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OEIyRjlGRjIy
MzJENjA4MDA5MzhENjMgLyogSlNSZXNpemVPYnNlcnZlckNhbGxiYWNrLmggKi87IH07CisJCTU4
Q0QzNUNCMThFQjRDMzkwMEI5RjNBQyAvKiBGbG9hdFNpemVIYXNoLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OENEMzVDQTE4RUI0QzM5MDBCOUYzQUMg
LyogRmxvYXRTaXplSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTU5MDVBREMwMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTA1QURCRTEz
MDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5oICovOyB9OworCQk1OTBFMUI0OTExRTRF
RjRCMDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTBFMUI0ODExRTRFRjRCMDA2OUY3ODQgLyog
RGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNTkzMDlBMTMxMUY0QUU2QTAwMjUwNjAzIC8qIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50TW9jay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTkzMDlBMTIxMUY0QUU2QTAwMjUwNjAzIC8qIERldmljZU9yaWVudGF0aW9uQ2xp
ZW50TW9jay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTU5ODM2NUREMTM1NUY1NTcwMDFCMTg1RCAvKiBKU1Bvc2l0aW9uQ2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU5ODM2NURDMTM1NUY1
M0MwMDFCMTg1RCAvKiBKU1Bvc2l0aW9uQ2FsbGJhY2suaCAqLzsgfTsKKwkJNTk4MzY1REYxMzU1
RjU2MjAwMUIxODVEIC8qIEpTUG9zaXRpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OTgzNjVERTEzNTVGNTYyMDAxQjE4NUQg
LyogSlNQb3NpdGlvbkVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJNTk5RTc1OTAxMTA1NUExRjAw
RDkwNEZBIC8qIEJyaWRnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTk5RTc1OEYxMTA1NUExRjAwRDkwNEZBIC8qIEJyaWRnZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTU5QTg1RUE0MTE5RDY4RUMw
MERFRjFFRiAvKiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2
aWNlT3JpZW50YXRpb25FdmVudC5oICovOyB9OworCQk1OUE4NjAwODExOURBRkExMDBERUYxRUYg
LyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1OUE4NjAwNzExOURBRkExMDBERUYxRUYgLyogSlNEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmggKi87IH07CisJCTU5QThGMUQ2MTFBNjk1MTMwMDFBQzM0QSAvKiBE
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDU5QThGMUQ1MTFBNjk1MTMwMDFBQzM0QSAvKiBEZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXIuaCAqLzsgfTsKKwkJNTlBOEYxRDgxMUE2OTUyMDAwMUFDMzRBIC8q
IERldmljZU9yaWVudGF0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1OUE4RjFENzExQTY5NTIwMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50
YXRpb25DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk1OUI1OTc3NTExMDg2NTc5MDA3MTU5RTggLyogQnJpZGdlSlNDLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1OUI1OTc3NDExMDg2NTc5MDA3
MTU5RTggLyogQnJpZGdlSlNDLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNTlDMjdGMDcxMzhEMjhDRjAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJj
ZXNEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
OUMyN0YwNjEzOEQyOENGMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCAqLzsgfTsK
KwkJNTlDMjgwNDYxMzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTlDMjgwNDQxMzhEQzI0MTAwNzlCN0Uy
IC8qIFhNTEVycm9ycy5oICovOyB9OworCQk1QTU3NEYyNTEzMURCOTM5MDA0NzFCODggLyogUmVu
ZGVyUXVvdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVBNTc0RjIzMTMxREI5MzkwMDQ3MUI4OCAvKiBSZW5kZXJRdW90ZS5oICovOyB9OworCQk1QTU3
NEYyOTEzMURCOTZEMDA0NzFCODggLyogUXVvdGVzRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUE1NzRGMjcxMzFEQjk2RDAwNDcxQjg4IC8qIFF1
b3Rlc0RhdGEuaCAqLzsgfTsKKwkJNUIzMDY5NUUxOEIzRDM0NTAwOTlENUU4IC8qIFdlYkdMRHJh
d0J1ZmZlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVCMzA2OTVCMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJzLmggKi87IH07CisJ
CTVCNDY2NTYzMjVEMTRDMEEwMDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NUYy
NUQxNEMwOTAwMENGRTE0IC8qIFNjcm9sbGluZ0VmZmVjdHNDb250cm9sbGVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNUI0NjY1NjQyNUQxNEMw
QTAwMENGRTE0IC8qIFNjcm9sbFNuYXBBbmltYXRvclN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjQ2NjU2MDI1RDE0QzBBMDAwQ0ZFMTQgLyog
U2Nyb2xsU25hcEFuaW1hdG9yU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk1QzJCMUFFQzIyMzk3RUJDMDBCOTFDRjcgLyogUmVzb3VyY2VS
ZXNwb25zZUNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTFGNzhEMEIxQzI1NDIyQzAwMjQ1NDQ2IC8qIFJlc291cmNlUmVzcG9uc2VDb2NvYS5t
bSAqLzsgfTsKKwkJNUM0MzA0QjExOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNoYWRlclRleHR1cmVM
T0QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNDMw
NEFFMTkxQUM5MDgwMDBFMkJDMCAvKiBFWFRTaGFkZXJUZXh0dXJlTE9ELmggKi87IH07CisJCTVD
NDMwNEI2MTkxQUVGNDYwMDBFMkJDMCAvKiBKU0VYVFNoYWRlclRleHR1cmVMT0QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNDMwNEI0MTkxQUVGNDYw
MDBFMkJDMCAvKiBKU0VYVFNoYWRlclRleHR1cmVMT0QuaCAqLzsgfTsKKwkJNUM0QTBGRDcyNUMz
NDM1MDAwRDlFRTk3IC8qIFJhbmdlUmVzcG9uc2VHZW5lcmF0b3IuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNEEwRkQ1MjVDMzQyQzgwMEQ5RUU5NyAv
KiBSYW5nZVJlc3BvbnNlR2VuZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNUM0QTBGREEyNUMzNDQ5QTAwRDlFRTk3IC8qIFBhcnNlZFJl
cXVlc3RSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUM0QTBGRDgyNUMzNDQ2QzAwRDlFRTk3IC8qIFBhcnNlZFJlcXVlc3RSYW5nZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDNTNEQ0UxMjQ0
NjVERkMwMEE5MzEyNCAvKiBBcHBsZVBheVNldHVwRmVhdHVyZVdlYkNvcmUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNTNEQ0NGMjQ0NjQ0OTkwMEE5
MzEyNCAvKiBBcHBsZVBheVNldHVwRmVhdHVyZVdlYkNvcmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1QzUzRENFNzI0NDY4QUQyMDBBOTMxMjQg
LyogUGF5bWVudEluc3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNTNEQ0NFMjQ0NjQ0OTkwMEE5MzEy
NCAvKiBQYXltZW50SW5zdGFsbG1lbnRDb25maWd1cmF0aW9uV2ViQ29yZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDNTNEQ0VBMjQ0NjhGQjQw
MEE5MzEyNCAvKiBBcHBsZVBheVNldHVwV2ViQ29yZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM1M0RDQ0IyNDQ2NDQ5ODAwQTkzMTI0IC8qIEFwcGxl
UGF5U2V0dXBXZWJDb3JlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUM1RDIzODUyMjdBMDY1MjAwMEI5QkRBIC8qIEN1c3RvbUhlYWRlckZpZWxk
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM1RDIz
ODMyMjdBMDYzQTAwMEI5QkRBIC8qIEN1c3RvbUhlYWRlckZpZWxkcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDNkQwMzAxMjY1QzIxMUIwMDJC
NjRGRSAvKiBSZXNvdXJjZUxvYWRUaW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDVDNkQwMkZGMjY1QzIxMUEwMDJCNjRGRSAvKiBSZXNvdXJjZUxv
YWRUaW1pbmcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk1QzdDODhEODFEMEYxRjRBMDA5RDJGNkQgLyogU29ja2V0UHJvdmlkZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDN0M4OEQ3MUQwRjFGMkIw
MDlEMkY2RCAvKiBTb2NrZXRQcm92aWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTVDOUMyREI1MjI0MUE2N0IwMDk5NkIwQiAvKiBDb250ZW50
UnVsZUxpc3RSZXN1bHRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1QzlDMkRCMzIyNDFBNjczMDA5OTZCMEIgLyogQ29udGVudFJ1bGVMaXN0UmVzdWx0
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVD
OUVGMkYzMjFGMDYxOTAwMDNCREM1NiAvKiBTdG9yYWdlU2Vzc2lvblByb3ZpZGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzlFRjJGMjIxRjA2MTcx
MDAzQkRDNTYgLyogU3RvcmFnZVNlc3Npb25Qcm92aWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDQTFERUM2MUY3MUYxQzcwMEU3MUJEMyAv
KiBIVFRQSGVhZGVyRmllbGQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDVDQTFERUM0MUY3MUU2ODcwMEU3MUJEMyAvKiBIVFRQSGVhZGVyRmllbGQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1Q0IzN0ZG
RjFDNjJEMkExMDBGMjAxODggLyogU2Nyb2xsQW5pbWF0b3JNb2NrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IzN0ZGRDFDNjJEMjc4MDBGMjAxODgg
LyogU2Nyb2xsQW5pbWF0b3JNb2NrLmggKi87IH07CisJCTVDQkM4REFEMUFBQTMwMjIwMEUxQzgw
MyAvKiBNZWRpYUFjY2Vzc2liaWxpdHlTb2Z0TGluay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNCQzhEQUIxQUFBMzAyMjAwRTFDODAzIC8qIE1lZGlh
QWNjZXNzaWJpbGl0eVNvZnRMaW5rLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNUNCRDU5NTkyMjgwRTkyNjAwMkIyMkFBIC8qIEN1c3RvbUhlYWRl
ckZpZWxkcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1QzVEMjM4NjIyN0EwNzdDMDAwQjlCREEgLyogQ3VzdG9tSGVhZGVyRmllbGRzLmNwcCAqLzsg
fTsKKwkJNUNDNzkwMEUyNjZBRkE4OTAwNjkyNEZFIC8qIFRpbWluZ0FsbG93T3JpZ2luLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0M3OTAwQjI2NkFG
QTg4MDA2OTI0RkUgLyogVGltaW5nQWxsb3dPcmlnaW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1Q0NDMjcwOTIyRDU0ODNBMDA5NjRGQTAgLyog
QXV0b2ZpbGxFbGVtZW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNUNDQzI3MDYyMkQ1M0I2ODAwOTY0RkEwIC8qIEF1dG9maWxsRWxlbWVudHMuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1Q0Q5RjU2
NjFBQTBGNzNDMDBEQTQ1RkYgLyogREZBQnl0ZWNvZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFC
eXRlY29kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTVDRDlGNTY3MUFBMEY3NDIwMERBNDVGRiAvKiBERkFCeXRlY29kZUNvbXBpbGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzM5MzA1RjFBQTBG
NkE5MDAyOUM4MTYgLyogREZBQnl0ZWNvZGVDb21waWxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDRDlGNTY4MUFBMEY3NDYwMERBNDVGRiAv
KiBERkFCeXRlY29kZUludGVycHJldGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA1QzM5MzA2MTFBQTBGNkE5MDAyOUM4MTYgLyogREZBQnl0ZWNvZGVJ
bnRlcnByZXRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTVDRENEREM2MjNEODBBMUMwMEJBMzRBMSAvKiBDb250ZW50RmlsdGVyQ2xpZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0RDRERCRjIz
RDdCN0JFMDBCQTM0QTEgLyogQ29udGVudEZpbHRlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVDREQ4MzY0MUU0MzI1QTAwMDYyMUU5
MiAvKiBMaWJXZWJSVENEYXRhQ2hhbm5lbEhhbmRsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERDgzM0YxRTQzMjUzRDAwNjIxRTkyIC8qIExp
YldlYlJUQ0RhdGFDaGFubmVsSGFuZGxlci5jcHAgKi87IH07CisJCTVDREZBNkM4MUFBNEYyREEw
MEVBODc0NiAvKiBDb250ZW50RXh0ZW5zaW9uQWN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNERkE2QzcxQUE0RjJEQTAwRUE4NzQ2IC8qIENv
bnRlbnRFeHRlbnNpb25BY3Rpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNUNFRUU0MzYxRjVGOEYyMTAwMTRBNUY1IC8qIFJlY3RFZGdlcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM5N0EzMzYx
RjVGN0E2NTAwMTA1MjA3IC8qIFJlY3RFZGdlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTVEMjFBODAzMTNFQ0U1REYwMEJCNzA2NCAvKiBXZWJW
VFRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDVEMjFBODAxMTNFQ0U1REYwMEJCNzA2NCAvKiBXZWJWVFRQYXJzZXIuaCAqLzsgfTsKKwkJNUQ1
OTc1QjMxOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVENTk3NUIxMTk2MzVGMTEwMEQwMDg3OCAv
KiBTeXN0ZW1WZXJzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUQ5MjVCNjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEFsaWdubWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUQ5MjVCNjYw
RjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEFsaWdubWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVEQTVFMEZEMTAyQjk1MzgwMDA4OENGOSAv
KiBKU1dlYlNvY2tldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNURBNUUwRkIxMDJCOTUzODAwMDg4Q0Y5IC8qIEpTV2ViU29ja2V0LmggKi87IH07CisJ
CTVEQjFCQzZBMTA3MTVBNjQwMEVGQUE0OSAvKiBUcmFuc2Zvcm1Tb3VyY2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVEQjFCQzY4MTA3MTVBNjQwMEVG
QUE0OSAvKiBUcmFuc2Zvcm1Tb3VyY2UuaCAqLzsgfTsKKwkJNURGN0Y1QzIwRjAxRjkyQTAwNTI2
QjRCIC8qIENTU1Byb3BlcnR5TmFtZXMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NjU4MEVGMDlEMTJCMjAwMDBFNjFENyAv
KiBDU1NQcm9wZXJ0eU5hbWVzLmggKi87IH07CisJCTVERkU4RjU3MEQxNjQ3N0MwMDc2RTkzNyAv
KiBTY2hlZHVsZWRBY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDQTM3OEJCMEQxNUY2NDIwMEI3OTNENiAvKiBTY2hlZHVsZWRBY3Rpb24uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1REZFQkFC
NzE4NTkyQjZEMDBDNzVCRUIgLyogV2ViS2l0QXZhaWxhYmlsaXR5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1REZFQkFCNjE4NTkyQjZEMDBDNzVCRUIg
LyogV2ViS2l0QXZhaWxhYmlsaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNUUyQzQzNTExQkNFRTJGNjAwMDFFMkJDIC8qIFBlZXJDb25uZWN0
aW9uQmFja2VuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUUyQzQzNEQxQkNFRTJFNTAwMDFFMkJDIC8qIFBlZXJDb25uZWN0aW9uQmFja2VuZC5oICov
OyB9OworCQk1RTJDNDM2MTFCQ0VFMzIzMDAwMUUyQkMgLyogUlRDUnRwU2VuZGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1RTJDNDM1QTFCQ0VFMzBE
MDAwMUUyQkMgLyogUlRDUnRwU2VuZGVyLmggKi87IH07CisJCTVFMkM0MzYzMUJDRUUzMkIwMDAx
RTJCQyAvKiBSVENSdHBSZWNlaXZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNUUyQzQzNTcxQkNFRTMwRDAwMDFFMkJDIC8qIFJUQ1J0cFJlY2VpdmVy
LmggKi87IH07CisJCTVFMkM0MzY4MUJDRUUzNzcwMDAxRTJCQyAvKiBSVENUcmFja0V2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1RTJDNDM2NTFC
Q0VFMzcyMDAwMUUyQkMgLyogUlRDVHJhY2tFdmVudC5oICovOyB9OworCQk1RTJDNDM2QzFCQ0Yw
NzFFMDAwMUUyQkMgLyogSlNSVENUcmFja0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1RTJDNDM2QTFCQ0YwNUM4MDAwMUUyQkMgLyogSlNSVENU
cmFja0V2ZW50LmggKi87IH07CisJCTVFMkM0MzcyMUJDRjBENzUwMDAxRTJCQyAvKiBKU1JUQ1J0
cFJlY2VpdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1RTJDNDM2RTFCQ0YwRDY5MDAwMUUyQkMgLyogSlNSVENSdHBSZWNlaXZlci5oICovOyB9Owor
CQk1RTJDNDM3MjFCQ0YwRDc1MDAwMUUyQkQgLyogSlNSVENSdHBUcmFuc2NlaXZlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUUyQzQzNkUxQkNGMEQ2
OTAwMDFFMkJEIC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXIuaCAqLzsgfTsKKwkJNUUyQzQzNzQxQkNG
MEQ3NTAwMDFFMkJDIC8qIEpTUlRDUnRwU2VuZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1RTJDNDM3MDFCQ0YwRDY5MDAwMUUyQkMgLyogSlNSVENS
dHBTZW5kZXIuaCAqLzsgfTsKKwkJNUUyQzQzNzQxQkNGMEQ3NTAwMDFFMkJFIC8qIEpTUlRDUnRw
UGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNUUyQzQzNzAxQkNGMEQ2OTAwMDFFMkJFIC8qIEpTUlRDUnRwUGFyYW1ldGVycy5oICovOyB9
OworCQk1RTVFMkIxNDFDRkMzRTc1MDAwQzBEODUgLyogUlRDUnRwVHJhbnNjZWl2ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVFNUUyQjExMUNGQzNF
NEIwMDBDMEQ4NSAvKiBSVENSdHBUcmFuc2NlaXZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTVFQTcyNUQzMUFDQUJENDcwMEVBRDE3QiAvKiBN
ZWRpYURldmljZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDVFQTcyNUNFMUFDQUJDRDkwMEVBRDE3QiAvKiBNZWRpYURldmljZXMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk1RUE3MjVENjFBQ0FCRDU3
MDBFQUQxN0IgLyogTmF2aWdhdG9yTWVkaWFEZXZpY2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1RUE3MjVDQjFBQ0FCQ0I1MDBFQUQxN0IgLyogTmF2
aWdhdG9yTWVkaWFEZXZpY2VzLmggKi87IH07CisJCTVFQkI4OTMxMUM3Nzc3RkYwMEM2NUQ0MSAv
KiBNZWRpYVBheWxvYWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDVFQkI4OTJGMUM3Nzc3RDAwMEM2NUQ0MSAvKiBNZWRpYVBheWxvYWQuaCAqLzsgfTsK
KwkJNUVCQjg5MzMxQzc3NzgyOTAwQzY1RDQxIC8qIEljZUNhbmRpZGF0ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUVCQjg5MzAxQzc3NzdFMTAwQzY1
RDQxIC8qIEljZUNhbmRpZGF0ZS5oICovOyB9OworCQk1RUJCODkzOTFDNzdDMzk5MDBDNjVENDEg
LyogUGVlck1lZGlhRGVzY3JpcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDVFQkI4OTM4MUM3N0JEQTQwMEM2NUQ0MSAvKiBQZWVyTWVkaWFEZXNj
cmlwdGlvbi5oICovOyB9OworCQk1RkE5MDRDQTE3OEU2MUY1MDA0QzhBMkQgLyogQ2VydGlmaWNh
dGVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
RjJEQkJFODE3OEUzMzY5MDAxNDE0ODYgLyogQ2VydGlmaWNhdGVJbmZvLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNUZDN0RDMjZDRkUyNTYzMjAw
Qjg1QUU0IC8qIEpTRXZlbnRUYXJnZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDVGQzdEQzI2Q0ZFMjU2MzIwMEI4NUFFNSAvKiBKU0V2ZW50VGFyZ2V0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNUZF
MUQyOTIxNzhGRDFGMzAwMUFBM0MzIC8qIFNlY3VyaXR5LmZyYW1ld29yayBpbiBGcmFtZXdvcmtz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVGRTFEMjkxMTc4RkQxRjMwMDFB
QTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgKi87IH07CisJCTYyNkNERTBGMTE0MDQyNEMwMDFF
NUE2OCAvKiBTcGF0aWFsTmF2aWdhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNjI2Q0RFMEQxMTQwNDI0QzAwMUU1QTY4IC8qIFNwYXRpYWxOYXZp
Z2F0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNjI4RDIxNEMxMjEzMUVEMTAwNTVEQ0ZDIC8qIE5ldHdvcmtpbmdDb250ZXh0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2MjhEMjE0QjEyMTMxRUQx
MDA1NURDRkMgLyogTmV0d29ya2luZ0NvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2MjhEMjE0RTEyMTMxRUY0MDA1NURDRkMgLyogRnJh
bWVOZXR3b3JraW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNjI4RDIxNEQxMjEzMUVGNDAwNTVEQ0ZDIC8qIEZyYW1lTmV0d29ya2luZ0Nv
bnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk2MkMxMjE3RDExQUI5RTc3MDAzQzQ2MkMgLyogU3VzcGVuZGFibGVUaW1lci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjJDMTIxN0IxMUFCOUU3NzAw
M0M0NjJDIC8qIFN1c3BlbmRhYmxlVGltZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk2MkNEMzI1QTExNTdFNTdDMDA2M0IwQTcgLyogQ3VzdG9t
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDYy
Q0QzMjU3MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVudC5oICovOyB9OworCQk2MzE1MkQx
OTFGOTUzMUVFMDA3QTVFNEIgLyogQXBwbGljYXRpb25NYW5pZmVzdExvYWRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjMxNTJEMTcxRjk1MzFFRTAw
N0E1RTRCIC8qIEFwcGxpY2F0aW9uTWFuaWZlc3RMb2FkZXIuaCAqLzsgfTsKKwkJNjMxODlBRTMw
RTgzQTMzMzAwMDEyRTQxIC8qIE5vZGVSYXJlRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjMxODlBRTIwRTgzQTMzMzAwMDEyRTQxIC8qIE5vZGVS
YXJlRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKCk7IH07IH07CisJCTYzNTNF
MUU2MUY5MTc0MzEwMEEzNDIwOCAvKiBDYWNoZWRBcHBsaWNhdGlvbk1hbmlmZXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2MzUzRTFFNDFGOTE3NDMx
MDBBMzQyMDggLyogQ2FjaGVkQXBwbGljYXRpb25NYW5pZmVzdC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTYzNTRGNEM5MUY3QUZDOTQwMEQ4OURG
MyAvKiBBcHBsaWNhdGlvbk1hbmlmZXN0UGFyc2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2MzU0RjRDNzFGN0FGQzk0MDBEODlERjMgLyogQXBwbGlj
YXRpb25NYW5pZmVzdFBhcnNlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTYzQkQ0QTVGMUY3NzhFOUYwMDQzODcyMiAvKiBBcHBsaWNhdGlvbk1h
bmlmZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2
M0JENEE1RDFGNzc4RTlGMDA0Mzg3MjIgLyogQXBwbGljYXRpb25NYW5pZmVzdC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTYzRDdCMzJEMEU3OENE
M0YwMEY3NjE3QyAvKiBOb2RlUmVuZGVyU3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDYzRDdCMzJDMEU3OENEM0YwMEY3NjE3QyAvKiBOb2RlUmVu
ZGVyU3R5bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk2M0Y1RDRGNzBFOEM0QjcxMDBDMEJEMDQgLyogRWxlbWVudFJhcmVEYXRhLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2MzdCN0FERTBFODc2N0I4
MDBFMzIxOTQgLyogRWxlbWVudFJhcmVEYXRhLmggKi87IH07CisJCTY1MEZCRjJCMEQ5QUYwNDcw
MDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDY1MEZCRjI4MEQ5QUYwNDcwMDhGQzI5MiAvKiBTVkdIS2VybkVs
ZW1lbnQuaCAqLzsgfTsKKwkJNjUxNUVDOTIwRDk3MjNGRjAwNjNENDlBIC8qIEpTU1ZHQWx0R2x5
cGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA2NTE1RUM5MDBEOTcyM0ZGMDA2M0Q0OUEgLyogSlNTVkdBbHRHbHlwaEVsZW1lbnQuaCAqLzsg
fTsKKwkJNjUyRkJCQkMwREUyN0NCNjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTJGQkJCQjBERTI3
Q0I2MDAwMUQzODYgLyogSlNET01XaW5kb3dDdXN0b20uaCAqLzsgfTsKKwkJNjU1MEI2OUUwOTlE
RjAyNzAwOTBENzgxIC8qIENEQVRBU2VjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNjU1MEI2OTQwOTlERjAyNzAwOTBENzgxIC8qIENEQVRBU2Vj
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTY1NTBCNkEwMDk5REYwMjcwMDkwRDc4MSAvKiBDaGFyYWN0ZXJEYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTUwQjY5NjA5OURGMDI3MDA5MEQ3
ODEgLyogQ2hhcmFjdGVyRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTY1NTBCNkEyMDk5REYwMjcwMDkwRDc4MSAvKiBDb21tZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTUwQjY5ODA5OURG
MDI3MDA5MEQ3ODEgLyogQ29tbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTY1NTBCNkE2MDk5REYwMjcwMDkwRDc4MSAvKiBUZXh0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTUwQjY5QzA5OURG
MDI3MDA5MEQ3ODEgLyogVGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTY1NjUzRjJFMEQ5NzI3RDIwMENBOTcyMyAvKiBTVkdBbHRHbHlwaEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1
NjUzRjJCMEQ5NzI3RDIwMENBOTcyMyAvKiBTVkdBbHRHbHlwaEVsZW1lbnQuaCAqLzsgfTsKKwkJ
NjU2NTgwRjQwOUQxMkIyMDAwMEU2MUQ3IC8qIENTU1Byb3BlcnR5TmFtZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NjU4MEVGMDlEMTJCMjAwMDBF
NjFENyAvKiBDU1NQcm9wZXJ0eU5hbWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
KTsgfTsgfTsKKwkJNjU2NTgxNTEwOUQxMzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NjU4MTQ4
MDlEMTMwNDMwMDBFNjFENyAvKiBDU1NWYWx1ZUtleXdvcmRzLmggKi87IH07CisJCTY1NjU4MUIy
MDlEMTRFRTYwMDBFNjFENyAvKiBVc2VyQWdlbnRTdHlsZVNoZWV0cy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxQUUwOUQxNEVFNjAwMEU2MUQ3
IC8qIFVzZXJBZ2VudFN0eWxlU2hlZXRzLmggKi87IH07CisJCTY1NjU4MUZFMDlEMTUwOEQwMDBF
NjFENyAvKiBTVkdFbGVtZW50RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxRTcwOUQxNTA4RDAwMEU2MUQ3IC8qIFNWR0VsZW1lbnRG
YWN0b3J5LmggKi87IH07CisJCTY1NjU4MjAyMDlEMTUwOEQwMDBFNjFENyAvKiBYTGlua05hbWVz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTY1ODFF
QjA5RDE1MDhEMDAwRTYxRDcgLyogWExpbmtOYW1lcy5oICovOyB9OworCQk2NTZEMzczMjBBREJB
NURFMDBBNDU1NEQgLyogTG9hZGVyTlNVUkxFeHRyYXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NkQzNzFBMEFEQkE1REUwMEE0NTU0RCAvKiBMb2Fk
ZXJOU1VSTEV4dHJhcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTY1NkQzNzM2MEFEQkE1REUwMEE0NTU0RCAvKiBEb2N1bWVudExvYWRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2RDM3MUUwQURC
QTVERTAwQTQ1NTREIC8qIERvY3VtZW50TG9hZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNjU2RDM3M0EwQURCQTVERTAwQTQ1NTREIC8qIEZv
cm1TdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NjU2RDM3MjIwQURCQTVERTAwQTQ1NTREIC8qIEZvcm1TdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTY1NkQzNzNDMEFEQkE1REUwMEE0NTU0
RCAvKiBGcmFtZUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNjU2RDM3MjQwQURCQTVERTAwQTQ1NTREIC8qIEZyYW1lTG9hZGVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNjU2RDM3M0UwQURC
QTVERTAwQTQ1NTREIC8qIEZyYW1lTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTZEMzcyNjBBREJBNURFMDBBNDU1NEQgLyogRnJh
bWVMb2FkZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk2NTZEMzczRjBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1NkQzNzI3MEFE
QkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTY1NkQzNzQzMEFEQkE1REUwMEE0NTU0RCAvKiBO
ZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNjU2RDM3MkIwQURCQTVERTAwQTQ1NTREIC8qIE5ldHNjYXBlUGx1
Z0luU3RyZWFtTG9hZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNjU2RDM3NDgwQURCQTVERTAwQTQ1NTREIC8qIFN1YnJlc291cmNlTG9hZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTZEMzcz
MDBBREJBNURFMDBBNDU1NEQgLyogU3VicmVzb3VyY2VMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2NTg0MzY4NjBBRTAxQjc0MDBFNTM3
NDMgLyogRm9udExvYWRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2NTg0MzY4NTBBRTAxQjc0MDBFNTM3NDMgLyogRm9udExvYWRSZXF1ZXN0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNjU4
NDM2ODYwQUUwMUI3NDAwRTUzNzUzIC8qIEZyYW1lTG9hZFJlcXVlc3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1ODQzNjg1MEFFMDFCNzQwMEU1Mzc1
MyAvKiBGcmFtZUxvYWRSZXF1ZXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNjU5QTdEMTMwQjZEQjREOTAwMTE1NUIzIC8qIFN1YnN0aXR1dGVE
YXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTlB
N0QxMjBCNkRCNEQ5MDAxMTU1QjMgLyogU3Vic3RpdHV0ZURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2NTlEREM4MzA5RTE5OEJBMDAxQkYz
QzYgLyogSlNEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNjU5RERDODEwOUUxOThCQTAwMUJGM0M2IC8qIEpTRG9jdW1lbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2NUEyMTQ2ODA5N0Ez
MjkxMDBCOTA1MEEgLyogUGFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNjVBMjE0NjcwOTdBMzI5MTAwQjkwNTBBIC8qIFBhZ2UuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2NUEyMTQ4NTA5N0EzRjUz
MDBCOTA1MEEgLyogRnJhbWVUcmVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2NUEyMTQ4MzA5N0EzRjUzMDBCOTA1MEEgLyogRnJhbWVUcmVlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNjVCRjAyMkYw
OTc0ODE2MzAwQzQzMTk2IC8qIEZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2NUJGMDIyQTA5NzQ4MTYzMDBDNDMxOTYgLyogRnJhbWUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2NUM5N0FGMzA4
RUE5MDg4MDBBQ0QyNzMgLyogY29uZmlnLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2NUM5N0FGMjA4RUE5MDg4MDBBQ0QyNzMgLyogY29uZmlnLmggKi87
IH07CisJCTY1Q0JGRUZBMDk3NEY2MDcwMDFEQUMyNSAvKiBGcmFtZVZpZXcuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1Q0JGRUY4MDk3NEY2MDcwMDFE
QUMyNSAvKiBGcmFtZVZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk2NURGMzFEQjA5RDFDMTIzMDAwQkUzMjUgLyogSlNBdHRyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NURGMzFEOTA5RDFDMTIz
MDAwQkUzMjUgLyogSlNBdHRyLmggKi87IH07CisJCTY1REYzMUY0MDlEMUNDNjAwMDBCRTMyNSAv
KiBKU0NoYXJhY3RlckRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDY1REYzMUUwMDlEMUNDNjAwMDBCRTMyNSAvKiBKU0NoYXJhY3RlckRhdGEuaCAq
LzsgfTsKKwkJNjVERjMxRjYwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTRG9jdW1lbnRUeXBlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NURGMzFFMjA5RDFD
QzYwMDAwQkUzMjUgLyogSlNEb2N1bWVudFR5cGUuaCAqLzsgfTsKKwkJNjVERjMxRjgwOUQxQ0M2
MDAwMEJFMzI1IC8qIEpTRE9NSW1wbGVtZW50YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1REYzMUU0MDlEMUNDNjAwMDBCRTMyNSAvKiBKU0RP
TUltcGxlbWVudGF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNjVERjMxRkEwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjVERjMxRTYwOUQxQ0M2
MDAwMEJFMzI1IC8qIEpTRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTY1REYzMUZDMDlEMUNDNjAwMDBCRTMyNSAvKiBKU011dGF0aW9u
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1
REYzMUU4MDlEMUNDNjAwMDBCRTMyNSAvKiBKU011dGF0aW9uRXZlbnQuaCAqLzsgfTsKKwkJNjVE
RjMyMDAwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUHJvY2Vzc2luZ0luc3RydWN0aW9uLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NURGMzFFQzA5RDFDQzYw
MDAwQkUzMjUgLyogSlNQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaCAqLzsgfTsKKwkJNjVERjMyMDIw
OUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDY1REYzMUVFMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1JhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNjVERjMy
MDQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTVGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNjVERjMxRjAwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTVGV4dC5o
ICovOyB9OworCQk2NURGMzIwNjA5RDFDQzYwMDAwQkUzMjUgLyogSlNXaGVlbEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NURGMzFGMjA5RDFD
QzYwMDAwQkUzMjUgLyogSlNXaGVlbEV2ZW50LmggKi87IH07CisJCTY1REYzMjNBMDlEMURFNjUw
MDBCRTMyNSAvKiBKU0NhbnZhc0dyYWRpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2NURGMzIzNDA5RDFERTY1MDAwQkUzMjUgLyogSlNDYW52YXNH
cmFkaWVudC5oICovOyB9OworCQk2NURGMzIzQzA5RDFERTY1MDAwQkUzMjUgLyogSlNDYW52YXNQ
YXR0ZXJuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2
NURGMzIzNjA5RDFERTY1MDAwQkUzMjUgLyogSlNDYW52YXNQYXR0ZXJuLmggKi87IH07CisJCTY1
RTBFOTQ0MTEzM0M4OUYwMEI0Q0IxMCAvKiBKU0RPTVdyYXBwZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1RTBFOTQzMTEzM0M4OUYwMEI0Q0IxMCAv
KiBKU0RPTVdyYXBwZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk2OUE2Q0JBRDFDNkJFNDJDMDBCODM2RTkgLyogQWNjZXNzaWJpbGl0eVNWR0Vs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY5
NzEwMTA4MUM2QkUxNTUwMDE4QzdGMSAvKiBBY2Nlc3NpYmlsaXR5U1ZHRWxlbWVudC5oICovOyB9
OworCQk2QTIyRTg3MDFGMTA0MTg2MDBGNTQ2QzMgLyogSW5zcGVjdG9yQ2FudmFzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QTIyRTg2RjFGMTA0MTg2
MDBGNTQ2QzMgLyogSW5zcGVjdG9yQ2FudmFzLmggKi87IH07CisJCTZBNzI3OThCMUYxNkMyOUMw
MDNGMzlCOCAvKiBJbnNwZWN0b3JTaGFkZXJQcm9ncmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QTcyNzk4ODFGMTZDMjlCMDAzRjM5QjggLyogSW5z
cGVjdG9yU2hhZGVyUHJvZ3JhbS5oICovOyB9OworCQk2QjBBMDdGMjIxRkE0QjVDMDBENTczOTEg
LyogUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDZCMEEwN0YwMjFGQTRCNUMwMEQ1NzM5MSAvKiBQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTZCMUY0ODExMjI5OEEzN0UwMERFOEI4MiAvKiBDcm9zc1NpdGVOYXZpZ2F0aW9u
RGF0YVRyYW5zZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2QjFGNDgwRjIyOTg5RUM0MDBERThCODIgLyogQ3Jvc3NTaXRlTmF2aWdhdGlvbkRhdGFU
cmFuc2Zlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTZCNEQ0MTJEMjM5ODNGODgwMDI0OTRDMiAvKiBMb2dnZWRJblN0YXR1cy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkI0RDQxMkIyMzk4M0Y4ODAw
MjQ5NEMyIC8qIExvZ2dlZEluU3RhdHVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkI0RTg2MTMyMjFCNzEzRjAwMjJGMzg5IC8qIFJlZ2lzdHJh
YmxlRG9tYWluLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA2QjRFODYxMjIyMUI3MTNGMDAyMkYzODkgLyogUmVnaXN0cmFibGVEb21haW4uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2QjUwN0EyNDIzNEJG
MzQxMDBCRTdDNjIgLyogTmF2aWdhdG9ySXNMb2dnZWRJbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkI1MDdBMjEyMzRCRjM0MTAwQkU3QzYyIC8qIE5h
dmlnYXRvcklzTG9nZ2VkSW4uaCAqLzsgfTsKKwkJNkI2OTNBMkUxQzUxQTgyRTAwQjAzQkVGIC8q
IFJlc291cmNlTG9hZE9ic2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2QjY5M0EyRDFDNTFBODJFMDBCMDNCRUYgLyogUmVzb3VyY2VMb2FkT2Jz
ZXJ2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk2QkRCNURDMjIyN0JEM0I4MDA5MTk3NzAgLyogRG9jdW1lbnRTdG9yYWdlQWNjZXNzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QkRCNURDMDIyN0JE
M0I4MDA5MTk3NzAgLyogRG9jdW1lbnRTdG9yYWdlQWNjZXNzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkM0Qzk2REYxQUQ0NDgzNTAwMzYzRjY0
IC8qIEpTUmVhZGFibGVCeXRlU3RyZWFtQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkM0Qzk2REIxQUQ0NDgzNTAwMzYzRjY0IC8qIEpT
UmVhZGFibGVCeXRlU3RyZWFtQ29udHJvbGxlci5oICovOyB9OworCQk2QzRDOTZERjFBRDQ0ODM1
MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2QzRDOTZEQjFBRDQ0ODM1MDAzNjU2NzIg
LyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggKi87IH07CisJCTZDNEM5NkRGMUFENDQ4
MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZDNEM5NkRCMUFENDQ4MzUw
MDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2QzYzODg5NUE5NkNDRUU1
MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkM2Mzg4OTNBOTZDQ0VFNTBDOEM5
NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RTBCOTA2OTIzMjFBNjhEMDA2MjIz
QjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFMEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJH
TENvbXByZXNzZWRUZXh0dXJlRVRDMS5oICovOyB9OworCQk2RTBFNTY5QzE4M0JGRkU2MDBFMEU4
RDUgLyogRmxvYXRSb3VuZGVkUmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNkUwRTU2OUExODNCRkZFNjAwRTBFOEQ1IC8qIEZsb2F0Um91bmRlZFJl
Y3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2
RTI0MkIyQjIzMzU5NDA1MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyNDJCMkEy
MzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLzsgfTsK
KwkJNkUyNDJCMkMyMzM1OTQwOTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVU
Qy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyNDJC
MjgyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovOyB9
OworCQk2RTNGQUQzOTE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJl
UzNUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUz
RkFEMzcxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCAq
LzsgfTsKKwkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2ViR0xEZXB0aFRleHR1cmUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3
MTQ3MzNGNDAwMEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmggKi87IH07CisJCTZFM0ZB
RDM5MTQ3MzNGNDAxMUU0MjMwNyAvKiBKU1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAx
MUU0MjMwNyAvKiBKU1dlYkdMRGVidWdSZW5kZXJlckluZm8uaCAqLzsgfTsKKwkJNkUzRkFEMzkx
NDczM0Y0MDIyRTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1NoYWRlcnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFM0ZBRDM3MTQ3MzNGNDAyMkU0MjMwNyAv
KiBKU1dlYkdMRGVidWdTaGFkZXJzLmggKi87IH07CisJCTZFM0ZBRThGMTQ3MzNGREIwMEU0MjMw
NiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUzRkFFOEQxNDczM0ZEQjAwRTQyMzA2IC8qIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVTM1RDLmggKi87IH07CisJCTZFM0ZBRThGMTQ3MzNGREIwMEU0MjMw
NyAvKiBXZWJHTERlcHRoVGV4dHVyZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNkUzRkFFOEQxNDczM0ZEQjAwRTQyMzA3IC8qIFdlYkdMRGVwdGhUZXh0
dXJlLmggKi87IH07CisJCTZFNDdFNjYxMTBCNzk0NEIwMEIxODZDOCAvKiBXZWJHTEFueS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkU0N0U2NUYxMEI3
OTQ0QjAwQjE4NkM4IC8qIFdlYkdMQW55LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkU0QUJDRDUxMzhFQTBCNzAwNzFEMjkxIC8qIEpTSFRNTFVu
a25vd25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA2RTRBQkNEMzEzOEVBMEI3MDA3MUQyOTEgLyogSlNIVE1MVW5rbm93bkVsZW1lbnQuaCAq
LzsgfTsKKwkJNkU0RTkxQUYxMEY3RkIzMTAwQTI3NzlDIC8qIFdlYkdMQ29udGV4dEF0dHJpYnV0
ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFNEU5
MUFBMTBGN0ZCMzEwMEEyNzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkU2N0QyQTkxMjgwRThC
RDAwODc1OEY3IC8qIEV4dGVuc2lvbnNHTC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkU2N0QyQTgxMjgwRThCRDAwODc1OEY3IC8qIEV4dGVuc2lvbnNH
TC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTZF
NzJGNTRDMjI5RENEMEMwMEIzRTE1MSAvKiBFeHRlbnNpb25zR0xBTkdMRS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTI3RjI0MzIyOUM5Rjg0MDBG
MUY2MzIgLyogRXh0ZW5zaW9uc0dMQU5HTEUuY3BwICovOyB9OworCQk2RTcyRjU0RTIyOURDRDEw
MDBCM0UxNTEgLyogR3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTI3RjI0MjIyOThDRTRCMDBGMUY2MzIgLyog
R3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAgKi87IH07CisJCTZFNzJGNTRGMjI5RENEMTMwMEIz
RTE1MSAvKiBUZW1wb3JhcnlBTkdMRVNldHRpbmcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkUyOTA4NjEyMjlEQjk1MDAwMDk4NkUyIC8qIFRlbXBv
cmFyeUFOR0xFU2V0dGluZy5jcHAgKi87IH07CisJCTZFNzJGNTUwMjI5RENEMTcwMEIzRTE1MSAv
KiBFeHRlbnNpb25zR0xBTkdMRS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkUyN0YyNDQyMjlDOUY4RDAwRjFGNjMyIC8qIEV4dGVuc2lvbnNHTEFOR0xF
LmggKi87IH07CisJCTZFNzJGNTUxMjI5RENEMUEwMEIzRTE1MSAvKiBUZW1wb3JhcnlBTkdMRVNl
dHRpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZF
MjkwODYzMjI5REI5NzAwMDA5ODZFMiAvKiBUZW1wb3JhcnlBTkdMRVNldHRpbmcuaCAqLzsgfTsK
KwkJNkU4NEU5RTExNzY2OEJGMTAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RTg0RTlERjE3NjY4QkFEMDA4MTVC
NjggLyogUmFzdGVyU2hhcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk2RThBQ0RFRDIzMzQ1Q0JDMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMu
aCAqLzsgfTsKKwkJNkVCRjBFNDkxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkVCRjBFNDYx
MkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oICovOyB9OworCQk2RUJGMEU1NTEy
QTg5Mjk4MDBEQjE3MDkgLyogV2ViR0xFeHRlbnNpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZFQkYwRTUzMTJBODkyOTgwMERCMTcwOSAvKiBXZWJH
TEV4dGVuc2lvbi5oICovOyB9OworCQk2RUJGMEU3NzEyQTk4Njg4MDBEQjE3MDkgLyogSlNPRVNU
ZXh0dXJlRmxvYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDZFQkYwRTc1MTJBOTg2ODgwMERCMTcwOSAvKiBKU09FU1RleHR1cmVGbG9hdC5oICovOyB9
OworCQk2RUJGMEU3NzEyQTk4Njg4MDBEQjE3MEEgLyogSlNXZWJHTERyYXdCdWZmZXJzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RUJGMEU3NTEyQTk4
Njg4MDBEQjE3MEEgLyogSlNXZWJHTERyYXdCdWZmZXJzLmggKi87IH07CisJCTZFQzM2MkQ5MjVC
NEM1NDUwMDkzN0Y4NSAvKiBXZWJHTE11bHRpRHJhdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkVDMzYyRDcyNUI0QzUzRTAwOTM3Rjg1IC8qIFdlYkdM
TXVsdGlEcmF3LmggKi87IH07CisJCTZFQzQ4MEEyMTZFQTYzOEEwMEE0OERDQiAvKiBGbG9hdFBv
bHlnb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZF
QzQ4MEEwMTZFQTYzOEEwMEE0OERDQiAvKiBGbG9hdFBvbHlnb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RUQ4NzhDNTE0NzQ5M0Y0MDA0QzM1
OTcgLyogUmVuZGVyVGFibGVDYXB0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA2RUQ4NzhDMzE0NzQ5M0Y0MDA0QzM1OTcgLyogUmVuZGVyVGFibGVD
YXB0aW9uLmggKi87IH07CisJCTZFRDhDMzdBMTgzQkZGOEMwMDlFNTNCRCAvKiBCb3hTaGFwZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkVEOEMzNzgx
ODNCRkY4QzAwOUU1M0JEIC8qIEJveFNoYXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkVFOEE3NzMxMEY4MDNGMzAwNUE0QTI0IC8qIEpTV2Vi
R0xDb250ZXh0QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkVFOEE3NzExMEY4MDNGMzAwNUE0QTI0IC8qIEpTV2ViR0xDb250ZXh0QXR0
cmlidXRlcy5oICovOyB9OworCQk2RjBCOThCNTIzRjI2OEVDMDBFRUMyRjIgLyogTGF5b3V0SW5s
aW5lVGV4dEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkYwQjk4QjMyM0YyNjhFQjAwRUVDMkYyIC8qIExheW91dElubGluZVRleHRCb3guaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RjBDRDY5NTIy
OUVEMzI3MDBDNTk5NEUgLyogSW5saW5lTGluZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNkYwQ0Q2OTQyMjlFRDMyNzAwQzU5OTRFIC8qIElubGluZUxp
bmUuaCAqLzsgfTsKKwkJNkYxNTUyMjEyNjQ3NkI1QzAwRTM1M0M2IC8qIFRhYmxlV3JhcHBlckJs
b2NrRm9ybWF0dGluZ1F1aXJrcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNkYxNTUyMjAyNjQ3NkI1QjAwRTM1M0M2IC8qIFRhYmxlV3JhcHBlckJsb2Nr
Rm9ybWF0dGluZ1F1aXJrcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTZGMTcyNjRGMjQ3MEM2MEIwMDUxOEM5NiAvKiBUYWJsZVdyYXBwZXJCbG9j
a0Zvcm1hdHRpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2RjE3MjY0RTI0NzBDNjBBMDA1MThDOTYgLyogVGFibGVXcmFwcGVyQmxvY2tG
b3JtYXR0aW5nQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTZGMUNDMURFMjI1RjhCNDkwMDcyMEFEMiAvKiBJbmxpbmVUZXh0SXRlbS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkYxQ0MxREQy
MjVGOEI0MjAwNzIwQUQyIC8qIElubGluZVRleHRJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkYxRTgzQTIyNjY1ODg0QzAwMkU5RDI4IC8q
IFRhYmxlRm9ybWF0dGluZ0NvbnN0cmFpbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2RjFFODNBMDI2NjU4ODRDMDAyRTlEMjggLyogVGFibGVGb3Jt
YXR0aW5nQ29uc3RyYWludHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk2RjFFODNBNjI2NjU4ODhDMDAyRTlEMjggLyogRm9ybWF0dGluZ0NvbnN0
cmFpbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2
RjFFODNBNTI2NjU4ODhDMDAyRTlEMjggLyogRm9ybWF0dGluZ0NvbnN0cmFpbnRzLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkYyNkJCNkMyMzM0
M0U2RjAwMkYyQkVBIC8qIExheW91dENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGMjZCQjZCMjMzNDNFNUIwMDJGMkJFQSAvKiBMYXlvdXRD
b250ZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNkYyNkVCNDgyMzQwMDRBNTAwNjkwNkUyIC8qIElubGluZUxpbmVCdWlsZGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RjI2RUI0NjIzNDAwNEE1
MDA2OTA2RTIgLyogSW5saW5lTGluZUJ1aWxkZXIuaCAqLzsgfTsKKwkJNkYzNjBFNTAyMzk5OTQy
MTAwMTUxMkE3IC8qIElubGluZVNvZnRMaW5lQnJlYWtJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RjM2MEU0RTIzOTk5NDIwMDAxNTEyQTcgLyog
SW5saW5lU29mdExpbmVCcmVha0l0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk2RjNGQkE5ODI1NTZFMzEzMDAzNTMwRkQgLyogTGF5b3V0SW50
ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNkYzRkJBOTcyNTU2RTMxMjAwMzUzMEZEIC8qIExheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RjQwREE4MjI1MTMwMzNBMDBFQzA0QjcgLyogSW5s
aW5lUmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NkY0MERBODEyNTEzMDMzQTAwRUMwNEI3IC8qIElubGluZVJlY3QuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RjQ5QzNFNzI2NDc5QjNDMDA1MTk1
M0QgLyogVGFibGVGb3JtYXR0aW5nUXVpcmtzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2RjQ5QzNFNjI2NDc5QjNCMDA1MTk1M0QgLyogVGFibGVGb3Jt
YXR0aW5nUXVpcmtzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNkY1NkI0NDcyNjQ3OUU2MjAwQUFFMjU3IC8qIEZvcm1hdHRpbmdRdWlya3MuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGNTZCNDQ2MjY0
NzlFNjEwMEFBRTI1NyAvKiBGb3JtYXR0aW5nUXVpcmtzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkY2MzgzRjYyNDI3QUY0QTAwREFCQTUzIC8q
IExheW91dEluaXRpYWxDb250YWluaW5nQmxvY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGNjM4M0Y0MjQyN0FGNDkwMERBQkE1MyAvKiBMYXlvdXRJ
bml0aWFsQ29udGFpbmluZ0Jsb2NrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJNkY2REYzNkYyNjQ3MjJFQTAwOTNFODM0IC8qIEJsb2NrTWFyZ2lu
Q29sbGFwc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDZGNkRGMzZFMjY0NzIyRUEwMDkzRTgzNCAvKiBCbG9ja01hcmdpbkNvbGxhcHNlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkY2RUU3NDMyNkQ0
NEVFMzAwMzc0Q0RBIC8qIElubGluZUxpbmVCb3hWZXJ0aWNhbEFsaWduZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGNkVFNzQxMjZENDRFRTIwMDM3
NENEQSAvKiBJbmxpbmVMaW5lQm94VmVydGljYWxBbGlnbmVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkY3Q0EzQzYyMDhDMjk1NzAwMkYyOUFC
IC8qIExheW91dFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA2RjdDQTNDNDIwOEMyOTU2MDAyRjI5QUIgLyogTGF5b3V0U3RhdGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RjdDQTNDQTIwOEMy
QjJFMDAyRjI5QUIgLyogSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGN0NBM0M4MjA4QzJCMkUwMDJGMjlBQiAv
KiBJbmxpbmVGb3JtYXR0aW5nQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTZGOTE0MjExMjUxNTIxMzgwMDRFNEZFQSAvKiBJbmxpbmVM
aW5lR2VvbWV0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDZGOTE0MjBGMjUxNTIxMzcwMDRFNEZFQSAvKiBJbmxpbmVMaW5lR2VvbWV0cnkuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2Rjk5NUExNjFB
NzA3NTYyMDBBNzM1RjQgLyogV2ViR0xTeW5jLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA2Rjk5NUExNDFBNzA3NTYyMDBBNzM1RjQgLyogV2ViR0xTeW5j
LmggKi87IH07CisJCTZGOTk1QTIwMUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFF1ZXJ5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2Rjk5NUExODFBNzA3
OEIxMDBBNzM1RjQgLyogV2ViR0xRdWVyeS5oICovOyB9OworCQk2Rjk5NUEyMjFBNzA3OEIxMDBB
NzM1RjQgLyogV2ViR0xTYW1wbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2Rjk5NUExQTFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xTYW1wbGVyLmgg
Ki87IH07CisJCTZGOTk1QTI0MUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFRyYW5zZm9ybUZlZWRi
YWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2Rjk5
NUExQzFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xUcmFuc2Zvcm1GZWVkYmFjay5oICovOyB9Owor
CQk2Rjk5NUEyNjFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkY5OTVBMUUxQTcw
NzhCMTAwQTczNUY0IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3QuaCAqLzsgfTsKKwkJNkY5OTVB
MzIxQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xRdWVyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkY5OTVBMjgxQTcwODMzNzAwQTczNUY0IC8qIEpT
V2ViR0xRdWVyeS5oICovOyB9OworCQk2Rjk5NUEzNDFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJH
TFNhbXBsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDZGOTk1QTJBMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdMU2FtcGxlci5oICovOyB9OworCQk2
Rjk5NUEzNjFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJHTFN5bmMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGOTk1QTJDMUE3MDgzMzcwMEE3MzVGNCAv
KiBKU1dlYkdMU3luYy5oICovOyB9OworCQk2Rjk5NUEzODFBNzA4MzM3MDBBNzM1RjQgLyogSlNX
ZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2Rjk5NUEyRTFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJHTFRyYW5zZm9y
bUZlZWRiYWNrLmggKi87IH07CisJCTZGOTk1QTNBMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdM
VmVydGV4QXJyYXlPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDZGOTk1QTMwMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdMVmVydGV4QXJyYXlP
YmplY3QuaCAqLzsgfTsKKwkJNkZBNDQ1NEU4OThGMkZDMTY4QkMzOEMxIC8qIEpTQmVmb3JlVW5s
b2FkRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDI5RTA0QTI3QkVEMkY4MUY5OEU5MDIyQiAvKiBKU0JlZm9yZVVubG9hZEV2ZW50LmggKi87IH07
CisJCTZGQUFFNzEzMjZBMjgxNEIwMEUwNzUwMiAvKiBJbmxpbmVMZXZlbEJveC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkZBQUU3MTEyNkEyODE0QTAw
RTA3NTAyIC8qIElubGluZUxldmVsQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkZCMTFCNUMyMTc4M0ZEMDAwRTJBNTc0IC8qIFRleHRVdGls
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RkIxMUI1
OTIxNzgzRkNGMDBFMkE1NzQgLyogVGV4dFV0aWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RkIyNDAwNTIzREZGMTI4MDA3OTY0NTggLyogSW5s
aW5lTGluZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkZCMjQwMDMyM0RGRjEyNzAwNzk2NDU4IC8qIElubGluZUxpbmVCb3guaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RkI0N0U2MzIyNzc0MjVB
MDBDN0JDQjAgLyogTGF5b3V0SW50ZWdyYXRpb25MaW5lLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RkI0N0U2MTIyNzc0MjVBMDBDN0JDQjAgLyogTGF5
b3V0SW50ZWdyYXRpb25MaW5lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNkZCNUUyMTQyMjFGMjQ1MzAwMzk4OUNGIC8qIENvbnRlbnRDaGFuZ2VP
YnNlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NkZCNUUyMTIyMjFGMjQ0NzAwMzk4OUNGIC8qIENvbnRlbnRDaGFuZ2VPYnNlcnZlci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTZGQjdEMkREMjUw
RkQ4MjgwMDAyMDdBQSAvKiBGbGV4Rm9ybWF0dGluZ0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGQjdEMkQ5MjUwRkQ3RkMwMDAyMDdBQSAv
KiBGbGV4Rm9ybWF0dGluZ0NvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk2RkI3RDJERTI1MEZEODJFMDAwMjA3QUEgLyogRmxleEZvcm1h
dHRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkZCN0QyREEyNTBGRDdGQzAwMDIwN0FBIC8qIEZsZXhGb3JtYXR0aW5nU3RhdGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RkMzRjk0NzI1
MTY3NTY3MDBBNDlCRUEgLyogSW5saW5lTGluZVJ1bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkZDM0Y5NDUyNTE2NzU2NjAwQTQ5QkVBIC8qIElubGlu
ZUxpbmVSdW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk2RkNCREI5NzI2NURGMkM4MDAyMUVBN0IgLyogTGF5b3V0Q29udGFpbmluZ0Jsb2NrQ2hh
aW5JdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNkZDQkRCOTUyNjVERjJDNzAwMjFFQTdCIC8qIExheW91dENvbnRhaW5pbmdCbG9ja0NoYWlu
SXRlcmF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk2RkQwOTU0MzI1MTExNTIyMDA5ODg3N0QgLyogTGF5b3V0R2VvbWV0cnlSZWN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RkQwOTU0MTI1MTEx
NTIyMDA5ODg3N0QgLyogTGF5b3V0R2VvbWV0cnlSZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkZFMTk4MTcyMTc4Mzk3QzAwNDQ2RjA4IC8q
IElubGluZUNvbnRlbnRCcmVha2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2RkUxOTgxNTIxNzgzOTdDMDA0NDZGMDggLyogSW5saW5lQ29udGVudEJy
ZWFrZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk2RkU2MzZFODI2NDc5NjI5MDBGMDk1MUUgLyogSW5saW5lRm9ybWF0dGluZ1F1aXJrcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkZFNjM2RTcyNjQ3
OTYyOTAwRjA5NTFFIC8qIElubGluZUZvcm1hdHRpbmdRdWlya3MuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk2RkU3Q0ZBMjIxNzdFRUYyMDA1QjE1
NzMgLyogSW5saW5lSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNkZFN0NGQTAyMTc3RUVGMTAwNUIxNTczIC8qIElubGluZUl0ZW0uaCAqLzsgfTsK
KwkJNkZGOTExRjcyNjQ4N0ZDODAwMjAyMURGIC8qIEZsZXhGb3JtYXR0aW5nR2VvbWV0cnkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGRjkxMUY2MjY0
ODdGQzgwMDIwMjFERiAvKiBGbGV4Rm9ybWF0dGluZ0dlb21ldHJ5LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNkZGQTRDMDEyM0YyRkVEOTAwN0U0
RUJDIC8qIExheW91dExpbmVCcmVha0JveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNkZGQTRDMDAyM0YyRkVEOTAwN0U0RUJDIC8qIExheW91dExpbmVC
cmVha0JveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTZGRkRDNDQyMjEyRUZGMTcwMEE5Q0E5MSAvKiBGbG9hdEF2b2lkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDZGRkRDNDQwMjEyRUZGMTYwMEE5
Q0E5MSAvKiBGbG9hdEF2b2lkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk3MDlBMDFGRTFFM0QwQkREMDA2QjBENEMgLyogTW9kdWxlRmV0Y2hG
YWlsdXJlS2luZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNzA5QTAxRkQxRTNEMEJDQzAwNkIwRDRDIC8qIE1vZHVsZUZldGNoRmFpbHVyZUtpbmQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTAyNUVD
RDFGOTlGMENFMDA0QTI1MEMgLyogQW5pbWF0aW9uVGltZWxpbmUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMDI1RUM3MUY5OUYwOTYwMDRBMjUwQyAv
KiBBbmltYXRpb25UaW1lbGluZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTcxMDI1RUQwMUY5OUYwQ0UwMDRBMjUwQyAvKiBEb2N1bWVudFRpbWVs
aW5lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTAy
NUVDNTFGOTlGMDk2MDA0QTI1MEMgLyogRG9jdW1lbnRUaW1lbGluZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMDI1RUQzMUY5OUYwQ0UwMDRB
MjUwQyAvKiBXZWJBbmltYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDcxMDI1RUMyMUY5OUYwOTYwMDRBMjUwQyAvKiBXZWJBbmltYXRpb24uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTAyNUVE
RTFGOTlGMUVDMDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1lbGluZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEwMjVFRDkxRjk5RjFBNzAwNEEyNTBD
IC8qIEpTQW5pbWF0aW9uVGltZWxpbmUuaCAqLzsgfTsKKwkJNzEwMjVFRTAxRjk5RjFFQzAwNEEy
NTBDIC8qIEpTRG9jdW1lbnRUaW1lbGluZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNzEwMjVFREMxRjk5RjFBODAwNEEyNTBDIC8qIEpTRG9jdW1lbnRU
aW1lbGluZS5oICovOyB9OworCQk3MTAyNUVFMjFGOTlGMUVDMDA0QTI1MEMgLyogSlNXZWJBbmlt
YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MDI1RUQ4MUY5OUYxQTYwMDRBMjUwQyAvKiBKU1dlYkFuaW1hdGlvbi5oICovOyB9OworCQk3MTA4
RUVFNjI0MThFRDVBMDA1QzNEQTcgLyogV2ViQW5pbWF0aW9uVHlwZXMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMDhFRUU0MjQxOEVENTMwMDVDM0RB
NyAvKiBXZWJBbmltYXRpb25UeXBlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTcxMTEyNDNFMjE2RkE3MTEwMEVCN0I2NyAvKiBDb21wb3NpdGVP
cGVyYXRpb25PckF1dG8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDcxMTEyNDNCMjE2RkE2RTAwMEVCN0I2NyAvKiBDb21wb3NpdGVPcGVyYXRpb25PckF1
dG8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
MTExMjQ0MTIxNkZBN0NEMDBFQjdCNjcgLyogSlNDb21wb3NpdGVPcGVyYXRpb25PckF1dG8uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMTEyNDQwMjE2
RkE3QkUwMEVCN0I2NyAvKiBKU0NvbXBvc2l0ZU9wZXJhdGlvbk9yQXV0by5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMTZFMkNDMUZFRDc1REMw
MEMwNkZERSAvKiBDb21wdXRlZEVmZmVjdFRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzExNkUyQ0IxRkVENzVEMTAwQzA2RkRFIC8qIENvbXB1
dGVkRWZmZWN0VGltaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNzExNkUyQ0YxRkVENzY1QjAwQzA2RkRFIC8qIEpTQ29tcHV0ZWRFZmZlY3RU
aW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MTZFMkNFMUZFRDc2NTIwMEMwNkZERSAvKiBKU0NvbXB1dGVkRWZmZWN0VGltaW5nLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzExNzQ0NTkxNEJD
MzRFQzAwRUU1RkM4IC8qIFNWR1RleHRNZXRyaWNzQnVpbGRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzExNzQ0NTcxNEJDMzRFMjAwRUU1RkM4IC8q
IFNWR1RleHRNZXRyaWNzQnVpbGRlci5oICovOyB9OworCQk3MTE4RkVENTE1Njg1Q0M2MDAzMEI3
OUEgLyogSlNTVkdWaWV3U3BlYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNzExOEZFRDMxNTY4NUNDNjAwMzBCNzlBIC8qIEpTU1ZHVmlld1NwZWMuaCAq
LzsgfTsKKwkJNzExOTQ2NTYyNDE4MUVBMTAwNDY2QzExIC8qIEVsZW1lbnRBbmltYXRpb25SYXJl
RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEx
OTQ2NTMyNDE4MUU4MzAwNDY2QzExIC8qIEVsZW1lbnRBbmltYXRpb25SYXJlRGF0YS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMUFEMTI2MjM2
RDg2RTUwMDZGRjM3QyAvKiBBbmltYXRpb25FdmVudEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMUFEMTIzMjM2RDg2RDMwMDZGRjM3QyAvKiBB
bmltYXRpb25FdmVudEJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk3MTIwNzM0MDIxNkRGQjAwMDBDNzgzMjkgLyogT3B0aW9uYWxFZmZlY3RU
aW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MjA3MzNEMjE2REZBRjEwMEM3ODMyOSAvKiBPcHRpb25hbEVmZmVjdFRpbWluZy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxMjA3MzQzMjE2REZC
NDEwMEM3ODMyOSAvKiBKU09wdGlvbmFsRWZmZWN0VGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTIwNzM0MTIxNkRGQjMxMDBDNzgzMjkgLyog
SlNPcHRpb25hbEVmZmVjdFRpbWluZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTcxMjQ3RTM3MUZFQTVGODYwMDhDMDhDRSAvKiBDb21wb3NpdGVP
cGVyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDcxMjQ3RTM1MUZFQTVGODEwMDhDMDhDRSAvKiBDb21wb3NpdGVPcGVyYXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTI0N0UzODFGRUE1
Rjg2MDA4QzA4Q0UgLyogSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTI0N0UzMzFGRUE1RjgwMDA4QzA4
Q0UgLyogSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzEyNDdFMzkxRkVBNUY4NjAwOEMwOENFIC8q
IEtleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNzEyNDdFMkYxRkVBNUY3RDAwOEMwOENFIC8qIEtleWZyYW1lQW5p
bWF0aW9uT3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTcxMjQ3RTNBMUZFQTVGODYwMDhDMDhDRSAvKiBLZXlmcmFtZUVmZmVjdE9wdGlv
bnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMjQ3
RTMyMUZFQTVGN0YwMDhDMDhDRSAvKiBLZXlmcmFtZUVmZmVjdE9wdGlvbnMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTI0N0UzQjFGRUE1Rjkw
MDA4QzA4Q0UgLyogSlNDb21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMjQ3RTJFMUZFQTVGNjYwMDhDMDhDRSAvKiBKU0Nv
bXBvc2l0ZU9wZXJhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTcxMjQ3RTNDMUZFQTVGOTAwMDhDMDhDRSAvKiBKU0l0ZXJhdGlvbkNvbXBv
c2l0ZU9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNzEyNDdFMkMxRkVBNUY2NDAwOEMwOENFIC8qIEpTSXRlcmF0aW9uQ29tcG9zaXRlT3Bl
cmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNzEyNDdFM0QxRkVBNUY5MDAwOEMwOENFIC8qIEpTS2V5ZnJhbWVBbmltYXRpb25PcHRpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTI0N0Uy
NjFGRUE1RjYwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUFuaW1hdGlvbk9wdGlvbnMuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTI0N0UzRTFGRUE1
RjkwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUVmZmVjdE9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMjQ3RTJBMUZFQTVGNjIwMDhDMDhDRSAv
KiBKU0tleWZyYW1lRWZmZWN0T3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTcxMkJFNDdEMUZFODY0NTgwMDIwMzFDQyAvKiBFZmZlY3RU
aW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
MkJFNDdDMUZFODY0NDgwMDIwMzFDQyAvKiBFZmZlY3RUaW1pbmcuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTJCRTQ4MDFGRTg2NEE3MDAyMDMx
Q0MgLyogUGxheWJhY2tEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDcxMkJFNDdFMUZFODY0OUQwMDIwMzFDQyAvKiBQbGF5YmFja0RpcmVj
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTcxMkJFNDgzMUZFODY1REQwMDIwMzFDQyAvKiBGaWxsTW9kZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEyQkU0ODExRkU4NjVENDAwMjAzMUNDIC8q
IEZpbGxNb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJNzEyQkU0ODgxRkU4Njg2QTAwMjAzMUNDIC8qIEpTRmlsbE1vZGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMkJFNDg1MUZFODY4MTgwMDIw
MzFDQyAvKiBKU0ZpbGxNb2RlLmggKi87IH07CisJCTcxMkJFNDg5MUZFODY4NzUwMDIwMzFDQyAv
KiBKU1BsYXliYWNrRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3MTJCRTQ4NjFGRTg2ODU5MDAyMDMxQ0MgLyogSlNQbGF5YmFja0RpcmVj
dGlvbi5oICovOyB9OworCQk3MTJEQkE0OTIxRjhBRDgzMDA4RjM2QjIgLyogU2Nyb2xsaW5nQ29v
cmRpbmF0b3JUeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNzEyREJBNDcyMUY4QUQ3OTAwOEYzNkIyIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yVHlw
ZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
MTMxNzEzNDFGQkU3OERCMDBGNzU4REUgLyogQ1NTUHJvcGVydHlCbGVuZGluZ0NsaWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEzMTcxMzIxRkJF
NzhDNTAwRjc1OERFIC8qIENTU1Byb3BlcnR5QmxlbmRpbmdDbGllbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTMyNDQ1MTIwMTA5REE1MDBB
RTdGQjIgLyogV2ViQW5pbWF0aW9uVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTMyNDQ0RjIwMTA5RDlCMDBBRTdGQjIgLyogV2ViQW5p
bWF0aW9uVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNzEzNDQ5NkUxNDY5NDFCMzAwNzIwMzEyIC8qIFNWR0xlbmd0aENvbnRleHQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxMzQ0OTZD
MTQ2OTQxQjMwMDcyMDMxMiAvKiBTVkdMZW5ndGhDb250ZXh0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzEzOTIyQkUyNTE4QUI3NzAwNURCM0My
IC8qIFN0eWxlYWJsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNzEzOTIyQkMyNTE4QUI3MDAwNURCM0MyIC8qIFN0eWxlYWJsZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxM0YxRDVBMjNERjFEOEQw
MDNGNUVGQSAvKiBHZXRBbmltYXRpb25zT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzEzRjFENTkyM0RGMUQ3RDAwM0Y1RUZBIC8qIEdldEFu
aW1hdGlvbnNPcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNzEzRjFENUQyM0RGMjU4MjAwM0Y1RUZBIC8qIEpTR2V0QW5pbWF0aW9uc09w
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcx
M0YxRDVCMjNERjI1NjAwMDNGNUVGQSAvKiBKU0dldEFuaW1hdGlvbnNPcHRpb25zLmggKi87IH07
CisJCTcxNDk1RERCMjAyQjA2RjEwMEFERkQzNCAvKiBKU0VmZmVjdFRpbWluZy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzE0OTVEREEyMDJCMDZERTAw
QURGRDM0IC8qIEpTRWZmZWN0VGltaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzE0QzdDNjYxRkRBRDJBMTAwRjJCRUUxIC8qIEFuaW1hdGlv
blBsYXliYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDcxNEM3QzY1MUZEQUQyN0IwMEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFja0V2ZW50
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzE0
QzdDNjcxRkRBRDJBOTAwRjJCRUUxIC8qIEFuaW1hdGlvblBsYXliYWNrRXZlbnRJbml0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTRDN0M2MjFGREFE
MjdBMDBGMkJFRTEgLyogQW5pbWF0aW9uUGxheWJhY2tFdmVudEluaXQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MTRDN0M2QzFGREFEQUYzMDBG
MkJFRTEgLyogSlNBbmltYXRpb25QbGF5YmFja0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTRDN0M2QTFGREFEQUQ1MDBGMkJFRTEgLyogSlNB
bmltYXRpb25QbGF5YmFja0V2ZW50LmggKi87IH07CisJCTcxNEM3QzZEMUZEQURBRjYwMEYyQkVF
MSAvKiBKU0FuaW1hdGlvblBsYXliYWNrRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTRDN0M2QjFGREFEQUQ1MDBGMkJFRTEgLyogSlNB
bmltYXRpb25QbGF5YmFja0V2ZW50SW5pdC5oICovOyB9OworCQk3MTUzN0EwMTE0NkJEOUQ3MDA4
QkQ2MTUgLyogU1ZHUGF0aERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDcxNTM3OUZGMTQ2QkQ5RDYwMDhCRDYxNSAvKiBTVkdQYXRoRGF0YS5oICov
OyB9OworCQk3MTU1NkNCNDFGOUYwOUJBMDBFNzhEMDggLyogS2V5ZnJhbWVFZmZlY3QuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxNTU2Q0FBMUY5RjA5
OUIwMEU3OEQwOCAvKiBLZXlmcmFtZUVmZmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxNTU2Q0JFMUY5RjBBNDkwMEU3OEQwOCAvKiBKU0tl
eWZyYW1lRWZmZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3MTU1NkNCNzFGOUYwOUZDMDBFNzhEMDggLyogSlNLZXlmcmFtZUVmZmVjdC5oICovOyB9
OworCQk3MTU2QkNBMTIxQ0EzNTBGMDA1MzQzOTcgLyogQmFzaWNFZmZlY3RUaW1pbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxNTZCQzlGMjFDQTM1
MDYwMDUzNDM5NyAvKiBCYXNpY0VmZmVjdFRpbWluZy5oICovOyB9OworCQk3MTVBRDcyMDIwNTA1
MTMyMDBENTkyREMgLyogRGVjbGFyYXRpdmVBbmltYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxNUFENzFEMjA1MDUxMjQwMEQ1OTJEQyAvKiBE
ZWNsYXJhdGl2ZUFuaW1hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTcxNUFENzIxMjA1MDUxM0YwMEQ1OTJEQyAvKiBDU1NUcmFuc2l0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MTIzQzE4
NjIwNDczOUJBMDA3ODkzOTIgLyogQ1NTVHJhbnNpdGlvbi5oICovOyB9OworCQk3MTcyOUY3QjIw
RjNCQTQ5MDA4MDFDRTYgLyogRG9jdW1lbnRUaW1lbGluZU9wdGlvbnMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcxNzI5RjdBMjBGM0JBM0EwMDgwMUNF
NiAvKiBEb2N1bWVudFRpbWVsaW5lT3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTcxNzI5RjdFMjBGM0JCNDcwMDgwMUNFNiAvKiBKU0Rv
Y3VtZW50VGltZWxpbmVPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3MTcyOUY3QzIwRjNCQUI5MDA4MDFDRTYgLyogSlNEb2N1bWVudFRpbWVs
aW5lT3B0aW9ucy5oICovOyB9OworCQk3MTgxQTE2QzI0NEYwRjQwMDA3RDhBMjQgLyogRG9jdW1l
bnRUaW1lbGluZXNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3MTgxQTE2OTI0NEYwRjJDMDA3RDhBMjQgLyogRG9jdW1lbnRUaW1lbGlu
ZXNDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNzFBMUI2MDgxREVFNUFENzAwNzNCQ0ZCIC8qIG1vZGVybi1tZWRpYS1jb250cm9s
cy1sb2NhbGl6ZWQtc3RyaW5ncy5qcyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNzFBMUI2MDYxREVFNUE4MjAwNzNCQ0ZCIC8qIG1vZGVybi1tZWRpYS1j
b250cm9scy1sb2NhbGl6ZWQtc3RyaW5ncy5qcyAqLzsgfTsKKwkJNzFBM0QxODEyNTYyQjg1QjAw
NjRFMkE2IC8qIEhUTUxNb2RlbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDcxQTNEMTdEMjU2MkI4MjQwMDY0RTJBNiAvKiBIVE1MTW9kZWxF
bGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNzFBM0QxODQyNTYyQkUwQjAwNjRFMkE2IC8qIEpTSFRNTE1vZGVsRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzFBM0QxODMyNTYyQkRE
QjAwNjRFMkE2IC8qIEpTSFRNTE1vZGVsRWxlbWVudC5oICovOyB9OworCQk3MUE1N0RGMjE1NEJF
MjVDMDAwOUQxMjAgLyogU1ZHUGF0aFV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzFBNTdERjAxNTRCRTI1QzAwMDlEMTIwIC8qIFNWR1Bh
dGhVdGlsaXRpZXMuaCAqLzsgfTsKKwkJNzFBNTgxOTYyMzZGNDY3NjAwRDgxQTI0IC8qIEtleWZy
YW1lRWZmZWN0U3RhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDcxQTU4MTkzMjM2RjQ2NjQwMEQ4MUEyNCAvKiBLZXlmcmFtZUVmZmVjdFN0YWNrLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzFCMjg0
MjcyMDNDRUM0QzAwMzZBQTVEIC8qIEpTQ1NTQW5pbWF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MUIyODQyNjIwM0NFQzBEMDAzNkFBNUQgLyog
SlNDU1NBbmltYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk3MUI1QUIyNjIxRjFEOUY0MDAzNzZFNUMgLyogUG9pbnRlckNhcHR1cmVDb250
cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
MUI1QUIyNDIxRjFEOUUyMDAzNzZFNUMgLyogUG9pbnRlckNhcHR1cmVDb250cm9sbGVyLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzFCN0VFMEQy
MUI1QzY4NzAwMzFDMUVGIC8qIFRvdWNoQWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MUFFRTRFQjIxQjVBNDlDMDBEREIwMzYgLyogVG91Y2hB
Y3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk3MUMyOUUzMjIwM0NFNzgxMDA4RjM2RDIgLyogQ1NTQW5pbWF0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MUMyOUUzMDIwM0NFNzZCMDA4RjM2
RDIgLyogQ1NTQW5pbWF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJNzFDOTE2MDgxRDE0ODNBMzAwQUNBNDdEIC8qIFVzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDcxQzkxNjA3MUQxNDgzQTMwMEFDQTQ3RCAvKiBVc2VySW50ZXJmYWNlTGF5b3V0RGly
ZWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJNzFEQ0I3MDIxNTY4MTk3NjAwODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzFEQ0I3MDAxNTY4MTk3NjAw
ODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5oICovOyB9OworCQk3MUUyMTgzQTE3MzU5RkI4MDA2
RTZFNEQgLyogUGx1Z0luc1Jlc291cmNlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNzFFMjE4MzgxNzM1OUZCODAwNkU2RTREIC8qIFBsdWdJbnNSZXNv
dXJjZXMuaCAqLzsgfTsKKwkJNzFFMkM0MjYyMUM5MzUyODAwMjRGOEM4IC8qIEFuaW1hdGlvbkVm
ZmVjdFBoYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3MUUyQzQyNDIxQzkzNTFEMDAyNEY4QzggLyogQW5pbWF0aW9uRWZmZWN0UGhhc2UuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MUVBRENEODIy
MDg3RTcyMDA2NUE0NUYgLyogUG9pbnRlcklELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3MUVBRENENjIyMDg3RTZEMDA2NUE0NUYgLyogUG9pbnRlcklE
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzFF
RkNFREMyMDJCMzhBOTAwRDdDNDExIC8qIEFuaW1hdGlvbkVmZmVjdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzFFRkNFRDcyMDJCMzg4RDAwRDdDNDEx
IC8qIEFuaW1hdGlvbkVmZmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTcxRjA1RjgwMjUxMjQ0MkUwMDcxRTY5MyAvKiBDU1NQcm9wZXJ0eUFu
aW1hdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NzFGMDVGN0UyNTEyNDQwQzAwNzFFNjkzIC8qIENTU1Byb3BlcnR5QW5pbWF0aW9uLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzIxNDQzMzMyMjNF
QzhCMDAwRjEyRkY3IC8qIFNWR1Byb3BlcnR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1NUVFNTM2MzIyM0IyQTI0MDBGQkE5NDQgLyogU1ZHUHJvcGVy
dHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
MjE0NDMzNDIyM0VDOTE2MDBGMTJGRjcgLyogU1ZHUHJvcGVydHlPd25lci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTVFRTUzNjAyMjNCMkEyMTAwRkJB
OTQ0IC8qIFNWR1Byb3BlcnR5T3duZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk3MjFCNDk3NDI1MTJCQTNCMDBGRTlEM0IgLyogSW1hZ2VCaXRt
YXBCYWNraW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3MjFCNDk3MDI1MTJBQzA0MDBGRTlEM0IgLyogSW1hZ2VCaXRtYXBCYWNraW5nLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzIyODNGMEUyMzBC
MjY4QzAwRjVEODI4IC8qIEltYWdlUGFpbnRpbmdPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MkMxOEEzRjIzMEIwNEI3MDA2ODQ3QzcgLyog
SW1hZ2VQYWludGluZ09wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk3MjQyQUM5NzI1NzU4RkUxMDA1QTlDRjEgLyogRGlzcGxheUxpc3RG
bHVzaElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDcyNDJBQzk1MjU3NThGRTAwMDVBOUNGMSAvKiBEaXNwbGF5TGlzdEZsdXNoSWRlbnRp
Zmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTcyNEVEMzMyMUEzQThCMjMwMEY1RjEzQyAvKiBKU0VYVEJsZW5kTWluTWF4LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MjRFRDMzMDFBM0E4QjIzMDBG
NUYxM0MgLyogSlNFWFRCbGVuZE1pbk1heC5oICovOyB9OworCQk3MjRFRTU1MDFEQzgwRDdGMDBB
OTFGRkIgLyogQWN0aXZpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNzI0RUU1NEUxREM3RjI1QjAwQTkxRkZCIC8qIEFjdGl2aXR5U3RhdGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MjRF
RTU1MTFEQzgwRDg0MDBBOTFGRkIgLyogQWN0aXZpdHlTdGF0ZUNoYW5nZU9ic2VydmVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MjRFRTU0RjFEQzdG
MjVCMDBBOTFGRkIgLyogQWN0aXZpdHlTdGF0ZUNoYW5nZU9ic2VydmVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzI2RDU2RTIyNTNBRTI4RDAw
MDJFRjkwIC8qIFBsYXRmb3JtSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDcyNkQ1NkUxMjUzQUUwNDMwMDAyRUY5MCAvKiBQbGF0Zm9ybUltYWdl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzI2
RDU2RTMyNTNBRTM2NjAwMDJFRjkwIC8qIE5hdGl2ZUltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1NUEzMzZGNjFEODIwOUY0MDAyMkM0QzcgLyog
TmF0aXZlSW1hZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk3MjdBN0YzQTI0MDc4Qjg0MDA0RDI5MzEgLyogSW1hZ2VCdWZmZXJJT1N1cmZhY2VC
YWNrZW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
MkJBQzNBQjIzRTFFNTQ0MDA4RDc0MUMgLyogSW1hZ2VCdWZmZXJJT1N1cmZhY2VCYWNrZW5kLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzI5OUJD
NjcyM0Q2QTUzMjAwQ0M2ODgzIC8qIEFscGhhUHJlbXVsdGlwbGljYXRpb24uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDcyOTlCQzY0MjNENjg2QTYwMEND
Njg4MyAvKiBBbHBoYVByZW11bHRpcGxpY2F0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzI5OUJDNjgyM0Q2QTUzRTAwQ0M2ODgzIC8qIFJl
bmRlcmluZ01vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDcyOTlCQzY2MjNENjg2QzYwMENDNjg4MyAvKiBSZW5kZXJpbmdNb2RlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzI5RDA1MzAyNTMxNDI0
MzAwNDIyMDk4IC8qIFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzI5RDA1MkUyNTMxM0UyNjAwNDIyMDk4
IC8qIFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTcyQTczQkVGMjQ1QTNGOTAwMDFDOUQwMyAvKiBB
bmltYXRpb25GcmFtZVJhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDcyMkE4MTVDMjM4RkQ1MDUwMEMwMDU4MyAvKiBBbmltYXRpb25GcmFtZVJhdGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3MkJB
QzNBRTIzRTFGMEIwMDA4RDc0MUMgLyogSW1hZ2VCdWZmZXJCYWNrZW5kLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3MkJBQzNBNTIzRTE3MzI4MDA4RDc0
MUMgLyogSW1hZ2VCdWZmZXJCYWNrZW5kLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzJGNjY3RTEyNjBDMjZBQzAwRUUzNkFEIC8qIERpYWdub3N0
aWNMb2dnaW5nRG9tYWluLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3MkY2NjdERjI2MEMyNjQ0MDBFRTM2QUQgLyogRGlhZ25vc3RpY0xvZ2dpbmdEb21h
aW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
NTUzQ0ZFODEwOEY0NzNGMDBFQTI4MUUgLyogVGltZWxpbmVSZWNvcmRGYWN0b3J5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3NTUzQ0ZFNjEwOEY0NzNG
MDBFQTI4MUUgLyogVGltZWxpbmVSZWNvcmRGYWN0b3J5LmggKi87IH07CisJCTc1NzkzRTg0MEQw
Q0UwQjMwMDdGQzBBQyAvKiBNZXNzYWdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc1NzkzRTgxMEQwQ0UwQjMwMDdGQzBBQyAvKiBNZXNzYWdl
RXZlbnQuaCAqLzsgfTsKKwkJNzU3OTNFQzkwRDBDRTcyRDAwN0ZDMEFDIC8qIEpTTWVzc2FnZUV2
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3NTc5
M0VDNzBEMENFNzJEMDA3RkMwQUMgLyogSlNNZXNzYWdlRXZlbnQuaCAqLzsgfTsKKwkJNzU5Q0I4
MzcxOTJEQTkxOTAwMTJCQzY0IC8qIENvbnRyb2xTdGF0ZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMUMwOEJDMThFMzVENjgwMEI2NTYxNSAvKiBD
b250cm9sU3RhdGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJNzYzM0E3MjYxM0Q4QjMzQTAwODUwMUI2IC8qIExvY2FsZVRvU2NyaXB0TWFwcGlu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNzYzM0E3
MjQxM0Q4QjMzQTAwODUwMUI2IC8qIExvY2FsZVRvU2NyaXB0TWFwcGluZy5oICovOyB9OworCQk3
Njk0NTYzRDEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc2OTQ1NjNCMTIxNEQ5N0MwMDA3Q0JB
RSAvKiBKU0RPTVRva2VuTGlzdC5oICovOyB9OworCQk3NkNERDJGMzExMDNEQTY2MDA2ODA1MjEg
LyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3NkNERDJFRDExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNzaWJpbGl0
eU1lbnVMaXN0LmggKi87IH07CisJCTc2Q0REMkY1MTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3Np
YmlsaXR5TWVudUxpc3RQb3B1cC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNzZDREQyRUYxMTAzREE2NjAwNjgwNTIxIC8qIEFjY2Vzc2liaWxpdHlNZW51
TGlzdFBvcHVwLmggKi87IH07CisJCTc2Q0REMkY3MTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3Np
YmlsaXR5TWVudUxpc3RPcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDc2Q0REMkYxMTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmlsaXR5TWVu
dUxpc3RPcHRpb24uaCAqLzsgfTsKKwkJNzZGQzJCMEMxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRv
a2VuTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NzZGQzJCMDkxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTc3Mjg2OTRGMTRGODg4MjUwMEY0
ODREQyAvKiBFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc3Mjg2OTRDMTRGODg4MjUwMEY0ODREQyAvKiBF
WFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaCAqLzsgfTsKKwkJNzcyODY5ODQxNEZEOUFEQTAw
RjQ4NERDIC8qIEpTRVhUVGV4dHVyZUZpbHRlckFuaXNvdHJvcGljLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3NzI4Njk4MjE0RkQ5QURBMDBGNDg0REMg
LyogSlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaCAqLzsgfTsKKwkJNzc3OUJEOTYxRjMy
MjQ2QTAwQzIxNDE3IC8qIEpTVmlzdWFsVmlld3BvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc3NzlCRDkyMUYyRkRCRjcwMEMyMTQxNyAvKiBKU1Zp
c3VhbFZpZXdwb3J0LmggKi87IH07CisJCTc3QTE3QTcyMTJGMjgxODIwMDRFMDJGNiAvKiBPRVNW
ZXJ0ZXhBcnJheU9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNzdBMTdBNkYxMkYyODE4MjAwNEUwMkY2IC8qIE9FU1ZlcnRleEFycmF5T2JqZWN0
LmggKi87IH07CisJCTc3QTE3QTc4MTJGMjg2NDIwMDRFMDJGNiAvKiBXZWJHTFZlcnRleEFycmF5
T2JqZWN0T0VTLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3N0ExN0E3NTEyRjI4NjQyMDA0RTAyRjYgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5o
ICovOyB9OworCQk3N0ExN0E3QjEyRjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlc0dMLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3N0ExN0E3QTEy
RjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlc0dMLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNzdBMTdBQTcxMkYyOEIyQTAwNEUwMkY2IC8q
IEpTT0VTVmVydGV4QXJyYXlPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDc3QTE3QUEzMTJGMjhCMkEwMDRFMDJGNiAvKiBKU09FU1ZlcnRleEFy
cmF5T2JqZWN0LmggKi87IH07CisJCTc3RDUxMDA0MUVENEY3MUUwMERBNEM4NyAvKiBKU0NyZWRl
bnRpYWxSZXF1ZXN0T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNzdENTBGRkYxRUQ0RjcwQzAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbFJlcXVl
c3RPcHRpb25zLmggKi87IH07CisJCTc3RDUxMDA2MUVENEY3MjUwMERBNEM4NyAvKiBKU0NyZWRl
bnRpYWxDcmVhdGlvbk9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDc3RDUwRkZEMUVENEY3MEMwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxDcmVh
dGlvbk9wdGlvbnMuaCAqLzsgfTsKKwkJNzdENTEwMEIxRUQ1RTI4ODAwREE0Qzg3IC8qIENyZWRl
bnRpYWxSZXF1ZXN0T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNzdENTBGRkIxRUQ0RjE2QzAwREE0Qzg3IC8qIENyZWRlbnRpYWxSZXF1ZXN0
T3B0aW9ucy5oICovOyB9OworCQk3N0Q1MTAwRDFFRDVFMjk1MDBEQTRDODcgLyogQ3JlZGVudGlh
bENyZWF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNzdBQUQ2ODUxRUNGQkQzOTAwQkZBMkQxIC8qIENyZWRlbnRpYWxDcmVhdGlvbk9w
dGlvbnMuaCAqLzsgfTsKKwkJNzdENTEwMTcxRUQ2MDIyMjAwREE0Qzg3IC8qIENyZWRlbnRpYWxz
Q29udGFpbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3N0Q1MTAxNjFFRDYwMjFCMDBEQTRDODcgLyogQ3JlZGVudGlhbHNDb250YWluZXIuaCAqLzsg
fTsKKwkJNzdENTEwMUMxRUQ3MjJCRjAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbHNDb250YWluZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc3RDUxMDFC
MUVENzIyQjUwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxzQ29udGFpbmVyLmggKi87IH07CisJCTc3
RDUxMDI1MUVENzRCNTgwMERBNEM4NyAvKiBKU05hdmlnYXRvckNyZWRlbnRpYWxzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3N0Q1MTAyNDFFRDc0QjU1
MDBEQTRDODcgLyogSlNOYXZpZ2F0b3JDcmVkZW50aWFscy5oICovOyB9OworCQk3N0VGNjJGNDEy
RjlEQjc0MDBDNzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3N0VGNjJGMjEyRjlEQjc0MDBD
NzdCRDIgLyogSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggKi87IH07CisJCTc5QUM5MjE5
MTA5OTQ1QzgwMDIxMjY2RSAvKiBKU0NvbXBvc2l0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDc5QUM5MjE3MTA5OTQ1QzgwMDIxMjY2RSAv
KiBKU0NvbXBvc2l0aW9uRXZlbnQuaCAqLzsgfTsKKwkJNzlGMkY1QTIxMDkxOTM5QTAwMEQ4N0NC
IC8qIENvbXBvc2l0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDc5RjJGNTlGMTA5MTkzOUEwMDBEODdDQiAvKiBDb21wb3NpdGlvbkV2ZW50
LmggKi87IH07CisJCTdBMDlDRUYxMUYwMjA2OUIwMEU5M0JEQiAvKiBGaWxlTW9uaXRvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0EwOUNFRUMxRjAx
Q0M5MzAwRTkzQkRCIC8qIEZpbGVNb25pdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0EwRTc3MEYxMEMwMEE4ODAwQTAyNzZFIC8qIEluc3Bl
Y3RvckZyb250ZW5kSG9zdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0EwRTc3MEMxMEMwMEE4ODAwQTAyNzZFIC8qIEluc3BlY3RvckZyb250ZW5kSG9z
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdB
MEU3NzFGMTBDMDBEQjEwMEEwMjc2RSAvKiBKU0luc3BlY3RvckZyb250ZW5kSG9zdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0EwRTc3MUQxMEMwMERC
MTAwQTAyNzZFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmggKi87IH07CisJCTdBMjI3MzIx
MjBDOUZBRkUwMERCMURFRiAvKiBXZWJLaXROU0ltYWdlRXh0cmFzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QTIyNzMxRjIwQzlGOURBMDBEQjFERUYg
LyogV2ViS2l0TlNJbWFnZUV4dHJhcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTdBMjlGNTcyMThDNjk1MTQwMDREMEY4MSAvKiBPdXRPZkJhbmRU
ZXh0VHJhY2tQcml2YXRlQVZGLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QTI5RjU3MTE4QzY5NTE0MDA0RDBGODEgLyogT3V0T2ZCYW5kVGV4dFRyYWNr
UHJpdmF0ZUFWRi5oICovOyB9OworCQk3QTQ1MDMzMDE4REI3MTcyMDAzNzdCMzQgLyogQnVmZmVy
ZWRMaW5lUmVhZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QTQ1MDMyRTE4REI3MTcyMDAzNzdCMzQgLyogQnVmZmVyZWRMaW5lUmVhZGVyLmggKi87
IH07CisJCTdBNTQ4NTgwMTRFMDJENTEwMDZBRTA1QSAvKiBJbnNwZWN0b3JIaXN0b3J5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QTU0ODU3RTE0RTAy
RDUxMDA2QUUwNUEgLyogSW5zcGVjdG9ySGlzdG9yeS5oICovOyB9OworCQk3QTU0ODgxNzE0RTQz
MkExMDA2QUUwNUEgLyogRE9NUGF0Y2hTdXBwb3J0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QTU0ODgxNTE0RTQzMkExMDA2QUUwNUEgLyogRE9NUGF0
Y2hTdXBwb3J0LmggKi87IH07CisJCTdBNTUxNUY1MTkxODMwQTMwMDk2ODdEMiAvKiBZb3VUdWJl
UGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdBNTUxNUYzMTkxODMwQTMwMDk2ODdEMiAvKiBZb3VUdWJlUGx1Z2luUmVwbGFj
ZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk3QTU2OTk3MDIwODZDNjE5MDAwRTA0MzMgLyogQ29va2llUmVxdWVzdEhlYWRlckZpZWxkUHJv
eHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNTY5
OTZFMjA4NkM2MTgwMDBFMDQzMyAvKiBDb29raWVSZXF1ZXN0SGVhZGVyRmllbGRQcm94eS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdBNjc0QkRD
MEY5RUJGNEUwMDZDRjA5OSAvKiBQYWdlR3JvdXBMb2FkRGVmZXJyZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNjc0QkRBMEY5RUJGNEUwMDZDRjA5
OSAvKiBQYWdlR3JvdXBMb2FkRGVmZXJyZXIuaCAqLzsgfTsKKwkJN0E5MjlDQTcxQzU5OEFBOTAw
NERGMjI2IC8qIFJlc291cmNlTG9hZFN0YXRpc3RpY3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTI5Q0EyMUM1OTgzNzgwMDRERjIyNiAvKiBSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThE
Q0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBQTNBNjlBMTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2OTYxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVDb250cm9s
bGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
N0FBM0E2OUMxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVHcmlkLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5ODE5NEE2NEU3MDAxQ0JEMjQgLyog
VGlsZUdyaWQuaCAqLzsgfTsKKwkJN0FBM0E2QTAxOTRCNTlCNjAwMUNCRDI0IC8qIExheWVyUG9v
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2
OUUxOTRCNTlCNjAwMUNCRDI0IC8qIExheWVyUG9vbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdBQTNBNkE0MTk0QjVDMjIwMDFDQkQyNCAvKiBU
aWxlQ292ZXJhZ2VNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdBQTNBNkEyMTk0QjVDMjIwMDFDQkQyNCAvKiBUaWxlQ292ZXJhZ2VNYXAuaCAqLzsg
fTsKKwkJN0FBQkEyNUExNEJDNjEzMzAwQUE5QTExIC8qIERPTUVkaXRvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBQkEyNTgxNEJDNjEzMzAwQUE5
QTExIC8qIERPTUVkaXRvci5oICovOyB9OworCQk3QURFNzIyNjEwQ0JCQjlCMDA2QjNCM0EgLyog
Q29udGV4dE1lbnVQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0FERTcyMjUxMENCQkI5QjAwNkIzQjNBIC8qIENvbnRleHRNZW51UHJvdmlk
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
QUUzMzVGMjFBQ0IwOUUyMDBFNDAxRUYgLyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUUzMzVGMDFBQ0IwOUUy
MDBFNDAxRUYgLyogV2hlZWxFdmVudFRlc3RNb25pdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0FFNkM5M0MxQkUwQzYwMTAwRTE5RTAzIC8q
IE1haW5UaHJlYWRTaGFyZWRUaW1lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gN0FFNkM5M0ExQkUwQzYwMTAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFy
ZWRUaW1lci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTdBRjlCMjAzMThDRkIyREYwMEM2NEJFRiAvKiBWVFRSZWdpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBRjlCMUZEMThDRkIyREYwMEM2NEJF
RiAvKiBWVFRSZWdpb24uaCAqLzsgfTsKKwkJN0FGOUIyMDYxOENGQjJERjAwQzY0QkVGIC8qIFZU
VFJlZ2lvbkxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdBRjlCMjAwMThDRkIyREYwMEM2NEJFRiAvKiBWVFRSZWdpb25MaXN0LmggKi87IH07CisJ
CTdBRjlCMjBEMThDRkI1RjQwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVG
IC8qIEpTVlRUUmVnaW9uLmggKi87IH07CisJCTdBRjlCMjBGMThDRkI1RjQwMEM2NEJFRiAvKiBK
U1ZUVFJlZ2lvbkxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdBRjlCMjBCMThDRkI1RjMwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbkxpc3QuaCAqLzsg
fTsKKwkJN0IxMDMzOUUyNTQ5NzIxNzAwQzhDMUFDIC8qIEdyYXBoaWNzQ29udGV4dEdMQ1YuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCMTAzMzlEMjU0
OTcyMDEwMEM4QzFBQyAvKiBHcmFwaGljc0NvbnRleHRHTENWLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0IxMDMzOUYyNTQ5NzIxRTAwQzhDMUFD
IC8qIEdyYXBoaWNzQ29udGV4dEdMQ1ZBTkdMRS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gN0IxMDMzOUMyNTQ5NzIwMTAwQzhDMUFDIC8qIEdyYXBoaWNz
Q29udGV4dEdMQ1ZBTkdMRS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTdCNDVBQjUwMjVGQjkzQkUwMEZEMjdGNCAvKiBHcmFwaGljc0NvbnRleHRH
TEFOR0xFRUdMVXRpbGl0aWVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdCNzc0QzYyMjVGQjkzNTUwMDkxMzk1RiAvKiBHcmFwaGljc0NvbnRleHRH
TEFOR0xFRUdMVXRpbGl0aWVzLmNwcCAqLzsgfTsKKwkJN0I0NUFCNTUyNUZCQTlERTAwRkQyN0Y0
IC8qIEdyYXBoaWNzQ29udGV4dEdMQU5HTEVFR0xVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCNDVBQjU0MjVGQkE5REQwMEZEMjdGNCAv
KiBHcmFwaGljc0NvbnRleHRHTEFOR0xFRUdMVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0I2REM4MTkyNTcxMkU5MjAwMzgwQzcw
IC8qIEdyYXBoaWNzQ29udGV4dEdMSU9TdXJmYWNlU3dhcENoYWluLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QjZEQzgxNzI1NzEyRTkyMDAzODBDNzAg
LyogR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QjczMTFGQjI1QzA5MkI3MDAzQjI3
OTYgLyogU2NvcGVkSGlnaFBlcmZvcm1hbmNlR1BVUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0I3MzExRkEyNUMwOTJCNzAwM0IyNzk2IC8q
IFNjb3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QjkwNDE3MDI1NTAxMTQyMDA2RUVCOEMgLyog
UmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdCOTA0MTZFMjU1MDExMDkwMDZFRUI4QyAvKiBSZW1v
dGVHcmFwaGljc0NvbnRleHRHTFByb3h5QmFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTdCQjM0QTE3MjUzNDVDQjIwMDAyOUQwOCAvKiBHcmFw
aGljc0NvbnRleHRHTEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QkIzNEExNjI1MzQ1Q0IyMDAwMjlEMDggLyogR3JhcGhpY3ND
b250ZXh0R0xBTkdMRVV0aWxpdGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTdCQjM0QTQ4MjUzNzc2Q0EwMDAyOUQwOCAvKiBHcmFwaGljc0Nv
bnRleHRHTEltYWdlRXh0cmFjdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QkIzNEE0NTI1Mzc3NkM2MDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0
R0xJbWFnZUV4dHJhY3Rvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTdCQjY4MEJBMjVCQTFCRTQwMDJCODczOCAvKiBHcmFwaGljc0NoZWNrc01h
Yy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0JCNjgw
QjgyNUJBMUJFNDAwMkI4NzM4IC8qIEdyYXBoaWNzQ2hlY2tzTWFjLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0JFNzQyNzM4MUZBOTA2RkJCNEYw
RjJDIC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NTBDNEMwMkJFRDg5MzZGODE4RTJGOTkgLyogSlNTVkdHcmFw
aGljc0VsZW1lbnQuaCAqLzsgfTsKKwkJN0MwMjlDNkUyNDkzQzhGODAwMjY4MjA0IC8qIENvbG9y
VHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdD
MDI5QzZEMjQ5M0M4RjgwMDI2ODIwNCAvKiBDb2xvclR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0MxODQzRkUxQzhCNzI4MzAwMkVCOTcz
IC8qIEF1dG9maWxsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QzE4NDNGQzFDOEI3MjgzMDAyRUI5NzMgLyogQXV0b2ZpbGwuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzE5M0JCQjFGNUUwRUVEMDA4
OEYzRTYgLyogQ2FudmFzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JCNjFGNUUwRUI5MDA4OEYzRTYgLyogQ2FudmFzRGlyZWN0
aW9uLmggKi87IH07CisJCTdDMTkzQkJDMUY1RTBFRUQwMDg4RjNFNiAvKiBDYW52YXNGaWxsUnVs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MxOTNC
QTExRjVFMEVBQjAwODhGM0U2IC8qIENhbnZhc0ZpbGxSdWxlLmggKi87IH07CisJCTdDMTkzQkJE
MUY1RTBFRUQwMDg4RjNFNiAvKiBDYW52YXNMaW5lQ2FwLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JCQTFGNUUwRUJCMDA4OEYzRTYgLyogQ2Fu
dmFzTGluZUNhcC5oICovOyB9OworCQk3QzE5M0JCRTFGNUUwRUVEMDA4OEYzRTYgLyogQ2FudmFz
TGluZUpvaW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDdDMTkzQjlGMUY1RTBFQUEwMDg4RjNFNiAvKiBDYW52YXNMaW5lSm9pbi5oICovOyB9OworCQk3
QzE5M0JCRjFGNUUwRUVEMDA4OEYzRTYgLyogQ2FudmFzVGV4dEFsaWduLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JBMzFGNUUwRUFDMDA4OEYz
RTYgLyogQ2FudmFzVGV4dEFsaWduLmggKi87IH07CisJCTdDMTkzQkMwMUY1RTBFRUQwMDg4RjNF
NiAvKiBDYW52YXNUZXh0QmFzZWxpbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdDMTkzQkE0MUY1RTBFQUQwMDg4RjNFNiAvKiBDYW52YXNUZXh0QmFz
ZWxpbmUuaCAqLzsgfTsKKwkJN0MxOTNCQzExRjVFMEVFRDAwODhGM0U2IC8qIEltYWdlU21vb3Ro
aW5nUXVhbGl0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0MxOTNCQUYxRjVFMEVCNDAwODhGM0U2IC8qIEltYWdlU21vb3RoaW5nUXVhbGl0eS5oICov
OyB9OworCQk3QzE5M0JDMjFGNUUwRUVEMDA4OEYzRTYgLyogUGF0aDJELmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JBQjFGNUUwRUIxMDA4OEYz
RTYgLyogUGF0aDJELmggKi87IH07CisJCTdDMTkzQkYwMUY1RTEwOTkwMDg4RjNFNiAvKiBKU0Nh
bnZhc0RpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0MxOTNCREQxRjVFMEZCNjAwODhGM0U2IC8qIEpTQ2FudmFzRGlyZWN0aW9uLmggKi87
IH07CisJCTdDMTkzQkYyMUY1RTEwOTkwMDg4RjNFNiAvKiBKU0NhbnZhc0ZpbGxSdWxlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JEQjFGNUUw
RkI0MDA4OEYzRTYgLyogSlNDYW52YXNGaWxsUnVsZS5oICovOyB9OworCQk3QzE5M0JGNDFGNUUx
MDk5MDA4OEYzRTYgLyogSlNDYW52YXNMaW5lQ2FwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzE5M0JDNzFGNUUwRkE3MDA4OEYzRTYgLyogSlNDYW52
YXNMaW5lQ2FwLmggKi87IH07CisJCTdDMTkzQkY2MUY1RTEwOTkwMDg4RjNFNiAvKiBKU0NhbnZh
c0xpbmVKb2luLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3QzE5M0JEQzFGNUUwRkI1MDA4OEYzRTYgLyogSlNDYW52YXNMaW5lSm9pbi5oICovOyB9Owor
CQk3QzE5M0JGODFGNUUxMDk5MDA4OEYzRTYgLyogSlNDYW52YXNUZXh0QWxpZ24uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMTkzQkUxMUY1RTBGQjgw
MDg4RjNFNiAvKiBKU0NhbnZhc1RleHRBbGlnbi5oICovOyB9OworCQk3QzE5M0JGQTFGNUUxMDk5
MDA4OEYzRTYgLyogSlNDYW52YXNUZXh0QmFzZWxpbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMTkzQkQ0MUY1RTBGQjAwMDg4RjNFNiAvKiBKU0Nh
bnZhc1RleHRCYXNlbGluZS5oICovOyB9OworCQk3QzE5M0MwMTFGNUUxMTA1MDA4OEYzRTYgLyog
SlNJbWFnZVNtb290aGluZ1F1YWxpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdDMTkzQkZDMUY1RTEwQzUwMDg4RjNFNiAvKiBKU0ltYWdlU21vb3Ro
aW5nUXVhbGl0eS5oICovOyB9OworCQk3QzE5M0MwMzFGNUUxMTA1MDA4OEYzRTYgLyogSlNQYXRo
MkQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMTkz
QkZFMUY1RTEwRDcwMDg4RjNFNiAvKiBKU1BhdGgyRC5oICovOyB9OworCQk3QzFFOEQwMTFFRDBD
MkRBMDBCMUQ5ODMgLyogQ2FsbGJhY2tSZXN1bHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMUU4RDAwMUVEMEMyQkUwMEIxRDk4MyAvKiBDYWxsYmFj
a1Jlc3VsdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTdDMUU5NzI4MUE5Rjk4MzQwMDdCRjBGQiAvKiBBdXRvRmlsbEJ1dHRvbkVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMUU5NzI2MUE5
Rjk4MzQwMDdCRjBGQiAvKiBBdXRvRmlsbEJ1dHRvbkVsZW1lbnQuaCAqLzsgfTsKKwkJN0MxRjVE
NTkxRjIyRkY3MzAwQTg4NzRGIC8qIEpTRE9NQ29udmVydFNjaGVkdWxlZEFjdGlvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MxRjVENTgxRjIyRkY3
MzAwQTg4NzRGIC8qIEpTRE9NQ29udmVydFNjaGVkdWxlZEFjdGlvbi5oICovOyB9OworCQk3QzJC
REQzRTE3QzdGOThDMDAzOEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzJCREQzQzE3QzdGOThCMDAz
OEZGMTUgLyogSlNET01HbG9iYWxPYmplY3RUYXNrLmggKi87IH07CisJCTdDMkZBNjEyMUVBOTVB
M0MwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDMkZBNjEwMUVBOTVBMzIwMEEwMzEw
OCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzMwRDk4NDFGODE1QUVDMDAyNjgzNTYgLyog
SlNBYm9ydENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDMzBEOTgwMUY4MTVBQzEwMDI2ODM1NiAvKiBKU0Fib3J0Q29udHJvbGxlci5o
ICovOyB9OworCQk3QzMwRDk4NjFGODE1QUVDMDAyNjgzNTYgLyogSlNBYm9ydFNpZ25hbC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MzMEQ5ODExRjgx
NUFDMTAwMjY4MzU2IC8qIEpTQWJvcnRTaWduYWwuaCAqLzsgfTsKKwkJN0MzMzBBMDIxREY4RkFD
NjAwRDMzOTVDIC8qIEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MzMzBBMDExREY4RkFDNjAwRDMzOTVD
IC8qIEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDMzMwQTA4MURGOUY5NTEwMEQzMzk1QyAvKiBK
U1Bvc2l0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0MzMzBBMDYxREY5Rjk1MTAwRDMzOTVDIC8qIEpTUG9zaXRpb25PcHRpb25zLmgg
Ki87IH07CisJCTdDM0E5MUU2MUM5NjNCODgwMEQxQTdFMyAvKiBDbGlwYm9hcmRBY2Nlc3NQb2xp
Y3kuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDM0E5
MUU1MUM5NjNCODgwMEQxQTdFMyAvKiBDbGlwYm9hcmRBY2Nlc3NQb2xpY3kuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzNCNzk3MTE5MDg3NTdC
MDBCNDdBMkQgLyogVXNlck1lc3NhZ2VIYW5kbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDM0I3OTZGMTkwODc1N0IwMEI0N0EyRCAvKiBVc2Vy
TWVzc2FnZUhhbmRsZXIuY3BwICovOyB9OworCQk3QzNCNzk3MjE5MDg3NTdCMDBCNDdBMkQgLyog
VXNlck1lc3NhZ2VIYW5kbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QzNCNzk3MDE5MDg3NTdCMDBCNDdBMkQgLyogVXNlck1lc3NhZ2VIYW5kbGVy
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0Mz
RDhFRUIxRTBCMTVBNzAwMjNCMDg0IC8qIElEQkN1cnNvckRpcmVjdGlvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0MzRDhFRTkxRTBCMTVBNzAwMjNC
MDg0IC8qIElEQkN1cnNvckRpcmVjdGlvbi5oICovOyB9OworCQk3QzNEOEVGMDFFMEIyMTQzMDAy
M0IwODQgLyogSlNJREJDdXJzb3JEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDM0Q4RUVFMUUwQjIxNDMwMDIzQjA4NCAvKiBKU0lEQkN1
cnNvckRpcmVjdGlvbi5oICovOyB9OworCQk3QzNFNTEwQTE4REY4RjM1MDBDMTEyRjcgLyogSFRN
TENvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0MzRTUxMDgxOERGOEYzNTAwQzExMkY3IC8qIEhUTUxDb252ZXJ0ZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzNFNTEwQjE4REY4RjM1
MDBDMTEyRjcgLyogSFRNTENvbnZlcnRlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDdDM0U1MTA5MThERjhGMzUwMEMxMTJGNyAvKiBIVE1MQ29udmVy
dGVyLm1tICovOyB9OworCQk3QzNGMDFDMTFDOEU1QUJBMDBBREQ5NjIgLyogVXNlckNvbnRlbnRQ
cm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
N0MzRjAxQzAxQzhFNUFCMTAwQUREOTYyIC8qIFVzZXJDb250ZW50UHJvdmlkZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzQ1QzlEMzFFM0ZD
QkQ3MDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNDVDOUM4MUUzRThCNTEwMEFBQjU1OCAvKiBKU0RP
TVdyYXBwZXJDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTdDNDVDOUQ0MUUzRkNCREYwMEFBQjU1OCAvKiBKU0RPTUJpbmRpbmdTZWN1cml0
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M0NUM5
QzkxRTNFOENENzAwQUFCNTU4IC8qIEpTRE9NQmluZGluZ1NlY3VyaXR5LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M0NUM5RDYxRTNGQ0JGODAw
QUFCNTU4IC8qIEpTRE9NRXhjZXB0aW9uSGFuZGxpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNDVDOUM3MUUzRThBRkYwMEFBQjU1OCAvKiBKU0RP
TUV4Y2VwdGlvbkhhbmRsaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJN0M0OEE2RDAxOTFDOUQ2NTAwMDI2Njc0IC8qIFdlYktpdE5hbWVzcGFj
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzQ4
QTZDRTE5MUM5RDY1MDAwMjY2NzQgLyogV2ViS2l0TmFtZXNwYWNlLmNwcCAqLzsgfTsKKwkJN0M0
OEE2RDExOTFDOUQ2NTAwMDI2Njc0IC8qIFdlYktpdE5hbWVzcGFjZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M0OEE2Q0YxOTFDOUQ2NTAwMDI2Njc0
IC8qIFdlYktpdE5hbWVzcGFjZS5oICovOyB9OworCQk3QzRDOTZERDFBRDQ0ODM1MDAzNjVBNTAg
LyogSlNSZWFkYWJsZVN0cmVhbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0M0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW0u
aCAqLzsgfTsKKwkJN0M0Qzk2REQxQUQ0NDgzNTAwMzY1QTYwIC8qIEpTV3JpdGFibGVTdHJlYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNEM5NkQ5
MUFENDQ4MzUwMDM2NUE2MCAvKiBKU1dyaXRhYmxlU3RyZWFtLmggKi87IH07CisJCTdDNEM5NkRG
MUFENDQ4MzUwMDM2MzU3MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlYWRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M0Qzk2REIxQUQ0NDgzNTAw
MzYzNTcyIC8qIEpTUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVyLmggKi87IH07CisJCTdDNEM5NkRG
MUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M0Qzk2REIxQUQ0NDgz
NTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyLmggKi87IH07CisJCTdD
NTE0RTAzMjRBRjgwNUUwMDUwNzEwRiAvKiBDb2xvckNvbnZlcnNpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNTE0RTAwMjRBRjgwNTgwMDUwNzEw
RiAvKiBDb2xvckNvbnZlcnNpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk3QzUxNkFENDFGMzUyNTIwMDAzNEI2QkYgLyogRE9NUHJvbWlzZVBy
b3h5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzUx
NkFEMjFGMzUyNTIwMDAzNEI2QkYgLyogRE9NUHJvbWlzZVByb3h5LmggKi87IH07CisJCTdDNTIy
Mjk2MUUxREFFMDMwMDJDQjhGNyAvKiBJRExUeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M1MjIyOTUxRTFEQURGODAwMkNCOEY3IC8qIElETFR5
cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
N0M1MjIyOTkxRTFEQUUxQzAwMkNCOEY3IC8qIEFjdGl2ZURPTUNhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzUyMjI5ODFFMURBRTE2MDAy
Q0I4RjcgLyogQWN0aXZlRE9NQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk3QzUyMjI5RTFFMURBRTQ3MDAyQ0I4RjcgLyogUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0M1MjIyOUMxRTFEQUU0NzAwMkNCOEY3IC8qIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
QzUyNjY5ODFGMUIwMzAyMDAwRjA2OEIgLyogU3RyaW5nQWRhcHRvcnMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNTI2Njk2MUYxQjAyRkMwMDBGMDY4
QiAvKiBTdHJpbmdBZGFwdG9ycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTdDNTdCRkU3MUVERTJGNjEwMDUzNEE0OCAvKiBKU0RPTUFic3RyYWN0
T3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0M1N0JGRTYxRURFMkY1QjAwNTM0QTQ4IC8qIEpTRE9NQWJzdHJhY3RPcGVyYXRpb25zLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M1RjI4
RkMxQTgyN0Q4NDAwQzBGMzFGIC8qIEhUTUxBdHRhY2htZW50RWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M1RjI4RkExQTgyN0Q4NDAwQzBG
MzFGIC8qIEhUTUxBdHRhY2htZW50RWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDNjUyMkVGMUUwMEE0QzcwMDY3N0YyMiAvKiBBcHBs
ZVBheVBheW1lbnRNZXRob2QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDNjUyMkVDMUUwMEE0QzcwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnRNZXRo
b2QuaCAqLzsgfTsKKwkJN0M2NTIyRjUxRTAwQTUxNzAwNjc3RjIyIC8qIEFwcGxlUGF5UGF5bWVu
dFBhc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdD
NjUyMkYyMUUwMEE1MTcwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnRQYXNzLmggKi87IH07CisJ
CTdDNjUyMkZCMUUwMEM5MDkwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnRDb250YWN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzY1MjJGODFFMDBD
OTA5MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50Q29udGFjdC5oICovOyB9OworCQk3QzY1MjMw
MTFFMDBEMDM0MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzY1MjJGRTFFMDBEMDM0MDA2NzdGMjIgLyog
QXBwbGVQYXlQYXltZW50LmggKi87IH07CisJCTdDNjUyMzE0MUUwMERCQjQwMDY3N0YyMiAvKiBK
U0FwcGxlUGF5UGF5bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0M2NTIzMEExRTAwREJCNDAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50Lmgg
Ki87IH07CisJCTdDNjUyMzE2MUUwMERCQjUwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudENv
bnRhY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdD
NjUyMzBDMUUwMERCQjQwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudENvbnRhY3QuaCAqLzsg
fTsKKwkJN0M2NTIzMTgxRTAwREJCNTAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9k
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzY1MjMw
RTFFMDBEQkI0MDA2NzdGMjIgLyogSlNBcHBsZVBheVBheW1lbnRNZXRob2QuaCAqLzsgfTsKKwkJ
N0M2NTIzMUExRTAwREJCNTAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50UGFzcy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M2NTIzMTAxRTAwREJC
NDAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50UGFzcy5oICovOyB9OworCQk3QzY1NzlFMDFF
MDA3OUY5MDBFM0EyN0EgLyogQXBwbGVQYXlQYXltZW50UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M2NTc5REYxRTAwNzlGOTAwRTNBMjdB
IC8qIEFwcGxlUGF5UGF5bWVudFJlcXVlc3QuaCAqLzsgfTsKKwkJN0M2NTc5RTMxRTAwODI3MDAw
RTNBMjdBIC8qIEFwcGxlUGF5TGluZUl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDdDNjU3OUUyMUUwMDgyNzAwMEUzQTI3QSAvKiBBcHBsZVBheUxp
bmVJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJN0M2NTc5RTgxRTAwODMxNjAwRTNBMjdBIC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNjU3OUU3MUUw
MDgzMTYwMEUzQTI3QSAvKiBBcHBsZVBheVNoaXBwaW5nTWV0aG9kLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M2NTc5RjAxRTAwODU2NjAwRTNB
MjdBIC8qIEpTQXBwbGVQYXlMaW5lSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0M2NTc5RUExRTAwODU2NjAwRTNBMjdBIC8qIEpTQXBwbGVQYXlM
aW5lSXRlbS5oICovOyB9OworCQk3QzY1NzlGNDFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBh
eVNoaXBwaW5nTWV0aG9kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3QzY1NzlFRTFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVNoaXBwaW5nTWV0
aG9kLmggKi87IH07CisJCTdDNzNGQjA3MTkxRUY0MTcwMDdERTA2MSAvKiBVc2VyTWVzc2FnZUhh
bmRsZXJzTmFtZXNwYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDNzNGQjA1MTkxRUY0MTYwMDdERTA2MSAvKiBVc2VyTWVzc2FnZUhhbmRsZXJz
TmFtZXNwYWNlLmNwcCAqLzsgfTsKKwkJN0M3M0ZCMDgxOTFFRjQxNzAwN0RFMDYxIC8qIFVzZXJN
ZXNzYWdlSGFuZGxlcnNOYW1lc3BhY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdDNzNGQjA2MTkxRUY0MTcwMDdERTA2MSAvKiBVc2VyTWVzc2FnZUhh
bmRsZXJzTmFtZXNwYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJN0M3M0ZCMEQxOTFFRjVBODAwN0RFMDYxIC8qIEpTVXNlck1lc3NhZ2VIYW5k
bGVyc05hbWVzcGFjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0M3M0ZCMEIxOTFFRjVBODAwN0RFMDYxIC8qIEpTVXNlck1lc3NhZ2VIYW5kbGVyc05h
bWVzcGFjZS5oICovOyB9OworCQk3QzczRkIxMjE5MUVGNkY0MDA3REUwNjEgLyogSlNVc2VyTWVz
c2FnZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdDNzNGQjEwMTkxRUY2RjQwMDdERTA2MSAvKiBKU1VzZXJNZXNzYWdlSGFuZGxlci5oICov
OyB9OworCQk3Qzc3NjFBQTFGODc4QUE1MDBGODY5RkMgLyogSlNJbWFnZUJpdG1hcFJlbmRlcmlu
Z0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDdDNzkwM0I4MUY4NkZERTYwMDQ2M0E3MCAvKiBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4
dC5oICovOyB9OworCQk3Qzc3NjFBQTFGODc4QUE1MDBGODY5RkQgLyogSlNJbWFnZUJpdG1hcFJl
bmRlcmluZ0NvbnRleHRTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gN0M3OTAzQjYxRjg2RkRFNjAwNDYzQTcwIC8qIEpTSW1hZ2VCaXRtYXBS
ZW5kZXJpbmdDb250ZXh0U2V0dGluZ3MuaCAqLzsgfTsKKwkJN0M3N0MzRDExREVFNDcyNDAwQTUw
QkZBIC8qIEJsb2JQcm9wZXJ0eUJhZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gN0M3N0MzRDAxREVFNDcyNDAwQTUwQkZBIC8qIEJsb2JQcm9wZXJ0eUJh
Zy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdD
NzdDM0Q1MURFRjE3OEUwMEE1MEJGQSAvKiBKU0Jsb2JQcm9wZXJ0eUJhZy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M3N0MzRDMxREVGMTc4RTAwQTUw
QkZBIC8qIEpTQmxvYlByb3BlcnR5QmFnLmggKi87IH07CisJCTdDNzdDM0Q3MURFRjg1MEEwMEE1
MEJGQSAvKiBFbmRpbmdUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3Qzc3QzNENjFERUY4NTBBMDBBNTBCRkEgLyogRW5kaW5nVHlwZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDNzdDM0RDMURF
Rjg2RDcwMEE1MEJGQSAvKiBKU0VuZGluZ1R5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDNzdDM0RBMURFRjg2RDcwMEE1MEJGQSAvKiBKU0VuZGlu
Z1R5cGUuaCAqLzsgfTsKKwkJN0M3OTAzQjMxRjg2Rjk1QzAwNDYzQTcwIC8qIEltYWdlQml0bWFw
UmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0M3OTAzQjAxRjg2Rjk1QzAwNDYzQTcwIC8qIEltYWdlQml0bWFwUmVuZGVyaW5n
Q29udGV4dC5oICovOyB9OworCQk3QzdCRjk0MjI1MTZDOTBDMDA4MDg2ODIgLyogUGVyZm9ybWFu
Y2VNYXJrT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0M3QkY5M0UyNTE2QzhCQzAwODA4NjgyIC8qIFBlcmZvcm1hbmNlTWFya09wdGlvbnMu
aCAqLzsgfTsKKwkJN0M3QkY5NEMyNTE2RkE1NDAwODA4NjgyIC8qIFBlcmZvcm1hbmNlTWVhc3Vy
ZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDdDN0JGOTQ5MjUxNkZBNTQwMDgwODY4MiAvKiBQZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmgg
Ki87IH07CisJCTdDODEzOUE2MUVENjI4NkEwMENFMjZFOCAvKiBKU0RPTUF0dHJpYnV0ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M4MTM5QTMxRUQ2
MjgxRDAwQ0UyNkU4IC8qIEpTRE9NQXR0cmlidXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4MTM5QTcxRUQ2Mjg3NDAwQ0UyNkU4IC8qIEpT
RE9NT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QzgxMzlBNDFFRDYyODFEMDBDRTI2RTggLyogSlNET01PcGVyYXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzgxMzlBODFFRDYy
ODc0MDBDRTI2RTggLyogSlNET01PcGVyYXRpb25SZXR1cm5pbmdQcm9taXNlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzgxMzlBNTFFRDYyODFEMDBD
RTI2RTggLyogSlNET01PcGVyYXRpb25SZXR1cm5pbmdQcm9taXNlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4M0RFODYxRDA0Q0M1RDAwRkVC
Q0YzIC8qIFNwcmluZ1NvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gN0M4M0RFODUxRDA0Q0JENDAwRkVCQ0YzIC8qIFNwcmluZ1NvbHZlci5oICov
OyB9OworCQk3QzhFMzRBRDFFNEEzM0FGMDA1NENFMjMgLyogSlNET01Db252ZXJ0QW55LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzhFMzQ5MjFFNEEz
MzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0QW55LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QUUxRTRBMzNBRjAwNTRDRTIzIC8qIEpT
RE9NQ29udmVydEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdDOEUzNDkzMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRCYXNlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QUYx
RTRBMzNBRjAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEJvb2xlYW4uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNDk0MUU0QTMzOEUwMDU0Q0UyMyAv
KiBKU0RPTUNvbnZlcnRCb29sZWFuLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QjAxRTRBMzNBRjAwNTRDRTIzIC8qIEpTRE9NQ29udmVy
dEJ1ZmZlclNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0M4RTM0OTUxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEJ1ZmZlclNvdXJj
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdD
OEUzNEIxMUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRDYWxsYmFja3MuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNDk2MUU0QTMzOEUw
MDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRDYWxsYmFja3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzhFMzRCMzFFNEEzM0IwMDA1NENFMjMgLyog
SlNET01Db252ZXJ0RGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0M4RTM0OTgxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydERhdGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzhFMzRC
NDFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0RGljdGlvbmFyeS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M4RTM0OTkxRTRBMzM4RTAwNTRD
RTIzIC8qIEpTRE9NQ29udmVydERpY3Rpb25hcnkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzhFMzRCNTFFNEEzM0IwMDA1NENFMjMgLyogSlNE
T01Db252ZXJ0RW51bWVyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdDOEUzNDlBMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRFbnVt
ZXJhdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTdDOEUzNEI2MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRFdmVudExpc3RlbmVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzhFMzQ5
QjFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0RXZlbnRMaXN0ZW5lci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDOEUzNEI3MUU0QTMz
QjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRJbmRleGVkREIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNDlDMUU0QTMzOEUwMDU0Q0UyMyAvKiBK
U0RPTUNvbnZlcnRJbmRleGVkREIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk3QzhFMzRCODFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0
SW50ZXJmYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3QzhFMzQ5RDFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0SW50ZXJmYWNlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0Qjkx
RTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEpTT04uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNDlFMUU0QTMzOEUwMDU0Q0UyMyAvKiBK
U0RPTUNvbnZlcnRKU09OLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJN0M4RTM0QkExRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydE51bGwu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNDlG
MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnROdWxsLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QkIxRTRBMzNCMDAwNTRDRTIz
IC8qIEpTRE9NQ29udmVydE51bGxhYmxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QzhFMzRBMDFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0
TnVsbGFibGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk3QzhFMzRCRDFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0TnVtYmVycy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M4RTM0QTIxRTRB
MzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydE51bWJlcnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzhFMzRCRTFFNEEzM0IwMDA1NENFMjMg
LyogSlNET01Db252ZXJ0T2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QzhFMzRBMzFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0T2Jq
ZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
N0M4RTM0QkYxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFJlY29yZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M4RTM0QTQxRTRBMzM4RTAw
NTRDRTIzIC8qIEpTRE9NQ29udmVydFJlY29yZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDOEUzNEMwMUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RP
TUNvbnZlcnRTZXF1ZW5jZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDOEUzNEE1MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRTZXF1ZW5j
ZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3
QzhFMzRDMTFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0U2VyaWFsaXplZFNjcmlwdFZh
bHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzhF
MzRBNjFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0U2VyaWFsaXplZFNjcmlwdFZhbHVl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4
RTM0QzMxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFN0cmluZ3MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNEE4MUU0QTMzOEUwMDU0
Q0UyMyAvKiBKU0RPTUNvbnZlcnRTdHJpbmdzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QzQxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9N
Q29udmVydFVuaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3QzhFMzRBOTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0VW5pb24uaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzhFMzRDNTFF
NEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0VmFyaWFkaWMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOEUzNEFBMUU0QTMzOEUwMDU0Q0UyMyAv
KiBKU0RPTUNvbnZlcnRWYXJpYWRpYy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTdDOEUzNEM2MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZl
cnRXZWJHTC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
N0M4RTM0QUIxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFdlYkdMLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M4RTM0QzcxRTRBMzNC
MDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M4RTM0QUMxRTRBMzM4RTAwNTRDRTIz
IC8qIEpTRE9NQ29udmVydFhQYXRoTlNSZXNvbHZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDOTNGMzRBMUFBNkJBNUUwMEE5OEJBQiAvKiBD
b21waWxlZENvbnRlbnRFeHRlbnNpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdDOTNGMzQ4MUFBNkJBNUUwMEE5OEJBQiAvKiBDb21waWxlZENvbnRl
bnRFeHRlbnNpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk3QzkzRjM0RTFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lvbkNvbXBp
bGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Qzkz
RjM0QzFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lvbkNvbXBpbGVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0M5QUNBOTIxRjND
QzBBQTAwRjNBQTA5IC8qIENyeXB0b0tleUFsZ29yaXRobS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0M5QUNBOEYxRjNDQzBBQTAwRjNBQTA5IC8qIENy
eXB0b0tleUFsZ29yaXRobS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTdDOUFDQTk4MUYzQ0NEQUQwMEYzQUEwOSAvKiBDcnlwdG9BZXNLZXlBbGdv
cml0aG0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdD
OUFDQTk2MUYzQ0NEQUQwMEYzQUEwOSAvKiBDcnlwdG9BZXNLZXlBbGdvcml0aG0uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3QzlBQ0E5QzFGM0ND
REYyMDBGM0FBMDkgLyogQ3J5cHRvRWNLZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOUFDQTlBMUYzQ0NERjIwMEYzQUEwOSAvKiBD
cnlwdG9FY0tleUFsZ29yaXRobS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTdDOUFDQUEwMUYzQ0NFMzAwMEYzQUEwOSAvKiBDcnlwdG9IbWFjS2V5
QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3QzlBQ0E5RTFGM0NDRTMwMDBGM0FBMDkgLyogQ3J5cHRvSG1hY0tleUFsZ29yaXRobS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDOUFDQUE0
MUYzQ0NFNjkwMEYzQUEwOSAvKiBDcnlwdG9Sc2FLZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOUFDQUEyMUYzQ0NFNjkwMEYzQUEw
OSAvKiBDcnlwdG9Sc2FLZXlBbGdvcml0aG0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk3QzlBQ0FBODFGM0NDRUI0MDBGM0FBMDkgLyogQ3J5cHRv
UnNhSGFzaGVkS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QzlBQ0FBNjFGM0NDRUI0MDBGM0FBMDkgLyogQ3J5cHRvUnNhSGFzaGVk
S2V5QWxnb3JpdGhtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJN0M5QUNBQjgxRjNDRjFBRTAwRjNBQTA5IC8qIEpTQ3J5cHRvQWVzS2V5QWxnb3Jp
dGhtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzlB
Q0FBQTFGM0NEQjYzMDBGM0FBMDkgLyogSlNDcnlwdG9BZXNLZXlBbGdvcml0aG0uaCAqLzsgfTsK
KwkJN0M5QUNBQkExRjNDRjFBRTAwRjNBQTA5IC8qIEpTQ3J5cHRvRWNLZXlBbGdvcml0aG0uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOUFDQUFDMUYz
Q0RCOUQwMEYzQUEwOSAvKiBKU0NyeXB0b0VjS2V5QWxnb3JpdGhtLmggKi87IH07CisJCTdDOUFD
QUJDMUYzQ0YxQUUwMEYzQUEwOSAvKiBKU0NyeXB0b0htYWNLZXlBbGdvcml0aG0uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDOUFDQUFGMUYzQ0RCOUYw
MEYzQUEwOSAvKiBKU0NyeXB0b0htYWNLZXlBbGdvcml0aG0uaCAqLzsgfTsKKwkJN0M5QUNBQkUx
RjNDRjFBRjAwRjNBQTA5IC8qIEpTQ3J5cHRvS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzlBQ0FCMTFGM0NEQkExMDBGM0FBMDkg
LyogSlNDcnlwdG9LZXlBbGdvcml0aG0uaCAqLzsgfTsKKwkJN0M5QUNBQzAxRjNDRjFBRjAwRjNB
QTA5IC8qIEpTQ3J5cHRvUnNhSGFzaGVkS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzlBQ0FCNTFGM0NEQzAyMDBGM0FBMDkgLyog
SlNDcnlwdG9Sc2FIYXNoZWRLZXlBbGdvcml0aG0uaCAqLzsgfTsKKwkJN0M5QUNBQzIxRjNDRjFB
RjAwRjNBQTA5IC8qIEpTQ3J5cHRvUnNhS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzlBQ0FCMzFGM0NEQzAxMDBGM0FBMDkgLyog
SlNDcnlwdG9Sc2FLZXlBbGdvcml0aG0uaCAqLzsgfTsKKwkJN0M5REJGRUUxQTlDNDlCMTAwMEQ2
QjI1IC8qIEpTSFRNTEF0dGFjaG1lbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzlEQkZFQzFBOUM0OUIxMDAwRDZCMjUgLyogSlNIVE1M
QXR0YWNobWVudEVsZW1lbnQuaCAqLzsgfTsKKwkJN0NBQzZBRTkyNDdGMDgyRjAwRTYxRDU5IC8q
IENvbG9yTWF0cml4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3Q0FDNkFFODI0N0YwODIwMDBFNjFENTkgLyogQ29sb3JNYXRyaXguaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0FDNkFGMDI0N0Y0MTEw
MDBFNjFENTkgLyogQ29sb3JDb21wb25lbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0FDNkFFQzI0N0YxQzUxMDBFNjFENTkgLyogQ29sb3JDb21w
b25lbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJN0NCNUNBNDAxRTUyNUM3MzAwRkFFRjEzIC8qIE1lZGlhUXVlcnlFeHByZXNzaW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0I1Q0EzRTFFNTI1
QzZDMDBGQUVGMTMgLyogTWVkaWFRdWVyeUV4cHJlc3Npb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0JCQkNDNzFGNTYwNTgxMDA1RUZBQUMg
LyogRE9NTWF0cml4MkRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3Q0JCQkNDNjFGNTYwNTY4MDA1RUZBQUMgLyogRE9NTWF0cml4MkRJbml0Lmgg
Ki87IH07CisJCTdDQkJCQ0NBMUY1NjE3QzUwMDVFRkFBQyAvKiBKU0RPTU1hdHJpeDJESW5pdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0NCQkJDQzkx
RjU2MTdDMDAwNUVGQUFDIC8qIEpTRE9NTWF0cml4MkRJbml0LmggKi87IH07CisJCTdDQkQxMjlF
MUY5OEI5MEUwMDEyN0QyOSAvKiBEZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDQkQxMjlBMUY5OEI1RkUwMDEy
N0QyOSAvKiBEZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0MyODlERjFBQTBGRTVEMDA5QTlDRTMgLyog
VVJMUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IENERUUzOTM4MTc5NzQyNzQwMDFENzU4MCAvKiBVUkxSZWdpc3RyeS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDQzJEREZCMUVDOTQxNUEw
MDI3Qjc3NCAvKiBOb3RpZmljYXRpb25QZXJtaXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0MyRERGODFFQzk0MTVBMDAyN0I3NzQgLyogTm90
aWZpY2F0aW9uUGVybWlzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTdDQzJERTAxMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlmaWNhdGlv
blBlcm1pc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdDQzJEREZGMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlmaWNhdGlvblBlcm1pc3Npb24u
aCAqLzsgfTsKKwkJN0NDMkRFMDMxRUNBMDRBNTAwMjdCNzc0IC8qIE5vdGlmaWNhdGlvbkRpcmVj
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0ND
MkRFMDIxRUNBMDRBNTAwMjdCNzc0IC8qIE5vdGlmaWNhdGlvbkRpcmVjdGlvbi5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDQzU2NEI4MThCQUJF
QTYwMDFCOTY1MiAvKiBUZWxlcGhvbmVOdW1iZXJEZXRlY3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0NDNTY0QjYxOEJBQkVBNjAwMUI5NjUyIC8q
IFRlbGVwaG9uZU51bWJlckRldGVjdG9yLmggKi87IH07CisJCTdDQzY5OTQxMTkxRUM1RjUwMEFG
MjI3MCAvKiBKU1dlYktpdE5hbWVzcGFjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0NDNjk5M0YxOTFFQzVGNTAwQUYyMjcwIC8qIEpTV2ViS2l0TmFt
ZXNwYWNlLmggKi87IH07CisJCTdDQzk3MjJFMUY5M0UzMzYwMDA0RDRDRiAvKiBTZXR0aW5nc0Jh
c2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDQzY2
MDk5MUY5MzA1NzgwMEQ1MDBFOSAvKiBTZXR0aW5nc0Jhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0NFQkZDMDFERDhGNkFCMDAyQzQwQjgg
LyogU1ZHTGVuZ3RoVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDRTU4RDUzMUREN0IwOTMwMDEyODU1MiAvKiBTVkdMZW5ndGhWYWx1ZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDRDBFMkI4
MUY4MEE0ODIwMDE2QTRDRSAvKiBBYm9ydENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRDBFMkI1MUY4MEE0ODIwMDE2QTRDRSAvKiBB
Ym9ydENvbnRyb2xsZXIuaCAqLzsgfTsKKwkJN0NEMEUyQkYxRjgwQTU2RTAwMTZBNENFIC8qIEFi
b3J0U2lnbmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3Q0QwRTJCQzFGODBBNTZFMDAxNkE0Q0UgLyogQWJvcnRTaWduYWwuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0QxRTY5MzI0QUJGNjI0MDA4
OUM0MTkgLyogQ29sb3JTZXJpYWxpemF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0QxRTY5MTI0QUJGNjI0MDA4OUM0MTkgLyogQ29sb3JTZXJp
YWxpemF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJN0NENDk0Q0QxQTg2RUIxRDAwMEE4N0VDIC8qIFJlbmRlckF0dGFjaG1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRDQ5NENCMUE4NkVC
MUQwMDBBODdFQyAvKiBSZW5kZXJBdHRhY2htZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0NENThERkIxRjk1NjVBNTAwMTEyNzkxIC8qIFNl
dHRpbmdzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
Q0VCNTdFOTFGOTU2NTE1MDAwOTdBRUMgLyogU2V0dGluZ3MuaCAqLzsgfTsKKwkJN0NENThERkQx
Rjk1NjVBODAwMTEyNzkxIC8qIFNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRUI1N0VBMUY5NTY1MTUwMDA5N0FFQyAvKiBTZXR0aW5n
cy5jcHAgKi87IH07CisJCTdDRDU4REZFMUY5NTY1RUMwMDExMjc5MSAvKiBTZXR0aW5ncy5oIGlu
IENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0NFQjU3RTkxRjk1NjUxNTAwMDk3QUVDIC8qIFNldHRpbmdzLmggKi87IH07CisJCTdDRTE5
MTRBMUYyQTk4QjkwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RJbml0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE0NzFGMkE5OEFGMDAyNzJGNzgg
LyogRmV0Y2hSZXF1ZXN0SW5pdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTdDRTE5MTREMUYyQTlBRkIwMDI3MkY3OCAvKiBGZXRjaFJlZmVycmVy
UG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3
Q0UxOTE0QjFGMkE5QUZCMDAyNzJGNzggLyogRmV0Y2hSZWZlcnJlclBvbGljeS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDRTE5MTUxMUYyQTlC
MEEwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RNb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE0RjFGMkE5QjBBMDAyNzJGNzggLyogRmV0Y2hS
ZXF1ZXN0TW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTdDRTE5MTU1MUYyQTlCMUQwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RDcmVkZW50aWFs
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0NFMTkx
NTMxRjJBOUIxRDAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdENyZWRlbnRpYWxzLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0NFMTkxNUExRjJBOUIz
NDAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdENhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE1NzFGMkE5QjM0MDAyNzJGNzggLyogRmV0Y2hS
ZXF1ZXN0Q2FjaGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk3Q0UxOTE2MDFGMkE5QjRGMDAyNzJGNzggLyogRmV0Y2hSZXF1ZXN0UmVkaXJlY3Qu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTE5MTVE
MUYyQTlCNEYwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RSZWRpcmVjdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdDRTE5MTcxMUYyQUJFNzEwMDI3
MkY3OCAvKiBKU0ZldGNoUmVmZXJyZXJQb2xpY3kuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTE5MTY4MUYyQUI3MDMwMDI3MkY3OCAvKiBKU0ZldGNo
UmVmZXJyZXJQb2xpY3kuaCAqLzsgfTsKKwkJN0NFMTkxNzMxRjJBQkU3MTAwMjcyRjc4IC8qIEpT
RmV0Y2hSZXF1ZXN0Q2FjaGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdDRTE5MTY0MUYyQUI2RkIwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdENhY2hl
LmggKi87IH07CisJCTdDRTE5MTczMUYyQUJFNzEwMDI3MkY3OSAvKiBKU0RPTUNhY2hlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE2NDFGMkFC
NkZCMDAyNzJGNzkgLyogSlNET01DYWNoZS5oICovOyB9OworCQk3Q0UxOTE3MzFGMkFCRTcxMDAy
NzJGN0EgLyogSlNET01DYWNoZVN0b3JhZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTE5MTY0MUYyQUI2RkIwMDI3MkY3QSAvKiBKU0RPTUNhY2hl
U3RvcmFnZS5oICovOyB9OworCQk3Q0UxOTE3NTFGMkFCRTcxMDAyNzJGNzggLyogSlNGZXRjaFJl
cXVlc3RDcmVkZW50aWFscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0NFMTkxNjYxRjJBQjZGRjAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0Q3JlZGVu
dGlhbHMuaCAqLzsgfTsKKwkJN0NFMTkxNzcxRjJBQkU3MTAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1
ZXN0SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
N0NFMTkxNjkxRjJBQjcwNTAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0SW5pdC5oICovOyB9Owor
CQk3Q0UxOTE3OTFGMkFCRTcxMDAyNzJGNzggLyogSlNGZXRjaFJlcXVlc3RNb2RlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE2QzFGMkFCNzBB
MDAyNzJGNzggLyogSlNGZXRjaFJlcXVlc3RNb2RlLmggKi87IH07CisJCTdDRTE5MTdCMUYyQUJF
NzEwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdFJlZGlyZWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0UxOTE2QTFGMkFCNzA2MDAyNzJGNzggLyog
SlNGZXRjaFJlcXVlc3RSZWRpcmVjdC5oICovOyB9OworCQk3Q0U1OEQ0QTFERDY0QTVCMDAxMjg1
NTIgLyogU1ZHUG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDdDRTU4RDQ5MURENjRBNUIwMDEyODU1MiAvKiBTVkdQb2ludC5oICovOyB9OworCQk3
Q0U1OEQ1MDFERDY5QTFFMDAxMjg1NTIgLyogU1ZHTnVtYmVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0U1OEQ0RjFERDY5QTFFMDAxMjg1NTIgLyog
U1ZHTnVtYmVyLmggKi87IH07CisJCTdDRTU4RDU4MUREN0Q5NkQwMDEyODU1MiAvKiBTVkdUcmFu
c2Zvcm1WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gN0NFNThENTYxREQ3RDk2RDAwMTI4NTUyIC8qIFNWR1RyYW5zZm9ybVZhbHVlLmggKi87IH07
CisJCTdDRTY4MzQ0MTkyMTQzQTgwMEY0RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlw
dG9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdD
RTY4MzQyMTkyMTQzQTgwMEY0RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlwdG9yLmNw
cCAqLzsgfTsKKwkJN0NFNjgzNDUxOTIxNDNBODAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxl
ckRlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdDRTY4MzQzMTkyMTQzQTgwMEY0RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlw
dG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
N0NFNjgzNDcxOTIxODIxNTAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3JU
eXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0NF
NjgzNDYxOTIxODIxNTAwRjREOTI4IC8qIFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3JUeXBl
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdD
RTZDQkZCMTg3RjM3MDcwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdDRTZDQkZBMTg3RjM3MDcwMEQ0NkJG
NSAvKiBGb3JtYXRDb252ZXJ0ZXIuaCAqLzsgfTsKKwkJN0NFNkNCRkQxODdGMzk0OTAwRDQ2QkY1
IC8qIEZvcm1hdENvbnZlcnRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3Q0U2Q0JGQzE4N0YzOTQ5MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVy
LmNwcCAqLzsgfTsKKwkJN0NFOUExMkIxRUEyRjFEQjAwNjUxQUQxIC8qIElETEF0dHJpYnV0ZXMu
anNvbiBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4M0I1
MzM4MTRGMzk5QkIwMDcyMEQ5RCAvKiBJRExBdHRyaWJ1dGVzLmpzb24gKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0NGOTMwRTcxRTAxRjlCNDAwQkFG
RkJFIC8qIFBheW1lbnRIZWFkZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3Q0Y5MzBFNjFFMDFGOUFEMDBCQUZGQkUgLyogUGF5bWVudEhlYWRlcnMu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3Q0ZE
QzU3RDFBQzFEODA1MDBFMjRBNTcgLyogQ29udGVudEV4dGVuc2lvbkVycm9yLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3Q0ZEQzU3QjFBQzFEODA1MDBF
MjRBNTcgLyogQ29udGVudEV4dGVuc2lvbkVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0Q0Qzk2REQxQUQ0NDgzNTAwMzY1QTUwIC8qIEpT
RmV0Y2hIZWFkZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA3RDRDOTZEOTFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaEhlYWRlcnMuaCAqLzsgfTsK
KwkJN0Q3NDFCREExNzcyMjZBQTAwODU5MTcwIC8qIENTU1ZhbHVlS2V5d29yZHMuaCBpbiBDb3B5
IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1
NjU4MTQ4MDlEMTMwNDMwMDBFNjFENyAvKiBDU1NWYWx1ZUtleXdvcmRzLmggKi87IH07CisJCTdF
NDZGNkZCMTYyN0EyQ0EwMDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRleFVpbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFNDZGNkY5MTYyN0EyQzkw
MDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRleFVpbnQuaCAqLzsgfTsKKwkJN0U0NzRFMUUxMjQ5
NERDOTAwMjM1MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJhY2tlckNsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0NzRFMUIxMjQ5NERDOTAwMjM1
MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJhY2tlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdFNDc0RTFGMTI0OTREQzkwMDIzNTM2NCAv
KiBTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdFNDc0RTFDMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFz
ZVRyYWNrZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk3RTRDOTZERDFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaFJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFNEM5NkQ5MUFENDQ4MzUw
MDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVzdC5oICovOyB9OworCQk3RTRDOTZERDFBRDQ0ODM1MDAz
NjVBNTEgLyogSlNSZWFkYWJsZVN0cmVhbVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVh
ZGFibGVTdHJlYW1Tb3VyY2UuaCAqLzsgfTsKKwkJN0U0Qzk2REQxQUQ0NDgzNTAwMzY1QTUyIC8q
IEpTRmV0Y2hFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0U0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUyIC8qIEpTRmV0Y2hFdmVudC5oICovOyB9Owor
CQk3RTRDOTZERDFBRDQ0ODM1MDAzNjVBNTMgLyogSlNFeHRlbmRhYmxlRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFNEM5NkQ5MUFENDQ4MzUw
MDM2NUE1MyAvKiBKU0V4dGVuZGFibGVFdmVudC5oICovOyB9OworCQk3RTVEN0E3NzE2MUQzRjhG
MDA4OTZDMzQgLyogT0VTRWxlbWVudEluZGV4VWludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0U1RDdBNzQxNjFEM0Y4RjAwODk2QzM0IC8qIE9FU0Vs
ZW1lbnRJbmRleFVpbnQuaCAqLzsgfTsKKwkJN0U2NkUyMzQxNkQ2RUI2QzAwRjdFN0ZGIC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdFNjZFMjMyMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlQVRDLmggKi87IH07CisJCTdFNjZFMjM0MTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJH
TENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdFNjZFMjMyMTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlUFZSVEMuaCAqLzsgfTsKKwkJN0U5OUFGNTMwQjEzODQ2NDY4RkIwMUE1IC8qIFdp
bmRvd0ZvY3VzQWxsb3dlZEluZGljYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gN0U5OUFGNTQwQjEzODQ2NDY4RkIwMUE1IC8qIFdpbmRvd0ZvY3Vz
QWxsb3dlZEluZGljYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTdFQTMwRjZBMTZERkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBVEMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDdFQTMwRjY4MTZERkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVB
VEMuaCAqLzsgfTsKKwkJN0VBMzBGNkExN0VGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVBWUlRDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA3RUEzMEY2ODE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0
dXJlUFZSVEMuaCAqLzsgfTsKKwkJN0VEQUFGQzkxOUEyQ0NEQzAwMzRERkQxIC8qIERpc2tDYWNo
ZU1vbml0b3JDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0VEQUFGQzgxOUEyQ0JEMTAwMzRERkQxIC8qIERpc2tDYWNoZU1vbml0b3JDb2NvYS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdFRTY4
NDYxMTJEMjZFMzgwMEU3OTQxNSAvKiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0VFNjg0NEUxMkQyNkUzODAw
RTc5NDE1IC8qIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0VFNjg0NjcxMkQyNkUzODAwRTc5NDE1IC8q
IEZvcm1EYXRhU3RyZWFtQ0ZOZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdFRTY4NDU0MTJEMjZFMzgwMEU3OTQxNSAvKiBGb3JtRGF0YVN0cmVhbUNG
TmV0LmggKi87IH07CisJCTdFRTY4NDZBMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZUVycm9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RUU2ODQ1
NzEyRDI2RTM4MDBFNzk0MTUgLyogUmVzb3VyY2VFcnJvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdFRTY4NDZEMTJEMjZFMzgwMEU3OTQxNSAv
KiBSZXNvdXJjZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDdFRTY4NDVBMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZVJlcXVlc3QuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk3RUU2ODQ2
RjEyRDI2RTM4MDBFNzMyMTUgLyogRE5TUmVzb2x2ZVF1ZXVlQ0ZOZXQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFRTY4NDVDMTJEMjZFMzgwMEZGOTQx
NSAvKiBETlNSZXNvbHZlUXVldWVDRk5ldC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTdFRTY4NDZGMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJj
ZVJlcXVlc3RDRk5ldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gN0VFNjg0NUMxMkQyNkUzODAwRTc5NDE1IC8qIFJlc291cmNlUmVxdWVzdENGTmV0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJN0VFNjg0
NzAxMkQyNkUzODAwRTc5NDE1IC8qIFJlc291cmNlUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdFRTY4NDVEMTJEMjZFMzgwMEU3OTQxNSAv
KiBSZXNvdXJjZVJlc3BvbnNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJN0Y0Qzk2REQxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hCb2R5Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RjRDOTZEOTFB
RDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaEJvZHkuaCAqLzsgfTsKKwkJN0Y0Qzk2REQxQUQ0NDgz
NTAwMzY1QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1TaW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RjRDOTZEOTFBRDQ0ODM1MDAzNjVBNTEgLyogSlNS
ZWFkYWJsZVN0cmVhbVNpbmsuaCAqLzsgfTsKKwkJODFBQzU5OTkxMzE2MzZFNjAwMDlBN0UwIC8q
IERhdGFUcmFuc2Zlckl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgxQUM1OTk3MTMxNjM2RTYwMDA5QTdFMCAvKiBEYXRhVHJhbnNmZXJJdGVtLmgg
Ki87IH07CisJCTgxQUM1OTlBMTMxNjM2RTYwMDA5QTdFMCAvKiBEYXRhVHJhbnNmZXJJdGVtTGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODFBQzU5
OTgxMzE2MzZFNjAwMDlBN0UwIC8qIERhdGFUcmFuc2Zlckl0ZW1MaXN0LmggKi87IH07CisJCTgx
QUM2QzM2MTMxQzU3RDMwMDA5QTdFMCAvKiBTdHJpbmdDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODFBQzZDMzUxMzFDNTdEMzAwMDlBN0Uw
IC8qIFN0cmluZ0NhbGxiYWNrLmggKi87IH07CisJCTgxQkUyMEQzMTFGNEJDMzIwMDkxNURGQSAv
KiBKU0lEQkN1cnNvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODFCRTIwQTgxMUY0QjY2RjAwOTE1REZBIC8qIEpTSURCQ3Vyc29yLmggKi87IH07CisJ
CTgxRjY1RkY2MTM3ODhGQUEwMEZGNkYyRCAvKiBEcmFnU3RhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgxRjY1RkY1MTM3ODhGQUEwMEZGNkYyRCAv
KiBEcmFnU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk4MkFCMTc3NDEyNUM4MjY3MDBDNTA2OUQgLyogSW5zcGVjdG9yU3R5bGVTaGVldC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODJBQjE3NzAx
MjVDODI2NzAwQzUwNjlEIC8qIEluc3BlY3RvclN0eWxlU2hlZXQuaCAqLzsgfTsKKwkJODJFM0Q4
REYxMjJFQTBEMTAwM0FFNUJDIC8qIENTU1Byb3BlcnR5U291cmNlRGF0YS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODJFM0Q4REQxMjJFQTBEMTAwM0FF
NUJDIC8qIENTU1Byb3BlcnR5U291cmNlRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzMDAzMEY2MUI3RDMzQjUwMEVEM0FBQyAvKiBHZW5l
cmljQ2FjaGVkSFRNTENvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzMDAzMEY0MUI3RDMzQTYwMEVEM0FBQyAvKiBHZW5lcmljQ2FjaGVk
SFRNTENvbGxlY3Rpb24uaCAqLzsgfTsKKwkJODMwMDMwRjgxQjdEM0I3ODAwRUQzQUFDIC8qIENh
Y2hlZEhUTUxDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzAwMzBGNzFCN0QzOTg4MDBFRDNBQUMgLyogQ2FjaGVkSFRNTENvbGxlY3Rp
b24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4
MzAwNUY5RDI0RUIxRDQwMDA0ODBGOUIgLyogQXVkaW9UaW1lc3RhbXAuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMDA1RjlBMjRFQjFEMjgwMDQ4MEY5
QiAvKiBBdWRpb1RpbWVzdGFtcC5oICovOyB9OworCQk4MzAzMzUwMjFGNTQ5MDU3MDA0REY3MDcg
LyogRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODMwMzM0RkMxRjU0OTA1MjAwNERGNzA3IC8qIEZpbGVTeXN0
ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLzsgfTsKKwkJODMwMzM1MDMxRjU0OTA1QTAwNERGNzA3IC8q
IEZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzMDMzNEZFMUY1NDkwNTIwMDRERjcwNyAvKiBGaWxlU3lzdGVt
RW50cmllc0NhbGxiYWNrLmggKi87IH07CisJCTgzMDQwMjgyMjQ5QTdBNUYwMEE5MEQ4RCAvKiBQ
YW5uaW5nTW9kZWxUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4MzA0MDI4MDI0OUE3QTVDMDBBOTBEOEQgLyogUGFubmluZ01vZGVsVHlwZS5oICov
OyB9OworCQk4MzA0MDI4MzI0OUE3QTYyMDBBOTBEOEQgLyogRGlzdGFuY2VNb2RlbFR5cGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMDQwMjdEMjQ5
QTdBNUIwMEE5MEQ4RCAvKiBEaXN0YW5jZU1vZGVsVHlwZS5oICovOyB9OworCQk4MzA1MTk5NjFC
QjBGMTEwMDBGMzc3MkUgLyogSFRNTFRpbWVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzA1MTk5MzFCQjBGMEU3MDBGMzc3MkUgLyogSFRN
TFRpbWVFbGVtZW50LmggKi87IH07CisJCTgzMDc4NEIyMUM1MkVFMkMwMDEwNEQxRCAvKiBYTUxE
b2N1bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
ODMwNzg0QjExQzUyRUUxOTAwMTA0RDFEIC8qIFhNTERvY3VtZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODMwQTFDN0QyNERCNzg4QjAwMkVD
Q0FEIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8q
IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oICovOyB9OworCQk4MzBBMzZCRDFEQUM1
RkFEMDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91
c2VFdmVudEluaXQuaCAqLzsgfTsKKwkJODMwRDBCNjkyNEY1N0Q2NzAwN0VEMTIyIC8qIElJUlBy
b2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
ODMwRDBCNjYyNEY1N0Q1MDAwN0VEMTIyIC8qIElJUlByb2Nlc3Nvci5oICovOyB9OworCQk4MzEw
MkIyNzFGOUVBREQ5MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzEwMkIyMzFGOUVBREMy
MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi87IH07CisJCTgzMTFDMDAz
MUZBQTJFOTUwMEUzQzhFNSAvKiBTV1NlcnZlckpvYlF1ZXVlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzExQzAwMjFGQUEyRTg5MDBFM0M4RTUgLyog
U1dTZXJ2ZXJKb2JRdWV1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTgzMTIwQzcxMUM1NkYzRkIwMDFDQjExMiAvKiBIVE1MRGF0YUVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNEI4NkE3
MUM1NkU4M0EwMEYzRjBFMyAvKiBIVE1MRGF0YUVsZW1lbnQuaCAqLzsgfTsKKwkJODMxOThGQkYy
NEExNjBERDAwNDIwQjA1IC8qIEJhc2VBdWRpb0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMTk4RkJFMjRBMTYwQzEwMDQyMEIwNSAvKiBC
YXNlQXVkaW9Db250ZXh0LmggKi87IH07CisJCTgzMjE1MDdFMUYyN0VBMUIwMDk1QjEzNiAvKiBO
YXZpZ2F0b3JCZWFjb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzMjE1MDdCMUYyN0VBMTUwMDk1QjEzNiAvKiBOYXZpZ2F0b3JCZWFjb24uaCAqLzsg
fTsKKwkJODMyNkJGOEUyNEQzNUMzMzAwMUY4QTg1IC8qIE92ZXJTYW1wbGVUeXBlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzI2QkY4OTI0RDM1QzIw
MDAxRjhBODUgLyogT3ZlclNhbXBsZVR5cGUuaCAqLzsgfTsKKwkJODMyNkJGOEYyNEQzNUMzOTAw
MUY4QTg1IC8qIFdhdmVTaGFwZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4MzI2QkY4QzI0RDM1QzIwMDAxRjhBODUgLyogV2F2ZVNoYXBl
ck9wdGlvbnMuaCAqLzsgfTsKKwkJODMyNzRGQ0YyNTJFMjZCNzAwMUUzNURDIC8qIEF1ZGlvV29y
a2xldFByb2Nlc3NvckNvbnN0cnVjdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMjc0RkNEMjUyRTI2QTgwMDFFMzVEQyAvKiBBdWRpb1dv
cmtsZXRQcm9jZXNzb3JDb25zdHJ1Y3Rpb25EYXRhLmggKi87IH07CisJCTgzMkI4NDM0MTlEOEU1
NTEwMEIyNjA1NSAvKiBTVkdBbmltYXRlRWxlbWVudEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMkI4NDMzMTlEOEU1NTEwMEIyNjA1NSAvKiBT
VkdBbmltYXRlRWxlbWVudEJhc2UuaCAqLzsgfTsKKwkJODMzQUU1MjkyNEQzODZGMjAwMDE3QzRC
IC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzM0FFNTI4MjREMzg2RTEwMDAxN0M0QiAvKiBP
ZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnRJbml0LmggKi87IH07CisJCTgzM0I5RTMyMUY1MDhE
ODUwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMzQjlFMkYxRjUwOEQ4MDAwRTBFNDI4
IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5LmggKi87IH07CisJCTgzM0I5RTM0MUY1MDhE
ODUwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1FbnRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMzQjlFMkExRjUwOEQ4MDAwRTBFNDI4IC8qIEpTRmls
ZVN5c3RlbUVudHJ5LmggKi87IH07CisJCTgzM0I5RTM2MUY1MDhEODUwMEUwRTQyOCAvKiBKU0Zp
bGVTeXN0ZW1GaWxlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgzM0I5RTJDMUY1MDhEODAwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1GaWxlRW50
cnkuaCAqLzsgfTsKKwkJODMzQkQ4MTcyNTI0RDRGMjAwNkU3MkIzIC8qIFdvcmtsZXRQZW5kaW5n
VGFza3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgz
M0JEODEzMjUyNEQ0RTIwMDZFNzJCMyAvKiBXb3JrbGV0UGVuZGluZ1Rhc2tzLmggKi87IH07CisJ
CTgzM0JEODE4MjUyNEQ0RjUwMDZFNzJCMyAvKiBXb3JrbGV0R2xvYmFsU2NvcGVQcm94eS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMzQkQ4MTYyNTI0
RDRFMzAwNkU3MkIzIC8qIFdvcmtsZXRHbG9iYWxTY29wZVByb3h5LmggKi87IH07CisJCTgzM0JE
ODFEMjUyNEQ1MzAwMDZFNzJCMyAvKiBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMzQkQ4MTkyNTI0RDUxQjAw
NkU3MkIzIC8qIEF1ZGlvV29ya2xldEdsb2JhbFNjb3BlLmggKi87IH07CisJCTgzM0JEODFFMjUy
NEQ1MzQwMDZFNzJCMyAvKiBBdWRpb1dvcmtsZXRNZXNzYWdpbmdQcm94eS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODMzQkQ4MUIyNTI0RDUxQzAwNkU3
MkIzIC8qIEF1ZGlvV29ya2xldE1lc3NhZ2luZ1Byb3h5LmggKi87IH07CisJCTgzNDA3RkMxMUU4
RDlDMTcwMEUwNDhEMyAvKiBWaXNpYmlsaXR5Q2hhbmdlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzQwN0ZDMDFFOEQ5QzEyMDBFMDQ4RDMg
LyogVmlzaWJpbGl0eUNoYW5nZUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTgzNDQ3NkVGMURBNUJDNUUwMDJCNUVCMCAvKiBKU1Njcm9s
bExvZ2ljYWxQb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODNFOUIzMDExREE1QTUxRTAwRkZEOEQ0IC8qIEpTU2Nyb2xsTG9naWNhbFBvc2l0
aW9uLmggKi87IH07CisJCTgzNDQ3NkVGMURBNUJDNUUwMDJCNUVDMSAvKiBKU1Njcm9sbEludG9W
aWV3T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gODNFOUIzMDExREE1QTUxRTAwRkZEOEU1IC8qIEpTU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmgg
Ki87IH07CisJCTgzNDQ3NkVGMURBNUJDNUUwMDJCNkVCMCAvKiBKU1Njcm9sbEJlaGF2aW9yLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0U5QjMwMTFE
QTVBNTFFMDBGRkU4RDQgLyogSlNTY3JvbGxCZWhhdmlvci5oICovOyB9OworCQk4MzQ0NzZFRjFE
QTVCQzVFMDAyQjZFQzEgLyogSlNTY3JvbGxPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0U5QjMwMTFEQTVBNTFFMDBGRkU4RTUgLyogSlNT
Y3JvbGxPcHRpb25zLmggKi87IH07CisJCTgzNDQ3NkVGMURBNUJDNUUwMDJCNkVEMiAvKiBKU1Nj
cm9sbFRvT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODNFOUIzMDExREE1QTUxRTAwRkZFOEY2IC8qIEpTU2Nyb2xsVG9PcHRpb25zLmggKi87
IH07CisJCTgzNDhCRkFDMUI4NTcyOTgwMDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNDhCRkFBMUI4NTcy
OTUwMDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCAqLzsgfTsKKwkJODM0QTZBM0EyNTI2ODQ0
QTAwNzQ3RjVEIC8qIFdvcmtsZXRQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzRBNkEzODI1MjY4NDQxMDA3NDdGNUQgLyogV29ya2xl
dFBhcmFtZXRlcnMuaCAqLzsgfTsKKwkJODM0Q0JGQzIyNERDNzg2NzAwQzJBM0Q4IC8qIE1lZGlh
U3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzRDQkZCRjI0REM3ODU1MDBDMkEzRDggLyogTWVkaWFTdHJlYW1B
dWRpb1NvdXJjZU9wdGlvbnMuaCAqLzsgfTsKKwkJODM0REZBRDAxRjdEQUU1RDAwQzI3MjVCIC8q
IFNoYXJlZFN0cmluZ0hhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRTdHJpbmdIYXNoLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM1MDUx
QTQyNEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJ
SVJGaWx0ZXJOb2RlLmggKi87IH07CisJCTgzNTA1MUE1MjRGNTczQzgwMDk5MTFENyAvKiBJSVJG
aWx0ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5oICovOyB9
OworCQk4MzUyMEM3RTFBNzFCRkNDMDA2QkQyQUEgLyogQ1NTRm9udEZhbWlseS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MjBDN0QxQTcxQkZDQzAw
NkJEMkFBIC8qIENTU0ZvbnRGYW1pbHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk4MzU4Q0I3MDFDNTMyNzc1MDBFMEMyRDggLyogSlNYTUxEb2N1
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNG
NTcwQUQxQzUzMjY4RTAwN0ZENkNCIC8qIEpTWE1MRG9jdW1lbnQuaCAqLzsgfTsKKwkJODM1RDJE
NzgxRjVGMUZCRDAwMTQxREVEIC8qIEhUTUxJbnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVEMkQ3NTFGNUYxRkI4
MDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuaCAqLzsgfTsKKwkJODM1RDM2
MzcxOUZGNjE5MzAwNEM5M0FCIC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1RDM2MzYxOUZGNjE5MzAwNEM5M0FC
IC8qIFN0eWxlQnVpbGRlckN1c3RvbS5oICovOyB9OworCQk4MzVENTRDNTFGNERFNTM4MDBFNjA2
NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzVENTRDMjFGNERFNTM0MDBFNjA2NzEgLyogRGlyZWN0
b3J5RmlsZUxpc3RDcmVhdG9yLmggKi87IH07CisJCTgzNURBOTAyMjRGNTgyNjUwMDIyRERBNCAv
KiBJSVJEU1BLZXJuZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzNURBOTAxMjRGNTgyNTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuaCAqLzsgfTsK
KwkJODM2MkU4QzEyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9h
ZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2MkU4
QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzNjU4OURFMUY1
NEE3NjkwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjU4OUQ5MUY1NEE3NjIwMERD
MzFGNCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLzsgfTsKKwkJODM2NTg5RTAx
RjU0QTc2RTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2NTg5RDgxRjU0QTc2MjAw
REMzMUY0IC8qIEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oICovOyB9OworCQk4MzY3NTg3
RjFDNTZFOTlCMDA4QTEwODcgLyogSlNIVE1MRGF0YUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNEI4NkE4MUM1NkU5M0UwMEYzRjBFMyAv
KiBKU0hUTUxEYXRhRWxlbWVudC5oICovOyB9OworCQk4MzY5RkRGQzFGQTEwMkUzMDBDMUZGMUYg
LyogU2VydmljZVdvcmtlckNsaWVudFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNjlGREZCMUZBMTAyQ0IwMEMxRkYxRiAvKiBTZXJ2aWNlV29y
a2VyQ2xpZW50VHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTgzNkFDRUMzMUVDQTYyQzgwMDRCRDAxMiAvKiBET01NYXRyaXhSZWFkT25seS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QUNFQzAx
RUNBNjJCMDAwNEJEMDEyIC8qIERPTU1hdHJpeFJlYWRPbmx5LmggKi87IH07CisJCTgzNkFDRUNB
MUVDQTk1NjkwMDRCRDAxMiAvKiBET01NYXRyaXguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkFDRUM1MUVDQTY2NTQwMDRCRDAxMiAvKiBET01NYXRy
aXguaCAqLzsgfTsKKwkJODM2QUNFQ0IxRUNBOTU2RDAwNEJEMDEyIC8qIERPTU1hdHJpeEluaXQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkFDRUM3
MUVDQTY2NTQwMDRCRDAxMiAvKiBET01NYXRyaXhJbml0LmggKi87IH07CisJCTgzNkFDRUQzMUVD
QUFCMTkwMDRCRDAxMiAvKiBKU0RPTU1hdHJpeC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM2QUNFQ0UxRUNBQUIwNDAwNEJEMDEyIC8qIEpTRE9NTWF0
cml4LmggKi87IH07CisJCTgzNkFDRUQ0MUVDQUFCMTkwMDRCRDAxMiAvKiBKU0RPTU1hdHJpeElu
aXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkFD
RUNGMUVDQUFCMDQwMDRCRDAxMiAvKiBKU0RPTU1hdHJpeEluaXQuaCAqLzsgfTsKKwkJODM2QUNF
RDYxRUNBQUIxOTAwNEJEMDEyIC8qIEpTRE9NTWF0cml4UmVhZE9ubHkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkFDRUQxMUVDQUFCMDQwMDRCRDAx
MiAvKiBKU0RPTU1hdHJpeFJlYWRPbmx5LmggKi87IH07CisJCTgzNkIwOTU2MUY1RjM0RDkwMDND
MzcwMiAvKiBKU0hUTUxJbnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZCMDk1MjFGNUYzNEQwMDAzQzM3MDIgLyog
SlNIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oICovOyB9OworCQk4MzZEMDMyQTFEQTg5Qjky
MDBGRkQ5NkIgLyogRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzZEMDMyODFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJbml0LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM2RDAzMzAx
REE4QTEzRDAwRkZEOTZCIC8qIEpTRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzZEMDMyQzFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVu
dEluaXQuaCAqLzsgfTsKKwkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJk
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgz
NkQwMzJFMURBOEExMzIwMEZGRDk2QiAvKiBKU0NsaXBib2FyZEV2ZW50LmggKi87IH07CisJCTgz
NkRBQTA2MUNFQUI4MEQwMEEyQjcwNyAvKiBSZW5kZXJEZXNjZW5kYW50SXRlcmF0b3IuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNkRBQTA1MUNFQUI3
Q0QwMEEyQjcwNyAvKiBSZW5kZXJEZXNjZW5kYW50SXRlcmF0b3IuaCAqLzsgfTsKKwkJODM3MDU2
OEUxRjUwOTE1NzAwRDkzNDI1IC8qIEpTRmlsZUNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzcwNTY4QjFGNTA5MTUwMDBEOTM0MjUgLyog
SlNGaWxlQ2FsbGJhY2suaCAqLzsgfTsKKwkJODM3MDU2OTAxRjUwOTE1QzAwRDkzNDI1IC8qIEpT
RmlsZVN5c3RlbUVudHJ5Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzNzA1Njg5MUY1MDkxNTAwMEQ5MzQyNSAvKiBKU0ZpbGVTeXN0ZW1F
bnRyeUNhbGxiYWNrLmggKi87IH07CisJCTgzNzFBQzNCMUY1MDlCRTQwMEZCRjI4NCAvKiBFcnJv
ckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzcxQUMzOTFGNTA5QkREMDBGQkYyODQgLyogRXJyb3JDYWxsYmFjay5oICovOyB9OworCQk4
MzcyNkVGQjI1MjY3OUM1MDBDNjExNEUgLyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ29uc3RydWN0
b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzNzI2
RUY4MjUyNjc5QjIwMEM2MTE0RSAvKiBBdWRpb1dvcmtsZXRQcm9jZXNzb3JDb25zdHJ1Y3Rvci5o
ICovOyB9OworCQk4MzcyREIzMTFBNjc4MEE4MDBDNjk3QzUgLyogRGlhZ25vc3RpY0xvZ2dpbmdS
ZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4MzcyREIzMDFBNjc4MEE4MDBDNjk3QzUgLyogRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM3
NDVEMDIyNEQ4OTlEMzAwRkJEQ0M0IC8qIEdhaW5PcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzc0NUNGRjI0RDg5OUMyMDBGQkRDQzQgLyog
R2Fpbk9wdGlvbnMuaCAqLzsgfTsKKwkJODM3NTY5OUUyNTJDRjM2MjAwRTFCOTU2IC8qIEF1ZGlv
UGFyYW1EZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4Mzc1Njk5OTI1MkNGMzVFMDBFMUI5NTYgLyogQXVkaW9QYXJhbURlc2NyaXB0b3Iu
aCAqLzsgfTsKKwkJODM3NTY5OUYyNTJDRjM2NDAwRTFCOTU2IC8qIEF1dG9tYXRpb25SYXRlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzc1Njk5RDI1
MkNGMzVGMDBFMUI5NTYgLyogQXV0b21hdGlvblJhdGUuaCAqLzsgfTsKKwkJODM3NjVGOTUxREFD
NTIyRjAwQzA2NTM3IC8qIE1vdXNlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzc2NUY5NDFEQUM1MjE4MDBDMDY1MzcgLyogTW91c2VF
dmVudEluaXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk4Mzc4ODc4MjI0RDhBNjA5MDAwRDRBNUIgLyogQXVkaW9CdWZmZXJTb3VyY2VPcHRpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzc4ODc3
RjI0RDhBNUZDMDAwRDRBNUIgLyogQXVkaW9CdWZmZXJTb3VyY2VPcHRpb25zLmggKi87IH07CisJ
CTgzNzkzNjNGMUZCQkIwQjQwMEM4MDIzQyAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM3OTM2M0UxRkJC
QjBBNTAwQzgwMjNDIC8qIFNlcnZpY2VXb3JrZXJDbGllbnREYXRhLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM3OTY0Q0YxRjhEQjY5RDAwMjE4
RUEwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25EYXRhSU9TLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM3OTY0Q0UxRjhEQjY5QTAwMjE4RUEwIC8qIEdl
b2xvY2F0aW9uUG9zaXRpb25EYXRhSU9TLm1tICovOyB9OworCQk4MzdBODAxMzFFMUUxMjczMDAw
MjZCOUYgLyogTG9jYWxpemFibGUuc3RyaW5nc2RpY3QgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzN0E4MDExMUUxRTEyNzMwMDAyNkI5RiAvKiBMb2Nh
bGl6YWJsZS5zdHJpbmdzZGljdCAqLzsgfTsKKwkJODM3QzBCNzYyNERCMzg1MDAwNUQ1OTU5IC8q
IER5bmFtaWNzQ29tcHJlc3Nvck9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzN0MwQjczMjREQjM4NDIwMDVENTk1OSAvKiBEeW5hbWljc0Nv
bXByZXNzb3JPcHRpb25zLmggKi87IH07CisJCTgzN0Q0NjI3MUZBMkE4Q0UwMDU0RTFGQSAvKiBT
ZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM3RDQ2MjUxRkEyQThDNTAwNTRFMUZBIC8qIFNlcnZpY2VX
b3JrZXJDbGllbnRJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJODM3RkIzNDUxRjlFQTA2RDAwRDBGQzMxIC8qIEV4dGVuZGFibGVN
ZXNzYWdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDgzN0ZCMzQwMUY5RUEwNjYwMEQwRkMzMSAvKiBFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Lmgg
Ki87IH07CisJCTgzODg2NzM1MUQxM0JBNUYwMDM2OTdEMCAvKiBSZW5kZXJPYmplY3RFbnVtcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM4ODY3MzQx
RDEzQkE1OTAwMzY5N0QwIC8qIFJlbmRlck9iamVjdEVudW1zLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODM4Q0E2QkQxRkMwREZFOTAwNUQ5RkE1
IC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM4Q0E2QkIxRkMwREZERDAwNUQ5RkE1IC8qIFNl
cnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzOEVGNTM4MURDMTQ5RTIwMDhGMEMzOSAvKiBJREJU
cmFuc2FjdGlvbk1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDgzOEVGNTM2MURDMTQ5REEwMDhGMEMzOSAvKiBJREJUcmFuc2FjdGlvbk1vZGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4MzhFRjUz
QzFEQzE0QTdDMDA4RjBDMzkgLyogSlNJREJUcmFuc2FjdGlvbk1vZGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOEVGNTNBMURDMTRBNzUwMDhGMEMz
OSAvKiBKU0lEQlRyYW5zYWN0aW9uTW9kZS5oICovOyB9OworCQk4MzhGODZEQTFGNTA5RTc0MDBF
OENGQzUgLyogRmlsZUNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzhGODZEODFGNTA5RTZDMDBFOENGQzUgLyogRmlsZUNhbGxiYWNrLmgg
Ki87IH07CisJCTgzOEY4NkRCMUY1MDlFN0IwMEU4Q0ZDNSAvKiBGaWxlU3lzdGVtRW50cnlDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM4
Rjg2RDcxRjUwOUU2QzAwRThDRkM1IC8qIEZpbGVTeXN0ZW1FbnRyeUNhbGxiYWNrLmggKi87IH07
CisJCTgzOTk0NzBDMUY1MEI2M0UwMEU5RDg2QiAvKiBET01GaWxlU3lzdGVtLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzk5NDcwNzFGNTBCNjM4MDBF
OUQ4NkIgLyogRE9NRmlsZVN5c3RlbS5oICovOyB9OworCQk4Mzk5NDcxMDFGNTBCNkZBMDBFOUQ4
NkIgLyogSlNET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4Mzk5NDcwRTFGNTBCNkYzMDBFOUQ4NkIgLyogSlNET01GaWxlU3lzdGVt
LmggKi87IH07CisJCTgzOUEwOTVEMjUyNEYzN0YwMEVFRjMyOCAvKiBXb3JrZXJPcldvcmtsZXRT
Y3JpcHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4MzlBMDk1QjI1MjRGMzc2MDBFRUYzMjggLyogV29ya2VyT3JXb3JrbGV0U2NyaXB0
Q29udHJvbGxlci5oICovOyB9OworCQk4MzlBMkYyRTFFMjA0QTcxMDAzOTA1N0UgLyogV2ViR0xT
dGF0ZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBXZWJHTFN0YXRlVHJhY2tlci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzOUFBRkVEMUEw
QzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxX
QlJFbGVtZW50LmggKi87IH07CisJCTgzOUJFNkQ1MjRGNTg3NjIwMDRERjUwRiAvKiBJSVJGaWx0
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzOUJF
NkQyMjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLzsgfTsKKwkJODNBMkFCREIyNEQ4
NkRFMDAwRTJENzNEIC8qIERlbGF5T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODNBMkFCRDgyNEQ4NkRDNjAwRTJENzNEIC8qIERlbGF5T3B0
aW9ucy5oICovOyB9OworCQk4M0E4QUM0MDFGQUJCRkU1MDAyMDY0QUMgLyogU2VydmljZVdvcmtl
cklkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDgzQThBQzNFMUZBQkJGRDEwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzQUNE
MDEzMjUyMjlFMTAwMDBEMTI0RSAvKiBXb3JrbGV0T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNBQ0QwMTAyNTIyOUUwNDAwMEQxMjRFIC8q
IFdvcmtsZXRPcHRpb25zLmggKi87IH07CisJCTgzQjJEMTc1MUI4QkNENkEwMEEwMkU0NyAvKiBO
YXRpdmVOb2RlRmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4M0U5NTlFMTFCOEJDMjJCMDA0RDkzODUgLyogTmF0aXZlTm9kZUZpbHRlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzQjc0RUY2
MUYzRTBCRjIwMDk5NkJDNyAvKiBLZWVwYWxpdmVSZXF1ZXN0VHJhY2tlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNCNzRFRjMxRjNFMEJENzAwOTk2
QkM3IC8qIEtlZXBhbGl2ZVJlcXVlc3RUcmFja2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODNCOTY4N0IxOUY4QUI4MzAwNEVGN0FGIC8qIFN0
eWxlQnVpbGRlckNvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODNCOTY4NzkxOUY4QUI4MzAwNEVGN0FGIC8qIFN0eWxlQnVpbGRlckNvbnZl
cnRlci5oICovOyB9OworCQk4M0I5ODcwOTI1MjI1RjcyMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0
Tm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNC
OTg3MDcyNTIyNUYwRTAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldE5vZGUuaCAqLzsgfTsKKwkJODNC
OTg3MEEyNTIyNUY3NjAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldE5vZGVPcHRpb25zLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0I5ODcwMDI1MjI1RjBC
MDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0Tm9kZU9wdGlvbnMuaCAqLzsgfTsKKwkJODNCOTg3MEIy
NTIyNUY3RDAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNCOTg3MDEyNTIyNUYwQzAwQTkzOUYxIC8qIEF1ZGlv
V29ya2xldC5oICovOyB9OworCQk4M0I5ODcwQzI1MjI1RjgzMDBBOTM5RjEgLyogQXVkaW9QYXJh
bU1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNC
OTg2RkYyNTIyNUYwQjAwQTkzOUYxIC8qIEF1ZGlvUGFyYW1NYXAuaCAqLzsgfTsKKwkJODNCQjVD
ODgxRDVENkY0NTAwNUE3MUY0IC8qIEFsbERlc2NlbmRhbnRzQ29sbGVjdGlvbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNCQjVDODcxRDVENkYzQTAw
NUE3MUY0IC8qIEFsbERlc2NlbmRhbnRzQ29sbGVjdGlvbi5oICovOyB9OworCQk4M0JCOEI1RjI1
MjY3NzY0MDBEODlGMEIgLyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0JCOEI1RDI1MjY3NzU1MDBEODlGMEIg
LyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yLmggKi87IH07CisJCTgzQkQzQ0VFMjQ5OThFMDEwMEJB
M0U2NyAvKiBBdWRpb0NvbnRleHRTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODNCRDNDRUQyNDk5OERGNjAwQkEzRTY3IC8qIEF1ZGlvQ29udGV4
dFN0YXRlLmggKi87IH07CisJCTgzQzA1QTVCMUE2ODYyMTIwMDdFNURFQSAvKiBTdHlsZVByb3Bl
cnR5U2hvcnRoYW5kRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4M0MwNUE1OTFBNjg2MjEyMDA3RTVERUEgLyogU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZEZ1bmN0aW9ucy5oICovOyB9OworCQk4M0MxRjU5NDFFREY2OUQzMDA0MTBEMjcgLyog
UXVhbGlmaWVkTmFtZUNhY2hlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4M0MxRjU5MjFFREY2OUQzMDA0MTBEMjcgLyogUXVhbGlmaWVkTmFtZUNhY2hl
LmggKi87IH07CisJCTgzQzQ1QjhFMURDMkI2OEEwMDg4NzFCQSAvKiBWYWxpZGF0aW9uQnViYmxl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0M0NUI4
RDFEQzJCNjdDMDA4ODcxQkEgLyogVmFsaWRhdGlvbkJ1YmJsZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzQzU3OTVEMURBNUMzMDEwMDZGOUM4
NiAvKiBTY3JvbGxMb2dpY2FsUG9zaXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNTBDM0U3MURBNTlCNjIwMDM1NTQyNCAvKiBTY3JvbGxMb2dp
Y2FsUG9zaXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk4M0M1Nzk1RDFEQTVDMzAxMDA2RjlDOTcgLyogU2Nyb2xsSW50b1ZpZXdPcHRpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzUwQzNF
NzFEQTU5QjYyMDAzNTU0MzUgLyogU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODNDNTc5NUQxREE1QzMwMTAw
NkZBQzg2IC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4MzUwQzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZp
b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4
M0M1Nzk1RDFEQTVDMzAxMDA2RkFDOTcgLyogU2Nyb2xsT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM1MEMzRTcxREE1OUI2MjAwMzU2NDM1
IC8qIFNjcm9sbE9wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk4M0M1Nzk1RDFEQTVDMzAxMDA2RkFDQTggLyogU2Nyb2xsVG9PcHRpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzUwQzNF
NzFEQTU5QjYyMDAzNTY0NDYgLyogU2Nyb2xsVG9PcHRpb25zLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODNEMzVBRUMxQzcxODdGQTAwRjcwRDVB
IC8qIFhNTEh0dHBSZXF1ZXN0RXZlbnRUYXJnZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRDM1QUVBMUM3MTg3RUQwMEY3MEQ1QSAvKiBYTUxIdHRw
UmVxdWVzdEV2ZW50VGFyZ2V0LmggKi87IH07CisJCTgzRDM1QUYyMUM3MThEOTAwMEY3MEQ1QSAv
KiBKU1hNTEh0dHBSZXF1ZXN0RXZlbnRUYXJnZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRDM1QUYwMUM3MThEODQwMEY3MEQ1QSAvKiBKU1hNTEh0
dHBSZXF1ZXN0RXZlbnRUYXJnZXQuaCAqLzsgfTsKKwkJODNENTExRjYyNTBDMUNCRjAwMkVEQzUx
IC8qIFB1c2hQdWxsRklGTy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODNENTExRjUyNTBDMUNBODAwMkVEQzUxIC8qIFB1c2hQdWxsRklGTy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzRDZBQUU2MjUy
NEVFMUMwMDQyOEI0QiAvKiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNENkFBRTQyNTI0RUUxMzAwNDI4
QjRCIC8qIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmggKi87IH07CisJCTgzREI5RTBGMjRE
QTE5NDkwMDM3QjQ2OCAvKiBCaXF1YWRGaWx0ZXJUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0RCOUUwQzI0REExOEI1MDAzN0I0NjggLyogQmlx
dWFkRmlsdGVyVHlwZS5oICovOyB9OworCQk4M0RCOUUxMDI0REExOTU3MDAzN0I0NjggLyogQmlx
dWFkRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODNEQjlFMEUyNERBMThCNjAwMzdCNDY4IC8qIEJpcXVhZEZpbHRlck9wdGlvbnMu
aCAqLzsgfTsKKwkJODNFMzU5QTIxQkIxMDMxRDAwMkNFQjk4IC8qIEpTSFRNTFRpbWVFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0UzNTlB
MDFCQjEwMzFEMDAyQ0VCOTggLyogSlNIVE1MVGltZUVsZW1lbnQuaCAqLzsgfTsKKwkJODNFODY2
ODAxRkJBNTY1QjAwODg1NUM1IC8qIFNlcnZpY2VXb3JrZXJEYXRhLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0U4NjY3RDFGQkE1NjNGMDA4ODU1QzUg
LyogU2VydmljZVdvcmtlckRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk4M0VFNTk4RjFGNTA5NThFMDAzRThCMzAgLyogSlNFcnJvckNhbGxi
YWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4M0VF
NTk4QjFGNTA5NThCMDAzRThCMzAgLyogSlNFcnJvckNhbGxiYWNrLmggKi87IH07CisJCTgzRjE5
OTUwMDgyNDVFNTkwMDFFOUFCQyAvKiBDYWNoZWRGb250TG9hZFJlcXVlc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1ODc4NjQ5MDJERTNBOUEwMUVB
NDEyMiAvKiBDYWNoZWRGb250TG9hZFJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4M0YyOEMwMDI0REIxREUxMDA1QkE2RjYgLyogQ29u
dm9sdmVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODNGMjhCRkQyNERCMUREMzAwNUJBNkY2IC8qIENvbnZvbHZlck9wdGlvbnMuaCAqLzsg
fTsKKwkJODNGNkFFQkYyNTI3QkIwQzAwMzRCQ0QzIC8qIFdvcmtlck9yV29ya2xldFRocmVhZC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNFODI4QjIy
NTI3OTRDRDAwMjdFMEY3IC8qIFdvcmtlck9yV29ya2xldFRocmVhZC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzRkIzMzcxMUY1MDhBNTQwMDk4
NkU1NCAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzRkIzMzZEMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxl
U3lzdGVtRGlyZWN0b3J5RW50cnkuaCAqLzsgfTsKKwkJODNGQjMzNzMxRjUwOEE1ODAwOTg2RTU0
IC8qIEZpbGVTeXN0ZW1FbnRyeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODNGQjMzNkYxRjUwOEE0RTAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1FbnRyeS5o
ICovOyB9OworCQk4M0ZCMzM3NTFGNTA4QTVCMDA5ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRy
eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNGQjMz
NkMxRjUwOEE0RTAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1GaWxlRW50cnkuaCAqLzsgfTsKKwkJODNG
Qzk5NEIyNTI1NTdFQTAwMTc3NjE4IC8qIEF1ZGlvV29ya2xldFRocmVhZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNGQzk5NDkyNTI1NTdFNzAwMTc3
NjE4IC8qIEF1ZGlvV29ya2xldFRocmVhZC5oICovOyB9OworCQk4M0ZFN0NBNzFEQTlGMUE3MDAz
NzIzN0MgLyogVUlFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDgzRkU3Q0E0MURBOUYxNjYwMDM3MjM3QyAvKiBVSUV2ZW50SW5pdC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTgzRkU3Q0E4
MURBOUYxQjYwMDM3MjM3QyAvKiBFdmVudE1vZGlmaWVySW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNGRTdDQTMxREE5RjE2NTAwMzcyMzdDIC8q
IEV2ZW50TW9kaWZpZXJJbml0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJODNGRTkwMjcxRTMwN0MzMDAwM0U5MTk5IC8qIFBlcmZvcm1hbmNlTW9u
aXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODNG
RTkwMjYxRTMwN0MxQzAwM0U5MTk5IC8qIFBlcmZvcm1hbmNlTW9uaXRvci5oICovOyB9OworCQk4
NDE5RDJBNzEyMEQ5MkQwMDAxNDFGOEYgLyogU1ZHUGF0aEJ5dGVTdHJlYW0uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0MTlEMkE0MTIwRDkyRDAwMDE0
MUY4RiAvKiBTVkdQYXRoQnl0ZVN0cmVhbS5oICovOyB9OworCQk4NDE5RDJBOTEyMEQ5MkQwMDAx
NDFGOEYgLyogU1ZHUGF0aEJ5dGVTdHJlYW1CdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDE5RDJBNjEyMEQ5MkQwMDAxNDFGOEYgLyogU1ZH
UGF0aEJ5dGVTdHJlYW1CdWlsZGVyLmggKi87IH07CisJCTg0MTlEMkFEMTIwRDkyRkMwMDE0MUY4
RiAvKiBTVkdQYXRoQnl0ZVN0cmVhbVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODQxOUQyQUIxMjBEOTJGQzAwMTQxRjhGIC8qIFNWR1BhdGhC
eXRlU3RyZWFtU291cmNlLmggKi87IH07CisJCTg0MTlEMkJBMTIwRTBDNzYwMDE0MUY4RiAvKiBT
VkdQYXRoU3RyaW5nQnVpbGRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQxOUQyQjgxMjBFMEM3NjAwMTQxRjhGIC8qIFNWR1BhdGhTdHJpbmdCdWls
ZGVyLmggKi87IH07CisJCTg0MUM0NDE2MjYwQzM4RkQwMEZGNjY3MyAvKiBKU0RPTUNhc3RUaGlz
VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0
MUM0NDE0MjYwQzM4QkEwMEZGNjY3MyAvKiBKU0RPTUNhc3RUaGlzVmFsdWUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4NDIyNDE4NDEwN0U3N0Y0
MDA3NjZBODcgLyogSlNTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDIyNDE4MjEwN0U3N0Y0MDA3NjZBODcgLyog
SlNTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmggKi87IH07CisJCTg0MjI0MTk0MTA3RTc4QTcwMDc2
NkE4NyAvKiBTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDIyNDE5MTEwN0U3OEE3MDA3NjZBODcgLyogU1ZHRkVN
b3JwaG9sb2d5RWxlbWVudC5oICovOyB9OworCQk4NDMwMEJENjEyMEM5QUFDMDAyMTk1NEEgLyog
U1ZHUGF0aFN0cmluZ1NvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQzMDBCRDUxMjBDOUFBQzAwMjE5NTRBIC8qIFNWR1BhdGhTdHJpbmdTb3Vy
Y2UuaCAqLzsgfTsKKwkJODQzMDBCRDgxMjBDOUFENDAwMjE5NTRBIC8qIFNWR1BhdGhTb3VyY2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0MzAwQkQ3
MTIwQzlBRDQwMDIxOTU0QSAvKiBTVkdQYXRoU291cmNlLmggKi87IH07CisJCTg0NUU3MkY4MEZE
MjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDg0NUU3MkY3MEZEMjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCAqLzsg
fTsKKwkJODQ1RTcyRkMwRkQyNjIzOTAwQTg3RDc5IC8qIFNWR0ZpbHRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ1RTcyRkEwRkQyNjIzOTAwQTg3
RDc5IC8qIFNWR0ZpbHRlci5oICovOyB9OworCQk4NDY1MEU3RTIzODdBRDdEMDA2MjY2RTIgLyog
TWVkaWFRdWVyeUxpc3RFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQ2NTBFN0MyMzg3QUQ3QzAwNjI2NkUyIC8qIE1lZGlhUXVlcnlMaXN0RXZl
bnQuaCAqLzsgfTsKKwkJODQ3MzBENzcxMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNv
dXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3
MzBENUExMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNvdXJjZS5oICovOyB9OworCQk4
NDczMEQ3OTEyNDhGMEIzMDBEM0E5QzkgLyogRkVDb252b2x2ZU1hdHJpeC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENUMxMjQ4RjBCMzAwRDNB
OUM5IC8qIEZFQ29udm9sdmVNYXRyaXguaCAqLzsgfTsKKwkJODQ3MzBEN0IxMjQ4RjBCMzAwRDNB
OUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA4NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNlTGln
aHRpbmcuaCAqLzsgfTsKKwkJODQ3MzBEN0QxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlzcGxhY2Vt
ZW50TWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDczMEQ2MDEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAuaCAqLzsgfTsKKwkJ
ODQ3MzBEN0YxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRmxvb2QuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzMwRDYyMTI0OEYwQjMwMEQzQTlDOSAvKiBG
RUZsb29kLmggKi87IH07CisJCTg0NzMwRDgxMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUxpZ2h0aW5n
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDczMEQ2
NDEyNDhGMEIzMDBEM0E5QzkgLyogRkVMaWdodGluZy5oICovOyB9OworCQk4NDczMEQ4MzEyNDhG
MEIzMDBEM0E5QzkgLyogRkVNZXJnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODQ3MzBENjYxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFTWVyZ2UuaCAqLzsg
fTsKKwkJODQ3MzBEODUxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFTW9ycGhvbG9neS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENjgxMjQ4RjBCMzAw
RDNBOUM5IC8qIEZFTW9ycGhvbG9neS5oICovOyB9OworCQk4NDczMEQ4NzEyNDhGMEIzMDBEM0E5
QzkgLyogRkVPZmZzZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDg0NzMwRDZBMTI0OEYwQjMwMEQzQTlDOSAvKiBGRU9mZnNldC5oICovOyB9OworCQk4
NDczMEQ4OTEyNDhGMEIzMDBEM0E5QzkgLyogRkVTcGVjdWxhckxpZ2h0aW5nLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDczMEQ2QzEyNDhGMEIzMDBE
M0E5QzkgLyogRkVTcGVjdWxhckxpZ2h0aW5nLmggKi87IH07CisJCTg0NzMwRDhCMTI0OEYwQjMw
MEQzQTlDOSAvKiBGRVRpbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDg0NzMwRDZFMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVRpbGUuaCAqLzsgfTsKKwkJ
ODQ3MzBEOEQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFVHVyYnVsZW5jZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENzAxMjQ4RjBCMzAwRDNBOUM5
IC8qIEZFVHVyYnVsZW5jZS5oICovOyB9OworCQk4NDczMEQ5MTEyNDhGMEIzMDBEM0E5QzkgLyog
TGlnaHRTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDg0NzMwRDc0MTI0OEYwQjMwMEQzQTlDOSAvKiBMaWdodFNvdXJjZS5oICovOyB9OworCQk4
NDczMEQ5MjEyNDhGMEIzMDBEM0E5QzkgLyogUG9pbnRMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENzUxMjQ4RjBCMzAwRDNB
OUM5IC8qIFBvaW50TGlnaHRTb3VyY2UuaCAqLzsgfTsKKwkJODQ3MzBEOTMxMjQ4RjBCMzAwRDNB
OUM5IC8qIFNwb3RMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODQ3MzBENzYxMjQ4RjBCMzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJj
ZS5oICovOyB9OworCQk4NDc2QzlFNjExREY2QTBCMDA1NTVCMDIgLyogU1ZHUGF0aFNlZ0xpc3RC
dWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDc2QzlFNDExREY2QTBCMDA1NTVCMDIgLyogU1ZHUGF0aFNlZ0xpc3RCdWlsZGVyLmggKi87IH07
CisJCTg0NzZDOUVCMTFERjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQnVpbGRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3NkM5RTgxMURGNkEyOTAw
NTU1QjAyIC8qIFNWR1BhdGhCdWlsZGVyLmggKi87IH07CisJCTg0NzZDOUVDMTFERjZBMjkwMDU1
NUIwMiAvKiBTVkdQYXRoQ29uc3VtZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDg0NzZDOUU5MTFERjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQ29uc3Vt
ZXIuaCAqLzsgfTsKKwkJODQ3NkM5RjAxMURGNkE1ODAwNTU1QjAyIC8qIFNWR1BhdGhQYXJzZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzZDOUVF
MTFERjZBNTgwMDU1NUIwMiAvKiBTVkdQYXRoUGFyc2VyLmggKi87IH07CisJCTg0ODAxOTU1MTA4
QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4MDE5NTMxMDhCQUZCMzAwQ0IyQjFGIC8qIEZFR2F1
c3NpYW5CbHVyLmggKi87IH07CisJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBIYXNoQ2hh
bmdlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdlRXZlbnQuaCAqLzsgfTsKKwkJ
ODQ4MkI3NTIxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NDgyQjc1MDExOThDQjZCMDBC
RkIwMDUgLyogSlNIYXNoQ2hhbmdlRXZlbnQuaCAqLzsgfTsKKwkJODQ4NTIyN0MxMTkwMTYyQzAw
NkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4NDg1MjI3ODExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2Vy
bkVsZW1lbnQuaCAqLzsgfTsKKwkJODQ4NTIyN0UxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktl
cm5FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA4NDg1MjI3QTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuaCAqLzsgfTsK
KwkJODQ4NTIyOEIxMTkwMTczQzAwNkVEQzdGIC8qIFNWR1ZLZXJuRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ4NTIyODgxMTkwMTczQzAw
NkVEQzdGIC8qIFNWR1ZLZXJuRWxlbWVudC5oICovOyB9OworCQk4NEE4MUYzRTBGQzdERkYwMDA5
NTUzMDAgLyogU291cmNlQWxwaGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDg0QTgxRjNDMEZDN0RGRjAwMDk1NTMwMCAvKiBTb3VyY2VBbHBoYS5oICov
OyB9OworCQk4NEE4MUY0MjBGQzdFMDI3MDA5NTUzMDAgLyogU291cmNlR3JhcGhpYy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODRBODFGNDAwRkM3RTAy
NzAwOTU1MzAwIC8qIFNvdXJjZUdyYXBoaWMuaCAqLzsgfTsKKwkJODRCMzQ5QTIyMkY4NkU3NTAw
RDQ3QkNGIC8qIEV2ZW50VGFyZ2V0Q29uY3JldGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0QjM0OUEwMjJGODZFNzQwMEQ0N0JDRiAvKiBFdmVudFRh
cmdldENvbmNyZXRlLmggKi87IH07CisJCTg0QjZCOTc4MTIwRjEzRTUwMEI4RUZBRiAvKiBTVkdQ
YXRoU2VnTGlzdFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODRCNkI5NzYxMjBGMTNFNTAwQjhFRkFGIC8qIFNWR1BhdGhTZWdMaXN0U291cmNl
LmggKi87IH07CisJCTg0QzVCMkZCMTIxNkRDODEwMDg4QjUzQSAvKiBTVkdQYXRoVHJhdmVyc2Fs
U3RhdGVCdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4NEM1QjJGOTEyMTZEQzgxMDA4OEI1M0EgLyogU1ZHUGF0aFRyYXZlcnNhbFN0YXRlQnVp
bGRlci5oICovOyB9OworCQk4NEM2Nzg0RDEyMTQ4MTQ3MDBBOTI5MDIgLyogU1ZHUGF0aEJsZW5k
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0QzY3
ODRCMTIxNDgxNDcwMEE5MjkwMiAvKiBTVkdQYXRoQmxlbmRlci5oICovOyB9OworCQk4NEQwQzQw
NjExMTVGMUVBMDAxOEFBMzQgLyogQWZmaW5lVHJhbnNmb3JtLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NEQwQzQwNTExMTVGMUVBMDAxOEFBMzQgLyog
QWZmaW5lVHJhbnNmb3JtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJODUwMzFCM0QwQTQ0RUZDNzAwRjk5MkUwIC8qIEJlZm9yZVVubG9hZEV2ZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTAzMUIy
NzBBNDRFRkM3MDBGOTkyRTAgLyogQmVmb3JlVW5sb2FkRXZlbnQuaCAqLzsgfTsKKwkJODUwMzFC
M0UwQTQ0RUZDNzAwRjk5MkUwIC8qIERhdGFUcmFuc2Zlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODUwMzFCMjgwQTQ0RUZDNzAwRjk5MkUwIC8qIERh
dGFUcmFuc2Zlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTg1MDMxQjQwMEE0NEVGQzcwMEY5OTJFMCAvKiBDbGlwYm9hcmRFdmVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODUwMzFCMkEwQTQ0RUZD
NzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmggKi87IH07CisJCTg1MDMxQjQyMEE0NEVGQzcw
MEY5OTJFMCAvKiBFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gODUwMzFCMkMwQTQ0RUZDNzAwRjk5MkUwIC8qIEV2ZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODUwMzFCNDQwQTQ0RUZDNzAw
Rjk5MkUwIC8qIEtleWJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDg1MDMxQjJFMEE0NEVGQzcwMEY5OTJFMCAvKiBLZXlib2FyZEV2ZW50
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODUw
MzFCNDYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1MDMxQjMwMEE0NEVGQzcwMEY5OTJFMCAvKiBN
b3VzZUV2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJODUwMzFCNDgwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlUmVsYXRlZEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTAzMUIzMjBBNDRF
RkM3MDBGOTkyRTAgLyogTW91c2VSZWxhdGVkRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4NTAzMUI0QTBBNDRFRkM3MDBGOTkyRTAgLyog
TXV0YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODUwMzFCMzQwQTQ0RUZDNzAwRjk5MkUwIC8qIE11dGF0aW9uRXZlbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4NTAzMUI0QzBBNDRF
RkM3MDBGOTkyRTAgLyogUmVnaXN0ZXJlZEV2ZW50TGlzdGVuZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1MDMxQjM2MEE0NEVGQzcwMEY5OTJFMCAv
KiBSZWdpc3RlcmVkRXZlbnRMaXN0ZW5lci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTg1MDMxQjRFMEE0NEVGQzcwMEY5OTJFMCAvKiBVSUV2ZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTAzMUIz
ODBBNDRFRkM3MDBGOTkyRTAgLyogVUlFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTg1MDMxQjRGMEE0NEVGQzcwMEY5OTJFMCAvKiBVSUV2
ZW50V2l0aEtleVN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4NTAzMUIzOTBBNDRFRkM3MDBGOTkyRTAgLyogVUlFdmVudFdpdGhLZXlTdGF0ZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTg1MDMx
QjUxMEE0NEVGQzcwMEY5OTJFMCAvKiBXaGVlbEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTAzMUIzQjBBNDRFRkM3MDBGOTkyRTAgLyogV2hl
ZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTg1MjE3RTAzMEE1RUNENDcwMERCOEQwMCAvKiBYU0xJbXBvcnRSdWxlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTIxN0UwMTBBNUVDRDQ3MDBE
QjhEMDAgLyogWFNMSW1wb3J0UnVsZS5oICovOyB9OworCQk4NTQyQTc5MzBBRTVDOTNGMDBERjU4
REYgLyogSlNTVkdSZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4NTc0RDFGODBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdSZWN0LmggKi87IH07CisJ
CTg1NDJBNzk1MEFFNUM5NDEwMERGNThERiAvKiBKU1NWR1BvaW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTc0RDFGNjBBREU2MTIyMDA0Q0JBMTEg
LyogSlNTVkdQb2ludC5oICovOyB9OworCQk4NTQyQTc5NzBBRTVDOTQzMDBERjU4REYgLyogSlNT
VkdOdW1iZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDg1NzREMUY0MEFERTYxMjIwMDRDQkExMSAvKiBKU1NWR051bWJlci5oICovOyB9OworCQk4NTQy
QTc5OTBBRTVDOTQ0MDBERjU4REYgLyogSlNTVkdFbGVtZW50V3JhcHBlckZhY3RvcnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1NzREMUYyMEFERTYx
MjIwMDRDQkExMSAvKiBKU1NWR0VsZW1lbnRXcmFwcGVyRmFjdG9yeS5oICovOyB9OworCQk4NTRG
RTczMTBBMjI5N0JFMDA1OEQ3QUQgLyogTm9kZUZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODU0RkU3MjcwQTIyOTdCRTAwNThEN0FEIC8qIE5v
ZGVGaWx0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk4NTRGRTczMzBBMjI5N0JFMDA1OEQ3QUQgLyogTm9kZUZpbHRlckNvbmRpdGlvbi5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODU0RkU3MjkwQTIy
OTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXJDb25kaXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4NTRGRTczNTBBMjI5N0JFMDA1OEQ3QUQg
LyogTm9kZUl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4NTRGRTcyQjBBMjI5N0JFMDA1OEQ3QUQgLyogTm9kZUl0ZXJhdG9yLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODU0RkU3MzcwQTIy
OTdCRTAwNThEN0FEIC8qIFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODU0RkU3MkQwQTIyOTdCRTAwNThEN0FEIC8qIFRyYXZlcnNhbC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTg1NEZF
NzM5MEEyMjk3QkUwMDU4RDdBRCAvKiBUcmVlV2Fsa2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NTRGRTcyRjBBMjI5N0JFMDA1OEQ3QUQgLyogVHJl
ZVdhbGtlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTg2MkYxMjlFMThDMTU3NkYwMDVDNTRBRiAvKiBDb3VudGVkVXNlckFjdGl2aXR5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NjJGMTI5RDE4QzE1
NzJDMDA1QzU0QUYgLyogQ291bnRlZFVzZXJBY3Rpdml0eS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTg2NTEyRURGMTU0QTJBRUYwMEE5MDQyNiAv
KiBQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4NjUxMkVEQzE1NEEyQUVGMDBBOTA0MjYgLyogUGVyZm9ybWFu
Y2VSZXNvdXJjZVRpbWluZy5oICovOyB9OworCQk4NjgxNjBENjE4NzY2QTEzMDAyMUU3OUQgLyog
VXNlckFjdGl2aXR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4NjgxNjBEMjE4NzY2OUM0MDAyMUU3OUQgLyogVXNlckFjdGl2aXR5LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODZCRTM0MDExNTA1OENC
MjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg2QkUzM0ZCMTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3Jt
YW5jZUVudHJ5LmggKi87IH07CisJCTg2RDk4MkY3MTI1QzE1NDAwMEFEOUUzRCAvKiBEb2N1bWVu
dEV2ZW50VGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4NkQ5ODJGNjEyNUMxNTQwMDBBRDlFM0QgLyogRG9jdW1lbnRFdmVudFRpbWluZy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTg5ODc4NUY1
MTIyRTFFQUMwMDNBQUJEQSAvKiBKU0ZpbGVSZWFkZXJTeW5jLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTg3ODVGMzEyMkUxRUFDMDAzQUFCREEgLyog
SlNGaWxlUmVhZGVyU3luYy5oICovOyB9OworCQk4QTEyRTM1RDExRkEzMzI4MDAyNTgzNkEgLyog
RG9jdW1lbnRMb2FkVGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4QTEyRTM1QzExRkEzMzI4MDAyNTgzNkEgLyogRG9jdW1lbnRMb2FkVGltaW5n
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOEEz
MDlDOUYxMjM5NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4QTMwOUM5RTEyMzk1MEJF
MDBDQjkyMDQgLyogTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCAqLzsgfTsKKwkJOEE0MTNBRTAx
MjA3QkJBNTAwODIwMTZFIC8qIFNjcmlwdFJ1bm5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOEE0MTNBREUxMjA3QkJBNTAwODIwMTZFIC8qIFNjcmlw
dFJ1bm5lci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCThBN0NDOTZCMTIwNzZENzMwMDFENDU4OCAvKiBQZW5kaW5nU2NyaXB0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4QTdDQzk2QTEyMDc2RDczMDAx
RDQ1ODggLyogUGVuZGluZ1NjcmlwdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCThBODFCRjg1MTFEQ0ZEOTAwMERBMkI5OCAvKiBOZXR3b3JrTG9h
ZE1ldHJpY3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDhBODFCRjg0MTFEQ0ZEOTAwMERBMkI5OCAvKiBOZXR3b3JrTG9hZE1ldHJpY3MuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk4QTg0NEQwNTExRDND
MThFMDAxNDA2NUMgLyogUGVyZm9ybWFuY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDhBODQ0RDAyMTFEM0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5j
ZS5oICovOyB9OworCQk4QTlBNTg3MTExRTg0QzM2MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5h
dmlnYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDhBOUE1ODZGMTFFODRDMzYwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5oICov
OyB9OworCQk4QTlBNTg3NTExRTg0QzgxMDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOEE5QTU4NzMxMUU4NEM4
MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLzsgfTsKKwkJOEE5QTU4ODgxMUU4NEYzNzAw
OEFDRkQxIC8qIEpTUGVyZm9ybWFuY2VUaW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDhBOUE1ODc3MTFFODRDOTgwMDhBQ0ZEMSAvKiBKU1BlcmZv
cm1hbmNlVGltaW5nLmggKi87IH07CisJCThBQjRCQzc3MTI2RkRCNzEwMERFQjcyNyAvKiBJZ25v
cmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOEFCNEJDNzYxMjZGREI3MTAwREVCNzI3IC8qIEln
bm9yZURlc3RydWN0aXZlV3JpdGVDb3VudEluY3JlbWVudGVyLmggKi87IH07CisJCThBRjRFNTU2
MTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDhBRjRFNTUzMTFEQzVBMzYwMDBFRDNE
RSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLzsgfTsKKwkJOEFGNEU1NUMxMURDNUE2MzAw
MEVEM0RFIC8qIFBlcmZvcm1hbmNlVGltaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4QUY0RTU1OTExREM1QTYzMDAwRUQzREUgLyogUGVyZm9ybWFu
Y2VUaW1pbmcuaCAqLzsgfTsKKwkJOEU0Qzk2REQxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hS
ZXNwb25zZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OEU0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXNwb25zZS5oICovOyB9OworCQk4
RUM2Qzk2MzIwMUEyNTE2MDBGQkZBNTMgLyogR2FwTGVuZ3RoLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4RUM2Qzk2MTIwMUEyNTAxMDBGQkZBNTMgLyog
R2FwTGVuZ3RoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOEY2NzU2MUIxMjg4QjE3QjAwNDdBQ0EzIC8qIEV2ZW50UXVldWUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDhGNjc1NjE5MTI4OEIxN0IwMDQ3
QUNBMyAvKiBFdmVudFF1ZXVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJOTAwMTc3NDExMkUwMzQ3ODAwNjQ4NDYyIC8qIE9FU1N0YW5kYXJkRGVy
aXZhdGl2ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkwMDE3NzNFMTJFMDM0NzgwMDY0ODQ2MiAvKiBPRVNTdGFuZGFyZERlcml2YXRpdmVzLmggKi87
IH07CisJCTkwMDE3ODgxMTJFMDM3MDcwMDY0ODQ2MiAvKiBKU09FU1N0YW5kYXJkRGVyaXZhdGl2
ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkwMDE3
ODdGMTJFMDM3MDcwMDY0ODQ2MiAvKiBKU09FU1N0YW5kYXJkRGVyaXZhdGl2ZXMuaCAqLzsgfTsK
KwkJOTAxNkVBNEQyNDU0RDgxMzAwMjFEOUQxIC8qIElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb24u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkwMTZFQTRD
MjQ1NEQ4MTMwMDIxRDlEMSAvKiBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTBFMzUxQzIyNDdFNDZF
NDAwRkJGMjRGIC8qIElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MEUzNTFCRDI0N0UzRDQ4MDBG
QkYyNEYgLyogSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MTA5RTlDODIyMkNBQkNBMDBC
QjYyNjQgLyogSW5zcGVjdG9yQXVkaXRSZXNvdXJjZXNPYmplY3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkxMDlFOUM1MjIyQ0FCQzgwMEJCNjI2NCAv
KiBJbnNwZWN0b3JBdWRpdFJlc291cmNlc09iamVjdC5oICovOyB9OworCQk5MTA5RTlDODIyMkNB
QkNBMDBCQjYyNjUgLyogSlNJbnNwZWN0b3JBdWRpdFJlc291cmNlc09iamVjdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTEwOUU5QzUyMjJDQUJDODAw
QkI2MjY1IC8qIEpTSW5zcGVjdG9yQXVkaXRSZXNvdXJjZXNPYmplY3QuaCAqLzsgfTsKKwkJOTEy
NzhENUUyMURFREFENjAwQjU3MTg0IC8qIFBhZ2VBdWRpdEFnZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MTI3OEQ1QzIxREVEQUQ1MDBCNTcxODQg
LyogUGFnZUF1ZGl0QWdlbnQuaCAqLzsgfTsKKwkJOTEyNzhENjIyMURFREFGMDAwQjU3MTg0IC8q
IFdvcmtlckF1ZGl0QWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkxMjc4RDYwMjFERURBRjAwMEI1NzE4NCAvKiBXb3JrZXJBdWRpdEFnZW50Lmgg
Ki87IH07CisJCTkxM0ZFNTlDMjM2Mjc5OUEwMEY5NDQ2QSAvKiBJbnNwZWN0b3JBbmltYXRpb25B
Z2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTEz
RkU1OUEyMzYyNzk5OTAwRjk0NDZBIC8qIEluc3BlY3RvckFuaW1hdGlvbkFnZW50LmggKi87IH07
CisJCTkxNzVDRTVDMjFFMjgxRUQwMERGMkMyNyAvKiBJbnNwZWN0b3JBdWRpdERPTU9iamVjdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTE3NUNFNTgy
MUUyODFFQzAwREYyQzI3IC8qIEluc3BlY3RvckF1ZGl0RE9NT2JqZWN0LmggKi87IH07CisJCTkx
NzVDRTVDMjFFMjgxRUQwMERGMkMyOCAvKiBKU0luc3BlY3RvckF1ZGl0RE9NT2JqZWN0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MTc1Q0U1ODIxRTI4
MUVDMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdERPTU9iamVjdC5oICovOyB9OworCQk5MTc1
Q0U1RTIxRTI4MUVEMDBERjJDMjcgLyogSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MTc1Q0U1
QTIxRTI4MUVEMDBERjJDMjcgLyogSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0Lmgg
Ki87IH07CisJCTkxNzVDRTVFMjFFMjgxRUQwMERGMkMyOCAvKiBKU0luc3BlY3RvckF1ZGl0QWNj
ZXNzaWJpbGl0eU9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTE3NUNFNUEyMUUyODFFRDAwREYyQzI4IC8qIEpTSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5T2JqZWN0LmggKi87IH07CisJCTkxQjhGMEI1MjE5NTNENjUwMDBDMkIwMCAvKiBD
ZXJ0aWZpY2F0ZVN1bW1hcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkxQjhGMEIzMjE5NTNENjUwMDBDMkIwMCAvKiBDZXJ0aWZpY2F0ZVN1bW1hcnku
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MUI5
NTIyNDFGNThBNThGMDA5MzFEQzIgLyogUmVjb3JkaW5nU3dpenpsZVR5cGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkxQjk1MjIyMUY1OEE1ODAwMDkz
MURDMiAvKiBSZWNvcmRpbmdTd2l6emxlVHlwZS5oICovOyB9OworCQk5MUM5RjJGOTFBRTNCRUIw
MDA5NUI2MUMgLyogQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkxQzlGMkY4MUFFM0JFMjQwMDk1QjYxQyAvKiBB
WFRleHRTdGF0ZUNoYW5nZUludGVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTkxRTBEREMxMjMwQjQxRTUwMDE5RTFFMyAvKiBQYWdlRE9NRGVi
dWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTFFMEREQkYyMzBCNDFFNTAwMTlFMUUzIC8qIFBhZ2VET01EZWJ1Z2dlckFnZW50LmggKi87
IH07CisJCTkxRTBEREM0MjMwQjQxRjEwMDE5RTFFMyAvKiBXb3JrZXJET01EZWJ1Z2dlckFnZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MUUwRERD
MjIzMEI0MUYwMDAxOUUxRTMgLyogV29ya2VyRE9NRGVidWdnZXJBZ2VudC5oICovOyB9OworCQk5
MzAyQjBCRjBENzlGODJDMDBDN0VFODMgLyogUGFnZUdyb3VwLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzAyQjBCRTBENzlGODJDMDBDN0VFODMgLyog
UGFnZUdyb3VwLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOTMwNUIyNEQwOThGMUI2QjAwQzI4ODU1IC8qIFRpbWVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA1QjI0QzA5OEYxQjZCMDBDMjg4NTUg
LyogVGltZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk5MzA3RjFEODBBRjJENTkwMDBEQkEzMUEgLyogSGl0VGVzdFJlc3VsdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMwN0YxRDYwQUYyRDU5MDAw
REJBMzFBIC8qIEhpdFRlc3RSZXN1bHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5MzA4NDEzNDFDRERCMTU1MDBCMDk1OEMgLyogSlNET01Db252
ZXJ0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4
NDEzMzFDRERCMTU1MDBCMDk1OEMgLyogSlNET01Db252ZXJ0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMwODVEQjcyNkUwMkFGRTAwMEVDNkE3
IC8qIFN0b3JhZ2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzA4NURCNTI2RTAwNkQwMDAwRUM2QTcgLyogU3RvcmFnZU1hbmFnZXIuaCAq
LzsgfTsKKwkJOTMwODVEQkQyNkUxOEVEOTAwMEVDNkE3IC8qIFN0b3JhZ2VDb25uZWN0aW9uLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURCOTI2
RTE0RkJBMDAwRUM2QTcgLyogU3RvcmFnZUNvbm5lY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzA4NURCRTI2RTE4RUU0MDAwRUM2QTcg
LyogU3RvcmFnZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzA4NURCODI2RTE0RkJBMDAwRUM2QTcgLyogU3RvcmFnZVByb3ZpZGVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMwODVE
RjgyNkU4MjJDNzAwMEVDNkE3IC8qIER1bW15U3RvcmFnZVByb3ZpZGVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzA4NURGNjI2RTgyMkM2MDAwRUM2
QTcgLyogRHVtbXlTdG9yYWdlUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk5MzA5MDg5MTBBRjdFREU0MDA4MURGMDEgLyogSGl0VGVz
dFJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzMDkwODkwMEFGN0VERTQwMDgxREYwMSAvKiBIaXRUZXN0UmVxdWVzdC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzMEFBQzlBMjUwRUI4NDkw
MDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUM5ODI1MEVCODE3MDAxM0RBOUYgLyogQ1NTQ29uZGl0
aW9uUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTkzMEFBQzlGMjUwRUQ0MDkwMDEzREE5RiAvKiBKU0NTU0NvbmRpdGlvblJ1bGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMEFBQzlEMjUwRUQ0
MDkwMDEzREE5RiAvKiBKU0NTU0NvbmRpdGlvblJ1bGUuaCAqLzsgfTsKKwkJOTMwQUFDQTIyNTBF
RDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3JvdXBpbmdSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzBBQUNBMDI1MEVENDExMDAxM0RBOUYgLyogSlND
U1NHcm91cGluZ1J1bGUuaCAqLzsgfTsKKwkJOTMxNTNCREExNDE4MUY3QTAwRkNGNUJFIC8qIG1p
c3NpbmdJbWFnZUAyeC5wbmcgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMTUzQkQ5MTQxODFGN0EwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2VAMngucG5n
ICovOyB9OworCQk5MzE1M0JEQzE0MTk1OUJDMDBGQ0Y1QkUgLyogdGV4dEFyZWFSZXNpemVDb3Ju
ZXIucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
MzE1M0JEQjE0MTk1OUJCMDBGQ0Y1QkUgLyogdGV4dEFyZWFSZXNpemVDb3JuZXIucG5nICovOyB9
OworCQk5MzE1M0JFMjE0MTk1QTU3MDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlLnBuZyBpbiBSZXNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxNTNCRTExNDE5NUE1
NzAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZS5wbmcgKi87IH07CisJCTkzMTZEREZCMjQwQzY0QjQw
MDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTMxNkRERjgyNDBDNjRCMzAwOTM0MEFBIC8qIFNpbXBsZVJhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMxNkRF
MDAyNDBDNjRGOTAwOTM0MEFBIC8qIEJvdW5kYXJ5UG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMTZEREZFMjQwQzY0RjgwMDkzNDBBQSAvKiBC
b3VuZGFyeVBvaW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJOTMxQkNDNjExMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0ZW5l
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQkND
NjAxMTI0REZDQjAwQkU3MEREIC8qIE1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzMUNCRDBEMTYxQTQ0RTkw
MEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMUNCRDA3MTYxQTQ0RTkwMEU0Qzg3NCAvKiBTY3JvbGxp
bmdTdGF0ZU5vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk5MzFDQkQwRjE2MUE0NEU5MDBFNEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVTY3JvbGxp
bmdOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
MzFDQkQwOTE2MUE0NEU5MDBFNEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMxQ0JE
MTExNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlVHJlZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQ0JEMEIxNjFBNDRFOTAwRTRDODc0
IC8qIFNjcm9sbGluZ1N0YXRlVHJlZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTkzMUQ3MkY2MTVGRTY5NTMwMEM0QzA3RSAvKiBMYXlvdXRNaWxl
c3RvbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
MUQ3MkY1MTVGRTY5NTMwMEM0QzA3RSAvKiBMYXlvdXRNaWxlc3RvbmUuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzIzQjA3MDIzMDYxRjk3MDA5
MDFDOEIgLyogSURCU2VyaWFsaXphdGlvbkNvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMjNCMDZGMjMwNjFFOUMwMDkwMUM4QiAvKiBJREJT
ZXJpYWxpemF0aW9uQ29udGV4dC5oICovOyB9OworCQk5MzJDQzBCNzFERkZEMTU4MDA0QzBGOUYg
LyogTWVkaWFUcmFja0NvbnN0cmFpbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDQzBCNjFERkZEMTU4MDA0QzBGOUYgLyogTWVkaWFUcmFja0Nv
bnN0cmFpbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOTMyQ0MwRDUxREZGRDY2NzAwNEMwRjlGIC8qIEpTTWVkaWFUcmFja0NvbnN0cmFpbnRz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzJDQzBE
MTFERkZENjY3MDA0QzBGOUYgLyogSlNNZWRpYVRyYWNrQ29uc3RyYWludHMuaCAqLzsgfTsKKwkJ
OTMzMDlERDcwOTlFNjQ5MjAwNTZFNTgxIC8qIEFwcGVuZE5vZGVDb21tYW5kLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ4ODA5OUU2NDkxMDA1
NkU1ODEgLyogQXBwZW5kTm9kZUNvbW1hbmQuaCAqLzsgfTsKKwkJOTMzMDlERDkwOTlFNjQ5MjAw
NTZFNTgxIC8qIEFwcGx5U3R5bGVDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ4QTA5OUU2NDkxMDA1NkU1ODEgLyogQXBwbHlTdHls
ZUNvbW1hbmQuaCAqLzsgfTsKKwkJOTMzMDlEREIwOTlFNjQ5MjAwNTZFNTgxIC8qIEJyZWFrQmxv
Y2txdW90ZUNvbW1hbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzMzA5RDhDMDk5RTY0OTEwMDU2RTU4MSAvKiBCcmVha0Jsb2NrcXVvdGVDb21tYW5k
LmggKi87IH07CisJCTkzMzA5REREMDk5RTY0OTIwMDU2RTU4MSAvKiBDb21wb3NpdGVFZGl0Q29t
bWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMz
MDlEOEUwOTlFNjQ5MTAwNTZFNTgxIC8qIENvbXBvc2l0ZUVkaXRDb21tYW5kLmggKi87IH07CisJ
CTkzMzA5RERGMDk5RTY0OTIwMDU2RTU4MSAvKiBEZWxldGVGcm9tVGV4dE5vZGVDb21tYW5kLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ5MDA5
OUU2NDkxMDA1NkU1ODEgLyogRGVsZXRlRnJvbVRleHROb2RlQ29tbWFuZC5oICovOyB9OworCQk5
MzMwOURFMTA5OUU2NDkyMDA1NkU1ODEgLyogRGVsZXRlU2VsZWN0aW9uQ29tbWFuZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEOTIwOTlFNjQ5
MTAwNTZFNTgxIC8qIERlbGV0ZVNlbGVjdGlvbkNvbW1hbmQuaCAqLzsgfTsKKwkJOTMzMDlERTIw
OTlFNjQ5MjAwNTZFNTgxIC8qIEVkaXRBY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMzA5RDkzMDk5RTY0OTEwMDU2RTU4MSAvKiBFZGl0QWN0
aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
OTMzMDlERTQwOTlFNjQ5MjAwNTZFNTgxIC8qIEVkaXRDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ5NTA5OUU2NDkxMDA1NkU1ODEg
LyogRWRpdENvbW1hbmQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5MzMwOURFNjA5OUU2NDkyMDA1NkU1ODEgLyogSFRNTEludGVyY2hhbmdlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ5NzA5
OUU2NDkxMDA1NkU1ODEgLyogSFRNTEludGVyY2hhbmdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMzMDlERTgwOTlFNjQ5MjAwNTZFNTgxIC8q
IEVkaXRpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzMzA5RDk5MDk5RTY0OTEwMDU2RTU4MSAvKiBFZGl0aW5nLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMzMDlERUEwOTlFNjQ5MjAwNTZFNTgx
IC8qIEluc2VydEludG9UZXh0Tm9kZUNvbW1hbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMzA5RDlCMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnRJ
bnRvVGV4dE5vZGVDb21tYW5kLmggKi87IH07CisJCTkzMzA5REVDMDk5RTY0OTIwMDU2RTU4MSAv
KiBJbnNlcnRMaW5lQnJlYWtDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzMwOUQ5RDA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0TGluZUJy
ZWFrQ29tbWFuZC5oICovOyB9OworCQk5MzMwOURFRTA5OUU2NDkyMDA1NkU1ODEgLyogSW5zZXJ0
Tm9kZUJlZm9yZUNvbW1hbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMzA5RDlGMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnROb2RlQmVmb3JlQ29t
bWFuZC5oICovOyB9OworCQk5MzMwOURGMDA5OUU2NDkyMDA1NkU1ODEgLyogSW5zZXJ0UGFyYWdy
YXBoU2VwYXJhdG9yQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTMzMDlEQTEwOTlFNjQ5MTAwNTZFNTgxIC8qIEluc2VydFBhcmFncmFwaFNl
cGFyYXRvckNvbW1hbmQuaCAqLzsgfTsKKwkJOTMzMDlERjIwOTlFNjQ5MjAwNTZFNTgxIC8qIElu
c2VydFRleHRDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5MzMwOURBMzA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0VGV4dENvbW1hbmQuaCAq
LzsgfTsKKwkJOTMzMDlERjgwOTlFNjQ5MjAwNTZFNTgxIC8qIG1hcmt1cC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQTkwOTlFNjQ5MTAwNTZF
NTgxIC8qIG1hcmt1cC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTkzMzA5REZBMDk5RTY0OTIwMDU2RTU4MSAvKiBNZXJnZUlkZW50aWNhbEVsZW1l
bnRzQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTMzMDlEQUIwOTlFNjQ5MTAwNTZFNTgxIC8qIE1lcmdlSWRlbnRpY2FsRWxlbWVudHNDb21t
YW5kLmggKi87IH07CisJCTkzMzA5REZDMDk5RTY0OTIwMDU2RTU4MSAvKiBNb3ZlU2VsZWN0aW9u
Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMzMDlEQUQwOTlFNjQ5MTAwNTZFNTgxIC8qIE1vdmVTZWxlY3Rpb25Db21tYW5kLmggKi87IH07
CisJCTkzMzA5RTA1MDk5RTY0OTIwMDU2RTU4MSAvKiBSZW1vdmVOb2RlQ29tbWFuZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQjYwOTlFNjQ5
MTAwNTZFNTgxIC8qIFJlbW92ZU5vZGVDb21tYW5kLmggKi87IH07CisJCTkzMzA5RTA3MDk5RTY0
OTIwMDU2RTU4MSAvKiBSZW1vdmVOb2RlUHJlc2VydmluZ0NoaWxkcmVuQ29tbWFuZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQjgwOTlFNjQ5
MTAwNTZFNTgxIC8qIFJlbW92ZU5vZGVQcmVzZXJ2aW5nQ2hpbGRyZW5Db21tYW5kLmggKi87IH07
CisJCTkzMzA5RTBBMDk5RTY0OTIwMDU2RTU4MSAvKiBSZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQkIw
OTlFNjQ5MTAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggKi87IH07CisJCTkz
MzA5RTBFMDk5RTY0OTIwMDU2RTU4MSAvKiBGcmFtZVNlbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQkYwOTlFNjQ5MTAwNTZFNTgx
IC8qIEZyYW1lU2VsZWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJOTMzMDlFMTAwOTlFNjQ5MjAwNTZFNTgxIC8qIFNldE5vZGVBdHRyaWJ1
dGVDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5MzMwOURDMTA5OUU2NDkxMDA1NkU1ODEgLyogU2V0Tm9kZUF0dHJpYnV0ZUNvbW1hbmQuaCAq
LzsgfTsKKwkJOTMzMDlFMTIwOTlFNjQ5MjAwNTZFNTgxIC8qIFNwbGl0RWxlbWVudENvbW1hbmQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzMzA5REMz
MDk5RTY0OTEwMDU2RTU4MSAvKiBTcGxpdEVsZW1lbnRDb21tYW5kLmggKi87IH07CisJCTkzMzA5
RTE0MDk5RTY0OTIwMDU2RTU4MSAvKiBTcGxpdFRleHROb2RlQ29tbWFuZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlEQzUwOTlFNjQ5MTAwNTZF
NTgxIC8qIFNwbGl0VGV4dE5vZGVDb21tYW5kLmggKi87IH07CisJCTkzMzA5RTE2MDk5RTY0OTIw
MDU2RTU4MSAvKiBTcGxpdFRleHROb2RlQ29udGFpbmluZ0VsZW1lbnRDb21tYW5kLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOURDNzA5OUU2NDkx
MDA1NkU1ODEgLyogU3BsaXRUZXh0Tm9kZUNvbnRhaW5pbmdFbGVtZW50Q29tbWFuZC5oICovOyB9
OworCQk5MzMwOUUxNzA5OUU2NDkyMDA1NkU1ODEgLyogVGV4dEFmZmluaXR5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOURDODA5OUU2NDkxMDA1
NkU1ODEgLyogVGV4dEFmZmluaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTMzMDlFMTgwOTlFNjQ5MjAwNTZFNTgxIC8qIFRleHRHcmFudWxh
cml0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMz
MDlEQzkwOTlFNjQ5MTAwNTZFNTgxIC8qIFRleHRHcmFudWxhcml0eS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzMzA5RTFBMDk5RTY0OTIwMDU2
RTU4MSAvKiBUeXBpbmdDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzMwOURDQjA5OUU2NDkxMDA1NkU1ODEgLyogVHlwaW5nQ29tbWFuZC5o
ICovOyB9OworCQk5MzMwOUUxQzA5OUU2NDkyMDA1NkU1ODEgLyogVGV4dEl0ZXJhdG9yLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOURDRDA5OUU2
NDkxMDA1NkU1ODEgLyogVGV4dEl0ZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTMzMDlFMUUwOTlFNjQ5MjAwNTZFNTgxIC8qIFZpc2li
bGVVbml0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMzMDlEQ0YwOTlFNjQ5MTAwNTZFNTgxIC8qIFZpc2libGVVbml0cy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzMzA5RTIwMDk5RTY0OTIwMDU2
RTU4MSAvKiBWaXNpYmxlUG9zaXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDkzMzA5REQxMDk5RTY0OTEwMDU2RTU4MSAvKiBWaXNpYmxlUG9zaXRp
b24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5
MzMwOUUyNDA5OUU2NDkyMDA1NkU1ODEgLyogV3JhcENvbnRlbnRzSW5EdW1teVNwYW5Db21tYW5k
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzMwOURE
NTA5OUU2NDkxMDA1NkU1ODEgLyogV3JhcENvbnRlbnRzSW5EdW1teVNwYW5Db21tYW5kLmggKi87
IH07CisJCTkzMzA5RUEzMDk5RUI3OEMwMDU2RTU4MSAvKiBTaGFyZWRUaW1lci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzMDlFQTAwOTlFQjc4QzAw
NTZFNTgxIC8qIFNoYXJlZFRpbWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTMzQTE0MzAwQjdEMTg4NjAwQTUzRkZEIC8qIFRleHRFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzQTE0MkQw
QjdEMTg4NjAwQTUzRkZEIC8qIFRleHRFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzM0ExNEI5MEI3RDFENTIwMEE1M0ZGRCAvKiBKU1Rl
eHRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTMzQTE0QjcwQjdEMUQ1MjAwQTUzRkZEIC8qIEpTVGV4dEV2ZW50LmggKi87IH07CisJCTkzNDND
QjgyMTJGMjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQzQ0I4MDEyRjI1RTUxMDAzM0M1RUUgLyog
VGV4dENvZGVjVVRGOC5oICovOyB9OworCQk5MzQ0MkM5RTBEMkIzMzVDMDAzMzhGRjkgLyogSFRN
TFRhYmxlUm93c0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzNDQyQzlEMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29s
bGVjdGlvbi5oICovOyB9OworCQk5MzQ0M0U4NTI2RTk5NUJCMDA1ODUzOEYgLyogU3RvcmFnZU1h
bmFnZXJGaWxlU3lzdGVtQWNjZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5MzQ0M0U3RDI2RThBNkJDMDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXJG
aWxlU3lzdGVtQWNjZXNzLmggKi87IH07CisJCTkzNDQzRTg2MjZFOTk1QkQwMDU4NTM4RiAvKiBG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzJDOUJENDI2REQ2MjVBMDA1M0IzREIgLyogRmlsZVN5c3RlbURp
cmVjdG9yeUhhbmRsZS5oICovOyB9OworCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyogRmls
ZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRmlsZUhhbmRs
ZS5oICovOyB9OworCQk5MzQ0M0U4ODI2RTk5NUM0MDA1ODUzOEYgLyogRmlsZVN5c3RlbUhhbmRs
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMyQzlC
REEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLzsgfTsKKwkJOTM0OTA3
RTQxMjVCQkJDODAwN0YyM0EwIC8qIEdyYXBoaWNzQ29udGV4dENHLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5MDdFMzEyNUJCQkM4MDA3RjIzQTAg
LyogR3JhcGhpY3NDb250ZXh0Q0cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk5MzQ5NTBDRDI1Mzk0MzYxMDA5OUYxNzEgLyogU3BlZWNoUmVjb2du
aXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NDk1MEIxMjUzOTQzNDgwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbi5oICovOyB9OworCQk5
MzQ5NTBDRTI1Mzk0MzY1MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5hdGl2ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTUwQkMy
NTM5NDM0RTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUuaCAqLzsgfTsK
KwkJOTM0OTUwRDAyNTM5NDM2QzAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3JDb2Rl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBB
RjI1Mzk0MzQ3MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvckNvZGUuaCAqLzsgfTsK
KwkJOTM0OTUwRDEyNTM5NDM3MDAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3JFdmVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTUw
QzMyNTM5NDM1MjAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3JFdmVudC5oICovOyB9
OworCQk5MzQ5NTBEMjI1Mzk0MzczMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTUwQzky
NTM5NDM1NTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXZlbnQuaCAqLzsgfTsKKwkJOTM0
OTUwRDQyNTM5NDM3QzAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzQ5NTBDMTI1Mzk0MzUx
MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaCAqLzsgfTsKKwkJOTM0OTUwRDYy
NTM5NDM4MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0TGlzdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0OTUwQzQyNTM5NDM1MjAw
OTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0TGlzdC5oICovOyB9OworCQk5MzRDQzEw
QTBFREIyMjM5MDBBNjU4RjIgLyogU2NyaXB0U291cmNlQ29kZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0Q0MxMDkwRURCMjIzOTAwQTY1OEYyIC8q
IFNjcmlwdFNvdXJjZUNvZGUuaCAqLzsgfTsKKwkJOTM0RjcxM0EwRDVBNkYxMDAwMDE4RDY5IC8q
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0RjcxMzkwRDVBNkYxMDAwMDE4RDY5IC8qIEF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlQmFzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzNEY3MTNDMEQ1QTZGMTkwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9y
QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM0
RjcxM0IwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1MDBGMzIxM0ZERTNCRTAw
OTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzUwMEYzMTEzRkRFM0JFMDA5OUVDMjQgLyogTlNTY3Jv
bGxlckltcERldGFpbHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5MzUyMDdCRTA5QkQ0MTBBMDBGMjAzOEQgLyogTG9jYWxpemVkU3RyaW5ncy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1MjA3QkQw
OUJENDEwQTAwRjIwMzhEIC8qIExvY2FsaXplZFN0cmluZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzU1RUY1MTI1M0E0Mjc5MDA2RkY0QTQg
LyogSlNBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzU1RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFjdFJhbmdlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1QzQ3
NjMwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUM0NzYyMDlBQzRD
RTYwMEE2QUFCNCAvKiBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmggKi87IH07CisJCTkz
NUM0NzY4MDlBQzRENDMwMEE2QUFCNCAvKiBQbGF0Zm9ybUtleWJvYXJkRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUM0NzY2MDlBQzRENDMw
MEE2QUFCNCAvKiBQbGF0Zm9ybUtleWJvYXJkRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzVDNDc2OTA5QUM0RDQzMDBBNkFBQjQgLyog
UGxhdGZvcm1Nb3VzZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzVDNDc2NzA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1Nb3VzZUV2ZW50
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM1
QzQ3NkIwOUFDNEQ0RjAwQTZBQUI0IC8qIFBsYXRmb3JtV2hlZWxFdmVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1QzQ3NkEwOUFDNEQ0RjAwQTZB
QUI0IC8qIFBsYXRmb3JtV2hlZWxFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTkzNUM0NzcwMDlBQzRENzMwMEE2QUFCNCAvKiBLZXlFdmVu
dE1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
NUM0NzZFMDlBQzRENzMwMEE2QUFCNCAvKiBLZXlFdmVudE1hYy5tbSAqLzsgfTsKKwkJOTM1QzQ3
NzUwOUFDNEQ4RTAwQTZBQUI0IC8qIEdhcFJlY3RzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzVDNDc3NDA5QUM0RDhEMDBBNkFBQjQgLyogR2FwUmVj
dHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5
MzVGNDU0MzBGN0MzQjVGMDBEN0MxRkIgLyogSlNMYXp5RXZlbnRMaXN0ZW5lci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RjQ1NDEwRjdDM0I1RjAw
RDdDMUZCIC8qIEpTTGF6eUV2ZW50TGlzdGVuZXIuaCAqLzsgfTsKKwkJOTM1RkJDNDUwOUJBMDBC
OTAwRTIzMEIxIC8qIEV2ZW50TGlzdGVuZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBFdmVudExpc3Rl
bmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
OTM1RkJDRjIwOUJBMTQzQjAwRTIzMEIxIC8qIEV4Y2VwdGlvbkNvZGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNUZCQ0YxMDlCQTE0M0IwMEUyMzBC
MSAvKiBFeGNlcHRpb25Db2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJOTM2NTgzQjcyNkFCOTJCNTAwNEU2MUY0IC8qIElEQlRyYW5zYWN0aW9u
RHVyYWJpbGl0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTM2NTgzQjYyNkFCOTE3NDAwNEU2MUY0IC8qIElEQlRyYW5zYWN0aW9uRHVyYWJpbGl0eS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzNzA5
MThEMTQxNkQ4NkIwMDQ3NzMzMyAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5lckAyeC5wbmcgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzNzA5MThDMTQxNkQ4
NkIwMDQ3NzMzMyAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5lckAyeC5wbmcgKi87IH07CisJCTkzNzdB
QkEwMTVERUZFRUYwMDMxRkQwNCAvKiBQYWdpbmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5Mzc3QUI5RjE1REVGRUVGMDAzMUZEMDQgLyogUGFn
aW5hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTkzN0ZGM0Q1MUExMDEyRDYwMDhFQkEzMSAvKiBEaWN0aW9uYXJ5TG9va3VwLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzdGRjNENDFBMTAxMkQ2
MDA4RUJBMzEgLyogRGljdGlvbmFyeUxvb2t1cC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzODBGNDc0MDlBMTFBQjQwMDFGREIzNCAvKiBXaWRn
ZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzODBG
NDcyMDlBMTFBQjQwMDFGREIzNCAvKiBXaWRnZXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5MzgyQUFCNDBEOEMzODYxMDBGMzU3QTYgLyogTm9k
ZVdpdGhJbmRleC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTM4MkFBQjEwRDhDMzg2MTAwRjM1N0E2IC8qIE5vZGVXaXRoSW5kZXguaCAqLzsgfTsKKwkJ
OTM4MkRGNTgxMEE4RDVDOTAwOTI1NjUyIC8qIENvbG9yU3BhY2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzODJERjU3MTBBOEQ1QzkwMDkyNTY1MiAv
KiBDb2xvclNwYWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJOTM4NDMwQjQyNDc1REU0MDAwM0Y5NjE3IC8qIERpY3RhdGlvbkNvbnRleHQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzODQzMEIyMjQ3
NURFM0YwMDNGOTYxNyAvKiBEaWN0YXRpb25Db250ZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM4NDlDMUYyNEJFNDA0QjAwNDQ4RDVBIC8q
IEVtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTM4NDlDMUUyNEJFNDA0QTAwNDQ4RDVBIC8qIEVtcHR5U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC5oICovOyB9OworCQk5Mzg0OUMyMzI0QkVERDg5MDA0NDhENUEg
LyogSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5Mzg0OUMyMTI0QkVERDg4MDA0NDhENUEgLyogSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmggKi87IH07CisJCTkzOENGMjQyMjZCQjcyOEMw
MEMwOTI0MCAvKiBXZWJTb2NrZXQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTdBQUJDRkYxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldC5jcHAg
Ki87IH07CisJCTkzOEU2NUYxMDlGMDk4NDAwMDhBNDhFQyAvKiBKU0hUTUxFbGVtZW50V3JhcHBl
ckZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzOEU2NUYwMDlGMDk4NDAwMDhBNDhFQyAvKiBKU0hUTUxFbGVtZW50V3JhcHBlckZhY3Rvcnku
aCAqLzsgfTsKKwkJOTM4RTY2NjIwOUYwOUI4NzAwOEE0OEVDIC8qIEpTSFRNTENhbnZhc0VsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzOEU2
NjYxMDlGMDlCODcwMDhBNDhFQyAvKiBKU0hUTUxDYW52YXNFbGVtZW50LmggKi87IH07CisJCTkz
OTFBOTkxMTYyNzQ2Q0IwMDI5NzMzMCAvKiBTY3JvbGxpbmdDb29yZGluYXRvck1hYy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM5MUE5OTAxNjI3NDZD
QjAwMjk3MzMwIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLmggKi87IH07CisJCTkzOTFBOTlE
MTYyOUQ3MDAwMDI5NzMzMCAvKiBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM5MUE5OUIxNjI5RDcwMDAw
Mjk3MzMwIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM5MjE0NjkxOEE2RDc5MTAwMEVFNjg4
IC8qIFRleHRJdGVyYXRvckJlaGF2aW9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5MzkyMTQ2ODE4QTZENzkxMDAwRUU2ODggLyogVGV4dEl0ZXJhdG9y
QmVoYXZpb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk5MzkyRjE0MjBBRDE4NUY0MDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM5MkYxNDEwQUQxODVGNDAw
NjkxQkQ0IC8qIFJlbmRlckNvdW50ZXIuaCAqLzsgfTsKKwkJOTM5MkYxNEMwQUQxODYxQjAwNjkx
QkQ0IC8qIENvdW50ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzkyRjE0QjBBRDE4NjFCMDA2OTFCRDQgLyogQ291bnRlck5vZGUuaCAqLzsg
fTsKKwkJOTM5M0U2MDAxNTFBOTlGMjAwMDY2RjA2IC8qIENTU0ltYWdlU2V0VmFsdWUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzOTNFNUZFMTUxQTk5
RjIwMDA2NkYwNiAvKiBDU1NJbWFnZVNldFZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM5ODg1QzQwOEI3RTNEMTAwRTcwN0M0IC8qIEV2
ZW50TmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzOTg4NUMyMDhCN0UzRDEwMEU3MDdDNCAvKiBFdmVudE5hbWVzLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTM5QjAyRUYwRUEyREJDNDAwQzU0
NTcwIC8qIFdpZHRoSXRlcmF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzOUIwMkVEMEVBMkRCQzQwMEM1NDU3MCAvKiBXaWR0aEl0ZXJhdG9yLmgg
Ki87IH07CisJCTkzOUMwRDI3MjU2NEU0N0YwMEIzMjExQiAvKiBTcGVlY2hSZWNvZ25pemVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzlDMEQyMTI1
NjQ4QzM5MDBCMzIxMUIgLyogU3BlZWNoUmVjb2duaXplci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzOUMwRDJCMjU2NEU3RjMwMEIzMjExQiAv
KiBNZWRpYVV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTM5QzBEMjkyNTY0RTdGMjAwQjMyMTFCIC8qIE1lZGlhVXRpbGl0aWVzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNBMDQ4Mjgy
NTQ5NTUwNjAwMEFDNDYyIC8qIFNwZWVjaFJlY29nbml0aW9uUHJvdmlkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQTA0ODI2MjU0OTU1MDAwMDBB
QzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvblByb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNBMDQ4MjkyNTQ5NTUxMTAwMEFDNDYyIC8q
IFNwZWVjaFJlY29nbml0aW9uUmVzdWx0RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTNBMDQ4MUIyNTQ5NTRFNDAwMEFDNDYyIC8qIFNwZWVjaFJl
Y29nbml0aW9uUmVzdWx0RGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzQTA0ODJBMjU0OTU1MTQwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25p
dGlvblJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzQTA0ODFGMjU0OTU0RTYwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvblJlcXVlc3Qu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0Ew
NDgyQjI1NDk1NTE2MDAwQUM0NjIgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNBMDQ4MjEyNTQ5NTRFODAw
MEFDNDYyIC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0EwNDgyQzI1NDk1NTE5MDAwQUM0NjIgLyog
U3BlZWNoUmVjb2duaXRpb25Db25uZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5M0EwNDgxRDI1NDk1NEU1MDAwQUM0NjIgLyogU3BlZWNoUmVj
b2duaXRpb25Db25uZWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJOTNBMDQ4MkQyNTQ5NTUxQjAwMEFDNDYyIC8qIFNwZWVjaFJlY29nbml0
aW9uQ29ubmVjdGlvbkNsaWVudElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQTA0ODIwMjU0OTU0RTYwMDBBQzQ2MiAvKiBTcGVlY2hS
ZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNBMDQ4MkUyNTQ5NTUxRTAwMEFDNDYy
IC8qIFNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNBMDQ4MjQyNTQ5NTRFOTAwMEFDNDYyIC8q
IFNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbkNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzQTgwNjE1MUUwM0I1MUMwMDhBMUYyNiAv
KiBEb3VibGVSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTNBODA2MTExRTAzQjUxQzAwOEExRjI2IC8qIERvdWJsZVJhbmdlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNBODA2MTcxRTAzQjUx
QzAwOEExRjI2IC8qIExvbmdSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTNBODA2MTMxRTAzQjUxQzAwOEExRjI2IC8qIExvbmdSYW5nZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzQTgwNjFF
MUUwM0I1ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0E4MDYxQTFFMDNCNTg1MDA4QTFGMjYgLyogSlNE
b3VibGVSYW5nZS5oICovOyB9OworCQk5M0E4MDYyMDFFMDNCNTg1MDA4QTFGMjYgLyogSlNMb25n
UmFuZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
QTgwNjFDMUUwM0I1ODUwMDhBMUYyNiAvKiBKU0xvbmdSYW5nZS5oICovOyB9OworCQk5M0IwQTY1
MzI2Q0REMTQxMDBBQTIxRTQgLyogTmF2aWdhdG9yUGVybWlzc2lvbnMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQjBBNjRBMjZDREQxM0UwMEFBMjFF
NCAvKiBOYXZpZ2F0b3JQZXJtaXNzaW9ucy5oICovOyB9OworCQk5M0IwQTY1NDI2Q0REMTQxMDBB
QTIxRTQgLyogUGVybWlzc2lvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzQjBBNjRCMjZDREQxM0UwMEFBMjFFNCAvKiBQZXJtaXNzaW9ucy5oICov
OyB9OworCQk5M0IwQTY1NjI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvblN0YXR1cy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCMEE2NEQyNkNE
RDEzRjAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0dXMuaCAqLzsgfTsKKwkJOTNCMEE2NTcyNkNE
RDE0MTAwQUEyMUU0IC8qIFBlcm1pc3Npb25EZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0IwQTY0RTI2Q0REMTNGMDBBQTIxRTQgLyog
UGVybWlzc2lvbkRlc2NyaXB0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk5M0IwQTY1OTI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvbk5h
bWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQjBB
NjUwMjZDREQxNDAwMEFBMjFFNCAvKiBQZXJtaXNzaW9uTmFtZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzQjBBNjVCMjZDREQxNDEwMEFBMjFF
NCAvKiBQZXJtaXNzaW9uU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzQjBBNjUyMjZDREQxNDEwMEFBMjFFNCAvKiBQZXJtaXNzaW9uU3RhdGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0Iw
QTY3MDI2RDRCNTM5MDBBQTIxRTQgLyogUGVybWlzc2lvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQjBBNjY5MjZENDRCN0YwMEFB
MjFFNCAvKiBQZXJtaXNzaW9uQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzQjBBNjdBMjZENkE0RTkwMEFBMjFFNCAvKiBQZXJt
aXNzaW9uT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzQjBBNjZGMjZENEI1MjkwMEFBMjFFNCAvKiBQZXJtaXNzaW9uT2JzZXJ2ZXIuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0IyRDgx
NjBGOTkyMEQyMDA2QUU2QjIgLyogU3VkZGVuVGVybWluYXRpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQjJEODE1MEY5OTIwRDIwMDZBRTZCMiAv
KiBTdWRkZW5UZXJtaW5hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTkzQjM4RUMzMjU4MjFEQjQwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNv
Z25pemVyVGFzay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTNCMzhFQkEyNTgyMTkzQjAwMTk4RTYzIC8qIFdlYlNwZWVjaFJlY29nbml6ZXJUYXNrLmgg
Ki87IH07CisJCTkzQjM4RUM0MjU4MjFEQjcwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNvZ25pemVy
VGFza01vY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDkzQjM4RUJCMjU4MjE5M0QwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNvZ25pemVyVGFza01vY2su
aCAqLzsgfTsKKwkJOTNCNkEwRTYwQjBCQ0E1QzAwRjUwMjdBIC8qIENvbnRleHRNZW51LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0I2QTBFNTBCMEJD
QTVDMDBGNTAyN0EgLyogQ29udGV4dE1lbnUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk5M0I3MEQ2NDA5RUIwQzdDMDA5RDg0NjggLyogSlNET01C
aW5kaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
M0I3MEQ0ODA5RUIwQzdDMDA5RDg0NjggLyogSlNET01CaW5kaW5nLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNCNzBENkEwOUVCMEM3QzAwOUQ4
NDY4IC8qIEpTRXZlbnRMaXN0ZW5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTNCNzBENEUwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTRXZlbnRMaXN0ZW5l
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkz
QjcwRDZDMDlFQjBDN0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQjcwRDUwMDlFQjBD
N0MwMDlEODQ2OCAvKiBKU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0I3MEQ3MDA5RUIwQzdDMDA5RDg0
NjggLyogU2NyaXB0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTNCNzBENTQwOUVCMEM3QzAwOUQ4NDY4IC8qIFNjcmlwdENvbnRyb2xs
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5
M0I3N0EzODBBREQ3OTI1MDBFQTRCODEgLyogRnJhbWVMb2FkZXJUeXBlcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNCNzdBMzcwQURENzkyNTAwRUE0
QjgxIC8qIEZyYW1lTG9hZGVyVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5M0MwOUE1MzBCMDY0REIzMDA1QUJENEQgLyogRXZlbnRIYW5k
bGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0Mw
OUE1MjBCMDY0REIzMDA1QUJENEQgLyogRXZlbnRIYW5kbGVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNDMDlDODYwQjA2NTdBQTAwNUFCRDRE
IC8qIFNjcm9sbFR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5M0MwOUM4NTBCMDY1N0FBMDA1QUJENEQgLyogU2Nyb2xsVHlwZXMuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0MzOEJGRjE2NDQ3
M0M3MDAwOTFFQjIgLyogU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzM4QkZEMTY0NDczQzcwMDA5MUVCMiAv
KiBTY3JvbGxpbmdTdGF0ZUZpeGVkTm9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTkzQzQ0MjAwMEY4MTNBRTEwMEMxQTYzNCAvKiBDb2xsZWN0
aW9uVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTNDNDQxRkYwRjgxM0FFMTAwQzFBNjM0IC8qIENvbGxlY3Rpb25UeXBlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNDNEE0MTUxNjI5REY1QTAw
QzNFQjZFIC8qIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzRBNDEzMTYyOURGNUEwMEMz
RUI2RSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNDNEY2RUIxMTA4RjlBNTAw
OTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxiYXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzQzRGNkU5MTEwOEY5QTUwMDk5RDBEQiAvKiBBY2Nl
c3NpYmlsaXR5U2Nyb2xsYmFyLmggKi87IH07CisJCTkzQ0NGMDI3MEFGNkM1MjkwMDAxOEU4OSAv
KiBOYXZpZ2F0aW9uQWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5M0NDRjAyNjBBRjZDNTI5MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlvbi5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRDA1
MDMyMjUzQTE0OUEwMDJBMzA3MiAvKiBBYnN0cmFjdFJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0QwNTAyRTI1M0ExNDhBMDAyQTMwNzIgLyog
QWJzdHJhY3RSYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTkzRDE5NjMxMUQ2Q0FCNzYwMEZDN0U0NyAvKiBFeGNlcHRpb25Pci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNEMTk2MzAxRDZDQUI3
NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNEMTk2MzMxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2VwdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNEMTk2
MzIxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRDQzNzlGMUQ1N0IxNTMwMEFCODVFQSAvKiBK
U0V4ZWNTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOEY5MzREODMxMTg5RjFFRTAwNTA4RDVEIC8qIEpTRXhlY1N0YXRlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNENDM3QTAxRDU3QjE5QTAw
QUI4NUVBIC8qIEN1c3RvbUVsZW1lbnRSZWFjdGlvblF1ZXVlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjU2QzlBODFDODkzMTI4MDBDNDU2REYgLyog
Q3VzdG9tRWxlbWVudFJlYWN0aW9uUXVldWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk5M0Q0MzdBMjFENTdCM0ZFMDBBQjg1RUEgLyogVVJMRGVj
b21wb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNjU2QjlEQ0ExODlERTEwMDAwQkI4NDJDIC8qIFVSTERlY29tcG9zaXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0Q0MzdBMzFENTdC
N0UyMDBBQjg1RUEgLyogSlNNZWRpYUxpc3RDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFENzI2RkU3MTZEOUYyMDQwMDNBNEU2RCAvKiBKU01l
ZGlhTGlzdEN1c3RvbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTkzRDZCNzcwMjU0Qjk4QTAwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlvblJl
cXVlc3RJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5M0Q2Qjc2RjI1NEI5MDJEMDA1OEREM0EgLyogU3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0SW5m
by5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkz
RDZCNzcxMjU0QkFCNDUwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlvblVwZGF0ZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNENkI3NkQyNTRCOEUx
QjAwNThERDNBIC8qIFNwZWVjaFJlY29nbml0aW9uVXBkYXRlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNENkI3QTgyNTUxRDQxRjAwNThERDNB
IC8qIER1bW15U3BlZWNoUmVjb2duaXRpb25Qcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNENkI3QTYyNTUxRDNFRDAwNThERDNBIC8qIER1
bW15U3BlZWNoUmVjb2duaXRpb25Qcm92aWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRDlENTNDMERBMjdFMTgwMDc3MjE2QyAvKiBSYW5n
ZUJvdW5kYXJ5UG9pbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDkzRDlENTNCMERBMjdFMTgwMDc3MjE2QyAvKiBSYW5nZUJvdW5kYXJ5UG9pbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5M0UyNDFG
RjBCMkI0RTQwMDBDNzMyQTEgLyogSFRNTEZyYW1lT3duZXJFbGVtZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0UyNDFGRTBCMkI0RTQwMDBDNzMy
QTEgLyogSFRNTEZyYW1lT3duZXJFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQ
YXJzZXJJZGlvbXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDkzRTJBMzA1MTIzRTlEQzAwMDlGRTEyQSAvKiBIVE1MUGFyc2VySWRpb21zLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNFNUIyNjUyNDU1
RTk2RjAwNUM1MkQwIC8qIEF0dHJpYnV0ZWRTdHJpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRTVCMjYzMjQ1NUU5NkYwMDVDNTJEMCAvKiBBdHRy
aWJ1dGVkU3RyaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJOTNGMTk4RTUwODI0NUU1OTAwMUU5QUJDIC8qIEhUTUxEb2N1bWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjUyM0QyM0MwMkRFNDM5
NjAxODYzNUNBIC8qIEhUTUxEb2N1bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTkzRjE5OEU2MDgyNDVFNTkwMDFFOUFCQyAvKiBIVE1MRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjUy
M0QyM0YwMkRFNDM5NjAxODYzNUNBIC8qIEhUTUxFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNGMTk4RjYwODI0NUU1OTAwMUU5QUJD
IC8qIFRleHRSZXNvdXJjZURlY29kZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEY1MjNEMjc5MDJERTQzRDcwMTg2MzVDQSAvKiBUZXh0UmVzb3VyY2VE
ZWNvZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJOTNGMTk5MTgwODI0NUU1OTAwMUU5QUJDIC8qIFJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTIzRDMwNDAyREU0NDc2MDE4NjM1Q0EgLyog
UmFuZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk5M0YxOTkyRjA4MjQ1RTU5MDAxRTlBQkMgLyogQ3Vyc29yLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTg3ODY4NDAyREUzQjg2MDFFQTQxMjIgLyog
Q3Vyc29yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJOTNGMTk5NTAwODI0NUU1OTAwMUU5QUJDIC8qIENhY2hlUG9saWN5LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTg3ODY0OTAyREUzQTlBMDFFQTQx
MjIgLyogQ2FjaGVQb2xpY3kuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk5M0YxOTk2MzA4MjQ1RTU5MDAxRTlBQkMgLyogU1NMS2V5R2VuZXJhdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTg3ODY2
MjAyREUzQjExMDFFQTQxMjIgLyogU1NMS2V5R2VuZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNGMTk5OEMwODI0NUU1OTAwMUU5QUJD
IC8qIFJlbmRlclRyZWVBc1RleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzOTU1QTQxMDNENzI5MzIwMDg2MzVDRSAvKiBSZW5kZXJUcmVlQXNUZXh0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNG
MTk5QTgwODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmVGcmFtZVZpZXcuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1ODc4NTRDMDJERTM3NTkwMUVBNDEy
MiAvKiBXZWJDb3JlRnJhbWVWaWV3LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTNGMTk5QjgwODI0NUU1OTAwMUU5QUJDIC8qIFNjcm9sbGJhci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3QjJBRjgw
NDUwODI0MTAwQTgwMDBGIC8qIFNjcm9sbGJhci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRjE5OUJCMDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJD
b3JlS2V5Ym9hcmRVSU1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJFOTgzRDk1MDUyQTJFMEEwMDg5MkQ4NSAvKiBXZWJDb3JlS2V5Ym9hcmRVSU1v
ZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5
M0YxOTlERTA4MjQ1RTU5MDAxRTlBQkMgLyogUG9zaXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFOTFGQzhCMDYxMzM2NjYwMDVFMzc5MCAvKiBQ
b3NpdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTkzRjE5OUU1MDgyNDVFNTkwMDFFOUFCQyAvKiBIVE1MQ2FudmFzRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTFGNkEzRDYwNjYzQkYw
NDAwNEQyOTE5IC8qIEhUTUxDYW52YXNFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTNGMTk5RUMwODI0NUU1OTAwMUU5QUJDIC8qIFhT
TFN0eWxlU2hlZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDMDZGMjRBMDZEMThBN0UwMDRBNkZBMyAvKiBYU0xTdHlsZVNoZWV0LmggKi87IH07CisJ
CTkzRjE5OUVEMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xUUHJvY2Vzc29yLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzA2RjI0QzA2RDE4QTdFMDA0QTZG
QTMgLyogWFNMVFByb2Nlc3Nvci5oICovOyB9OworCQk5M0YxOTlGMDA4MjQ1RTU5MDAxRTlBQkMg
LyogV2ViQ29yZVZpZXcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJFODU1RjdGMDcwMUU4MzUwMDIzOTc2OSAvKiBXZWJDb3JlVmlldy5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRjE5QjA3MDgyNDVF
NTkwMDFFOUFCQyAvKiBXZWJDb3JlVmlldy5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkU4NTYwNTEwNzAxRjkxMTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3
Lm0gKi87IH07CisJCTkzRjE5QjE2MDgyNDVFNTkwMDFFOUFCQyAvKiBKYXZhU2NyaXB0Q29yZS5m
cmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGODIxNjI5OTAyOUY0RkI1MDEwMDAxMzEgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICov
OyB9OworCQk5M0YxOUIxNzA4MjQ1RTU5MDAxRTlBQkMgLyogbGliaWN1Y29yZS5keWxpYiBpbiBG
cmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjFEMzFBMDU1
OENDNUMwMDgyMUJDMCAvKiBsaWJpY3Vjb3JlLmR5bGliICovOyB9OworCQk5M0YxRDVCQjEyRDUz
MkM0MDA4MzJCRUMgLyogV2ViR0xMb3NlQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNGMUQ1QjgxMkQ1MzJDNDAwODMyQkVDIC8qIFdlYkdM
TG9zZUNvbnRleHQuaCAqLzsgfTsKKwkJOTNGMUQ1QzExMkQ1MzM1NjAwODMyQkVDIC8qIEpTV2Vi
R0xMb3NlQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gOTNGMUQ1QkYxMkQ1MzM1NjAwODMyQkVDIC8qIEpTV2ViR0xMb3NlQ29udGV4dC5oICov
OyB9OworCQk5M0YyQ0M5MzI0MjdGQjlDMDA1ODUxRDggLyogQ2hhcmFjdGVyUmFuZ2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjJDQzkxMjQyN0ZC
OUEwMDU4NTFEOCAvKiBDaGFyYWN0ZXJSYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRjZCODFGMjU2N0EwOEMwMEEwODQ4OCAvKiBTcGVl
Y2hSZWNvZ25pdGlvbkNhcHR1cmVTb3VyY2VJbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0Y2QjgxQzI1Njc5RjcwMDBBMDg0ODggLyogU3BlZWNo
UmVjb2duaXRpb25DYXB0dXJlU291cmNlSW1wbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTkzRjZCODIyMjU2N0E2NTYwMEEwODQ4OCAvKiBTcGVl
Y2hSZWNvZ25pdGlvbkNhcHR1cmVTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjZCODFCMjU2NzlGNkYwMEEwODQ4OCAvKiBTcGVlY2hSZWNv
Z25pdGlvbkNhcHR1cmVTb3VyY2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk5M0Y2RjFFRTEyN0Y3MEIxMDA1NUNCMDYgLyogV2ViR0xDb250ZXh0
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
RjZGMUVCMTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5oICovOyB9OworCQk5
M0Y5MjU0MzBGN0VGNUI4MDA3RTM3QzkgLyogUmFkaW9CdXR0b25Hcm91cHMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjkyNTQxMEY3RUY1QjgwMDdF
MzdDOSAvKiBSYWRpb0J1dHRvbkdyb3Vwcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTkzRjlCNkUxMEJBMEZCNzIwMDg1NDA2NCAvKiBKU0NvbW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzRjlC
NkRGMEJBMEZCNzIwMDg1NDA2NCAvKiBKU0NvbW1lbnQuaCAqLzsgfTsKKwkJOTNGOUI3QTEwQkE2
MDMyNjAwODU0MDY0IC8qIEpTQ0RBVEFTZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0Y5Qjc5RjBCQTYwMzI2MDA4NTQwNjQgLyogSlNDREFU
QVNlY3Rpb24uaCAqLzsgfTsKKwkJOTNGREFGQ0EwQjExMzA3NDAwRTI3NDZGIC8qIEVkaXRvcklu
c2VydEFjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTNGREFGQzkwQjExMzA3NDAwRTI3NDZGIC8qIEVkaXRvckluc2VydEFjdGlvbi5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0MTgyNzhCMUQ4
QjI0NDAwMDQ5Mjc2NCAvKiBTdHlsZUNvbG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NDE4Mjc4OTFEOEIyNDIyMDA0OTI3NjQgLyogU3R5bGVDb2xv
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0
MTgyNzhGMUQ4Q0FGOTIwMDQ5Mjc2NCAvKiBDU1NQZW5kaW5nU3Vic3RpdHV0aW9uVmFsdWUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0MTgyNzhEMUQ4
Q0FFOTUwMDQ5Mjc2NCAvKiBDU1NQZW5kaW5nU3Vic3RpdHV0aW9uVmFsdWUuaCAqLzsgfTsKKwkJ
OTQ0NENCRDQxRDg2MEM4QjAwNzNBMDc0IC8qIFNpemVzQ2FsY1BhcnNlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ0NENCQ0YxRDg2MEM3NDAwNzNB
MDc0IC8qIFNpemVzQ2FsY1BhcnNlci5oICovOyB9OworCQk5NDQ0Q0JENjFEODYwQzhCMDA3M0Ew
NzQgLyogU2l6ZXNBdHRyaWJ1dGVQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk0NDRDQkQxMUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0F0dHJp
YnV0ZVBhcnNlci5oICovOyB9OworCQk5NDQ0Q0JEQTFEODg0ODNBMDA3M0EwNzQgLyogQ1NTVmFy
aWFibGVQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk0NDRDQkQ3MUQ4ODQ4MkEwMDczQTA3NCAvKiBDU1NWYXJpYWJsZVBhcnNlci5oICovOyB9
OworCQk5NDQ0Q0JFODFEODg2MUMyMDA3M0EwNzQgLyogQ1NTVmFyaWFibGVEYXRhLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDQ0Q0JERDFEODg2MTU4
MDA3M0EwNzQgLyogQ1NTVmFyaWFibGVEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTQ0NENCRUExRDg4NjFDQTAwNzNBMDc0IC8qIENTU1Zh
cmlhYmxlUmVmZXJlbmNlVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk0NDRDQkRCMUQ4ODYxNTgwMDczQTA3NCAvKiBDU1NWYXJpYWJsZVJlZmVy
ZW5jZVZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOTQ0NzZCREIxREZDQUMwMzAwNjkwRTIzIC8qIENTU0RlZmVycmVkUGFyc2VyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDQ3NkJEOTFERkNB
NEE3MDA2OTBFMjMgLyogQ1NTRGVmZXJyZWRQYXJzZXIuaCAqLzsgfTsKKwkJOTQ2RDM3MkUxRDZD
QjI5NDAwNzcwODRGIC8qIENTU1BhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTQ2RDM3MjkxRDZDQjI4QjAwNzcwODRGIC8qIENTU1BhcnNlci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0NkQz
NzJGMUQ2Q0IyOTQwMDc3MDg0RiAvKiBDU1NQYXJzZXJNb2RlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDZEMzcyQTFENkNCMjhCMDA3NzA4NEYgLyog
Q1NTUGFyc2VyTW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTk0NkQzNzMxMUQ2Q0IyOTQwMDc3MDg0RiAvKiBDU1NQYXJzZXJTZWxlY3Rvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ2RDM3MkMx
RDZDQjI4QjAwNzcwODRGIC8qIENTU1BhcnNlclNlbGVjdG9yLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTQ2RDM3M0ExRDZDREZDMDAwNzcwODRG
IC8qIENTU1Rva2VuaXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTQ2RDM3MzcxRDZDREY5ODAwNzcwODRGIC8qIENTU1Rva2VuaXplci5oICovOyB9
OworCQk5NDZEMzczQzFENkNERkMwMDA3NzA4NEYgLyogQ1NTVG9rZW5pemVySW5wdXRTdHJlYW0u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0NkQzNzM4
MUQ2Q0RGOTgwMDc3MDg0RiAvKiBDU1NUb2tlbml6ZXJJbnB1dFN0cmVhbS5oICovOyB9OworCQk5
NDZEMzc0MDFENkNFM0MyMDA3NzA4NEYgLyogQ1NTUGFyc2VyVG9rZW4uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0NkQzNzNEMUQ2Q0UzMUEwMDc3MDg0
RiAvKiBDU1NQYXJzZXJUb2tlbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTk0NkQzNzQ0MUQ2Q0Y3QjIwMDc3MDg0RiAvKiBDU1NQYXJzZXJJZGlv
bXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0NkQz
NzQzMUQ2Q0Y3ODgwMDc3MDg0RiAvKiBDU1NQYXJzZXJJZGlvbXMuaCAqLzsgfTsKKwkJOTQ2RDM3
NDYxRDZEMDFENDAwNzcwODRGIC8qIENTU1Byb3BlcnR5UGFyc2VyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDZEMzc0MjFENkNGNjMyMDA3NzA4NEYg
LyogQ1NTUHJvcGVydHlQYXJzZXIuaCAqLzsgfTsKKwkJOTQ2RDM3NDYxRDZEMDFENTAwNzcwODRG
IC8qIENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ2RDM3NDIxRDZEMDYzMjAwNzcwODRGIC8qIENTU1By
b3BlcnR5UGFyc2VyV29ya2VyU2FmZS5oICovOyB9OworCQk5NDZEMzc0QTFENkQwNjI4MDA3NzA4
NEYgLyogQ1NTTWFya3VwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5NDZEMzc0ODFENkQwNjBDMDA3NzA4NEYgLyogQ1NTTWFya3VwLmggKi87IH07CisJ
CTk0NkQzNzRFMUQ2RDA4QUEwMDc3MDg0RiAvKiBDU1NQYXJzZXJUb2tlblJhbmdlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDZEMzc0QzFENkQwN0Y1
MDA3NzA4NEYgLyogQ1NTUGFyc2VyVG9rZW5SYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0Nzk0OTI1MUUwMzA4QUYwMDAxOEQ4NSAvKiBE
ZXByZWNhdGVkQ1NTT01WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTQ3OTQ5MjMxRTAyRjkwQjAwMDE4RDg1IC8qIERlcHJlY2F0ZWRDU1NPTVZh
bHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
OTQ3OTQ5MzExRTA0NTlGQTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NQ291bnRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ3OTQ5MTkxRTAy
RjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NQ291bnRlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0Nzk0OTMyMUUwNDU5RkEwMDAx
OEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDc5NDkxQjFFMDJGNkRFMDAwMThEODUg
LyogSlNEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0Nzk0OTM0MUUwNDU5RkEwMDAxOEQ4NSAv
KiBKU0RlcHJlY2F0ZWRDU1NPTVJlY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk0Nzk0OTFEMUUwMkY2REUwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRD
U1NPTVJlY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQk5NDc5NDkzNjFFMDQ1OUZBMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01SR0JDb2xv
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ3OTQ5
MUYxRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NUkdCQ29sb3IuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NDc5NDkzODFFMDQ1
OUZBMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ3OTQ5MjExRTAyRjZERTAwMDE4RDg1IC8q
IEpTRGVwcmVjYXRlZENTU09NVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5NDc5NDkzQTFFMDQ1OUZBMDAwMThEODUgLyogSlNEZXByZWNh
dGVkQ1NTT01WYWx1ZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDk0Nzk0OTJDMUUwMzNCMjgwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTk0Nzk0OTNEMUUwNDYzQjYwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Qu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0Nzk0OTI3
MUUwMzEzMjAwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NDc5NDkzRTFFMDQ2M0JF
MDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NUkdCQ29sb3IuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0Nzk0OTI5MUUwMzJENTgwMDAxOEQ4NSAvKiBE
ZXByZWNhdGVkQ1NTT01SR0JDb2xvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTk0Nzk0OTNGMUUwNDYzQzYwMDAxOEQ4NSAvKiBEZXByZWNhdGVk
Q1NTT01SZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5NDc5NDkyODFFMDMyQUU5MDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NUmVjdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk0Nzk0OTQwMUUw
NDYzQ0UwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTQ3OTQ5MjYxRTAzMTMyMDAw
MDE4RDg1IC8qIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTQ3OTQ5NDExRTA0NjNENDAwMDE4
RDg1IC8qIERlcHJlY2F0ZWRDU1NPTUNvdW50ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0Nzk0OTJBMUUwMzJFREIwMDAxOEQ4NSAvKiBEZXByZWNh
dGVkQ1NTT01Db3VudGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJOTQ5M0I2QkYxRDc0QjQxMjAwODhFNzgwIC8qIE1lZGlhUXVlcnlCbG9ja1dh
dGNoZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0
OTNCNkI3MUQ3NEIzOTUwMDg4RTc4MCAvKiBNZWRpYVF1ZXJ5QmxvY2tXYXRjaGVyLmggKi87IH07
CisJCTk0OTNCNkMxMUQ3NEI0MTIwMDg4RTc4MCAvKiBNZWRpYVF1ZXJ5UGFyc2VyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDkzQjZCOTFENzRCMzk1
MDA4OEU3ODAgLyogTWVkaWFRdWVyeVBhcnNlci5oICovOyB9OworCQk5NDlDNzcwMTFENkUxRDk4
MDBDMERFNEYgLyogQ1NTUGFyc2VyRmFzdFBhdGhzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NDlDNzZGRjFENkUxRDhDMDBDMERFNEYgLyogQ1NTUGFy
c2VyRmFzdFBhdGhzLmggKi87IH07CisJCTk0OUM3NzA1MUQ2RTM5RUEwMEMwREU0RiAvKiBDU1NQ
cm9wZXJ0eVBhcnNlckhlbHBlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk0OUM3NzAzMUQ2RTM5MzUwMEMwREU0RiAvKiBDU1NQcm9wZXJ0eVBhcnNl
ckhlbHBlcnMuaCAqLzsgfTsKKwkJOTQ5Qzc3MDkxRDZFNDk4NzAwQzBERTRGIC8qIENTU1BhcnNl
ck9ic2VydmVyV3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTQ5Qzc3MDcxRDZFNDhFRDAwQzBERTRGIC8qIENTU1BhcnNlck9ic2VydmVyV3Jh
cHBlci5oICovOyB9OworCQk5NDlDNzcwQjFENkU0OUVEMDBDMERFNEYgLyogQ1NTUGFyc2VyT2Jz
ZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0
OUM3NzBBMUQ2RTQ5QzMwMEMwREU0RiAvKiBDU1NQYXJzZXJPYnNlcnZlci5oICovOyB9OworCQk5
NERFNUM4MjFEN0YzQTE0MDAxNjRGMkEgLyogQ1NTQXRSdWxlSUQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0REU1QzgwMUQ3RjM5RDAwMDE2NEYyQSAv
KiBDU1NBdFJ1bGVJRC5oICovOyB9OworCQk5NERFNUM4RTFEODA4MDI3MDAxNjRGMkEgLyogQ1NT
U2VsZWN0b3JQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk0REU1QzhDMUQ4MDgwMTUwMDE2NEYyQSAvKiBDU1NTZWxlY3RvclBhcnNlci5oICov
OyB9OworCQk5NERFNUM5MjFEODMwMTFEMDAxNjRGMkEgLyogQ1NTU3VwcG9ydHNQYXJzZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk0REU1QzkwMUQ4
MzAwQ0IwMDE2NEYyQSAvKiBDU1NTdXBwb3J0c1BhcnNlci5oICovOyB9OworCQk5NERFNUM5NjFE
ODMwMUJEMDAxNjRGMkEgLyogQ1NTUGFyc2VySW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTRERTVDOTQxRDgzMDFCMDAwMTY0RjJBIC8qIENTU1Bh
cnNlckltcGwuaCAqLzsgfTsKKwkJOTRFODM5NTExREZCMkEwRTAwN0JDNkE3IC8qIENTU05hbWVz
cGFjZVJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk0RTgzOTRGMURGQjI3MDAwMDdCQzZBNyAvKiBDU1NOYW1lc3BhY2VSdWxlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTRFODM5NTYxREZCMkJD
NDAwN0JDNkE3IC8qIEpTQ1NTTmFtZXNwYWNlUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTRFODM5NTQxREZCMkJBNjAwN0JDNkE3IC8qIEpTQ1NT
TmFtZXNwYWNlUnVsZS5oICovOyB9OworCQk5NTAxODNDRDI1RDYzM0Q5MDBENDM0MEYgLyogQXBw
bGVQYXlEZXRhaWxzVXBkYXRlQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTUwMTgzQ0IyNUQ2MzNEODAwRDQzNDBGIC8qIEFwcGxlUGF5RGV0YWls
c1VwZGF0ZUJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQk5NTI3RDdBQjI1RDVGREUyMDBBNkUxNzYgLyogQXBwbGVQYXlEZXRhaWxzVXBkYXRl
RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTUy
N0Q3QTgyNUQ1RkRFMTAwQTZFMTc2IC8qIEFwcGxlUGF5RGV0YWlsc1VwZGF0ZURhdGEuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NTI3RDdBRjI1
RDVGRTZDMDBBNkUxNzYgLyogSlNBcHBsZVBheURldGFpbHNVcGRhdGVEYXRhLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NTI3RDdBRDI1RDVGRTZCMDBB
NkUxNzYgLyogSlNBcHBsZVBheURldGFpbHNVcGRhdGVEYXRhLmggKi87IH07CisJCTk1M0JDRUIy
MjVENjI4M0QwMEE0QTJBMSAvKiBKU0FwcGxlUGF5RGV0YWlsc1VwZGF0ZUJhc2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1M0JDRUFGMjVENjI4M0Mw
MEE0QTJBMSAvKiBKU0FwcGxlUGF5RGV0YWlsc1VwZGF0ZUJhc2UuaCAqLzsgfTsKKwkJOTU2MkVF
REQyNUYxOERFNzAwMzM0NDQyIC8qIFBheW1lbnRSZXF1ZXN0VXRpbGl0aWVzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NTYyRUVEQjI1RjE4REU2MDAz
MzQ0NDIgLyogUGF5bWVudFJlcXVlc3RVdGlsaXRpZXMuaCAqLzsgfTsKKwkJOTU2ODREODMyNjUz
NTdGODAwMDI2OTM4IC8qIEFwcGxlUGF5Q291cG9uQ29kZURldGFpbHMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1Njg0RDgxMjY1MzU3RjcwMDAyNjkz
OCAvKiBBcHBsZVBheUNvdXBvbkNvZGVEZXRhaWxzLmggKi87IH07CisJCTk1OTZCOTMzMjVERUVF
QTAwMEVEMkNGQSAvKiBBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1OTZCOTMwMjVERUVFOUYwMEVEMkNGQSAv
KiBBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk5NTk2QjkzODI1REVFRjAzMDBFRDJDRkEgLyogSlNBcHBs
ZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk1OTZCOTM2MjVERUVGMDIwMEVEMkNGQSAvKiBKU0FwcGxlUGF5
Q291cG9uQ29kZUNoYW5nZWRFdmVudC5oICovOyB9OworCQk5NUExRTJFOTI1Q0M3NUE5MDAyNjhD
OEUgLyogTWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVBMUUyRTcyNUNDNzVBODAwMjY4QzhFIC8qIE1l
ZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQk5NUFBNTcxMDI1RUVFRDMyMDA0RTkyODMgLyogSW5zcGVj
dG9yQ2FudmFzQ2FsbFRyYWNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTVBQTU3MEUyNUVFRUQzMTAwNEU5MjgzIC8qIEluc3BlY3RvckNhbnZhc0Nh
bGxUcmFjZXIuaCAqLzsgfTsKKwkJOTVERjlEMjUyNTJCRURCMjAwMEQ3RjQ2IC8qIFBvaW50ZXJD
aGFyYWN0ZXJpc3RpY3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk1REY5RDIzMjUyQkVEOTkwMDBEN0Y0NiAvKiBQb2ludGVyQ2hhcmFjdGVyaXN0aWNz
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTVF
QUQ1NjMyNjZFRjJEQjAwNEI5Q0YxIC8qIEFwcGxlUGF5Q291cG9uQ29kZUNoYW5nZWRFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVFQUQ1NUYy
NjZFRjJEQTAwNEI5Q0YxIC8qIEFwcGxlUGF5Q291cG9uQ29kZUNoYW5nZWRFdmVudC5oICovOyB9
OworCQk5NUVBRDU2QTI2NkVGMkZBMDA0QjlDRjEgLyogQXBwbGVQYXlEYXRlQ29tcG9uZW50c1Jh
bmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NUVB
RDU2NjI2NkVGMkY4MDA0QjlDRjEgLyogQXBwbGVQYXlEYXRlQ29tcG9uZW50c1JhbmdlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTVFQUQ1NkQy
NjZFRjJGQTAwNEI5Q0YxIC8qIEFwcGxlUGF5RGF0ZUNvbXBvbmVudHMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1RUFENTY5MjY2RUYyRjkwMDRCOUNG
MSAvKiBBcHBsZVBheURhdGVDb21wb25lbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTVFQUQ1NzAyNjZFRjM4NjAwNEI5Q0YxIC8qIEFwcGxl
UGF5UGF5bWVudFRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTVFQUQ1NkUyNjZFRjM4NDAwNEI5Q0YxIC8qIEFwcGxlUGF5UGF5bWVudFRpbWlu
Zy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk1
RUFENTc0MjY2RUYzOTQwMDRCOUNGMSAvKiBBcHBsZVBheVJlY3VycmluZ1BheW1lbnREYXRlVW5p
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVFQUQ1
NzIyNjZFRjM5MjAwNEI5Q0YxIC8qIEFwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTVFQUQ1
NzgyNjZFRjNBODAwNEI5Q0YxIC8qIEFwcGxlUGF5U2hpcHBpbmdDb250YWN0RWRpdGluZ01vZGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk1RUFENTc2
MjY2RUYzQTYwMDRCOUNGMSAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdEVkaXRpbmdNb2RlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTVFQUQ1
ODIyNjZFRjUzOTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlDb3Vwb25Db2RlVXBkYXRlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NUVBRDU4MTI2NkVGNTMx
MDA0QjlDRjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaCAqLzsgfTsKKwkJOTVFQUQ1
ODMyNjZFRjUzQjAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlDb3Vwb25Db2RlRGV0YWlscy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVFQUQ1N0YyNjZFRjUy
MzAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlDb3Vwb25Db2RlRGV0YWlscy5oICovOyB9OworCQk5NUVB
RDU4NzI2NkVGNTZBMDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NUVBRDU4NTI2NkVGNTY5
MDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRzLmggKi87IH07CisJCTk1RUFENThC
MjY2RUY1N0EwMDRCOUNGMSAvKiBKU0FwcGxlUGF5RGF0ZUNvbXBvbmVudHNSYW5nZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVFQUQ1ODkyNjZFRjU3
OTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlEYXRlQ29tcG9uZW50c1JhbmdlLmggKi87IH07CisJCTk1
RUFENThFMjY2RUY1OUMwMDRCOUNGMSAvKiBKU0FwcGxlUGF5UGF5bWVudFRpbWluZy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTVFQUQ1OEMyNjZFRjU5
QTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlQYXltZW50VGltaW5nLmggKi87IH07CisJCTk1RUFENTkz
MjY2RUY1Q0QwMDRCOUNGMSAvKiBKU0FwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NUVBRDU5MTI2
NkVGNUNDMDA0QjlDRjEgLyogSlNBcHBsZVBheVJlY3VycmluZ1BheW1lbnREYXRlVW5pdC5oICov
OyB9OworCQk5NUVBRDU5NDI2NkVGNUQ0MDA0QjlDRjEgLyogSlNBcHBsZVBheVBheW1lbnRSZXF1
ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QzY1
NzlFQzFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVBheW1lbnRSZXF1ZXN0LmggKi87IH07
CisJCTk1RUFENTk3MjY2RUY2MEIwMDRCOUNGMSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0
RWRpdGluZ01vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk1RUFENTk1MjY2RUY2MDkwMDRCOUNGMSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0
RWRpdGluZ01vZGUuaCAqLzsgfTsKKwkJOTVGNDVEMjcyNjRERkJGMTAwRDBCOEI4IC8qIFBhZ2VD
b2xvclNhbXBsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk1RjQ1RDI2MjY0REZCRUIwMEQwQjhCOCAvKiBQYWdlQ29sb3JTYW1wbGVyLmggKi87IH07
CisJCTk3MDU5OTdBMTA3RDk3NTIwMEE1MEE3QyAvKiBQb2xpY3lDaGVja2VyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzA1OTk3NjEwN0Q5NzUyMDBB
NTBBN0MgLyogUG9saWN5Q2hlY2tlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTk3MEI3MjhBMTQ0RkZBQzYwMEYwMEEzNyAvKiBFdmVudEludGVy
ZmFjZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3
MEI3Mjg5MTQ0RkZBQzYwMEYwMEEzNyAvKiBFdmVudEludGVyZmFjZXMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzBCNzJBNjE0NTAwOEVCMDBG
MDBBMzcgLyogRXZlbnRIZWFkZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzBCNzJBNTE0NTAwOEVCMDBGMDBBMzcgLyogRXZlbnRIZWFkZXJzLmgg
Ki87IH07CisJCTk3MTE0NjA0MTRFRjAwOUEwMDY3NEZEOSAvKiBOYXZpZ2F0b3JHZW9sb2NhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTcxMTQ2
MDExNEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRvckdlb2xvY2F0aW9uLmggKi87IH07CisJCTk3
MjA1QUIwMTIzOTI4Q0EwMEIxNzM4MCAvKiBGVFBEaXJlY3RvcnlEb2N1bWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTcyMDVBQUUxMjM5MjhDQTAw
QjE3MzgwIC8qIEZUUERpcmVjdG9yeURvY3VtZW50LmggKi87IH07CisJCTk3MjA1QUI2MTIzOTI5
MTAwMEIxNzM4MCAvKiBJbWFnZURvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NzIwNUFCMjEyMzkyOTEwMDBCMTczODAgLyogSW1hZ2VEb2N1
bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTk3MjA1QUI4MTIzOTI5MTAwMEIxNzM4MCAvKiBNZWRpYURvY3VtZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzIwNUFCNDEyMzkyOTEwMDBCMTcz
ODAgLyogTWVkaWFEb2N1bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTk3MjA1QUJDMTIzOTI5MjcwMEIxNzM4MCAvKiBQbHVnaW5Eb2N1bWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTcyMDVB
QkExMjM5MjkyNzAwQjE3MzgwIC8qIFBsdWdpbkRvY3VtZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTcyOEMzMTQxMjY4RTQzOTAwNDFFODlC
IC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNjdW11bGF0
b3IuaCAqLzsgfTsKKwkJOTczODg5QTExMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50V3JpdGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzM4ODk5
RjExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzNFMzI1NzEwODgzQjdDMDA1QkM0OTMg
LyogUmVzb3VyY2VMb2FkTm90aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDk3M0UzMjU1MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWRO
b3RpZmllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCTk3M0Y0MThBMTY5Qjk1RkYwMDA2QkY2MCAvKiBIVE1MUGFyc2VyT3B0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczRjQxODgxNjlCOTVF
RjAwMDZCRjYwIC8qIEhUTUxQYXJzZXJPcHRpb25zLmggKi87IH07CisJCTk3NDZBRjIxMTRGNERE
RTYwMDNFN0E3MSAvKiBHZW9sb2NhdGlvbkNvb3JkaW5hdGVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzQ2QUYxMTE0RjREREU2MDAzRTdBNzAgLyog
R2VvbG9jYXRpb25Db29yZGluYXRlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTk3NDZBRjI0MTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc0NkFG
MTQxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc0NkFGMjUxNEY0RERFNjAwM0U3QTcxIC8q
IEdlb2xvY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5NzQ2QUYxNTE0RjREREU2MDAzRTdBNzEgLyogR2VvbG9jYXRpb25DbGllbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzQ2
QUYyNzE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Db250cm9sbGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzQ2QUYxNzE0RjREREU2MDAz
RTdBNzAgLyogR2VvbG9jYXRpb25Db250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc0NkFGMjgxNEY0RERFNjAwM0U3QTcwIC8qIEdl
b2xvY2F0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk3NDZBRjE4MTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvbkVycm9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc0NkFGMjkx
NEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25EYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzQ2QUYxOTE0RjREREU2MDAzRTdB
NzAgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkRhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzQ2QUYyQTE0RjREREU2MDAzRTdBNzAgLyogR2Vv
bG9jYXRpb25Qb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTc0NkFGMUExNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb24u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzQ2
QUYyQzE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc0NkFGMUMxNEY0RERFNjAwM0U3QTcw
IC8qIFBvc2l0aW9uQ2FsbGJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk5NzQ2QUYyRTE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Q
b3NpdGlvbkVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5NzQ2QUYxRTE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkVycm9y
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc0
NkFGMzAxNEY0RERFNjAwM0U3QTcwIC8qIFBvc2l0aW9uRXJyb3JDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc0NkFGMjAxNEY0RERFNjAw
M0U3QTcwIC8qIFBvc2l0aW9uRXJyb3JDYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk3NDZBRjMyMTRGNERERTYwMDNFN0E3MCAvKiBQ
b3NpdGlvbk9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk3NDZBRjIyMTRGNERERTYwMDNFN0E3MCAvKiBQb3NpdGlvbk9wdGlvbnMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzRBODYyMzE0
QjdBREJCMDAzRkRDNzYgLyogRnJhbWVEZXN0cnVjdGlvbk9ic2VydmVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzRBODYyMTE0QjdBREJCMDAzRkRD
NzYgLyogRnJhbWVEZXN0cnVjdGlvbk9ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc0RDJEQTUxNDZBNTM1RDAwRDUxRjhCIC8qIFNl
Y3VyaXR5UG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA5NzREMkRBMzE0NkE1MzVEMDBENTFGOEIgLyogU2VjdXJpdHlQb2xpY3kuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzUyRDM4RTE0MTMx
MDRCMDAzMzA1QkQgLyogSlNIVE1MU3BhbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3NTJEMzhDMTQxMzEwNEIwMDMzMDVCRCAvKiBKU0hU
TUxTcGFuRWxlbWVudC5oICovOyB9OworCQk5NzU5RTk0MDE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4
dFRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
NzU5RTkzNjE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4dFRyYWNrLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc1OUU5NDMxNEVGMUNGODAwMjZBMkRE
IC8qIFRleHRUcmFja0N1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTc1OUU5MzkxNEVGMUNGODAwMjZBMkREIC8qIFRleHRUcmFja0N1ZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk3NTlFOTQ2MTRF
RjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzU5RTkzQzE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4
dFRyYWNrQ3VlTGlzdC5oICovOyB9OworCQk5NzU5RTk0OTE0RUYxRDQ5MDAyNkEyREQgLyogTG9h
ZGFibGVUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk3NTlFOTQ4MTRFRjFENDkwMDI2QTJERCAvKiBMb2FkYWJsZVRleHRUcmFjay5oICov
OyB9OworCQk5NzVDQTI4QjEzMDM2NUY4MDBFOTlBRDkgLyogQ3J5cHRvLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzVDQTI4ODEzMDM2NUY4MDBFOTlB
RDkgLyogQ3J5cHRvLmggKi87IH07CisJCTk3NUNBMkEyMTMwMzY3OUQwMEU5OUFEOSAvKiBKU0Ny
eXB0by5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc1
Q0EyQTAxMzAzNjc5RDAwRTk5QUQ5IC8qIEpTQ3J5cHRvLmggKi87IH07CisJCTk3NjI3QjhFMTRG
QjNDRUUwMDJDRENBMSAvKiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc2MjdCOEMxNEZCM0NFRTAwMkNE
Q0ExIC8qIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTc2MjdCOTgxNEZCNTQyNDAwMkNEQ0ExIC8q
IFN1cHBsZW1lbnRhYmxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5NzYyN0I5NzE0RkI1NDI0MDAyQ0RDQTEgLyogU3VwcGxlbWVudGFibGUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzZENkM3OTEy
MkI4QTNEMDAxRkQxRjcgLyogQmxvYi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTc2RDZDNUExMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2IuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5NzZENkM3QzEyMkI4
QTNEMDAxRkQxRjcgLyogQmxvYkJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3NkQ2QzVEMTIyQjhBM0QwMDFGRDFGNyAvKiBCbG9iQnVpbGRl
ci5oICovOyB9OworCQk5NzZENkM3RjEyMkI4QTNEMDAxRkQxRjcgLyogQmxvYlVSTC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc2RDZDNjAxMjJCOEEz
RDAwMUZEMUY3IC8qIEJsb2JVUkwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQk5NzZENkM4MTEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc2RDZDNjIxMjJCOEEz
RDAwMUZEMUY3IC8qIEZpbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk5NzZENkM4NjEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZUxpc3QuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3NkQ2QzY3MTIyQjhB
M0QwMDFGRDFGNyAvKiBGaWxlTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCTk3NkQ2Qzg5MTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlUmVhZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzZENkM2
QTEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZVJlYWRlci5oICovOyB9OworCQk5NzZENkM5NTEyMkI4
QTNEMDAxRkQxRjcgLyogVGhyZWFkYWJsZUJsb2JSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc2RDZDNzYxMjJCOEEzRDAwMUZEMUY3IC8q
IFRocmVhZGFibGVCbG9iUmVnaXN0cnkuaCAqLzsgfTsKKwkJOTc2RjM2RUIxNDY4NjIyNTAwNUU5
M0I0IC8qIFNlY3VyaXR5Q29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTc2RjM2RTkxNDY4NjIyNTAwNUU5M0I0IC8qIFNlY3VyaXR5Q29udGV4
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk3
N0IzNzI0MTIyODcyMTcwMEI4MUZGOCAvKiBIVE1MRWxlbWVudFN0YWNrLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzcyMDEyMjg3MjE3MDBCODFG
RjggLyogSFRNTEVsZW1lbnRTdGFjay5oICovOyB9OworCQk5NzdCMzcyNjEyMjg3MjE3MDBCODFG
RjggLyogSFRNTFRyZWVCdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzdCMzcyMjEyMjg3MjE3MDBCODFGRjggLyogSFRNTFRyZWVCdWlsZGVy
LmggKi87IH07CisJCTk3N0IzODYzMTIyODgzRTkwMEI4MUZGOCAvKiBDU1NQcmVsb2FkU2Nhbm5l
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc3QjM4
NEExMjI4ODNFOTAwQjgxRkY4IC8qIENTU1ByZWxvYWRTY2FubmVyLmggKi87IH07CisJCTk3N0Iz
ODY1MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MQ29uc3RydWN0aW9uU2l0ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc3QjM4NEMxMjI4ODNFOTAwQjgx
RkY4IC8qIEhUTUxDb25zdHJ1Y3Rpb25TaXRlLmggKi87IH07CisJCTk3N0IzODY3MTIyODgzRTkw
MEI4MUZGOCAvKiBIVE1MRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3N0IzODRFMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRG9j
dW1lbnRQYXJzZXIuaCAqLzsgfTsKKwkJOTc3QjM4NkExMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxF
bnRpdHlQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk3N0IzODUxMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRW50aXR5UGFyc2VyLmggKi87IH07
CisJCTk3N0IzODZDMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRW50aXR5U2VhcmNoLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg1MzEyMjg4M0U5
MDBCODFGRjggLyogSFRNTEVudGl0eVNlYXJjaC5oICovOyB9OworCQk5NzdCMzg2RDEyMjg4M0U5
MDBCODFGRjggLyogSFRNTEVudGl0eVRhYmxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdCMzg1NDEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVudGl0
eVRhYmxlLmggKi87IH07CisJCTk3N0IzODZGMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRm9ybWF0
dGluZ0VsZW1lbnRMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5NzdCMzg1NjEyMjg4M0U5MDBCODFGRjggLyogSFRNTEZvcm1hdHRpbmdFbGVtZW50
TGlzdC5oICovOyB9OworCQk5NzdCMzg3MTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFBhcnNlclNj
aGVkdWxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTc3QjM4NTgxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxQYXJzZXJTY2hlZHVsZXIuaCAqLzsgfTsK
KwkJOTc3QjM4NzMxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxQcmVsb2FkU2Nhbm5lci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc3QjM4NUExMjI4ODNF
OTAwQjgxRkY4IC8qIEhUTUxQcmVsb2FkU2Nhbm5lci5oICovOyB9OworCQk5NzdCMzg3NTEyMjg4
M0U5MDBCODFGRjggLyogSFRNTFNjcmlwdFJ1bm5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc3QjM4NUMxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxT
Y3JpcHRSdW5uZXIuaCAqLzsgfTsKKwkJOTc3QjM4NzYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxT
Y3JpcHRSdW5uZXJIb3N0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5NzdCMzg1RDEyMjg4M0U5MDBCODFGRjggLyogSFRNTFNjcmlwdFJ1bm5lckhvc3Qu
aCAqLzsgfTsKKwkJOTc3QjM4NzgxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxUb2tlbml6ZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3N0IzODVGMTIy
ODgzRTkwMEI4MUZGOCAvKiBIVE1MVG9rZW5pemVyLmggKi87IH07CisJCTk3N0UyRENFMTJGMEUy
ODMwMEMxMzM3OSAvKiBIVE1MU291cmNlVHJhY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTc3RTJEQ0MxMkYwRTI4MzAwQzEzMzc5IC8qIEhUTUxT
b3VyY2VUcmFja2VyLmggKi87IH07CisJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NB
dWRpdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
NzdFMkUwQzEyRjBGQzlDMDBDMTMzNzkgLyogWFNTQXVkaXRvci5oICovOyB9OworCQk5NzdFMkUw
RjEyRjBGQzlDMDBDMTMzODAgLyogWFNTQXVkaXRvckRlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzdFMkUwQzEyRjBGQzlDMDBDMTMzODAg
LyogWFNTQXVkaXRvckRlbGVnYXRlLmggKi87IH07CisJCTk3OEFENjc1MTQxMzBBOEQwMEM3Q0FF
MyAvKiBIVE1MU3BhbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDk3OEFENjcyMTQxMzBBOEQwMEM3Q0FFMyAvKiBIVE1MU3BhbkVsZW1lbnQu
aCAqLzsgfTsKKwkJOTc5RjQzRDQxMDc1RTQ0QTAwMDBGODNCIC8qIE5hdmlnYXRpb25TY2hlZHVs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3OUY0
M0QyMTA3NUU0NEEwMDAwRjgzQiAvKiBOYXZpZ2F0aW9uU2NoZWR1bGVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdBQTNDQTUxNDUyMzdDQzAw
M0UxREE2IC8qIEV2ZW50VGFyZ2V0SGVhZGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQTNDQTMxNDUyMzdDQzAwM0UxREE2IC8qIEV2ZW50VGFy
Z2V0SGVhZGVycy5oICovOyB9OworCQk5N0FBM0NBNjE0NTIzN0NDMDAzRTFEQTYgLyogRXZlbnRU
YXJnZXRJbnRlcmZhY2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5N0FBM0NBNDE0NTIzN0NDMDAzRTFEQTYgLyogRXZlbnRUYXJnZXRJbnRlcmZhY2Vz
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdB
QUJEMTMxNEZBMDlENTAwNzQ1N0FFIC8qIENsb3NlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCQ0Y4MTRGQTA5RDUwMDc0NTdBRSAvKiBD
bG9zZUV2ZW50LmggKi87IH07CisJCTk3QUFCRDE3MTRGQTA5RDUwMDc0NTdBRSAvKiBUaHJlYWRh
YmxlV2ViU29ja2V0Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTdBQUJDRkMxNEZBMDlENTAwNzQ1N0FFIC8qIFRocmVhZGFibGVXZWJTb2Nr
ZXRDaGFubmVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOTdBQUJEMTkxNEZBMDlENTAwNzQ1N0FFIC8qIFRocmVhZGFibGVXZWJTb2NrZXRDaGFu
bmVsQ2xpZW50V3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTdBQUJDRkUxNEZBMDlENTAwNzQ1N0FFIC8qIFRocmVhZGFibGVXZWJTb2NrZXRD
aGFubmVsQ2xpZW50V3JhcHBlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTk3QUFCRDFCMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDAwMTRG
QTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXQuaCAqLzsgfTsKKwkJOTdBQUJEMUUxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldENoYW5uZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDAzMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRD
aGFubmVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJOTdBQUJEMUYxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldENoYW5uZWxDbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDA0MTRG
QTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRDaGFubmVsQ2xpZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdBQUJEMjExNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldERlZmxhdGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5N0FBQkQwNjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RGVm
bGF0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk5N0FBQkQyMzE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uRGlzcGF0Y2hl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJE
MDgxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEV4dGVuc2lvbkRpc3BhdGNoZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5N0FBQkQyNDE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0FBQkQwOTE0RkEwOUQ1MDA3
NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdBQUJEMjUxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5N0FBQkQwQTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RnJhbWUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5N0FBQkQy
NzE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0FBQkQwQzE0RkEwOUQ1MDA3NDU3QUUg
LyogV2ViU29ja2V0SGFuZHNoYWtlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTdBQUJEMkQxNEZBMDlENTAwNzQ1N0FFIC8qIFdvcmtlclRocmVh
ZGFibGVXZWJTb2NrZXRDaGFubmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5N0FBQkQxMjE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhyZWFkYWJs
ZVdlYlNvY2tldENoYW5uZWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk5N0I4RkZEMTE2QUU3Rjk2MDAzODM4OEQgLyogQ2hhcmFjdGVyUmVmZXJl
bmNlUGFyc2VySW5saW5lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTdCOEZGQ0YxNkFFN0Y5MjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5jZVBh
cnNlcklubGluZXMuaCAqLzsgfTsKKwkJOTdCQzY5REQxNTA1RjA3NjAwMUI3NEFDIC8qIENoYW5n
ZVZlcnNpb25XcmFwcGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5N0JDNjlEOTE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdlVmVyc2lvbldyYXBwZXIu
aCAqLzsgfTsKKwkJOTdCQzZBMjExNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNjlERjE1MDVGMDgx
MDAxQjc0QUMgLyogRGF0YWJhc2UuaCAqLzsgfTsKKwkJOTdCQzZBMjQxNTA1RjA4MTAwMUI3NEFD
IC8qIERhdGFiYXNlQXV0aG9yaXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTdCQzY5RTIxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQXV0aG9y
aXplci5oICovOyB9OworCQk5N0JDNkEyNTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdC
QzY5RTMxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ2FsbGJhY2suaCAqLzsgfTsKKwkJOTdC
QzZBMjgxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ29udGV4dC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzY5RTYxNTA1RjA4MTAwMUI3NEFD
IC8qIERhdGFiYXNlQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCTk3QkM2QTI5MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZURldGFp
bHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2
OUU3MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZURldGFpbHMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5N0JDNkEyRTE1MDVGMDgxMDAxQjc0
QUMgLyogRGF0YWJhc2VUYXNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5N0JDNjlFQzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmggKi87
IH07CisJCTk3QkM2QTMwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVhZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzY5RUUxNTA1RjA4
MTAwMUI3NEFDIC8qIERhdGFiYXNlVGhyZWFkLmggKi87IH07CisJCTk3QkM2QTMyMTUwNUYwODEw
MDFCNzRBQyAvKiBEYXRhYmFzZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2OUYwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRy
YWNrZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk5N0JDNkEzMzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VNYW5hZ2VyQ2xpZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNjlGMTE1MDVG
MDgxMDAxQjc0QUMgLyogRGF0YWJhc2VNYW5hZ2VyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdCQzZBM0IxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTENhbGxiYWNrV3JhcHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTdCQzY5RjkxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTENhbGxiYWNrV3Jh
cHBlci5oICovOyB9OworCQk5N0JDNkEzQzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMRXJyb3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2OUZBMTUw
NUYwODEwMDFCNzRBQyAvKiBTUUxFcnJvci5oICovOyB9OworCQk5N0JDNkE0MjE1MDVGMDgxMDAx
Qjc0QUMgLyogU1FMUmVzdWx0U2V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5N0JDNkEwMDE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVzdWx0U2V0Lmgg
Ki87IH07CisJCTk3QkM2QTQ1MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1bHRTZXRSb3dMaXN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEw
MzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVzdWx0U2V0Um93TGlzdC5oICovOyB9OworCQk5N0JD
NkE0OTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50Q2FsbGJhY2suaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM2QTA3MTUwNUYwODEwMDFC
NzRBQyAvKiBTUUxTdGF0ZW1lbnRDYWxsYmFjay5oICovOyB9OworCQk5N0JDNkE0QjE1MDVGMDgx
MDAxQjc0QUMgLyogU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzZBMDkxNTA1RjA4MTAwMUI3NEFDIC8q
IFNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suaCAqLzsgfTsKKwkJOTdCQzZBNTAxNTA1RjA4MTAw
MUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5N0JDNkEwRTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rp
b24uaCAqLzsgfTsKKwkJOTdCQzZBNTIxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9u
Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk3QkM2QTEwMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNhbGxiYWNrLmggKi87
IH07CisJCTk3QkM2QTU3MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNvb3JkaW5h
dG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JD
NkExNTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5oICovOyB9
OworCQk5N0JDNkE1ODE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxi
YWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0JD
NkExNjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmggKi87
IH07CisJCTk3QkM4NDg0MTIzNkZEOTMwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnRQYXJzZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QkM4NDgyMTIz
NkZEOTMwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnRQYXJzZXIuaCAqLzsgfTsKKwkJOTdCQzg0OUIx
MjM3MEE0QjAwMEM2MTYxIC8qIEhUTUxJbnB1dFN0cmVhbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdCQzg0OUExMjM3MEE0QjAwMEM2MTYxIC8qIEhU
TUxJbnB1dFN0cmVhbS5oICovOyB9OworCQk5N0JDODRCNDEyMzcxMTgwMDAwQzYxNjEgLyogVGV4
dERvY3VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5N0JDODRCMjEyMzcxMTgwMDAwQzYxNjEgLyogVGV4dERvY3VtZW50LmggKi87IH07CisJCTk3
QzA3ODUwMTE2NUQ1QkUwMDNBMzJFRiAvKiBTdWZmaXhUcmVlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0MwNzg0RjExNjVENUJFMDAzQTMyRUYgLyog
U3VmZml4VHJlZS5oICovOyB9OworCQk5N0M0NzFEQzEyRjkyNUJEMDA4NjM1NEIgLyogQ29udGVu
dFNlY3VyaXR5UG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5N0M0NzFEQTEyRjkyNUJEMDA4NjM1NEIgLyogQ29udGVudFNlY3VyaXR5UG9saWN5
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTdE
MkFEMDQxNEI4MjNBNjAwOTNERjMyIC8qIERPTVdpbmRvd1Byb3BlcnR5LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5N0QyQUQwMjE0QjgyM0E2MDA5M0RG
MzIgLyogRE9NV2luZG93UHJvcGVydHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5N0RDRTIwMjEwODA3Qzc1MDA1N0QzOTQgLyogSGlzdG9yeUNv
bnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk3RENFMjAwMTA4MDdDNzUwMDU3RDM5NCAvKiBIaXN0b3J5Q29udHJvbGxlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk4MzFBRTRBMTU0MjI1
QzkwMEZFMjY0NCAvKiBSZWZlcnJlclBvbGljeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTgzMUFFNDkxNTQyMjVBMjAwRkUyNjQ0IC8qIFJlZmVycmVy
UG9saWN5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJOTg0MjY0RjExMkQ1MjgwQTAwMEQ4OEE0IC8qIExpbmtMb2FkZXJDbGllbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk4NDI2NEVGMTJENTI4MEEw
MDBEODhBNCAvKiBMaW5rTG9hZGVyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTg1QkI5NkUxM0E5NDA1ODAwN0EwQjY5IC8qIExpbmtS
ZWxBdHRyaWJ1dGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk4NUJCOTZDMTNBOTQwNTgwMDdBMEI2OSAvKiBMaW5rUmVsQXR0cmlidXRlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOThDQkM4MDUyNjE4
RjY4QzAwMTU5M0M4IC8qIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOThDQkM4MDMyNjE4RjY4QjAwMTU5M0M4
IC8qIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTk4Q0U0MzJBMTI5RTAwRTUwMDU4MjFEQyAvKiBMaW5r
TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
OENFNDMyOTEyOUUwMEU1MDA1ODIxREMgLyogTGlua0xvYWRlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk4RUIxRjk1MTMxM0ZFMDUwMEQwRTFF
QSAvKiBOb3RJbXBsZW1lbnRlZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOThFQjFGOTQxMzEzRkUwNTAwRDBFMUVBIC8qIE5vdEltcGxlbWVudGVkLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOThGOUQ2
NjkyNUZERTAyMjAwQkQ4NDJEIC8qIENTU0NvdW50ZXJTdHlsZVJ1bGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk4RjlENjY4MjVGRERGRTgwMEJEODQy
RCAvKiBDU1NDb3VudGVyU3R5bGVSdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTkyMDM5ODMxOEI5NUJDNjAwQjM5QUY5IC8qIFVzZXJJbnB1
dEJyaWRnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OTkyMDM5ODExOEI5NUJDNjAwQjM5QUY5IC8qIFVzZXJJbnB1dEJyaWRnZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTk5NEM2MDNBMjUzQTI3NzMw
MEJERjA2MCAvKiBJbnNwZWN0b3JGcm9udGVuZEFQSURpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk5NEM2MDM3MjUzQTI3NzIwMEJERjA2
MCAvKiBJbnNwZWN0b3JGcm9udGVuZEFQSURpc3BhdGNoZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5OTZFNTlERjFERjAxMjhEMDA2NjEyQjkg
LyogTmF2aWdhdG9yV2ViRHJpdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5OTZFNTlEQzFERjAwRDkwMDA2NjEyQjkgLyogTmF2aWdhdG9yV2ViRHJp
dmVyLmggKi87IH07CisJCTk5RDFCMkQzMjNBQzE0MzEwMDgxMUNGMCAvKiBJbnNwZWN0b3JEZWJ1
Z2dhYmxlVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTlEMUIyRDEyM0FDMTQzMDAwODExQ0YwIC8qIEluc3BlY3RvckRlYnVnZ2FibGVUeXBlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJOUE1MjhF
ODQxN0Q3RjUyRjAwQUE5NTE4IC8qIEZsb2F0aW5nT2JqZWN0cy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUE1MjhFODIxN0Q3RjUyRjAwQUE5NTE4IC8q
IEZsb2F0aW5nT2JqZWN0cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTlBQjFGMzgwMThFMjQ4OUEwMDUzNDc0MyAvKiBDU1NUb0xlbmd0aENvbnZl
cnNpb25EYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA5QUIxRjM3RTE4RTI0ODlBMDA1MzQ3NDMgLyogQ1NTVG9MZW5ndGhDb252ZXJzaW9uRGF0YS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTlBQ0Mw
Nzk2MjVDNzI1RUUwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbVJlcXVlc3QuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUFDQzA3OTQyNUM3MjVFRDAw
REM2Mzg2IC8qIE1lZGlhS2V5U3lzdGVtUmVxdWVzdC5jcHAgKi87IH07CisJCTlBQ0MwNzk4MjVD
NzI2NzcwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUFDQzA3OTcyNUM3MjY3NjAwREM2
Mzg2IC8qIE1lZGlhS2V5U3lzdGVtQ29udHJvbGxlci5jcHAgKi87IH07CisJCTlBQ0MwN0E2MjVD
ODEwREYwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbVJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlBQ0MwN0E1MjVDODEwREYwMERDNjM4NiAv
KiBNZWRpYUtleVN5c3RlbVJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQk5QUNDMDdBODI1QzgxMTBEMDBEQzYzODYgLyogTWVkaWFLZXlT
eXN0ZW1DbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDlBQ0MwN0E3MjVDODExMEQwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNsaWVudC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTlBQ0MwN0FG
MjVDODE0MUQwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlBQ0MwN0FFMjVDODE0MUMwMERD
NjM4NiAvKiBNZWRpYUtleVN5c3RlbUNvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5QjAyRTBDODIzNUVBRDJBMDA0MDQ0QjIgLyog
VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDlCMDJFMEMzMjM1RTc2QUEwMDQwNDRCMiAvKiBUZXh0TWFuaXB1
bGF0aW9uQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTlCMEFCQ0FFMjM2QkI0MzEwMEI0NTA4NSAvKiBUYXNrU291cmNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjBBQkNBQzIzNkJC
NDBBMDBCNDUwODUgLyogVGFza1NvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTlCMTIyOUM0MjNGRTRCRDIwMDhDQTc1MSAvKiBBdWRpb0Rl
c3RpbmF0aW9uQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxMzE1MTg2MjM1Nzc0NUUwMDExNUU2RSAvKiBBdWRpb0Rlc3RpbmF0aW9uQ29jb2Eu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5QjEy
MjlDNzIzRkU0RDZBMDA4Q0E3NTEgLyogTWVkaWFTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUIxMjI5QzYyM0ZFNEQ1RjAwOENBNzUxIC8q
IE1lZGlhU3RyYXRlZ3kuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5QjI0REU4RTE1MTk0Qjk1MDBDNTlDMjcgLyogSFRNTEJESUVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCMjRERThDMTUx
OTRCOTUwMEM1OUMyNyAvKiBIVE1MQkRJRWxlbWVudC5oICovOyB9OworCQk5QjI3RkM2MDIzNEQ5
QURCMDAzOTRBNDYgLyogV2luZG93RXZlbnRMb29wLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjI3RkM1RTIzNEQ5QURBMDAzOTRBNDYgLyogV2luZG93
RXZlbnRMb29wLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJOUIyRDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjJEOEE3ODE0OTk3Q0NGMDBFQ0VG
M0UgLyogVW5kb1N0ZXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQk5QjMyQ0RBOTEzREY3RkE5MDBGMzREMTMgLyogUmVuZGVyZWRQb3NpdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUIzMkNEQTcx
M0RGN0ZBOTAwRjM0RDEzIC8qIFJlbmRlcmVkUG9zaXRpb24uaCAqLzsgfTsKKwkJOUI0MTcwNjQx
MjU2NjJCMzAwNkIyOEZDIC8qIEFwcGx5QmxvY2tFbGVtZW50Q29tbWFuZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUI0MTcwNjIxMjU2NjJCMzAwNkIy
OEZDIC8qIEFwcGx5QmxvY2tFbGVtZW50Q29tbWFuZC5oICovOyB9OworCQk5QjUwQjFERTE3Q0Q0
QzBGMDA4N0Y2M0MgLyogRm9ybU5hbWVkSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOUI1MEIxREMxN0NENEMwRjAwODdGNjNDIC8qIEZvcm1OYW1l
ZEl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQk5QjUzMkVBNDFCQTkyODU3MDAzOEE4MjcgLyogU2xvdEFzc2lnbm1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCNTMyRUEyMUJBOTI4NTcwMDM4
QTgyNyAvKiBTbG90QXNzaWdubWVudC5oICovOyB9OworCQk5QjY5RDNCNTFCOThGRkU5MDBFMzUx
MkIgLyogSFRNTFNsb3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5QjY5RDNCMzFCOThGRkU5MDBFMzUxMkIgLyogSFRNTFNsb3RFbGVtZW50
LmggKi87IH07CisJCTlCNjlEM0I5MUI5OTEwMDcwMEUzNTEyQiAvKiBKU0hUTUxTbG90RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUI2OUQz
QjcxQjk5MTAwNzAwRTM1MTJCIC8qIEpTSFRNTFNsb3RFbGVtZW50LmggKi87IH07CisJCTlCNkM0
MTUzMTM0NDk0OTAwMDA4NUI2MiAvKiBTdHJpbmdXaXRoRGlyZWN0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5QjZDNDE1MjEzNDQ5NDkwMDAwODVC
NjIgLyogU3RyaW5nV2l0aERpcmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCTlCNzE0RTIxMUM5MTE2NjkwMEFDMEU5MiAvKiBFdmVudFBh
dGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCNzE0
RTFGMUM5MTE2NjkwMEFDMEU5MiAvKiBFdmVudFBhdGguaCAqLzsgfTsKKwkJOUI3NDI2MDUyMzRC
RTk1NjAwREI1MkU5IC8qIElkbGVSZXF1ZXN0Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCNzQyNjAzMjM0QkU5NTYwMERCNTJFOSAvKiBJ
ZGxlUmVxdWVzdENhbGxiYWNrLmggKi87IH07CisJCTlCNzQyNjBCMjM0QkVBNkUwMERCNTJFOSAv
KiBJZGxlRGVhZGxpbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDlCNzQyNjA4MjM0QkVBNkUwMERCNTJFOSAvKiBJZGxlRGVhZGxpbmUuaCAqLzsgfTsK
KwkJOUI4NjRGMDIyMzRDMDI4QTAwNkQxMEVCIC8qIElkbGVSZXF1ZXN0T3B0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUI4NjRGMDAyMzRDMDI4
QTAwNkQxMEVCIC8qIElkbGVSZXF1ZXN0T3B0aW9ucy5oICovOyB9OworCQk5Qjg2NEYwNjIzNEMw
ODkzMDA2RDEwRUIgLyogSWRsZUNhbGxiYWNrQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUI4NjRGMDUyMzRDMDg5MzAwNkQxMEVCIC8q
IElkbGVDYWxsYmFja0NvbnRyb2xsZXIuaCAqLzsgfTsKKwkJOUJBMjczRjQxNzIyMDZCQjAwOTdD
RTQ3IC8qIExvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCQTI3M0YzMTcyMjA2QkIwMDk3Q0U0NyAvKiBM
b2dpY2FsU2VsZWN0aW9uT2Zmc2V0Q2FjaGVzLmggKi87IH07CisJCTlCQUFDNDVDMjE1MjAxMjgw
MDNENEE5OCAvKiBHQ1JlYWNoYWJsZVJlZi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOUJBQUM0NTYyMTUxRTM5RTAwM0Q0QTk4IC8qIEdDUmVhY2hhYmxl
UmVmLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
OUJBQjZDNkMxMjU1MDYzMTAwMTYyNkQ0IC8qIEVkaXRpbmdTdHlsZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUJBQjZDNkExMjU1MDYzMTAwMTYyNkQ0
IC8qIEVkaXRpbmdTdHlsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCTlCQUVFOTJDMjIzODhBN0QwMDQxNTdBOSAvKiBRdWlya3MuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOUE4N0ZCMjE1RDZDRjMw
MDZGMTdCNSAvKiBRdWlya3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk5QkFGM0IyNDEyQzFBMzk4MDAwMTRCRjEgLyogV3JpdGluZ0RpcmVjdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUJBRjNC
MjMxMkMxQTM5ODAwMDE0QkYxIC8qIFdyaXRpbmdEaXJlY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5QkJBMkNBQjFGNjc5RTBDMDBGRDFD
MUUgLyogV2ViQ29udGVudFJlYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOUJGNDMzNzYxRjY3NjE5QjAwRTFGRDcxIC8qIFdlYkNvbnRlbnRSZWFk
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQk5
QkM2QzIxQjEzQ0NDOTdCMDA4RTAzMzcgLyogSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCQzZDMjE5MTND
Q0M5N0IwMDhFMDMzNyAvKiBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTlCRDBCRjkzMTJBNDJCRjUw
MDcyRkQ0MyAvKiBTY29wZWRFdmVudFF1ZXVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5QkQwQkY5MTEyQTQyQkY1MDA3MkZENDMgLyogU2NvcGVkRXZl
bnRRdWV1ZS5oICovOyB9OworCQk5QkQ0RTkxNzFDNDYyODcyMDA1MDY1QkMgLyogSlNDdXN0b21F
bGVtZW50SW50ZXJmYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5QkQ0RTkxNTFDNDYyODcyMDA1MDY1QkMgLyogSlNDdXN0b21FbGVtZW50SW50ZXJm
YWNlLmggKi87IH07CisJCTlCRDRFOTFCMUM0NjJDRkMwMDUwNjVCQyAvKiBDdXN0b21FbGVtZW50
UmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDlCRDRFOTE5MUM0NjJDRkMwMDUwNjVCQyAvKiBDdXN0b21FbGVtZW50UmVnaXN0cnkuaCAqLzsg
fTsKKwkJOUJEQTY0RDgxQjk3NUNGMjAwOUM0Mzg3IC8qIEpTU2hhZG93Um9vdC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUI2QkM5NjExQjk3NTk2NjAw
NUFFMUYwIC8qIEpTU2hhZG93Um9vdC5oICovOyB9OworCQk5QkU2NzEwQzFENUFFQjI1MDAzNDU1
MTQgLyogSlNDdXN0b21FbGVtZW50UmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCRTY3MTBBMUQ1QUVCMDQwMDM0NTUxNCAvKiBKU0N1c3Rv
bUVsZW1lbnRSZWdpc3RyeS5oICovOyB9OworCQk5QkY5QTg4MTE2NDhERDJGMDAxQzZCMjMgLyog
SlNIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOUJGOUE4N0YxNjQ4REQyRjAwMUM2QjIzIC8qIEpTSFRNTEZv
cm1Db250cm9sc0NvbGxlY3Rpb24uaCAqLzsgfTsKKwkJOUQ2MzgwMTAxQUYxNzMyMjAwMzFBMTVD
IC8qIFN0eWxlU2VsZkFsaWdubWVudERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDlENjM4MDBGMUFGMTZFMTYwMDMxQTE1QyAvKiBTdHlsZVNlbGZB
bGlnbm1lbnREYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJOURBQzdDNTUxQUYyQ0FBMjAwNDM3QzQ0IC8qIENTU0NvbnRlbnREaXN0cmlidXRp
b25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OURBQzdDNTMxQUYyQ0FBMTAwNDM3QzQ0IC8qIENTU0NvbnRlbnREaXN0cmlidXRpb25WYWx1ZS5o
ICovOyB9OworCQk5REFDN0M1NzFBRjJDQjY0MDA0MzdDNDQgLyogU3R5bGVDb250ZW50QWxpZ25t
ZW50RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
OURBQzdDNTYxQUYyQ0I2NDAwNDM3QzQ0IC8qIFN0eWxlQ29udGVudEFsaWdubWVudERhdGEuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMDdEMzM1
NjE1MkI2MzBFMDAxQjYzOTMgLyogSlNXZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTA3RDMzNTQxNTJCNjMw
RTAwMUI2MzkzIC8qIEpTV2ViR0xTaGFkZXJQcmVjaXNpb25Gb3JtYXQuaCAqLzsgfTsKKwkJQTA3
RDMzNTgxNTJCNjMyRDAwMUI2MzkzIC8qIFdlYkdMU2hhZGVyUHJlY2lzaW9uRm9ybWF0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMDdEMzM1NzE1MkI2
MzJEMDAxQjYzOTMgLyogV2ViR0xTaGFkZXJQcmVjaXNpb25Gb3JtYXQuaCAqLzsgfTsKKwkJQTBF
RTBERjYxNDRGODI1NTAwRjgwQjBEIC8qIFdlYkdMRGVidWdSZW5kZXJlckluZm8uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEwRUUwREYyMTQ0RjgyNTUw
MEY4MEIwRCAvKiBXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggKi87IH07CisJCUEwRUUwREY4MTQ0
RjgyNTUwMEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTBFRTBERjQxNDRGODI1NTAwRjgwQjBEIC8qIFdl
YkdMRGVidWdTaGFkZXJzLmggKi87IH07CisJCUExMDRFQzVBMjIwQTNERTAwMENCRjY3QSAvKiBN
b2NrUGF5bWVudENvbnRhY3RGaWVsZHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExMDRFQzU1MjIwQTM5QjQwMENCRjY3QSAvKiBNb2NrUGF5bWVudENv
bnRhY3RGaWVsZHMuaCAqLzsgfTsKKwkJQTEwNEVDNUQyMjBBM0U0QjAwQ0JGNjdBIC8qIEpTTW9j
a1BheW1lbnRDb250YWN0RmllbGRzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExMDRFQzVCMjIwQTNFNDMwMENCRjY3QSAvKiBKU01vY2tQYXltZW50
Q29udGFjdEZpZWxkcy5jcHAgKi87IH07CisJCUExMDRFQzVFMjIwQTNFNEUwMENCRjY3QSAvKiBK
U01vY2tQYXltZW50Q29udGFjdEZpZWxkcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTEwNEVDNUMyMjBBM0U0NDAwQ0JGNjdBIC8qIEpTTW9ja1BheW1l
bnRDb250YWN0RmllbGRzLmggKi87IH07CisJCUExMDRGMjQ0MTRDNzFGN0EwMDlFMkMyMyAvKiBD
YWNoZWRTVkdEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTEwNEYyNDIxNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTEwQkI1
ODUxNDg0RTNBNzAwQjJFODdBIC8qIFJlbmRlclNWR1JlY3QuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMEJCNTgzMTQ4NEUzQTcwMEIyRTg3QSAvKiBS
ZW5kZXJTVkdSZWN0LmggKi87IH07CisJCUExMEJCNThCMTQ4NEUzQjMwMEIyRTg3QSAvKiBSZW5k
ZXJTVkdTaGFwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTEwQkI1ODkxNDg0RTNCMzAwQjJFODdBIC8qIFJlbmRlclNWR1NoYXBlLmggKi87IH07CisJ
CUExMERCRjQ3MThGOTIzMTcwMDBENzBDNiAvKiBMZWdhY3lQcmV2aWV3TG9hZGVyQ2xpZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTBEQkY0NjE4
RjkyMzE3MDAwRDcwQzYgLyogTGVnYWN5UHJldmlld0xvYWRlckNsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUExMERDNzZCMTQ3NDdCQUIw
MDVFMjQ3MSAvKiBTdHlsZUdyaWREYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMTBEQzc2OTE0NzQ3QkFCMDA1RTI0NzEgLyogU3R5bGVHcmlkRGF0
YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUEx
MTBEQjlCMTRGNURGNzcwMEEwM0I5MyAvKiBTdHlsZUdyaWRJdGVtRGF0YS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTExMERCOUExNEY1REY3NzAwQTAz
QjkzIC8qIFN0eWxlR3JpZEl0ZW1EYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTExM0UwMjgyMzMxODI5MzAwOUMzM0EwIC8qIFBheW1lbnRT
ZXNzaW9uRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEExMTNFMDI3MjMzMTgyOTMwMDlDMzNBMCAvKiBQYXltZW50U2Vzc2lvbkVycm9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTExM0UwMkUy
MzMxQTEzNDAwOUMzM0EwIC8qIEFwcGxlUGF5Q2FuY2VsRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMTNFMDJCMjMzMUEwRTQwMDlDMzNBMCAv
KiBBcHBsZVBheUNhbmNlbEV2ZW50LmggKi87IH07CisJCUExMTc1MDlBMjQ3NDY4RDYwMEQ0RDI2
QyAvKiBBcHBsZVBheUluc3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDNTNEQ0QwMjQ0NjQ0OUEwMEE5
MzEyNCAvKiBBcHBsZVBheUluc3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaCAqLzsgfTsK
KwkJQTExNzUwQTAyNDc0NjhGMzAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTE3NTA5QzI0
NzQ2OEU1MDBENEQyNkMgLyogQXBwbGVQYXlJbnN0YWxsbWVudEl0ZW0uaCAqLzsgfTsKKwkJQTEx
NzUwQTEyNDc0NjhGNzAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtVHlwZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTExNzUwOUQyNDc0
NjhFNjAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtVHlwZS5oICovOyB9OworCQlB
MTFBRTBDQzFGRkQ2MDUzMDA0NzM0OEIgLyogTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMUFFMEM5MUZGRDYw
NTMwMDQ3MzQ4QiAvKiBNZXJjaGFudFZhbGlkYXRpb25FdmVudC5oICovOyB9OworCQlBMTFBRTBE
MzFGRkQ2MURGMDA0NzM0OEIgLyogSlNNZXJjaGFudFZhbGlkYXRpb25FdmVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTExQUUwRDExRkZENjFERjAw
NDczNDhCIC8qIEpTTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaCAqLzsgfTsKKwkJQTExRThDMDUx
QjFFMjhGNDAwMDNBN0M3IC8qIGNvcHlDdXJzb3IucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTFFOEMwMDFCMUUyOEJFMDAwM0E3QzcgLyogY29w
eUN1cnNvci5wbmcgKi87IH07CisJCUExMUU4QzA2MUIxRTI4RkEwMDAzQTdDNyAvKiBtb3ZlQ3Vy
c29yLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTExRThDMDExQjFFMjhCRTAwMDNBN0M3IC8qIG1vdmVDdXJzb3IucG5nICovOyB9OworCQlBMTFF
OEMwNzFCMUUyOEZFMDAwM0E3QzcgLyogbm9ydGhFYXN0U291dGhXZXN0UmVzaXplQ3Vyc29yLnBu
ZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTExRThD
MDIxQjFFMjhCRTAwMDNBN0M3IC8qIG5vcnRoRWFzdFNvdXRoV2VzdFJlc2l6ZUN1cnNvci5wbmcg
Ki87IH07CisJCUExMUU4QzA4MUIxRTI5MDIwMDAzQTdDNyAvKiBub3J0aFNvdXRoUmVzaXplQ3Vy
c29yLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTExRThDMDMxQjFFMjhCRTAwMDNBN0M3IC8qIG5vcnRoU291dGhSZXNpemVDdXJzb3IucG5nICov
OyB9OworCQlBMTFFOEMwOTFCMUUyOTA3MDAwM0E3QzcgLyogbm9ydGhXZXN0U291dGhFYXN0UmVz
aXplQ3Vyc29yLnBuZyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTExRThDMDQxQjFFMjhCRTAwMDNBN0M3IC8qIG5vcnRoV2VzdFNvdXRoRWFzdFJlc2l6
ZUN1cnNvci5wbmcgKi87IH07CisJCUExMjUzOEQ0MTNGOUI2MEEwMDAyNDc1NCAvKiBMYXlvdXRS
ZXBhaW50ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEExMjBBQ0EwMTNGOTk4MzcwMEZFNEFDNyAvKiBMYXlvdXRSZXBhaW50ZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTI3MDVDMzE2NTZCRDY1
MDBDMkUyN0MgLyogR3JpZFBvc2l0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMTI3MDVDMjE2NTZCRDY1MDBDMkUyN0MgLyogR3JpZFBvc2l0aW9u
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTEy
QTEwNTAxNjY0NDRGRDAwOEZBMzExIC8qIEdyaWRUcmFja1NpemUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMkExMDRFMTY2NDQ0REMwMDhGQTMxMSAv
KiBHcmlkVHJhY2tTaXplLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQTEyQzU5RUUyMDM1RkM5QjAwMTIyMzZCIC8qIEFwcGxlUGF5RXJyb3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBREZERkQ2MUU3
MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheUVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTEyQzU5RjAyMDM1RkNBQjAwMTIyMzZCIC8qIEFw
cGxlUGF5UGF5bWVudEF1dGhvcml6YXRpb25SZXN1bHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBREZERkQ4MUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBs
ZVBheVBheW1lbnRBdXRob3JpemF0aW9uUmVzdWx0LmggKi87IH07CisJCUExMkM1OUYxMjAzNUZD
QkYwMDEyMjM2QiAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBREZERkRBMUU3MUQ4REYwMDhGNUQz
NCAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTJDNTlGMjIwMzVGQ0Q2MDAxMjIzNkIgLyog
QXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBREZERkRDMUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBh
eVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUExMkM1OUYzMjAzNUZDRTIwMDEyMjM2QiAvKiBBcHBsZVBheVNo
aXBwaW5nTWV0aG9kVXBkYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQURGREZERTFFNzFEOERGMDA4RjVEMzQgLyogQXBwbGVQYXlTaGlwcGluZ01l
dGhvZFVwZGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUExMkM1OUY5MjAzNjBBQ0IwMDEyMjM2QiAvKiBKU0FwcGxlUGF5RXJyb3IuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBREZERkUyMUU3MURD
QTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5RXJyb3IuaCAqLzsgfTsKKwkJQTEyQzU5RkIyMDM2MEIw
MDAwMTIyMzZCIC8qIEpTQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFERkRGRTQxRTcxRENB
MDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5oICovOyB9
OworCQlBMTJDNTlGQzIwMzYwQjI3MDAxMjIzNkIgLyogSlNBcHBsZVBheVBheW1lbnRNZXRob2RV
cGRhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
REZERkU2MUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFVwZGF0ZS5o
ICovOyB9OworCQlBMTJDNTlGRDIwMzYwQjNFMDAxMjIzNkIgLyogSlNBcHBsZVBheVNoaXBwaW5n
Q29udGFjdFVwZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUFERkRGRTgxRTcxRENBMDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlTaGlwcGluZ0NvbnRh
Y3RVcGRhdGUuaCAqLzsgfTsKKwkJQTEyQzU5RkUyMDM2MEI0QTAwMTIyMzZCIC8qIEpTQXBwbGVQ
YXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUFERkRGRUExRTcxRENBMDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlTaGlw
cGluZ01ldGhvZFVwZGF0ZS5oICovOyB9OworCQlBMTM2QTAwRDExMzREQkQyMDBDQzhENTAgLyog
WE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMzZBMDBCMTEzNERCRDIwMENDOEQ1MCAvKiBY
TUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnRUaHJvdHRsZS5oICovOyB9OworCQlBMTNCNjE2QjI0
NzVFMDQ4MDBCQkU2REUgLyogQXBwbGVQYXlJbnN0YWxsbWVudFJldGFpbENoYW5uZWwuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExM0I2MTY3MjQ3NURG
QzUwMEJCRTZERSAvKiBBcHBsZVBheUluc3RhbGxtZW50UmV0YWlsQ2hhbm5lbC5oICovOyB9Owor
CQlBMTNCNjE3NDI0NzVFMzQyMDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50Q29uZmln
dXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTEzQjYxNzIyNDc1RTMxNTAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudENvbmZpZ3Vy
YXRpb24uaCAqLzsgfTsKKwkJQTEzQjYxNzUyNDc1RTM1RjAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJ
bnN0YWxsbWVudEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEExM0I2MTcxMjQ3NUUzMTQwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5zdGFsbG1lbnRJ
dGVtLmggKi87IH07CisJCUExM0I2MTc2MjQ3NUUzN0EwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5z
dGFsbG1lbnRJdGVtVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTEzQjYxNkUyNDc1RTMxMTAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVu
dEl0ZW1UeXBlLmggKi87IH07CisJCUExM0I2MTc3MjQ3NUUzQTMwMEJCRTZERSAvKiBKU0FwcGxl
UGF5SW5zdGFsbG1lbnRSZXRhaWxDaGFubmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMTNCNjE2RjI0NzVFMzEyMDBCQkU2REUgLyogSlNBcHBsZVBh
eUluc3RhbGxtZW50UmV0YWlsQ2hhbm5lbC5oICovOyB9OworCQlBMTQwNjE4QjFFMkVDQTBBMDAz
MkIzNEUgLyogTW9ja1ByZXZpZXdMb2FkZXJDbGllbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0MDYxODkxRTJFQ0EwQTAwMzJCMzRFIC8qIE1v
Y2tQcmV2aWV3TG9hZGVyQ2xpZW50LmNwcCAqLzsgfTsKKwkJQTE0MDYxOEMxRTJFQ0EwQTAwMzJC
MzRFIC8qIE1vY2tQcmV2aWV3TG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQwNjE4QTFFMkVDQTBBMDAzMkIzNEUgLyogTW9ja1By
ZXZpZXdMb2FkZXJDbGllbnQuaCAqLzsgfTsKKwkJQTE0MDkwRkIxQUE1MUUxRDAwOTExOTFBIC8q
IENvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlckNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0MDkwRkExQUE1MUUxRDAwOTExOTFBIC8qIENv
bnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlckNvY29hLm1tICovOyB9OworCQlBMTQwOTBGRDFBQTUx
RTQ4MDA5MTE5MUEgLyogQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQwOTBGQzFBQTUxRTQ4MDA5MTE5
MUEgLyogQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTE0NkQzMUExRjk5QkNGODAwRDI5MTk2IC8q
IEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ2RDMxOTFGOTlCQ0JCMDBEMjkxOTYgLyogSlNNb2NrUGF5
bWVudENvb3JkaW5hdG9yLmNwcCAqLzsgfTsKKwkJQTE0NkQzMUIxRjk5QkNGQjAwRDI5MTk2IC8q
IEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTE0NkQzMTgxRjk5QkNCQTAwRDI5MTk2IC8qIEpTTW9ja1BheW1l
bnRDb29yZGluYXRvci5oICovOyB9OworCQlBMTQ2RDMyMTFGOTlDQjFBMDBEMjkxOTYgLyogTW9j
a1BheW1lbnRBZGRyZXNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMTQ2RDMxQzFGOTlDOUMyMDBEMjkxOTYgLyogTW9ja1BheW1lbnRBZGRyZXNzLmgg
Ki87IH07CisJCUExNDZEMzIyMUY5OUQwRUMwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50QWRkcmVz
cy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ2
RDMyMDFGOTlDQTNFMDBEMjkxOTYgLyogSlNNb2NrUGF5bWVudEFkZHJlc3MuY3BwICovOyB9Owor
CQlBMTQ2RDMyMzFGOTlEMEVGMDBEMjkxOTYgLyogSlNNb2NrUGF5bWVudEFkZHJlc3MuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDZEMzFGMUY5OUNB
M0QwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50QWRkcmVzcy5oICovOyB9OworCQlBMTQ2RDMyNTFG
OTlENjk4MDBEMjkxOTYgLyogTW9ja1BheW1lbnRDb250YWN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ2RDMyNDFGOTlENjk4MDBEMjkxOTYgLyog
TW9ja1BheW1lbnRDb250YWN0LmggKi87IH07CisJCUExNDgzMkIwMTg3RjYxOEQwMERBNjNBNiAv
KiBXQUtBcHBLaXRTdHVicy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTE0ODMyOEMxODdGNTA4NzAwREE2M0E2IC8qIFdBS0FwcEtpdFN0dWJzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTE0ODMyQjEx
ODdGNjFFMTAwREE2M0E2IC8qIFdBS0FwcEtpdFN0dWJzLm0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzI4RDE4N0Y1MDg3MDBEQTYzQTYgLyogV0FL
QXBwS2l0U3R1YnMubSAqLzsgfTsKKwkJQTE0ODMyQjIxODdGNjFFRDAwREE2M0E2IC8qIFdBS0Ns
aXBWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
MTQ4MzI4RTE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQ2xpcFZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTQ4MzJCMzE4N0Y2MjkxMDBEQTYz
QTYgLyogV0FLQ2xpcFZpZXcubSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExNDgzMjhGMTg3RjUwODcwMERBNjNBNiAvKiBXQUtDbGlwVmlldy5tICovOyB9
OworCQlBMTQ4MzJCNDE4N0Y2MjlBMDBEQTYzQTYgLyogV0FLUmVzcG9uZGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzI5MDE4N0Y1MDg3MDBE
QTYzQTYgLyogV0FLUmVzcG9uZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQTE0ODMyQjUxODdGNjJGQzAwREE2M0E2IC8qIFdBS1Jlc3BvbmRl
ci5tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMy
OTExODdGNTA4NzAwREE2M0E2IC8qIFdBS1Jlc3BvbmRlci5tICovOyB9OworCQlBMTQ4MzJCNjE4
N0Y2MzFGMDBEQTYzQTYgLyogV0FLU2Nyb2xsVmlldy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyOTIxODdGNTA4NzAwREE2M0E2IC8qIFdBS1Nj
cm9sbFZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBMTQ4MzJCODE4N0Y2Mzg2MDBEQTYzQTYgLyogV0FLVmlldy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyOTQxODdGNTA4NzAwREE2M0E2
IC8qIFdBS1ZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlBMTQ4MzJCOTE4N0Y2M0Q1MDBEQTYzQTYgLyogV0FLVmlldy5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDgzMjk1MTg3RjUwODcwMERB
NjNBNiAvKiBXQUtWaWV3Lm1tICovOyB9OworCQlBMTQ4MzJCQjE4N0Y2NDMyMDBEQTYzQTYgLyog
V0FLV2luZG93LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTQ4MzI5NzE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLV2luZG93LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTE0ODMyQkUxODdGNjRDQzAwREE2
M0E2IC8qIFdLQ29udGVudE9ic2VydmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzJBMzE4N0Y1MDg3MDBEQTYzQTYgLyogV0tDb250ZW50
T2JzZXJ2YXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlBMTQ4MzJCRjE4N0Y2NTJDMDBEQTYzQTYgLyogV0tHcmFwaGljcy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQTQxODdGNTA4NzAw
REE2M0E2IC8qIFdLR3JhcGhpY3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBMTQ4MzJDMTE4N0Y2NTdBMDBEQTYzQTYgLyogV0tUeXBlcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQTYxODdG
NTA4NzAwREE2M0E2IC8qIFdLVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlBMTQ4MzJDMjE4N0Y2NUM3MDBEQTYzQTYgLyogV0tVdGlsaXRp
ZXMuYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDgz
MkE3MTg3RjUwODcwMERBNjNBNiAvKiBXS1V0aWxpdGllcy5jICovOyB9OworCQlBMTQ4MzJDMzE4
N0Y2NURGMDBEQTYzQTYgLyogV0tVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDgzMkE4MTg3RjUwODcwMERBNjNBNiAvKiBXS1V0aWxp
dGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUExNDgzMkM0MTg3RjY2M0MwMERBNjNBNiAvKiBXS1ZpZXcuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDgzMkE5MTg3RjUwODcwMERBNjNBNiAvKiBX
S1ZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlBMTQ4MzJDNjE4N0Y2NjhGMDBEQTYzQTYgLyogV0tWaWV3UHJpdmF0ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQUIxODdGNTA4NzAwREE2
M0E2IC8qIFdLVmlld1ByaXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBMTQ4MzJDNzE4N0Y2NkM4MDBEQTYzQTYgLyogV2ViQ29yZVRocmVh
ZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMy
OTkxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTQ4MzJDOTE4N0Y2NzZCMDBEQTYzQTYg
LyogV2ViQ29yZVRocmVhZEludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzI5QjE4N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVh
ZEludGVybmFsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQTE0ODMyQ0ExODdGNjc4MDAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRNZXNzYWdlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzI5QzE4
N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZE1lc3NhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTQ4MzJDQzE4N0Y2N0M0MDBEQTYz
QTYgLyogV2ViQ29yZVRocmVhZFJ1bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTE0ODMyOUUxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRS
dW4uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlB
MTQ4MzJDRjE4N0Y2ODQ3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZFN5c3RlbUludGVyZmFjZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQTEx
ODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTQ5MURBMzFGODU5
RDg3MDA5NUY1RDQgLyogUGF5bWVudFNlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNDkxREEyMUY4NTlEODcwMDk1RjVENCAvKiBQYXltZW50
U2Vzc2lvbi5oICovOyB9OworCQlBMTQ5Nzg2RjFBQkFGMzM4MDBDRUY3RTQgLyogQ29udGVudEZp
bHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0
OTc4NkQxQUJBRjMzODAwQ0VGN0U0IC8qIENvbnRlbnRGaWx0ZXIuaCAqLzsgfTsKKwkJQTE0OTc4
NzExQUJBRjNBNTAwQ0VGN0U0IC8qIFBsYXRmb3JtQ29udGVudEZpbHRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0OTc4NzAxQUJBRjNBNTAwQ0VG
N0U0IC8qIFBsYXRmb3JtQ29udGVudEZpbHRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUExNEJCMEEwMUY5ODEzQjgwMDYwNUEzNSAvKiBNb2Nr
UGF5bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTE0QkIwOUUxRjk4MTNCODAwNjA1QTM1IC8qIE1vY2tQYXltZW50LmggKi87IH07CisJCUExNUQ3
NTE2MUU2OEY3QzgwMEEzNUZCQyAvKiBCbG9iQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNUQ3NTEzMUU2OEY3QjEwMEEzNUZCQyAvKiBC
bG9iQ2FsbGJhY2suaCAqLzsgfTsKKwkJQTE1RDc1MUIxRTY4RjhBMzAwQTM1RkJDIC8qIEpTQmxv
YkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTVENzUxODFFNjhGODM2MDBBMzVGQkMgLyogSlNCbG9iQ2FsbGJhY2suaCAqLzsgfTsKKwkJ
QTE1RTMxRjQxRTBDQjBCNTAwNEIzNzFDIC8qIFF1aWNrTG9vay5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE1RTMxRjExRTBDQjBBQTAwNEIzNzFDIC8q
IFF1aWNrTG9vay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUExNUU2QkYxMUUyMTJBNkEwMDgwQUYzNCAvKiBGb3VuZGF0aW9uLmZyYW1ld29yayBp
biBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNUU2QkYw
MUUyMTJBNkEwMDgwQUYzNCAvKiBGb3VuZGF0aW9uLmZyYW1ld29yayAqLzsgfTsKKwkJQTE2NEEy
NDcyMTM0QkM3MTAwNTA5MTU2IC8qIFBheW1lbnRNZXRob2RDaGFuZ2VFdmVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE2NEEyNDQyMTM0QkM3MTAw
NTA5MTU2IC8qIFBheW1lbnRNZXRob2RDaGFuZ2VFdmVudC5oICovOyB9OworCQlBMTY0QTI1NTIx
MzRDMUNDMDA1MDkxNTYgLyogSlNQYXltZW50TWV0aG9kQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNjRBMjUxMjEzNEMxQ0IwMDUw
OTE1NiAvKiBKU1BheW1lbnRNZXRob2RDaGFuZ2VFdmVudC5oICovOyB9OworCQlBMTY3N0RGRDIx
M0UwMDY2MDBBMDhDMzQgLyogUGF5bWVudFZhbGlkYXRpb25FcnJvcnMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExNjc3REZBMjEzRTAwNjYwMEEwOEMz
NCAvKiBQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oICovOyB9OworCQlBMTY3N0UwMzIxM0UwMUM3
MDBBMDhDMzQgLyogSlNQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE2NzdFMDEyMTNFMDFDNTAwQTA4QzM0IC8q
IEpTUGF5bWVudFZhbGlkYXRpb25FcnJvcnMuaCAqLzsgfTsKKwkJQTE2NzdFMDgyMTNFMDI0QzAw
QTA4QzM0IC8qIFBheWVyRXJyb3JGaWVsZHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExNjc3RTA1MjEzRTAyNEMwMEEwOEMzNCAvKiBQYXllckVycm9y
RmllbGRzLmggKi87IH07CisJCUExNjc3RTBFMjEzRTAyQTAwMEEwOEMzNCAvKiBBZGRyZXNzRXJy
b3JzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTY3
N0UwQjIxM0UwMkEwMDBBMDhDMzQgLyogQWRkcmVzc0Vycm9ycy5oICovOyB9OworCQlBMTY3N0Ux
MzIxM0UwM0M2MDBBMDhDMzQgLyogSlNBZGRyZXNzRXJyb3JzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTY3N0UxMTIxM0UwM0M1MDBBMDhDMzQgLyog
SlNBZGRyZXNzRXJyb3JzLmggKi87IH07CisJCUExNjc3RTE3MjEzRTAzRjEwMEEwOEMzNCAvKiBK
U1BheWVyRXJyb3JGaWVsZHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExNjc3RTE1MjEzRTAzRjAwMEEwOEMzNCAvKiBKU1BheWVyRXJyb3JGaWVsZHMu
aCAqLzsgfTsKKwkJQTE2OUIwNDMyNDhGMDM3QjAwRUU4QjdCIC8qIFBheW1lbnRBUElWZXJzaW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTY5QjA0
MjI0OEYwMzdCMDBFRThCN0IgLyogUGF5bWVudEFQSVZlcnNpb24uaCAqLzsgfTsKKwkJQTE3NjNG
M0YxRTIwNTIzNDAwMUQ1OERFIC8qIFdlYkFyY2hpdmVEdW1wU3VwcG9ydC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE3NjNGM0QxRTIwNTIzNDAwMUQ1
OERFIC8qIFdlYkFyY2hpdmVEdW1wU3VwcG9ydC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUExNzYzRjQxMUUyMDU4NkUwMDFENThERSAvKiBDRk5l
dHdvcmsuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTE3NjNGNDAxRTIwNTg2RTAwMUQ1OERFIC8qIENGTmV0d29yay5mcmFtZXdvcmsg
Ki87IH07CisJCUExN0M4MTIzMEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZhY3Rvcnku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExN0M4MTIx
MEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZhY3RvcnkuaCAqLzsgfTsKKwkJQTE3RDI3
NUUxRUFDNTc5ODAwQkYwMUU3IC8qIE1lZGlhU2VsZWN0aW9uT3B0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTdEMjc1RDFFQUM1Nzk4MDBCRjAx
RTcgLyogTWVkaWFTZWxlY3Rpb25PcHRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlBMTdGRUU2NDFGODg5MzIyMDAyMUU4MTEgLyogUGF5bWVu
dFNlc3Npb25CYXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMTdGRUU2MzFGODg5MzIyMDAyMUU4MTEgLyogUGF5bWVudFNlc3Npb25CYXNlLmggKi87
IH07CisJCUExODBBRDVCMjE5RjgxQjAwMERDMDM5QSAvKiBXZWJDb3JlQWRkaXRpb25zLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE3RTRGMjYyMTlC
QzAxNjAwRTFDN0VFIC8qIFdlYkNvcmVBZGRpdGlvbnMubW0gKi87IH07CisJCUExODVCNDJBMUU4
MjExQTEwMERDOTExOCAvKiBMZWdhY3lQcmV2aWV3TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTg1QjQyODFFODIxMUExMDBEQzkxMTggLyog
TGVnYWN5UHJldmlld0xvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUExODg5MEFGMUFBMTNGMjUwMDI2QzMwMSAvKiBQYXJlbnRhbENvbnRy
b2xzQ29udGVudEZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTE4ODkwQUQxQUExM0YyNTAwMjZDMzAxIC8qIFBhcmVudGFsQ29udHJvbHNDb250
ZW50RmlsdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQTE5NTZGMUMyMzMxQTY3NzAwNTdFOUQyIC8qIEpTQXBwbGVQYXlDYW5jZWxFdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE5NTZGMUIy
MzMxQTY0NjAwNTdFOUQyIC8qIEpTQXBwbGVQYXlDYW5jZWxFdmVudC5oICovOyB9OworCQlBMTk1
NkYyMDIzMzFBOEM3MDA1N0U5RDIgLyogQXBwbGVQYXlTZXNzaW9uRXJyb3IuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExOTU2RjFEMjMzMUE4QzcwMDU3
RTlEMiAvKiBBcHBsZVBheVNlc3Npb25FcnJvci5oICovOyB9OworCQlBMTlBRUEyMTFBQUE4MDg2
MDBCNTJCMjUgLyogSlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTlBRUExRTFBQUE4MDZFMDBCNTJCMjUg
LyogSlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggKi87IH07CisJCUExOUFFQTIyMUFBQTgw
OEEwMEI1MkIyNSAvKiBKU01vY2tDb250ZW50RmlsdGVyU2V0dGluZ3MuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE5QUVBMUQxQUFBODA2RTAwQjUy
QjI1IC8qIEpTTW9ja0NvbnRlbnRGaWx0ZXJTZXR0aW5ncy5jcHAgKi87IH07CisJCUExOUQ5MzRC
MUFBMTFCMUUwMEI0NkMyNCAvKiBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE5RDkzNDkxQUExMUIx
RTAwQjQ2QzI0IC8qIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTFBQTlBQjkxRDIzOTExNTAw
RkVBREIzIC8qIENvbnRlbnRGaWx0ZXJCbG9ja2VkUGFnZS5odG1sIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUFBOUFCODFEMjM5MTE1MDBGRUFEQjMg
LyogQ29udGVudEZpbHRlckJsb2NrZWRQYWdlLmh0bWwgKi87IH07CisJCUExQURBRjdEMjM2MEZE
M0UwMDlDQjc3NiAvKiBQcmV2aWV3Q29udmVydGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUFEQUY3QjIzNjBGRDNEMDA5Q0I3NzYgLyog
UHJldmlld0NvbnZlcnRlckNsaWVudC5oICovOyB9OworCQlBMUFEQUY3RTIzNjBGRDNFMDA5Q0I3
NzYgLyogUHJldmlld0NvbnZlcnRlclByb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUFEQUY3QzIzNjBGRDNFMDA5Q0I3NzYgLyogUHJldmll
d0NvbnZlcnRlclByb3ZpZGVyLmggKi87IH07CisJCUExQUZFREU2MUY4QkZGNkQwMDg3MDEzRiAv
KiBNb2NrUGF5bWVudENvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMUFGRURFNDFGOEJGRjZEMDA4NzAxM0YgLyogTW9ja1BheW1lbnRD
b29yZGluYXRvci5oICovOyB9OworCQlBMUFGRURFNzFGOEJGRjZEMDA4NzAxM0YgLyogTW9ja1Bh
eW1lbnRDb29yZGluYXRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMUFGRURFNTFGOEJGRjZEMDA4NzAxM0YgLyogTW9ja1BheW1lbnRDb29yZGlu
YXRvci5jcHAgKi87IH07CisJCUExQjVCMjlFMUFBQTg0NkUwMDhCNjA0MiAvKiBNb2NrQ29udGVu
dEZpbHRlclNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExQjVCMjlDMUFBQTg0NkUwMDhCNjA0MiAvKiBNb2NrQ29udGVudEZpbHRlclNl
dHRpbmdzLmNwcCAqLzsgfTsKKwkJQTFCNUIyOUYxQUFBODQ2RjAwOEI2MDQyIC8qIE1vY2tDb250
ZW50RmlsdGVyU2V0dGluZ3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExQjVCMjlEMUFBQTg0NkUwMDhCNjA0MiAvKiBNb2NrQ29udGVudEZpbHRlclNl
dHRpbmdzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQTFCQjg1OUMyMTU5QUVBMTAwNjdFMDdEIC8qIEFwcGxlUGF5RXJyb3JDb2RlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUJCODU5OTIxNTlBRUEx
MDA2N0UwN0QgLyogQXBwbGVQYXlFcnJvckNvZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMUJCODVBMzIxNTlBRjU3MDA2N0UwN0QgLyogQXBw
bGVQYXlFcnJvckNvbnRhY3RGaWVsZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTFCQjg1QTAyMTU5QUY1NzAwNjdFMDdEIC8qIEFwcGxlUGF5RXJyb3JD
b250YWN0RmllbGQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlBMUJCODVBOTIxNTlCMDJDMDA2N0UwN0QgLyogTW9ja1BheW1lbnRFcnJvci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFCQjg1QTYyMTU5
QjAyQzAwNjdFMDdEIC8qIE1vY2tQYXltZW50RXJyb3IuaCAqLzsgfTsKKwkJQTFCQjg1QjIyMTU5
QjFBMTAwNjdFMDdEIC8qIEpTQXBwbGVQYXlFcnJvckNvZGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExQkI4NUFFMjE1OUIxQTAwMDY3RTA3RCAvKiBK
U0FwcGxlUGF5RXJyb3JDb2RlLmggKi87IH07CisJCUExQkI4NUIzMjE1OUIxQTEwMDY3RTA3RCAv
KiBKU0FwcGxlUGF5RXJyb3JDb250YWN0RmllbGQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExQkI4NUFGMjE1OUIxQTAwMDY3RTA3RCAvKiBKU0FwcGxl
UGF5RXJyb3JDb250YWN0RmllbGQuaCAqLzsgfTsKKwkJQTFCQjg1QjgyMTU5QjNBNDAwNjdFMDdE
IC8qIEpTTW9ja1BheW1lbnRFcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBMUJCODVCNDIxNTlCMzg5MDA2N0UwN0QgLyogSlNNb2NrUGF5bWVu
dEVycm9yLmNwcCAqLzsgfTsKKwkJQTFCQjg1QjkyMTU5QjNBRTAwNjdFMDdEIC8qIEpTTW9ja1Bh
eW1lbnRFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTFCQjg1QjUyMTU5QjM4QTAwNjdFMDdEIC8qIEpTTW9ja1BheW1lbnRFcnJvci5oICovOyB9
OworCQlBMUJGNkI4MjFBQTk2QzdEMDBBRjRBOEEgLyogTW9ja0NvbnRlbnRGaWx0ZXIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFCRjZCODAxQUE5
NkM3RDAwQUY0QThBIC8qIE1vY2tDb250ZW50RmlsdGVyLmNwcCAqLzsgfTsKKwkJQTFCRjZCODMx
QUE5NkM3RDAwQUY0QThBIC8qIE1vY2tDb250ZW50RmlsdGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUJGNkI4MTFBQTk2QzdEMDBBRjRBOEEgLyog
TW9ja0NvbnRlbnRGaWx0ZXIuaCAqLzsgfTsKKwkJQTFDMTUwN0ExRTNGMkIzRTAwMzJDOThDIC8q
IFByZXZpZXdDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExQzE1MDc4MUUzRjJCM0UwMDMyQzk4QyAvKiBQcmV2aWV3Q29udmVydGVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTFDQkVG
NjQxRjlGMTEyOTAwMjhERTdDIC8qIE1vY2tQYXltZW50TWV0aG9kLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUNCRUY2MzFGOUYxMTI5MDAyOERFN0Mg
LyogTW9ja1BheW1lbnRNZXRob2QuaCAqLzsgfTsKKwkJQTFDQzU2NjcxRjQ2MTQ3QTAwQTQ1NTVC
IC8qIEpTUGF5bWVudEFkZHJlc3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEExQ0M1NjY1MUY0NjE0NjgwMEE0NTU1QiAvKiBKU1BheW1lbnRBZGRyZXNz
LmggKi87IH07CisJCUExQ0M1NjY5MUY0NjE0ODAwMEE0NTU1QiAvKiBKU1BheW1lbnRDb21wbGV0
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2
NEUxRjQ2MTQ1MjAwQTQ1NTVCIC8qIEpTUGF5bWVudENvbXBsZXRlLmggKi87IH07CisJCUExQ0M1
NjZCMUY0NjE0ODUwMEE0NTU1QiAvKiBKU1BheW1lbnRDdXJyZW5jeUFtb3VudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2NjMxRjQ2MTQ2NjAw
QTQ1NTVCIC8qIEpTUGF5bWVudEN1cnJlbmN5QW1vdW50LmggKi87IH07CisJCUExQ0M1NjZEMUY0
NjE0OEEwMEE0NTU1QiAvKiBKU1BheW1lbnREZXRhaWxzQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2NTExRjQ2MTQ1NDAwQTQ1NTVCIC8q
IEpTUGF5bWVudERldGFpbHNCYXNlLmggKi87IH07CisJCUExQ0M1NjZGMUY0NjE0OEUwMEE0NTU1
QiAvKiBKU1BheW1lbnREZXRhaWxzSW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2NUExRjQ2MTQ1RDAwQTQ1NTVCIC8qIEpTUGF5bWVudERl
dGFpbHNJbml0LmggKi87IH07CisJCUExQ0M1NjcxMUY0NjE0OTMwMEE0NTU1QiAvKiBKU1BheW1l
bnREZXRhaWxzTW9kaWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExQ0M1NjVCMUY0NjE0NUUwMEE0NTU1QiAvKiBKU1BheW1lbnREZXRhaWxzTW9k
aWZpZXIuaCAqLzsgfTsKKwkJQTFDQzU2NzMxRjQ2MTQ5ODAwQTQ1NTVCIC8qIEpTUGF5bWVudEl0
ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExQ0M1
NjRGMUY0NjE0NTIwMEE0NTU1QiAvKiBKU1BheW1lbnRJdGVtLmggKi87IH07CisJCUExQ0M1Njc1
MUY0NjE0OUQwMEE0NTU1QiAvKiBKU1BheW1lbnRNZXRob2REYXRhLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUNDNTY0QzFGNDYxNDUwMDBBNDU1NUIg
LyogSlNQYXltZW50TWV0aG9kRGF0YS5oICovOyB9OworCQlBMUNDNTY3NzFGNDYxNEEyMDBBNDU1
NUIgLyogSlNQYXltZW50T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTFDQzU2NUMxRjQ2MTQ1RjAwQTQ1NTVCIC8qIEpTUGF5bWVudE9wdGlv
bnMuaCAqLzsgfTsKKwkJQTFDQzU2NzkxRjQ2MTRBNzAwQTQ1NTVCIC8qIEpTUGF5bWVudFJlcXVl
c3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExQ0M1
NjU3MUY0NjE0NUEwMEE0NTU1QiAvKiBKU1BheW1lbnRSZXF1ZXN0LmggKi87IH07CisJCUExQ0M1
NjdCMUY0NjE0QUQwMEE0NTU1QiAvKiBKU1BheW1lbnRSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2NjQxRjQ2MTQ2NzAwQTQ1NTVC
IC8qIEpTUGF5bWVudFJlc3BvbnNlLmggKi87IH07CisJCUExQ0M1NjdEMUY0NjE0QjIwMEE0NTU1
QiAvKiBKU1BheW1lbnRTaGlwcGluZ09wdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTFDQzU2NTkxRjQ2MTQ1QzAwQTQ1NTVCIC8qIEpTUGF5bWVu
dFNoaXBwaW5nT3B0aW9uLmggKi87IH07CisJCUExQ0M1NjdGMUY0NjE0QjcwMEE0NTU1QiAvKiBK
U1BheW1lbnRTaGlwcGluZ1R5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEExQ0M1NjUwMUY0NjE0NTMwMEE0NTU1QiAvKiBKU1BheW1lbnRTaGlwcGlu
Z1R5cGUuaCAqLzsgfTsKKwkJQTFENTA2MTQyMzMxRURENDAwMTRFRTRFIC8qIEpTQXBwbGVQYXlT
ZXNzaW9uRXJyb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEExRDUwNjExMjMzMUVEOTYwMDE0RUU0RSAvKiBKU0FwcGxlUGF5U2Vzc2lvbkVycm9yLmgg
Ki87IH07CisJCUExREY1QTdGMUY3RUJEMEIwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExREY1QTdDMUY3
RUJEMEIwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3QuaCAqLzsgfTsKKwkJQTFERjVBODYxRjdF
QkRGMjAwNThBNDc3IC8qIEFwcGxlUGF5TWVyY2hhbnRDYXBhYmlsaXR5LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMURGNUE4MzFGN0VCREYyMDA1OEE0
NzcgLyogQXBwbGVQYXlNZXJjaGFudENhcGFiaWxpdHkuaCAqLzsgfTsKKwkJQTFERjVBOEUxRjdF
QzAwMjAwNThBNDc3IC8qIEpTQXBwbGVQYXlNZXJjaGFudENhcGFiaWxpdHkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExREY1QThBMUY3RUMwMDAwMDU4
QTQ3NyAvKiBKU0FwcGxlUGF5TWVyY2hhbnRDYXBhYmlsaXR5LmggKi87IH07CisJCUExREY1QThG
MUY3RUMwMDIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFERjVBOEIxRjdFQzAwMTAwNThBNDc3IC8q
IEpTQXBwbGVQYXlSZXF1ZXN0LmggKi87IH07CisJCUExREY1QTk0MUY3RUM0MzIwMDU4QTQ3NyAv
KiBBcHBsZVBheUNvbnRhY3RGaWVsZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTFERjVBOTExRjdFQzQzMjAwNThBNDc3IC8qIEFwcGxlUGF5Q29udGFj
dEZpZWxkLmggKi87IH07CisJCUExREY1QTk5MUY3RUM4QzAwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5
Q29udGFjdEZpZWxkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMURGNUE5NzFGN0VDOEJGMDA1OEE0NzcgLyogSlNBcHBsZVBheUNvbnRhY3RGaWVsZC5o
ICovOyB9OworCQlBMURGNUFBMjFGN0VFMTEzMDA1OEE0NzcgLyogQXBwbGVQYXlQYXltZW50SGFu
ZGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFE
RjVBQTAxRjdFRTExMzAwNThBNDc3IC8qIEFwcGxlUGF5UGF5bWVudEhhbmRsZXIuaCAqLzsgfTsK
KwkJQTFERjVBQTYxRjdGNjRCQjAwNThBNDc3IC8qIFBheW1lbnRIYW5kbGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMURGNUFBNDFGN0Y2NEJCMDA1
OEE0NzcgLyogUGF5bWVudEhhbmRsZXIuaCAqLzsgfTsKKwkJQTFERjVBQUQxRjgwNzVGMDAwNThB
NDc3IC8qIEFwcGxlUGF5UmVxdWVzdEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExREY1QUFBMUY4MDc1RjAwMDU4QTQ3NyAvKiBBcHBsZVBheVJl
cXVlc3RCYXNlLmggKi87IH07CisJCUExREY1QUIzMUY4MDc3NTMwMDU4QTQ3NyAvKiBKU0FwcGxl
UGF5UmVxdWVzdEJhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEExREY1QUIxMUY4MDc3NTIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdEJhc2Uu
aCAqLzsgfTsKKwkJQTFERkQ1MjYyMzM0NTk0ODAwNDJGQ0RCIC8qIFBheW1lbnRTdW1tYXJ5SXRl
bXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExREZE
NTIyMjMzNDU5M0EwMDQyRkNEQiAvKiBQYXltZW50U3VtbWFyeUl0ZW1zLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTFFMDg2NUYyNDg5RDJCNTAw
RTQ5NkQ5IC8qIEFwcGxlUGF5U2V0dXBDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUUwODY1QzI0ODlEMkIxMDBFNDk2RDkgLyog
QXBwbGVQYXlTZXR1cENvbmZpZ3VyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlBMUUwODY2MDI0ODlEMkJBMDBFNDk2RDkgLyogQXBwbGVQ
YXlTZXR1cEZlYXR1cmVTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTFFMDg2NUUyNDg5RDJCMTAwRTQ5NkQ5IC8qIEFwcGxlUGF5U2V0dXBGZWF0
dXJlU3RhdGUuaCAqLzsgfTsKKwkJQTFFMDg2NjMyNDg5RDM0RTAwRTQ5NkQ5IC8qIE1vY2tBcHBs
ZVBheVNldHVwRmVhdHVyZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMUUwODY2MTI0ODlEMzQxMDBFNDk2RDkgLyogTW9ja0FwcGxlUGF5U2V0dXBG
ZWF0dXJlLmNwcCAqLzsgfTsKKwkJQTFFMDg2NjQyNDg5RDM1MzAwRTQ5NkQ5IC8qIE1vY2tBcHBs
ZVBheVNldHVwRmVhdHVyZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTFFMDg2NjIyNDg5RDM0MTAwRTQ5NkQ5IC8qIE1vY2tBcHBsZVBheVNldHVwRmVh
dHVyZS5oICovOyB9OworCQlBMUVENzc4RDFCRTMyOTQwMDBEQzE3OTEgLyogRGV2aWNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUVENzc4QjFCRTMy
OTQwMDBEQzE3OTEgLyogRGV2aWNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQTFGNjAwNDQxRjQ3NTdBOTAwNzdFODNGIC8qIFBheW1lbnRSZXF1
ZXN0VXBkYXRlRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEExRjYwMDQxMUY0NzU3QTkwMDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVwZGF0ZUV2
ZW50LmggKi87IH07CisJCUExRjYwMDQ5MUY0NzU5NEUwMDc3RTgzRiAvKiBQYXltZW50RGV0YWls
c1VwZGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTFGNjAwNDcxRjQ3NTk0RTAwNzdFODNGIC8qIFBheW1lbnREZXRhaWxzVXBkYXRlLmggKi87IH07
CisJCUExRjYwMDREMUY0NzVBNUUwMDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50
SW5pdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFG
NjAwNEIxRjQ3NUE1RTAwNzdFODNGIC8qIFBheW1lbnRSZXF1ZXN0VXBkYXRlRXZlbnRJbml0Lmgg
Ki87IH07CisJCUExRjYwMDU2MUY0NzY1MDUwMDc3RTgzRiAvKiBKU1BheW1lbnRSZXF1ZXN0VXBk
YXRlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMUY2MDA1MDFGNDc2NEZFMDA3N0U4M0YgLyogSlNQYXltZW50UmVxdWVzdFVwZGF0ZUV2
ZW50SW5pdC5oICovOyB9OworCQlBMUY2MDA1ODFGNDc2NTA1MDA3N0U4M0YgLyogSlNQYXltZW50
UmVxdWVzdFVwZGF0ZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMUY2MDA1MjFGNDc2NTAxMDA3N0U4M0YgLyogSlNQYXltZW50UmVxdWVzdFVw
ZGF0ZUV2ZW50LmggKi87IH07CisJCUExRjYwMDVBMUY0NzY1MDUwMDc3RTgzRiAvKiBKU1BheW1l
bnREZXRhaWxzVXBkYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBMUY2MDA1NDFGNDc2NTA0MDA3N0U4M0YgLyogSlNQYXltZW50RGV0YWlsc1VwZGF0
ZS5oICovOyB9OworCQlBMUY2Q0ZGRjFGRTA5NjIxMDAxODA3OEMgLyogQXBwbGVQYXlNb2RpZmll
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNkNG
RkMxRkUwOTYyMTAwMTgwNzhDIC8qIEFwcGxlUGF5TW9kaWZpZXIuaCAqLzsgfTsKKwkJQTFGNkQw
MDYxRkUwOTZGNjAwMTgwNzhDIC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExRjZEMDAzMUZFMDk2RjYw
MDE4MDc4QyAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RUeXBlLmggKi87IH07CisJCUExRjZEMDBG
MUZFMDk5OTQwMDE4MDc4QyAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExRjZEMDBFMUZFMDk5NjQw
MDE4MDc4QyAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaCAqLzsgfTsKKwkJQTFGNkQw
MTIxRkUwOTlCNDAwMTgwNzhDIC8qIEpTQXBwbGVQYXlNb2RpZmllci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNkQwMEMxRkUwOTkyMjAwMTgwNzhD
IC8qIEpTQXBwbGVQYXlNb2RpZmllci5oICovOyB9OworCQlBMUY3NkIxMzFGNDRDMjQ1MDAxNEMz
MTggLyogUGF5bWVudFJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEExRjc2QjEwMUY0NEMyNDUwMDE0QzMxOCAvKiBQYXltZW50UmVxdWVzdC5o
ICovOyB9OworCQlBMUY3NkIxOTFGNDRDMzkwMDAxNEMzMTggLyogUGF5bWVudE1ldGhvZERhdGEu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExRjc2QjE2
MUY0NEMzOTAwMDE0QzMxOCAvKiBQYXltZW50TWV0aG9kRGF0YS5oICovOyB9OworCQlBMUY3NkIx
RjFGNDRDM0ZFMDAxNEMzMTggLyogUGF5bWVudERldGFpbHNCYXNlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3NkIxQzFGNDRDM0ZFMDAxNEMzMTgg
LyogUGF5bWVudERldGFpbHNCYXNlLmggKi87IH07CisJCUExRjc2QjI1MUY0NEM0OTEwMDE0QzMx
OCAvKiBQYXltZW50RGV0YWlsc0luaXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEExRjc2QjIyMUY0NEM0OTEwMDE0QzMxOCAvKiBQYXltZW50RGV0YWls
c0luaXQuaCAqLzsgfTsKKwkJQTFGNzZCMkIxRjQ0QzRFRjAwMTRDMzE4IC8qIFBheW1lbnRPcHRp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3
NkIyODFGNDRDNEVGMDAxNEMzMTggLyogUGF5bWVudE9wdGlvbnMuaCAqLzsgfTsKKwkJQTFGNzZC
MzExRjQ0QzU1QTAwMTRDMzE4IC8qIFBheW1lbnRJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3NkIyRTFGNDRDNTVBMDAxNEMzMTggLyogUGF5
bWVudEl0ZW0uaCAqLzsgfTsKKwkJQTFGNzZCMzcxRjQ0QzYwRjAwMTRDMzE4IC8qIFBheW1lbnRD
dXJyZW5jeUFtb3VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTFGNzZCMzQxRjQ0QzYwRjAwMTRDMzE4IC8qIFBheW1lbnRDdXJyZW5jeUFtb3VudC5o
ICovOyB9OworCQlBMUY3NkIzRDFGNDRDRjI0MDAxNEMzMTggLyogUGF5bWVudFJlc3BvbnNlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3NkIzQTFG
NDRDRjI0MDAxNEMzMTggLyogUGF5bWVudFJlc3BvbnNlLmggKi87IH07CisJCUExRjc2QjQzMUY0
NENGN0YwMDE0QzMxOCAvKiBQYXltZW50QWRkcmVzcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNzZCNDAxRjQ0Q0Y3RjAwMTRDMzE4IC8qIFBheW1l
bnRBZGRyZXNzLmggKi87IH07CisJCUExRjc2QjQ5MUY0NEQwN0EwMDE0QzMxOCAvKiBQYXltZW50
U2hpcHBpbmdUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMUY3NkI0NjFGNDREMDdBMDAxNEMzMTggLyogUGF5bWVudFNoaXBwaW5nVHlwZS5oICov
OyB9OworCQlBMUY3NkI0RjFGNDREMjQyMDAxNEMzMTggLyogUGF5bWVudERldGFpbHNNb2RpZmll
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNzZC
NEMxRjQ0RDI0MjAwMTRDMzE4IC8qIFBheW1lbnREZXRhaWxzTW9kaWZpZXIuaCAqLzsgfTsKKwkJ
QTFGNzZCNTUxRjQ0RDJDNzAwMTRDMzE4IC8qIFBheW1lbnRTaGlwcGluZ09wdGlvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNzZCNTIxRjQ0RDJD
NzAwMTRDMzE4IC8qIFBheW1lbnRTaGlwcGluZ09wdGlvbi5oICovOyB9OworCQlBMUY3NkI1QjFG
NDREM0IyMDAxNEMzMTggLyogUGF5bWVudENvbXBsZXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3NkI1ODFGNDREM0IyMDAxNEMzMTggLyogUGF5
bWVudENvbXBsZXRlLmggKi87IH07CisJCUEyQjkyMTczMTZDNUNDNDIwMDQxRENEOSAvKiBJbnRS
ZWN0RXh0ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMkI5MjE3MjE2QzVDQzQyMDA0MURDRDkgLyogSW50UmVjdEV4dGVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUEzMUM0RTRGMTZFMDJBQjQw
MDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMzFDNEU0RTE2RTAyQUI0MDAyRjc5NTcgLyogT0VTVGV4
dHVyZUhhbGZGbG9hdC5oICovOyB9OworCQlBMzFDNEU1NDE2RTAyQjQwMDAyRjc5NTcgLyogSlNP
RVNUZXh0dXJlSGFsZkZsb2F0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBMzFDNEU1MzE2RTAyQjQwMDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZs
b2F0LmggKi87IH07CisJCUEzQUY5RDg2MjAzMjY4NjEwMDZDQUQwNiAvKiBVc2VyQWdlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzQUY5RDgyMjAz
MjUzMjQwMDZDQUQwNiAvKiBVc2VyQWdlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlBNDA5Qzk4NTExNkQwREREMDA3MTk3QkQgLyogQWNjZXNz
aWJpbGl0eVByb2dyZXNzSW5kaWNhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBNDA5Qzk4MzExNkQwREREMDA3MTk3QkQgLyogQWNjZXNzaWJpbGl0
eVByb2dyZXNzSW5kaWNhdG9yLmggKi87IH07CisJCUE0MjI2RTVDMTE2M0Q2OTUwMDhCODM5NyAv
KiBKU0hUTUxQcm9ncmVzc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE0MjI2RTVCMTE2M0Q2OTUwMDhCODM5NyAvKiBKU0hUTUxQcm9ncmVz
c0VsZW1lbnQuaCAqLzsgfTsKKwkJQTQzQkY1OTkxMTQ5MjkwQTAwQzY0M0NBIC8qIEhUTUxQcm9n
cmVzc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEE0M0JGNTk3MTE0OTI5MEEwMEM2NDNDQSAvKiBIVE1MUHJvZ3Jlc3NFbGVtZW50LmggKi87
IH07CisJCUE0M0JGNTlEMTE0OTI5MjgwMEM2NDNDQSAvKiBSZW5kZXJQcm9ncmVzcy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTQzQkY1OUIxMTQ5Mjky
ODAwQzY0M0NBIC8qIFJlbmRlclByb2dyZXNzLmggKi87IH07CisJCUE0NTQ0MjRCMTE5QjM2NjEw
MDlCRTkxMiAvKiBIVE1MTWV0ZXJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBNDU0NDI0OTExOUIzNjYxMDA5QkU5MTIgLyogSFRNTE1ldGVy
RWxlbWVudC5oICovOyB9OworCQlBNDU0NDI0RjExOUIzNjg3MDA5QkU5MTIgLyogUmVuZGVyTWV0
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE0NTQ0
MjREMTE5QjM2ODcwMDlCRTkxMiAvKiBSZW5kZXJNZXRlci5oICovOyB9OworCQlBNDU2RkEyNzEx
QUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE0NTZGQTI1MTFBRDRBODMwMDIwQjQyMCAvKiBMYWJl
bHNOb2RlTGlzdC5oICovOyB9OworCQlBNDU3MzRDRjFEM0FGRDU5MDE5MDYwOEYgLyogV29ya2Vy
QW5pbWF0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTQ1NzMzQ0YxRDNBRkQ1OTAxOTA2MDhGIC8qIFdvcmtlckFuaW1hdGlvbkNv
bnRyb2xsZXIuaCAqLzsgfTsKKwkJQTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBp
dGFsaXplLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
NTAxOTIwQzEzMkVCRjJFMDA4QkZFNTUgLyogQXV0b2NhcGl0YWxpemUuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBNTA3MUU4NTFDNTZEMERDMDA5
OTUxQkUgLyogUmVzb3VyY2VVc2FnZURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE1MDcxRTgyMUM1NkQwNzkwMDk5NTFCRSAvKiBSZXNvdXJjZVVz
YWdlRGF0YS5oICovOyB9OworCQlBNTA3MUU4NzFDNTZEMEUxMDA5OTUxQkUgLyogUmVzb3VyY2VV
c2FnZVRocmVhZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTUwNzFFODQxQzU2RDA3OTAwOTk1MUJFIC8qIFJlc291cmNlVXNhZ2VUaHJlYWQuaCAqLzsg
fTsKKwkJQTUxM0IzRDcxMTRCMTY2NjAwMUM0MjlCIC8qIEtleUV2ZW50Q29jb2EuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1Qzk3NENGMTE0ODVGRjEw
MDY2RjJBQiAvKiBLZXlFdmVudENvY29hLmggKi87IH07CisJCUE1MkIzNDhGMUZBM0JEQTYwMDhC
NjI0NiAvKiBTZXJ2aWNlV29ya2VyRGVidWdnYWJsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTUyQjM0OEMxRkEzQkQ3OTAwOEI2MjQ2IC8qIFNlcnZp
Y2VXb3JrZXJEZWJ1Z2dhYmxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQTUyQjM0OTYxRkEzRTI5MDAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJ
bnNwZWN0b3JQcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTUyQjM0OTMxRkEzRTI4NjAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJbnNwZWN0b3JQ
cm94eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUE1MkIzNDlFMUZBNDE3MDMwMDhCNjI0NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTJCMzQ5QzFGQTQxNkY4
MDA4QjYyNDYgLyogV29ya2VyRGVidWdnZXJQcm94eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1NDE2RkU2MTg4MTBFRjgwMDA5RkM1RiAvKiBZ
b3VUdWJlRW1iZWRTaGFkb3dFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBNTQxNkZFNDE4ODEwRUY4MDAwOUZDNUYgLyogWW91VHViZUVtYmVk
U2hhZG93RWxlbWVudC5oICovOyB9OworCQlBNTRBMEM2MjFEQjdGOEMxMDAxN0E5MEIgLyogV29y
a2VySW5zcGVjdG9yQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTU0QTBDNjAxREI3RjhCNzAwMTdBOTBCIC8qIFdvcmtlckluc3BlY3Rv
ckNvbnRyb2xsZXIuaCAqLzsgfTsKKwkJQTU0QTBDNjYxREI4MDUzNjAwMTdBOTBCIC8qIFdvcmtl
ckRlYnVnZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBNTRBMEM2NDFEQjgwNTMyMDAxN0E5MEIgLyogV29ya2VyRGVidWdnZXIuaCAqLzsgfTsKKwkJ
QTU0QTBDNjgxREI4MDdEOTAwMTdBOTBCIC8qIFdvcmtlclRvUGFnZUZyb250ZW5kQ2hhbm5lbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU0QTBDNjcx
REI4MDdEMDAwMTdBOTBCIC8qIFdvcmtlclRvUGFnZUZyb250ZW5kQ2hhbm5lbC5oICovOyB9Owor
CQlBNTRBMEM2QzFEQjgzMUY5MDAxN0E5MEIgLyogV29ya2VySW5zcGVjdG9yUHJveHkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NEEwQzZBMURCODMx
RjIwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94eS5oICovOyB9OworCQlBNTU0QjVGMzFF
MzgzOTNBMDAxRDRFMDMgLyogUGVyZm9ybWFuY2VVc2VyVGltaW5nLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU0QjVGMTFFMzgzOTM2MDAxRDRFMDMg
LyogUGVyZm9ybWFuY2VVc2VyVGltaW5nLmggKi87IH07CisJCUE1NTYzOUQxMUM2RjA5RTMwMDgw
NkQ4RSAvKiBXb3JrZXJDb25zb2xlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBNTU2MzlEMDFDNkVGRDU5MDA4MDZEOEUgLyogV29ya2VyQ29u
c29sZUNsaWVudC5oICovOyB9OworCQlBNTczMkIwQjEzNkExNjFEMDA1QzhEN0MgLyogRGF0ZUNv
bXBvbmVudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1NzhGNDM1MURFMDBFRUIw
MDNERkM2QSAvKiBQcm9taXNlUmVqZWN0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1NzhGNDMzMURFMDBFRDYwMDNERkM2QSAvKiBQcm9t
aXNlUmVqZWN0aW9uRXZlbnQuaCAqLzsgfTsKKwkJQTU3OEY0M0MxREUwMTQyMzAwM0RGQzZBIC8q
IEpTUHJvbWlzZVJlamVjdGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBNTc4RjQzQTFERTAxM0ZCMDAzREZDNkEgLyogSlNQcm9taXNlUmVq
ZWN0aW9uRXZlbnQuaCAqLzsgfTsKKwkJQTU3OEY0M0YxREUwQjYzMDAwM0RGQzZBIC8qIFJlamVj
dGVkUHJvbWlzZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE1NzhGNDNFMURFMEI2MkIwMDNERkM2QSAvKiBSZWplY3RlZFByb21pc2VUcmFj
a2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
QTU4MUVEMTMxRkIyODhDRjAwQ0VENEVDIC8qIFNlcnZpY2VXb3JrZXJBZ2VudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU4MUVEMTAxRkIyODhDODAw
Q0VENEVDIC8qIFNlcnZpY2VXb3JrZXJBZ2VudC5oICovOyB9OworCQlBNTg0MEUyNTE4N0I4QUMy
MDA4NDNCMTAgLyogV2ViSW5qZWN0ZWRTY3JpcHRIb3N0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTg0MEUyMzE4N0I4QUMyMDA4NDNCMTAgLyogV2Vi
SW5qZWN0ZWRTY3JpcHRIb3N0LmggKi87IH07CisJCUE1ODRGRTI2MTg2MzdEQUIwMDg0M0IxMCAv
KiBDb21tYW5kTGluZUFQSU1vZHVsZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTU4NEZFMjUxODYzN0RBQjAwODQzQjEwIC8qIENvbW1hbmRM
aW5lQVBJTW9kdWxlU291cmNlLmggKi87IH07CisJCUE1ODRGRTJDMTg2Mzg3MEYwMDg0M0IxMCAv
KiBDb21tYW5kTGluZUFQSU1vZHVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTU4NEZFMkExODYzODcwRjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJ
TW9kdWxlLmggKi87IH07CisJCUE1ODRGRTMwMTg2NENCODQwMDg0M0IxMCAvKiBXZWJJbmplY3Rl
ZFNjcmlwdE1hbmFnZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE1ODRGRTJFMTg2NENCODQwMDg0M0IxMCAvKiBXZWJJbmplY3RlZFNjcmlwdE1hbmFn
ZXIuaCAqLzsgfTsKKwkJQTU4NEZFMzUxODY0RDVBRjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJ
SG9zdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU4
NEZFMzIxODY0RDVBRjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJSG9zdC5oICovOyB9OworCQlB
NTg0RkUzQzE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1ODRGRTNBMTg2NEUyRDgw
MDg0M0IxMCAvKiBKU0NvbW1hbmRMaW5lQVBJSG9zdC5oICovOyB9OworCQlBNTg2MEU2RDIzMERF
MzAzMDA0NjFBQUUgLyogSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTg2MEU2QjIzMERFMkUxMDA0
NjFBQUUgLyogSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTU4NjBFNkUyMzBERTMwQTAwNDYx
QUFFIC8qIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU4NjBFNjgyMzBERTJFMDAwNDYxQUFFIC8q
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE1OEM1OUQxMUUzODJFQUUwMDQ3ODU5QyAvKiBK
U1BlcmZvcm1hbmNlTWFyay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQTU4QzU5Q0QxRTM4MkVBOTAwNDc4NTlDIC8qIEpTUGVyZm9ybWFuY2VNYXJrLmgg
Ki87IH07CisJCUE1OEM1OUQzMUUzODJFQjIwMDQ3ODU5QyAvKiBKU1BlcmZvcm1hbmNlTWVhc3Vy
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU4QzU5
Q0YxRTM4MkVBOTAwNDc4NTlDIC8qIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmggKi87IH07CisJCUE1
OTNDRjhCMTg0MDUzNTIwMEJGQ0UyNyAvKiBJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1OTNDRjhBMTg0MDUzNTIw
MEJGQ0UyNyAvKiBJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBNTlDMjMwQTIxRjI5MjA2MDA0RUM5MzkgLyog
SW5zcGVjdG9yQ1BVUHJvZmlsZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTU5QzIzMDgyMUYyOTIwNjAwNEVDOTM5IC8qIEluc3BlY3RvckNQ
VVByb2ZpbGVyQWdlbnQuaCAqLzsgfTsKKwkJQTVBMkFGMEMxODI5NzM0MzAwREUxNzI5IC8qIFBh
Z2VEZWJ1Z2dhYmxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBNUEyQUYwQTE4Mjk3MzQzMDBERTE3MjkgLyogUGFnZURlYnVnZ2FibGUuaCAqLzsgfTsK
KwkJQTVBN0FBNDMxMzJGMEVDQzAwRDNBM0MyIC8qIEF1dG9jYXBpdGFsaXplVHlwZXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QTdBQTQyMTMyRjBF
Q0MwMEQzQTNDMiAvKiBBdXRvY2FwaXRhbGl6ZVR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTVBOTkzM0QxRTM3RkIxOTAwNUI1RTREIC8q
IFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE1QTk5MzM2MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2Vy
dmVyLmggKi87IH07CisJCUE1QTk5MzNGMUUzN0ZCMUYwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9i
c2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE1QTk5MzM4MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyQ2Fs
bGJhY2suaCAqLzsgfTsKKwkJQTVBOTkzNDExRTM3RkIyODAwNUI1RTREIC8qIFBlcmZvcm1hbmNl
T2JzZXJ2ZXJFbnRyeUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE1QTk5MzNCMUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVy
RW50cnlMaXN0LmggKi87IH07CisJCUE1QTk5MzQ4MUUzODA5QzYwMDVCNUU0RCAvKiBKU1BlcmZv
cm1hbmNlT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE1QTk5MzQzMUUzODA5OTkwMDVCNUU0RCAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIu
aCAqLzsgfTsKKwkJQTVBOTkzNEExRTM4MDlDQjAwNUI1RTREIC8qIEpTUGVyZm9ybWFuY2VPYnNl
cnZlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBNUE5OTM0NTFFMzgwOTk5MDA1QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2Fs
bGJhY2suaCAqLzsgfTsKKwkJQTVBOTkzNEMxRTM4MDlDRjAwNUI1RTREIC8qIEpTUGVyZm9ybWFu
Y2VPYnNlcnZlckVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTVBOTkzNDcxRTM4MDk5OTAwNUI1RTREIC8qIEpTUGVyZm9ybWFuY2VPYnNl
cnZlckVudHJ5TGlzdC5oICovOyB9OworCQlBNUFGQjM1MDExNTE1MUE3MDBCMDQ1Q0IgLyogU3Rl
cFJhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
NUFGQjM0RTExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTVCODFDQTcxRkFBNDQ2MjAwMzdEMUU2
IC8qIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVCODFDOTcxRkFBNDQyNjAwMzdEMUU2IC8qIElu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oICovOyB9OworCQlBNUI4MUNBODFGQUE0NDYy
MDAzN0QxRTYgLyogSW5zcGVjdG9yQ2FudmFzQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQzkxMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNw
ZWN0b3JDYW52YXNBZ2VudC5oICovOyB9OworCQlBNUI4MUNBOTFGQUE0NDYyMDAzN0QxRTYgLyog
SW5zcGVjdG9yQ1NTQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE1QjgxQ0ExMUZBQTQ0MjcwMDM3RDFFNiAvKiBJbnNwZWN0b3JDU1NBZ2VudC5o
ICovOyB9OworCQlBNUI4MUNBQTFGQUE0NDYyMDAzN0QxRTYgLyogSW5zcGVjdG9yRGF0YWJhc2VB
Z2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVC
ODFDOTMxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckRhdGFiYXNlQWdlbnQuaCAqLzsgfTsK
KwkJQTVCODFDQUIxRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3BlY3RvckRPTUFnZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUI4MUM4NjFGQUE0NDI2
MDAzN0QxRTYgLyogSW5zcGVjdG9yRE9NQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQUMxRkFBNDQ2
MjAwMzdEMUU2IC8qIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQ0EzMUZBQTQ0MjcwMDM3RDFFNiAv
KiBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50LmggKi87IH07CisJCUE1QjgxQ0FEMUZBQTQ0NjIw
MDM3RDFFNiAvKiBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQzhDMUZBQTQ0MjYwMDM3RDFFNiAvKiBJ
bnNwZWN0b3JET01TdG9yYWdlQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQUUxRkFBNDQ2MjAwMzdE
MUU2IC8qIEluc3BlY3RvckluZGV4ZWREQkFnZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUI4MUM5RTFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVj
dG9ySW5kZXhlZERCQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQUYxRkFBNDQ2MjAwMzdEMUU2IC8q
IEluc3BlY3RvckxheWVyVHJlZUFnZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBNUI4MUM4RjFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yTGF5
ZXJUcmVlQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQjAxRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3Bl
Y3Rvck1lbW9yeUFnZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBNUI4MUM4RDFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yTWVtb3J5QWdlbnQu
aCAqLzsgfTsKKwkJQTVCODFDQjExRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3BlY3Rvck5ldHdvcmtB
Z2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVC
ODFDOTQxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3Rvck5ldHdvcmtBZ2VudC5oICovOyB9Owor
CQlBNUI4MUNCMjFGQUE0NDYyMDAzN0QxRTYgLyogSW5zcGVjdG9yUGFnZUFnZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUI4MUM4OTFGQUE0NDI2
MDAzN0QxRTYgLyogSW5zcGVjdG9yUGFnZUFnZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTVCODFDQjMxRkFBNDQ2MjAwMzdEMUU2IC8qIElu
c3BlY3RvclRpbWVsaW5lQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE1QjgxQzhCMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JUaW1lbGlu
ZUFnZW50LmggKi87IH07CisJCUE1QjgxQ0I0MUZBQTQ0NjIwMDM3RDFFNiAvKiBJbnNwZWN0b3JX
b3JrZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTVCODFDOEExRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvcldvcmtlckFnZW50LmggKi87
IH07CisJCUE1QjgxQ0I1MUZBQTQ0NjIwMDM3RDFFNiAvKiBXZWJDb25zb2xlQWdlbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQzhFMUZBQTQ0
MjYwMDM3RDFFNiAvKiBXZWJDb25zb2xlQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQjYxRkFBNDQ2
MjAwMzdEMUU2IC8qIFdlYkRlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQzlCMUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJEZWJ1
Z2dlckFnZW50LmggKi87IH07CisJCUE1QjgxQ0I3MUZBQTQ0NjIwMDM3RDFFNiAvKiBXZWJIZWFw
QWdlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1
QjgxQzlGMUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJIZWFwQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFD
QzIxRkFBNDRCQzAwMzdEMUU2IC8qIFBhZ2VDb25zb2xlQWdlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QjgxQ0JCMUZBQTQ0QjcwMDM3RDFFNiAv
KiBQYWdlQ29uc29sZUFnZW50LmggKi87IH07CisJCUE1QjgxQ0MzMUZBQTQ0QkMwMDM3RDFFNiAv
KiBQYWdlRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTVCODFDQkUxRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VEZWJ1Z2dlckFnZW50
LmggKi87IH07CisJCUE1QjgxQ0M0MUZBQTQ0QkMwMDM3RDFFNiAvKiBQYWdlSGVhcEFnZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUI4MUNCQzFG
QUE0NEI3MDAzN0QxRTYgLyogUGFnZUhlYXBBZ2VudC5oICovOyB9OworCQlBNUI4MUNDNTFGQUE0
NEJDMDAzN0QxRTYgLyogUGFnZVJ1bnRpbWVBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVCODFDQkYxRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VS
dW50aW1lQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFDQ0QxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtl
ckNvbnNvbGVBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTVCODFDQ0ExRkFBNDREQTAwMzdEMUU2IC8qIFdvcmtlckNvbnNvbGVBZ2VudC5oICov
OyB9OworCQlBNUI4MUNDRTFGQUE0NERFMDAzN0QxRTYgLyogV29ya2VyRGVidWdnZXJBZ2VudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVCODFDQ0Mx
RkFBNDREQTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2VyQWdlbnQuaCAqLzsgfTsKKwkJQTVCODFD
Q0YxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVCODFDQzkxRkFBNDREQTAwMzdEMUU2
IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oICovOyB9OworCQlBNUNCMDUyNDFGQjUxRjMzMDAwODlC
OTcgLyogUGFnZU5ldHdvcmtBZ2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTVDQjA1MjExRkI1MUYxNzAwMDg5Qjk3IC8qIFBhZ2VOZXR3b3JrQWdl
bnQuaCAqLzsgfTsKKwkJQTVDQjA1MjUxRkI1MUYzQTAwMDg5Qjk3IC8qIFdvcmtlck5ldHdvcmtB
Z2VudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVD
QjA1MjMxRkI1MUYyNDAwMDg5Qjk3IC8qIFdvcmtlck5ldHdvcmtBZ2VudC5oICovOyB9OworCQlB
NUNFOUYzRjFFNEM0MTc0MDAxQkJFN0MgLyogUmVzb3VyY2VUaW1pbmcuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1Q0U5RjNDMUU0QkM1ODYwMDFCQkU3
QyAvKiBSZXNvdXJjZVRpbWluZy5oICovOyB9OworCQlBNURFQkRBNDE2RkI5MDg3MDA4MzZGRTAg
LyogV2ViS2l0UGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVERUJEQTAxNkZCOTA4NzAwODM2RkUw
IC8qIFdlYktpdFBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQuaCAqLzsgfTsKKwkJQTVG
MzZEM0IxOEY3NTg3MjAwNTRDMDI0IC8qIFBhZ2VEZWJ1Z2dlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTVGMzZEMzkxOEY3NTg3MjAwNTRDMDI0IC8q
IFBhZ2VEZWJ1Z2dlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUE2MTQ4QTc5MTJFNDFFM0IwMDQ0QTc4NCAvKiBKU0hUTUxLZXlnZW5FbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNjE0OEE3
NzEyRTQxRTNCMDA0NEE3ODQgLyogSlNIVE1MS2V5Z2VuRWxlbWVudC5oICovOyB9OworCQlBNkQx
Njk2NDEzNDZCNEMxMDAwRUI3NzAgLyogU2hhZG93Um9vdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTZEMTY5NjMxMzQ2QjRDMTAwMEVCNzcwIC8qIFNo
YWRvd1Jvb3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBNkQ1QTk5RDE2MjlENzAwMDAyOTczMzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05v
ZGVEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTZENUE5OUIxNjI5RDcwMDAwMjk3MzMwIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2Rl
RGVsZWdhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBNzE1MUJEODEyRjE1NThGMDA1QTBGNjQgLyogVGV4dENoZWNrZXJDbGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3MTUxQkQ3MTJGMTU1
OEYwMDVBMEY2NCAvKiBUZXh0Q2hlY2tlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE3MTVFNjUzMTM0QkJCRUMwMEQ4RTcxMyAvKiBQ
cm9ncmVzc1NoYWRvd0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE3MTVFNjUxMTM0QkJCRUMwMEQ4RTcxMyAvKiBQcm9ncmVzc1NoYWRvd0Vs
ZW1lbnQuaCAqLzsgfTsKKwkJQTcxODc2MEUwQjJBMTIwMTAwQTE2RUNFIC8qIERyYWdBY3Rpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzE4NzYw
RDBCMkExMjAxMDBBMTZFQ0UgLyogRHJhZ0FjdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBNzIzRjc3QjE0ODRDQTRDMDA4QzZEQkUgLyog
UGxhdGZvcm1FeHBvcnRNYWNyb3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE3MjNGNzdBMTQ4NENBNEMwMDhDNkRCRSAvKiBQbGF0Zm9ybUV4cG9ydE1h
Y3Jvcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUE3Mjc2M0JGMTY2ODlCRkIwMDJGQ0FDQiAvKiBVc2VyQWN0aW9uRWxlbWVudFNldC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTcyNzYzQkUxNjY4OUJG
QjAwMkZDQUNCIC8qIFVzZXJBY3Rpb25FbGVtZW50U2V0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTczRjk1RkYxMkM5N0JGRTAwMzFBQUY5IC8q
IFJvdW5kZWRSZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBNzNGOTVGRDEyQzk3QkZFMDAzMUFBRjkgLyogUm91bmRlZFJlY3QuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBNzQwQjU5NTE0QzkzNUFC
MDBBNzdGQTQgLyogSlNNYWxsb2NTdGF0aXN0aWNzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0I0RUE2OTE0QzkzNDg0MDBDOEY1QkYgLyogSlNNYWxs
b2NTdGF0aXN0aWNzLmggKi87IH07CisJCUE3NDBCNUE1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU0lu
dGVybmFsU2V0dGluZ3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE3QjRFQTc5MTRDOTM0ODQwMEM4RjVCRiAvKiBKU0ludGVybmFsU2V0dGluZ3MuaCAq
LzsgfTsKKwkJQTc0MEI1QTcxNEM5MzVBRjAwQTc3RkE0IC8qIEpTSW50ZXJuYWxTZXR0aW5ncy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0I0RUE3
ODE0QzkzNDg0MDBDOEY1QkYgLyogSlNJbnRlcm5hbFNldHRpbmdzLmNwcCAqLzsgfTsKKwkJQTc1
RTQ5NzYxMDc1MkFDQjAwQzlCODk2IC8qIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc1RTQ5NzQxMDc1MkFDQjAw
QzlCODk2IC8qIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE3NUU4Qjg5MEUxREUyRDYwMDdGMjQ4MSAvKiBG
RUJsZW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
NzVFOEI4MTBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5oICovOyB9OworCQlBNzVFOEI4QjBF
MURFMkQ2MDA3RjI0ODEgLyogRkVDb2xvck1hdHJpeC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc1RThCODMwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29s
b3JNYXRyaXguaCAqLzsgfTsKKwkJQTc1RThCOEQwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29tcG9u
ZW50VHJhbnNmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEE3NUU4Qjg1MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggKi87
IH07CisJCUE3NUU4QjhGMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvc2l0ZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc1RThCODcwRTFERTJENjAw
N0YyNDgxIC8qIEZFQ29tcG9zaXRlLmggKi87IH07CisJCUE3NkU1RjdGMTM1RTBEQ0YwMEE2OTgz
NyAvKiBSZW5kZXJlZERvY3VtZW50TWFya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBNzZFNUY3RTEzNUUwRENGMDBBNjk4MzcgLyogUmVuZGVyZWRE
b2N1bWVudE1hcmtlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUE3Nzk3OTFBMEQ2QjlEMEMwMDM4NTFCOSAvKiBJbWFnZURhdGEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Nzk3OTE0MEQ2QjlEMEMw
MDM4NTFCOSAvKiBJbWFnZURhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBNzc5NzkyOTBENkI5RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Nzk3OTI1
MEQ2QjlFNjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oICovOyB9OworCQlBNzdCNDFBMDEyRTY3
NUE5MDA1NDM0M0QgLyogVGV4dEV2ZW50SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzdCNDE5RjEyRTY3NUE5MDA1NDM0M0QgLyogVGV4
dEV2ZW50SW5wdXRUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQTc3RDAwMTIxMzNCMEFFQjAwRDY2NThDIC8qIFRleHRDaGVja2luZy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc3RDAwMTExMzNC
MEFFQjAwRDY2NThDIC8qIFRleHRDaGVja2luZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUE3OEZFMTNDMTIzNjZCMTAwMEFDRThEMCAvKiBTcGVs
bENoZWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE3OEZFMTNBMTIzNjZCMTAwMEFDRThEMCAvKiBTcGVsbENoZWNrZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBNzlCQURBMjE2MUU3RjNGMDBD
MkU2NTIgLyogUnVsZUZlYXR1cmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE3OUJBRDlFMTYxRTdGM0YwMEMyRTY1MiAvKiBSdWxlRmVhdHVyZS5oICov
OyB9OworCQlBNzlCQURBNDE2MUU3RjNGMDBDMkU2NTIgLyogUnVsZVNldC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTc5QkFEQTAxNjFFN0YzRjAwQzJF
NjUyIC8qIFJ1bGVTZXQuaCAqLzsgfTsKKwkJQTdCNkU2OUYwQjI5MUE5NjAwRDA1MjlGIC8qIERy
YWdEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
N0I2RTY5RDBCMjkxQTk2MDBEMDUyOUYgLyogRHJhZ0RhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBN0JCRTI2NzExQUZCM0YyMDAwNUVBMDMg
LyogSlNIVE1MTWV0ZXJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBN0JCRTI2NTExQUZCM0YyMDAwNUVBMDMgLyogSlNIVE1MTWV0ZXJFbGVt
ZW50LmggKi87IH07CisJCUE3QkY3RURGMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRp
bmdzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3
QkY3RURDMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmNwcCAqLzsgfTsKKwkJ
QTdCRjdFRTAxNEM5MTc1QTAwMTQ0ODlEIC8qIEludGVybmFsU2V0dGluZ3MuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3QkY3RUREMTRDOTE3NUEwMDE0
NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmggKi87IH07CisJCUE3QzlBQkY5MTM1N0EzQkYwMEY1
NTAzRiAvKiBEZXRhaWxzTWFya2VyQ29udHJvbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdDOUFCRjcxMzU3QTNCRjAwRjU1MDNGIC8qIERldGFpbHNN
YXJrZXJDb250cm9sLmggKi87IH07CisJCUE3Q0E1OTVEMEIyN0JEOUUwMEZBMDIxRCAvKiBEcmFn
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTdDQTU5NUIwQjI3QkQ5RTAwRkEwMjFEIC8qIERyYWdDb250cm9sbGVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTdDQTU5NjMwQjI3QzFG
MjAwRkEwMjFEIC8qIERyYWdDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE3Q0E1OTYyMEIyN0MxRjIwMEZBMDIxRCAvKiBEcmFnQ2xpZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTdDRkIz
RDIwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdDRkIzRDAwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJ
bWFnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUE3RDIwRjYzMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdEMjBGNjExMDdGNDA2OTAw
QTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggKi87IH07CisJCUE3RDIwRjZEMTA3RjQzOEIw
MEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDIwRjZCMTA3RjQzOEIwMEE4MDM5MiAvKiBXZWJHTEFjdGl2
ZUluZm8uaCAqLzsgfTsKKwkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlw
dExvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTdENkIzNDcwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlwdExvYWRlci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE3RDZCMzQ5MEY2MTEw
NDUwMEZGOUZEMSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RDZCMzQ3MEY2MTEwNDUwMEZGOUZEMSAvKiBX
b3JrZXJGb250TG9hZFJlcXVlc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBN0RCRjhERTEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5n
SGVscGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
N0RCRjhEQzEyNzY5MTlDMDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi87IH07CisJ
CUE4MEQ2NzA4MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRleHRQbGF0Zm9ybVByaXZh
dGVDRy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgw
RDY3MDcwRTlFOURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNH
LmggKi87IH07CisJCUE4MEU2Q0U2MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQcmltaXRpdmVWYWx1
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZD
QkMwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1ByaW1pdGl2ZVZhbHVlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTgwRTZDRTgwQTE5ODlDQTAwN0ZC
OEM1IC8qIENTU1NoYWRvd1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBODBFNkNCRTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTU2hhZG93VmFsdWUu
aCAqLzsgfTsKKwkJQTgwRTZDRTkwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1ZhbHVlTGlzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZDQkYwQTE5
ODlDQTAwN0ZCOEM1IC8qIENTU1ZhbHVlTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MEU2Q0VEMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NG
b250VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4MEU2Q0MzMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250VmFsdWUuaCAqLzsgfTsKKwkJQTgw
RTZDRUUwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFNkNDNDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NT
VmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlBODBFNkNGMjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUnVsZUxpc3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0M4MEExOTg5Q0EwMDdGQjhD
NSAvKiBDU1NSdWxlTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4MEU2Q0Y2MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbXBvcnRSdWxlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFNkNDQzBB
MTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MEU2Q0ZBMEExOTg5Q0EwMDdGQjhDNSAvKiBD
U1NJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBODBFNkNEMDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1hZ2VWYWx1ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MEU2Q0ZCMEExOTg5
Q0EwMDdGQjhDNSAvKiBQYWlyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBODBFNkNEMTBBMTk4OUNBMDA3RkI4QzUgLyogUGFpci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MEU2Q0ZEMEExOTg5Q0Ew
MDdGQjhDNSAvKiBDU1NGb250RmFjZVJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0QzMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250RmFj
ZVJ1bGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlBODBFNkNGRjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJvcGVydHkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0Q1MEExOTg5Q0EwMDdGQjhD
NSAvKiBDU1NQcm9wZXJ0eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4MEU2RDAwMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQYWdlUnVsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZDRDYwQTE5
ODlDQTAwN0ZCOEM1IC8qIENTU1BhZ2VSdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTgwRTZEMDEwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0lu
aGVyaXRlZFZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBODBFNkNENzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW5oZXJpdGVkVmFsdWUuaCAqLzsg
fTsKKwkJQTgwRTZEMDMwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU01lZGlhUnVsZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZDRDkwQTE5ODlDQTAw
N0ZCOEM1IC8qIENTU01lZGlhUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUE4MEU2RDA0MEExOTg5Q0EwMDdGQjhDNSAvKiBDb3VudGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFNkNEQTBB
MTk4OUNBMDA3RkI4QzUgLyogQ291bnRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUE4MEU2RDA4MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbml0
aWFsVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4MEU2Q0RFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbml0aWFsVmFsdWUuaCAqLzsgfTsKKwkJ
QTgwRTZEMEMwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1N0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZDRTIwQTE5ODlDQTAwN0ZCOEM1
IC8qIENTU1N0eWxlUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4MEU2RDBEMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NSdWxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFNkNFMzBBMTk4OUNB
MDA3RkI4QzUgLyogQ1NTUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUE4MEU2REZDMEExOTkwNjcwMDdGQjhDNSAvKiBTdHlsZVByb3BlcnRp
ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2
REZBMEExOTkwNjcwMDdGQjhDNSAvKiBTdHlsZVByb3BlcnRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODBFNkUwRjBBMTk5MTFDMDA3RkI4
QzUgLyogQ1NTU3R5bGVEZWNsYXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTgwRTZFMEQwQTE5OTExQzAwN0ZCOEM1IC8qIENTU1N0eWxlRGVj
bGFyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBODBFNzM1MjBBMTk5Qzc3MDA3RkI4QzUgLyogQ1NTU2VsZWN0b3IuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU3MzRCMEExOTlDNzcwMDdG
QjhDNSAvKiBDU1NTZWxlY3Rvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUE4MEU3QTE4MEExOUMzRDYwMDdGQjhDNSAvKiBKU0hUTUxNZXRhRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgw
RTdBMTYwQTE5QzNENjAwN0ZCOEM1IC8qIEpTSFRNTE1ldGFFbGVtZW50LmggKi87IH07CisJCUE4
MEU3QjBDMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU3QjAyMEExOUQ2MDYwMDdG
QjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuaCAqLzsgfTsKKwkJQTgwRTdCMEQwQTE5RDYwNjAw
N0ZCOEM1IC8qIEpTSFRNTExpbmtFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFN0IwMzBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MTGlu
a0VsZW1lbnQuaCAqLzsgfTsKKwkJQTgwRTdCMEUwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTFN0
eWxlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTgwRTdCMDQwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTFN0eWxlRWxlbWVudC5oICovOyB9
OworCQlBODBFN0IxMTBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MQmFzZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU3QjA3MEExOUQ2
MDYwMDdGQjhDNSAvKiBKU0hUTUxCYXNlRWxlbWVudC5oICovOyB9OworCQlBODBFN0IxNTBBMTlE
NjA2MDA3RkI4QzUgLyogSlNIVE1MSGVhZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU3QjBCMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hU
TUxIZWFkRWxlbWVudC5oICovOyB9OworCQlBODBFN0U5NzBBMUE4M0UzMDA3RkI4QzUgLyogSlNI
VE1MSW5wdXRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBODBFN0U4RDBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MSW5wdXRFbGVtZW50Lmgg
Ki87IH07CisJCUE4MEU3RTk5MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxPcHRpb25FbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFN0U4
RjBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MT3B0aW9uRWxlbWVudC5oICovOyB9OworCQlBODBF
N0U5QjBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MT3B0R3JvdXBFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODBFN0U5MTBBMUE4M0UzMDA3
RkI4QzUgLyogSlNIVE1MT3B0R3JvdXBFbGVtZW50LmggKi87IH07CisJCUE4MEU3RTlEMEExQTgz
RTMwMDdGQjhDNSAvKiBKU0hUTUxUZXh0QXJlYUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU3RTkzMEExQTgzRTMwMDdGQjhDNSAvKiBK
U0hUTUxUZXh0QXJlYUVsZW1lbnQuaCAqLzsgfTsKKwkJQTgwRTdFOUYwQTFBODNFMzAwN0ZCOEM1
IC8qIEpTSFRNTEJ1dHRvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4MEU3RTk1MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxCdXR0b25F
bGVtZW50LmggKi87IH07CisJCUE4MTM2OUNDMDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MSW5wdXRF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
ODEzNjlCMDA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTElucHV0RWxlbWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MTM2OUNFMDk3Mzc0RjYw
MEQ3NDQ2MyAvKiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODEzNjlCMjA5NzM3NEY1MDBENzQ0NjMgLyogSFRN
TEZvcm1Db250cm9sRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUE4MTM2OUQwMDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MRm9ybUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MTM2
OUI0MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MRm9ybUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODEzNjlEMjA5NzM3NEY2MDBENzQ0
NjMgLyogSFRNTEJ1dHRvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4MTM2OUI2MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MQnV0dG9uRWxl
bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUE4MTM2OUQ0MDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MRmllbGRTZXRFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODEzNjlCODA5NzM3NEY1
MDBENzQ0NjMgLyogSFRNTEZpZWxkU2V0RWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MTM2OUQ2MDk3Mzc0RjYwMEQ3NDQ2MyAvKiBI
VE1MVGV4dEFyZWFFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBODEzNjlCQTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTFRleHRBcmVhRWxlbWVu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4
MTM2OUQ4MDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MU2VsZWN0RWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgxMzY5QkMwOTczNzRGNTAwRDc0
NDYzIC8qIEhUTUxTZWxlY3RFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTgxMzY5REEwOTczNzRGNjAwRDc0NDYzIC8qIEhUTUxPcHRp
b25zQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTgxMzY5QkUwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxPcHRpb25zQ29sbGVjdGlvbi5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MTM2
OURDMDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MT3B0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgxMzY5QzAwOTczNzRGNTAwRDc0NDYz
IC8qIEhUTUxPcHRpb25FbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQTgxMzY5REUwOTczNzRGNjAwRDc0NDYzIC8qIEhUTUxPcHRHcm91
cEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4MTM2OUMyMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0R3JvdXBFbGVtZW50LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTgxMzY5RTAwOTcz
NzRGNjAwRDc0NDYzIC8qIEhUTUxMZWdlbmRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODEzNjlDNDA5NzM3NEY1MDBENzQ0NjMgLyogSFRN
TExlZ2VuZEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlBODEzNjlFMjA5NzM3NEY2MDBENzQ0NjMgLyogSFRNTExhYmVsRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgxMzY5QzYw
OTczNzRGNTAwRDc0NDYzIC8qIEhUTUxMYWJlbEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODEzNjlFNDA5NzM3NEY2MDBENzQ0NjMg
LyogSFRNTEtleWdlbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE4MTM2OUM4MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MS2V5Z2VuRWxlbWVu
dC5oICovOyB9OworCQlBODE4NUYzOTA5NzY1NzY2MDA1ODI2RDkgLyogRG9jdW1lbnRUeXBlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODE4NUYzMTA5
NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnRUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTgxODVGM0IwOTc2NTc2NjAwNTgyNkQ5IC8qIERP
TUltcGxlbWVudGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBODE4NUYzMzA5NzY1NzY1MDA1ODI2RDkgLyogRE9NSW1wbGVtZW50YXRpb24uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODE4NUYz
RDA5NzY1NzY2MDA1ODI2RDkgLyogRG9jdW1lbnRGcmFnbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgxODVGMzUwOTc2NTc2NTAwNTgyNkQ5IC8q
IERvY3VtZW50RnJhZ21lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlBODE4NUY0MDA5NzY1NzY2MDA1ODI2RDkgLyogRG9jdW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MTg1RjM4MDk3NjU3
NjUwMDU4MjZEOSAvKiBEb2N1bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUE4MTg1RjQ1MDk3NjU3NjYwMDU4MjZEOSAvKiBEb2N1bWVudEZv
bnRMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4MTg1RjM1NTk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1bWVudEZvbnRMb2FkZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODE4NzIxQjA5NzdE
M0MwMDA1ODI2RDkgLyogTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4MTg3MjEwMDk3N0QzQzAwMDU4MjZEOSAvKiBOb2RlTGlzdC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4MTg3MjFD
MDk3N0QzQzAwMDU4MjZEOSAvKiBDb250YWluZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODE4NzIxMTA5NzdEM0MwMDA1ODI2RDkgLyogQ29u
dGFpbmVyTm9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUE4MTg3MjFFMDk3N0QzQzAwMDU4MjZEOSAvKiBOYW1lTm9kZUxpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MTg3MjEzMDk3N0QzQzAw
MDU4MjZEOSAvKiBOYW1lTm9kZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlBODE4NzIyMDA5NzdEM0MwMDA1ODI2RDkgLyogQ2hpbGROb2Rl
TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgx
ODcyMTUwOTc3RDNDMDAwNTgyNkQ5IC8qIENoaWxkTm9kZUxpc3QuaCAqLzsgfTsKKwkJQTgxODcy
MjMwOTc3RDNDMDAwNTgyNkQ5IC8qIE5hbWVkTm9kZU1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgxODcyMTgwOTc3RDNDMDAwNTgyNkQ5IC8qIE5h
bWVkTm9kZU1hcC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUE4MjM5RTAxMDlCM0NGOEEwMEI2MDY0MSAvKiBMb2dnaW5nLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODIzOURGRjA5QjNDRjhBMDBCNjA2
NDEgLyogTG9nZ2luZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUE4MjRCNDY1MEUyRUYyRUEwMDgxQTdCNyAvKiBUZXh0UnVuLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODI0QjQ2NDBFMkVGMkVBMDA4
MUE3QjcgLyogVGV4dFJ1bi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4MzNDN0NBMEEyQ0YwNkIwMEQ1NzY2NCAvKiBTVkdOYW1lcy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2NTY1ODFFODA5RDE1
MDhEMDAwRTYxRDcgLyogU1ZHTmFtZXMuY3BwICovOyB9OworCQlBODMzQzdDQzBBMkNGMDc0MDBE
NTc2NjQgLyogWExpbmtOYW1lcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA2NTY1ODFFQTA5RDE1MDhEMDAwRTYxRDcgLyogWExpbmtOYW1lcy5jcHAg
Ki87IH07CisJCUE4MzNDODBDMEEyQ0YyNTYwMEQ1NzY2NCAvKiBYTUxOYW1lcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODMzQzgwQTBBMkNGMjU2
MDBENTc2NjQgLyogWE1MTmFtZXMuY3BwICovOyB9OworCQlBODMzQzgwRDBBMkNGMjU2MDBENTc2
NjQgLyogWE1MTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE4MzNDODBCMEEyQ0YyNTYwMEQ1NzY2NCAvKiBYTUxOYW1lcy5oICovOyB9OworCQlB
ODNCNzhGQzBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZVVyaUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4M0I3OEYyMENDQUZG
MTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5oICovOyB9OworCQlBODNCNzhG
RTBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZVNyY0VsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4M0I3OEY0MENDQUZGMTUwMDBC
MDgyNSAvKiBKU1NWR0ZvbnRGYWNlU3JjRWxlbWVudC5oICovOyB9OworCQlBODNCNzkwMDBDQ0FG
RjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4M0I3OEY2MENDQUZGMTUwMDBCMDgy
NSAvKiBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5oICovOyB9OworCQlBODNCNzkwMjBDQ0FG
RjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZU5hbWVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODNCNzhGODBDQ0FGRjE1MDAwQjA4MjUg
LyogSlNTVkdGb250RmFjZU5hbWVFbGVtZW50LmggKi87IH07CisJCUE4M0I3OTA1MENDQUZGMTUw
MDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgzQjc4RkIwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZH
Rm9udEZhY2VFbGVtZW50LmggKi87IH07CisJCUE4NEQ4MjdDMTFEMzMzRUQwMDk3Mjk5MCAvKiBS
YXdEYXRhRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE4NEQ4MjdCMTFEMzMzRUQwMDk3Mjk5MCAvKiBSYXdEYXRhRG9jdW1lbnRQ
YXJzZXIuaCAqLzsgfTsKKwkJQTg0RDgyQzExMUQzNDc0ODAwOTcyOTkwIC8qIFNjcmlwdGFibGVE
b2N1bWVudFBhcnNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTg0RDgyQkYxMUQzNDc0ODAwOTcyOTkwIC8qIFNjcmlwdGFibGVEb2N1bWVudFBhcnNl
ci5oICovOyB9OworCQlBODRFQkQ4MzBDQjhDOTc3MDAwNzk2MDkgLyogSlNTdHlsZVNoZWV0TGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg0RUJE
ODEwQ0I4Qzk3NzAwMDc5NjA5IC8qIEpTU3R5bGVTaGVldExpc3QuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODUzMTIzRDExRDA0NzFCMDBENEQw
NzcgLyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODUzMTIzQzExRDA0NzFCMDBENEQwNzcgLyogRnJh
Z21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg2M0UyMDExMzQzNDEyMDAwMjc0OTI2IC8qIFVuaWNvZGVC
aWRpLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODYz
RTIwMDEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGkuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODY2MjlDRjA5REEyQjQ3MDA5NjMzQTUg
LyogSlNVSUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBODY2MjlDOTA5REEyQjQ3MDA5NjMzQTUgLyogSlNVSUV2ZW50LmggKi87IH07CisJCUE4
NjYyOUQxMDlEQTJCNDgwMDk2MzNBNSAvKiBKU01vdXNlRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NjYyOUNCMDlEQTJCNDcwMDk2MzNBNSAv
KiBKU01vdXNlRXZlbnQuaCAqLzsgfTsKKwkJQTg2NjI5RDMwOURBMkI0ODAwOTYzM0E1IC8qIEpT
S2V5Ym9hcmRFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5oICovOyB9
OworCQlBODY2MjlEMzA5REEyQjQ4MDA5NjMzQTYgLyogSlNJbnB1dEV2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODY2MjlDRDA5REEyQjQ3MDA5
NjMzQTYgLyogSlNJbnB1dEV2ZW50LmggKi87IH07CisJCUE4NjYyOUQzMDlEQTJCNDgwMDk2MzNB
NyAvKiBKU1N0YXRpY1JhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBODY2MjlDRDA5REEyQjQ3MDA5NjMzQTcgLyogSlNTdGF0aWNSYW5nZS5oICov
OyB9OworCQlBODcxRDQ1NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NzFENDRDMEEx
MjdDQkMwMEIxMkE2OCAvKiBIVE1MUGx1Z0luRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4NzFENDU4MEExMjdDQkMwMEIxMkE2OCAv
KiBIVE1MUGFyYW1FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBODcxRDQ0RTBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4NzFE
NDVBMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MT2JqZWN0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3MUQ0NTAwQTEyN0NCQzAwQjEyQTY4
IC8qIEhUTUxPYmplY3RFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQTg3MUQ0NUMwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxFbWJlZEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
NzFENDUyMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MRW1iZWRFbGVtZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg3MURCMjUwQTE1MEJENjAw
QjEyQTY4IC8qIEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREIxNzBBMTUwQkQ2MDBCMTJBNjggLyogSFRN
TFRhYmxlU2VjdGlvbkVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBODcxREIyNzBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3
MURCMTkwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUVsZW1lbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODcxREIyQTBBMTUwQkQ2MDBC
MTJBNjggLyogSFRNTFRhYmxlQ2VsbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NzFEQjFDMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFi
bGVDZWxsRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUE4NzFEQjJCMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFibGVDYXB0aW9uRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3
MURCMUQwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg3MURCMkMwQTE1
MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZVBhcnRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREIxRTBBMTUwQkQ2MDBCMTJBNjggLyog
SFRNTFRhYmxlUGFydEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBODcxREIyRjBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlQ29s
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTg3MURCMjEwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUNvbEVsZW1lbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODcxREIzMTBBMTUw
QkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlUm93RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3MURCMjMwQTE1MEJENjAwQjEyQTY4IC8qIEhU
TUxUYWJsZVJvd0VsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlBODcxREMxRjBBMTUyMDU3MDBCMTJBNjggLyogSFRNTEJhc2VFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREMx
MzBBMTUyMDU3MDBCMTJBNjggLyogSFRNTEJhc2VFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg3MURDMjAwQTE1MjA1NzAwQjEyQTY4
IC8qIEhUTUxMaW5rRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTg3MURDMTQwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxMaW5rRWxlbWVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4NzFE
QzIzMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MU3R5bGVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREMxNzBBMTUyMDU3MDBCMTJBNjgg
LyogSFRNTFN0eWxlRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUE4NzFEQzI0MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MTWV0YUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NzFE
QzE4MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MTWV0YUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODcxREMyNTBBMTUyMDU3MDBCMTJB
NjggLyogSFRNTFNjcmlwdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4NzFEQzE5MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MU2NyaXB0RWxl
bWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUE4NzFEQzI4MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MVGl0bGVFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREMxQzBBMTUyMDU3MDBC
MTJBNjggLyogSFRNTFRpdGxlRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUE4NzFERTI3MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRt
bEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4NzFERTFCMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBODcxREUyODBBMTUyQUM4
MDBCMTJBNjggLyogSFRNTEZyYW1lU2V0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3MURFMUMwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxG
cmFtZVNldEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlBODcxREUyQTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTElGcmFtZUVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NzFERTFF
MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSUZyYW1lRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4NzFERTJCMEExNTJBQzgwMEIxMkE2
OCAvKiBIVE1MRnJhbWVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBODcxREUxRjBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEZyYW1lRWxlbWVu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4
NzFERTJDMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MQm9keUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4NzFERTIwMEExNTJBQzgwMEIxMkE2
OCAvKiBIVE1MQm9keUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBODcxREUyRDBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEhlYWRFbGVt
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcx
REUyMTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEhlYWRFbGVtZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg3MURFRDEwQTE1MzBDNzAwQjEy
QTY4IC8qIFJlbmRlckZyYW1lU2V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBODcxREVDOTBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQu
aCAqLzsgfTsKKwkJQTg3MURFRDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREVDQjBBMTUz
MEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWUuaCAqLzsgfTsKKwkJQTg3MURGRTMwQTE1Mzc2QjAw
QjEyQTY4IC8qIFJlbmRlclJlcGxhY2VkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBODcxREZERjBBMTUzNzZCMDBCMTJBNjggLyogUmVuZGVyUmVwbGFj
ZWQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlB
ODcxREZFNDBBMTUzNzZCMDBCMTJBNjggLyogUmVuZGVyV2lkZ2V0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODcxREZFMDBBMTUzNzZCMDBCMTJBNjgg
LyogUmVuZGVyV2lkZ2V0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQTg3NDhCRTAxMkNCRjJEQzAwMUZCQTQxIC8qIEhhc2hUb29scy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg3NDhCREYxMkNCRjJE
QzAwMUZCQTQxIC8qIEhhc2hUb29scy5oICovOyB9OworCQlBODgyREEyMzE1OTM4NDhEMDAwMTE1
RUQgLyogQ1NTVG9TdHlsZU1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQTg4MkRBMjIxNTkzODQ4RDAwMDExNUVEIC8qIENTU1RvU3R5bGVNYXAuaCAq
LzsgfTsKKwkJQTg4M0RGMjgwRjNEMDQ1RDAwRjE5QkY2IC8qIFZpc2libGVTZWxlY3Rpb24uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4ODNERjI2MEYz
RDA0NUQwMEYxOUJGNiAvKiBWaXNpYmxlU2VsZWN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQTg4QUQ1MkYwOTUyNEI5MjAwMUREMTk2IC8q
IFF1YXJ0ekNvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQTg1RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1YXJ0ekNvcmUuZnJh
bWV3b3JrICovOyB9OworCQlBODhERDQ4NzBCNDYyOUEzMDBDMDI5OTAgLyogUGF0aFRyYXZlcnNh
bFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
ODhERDQ4NjBCNDYyOUEzMDBDMDI5OTAgLyogUGF0aFRyYXZlcnNhbFN0YXRlLmggKi87IH07CisJ
CUE4OTk0MzI4MEI0MjMzODgwMEQ3QzgwMiAvKiBCaXRtYXBJbWFnZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTg5OTQzMjYwQjQyMzM4NzAwRDdDODAy
IC8qIEJpdG1hcEltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQTg5Q0NDNTMwRjQ0RTk4MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNw
YW5Db21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBODlDQ0M1MTBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQu
aCAqLzsgfTsKKwkJQThDMjI4QTExMUQ1NzIyRTAwRDVBN0QzIC8qIERlY29kZWREYXRhRG9jdW1l
bnRQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4QzIyODlGMTFENTcyMkUwMEQ1QTdEMyAvKiBEZWNvZGVkRGF0YURvY3VtZW50UGFyc2VyLmgg
Ki87IH07CisJCUE4QzQwMjkzMTM0OEIyMjIwMDYzRjFFNSAvKiBCaWRpUnVuTGlzdC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDNDAyOTIxMzQ4QjIy
MjAwNjNGMUU1IC8qIEJpZGlSdW5MaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDNEE3RkQwOUQ1NjMyNzAwMDNBQzhEIC8qIFN0eWxlZEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
QzRBN0VCMDlENTYzMjcwMDAzQUM4RCAvKiBTdHlsZWRFbGVtZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDNEE4MDcwOUQ1NjMyNzAwMDNB
QzhEIC8qIEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE4QzRBN0Y1MDlENTYzMjcwMDAzQUM4RCAvKiBFbGVtZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDNEE4MEIwOUQ1NjMyNzAw
MDNBQzhEIC8qIEF0dHJpYnV0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQThDNEE3RjkwOUQ1NjMyNzAwMDNBQzhEIC8qIEF0dHJpYnV0ZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4QzRBODBEMDlE
NTYzMjcwMDAzQUM4RCAvKiBBdHRyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBOEM0QTdGQjA5RDU2MzI3MDAwM0FDOEQgLyogQXR0ci5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4Q0I0MTNFMEU4NjMz
RkQwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4Q0I0MTAyMEU4NUI4QTUwMDMyQzRGMCAvKiBEYXNoQXJyYXkuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOENDQkI0
OTE1MUY4MzE2MDBBQjdDRTkgLyogRE9NV2luZG93V2ViRGF0YWJhc2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4Q0NCQjQ3MTUxRjgzMTYwMEFCN0NF
OSAvKiBET01XaW5kb3dXZWJEYXRhYmFzZS5oICovOyB9OworCQlBOENGRjA0RTBBMTU0RjA5MDAw
QTQyMzQgLyogQXV0b1RhYmxlTGF5b3V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBOENGRjA0OTBBMTU0RjA5MDAwQTQyMzQgLyogQXV0b1RhYmxlTGF5
b3V0LmggKi87IH07CisJCUE4Q0ZGMDRGMEExNTRGMDkwMDBBNDIzNCAvKiBGaXhlZFRhYmxlTGF5
b3V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOENG
RjA0QTBBMTU0RjA5MDAwQTQyMzQgLyogRml4ZWRUYWJsZUxheW91dC5oICovOyB9OworCQlBOENG
RjA1MTBBMTU0RjA5MDAwQTQyMzQgLyogVGFibGVMYXlvdXQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4Q0ZGMDRDMEExNTRGMDkwMDBBNDIzNCAvKiBU
YWJsZUxheW91dC5oICovOyB9OworCQlBOENGRjVFMTBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5
Um9vdElubGluZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQThDRkY1REEwQTE1NUEwNTAwMEE0MjM0IC8qIExlZ2FjeVJvb3RJbmxpbmVCb3guaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOENGRjVF
MzBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5saW5lRmxvd0JveC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDRkY1REMwQTE1NUEwNTAwMEE0MjM0
IC8qIExlZ2FjeUlubGluZUZsb3dCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlBOENGRjVFNTBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5s
aW5lQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
OENGRjVERTBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5saW5lQm94LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDRkY2QkUwQTE1NjExODAw
MEE0MjM0IC8qIExlZ2FjeUVsbGlwc2lzQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOENGRjZCRDBBMTU2MTE4MDAwQTQyMzQgLyogTGVnYWN5RWxs
aXBzaXNCb3guaCAqLzsgfTsKKwkJQThDRkY3QTMwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxRdW90
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4Q0ZGNzk5MEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MUXVvdGVFbGVtZW50LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDRkY3QTYwQTE1Njk3
ODAwMEE0MjM0IC8qIEhUTUxGb250RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQThDRkY3OUMwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxGb250
RWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUE4Q0ZGN0E3MEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MTW9kRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDRkY3OUQwQTE1Njk3ODAw
MEE0MjM0IC8qIEhUTUxNb2RFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDRkY3QUEwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxCUkVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
Q0ZGN0EwMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MQlJFbGVtZW50LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThDRkY3QUIwQTE1Njk3ODAwMEE0
MjM0IC8qIEhUTUxBbmNob3JFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBOENGRjdBMTBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTEFuY2hvckVs
ZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlBOEQwNUZBODBBMjNCMzAxMDA1RTcyMDMgLyogSlNDU1NSdWxlTGlzdC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThEMDVGQTYwQTIzQjMwMTAwNUU3
MjAzIC8qIEpTQ1NTUnVsZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlBOEQwNjRGQzBBMjNDMENDMDA1RTcyMDMgLyogSlNIVE1MRm9ybUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
RDA2NEZBMEEyM0MwQ0MwMDVFNzIwMyAvKiBKU0hUTUxGb3JtRWxlbWVudC5oICovOyB9OworCQlB
OEQwNkIzOTBBMjY1RENEMDA1RTcyMDMgLyogSFRNTE5hbWVzLmggaW4gQ29weSBHZW5lcmF0ZWQg
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEQwNkIzNzBBMjY1
RENEMDA1RTcyMDMgLyogSFRNTE5hbWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
KTsgfTsgfTsKKwkJQThEMDZCM0EwQTI2NURDRDAwNUU3MjAzIC8qIEhUTUxOYW1lcy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEQwNkIzODBBMjY1
RENEMDA1RTcyMDMgLyogSFRNTE5hbWVzLmNwcCAqLzsgfTsKKwkJQThEMjIzRkUxNkI1MkU0RTAw
MTU3Mjg4IC8qIEhUTUxSZXNvdXJjZVByZWxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThEMjIzRkMxNkI1MkU0RTAwMTU3Mjg4IC8qIEhUTUxS
ZXNvdXJjZVByZWxvYWRlci5oICovOyB9OworCQlBOERGM0ZDRTA5N0ZBMEZDMDA1Mjk4MUIgLyog
SFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4REYzRkM2MDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MRm9ybUNv
bnRyb2xzQ29sbGVjdGlvbi5oICovOyB9OworCQlBOERGM0ZEMDA5N0ZBMEZDMDA1Mjk4MUIgLyog
SFRNTENvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEE4REYzRkM4MDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MQ29sbGVjdGlvbi5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4REYzRkQ0MDk3
RkEwRkMwMDUyOTgxQiAvKiBIVE1MTmFtZUNvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4REYzRkNDMDk3RkEwRkIwMDUyOTgxQiAvKiBI
VE1MTmFtZUNvbGxlY3Rpb24uaCAqLzsgfTsKKwkJQThERjRBRTkwOTgwQzQyQzAwNTI5ODFCIC8q
IFJlbmRlclRhYmxlQ2VsbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQThERjRBREYwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRhYmxlQ2VsbC5oICov
OyB9OworCQlBOERGNEFFQjA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4REY0QUUxMDk4MEM0MkMw
MDUyOTgxQiAvKiBSZW5kZXJUYWJsZS5oICovOyB9OworCQlBOERGNEFFRTA5ODBDNDJDMDA1Mjk4
MUIgLyogUmVuZGVyVGFibGVSb3cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE4REY0QUU0MDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJsZVJvdy5o
ICovOyB9OworCQlBOERGNEFFRjA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVTZWN0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOERGNEFF
NTA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVTZWN0aW9uLmggKi87IH07CisJCUE4REY0
QUYxMDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJsZUNvbC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThERjRBRTcwOTgwQzQyQzAwNTI5ODFCIC8q
IFJlbmRlclRhYmxlQ29sLmggKi87IH07CisJCUE4RUE3OUYxMEExOTE2REYwMEE4RUY1RiAvKiBI
VE1MT0xpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBOEVBNzlFNTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTE9MaXN0RWxlbWVudC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4RUE3OUYy
MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MVUxpc3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEVBNzlFNjBBMTkxNkRGMDBBOEVGNUYgLyog
SFRNTFVMaXN0RWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4RUE3OUY0MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MTWVudUVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4RUE3OUU4
MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MTWVudUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOEVBNzlGNjBBMTkxNkRGMDBBOEVGNUYg
LyogSFRNTExJRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQThFQTc5RUEwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxMSUVsZW1lbnQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOEVBNzlGNzBB
MTkxNkRGMDBBOEVGNUYgLyogSFRNTERMaXN0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTc5RUIwQTE5MTZERjAwQThFRjVGIC8qIEhU
TUxETGlzdEVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlBOEVBNzlGQTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTERpcmVjdG9yeUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4RUE3
OUVFMEExOTE2REYwMEE4RUY1RiAvKiBIVE1MRGlyZWN0b3J5RWxlbWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4RUE3QTUwMEExOTFBNTIw
MEE4RUY1RiAvKiBSZW5kZXJMaXN0TWFya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEVBN0E0QTBBMTkxQTUyMDBBOEVGNUYgLyogUmVuZGVyTGlz
dE1hcmtlci5oICovOyB9OworCQlBOEVBN0E1MjBBMTkxQTUyMDBBOEVGNUYgLyogUmVuZGVyTGlz
dEl0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
RUE3QTRDMEExOTFBNTIwMEE4RUY1RiAvKiBSZW5kZXJMaXN0SXRlbS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4RUE3Q0FCMEExOTJCOUMwMEE4
RUY1RiAvKiBIVE1MTWFycXVlZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4RUE3QzlEMEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MTWFycXVl
ZUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBOEVBN0NBRjBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTEhSRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdDQTEwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxIUkVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlBOEVBN0NCMDBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTFByZUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
RUE3Q0EyMEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MUHJlRWxlbWVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4RUE3Q0I1MEExOTJCOUMwMEE4
RUY1RiAvKiBIVE1MUGFyYWdyYXBoRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdDQTcwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxQYXJh
Z3JhcGhFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQThFQTdDQjcwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxEaXZFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEVBN0NBOTBBMTky
QjlDMDBBOEVGNUYgLyogSFRNTERpdkVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOEVBN0NCODBBMTkyQjlDMDBBOEVGNUYgLyogSFRN
TEhlYWRpbmdFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBOEVBN0NBQTBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTEhlYWRpbmdFbGVtZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThFQTdE
MkIwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxJbWFnZUxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdEMjMwQTE5Mzg1NTAwQThFRjVGIC8q
IEhUTUxJbWFnZUxvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4RUE3RDJDMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MTWFwRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdEMjQw
QTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxNYXBFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThFQTdEMkQwQTE5Mzg1NTAwQThFRjVGIC8q
IEhUTUxJbWFnZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE4RUE3RDI1MEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MSW1hZ2VFbGVtZW50Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQThFQTdE
MkUwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxBcmVhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdEMjYwQTE5Mzg1NTAwQThFRjVGIC8q
IEhUTUxBcmVhRWxlbWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUE4RUE3RUJDMEExOTQ1RDAwMEE4RUY1RiAvKiBQcm9jZXNzaW5nSW5zdHJ1
Y3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
RUE3RUI0MEExOTQ1RDAwMEE4RUY1RiAvKiBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOEVBODAwNzBBMTk1
MTZFMDBBOEVGNUYgLyogQ1NTU3R5bGVTaGVldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQThFQTdGRkYwQTE5NTE2RTAwQThFRjVGIC8qIENTU1N0eWxl
U2hlZXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlBOEVBODAwQTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4RUE4MDAyMEExOTUxNkUwMEE4
RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUE4RUE4MDBDMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOEVBODAw
NDBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUE4RUE4MDBFMEExOTUxNkUwMEE4RUY1RiAvKiBN
ZWRpYUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE4RUE4MDA2MEExOTUxNkUwMEE4RUY1RiAvKiBNZWRpYUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOEZBNkU1RDBFNENGREVEMDBENUNG
NDkgLyogUGF0dGVybi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQThGQTZFNUIwRTRDRkRFRDAwRDVDRjQ5IC8qIFBhdHRlcm4uaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBOTFDOUZCRjFCNjU4NkRFMDBB
RkZENTQgLyogQWNjZXNzaWJpbGl0eVRyZWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE5MUM5RkJEMUI2NTg2REUwMEFGRkQ1NCAvKiBBY2Nlc3NpYmls
aXR5VHJlZS5oICovOyB9OworCQlBOTFDOUZDMzFCNjU5QTY3MDBBRkZENTQgLyogQWNjZXNzaWJp
bGl0eVRyZWVJdGVtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBOTFDOUZDMTFCNjU5QTY3MDBBRkZENTQgLyogQWNjZXNzaWJpbGl0eVRyZWVJdGVtLmgg
Ki87IH07CisJCUE5Nzg3Q0I0MUY1RjVDNjYwMEM1NTFDNiAvKiBBY2Nlc3NpYmlsaXR5TWVkaWFP
YmplY3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QTk3ODdDQjMxRjVGNUM2NTAwQzU1MUM2IC8qIEFjY2Vzc2liaWxpdHlNZWRpYU9iamVjdC5jcHAg
Ki87IH07CisJCUE5QzZFNEU0MEQ3NDVFMDUwMDY0NDJFOSAvKiBET01NaW1lVHlwZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTlDNkU0RTIwRDc0NUUw
NTAwNjQ0MkU5IC8qIERPTU1pbWVUeXBlLmggKi87IH07CisJCUE5QzZFNEU4MEQ3NDVFMTgwMDY0
NDJFOSAvKiBET01NaW1lVHlwZUFycmF5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBOUM2RTRFNjBENzQ1RTE4MDA2NDQyRTkgLyogRE9NTWltZVR5cGVB
cnJheS5oICovOyB9OworCQlBOUM2RTRFQzBENzQ1RTJCMDA2NDQyRTkgLyogRE9NUGx1Z2luLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOUM2RTRFQTBE
NzQ1RTJCMDA2NDQyRTkgLyogRE9NUGx1Z2luLmggKi87IH07CisJCUE5QzZFNEYwMEQ3NDVFMzgw
MDY0NDJFOSAvKiBET01QbHVnaW5BcnJheS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQTlDNkU0RUUwRDc0NUUzODAwNjQ0MkU5IC8qIERPTVBsdWdpbkFy
cmF5LmggKi87IH07CisJCUE5QzZFNEY0MEQ3NDVFNDgwMDY0NDJFOSAvKiBQbHVnaW5EYXRhLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOUM2RTRGMjBE
NzQ1RTQ4MDA2NDQyRTkgLyogUGx1Z2luRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUE5QzZFNUE2MEQ3NDY0NTgwMDY0NDJFOSAvKiBOYXZp
Z2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE5
QzZFNUE0MEQ3NDY0NTgwMDY0NDJFOSAvKiBOYXZpZ2F0b3IuaCAqLzsgfTsKKwkJQTlEMjQ3Rjgw
RDc1N0UzNDAwRkRGOTU5IC8qIEpTTmF2aWdhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOUQyNDdGNjBENzU3RTMzMDBGREY5NTkgLyogSlNOYXZp
Z2F0b3IuaCAqLzsgfTsKKwkJQTlEMjQ3RkYwRDc1N0U2OTAwRkRGOTU5IC8qIEpTRE9NUGx1Z2lu
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOUQyNDdG
QjBENzU3RTY5MDBGREY5NTkgLyogSlNET01QbHVnaW4uaCAqLzsgfTsKKwkJQTlEMjQ4MDEwRDc1
N0U2OTAwRkRGOTU5IC8qIEpTRE9NUGx1Z2luQXJyYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE5RDI0N0ZEMEQ3NTdFNjkwMEZERjk1OSAvKiBKU0RP
TVBsdWdpbkFycmF5LmggKi87IH07CisJCUE5RDI0ODA3MEQ3NTdFN0QwMEZERjk1OSAvKiBKU0RP
TU1pbWVUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBOUQyNDgwMzBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1lVHlwZS5oICovOyB9OworCQlB
OUQyNDgwOTBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1lVHlwZUFycmF5LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBOUQyNDgwNTBENzU3RTdEMDBG
REY5NTkgLyogSlNET01NaW1lVHlwZUFycmF5LmggKi87IH07CisJCUFBMTJERjQ5MTc0M0RGODMw
MDREQUZERiAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVySU9TLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUFFMzc1NUQxNzQyOUJDQzAwNjIwMEMy
IC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW0gKi87IH07CisJCUFBMjFFQ0NEMEFC
RjBGQzYwMDJCODM0QyAvKiBDU1NDdXJzb3JJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTA5NzhFRTBBQkFBNkUxMDA4NzQ0ODAgLyog
Q1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUFBMkE1QUNFMTZBNDg1RkQwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVz
aXNWb2ljZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QUEyQTVBQzcxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmggKi87IH07
CisJCUFBMkE1QUQwMTZBNDg2MDQwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXNVdHRlcmFuY2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBMkE1QUM1
MTZBNDg1RDUwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXNVdHRlcmFuY2UuaCAqLzsgfTsKKwkJ
QUEyQTVBRDIxNkE0ODYwQTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc0V2ZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTJBNUFDMTE2QTQ4NUQ1
MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzRXZlbnQuaCAqLzsgfTsKKwkJQUEyQTVBRDIxNkE0
ODYwQTAwOTc2QTI1IC8qIEpTU3BlZWNoU3ludGhlc2lzRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBMkE1QUMxMTZBNDg1RDUwMDk3NkEyNSAv
KiBKU1NwZWVjaFN5bnRoZXNpc0V2ZW50LmggKi87IH07CisJCUFBMkE1QUQ0MTZBNDg2MTEwMDk3
NUEyNSAvKiBTcGVlY2hTeW50aGVzaXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEFBMkE1QUJFMTZBNDg1RDUwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVz
aXMuaCAqLzsgfTsKKwkJQUEyQTVBRDYxNkE0ODYxNjAwOTc1QTI1IC8qIERPTVdpbmRvd1NwZWVj
aFN5bnRoZXNpcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQUEyQTVBQjkxNkE0ODVENTAwOTc1QTI1IC8qIERPTVdpbmRvd1NwZWVjaFN5bnRoZXNpcy5o
ICovOyB9OworCQlBQTQ3OEE3RjE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXJNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlck1hYy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUFBNEMzQTc3MEIyQjE2NzkwMDIzMzRBMiAvKiBJbmxpbmVTdHlsZVNoZWV0T3duZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBNEMzQTc1
MEIyQjE2NzkwMDIzMzRBMiAvKiBJbmxpbmVTdHlsZVNoZWV0T3duZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBQTVGM0I4RDE2Q0MzM0QxMDA0
NTVFQjAgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBRTI3Qjc1MTZDQkZDMEQwMDYyMzA0MyAv
KiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5oICovOyB9OworCQlBQTVGM0I5MTE2Q0M1
QkVCMDA0NTVFQjAgLyogQ29yZUZvdW5kYXRpb24uZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUE1RjNCOTAxNkNDNUJFQjAwNDU1RUIw
IC8qIENvcmVGb3VuZGF0aW9uLmZyYW1ld29yayAqLzsgfTsKKwkJQUE3RkVFQTcxNkE0RTZGMzAw
NEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQTdGRUU5RjE2QTRFNkYzMDA0QzBDMzMgLyog
SlNTcGVlY2hTeW50aGVzaXNVdHRlcmFuY2UuaCAqLzsgfTsKKwkJQUE3RkVFQTkxNkE0RTZGMzAw
NEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzVm9pY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBN0ZFRUExMTZBNEU2RjMwMDRDMEMzMyAvKiBKU1Nw
ZWVjaFN5bnRoZXNpc1ZvaWNlLmggKi87IH07CisJCUFBN0ZFRUFEMTZBNEU3NEIwMDRDMEMzMyAv
KiBKU1NwZWVjaFN5bnRoZXNpcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQUE3RkVFQUMxNkE0RTc0QjAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lz
LmggKi87IH07CisJCUFBQTcyOEY3MTZEMUQ4QkMwMEQzQkJDNiAvKiBXZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlcklPUy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQUFBNzI4RjExNkQxRDhCQzAwRDNCQkM2IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVySU9TLmggKi87IH07CisJCUFBQzA4Q0YzMTVGOTQxRkQwMEYxRTE4OCAvKiBBY2Nl
c3NpYmlsaXR5U1ZHUm9vdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQUFDMDhDRjExNUY5NDFGQzAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290
LmggKi87IH07CisJCUFBREVGRTQ1MjVBRjRGRDYwMDQwREQ2NyAvKiBGb2N1c09wdGlvbnMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFBREVGRTQzMjVB
RjRGQ0IwMDQwREQ2NyAvKiBGb2N1c09wdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBQjIzQTMyODA5QkJBN0QwMDA2N0NDNTMgLyogQmVm
b3JlVGV4dEluc2VydGVkRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEFCMjNBMzI2MDlCQkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0SW5zZXJ0
ZWRFdmVudC5oICovOyB9OworCQlBQjI0N0E2RDBBRkQ2MzgzMDAzRkE1RkQgLyogUmVuZGVyU2xp
ZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjI0
N0E2QjBBRkQ2MzgzMDAzRkE1RkQgLyogUmVuZGVyU2xpZGVyLmggKi87IH07CisJCUFCMzFDOTFF
MTBBRTFCOEUwMDBDN0I5MiAvKiBMaW5lQ2xhbXBWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIzMUM5MUQxMEFFMUI4RTAwMEM3QjkyIC8qIExp
bmVDbGFtcFZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQUI2N0QxQTkwOTdGM0FFMzAwRjkzOTJFIC8qIFJlbmRlclRleHRDb250cm9sLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjY3RDFBNzA5
N0YzQUUzMDBGOTM5MkUgLyogUmVuZGVyVGV4dENvbnRyb2wuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBQjcxNzA4OTBCMzExODA4MDAxNzEyM0Ug
LyogU2VhcmNoUG9wdXBNZW51LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBBQjcxNzA4ODBCMzExODA4MDAxNzEyM0UgLyogU2VhcmNoUG9wdXBNZW51Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQUJCNTQx
OUYwQUNEREZFNDAwMjgyMEVCIC8qIFJlbmRlckxpc3RCb3guaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCQjU0MTlEMEFDRERGRTQwMDI4MjBFQiAvKiBS
ZW5kZXJMaXN0Qm94LmggKi87IH07CisJCUFCQzEyODc3MEIzM0FBNkQwMEM2OTNENSAvKiBQb3B1
cE1lbnVDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEFCQzEyODc2MEIzM0FBNkQwMEM2OTNENSAvKiBQb3B1cE1lbnVDbGllbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBQkRERkU3QTBBNUM2
RTcwMDBBM0UxMUQgLyogUmVuZGVyTWVudUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCRERGRTc0MEE1QzZFNzAwMEEzRTExRCAvKiBSZW5kZXJN
ZW51TGlzdC5oICovOyB9OworCQlBRDIwQjE4RDE4RTlEMjM3MDA1QTgwODMgLyogSlNOb2RlTGlz
dEN1c3RvbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QUQyMEIxOEMxOEU5RDIxNjAwNUE4MDgzIC8qIEpTTm9kZUxpc3RDdXN0b20uaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBRDQ0OTVGNDE0MUZDMDg5
MDA1NDFFREYgLyogRXZlbnRMaXN0ZW5lck1hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQUQ0NDk1RjIxNDFGQzA4OTAwNTQxRURGIC8qIEV2ZW50TGlz
dGVuZXJNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBRDQ5OTE0MzE4RjA4MTUxMDBCRjAwOTIgLyogSFRNTFVua25vd25FbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBRDQ5OTE0MTE4RjA4
MTUxMDBCRjAwOTIgLyogSFRNTFVua25vd25FbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQUQ1QTBDMjUxREVDQUNDQzAwNzA3MDU0IC8q
IFBlcmZvcm1hbmNlTG9nZ2luZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQUQ1QTBDMjAxREVDQTBCNTAwNzA3MDU0IC8qIFBlcmZvcm1hbmNlTG9nZ2lu
Zy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUFE
NkU3MUFEMTY2ODg5OUQwMDMyMEMxMyAvKiBEb2N1bWVudFNoYXJlZE9iamVjdFBvb2wuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFENkU3MUFCMTY2ODg5
OUQwMDMyMEMxMyAvKiBEb2N1bWVudFNoYXJlZE9iamVjdFBvb2wuaCAqLzsgfTsKKwkJQUQ3MjZG
RUQxNkRBMTE3MTAwM0E0RTZEIC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUQ3MjZGRUExNkQ5RjQw
QjAwM0E0RTZEIC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUFENzI2RkVFMTZEQTExQkMwMDNB
NEU2RCAvKiBKU1N0eWxlU2hlZXRDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEFENzI2RkVDMTZEOUY0QjkwMDNBNEU2RCAvKiBKU1N0eWxlU2hl
ZXRDdXN0b20uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlBRDcyNkZFRjE2REExMUY1MDAzQTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBRDcyNkZFOTE2RDlGNDBB
MDAzQTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQURCQUQ2RUYxQkNERDk1NzAwMzgxMzI1IC8qIFJlc291
cmNlVXNhZ2VPdmVybGF5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBREJBRDZFRDFCQ0REOTUwMDAzODEzMjUgLyogUmVzb3VyY2VVc2FnZU92ZXJsYXku
aCAqLzsgfTsKKwkJQUREQTk0QzIxOTY4N0FBNTAwNDUzMDI5IC8qIEpTRG9jdW1lbnRDdXN0b20u
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFEREE5NEJG
MTk2ODZGODAwMDQ1MzAyOSAvKiBKU0RvY3VtZW50Q3VzdG9tLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQURERjFBRDcxMjU3Q0Q5QTAwMDNBNzU5
IC8qIFJlbmRlclNWR1BhdGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEFEREYxQUQ1MTI1N0NEOUEwMDAzQTc1OSAvKiBSZW5kZXJTVkdQYXRoLmggKi87
IH07CisJCUFERUM3OEY4MThFRTUzMDgwMDEzMTVDMiAvKiBKU0VsZW1lbnRDdXN0b20uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFERUM3OEY3MThFRTUz
MDgwMDEzMTVDMiAvKiBKU0VsZW1lbnRDdXN0b20uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMTBCNjk4MDE0MEMxNzQwMDBCQzFDMjYgLyogV2Vi
VlRUVG9rZW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIxMEI2OTdEMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbi5oICovOyB9OworCQlCMTBC
Njk4MjE0MEMxNzQwMDBCQzFDMjYgLyogV2ViVlRUVG9rZW5pemVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTBCNjk3RjE0MEMxNzQwMDBCQzFDMjYg
LyogV2ViVlRUVG9rZW5pemVyLmggKi87IH07CisJCUIxQUQ0RTc0MTNBMTJBNDYwMDg0NkIyNyAv
KiBUZXh0VHJhY2tMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIxQUQ0RTcyMTNBMTJBNDYwMDg0NkIyNyAvKiBUZXh0VHJhY2tMb2FkZXIuaCAq
LzsgfTsKKwkJQjIwMTExMDgwQUI3NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMDExMTA2MEFCNzc0
MDUwMERCMEU2OCAvKiBKU1NWR0FFbGVtZW50LmggKi87IH07CisJCUIyMjI3OTY0MEQwMEJGMjIw
MDcxQjc4MiAvKiBHcmFkaWVudEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3N0NEMEQwMEJGMUYwMDcxQjc4MiAvKiBHcmFkaWVu
dEF0dHJpYnV0ZXMuaCAqLzsgfTsKKwkJQjIyMjc5NjUwRDAwQkYyMjAwNzFCNzgyIC8qIExpbmVh
ckdyYWRpZW50QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjIyMjc3Q0UwRDAwQkYxRjAwNzFCNzgyIC8qIExpbmVhckdyYWRpZW50QXR0
cmlidXRlcy5oICovOyB9OworCQlCMjIyNzk3MTBEMDBCRjIyMDA3MUI3ODIgLyogUGF0dGVybkF0
dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIyMjI3N0RCMEQwMEJGMUYwMDcxQjc4MiAvKiBQYXR0ZXJuQXR0cmlidXRlcy5oICovOyB9Owor
CQlCMjIyNzk3MjBEMDBCRjIyMDA3MUI3ODIgLyogUmFkaWFsR3JhZGllbnRBdHRyaWJ1dGVzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzdEQzBE
MDBCRjFGMDA3MUI3ODIgLyogUmFkaWFsR3JhZGllbnRBdHRyaWJ1dGVzLmggKi87IH07CisJCUIy
MjI3OTc0MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc3REUwRDAwQkYxRjAwNzFCNzgyIC8q
IFNWR0FFbGVtZW50LmggKi87IH07CisJCUIyMjI3OTc3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdB
bmdsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc3RTEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuZ2xlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjIyMjc5N0EwRDAwQkYyMjAwNzFCNzgyIC8q
IFNWR0FuaW1hdGVDb2xvckVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyMjI3N0U0MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlQ29s
b3JFbGVtZW50LmggKi87IH07CisJCUIyMjI3OTkwMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBbmlt
YXRlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjIyMjc3RkEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVFbGVtZW50LmggKi87IH07
CisJCUIyMjI3OTkzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBbmltYXRlTW90aW9uRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc3RkQw
RDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmggKi87IH07CisJCUIy
MjI3OTk1MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBbmltYXRlVHJhbnNmb3JtRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc3RkYwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmggKi87IH07CisJCUIy
MjI3OTk4MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBbmltYXRpb25FbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzgwMjBEMDBCRjFGMDA3
MUI3ODIgLyogU1ZHQW5pbWF0aW9uRWxlbWVudC5oICovOyB9OworCQlCMjIyNzk5QzBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHQ2lyY2xlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4MDYwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NpcmNs
ZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjc5OUYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0NsaXBQ
YXRoRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjIyMjc4MDkwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NsaXBQYXRoRWxlbWVudC5oICovOyB9
OworCQlCMjIyNzlBNTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHQ29tcG9uZW50VHJhbnNmZXJGdW5j
dGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyMjI3ODBGMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0
aW9uRWxlbWVudC5oICovOyB9OworCQlCMjIyNzlBODBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHQ3Vy
c29yRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjIyMjc4MTIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0N1cnNvckVsZW1lbnQuaCAqLzsgfTsK
KwkJQjIyMjc5QUUwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0RlZnNFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzgxODBEMDBCRjFGMDA3
MUI3ODIgLyogU1ZHRGVmc0VsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjc5QjEwRDAwQkYyMjAwNzFC
NzgyIC8qIFNWR0Rlc2NFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMjIyNzgxQjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRGVzY0VsZW1lbnQu
aCAqLzsgfTsKKwkJQjIyMjc5QjQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0RvY3VtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzgxRTBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHRG9jdW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCMjIyNzlCNzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc4MjEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0VsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjc5QzAw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR0VsbGlwc2VFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzgyQTBEMDBCRjFGMDA3MUI3ODIgLyog
U1ZHRWxsaXBzZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjc5QzgwRDAwQkYyMjAwNzFCNzgyIC8q
IFNWR0ZFQmxlbmRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMjIyNzgzMjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVCbGVuZEVsZW1lbnQu
aCAqLzsgfTsKKwkJQjIyMjc5Q0IwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFQ29sb3JNYXRyaXhF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MjIyNzgzNTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQuaCAqLzsg
fTsKKwkJQjIyMjc5Q0UwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9uZW50VHJhbnNmZXJF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MjIyNzgzODBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQu
aCAqLzsgfTsKKwkJQjIyMjc5RDEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9zaXRlRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc4M0IwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9zaXRlRWxlbWVudC5oICovOyB9Owor
CQlCMjIyNzlENDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzgz
RTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LmggKi87IH07
CisJCUIyMjI3OUQ3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3
ODQxMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuaCAqLzsg
fTsKKwkJQjIyMjc5REEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFRGlzdGFudExpZ2h0RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4
NDQwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC5oICovOyB9Owor
CQlCMjIyNzlERDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVGbG9vZEVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODQ3MEQwMEJGMUYw
MDcxQjc4MiAvKiBTVkdGRUZsb29kRWxlbWVudC5oICovOyB9OworCQlCMjIyNzlFMDBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHRkVGdW5jQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODRBMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1
bmNBRWxlbWVudC5oICovOyB9OworCQlCMjIyNzlFMzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVG
dW5jQkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyMjI3ODREMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNCRWxlbWVudC5oICovOyB9
OworCQlCMjIyNzlFNjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVGdW5jR0VsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODUwMEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNHRWxlbWVudC5oICovOyB9OworCQlCMjIyNzlFOTBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHRkVGdW5jUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODUzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdG
RUZ1bmNSRWxlbWVudC5oICovOyB9OworCQlCMjIyNzlFQzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZH
RkVHYXVzc2lhbkJsdXJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMjIyNzg1NjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVHYXVzc2lhbkJs
dXJFbGVtZW50LmggKi87IH07CisJCUIyMjI3OUVGMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRUlt
YWdlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjIyMjc4NTkwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFSW1hZ2VFbGVtZW50LmggKi87IH07
CisJCUIyMjI3OUYyMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRUxpZ2h0RWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4NUMwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFTGlnaHRFbGVtZW50LmggKi87IH07CisJCUIyMjI3OUY0MEQwMEJG
MjIwMDcxQjc4MiAvKiBTVkdGRU1lcmdlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4NUUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZF
TWVyZ2VFbGVtZW50LmggKi87IH07CisJCUIyMjI3OUY3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdG
RU1lcmdlTm9kZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyMjI3ODYxMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRU1lcmdlTm9kZUVsZW1l
bnQuaCAqLzsgfTsKKwkJQjIyMjc5RkEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFT2Zmc2V0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc4NjQwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFT2Zmc2V0RWxlbWVudC5oICovOyB9OworCQlC
MjIyNzlGRDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4NjcwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFUG9pbnRMaWdodEVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBMDAw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODZBMEQwMEJGMjAw
MDcxQjc4MiAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmggKi87IH07CisJCUIyMjI3
QTAzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRVNwb3RMaWdodEVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODZEMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdGRVNwb3RMaWdodEVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBMDYwRDAwQkYy
MjAwNzFCNzgyIC8qIFNWR0ZFVGlsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODcwMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVRp
bGVFbGVtZW50LmggKi87IH07CisJCUIyMjI3QTA5MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRVR1
cmJ1bGVuY2VFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMjIyNzg3MzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVUdXJidWxlbmNlRWxlbWVu
dC5oICovOyB9OworCQlCMjIyN0EwQzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRmlsdGVyRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4
NzYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpbHRlckVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdB
MEYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRl
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4
NzkwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRl
cy5oICovOyB9OworCQlCMjIyN0ExMjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRml0VG9WaWV3Qm94
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzg3
QzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRml0VG9WaWV3Qm94LmggKi87IH07CisJCUIyMjI3QTE1
MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGb250RmFjZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3ODdGMEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdGb250RmFjZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBMTgwRDAwQkYyMjAwNzFCNzgy
IC8qIFNWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4ODIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRG
YWNlRm9ybWF0RWxlbWVudC5oICovOyB9OworCQlCMjIyN0ExQjBEMDBCRjIyMDA3MUI3ODIgLyog
U1ZHRm9udEZhY2VOYW1lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjIyMjc4ODUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlTmFt
ZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBMUUwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZvbnRG
YWNlU3JjRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjIyMjc4ODgwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlU3JjRWxlbWVudC5o
ICovOyB9OworCQlCMjIyN0EyMTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VVcmlFbGVt
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIy
Nzg4QjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VVcmlFbGVtZW50LmggKi87IH07CisJ
CUIyMjI3QTI0MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4OEUwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmggKi87IH07CisJCUIyMjI3
QTI3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdHRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4OTEwRDAwQkYyMDAwNzFCNzgyIC8qIFNW
R0dFbGVtZW50LmggKi87IH07CisJCUIyMjI3QTJBMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdHcmFk
aWVudEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyMjI3ODk0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdHcmFkaWVudEVsZW1lbnQuaCAqLzsg
fTsKKwkJQjIyMjdBMkQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ltYWdlRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4OTcwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ltYWdlRWxlbWVudC5oICovOyB9OworCQlCMjIyN0EzNjBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHTGVuZ3RoTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4QTAwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0xlbmd0aExp
c3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlC
MjIyN0EzOTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzhBMzBEMDBC
RjIwMDA3MUI3ODIgLyogU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmggKi87IH07CisJCUIyMjI3
QTNDMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdMaW5lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4QTYwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR0xpbmVFbGVtZW50LmggKi87IH07CisJCUIyMjI3QTQxMEQwMEJGMjIwMDcxQjc4MiAvKiBT
VkdMb2NhdGFibGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyMjI3OEFCMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdMb2NhdGFibGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMjIyN0E0NDBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHTWFya2VyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4QUUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR01hcmtl
ckVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBNDcwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR01hc2tF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MjIyNzhCMTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTWFza0VsZW1lbnQuaCAqLzsgfTsKKwkJQjIy
MjdBNEIwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR01ldGFkYXRhRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4QjUwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR01ldGFkYXRhRWxlbWVudC5oICovOyB9OworCQlCMjIyN0E0RTBEMDBCRjIyMDA3
MUI3ODIgLyogU1ZHTVBhdGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzhCODBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTVBhdGhFbGVt
ZW50LmggKi87IH07CisJCUIyMjI3QTUxMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdOdW1iZXJMaXN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzhC
QjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTnVtYmVyTGlzdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyMjI3QTU3MEQwMEJGMjIwMDcxQjc4MiAv
KiBTVkdQYXJzZXJVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIyMjI3OEMxMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXJzZXJVdGlsaXRp
ZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlC
MjIyN0E1OTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUGF0aEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OEMzMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdQYXRoRWxlbWVudC5oICovOyB9OworCQlCMjIyN0E1QjBEMDBCRjIyMDA3MUI3ODIg
LyogU1ZHUGF0aFNlZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjIyMjc4QzUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWcuaCAqLzsgfTsKKwkJ
QjIyMjdBODEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BhdGhTZWdMaXN0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzhFQjBEMDBCRjIwMDA3MUI3
ODIgLyogU1ZHUGF0aFNlZ0xpc3QuaCAqLzsgfTsKKwkJQjIyMjdBODgwRDAwQkYyMjAwNzFCNzgy
IC8qIFNWR1BhdHRlcm5FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMjIyNzhGMjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUGF0dGVybkVsZW1l
bnQuaCAqLzsgfTsKKwkJQjIyMjdBOEMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvaW50TGlzdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc4RjYw
RDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvaW50TGlzdC5oICovOyB9OworCQlCMjIyN0E4RjBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHUG9seUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OEY5MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5
RWxlbWVudC5oICovOyB9OworCQlCMjIyN0E5MTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUG9seWdv
bkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIyMjI3OEZCMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxlbWVudC5oICovOyB9Owor
CQlCMjIyN0E5NDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUG9seWxpbmVFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzhGRTBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHUG9seWxpbmVFbGVtZW50LmggKi87IH07CisJCUIyMjI3QTk3MEQwMEJG
MjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzkwMTBEMDBCRjIxMDA3MUI3ODIgLyog
U1ZHUHJlc2VydmVBc3BlY3RSYXRpby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUIyMjI3QTlBMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdSYWRpYWxH
cmFkaWVudEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIyMjI3OTA0MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdSYWRpYWxHcmFkaWVudEVsZW1l
bnQuaCAqLzsgfTsKKwkJQjIyMjdBOUUwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzkw
ODBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBQTAw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlbmRlcmluZ0ludGVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5MEEwRDAwQkYyMTAwNzFCNzgyIC8q
IFNWR1JlbmRlcmluZ0ludGVudC5oICovOyB9OworCQlCMjIyN0FBMzBEMDBCRjIyMDA3MUI3ODIg
LyogU1ZHU2NyaXB0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjIyMjc5MEQwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1NjcmlwdEVsZW1lbnQu
aCAqLzsgfTsKKwkJQjIyMjdBQTYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1NldEVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OTEwMEQw
MEJGMjEwMDcxQjc4MiAvKiBTVkdTZXRFbGVtZW50LmggKi87IH07CisJCUIyMjI3QUE5MEQwMEJG
MjIwMDcxQjc4MiAvKiBTVkdTdG9wRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5MTMwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N0b3BF
bGVtZW50LmggKi87IH07CisJCUIyMjI3QUFDMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdTdHJpbmdM
aXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIy
NzkxNjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHU3RyaW5nTGlzdC5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyMjI3QUI2MEQwMEJGMjIwMDcxQjc4
MiAvKiBTVkdHcmFwaGljc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyMjI3OTIwMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdHcmFwaGljc0Vs
ZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBQjgwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1N0eWxlRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc5MjIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N0eWxlRWxlbWVudC5oICovOyB9OworCQlCMjIy
N0FCQjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHU1ZHRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5MjUwRDAwQkYyMTAwNzFCNzgyIC8q
IFNWR1NWR0VsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBQkUwRDAwQkYyMjAwNzFCNzgyIC8qIFNW
R1N3aXRjaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIyMjI3OTI4MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTd2l0Y2hFbGVtZW50LmggKi87
IH07CisJCUIyMjI3QUMxMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdTeW1ib2xFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzkyQjBEMDBC
RjIxMDA3MUI3ODIgLyogU1ZHU3ltYm9sRWxlbWVudC5oICovOyB9OworCQlCMjIyN0FDNTBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHVGVzdHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyMjI3OTJGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXN0cy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyMjI3QUM4
MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUZXh0Q29udGVudEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OTMyMEQwMEJGMjEwMDcxQjc4
MiAvKiBTVkdUZXh0Q29udGVudEVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBQ0IwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1RleHRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzkzNTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dEVsZW1l
bnQuaCAqLzsgfTsKKwkJQjIyMjdBQ0UwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1RleHRQYXRoRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIy
Mjc5MzgwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRQYXRoRWxlbWVudC5oICovOyB9OworCQlC
MjIyN0FEMTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5M0IwRDAw
QkYyMTAwNzFCNzgyIC8qIFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaCAqLzsgfTsKKwkJQjIy
MjdBRDQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1RpdGxlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5M0UwRDAwQkYyMTAwNzFCNzgy
IC8qIFNWR1RpdGxlRWxlbWVudC5oICovOyB9OworCQlCMjIyN0FENzBEMDBCRjIyMDA3MUI3ODIg
LyogU1ZHVHJhbnNmb3JtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMjIyNzk0MTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtLmggKi87IH07
CisJCUIyMjI3QURBMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUcmFuc2Zvcm1hYmxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzk0NDBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtYWJsZS5oICovOyB9OworCQlCMjIyN0FERDBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtRGlzdGFuY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OTQ3MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdU
cmFuc2Zvcm1EaXN0YW5jZS5oICovOyB9OworCQlCMjIyN0FERjBEMDBCRjIyMDA3MUI3ODIgLyog
U1ZHVHJhbnNmb3JtTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjIyMjc5NDkwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybUxpc3QuaCAq
LzsgfTsKKwkJQjIyMjdBRTIwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1RSZWZFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzk0QzBEMDBC
RjIxMDA3MUI3ODIgLyogU1ZHVFJlZkVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBRTUwRDAwQkYy
MjAwNzFCNzgyIC8qIFNWR1RTcGFuRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5NEYwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RTcGFu
RWxlbWVudC5oICovOyB9OworCQlCMjIyN0FFNzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHVW5pdFR5
cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIy
Nzk1MTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVW5pdFR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjIyMjdBRUEwRDAwQkYyMjAwNzFCNzgy
IC8qIFNWR1VSSVJlZmVyZW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjIyMjc5NTQwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1VSSVJlZmVyZW5jZS5o
ICovOyB9OworCQlCMjIyN0FFRDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHVXNlRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjIyMjc5NTcwRDAw
QkYyMTAwNzFCNzgyIC8qIFNWR1VzZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBRjAwRDAwQkYy
MjAwNzFCNzgyIC8qIFNWR1ZpZXdFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzk1QTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVmlld0Vs
ZW1lbnQuaCAqLzsgfTsKKwkJQjIyMjdBRjMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1ZpZXdTcGVj
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyNzk1
RDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVmlld1NwZWMuaCAqLzsgfTsKKwkJQjIyMjdBRjYwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR1pvb21BbmRQYW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMjI3OTYwMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdab29t
QW5kUGFuLmggKi87IH07CisJCUIyMjJGNjk5MEFCNzcxOTUwMDIyRUZBRCAvKiBKU1NWR0FuZ2xl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyRjY5
NzBBQjc3MTk1MDAyMkVGQUQgLyogSlNTVkdBbmdsZS5oICovOyB9OworCQlCMjIyRjY5RDBBQjc3
MUI4MDAyMkVGQUQgLyogSlNTVkdFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMjIyRjY5QjBBQjc3MUI4MDAyMkVGQUQgLyogSlNTVkdFbGVt
ZW50LmggKi87IH07CisJCUIyMjM2MjI5MEMzQUYwNEEwMDA4Q0E5QiAvKiBKU1NWR1RleHRQYXRo
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjIyMzYyMjcwQzNBRjA0QTAwMDhDQTlCIC8qIEpTU1ZHVGV4dFBhdGhFbGVtZW50LmggKi87IH07
CisJCUIyMzU0MEYzMEQwMDc4MkUwMDIzODJGQSAvKiBTdHJpbmdUcnVuY2F0b3IuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyMzU0MEYxMEQwMDc4MkUw
MDIzODJGQSAvKiBTdHJpbmdUcnVuY2F0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCMjU1OTk4NTBEMDBEOEJBMDBCQjgyNUMgLyogU1ZHRkVJ
bWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjI1
NTk4RUIwRDAwRDhCOTAwQkI4MjVDIC8qIFNWR0ZFSW1hZ2UuaCAqLzsgfTsKKwkJQjI1NTk5QTQw
RDAwRDhCQTAwQkI4MjVDIC8qIFNWR0ltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMjU1OTkwQzBEMDBEOEI5MDBCQjgyNUMgLyogU1ZHSW1hZ2Uu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMjU1
OTlBNTBEMDBEOEJBMDBCQjgyNUMgLyogRW1wdHlDbGllbnRzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjU1OTkwRDBEMDBEOEI5MDBCQjgyNUMgLyog
RW1wdHlDbGllbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQjI3NTM1NjUwQjA1MzgxNDAwMkNFNjRGIC8qIFBERkRvY3VtZW50SW1hZ2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyNzUzNTM3MEIw
NTM4MTQwMDJDRTY0RiAvKiBQREZEb2N1bWVudEltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjI3NTM1NjcwQjA1MzgxNDAwMkNFNjRGIC8q
IENvbG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
Mjc1MzUzOTBCMDUzODE0MDAyQ0U2NEYgLyogQ29sb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMjc1MzU2OTBCMDUzODE0MDAyQ0U2NEYgLyog
RmxvYXRQb2ludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjI3NTM1M0IwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9pbnQuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMjc1MzU2QjBCMDUzODE0MDAy
Q0U2NEYgLyogRmxvYXRSZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMjc1MzUzRDBCMDUzODE0MDAyQ0U2NEYgLyogRmxvYXRSZWN0LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjI3NTM1NkQwQjA1
MzgxNDAwMkNFNjRGIC8qIEZsb2F0U2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjI3NTM1M0YwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0U2l6ZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyNzUz
NTZFMEIwNTM4MTQwMDJDRTY0RiAvKiBJY29uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMjc1MzU0MDBCMDUzODE0MDAyQ0U2NEYgLyogSWNvbi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyNzUzNTcw
MEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjI3NTM1NDIwQjA1MzgxNDAwMkNFNjRGIC8qIEltYWdlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjI3NTM1NzIw
QjA1MzgxNDAwMkNFNjRGIC8qIEludFBvaW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMjc1MzU0NDBCMDUzODE0MDAyQ0U2NEYgLyogSW50UG9pbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMjc1
MzU3NDBCMDUzODE0MDAyQ0U2NEYgLyogSW50UmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjI3NTM1NDYwQjA1MzgxNDAwMkNFNjRGIC8qIEludFJl
Y3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlC
Mjc1MzU3NTBCMDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjI3NTM1NDcwQjA1MzgxNDAwMkNFNjRGIC8qIElu
dFNpemUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlCMjc1MzU3NjBCMDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZUhhc2guaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyNzUzNTQ4MEIwNTM4MTQwMDJDRTY0
RiAvKiBJbnRTaXplSGFzaC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUIyNzUzNTgwMEIwNTM4MTQwMDJDRTY0RiAvKiBQYXRoLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjc1MzU1MzBCMDUzODE0MDAy
Q0U2NEYgLyogUGF0aC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUIyN0IyODI2MENFRjBDMDcwMEQzOUQ1NCAvKiBKU1NWR0ZvbnRFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMjdCMjgyMDBD
RUYwQzA3MDBEMzlENTQgLyogSlNTVkdGb250RWxlbWVudC5oICovOyB9OworCQlCMjdCMjgyODBD
RUYwQzA3MDBEMzlENTQgLyogSlNTVkdHbHlwaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyN0IyODIyMENFRjBDMDcwMEQzOUQ1NCAvKiBK
U1NWR0dseXBoRWxlbWVudC5oICovOyB9OworCQlCMjdCMjgyQTBDRUYwQzA3MDBEMzlENTQgLyog
SlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMjdCMjgyNDBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdNaXNzaW5n
R2x5cGhFbGVtZW50LmggKi87IH07CisJCUIyOEM2QTI4MEQwMEM0NDgwMDMzNEFBNCAvKiBTVkdE
b2N1bWVudEV4dGVuc2lvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyOEM2QTFGMEQwMEM0NDgwMDMzNEFBNCAvKiBTVkdEb2N1bWVudEV4dGVuc2lv
bnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlC
MjhDNkEyQTBEMDBDNDQ4MDAzMzRBQTQgLyogU1ZHSW1hZ2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyOEM2QTIxMEQwMEM0NDgwMDMzNEFB
NCAvKiBTVkdJbWFnZUxvYWRlci5oICovOyB9OworCQlCMkEwMTVBOTBBRjZDRDUzMDA2QkNFMEUg
LyogR3JhcGhpY3NDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMkEwMTU5MzBBRjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3NDb250ZXh0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJBMDE1
QUIwQUY2Q0Q1MzAwNkJDRTBFIC8qIEdyYXBoaWNzVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQTAxNTk1MEFGNkNENTMwMDZCQ0UwRSAvKiBH
cmFwaGljc1R5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQjJBMTBCOTIwQjM4MThCRDAwMDk5QUE0IC8qIEltYWdlQnVmZmVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkExMEI5MTBCMzgxOEJE
MDAwOTlBQTQgLyogSW1hZ2VCdWZmZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlCMkExMEQ5MTBCMzgxOEJEMDAwOTlBQTQgLyogSW1hZ2VCdWZm
ZXJQaXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MkExMEM5MTBCMzgxOEJEMDAwOTlBQTQgLyogSW1hZ2VCdWZmZXJQaXBlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJBMUYyQUIwQ0VGMEFCRjAw
NDQyRjZBIC8qIFNWR0ZvbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkExRjJBMjBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHRm9udEVsZW1l
bnQuaCAqLzsgfTsKKwkJQjJBMUYyQUUwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0dseXBoRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJBMUYy
QTUwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0dseXBoRWxlbWVudC5oICovOyB9OworCQlCMkExRjJC
MTBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJBMUYyQTgwQ0VGMEFCRjAwNDQy
RjZBIC8qIFNWR01pc3NpbmdHbHlwaEVsZW1lbnQuaCAqLzsgfTsKKwkJQjJBRkZDN0UwRDAwQTVD
MTAwMzAwNzREIC8qIEZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQUZGQzc2MEQwMEE1QzEwMDMwMDc0RCAvKiBG
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQjJCMUY3MTcwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVu
dHNIaXRSdWxlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjJCMUY3MTUwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVudHNIaXRSdWxlcy5oICov
OyB9OworCQlCMkMzREEyNDBEMDA2QzFEMDBFRjZGMjYgLyogQmlkaUNvbnRleHQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEOUYzMEQwMDZDMUQw
MEVGNkYyNiAvKiBCaWRpQ29udGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUIyQzNEQTI1MEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpUmVzb2x2
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNE
OUY0MEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpUmVzb2x2ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkMzREEyRjBEMDA2QzFEMDBFRjZGMjYg
LyogU2VnbWVudGVkU3RyaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMkMzRDlGRjBEMDA2QzFEMDBFRjZGMjYgLyogU2VnbWVudGVkU3RyaW5nLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJDM0RB
MzQwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRCb3VuZGFyaWVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkMzREEwNDBEMDA2QzFEMDBFRjZGMjYgLyog
VGV4dEJvdW5kYXJpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCMkMzREEzQTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkMzREEwQTBEMDA2QzFE
MDBFRjZGMjYgLyogVGV4dENvZGVjLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQjJDM0RBM0MwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY0lD
VS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJDM0RB
MEMwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY0lDVS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTNFMEQwMDZDMUQwMEVGNkYyNiAv
KiBUZXh0Q29kZWNMYXRpbjEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyQzNEQTBFMEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29kZWNMYXRpbjEuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkMzREE0
MDBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjVXNlckRlZmluZWQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEQTEwMEQwMDZDMUQwMEVGNkYy
NiAvKiBUZXh0Q29kZWNVc2VyRGVmaW5lZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTQyMEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29k
ZWNVVEYxNi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjJDM0RBMTIwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY1VURjE2LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJDM0RBNDUwRDAwNkMxRDAw
RUY2RjI2IC8qIFRleHRGbGFncy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjJDM0RBMTUwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRGbGFncy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTQ3MEQw
MDZDMUQwMEVGNkYyNiAvKiBUZXh0RW5jb2RpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEQTE3MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0RW5j
b2RpbmcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlCMkMzREE0OTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEQTE5MEQwMDZD
MUQwMEVGNkYyNiAvKiBUZXh0RW5jb2RpbmdSZWdpc3RyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTYxMEQwMDZDRDYwMEVGNkYyNiAv
KiBGb250Q2FzY2FkZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjJDM0RBNTAwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnRDYXNjYWRlLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJDM0RBNjMwRDAwNkNE
NjAwRUY2RjI2IC8qIEZvbnRDYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjJDM0RBNTIwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnRDYWNoZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTY1
MEQwMDZDRDYwMEVGNkYyNiAvKiBGb250LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkMzREE1NDBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUIyQzNEQTY2MEQw
MDZDRDYwMEVGNkYyNiAvKiBGb250RGVzY3JpcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyQzNEQTU1MEQwMDZDRDYwMEVGNkYyNiAvKiBGb250
RGVzY3JpcHRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlCMkMzREE2ODBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENhc2NhZGVGb250cy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJDM0RBNTcwRDAw
NkNENjAwRUY2RjI2IC8qIEZvbnRDYXNjYWRlRm9udHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkMzREE2QjBEMDA2Q0Q2MDBFRjZGMjYgLyog
Rm9udFNlbGVjdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMkMzREE1QTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udFNlbGVjdG9yLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJDM0RBNkMwRDAwNkNE
NjAwRUY2RjI2IC8qIEdseXBoQnVmZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkMzREE1QjBEMDA2Q0Q2MDBFRjZGMjYgLyogR2x5cGhCdWZmZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkQz
REE2NTBEMDA2Q0Q2MDBFRjZGMjcgLyogT3BlblR5cGVNYXRoRGF0YS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJEM0RBNTQwRDAwNkNENjAwRUY2RjI3
IC8qIE9wZW5UeXBlTWF0aERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlCMkQzREE2NTBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVDRy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJEM0RBNTQw
RDAwNkNENjAwRUY2RjNBIC8qIE9wZW5UeXBlQ0cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkQzRUE2NTBEMDA2Q0Q2MDBFRjZGMjggLyogT3Bl
blR5cGVUeXBlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjJEM0VBNTQwRDAwNkNENjAwRUY2RjI4IC8qIE9wZW5UeXBlVHlwZXMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCMkUyN0NBMDBCMEYyQjA5
MDBGMTdDN0IgLyogRmxvYXRQb2ludDNELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkUyN0M5RTBCMEYyQjA5MDBGMTdDN0IgLyogRmxvYXRQb2ludDNE
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJF
NEVDOTgwRDAwQzIyQjAwNDMyNjQzIC8qIFNWR1pvb21FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJFNEVDOTUwRDAwQzIyQjAwNDMyNjQzIC8q
IFNWR1pvb21FdmVudC5oICovOyB9OworCQlCMkYzNEZFNjBFODJGODE0MDBGNjI3Q0QgLyogRE5T
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkYzNEZF
NTBFODJGODE0MDBGNjI3Q0QgLyogRE5TLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjJGQTNEMzcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQW5p
bWF0ZUNvbG9yRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjJGQTNDNEYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZUNvbG9yRWxl
bWVudC5oICovOyB9OworCQlCMkZBM0QzOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRl
ZEFuZ2xlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
MkZBM0M1MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZEFuZ2xlLmggKi87IH07CisJ
CUIyRkEzRDNCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkQm9vbGVhbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDNTMwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRCb29sZWFuLmggKi87IH07CisJCUIyRkEzRDNEMEFC
NzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkRW51bWVyYXRpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzU1MEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0FuaW1hdGVkRW51bWVyYXRpb24uaCAqLzsgfTsKKwkJQjJGQTNEM0YwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRJbnRlZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M1NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdBbmltYXRlZEludGVnZXIuaCAqLzsgfTsKKwkJQjJGQTNENDEwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHQW5pbWF0ZWRMZW5ndGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIyRkEzQzU5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTGVu
Z3RoLmggKi87IH07CisJCUIyRkEzRDQzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVk
TGVuZ3RoTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjJGQTNDNUIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRMZW5ndGhMaXN0Lmgg
Ki87IH07CisJCUIyRkEzRDQ1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTnVtYmVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M1
RDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51bWJlci5oICovOyB9OworCQlCMkZB
M0Q0NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51bWJlckxpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzVGMEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTnVtYmVyTGlzdC5oICovOyB9OworCQlCMkZBM0Q0QjBB
Qjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFByZXNlcnZlQXNwZWN0UmF0aW8uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzYzMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkUHJlc2VydmVBc3BlY3RSYXRpby5oICovOyB9Owor
CQlCMkZBM0Q0RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFJlY3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzY1MEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkUmVjdC5oICovOyB9OworCQlCMkZBM0Q0RjBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFN0cmluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDNjcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZH
QW5pbWF0ZWRTdHJpbmcuaCAqLzsgfTsKKwkJQjJGQTNENTEwQUI3NUE2RjAwMEU1QUM0IC8qIEpT
U1ZHQW5pbWF0ZWRUcmFuc2Zvcm1MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M2OTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRl
ZFRyYW5zZm9ybUxpc3QuaCAqLzsgfTsKKwkJQjJGQTNENTMwQUI3NUE2RjAwMEU1QUM0IC8qIEpT
U1ZHQW5pbWF0ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyRkEzQzZCMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVFbGVtZW50
LmggKi87IH07CisJCUIyRkEzRDU1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVUcmFu
c2Zvcm1FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMkZBM0M2RDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlVHJhbnNmb3JtRWxl
bWVudC5oICovOyB9OworCQlCMkZBM0Q1NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRp
b25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0M2RjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRpb25FbGVtZW50LmggKi87
IH07CisJCUIyRkEzRDU5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0NpcmNsZUVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzcxMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0NpcmNsZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNENUIw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQ2xpcFBhdGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M3MzBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdDbGlwUGF0aEVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNENUYwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzc3MEFCNzVBNkUwMDBF
NUFDNCAvKiBKU1NWR0NvbXBvbmVudFRyYW5zZmVyRnVuY3Rpb25FbGVtZW50LmggKi87IH07CisJ
CUIyRkEzRDYxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0N1cnNvckVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzc5MEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0N1cnNvckVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNENjMwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHRGVmc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzdCMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0Rl
ZnNFbGVtZW50LmggKi87IH07CisJCUIyRkEzRDY1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0Rl
c2NFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0M3RDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdEZXNjRWxlbWVudC5oICovOyB9Owor
CQlCMkZBM0Q2NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdEb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDN0YwQUI3NUE2RTAwMEU1
QUM0IC8qIEpTU1ZHRG9jdW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNENjkwQUI3NUE2RjAwMEU1QUM0
IC8qIEpTU1ZHRWxsaXBzZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyRkEzQzgxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0VsbGlwc2VF
bGVtZW50LmggKi87IH07CisJCUIyRkEzRDZCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFQmxl
bmRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0M4MzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUJsZW5kRWxlbWVudC5oICovOyB9
OworCQlCMkZBM0Q2RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRUNvbG9yTWF0cml4RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTND
ODUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQuaCAqLzsgfTsK
KwkJQjJGQTNENkYwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVDb21wb25lbnRUcmFuc2ZlckVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIy
RkEzQzg3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFQ29tcG9uZW50VHJhbnNmZXJFbGVtZW50
LmggKi87IH07CisJCUIyRkEzRDcxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFQ29tcG9zaXRl
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjJGQTNDODkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVDb21wb3NpdGVFbGVtZW50LmggKi87
IH07CisJCUIyRkEzRDczMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRGlmZnVzZUxpZ2h0aW5n
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjJGQTNDOEIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50
LmggKi87IH07CisJCUIyRkEzRDc1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRGlzcGxhY2Vt
ZW50TWFwRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjJGQTNDOEQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaXNwbGFjZW1lbnRNYXBF
bGVtZW50LmggKi87IH07CisJCUIyRkEzRDc3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRGlz
dGFudExpZ2h0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjJGQTNDOEYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaXN0YW50TGlnaHRF
bGVtZW50LmggKi87IH07CisJCUIyRkEzRDc5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRmxv
b2RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0M5MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZsb29kRWxlbWVudC5oICovOyB9
OworCQlCMkZBM0Q3QjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNBRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDOTMwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVGdW5jQUVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNEN0Qw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVGdW5jQkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzk1MEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0ZFRnVuY0JFbGVtZW50LmggKi87IH07CisJCUIyRkEzRDdGMEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR0ZFRnVuY0dFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M5NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNH
RWxlbWVudC5oICovOyB9OworCQlCMkZBM0Q4MTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRUZ1
bmNSRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjJGQTNDOTkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVGdW5jUkVsZW1lbnQuaCAqLzsg
fTsKKwkJQjJGQTNEODMwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVHYXVzc2lhbkJsdXJFbGVt
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZB
M0M5QjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQuaCAqLzsg
fTsKKwkJQjJGQTNEODUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVJbWFnZUVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQzlEMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFSW1hZ2VFbGVtZW50LmggKi87IH07CisJCUIyRkEzRDg3
MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFTWVyZ2VFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0M5RjBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdGRU1lcmdlRWxlbWVudC5oICovOyB9OworCQlCMkZBM0Q4OTBBQjc1QTZGMDAwRTVB
QzQgLyogSlNTVkdGRU1lcmdlTm9kZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0ExMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZF
TWVyZ2VOb2RlRWxlbWVudC5oICovOyB9OworCQlCMkZBM0Q4QjBBQjc1QTZGMDAwRTVBQzQgLyog
SlNTVkdGRU9mZnNldEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEIyRkEzQ0EzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFT2Zmc2V0RWxl
bWVudC5oICovOyB9OworCQlCMkZBM0Q4RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVBvaW50
TGlnaHRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMkZBM0NBNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRVBvaW50TGlnaHRFbGVtZW50
LmggKi87IH07CisJCUIyRkEzRDhGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFU3BlY3VsYXJM
aWdodGluZ0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIyRkEzQ0E3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNEOTEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVT
cG90TGlnaHRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMkZBM0NBOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRVNwb3RMaWdodEVsZW1l
bnQuaCAqLzsgfTsKKwkJQjJGQTNEOTMwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVUaWxlRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJG
QTNDQUIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVUaWxlRWxlbWVudC5oICovOyB9OworCQlC
MkZBM0Q5NTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVR1cmJ1bGVuY2VFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NBRDBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGRVR1cmJ1bGVuY2VFbGVtZW50LmggKi87IH07CisJCUIyRkEz
RDk3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZpbHRlckVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0FGMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0ZpbHRlckVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNEOTkwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0IxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0ZvcmVpZ25PYmplY3RFbGVtZW50LmggKi87IH07CisJCUIyRkEzRDlCMEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR0dFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCMkZBM0NCMzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdHRWxlbWVudC5oICov
OyB9OworCQlCMkZBM0Q5RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdHcmFkaWVudEVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0I1
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0dyYWRpZW50RWxlbWVudC5oICovOyB9OworCQlCMkZB
M0Q5RjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdJbWFnZUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0I3MEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0ltYWdlRWxlbWVudC5oICovOyB9OworCQlCMkZBM0RBMTBBQjc1QTZGMDAwRTVB
QzQgLyogSlNTVkdMZW5ndGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyRkEzQ0I5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5oICovOyB9
OworCQlCMkZBM0RBMzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdMZW5ndGhMaXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NCQjBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdMZW5ndGhMaXN0LmggKi87IH07CisJCUIyRkEzREE1MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDQkQwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmggKi87IH07CisJCUIyRkEzREE3MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR0xpbmVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NCRjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdMaW5l
RWxlbWVudC5oICovOyB9OworCQlCMkZBM0RBOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdNYXJr
ZXJFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0NDMTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNYXJrZXJFbGVtZW50LmggKi87IH07
CisJCUIyRkEzREFCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR01hc2tFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NDMzBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdNYXNrRWxlbWVudC5oICovOyB9OworCQlCMkZBM0RBRDBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdNYXRyaXguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0M1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hdHJpeC5o
ICovOyB9OworCQlCMkZBM0RBRjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdNZXRhZGF0YUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEz
Q0M3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01ldGFkYXRhRWxlbWVudC5oICovOyB9OworCQlC
MkZBM0RCMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdOdW1iZXJMaXN0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NDOTBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdOdW1iZXJMaXN0LmggKi87IH07CisJCUIyRkEzREI1MEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR1BhdGhFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMkZBM0NDRDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoRWxlbWVu
dC5oICovOyB9OworCQlCMkZBM0RCNzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NDRjBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnLmggKi87IH07CisJCUIyRkEzREI5MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdBcmNBYnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0QxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BhdGhTZWdBcmNBYnMuaCAqLzsgfTsKKwkJQjJGQTNEQkIwQUI3NUE2RjAwMEU1QUM0IC8qIEpT
U1ZHUGF0aFNlZ0FyY1JlbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjJGQTNDRDMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0FyY1JlbC5o
ICovOyB9OworCQlCMkZBM0RCRDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ2xvc2VQ
YXRoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZB
M0NENTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ2xvc2VQYXRoLmggKi87IH07CisJ
CUIyRkEzREJGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0Q3
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMuaCAqLzsgfTsK
KwkJQjJGQTNEQzEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Jl
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTND
RDkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5oICovOyB9
OworCQlCMkZBM0RDMzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1Ymlj
U21vb3RoQWJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0NEQjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21v
b3RoQWJzLmggKi87IH07CisJCUIyRkEzREM1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhT
ZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0REMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdD
dXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaCAqLzsgfTsKKwkJQjJGQTNEQzcwQUI3NUE2RjAwMEU1QUM0
IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0RGMEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljQWJzLmggKi87IH07CisJCUIyRkEzREM5MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljUmVsLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NFMTBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1JlbC5oICovOyB9OworCQlCMkZB
M0RDQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290
aEFicy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJG
QTNDRTMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9v
dGhBYnMuaCAqLzsgfTsKKwkJQjJGQTNEQ0QwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNl
Z0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0U1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhT
ZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoUmVsLmggKi87IH07CisJCUIyRkEzRENGMEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9BYnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0U3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BhdGhTZWdMaW5ldG9BYnMuaCAqLzsgfTsKKwkJQjJGQTNERDEwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzQ0U5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmggKi87IH07CisJCUIyRkEzREQzMEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NFQjBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5oICovOyB9OworCQlCMkZBM0RE
NTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvUmVsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NFRDBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdQYXRoU2VnTGluZXRvUmVsLmggKi87IH07CisJCUIyRkEzREQ3MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbEFicy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDRUYwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsQWJzLmggKi87IH07CisJCUIyRkEzREQ5MEFC
NzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9WZXJ0aWNhbFJlbC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDRjEwQUI3NUE2RTAw
MEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsUmVsLmggKi87IH07CisJCUIyRkEz
RERCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaXN0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NGMzBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdQYXRoU2VnTGlzdC5oICovOyB9OworCQlCMkZBM0RERDBBQjc1QTZGMDAwRTVBQzQg
LyogSlNTVkdQYXRoU2VnTW92ZXRvQWJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0NGNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2Vn
TW92ZXRvQWJzLmggKi87IH07CisJCUIyRkEzRERGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1Bh
dGhTZWdNb3ZldG9SZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEIyRkEzQ0Y3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdNb3ZldG9SZWwu
aCAqLzsgfTsKKwkJQjJGQTNERTEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUGF0dGVybkVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEz
Q0Y5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdHRlcm5FbGVtZW50LmggKi87IH07CisJCUIy
RkEzREUzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BvaW50TGlzdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNDRkIwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHUG9pbnRMaXN0LmggKi87IH07CisJCUIyRkEzREU2MEFCNzVBNkYwMDBFNUFDNCAv
KiBKU1NWR1BvbHlnb25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCMkZBM0NGRTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQb2x5Z29uRWxl
bWVudC5oICovOyB9OworCQlCMkZBM0RFODBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQb2x5bGlu
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIyRkEzRDAwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BvbHlsaW5lRWxlbWVudC5oICovOyB9
OworCQlCMkZBM0RFQTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlv
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0Qw
MjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmggKi87IH07CisJ
CUIyRkEzREVDMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNEMDQw
QUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmggKi87IH07CisJ
CUIyRkEzREVFMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1JlY3RFbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QwNjBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdSZWN0RWxlbWVudC5oICovOyB9OworCQlCMkZBM0RGMTBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdSZW5kZXJpbmdJbnRlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDA5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1Jl
bmRlcmluZ0ludGVudC5oICovOyB9OworCQlCMkZBM0RGMzBBQjc1QTZGMDAwRTVBQzQgLyogSlNT
VkdTY3JpcHRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMkZBM0QwQjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTY3JpcHRFbGVtZW50Lmgg
Ki87IH07CisJCUIyRkEzREY1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1NldEVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDBEMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR1NldEVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNERjcwQUI3
NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU3RvcEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDBGMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1N0b3BFbGVtZW50LmggKi87IH07CisJCUIyRkEzREY5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R1N0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEIyRkEzRDExMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1N0cmluZ0xpc3QuaCAqLzsgfTsK
KwkJQjJGQTNERkIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU3R5bGVFbGVtZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QxMzBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdTdHlsZUVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNERkQwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHU1ZHRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNEMTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU1ZH
RWxlbWVudC5oICovOyB9OworCQlCMkZBM0RGRjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTd2l0
Y2hFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0QxNzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTd2l0Y2hFbGVtZW50LmggKi87IH07
CisJCUIyRkEzRTAxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1N5bWJvbEVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDE5MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1N5bWJvbEVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNFMDMwQUI3
NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGV4dENvbnRlbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QxQjBBQjc1QTZGMDAwRTVBQzQg
LyogSlNTVkdUZXh0Q29udGVudEVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNFMDUwQUI3NUE2RjAw
MEU1QUM0IC8qIEpTU1ZHVGV4dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDFEMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRF
bGVtZW50LmggKi87IH07CisJCUIyRkEzRTA3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRQ
b3NpdGlvbmluZ0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyRkEzRDFGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRQb3NpdGlvbmlu
Z0VsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNFMDkwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGl0
bGVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMkZBM0QyMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUaXRsZUVsZW1lbnQuaCAqLzsgfTsK
KwkJQjJGQTNFMEIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVHJhbnNmb3JtLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QyMzBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdUcmFuc2Zvcm0uaCAqLzsgfTsKKwkJQjJGQTNFMEQwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHVHJhbnNmb3JtTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjJGQTNEMjUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVHJhbnNm
b3JtTGlzdC5oICovOyB9OworCQlCMkZBM0UwRjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUUmVm
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QjJGQTNEMjcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVFJlZkVsZW1lbnQuaCAqLzsgfTsKKwkJ
QjJGQTNFMTEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVFNwYW5FbGVtZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QyOTBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdUU3BhbkVsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNFMTMwQUI3NUE2RjAw
MEU1QUM0IC8qIEpTU1ZHVW5pdFR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QyQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdVbml0VHlw
ZXMuaCAqLzsgfTsKKwkJQjJGQTNFMTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNE
MkQwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5oICovOyB9OworCQlCMkZBM0Ux
NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdWaWV3RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjJGQTNEMkYwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHVmlld0VsZW1lbnQuaCAqLzsgfTsKKwkJQjJGQTNFMTkwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHWm9vbUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMkZBM0QzMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdab29tRXZlbnQuaCAqLzsg
fTsKKwkJQjUxQTJGM0YxN0Q3RDNBRTAwNzI1MTdBIC8qIEltYWdlUXVhbGl0eUNvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1MUEyRjNF
MTdEN0QzQTQwMDcyNTE3QSAvKiBJbWFnZVF1YWxpdHlDb250cm9sbGVyLmggKi87IH07CisJCUI1
MzIwRDZCMTIyQTI0RTkwMDJEMTQ0MCAvKiBGb250UGxhdGZvcm1EYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTMyMEQ2OTEyMkEyNEU5MDAyRDE0
NDAgLyogRm9udFBsYXRmb3JtRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUI1NjJEQjYwMTdEM0NENjMwMDEwQUY5NiAvKiBIVE1MRWxlbWVu
dFR5cGVIZWxwZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCNTYyREI1RTE3RDNDRDU2MDAxMEFGOTYgLyogSFRNTEVsZW1lbnRUeXBlSGVscGVycy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUI1NjJE
QjYxMTdEM0NENjYwMDEwQUY5NiAvKiBTVkdFbGVtZW50VHlwZUhlbHBlcnMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1NjJEQjVGMTdEM0NENTYwMDEw
QUY5NiAvKiBTVkdFbGVtZW50VHlwZUhlbHBlcnMuaCAqLzsgfTsKKwkJQjU2NTc5QjUxODI0RDEy
QTAwRTc5RjIzIC8qIFJlbmRlckNoaWxkSXRlcmF0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1NjU3OUI0MTgyNEQxMkEwMEU3OUYyMyAvKiBSZW5k
ZXJDaGlsZEl0ZXJhdG9yLmggKi87IH07CisJCUI1N0NCNTJFMTgyQTNFRkMwMDc5QTY0NyAvKiBM
ZWdhY3lJbmxpbmVFbGVtZW50Qm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCNTdDQjUyQjE4MkEzN0Y2MDA3OUE2NDcgLyogTGVnYWN5SW5saW5lRWxl
bWVudEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUI1OTVGRjQ3MTgyNENFRTMwMEZGNTFDRCAvKiBSZW5kZXJJdGVyYXRvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjU5NUZGNDYxODI0Q0VFMzAw
RkY1MUNEIC8qIFJlbmRlckl0ZXJhdG9yLmggKi87IH07CisJCUI1OURENjk5MTE5MDI5RTUwMDdF
OTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEI1OURENjk3MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNl
Q2FsbGJhY2suaCAqLzsgfTsKKwkJQjU5REQ2OUQxMTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJh
bnNhY3Rpb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjU5REQ2OUIxMTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25DYWxs
YmFjay5oICovOyB9OworCQlCNTlERDZBMTExOTAyQTUyMDA3RTk2ODQgLyogSlNTUUxUcmFuc2Fj
dGlvbkVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEI1OURENjlGMTE5MDJBNTIwMDdFOTY4NCAvKiBKU1NRTFRyYW5zYWN0aW9uRXJy
b3JDYWxsYmFjay5oICovOyB9OworCQlCNTlERDZBNTExOTAyQTYyMDA3RTk2ODQgLyogSlNTUUxT
dGF0ZW1lbnRDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQjU5REQ2QTMxMTkwMkE2MjAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50Q2FsbGJh
Y2suaCAqLzsgfTsKKwkJQjU5REQ2QTkxMTkwMkE3MTAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50
RXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQjU5REQ2QTcxMTkwMkE3MTAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50RXJyb3JDYWxs
YmFjay5oICovOyB9OworCQlCNTlFRDIzQjE4MjcyNjc5MDA2RDU2NEMgLyogUmVuZGVyQW5jZXN0
b3JJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQjU5RUQyM0ExODI3MjY3OTAwNkQ1NjRDIC8qIFJlbmRlckFuY2VzdG9ySXRlcmF0b3IuaCAq
LzsgfTsKKwkJQjVBNjg0MjIwRkZBQkU5ODAwRDI0Njg5IC8qIFNRTGl0ZUZpbGVTeXN0ZW0uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI1QTY4NDIxMEZG
QUJFOTgwMEQyNDY4OSAvKiBTUUxpdGVGaWxlU3lzdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjVCNjU4NzQxODZGREU0QzAwOUMyNkU4IC8q
IFJlbmRlclB0ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQURFMTY3MzYxODEwNTBDMzAwNDYzQTJFIC8qIFJlbmRlclB0ci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUI1QjdBMTcxMTdDMTBBQzAwMEU0
QUEwQSAvKiBFbGVtZW50RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQjVCN0ExNkUxN0MxMDQ4MDAwRTRBQTBBIC8qIEVsZW1lbnREYXRhLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQjY1NjYyNzAx
MjBCMTIyNzAwNkVBODVDIC8qIEpTSURCVHJhbnNhY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI2NTY2MjZFMTIwQjEyMjcwMDZFQTg1QyAvKiBK
U0lEQlRyYW5zYWN0aW9uLmggKi87IH07CisJCUI2NThGRkEyMTUyMkVGM0EwMERENTU5NSAvKiBK
U1JhZGlvTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEI2NThGRkEwMTUyMkVGM0EwMERENTU5NSAvKiBKU1JhZGlvTm9kZUxpc3QuaCAqLzsg
fTsKKwkJQjY1OEZGQTYxNTIyRUZBQTAwREQ1NTk1IC8qIFJhZGlvTm9kZUxpc3QuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI2NThGRkE0MTUyMkVGQUEw
MERENTU5NSAvKiBSYWRpb05vZGVMaXN0LmggKi87IH07CisJCUI2RDlEMjM1MTRFQUJEMjYwMDkw
RDc1RSAvKiBGb2N1c0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCNkQ5RDIzMzE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oICovOyB9
OworCQlCNkQ5RDI3QjE0RUFDMDg2MDA5MEQ3NUUgLyogSlNGb2N1c0V2ZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNkQ5RDI3OTE0RUFDMDg2MDA5
MEQ3NUUgLyogSlNGb2N1c0V2ZW50LmggKi87IH07CisJCUI3MUZFNkRGMTEwOTFDQjMwMERBRUY3
NyAvKiBQcmludENvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEI3NzZENDNBMTEwNDUyNUQwMEJFQjBFQyAvKiBQcmludENvbnRleHQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCOERCREI0QzEz
MEIwRjhBMDBGNUNEQjEgLyogU2V0U2VsZWN0aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjhEQkRCNDgxMzBCMEY4QTAwRjVDREIxIC8q
IFNldFNlbGVjdGlvbkNvbW1hbmQuaCAqLzsgfTsKKwkJQjhEQkRCNEUxMzBCMEY4QTAwRjVDREIx
IC8qIFNwZWxsaW5nQ29ycmVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEI4REJEQjRBMTMwQjBGOEEwMEY1Q0RCMSAvKiBTcGVsbGlu
Z0NvcnJlY3Rpb25Db21tYW5kLmggKi87IH07CisJCUJDMDBGMDE1MEUwQTE4OTUwMEZEMDRFMyAv
KiBKU0ZpbGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDMDBGMDExMEUwQTE4OTUwMEZEMDRFMyAvKiBKU0ZpbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzAwRjAxNzBFMEExODk1MDBGRDA0RTMg
LyogSlNGaWxlTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkMwMEYwMTMwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZUxpc3QuaCAqLzsgfTsKKwkJ
QkMwMkE2M0MwRTA5QTlDRjAwNEI2RDJCIC8qIENTU0Z1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMDJBNjNCMEUwOUE5Q0YwMDRC
NkQyQiAvKiBDU1NGdW5jdGlvblZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkMwNkVEMDcwQkZENUJBRTAwODU2RTlEIC8qIEpTSFRNTFRh
YmxlU2VjdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDMDZFRDA1MEJGRDVCQUUwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZVNlY3Rpb25F
bGVtZW50LmggKi87IH07CisJCUJDMDZFRDlFMEJGRDY2MDYwMDg1NkU5RCAvKiBKU0hUTUxUYWJs
ZUNvbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDMDZFRDlBMEJGRDY2MDYwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUNvbEVsZW1lbnQuaCAq
LzsgfTsKKwkJQkMwNkVEQTAwQkZENjYwNjAwODU2RTlEIC8qIEpTSFRNTFRhYmxlUm93RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMwNkVE
OUMwQkZENjYwNjAwODU2RTlEIC8qIEpTSFRNTFRhYmxlUm93RWxlbWVudC5oICovOyB9OworCQlC
QzA2RURFNDBCRkQ2RDBEMDA4NTZFOUQgLyogSlNIVE1MVGFibGVDZWxsRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMwNkVERTIwQkZENkQw
RDAwODU2RTlEIC8qIEpTSFRNTFRhYmxlQ2VsbEVsZW1lbnQuaCAqLzsgfTsKKwkJQkMwNkVFMDUw
QkZENzFBQTAwODU2RTlEIC8qIEpTSFRNTFRhYmxlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMwNkVFMDMwQkZENzFBQTAwODU2RTlEIC8q
IEpTSFRNTFRhYmxlRWxlbWVudC5oICovOyB9OworCQlCQzA3M0JBQTBDMzk5QjFGMDAwRjU5Nzkg
LyogRmxvYXRDb252ZXJzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzA3M0JBOTBDMzk5QjFGMDAwRjU5NzkgLyogRmxvYXRDb252ZXJzaW9uLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkMxMDEz
N0MyNUMzNjI0QjAwREM3NzNDIC8qIENvbG9yTW9kZWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzEwMTM3QjI1QzM2MjRCMDBEQzc3M0MgLyogQ29s
b3JNb2RlbHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlCQzEwMTM3RjI1QzM2MzE2MDBEQzc3M0MgLyogQ29sb3JUcmFuc2ZlckZ1bmN0aW9ucy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMxMDEzN0Uy
NUMzNjMxNjAwREM3NzNDIC8qIENvbG9yVHJhbnNmZXJGdW5jdGlvbnMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzEwRDc2ODE3RDhFRTcxMDA1
RTI2MjYgLyogUmVuZGVyQmxvY2tGbG93LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQ0ZCNDVGMzE3RDhFMzkyMDA0NDQ0NDYgLyogUmVuZGVyQmxvY2tG
bG93LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
QkMxMjRFRTgwQzI2NDFDRDAwOUUyMzQ5IC8qIEJhclByb3AuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMTI0RUU1MEMyNjQxQ0QwMDlFMjM0OSAvKiBC
YXJQcm9wLmggKi87IH07CisJCUJDMTI0RjAwMEMyNjQ0N0EwMDlFMjM0OSAvKiBKU0JhclByb3Au
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMTI0RUZF
MEMyNjQ0N0EwMDlFMjM0OSAvKiBKU0JhclByb3AuaCAqLzsgfTsKKwkJQkMxMjhBNzMxMzdDODY3
QzAwQ0FDODQ1IC8qIFJlbmRlckdyaWQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDMTI4QTcyMTM3Qzg2N0MwMENBQzg0NSAvKiBSZW5kZXJHcmlkLmgg
Ki87IH07CisJCUJDMTQwMjhCMEU4MzY4MDgwMDMxOTcxNyAvKiBTY3JvbGxiYXJUaGVtZUNvbXBv
c2l0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMx
NDAyODkwRTgzNjgwODAwMzE5NzE3IC8qIFNjcm9sbGJhclRoZW1lQ29tcG9zaXRlLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkMxQTdEOTgxOEZD
QjVCMDAwNDIxODc5IC8qIFJlbmRlck11bHRpQ29sdW1uU3Bhbm5lclBsYWNlaG9sZGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzFBN0Q5NjE4RkNC
NUIwMDA0MjE4NzkgLyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCAqLzsg
fTsKKwkJQkMyMjcyODcwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxlUmVmbGVjdGlvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMyMjcyODYwRTgyRTcw
NzAwRTdGOTc1IC8qIFN0eWxlUmVmbGVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDMjI3MkEyMEU4MkU4N0MwMEU3Rjk3NSAvKiBDdXJz
b3JEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vyc29yRGF0YS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDMjI3MkFEMEU4MkU4RjMwMEU3Rjk3
NSAvKiBDdXJzb3JMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQzIyNzJBQzBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vyc29yTGlzdC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDMjI3MkJEMEU4MkVB
QUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzIyNzJCQjBFODJFQUFFMDBFN0Y5NzUg
LyogU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDMjI3MkU0MEU4MkVFOUIwMEU3Rjk3NSAvKiBTdHls
ZVJhcmVJbmhlcml0ZWREYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzIyNzJFMjBFODJFRTlCMDBFN0Y5NzUgLyogU3R5bGVSYXJlSW5oZXJpdGVk
RGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDMjI3MzA0MEU4MkYxRTYwMEU3Rjk3NSAvKiBTdHlsZUluaGVyaXRlZERhdGEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjI3MzAyMEU4MkYxRTYw
MEU3Rjk3NSAvKiBTdHlsZUluaGVyaXRlZERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzIyNzQ3OTBFODM2NkUyMDBFN0Y5NzUgLyogU1ZH
UmVuZGVyU3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDMjI3NDc1MEU4MzY2RTIwMEU3Rjk3NSAvKiBTVkdSZW5kZXJTdHlsZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDMjI3NDdCMEU4MzY2
RTIwMEU3Rjk3NSAvKiBTVkdSZW5kZXJTdHlsZURlZnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjI3NDc3MEU4MzY2RTIwMEU3Rjk3NSAvKiBTVkdS
ZW5kZXJTdHlsZURlZnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCQzIzRUU5MjBEQUVEMkJDMDA5RkRDOTEgLyogQ1NTSW1hZ2VHZW5lcmF0b3JW
YWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMy
M0VFOTEwREFFRDJCQzAwOUZEQzkxIC8qIENTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzIzRjBEQjBEQUZG
NEE0MDA5RkRDOTEgLyogR2VuZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjNGMERBMERBRkY0QTQwMDlGREM5MSAvKiBHZW5lcmF0
ZWRJbWFnZS5oICovOyB9OworCQlCQzI3NEIyRjE0MEVCRUIyMDBFQURGQTYgLyogQ1NTQm9yZGVy
SW1hZ2VTbGljZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQzI3NEIyRTE0MEVCRUIyMDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZh
bHVlLmggKi87IH07CisJCUJDMkNCRjRFMTQwRjFBQkQwMDM4NzlCRSAvKiBKU1dlYkdMQ29udGV4
dEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzJDQkY0QjE0MEYxQTY1MDAzODc5QkUgLyogSlNXZWJHTENvbnRleHRFdmVudC5oICovOyB9Owor
CQlCQzJDQ0ExMDI2NTVEREIyMDBCOEMwMzUgLyogRGVzdGluYXRpb25Db2xvclNwYWNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzJDQ0EwRTI2NTVE
REIyMDBCOEMwMzUgLyogRGVzdGluYXRpb25Db2xvclNwYWNlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkMzMDVDN0EwQzA3NkJCMzAwQ0QyMEYw
IC8qIEpTSFRNTE9iamVjdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDMzA1Qzc4MEMwNzZCQjMwMENEMjBGMCAvKiBKU0hUTUxPYmplY3RF
bGVtZW50LmggKi87IH07CisJCUJDMzQ4QkQ0MERCN0Y4MDQwMDRBQkFCOSAvKiBKU1hNTEh0dHBS
ZXF1ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzM0OEJEMjBEQjdGODA0MDA0QUJBQjkgLyogSlNYTUxIdHRwUmVxdWVzdC5oICovOyB9OworCQlC
QzM0OEJENDBEQjdGODA0MDA0QUJBQkEgLyogV2ViQ29yZUpTQnVpbHRpbnMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMzQ4QkQyMERCN0Y4MDQwMDRB
QkFCQSAvKiBXZWJDb3JlSlNCdWlsdGlucy5oICovOyB9OworCQlCQzM0OEJENDBEQjdGODA0MDA0
QUJBQkIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMzNDhCRDIwREI3RjgwNDAwNEFCQUJCIC8qIFdl
YkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlCQzNCQzI5QzBFOTFBQjBGMDA4MzU1ODggLyogSG9zdFdpbmRv
dy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMzQkMy
OUIwRTkxQUIwRjAwODM1NTg4IC8qIEhvc3RXaW5kb3cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzNCRTEyQjBFOTgwOTJGMDA4MzU1ODggLyog
UG9wdXBNZW51U3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDM0JFMTJBMEU5ODA5MkYwMDgzNTU4OCAvKiBQb3B1cE1lbnVTdHlsZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDM0JFOTk0MEU5
QzFDN0MwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxiYXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDM0JFOTkxMEU5QzFDN0MwMDgzNTU4OCAvKiBSZW5k
ZXJTY3JvbGxiYXIuaCAqLzsgfTsKKwkJQkMzQkU5OTUwRTlDMUM3QzAwODM1NTg4IC8qIFJlbmRl
clNjcm9sbGJhclBhcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDM0JFOTkyMEU5QzFDN0MwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxiYXJQYXJ0Lmgg
Ki87IH07CisJCUJDM0JFOTk5MEU5QzFFNUQwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxiYXJUaGVt
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMzQkU5
OTgwRTlDMUU1RDAwODM1NTg4IC8qIFJlbmRlclNjcm9sbGJhclRoZW1lLmggKi87IH07CisJCUJD
M0MzOUI3MEMwRDNEOEQwMDVGNEQ3QSAvKiBKU01lZGlhTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMzQzM5QjUwQzBEM0Q4RDAwNUY0RDdBIC8q
IEpTTWVkaWFMaXN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQkMzRDg1QkMxQzBFMkU3QTAwRDNCNjEwIC8qIEpTSFRNTFBpY3R1cmVFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzgwOEIx
MzFDMEUyQjM1MDA2NkZENkIgLyogSlNIVE1MUGljdHVyZUVsZW1lbnQuaCAqLzsgfTsKKwkJQkMz
RTYyNDMyNjU5NzkxODAwNTQ4QUNEIC8qIFBsYXRmb3JtQ29sb3JTcGFjZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMzRTYyNDIyNjU5NzkxNzAwNTQ4
QUNEIC8qIFBsYXRmb3JtQ29sb3JTcGFjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUJDNDM2OEU4MEMyMjZFMzIwMDVFRkI1RiAvKiBSZWN0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzQzNjhFNzBD
MjI2RTMyMDA1RUZCNUYgLyogUmVjdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUJDNDZDMUZEMEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU0ZvbnRG
YWNlUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM0NkMxRjMwQzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTRm9udEZhY2VSdWxlLmggKi87IH07CisJ
CUJDNDZDMUZGMEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU0ltcG9ydFJ1bGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNDZDMUY1MEMwRERDOEYwMDIw
Q0ZDMyAvKiBKU0NTU0ltcG9ydFJ1bGUuaCAqLzsgfTsKKwkJQkM0NkMyMDEwQzBEREM4RjAwMjBD
RkMzIC8qIEpTQ1NTTWVkaWFSdWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCQzQ2QzFGNzBDMEREQzhGMDAyMENGQzMgLyogSlNDU1NNZWRpYVJ1bGUu
aCAqLzsgfTsKKwkJQkM0NkMyMDMwQzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTUGFnZVJ1bGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNDZDMUY5MEMw
RERDOEYwMDIwQ0ZDMyAvKiBKU0NTU1BhZ2VSdWxlLmggKi87IH07CisJCUJDNDZDMjA3MEMwRERD
QTEwMDIwQ0ZDMyAvKiBKU0NTU1N0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0NkMyMDUwQzBERENBMTAwMjBDRkMzIC8qIEpTQ1NTU3R5
bGVSdWxlLmggKi87IH07CisJCUJDNDkxOEM3MEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxGcmFt
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDNDkxOEMxMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxGcmFtZUVsZW1lbnQuaCAqLzsgfTsK
KwkJQkM0OTE4QzkwQkZFQTA1MDAwOUQ2MzE2IC8qIEpTSFRNTElGcmFtZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNDkxOEMzMEJGRUEw
NTAwMDlENjMxNiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50LmggKi87IH07CisJCUJDNDkxQjc5MEMw
MjNFRkQwMDlENjMxNiAvKiBKU0hUTUxNYXJxdWVlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0OTFCNzcwQzAyM0VGRDAwOUQ2MzE2IC8q
IEpTSFRNTE1hcnF1ZWVFbGVtZW50LmggKi87IH07CisJCUJDNEEyM0VDMjVFQzE2MDIwMEFBQzYz
MCAvKiBDb2xvckx1bWluYW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkM0QTIzRUIyNUVDMTYwMjAwQUFDNjMwIC8qIENvbG9yTHVtaW5hbmNlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM0QTUz
MjMyNTYwNTI3NjAwMjhDNTkyIC8qIEVkaXRhYmxlTGlua0JlaGF2aW9yLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzRBNTMyMTI1NjA1MjcwMDAyOEM1
OTIgLyogRWRpdGFibGVMaW5rQmVoYXZpb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCQzRBNTMyNTI1NjA1NTVGMDAyOEM1OTIgLyogVGV4dERp
cmVjdGlvblN1Ym1lbnVJbmNsdXNpb25CZWhhdmlvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0QTUzMjQyNTYwNTU1OTAwMjhDNTkyIC8qIFRleHRE
aXJlY3Rpb25TdWJtZW51SW5jbHVzaW9uQmVoYXZpb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzRBNTMyNzI1NjA1NUQzMDAyOEM1OTIgLyog
VXNlckludGVyZmFjZURpcmVjdGlvblBvbGljeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0QTUzMjYyNTYwNTVEMzAwMjhDNTkyIC8qIFVzZXJJbnRl
cmZhY2VEaXJlY3Rpb25Qb2xpY3kuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlCQzRBNTMyOTI1NjA1NjNCMDAyOEM1OTIgLyogUERGSW1hZ2VDYWNo
aW5nUG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzRBNTMyODI1NjA1NjNCMDAyOEM1OTIgLyogUERGSW1hZ2VDYWNoaW5nUG9saWN5LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM0QTUzMkIy
NTYwNTY2RTAwMjhDNTkyIC8qIEZyYW1lRmxhdHRlbmluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0QTUzMkEyNTYwNTY2RTAwMjhDNTkyIC8qIEZy
YW1lRmxhdHRlbmluZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUJDNEE1MzJEMjU2MDU2RDUwMDI4QzU5MiAvKiBEZWJ1Z092ZXJsYXlSZWdpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzRBNTMy
QzI1NjA1NkQ1MDAyOEM1OTIgLyogRGVidWdPdmVybGF5UmVnaW9ucy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNEE1MzJGMjU2MDU3Q0QwMDI4
QzU5MiAvKiBGb250TG9hZFRpbWluZ092ZXJyaWRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzRBNTMyRTI1NjA1N0NEMDAyOEM1OTIgLyogRm9udExv
YWRUaW1pbmdPdmVycmlkZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUJDNEE1MzMxMjU2MDU5MDMwMDI4QzU5MiAvKiBGb3JjZWRBY2Nlc3NpYmls
aXR5VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDNEE1MzMwMjU2MDU5MDMwMDI4QzU5MiAvKiBGb3JjZWRBY2Nlc3NpYmlsaXR5VmFsdWUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzRBNTMz
MzI1NjA1OTgzMDAyOEM1OTIgLyogSFRNTFBhcnNlclNjcmlwdGluZ0ZsYWdQb2xpY3kuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNEE1MzMyMjU2MDU5
ODMwMDI4QzU5MiAvKiBIVE1MUGFyc2VyU2NyaXB0aW5nRmxhZ1BvbGljeS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNEE1MzM1MjU2MDVBNTYw
MDI4QzU5MiAvKiBEYXRhRGV0ZWN0b3JUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQzRBNTMzNDI1NjA1QTU2MDAyOEM1OTIgLyogRGF0YURldGVj
dG9yVHlwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUJDNEE1MzM3MjU2MDVBRTEwMDI4QzU5MiAvKiBTdG9yYWdlQmxvY2tpbmdQb2xpY3kuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNEE1MzM2MjU2
MDVBRTEwMDI4QzU5MiAvKiBTdG9yYWdlQmxvY2tpbmdQb2xpY3kuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzRBNTMzOTI1NjA2Mzk4MDAyOEM1
OTIgLyogRm9udFJlbmRlcmluZ01vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDNEE1MzM4MjU2MDYzOTgwMDI4QzU5MiAvKiBGb250UmVuZGVyaW5n
TW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDNEE1MzNCMjU2MDY0RTEwMDI4QzU5MiAvKiBUZXh0RGlyZWN0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzRBNTMzQTI1NjA2NEUxMDAyOEM1
OTIgLyogVGV4dERpcmVjdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUJDNTExNTZFMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRv
ck1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
NTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLzsgfTsKKwkJ
QkM1M0M1RjUwREE1NkI5MjAwMjFFQjVEIC8qIEdyYWRpZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzUzQzVGNDBEQTU2QjkyMDAyMUVCNUQgLyog
R3JhZGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlCQzUzQzY5MjBEQTU5MTE0MDAyMUVCNUQgLyogQ1NTR3JhZGllbnRWYWx1ZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0M2OTEwREE1OTEx
NDAwMjFFQjVEIC8qIENTU0dyYWRpZW50VmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzUzRDkxMTExNDMxMENDMDAwRDgxN0UgLyogV2Vi
Q29yZUpTQ2xpZW50RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkM1M0Q5MTAxMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0NsaWVudERhdGEu
aCAqLzsgfTsKKwkJQkM1M0RBMkUxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1M0RBMkQx
MTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJXb3JsZC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNUExMkUwMERDMDQxNDgwMEM5QUZBRCAv
KiBDU1NSZWZsZWN0VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDNUExMkRFMERDMDQxNDgwMEM5QUZBRCAvKiBDU1NSZWZsZWN0VmFsdWUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVBODY4
NTBDMzM2NzYwMDBFRUE2NDkgLyogRE9NU2VsZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzVBODY4MjBDMzM2NzYwMDBFRUE2NDkgLyogRE9N
U2VsZWN0aW9uLmggKi87IH07CisJCUJDNUE4NkI2MEMzMzY3RTgwMEVFQTY0OSAvKiBKU0RPTVNl
bGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM1QTg2QjQwQzMzNjdFODAwRUVBNjQ5IC8qIEpTRE9NU2VsZWN0aW9uLmggKi87IH07CisJCUJD
NUM3NjJCMTQ5N0ZFMTQwMEJDNDc3NSAvKiBQbGF0Zm9ybUV2ZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzVDNzYyOTE0OTdGRTE0MDBCQzQ3NzUg
LyogUGxhdGZvcm1FdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUJDNUVCNURCMEU4MUI3RUEwMEIyNTk2NSAvKiBCb3JkZXJWYWx1ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RUI1REEwRTgx
QjdFQTAwQjI1OTY1IC8qIEJvcmRlclZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM1RUI1REQwRTgxQjhERDAwQjI1OTY1IC8qIE91dGxp
bmVWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM1RUI1REMwRTgxQjhERDAwQjI1OTY1IC8qIE91dGxpbmVWYWx1ZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNUVCNURGMEU4MUI5QUIwMEIy
NTk2NSAvKiBDb2xsYXBzZWRCb3JkZXJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RUI1REUwRTgxQjlBQjAwQjI1OTY1IC8qIENvbGxhcHNl
ZEJvcmRlclZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQkM1RUI1RTEwRTgxQkU4NzAwQjI1OTY1IC8qIEJvcmRlckRhdGEuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNUVCNUUwMEU4MUJFODcw
MEIyNTk2NSAvKiBCb3JkZXJEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzVFQjVFNDBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJyb3VuZERhdGEuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVFQjY2ODBFODFDQjcx
MDBCMjU5NjUgLyogUmVuZGVyU3R5bGVDb25zdGFudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNUVCNjY3MEU4MUNCNzEwMEIyNTk2NSAvKiBSZW5k
ZXJTdHlsZUNvbnN0YW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUJDNUVCNjdCMEU4MUQzQkUwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNUVCNjdBMEU4
MUQzQkUwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVFQjY5QTBFODFEQTYzMDBCMjU5NjUgLyogU3R5
bGVWaXN1YWxEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQzVFQjY5ODBFODFEQTYzMDBCMjU5NjUgLyogU3R5bGVWaXN1YWxEYXRhLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM1RUI2OUYwRTgx
REFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkM1RUI2OUQwRTgxREFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNUVC
NkEzMEU4MURDNEYwMEIyNTk2NSAvKiBTdHlsZUJhY2tncm91bmREYXRhLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzVFQjZBMTBFODFEQzRGMDBCMjU5
NjUgLyogU3R5bGVCYWNrZ3JvdW5kRGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUJDNUVCNzJBMEU4MURFODEwMEIyNTk2NSAvKiBTdHlsZU1h
cnF1ZWVEYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzVFQjcyODBFODFERTgxMDBCMjU5NjUgLyogU3R5bGVNYXJxdWVlRGF0YS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNUVCNzRFMEU4MUUw
NjcwMEIyNTk2NSAvKiBTdHlsZU11bHRpQ29sRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RUI3NEMwRTgxRTA2NzAwQjI1OTY1IC8qIFN0eWxl
TXVsdGlDb2xEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RUI4MEUw
RTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNUVCOEI5MEU4MjAxQkQwMEIyNTk2
NSAvKiBTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNUVCOEI3MEU4MjAxQkQwMEIyNTk2NSAvKiBT
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVFQjhDNDBFODIwMzFCMDBCMjU5NjUgLyogU2hh
ZG93RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkM1RUI4QzIwRTgyMDMxQjAwQjI1OTY1IC8qIFNoYWRvd0RhdGEuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVFQjk1MTBFODIwNTZCMDBCMjU5
NjUgLyogQ291bnRlckRpcmVjdGl2ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDNUVCOTRGMEU4MjA1NkIwMEIyNTk2NSAvKiBDb3VudGVyRGlyZWN0
aXZlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDNUVCOTc5MEU4MjA2OTIwMEIyNTk2NSAvKiBDb3VudGVyQ29udGVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM1RUI5NzgwRTgyMDY5MjAwQjI1
OTY1IC8qIENvdW50ZXJDb250ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQkM1RUI5ODEwRTgyMDcyNTAwQjI1OTY1IC8qIENvbnRlbnREYXRh
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzVFQjk3
RjBFODIwNzI1MDBCMjU5NjUgLyogQ29udGVudERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzVFQkExMTBFODIzRTQ3MDBCMjU5NjUgLyog
S2V5ZnJhbWVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQzVFQkEwRjBFODIzRTQ3MDBCMjU5NjUgLyogS2V5ZnJhbWVMaXN0LmggKi87IH07CisJ
CUJDNjA0OUNDMERCNTYwQzIwMDIwNDczOSAvKiBDU1NDYW52YXNWYWx1ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2MDQ5Q0IwREI1NjBDMjAwMjA0
NzM5IC8qIENTU0NhbnZhc1ZhbHVlLmggKi87IH07CisJCUJDNjBENkU5MEQyOEQ4MzQwMEI5OTE4
RiAvKiBET01FeGNlcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDNjBENkU4MEQyOEQ4MzQwMEI5OTE4RiAvKiBET01FeGNlcHRpb24uaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzYwRDdDMTBE
MjlBNDYzMDBCOTkxOEYgLyogSlNET01FeGNlcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDNjBEN0JGMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RP
TUV4Y2VwdGlvbi5oICovOyB9OworCQlCQzYzNUU4QzI2NEMyQ0FFMDAwRUYzM0EgLyogUGl4ZWxC
dWZmZXJGb3JtYXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDNjM1RThCMjY0QzJDQUUwMDBFRjMzQSAvKiBQaXhlbEJ1ZmZlckZvcm1hdC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNjM1RThFMjY0
QzJDRTcwMDBFRjMzQSAvKiBQaXhlbEJ1ZmZlckNvbnZlcnNpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMENBNzRDMjY0QUVEMEEwMDRGREM2MiAv
KiBQaXhlbEJ1ZmZlckNvbnZlcnNpb24uaCAqLzsgfTsKKwkJQkM2NDY0MEExMUQ3RjMwNDAwNjQ1
NUIwIC8qIERPTVN0cmluZ01hcC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkM2NDY0MDgxMUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICov
OyB9OworCQlCQzY0NjQxQzExRDdGNDE2MDA2NDU1QjAgLyogRGF0YXNldERPTVN0cmluZ01hcC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2NDY0MUEx
MUQ3RjQxNjAwNjQ1NUIwIC8qIERhdGFzZXRET01TdHJpbmdNYXAuaCAqLzsgfTsKKwkJQkM2NDY0
OTgxMUQ4MjM0OTAwNjQ1NUIwIC8qIEpTRE9NU3RyaW5nTWFwLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzY0NjQ5NjExRDgyMzQ5MDA2NDU1QjAgLyog
SlNET01TdHJpbmdNYXAuaCAqLzsgfTsKKwkJQkM2NEI0Q0MwQ0I0Mjk1RDAwNUYyQjYyIC8qIENh
Y2hlZEZvbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDNjRCNENBMENCNDI5NUQwMDVGMkI2MiAvKiBDYWNoZWRGb250LmggKi87IH07CisJCUJDNjRC
NEQ2MENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM2NEI0Q0UwQ0I0Mjk4QTAwNUYyQjYyIC8qIENT
U0ZvbnRGYWNlLmggKi87IH07CisJCUJDNjRCNEQ4MENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250
RmFjZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkM2NEI0RDAwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNlU291cmNlLmggKi87IH07
CisJCUJDNjRCNERBMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZVNyY1ZhbHVlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzY0QjREMjBDQjQy
OThBMDA1RjJCNjIgLyogQ1NTRm9udEZhY2VTcmNWYWx1ZS5oICovOyB9OworCQlCQzY0QjREQzBD
QjQyOThBMDA1RjJCNjIgLyogQ1NTRm9udFNlbGVjdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzY0QjRENDBDQjQyOThBMDA1RjJCNjIgLyogQ1NT
Rm9udFNlbGVjdG9yLmggKi87IH07CisJCUJDNjkzMjc0MEQ3RTI5MzkwMEFFNDREMSAvKiBKU0RP
TVdpbmRvd0Jhc2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDNjkzMjcyMEQ3RTI5MzkwMEFFNDREMSAvKiBKU0RPTVdpbmRvd0Jhc2UuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzZENDRFRDBDMDdG
MkVEMDA3MkQyQzkgLyogSlNIVE1MRW1iZWRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzZENDRFQjBDMDdGMkVEMDA3MkQyQzkgLyogSlNI
VE1MRW1iZWRFbGVtZW50LmggKi87IH07CisJCUJDNkQ2RTI2MDlBRjk0MzUwMEY1OTc1OSAvKiBT
Y3JvbGxWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzZENkUyNTA5QUY5NDM1MDBGNTk3NTkgLyogU2Nyb2xsVmlldy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNzA5REUwMjY2MzIzQ0YwMEI5
QTIxQyAvKiBDU1NDYWxjU3ltYm9sVGFibGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDNzA5RERFMjY2MzIzQ0UwMEI5QTIxQyAvKiBDU1NDYWxjU3lt
Ym9sVGFibGUuaCAqLzsgfTsKKwkJQkM3NzJCM0MwQzRFQTkxRTAwODMyODVGIC8qIENTU0hlbHBl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3NzJC
MzYwQzRFQTkxRTAwODMyODVGIC8qIENTU0hlbHBlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNzcyQzQ3MEM0RUIyQzYwMDgzMjg1RiAvKiBY
TUxIdHRwUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkM3NzJDNDUwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBSZXF1ZXN0LmggKi87IH07
CisJCUJDNzcyQzRGMEM0RUIzMDQwMDgzMjg1RiAvKiBNSU1FVHlwZVJlZ2lzdHJ5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3MkM0RDBDNEVCMzA0
MDA4MzI4NUYgLyogTUlNRVR5cGVSZWdpc3RyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNzcyRTEzMTMzMTYyMEMwMDFFQzlDRSAvKiBDU1NM
aW5lQm94Q29udGFpblZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQzc3MkUxMjEzMzE2MjBDMDAxRUM5Q0UgLyogQ1NTTGluZUJveENvbnRhaW5W
YWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDNzc5RTE0MUJCMjE1QkIwMENBQThCRiAvKiBDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzc3OUUxMzFCQjIx
NUJCMDBDQUE4QkYgLyogQ1NTQ3VzdG9tUHJvcGVydHlWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDNzc5RTE3MUJCMjI3Q0EwMENBQThC
RiAvKiBTdHlsZUN1c3RvbVByb3BlcnR5RGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3NzlFMTUxQkIyMjZBMjAwQ0FBOEJGIC8qIFN0eWxlQ3Vz
dG9tUHJvcGVydHlEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQkM3RDhGRjAxQkQwM0I2NDAwRkZFNTQwIC8qIENTU1Vuc2V0VmFsdWUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDN0Q4RkVFMUJE
MDNCNjQwMEZGRTU0MCAvKiBDU1NVbnNldFZhbHVlLmggKi87IH07CisJCUJDN0Q4RkY0MUJEMUE0
NzkwMEZGRTU0MCAvKiBDU1NSZXZlcnRWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkM3RDhGRjIxQkQxQTQ3OTAwRkZFNTQwIC8qIENTU1JldmVy
dFZhbHVlLmggKi87IH07CisJCUJDN0Y0NEE4MEI5RTMyNEUwMEE5RDA4MSAvKiBJbWFnZU9ic2Vy
dmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzdG
NDRBNzBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDN0ZBNjIxMEQxRjBDQkQwMERCMjJB
OSAvKiBMaXZlTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDN0ZBNjFGMEQxRjBDQkQwMERCMjJBOSAvKiBMaXZlTm9kZUxpc3QuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzdGQTYyRDBE
MUYwRUZGMDBEQjIyQTkgLyogU3RhdGljTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDN0ZBNjJCMEQxRjBFRkYwMERCMjJBOSAvKiBTdGF0
aWNOb2RlTGlzdC5oICovOyB9OworCQlCQzgwQzk4ODBDRDI5NEVFMDBBMEI3QjMgLyogQ1NTVGlt
aW5nRnVuY3Rpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkM4MEM5ODYwQ0QyOTRFRTAwQTBCN0IzIC8qIENTU1RpbWluZ0Z1bmN0aW9uVmFs
dWUuaCAqLzsgfTsKKwkJQkM4MjQzMjkwRDBDRThBMjAwNDYwQzhGIC8qIEpTU1FMRXJyb3IuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDODI0MzI1MEQw
Q0U4QTIwMDQ2MEM4RiAvKiBKU1NRTEVycm9yLmggKi87IH07CisJCUJDODI0MzJBMEQwQ0U4QTIw
MDQ2MEM4RiAvKiBKU1NRTFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQzgyNDMyNjBEMENFOEEyMDA0NjBDOEYgLyogSlNTUUxUcmFu
c2FjdGlvbi5oICovOyB9OworCQlCQzgyNDNFOTBEMENGRDc1MDA0NjBDOEYgLyogV2luZG93RmVh
dHVyZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
ODI0M0U3MEQwQ0ZENzUwMDQ2MEM4RiAvKiBXaW5kb3dGZWF0dXJlcy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDOEFFMzRGMTJFQTA5NkEwMEVC
M0FFNiAvKiBTY3JvbGxhYmxlQXJlYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkM4QUUzNEQxMkVBMDk2QTAwRUIzQUU2IC8qIFNjcm9sbGFibGVBcmVh
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM4
Qjg1M0UwRTdDN0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJhclRoZW1lTWFjLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzhCODUzQzBFN0M3RjExMDBBQjY5
ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlCQzhCODU0QjBFN0M3RjU2MDBBQjY5ODQgLyogU2Nyb2xsYmFy
VGhlbWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
OEI4NTRBMEU3QzdGNTYwMEFCNjk4NCAvKiBTY3JvbGxiYXJUaGVtZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDOEJGMTUxMTA1ODEzQkYwMEE0
MEEwNyAvKiBVc2VyU3R5bGVTaGVldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkM4QkYxNTAxMDU4MTNCRjAwQTQwQTA3IC8qIFVzZXJTdHlsZVNoZWV0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM4
QkYxNUExMDU4MTQxODAwQTQwQTA3IC8qIFVzZXJTdHlsZVNoZWV0VHlwZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOEJGMTU5MTA1ODE0MTgwMEE0
MEEwNyAvKiBVc2VyU3R5bGVTaGVldFR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkM4QzhGQUUwRERDRDMxQjAwQjU5MkY0IC8qIFJlbmRl
clN0eWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
QzhDOEZBQzBERENEMzFCMDBCNTkyRjQgLyogUmVuZGVyU3R5bGUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzkyNkY4MTBDMDU1MjQ3MDA4Mjc3
NkIgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQzkyNkY3RjBDMDU1MjQ3MDA4Mjc3NkIgLyogSlNIVE1MRnJh
bWVTZXRFbGVtZW50LmggKi87IH07CisJCUJDOTQzOUMzMTE2Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05v
ZGVDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDOTQzOUMyMTE2Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQzk0NjJEODEwN0E3QjRDMDA4
NTcxOTMgLyogQmVmb3JlTG9hZEV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQzk0NjJENzEwN0E3QjRDMDA4NTcxOTMgLyogQmVmb3JlTG9hZEV2
ZW50LmggKi87IH07CisJCUJDOTQ2MzQ4MTA3QTkzNjYwMDg1NzE5MyAvKiBKU0JlZm9yZUxvYWRF
dmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM5
NDYzNDcxMDdBOTM2NjAwODU3MTkzIC8qIEpTQmVmb3JlTG9hZEV2ZW50LmggKi87IH07CisJCUJD
OTREMTRGMEMyNzVDNjgwMDZCQzYxNyAvKiBKU0hpc3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOTREMTREMEMyNzVDNjgwMDZCQzYxNyAvKiBK
U0hpc3RvcnkuaCAqLzsgfTsKKwkJQkM5NEQxNTQwQzI3NUM4QjAwNkJDNjE3IC8qIEhpc3Rvcnku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOTREMTUx
MEMyNzVDOEIwMDZCQzYxNyAvKiBIaXN0b3J5LmggKi87IH07CisJCUJDOTZEQjQzMEYzQTg4MEUw
MDU3M0NCMyAvKiBSZW5kZXJCb3hNb2RlbE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM5NkRCNDIwRjNBODgwRTAwNTczQ0IzIC8qIFJlbmRl
ckJveE1vZGVsT2JqZWN0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQkM5N0UyM0ExMDkxNDQ5NTAwMTBEMzYxIC8qIEhUTUxBbGxDb2xsZWN0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzk3RTIz
ODEwOTE0NDk1MDAxMEQzNjEgLyogSFRNTEFsbENvbGxlY3Rpb24uaCAqLzsgfTsKKwkJQkM5N0U0
MTMxMDkxNTRGQTAwMTBEMzYxIC8qIEpTSFRNTEFsbENvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDOTdFNDExMTA5MTU0RkEwMDEwRDM2
MSAvKiBKU0hUTUxBbGxDb2xsZWN0aW9uLmggKi87IH07CisJCUJDQTA4OEY1MjY0RTFDMDgwMDNF
MkE2QyAvKiBJbWFnZURhdGFTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkNBMDg4RjIyNjRFMUJGOTAwM0UyQTZDIC8qIEltYWdlRGF0YVNl
dHRpbmdzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQkNBMTY5QTMwQkZENTVCNDAwMTlDQTc2IC8qIEpTSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTE2OUEx
MEJGRDU1QjQwMDE5Q0E3NiAvKiBKU0hUTUxUYWJsZUNhcHRpb25FbGVtZW50LmggKi87IH07CisJ
CUJDQTI1NzE1MTI5M0MwMTAwMDdBMjYzRCAvKiBWZXJ0aWNhbFBvc2l0aW9uQ2FjaGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTI1NzE0MTI5M0Mw
MTAwMDdBMjYzRCAvKiBWZXJ0aWNhbFBvc2l0aW9uQ2FjaGUuaCAqLzsgfTsKKwkJQkNBMkIwNjEx
MDUwNDc2MDAwNDNCRDFDIC8qIFVzZXJTY3JpcHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTJCMDYwMTA1MDQ3NUYwMDQzQkQxQyAvKiBVc2VyU2Ny
aXB0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
QkNBMkIwOEIxMDUwNUJDRDAwNDNCRDFDIC8qIFVzZXJTY3JpcHRUeXBlcy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBMkIwOEExMDUwNUJDRDAwNDNC
RDFDIC8qIFVzZXJTY3JpcHRUeXBlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUJDQTU1OTE0MjYzREJENzkwMDdGMTlCMyAvKiBQaXhlbEZvcm1h
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBNTU5
MTIyNjNEQkQ3OTAwN0YxOUIzIC8qIFBpeGVsRm9ybWF0LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNBODNFNTAwRDdDRTFFOTAwMzQyMUE4IC8q
IEpTRGF0YVRyYW5zZmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0E4M0U0RTBEN0NFMUU5MDAzNDIxQTggLyogSlNEYXRhVHJhbnNmZXIuaCAqLzsg
fTsKKwkJQkNBODQ2RDcwREM2N0EzNTAwMjZDMzA5IC8qIFJlbmRlclJlcGxpY2EuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQTg0NkQ1MERDNjdBMzUw
MDI2QzMwOSAvKiBSZW5kZXJSZXBsaWNhLmggKi87IH07CisJCUJDQThDODFFMTFFM0QzNjkwMDgx
MkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQThDODFDMTFFM0QzNjkwMDgxMkZCNyAvKiBCYWNrRm9y
d2FyZENvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCQ0FBNDg3MDE0QTA1MjUzMDA4OEZBQzQgLyogUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
QUE0ODZFMTRBMDUyNTMwMDg4RkFDNCAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDQUI0MTgyMTNF
MzU2RTgwMEQ4QUFGMyAvKiBSZWdpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDQUI0MTgwMTNFMzU2RTgwMEQ4QUFGMyAvKiBSZWdpb24uaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0FDRjNCRDEw
NzI5MjFBMDBDMEM4QTMgLyogVXNlckNvbnRlbnRVUkxQYXR0ZXJuLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0FDRjNCQjEwNzI5MjFBMDBDMEM4QTMg
LyogVXNlckNvbnRlbnRVUkxQYXR0ZXJuLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNBRTFGQTcxMjkzOURCNzAwNENCMDI2IC8qIFNjcm9sbEFu
aW1hdG9yTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQ0FFMUZBNTEyOTM5REI3MDA0Q0IwMjYgLyogU2Nyb2xsQW5pbWF0b3JNYWMuaCAqLzsgfTsK
KwkJQkNBRkVEQjQyNTk2OEQwQjAwMzBFNkFBIC8qIENvbG9yU3BhY2VDRy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBRkVEQjIyNTk2OEQwQjAwMzBF
NkFBIC8qIENvbG9yU3BhY2VDRy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUJDQjE2QzE4MDk3OUMzQkQwMDQ2Nzc0MSAvKiBNZW1vcnlDYWNoZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNCMTZCRkYw
OTc5QzNCRDAwNDY3NzQxIC8qIE1lbW9yeUNhY2hlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNCMTZDMUEwOTc5QzNCRDAwNDY3NzQxIC8qIENh
Y2hlZENTU1N0eWxlU2hlZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDQjE2QzAxMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRDU1NTdHlsZVNoZWV0
LmggKi87IH07CisJCUJDQjE2QzFDMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRJbWFnZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNCMTZDMDMwOTc5
QzNCRDAwNDY3NzQxIC8qIENhY2hlZEltYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNCMTZDMjAwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hl
ZFJlc291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQ0IxNkMwNzA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkUmVzb3VyY2UuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0IxNkMyMjA5NzlDM0JE
MDA0Njc3NDEgLyogQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQjE2QzA5MDk3OUMzQkQwMDQ2Nzc0MSAv
KiBDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oICovOyB9OworCQlCQ0IxNkMyNDA5NzlDM0JE
MDA0Njc3NDEgLyogQ2FjaGVkU2NyaXB0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQ0IxNkMwQjA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkU2NyaXB0
LmggKi87IH07CisJCUJDQjE2QzI4MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRYU0xTdHlsZVNo
ZWV0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Ix
NkMwRjA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkWFNMU3R5bGVTaGVldC5oICovOyB9OworCQlC
Q0IxNkMyQTA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQjE2QzExMDk3OUMzQkQw
MDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJjZUxvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDQjQ3Nzk5MjVENDZFRkYwMDVFRjBDOCAvKiBS
ZW5kZXJNb2RlbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNCNDc3OTcyNUQ0NkVGRjAwNUVGMEM4IC8qIFJlbmRlck1vZGVsLmggKi87IH07CisJCUJD
QjkyRDRGMTI5MzU1MEIwMEM4Mzg3RiAvKiBGb250QmFzZWxpbmUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQjkyRDRFMTI5MzU1MEIwMEM4Mzg3RiAv
KiBGb250QmFzZWxpbmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlCQ0JCOEFCOTEzRjFBRkIwMDA3MzRERjAgLyogUE9ESW50ZXJ2YWwuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQkI4QUI1MTNGMUFG
QjAwMDczNERGMCAvKiBQT0RJbnRlcnZhbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUJDQkI4QUJBMTNGMUFGQjAwMDczNERGMCAvKiBQT0RJbnRl
cnZhbFRyZWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDQkI4QUI2MTNGMUFGQjAwMDczNERGMCAvKiBQT0RJbnRlcnZhbFRyZWUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0JCOEFCQjEzRjFBRkIw
MDA3MzRERjAgLyogUE9EUmVkQmxhY2tUcmVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0JCOEFCNzEzRjFBRkIwMDA3MzRERjAgLyogUE9EUmVkQmxh
Y2tUcmVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQkNCRkI1M0QwRENEMjlDRjAwMTlCM0U1IC8qIEpTV2luZG93UHJveHkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQkZCNTNCMERDRDI5Q0YwMDE5
QjNFNSAvKiBKU1dpbmRvd1Byb3h5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQkNDMEU4NzYxQkZFNzBFOTAwOEY3RjUwIC8qIEhUTUxQaWN0dXJl
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkNDMEU4NzQxQkZFNzBFOTAwOEY3RjUwIC8qIEhUTUxQaWN0dXJlRWxlbWVudC5oICovOyB9Owor
CQlCQ0M1QkUwMTBDMEU5MzExMDAxMUMyREIgLyogSlNDU1NTdHlsZVNoZWV0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0M1QkRGRjBDMEU5MzExMDAx
MUMyREIgLyogSlNDU1NTdHlsZVNoZWV0LmggKi87IH07CisJCUJDQ0JBRDQxMEMxOEMxNDIwMENF
ODkwRiAvKiBKU0hUTUxDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQ0NCQUQzRjBDMThDMTQyMDBDRTg5MEYgLyogSlNIVE1MQ29sbGVj
dGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDQ0ZCQUU4MEI1MTUyRUQwMDAxRjFENyAvKiBEb2N1bWVudFBhcnNlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNDRkJBRTcwQjUxNTJFRDAwMDFG
MUQ3IC8qIERvY3VtZW50UGFyc2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJQkNEMEUwRkIwRTk3MkMzNTAwMjY1REVBIC8qIFNlY3VyaXR5T3Jp
Z2luLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Qw
RTBGODBFOTcyQzM1MDAyNjVERUEgLyogU2VjdXJpdHlPcmlnaW4uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0QwRTBGQzBFOTcyQzM1MDAyNjVE
RUEgLyogU2VjdXJpdHlPcmlnaW5IYXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBCQ0QwRTBGOTBFOTcyQzM1MDAyNjVERUEgLyogU2VjdXJpdHlPcmln
aW5IYXNoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQkNENTMzNjQwRUQ2ODQ4OTAwODg3NDY4IC8qIENhY2hlZFNjcmlwdFNvdXJjZVByb3ZpZGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Q1MzM2
MzBFRDY4NDg5MDA4ODc0NjggLyogQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlkZXIuaCAqLzsgfTsK
KwkJQkNEOUMyQzEwQzE3QjY5RTAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Q5QzJCRDBDMTdCNjlFMDA1
QzkwQTIgLyogSlNOYW1lZE5vZGVNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlCQ0Q5QzJDMzBDMTdCNjlFMDA1QzkwQTIgLyogSlNOb2RlTGlz
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEOUMy
QkYwQzE3QjY5RTAwNUM5MEEyIC8qIEpTTm9kZUxpc3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0RENDU0RTEyMzZDOTVDMDA5QTc5ODUgLyog
Q29sdW1uSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNERDQ1NEQxMjM2Qzk1QzAwOUE3OTg1IC8qIENvbHVtbkluZm8uaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0RGMzE3QzExRjhENjgzMDAz
QzVCRjggLyogVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDREYzMTdBMTFGOEQ2ODMwMDNDNUJGOCAvKiBV
c2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUJDREZENDhFMEUzMDUyOTAwMDlEMTBBRCAvKiBYTUxIdHRw
UmVxdWVzdFVwbG9hZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkNERkQ0OEMwRTMwNTI5MDAwOUQxMEFEIC8qIFhNTEh0dHBSZXF1ZXN0VXBsb2FkLmgg
Ki87IH07CisJCUJDREZENDk2MEUzMDU5MkYwMDlEMTBBRCAvKiBKU1hNTEh0dHBSZXF1ZXN0VXBs
b2FkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0RG
RDQ5NDBFMzA1OTJGMDA5RDEwQUQgLyogSlNYTUxIdHRwUmVxdWVzdFVwbG9hZC5oICovOyB9Owor
CQlCQ0UwMTM5QjBDMEJFRjE4MDA0Mzg2MEEgLyogSlNTdHlsZVNoZWV0LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0UwMTM5OTBDMEJFRjE4MDA0Mzg2
MEEgLyogSlNTdHlsZVNoZWV0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQkNFMUM0MUIwRDk4Mjk4MDAwM0IwMkYyIC8qIExvY2F0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0UxQzQxOTBEOTgy
OTgwMDAzQjAyRjIgLyogTG9jYXRpb24uaCAqLzsgfTsKKwkJQkNFMUM0M0MwRDk4MzBEMzAwM0Iw
MkYyIC8qIEpTTG9jYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDRTFDNDNBMEQ5ODMwRDMwMDNCMDJGMiAvKiBKU0xvY2F0aW9uLmggKi87IH07
CisJCUJDRTMyQjlDMTUxN0MwQjIwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNldC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFMzJCOUIxNTE3
QzBCMTAwRjU0MkVDIC8qIFJlbmRlck11bHRpQ29sdW1uU2V0LmggKi87IH07CisJCUJDRTQ0MTM0
MTJGNzQ4RTIwMDlCODRCOCAvKiBSZW5kZXJDb21iaW5lVGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFNDQxMzIxMkY3NDhFMjAwOUI4NEI4IC8q
IFJlbmRlckNvbWJpbmVUZXh0LmggKi87IH07CisJCUJDRTY1OEZGMEVBOTI0OEEwMDdFNDUzMyAv
KiBUaGVtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkNFNjU4RkUwRUE5MjQ4QTAwN0U0NTMzIC8qIFRoZW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNFNjU5QTkwRUE5MjdCOTAwN0U0NTMzIC8q
IFRoZW1lVHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDRTY1OUE4MEVBOTI3QjkwMDdFNDUzMyAvKiBUaGVtZVR5cGVzLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNFNjU5RTYwRUE5MkZCMjAw
N0U0NTMzIC8qIFRoZW1lTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0U2NTlFNTBFQTkyRkIyMDA3RTQ1MzMgLyogVGhlbWVNYWMuaCAqLzsgfTsK
KwkJQkNFNjVCRUIwRUFDREYxNjAwN0U0NTMzIC8qIExlbmd0aC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFNjVCRTkwRUFDREYxNjAwN0U0NTMzIC8q
IExlbmd0aC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUJDRTY5MUU1MjY0NjM3RkMwMEVCREMzQSAvKiBQaXhlbEJ1ZmZlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkM0ODM5QkEyNjQ2MTgxQTAwQTI4
QjYyIC8qIFBpeGVsQnVmZmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQkNFNzg5MTYxMTIwRDYwODAwNjBFQ0U1IC8qIElubGluZUl0ZXJhdG9y
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0U3ODkx
NTExMjBENjA4MDA2MEVDRTUgLyogSW5saW5lSXRlcmF0b3IuaCAqLzsgfTsKKwkJQkNFNzg5ODYx
MTIwRTdBNjAwNjBFQ0U1IC8qIEJpZGlSdW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEJDRTc4OTg1MTEyMEU3QTYwMDYwRUNFNSAvKiBCaWRpUnVuLmgg
Ki87IH07CisJCUJDRTkzRjQ1MTUxN0M1NjcwMDhDQ0Y3NCAvKiBSZW5kZXJGcmFnbWVudENvbnRh
aW5lclNldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkNFOTNGNDQxNTE3QzU2NzAwOENDRjc0IC8qIFJlbmRlckZyYWdtZW50Q29udGFpbmVyU2V0Lmgg
Ki87IH07CisJCUJDRUE0NzkwMDk3Q0FBQzgwMDk0QzlFNCAvKiBDU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDRUE0NzdEMDk3Q0FBQzgwMDk0QzlFNCAvKiBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VB
NDg1QTA5N0Q5MzAyMDA5NEM5RTQgLyogTGVnYWN5SW5saW5lVGV4dEJveC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MUIwOTdEOTMwMjAwOTRD
OUU0IC8qIExlZ2FjeUlubGluZVRleHRCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VBNDg2MDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVy
QmxvY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
RUE0ODIxMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCbG9jay5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDRUE0ODYyMDk3RDkzMDIwMDk0QzlF
NCAvKiBSZW5kZXJCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDRUE0ODIzMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCb3guaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VBNDg2NDA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyTGluZUJyZWFrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VBNDgyNTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyTGlu
ZUJyZWFrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQkNFQTQ4NjYwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MjcwOTdEOTMwMjAwOTRD
OUU0IC8qIFJlbmRlckJ1dHRvbi5oICovOyB9OworCQlCQ0VBNDg2ODA5N0Q5MzAyMDA5NEM5RTQg
LyogUmVuZGVyVmlldy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkNFQTQ4MjkwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VBNDg2QTA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVySFRNTENhbnZhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MkIwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckhU
TUxDYW52YXMuaCAqLzsgfTsKKwkJQkNFQTQ4NkUwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckRl
cHJlY2F0ZWRGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkNFQTQ4MkYwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckRlcHJlY2F0ZWRG
bGV4aWJsZUJveC5oICovOyB9OworCQlCQ0VBNDg3NjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVy
SW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
RUE0ODM3MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJJbWFnZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDRUE0ODc4MDk3RDkzMDIwMDk0QzlF
NCAvKiBSZW5kZXJJbmxpbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEJDRUE0ODM5MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJJbmxpbmUuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VBNDg3QTA5
N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyTGF5ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUE0ODNCMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJM
YXllci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDRUE0ODgwMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJPYmplY3QuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUE0ODQxMDk3RDkzMDIwMDk0QzlF
NCAvKiBSZW5kZXJPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlCQ0VBNDg4NzA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGhlbWVNYWMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUE0ODQ4
MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUaGVtZU1hYy5oICovOyB9OworCQlCQ0VBNDg4QTA5
N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGhlbWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUE0ODRCMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJU
aGVtZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUJDRUE0ODhDMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VBNDg0RDA5N0Q5MzAyMDA5NEM5RTQg
LyogUmVuZGVyVGV4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUJDRUE0ODhFMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0RnJhZ21lbnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUE0ODRG
MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0RnJhZ21lbnQuaCAqLzsgfTsKKwkJQkNFQjE3
OUMxNDMzNzlGNTAwNTJFQUU5IC8qIFJlbmRlckJveEZyYWdtZW50SW5mby5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQjE3OUIxNDMzNzlGNTAwNTJF
QUU5IC8qIFJlbmRlckJveEZyYWdtZW50SW5mby5oICovOyB9OworCQlCQ0VDMDFCRTBDMjc0REFD
MDA5RjRFQzkgLyogU2NyZWVuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0VDMDFCQjBDMjc0REFDMDA5RjRFQzkgLyogU2NyZWVuLmggKi87IH07CisJ
CUJDRUMwMUMzMEMyNzREREQwMDlGNEVDOSAvKiBKU1NjcmVlbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQzAxQzEwQzI3NERERDAwOUY0RUM5IC8q
IEpTU2NyZWVuLmggKi87IH07CisJCUJDRUMwMUQ3MEMyNzRFQjQwMDlGNEVDOSAvKiBQbGF0Zm9y
bVNjcmVlbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkNFQzAxRDYwQzI3NEVCNDAwOUY0RUM5IC8qIFBsYXRmb3JtU2NyZWVuLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNFRjQzQ0YwRTY3M0RBMTAw
MUMxMjg3IC8qIFN0eWxlSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEJDRUY0M0NFMEU2NzNEQTEwMDFDMTI4NyAvKiBTdHlsZUltYWdlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNFRjQzREQw
RTY3NDAxMjAwMUMxMjg3IC8qIE5pbmVQaWVjZUltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VGNDNEQzBFNjc0MDEyMDAxQzEyODcgLyogTmlu
ZVBpZWNlSW1hZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlCQ0VGNDQ0QTBFNjc0NUUwMDAxQzEyODcgLyogU3R5bGVHZW5lcmF0ZWRJbWFnZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFRjQ0NDkw
RTY3NDVFMDAwMUMxMjg3IC8qIFN0eWxlR2VuZXJhdGVkSW1hZ2UuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCQ0VGNDQ0RDBFNjc0NjI4MDAxQzEy
ODcgLyogU3R5bGVDYWNoZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkNFRjQ0NEMwRTY3NDYyODAwMUMxMjg3IC8qIFN0eWxlQ2FjaGVkSW1h
Z2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlC
Q0VGNDVFOTBFNjg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRUY0NUU4MEU2ODc3NjcwMDFDMTI4NyAv
KiBUZXh0TWV0cmljcy5oICovOyB9OworCQlCQ0VGNDVGNjBFNjg3QjVDMDAxQzEyODcgLyogSlNU
ZXh0TWV0cmljcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNFRjQ1RjQwRTY4N0I1QzAwMUMxMjg3IC8qIEpTVGV4dE1ldHJpY3MuaCAqLzsgfTsKKwkJ
QkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8qIFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFRjg2OUUwRTg0NEU5RDAw
QTg1Q0Q1IC8qIFNjcm9sbGJhclRoZW1lTWFjLm1tICovOyB9OworCQlCQ0VGRTFFQjBEQ0E1RjY0
MDA3MzkyMTkgLyogSlNYU0xUUHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0VGRTFFOTBEQ0E1RjY0MDA3MzkyMTkgLyogSlNYU0xUUHJv
Y2Vzc29yLmggKi87IH07CisJCUJDRjE2NDUxMjY2MjlGQzcwMDAyRjdFRiAvKiBDU1NDYWxjRXhw
cmVzc2lvbk5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDRjE2NDRGMjY2MjlGQzcwMDAyRjdFRiAvKiBDU1NDYWxjRXhwcmVzc2lvbk5vZGUuaCAq
LzsgfTsKKwkJQkNGMTY0NTUyNjYyQTEyMjAwMDJGN0VGIC8qIENTU0NhbGNQcmltaXRpdmVWYWx1
ZU5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
RjE2NDUzMjY2MkExMjIwMDAyRjdFRiAvKiBDU1NDYWxjUHJpbWl0aXZlVmFsdWVOb2RlLmggKi87
IH07CisJCUJDRjE2NDU5MjY2MkExRTkwMDAyRjdFRiAvKiBDU1NDYWxjTmVnYXRlTm9kZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGMTY0NTcyNjYy
QTFFOTAwMDJGN0VGIC8qIENTU0NhbGNOZWdhdGVOb2RlLmggKi87IH07CisJCUJDRjE2NDVEMjY2
MkEyMzcwMDAyRjdFRiAvKiBDU1NDYWxjSW52ZXJ0Tm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGMTY0NUIyNjYyQTIzNzAwMDJGN0VGIC8qIENT
U0NhbGNJbnZlcnROb2RlLmggKi87IH07CisJCUJDRjE2NDYxMjY2MkEyOEQwMDAyRjdFRiAvKiBD
U1NDYWxjT3BlcmF0aW9uTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQkNGMTY0NUYyNjYyQTI4RDAwMDJGN0VGIC8qIENTU0NhbGNPcGVyYXRpb25O
b2RlLmggKi87IH07CisJCUJDRjE2NDY1MjY2MkEzMUEwMDAyRjdFRiAvKiBDU1NDYWxjRXhwcmVz
c2lvbk5vZGVQYXJzZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDRjE2NDYzMjY2MkEzMUEwMDAyRjdFRiAvKiBDU1NDYWxjRXhwcmVzc2lvbk5vZGVQ
YXJzZXIuaCAqLzsgfTsKKwkJQkNGMTY0NkEyNjYyQTkzNDAwMDJGN0VGIC8qIENTU0NhbGNDYXRl
Z29yeU1hcHBpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDRjE2NDY4MjY2MkE5MzQwMDAyRjdFRiAvKiBDU1NDYWxjQ2F0ZWdvcnlNYXBwaW5nLmgg
Ki87IH07CisJCUJDRjE2NDZFMjY2MkFBNTAwMDAyRjdFRiAvKiBDYWxjdWxhdGlvbkNhdGVnb3J5
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0YxNjQ2
RDI2NjJBQTUwMDAwMkY3RUYgLyogQ2FsY3VsYXRpb25DYXRlZ29yeS5oICovOyB9OworCQlCQ0Yx
NjQ3MjI2NjJBQUMzMDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25Ob2RlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0YxNjQ3MDI2NjJBQUMzMDAwMkY3
RUYgLyogQ2FsY0V4cHJlc3Npb25Ob2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNGMTY0NzYyNjYyQUIzNjAwMDJGN0VGIC8qIENhbGNFeHBy
ZXNzaW9uTnVtYmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQ0YxNjQ3NDI2NjJBQjM2MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25OdW1iZXIuaCAq
LzsgfTsKKwkJQkNGMTY0N0EyNjYyQUI4NTAwMDJGN0VGIC8qIENhbGNFeHByZXNzaW9uTGVuZ3Ro
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0YxNjQ3
ODI2NjJBQjg1MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25MZW5ndGguaCAqLzsgfTsKKwkJQkNG
MTY0N0UyNjYyQUJFNzAwMDJGN0VGIC8qIENhbGNFeHByZXNzaW9uTmVnYXRpb24uaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDRjE2NDdDMjY2MkFCRTcw
MDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk5lZ2F0aW9uLmggKi87IH07CisJCUJDRjE2NDgyMjY2
MkFDNTEwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbkludmVyc2lvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGMTY0ODAyNjYyQUM1MTAwMDJGN0VG
IC8qIENhbGNFeHByZXNzaW9uSW52ZXJzaW9uLmggKi87IH07CisJCUJDRjE2NDg2MjY2MkFDQTMw
MDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk9wZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNGMTY0ODQyNjYyQUNBMzAwMDJGN0VGIC8qIENh
bGNFeHByZXNzaW9uT3BlcmF0aW9uLmggKi87IH07CisJCUJDRjE2NDhBMjY2MkFENTIwMDAyRjdF
RiAvKiBDYWxjRXhwcmVzc2lvbkJsZW5kTGVuZ3RoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0YxNjQ4ODI2NjJBRDUyMDAwMkY3RUYgLyogQ2FsY0V4
cHJlc3Npb25CbGVuZExlbmd0aC5oICovOyB9OworCQlCQ0YxNjQ4RTI2NjJBREQ4MDAwMkY3RUYg
LyogQ2FsY09wZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0YxNjQ4QzI2NjJBREQ4MDAwMkY3RUYgLyogQ2FsY09wZXJhdG9yLmggKi87IH07
CisJCUJDRjdFNDkxMTM3Q0Q3QzcwMDFEREFFNyAvKiBBZGp1c3RWaWV3U2l6ZU9yTm90LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0Y0OENFNjEzNzBE
MTE0MDA0RTg3RDYgLyogQWRqdXN0Vmlld1NpemVPck5vdC5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUJDRkE5MzA4MTAzMzMxOTMwMDdCMjVEMSAv
KiBSZW5kZXJPdmVyZmxvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkNGQTkzMDcxMDMzMzE5MzAwN0IyNUQxIC8qIFJlbmRlck92ZXJmbG93LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNGQjJFNUUw
OTc5RTQ2NDAwQkE3MDNEIC8qIENhY2hlZFJlc291cmNlQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZCMkU1RDA5NzlFNDY0MDBCQTcwM0Qg
LyogQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlCQ0ZGNjQ5MTBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0ZGNjQ4
RjBFQUQxNUMyMDBDMUQ2RjcgLyogTGVuZ3RoQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNGRjY0OTIwRUFEMTVDMjAwQzFENkY3IC8qIExl
bmd0aFNpemUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDRkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkUxNkM1OTMxN0NGRTE3MjAwODUy
QzA0IC8qIEluYmFuZEdlbmVyaWNUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFMTZDNThGMTdDRkUxNzIwMDg1MkMwNCAvKiBJbmJhbmRH
ZW5lcmljVGV4dFRyYWNrLmggKi87IH07CisJCUJFMTZDNTk1MTdDRkUxNzIwMDg1MkMwNCAvKiBJ
bmJhbmRXZWJWVFRUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEJFMTZDNTkxMTdDRkUxNzIwMDg1MkMwNCAvKiBJbmJhbmRXZWJWVFRUZXh0
VHJhY2suaCAqLzsgfTsKKwkJQkUyMDUwN0ExOEE0NTg2QjAwODA2NDdFIC8qIFZUVEN1ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkUyMDUwNzcxOEE0
NTg0NjAwODA2NDdFIC8qIFZUVEN1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUJFMjA1MDdFMThBNDU4QzIwMDgwNjQ3RSAvKiBSZW5kZXJWVFRD
dWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFMjA1
MDdDMThBNDU4QjEwMDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUuaCAqLzsgfTsKKwkJQkUyMDUwODIx
OEE0NjBDMzAwODA2NDdFIC8qIEpTVlRUQ3VlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCRTIwNTA4MDE4QTQ2MEFBMDA4MDY0N0UgLyogSlNWVFRDdWUu
aCAqLzsgfTsKKwkJQkUyMzQ4MEQxOEE5ODcxNDAwRTRCNkU4IC8qIERhdGFDdWUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFMjM0ODBBMThBOTg3MDMw
MEU0QjZFOCAvKiBEYXRhQ3VlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQkU2MTAzOUUxOEE5RDY1QTAwREQ1MEQ3IC8qIEpTRGF0YUN1ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU2MTAzOUMxOEE5
RDYxMjAwREQ1MEQ3IC8qIEpTRGF0YUN1ZS5oICovOyB9OworCQlCRTg4RTBDMjE3MTVDRTI2MDA2
NThEOTggLyogVHJhY2tMaXN0QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkU4OEUwQzAxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2Uu
aCAqLzsgfTsKKwkJQkU4OEUwRDkxNzE1RDJBMjAwNjU4RDk4IC8qIEF1ZGlvVHJhY2suaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFODhFMENEMTcxNUQy
QTIwMDY1OEQ5OCAvKiBBdWRpb1RyYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkU4OEUwREMxNzE1RDJBMjAwNjU4RDk4IC8qIEF1ZGlvVHJh
Y2tMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
RTg4RTBEMDE3MTVEMkEyMDA2NThEOTggLyogQXVkaW9UcmFja0xpc3QuaCAqLzsgfTsKKwkJQkU4
OEUwREYxNzE1RDJBMjAwNjU4RDk4IC8qIFZpZGVvVHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFODhFMEQzMTcxNUQyQTIwMDY1OEQ5OCAvKiBW
aWRlb1RyYWNrLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQkU4OEUwRTIxNzE1RDJBMjAwNjU4RDk4IC8qIFZpZGVvVHJhY2tMaXN0LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCRTg4RTBENjE3MTVEMkEy
MDA2NThEOTggLyogVmlkZW9UcmFja0xpc3QuaCAqLzsgfTsKKwkJQkU4RUYwNDMxNzFDOEZGOTAw
OUI0OEMzIC8qIEpTQXVkaW9UcmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkU4RUYwM0YxNzFDOEZGOTAwOUI0OEMzIC8qIEpTQXVkaW9UcmFjay5o
ICovOyB9OworCQlCRThFRjA0NTE3MUM4RkY5MDA5QjQ4QzMgLyogSlNBdWRpb1RyYWNrTGlzdC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4RUYwNDEx
NzFDOEZGOTAwOUI0OEMzIC8qIEpTQXVkaW9UcmFja0xpc3QuaCAqLzsgfTsKKwkJQkU4RUYwNEIx
NzFDOTAxNDAwOUI0OEMzIC8qIEpTVmlkZW9UcmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkU4RUYwNDcxNzFDOTAxNDAwOUI0OEMzIC8qIEpTVmlk
ZW9UcmFjay5oICovOyB9OworCQlCRThFRjA0RDE3MUM5MDE0MDA5QjQ4QzMgLyogSlNWaWRlb1Ry
YWNrTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QkU4RUYwNDkxNzFDOTAxNDAwOUI0OEMzIC8qIEpTVmlkZW9UcmFja0xpc3QuaCAqLzsgfTsKKwkJ
QkU5MTNEODAxODFFRjkyNDAwRENCMDlFIC8qIFRyYWNrUHJpdmF0ZUJhc2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFOTEzRDdGMTgxRUY4RTUwMERD
QjA5RSAvKiBUcmFja1ByaXZhdGVCYXNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkU5NjFDNTUxOEFEMzM4QzAwRDA3REM1IC8qIEluYmFuZERh
dGFUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJFOTYxQzUzMThBRDMzN0MwMEQwN0RDNSAvKiBJbmJhbmREYXRhVGV4dFRyYWNrLmggKi87
IH07CisJCUJFQTgwN0M5MEY3MTRBMDMwMDUyNDE5OSAvKiBTZWxlY3Rpb25HZW9tZXRyeS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkVBODA3QzcwRjcx
NEEwMzAwNTI0MTk5IC8qIFNlbGVjdGlvbkdlb21ldHJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkVGMjlFRUIxNzE1REQwOTAwQzRCNEM5IC8q
IEF1ZGlvVHJhY2tQcml2YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCRUYyOUVFOTE3MTVERDA5MDBDNEI0QzkgLyogQXVkaW9UcmFja1ByaXZhdGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlCRUYy
OUVFQzE3MTVERDA5MDBDNEI0QzkgLyogVmlkZW9UcmFja1ByaXZhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJFRjI5RUVBMTcxNUREMDkwMEM0QjRD
OSAvKiBWaWRlb1RyYWNrUHJpdmF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUMwQzA1NENCMTExOEM4RTQwMENFMjYzNiAvKiBDb2RlR2VuZXJh
dG9yLnBtIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNG
OEIzMDUwQTMwMEZFMTAwRjYxQUI4IC8qIENvZGVHZW5lcmF0b3IucG0gKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzBDMDU0Q0MxMTE4QzhFNDAwQ0Uy
NjM2IC8qIGdlbmVyYXRlLWJpbmRpbmdzLnBsIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gOTNGOEIzMDcwQTMwMEZFQTAwRjYxQUI4IC8qIGdlbmVyYXRlLWJp
bmRpbmdzLnBsICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUMwQzA1NENEMTExOEM4RTQwMENFMjYzNiAvKiBJRExQYXJzZXIucG0gaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxNDgxM0JGMzA5RURGODhFMDBGNzU3
RTEgLyogSURMUGFyc2VyLnBtICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUMwRTJGMzI3MjQxMkJGMjkwMDlDNzNFQyAvKiBsaWJBY2Nlc3NpYmlsaXR5
LnRiZCBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMw
RTJGMzI1MjQxMkJGMjkwMDlDNzNFQyAvKiBsaWJBY2Nlc3NpYmlsaXR5LnRiZCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChXZWFrLCApOyB9OyB9OworCQlDMEYyQTQ0MTEzODY5QUFCMDA2
NkM1MzQgLyogcHJlcHJvY2Vzc29yLnBtIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzBGMkE0M0YxMzg2OUEyODAwNjZDNTM0IC8qIHByZXByb2Nlc3Nvci5w
bSAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDMTA1
REE2NDBGM0FBNkI4MDAxREQ0NEYgLyogVGV4dEVuY29kaW5nRGV0ZWN0b3IuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxMDVEQTYzMEYzQUE2QjgwMDFE
RDQ0RiAvKiBUZXh0RW5jb2RpbmdEZXRlY3Rvci5oICovOyB9OworCQlDMTFBOUVDRTIxNDAzQTVD
MDBDRkIyMEEgLyogU3dpdGNoaW5nR1BVQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTFBOUVDRDIxNDAzQTVDMDBDRkIyMEEgLyogU3dpdGNo
aW5nR1BVQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQzE0OTM4MDcyMjM0NTUxQTAwMENENzA3IC8qIFNwZWVjaFN5bnRoZXNpc0NsaWVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzE0OTM4
MDUyMjM0MjcxOTAwMENENzA3IC8qIFNwZWVjaFN5bnRoZXNpc0NsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUMxNDlENTVEMjQyRUE2Qjkw
MDNFQkIxMiAvKiBTbGVlcERpc2FibGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDMTQ5RDU1QTI0MkVBNEY5MDAzRUJCMTIgLyogU2xlZXBEaXNhYmxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUMx
NDlENTVGMjQyRUE3QjgwMDNFQkIxMiAvKiBTbGVlcERpc2FibGVyQ2xpZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTQ5RDU1QjI0MkVBNEZBMDAz
RUJCMTIgLyogU2xlZXBEaXNhYmxlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUMxNDlENTY3MjQyRUI4NEEwMDNFQkIxMiAvKiBTbGVl
cERpc2FibGVySWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzE0OUQ1NjUyNDJFQjc2NTAwM0VCQjEyIC8qIFNsZWVwRGlzYWJsZXJJZGVu
dGlmaWVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQzE2OTJERDIyM0QyM0FCRDAwNkU4OEY3IC8qIFN5c3RlbUJhdHRlcnkubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMTY5MkREMTIzRDIzQUJEMDA2
RTg4RjcgLyogU3lzdGVtQmF0dGVyeS5tbSAqLzsgfTsKKwkJQzE2OTJERDUyM0QyM0UwODAwNkU4
OEY3IC8qIFN5c3RlbUJhdHRlcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEMxNjkyREQ0MjNEMjNBRTAwMDZFODhGNyAvKiBTeXN0ZW1CYXR0ZXJ5Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzE4Q0Mw
QTQyNTgwRUZCMTAwM0Q3NUZCIC8qIFVuaXZlcnNhbEFjY2Vzc1pvb20uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxOENDMEEzMjU4MEVGQjEwMDNENzVG
QiAvKiBVbml2ZXJzYWxBY2Nlc3Nab29tLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzE4Q0MwQTcyNTgwRjBGQTAwM0Q3NUZCIC8qIFVuaXZlcnNh
bEFjY2Vzc1pvb20ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDMThDQzBBNjI1ODBGMEZBMDAzRDc1RkIgLyogVW5pdmVyc2FsQWNjZXNzWm9vbS5tbSAq
LzsgfTsKKwkJQzFFMUQyMzYyMDNERjE1NDAwNTg0NjY1IC8qIFNjcmVlblByb3BlcnRpZXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMxRTFEMjM1MjAz
REYxNTQwMDU4NDY2NSAvKiBTY3JlZW5Qcm9wZXJ0aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzFGN0I3MzEyNDQ4RjJBQzAwMTI0NTU3IC8q
IEFHWENvbXBpbGVyU2VydmljZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDMUY3QjcyRjI0NDhGMkFDMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2
aWNlLmNwcCAqLzsgfTsKKwkJQzFGN0I3MzIyNDQ4RjJBQzAwMTI0NTU3IC8qIEFHWENvbXBpbGVy
U2VydmljZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QzFGN0I3MzAyNDQ4RjJBQzAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUMyMDE1QzBBMUJFNkZF
QjIwMDgyMjM4OSAvKiBGb250VmFyaWFudEJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMyMDE1QzA5MUJFNkZFMkMwMDgyMjM4OSAvKiBGb250
VmFyaWFudEJ1aWxkZXIuaCAqLzsgfTsKKwkJQzIxREYyRUExRDlFNEU5OTAwRjVCMjRDIC8qIENT
U0ZvbnRWYXJpYXRpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzIxREYyRTgxRDlFNEU5OTAwRjVCMjRDIC8qIENTU0ZvbnRWYXJpYXRpb25W
YWx1ZS5oICovOyB9OworCQlDMjQ1OEU2MzFGRTg5N0IwMDA1OTQ3NTkgLyogRm9udENhY2hlQ29y
ZVRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMy
NDU4RTYxMUZFODk3OUUwMDU5NDc1OSAvKiBGb250Q2FjaGVDb3JlVGV4dC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUMyNjAxN0E0MUM3MkRDOTkw
MEY3NEExNiAvKiBDU1NGb250RmFjZVNldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQzI2MDE3QTIxQzcyREM5OTAwRjc0QTE2IC8qIENTU0ZvbnRGYWNl
U2V0LmggKi87IH07CisJCUMyODA4MzNGMUM2REMyNkYwMDE0NTFCNiAvKiBKU0ZvbnRGYWNlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDMjgwODMzRTFD
NkRDMjJDMDAxNDUxQjYgLyogSlNGb250RmFjZS5oICovOyB9OworCQlDMkFCMEFGNzFFNkIzQzZD
MDAxMzQ4QzUgLyogRm9udFNlbGVjdGlvbkFsZ29yaXRobS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzJBQjBBRjUxRTZCM0M2QzAwMTM0OEM1IC8qIEZv
bnRTZWxlY3Rpb25BbGdvcml0aG0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlDMkUxRjQzRjFENjI1NEUxMDA5NDYyNUMgLyogQnJlYWtMaW5lcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNFQTQ4MTYw
OTdEOTMwMjAwOTRDOUU0IC8qIEJyZWFrTGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDMkUzOEVGRTFFODM5NkZEMDBDQTNBREYgLyogQ1NT
Rm9udFN0eWxlVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEMyRTM4RUZDMUU4Mzk2RkQwMENBM0FERiAvKiBDU1NGb250U3R5bGVWYWx1ZS5oICov
OyB9OworCQlDMkUzOEYwMjFFODQ1NzM1MDBDQTNBREYgLyogQ1NTRm9udFN0eWxlUmFuZ2VWYWx1
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzJFMzhG
MDAxRTg0NTczNTAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVJhbmdlVmFsdWUuaCAqLzsgfTsKKwkJ
QzJGNEU3OEMxRTQ1QzNFRjAwNkQ3MTA1IC8qIENvbXBsZXhUZXh0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzJGNEU3ODkxRTQ1QUVE
RjAwNkQ3MTA1IC8qIENvbXBsZXhUZXh0Q29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUMzMzBBMjIzMTNFQzE5NkIwMDAwQjQ1QiAv
KiBDb2xvckNob29zZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEMzMzBBMjIxMTNFQzE5NkIwMDAwQjQ1QiAvKiBDb2xvckNob29zZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDMzNFRTVDNTE0RkI0
OTYxMDAwMjA5NUEgLyogQmFzZUNsaWNrYWJsZVdpdGhLZXlJbnB1dFR5cGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMzM0VFNUMzMTRGQjQ5NjEwMDAy
MDk1QSAvKiBCYXNlQ2xpY2thYmxlV2l0aEtleUlucHV0VHlwZS5oICovOyB9OworCQlDMzQ4NjEy
NDE1RkRFMjFFMDA3QTFDQzkgLyogSW5wdXRUeXBlTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEMzNDg2MTIyMTVGREUyMUUwMDdBMUNDOSAvKiBJ
bnB1dFR5cGVOYW1lcy5oICovOyB9OworCQlDMzc1RDdGRTE2NjM5NTE5MDA2MTg0QUIgLyogVHlw
ZUFoZWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
Mzc1RDdGQzE2NjM5NTE5MDA2MTg0QUIgLyogVHlwZUFoZWFkLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzM3Q0RFQkQxNDlFRjIwMzAwNDIwOTBE
IC8qIENvbG9yQ2hvb3NlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzM3Q0RFQkMxNDlFRjIwMzAwNDIwOTBEIC8qIENvbG9yQ2hvb3NlckNs
aWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CUMzQ0YxN0E1MTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDM0NGMTdBMTE1QjAwNjNGMDAy
NzZEMzkgLyogSWRUYXJnZXRPYnNlcnZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUMzQ0YxN0E3MTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdl
dE9ic2VydmVyUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEMzQ0YxN0EzMTVCMDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyUmVn
aXN0cnkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlDNENENjI5QjE4MzgzNzY2MDA3RUJBRjEgLyogRnJhbWVTbmFwc2hvdHRpbmcuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM0Q0Q2Mjk5MTgzODM3NjYw
MDdFQkFGMSAvKiBGcmFtZVNuYXBzaG90dGluZy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUM1MEQwRTgzMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9y
YWdlTmFtZXNwYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDNTBEMEU4MTBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFnZU5hbWVzcGFjZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUM1MTM3Q0YzMTFB
NTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1MTM3Q0YxMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RP
TVN0cmluZ0xpc3QuaCAqLzsgfTsKKwkJQzUyMjdERjExQzNDNkRGMTAwRjVFRDU0IC8qIERhdGFE
ZXRlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEM1MjI3REVGMUMzQzZERDcwMEY1RUQ1NCAvKiBEYXRhRGV0ZWN0aW9uLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzU0NDI3NEIxMUE1N0U3QTAw
NjNBNzQ5IC8qIERPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEM1NDQyNzQ5MTFBNTdFN0EwMDYzQTc0OSAvKiBET01TdHJpbmdMaXN0
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzU1
OTJGNzgxQTkyQUEyODAwMUY4ODYyIC8qIENoYXJhY3RlclByb3BlcnRpZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1NTkyRjc3MUE5MkFBMjgwMDFG
ODg2MiAvKiBDaGFyYWN0ZXJQcm9wZXJ0aWVzLmggKi87IH07CisJCUM1NzJFRTFGMTIwMUM5QkMw
MDdEOEY4MiAvKiBKU0lEQkluZGV4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDNTcyRUUxRDEyMDFDOUJDMDA3RDhGODIgLyogSlNJREJJbmRleC5oICov
OyB9OworCQlDNTg1QTY2MzExRDRGQUM1MDA0QzNFNEIgLyogSURCQmluZGluZ1V0aWxpdGllcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzU4NUE2NjEx
MUQ0RkFDNTAwNEMzRTRCIC8qIElEQkJpbmRpbmdVdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDNTg1QTY4MzExRDRGQjA4MDA0QzNF
NEIgLyogSlNJREJEYXRhYmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQzU4NUE2NkIxMUQ0RkIwNzAwNEMzRTRCIC8qIEpTSURCRGF0YWJhc2UuaCAq
LzsgfTsKKwkJQzU4NUE2OEQxMUQ0RkIwODAwNEMzRTRCIC8qIEpTSURCS2V5UmFuZ2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1ODVBNjc1MTFENEZC
MDcwMDRDM0U0QiAvKiBKU0lEQktleVJhbmdlLmggKi87IH07CisJCUM1ODVBNjhGMTFENEZCMDgw
MDRDM0U0QiAvKiBKU0lEQk9iamVjdFN0b3JlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDNTg1QTY3NzExRDRGQjA3MDA0QzNFNEIgLyogSlNJREJPYmpl
Y3RTdG9yZS5oICovOyB9OworCQlDNTg1QTY5MTExRDRGQjA4MDA0QzNFNEIgLyogSlNJREJSZXF1
ZXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTg1
QTY3OTExRDRGQjA3MDA0QzNFNEIgLyogSlNJREJSZXF1ZXN0LmggKi87IH07CisJCUM1ODVBNjk3
MTFENEZCMTMwMDRDM0U0QiAvKiBKU0lEQkZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1ODVBNjk1MTFENEZCMTMwMDRDM0U0QiAvKiBKU0lE
QkZhY3RvcnkuaCAqLzsgfTsKKwkJQzU5ODkwNTcxNEU5QzI4MDAwRThEMThCIC8qIFBhc3RlYm9h
cmRTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQzVGNzY1QjQxNEUxRDQxNDAwNkM4OTlCIC8qIFBhc3RlYm9hcmRTdHJhdGVneS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUM1OTg5MDU4MTRF
OUMyOTkwMEU4RDE4QiAvKiBQbGF0Zm9ybVBhc3RlYm9hcmQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1QkFDMTZGMTRFMzBFNDcwMDAwODgzNyAvKiBQ
bGF0Zm9ybVBhc3RlYm9hcmQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDNUExRUE3RDE1MkJDRjA4MDA0RDAwQjYgLyogU2ltcGxpZnlNYXJrdXBD
b21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
NUExRUE3QTE1MkJDNDg2MDA0RDAwQjYgLyogU2ltcGxpZnlNYXJrdXBDb21tYW5kLmggKi87IH07
CisJCUM1QjRDMjREMTUwOTIzNkMwMEE2RUYzNyAvKiBXZWJDb3JlTlNVUkxFeHRyYXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1QjRDMjRCMTUwOTIz
NkMwMEE2RUYzNyAvKiBXZWJDb3JlTlNVUkxFeHRyYXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDNUQ0QUE3QTExNkJBRkI2MDA2OUNBOTMgLyog
R2x5cGhNZXRyaWNzTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDNUQ0QUE3ODExNkJBRkI2MDA2OUNBOTMgLyogR2x5cGhNZXRyaWNzTWFwLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzVFQkREODQx
MDVFRERFQzAwNTY4MTZGIC8qIFN0b3JhZ2VFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1RUJERDgxMTA1RURERUMwMDU2ODE2
RiAvKiBTdG9yYWdlRXZlbnREaXNwYXRjaGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQzY1MDQ2QTkxNjdCRkI1NTAwQ0MyQTREIC8qIFRlbXBs
YXRlQ29udGVudERvY3VtZW50RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEM2NTA0NkE4MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1wbGF0ZUNv
bnRlbnREb2N1bWVudEZyYWdtZW50LmggKi87IH07CisJCUM2RDc0QUQ1MDlBQTI4MkUwMDBCMEE1
MiAvKiBNb2RpZnlTZWxlY3Rpb25MaXN0TGV2ZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM2RDc0QUQzMDlBQTI4MkUwMDBCMEE1MiAvKiBNb2RpZnlT
ZWxlY3Rpb25MaXN0TGV2ZWwuaCAqLzsgfTsKKwkJQzZGMDhGQkQxNDMwRkU4RjAwNjg1ODQ5IC8q
IE11dGF0aW9uUmVjb3JkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDNkYwOEZCQTE0MzBGRThGMDA2ODU4NDkgLyogTXV0YXRpb25SZWNvcmQuaCAqLzsg
fTsKKwkJQzZGMDhGQ0ExNDMxMDAwRDAwNjg1ODQ5IC8qIEpTTXV0YXRpb25SZWNvcmQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM2RjA4RkM4MTQzMTAw
MEQwMDY4NTg0OSAvKiBKU011dGF0aW9uUmVjb3JkLmggKi87IH07CisJCUM2RjA5MDBBMTQzMjdC
NjEwMDY4NTg0OSAvKiBNdXRhdGlvbkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNkYwOTAwMTE0MzI3QjYxMDA2ODU4NDkgLyogTXV0YXRp
b25DYWxsYmFjay5oICovOyB9OworCQlDNkYwOTAwRjE0MzI3QjYxMDA2ODU4NDkgLyogTXV0YXRp
b25PYnNlcnZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQzZGMDkwMDYxNDMyN0I2MTAwNjg1ODQ5IC8qIE11dGF0aW9uT2JzZXJ2ZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDNkYwOTAyRDE0MzI3
RDRGMDA2ODU4NDkgLyogSlNNdXRhdGlvbk9ic2VydmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNkYwOTAyNTE0MzI3RDRGMDA2ODU4NDkgLyogSlNN
dXRhdGlvbk9ic2VydmVyLmggKi87IH07CisJCUM5RDQ2NzA1MUU2MEM0NjUwMDgxOTVGQiAvKiBB
dXRvcGxheUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDOUQ0NjcwNDFFNjBDM0VCMDA4MTk1RkIgLyogQXV0b3BsYXlFdmVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNBM0E0QUFGMjU0MTZF
NDAwMDZDREFFMiAvKiBJbWFnZVJlc29sdXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBM0E0QUFEMjU0MTZFM0UwMDZDREFFMiAvKiBJbWFnZVJl
c29sdXRpb24uaCAqLzsgfTsKKwkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFu
aW1hdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
QTNCRjY3RDEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDQTZDMTUzMDIyMEI5OENDMDA1
NUNCRkMgLyogSlNWYWx1ZUluV3JhcHBlZE9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMxQUUzQjgxRkI4MEVBRTAwRjVFRkIyIC8qIEpTVmFs
dWVJbldyYXBwZWRPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDQTdFOUI0OTI0MzYxREM1MDA0RTg5RjYgLyogQ29udGVudGZ1bFBhaW50
Q2hlY2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0E3RTlCNDcyNDM2MURDNTAwNEU4OUY2IC8qIENvbnRlbnRmdWxQYWludENoZWNrZXIuaCAqLzsg
fTsKKwkJQ0FFOUY5MTAxNDY0NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENBRTlGOTBFMTQ2
NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi87IH07CisJCUNCMzhGRDUy
MUNDRjkzOTQwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlRW50cnkuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCMzhGRDRFMUNDRjkzN0UwMDU5MkEzRiAv
KiBKU1BlcmZvcm1hbmNlRW50cnkuaCAqLzsgfTsKKwkJQ0IzOEZENUIxQ0QyMzI1QjAwNTkyQTNG
IC8qIEpTUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0IzOEZENTkxQ0QyMzE0NTAwNTkyQTNGIC8qIEpTUGVy
Zm9ybWFuY2VSZXNvdXJjZVRpbWluZy5oICovOyB9OworCQlDQkE5REMwQjFERjQ0REY0MDAwNTY3
NUMgLyogTGlua0hlYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0JBOURDMDkxREY0NERDNDAwMDU2NzVDIC8qIExpbmtIZWFkZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDQkI2QjJENDFDQjdB
RTUxMDA5RURFMUEgLyogTGlua1ByZWxvYWRSZXNvdXJjZUNsaWVudHMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENCQjZCMkQyMUNCN0FERDAwMDlFREUx
QSAvKiBMaW5rUHJlbG9hZFJlc291cmNlQ2xpZW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNCQzJEMjMwMUNFNUI4QTEwMEQxODgwQiAvKiBS
ZXNvdXJjZVRpbWluZ0luZm9ybWF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDQkMyRDIyRTFDRTVCNzdEMDBEMTg4MEIgLyogUmVzb3VyY2VUaW1p
bmdJbmZvcm1hdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUNDQzJCNTE0MTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENDQzJCNTEwMTVGNjEz
MDYwMDQ4Q0RENiAvKiBEZXZpY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlDQ0MyQjUxNjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNl
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0NDMkI1MTIxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDA2M0Y4MjFFMjNG
QTg5MDA4MTJCRTMgLyogSW5pdERhdGFSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDA2M0Y4MDFFMjNGQTg5MDA4MTJCRTMgLyogSW5p
dERhdGFSZWdpc3RyeS5jcHAgKi87IH07CisJCUNEMDYzRjgzMUUyM0ZBODkwMDgxMkJFMyAvKiBJ
bml0RGF0YVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRDA2M0Y4MTFFMjNGQTg5MDA4MTJCRTMgLyogSW5pdERhdGFSZWdpc3RyeS5oICov
OyB9OworCQlDRDBFRUUwRTE0NzQzRjM5MDAzRUFGQTIgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRv
cklPUy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RDBFRUUwQjE0NzQzRTM1MDAzRUFGQTIgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvcklPUy5jcHAg
Ki87IH07CisJCUNEMTFCM0UxMjI3Q0U2RjMwMDIzQUZDNyAvKiBBVlN0cmVhbURhdGFQYXJzZXJN
SU1FVHlwZUNhY2hlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0QxMUIzRTAyMjdDQUFBOTAwMjNBRkM3IC8qIEFWU3RyZWFtRGF0YVBhcnNlck1JTUVU
eXBlQ2FjaGUubW0gKi87IH07CisJCUNEMTI3REVFMTRGMzA5ODQwMEU4NDc3OSAvKiBXZWJDb3Jl
RnVsbFNjcmVlbldpbmRvdy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0QxMjdERUExNEYzMDk3OTAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxsU2NyZWVuV2lu
ZG93LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
Q0QxN0E0NUQyMTM3NDA4MTAwNzlFQzdCIC8qIFVuaWZpZWRTb3VyY2U2Mi1tbS5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEMTdBNDU5MjEzNzQwMTYw
MDc5RUM3QiAvKiBVbmlmaWVkU291cmNlNjItbW0ubW0gKi87IH07CisJCUNEMTlBMjY4MUExM0U3
MDAwMDhENjUwRSAvKiBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QxOUEyNjcxQTEzRTcwMDAwOEQ2NTBFIC8q
IERpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0QxOUZFQTgxRjU3Mzk3MjAwMEM0MkZCIC8qIEltYWdlRGVj
b2Rlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Qx
OUZFQTYxRjU3Mzk3MjAwMEM0MkZCIC8qIEltYWdlRGVjb2Rlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEMTlGRUFFMUY1NzRCNkQwMDBDNDJG
QiAvKiBJbWFnZURlY29kZXJBVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRDE5RkVBQzFGNTc0QjZEMDAwQzQyRkIgLyogSW1hZ2VEZWNvZGVy
QVZGT2JqQy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUNEMTlGRUFGMUY1NzRCNkQwMDBDNDJGQiAvKiBJbWFnZURlY29kZXJBVkZPYmpDLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QxOUZFQUQxRjU3
NEI2RDAwMEM0MkZCIC8qIEltYWdlRGVjb2RlckFWRk9iakMubW0gKi87IH07CisJCUNEMjI1QzBC
MUM0NkZCRjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QyMjVDMDkxQzQ2RkJGNDAwMTQwNzYx
IC8qIFdlYkNvcmVOU1VSTFNlc3Npb24ubW0gKi87IH07CisJCUNEMjI1QzBDMUM0NkZCRjQwMDE0
MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRDIyNUMwQTFDNDZGQkY0MDAxNDA3NjEgLyogV2ViQ29yZU5T
VVJMU2Vzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUNEMjdBRTUwMjJBOTg2ODcwMDk0N0ZGOSAvKiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZU
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDI3QUU0
RTIyQTk4Njg3MDA5NDdGRjkgLyogSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEMjdBRTUxMjJBOTg2ODcw
MDk0N0ZGOSAvKiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZULm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QyN0FFNEYyMkE5ODY4NzAwOTQ3RkY5IC8qIElt
YWdlUm90YXRpb25TZXNzaW9uVlQubW0gKi87IH07CisJCUNEMkY0QTI0MThEODlGNzAwMDYzNzQ2
RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IENEMkY0QTIyMThEODlGNzAwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3
YXJlTGlzdGVuZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlDRDJGNEEyODE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxpc3RlbmVy
TWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDJG
NEEyNjE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxpc3RlbmVyTWFjLmggKi87IH07
CisJCUNEMzE4NjIyMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2YXRlTWVkaWFTb3VyY2VBVkZP
YmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Qz
MTg2MjAxOTlGMUUyQTAwMzBBMEY3IC8qIENETVByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0g
Ki87IH07CisJCUNEMzE4NjIzMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDRDMxODYyMTE5OUYxRTJBMDAzMEEwRjcgLyogQ0RNUHJpdmF0ZU1lZGlhU291cmNlQVZGT2Jq
Qy5oICovOyB9OworCQlDRDMzNkY2MTE3RjlGNjQ3MDBERERDRDAgLyogQVZUcmFja1ByaXZhdGVB
VkZPYmpDSW1wbC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IENEMzM2RjVGMTdGOUY2NDcwMERERENEMCAvKiBBVlRyYWNrUHJpdmF0ZUFWRk9iakNJbXBs
Lm1tICovOyB9OworCQlDRDMzNkY2MjE3RjlGNjQ3MDBERERDRDAgLyogQVZUcmFja1ByaXZhdGVB
VkZPYmpDSW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0QzMzZGNjAxN0Y5RjY0NzAwREREQ0QwIC8qIEFWVHJhY2tQcml2YXRlQVZGT2JqQ0ltcGwu
aCAqLzsgfTsKKwkJQ0QzMzZGNjQxN0ZBMEE0RDAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRl
QVZGLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDMz
NkY2MzE3RkEwQTREMDBERERDRDAgLyogVmlkZW9UcmFja1ByaXZhdGVBVkYuaCAqLzsgfTsKKwkJ
Q0QzMzZGNjcxN0ZBMEFDNjAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRlQVZGT2JqQy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDMzNkY2NTE3
RkEwQUM2MDBERERDRDAgLyogVmlkZW9UcmFja1ByaXZhdGVBVkZPYmpDLmNwcCAqLzsgfTsKKwkJ
Q0QzMzZGNjgxN0ZBMEFDNjAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRlQVZGT2JqQy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QzMzZGNjYxN0ZB
MEFDNjAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRlQVZGT2JqQy5oICovOyB9OworCQlDRDM2
QzE2MjI2MDdFNzg2MDBDOEM1MjkgLyogQXVkaW9TZXNzaW9uSU9TLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDM2QzE2MTI2MDdFNzg2MDBDOEM1Mjkg
LyogQXVkaW9TZXNzaW9uSU9TLmggKi87IH07CisJCUNEMzZDMTZCMjYwQTY1Q0MwMEM4QzUyOSAv
KiBTaGFyZWRSb3V0aW5nQXJiaXRyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0QzNkMxNjgyNjBBNjNEMzAwQzhDNTI5IC8qIFNoYXJlZFJvdXRp
bmdBcmJpdHJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQ0QzQTQ5NUYxN0E5RDAxQjAwMjc0RTQyIC8qIE1lZGlhU291cmNlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDNBNDk1NjE3QTlEMDFC
MDAyNzRFNDIgLyogTWVkaWFTb3VyY2UuaCAqLzsgfTsKKwkJQ0QzQTQ5NjIxN0E5RDAxQjAwMjc0
RTQyIC8qIFNvdXJjZUJ1ZmZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0QzQTQ5NTkxN0E5RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlci5oICov
OyB9OworCQlDRDNBNDk2NTE3QTlEMDFCMDAyNzRFNDIgLyogU291cmNlQnVmZmVyTGlzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QzQTQ5NUMxN0E5
RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlckxpc3QuaCAqLzsgfTsKKwkJQ0QzQ0UwRjgyNDAx
QUFEOTAwNEJBMDFEIC8qIENETUVuY3J5cHRpb25TY2hlbWUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERjc1NjlCMjE1QzIzQTQwMEVGQ0I1MCAvKiBD
RE1FbmNyeXB0aW9uU2NoZW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0QzQ0UwRjkyNDAxQUFEOTAwNEJBMDFEIC8qIENETUZhY3RvcnkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOTRBNUQyMUY3
MUNCNkIwMEY1MjVDNSAvKiBDRE1GYWN0b3J5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0QzQ0UwRkEyNDAxQUFEOTAwNEJBMDFEIC8qIENETUlu
c3RhbmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RDk0QTVDRTFGNzFDQjZBMDBGNTI1QzUgLyogQ0RNSW5zdGFuY2UuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDNDRTBGQjI0MDFBQUQ5MDA0QkEw
MUQgLyogQ0RNSW5zdGFuY2VTZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRDlEMzc1QTIxNTE2M0U0MDA0OTY1N0IgLyogQ0RNSW5zdGFuY2VT
ZXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQ0QzQ0UwRkMyNDAxQUFEOTAwNEJBMDFEIC8qIENETUtleVN0YXR1cy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q5NEE1RDQxRjcxQ0I2QzAwRjUy
NUM1IC8qIENETUtleVN0YXR1cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUNEM0NFMEZEMjQwMUFBRDkwMDRCQTAxRCAvKiBDRE1LZXlTeXN0ZW1D
b25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDRDk0QTVDRDFGNzFDQjY5MDBGNTI1QzUgLyogQ0RNS2V5U3lzdGVtQ29uZmlndXJhdGlv
bi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNE
M0NFMEZFMjQwMUFBRDkwMDRCQTAxRCAvKiBDRE1NZWRpYUNhcGFiaWxpdHkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOTRBNUQzMUY3MUNCNkMwMEY1
MjVDNSAvKiBDRE1NZWRpYUNhcGFiaWxpdHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlDRDNDRTBGRjI0MDFBQURBMDA0QkEwMUQgLyogQ0RNTWVz
c2FnZVR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENEOTRBNUQ2MUY3MUNCNkQwMEY1MjVDNSAvKiBDRE1NZXNzYWdlVHlwZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEM0NFMTAwMjQwMUFBREEw
MDRCQTAxRCAvKiBDRE1Qcml2YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRDk0QTVDRjFGNzFDQjZBMDBGNTI1QzUgLyogQ0RNUHJpdmF0ZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEM0NFMTAx
MjQwMUFBREEwMDRCQTAxRCAvKiBDRE1Qcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q5NEE1Q0YxRjcxQ0I2MTAwRjUyNUM1IC8qIENETVByb3h5
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Qz
Q0UxMDIyNDAxQUFEQTAwNEJBMDFEIC8qIENETVJlcXVpcmVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDk0QTVDQzFGNzFDQjY5MDBGNTI1QzUg
LyogQ0RNUmVxdWlyZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDRDNDRTEwMzI0MDFBQURBMDA0QkEwMUQgLyogQ0RNUmVzdHJpY3Rpb25z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDk0QTVE
MDFGNzFDQjZCMDBGNTI1QzUgLyogQ0RNUmVzdHJpY3Rpb25zLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0QzQ0UxMDQyNDAxQUFEQTAwNEJBMDFE
IC8qIENETVNlc3Npb25UeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRDk0QTVENTFGNzFDQjZEMDBGNTI1QzUgLyogQ0RNU2Vzc2lvblR5cGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDNFMjFE
RDIxODM0NDRBMDBFNjZGNTUgLyogSW1hZ2VCdWZmZXJVdGlsaXRpZXNDRy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QzRTIxREIyMTgzM0Y1MTAwRTY2
RjU1IC8qIEltYWdlQnVmZmVyVXRpbGl0aWVzQ0cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDNFMjUxQzE4MDQ2QjA2MDBFMjdGNTYgLyogR3Jp
ZEFyZWEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
M0UyNTFCMTgwNDZCMDYwMEUyN0Y1NiAvKiBHcmlkQXJlYS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEM0UyNTI0MTgwNDZCQ0QwMEUyN0Y1NiAv
KiBDU1NHcmlkVGVtcGxhdGVBcmVhc1ZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRDNFMjUyMjE4MDQ2QkNEMDBFMjdGNTYgLyogQ1NTR3JpZFRl
bXBsYXRlQXJlYXNWYWx1ZS5oICovOyB9OworCQlDRDNFRUYzNzI1Nzk5RUZFMDA2NTYzQkIgLyog
TWVkaWFDYXBhYmlsaXRpZXNJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRDBDOEI1ODIxNDFDOENBMDA2MkY1OUQgLyogTWVkaWFDYXBhYmlsaXRp
ZXNJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQ0QzRUVGMzgyNTc5OUY3MzAwNjU2M0JCIC8qIE1lZGlhRGVjb2RpbmdDb25maWd1cmF0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREJEM0Qz
NjFGRTg1Q0MwMDAxMkM1NDUgLyogTWVkaWFEZWNvZGluZ0NvbmZpZ3VyYXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDNFRUYzOTI1Nzk5
RjdGMDA2NTYzQkIgLyogTWVkaWFDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREJEM0QzNTFGRTg1Q0JGMDAxMkM1NDUgLyogTWVk
aWFDb25maWd1cmF0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQ0QzRUVGM0EyNTc5OUY4ODAwNjU2M0JCIC8qIEF1ZGlvQ29uZmlndXJhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RCRDNE
MkIxRkU4NUNCQjAwMTJDNTQ1IC8qIEF1ZGlvQ29uZmlndXJhdGlvbi5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEM0VFRjNCMjU3OTlGQTEwMDY1
NjNCQiAvKiBWaWRlb0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IENEQkQzRDM0MUZFODVDQkYwMDEyQzU0NSAvKiBWaWRlb0NvbmZp
Z3VyYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlDRDNFRUYzQzI1Nzk5RkFCMDA2NTYzQkIgLyogQ29sb3JHYW11dC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q0RTRFOUIyMzU3Q0I5RDAwNzg5
NUMzIC8qIENvbG9yR2FtdXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDRDNFRUYzRDI1Nzk5RkI1MDA2NTYzQkIgLyogSGRyTWV0YWRhdGFUeXBl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDRFNEU5
QzIzNTdDQjlEMDA3ODk1QzMgLyogSGRyTWV0YWRhdGFUeXBlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0QzRUVGM0UyNTc5OUZDNzAwNjU2M0JC
IC8qIE1lZGlhRGVjb2RpbmdUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDREJEM0QzODFGRTg1Q0MwMDAxMkM1NDUgLyogTWVkaWFEZWNvZGluZ1R5
cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
RDNFRUYzRjI1Nzk5RkNDMDA2NTYzQkIgLyogTWVkaWFFbmNvZGluZ0NvbmZpZ3VyYXRpb24uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQkQzRDM3MUZF
ODVDQzAwMDEyQzU0NSAvKiBNZWRpYUVuY29kaW5nQ29uZmlndXJhdGlvbi5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEM0VFRjQwMjU3OTlGRDAw
MDY1NjNCQiAvKiBNZWRpYUVuY29kaW5nVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RCRDNEM0UxRkU4NUNDMzAwMTJDNTQ1IC8qIE1lZGlhRW5j
b2RpbmdUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQ0QzRUVGNDEyNTc5OUZEOTAwNjU2M0JCIC8qIFRyYW5zZmVyRnVuY3Rpb24uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENEU0RTlBMjM1N0NC
OUMwMDc4OTVDMyAvKiBUcmFuc2ZlckZ1bmN0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0QzRUVGNDIyNTc5QjQ0QTAwNjU2M0JCIC8qIE1l
ZGlhRW5naW5lQ29uZmlndXJhdGlvbkZhY3RvcnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlBQzZGMDI1MjExNDhGNTQwMENCREEwNiAvKiBNZWRpYUVu
Z2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Q0QUM1MkExNDk2QUU5QTAwODdDNEVGIC8qIENvbXBvc2l0
ZS53YXYgaW4gQ29weSBBdWRpbyBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0Q0QUM1MjgxNDk2QUUyRjAwODdDNEVGIC8qIENvbXBvc2l0ZS53YXYgKi87IH07
CisJCUNENTIwOUU0MUIwQkQ4MzgwMDc3MTg0RSAvKiBNZWRpYVBsYXllckVudW1zLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDUyMDlFMzFCMEJEODM4
MDA3NzE4NEUgLyogTWVkaWFQbGF5ZXJFbnVtcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUNENTIwOUU2MUIwQkQ5RTEwMDc3MTg0RSAvKiBIVE1M
TWVkaWFFbGVtZW50RW51bXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENENTIwOUU1MUIwQkQ5RTEwMDc3MTg0RSAvKiBIVE1MTWVkaWFFbGVtZW50RW51
bXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
RDUyNUJBNDFFRTBCMTA3MDA3ODhERjUgLyogRm91ckNDLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDUyNUJBMjFFRTBCMTA3MDA3ODhERjUgLyogRm91
ckNDLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
Q0Q1MzkzRDMxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDUzOTNEMTE3NUUwMTg2MDBDMDcx
MjMgLyogSlNNZW1vcnlJbmZvLmNwcCAqLzsgfTsKKwkJQ0Q1MzkzRDQxNzVFMDE4NjAwQzA3MTIz
IC8qIEpTTWVtb3J5SW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0Q1MzkzRDIxNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVtb3J5SW5mby5oICovOyB9
OworCQlDRDU0QTc2MjE4MEY5RjcwMDBCMDc2QzkgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0Q1NEE3NjAxODBGOUY3MDAwQjA3NkM5IC8qIEF1ZGlvVHJhY2tQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmpDLmNwcCAqLzsgfTsKKwkJQ0Q1NEE3NjMxODBGOUY3MDAwQjA3NkM5IC8qIEF1
ZGlvVHJhY2tQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDU0QTc2MTE4MEY5RjcwMDBCMDc2QzkgLyogQXVk
aW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaCAqLzsgfTsKKwkJQ0Q1ODk2RTIxQ0Qy
QjE1MTAwQjNCQ0M4IC8qIFdlYlBsYXliYWNrQ29udHJvbHNNYW5hZ2VyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDU4OTZFMDFDRDJCMTUxMDBCM0JD
QzggLyogV2ViUGxheWJhY2tDb250cm9sc01hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDVEMjc3ODFFODMxOEUwMDBEODBBM0QgLyog
V2ViQ29yZURlY29tcHJlc3Npb25TZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRDVEMjc3NjFFODMxOEUwMDBEODBBM0QgLyogV2ViQ29yZURl
Y29tcHJlc3Npb25TZXNzaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0Q1RTVCNUYxQTE1Q0U1NDAwMEM2MDlFIC8qIFBhZ2VDb25maWd1cmF0
aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDVF
NUI1RTFBMTVDRTU0MDAwQzYwOUUgLyogUGFnZUNvbmZpZ3VyYXRpb24uaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDVGRjQ5NzIxNjJFMkI3MDA0
QkQ4NkYgLyogSVNPVHJhY2tFbmNyeXB0aW9uQm94LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDg3MUM2NjFGQjUyQjY4MDBGMEI5NjUgLyogSVNPVHJh
Y2tFbmNyeXB0aW9uQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQ0Q1RkY0OTkyMTYyRTJCRTAwNEJEODZGIC8qIElTT0JveC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q4NzFDNjIxRkI1MkI2NTAw
RjBCOTY1IC8qIElTT0JveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUNENUZGNDlBMjE2MkU0QTYwMDRCRDg2RiAvKiBJU09TY2hlbWVJbmZvcm1h
dGlvbkJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0Q4NzFDNjQxRkI1MkI2NzAwRjBCOTY1IC8qIElTT1NjaGVtZUluZm9ybWF0aW9uQm94LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Q1RkY0OUIy
MTYyRTRCNzAwNEJEODZGIC8qIElTT1NjaGVtZVR5cGVCb3guaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEODcxQzVDMUZCNTJCNjMwMEYwQjk2NSAvKiBJ
U09TY2hlbWVUeXBlQm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJQ0Q1RkY0OUMyMTYyRTRDRjAwNEJEODZGIC8qIElTT1Byb3RlY3Rpb25TeXN0
ZW1TcGVjaWZpY0hlYWRlckJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMTJGNzVBOUE4NkVBMDNEQUYyNEI3OTcxIC8qIElTT1Byb3RlY3Rpb25TeXN0
ZW1TcGVjaWZpY0hlYWRlckJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUNENUZGNDlEMjE2MkU0REIwMDRCRDg2RiAvKiBJU09Qcm90ZWN0aW9u
U2NoZW1lSW5mb0JveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0Q4NzFDNjAxRkI1MkI2NTAwRjBCOTY1IC8qIElTT1Byb3RlY3Rpb25TY2hlbWVJbmZv
Qm94LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
Q0Q1RkY0OUUyMTYyRTRFODAwNEJEODZGIC8qIElTT09yaWdpbmFsRm9ybWF0Qm94LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDg3MUM2NzFGQjUyQjY4
MDBGMEI5NjUgLyogSVNPT3JpZ2luYWxGb3JtYXRCb3guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRDY0MUVCMzE4MThGNUVEMDBFRTRDNDEgLyog
TWVkaWFTb3VyY2VQcml2YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRDY0MUVCMTE4MThGNUVEMDBFRTRDNDEgLyogTWVkaWFTb3VyY2VQcml2YXRl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Q2
NDFFQjQxODE4RjVFRDAwRUU0QzQxIC8qIFNvdXJjZUJ1ZmZlclByaXZhdGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENjQxRUIyMTgxOEY1RUQwMEVF
NEM0MSAvKiBTb3VyY2VCdWZmZXJQcml2YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Q3MjBCNEYyMjY4QjUxMzAwMDQ3RkRFIC8qIElTT0Zh
aXJQbGF5U3RyZWFtaW5nUHNzaEJveC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0Q3MjBCNDkyMjY4MkM3RjAwMDQ3RkRFIC8qIElTT0ZhaXJQbGF5U3Ry
ZWFtaW5nUHNzaEJveC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUNEN0QzMzQ0MUM3QTEyM0YwMDA0MTI5MyAvKiBQaXhlbEJ1ZmZlckNvbmZvcm1l
ckNWLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDdE
MzM0MjFDN0ExMjNGMDAwNDEyOTMgLyogUGl4ZWxCdWZmZXJDb25mb3JtZXJDVi5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEN0QzMzQ4MUM3QTE2
QkYwMDA0MTI5MyAvKiBDb3JlVmlkZW9Tb2Z0TGluay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q3RDMzNDYxQzdBMTZCRjAwMDQxMjkzIC8qIENvcmVW
aWRlb1NvZnRMaW5rLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQ0Q3REJCMjkxOENBMTlDNjAwQzExMDY2IC8qIENTU0dyaWRMaW5lTmFtZXNWYWx1
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q3REJC
MjcxOENBMTFGRjAwQzExMDY2IC8qIENTU0dyaWRMaW5lTmFtZXNWYWx1ZS5oICovOyB9OworCQlD
RDdFMDUyMjE2NTFDMjgyMDBDMTIwMUYgLyogV2ViQ29yZUFWRlJlc291cmNlTG9hZGVyLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q3RTA1MjExNjUx
QTg0MTAwQzEyMDFGIC8qIFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlci5tbSAqLzsgfTsKKwkJQ0Q4
M0QzNjIyMTEyMkEyMTAwNzZFMTFDIC8qIERlZmVycmFibGVUYXNrLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDgzRDM1QTIxMTExMDgyMDA3NkUxMUMg
LyogRGVmZXJyYWJsZVRhc2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDRDhBN0JCQjE5NzczNUZFMDBDQkQ2NDMgLyogQXVkaW9Tb3VyY2VQcm92
aWRlckFWRk9iakMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDRDhBN0JCOTE5NzczNUZFMDBDQkQ2NDMgLyogQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9i
akMubW0gKi87IH07CisJCUNEOEE3QkJDMTk3NzM1RkUwMENCRDY0MyAvKiBBdWRpb1NvdXJjZVBy
b3ZpZGVyQVZGT2JqQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0Q4QTdCQkExOTc3MzVGRTAwQ0JENjQzIC8qIEF1ZGlvU291cmNlUHJvdmlkZXJBVkZP
YmpDLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
Q0Q4QUNBOEYxRDIzOTcxOTAwRUNDNTlFIC8qIE1lZGlhUmVtb3RlU29mdExpbmsuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOEFDQThEMUQyMzk3MTkw
MEVDQzU5RSAvKiBNZWRpYVJlbW90ZVNvZnRMaW5rLmggKi87IH07CisJCUNEOEI1QTQyMTgwRDE0
OUEwMDhCOEU2NSAvKiBWaWRlb1RyYWNrUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOEI1QTQwMTgwRDE0
OUEwMDhCOEU2NSAvKiBWaWRlb1RyYWNrUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSAqLzsg
fTsKKwkJQ0Q4QjVBNDMxODBEMTQ5QTAwOEI4RTY1IC8qIFZpZGVvVHJhY2tQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDRDhCNUE0MTE4MEQxNDlBMDA4QjhFNjUgLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMuaCAqLzsgfTsKKwkJQ0Q4QjVBNDYxODBERkY0RTAwOEI4RTY1IC8qIFZpZGVv
VHJhY2tNZWRpYVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0Q4QjVBNDUxODBERkY0RTAwOEI4RTY1IC8qIFZpZGVvVHJhY2tNZWRpYVNvdXJj
ZS5oICovOyB9OworCQlDRDhCNUE0OTE4MEUxMzhCMDA4QjhFNjUgLyogVGV4dFRyYWNrTWVkaWFT
b3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
OEI1QTQ4MTgwRTEzOEIwMDhCOEU2NSAvKiBUZXh0VHJhY2tNZWRpYVNvdXJjZS5oICovOyB9Owor
CQlDRDhCNUE0QzE4MEUxN0MwMDA4QjhFNjUgLyogQXVkaW9UcmFja01lZGlhU291cmNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDhCNUE0QjE4MEUx
N0MwMDA4QjhFNjUgLyogQXVkaW9UcmFja01lZGlhU291cmNlLmggKi87IH07CisJCUNEOEQzMDZG
MjNBRDRGQTgwMDZDMzk3NSAvKiBDRE1Mb2dnaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDhEMzA2RDIzQUQ0RkE4MDA2QzM5NzUgLyogQ0RNTG9n
Z2luZy5oICovOyB9OworCQlDRDkyRjUxMzIyNjBGRkVFMDBGODdCQjMgLyogRG9jdW1lbnRGdWxs
c2NyZWVuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RDkyRjUxMDIyNjBGRkVFMDBGODdCQjMgLyogRG9jdW1lbnRGdWxsc2NyZWVuLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0Q5MkY1MTgyMjYxMDM4
MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDkyRjUxNjIyNjEwMzgyMDBGODdCQjMgLyogRnVsbHNj
cmVlbk1hbmFnZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlDRDk0QTVERTFGNzJGNTdCMDBGNTI1QzUgLyogQ0RNQ2xpZW50LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDk0QTVDOTFGNzFDQTlEMDBG
NTI1QzUgLyogQ0RNQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0Q5Q0M1ODUyNEM2QkJFQjAwQ0QzQzY0IC8qIFZQOVV0aWxpdGllcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0Q2RkU1QkEy
NEJDRTdCNjAwOUZDREE0IC8qIFZQOVV0aWxpdGllcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEOURFMTc1MTdBQUM3NEMwMEVBMzg2RCAvKiBK
U01lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDRDlERTE3MzE3QUFDNzRDMDBFQTM4NkQgLyogSlNNZWRpYVNvdXJjZS5oICovOyB9Owor
CQlDRDlERTE3QjE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VCdWZmZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEOURFMTc3MTdBQUM3NUIwMEVB
Mzg2RCAvKiBKU1NvdXJjZUJ1ZmZlci5oICovOyB9OworCQlDRDlERTE3RDE3QUFDNzVCMDBFQTM4
NkQgLyogSlNTb3VyY2VCdWZmZXJMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDRDlERTE3OTE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VCdWZm
ZXJMaXN0LmggKi87IH07CisJCUNEOURFMTgyMTdBQUQ2QTQwMEVBMzg2RCAvKiBET01VUkxNZWRp
YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0Q5REUxN0YxN0FBRDY0RTAwRUEzODZEIC8qIERPTVVSTE1lZGlhU291cmNlLmggKi87IH07CisJ
CUNEQTI5QTBCMUNCRDlBNzQwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2RlbC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBMjlBMEExQ0JEOUE3
NDAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1vZGVsLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RBMjlBMEYxQ0JEOUNGRTAwOTAxQ0NGIC8q
IFBsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEwRDFDQkQ5Q0ZFMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uTW9kZWxNZWRpYUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDREEyOUExNjFDQkRBNTZDMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uSW50ZXJmYWNlTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0RBMjlBMTQxQ0JEQTU2QzAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vz
c2lvbkludGVyZmFjZU1hYy5tbSAqLzsgfTsKKwkJQ0RBMjlBMTcxQ0JEQTU2QzAwOTAxQ0NGIC8q
IFBsYXliYWNrU2Vzc2lvbkludGVyZmFjZU1hYy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBMjlBMTUxQ0JEQTU2QzAwOTAxQ0NGIC8qIFBsYXliYWNr
U2Vzc2lvbkludGVyZmFjZU1hYy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUNEQTI5QTMwMUNCRjc0RDQwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Np
b25JbnRlcmZhY2VBVktpdC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENEQTI5QTJGMUNCRjczRkMwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25JbnRl
cmZhY2VBVktpdC5tbSAqLzsgfTsKKwkJQ0RBMjlBMzIxQ0MwMUE5NTAwOTAxQ0NGIC8qIFBsYXli
YWNrU2Vzc2lvbkludGVyZmFjZUFWS2l0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEyRTFDQkY3M0ZDMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNz
aW9uSW50ZXJmYWNlQVZLaXQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlDREE1OTU5MzIxNDZERUMzMDBBODQxODUgLyogSEVWQ1V0aWxpdGllcy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBNTk1OTEy
MTQ2REVDMzAwQTg0MTg1IC8qIEhFVkNVdGlsaXRpZXMuaCAqLzsgfTsKKwkJQ0RBNTk1OTgyMTQ2
REY3ODAwQTg0MTg1IC8qIEhFVkNVdGlsaXRpZXNDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBNTk1OTYyMTQ2REY3ODAwQTg0MTg1IC8qIEhF
VkNVdGlsaXRpZXNDb2NvYS5oICovOyB9OworCQlDREE3OTgyNzE3MEEyNzkxMDBENDVDNTUgLyog
QXVkaW9TZXNzaW9uSU9TLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0RBNzk4MjUxNzBBMjc5MDAwRDQ1QzU1IC8qIEF1ZGlvU2Vzc2lvbklPUy5tbSAq
LzsgfTsKKwkJQ0RBNzk4MkExNzBBM0QwMDAwRDQ1QzU1IC8qIEF1ZGlvU2Vzc2lvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBNzk4MjExNzBBMjJE
QzAwRDQ1QzU1IC8qIEF1ZGlvU2Vzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUNEQTk1OTM1MjQxMjNDQjgwMDkxMEVFRiAvKiBNZWRpYVNl
c3Npb25IZWxwZXJJT1MubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRDg3NUE3NTI0MTFCNzk4MDBCMDlGNTggLyogTWVkaWFTZXNzaW9uSGVscGVySU9T
Lm1tICovOyB9OworCQlDREE5NTkzRjI0MTJCQUUwMDA5MTBFRUYgLyogTWVkaWFTZXNzaW9uSGVs
cGVySU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RDg3NUE3NDI0MTFCNzk4MDBCMDlGNTggLyogTWVkaWFTZXNzaW9uSGVscGVySU9TLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RBOThFMEIxNjAz
Q0Q2MDAwRkVBM0IxIC8qIExlZ2FjeUNETS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREE5OEUwOTE2MDNDRDU5MDBGRUEzQjEgLyogTGVnYWN5Q0RN
LmNwcCAqLzsgfTsKKwkJQ0RBQjZEMjkxN0M3REU2QzAwQzYwQjM0IC8qIE1lZGlhQ29udHJvbHNI
b3N0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREFC
NkQyNzE3QzdERTZDMDBDNjBCMzQgLyogTWVkaWFDb250cm9sc0hvc3QuaCAqLzsgfTsKKwkJQ0RB
QjZEMkUxN0M4MTRFRTAwQzYwQjM0IC8qIEpTTWVkaWFDb250cm9sc0hvc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQUI2RDJDMTdDODE0RUUwMEM2
MEIzNCAvKiBKU01lZGlhQ29udHJvbHNIb3N0LmggKi87IH07CisJCUNEQUI2RDMxMTdDOTI1OTUw
MEM2MEIzNCAvKiBVc2VyQWdlbnRTY3JpcHRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREFCNkQyRjE3QzkyNTk1MDBDNjBCMzQgLyogVXNlckFnZW50
U2NyaXB0cy5oICovOyB9OworCQlDREFDMDY4MzI0QzZBOTVBMDAyRjcyN0YgLyogVlA5VXRpbGl0
aWVzQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENENkZFNUI3MjRCQ0U2NDUwMDlGQ0RBNCAvKiBWUDlVdGlsaXRpZXNDb2NvYS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEQjYzNTQ5MjNGNjAy
M0EwMEMwRjlERSAvKiBXZWJBVlBsYXllckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTI5QTJDMUNCRjczRkMwMDkwMUNDRiAvKiBX
ZWJBVlBsYXllckNvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlDREI3MDQ1QTFGNzQ2NUExMDAzOTIzREYgLyogQ0RNRmFpclBsYXlT
dHJlYW1pbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENEQjcwNDU4MUY3NDY1QTEwMDM5MjNERiAvKiBDRE1GYWlyUGxheVN0cmVhbWluZy5oICovOyB9
OworCQlDREI3MDQ1QjFGNzQ2NUExMDAzOTIzREYgLyogQ0RNRmFpclBsYXlTdHJlYW1pbmcuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RCNzA0NTkx
Rjc0NjVBMTAwMzkyM0RGIC8qIENETUZhaXJQbGF5U3RyZWFtaW5nLmNwcCAqLzsgfTsKKwkJQ0RC
RUFFQUMxOUQ5MkI2QzAwQkVCQTg4IC8qIE1lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RCRUFFQUExOUQ5
MkI2QzAwQkVCQTg4IC8qIE1lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLm1tICovOyB9OworCQlD
REJFQUVBRDE5RDkyQjZDMDBCRUJBODggLyogTWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQkVBRUFCMTlE
OTJCNkMwMEJFQkE4OCAvKiBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oICovOyB9OworCQlD
REMyMjQyODFGNzU2OTY2MDA1RjA3N0IgLyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FW
Rk9iakMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RDc4QTJFQzFGNzU2NDg2MDBERTM3MUIgLyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FW
Rk9iakMubW0gKi87IH07CisJCUNEQzI2QjQwMTYwQThDQzYwMDI2NzU3QiAvKiBMZWdhY3lNb2Nr
Q0RNLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
QzI2QjNDMTYwQTYyQjAwMDI2NzU3QiAvKiBMZWdhY3lNb2NrQ0RNLmNwcCAqLzsgfTsKKwkJQ0RD
MjZCNDExNjBBOENDRTAwMjY3NTdCIC8qIExlZ2FjeU1vY2tDRE0uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzI2QjNEMTYwQTYyQjAwMDI2NzU3QiAv
KiBMZWdhY3lNb2NrQ0RNLmggKi87IH07CisJCUNEQzMxMkU5MjJGQ0Q3QzAwMDEyMDRFQyAvKiBS
ZW1vdGVQbGF5YmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQ0RDMzEyRTEyMkZDRDBCMDAwMTIwNEVDIC8qIFJlbW90ZVBsYXliYWNrLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RDMzEyRUEyMkZD
RDdDNjAwMTIwNEVDIC8qIEhUTUxNZWRpYUVsZW1lbnRSZW1vdGVQbGF5YmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDMzEyRTUyMkZDRDBCMDAw
MTIwNEVDIC8qIEhUTUxNZWRpYUVsZW1lbnRSZW1vdGVQbGF5YmFjay5oICovOyB9OworCQlDREMz
MTJFQjIyRkNEN0M5MDAxMjA0RUMgLyogUmVtb3RlUGxheWJhY2tBdmFpbGFiaWxpdHlDYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDMzEy
RTcyMkZDRDBCMDAwMTIwNEVDIC8qIFJlbW90ZVBsYXliYWNrQXZhaWxhYmlsaXR5Q2FsbGJhY2su
aCAqLzsgfTsKKwkJQ0RDNDhBQzkyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlhRW5naW5lQ29uZmln
dXJhdGlvbkZhY3RvcnlDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0RDNDhBQzcyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlhRW5naW5lQ29uZmln
dXJhdGlvbkZhY3RvcnlDb2NvYS5oICovOyB9OworCQlDREM2NzUyMjFFQUVBOUI3MDA3MjdDODQg
LyogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzY3NTIwMUVBRUE5QjcwMDcyN0M4NCAv
KiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tICovOyB9OworCQlDREM2NzUy
MzFFQUVBOUI3MDA3MjdDODQgLyogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdlci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDNjc1MjEx
RUFFQTlCNzAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaCAq
LzsgfTsKKwkJQ0RDNjc1MjcxRUFFQTlENDAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNzaW9uQ2FwdHVy
ZURldmljZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0RDNjc1MjUxRUFFQTlENDAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5o
ICovOyB9OworCQlDREM2OURENjE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5X
YXJuaW5nVmlldy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0RDNjlERDQxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1Zp
ZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
REM2OUREQTE2MzcxRkQ0MDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzY5
REQ4MTYzNzFGRDMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEQzcz
NDE1MTk3Nzg5NkQwMDQ2QkZDNSAvKiBDQVJpbmdCdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzczNDEzMTk3Nzg5NkMwMDQ2QkZDNSAvKiBD
QVJpbmdCdWZmZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlDREM3NDcwNDI0QkUyRkM3MDBDMTg2OEIgLyogUG93ZXJTb3VyY2VOb3RpZmllci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDNzQ3MDAy
NEJFMjY3OTAwQzE4NjhCIC8qIFBvd2VyU291cmNlTm90aWZpZXIuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDREM4QjVBMjE4MDQ2MzQ3MDAxNkU2
ODUgLyogTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDOEI1QTAxODA0NjM0NzAwMTZF
Njg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSAqLzsgfTsKKwkJ
Q0RDOEI1QTMxODA0NjM0NzAwMTZFNjg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNl
QVZGT2JqQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0RDOEI1QTExODA0NjM0NzAwMTZFNjg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNl
QVZGT2JqQy5oICovOyB9OworCQlDREM4QjVBNjE4MDQ3NEY3MDAxNkU2ODUgLyogTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENEQzhCNUE0MTgwNDc0RjcwMDE2RTY4NSAvKiBNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDLm1tICovOyB9OworCQlDREM4QjVBNzE4MDQ3NEY3MDAxNkU2ODUgLyogTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0RDOEI1QTUxODA0NzRGNzAwMTZFNjg1IC8qIE1lZGlhU291cmNlUHJpdmF0ZUFW
Rk9iakMuaCAqLzsgfTsKKwkJQ0RDOEI1QUExODA0N0ZGMTAwMTZFNjg1IC8qIFNvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0RDOEI1QTgxODA0N0ZGMTAwMTZFNjg1IC8qIFNvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDLm1tICovOyB9OworCQlDREM4QjVBQjE4MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVm
ZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENEQzhCNUE5MTgwNDdGRjEwMDE2RTY4NSAvKiBTb3VyY2VCdWZmZXJQcml2YXRl
QVZGT2JqQy5oICovOyB9OworCQlDREM4QjVBRDE4MDRBRTVEMDAxNkU2ODUgLyogU291cmNlQnVm
ZmVyUHJpdmF0ZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0RDOEI1QUMxODA0QUU1RDAwMTZFNjg1IC8qIFNvdXJjZUJ1ZmZlclByaXZhdGVD
bGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlDREM5MzlBODFFOUJERkIxMDBCQjc2OEQgLyogVmlkZW9Ub29sYm94U29mdExpbmsuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzkzOUE2MUU5QkRG
QjEwMEJCNzY4RCAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5oICovOyB9OworCQlDREM5NzlGNTFD
NDk4QzA5MDBEQjUwRDQgLyogV2ViQ29yZU5TRXJyb3JFeHRyYXMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQzk3OUYzMUM0OThDMDkwMERCNTBENCAv
KiBXZWJDb3JlTlNFcnJvckV4dHJhcy5oICovOyB9OworCQlDRENBOThFQjE4QjJDOEVCMDBDMTJG
RjkgLyogTGVnYWN5Q0RNUHJpdmF0ZU1lZGlhUGxheWVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQ0E5OEVBMThCMkM4RUIwMEMxMkZGOSAvKiBM
ZWdhY3lDRE1Qcml2YXRlTWVkaWFQbGF5ZXIuY3BwICovOyB9OworCQlDRENDOUJDRjIyMzg3RTlB
MDBGRkI1MUMgLyogTWVkaWFDYXBhYmlsaXRpZXNEZWNvZGluZ0luZm8uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQ0M5QkNFMjIzODdFOUEwMEZGQjUx
QyAvKiBNZWRpYUNhcGFiaWxpdGllc0RlY29kaW5nSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEQ0M5QkQxMjIzODdFQUEwMEZGQjUxQyAv
KiBNZWRpYUNhcGFiaWxpdGllc0VuY29kaW5nSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDQzlCRDAyMjM4N0VBQTAwRkZCNTFDIC8qIE1lZGlh
Q2FwYWJpbGl0aWVzRW5jb2RpbmdJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RDRDQxRTgxQzNEREIwQTAwOTY1RDk5IC8qIFBhcnNlZENv
bnRlbnRSYW5nZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQ0RDRDQxRTYxQzNEREIwOTAwOTY1RDk5IC8qIFBhcnNlZENvbnRlbnRSYW5nZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNEQ0ZBQkJEMThD
MEFGNzgwMDZGODQ1MCAvKiBIaWdobGlnaHREYXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRENGQUJCQjE4QzBBRTMxMDA2Rjg0NTAgLyogSGlnaGxp
Z2h0RGF0YS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUNERDcwODk3MTgzNTlGNkYwMDJCM0RDNiAvKiBTYW1wbGVNYXAuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERDcwODk1MTgzNTlGNkYwMDJCM0RD
NiAvKiBTYW1wbGVNYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlDRERDMUU3QTE4QTk1MkYzMDAyN0E5RDQgLyogTWVkaWFTb3VyY2VQcml2YXRl
Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
RERDMUU3OTE4QTk1MkYzMDAyN0E5RDQgLyogTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RERTAyRUQx
OEIzRUQ2RDAwQ0Y3RkYxIC8qIENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RERTAyRUIxOEIzRUQ2RDAw
Q0Y3RkYxIC8qIENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLm1tICovOyB9OworCQlDRERFMDJG
MDE4QjU2NTEzMDBDRjdGRjEgLyogQ0RNU2Vzc2lvbkFWU3RyZWFtU2Vzc2lvbi5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEREUwMkVGMThCNTY1MTIw
MENGN0ZGMSAvKiBDRE1TZXNzaW9uQVZTdHJlYW1TZXNzaW9uLm1tICovOyB9OworCQlDREUzQTg1
NDE3RjVGQ0U2MDBDNUJFMjAgLyogQXVkaW9UcmFja1ByaXZhdGVBVkYuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERTNBODUyMTdGNUZDRTYwMEM1QkUy
MCAvKiBBdWRpb1RyYWNrUHJpdmF0ZUFWRi5oICovOyB9OworCQlDREUzQTg1NzE3RjYwMjA0MDBD
NUJFMjAgLyogQXVkaW9UcmFja1ByaXZhdGVBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RFM0E4NTUxN0Y2MDIwNDAwQzVCRTIwIC8qIEF1
ZGlvVHJhY2tQcml2YXRlQVZGT2JqQy5tbSAqLzsgfTsKKwkJQ0RFM0E4NTgxN0Y2MDIwNDAwQzVC
RTIwIC8qIEF1ZGlvVHJhY2tQcml2YXRlQVZGT2JqQy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RFM0E4NTYxN0Y2MDIwNDAwQzVCRTIwIC8qIEF1ZGlv
VHJhY2tQcml2YXRlQVZGT2JqQy5oICovOyB9OworCQlDREUzQUUxMjI0QjQ5MTZBMDAxMjhFN0Ug
LyogQ0RNVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDREUzQUUxMDI0QjQ5MTY5MDAxMjhFN0UgLyogQ0RNVXRpbGl0aWVzLmggKi87IH07
CisJCUNERTU1NTI0MjQwNUNDRjIwMDhBM0REQiAvKiBMZWdhY3lDRE0uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTk4RTBBMTYwM0NENTkwMEZFQTNC
MSAvKiBMZWdhY3lDRE0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlDREU1NTUyNTI0MDVDQ0YyMDA4QTNEREIgLyogTGVnYWN5Q0RNUHJpdmF0ZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBOThFMEMx
NjAzQ0YzQzAwRkVBM0IxIC8qIExlZ2FjeUNETVByaXZhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDREU1OTU5NTFCRjE2REYzMDBBMUNCRTgg
LyogQ0RNU2Vzc2lvbkFWQ29udGVudEtleVNlc3Npb24ubW0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREU1OTU5MzFCRjE2NkFEMDBBMUNCRTggLyogQ0RN
U2Vzc2lvbkFWQ29udGVudEtleVNlc3Npb24ubW0gKi87IH07CisJCUNERTU5NTk3MUJGMjZFMjEw
MEExQ0JFOCAvKiBDRE1TZXNzaW9uTWVkaWFTb3VyY2VBVkZPYmpDLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREU1OTU5NjFCRjI2RTIxMDBBMUNCRTgg
LyogQ0RNU2Vzc2lvbk1lZGlhU291cmNlQVZGT2JqQy5oICovOyB9OworCQlDREU1OTU5RDFCRjI3
NTcxMDBBMUNCRTggLyogQ0RNU2Vzc2lvbk1lZGlhU291cmNlQVZGT2JqQy5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERTU5NTlDMUJGMjc1NzEwMEEx
Q0JFOCAvKiBDRE1TZXNzaW9uTWVkaWFTb3VyY2VBVkZPYmpDLm1tICovOyB9OworCQlDREU3RkM0
NTE4MTkwNEIxMDAyQkJCNzcgLyogT3JkZXJJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RFN0ZDNDMxODE5MDRCMTAwMkJCQjc3IC8qIE9y
ZGVySXRlcmF0b3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlDREU4M0RCMjE4M0M0NDA2MDAzMUVBQTMgLyogVmlkZW9QbGF5YmFja1F1YWxpdHku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERTgzREIw
MTgzQzQ0MDYwMDMxRUFBMyAvKiBWaWRlb1BsYXliYWNrUXVhbGl0eS5oICovOyB9OworCQlDREU4
QjVFQzFBNjk3NzczMDBCNEI2NkEgLyogTGVnYWN5Q0RNUHJpdmF0ZUNsZWFyS2V5LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERThCNUVBMUE2OTc3
NzMwMEI0QjY2QSAvKiBMZWdhY3lDRE1Qcml2YXRlQ2xlYXJLZXkuY3BwICovOyB9OworCQlDREU4
QjVFRDFBNjk3NzczMDBCNEI2NkEgLyogTGVnYWN5Q0RNUHJpdmF0ZUNsZWFyS2V5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREU4QjVFQjFBNjk3Nzcz
MDBCNEI2NkEgLyogTGVnYWN5Q0RNUHJpdmF0ZUNsZWFyS2V5LmggKi87IH07CisJCUNERThCNUYw
MUE2OTc3OEIwMEI0QjY2QSAvKiBMZWdhY3lDRE1TZXNzaW9uQ2xlYXJLZXkuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RFOEI1RUUxQTY5Nzc4QjAw
QjRCNjZBIC8qIExlZ2FjeUNETVNlc3Npb25DbGVhcktleS5jcHAgKi87IH07CisJCUNERThCNUYx
MUE2OTc3OEIwMEI0QjY2QSAvKiBMZWdhY3lDRE1TZXNzaW9uQ2xlYXJLZXkuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERThCNUVGMUE2OTc3OEIwMEI0
QjY2QSAvKiBMZWdhY3lDRE1TZXNzaW9uQ2xlYXJLZXkuaCAqLzsgfTsKKwkJQ0RFQTdDODQxMjc2
MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERUE3QzgyMTI3NjIzMDQwMEI4NDZERCAvKiBSZW5k
ZXJGdWxsU2NyZWVuLmggKi87IH07CisJCUNERUNBODlBMUVERjQ0N0QwMERDQjA4QiAvKiBBVkFz
c2V0VHJhY2tVdGlsaXRpZXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDREVDQTg5ODFFREY0NDdEMDBEQ0IwOEIgLyogQVZBc3NldFRyYWNrVXRpbGl0
aWVzLm1tICovOyB9OworCQlDREVDQTg5QjFFREY0NDdEMDBEQ0IwOEIgLyogQVZBc3NldFRyYWNr
VXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDREVDQTg5OTFFREY0NDdEMDBEQ0IwOEIgLyogQVZBc3NldFRyYWNrVXRpbGl0aWVzLmggKi87
IH07CisJCUNERUQxQzNDMjRDRDMwNTcwMDkzNEUxMiAvKiBWUDlVdGlsaXRpZXNDb2NvYS5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENkZFNUI4MjRC
Q0U2NDUwMDlGQ0RBNCAvKiBWUDlVdGlsaXRpZXNDb2NvYS5tbSAqLzsgfTsKKwkJQ0RFRjRGRDcx
N0U4NUM4RjAwQUVFMjRCIC8qIEdyaWRMZW5ndGguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERUY0RkQ2MTdFODVDOEYwMEFFRTI0QiAvKiBHcmlkTGVu
Z3RoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
Q0RFRkEyMjgxRTc2NjlFODAwMEFFOTlDIC8qIFBsYXRmb3JtQXVkaW9EYXRhLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREU2NjdBMTFFNEJCQTREMDBF
ODE1NEEgLyogUGxhdGZvcm1BdWRpb0RhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlDREYxMzUwODI0QzlGQTQ0MDA0MzJFMUUgLyogU291cmNl
QnVmZmVyUGFyc2VyV2ViTS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQ0Q4RjY2NzIyNEMwRjIwODAwMEM0MjFDIC8qIFNvdXJjZUJ1ZmZlclBhcnNlcldl
Yk0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
REYxMzUwOTI0QzlGQ0EzMDA0MzJFMUUgLyogU291cmNlQnVmZmVyUGFyc2VyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREVCM0Q3MzI0QzQxQTZFMDAx
RkJFRUYgLyogU291cmNlQnVmZmVyUGFyc2VyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RGMkIwMDQxODFGMDU5QzAwRjJCNDI0IC8qIE1lZGlh
RGVzY3JpcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IENERjJCMDAzMTgxRjA1OUMwMEYyQjQyNCAvKiBNZWRpYURlc2NyaXB0aW9uLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RGMkIwMTExODIw
NTQwNjAwRjJCNDI0IC8qIE1vY2tCb3guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENERjJCMDA3MTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrQm94LmggKi87
IH07CisJCUNERjJCMDEzMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNv
dXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RG
MkIwMDkxODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmggKi87
IH07CisJCUNERjJCMDE1MTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFTb3VyY2VQcml2YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREYyQjAw
QjE4MjA1NDA2MDBGMkI0MjQgLyogTW9ja01lZGlhU291cmNlUHJpdmF0ZS5oICovOyB9OworCQlD
REYyQjAxNzE4MjA1NDA3MDBGMkI0MjQgLyogTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERjJCMDBEMTgyMDU0
MDYwMEYyQjQyNCAvKiBNb2NrU291cmNlQnVmZmVyUHJpdmF0ZS5oICovOyB9OworCQlDREYyQjAx
OTE4MjA1NDA3MDBGMkI0MjQgLyogTW9ja1RyYWNrcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RGMkIwMEYxODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tU
cmFja3MuaCAqLzsgfTsKKwkJQ0RGNEI3MTIxRTAwODdBRTAwRTIzNUEyIC8qIExlZ2FjeUNETVNl
c3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
REUwMkU5MThCM0RGQzcwMENGN0ZGMSAvKiBMZWdhY3lDRE1TZXNzaW9uLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RGNEI3MTUxRTAwQjdFNTAw
RTIzNUEyIC8qIENETS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDREY0QjcxMzFFMDBCN0U1MDBFMjM1QTIgLyogQ0RNLmNwcCAqLzsgfTsKKwkJQ0RG
NEI3MTYxRTAwQjdFNTAwRTIzNUEyIC8qIENETS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RGNEI3MTQxRTAwQjdFNTAwRTIzNUEyIC8qIENETS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNERjRCNzE4
MUUwMUNCOTEwMEUyMzVBMiAvKiBNZWRpYUtleXNSZXN0cmljdGlvbnMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERjRCNzE3MUUwMUNCOTEwMEUyMzVB
MiAvKiBNZWRpYUtleXNSZXN0cmljdGlvbnMuaCAqLzsgfTsKKwkJQ0RGNEI3MUExRTAxRDNEMDAw
RTIzNUEyIC8qIE1lZGlhS2V5U2Vzc2lvblR5cGUuaWRsIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RGNEI3MTkxRTAxRDNEMDAwRTIzNUEyIC8qIE1lZGlh
S2V5U2Vzc2lvblR5cGUuaWRsICovOyB9OworCQlDREY0QjcxRTFFMDFFMTFBMDBFMjM1QTIgLyog
SlNNZWRpYUtleVNlc3Npb25UeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDREY0QjcxQzFFMDFFMTFBMDBFMjM1QTIgLyogSlNNZWRpYUtleVNlc3Np
b25UeXBlLmggKi87IH07CisJCUNERjRCNzIwMUUwM0JGNkYwMEUyMzVBMiAvKiBNb2NrQ0RNRmFj
dG9yeS5pZGwgaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
REY0QjcxRjFFMDNCRjZGMDBFMjM1QTIgLyogTW9ja0NETUZhY3RvcnkuaWRsICovOyB9OworCQlD
REY0QjcyNDFFMDNCRjgxMDBFMjM1QTIgLyogTW9ja0NETUZhY3RvcnkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERjRCNzIyMUUwM0JGODEwMEUyMzVB
MiAvKiBNb2NrQ0RNRmFjdG9yeS5oICovOyB9OworCQlDREY0QjcyODFFMDNDNTczMDBFMjM1QTIg
LyogTWVkaWFLZXlzUmVxdWlyZW1lbnQuaWRsIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQ0RGNEI3MjcxRTAzQzU3MzAwRTIzNUEyIC8qIE1lZGlhS2V5c1Jl
cXVpcmVtZW50LmlkbCAqLzsgfTsKKwkJQ0RGNEI3MkMxRTAzQzYzRTAwRTIzNUEyIC8qIEpTTWVk
aWFLZXlzUmVxdWlyZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENERjRCNzJBMUUwM0M2M0UwMEUyMzVBMiAvKiBKU01lZGlhS2V5c1JlcXVpcmVt
ZW50LmggKi87IH07CisJCUNERjRCNzMxMUUwM0QwMDcwMEUyMzVBMiAvKiBNb2NrQ0RNRmFjdG9y
eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREY0
QjcyMTFFMDNCRjgxMDBFMjM1QTIgLyogTW9ja0NETUZhY3RvcnkuY3BwICovOyB9OworCQlDREY0
QjczMjFFMDNEMDYwMDBFMjM1QTIgLyogSlNNb2NrQ0RNRmFjdG9yeS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREY0QjcyRDFFMDNDQTRBMDBFMjM1
QTIgLyogSlNNb2NrQ0RNRmFjdG9yeS5jcHAgKi87IH07CisJCUNERjY1Q0M4MTQ1QjFFNzUwMEM0
QzdBQSAvKiBNZWRpYUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENEMjdGNkU0MTQ1NzY3ODcwMDc4MjA3RCAvKiBNZWRpYUNvbnRyb2xs
ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
REY2NUNDQTE0NUI0NDg4MDBDNEM3QUEgLyogTWVkaWFDb250cm9sbGVySW50ZXJmYWNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREY2NUNDOTE0NUI0
M0E3MDBDNEM3QUEgLyogTWVkaWFDb250cm9sbGVySW50ZXJmYWNlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0RGNzQ4M0YxOEZFQkNFQzAwMDZF
Q0MwIC8qIEdyaWRQb3NpdGlvbnNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RGNzQ4M0QxOEZFQkNFQzAwMDZFQ0MwIC8qIEdyaWRQb3Np
dGlvbnNSZXNvbHZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUNERjc1NkEzMjE1QzI5RTkwMEVGQ0I1MCAvKiBKU01lZGlhS2V5RW5jcnlwdGlv
blNjaGVtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0RGNzU2QTEyMTVDMjlFOTAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1lLmgg
Ki87IH07CisJCUNERjk5NEZEMjRDMTVGRTMwMDJFQTA2MiAvKiBTb3VyY2VCdWZmZXJQYXJzZXJB
VkZPYmpDLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0RGOTk0RkIyNEMxMkE2QTAwMkVBMDYyIC8qIFNvdXJjZUJ1ZmZlclBhcnNlckFWRk9iakMubW0g
Ki87IH07CisJCUNERkMzNjA2MThDQTYxQzIwMDI2RTU2RiAvKiBSZW1vdGVDb21tYW5kTGlzdGVu
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENERkMz
NjA0MThDQTYxQzIwMDI2RTU2RiAvKiBSZW1vdGVDb21tYW5kTGlzdGVuZXIuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRTA1N0ZBNjEyMjA3MzEx
MDBBNDc2RDUgLyogRG9jdW1lbnRNYXJrZXJDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTA1N0ZBNDEyMjA3MzExMDBBNDc2RDUgLyog
RG9jdW1lbnRNYXJrZXJDb250cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0UwOEMzRDIxNTJCNTk5QTAwMjFCOEMyIC8qIEFsdGVybmF0
aXZlVGV4dENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENFMDhDM0QwMTUyQjU5OUEwMDIxQjhDMiAvKiBBbHRlcm5hdGl2ZVRleHRDb250
cm9sbGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoKTsgfTsgfTsKKwkJQ0UxODY2
NDUxRjcyRTVCNDAwQTBDQUI2IC8qIE1hcmtlZFRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMTg2NjQzMUY3MkU1QjQwMEEwQ0FCNiAvKiBNYXJr
ZWRUZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJQ0UxQTUwMUYyMkQ1MzUwOTAwQ0JDOTI3IC8qIERPTVRpbWVySG9sZGluZ1RhbmsuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFMUE1MDFEMjJENTM1
MDkwMENCQzkyNyAvKiBET01UaW1lckhvbGRpbmdUYW5rLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0UyMTIxNTgyNDBEQkVCOTAwNkVENDQzIC8q
IFRleHRQbGFjZWhvbGRlckVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENFMjEyMTUzMjQwREJEMzAwMDZFRDQ0MyAvKiBUZXh0UGxhY2Vob2xk
ZXJFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJQ0UyODQ5ODcxQ0EzNjBERjAwQjRBNTdGIC8qIENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZU5hbWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDRTI4NDk4NjFDQTM2MERGMDBCNEE1N0YgLyogQ29udGVudFNlY3VyaXR5UG9saWN5RGly
ZWN0aXZlTmFtZXMuaCAqLzsgfTsKKwkJQ0U0NTk0NkYyNDEyM0M5NjAwNzgwMTlGIC8qIEFsdGVy
bmF0aXZlVGV4dENvbnRleHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRTQ1OTQ2NDI0MTIxQTA1MDA3ODAxOUYgLyogQWx0ZXJuYXRp
dmVUZXh0Q29udGV4dENvbnRyb2xsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlDRTUxNjlFNzIxRjFCODQ3MDBFQTRGNzggLyogQ29sb3JJT1Mu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNTE2OUU1
MjFGMUI4NDcwMEVBNEY3OCAvKiBDb2xvcklPUy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUNFNUZBMjU1MjA5RTQ4QzUwMDUxRDcwMCAvKiBDb250
ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENFNUZBMjUzMjA5RTQ4QzUwMDUxRDcwMCAvKiBDb250ZW50U2VjdXJp
dHlQb2xpY3lDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlDRTZEQURGQTFDNTkxRTZBMDAzRjZBODggLyogQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDRTZEQURGODFDNTkxRTZBMDAzRjZBODggLyogQ29udGVudFNlY3VyaXR5UG9s
aWN5UmVzcG9uc2VIZWFkZXJzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJQ0U3OTlGOTgxQzZBNDZCQzAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0
eVBvbGljeVNvdXJjZUxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IENFNzk5Rjk2MUM2QTQ2QkMwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xp
Y3lTb3VyY2VMaXN0LmggKi87IH07CisJCUNFNzk5RjlDMUM2QTRCQ0QwMDk3QjUxOCAvKiBDb250
ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTc5OUY5QTFDNkE0QkNEMDA5N0I1MTggLyogQ29udGVu
dFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5oICovOyB9OworCQlDRTc5OUZBMDFDNkE0QzE2
MDA5N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTc5OUY5RTFDNkE0QzE2MDA5N0I1MTgg
LyogQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlLmggKi87IH07CisJCUNFNzk5RkE0MUM2QTUw
M0EwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFNzk5RkEyMUM2QTUwM0EwMDk3
QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuaCAqLzsgfTsKKwkJQ0U3OTlG
QTgxQzZBNTA1NzAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlzdERpcmVj
dGl2ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U3
OTlGQTYxQzZBNTA1NzAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlzdERp
cmVjdGl2ZS5oICovOyB9OworCQlDRTc5OUZBQzFDNkE1MDY2MDA5N0I1MTggLyogQ29udGVudFNl
Y3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U3OTlGQUExQzZBNTA2NjAwOTdCNTE4IC8qIENvbnRl
bnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaCAqLzsgfTsKKwkJQ0U3QTZDMjgy
MDg1MzdFMjAwRkEyQjQ2IC8qIFNhbWVTaXRlSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U3QTZDMjYyMDg1MzdFMjAwRkEyQjQ2IC8qIFNhbWVT
aXRlSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUNFN0IyREIzMTU4NkFCQUQwMDk4QjNGQSAvKiBBbHRlcm5hdGl2ZVRleHRVSUNvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFN0Iy
REFGMTU4NkFCQUQwMDk4QjNGQSAvKiBBbHRlcm5hdGl2ZVRleHRVSUNvbnRyb2xsZXIuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlDRTdCMkRCNTE1
ODZBQkFEMDA5OEIzRkEgLyogVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRTdCMkRCMTE1ODZBQkFEMDA5OEIz
RkEgLyogVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQ0U3RTE3ODMxQzgzQTQ5MTAwQUQwNkFGIC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeUhhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENFN0UxNzgyMUM4M0E0OTEwMEFEMDZBRiAvKiBDb250ZW50U2VjdXJp
dHlQb2xpY3lIYXNoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJQ0U4OEVFMjYyNDE0NDY3QjAwN0YyOUMyIC8qIFRleHRBbHRlcm5hdGl2ZVdpdGhS
YW5nZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENF
N0IyREIyMTU4NkFCQUQwMDk4QjNGQSAvKiBUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UubW0gKi87
IH07CisJCUNFQTI4NDY2MjE0MUU4NDkwMEU0MDdFOCAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeUlP
Uy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI2NjAx
RUJFMTRCM0I5QUQwMDEyQzBGRSAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5tbSAqLzsgfTsK
KwkJQ0VCQjhDMzMyMDc4NkRDQjAwMDM5NTQ3IC8qIEZldGNoSWRpb21zLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRUJCOEMzMTIwNzg2RENCMDAwMzk1
NDcgLyogRmV0Y2hJZGlvbXMuaCAqLzsgfTsKKwkJQ0VDQURGQzcxNTM3NzhGRjAwRTM3MDY4IC8q
IERpY3RhdGlvbkFsdGVybmF0aXZlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDRUNBREZDMzE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQWx0ZXJu
YXRpdmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlDRUNBREZDOTE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQ29tbWFuZC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0VDQURGQzUxNTM3NzhGRjAw
RTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuaCAqLzsgfTsKKwkJQ0VDQURGQ0UxNTM3NzkxRDAw
RTM3MDY4IC8qIFRleHRJbnNlcnRpb25CYXNlQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0VDQURGQ0MxNTM3NzkxRDAwRTM3MDY4IC8qIFRl
eHRJbnNlcnRpb25CYXNlQ29tbWFuZC5oICovOyB9OworCQlDRUNDRkMzQjE0MTk3M0Q1MDAyQTBB
QzEgLyogRGVjb2RlRXNjYXBlU2VxdWVuY2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRUNDRkMzQTE0MTk3M0Q1MDAyQTBBQzEgLyogRGVjb2RlRXNj
YXBlU2VxdWVuY2VzLmggKi87IH07CisJCUNFQ0RDOTNDMjFGMjk3MjkwMDk3NkJEMSAvKiBXZWJW
aWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzRjQyQjMxQzE4ODExOTFCMDAyNzhBQUMgLyogV2ViVmlk
ZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tICovOyB9OworCQlDRUNEQzkzRDIxRjI5NzMy
MDA5NzZCRDEgLyogV2ViRXZlbnQubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGRTBEODRFQTEwNDg0MzZFMDAxQTE3OUUgLyogV2ViRXZlbnQubW0gKi87
IH07CisJCUNFRDA2QUQxMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0
aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENFRDA2QUNGMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZl
bnQuaCAqLzsgfTsKKwkJQ0VEQTEyRDcxNTJDQTFDQjAwRDlFMDhEIC8qIEFsdGVybmF0aXZlVGV4
dENsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
Q0VEQTEyRDYxNTJDQTFDQjAwRDlFMDhEIC8qIEFsdGVybmF0aXZlVGV4dENsaWVudC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUNFRUZDRDdBMTlE
QjMxRjcwMDM4NzZENyAvKiBNZWRpYVJlc291cmNlTG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRUVGQ0Q3ODE5REIzMUY3MDAzODc2RDcgLyog
TWVkaWFSZXNvdXJjZUxvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUNFRUZDRDdDMTlEQjMzREMwMDM4NzZENyAvKiBQbGF0Zm9ybU1lZGlh
UmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENFRUZDRDdCMTlEQjMzREMwMDM4NzZENyAvKiBQbGF0Zm9ybU1lZGlhUmVzb3VyY2VM
b2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlDRUY0MThDRjExNzk2NzhDMDA5RDExMkMgLyogVmlld3BvcnRBcmd1bWVudHMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENFRjQxOENEMTE3OTY3OEMw
MDlEMTEyQyAvKiBWaWV3cG9ydEFyZ3VtZW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUQwMDBFQkEzMTFCREFGRDQwMEM0NzcyNiAvKiBGcmFt
ZUxvYWRlclN0YXRlTWFjaGluZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRDAwMEVCQTExMUJEQUZENDAwQzQ3NzI2IC8qIEZyYW1lTG9hZGVyU3RhdGVN
YWNoaW5lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJRDAwMEVEMjgxMUMxQjlDRDAwQzQ3NzI2IC8qIFN1YmZyYW1lTG9hZGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEMDAwRUQyNjExQzFCOUNEMDBD
NDc3MjYgLyogU3ViZnJhbWVMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlEMDFBMjdBRTEwQzlCRkQ4MDAwMjZBNDIgLyogU3BhY2VTcGxp
dFN0cmluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RDAxQTI3QUMxMEM5QkZEODAwMDI2QTQyIC8qIFNwYWNlU3BsaXRTdHJpbmcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlEMDVDRUQyQTBBNDBCQjJD
MDBDNUFGMzggLyogRm9ybWF0QmxvY2tDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEMDVDRUQyODBBNDBCQjJDMDBDNUFGMzggLyogRm9ybWF0
QmxvY2tDb21tYW5kLmggKi87IH07CisJCUQwNkMwRDhGMENGRDExNDYwMDY1RjQzRiAvKiBSZW1v
dmVGb3JtYXRDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBEMDZDMEQ4RDBDRkQxMTQ2MDA2NUY0M0YgLyogUmVtb3ZlRm9ybWF0Q29tbWFuZC5o
ICovOyB9OworCQlEMDdERUFCQTBBMzY1NTRBMDBDQTMwRjggLyogSW5zZXJ0TGlzdENvbW1hbmQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEQwN0RFQUI4
MEEzNjU1NEEwMENBMzBGOCAvKiBJbnNlcnRMaXN0Q29tbWFuZC5oICovOyB9OworCQlEMDg2RkU5
ODA5RDUzQUFCMDA1QkM3NEQgLyogVW5saW5rQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDA4NkZFOTYwOUQ1M0FBQjAwNUJDNzREIC8qIFVu
bGlua0NvbW1hbmQuaCAqLzsgfTsKKwkJRDA4QjAwRTQyMEEyODI1OTAwMDRCQzBBIC8qIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVBU1RDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBEMEEyMEQ1NDIwOTJBMEE2MDBFMEMyNTkgLyogV2ViR0xDb21wcmVzc2Vk
VGV4dHVyZUFTVEMuaCAqLzsgfTsKKwkJRDBBM0E3MzExNDA1QTM5ODAwRkI4RUQzIC8qIFJlc291
cmNlTG9hZGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRDBBM0E3MzAxNDA1QTM5ODAwRkI4RUQzIC8qIFJlc291cmNlTG9hZGVyT3B0aW9u
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUQw
QjA1NTY4MDlDNjcwMDEwMDMwN0U0MyAvKiBDcmVhdGVMaW5rQ29tbWFuZC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDBCMDU1NjYwOUM2NzAwMTAwMzA3
RTQzIC8qIENyZWF0ZUxpbmtDb21tYW5kLmggKi87IH07CisJCUQwQkM1NDQ5MTQ0M0FDNEEwMEUx
MDVEQSAvKiBDYWNoZWRTdHlsZVNoZWV0Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEMEJDNTQ0ODE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVk
U3R5bGVTaGVldENsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUQwQkQ0RjVEMTQwODg1MEYwMDY4MzlCNiAvKiBEaWN0YXRpb25Db21tYW5k
SU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEMEJE
NEY1QjE0MDg4NTBGMDA2ODM5QjYgLyogRGljdGF0aW9uQ29tbWFuZElPUy5oICovOyB9OworCQlE
MEVEQTc3NTE0M0UzMDNDMDAyOEUzODMgLyogQ2FjaGVkUmF3UmVzb3VyY2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEQwRURBNzczMTQzRTMwM0MwMDI4
RTM4MyAvKiBDYWNoZWRSYXdSZXNvdXJjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUQwRkYyQTVFMTFGOEM0NUEwMDdFNzRFMCAvKiBQaW5nTG9h
ZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEMEZG
MkE1QzExRjhDNDVBMDA3RTc0RTAgLyogUGluZ0xvYWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUQzMDI3NTRBMTJBNUZFODQwMDRCRDgyOCAv
KiBSZW5kZXJEZXRhaWxzTWFya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBEMzAyNzU0NjEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWlsc01h
cmtlci5oICovOyB9OworCQlEMzU5RDc4QTEyOUNBMjcxMDAwNkU1RDIgLyogSFRNTERldGFpbHNF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
MzU5RDc4NzEyOUNBMjcxMDAwNkU1RDIgLyogSFRNTERldGFpbHNFbGVtZW50LmggKi87IH07CisJ
CUQzNTlEOEJGMTI5Q0E1NUMwMDA2RTVEMiAvKiBKU0hUTUxEZXRhaWxzRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDM1OUQ4QkQxMjlDQTU1
QzAwMDZFNUQyIC8qIEpTSFRNTERldGFpbHNFbGVtZW50LmggKi87IH07CisJCUQzQTk0QTM5MTIy
REFCQUMwMEEzN0JCQyAvKiBNZWRpYVF1ZXJ5TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDNBOTRBMzIxMjJEQUJBQzAwQTM3QkJDIC8qIE1lZGlh
UXVlcnlMaXN0LmggKi87IH07CisJCUQzQTk0QTQ3MTIyREM0MEYwMEEzN0JCQyAvKiBKU01lZGlh
UXVlcnlMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBEM0E5NEE0MzEyMkRDNDBGMDBBMzdCQkMgLyogSlNNZWRpYVF1ZXJ5TGlzdC5oICovOyB9Owor
CQlEM0FBMTBGNDEyM0E5OEFBMDA5MjE1MkIgLyogTWVkaWFRdWVyeU1hdGNoZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEQzQUExMEYyMTIzQTk4QUEw
MDkyMTUyQiAvKiBNZWRpYVF1ZXJ5TWF0Y2hlci5oICovOyB9OworCQlEM0Q0RTk3MzEzMEM3Q0ZF
MDA3QkE1NDAgLyogSFRNTFN1bW1hcnlFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEM0Q0RTk3MTEzMEM3Q0ZFMDA3QkE1NDAgLyogSFRNTFN1
bW1hcnlFbGVtZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRDNGM0QzNjQxQTY5QjE5MDAwNTlGQzJCIC8qIEpTV2ViR0wyUmVuZGVyaW5nQ29u
dGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDNG
M0QzNjIxQTY5QjE5MDAwNTlGQzJCIC8qIEpTV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5oICovOyB9
OworCQlEM0YzRDM2QTFBNjlCN0I5MDA1OUZDMkIgLyogV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFz
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDNGM0Qz
NUYxQTY5QTUwNjAwNTlGQzJCIC8qIFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCAqLzsgfTsK
KwkJRDNGM0QzNkUxQTY5QjdFMDAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEQzRjNEMzVDMUE2
OUE1MDYwMDU5RkMyQiAvKiBXZWJHTDJSZW5kZXJpbmdDb250ZXh0LmggKi87IH07CisJCUQ2MTlB
MzA4MTQ0RTAwQkUwMDRCQzMwMiAvKiBDaGlsZExpc3RNdXRhdGlvblNjb3BlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBENjE5QTMwNjE0NEUwMEJFMDA0
QkMzMDIgLyogQ2hpbGRMaXN0TXV0YXRpb25TY29wZS5oICovOyB9OworCQlENjQ4OUQyNjE2NkZG
Q0YxMDA3QzAzMUIgLyogSlNIVE1MVGVtcGxhdGVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBENjQ4OUQyNDE2NkZGQ0YxMDA3QzAzMUIgLyog
SlNIVE1MVGVtcGxhdGVFbGVtZW50LmggKi87IH07CisJCUQ2NjgxN0ZCMTY2RkU2RDcwMEZBMDdC
NCAvKiBIVE1MVGVtcGxhdGVFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBENkVGQzBCQzE2NjZERjdBMDAzRDI5MUUgLyogSFRNTFRlbXBsYXRl
RWxlbWVudC5oICovOyB9OworCQlENkUyNzZCMDE0NjM3NDU1MDAxRDI4MEEgLyogTXV0YXRpb25P
YnNlcnZlclJlZ2lzdHJhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRDZFMjc2QUUxNDYzNzQ1NTAwMUQyODBBIC8qIE11dGF0aW9uT2JzZXJ2ZXJS
ZWdpc3RyYXRpb24uaCAqLzsgfTsKKwkJRDZFNTI4QTQxNDlBOTI2RDAwRUZFMUYzIC8qIE11dGF0
aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBENkU1MjhBMjE0OUE5MjZEMDBFRkUxRjMgLyogTXV0YXRpb25PYnNl
cnZlckludGVyZXN0R3JvdXAuaCAqLzsgfTsKKwkJRDcwQUQ2NTgxM0UxMzQyQjAwNUI1MEI0IC8q
IFJlbmRlckZyYWdtZW50Q29udGFpbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBENzBBRDY1NjEzRTEzNDJCMDA1QjUwQjQgLyogUmVuZGVyRnJhZ21l
bnRDb250YWluZXIuaCAqLzsgfTsKKwkJRDhCNjE1MkYxMDMyNDk1MTAwQzg1NTRBIC8qIENvb2tp
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRDhCNjE1
MkUxMDMyNDk1MTAwQzg1NTRBIC8qIENvb2tpZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCURBRUQyMDMxMTZGMjQ0NDgwMDcwRUMwRiAvKiBQYWdl
Q29uc29sZUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREFBQ0IzREExNkYyNDE2NDAwNjY2MTM1IC8qIFBhZ2VDb25zb2xlQ2xpZW50LmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJREIyM0MyQ0Mw
QTUwOEQyOTAwMjQ4OUVCIC8qIEluZGVudE91dGRlbnRDb21tYW5kLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBEQjIzQzJDQTBBNTA4RDI5MDAyNDg5RUIg
LyogSW5kZW50T3V0ZGVudENvbW1hbmQuaCAqLzsgfTsKKwkJREQwNUZFMEQwQjhCQTNDNjAwOUFD
REZFIC8qIFdlYkNvcmVPYmpDRXh0cmFzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERDA1RkUwQjBCOEJBM0M2MDA5QUNERkUgLyogV2ViQ29yZU9iakNF
eHRyYXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFtZXdvcmtz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERENzYzQkIxMDk5MkMyQzkwMDc0
MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovOyB9OworCQlERDdDREYyNTBBMjNDRjk4MDAwNjk5Mjgg
LyogQ1NTVW5rbm93blJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE4MEU2Q0NFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NVbmtub3duUnVsZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCURFNUY4NDE2
MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAxLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0IyMUZBMTg2NzYwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzAxLmNwcCAqLzsgfTsKKwkJREU1Rjg0MTcxRkExODZFOTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzMDIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREU1RjgzRUIxRkExODZBRDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
MDIuY3BwICovOyB9OworCQlERTVGODQxODFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTMwMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RTVGODNFOTFGQTE4NkFBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwMy5jcHAgKi87IH07CisJ
CURFNUY4NDE5MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA0LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0Q1MUZBMTg2OTQw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA0LmNwcCAqLzsgfTsKKwkJREU1Rjg0MUExRkExODZF
OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRDYxRkExODY5NTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzMDUuY3BwICovOyB9OworCQlERTVGODQxQjFGQTE4NkU5MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTMwNi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERTVGODNFRTFGQTE4NkIwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwNi5jcHAg
Ki87IH07CisJCURFNUY4NDFDMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA3LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0Q0
MUZBMTg2OTMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA3LmNwcCAqLzsgfTsKKwkJREU1Rjg0
MUQxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDguY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRjcxRkExODZCOTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzMDguY3BwICovOyB9OworCQlERTVGODQxRTFGQTE4NkU5MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTMwOS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODNERjFGQTE4NjlFMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTMwOS5jcHAgKi87IH07CisJCURFNUY4NDFGMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzEwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFNUY4M0M2MUZBMTg2ODcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEwLmNwcCAqLzsgfTsK
KwkJREU1Rjg0MjAxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTEuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRjMxRkExODZC
NTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTEuY3BwICovOyB9OworCQlERTVGODQyMTFGQTE4
NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxMi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNGODFGQTE4NkJBMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTMxMi5jcHAgKi87IH07CisJCURFNUY4NDIyMUZBMTg2RTkwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzEzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFNUY4M0QzMUZBMTg2OTIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEzLmNw
cCAqLzsgfTsKKwkJREU1Rjg0MjMxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTQu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjgz
RUYxRkExODZCMTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTQuY3BwICovOyB9OworCQlERTVG
ODQyNDFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxNS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNENzFGQTE4Njk2MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTMxNS5jcHAgKi87IH07CisJCURFNUY4NDI1MUZBMTg2RTkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzE2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0I5MUZBMTg2N0QwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzE2LmNwcCAqLzsgfTsKKwkJREU1Rjg0MjYxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzMTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1Rjg0MDUxRkExODZDNzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTcuY3BwICovOyB9
OworCQlERTVGODQyNzFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxOC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQwRjFGQTE4
NkQwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxOC5jcHAgKi87IH07CisJCURFNUY4NDI4MUZB
MTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE5LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0U1MUZBMTg2QTYwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzE5LmNwcCAqLzsgfTsKKwkJREU1Rjg0MjkxRkExODZFOTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzMjAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREU1RjgzRjYxRkExODZCODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjAu
Y3BwICovOyB9OworCQlERTVGODQyQTFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMy
MS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVG
ODNDNzFGQTE4Njg4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyMS5jcHAgKi87IH07CisJCURF
NUY4NDJCMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzIyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0JGMUZBMTg2ODEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzIyLmNwcCAqLzsgfTsKKwkJREU1Rjg0MkMxRkExODZFOTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRjExRkExODZCMzAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzMjMuY3BwICovOyB9OworCQlERTVGODQyRDFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTMyNC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERTVGODNDQTFGQTE4NjhBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyNC5jcHAgKi87
IH07CisJCURFNUY4NDJFMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI1LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0RFMUZB
MTg2OUQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI1LmNwcCAqLzsgfTsKKwkJREU1Rjg0MkYx
RkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjYuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0MEIxRkExODZDQzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzMjYuY3BwICovOyB9OworCQlERTVGODQzMDFGQTE4NkU5MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTMyNy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERTVGODQxMjFGQTE4NkQzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMy
Ny5jcHAgKi87IH07CisJCURFNUY4NDMxMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzI4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
NUY4M0ZEMUZBMTg2QkYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI4LmNwcCAqLzsgfTsKKwkJ
REU1Rjg0MzIxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjkuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQ0IxRkExODY4QjAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjkuY3BwICovOyB9OworCQlERTVGODQzMzFGQTE4NkU5
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzMC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNGQTFGQTE4NkJDMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTMzMC5jcHAgKi87IH07CisJCURFNUY4NDM0MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzMxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4M0Q4MUZBMTg2OTcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzMxLmNwcCAq
LzsgfTsKKwkJREU1Rjg0MzUxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzIuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQzEx
RkExODY4MzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzIuY3BwICovOyB9OworCQlERTVGODQz
NjFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzMy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNEOTFGQTE4Njk4MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTMzMy5jcHAgKi87IH07CisJCURFNUY4NDM3MUZBMTg2RTkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzM0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4M0JDMUZBMTg2N0YwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzM0LmNwcCAqLzsgfTsKKwkJREU1Rjg0MzgxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzMzUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REU1RjgzQjgxRkExODY3QzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzUuY3BwICovOyB9Owor
CQlERTVGODQzOTFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzNi5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNEQTFGQTE4Njk5
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzNi5jcHAgKi87IH07CisJCURFNUY4NDNBMUZBMTg2
RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0UwMUZBMTg2OUYwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzM3LmNwcCAqLzsgfTsKKwkJREU1Rjg0M0IxRkExODZFOTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzMzguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1RjgzREIxRkExODY5QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzguY3Bw
ICovOyB9OworCQlERTVGODQzQzFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzOS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNF
QzFGQTE4NkFFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzOS5jcHAgKi87IH07CisJCURFNUY4
NDNEMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQwLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDEwMUZBMTg2RDEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzQwLmNwcCAqLzsgfTsKKwkJREU1Rjg0M0UxRkExODZFOTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzNDEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0MDYxRkExODZDODAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzNDEuY3BwICovOyB9OworCQlERTVGODQzRjFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM0Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODNDRjFGQTE4NjhGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0Mi5jcHAgKi87IH07
CisJCURFNUY4NDQwMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQzLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDAxMUZBMTg2
QzMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQzLmNwcCAqLzsgfTsKKwkJREU1Rjg0NDExRkEx
ODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNDQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRjAxRkExODZCMjAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzNDQuY3BwICovOyB9OworCQlERTVGODQ0MjFGQTE4NkVBMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM0NS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERTVGODNGNDFGQTE4NkI2MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0NS5j
cHAgKi87IH07CisJCURFNUY4NDQzMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ2
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4
NDE0MUZBMTg2RDUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ2LmNwcCAqLzsgfTsKKwkJREU1
Rjg0NDQxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNDcuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRkYxRkExODZDMTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzNDcuY3BwICovOyB9OworCQlERTVGODQ0NTFGQTE4NkVBMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM0OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQwMDFGQTE4NkMyMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM0OC5jcHAgKi87IH07CisJCURFNUY4NDQ2MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzQ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFNUY4NDBEMUZBMTg2Q0UwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ5LmNwcCAqLzsg
fTsKKwkJREU1Rjg0NDcxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTAuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQzgxRkEx
ODY4OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTAuY3BwICovOyB9OworCQlERTVGODQ0ODFG
QTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1MS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQwNzFGQTE4NkM4MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM1MS5jcHAgKi87IH07CisJCURFNUY4NDQ5MUZBMTg2RUEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzUyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFNUY4M0MzMUZBMTg2ODUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzUy
LmNwcCAqLzsgfTsKKwkJREU1Rjg0NEExRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
NTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1
RjgzRTcxRkExODZBODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTMuY3BwICovOyB9OworCQlE
RTVGODQ0QjFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1NC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNDNTFGQTE4Njg2MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM1NC5jcHAgKi87IH07CisJCURFNUY4NDRDMUZBMTg2RUEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0IzMUZBMTg2NzcwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzU1LmNwcCAqLzsgfTsKKwkJREU1Rjg0NEQxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzNTYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREU1RjgzRkUxRkExODZDMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTYuY3BwICov
OyB9OworCQlERTVGODQ0RTFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1Ny5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNDOTFG
QTE4NjhBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1Ny5jcHAgKi87IH07CisJCURFNUY4NDRG
MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU4LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0Y1MUZBMTg2QjcwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzU4LmNwcCAqLzsgfTsKKwkJREU1Rjg0NTAxRkExODZFQTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzNTkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREU1RjgzREMxRkExODY5QjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
NTkuY3BwICovOyB9OworCQlERTVGODQ1MTFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM2MC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RTVGODNFQTFGQTE4NkFCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2MC5jcHAgKi87IH07CisJ
CURFNUY4NDUyMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYxLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0JFMUZBMTg2ODEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYxLmNwcCAqLzsgfTsKKwkJREU1Rjg0NTMxRkExODZF
QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQjUxRkExODY3OTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzNjIuY3BwICovOyB9OworCQlERTVGODQ1NDFGQTE4NkVBMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTM2My5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERTVGODNDQzFGQTE4NjhDMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2My5jcHAg
Ki87IH07CisJCURFNUY4NDU1MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDA4
MUZBMTg2QzkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY0LmNwcCAqLzsgfTsKKwkJREU1Rjg0
NTYxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjUuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzREQxRkExODY5QzAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzNjUuY3BwICovOyB9OworCQlERTVGODQ1NzFGQTE4NkVBMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTM2Ni5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODNDNDFGQTE4Njg2MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM2Ni5jcHAgKi87IH07CisJCURFNUY4NDU4MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzY3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFNUY4M0U4MUZBMTg2QTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY3LmNwcCAqLzsgfTsK
KwkJREU1Rjg0NTkxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjguY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRkMxRkExODZC
RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjguY3BwICovOyB9OworCQlERTVGODQ1QTFGQTE4
NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2OS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNFMTFGQTE4NkEwMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTM2OS5jcHAgKi87IH07CisJCURFNUY4NDVCMUZBMTg2RUEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzcwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFNUY4M0UyMUZBMTg2QTIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcwLmNw
cCAqLzsgfTsKKwkJREU1Rjg0NUMxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzEu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0
MDkxRkExODZDQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzEuY3BwICovOyB9OworCQlERTVG
ODQ1RDFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3Mi5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQxMTFGQTE4NkQyMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTM3Mi5jcHAgKi87IH07CisJCURFNUY4NDVFMUZBMTg2RUEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzczLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDBBMUZBMTg2Q0IwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzczLmNwcCAqLzsgfTsKKwkJREU1Rjg0NUYxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzNzQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1RjgzRDExRkExODY5MDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzQuY3BwICovOyB9
OworCQlERTVGODQ2MDFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3NS5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNCQjFGQTE4
NjdFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3NS5jcHAgKi87IH07CisJCURFNUY4NDYxMUZB
MTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc2LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0JBMUZBMTg2N0QwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzc2LmNwcCAqLzsgfTsKKwkJREU1Rjg0NjIxRkExODZFQTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzNzcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREU1RjgzQjYxRkExODY3QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzcu
Y3BwICovOyB9OworCQlERTVGODQ2MzFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3
OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVG
ODNCNDFGQTE4Njc4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3OC5jcHAgKi87IH07CisJCURF
NUY4NDY0MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc5LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDE1MUZBMTg2RDYwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzc5LmNwcCAqLzsgfTsKKwkJREU1Rjg0NjUxRkExODZFQTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQkQxRkExODY4MDAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzODAuY3BwICovOyB9OworCQlERTVGODQ2NjFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTM4MS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERTVGODNDRDFGQTE4NjhEMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4MS5jcHAgKi87
IH07CisJCURFNUY4NDY3MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzgyLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDAyMUZB
MTg2QzQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzgyLmNwcCAqLzsgfTsKKwkJREU1Rjg0Njgx
RkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODMuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRDIxRkExODY5MTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzODMuY3BwICovOyB9OworCQlERTVGODQ2OTFGQTE4NkVBMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTM4NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERTVGODNFMzFGQTE4NkEzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4
NC5jcHAgKi87IH07CisJCURFNUY4NDZBMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
Mzg1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
NUY4M0QwMUZBMTg2OEYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg1LmNwcCAqLzsgfTsKKwkJ
REU1Rjg0NkIxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODYuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQ0UxRkExODY4RTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODYuY3BwICovOyB9OworCQlERTVGODQ2QzFGQTE4NkVB
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4Ny5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODNFNDFGQTE4NkE0MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTM4Ny5jcHAgKi87IH07CisJCURFNUY4NDZEMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzg4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4NDAzMUZBMTg2QzUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg4LmNwcCAq
LzsgfTsKKwkJREU1Rjg0NkUxRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1RjgzRUQx
RkExODZBRjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODkuY3BwICovOyB9OworCQlERTVGODQ2
RjFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5MC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQxMzFGQTE4NkQ0MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTM5MC5jcHAgKi87IH07CisJCURFNUY4NDcwMUZBMTg2RUEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzkxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4M0MyMUZBMTg2ODQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzkxLmNwcCAqLzsgfTsKKwkJREU1Rjg0NzExRkExODZFQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzOTIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REU1RjgzQzAxRkExODY4MjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTIuY3BwICovOyB9Owor
CQlERTVGODQ3MjFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5My5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQwNDFGQTE4NkM2
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5My5jcHAgKi87IH07CisJCURFNUY4NDczMUZBMTg2
RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0Y5MUZBMTg2QkIwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzk0LmNwcCAqLzsgfTsKKwkJREU1Rjg0NzQxRkExODZFQTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzOTUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1RjgzRjIxRkExODZCNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTUuY3Bw
ICovOyB9OworCQlERTVGODQ3NTFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5Ni5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODQw
RTFGQTE4NkNGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5Ni5jcHAgKi87IH07CisJCURFNUY4
NDc2MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk3LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NDBDMUZBMTg2Q0QwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzk3LmNwcCAqLzsgfTsKKwkJREU1Rjg0NzcxRkExODZFQTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzOTguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1RjgzQjcxRkExODY3QjAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzOTguY3BwICovOyB9OworCQlERTVGODQ3ODFGQTE4NkVBMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM5OS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODNFNjFGQTE4NkE3MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5OS5jcHAgKi87IH07
CisJCURFNUY4NDc5MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAwLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4M0ZCMUZBMTg2
QkQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAwLmNwcCAqLzsgfTsKKwkJREU1Rjg1MDMxRkEx
QTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0RDAxRkExQTRBQzAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0MDEuY3BwICovOyB9OworCQlERTVGODUwNDFGQTFBNEY4MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQwMi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERTVGODRBMzFGQTFBNDgyMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQwMi5j
cHAgKi87IH07CisJCURFNUY4NTA1MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAz
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4
NEJGMUZBMUE0OUMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAzLmNwcCAqLzsgfTsKKwkJREU1
Rjg1MDYxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDQuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QjQxRkExQTQ5MTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0MDQuY3BwICovOyB9OworCQlERTVGODUwNzFGQTFBNEY4MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQwNS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRCRTFGQTFBNDlCMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTQwNS5jcHAgKi87IH07CisJCURFNUY4NTA4MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDA2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFNUY4NEJBMUZBMUE0OTcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA2LmNwcCAqLzsg
fTsKKwkJREU1Rjg1MDkxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDcuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QTExRkEx
QTQ4MDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDcuY3BwICovOyB9OworCQlERTVGODUwQTFG
QTFBNEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQwOC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBMDFGQTFBNDdGMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQwOC5jcHAgKi87IH07CisJCURFNUY4NTBCMUZBMUE0RjgwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDA5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFNUY4NDlGMUZBMUE0N0UwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA5
LmNwcCAqLzsgfTsKKwkJREU1Rjg1MEMxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
MTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1
Rjg0QzkxRkExQTRBNTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTAuY3BwICovOyB9OworCQlE
RTVGODUwRDFGQTFBNEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxMS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRDQTFGQTFBNEE2MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQxMS5jcHAgKi87IH07CisJCURFNUY4NTBFMUZBMUE0Rjgw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDEyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEMxMUZBMUE0OUUwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDEyLmNwcCAqLzsgfTsKKwkJREU1Rjg1MEYxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0MTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREU1Rjg0QjcxRkExQTQ5NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTMuY3BwICov
OyB9OworCQlERTVGODUxMDFGQTFBNEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRCODFG
QTFBNDk1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNC5jcHAgKi87IH07CisJCURFNUY4NTEx
MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE1LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEIxMUZBMUE0OEYwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDE1LmNwcCAqLzsgfTsKKwkJREU1Rjg1MTIxRkExQTRGODAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0MTYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREU1Rjg0QjkxRkExQTQ5NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
MTYuY3BwICovOyB9OworCQlERTVGODUxMzFGQTFBNEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTQxNy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RTVGODRCNTFGQTFBNDkzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNy5jcHAgKi87IH07CisJ
CURFNUY4NTE0MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE4LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEE3MUZBMUE0ODUw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE4LmNwcCAqLzsgfTsKKwkJREU1Rjg1MTUxRkExQTRG
ODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QjIxRkExQTQ5MDAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0MTkuY3BwICovOyB9OworCQlERTVGODUxNjFGQTFBNEY4MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTQyMC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERTVGODRBQjFGQTFBNDg5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyMC5jcHAg
Ki87IH07CisJCURFNUY4NTE3MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIxLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NENC
MUZBMUE0QTcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIxLmNwcCAqLzsgfTsKKwkJREU1Rjg1
MTgxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjIuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0Q0UxRkExQTRBQTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0MjIuY3BwICovOyB9OworCQlERTVGODUxOTFGQTFBNEY4MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQyMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODRDMzFGQTFBNDlGMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTQyMy5jcHAgKi87IH07CisJCURFNUY4NTFBMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDI0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFNUY4NEFDMUZBMUE0OEEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI0LmNwcCAqLzsgfTsK
KwkJREU1Rjg1MUIxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjUuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0Q0QxRkExQTRB
OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjUuY3BwICovOyB9OworCQlERTVGODUxQzFGQTFB
NEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyNi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRCQzFGQTFBNDk5MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTQyNi5jcHAgKi87IH07CisJCURFNUY4NTFEMUZBMUE0RjgwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDI3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFNUY4NEE1MUZBMUE0ODMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI3LmNw
cCAqLzsgfTsKKwkJREU1Rjg1MUUxRkExQTRGODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Mjgu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0
QzIxRkExQTQ5RjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjguY3BwICovOyB9OworCQlERTVG
ODUxRjFGQTFBNEY4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyOS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRDNzFGQTFBNEEzMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQyOS5jcHAgKi87IH07CisJCURFNUY4NTIwMUZBMUE0RjgwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDMwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEJCMUZBMUE0OTgwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDMwLmNwcCAqLzsgfTsKKwkJREU1Rjg1MjExRkExQTRGOTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2U0MzEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1Rjg0QUQxRkExQTQ4QjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzEuY3BwICovOyB9
OworCQlERTVGODUyMjFGQTFBNEY5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzMi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRDODFGQTFB
NEE0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzMi5jcHAgKi87IH07CisJCURFNUY4NTIzMUZB
MUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMzLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NEE5MUZBMUE0ODcwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDMzLmNwcCAqLzsgfTsKKwkJREU1Rjg1MjQxRkExQTRGOTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0MzQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREU1Rjg0QTIxRkExQTQ4MTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzQu
Y3BwICovOyB9OworCQlERTVGODUyNTFGQTFBNEY5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQz
NS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVG
ODRDNDFGQTFBNEEwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzNS5jcHAgKi87IH07CisJCURF
NUY4NTI2MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM2LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NENDMUZBMUE0QTgwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDM2LmNwcCAqLzsgfTsKKwkJREU1Rjg1MjcxRkExQTRGOTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QzUxRkExQTRBMTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2U0MzcuY3BwICovOyB9OworCQlERTVGODUyODFGQTFBNEY5MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQzOC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERTVGODRDNjFGQTFBNEEyMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzOC5jcHAgKi87
IH07CisJCURFNUY4NTI5MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM5LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NENGMUZB
MUE0QUIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM5LmNwcCAqLzsgfTsKKwkJREU1Rjg1MkEx
RkExQTRGOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDAuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QkQxRkExQTQ5QTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0NDAuY3BwICovOyB9OworCQlERTVGODUyQjFGQTFBNEY5MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ0MS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERTVGODRCNjFGQTFBNDkzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0
MS5jcHAgKi87IH07CisJCURFNUY4NTJDMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDQyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
NUY4NEMwMUZBMUE0OUQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQyLmNwcCAqLzsgfTsKKwkJ
REU1Rjg1MkQxRkExQTRGOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QTQxRkExQTQ4MzAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDMuY3BwICovOyB9OworCQlERTVGODUyRTFGQTFBNEY5
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBRjFGQTFBNDhEMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQ0NC5jcHAgKi87IH07CisJCURFNUY4NTJGMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDQ1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4NEFFMUZBMUE0OEMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQ1LmNwcCAq
LzsgfTsKKwkJREU1Rjg1MzAxRkExQTRGOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDYuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg0QTgx
RkExQTQ4NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDYuY3BwICovOyB9OworCQlERTVGODUz
MTFGQTFBNEY5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0Ny5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRBQTFGQTFBNDg4MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ0Ny5jcHAgKi87IH07CisJCURFNUY4NTMyMUZBMUE0RjkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDQ4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4NEE2MUZBMUE0ODQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDQ4LmNwcCAqLzsgfTsKKwkJREU1Rjg1MzMxRkExQTRGOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NDkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REU1Rjg0QjAxRkExQTQ4RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDkuY3BwICovOyB9Owor
CQlERTVGODUzNDFGQTFBNEY5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1MC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODRCMzFGQTFBNDkx
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1MC5jcHAgKi87IH07CisJCURFNUY4NTZDMUZBMUFC
RjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNC1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTQ5MUZBMUFCQkQwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1NkQxRkExQUJGMzAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U1LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1Rjg1NjUxRkExQUJENjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1LW1tLm1t
ICovOyB9OworCQlERTVGODU2RTFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTYtbW0u
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU2
QjFGQTFBQkRCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTYtbW0ubW0gKi87IH07CisJCURFNUY4
NTZGMUZBMUFCRjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNy1tbS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTVGMUZBMUFCRDEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNy1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1NzAxRkExQUJGMzAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U4LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1M0QxRkExQUJCMjAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U4LW1tLm1tICovOyB9OworCQlERTVGODU3MTFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTktbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODU1NDFGQTFBQkM3MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTktbW0ubW0gKi87IH07
CisJCURFNUY4NTcyMUZBMUFCRjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMTAtbW0ubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU2MzFGQTFB
QkQ1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTEwLW1tLm1tICovOyB9OworCQlERTVGODU3MzFG
QTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTExLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NjExRkExQUJEMzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UxMS1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1NzQxRkExQUJGMzAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UxMi1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4NTY0MUZBMUFCRDUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MTItbW0ubW0gKi87IH07CisJCURFNUY4NTc1MUZBMUFCRjMwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMTMtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODU2QTFGQTFBQkRCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTEzLW1tLm1tICovOyB9
OworCQlERTVGODU3NjFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTE0LW1tLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NEUxRkEx
QUJDMjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxNC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1Nzcx
RkExQUJGMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxNS1tbS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTNFMUZBMUFCQjMwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMTUtbW0ubW0gKi87IH07CisJCURFNUY4NTc4MUZBMUFCRjMwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMTYtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODU1RTFGQTFBQkQwMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTE2LW1tLm1tICovOyB9OworCQlERTVGODU3OTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTE3LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1Rjg1NEExRkExQUJCRTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxNy1tbS5tbSAqLzsg
fTsKKwkJREU1Rjg1N0ExRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxOC1tbS5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTUwMUZB
MUFCQzMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMTgtbW0ubW0gKi87IH07CisJCURFNUY4NTdC
MUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMTktbW0ubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU1MzFGQTFBQkM2MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTE5LW1tLm1tICovOyB9OworCQlERTVGODU3QzFGQTFBQkY0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTIwLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NTIxRkExQUJDNTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UyMC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1N0QxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UyMS1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFNUY4NTVBMUZBMUFCQ0QwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjEtbW0ubW0gKi87
IH07CisJCURFNUY4NTdFMUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjItbW0ubW0g
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU0RDFG
QTFBQkMxMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIyLW1tLm1tICovOyB9OworCQlERTVGODU3
RjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIzLW1tLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NDExRkExQUJCNjAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UyMy1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1ODAxRkExQUJGNDAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UyNC1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTQ2MUZBMUFCQkIwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMjQtbW0ubW0gKi87IH07CisJCURFNUY4NTgxMUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMjUtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERTVGODU0NzFGQTFBQkJCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI1LW1tLm1tICov
OyB9OworCQlERTVGODU4MjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI2LW1tLm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NUQx
RkExQUJDRjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyNi1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1
ODMxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyNy1tbS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTY5MUZBMUFCREEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMjctbW0ubW0gKi87IH07CisJCURFNUY4NTg0MUZBMUFCRjQwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMjgtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODUzRjFGQTFBQkI0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTI4LW1tLm1tICovOyB9OworCQlERTVGODU4NTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTI5LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREU1Rjg1NjgxRkExQUJEOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyOS1tbS5tbSAq
LzsgfTsKKwkJREU1Rjg1ODYxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMC1tbS5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTQy
MUZBMUFCQjcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAtbW0ubW0gKi87IH07CisJCURFNUY4
NTg3MUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEtbW0ubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU1MTFGQTFBQkM0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTMxLW1tLm1tICovOyB9OworCQlERTVGODU4ODFGQTFBQkY0MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTMyLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NjAxRkExQUJEMjAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzMi1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1ODkxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzMy1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4NTVCMUZBMUFCQ0UwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzMtbW0ubW0g
Ki87IH07CisJCURFNUY4NThBMUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQtbW0u
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU1
NzFGQTFBQkNBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0LW1tLm1tICovOyB9OworCQlERTVG
ODU4QjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1LW1tLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NDAxRkExQUJCNTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzNS1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1OEMxRkExQUJGNDAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNi1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTU1MUZBMUFCQzgwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzYtbW0ubW0gKi87IH07CisJCURFNUY4NThEMUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzctbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERTVGODU0NTFGQTFBQkJBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3LW1tLm1t
ICovOyB9OworCQlERTVGODU4RTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4LW1t
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1
NUMxRkExQUJDRTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOC1tbS5tbSAqLzsgfTsKKwkJREU1
Rjg1OEYxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOS1tbS5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTU5MUZBMUFCQ0MwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzktbW0ubW0gKi87IH07CisJCURFNUY4NTkwMUZBMUFCRjQw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU1NjFGQTFBQkM5MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQwLW1tLm1tICovOyB9OworCQlERTVGODU5MTFGQTFBQkY0MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTQxLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1Rjg1NjYxRkExQUJENzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MS1tbS5t
bSAqLzsgfTsKKwkJREU1Rjg1OTIxRkExQUJGNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Mi1t
bS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4
NTRGMUZBMUFCQzMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDItbW0ubW0gKi87IH07CisJCURF
NUY4NTkzMUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMtbW0ubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODU0ODFGQTFBQkJDMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQzLW1tLm1tICovOyB9OworCQlERTVGODU5NDFGQTFBQkY0
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NDMxRkExQUJCODAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0NC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1OTUxRkExQUJGNDAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NS1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFNUY4NTU4MUZBMUFCQ0IwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUtbW0u
bW0gKi87IH07CisJCURFNUY4NTk2MUZBMUFCRjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYt
bW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVG
ODU0NDFGQTFBQkI5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2LW1tLm1tICovOyB9OworCQlE
RTVGODU5NzFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3LW1tLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1NjIxRkExQUJENDAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Ny1tbS5tbSAqLzsgfTsKKwkJREU1Rjg1OTgxRkExQUJG
NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0OC1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NTY3MUZBMUFCRDgwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDgtbW0ubW0gKi87IH07CisJCURFNUY4NTk5MUZBMUFCRjQwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDktbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERTVGODU0QjFGQTFBQkJGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ5LW1t
Lm1tICovOyB9OworCQlERTVGODU5QTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUw
LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1
Rjg1NEMxRkExQUJDMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1MC1tbS5tbSAqLzsgfTsKKwkJ
REU1Rjg1RjIxRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTEuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QkIxRkEyMzgzOTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTEuY3BwICovOyB9OworCQlERTVGODVGMzFGQTIzODZB
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDMjFGQTIzODNGMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQ1Mi5jcHAgKi87IH07CisJCURFNUY4NUY0MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDUzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFNUY4NUJEMUZBMjM4M0EwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUzLmNwcCAq
LzsgfTsKKwkJREU1Rjg1RjUxRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1Qzgx
RkEyMzg0NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTQuY3BwICovOyB9OworCQlERTVGODVG
NjFGQTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1NS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDNzFGQTIzODQ1MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ1NS5jcHAgKi87IH07CisJCURFNUY4NUY3MUZBMjM4NkEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDU2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4NUM1MUZBMjM4NDMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDU2LmNwcCAqLzsgfTsKKwkJREU1Rjg1RjgxRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REU1Rjg1QkUxRkEyMzgzQjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTcuY3BwICovOyB9Owor
CQlERTVGODVGOTFGQTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1OC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVCODFGQTIzODM2
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1OC5jcHAgKi87IH07CisJCURFNUY4NUZBMUZBMjM4
NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUQwMUZBMjM4NTIwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDU5LmNwcCAqLzsgfTsKKwkJREU1Rjg1RkIxRkEyMzg2QTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NjAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREU1Rjg1QzAxRkEyMzgzRDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NjAuY3Bw
ICovOyB9OworCQlERTVGODVGQzFGQTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2MS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVD
QzFGQTIzODRDMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2MS5jcHAgKi87IH07CisJCURFNUY4
NUZEMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYyLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUJDMUZBMjM4M0EwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDYyLmNwcCAqLzsgfTsKKwkJREU1Rjg1RkUxRkEyMzg2QTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0NjMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QzMxRkEyMzg0MDAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NjMuY3BwICovOyB9OworCQlERTVGODVGRjFGQTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTQ2NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODVCOTFGQTIzODM3MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2NC5jcHAgKi87IH07
CisJCURFNUY4NjAwMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY1LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUJGMUZBMjM4
M0MwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY1LmNwcCAqLzsgfTsKKwkJREU1Rjg2MDExRkEy
Mzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NjYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QkExRkEyMzgzODAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NjYuY3BwICovOyB9OworCQlERTVGODYwMjFGQTIzODZBMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQ2Ny5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERTVGODVDQjFGQTIzODRCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2Ny5j
cHAgKi87IH07CisJCURFNUY4NjAzMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY4
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4
NUI2MUZBMjM4MzUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY4LmNwcCAqLzsgfTsKKwkJREU1
Rjg2MDQxRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NjkuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QjcxRkEyMzgzNTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0NjkuY3BwICovOyB9OworCQlERTVGODYwNTFGQTIzODZBMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3MC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDMTFGQTIzODNFMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTQ3MC5jcHAgKi87IH07CisJCURFNUY4NjA2MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDcxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFNUY4NUM0MUZBMjM4NDIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDcxLmNwcCAqLzsg
fTsKKwkJREU1Rjg2MDcxRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg1QzkxRkEy
Mzg0ODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzIuY3BwICovOyB9OworCQlERTVGODYwODFG
QTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3My5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDQTFGQTIzODRBMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQ3My5jcHAgKi87IH07CisJCURFNUY4NjA5MUZBMjM4NkEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDc0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFNUY4NUNEMUZBMjM4NEQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc0
LmNwcCAqLzsgfTsKKwkJREU1Rjg2MEExRkEyMzg2QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
NzUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1
Rjg1Q0UxRkEyMzg0RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzUuY3BwICovOyB9OworCQlE
RTVGODYwQjFGQTIzODZBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3Ni5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVEMTFGQTIzODU0MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3Ni5jcHAgKi87IH07CisJCURFNUY4NjBDMUZBMjM4NkEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUM2MUZBMjM4NDQwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDc3LmNwcCAqLzsgfTsKKwkJREU1Rjg2MEQxRkEyMzg2QjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0NzguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREU1Rjg1RDIxRkEyMzg1NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzguY3BwICov
OyB9OworCQlERTVGODYwRTFGQTIzODZCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3OS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODVDRjFG
QTIzODUwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3OS5jcHAgKi87IH07CisJCURFNUY4NjBG
MUZBMjM4NkIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDgwLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NUQzMUZBMjM4NTkwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDgwLmNwcCAqLzsgfTsKKwkJREU1Rjg2MTExRkEyMzlEQTAwNkRCNjNB
IC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTNFMjlFNUMxNjdBOEExOTAwNTg2RDNEIC8qIEludGVy
bmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwICovOyB9OworCQlERTVGODYxMjFGQTIzOUU3MDA2REI2
M0EgLyogSlNHQ09ic2VydmF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDUxNzE0RUFFMUNGNjY1NEEwMDQ3MjNDNCAvKiBKU0dDT2JzZXJ2YXRp
b24uY3BwICovOyB9OworCQlERTVGODYxRDFGQTI4MTVCMDA2REI2M0EgLyogV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBQTQ3OEE3RTE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0
eU9iamVjdFdyYXBwZXJNYWMubW0gKi87IH07CisJCURFNUY4NjFFMUZBMjgxRkQwMDZEQjYzQSAv
KiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOUE4MTI0NjBGQkI5Q0E5MDA1MTAyOTMgLyog
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tICovOyB9OworCQlERTVGODY1MDFG
QTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUxLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg2MzYxRkEyQUYwNDAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U1MS1tbS5tbSAqLzsgfTsKKwkJREU1Rjg2NTExRkEyQUYyNDAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U1Mi1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFNUY4NjM3MUZBMkFGMDUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NTItbW0ubW0gKi87IH07CisJCURFNUY4NjUyMUZBMkFGMjQwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNTMtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERTVGODYzNTFGQTJBRjAzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUzLW1tLm1tICovOyB9
OworCQlERTVGODY1MzFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU0LW1tLm1tIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREU1Rjg2MzMxRkEy
QUYwMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1NC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg2NTQx
RkEyQUYyNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1NS1tbS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NjNCMUZBMkFGMDgwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNTUtbW0ubW0gKi87IH07CisJCURFNUY4NjU1MUZBMkFGMjQwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNTYtbW0ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERTVGODYzNDFGQTJBRjAxMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTU2LW1tLm1tICovOyB9OworCQlERTVGODY1NjFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTU3LW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREU1Rjg2MzgxRkEyQUYwNjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1Ny1tbS5tbSAqLzsg
fTsKKwkJREU1Rjg2NTcxRkEyQUYyNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1OC1tbS5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFNUY4NjM5MUZB
MkFGMDcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTgtbW0ubW0gKi87IH07CisJCURFNUY4NjU4
MUZBMkFGMjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTktbW0ubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERTVGODYzMjFGQTJBRUZGMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTU5LW1tLm1tICovOyB9OworCQlERTVGODY1OTFGQTJBRjI0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTYwLW1tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREU1Rjg2M0ExRkEyQUYwNzAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U2MC1tbS5tbSAqLzsgfTsKKwkJREU1Rjg2NTkxRkEyQUYyNDAwNkRCNjNCIC8qIFVuaWZpZWRT
b3VyY2U2MS1tbS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFNUY4NjNBMUZBMkFGMDcwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNjEtbW0ubW0gKi87
IH07CisJCURFNzcxMDg2MUZBMkYwRDYwMDQ2MDAxNiAvKiBXZWJBcmNoaXZlRHVtcFN1cHBvcnQu
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTc2M0Yz
QzFFMjA1MjM0MDAxRDU4REUgLyogV2ViQXJjaGl2ZUR1bXBTdXBwb3J0Lm1tICovOyB9OworCQlE
RUNBN0Q5MzFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzMS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q2RDFGOUU2MUNGMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTEzMS5jcHAgKi87IH07CisJCURFQ0E3RDk0MUY5RTY3QjUw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTMyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDdFMUY5RTYxRTMwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTMyLmNwcCAqLzsgfTsKKwkJREVDQTdEOTUxRjlFNjdCNTAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UxMzMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREVDQTdEODAxRjlFNjFFNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzMuY3BwICov
OyB9OworCQlERUNBN0Q5NjFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q4RTFG
OUU2MUY2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNC5jcHAgKi87IH07CisJCURFQ0E3RDk3
MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM1LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDgxMUY5RTYxRTYwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTM1LmNwcCAqLzsgfTsKKwkJREVDQTdEOTgxRjlFNjdCNTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxMzYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREVDQTdEOEExRjlFNjFGMTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
MzYuY3BwICovOyB9OworCQlERUNBN0Q5OTFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTEzNy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RUNBN0Q3QzFGOUU2MUUxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNy5jcHAgKi87IH07CisJ
CURFQ0E3RDlBMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM4LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDdCMUY5RTYxRTAw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM4LmNwcCAqLzsgfTsKKwkJREVDQTdEOUIxRjlFNjdC
NTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdENzUxRjlFNjFEOTAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UxMzkuY3BwICovOyB9OworCQlERUNBN0Q5QzFGOUU2N0I1MDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTE0MC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERUNBN0Q4MjFGOUU2MUU4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0MC5jcHAg
Ki87IH07CisJCURFQ0E3RDlEMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQxLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDhC
MUY5RTYxRjMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQxLmNwcCAqLzsgfTsKKwkJREVDQTdE
OUUxRjlFNjdCNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDIuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEODUxRjlFNjFFQjAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxNDIuY3BwICovOyB9OworCQlERUNBN0Q5RjFGOUU2N0I1MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTE0My5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q4QzFGOUU2MUY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTE0My5jcHAgKi87IH07CisJCURFQ0E3REEwMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTQ0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFQ0E3RDZBMUY5RTYxQ0IwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ0LmNwcCAqLzsgfTsK
KwkJREVDQTdEQTExRjlFNjdCNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDUuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEODMxRjlFNjFF
OTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDUuY3BwICovOyB9OworCQlERUNBN0RBMjFGOUU2
N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0Ni5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q3MjFGOUU2MUQ1MDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTE0Ni5jcHAgKi87IH07CisJCURFQ0E3REEzMUY5RTY3QjUwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTQ3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFQ0E3RDhEMUY5RTYxRjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ3LmNw
cCAqLzsgfTsKKwkJREVDQTdEQTQxRjlFNjdCNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDgu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdE
NkIxRjlFNjFDQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDguY3BwICovOyB9OworCQlERUNB
N0RBNTFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0OS5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q3MzFGOUU2MUQ2MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTE0OS5jcHAgKi87IH07CisJCURFQ0E3REE2MUY5RTY3QjUwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTUwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDg0MUY5RTYxRUEwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTUwLmNwcCAqLzsgfTsKKwkJREVDQTdEQTcxRjlFNjdCNTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UxNTEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREVDQTdEOTAxRjlFNjFGODAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTEuY3BwICovOyB9
OworCQlERUNBN0RBODFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1Mi5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q3NzFGOUU2
MURCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1Mi5jcHAgKi87IH07CisJCURFQ0E3REE5MUY5
RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTUzLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDZGMUY5RTYxRDIwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTUzLmNwcCAqLzsgfTsKKwkJREVDQTdEQUExRjlFNjdCNTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UxNTQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREVDQTdEODYxRjlFNjFFQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTQu
Y3BwICovOyB9OworCQlERUNBN0RBQjFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1
NS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNB
N0Q3OTFGOUU2MUREMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1NS5jcHAgKi87IH07CisJCURF
Q0E3REFDMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU2LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDdGMUY5RTYxRTQwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTU2LmNwcCAqLzsgfTsKKwkJREVDQTdEQUQxRjlFNjdCNTAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdENzQxRjlFNjFENzAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UxNTcuY3BwICovOyB9OworCQlERUNBN0RBRTFGOUU2N0I1MDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTE1OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERUNBN0Q3NjFGOUU2MURBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1OC5jcHAgKi87
IH07CisJCURFQ0E3REFGMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU5LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RDZDMUY5
RTYxQ0UwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU5LmNwcCAqLzsgfTsKKwkJREVDQTdEQjAx
RjlFNjdCNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjAuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEODcxRjlFNjFFRTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UxNjAuY3BwICovOyB9OworCQlERUNBN0RCMTFGOUU2N0I2MDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTE2MS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERUNBN0Q4ODFGOUU2MUVGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE2
MS5jcHAgKi87IH07CisJCURFQ0E3REIyMUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTYyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
Q0E3RDg5MUY5RTYxRjAwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTYyLmNwcCAqLzsgfTsKKwkJ
REVDQTdEQjMxRjlFNjdCNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdENzExRjlFNjFENDAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjMuY3BwICovOyB9OworCQlERUNBN0RCNDFGOUU2N0I2
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE2NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q3QTFGOUU2MURFMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTE2NC5jcHAgKi87IH07CisJCURFQ0E3REI1MUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTY1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFQ0E3RDdEMUY5RTYxRTIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTY1LmNwcCAq
LzsgfTsKKwkJREVDQTdEQjYxRjlFNjdCNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjYuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEOEYx
RjlFNjFGNzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjYuY3BwICovOyB9OworCQlERUNBN0RC
NzFGOUU2N0I2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE2Ny5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q3MDFGOUU2MUQzMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTE2Ny5jcHAgKi87IH07CisJCURFQ0E3REI4MUY5RTY3QjYwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTY4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFQ0E3RDc4MUY5RTYxREMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTY4LmNwcCAqLzsgfTsKKwkJREVDQTdEQjkxRjlFNjdCNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UxNjkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REVDQTdENkUxRjlFNjFEMDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjkuY3BwICovOyB9Owor
CQlERUNBN0RCQTFGOUU2N0I2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3MC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Q5MTFGOUU2MUY5
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3MC5jcHAgKi87IH07CisJCURFQ0E3REZCMUY5RUIz
NjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REY2MUY5RUIzNEUwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTcxLmNwcCAqLzsgfTsKKwkJREVDQTdERkMxRjlFQjM2NDAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UxNzIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREVDQTdERjIxRjlFQjM0QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNzIuY3Bw
ICovOyB9OworCQlERUNBN0RGRDFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3My5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RF
ODFGOUVCMzNFMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3My5jcHAgKi87IH07CisJCURFQ0E3
REZFMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc0LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REVDMUY5RUIzNDIwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTc0LmNwcCAqLzsgfTsKKwkJREVDQTdERkYxRjlFQjM2NDAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UxNzUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREVDQTdERTYxRjlFQjMzQjAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UxNzUuY3BwICovOyB9OworCQlERUNBN0UwMDFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTE3Ni5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERUNBN0RFRTFGOUVCMzQ1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3Ni5jcHAgKi87IH07
CisJCURFQ0E3RTAxMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc3LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REU1MUY5RUIz
M0EwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc3LmNwcCAqLzsgfTsKKwkJREVDQTdFMDIxRjlF
QjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNzguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdERkExRjlFQjM1MzAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UxNzguY3BwICovOyB9OworCQlERUNBN0UwMzFGOUVCMzY0MDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTE3OS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERUNBN0RERDFGOUVCMzJGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3OS5j
cHAgKi87IH07CisJCURFQ0E3RTA0MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgw
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3
REVGMUY5RUIzNDYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgwLmNwcCAqLzsgfTsKKwkJREVD
QTdFMDUxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODEuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdERTkxRjlFQjMzRjAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UxODEuY3BwICovOyB9OworCQlERUNBN0UwNjFGOUVCMzY0MDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTE4Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RENzFGOUVCMzI3MDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTE4Mi5jcHAgKi87IH07CisJCURFQ0E3RTA3MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTgzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFQ0E3REQ5MUY5RUIzMjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgzLmNwcCAqLzsg
fTsKKwkJREVDQTdFMDgxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEREUxRjlF
QjMzMTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODQuY3BwICovOyB9OworCQlERUNBN0UwOTFG
OUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4NS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RFMzFGOUVCMzM3MDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTE4NS5jcHAgKi87IH07CisJCURFQ0E3RTBBMUY5RUIzNjQwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTg2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFQ0E3REYwMUY5RUIzNDcwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg2
LmNwcCAqLzsgfTsKKwkJREVDQTdFMEIxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
ODcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVD
QTdERjcxRjlFQjM0RjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODcuY3BwICovOyB9OworCQlE
RUNBN0UwQzFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4OC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RENTFGOUVCMzI0MDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTE4OC5jcHAgKi87IH07CisJCURFQ0E3RTBEMUY5RUIzNjQw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REVEMUY5RUIzNDQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTg5LmNwcCAqLzsgfTsKKwkJREVDQTdFMEUxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UxOTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREVDQTdERjgxRjlFQjM1MTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTAuY3BwICov
OyB9OworCQlERUNBN0UwRjFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5MS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RFMjFG
OUVCMzM2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5MS5jcHAgKi87IH07CisJCURFQ0E3RTEw
MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkyLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RERDMUY5RUIzMkUwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTkyLmNwcCAqLzsgfTsKKwkJREVDQTdFMTExRjlFQjM2NDAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxOTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREVDQTdERUExRjlFQjM0MDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
OTMuY3BwICovOyB9OworCQlERUNBN0UxMjFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTE5NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RUNBN0RGMTFGOUVCMzQ4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5NC5jcHAgKi87IH07CisJ
CURFQ0E3RTEzMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk1LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REVCMUY5RUIzNDEw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk1LmNwcCAqLzsgfTsKKwkJREVDQTdFMTQxRjlFQjM2
NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdERDgxRjlFQjMyODAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UxOTYuY3BwICovOyB9OworCQlERUNBN0UxNTFGOUVCMzY0MDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTE5Ny5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERUNBN0RENDFGOUVCMzIzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5Ny5jcHAg
Ki87IH07CisJCURFQ0E3RTE2MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk4LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REUx
MUY5RUIzMzUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk4LmNwcCAqLzsgfTsKKwkJREVDQTdF
MTcxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTkuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdERjkxRjlFQjM1MjAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxOTkuY3BwICovOyB9OworCQlERUNBN0UxODFGOUVCMzY0MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTIwMC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RGMzFGOUVCMzRCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTIwMC5jcHAgKi87IH07CisJCURFQ0E3RTE5MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjAxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFQ0E3REY0MUY5RUIzNEMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjAxLmNwcCAqLzsgfTsK
KwkJREVDQTdFMUExRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdEREYxRjlFQjMz
MjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDIuY3BwICovOyB9OworCQlERUNBN0UxQjFGOUVC
MzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RFNzFGOUVCMzNDMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTIwMy5jcHAgKi87IH07CisJCURFQ0E3RTFDMUY5RUIzNjQwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjA0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFQ0E3REU0MUY5RUIzMzkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA0LmNw
cCAqLzsgfTsKKwkJREVDQTdFMUQxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdE
RjUxRjlFQjM0RDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDUuY3BwICovOyB9OworCQlERUNB
N0UxRTFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwNi5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0RENjFGOUVCMzI1MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTIwNi5jcHAgKi87IH07CisJCURFQ0E3RTFGMUY5RUIzNjQwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjA3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3REUwMUY5RUIzMzMwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjA3LmNwcCAqLzsgfTsKKwkJREVDQTdFMjAxRjlFQjM2NDAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyMDguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREVDQTdEREExRjlFQjMyQjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDguY3BwICovOyB9
OworCQlERUNBN0UyMTFGOUVCMzY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwOS5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0REMzFGOUVC
MzIxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwOS5jcHAgKi87IH07CisJCURFQ0E3RTIyMUY5
RUIzNjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjEwLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RERCMUY5RUIzMkMwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjEwLmNwcCAqLzsgfTsKKwkJREVDQTdFNEUxRjlFQkQ4MzAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyMTEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREVDQTdFM0UxRjlFQkQ0MTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMTEu
Y3BwICovOyB9OworCQlERUNBN0U0RjFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIx
Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNB
N0UzODFGOUVCRDNCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIxMi5jcHAgKi87IH07CisJCURF
Q0E3RTUwMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjEzLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RTRCMUY5RUJENEUwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjEzLmNwcCAqLzsgfTsKKwkJREVDQTdFNTExRjlFQkQ4MzAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMTQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFNDAxRjlFQkQ0MzAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyMTQuY3BwICovOyB9OworCQlERUNBN0U1MjFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTIxNS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERUNBN0U0NDFGOUVCRDQ3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIxNS5jcHAgKi87
IH07CisJCURFQ0E3RTUzMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE2LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RTM5MUY5
RUJEM0MwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE2LmNwcCAqLzsgfTsKKwkJREVDQTdFNTQx
RjlFQkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMTcuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFNDUxRjlFQkQ0ODAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyMTcuY3BwICovOyB9OworCQlERUNBN0U1NTFGOUVCRDgzMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTIxOC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERUNBN0U0MzFGOUVCRDQ2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIx
OC5jcHAgKi87IH07CisJCURFQ0E3RTU2MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjE5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
Q0E3RTMzMUY5RUJEMzYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE5LmNwcCAqLzsgfTsKKwkJ
REVDQTdFNTcxRjlFQkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjAuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFMzAxRjlFQkQzMjAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjAuY3BwICovOyB9OworCQlERUNBN0U1ODFGOUVCRDgz
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIyMS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0U0NjFGOUVCRDQ5MDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTIyMS5jcHAgKi87IH07CisJCURFQ0E3RTU5MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjIyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFQ0E3RTRBMUY5RUJENEQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjIyLmNwcCAq
LzsgfTsKKwkJREVDQTdFNUExRjlFQkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjMuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFMzEx
RjlFQkQzNDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjMuY3BwICovOyB9OworCQlERUNBN0U1
QjFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIyNC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0U0OTFGOUVCRDRDMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTIyNC5jcHAgKi87IH07CisJCURFQ0E3RTVDMUY5RUJEODMwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjI1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFQ0E3RTRDMUY5RUJENEYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjI1LmNwcCAqLzsgfTsKKwkJREVDQTdFNUQxRjlFQkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyMjYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REVDQTdFMzUxRjlFQkQzODAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjYuY3BwICovOyB9Owor
CQlERUNBN0U1RTFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIyNy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0U0RDFGOUVCRDUw
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIyNy5jcHAgKi87IH07CisJCURFQ0E3RTVGMUY5RUJE
ODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RTMyMUY5RUJEMzUwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjI4LmNwcCAqLzsgfTsKKwkJREVDQTdFNjAxRjlFQkQ4MzAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyMjkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREVDQTdFMzQxRjlFQkQzNzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjkuY3Bw
ICovOyB9OworCQlERUNBN0U2MTFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzMC5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0Uz
RjFGOUVCRDQyMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzMC5jcHAgKi87IH07CisJCURFQ0E3
RTYyMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjMxLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RTM3MUY5RUJEM0EwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjMxLmNwcCAqLzsgfTsKKwkJREVDQTdFNjMxRjlFQkQ4MzAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyMzIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREVDQTdFM0ExRjlFQkQzRDAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyMzIuY3BwICovOyB9OworCQlERUNBN0U2NDFGOUVCRDgzMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTIzMy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERUNBN0UzNjFGOUVCRDM5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzMy5jcHAgKi87IH07
CisJCURFQ0E3RTY1MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM0LmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RTQ3MUY5RUJE
NEEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM0LmNwcCAqLzsgfTsKKwkJREVDQTdFNjYxRjlF
QkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFNDIxRjlFQkQ0NTAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyMzUuY3BwICovOyB9OworCQlERUNBN0U2NzFGOUVCRDgzMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTIzNi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERUNBN0U0MTFGOUVCRDQ0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzNi5j
cHAgKi87IH07CisJCURFQ0E3RTY4MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM3
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3
RTQ4MUY5RUJENEIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM3LmNwcCAqLzsgfTsKKwkJREVD
QTdFNjkxRjlFQkQ4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzguY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdFM0IxRjlFQkQzRTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyMzguY3BwICovOyB9OworCQlERUNBN0U2QTFGOUVCRDgzMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTIzOS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0UzQzFGOUVCRDNGMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTIzOS5jcHAgKi87IH07CisJCURFQ0E3RTZCMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjQwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFQ0E3RTNEMUY5RUJENDAwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQwLmNwcCAqLzsg
fTsKKwkJREVDQTgwMzIxRjlGRUQ2OTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDEuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRTcxRjlG
RTlBRDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDEuY3BwICovOyB9OworCQlERUNBODAzMzFG
OUZFRDY5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZEMDFGOUZFOTk4MDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTI0Mi5jcHAgKi87IH07CisJCURFQ0E4MDM0MUY5RkVENjkwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjQzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFQ0E3RkVCMUY5RkU5QjEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQz
LmNwcCAqLzsgfTsKKwkJREVDQTgwMzUxRjlGRUQ2OTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
NDQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVD
QTdGRUMxRjlGRTlCMjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDQuY3BwICovOyB9OworCQlE
RUNBODAzNjFGOUZFRDY5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0NS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZFQTFGOUZFOUIwMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTI0NS5jcHAgKi87IH07CisJCURFQ0E4MDM3MUY5RkVENjkw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkUyMUY5RkU5QTkwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjQ2LmNwcCAqLzsgfTsKKwkJREVDQTgwMzgxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyNDcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREVDQTdGQzMxRjlGRTk4QjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDcuY3BwICov
OyB9OworCQlERUNBODAzOTFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0OC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZFNTFG
OUZFOUFDMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0OC5jcHAgKi87IH07CisJCURFQ0E4MDNB
MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ5LmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkQ1MUY5RkU5OUMwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjQ5LmNwcCAqLzsgfTsKKwkJREVDQTgwM0IxRjlGRUQ2QTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyNTAuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREVDQTdGQzAxRjlGRTk4ODAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
NTAuY3BwICovOyB9OworCQlERUNBODAzQzFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTI1MS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBE
RUNBN0ZEQjFGOUZFOUEzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1MS5jcHAgKi87IH07CisJ
CURFQ0E4MDNEMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUyLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkYxMUY5RkU5QjYw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUyLmNwcCAqLzsgfTsKKwkJREVDQTgwM0UxRjlGRUQ2
QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQkYxRjlGRTk4NzAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyNTMuY3BwICovOyB9OworCQlERUNBODAzRjFGOUZFRDZBMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTI1NC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERUNBN0ZERjFGOUZFOUE2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1NC5jcHAg
Ki87IH07CisJCURFQ0E4MDQwMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkY0
MUY5RkU5QjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNwcCAqLzsgfTsKKwkJREVDQTgw
NDExRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTYuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRjUxRjlGRTlCQTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyNTYuY3BwICovOyB9OworCQlERUNBODA0MjFGOUZFRDZBMDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTI1Ny5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZDNzFGOUZFOThGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTI1Ny5jcHAgKi87IH07CisJCURFQ0E4MDQzMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjU4LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERFQ0E3RkM4MUY5RkU5OTAwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU4LmNwcCAqLzsgfTsK
KwkJREVDQTgwNDQxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTkuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRTMxRjlGRTlB
QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTkuY3BwICovOyB9OworCQlERUNBODA0NTFGOUZF
RDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2MC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZEMTFGOUZFOTk4MDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTI2MC5jcHAgKi87IH07CisJCURFQ0E4MDQ2MUY5RkVENkEwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjYxLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERFQ0E3RkNCMUY5RkU5OTMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYxLmNw
cCAqLzsgfTsKKwkJREVDQTgwNDcxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjIu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdG
QkUxRjlGRTk4NjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjIuY3BwICovOyB9OworCQlERUNB
ODA0ODFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2My5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZFRTFGOUZFOUI0MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTI2My5jcHAgKi87IH07CisJCURFQ0E4MDQ5MUY5RkVENkEwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjY0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkQ3MUY5RkU5OUYwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjY0LmNwcCAqLzsgfTsKKwkJREVDQTgwNEExRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNjUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREVDQTdGREMxRjlGRTlBMzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjUuY3BwICovOyB9
OworCQlERUNBODA0QjFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2Ni5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZEODFGOUZF
OUEwMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2Ni5jcHAgKi87IH07CisJCURFQ0E4MDRDMUY5
RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY3LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkNDMUY5RkU5OTQwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjY3LmNwcCAqLzsgfTsKKwkJREVDQTgwNEQxRjlGRUQ2QTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyNjguY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gREVDQTdGRDIxRjlGRTk5OTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjgu
Y3BwICovOyB9OworCQlERUNBODA0RTFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2
OS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNB
N0ZDNTFGOUZFOThEMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2OS5jcHAgKi87IH07CisJCURF
Q0E4MDRGMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjcwLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkRFMUY5RkU5QTUwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjcwLmNwcCAqLzsgfTsKKwkJREVDQTgwNTAxRjlGRUQ2QTAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQkExRjlGRTk4MjAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNzEuY3BwICovOyB9OworCQlERUNBODA1MTFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTI3Mi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERUNBN0ZDRjFGOUZFOTk3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI3Mi5jcHAgKi87
IH07CisJCURFQ0E4MDUyMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjczLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkJDMUY5
RkU5ODQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjczLmNwcCAqLzsgfTsKKwkJREVDQTgwNTMx
RjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzQuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQzExRjlGRTk4OTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyNzQuY3BwICovOyB9OworCQlERUNBODA1NDFGOUZFRDZBMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTI3NS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERUNBN0ZFODFGOUZFOUFFMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI3
NS5jcHAgKi87IH07CisJCURFQ0E4MDU1MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
Mjc2LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERF
Q0E3RkQ5MUY5RkU5QTEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc2LmNwcCAqLzsgfTsKKwkJ
REVDQTgwNTYxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzcuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRTAxRjlGRTlBNzAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzcuY3BwICovOyB9OworCQlERUNBODA1NzFGOUZFRDZB
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI3OC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZENDFGOUZFOTlCMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTI3OC5jcHAgKi87IH07CisJCURFQ0E4MDU4MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjc5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IERFQ0E3RkNBMUY5RkU5OTIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc5LmNwcCAq
LzsgfTsKKwkJREVDQTgwNTkxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyODAuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQzQx
RjlGRTk4QzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyODAuY3BwICovOyB9OworCQlERUNBODA1
QTFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4MS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZDMjFGOUZFOThBMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTI4MS5jcHAgKi87IH07CisJCURFQ0E4MDVCMUY5RkVENkEwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjgyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERFQ0E3RkREMUY5RkU5QTQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjgyLmNwcCAqLzsgfTsKKwkJREVDQTgwNUMxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyODMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REVDQTdGRTkxRjlGRTlBRjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyODMuY3BwICovOyB9Owor
CQlERUNBODA1RDFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4NC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZENjFGOUZFOTlF
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4NC5jcHAgKi87IH07CisJCURFQ0E4MDVFMUY5RkVE
NkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg1LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkYwMUY5RkU5QjYwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjg1LmNwcCAqLzsgfTsKKwkJREVDQTgwNUYxRjlGRUQ2QTAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyODYuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREVDQTdGRUQxRjlGRTlCMzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyODYuY3Bw
ICovOyB9OworCQlERUNBODA2MDFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4Ny5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZF
NjFGOUZFOUFDMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4Ny5jcHAgKi87IH07CisJCURFQ0E4
MDYxMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg4LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkQzMUY5RkU5OUEwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjg4LmNwcCAqLzsgfTsKKwkJREVDQTgwNjIxRjlGRUQ2QTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyODkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRjMxRjlGRTlCODAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyODkuY3BwICovOyB9OworCQlERUNBODA2MzFGOUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTI5MC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERUNBN0ZCRDFGOUZFOTg1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5MC5jcHAgKi87IH07
CisJCURFQ0E4MDY0MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjkxLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3RkNFMUY5RkU5
OTYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjkxLmNwcCAqLzsgfTsKKwkJREVDQTgwNjUxRjlG
RUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGRTExRjlGRTlBODAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyOTIuY3BwICovOyB9OworCQlERUNBODA2NjFGOUZFRDZBMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTI5My5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBERUNBN0ZDOTFGOUZFOTkxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5My5j
cHAgKi87IH07CisJCURFQ0E4MDY3MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk0
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERFQ0E3
RkVGMUY5RkU5QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk0LmNwcCAqLzsgfTsKKwkJREVD
QTgwNjgxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTUuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQzYxRjlGRTk4RTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyOTUuY3BwICovOyB9OworCQlERUNBODA2OTFGOUZFRDZBMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTI5Ni5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZGMjFGOUZFOUI3MDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTI5Ni5jcHAgKi87IH07CisJCURFQ0E4MDZBMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjk3LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IERFQ0E3RkU0MUY5RkU5QUIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk3LmNwcCAqLzsg
fTsKKwkJREVDQTgwNkIxRjlGRUQ2QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTguY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREVDQTdGQ0QxRjlG
RTk5NTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTguY3BwICovOyB9OworCQlERUNBODA2QzFG
OUZFRDZBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5OS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERUNBN0ZEQTFGOUZFOUEyMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTI5OS5jcHAgKi87IH07CisJCURFQ0E4MDZEMUY5RkVENkEwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMzAwLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERFQ0E3RkJCMUY5RkU5ODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMzAw
LmNwcCAqLzsgfTsKKwkJREYxOUUyQUMyNDc3MkJDMTAwN0JEQUNCIC8qIFNob3VsZFJlbGF4VGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBERjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hvdWxkUmVsYXhUaGly
ZFBhcnR5Q29va2llQmxvY2tpbmcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlERjRFMzhFMDI1Mjc5NTk1MDAyQTc0ODEgLyogVmVyc2lvbkNoZWNr
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREY0RTM4
REUyNTI3OTU5NDAwMkE3NDgxIC8qIFZlcnNpb25DaGVja3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlERjk1QjE0QTI0RkRBRkQzMDBCMUY0RDcg
LyogVGV4dENvZGVjQ0pLLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERjk1QjE0ODI0RkRBRkQzMDBCMUY0RDcgLyogVGV4dENvZGVjQ0pLLmggKi87IH07
CisJCURGOUFGRDcyMTNGQzMxRDgwMDE1RkVCNyAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERjlBRkQ3MDEzRkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5oICovOyB9OworCQlERjlBRkQ3MzEzRkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IERGOUFGRDcxMTNGQzMxRDgwMDE1RkVCNyAvKiBNZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tICovOyB9OworCQlERkM2MTBBNjI0RkIyQTdEMDA2
MjU0QzggLyogRW5jb2RpbmdUYWJsZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IERGQzYxMEE0MjRGQjJBN0QwMDYyNTRDOCAvKiBFbmNvZGluZ1RhYmxl
cy5oICovOyB9OworCQlFMEZFRjM3MkIxN0M1M0VBQzFDMUZCRUUgLyogRXZlbnRTb3VyY2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUwRkVGMzcxQjE3
QzUzRUFDMUMxRkJFRSAvKiBFdmVudFNvdXJjZS5oICovOyB9OworCQlFMEZFRjM3MkIzN0M1M0VB
QzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTBGRUYzNzFCMzdDNTNFQUMxQzFGQkVFIC8qIEpTRXZlbnRTb3Vy
Y2UuaCAqLzsgfTsKKwkJRTEwNzQwMEUwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5u
ZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMDc0
MDBDMEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggKi87IH07CisJCUUxMEI5
QjZDMEI3NDc1OTkwMDNFRDg5MCAvKiBOYXRpdmVYUGF0aE5TUmVzb2x2ZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMEI5QjZBMEI3NDc1OTkwMDNF
RDg5MCAvKiBOYXRpdmVYUGF0aE5TUmVzb2x2ZXIuaCAqLzsgfTsKKwkJRTExMDAzMzExQzlBQzNE
RTAwNDEyREQwIC8qIENTU0dyaWRBdXRvUmVwZWF0VmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMTAwMzJGMUM5QUMzREUwMDQxMkREMCAvKiBD
U1NHcmlkQXV0b1JlcGVhdFZhbHVlLmggKi87IH07CisJCUUxMTJGNDcyMUUzQTg2MTYwMEQ2Q0RG
RCAvKiBHcmlkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFMTEyRjQ2RjFFM0E4NUQ4MDBENkNERkQgLyogR3JpZC5oICovOyB9OworCQlFMTFDOUQ5QjBF
QjM2ODEyMDBFNDA5REIgLyogU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTExQzlEOUEwRUIzNjgxMjAwRTQwOURC
IC8qIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlFMTIzM0YwRDE4NUEzRTNCMDA4REZBRjUgLyogQ3J5cHRv
QWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTEyMzNGMEIxODVBM0UzQjAwOERGQUY1IC8qIENyeXB0b0FsZ29y
aXRobVJTQUVTX1BLQ1MxX3YxXzUuaCAqLzsgfTsKKwkJRTEyNDc0ODQxMEFBMTYxRDAwQjc5NDkz
IC8qIEF1dGhlbnRpY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMTI0NzQ4MzEwQUExNjFEMDBCNzk0OTMgLyogQXV0aGVudGljYXRp
b25DbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFMTI1RjgyQzE4MjJDRkVDMDBEODRDRDkgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEyNUY4MkExODIy
Q0ZFQzAwRDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobVNIQTEuaCAqLzsgfTsKKwkJRTEyNUY4MzIx
ODIyRjExQjAwRDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobUhNQUMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMjVGODMwMTgyMkYxMUIwMEQ4NENEOSAv
KiBDcnlwdG9BbGdvcml0aG1ITUFDLmggKi87IH07CisJCUUxMjVGODM2MTgyMkYxOEEwMEQ4NENE
OSAvKiBDcnlwdG9LZXlITUFDLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMTI1RjgzNDE4MjJGMThBMDBEODRDRDkgLyogQ3J5cHRvS2V5SE1BQy5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxMjVGODQy
MTgyNDI1M0EwMEQ4NENEOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNfQ0JDLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTI1Rjg0MDE4MjQyNTNBMDBEODRD
RDkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NCQy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxMjVGODRFMTgyNDI4OUQwMEQ4NENEOSAvKiBDcnlw
dG9LZXlBRVMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUxMjVGODRDMTgyNDI4OUQwMEQ4NENEOSAvKiBDcnlwdG9LZXlBRVMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMTI3MTlDNzBFRUVDMTY4MDBG
NjEyMTMgLyogTmF2aWdhdG9yQmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTEyNzE5QzYwRUVFQzE2ODAwRjYxMjEzIC8qIE5hdmlnYXRvckJhc2Uu
aCAqLzsgfTsKKwkJRTEyNzFBMEIwRUVFQzc3QTAwRjYxMjEzIC8qIFdvcmtlck5hdmlnYXRvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEyNzFBMEEw
RUVFQzc3QTAwRjYxMjEzIC8qIFdvcmtlck5hdmlnYXRvci5oICovOyB9OworCQlFMTI3MUE1ODBF
RUVDREU0MDBGNjEyMTMgLyogSlNXb3JrZXJOYXZpZ2F0b3IuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMjcxQTU2MEVFRUNERTQwMEY2MTIxMyAvKiBK
U1dvcmtlck5hdmlnYXRvci5oICovOyB9OworCQlFMTI4NEFFMTEwNDQ3RDQ1MDBFQUVCNTIgLyog
UGFnZVRyYW5zaXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTEyODRBRTAxMDQ0N0Q0NTAwRUFFQjUyIC8qIFBhZ2VUcmFuc2l0aW9uRXZl
bnQuaCAqLzsgfTsKKwkJRTEyODRCQjExMDQ0OUZGQTAwRUFFQjUyIC8qIEpTUGFnZVRyYW5zaXRp
b25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTEyODRCQUYxMDQ0OUZGQTAwRUFFQjUyIC8qIEpTUGFnZVRyYW5zaXRpb25FdmVudC5oICovOyB9
OworCQlFMTJBOUY0QTI0OEE5OUUyMDAzRjA2QzggLyogWFJJbnRlcmFjdGlvbk1vZGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMkE5RjQ4MjQ4QTk5
RTAwMDNGMDZDOCAvKiBYUkludGVyYWN0aW9uTW9kZS5oICovOyB9OworCQlFMTJERTcxODFFNEI3
NEE2MDBGOUFDQ0YgLyogR3JpZFRyYWNrU2l6aW5nQWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTJERTcxNjFFNEI3NDg3MDBGOUFDQ0Yg
LyogR3JpZFRyYWNrU2l6aW5nQWxnb3JpdGhtLmggKi87IH07CisJCUUxMkVEQjdCMEIzMDhBNzgw
MDI3MDRCNiAvKiBFdmVudFRhcmdldC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTEyRURCN0EwQjMwOEE3ODAwMjcwNEI2IC8qIEV2ZW50VGFyZ2V0Lmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTEyRkRB
RkYyNEEwRkQyMDAwNzAyMzZFIC8qIFdlYlhSTGF5ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEyRkRBRkIyNEEwRkQxQzAwNzAyMzZFIC8qIFdl
YlhSTGF5ZXIuY3BwICovOyB9OworCQlFMTJGREIwMDI0QTBGRDIwMDA3MDIzNkUgLyogV2ViWFJM
YXllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEy
RkRBRkQyNEEwRkQxRTAwNzAyMzZFIC8qIFdlYlhSTGF5ZXIuaCAqLzsgfTsKKwkJRTEzNEY1QUIx
MkVFMzQzRjAwNEVDNThEIC8qIEludFJlY3RIYXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTM0RjVBQTEyRUUzNDNGMDA0RUM1OEQgLyogSW50UmVj
dEhhc2guaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlFMTM5ODY2NDE1NDc4NDc0MDAxRTNGNjUgLyogU3R5bGVSZXNvbHZlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEzOTg2NjIxNTQ3ODQ3NDAwMUUz
RjY1IC8qIFN0eWxlUmVzb2x2ZXIuaCAqLzsgfTsKKwkJRTEzRUYzNDQxNjg0RUNGNDAwMzRDODNG
IC8qIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTEzRUYzNDIxNjg0RUNGNDAwMzRDODNGIC8qIE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUUxNDI0Qzk0MTY0QjUyQzgwMEYzMkQ0MCAvKiBDb29raWVKYXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNDI0QzkyMTY0QjUyQzgwMEYz
MkQ0MCAvKiBDb29raWVKYXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlFMTRGMUM0NTE0QjVEQUM2MDBFQTkwMDkgLyogSFRNTEZvcm1Db250cm9s
RWxlbWVudFdpdGhTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTE0RjFDNDMxNEI1REFDNjAwRUE5MDA5IC8qIEhUTUxGb3JtQ29udHJvbEVsZW1l
bnRXaXRoU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29yZVJlc291cmNlSGFuZGxl
QXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMTUyNTUxMzE2RkQyMzRGMDAzRDdBREIgLyogV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggKi87IH07CisJCUUxNTdBOEUxMTgx
NzMzMUMwMDlGODIxRCAvKiBKU0NyeXB0b0tleS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTE1N0E4REYxODE3MzMxQzAwOUY4MjFEIC8qIEpTQ3J5cHRv
S2V5LmggKi87IH07CisJCUUxNTdBOEU1MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNTdBOEUzMTgx
NzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlFMTVBMzZENzExMDQ1NzIwMDBCN0I2MzkgLyogWE1MTlNO
YW1lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE1
QTM2RDYxMTA0NTcyMDAwQjdCNjM5IC8qIFhNTE5TTmFtZXMuaCAqLzsgfTsKKwkJRTE1QTM2RDkx
MTA0NTcyNzAwQjdCNjM5IC8qIFhNTE5TTmFtZXMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE1QTM2RDgxMTA0NTcyNzAwQjdCNjM5IC8qIFhNTE5T
TmFtZXMuY3BwICovOyB9OworCQlFMTVGRjdENTE4Qzk1NTM4MDBGRTRDODcgLyogS2V5cHJlc3ND
b21tYW5kLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
MTVGRjdENDE4Qzk1NTM4MDBGRTRDODcgLyogS2V5cHJlc3NDb21tYW5kLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTE2NEZBQTMxODMxNUJGNDAw
REI0RTYxIC8qIENyeXB0b0tleVJTQS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTE2NEZBQTIxODMxNUJGNDAwREI0RTYxIC8qIENyeXB0b0tleVJTQS5o
ICovOyB9OworCQlFMTY5ODAzRDExMzM1NDJEMDA4OTQxMTUgLyogQ1J1bnRpbWVPYmplY3QuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNjk4MDNDMTEz
MzU0MkQwMDg5NDExNSAvKiBDUnVudGltZU9iamVjdC5oICovOyB9OworCQlFMTY5ODI1NTExMzQ2
MjlEMDA4OTQxMTUgLyogT2JqQ1J1bnRpbWVPYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNjk4MjU0MTEzNDYyOUQwMDg5NDExNSAvKiBPYmpD
UnVudGltZU9iamVjdC5oICovOyB9OworCQlFMTY5ODI2MDExMzQ2MzZBMDA4OTQxMTUgLyogT2Jq
Q1J1bnRpbWVPYmplY3QubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMTY5ODI1RjExMzQ2MzZBMDA4OTQxMTUgLyogT2JqQ1J1bnRpbWVPYmplY3QubW0g
Ki87IH07CisJCUUxNkE4NEZBMTRDODVDQ0MwMDI5NzdERiAvKiBDU1NCb3JkZXJJbWFnZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE2QTg0RjgxNEM4
NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRlckltYWdlLmggKi87IH07CisJCUUxNzJBRjZFMTgwRjI0
QzYwMEZCQURCOSAvKiBDcnlwdG9BbGdvcml0aG0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNzJBRjZDMTgwRjI0QzYwMEZCQURCOSAvKiBDcnlwdG9B
bGdvcml0aG0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFMTcyQUY3MDE4MEYyODk1MDBGQkFEQjkgLyogQ3J5cHRvS2V5VXNhZ2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNzJBRjZGMTgwRjI4OTUw
MEZCQURCOSAvKiBDcnlwdG9LZXlVc2FnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUUxNzJBRjkwMTgxMUJDMzcwMEZCQURCOSAvKiBKU0RPTVBy
b21pc2VEZWZlcnJlZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTE3MkFGOEUxODExQkMzNzAwRkJBREI5IC8qIEpTRE9NUHJvbWlzZURlZmVycmVkLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTE3OUYw
REExQjk3NzRGRTAwRUQwQTI3IC8qIEludGVybmFscy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxNzlGMEQ5MUI5Nzc0RkUwMEVEMEEyNyAvKiBJbnRl
cm5hbHMubW0gKi87IH07CisJCUUxN0I0OTE2MTZBOUIwOTQwMDFDODgzOSAvKiBUcmFuc2l0aW9u
RXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUx
N0I0OTE0MTZBOUIwOTMwMDFDODgzOSAvKiBUcmFuc2l0aW9uRXZlbnQuaCAqLzsgfTsKKwkJRTE3
QjQ5MjExNkE5QjhGRjAwMUM4ODM5IC8qIEpTVHJhbnNpdGlvbkV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTdCNDkxRjE2QTlCOEZGMDAxQzg4
MzkgLyogSlNUcmFuc2l0aW9uRXZlbnQuaCAqLzsgfTsKKwkJRTE4MDgxMTcxNkZDRjlDQjAwQjgw
RDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTgwODExNTE2RkNGOUNCMDBCODBEMDcgLyogU3luY2hy
b25vdXNMb2FkZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlFMTgyNTY5MDBFRjJCMDJEMDA5MzMyNDIgLyogSlNXb3JrZXJHbG9iYWxT
Y29wZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTE4
MjU2OEUwRUYyQjAyRDAwOTMzMjQyIC8qIEpTV29ya2VyR2xvYmFsU2NvcGUuaCAqLzsgfTsKKwkJ
RTE4NTM2ODQxRjRFNDgxNDAwRkUwOTFCIC8qIFdlYkFyY2hpdmVSZXNvdXJjZUZyb21OU0F0dHJp
YnV0ZWRTdHJpbmcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEUxODUzNjgxMUY0RTQ3MjcwMEZFMDkxQiAvKiBXZWJBcmNoaXZlUmVzb3VyY2VGcm9tTlNB
dHRyaWJ1dGVkU3RyaW5nLmggKi87IH07CisJCUUxOEMzNTQ0MUY3MTk3MEMwMEZGNjMyRCAvKiBX
ZWJBcmNoaXZlUmVzb3VyY2VXZWJSZXNvdXJjZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxOEMzNTQxMUY3MTk2Q0QwMEZGNjMyRCAvKiBX
ZWJBcmNoaXZlUmVzb3VyY2VXZWJSZXNvdXJjZUhhbmRsZXIuaCAqLzsgfTsKKwkJRTE4REYzMzUx
OEFBRjEyQzAwNzczRTU5IC8qIFNlcmlhbGl6ZWRDcnlwdG9LZXlXcmFwLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMThERjMzNDE4QUFGMTJDMDA3NzNF
NTkgLyogU2VyaWFsaXplZENyeXB0b0tleVdyYXAuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMTk3MjcxNjE4MjA1NDlFMDA1OTJENTEgLyogQ3J5
cHRvS2V5VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTE5NzI3MTUxODIwNTQ5RTAwNTkyRDUxIC8qIENyeXB0b0tleVR5cGUuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMTlBQzNFRjE4MjREQzc5
MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMjI0LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTlBQzNFNzE4MjREQzc5MDAzNDk0MjYgLyogQ3J5
cHRvQWxnb3JpdGhtU0hBMjI0LmggKi87IH07CisJCUUxOUFDM0YxMTgyNERDNzkwMDM0OTQyNiAv
KiBDcnlwdG9BbGdvcml0aG1TSEEyNTYuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxOUFDM0U5MTgyNERDNzkwMDM0OTQyNiAvKiBDcnlwdG9BbGdvcml0
aG1TSEEyNTYuaCAqLzsgfTsKKwkJRTE5QUMzRjMxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0Fs
Z29yaXRobVNIQTM4NC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTE5QUMzRUIxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTM4NC5o
ICovOyB9OworCQlFMTlBQzNGNTE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hB
NTEyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTlB
QzNFRDE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBNTEyLmggKi87IH07CisJ
CUUxQTE0NzA4MTExMDJCMTUwMEVFQzBGMyAvKiBDb250YWluZXJOb2RlQWxnb3JpdGhtcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFBMTQ3MDcxMTEw
MkIxNTAwRUVDMEYzIC8qIENvbnRhaW5lck5vZGVBbGdvcml0aG1zLmggKi87IH07CisJCUUxQTMx
NjJEMTM0QkMzMkQwMDdDOUE0RiAvKiBXZWJOU0F0dHJpYnV0ZWRTdHJpbmdFeHRyYXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxQTMxNjJCMTM0QkMz
MkQwMDdDOUE0RiAvKiBXZWJOU0F0dHJpYnV0ZWRTdHJpbmdFeHRyYXMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMUFERUNCRjBFNzZBQ0YxMDA0
QTFBNUUgLyogTWVzc2FnZVBvcnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxQURFQ0JEMEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxQURFQ0NF
MEU3NkFEOEIwMDRBMUE1RSAvKiBNZXNzYWdlQ2hhbm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFBREVDQ0MwRTc2QUQ4QjAwNEExQTVFIC8qIE1l
c3NhZ2VDaGFubmVsLmggKi87IH07CisJCUUxQURFRERBMEU3NkJEOTMwMDRBMUE1RSAvKiBKU01l
c3NhZ2VQb3J0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFMUFERUREODBFNzZCRDkzMDA0QTFBNUUgLyogSlNNZXNzYWdlUG9ydC5oICovOyB9OworCQlF
MUIyNTEwNzE1MkEwQkIwMDA2OUI3NzkgLyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFCMjUxMDUxNTJBMEJB
RjAwNjlCNzc5IC8qIFN0eWxlUHJvcGVydHlTaG9ydGhhbmQuaCAqLzsgfTsKKwkJRTFCNTMzNDkx
NzE3REVFMzAwRjIwNUY5IC8qIENhY2hlZFJhd1Jlc291cmNlQ2xpZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUI1MzM0ODE3MTdERUUzMDBGMjA1
RjkgLyogQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMUJBNjZGMTE3NDJCRDg2MDBDMjAyNTEgLyogRHlu
YW1pY0xpbmtlckludGVycG9zaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMUJBNjZGMDE3NDJCRDg2MDBDMjAyNTEgLyogRHluYW1pY0xpbmtlcklu
dGVycG9zaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJRTFCQTY3MUExNzQyQkVGNDAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hpbUxpYnJhcnku
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFCQTY3
MTkxNzQyQkVGNDAwQzIwMjUxIC8qIFdlYkNvcmVUZXN0U2hpbUxpYnJhcnkuY3BwICovOyB9Owor
CQlFMUJEMzMxQTE4MkQ4REREMDBDMDVEOUYgLyogQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1Mx
X3YxXzUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUx
QkQzMzE4MTgyRDhEREQwMEMwNUQ5RiAvKiBDcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFf
NS5oICovOyB9OworCQlFMUJFNTEyRTBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNvZGVTb3J0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUJFNTEy
QzBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNvZGVTb3J0LmggKi87IH07CisJCUUxQzFBMzlE
MjQ4MDA4MDgwMEUwQUY2NiAvKiBQbGF0Zm9ybVhST3BlblhSLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxQzFBMzlCMjQ4MDA4MDYwMEUwQUY2NiAv
KiBQbGF0Zm9ybVhST3BlblhSLmNwcCAqLzsgfTsKKwkJRTFDMUEzOUUyNDgwMDgwODAwRTBBRjY2
IC8qIFBsYXRmb3JtWFJPcGVuWFIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxQzFBMzlDMjQ4MDA4MDcwMEUwQUY2NiAvKiBQbGF0Zm9ybVhST3BlblhS
LmggKi87IH07CisJCUUxQzI2NkRGMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlSU0FDb21w
b25lbnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
MUMyNjZERDE4MzE5RjMxMDAzRjhCMzMgLyogQ3J5cHRvS2V5UlNBQ29tcG9uZW50cy5oICovOyB9
OworCQlFMUMzNjJFRjBFQUYyQUE5MDA3NDEwQkMgLyogSlNXb3JrZXJMb2NhdGlvbi5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFDMzYyRUQwRUFGMkFB
OTAwNzQxMEJDIC8qIEpTV29ya2VyTG9jYXRpb24uaCAqLzsgfTsKKwkJRTFDMzZDMDMwRUIwNzZE
NjAwNzQxMEJDIC8qIEpTRE9NR2xvYmFsT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUMzNkMwMjBFQjA3NkQ2MDA3NDEwQkMgLyogSlNET01H
bG9iYWxPYmplY3QuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlFMUMzNkQzNTBFQjBBMDk0MDA3NDEwQkMgLyogSlNXb3JrZXJHbG9iYWxTY29wZUJh
c2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxQzM2
RDMzMEVCMEEwOTQwMDc0MTBCQyAvKiBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZS5oICovOyB9Owor
CQlFMUM0MTVEQTBGNjU1RDZGMDA5MkQyRkIgLyogQ3Jvc3NPcmlnaW5QcmVmbGlnaHRSZXN1bHRD
YWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFD
NDE1RDkwRjY1NUQ2RjAwOTJEMkZCIC8qIENyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMUM0
MTYxMjBGNjU2MkZEMDA5MkQyRkIgLyogQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUM0MTYxMTBGNjU2MkZE
MDA5MkQyRkIgLyogQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTFDNERFNjkwRUE3NUMxRTAwMjNDQ0Q2
IC8qIEFjdGl2ZURPTU9iamVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTFDNERFNjgwRUE3NUMxRTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxQzY1
NzI1MTgxNkU2OUQwMDI1NkNERCAvKiBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUM2NTcyNDE4MTZFNjlE
MDAyNTZDREQgLyogQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxQzk0QUY5MTkxMzAzRjAwMEQ1QTg5
MyAvKiBCbG9iUGFydC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTFDOTRBRjcxOTEzMDNGMDAwRDVBODkzIC8qIEJsb2JQYXJ0LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTFDQUE1QzYwRThCRDIzNjAw
QTczRUNBIC8qIEpTV29ya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMUNBQTVDNTBFOEJEMjM2MDBBNzNFQ0EgLyogSlNXb3JrZXIuaCAqLzsgfTsK
KwkJRTFDREU5MjIxNTAxOTE2OTAwODYyQ0M1IC8qIEFzeW5jRmlsZVN0cmVhbS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFDREU5MjExNTAxOTE2OTAw
ODYyQ0M1IC8qIEFzeW5jRmlsZVN0cmVhbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUUxRDMxQ0REMTkxOTYwMjAwMDEwMDVBMyAvKiBCbG9iRGF0
YUZpbGVSZWZlcmVuY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUxRDMxQ0RCMTkxOTYwMjAwMDEwMDVBMyAvKiBCbG9iRGF0YUZpbGVSZWZlcmVuY2Uu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMUUx
QkYwMDExNUZGNkZCMDA2RjUyQ0EgLyogV2luZG93c0tleWJvYXJkQ29kZXMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRTFCRUZGMTE1RkY2RkIwMDZG
NTJDQSAvKiBXaW5kb3dzS2V5Ym9hcmRDb2Rlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUUxRTZFRUE4MEI2MjhEQjMwMDVGMkY3MCAvKiBKU0hU
TUxTZWxlY3RFbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMUU2RUVBNzBCNjI4REIzMDA1RjJGNzAgLyogSlNIVE1MU2VsZWN0RWxlbWVudC5o
ICovOyB9OworCQlFMUVDMjlBMDBCQjA0QzZCMDBFQTE4N0IgLyogWFBhdGhOb2RlU2V0LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVDMjk5RTBCQjA0
QzZCMDBFQTE4N0IgLyogWFBhdGhOb2RlU2V0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTFFRDhBQzMwQ0M0OUJFMDAwQkZDNTU3IC8qIENTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxRUQ4QUMyMENDNDlCRTAwMEJGQzU1NyAvKiBDU1NQcmltaXRpdmVWYWx1
ZU1hcHBpbmdzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJRTFFRThCNzIyNDEyQjJBODAwRTc5NEQ2IC8qIFBsYXRmb3JtWFIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QjZGMjQxMkIyQTcwMEU3
OTRENiAvKiBQbGF0Zm9ybVhSLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJRTFFRThCNzYyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSVmlld2VyUG9z
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThB
QzcyNDEyQjE2RjAwRTc5NEQ2IC8qIFdlYlhSVmlld2VyUG9zZS5oICovOyB9OworCQlFMUVFOEI3
NzI0MTMxOTFGMDBFNzk0RDYgLyogWFJSZWZlcmVuY2VTcGFjZVR5cGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUM5MjQxMkIxNzAwMEU3OTRE
NiAvKiBYUlJlZmVyZW5jZVNwYWNlVHlwZS5oICovOyB9OworCQlFMUVFOEI3ODI0MTMxOTFGMDBF
Nzk0RDYgLyogTmF2aWdhdG9yV2ViWFIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxRUU4QUNBMjQxMkIxNzAwMEU3OTRENiAvKiBOYXZpZ2F0b3JXZWJY
Ui5oICovOyB9OworCQlFMUVFOEI3OTI0MTMxOTFGMDBFNzk0RDYgLyogWFJSZW5kZXJTdGF0ZUlu
aXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4
QUNCMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJlbmRlclN0YXRlSW5pdC5oICovOyB9OworCQlFMUVF
OEI3QTI0MTMxOTFGMDBFNzk0RDYgLyogWFJJbnB1dFNvdXJjZUV2ZW50LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUNDMjQxMkIxNzAwMEU3
OTRENiAvKiBYUklucHV0U291cmNlRXZlbnQuY3BwICovOyB9OworCQlFMUVFOEI3QjI0MTMxOTFG
MDBFNzk0RDYgLyogV2ViWFJSaWdpZFRyYW5zZm9ybS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFDRDI0MTJCMTcwMDBFNzk0RDYgLyogV2Vi
WFJSaWdpZFRyYW5zZm9ybS5jcHAgKi87IH07CisJCUUxRUU4QjdDMjQxMzE5MUYwMEU3OTRENiAv
KiBXZWJYUlJlbmRlclN0YXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxRUU4QUNFMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlJlbmRlclN0YXRl
LmNwcCAqLzsgfTsKKwkJRTFFRThCN0QyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSU3BhY2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUNGMjQx
MkIxNzAwMEU3OTRENiAvKiBXZWJYUlNwYWNlLmggKi87IH07CisJCUUxRUU4QjdFMjQxMzE5MUYw
MEU3OTRENiAvKiBXZWJYUkJvdW5kZWRSZWZlcmVuY2VTcGFjZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThBRDEyNDEyQjE3MDAwRTc5NEQ2IC8q
IFdlYlhSQm91bmRlZFJlZmVyZW5jZVNwYWNlLmggKi87IH07CisJCUUxRUU4QjdGMjQxMzE5MUYw
MEU3OTRENiAvKiBXZWJYUlJlZmVyZW5jZVNwYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUQyMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJY
UlJlZmVyZW5jZVNwYWNlLmNwcCAqLzsgfTsKKwkJRTFFRThCODAyNDEzMTkxRjAwRTc5NEQ2IC8q
IFdlYlhSQm91bmRlZFJlZmVyZW5jZVNwYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUQzMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUkJv
dW5kZWRSZWZlcmVuY2VTcGFjZS5jcHAgKi87IH07CisJCUUxRUU4QjgxMjQxMzE5MUYwMEU3OTRE
NiAvKiBXZWJYUlJlbmRlclN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMUVFOEFENTI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJSZW5kZXJTdGF0
ZS5oICovOyB9OworCQlFMUVFOEI4MjI0MTMxOTFGMDBFNzk0RDYgLyogWFJWaXNpYmlsaXR5U3Rh
dGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4
QUQ2MjQxMkIxNzAwMEU3OTRENiAvKiBYUlZpc2liaWxpdHlTdGF0ZS5oICovOyB9OworCQlFMUVF
OEI4MzI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJXZWJHTExheWVyLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUQ4MjQxMkIxNzAwMEU3OTRE
NiAvKiBXZWJYUldlYkdMTGF5ZXIuY3BwICovOyB9OworCQlFMUVFOEI4NDI0MTMxOTFGMDBFNzk0
RDYgLyogWFJSZWZlcmVuY2VTcGFjZUV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFEQjI0MTJCMTcwMDBFNzk0RDYgLyogWFJSZWZlcmVu
Y2VTcGFjZUV2ZW50LmggKi87IH07CisJCUUxRUU4Qjg1MjQxMzE5MUYwMEU3OTRENiAvKiBYUlNl
c3Npb25FdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFMUVFOEFEQzI0MTJCMTcwMDBFNzk0RDYgLyogWFJTZXNzaW9uRXZlbnQuY3BwICovOyB9
OworCQlFMUVFOEI4NjI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZUFycmF5Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFERDI0
MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZUFycmF5LmggKi87IH07CisJCUUxRUU4
Qjg3MjQxMzE5MUYwMEU3OTRENiAvKiBXZWJYUlZpZXcuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUUwMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJY
UlZpZXcuaCAqLzsgfTsKKwkJRTFFRThCODgyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSUG9zZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThBRTEy
NDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUG9zZS5oICovOyB9OworCQlFMUVFOEI4OTI0MTMxOTFG
MDBFNzk0RDYgLyogV2ViWFJTeXN0ZW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxRUU4QUUyMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlN5c3RlbS5o
ICovOyB9OworCQlFMUVFOEI4QTI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJGcmFtZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThBRTMyNDEyQjE3
MDAwRTc5NEQ2IC8qIFdlYlhSRnJhbWUuaCAqLzsgfTsKKwkJRTFFRThCOEIyNDEzMTkxRjAwRTc5
NEQ2IC8qIFdlYlhSUG9zZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMUVFOEFFNTI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJQb3NlLmNwcCAqLzsg
fTsKKwkJRTFFRThCOEMyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3VyY2VBcnJheS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFF
NjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZUFycmF5LmNwcCAqLzsgfTsKKwkJ
RTFFRThCOEQyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbkV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFFNzI0MTJCMTcwMDBFNzk0
RDYgLyogWFJTZXNzaW9uRXZlbnQuaCAqLzsgfTsKKwkJRTFFRThCOEUyNDEzMTk1MDAwRTc5NEQ2
IC8qIFdlYlhSU3lzdGVtLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUxRUU4QUU4MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlN5c3RlbS5jcHAgKi87
IH07CisJCUUxRUU4QjhGMjQxMzE5NTAwMEU3OTRENiAvKiBYUkZyYW1lUmVxdWVzdENhbGxiYWNr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFF
OTI0MTJCMTcwMDBFNzk0RDYgLyogWFJGcmFtZVJlcXVlc3RDYWxsYmFjay5oICovOyB9OworCQlF
MUVFOEI5MDI0MTMxOTUwMDBFNzk0RDYgLyogWFJUYXJnZXRSYXlNb2RlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFFQTI0MTJCMTcwMDBFNzk0
RDYgLyogWFJUYXJnZXRSYXlNb2RlLmggKi87IH07CisJCUUxRUU4QjkxMjQxMzE5NTAwMEU3OTRE
NiAvKiBXZWJYUlZpZXdwb3J0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxRUU4QUVCMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlZpZXdwb3J0LmNw
cCAqLzsgfTsKKwkJRTFFRThCOTIyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSSGFuZGVkbmVzcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThBRUUyNDEy
QjE3MDAwRTc5NEQ2IC8qIFhSSGFuZGVkbmVzcy5oICovOyB9OworCQlFMUVFOEI5MzI0MTMxOTUw
MDBFNzk0RDYgLyogV2ViWFJGcmFtZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFGMDI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJGcmFtZS5j
cHAgKi87IH07CisJCUUxRUU4Qjk0MjQxMzE5NTAwMEU3OTRENiAvKiBOYXZpZ2F0b3JXZWJYUi5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFG
MTI0MTJCMTcwMDBFNzk0RDYgLyogTmF2aWdhdG9yV2ViWFIuY3BwICovOyB9OworCQlFMUVFOEI5
NTI0MTMxOTUwMDBFNzk0RDYgLyogWFJSZWZlcmVuY2VTcGFjZUV2ZW50LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUYzMjQxMkIxNzAwMEU3
OTRENiAvKiBYUlJlZmVyZW5jZVNwYWNlRXZlbnQuY3BwICovOyB9OworCQlFMUVFOEI5NjI0MTMx
OTUwMDBFNzk0RDYgLyogV2ViWFJWaWV3cG9ydC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThBRjQyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSVmll
d3BvcnQuaCAqLzsgfTsKKwkJRTFFRThCOTcyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSRXllLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEFGNTI0MTJC
MTcwMDBFNzk0RDYgLyogWFJFeWUuaCAqLzsgfTsKKwkJRTFFRThCOTgyNDEzMTk1MDAwRTc5NEQ2
IC8qIFdlYlhSU3BhY2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTFFRThBRjgyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSU3BhY2UuY3BwICovOyB9
OworCQlFMUVFOEI5OTI0MTMxOTUwMDBFNzk0RDYgLyogWFJJbnB1dFNvdXJjZXNDaGFuZ2VFdmVu
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThB
RjkyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VzQ2hhbmdlRXZlbnQuaCAqLzsgfTsK
KwkJRTFFRThCOUEyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbk1vZGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QUZFMjQxMkIxNzAwMEU3
OTRENiAvKiBYUlNlc3Npb25Nb2RlLmggKi87IH07CisJCUUxRUU4QjlDMjQxMzE5NTAwMEU3OTRE
NiAvKiBYUkVudmlyb25tZW50QmxlbmRNb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVFOEIwNTI0MTJCMTcwMDBFNzk0RDYgLyogWFJFbnZpcm9u
bWVudEJsZW5kTW9kZS5oICovOyB9OworCQlFMUVFOEI5RDI0MTMxOTUwMDBFNzk0RDYgLyogV2Vi
WFJSaWdpZFRyYW5zZm9ybS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTFFRThCMDYyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmlnaWRUcmFuc2Zvcm0u
aCAqLzsgfTsKKwkJRTFFRThCOUUyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSV2ViR0xMYXllckluaXQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QjA4
MjQxMkIxNzAwMEU3OTRENiAvKiBYUldlYkdMTGF5ZXJJbml0LmggKi87IH07CisJCUUxRUU4QjlG
MjQxMzE5NTAwMEU3OTRENiAvKiBYUklucHV0U291cmNlRXZlbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QjA5MjQxMkIxNzAwMEU3OTRENiAv
KiBYUklucHV0U291cmNlRXZlbnQuaCAqLzsgfTsKKwkJRTFFRThCQTAyNDEzMTk1MDAwRTc5NEQ2
IC8qIFdlYlhSVmlld2VyUG9zZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMUVFOEIwQjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJWaWV3ZXJQb3Nl
LmNwcCAqLzsgfTsKKwkJRTFFRThCQTEyNDEzMTk2MzAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3Vy
Y2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFF
RThCMEQyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3VyY2UuY3BwICovOyB9OworCQlF
MUVFOEJBMjI0MTMxOTYzMDBFNzk0RDYgLyogV2ViWFJTZXNzaW9uLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRUU4QjBGMjQxMkIxNzAwMEU3OTRE
NiAvKiBXZWJYUlNlc3Npb24uY3BwICovOyB9OworCQlFMUVFOEJBMzI0MTMxOTYzMDBFNzk0RDYg
LyogV2ViWFJTZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMUVFOEIxMTI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJTZXNzaW9uLmggKi87IH07
CisJCUUxRUU4QkE0MjQxMzE5NjMwMEU3OTRENiAvKiBXZWJYUlZpZXcuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThCMTIyNDEyQjE3MDAwRTc5
NEQ2IC8qIFdlYlhSVmlldy5jcHAgKi87IH07CisJCUUxRUU4QkE1MjQxMzE5NjMwMEU3OTRENiAv
KiBYUlNlc3Npb25Jbml0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMUVFOEIxMzI0MTJCMTcwMDBFNzk0RDYgLyogWFJTZXNzaW9uSW5pdC5oICovOyB9
OworCQlFMUVFOEJBNjI0MTMxOTYzMDBFNzk0RDYgLyogV2ViWFJSZWZlcmVuY2VTcGFjZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThCMTQyNDEy
QjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmVmZXJlbmNlU3BhY2UuaCAqLzsgfTsKKwkJRTFFRThCQTcy
NDEzMTk2MzAwRTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VzQ2hhbmdlRXZlbnQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThCMTUyNDEyQjE3MDAw
RTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VzQ2hhbmdlRXZlbnQuY3BwICovOyB9OworCQlFMUVFOEJB
ODI0MTMxOTYzMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRThCMTcyNDEyQjE3MDAwRTc5NEQ2IC8q
IFdlYlhSSW5wdXRTb3VyY2UuaCAqLzsgfTsKKwkJRTFGMUU4MzAwQzNDMkJCOTAwNkRCMzkxIC8q
IFhTTFRFeHRlbnNpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMUYxRTgyRTBDM0MyQkI5MDA2REIzOTEgLyogWFNMVEV4dGVuc2lvbnMuaCAqLzsg
fTsKKwkJRTFGODBCODgxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRjgwQjg2MTgzMTcyNTIw
MDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTFGODBCOEUxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRv
S2V5UGFpci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTFGODBCOEMxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5oICovOyB9OworCQlF
MUZFMTM2QjE4M0ZFMUFCMDA4OTJGMTMgLyogQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVAuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRkUxMzY5MTgzRkUx
QUIwMDg5MkYxMyAvKiBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUC5oICovOyB9OworCQlFMUZFMTM3
NTE4NDAyQTY3MDA4OTJGMTMgLyogQ29tbW9uQ3J5cHRvVXRpbGl0aWVzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUZFMTM3MzE4NDAyQTY3MDA4OTJG
MTMgLyogQ29tbW9uQ3J5cHRvVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTFGRTEzN0IxODREMjFCQjAwODkyRjEzIC8qIENyeXB0
b0FsZ29yaXRobUFFU19LVy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTFGRTEzNzkxODREMjFCQjAwODkyRjEzIC8qIENyeXB0b0FsZ29yaXRobUFFU19L
Vy5oICovOyB9OworCQlFMUZGNTdBMzBGMDEyNTVCMDA4OTFFQkIgLyogVGhyZWFkR2xvYmFsRGF0
YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGRjU3
QTIwRjAxMjU1QjAwODkxRUJCIC8qIFRocmVhZEdsb2JhbERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMUZGOEY2RDE4MERCNUJFMDAxMzI2
NzQgLyogQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRkY4RjZCMTgwREI1QkUwMDEzMjY3NCAvKiBDcnlwdG9B
bGdvcml0aG1SZWdpc3RyeS5oICovOyB9OworCQlFMzA1OTI2NDFFMjdBM0FEMDBENTdDOTggLyog
SW5saW5lQ2xhc3NpY1NjcmlwdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTMwNTkyNjIxRTI3QTM4QzAwRDU3Qzk4IC8qIElubGluZUNsYXNzaWNTY3Jp
cHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlF
MzA1OTI2ODFFMjdBM0QxMDBENTdDOTggLyogQ2FjaGVkU2NyaXB0RmV0Y2hlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMwNTkyNjYxRTI3QTNDNjAw
RDU3Qzk4IC8qIENhY2hlZFNjcmlwdEZldGNoZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMzA3REVEMDFEODFFNEM3MDAxNDFDQUYgLyogQ2Fj
aGVkTW9kdWxlU2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFMzA3REVDNzFEODFFNDQ4MDAxNDFDQUYgLyogQ2FjaGVkTW9kdWxlU2Ny
aXB0TG9hZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJRTMwN0RFRDUxRDgxRTRGMjAwMTQxQ0FGIC8qIExvYWRhYmxlTW9kdWxlU2NyaXB0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzA3REVEMzFE
ODFFNEVEMDAxNDFDQUYgLyogTG9hZGFibGVNb2R1bGVTY3JpcHQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMzE1MEVBNzFEQTcyMTkzMDAxOTQw
MTIgLyogRE9NSklUSGVscGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTMxNTBFQTUxREE3MjE4RDAwMTk0MDEyIC8qIERPTUpJVEhlbHBlcnMuaCAq
LzsgfTsKKwkJRTMyMDFDMUExRjhFODIxMzAwNzZBMDMyIC8qIE1vZHVsZUZldGNoUGFyYW1ldGVy
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM4RDA2
MDkxRjhFODExOTAwNjQ5Q0YyIC8qIE1vZHVsZUZldGNoUGFyYW1ldGVycy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUzMjNDRkZBMUU1QUY2QUYw
MEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQcm9taXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzIzQ0ZGOTFFNUFGNkE1MDBGMEI0QTAgLyogSlNET01D
b252ZXJ0UHJvbWlzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUUzM0QwQ0JFMjY3MkUxQjYwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElu
bGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUz
M0QwQ0JDMjY3MkUxQjMwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCAqLzsg
fTsKKwkJRTM0MzJERTQyNUQzNzdFMzAwNThFNjEyIC8qIFdvcmtlck1vZHVsZVNjcmlwdExvYWRl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM0MzJE
RTAyNUQzNzdFMjAwNThFNjEyIC8qIFdvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oICovOyB9Owor
CQlFMzQ3RTVGQTI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2NyaXB0RmV0Y2hlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTM0N0U1RjgyNUQ0RjAw
MDAwRjE3QTVDIC8qIFdvcmtlclNjcmlwdEZldGNoZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMzUxODhCNDI1RDM4N0NGMDBBNzdBRjMgLyog
TW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMzUxODhCMzI1RDM4N0NGMDBBNzdBRjMgLyogTW9kdWxlU2NyaXB0
TG9hZGVyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRTM1NjVCN0IxREMyRDZDOTAwMjE3REJEIC8qIEpTRXZlbnRDdXN0b20uaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNEVFNDlGMURDMkQ1
NzUwMEVBQTlEMyAvKiBKU0V2ZW50Q3VzdG9tLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM1ODAyQjYxREM4NDM1RDAwQTk3NzNDIC8qIERPTUpJ
VElETFR5cGVGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzNTgwMkI1MURDODQzNTgwMEE5NzczQyAvKiBET01KSVRJRExUeXBlRmlsdGVyLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM1ODJD
MjgyNTI3RjY2OTAwRDFCNzkwIC8qIFdlYkNvcmVKSVRPcGVyYXRpb25zLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzU4MkMyNjI1MjdGNjY4MDBEMUI3
OTAgLyogV2ViQ29yZUpJVE9wZXJhdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlFMzVCOTA3RjIzRjYwQTUwMDAwMDExRkYgLyogTG9jYWxp
emVkRGV2aWNlTW9kZWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEUzNUI5MDdDMjNGNjA2NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUzNjQz
MjFDMjVEMzdBNjcwMEY5MEUyQSAvKiBNb2R1bGVTY3JpcHRMb2FkZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNjQzMjFBMjVEMzdBNjYwMEY5MEUy
QSAvKiBNb2R1bGVTY3JpcHRMb2FkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFMzc3RkU0RDFEQURFMTY1MDBDREQwMjUgLyogTm9kZUNvbnN0
YW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNE
MDQ5OTMxREFEQzA0NTAwNzE4RjNDIC8qIE5vZGVDb25zdGFudHMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFMzdDODY1MDFFQjYzRTNGMDA4N0M2
Q0EgLyogSlNET01Qcm9taXNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMzdDODY0RjFFQjYzRTJEMDA4N0M2Q0EgLyogSlNET01Qcm9taXNlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM5NjI4QkYy
Mzk1NzI4RjAwNjU4RUNEIC8qIERldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOTYyOEJEMjM5NTcy
OEUwMDY1OEVDRCAvKiBEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTM5NjI4QzEyMzk1NzQz
MTAwNjU4RUNEIC8qIE1vdGlvbk1hbmFnZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOTYyOEMwMjM5NTc0MzAwMDY1OEVDRCAvKiBNb3Rp
b25NYW5hZ2VyQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJRTNBNzc2NjcxREM4NUQyODAwQjY5MEQ4IC8qIERPTUpJVElETENvbnZlcnQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQTc3NjY1
MURDODVEMjIwMEI2OTBEOCAvKiBET01KSVRJRExDb252ZXJ0LmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTNBNzc2NjgxREM4NUQyODAwQjY5MEQ4
IC8qIERPTUpJVElETFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzQTc3NjY2MURDODVEMjIwMEI2OTBEOCAvKiBET01KSVRJRExUeXBlLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTNBODZGQzMy
Njk1RUI0ODAwNTkyNjREIC8qIENhcHRpb25QcmVmZXJlbmNlc0RlbGVnYXRlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0E4NkZDMTI2OTVFQjQ4MDA1
OTI2NEQgLyogQ2FwdGlvblByZWZlcmVuY2VzRGVsZWdhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFM0FGRDdBRDI1NUY1MEVCMDBFNUUzMEUg
LyogV29ya2VyVGhyZWFkVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTNBRkQ3QUIyNTVGNTBEQzAwRTVFMzBFIC8qIFdvcmtlclRocmVhZFR5cGUu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFM0Iy
RjBFRDFEN0Y0Q0EzMDBCMEM5RDEgLyogTG9hZGFibGVTY3JpcHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQjJGMEU3MUQ3RjM1RUMwMEIwQzlEMSAv
KiBMb2FkYWJsZVNjcmlwdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUUzQjJGMEVFMUQ3RjRDQTkwMEIwQzlEMSAvKiBMb2FkYWJsZVNjcmlwdENs
aWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNC
MkYwRTgxRDdGMzVFQzAwQjBDOUQxIC8qIExvYWRhYmxlU2NyaXB0Q2xpZW50LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTNCMkYwRjAxRDdGNENC
NTAwQjBDOUQxIC8qIExvYWRhYmxlQ2xhc3NpY1NjcmlwdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNCMkYwRTQxRDdGMzVFQzAwQjBDOUQxIC8qIExv
YWRhYmxlQ2xhc3NpY1NjcmlwdC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUUzQkJDMjQ3MjM4MzU1MjYwMDZFQzM5RiAvKiBDU1NWYWx1ZUtleS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNCQkMyNDUy
MzgzNTUxQTAwNkVDMzlGIC8qIENTU1ZhbHVlS2V5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTNDMDQxMkYyNTRDQTI5QjAwMjFEMEU2IC8qIFN5
c3RlbVNvdW5kTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTNDMDQxMkQyNTRDQTI5QjAwMjFEMEU2IC8qIFN5c3RlbVNvdW5kTWFuYWdlci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUzQzA0
MTM4MjU0Q0IzMEQwMDIxRDBFNiAvKiBTeXN0ZW1Tb3VuZERlbGVnYXRlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0MwNDEzMTI1NENBNjY2MDAyMUQw
RTYgLyogU3lzdGVtU291bmREZWxlZ2F0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUUzQzk5QTA5MURDM0Q0MUMwMDc5NEFEMyAvKiBET01KSVRD
aGVja0RPTS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTNDOTlBMDgxREMzRDQxNzAwNzk0QUQzIC8qIERPTUpJVENoZWNrRE9NLmggKi87IH07CisJCUUz
QzlBRUNCMjExMzE0OTkwMDQxOUI5MiAvKiBKU01pY3JvdGFza0NhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M5QUVDOTIxMTMxNDc0MDA0
MTlCOTIgLyogSlNNaWNyb3Rhc2tDYWxsYmFjay5oICovOyB9OworCQlFM0NBMEJGQzI2NzNGNDdD
MDA5RkRENjcgLyogSlNET01CaW5kaW5nU2VjdXJpdHlJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0NBMEJGQTI2NzNGNDc4MDA5RkRENjcg
LyogSlNET01CaW5kaW5nU2VjdXJpdHlJbmxpbmVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTNFNEUyQTgxRTNCMTcxMDAwMjNCQjhBIC8qIFNj
cmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0U0RTJBNjFFM0IxNkZDMDAyM0JCOEEgLyogU2NyaXB0
RWxlbWVudENhY2hlZFNjcmlwdEZldGNoZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlFM0ZBMzg2NDFENzE4MTJEMDBBQTU5NTAgLyogUGVuZGlu
Z1NjcmlwdENsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTNGQTM4NjExRDcxNkU3NjAwQUE1OTUwIC8qIFBlbmRpbmdTY3JpcHRDbGllbnQuaCAq
LzsgfTsKKwkJRTQwMUMyNzUxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRvckFzc2Vy
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0
MDFDMjc0MTdDRTUzRUMwMEM0MUEzNSAvKiBFbGVtZW50SXRlcmF0b3JBc3NlcnRpb25zLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQwMUUwQTQx
QzNDMEI4MzAwRjM0RDEwIC8qIFN0eWxlQ2hhbmdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDAxRTBBMzFDM0MwQjgzMDBGMzREMTAgLyogU3R5bGVD
aGFuZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlFNDAzQjdBMjI1MUIxMTkzMDAxOUU4MDAgLyogTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQwM0I3QTEy
NTFCMTE5MzAwMTlFODAwIC8qIExheW91dEludGVncmF0aW9uQ292ZXJhZ2UuaCAqLzsgfTsKKwkJ
RTQwM0I3QTMyNTFCMTFDMTAwMTlFODAwIC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQzMTJBQjcy
NEIzMjY1NjAwNjc4MzQ5IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5oICovOyB9Owor
CQlFNDE4MDI1NTIzRDQ1NDlCMDBGRkIwNzEgLyogTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDE4MDI1MzIz
RDQ1NDlBMDBGRkIwNzEgLyogTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQxOTA0MUYxQ0M2NDg2QjAw
QzM1RjVEIC8qIEZvbnRTZWxlY3RvckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTQxOTA0MUUxQ0M2NDg2QjAwQzM1RjVEIC8qIEZvbnRTZWxl
Y3RvckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUU0MjA1MDE3MjE0MTkwMUIwMDY2RUYzQiAvKiBQcm9jZXNzV2FybWluZy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQyMDUwMTQyMTQxOTAx
QTAwNjZFRjNCIC8qIFByb2Nlc3NXYXJtaW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQyNEEzOUUxMzMwREYwMTAwQ0Y2REM5IC8qIExlZ2Fj
eVRpbGVHcmlkVGlsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQyNEEzOUQxMzMwREYwMTAwQ0Y2REM5IC8qIExlZ2FjeVRpbGVHcmlkVGlsZS5oICov
OyB9OworCQlFNDI1QTQ5QTE4MjkyQjg0MDAyMENGQ0YgLyogQ29sbGVjdGlvbkluZGV4Q2FjaGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0MjVBNDk5
MTgyOTJCODQwMDIwQ0ZDRiAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0Mjk1RkE0MTJCMDYxNEUwMEQx
QUNFMCAvKiBSZXNvdXJjZUxvYWRQcmlvcml0eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTQyOTVGQTMxMkIwNjE0RTAwRDFBQ0UwIC8qIFJlc291cmNl
TG9hZFByaW9yaXR5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRTQyRTc2REMxQzdBRjc3NjAwRTM2MTREIC8qIFN0eWxlVXBkYXRlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDJFNzZEQjFDN0FGNzc2
MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFNDJFRTNBNzE3NTc2RTU1MDBFRUU4Q0YgLyogRm9udEdlbmVy
aWNGYW1pbGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTQ0RUUzQTcxNzU3NkU1NTAwRUVFOENGIC8qIEZvbnRHZW5lcmljRmFtaWxpZXMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDMxMDVCQjE2
NzUwRjE2MDBEQjJGQjggLyogTm9kZVRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQzMTA1QkExNjc1MEYxNjAwREIyRkI4IC8qIE5vZGVU
cmF2ZXJzYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFNDNBMDIzQjE3RUIzNzBBMDA0Q0REMjUgLyogUmVuZGVyRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQzQTAyM0ExN0VCMzcwQTAw
NENERDI1IC8qIFJlbmRlckVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFNDNBRjhFNzFBQzVCN0VDMDBDQTcxN0UgLyogQ2FjaGVWYWxp
ZGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
NDNBRjhFNTFBQzVCN0REMDBDQTcxN0UgLyogQ2FjaGVWYWxpZGF0aW9uLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQ0MEFBOTYxQzY4NDIwODAw
QTI2NUNDIC8qIEVsZW1lbnRBbmRUZXh0RGVzY2VuZGFudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDQwQUE5NTFDNjg0MjA4MDBBMjY1
Q0MgLyogRWxlbWVudEFuZFRleHREZXNjZW5kYW50SXRlcmF0b3IuaCAqLzsgfTsKKwkJRTQ0MERG
NTYyNkVCNTNFMDAwNEFGMDZCIC8qIFRleHRCb3hQYWludGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDQwREY1NDI2RUI1M0RGMDA0QUYwNkIgLyog
VGV4dEJveFBhaW50ZXIuaCAqLzsgfTsKKwkJRTQ0MEZENTMyNUE0QUZERjAwRjdDODQ5IC8qIFN0
eWxlZE1hcmtlZFRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU0NDBGRDUxMjVBNEFGREYwMEY3Qzg0OSAvKiBTdHlsZWRNYXJrZWRUZXh0LmggKi87
IH07CisJCUU0NDYxM0EyMENENjMzMTAwMEZBREE3NSAvKiBIVE1MQXVkaW9FbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDQ2MTM5MDBDRDYz
MzEwMDBGQURBNzUgLyogSFRNTEF1ZGlvRWxlbWVudC5oICovOyB9OworCQlFNDQ2MTNBNTBDRDYz
MzEwMDBGQURBNzUgLyogSFRNTE1lZGlhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0NjEzOTMwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxN
ZWRpYUVsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlFNDQ2MTNBODBDRDYzMzEwMDBGQURBNzUgLyogSFRNTFNvdXJjZUVsZW1lbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0NDYxMzk2MENE
NjMzMTAwMEZBREE3NSAvKiBIVE1MU291cmNlRWxlbWVudC5oICovOyB9OworCQlFNDQ2MTNBQjBD
RDYzMzEwMDBGQURBNzUgLyogSFRNTFZpZGVvRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0NjEzOTkwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhU
TUxWaWRlb0VsZW1lbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlFNDQ2MTNBRDBDRDYzMzEwMDBGQURBNzUgLyogTWVkaWFFcnJvci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0NjEzOUIwQ0Q2MzMx
MDAwRkFEQTc1IC8qIE1lZGlhRXJyb3IuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFNDQ2MTNCMDBDRDYzMzEwMDBGQURBNzUgLyogVGltZVJhbmdl
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0NjEz
OUUwQ0Q2MzMxMDAwRkFEQTc1IC8qIFRpbWVSYW5nZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDQ2MTNCNjBDRDYzNDRFMDBGQURBNzUgLyog
Vm9pZENhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFNDQ2MTNCNDBDRDYzNDRFMDBGQURBNzUgLyogVm9pZENhbGxiYWNrLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQ0NjEzRTQwQ0Q2ODFB
MjAwRkFEQTc1IC8qIE1lZGlhUGxheWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFNEI0MUUwRDBDQkY5MEJEMDBBRjJFQ0UgLyogTWVkaWFQbGF5ZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDQ2
MTNFQzBDRDY4MUI1MDBGQURBNzUgLyogUHJvZ3Jlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRCNDFFMDIwQ0JGOEVBQTAwQUYyRUNFIC8q
IFByb2dyZXNzRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlFNDQ2MTNFRTBDRDY4MUJCMDBGQURBNzUgLyogSlNQcm9ncmVzc0V2ZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEI0MjM4NjBD
QkZCNzNDMDBBRjJFQ0UgLyogSlNQcm9ncmVzc0V2ZW50LmggKi87IH07CisJCUU0NDYxNDE3MENE
NjgyNjkwMEZBREE3NSAvKiBKU0hUTUxWaWRlb0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0NDYxNDBGMENENjgyNjkwMEZBREE3NSAvKiBK
U0hUTUxWaWRlb0VsZW1lbnQuaCAqLzsgfTsKKwkJRTQ0NjE0MTkwQ0Q2ODI2OTAwRkFEQTc1IC8q
IEpTTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQ0NjE0MTEwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5oICovOyB9Owor
CQlFNDQ2MTQxQjBDRDY4MjY5MDBGQURBNzUgLyogSlNUaW1lUmFuZ2VzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDQ2MTQxMzBDRDY4MjY5MDBGQURB
NzUgLyogSlNUaW1lUmFuZ2VzLmggKi87IH07CisJCUU0NDYxNDM4MENENjg5QzUwMEZBREE3NSAv
KiBKU0hUTUxBdWRpb0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEU0QjQyMzdFMENCRkI3M0MwMEFGMkVDRSAvKiBKU0hUTUxBdWRpb0VsZW1l
bnQuaCAqLzsgfTsKKwkJRTQ0NjE0M0EwQ0Q2ODlDODAwRkFEQTc1IC8qIEpTSFRNTE1lZGlhRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRC
NDIzODAwQ0JGQjczQzAwQUYyRUNFIC8qIEpTSFRNTE1lZGlhRWxlbWVudC5oICovOyB9OworCQlF
NDQ2MTQzQzBDRDY4OUNDMDBGQURBNzUgLyogSlNIVE1MU291cmNlRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRCNDIzNzIwQ0JGQjZFMDAw
QUYyRUNFIC8qIEpTSFRNTFNvdXJjZUVsZW1lbnQuaCAqLzsgfTsKKwkJRTQ0NjE0NTIwQ0Q2OEEz
NTAwRkFEQTc1IC8qIFJlbmRlclZpZGVvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFNEI0MUUzNDBDQkZCNjA5MDBBRjJFQ0UgLyogUmVuZGVyVmlkZW8u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDQ3
RjVCMzI2NkNGNjNEMDAxMzNGMDAgLyogVGV4dEJveFNlbGVjdGFibGVSYW5nZS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0N0Y1QjEyNjZDRjYzRDAw
MTMzRjAwIC8qIFRleHRCb3hTZWxlY3RhYmxlUmFuZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDRCNEJCNDE0MTY1MEQ3MDAyQjFEOEIgLyog
U2VsZWN0b3JDaGVja2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFNDRCNEJCMjE0MTY1MEQ3MDAyQjFEOEIgLyogU2VsZWN0b3JDaGVja2VyLmggKi87
IH07CisJCUU0NEZBMTg1MUJDQTZCNUEwMDkxQjZFRiAvKiBDb21wb3NlZFRyZWVJdGVyYXRvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ0RkExODQx
QkNBNkI1QTAwOTFCNkVGIC8qIENvbXBvc2VkVHJlZUl0ZXJhdG9yLmggKi87IH07CisJCUU0NTFD
NjMxMjM5NDAyNzkwMDk5MzE5MCAvKiBMYXlvdXRVbml0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNkY3MzkxOEMyMTA2Q0VERDAwNkFGMjYyIC8qIExh
eW91dFVuaXRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJRTQ1MUM2MzIyMzk0MDMxQTAwOTkzMTkwIC8qIE1hcmdpblR5cGVzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA2RkU3QUEyNjIxQzM3QjYzMDAy
OTZEQ0QgLyogTWFyZ2luVHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlFNDUxQzYzNDIzOTQwNThGMDA5OTMxOTAgLyogTGF5b3V0SW50ZWdy
YXRpb25JbmxpbmVDb250ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFNDUxQzYzMzIzOTQwNThFMDA5OTMxOTAgLyogTGF5b3V0SW50ZWdyYXRpb25J
bmxpbmVDb250ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRTQ1MzIyQUMxNDBDRTI2NzAwNUEwRjkyIC8qIFNlbGVjdG9yUXVlcnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0NTMyMkFBMTQwQ0Uy
NjcwMDVBMEY5MiAvKiBTZWxlY3RvclF1ZXJ5LmggKi87IH07CisJCUU0NUE2Qzc3MjQxN0JBNTkw
MDZFNENENSAvKiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ1QTZDNzYyNDE3QkE1OTAwNkU0Q0Q1
IC8qIFBzZXVkb0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmggKi87IH07CisJCUU0NUJBNkFBMjM3
NDkyNkMwMDRERkMwNyAvKiBNYXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0NUJBNkE4MjM3NDkyNkIwMDRERkMw
NyAvKiBNYXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuaCAqLzsgfTsKKwkJRTQ1QkE2QjYyMzc2MjJB
MzAwNERGQzA3IC8qIFN0eWxlQWRqdXN0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEU0NUJBNkI1MjM3NjIyOUYwMDRERkMwNyAvKiBTdHlsZUFkanVz
dGVyLmggKi87IH07CisJCUU0NjA1RkVDMjE2NjQ4MDkwMEU1MzA0NiAvKiBQcmV3YXJtSW5mb3Jt
YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0
NjA1RkVBMjE2NjQ4MDgwMEU1MzA0NiAvKiBQcmV3YXJtSW5mb3JtYXRpb24uaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDYxODAyRDFDOEREMjkw
MDAyNkMwMkMgLyogU3R5bGVSZWxhdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEU0NjE4MDJDMUM4REQyOTAwMDI2QzAyQyAvKiBTdHlsZVJlbGF0
aW9ucy5oICovOyB9OworCQlFNDYxRDY1RjFCQjBDODBEMDBDQjU2NDUgLyogU3R5bGVTY29wZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ2MUQ2NUUx
QkIwQzgwRDAwQ0I1NjQ1IC8qIFN0eWxlU2NvcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNDYyQTRBMTExM0U3MUJFMDA0QTQyMjAgLyogSW50
UG9pbnRIYXNoLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFNDYyQTRBMDExM0U3MUJFMDA0QTQyMjAgLyogSW50UG9pbnRIYXNoLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQ2QTJCMUMxN0NBNjVCOTAw
MERCQ0Q4IC8qIFR5cGVkRWxlbWVudERlc2NlbmRhbnRJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ2QTJCMUIxN0NBNjVCOTAwMERCQ0Q4
IC8qIFR5cGVkRWxlbWVudERlc2NlbmRhbnRJdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0NkEyQjFFMTdDQTc2QjEwMDBEQkNEOCAv
KiBFbGVtZW50Q2hpbGRJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTQ2QTJCMUQxN0NBNzZCMTAwMERCQ0Q4IC8qIEVsZW1lbnRDaGlsZEl0
ZXJhdG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJRTQ2QjQxRjkxQ0IyNEU3MDAwOEYxMURFIC8qIFNjcmlwdERpc2FsbG93ZWRTY29wZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ2QjQxRjgxQ0Iy
NEU3MDAwOEYxMURFIC8qIFNjcmlwdERpc2FsbG93ZWRTY29wZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0NkM3OTRCMUYxM0U4MkIwMEYzNzFF
MSAvKiBTdHlsZUludmFsaWRhdGlvbkZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBMTgyMkYxRjEzQkU1ODAwRkVGNjk4IC8qIFN0eWxl
SW52YWxpZGF0aW9uRnVuY3Rpb25zLmggKi87IH07CisJCUU0NzEyN0NCMTYzNDM4QUUwMEVENkY1
QSAvKiBTdHlsZUludmFsaWRhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFNDdBOTdDRjE2MzA1OUZDMDA1RENEOTkgLyogU3R5bGVJbnZhbGlkYXRv
ci5oICovOyB9OworCQlFNDc3OEI4MDExNUE1ODFBMDBCNUQzNzIgLyogSlNDdXN0b21FdmVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ3NzhCN0Ux
MTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuaCAqLzsgfTsKKwkJRTQ3QTNBQzYxQzVF
QUM5RDAwQ0NCRkE3IC8qIFN0eWxlU2hhcmluZ1Jlc29sdmVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDdBM0FDNDFDNUVBQzc5MDBDQ0JGQTcgLyog
U3R5bGVTaGFyaW5nUmVzb2x2ZXIuaCAqLzsgfTsKKwkJRTQ3QjRCRTgwRTcxMjQxNjAwMDM4ODU0
IC8qIENhY2hlZFJlc291cmNlSGFuZGxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFNDdCNEJFNjBFNzEyNDE2MDAwMzg4NTQgLyogQ2FjaGVkUmVzb3Vy
Y2VIYW5kbGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFNDdDMzkyRDFGRTZFMEYzMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0N0MzOTJBMUZFNkUw
REUwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlci5oICovOyB9OworCQlFNDdDMzkyRTFGRTZF
MEY3MDBCQkJDNkIgLyogUmVuZGVyVHJlZVBvc2l0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDdDMzkyNDFGRTZFMERCMDBCQkJDNkIgLyogUmVu
ZGVyVHJlZVBvc2l0aW9uLmggKi87IH07CisJCUU0N0MzOTJGMUZFNkUwRjkwMEJCQkM2QiAvKiBS
ZW5kZXJUcmVlVXBkYXRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTQ3QzM5MkMxRkU2RTBERjAwQkJCQzZCIC8qIFJlbmRlclRyZWVVcGRhdGVyLmgg
Ki87IH07CisJCUU0N0MzOTMwMUZFNkUwRkQwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlckZp
cnN0TGV0dGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFNDdDMzkyNjFGRTZFMERDMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXJGaXJzdExldHRl
ci5oICovOyB9OworCQlFNDdDMzkzMTFGRTZFMTAyMDBCQkJDNkIgLyogUmVuZGVyVHJlZVVwZGF0
ZXJHZW5lcmF0ZWRDb250ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFNDdDMzkyNTFGRTZFMERCMDBCQkJDNkIgLyogUmVuZGVyVHJlZVVwZGF0ZXJH
ZW5lcmF0ZWRDb250ZW50LmggKi87IH07CisJCUU0N0MzOTMyMUZFNkUxMDUwMEJCQkM2QiAvKiBS
ZW5kZXJUcmVlQnVpbGRlckxpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEU0N0MzOTI4MUZFNkUwREQwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRl
ckxpc3QuaCAqLzsgfTsKKwkJRTQ3QzM5MzMxRkU2RTEwODAwQkJCQzZCIC8qIFJlbmRlclRyZWVC
dWlsZGVyTXVsdGlDb2x1bW4uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU0N0MzOTI3MUZFNkUwREMwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlck11
bHRpQ29sdW1uLmggKi87IH07CisJCUU0N0UyNzY1MTYwMzZFRDIwMEVFMkFGQiAvKiBFeHRlbnNp
b25TdHlsZVNoZWV0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQ3RTI3NjQxNjAzNkVEMjAwRUUyQUZCIC8qIEV4dGVuc2lvblN0eWxlU2hlZXRzLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTQ3RkM4
QTMyNUI4NEQ3MjAwNTQ5NUZDIC8qIExvYWRTY2hlZHVsaW5nTW9kZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQ3RkM4QTEyNUI4NEQ3MTAwNTQ5NUZD
IC8qIExvYWRTY2hlZHVsaW5nTW9kZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUU0ODEzN0I5MURCM0I1MjYwMDVDNTlCRiAvKiBTdHlsZVZhbGlk
aXR5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDgx
MzdCODFEQjNCNTI2MDA1QzU5QkYgLyogU3R5bGVWYWxpZGl0eS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0ODYzQ0ZFMjM4NDJFOUUwMDk3MjE1
OCAvKiBSdWxlRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQ4NjNDRkQyMzg0MkU5RTAwOTcyMTU4IC8qIFJ1bGVEYXRhLmggKi87IH07CisJCUU0
OTQ2RUFGMTU2RTY0REQwMEQzMjk3RiAvKiBTdHlsZVJ1bGVJbXBvcnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0OTQ2RUFEMTU2RTY0REQwMEQzMjk3
RiAvKiBTdHlsZVJ1bGVJbXBvcnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlFNDlCRDlGQTEzMUZEMkVEMDAzQzU2RjAgLyogQ1NTVmFsdWVQb29s
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDlCRDlG
OTEzMUZEMkVEMDAzQzU2RjAgLyogQ1NTVmFsdWVQb29sLmggKi87IH07CisJCUU0QTY2NENDMjUy
MUQ0QUYwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEE2NjRDNjI1MjFCNzc4MDA3
MDgxREMgLyogTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0QTY2NENFMjUyMUQ0QzkwMDcwODFE
QyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBNjY0QzQyNTIxQjc3NzAwNzA4
MURDIC8qIExheW91dEludGVncmF0aW9uUnVuSXRlcmF0b3JNb2Rlcm5QYXRoLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTRBNjY0Q0YyNTIxRDRF
MjAwNzA4MURDIC8qIExheW91dEludGVncmF0aW9uUnVuSXRlcmF0b3JMZWdhY3lQYXRoLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEE2NjRDNTI1MjFC
Nzc4MDA3MDgxREMgLyogTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvckxlZ2FjeVBhdGguaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNEE3OTk1
MjIwRUU0QjE0MDBDMTk1NjggLyogQ1NTUGFyc2VyQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBNzk5NEUyMEVFNEFFMTAwQzE5NTY4IC8q
IENTU1BhcnNlckNvbnRleHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlFNEE4MTRENDFDNkRFQzQwMDBCRjg1QUMgLyogQ2xhc3NDaGFuZ2VJbnZh
bGlkYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEU0QTgxNEQzMUM2REVDNDAwMEJGODVBQyAvKiBDbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oICov
OyB9OworCQlFNEE4MTREQTFDNzBFMTBEMDBCRjg1QUMgLyogQXR0cmlidXRlQ2hhbmdlSW52YWxp
ZGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
NEE4MTREOTFDNzBFMTBEMDBCRjg1QUMgLyogQXR0cmlidXRlQ2hhbmdlSW52YWxpZGF0aW9uLmgg
Ki87IH07CisJCUU0QTgxNEUwMUM3MzM4RUIwMEJGODVBQyAvKiBJZENoYW5nZUludmFsaWRhdGlv
bi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBODE0
REYxQzczMzhFQjAwQkY4NUFDIC8qIElkQ2hhbmdlSW52YWxpZGF0aW9uLmggKi87IH07CisJCUU0
QThEMjE2MjI1NzhEQjcwMEE4NDYzQyAvKiBFdmVudFJlZ2lvbi5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBOEQyMTQyMjU3OERBMDAwQTg0NjNDIC8q
IEV2ZW50UmVnaW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRTRBQkFCREQyMzYwODhGRTAwRkE0MzQ1IC8qIExheW91dEludGVncmF0aW9uTGlu
ZUxheW91dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTRBQkFCREIyMzYwODhGRDAwRkE0MzQ1IC8qIExheW91dEludGVncmF0aW9uTGluZUxheW91dC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0QUJB
QkU0MjM2MUEzMjkwMEZBNDM0NSAvKiBQcm9wZXJ0eUNhc2NhZGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0QUJBQkUyMjM2MUEzMjkwMEZBNDM0NSAv
KiBQcm9wZXJ0eUNhc2NhZGUuaCAqLzsgfTsKKwkJRTRBQkFCRjMyMzY4Qjk1OTAwRkE0MzQ1IC8q
IFN0eWxlQnVpbGRlclN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFNEFCQUJGMjIzNjhCOTU4MDBGQTQzNDUgLyogU3R5bGVCdWlsZGVyU3RhdGUu
aCAqLzsgfTsKKwkJRTRBQkFCRjUyMzY4QzZFRjAwRkE0MzQ1IC8qIENhc2NhZGVMZXZlbC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBQkFCRjQyMzY4
QzZFRjAwRkE0MzQ1IC8qIENhc2NhZGVMZXZlbC5oICovOyB9OworCQlFNEFCQUMwNDIzNkFFOTU5
MDBGQTQzNDUgLyogU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEFCQUMwMjIzNkFFOTU4MDBGQTQzNDUgLyogU3R5
bGVCdWlsZGVyR2VuZXJhdGVkLmggKi87IH07CisJCUU0QUJBQzA2MjM2QjAxNkQwMEZBNDM0NSAv
KiBTdHlsZUJ1aWxkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU0QUJBQzA1MjM2QjAxNkMwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXIuaCAqLzsgfTsK
KwkJRTRBRTdDMTYxN0QxQkI5NTAwMDlGQjMxIC8qIEVsZW1lbnRJdGVyYXRvci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBRTdDMTUxN0QxQkI5NTAw
MDlGQjMxIC8qIEVsZW1lbnRJdGVyYXRvci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUU0QUU3QzFBMTdEMjMyMzUwMDA5RkIzMSAvKiBFbGVtZW50
QW5jZXN0b3JJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTRBRTdDMTkxN0QyMzIzNTAwMDlGQjMxIC8qIEVsZW1lbnRBbmNlc3Rvckl0ZXJh
dG9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJ
RTRBRkNGQTUwREFGMjlBMzAwRjVGNTVDIC8qIFVuaXRCZXppZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0QUZDRkE0MERBRjI5QTMwMEY1RjU1QyAv
KiBVbml0QmV6aWVyLmggKi87IH07CisJCUU0QUZEMDBDMERBRjMzNTQwMEY1RjU1QyAvKiBTTUlM
VGltZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRB
RkQwMDYwREFGMzM1NDAwRjVGNTVDIC8qIFNNSUxUaW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTRBRkQwMEUwREFGMzM1NTAwRjVGNTVDIC8q
IFNNSUxUaW1lQ29udGFpbmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFNEFGRDAwODBEQUYzMzU0MDBGNUY1NUMgLyogU01JTFRpbWVDb250YWluZXIu
aCAqLzsgfTsKKwkJRTRBRkQwMTAwREFGMzM1NTAwRjVGNTVDIC8qIFNWR1NNSUxFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEFGRDAwQTBE
QUYzMzU0MDBGNUY1NUMgLyogU1ZHU01JTEVsZW1lbnQuaCAqLzsgfTsKKwkJRTRCNjVBNTgxMzJG
QThFNzAwNzBFN0JFIC8qIExlZ2FjeVRpbGVHcmlkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEI2NUE1NzEzMkZBOEU3MDA3MEU3QkUgLyogTGVnYWN5
VGlsZUdyaWQuaCAqLzsgfTsKKwkJRTRCNjVBNUMxMzJGQUNCMDAwNzBFN0JFIC8qIExlZ2FjeVRp
bGVMYXllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTRCNjVBNUIxMzJGQUNCMDAwNzBFN0JFIC8qIExlZ2FjeVRpbGVMYXllci5oICovOyB9OworCQlF
NEJBNTA5MDFCQ0ZCRDk1MDBFMzRFRjcgLyogQ29tcG9zZWRUcmVlQW5jZXN0b3JJdGVyYXRvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRCQTUwOEYx
QkNGQkQ5NTAwRTM0RUY3IC8qIENvbXBvc2VkVHJlZUFuY2VzdG9ySXRlcmF0b3IuaCAqLzsgfTsK
KwkJRTRCQkVEMEYxNEY0MDI1RDAwM0YwQjk4IC8qIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRC
QkVEMEQxNEY0MDI1RDAwM0YwQjk4IC8qIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbi5o
ICovOyB9OworCQlFNEJCRUQ0RDE0RkNEQkExMDAzRjBCOTggLyogU3R5bGVSdWxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEJCRUQ0QjE0RkNEQkEx
MDAzRjBCOTggLyogU3R5bGVSdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJRTRDMTc4OUIwRUU2OTAzODAwODI0RDY5IC8qIENTU1NlbGVjdG9y
TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRD
MTc4OTYwRUU2OTAzODAwODI0RDY5IC8qIENTU1NlbGVjdG9yTGlzdC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0QzI3OTU5MENGOTc0MTkwMEU5
N0I5OCAvKiBSZW5kZXJNZWRpYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTRDMjc5NTcwQ0Y5NzQxOTAwRTk3Qjk4IC8qIFJlbmRlck1lZGlhLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTRDM0IxRkEw
RjBFNDE2MTAwOTY5M0Y2IC8qIExlZ2FjeVRpbGVDYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRDM0IxRjkwRjBFNDE2MTAwOTY5M0Y2IC8qIExl
Z2FjeVRpbGVDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUU0QzkxQTBFMTgwMjM0MzEwMEExN0Y2RCAvKiBUZXh0UGFpbnRTdHlsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRDOTFBMEQxODAy
MzQzMTAwQTE3RjZEIC8qIFRleHRQYWludFN0eWxlLmggKi87IH07CisJCUU0QzkxQTE2MTgwOTk5
RjEwMEExN0Y2RCAvKiBSZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEM5MUExNTE4MDk5OUYxMDBBMTdGNkQgLyogUmVu
ZGVyVGV4dExpbmVCb3hlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUU0RDMzRjNCMjUyQUVFQ0QwMDgzN0QwNSAvKiBJbmxpbmVSdW5BbmRPZmZz
ZXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0RDMz
RjM5MjUyQUVFQ0MwMDgzN0QwNSAvKiBJbmxpbmVSdW5BbmRPZmZzZXQuaCAqLzsgfTsKKwkJRTRE
MzNGNDEyNTJDNEI4MzAwODM3RDA1IC8qIExheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEQzM0YzRjI1
MkM0QjgyMDA4MzdEMDUgLyogTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3IuaCAqLzsgfTsK
KwkJRTREMzNGNDQyNTJDNTBFMjAwODM3RDA1IC8qIExheW91dEludGVncmF0aW9uTGluZUl0ZXJh
dG9yTGVnYWN5UGF0aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTREMzNGNDMyNTJDNTBFMjAwODM3RDA1IC8qIExheW91dEludGVncmF0aW9uTGluZUl0
ZXJhdG9yTGVnYWN5UGF0aC5oICovOyB9OworCQlFNEQzM0Y0NjI1MkM1MEZDMDA4MzdEMDUgLyog
TGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEQzM0Y0NTI1MkM1MEZCMDA4MzdEMDUg
LyogTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3JNb2Rlcm5QYXRoLmggKi87IH07CisJCUU0
RDU4RUI1MTdCNERCREMwMENCRENBOCAvKiBTdHlsZVJlc29sdmVGb3JEb2N1bWVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRENThFQjMxN0I0REJE
QzAwQ0JEQ0E4IC8qIFN0eWxlUmVzb2x2ZUZvckRvY3VtZW50LmggKi87IH07CisJCUU0RDU4RUI5
MTdCNEVEODkwMENCRENBOCAvKiBTdHlsZUZvbnRTaXplRnVuY3Rpb25zLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEQ1OEVCNzE3QjRFRDg5MDBDQkRD
QTggLyogU3R5bGVGb250U2l6ZUZ1bmN0aW9ucy5oICovOyB9OworCQlFNEQ1OEVCQjE3QjhGMTI4
MDBDQkRDQTggLyogRWxlbWVudFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTRENThFQkExN0I4RjEyODAwQ0JEQ0E4IC8qIEVsZW1lbnRU
cmF2ZXJzYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFNEQ2OEVCNTE3QjREQkRDMDBDQkRDQTggLyogU3R5bGVSZXNvbHZlRm9yRm9udFJhdy5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRENjhFQjMx
N0I0REJEQzAwQ0JEQ0E4IC8qIFN0eWxlUmVzb2x2ZUZvckZvbnRSYXcuaCAqLzsgfTsKKwkJRTRE
ODZFNkQyNjQwMzk0QzAwQjYyNDI1IC8qIFN0eWxlU2NvcGVPcmRpbmFsLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEQ4NkU2QjI2NDAzOTRDMDBCNjI0
MjUgLyogU3R5bGVTY29wZU9yZGluYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFNEQ5ODhCNDE3QkZEMUY2MDA4NEZCODggLyogVGV4dE5vZGVU
cmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEU0RDk4OEIzMTdCRkQxRjYwMDg0RkI4OCAvKiBUZXh0Tm9kZVRyYXZlcnNhbC5oICovOyB9Owor
CQlFNERBQ0U2QTFEMTJFMTBCMDA3NTk4MEYgLyogU3R5bGVQZW5kaW5nUmVzb3VyY2VzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNERBQ0U2OTFEMTJF
MTBCMDA3NTk4MEYgLyogU3R5bGVQZW5kaW5nUmVzb3VyY2VzLmggKi87IH07CisJCUU0REVBQTE4
MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRERUFBMTYxN0E5M0RDMzAwMEUwNDMwIC8q
IFN0eWxlVHJlZVJlc29sdmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJRTRFMzlBRkIxMzMwRUZBODAwM0FCMjc0IC8qIExlZ2FjeVRpbGVMYXll
clBvb2wuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0
RTM5QUZBMTMzMEVGQTgwMDNBQjI3NCAvKiBMZWdhY3lUaWxlTGF5ZXJQb29sLmggKi87IH07CisJ
CUU0RThCNEVDMjE2Qjc5RTUwMEI4ODM0RCAvKiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRFOEI0RUEy
MTZCNzlFNTAwQjg4MzREIC8qIFN5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmggKi87IH07CisJ
CUU0RThCNEY1MjE2Qjk1NjUwMEI4ODM0RCAvKiBGb250Q2FzY2FkZURlc2NyaXB0aW9uLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEU4QjRGMjIxNkI4
QjYwMDBCODgzNEQgLyogRm9udENhc2NhZGVEZXNjcmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0RTk0RDYxMjJGRjE1OEEwMEREMTkx
RiAvKiBMZWdhY3lMaW5lTGF5b3V0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBFNEExQUM3ODIyRkFGRDUwMDAxN0I3NUIgLyogTGVnYWN5TGluZUxheW91
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU0
RjBCRTMxMjU3MTJGNkUwMDlFNzQzMSAvKiBDYXJldFJlY3RDb21wdXRhdGlvbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRGMEJFMkUyNTcxMEE3NTAw
OUU3NDMxIC8qIENhcmV0UmVjdENvbXB1dGF0aW9uLmggKi87IH07CisJCUU0RjM4RDFCMjYyNkYx
M0IwMDdCMTA2NCAvKiBEZWZhdWx0UmVzb3VyY2VMb2FkUHJpb3JpdHkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0RjM4RDE5MjYyNkYxM0IwMDdCMTA2
NCAvKiBEZWZhdWx0UmVzb3VyY2VMb2FkUHJpb3JpdHkuaCAqLzsgfTsKKwkJRTRGOUVFRjMxNTZE
QTAwNzAwRDIzRTdFIC8qIFN0eWxlU2hlZXRDb250ZW50cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRGOUVFRjExNTZEODRDNDAwRDIzRTdFIC8qIFN0
eWxlU2hlZXRDb250ZW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUU1MDYyMDg0MjU0MDkxOUMwMEM0MzA5MSAvKiBDb250YWN0c1JlcXVlc3RE
YXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNTA2
MjA4MzI1NDA5MTlCMDBDNDMwOTEgLyogQ29udGFjdHNSZXF1ZXN0RGF0YS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU1MTY2OTkxMjBGRjk5MTgw
MDlEMkMyNyAvKiBMaXN0QnV0dG9uQXJyb3dAMngucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNTE2Njk4RjIwRkY5OTE2MDA5RDJDMjcgLyogTGlz
dEJ1dHRvbkFycm93QDJ4LnBuZyAqLzsgfTsKKwkJRTUxNzY3MDMyMEI4OEMxNDAwRDQxMTY3IC8q
IERhdGFMaXN0U3VnZ2VzdGlvbkluZm9ybWF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNTE3NjcwMjIwQjg4QzE0MDBENDExNjcgLyogRGF0YUxp
c3RTdWdnZXN0aW9uSW5mb3JtYXRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OworCQlFNTFENkExRjI0RTFFMjU1MDA4OTFDRkEgLyogRGF0ZVRpbWVG
aWVsZHNTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTUxRDZBMUQyNEUxRTI1NTAwODkxQ0ZBIC8qIERhdGVUaW1lRmllbGRzU3RhdGUuaCAqLzsg
fTsKKwkJRTUyQ0Y1NEQyMEEyNjhBQzAwREFEQTI3IC8qIERhdGFMaXN0U3VnZ2VzdGlvbnNDbGll
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1MkNG
NTRDMjBBMjY4QUMwMERBREEyNyAvKiBEYXRhTGlzdFN1Z2dlc3Rpb25zQ2xpZW50LmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRTUyQ0Y1NEYyMEEz
NUEyODAwREFEQTI3IC8qIERhdGFMaXN0U3VnZ2VzdGlvblBpY2tlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTUyQ0Y1NEUyMEEzNUEyODAwREFEQTI3
IC8qIERhdGFMaXN0U3VnZ2VzdGlvblBpY2tlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCUU1MkVGREY0MjExMjg3NUEwMEFEMjgyQSAvKiBJbnB1
dE1vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1
MkVGREYyMjExMjg3NUEwMEFEMjgyQSAvKiBJbnB1dE1vZGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNThCNDVCQTIwQUQwN0REMDA5OTEwMjUg
LyogRGF0YUxpc3RCdXR0b25FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFNThCNDVCODIwQUQwN0REMDA5OTEwMjUgLyogRGF0YUxpc3RCdXR0
b25FbGVtZW50LmggKi87IH07CisJCUU1OTZERDI5MjUxOTAzRDIwMEMyNzVBNyAvKiBOYXZpZ2F0
b3JDb250YWN0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTU5NkREMjYyNTE5MDNEMTAwQzI3NUE3IC8qIE5hdmlnYXRvckNvbnRhY3RzLmggKi87IH07
CisJCUU1OTZERDMwMjUxOTAzRUYwMEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1OTZERDJEMjUxOTAzRUYw
MEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuaCAqLzsgfTsKKwkJRTU5NkREMzUyNTE5MDQxNDAw
QzI3NUE3IC8qIENvbnRhY3RzU2VsZWN0T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTU5NkREMzMyNTE5MDQxNDAwQzI3NUE3IC8qIENvbnRh
Y3RzU2VsZWN0T3B0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUU1OTZERDU4MjUxQkFDNEEwMEMyNzVBNyAvKiBDb250YWN0UHJvcGVydHku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1OTZERDU2
MjUxQkFDNEEwMEMyNzVBNyAvKiBDb250YWN0UHJvcGVydHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFNTk2REQ1RDI1MUJCMDgyMDBDMjc1QTcg
LyogQ29udGFjdEluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU1OTZERDVCMjUxQkIwODIwMEMyNzVBNyAvKiBDb250YWN0SW5mby5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU1OURENEI4MjEwOTgy
ODcwMDNDOEI0NyAvKiBMaXN0QnV0dG9uQXJyb3cucG5nIGluIFJlc291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNTlERDRCNzIxMDk4Mjg1MDAzQzhCNDcgLyogTGlz
dEJ1dHRvbkFycm93LnBuZyAqLzsgfTsKKwkJRTVCQTdENjMxNTE0MzdDQTAwRkUxRTNGIC8qIExl
bmd0aEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTVCQTdENjIxNTE0MzdDQTAwRkUxRTNGIC8qIExlbmd0aEZ1bmN0aW9ucy5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU1QzU5QTlBMjRE
MEUxQUEwMDNCODZFMSAvKiBEYXRlVGltZUNob29zZXJQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNUM1OUE5OTI0RDBFMUFBMDAzQjg2
RTEgLyogRGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUU1RjA2QUU3MjRENDg0N0IwMEJCQzRGOCAvKiBE
YXRlVGltZUZpZWxkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTVGMDZBRTUyNEQ0ODQ3QjAwQkJDNEY4IC8qIERhdGVUaW1lRmllbGRFbGVt
ZW50LmggKi87IH07CisJCUU1RjA2QUVCMjRENDlCRjcwMEJCQzRGOCAvKiBEYXRlVGltZU51bWVy
aWNGaWVsZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU1RjA2QUU5MjRENDlCRjcwMEJCQzRGOCAvKiBEYXRlVGltZU51bWVyaWNGaWVsZEVs
ZW1lbnQuaCAqLzsgfTsKKwkJRTVGMDZBRUYyNEQ0QTYzNzAwQkJDNEY4IC8qIERhdGVUaW1lU3lt
Ym9saWNGaWVsZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEU1RjA2QUVEMjRENEE2MzcwMEJCQzRGOCAvKiBEYXRlVGltZVN5bWJvbGljRmll
bGRFbGVtZW50LmggKi87IH07CisJCUU1RjA2QUYzMjRENEFBRTQwMEJCQzRGOCAvKiBEYXRlVGlt
ZUZpZWxkRWxlbWVudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU1RjA2QUYxMjRENEFBRTQwMEJCQzRGOCAvKiBEYXRlVGltZUZpZWxkRWxlbWVudHMu
aCAqLzsgfTsKKwkJRTVGMDZBRjcyNEQ0QkI1NjAwQkJDNEY4IC8qIERhdGVUaW1lRWRpdEVsZW1l
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1RjA2
QUY1MjRENEJCNTYwMEJCQzRGOCAvKiBEYXRlVGltZUVkaXRFbGVtZW50LmggKi87IH07CisJCUU3
MTQ2N0IzMjRBQkFFRjIwMEZCMkY1MCAvKiBBdWRpb05vZGVPcHRpb25zLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNzE0NjdCMTI0QUJBRUYxMDBGQjJG
NTAgLyogQXVkaW9Ob2RlT3B0aW9ucy5oICovOyB9OworCQlFNzE0NjdCNjI0QUJBRjFEMDBGQjJG
NTAgLyogUGFubmVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTcxNDY3QjUyNEFCQUYxRDAwRkIyRjUwIC8qIFBhbm5lck9wdGlvbnMuaCAq
LzsgfTsKKwkJRTc1NUU4OTIyNEM3NDM0QjAwOUY3QzIzIC8qIFBlcmlvZGljV2F2ZUNvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNzU1
RTg4RjI0Qzc0MzRCMDA5RjdDMjMgLyogUGVyaW9kaWNXYXZlQ29uc3RyYWludHMuaCAqLzsgfTsK
KwkJRTc1NUU4OTkyNEM3NDYxRDAwOUY3QzIzIC8qIFBlcmlvZGljV2F2ZU9wdGlvbnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU3NTVFODk2MjRDNzQ2
MUQwMDlGN0MyMyAvKiBQZXJpb2RpY1dhdmVPcHRpb25zLmggKi87IH07CisJCUU3NTVFOEIzMjRD
QTI3MUUwMDlGN0MyMyAvKiBPc2NpbGxhdG9yT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTc1NUU4QUYyNENBMjcwQTAwOUY3QzIzIC8qIE9z
Y2lsbGF0b3JPcHRpb25zLmggKi87IH07CisJCUU3ODVEOTE1MjRCNEQxQ0EwMDE0REIyMSAvKiBD
aGFubmVsQ291bnRNb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFNzg1RDkxMTI0QjREMUIxMDAxNERCMjEgLyogQ2hhbm5lbENvdW50TW9kZS5oICov
OyB9OworCQlFNzg1RDkzNDI0QjYzNkZGMDAxNERCMjEgLyogQ2hhbm5lbEludGVycHJldGF0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNzg1RDkz
MTI0QjYzNkZGMDAxNERCMjEgLyogQ2hhbm5lbEludGVycHJldGF0aW9uLmggKi87IH07CisJCUU3
ODVEOTYxMjRCN0Y3MzUwMDE0REIyMSAvKiBBdWRpb0NvbnRleHRPcHRpb25zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNzg1RDk1RjI0QjdGNzM0MDAx
NERCMjEgLyogQXVkaW9Db250ZXh0T3B0aW9ucy5oICovOyB9OworCQlFNzg1RDk2MjI0QjdGNzM1
MDAxNERCMjEgLyogQXVkaW9Db250ZXh0TGF0ZW5jeUNhdGVnb3J5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNzg1RDk2MDI0QjdGNzM0MDAxNERCMjEg
LyogQXVkaW9Db250ZXh0TGF0ZW5jeUNhdGVnb3J5LmggKi87IH07CisJCUU3QzhFMTFCMjREQ0FC
RjMwMDI3QTI3RiAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudEluaXQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU3QzhFMTE4MjREQ0FCRjMwMDI3QTI3RiAv
KiBBdWRpb1Byb2Nlc3NpbmdFdmVudEluaXQuaCAqLzsgfTsKKwkJRTdDOEUxMzcyNEUyRkJDRTAw
MjdBMjdGIC8qIENvbnN0YW50U291cmNlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTdDOEUxMzMyNEUyRkE3QzAwMjdBMjdGIC8qIENvbnN0
YW50U291cmNlT3B0aW9ucy5oICovOyB9OworCQlFN0M4RTEzQjI0RTJGRTdFMDAyN0EyN0YgLyog
Q29uc3RhbnRTb3VyY2VOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFN0M4RTEzODI0RTJGRTY1MDAyN0EyN0YgLyogQ29uc3RhbnRTb3VyY2VOb2Rl
LmggKi87IH07CisJCUU3Q0Y4NEE5MjRDNjQ2MUMwMEIwNkI5MCAvKiBPZmZsaW5lQXVkaW9Db250
ZXh0T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTdDRjg0QTUyNEM2MzVGNDAwQjA2QjkwIC8qIE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25z
LmggKi87IH07CisJCUU3RTAzNTcyMjRENEUxOTYwMDhERkVGQiAvKiBBbmFseXNlck9wdGlvbnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU3RTAzNTcx
MjRENEUxOTEwMDhERkVGQiAvKiBBbmFseXNlck9wdGlvbnMuaCAqLzsgfTsKKwkJRTdGQkU3QzIy
NEVCMkZCMDAwQTE4RTYyIC8qIFN0ZXJlb1Bhbm5lck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU3RkJFN0MxMjRFQjJGQUIwMEExOEU2MiAvKiBT
dGVyZW9QYW5uZXJOb2RlLmggKi87IH07CisJCUU3RkJFN0MzMjRFQjJGQjYwMEExOEU2MiAvKiBT
dGVyZW9QYW5uZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFN0ZCRTdDMDI0RUIyRkFCMDBBMThFNjIgLyogU3RlcmVvUGFubmVyT3B0aW9u
cy5oICovOyB9OworCQlFQkU1QjIyNjI0NUEyNkVGMDAzQTVBODggLyogU1FMaXRlU3RhdGVtZW50
QXV0b1Jlc2V0U2NvcGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEVCRTVCMjI0MjQ1QTI2RUUwMDNBNUE4OCAvKiBTUUxpdGVTdGF0ZW1lbnRBdXRvUmVz
ZXRTY29wZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUVCRjUxMjFDMTY5NjQ5NkMwMDU2QkQyNSAvKiBKU1R5cGVDb252ZXJzaW9ucy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFQkY1MTIxQTE2OTY0
OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuY3BwICovOyB9OworCQlFQkY1MTIxRDE2
OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEVCRjUxMjFCMTY5NjQ5NkMwMDU2QkQyNSAvKiBK
U1R5cGVDb252ZXJzaW9ucy5oICovOyB9OworCQlFQ0E2ODBDNzFFNjc3MjQ1MDA3MzFEMjAgLyog
U3RyaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFQ0E2ODBDNjFFNjc3MjQ1MDA3MzFEMjAgLyogU3RyaW5nVXRpbGl0aWVzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRUQyQkE4M0Mw
OUEyNEI5MTAwNkMwQUM0IC8qIERvY3VtZW50TWFya2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFRDJCQTgzQjA5QTI0QjkxMDA2QzBBQzQgLyogRG9j
dW1lbnRNYXJrZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlFREUzQTUwMDBDN0E0MzA2MDA5NTZBMzcgLyogQ29sb3JNYWMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEVERTNBNEZGMEM3QTQzMDYwMDk1
NkEzNyAvKiBDb2xvck1hYy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUVERUM5ODAzMEFFRDdFMTcwMDU5MTM3RiAvKiBXZWJDb3JlUHJlZml4Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFREVDOTgwMjBB
RUQ3RTE3MDA1OTEzN0YgLyogV2ViQ29yZVByZWZpeC5oICovOyB9OworCQlFRkNDNkM4RjIwRkU5
MTQ0MDBBMjMyMUIgLyogQ2FudmFzQWN0aXZpdHlSZWNvcmQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEVGQ0M2QzhEMjBGRTkxNDAwMEEyMzIxQiAvKiBD
YW52YXNBY3Rpdml0eVJlY29yZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUYxMjE3MUY2MTZBOENGMEIwMDAwNTNDQSAvKiBXZWJWVFRFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGMTIxNzFG
NDE2QThCQzYzMDAwMDUzQ0EgLyogV2ViVlRURWxlbWVudC5oICovOyB9OworCQlGMzJCRENEOTIz
NjNBQUNBMDA3M0I2QUUgLyogVXNlckdlc3R1cmVFbXVsYXRpb25TY29wZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjMyQkRDRDcyMzYzQUFDQTAwNzNC
NkFFIC8qIFVzZXJHZXN0dXJlRW11bGF0aW9uU2NvcGUuaCAqLzsgfTsKKwkJRjM0NEM3MTQxMTI1
QjgyQzAwRjI2RUVFIC8qIEluc3BlY3RvckZyb250ZW5kQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGMzQ0QzcxMjExMjVCODJDMDBGMjZFRUUg
LyogSW5zcGVjdG9yRnJvbnRlbmRDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlGMzQ0Qzc1MzExMjk0RDlEMDBGMjZFRUUgLyogSW5zcGVj
dG9yRnJvbnRlbmRDbGllbnRMb2NhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjM0NEM3NTIxMTI5NEQ5RDAwRjI2RUVFIC8qIEluc3BlY3RvckZyb250
ZW5kQ2xpZW50TG9jYWwuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OworCQlGM0FCRkUwQzEzMEU5REEwMDBFN0Y3RDEgLyogSW5zdHJ1bWVudGluZ0FnZW50
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjNBQkZF
MEIxMzBFOURBMDAwRTdGN0QxIC8qIEluc3RydW1lbnRpbmdBZ2VudHMuaCAqLzsgfTsKKwkJRjNE
NDYxNDkxMTYxRDUzMjAwQ0EwRDA5IC8qIEpTRXJyb3JIYW5kbGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGM0Q0NjE0NzExNjFENTMyMDBDQTBEMDkg
LyogSlNFcnJvckhhbmRsZXIuaCAqLzsgfTsKKwkJRjQwM0U3ODcyMzYzQjU4QzAwMDQ0NTUwIC8q
IEVudGVyS2V5SGludC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRjQwM0U3ODUyMzYzQjU4QzAwMDQ0NTUwIC8qIEVudGVyS2V5SGludC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0MERBQUVDMjVEOUYy
NUUwMDExQjRGQSAvKiBQYXN0ZWJvYXJkQ29udGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQwREFBRUIyNUQ5RjI1RTAwMTFCNEZBIC8qIFBhc3Rl
Ym9hcmRDb250ZXh0LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRjQwREFBRUYyNUQ5RjNCRjAwMTFCNEZBIC8qIFBhZ2VQYXN0ZWJvYXJkQ29udGV4
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQwREFB
RUUyNUQ5RjNCRjAwMTFCNEZBIC8qIFBhZ2VQYXN0ZWJvYXJkQ29udGV4dC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0MjBGMDBBMjVFNDc3OTEw
MDkyNTFFRiAvKiBQb2ludGVyRXZlbnRUeXBlTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0MjBGMDA4MjVFNDc3OTEwMDkyNTFFRiAvKiBQb2lu
dGVyRXZlbnRUeXBlTmFtZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlGNDI5MjYxODI1MjY0RDQ0MDAwMDc4OTggLyogTWVkaWFQbGF5ZXJJZGVu
dGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
NDI5MjYxNzI1MjY0RDQ0MDAwMDc4OTggLyogTWVkaWFQbGF5ZXJJZGVudGlmaWVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQzM0U5MDMxREJC
REJBMjAwRUYwRDE0IC8qIFN0YXRpY1Bhc3RlYm9hcmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0MzNFOTAyMURCQkRCQTIwMEVGMEQxNCAvKiBTdGF0
aWNQYXN0ZWJvYXJkLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRjQzNzdENTcyNTUxQzlDNjAwODBBQkZFIC8qIERpc3BsYXlMaXN0SXRlbVR5cGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0Mzc3RDU1
MjU1MUM5QzYwMDgwQUJGRSAvKiBEaXNwbGF5TGlzdEl0ZW1UeXBlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQ0MEU3N0EyMzNEOTRENzAwNjNG
OUFCIC8qIE5hdmlnYXRvckNsaXBib2FyZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRjQ0MEU3NkYyMzNEOTREMzAwNjNGOUFCIC8qIE5hdmlnYXRvckNs
aXBib2FyZC5oICovOyB9OworCQlGNDQwRTc3QjIzM0Q5NEQ3MDA2M0Y5QUIgLyogQ2xpcGJvYXJk
SXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ0
MEU3NzAyMzNEOTRENDAwNjNGOUFCIC8qIENsaXBib2FyZEl0ZW0uaCAqLzsgfTsKKwkJRjQ0MEU3
N0QyMzNEOTRENzAwNjNGOUFCIC8qIENsaXBib2FyZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ0MEU3NzIyMzNEOTRENTAwNjNGOUFCIC8qIENsaXBi
b2FyZC5oICovOyB9OworCQlGNDQyQzM1OTIzRTNBREQyMDA0OTk1ODIgLyogQ29tcG9zaXRpb25I
aWdobGlnaHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEY0NDJDMzU3MjNFM0FDNTEwMDQ5OTU4MiAvKiBDb21wb3NpdGlvbkhpZ2hsaWdodC5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0NDZFRERGMjY1
REFGRTMwMDMxREE4RiAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0c1N0b3JhZ2UuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDZFREREMjY1REFFM0YwMDMx
REE4RiAvKiBEYXRhRGV0ZWN0aW9uUmVzdWx0c1N0b3JhZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGNDQ2RURFMTI2NURCMUU1MDAzMURBOEYg
LyogSW1hZ2VPdmVybGF5RGF0YURldGVjdGlvblJlc3VsdElkZW50aWZpZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDZFREUwMjY1REIxRTUwMDMx
REE4RiAvKiBJbWFnZU92ZXJsYXlEYXRhRGV0ZWN0aW9uUmVzdWx0SWRlbnRpZmllci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0NDZFREU4MjY1
REQ4OTAwMDMxREE4RiAvKiBEYXRhRGV0ZWN0b3JFbGVtZW50SW5mby5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ0NkVERTcyNjVERDg5MDAwMzFEQThG
IC8qIERhdGFEZXRlY3RvckVsZW1lbnRJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQ0QTVGNTkxRkVEMzhGMjAwN0Y1OTQ0IC8qIExlZ2Fj
eU5TUGFzdGVib2FyZFR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGNDRBNUY1NzFGRUQzODMwMDA3RjU5NDQgLyogTGVnYWN5TlNQYXN0ZWJvYXJk
VHlwZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQlGNDRFQkJEOTFEQjVEMjE0MDAyNzczMzQgLyogU3RhdGljUmFuZ2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NEVCQkQ4MURCNUQyMTQwMDI3NzMz
NCAvKiBTdGF0aWNSYW5nZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CisJCUY0NTc3NUNFMjQxNDM3RDUwMDJERjFBMCAvKiBJbmxpbmVQYXRoRGF0YS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ1Nzc1Q0Qy
NDE0MzdENTAwMkRGMUEwIC8qIElubGluZVBhdGhEYXRhLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQ2NzI5MjgxRTBERTY4NTAwQUNDM0Q4IC8q
IFNjcm9sbFNuYXBPZmZzZXRzSW5mby5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjQ2NzI5MjUxRTBERTVBQjAwQUNDM0Q4IC8qIFNjcm9sbFNuYXBPZmZz
ZXRzSW5mby5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CisJCUY0NkM0NDdFMjM0NjU0NTQwMDM5QTc5RCAvKiBDbGlwYm9hcmRJdGVtQmluZGluZ3NEYXRh
U291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
NDZDNDQ3QzIzNDY1NDU0MDAzOUE3OUQgLyogQ2xpcGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJj
ZS5oICovOyB9OworCQlGNDczODQ1ODI1RERFOUZCMDA2REU4REQgLyogRGF0YU93bmVyVHlwZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ3Mzg0NTcy
NURERTlGQjAwNkRFOEREIC8qIERhdGFPd25lclR5cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGNDdBMDlEMTIwQTkzQTk3MDAyNDBGQUUgLyog
RGlzYWJsZWRBZGFwdGF0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRjQ3QTA5Q0YyMEE5MzlGNjAwMjQwRkFFIC8qIERpc2FibGVkQWRhcHRhdGlv
bnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlG
NDdBNUUzRTE5NUI4QzhBMDA0ODMxMDAgLyogU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDdBNUUzQjE5NUI4QzhB
MDA0ODMxMDAgLyogU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQ3QTYzM0QxRkY2RkQ1MDAwODFCM0NDIC8q
IFByb21pc2VkQXR0YWNobWVudEluZm8uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEY0N0E2MzNDMUZGNkZENTAwMDgxQjNDQyAvKiBQcm9taXNlZEF0dGFj
aG1lbnRJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKKwkJRjQ3QUQyM0IyMTkzNEZGNDAwNTFERDBCIC8qIEluc2VydE5lc3RlZExpc3RDb21tYW5k
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDdBRDIz
ODIxOTM0OTlBMDA1MUREMEIgLyogSW5zZXJ0TmVzdGVkTGlzdENvbW1hbmQuaCAqLzsgfTsKKwkJ
RjQ4MjIzMTAxRTM4NjlCODAwNjZGQzc5IC8qIFdlYkl0ZW1Qcm92aWRlclBhc3RlYm9hcmQubW0g
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDgyMjMwRTFF
Mzg2OUI4MDA2NkZDNzkgLyogV2ViSXRlbVByb3ZpZGVyUGFzdGVib2FyZC5tbSAqLzsgfTsKKwkJ
RjQ4MjIzMTExRTM4NjlCODAwNjZGQzc5IC8qIFdlYkl0ZW1Qcm92aWRlclBhc3RlYm9hcmQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0ODIyMzBGMUUz
ODY5QjgwMDY2RkM3OSAvKiBXZWJJdGVtUHJvdmlkZXJQYXN0ZWJvYXJkLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRjQ4MjIzMTMxRTM4NkUyNDAw
NjZGQzc5IC8qIEFic3RyYWN0UGFzdGVib2FyZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ4MjIzMTIxRTM4NkUyNDAwNjZGQzc5IC8qIEFic3RyYWN0
UGFzdGVib2FyZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCUY0ODI0MzRCMjYwQzMzMDYwMDIyNDk3QyAvKiBJbWFnZU92ZXJsYXlDb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDgyNDM0
ODI2MEMzMkYxMDAyMjQ5N0MgLyogSW1hZ2VPdmVybGF5Q29udHJvbGxlci5oICovOyB9OworCQlG
NDg1NzBBNTI2NDRDNzZEMDBDMDVGNzEgLyogVHJhbnNsYXRpb25Db250ZXh0TWVudUluZm8uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0ODU3MEE0MjY0
NEM3NkQwMEMwNUY3MSAvKiBUcmFuc2xhdGlvbkNvbnRleHRNZW51SW5mby5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0OEI3RDUzMjVDMzQxRTYw
MDlFNzVERCAvKiBUZXh0UmVjb2duaXRpb25SZXN1bHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0OEI3RDUyMjVDMzQxRTYwMDlFNzVERCAvKiBUZXh0
UmVjb2duaXRpb25SZXN1bHQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlGNDhEMkE2QzIxNTYyM0I0MDBDNjc1MkIgLyogRm9udFNoYWRvdy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ4RDJBNkEyMTU2
MjNCNDAwQzY3NTJCIC8qIEZvbnRTaGFkb3cuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQlGNDhEMkE3RTIxNTcxODI2MDBDNjc1MkIgLyogRm9udEF0
dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEY0OEQyQTcxMjE1NkRDMEEwMEM2NzUyQiAvKiBGb250QXR0cmlidXRlcy5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0OEQyQUE1MjE1OTc0MEQw
MEM2NzUyQiAvKiBDb2xvckNvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGNDhEMkFBMzIxNTk3NDBEMDBDNjc1MkIgLyogQ29sb3JDb2NvYS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0OTc4Njg4
MUZGNDVGQTUwMEUwNjBBQiAvKiBQYXN0ZWJvYXJkSXRlbUluZm8uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0OTc4Njg3MUZGNDVGQTUwMEUwNjBBQiAv
KiBQYXN0ZWJvYXJkSXRlbUluZm8uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlGNEIwMDE4OTI2RTdGMjFGMDA2RUFBQkUgLyogSFRNTEF0b21TdHJp
bmdDYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RjRCMDAxODcyNkU3RjIxRjAwNkVBQUJFIC8qIEhUTUxBdG9tU3RyaW5nQ2FjaGUuaCAqLzsgfTsK
KwkJRjRCMkE5MDkyNjUwMzBCQTAwOUU3Mjg2IC8qIERhdGFEZXRlY3RvckhpZ2hsaWdodC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRCMkE5MDYyNjUw
MkJBMDAwOUU3Mjg2IC8qIERhdGFEZXRlY3RvckhpZ2hsaWdodC5oICovOyB9OworCQlGNEI0MjJD
NDIyMEMwNTY4MDA5RTFFN0QgLyogRE9NUGFzdGVBY2Nlc3MuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0QjQyMkMyMjIwQzAwMDAwMDlFMUU3RCAvKiBE
T01QYXN0ZUFjY2Vzcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUY0QkZCOTg1MUUxRERGOUIwMDg2MkMyNCAvKiBEdW1wRWRpdGluZ0hpc3Rvcnku
anMgaW4gQ29weSBTY3JpcHRzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0
ODM4OTgzMUUxRERGMkIwMDc2QjdFQSAvKiBEdW1wRWRpdGluZ0hpc3RvcnkuanMgKi87IH07CisJ
CUY0QkZCOTg2MUUxRERGOUIwMDg2MkMyNCAvKiBFZGl0aW5nSGlzdG9yeVV0aWwuanMgaW4gQ29w
eSBTY3JpcHRzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0ODM4OTg0MUUx
RERGMkIwMDc2QjdFQSAvKiBFZGl0aW5nSGlzdG9yeVV0aWwuanMgKi87IH07CisJCUY0QzVGMjA3
MjQ3OUU4ODIwMEU5QjRGNSAvKiBDbGlwYm9hcmRJbWFnZVJlYWRlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRDNUYyMDUyNDc5RTdFRTAwRTlCNEY1
IC8qIENsaXBib2FyZEltYWdlUmVhZGVyLmggKi87IH07CisJCUY0RDA3NTU4MjM0RDgyMkQwMDg4
MUU3MyAvKiBDbGlwYm9hcmRJdGVtRGF0YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ2QzQ0N0EyMzQ2NTM1RTAwMzlBNzlEIC8qIENsaXBi
b2FyZEl0ZW1EYXRhU291cmNlLmggKi87IH07CisJCUY0RDA3NTU5MjM0RDgyMzMwMDg4MUU3MyAv
KiBDbGlwYm9hcmRJdGVtUGFzdGVib2FyZERhdGFTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NkM0NDgwMjM0NjU0N0EwMDM5QTc5RCAvKiBD
bGlwYm9hcmRJdGVtUGFzdGVib2FyZERhdGFTb3VyY2UuaCAqLzsgfTsKKwkJRjRENDBCQzkyNTU0
NjNCRjAwNzIxMzQ5IC8qIERpc3BsYXlMaXN0SXRlbUJ1ZmZlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQyMkI4QjUyNTNGNzA2NTAwNEU3N0U4IC8q
IERpc3BsYXlMaXN0SXRlbUJ1ZmZlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CisJCUY0RDQzRDY2MjE4ODAzOEIwMEVDRUNBQyAvKiBTZXJpYWxpemVk
QXR0YWNobWVudERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEY0RDQzRDY0MjE4ODAyRTYwMEVDRUNBQyAvKiBTZXJpYWxpemVkQXR0YWNobWVudERh
dGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlG
NEU1N0VEQzIxM0YzRjVGMDA0RUE5OEUgLyogRm9udEF0dHJpYnV0ZUNoYW5nZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0RTU3RURBMjEzRjNGNUYw
MDRFQTk4RSAvKiBGb250QXR0cmlidXRlQ2hhbmdlcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY0RTU3RUUxMjEzRjQzNEEwMDRFQTk4RSAvKiBX
ZWJDb3JlTlNGb250TWFuYWdlckV4dHJhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRjRFNTdFREYyMTNGNDM0QTAwNEVBOThFIC8qIFdlYkNvcmVOU0Zv
bnRNYW5hZ2VyRXh0cmFzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJRjRGQjM0RkMyMzUwQzg1RDAwRjAwOTRBIC8qIFBhc3RlYm9hcmRDdXN0b21E
YXRhLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEZC
MzRGQTIzNTBDODVEMDBGMDA5NEEgLyogUGFzdGVib2FyZEN1c3RvbURhdGEuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGNTA2NjRGODE1N0Y1MkRD
MDBBQzIyNkYgLyogRm9ybUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEY1MDY2NEY2MTU3RjUyREMwMEFDMjI2RiAvKiBGb3JtQ29udHJv
bGxlci5oICovOyB9OworCQlGNTEzQTNFQTE1RkY0ODQxMDAxNTI2REIgLyogVmFsaWRhdGlvbk1l
c3NhZ2VDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEY1MTNBM0U5MTVGRjQ4NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY1NDRG
Nzg5MTVDRkIyQTgwMEFGMzNBOCAvKiBQbGF0Zm9ybUxvY2FsZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU0NEY3ODcxNUNGQjJBODAwQUYzM0E4IC8q
IFBsYXRmb3JtTG9jYWxlLmggKi87IH07CisJCUY1NUIzREFFMTI1MUYxMkQwMDNFRjI2OSAvKiBC
YXNlVGV4dElucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRjU1QjNEN0ExMjUxRjEyRDAwM0VGMjY5IC8qIEJhc2VUZXh0SW5wdXRUeXBlLmgg
Ki87IH07CisJCUY1NUIzREIwMTI1MUYxMkQwMDNFRjI2OSAvKiBCdXR0b25JbnB1dFR5cGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1NUIzRDdDMTI1
MUYxMkQwMDNFRjI2OSAvKiBCdXR0b25JbnB1dFR5cGUuaCAqLzsgfTsKKwkJRjU1QjNEQjIxMjUx
RjEyRDAwM0VGMjY5IC8qIENoZWNrYm94SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTVCM0Q3RTEyNTFGMTJEMDAzRUYyNjkgLyogQ2hl
Y2tib3hJbnB1dFR5cGUuaCAqLzsgfTsKKwkJRjU1QjNEQjQxMjUxRjEyRDAwM0VGMjY5IC8qIENv
bG9ySW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGNTVCM0Q4MDEyNTFGMTJEMDAzRUYyNjkgLyogQ29sb3JJbnB1dFR5cGUuaCAqLzsgfTsK
KwkJRjU1QjNEQjYxMjUxRjEyRDAwM0VGMjY5IC8qIERhdGVJbnB1dFR5cGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1NUIzRDgyMTI1MUYxMkQwMDNF
RjI2OSAvKiBEYXRlSW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzREJBMTI1MUYxMkQwMDNFRjI2
OSAvKiBEYXRlVGltZUxvY2FsSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGNTVCM0Q4NjEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZVRpbWVM
b2NhbElucHV0VHlwZS5oICovOyB9OworCQlGNTVCM0RCQzEyNTFGMTJEMDAzRUYyNjkgLyogRW1h
aWxJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEY1NUIzRDg4MTI1MUYxMkQwMDNFRjI2OSAvKiBFbWFpbElucHV0VHlwZS5oICovOyB9Owor
CQlGNTVCM0RCRTEyNTFGMTJEMDAzRUYyNjkgLyogRmlsZUlucHV0VHlwZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU1QjNEOEExMjUxRjEyRDAwM0VG
MjY5IC8qIEZpbGVJbnB1dFR5cGUuaCAqLzsgfTsKKwkJRjU1QjNEQzAxMjUxRjEyRDAwM0VGMjY5
IC8qIEhpZGRlbklucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRjU1QjNEOEMxMjUxRjEyRDAwM0VGMjY5IC8qIEhpZGRlbklucHV0VHlwZS5o
ICovOyB9OworCQlGNTVCM0RDMjEyNTFGMTJEMDAzRUYyNjkgLyogSW1hZ2VJbnB1dFR5cGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1NUIzRDhFMTI1
MUYxMkQwMDNFRjI2OSAvKiBJbWFnZUlucHV0VHlwZS5oICovOyB9OworCQlGNTVCM0RDNjEyNTFG
MTJEMDAzRUYyNjkgLyogTW9udGhJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1NUIzRDkyMTI1MUYxMkQwMDNFRjI2OSAvKiBNb250aElu
cHV0VHlwZS5oICovOyB9OworCQlGNTVCM0RDODEyNTFGMTJEMDAzRUYyNjkgLyogTnVtYmVySW5w
dXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
NTVCM0Q5NDEyNTFGMTJEMDAzRUYyNjkgLyogTnVtYmVySW5wdXRUeXBlLmggKi87IH07CisJCUY1
NUIzRENBMTI1MUYxMkQwMDNFRjI2OSAvKiBQYXNzd29yZElucHV0VHlwZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU1QjNEOTYxMjUxRjEyRDAwM0VG
MjY5IC8qIFBhc3N3b3JkSW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzRENDMTI1MUYxMkQwMDNF
RjI2OSAvKiBSYWRpb0lucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjU1QjNEOTgxMjUxRjEyRDAwM0VGMjY5IC8qIFJhZGlvSW5wdXRUeXBl
LmggKi87IH07CisJCUY1NUIzRENFMTI1MUYxMkQwMDNFRjI2OSAvKiBSYW5nZUlucHV0VHlwZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU1QjNEOUEx
MjUxRjEyRDAwM0VGMjY5IC8qIFJhbmdlSW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzREQwMTI1
MUYxMkQwMDNFRjI2OSAvKiBSZXNldElucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU1QjNEOUMxMjUxRjEyRDAwM0VGMjY5IC8qIFJlc2V0
SW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzREQyMTI1MUYxMkQwMDNFRjI2OSAvKiBTZWFyY2hJ
bnB1dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEY1NUIzRDlFMTI1MUYxMkQwMDNFRjI2OSAvKiBTZWFyY2hJbnB1dFR5cGUuaCAqLzsgfTsKKwkJ
RjU1QjNERDQxMjUxRjEyRDAwM0VGMjY5IC8qIFN1Ym1pdElucHV0VHlwZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjU1QjNEQTAxMjUxRjEyRDAwM0VG
MjY5IC8qIFN1Ym1pdElucHV0VHlwZS5oICovOyB9OworCQlGNTVCM0RENjEyNTFGMTJEMDAzRUYy
NjkgLyogVGVsZXBob25lSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGNTVCM0RBMjEyNTFGMTJEMDAzRUYyNjkgLyogVGVsZXBob25lSW5w
dXRUeXBlLmggKi87IH07CisJCUY1NUIzREQ4MTI1MUYxMkQwMDNFRjI2OSAvKiBUZXh0RmllbGRJ
bnB1dFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEY1NUIzREE0MTI1MUYxMkQwMDNFRjI2OSAvKiBUZXh0RmllbGRJbnB1dFR5cGUuaCAqLzsgfTsK
KwkJRjU1QjNEREExMjUxRjEyRDAwM0VGMjY5IC8qIFRleHRJbnB1dFR5cGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1NUIzREE2MTI1MUYxMkQwMDNF
RjI2OSAvKiBUZXh0SW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzRERDMTI1MUYxMkQwMDNFRjI2
OSAvKiBUaW1lSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGNTVCM0RBODEyNTFGMTJEMDAzRUYyNjkgLyogVGltZUlucHV0VHlwZS5oICov
OyB9OworCQlGNTVCM0RERTEyNTFGMTJEMDAzRUYyNjkgLyogVVJMSW5wdXRUeXBlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTVCM0RBQTEyNTFGMTJE
MDAzRUYyNjkgLyogVVJMSW5wdXRUeXBlLmggKi87IH07CisJCUY1NUIzREUwMTI1MUYxMkQwMDNF
RjI2OSAvKiBXZWVrSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGNTVCM0RBQzEyNTFGMTJEMDAzRUYyNjkgLyogV2Vla0lucHV0VHlwZS5o
ICovOyB9OworCQlGNTk3M0RFMDE1Q0ZCMjAzMDAyN0Y4MDQgLyogTG9jYWxlQ29jb2EuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1OTczRERFMTVDRkIy
MDMwMDI3RjgwNCAvKiBMb2NhbGVDb2NvYS5oICovOyB9OworCQlGNTlDOTYwMDEyNTVCMjNGMDAw
NjIzQzAgLyogQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNTlDOTVGRTEyNTVCMjNGMDAwNjIzQzAgLyogQmFz
ZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggKi87IH07CisJCUY1QTE1NDI4MTI3OTUzNEQwMEQwQjBD
MCAvKiBWYWxpZGF0aW9uTWVzc2FnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjVBMTU0MjYxMjc5NTM0RDAwRDBCMEMwIC8qIFZhbGlkYXRpb25NZXNz
YWdlLmggKi87IH07CisJCUY1QzA0MURCMEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RF
bGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
NUMwNDFEODBGRkNBN0NFMDA4MzlENEEgLyogSFRNTERhdGFMaXN0RWxlbWVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY1QzA0MUU3MEZGQ0E5
NkQwMDgzOUQ0QSAvKiBKU0hUTUxEYXRhTGlzdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY1QzA0MUUyMEZGQ0E5NkQwMDgzOUQ0QSAvKiBK
U0hUTUxEYXRhTGlzdEVsZW1lbnQuaCAqLzsgfTsKKwkJRjkxNkM0OEUwREI1MTBGODAwNzZDRDgz
IC8qIEpTWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGOTE2QzQ4QzBEQjUxMEY4MDA3NkNEODMgLyogSlNY
TUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaCAqLzsgfTsKKwkJRjlGMEVEN0EwREI1MENBMjAw
RDE2REI5IC8qIFhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjlGMEVENzcwREI1MENBMjAwRDE2REI5IC8q
IFhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5oICovOyB9OworCQlGQTY1NEE2QzExMDhBQkVE
MDAyNjE1RTAgLyogTWF0aE1MVG9rZW5FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQTY1NEE2QTExMDhBQkVEMDAyNjE1RTAgLyogTWF0aE1M
VG9rZW5FbGVtZW50LmggKi87IH07CisJCUZBNjU0QTZDMTEwOEFCRUQwMDI2MTZGMSAvKiBNYXRo
TUxPcGVyYXRvckVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEZBNjU0QTZBMTEwOEFCRUQwMDI2MTZGMSAvKiBNYXRoTUxPcGVyYXRvckVsZW1l
bnQuaCAqLzsgfTsKKwkJRkE2NTRBNkMxMTA4QUJFRDAwMjYyNkYxIC8qIE1hdGhNTFVuZGVyT3Zl
ckVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZBNjU0QTZBMTEwOEFCRUQwMDI2MjZGMSAvKiBNYXRoTUxVbmRlck92ZXJFbGVtZW50LmggKi87
IH07CisJCUZBNzY1QTZDMTEwOEFCRUQwMDI2MTVFMCAvKiBNYXRoTUxSb3dFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQTc2NUE2QTExMDhB
QkVEMDAyNjE1RTAgLyogTWF0aE1MUm93RWxlbWVudC5oICovOyB9OworCQlGQTc2NUE2QzExMDhB
QkVEMDA3ODJBNUMgLyogTWF0aE1MUm9vdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZBNzY1QTZBMTEwOEFCRUQwMDc4MkE1QyAvKiBNYXRo
TUxSb290RWxlbWVudC5oICovOyB9OworCQlGQUJFNzJGNTEwNTlDMUVCMDBEODg4Q0MgLyogTWF0
aE1MQW5ub3RhdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZBQkU3MkVFMTA1OUMxRUIwMEQ4ODhDQyAvKiBNYXRoTUxBbm5vdGF0aW9u
RWxlbWVudC5oICovOyB9OworCQlGQUJFNzJGNTEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkFC
RTcyRUUxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTEVsZW1lbnQuaCAqLzsgfTsKKwkJRkFCRTcy
RjcxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTFByZXNlbnRhdGlvbkVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZBQkU3MkYwMTA1OUMxRUIw
MEQ5OTlERCAvKiBNYXRoTUxQcmVzZW50YXRpb25FbGVtZW50LmggKi87IH07CisJCUZBQkU3MkY5
MTA1OUMxRUIwMEQ5OTlERCAvKiBNYXRoTUxNYXRoRWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkFCRTcyRjIxMDU5QzFFQjAwRDk5OUREIC8q
IE1hdGhNTE1hdGhFbGVtZW50LmggKi87IH07CisJCUZBQkU3MkZFMTA1OUMyMTEwMEQ5OTlERCAv
KiBNYXRoTUxOYW1lcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGQUJFNzJGQzEwNTlDMjExMDBEOTk5REQgLyogTWF0aE1MTmFtZXMuY3BwICovOyB9
OworCQlGQjI3M0U4MjIwODZFNkM3MDBBNTRFODcgLyogU1ZHR2VvbWV0cnlFbGVtZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQjI3M0U3RjIwODZF
NkEzMDBBNTRFODcgLyogU1ZHR2VvbWV0cnlFbGVtZW50LmggKi87IH07CisJCUZCMjczRTg1MjA4
NkU3NEQwMEE1NEU4NyAvKiBKU1NWR0dlb21ldHJ5RWxlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkIyNzNFODQyMDg2RTczRTAwQTU0RTg3IC8q
IEpTU1ZHR2VvbWV0cnlFbGVtZW50LmggKi87IH07CisJCUZCMkMxNUMzMTY1RDY0OUQwMDM5QzlG
OCAvKiBDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkIyQzE1QzIxNjVENjQ5MDAwMzlDOUY4IC8qIENhY2hl
ZFNWR0RvY3VtZW50UmVmZXJlbmNlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJRkIzMDU2QzIxNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5n
UnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkIz
MDU2QzExNjlFNURBQzAwOTZBMjMyIC8qIENTU0dyb3VwaW5nUnVsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZCNDg0RjREMTcxRjgyMUUwMDA0
MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1G
dW5jdGlvbnMuaCAqLzsgfTsKKwkJRkI5MkRGNEIxNUZFRDA4NzAwOTk0NDMzIC8qIENsaXBQYXRo
T3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGQjkyREY0OTE1RkVEMDg3MDA5OTQ0MzMgLyogQ2xpcFBhdGhPcGVyYXRpb24uaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGQkIwQzVCODE3QkJE
NjI5MDAzRDM2NzcgLyogQ1NTRmlsdGVySW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkI5NjVCODExN0JCQjVGOTAwRTgzNUI5IC8qIENT
U0ZpbHRlckltYWdlVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9ICgpOyB9OyB9
OworCQlGQkQ2QUY4ODE1RUYyNUM5MDA4QjcxMTAgLyogQ1NTQmFzaWNTaGFwZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZCRDZBRjg3MTVFRjIxRDQw
MDhCNzExMCAvKiBDU1NCYXNpY1NoYXBlcy5oICovOyB9OworCQlGQkQ2QUY4QTE1RUYyNURGMDA4
QjcxMTAgLyogQmFzaWNTaGFwZUZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRkJENkFGODUxNUVGMjFENDAwOEI3MTEwIC8qIEJhc2ljU2hh
cGVGdW5jdGlvbnMuaCAqLzsgfTsKKwkJRkJENkFGOEMxNUVGMjYwNDAwOEI3MTEwIC8qIEJhc2lj
U2hhcGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
QkQ2QUY4MzE1RUYyMUEzMDA4QjcxMTAgLyogQmFzaWNTaGFwZXMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGQkRCNjE5RjE2RDYwMzY1MDBCQjMz
OTQgLyogRWxlbWVudFJ1bGVDb2xsZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZCREI2MTlFMTZENjAzNjUwMEJCMzM5NCAvKiBFbGVtZW50UnVs
ZUNvbGxlY3Rvci5oICovOyB9OworCQlGQkRCNjFBMTE2RDYwMzdFMDBCQjMzOTQgLyogUGFnZVJ1
bGVDb2xsZWN0b3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEZCREI2MUEwMTZENjAzN0UwMEJCMzM5NCAvKiBQYWdlUnVsZUNvbGxlY3Rvci5oICovOyB9
OworCQlGQzU0RDA1NzE2QTc2NzMxMDA1NzVFNEQgLyogQ1NTU3VwcG9ydHNSdWxlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQzYzQkRCMTE2N0FBQkFD
MDBGOTM4MEYgLyogQ1NTU3VwcG9ydHNSdWxlLmggKi87IH07CisJCUZDNTREMDU4MTZBNzY3NkUw
MDU3NUU0RCAvKiBKU0NTU1N1cHBvcnRzUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRkM4NDgwMkUxNjdBQjQ0NDAwOENEMTAwIC8qIEpTQ1NTU3Vw
cG9ydHNSdWxlLmggKi87IH07CisJCUZDOUEwRjc1MTY0MDk0Q0YwMDNENkI4RCAvKiBET01DU1NO
YW1lc3BhY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZDOUEwRjcyMTY0MDk0Q0YwMDNENkI4RCAvKiBET01DU1NOYW1lc3BhY2UuaCAqLzsgfTsKKwkJ
RkM5RTBFNEQxNjQxOUMxRTAwMzkyQkUzIC8qIEpTRE9NQ1NTTmFtZXNwYWNlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGQzlFMEU0QjE2NDE5QzFFMDAz
OTJCRTMgLyogSlNET01DU1NOYW1lc3BhY2UuaCAqLzsgfTsKKwkJRkQwMEQ3QTUxNEEzRjYxOTAw
NzM0MDExIC8qIFNpbmNSZXNhbXBsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZEMDBEN0EzMTRBM0Y2MTkwMDczNDAxMSAvKiBTaW5jUmVzYW1wbGVy
LmggKi87IH07CisJCUZEMDZERkE2MTM0QTRERUYwMDZGNUQ3RCAvKiBEZWZhdWx0QXVkaW9EZXN0
aW5hdGlvbk5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEZEMDZERkE0MTM0QTRERUYwMDZGNUQ3RCAvKiBEZWZhdWx0QXVkaW9EZXN0aW5hdGlvbk5v
ZGUuaCAqLzsgfTsKKwkJRkQxNjYwQTUxMzc4N0M2RDAwMUZGQTdCIC8qIERlbm9ybWFsRGlzYWJs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMTY2
MEE0MTM3ODdDNkQwMDFGRkE3QiAvKiBEZW5vcm1hbERpc2FibGVyLmggKi87IH07CisJCUZEMTc2
MkUwMTc2Njg2RDkwMEQ4MzZBOCAvKiBVcFNhbXBsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMTc2MkRFMTc2Njg2RDkwMEQ4MzZBOCAvKiBVcFNh
bXBsZXIuaCAqLzsgfTsKKwkJRkQxNzYyRTQxNzY2ODZFQTAwRDgzNkE4IC8qIERvd25TYW1wbGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDE3NjJF
MjE3NjY4NkVBMDBEODM2QTggLyogRG93blNhbXBsZXIuaCAqLzsgfTsKKwkJRkQxQUYxNTAxNjU2
RjE1MTAwQzZENEY3IC8qIFNoYXBlVmFsdWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZEMUFGMTRFMTY1NkYxMjEwMEM2RDRGNyAvKiBTaGFwZVZhbHVl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRkQy
M0ExMjYxM0Y1RkE1OTAwRjY3MDAxIC8qIEpTTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDIzQTEyNDEz
RjVGQTU5MDBGNjcwMDEgLyogSlNNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAqLzsgfTsK
KwkJRkQyREJGMTIxMkIwNDhBMzAwRUQ5OEM2IC8qIEFjY2VsZXJhdGUuZnJhbWV3b3JrIGluIEZy
YW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQyREJGMEUxMkIw
NDhBMzAwRUQ5OEM2IC8qIEFjY2VsZXJhdGUuZnJhbWV3b3JrICovOyB9OworCQlGRDJEQkYxMzEy
QjA0OEEzMDBFRDk4QzYgLyogQXVkaW9Ub29sYm94LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMkRCRjBGMTJCMDQ4QTMwMEVEOThD
NiAvKiBBdWRpb1Rvb2xib3guZnJhbWV3b3JrICovOyB9OworCQlGRDMxNUZGNzEyQjAyNjc2MDBD
MUEzNTkgLyogQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkFEMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRp
b0Jhc2ljUHJvY2Vzc29yTm9kZS5oICovOyB9OworCQlGRDMxNUZGOTEyQjAyNjc2MDBDMUEzNTkg
LyogQXVkaW9CdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZEMzE1RkFGMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlci5oICovOyB9Owor
CQlGRDMxNUZGQzEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNUZCMjEyQjAy
Njc1MDBDMUEzNTkgLyogQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmggKi87IH07CisJCUZEMzE1RkZG
MTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsTWVyZ2VyTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTVGQjUxMkIwMjY3NTAwQzFBMzU5IC8q
IENoYW5uZWxNZXJnZXJOb2RlLmggKi87IH07CisJCUZEMzE2MDAyMTJCMDI2NzYwMEMxQTM1OSAv
KiBDaGFubmVsU3BsaXR0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGRDMxNUZCODEyQjAyNjc1MDBDMUEzNTkgLyogQ2hhbm5lbFNwbGl0dGVy
Tm9kZS5oICovOyB9OworCQlGRDMxNjAwNTEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9Db250ZXh0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNUZC
QjEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9Db250ZXh0LmggKi87IH07CisJCUZEMzE2MDA4MTJC
MDI2NzYwMEMxQTM1OSAvKiBBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTVGQkUxMkIwMjY3NTAwQzFBMzU5IC8q
IEF1ZGlvRGVzdGluYXRpb25Ob2RlLmggKi87IH07CisJCUZEMzE2MDBEMTJCMDI2NzYwMEMxQTM1
OSAvKiBHYWluTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRkQzMTVGQzMxMkIwMjY3NTAwQzFBMzU5IC8qIEdhaW5Ob2RlLmggKi87IH07CisJCUZE
MzE2MDEwMTJCMDI2NzYwMEMxQTM1OSAvKiBBdWRpb0xpc3RlbmVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNUZDNjEyQjAyNjc1MDBDMUEzNTkg
LyogQXVkaW9MaXN0ZW5lci5oICovOyB9OworCQlGRDMxNjAxMzEyQjAyNjc2MDBDMUEzNTkgLyog
QXVkaW9Ob2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGRDMxNUZDOTEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9Ob2RlLmggKi87IH07CisJCUZEMzE2
MDE2MTJCMDI2NzYwMEMxQTM1OSAvKiBBdWRpb05vZGVJbnB1dC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTVGQ0MxMkIwMjY3NTAwQzFBMzU5IC8q
IEF1ZGlvTm9kZUlucHV0LmggKi87IH07CisJCUZEMzE2MDE4MTJCMDI2NzYwMEMxQTM1OSAvKiBB
dWRpb05vZGVPdXRwdXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZEMzE1RkNFMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb05vZGVPdXRwdXQuaCAqLzsg
fTsKKwkJRkQzMTYwMUExMkIwMjY3NjAwQzFBMzU5IC8qIFBhbm5lck5vZGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkQwMTJCMDI2NzUwMEMx
QTM1OSAvKiBQYW5uZXJOb2RlLmggKi87IH07CisJCUZEMzE2MDFEMTJCMDI2NzYwMEMxQTM1OSAv
KiBBdWRpb1BhcmFtLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGRDMxNUZEMzEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9QYXJhbS5oICovOyB9OworCQlG
RDMxNjAyMDEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkQ2MTJCMDI2NzYw
MEMxQTM1OSAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudC5oICovOyB9OworCQlGRDMxNjAyNTEyQjAy
Njc2MDBDMUEzNTkgLyogQmlxdWFkRFNQS2VybmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNUZEQjEyQjAyNjc2MDBDMUEzNTkgLyogQmlxdWFk
RFNQS2VybmVsLmggKi87IH07CisJCUZEMzE2MDI3MTJCMDI2NzYwMEMxQTM1OSAvKiBCaXF1YWRQ
cm9jZXNzb3IuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZEMzE1RkREMTJCMDI2NzYwMEMxQTM1OSAvKiBCaXF1YWRQcm9jZXNzb3IuaCAqLzsgfTsKKwkJ
RkQzMTYwMjkxMkIwMjY3NjAwQzFBMzU5IC8qIENvbnZvbHZlck5vZGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkRGMTJCMDI2NzYwMEMxQTM1
OSAvKiBDb252b2x2ZXJOb2RlLmggKi87IH07CisJCUZEMzE2MDJDMTJCMDI2NzYwMEMxQTM1OSAv
KiBEZWxheURTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRkQzMTVGRTIxMkIwMjY3NjAwQzFBMzU5IC8qIERlbGF5RFNQS2VybmVsLmggKi87
IH07CisJCUZEMzE2MDJFMTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheU5vZGUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkU0MTJCMDI2NzYwMEMx
QTM1OSAvKiBEZWxheU5vZGUuaCAqLzsgfTsKKwkJRkQzMTYwMzExMkIwMjY3NjAwQzFBMzU5IC8q
IERlbGF5UHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRDMxNUZFNzEyQjAyNjc2MDBDMUEzNTkgLyogRGVsYXlQcm9jZXNzb3IuaCAqLzsg
fTsKKwkJRkQzMTYwMzYxMkIwMjY3NjAwQzFBMzU5IC8qIFNjcmlwdFByb2Nlc3Nvck5vZGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE1RkVDMTJC
MDI2NzYwMEMxQTM1OSAvKiBTY3JpcHRQcm9jZXNzb3JOb2RlLmggKi87IH07CisJCUZEMzE2MDND
MTJCMDI2NzYwMEMxQTM1OSAvKiBSZWFsdGltZUFuYWx5c2VyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNUZGMjEyQjAyNjc2MDBDMUEzNTkgLyog
UmVhbHRpbWVBbmFseXNlci5oICovOyB9OworCQlGRDMxNjAzRTEyQjAyNjc2MDBDMUEzNTkgLyog
QW5hbHlzZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGRDMxNUZGNDEyQjAyNjc2MDBDMUEzNTkgLyogQW5hbHlzZXJOb2RlLmggKi87IH07CisJ
CUZEMzE2MDdBMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0FycmF5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA0NDEyQjAyNkY3MDBDMUEzNTkg
LyogQXVkaW9BcnJheS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCUZEMzE2MDdDMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0J1cy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYwNDYxMkIwMjZGNzAw
QzFBMzU5IC8qIEF1ZGlvQnVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKKwkJRkQzMTYwN0UxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvQ2hhbm5lbC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYwNDgx
MkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvQ2hhbm5lbC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZEMzE2MDdGMTJCMDI2RjcwMEMxQTM1OSAvKiBB
dWRpb0Rlc3RpbmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRDMxNjA0OTEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9EZXN0aW5hdGlvbi5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZEMzE2MDgw
MTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0RTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYwNEExMkIwMjZGNzAwQzFBMzU5IC8qIEF1
ZGlvRFNQS2VybmVsLmggKi87IH07CisJCUZEMzE2MDgyMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRp
b0RTUEtlcm5lbFByb2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRkQzMTYwNEMxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvRFNQS2VybmVsUHJv
Y2Vzc29yLmggKi87IH07CisJCUZEMzE2MDgzMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0ZpbGVS
ZWFkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZE
MzE2MDREMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0ZpbGVSZWFkZXIuaCAqLzsgfTsKKwkJRkQz
MTYwODQxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvUHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA0RTEyQjAyNkY3MDBDMUEzNTkg
LyogQXVkaW9Qcm9jZXNzb3IuaCAqLzsgfTsKKwkJRkQzMTYwODYxMkIwMjZGNzAwQzFBMzU5IC8q
IEF1ZGlvUmVzYW1wbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRDMxNjA1MDEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9SZXNhbXBsZXIuaCAqLzsg
fTsKKwkJRkQzMTYwODgxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvUmVzYW1wbGVyS2VybmVsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA1MjEy
QjAyNkY3MDBDMUEzNTkgLyogQXVkaW9SZXNhbXBsZXJLZXJuZWwuaCAqLzsgfTsKKwkJRkQzMTYw
ODkxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvU291cmNlUHJvdmlkZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE2MDUzMTJCMDI2RjcwMEMxQTM1
OSAvKiBBdWRpb1NvdXJjZVByb3ZpZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJRkQzMTYwOEIxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvVXRp
bGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
RDMxNjA1NTEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9VdGlsaXRpZXMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGRDMxNjA4RDEyQjAyNkY3MDBD
MUEzNTkgLyogQmlxdWFkLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRDMxNjA1NzEyQjAyNkY3MDBDMUEzNTkgLyogQmlxdWFkLmggKi87IH07CisJCUZE
MzE2MDhGMTJCMDI2RjcwMEMxQTM1OSAvKiBDb25lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA1OTEyQjAyNkY3MDBDMUEzNTkgLyogQ29uZS5o
ICovOyB9OworCQlGRDMxNjA5MTEyQjAyNkY3MDBDMUEzNTkgLyogRGlzdGFuY2UuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE2MDVCMTJCMDI2Rjcw
MEMxQTM1OSAvKiBEaXN0YW5jZS5oICovOyB9OworCQlGRDMxNjA5MzEyQjAyNkY3MDBDMUEzNTkg
LyogRXF1YWxQb3dlclBhbm5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRkQzMTYwNUQxMkIwMjZGNzAwQzFBMzU5IC8qIEVxdWFsUG93ZXJQYW5uZXIu
aCAqLzsgfTsKKwkJRkQzMTYwOTUxMkIwMjZGNzAwQzFBMzU5IC8qIEZGVENvbnZvbHZlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYwNUYxMkIw
MjZGNzAwQzFBMzU5IC8qIEZGVENvbnZvbHZlci5oICovOyB9OworCQlGRDMxNjA5NzEyQjAyNkY3
MDBDMUEzNTkgLyogRkZURnJhbWUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZEMzE2MDYxMTJCMDI2RjcwMEMxQTM1OSAvKiBGRlRGcmFtZS5oICovOyB9
OworCQlGRDMxNjA5OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURkRhdGFiYXNlLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA2MzEyQjAyNkY3MDBD
MUEzNTkgLyogSFJURkRhdGFiYXNlLmggKi87IH07CisJCUZEMzE2MDlCMTJCMDI2RjcwMEMxQTM1
OSAvKiBIUlRGRGF0YWJhc2VMb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEZEMzE2MDY1MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGRGF0YWJhc2VM
b2FkZXIuaCAqLzsgfTsKKwkJRkQzMTYwOUQxMkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZFbGV2YXRp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE2
MDY3MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGRWxldmF0aW9uLmggKi87IH07CisJCUZEMzE2MDlG
MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGS2VybmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA2OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktl
cm5lbC5oICovOyB9OworCQlGRDMxNjBBMTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYwNkIx
MkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZQYW5uZXIuaCAqLzsgfTsKKwkJRkQzMTYwQTMxMkIwMjZG
NzAwQzFBMzU5IC8qIFBhbm5lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRkQzMTYwNkQxMkIwMjZGNzAwQzFBMzU5IC8qIFBhbm5lci5oICovOyB9Owor
CQlGRDMxNjBBNTEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJiLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDMxNjA2RjEyQjAyNkY3MDBDMUEzNTkgLyog
UmV2ZXJiLmggKi87IH07CisJCUZEMzE2MEE3MTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJBY2N1
bXVsYXRpb25CdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZEMzE2MDcxMTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJBY2N1bXVsYXRpb25CdWZm
ZXIuaCAqLzsgfTsKKwkJRkQzMTYwQTkxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkNvbnZvbHZl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYw
NzMxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkNvbnZvbHZlci5oICovOyB9OworCQlGRDMxNjBB
QjEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJiQ29udm9sdmVyU3RhZ2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE2MDc1MTJCMDI2RjcwMEMxQTM1
OSAvKiBSZXZlcmJDb252b2x2ZXJTdGFnZS5oICovOyB9OworCQlGRDMxNjBBRDEyQjAyNkY3MDBD
MUEzNTkgLyogUmV2ZXJiSW5wdXRCdWZmZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZEMzE2MDc3MTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJJbnB1
dEJ1ZmZlci5oICovOyB9OworCQlGRDMxNjBBRjEyQjAyNkY3MDBDMUEzNTkgLyogVmVjdG9yTWF0
aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzMTYw
NzkxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1hdGguaCAqLzsgfTsKKwkJRkQzNTkxOTAxMzhE
QjIyMDAwRTFFQkVDIC8qIEF1ZGlvUGFyYW1UaW1lbGluZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQzNTkxOEUxMzhEQjIyMDAwRTFFQkVDIC8qIEF1
ZGlvUGFyYW1UaW1lbGluZS5oICovOyB9OworCQlGRDQ1QTk0RjE3NUQzRjNFMDBDMjFFQzggLyog
U2hhcGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZE
MDhBODdGMTc1RDM5MjYwMDJDRDM2MCAvKiBTaGFwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZENDVBOTUyMTc1RDNGM0UwMEMyMUVDOCAvKiBT
aGFwZU91dHNpZGVJbmZvLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRDA4QTg4NzE3NUQzOTI2MDAyQ0QzNjAgLyogU2hhcGVPdXRzaWRlSW5mby5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZENDVBOTU3
MTc1RDQxNEMwMEMyMUVDOCAvKiBQb2x5Z29uU2hhcGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMDhBODdCMTc1RDM5MjYwMDJDRDM2MCAvKiBQb2x5
Z29uU2hhcGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlGRDQ1QTk1ODE3NUQ0MTRDMDBDMjFFQzggLyogUmVjdGFuZ2xlU2hhcGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEMDhBODdEMTc1RDM5MjYw
MDJDRDM2MCAvKiBSZWN0YW5nbGVTaGFwZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CisJCUZENDVBOTVCMTc1RDQxRUUwMEMyMUVDOCAvKiBTaGFwZUlu
dGVydmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
RDA4QTg4NTE3NUQzOTI2MDAyQ0QzNjAgLyogU2hhcGVJbnRlcnZhbC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZENTM3MzUzMTM3QjY1MTgwMDAw
OERDRSAvKiBaZXJvUG9sZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRkQ1MzczNTExMzdCNjUxODAwMDA4RENFIC8qIFplcm9Qb2xlLmggKi87IH07CisJ
CUZENTM3MzU3MTM3QjY1M0IwMDAwOERDRSAvKiBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZENTM3MzU1MTM3
QjY1M0IwMDAwOERDRSAvKiBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuaCAqLzsgfTsKKwkJRkQ1
Njg2Q0ExM0FDMTgwMjAwQjY5QzY4IC8qIEFzeW5jQXVkaW9EZWNvZGVyLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDU2ODZDODEzQUMxODAyMDBCNjlD
NjggLyogQXN5bmNBdWRpb0RlY29kZXIuaCAqLzsgfTsKKwkJRkQ1Njg2Q0MxM0FDMTgxNDAwQjY5
QzY4IC8qIEF1ZGlvQnVmZmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZENTY4NkNCMTNBQzE4MTQwMEI2OUM2OCAvKiBBdWRpb0J1ZmZl
ckNhbGxiYWNrLmggKi87IH07CisJCUZENTgxRkFGMTUyMEY5MUYwMDNBN0E3NSAvKiBPc2NpbGxh
dG9yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RkQ1ODFGQUMxNTIwRjkxRjAwM0E3QTc1IC8qIE9zY2lsbGF0b3JOb2RlLmggKi87IH07CisJCUZE
NTgxRkI1MTUyMEY5M0IwMDNBN0E3NSAvKiBQZXJpb2RpY1dhdmUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZENTgxRkIyMTUyMEY5M0IwMDNBN0E3NSAv
KiBQZXJpb2RpY1dhdmUuaCAqLzsgfTsKKwkJRkQ2MjlFQTMxNTRCNDcxNjAwMDZEMDI2IC8qIEF1
ZGlvQmFzaWNJbnNwZWN0b3JOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGRDYyOUVBMTE1NEI0NzE2MDAwNkQwMjYgLyogQXVkaW9CYXNpY0luc3Bl
Y3Rvck5vZGUuaCAqLzsgfTsKKwkJRkQ2MkY1MkUxNDU4OThEODAwOTRCMEVEIC8qIEF1ZGlvU291
cmNlUHJvdmlkZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEZENjJGNTJEMTQ1ODk4RDgwMDk0QjBFRCAvKiBBdWRpb1NvdXJjZVByb3ZpZGVy
Q2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
KwkJRkQ2NzFBNzgxNTlCQjA3MDAwMTk3NTU5IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2Rl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDY3MUE3
NTE1OUJCMDcwMDAxOTc1NTkgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU5vZGUuaCAqLzsgfTsK
KwkJRkQ2RUQyQzQxMzZCOEU0MjAwM0NGMDcyIC8qIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZENkVEMkMyMTM2
QjhFNDIwMDNDRjA3MiAvKiBEeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi87IH07CisJCUZENkVE
MkM4MTM2QjhFNjYwMDNDRjA3MiAvKiBEeW5hbWljc0NvbXByZXNzb3IuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZENkVEMkM2MTM2QjhFNjYwMDNDRjA3
MiAvKiBEeW5hbWljc0NvbXByZXNzb3IuaCAqLzsgfTsKKwkJRkQ2RjI1MkQxM0Y1RUYwRTAwNjUx
NjVGIC8qIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQ2RjI1MkExM0Y1RUYwRTAwNjUxNjVGIC8qIE1l
ZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5oICovOyB9OworCQlGRDc4NjhCQTEzNkI5OTkyMDBE
NDAzREYgLyogSlNEeW5hbWljc0NvbXByZXNzb3JOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRDc4NjhCODEzNkI5OTkyMDBENDAzREYgLyogSlNE
eW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi87IH07CisJCUZEN0YyOTkyMTNENEMwQ0IwMEFEOTUz
NSAvKiBXYXZlU2hhcGVyRFNQS2VybmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGRDdGMjk4QjEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlckRT
UEtlcm5lbC5oICovOyB9OworCQlGRDdGMjk5NDEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBl
ck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZE
N0YyOThEMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyTm9kZS5oICovOyB9OworCQlGRDdG
Mjk5NzEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlclByb2Nlc3Nvci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkQ3RjI5OTAxM0Q0QzBDQjAwQUQ5
NTM1IC8qIFdhdmVTaGFwZXJQcm9jZXNzb3IuaCAqLzsgfTsKKwkJRkQ4MkQ3RjgxM0Q0QzhCRDAw
NEU0MzcyIC8qIEpTV2F2ZVNoYXBlck5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZEODJEN0Y2MTNENEM4QkQwMDRFNDM3MiAvKiBKU1dhdmVTaGFw
ZXJOb2RlLmggKi87IH07CisJCUZEOEM0NkVDMTU0NjA4RTcwMEE1OTEwQyAvKiBBdWRpb1NjaGVk
dWxlZFNvdXJjZU5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEZEOEM0NkVBMTU0NjA4RTcwMEE1OTEwQyAvKiBBdWRpb1NjaGVkdWxlZFNvdXJjZU5v
ZGUuaCAqLzsgfTsKKwkJRkRBMTVFOUUxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9CdWZmZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1RTgy
MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVyLmggKi87IH07CisJCUZEQTE1RUEwMTJC
MDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVyU291cmNlTm9kZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkRBMTVFODQxMkIwM0VFMTAwM0E1ODNB
IC8qIEpTQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmggKi87IH07CisJCUZEQTE1RUEyMTJCMDNFRTEw
MDNBNTgzQSAvKiBKU0NoYW5uZWxNZXJnZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREExNUU4NjEyQjAzRUUxMDAzQTU4M0EgLyogSlNDaGFu
bmVsTWVyZ2VyTm9kZS5oICovOyB9OworCQlGREExNUVBNDEyQjAzRUUxMDAzQTU4M0EgLyogSlND
aGFubmVsU3BsaXR0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGREExNUU4ODEyQjAzRUUxMDAzQTU4M0EgLyogSlNDaGFubmVsU3BsaXR0ZXJO
b2RlLmggKi87IH07CisJCUZEQTE1RUE2MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQ29udGV4
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkRBMTVF
OEExMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9Db250ZXh0LmggKi87IH07CisJCUZEQTE1RUE4
MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvRGVzdGluYXRpb25Ob2RlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREExNUU4QzEyQjAzRUUxMDAzQTU4
M0EgLyogSlNBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oICovOyB9OworCQlGREExNUVBQzEyQjAzRUUx
MDAzQTU4M0EgLyogSlNHYWluTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRkRBMTVFOTAxMkIwM0VFMTAwM0E1ODNBIC8qIEpTR2Fpbk5vZGUuaCAq
LzsgfTsKKwkJRkRBMTVFQUUxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9MaXN0ZW5lci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkRBMTVFOTIxMkIw
M0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9MaXN0ZW5lci5oICovOyB9OworCQlGREExNUVCMDEyQjAz
RUUxMDAzQTU4M0EgLyogSlNBdWRpb05vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1RTk0MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvTm9k
ZS5oICovOyB9OworCQlGREExNUVCMjEyQjAzRUUxMDAzQTU4M0EgLyogSlNQYW5uZXJOb2RlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREExNUU5NjEy
QjAzRUUxMDAzQTU4M0EgLyogSlNQYW5uZXJOb2RlLmggKi87IH07CisJCUZEQTE1RUI0MTJCMDNF
RTEwMDNBNTgzQSAvKiBKU0F1ZGlvUGFyYW0uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1RTk4MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvUGFy
YW0uaCAqLzsgfTsKKwkJRkRBMTVFQjYxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9Qcm9jZXNz
aW5nRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZEQTE1RTlBMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvUHJvY2Vzc2luZ0V2ZW50LmggKi87
IH07CisJCUZEQTE1RUJFMTJCMDNGMEIwMDNBNTgzQSAvKiBKU0NvbnZvbHZlck5vZGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1RUJDMTJCMDNG
MEIwMDNBNTgzQSAvKiBKU0NvbnZvbHZlck5vZGUuaCAqLzsgfTsKKwkJRkRBMTVFQ0ExMkIwM0Y1
MDAwM0E1ODNBIC8qIEpTQW5hbHlzZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGREExNUVDODEyQjAzRjUwMDAzQTU4M0EgLyogSlNBbmFseXNl
ck5vZGUuaCAqLzsgfTsKKwkJRkRBMTVFQ0UxMkIwM0Y2MTAwM0E1ODNBIC8qIEpTU2NyaXB0UHJv
Y2Vzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRkRBMTVFQ0MxMkIwM0Y2MTAwM0E1ODNBIC8qIEpTU2NyaXB0UHJvY2Vzc29yTm9kZS5oICov
OyB9OworCQlGREExNUVEMjEyQjAzRjk0MDAzQTU4M0EgLyogSlNEZWxheU5vZGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTE1RUQwMTJCMDNGOTQw
MDNBNTgzQSAvKiBKU0RlbGF5Tm9kZS5oICovOyB9OworCQlGREEzRTk1QTEzNEE0OUVGMDA4RDRC
NUEgLyogT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREEzRTk1NjEzNEE0OUVGMDA4RDRCNUEgLyogT2Zm
bGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggKi87IH07CisJCUZEQTNFOTVDMTM0QTQ5RUYwMDhE
NEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTNFOTU4MTM0QTQ5RUYwMDhENEI1QSAvKiBP
ZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLzsgfTsKKwkJRkRBOTMyNUUxNjcwM0IyQTAw
ODk4MkRDIC8qIE9mZmxpbmVBdWRpb0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQTkzMjVCMTY3MDNCMkEwMDg5ODJEQyAvKiBPZmZsaW5l
QXVkaW9Db250ZXh0LmggKi87IH07CisJCUZEQTkzMjY3MTY3MDNCQTkwMDg5ODJEQyAvKiBKU09m
ZmxpbmVBdWRpb0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEZEQTkzMjY1MTY3MDNCQTkwMDg5ODJEQyAvKiBKU09mZmxpbmVBdWRpb0NvbnRl
eHQuaCAqLzsgfTsKKwkJRkRBRjE5OTkxNTEzRDEzMTAwOERCMEMzIC8qIERpcmVjdENvbnZvbHZl
ci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkRBRjE5
OTcxNTEzRDEzMTAwOERCMEMzIC8qIERpcmVjdENvbnZvbHZlci5oICovOyB9OworCQlGREIwNTJF
MDE1NjFBNDJDMDBCNTAwRDYgLyogQXVkaW9TdW1taW5nSnVuY3Rpb24uaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZEQjA1MkRFMTU2MUE0MkMwMEI1MDBE
NiAvKiBBdWRpb1N1bW1pbmdKdW5jdGlvbi5oICovOyB9OworCQlGREIxNzAwNjE0QTJCQUIyMDBB
MkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREIxNzAwNDE0QTJCQUIyMDBBMkI1RDkgLyogTXVsdGlD
aGFubmVsUmVzYW1wbGVyLmggKi87IH07CisJCUZEQkQ0ODBEMTU5QkM2ODcwMDkzRUI0RiAvKiBK
U01lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGREJENDgwQjE1OUJDNjg3MDA5M0VCNEYgLyogSlNNZWRpYVN0
cmVhbUF1ZGlvU291cmNlTm9kZS5oICovOyB9OworCQlGREM1NEYwNTEzOTlCMERBMDA4RDkxMTcg
LyogQmlxdWFkRmlsdGVyTm9kZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRkRDNTRGMDIxMzk5QjBEQTAwOEQ5MTE3IC8qIEJpcXVhZEZpbHRlck5vZGUu
aCAqLzsgfTsKKwkJRkRFMkQ1NUIxNTlFNjZFQjAwRENDQ0Y4IC8qIEF1ZGlvSU9DYWxsYmFjay5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkRFMkQ1NUEx
NTlFNjZFQjAwRENDQ0Y4IC8qIEF1ZGlvSU9DYWxsYmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZERUE2MjQzMTUyMTAyRTIwMDQ3OURGMCAv
KiBKU09zY2lsbGF0b3JOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGREVBNjI0MTE1MjEwMkUyMDA0NzlERjAgLyogSlNPc2NpbGxhdG9yTm9kZS5o
ICovOyB9OworCQlGREVBNjI0NzE1MjEwMkZDMDA0NzlERjAgLyogSlNQZXJpb2RpY1dhdmUuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZERUE2MjQ1MTUy
MTAyRkMwMDQ3OURGMCAvKiBKU1BlcmlvZGljV2F2ZS5oICovOyB9OworCQlGREYwOURDOTEzOTlC
NjIyMDA2ODhFNUIgLyogSlNCaXF1YWRGaWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGREYwOURDNzEzOTlCNjIyMDA2ODhFNUIgLyogSlNC
aXF1YWRGaWx0ZXJOb2RlLmggKi87IH07CisJCUZERjZCQUY5MTM0QTRDOTgwMDgyMjkyMCAvKiBK
U09mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRkRGNkJBRjcxMzRBNEM5ODAwODIyOTIwIC8qIEpTT2ZmbGlu
ZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggKi87IH07CisJCUZERjdFOUM0MTNBQzIxREIwMEE1MUVB
QyAvKiBKU0F1ZGlvQnVmZmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEZERjdFOUMyMTNBQzIxREIwMEE1MUVBQyAvKiBKU0F1ZGlvQnVm
ZmVyQ2FsbGJhY2suaCAqLzsgfTsKKwkJRkUwRDg0RTkxMDQ4NDM0ODAwMUExNzlFIC8qIFdlYkV2
ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTBE
ODRFODEwNDg0MzQ4MDAxQTE3OUUgLyogV2ViRXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGRTM2RkQxNTE2Qzc4MjY1MDBGODg3QzEgLyog
Q2hhbmdlVmVyc2lvbkRhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEZFMzZGRDExMTZDNzgyNjQwMEY4ODdDMSAvKiBDaGFuZ2VWZXJzaW9uRGF0YS5o
ICovOyB9OworCQlGRTM2RkQxNzE2Qzc4MjY1MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0
ZU1hY2hpbmUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEZFMzZGRDEzMTZDNzgyNjQwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlTWFjaGluZS5o
ICovOyB9OworCQlGRTM2RkQxODE2Qzc4MjY1MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUzNkZE
MTQxNkM3ODI2NDAwRjg4N0MxIC8qIFNRTFRyYW5zYWN0aW9uU3RhdGUuaCAqLzsgfTsKKwkJRkU0
NTZGMTkxNjc3RDc0RTAwNUVEREY5IC8qIERhdGFiYXNlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkU0NTZGMTcxNjc3RDc0RTAwNUVEREY5
IC8qIERhdGFiYXNlTWFuYWdlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CisJCUZFNjk5ODcyMTkyMDg3RTcwMDY5MzZCRCAvKiBGbG9hdGluZ1BvaW50
RW52aXJvbm1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEZFNjk5ODcwMTkyMDg3RTcwMDY5MzZCRCAvKiBGbG9hdGluZ1BvaW50RW52aXJvbm1lbnQu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGRTZG
RDQ4RTBGNjc2RTkzMDAwOTI4NzMgLyogSlNDb29yZGluYXRlcy5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkU2RkQ0OEMwRjY3NkU5MzAwMDkyODczIC8q
IEpTQ29vcmRpbmF0ZXMuaCAqLzsgfTsKKwkJRkU4MERBNjQwRTlDNDcwMzAwMEQ2Rjc1IC8qIEpT
R2VvbG9jYXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEZFODBEQTYwMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0aW9uLmggKi87IH07CisJ
CUZFODBEQTY2MEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb3Bvc2l0aW9uLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTgwREE2MjBFOUM0NzAzMDAwRDZG
NzUgLyogSlNHZW9wb3NpdGlvbi5oICovOyB9OworCQlGRTgwREE3MjBFOUM0NzJGMDAwRDZGNzUg
LyogSlNQb3NpdGlvbkVycm9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGRTgwREE2RTBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3NpdGlvbkVycm9yLmgg
Ki87IH07CisJCUZFOEE2NzQ4MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFOEE2NzQ2MTZDREQx
OUUwMDkzMEJGOCAvKiBTUUxTdGF0ZW1lbnQuaCAqLzsgfTsKKwkJRkU5RTg5RkMxNkUyREMwNTAw
QTkwOEY4IC8qIE9yaWdpbkxvY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEZFOUU4OUZBMTZFMkRDMDQwMEE5MDhGOCAvKiBPcmlnaW5Mb2NrLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRkVEMTNENTIw
Q0VBOTQ5NzAwRDg5NDY2IC8qIFJlbmRlclRoZW1lSU9TLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRUQxM0Q1MDBDRUE5NDk3MDBEODk0NjYgLyogUmVu
ZGVyVGhlbWVJT1MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OworCQlGRUUxODExNDE2QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5k
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRUUxODEx
MjE2QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmggKi87IH07CisJCUZG
OTQ1RUNDMTYxRjdGMzYwMDk3MUJDOCAvKiBQc2V1ZG9FbGVtZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRjk0NUVDQTE2MUY3RjM2MDA5NzFCQzgg
LyogUHNldWRvRWxlbWVudC5oICovOyB9OworCQlGRkFDMzBGRTE4NEZCMTQ1MDA4QzRGMUUgLyog
VHJhaWxpbmdPYmplY3RzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRkFDMzBGQzE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdPYmplY3RzLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJRkZEQkMwNDcx
ODNEMjdCNzAwNDA3MTA5IC8qIExpbmVXaWR0aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRkZEQkMwNDUxODNEMjdCNzAwNDA3MTA5IC8qIExpbmVXaWR0
aC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUZG
RUZBQjJBMTgzODBEQTAwMDUxNDUzNCAvKiBMaW5lTGF5b3V0U3RhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZGRUZBQjI5MTgzODBEQTAwMDUxNDUz
NCAvKiBMaW5lTGF5b3V0U3RhdGUuaCAqLzsgfTsKKy8qIEVuZCBQQlhCdWlsZEZpbGUgc2VjdGlv
biAqLworCisvKiBCZWdpbiBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLworCQkxQzA5
RDA0RjFFMzFDMzI5MDA3MjVGMTggLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJ
aXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFsID0gMUMwOUQw
NEIxRTMxQzMyODAwNzI1RjE4IC8qIFBBTC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAy
OworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSAxQzA5RDAzRDFFMzFDMzI4MDA3MjVGMTg7CisJ
CQlyZW1vdGVJbmZvID0gUEFMOworCQl9OworCQkxQzA5RDA2NzFFMzIwNzlEMDA3MjVGMTggLyog
UEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVBy
b3h5OworCQkJY29udGFpbmVyUG9ydGFsID0gMUMwOUQwNEIxRTMxQzMyODAwNzI1RjE4IC8qIFBB
TC54Y29kZXByb2ogKi87CisJCQlwcm94eVR5cGUgPSAxOworCQkJcmVtb3RlR2xvYmFsSURTdHJp
bmcgPSAxQzA5RDAzQzFFMzFDMzI4MDA3MjVGMTg7CisJCQlyZW1vdGVJbmZvID0gUEFMOworCQl9
OworCQk0MTdEQTZENDEzNzM0RTBEMDA3QzU3RkIgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICov
ID0geworCQkJaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OworCQkJY29udGFpbmVyUG9ydGFs
ID0gMDg2N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovOworCQkJcHJv
eHlUeXBlID0gMTsKKwkJCXJlbW90ZUdsb2JhbElEU3RyaW5nID0gOTNGMTk4QTUwODI0NUU1OTAw
MUU5QUJDOworCQkJcmVtb3RlSW5mbyA9IFdlYkNvcmU7CisJCX07CisJCTQxODE2RjgyMTM4NTlD
N0EwMDU3QUFBNCAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8gPSB7CisJCQlpc2EgPSBQQlhD
b250YWluZXJJdGVtUHJveHk7CisJCQljb250YWluZXJQb3J0YWwgPSAwODY3RDY5MEZFODQwMjhG
QzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi87CisJCQlwcm94eVR5cGUgPSAxOworCQkJcmVt
b3RlR2xvYmFsSURTdHJpbmcgPSA5M0YxOThBNTA4MjQ1RTU5MDAxRTlBQkM7CisJCQlyZW1vdGVJ
bmZvID0gV2ViQ29yZTsKKwkJfTsKKwkJNDE4MTZGODQxMzg1OUM3RDAwNTdBQUE0IC8qIFBCWENv
bnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsK
KwkJCWNvbnRhaW5lclBvcnRhbCA9IDA4NjdENjkwRkU4NDAyOEZDMDJBQUMwNyAvKiBQcm9qZWN0
IG9iamVjdCAqLzsKKwkJCXByb3h5VHlwZSA9IDE7CisJCQlyZW1vdGVHbG9iYWxJRFN0cmluZyA9
IDQxN0RBNkNGMTM3MzRFMDIwMDdDNTdGQjsKKwkJCXJlbW90ZUluZm8gPSBXZWJDb3JlVGVzdFN1
cHBvcnQ7CisJCX07CisJCTUzNTVFOERBMUY5NjdFRDMwMDMxRTA4QyAvKiBQQlhDb250YWluZXJJ
dGVtUHJveHkgKi8gPSB7CisJCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7CisJCQljb250
YWluZXJQb3J0YWwgPSAwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3Qg
Ki87CisJCQlwcm94eVR5cGUgPSAxOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA1MzU1RThE
MTFGOTY3RTlEMDAzMUUwOEM7CisJCQlyZW1vdGVJbmZvID0gIkdlbmVyYXRlIFVuaWZpZWQgU291
cmNlcyI7CisJCX07CisJCUREMDQxRkYwMDlEOUUzMjUwMDEwQUYyQSAvKiBQQlhDb250YWluZXJJ
dGVtUHJveHkgKi8gPSB7CisJCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7CisJCQljb250
YWluZXJQb3J0YWwgPSAwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3Qg
Ki87CisJCQlwcm94eVR5cGUgPSAxOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSBERDA0MUZC
RTA5RDlEREJFMDAxMEFGMkE7CisJCQlyZW1vdGVJbmZvID0gIkRlcml2ZWQgU291cmNlcyI7CisJ
CX07CisJCUUxQkE2NkY1MTc0MkJERTAwMEMyMDI1MSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkg
Ki8gPSB7CisJCQlpc2EgPSBQQlhDb250YWluZXJJdGVtUHJveHk7CisJCQljb250YWluZXJQb3J0
YWwgPSAwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi87CisJCQlw
cm94eVR5cGUgPSAxOworCQkJcmVtb3RlR2xvYmFsSURTdHJpbmcgPSA5M0YxOThBNTA4MjQ1RTU5
MDAxRTlBQkM7CisJCQlyZW1vdGVJbmZvID0gV2ViQ29yZTsKKwkJfTsKKwkJRTFCQTY3MUIxNzQy
Q0JGODAwQzIwMjUxIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLyA9IHsKKwkJCWlzYSA9IFBC
WENvbnRhaW5lckl0ZW1Qcm94eTsKKwkJCWNvbnRhaW5lclBvcnRhbCA9IDA4NjdENjkwRkU4NDAy
OEZDMDJBQUMwNyAvKiBQcm9qZWN0IG9iamVjdCAqLzsKKwkJCXByb3h5VHlwZSA9IDE7CisJCQly
ZW1vdGVHbG9iYWxJRFN0cmluZyA9IEUxQkE2NkYzMTc0MkJERTAwMEMyMDI1MTsKKwkJCXJlbW90
ZUluZm8gPSBXZWJDb3JlVGVzdFNoaW07CisJCX07CisvKiBFbmQgUEJYQ29udGFpbmVySXRlbVBy
b3h5IHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYQ29weUZpbGVzQnVpbGRQaGFzZSBzZWN0aW9u
ICovCisJCTFDMTFDQ0I0MEFBNjA5MzcwMERBREIyMCAvKiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJz
ICovID0geworCQkJaXNhID0gUEJYQ29weUZpbGVzQnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9u
TWFzayA9IDIxNDc0ODM2NDc7CisJCQlkc3RQYXRoID0gUHJpdmF0ZUhlYWRlcnM7CisJCQlkc3RT
dWJmb2xkZXJTcGVjID0gMTsKKwkJCWZpbGVzID0gKAorCQkJCTVERjdGNUMyMEYwMUY5MkEwMDUy
NkI0QiAvKiBDU1NQcm9wZXJ0eU5hbWVzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLywK
KwkJCQk3RDc0MUJEQTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENv
cHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJQThEMDZCMzkwQTI2NURDRDAwNUU3MjAzIC8q
IEhUTUxOYW1lcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJMTQwM0JBMEYw
OUVCMThGOTAwNzk3QzdGIC8qIEpTRE9NV2luZG93LmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVy
cyAqLywKKwkJCQkxNERDMEQzODA5RkVEMDczMDA3QjAyMzUgLyogSlNOb2RlLmggaW4gQ29weSBH
ZW5lcmF0ZWQgSGVhZGVycyAqLywKKwkJCQk3Q0Q1OERGRTFGOTU2NUVDMDAxMTI3OTEgLyogU2V0
dGluZ3MuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAorCQkJCTA4QzdBMkM3MTBEQzc0
NjIwMDJEMzY4QiAvKiBTVkdOYW1lcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJ
CQkJMUExNDE0QjYxM0EwRjA1MDAwMTk5OTZDIC8qIFdlYktpdEZvbnRGYW1pbHlOYW1lcy5oIGlu
IENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkpOworCQkJbmFtZSA9ICJDb3B5IEdlbmVy
YXRlZCBIZWFkZXJzIjsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAw
OworCQl9OworCQkzNzE3RDdFNzE3RUNDNTczMDAzQzI3NkQgLyogQ29weSBTY3JpcHRzICovID0g
eworCQkJaXNhID0gUEJYQ29weUZpbGVzQnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9
IDIxNDc0ODM2NDc7CisJCQlkc3RQYXRoID0gUHJpdmF0ZUhlYWRlcnMvU2NyaXB0czsKKwkJCWRz
dFN1YmZvbGRlclNwZWMgPSAxOworCQkJZmlsZXMgPSAoCisJCQkJRjRCRkI5ODUxRTFEREY5QjAw
ODYyQzI0IC8qIER1bXBFZGl0aW5nSGlzdG9yeS5qcyBpbiBDb3B5IFNjcmlwdHMgKi8sCisJCQkJ
RjRCRkI5ODYxRTFEREY5QjAwODYyQzI0IC8qIEVkaXRpbmdIaXN0b3J5VXRpbC5qcyBpbiBDb3B5
IFNjcmlwdHMgKi8sCisJCQkJMzcxN0Q3RTgxN0VDQzU5MTAwM0MyNzZEIC8qIGV4dHJhY3QtbG9j
YWxpemFibGUtc3RyaW5ncy5wbCBpbiBDb3B5IFNjcmlwdHMgKi8sCisJCQkJMzdENDU2RkQxQTlB
NTBEODAwMzMzMEExIC8qIExvY2FsaXphYmxlU3RyaW5ncy5wbSBpbiBDb3B5IFNjcmlwdHMgKi8s
CisJCQkpOworCQkJbmFtZSA9ICJDb3B5IFNjcmlwdHMiOworCQkJcnVuT25seUZvckRlcGxveW1l
bnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CisJCUNEMERCRjAwMTQyMjc2NTcwMDI4MDI2MyAv
KiBDb3B5IEF1ZGlvIFJlc291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWENvcHlGaWxlc0J1aWxk
UGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZHN0UGF0aCA9IGF1
ZGlvOworCQkJZHN0U3ViZm9sZGVyU3BlYyA9IDc7CisJCQlmaWxlcyA9ICgKKwkJCQlDRDRBQzUy
QTE0OTZBRTlBMDA4N0M0RUYgLyogQ29tcG9zaXRlLndhdiBpbiBDb3B5IEF1ZGlvIFJlc291cmNl
cyAqLywKKwkJCSk7CisJCQluYW1lID0gIkNvcHkgQXVkaW8gUmVzb3VyY2VzIjsKKwkJCXJ1bk9u
bHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OworLyogRW5kIFBCWENvcHlG
aWxlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNl
Y3Rpb24gKi8KKwkJMDAxNDYyODgxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9yaWdpbkFjY2Vzc0Vu
dHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDAxNDYyODkxMDNDRDFERTAw
MEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE9yaWdpbkFjY2Vzc0VudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTAwM0YxRkU5MTFFNkFCNDMwMDgyNThEOSAvKiBVc2VyQ29udGVudFR5cGVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVzZXJDb250ZW50VHlwZXMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDA4MUZFRkQxNkIwQTI0NDAwOEFBQTdBIC8qIFB1YmxpY1N1ZmZp
eC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQdWJsaWNTdWZmaXguaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDA4MUZFRkUxNkIwQTJCNjAwOEFBQTdBIC8qIFB1
YmxpY1N1ZmZpeE1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFB1YmxpY1N1ZmZpeE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDBCOTMx
ODExM0JBODY3RjAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFyc2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTERvY3VtZW50UGFyc2VyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDBCOTMxODIxM0JBODY3RjAwMzVBOTQ4IC8qIFhNTERvY3Vt
ZW50UGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTERvY3VtZW50
UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTAwQjkzMTgzMTNCQTg2N0Yw
MDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlckxpYnhtbDIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDBCOTMxODUxM0JBODY3RjAwMzVBOTQ4IC8qIFhNTERv
Y3VtZW50UGFyc2VyU2NvcGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gWE1MRG9jdW1lbnRQYXJzZXJTY29wZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTAwQjkzMTg2MTNCQTg2N0YwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNjb3BlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTERvY3VtZW50UGFyc2VyU2NvcGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDBDNjBFM0UxM0Q3NkQ3RTAwOTJBMjc1
IC8qIE1hcmt1cFRva2VuaXplcklubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTWFya3VwVG9rZW5pemVySW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwMUQzQ0Y3QzE0QkQwQTMwMDBGRTk5NzAgLyogV2ViR0xDb250ZXh0R3JvdXAuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb250ZXh0R3JvdXAuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwMUQzQ0Y3RDE0QkQwQTMwMDBGRTk5NzAg
LyogV2ViR0xDb250ZXh0R3JvdXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViR0xDb250ZXh0R3JvdXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDFEM0NG
N0UxNEJEMEEzMDAwRkU5OTcwIC8qIFdlYkdMQ29udGV4dE9iamVjdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTENvbnRleHRPYmplY3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwMUQzQ0Y3RjE0QkQwQTMwMDBGRTk5NzAgLyogV2ViR0xD
b250ZXh0T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29u
dGV4dE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwMUQzQ0Y4MDE0QkQw
QTMwMDBGRTk5NzAgLyogV2ViR0xTaGFyZWRPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xTaGFyZWRPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwMUQzQ0Y4MTE0QkQwQTMwMDBGRTk5NzAgLyogV2ViR0xTaGFyZWRPYmpl
Y3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xTaGFyZWRPYmplY3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDU0RTNBMzMyNTZDM0JEOTAwNzJDNUI5
IC8qIFNoYWRvd1Jvb3RJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYWRvd1Jvb3RJbml0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA1NEUzQTM1MjU2QzNCRDkwMDcyQzVCOSAvKiBT
aGFkb3dSb290SW5pdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2hhZG93Um9vdEluaXQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwNTYyRjk2MDE1NzNGODhGMDAzMUNBMTYgLyogUGxhdGZvcm1MYXll
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUxheWVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA1RkQ2OURGMTI4NDVENDMwMEIyQkVCMyAvKiBE
T01UaW1lU3RhbXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NVGltZVN0
YW1wLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA2MDI3Q0FDMEIxQ0JGQzAwMDg4
NEIyRCAvKiBDb250ZXh0TWVudUl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENvbnRleHRNZW51SXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNjIy
ODc4MzBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJlY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZvY3VzRGlyZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTA2NUFENEYyMEIwQzJFREEwMDVBMkIxRCAvKiBDb250ZXh0TWVudUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGV4dE1lbnVDbGllbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDY1QUQ0RjMwQjBDMkVEQTAwNUEyQjFEIC8q
IENvbnRleHRNZW51Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ29udGV4dE1lbnVDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDY1QUQ0RjQwQjBDMkVEQTAwNUEyQjFEIC8qIENvbnRleHRNZW51Q29udHJvbGxl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGV4dE1lbnVDb250cm9s
bGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA2NjhFMTg5MEFERDk2MjQwMDQx
MjhFMCAvKiBQb3B1cE1lbnUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBv
cHVwTWVudS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNjZDNzcyQTBBQjYwM0I3
MDAyMzhDQzQgLyogRmlsZUNob29zZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZpbGVDaG9vc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA2NkM3NzJF
MEFCNjAzRkQwMDIzOENDNCAvKiBSZW5kZXJGaWxlVXBsb2FkQ29udHJvbC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNjZDNzcyRjBBQjYwM0ZEMDAyMzhDQzQg
LyogUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlbmRlckZpbGVVcGxvYWRDb250cm9sLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTA2RTgxRUQ2MEFCNUQ1RTkwMEM4NzgzNyAvKiBMb2NhbEN1cnJlbnRHcmFwaGljc0Nv
bnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9jYWxDdXJyZW50R3Jh
cGhpY3NDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA2RTgxRUVCMEFC
NURBOTcwMEM4NzgzNyAvKiBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHRNYWMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTG9jYWxDdXJyZW50R3JhcGhpY3ND
b250ZXh0TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzAzMzREMDE0NTlG
RkFDMDA4RDhENDUgLyogVHJhY2tFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBUcmFja0V2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDcwMzM0RDExNDU5RkZBQzAwOEQ4RDQ1IC8qIFRyYWNrRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwNzAzMzREMjE0NTlGRkFDMDA4RDhENDUgLyogVHJhY2tFdmVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gVHJhY2tFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3MDMzNEQ2MTQ1OUZGRDUwMDhEOEQ0NSAvKiBUcmFja0Jhc2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tCYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTA3MDMzNEQ4MTQ1QTAwNkYwMDhEOEQ0NSAvKiBUcmFja0Jhc2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVHJhY2tCYXNlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDcwMzM0RTgxNDVBMUYzNTAwOEQ4RDQ1IC8qIEpTVHJhY2tDdXN0
b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUcmFja0N1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MDM2M0RBMTgxQTFDREMwMEMw
NzRBNSAvKiBBVkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEFWQ2FwdHVyZURldmljZU1hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDcwMzYzREIxODFBMUNEQzAwQzA3NEE1IC8qIEFWQ2FwdHVyZURldmljZU1hbmFn
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBVkNhcHR1cmVE
ZXZpY2VNYW5hZ2VyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzAzNjNERTE4
MUExQ0RDMDBDMDc0QTUgLyogQVZWaWRlb0NhcHR1cmVTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQVZWaWRlb0NhcHR1cmVTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcwMzYzREYxODFBMUNEQzAwQzA3NEE1IC8qIEFWVmlkZW9DYXB0dXJl
U291cmNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQVZWaWRl
b0NhcHR1cmVTb3VyY2UubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MDRBNDAz
MUQ2REU5RjEwMDg2RENEQiAvKiBPdmVyY29uc3RyYWluZWRFcnJvci5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gT3ZlcmNvbnN0cmFpbmVkRXJyb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNzA0QTQwNTFENkRFOUYxMDA4NkRDREIgLyogT3ZlcmNvbnN0cmFpbmVkRXJy
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3ZlcmNvbnN0cmFpbmVkRXJy
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwNEE0MDkxRDZERkM2OTAwODZE
Q0RCIC8qIEpTT3ZlcmNvbnN0cmFpbmVkRXJyb3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNPdmVyY29uc3RyYWluZWRFcnJvci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3MDRBNDBBMUQ2REZDNjkwMDg2RENEQiAvKiBKU092ZXJjb25zdHJh
aW5lZEVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTT3ZlcmNvbnN0
cmFpbmVkRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwNEE0MTMxRDZG
MzlGQjAwODZEQ0RCIC8qIEpTT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU092ZXJjb25zdHJhaW5lZEVycm9yRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA0QTQxNDFENkYzOUZCMDA4NkRD
REIgLyogSlNPdmVyY29uc3RyYWluZWRFcnJvckV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwNzA2QTBENzI0MDgzMEE2MDBFOTM4MTggLyogSW5iYW5kR2VuZXJp
Y0N1ZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5iYW5k
R2VuZXJpY0N1ZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcw
NzU2ODgxNDIyNjJENjAwNDE0MTYxIC8qIEhUTUxUcmFja0VsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRyYWNrRWxlbWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MDc1Njg5MTQyMjYyRDYwMDQxNDE2MSAvKiBIVE1MVHJh
Y2tFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxUcmFja0Vs
ZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwNzU2OEExNDIyNjJENjAw
NDE0MTYxIC8qIEhUTUxUcmFja0VsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhU
TUxUcmFja0VsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA3NTY4
RTE0MjI2NjhDMDA0MTQxNjEgLyogSlNUZXh0VHJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0VHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzA3NTY4RjE0MjI2NjhDMDA0MTQxNjEgLyogSlNUZXh0VHJhY2suaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNUZXh0VHJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcwNzU2RDExNDIzOUE0RTAwNDE0MTYxIC8qIEpTSFRNTFRyYWNrRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxUcmFj
a0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA3NTZEMjE0MjM5
QTRFMDA0MTQxNjEgLyogSlNIVE1MVHJhY2tFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTSFRNTFRyYWNrRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzA3NTZENzE0MjM5QjRCMDA0MTQxNjEgLyogSlNUZXh0VHJhY2tDdWUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0VHJhY2tDdWUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA3NTZEODE0MjM5QjRCMDA0MTQxNjEgLyog
SlNUZXh0VHJhY2tDdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNUZXh0
VHJhY2tDdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwNzU2RDkxNDIzOUI0
QzAwNDE0MTYxIC8qIEpTVGV4dFRyYWNrQ3VlTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1RleHRUcmFja0N1ZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwNzA3NTZEQTE0MjM5QjRFMDA0MTQxNjEgLyogSlNUZXh0VHJhY2tDdWVM
aXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVGV4dFRyYWNrQ3VlTGlz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA5RDc4QzFBRTU1NTU0MDA0RTQy
RjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcwOUQ3OEQxQUU1NTU1NDAwNEU0MkY4IC8qIFdlYk1lZGlhU2Vzc2lv
bk1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViTWVkaWFTZXNz
aW9uTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzA5RDc5MDFBRTU1
NTdFMDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwOUQ3OTExQUU1NTU3RTAwNEU0MkY4IC8q
IFdlYk1lZGlhU2Vzc2lvbk1hbmFnZXJNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViTWVkaWFTZXNzaW9uTWFuYWdlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzA5RDc5NDFBRTU1QTI5MDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdl
ckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJNZWRpYVNlc3Np
b25NYW5hZ2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MDlGQzRE
MTAyNURFRTMwMDU5Q0RCQSAvKiBBY2Nlc3NpYmlsaXR5U2xpZGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlTbGlkZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcwREQ4RjUwRjAxODY4MDAwNzI3REVCIC8qIG1lZGlhQ29udHJvbHMu
Y3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IG1lZGlhQ29udHJvbHMuY3NzOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwNzBFMDkxODE4NzVFRDkzMDAzQTFEM0MgLyogUGxhdGZvcm1N
ZWRpYVNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1N
ZWRpYVNlc3Npb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwRTA5MUExODc1
RUY3MTAwM0ExRDNDIC8qIFBsYXRmb3JtTWVkaWFTZXNzaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtTWVkaWFTZXNzaW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcwRTgxRDAxQkYyNzY1NjAwMUZEQTQ4IC8qIFZpZGVvVHJh
Y2tQcml2YXRlTWVkaWFTdHJlYW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VmlkZW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwNzBGNTQ5NzE3RjEyRjZCMDAxNjlFMDQgLyogTWVkaWFTdHJlYW1Db25zdHJhaW50c1Zh
bGlkYXRpb25DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFT
dHJlYW1Db25zdHJhaW50c1ZhbGlkYXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDcxMTU4OEYxN0RGNjMzNzAwRURGRTJCIC8qIE1lZGlhU3RyZWFtUHJpdmF0ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbVByaXZh
dGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzE3NzY1RTI2QzMwM0I3MDBB
NjMyOTkgLyogQ0dEaXNwbGF5U3RyZWFtU2NyZWVuQ2FwdHVyZVNvdXJjZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDR0Rpc3BsYXlTdHJlYW1TY3JlZW5DYXB0dXJlU291cmNlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3MTc3NjVGMjZDMzAzQjcwMEE2MzI5OSAvKiBDR0Rpc3BsYXlTdHJl
YW1TY3JlZW5DYXB0dXJlU291cmNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQ0dEaXNwbGF5
U3RyZWFtU2NyZWVuQ2FwdHVyZVNvdXJjZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDcxQTlFQzAxNjhGQjU2QzAwMjYyOUY5IC8qIFRleHRUcmFja0N1ZUdlbmVyaWMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dFRyYWNrQ3VlR2VuZXJpYy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MUE5RUMxMTY4RkI1NkMwMDI2MjlG
OSAvKiBUZXh0VHJhY2tDdWVHZW5lcmljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFRleHRUcmFja0N1ZUdlbmVyaWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDcxRTQ5NkQxQUQ1QUEwRDAwOEE1MEI0IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDb2NvYS5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGxheWJhY2tUYXJn
ZXRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcxRTQ5NkYxQUQ1QUI1
RTAwOEE1MEI0IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDb2NvYS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXliYWNrVGFyZ2V0Q29jb2EuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNEMxN0NFQzMyNzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFt
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNEQxN0NFQzMyNzAwODQ4RTUx
IC8qIE1lZGlhU3RyZWFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlh
U3RyZWFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjRFMTdDRUMzMjcw
MDg0OEU1MSAvKiBNZWRpYVN0cmVhbS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFT
dHJlYW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI1NDE3Q0VDMzI3
MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1UcmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbVRyYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDcyMjFCNTUxN0NFQzMyNzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFtVHJhY2suaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1UcmFjay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI1NjE3Q0VDMzI3MDA4NDhFNTEgLyogTWVk
aWFTdHJlYW1UcmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFTdHJlYW1UcmFj
ay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjU3MTdDRUMzMjcwMDg0
OEU1MSAvKiBNZWRpYVN0cmVhbVRyYWNrRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gTWVkaWFTdHJlYW1UcmFja0V2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNTgxN0NFQzMyNzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFtVHJh
Y2tFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbVRy
YWNrRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNTkxN0NFQzMy
NzAwODQ4RTUxIC8qIE1lZGlhU3RyZWFtVHJhY2tFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gTWVkaWFTdHJlYW1UcmFja0V2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMDcyMjFCNjMxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFDaGFubmVsLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNjQxN0NFQzMyNzAwODQ4RTUxIC8qIFJU
Q0RhdGFDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0RhdGFD
aGFubmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjY1MTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRD
RGF0YUNoYW5uZWwuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI2NjE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENEYXRhQ2hhbm5lbEV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNjcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFD
aGFubmVsRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRGF0YUNo
YW5uZWxFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI2ODE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUlRDRGF0YUNoYW5uZWxFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3MjIxQjY5MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GU2VuZGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0RUTUZTZW5kZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI2QTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRFRN
RlNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEVE1GU2VuZGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjZCMTdDRUMzMjcwMDg0OEU1
MSAvKiBSVENEVE1GU2VuZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENEVE1GU2Vu
ZGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNkMxN0NFQzMyNzAw
ODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjZEMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEVE1GVG9u
ZUNoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0RUTUZU
b25lQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNkUx
N0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwNzIyMUI3MTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0ljZUNhbmRpZGF0
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjcyMTdDRUMzMjcwMDg0
OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUlRDSWNlQ2FuZGlkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIx
QjczMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENJY2VDYW5kaWRhdGUuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFJUQ0ljZUNhbmRpZGF0ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3MjIxQjc0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1BlZXJDb25uZWN0
aW9uSWNlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI3NTE3
Q0VDMzI3MDA4NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VFdmVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjc2MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQ
ZWVyQ29ubmVjdGlvbkljZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENQZWVy
Q29ubmVjdGlvbkljZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcy
MjFCNzcxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1BlZXJDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1BlZXJDb25uZWN0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCNzgxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1Bl
ZXJDb25uZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1BlZXJD
b25uZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjc5MTdDRUMz
MjcwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUlRDUGVlckNvbm5lY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
NzIyMUI3QTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjdCMTdDRUMzMjcwMDg0OEU1
MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3MjIxQjdDMTdDRUMzMjcwMDg0OEU1MSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb24uaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjg0MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENT
dGF0c1JlcG9ydC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENTdGF0c1Jl
cG9ydC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUI4NTE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDU3RhdHNSZXBvcnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1N0
YXRzUmVwb3J0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCOEQxN0NF
QzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBVc2VyTWVkaWFDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDcyMjFCOEUxN0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNlck1lZGlhQ29udHJvbGxlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjhGMTdDRUMzMjcwMDg0OEU1
MSAvKiBVc2VyTWVkaWFDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFVzZXJNZWRpYUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDcyMjFCOTAxN0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYVJlcXVlc3QuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNlck1lZGlhUmVxdWVzdC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MjIxQjkxMTdDRUMzMjcwMDg0OEU1MSAvKiBVc2Vy
TWVkaWFSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVzZXJNZWRp
YVJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCOTkxN0NGMEFE
NDAwODQ4RTUxIC8qIE1lZGlhQ29uc3RyYWludHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFDb25zdHJhaW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzIyMUI5RDE3Q0YwQUQ0MDA4NDhFNTEgLyogTWVkaWFTdHJlYW1Qcml2YXRlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU3RyZWFtUHJpdmF0ZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUJBMjE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDRGF0
YUNoYW5uZWxIYW5kbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0Rh
dGFDaGFubmVsSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUJB
MzE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyQ2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsSGFuZGxlckNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUJBNjE3Q0YwQUQ0MDA4NDhFNTEg
LyogUlRDSWNlQ2FuZGlkYXRlRGVzY3JpcHRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSVENJY2VDYW5kaWRhdGVEZXNjcmlwdG9yLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCQTcxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRp
ZGF0ZURlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDSWNl
Q2FuZGlkYXRlRGVzY3JpcHRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIy
MUJBQTE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1BlZXJDb25uZWN0aW9uSGFuZGxl
ckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUJBQjE3Q0YwQUQ0
MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENTZXNzaW9uRGVzY3JpcHRpb25EZXNjcmlw
dG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyMjFCQUMxN0NGMEFENDAw
ODQ4RTUxIC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDU2Vzc2lvbkRlc2NyaXB0aW9uRGVzY3JpcHRvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzIyMUJBRDE3Q0YwQUQ0MDA4NDhFNTEgLyog
UlRDU2Vzc2lvbkRlc2NyaXB0aW9uUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTA3MjIxQkIwMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENWb2lkUmVxdWVzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENWb2lkUmVxdWVzdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzI3N0U0MDE3RDAxOENDMDAxNTUzNEQgLyogSlNN
ZWRpYVN0cmVhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01l
ZGlhU3RyZWFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyNzdFNDAxN0Qw
MThDQzAwMTU1MzRFIC8qIEpTQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJhY2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDYW52YXNDYXB0dXJlTWVkaWFTdHJl
YW1UcmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mjc3RTQxMTdEMDE4
Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTTWVkaWFTdHJlYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcy
NzdFNDExN0QwMThDQzAwMTU1MzRFIC8qIEpTQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJhY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDYW52YXNDYXB0dXJlTWVkaWFT
dHJlYW1UcmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzI3N0U0MjE3RDAx
OENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFTdHJlYW1BdWRpb0Rlc3Rp
bmF0aW9uTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mjc3RTQzMTdE
MDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRp
b25Ob2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mjc3RTQ2MTdEMDE4Q0Mw
MDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNNZWRpYVN0cmVhbVRyYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMDcyNzdFNDcxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhU3RyZWFtVHJhY2su
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyNzdFNDgxN0QwMThDQzAwMTU1MzRE
IC8qIEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcyNzdFNDkxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1U
cmFja0V2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFTdHJl
YW1UcmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mjg0N0UyMTZF
QkM1QjAwMDQzQ0ZBNCAvKiBQbGF0Zm9ybVRleHRUcmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0
Zm9ybVRleHRUcmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzI4ODBDRTIw
MTBFRUQ2MDA3MUIyNTUgLyogUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzI4ODBEMDIwMTBFRUQ3MDA3MUIy
NTUgLyogUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcyQTcwM0UxRDZFOEY2MjAwREYwQUZDIC8qIE92ZXJjb25zdHJhaW5l
ZEVycm9yRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3ZlcmNvbnN0
cmFpbmVkRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBNzAz
RjFENkU4RjYyMDBERjBBRkMgLyogT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5S
ZXBsYWNlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5SZXBs
YWNlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFFMDE4M0MwNzQx
MDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTExODNDMDc0MTAwMEE1OTg4IC8q
IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRo
ID0gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTMxODND
MDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUU0MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0
aCA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzJDQTg2MDE2Q0I0REMzMDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNl
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYXB0aW9uVXNlclBy
ZWZlcmVuY2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyREJCRkIyNURC
MzhCQzAwQTEzNTBFIC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVNl
c3Npb25Db29yZGluYXRvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkRC
QzAzMjVEQzZCRDMwMEExMzUwRSAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBNZWRpYVNlc3Npb25Db29yZGluYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzJEQkMwNTI1REM2QkQzMDBBMTM1MEUgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJEQkMwNjI1REM2RURBMDBBMTM1MEUgLyog
SlNNZWRpYVNlc3Npb25Db29yZGluYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhU2Vzc2lv
bkNvb3JkaW5hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkRCQzA3MjVE
QzZFREEwMEExMzUwRSAvKiBKU01lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwNzM2QjczMDI2MDk0QTM3MDBFMDY5OTQgLyogTWVkaWFTZXNzaW9uQ29v
cmRpbmF0b3JNaXhpbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JNaXhpbi5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MzZCNzMyMjYwOTU1NTQwMEUwNjk5NCAv
KiBNZWRpYVNlc3Npb25QbGF5bGlzdE1peGluLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVNlc3Npb25QbGF5bGlz
dE1peGluLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDczNkI3MzMyNjBBN0I2
NDAwRTA2OTk0IC8qIE1lZGlhTWV0YWRhdGFQbGF5bGlzdE1peGluLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYU1l
dGFkYXRhUGxheWxpc3RNaXhpbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
Mzc5NERDMTlFRTJDNTIwMEU1QTA0NSAvKiBSVENPZmZlckFuc3dlck9wdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mzc5NEUzMTlFRTJGRjIwMEU1QTA0NSAvKiBKU1JU
Q0NvbmZpZ3VyYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNSVENDb25maWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcz
Nzk0RTQxOUVFMkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0NvbmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDczNzk0RTkxOUVFMzQxRTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2Vy
dmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlU2Vy
dmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDczNzk0RUExOUVFMzQxRTAw
RTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTUlRDSWNlU2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Mzc5
NEYzMTlGNTg2NEUwMEU1QTA0NSAvKiBSVENEYXRhQ2hhbm5lbEhhbmRsZXJNb2NrLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsSGFuZGxlck1v
Y2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzM3OTRGNDE5RjU4NjRFMDBF
NUEwNDUgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSVENEYXRhQ2hhbm5lbEhhbmRsZXJNb2NrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3Mzc5NEY3MTlGNTg2NEUwMEU1QTA0NSAvKiBSVENOb3RpZmllcnNN
b2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ05vdGlmaWVy
c01vY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzM3OTRGODE5RjU4NjRF
MDBFNUEwNDUgLyogUlRDTm90aWZpZXJzTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSVENOb3RpZmllcnNNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3MzhFNUU4MjQ5OTY4QUMwMERBMTAxQyAvKiBBVk91dHB1dERldmljZU1lbnVDb250cm9sbGVy
VGFyZ2V0UGlja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFWT3V0cHV0RGV2aWNlTWVudUNvbnRyb2xs
ZXJUYXJnZXRQaWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDczOEU1RUEy
NDk5NjhBRDAwREExMDFDIC8qIEFWT3V0cHV0RGV2aWNlTWVudUNvbnRyb2xsZXJUYXJnZXRQaWNr
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBVk91dHB1dERldmljZU1lbnVDb250cm9sbGVy
VGFyZ2V0UGlja2VyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzM4RTVFQjI0
OTk2OTA5MDBEQTEwMUMgLyogQVZQbGF5YmFja1RhcmdldFBpY2tlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBVlBsYXliYWNrVGFyZ2V0UGlja2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3M0ExNTUxMjE3N0EzOTgwMEVBMDhGMiAvKiBSZW1vdGVWaWRlb1NhbXBsZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW1vdGVWaWRlb1NhbXBsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTA3M0ExNTUzMjE3N0EzOUEwMEVBMDhGMiAvKiBSZW1vdGVWaWRlb1NhbXBsZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZW1vdGVWaWRlb1NhbXBsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNzNCODc1NjFFNDBEQ0U1MDA3MUMwRUMgLyogQXVkaW9TdHJlYW1EZXNjcmlw
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1N0cmVhbURlc2Ny
aXB0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3M0I4NzU3MUU0MERDRkQw
MDcxQzBFQyAvKiBDQUF1ZGlvU3RyZWFtRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQ0FBdWRpb1N0cmVhbURlc2NyaXB0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDczQjg3NTgxRTQwRENGRDAwNzFDMEVDIC8qIENBQXVk
aW9TdHJlYW1EZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
QUF1ZGlvU3RyZWFtRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDczQjg3NjIxRTQzODU5RDAwNzFDMEVDIC8qIEF1ZGlvU2FtcGxlQnVmZmVyTGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb1NhbXBsZUJ1ZmZlckxpc3Qu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzNCODc2MzFFNDM4NTlEMDA3MUMw
RUMgLyogQXVkaW9TYW1wbGVCdWZmZXJMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEF1ZGlvU2FtcGxlQnVmZmVyTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwNzNCODc2NDFFNDM4NTlEMDA3MUMwRUMgLyogQXVkaW9TYW1wbGVEYXRhU291cmNlLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQXVkaW9TYW1wbGVEYXRh
U291cmNlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzNCODc2NTFFNDM4NTlE
MDA3MUMwRUMgLyogQXVkaW9TYW1wbGVEYXRhU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEF1ZGlvU2FtcGxlRGF0YVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNzQwQjE0MTI1REUzMUE4MDBFMzhEQkEgLyogTW9ja01lZGlhU2Vzc2lvbkNv
b3JkaW5hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tNZWRpYVNlc3Npb25Db29yZGluYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzQwQjE0MzI1REUzMUE5MDBFMzhEQkEg
LyogTW9ja01lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1v
Y2tNZWRpYVNlc3Npb25Db29yZGluYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3NDQ3MUZEMjVFMTgwMDUwMDU0QjIzMSAvKiBNZWRpYVNlc3Npb25SZWFkeVN0YXRlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1lZGlhU2Vzc2lvblJlYWR5U3RhdGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDc0NDcxRkYyNUUxODAwNTAwNTRCMjMxIC8qIE1lZGlhU2Vzc2lvblJl
YWR5U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhU2Vzc2lvblJlYWR5U3RhdGUuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwNzQ0RUNFQjFFMEM0QUU1MDAwRDA5NDQgLyogTW9ja0F1ZGlv
U2hhcmVkVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrQXVkaW9T
aGFyZWRVbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3NDRFQ0VDMUUwQzRB
RTUwMDBEMDk0NCAvKiBNb2NrQXVkaW9TaGFyZWRVbml0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gTW9ja0F1ZGlvU2hhcmVkVW5pdC5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDc0NkQzMEEyMTQ2RUEzNzAwM0RERjg0IC8qIEltYWdlVHJhbnNm
ZXJTZXNzaW9uVlQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJ
bWFnZVRyYW5zZmVyU2Vzc2lvblZULm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
NzQ2RDMwQzIxNDZFQTM4MDAzRERGODQgLyogSW1hZ2VUcmFuc2ZlclNlc3Npb25WVC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZVRyYW5zZmVyU2Vzc2lvblZULmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3NEU4MkI4MThBNjlGMEUwMDdFRjU0QyAvKiBQ
bGF0Zm9ybVRpbWVSYW5nZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDc0RTgyQjkxOEE2OUYwRTAwN0VGNTRDIC8qIFBsYXRmb3JtVGltZVJhbmdlcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybVRpbWVSYW5nZXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc1MDMzQTYyNTJCRDM2ODAwRjcwQ0UzIC8qIFZpZGVvUGxh
eWJhY2tRdWFsaXR5TWV0cmljcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBW
aWRlb1BsYXliYWNrUXVhbGl0eU1ldHJpY3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDc1Mzg2MDAxNDQ4OUU5ODAwQjc4NDUyIC8qIENhY2hlZFRleHRUcmFjay5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWNoZWRUZXh0VHJhY2suY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzUzODYwMTE0NDg5RTk4MDBCNzg0NTIgLyogQ2Fj
aGVkVGV4dFRyYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFRl
eHRUcmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzU0QTVFODIxNUVBM0I3
MDAyRDNBOTkgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVhbHRpbWVNZWRpYVNvdXJjZUZhY3RvcnkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc1NEE1RUIyMTVFQURGMzAwMkQzQTk5IC8qIFJlYWx0aW1l
TWVkaWFTb3VyY2VGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlYWx0aW1lTWVkaWFTb3VyY2VGYWN0b3J5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDc1N0IxM0MyMTRBRTc5NzAwNzk0QjBEIC8qIFZpZGVvUHJlc2V0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvUHJlc2V0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3NjExREI4MjQzRkI3NUMwMEQ4MDcwNCAvKiBNZWRpYVVzYWdlSW5m
by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVVzYWdlSW5mby5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzYzOEE5NzE4ODQ0ODcyMDBFMTVBMUIgLyog
TWVkaWFTZXNzaW9uTWFuYWdlcklPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNZWRpYVNlc3Npb25NYW5hZ2VySU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3NjM4QTk4MTg4NDQ4NzIwMEUxNUExQiAvKiBNZWRpYVNlc3Npb25NYW5hZ2VySU9TLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWVkaWFTZXNzaW9uTWFuYWdl
cklPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc2OTcwODQxNDYzQUQ4NzAw
RjUwMkNGIC8qIFRleHRUcmFja0xpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gVGV4dFRyYWNrTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3Njk3MDg1MTQ2M0FEODcwMEY1MDJDRiAvKiBUZXh0VHJhY2tMaXN0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRUcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMDc2RDFDMUQyM0Y2RDlEODAwRDk1QjA2IC8qIFNlcmlhbGl6ZWRQbGF0Zm9y
bURhdGFDdWVWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3Vl
VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc2RTExQkUxRjY4M0UwRDAw
MTc3Mzk1IC8qIFRyYWNrUHJpdmF0ZUJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gVHJhY2tQcml2YXRlQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTA3NkYwRDA5MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDc2RjBEMEExMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3NjY0RkEx
ODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3NzY2NEZCMTgzRTZCNUMw
MDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3QUYxM0UxOEY0QUU0MDAwMDFFRDYxIC8qIFNlcmlh
bGl6ZWRQbGF0Zm9ybURhdGFDdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZU1h
Yy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJpYWxpemVkUGxhdGZvcm1E
YXRhQ3VlTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3N0FGMTQyMThGNEIx
QkIwMDAxRUQ2MSAvKiBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlTWFjLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZU1h
Yy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3QjY0MTAxQjk0RjEyRTAwM0U5
QUQ1IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3QjY0MTExQjk0RjEyRTAwM0U5QUQ1IC8q
IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3N0I2NDE0MUI5NUY3MDMwMDNFOUFENSAvKiBNZWRpYVBsYXliYWNr
VGFyZ2V0TW9jay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRp
YVBsYXliYWNrVGFyZ2V0TW9jay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
N0I2NDE1MUI5NUY3MDMwMDNFOUFENSAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0TW9jay5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXliYWNrVGFyZ2V0TW9jay5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzdCQTU3QzI2MEZFNzM4MDA3MkYxOUYgLyog
TWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU2Vz
c2lvbkNvb3JkaW5hdG9yUHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
NzdCQTU3RDI2MEZFNzM5MDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcml2YXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yUHJpdmF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3N0JBNTg4MjYxMjZENjYwMDcyRjE5
RiAvKiBNZWRpYVNlc3Npb25Db29yZGluYXRvclN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlh
U2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDc3QkE1OEEyNjEyNkQ2QjAwNzJGMTlGIC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwNzgzMjI4MjE4MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1B
dWRpb1NvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRp
YVN0cmVhbUF1ZGlvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc4
MzIyODMxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzg0NjM0MDE0NUIxNTFBMDBBNThERjEgLyogSlNU
cmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJh
Y2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3ODQ2MzQxMTQ1QjE1
MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNUcmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3ODQ2
Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVHJhY2tDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMDc4NjMzRDcyM0ZFMDk2NDAwODdBRTIxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybURhdGFD
dWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3ODYzM0RFMjNGRURGMjIwMDg3QUUyMSAv
KiBJbmJhbmRHZW5lcmljQ3VlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluYmFuZEdlbmVyaWNDdWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc4NjMzRjgyNDA3MTVEMjAwODdBRTIxIC8q
IEluYmFuZEdlbmVyaWNDdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5iYW5kR2VuZXJpY0N1
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3ODdDNDY3MUJGQkRGNkYwMDZE
Q0Q3RiAvKiBKU01lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3ODdDNDY4MUJGQkRGNkYwMDZE
Q0Q3RiAvKiBKU01lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzhFMDk0ODE3RDE3MDk2MDA0MjBBQTEgLyog
TWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc4RTA5NDkxN0QxNzA5NjAwNDIwQUExIC8qIE1l
ZGlhU3RyZWFtQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwNzhFMDk0QTE3RDE3MDk2MDA0MjBBQTEgLyogTWVkaWFTdHJlYW1B
dWRpb0Rlc3RpbmF0aW9uTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFTdHJl
YW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3OEUzQ0JFMUZFMTlGMzAwMDQ4M0MxRCAvKiBNZWRpYVN0cmVhbVJlcXVlc3QuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1SZXF1ZXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3OEU0M0Q3MUFCQjZDN0UwMDFDMkZBNiAvKiBNZWRpYVBs
YXliYWNrVGFyZ2V0UGlja2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzhFNDNEODFBQkI2QzdFMDAxQzJGQTYgLyogTWVkaWFQbGF5YmFja1RhcmdldFBp
Y2tlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXliYWNrVGFy
Z2V0UGlja2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3OEU0M0RCMUFCQjZG
NkYwMDFDMkZBNiAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyTWFjLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNYWMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc4RTQzREMxQUJCNkY2RjAwMUMyRkE2IC8qIE1l
ZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyTWFjLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwNzkyMTY1MzFBQTU2MEFBMDBBM0MwNDkgLyogTWVkaWFQbGF5
YmFja1RhcmdldENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YVBsYXliYWNrVGFyZ2V0Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
OTQxNzhGMTY2RTg1NUYwMDk0MTZDMiAvKiBJbmJhbmRUZXh0VHJhY2suY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5iYW5kVGV4dFRyYWNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NDE3OTAxNjZFODU1RjAwOTQxNkMyIC8qIEluYmFuZFRl
eHRUcmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmJhbmRUZXh0VHJh
Y2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NDE3OTMxNjZFQTA0RTAwOTQx
NkMyIC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzk2OUQ5MTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0RhdGFDaGFubmVsLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEOTIxN0QxNDE1MTAwN0ZGODQy
IC8qIEpTUlRDRGF0YUNoYW5uZWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSVENEYXRhQ2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5
MzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDRGF0YUNoYW5uZWxFdmVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3OTY5RDk0MTdEMTQxNTEwMDdGRjg0MiAvKiBK
U1JUQ0RhdGFDaGFubmVsRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSVENEYXRhQ2hhbm5lbEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
OTY5RDk1MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZTZW5kZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENEVE1GU2VuZGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEOTYxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRN
RlNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ0RUTUZTZW5k
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEOTcxN0QxNDE1MTAwN0ZG
ODQyIC8qIEpTUlRDRFRNRlRvbmVDaGFuZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5ODE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEVE1G
VG9uZUNoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRD
RFRNRlRvbmVDaGFuZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2
OUQ5QjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENJY2VDYW5kaWRhdGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENJY2VDYW5kaWRhdGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5QzE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENJ
Y2VDYW5kaWRhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENJY2VD
YW5kaWRhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEOUQxN0QxNDE1
MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25JY2VFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ1BlZXJDb25uZWN0aW9uSWNlRXZlbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OUQ5RTE3RDE0MTUxMDA3RkY4NDIg
LyogSlNSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTUlRDUGVlckNvbm5lY3Rpb25JY2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwNzk2OUQ5RjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVj
dGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ1BlZXJD
b25uZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEQTAxN0Qx
NDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5lY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNSVENQZWVyQ29ubmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNzk2OURBMTE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENTZXNzaW9uRGVzY3Jp
cHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENTZXNz
aW9uRGVzY3JpcHRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzk2OURB
MjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENTZXNzaW9uRGVzY3JpcHRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENTZXNzaW9uRGVzY3JpcHRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5NjlEQTcxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRD
U3RhdHNSZXBvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNS
VENTdGF0c1JlcG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3OTY5REE4
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1N0YXRzUmVwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUlRDU3RhdHNSZXBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDc5RDA4NjcxNjJGMjBFODAwREI4NjU4IC8qIENhcHRpb25Vc2VyUHJlZmVyZW5j
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FwdGlvblVzZXJQcmVmZXJl
bmNlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzlEMDg2OTE2MkYyMUY5MDBE
Qjg2NTggLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ2FwdGlvblVzZXJQcmVmZXJlbmNlc01lZGlhQUYuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc5RDA4NkExNjJGMjFGOTAwREI4NjU4IC8qIENhcHRp
b25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDc5RjVFNEIwRjNCRUJFQTAwNUUwNzgyIC8qIE1lZGlhUGxheWVy
UHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclBy
aXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdBNkQxRTkxNDkxMTM3NzAw
MDUxRDBDIC8qIE1lZGlhRnJhZ21lbnRVUklQYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFGcmFnbWVudFVSSVBhcnNlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTA3QTZEMUVBMTQ5MTEzNzcwMDA1MUQwQyAvKiBNZWRpYUZyYWdt
ZW50VVJJUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhRnJh
Z21lbnRVUklQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdBNkQ4NDcx
RkVCNzAwQjAwNjQ0MURFIC8qIERpc3BsYXlDYXB0dXJlU291cmNlTWFjLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlDYXB0dXJlU291cmNlTWFjLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdBNkQ4NDgxRkVCNzAwQjAwNjQ0MURFIC8q
IERpc3BsYXlDYXB0dXJlTWFuYWdlckNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERpc3BsYXlDYXB0dXJlTWFuYWdlckNvY29hLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDdBNkQ4NDkxRkVCNzAwQzAwNjQ0MURFIC8qIERpc3BsYXlDYXB0
dXJlTWFuYWdlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3Bs
YXlDYXB0dXJlTWFuYWdlckNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
QTZEODRBMUZFQjcwMEQwMDY0NDFERSAvKiBEaXNwbGF5Q2FwdHVyZVNvdXJjZU1hYy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5Q2FwdHVyZVNvdXJjZU1hYy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0FBNkI2OTE2NkQwMTk1MDBENDU2NzEgLyog
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDdBQTZCNkExNjZEMDE5NTAwRDQ1NjcxIC8qIEluYmFuZFRleHRUcmFj
a1ByaXZhdGVBVkZPYmpDLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRk9iakMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTA3QUI5OTY1MThEQTNDMDEwMDE4NzcxRSAvKiBSVENDb25maWd1cmF0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0NvbmZpZ3VyYXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdBQjk5NjYxOERBM0MwMTAwMTg3NzFFIC8qIFJU
Q0NvbmZpZ3VyYXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0NvbmZpZ3VyYXRp
b24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0FCOTk2NzE4REEzQzAxMDAx
ODc3MUUgLyogUlRDSWNlU2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJUQ0ljZVNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0FCOTk2ODE4
REEzQzAxMDAxODc3MUUgLyogUlRDSWNlU2VydmVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBSVENJY2VTZXJ2ZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0FGRjQy
MDFFRkIxNDQ3MDBCNTQ1QjMgLyogQ29yZUF1ZGlvQ2FwdHVyZVNvdXJjZUlPUy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb3JlQXVkaW9DYXB0dXJlU291cmNlSU9TLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3QUZGNDIxMUVGQjE0NDcwMEI1NDVCMyAvKiBD
b3JlQXVkaW9DYXB0dXJlU291cmNlSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gQ29yZUF1ZGlvQ2FwdHVyZVNvdXJjZUlPUy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDdCMEFCQ0UxMDMyMjQyMjAwRkJEQzMzIC8qIEFjY2Vzc2liaWxpdHlN
YXRoTUxFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2li
aWxpdHlNYXRoTUxFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3QjQ0
MkQ0MTY2QzcwQjAwMDU1NkNBRCAvKiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluYmFuZFRleHRUcmFja1ByaXZhdGVB
VkYuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0I0NDJENTE2NkM3MEIwMDA1
NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA3QjVBMkQ5MTQ2NDMyMEEwMEE4MUVDRSAvKiBKU1RleHRUcmFja0xp
c3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0VHJhY2tM
aXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdCNUEyREExNDY0MzIwQTAw
QTgxRUNFIC8qIEpTVGV4dFRyYWNrTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1RleHRUcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdC
NUEzMDYxNDY4NTM3MTAwQTgxRUNFIC8qIFRleHRUcmFja0xpc3QuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFRleHRUcmFja0xpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwN0I3MTE2QTFEODk5RTYzMDA5RjBGRkIgLyogQ2FwdHVyZURldmljZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDYXB0dXJlRGV2aWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTA3QjcxMTZCMUQ4OTlFNjMwMDlGMEZGQiAvKiBDYXB0dXJlRGV2aWNlTWFu
YWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYXB0dXJlRGV2
aWNlTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3QjcxMTZDMUQ4
OTlFNjMwMDlGMEZGQiAvKiBDYXB0dXJlRGV2aWNlTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDYXB0dXJlRGV2aWNlTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwN0I5M0ZGOTIzQjkyQUFBMDAzNkY4RUEgLyogTUlNRVR5cGVDYWNoZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBNSU1FVHlwZUNhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTA3QjkzRkZCMjNCOTJBQUIwMDM2RjhFQSAvKiBNSU1FVHlwZUNhY2hlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE1JTUVUeXBlQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwN0MxNDgyOTI2MTI5NTVDMDA3NzU4MjggLyogSlNNZWRpYVNlc3Npb25SZWFkeVN0
YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9uUmVhZHlTdGF0ZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwN0MxNDgyQjI2MTI5NTVEMDA3NzU4MjggLyogSlNNZWRp
YVNlc3Npb25SZWFkeVN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9u
UmVhZHlTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3QzE0ODJDMjYx
Mjk1NUUwMDc3NTgyOCAvKiBKU01lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNNZWRpYVNlc3Npb25Db29yZGluYXRvclN0YXRlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdDMTQ4MkQyNjEyOTU1RjAwNzc1ODI4IC8qIEpTTWVk
aWFTZXNzaW9uQ29vcmRpbmF0b3JTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhU2Vzc2lv
bkNvb3JkaW5hdG9yU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdDMUMw
RTAxQkZCNjAwMTAwQkQyMjU2IC8qIE1lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVRyYWNrU3VwcG9ydGVkQ29uc3Ry
YWludHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdDMUMwRTExQkZCNjAwMTAw
QkQyMjU2IC8qIE1lZGlhVHJhY2tTdXBwb3J0ZWRDb25zdHJhaW50cy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFUcmFja1N1cHBvcnRlZENvbnN0cmFpbnRzLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdDMUMwRTQxQkZCNjBFRDAwQkQyMjU2IC8qIFJlYWx0aW1l
TWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZWFsdGltZU1lZGlhU291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdDOEFEMTExRDA3M0Q2MzAwODdDNUNFIC8qIEFW
QXNzZXRNSU1FVHlwZUNhY2hlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gQVZBc3NldE1JTUVUeXBlQ2FjaGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3QzhBRDEyMUQwNzNENjMwMDg3QzVDRSAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBVkFzc2V0TUlNRVR5cGVDYWNoZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0NCOUU2RjI0OUMyMjZDMDBBNjk0ODkgLyog
QVZSb3V0ZVBpY2tlclZpZXdUYXJnZXRQaWNrZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBB
VlJvdXRlUGlja2VyVmlld1RhcmdldFBpY2tlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMDdDQjlFNzEyNDlDMjI2QzAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0
UGlja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0UGlja2VyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3Q0U3N0Q0MTY3MTJBNkEwMEM1NUE0NyAv
KiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEluYmFuZFRleHRUcmFja1ByaXZhdGVDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDdENjM3M0UxQkIwQjExMzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNl
UHJvdmlkZXJDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBdWRp
b1NvdXJjZVByb3ZpZGVyQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdE
NjM3M0YxQkIwQjExMzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJDb2NvYS5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkF1ZGlvU291cmNlUHJv
dmlkZXJDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdENkE0RjExQkVE
NUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdENkE0RjIxQkVENUY4ODAwMTc0MTQ2IC8qIE1v
Y2tSZWFsdGltZUF1ZGlvU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3RDZBNEY2MUJGMjMwN0QwMDE3NDE0NiAvKiBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlhU3RyZWFt
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEF1ZGlvVHJhY2tQcml2YXRlTWVk
aWFTdHJlYW0uaDsgcGF0aCA9IHBsYXRmb3JtL21lZGlhc3RyZWFtL0F1ZGlvVHJhY2tQcml2YXRl
TWVkaWFTdHJlYW0uaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQkwN0UxMTcwNjE0
ODlFQkVCMDBFQzVBQ0UgLyogSlNUZXh0VHJhY2tDdWVDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0VHJhY2tDdWVDdXN0b20uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwN0UzREZEMDFBOUU3ODY1MDA3NjRDQTggLyogTWVkaWFQ
bGF5YmFja1RhcmdldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBs
YXliYWNrVGFyZ2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3RTlFMTJEMThG
NUUyNzYwMDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2
YXRlQVZGLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3RTlFMTJGMThGNjJCMzcw
MDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdFRTc2RTkxQkU5NkRC
MDAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdFRTc2RUExQkU5NkRCMDAwRjg5MTMzIC8qIE1vY2tS
ZWFsdGltZVZpZGVvU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1v
Y2tSZWFsdGltZVZpZGVvU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3
RUU3NkVEMUJFQTYxOTgwMEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1hYy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1h
Yy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwN0VFNzZFRTFCRUE2MTk4MDBGODkx
MzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1hYy5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdGNUNGRjIyNTgyQTRGODAwNjYyRUY1IC8qIFdlYk1B
dWRpb1V0aWxpdGllc0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViTUF1ZGlvVXRp
bGl0aWVzQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3RjVDRkY0MjU4
MkE0RjgwMDY2MkVGNSAvKiBXZWJNQXVkaW9VdGlsaXRpZXNDb2NvYS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBXZWJNQXVkaW9VdGlsaXRpZXNDb2NvYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwN0Y4NzY4MzFBRDRBOTQ1MDA5MDU4NDkgLyogTWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQbGF5YmFja1RhcmdldENv
bnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdGRTk5REExODgwN0E3RDAw
MjU2NjQ4IC8qIE1lZGlhRWxlbWVudFNlc3Npb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gTWVkaWFFbGVtZW50U2Vzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTA3RkU5OURCMTg4MDdBN0QwMDI1NjY0OCAvKiBNZWRpYUVsZW1lbnRTZXNz
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhRWxlbWVudFNlc3Np
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDdGRkRFNjYxODFBRUQ0MjAwNzJE
NDA5IC8qIE1lZGlhU3RyZWFtVHJhY2tQcml2YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtVHJhY2tQcml2YXRlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDdGRkRFNjcxODFBRUQ0MjAwNzJENDA5IC8qIE1lZGlhU3RyZWFt
VHJhY2tQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU3Ry
ZWFtVHJhY2tQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4MDZFNTc5
MTI4OTMwNDUwMDdDRUQzMiAvKiBTVkdNYXRyaXguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1ZHTWF0cml4Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4MEU0
OTIxMTI1NUYzQkQwMEVGQ0EyNyAvKiBTVkdUZXh0TGF5b3V0RW5naW5lQmFzZWxpbmUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVGV4dExheW91dEVuZ2luZUJh
c2VsaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgwRTQ5MjIxMjU1RjNC
RDAwRUZDQTI3IC8qIFNWR1RleHRMYXlvdXRFbmdpbmVCYXNlbGluZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTVkdUZXh0TGF5b3V0RW5naW5lQmFzZWxpbmUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgwRTQ5MjMxMjU1RjNCRDAwRUZDQTI3IC8qIFNWR1Rl
eHRMYXlvdXRFbmdpbmVTcGFjaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNWR1RleHRMYXlvdXRFbmdpbmVTcGFjaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMDgwRTQ5MjQxMjU1RjNCRDAwRUZDQTI3IC8qIFNWR1RleHRMYXlvdXRFbmdp
bmVTcGFjaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RleHRMYXlv
dXRFbmdpbmVTcGFjaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4MTA5M0Q5
MTI1NUYwRTcwMEVEOUQyOSAvKiBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVGV4dExheW91dEF0dHJpYnV0
ZXNCdWlsZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgxMDkzREExMjU1
RjBFNzAwRUQ5RDI5IC8qIFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgxNjY4RDExMjU2MDNCRjAwNkYyNURF
IC8qIFNWR1RleHRDaHVua0J1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU1ZHVGV4dENodW5rQnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTA4MTY2OEQyMTI1NjAzQkYwMDZGMjVERSAvKiBTVkdUZXh0Q2h1bmtCdWlsZGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RleHRDaHVua0J1aWxkZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgxNjY4RDcxMjU2MDNENTAwNkYyNURFIC8q
IFNWR1RleHRMYXlvdXRFbmdpbmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHVGV4dExheW91dEVuZ2luZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA4MTY2OEQ4MTI1NjAzRDUwMDZGMjVERSAvKiBTVkdUZXh0TGF5b3V0RW5naW5lLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RleHRMYXlvdXRFbmdpbmUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgxQUE4RDkxMTExMjM3RTAwMkFCMDZFIC8qIFNW
R0VsZW1lbnRSYXJlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdF
bGVtZW50UmFyZURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgxRUJGMzgw
RkQzNEY0MTAwREE3NTU5IC8qIFNWR0ZpbHRlckJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHRmlsdGVyQnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTA4MUVCRjM5MEZEMzRGNDEwMERBNzU1OSAvKiBTVkdGaWx0ZXJCdWls
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZpbHRlckJ1aWxkZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgzREFFQTIwRjAxQTdGQjAwMzQyNzU0
IC8qIFJlbmRlclRleHRDb250cm9sTXVsdGlMaW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJlbmRlclRleHRDb250cm9sTXVsdGlMaW5lLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgzREFFQTMwRjAxQTdGQjAwMzQyNzU0IC8qIFJlbmRlclRl
eHRDb250cm9sTXVsdGlMaW5lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJl
bmRlclRleHRDb250cm9sTXVsdGlMaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA4M0RBRUE0MEYwMUE3RkIwMDM0Mjc1NCAvKiBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVGV4dENvbnRy
b2xTaW5nbGVMaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDgzREFFQTUw
RjAxQTdGQjAwMzQyNzU0IC8qIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDg0NTY4MDcxMkI5MERBNjAwOTYwQTlGIC8q
IEZvbnRNZXRyaWNzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRNZXRy
aWNzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NTRCMDAyMTI1NUU0RTYwMEI5
Q0REMCAvKiBSZW5kZXJTVkdJbmxpbmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUmVuZGVyU1ZHSW5saW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDg1NEIwMDMxMjU1RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR0lubGluZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdJbmxpbmUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMDQxMjU1RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR0lu
bGluZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
U1ZHSW5saW5lVGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NTRCMDA1
MTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdJbmxpbmVUZXh0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR0lubGluZVRleHQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMDYxMjU1RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR1RleHQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHVGV4dC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NTRCMDA3MTI1NUU0RTYwMEI5Q0RE
MCAvKiBSZW5kZXJTVkdUZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJl
bmRlclNWR1RleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMDgxMjU1
RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR1RleHRQYXRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR1RleHRQYXRoLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMDkxMjU1RTRFNjAwQjlDREQwIC8qIFJlbmRlclNWR1RleHRQ
YXRoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1RleHRQYXRo
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NTRCMDBCMTI1NUU0RTYwMEI5Q0RE
MCAvKiBSZW5kZXJTVkdUU3Bhbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
ZW5kZXJTVkdUU3Bhbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODU0QjAwQzEy
NTVFNEU2MDBCOUNERDAgLyogU1ZHSW5saW5lRmxvd0JveC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTVkdJbmxpbmVGbG93Qm94LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMEQxMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZUZsb3dC
b3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHSW5saW5lRmxvd0JveC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODU0QjAwRTEyNTVFNEU2MDBCOUNERDAg
LyogU1ZHSW5saW5lVGV4dEJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTVkdJbmxpbmVUZXh0Qm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDg1NEIwMEYxMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZVRleHRCb3guaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHSW5saW5lVGV4dEJveC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwODU0QjAxMDEyNTVFNEU2MDBCOUNERDAgLyogU1ZHUm9vdElubGlu
ZUJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdSb290SW5s
aW5lQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDg1NEIwMTExMjU1RTRF
NjAwQjlDREQwIC8qIFNWR1Jvb3RJbmxpbmVCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1ZHUm9vdElubGluZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwODU0QjAxMjEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4dFF1ZXJ5LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1RleHRRdWVyeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTA4NTRCMDEzMTI1NUU0RTYwMEI5Q0REMCAvKiBTVkdUZXh0UXVl
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVGV4dFF1ZXJ5Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NUI5MkI4MEVGREU3M0QwMEU2MTIzQyAvKiBG
b3JtRGF0YUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Rm9ybURhdGFCdWlsZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDg1Qjky
QjkwRUZERTczRDAwRTYxMjNDIC8qIEZvcm1EYXRhQnVpbGRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGb3JtRGF0YUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDg2NDFENDUxMjE0MkY3RDAwOERFOUY2IC8qIFJlbmRlckltYWdlUmVzb3VyY2VT
dHlsZUltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRl
ckltYWdlUmVzb3VyY2VTdHlsZUltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDg2NDFENDYxMjE0MkY3RDAwOERFOUY2IC8qIFJlbmRlckltYWdlUmVzb3VyY2VTdHlsZUlt
YWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckltYWdlUmVzb3Vy
Y2VTdHlsZUltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4NkJCRDBFMTM2
MDM5QzIwMDhCMTVEOCAvKiBHbHlwaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBHbHlwaC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODczQjg2QTEzNjA2NEVB
MDBBNTIyQzIgLyogR2x5cGhQYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEdseXBoUGFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODc1NThDNDEzQjRB
NTdEMDBGNDkzMDcgLyogU3Vycm9nYXRlUGFpckF3YXJlVGV4dEl0ZXJhdG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1cnJvZ2F0ZVBhaXJBd2FyZVRleHRJdGVyYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODg1MDY3RDExREEwNDVCMDAxODJCOTgg
LyogUGFpbnRJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhaW50SW5m
by5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODg1MDY3RTExREEwNDVCMDAxODJC
OTggLyogUGFpbnRQaGFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYWlu
dFBoYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4OEEwRTAzMTI2RUYxREIw
MDk3OEY3QSAvKiBTVkdQcm9wZXJ0eVRyYWl0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdQcm9wZXJ0eVRyYWl0cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwODhDMkY3NTEyMzkwMDgwMDAzRDY1Q0UgLyogU1ZHVGV4dExheW91dEF0dHJpYnV0ZXMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVGV4dExheW91dEF0dHJp
YnV0ZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwODhDMkY3NjEyMzkwMDgw
MDAzRDY1Q0UgLyogU1ZHVGV4dExheW91dEF0dHJpYnV0ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHVGV4dExheW91dEF0dHJpYnV0ZXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDg5NTgyNTMwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlTG9hZGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDg5NTgyNTQwRTg1N0E3RTAwRjgyQzgzIC8q
IEltYWdlTG9hZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlTG9h
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4QTQ4NDc1MEU1MjcyQzUwMEMz
RkU3NiAvKiBTY3JpcHRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNjcmlwdEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
OEE0ODQ3NjBFNTI3MkM1MDBDM0ZFNzYgLyogU2NyaXB0RWxlbWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTA4QzkyNTE3MEZDQzdDNEEwMDQ4MERFQyAvKiBGaWx0ZXJFZmZlY3QuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsdGVyRWZmZWN0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDhDOTI1MTgwRkNDN0M0QTAwNDgwREVDIC8qIEZp
bHRlckVmZmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWx0ZXJFZmZl
Y3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDhFREUxOUUxMkE1MEI4RTAwQjk1
Nzk3IC8qIFNWR1JlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUmVj
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwOEYwQkZCRDEyNTVDNTNDMDAwNzUx
ODUgLyogU1ZHVGV4dENodW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFNWR1RleHRDaHVuay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4RjBC
RkJFMTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0Q2h1bmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHVGV4dENodW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA4RjBCRkJGMTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0RnJhZ21lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVGV4dEZyYWdtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTA4RjBCRkMwMTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0TWV0
cmljcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdUZXh0TWV0
cmljcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA4RjBCRkMxMTI1NUM1M0Mw
MDA3NTE4NSAvKiBTVkdUZXh0TWV0cmljcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTVkdUZXh0TWV0cmljcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwOEYy
RjAwNzEyMTNFNjE3MDBEQ0VDNDggLyogUmVuZGVySW1hZ2VSZXNvdXJjZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJJbWFnZVJlc291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDhGMkYwMDgxMjEzRTYxNzAwRENFQzQ4IC8qIFJl
bmRlckltYWdlUmVzb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVu
ZGVySW1hZ2VSZXNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwOEY4NTlE
MjE0NjNGOUNEMDA2N0Q5MzMgLyogU1ZHSW1hZ2VDYWNoZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTVkdJbWFnZUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMDhGODU5RDIxNDYzRjlDRDAwNjdEOTM0IC8qIFNWR0ltYWdlRm9yQ29udGFp
bmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ltYWdlRm9y
Q29udGFpbmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDhGODU5RDMxNDYz
RjlDRDAwNjdEOTMzIC8qIFNWR0ltYWdlQ2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1ZHSW1hZ2VDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
OEY4NTlEMzE0NjNGOUNEMDA2N0Q5MzQgLyogU1ZHSW1hZ2VGb3JDb250YWluZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHSW1hZ2VGb3JDb250YWluZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEFGREFDM0MxMEY1NDQ4QzAwRTFGM0QyIC8qIFBsdWdp
blZpZXdCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsdWdpblZpZXdC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBCOEM1NkQzMEYyODYyN0YwMDA1
MDJFMSAvKiBIVFRQSGVhZGVyTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEhUVFBIZWFkZXJNYXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
QjkwNTYxNTBGMjU3OEJFMDA5NUZGNkEgLyogRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50VGhyZWFkYWJsZUxv
YWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBCOTA1NjE2MEYyNTc4QkUw
MDk1RkY2QSAvKiBEb2N1bWVudFRocmVhZGFibGVMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTBCOTA1NjE3MEYyNTc4QkUwMDk1RkY2QSAvKiBUaHJlYWRhYmxlTG9h
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVhZGFibGVMb2FkZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEI5MDU2MTgwRjI1NzhCRTAwOTVGRjZB
IC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gVGhyZWFkYWJsZUxvYWRlckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwQjkwNTYxRDBGMjU3RTkzMDA5NUZGNkEgLyogVGhyZWFkYWJsZUxvYWRlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaHJlYWRhYmxlTG9hZGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEI5MDU2RjYwRjI2ODVGMzAwOTVGRjZBIC8q
IFdvcmtlclRocmVhZGFibGVMb2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV29ya2VyVGhyZWFkYWJsZUxvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBCOTA1NkY3MEYyNjg1RjMwMDk1RkY2QSAvKiBXb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlclRocmVhZGFibGVM
b2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEJDRjgzRUYxMDU5QzFFQjAw
RDk5OUREIC8qIE1hdGhNTEZyYWN0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNYXRoTUxGcmFjdGlvbkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwQkNGODNGMDEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MRnJhY3Rp
b25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhNTEZyYWN0
aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwQkUwMzBBMTBGMzEx
MkZCMDAzQzFBNDYgLyogUmVuZGVyTGluZUJveExpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVyTGluZUJveExpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEMzRjFGNTcxMEM4ODcxMjAwRDcyQ0UxIC8qIFdlYkdMVW5pZm9ybUxvY2F0aW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMVW5pZm9ybUxvY2F0
aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEMzRjFGNTgxMEM4ODcxMjAw
RDcyQ0UxIC8qIFdlYkdMVW5pZm9ybUxvY2F0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYkdMVW5pZm9ybUxvY2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTBDM0YxRjU5MTBDODg3MTIwMEQ3MkNFMSAvKiBXZWJHTFVuaWZvcm1Mb2NhdGlvbi5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xVbmlmb3JtTG9jYXRpb24uaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwQzQ1MzQyNTEwQ0RCQkZBMDA4NjkxNTcgLyogSlNX
ZWJHTFVuaWZvcm1Mb2NhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1dlYkdMVW5pZm9ybUxvY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEM0NTM0MjYxMENEQkJGQTAwODY5MTU3IC8qIEpTV2ViR0xVbmlmb3JtTG9jYXRpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTFVuaWZvcm1Mb2NhdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRTcwNThFRDFCQzVCQzE5MDA0NUE1
MDcgLyogU2VhcmNoUG9wdXBNZW51Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBTZWFyY2hQb3B1cE1lbnVDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEU3MDU4RjMxQkM1Q0NENzAwNDVBNTA3IC8qIFNlYXJjaFBvcHVwTWVudUNv
Y29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlYXJjaFBvcHVwTWVudUNvY29hLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTBGMDNDMDczMTg4NDY5NUUwMEE1RjhDQSAvKiBTeXN0ZW1NZW1v
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtTWVtb3J5Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMDk5RDA2MTdCOTY4QTEwMEZGODRCOSAvKiBX
ZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gV2ViQ29yZVR5cGVkQXJyYXlDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMEYwOTlEMDcxN0I5NjhBMTAwRkY4NEI5IC8qIFdlYkNvcmVUeXBl
ZEFycmF5Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJD
b3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MEYxMTc4MTYyMkUzQzQ3RTAwOEJENTcwIC8qIEZyYW1lSWRlbnRpZmllci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBGcmFtZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMEYxMUE1NEUwRjM5MjMzMTAwQzM3ODg0IC8qIFJlbmRlclNlbGVjdGlv
bkluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU2VsZWN0aW9u
SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjEzMTYzRDE2RUQwQ0M4MDAz
NUNDMDQgLyogUGxhdGZvcm1DQUZpbHRlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUGxhdGZvcm1DQUZpbHRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MEYxMzE2M0YxNkVEMENERTAwMzVDQzA0IC8qIFBsYXRmb3JtQ0FGaWx0ZXJzQ29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0Zm9ybUNBRmlsdGVyc0Nv
Y29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjE1RUQ1OTFCN0VDN0M1MDBF
RERGRUIgLyogV2lsbENoYW5nZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2lsbENoYW5nZURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRjE1RUQ1QTFCN0VDN0M1MDBFRERGRUIgLyogV2lsbENoYW5nZURhdGEuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2lsbENoYW5nZURhdGEuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMEYxNkJFRDkyMzA0RjA1MzAwQjRBMTY3IC8qIEdQVUJhc2VkQ2FudmFz
UmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHUFVCYXNlZENhbnZhc1Jl
bmRlcmluZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjE3NzQ3
RTEzNzhCNzcxMDA5REE3NkEgLyogU2Nyb2xsQW5pbWF0b3JJT1MuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQW5pbWF0b3JJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEYxNzc0N0YxMzc4Qjc3MjAwOURBNzZBIC8qIFNjcm9sbEFuaW1hdG9ySU9T
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsQW5pbWF0
b3JJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMUEwQzM2MjI5QTQ4MTgw
MEQzN0FEQiAvKiBWZWxvY2l0eURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVmVsb2NpdHlEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMjZBN0E3
MjA1NEMyMjcwMDkwQTE0MSAvKiBUZW1wbGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRlbXBsYXRlQ29udGVudERvY3Vt
ZW50RnJhZ21lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjI2QTdBOTIw
NTRDM0NGMDA5MEExNDEgLyogSFRNTEJESUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSFRNTEJESUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjI2QTdBQTIwNTRFQzVBMDA5MEExNDEgLyogSFRNTFVua25vd25FbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxVbmtub3duRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMjZBN0FCMjA1NEZDRTEw
MDkwQTE0MSAvKiBNYXRoTUxVbmtub3duRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNYXRoTUxVbmtub3duRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTBGMjZBN0FDMjA1NUM4RDcwMDkwQTE0MSAvKiBYTUxEb2N1bWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxEb2N1bWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMjZBN0FEMjA1NjI2MTAwMDkwQTE0MSAv
KiBTVkdVbmtub3duRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTVkdVbmtub3duRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGMjgwODYxMjU3MDE1MTcwMEZFNkM1QSAvKiBEaXNwbGF5Qm94UmFyZUdlb21ldHJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpc3BsYXlCb3hSYXJlR2VvbWV0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEYyODA4NjMyNTcwMTUxNzAwRkU2QzVBIC8qIERpc3BsYXlCb3hSYXJlR2Vv
bWV0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxheUJveFJhcmVHZW9tZXRyeS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGMjgzQThEMjM1NTgyRjgwMDQ3OTRDQSAv
KiBUaGVtZVR5cGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRoZW1lVHlwZXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjI4M0E5MTIzNTYzMTI2MDA0Nzk0Q0EgLyogQm9y
ZGVyRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCb3JkZXJEYXRhLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEYzMkJBNDEyNTRGMzIxNjAwMUFDMzhFIC8qIERpc3BsYXlQ
YWludGluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheVBhaW50aW5nQ29udGV4dC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjM2RTczNjFCRDE4MzdBMDAyREI4OTEg
LyogTGF5b3V0UG9pbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TGF5b3V0UG9pbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjM2RTczODFC
RDE4NEI5MDAyREI4OTEgLyogTGF5b3V0U2l6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMYXlvdXRTaXplLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMEYzN0YwODMyMjAyQUM4RjAwQTg5QzBCIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2Rl
RGVsZWdhdGVNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxpbmdUcmVlU2Nyb2xs
aW5nTm9kZURlbGVnYXRlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjM3
RjA4NDIyMDJBQ0I3MDBBODlDMEIgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0
ZU1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURlbGVnYXRl
TWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGM0RENDREMTJGNUVBMUIwMDBE
OTE5MCAvKiBTaGFkb3dCbHVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFNoYWRvd0JsdXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjNERDQ0
RTEyRjVFQTFCMDAwRDkxOTAgLyogU2hhZG93Qmx1ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTaGFkb3dCbHVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBG
M0YwRTU3MTU3MDMwQzMwMDZEQTU3RiAvKiBSZW5kZXJHZW9tZXRyeU1hcC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJHZW9tZXRyeU1hcC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGM0YwRTU4MTU3MDMwQzMwMDZEQTU3RiAvKiBSZW5k
ZXJHZW9tZXRyeU1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJH
ZW9tZXRyeU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQzQzg1QzE4OUUx
MENGMDAwMTlBRTIgLyogUGVyZm9ybWFuY2VUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9ybWFuY2VUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwRjQzQzg1RTE4OUUxNUE2MDAwMTlBRTIgLyogSlNQZXJmb3JtYW5jZVRp
bWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1h
bmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEwQTkxREI1
NkFGQzAwMkRDRUMzIC8qIERPTVJlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NUmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBBQTFEQjU2
QUZDMDAyRENFQzMgLyogRE9NUmVjdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NUmVj
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDcxMEFCMURCNTZBRkMwMDJE
Q0VDMyAvKiBET01SZWN0SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
T01SZWN0SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBBQzFEQjU2
QUZDMDAyRENFQzMgLyogRE9NUmVjdEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERP
TVJlY3RJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEwQUQxREI1
NkFGQzAwMkRDRUMzIC8qIERPTVJlY3RSZWFkT25seS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBET01SZWN0UmVhZE9ubHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMEY0NzEwQUUxREI1NkFGQzAwMkRDRUMzIC8qIERPTVJlY3RSZWFkT25seS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gRE9NUmVjdFJlYWRPbmx5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEY0NzEwQjUxREI1NkJFODAwMkRDRUMzIC8qIEpTRE9NUmVjdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTVJlY3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBCNjFEQjU2QkU4MDAyRENFQzMgLyogSlNET01S
ZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NUmVjdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBCNzFEQjU2QkU4MDAyRENFQzMgLyogSlNE
T01SZWN0SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RP
TVJlY3RJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEwQjgxREI1
NkJFODAwMkRDRUMzIC8qIEpTRE9NUmVjdEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNET01SZWN0SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
RjQ3MTBCOTFEQjU2QkU4MDAyRENFQzMgLyogSlNET01SZWN0UmVhZE9ubHkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01SZWN0UmVhZE9ubHkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBCQTFEQjU2QkU4MDAyRENFQzMgLyogSlNE
T01SZWN0UmVhZE9ubHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01S
ZWN0UmVhZE9ubHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEwRDUxREI2
RkUyMjAwMkRDRUMzIC8qIEludGVyc2VjdGlvbk9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEludGVyc2VjdGlvbk9ic2VydmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEwRDYxREI2RkUyMjAwMkRDRUMzIC8qIEludGVyc2Vj
dGlvbk9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGVyc2Vj
dGlvbk9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDcxMEQ3MURC
NkZFMjIwMDJEQ0VDMyAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlci5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRjQ3MTBEODFEQjZGRTIyMDAyRENFQzMgLyogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJF
bnRyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRlcnNlY3Rp
b25PYnNlcnZlckVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0NzEw
RDkxREI2RkUyMjAwMkRDRUMzIC8qIEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBEQTFEQjZGRTIyMDAyRENFQzMgLyog
SW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW50
ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGNDcxMEUxMURCNzAwQzcwMDJEQ0VDMyAvKiBKU0ludGVyc2VjdGlvbk9ic2VydmVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW50ZXJzZWN0aW9uT2JzZXJ2
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ3MTBFMjFEQjcwMEM3MDAy
RENFQzMgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0ludGVyc2VjdGlvbk9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBGNDcxMEUzMURCNzAwQzcwMDJEQ0VDMyAvKiBKU0ludGVyc2VjdGlvbk9ic2Vy
dmVyRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbnRl
cnNlY3Rpb25PYnNlcnZlckVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MEY0NzEwRTQxREI3MDBDNzAwMkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ludGVyc2VjdGlvbk9ic2VydmVy
RW50cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0OTY2OTkxREI0MDhDMTAw
QTI3NEJCIC8qIERPTVBvaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERP
TVBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDk2NjlBMURCNDA4QzEw
MEEyNzRCQiAvKiBET01Qb2ludC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NUG9pbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjQ5NjY5QjFEQjQwOEMxMDBBMjc0
QkIgLyogRE9NUG9pbnRSZWFkT25seS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01Qb2ludFJlYWRPbmx5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDk2
NjlDMURCNDA4QzEwMEEyNzRCQiAvKiBET01Qb2ludFJlYWRPbmx5LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBET01Qb2ludFJlYWRPbmx5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEY0OTY2QTExREI0MDkwMTAwQTI3NEJCIC8qIERPTVBvaW50SW5pdC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
RE9NUG9pbnRJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0OTY2QTIx
REI0MDkxMDAwQTI3NEJCIC8qIERPTVBvaW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBET01Qb2ludEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MEY0OTY2QTQxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01Qb2ludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTBGNDk2NkE1MURCNDBDNDMwMEEyNzRCQiAvKiBKU0RPTVBvaW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NUG9pbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMEY0OTY2QTYxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnRJ
bml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NUG9pbnRJ
bml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0OTY2QTcxREI0MEM0MzAw
QTI3NEJCIC8qIEpTRE9NUG9pbnRJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRE9NUG9pbnRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNDk2
NkE4MURCNDBDNDMwMEEyNzRCQiAvKiBKU0RPTVBvaW50UmVhZE9ubHkuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01Qb2ludFJlYWRPbmx5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0OTY2QTkxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9N
UG9pbnRSZWFkT25seS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVBv
aW50UmVhZE9ubHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY0Q0RFQUEyM0Q5
MUE4QTAwMjUxQjAyIC8qIFNjcm9sbFR5cGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9s
bFR5cGVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1M0ZCODEyMTNCMUJC
ODAwQzQwRDM0IC8qIENTU0ZpbHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NGaWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjUz
RkI4MzIxM0IxQkI4MDBDNDBEMzQgLyogQ1NTRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENTU0ZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
RjUzRkI4MzIxM0I3ODY0MDBDNDBEMzQgLyogUmVuZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJMYXllclNjcm9sbGFibGVBcmVhLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1M0ZCODQyMTNCNzg2NDAwQzQwRDM0IC8qIFJlbmRl
ckxheWVyU2Nyb2xsYWJsZUFyZWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTGF5ZXJTY3JvbGxh
YmxlQXJlYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjUzRkI4OTIxM0I3Njg0
MDBDNDBEMzQgLyogUmVuZGVyTGF5ZXJGaWx0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckxh
eWVyRmlsdGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjUzRkI4QjIxM0I3
Njg0MDBDNDBEMzQgLyogUmVuZGVyTGF5ZXJGaWx0ZXJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlbmRlckxheWVyRmlsdGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBG
NTREQ0UzMTg4MTA1MUQwMDNFRURCQiAvKiBUZXh0QXV0b1NpemluZy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0QXV0b1NpemluZy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTBGNTREQ0U0MTg4MTA1MUQwMDNFRURCQiAvKiBUZXh0QXV0b1Np
emluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0QXV0b1NpemluZy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjU0REQwNTE4ODFENUY1MDAzRUVEQkIg
LyogVG91Y2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVG91Y2guaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1NEREMDYxODgxRDVGNTAwM0VFREJCIC8qIFRv
dWNoRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVG91Y2hFdmVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjU0REQwNzE4ODFENUY1MDAzRUVEQkIg
LyogVG91Y2hMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRvdWNoTGlz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjU2MDI4RDBFNEI3NjU4MDA2NUIw
MzggLyogUmVuZGVyTWFycXVlZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
ZW5kZXJNYXJxdWVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNTYwMjhFMEU0
Qjc2NTgwMDY1QjAzOCAvKiBSZW5kZXJNYXJxdWVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJlbmRlck1hcnF1ZWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRjU4MEIwOTBGMTJBMjY5MDA1MUQ2ODkgLyogR3JhcGhpY3NMYXllci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0xheWVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1ODBCMEEwRjEyQTI2OTAwNTFENjg5IC8qIEdy
YXBoaWNzTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JhcGhpY3NM
YXllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjU4MEIwQjBGMTJBMjY5MDA1
MUQ2ODkgLyogR3JhcGhpY3NMYXllckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBHcmFwaGljc0xheWVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGNTgwQ0Y5MEYxMkRFOUIwMDUxRDY4OSAvKiBSZW5kZXJMYXllckNvbXBvc2l0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNTgwQ0ZBMEYxMkRFOUIwMDUxRDY4OSAv
KiBSZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMEY1ODBDRkIwRjEyREU5QjAwNTFENjg5IC8qIFJlbmRlckxheWVyQmFja2luZy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMYXllckJhY2tpbmcuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1ODBDRkMwRjEyREU5QjAwNTFENjg5IC8q
IFJlbmRlckxheWVyQmFja2luZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSZW5kZXJMYXllckJhY2tpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRjU4MEZBMTE0OTY5MzkxMDBGQjVCRDggLyogV2ViVGlsZWRCYWNraW5nTGF5ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViVGlsZWRCYWNraW5nTGF5ZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1ODBGQTIxNDk2OTM5MTAwRkI1QkQ4IC8qIFdl
YlRpbGVkQmFja2luZ0xheWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gV2ViVGlsZWRCYWNraW5nTGF5ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGNTgwRkFFMTQ5ODAwRDQwMEZCNUJEOCAvKiBBbmltYXRpb25VdGlsaXRpZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQW5pbWF0aW9uVXRpbGl0aWVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNUE1N0NBMjI5QjE4QUUwMDI1RURBOSAvKiBWZWxv
Y2l0eURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVmVsb2NpdHlEYXRhLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY1QjdBNTIxMEY2NUQ3QTAwMzc2MzAyIC8qIFJlbmRl
ckVtYmVkZGVkT2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlbmRlckVtYmVkZGVkT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MEY1QjdBNTMxMEY2NUQ3QTAwMzc2MzAyIC8qIFJlbmRlckVtYmVkZGVkT2JqZWN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckVtYmVkZGVkT2JqZWN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNUUyMDA1MThFNzcxRkMwMDNFQzNFNSAvKiBQbGF0
Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGxhdGZvcm1DQUFuaW1hdGlvbkNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGNjA1QUVBMTVGOTQ4NDgwMDRERjBDMCAvKiBTY3JvbGxpbmdDb25zdHJhaW50cy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdDb25zdHJhaW50cy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNjA1QUVCMTVGOTQ4NDgwMDRERjBD
MCAvKiBTY3JvbGxpbmdDb25zdHJhaW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTY3JvbGxpbmdDb25zdHJhaW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRjYwRjMyOTFERkJCMTA0MDA0MTZENkMgLyogQ29tbW9uVk0uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29tbW9uVk0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjYwRjMyQTFERkJCMTA0MDA0MTZENkMgLyogQ29tbW9uVk0uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29tbW9uVk0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEY2MzgzREIxODYxNUIyOTAwM0U1REI1IC8qIFRocmVhZGVkU2Nyb2xsaW5n
VHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaHJlYWRlZFNj
cm9sbGluZ1RyZWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjYzODNEQzE4
NjE1QjI5MDAzRTVEQjUgLyogVGhyZWFkZWRTY3JvbGxpbmdUcmVlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVhZGVkU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwRjYzOEU0NjI1NTcyMzc3MDA5NzQ2NjggLyogRGlzcGxheUJveERl
Y29yYXRpb25QYWludGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlCb3hEZWNvcmF0
aW9uUGFpbnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNjM4RTQ3MjU1
NzIzNzgwMDk3NDY2OCAvKiBEaXNwbGF5Qm94RGVjb3JhdGlvblBhaW50ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRGlzcGxheUJveERlY29yYXRpb25QYWludGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBGNjU2RkI1MjU0NTJFNTQwMDIxOUY0QyAvKiBEaXNwbGF5Qm94RmFjdG9yeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEaXNwbGF5Qm94RmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjY1NkZCNjI1NDUyRTU0MDAyMTlGNEMgLyogRGlzcGxheUJveEZhY3Rvcnku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxheUJveEZhY3RvcnkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwRjY1NkZCQzI1NDVGRDU2MDAyMTlGNEMgLyogRGlzcGxheUJv
eFBhaW50ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUJveFBhaW50ZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY2NTZGQkQyNTQ1RkQ1NzAwMjE5RjRDIC8qIERpc3BsYXlC
b3hQYWludGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlCb3hQYWludGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY2OUYyQjYyMjhCOThGRjAwOEQzNTY1IC8q
IExheWVyT3ZlcmxhcE1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXllck92ZXJsYXBNYXAuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY2OUYyQjcyMjhCOThGRjAwOEQzNTY1IC8qIExh
eWVyT3ZlcmxhcE1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMYXllck92ZXJsYXBNYXAuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjZBMTJCQjFBMDA5MjM3MDBDNkRFNzIg
LyogRGVidWdQYWdlT3ZlcmxheXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRGVidWdQYWdlT3ZlcmxheXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRjZBMTJCQzFBMDA5MjM3MDBDNkRFNzIgLyogRGVidWdQYWdlT3ZlcmxheXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVidWdQYWdlT3ZlcmxheXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY2QjcwNzcyMzdCQzEyRjAwNTJDQTQ3IC8qIENTU1VuaXRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENTU1VuaXRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGNkI3MDc5MjM3QkMxMkYwMDUyQ0E0NyAvKiBDU1NVbml0cy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NVbml0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNzA0
OTVEMjExQjUyNDIwMDM2OTk2OCAvKiBBY3Rpdml0eVN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEFjdGl2aXR5U3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjcz
NkVDQTI2Q0NCOTdBMDAwQUQ3Q0EgLyogTGF5ZXJUcmVlQXNUZXh0T3B0aW9ucy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMYXllclRyZWVBc1RleHRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTBGNzNCNzY1MjIyQjMyN0YwMDgwNTMxNiAvKiBTY3JvbGxpbmdTdGF0ZVNjcm9sbGlu
Z05vZGVNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZVNjcm9sbGlu
Z05vZGVNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNzY4QzJCMjZEMDM4
NDEwMDhEQkUwQiAvKiBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwRjc2OEMzMzI2RDBBQjM5MDA4REJFMEIgLyogTWVkaWFL
ZXlTeXN0ZW1SZXF1ZXN0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYUtleVN5c3RlbVJlcXVlc3RJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTBGNzkwRjNEMjUxN0NFNkQwMDlCQTAzNCAvKiBEaXNwbGF5Vmlldy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5Vmlldy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGNzkwRjNGMjUxN0NFNkQwMDlCQTAzNCAvKiBE
aXNwbGF5Vmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5Vmll
dy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjdERjE0NzFFMkJGMUE2MDA5NTk1
MUIgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXZWJDb3JlSlNDbGllbnREYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMEY3RTQ3NTEyNUVFQjc5QTAwMTNGOTA5IC8qIEFuaW1hdGlvbkZyYW1lUmF0ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBbmltYXRpb25GcmFtZVJhdGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwRjdFNDc1MzI1RUVCNzlCMDAxM0Y5MDkgLyogQU5HTEVXZWJL
aXRCcmlkZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQU5HTEVXZWJLaXRCcmlkZ2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjdFNDc1NDI1RUVCNzlCMDAxM0Y5MDkgLyog
QU5HTEVXZWJLaXRCcmlkZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQU5HTEVXZWJLaXRCcmlkZ2UuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY4NTBGRTIxRUQ3QzE4MzAwRkI3N0E3IC8q
IFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQZXJmb3JtYW5jZUxvZ2dpbmdDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEY4NjgyRkEyNTcwN0Y0NzAwQzA4QkI1IC8qIERpc3BsYXlTdGFja2luZ0l0ZW0uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRGlzcGxheVN0YWNraW5nSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjg2ODJGQzI1NzA3RjQ3MDBDMDhCQjUgLyogRGlzcGxheVN0YWNraW5nSXRl
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5U3RhY2tpbmdJdGVtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY4NzE2NkQxQzg2OUQ4MzAwNEZGMERFIC8qIExlbmd0
aFBvaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExlbmd0aFBv
aW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY4NzE2NkUxQzg2OUQ4MzAw
NEZGMERFIC8qIExlbmd0aFBvaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExlbmd0aFBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGOEI0NTZGMURD
M0ZCMTAwMDQ0M0MzRiAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlckNhbGxiYWNrLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBJbnRlcnNlY3Rpb25PYnNlcnZlckNhbGxiYWNrLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY4QjQ1NzExREMzRkJBMzAwNDQzQzNGIC8qIEludGVy
c2VjdGlvbk9ic2VydmVyQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW50ZXJzZWN0aW9uT2JzZXJ2ZXJDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRjhCNDU3MzFEQzQxREJBMDA0NDNDM0YgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZl
ckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW50
ZXJzZWN0aW9uT2JzZXJ2ZXJDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGOEI0NTc0MURDNDFEQkEwMDQ0M0MzRiAvKiBKU0ludGVyc2VjdGlvbk9ic2VydmVyQ2Fs
bGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbnRlcnNlY3Rpb25P
YnNlcnZlckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGOTQ3MjFF
MjUzNDAxMDkwMEYxNTNDOCAvKiBEaXNwbGF5Qm94TW9kZWxCb3guaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGlzcGxheUJveE1vZGVsQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGOTQ3
MjIwMjUzNDAxMDkwMEYxNTNDOCAvKiBEaXNwbGF5Qm94TW9kZWxCb3guY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRGlzcGxheUJveE1vZGVsQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEY5NDcyMjkyNTM0QjA0NTAwRjE1M0M4IC8qIERpc3BsYXlCb3hEZWNvcmF0aW9uRGF0
YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5Qm94RGVjb3JhdGlvbkRhdGEuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY5NDcyMkIyNTM0QjA0NTAwRjE1M0M4IC8qIERpc3BsYXlC
b3hEZWNvcmF0aW9uRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5Qm94RGVjb3Jh
dGlvbkRhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjk0NzIyQzI1MzRC
QTczMDBGMTUzQzggLyogRGlzcGxheUZpbGxMYXllckltYWdlR2VvbWV0cnkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRGlzcGxheUZpbGxMYXllckltYWdlR2VvbWV0cnkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwRjk0NzIyRDI1MzRCQTczMDBGMTUzQzggLyogRGlzcGxheUZp
bGxMYXllckltYWdlR2VvbWV0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUZpbGxMYXllcklt
YWdlR2VvbWV0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY5NEEzOTUxRUYx
QjEwNTAwRkJBRkZCIC8qIEpTRE9NUXVhZEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0RPTVF1YWRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjk0QjY0MjIyMDhGNzAxMDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJlZUZpeGVk
Tm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBTY3JvbGxpbmdUcmVlRml4ZWROb2RlLmg7IHBhdGggPSBw
YWdlL3Njcm9sbGluZy9jb2NvYS9TY3JvbGxpbmdUcmVlRml4ZWROb2RlLmg7IHNvdXJjZVRyZWUg
PSBTT1VSQ0VfUk9PVDsgfTsKKwkJMEY5NEI2NDMyMjA4RjcwMjAwMTU3MDE0IC8qIFNjcm9sbGlu
Z1RyZWVTdGlja3lOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFNjcm9sbGluZ1RyZWVTdGlja3lOb2Rl
Lmg7IHBhdGggPSBwYWdlL3Njcm9sbGluZy9jb2NvYS9TY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZS5o
OyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCTBGOTRCNjQ0MjIwOEY3MDIwMDE1NzAx
NCAvKiBTY3JvbGxpbmdUcmVlRml4ZWROb2RlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gU2Ny
b2xsaW5nVHJlZUZpeGVkTm9kZS5tbTsgcGF0aCA9IHBhZ2Uvc2Nyb2xsaW5nL2NvY29hL1Njcm9s
bGluZ1RyZWVGaXhlZE5vZGUubW07IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJMEY5
NEI2NDUyMjA4RjcwMzAwMTU3MDE0IC8qIFNjcm9sbGluZ1RyZWVTdGlja3lOb2RlLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUubW07IHBhdGggPSBwYWdl
L3Njcm9sbGluZy9jb2NvYS9TY3JvbGxpbmdUcmVlU3RpY2t5Tm9kZS5tbTsgc291cmNlVHJlZSA9
IFNPVVJDRV9ST09UOyB9OworCQkwRjk0QjY0RjIyMDkxNEZFMDAxNTcwMTQgLyogU2Nyb2xsaW5n
U3RhdGVQb3NpdGlvbmVkTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0
ZVBvc2l0aW9uZWROb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY5NEI2
NTEyMjA5MTRGRjAwMTU3MDE0IC8qIFNjcm9sbGluZ1N0YXRlUG9zaXRpb25lZE5vZGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVQb3NpdGlvbmVkTm9kZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwRjk0QjY1MzIyMDkxNTZDMDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJl
ZVBvc2l0aW9uZWROb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVQb3NpdGlvbmVk
Tm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjk0QjY1NDIyMDkxNTZDMDAx
NTcwMTQgLyogU2Nyb2xsaW5nVHJlZVBvc2l0aW9uZWROb2RlLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gU2Nyb2xsaW5nVHJlZVBvc2l0aW9uZWROb2RlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjk0RjM3QzIzNjYxMTMxMDAzQUE1QzcgLyogU3R5bGVSdWxlVHlwZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTdHlsZVJ1bGVUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGOTUxMEYwMjRGNDc2OUMwMDFGNTJEQyAvKiBTY3JvbGxMYXRjaGluZ0NvbnRyb2xsZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsTGF0Y2hpbmdDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTBGOTUxMEYyMjRGNDc2OUMwMDFGNTJEQyAvKiBTY3JvbGxMYXRj
aGluZ0NvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsTGF0Y2hpbmdDb250
cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY5N0E2NTcxNTVEQTgx
RTAwRkFERDRDIC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEY5QjU0NzUyMkI0QTc3MjAwN0I1RThBIC8qIFNj
cm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Ny
b2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwRjlCNTQ3NjIyQjRBNzczMDA3QjVFOEEgLyogU2Nyb2xsaW5nU3RhdGVPdmVy
Zmxvd1Njcm9sbFByb3h5Tm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0
ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMEY5REFBMEMxRkQxQzY2MzAwNzlDNUIyIC8qIERPTUdDT3V0cHV0Q29uc3RyYWludC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01HQ091dHB1dENvbnN0cmFp
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRjlEQUEwRTFGRDFDNjY0MDA3
OUM1QjIgLyogRE9NR0NPdXRwdXRDb25zdHJhaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERPTUdDT3V0cHV0Q29uc3RyYWludC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRkEwODUyQjFFNkZCNTVBMDA5NzVGREQgLyogQ1NTUHJvcGVydGllcy5qc29uICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5qc29u
OyBwYXRoID0gQ1NTUHJvcGVydGllcy5qc29uOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkEwQTBFNTIzQUVBQTM1MDAwRUVCOTQgLyogZGlhbG9nLmNzcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQu
Y3NzOyBwYXRoID0gZGlhbG9nLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZB
MjRENzcxNjJERjkxOTAwQTNGNEMwIC8qIEdyYXBoaWNzTGF5ZXJVcGRhdGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzTGF5ZXJVcGRhdGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZBMjRENzgxNjJERjkxOTAwQTNGNEMwIC8q
IEdyYXBoaWNzTGF5ZXJVcGRhdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEdyYXBoaWNzTGF5ZXJVcGRhdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBG
QjA2ODk0MjUyNDNCOTAwMDFFOEU3NSAvKiBEaXNwbGF5VGV4dEJveC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEaXNwbGF5VGV4dEJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGQjA2ODk2MjUyNDNCOTAwMDFFOEU3NSAvKiBEaXNwbGF5VGV4dEJveC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEaXNwbGF5VGV4dEJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkI2
MjUyQzE4REUxQjE1MDBBMDdDMDUgLyogR2VvbWV0cnlVdGlsaXRpZXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2VvbWV0cnlVdGlsaXRpZXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwRkI2MjUyRDE4REUxQjE1MDBBMDdDMDUgLyogR2VvbWV0
cnlVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2VvbWV0cnlV
dGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZCODg5MEMxNjdEMzAx
NjAwMTBDREE1IC8qIFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZVN0aWNreU5vZGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkI4ODkwRDE2N0QzMDE2MDAxMENEQTUgLyogU2Ny
b2xsaW5nU3RhdGVTdGlja3lOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkJCNUZCRDI2MDk1QTlDMDA1NDU3MkMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9y
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5UmVmcmVzaE1vbml0b3JGYWN0b3J5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGQkI1RkM5MjYwRTlCNDMwMDU0NTcyQyAvKiBEaXNw
bGF5VXBkYXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlVcGRhdGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkJCNUZDQjI2MEU5QjQ0MDA1NDU3MkMgLyogRGlz
cGxheVVwZGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5VXBkYXRlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTBGQkZDRTI0MjU2Q0JEOUEwMEEwQjQ4OSAvKiBEaXNwbGF5Qm94
Q2xpcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5Qm94Q2xpcC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGQkZDRTI2MjU2Q0JEOUEwMEEwQjQ4OSAvKiBEaXNwbGF5
Qm94Q2xpcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5Qm94Q2xpcC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwRkMwNTE2ODIxOUI1RUJFMDAzMUMzOUUgLyogU2Nyb2xsaW5nVHJl
ZU92ZXJmbG93U2Nyb2xsaW5nTm9kZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNjcm9s
bGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBGQzA1MTZBMjE5QjVFQkUwMDMxQzM5RSAvKiBTY3JvbGxpbmdUcmVlT3ZlcmZs
b3dTY3JvbGxpbmdOb2RlTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVPdmVyZmxv
d1Njcm9sbGluZ05vZGVNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDMjc2
QjgyNkRBRjlCNzAwOTNFOEVEIC8qIFJlZmVyZW5jZWRTVkdSZXNvdXJjZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVmZXJlbmNlZFNWR1Jlc291cmNlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwRkMyNzZCQTI2REFGOUU5MDA5M0U4RUQgLyogUmVmZXJlbmNlZFNWR1Jlc291cmNlcy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWZlcmVuY2VkU1ZHUmVzb3VyY2VzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDMjc2QkMyNkRCMTkwMDAwOTNFOEVEIC8qIFNWR1Jl
c291cmNlRWxlbWVudENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdSZXNvdXJjZUVsZW1lbnRD
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDNEIwMDQyMkI5QTAyQzAw
Q0YzQjFFIC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94
eU5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDNEIwMDUyMkI5QTAyRDAw
Q0YzQjFFIC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Nj
cm9sbFByb3h5Tm9kZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDNjkyQkEy
NTdDMEY0MDAwOThFM0Y5IC8qIFNjcm9sbEFuaW1hdGlvbktpbmV0aWMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU2Nyb2xsQW5pbWF0aW9uS2luZXRpYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkM2OTJCQzI1N0MwRjQxMDA5OEUzRjkgLyogU2Nyb2xsQW5pbWF0aW9uS2luZXRpYy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxBbmltYXRpb25LaW5ldGljLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDNjkyQkQyNTdDMEY0MTAwOThFM0Y5IC8qIFNjcm9sbEFu
aW1hdGlvblNtb290aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxBbmltYXRpb25TbW9v
dGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkM2OTJCRTI1N0MwRjQyMDA5
OEUzRjkgLyogU2Nyb2xsQW5pbWF0aW9uU21vb3RoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbEFu
aW1hdGlvblNtb290aC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkM2OTJDNTI1
N0Q3MEYyMDA5OEUzRjkgLyogRGlzcGxheUxheWVyQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBEaXNwbGF5TGF5ZXJDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGQzY5MkM2MjU3RDcwRjMwMDk4RTNGOSAvKiBEaXNwbGF5TGF5ZXJDb250cm9sbGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlMYXllckNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkwRkM2OTJFQTI1ODVDOTY3MDA5OEUzRjkgLyogR3JpZEJhc2Vs
aW5lQWxpZ25tZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyaWRCYXNlbGluZUFsaWdubWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGQzY5MkVDMjU4NUM5NjgwMDk4
RTNGOSAvKiBHcmlkQmFzZWxpbmVBbGlnbm1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JpZEJhc2Vs
aW5lQWxpZ25tZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGQzY5MkVEMjU4
NUM5NjkwMDk4RTNGOSAvKiBHcmlkTGF5b3V0RnVuY3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEdyaWRMYXlvdXRGdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkM2OTJFRTI1ODVDOTZBMDA5OEUzRjkgLyogR3JpZExheW91dEZ1bmN0aW9ucy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBHcmlkTGF5b3V0RnVuY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTBGQ0YzMzIzMEYyQjk3MTUwMDRCNjc5NSAvKiBDb2xvckNHLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbG9yQ0cuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwRkNGMzMyQTBGMkI5QTI1MDA0QjY3OTUgLyogV2ViTGF5ZXIubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJMYXllci5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZDRjMzMkIwRjJCOUEyNTAwNEI2Nzk1IC8qIFdlYkxh
eWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkxheWVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRDMwODBDMTE3Q0Y3RTcwMEE3OTFGNyAvKiBSZW5k
ZXJGcmFtZUJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyRnJhbWVCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZEMzA4MEQx
MTdDRjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZW5kZXJGcmFtZUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMEZEMzA4RDMxMTdEMTY4NDAwQTc5MUY3IC8qIFJlbmRlcklGcmFtZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJJRnJhbWUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwRkQzMDhENDExN0QxNjg0MDBBNzkxRjcgLyogUmVuZGVy
SUZyYW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlcklGcmFtZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ0MUU2MzIxRjgwMjYwMDAwQzAwNkQg
LyogU2Nyb2xsaW5nU3RhdGVGcmFtZUhvc3RpbmdOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNjcm9sbGluZ1N0YXRlRnJhbWVIb3N0aW5nTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBGRDQxRTY1MjFGODAyNjEwMDBDMDA2RCAvKiBTY3JvbGxpbmdTdGF0ZUZyYW1l
SG9zdGluZ05vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVGcmFtZUhvc3RpbmdO
b2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRDQxRTY2MjFGODAyODIwMDBD
MDA2RCAvKiBTY3JvbGxpbmdUcmVlRnJhbWVIb3N0aW5nTm9kZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y3JvbGxpbmdUcmVlRnJhbWVIb3N0aW5nTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwRkQ0MUU2NzIxRjgwMjgyMDAwQzAwNkQgLyogU2Nyb2xsaW5nVHJlZUZyYW1lSG9zdGlu
Z05vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZUZyYW1lSG9zdGluZ05v
ZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY3MjI2RUVCQTA1MDA3
QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZXNpemVPYnNlcnZlck9w
dGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY3NDI2RUVCQUI5
MDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJCb3hPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZXNpemVPYnNl
cnZlckJveE9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY3
NjI2RUVCQzdCMDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJTaXplLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZXNpemVP
YnNlcnZlclNpemUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY3OTI2
RUVDMDc1MDA3QjIyMzEgLyogSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwRkQ2QTY3QjI2RUVDMDc1MDA3QjIyMzEgLyogSlNSZXNpemVPYnNl
cnZlclNpemUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZXNpemVPYnNlcnZlclNpemUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY3QzI2RUVDMDc2MDA3QjIyMzEg
LyogSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZXNpemVP
YnNlcnZlckJveE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZENkE2
N0QyNkVFQzA3NjAwN0IyMjMxIC8qIEpTUmVzaXplT2JzZXJ2ZXJTaXplLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTUmVzaXplT2JzZXJ2ZXJTaXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGRDZBNjgwMjZFRUMxRDkwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyT3B0aW9ucy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1Jlc2l6ZU9ic2VydmVyT3B0aW9ucy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRDZBNjgyMjZFRUMxRDkwMDdCMjIzMSAvKiBKU1Jlc2l6
ZU9ic2VydmVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Jlc2l6ZU9ic2VydmVyT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY4OTI2RUVDMzJBMDA3QjIy
MzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlc2l6ZU9ic2VydmVyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwRkQ2QTY4QjI2RUVDMzdGMDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJCb3hPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc2l6ZU9ic2VydmVyQm94T3B0
aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ2QTY4RDI2RUVDNUU4MDA3
QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJTaXplLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlc2l6ZU9ic2VydmVyU2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkQ3MjM4MDBFQzhCRDkzMDBDQTVERDcgLyogRmxvYXRRdWFkLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZsb2F0UXVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwRkQ3MjM4MTBFQzhCRDkzMDBDQTVERDcgLyogRmxvYXRRdWFkLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZsb2F0UXVhZC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTBGRDdDMjFEMjNDRTQxRTMwMDk2RDEwMiAvKiBQbGF0Zm9ybVdoZWVs
RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGxhdGZvcm1XaGVlbEV2ZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZEOTc1RDIyNDVDQkRBRjAwQzQyMjk5IC8qIFNj
cm9sbGluZ1RyZWVHZXN0dXJlU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZUdl
c3R1cmVTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkQ5NzVENDI0NUNC
REQ3MDBDNDIyOTkgLyogU2Nyb2xsaW5nVHJlZUdlc3R1cmVTdGF0ZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTY3JvbGxpbmdUcmVlR2VzdHVyZVN0YXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEZEQTdDMTAxODgzMjJFQjAwQzk1NEI1IC8qIEpTVG91Y2guY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUb3VjaC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTBGREE3QzExMTg4MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVG91Y2guaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMEZEQTdDMTIxODgzMjJFQjAwQzk1NEI1IC8qIEpTVG91Y2hFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1RvdWNoRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkRBN0MxMzE4ODMyMkVCMDBDOTU0
QjUgLyogSlNUb3VjaEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
VG91Y2hFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkRBN0MxNDE4ODMy
MkVCMDBDOTU0QjUgLyogSlNUb3VjaExpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNUb3VjaExpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkRBN0MxNTE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaExpc3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNUb3VjaExpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMEZEQTdDMUMxODgzMjJGQzAwQzk1NEI1IC8qIEpTR2VzdHVyZUV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTR2VzdHVyZUV2ZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZEQTdDMUQxODgzMjJGQzAwQzk1NEI1IC8q
IEpTR2VzdHVyZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTR2Vz
dHVyZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGREE3QzIwMTg4MzJC
Q0MwMEM5NTRCNSAvKiBEYXRlVGltZUZvcm1hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBEYXRlVGltZUZvcm1hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTBGREE3QzIyMTg4MzMwQTkwMEM5NTRCNSAvKiBEcmFnSW1hZ2VJT1MubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEcmFnSW1hZ2VJT1MubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGREE3QzI0MTg4MzMzMzIwMEM5NTRCNSAvKiBKU1dl
YktpdFBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJLaXRQbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUV2
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZEQTdDMjUxODgzMzMzMjAw
Qzk1NEI1IC8qIEpTV2ViS2l0UGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYktpdFBsYXliYWNrVGFyZ2V0QXZhaWxh
YmlsaXR5RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZEQ0Q3RjIxRDQ3
RTY1NTAwOUYwOEJDIC8qIExvZ0luaXRpYWxpemF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IExvZ0luaXRpYWxpemF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTBGREY0NUE2MUJEMUM2RkQwMEU0RkE4QyAvKiBQbGF0Zm9ybUNBQW5pbWF0aW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtQ0FBbmltYXRp
b24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkRGNDVBODFCRDFDODI1MDBF
NEZBOEMgLyogVGltaW5nRnVuY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gVGltaW5nRnVuY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkU1ODA2MTE5MzI3QTYyMDBERTMyRUIgLyogU2Nyb2xsaW5nVHJlZU1hYy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVNYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTU4MDYyMTkzMjdBNjIwMERFMzJFQiAvKiBT
Y3JvbGxpbmdUcmVlTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9s
bGluZ1RyZWVNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFNUZCQ0ExQzNE
RDUxRTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERpc3BsYXlMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMEZFNUZCQ0IxQzNERDUxRTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTBGRTVGQkNDMUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdEl0ZW1zLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlMaXN0SXRlbXMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkU1RkJDRDFDM0RENTFFMDAwN0Ey
Q0EgLyogRGlzcGxheUxpc3RJdGVtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBEaXNwbGF5TGlzdEl0ZW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTVG
QkNFMUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdFJlY29yZGVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlMaXN0UmVjb3JkZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkU1RkJDRjFDM0RENTFFMDAwN0EyQ0EgLyogRGlz
cGxheUxpc3RSZWNvcmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNw
bGF5TGlzdFJlY29yZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTVGQkQw
MUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdFJlcGxheWVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwRkU1RkJEMTFDM0RENTFFMDAwN0EyQ0EgLyogRGlzcGxh
eUxpc3RSZXBsYXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5
TGlzdFJlcGxheWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTZDNzZCMUZC
RkI3QTYwMDI1QzA1MyAvKiBDb2xvclV0aWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBD
b2xvclV0aWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTZDNzZD
MUZCRkI3QTYwMDI1QzA1MyAvKiBDb2xvclV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xv
clV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkU3MTQwMzE0MjE3
MEI4MDBEQjMzQkEgLyogU2Nyb2xsYmFyVGhlbWVNb2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGJhclRoZW1lTW9jay5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTBGRTcxNDA0MTQyMTcwQjgwMERCMzNCQSAvKiBTY3JvbGxiYXJUaGVt
ZU1vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsYmFyVGhlbWVN
b2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRTcxNDE1MTQyMTg5RkMwMERC
MzNCQSAvKiBTY3JvbGxiYXJUaGVtZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTY3JvbGxiYXJUaGVtZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGRTk1RjFBMUNENTQwRDAwMEQyRjQ1QSAvKiBMZW5ndGhCb3guY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGVuZ3RoQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEZFOTVGMUMxQ0Q1NDNERjAwRDJGNDVBIC8qIFRyYW5zZm9ybU9wZXJhdGlv
bi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zvcm1PcGVy
YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkVBM0U3OTE5MUIyRkM1
MDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFQTNFN0ExOTFCMkZDNTAwMEYxQjU1
IC8qIFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFQTNFN0QxOTFCMzE2OTAwMEYxQjU1
IC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9k
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRUEzRTdFMTkxQjMxNjkwMDBG
MUI1NSAvKiBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFQTNFODExOTFCMzFCRjAwMEYxQjU1
IC8qIFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxpbmdO
b2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFQTNFODIxOTFCMzFCRjAw
MEYxQjU1IC8qIFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxpbmdO
b2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRUEzRTg1MTkxQjNCRDcwMDBG
MUI1NSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkVBM0U4NjE5MUIzQkQ3MDAwRjFC
NTUgLyogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRUMxMjA5MjJCRjJDQzcwMDRFOUQzNSAvKiBMYXll
ckFuY2VzdG9yQ2xpcHBpbmdTdGFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXllckFuY2VzdG9yQ2xp
cHBpbmdTdGFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkVDMTIwQjIyQkYy
Q0M3MDA0RTlEMzUgLyogTGF5ZXJBbmNlc3RvckNsaXBwaW5nU3RhY2suY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTGF5ZXJBbmNlc3RvckNsaXBwaW5nU3RhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwRkVGMjBDRDFCRDRBMjQxMDAxMjhFNUQgLyogTGVuZ3RoU2l6ZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZW5ndGhTaXplLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZFRjIwQ0YxQkQ0QTY0RjAwMTI4RTVEIC8qIFJl
bmRlclN0eWxlQ29uc3RhbnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMEZGMjlBNTMyNTEwMUE2MTAwM0MzNEUyIC8qIExheW91dEJveEdlb21ldHJ5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IExheW91dEJveEdlb21ldHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGRjI5QTU1MjUxMDFBNjEwMDNDMzRFMiAvKiBMYXlvdXRCb3hHZW9tZXRyeS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBMYXlvdXRCb3hHZW9tZXRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTBGRjJFODBDMUVFMEQ0MzAwMDlFQUJENCAvKiBQZXJmb3JtYW5jZUxvZ2dp
bmdDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyZm9y
bWFuY2VMb2dnaW5nQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZG
MzMxMjkyNkM4QTFFQzAwRTI3RDQ4IC8qIERpc3BsYXlHZW9tZXRyeVR5cGVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERpc3BsYXlHZW9tZXRyeVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGRjNCOTI0MUVFM0I2REUwMEI4NDE0NCAvKiBKU0RPTVF1YWQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01RdWFkLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMEZGM0I5MjUxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVF1YWQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMEZGM0I5MjYxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZElu
aXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01RdWFkSW5p
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRjNCOTI3MUVFM0I2REUwMEI4
NDE0NCAvKiBKU0RPTVF1YWRJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRE9NUXVhZEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGNTAyNjcx
MDJCQTk0MzAwNjZGMzlBIC8qIEpTU3R5bGVNZWRpYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1N0eWxlTWVkaWEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRkY1MDI2ODEwMkJBOTQzMDA2NkYzOUEgLyogSlNTdHlsZU1lZGlhLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU3R5bGVNZWRpYS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkwRkY1MDI2RTEwMkJBOTY2MDA2NkYzOUEgLyogU3R5bGVNZWRpYS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZU1lZGlhLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGNTAyNkYxMDJCQTk2QTAwNjZGMzlBIC8q
IFN0eWxlTWVkaWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVNZWRp
YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkY1MDI3MDEwMkJBOTZBMDA2NkYz
OUEgLyogU3R5bGVNZWRpYS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3R5bGVNZWRpYS5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRjgzNUI3MUVFMzI3NEYwMDhCNEND
NyAvKiBET01Qb2ludFJlYWRPbmx5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IERPTVBvaW50UmVhZE9ubHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwRkY4MzVCRDFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01RdWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMEZGODM1QkUxRUUzNTREQTAwOEI0Q0M3IC8qIERPTVF1YWQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NUXVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRkY4MzVCRjFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gRE9NUXVhZC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGRjgzNUMwMUVFMzU0REEwMDhCNENDNyAvKiBET01RdWFkSW5pdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01RdWFkSW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwRkY4MzVDMTFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZEluaXQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IERPTVF1YWRJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMEZGRDQ1QTcyNDNCRjI1NzAwMEQ0QkVBIC8qIFNjcm9sbGluZ1RyZWVMYXRjaGlu
Z0NvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZUxhdGNoaW5nQ29udHJv
bGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkZENDVBODI0M0JGMjU3MDAw
RDRCRUEgLyogU2Nyb2xsaW5nVHJlZUxhdGNoaW5nQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTY3JvbGxpbmdUcmVlTGF0Y2hpbmdDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMEZGRDRENUUxODY1MUZBMzAwNTEyRjZFIC8qIEFzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
QXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTBGRkQ0RDVGMTg2NTFGQTMwMDUxMkY2RSAvKiBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFzeW5jU2Nyb2xsaW5nQ29vcmRp
bmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGRjFCNzIyNTFCQzY1NzAw
OTg3OTVBIC8qIERpc3BsYXlCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxheUJveC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRkYxQjczMjUxQkM2NTcwMDk4Nzk1
QSAvKiBEaXNwbGF5U3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheVN0eWxlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRkYxQjc0MjUxQkM2NTcwMDk4Nzk1QSAvKiBEaXNw
bGF5Q29udGFpbmVyQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlDb250YWluZXJC
b3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkZGMUI3NTI1MUJDNjU3MDA5
ODc5NUEgLyogRGlzcGxheUltYWdlQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlJ
bWFnZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRkYxQjc2MjUxQkM2
NTcwMDk4Nzk1QSAvKiBEaXNwbGF5U3R5bGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxh
eVN0eWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGRjFCNzcyNTFCQzY1
NzAwOTg3OTVBIC8qIERpc3BsYXlDU1NQYWludGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlD
U1NQYWludGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRkYxQjc4MjUxQkM2
NTcwMDk4Nzk1QSAvKiBEaXNwbGF5Qm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlCb3guaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGRjFCNzkyNTFCQzY1NzAwOTg3OTVBIC8q
IERpc3BsYXlSZXBsYWNlZEJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5UmVwbGFjZWRCb3gu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMEZGRjFCN0EyNTFCQzY1NzAwOTg3OTVB
IC8qIERpc3BsYXlDb250YWluZXJCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUNvbnRhaW5l
ckJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkZGMUI3QjI1MUJDNjU3MDA5
ODc5NUEgLyogRGlzcGxheUltYWdlQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlJbWFnZUJv
eC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwRkZGMUI3QzI1MUJDNjU3MDA5ODc5
NUEgLyogRGlzcGxheVJlcGxhY2VkQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpc3BsYXlS
ZXBsYWNlZEJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBGRkYxQjdEMjUx
QkM2NTcwMDk4Nzk1QSAvKiBEaXNwbGF5Q1NTUGFpbnRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEaXNwbGF5Q1NTUGFpbnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTBG
RkYxQjdGMjUxQkM2NjIwMDk4Nzk1QSAvKiBEaXNwbGF5VHJlZUJ1aWxkZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRGlzcGxheVRyZWVCdWlsZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGRkYxQjgwMjUxQkM2NjIwMDk4Nzk1QSAvKiBEaXNwbGF5VHJlZUJ1aWxkZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRGlzcGxheVRyZWVCdWlsZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMEZGRjFCODEyNTFCQzY2MzAwOTg3OTVBIC8qIERpc3BsYXlUcmVlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpc3BsYXlUcmVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTBGRkYxQjgyMjUxQkM2NjMwMDk4Nzk1QSAvKiBEaXNwbGF5VHJlZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEaXNwbGF5VHJlZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTEw
RkIwODRBMTRFMTVDN0UwMEEzREI5OCAvKiBQdWJsaWNVUkxNYW5hZ2VyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFB1YmxpY1VSTE1hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMTExMDBGQzcyMDkyNzY0QzAwODFBQTZDIC8qIExheW91dEl0ZXJhdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dEl0ZXJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTExMTAwRkM5MjA5MjdDQkMwMDgxQUE2QyAvKiBMYXlvdXRDaGlsZEl0ZXJhdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dENoaWxkSXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMTExMDBGRDUyMDk1MTRERTAwODFBQTZDIC8qIExheW91dFRyZWVCdWls
ZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExheW91dFRyZWVCdWlsZGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTExMDBGRDcyMDk1MTRERjAwODFBQTZDIC8qIExheW91
dFRyZWVCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dFRyZWVCdWlsZGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExMUM2MTU2MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlv
dXRSZXBsYWNlZEJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRSZXBsYWNlZEJveC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTFDNjE1NzIwQUQxQUUxMDA1QjgyRkEgLyogTGF5
b3V0UmVwbGFjZWRCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0UmVwbGFjZWRCb3gu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTFGQTFDNTI2RjBGMzBGMDAzQjhG
MTYgLyogSW5saW5lSW52YWxpZGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IElubGluZUludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
MTFGQTFDNjI2RjBGMzBGMDAzQjhGMTYgLyogSW5saW5lRGFtYWdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZURhbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxMTFGQTFDOTI2RjBGNDM4MDAzQjhGMTYgLyogSW5saW5lSW52YWxpZGF0aW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUludmFsaWRhdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTExMzQwOUQ3MjAzRTAzODAwMEM2NjkxNSAvKiBSZW5kZXJUcmVl
QnVpbGRlckNvbnRpbnVhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUcmVlQnVp
bGRlckNvbnRpbnVhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExMzQw
OUQ4MjAzRTAzODAwMEM2NjkxNSAvKiBSZW5kZXJUcmVlQnVpbGRlckNvbnRpbnVhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZW5kZXJUcmVlQnVpbGRlckNvbnRpbnVhdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxMTNEMEI0RjFGOUZERDJCMDBGNjExQkIgLyogRnJhbWVWaWV3
TGF5b3V0Q29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGcmFtZVZpZXdMYXlvdXRDb250
ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTEzRDBCNTAxRjlGREQyQjAw
RjYxMUJCIC8qIEZyYW1lVmlld0xheW91dENvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVW
aWV3TGF5b3V0Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTUxM0Qw
MDI2RDk4MUREMDA0RDNGQUEgLyogSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IElubGluZURpc3BsYXlDb250ZW50QnVpbGRlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNTEzRDAyMjZEOTgxRTcwMDREM0ZBQSAvKiBJbmxpbmVE
aXNwbGF5Q29udGVudEJ1aWxkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTExNUNBODMwMjMzMjhCMUUwMEZEM0IwOCAvKiBMYXlvdXRVbml0cy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBMYXlvdXRVbml0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTExNUNGQTY4MjA4QUY3RDAwMDFFNjk5MSAvKiBGb3JtYXR0aW5nQ29udGV4dC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGb3JtYXR0aW5nQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxMTVDRkE2OTIwOEFGN0QwMDAxRTY5OTEgLyogRm9ybWF0dGluZ0NvbnRleHQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRm9ybWF0dGluZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxMTVDRkE2QzIwOEFGQUI2MDAxRTY5OTEgLyogQmxvY2tGb3JtYXR0aW5nQ29u
dGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTZEMjA4QUZBQjYwMDFFNjk5MSAvKiBCbG9ja0Zv
cm1hdHRpbmdDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJsb2NrRm9ybWF0dGluZ0Nv
bnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTVDRkE3NDIwOEFGRTMw
MDAxRTY5OTEgLyogRm9ybWF0dGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1hdHRpbmdT
dGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTVDRkE3NTIwOEFGRTMwMDAx
RTY5OTEgLyogRm9ybWF0dGluZ1N0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvcm1hdHRp
bmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTc4MjA4QjhE
OUQwMDFFNjk5MSAvKiBCbG9ja0Zvcm1hdHRpbmdTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9j
a0Zvcm1hdHRpbmdTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTVDRkE3
OTIwOEI4RDlEMDAxRTY5OTEgLyogQmxvY2tGb3JtYXR0aW5nU3RhdGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQmxvY2tGb3JtYXR0aW5nU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxMTVDRkE3QzIwOEI4RTEwMDAxRTY5OTEgLyogSW5saW5lRm9ybWF0dGluZ1N0YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUZvcm1hdHRpbmdTdGF0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxMTVDRkE3RDIwOEI4RTEwMDAxRTY5OTEgLyogSW5saW5lRm9ybWF0
dGluZ1N0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUZvcm1hdHRpbmdTdGF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTgwMjA4QjhFREEwMDFFNjk5
MSAvKiBGbG9hdGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZsb2F0aW5nU3RhdGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE1Q0ZBODEyMDhCOEVEQTAwMUU2OTkxIC8qIEZs
b2F0aW5nU3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxvYXRpbmdTdGF0ZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTg0MjA4QjkwNjYwMDFFNjk5MSAvKiBG
bG9hdGluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmxvYXRpbmdDb250ZXh0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTg1MjA4QjkwNjYwMDFFNjk5MSAvKiBGbG9h
dGluZ0NvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxvYXRpbmdDb250ZXh0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE1Q0ZBODkyMDhCOTIxQTAwMUU2OTkxIC8q
IEJsb2NrTWFyZ2luQ29sbGFwc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmxvY2tNYXJnaW5D
b2xsYXBzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTk1MjA4Qjk1
MkIwMDFFNjk5MSAvKiBMYXlvdXRCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0Qm94Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNUNGQTk2MjA4Qjk1MkIwMDFFNjk5MSAvKiBM
YXlvdXRCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0Qm94LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE2M0Y4MjEyNEU1RDU5QjAwMEFCOTYwIC8qIFJlbmRlclRy
ZWVNdXRhdGlvbkRpc2FsbG93ZWRTY29wZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJUcmVlTXV0
YXRpb25EaXNhbGxvd2VkU2NvcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE2
M0Y4MjMyNEU1RDU5QjAwMEFCOTYwIC8qIFJlbmRlclRyZWVNdXRhdGlvbkRpc2FsbG93ZWRTY29w
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUcmVlTXV0YXRpb25EaXNhbGxvd2VkU2Nv
cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTY0OEI0MTI2MEEzRjZDMDA0
QUYxRjIgLyogSlNXZWJYUlJpZ2lkVHJhbnNmb3JtQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViWFJSaWdpZFRyYW5zZm9ybUN1c3RvbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExNjQ4QjQzMjYwQTNGNkMwMDRBRjFGMiAvKiBK
U1dlYlhSVmlld0N1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1dlYlhSVmlld0N1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTEx
ODBGN0ZFMjYzMUNEOTIwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dFNvdXJjZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBPcGVuWFJJbnB1dFNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTExODBGODAwMjYzMUNEOTIwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dE1hcHBpbmdzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE9wZW5YUklucHV0TWFwcGluZ3MuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTE4MEY4MDEyNjMxQ0Q5MzAwMDBFNjI0IC8qIE9wZW5YUklucHV0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9wZW5YUklucHV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTExODBGODAyMjYzMUNEOTMwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBPcGVuWFJJbnB1dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTEx
ODBGODAzMjYzMUNEOTQwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dFNvdXJjZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBPcGVuWFJJbnB1dFNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
MThCMDY4NjI1RTQxRTUxMDA3MEJFNEIgLyogT3BlblhSRXh0ZW5zaW9ucy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPcGVuWFJFeHRlbnNpb25zLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE4QjA2ODgyNUU0MUU1MjAwNzBCRTRCIC8qIE9wZW5Y
UkV4dGVuc2lvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3BlblhSRXh0
ZW5zaW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMThCMDY4OTI1RTQxRTUy
MDA3MEJFNEIgLyogT3BlblhSSW5zdGFuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gT3BlblhSSW5zdGFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxMThCMDY4QTI1RTQxRTUzMDA3MEJFNEIgLyogT3BlblhSVXRpbHMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3BlblhSVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTE5MzQwNzYxRkU4QjkyMzAwOTM1RjFFIC8qIFJlbmRlclRyZWVCdWlsZGVy
VGFibGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJUYWJsZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExOTM0MDc3MUZFOEI5MjMwMDkzNUYxRSAv
KiBSZW5kZXJUcmVlQnVpbGRlclRhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRyZWVCdWls
ZGVyVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE5MzQwODcxRkVCMzU1
RDAwOTM1RjFFIC8qIFJlbmRlclRyZWVCdWlsZGVyUnVieS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZW5kZXJUcmVlQnVpbGRlclJ1YnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxMTkzNDA4ODFGRUIzNTVEMDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJSdWJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlclRyZWVCdWlsZGVyUnVieS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxMTkzNDA5NDFGRUQ3MTU1MDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJG
b3JtQ29udHJvbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJGb3Jt
Q29udHJvbHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMTkzNDA5NTFGRUQ3
MTU1MDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJGb3JtQ29udHJvbHMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJGb3JtQ29udHJvbHMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTE5MzQwQTAxRkVFMDI0MDAwOTM1RjFFIC8qIFJlbmRlclRyZWVCdWlsZGVy
QmxvY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJCbG9jay5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExOTM0MEExMUZFRTAyNDAwMDkzNUYxRSAv
KiBSZW5kZXJUcmVlQnVpbGRlckJsb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRyZWVCdWls
ZGVyQmxvY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE5OUZBNDQyMDhFMzVB
MzAwMjM1OENDIC8qIExheW91dENvbnRhaW5lckJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRD
b250YWluZXJCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTE5OUZBNDUyMDhF
MzVBMzAwMjM1OENDIC8qIExheW91dENvbnRhaW5lckJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBMYXlvdXRDb250YWluZXJCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
MUIwNDJGQjIwQjBFMjE0MDA4MjhBNkIgLyogTGF5b3V0RGVzY2VuZGFudEl0ZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dERlc2NlbmRhbnRJdGVyYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMUMzMjI3QTI2RDk1OEI1MDAzMjhGNEQg
LyogSW5saW5lTGluZUJveEJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5lTGlu
ZUJveEJ1aWxkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMUMzMjI3QzI2
RDk1OENFMDAzMjhGNEQgLyogSW5saW5lTGluZUJveEJ1aWxkZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW5saW5lTGluZUJveEJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMTFDNUYxMTYyMDAzRTc3NTAwMDFBRTYwIC8qIFJlbmRlclRyZWVCdWls
ZGVySW5saW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRl
clRyZWVCdWlsZGVySW5saW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFD
NUYxMTgyMDAzRTc3NjAwMDFBRTYwIC8qIFJlbmRlclRyZWVCdWlsZGVySW5saW5lLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRyZWVCdWlsZGVySW5saW5lLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExQzVGMTFEMjAwM0Y2OUUwMDAxQUU2MCAvKiBS
ZW5kZXJUcmVlQnVpbGRlckJsb2NrRmxvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZW5kZXJUcmVlQnVpbGRlckJsb2NrRmxvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxMUM1RjExRjIwMDNGNjlGMDAwMUFFNjAgLyogUmVuZGVyVHJlZUJ1aWxkZXJCbG9j
a0Zsb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJl
ZUJ1aWxkZXJCbG9ja0Zsb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMUM1
RjEyQTIwMDQyMzFEMDAwMUFFNjAgLyogUmVuZGVyVHJlZUJ1aWxkZXJTVkcuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJTVkcuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFDNUYxMkMyMDA0MjMxRTAwMDFBRTYwIC8qIFJlbmRlclRy
ZWVCdWlsZGVyU1ZHLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlclRyZWVCdWlsZGVyU1ZHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFD
NUYxMzIyMDA1MjdGODAwMDFBRTYwIC8qIFJlbmRlclRyZWVCdWlsZGVyTWF0aE1MLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclRyZWVCdWlsZGVyTWF0aE1M
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFDNUYxMzQyMDA1MjdGOTAwMDFB
RTYwIC8qIFJlbmRlclRyZWVCdWlsZGVyTWF0aE1MLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlbmRlclRyZWVCdWlsZGVyTWF0aE1MLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTExQ0IyNzg2MjAzQkE1NzAwMDRBMURDOSAvKiBSZW5kZXJUcmVlQnVpbGRlckZ1
bGxTY3JlZW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJGdWxsU2Ny
ZWVuLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFDQjI3ODcyMDNCQTU3MDAw
NEExREM5IC8qIFJlbmRlclRyZWVCdWlsZGVyRnVsbFNjcmVlbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
ZW5kZXJUcmVlQnVpbGRlckZ1bGxTY3JlZW4uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMTFEMTlDMkUyMzE1OUJBRTAwOEYyNEQzIC8qIFRhYmxlRm9ybWF0dGluZ0dlb21ldHJ5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRhYmxlRm9ybWF0dGluZ0dlb21ldHJ5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFFNTE2MzUyNjFFMUEwNTAwRTY5RjI1IC8qIFdlYlhS
SW5wdXRTcGFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJYUklucHV0
U3BhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFFNTE2MzcyNjFFMUEwNTAw
RTY5RjI1IC8qIFdlYlhSSW5wdXRTcGFjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXZWJYUklucHV0U3BhY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxMUU1MTYzQTI2MUUxQTE0MDBFNjlGMjUgLyogV2ViWFJHYW1lcGFkLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlhSR2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxMUU1MTYzQjI2MUUxQTE0MDBFNjlGMjUgLyogV2ViWFJHYW1lcGFkLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhSR2FtZXBhZC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTExRTZDRjFCMjVGMTQwRTMwMDEzRDNENSAv
KiBKU1dlYlhSUmVmZXJlbmNlU3BhY2VDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNXZWJYUlJlZmVyZW5jZVNwYWNlQ3VzdG9tLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTFFNkNGMUQyNUYxNDBFNDAwMTNEM0Q1IC8qIEpTV2ViWFJT
cGFjZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dl
YlhSU3BhY2VDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxMUZGMDJE
NTIwQkEzQzgxMDA4M0YyNUIgLyogVmVyaWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFZlcmlmaWNhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTEyRjc1QTlB
ODZFQTAzREFGMjRCNzk3MSAvKiBJU09Qcm90ZWN0aW9uU3lzdGVtU3BlY2lmaWNIZWFkZXJCb3gu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSVNPUHJvdGVjdGlvblN5c3RlbVNw
ZWNpZmljSGVhZGVyQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MDBEN0E3
MTcxMzZFQTcwMDc3Q0UwNSAvKiBTY3JpcHRXcmFwcGFibGVJbmxpbmVzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdFdyYXBwYWJsZUlubGluZXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQwMjY0NUQwQUZEQzE5QjAwNTkxOUUyIC8qIExvZ2dpbmdN
YWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTG9nZ2luZ01h
Yy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQwM0I5MEMwOUVCMTI0NTAwNzk3
QzdGIC8qIERPTVdpbmRvdy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NV2luZG93Lmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQwM0I5OTUwOUVCMTNBRjAwNzk3QzdG
IC8qIERPTVdpbmRvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01XaW5k
b3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQwM0I5OTYwOUVCMTNBRjAwNzk3
QzdGIC8qIERPTVdpbmRvdy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBET01XaW5kb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDAzQkEwQjA5
RUIxOEM3MDA3OTdDN0YgLyogSlNET01XaW5kb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRE9NV2luZG93LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMTQwM0JBMEUwOUVCMThGODAwNzk3QzdGIC8qIEpTRE9NV2luZG93LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVdpbmRvdy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxNDExNUFGOTA5Rjg0N0Q2MDBDQTRGQzEgLyogTm9kZUZpbHRlci5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9kZUZpbHRlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTE0MTE1QjUxMDlGODRCNzEwMENBNEZDMSAvKiBOb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTE0MTE1QjcwMDlGODRDRDYwMENBNEZDMSAvKiBKU05vZGVGaWx0ZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm9kZUZpbHRlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MTE1QjcxMDlGODRDRDYwMENBNEZDMSAvKiBKU05v
ZGVGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTm9kZUZpbHRl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDExRENCMDE2NEMzOUE4MDBENDlC
QzEgLyogV2lkdGhDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXaWR0
aENhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MUI5NEU1MDlFQzQyMjMw
MDBFOTQxMyAvKiBNb3VzZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTW91c2VF
dmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MUI5NEVFMDlFQzQyNUEw
MDBFOTQxMyAvKiBVSUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVUlFdmVudC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MURDMDQ3MTY0ODM0OEYwMDM3MUU1
QSAvKiBMYXlvdXRVbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91
dFVuaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQxREMwNEIxNjQ4MzRCOTAw
MzcxRTVBIC8qIExheW91dFBvaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExheW91dFBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MURDMDRDMTY0
ODM0QjkwMDM3MUU1QSAvKiBMYXlvdXRSZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IExheW91dFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxNDFEQzA0RDE2NDgzNEI5MDAzNzFFNUEgLyogTGF5b3V0UmVjdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRSZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTE0MURDMDRFMTY0ODM0QjkwMDM3MUU1QSAvKiBMYXlvdXRTaXplLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dFNpemUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTQyMDExQUUwQTAwMzExNzAwODMwM0Y5IC8qIENTU1N0eWxlRGVjbGFyYXRp
b24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NTdHlsZURlY2xhcmF0aW9uLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQyMDExQjQwQTAwMzEzMzAwODMwM0Y5IC8q
IEpTQ1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNDU1NTdHlsZURlY2xhcmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMTQyMDExQjUwQTAwMzEzMzAwODMwM0Y5IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NTdHlsZURlY2xhcmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MkI5N0M3MTMxMzg5NDMwMDhC
RUY0QiAvKiBUZXh0Q29udHJvbElubmVyRWxlbWVudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQyQjk3QzgxMzEzODk0MzAwOEJFRjRCIC8qIFRleHRDb250
cm9sSW5uZXJFbGVtZW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0
Q29udHJvbElubmVyRWxlbWVudHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQz
MkU4NDYwQzUxNDkzODAwQjE1MDBGIC8qIEdDQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gR0NDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTE0MzJFODQ4MEM1MTQ5M0YwMEIxNTAwRiAvKiBHQ0NvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdDQ29udHJvbGxlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0NDc2QUE3MTVEQzRCQjEwMDMwNURCMiAvKiBXcml0
aW5nTW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXcml0aW5nTW9kZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDQ5RTI0QTEwN0Q0QTg0MDBCNTc5M0Yg
LyogSlNDYWxsYmFja0RhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlND
YWxsYmFja0RhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ0OUUyODYxMDdE
NERCNDAwQjU3OTNGIC8qIEpTQ2FsbGJhY2tEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTQ2FsbGJhY2tEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMTQ3N0U3NzQwQkY0MTM0QTAwMTUyODcyIC8qIEJhY2tGb3J3YXJkQ2FjaGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJhY2tGb3J3YXJkQ2FjaGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDc3RTc3NTBCRjQxMzRBMDAxNTI4
NzIgLyogQmFja0ZvcndhcmRDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQmFja0ZvcndhcmRDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDc5
RkFFNTEwOUFFMzc1MDBERUQ2NTUgLyogUmVuZGVyUnVieS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJSdWJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMTQ3OUZBRTYxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyUnVieS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxNDc5RkFFNzEwOUFFMzc1MDBERUQ2NTUgLyogUmVuZGVyUnVieUJhc2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyUnVieUJhc2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDc5RkFFODEwOUFFMzc1MDBERUQ2
NTUgLyogUmVuZGVyUnVieUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVuZGVyUnVieUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ3OUZBRTkx
MDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnlSdW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyUnVieVJ1bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTE0NzlGQUVBMTA5QUUzNzUwMERFRDY1NSAvKiBSZW5kZXJSdWJ5UnVuLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclJ1YnlSdW4uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ3OUZBRUIxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1
YnlUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclJ1
YnlUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQ3OUZBRUMxMDlBRTM3
NTAwREVENjU1IC8qIFJlbmRlclJ1YnlUZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlbmRlclJ1YnlUZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0
ODEzQkYzMDlFREY4OEUwMEY3NTdFMSAvKiBJRExQYXJzZXIucG0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnNj
cmlwdC5wZXJsOyBuYW1lID0gSURMUGFyc2VyLnBtOyBwYXRoID0gc2NyaXB0cy9JRExQYXJzZXIu
cG07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0OEI0RkZGMUI2OTA0QzUwMEM5NTRF
NCAvKiBDb3VudFF1ZXVpbmdTdHJhdGVneS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ291
bnRRdWV1aW5nU3RyYXRlZ3kuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNDhC
NEZGRjFCNjkwNEM1MDBDOTU0RTUgLyogQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0OTQ3RkZCMTJGODBDRDIwMEEwRjYzMSAvKiBUcmVl
U2NvcGVPcmRlcmVkTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFRyZWVTY29wZU9yZGVyZWRNYXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
NDk0N0ZGQzEyRjgwQ0QyMDBBMEY2MzEgLyogVHJlZVNjb3BlT3JkZXJlZE1hcC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUcmVlU2NvcGVPcmRlcmVkTWFwLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0OTkzQkUzMEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1c0Nv
bnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvY3Vz
Q29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0OTkzQkU0MEIy
RjJCMUMwMDUwNDk3RiAvKiBGb2N1c0NvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZvY3VzQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxNEE5OEUwNTEzNjM4NkEyMDBDOUZFRDIgLyogQmxvYi5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQmxvYi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0QkRGNTlB
MTM2NTM5OTEwMDE0ODM5MyAvKiBGaWxlUmVhZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBGaWxlUmVhZGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTRDRjc4NzEw
OUY1ODdDQTAwRUIzNjY1IC8qIERlcHJlY2F0ZWRDU1NPTVZhbHVlLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gRGVwcmVjYXRlZENTU09NVmFsdWUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxNENGN0E3MDA5RjVDRjlBMDBFQjM2NjUgLyogQ1NTUnVsZS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IENTU1J1bGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxNENGN0IzMTA5RjZFQ0Q3MDBFQjM2NjUgLyogSlNDU1NSdWxlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU1J1bGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxNENGN0IzMjA5RjZFQ0Q3MDBFQjM2NjUgLyogSlNDU1NSdWxlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NTU1J1bGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTRDRjdDMjAwOUY3MTEwNjAwRUIzNjY1IC8qIEtleWJvYXJk
RXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBLZXlib2FyZEV2ZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTRENjRCNUExMzRBNUI2QjAwRTU4RkRBIC8qIFRy
ZWVTY29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmVlU2Nv
cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNEQ2NEI1QjEzNEE1QjZCMDBF
NThGREEgLyogVHJlZVNjb3BlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRy
ZWVTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNEQ4MjM1MDBBRjkyQTc5
MDAwNEYwNTcgLyogQ2hyb21lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENo
cm9tZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNEQ4MjM4QTBBRjkyREY2MDAw
NEYwNTcgLyogQ2hyb21lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDaHJvbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNEQ4MjQwNjBBRjkz
QUVCMDAwNEYwNTcgLyogQ2hyb21lQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENocm9tZUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNERD
MEQwQjA5RkVDRkE0MDA3QjAyMzUgLyogTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
Tm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0REMwRDM1MDlGRUQwNzMw
MDdCMDIzNSAvKiBKU05vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0REMwRDM2MDlG
RUQwNzMwMDdCMDIzNSAvKiBKU05vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNERDRjNCMDFCNkJF
MjA4MDA2MkQ0QzIgLyogSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU0NvdW50UXVldWluZ1N0cmF0ZWd5LmNwcDsgcGF0aCA9
IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5jcHA7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTE0RENGM0IwMUI2QkUyMDgwMDYyRDRD
MyAvKiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gSlNCeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LmNwcDsgcGF0aCA9
IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNCeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5LmNwcDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJMTREQ0YzQjExQjZCRTIwODAw
NjJENEMyIC8qIEpTQ291bnRRdWV1aW5nU3RyYXRlZ3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5oOyBwYXRoID0gRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU0NvdW50UXVldWluZ1N0cmF0ZWd5Lmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTE0RENGM0IxMUI2QkUyMDgwMDYyRDRDMyAvKiBKU0J5dGVMZW5n
dGhRdWV1aW5nU3RyYXRlZ3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNC
eXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5Lmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0pTQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQkxNEU4MzZEMjA5Rjg1MTIwMDBCODVBRTQgLyogRXZlbnQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMTRFODM3ODMwOUY4NUQxQzAwQjg1QUU0IC8qIEpTRXZlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxNEU4Mzc4RDA5Rjg1RDRGMDBCODVBRTQgLyogSlNFdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxNEZGRTMxQjBBRTE5NjMzMDAxMzZCRjUgLyogSFRNTEZyYW1lRWxlbWVudEJh
c2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEZyYW1lRWxlbWVudEJh
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTRGRkUzMUMwQUUxOTYzMzAwMTM2
QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnRCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTUwNTI0RjAxQjcxMkZGMDAwNjk2QUE5IC8qIE1lZGlhUGxheWVyUHJpdmF0
ZU1lZGlhU3RyZWFtQVZGT2JqQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMTUwNTI0RjExQjcxMkZGMDAwNjk2QUE5IC8qIE1lZGlhUGxheWVyUHJpdmF0
ZU1lZGlhU3RyZWFtQVZGT2JqQy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTUxNDVCOEYxQjNBMUIzRTAwNjYyQkY3IC8qIE1lZGlhRGV2
aWNlSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYURldmljZUluZm8uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMTUxNDVCOTExQjNBMUQ0QzAwNjYyQkY3IC8qIE1lZGlhRGV2aWNl
SW5mby5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFEZXZpY2VJbmZvLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTU3MzlCQjgxQjQyMDEyMjAwRDI1OEMxIC8qIEpT
TWVkaWFEZXZpY2VzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TWVkaWFEZXZpY2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTU3MzlCQjkx
QjQyMDEyMjAwRDI1OEMxIC8qIEpTTWVkaWFEZXZpY2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTTWVkaWFEZXZpY2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTE1N0NDMjYxMUI3QzFDQTQwMEQ4RDA3NSAvKiBKU01lZGlhRGV2aWNlSW5mby5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhRGV2aWNlSW5mby5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE1N0NDMjYyMUI3QzFDQTQwMEQ4RDA3NSAv
KiBKU01lZGlhRGV2aWNlSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U01lZGlhRGV2aWNlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNTlBRTgy
QTFCM0E0MDJGMDAzNzQ3OEIgLyogTWVkaWFEZXZpY2VJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhRGV2aWNlSW5mby5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTE1Qzc3MDg5MTAwRDNDNkEwMDVCQTI2NyAvKiBWYWxpZGl0eVN0YXRl
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBWYWxpZGl0eVN0YXRlLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTVDNzcwOEExMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5
U3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmFsaWRpdHlTdGF0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNUM3NzA5MTEwMEQzQ0E4MDA1QkEyNjcg
LyogSlNWYWxpZGl0eVN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
VmFsaWRpdHlTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxNUM3NzA5MjEw
MEQzQ0E4MDA1QkEyNjcgLyogSlNWYWxpZGl0eVN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTVmFsaWRpdHlTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTE2M0U4OEY1MTE4QTM5RDIwMEVEOTIzMSAvKiBTaW1wbGVGb250RGF0YUNv
cmVUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNpbXBsZUZv
bnREYXRhQ29yZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxODVCQ0Yy
NjBGMzI3OUNFMDAwRUEyNjIgLyogVGhyZWFkVGltZXJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFRocmVhZFRpbWVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTE4NUJDRjI3MEYzMjc5Q0UwMDBFQTI2MiAvKiBUaHJlYWRUaW1lcnMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGhyZWFkVGltZXJzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTE4ODYwNEIxMEYyRTY1NEEwMDBCNjQ0MyAvKiBET01UaW1lci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01UaW1lci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE4ODYwNEIyMEYyRTY1NEEwMDBCNjQ0MyAvKiBE
T01UaW1lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01UaW1lci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxOEY4MzFCNzBGRDQ4Qzc4MDBEOEM1NkIgLyog
V29ya2VyTG9hZGVyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29y
a2VyTG9hZGVyUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTkyMTMyNzEx
MUMwRTZCQjAwNDU2MjM4IC8qIFNWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTkyMTMyNzIxMUMwRTZCQjAwNDU2
MjM4IC8qIFNWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTE5MjEzMjczMTFDMEU2QkIwMDQ1NjIzOCAvKiBTVkdGRUNvbnZvbHZl
TWF0cml4RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVDb252b2x2ZU1h
dHJpeEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxOTdCMTgwQTE1
MDYzNEMwMDBFNEFEQTggLyogU1ZHUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTVkdSZW5kZXJpbmdDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMTk3QjE4MEIxNTA2MzRDMDAwRTRBREE4IC8qIFNWR1JlbmRlcmluZ0NvbnRleHQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHUmVuZGVyaW5nQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxOUJGRjY0OTExQzBGMkFDMDBCOEMwNEQgLyogSlNTVkdGRUNvbnZvbHZlTWF0cml4
RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZF
Q29udm9sdmVNYXRyaXhFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MTlCRkY2NEExMUMwRjJBQzAwQjhDMDREIC8qIEpTU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRUNvbnZvbHZlTWF0cml4
RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTA4RkVEQTFENTkyQjhC
MDA4QkE4Q0IgLyogUGx1Z2luSW5mb1Byb3ZpZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFBsdWdpbkluZm9Qcm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBMDhGRURCMUQ1OTJCOEIwMDhCQThDQiAvKiBQbHVnaW5JbmZvUHJvdmlk
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGx1Z2luSW5mb1Byb3ZpZGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBMEQ1NzM0MEE1Qzc3RkUwMDdFREQ0
QyAvKiBPdmVyZmxvd0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBPdmVyZmxvd0V2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEw
RDU3MzUwQTVDNzdGRTAwN0VERDRDIC8qIE92ZXJmbG93RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE92ZXJmbG93RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUEwRDU3MzgwQTVDNzgxMjAwN0VERDRDIC8qIE92ZXJmbG93RXZlbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPdmVyZmxvd0V2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUEwRDU3M0UwQTVDNzg2NzAwN0VERDRDIC8qIEpTT3ZlcmZsb3dFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNPdmVyZmxvd0V2
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEwRDU3M0YwQTVDNzg2NzAw
N0VERDRDIC8qIEpTT3ZlcmZsb3dFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNPdmVyZmxvd0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
MTQxNEIzMTNBMEYwNTAwMDE5OTk2QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gV2ViS2l0Rm9udEZhbWlseU5hbWVzLmNwcDsgcGF0aCA9IERlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvV2ViS2l0Rm9udEZhbWlseU5hbWVzLmNwcDsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJMUExNDE0QjQxM0EwRjA1MDAwMTk5OTZDIC8qIFdlYktp
dEZvbnRGYW1pbHlOYW1lcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXZWJLaXRGb250RmFtaWx5TmFtZXMu
aDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvV2ViS2l0Rm9udEZhbWlseU5hbWVzLmg7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTFBMjE5QjNBMERDQTg3QUIw
MDQwRTNBMCAvKiBucGZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBucGZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTIyNDY0MzBD
Qzk4RERCMDBDMDUyNDAgLyogU1FMaXRlRGF0YWJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1FMaXRlRGF0YWJhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTIyNDY0NDBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlRGF0YWJhc2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMaXRlRGF0YWJhc2UuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEyMjQ2NDUwQ0M5OEREQjAwQzA1MjQwIC8qIFNRTGl0
ZVN0YXRlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTUUxp
dGVTdGF0ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTIyNDY0NjBD
Qzk4RERCMDBDMDUyNDAgLyogU1FMaXRlU3RhdGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNRTGl0ZVN0YXRlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQTIyNDY0NzBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlVHJhbnNhY3Rpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FMaXRlVHJhbnNhY3Rpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTIyNDY0ODBDQzk4RERCMDBDMDUyNDAg
LyogU1FMaXRlVHJhbnNhY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1FMaXRlVHJhbnNhY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEyNTBF
MEMxQ0RENjMyMDAwRDBCRTYzIC8qIExpbmtJY29uVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBMaW5rSWNvblR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUEyOTlGRTUxRDdGNUZBNjAwQTYwMDkzIC8qIFJlbmRlclRoZW1lQ29jb2EubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBSZW5kZXJUaGVtZUNvY29hLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTI5OUZFNjFEN0Y1RkE2MDBBNjAwOTMgLyog
UmVuZGVyVGhlbWVDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5k
ZXJUaGVtZUNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBMkE2ODIxMEI1
QkVERTcwMDAyQTQ4MCAvKiBQcm9ncmVzc1RyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFByb2dyZXNzVHJhY2tlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBMkE2ODIyMEI1QkVERTcwMDAyQTQ4MCAvKiBQcm9ncmVzc1RyYWNrZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb2dyZXNzVHJhY2tlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTJBQUM1NjBEQzJBM0IxMDBBMjBEOUEgLyog
QXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTJBQUM1NzBEQzJBM0IxMDBBMjBEOUEgLyogQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25DYWNo
ZVN0b3JhZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEyQzY2NzEyNDJBRkVG
NzAwMzA1NUVDIC8qIFNoYXJlRGF0YVJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFy
ZURhdGFSZWFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTJDNjY3MzI0
MkFGRUY4MDAzMDU1RUMgLyogU2hhcmVEYXRhUmVhZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJl
RGF0YVJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTJFNkU1ODBDQzU1
MjEzMDA0QTIwNjIgLyogU1FMVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU1FMVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEyRTZFNzgwQ0M1
NTZENTAwNEEyMDYyIC8qIFNRTGl0ZUF1dGhvcml6ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1FMaXRlQXV0aG9yaXplci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBMzU4NkREMTUyNjRDNDUwMDIyQTY1OSAvKiBSZW5kZXJNdWx0aUNvbHVt
bkZsb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTXVs
dGlDb2x1bW5GbG93LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEzNTg2REUx
NTI2NEM0NTAwMjJBNjU5IC8qIFJlbmRlck11bHRpQ29sdW1uRmxvdy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNdWx0aUNvbHVtbkZsb3cuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUEzNzYzNjkxQTJFNjhCQjAwOUE3RUUyIC8qIFN0b3JhZ2VOYW1l
c3BhY2VQcm92aWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQTM3NjM2QTFBMkU2OEJCMDA5QTdFRTIgLyogU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0b3JhZ2VOYW1lc3BhY2VQcm92aWRl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ4MzJCMjFBOTUzQkE2MDA4QjRE
RkUgLyogTG9jYWxpemVkU3RyaW5nc0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gTG9jYWxpemVkU3RyaW5nc0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQTQ5NEJCQjBBMTIyRENEMDBGREFGQzEgLyogSFRNTEVsZW1lbnQuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUE0OTRCRjgwQTEyMkY0NDAwRkRBRkMxIC8qIEpTSFRNTEVsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ5NEJGOTBBMTIyRjQ0MDBGREFG
QzEgLyogSlNIVE1MRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNIVE1MRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ5NEUyOTBB
MTIzNTQzMDBGREFGQzEgLyogSFRNTERvY3VtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBIVE1MRG9jdW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ5NEUz
MjBBMTIzNThBMDBGREFGQzEgLyogSlNIVE1MRG9jdW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTERvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUE0OTRFMzMwQTEyMzU4QjAwRkRBRkMxIC8qIEpTSFRNTERvY3VtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxEb2N1bWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ5NEVENTBBMTIzRjFBMDBGREFGQzEgLyog
RG9jdW1lbnRGcmFnbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRG9jdW1lbnRGcmFn
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNDk0RURDMEExMjNGNEMw
MEZEQUZDMSAvKiBKU0RvY3VtZW50RnJhZ21lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRG9jdW1lbnRGcmFnbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBNDk0RUREMEExMjNGNEMwMEZEQUZDMSAvKiBKU0RvY3VtZW50RnJhZ21l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRG9jdW1lbnRGcmFnbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTRBMkREMzBBMUI4NDUxMDBDODA3
RjggLyogSFRNTEFuY2hvckVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxB
bmNob3JFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE0QTJERUIw
QTFCODUyQTAwQzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEFuY2hvckVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQTRBMkRFQzBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1M
QW5jaG9yRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1M
QW5jaG9yRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTRBOTU0QjBC
NEVEQ0NCMDAyRDhDM0MgLyogU2hhcmVkQnVmZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTaGFyZWRCdWZmZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQTRBOTU0QzBCNEVEQ0NCMDAyRDhDM0MgLyogU2hhcmVkQnVmZmVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaGFyZWRCdWZmZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUE0QTk1NTEwQjRFRENGRjAwMkQ4QzNDIC8qIFNoYXJlZEJ1ZmZl
ckNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNoYXJl
ZEJ1ZmZlckNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTREQTQxRjFD
REQzQTgzMDBGNDQ3M0MgLyogTGlua0ljb25Db2xsZWN0b3IuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gTGlua0ljb25Db2xsZWN0b3IuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQTREQTQyMDFDREQzQTgzMDBGNDQ3M0MgLyogTGlua0ljb25Db2xs
ZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlua0ljb25Db2xsZWN0
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1NjlDQzYwRDdFMkI4MjAwN0Mz
OTgzIC8qIGNfY2xhc3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Y19jbGFzcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0M3MEQ3RTJC
ODIwMDdDMzk4MyAvKiBjX2NsYXNzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IGNfY2xhc3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1NjlDQzgwRDdFMkI4
MjAwN0MzOTgzIC8qIGNfaW5zdGFuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gY19pbnN0YW5jZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
NTY5Q0M5MEQ3RTJCODIwMDdDMzk4MyAvKiBjX2luc3RhbmNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IGNfaW5zdGFuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUE1NjlDQ0EwRDdFMkI4MjAwN0MzOTgzIC8qIGNfcnVudGltZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBjX3J1bnRpbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQTU2OUNDQjBEN0UyQjgyMDA3QzM5ODMgLyogY19ydW50aW1lLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IGNfcnVudGltZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQTU2OUNDQzBEN0UyQjgyMDA3QzM5ODMgLyogY191dGlsaXR5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IGNfdXRpbGl0eS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0NEMEQ3RTJCODIwMDdDMzk4MyAvKiBj
X3V0aWxpdHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gY191dGlsaXR5Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0RBMEQ3RTJCODIwMDdDMzk4MyAv
KiBOUF9qc29iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBO
UF9qc29iamVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0RCMEQ3
RTJCODIwMDdDMzk4MyAvKiBOUF9qc29iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBOUF9qc29iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2
OUNERDBEN0UyQjgyMDA3QzM5ODMgLyogbnBydW50aW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IG5wcnVudGltZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBNTY5Q0RGMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1bnRpbWVfaW1wbC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWVfaW1wbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNFMDBEN0UyQjgyMDA3QzM5ODMgLyogbnBydW50aW1l
X2ludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IG5wcnVudGltZV9p
bnRlcm5hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNFMTBEN0UyQjgy
MDA3QzM5ODMgLyogbnBydW50aW1lX3ByaXYuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gbnBydW50aW1lX3ByaXYuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1
NjlDRTMwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfY2xhc3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gb2JqY19jbGFzcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQTU2OUNFNDBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19jbGFzcy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IG9iamNfY2xhc3MubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFBNTY5Q0U1MEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjX2hlYWRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBvYmpjX2hlYWRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNFNjBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19p
bnN0YW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBvYmpjX2luc3RhbmNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0U3MEQ3RTJCODIwMDdDMzk4
MyAvKiBvYmpjX2luc3RhbmNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gb2JqY19pbnN0YW5jZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1
NjlDRTgwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBvYmpjX3J1bnRpbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUE1NjlDRTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IG9iamNfcnVudGltZS5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1NjlDRUEwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNf
dXRpbGl0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBvYmpjX3V0aWxpdHku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1NjlDRUIwRDdFMkI4MjAwN0MzOTgz
IC8qIG9iamNfdXRpbGl0eS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IG9iamNfdXRpbGl0eS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1NjlD
RUMwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVjdFByb3RvY29sLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlNjcmlwdE9iamVjdFByb3RvY29sLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0VGMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50
aW1lX2FycmF5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHJ1bnRp
bWVfYXJyYXkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNGMDBEN0Uy
QjgyMDA3QzM5ODMgLyogcnVudGltZV9hcnJheS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBydW50aW1lX2FycmF5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
NTY5Q0YxMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1lX21ldGhvZC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBydW50aW1lX21ldGhvZC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBNTY5Q0YyMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1lX21l
dGhvZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBydW50aW1lX21ldGhvZC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNGMzBEN0UyQjgyMDA3QzM5ODMg
LyogcnVudGltZV9vYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gcnVudGltZV9vYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2
OUNGNDBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9vYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gcnVudGltZV9vYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUE1NjlDRjUwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfcm9vdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBydW50aW1lX3Jvb3QuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNGNjBEN0UyQjgyMDA3QzM5ODMgLyogcnVu
dGltZV9yb290LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHJ1bnRpbWVfcm9v
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU4RTg2MjFEMTlEM0JGMDBDMEVB
NzMgLyogUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBheW1lbnRDb29yZGluYXRvckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTU4RTg2MzFEMTlENERGMDBDMEVBNzMgLyogQXBwbGVQYXlTZXNzaW9uUGF5
bWVudFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXBw
bGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQTU4RTg2NDFEMTlENERGMDBDMEVBNzMgLyogQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJl
cXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlTZXNzaW9u
UGF5bWVudFJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE1OEU4NkIx
RDE5RTQyRDAwQzBFQTczIC8qIFBheW1lbnRDb29yZGluYXRvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXltZW50Q29vcmRpbmF0b3IuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQTU4RTg2QzFEMTlFNDJEMDBDMEVBNzMgLyogUGF5bWVudENv
b3JkaW5hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRDb29y
ZGluYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTcxRDU3OTBGMzM4MTkw
MDBGOUNFNEUgLyogSWRlbnRpZmllclJlcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBJZGVudGlmaWVyUmVwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUE3MUQ1N0EwRjMzODE5MDAwRjlDRTRFIC8qIElkZW50aWZpZXJSZXAuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSWRlbnRpZmllclJlcC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQTc1MEQzQzBBOTBERTM1MDAwRkYyMTUgLyogVHJlZVdhbGtlci5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVHJlZVdhbGtlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBNzUwRDVBMEE5MERFRTEwMDBGRjIxNSAvKiBKU1RyZWVXYWxrZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJlZVdhbGtlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNzUwRDVCMEE5MERFRTEwMDBGRjIxNSAv
KiBKU1RyZWVXYWxrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVHJl
ZVdhbGtlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTc1MEQ4NzBBOTBFMzk0
MDAwRkYyMTUgLyogTm9kZUl0ZXJhdG9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOb2Rl
SXRlcmF0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTc1MEQ4QjBBOTBF
NTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTTm9kZUl0ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUE3NTBEOEMwQTkwRTUyMTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU05vZGVJdGVyYXRvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQTc1MEREMzBBOTBFNzI5MDAwRkYyMTUgLyogSlNOb2Rl
SXRlcmF0b3JDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNOb2RlSXRlcmF0b3JDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QTc2MkM2QjBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV2YWx1YXRvci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNYUGF0aEV2YWx1YXRvci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNzYyQzZDMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQ
YXRoRXZhbHVhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1hQYXRo
RXZhbHVhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNzYyQzZEMEEwNzRG
MjYwMDk4OUY1QiAvKiBKU1hQYXRoRXhwcmVzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNYUGF0aEV4cHJlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQTc2MkM2RTBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV4cHJlc3Np
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWFBhdGhFeHByZXNzaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNzYyQzZGMEEwNzRGMjYwMDk4OUY1
QiAvKiBKU1hQYXRoTlNSZXNvbHZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNYUGF0aE5TUmVzb2x2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQTc2MkM3MDBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aE5TUmVzb2x2ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWFBhdGhOU1Jlc29sdmVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBNzYyQzcxMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQ
YXRoUmVzdWx0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1hQ
YXRoUmVzdWx0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE3NjJDNzIwQTA3
NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhSZXN1bHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTWFBhdGhSZXN1bHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUE3RTNDMjgxNzEwOTk3MzAwMzY3OTM1IC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVhZGFibGVMb2FkZXJDbGll
bnRXcmFwcGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBN0ZBNjE4MEREQTNC
M0EwMDI4RjhBNSAvKiBOZXR3b3JrU3RhdGVOb3RpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBOZXR3b3JrU3RhdGVOb3RpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTdGQTYxQTBEREEzQkJFMDAyOEY4QTUgLyogTmV0d29ya1N0YXRlTm90aWZp
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmV0d29ya1N0YXRl
Tm90aWZpZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTdGQTY0NzBEREEz
Q0JBMDAyOEY4QTUgLyogTmV0d29ya1N0YXRlTm90aWZpZXJNYWMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmV0d29ya1N0YXRlTm90aWZpZXJNYWMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjE3RDBBMUIxODM2MDBEOEM4N0MgLyogSFRN
TEh0bWxFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MSHRtbEVsZW1lbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjE4RDBBMUIxOEEyMDBEOEM4
N0MgLyogSlNIVE1MSHRtbEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSFRNTEh0bWxFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUE4NUIxOEUwQTFCMThBMjAwRDhDODdDIC8qIEpTSFRNTEh0bWxFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxIdG1sRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjFDQjBBMUIyMkRDMDBEOEM4N0MgLyogSFRN
TE9MaXN0RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTE9MaXN0RWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBODVCMUQxMEExQjIzNUIwMEQ4
Qzg3QyAvKiBIVE1MRExpc3RFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
RExpc3RFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxRDUw
QTFCMjM2QzAwRDhDODdDIC8qIEhUTUxVTGlzdEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEhUTUxVTGlzdEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQTg1QjFEOTBBMUIyM0E0MDBEOEM4N0MgLyogSFRNTERpcmVjdG9yeUVsZW1lbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxEaXJlY3RvcnlFbGVtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxRTAwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERp
cmVjdG9yeUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSFRNTERpcmVjdG9yeUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQTg1QjFFMTBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRGlyZWN0b3J5RWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjFFMjBBMUIyNDA1MDBEOEM4N0Mg
LyogSlNIVE1MRExpc3RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0hUTUxETGlzdEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQTg1QjFFMzBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRExpc3RFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxETGlzdEVsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIxRTQwQTFCMjQwNTAwRDhDODdDIC8qIEpT
SFRNTE9MaXN0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNIVE1MT0xpc3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUE4NUIxRTUwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTE9MaXN0RWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MT0xpc3RFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBODVCMjBFMEExQjI1ODcwMEQ4Qzg3QyAvKiBKU0hUTUxV
TGlzdEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
SFRNTFVMaXN0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBODVC
MjBGMEExQjI1ODcwMEQ4Qzg3QyAvKiBKU0hUTUxVTGlzdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTFVMaXN0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQTg1QjJBRDBBMUIyQTZEMDBEOEM4N0MgLyogSFRNTERpdkVsZW1l
bnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxEaXZFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4NUIyQjQwQTFCMkFDNzAwRDhDODdDIC8qIEpTSFRN
TERpdkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
SFRNTERpdkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg1QjJC
NTBBMUIyQUM3MDBEOEM4N0MgLyogSlNIVE1MRGl2RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRGl2RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTg3NEFERTE5MDg1RTkxMDBCMDMxNzEgLyogV0FLVmlld0ludGVybmFsLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdBS1ZpZXdJbnRlcm5hbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg4QTkwMjE3NTUzQ0Q3MDAwQzc0RjkgLyogRmls
ZUljb25Mb2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmls
ZUljb25Mb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTg4QTkwMzE3
NTUzQ0Q3MDAwQzc0RjkgLyogRmlsZUljb25Mb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmlsZUljb25Mb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUE4QTY0MzcxRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQThBNjQzODFEMTlGQzUzMDBEMEUwMEYgLyogUGF5bWVudENvbnRhY3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudENvbnRhY3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUE4QTY0MzkxRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnRNZXRob2Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudE1ldGhvZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThBNjQzRDFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBw
bGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDNFMUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBh
eVBheW1lbnRBdXRob3JpemVkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXBwbGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFBOEE2NDNGMUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRBdXRo
b3JpemVkRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudEF1
dGhvcml6ZWRFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDQw
MUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudE1l
dGhvZFNlbGVjdGVkRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThB
NjQ0MjFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheVBheW1lbnRNZXRo
b2RTZWxlY3RlZEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDQz
MUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4QTY0NDQxRDE5RkNGQjAw
RDBFMDBGIC8qIEFwcGxlUGF5U2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBBcHBsZVBheVNlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQThBNjQ0NTFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlTZXNzaW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5U2Vzc2lvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQThBNjQ0NjFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlT
ZXNzaW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBl
ID0gdGV4dDsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9IEFwcGxlUGF5U2Vzc2lvbi5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDQ3MUQxOUZDRkIwMEQwRTAwRiAvKiBB
cHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RTZWxlY3RlZEV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4QTY0NDgxRDE5RkNGQjAwRDBF
MDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdDb250YWN0U2VsZWN0ZWRFdmVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4QTY0NDkxRDE5RkNGQjAwRDBF
MDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdDb250YWN0U2VsZWN0ZWRFdmVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RTZWxlY3RlZEV2ZW50LmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4QTY0NEIxRDE5RkNGQjAwRDBFMDBGIC8q
IEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4QTY0NEMxRDE5RkNGQjAwRDBF
MDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2ZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2ZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDREMUQxOUZDRkIwMEQwRTAw
RiAvKiBBcHBsZVBheVNoaXBwaW5nTWV0aG9kU2VsZWN0ZWRFdmVudC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThBNjQ0RTFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBw
bGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQThBNjQ0RjFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlW
YWxpZGF0ZU1lcmNoYW50RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUE4QTY0NTAxRDE5RkNGQjAwRDBFMDBGIC8qIEFwcGxlUGF5VmFsaWRhdGVNZXJjaGFu
dEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheVZhbGlkYXRlTWVyY2hh
bnRFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEE2NDY1MUQxOUZE
RkYwMEQwRTAwRiAvKiBQYXltZW50UmVxdWVzdFZhbGlkYXRvci5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBheW1lbnRSZXF1ZXN0VmFsaWRhdG9yLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThBNjQ2NjFEMTlGREZGMDBEMEUwMEYgLyogUGF5
bWVudFJlcXVlc3RWYWxpZGF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGF5bWVudFJlcXVlc3RWYWxpZGF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUE4QTY0NjkxRDE5RkY4NzAwRDBFMDBGIC8qIFBheW1lbnRDb2NvYS5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFBheW1lbnRDb2NvYS5tbTsgcGF0aCA9IE1vZHVs
ZXMvYXBwbGVwYXkvY29jb2EvUGF5bWVudENvY29hLm1tOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCTFBOEE2NDZBMUQxOUZGODcwMEQwRTAwRiAvKiBQYXltZW50Q29udGFjdENvY29h
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gUGF5bWVudENvbnRh
Y3RDb2NvYS5tbTsgcGF0aCA9IE1vZHVsZXMvYXBwbGVwYXkvY29jb2EvUGF5bWVudENvbnRhY3RD
b2NvYS5tbTsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQkxQThBNjQ2QjFEMTlGRjg3
MDBEMEUwMEYgLyogUGF5bWVudE1ldGhvZENvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gUGF5bWVudE1ldGhvZENvY29hLm1tOyBwYXRoID0gTW9kdWxlcy9h
cHBsZXBheS9jb2NvYS9QYXltZW50TWV0aG9kQ29jb2EubW07IHNvdXJjZVRyZWUgPSBTT1VSQ0Vf
Uk9PVDsgfTsKKwkJMUE4RjZCMDEwREI1MzAwNjAwMURCNzk0IC8qIFN1YnN0aXR1dGVSZXNvdXJj
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdWJzdGl0dXRlUmVzb3VyY2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4RjZCQjEwREI1NUNEQzAwMURCNzk0
IC8qIEFwcGxpY2F0aW9uQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQXBwbGljYXRpb25DYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFBOEY2QkIyMERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUE4RjZCQjMwREI1NUNEQzAwMURCNzk0IC8qIEFwcGxpY2F0aW9u
Q2FjaGVHcm91cC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBs
aWNhdGlvbkNhY2hlR3JvdXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThG
NkJCNDBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZUdyb3VwLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVHcm91cC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQThGNkJCNTBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBOEY2QkI2MERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25DYWNoZVJl
c291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEY2QkI3MERCNTVDREMw
MDFEQjc5NCAvKiBET01BcHBsaWNhdGlvbkNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IERPTUFwcGxpY2F0aW9uQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQThGNkJCODBEQjU1Q0RDMDAxREI3OTQgLyogRE9NQXBwbGljYXRpb25D
YWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01BcHBsaWNhdGlvbkNh
Y2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBOEY2QkI5MERCNTVDREMwMDFE
Qjc5NCAvKiBET01BcHBsaWNhdGlvbkNhY2hlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBE
T01BcHBsaWNhdGlvbkNhY2hlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4
RjZCQkEwREI1NUNEQzAwMURCNzk0IC8qIEFwcGxpY2F0aW9uQ2FjaGVNYW5pZmVzdFBhcnNlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsaWNhdGlvbkNhY2hl
TWFuaWZlc3RQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQThGNkJC
QjBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZU1hbmlmZXN0UGFyc2VyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVNYW5pZmVzdFBh
cnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTkyN0ZDRjE0MTZBMTVCMDAz
QTgzQzggLyogbnBhcGkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnBhcGku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4
IC8qIG5wcnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRp
bWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE5MjdGRDExNDE2QTE1QjAwM0E4
M0M4IC8qIG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBl
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0
QjMgLyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFB
QUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQUFBRERFMTE0REM4QzhGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZU5vZGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZU5vZGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUFBRERFMjE0REM4QzhGMDBBRjY0
QjMgLyogU2Nyb2xsaW5nVHJlZU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU2Nyb2xsaW5nVHJlZU5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFC
MzNEQTQxMjU1MUUzMjAwMjQ0NTdBIC8qIElPS2l0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1l
ID0gSU9LaXQuZnJhbWV3b3JrOyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSU9L
aXQuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gIjxhYnNvbHV0ZT4iOyB9OworCQkxQUI0MEVERjFC
RjQyNzFFMDBCQTgxQkUgLyogQ29udGV4dE1lbnUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ29udGV4dE1lbnUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQUI0MEVFMDFCRjQyNzFFMDBCQTgxQkUgLyogQ29udGV4dE1lbnVJdGVtLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRleHRNZW51SXRlbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjVFQkNGMTk0QTFEMTcwMDU5QUM3MCAvKiBT
aGFwZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXBl
VmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM0NzBBOEI5MkVD
MDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFhQYXRoRXZhbHVhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUFCN0ZDNDgwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUGF0aEV2YWx1YXRvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM0OTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFs
dWF0b3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUGF0aEV2YWx1YXRvci5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzRBMEE4QjkyRUMwMEQ5RDM3QiAvKiBY
UGF0aEV4cHJlc3Npb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFhQYXRoRXhwcmVzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdG
QzRCMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFhQYXRoRXhwcmVzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUI3RkM0QzBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFeHByZXNzaW9uLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gWFBhdGhFeHByZXNzaW9uLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNEQwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXhw
cmVzc2lvbk5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhQ
YXRoRXhwcmVzc2lvbk5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUI3
RkM0RTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFeHByZXNzaW9uTm9kZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFBhdGhFeHByZXNzaW9uTm9kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM0RjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhGdW5j
dGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhQYXRoRnVu
Y3Rpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNTAwQThCOTJF
QzAwRDlEMzdCIC8qIFhQYXRoRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBYUGF0aEZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QUI3RkM1MTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhHcmFtbWFyLnkgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS55YWNjOyBwYXRoID0gWFBhdGhHcmFtbWFyLnk7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFBQjdGQzU0MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aE5TUmVzb2x2ZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhQYXRoTlNSZXNvbHZlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzU1MEE4QjkyRUMwMEQ5RDM3
QiAvKiBYUGF0aE5TUmVzb2x2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFhQYXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM1
NjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhOU1Jlc29sdmVyLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gWFBhdGhOU1Jlc29sdmVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUFCN0ZDNTcwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoUGFyc2VyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYUGF0aFBhcnNlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzU4MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhcnNl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFBhdGhQYXJzZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNTkwQThCOTJFQzAwRDlEMzdCIC8qIFhQ
YXRoUGF0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhQ
YXRoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNUEwQThCOTJFQzAw
RDlEMzdCIC8qIFhQYXRoUGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
WFBhdGhQYXRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzVCMEE4Qjky
RUMwMEQ5RDM3QiAvKiBYUGF0aFByZWRpY2F0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gWFBhdGhQcmVkaWNhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQUI3RkM1QzBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhQcmVkaWNhdGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhQYXRoUHJlZGljYXRlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzVEMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFJl
c3VsdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhSZXN1
bHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM1RTBBOEI5MkVDMDBE
OUQzN0IgLyogWFBhdGhSZXN1bHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFhQYXRoUmVzdWx0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzVGMEE4
QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFJlc3VsdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFhQYXRoUmVzdWx0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNjAw
QThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoU3RlcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gWFBhdGhTdGVwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUFCN0ZDNjEwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoU3RlcC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gWFBhdGhTdGVwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBQjdGQzYyMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFV0aWwuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhQYXRoVXRpbC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzYzMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFV0aWwu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhQYXRoVXRpbC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQUI3RkM2NDBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhWYWx1
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzY1MEE4QjkyRUMwMEQ5
RDM3QiAvKiBYUGF0aFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBY
UGF0aFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQjdGQzY2MEE4Qjky
RUMwMEQ5RDM3QiAvKiBYUGF0aFZhcmlhYmxlUmVmZXJlbmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYUGF0aFZhcmlhYmxlUmVmZXJlbmNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFCN0ZDNjcwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRo
VmFyaWFibGVSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhQ
YXRoVmFyaWFibGVSZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFC
QTdGRkYxODk3MzQxMjAwRENFOUQ2IC8qIFZpc2l0ZWRMaW5rU3RvcmUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVmlzaXRlZExpbmtTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQUMyMjYwQTBEQjY5RjE5MDA4OUI2NjkgLyogSlNET01BcHBsaWNhdGlv
bkNhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NQXBw
bGljYXRpb25DYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQzIyNjBC
MERCNjlGMTkwMDg5QjY2OSAvKiBKU0RPTUFwcGxpY2F0aW9uQ2FjaGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01BcHBsaWNhdGlvbkNhY2hlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBQzJEODlDMUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50aWFs
aWFzaW5nU3RhdGVTYXZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb250
QW50aWFsaWFzaW5nU3RhdGVTYXZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QUM2OTU5MjE2MUExRTUzMDAzNzMyQ0IgLyogR3JhcGhpY3NMYXllckZhY3RvcnkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JhcGhpY3NMYXllckZhY3RvcnkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFDOTAwQkYxOTQzQUYzRDAwODYyNUI1IC8qIEhUVFBI
ZWFkZXJOYW1lcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBIVFRQSGVhZGVyTmFtZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBQzkwMEMwMTk0M0MwQTAwMDg2MjVCNSAvKiBIVFRQSGVhZGVyTmFtZXMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSFRUUEhlYWRlck5hbWVz
LmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSFRUUEhlYWRlck5hbWVzLmNwcDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJMUFDOTAwQzExOTQzQzBBMDAw
ODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1lcy5ncGVyZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBI
VFRQSGVhZGVyTmFtZXMuZ3BlcmY7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0hUVFBI
ZWFkZXJOYW1lcy5ncGVyZjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
MUFDOTAwQzIxOTQzQzBBMDAwODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1lcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBIVFRQSGVhZGVyTmFtZXMuaDsgcGF0aCA9IERlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSFRUUEhlYWRlck5hbWVzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCTFBQ0FERDc4MTg4MEQ5MUMwMEQ4QjcxRCAvKiBQcm9ncmVzc1RyYWNr
ZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHJvZ3Jlc3NUcmFj
a2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQ0IyQjIxMUE1NzMz
RjQwMDMzMzM5MiAvKiBEYXRhYmFzZVByb3ZpZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlUHJvdmlkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUNCMkIyMjFBNTczM0Y0MDAzMzMzOTIgLyogRGF0YWJhc2VQcm92aWRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZVByb3ZpZGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQ0U1M0REMEE4RDE4ODEwMDIyOTQ3RCAvKiBK
U0RPTVBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNE
T01QYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUNFNTNERTBBOEQx
ODgxMDAyMjk0N0QgLyogSlNET01QYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRE9NUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBQ0U1
M0UxMEE4RDE4RTcwMDIyOTQ3RCAvKiBET01QYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IERPTVBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBQ0U1M0UyMEE4RDE4RTcwMDIyOTQ3RCAvKiBET01QYXJzZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUNFNTNFMzBBOEQxOEU3MDAyMjk0N0QgLyogRE9NUGFyc2VyLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NUGFyc2VyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUFDRTUzRTQwQThEMThFNzAwMjI5NDdEIC8qIFhNTFNlcmlhbGl6ZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTFNlcmlhbGl6ZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUNFNTNFNTBBOEQxOEU3MDAyMjk0N0QgLyog
WE1MU2VyaWFsaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MU2Vy
aWFsaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUNFNTNFNjBBOEQxOEU3
MDAyMjk0N0QgLyogWE1MU2VyaWFsaXplci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFhN
TFNlcmlhbGl6ZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUNFNTNGNDBB
OEQxOTQ3MDAyMjk0N0QgLyogSlNYTUxTZXJpYWxpemVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1hNTFNlcmlhbGl6ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQUNFNTNGNTBBOEQxOTQ3MDAyMjk0N0QgLyogSlNYTUxTZXJpYWxpemVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1hNTFNlcmlhbGl6ZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFEOEY4MTkxMUNBQjlFOTAwRTkzRTU0IC8q
IFBsYXRmb3JtU3RyYXRlZ2llcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFEOEY4
MUExMUNBQjlFOTAwRTkzRTU0IC8qIFBsYXRmb3JtU3RyYXRlZ2llcy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQURBNEExQjFEMjJGMkMwMDA1QTlBMTUgLyogUGF5bWVu
dE1lcmNoYW50U2Vzc2lvbkNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gUGF5bWVudE1lcmNoYW50U2Vzc2lvbkNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQURGREZENjFFNzFEOERGMDA4RjVEMzQgLyogQXBwbGVQYXlFcnJvci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUVycm9yLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBREZERkQ3MUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBs
ZVBheUVycm9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheUVycm9yLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFERkRGRDgxRTcxRDhERjAwOEY1RDM0IC8q
IEFwcGxlUGF5UGF5bWVudEF1dGhvcml6YXRpb25SZXN1bHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQURGREZEOTFFNzFEOERGMDA4RjVEMzQgLyogQXBw
bGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFBREZERkRBMUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVBheW1l
bnRNZXRob2RVcGRhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQ
YXlQYXltZW50TWV0aG9kVXBkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
REZERkRCMUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudE1ldGhvZFVwZGF0ZS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBREZERkRDMUU3MUQ4REYwMDhGNUQzNCAv
KiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQURGREZERDFFNzFEOERGMDA4RjVEMzQgLyogQXBwbGVQYXlTaGlw
cGluZ0NvbnRhY3RVcGRhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5U2hp
cHBpbmdDb250YWN0VXBkYXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFE
RkRGREUxRTcxRDhERjAwOEY1RDM0IC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVw
ZGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQURGREZERjFFNzFEOERGMDA4
RjVEMzQgLyogQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFBREZERkUxMUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5RXJy
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheUVy
cm9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFERkRGRTIxRTcxRENBMDAw
OEY1RDM0IC8qIEpTQXBwbGVQYXlFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0FwcGxlUGF5RXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFE
RkRGRTMxRTcxRENBMDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJl
c3VsdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5
UGF5bWVudEF1dGhvcml6YXRpb25SZXN1bHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQURGREZFNDFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBsZVBheVBheW1lbnRBdXRob3Jp
emF0aW9uUmVzdWx0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQ
YXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQURGREZFNTFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBsZVBheVBheW1lbnRNZXRob2RV
cGRhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBh
eVBheW1lbnRNZXRob2RVcGRhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QURGREZFNjFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheVBheW1lbnRNZXRo
b2RVcGRhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFERkRGRTcxRTcxRENB
MDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdFVw
ZGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBREZERkU4MUU3MURDQTAw
MDhGNUQzNCAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0VXBkYXRlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFERkRGRTkxRTcxRENBMDAwOEY1RDM0IC8q
IEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQURGREZFQTFFNzFEQ0EwMDA4RjVEMzQgLyogSlNB
cHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQUUwMEQ1NzE4MkRBQzhEMDAwODdERDcgLyogS2V5ZWRDb2RpbmcuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gS2V5ZWRDb2RpbmcuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkE5RjAwQTFDREE1NzAwQjQyQjI1IC8qIEhUTUxBcmVh
RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxBcmVhRWxlbWVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBOUYyMEExQ0RBNTcwMEI0MkIyNSAv
KiBIVE1MQm9keUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MQm9keUVs
ZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQTlGMzBBMUNEQTU3
MDBCNDJCMjUgLyogSFRNTEJSRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhU
TUxCUkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQTlGNDBB
MUNEQTU3MDBCNDJCMjUgLyogSFRNTEZpZWxkU2V0RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEhUTUxGaWVsZFNldEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQUUyQTlGNTBBMUNEQTU3MDBCNDJCMjUgLyogSFRNTEZvbnRFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEZvbnRFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkE5RjgwQTFDREE1NzAwQjQyQjI1IC8qIEhUTUxIZWFkaW5n
RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxIZWFkaW5nRWxlbWVudC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBOUY5MEExQ0RBNTcwMEI0MkIy
NSAvKiBIVE1MSFJFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEhSRWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTBBMEExQ0RBQjMw
MEI0MkIyNSAvKiBKU0hUTUxBcmVhRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNIVE1MQXJlYUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUUyQUEwQjBBMUNEQUIzMDBCNDJCMjUgLyogSlNIVE1MQXJlYUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEFyZWFFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTBFMEExQ0RBQjMwMEI0MkIyNSAv
KiBKU0hUTUxCb2R5RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNIVE1MQm9keUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQUUyQUEwRjBBMUNEQUIzMDBCNDJCMjUgLyogSlNIVE1MQm9keUVsZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEJvZHlFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTEwMEExQ0RBQjMwMEI0MkIyNSAvKiBKU0hUTUxC
UkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TEJSRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTExMEEx
Q0RBQjMwMEI0MkIyNSAvKiBKU0hUTUxCUkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTSFRNTEJSRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQUUyQUExMjBBMUNEQUIzMDBCNDJCMjUgLyogSlNIVE1MRmllbGRTZXRFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxGaWVsZFNldEVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUExMzBBMUNEQUIz
MDBCNDJCMjUgLyogSlNIVE1MRmllbGRTZXRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0hUTUxGaWVsZFNldEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUFFMkFBMTQwQTFDREFCMzAwQjQyQjI1IC8qIEpTSFRNTEZvbnRFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxGb250RWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTE1MEExQ0RBQjMw
MEI0MkIyNSAvKiBKU0hUTUxGb250RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNIVE1MRm9udEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUFFMkFBMUEwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEhlYWRpbmdFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxIZWFkaW5nRWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTFCMEExQ0RBQjQwMEI0
MkIyNSAvKiBKU0hUTUxIZWFkaW5nRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNIVE1MSGVhZGluZ0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUFFMkFBMUMwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEhSRWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSFJFbGVtZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFBMUQwQTFDREFCNDAwQjQyQjI1IC8q
IEpTSFRNTEhSRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNI
VE1MSFJFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQTc5MEEx
Q0RDNjEwMEI0MkIyNSAvKiBIVE1MSW1hZ2VFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBIVE1MSW1hZ2VFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUFFMkFBOTMwQTFDREQyRDAwQjQyQjI1IC8qIEpTSFRNTEltYWdlRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSW1hZ2VFbGVtZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFBOTQwQTFDREQyRDAwQjQyQjI1IC8q
IEpTSFRNTEltYWdlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNIVE1MSW1hZ2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJB
QUJFMEExQ0REODMwMEI0MkIyNSAvKiBIVE1MTGFiZWxFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBIVE1MTGFiZWxFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUFFMkFBQ0MwQTFDREREQjAwQjQyQjI1IC8qIEhUTUxMZWdlbmRFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTGVnZW5kRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQUU2MEExQ0U1MkUwMEI0MkIyNSAvKiBIVE1MTElFbGVt
ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTElFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFBRjcwQTFDRTU4NjAwQjQyQjI1IC8qIEhUTUxN
YXBFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTWFwRWxlbWVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQjA3MEExQ0U1Q0YwMEI0MkIyNSAv
KiBIVE1MTW9kRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTE1vZEVsZW1l
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUIxNzBBMUNFNjNCMDBC
NDJCMjUgLyogSlNIVE1MTGFiZWxFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0hUTUxMYWJlbEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUUyQUIxODBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTGFiZWxFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxMYWJlbEVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFCMTkwQTFDRTYzQjAwQjQyQjI1
IC8qIEpTSFRNTExlZ2VuZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSFRNTExlZ2VuZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQUUyQUIxQTBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTGVnZW5kRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MTGVnZW5kRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUIxQjBBMUNFNjNCMDBCNDJCMjUg
LyogSlNIVE1MTElFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0hUTUxMSUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QUUyQUIxQzBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTElFbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxMSUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUFFMkFCMUQwQTFDRTYzQjAwQjQyQjI1IC8qIEpTSFRNTE1hcEVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTE1hcEVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUIxRTBBMUNFNjNC
MDBCNDJCMjUgLyogSlNIVE1MTWFwRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNIVE1MTWFwRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxQUUyQUIxRjBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTW9kRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MTW9kRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQjIwMEExQ0U2M0IwMEI0MkIyNSAvKiBK
U0hUTUxNb2RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hU
TUxNb2RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQjYxMEEx
Q0U3Q0EwMEI0MkIyNSAvKiBIVE1MUGFyYWdyYXBoRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSFRNTFBhcmFncmFwaEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQUUyQUI3MjBBMUNFODE1MDBCNDJCMjUgLyogSFRNTFBhcmFtRWxlbWVudC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFBhcmFtRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFBRTJBQjg1MEExQ0U4NTAwMEI0MkIyNSAvKiBIVE1MUHJlRWxl
bWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFByZUVsZW1lbnQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUI5NjBBMUNFODhEMDBCNDJCMjUgLyogSFRN
TFNjcmlwdEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxTY3JpcHRFbGVt
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFCOUUwQTFDRTkwNTAw
QjQyQjI1IC8qIEpTSFRNTFBhcmFncmFwaEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTFBhcmFncmFwaEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQUUyQUI5RjBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFy
YWdyYXBoRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1M
UGFyYWdyYXBoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUJB
MDBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFyYW1FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxQYXJhbUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUJBMTBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1M
UGFyYW1FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxQ
YXJhbUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFCQTIwQTFD
RTkwNTAwQjQyQjI1IC8qIEpTSFRNTFByZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTFByZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQUUyQUJBMzBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUHJlRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MUHJlRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUUyQUJBNDBBMUNFOTA1MDBCNDJCMjUg
LyogSlNIVE1MU2NyaXB0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNIVE1MU2NyaXB0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBRTJBQkE1MEExQ0U5MDUwMEI0MkIyNSAvKiBKU0hUTUxTY3JpcHRFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxTY3JpcHRFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBRTQzMEExRDI2OUUwMEI0MkIyNSAv
KiBIVE1MTWVudUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxNZW51RWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBRTU5MEExRDI2RjIw
MEI0MkIyNSAvKiBKU0hUTUxNZW51RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNIVE1MTWVudUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUUyQUU1QTBBMUQyNkYyMDBCNDJCMjUgLyogSlNIVE1MTWVudUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTE1lbnVFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTJBRUEzMEExRDI4RTgwMEI0MkIyNSAv
KiBIVE1MUXVvdGVFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MUXVvdGVF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFMkFFQzMwQTFEMjk3
QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MUXVvdGVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUFFMkFFQzQwQTFEMjk3QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MUXVvdGVFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTc5RDQwMTg4REI2MUYwMDIy
MzlDMiAvKiBVc2VyQ29udGVudENvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVXNlckNvbnRlbnRDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUFFNzlENDExODhEQjYxRjAwMjIzOUMyIC8qIFVzZXJDb250ZW50Q29u
dHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyQ29udGVudENv
bnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFODJGOEQwQ0FBRkE5
RDAwMjIzN0FFIC8qIEpTRGF0YWJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNEYXRhYmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFB
RTgyRjhFMENBQUZBOUQwMDIyMzdBRSAvKiBKU0RhdGFiYXNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRGF0YWJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUFFODJGRUEwQ0FCMDdFRTAwMjIzN0FFIC8qIEpTU1FMUmVzdWx0U2V0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1FMUmVzdWx0U2V0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFODJGRUIwQ0FCMDdFRTAwMjIzN0FFIC8qIEpTU1FM
UmVzdWx0U2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1FMUmVzdWx0
U2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2QTdBMUQxQTBBODAwMEI4
Njc2OCAvKiBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2QTdCMUQxQTBBODAwMEI4
Njc2OCAvKiBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUU5NkE3QzFEMUEwQTgwMDBCODY3NjggLyog
SlNBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXBwbGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2QTdEMUQxQTBBODAwMEI4
Njc2OCAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFNlbGVjdGVkRXZlbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2QTdFMUQxQTBBODAwMEI4
Njc2OCAvKiBKU0FwcGxlUGF5U2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0FwcGxlUGF5U2Vzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFBRTk2QTdGMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5U2Vzc2lvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxlUGF5U2Vzc2lvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUU5NkE4MDFEMUEwQTgwMDBCODY3NjggLyogSlNB
cHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZl
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUU5NkE4MTFEMUEwQTgwMDBC
ODY3NjggLyogSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVj
dGVkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFOTZBODIxRDFBMEE4
MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVNoaXBwaW5nTWV0
aG9kU2VsZWN0ZWRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2
QTgzMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlTaGlwcGlu
Z01ldGhvZFNlbGVjdGVkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFF
OTZBODQxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVZhbGlk
YXRlTWVyY2hhbnRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRTk2
QTg2MUQxQTBDRUIwMEI4Njc2OCAvKiBQYXltZW50QXV0aG9yaXphdGlvblN0YXR1cy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXltZW50QXV0aG9yaXphdGlvblN0YXR1cy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUU5NkE4NzFEMUEwQ0VCMDBCODY3Njgg
LyogUGF5bWVudE1lcmNoYW50U2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQYXltZW50TWVyY2hhbnRTZXNzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFBRUY0RTY2MTcwRTE2MDMwMEFCMjc5OSAvKiBDYWNoZWRGb250Q2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZEZvbnRDbGllbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFFRjRFNjgxNzBFMTc0ODAwQUIyNzk5IC8qIENhY2hlZFNW
R0RvY3VtZW50Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hl
ZFNWR0RvY3VtZW50Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRjMy
Njc3MEQ3OEI5NDQwMDY4RjBDNCAvKiBFZGl0b3JDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRWRpdG9yQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFBRjRDRUVCMThCQzNDMUIwMEJDMkQzNCAvKiBWaXNpdGVkTGlua1N0b3JlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFZpc2l0ZWRMaW5rU3RvcmUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUY1RTREMjFFNTY3MzVBMDA0QTFGMDEgLyog
UGFzdGVib2FyZFdyaXRlckRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUGFzdGVib2FyZFdyaXRlckRhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkxQUY1RTREMzFFNTY3MzVBMDA0QTFGMDEgLyogUGFzdGVib2FyZFdyaXRlckRhdGEuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFzdGVib2FyZFdyaXRlckRhdGEuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFGNUU0RDcxRTU2NzdBOTAwNEExRjAxIC8q
IERyYWdJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERyYWdJdGVtLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRjVFNEUwMUU1Nzc5QjEwMDRBMUYwMSAv
KiBQYXN0ZWJvYXJkV3JpdGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gUGFzdGVib2FyZFdyaXRlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUFGNUU0RTExRTU3NzlCMTAwNEExRjAxIC8qIFBhc3RlYm9hcmRXcml0ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFzdGVib2FyZFdyaXRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQUY2MkVFMzE0REEyMkE3MDA0MTU1NkMgLyogU2Nyb2xsaW5nQ29v
cmRpbmF0b3JNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBT
Y3JvbGxpbmdDb29yZGluYXRvck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUFGNjJFRTQxNERBMjJBNzAwNDE1NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFGNjJFRTUxNERBMjJBNzAwNDE1NTZD
IC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFBRjYyRjIwMTREQUZFNzkwMDQxNTU2QyAvKiBTY3JvbGxpbmdUaHJlYWQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVGhyZWFkLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFGNjJGMjExNERBRkU3OTAwNDE1NTZDIC8qIFNjcm9s
bGluZ1RocmVhZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdU
aHJlYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFGN0FGQzUxQTQ4QThCQzAw
QzhFNEU3IC8qIFNlY3VyaXR5T3JpZ2luUG9saWN5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFNlY3VyaXR5T3JpZ2luUG9saWN5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMUFGN0FGQzYxQTQ4QThCQzAwQzhFNEU3IC8qIFNlY3VyaXR5T3JpZ2lu
UG9saWN5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY3VyaXR5T3JpZ2lu
UG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRjg5QTQxMTUxOEZERUEw
MEU1NDdCNSAvKiBUaWxlZEJhY2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGlsZWRCYWNraW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRjhFMTE5
MTI1NjU5MjYwMDIzMEZGNyAvKiBQcm94eVNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQcm94eVNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QUY4RTEzMjEyNTY1QTQ0MDAyMzBGRjcgLyogUHJveHlTZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJveHlTZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkxQUY4RTEzMjEyNTY1QTQ0NDUyMzBGRjcgLyogRE5TLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEROUy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFBRjhFMUMxMTI1NjczRTAwMDIzMEZGNyAvKiBQcm94eVNlcnZlckNGTmV0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFByb3h5U2VydmVyQ0ZO
ZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUZFMTE5NzBDQkZGQ0M0MDAz
MDE3RkEgLyogSlNTUUxSZXN1bHRTZXRSb3dMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTU1FMUmVzdWx0U2V0Um93TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTFBRkUxMTk4MENCRkZDQzQwMDMwMTdGQSAvKiBKU1NRTFJlc3VsdFNl
dFJvd0xpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTUUxSZXN1bHRT
ZXRSb3dMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFBRkZDNDREMUQ1RTdF
QzcwMDI2N0E2NiAvKiBCbG9ja2xpc3RVcGRhdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEJsb2NrbGlzdFVwZGF0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUFGRkM0NEUxRDVFN0VDNzAwMjY3QTY2IC8qIEJsb2NrbGlzdFVwZGF0ZXIubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBCbG9ja2xpc3RVcGRhdGVyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUZGQzQ0RjFENUU3RUM3MDAyNjdBNjYgLyog
UGx1Z2luQmxvY2tsaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsdWdp
bkJsb2NrbGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQUZGQzQ1MDFENUU3
RUM3MDAyNjdBNjYgLyogUGx1Z2luQmxvY2tsaXN0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gUGx1Z2luQmxvY2tsaXN0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQUZGQzQ1MTFENUU3RUM3MDAyNjdBNjYgLyogV2ViR0xCbG9ja2xpc3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xCbG9ja2xpc3QuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUFGRkM0NTIxRDVFN0VDNzAwMjY3QTY2IC8qIFdlYkdM
QmxvY2tsaXN0Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2Vi
R0xCbG9ja2xpc3QubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFCMTI0RDhDMUQz
ODBCNzAwMEVDREZCMCAvKiBNZWRpYVNhbXBsZUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWVkaWFTYW1wbGVBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFCMTI0RDhFMUQzODBCQjYwMEVDREZCMCAvKiBNZWRpYVNhbXBsZUFWRk9iakMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBNZWRpYVNhbXBsZUFW
Rk9iakMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFCRTVCRkMxMUQ1MTU3MTUw
MDE2NjZEOSAvKiBNZWRpYUNvbnN0cmFpbnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IE1lZGlhQ29uc3RyYWludHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkxQzAxMDZGRTE5MjU5NERGMDA4QTQyMDEgLyogSW5saW5lVGV4dEJveFN0eWxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZVRleHRCb3hTdHls
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDMDEwNkZGMTkyNTk0REYwMDhB
NDIwMSAvKiBJbmxpbmVUZXh0Qm94U3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSW5saW5lVGV4dEJveFN0eWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFDMDkzOUU4MUExM0UxMjkwMEI3ODhFNSAvKiBDYWNoZWRTVkdGb250LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlZFNWR0ZvbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQzA5MzlFOTFBMTNFMTI5MDBCNzg4RTUgLyogQ2FjaGVkU1ZH
Rm9udC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRTVkdGb250Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDMDlEMDRCMUUzMUMzMjgwMDcyNUYxOCAv
KiBQQUwueGNvZGVwcm9qICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gIndyYXBwZXIucGItcHJvamVjdCI7IG5hbWUgPSBQQUwueGNvZGVwcm9qOyBwYXRo
ID0gUEFML1BBTC54Y29kZXByb2o7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDMEFB
MTZBMjE5NDBEQzcwMDg5NjgyOSAvKiBTdHlsZUNvbG9yU2NoZW1lLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQ29sb3JTY2hlbWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUMxMkFDMjgxRUU3NzhBRTAwNzlFMEEwIC8qIEZvbnRGYW1pbHlTcGVjaWZp
Y2F0aW9uQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udEZhbWlseVNwZWNpZmlj
YXRpb25Db3JlVGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDMTJBQzI5
MUVFNzc4QUUwMDc5RTBBMCAvKiBGb250RmFtaWx5U3BlY2lmaWNhdGlvbkNvcmVUZXh0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uQ29yZVRleHQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUMxMkFDMkMxRUU3Nzk5NTAwNzlFMEEwIC8qIEZvbnREZXNj
cmlwdGlvbkNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnREZXNjcmlwdGlvbkNvY29h
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUMxOERBNTYxODFBRjZBNTAwQzRF
RjIyIC8qIFRleHRQYWludGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFRleHRQYWludGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUMxOERB
NTcxODFBRjZBNTAwQzRFRjIyIC8qIFRleHRQYWludGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFRleHRQYWludGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFDMjFFNTdBMTgzRUQxRkYwMDFDMjg5RCAvKiBJT1N1cmZhY2VQb29sLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElPU3VyZmFjZVBvb2wuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxQzIxRTU3QjE4M0VEMUZGMDAxQzI4OUQgLyogSU9TdXJmYWNl
UG9vbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJT1N1cmZhY2VQb29sLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDMjRFRUExMUM3MjlCMzIwMDgwRjhGQyAv
KiBGb250RmFjZVNldC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRm9udEZhY2VTZXQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzI0RUVBMjFDNzI5Q0U0MDA4MEY4RkMg
LyogRm9udEZhY2VTZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Rm9udEZhY2VTZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzI0RUVBMzFD
NzI5Q0U0MDA4MEY4RkMgLyogRm9udEZhY2VTZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRm9udEZhY2VTZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUMy
NEVFQTYxQzcyQTdCNDAwODBGOEZDIC8qIEpTRm9udEZhY2VTZXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNGb250RmFjZVNldC5jcHA7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2VTZXQuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQkxQzI0RUVBNzFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFjZVNl
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU0ZvbnRGYWNlU2V0Lmg7IHBh
dGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRm9udEZhY2VTZXQuaDsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJMUMyNjQ5NzkwRDdFMjQ4QTAwQkQxMEYyIC8qIERv
Y3VtZW50TG9hZGVyTWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERvY3VtZW50TG9hZGVyTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUMz
MjQ5MTAxQzZENkEzQjAwN0VEQjMyIC8qIEZvbnRWYXJpYW50QnVpbGRlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250VmFyaWFudEJ1aWxkZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzM5NjlDRjFCNzQyMTFFMDAyQkNGQTcgLyogRm9u
dENhY2hlQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Rm9udENhY2hlQ29yZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzQz
REU2ODIyQUI0QjhBMDAxNTI3RDkgLyogTG9jYWxDdXJyZW50VHJhaXRDb2xsZWN0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsQ3VycmVudFRyYWl0Q29sbGVjdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzQzREU2QTIyQUI0QjhBMDAxNTI3
RDkgLyogTG9jYWxDdXJyZW50VHJhaXRDb2xsZWN0aW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gTG9jYWxDdXJyZW50VHJhaXRDb2xsZWN0aW9uLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzREMEREMTI0RDlGMERCMDAzRDc0OTggLyogR2x5
cGhCdWZmZXJNZW1iZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdseXBoQnVmZmVyTWVtYmVycy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzUwQzQ5NTIyQzg0RjI0MDBBNkU0QkUgLyog
V0hMU0xTdGFuZGFyZExpYnJhcnlGdW5jdGlvbk1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
SExTTFN0YW5kYXJkTGlicmFyeUZ1bmN0aW9uTWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUM2NjI2MEUxQzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnRGYWNlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMUM2NjI2MEYxQzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRGYWNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRGYWNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTFDNkZEOEFDMjUwQTI5NEQwMEQ2RTkyMCAvKiBGb250UGxhdGZv
cm1EYXRhQ29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udFBsYXRmb3JtRGF0YUNv
cmVUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM2RkQ4QUQyNTBBMkU1
MzAwRDZFOTIwIC8qIEdseXBoUGFnZUNvcmVUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEds
eXBoUGFnZUNvcmVUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUM2RkQ4
QUUyNTBBMzExNTAwRDZFOTIwIC8qIEZvbnRDYXNjYWRlQ29yZVRleHQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRm9udENhc2NhZGVDb3JlVGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFDNkZEOEFGMjUwQTMzQ0YwMEQ2RTkyMCAvKiBGb250Q29yZVRleHQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRm9udENvcmVUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUM2RkQ4QjAyNTBBMzVGMTAwRDZFOTIwIC8qIEZvbnRDb2NvYS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBGb250Q29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkx
QzgxQjk1NjBFOTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JDb250cm9sbGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDODFCOTU3MEU5NzMzMDgwMDI2NkUwNyAvKiBJbnNwZWN0
b3JDb250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElu
c3BlY3RvckNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzgx
Qjk1ODBFOTczMzA4MDAyNjZFMDcgLyogSW5zcGVjdG9yQ2xpZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQzg0QkU0MTI2RDM5MzlGMDAyRDYxRkMgLyogQ29tcG9zZWRDaGFyYWN0ZXJD
bHVzdGVyVGV4dEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbXBvc2VkQ2hhcmFjdGVyQ2x1
c3RlclRleHRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQzhEMjZE
MDIyQzA5Q0RFMDBEMTI1RjMgLyogbGliY29tcHJlc3Npb24udGJkICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gInNvdXJjZWNvZGUudGV4dC1iYXNlZC1k
eWxpYi1kZWZpbml0aW9uIjsgbmFtZSA9IGxpYmNvbXByZXNzaW9uLnRiZDsgcGF0aCA9IHVzci9s
aWIvbGliY29tcHJlc3Npb24udGJkOyBzb3VyY2VUcmVlID0gU0RLUk9PVDsgfTsKKwkJMUM5MDRE
RjkwQkE5RDJDODAwODFFOUQwIC8qIFZlcnNpb24ueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lnhj
Y29uZmlnOyBwYXRoID0gVmVyc2lvbi54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMUNBRjM0N0UwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJTY3JpcHRPYmplY3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNBRjM0N0YwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlw
dE9iamVjdC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlNj
cmlwdE9iamVjdC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNBRjM0ODAwQTZD
NDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdFByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViU2NyaXB0T2JqZWN0UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxQ0FGNTZEODI1MzAxNDU3MDAxN0I0NzIgLyogRGlzcGxheUxpc3RE
cmF3R2x5cGhzUmVjb3JkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUxpc3REcmF3R2x5cGhz
UmVjb3JkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNBRjU2REUyNTMwMjQ1
QTAwMTdCNDcyIC8qIERpc3BsYXlMaXN0RHJhd0dseXBoc1JlY29yZGVyQ29yZVRleHQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJDb3JlVGV4dC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDQjZCNEY4MjE3QjgzOTMwMDkzQjlD
RCAvKiBUZXh0RGVjb3JhdGlvblRoaWNrbmVzcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0RGVjb3Jh
dGlvblRoaWNrbmVzcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0I2QjRGQjIx
N0I4Mzk0MDA5M0I5Q0QgLyogVGV4dFVuZGVybGluZU9mZnNldC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
ZXh0VW5kZXJsaW5lT2Zmc2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDQ0RG
NUJCMTk5MDMzMjQwMEJDRUJBRCAvKiBTVkdUb09URkZvbnRDb252ZXJzaW9uLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1RvT1RGRm9udENvbnZlcnNpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0NERjVCQzE5OTAzMzI0MDBCQ0VCQUQg
LyogU1ZHVG9PVEZGb250Q29udmVyc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTVkdUb09URkZvbnRDb252ZXJzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFDREQ0NUU0MEJBOUM4NDYwMEY5MDE0NyAvKiBEZWJ1Z1JlbGVhc2UueGNjb25maWcgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gRGVidWdSZWxlYXNlLnhjY29uZmlnOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0RENDVFNTBCQTlDODQ2MDBGOTAxNDcgLyogV2Vi
Q29yZS54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBXZWJDb3JlLnhj
Y29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0RENDVFNjBCQTlDODQ2MDBG
OTAxNDcgLyogQmFzZS54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBC
YXNlLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0UzNDk3QTI2QjMz
QjdBMDA4MzA2QkQgLyogR1BVRGV2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdQVURldmljZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0UzNDk3QzI2QjMzQkFFMDA4MzA2QkQgLyog
R1BVRGV2aWNlTWV0YWwubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBHUFVEZXZpY2VNZXRhbC5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNFODg2M0UyNjEwNUE1RjAwMEM4MTZD
IC8qIEluTWVtb3J5RGlzcGxheUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5NZW1vcnlE
aXNwbGF5TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRTg4NjNGMjYx
MDVBNUYwMDBDODE2QyAvKiBJbk1lbW9yeURpc3BsYXlMaXN0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElu
TWVtb3J5RGlzcGxheUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNFOEQx
MjUyNjE4NUJEODAwRkMzQUVGIC8qIERpc3BsYXlMaXN0SXRlbUJ1ZmZlcklkZW50aWZpZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRGlzcGxheUxpc3RJdGVtQnVmZmVySWRlbnRpZmllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxQ0U4RDEyQjI2MTg2MTY0MDBGQzNBRUYgLyogRGlzcGxh
eUxpc3RJdGVyYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5TGlzdEl0ZXJhdG9y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUNFOEQxMkMyNjE4NjE2NDAwRkMz
QUVGIC8qIERpc3BsYXlMaXN0SXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUxpc3RJ
dGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQ0YwQkZENDIyOTg3MDY4
MDBFRDIwNzQgLyogVGV4dFNpemVBZGp1c3RtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRl
eHRTaXplQWRqdXN0bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFDRjE4
RjNDMjZCQjVBRjIwMDRCMTcyMiAvKiBMb2dJbml0aWFsaXphdGlvbi5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBMb2dJbml0aWFsaXphdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFDRkFFMzIyMEE2RDZBM0YwMDMyNTkzRCAvKiBsaWJvYmpjLmR5bGliICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gtby5k
eWxpYiI7IG5hbWUgPSBsaWJvYmpjLmR5bGliOyBwYXRoID0gL3Vzci9saWIvbGlib2JqYy5keWxp
Yjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKKwkJMUQwMDI2QTIyMzc0RDYyMzAwQ0E2
Q0RGIC8qIEpTUGljdHVyZUluUGljdHVyZVdpbmRvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1BpY3R1cmVJblBpY3R1cmVXaW5kb3cuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMUQwMDI2QTMyMzc0RDYyNDAwQ0E2Q0RGIC8qIEpTUGljdHVyZUluUGljdHVy
ZVdpbmRvdy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BpY3R1
cmVJblBpY3R1cmVXaW5kb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxRDAw
MjZBODIzNzRGOUQ5MDBDQTZDREYgLyogSlNFbnRlclBpY3R1cmVJblBpY3R1cmVFdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0VudGVyUGljdHVyZUluUGljdHVyZUV2
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFEMDAyNkE5MjM3NEY5RDkwMENB
NkNERiAvKiBKU0VudGVyUGljdHVyZUluUGljdHVyZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRW50ZXJQaWN0dXJlSW5QaWN0dXJlRXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxRDAwOEFBNTI2MjEwOEMwMDBFRTNBREUgLyog
TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBNZWRp
YVBsYXliYWNrVGFyZ2V0Q29udGV4dC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MUQyQzgyQjYyMzZBM0Y2QTAwNTVENkM1IC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFENDc2NThEMjVDQ0E3NzgwMDdBRjMxMiAvKiBJbWFnZURlY29kZXJJZGVu
dGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlRGVjb2RlcklkZW50aWZpZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMURBQjMxMTMyNTFENzI1QzAwRkM5NDg1IC8qIFZpZGVv
TGF5ZXJNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvTGF5ZXJNYW5hZ2VyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFEQjY2RDM3MjUzNjc4RUEwMEI2NzFCOSAvKiBBdWRp
b091dHB1dFVuaXRBZGFwdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvT3V0cHV0VW5pdEFkYXB0
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMURCNjZEMzgyNTM2NzhFQTAwQjY3
MUI5IC8qIEF1ZGlvT3V0cHV0VW5pdEFkYXB0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVk
aW9PdXRwdXRVbml0QWRhcHRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFE
QkMxQjU1MjM0N0IzRDIwMEI5MDFBRiAvKiBQaWN0dXJlSW5QaWN0dXJlT2JzZXJ2ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGljdHVyZUluUGljdHVyZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFEQzU1M0ZEMjExQkExMkEwMDRCNzgwRSAvKiBOYXZpZ2F0b3JTaGFyZS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yU2hhcmUuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxREM1NTNGRjIxMUJBODQxMDA0Qjc4MEUgLyogU2hhcmVEYXRh
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTaGFyZURhdGEuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkxREM1NTQwMDIxMUJBOEM4MDA0Qjc4MEUgLyogU2hhcmVEYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlRGF0YS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkxREQxMjdBQzI1NkUzQTg3MDBCMjI3RDcgLyogU291cmNlQnVm
ZmVyUHJpdmF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb3VyY2VCdWZmZXJQcml2YXRlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMURFRjA2Q0EyMzNDM0QwQjAwRUUyMjhE
IC8qIEVudGVyUGljdHVyZUluUGljdHVyZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEVudGVyUGljdHVyZUluUGljdHVyZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTFERUYwNkNCMjMzQzNEMTUwMEVFMjI4RCAvKiBFbnRlclBpY3R1cmVJblBp
Y3R1cmVFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFbnRl
clBpY3R1cmVJblBpY3R1cmVFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFERUYwNkNDMjMzQzNEMjAwMEVFMjI4RCAvKiBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGlj
dHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MVmlkZW9FbGVtZW50
UGljdHVyZUluUGljdHVyZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxREVGMDZD
RDIzM0MzRDJBMDBFRTIyOEQgLyogUGljdHVyZUluUGljdHVyZVdpbmRvdy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBQaWN0dXJlSW5QaWN0dXJlV2luZG93Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFERUYwNkNFMjMzQzNEMzEwMEVFMjI4RCAvKiBQaWN0dXJl
SW5QaWN0dXJlV2luZG93LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBpY3R1cmVJblBpY3R1cmVXaW5kb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkxREVGMDZDRjIzM0MzRDM4MDBFRTIyOEQgLyogSFRNTFZpZGVvRWxlbWVudCtQaWN0dXJlSW5Q
aWN0dXJlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiSFRNTFZpZGVvRWxlbWVudCtQaWN0
dXJlSW5QaWN0dXJlLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFERUYwNkQw
MjMzQzNENDEwMEVFMjI4RCAvKiBFbnRlclBpY3R1cmVJblBpY3R1cmVFdmVudC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gRW50ZXJQaWN0dXJlSW5QaWN0dXJlRXZlbnQuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxREVGMDZEMTIzM0MzRDRCMDBFRTIyOEQgLyogUGljdHVy
ZUluUGljdHVyZVdpbmRvdy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGljdHVyZUluUGlj
dHVyZVdpbmRvdy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFERUYwNkQyMjMz
QzNENTYwMEVFMjI4RCAvKiBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVmlkZW9FbGVtZW50UGljdHVy
ZUluUGljdHVyZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFERUYwNkRDMjMz
RDJFMUMwMEVFMjI4RCAvKiBEb2N1bWVudFBpY3R1cmVJblBpY3R1cmUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRQaWN0dXJlSW5QaWN0dXJlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMURFRjA2REQyMzNEMkUxQzAwRUUyMjhEIC8q
IERvY3VtZW50UGljdHVyZUluUGljdHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEb2N1bWVudFBpY3R1cmVJblBpY3R1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMURFRjA2REUyMzNEMkUxQzAwRUUyMjhEIC8qIERvY3VtZW50K1BpY3R1cmVJblBpY3R1
cmUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJEb2N1bWVudCtQaWN0dXJlSW5QaWN0dXJl
LmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFGMDIwQUVEMjY3ODBGQ0UwMDAw
ODA5QSAvKiBLZXlib2FyZFNjcm9sbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBLZXlib2FyZFNjcm9sbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxRjM2RUE5
QTFFMjFCQTE3MDA2MjFFMjUgLyogV2ViQmFja2dyb3VuZFRhc2tDb250cm9sbGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkJhY2tncm91bmRUYXNrQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxRjM2RUE5QjFFMjFCQTE3MDA2MjFFMjUg
LyogV2ViQmFja2dyb3VuZFRhc2tDb250cm9sbGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gV2ViQmFja2dyb3VuZFRhc2tDb250cm9sbGVyLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkxRjUzMDM5QTI2ODU0RTY2MDAyMzYzMDMgLyogS2V5Ym9h
cmRTY3JvbGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gS2V5Ym9hcmRTY3JvbGwuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxRjcyQkYwODE4N0ZENDI3MDAwOUJDQjMgLyogVGls
ZUNvbnRyb2xsZXJNZW1vcnlIYW5kbGVySU9TLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFRpbGVDb250cm9sbGVyTWVtb3J5SGFuZGxlcklPUy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFGNzJCRjA5MTg3RkQ0MjcwMDA5QkNCMyAvKiBUaWxlQ29u
dHJvbGxlck1lbW9yeUhhbmRsZXJJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGlsZUNvbnRyb2xsZXJNZW1vcnlIYW5kbGVySU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFGODc1NkIwMUUyMkJFRUYwMDQyQzQwRCAvKiBXZWJTUUxpdGVEYXRhYmFzZVRy
YWNrZXJDbGllbnQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBX
ZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXJDbGllbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTFGODc1NkIxMUUyMkJFRUYwMDQyQzQwRCAvKiBXZWJTUUxpdGVEYXRhYmFzZVRyYWNr
ZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU1FMaXRlRGF0
YWJhc2VUcmFja2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFGQUZC
RjE2MTVBNUZBNTIwMDA4M0EyMCAvKiBVVElVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVVRJVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTFGQUZCRjE3MTVBNUZBNTIwMDA4M0EyMCAvKiBVVElVdGlsaXRpZXMubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBVVElVdGlsaXRpZXMubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTFGQzQwRkI3MTY1NUM1OTEwMDQwRjI5RSAvKiBTdWJpbWFn
ZUNhY2hlV2l0aFRpbWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1Ymlt
YWdlQ2FjaGVXaXRoVGltZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUZDNDBG
QjgxNjU1QzU5MTAwNDBGMjlFIC8qIFN1YmltYWdlQ2FjaGVXaXRoVGltZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3ViaW1hZ2VDYWNoZVdpdGhUaW1lci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTFGRDk5MkY2MjZBQTI0RjgwMDg4RTU5NiAv
KiBLZXlib2FyZFNjcm9sbGluZ0FuaW1hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEtleWJvYXJkU2Nyb2xsaW5nQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMUZEOTkyRjkyNkFBMjU0RDAwODhFNTk2IC8qIEtleWJvYXJkU2Nyb2xsaW5nQW5p
bWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gS2V5Ym9hcmRT
Y3JvbGxpbmdBbmltYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTIwRDYy
OTI0MTI1MzY5MEIwMDA4MTU0MyAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjBENjI5MjUxMjUzNjkwQjAwMDgx
NTQzIC8qIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMjI1QTE2QjMwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2ZW50UmVnaW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkV2ZW50UmVnaW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTIyNUExNkI0MEQ1QzExRTkwMDA5MDI5NSAvKiBXZWJF
dmVudFJlZ2lvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdl
YkV2ZW50UmVnaW9uLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyMjhDMjg0NDEw
RDgyNTAwMDA5RDBEMEUgLyogU2NyaXB0V3JhcHBhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNjcmlwdFdyYXBwYWJsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyNDQyQkJGODExOTRDOUQzMDBENDk0NjkgLyogSGFzaENoYW5nZUV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhhc2hDaGFuZ2VFdmVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTI4RjEzQ0E5NTFFMDBEMjE5MTUgLyogSlNTVkdBbHRH
bHlwaERlZkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNTVkdBbHRHbHlwaERlZkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyNEQ5MTI5MDEzQ0E5NTFFMDBEMjE5MTUgLyogSlNTVkdBbHRHbHlwaERlZkVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBbHRHbHlwaERlZkVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjREOTEyOTMxM0NBOTU2MTAwRDIxOTE1
IC8qIEpTU1ZHQWx0R2x5cGhJdGVtRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1NWR0FsdEdseXBoSXRlbUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyNEQ5MTI5NDEzQ0E5NTYxMDBEMjE5MTUgLyogSlNTVkdBbHRHbHlw
aEl0ZW1FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQWx0
R2x5cGhJdGVtRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTI5
NzEzQ0E5NkRFMDBEMjE5MTUgLyogSlNTVkdHbHlwaFJlZkVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdHbHlwaFJlZkVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTI5OTEzQ0E5NzE0MDBEMjE5MTUgLyogSlNT
VkdHbHlwaFJlZkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
VkdHbHlwaFJlZkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjREOTEy
QUQxM0NBOUExRjAwRDIxOTE1IC8qIFNWR0FsdEdseXBoRGVmRWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbHRHbHlwaERlZkVsZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTJBRTEzQ0E5QTFGMDBEMjE5MTUgLyog
U1ZHQWx0R2x5cGhEZWZFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR0FsdEdseXBoRGVmRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
NEQ5MTJBRjEzQ0E5QTFGMDBEMjE5MTUgLyogU1ZHQWx0R2x5cGhEZWZFbGVtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbHRHbHlwaERlZkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTJCNDEzQ0E5QTY5MDBEMjE5MTUgLyogU1ZHQWx0R2x5
cGhJdGVtRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
VkdBbHRHbHlwaEl0ZW1FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MjREOTEyQjUxM0NBOUE2OTAwRDIxOTE1IC8qIFNWR0FsdEdseXBoSXRlbUVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQWx0R2x5cGhJdGVtRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNEQ5MTJCNjEzQ0E5QTY5MDBEMjE5MTUgLyog
U1ZHQWx0R2x5cGhJdGVtRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHQWx0
R2x5cGhJdGVtRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI0RDkx
MkJBMTNDQTlBOTcwMEQyMTkxNSAvKiBTVkdHbHlwaFJlZkVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHR2x5cGhSZWZFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjREOTEyQkIxM0NBOUE5NzAwRDIxOTE1IC8qIFNWR0ds
eXBoUmVmRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdHbHlw
aFJlZkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjREOTEyQkMxM0NB
OUE5NzAwRDIxOTE1IC8qIFNWR0dseXBoUmVmRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gU1ZHR2x5cGhSZWZFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMjRGNTRFQUExMDFGRTkxNDAwMEFFNzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVIb3N0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVIb3N0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjRGNTRFQUIxMDFGRTkxNDAwMEFF
NzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVIb3N0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVIb3N0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTI1MjdDQzkxMTZCRjhCQTEwMDlEREFDMCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1V0
dGVyYW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1V0dGVyYW5j
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNTI3Q0M5MjE2QkY5MEI0MDA5RERB
QzAgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXNWb2ljZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0
Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTI1MjdDQzkzMTZCRjkyRUMwMDlEREFDMCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtU3BlZWNo
U3ludGhlc2lzVm9pY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNTI3Q0M5
NTE2QkY5NUREMDA5RERBQzAgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXNVdHRlcmFuY2UuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50
aGVzaXNVdHRlcmFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNTQyRjRE
ODExNjZDMjVBMDBFODlBODYgLyogVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNlckdlc3R1cmVJbmRpY2F0b3IuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNTQyRjREOTExNjZDMjVBMDBFODlBODYgLyogVXNl
ckdlc3R1cmVJbmRpY2F0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNl
ckdlc3R1cmVJbmRpY2F0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjYyMzkx
MzUxQTY0OENFRTAwNzI1MUEzIC8qIENvbnRlbnRFeHRlbnNpb25zRGVidWdnaW5nLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRFeHRlbnNpb25zRGVidWdnaW5nLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2MkVDNDE5MUQwNzhGM0QwMEJBNzhGQyAv
KiBFdmVudFRyYWNraW5nUmVnaW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBFdmVudFRyYWNraW5nUmVnaW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
NjJFQzQxQzFEMTEwQjFGMDBCQTc4RkMgLyogRXZlbnRUcmFja2luZ1JlZ2lvbnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRUcmFja2luZ1JlZ2lvbnMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNjU1NDEzNzE0ODk4MTFDMDAwREZDNUQg
LyogS2V5RXZlbnRDb2Rlc0lPUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBL
ZXlFdmVudENvZGVzSU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2NTU0MTM4
MTQ4OTgxMUMwMDBERkM1RCAvKiBLZXlFdmVudElPUy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IEtleUV2ZW50SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkyNjYwMUVCRDE0QjNCOUFEMDAxMkMwRkUgLyogUGxhdGZvcm1FdmVudEZhY3RvcnlJ
T1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1FdmVudEZhY3Rv
cnlJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjY2MDFFQkUxNEIzQjlBRDAw
MTJDMEZFIC8qIFBsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1FdmVudEZhY3RvcnlJT1MubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2NzcyNUY2MUE1QjNBRDkwMDNDMjRERCAvKiBERkEuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gREZBLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjY3NzI1RjcxQTVCM0FEOTAwM0MyNEREIC8qIERGQS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkEuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMjY3NzI1RjkxQTVCM0FEOTAwM0MyNEREIC8qIERGQU5vZGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gREZBTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyNjc3MjVGQTFBNUIzQUQ5MDAzQzI0REQgLyogTkZBVG9ERkEuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTkZBVG9ERkEuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyNjc3MjVGQjFBNUIzQUQ5MDAzQzI0REQgLyogTkZBVG9ERkEu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTkZBVG9ERkEuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjY3NzI2MDIxQTVERjZGMjAwM0MyNEREIC8qIFVSTEZpbHRl
clBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVUkxGaWx0
ZXJQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNjc3MjYwMzFBNURG
NkYyMDAzQzI0REQgLyogVVJMRmlsdGVyUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFVSTEZpbHRlclBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyNjkyMzk5MTE1MDVFMUFBMDA5RTU3RkMgLyogSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJWZXJzaW9uQ2hhbmdl
RXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNjkyMzk5MjE1MDVFMUFB
MDA5RTU3RkMgLyogSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMjY5Mzk3MjAxQTRBNDEyRjAwRTgzNDlEIC8qIE5GQU5vZGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTkZBTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyNjkzOTcyMzFBNEE1QjY0MDBFODM0OUQgLyogTkZBLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5GQS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyNjkzOTcyNTFBNEE1RkJEMDBFODM0OUQgLyogTkZBLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTI2QTUxN0ZCMUFCOTIyMzgwMDYzMzVERiAvKiBERkFNaW5pbWl6ZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gREZBTWluaW1pemVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZBNTE3RkMxQUI5MjIzODAwNjMzNURGIC8qIERGQU1pbmlt
aXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFNaW5pbWl6ZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZBODA3ODIxQjE4Rjk3NzAwRTIxOUJFIC8q
IERGQUNvbWJpbmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERG
QUNvbWJpbmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZBODA3ODMxQjE4
Rjk3NzAwRTIxOUJFIC8qIERGQUNvbWJpbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERGQUNvbWJpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2QUEw
Rjk5MThEMjk3M0QwMDQxOTM4MSAvKiBtYWtlU2VsZWN0b3JQc2V1ZG9FbGVtZW50c01hcC5weSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuc2Ny
aXB0LnB5dGhvbjsgcGF0aCA9IG1ha2VTZWxlY3RvclBzZXVkb0VsZW1lbnRzTWFwLnB5OyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNkFBMEY5QTE4RDI5NzNEMDA0MTkzODEgLyogU2Vs
ZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZWxlY3RvclBzZXVkb0VsZW1lbnRU
eXBlTWFwLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNkFBMEY5RDE4RDJBMThC
MDA0MTkzODEgLyogU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmNw
cDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlw
ZU1hcC5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTI2QUEwRjlG
MThEMkExQzEwMDQxOTM4MSAvKiBTZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmdwZXJmICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgbmFtZSA9IFNlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuZ3BlcmY7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1NlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVN
YXAuZ3BlcmY7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTI2Qjk5OThF
MTgwM0FFNzIwMEQwMTEyMSAvKiBSZWdpc3RlckFsbG9jYXRvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZWdpc3RlckFsbG9jYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyNkI5OTk5MDE4MDNCM0M5MDBEMDExMjEgLyogU3RhY2tBbGxvY2F0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RhY2tBbGxvY2F0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZCOTk5OTIxODAzQjlEOTAwRDAxMTIxIC8qIEZ1bmN0
aW9uQ2FsbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGdW5jdGlvbkNhbGwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZCOTk5OTQxODA0RDU0MjAwRDAxMTIx
IC8qIFNlbGVjdG9yQ29tcGlsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU2VsZWN0b3JDb21waWxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTI2Qjk5OTk1MTgwNEQ1NDIwMEQwMTEyMSAvKiBTZWxlY3RvckNvbXBpbGVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlbGVjdG9yQ29tcGlsZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjZENEU4NDUxQjQyNTM5RDAwRTAzM0EyIC8qIERGQU5vZGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gREZBTm9kZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2RTk0NEQ0MUFDNEIyREQwMDdCODVCNSAvKiBDb21i
aW5lZFVSTEZpbHRlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q29tYmluZWRVUkxGaWx0ZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjZF
OTQ0RDUxQUM0QjJERDAwN0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVycy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDb21iaW5lZFVSTEZpbHRlcnMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjZFOTQ0REMxQUM0QjRFQTAwN0I4NUI1IC8qIFRlcm0uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGVybS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyNkU5OEEwRjEzMEE5RkNBMDA4RUI3QjIgLyogVGV4dENvZGVjQVNDSUlGYXN0
UGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0Q29kZWNBU0NJSUZh
c3RQYXRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2RUE4OUE2MUI0RjJCNzUw
MDhDNUZEMiAvKiBIYXNoYWJsZUFjdGlvbkxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSGFzaGFibGVBY3Rpb25MaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTI2RjBDODk1MUEyRTcyNEIwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uUGFyc2VyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRlbnRFeHRlbnNpb25Q
YXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyNkYwQzg5NjFBMkU3MjRC
MDAyNzk0RjggLyogQ29udGVudEV4dGVuc2lvblBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDb250ZW50RXh0ZW5zaW9uUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTI2RjBDODk5MUEyRUMxMTAwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9u
UnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50RXh0
ZW5zaW9uUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2RjBDODlBMUEy
RUMxMTAwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uUnVsZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDb250ZW50RXh0ZW5zaW9uUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyNkYwQzg5RDFBMkVDM0JFMDAyNzk0RjggLyogQ29udGVudEV4dGVuc2lv
bnNCYWNrZW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRl
bnRFeHRlbnNpb25zQmFja2VuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2
RjBDODlFMUEyRUMzQkUwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uc0JhY2tlbmQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudEV4dGVuc2lvbnNCYWNrZW5kLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2Rjc1NkFFMUIzQjY1QUMwMDA1REQ3OSAv
KiBNdXRhYmxlUmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTXV0YWJs
ZVJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2Rjc1NkFGMUIzQjY1QUMw
MDA1REQ3OSAvKiBNdXRhYmxlUmFuZ2VMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE11dGFibGVSYW5nZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MjZGNzU2QjIxQjNCNjZGNzAwMDVERDc5IC8qIEltbXV0YWJsZU5GQS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbW11dGFibGVORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMjZGNzU2QjQxQjNCNjhGMjAwMDVERDc5IC8qIEltbXV0YWJsZU5GQU5vZGVCdWls
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltbXV0YWJsZU5GQU5vZGVC
dWlsZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI2RjlBODM2MThBMDQ2QUMw
MEFFQjg4QSAvKiBWaWV3cG9ydENvbmZpZ3VyYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVmlld3BvcnRDb25maWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjZGOUE4MzcxOEEwNDZBQzAwQUVCODhBIC8qIFZpZXdwb3J0Q29u
ZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBWaWV3cG9ydENv
bmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjdFM0M4MDYyNTdG
NUU2RTAwQzk4NkFCIC8qIEFOR0xFSGVhZGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBTkdMRUhlYWRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjg1
MzhFRUQyMDIyMUZBNjAwRDE5MDlBIC8qIEhlYWRlckZpZWxkVG9rZW5pemVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhlYWRlckZpZWxkVG9rZW5pemVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjg1MzhFRUUyMDIyMUZBNjAwRDE5MDlBIC8q
IEhlYWRlckZpZWxkVG9rZW5pemVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEhlYWRlckZpZWxkVG9rZW5pemVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI4
NkU0RENCMjAyMTA0ODgwMDMxNTIzOCAvKiBTZXJ2ZXJUaW1pbmcuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmVyVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMjg2RTREQ0MyMDIxMDQ4ODAwMzE1MjM4IC8qIFNlcnZlclRpbWluZy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2ZXJUaW1pbmcuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjhEQjlCQzUyMDIwRUEwNDAwRTU0QTA3IC8qIFBlcmZv
cm1hbmNlU2VydmVyVGltaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFBlcmZvcm1hbmNlU2VydmVyVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMjhEQjlCQzYyMDIwRUEwNDAwRTU0QTA3IC8qIFBlcmZvcm1hbmNlU2VydmVyVGltaW5n
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlU2VydmVyVGlt
aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI4REI5QkM3MjAyMEVBMDQwMEU1
NEEwNyAvKiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUGVyZm9ybWFuY2VTZXJ2ZXJUaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyOTE0RTMwNTFDQUI1QTQ0MDA0OTk2NkYgLyogQWNjZXNzaWJpbGl0eUF0dGFjaG1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eUF0
dGFjaG1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTE0RTMwNjFDQUI1
QTQ0MDA0OTk2NkYgLyogQWNjZXNzaWJpbGl0eUF0dGFjaG1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eUF0dGFjaG1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjkzNkJGNUEyMUQ2OTk5RTAwNEE4RkM5IC8qIEFjY2Vzc2liaWxp
dHlPYmplY3RJbnRlcmZhY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eU9iamVjdElu
dGVyZmFjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTNFQUUxRTEzNTZCMkZF
MDA2N0FDRjkgLyogUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyOTQ4OUZDNTEyQzAwRjAzMDBEODNGMEYgLyogQWNjZXNzaWJpbGl0
eVNjcm9sbFZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJp
bGl0eVNjcm9sbFZpZXcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk0OTg2ODEx
OTUzNDE5NDAwNzJEMkJEIC8qIFRleHRVbmRvSW5zZXJ0aW9uTWFya3VwTWFjLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVGV4dFVuZG9JbnNlcnRpb25NYXJrdXBN
YWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5NEJEQUU2MjFGRjU4MkEwMDUx
MDc3QiAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0QmFzZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlPYmplY3RCYXNlLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyOTdCRTNEOTE2QzA0M0Q4MDAzMzE2QkQgLyogUGxhdGZvcm1T
cGVlY2hTeW50aGVzaXplci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMjk4MUFCQzQxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlNYXRoTUxFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlNYXRoTUxFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBOUQxMzE4MjJFQzAwRDEyRjJB
IC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nlc3Np
YmlsaXR5QVJJQUdyaWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTgxQ0E5
RTEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkQ2VsbC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBOUYxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxp
dHlBUklBR3JpZFJvdy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nlc3NpYmlsaXR5QVJJQUdy
aWRSb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTgxQ0FBMDEzMTgyMkVD
MDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eUltYWdlTWFwTGluay5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBBY2Nlc3NpYmlsaXR5SW1hZ2VNYXBMaW5rLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMjk4MUNBQTExMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlMaXN0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlMaXN0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBQTIxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxp
dHlMaXN0Qm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlMaXN0Qm94LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBQTMxMzE4MjJFQzAwRDEyRjJB
IC8qIEFjY2Vzc2liaWxpdHlMaXN0Qm94T3B0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFj
Y2Vzc2liaWxpdHlMaXN0Qm94T3B0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMjk4MUNBQTUxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlPYmplY3QuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eU9iamVjdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTI5ODFDQUE2MTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5
UmVuZGVyT2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTgxQ0FBNzEzMTgyMkVD
MDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eVNjcm9sbGJhci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBBY2Nlc3NpYmlsaXR5U2Nyb2xsYmFyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMjk4MUNBQTgxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBQTkxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vz
c2liaWxpdHlTbGlkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVNsaWRl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5ODFDQUFBMTMxODIyRUMwMEQx
MkYyQSAvKiBBY2Nlc3NpYmlsaXR5VGFibGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNz
aWJpbGl0eVRhYmxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBQUIx
MzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlUYWJsZUNlbGwuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQWNjZXNzaWJpbGl0eVRhYmxlQ2VsbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTI5ODFDQUFDMTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5VGFibGVD
b2x1bW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVRhYmxlQ29sdW1uLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjk4MUNBQUQxMzE4MjJFQzAwRDEyRjJB
IC8qIEFjY2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBBY2Nlc3NpYmlsaXR5VGFibGVIZWFkZXJDb250YWluZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyOTgxQ0FBRTEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0
eVRhYmxlUm93LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5ODFDQUFGMTMxODIyRUMwMEQxMkYy
QSAvKiBBWE9iamVjdENhY2hlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFYT2JqZWN0Q2FjaGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOTg1NzA5MjE1Q0M1MzJEMDA2MzU1
Q0QgLyogQWNjZXNzaWJpbGl0eU5vZGVPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWNj
ZXNzaWJpbGl0eU5vZGVPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
OTg1NzA5MzE1Q0M1MzJEMDA2MzU1Q0QgLyogQWNjZXNzaWJpbGl0eU5vZGVPYmplY3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eU5vZGVPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMjlBODEyMEQwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJs
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5VGFibGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjlBODEyMEUwRkJCOUMxRDAwNTEwMjkz
IC8qIEFjY2Vzc2liaWxpdHlMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEFjY2Vzc2liaWxpdHlMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5QTgx
MjEwMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjlBODEyMTMwRkJCOUMxRDAwNTEwMjkzIC8q
IEFjY2Vzc2liaWxpdHlUYWJsZVJvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBY2Nlc3NpYmlsaXR5VGFibGVSb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MjlBODEyMTQwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZUNlbGwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eVRhYmxlQ2VsbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTIxNTBGQkI5QzFEMDA1MTAyOTMgLyog
QWNjZXNzaWJpbGl0eUFSSUFHcmlkUm93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEFjY2Vzc2liaWxpdHlBUklBR3JpZFJvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyOUE4MTIxNjBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlBUklBR3JpZC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTIxODBGQkI5QzFEMDA1MTAyOTMg
LyogQWNjZXNzaWJpbGl0eU9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBY2Nlc3NpYmlsaXR5T2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5
QTgxMjFBMEZCQjlDMUQwMDUxMDI5MyAvKiBBWE9iamVjdENhY2hlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFYT2JqZWN0Q2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMjlBODEyMUIwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTIxRDBGQkI5
QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUltYWdlTWFwTGluay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5SW1hZ2VNYXBMaW5rLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5QTgxMjIxMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3Np
YmlsaXR5VGFibGVIZWFkZXJDb250YWluZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQWNjZXNzaWJpbGl0eVRhYmxlSGVhZGVyQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTI5QTgxMjIzMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5
VGFibGVDb2x1bW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJp
bGl0eVRhYmxlQ29sdW1uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5QTgxMjI0
MEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5TGlzdEJveE9wdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5TGlzdEJveE9wdGlvbi5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTIyNTBGQkI5QzFEMDA1MTAyOTMgLyog
QWNjZXNzaWJpbGl0eUxpc3RCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QWNjZXNzaWJpbGl0eUxpc3RCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjlB
ODEyNDQwRkJCOUNBOTAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlPYmplY3RNYWMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBY2Nlc3NpYmlsaXR5T2JqZWN0TWFj
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTI0NTBGQkI5Q0E5MDA1MTAy
OTMgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQmFzZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTI0NjBGQkI5Q0E5MDA1MTAyOTMgLyog
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUE4MTI0NzBGQkI5Q0E5MDA1MTAyOTMg
LyogQVhPYmplY3RDYWNoZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEFYT2JqZWN0Q2FjaGVNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTI5QUNCMjExMTQzRTcxMjgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5TW9ja09iamVjdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5TW9ja09iamVjdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyOUFDQjIxMzE0M0U3NDk4MDA2QkNBNUYg
LyogQWNjZXNzaWJpbGl0eU1vY2tPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eU1vY2tPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyOUFFMjEyQjIxQUI5RUVCMDA4NjkyODMgLyogQVhJc29sYXRlZFRyZWUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQVhJc29sYXRlZFRyZWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMjlBRTIxMkMyMUFCOUVFQjAwODY5MjgzIC8qIEFYSXNvbGF0ZWRUcmVlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEFYSXNvbGF0ZWRUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMjlBRTIxMzMyMUFCQTQ4QTAwODY5MjgzIC8qIEFYSXNvbGF0ZWRPYmplY3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQVhJc29sYXRlZE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyOUFFMjEzNDIxQUJBNDhBMDA4NjkyODMgLyogQVhJc29sYXRlZE9iamVjdC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBWElzb2xhdGVkT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMjlEN0JDRjUxNDQ0QUY1ODAwNzA2MTlDIC8qIEFjY2Vzc2liaWxp
dHlTcGluQnV0dG9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFj
Y2Vzc2liaWxpdHlTcGluQnV0dG9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MjlEN0JDRjkxNDQ0QUY3RDAwNzA2MTlDIC8qIEFjY2Vzc2liaWxpdHlTcGluQnV0dG9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlTcGluQnV0dG9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTI5RTA0QTI3QkVEMkY4MUY5OEU5MDIyQiAv
KiBKU0JlZm9yZVVubG9hZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTQmVmb3JlVW5sb2FkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMjlF
NEQ4REYxNkIwOTQwRjAwQzg0NzA0IC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyOUU0RDhFMDE2QjA5NTk4MDBDODQ3MDQgLyogUGxhdGZvcm1TcGVlY2hT
eW50aGVzaXplck1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTI5RkFGNEI1MTk1QUIwODkwMEE1MjJEQyAvKiBUZXh0VW5kb0luc2VydGlvbk1hcmt1
cE1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0VW5kb0luc2VydGlv
bk1hcmt1cE1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQTQxMDdBMDI2Q0I2
NkVEMDAzQkY3OTcgLyogQ1NTS2V5d29yZFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENT
U0tleXdvcmRWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBNDEwN0Ey
MjZDQjY2RUQwMDNCRjc5NyAvKiBDU1NLZXl3b3JkVmFsdWUuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU0tleXdvcmRW
YWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBNDEwN0EzMjZDQjY2RUUw
MDNCRjc5NyAvKiBDU1NLZXl3b3JkVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTS2V5d29yZFZh
bHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBNjY0MzhFMjZBMDA2QUUwMEMx
NDdBMSAvKiBGb3JtRGF0YUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGb3JtRGF0YUV2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkE2NjQzOTAyNkEwMDZBRjAwQzE0N0ExIC8qIEZvcm1E
YXRhRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybURhdGFFdmVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyQTY2NDM5MTI2QTAwNkFGMDBDMTQ3QTEgLyogRm9ybURhdGFFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb3JtRGF0YUV2ZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkFCRkZGRUYyNkM1MzVCQzAwNDg4NzVCIC8qIENTU09NVmFyaWFi
bGVSZWZlcmVuY2VWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NPTVZhcmlhYmxlUmVm
ZXJlbmNlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUJGRkZGMTI2
QzUzNUJEMDA0ODg3NUIgLyogQ1NTT01WYXJpYWJsZVJlZmVyZW5jZVZhbHVlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENTU09NVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyQUJGRkZGMjI2QzUzNUJEMDA0ODg3NUIgLyogQ1NTT01WYXJpYWJsZVJlZmVy
ZW5jZVZhbHVlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBDU1NPTVZhcmlhYmxlUmVmZXJlbmNlVmFsdWUuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUNCNEQyNzI2REM0QUIyMDBCRUI3NTMgLyogQ1NT
TnVtZXJpY0ZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTTnVtZXJpY0ZhY3RvcnkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFDQjREMjkyNkRDNEFCMzAwQkVCNzUzIC8qIENT
U051bWVyaWNGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU051bWVyaWNGYWN0b3J5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFDQjREMkMyNkREQUI4RTAwQkVC
NzUzIC8qIERPTUNTU05hbWVzcGFjZStDU1NOdW1lcmljRmFjdG9yeS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkRPTUNT
U05hbWVzcGFjZStDU1NOdW1lcmljRmFjdG9yeS5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkyQUVGNkZCQzI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aFByb2R1Y3QuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IENTU01hdGhQcm9kdWN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFF
RjZGQkQyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhNYXguaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NT
TWF0aE1heC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZCRTI2RTcxNkVF
MDAzMjZEMDIgLyogQ1NTTWF0aFZhbHVlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NNYXRoVmFsdWUuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZCRjI2RTcxNkVFMDAzMjZEMDIgLyogQ1NT
TnVtZXJpY0FycmF5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU051bWVyaWNBcnJheS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZDMDI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0
aE1heC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQ1NTTWF0aE1heC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTJBRUY2RkMxMjZFNzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRoU3VtLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU01hdGhTdW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGQzIy
NkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhQcm9kdWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU01h
dGhQcm9kdWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBRUY2RkMzMjZFNzE2
RUUwMDMyNkQwMiAvKiBDU1NNYXRoU3VtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NNYXRoU3VtLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGQzQyNkU3MTZFRTAwMzI2RDAyIC8qIENTU051
bWVyaWNBcnJheS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ1NTTnVtZXJpY0FycmF5LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkFFRjZGQzUyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhPcGVyYXRv
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDU1NNYXRoT3BlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMkFFRjZGQzYyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhJbnZlcnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ1NTTWF0aEludmVydC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyQUVGNkZDNzI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aFZhbHVlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENTU01hdGhWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUVG
NkZDODI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aE1pbi5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ1NTTWF0aE1pbi5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBRUY2RkM5MjZFNzE2RUUwMDMyNkQw
MiAvKiBDU1NNYXRoSW52ZXJ0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NNYXRoSW52ZXJ0LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGQ0EyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhN
aW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTTWF0aE1pbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkyQUVGNkZDQjI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aE9wZXJhdG9yLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBDU1NNYXRoT3BlcmF0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
QUVGNkZDRDI2RTcxRjJEMDAzMjZEMDIgLyogQ1NTTnVtZXJpY0Jhc2VUeXBlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBD
U1NOdW1lcmljQmFzZVR5cGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUVG
NkZDRTI2RTcxRjJEMDAzMjZEMDIgLyogQ1NTTnVtZXJpY1R5cGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q1NTTnVtZXJpY1R5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGQ0Yy
NkU3MUYyRTAwMzI2RDAyIC8qIENTU051bWVyaWNCYXNlVHlwZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
U1NOdW1lcmljQmFzZVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZG
RDAyNkU3MUYyRTAwMzI2RDAyIC8qIENTU051bWVyaWNUeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NOdW1lcmlj
VHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJBRUY2RkQxMjZFN0VDOUIw
MDMyNkQwMiAvKiBDU1NNYXRoTmVnYXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NNYXRoTmVnYXRlLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGRDIyNkU3RUM5QjAwMzI2RDAyIC8qIENT
U01hdGhOZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTTWF0aE5lZ2F0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZERTI2RTgwMUI5MDAzMjZEMDIgLyogQ1NTTWF0aElu
dmVydC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NNYXRoSW52ZXJ0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGRTAyNkU4MDJFRjAwMzI2RDAyIC8qIENTU051bWVy
aWNBcnJheS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NOdW1lcmljQXJyYXkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZFMTI2RTgwMkYwMDAzMjZEMDIgLyogQ1NT
TWF0aE1heC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NNYXRoTWF4LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkFFRjZGRTIyNkU4MDJGMDAwMzI2RDAyIC8qIENTU01hdGhN
aW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTTWF0aE1pbi5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJBRUY2RkUzMjZFODAyRjAwMDMyNkQwMiAvKiBDU1NNYXRoTmVnYXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU01hdGhOZWdhdGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyQUVGNkZFNDI2RTgwMkYwMDAzMjZEMDIgLyogQ1NTTWF0aFByb2R1
Y3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTTWF0aFByb2R1Y3QuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyQUVGNkZFNTI2RTgwMkYxMDAzMjZEMDIgLyogQ1NTTWF0aFN1
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NNYXRoU3VtLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkFFRjZGRTYyNkU4MDJGMTAwMzI2RDAyIC8qIENTU01hdGhWYWx1ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NNYXRoVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyQjQyMzU5RjE1MjUwRjYwMDBEQkJDRDggLyogUmVuZGVyU1ZHRWxsaXBz
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTVkdFbGxp
cHNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkI0MjM1QTAxNTI1MEY2MDAw
REJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyU1ZHRWxsaXBzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
QkU4RTJDNjEyQTU4OUVDMDBGQUQ1NTAgLyogSFRNTE1ldGFDaGFyc2V0UGFyc2VyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxNZXRhQ2hhcnNldFBhcnNlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQkU4RTJDODEyQTU4QTAxMDBGQUQ1NTAgLyogSFRN
TE1ldGFDaGFyc2V0UGFyc2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhUTUxNZXRhQ2hhcnNldFBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTJDODU2NTMzMjRDMEY3M0MwMEEzNzY3MyAvKiBGaWx0ZXJFZmZlY3RSZW5kZXJlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGaWx0ZXJFZmZlY3RSZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyQzg1NjUzODI0QzEwQjBCMDBBMzc2NzMgLyogRmlsdGVyRWZmZWN0UmVuZGVy
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyQ0FBNEEzNzI0QkUxOEExMDA5REVFNzAgLyogRmls
dGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2UubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBGaWx0
ZXJFZmZlY3RSZW5kZXJlckNvcmVJbWFnZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkNBQTRBMzkyNEJFMThCNzAwOURFRTcwIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUlt
YWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRlckVmZmVjdFJlbmRlcmVyQ29yZUltYWdlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEMDYyMTQyMURBNjM5ODgwMEE3RkIyNiAvKiBX
ZWJLaXRNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXZWJLaXRNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJEMDYyMTQzMURBNjM5ODgwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtl
eU1lc3NhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRN
ZWRpYUtleU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDA2
MjE0NzFEQTYzQTc5MDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJLaXRNZWRpYUtleU5lZWRlZEV2
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQwNjIxNDgxREE2M0E3OTAw
QTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TmVlZGVkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRDA2MjE0OTFEQTYzQTc5MDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFL
ZXlzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYktpdE1lZGlh
S2V5cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEMDYyMTRBMURBNjNBNzkw
MEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViS2l0TWVkaWFLZXlzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJE
MDYyMTRCMURBNjNBNzkwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleVNlc3Npb24uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViS2l0TWVkaWFLZXlTZXNzaW9uLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQwNjIxNEMxREE2M0E3OTAwQTdGQjI2
IC8qIFdlYktpdE1lZGlhS2V5U2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJLaXRNZWRpYUtleVNlc3Npb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkQwNjIxNTMxREE2M0FCRjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJLaXRNZWRpYUtleU1lc3NhZ2VFdmVudC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEMDYyMTU0MURBNjNBQkYwMEE3RkIy
NiAvKiBXZWJLaXRNZWRpYUtleU5lZWRlZEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBXZWJLaXRNZWRpYUtleU5lZWRlZEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkQwNjIxNTUxREE2M0FCRjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5cy5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0TWVkaWFLZXlzLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkQwNjIxNTYxREE2M0FCRjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5
U2Vzc2lvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0TWVkaWFLZXlTZXNzaW9u
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQwQjRBQTkxOERBMUNDRDAwNDM0
REUxIC8qIElPU3VyZmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJT1N1
cmZhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQwQjRBQUExOERBMUNDRDAw
NDM0REUxIC8qIElPU3VyZmFjZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IElPU3VyZmFjZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQxOTMy
MTcxREE2NEUxOTAwQTU0QTA4IC8qIFdlYktpdE1lZGlhS2V5RXJyb3IuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0TWVkaWFLZXlFcnJvci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRDE5MzIxODFEQTY0RTE5MDBBNTRBMDggLyogV2ViS2l0TWVkaWFL
ZXlFcnJvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0TWVkaWFLZXlFcnJvci5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEMjkzODY5MjM1RjZCNjgwMEM3RjNC
MiAvKiBFeGNlcHRpb25EZXRhaWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEV4Y2VwdGlvbkRldGFpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQyOUVD
QzExOTJFQ0M4MzAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvckNsaWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNwbGF5UmVmcmVzaE1vbml0b3JD
bGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDI5RUNDMjE5MkVDQzgz
MDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9yQ2xpZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlSZWZyZXNoTW9uaXRvckNsaWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyRDI5RUNDMzE5MkVDQzgzMDA5ODRCNzggLyogRGlzcGxh
eVJlZnJlc2hNb25pdG9yTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEaXNwbGF5UmVmcmVzaE1vbml0b3JNYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkQyOUVDQzQxOTJFQ0M4MzAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNo
TW9uaXRvck1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxh
eVJlZnJlc2hNb25pdG9yTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
RDI5RUNDOTE5MkYxRjFEMDA5ODRCNzggLyogRGlzcGxheVJlZnJlc2hNb25pdG9ySU9TLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlSZWZyZXNoTW9uaXRvcklPUy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDJCRUIyRjIyMzRBMzM0MDA1NTQ0Q0Eg
LyogRWxlbWVudElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RWxlbWVudElkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQyRkMw
NTQxNDYwQ0Q2RjAwMjYzNjMzIC8qIENyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQyRkMwNTUxNDYwQ0Q2RjAwMjYzNjMz
IC8qIENyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENyb3NzZmFkZUdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTJEMkZDMDU2MTQ2MENENkYwMDI2MzYzMyAvKiBHcmFkaWVudEltYWdlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYWRpZW50SW1hZ2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDJGQzA1NzE0NjBDRDZGMDAyNjM2MzMgLyogR3Jh
ZGllbnRJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFkaWVudElt
YWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEM0EwRTM1MTNBN0Q3NjEwMEU4
NUFGMCAvKiBTVkdQYXJzaW5nRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU1ZHUGFyc2luZ0Vycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEM0VG
NDQ0MTkxNzkxNUMwMDAzNDE4NCAvKiBXZWJBY3Rpb25EaXNhYmxpbmdDQUxheWVyRGVsZWdhdGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQWN0aW9uRGlzYWJsaW5nQ0FM
YXllckRlbGVnYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEM0VGNDQ1MTkx
NzkxNUMwMDAzNDE4NCAvKiBXZWJBY3Rpb25EaXNhYmxpbmdDQUxheWVyRGVsZWdhdGUubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJBY3Rpb25EaXNhYmxpbmdD
QUxheWVyRGVsZWdhdGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEM0VGNDQ2
MTkxNzkxNUMwMDAzNDE4NCAvKiBXZWJDb3JlQ0FMYXllckV4dHJhcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlQ0FMYXllckV4dHJhcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRDNFRjQ0NzE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5
ZXJFeHRyYXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJD
b3JlQ0FMYXllckV4dHJhcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ0M0VC
MkQyMzQ3MkJDMzAwMkExRUQ0IC8qIFJlYWRhYmxlU3RyZWFtU291cmNlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtU291cmNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ0NkYwNEQxN0I5NkZCRDAwNTY0N0YwIC8qIElu
dFBvaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEludFBvaW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ0NkYwNEYxN0I5NkZEMjAwNTY0
N0YwIC8qIEludFNpemUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SW50U2l6ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENEY5NkYxMUExRUND
MjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFRleHRJbmRpY2F0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyRDRGOTZGMjFBMUVDQzI0MDA5OEJGODggLyogVGV4dEluZGljYXRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0SW5kaWNhdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJENEY5NkYzMUExRUNDMjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9y
V2luZG93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRJbmRpY2F0b3JX
aW5kb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ0Rjk2RjQxQTFFQ0MyNDAw
OThCRjg4IC8qIFRleHRJbmRpY2F0b3JXaW5kb3cubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBUZXh0SW5kaWNhdG9yV2luZG93Lm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyRDUwMDJGOTFCNTZENzk5MDAyMEFBRjcgLyogUGF0aFV0aWxpdGllcy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXRoVXRpbGl0aWVzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ1MDAyRkExQjU2RDc5OTAwMjBBQUY3
IC8qIFBhdGhVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF0
aFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDUwMzY2NzFCQ0RE
REM0MDBFMjBCQjMgLyogR2VzdHVyZUV2ZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBHZXN0dXJlRXZlbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkQ1MEE0QjUxQ0UxMEUwMDAwMTk4MDQ5IC8qIEF0dGFjaG1lbnRQbGFjZWhvbGRlci5w
bmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFn
ZS5wbmc7IHBhdGggPSBBdHRhY2htZW50UGxhY2Vob2xkZXIucG5nOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyRDUwQTRCNjFDRTEwRTAwMDAxOTgwNDkgLyogQXR0YWNobWVudFBsYWNl
aG9sZGVyQDJ4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9ICJBdHRhY2htZW50UGxhY2Vob2xkZXJAMngucG5nIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ1NjQ2QUYxQjhGODQ5MzAwM0M0OTk0IC8q
IERpY3Rpb25hcnlQb3B1cEluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGljdGlvbmFyeVBvcHVwSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDU2
ODAwMTIzODg4NjAzMDA3RUNCOEEgLyogYXV0by1oaWRlLWNvbnRyb2xsZXIuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAiYXV0by1oaWRlLWNvbnRyb2xsZXIuanMi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDVCQzQyNTE2Rjg4MkJFMDA3MDQ4RDAg
LyogU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJENUJDNDI2MTZGODgyQkUwMDcwNDhEMCAvKiBTZWN1cml0eVBvbGlj
eVZpb2xhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZWN1cml0eVBvbGlj
eVZpb2xhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ1QzlD
RkIxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFBhZ2VPdmVybGF5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMkQ1QzlDRkMxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VPdmVybGF5Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJENUM5Q0ZEMTlDN0I1MkUwMEIzQzVDMSAvKiBQYWdlT3ZlcmxheUNv
bnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZU92
ZXJsYXlDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ1QzlD
RkUxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5Q29udHJvbGxlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBQYWdlT3ZlcmxheUNvbnRyb2xsZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ2RTQ2ODIxN0Q2NjBGNTAwRUNGOEJCIC8qIFBERkRvY3Vt
ZW50SW1hZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
REZEb2N1bWVudEltYWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDZG
M0U4QTFDMUVDQjFDMDA2MURCRDQgLyogTW9ja1BhZ2VPdmVybGF5LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vY2tQYWdlT3ZlcmxheS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJENkYzRThCMUMxRUNCMUMwMDYxREJENCAvKiBNb2NrUGFnZU92
ZXJsYXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja1BhZ2VPdmVybGF5
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENkYzRThDMUMxRUNCMUMwMDYxREJE
NCAvKiBNb2NrUGFnZU92ZXJsYXkuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1vY2tQYWdl
T3ZlcmxheS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENkYzRTkyMUMxRjg1
NTUwMDYxREJENCAvKiBKU01vY2tQYWdlT3ZlcmxheS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU01vY2tQYWdlT3ZlcmxheS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTJENkYzRTkyMUMxRjg1NTUwMDYxREJENSAvKiBKU0ludGVybmFsc1NldExp
a2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbnRlcm5hbHNT
ZXRMaWtlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ2RjNFOTIxQzFGODU1
NTAwNjFEQkQ2IC8qIEpTSW50ZXJuYWxzTWFwTGlrZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0ludGVybmFsc01hcExpa2UuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyRDZGM0U5MjFDMUY4NTU1MDA2MURCRTQgLyogSlNNb2NrUlRDUnRwVHJh
bnNmb3JtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTW9ja1JU
Q1J0cFRyYW5zZm9ybS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENkYzRTkz
MUMxRjg1NTUwMDYxREJENCAvKiBKU01vY2tQYWdlT3ZlcmxheS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU01vY2tQYWdlT3ZlcmxheS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyRDcwQkExMjE4MDc0RERGMDAwMTkwOEEgLyogUGxhdGZvcm1DQUxheWVyQ29j
b2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1DQUxheWVyQ29j
b2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ3MEJBMTQxODA3NEY4NTAwMDE5
MDhBIC8qIFBsYXRmb3JtQ0FMYXllci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBQbGF0Zm9ybUNBTGF5ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRDc2QkI4MDE5NDU2MzI0MDBDRkQyOUEgLyogUnVuTG9vcE9ic2VydmVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1bkxvb3BPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRDc2QkI4MzE5NDU2RjgxMDBDRkQyOUEgLyogUnVuTG9vcE9ic2Vy
dmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJ1bkxvb3BPYnNl
cnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEN0RBMEVGMjQzNUVCMTcw
MEYwNDhEMSAvKiBXZWJWaWV3VmlzdWFsSWRlbnRpZmljYXRpb25PdmVybGF5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlZpZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJs
YXkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ3REEwRjEyNDM1RUIxODAwRjA0
OEQxIC8qIFdlYlZpZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJsYXkubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJWaWV3VmlzdWFsSWRlbnRpZmljYXRpb25P
dmVybGF5Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDdFRDBBOTFCQUU5OTE3
MDA0M0IzRTUgLyogVGltZXJFdmVudEJhc2VkTW9jay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBUaW1lckV2ZW50QmFzZWRNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTJEODI4N0Y0MTZFNEEwMzgwMDg2QkQwMCAvKiBIaXRUZXN0TG9jYXRpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSGl0VGVzdExvY2F0aW9uLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ4Mjg3RjUxNkU0QTAzODAwODZCRDAwIC8q
IEhpdFRlc3RMb2NhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIaXRU
ZXN0TG9jYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ4RDNCRUIyMzg0
N0FDOTAwNjU3MDc1IC8qIGdlc3R1cmUtcmVjb2duaXplci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0
aCA9ICJnZXN0dXJlLXJlY29nbml6ZXIuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRDhEM0JFQzIzODQ3QUM5MDA2NTcwNzUgLyogcGluY2guanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBh
dGggPSBwaW5jaC5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ4RDNCRUQyMzg0
N0FDOTAwNjU3MDc1IC8qIHRhcC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IHRhcC5qczsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ4RkVCREExNDNFM0VGNzAwNzI1MDJCIC8qIENT
U0Nyb3NzZmFkZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENTU0Nyb3NzZmFkZVZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ4
RkVCREIxNDNFM0VGNzAwNzI1MDJCIC8qIENTU0Nyb3NzZmFkZVZhbHVlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0Nyb3NzZmFkZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJEOTA2NjA0MEJFMTQxRDQwMDk1Njk5OCAvKiBSZW5kZXJMYXlvdXRT
dGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGF5
b3V0U3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDkwNjYwNTBCRTE0
MUQ0MDA5NTY5OTggLyogUmVuZGVyTGF5b3V0U3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlckxheW91dFN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTJEOTA2NjBDMDY2NUQ5MzcwMDZCNkYxQSAvKiBEYXRhVHJhbnNmZXJNYWMubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRo
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBE
YXRhVHJhbnNmZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsg
dXNlc1RhYnMgPSAwOyB9OworCQkyRDkzQUVFMTE5REY1NjQxMDAyQTg2QzMgLyogU2VydmljZXNP
dmVybGF5Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2
aWNlc092ZXJsYXlDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJE
OTNBRUUyMTlERjU2NDEwMDJBODZDMyAvKiBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2VydmljZXNPdmVybGF5Q29u
dHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY2RjUxREJGQjcx
RjAwN0E3RDk5IC8qIE1lZGlhS2V5TWVzc2FnZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBNZWRpYUtleU1lc3NhZ2VFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTJEOUJGNkY2MURCRkI3MUYwMDdBN0Q5OSAvKiBNZWRpYUtleXMuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IE1lZGlhS2V5cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTJEOUJGNkY3MURCRkI3MUYwMDdBN0Q5OSAvKiBNZWRpYUtleVNlc3Npb24uaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IE1lZGlhS2V5U2Vzc2lvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTJEOUJGNkY4MURCRkI3MUYwMDdBN0Q5OSAvKiBNZWRpYUtleVN0YXR1c01hcC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFLZXlTdGF0dXNNYXAuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjZGOTFEQkZCNzFGMDA3QTdEOTkgLyogTWVkaWFL
ZXlTeXN0ZW1BY2Nlc3MuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhS2V5U3lzdGVt
QWNjZXNzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY2RkExREJGQjcx
RjAwN0E3RDk5IC8qIE1lZGlhS2V5U3lzdGVtQ29uZmlndXJhdGlvbi5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY2RkIxREJGQjcxRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3lz
dGVtTWVkaWFDYXBhYmlsaXR5LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYUtleVN5
c3RlbU1lZGlhQ2FwYWJpbGl0eS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJE
OUJGNkZDMURCRkI3MUYwMDdBN0Q5OSAvKiBOYXZpZ2F0b3IrRU1FLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSAiTmF2aWdhdG9yK0VNRS5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkyRDlCRjcwMTFEQkZCQjI0MDA3QTdEOTkgLyogTWVkaWFFbmNyeXB0ZWRFdmVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUVuY3J5cHRlZEV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3MDIxREJGQkIyNDAwN0E3
RDk5IC8qIE1lZGlhRW5jcnlwdGVkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTWVkaWFFbmNyeXB0ZWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRDlCRjcwMzFEQkZCQjI0MDA3QTdEOTkgLyogTWVkaWFFbmNyeXB0ZWRFdmVudC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFFbmNyeXB0ZWRFdmVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzA0MURCRkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5
cHRlZEV2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUVu
Y3J5cHRlZEV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjcw
RjFEQkZEOENFMDA3QTdEOTkgLyogSlNNZWRpYUVuY3J5cHRlZEV2ZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFFbmNyeXB0ZWRFdmVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzExMURCRkQ5MTQwMDdBN0Q5OSAvKiBK
U01lZGlhRW5jcnlwdGVkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNNZWRpYUVuY3J5cHRlZEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJE
OUJGNzEzMURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5TWVzc2FnZUV2ZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFLZXlNZXNzYWdlRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjcxNDFEQkZEQUIxMDA3QTdE
OTkgLyogSlNNZWRpYUtleU1lc3NhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU01lZGlhS2V5TWVzc2FnZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTJEOUJGNzE1MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5cy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhS2V5cy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzE2MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlh
S2V5cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhS2V5cy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjcxNzFEQkZEQUIxMDA3QTdEOTkgLyog
SlNNZWRpYUtleVNlc3Npb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNNZWRpYUtleVNlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
RDlCRjcxODFEQkZEQUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleVNlc3Npb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUtleVNlc3Npb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3MTkxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlT
dGF0dXNNYXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRp
YUtleVN0YXR1c01hcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzFB
MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3RhdHVzTWFwLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFLZXlTdGF0dXNNYXAuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3MUIxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTeXN0
ZW1BY2Nlc3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRp
YUtleVN5c3RlbUFjY2Vzcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJG
NzFDMURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3lzdGVtQWNjZXNzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFLZXlTeXN0ZW1BY2Nlc3MuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3MUQxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVk
aWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTTWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3MUUxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlT
eXN0ZW1Db25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
TWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTJEOUJGNzFGMURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3lzdGVtTWVkaWFDYXBh
YmlsaXR5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFL
ZXlTeXN0ZW1NZWRpYUNhcGFiaWxpdHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRDlCRjcyMDFEQkZEQUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleVN5c3RlbU1lZGlhQ2FwYWJp
bGl0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhS2V5U3lzdGVt
TWVkaWFDYXBhYmlsaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzJG
MURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzMwMURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRp
YUtleU1lc3NhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUtleU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjcz
MTFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlNZXNzYWdlRXZlbnRJbml0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhS2V5TWVzc2FnZUV2ZW50SW5pdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczMjFEQkZEQzBGMDA3QTdEOTkgLyogTWVk
aWFLZXlNZXNzYWdlVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRp
YUtleU1lc3NhZ2VUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzMz
MURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gTWVkaWFLZXlzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkQ5QkY3MzQxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUtleXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkQ5QkY3MzUxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U2Vzc2lvbi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUtleVNlc3Npb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczNjFEQkZEQzBGMDA3QTdEOTkgLyog
TWVkaWFLZXlTZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlh
S2V5U2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczNzFEQkZE
QzBGMDA3QTdEOTkgLyogTWVkaWFLZXlTZXNzaW9uVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBNZWRpYUtleVNlc3Npb25UeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTJEOUJGNzM4MURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleXNSZXF1aXJlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUtleXNSZXF1aXJlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczOTFEQkZEQzBGMDA3QTdE
OTkgLyogTWVkaWFLZXlTdGF0dXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TWVkaWFLZXlTdGF0dXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3M0Ex
REJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3RhdHVzTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhS2V5U3RhdHVzTWFwLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkQ5QkY3M0IxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3Rh
dHVzTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhS2V5U3RhdHVz
TWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJEOUJGNzNDMURCRkRDMEYwMDdB
N0Q5OSAvKiBNZWRpYUtleVN5c3RlbUFjY2Vzcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNZWRpYUtleVN5c3RlbUFjY2Vzcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTJEOUJGNzNEMURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleVN5c3RlbUFj
Y2Vzcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUtleVN5c3RlbUFj
Y2Vzcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczRTFEQkZEQzBGMDA3
QTdEOTkgLyogTWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1lZGlhS2V5U3lzdGVtQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyRDlCRjczRjFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlT
eXN0ZW1NZWRpYUNhcGFiaWxpdHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TWVkaWFLZXlTeXN0ZW1NZWRpYUNhcGFiaWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkQ5QkY3NDAxREJGREMwRjAwN0E3RDk5IC8qIE5hdmlnYXRvckVNRS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0b3JFTUUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyRDlCRjc0MTFEQkZEQzBGMDA3QTdEOTkgLyogTmF2aWdh
dG9yRU1FLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRvckVNRS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRDlGMEUxMjE0RkYxQ0JGMDBCQTBGRjcg
LyogbGluZWFyU1JHQi5pY2MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBmaWxlOyBwYXRoID0gbGluZWFyU1JHQi5pY2M7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTJEQTM5N0UzMjY1QzczNzQwMDQ2OEYzMyAvKiBOdWxsR3JhcGhpY3NDb250
ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE51bGxHcmFwaGljc0NvbnRl
eHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkRBQUUzMkMxOURDQUY2MDAwRTAw
MkQyIC8qIE1vY2tQYWdlT3ZlcmxheUNsaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNb2NrUGFnZU92ZXJsYXlDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyREFBRTMyRDE5RENBRjYwMDBFMDAyRDIgLyogTW9ja1BhZ2VPdmVybGF5
Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tQYWdlT3Zlcmxh
eUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyREFGMzQzQTFFQTdFMEYx
MDAzODJDRDMgLyogQ29uc3RhbnRQcm9wZXJ0eU1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDb25zdGFudFByb3BlcnR5TWFwLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkRBRjM0M0IxRUE3RTBGMTAwMzgyQ0QzIC8qIENvbnN0YW50UHJvcGVy
dHlNYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29uc3RhbnRQcm9wZXJ0
eU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyREM4RDM5NjI1RjJGRTkzMDBD
RkNCQUIgLyogTW9kZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9kZWwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyREM4RDM5NzI1RjJGRTk0MDBDRkNCQUIgLyogTW9kZWwu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTW9kZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MkRENUE3MjYxRUJFRTQ3RDAwOUJBNTk3IC8qIENvbXBvc2l0aW9uVW5kZXJsaW5lLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbXBvc2l0aW9uVW5kZXJsaW5lLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJERDg3MTQ3MjY1RjQzNjQwMDVGOTk3QyAvKiBCaWZ1
cmNhdGVkR3JhcGhpY3NDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEJpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyREQ4NzE0OTI2NUY0MzY1MDA1Rjk5N0MgLyogQmlmdXJjYXRlZEdyYXBoaWNz
Q29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaWZ1cmNhdGVkR3Jh
cGhpY3NDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJERTcwMDIyMTky
RkU4MkEwMEIwOTc1QyAvKiBMZWdhY3lEaXNwbGF5UmVmcmVzaE1vbml0b3JNYWMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5RGlzcGxheVJlZnJlc2hNb25pdG9yTWFj
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJERjUxMkNCMUQ4NzNFNDcwMDFENjc4
MCAvKiBSZXBsYWNlUmFuZ2VXaXRoVGV4dENvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVwbGFjZVJhbmdlV2l0aFRleHRDb21tYW5kLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkRGNTEyQ0MxRDg3M0U0NzAwMUQ2NzgwIC8qIFJlcGxh
Y2VSYW5nZVdpdGhUZXh0Q29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZXBsYWNlUmFuZ2VXaXRoVGV4dENvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkRGQTQ4OEUxREI1NDFDMjAwMzYyQjk5IC8qIEJ1ZmZlclNvdXJjZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCdWZmZXJTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkUwODg4QzMxMTQ4ODNBOTAwQUY0MjY1IC8qIERPTUZvcm1EYXRhLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01Gb3JtRGF0YS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJFMDg4OEQyMTE0ODg0OEEwMEFGNDI2NSAvKiBKU0RPTUZvcm1EYXRh
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NRm9ybURhdGEu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTA4ODhEMzExNDg4NDhBMDBBRjQy
NjUgLyogSlNET01Gb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0RPTUZvcm1EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMTk1MTZBMUI2
NTk4RDIwMERGNkVFRiAvKiBXaGVlbEV2ZW50RGVsdGFGaWx0ZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2hlZWxFdmVudERlbHRhRmlsdGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkUyRDk5Q0IxMEUyQkJEQTAwNDk2MzM3IC8qIEpTQmxv
Yi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0Jsb2IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTJEOTlDQzEwRTJCQkRBMDA0OTYzMzcgLyog
SlNCbG9iLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQmxvYi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTM3REZENzEyREJBRkI4MDBBNkIyMzMgLyogRE9N
VVJMLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTVVSTC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdERkQ4MTJEQkFGQjgwMEE2QjIzMyAv
KiBET01VUkwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NVVJMLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdERkQ5MTJEQkFGQjgwMEE2QjIzMyAvKiBE
T01VUkwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERPTVVSTC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJFMzdFMDAzMTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTVVSTC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFMzdFMDA0MTJEQkM1QTQwMEE2QjIzMyAvKiBK
U0RPTVVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTVVSTC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTQzNDYzMzBGNTQ2QTgyMDBCMEYxQkEgLyog
V29ya2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjM0MEY1NDZBODIwMEIwRjFC
QSAvKiBXb3JrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjM1MEY1NDZBODIwMEIwRjFCQSAv
KiBXb3JrZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdvcmtlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjM2MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJH
bG9iYWxTY29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3Jr
ZXJHbG9iYWxTY29wZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjM3
MEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJHbG9iYWxTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkyRTQzNDYzODBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdvcmtlckdsb2JhbFNjb3BlLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkU0MzQ2MzkwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtl
ckdsb2JhbFNjb3BlUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29y
a2VyR2xvYmFsU2NvcGVQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTQz
NDYzQTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyTG9jYXRpb24uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyTG9jYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRTQzNDYzQjBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyTG9jYXRp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyTG9jYXRpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkU0MzQ2M0MwRjU0NkE4MjAwQjBGMUJBIC8q
IFdvcmtlckxvY2F0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXb3JrZXJMb2NhdGlv
bi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjNEMEY1NDZBODIwMEIw
RjFCQSAvKiBXb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXb3JrZXJNZXNzYWdpbmdQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTJFNDM0NjNFMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJNZXNzYWdpbmdQ
cm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJNZXNzYWdpbmdQ
cm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTQzNDYzRjBGNTQ2QTgyMDBC
MEYxQkEgLyogV29ya2VyT2JqZWN0UHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV29ya2VyT2JqZWN0UHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MkU0MzQ2NDAwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlclJ1bkxvb3AuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyUnVuTG9vcC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJFNDM0NjQxMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJSdW5M
b29wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlclJ1bkxvb3AuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkU0MzQ2NDIwRjU0NkE4MjAwQjBGMUJBIC8q
IFdvcmtlclRocmVhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
b3JrZXJUaHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTQzNDY0MzBG
NTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdvcmtlclRocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
RTc1ODQxQTEyNzc5QURBMDA2MjYyOEIgLyogRmlsZVJlYWRlckxvYWRlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlUmVhZGVyTG9hZGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkU3NTg0MUIxMjc3OUFEQTAwNjI2MjhCIC8qIEZpbGVS
ZWFkZXJMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVJlYWRl
ckxvYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTc1ODQxQzEyNzc5QURB
MDA2MjYyOEIgLyogRmlsZVJlYWRlckxvYWRlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGaWxlUmVhZGVyTG9hZGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTJFODg4Q0E4MjVGNkE0MTEwMDU3OTE0QSAvKiBGbG9hdExpbmUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmxvYXRMaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJF
ODg4Q0E5MjVGNkE0MTEwMDU3OTE0QSAvKiBGbG9hdExpbmUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmxvYXRMaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkU5NEY0Mzkx
MTkyMDdEQTAwQjdGNzVEIC8qIEpTRmlsZVJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVSZWFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkyRTk0RjQzQTExOTIwN0RBMDBCN0Y3NUQgLyogSlNGaWxlUmVhZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmlsZVJlYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRTlCNUQ4RTFCNjZBOTRFMDA4QzZBMjQgLyogV2hlZWxFdmVudERl
bHRhRmlsdGVyTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdoZWVsRXZl
bnREZWx0YUZpbHRlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRUE3Njgw
MzBGRTcxMjY0MDBBQjlDOEEgLyogV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlclNjcmlwdExvYWRlckNsaWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRUI0QkNEMDEyMUYwM0UzMDBFQzQ4ODUgLyogQmxv
YlJlc291cmNlSGFuZGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEJsb2JSZXNvdXJjZUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJF
QjRCQ0QxMTIxRjAzRTMwMEVDNDg4NSAvKiBCbG9iUmVzb3VyY2VIYW5kbGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvYlJlc291cmNlSGFuZGxlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJFQjc2NzUzMURBMTkzMTMwMDNFMjNCNSAvKiBJbnB1dEV2ZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbnB1dEV2ZW50LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMkVCNzY3NTQxREExOUI2NzAwM0UyM0I1IC8qIElucHV0RXZlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5wdXRFdmVudC5oOyBwYXRoID0g
ZG9tL0lucHV0RXZlbnQuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQkyRUI3Njc1
NTFEQTE5Qjk5MDAzRTIzQjUgLyogSW5wdXRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnB1dEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMkVCQkMzRDcxQjY1OTg4MzAwRjUyNTNEIC8qIFdoZWVsRXZlbnREZWx0YUZpbHRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXaGVlbEV2ZW50RGVsdGFGaWx0ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVDNDFERTIxQzA0MTBBMzAwRDI5NEZF
IC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWFsdGltZU1lZGlhU291cmNlU3VwcG9ydGVk
Q29uc3RyYWludHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRUNEQkFDRTIx
RDg5MDM0MDBGMDBFQ0QgLyogVW5kb01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVW5kb01hbmFn
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVDREJBQ0YyMUQ4OTAzNDAwRjAw
RUNEIC8qIFVuZG9NYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVuZG9NYW5hZ2VyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVDREJBRDAyMUQ4OTAzNDAwRjAwRUNE
IC8qIFVuZG9NYW5hZ2VyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBVbmRvTWFuYWdlci5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTJFQ0RCQUQ1MjFEODkwNjMwMEYwMEVDRCAvKiBVbmRvSXRlbS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBVbmRvSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQky
RUNEQkFENzIxRDg5MDYzMDBGMDBFQ0QgLyogVW5kb0l0ZW0uaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFVuZG9JdGVtLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVDRjdBREExMDE2MkIzODAwNDI3REU3
IC8qIEpTRXJyb3JFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0Vycm9yRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRUNGN0FE
QjEwMTYyQjM4MDA0MjdERTcgLyogSlNFcnJvckV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRUNGN0FERTEwMTYyQjU4MDA0MjdERTcgLyogRXJyb3JFdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFcnJvckV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkVDRjdBREYxMDE2MkI1ODAwNDI3REU3IC8qIEVycm9yRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyRUNGN0FFMDEwMTYyQjU4MDA0MjdERTcgLyogRXJyb3JFdmVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRXJyb3JFdmVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTJFRDYwOUJBMTE0NUIwNzEwMEM4Njg0RSAvKiBET01Gb3JtRGF0
YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01Gb3JtRGF0YS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFRDYwOUJCMTE0NUIwNzEwMEM4Njg0
RSAvKiBET01Gb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01G
b3JtRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRURFRjFFRDEyMUIwRUZD
MDA3MjZEQjIgLyogQmxvYkRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQmxvYkRhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRURFRjFF
RTEyMUIwRUZDMDA3MjZEQjIgLyogQmxvYkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQmxvYkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVERUYx
RUYxMjFCMEVGQzAwNzI2REIyIC8qIEJsb2JSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBCbG9iUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkVERUYxRjAxMjFCMEVGQzAwNzI2REIyIC8qIEJsb2JSZWdpc3RyeUltcGwuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmxvYlJlZ2lzdHJ5SW1wbC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFREVGMUYxMTIxQjBFRkMwMDcyNkRCMiAvKiBC
bG9iUmVnaXN0cnlJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJsb2JS
ZWdpc3RyeUltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkVERjM2OUExMjJD
OTRCNDAwMkY3RDRFIC8qIEZpbGVSZWFkZXJTeW5jLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZpbGVSZWFkZXJTeW5jLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMkVERjM2OUIxMjJDOTRCNDAwMkY3RDRFIC8qIEZpbGVSZWFkZXJTeW5jLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVSZWFkZXJTeW5jLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTJFRTAyQTFFMUY3MzI0MjgwMDA2QUY3MiAvKiBQYXN0ZWJv
YXJkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhc3RlYm9hcmQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkyRUVFRTU1QjFCNjZBMDQ3MDA4RTJDQkMgLyogV2hlZWxFdmVudERl
bHRhRmlsdGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
V2hlZWxFdmVudERlbHRhRmlsdGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRUYxQkZFODEyMUM5RjQyMDBDMjc2MjcgLyogRmlsZVN0cmVhbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3RyZWFtLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMkVGMUJGRTkxMjFDOUY0MjAwQzI3NjI3IC8qIEZpbGVTdHJlYW0uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN0cmVhbS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkyRUYxQkZGODEyMUNCMENFMDBDMjc2MjcgLyogRmlsZVN0cmVh
bUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3RyZWFtQ2xp
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJGMzFFMDcxMUZBM0IzM0IwMEUw
NTlCQSAvKiBIVE1MTWVudUl0ZW1FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEhUTUxNZW51SXRlbUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMkYzMUUwNzMxRkEzQjMzQzAwRTA1OUJBIC8qIEhUTUxNZW51SXRlbUVsZW1lbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTE1lbnVJdGVtRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJGMzFFMDc2MUZBM0MxMEIwMEUwNTlC
QSAvKiBIVE1MTWVudUl0ZW1FbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
TWVudUl0ZW1FbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEwM0I3
REUxREIwMTU1NjAwOEJCODkwIC8qIENvbG9ySGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xvckhh
c2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEwNTVCQjgxRTRGRTE4OTAwRUI2
MDRFIC8qIFdlYktpdEZvbnRGYW1pbHlOYW1lcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
ZWJLaXRGb250RmFtaWx5TmFtZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMx
MDc4Q0MyMTg4MEE2QTYwMDgwOTlEQyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9FU1RleHR1cmVIYWxmRmxvYXRM
aW5lYXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTA3OENDMzE4ODBBNkE2
MDA4MDk5REMgLyogT0VTVGV4dHVyZUhhbGZGbG9hdExpbmVhci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMxMDc4Q0M0MTg4MEE2QTYwMDgwOTlEQyAvKiBPRVNUZXh0dXJl
SGFsZkZsb2F0TGluZWFyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPRVNUZXh0dXJlSGFs
ZkZsb2F0TGluZWFyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEwNzhDQzUx
ODgwQUFBQTAwODA5OURDIC8qIEpTT0VTVGV4dHVyZUhhbGZGbG9hdExpbmVhci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU09FU1RleHR1cmVIYWxmRmxvYXRMaW5l
YXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTA3OENDNjE4ODBBQUFBMDA4
MDk5REMgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTT0VTVGV4dHVyZUhhbGZGbG9hdExpbmVhci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkzMTBENzE5MzFCMzM1QzlEMDA5QzdCNzMgLyogVGhlbWVDb2Nv
YS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRoZW1lQ29jb2Eu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxMEQ3MTk0MUIzMzVDOUQwMDlDN0I3
MyAvKiBUaGVtZUNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRoZW1l
Q29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzExNTE4RkIxRTc4QzE1RjAw
RUM1MTRBIC8qIEdQVUJhc2VkQ2FudmFzUmVuZGVyaW5nQ29udGV4dC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBHUFVCYXNlZENhbnZhc1JlbmRlcmluZ0NvbnRleHQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzExQzA4QkMxOEUzNUQ2ODAwQjY1NjE1IC8qIENv
bnRyb2xTdGF0ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udHJvbFN0
YXRlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTI4OEU2RTBFMzAwNUQ2MDAz
NjE5QUUgLyogQ1NTS2V5ZnJhbWVSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENTU0tleWZyYW1lUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTMxMjg4RTZGMEUzMDA1RDYwMDM2MTlBRSAvKiBDU1NLZXlmcmFtZVJ1bGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTS2V5ZnJhbWVSdWxlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMxMjg4RTcwMEUzMDA1RDYwMDM2MTlBRSAvKiBDU1NLZXlmcmFt
ZXNSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0tleWZy
YW1lc1J1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTI4OEU3MTBFMzAw
NUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVzUnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDU1NLZXlmcmFtZXNSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTMxMjhDQTY3MTQ3MzMxNTIwMDc0QzcyQSAvKiBOb3RpZmljYXRpb25Db250cm9sbGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdGlmaWNhdGlvbkNvbnRy
b2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTI4Q0E2QTE0NzMzMTYz
MDA3NEM3MkEgLyogTm90aWZpY2F0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBOb3RpZmljYXRpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTMxMkZGOTNEMjFBNjFGMDcwMEVCMTk5RCAvKiBKU1dlYkdQVVF1ZXVlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUXVldWUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEyRkY5M0UyMUE2MUYwNzAwRUIxOTlEIC8qIEpTV2Vi
R1BVUXVldWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJH
UFVRdWV1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxMzE3MTU0MUZCMDc5
RDEwMDhEOTFGQyAvKiBDYW52YXNCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENhbnZhc0Jhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEzMTcxNTcx
RkIwOTY5RTAwOEQ5MUZDIC8qIENhbnZhc0Jhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ2FudmFzQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTMxMzU5MTAwMUU3RERDNjAwMEYzMDYzMCAvKiBSVENJY2VDb25uZWN0aW9uU3RhdGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDSWNlQ29ubmVjdGlvblN0YXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxMzU5MTAxMUU3RERDNjAwMEYzMDYzMCAv
KiBSVENJY2VHYXRoZXJpbmdTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSVENJY2VHYXRoZXJpbmdTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTM1OTEwMjFFN0REQzYwMDBGMzA2MzAgLyogUlRDSWNlVHJhbnNwb3J0UG9saWN5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0ljZVRyYW5zcG9ydFBvbGljeS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTM1OTEwMzFFN0REQzYwMDBGMzA2MzAgLyogUlRD
SWNlVHJhbnNwb3J0U3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRD
SWNlVHJhbnNwb3J0U3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEzNTkx
MDQxRTdEREM2MDAwRjMwNjMwIC8qIFJUQ1NkcFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUlRDU2RwVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTM1OTEwNTFFN0REQzYwMDBGMzA2MzAgLyogUlRDU2lnbmFsaW5nU3RhdGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDU2lnbmFsaW5nU3RhdGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzEzNTkxMEMxRTdERENCNjAwRjMwNjMwIC8qIFJUQ0J1bmRsZVBv
bGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENCdW5kbGVQb2xpY3ku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEzQkNFMUIyMzVFM0JEQjAwRkMzOUU1
IC8qIEVsZW1lbnRDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVs
ZW1lbnRDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxM0RFODZEMjNB
OTY5NjYwMDhGQzQ3QiAvKiBHcmFwaGljc0NvbnRleHRHTC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHRHTC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTMxM0RFODZGMjNBOTY5NjcwMDhGQzQ3QiAvKiBHcmFwaGljc0NvbnRl
eHRHTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFwaGljc0NvbnRleHRH
TC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTQwMzc5NzEyNEJFQTdGMDBBRjQw
RTQgLyogV2ViQ29yZU1vdGlvbk1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViQ29yZU1vdGlvbk1hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMzE0MDM3OTgxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNvcmVNb3Rpb25NYW5hZ2VyLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29yZU1vdGlvbk1hbmFn
ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNDAzNzk5MTI0QkVBN0YwMEFG
NDBFNCAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkzMTQwMzc5QTEyNEJFQTdGMDBBRjQwRTQgLyogRGV2aWNlT3JpZW50
YXRpb25DbGllbnRJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudElPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzE0MEM1MUIxRkRGMTNEMjAwRDJBODczIC8qIE9mZnNjcmVlbkNhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyRC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0MEM1MUQxRkRGMTUxQTAwRDJBODcz
IC8qIE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkzMTQwQzUxRTFGREYxNTFBMDBEMkE4NzMgLyogT2Zmc2NyZWVuQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dDJELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9mZnNjcmVlbkNhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyRC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTQwQzUy
MTFGREYzMTg0MDBEMkE4NzMgLyogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYW52YXNSZW5kZXJpbmdDb250ZXh0
MkRCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0MEM1MjIxRkRGMzE4
NjAwRDJBODczIC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQmFzZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTQwQzUyNTFGREY1NTdGMDBEMkE4NzMgLyogSlNP
ZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0MEM1MjYxRkRGNTU4MTAwRDJBODczIC8qIEpTT2Zm
c2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0MEM1MkIxRkUwNkI0OTAwRDJBODczIC8q
IEpTT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0NkZFNjUxODQ0MjA4NzAwMUE5MzdDIC8q
IE9FU1RleHR1cmVGbG9hdExpbmVhci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBPRVNUZXh0dXJlRmxvYXRMaW5lYXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMTQ2RkU2NjE4NDQyMDg3MDAxQTkzN0MgLyogT0VTVGV4dHVyZUZsb2F0TGluZWFy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9FU1RleHR1cmVGbG9hdExpbmVh
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTQ2RkU2NzE4NDQyMDg3MDAxQTkz
N0MgLyogT0VTVGV4dHVyZUZsb2F0TGluZWFyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBP
RVNUZXh0dXJlRmxvYXRMaW5lYXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTQ2RkU3MDE4NDQyMzY3MDAxQTkzN0MgLyogSlNPRVNUZXh0dXJlRmxvYXRMaW5lYXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNPRVNUZXh0dXJlRmxvYXRMaW5l
YXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTQ2RkU3MTE4NDQyMzY3MDAx
QTkzN0MgLyogSlNPRVNUZXh0dXJlRmxvYXRMaW5lYXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNPRVNUZXh0dXJlRmxvYXRMaW5lYXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzE0ODc3RDkxRkFBODcwNjAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gT2Zmc2NyZWVuQ2FudmFzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMzE0ODc3RTAxRkFBOEZFOTAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBPZmZzY3JlZW5DYW52YXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMTQ4NzdFMTFGQUE4RkU5MDBDMDU3NTkgLyogT2Zmc2NyZWVuQ2FudmFzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9mZnNjcmVlbkNhbnZhcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzMTQ4NzdFNDFGQUFCMDIyMDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNPZmZzY3JlZW5DYW52YXMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0ODc3RTUxRkFBQjAyNDAwQzA1NzU5IC8qIEpTT2Zm
c2NyZWVuQ2FudmFzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
T2Zmc2NyZWVuQ2FudmFzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE0QkUz
QTAxQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDU1NOYW1lZEltYWdlVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzE0QkUzQTIxQjMwRjZEMTAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VW
YWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NOYW1lZElt
YWdlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTRCRTNBNDFCMzEw
M0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNEJFM0E1MUIzMTAzRkIwMDE0MTk4MiAvKiBO
YW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTMxNEYxNjlCMjY0MEI2N0UwMDY2M0VDRSAvKiBXZWJYUk9wYXF1ZUZyYW1lYnVmZmVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhST3BhcXVlRnJhbWVidWZmZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkzMTRGMTY5RDI2NDBCNjdFMDA2NjNFQ0UgLyogV2ViWFJP
cGFxdWVGcmFtZWJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJYUk9wYXF1ZUZyYW1lYnVmZmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNTU3NENDMjE4RjY2RDAwMEQ4OEY2
NiAvKiBQb2ludGVyRXZlbnRJT1MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUG9pbnRlckV2ZW50SU9TLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gT3BlbkdMU29mdExpbmtDb2NvYS5oOyBwYXRoID0gLi4vLi4vLi4vUEFML3BhbC9j
b2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTMxNjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gT3BlbkdMU29mdExpbmtDb2NvYS5tbTsgcGF0aCA9IC4uLy4uLy4u
L1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzE2RENCMTIxRTc4QkU0MzAwMUI1Rjg3IC8qIFJUQ09mZmVyQW5zd2VyT3B0
aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2RENCMTcxRTc4QzMzMDAwMUI1Rjg3
IC8qIFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENSdHBUcmFuc2NlaXZl
ckRpcmVjdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjE5MUU3
OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjFBMUU3OENBNTUwMDFCNUY4NyAvKiBK
U1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkzMTZEQ0IxQjFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlv
bi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ1J0cFRyYW5z
Y2VpdmVyRGlyZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2RENC
MUMxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0IyODFFNzhGMzk1MDAxQjVG
ODcgLyogUlRDT2ZmZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ09mZmVyT3B0aW9ucy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0IyOTFFNzhGMzk1MDAxQjVGODcg
LyogUlRDT2ZmZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENPZmZlck9wdGlvbnMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0IyQjFFNzhGM0E5MDAxQjVGODcgLyogUlRDQW5z
d2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENBbnN3ZXJPcHRpb25zLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjJDMUU3OEYzQTkwMDFCNUY4NyAvKiBSVENBbnN3
ZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBSVENBbnN3ZXJPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzE2RENCMkQxRTc4RjQ5NjAwMUI1Rjg3IC8qIEpTUlRDQW5zd2VyT3B0
aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ0Fuc3dl
ck9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0IyRTFFNzhG
NDk2MDAxQjVGODcgLyogSlNSVENBbnN3ZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTUlRDQW5zd2VyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMTZEQ0IyRjFFNzhGNDk2MDAxQjVGODcgLyogSlNSVENPZmZlck9wdGlvbnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENPZmZlck9wdGlvbnMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0IzMDFFNzhGNDk2MDAxQjVG
ODcgLyogSlNSVENPZmZlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNSVENPZmZlck9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2
RENCMzUxRTc5MEUxQjAwMUI1Rjg3IC8qIFJUQ0ljZUdhdGhlcmluZ1N0YXRlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBSVENJY2VHYXRoZXJpbmdTdGF0ZS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTMxNkRDQjNCMUU3OTBFMkMwMDFCNUY4NyAvKiBSVENJY2VDb25uZWN0
aW9uU3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0ljZUNvbm5lY3Rpb25TdGF0
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjQxMUU3OTBFM0MwMDFC
NUY4NyAvKiBSVENTaWduYWxpbmdTdGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRD
U2lnbmFsaW5nU3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0I0
NTFFNzkxMEE2MDAxQjVGODcgLyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0I0NjFFNzkxMEE2MDAxQjVGODcg
LyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzE2RENCNDcxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlR2F0aGVyaW5nU3RhdGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENJY2VHYXRoZXJp
bmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjQ4MUU3OTEw
QTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUdhdGhlcmluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUlRDSWNlR2F0aGVyaW5nU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzE2RENCNDkxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDU2lnbmFsaW5n
U3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENTaWdu
YWxpbmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNkRDQjRBMUU3
OTEwQTYwMDFCNUY4NyAvKiBKU1JUQ1NpZ25hbGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUlRDU2lnbmFsaW5nU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzE2RENCODgxRTdBNjk5NjAwMUI1Rjg3IC8qIFJUQ0ljZVRyYW5zcG9ydC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENJY2VUcmFuc3BvcnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0I4OTFFN0E2OTk2MDAxQjVG
ODcgLyogUlRDSWNlVHJhbnNwb3J0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENJY2VU
cmFuc3BvcnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZEQ0I4RTFFN0E2
Qzc5MDAxQjVGODcgLyogUlRDSWNlVHJhbnNwb3J0U3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzE2REU3MDExRTgzQUUxRDAwODRDMjYxIC8qIFJUQ0RhdGFDaGFubmVsU3RhdGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRGF0YUNoYW5uZWxTdGF0ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZGRTA2RDBFNkNDQkVFMDBCRjYwODggLyog
SlNDU1NLZXlmcmFtZVJ1bGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNDU1NLZXlmcmFtZVJ1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTZGRTA2RTBFNkNDQkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFtZVJ1bGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NLZXlmcmFtZVJ1bGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzE2RkUwNkYwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJh
bWVzUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU0tl
eWZyYW1lc1J1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTZGRTA3MDBF
NkNDQkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFtZXNSdWxlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTQ1NTS2V5ZnJhbWVzUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkzMTZGRTA5MTBFNkNDRDdGMDBCRjYwODggLyogQ1NTS2V5ZnJhbWVSdWxlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NLZXlmcmFtZVJ1bGUuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkzMTZGRTA5MjBFNkNDRDdGMDBCRjYwODggLyogQ1NTS2V5ZnJh
bWVzUnVsZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ1NTS2V5ZnJhbWVzUnVsZS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNzQxQUFCMTY2MzVFNDUwMDhBNUI3RSAv
KiBTaW11bGF0ZWRDbGlja09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2ltdWxhdGVkQ2xpY2tP
cHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxN0QzRkVGMjE1NTk5RTEw
MDM0RTNCOSAvKiBQb2ludGVyRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBvaW50ZXJFdmVudC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxN0QzRkYxMjE1NTk5RTIwMDM0RTNCOSAvKiBQb2lu
dGVyRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2ZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE3RDNGRjIyMTU1OTlFMzAwMzRFM0I5IC8qIFBvaW50
ZXJFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQb2ludGVyRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzE4OUU2REIxNkIyMTAzNTAwMzg2RUEzIC8qIHBsdWdJbnMuY3NzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBwbHVnSW5zLmNzczsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzE4RUFENEExRkE5MTE1NzAwOENFRjg2IC8qIEltYWdlQml0bWFwUmVuZGVy
aW5nQ29udGV4dFNldHRpbmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlQml0bWFwUmVuZGVyaW5n
Q29udGV4dFNldHRpbmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxOEVBRDRD
MUZBOTEzNTIwMDhDRUY4NiAvKiBJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHRTZXR0aW5ncy5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0U2V0dGluZ3MuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkzMTk4NDdGRTFBMUQ4MTY3MDBBMTMzMTggLyogQW5pbWF0
aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQW5pbWF0
aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTk4NDdGRjFBMUQ4
MTY3MDBBMTMzMTggLyogQW5pbWF0aW9uRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQW5pbWF0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzE5ODQ4MDAxQTFEODE2NzAwQTEzMzE4IC8qIEFuaW1hdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBBbmltYXRpb25FdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxOTg0ODAzMUExRTZCNUQwMEExMzMxOCAvKiBKU0FuaW1hdGlvbkV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQW5pbWF0aW9uRXZlbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTk4NDgwNDFBMUU2QjVEMDBBMTMzMTgg
LyogSlNBbmltYXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0FuaW1hdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxOUE3Mjg3
MjNDMjY3RTcwMDg1MzUzQyAvKiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTE1hbmFnZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5h
Z2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxOUFFMDYxMTQyRDZCMjQwMDY1
NjNBMSAvKiBTdHlsZUZpbHRlckRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU3R5bGVGaWx0ZXJEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMzE5QUUwNjIxNDJENkIyNDAwNjU2M0ExIC8qIFN0eWxlRmlsdGVyRGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUZpbHRlckRhdGEuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzE5QkRFNEYxRTdBODU4QTAwQkEyOTZDIC8qIEpTUlRDSWNlVHJh
bnNwb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNl
VHJhbnNwb3J0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE5QkRFNTAxRTdB
ODU4QTAwQkEyOTZDIC8qIEpTUlRDSWNlVHJhbnNwb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTUlRDSWNlVHJhbnNwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxOUJERTUyMUU3QTg2QzEwMEJBMjk2QyAvKiBKU1JUQ0ljZVRyYW5zcG9ydFN0YXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDSWNlVHJhbnNw
b3J0U3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTlCREU1MjFFN0E4
NkMxMDBCQTI5NkQgLyogSlNSVENQZWVyQ29ubmVjdGlvblN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDUGVlckNvbm5lY3Rpb25TdGF0ZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxOUJERTUzMUU3QTg2QzEwMEJBMjk2QyAvKiBK
U1JUQ0ljZVRyYW5zcG9ydFN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTUlRDSWNlVHJhbnNwb3J0U3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzE5QkRFNTMxRTdBODZDMTAwQkEyOTZEIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25TdGF0ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ1BlZXJDb25uZWN0aW9uU3RhdGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE5RkJENUQxNUQyRjQ0NDAwOTY0MEE2
IC8qIENhY2hlZEltYWdlQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENhY2hlZEltYWdlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4
OTFCMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVUJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdQVUJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTMxQTA4OTFEMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVUJ1ZmZl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVUJ1ZmZlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEwODkxRTFFNzM4RDU5MDAzQjY2MDkgLyog
SlNXZWJHUFVDb21tYW5kQnVmZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTV2ViR1BVQ29tbWFuZEJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxQTA4OTIwMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVUNvbW1hbmRCdWZmZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHUFVDb21tYW5kQnVmZmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTIxMUU3MzhENTkwMDNCNjYw
OSAvKiBKU1dlYkdQVUNvbW1hbmRRdWV1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1dlYkdQVUNvbW1hbmRRdWV1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTMxQTA4OTIzMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVUNvbW1hbmRRdWV1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVUNvbW1hbmRRdWV1
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEwODkyNDFFNzM4RDU5MDAzQjY2
MDkgLyogSlNXZWJHUFVEZXB0aFN0ZW5jaWxEZXNjcmlwdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR1BVRGVwdGhTdGVuY2lsRGVzY3JpcHRvci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTI2MUU3MzhENTkwMDNCNjYwOSAv
KiBKU1dlYkdQVURlcHRoU3RlbmNpbERlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNXZWJHUFVEZXB0aFN0ZW5jaWxEZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTI3MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURl
cHRoU3RlbmNpbFN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTV2ViR1BVRGVwdGhTdGVuY2lsU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzMUEwODkyOTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVEZXB0aFN0ZW5jaWxTdGF0
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVURlcHRoU3RlbmNp
bFN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTJBMUU3MzhENTkw
MDNCNjYwOSAvKiBKU1dlYkdQVURyYXdhYmxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTV2ViR1BVRHJhd2FibGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMUEwODkyQzFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVEcmF3YWJsZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVURyYXdhYmxlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTJEMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dl
YkdQVUZ1bmN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
V2ViR1BVRnVuY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEwODky
RjFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVGdW5jdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVUZ1bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTMxQTA4OTMwMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVUxpYnJhcnkuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVMaWJyYXJ5LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5MzIxRTczOEQ1OTAwM0I2NjA5
IC8qIEpTV2ViR1BVTGlicmFyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1dlYkdQVUxpYnJhcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5MzMx
RTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyQ29tbWFuZEVuY29kZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVSZW5kZXJDb21tYW5kRW5j
b2Rlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTM1MUU3MzhENTkw
MDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlckNvbW1hbmRFbmNvZGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVyQ29tbWFuZEVuY29kZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5MzYxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2Vi
R1BVUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1dlYkdQVVJlbmRlcmluZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMUEwODkzODFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJpbmdDb250
ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVyaW5n
Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEwODkzOTFFNzM4RDU5
MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzQXR0YWNobWVudERlc2NyaXB0b3IuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVSZW5kZXJQYXNzQXR0
YWNobWVudERlc2NyaXB0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEw
ODkzQjFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzQXR0YWNobWVudERlc2Ny
aXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHUFVSZW5kZXJQ
YXNzQXR0YWNobWVudERlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzFBMDg5M0MxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNo
bWVudERlc2NyaXB0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNXZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTNFMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQ
VVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5M0YxRTczOEQ1OTAwM0I2
NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0RlcHRoQXR0YWNobWVudERlc2NyaXB0b3IuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVSZW5kZXJQYXNzRGVw
dGhBdHRhY2htZW50RGVzY3JpcHRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTMxQTA4OTQxMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBhc3NEZXB0aEF0dGFj
aG1lbnREZXNjcmlwdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2Vi
R1BVUmVuZGVyUGFzc0RlcHRoQXR0YWNobWVudERlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzFBMDg5NDIxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVy
UGFzc0Rlc2NyaXB0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxQTA4OTQ0MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBhc3NEZXNj
cmlwdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVy
UGFzc0Rlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5NDUx
RTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVDb2xvckF0dGFjaG1lbnRE
ZXNjcmlwdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2Vi
R1BVUmVuZGVyUGlwZWxpbmVDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5NDcxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BV
UmVuZGVyUGlwZWxpbmVDb2xvckF0dGFjaG1lbnREZXNjcmlwdG9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVDb2xvckF0dGFjaG1lbnRE
ZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTQ4MUU3MzhE
NTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdQVVJlbmRlclBpcGVsaW5lRGVz
Y3JpcHRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTRBMUU3MzhE
NTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdQVVJlbmRlclBpcGVsaW5lRGVzY3JpcHRv
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUEwODk0QjFFNzM4RDU5MDAzQjY2
MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZVN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVTdGF0ZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTREMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dl
YkdQVVJlbmRlclBpcGVsaW5lU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNXZWJHUFVSZW5kZXJQaXBlbGluZVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxQTA4OTRFMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVRleHR1cmUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVUZXh0dXJlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5NTAxRTczOEQ1OTAwM0I2NjA5IC8q
IEpTV2ViR1BVVGV4dHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dl
YkdQVVRleHR1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBMDg5NTExRTcz
OEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVVGV4dHVyZURlc2NyaXB0b3IuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVUZXh0dXJlRGVzY3JpcHRvci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQTA4OTUzMUU3MzhENTkwMDNCNjYwOSAv
KiBKU1dlYkdQVVRleHR1cmVEZXNjcmlwdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTV2ViR1BVVGV4dHVyZURlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMzFBNzk1QzExODg4QjcyNDAwMzgyRjkwIC8qIEFOR0xFSW5zdGFuY2VkQXJyYXlz
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFOR0xFSW5zdGFuY2Vk
QXJyYXlzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFBNzk1QzIxODg4Qjcy
NDAwMzgyRjkwIC8qIEFOR0xFSW5zdGFuY2VkQXJyYXlzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEFOR0xFSW5zdGFuY2VkQXJyYXlzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTMxQTc5NUMzMTg4OEI3MjQwMDM4MkY5MCAvKiBBTkdMRUluc3RhbmNlZEFycmF5
cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQU5HTEVJbnN0YW5jZWRBcnJheXMuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUE3OTVDNDE4ODhCQUQxMDAzODJGOTAgLyog
SlNBTkdMRUluc3RhbmNlZEFycmF5cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0FOR0xFSW5zdGFuY2VkQXJyYXlzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMzFBNzk1QzUxODg4QkFEMTAwMzgyRjkwIC8qIEpTQU5HTEVJbnN0YW5jZWRBcnJh
eXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBTkdMRUluc3RhbmNlZEFy
cmF5cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUMwRkYxQjBFNENFQjZFMDA3
RDZGRTUgLyogV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkzMUMwRkYxQzBFNENFQjZFMDA3RDZGRTUgLyogV2ViS2l0QW5pbWF0aW9u
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0QW5pbWF0aW9u
RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFDMEZGMUQwRTRDRUI2RTAw
N0Q2RkU1IC8qIFdlYktpdEFuaW1hdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBXZWJLaXRBbmltYXRpb25FdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTMxQzBGRjFFMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRUcmFuc2l0aW9uRXZlbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViS2l0VHJhbnNpdGlvbkV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFDMEZGMUYwRTRDRUI2RTAwN0Q2
RkU1IC8qIFdlYktpdFRyYW5zaXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzFDMEZGMjAwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdFRyYW5zaXRpb25FdmVudC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFDMEZGMzkwRTRDRUZBQzAwN0Q2RkU1IC8qIEpT
V2ViS2l0QW5pbWF0aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxQzBGRjNBMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdEFuaW1hdGlvbkV2ZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViS2l0QW5pbWF0aW9uRXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFDMEZGM0IwRTRDRUZBQzAwN0Q2
RkU1IC8qIEpTV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTV2ViS2l0VHJhbnNpdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzFDMEZGM0MwRTRDRUZBQzAwN0Q2RkU1IC8qIEpTV2ViS2l0VHJh
bnNpdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViS2l0
VHJhbnNpdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxRDI2QkJE
MUY4NkQxODcwMDhGRjI1NSAvKiBJbWFnZUJpdG1hcE9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEltYWdlQml0bWFwT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxRDI2QkJGMUY4NkQxODkwMDhGRjI1NSAvKiBJbWFnZUJpdG1hcC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZUJpdG1hcC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkzMUQyNkJDMDFGODZEMThBMDA4RkYyNTUgLyogSW1hZ2VCaXRtYXBPcHRp
b25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlQml0bWFwT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUQyNkJDMTFGODZEMThCMDA4RkYy
NTUgLyogSW1hZ2VCaXRtYXAuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEltYWdlQml0bWFw
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFEMjZCQzIxRjg2RDE4QzAwOEZG
MjU1IC8qIEltYWdlQml0bWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEltYWdlQml0bWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFEMjZC
QzMxRjg2RDI2NTAwOEZGMjU1IC8qIEpTSW1hZ2VCaXRtYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNJbWFnZUJpdG1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzMUQyNkJDNDFGODZEMjY2MDA4RkYyNTUgLyogSlNJbWFnZUJpdG1hcE9wdGlvbnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbWFnZUJpdG1hcE9wdGlv
bnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUQyNkJDNTFGODZEMjY4MDA4
RkYyNTUgLyogSlNJbWFnZUJpdG1hcE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNJbWFnZUJpdG1hcE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzFEMjZCQzYxRjg2RDI2OTAwOEZGMjU1IC8qIEpTSW1hZ2VCaXRtYXAuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJbWFnZUJpdG1hcC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxREVBNDUzMUIzOUY0RDkwMEY3NzE3OCAvKiBXZWJT
eXN0ZW1CYWNrZHJvcExheWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gV2ViU3lzdGVtQmFja2Ryb3BMYXllci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzFERUE0NTQxQjM5RjREOTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tkcm9wTGF5ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU3lzdGVtQmFja2Ryb3BMYXll
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUVBRjk3QzEyMTQzNUE0MDBFN0Mx
QkYgLyogRGV2aWNlTW90aW9uQ2xpZW50SU9TLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERldmljZU1vdGlvbkNsaWVudElPUy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzMUVBRjk3RDEyMTQzNUE0MDBFN0MxQkYgLyogRGV2aWNlTW90aW9uQ2xpZW50SU9TLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRGV2aWNlTW90aW9uQ2xp
ZW50SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUVCNTRERDFFN0RDNzQ0
MDBDMTYyM0IgLyogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFFQzFENTAxNEZFRkQwODAwQzk0NjYyIC8qIE5vdGlmaWNh
dGlvblBlcm1pc3Npb25DYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm90aWZp
Y2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMzFFQzFEQUMxNEZGMjZFQTAwQzk0NjYyIC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxs
YmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFFQzFFMjYxNEZGNjBFRTAwQzk0NjYyIC8q
IEpTTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFFQzFFMjcxNEZGNjBFRTAwQzk0NjYyIC8q
IEpTTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxRkIxQTRGMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VN
b3Rpb25DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlTW90
aW9uQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxRkIxQTUwMTIwQTVE
MDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU1vdGlvbkNvbnRyb2xsZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkzMUZCMUE1MTEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNl
TW90aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZp
Y2VNb3Rpb25Db250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxRkIx
QTUyMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25EYXRhLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZU1vdGlvbkRhdGEuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQkzMUZCMUE1MzEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90
aW9uRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VNb3Rpb25E
YXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxRkIxQTU0MTIwQTVEMDYwMERD
MDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEZXZpY2VNb3Rpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTMxRkIxQTU1MTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VNb3Rpb25FdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMUZCMUE1NjEyMEE1RDA2MDBEQzAyQTAgLyogRGV2
aWNlTW90aW9uRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERldmljZU1vdGlvbkV2
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzFGQjFBNjMxMjBBNUQzRjAw
REMwMkEwIC8qIEpTRGV2aWNlTW90aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNEZXZpY2VNb3Rpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTMxRkIxQTY0MTIwQTVEM0YwMERDMDJBMCAvKiBKU0RldmljZU1vdGlvbkV2
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRGV2aWNlTW90aW9uRXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzMxRkY2N0RFMTk3QjU3MzkzQzQ2
QTdGIC8qIFJlbmRlck1hdGhNTFBhZGRlZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZW5kZXJNYXRoTUxQYWRkZWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzMxRkY2N0RFMTk3QjU3MzkzQzQ2QUE3IC8qIFJlbmRlck1hdGhNTFNwYWNlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1hdGhNTFNwYWNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMzM0Y3MDRFMEZCNDlDQTIwMDhFMTJBNiAvKiBOb3RpZmljYXRp
b24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5vdGlmaWNhdGlvbi5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTMzM0Y3MDRGMEZCNDlDQTIwMDhFMTJBNiAvKiBOb3RpZmlj
YXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTm90aWZpY2F0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMzNTAzQzk5MTAxNzlBNzQwMDNCNDdFMSAv
KiBOb3RpZmljYXRpb25DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBs
aWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IGZpbGVFbmNvZGluZyA9IDQ7IHBhdGggPSBO
b3RpZmljYXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzM1MDND
OUYxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzM1MDNDQTAxMDE3OUFENzAwM0I0N0UxIC8qIEpTTm90aWZpY2F0aW9u
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMzNTAzQ0M2MTAxN0ExQjEwMDNCNDdFMSAvKiBO
b3RpZmljYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTm90
aWZpY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzVDNzRGRDMyMjhB
MTkxMjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTM1Qzc0RkQ3MjI4QTE5QTYwMDBDMjFBMCAvKiBDU1NHcmlkSW50ZWdlclJl
cGVhdFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0dyaWRJbnRlZ2VyUmVwZWF0VmFsdWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzY2MkY5ODQwNDdDRURCRTVERERBRkFBIC8q
IFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFJlbmRlck1hdGhNTE1lbmNsb3NlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzcxMTlBNzkyMENDQjYxMDAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlvbmFs
cy54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25m
aWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3MTdEN0U1MTdFQ0MzQTYwMDNDMjc2
RCAvKiBleHRyYWN0LWxvY2FsaXphYmxlLXN0cmluZ3MucGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnNjcmlwdC5wZXJsOyBuYW1lID0gImV4
dHJhY3QtbG9jYWxpemFibGUtc3RyaW5ncy5wbCI7IHBhdGggPSAiU2NyaXB0cy9leHRyYWN0LWxv
Y2FsaXphYmxlLXN0cmluZ3MucGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNzFB
NjdDQTExQzZDN0RCMDAwNDdCOEIgLyogSHlwaGVuYXRpb25DRi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIeXBoZW5hdGlvbkNGLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMzcxRTY1Q0IxMzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VTZXJpYWxpemVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3MUU2NUNEMTM2NjFFRUQwMEJFRURCMCAvKiBQ
YWdlU2VyaWFsaXplci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQ
YWdlU2VyaWFsaXplci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3MUY0RkZB
MEQyNUU3RjMwMEVDRTBENSAvKiBGb250UmFuZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEZvbnRSYW5nZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzcx
RjRGRkIwRDI1RTdGMzAwRUNFMEQ1IC8qIEZvbnRSYW5nZXMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRm9udFJhbmdlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTM3MUY1MTlGMEQyNjJGQTAwMEVDRTBENSAvKiBDU1NTZWdtZW50ZWRGb250RmFj
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NTZWdtZW50ZWRGb250RmFj
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNzFGNTFBMDBEMjYyRkEwMDBFQ0Uw
RDUgLyogQ1NTU2VnbWVudGVkRm9udEZhY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ1NTU2VnbWVudGVkRm9udEZhY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkzNzFGNTNFNzBEMjcwNEY5MDBFQ0UwRDUgLyogQ1NTVW5pY29kZVJhbmdlVmFs
dWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVW5pY29kZVJhbmdlVmFs
dWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzcxRjUzRTgwRDI3MDRGOTAwRUNF
MEQ1IC8qIENTU1VuaWNvZGVSYW5nZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENTU1VuaWNvZGVSYW5nZVZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMzcyQURBMzcxOTdGNDdCOTAwRkM1MDFFIC8qIFByb3RlY3Rpb25TcGFjZUNv
Y29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb3RlY3Rpb25TcGFjZUNv
Y29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3MkFEQTM5MTk3RjY4NzYwMEZD
NTAxRSAvKiBQcm90ZWN0aW9uU3BhY2VDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFByb3RlY3Rpb25TcGFjZUNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkzNzJDMDBDMzEyOTYxMUYxMDA1Qzk1NzUgLyogVGV4dEJvdW5kYXJpZXMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dEJvdW5kYXJpZXMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNzJDMDBEODEyOTYxOUY4MDA1Qzk1
NzUgLyogRmluZE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlu
ZE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc1Q0QyMzExMTlENDND
ODAwQTJBODU5IC8qIEh5cGhlbmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEh5cGhlbmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3NkRDQ0Uw
MTNCNEY5NjYwMDJFQkVGQyAvKiBUZXh0UnVuLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFRleHRSdW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
NzcyQjA5NTE2NTM1ODU2MDAwQTQ5Q0EgLyogUG9wdXBPcGVuaW5nT2JzZXJ2ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9wdXBPcGVuaW5nT2JzZXJ2ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc3NEFCQTMwRkEyMUVCNDAwQUQ3REU5IC8qIE92ZXJs
YXBUZXN0UmVxdWVzdENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBP
dmVybGFwVGVzdFJlcXVlc3RDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Mzc3QTNBOEYxNUVGQ0U5QTAwNTlGNUM3IC8qIE5hdGl2ZUltYWdlQ0cuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF0aXZlSW1hZ2VDRy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTM3OTE5QzIxMEI3RDE4ODYwMEE1Njk5OCAvKiBQb3NpdGlvbkl0
ZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3NpdGlv
bkl0ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc5MTlDMjIwQjdE
MTg4NjAwQTU2OTk4IC8qIFBvc2l0aW9uSXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBvc2l0aW9uSXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMzc5MjkxNzgxOTg1RUYzOTAwRjRCNjYxIC8qIENyZWRlbnRpYWxCYXNlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyZWRlbnRpYWxCYXNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTM3OTI5MTdCMTk4NzY3OEYwMEY0QjY2MSAvKiBDcmVkZW50aWFs
Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDcmVkZW50
aWFsQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3OTI5MTdDMTk4NzY3
OEYwMEY0QjY2MSAvKiBDcmVkZW50aWFsQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ3JlZGVudGlhbENvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTM3OTkxOTk0MTIwMERERjQwMEVBMDQxQyAvKiBXT0ZGRmlsZUZvcm1hdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXT0ZGRmlsZUZvcm1hdC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3OTkxOTk1MTIwMERERjQwMEVBMDQxQyAvKiBXT0ZGRmls
ZUZvcm1hdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXT0ZGRmlsZUZvcm1h
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzNzk5MTlCMTEyMDBERTUwMDBFQTA0
MUMgLyogbGliei5keWxpYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZHlsaWIiOyBuYW1lID0gbGliei5keWxpYjsgcGF0
aCA9IC91c3IvbGliL2xpYnouZHlsaWI7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CisJ
CTM3OUUzNzE0MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFibGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUXVvdGVkUHJpbnRhYmxlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc5RTM3MTUxMzczNkE2NjAwQjlFOTE5IC8qIFF1b3Rl
ZFByaW50YWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBRdW90ZWRQcmlu
dGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc5RTYxQzUxMjZDQTVDMzAw
QjYzRThEIC8qIEJhc2VCdXR0b25JbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQmFzZUJ1dHRvbklucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTM3OUU2MUM2MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNlQnV0dG9uSW5wdXRU
eXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VCdXR0b25JbnB1dFR5
cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzc5RTYxQzcxMjZDQTVDMzAwQjYz
RThEIC8qIEJhc2VDaGVja2FibGVJbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQmFzZUNoZWNrYWJsZUlucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTM3OUU2MUM4MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNlQ2hlY2thYmxl
SW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VDaGVja2Fi
bGVJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzdBQ0NFNjIwREEy
QUE5NjAwODlFNjAyIC8qIEZvbnREZXNjcmlwdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBGb250RGVzY3JpcHRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkzN0JBQUU1NzE5ODBEMUREMDA1REZFNzEgLyogUHJvdGVjdGlvblNwYWNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb3RlY3Rpb25TcGFjZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0MyMzgyMDEwOThDODQyMDBFRjlGNzIgLyogQ29t
cGxleFRleHRDb250cm9sbGVyQ29yZVRleHQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBDb21wbGV4VGV4dENvbnRyb2xsZXJDb3JlVGV4dC5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzdDNzM4RTgxRURCRDJFRDAwM0YyQjBCIC8qIFBlcmZvcm1h
bmNlTWFyay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZU1h
cmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzdDNzM4RUExRURCRDM4MTAwM0Yy
QjBCIC8qIFBlcmZvcm1hbmNlTWVhc3VyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQZXJmb3JtYW5jZU1lYXN1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzdDNzM4RUMxRURCRDVCNzAwM0YyQjBCIC8qIFNWR1Vua25vd25FbGVtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1Vua25vd25FbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTM3QzczOEVFMUVEQkQ3MTgwMDNGMkIwQiAvKiBNYXRoTUxVbmtu
b3duRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxVbmtu
b3duRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0M3MzhGMTFFREJE
RTg3MDAzRjJCMEIgLyogRGF0ZVRpbWVDaG9vc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERhdGVUaW1lQ2hvb3Nlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkzN0M3MzhGMjFFREJERTg3MDAzRjJCMEIgLyogRGF0ZVRpbWVDaG9vc2VyQ2xpZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGVUaW1lQ2hvb3NlckNsaWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0Q0NTZGQjFBOUE1MEI2MDAzMzMwQTEgLyog
TG9jYWxpemFibGVTdHJpbmdzLnBtICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucGVybDsgbmFtZSA9IExvY2FsaXphYmxlU3RyaW5n
cy5wbTsgcGF0aCA9IFNjcmlwdHMvTG9jYWxpemFibGVTdHJpbmdzLnBtOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkzN0REQ0Q5RDEzODQ0RkZBMDAwOEI3OTMgLyogQXJjaGl2ZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcmNoaXZlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzdFMzUyNEExMjQ1MEM1MjAwQkFGNUQ5IC8qIElucHV0
VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnB1dFR5cGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0UzNTI0QzEyNDUwQzY2MDBCQUY1
RDkgLyogSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElucHV0
VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0Y4MThGQjBENjU3NjA2MDA1
RTFGMDUgLyogV2ViQ29yZVVSTFJlc3BvbnNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdlYkNvcmVVUkxSZXNwb25zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkzN0Y4MThGQzBENjU3NjA2MDA1RTFGMDUgLyogV2ViQ29yZVVSTFJlc3BvbnNlLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29yZVVSTFJlc3BvbnNlLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzN0ZENDI5NzExODM2ODQ2MDA5M0MwMjkg
LyogVHJlZURlcHRoTGltaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJl
ZURlcHRoTGltaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzg3QUU5NTgxRThF
OTJFRjAwMDBERTk2IC8qIEpTV2ViR1BVU2l6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1dlYkdQVVNpemUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkzODdBRTk1OTFFOEU5MkVGMDAwMERFOTYgLyogSlNXZWJHUFVTaXplLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVU2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkzOEYyM0FBRTFFOEU4M0M0MDBDRTQ2RjUgLyogSlNXZWJHUFVDb21wdXRl
Q29tbWFuZEVuY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNXZWJHUFVDb21wdXRlQ29tbWFuZEVuY29kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzOEYyM0FCMDFFOEU4M0QwMDBDRTQ2RjUgLyogSlNXZWJHUFVDb21wdXRlQ29tbWFu
ZEVuY29kZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHUFVDb21w
dXRlQ29tbWFuZEVuY29kZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzhGMjNB
QjExRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0ZVBpcGVsaW5lU3RhdGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHUFVDb21wdXRlUGlwZWxp
bmVTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM4RjIzQUIyMUU4RTgz
RDAwMENFNDZGNSAvKiBKU1dlYkdQVUNvbXB1dGVQaXBlbGluZVN0YXRlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR1BVQ29tcHV0ZVBpcGVsaW5lU3RhdGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJM0FDNjQ4QjExMjlFMTQ2NTAwQzNFQjI1IC8qIEVk
aXRpbmdCb3VuZGFyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZGl0aW5n
Qm91bmRhcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJM0JCNkI4MEYyMkE3RDMx
MTAwM0EyQTY5IC8qIFRhYlNpemUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VGFiU2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzQzI0NEZFNEEzNzVBQzYz
M0Y4OEJFNkYgLyogUmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZW5kZXJMYXllck1vZGVsT2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTNDMjQ0RkU1QTM3NUFDNjMzRjg4QkU2RiAvKiBSZW5kZXJMYXllck1vZGVs
T2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckxh
eWVyTW9kZWxPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzRjJCMzNF
OTE2NUFGMTU1MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzRjJCMzNFQTE2NUFGMTU1MDBFMzk4N0Mg
LyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJM0YzQkI1ODIxRTcwOUVFNDAwQzcwMUYyIC8qIENvcmVBdWRpb0NhcHR1cmVTb3VyY2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29yZUF1ZGlvQ2FwdHVy
ZVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTNGM0JCNTgzMUU3MDlF
RTQwMEM3MDFGMiAvKiBDb3JlQXVkaW9DYXB0dXJlU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENvcmVBdWRpb0NhcHR1cmVTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJM0Y0MkIzMUIxODgxMTkxQjAwMjc4QUFDIC8qIFdlYlZpZGVvRnVsbHNj
cmVlbkNvbnRyb2xsZXJBVktpdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJM0Y0MkIzMUMxODgxMTkxQjAwMjc4QUFDIC8qIFdlYlZpZGVvRnVsbHNjcmVlbkNv
bnRyb2xsZXJBVktpdC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJM0Y4MDIwMzExRTlFMzgxRDAwREVDNjFEIC8qIENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29yZUF1ZGlv
Q2FwdHVyZURldmljZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTNGODAyMDMy
MUU5RTM4MUQwMERFQzYxRCAvKiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvcmVBdWRpb0NhcHR1cmVEZXZpY2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJM0Y4MDIwMzMxRTlFMzgxRDAwREVDNjFEIC8qIENvcmVBdWRp
b0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IENvcmVBdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJM0Y4MDIwMzQxRTlFMzgxRDAwREVDNjFEIC8qIENvcmVBdWRpb0NhcHR1
cmVEZXZpY2VNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvcmVB
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTNGQkM0QUYxMTg5ODgxNTYwMDQ2RUUzOCAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzRkJD
NEFGMjE4OTg4MTU2MDA0NkVFMzggLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNl
QVZLaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwMjRGQzgyM0NGMjU0RjAw
RkRGOThFIC8qIFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTA3OTA4QTFGQzNFNEYyMDA2MUIyN0EgLyogQ2xpZW50T3JpZ2luLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENsaWVudE9yaWdpbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MTA5MzgyQzIzNDc4NTBFMDA5NDI4QkEgLyogSlNBYm9ydFNpZ25hbEN1
c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0Fib3J0U2lnbmFsQ3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwQThFRjQyNEY4MjNCOTAwNEY5MDcwIC8qIFRl
eHRFbmNvZGVyU3RyZWFtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBUZXh0RW5jb2RlclN0cmVhbS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMEE4RUY2MjRGODIzQkEwMDRGOTA3MCAvKiBUZXh0RW5j
b2RlclN0cmVhbS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IFRleHRFbmNvZGVyU3RyZWFtLmpz
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBBOEVGNzI0RjhGM0Y2MDA0RjkwNzAg
LyogVGV4dEVuY29kZXJTdHJlYW1FbmNvZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBUZXh0RW5jb2RlclN0cmVhbUVu
Y29kZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBBOEVGODI0RjhGNDdB
MDA0RjkwNzAgLyogVGV4dEVuY29kZXJTdHJlYW1FbmNvZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFRleHRFbmNvZGVyU3RyZWFtRW5jb2Rlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxMEE4RUY5MjRGOEY0N0IwMDRGOTA3MCAvKiBUZXh0RW5jb2RlclN0cmVhbUVuY29k
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEVuY29kZXJTdHJlYW1FbmNvZGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMEI3RTcxMTA0NUZBQjAwMEQ4MjI0RiAvKiBKU01lc3Nh
Z2VFdmVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U01lc3NhZ2VFdmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
MEJBMTMxMjU3MEZFNTcwMDJFMkY4QSAvKiBMaWJXZWJSVENSdHBUcmFuc2Zvcm1hYmxlRnJhbWUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDUnRwVHJh
bnNmb3JtYWJsZUZyYW1lLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENSdHBUcmFuc2Zv
cm1hYmxlRnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBCQ0Y1MzI2
RjBDRDhCMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3JpcHRpb25Jbml0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0xvY2FsU2Vzc2lvbkRlc2NyaXB0aW9uSW5p
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBCQ0Y1NTI2RjBDRDhDMDA0MEIx
MjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3JpcHRpb25Jbml0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBSVENMb2NhbFNlc3Npb25EZXNjcmlwdGlvbkluaXQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTBFNDQ1RjIzNDM3M0FEMDAwMTczRDQgLyogTGliV2ViUlRDU29j
a2V0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBMaWJXZWJS
VENTb2NrZXRJZGVudGlmaWVyLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDU29ja2V0SWRl
bnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBGNTY1NTI0RkNGNzA1
MDBBMkU1MEMgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uSW5pdC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gUlRDU2Vzc2lvbkRlc2NyaXB0aW9uSW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxMEY1NjU3MjRGQ0Y3QzcwMEEyRTUwQyAvKiBSVENJY2VDYW5kaWRhdGVJ
bml0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENJY2VDYW5kaWRhdGVJbml0LmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEwRjU2NTgyNEZDRjg1NDAwQTJFNTBDIC8q
IFJUQ1NkcFR5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1NkcFR5cGUuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTBGNTY1OTI0RkNGOTU3MDBBMkU1MEMgLyog
UlRDSWNlQ2FuZGlkYXRlSW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
VENJY2VDYW5kaWRhdGVJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMEY1
NjVBMjRGQ0Y5RTYwMEEyRTUwQyAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25Jbml0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkluaXQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExMDBDN0UyM0Y3Mzk4MjAwMUJDMzNCIC8q
IFdlYlNvY2tldENoYW5uZWxJbnNwZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViU29ja2V0Q2hhbm5lbEluc3BlY3Rvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MTEwMEM3RjIzRjczQTU2MDAxQkMzM0IgLyogV2ViU29ja2V0Q2hhbm5lbEluc3Bl
Y3Rvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTb2NrZXRD
aGFubmVsSW5zcGVjdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExMDNB
QTcxRTM5NzkwQTAwNzY5RjAzIC8qIFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWFsdGltZU91dGdvaW5nQXVkaW9T
b3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEwM0FBNzFFMzk3OTBB
MDA3NjlGMTQgLyogUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlQ29jb2EuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNl
Q29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEwM0FBODFFMzk3OTBB
MDA3NjlGMDMgLyogUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTEwM0FBODFFMzk3OTBBMDA3NjlGMTQgLyogUmVhbHRp
bWVPdXRnb2luZ0F1ZGlvU291cmNlQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDExMDNBQTkxRTM5NzkwQTAwNzY5RjAzIC8qIFJlYWx0aW1lSW5jb21p
bmdBdWRpb1NvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGlt
ZUluY29taW5nQXVkaW9Tb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEx
MDNBQTkxRTM5NzkwQTAwNzY5RjE0IC8qIFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZUNvY29h
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1lSW5jb21pbmdBdWRp
b1NvdXJjZUNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMTAzQUFBMUUz
OTc5MEEwMDc2OUYwMyAvKiBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExMDNBQUExRTM5NzkwQTAwNzY5
RjE0IC8qIFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZUNvY29hLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZUNvY29h
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExMTRBN0EyMzE3QjM5RTAwQjU2
MDA3IC8qIFdvcmtlck1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdvcmtlck1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMTE0QTdDMjMxN0IzOUUwMEI1NjAwNyAvKiBXb3JrZXJNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3JrZXJNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMTIyM0I4
MjYwMjQ0RkUwMEIwQTBCNiAvKiBTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRl
bnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTEyMjNDMzI2MDM1NjdD
MDBCMEEwQjYgLyogRGV0YWNoZWRSVENEYXRhQ2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXRhY2hlZFJUQ0RhdGFDaGFubmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxMTJCNTNGMUY5RjlDOUIwMEU2Nzg3NSAvKiBTZXJ2aWNlV29ya2VyVGhy
ZWFkUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtl
clRocmVhZFByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMTJCNTQxMUY5
RjlDOUMwMEU2Nzg3NSAvKiBTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExNEZFMkYyNUJFQkQxODAwOUQ5RjIwIC8q
IFJUQ1J0Y3BQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJU
Q1J0Y3BQYXJhbWV0ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMTRGRTMx
MjVCRUJEMTgwMDlEOUYyMCAvKiBSVENSdGNwUGFyYW1ldGVycy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gUlRDUnRjcFBhcmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTE4OUVGNzFBRDgyMzI4MDBCOTBBMEQgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29u
dHJvbGxlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1EZWZhdWx0
Q29udHJvbGxlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMTg5RUY3MUFE
ODIzMjgwMEI5M0Y2NCAvKiBSZWFkYWJsZUJ5dGVTdHJlYW1Db250cm9sbGVyLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBSZWFkYWJsZUJ5dGVTdHJlYW1Db250cm9sbGVyLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDExODlFRjcxQUQ4MjMyODAwQjk1NjcyIC8qIFJlYWRh
YmxlU3RyZWFtQllPQlJlcXVlc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxl
U3RyZWFtQllPQlJlcXVlc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTIw
OUUyNDI1N0EyRkJCMDAxMjBBQ0EgLyogU0ZyYW1lVXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU0ZyYW1lVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDEyMDlFMjYyNTdBMkZCQjAwMTIwQUNBIC8qIFNGcmFtZVV0aWxzLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNGcmFtZVV0aWxzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDEyMDlFOTEyMTZENTkzQzAwQTczQTEyIC8qIFJUQ0NlcnRpZmlj
YXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENDZXJ0aWZpY2F0ZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMjA5RTkzMjE2RDVDNzkwMEE3M0ExMiAvKiBSVEND
ZXJ0aWZpY2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENDZXJ0aWZp
Y2F0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTIwOUU5NDIxNkVBNjlBMDBB
NzNBMTIgLyogUlRDQ2VydGlmaWNhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUlRDQ2VydGlmaWNhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MTIwOUU5NTIxNkVDMzRFMDBBNzNBMTIgLyogTGliV2ViUlRDQ2VydGlmaWNhdGVHZW5lcmF0
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGliV2ViUlRDQ2VydGlmaWNh
dGVHZW5lcmF0b3IuaDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENDZXJ0aWZpY2F0ZUdlbmVy
YXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTIwOUU5NjIxNkVDMzRGMDBB
NzNBMTIgLyogTGliV2ViUlRDQ2VydGlmaWNhdGVHZW5lcmF0b3IuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDQ2VydGlmaWNhdGVHZW5lcmF0b3IuY3Bw
OyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ0NlcnRpZmljYXRlR2VuZXJhdG9yLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEyN0Q1MzYwRjhBQUIxRDAwRTQyNEY1IC8qIFNj
cmlwdFN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcmlw
dFN0YXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEyOUM5ODAxRjU4NjFD
NzAwOUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZWFkYWJsZVN0cmVhbVNpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDEyOUM5ODExRjU4NjFDNzAwOUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1TaW5rLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEyOUM5ODcxRjU4NjYyRDAwOUQ3NDAzIC8qIFJlYWRhYmxl
U3RyZWFtU2luay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWFk
YWJsZVN0cmVhbVNpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTJCQTVG
RTIxOEM2NTE4MDAzNjU0NzQgLyogUlRDUE11eFBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSVENQTXV4UG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxMkRFNEI2MjE5Mjg1QkYwMDc1RjNBNyAvKiBSVENSdHBDYXBhYmlsaXRpZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwQ2FwYWJpbGl0aWVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMzAxNUQ1MUM3QjU3MDQwMDA5MUM2RSAvKiBGZXRj
aFJlc3BvbnNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZldGNo
UmVzcG9uc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTMwMTVENTFDN0I1
NzA0MDAwOTFDNkYgLyogRmV0Y2hCb2R5U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEZldGNoQm9keVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMzAxNUQ2MUM3QjU3MDQwMDA5MUM2RSAvKiBGZXRjaFJlc3BvbnNlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoUmVzcG9uc2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzMDE1RDYxQzdCNTcwNDAwMDkxQzZGIC8qIEZldGNoQm9k
eVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaEJvZHlTb3Vy
Y2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzMDE1RDcxQzdCNTcwNDAwMDkx
QzZFIC8qIEZldGNoUmVzcG9uc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZldGNoUmVz
cG9uc2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTMxNTE4NDIzNTc3NDVF
MDAxMTVFNkUgLyogQXVkaW9EZXN0aW5hdGlvbkNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEF1ZGlvRGVzdGluYXRpb25Db2NvYS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxMzE1MTg2MjM1Nzc0NUUwMDExNUU2RSAvKiBBdWRpb0Rlc3RpbmF0aW9uQ29jb2EuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQXVkaW9EZXN0aW5hdGlvbkNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxMzFGM0IxMUY5NTUyODEwMDU5OTk1QSAvKiBKU0ZldGNoRXZlbnRDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGZXRjaEV2ZW50Q3Vz
dG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzMUYzQjQxRjk1NUJDMzAw
NTk5OTVBIC8qIEV4dGVuZGFibGVFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRXh0ZW5kYWJsZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTMxRjNCNTFGOTU1QkM1MDA1OTk5NUEgLyogRXh0ZW5kYWJsZUV2ZW50SW5pdC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRXh0ZW5kYWJsZUV2ZW50SW5pdC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMzNDQjg5MjBGODBFODYwMEU4OUIxMSAvKiBNZWRpYVN0
cmVhbUF1ZGlvU291cmNlQ29jb2EuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDEzNjlFNTUyMThDNzZFMzAwNzkyRTI5IC8qIFJUQ1J0cENhcGFiaWxpdGll
cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUnRwQ2FwYWJpbGl0aWVzLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzNkM1NzYyMzk4RTVCNDAwMjQ5N0QzIC8qIElu
dGVybmFsc01hcExpa2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50ZXJuYWxzTWFwTGlrZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTM2QzU3ODIzOThFNUI1MDAyNDk3RDMgLyogSW50
ZXJuYWxzTWFwTGlrZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRlcm5hbHNNYXBMaWtlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzNkM1NzkyMzk4RTVCNjAwMjQ5N0Qz
IC8qIEludGVybmFsc01hcExpa2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEludGVybmFsc01hcExpa2UuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTM2RUMwNzIzODM4NzQ2MDAwQURCQ0UgLyogSW50
ZXJuYWxzU2V0TGlrZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW50ZXJuYWxzU2V0TGlr
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMzZFQzA5MjM4Mzg3QzMwMDBB
REJDRSAvKiBJbnRlcm5hbHNTZXRMaWtlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEludGVybmFsc1NldExpa2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTM2RUMwQTIzODM4N0M0MDAwQURCQ0UgLyogSW50ZXJuYWxzU2V0TGlrZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnRlcm5hbHNTZXRMaWtlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxMzgwQzIwMUYzNDM2OEEwMDE1NUZEQSAvKiBET01DYWNo
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBET01DYWNoZS5jcHA7IHBhdGggPSBNb2R1bGVzL2Nh
Y2hlL0RPTUNhY2hlLmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk0MTM4MEMy
MTFGMzQzNjhEMDAxNTVGREEgLyogRE9NQ2FjaGVTdG9yYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IERPTUNhY2hlU3RvcmFnZS5jcHA7IHBhdGggPSBNb2R1bGVzL2NhY2hlL0RPTUNhY2hlU3Rv
cmFnZS5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJNDEzODBDMjIxRjM0MzY5
MDAwMTU1RkRBIC8qIERPTUNhY2hlU3RvcmFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBET01DYWNoZVN0
b3JhZ2UuaDsgcGF0aCA9IE1vZHVsZXMvY2FjaGUvRE9NQ2FjaGVTdG9yYWdlLmg7IHNvdXJjZVRy
ZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJNDEzODBDMjMxRjM0MzY5NDAwMTU1RkRBIC8qIERPTUNh
Y2hlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IG5hbWUgPSBET01DYWNoZS5pZGw7IHBhdGggPSBNb2R1bGVzL2NhY2hlL0RPTUNhY2hl
LmlkbDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk0MTM4MEMyNDFGMzQzNjk3MDAx
NTVGREEgLyogRE9NQ2FjaGVTdG9yYWdlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBET01DYWNoZVN0b3JhZ2UuaWRsOyBw
YXRoID0gTW9kdWxlcy9jYWNoZS9ET01DYWNoZVN0b3JhZ2UuaWRsOyBzb3VyY2VUcmVlID0gU09V
UkNFX1JPT1Q7IH07CisJCTQxMzgwQzI1MUYzNDM2OUEwMDE1NUZEQSAvKiBET01DYWNoZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBET01DYWNoZS5oOyBwYXRoID0gTW9kdWxlcy9jYWNoZS9ET01DYWNoZS5o
OyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCTQxMzgwQzJBMUYzNDNFMkYwMDE1NUZE
QSAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlK0NhY2hlcy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gIldpbmRvd09y
V29ya2VyR2xvYmFsU2NvcGUrQ2FjaGVzLmlkbCI7IHBhdGggPSAiTW9kdWxlcy9jYWNoZS9XaW5k
b3dPcldvcmtlckdsb2JhbFNjb3BlK0NhY2hlcy5pZGwiOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCTQxMzhEMzMzMTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVudENvbnRleHQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRDb250ZXh0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxMzhEMzM0MTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVudENvbnRl
eHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRDb250ZXh0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzOEY4NTUxRDI1M0VFRTAwMUNC
NjFFIC8qIEpTRE9NSXRlcmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNET01JdGVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
MzhGODU2MUQyNTNFRUUwMDFDQjYxRSAvKiBKU0RPTUl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NSXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDEzQTFBOUYyMzcxQThBODAwN0VGM0E1IC8qIEpTRE9NU2V0TGlrZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0RPTVNldExpa2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDEzQTFBQTEyMzcxQThBOTAwN0VGM0E1IC8qIEpTRE9NU2V0TGlrZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0RPTVNldExpa2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MTNDMkMzMzFCQzI5QTdCMDA3NTIwNEMgLyogSlNET01Db25zdHJ1Y3Rvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnN0cnVjdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxM0M4QjI0MjU1MkVFQTkwMEU2NTA1NSAvKiBSVENSdHBSZWNlaXZl
citUcmFuc2Zvcm0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJSVENSdHBSZWNlaXZlcitU
cmFuc2Zvcm0uaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzQzhCMjYyNTUy
RUVBOTAwRTY1MDU1IC8qIFJUQ1J0cFNlbmRlcitUcmFuc2Zvcm0uaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9ICJSVENSdHBTZW5kZXIrVHJhbnNmb3JtLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxM0M4QjJFMjU1MkYyN0IwMEU2NTA1NSAvKiBSVENSdHBTZW5kZXJXaXRo
VHJhbnNmb3JtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1J0cFNlbmRl
cldpdGhUcmFuc2Zvcm0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzQzhCMkYy
NTUyRjI3QjAwRTY1MDU1IC8qIFJUQ1J0cFRyYW5zZm9ybS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSVENSdHBUcmFuc2Zvcm0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDEzQzhCMzAyNTUyRjI3QzAwRTY1MDU1IC8qIFJUQ1J0cFJlY2VpdmVyV2l0aFRyYW5z
Zm9ybS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBSZWNlaXZlcldp
dGhUcmFuc2Zvcm0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzQ0MxMUMyNUU3
RDk4RDAwRDU5QzRCIC8qIFJUQ1ByaW9yaXR5VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSVENQcmlvcml0eVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDEzQ0NENDgyMERFMDEzQzAwNjVBMjFBIC8qIE1vY2tNZWRpYURldmljZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrTWVkaWFEZXZpY2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDEzRTAwNzcxREIwRTRERTAwMjM0MUQyIC8qIE1lbW9yeVJlbGVh
c2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVtb3J5UmVsZWFz
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxM0UwMDc4MURCMEU0REUwMDIz
NDFEMiAvKiBNZW1vcnlSZWxlYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lbW9yeVJlbGVhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzRTAwN0Ix
REIwRTcwNzAwMjM0MUQyIC8qIE1lbW9yeVJlbGVhc2VDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lbW9yeVJlbGVhc2VDb2NvYS5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDEzRkM0Q0QxRkQxREQ4QzAwNTQxQzRCIC8qIFNlcnZpY2VX
b3JrZXJDbGllbnRRdWVyeU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU2VydmljZVdvcmtlckNsaWVudFF1ZXJ5T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTQxODlFRjI1NjJERjBDMDAzNjM0MTcgLyogUlRDUnRwU2NyaXB0VHJhbnNm
b3JtUHJvdmlkZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFNjcmlwdFRyYW5z
Zm9ybVByb3ZpZGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0MTg5RjAy
NTYyREY1NTAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlwdFRyYW5zZm9ybS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gUlRDUnRwU2NyaXB0VHJhbnNmb3JtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDE0MTg5RjEyNTYyREY1NjAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlwdFRyYW5z
Zm9ybWVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENSdHBTY3JpcHRUcmFuc2Zvcm1l
ci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDE4OUYyMjU2MkUzMkIwMDM2
MzQxNyAvKiBSVENSdHBTY3JpcHRUcmFuc2Zvcm0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUlRDUnRwU2NyaXB0VHJhbnNmb3JtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxNDE4OUYzMjU2MkUzMkMwMDM2MzQxNyAvKiBSVENSdHBTY3JpcHRUcmFuc2Zvcm1l
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENSdHBTY3JpcHRU
cmFuc2Zvcm1lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDE4OUY0MjU2
MkUzMkMwMDM2MzQxNyAvKiBSVENSdHBTY3JpcHRUcmFuc2Zvcm0uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDUnRwU2NyaXB0VHJhbnNmb3JtLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0MTg5RjUyNTYyRTMyRDAwMzYzNDE3IC8qIFJUQ1J0
cFNjcmlwdFRyYW5zZm9ybWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJU
Q1J0cFNjcmlwdFRyYW5zZm9ybWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
NDE4OUY5MjU2NDE2NTAwMDM2MzQxNyAvKiBSVENFbmNvZGVkQXVkaW9GcmFtZS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUlRDRW5jb2RlZEF1ZGlvRnJhbWUuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTQxODlGQTI1NjQxNjUxMDAzNjM0MTcgLyogUlRDRW5jb2RlZFZp
ZGVvRnJhbWUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0VuY29kZWRWaWRlb0ZyYW1l
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0MTg5RkIyNTY0MTc1NzAwMzYz
NDE3IC8qIFJUQ0VuY29kZWRBdWRpb0ZyYW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJUQ0VuY29kZWRBdWRpb0ZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxNDE4OUZEMjU2NDE3NjYwMDM2MzQxNyAvKiBSVENFbmNvZGVkVmlkZW9GcmFtZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENFbmNvZGVkVmlkZW9GcmFtZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTQxODlGRTI1NjQxOEUwMDAzNjM0MTcgLyog
UlRDRW5jb2RlZEF1ZGlvRnJhbWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUlRDRW5jb2RlZEF1ZGlvRnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTQxODlGRjI1NjQxOEU3MDAzNjM0MTcgLyogUlRDRW5jb2RlZFZpZGVvRnJhbWUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDRW5jb2RlZFZpZGVvRnJh
bWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTQxOEEwMDI1NjQzNTk3MDAz
NjM0MTcgLyogV3JpdGFibGVTdHJlYW1TaW5rLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
cml0YWJsZVN0cmVhbVNpbmsuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTQx
OEEwMjI1NjQzNTk4MDAzNjM0MTcgLyogV3JpdGFibGVTdHJlYW1TaW5rLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdyaXRhYmxlU3RyZWFtU2luay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTQxOEEwMzI1NjQzRTEyMDAzNjM0MTcgLyogSW50ZXJuYWxXcml0
YWJsZVN0cmVhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnRl
cm5hbFdyaXRhYmxlU3RyZWFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0
MThBMDQyNTY0M0UxMzAwMzYzNDE3IC8qIEludGVybmFsV3JpdGFibGVTdHJlYW0uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW50ZXJuYWxXcml0YWJsZVN0cmVhbS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTQxOEEwNTI1NjY2MEFGMDAzNjM0MTcgLyogUlRD
RW5jb2RlZEZyYW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJU
Q0VuY29kZWRGcmFtZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDE4QTA2
MjU2NjYwQjAwMDM2MzQxNyAvKiBSVENFbmNvZGVkRnJhbWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUlRDRW5jb2RlZEZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxNDQ2MEEwMjQxMjk5NDEwMDgxNEJFNyAvKiBNZWRpYVNlc3Npb25JZGVudGlmaWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU2Vzc2lvbklkZW50aWZp
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0NTE2REQyNkNDMDQwRDAwQUFB
QkUwIC8qIExpYldlYlJUQ0ljZVRyYW5zcG9ydEJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGli
V2ViUlRDSWNlVHJhbnNwb3J0QmFja2VuZC5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ0lj
ZVRyYW5zcG9ydEJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0NTE2
REYyNkNDMDQwRDAwQUFBQkUwIC8qIExpYldlYlJUQ0ljZVRyYW5zcG9ydEJhY2tlbmQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDSWNlVHJhbnNwb3J0QmFja2VuZC5jcHA7IHBhdGgg
PSBsaWJ3ZWJydGMvTGliV2ViUlRDSWNlVHJhbnNwb3J0QmFja2VuZC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxNDUxNkUwMjZDQzA0MjEwMEFBQUJFMCAvKiBSVENJY2VUcmFu
c3BvcnRCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0ljZVRyYW5zcG9ydEJhY2tlbmQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0NTE2RTUyNkNFNTIzRTAwQUFBQkUwIC8q
IExpYldlYlJUQ1NjdHBUcmFuc3BvcnRCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJU
Q1NjdHBUcmFuc3BvcnRCYWNrZW5kLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDU2N0cFRy
YW5zcG9ydEJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0NTE2RTcy
NkNFNTIzRTAwQUFBQkUwIC8qIExpYldlYlJUQ1NjdHBUcmFuc3BvcnRCYWNrZW5kLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IExpYldlYlJUQ1NjdHBUcmFuc3BvcnRCYWNrZW5kLmNwcDsgcGF0aCA9
IGxpYndlYnJ0Yy9MaWJXZWJSVENTY3RwVHJhbnNwb3J0QmFja2VuZC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxNDUxNkU4MjZDRTUyNTMwMEFBQUJFMCAvKiBSVENTY3RwVHJh
bnNwb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1NjdHBUcmFuc3BvcnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTQ1MTZFOTI2Q0U1MjU0MDBBQUFCRTAgLyogUlRD
U2N0cFRyYW5zcG9ydC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDU2N0cFRyYW5zcG9ydC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxNDUxNkVBMjZDRTUyNTQwMEFBQUJFMCAvKiBSVENTY3RwVHJh
bnNwb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1NjdHBUcmFuc3BvcnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDE0NTE2RUIyNkNFNTI2NjAwQUFBQkUwIC8qIFJUQ1NjdHBUcmFu
c3BvcnRCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1NjdHBU
cmFuc3BvcnRCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDUxNkVE
MjZDRTU1NkIwMEFBQUJFMCAvKiBSVENTY3RwVHJhbnNwb3J0U3RhdGUuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1Nj
dHBUcmFuc3BvcnRTdGF0ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDUx
NkVFMjZDRTU1NkMwMEFBQUJFMCAvKiBSVENTY3RwVHJhbnNwb3J0U3RhdGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUlRDU2N0cFRyYW5zcG9ydFN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxNDU5OEJFMjNDOEFBQjgwMDJCOUNDOCAvKiBTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2FtcGxlQnVmZmVyRGlzcGxheUxh
eWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDU5OEMwMjNDOEFENzgwMDJC
OUNDOCAvKiBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTQ1OThDMTIzQzhBRDc5MDAyQjlDQzggLyogTG9jYWxT
YW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDE0N0UyQjIxQzg4MzM3RjAwQTdFNzE1IC8qIEZldGNoQm9keU93
bmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoQm9keU93bmVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDdFMkIzMUM4OTkxMjYwMEE3RTcxNSAv
KiBGZXRjaEJvZHlPd25lci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBGZXRjaEJvZHlPd25lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNDdF
MkI0MUM4OTkxMjYwMEE3RTcxNSAvKiBGZXRjaExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaExvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxNDdFMkI1MUM4OTkxMjYwMEE3RTcxNSAvKiBGZXRjaExvYWRlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaExvYWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTQ3RTJCNjFDODk5MTI2MDBBN0U3MTUgLyogRmV0Y2hMb2FkZXJD
bGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmV0Y2hMb2FkZXJDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0QUQzRkMyMTQ5ODQyMDAwNTIx
Njc2IC8qIFJUQ1J0cFNlbmRQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1J0cFNlbmRQ
YXJhbWV0ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNEFEM0ZFMjE0OTg0
MjAwMDUyMTY3NiAvKiBSVENSdHBTZW5kUGFyYW1ldGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUnRwU2VuZFBh
cmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTRBRDNGRjIxNDk4
RDMwMDA1MjE2NzYgLyogUlRDUnRwQ29kaW5nUGFyYW1ldGVycy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
VENSdHBDb2RpbmdQYXJhbWV0ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
NEFENDAwMjE0OThEMzEwMDUyMTY3NiAvKiBSVENSdHBEZWNvZGluZ1BhcmFtZXRlcnMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUlRDUnRwRGVjb2RpbmdQYXJhbWV0ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxNEFENDAxMjE0OThEMzEwMDUyMTY3NiAvKiBSVENSdHBEZWNvZGluZ1Bh
cmFtZXRlcnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cERlY29kaW5nUGFyYW1ldGVycy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNEFENDAyMjE0OThEMzIwMDUyMTY3NiAvKiBSVENSdHBD
b2RpbmdQYXJhbWV0ZXJzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENSdHBDb2RpbmdQYXJhbWV0ZXJzLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE0QjdGQUIyNEQ4MUM4RjAwMzNENDQyIC8qIE1l
ZGlhUmVjb3JkZXJQcml2YXRlT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDE0QjgyMDIxRDZERjBEOTAwNzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHJ1Y3R1cmVkQ2xvbmUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTRCODIwMzFENkRGMEQ5MDA3N0VCRTMg
LyogU3RydWN0dXJlZENsb25lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0
cnVjdHVyZWRDbG9uZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTRERURFNTFG
OUZFOTE1MDA0N0M0MEQgLyogRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxNTA3MTU1MTY4NTA2NzMwMEMzQzdCMyAvKiBTZWxlY3RvckZp
bHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZWxlY3RvckZp
bHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNTA3MTU2MTY4NTA2NzMw
MEMzQzdCMyAvKiBTZWxlY3RvckZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTZWxlY3RvckZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTUw
ODAzNDFFM0YwMEFBMDA1MUQ3NUQgLyogTGliV2ViUlRDQXVkaW9Nb2R1bGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDQXVkaW9Nb2R1bGUuY3BwOyBw
YXRoID0gbGlid2VicnRjL0xpYldlYlJUQ0F1ZGlvTW9kdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDE1MDgwMzUxRTNGMDBBQTAwNTFENzVEIC8qIExpYldlYlJUQ0F1ZGlv
TW9kdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ0F1ZGlv
TW9kdWxlLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDQXVkaW9Nb2R1bGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1MEY5RUYxMkI2RTBFNzAwMDhDODYwIC8qIFNsaWRl
clRodW1iRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTbGlkZXJU
aHVtYkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1MEY5RjAxMkI2
RTBFNzAwMDhDODYwIC8qIFNsaWRlclRodW1iRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTbGlkZXJUaHVtYkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTUxRTVCNzFGQkE0Qzc1MDBFNDdFMkQgLyogU1dPcmlnaW5TdG9y
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTV09yaWdpblN0b3JlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNTFFNUI5MUZCQTRDNzYwMEU0N0UyRCAvKiBT
V09yaWdpblN0b3JlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNX
T3JpZ2luU3RvcmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU3NDc0MzFF
Mzg2OTlFMDBFOTE0RDggLyogTGliV2ViUlRDTWFjcm9zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IExpYldlYlJUQ01hY3Jvcy5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJU
Q01hY3Jvcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU3NDc0NDFFMzg2OTlF
MDBFOTE0RDggLyogTGliV2ViUlRDUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gTGliV2ViUlRDUHJvdmlkZXIuaDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENQ
cm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU3RUJGODFFM0FCMDY4
MDBBQzlGRTkgLyogTW9ja0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tMaWJXZWJSVENQZWVyQ29ubmVjdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTU3RUJGOTFFM0FCMDY4MDBBQzlGRTkgLyogTW9ja0xp
YldlYlJUQ1BlZXJDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IE1vY2tMaWJXZWJSVENQZWVyQ29ubmVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxNTg2NDlGMjNCRjdCOTMwMEEwQTYxRSAvKiBSZWFsdGltZVZpZGVvVXRp
bGl0aWVzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVhbHRp
bWVWaWRlb1V0aWxpdGllcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1OERD
QjYyNEZGQ0QxQjAwQjlEQTQxIC8qIFJUQ0ljZUNvbXBvbmVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gUlRDSWNlQ29tcG9uZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDE1OERDQjgyNEZGQ0RDMzAwQjlEQTQxIC8qIFJUQ0ljZVByb3RvY29sLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBSVENJY2VQcm90b2NvbC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxNThEQ0I5MjRGRkNEQzMwMEI5REE0MSAvKiBSVENJY2VUY3BDYW5kaWRhdGVU
eXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENJY2VUY3BDYW5kaWRhdGVUeXBlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1OERDQkEyNEZGQ0RDMzAwQjlEQTQx
IC8qIFJUQ0ljZUNhbmRpZGF0ZVR5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0lj
ZUNhbmRpZGF0ZVR5cGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU4RENC
QjI0RkZDRjYwMDBCOURBNDEgLyogUlRDSWNlUHJvdG9jb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUlRDSWNlUHJvdG9jb2wuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDE1OERDQkMyNEZGQ0Y2MDAwQjlEQTQxIC8qIFJUQ0ljZVRjcENhbmRpZGF0ZVR5cGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDSWNlVGNwQ2FuZGlkYXRlVHlw
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU4RENCRDI0RkZDRjYxMDBCOURB
NDEgLyogUlRDSWNlQ29tcG9uZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJUQ0ljZUNvbXBvbmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTU4RENC
RTI0RkZDRjYxMDBCOURBNDEgLyogUlRDSWNlQ2FuZGlkYXRlVHlwZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSVENJY2VDYW5kaWRhdGVUeXBlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxNUEzQjczMjEzOEUyNjQwMDFCNEJBQSAvKiBMaWJXZWJSVENPYnNl
cnZlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGliV2ViUlRDT2JzZXJ2
ZXJzLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDT2JzZXJ2ZXJzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxNUNEQUY2MUU2Q0UwRDMwMDRGMTFFRSAvKiBKU01lZGlhU3Ry
ZWFtVHJhY2tDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNNZWRpYVN0cmVhbVRyYWNrQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDE1RTFCQjMyMTUwMTA4MDAwMjJEQTk2IC8qIFJUQ1J0cENvbnRyaWJ1dGluZ1NvdXJjZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBDb250cmlidXRpbmdTb3Vy
Y2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1RTFCQjUyMTUwMTA4MTAwMjJE
QTk2IC8qIFJUQ1J0cENvbnRyaWJ1dGluZ1NvdXJjZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUlRDUnRwQ29udHJpYnV0aW5nU291cmNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDE1RTFCQjYyMTUwMTUyQTAwMjJEQTk2IC8qIFJUQ1J0cFN5bmNocm9uaXphdGlvblNv
dXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBTeW5jaHJvbml6
YXRpb25Tb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE1RTFCQjcyMTUw
MTUzMDAwMjJEQTk2IC8qIFJUQ1J0cFN5bmNocm9uaXphdGlvblNvdXJjZS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUlRDUnRwU3luY2hyb25pemF0aW9uU291cmNlLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2MTRBNzYxREE2NDIzNjAwNEFEMDZGIC8qIEhUVFBIZWFk
ZXJWYWx1ZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRUUEhl
YWRlclZhbHVlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNjE0QTc3MURB
NjQyMzYwMDRBRDA2RiAvKiBIVFRQSGVhZGVyVmFsdWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEhUVFBIZWFkZXJWYWx1ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDE2MkE0NEQxMDExNDVBRTAwREZGM0VEIC8qIERlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlZGljYXRlZFdv
cmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2MkE0
NEUxMDExNDVBRTAwREZGM0VEIC8qIERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNjJBNDRGMTAxMTQ1QUUwMERGRjNFRCAv
KiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTYyQTQ1NTEwMTE0NjQ3MDBERkYzRUQgLyogSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2
MkE0NTYxMDExNDY0NzAwREZGM0VEIC8qIEpTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTZBMDY5NDIzQ0NBQTlFMDAz
NDcxMDkgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlhU3RyZWFtLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2QTA2OTUyM0NDQUE5RTAwMzQ3MTA5IC8q
IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2QTA2OTYyM0NDQUE5RjAwMzQ3MTA5IC8qIEF1ZGlv
TWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQxNkNFNEE0MjI5REYxMkUwMEE4QTY4NiAvKiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2RDc1OUYyMEM2NDQx
MzAwRDAyRDJDIC8qIE5ldHdvcmtMb2FkSW5mb3JtYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTmV0d29ya0xvYWRJbmZvcm1hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MTZFMEIzNzIwOUJDM0MyMDA0QTk1RDkgLyogRmV0Y2hJZGVudGlmaWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoSWRlbnRpZmllci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTZFMjlBNTEwMkZBOTYyMDA3RkMxNEUgLyog
V29ya2VyUmVwb3J0aW5nUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V29ya2VyUmVwb3J0aW5nUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2
RUNBRTMyNUI1OENDNDAwQjM0REE1IC8qIE1lZGlhU2Vzc2lvbkdyb3VwSWRlbnRpZmllci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVNlc3Npb25Hcm91cElkZW50aWZp
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2RURCRUQyNUZGQjIyNDAwMDky
Njc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2RURCRUYyNUZGQjIyNDAwMDkyNjc1IC8qIFJUQ0Rh
dGFDaGFubmVsUmVtb3RlU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxNkVEQkY0MjYwMEQ2NzgwMDA5MjY3NSAvKiBSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRGF0YUNoYW5uZWxSZW1v
dGVIYW5kbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNkVEQkY3MjYwMEQ3
NjMwMDA5MjY3NSAvKiBSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDRGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2RURCRkYyNjAwRTc4NzAwMDkyNjc1
IC8qIFJUQ0RhdGFDaGFubmVsSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSVENEYXRhQ2hhbm5lbElkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDE2RURDMDEyNjAwRTdCMDAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3Rl
SGFuZGxlckNvbm5lY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRD
RGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyQ29ubmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTZFREMwMzI2MDBFODBGMDAwOTI2NzUgLyogUlRDRGF0YUNoYW5uZWxSZW1v
dGVTb3VyY2VDb25uZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJU
Q0RhdGFDaGFubmVsUmVtb3RlU291cmNlQ29ubmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTZGODA3OTI0NTA5RjMyMDBCNjhGMDIgLyogQ0dXaW5kb3dDYXB0dXJlU291
cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENHV2luZG93Q2FwdHVyZVNv
dXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTZGODA3QTI0NTA5RjMyMDBC
NjhGMDIgLyogQ0dEaXNwbGF5U3RyZWFtQ2FwdHVyZVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDR0Rpc3BsYXlTdHJlYW1DYXB0dXJlU291cmNlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE2RjgwN0IyNDUwOUYzMzAwQjY4RjAyIC8q
IENHV2luZG93Q2FwdHVyZVNvdXJjZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IENHV2luZG93Q2FwdHVyZVNvdXJjZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDE2RjgwN0MyNDUwOUYzMzAwQjY4RjAyIC8qIENHRGlzcGxheVN0cmVhbUNhcHR1
cmVTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0dEaXNwbGF5U3Ry
ZWFtQ2FwdHVyZVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTZGRDI1
RDI0MEVFMUFFMDA2NjYxRDggLyogTm93UGxheWluZ0luZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTm93UGxheWluZ0luZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDE3MEEyRTkxRDhDMENDMDAwMzE4NDUyIC8qIEpTRE9NV3JhcHBlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTVdyYXBwZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTcyNTNBODEzNTRCQkJDMDAzNjBGMkEgLyogTWVkaWFD
b250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNZWRpYUNvbnRyb2xUZXh0VHJhY2tDb250YWluZXJFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE3MjUzQTkxMzU0QkJCQzAwMzYwRjJB
IC8qIE1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRhaW5lckVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTczM0Q3RDI1REZCRkM1MDBBMTM2
RTUgLyogSlNSVENSdHBTRnJhbWVUcmFuc2Zvcm1DdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNSVENSdHBTRnJhbWVUcmFuc2Zvcm1DdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTc0RTkxRTI1MzVEQ0Q2MDBGRTQyMDIgLyogTWVkaWFTdHJlYW1UcmFja0F1
ZGlvU291cmNlUHJvdmlkZXJDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbVRyYWNr
QXVkaW9Tb3VyY2VQcm92aWRlckNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxNzRFOTIwMjUzNURDREQwMEZFNDIwMiAvKiBNZWRpYVN0cmVhbVRyYWNrQXVkaW9Tb3VyY2VQ
cm92aWRlckNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtVHJhY2tBdWRp
b1NvdXJjZVByb3ZpZGVyQ29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MTc2MTJBQjFFM0E5OTNCMDBDM0Q4MUQgLyogTGliV2ViUlRDTWVkaWFFbmRwb2ludC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBMaWJXZWJSVENNZWRpYUVuZHBvaW50
LmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE3NjEyQUMxRTNBOTkzQjAwQzNEODFEIC8qIExpYldl
YlJUQ01lZGlhRW5kcG9pbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGli
V2ViUlRDTWVkaWFFbmRwb2ludC5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ01lZGlhRW5k
cG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE3NjEyQUQxRTNBOTkzQjAw
QzNEODFEIC8qIExpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQu
Y3BwOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uQmFja2VuZC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzYxMkFFMUUzQTk5M0IwMEMzRDgxRCAv
KiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmg7IHBhdGggPSBsaWJ3
ZWJydGMvTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxNzY2NzMwMjREQzA4RUEwMDhCRkUyOCAvKiBXcml0YWJsZVN0cmVhbURl
ZmF1bHRXcml0ZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdyaXRhYmxlU3RyZWFtRGVm
YXVsdFdyaXRlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzY2NzMyMjRE
QzA4RUIwMDhCRkUyOCAvKiBXcml0YWJsZVN0cmVhbURlZmF1bHRXcml0ZXIuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbURlZmF1bHRXcml0
ZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzY2NzMzMjREQzA4RUIwMDhC
RkUyOCAvKiBXcml0YWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmpzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gV3JpdGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxl
ci5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE3NjY3MzQyNERDMDhFQjAwOEJG
RTI4IC8qIFdyaXRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFdyaXRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MTc2OTAwMzIyRkNEOEYyMDBCMTU3NkQgLyogTWVkaWFTb3Vy
Y2VSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVNvdXJj
ZVJlZ2lzdHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzY5MDA0MjJGQ0Q4
RjIwMEIxNTc2RCAvKiBNZWRpYVNvdXJjZVJlZ2lzdHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU291cmNlUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MTc2RTg4RjIzQzM0OEQyMDAzRTgzRkUgLyogTWVkaWFSZWNvcmRl
clByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUmVjb3Jk
ZXJQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTc2RTg5MTIzQzM0
Qjc1MDAzRTgzRkUgLyogTWVkaWFSZWNvcmRlclByb3ZpZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1lZGlhUmVjb3JkZXJQcm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxNzcwNDBCMjNGNzBDQUIwMDBDNTRFRSAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVJlY29yZGVyUHJpdmF0
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzdGNTFDMjM4MjU0NDAwMEMw
NDQ4NiAvKiBCYXNlQXVkaW9TaGFyZWRVbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEJhc2VBdWRpb1NoYXJlZFVuaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTc3RjUxRTIzODI1NDVFMDBDMDQ0ODYgLyogQmFzZUF1ZGlvU2hhcmVkVW5p
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCYXNlQXVkaW9TaGFyZWRVbml0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxNzhFRjE0MjQxMjVCNkMwMDE5M0M3
NCAvKiBOb3dQbGF5aW5nTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOb3dQbGF5aW5nTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTc4
RUYxNjI0MTI1QjZDMDAxOTNDNzQgLyogTm93UGxheWluZ01hbmFnZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTm93UGxheWluZ01hbmFnZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTdEQTRDRTEzNzM0MzI2MDA3QzU3RkIgLyogSW50ZXJu
YWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGVybmFscy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTdEQTRDRjEzNzM0MzI2MDA3QzU3RkIgLyogSW50
ZXJuYWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEludGVybmFs
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxN0RBNkQwMTM3MzRFMDIwMDdD
NTdGQiAvKiBsaWJXZWJDb3JlVGVzdFN1cHBvcnQuZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZHlsaWIiOyBpbmNs
dWRlSW5JbmRleCA9IDA7IHBhdGggPSBsaWJXZWJDb3JlVGVzdFN1cHBvcnQuZHlsaWI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTQxN0RBNzFCMTM3MzVERkEwMDdDNTdG
QiAvKiBKU0ludGVybmFscy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0ludGVybmFscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxN0RBNzFD
MTM3MzVERkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0ludGVybmFscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MTdGMEQ3RTFGRkVFMTRFMDA4RUYzMDMgLyogU2VydmljZVdvcmtlckludGVybmFscy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxN0YwRDgwMUZGRUUxNEYwMDhFRjMwMyAvKiBT
ZXJ2aWNlV29ya2VySW50ZXJuYWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNlcnZpY2VXb3JrZXJJbnRlcm5hbHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MTdGMEQ4MTFGRkVFMTUwMDA4RUYzMDMgLyogU2VydmljZVdvcmtlckludGVybmFs
cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VydmljZVdvcmtlckludGVybmFscy5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxN0Y3QUVBMjEzOUJGNjQwMEZCQTdFQyAv
KiBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBNZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxN0Y3QUVCMjEzOUJGNjQwMEZCQTdFQyAvKiBXZWJBdWRpb0J1ZmZl
ckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQXVkaW9C
dWZmZXJMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE3RjdBRUMyMTM5
QkY2NTAwRkJBN0VDIC8qIFdlYkF1ZGlvQnVmZmVyTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXZWJBdWRpb0J1ZmZlckxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDE3RjdBRUQyMTM5QkY2NTAwRkJBN0VDIC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJD
b2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVNlc3Npb25NYW5h
Z2VyQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MTNGOTExMzgxOEFE
NjAwNTdBQUE0IC8qIEludGVybmFscy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW50ZXJu
YWxzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MTVDMUMxMzgzMTk4MzAw
NTdBQUE0IC8qIFdlYkNvcmVUZXN0U3VwcG9ydC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXZWJDb3JlVGVzdFN1cHBvcnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MTgxNUMxRDEzODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVUZXN0U3VwcG9ydC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTgxNzA3RDEzODZFREYyMDA1N0FBQTQg
LyogV2ViQ29yZVRlc3RTdXBwb3J0LnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsg
cGF0aCA9IFdlYkNvcmVUZXN0U3VwcG9ydC54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDE4MUM1QkUyNTUzRUI2RTAwQUVCMEZGIC8qIExpYldlYlJUQ1J0cFNlbmRlclRy
YW5zZm9ybUJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGliV2ViUlRDUnRwU2VuZGVyVHJhbnNm
b3JtQmFja2VuZC5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlclRyYW5zZm9y
bUJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MUM1QzAyNTUzRUI2
RTAwQUVCMEZGIC8qIExpYldlYlJUQ1J0cFJlY2VpdmVyVHJhbnNmb3JtQmFja2VuZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBMaWJXZWJSVENSdHBSZWNlaXZlclRyYW5zZm9ybUJhY2tlbmQuY3Bw
OyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ1J0cFJlY2VpdmVyVHJhbnNmb3JtQmFja2VuZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODFDNUMxMjU1M0VCNkUwMEFFQjBG
RiAvKiBMaWJXZWJSVENSdHBTZW5kZXJUcmFuc2Zvcm1CYWNrZW5kLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IExpYldlYlJUQ1J0cFNlbmRlclRyYW5zZm9ybUJhY2tlbmQuY3BwOyBwYXRoID0gbGli
d2VicnRjL0xpYldlYlJUQ1J0cFNlbmRlclRyYW5zZm9ybUJhY2tlbmQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MTgxQzVDMjI1NTNFQjZGMDBBRUIwRkYgLyogTGliV2ViUlRD
UnRwUmVjZWl2ZXJUcmFuc2Zvcm1CYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ1J0
cFJlY2VpdmVyVHJhbnNmb3JtQmFja2VuZC5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ1J0
cFJlY2VpdmVyVHJhbnNmb3JtQmFja2VuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MTgxQzVDNjI1NTU3MzUxMDBBRUIwRkYgLyogUlRDUnRwVHJhbnNmb3JtLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1J0cFRyYW5zZm9ybS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODFDNUM4MjU1NTczREYwMEFFQjBGRiAvKiBSVENS
dHBUcmFuc2Zvcm1CYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJU
Q1J0cFRyYW5zZm9ybUJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4
MUM1Q0EyNTU1ODJFMzAwQUVCMEZGIC8qIFJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBUcmFuc2Zvcm1hYmxlRnJhbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MUM1Q0MyNTU1ODM2ODAwQUVCMEZGIC8q
IExpYldlYlJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBMaWJXZWJSVENSdHBUcmFuc2Zvcm1hYmxlRnJhbWUuaDsgcGF0aCA9IGxpYndl
YnJ0Yy9MaWJXZWJSVENSdHBUcmFuc2Zvcm1hYmxlRnJhbWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDE4MUM1Q0UyNTU1ODk1NTAwQUVCMEZGIC8qIExpYldlYlJUQ1J0cFRyYW5z
Zm9ybUJhY2tlbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGli
V2ViUlRDUnRwVHJhbnNmb3JtQmFja2VuZC5jcHA7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRD
UnRwVHJhbnNmb3JtQmFja2VuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
ODFDNUNGMjU1NTg5NTYwMEFFQjBGRiAvKiBMaWJXZWJSVENSdHBUcmFuc2Zvcm1CYWNrZW5kLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ1J0cFRyYW5zZm9ybUJh
Y2tlbmQuaDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENSdHBUcmFuc2Zvcm1CYWNrZW5kLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODFDNjNGMjU1QjRDMjUwMEFFQjBGRiAv
KiBSVENSdHBTRnJhbWVUcmFuc2Zvcm1lckNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJUQ1J0cFNGcmFtZVRyYW5zZm9ybWVyQ29jb2EuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTgxQzY0MTI1NUI0QzI2MDBBRUIwRkYgLyogUlRDUnRw
U0ZyYW1lVHJhbnNmb3JtZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUlRDUnRwU0ZyYW1lVHJhbnNmb3JtZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTgxQzY0MjI1NUI0QzI2MDBBRUIwRkYgLyogUlRDUnRwU0ZyYW1lVHJhbnNmb3JtZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwU0ZyYW1lVHJhbnNmb3Jt
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MUM2NDMyNTVCNEMyNzAwQUVC
MEZGIC8qIFJUQ1J0cFNGcmFtZVRyYW5zZm9ybS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
UlRDUnRwU0ZyYW1lVHJhbnNmb3JtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDE4MUM2NDQyNTVCNEMyNzAwQUVCMEZGIC8qIFJUQ1J0cFNGcmFtZVRyYW5zZm9ybS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBTRnJhbWVUcmFuc2Zvcm0uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4MUM2NDUyNTVCNEMyODAwQUVCMEZGIC8qIFJU
Q1J0cFNGcmFtZVRyYW5zZm9ybS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSVENSdHBTRnJhbWVUcmFuc2Zvcm0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTgyMDU0NTFFNTNDOENEMDBENjIyMDcgLyogUlRDQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxODIwNTQ4MUU1M0VBQUQwMEQ2MjIwNyAvKiBSVENDb250cm9sbGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0NvbnRyb2xsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTgyNkJGMTIzRkI1OTcwMDBCOTIy
QjEgLyogRG9jdW1lbnRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERvY3VtZW50SWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MTg0RjUxNTFFQUYwNTk4MDBGMThCRjAgLyogT3JpZW50YXRpb25Ob3RpZmllci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcmllbnRhdGlvbk5vdGlmaWVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODZCRDNCMjEzRURFMzgwMDAxODI2RiAvKiBMaWJXZWJS
VENSdHBSZWNlaXZlckJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGliV2ViUlRDUnRwUmVjZWl2
ZXJCYWNrZW5kLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDUnRwUmVjZWl2ZXJCYWNrZW5k
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODZCRDNEMjEzRURFMzkwMDAxODI2
RiAvKiBMaWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJU
Q1J0cFNlbmRlckJhY2tlbmQuaDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENSdHBTZW5kZXJC
YWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODZCRDQ2MjE0MDcyQjYw
MDAxODI2RiAvKiBSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxODZCRDRCMjE0MEE4MDUwMDAxODI2RiAvKiBMaWJXZWJSVENSdHBU
cmFuc2NlaXZlckJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGli
V2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRD
UnRwVHJhbnNjZWl2ZXJCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
ODZCRDREMjE0MEI5RTgwMDAxODI2RiAvKiBMaWJXZWJSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDUnRwVHJh
bnNjZWl2ZXJCYWNrZW5kLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENSdHBUcmFuc2Nl
aXZlckJhY2tlbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTg4MDdERjI0
RTQ1NTgzMDBEREFGOTQgLyogQWJvcnRBbGdvcml0aG0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFib3J0QWxnb3JpdGht
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4ODA3RTEyNEU0NThDMzAwRERB
Rjk0IC8qIEFib3J0QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFib3J0QWxnb3JpdGhtLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODg1QjkxMTFCNkZEQTYwMDMzODNCQiAv
KiBGb3JtU3VibWlzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb3Jt
U3VibWlzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTg4NUI5MjExQjZG
REE2MDAzMzgzQkIgLyogRm9ybVN1Ym1pc3Npb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRm9ybVN1Ym1pc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MTg4RDU1QTI2QzU0RDZGMDA0ODU4QzggLyogUlRDRHRsc1RyYW5zcG9ydEJhY2tl
bmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRHRsc1RyYW5zcG9ydEJh
Y2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE4OEQ1NUQyNkM1NTExQTAw
NDg1OEM4IC8qIFJUQ0R0bHNUcmFuc3BvcnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0R0bHNUcmFuc3BvcnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTg4RDU1RTI2QzU1MTFBMDA0ODU4Qzgg
LyogUlRDRHRsc1RyYW5zcG9ydC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENEdGxzVHJhbnNwb3J0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxODhENTVGMjZDNTUxMUEwMDQ4NThDOCAv
KiBSVENEdGxzVHJhbnNwb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0R0bHNUcmFuc3Bv
cnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTg4RDU2MDI2QzU1MTY2MDA0
ODU4QzggLyogUlRDRHRsc1RyYW5zcG9ydFN0YXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBSVENEdGxzVHJhbnNwb3J0U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MTg4RDU2MjI2QzU1MUIxMDA0ODU4QzggLyogUlRDRHRsc1RyYW5zcG9ydFN0YXRlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ0R0bHNUcmFuc3BvcnRTdGF0ZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTg4RDU2NDI2QzU1MzBCMDA0ODU4QzggLyog
TGliV2ViUlRDRHRsc1RyYW5zcG9ydEJhY2tlbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGli
V2ViUlRDRHRsc1RyYW5zcG9ydEJhY2tlbmQuY3BwOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJU
Q0R0bHNUcmFuc3BvcnRCYWNrZW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDE4OEQ1NjUyNkM1NTMwQjAwNDg1OEM4IC8qIExpYldlYlJUQ0R0bHNUcmFuc3BvcnRCYWNrZW5k
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ0R0bHNUcmFuc3BvcnRCYWNrZW5kLmg7IHBhdGgg
PSBsaWJ3ZWJydGMvTGliV2ViUlRDRHRsc1RyYW5zcG9ydEJhY2tlbmQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDE4OTM4QUYyNDI5RjlBQjAwN0ZEQzQxIC8qIFJldHJpZXZlUmVj
b3Jkc09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmV0cmlldmVS
ZWNvcmRzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MThBMDZDRTEz
M0MwNEQ1MDBDRDM3OUMgLyogRXZlbnREaXNwYXRjaGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEV2ZW50RGlzcGF0Y2hlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MThBMDZDRjEzM0MwNEQ1MDBDRDM3OUMgLyogRXZlbnREaXNwYXRjaGVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV2ZW50RGlzcGF0Y2hlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOEMzOTVCMUM4RjBBNjEwMDUxQzhBMyAvKiBS
ZWFkYWJsZVN0cmVhbVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
ZWFkYWJsZVN0cmVhbVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MThD
Mzk1QzFDOEYwQTYxMDA1MUM4QTMgLyogUmVhZGFibGVTdHJlYW1Tb3VyY2UuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtU291cmNlLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDE4QzM5NUQxQzhGMEFBQjAwNTFDOEEzIC8qIEpTUmVhZGFibGVTdHJl
YW1Tb3VyY2VDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNSZWFkYWJsZVN0cmVhbVNvdXJjZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxOEMzOTVFMUM4RjBBQUIwMDUxQzhBMyAvKiBSZWFkYWJsZVN0cmVhbURlZmF1bHRD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWRh
YmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MThDMzk1RjFDOEYwQUFCMDA1MUM4QTMgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29u
dHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFkYWJsZVN0cmVh
bURlZmF1bHRDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOEY4
ODAyMEZGOTU3QUUwMDgwRjA0NSAvKiBKU0Fic3RyYWN0V29ya2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWJzdHJhY3RXb3JrZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MThGODgwMzBGRjk1N0FFMDA4MEYwNDUgLyogSlNBYnN0cmFj
dFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Fic3RyYWN0V29y
a2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOTBGM0ExMjQ5RDE1MjcwMDUz
MUM1NyAvKiBGcmFtZVJhdGVNb25pdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEZyYW1lUmF0ZU1vbml0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MTkwRjNBMzI0OUQxNTI4MDA1MzFDNTcgLyogRnJhbWVSYXRlTW9uaXRvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGcmFtZVJhdGVNb25pdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOTI0MjQ3MjEyN0I3Q0MwMDYzNEZDRiAvKiBSZWFsdGlt
ZU91dGdvaW5nVmlkZW9Tb3VyY2VDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IFJlYWx0aW1lT3V0Z29pbmdWaWRlb1NvdXJjZUNvY29hLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MTk0NTY5NDIwMzUwMkE1MDA0QkEyNzcgLyogQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxOTQ1Njk2MjAzNTAyQTYwMDRCQTI3NyAvKiBBcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2VMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxOUFDRjhFMUY5N0U3RDUwMDlGMUE4MyAvKiBTZXJ2aWNlV29ya2VyRmV0Y2guaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlckZldGNoLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOUFDRjkwMUY5N0U3RDYwMDlGMUE4MyAvKiBT
ZXJ2aWNlV29ya2VyRmV0Y2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU2VydmljZVdvcmtlckZldGNoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDE5QkMyREMxNjg1MzI5OTAwRDY0RDZEIC8qIFZpc2l0ZWRMaW5rU3RhdGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVmlzaXRlZExpbmtTdGF0ZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxOUJDMkREMTY4NTMyOTkwMEQ2NEQ2RCAvKiBWaXNp
dGVkTGlua1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpc2l0ZWRM
aW5rU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE5QkU3NTIxQkM3RjNE
QjAwRTFDODVCIC8qIFdlYkNvcmVCdWlsdGluTmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViQ29yZUJ1aWx0aW5OYW1lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MTlEOTMwNTI1NUU4NDI3MDBEQTE5ODQgLyogQ3J5cHRvVXRpbGl0aWVzQ29jb2Eu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvVXRpbGl0aWVzQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDE5RDkzMDcyNTVFODQyODAwREExOTg0IC8qIENyeXB0b1V0aWxpdGll
c0NvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b1V0aWxpdGllc0NvY29hLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE5RTZFQzQyNTY2RDIxMTAwMkI1MDEwIC8q
IFJUQ1BlZXJDb25uZWN0aW9uSWNlRXJyb3JFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUGVlckNvbm5lY3Rp
b25JY2VFcnJvckV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDE5RTZF
QzYyNTY2RDIxMzAwMkI1MDEwIC8qIFJUQ1BlZXJDb25uZWN0aW9uSWNlRXJyb3JFdmVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBSVENQZWVyQ29ubmVjdGlvbkljZUVycm9yRXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTlFNkVDNzI1NjZEMjE0MDAyQjUwMTAgLyog
UlRDUGVlckNvbm5lY3Rpb25JY2VFcnJvckV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1BlZXJD
b25uZWN0aW9uSWNlRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MTlGQUZBRDFBQkFCQ0Q1MDA1QjM1NzIgLyogUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVyLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZWFkYWJsZVN0cmVhbUJZT0JSZWFkZXIuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MTlGQUZBRDFBQkFCQ0Q1MDA1QjgyOEIgLyogUmVh
ZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZWFk
YWJsZVN0cmVhbURlZmF1bHRSZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVhZGFibGVTdHJlYW0uaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFJlYWRhYmxlU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDFBMDIzRUQxQTM5REI3OTAwRjcyMkRGIC8qIFdyaXRhYmxlU3RyZWFtLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXcml0YWJsZVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQTA4Mjk5MjI5MzJFRjQwMDg0MjZFMCAvKiBGZWF0dXJlUG9saWN5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZlYXR1cmVQb2xpY3kuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBMDgyOUIyMjkzMkVGNDAwODQyNkUwIC8qIEZl
YXR1cmVQb2xpY3kuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmVh
dHVyZVBvbGljeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQTA5OEJDMjMx
RTkxRDEwMEY0RkZGMCAvKiBXb3JrZXJTV0NsaWVudENvbm5lY3Rpb24uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyU1dDbGllbnRDb25uZWN0aW9uLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBMDk4QkUyMzFFOTFEMTAwRjRGRkYwIC8q
IFdvcmtlclNXQ2xpZW50Q29ubmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXb3JrZXJTV0NsaWVudENvbm5lY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDFBMUIwMEQxRTUyNjU2RTAwN0YzNzY5IC8qIExpYldlYlJUQ1Byb3ZpZGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IExpYldlYlJUQ1Byb3ZpZGVyLmNw
cDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQTFCMDFBMUU1NDIzOTYwMDdGMzc2OSAvKiBKU0RPTUd1YXJkZWRP
YmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01HdWFyZGVkT2Jq
ZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQTFCMDFCMUU1NDIzOTYwMDdG
Mzc2OSAvKiBKU0RPTUd1YXJkZWRPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNET01HdWFyZGVkT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDFBM0Q1OEMxMDFDMTUyRDAwMzE2RDA3IC8qIERlZGljYXRlZFdvcmtlclRocmVh
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZWRpY2F0ZWRXb3Jr
ZXJUaHJlYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUEzRDU4RDEwMUMx
NTJEMDAzMTZEMDcgLyogRGVkaWNhdGVkV29ya2VyVGhyZWFkLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IERlZGljYXRlZFdvcmtlclRocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MUE0OEE5QzFFODMxMjkxMDBEMkFDMkQgLyogUlRDUGVlckNvbm5lY3Rp
b25TdGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUGVlckNvbm5lY3Rpb25TdGF0
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQTQ4QTlEMUU4MzEyRUIwMEQy
QUMyRCAvKiBSVENQZWVyQ29ubmVjdGlvblN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJUQ1BlZXJDb25uZWN0aW9uU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDFBNDhBQTcxRTg0QUVFQzAwRDJBQzJEIC8qIFJUQ1J0cFBhcmFtZXRlcnMuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFBhcmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MUE0OEFBODFFODRBRjFEMDBEMkFDMkQgLyogUlRDUnRwUGFy
YW1ldGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBQYXJhbWV0
ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQTdEMzRGMUY0MzhEMTAwMDg5
ODhERSAvKiBXb3JrZXJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckNhY2hlU3RvcmFnZUNvbm5lY3Rpb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUE3RDM1MDFGNDM4RDEwMDA4OTg4REUgLyog
V29ya2VyQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXb3JrZXJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxQUI5NzkyMjZFNzVBMkQwMDdDMEZFNiAvKiBSVENFcnJvckRldGFpbFR5
cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRXJyb3JEZXRhaWxUeXBl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQUI5Nzk0MjZFNzVBMkQwMDdDMEZF
NiAvKiBSVENFcnJvckRldGFpbFR5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ0Vy
cm9yRGV0YWlsVHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQUJFNjc5
MUQwNTgwRDUwMDZEODYyRCAvKiBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVj
a2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBQkU2N0ExRDA1ODBENTAw
NkQ4NjJEIC8qIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBRDc1MzkxQ0VGNkJDRTAwQTMxNDg2IC8qIEZldGNoT3B0
aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaE9wdGlvbnMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBRjM3ODgxRjhDMUU3OTAwMTExQzMxIC8q
IEZldGNoRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmV0Y2hFdmVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUFGMzc4QTFGOEMxRTdBMDAxMTFD
MzEgLyogRXh0ZW5kYWJsZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEV4dGVuZGFibGVFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUFGMzc4
RDFGOEMxRTdCMDAxMTFDMzEgLyogRmV0Y2hFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gRmV0Y2hFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQUYzNzhF
MUY4QzFFN0MwMDExMUMzMSAvKiBFeHRlbmRhYmxlRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEV4dGVuZGFibGVFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxQUYzNzkyMUY4REE0OEEwMDExMUMzMSAvKiBFeHRlbmRhYmxlRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXh0ZW5kYWJsZUV2ZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFBRjM3OTQxRjhEQTQ5NTAwMTExQzMxIC8qIEZldGNo
RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmV0Y2hFdmVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQUYzNzlDMUY4REIxQjEwMDEx
MUMzMSAvKiBKU0RPTVByb21pc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNET01Qcm9taXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFC
MjhCMTIxRjg1MDFBMzAwRkI1MkFDIC8qIE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhRW5kcG9pbnRDb25maWd1cmF0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjI4QjEzMUY4NTAxQTQwMEZCNTJB
QyAvKiBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjI4QjM2MUY4NjBCRDAwMEZCNTJBQyAvKiBMaWJXZWJS
VENQcm92aWRlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldl
YlJUQ1Byb3ZpZGVyQ29jb2EuaDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENQcm92aWRlckNv
Y29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjI4QjM4MUY4NjBCRDEwMEZC
NTJBQyAvKiBMaWJXZWJSVENQcm92aWRlckNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IExpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuY3BwOyBwYXRoID0gbGlid2Vi
cnRjL0xpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MUIyQTYyNTFFRjFCRjYwMDAyQjlEN0EgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJBdWRpb1NvdXJjZVByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQjQ1OURBMUY0Q0FEQjkwMDAwRjZGRCAvKiBSZWFkYWJsZVN0cmVh
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFkYWJsZVN0cmVhbS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUI0NTlFRDFGNTVFQkM3MDAwMEY2RkQgLyog
UmVhZGFibGVTdHJlYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UmVhZGFibGVTdHJlYW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUI2QUE0
RjI2Qjk5NUY4MDBBQURGQTcgLyogUlRDUnRwU0ZyYW1lVHJhbnNmb3JtRXJyb3JFdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBTRnJhbWVUcmFuc2Zvcm1FcnJv
ckV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjZBQTUxMjZCOTk1Rjgw
MEFBREZBNyAvKiBSVENSdHBTRnJhbWVUcmFuc2Zvcm1FcnJvckV2ZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBSVENSdHBTRnJhbWVUcmFuc2Zvcm1FcnJvckV2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFCNkFBNTIyNkI5OTVGOTAwQUFERkE3IC8qIFJUQ1J0
cFNGcmFtZVRyYW5zZm9ybUVycm9yRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUlRDUnRwU0ZyYW1lVHJhbnNmb3JtRXJyb3JFdmVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjdDMDQ1MjZFNjkwQkMwMEQzNkMwNyAvKiBSVENFcnJv
ckV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ0Vycm9yRXZlbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MUI3QzA0NzI2RTY5MEJEMDBEMzZDMDcgLyogUlRDRXJy
b3JFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENFcnJvckV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQjdDMDQ4MjZFNjkwQkUwMEQzNkMwNyAvKiBSVENFcnJvckV2ZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBSVENFcnJvckV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDFCN0MwNDkyNkU2OTE2RjAwRDM2QzA3IC8qIFJUQ0Vycm9yLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENFcnJv
ci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjdDMDRBMjZFNjkxNzAwMEQz
NkMwNyAvKiBSVENFcnJvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSVENFcnJvci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQjdDMDRCMjZFNjkxNzEwMEQzNkMwNyAvKiBS
VENFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MUI4Nzc2MDIzREUxMDQyMDAzNjM4QjggLyogUmVhbHRpbWVNZWRpYVNvdXJj
ZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVhbHRpbWVN
ZWRpYVNvdXJjZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFC
OTEzNzYyMzU4NEQwRTAwMjVCRkEzIC8qIE1vY2tBdWRpb0Rlc3RpbmF0aW9uQ29jb2EuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja0F1ZGlvRGVzdGluYXRpb25Db2NvYS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUI5MTM3ODIzNTg0RDBGMDAyNUJGQTMg
LyogTW9ja0F1ZGlvRGVzdGluYXRpb25Db2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNb2NrQXVkaW9EZXN0aW5hdGlvbkNvY29hLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDFCQ0U4NzUyNUY3QTY3OTAwNDZDMkU1IC8qIFJUQ1RyYW5zZm9y
bUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENUcmFuc2Zvcm1FdmVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQkNFODc2MjVGN0E2N0EwMDQ2QzJFNSAv
KiBSVENUcmFuc2Zvcm1FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSVENUcmFuc2Zvcm1FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxQkNFODc3MjVGN0E2N0EwMDQ2QzJFNSAvKiBSVENUcmFuc2Zvcm1FdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENUcmFuc2Zvcm1FdmVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MUJGMjA0MDIyQjk0NzE2MDAwNEY4MTIgLyogUmVhbHRpbWVW
aWRlb1NvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGltZVZpZGVvU291cmNlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQkYyMDQyMjJCOTQ3MTcwMDA0RjgxMiAvKiBSZWFs
dGltZVZpZGVvU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWx0aW1lVmlkZW9Tb3Vy
Y2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUMxNEJDNDI2REU2REU4MDA2
ODVCRjUgLyogUlRDTmV0d29ya01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUlRDTmV0d29ya01hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFDMTRCQzgyNkRGNzlENjAwNjg1QkY1IC8qIE1ETlNSZWdpc3RlckVycm9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1ETlNSZWdpc3RlckVycm9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxQzNCODlCMjY0OUIxQjYwMDRFRDRERSAvKiBBdWRpb01lZGlh
U3RyZWFtVHJhY2tSZW5kZXJlclVuaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9NZWRpYVN0cmVh
bVRyYWNrUmVuZGVyZXJVbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQzNC
ODlDMjY0OUIxQjYwMDRFRDRERSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlckNvY29h
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyQ29jb2EuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFDM0I4OUQyNjQ5QjFCNjAwNEVENERFIC8q
IEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyQ29jb2EuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJDb2NvYS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQzNCODlFMjY0OUIxQjcwMDRFRDRERSAvKiBBdWRpb01lZGlhU3Ry
ZWFtVHJhY2tSZW5kZXJlckludGVybmFsVW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRp
b01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlckludGVybmFsVW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQzNCODlGMjY0OUIxQjcwMDRFRDRERSAvKiBBdWRpb01lZGlhU3Ry
ZWFtVHJhY2tSZW5kZXJlckludGVybmFsVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb01lZGlh
U3RyZWFtVHJhY2tSZW5kZXJlckludGVybmFsVW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MUMzQjhBMDI2NDlCMUI3MDA0RUQ0REUgLyogQXVkaW9NZWRpYVN0cmVhbVRyYWNr
UmVuZGVyZXJVbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvTWVkaWFTdHJlYW1UcmFj
a1JlbmRlcmVyVW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxQzc2MEIw
MEVERTAzRDMwMEMxNjU1RiAvKiBTY3JpcHRTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTY3JpcHRTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MUM3RTEwNTFFNkE1NDM2MDAyN0I0REUgLyogQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FudmFzQ2FwdHVyZU1l
ZGlhU3RyZWFtVHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUM3RTEw
NjFFNkE1NDM2MDAyN0I0REUgLyogQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJhY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FudmFzQ2FwdHVyZU1lZGlhU3RyZWFtVHJh
Y2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFDN0UxMDgxRTZBQTM3QzAwMjdC
NERFIC8qIENhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBDYW52YXNDYXB0dXJlTWVkaWFTdHJlYW1UcmFjay5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxQ0I4NDAwMjVDQUI3QjAwMDEwRTJCMSAvKiBSZWFsdGltZUluY29t
aW5nVmlkZW9Tb3VyY2VDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGltZUluY29taW5nVmlk
ZW9Tb3VyY2VDb2NvYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUNENkY4OTIz
RDZFODFDMDBCMTY0MjEgLyogVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvU2FtcGxlQnVmZmVyQ29tcHJlc3Nvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUNENkY4QjIzRDZFODFEMDBCMTY0MjEgLyog
VmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MUNGOEJFNDFENDYyMjIwMDA3MDdEQzkgLyogRmV0Y2hCb2R5
Q29uc3VtZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmV0Y2hC
b2R5Q29uc3VtZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUNGOEJFNTFE
NDYyMjIwMDA3MDdEQzkgLyogRmV0Y2hCb2R5Q29uc3VtZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRmV0Y2hCb2R5Q29uc3VtZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDFEMDE1QzgwRjRCNUM3MTAwNEE2NjJGIC8qIENvbnRlbnRUeXBlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRUeXBlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxRDAxNUM5MEY0QjVDNzEwMDRBNjYyRiAvKiBDb250ZW50VHlwZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50VHlwZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRDEyOUM5MUYzRDBFRTMwMEQxNUU0NyAv
KiBDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhY2hlU3RvcmFnZUNvbm5lY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MUQxMjlDQzFGM0QwRUUzMDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdlQ29ubmVj
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZVN0b3JhZ2VDb25u
ZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRDEyOUQ0MUYzRDBGNjYw
MEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDYWNoZVN0b3JhZ2VQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MUQxOTM4RjIxNTJDNTYxMDA2RjE0Q0EgLyogUmVhbHRpbWVWaWRlb1V0aWxpdGll
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGltZVZpZGVvVXRpbGl0
aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRDFBMDQ2MjEzRURERUIwMDYz
RkI2QiAvKiBSVENSdHBTZW5kZXJCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJUQ1J0cFNlbmRlckJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDFEMUEwNDgyMTNFRERFQjAwNjNGQjZCIC8qIFJUQ1J0cFJlY2VpdmVyQmFja2VuZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBSZWNlaXZlckJhY2tlbmQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFEMUEwNDkyMTNFRERGRDAwNjNGQjZCIC8q
IExpYldlYlJUQ1V0aWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IExpYldlYlJUQ1V0aWxzLmNw
cDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENVdGlscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxRDFBMDRBMjEzRURERkUwMDYzRkI2QiAvKiBMaWJXZWJSVENSdHBSZWNl
aXZlckJhY2tlbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDUnRwUmVjZWl2ZXJC
YWNrZW5kLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENSdHBSZWNlaXZlckJhY2tlbmQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUQxQTA0QjIxM0VEREZFMDA2M0ZC
NkIgLyogTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBM
aWJXZWJSVENSdHBTZW5kZXJCYWNrZW5kLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENS
dHBTZW5kZXJCYWNrZW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFEMUEw
NEMyMTNFRERGRjAwNjNGQjZCIC8qIExpYldlYlJUQ1V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExp
YldlYlJUQ1V0aWxzLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDVXRpbHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFEMjhEMEIyMTM5RTAxRDAwRjQyMDZGIC8qIExpYldl
YlJUQ1N0YXRzQ29sbGVjdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IExpYldlYlJUQ1N0YXRzQ29sbGVjdG9yLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJS
VENTdGF0c0NvbGxlY3Rvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRDI4
RDBDMjEzOUUwMUUwMEY0MjA2RiAvKiBMaWJXZWJSVENTdGF0c0NvbGxlY3Rvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBMaWJXZWJSVENTdGF0c0NvbGxlY3Rvci5oOyBwYXRo
ID0gbGlid2VicnRjL0xpYldlYlJUQ1N0YXRzQ29sbGVjdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxRDQxQzY1MjI1Njg1OTIwMDY5Nzk0MiAvKiBTZXJ2aWNlV29ya2VySW50
ZXJuYWxzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Vydmlj
ZVdvcmtlckludGVybmFscy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFENTFC
QjIxRTRFMkU4MTAwMTMxQTVCIC8qIExpYldlYlJUQ0F1ZGlvRm9ybWF0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExpYldlYlJUQ0F1ZGlvRm9ybWF0Lmg7IHBhdGggPSBsaWJ3
ZWJydGMvTGliV2ViUlRDQXVkaW9Gb3JtYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDFENkJEOTgyNTFCM0FEQTAwNTVBN0I3IC8qIEhUTUxNZWRpYUVsZW1lbnQrQXVkaW9PdXRw
dXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJIVE1MTWVkaWFFbGVtZW50K0F1ZGlvT3V0
cHV0LmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxREU3QzdBMjIyREExM0Qw
MDUzMkI2NSAvKiBTdG9yYWdlUXVvdGFNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFN0b3JhZ2VRdW90YU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MURFN0M3QjIyMkRBMTNFMDA1MzJCNjUgLyogU3RvcmFnZVF1b3RhTWFu
YWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlUXVvdGFNYW5h
Z2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxREVGQ0IyMUU1NkMxQjkwMDBE
OUU1RiAvKiBKU0RPTUJpbmRpbmdJbnRlcm5hbHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IHBhdGggPSBKU0RPTUJpbmRpbmdJbnRlcm5hbHMuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQxREVGQ0IzMUU1NkMxQjkwMDBEOUU1RiAvKiBKU0RPTU1hcExpa2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01NYXBMaWtlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFERUZDQjQxRTU2QzFCOTAwMEQ5RTVG
IC8qIEpTRE9NTWFwTGlrZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RP
TU1hcExpa2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFMEE3RDkyM0JCNTkw
MTAwNTYxMDYwIC8qIFJUQ1J0cENvZGVjQ2FwYWJpbGl0eS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gUlRDUnRwQ29kZWNDYXBhYmlsaXR5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDFFMEE3REMyM0JCNjNEQjAwNTYxMDYwIC8qIFJUQ1J0cENvZGVjQ2FwYWJpbGl0eS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBDb2RlY0NhcGFiaWxpdHku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFMTJFOUQyNEZFNzRFMjAwOTNGRkI0
IC8qIFdlYlNvY2tldElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViU29ja2V0SWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
MUUxQjFDQTBGRjU5ODY5MDA1NzZCM0IgLyogQWJzdHJhY3RXb3JrZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWJzdHJhY3RXb3JrZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MUUxQjFDQjBGRjU5ODY5MDA1NzZCM0IgLyogQWJzdHJhY3RX
b3JrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3RXb3JrZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFMUIxQ0MwRkY1OTg2OTAwNTc2QjNC
IC8qIEFic3RyYWN0V29ya2VyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBYnN0cmFjdFdv
cmtlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRTFGMzNEMjQ4QTYyQjYw
MDIyRDVERSAvKiBBdWRpb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBdWRpb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRTFGMzNGMjQ4QTYyQjYwMDIyRDVERSAv
KiBBdWRpb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQXVkaW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxRTQwODM4MURDQjc0NzkwMEVGQ0UxOSAvKiBQZWVyQ29ubmVjdGlvbkJh
Y2tlbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVlckNvbm5l
Y3Rpb25CYWNrZW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFNTkzRkQy
MTQ4NjVBOTAwRDNDQjYxIC8qIFJUQ1ByaW9yaXR5VHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUHJpb3JpdHlU
eXBlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFNTkzRkYyMTQ4NjVBQTAw
RDNDQjYxIC8qIFJUQ1J0cEVuY29kaW5nUGFyYW1ldGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUnRwRW5jb2Rp
bmdQYXJhbWV0ZXJzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFNTk0MDAy
MTQ4NjVBQTAwRDNDQjYxIC8qIFJUQ1J0cEhlYWRlckV4dGVuc2lvblBhcmFtZXRlcnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFJUQ1J0cEhlYWRlckV4dGVuc2lvblBhcmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MUU1OTQwMTIxNDg2NUFCMDBEM0NCNjEgLyogUlRDUnRwRmVjUGFyYW1l
dGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUlRDUnRwRmVjUGFyYW1ldGVycy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQxRTY3QTdGMjVEMTY4NDYwMDdCMEE0QyAvKiBTVFVOTWVzc2FnZVBhcnNp
bmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1RVTk1lc3NhZ2VQ
YXJzaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFNjdBODEyNUQxNjg0
NzAwN0IwQTRDIC8qIFNUVU5NZXNzYWdlUGFyc2luZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTVFVOTWVzc2FnZVBhcnNpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDFFNkQ3MjEyNkVBQTA0NTAwQjc2NUQ2IC8qIFdyaXRhYmxlU3RyZWFtLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdyaXRhYmxlU3RyZWFtLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQxRTZENzIyMjZFQUEwNDYwMEI3NjVENiAvKiBXcml0YWJsZVN0
cmVhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXcml0YWJsZVN0
cmVhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRTlEQ0U0MjMxOTczRkUw
MEYzNTk0OSAvKiBCbG9iTG9hZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEJsb2JMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFFOURDRTYyMzE5
NzQyMzAwRjM1OTQ5IC8qIEVuZGluZ1R5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEVu
ZGluZ1R5cGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUU5RENFODIzMTlD
QTc1MDBGMzU5NDkgLyogTmV0d29ya1NlbmRRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBOZXR3b3JrU2VuZFF1ZXVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQxRTlEQ0VBMjMxOUNBRTgwMEYzNTk0OSAvKiBOZXR3b3JrU2VuZFF1ZXVlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHdvcmtTZW5kUXVldWUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUYwNjIxMjBGNUYxOTI2MDBBMDdFQUMgLyog
SW5zcGVjdG9yRGF0YWJhc2VSZXNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJbnNwZWN0b3JEYXRhYmFzZVJlc291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxRjA2MjEzMEY1RjE5MjYwMEEwN0VBQyAvKiBJbnNwZWN0b3JEYXRhYmFzZVJlc291
cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3RvckRh
dGFiYXNlUmVzb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUYwOTYz
NDI0RjkwREVBMDAwOUZCOTMgLyogVGV4dERlY29kZXJTdHJlYW1EZWNvZGVyLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBU
ZXh0RGVjb2RlclN0cmVhbURlY29kZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MUYwOTYzNjI0RjkwREVCMDAwOUZCOTMgLyogVGV4dERlY29kZXJTdHJlYW0uaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFRleHREZWNvZGVyU3RyZWFtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFG
MDk2MzcyNEY5MERFQjAwMDlGQjkzIC8qIFRleHREZWNvZGVyU3RyZWFtLmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2Ny
aXB0OyBwYXRoID0gVGV4dERlY29kZXJTdHJlYW0uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxRjA5NjM4MjRGOTBERUMwMDA5RkI5MyAvKiBUZXh0RGVjb2RlclN0cmVhbURlY29k
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dERlY29kZXJTdHJlYW1EZWNvZGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRjA5NjM5MjRGOTBERUMwMDA5RkI5MyAvKiBUZXh0RGVj
b2RlclN0cmVhbURlY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dERlY29kZXJTdHJl
YW1EZWNvZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGMUQyMUQwRUYz
NUMyQTAwREE4NzUzIC8qIFNjcmlwdENhY2hlZEZyYW1lRGF0YS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTY3JpcHRDYWNoZWRGcmFtZURhdGEuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDFGMUQyMUUwRUYzNUMyQTAwREE4NzUzIC8qIFNjcmlwdENhY2hlZEZy
YW1lRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRD
YWNoZWRGcmFtZURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUYyMzU0
NDIyRjU1MDMzMDBCNEZDREIgLyogUlRDRFRNRlNlbmRlckJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDRFRNRlNlbmRlckJhY2tlbmQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDFGMjM1NDUyMkY1NTBCRTAwQjRGQ0RCIC8qIExpYldlYlJUQ0RU
TUZTZW5kZXJCYWNrZW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IExpYldlYlJUQ0RUTUZTZW5k
ZXJCYWNrZW5kLmNwcDsgcGF0aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENEVE1GU2VuZGVyQmFja2Vu
ZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRjIzNTQ2MjJGNTUwQkYwMEI0
RkNEQiAvKiBMaWJXZWJSVENEVE1GU2VuZGVyQmFja2VuZC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBMaWJX
ZWJSVENEVE1GU2VuZGVyQmFja2VuZC5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ0RUTUZT
ZW5kZXJCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRjU0RjdEMUM1
MEM0RjYwMDMzODQ4OCAvKiBGZXRjaEJvZHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRmV0Y2hCb2R5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFGNTRGN0UxQzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoQm9keS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGZXRjaEJvZHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDFGNTRGN0YxQzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoQm9keS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gRmV0Y2hCb2R5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFGNTRGODIxQzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoSGVhZGVycy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGZXRjaEhlYWRlcnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MUY1NEY4MzFDNTBDNEY2MDAzMzg0ODggLyogRmV0Y2hIZWFkZXJz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZldGNoSGVhZGVycy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUY1NEY4NDFDNTBDNEY2MDAzMzg0ODggLyogRmV0
Y2hIZWFkZXJzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGZXRjaEhlYWRlcnMuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUY1NEY4NzFDNTBDNEY2MDAzMzg0ODggLyog
RmV0Y2hSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZl
dGNoUmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRjU0Rjg4MUM1
MEM0RjYwMDMzODQ4OCAvKiBGZXRjaFJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRmV0Y2hSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQx
RjU0Rjg5MUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaFJlcXVlc3QuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEZldGNoUmVxdWVzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQxRkFCRDJCMUY0REZFNDIwMDZBNkM5NyAvKiBET01DYWNoZUVuZ2luZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBET01DYWNoZUVuZ2luZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MUZBQkQyRTFGNEUwMjUxMDA2QTZDOTcgLyogRE9NQ2FjaGVFbmdpbmUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NQ2FjaGVFbmdpbmUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUZCMjc4RDFGMzRDMjgyMDA3OTU0
ODcgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZUNhY2hlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
aW5kb3dPcldvcmtlckdsb2JhbFNjb3BlQ2FjaGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQxRkIyNzhGMUYzNEMyODIwMDc5NTQ4NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNj
b3BlQ2FjaGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdpbmRvd09yV29ya2VyR2xvYmFsU2Nv
cGVDYWNoZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MUZCMjc5OTFGMzRD
RTlDMDA3OTU0ODcgLyogQ2FjaGVRdWVyeU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENhY2hlUXVlcnlPcHRp
b25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGQjI3OUIxRjM0Q0VGMDAw
Nzk1NDg3IC8qIENhY2hlUXVlcnlPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlUXVlcnlP
cHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRkNBNUY3MjRFQUFGMTUw
MDVFMUJBNiAvKiBUcmFuc2Zvcm1TdHJlYW0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFRyYW5zZm9ybVN0cmVhbS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRkNBNUY5MjRFQUFGMTYwMDVFMUJBNiAv
KiBUcmFuc2Zvcm1TdHJlYW0uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBUcmFuc2Zvcm1TdHJl
YW0uanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRkNBNUZBMjRFQUFGMTYwMDVF
MUJBNiAvKiBUcmFuc2Zvcm1TdHJlYW1EZWZhdWx0Q29udHJvbGxlci5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVHJhbnNm
b3JtU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MUZDQTVGQjI0RUFBRjE2MDA1RTFCQTYgLyogVHJhbnNmb3JtU3RyZWFtRGVmYXVsdENv
bnRyb2xsZXIuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBUcmFuc2Zvcm1TdHJlYW1EZWZhdWx0
Q29udHJvbGxlci5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGQ0E1RkMyNEVB
Qjc4MDAwNUUxQkE2IC8qIFRyYW5zZm9ybVN0cmVhbUludGVybmFscy5qcyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlw
dDsgcGF0aCA9IFRyYW5zZm9ybVN0cmVhbUludGVybmFscy5qczsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDFGQ0I3NTUyMTQ4NjVDRjAwMzhBREM2IC8qIFJUQ0RlZ3JhZGF0aW9uUHJl
ZmVyZW5jZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUlRDRGVncmFkYXRpb25QcmVmZXJlbmNlLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGQ0I3NTcyMTQ4NjVEMTAwMzhBREM2IC8qIFJUQ0R0eFN0
YXR1cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUlRDRHR4U3RhdHVzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDFGQ0I3NTgyMTQ4NjVEMjAwMzhBREM2IC8qIFJUQ1J0cFJ0eFBhcmFtZXRlcnMuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFJUQ1J0cFJ0eFBhcmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MUZDQjc1OTIxNDg2NUQzMDAzOEFEQzYgLyogUlRDUnRwQ29kZWNQYXJhbWV0ZXJzLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBSVENSdHBDb2RlY1BhcmFtZXRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MUZDQjc1QTIxNDg2NkZEMDAzOEFEQzYgLyogUlRDUnRwSGVhZGVyRXh0ZW5zaW9u
UGFyYW1ldGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSVENSdHBIZWFkZXJFeHRlbnNpb25QYXJhbWV0
ZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQxRkNCNzVCMjE0ODY2RkQwMDM4
QURDNiAvKiBSVENSdHBGZWNQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1J0cEZlY1Bh
cmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGQ0I3NUQyMTQ4NjZG
RTAwMzhBREM2IC8qIFJUQ0RlZ3JhZGF0aW9uUHJlZmVyZW5jZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
VENEZWdyYWRhdGlvblByZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFGQ0I3NUUyMTQ4NjZGRjAwMzhBREM2IC8qIFJUQ0R0eFN0YXR1cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSVENEdHhTdGF0dXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDFGQ0I3NUYy
MTQ4NjZGRjAwMzhBREM2IC8qIFJUQ1J0cENvZGVjUGFyYW1ldGVycy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSVENSdHBDb2RlY1BhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDFGQ0I3NjAyMTQ4NjcwMDAwMzhBREM2IC8qIFJUQ1J0cFJ0eFBhcmFtZXRlcnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUlRDUnRwUnR4UGFyYW1ldGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0MUZDQjc2MTIxNDg2NzAwMDAzOEFEQzYgLyogUlRDUnRwRW5jb2RpbmdQYXJhbWV0ZXJz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJUQ1J0cEVuY29kaW5nUGFyYW1ldGVycy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0MjdEQTcxQjEzNzM1REZBMDA3QzU3RkIgLyogSlNTZXJ2aWNl
V29ya2VySW50ZXJuYWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTU2VydmljZVdvcmtlckludGVybmFscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQyN0RBNzFDMTM3MzVERkEwMDdDNTdGQiAvKiBKU1NlcnZpY2VXb3JrZXJJbnRlcm5hbHMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTZXJ2aWNlV29ya2VySW50ZXJu
YWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzMTA3QkUxMThDQzE5REUwMEND
MThFOCAvKiBTZWxlY3RvclBzZXVkb1R5cGVNYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2VsZWN0b3JQc2V1ZG9UeXBlTWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQzMkQzRkU3MThBODY1ODQwMEQ3REMwMyAvKiBTZWxlY3RvckNoZWNrZXJUZXN0RnVu
Y3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlbGVjdG9yQ2hlY2tl
clRlc3RGdW5jdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM1OEU4N0Ex
MzYwQTJFRTAwRTQ3NDhDIC8qIEpTU1ZHRkVEcm9wU2hhZG93RWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzU4RTg3QjEzNjBBMkVFMDBFNDc0OEMg
LyogSlNTVkdGRURyb3BTaGFkb3dFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTU1ZHRkVEcm9wU2hhZG93RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MzU4RTg3RTEzNjBBMzE3MDBFNDc0OEMgLyogRkVEcm9wU2hhZG93LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZFRHJvcFNoYWRvdy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNThFODdGMTM2MEEzMTcwMEU0NzQ4QyAvKiBGRURy
b3BTaGFkb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVEcm9wU2hhZG93
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNThFODgyMTM2MEEzM0IwMEU0NzQ4
QyAvKiBTVkdGRURyb3BTaGFkb3dFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MzU4RTg4MzEzNjBBMzNCMDBFNDc0OEMgLyogU1ZHRkVEcm9wU2hhZG93
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRURyb3BTaGFk
b3dFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNThFODg0MTM2MEEz
M0IwMEU0NzQ4QyAvKiBTVkdGRURyb3BTaGFkb3dFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBTVkdGRURyb3BTaGFkb3dFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDM2NzA4ODExMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR0Jsb2NrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR0Jsb2NrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4ODIxMkQ5Q0E0QTAwMDQ0MjM0IC8q
IFJlbmRlclNWR0Jsb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRl
clNWR0Jsb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODgzMTJEOUNB
NEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdDb250YWluZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHQ29udGFpbmVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDM2NzA4ODQxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR0NvbnRh
aW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdDb250YWlu
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4ODUxMkQ5Q0E0QTAwMDQ0
MjM0IC8qIFJlbmRlclNWR0dyYWRpZW50U3RvcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW5kZXJTVkdHcmFkaWVudFN0b3AuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0MzY3MDg4NjEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHR3JhZGll
bnRTdG9wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR0dyYWRp
ZW50U3RvcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDg4NzEyRDlDQTRB
MDAwNDQyMzQgLyogUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODg4MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5k
ZXJTVkdIaWRkZW5Db250YWluZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQzNjcwODg5MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdJbWFnZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTVkdJbWFnZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODhBMTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJT
VkdJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdJbWFn
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDg4QjEyRDlDQTRBMDAwNDQy
MzQgLyogUmVuZGVyU1ZHTW9kZWxPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyU1ZHTW9kZWxPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MzY3MDg4QzEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHTW9kZWxPYmpl
Y3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU1ZHTW9kZWxPYmpl
Y3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OEQxMkQ5Q0E0QTAwMDQ0
MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDM2NzA4OEUxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODhGMTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5k
ZXJTVkdSZXNvdXJjZUNsaXBwZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDM2NzA4OTAxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlQ2xp
cHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdSZXNvdXJj
ZUNsaXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OTExMkQ5Q0E0
QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OTIxMkQ5Q0E0QTAwMDQ0MjM0IC8q
IFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQzNjcwODkzMTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZp
bHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTVkdS
ZXNvdXJjZUZpbHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODk0
MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDg5NTEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVy
U1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDg5NjEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVy
U1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VGaWx0ZXJQcmltaXRpdmUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OTcxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291
cmNlR3JhZGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQzNjcwODk4MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlR3JhZGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OTkxMkQ5Q0E0QjAwMDQ0
MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTGluZWFyR3JhZGllbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VMaW5lYXJHcmFkaWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODlBMTJEOUNBNEIwMDA0NDIz
NCAvKiBSZW5kZXJTVkdSZXNvdXJjZUxpbmVhckdyYWRpZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlTGluZWFyR3JhZGllbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4OUIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRl
clNWR1Jlc291cmNlTWFya2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlclNWR1Jlc291cmNlTWFya2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDM2NzA4OUMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTWFya2Vy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlTWFy
a2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODlEMTJEOUNBNEIwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTVkdSZXNvdXJjZU1hc2tlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQzNjcwODlFMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdS
ZXNvdXJjZU1hc2tlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJT
VkdSZXNvdXJjZU1hc2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDg5
RjEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VQYXR0ZXJuLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR1Jlc291cmNlUGF0dGVybi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwOEEwMTJEOUNBNEIwMDA0NDIz
NCAvKiBSZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VQYXR0ZXJuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQzNjcwOEExMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVJh
ZGlhbEdyYWRpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlclNWR1Jlc291cmNlUmFkaWFsR3JhZGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0MzY3MDhBMjEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VSYWRp
YWxHcmFkaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdS
ZXNvdXJjZVJhZGlhbEdyYWRpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQz
NjcwOEEzMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3IuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHUmVzb3VyY2VT
b2xpZENvbG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QTQxMkQ5
Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlU29saWRDb2xvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QTUxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJl
bmRlclNWR1Jvb3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyU1ZHUm9vdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwOEE2MTJE
OUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSb290LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlbmRlclNWR1Jvb3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDM2NzA4QTkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1RyYW5zZm9ybWFibGVDb250YWlu
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHVHJh
bnNmb3JtYWJsZUNvbnRhaW5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQz
NjcwOEFBMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdUcmFuc2Zvcm1hYmxlQ29udGFpbmVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1RyYW5zZm9ybWFi
bGVDb250YWluZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QUIxMkQ5
Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QUMxMkQ5Q0E0QjAwMDQ0MjM0
IC8qIFJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQzNjcwOEFGMTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdNYXJrZXJEYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR01hcmtlckRhdGEuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QjIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jl
bmRlclN1cHBvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZH
UmVuZGVyU3VwcG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwOEIz
MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZW5kZXJTdXBwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNWR1JlbmRlclN1cHBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDM2NzA4QjQxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1JlbmRlclRyZWVBc1RleHQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUmVuZGVyVHJlZUFz
VGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzNjcwOEI1MTJEOUNBNEIw
MDA0NDIzNCAvKiBTVkdSZW5kZXJUcmVlQXNUZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNWR1JlbmRlclRyZWVBc1RleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDM2NzA4QjYxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291cmNlcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdSZXNvdXJjZXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDhCNzEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVz
b3VyY2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1Jlc291cmNlcy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzY3MDhCODEyRDlDQTRCMDAwNDQyMzQg
LyogU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0MzY3MDhCOTEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVzb3VyY2VzQ2FjaGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUmVzb3VyY2VzQ2FjaGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM2NzA4QkExMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291
cmNlc0N5Y2xlU29sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDM2NzA4QkIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1Jlc291cmNlc0N5Y2xlU29sdmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkMzMTJEQTI1RTgwMEFGODBB
MiAvKiBSZW5kZXJNYXRoTUxCbG9jay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSZW5kZXJNYXRoTUxCbG9jay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQzOTA0NkM0MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxCbG9jay5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNYXRoTUxCbG9jay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0MzkwNDZDNTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVy
TWF0aE1MRmVuY2VkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlck1hdGhNTEZlbmNlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0
NkM1MTJEQTI1RTgwMEFGODFCMyAvKiBSZW5kZXJNYXRoTUxGZW5jZWRPcGVyYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNYXRoTUxGZW5jZWRPcGVy
YXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkM2MTJEQTI1RTgw
MEFGODBBMiAvKiBSZW5kZXJNYXRoTUxGZW5jZWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyTWF0aE1MRmVuY2VkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQzOTA0NkM2MTJEQTI1RTgwMEFGODFCMyAvKiBSZW5kZXJNYXRoTUxGZW5jZWRPcGVyYXRv
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNYXRoTUxGZW5jZWRP
cGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzkwNDZDNzEyREEyNUU4
MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MRnJhY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTWF0aE1MRnJhY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0MzkwNDZDODEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1M
RnJhY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTWF0aE1M
RnJhY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2QzkxMkRBMjVF
ODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTE1hdGguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVuZGVyTWF0aE1MTWF0aC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQzOTA0NkNBMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxNYXRoLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1hdGhNTE1hdGguaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2Q0IxMkRBMjVFODAwQUY4MEEyIC8qIFJl
bmRlck1hdGhNTE9wZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlck1hdGhNTE9wZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDM5MDQ2Q0MxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTE9wZXJhdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1hdGhNTE9wZXJhdG9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkNEMTJEQTI1RTgwMEFGODBBMiAvKiBS
ZW5kZXJNYXRoTUxSb290LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlbmRlck1hdGhNTFJvb3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0Mzkw
NDZDRTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MUm9vdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNYXRoTUxSb290Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQzOTA0NkNGMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxSb3cu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTWF0aE1MUm93
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2RDAxMkRBMjVFODAwQUY4
MEEyIC8qIFJlbmRlck1hdGhNTFJvdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJNYXRoTUxSb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2
RDMxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFNjcmlwdHMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTWF0aE1MU2NyaXB0cy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkQ0MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5k
ZXJNYXRoTUxTY3JpcHRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRl
ck1hdGhNTFNjcmlwdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDM5MDQ2RDUx
MkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFVuZGVyT3Zlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNYXRoTUxVbmRlck92ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzkwNDZENTEyREEyNUU4MTJBRjgwQUMgLyogTWF0
aE9wZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1hdGhP
cGVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkQ2MTJEQTI1
RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxVbmRlck92ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyTWF0aE1MVW5kZXJPdmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQzOTA0NkQ2MTJEQTI1RTgxMkFGODBBQyAvKiBNYXRoT3BlcmF0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE9wZXJhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkQ3MTJEQTI1RTgwMEFGODBBOSAvKiBSZW5kZXJN
YXRoTUxUb2tlbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5k
ZXJNYXRoTUxUb2tlbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzOTA0NkQ4
MTJEQTI1RTgwMEFGODBBOSAvKiBSZW5kZXJNYXRoTUxUb2tlbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZW5kZXJNYXRoTUxUb2tlbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0MzkxNzZDQjEyREEyNUUxN0JBRjgwQTIgLyogTWF0aE1MU3R5bGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MU3R5bGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0MzkxNzZDQzEyREEyNUUxN0JBRjgwQTIgLyogTWF0
aE1MU3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MU3R5bGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDNCODVFRDAxOENCRUFDRTAwRTMxQUY0
IC8qIG1ha2VTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0aWJpbGl0eUVsZW1lbnRNYXAucHkg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0LnNjcmlwdC5weXRob247IHBhdGggPSBtYWtlU2VsZWN0b3JQc2V1ZG9D
bGFzc0FuZENvbXBhdGliaWxpdHlFbGVtZW50TWFwLnB5OyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0M0I4NUVEMjE4Q0JFQzUyMDBFMzFBRjQgLyogU2VsZWN0b3JQc2V1ZG9DbGFzc0Fu
ZENvbXBhdGliaWxpdHlFbGVtZW50TWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFNlbGVjdG9yUHNldWRvQ2xhc3NBbmRDb21wYXRpYmlsaXR5RWxlbWVudE1hcC5j
cHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1NlbGVjdG9yUHNldWRvQ2xhc3NBbmRD
b21wYXRpYmlsaXR5RWxlbWVudE1hcC5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCTQzQjg1RUQzMThDQkVDNTIwMEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNz
QW5kQ29tcGF0aWJpbGl0eUVsZW1lbnRNYXAuZ3BlcmYgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0g
U2VsZWN0b3JQc2V1ZG9DbGFzc0FuZENvbXBhdGliaWxpdHlFbGVtZW50TWFwLmdwZXJmOyBwYXRo
ID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9TZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0aWJp
bGl0eUVsZW1lbnRNYXAuZ3BlcmY7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCTQzQjg1RUQ2MThDQkVDOTcwMEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29t
cGF0aWJpbGl0eUVsZW1lbnRNYXAuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VsZWN0b3JQ
c2V1ZG9DbGFzc0FuZENvbXBhdGliaWxpdHlFbGVtZW50TWFwLmluOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0M0MwOTJCOTEyRDlFNEVFMDBBOTg5QzMgLyogUmVuZGVyU1ZHRm9yZWln
bk9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJT
VkdGb3JlaWduT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDNDMDky
QkExMkQ5RTRFRTAwQTk4OUMzIC8qIFJlbmRlclNWR0ZvcmVpZ25PYmplY3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU1ZHRm9yZWlnbk9iamVjdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0M0QyNTk3NjEzQzgxNkY0MDA2MDg1NTkgLyogSW1hZ2VC
dWZmZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1hZ2VCdWZm
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0M0QyNTk4NjEzQzgxNkY0MDA2
MDg1NTkgLyogSW1hZ2VCdWZmZXJQaXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEltYWdlQnVmZmVyUGlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQzRURENjdDMUI0ODVEQkYwMDY0MEU3NSAvKiBDb21iaW5lZEZpbHRlcnNBbHBoYWJldC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb21iaW5lZEZpbHRlcnNB
bHBoYWJldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQzRURENjdEMUI0ODVE
QkYwMDY0MEU3NSAvKiBDb21iaW5lZEZpbHRlcnNBbHBoYWJldC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDb21iaW5lZEZpbHRlcnNBbHBoYWJldC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0NDE1MjkyQzBFMUFFOEEwMDBDNEEyRDAgLyogSFRNTFBsdWdJbklt
YWdlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0MTUyOTJEMEUx
QUU4QTAwMEM0QTJEMCAvKiBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NDI1MDcwNjI1ODI5QTE0MDBDMDkzNjggLyogQXBw
SGlnaGxpZ2h0U3RvcmFnZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBIaWdobGlnaHRTdG9y
YWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQyNTA3MDcyNTgyOUExNDAw
QzA5MzY4IC8qIEFwcEhpZ2hsaWdodFN0b3JhZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwSGlnaGxp
Z2h0U3RvcmFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NDI5NTZDQTIxOEE2
RDMwMDA4MERCNTQgLyogRGljdGlvbmFyeUxvb2t1cExlZ2FjeS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IERpY3Rpb25hcnlMb29rdXBMZWdhY3kubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ0MzdDNEE3MjRFMkFFNUYwMDA5NTEyOCAvKiBMYXp5TG9hZEZyYW1lT2JzZXJ2ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTGF6eUxvYWRGcmFtZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ0MzdDNEE5MjRFMkFFNUYwMDA5NTEyOCAvKiBMYXp5TG9hZEZyYW1l
T2JzZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF6eUxvYWRGcmFtZU9ic2VydmVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQzRjA0MjYwRTc1QzhGQjAwN0U1NDA3
IC8qIE5ldHdvcmtTdGF0ZU5vdGlmaWVySU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gTmV0d29ya1N0YXRlTm90aWZpZXJJT1MubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ0NEQ0RTIxMEY3MDhCMkUwMDMxNThFMCAvKiBXZWJDb3JlVVJMUmVz
cG9uc2VJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJD
b3JlVVJMUmVzcG9uc2VJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0NTIx
MEREMjVENjFFRkYwMDNBMkVEOCAvKiBBcHBIaWdobGlnaHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQXBwSGlnaGxpZ2h0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ0NTc3NUU0MjA0NzJGNzMwMDhEQ0U1RCAvKiBMb2NhbERlZmF1bHRTeXN0ZW1BcHBlYXJh
bmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsRGVmYXVsdFN5c3RlbUFwcGVhcmFuY2UuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQ1Nzc1RTkyMDQ3MzAzQjAwOERDRTVEIC8qIExv
Y2FsRGVmYXVsdFN5c3RlbUFwcGVhcmFuY2UubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBMb2NhbERlZmF1bHRTeXN0ZW1BcHBlYXJhbmNlLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0NDZEQzY0NjI0QTI5RDlCMDA2MUYzOTAgLyogUGxheWJhY2tU
YXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Rh
cmdldENsaWVudENvbnRleHRJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ0NkVFNEU4MjU1RTBEOTIwMDQ1NDQ2MyAvKiBMb2NhbGl6YWJsZUFkZGl0aW9ucy5zdHJp
bmdzLm91dCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0g
dGV4dC5wbGlzdC5zdHJpbmdzOyBmaWxlRW5jb2RpbmcgPSA0OyBuYW1lID0gTG9jYWxpemFibGVB
ZGRpdGlvbnMuc3RyaW5ncy5vdXQ7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL2VuLmxw
cm9qL0xvY2FsaXphYmxlQWRkaXRpb25zLnN0cmluZ3Mub3V0OyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk0NDcxNzEwQjIwNUFGOTQ1MDAwQTExNkUgLyogTWVkaWFRdWVy
eVBhcnNlckNvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFRdWVyeVBhcnNlckNv
bnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NDcxNzEwQzIwNUFGOTQ1
MDAwQTExNkUgLyogTWVkaWFRdWVyeVBhcnNlckNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVk
aWFRdWVyeVBhcnNlckNvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQ3
OTU4MDIxNjQzQjQ3QjAwMUUwQTdGIC8qIFBhcnNlZENvbnRlbnRUeXBlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhcnNlZENvbnRlbnRUeXBlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQ3OTU4MDMxNjQzQjQ3QjAwMUUwQTdGIC8qIFBhcnNl
ZENvbnRlbnRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhcnNlZENv
bnRlbnRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0OEEyOUJEMEE0NkQ5
Q0IwMDMwNzU5RiAvKiBKU0hUTUxPcHRpb25zQ29sbGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDQ4QTI5QkUwQTQ2RDlDQjAwMzA3NTlGIC8qIEpTSFRNTE9wdGlv
bnNDb2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0hUTUxPcHRpb25zQ29sbGVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ0OEIxQjc4MEYzQTJGOUIwMDQ3QTlFMiAvKiBUZXh0U2l6ZUFkanVzdG1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dFNpemVBZGp1c3RtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0OTA5OEIxMEY4RjgyNTIwMDc2QTMyNyAvKiBGZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBGZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDQ5NkUzOUIx
Mzk4MTM2QzAwM0VFMzJBIC8qIEpTU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBbmltYXRlTW90aW9uRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0OTZFMzlDMTM5ODEzNkMwMDNFRTMy
QSAvKiBKU1NWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDQ5NkUzOUYxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTVBhdGhFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0OTZFM0ExMTM5ODEzQ0IwMDNFRTMyQSAv
KiBKU1NWR01QYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1NWR01QYXRoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ0OUQ4NjREMjY0MEM5QjkwMDAxMjJERSAvKiBIaWdobGlnaHRWaXNpYmlsaXR5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEhpZ2hsaWdodFZpc2liaWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDRBMjBEQjgwRjg0MTY2QzAwQjNFMUZFIC8qIFdlYkNvcmVVUkxSZXNwb25zZUlPUy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVVJMUmVzcG9uc2VJT1Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRBMjhBQUIxMkRGQjhBQzAwQUU5MjNC
IC8qIE1hdGhNTEVsZW1lbnRGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IE1hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L01hdGhNTEVsZW1lbnRGYWN0b3J5Lmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTQ0QTI4QUFFMTJERkI4QkYwMEFFOTIzQiAvKiBNYXRoTUxOYW1lcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBNYXRoTUxOYW1lcy5oOyBwYXRoID0gRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9NYXRoTUxOYW1lcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQk0NEFFMDQ1ODI1NzlDRkZCMDBDNDJFNjUgLyogQXBwSGlnaGxpZ2h0UmFuZ2VE
YXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcEhpZ2hsaWdo
dFJhbmdlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0QUUwNDVBMjU3
OUNGRkIwMEM0MkU2NSAvKiBBcHBIaWdobGlnaHRSYW5nZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQXBwSGlnaGxpZ2h0UmFuZ2VEYXRhLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ0QjM4QkY0MjUzNjkwMUEwMEE0NDU4RCAvKiBTZWxlY3Rpb25SYW5n
ZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VsZWN0aW9uUmFuZ2VE
YXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0QjM4QkY5MjUzNjlBODgwMEE0
NDU4RCAvKiBTZWxlY3Rpb25SYW5nZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2VsZWN0aW9uUmFuZ2VEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDRCRDJCMzYyNTI3Nzk3ODAwNTVEOTVBIC8qIEdsb2JhbEV2ZW50SGFuZGxlcnMr
U2VsZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSAiR2xvYmFsRXZlbnRIYW5kbGVycytTZWxlY3Rpb24uaWRsIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRDOTkxODEwRjNEMUUwRDAwNTg2NjcwIC8q
IFNjcm9sbGJhclRoZW1lSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gU2Nyb2xsYmFyVGhlbWVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUlPUy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1Mu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGhlbWVJT1MuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRDOTkxOUUwRjNEMjEwRTAwNTg2NjcwIC8qIFRoZW1lSU9T
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVGhlbWVJT1MubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0Q0EyODQzMjQ1RkNBNTAwMEM5NEM3RiAv
KiBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHRJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHRJT1MubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0Q0UyQkJDMjY0Mzc5OUQwMDdBRTExMCAvKiBX
ZWJUZXh0SW5kaWNhdG9yTGF5ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJUZXh0SW5k
aWNhdG9yTGF5ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0Q0UyQkJFMjY0
Mzc5OUUwMDdBRTExMCAvKiBXZWJUZXh0SW5kaWNhdG9yTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V2ViVGV4dEluZGljYXRvckxheWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0
RDhEQTk4MTM5NTQ1QkUwMDMzN0I3NSAvKiBTVkdNUGF0aEVsZW1lbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFNWR01QYXRoRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ0RDhEQTlBMTM5NTQ1Q0QwMDMzN0I3NSAvKiBTVkdBbmltYXRlTW90aW9uRWxlbWVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHQW5pbWF0ZU1vdGlvbkVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NEUzNDlGNzI0NkY0REM3MDA2ODQ3OUMg
LyogTGliV2ViUlRDRW51bVRyYWl0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUg
PSBMaWJXZWJSVENFbnVtVHJhaXRzLmg7IHBhdGggPSBsaWJ3ZWJydGMvTGliV2ViUlRDRW51bVRy
YWl0cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NEU4OEU0QzIzNjkxMjhBMDA5
QjQ4NDcgLyogSGlnaGxpZ2h0UmVnaXN0ZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhp
Z2hsaWdodFJlZ2lzdGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRFODhF
NEQyMzY5MTI4QjAwOUI0ODQ3IC8qIEhpZ2hsaWdodC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSGlnaGxpZ2h0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDRFODhFNTAy
MzZBNTZBQzAwOUI0ODQ3IC8qIEhpZ2hsaWdodFJlZ2lzdGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhp
Z2hsaWdodFJlZ2lzdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0RTg4RTUx
MjM2QTVDOEQwMDlCNDg0NyAvKiBIaWdobGlnaHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSGlnaGxpZ2h0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0RTg4RTUyMjM2QTY2N0YwMDlCNDg0
NyAvKiBIaWdobGlnaHRSZWdpc3Rlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIaWdobGlnaHRS
ZWdpc3Rlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ0RTg4RTU0MjM2QTY2
QTEwMDlCNDg0NyAvKiBIaWdobGlnaHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSGlnaGxpZ2h0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDUwQ0VCRUUxNTA3M0JCRTAwMkJC
MTQ5IC8qIExhYmVsYWJsZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTGFiZWxhYmxlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ1MENFQkVGMTUwNzNCQkUwMDJCQjE0OSAvKiBMYWJlbGFibGVFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExhYmVsYWJsZUVsZW1lbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDUxMjUwMjAxNURDRTM3RDAwMkY4NEUyIC8qIFNwaW5CdXR0
b25FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwaW5C
dXR0b25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDUxMjUwMjEx
NURDRTM3RDAwMkY4NEUyIC8qIFNwaW5CdXR0b25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNwaW5CdXR0b25FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ1MUE0OUY4Rjg3MjZCRTA3MTUxOEJFMiAvKiBJU09Qcm90ZWN0aW9uU3lzdGVt
U3BlY2lmaWNIZWFkZXJCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSVNPUHJvdGVjdGlvblN5c3RlbVNwZWNpZmljSGVhZGVyQm94LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDUzRUI2MzUxNTlDNTcwNDAwMDAxQkI3IC8qIERhdGVUaW1lRm9y
bWF0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGVUaW1lRm9ybWF0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ1ODMwRDRCMTY3OUI0RjgwMEFDRjhDMyAv
KiBBdXRvc2Nyb2xsQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBBdXRvc2Nyb2xsQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ1ODMwRDRDMTY3OUI0RjgwMEFDRjhDMyAvKiBBdXRvc2Nyb2xsQ29udHJvbGxlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRvc2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NThGRTQwNzE1ODlERjBCMDA1NjA5RTYg
LyogUmVuZGVyU2VhcmNoRmllbGQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUmVuZGVyU2VhcmNoRmllbGQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0NThGRTQwODE1ODlERjBCMDA1NjA5RTYgLyogUmVuZGVyU2VhcmNoRmllbGQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU2VhcmNoRmllbGQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDVGRUE1Q0QxNTZEREU4QzAwNjU0MTAxIC8qIERlY2ltYWwu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVjaW1hbC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ1RkVBNUNFMTU2RERFOEMwMDY1NDEwMSAvKiBE
ZWNpbWFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlY2ltYWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDYwQkI2MTMxRDBBMUJFQzAwMjIxODEyIC8qIEJh
c2U2NFV0aWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBC
YXNlNjRVdGlsaXRpZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjBCQjYx
NDFEMEExQkVDMDAyMjE4MTIgLyogQmFzZTY0VXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEJhc2U2NFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0NjBDNzQ1NjI2REQ2OTlEMDA0MjdEM0UgLyogV2luZG93T3JXb3JrZXJHbG9iYWxT
Y29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDYwQzc0NTgyNkRENjk5RDAwNDI3RDNF
IC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2luZG93T3JX
b3JrZXJHbG9iYWxTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjBDQkYz
MzFENEJDQ0ZFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NV2luZG93UHJvcGVydGllcy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2MENCRjM0MUQ0QkNDRkUwMDkyRTg4RSAvKiBK
U0RPTVdpbmRvd1Byb3BlcnRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNET01XaW5kb3dQcm9wZXJ0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
MEQxOTQ0MUZDRTIxREQwMEMzREI4NSAvKiBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZUN1c3Rv
bS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
MjczQ0FDMjYwRTU5REYwMDZGQUE5MSAvKiBTV1NjcmlwdFN0b3JhZ2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU1dTY3JpcHRTdG9yYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ2MjczQ0FFMjYwRTU5REYwMDZGQUE5MSAvKiBTV1NjcmlwdFN0b3JhZ2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1dTY3JpcHRTdG9yYWdl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDYyRTRDNEQyNjE2QTgwMTAwM0Ey
QzY3IC8qIFNjcmlwdEJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y3JpcHRCdWZmZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDYyRTRDNEYyNjE2
QTgwMTAwM0EyQzY3IC8qIFNjcmlwdEJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTY3JpcHRCdWZmZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0NjM0NTkyQjFBQzIyNzEwMDBFQ0I3MUMgLyogUG93ZXJPYnNlcnZlck1hYy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3dlck9ic2VydmVyTWFjLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDYzNTIxQUEyMDgxMDkwQjAwQzI4OTIyIC8q
IFdpbmRvd1Byb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRvd1By
b3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2MzUyMUFDMjA4MTA5MEUwMEMy
ODkyMiAvKiBXaW5kb3dQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXaW5kb3dQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2M0VC
NjIwMUI4Nzg5Q0IwMDk2RUQ1MSAvKiBUYWdDb2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRhZ0NvbGxlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0NjNFQjYyMTFCODc4OUNCMDA5NkVENTEgLyogVGFnQ29sbGVjdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUYWdDb2xsZWN0aW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2NDI0MDQ1MjBFQUYwRUQwMEIyOUZEMiAvKiBEYXRh
YmFzZU1hbmFnZXJDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERhdGFiYXNlTWFuYWdl
ckNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjVBOEU3ODFDOEEyNENF
MDBFN0QzRTQgLyogUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzQ29jb2EubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBSdW50aW1lQXBwbGljYXRpb25DaGVja3NDb2Nv
YS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDY1RUREOUYyMjJGNEVDMzAwQjQ2
RTE2IC8qIERldmljZU9yaWVudGF0aW9uT3JNb3Rpb25QZXJtaXNzaW9uU3RhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25Pck1vdGlvblBlcm1p
c3Npb25TdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjVFRERBMDIyMkY0
RUM0MDBCNDZFMTYgLyogRGV2aWNlT3JpZW50YXRpb25Pck1vdGlvblBlcm1pc3Npb25TdGF0ZS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25Pck1vdGlvblBlcm1p
c3Npb25TdGF0ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2NjUzNkZBMjY0
QzhERDEwMEFBRDFENyAvKiBKU0F1ZGlvTm9kZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0F1ZGlvTm9kZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
NkMyREFCMjZDNzNBRkIwMDY1MTkzMSAvKiBQb2xpY3lDb250YWluZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUG9saWN5Q29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ2NkRDNkFCMUVERTAyMUQwMDc0NjIyNCAvKiBKU0RPTVJlY3RMaXN0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NUmVjdExpc3QuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjZFRDhEMjFFREUwMTM1MDA1RTQzRjYg
LyogSlNET01SZWN0TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RP
TVJlY3RMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2NzFFMDYzMUQ2N0E1
N0IwMEM2QjQ5NyAvKiBDYW52YXNQYXRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhbnZhc1BhdGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
NjcxRTA2NDFENjdBNTdCMDBDNkI0OTcgLyogQ2FudmFzUGF0aC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDYW52YXNQYXRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ2NzI0MTNBMUZBMjRCMTQwMDg4QkQ2RCAvKiBTV0NvbnRleHRNYW5hZ2VyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNXQ29udGV4dE1hbmFnZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjcyNDEzQjFGQTI0QjE0MDA4OEJENkQgLyog
U1dDb250ZXh0TWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTV0Nv
bnRleHRNYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2NzJBQTk0MjZC
MDk0MjAwMEU2RUMzOCAvKiBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ2NzJBQTk1MjZCMDk0MjAwMEU2RUMzOCAvKiBDcm9zc09yaWdpbkVtYmVkZGVy
UG9saWN5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3ku
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjcyQUE5NjI2QjA5NDIxMDBFNkVD
MzggLyogQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2NzJB
QTk3MjZCMDk0MjEwMEU2RUMzOCAvKiBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0NjczMDIwMTFDNEVGRTY2MDBCQ0IzNTcgLyogSWdub3JlT3BlbnNEdXJpbmdVbmxv
YWRDb3VudEluY3JlbWVudGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEln
bm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291bnRJbmNyZW1lbnRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0NjgyRDFGRjFGNzk3ODIzMDBDODYzREIgLyogU3RvcmVkQ3JlZGVudGlh
bHNQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmVkQ3JlZGVu
dGlhbHNQb2xpY3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDY4MzQ0REMxRURE
RkE1RjAwQjc3OTVCIC8qIERPTVJlY3RMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01SZWN0TGlzdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2ODM0NEREMUVEREZBNUYwMEI3Nzk1QiAvKiBE
T01SZWN0TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01SZWN0TGlzdC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2ODM0NERFMUVEREZBNUYwMEI3Nzk1QiAvKiBET01S
ZWN0TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01SZWN0TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0Njg4RUUzQTI2REQyNjBDMDAyQUY1QzQgLyogQ3Jvc3NPcmlnaW5Nb2Rl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENyb3NzT3JpZ2luTW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0NjhCOEJERTI1Q0M4NDkzMDBGNjc4MjIgLyogSlNCYXNlQXVkaW9Db250ZXh0
Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQmFzZUF1ZGlvQ29udGV4dEN1c3RvbS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2OUNDQ0ZBMjY5RDAyMDIwMDZFMDMx
NCAvKiBCcm9hZGNhc3RDaGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJyb2FkY2FzdENo
YW5uZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NjlDQ0NGQzI2OUQwMjAy
MDA2RTAzMTQgLyogQnJvYWRjYXN0Q2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCcm9hZGNhc3RD
aGFubmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2OUNDQ0ZEMjY5RDAyMDMw
MDZFMDMxNCAvKiBCcm9hZGNhc3RDaGFubmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBCcm9hZGNhc3RDaGFubmVsLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZBQUFBM0EyNUQzNjMxNDAwQkFGNDJG
IC8qIEF1ZGlvRmlsZVJlYWRlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEF1ZGlvRmlsZVJlYWRlckNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ2QUFBQTNDMjVEMzYzMTQwMEJBRjQyRiAvKiBBdWRpb0ZpbGVSZWFkZXJDb2NvYS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb0ZpbGVSZWFkZXJDb2NvYS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QjYzRjZCMUM2RThDREYwMDJFOTE0
QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRXZlbnRUYXJnZXRDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDZCNjUwREIyMjk2MjYyNzAwRkQ4QUE0IC8qIFBhZ2VJZGVudGlmaWVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ2Qjg1OTNBMjYxNjcyMEMwMDE5RURDNiAvKiBTY3JpcHRCdWZmZXJTb3Vy
Y2VQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRCdWZmZXJTb3VyY2VQcm92aWRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkI5NTE4QTIwN0Q2MzI4MDBBN0QyREQg
LyogQWJzdHJhY3RET01XaW5kb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QWJzdHJhY3RET01XaW5kb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZCOTUx
OEMyMDdENjMyOTAwQTdEMkREIC8qIFJlbW90ZUZyYW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbW90ZUZyYW1lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDZCOTUxOEQyMDdENjMyQTAwQTdEMkREIC8qIFJlbW90ZURPTVdpbmRvdy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW1vdGVET01XaW5kb3cuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkI5NTE4RTIwN0Q2MzJBMDBBN0QyREQg
LyogUmVtb3RlRE9NV2luZG93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJl
bW90ZURPTVdpbmRvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkI5NTE4RjIw
N0Q2MzJCMDBBN0QyREQgLyogQWJzdHJhY3RGcmFtZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBBYnN0cmFjdEZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ2Qjk1MTkwMjA3RDYzMkMwMEE3RDJERCAvKiBHbG9iYWxXaW5kb3dJZGVudGlmaWVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdsb2JhbFdpbmRvd0lkZW50aWZpZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZCOTUxOTEyMDdENjMyRDAwQTdEMkREIC8q
IEdsb2JhbEZyYW1lSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBHbG9iYWxGcmFtZUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDZCOTUxOTIyMDdENjMyRTAwQTdEMkREIC8qIFJlbW90ZUZyYW1lLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90ZUZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ2Qjk1MTkzMjA3RDYzMkYwMEE3RDJERCAvKiBBYnN0cmFjdERPTVdpbmRvdy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBYnN0cmFjdERPTVdpbmRvdy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2Qjk1MTk0MjA3RDYzMzAwMEE3RDJE
RCAvKiBBYnN0cmFjdEZyYW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEFic3RyYWN0RnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkI5
NUJGMjIyMzFDRkI4MDA1M0E1MDQgLyogRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3ND
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ2Qjk1QkY0MjIzMUNGQjgwMDUzQTUwNCAvKiBEZXZpY2VPcmllbnRh
dGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QkNCQkJFMjA4NTAwNUIwMDcxMDYzOCAvKiBK
U1JlbW90ZURPTVdpbmRvd0N1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1JlbW90ZURPTVdpbmRvd0N1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ2QkNCQkMwMjA4NTAwN0YwMDcxMDYzOCAvKiBKU1JlbW90ZURPTVdpbmRvd0Jh
c2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZW1vdGVET01XaW5kb3dC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QkNCQkMxMjA4NTAwODAwMDcx
MDYzOCAvKiBKU1JlbW90ZURPTVdpbmRvd0Jhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNSZW1vdGVET01XaW5kb3dCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDZCQ0JCQzMyMDg1MDBBNzAwNzEwNjM4IC8qIFJlbW90ZURPTVdpbmRv
dy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUmVtb3RlRE9NV2luZG93LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZCRDA1QzAyNUJCNkU0RDAwMjI1RjMwIC8qIEV2ZW50
TGlzdGVuZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudExpc3RlbmVyT3B0aW9ucy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QkQwNUMyMjVCQjZFNEUwMDIyNUYzMCAvKiBBZGRF
dmVudExpc3RlbmVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBZGRFdmVudExpc3RlbmVyT3B0
aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkJEMDVDMzI1QkI2RTRFMDAy
MjVGMzAgLyogRXZlbnRMaXN0ZW5lck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRMaXN0
ZW5lck9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZCRDA1QzQyNUJC
NkU0RjAwMjI1RjMwIC8qIEFkZEV2ZW50TGlzdGVuZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBZGRFdmVu
dExpc3RlbmVyT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QzA5
NjIwMjNENzhERDYwMDY1N0MwOSAvKiBIVFRQQ29va2llQWNjZXB0UG9saWN5LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEhUVFBDb29raWVBY2NlcHRQb2xpY3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDZDMzc2NUYyMDg1MTc2QzAwQzczODI5IC8qIEpTUmVtb3RlRE9NV2luZG93LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUmVtb3RlRE9NV2luZG93LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZDMzc2NjEyMDg1MTc2RDAwQzczODI5
IC8qIEpTUmVtb3RlRE9NV2luZG93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTUmVtb3RlRE9NV2luZG93Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2QzNB
OEQzMjU0OEQ0QjcwMEM4QzUzQSAvKiBKU0F1ZGlvQnVmZmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTQXVkaW9CdWZmZXJDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0NkM2OTZDOTFFNzIwNUU0MDA1OTc5MzcgLyogQ1BVTW9uaXRvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDUFVNb25pdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ2QzY5NkNBMUU3MjA1RTQwMDU5NzkzNyAvKiBDUFVNb25pdG9yLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENQVU1vbml0b3IuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkM4M0VGQjFBOUJCRTI5MDBBNzlBNDEgLyogR2Vv
Tm90aWZpZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2VvTm90
aWZpZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkM4M0VGQzFBOUJCRTI5
MDBBNzlBNDEgLyogR2VvTm90aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gR2VvTm90aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZDQTlDNDEx
Rjk3QkJFNzAwNENGQzNBIC8qIFZpc2liaWxpdHlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBWaXNpYmlsaXR5U3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDZDQTlDNDIxRjk3QkJFNzAwNENGQzNBIC8qIFZpc2liaWxpdHlTdGF0ZS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gVmlzaWJpbGl0eVN0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDZEMDAwM0MyNkEwRkU2RjAwRDFCRjFFIC8qIFN1Ym1pdEV2ZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN1Ym1pdEV2ZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZEMDAwM0UyNkEwRkU2RjAwRDFCRjFFIC8q
IFN1Ym1pdEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1Ym1pdEV2
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2RDAwMDNGMjZBMEZFNzAwMEQx
QkYxRSAvKiBTdWJtaXRFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3VibWl0RXZl
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkRCQjY0RTFBQjhDOTZGMDBE
OUE4MTMgLyogUG93ZXJPYnNlcnZlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQb3dlck9ic2VydmVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
REQ2RTFDMjZFN0RCRTYwMDhDMUY0QyAvKiBSZXBvcnRpbmdFbmRwb2ludHNDYWNoZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXBvcnRpbmdFbmRwb2ludHNDYWNoZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkRENkUxRTI2RTdEQkU3MDA4QzFGNEMgLyog
UmVwb3J0aW5nRW5kcG9pbnRzQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUmVwb3J0aW5nRW5kcG9pbnRzQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0NkREOTNENTI2OURFNzRCMDAxQUZEODggLyogQnJvYWRjYXN0Q2hhbm5lbElk
ZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnJvYWRjYXN0Q2hhbm5lbElkZW50aWZpZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZERTlCQjQyNjlERjkzMjAwMjRDNUE2IC8q
IEJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCcm9hZGNhc3RDaGFu
bmVsUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZERkY0OTYxREMy
NjAxMzAwQjgwQjQ4IC8qIFNoYWRvd1Jvb3RNb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNoYWRvd1Jvb3RNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ2REZGNDk3MURDMjYwMTMwMEI4MEI0OCAvKiBTaGFkb3dSb290TW9kZS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gU2hhZG93Um9vdE1vZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0NkRGRjQ5OTFEQzI2MUY5MDBCODBCNDggLyogSlNTaGFkb3dSb290TW9kZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NoYWRvd1Jvb3RNb2RlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZERkY0OUExREMyNjFGOTAwQjgwQjQ4
IC8qIEpTU2hhZG93Um9vdE1vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNTaGFkb3dSb290TW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkUwMTZB
RDFGNzJENjFFMDAyODJCMkMgLyogRE9NSGlnaFJlc1RpbWVTdGFtcC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01IaWdoUmVzVGltZVN0YW1wLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ2RTBDMERBMjNDMDA2QjMwMDVFNDdBRSAvKiBEcmFnRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHJhZ0V2ZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQ2RTBDMERDMjNDMDA2QjQwMDVFNDdBRSAvKiBEcmFnRXZlbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRHJhZ0V2ZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFMEMwREQyM0MwMDZCNDAwNUU0N0FFIC8q
IERyYWdFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRHJhZ0V2ZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFMTM5RjYyM0Q4QjhFNzAwNzU4NDhFIC8qIEhU
VFBDb29raWVBY2NlcHRQb2xpY3lDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBIVFRQQ29va2llQWNjZXB0UG9saWN5Q29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDZFNzkxNDUxRjk3RTAxNzAwMTk5NzM5IC8qIEpTVmlzaWJpbGl0eVN0YXRlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVmlzaWJpbGl0eVN0YXRl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFNzkxNDYxRjk3RTAxNzAwMTk5
NzM5IC8qIEpTVmlzaWJpbGl0eVN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTVmlzaWJpbGl0eVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
RUIzN0MyMUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJDbGllbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTZXJ2aWNlV29ya2VyQ2xpZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFQjM3QzMxRjk3Q0NDQjAwQjY1NTIz
IC8qIEpTU2VydmljZVdvcmtlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NlcnZpY2VXb3JrZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDZFQjM3QzQxRjk3Q0NDQjAwQjY1NTIzIC8qIEpTU2VydmljZVdvcmtlckNsaWVudHMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTZXJ2aWNlV29ya2VyQ2xp
ZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2RUIzN0M1MUY5N0NDQ0Iw
MEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJDbGllbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTU2VydmljZVdvcmtlckNsaWVudHMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNDZFQjM3QzYxRjk3Q0NDQjAwQjY1NTIzIC8qIEpTU2VydmljZVdvcmtlcldp
bmRvd0NsaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Nl
cnZpY2VXb3JrZXJXaW5kb3dDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0NkVCMzdDNzFGOTdDQ0NCMDBCNjU1MjMgLyogSlNTZXJ2aWNlV29ya2VyV2luZG93Q2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU2VydmljZVdvcmtlcldpbmRv
d0NsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkVCRUEwMTFCN0Q0RDVE
MDBCRTQ5NDEgLyogQ29sbGVjdGlvblRyYXZlcnNhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb2xsZWN0aW9uVHJhdmVyc2FsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ2RUNCNjM2MUZEMEEzQkIwMDg4RTVBRCAvKiBTV0NsaWVudENvbm5lY3Rpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1dDbGllbnRDb25uZWN0aW9u
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFQ0I2MzcxRkQwQTNCQjAwODhF
NUFEIC8qIFNXQ2xpZW50Q29ubmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTV0NsaWVudENvbm5lY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NDZFRjE0MjAxRjk3QjdCQTAwQzJBNTI0IC8qIFNlcnZpY2VXb3JrZXJXaW5kb3dDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlcldpbmRvd0NsaWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkVGMTQyMTFGOTdCN0JBMDBDMkE1
MjQgLyogU2VydmljZVdvcmtlckNsaWVudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2VydmljZVdvcmtlckNsaWVudHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0NkVGMTQyMjFGOTdCN0JBMDBDMkE1MjQgLyogU2VydmljZVdvcmtlckNsaWVu
dHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlckNsaWVu
dHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFRjE0MjMxRjk3QjdCQTAwQzJB
NTI0IC8qIFNlcnZpY2VXb3JrZXJDbGllbnRzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBT
ZXJ2aWNlV29ya2VyQ2xpZW50cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2
RUYxNDI0MUY5N0I3QkEwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJDbGllbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFRjE0MjUxRjk3QjdCQTAwQzJBNTI0IC8qIFNlcnZpY2VX
b3JrZXJXaW5kb3dDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU2VydmljZVdvcmtlcldpbmRvd0NsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ2RUYxNDI2MUY5N0I3QkEwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyV2luZG93Q2xp
ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXJ2aWNlV29ya2VyV2luZG93Q2xpZW50
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFRjE0MjcxRjk3QjdCQTAwQzJB
NTI0IC8qIFNlcnZpY2VXb3JrZXJDbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2VydmljZVdvcmtlckNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ2RUYxNDI4MUY5N0I3QkEwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXJ2aWNlV29ya2VyQ2xpZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZFRkFGMEQxRTVGQjlDMjAwRTdGMzRCIC8qIExv
d1Bvd2VyTW9kZU5vdGlmaWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gTG93UG93ZXJNb2RlTm90aWZpZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ2RUZBRjBGMUU1RkI5RTEwMEU3RjM0QiAvKiBMb3dQb3dlck1vZGVOb3RpZmllci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMb3dQb3dlck1vZGVOb3RpZmll
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2RUZBRjEwMUU1RkI5RTEwMEU3
RjM0QiAvKiBMb3dQb3dlck1vZGVOb3RpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMb3dQb3dlck1vZGVOb3RpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0NkY5MUJDOTFGQ0REMEZFMDAxNTk5QzMgLyogSlNXb3JrZXJOYXZpZ2F0b3JDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXb3JrZXJOYXZpZ2F0
b3JDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0NkZFRkJDNjI2REQ2
NzgyMDBCMEM0ODggLyogU3RydWN0dXJlZFNlcmlhbGl6ZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU3RydWN0dXJlZFNlcmlhbGl6ZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDZGRUZCQzcyNkRENjc4MzAwQjBDNDg4IC8qIFN0cnVjdHVyZWRTZXJpYWxpemVPcHRp
b25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBTdHJ1Y3R1cmVkU2VyaWFsaXplT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQ3NUM4OUEzMjY1MEFDM0IwMEYzQjQ1NiAvKiBGb3JtYXR0aW5n
R2VvbWV0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybWF0dGluZ0dl
b21ldHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ3ODYzNTY0MjY1MDdBMzcw
MEM1RTJFMCAvKiBCbG9ja0Zvcm1hdHRpbmdHZW9tZXRyeS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBCbG9ja0Zvcm1hdHRpbmdHZW9tZXRyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0N0M0RDU3QzI2NTA4QkNBMDBDN0FCMUYgLyogSW5saW5lRm9ybWF0dGlu
Z0dlb21ldHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUZvcm1h
dHRpbmdHZW9tZXRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0N0Y5NDdEQTI2
NTAyRjJGMDA4Nzk2OEMgLyogQmxvY2tGb3JtYXR0aW5nUXVpcmtzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEJsb2NrRm9ybWF0dGluZ1F1aXJrcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0N0ZBOTZGRjI2NTA5ODJBMDA4NDE0MTYgLyogVGFibGVGb3JtYXR0
aW5nR2VvbWV0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGFibGVGb3Jt
YXR0aW5nR2VvbWV0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDkzRTVFMDgx
MkQ2NDIwNTAwMDIwMDgxIC8qIFBsYXRmb3JtQ0FMYXllckNsaWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUNBTGF5ZXJDbGllbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDk0NUJGRDExM0NGODA5MDAwQ0MzQjM4IC8qIFRyYW5zZm9ybVN0
YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRyYW5zZm9ybVN0
YXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDk0NUJGRDIxM0NGODA5MDAw
Q0MzQjM4IC8qIFRyYW5zZm9ybVN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFRyYW5zZm9ybVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5NDg0
RkIzMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYW52YXNHcmFkaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ5NDg0RkI0MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNHcmFkaWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTQ4NEZCNTEwMkNGMjNDMDAxODdERDMgLyog
Q2FudmFzR3JhZGllbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENhbnZhc0dyYWRpZW50
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDk0ODRGQjYxMDJDRjIzQzAwMTg3
REQzIC8qIENhbnZhc1BhdHRlcm4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ2FudmFzUGF0dGVybi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5
NDg0RkI3MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNQYXR0ZXJuLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENhbnZhc1BhdHRlcm4uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDk0ODRGQjgxMDJDRjIzQzAwMTg3REQzIC8qIENhbnZhc1BhdHRlcm4uaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IENhbnZhc1BhdHRlcm4uaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0OTQ4NEZCQzEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFzUmVuZGVyaW5n
Q29udGV4dDJELmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhbnZh
c1JlbmRlcmluZ0NvbnRleHQyRC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5
NDg0RkJEMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5NDg0RkJFMTAyQ0YyM0MwMDE4N0REMyAv
KiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENh
bnZhc1JlbmRlcmluZ0NvbnRleHQyRC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ5NDg0RkJGMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNTdHlsZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYW52YXNTdHlsZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ5NDg0RkMwMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNTdHlsZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNTdHlsZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0OTRCQzQwQzEyQUVERDlFMDA3NDNCRDIgLyogVHJhbnNm
b3JtYXRpb25NYXRyaXhDQS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBUcmFuc2Zvcm1hdGlvbk1hdHJpeENBLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDk0QkQ3OTMwRjU1QzhFRTAwNzQ3ODI4IC8qIFdlYktpdFBvaW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdFBvaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ5NEJENzk0MEY1NUM4RUUwMDc0NzgyOCAvKiBXZWJLaXRQb2ludC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViS2l0UG9pbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0OTRCRDc5QjBGNTVDOTRDMDA3NDc4MjggLyogSlNXZWJLaXRQb2ludC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYktpdFBvaW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDk0QkQ3OUMwRjU1Qzk0QzAwNzQ3ODI4IC8q
IEpTV2ViS2l0UG9pbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJL
aXRQb2ludC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTU4NzgxRjEyQTU3RERG
MDA3MjM4QUMgLyogUGxhdGZvcm1DQUFuaW1hdGlvbkNvY29hLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1DQUFuaW1hdGlvbkNvY29hLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTU4NzgyMDEyQTU3RERGMDA3MjM4QUMgLyogUGxh
dGZvcm1DQUxheWVyQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBQbGF0Zm9ybUNBTGF5ZXJDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDk2OUIwRjAxM0QwQjMzRjAwREYzNTIxIC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIaXRUZXN0aW5nVHJhbnNm
b3JtU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTY5QjBGMTEzRDBC
MzNGMDBERjM1MjEgLyogSGl0VGVzdGluZ1RyYW5zZm9ybVN0YXRlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0OTk4QUVDNDEzRjlEMEVBMDA5MEIxQUEgLyogUmVxdWVzdEFu
aW1hdGlvbkZyYW1lQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVxdWVzdEFuaW1hdGlvbkZyYW1lQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDk5OEFFQzUxM0Y5RDBFQTAwOTBCMUFBIC8qIFJlcXVlc3RBbmltYXRpb25GcmFtZUNh
bGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZXF1ZXN0QW5pbWF0aW9uRnJhbWVD
YWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5OThBRUNCMTNGOUQ2
QzkwMDkwQjFBQSAvKiBKU1JlcXVlc3RBbmltYXRpb25GcmFtZUNhbGxiYWNrLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUmVxdWVzdEFuaW1hdGlvbkZyYW1lQ2Fs
bGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTk4QUVDQzEzRjlENkM5
MDA5MEIxQUEgLyogSlNSZXF1ZXN0QW5pbWF0aW9uRnJhbWVDYWxsYmFjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JlcXVlc3RBbmltYXRpb25GcmFtZUNhbGxiYWNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5OThBRUNGMTNGQjIyNEQwMDkwQjFBQSAv
KiBTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDk5OEFFRDAxM0ZCMjI0RDAwOTBCMUFBIC8qIFNjcmlwdGVk
QW5pbWF0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDk5QjNFQzMxMjhDQ0M0NzAwRTcyNkMyIC8qIFBsYXRmb3JtQ0FMYXllci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUNBTGF5ZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDk5QjNFRDQxMjhDRDMxNDAwRTcyNkMyIC8qIEdyYXBoaWNzTGF5
ZXJDQS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0xh
eWVyQ0EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OTlCM0VENTEyOENEMzE0
MDBFNzI2QzIgLyogR3JhcGhpY3NMYXllckNBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEdyYXBoaWNzTGF5ZXJDQS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
OTlCM0VEQzEyOERCNTAxMDBFNzI2QzIgLyogUGxhdGZvcm1DQUFuaW1hdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUNBQW5pbWF0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QUUyRDhDMTM0RUU1MEMwMDcyOTIwQSAvKiBDU1NDYWxj
VmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQ2FsY1Zh
bHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlBRTJEOEQxMzRFRTUwQzAw
NzI5MjBBIC8qIENTU0NhbGNWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NDYWxjVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlBRTJEOTQx
MzRFRTVGOTAwNzI5MjBBIC8qIENhbGN1bGF0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQ2FsY3VsYXRpb25WYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ5QUUyRDk1MTM0RUU1RjkwMDcyOTIwQSAvKiBDYWxjdWxhdGlvblZh
bHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbGN1bGF0aW9uVmFsdWUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlBRjJENjgxNDQzNUQwNTAwMTZBNzg0
IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEaXNwbGF5UmVmcmVzaE1vbml0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDlBRjJENkIxNDQzNUQyMTAwMTZBNzg0IC8qIExlZ2FjeURpc3BsYXlSZWZyZXNoTW9uaXRv
ck1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lEaXNw
bGF5UmVmcmVzaE1vbml0b3JNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
OUM3Qjk4MDEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1ZmZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMQnVmZmVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5ODExMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xCdWZm
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTEJ1ZmZlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3Qjk4NDEwNDJEMkQzMDAwOUQ0NDcgLyog
SlNXZWJHTEZyYW1lYnVmZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTV2ViR0xGcmFtZWJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTQ5QzdCOTg1MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMRnJhbWVidWZmZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTEZyYW1lYnVmZmVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOTg4MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdM
UHJvZ3JhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdM
UHJvZ3JhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOTg5MTA0MkQy
RDMwMDA5RDQ0NyAvKiBKU1dlYkdMUHJvZ3JhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1dlYkdMUHJvZ3JhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
OUM3Qjk4QTEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFJlbmRlcmJ1ZmZlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMUmVuZGVyYnVmZmVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5OEIxMDQyRDJEMzAwMDlENDQ3IC8q
IEpTV2ViR0xSZW5kZXJidWZmZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNXZWJHTFJlbmRlcmJ1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3
Qjk4RjEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFNoYWRlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMU2hhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDlDN0I5OTAxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xTaGFkZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTFNoYWRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3Qjk5MTEwNDJEMkQzMDAwOUQ0NDcgLyogSlNX
ZWJHTFRleHR1cmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNX
ZWJHTFRleHR1cmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3Qjk5MjEw
NDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFRleHR1cmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNXZWJHTFRleHR1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDlDN0I5QTgxMDQyRDMyRTAwMDlENDQ3IC8qIFdlYkdMQnVmZmVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMQnVmZmVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QTkxMDQyRDMyRTAwMDlENDQ3IC8qIFdlYkdMQnVmZmVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQnVmZmVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOUFBMTA0MkQzMkUwMDA5RDQ0NyAvKiBXZWJH
TEJ1ZmZlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xCdWZmZXIuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3QjlBRTEwNDJEMzJFMDAwOUQ0NDcgLyogV2Vi
R0xGcmFtZWJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
ZWJHTEZyYW1lYnVmZmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5
QUYxMDQyRDMyRTAwMDlENDQ3IC8qIFdlYkdMRnJhbWVidWZmZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xGcmFtZWJ1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0OUM3QjlCMDEwNDJEMzJFMDAwOUQ0NDcgLyogV2ViR0xGcmFtZWJ1ZmZlci5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xGcmFtZWJ1ZmZlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOUI0MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTE9i
amVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTE9iamVj
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOUI1MTA0MkQzMkYwMDA5
RDQ0NyAvKiBXZWJHTE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJHTE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3QjlCNjEwNDJE
MzJGMDAwOUQ0NDcgLyogV2ViR0xQcm9ncmFtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFdlYkdMUHJvZ3JhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTQ5QzdCOUI3MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFByb2dyYW0uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xQcm9ncmFtLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ5QzdCOUI4MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFByb2dyYW0uaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMUHJvZ3JhbS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTQ5QzdCOUI5MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFJlbmRlcmJ1
ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTFJlbmRl
cmJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOUJBMTA0MkQz
MkYwMDA5RDQ0NyAvKiBXZWJHTFJlbmRlcmJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJHTFJlbmRlcmJ1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0OUM3QjlCQjEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xSZW5kZXJidWZmZXIuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMUmVuZGVyYnVmZmVyLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QkMxMDQyRDMyRjAwMDlENDQ3IC8qIENhbnZhc1JlbmRl
cmluZ0NvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2Fu
dmFzUmVuZGVyaW5nQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5
QzdCOUJEMTA0MkQzMkYwMDA5RDQ0NyAvKiBDYW52YXNSZW5kZXJpbmdDb250ZXh0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbnZhc1JlbmRlcmluZ0NvbnRleHQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QkYxMDQyRDMyRjAwMDlENDQ3IC8qIFdl
YkdMUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJHTFJlbmRlcmluZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0OUM3QjlDMDEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xSZW5kZXJpbmdDb250ZXh0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMUmVuZGVyaW5nQ29udGV4dC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3QjlDMTEwNDJEMzJGMDAwOUQ0NDcg
LyogV2ViR0xSZW5kZXJpbmdDb250ZXh0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJH
TFJlbmRlcmluZ0NvbnRleHQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUM3
QjlDMjEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xTaGFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0OUM3QjlDMzEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xTaGFkZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QzQxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMU2hhZGVy
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTFNoYWRlci5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCOUM1MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFRleHR1
cmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xUZXh0dXJl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QzYxMDQyRDMyRjAwMDlE
NDQ3IC8qIFdlYkdMVGV4dHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJHTFRleHR1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5QzcxMDQy
RDMyRjAwMDlENDQ3IC8qIFdlYkdMVGV4dHVyZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
V2ViR0xUZXh0dXJlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlDN0I5RkIx
MDQyRDM2NTAwMDlENDQ3IC8qIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5QzdCQThDMTA0MkY1QjEwMDA5RDQ0NyAvKiBKU0RvY3Vt
ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRG9j
dW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUQ1REMyNzBG
NDIzQTczMDA4RjIwRkQgLyogTWF0cml4M0RUcmFuc2Zvcm1PcGVyYXRpb24uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0cml4M0RUcmFuc2Zvcm1PcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUQ1REMyODBGNDIzQTczMDA4RjIw
RkQgLyogTWF0cml4M0RUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTWF0cml4M0RUcmFuc2Zvcm1PcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNDlENURDMjkwRjQyM0E3MzAwOEYyMEZEIC8qIFBlcnNwZWN0aXZlVHJh
bnNmb3JtT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBlcnNwZWN0aXZlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDlENURDMkEwRjQyM0E3MzAwOEYyMEZEIC8qIFBlcnNwZWN0aXZlVHJhbnNmb3Jt
T3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcnNwZWN0aXZl
VHJhbnNmb3JtT3BlcmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkx
MUIzMEVGODZENDcwMDlEMENBRiAvKiBUcmFuc2Zvcm1hdGlvbk1hdHJpeC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zvcm1hdGlvbk1hdHJpeC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkxMUI0MEVGODZENDcwMDlEMENBRiAvKiBU
cmFuc2Zvcm1hdGlvbk1hdHJpeC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
cmFuc2Zvcm1hdGlvbk1hdHJpeC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5
MTFCNTBFRjg2RDQ3MDA5RDBDQUYgLyogSWRlbnRpdHlUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSWRlbnRpdHlUcmFuc2Zvcm1PcGVyYXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFOTExQjYwRUY4NkQ0NzAwOUQwQ0FG
IC8qIE1hdHJpeFRyYW5zZm9ybU9wZXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNYXRyaXhUcmFuc2Zvcm1PcGVyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0OUU5MTFCNzBFRjg2RDQ3MDA5RDBDQUYgLyogTWF0cml4VHJhbnNm
b3JtT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdHJpeFRy
YW5zZm9ybU9wZXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5MTFC
ODBFRjg2RDQ3MDA5RDBDQUYgLyogUm90YXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJvdGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkxMUI5MEVGODZENDcwMDlEMENB
RiAvKiBSb3RhdGVUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUm90YXRlVHJhbnNmb3JtT3BlcmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ5RTkxMUJBMEVGODZENDcwMDlEMENBRiAvKiBTY2FsZVRyYW5zZm9ybU9wZXJh
dGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY2FsZVRyYW5z
Zm9ybU9wZXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkxMUJC
MEVGODZENDcwMDlEMENBRiAvKiBTY2FsZVRyYW5zZm9ybU9wZXJhdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTY2FsZVRyYW5zZm9ybU9wZXJhdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5MTFCQzBFRjg2RDQ3MDA5RDBDQUYgLyogU2tld1Ry
YW5zZm9ybU9wZXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTa2V3VHJhbnNmb3JtT3BlcmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDlFOTExQkQwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNrZXdUcmFuc2Zvcm1PcGVyYXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2tld1RyYW5zZm9ybU9wZXJhdGlvbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5MTFCRTBFRjg2RDQ3MDA5RDBDQUYg
LyogVHJhbnNmb3JtT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFRyYW5zZm9ybU9wZXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5
MTFCRjBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3BlcmF0aW9ucy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zvcm1PcGVyYXRpb25zLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFOTExQzAwRUY4NkQ0NzAwOUQwQ0FGIC8qIFRy
YW5zZm9ybU9wZXJhdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJh
bnNmb3JtT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUU5MTFD
MTBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRyYW5zbGF0ZVRyYW5zZm9ybU9wZXJh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkxMUMyMEVGODZENDcw
MDlEMENBRiAvKiBUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNsYXRlVHJhbnNmb3JtT3BlcmF0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RTkxMkE1MEVGQUM5MDYwMDlEMENBRiAvKiBBbmltYXRp
b24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQW5pbWF0aW9uLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFOTEyQTYwRUZBQzkwNjAwOUQwQ0FG
IC8qIEFuaW1hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBbmltYXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFOTEyQTcwRUZBQzkwNjAwOUQw
Q0FGIC8qIEFuaW1hdGlvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQW5pbWF0aW9uTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5
RTkxMkE4MEVGQUM5MDYwMDlEMENBRiAvKiBBbmltYXRpb25MaXN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFuaW1hdGlvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNDlFOTEyQTkwRUZBQzkwNjAwOUQwQ0FGIC8qIFRpbWluZ0Z1bmN0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRpbWluZ0Z1bmN0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RUNFQjYzMTQ5OTc5MEQwMENERDNBNCAvKiBGaWx0ZXJP
cGVyYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsdGVy
T3BlcmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFQ0VCNjQxNDk5
NzkwRDAwQ0REM0E0IC8qIEZpbHRlck9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBGaWx0ZXJPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNDlFQ0VCNjUxNDk5NzkwRDAwQ0REM0E0IC8qIEZpbHRlck9wZXJhdGlvbnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsdGVyT3BlcmF0aW9ucy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RUNFQjY2MTQ5OTc5MEQwMENERDNBNCAvKiBG
aWx0ZXJPcGVyYXRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRl
ck9wZXJhdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFRUQxM0UxMDUx
OTY5NDAwMDk5RkFCIC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlFRUQxM0YxMDUxOTY5NDAwMDk5RkFC
IC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTQ5RUVEMTQwMTA1MTk2OTQwMDA5OUZBQiAvKiBKU1dlYkdMUmVuZGVyaW5n
Q29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdM
UmVuZGVyaW5nQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5RUVE
MTQxMTA1MTk2OTQwMDA5OUZBQiAvKiBKU1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMUmVuZGVyaW5nQ29udGV4dC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUVFRDE0QjEwNTE5NzE5MDAwOTlGQUIgLyogSlND
YW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUVFRDE0QzEwNTE5NzFBMDAwOTlGQUIgLyogSlNX
ZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNXZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0OUZDN0E0RjE0NDRBRjVGMDBBNUQ4NjQgLyogRGlzcGxheVJl
ZnJlc2hNb25pdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERp
c3BsYXlSZWZyZXNoTW9uaXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ5
RkZCRjFDMTFDODU1MEUwMDZBNzExOCAvKiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0
R0xPcGVuR0xDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDlGRkJGM0Qx
MUM5M0VFMzAwNkE3MTE4IC8qIFdlYkdMTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV2ViR0xMYXllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0OUZG
QkYzRTExQzkzRUUzMDA2QTcxMTggLyogV2ViR0xMYXllci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkdMTGF5ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTRBMERBMkZDMTI5QjI0MTkwMEFCNjFFMSAvKiBGb3JtQXNzb2NpYXRlZEVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9ybUFzc29jaWF0
ZWRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEEwREEyRkQxMjlC
MjQxOTAwQUI2MUUxIC8qIEZvcm1Bc3NvY2lhdGVkRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGb3JtQXNzb2NpYXRlZEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNEEwRkZBOUIxQUFGNUU2QzAwNjI4MDNCIC8qIE1vY2tSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNEEwRkZBOUMxQUFGNUU2QzAwNjI4MDNCIC8qIE1vY2tSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBMEZG
QTlGMUFBRjVFQTIwMDYyODAzQiAvKiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QTBGRkFBMDFBQUY1RUEyMDA2
MjgwM0IgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTRBMEZGQUEzMUFBRjVFRjYwMDYyODAzQiAvKiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk0QTM4QkY0RTE0RkUxQzA5MDA2MTI1MTIgLyogV2ViU29ja2V0RGVmbGF0ZUZyYW1l
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTb2NrZXREZWZs
YXRlRnJhbWVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEEzOEJGNEYxNEZF
MUMwOTAwNjEyNTEyIC8qIFdlYlNvY2tldERlZmxhdGVGcmFtZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViU29ja2V0RGVmbGF0ZUZyYW1lci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0QTRGNDhBNzE2QjBERkMwMDBFREJCMjkgLyogU3R5bGVTY29wZVJ1
bGVTZXRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlU2Nv
cGVSdWxlU2V0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBNEY0OEE4MTZC
MERGQzAwMEVEQkIyOSAvKiBTdHlsZVNjb3BlUnVsZVNldHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3R5bGVTY29wZVJ1bGVTZXRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTRBNEY2NTZCMUFBOTk3RjEwMEUzOENERCAvKiBSZWFsdGltZU1lZGlhU291cmNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWx0aW1lTWVkaWFT
b3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QTRGNjU2QzFBQTk5N0Yx
MDBFMzhDREQgLyogUmVhbHRpbWVNZWRpYVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZWFsdGltZU1lZGlhU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTRBNEY2NTZEMUFBOTk3RjEwMEUzOENERCAvKiBSZWFsdGltZU1lZGlhU291cmNlQ2Fw
YWJpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1lTWVk
aWFTb3VyY2VDYXBhYmlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEE0
RjY1NkUxQUE5OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWFsdGltZU1lZGlhU291cmNl
U2V0dGluZ3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QTRGNjU2RjFBQTk5
N0YxMDBFMzhDREQgLyogUmVhbHRpbWVNZWRpYVNvdXJjZVNldHRpbmdzLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QTVBMkFEOTE2MUU3RTAwMDA1ODg5REQgLyogV2Vi
U29ja2V0RXh0ZW5zaW9uUGFyc2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdlYlNvY2tldEV4dGVuc2lvblBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTRBNUEyQURBMTYxRTdFMDAwMDU4ODlERCAvKiBXZWJTb2NrZXRFeHRlbnNpb25Q
YXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU29ja2V0RXh0ZW5z
aW9uUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBNkU5RkMxMTNDMTdE
MUQwMDQ2QTdGOCAvKiBDU1NGb250RmVhdHVyZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU0ZvbnRGZWF0dXJlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0QTZFOUZDMjEzQzE3RDFEMDA0NkE3RjggLyogQ1NTRm9udEZlYXR1
cmVWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGb250RmVhdHVy
ZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBNkU5RkM1MTNDMTdENTcw
MDQ2QTdGOCAvKiBGb250VGFnZ2VkU2V0dGluZ3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRm9udFRhZ2dlZFNldHRpbmdzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNEE2RTlGQzYxM0MxN0Q1NzAwNDZBN0Y4IC8qIEZvbnRUYWdnZWRTZXR0aW5n
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9IEZvbnRUYWdnZWRTZXR0aW5ncy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QThDOTZFQTBCRTY5MDMyMDA0RUVGRjAg
LyogRnJhbWVTZWxlY3Rpb25NYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gRnJhbWVTZWxlY3Rpb25NYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTRBOUNDODE1MTZCQjlBQzYwMEVDNjQ1QSAvKiBVc2VyQWdlbnRTdHlsZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyQWdlbnRTdHlsZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBOUNDODE2MTZCQjlBQzYwMEVDNjQ1QSAvKiBVc2Vy
QWdlbnRTdHlsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyQWdlbnRT
dHlsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QTlDQzgxRTE2QkY5QkI0MDBF
QzY0NUEgLyogSW5zcGVjdG9yQ1NTT01XcmFwcGVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDU1NPTVdyYXBwZXJzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNEE5Q0M4MUYxNkJGOUJCNDAwRUM2NDVBIC8qIEluc3BlY3RvckNT
U09NV3JhcHBlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9y
Q1NTT01XcmFwcGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QUQwMTAwNTEy
N0U2NDJBMDAxNTAzNUYgLyogSFRNTE91dHB1dEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTE91dHB1dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0QUQwMTAwNjEyN0U2NDJBMDAxNTAzNUYgLyogSFRNTE91dHB1dEVs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTE91dHB1dEVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEFEMDEwMDcxMjdFNjQyQTAwMTUw
MzVGIC8qIEhUTUxPdXRwdXRFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
T3V0cHV0RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRBRDAxNzNB
MTI3RTgyODYwMDE1MDM1RiAvKiBKU0hUTUxPdXRwdXRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTE91dHB1dEVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0QUQwMTczQjEyN0U4Mjg2MDAxNTAzNUYgLyogSlNIVE1M
T3V0cHV0RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxP
dXRwdXRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCMTcwNjY0MjE2
MkI0MkYwMEU1NzhCQiAvKiBDU1NSZWdpc3RlcmVkQ3VzdG9tUHJvcGVydHkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ1NTUmVnaXN0ZXJlZEN1c3RvbVByb3BlcnR5LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNEIxRTEzRTYyMTc5MEQ2NjAwNDJDRjk4IC8qIEN1c3RvbVBhaW50
Q2FudmFzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1c3RvbVBhaW50Q2FudmFzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTRCMUUxM0U5MjE3OTBEN0UwMDQyQ0Y5OCAvKiBDdXN0b21QYWlu
dENhbnZhcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDdXN0b21QYWludENhbnZhcy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCMUUxM0VBMjE3OTM3QjMwMDQyQ0Y5OCAvKiBQ
YWludFJlbmRlcmluZ0NvbnRleHQyRC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYWludFJlbmRlcmluZ0Nv
bnRleHQyRC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QjFFMTNFQzIxNzkzODM4
MDA0MkNGOTggLyogUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0QjFFMTNFRDIxNzkzREMxMDA0MkNGOTggLyogUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFBhaW50UmVuZGVyaW5nQ29udGV4dDJELmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNEIxRTEzRUUyMTc5NDEzMjAwNDJDRjk4IC8qIEpTUGFpbnRSZW5kZXJpbmdD
b250ZXh0MkRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYWludFJlbmRlcmluZ0Nv
bnRleHQyREN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCMjcwOEM1
MEFGMTlFRTQwMDY1MTI3RiAvKiBQYXN0ZWJvYXJkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBhc3RlYm9hcmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEIy
NzA5ODEwQUYyRTVFMDAwNjUxMjdGIC8qIFBhc3RlYm9hcmRNYWMubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQYXN0ZWJvYXJkTWFjLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0QjMwNDNDQTBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFZGl0b3IuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0QjMwNDNDQjBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZGl0b3IuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEIzNDgwOTEwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291
cmNlQ0dNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbWFn
ZVNvdXJjZUNHTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QjM0ODA5MjBF
RUY1MEQ0MDBBQzFCNDEgLyogSW1hZ2VTb3VyY2VDRy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJbWFnZVNvdXJjZUNHLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTRCNDM4NjREMjE5Q0Q1MkQwMEY4RDNDNSAvKiBDU1NTdHlsZUltYWdlVmFsdWUuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IENTU1N0eWxlSW1hZ2VWYWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRC
NDM4NjRGMjE5Q0Q1NjEwMEY4RDNDNSAvKiBDU1NTdHlsZUltYWdlVmFsdWUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ1NTU3R5bGVJbWFnZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTRCNUJERDk5MjE2NTg4RTUwMERENDI2MiAvKiBDU1NQYWludENhbGxiYWNrLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBD
U1NQYWludENhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEI1QkRE
OUEyMTY1OEExNTAwREQ0MjYyIC8qIENTU1BhaW50Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q1NTUGFpbnRDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QjZCNUNC
NjIxNjNEQzFBMDA2MDM4MTcgLyogRE9NQ1NTTmFtZXNwYWNlK0NTU1BhaW50aW5nLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSAiRE9NQ1NTTmFtZXNwYWNlK0NTU1BhaW50aW5nLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTRCNkI1Q0I4MjE2M0VDMDcwMDYwMzgxNyAvKiBET01DU1NQYWludFdvcmtsZXQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRE9NQ1NTUGFpbnRXb3JrbGV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTRCNkI1Q0I5MjE2M0VEMzIwMDYwMzgxNyAvKiBET01DU1NQYWludFdvcmts
ZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NQ1NTUGFpbnRXb3JrbGV0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEI2QjVDQkUyMTY0MzRGQjAwNjAzODE3IC8qIEpTUGFp
bnRXb3JrbGV0R2xvYmFsU2NvcGVDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTRCNkI1Q0JGMjE2NDM4NjQwMDYwMzgxNyAvKiBQYWludFdvcmtsZXRHbG9iYWxTY29wZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQYWludFdvcmtsZXRHbG9iYWxTY29wZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk0QjZCNUNDMTIxNjQzOUNGMDA2MDM4MTcgLyogUGFpbnRXb3JrbGV0
R2xvYmFsU2NvcGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QjZCNUNDMzIxNjQzQThFMDA2
MDM4MTcgLyogUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBhaW50V29ya2xldEds
b2JhbFNjb3BlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEI2RTg3NjgyMTc2
RDY5MjAwNDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NQ
YWludEltYWdlVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEI2RTg3NkIy
MTc2RDhBMTAwNDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDU1NQYWludEltYWdlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk0QjZGQTZGMjBDMzlFNDhDMDAwODcwMTEgLyogU21hcnRSZXBsYWNlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNtYXJ0UmVwbGFjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk0QjZGQTZGNjBDMzlFNEExMDAwODcwMTEgLyogU21hcnRSZXBsYWNlQ0YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU21hcnRSZXBsYWNlQ0YuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFFOTVCMDBCMkZBOUNFMDBBRUQ4QTAg
LyogRWRpdG9yRGVsZXRlQWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEVkaXRvckRlbGV0ZUFjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFG
RDBDQTIxOTBFQkQ2MDBDMEFCNjQgLyogQ1NTUGFpbnRTaXplLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENT
U1BhaW50U2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFGRDBDRDIxOTBF
QkU5MDBDMEFCNjQgLyogQ1NTUGFpbnRTaXplLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NQYWludFNpemUuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFGRDBDRTIxOTBGOUI0MDBDMEFCNjQgLyog
U3R5bGVQcm9wZXJ0eU1hcFJlYWRPbmx5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlUHJvcGVydHlN
YXBSZWFkT25seS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFGRDBEMDIxOTBG
OUMyMDBDMEFCNjQgLyogU3R5bGVQcm9wZXJ0eU1hcFJlYWRPbmx5LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTdHlsZVBy
b3BlcnR5TWFwUmVhZE9ubHkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFG
RDBEMzIxOTIxNDU2MDBDMEFCNjQgLyogQ1NTU3R5bGVWYWx1ZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ1NTU3R5bGVW
YWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCQUZEMEQ1MjE5MjE0NkIw
MEMwQUI2NCAvKiBDU1NTdHlsZVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU1N0eWxlVmFsdWUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJBRkQwRDcyMTkyMUU3OTAwQzBBQjY0
IC8qIENTU1VucGFyc2VkVmFsdWUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU1VucGFyc2VkVmFsdWUuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkFGRDBEODIxOTIxRUEwMDBDMEFCNjQgLyogQ1NT
VW5wYXJzZWRWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NVbnBhcnNlZFZhbHVlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCQUZEMERCMjE5MjIwMjIwMEMwQUI2NCAvKiBDU1NO
dW1lcmljVmFsdWUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU051bWVyaWNWYWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTRCQUZEMERDMjE5MjIwNEEwMEMwQUI2NCAvKiBDU1NVbml0VmFsdWUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IENTU1VuaXRWYWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTRCQUZEMEREMjE5MjIwOTIwMEMwQUI2NCAvKiBDU1NVbml0VmFsdWUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NVbml0VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJBRkQwREYy
MTkyMjBBQjAwQzBBQjY0IC8qIENTU051bWVyaWNWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NO
dW1lcmljVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJBRkQwRTIyMTky
NjA0RDAwQzBBQjY0IC8qIEpTQ1NTU3R5bGVWYWx1ZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0NTU1N0eWxlVmFsdWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0QkQ3ODFCQzIxQzE5NjQ4MDBEOTcwM0UgLyogU3R5bGVQcm9wZXJ0eU1hcC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gU3R5bGVQcm9wZXJ0eU1hcC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRC
RDc4MUJFMjFDMTk2NUYwMEQ5NzAzRSAvKiBTdHlsZVByb3BlcnR5TWFwLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFN0eWxlUHJvcGVydHlNYXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJE
NzgxQzUyMUMxRDY3NzAwRDk3MDNFIC8qIFN0eWxlUHJvcGVydHlNYXBSZWFkT25seS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTdHlsZVByb3BlcnR5TWFwUmVhZE9ubHkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0QkRBM0ZGNTIxNTFCNkYwMDBGRDY2MDQgLyogRE9NQ1NTTmFt
ZXNwYWNlK0NTU1Byb3BlcnRpZXNhbmRWYWx1ZXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
ICJET01DU1NOYW1lc3BhY2UrQ1NTUHJvcGVydGllc2FuZFZhbHVlcy5pZGwiOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0QkRBM0ZGNzIxNTFCNkYxMDBGRDY2MDQgLyogRE9NQ1NTUmVn
aXN0ZXJDdXN0b21Qcm9wZXJ0eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBET01DU1NSZWdpc3RlckN1c3RvbVByb3BlcnR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNEJEQTNGRjgyMTUxQjZGMjAwRkQ2NjA0IC8qIERPTUNTU0N1c3RvbVByb3Bl
cnR5RGVzY3JpcHRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01DU1ND
dXN0b21Qcm9wZXJ0eURlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NEJEQTNGRjkyMTUxQjZGMzAwRkQ2NjA0IC8qIERPTUNTU1JlZ2lzdGVyQ3VzdG9tUHJvcGVydHku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NQ1NTUmVnaXN0ZXJDdXN0b21Q
cm9wZXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0QkRBM0ZGQTIxNTFCNkYz
MDBGRDY2MDQgLyogRE9NQ1NTQ3VzdG9tUHJvcGVydHlEZXNjcmlwdG9yLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBET01DU1NDdXN0b21Qcm9wZXJ0eURlc2NyaXB0b3IuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk0QkRBM0ZGQjIxNTFCNkY0MDBGRDY2MDQgLyogQ1NTUmVn
aXN0ZXJlZEN1c3RvbVByb3BlcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENTU1JlZ2lzdGVyZWRDdXN0b21Qcm9wZXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0QkRFQTMxQzIxN0VCQ0Y1MDA1MkRGQ0QgLyogV29ya2xldC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV29ya2xl
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRCREVBMzFGMjE3RUM1NUYwMDUy
REZDRCAvKiBXb3JrbGV0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtsZXQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNEJERUEzMjMyMTdFQzk2QTAwNTJERkNEIC8qIFdvcmtsZXQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2xldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTRCREVBMzI0MjE3RkUyRTQwMDUyREZDRCAvKiBXb3JrbGV0R2xvYmFsU2NvcGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV29ya2xldEdsb2JhbFNjb3BlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTRCREVBMzI2MjE3RkUyRkEwMDUyREZDRCAvKiBXb3JrbGV0R2xvYmFsU2NvcGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2xldEdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJERUEzMkEyMTgwMTA3MjAwNTJERkNEIC8qIFdvcmtsZXRH
bG9iYWxTY29wZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gV29ya2xldEdsb2JhbFNjb3BlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNEJERUEzMkIyMTgwMzNFQjAwNTJERkNEIC8qIEpTV29ya2xldEds
b2JhbFNjb3BlQmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEJERUEzMkQyMTgwMzQwNTAwNTJERkNE
IC8qIEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dv
cmtsZXRHbG9iYWxTY29wZUJhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0
RDNCMDBBNDIxNUQ2MTA0MDA3NkI5ODMgLyogTWVkaWFSZWNvcmRlci5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFSZWNvcmRlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTREM0IwMEE2MjE1RDY0NUIwMDc2Qjk4MyAvKiBCbG9iRXZlbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEJsb2JFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTREM0IwMEE4MjE1RDY5QTYwMDc2Qjk4MyAvKiBNZWRpYVJlY29yZGVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhUmVjb3JkZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk0RDNCMDBBOTIxNUQ2OUE3MDA3NkI5ODMgLyogTWVkaWFSZWNv
cmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVJlY29yZGVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTREM0IwMEFEMjE1RDZBNjkwMDc2Qjk4MyAv
KiBCbG9iRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvYkV2ZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTREM0I1MDE0MjE3RTU4QjcwMDY2NURC
MSAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVJlY29yZGVy
UHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0RDczRjk0NDIxOEJDNUZB
MDAzQTNFRDYgLyogTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJbXBsLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0RDczRjk0NTIxOEJDNUZBMDAzQTNFRDYgLyogTWVkaWFSZWNvcmRlclByaXZhdGVBVkZJ
bXBsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhUmVjb3JkZXJQcml2YXRlQVZGSW1wbC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRENzNGOTRDMjE4QzRBODcwMDNBM0VE
NiAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1l
ZGlhUmVjb3JkZXJQcml2YXRlV3JpdGVyQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNEQ3M0Y5NEQyMThDNEE4NzAwM0EzRUQ2IC8qIE1lZGlhUmVjb3JkZXJQcml2YXRlV3Jp
dGVyQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUmVjb3JkZXJQcml2YXRlV3Jp
dGVyQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHdyYXBzTGluZXMgPSAwOyB9Owor
CQk0RDdFQjNGNDIxN0M2QUU2MDBENjQ4ODggLyogQmxvYkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEJsb2JFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTREOUY2
QjY0MjE4MjUzMkIwMDkyQTlDNSAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZU1vY2suaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFSZWNvcmRlclByaXZhdGVNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTREOUY2QjY1MjE4MjUzMkIwMDkyQTlDNSAvKiBNZWRpYVJlY29yZGVyUHJpdmF0
ZU1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFSZWNvcmRlclByaXZhdGVNb2NrLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNERCNzEzMEEyMTZFQzJCQzAwOTZBNERE
IC8qIE1lZGlhUmVjb3JkZXJFcnJvckV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBN
ZWRpYVJlY29yZGVyRXJyb3JFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTREQjcxMzBDMjE2RUMyQkQwMDk2QTRERCAvKiBNZWRpYVJlY29yZGVyRXJyb3JFdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVJlY29yZGVyRXJyb3JFdmVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0REI3MTMwRTIxNkVFQkFFMDA5NkE0REQg
LyogTWVkaWFSZWNvcmRlckVycm9yRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTWVkaWFSZWNvcmRlckVycm9yRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk0RTE5NTkxRjBBMzlEQUJBMDAyMjBGRTUgLyogTWVkaWFGZWF0dXJlTmFt
ZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhRmVhdHVy
ZU5hbWVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEUxOTU5MjAwQTM5REFC
QTAwMjIwRkU1IC8qIE1lZGlhRmVhdHVyZU5hbWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNZWRpYUZlYXR1cmVOYW1lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0RTE5NTkyMzBBMzlEQUNDMDAyMjBGRTUgLyogTWVkaWFRdWVyeS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFRdWVyeS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTRFMTk1OTI0MEEzOURBQ0MwMDIyMEZFNSAvKiBNZWRpYVF1ZXJ5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVF1ZXJ5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRFMTk1OTI1MEEzOURBQ0MwMDIyMEZFNSAvKiBNZWRp
YVF1ZXJ5RXZhbHVhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNZWRpYVF1ZXJ5RXZhbHVhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NEUxOTU5MjYwQTM5REFDQzAwMjIwRkU1IC8qIE1lZGlhUXVlcnlFdmFsdWF0b3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUXVlcnlFdmFsdWF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEYxNTM0REQxMUI1MzJFQzAwMjFGRDg2IC8qIEVkaXRp
bmdCZWhhdmlvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZGl0aW5nQmVo
YXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEYxNTM0REYxMUI1MzMwMjAw
MjFGRDg2IC8qIEVkaXRpbmdCZWhhdmlvclR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRWRpdGluZ0JlaGF2aW9yVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk0RkE2NUE2OTExMDhBQkVEMDAyNjE1RTAgLyogTWF0aE1MU3BhY2VFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1hdGhNTFNwYWNlRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRGQTY1QTZBMTEwOEFCRUQwMDI2MTVF
MCAvKiBNYXRoTUxTcGFjZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTWF0aE1MU3BhY2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTRG
QUI0ODY0MTY0M0E2NkQwMEY3MEMwNyAvKiBFbGVtZW50UmFyZURhdGEuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRWxlbWVudFJhcmVEYXRhLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNEZBQjQ4NjYxNjQzQTY3RTAwRjcwQzA3IC8qIE5vZGVSYXJl
RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOb2RlUmFyZURh
dGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk0RkIzOTBBQzE1RUY2MUYzMDA3
QUQ1MUYgLyogR2VuZXJhdGVkSW1hZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gR2VuZXJhdGVkSW1hZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MDFCQUFBODEzOTUwRTJDMDBGN0FDRUIgLyogV2luZFJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2luZFJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTA0QUFDQ0IxODM0NDU1OTAwRTNEOUJDIC8qIEluc3BlY3Rvck5vZGVGaW5kZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yTm9kZUZpbmRlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUwNEFBQ0NDMTgzNDQ1NTkwMEUzRDlC
QyAvKiBJbnNwZWN0b3JOb2RlRmluZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEluc3BlY3Rvck5vZGVGaW5kZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTA4MUUzREYzQ0ZDODBDMTZFRjhCNDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTA4MUUzRTEzRDAyODBDMTZFRjhC
NDhCIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUwOENDQTREMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGcmFnbWVudGVkRmxvdy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJGcmFnbWVudGVkRmxvdy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMg
LyogUmVuZGVyRnJhZ21lbnRlZEZsb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUmVuZGVyRnJhZ21lbnRlZEZsb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTAxODQ2NzBCMDg2MDJBMDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRQYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxMDE4NDY4MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlZFBhZ2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTAzMTA1RTFCQThFMDkwMDAzMzI5QzAgLyogSURC
RGF0YWJhc2VJZGVudGlmaWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IElEQkRhdGFiYXNlSWRlbnRpZmllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxMDMxMDVGMUJBOEUwOTAwMDMzMjlDMCAvKiBJREJEYXRhYmFzZUlkZW50aWZpZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCRGF0YWJhc2VJZGVudGlmaWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMDU4QUQ3MUQ2NzkyNTcwMDlBNTM4QyAv
KiBNb2NrR2FtZXBhZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBN
b2NrR2FtZXBhZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMDU4QUQ4MUQ2
NzkyNTcwMDlBNTM4QyAvKiBNb2NrR2FtZXBhZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBNb2NrR2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTA1
OEFEOTFENjc5MjU3MDA5QTUzOEMgLyogTW9ja0dhbWVwYWRQcm92aWRlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb2NrR2FtZXBhZFByb3ZpZGVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEwNThBREExRDY3OTI1NzAwOUE1MzhDIC8qIE1v
Y2tHYW1lcGFkUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9j
a0dhbWVwYWRQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTA1RjA2
ODFENEJBNTQxMDBGQjgwQkMgLyogSURCR2V0UmVjb3JkRGF0YS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJREJHZXRSZWNvcmREYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxMDVGMDZBMUQ0QkIwQkMwMEZCODBCQyAvKiBJREJHZXRSZWNvcmREYXRhLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkdldFJlY29yZERhdGEu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTA2RDdCQjE4QkRCNzZGMDAwQUIx
NjYgLyogQ29udGV4dE1lbnVDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENvbnRleHRNZW51Q29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxMDZEN0JDMThCREI3NkYwMDBBQjE2NiAvKiBDb250ZXh0TWVudUNvbnRleHQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGV4dE1lbnVDb250ZXh0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE1OEVGMUJBQjcyMEYwMEMxOTI4MiAvKiBJ
REJTZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCU2Vy
dmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEwQTU4RjAxQkFCNzIwRjAw
QzE5MjgyIC8qIElEQlNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
REJTZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEwQTU4RjUxQkFDQzRB
NTAwQzE5MjgyIC8qIElEQlJlcXVlc3REYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IElEQlJlcXVlc3REYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTEwQTU4RjYxQkFDQzRBNTAwQzE5MjgyIC8qIElEQlJlcXVlc3REYXRhLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQlJlcXVlc3REYXRhLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxMEE1OEZEMUJCMDdBOTYwMEMxOTI4MiAvKiBJREJDb25uZWN0
aW9uVG9TZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCQ29ubmVj
dGlvblRvU2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE1OEZFMUJC
MDdBQTUwMEMxOTI4MiAvKiBJREJDb25uZWN0aW9uVG9DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSURCQ29ubmVjdGlvblRvQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxMEE5MUQ1MjRDRThFREUwMEJGRDg5QyAvKiBISURHYW1lcGFkRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBISURHYW1lcGFk
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MUQ2MjRDRThF
REUwMEJGRDg5QyAvKiBISURHYW1lcGFkRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBISURHYW1lcGFkRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MTBBOTFEQjI0Q0Y0NDE4MDBCRkQ4OUMgLyogU2hhcmVkR2FtZXBhZFZhbHVlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlZEdhbWVwYWRWYWx1ZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTBBOTFFMjI0Q0ZDQzE4MDBCRkQ4OUMgLyogSElE
RGV2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJRERldmljZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTBBOTFFMzI0Q0ZDQzE4MDBCRkQ4OUMgLyog
SElERWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBISURFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MUU0MjRDRkNDMTgwMEJGRDg5
QyAvKiBISURFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEhJREVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTBBOTFFNTI0
Q0ZDQzE4MDBCRkQ4OUMgLyogSElERGV2aWNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhJRERldmljZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxMEE5MUU3MjRDRkVBMTcwMEJGRDg5QyAvKiBHZW5lcmljSElER2FtZXBhZC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHZW5lcmljSElER2FtZXBhZC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MUU5MjRDRkVBMzIwMEJGRDg5QyAvKiBH
ZW5lcmljSElER2FtZXBhZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHZW5l
cmljSElER2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTBBOTFGMjI0
RDMyNEM2MDBCRkQ4OUMgLyogS25vd25HYW1lcGFkcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBLbm93bkdhbWVwYWRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxMEE5MUY0MjREMzI0RkYwMEJGRDg5QyAvKiBEdWFsc2hvY2szSElER2FtZXBhZC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEdWFsc2hvY2szSElER2FtZXBhZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTBBOTFGNTI0RDMyNTAwMDBCRkQ4OUMgLyogRHVh
bHNob2NrM0hJREdhbWVwYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRHVhbHNob2NrM0hJREdhbWVwYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTBBOTFGQjI0RDNDMEZEMDBCRkQ4OUMgLyogR2FtZXBhZENvbnN0YW50c01hYy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHYW1lcGFkQ29uc3RhbnRzTWFjLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MjA1MjRENEYwN0EwMEJGRDg5QyAvKiBMb2dp
dGVjaEdhbWVwYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9naXRlY2hH
YW1lcGFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MjA3MjRENEYwN0Ew
MEJGRDg5QyAvKiBMb2dpdGVjaEdhbWVwYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTG9naXRlY2hHYW1lcGFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTEwQTkyMEYyNEQ1RTIxNzAwQkZEODlDIC8qIFN0YWRpYUhJREdhbWVwYWQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RhZGlhSElER2FtZXBhZC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMEE5MjExMjRENUUyMTcwMEJGRDg5QyAv
KiBTdGFkaWFISURHYW1lcGFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0
YWRpYUhJREdhbWVwYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEwRDRBMkUx
MDMxNjVFRTAwNDlFQTU0IC8qIFNvY2tldFN0cmVhbUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNvY2tldFN0cmVhbUVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxMEQ0QTMwMTAzMTY1RUUwMDQ5RUE1NCAvKiBTb2NrZXRTdHJlYW1IYW5kbGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU29ja2V0U3RyZWFtSGFu
ZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEwRDRBMzExMDMxNjVFRTAw
NDlFQTU0IC8qIFNvY2tldFN0cmVhbUhhbmRsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTb2NrZXRTdHJlYW1IYW5kbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTEwRDRBMzIxMDMxNjVFRTAwNDlFQTU0IC8qIFNvY2tldFN0cmVhbUhhbmRsZUNsaWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2NrZXRTdHJlYW1IYW5kbGVDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExMEZDRkIxRTAzNjJBNTAwNkY4
RDBCIC8qIElEQkN1cnNvclJlY29yZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJREJDdXJzb3JSZWNvcmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExN0Yz
MEEyNUU2MTAxRTAwMkE5RjFFIC8qIFJlbW90ZUNvbW1hbmRMaXN0ZW5lckNvY29hLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVtb3RlQ29tbWFuZExpc3RlbmVy
Q29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMTdGMzBDMjVFNjEwMUYw
MDJBOUYxRSAvKiBSZW1vdGVDb21tYW5kTGlzdGVuZXJDb2NvYS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZW1vdGVDb21tYW5kTGlzdGVuZXJDb2NvYS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MTFFQzEyNTFDNTBBQTU3MDAzMkY5ODMgLyogSURCU2VyaWFs
aXphdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJTZXJp
YWxpemF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExRUMxMjYxQzUw
QUE1NzAwMzJGOTgzIC8qIElEQlNlcmlhbGl6YXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSURCU2VyaWFsaXphdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MTFFQzEyOTFDNTBBQkJBMDAzMkY5ODMgLyogU1FMaXRlSURCVHJhbnNhY3Rpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FMaXRlSURCVHJhbnNhY3Rp
b24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFQzEyQTFDNTBBQkJBMDAz
MkY5ODMgLyogU1FMaXRlSURCVHJhbnNhY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1FMaXRlSURCVHJhbnNhY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTExRUMxMkQxQzUwQUJFQzAwMzJGOTgzIC8qIFNRTGl0ZUlEQkN1cnNvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTUUxpdGVJREJDdXJzb3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFQzEyRTFDNTBBQkVDMDAzMkY5ODMgLyog
U1FMaXRlSURCQ3Vyc29yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTGl0
ZUlEQkN1cnNvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFQzFBNTE4OERB
Q0E0MDBCQTNFQjYgLyogSURCS2V5RGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJREJLZXlEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMUVDMUE3
MTg4REFFN0IwMEJBM0VCNiAvKiBJREJLZXlEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IElEQktleURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MTFFRjJBOTE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJDdXJzb3IuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNJREJDdXJzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTFFRjJBQTE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJDdXJzb3JXaXRoVmFsdWUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNJREJDdXJzb3JXaXRoVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTFFRjJBQjE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJDdXJzb3JX
aXRoVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJREJDdXJzb3JXaXRoVmFsdWUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExRUYyQUMxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURC
RGF0YWJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJEYXRhYmFzZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMUVGMkFEMTdGMEZDNDgwMEU0RkExNiAvKiBKU0lE
QkZhY3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJGYWN0b3J5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExRUYyQUUxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURC
SW5kZXguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJJbmRleC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxMUVGMkFGMTdGMEZDNDgwMEU0RkExNiAvKiBKU0lEQktleVJh
bmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURCS2V5UmFuZ2UuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MTFFRjJCMDE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJPYmpl
Y3RTdG9yZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lEQk9iamVjdFN0b3JlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExRUYyQjExN0YwRkM0ODAwRTRGQTE2IC8qIEpT
SURCT3BlbkRCUmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lEQk9wZW5EQlJlcXVl
c3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFRjJCMjE3RjBGQzQ4MDBF
NEZBMTYgLyogSlNJREJPcGVuREJSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSURCT3BlbkRC
UmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFRjJCMzE3RjBGQzQ4
MDBFNEZBMTYgLyogSlNJREJSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURCUmVx
dWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMUVGMkI0MTdGMEZDNDgw
MEU0RkExNiAvKiBKU0lEQlRyYW5zYWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURC
VHJhbnNhY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTFFRjJDRTE3
RjBGREYxMDBFNEZBMTYgLyogSlNJREJPYmplY3RTdG9yZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lEQk9iamVjdFN0b3JlQ3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTExRkFFQTkxQkRDOTg5QTAwQjRBRkU0IC8qIFRo
cmVhZFNhZmVEYXRhQnVmZmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRo
cmVhZFNhZmVEYXRhQnVmZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMjBC
QkFDMUYxQ0U3NzAwMEVGRUJGMSAvKiBDb29raWVTdG9yYWdlT2JzZXJ2ZXIubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDb29raWVTdG9yYWdlT2JzZXJ2ZXIubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMjBCQkFEMUYxQ0U3NzAwMEVGRUJGMSAv
KiBDb29raWVTdG9yYWdlT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ29va2llU3RvcmFnZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxMjNBRjE2MTg5MEE0Q0EwMDMxQ0RDOSAvKiBJREJLZXlSYW5nZURhdGEuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCS2V5UmFuZ2VEYXRhLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEyM0FGMTcxODkwQTRDQTAwMzFDREM5IC8qIElEQktl
eVJhbmdlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJLZXlSYW5n
ZURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEyM0FGMUMxODkxOEFFNDAw
MzFDREM5IC8qIElEQkdldFJlc3VsdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJREJHZXRSZXN1bHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEyQkRCNDgx
QzQ1NkZBQjAwNjQ5NERGIC8qIFNRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTUUxpdGVJREJCYWNraW5nU3RvcmUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTJCREI0OTFDNDU2RkFCMDA2NDk0REYgLyogU1FM
aXRlSURCQmFja2luZ1N0b3JlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNR
TGl0ZUlEQkJhY2tpbmdTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTJE
RDhFMjBEOTFFMkI0MDAwRjg5RUUgLyogU2hhcmVkQnVmZmVyQ0YuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2hhcmVkQnVmZmVyQ0YuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTJERDhFQTBEOTFFNkFGMDAwRjg5RUUgLyogTGVnYWN5V2ViQXJj
aGl2ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lXZWJB
cmNoaXZlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEyREQ4RUIwRDkxRTZB
RjAwMEY4OUVFIC8qIExlZ2FjeVdlYkFyY2hpdmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTGVnYWN5V2ViQXJjaGl2ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTJERDhFQzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBBcmNoaXZlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxMkREOEVEMEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTJERDhFRTBEOTFF
NkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlQ29sbGVjdGlvbi5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBcmNoaXZlUmVzb3VyY2VDb2xsZWN0aW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMkREOEYwMEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZl
RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcmNoaXZl
RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMkREOEYxMEQ5MUU2
QUYwMDBGODlFRSAvKiBBcmNoaXZlUmVzb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQXJjaGl2ZVJlc291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTEyREQ4RjIwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcmNoaXZlUmVzb3VyY2UuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEyREQ4RjMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hp
dmVGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFyY2hpdmVGYWN0
b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxMkYxQTc3MUMwN0VBMEQwMDkw
ODIzOSAvKiBJREJHZXRSZXN1bHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSURCR2V0UmVzdWx0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEz
MEYyRjIyNEFFQTYwMjAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTMwRjJGNDI0QUVBNjAzMDBFMUQwQTAgLyogR2Ft
ZUNvbnRyb2xsZXJTb2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEdhbWVDb250cm9sbGVyU29mdExpbmsubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxMzBGMkY1MjRBRUE2MDMwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxlclNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHYW1lQ29udHJvbGxlclNQSS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTMyN0Q1RTExQTMzQTJCMDA0RjlENjUgLyogU2lu
a0RvY3VtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbmtEb2N1bWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTMyN0Q1RjExQTMzQTJCMDA0RjlE
NjUgLyogU2lua0RvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFNpbmtEb2N1bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxM0Yx
NDUxMEFCNjM0QzQwMDA5NERERiAvKiBJY29uTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBJY29uTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTEzRjE0NTIwQUI2MzRDNDAwMDk0RERGIC8qIEljb25Mb2FkZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEljb25Mb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTE0MDVDODYxOTBCMDE0NDAwNzU0Rjk0IC8qIFNlbGVjdGlvbkdlb21l
dHJ5R2F0aGVyZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Vs
ZWN0aW9uR2VvbWV0cnlHYXRoZXJlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxNDA1Qzg3MTkwQjAxNDQwMDc1NEY5NCAvKiBTZWxlY3Rpb25HZW9tZXRyeUdhdGhlcmVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlbGVjdGlvbkdlb21ldHJ5R2F0aGVy
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0MTI5OTYxQzY5NzYxNTAwNTlF
NzE0IC8qIElEQlJlcXVlc3RDb21wbGV0aW9uRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSURCUmVxdWVzdENvbXBsZXRpb25FdmVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNDEyOTk3MUM2OTc2MTUwMDU5RTcxNCAvKiBJREJSZXF1
ZXN0Q29tcGxldGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElE
QlJlcXVlc3RDb21wbGV0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTE0MTI5OUExQzZDMTY2RDAwNTlFNzE0IC8qIEpTSURCSW5kZXhDdXN0b20uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJJbmRleEN1c3RvbS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNDNCMjYyMURERDE0OTAwMDE0RkFDNiAvKiBMaW5r
SWNvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMaW5rSWNvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTQ1QjEwNzFCQzQ4OTBCMDBFODYyMTkgLyogSURC
UmVzb3VyY2VJZGVudGlmaWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IElEQlJlc291cmNlSWRlbnRpZmllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxNDVCMTA4MUJDNDg5MEIwMEU4NjIxOSAvKiBJREJSZXNvdXJjZUlkZW50aWZpZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCUmVzb3VyY2VJZGVudGlmaWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNDg0NTNDMUJCOUQwNzYwMDZBNzJFRCAv
KiBJREJFcnJvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJF
cnJvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNDg0NTNEMUJCOUQwNzYw
MDZBNzJFRCAvKiBJREJFcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
REJFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTRDNzYzNTBDRTkyMjVF
MDA3RUYzQ0QgLyogSlNTUUxFcnJvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1NRTEVycm9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0
Qzc2MzYwQ0U5MjI1RTAwN0VGM0NEIC8qIEpTU1FMVHJhbnNhY3Rpb24uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTUUxUcmFuc2FjdGlvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjQyMENFOTIzNEUwMDdFRjNDRCAvKiBBdXRoZW50
aWNhdGlvbk1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRoZW50aWNh
dGlvbk1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTRDNzY0MzBDRTkyMzRF
MDA3RUYzQ0QgLyogQXV0aGVudGljYXRpb25NYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBBdXRoZW50aWNhdGlvbk1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTE0Qzc2NDQwQ0U5MjM0RTAwN0VGM0NEIC8qIEZvcm1EYXRhU3RyZWFtTWFj
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1EYXRhU3RyZWFtTWFjLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjQ1MENFOTIzNEUwMDdFRjNDRCAv
KiBGb3JtRGF0YVN0cmVhbU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEZvcm1EYXRhU3RyZWFtTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTRDNzY0NjBDRTkyMzRFMDA3RUYzQ0QgLyogUmVzb3VyY2VFcnJvck1hYy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFJlc291cmNlRXJyb3JNYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjQ3MENFOTIzNEUwMDdFRjNDRCAvKiBS
ZXNvdXJjZUhhbmRsZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFJlc291cmNlSGFuZGxlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MTRDNzY1ODBDRTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVudGlhbEJhc2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3JlZGVudGlhbEJhc2UuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MTRDNzY1OTBDRTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVudGlh
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcmVkZW50aWFsLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjVBMENFOTIzQTEwMDdFRjNDRCAvKiBGb3Jt
RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb3JtRGF0YS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjVCMENFOTIzQTEwMDdFRjND
RCAvKiBGb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb3JtRGF0
YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTRDNzY1QzBDRTkyM0ExMDA3RUYz
Q0QgLyogSFRUUEhlYWRlck1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBI
VFRQSGVhZGVyTWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNEM3NjVEMENF
OTIzQTEwMDdFRjNDRCAvKiBIVFRQUGFyc2Vycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVFRQUGFyc2Vycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxNEM3NjVFMENFOTIzQTEwMDdFRjNDRCAvKiBIVFRQUGFyc2Vycy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBIVFRQUGFyc2Vycy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MTRDNzY1RjBDRTkyM0ExMDA3RUYzQ0QgLyogUHJvdGVjdGlvblNwYWNlQmFz
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQcm90ZWN0aW9uU3Bh
Y2VCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0Qzc2NjAwQ0U5MjNB
MTAwN0VGM0NEIC8qIFByb3RlY3Rpb25TcGFjZUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUHJvdGVjdGlvblNwYWNlQmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTRDNzY2MzBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVzb3VyY2VIYW5kbGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTRDNzY2NDBDRTkyM0ExMDA3RUYzQ0QgLyog
UmVzb3VyY2VIYW5kbGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3Vy
Y2VIYW5kbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0Qzc2NjUwQ0U5MjNB
MTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlc291cmNlSGFuZGxlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxNEM3NjY2MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVy
bmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlSGFuZGxlSW50
ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0Qzc2NjcwQ0U5MjNBMTAw
N0VGM0NEIC8qIFJlc291cmNlUmVxdWVzdEJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVzb3VyY2VSZXF1ZXN0QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxNEM3NjY4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZVJlcXVlc3RC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlUmVxdWVzdEJh
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE0Qzc2NjkwQ0U5MjNBMTAwN0VG
M0NEIC8qIFJlc291cmNlUmVzcG9uc2VCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFJlc291cmNlUmVzcG9uc2VCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTE0Qzc2NkEwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlUmVzcG9uc2VC
YXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlUmVzcG9uc2VC
YXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNTFGMDdCMjYxNTM2M0YwMEZE
QjJCNCAvKiBNZWRpYVVuaXF1ZUlkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFVbmlxdWVJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNUJFMTg4MUQ1NEY1RjYwMEREN0M2OCAvKiBFbXB0eUdhbWVwYWRQcm92aWRlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFbXB0eUdhbWVwYWRQcm92
aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMTg5MUQ1NEY1RjYw
MEREN0M2OCAvKiBFbXB0eUdhbWVwYWRQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBFbXB0eUdhbWVwYWRQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTVCRTE4QTFENTRGNUY2MDBERDdDNjggLyogR2FtZXBhZFByb3ZpZGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdhbWVwYWRQcm92aWRlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMThCMUQ1NEY1RjYwMEREN0M2OCAv
KiBHYW1lcGFkUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2Ft
ZXBhZFByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMThDMUQ1
NEY1RjYwMEREN0M2OCAvKiBHYW1lcGFkUHJvdmlkZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gR2FtZXBhZFByb3ZpZGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxNUJFMThFMUQ1NEY1RjYwMEREN0M2OCAvKiBQbGF0Zm9ybUdhbWVw
YWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1HYW1lcGFkLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMTk3MUQ1NEY2QkQwMEREN0M2OCAv
KiBISURHYW1lcGFkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhJ
REdhbWVwYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTVCRTE5ODFENTRG
NkJEMDBERDdDNjggLyogSElER2FtZXBhZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBISURHYW1lcGFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMTk5
MUQ1NEY2QkQwMEREN0M2OCAvKiBISURHYW1lcGFkUHJvdmlkZXIubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBISURHYW1lcGFkUHJvdmlkZXIubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUJFMTlBMUQ1NEY2QkQwMEREN0M2OCAvKiBISURHYW1l
cGFkUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElER2FtZXBh
ZFByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNUUzN0Y0MUZBQTkz
ODgwMEQ3RjIyQSAvKiBTZXJ2aWNlV29ya2VyVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2VydmljZVdvcmtlclR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNUY3OTUxMUNGQ0EzQzcwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3Bp
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQ29yZUNyb3Nz
VGhyZWFkQ29waWVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE1Rjc5NTIx
Q0ZDQTNDNzAwQ0NFRDkzIC8qIFdlYkNvcmVDcm9zc1RocmVhZENvcGllci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3BpZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2MDcxMkIxQkQ4MzA1MzAwREJDNEYyIC8qIFRyYW5z
YWN0aW9uT3BlcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYW5z
YWN0aW9uT3BlcmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNjA3MTJD
MUJEODMwNzIwMERCQzRGMiAvKiBJREJPYmplY3RTdG9yZUluZm8uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCT2JqZWN0U3RvcmVJbmZvLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2MDcxMkQxQkQ4MzA3MjAwREJDNEYyIC8qIElEQk9iamVj
dFN0b3JlSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJPYmplY3RT
dG9yZUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2MEY0OTcwQjBBQTc1
RjAwQzFEMkFGIC8qIEhpc3RvcnlJdGVtTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gSGlzdG9yeUl0ZW1NYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNjEwM0FEMUNBREI5QTMwMDE2QjRDNyAvKiBJREJWYWx1ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxNjEwM0FFMUNBREI5QTMwMDE2QjRDNyAvKiBJREJWYWx1ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJWYWx1ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTYyQzdGMjExRjc3RUZBMDA2MTJFRkUgLyogTGVnYWN5U2NoZW1l
UmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGVnYWN5
U2NoZW1lUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTYyQzdG
MzExRjc3RUZCMDA2MTJFRkUgLyogTGVnYWN5U2NoZW1lUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5U2NoZW1lUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTE2NDVCNDExQjlGODg5QjAwRjc4OUNFIC8qIElEQkN1cnNvci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJDdXJzb3IuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2NDVCNDIxQjlGODg5QjAwRjc4OUNFIC8qIElEQkN1cnNv
cldpdGhWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJD
dXJzb3JXaXRoVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI0
MzFCOUY4ODlCMDBGNzg5Q0UgLyogSURCQ3Vyc29yV2l0aFZhbHVlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IElEQkN1cnNvcldpdGhWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MTY0NUI0NDFCOUY4ODlCMDBGNzg5Q0UgLyogSURCRGF0YWJhc2UuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCRGF0YWJhc2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI0NTFCOUY4ODlCMDBGNzg5Q0UgLyog
SURCRGF0YWJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCRGF0YWJh
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2NDVCNDYxQjlGODg5QjAwRjc4
OUNFIC8qIElEQkZhY3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSURCRmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNjQ1QjQ3
MUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IElEQkZhY3RvcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2
NDVCNDgxQjlGODg5QjAwRjc4OUNFIC8qIElEQkluZGV4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTE2NDVCNDkxQjlGODg5QjAwRjc4OUNFIC8qIElEQkluZGV4LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQkluZGV4Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNjQ1QjRBMUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJPYmplY3RTdG9yZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJPYmplY3RTdG9yZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNjQ1QjRCMUI5Rjg4OUIwMEY3ODlDRSAvKiBJ
REJPYmplY3RTdG9yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJPYmpl
Y3RTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI0QzFCOUY4ODlC
MDBGNzg5Q0UgLyogSURCT3BlbkRCUmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJREJPcGVuREJSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTE2NDVCNEQxQjlGODg5QjAwRjc4OUNFIC8qIElEQk9wZW5EQlJlcXVlc3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCT3BlbkRCUmVxdWVzdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI0RTFCOUY4ODlCMDBGNzg5Q0UgLyogSURC
UmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJSZXF1
ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2NDVCNEYxQjlGODg5QjAw
Rjc4OUNFIC8qIElEQlJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SURCUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI1MDFCOUY4
ODlCMDBGNzg5Q0UgLyogSURCVHJhbnNhY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSURCVHJhbnNhY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTY0NUI1MTFCOUY4ODlCMDBGNzg5Q0UgLyogSURCVHJhbnNhY3Rpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCVHJhbnNhY3Rpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2NDVCNTIxQjlGODg5QjAwRjc4OUNFIC8qIElEQlZlcnNp
b25DaGFuZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
REJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MTY0NUI1MzFCOUY4ODlCMDBGNzg5Q0UgLyogSURCVmVyc2lvbkNoYW5nZUV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQlZlcnNpb25DaGFuZ2VFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTY0NUI1NDFCOUY4OEU4MDBGNzg5Q0UgLyogSURC
Q3Vyc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkN1cnNv
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNjZEM0NDMUU4RUQ0MTEwMEFE
NjJFMyAvKiBTdG9yYWdlVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
dG9yYWdlVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTZCQjc5MjBDRTkx
RTY4MDA1MTJGNzkgLyogSlNUcmVlV2Fsa2VyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJlZVdhbGtlckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxNkM2MjFEMTk1MEQ0ODcwMDMzN0U3NSAvKiBHYW1lcGFkRXZlbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2FtZXBhZEV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2QzYyMUUxOTUwRDQ4NzAwMzM3RTc1
IC8qIEdhbWVwYWRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHYW1l
cGFkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2QzYyMUYxOTUwRDQ4
NzAwMzM3RTc1IC8qIEdhbWVwYWRFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gR2Ft
ZXBhZEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE2QzYyMjMxOTUw
RTJCOTAwMzM3RTc1IC8qIEpTR2FtZXBhZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTR2FtZXBhZEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTE2QzYyMjQxOTUwRTJCOTAwMzM3RTc1IC8qIEpTR2FtZXBhZEV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTR2FtZXBhZEV2ZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNkQ3RDZEMUJCNUYwNjUwMEFGN0M3NyAvKiBJREJDb25u
ZWN0aW9uVG9DbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SURCQ29ubmVjdGlvblRvQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTE2RDdENkUxQkI1RjA2NTAwQUY3Qzc3IC8qIElEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVnYXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQkNvbm5lY3Rpb25Ub0NsaWVu
dERlbGVnYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNkY3RjZCMUMzMUM3
OUQwMEYxMTFEQyAvKiBTZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNlcnZlck9wZW5EQlJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTZGN0Y2QzFDMzFDNzlEMDBGMTExREMgLyogU2VydmVyT3BlbkRC
UmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2ZXJPcGVuREJS
ZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzEzOEVEMUJFRDFEMTcw
MDBENUYwMSAvKiBJbmRleEtleS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJbmRleEtleS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzEzOEVF
MUJFRDFEMTcwMDBENUYwMSAvKiBJbmRleEtleS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBJbmRleEtleS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTcxMzhG
NTFCRjEyMjYyMDAwRDVGMDEgLyogSW5kZXhWYWx1ZVN0b3JlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluZGV4VmFsdWVTdG9yZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxNzEzOEY2MUJGMTIyNjIwMDBENUYwMSAvKiBJbmRleFZhbHVlU3Rv
cmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5kZXhWYWx1ZVN0b3JlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzEzOEY5MUJGM0FEQUMwMDBENUYwMSAv
KiBJREJDdXJzb3JJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IElEQkN1cnNvckluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTcxMzhG
QTFCRjNBREFDMDAwRDVGMDEgLyogSURCQ3Vyc29ySW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJREJDdXJzb3JJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxNzEzOTAxMUJGNjRERTMwMDBENUYwMSAvKiBNZW1vcnlDdXJzb3IuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVtb3J5Q3Vyc29yLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3MTM5MDIxQkY2NERFMzAwMEQ1RjAxIC8qIE1lbW9yeUN1
cnNvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZW1vcnlDdXJzb3IuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3MTM5MDMxQkY2NERFMzAwMEQ1RjAxIC8q
IE1lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IE1lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTE3MTM5MDQxQkY2NERFMzAwMEQ1RjAxIC8qIE1lbW9yeU9iamVjdFN0b3Jl
Q3Vyc29yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lbW9yeU9iamVjdFN0
b3JlQ3Vyc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzE0RUE3MUNGNERF
ODcwMDQ3MjNDNCAvKiBJREJBY3RpdmVET01PYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSURCQWN0aXZlRE9NT2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNzE0RUE5MUNGNjU4OTkwMDQ3MjNDNCAvKiBHQ09ic2VydmF0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdDT2JzZXJ2YXRpb24uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTcxNEVBQTFDRjY1ODk5MDA0NzIzQzQgLyogR0NP
YnNlcnZhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHQ09ic2VydmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzE0RUFCMUNGNjU4OTkwMDQ3
MjNDNCAvKiBHQ09ic2VydmF0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBHQ09ic2Vy
dmF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3MTRFQUUxQ0Y2NjU0
QTAwNDcyM0M0IC8qIEpTR0NPYnNlcnZhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0dDT2JzZXJ2YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTcxNEVBRjFDRjY2NTRBMDA0NzIzQzQgLyogSlNHQ09ic2VydmF0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTR0NPYnNlcnZhdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1MTcxNUZFODI0Q0QwNUREMDAyQzk3RTYgLyogR2FtZXBh
ZENvbnN0YW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHYW1l
cGFkQ29uc3RhbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3MTVGRTky
NENEMDVERDAwMkM5N0U2IC8qIEdhbWVwYWRDb25zdGFudHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gR2FtZXBhZENvbnN0YW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MTc0MUQwQjBCMDcyNTlBMDBFRDQ0MkMgLyogQmFja0ZvcndhcmRDbGllbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFja0ZvcndhcmRDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3NDFEMEQwQjA3MjU5QTAwRUQ0NDJDIC8qIEhp
c3RvcnlJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIaXN0b3J5SXRl
bS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTc0MUQwRTBCMDcyNTlBMDBFRDQ0
MkMgLyogSGlzdG9yeUl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhpc3RvcnlJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3NDhG
QTIxQ0M2RUVFQjAwNzI4RDg0IC8qIFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9ycy5pZGw7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1dvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0
b3JzLmlkbDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTE3NEUyMDgx
MEExRjQ0RjAwRjk1RTZGIC8qIFBvcFN0YXRlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUG9wU3RhdGVFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTc0RTIwQjEwQTFGNDlBMDBGOTVFNkYgLyogUG9wU3RhdGVFdmVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUG9wU3RhdGVFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxNzcxREZDMUJEQjQ3NTYwMENBRThFNCAvKiBNZW1vcnlPYmplY3RTdG9yZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZW1vcnlPYmplY3RTdG9yZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxNzcxREZEMUJEQjQ3NTYwMENBRThF
NCAvKiBNZW1vcnlPYmplY3RTdG9yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNZW1vcnlPYmplY3RTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdB
NTJFRTFGNDc1MzU5MDBEQ0RDMEEgLyogU1dTZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1dTZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3
QTUyRUYxRjQ3NTM1OTAwRENEQzBBIC8qIFNXU2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNXU2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTE3QTUzMjQxRjRCOTA0QTAwRENEQzBBIC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJKb2JE
YXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3QTUzMjYxRjRCOTBCMjAw
RENEQzBBIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1MTdBNTMyNzFGNEI5MEIyMDBEQ0RDMEEgLyogU2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbktleS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTE3QTUzNDIxRjUwQzE2MTAwRENEQzBBIC8qIFNXU2VydmVyV29ya2Vy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNXU2VydmVyV29ya2VyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxN0E1MzQzMUY1MEMxNjEwMERDREMwQSAvKiBT
V1NlcnZlcldvcmtlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
V1NlcnZlcldvcmtlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxN0E1MzRC
MUY1NDlENEEwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxN0E1MzRDMUY1NDlE
NEEwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdBNTM1QzFGNTg5OUYyMDBEQ0RDMEEgLyog
U2VydmljZVdvcmtlckZldGNoUmVzdWx0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcnZpY2VXb3JrZXJGZXRjaFJlc3VsdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MTdBNjNCRjFCNzQzMTdFMDBFN0RDREMgLyogS2V5ZWREZWNvZGVyQ0YuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gS2V5ZWREZWNvZGVyQ0YuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdBNjNDMDFCNzQzMTdFMDBFN0RDREMgLyogS2V5
ZWREZWNvZGVyQ0YuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gS2V5ZWREZWNv
ZGVyQ0YuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3QTYzQzExQjc0MzE3RTAw
RTdEQ0RDIC8qIEtleWVkRW5jb2RlckNGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEtleWVkRW5jb2RlckNGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTE3QTYzQzIxQjc0MzE3RTAwRTdEQ0RDIC8qIEtleWVkRW5jb2RlckNGLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEtleWVkRW5jb2RlckNGLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxN0IyNUE3MUNDODIwMzIwMDYxQzAxMSAvKiBJREJDb25uZWN0aW9u
UHJveHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCQ29ubmVj
dGlvblByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE3QjI1QTgxQ0M4
MjAzMjAwNjFDMDExIC8qIElEQkNvbm5lY3Rpb25Qcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJREJDb25uZWN0aW9uUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTE3Qzg3MTAxRjhFRTcyRTAwRUI4MDc2IC8qIFNlcnZpY2VXb3JrZXJUaHJlYWQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU2VydmljZVdvcmtlclRocmVhZC5o
OyBwYXRoID0gd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5oOyBz
b3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCTUxN0M4NzExMUY4RUU3MkYwMEVCODA3NiAv
KiBTZXJ2aWNlV29ya2VyVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFNlcnZpY2VXb3JrZXJUaHJlYWQuY3BwOyBwYXRoID0gd29ya2Vycy9zZXJ2aWNlL2Nv
bnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsg
fTsKKwkJNTE3Qzg3MTYxRjhGRDREMzAwRUI4MDc2IC8qIFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdERUVFMzFE
RTk0QURDMDBCOTE2NDQgLyogU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yTWFjLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdERUVFNzFERTk0
QjA4MDBCOTE2NDQgLyogU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yTWFjLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ01vbWVudHVtQ2FsY3VsYXRvck1hYy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTdFMDNGNDI0QjZCOTYzMDA1NDg5NUEg
LyogTXVsdGlHYW1lcGFkUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTXVsdGlHYW1lcGFkUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTE3RTAzRjUyNEI2Qjk2NDAwNTQ4OTVBIC8qIE11bHRpR2FtZXBhZFByb3ZpZGVyLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTXVsdGlHYW1lcGFkUHJvdmlkZXIu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxN0ZCQTE3MTUxQUE3MUIwMEI1Nzk1
OSAvKiBET01XaW5kb3dFeHRlbnNpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRE9NV2luZG93RXh0ZW5zaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTE3RkJBMTgxNTFBQTcxQjAwQjU3OTU5IC8qIERPTVdpbmRvd0V4dGVuc2lvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01XaW5kb3dFeHRlbnNpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4MkMyNEIxRjMxM0FFMDAwNTlCQTdDIC8qIE5h
dmlnYXRvclNlcnZpY2VXb3JrZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclNlcnZpY2VXb3JrZXIuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTgyQzI0RDFGMzE0MjUwMDA1OUJBN0Mg
LyogSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4MkMy
NEUxRjMxNDI1MDAwNTlCQTdDIC8qIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4MkMyNEYxRjMxNDI1MDAwNTlCQTdDIC8qIEpTU2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTgyQzI1
MDFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MTgyQzI1MTFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2Vy
Q29udGFpbmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU2VydmljZVdvcmtlckNvbnRhaW5l
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxODJDMjUyMUYzMTQyNTAwMDU5
QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTZXJ2aWNlV29ya2Vy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxODJDMjUzMUYzMTQyNTAwMDU5QkE3
QyAvKiBKU1NlcnZpY2VXb3JrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTZXJ2aWNlV29y
a2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4MkMyNTQxRjMxNDI1MDAw
NTlCQTdDIC8qIEpTU2VydmljZVdvcmtlckNvbnRhaW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Nl
cnZpY2VXb3JrZXJDb250YWluZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4
NTQzMDkxRkI2NzgzRTAwNDc4Rjk1IC8qIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4NTQzMEExRkI2NzgzRjAwNDc4
Rjk1IC8qIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTg1RkNCQzFCQjVDQjc3MDAxMjg5OEYgLyogSURC
Q29ubmVjdGlvblRvU2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IElEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxODVGQ0JEMUJCNUNCNzcwMDEyODk4RiAvKiBJREJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxl
Z2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJDb25uZWN0aW9uVG9T
ZXJ2ZXJEZWxlZ2F0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTg4NjRERTFC
QkFGMzBGMDBFNTQwQzkgLyogVW5pcXVlSURCRGF0YWJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gVW5pcXVlSURCRGF0YWJhc2UuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTg4NjRERjFCQkFGMzBGMDBFNTQwQzkgLyogVW5pcXVlSURCRGF0
YWJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVW5pcXVlSURCRGF0YWJh
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4OUYwMUIxMEIzN0JEOTAwRjND
NzM5IC8qIEpTUG9wU3RhdGVFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1BvcFN0YXRlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MTg5RjAxQzEwQjM3QkQ5MDBGM0M3MzkgLyogSlNQb3BTdGF0ZUV2ZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUG9wU3RhdGVFdmVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MTg5RjBERDEwQjQ2QjBFMDBGM0M3MzkgLyogUG9wU3RhdGVFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3BTdGF0ZUV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4RjRGRUQxOTRDQTRFNjAwODFC
QUFFIC8qIEdhbWVwYWRCdXR0b24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gR2FtZXBhZEJ1dHRvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUx
OEY0RkVFMTk0Q0E0RTYwMDgxQkFBRSAvKiBHYW1lcGFkQnV0dG9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEdhbWVwYWRCdXR0b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTE4RjRGRUYxOTRDQTRFNjAwODFCQUFFIC8qIEdhbWVwYWRCdXR0b24uaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEdhbWVwYWRCdXR0b24uaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MThGNEZGRDE5NENBQzNBMDA4MUJBQUUgLyogSlNHYW1lcGFkLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTR2FtZXBhZC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOEY0RkZFMTk0Q0FDM0EwMDgxQkFBRSAvKiBKU0dh
bWVwYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNHYW1lcGFkLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOEY0RkZGMTk0Q0FDM0EwMDgxQkFBRSAvKiBK
U0dhbWVwYWRCdXR0b24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNHYW1lcGFkQnV0dG9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4RjUw
MDAxOTRDQUMzQTAwODFCQUFFIC8qIEpTR2FtZXBhZEJ1dHRvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0dhbWVwYWRCdXR0b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTE4Rjk3MDAxQkU5NEM1QjAwMjMxODdDIC8qIE1lbW9yeUluZGV4LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lbW9yeUluZGV4LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE4Rjk3MDExQkU5NEM1QjAwMjMxODdDIC8qIE1lbW9y
eUluZGV4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lbW9yeUluZGV4Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOTc1NUY3MUJGRDdEQkMwMDNERTk4MCAv
KiBNZW1vcnlJbmRleEN1cnNvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBNZW1vcnlJbmRleEN1cnNvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxOTc1NUY4MUJGRDdEQkMwMDNERTk4MCAvKiBNZW1vcnlJbmRleEN1cnNvci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZW1vcnlJbmRleEN1cnNvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MTk4RjdBMjFCQkRBQTI5MDBFMkNDNUYgLyogVW5pcXVlSURC
RGF0YWJhc2VDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFVuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxOThGN0EzMUJCREFBMjkwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZUNv
bm5lY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVW5pcXVlSURCRGF0
YWJhc2VDb25uZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOThGN0E2
MUJCREQzODEwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVuaXF1ZUlEQkRhdGFiYXNlVHJhbnNh
Y3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTk4RjdBNzFCQkREMzgx
MDBFMkNDNUYgLyogVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOThGN0FBMUJCREQzRTMwMEUyQ0M1RiAvKiBJREJU
cmFuc2FjdGlvbkluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SURCVHJhbnNhY3Rpb25JbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE5
OEY3QUIxQkJERDNFMzAwRTJDQzVGIC8qIElEQlRyYW5zYWN0aW9uSW5mby5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJREJUcmFuc2FjdGlvbkluZm8uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTE5REJDNkMxREMwMEZBMDAwMzI5QkY1IC8qIElEQkdldEFsbFJl
Y29yZHNEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQkdldEFsbFJl
Y29yZHNEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxOURCQzZEMURDMDBG
QjkwMDMyOUJGNSAvKiBJREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBJREJHZXRBbGxSZWNvcmRzRGF0YS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxOURCQzcwMURDMTBEMzMwMDMyOUJGNSAvKiBJREJHZXRBbGxS
ZXN1bHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCR2V0QWxs
UmVzdWx0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTE5REJDNzExREMxMEQz
MzAwMzI5QkY1IC8qIElEQkdldEFsbFJlc3VsdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBJREJHZXRBbGxSZXN1bHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTE5RkUwQTEwREFENDQ2RTAwQTA4RjIxIC8qIEhUTUxBdHRyaWJ1dGVOYW1lcy5pbiAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBIVE1MQXR0cmlidXRlTmFtZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxOUZFMEEyMERBRDQ0NkUwMEEwOEYyMSAvKiBIVE1MVGFnTmFtZXMuaW4g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFRhZ05hbWVzLmluOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MUEwNTIzMTEwNTg3NzRGMDBDQzlFOTUgLyogQ3JlZGVudGlhbFN0b3Jh
Z2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3JlZGVudGlhbFN0b3JhZ2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFBMDUyMzIxMDU4Nzc0RjAwQ0M5RTk1
IC8qIENyZWRlbnRpYWxTdG9yYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IENyZWRlbnRpYWxTdG9yYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTFBMDUyNTUxMDU4ODc0MDAwQ0M5RTk1IC8qIFByb3RlY3Rpb25TcGFjZUhhc2guaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHJvdGVjdGlvblNwYWNlSGFzaC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUExQjg3QjIwODdDNEI4MDA5NzlBNzUgLyogQmFj
a0ZvcndhcmRJdGVtSWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxQTRCQjA3MTk1NEQ2MTYwMEZBNUMyRSAvKiBHYW1lcGFkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdhbWVwYWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUE0QkIwODE5NTRENjE2MDBGQTVDMkUgLyogR2FtZXBhZC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHYW1lcGFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxQTRCQjA5MTk1NEQ2MTYwMEZBNUMyRSAvKiBHYW1lcGFkLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBHYW1lcGFkLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTFBNEJCMEQxOTU0RDYyNzAwRkE1QzJFIC8qIE5hdmlnYXRvckdhbWVwYWQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2aWdhdG9yR2FtZXBhZC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQTRCQjBFMTk1NEQ2MjcwMEZBNUMyRSAvKiBO
YXZpZ2F0b3JHYW1lcGFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmln
YXRvckdhbWVwYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFBNEJCMEYxOTU0
RDYyNzAwRkE1QzJFIC8qIE5hdmlnYXRvcitHYW1lcGFkLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSAiTmF2aWdhdG9yK0dhbWVwYWQuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTFBNzQ4RTAyMDA1RDBFMDAwNzVCQTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQTc0OEUxMjAwNUQwRTAwMDc1QkE2
OCAvKiBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxQTc0OEU0MjAwNjAwMjEwMDc1QkE2OCAvKiBNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlckltcGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXJJbXBsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTFBNzQ4RTUyMDA2MDAyMTAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5l
bFByb3ZpZGVySW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZXNzYWdl
UG9ydENoYW5uZWxQcm92aWRlckltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTFBOUQ5RTcxOTVCOTMxRjAwMUIyQjVDIC8qIEdhbWVwYWRNYW5hZ2VyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdhbWVwYWRNYW5hZ2VyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFBOUQ5RTgxOTVCOTMxRjAwMUIyQjVDIC8qIEdhbWVwYWRN
YW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdhbWVwYWRNYW5hZ2Vy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQUEzRjZFMEJENUFBOUUwMDg5Mjk3
MSAvKiBSZXNvdXJjZUxvYWRlck1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFJlc291cmNlTG9hZGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MUFCQUUxQzEwM0MxOTEzMDA4QzUyNjAgLyogU29ja2V0U3RyZWFtSGFuZGxlSW1wbC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2NrZXRTdHJlYW1IYW5kbGVJbXBs
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQUJBRTFEMTAzQzE5MTMwMDhDNTI2
MCAvKiBTb2NrZXRTdHJlYW1IYW5kbGVJbXBsQ0ZOZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU29ja2V0U3RyZWFtSGFuZGxlSW1wbENGTmV0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFBQkY2NEMxNjM5MkUyODAwMTMyQTdBIC8qIExvYWRl
clN0cmF0ZWd5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExvYWRl
clN0cmF0ZWd5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFBRjUwMzUxNkYx
MDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUIyNDE3QTBEOTMxRjNGMDBFODNGNUMgLyogTGVnYWN5V2ViQXJjaGl2ZU1h
Yy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IExlZ2FjeVdlYkFy
Y2hpdmVNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQjQ1RDFFMUFCOEQx
RTIwMDExN0NEMiAvKiBDb250ZW50RXh0ZW5zaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENvbnRlbnRFeHRlbnNpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUI0NUQxRjFBQjhEMUUyMDAxMTdDRDIgLyogQ29udGVudEV4dGVuc2lvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50RXh0ZW5zaW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQjkxNDBCMUZEMjc4MjUwMEVFMjg1OSAvKiBS
ZWdpc3RyYXRpb25TdG9yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWdp
c3RyYXRpb25TdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUI5MTQwQzFG
RDI3ODI1MDBFRTI4NTkgLyogUmVnaXN0cmF0aW9uRGF0YWJhc2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVnaXN0cmF0aW9uRGF0YWJhc2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTFCOTE0MEQxRkQyNzgyNTAwRUUyODU5IC8qIFJlZ2lzdHJhdGlvbkRh
dGFiYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlZ2lzdHJh
dGlvbkRhdGFiYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFCOTE0MEUx
RkQyNzgyNTAwRUUyODU5IC8qIFJlZ2lzdHJhdGlvblN0b3JlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlZ2lzdHJhdGlvblN0b3JlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTFCQTRBQzExQkJCNUNCRjAwREYzRDZEIC8qIElEQkRhdGFiYXNl
SW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJEYXRhYmFz
ZUluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUJBNEFDMjFCQkI1Q0JG
MDBERjNENkQgLyogSURCRGF0YWJhc2VJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IElEQkRhdGFiYXNlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MUJBNEFDNzFCQkM1QUQ2MDBERjNENkQgLyogSURCQmFja2luZ1N0b3JlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQkJhY2tpbmdTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MUJBNEFDODFCQkM1QjlFMDBERjNENkQgLyogTWVtb3J5SURCQmFja2lu
Z1N0b3JlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lbW9yeUlE
QkJhY2tpbmdTdG9yZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQkE0QUM5
MUJCQzVCOUUwMERGM0Q2RCAvKiBNZW1vcnlJREJCYWNraW5nU3RvcmUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWVtb3J5SURCQmFja2luZ1N0b3JlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxQkE5NDZGMjNBQzMwNTAwMDQ0NDg0NiAvKiBSdW5KYXZhU2Ny
aXB0UGFyYW1ldGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSdW5KYXZh
U2NyaXB0UGFyYW1ldGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUJFMzdE
RTBEQUVFMDBFMDAxMDg1RkMgLyogU3RvcmFnZUFyZWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU3RvcmFnZUFyZWEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTFDMEFBMzgwRjJBQTEwQTAwMTY0OEMyIC8qIENhY2hlZEZyYW1lLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZEZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxQzBBQTQwMEYyQUExNUUwMDE2NDhDMiAvKiBDYWNoZWRGcmFtZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWNoZWRGcmFtZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQzYxQjA4MURFNTM2RTcwMDhBMjEyRCAvKiBTY3JvbGxp
bmdNb21lbnR1bUNhbGN1bGF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTFDNjFCMDkxREU1MzZFNzAwOEEyMTJEIC8qIFNjcm9sbGluZ01vbWVudHVt
Q2FsY3VsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdN
b21lbnR1bUNhbGN1bGF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFDODFC
ODcwQzQ0MjJGNzAwMTlFQ0UzIC8qIEZUUERpcmVjdG9yeVBhcnNlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRlRQRGlyZWN0b3J5UGFyc2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFDODFCODgwQzQ0MjJGNzAwMTlFQ0UzIC8qIEZUUERp
cmVjdG9yeVBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRlRQRGly
ZWN0b3J5UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQ0E3RUU3MUY4
ODMyRTAwMDNEMzEzMSAvKiBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlckNvbnRleHREYXRhLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxQ0JGQzk4MEQxMEU0ODMwMDJEQkY1MSAvKiBDYWNoZWRG
cmFtZVBsYXRmb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNo
ZWRGcmFtZVBsYXRmb3JtRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUQx
MjQ4QTFFNzM2MjVDMDAyQjI4MjAgLyogTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBOZXR3b3JrU3RvcmFnZVNlc3Np
b25Db2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFEMTI0OEMxRTczNjQ1
NjAwMkIyODIwIC8qIENvb2tpZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gQ29va2llQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxRDcxOTc3MTgxMTA2REYwMDE2REM1MSAvKiBJREJDdXJzb3IuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IElEQkN1cnNvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUx
RDcxOTdCMTgxMTA2REYwMDE2REM1MSAvKiBJREJDdXJzb3JXaXRoVmFsdWUuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IElEQkN1cnNvcldpdGhWYWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxRDcxOTdFMTgxMTA2REYwMDE2REM1MSAvKiBJREJEYXRhYmFzZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSURCRGF0YWJhc2UuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MUQ3MTk4QTE4MTEwNkRGMDAxNkRDNTEgLyogSURCRmFjdG9yeS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSURCRmFjdG9yeS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxRDcxOTkwMTgxMTA2RTAwMDE2REM1MSAvKiBJREJJbmRleC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSURCSW5kZXguaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MUQ3MTk5MTE4MTEwNkUwMDAxNkRDNTEgLyogSURCS2V5LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQktleS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxRDcxOTkyMTgxMTA2RTAwMDE2REM1MSAvKiBJREJLZXkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSURCS2V5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUxRDcxOTkzMTgxMTA2RTAwMDE2REM1MSAvKiBJREJLZXlQYXRoLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQktleVBhdGguY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1MUQ3MTk5NDE4MTEwNkUwMDAxNkRDNTEgLyogSURCS2V5
UGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJLZXlQYXRoLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRDcxOTk1MTgxMTA2RTAwMDE2REM1MSAvKiBJ
REJLZXlSYW5nZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJL
ZXlSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRDcxOTk2MTgxMTA2
RTAwMDE2REM1MSAvKiBJREJLZXlSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJREJLZXlSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUQ3MTk5
NzE4MTEwNkUwMDAxNkRDNTEgLyogSURCS2V5UmFuZ2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IElEQktleVJhbmdlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFENzE5
OUIxODExMDZFMDAwMTZEQzUxIC8qIElEQk9iamVjdFN0b3JlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBJREJPYmplY3RTdG9yZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxRDcxOTlFMTgxMTA2RTAwMDE2REM1MSAvKiBJREJPcGVuREJSZXF1ZXN0LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBJREJPcGVuREJSZXF1ZXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTFENzE5QTMxODExMDZFMDAwMTZEQzUxIC8qIElEQlJlcXVlc3QuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IElEQlJlcXVlc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUQ3MTlBNjE4MTEwNkUwMDAxNkRDNTEgLyogSURCVHJhbnNhY3Rpb24uaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElEQlRyYW5zYWN0aW9uLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTFENzE5QUQxODExMDZFMDAwMTZEQzUxIC8qIElEQlZlcnNpb25D
aGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSURCVmVyc2lvbkNoYW5nZUV2
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFENzE5QUUxODExMDZFMDAw
MTZEQzUxIC8qIEluZGV4ZWREQi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bmRleGVkREIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFENzE5QjExODExMDZF
MDAwMTZEQzUxIC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2luZG93T3JXb3JrZXJHbG9i
YWxTY29wZUluZGV4ZWREYXRhYmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxRDcxOUIyMTgxMTA2RTAwMDE2REM1MSAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlSW5k
ZXhlZERhdGFiYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpbmRvd09y
V29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTFENzE5QjMxODExMDZFMDAwMTZEQzUxIC8qIFdpbmRvd09yV29ya2VyR2xvYmFs
U2NvcGUrSW5kZXhlZERhdGFiYXNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiV2luZG93
T3JXb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsIjsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTFENzIzNkExQkI2MEJGRTAwNDc4Q0EzIC8qIElEQlJlc3VsdERhdGEu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCUmVzdWx0RGF0YS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRDcyMzZCMUJCNjBCRkUwMDQ3OENB
MyAvKiBJREJSZXN1bHREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElE
QlJlc3VsdERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFEN0VGRUIxQkRF
RkE0NzAwRTkzRTEwIC8qIFRyYW5zYWN0aW9uT3BlcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFERjZEN0QwQjkyQTE2RDAwQzJEQzg1IC8qIFRocmVhZENo
ZWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVhZENoZWNrLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxREY2RDdGMEI5MkExOEUwMEMyREM4NSAvKiBU
aHJlYWRDaGVjay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRo
cmVhZENoZWNrLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUUwQkFCOTBEQTU1
NDcxMDBBOUU0MTcgLyogU3RvcmFnZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFN0b3JhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUUw
QkFCQTBEQTU1NDcxMDBBOUU0MTcgLyogU3RvcmFnZUV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0b3JhZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxRTBCQUJEMERBNTU0ODQwMEE5RTQxNyAvKiBTdG9yYWdlRXZlbnQuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFN0b3JhZ2VFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxRTBCQUU4MERBNTVENEEwMEE5RTQxNyAvKiBKU1N0b3JhZ2VFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1N0b3JhZ2VFdmVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRTBCQUU5MERBNTVENEEwMEE5
RTQxNyAvKiBKU1N0b3JhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1N0b3JhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUUwQkIz
NjBEQTVBQ0I2MDBBOUU0MTcgLyogU3RvcmFnZU1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTdG9yYWdlTWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUx
RTBCQjM3MERBNUFDQjYwMEE5RTQxNyAvKiBTdG9yYWdlTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0b3JhZ2VNYXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUUxQkFDMDFCRDgwNjQ3MDA1NUQ4MUYgLyogTWVtb3J5QmFja2luZ1N0b3Jl
VHJhbnNhY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVt
b3J5QmFja2luZ1N0b3JlVHJhbnNhY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MUUxQkFDMTFCRDgwNjQ3MDA1NUQ4MUYgLyogTWVtb3J5QmFja2luZ1N0b3JlVHJhbnNh
Y3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVtb3J5QmFja2luZ1N0
b3JlVHJhbnNhY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFFMjY5MzIx
REQzQkM0MzAwNkI2QTU4IC8qIEpTSURCVHJhbnNhY3Rpb25DdXN0b20uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJREJUcmFuc2FjdGlvbkN1c3RvbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRTI2OTM0MUREM0JEOTEwMDZCNkE1OCAvKiBJ
REJJdGVyYXRlQ3Vyc29yRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJREJJdGVyYXRlQ3Vyc29yRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxRTI2OTM1MUREM0JEOTEwMDZCNkE1OCAvKiBJREJJdGVyYXRlQ3Vyc29yRGF0YS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJREJJdGVyYXRlQ3Vyc29yRGF0YS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUUzOThGQzFENkU0NzRCMDA5Qzg4MzEgLyog
R2FtZUNvbnRyb2xsZXJHYW1lcGFkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEdhbWVDb250cm9sbGVyR2FtZXBhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MUUzOThGRDFENkU0NzRCMDA5Qzg4MzEgLyogR2FtZUNvbnRyb2xsZXJHYW1lcGFkLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gR2FtZUNvbnRyb2xsZXJHYW1lcGFk
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUUzOThGRTFENkU0NzRCMDA5Qzg4
MzEgLyogR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFFMzk4RkYxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250
cm9sbGVyR2FtZXBhZFByb3ZpZGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxRTNBQTA4MUI5OEJDOUEwMDM2QUQ4MSAvKiBTZWN1cml0eU9yaWdp
bkRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VjdXJpdHlP
cmlnaW5EYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFFM0FBMDkxQjk4
QkM5QTAwMzZBRDgxIC8qIFNlY3VyaXR5T3JpZ2luRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTZWN1cml0eU9yaWdpbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTFFM0Y5QzQwREEwNTlEQzAwMjUwOTExIC8qIFN0b3JhZ2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MUUzRjlDNTBEQTA1OURDMDAyNTA5MTEgLyogU3RvcmFnZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdG9yYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTFFM0Y5RDEwREEwNUQ3MTAwMjUwOTExIC8qIFN0b3JhZ2UuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFN0b3JhZ2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MUUzRjlENDBEQTA1RTFEMDAyNTA5MTEgLyogSlNTdG9yYWdlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU3RvcmFnZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxRTNGOUQ1MERBMDVFMUQwMDI1MDkxMSAvKiBKU1N0b3JhZ2Uu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTdG9yYWdlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRTY4MjBGMTYzODczMDIwMDNCQkYzQyAvKiBMb2FkZXJT
dHJhdGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2FkZXJTdHJhdGVn
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUVDQzNGMTIwMDU4N0I1MDA0ODNF
QUUgLyogTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTWVzc2FnZVBvcnRDaGFubmVsUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTFFQ0MzRjMyMDA1ODdCNjAwNDgzRUFFIC8qIE1lc3NhZ2VQb3J0Q2hh
bm5lbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZXNzYWdlUG9y
dENoYW5uZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUVDQzNGNDIwMDU4
N0I3MDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1lc3NhZ2VQb3J0Q2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MUVDQzNGNTIwMDU4N0I3MDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVsUmVn
aXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVzc2FnZVBv
cnRDaGFubmVsUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUVD
QzNGQjIwMDU5MzAxMDA0ODNFQUUgLyogTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFFQ0MzRkMyMDA1OTMwMjAwNDgzRUFF
IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFFRTdCMzcxQUE1MEIwNTAwRjkyQjIxIC8qIFJlc291cmNl
TG9hZEluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2Fk
SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUVFN0IzOTFBQTUxMjMxMDBG
OTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBSZXNvdXJjZUxvYWRJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTFFRUFBNzExQkVGRkE3OTAwMjE4MDA4IC8qIEluZGV4VmFsdWVFbnRyeS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmRleFZhbHVlRW50cnkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUVFQUE3MjFCRUZGQTc5MDAyMTgwMDggLyog
SW5kZXhWYWx1ZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluZGV4
VmFsdWVFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUYxNzRGQTFGMzU4
OEQ3MDBDNzQ5NTAgLyogV29ya2VyVHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV29y
a2VyVHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NEZDMUYzNTg5
ODgwMEM3NDk1MCAvKiBXb3JrZXJUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFdvcmtlclR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1MDAx
RjM1OEIzNjAwQzc0OTUwIC8qIEpTU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU2VydmljZVdvcmtlclVwZGF0ZVZp
YUNhY2hlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1MDExRjM1OEIz
NjAwQzc0OTUwIC8qIEpTU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NTA0MUYzNThCREUwMEM3NDk1MCAvKiBK
U1dvcmtlclR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNX
b3JrZXJUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1MDUxRjM1
OEJERTAwQzc0OTUwIC8qIEpTV29ya2VyVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1dvcmtlclR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFG
MTc1NDYxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1NDcxRjNFQkMwQzAwQzc0OTUwIC8q
IFNlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTZXJ2aWNlV29ya2VyVXBkYXRlVmlhQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTFGMTc1NEExRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJSZWdp
c3RyYXRpb25PcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25PcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTUxRjE3NTRCMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1NEMxRjNFQkMwQzAwQzc0OTUw
IC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1MUYxNzU0RDFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFG
MTc1NEUxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJQcm92aWRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VyUHJvdmlkZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1NEYxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZp
Y2VXb3JrZXJQcm92aWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTZXJ2aWNlV29ya2VyUHJvdmlkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MUYxNzU1MDFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlckpvYkNsaWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VySm9iQ2xpZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NTUxMUYzRUJDMEMwMEM3NDk1MCAv
KiBTZXJ2aWNlV29ya2VySm9iLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNl
cnZpY2VXb3JrZXJKb2IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1NTIx
RjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJKb2IuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmljZVdvcmtlckpvYi5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxRjE3NTUzMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NTU0MUYzRUJD
MEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NTU1MUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTFGMTc1NTYxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJDb250YWluZXIuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJDb250YWluZXIuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUYxNzU1NzFGM0VCQzBDMDBDNzQ5NTAgLyogU2Vy
dmljZVdvcmtlckNvbnRhaW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
ZXJ2aWNlV29ya2VyQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUx
RjE3NTU4MUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyQ29udGFpbmVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJDb250YWluZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUYxNzU1OTFGM0VCQzBDMDBDNzQ5
NTAgLyogU2VydmljZVdvcmtlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VydmljZVdv
cmtlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjE3NTVBMUYzRUJDMEMw
MEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcnZpY2VXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGMTc1
NUIxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmljZVdvcmtlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUxRjY0NTYwMUY0NTM5OEIwMEI1NERFRCAvKiBFeGNlcHRpb25EYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV4Y2VwdGlvbkRhdGEuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGNjQ1NjUxRjQ1Mzk5RjAwQjU0REVEIC8qIFNlcnZp
Y2VXb3JrZXJKb2JUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlcnZp
Y2VXb3JrZXJKb2JUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjY0NTY2
MUY0NTM5OUYwMEI1NERFRCAvKiBTZXJ2aWNlV29ya2VySm9iRGF0YS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VySm9iRGF0YS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MUY2NDU5NDFGNEE2ODRGMDBCNTRERUQgLyogU1dTZXJ2ZXJSZWdp
c3RyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1dTZXJ2ZXJSZWdp
c3RyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGNjQ1OTUxRjRBNjg2
MTAwQjU0REVEIC8qIFNXU2VydmVyUmVnaXN0cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNXU2VydmVyUmVnaXN0cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTFGNjQ1QTAxRjRCRjUxNjAwQjU0REVEIC8qIFNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25PcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25PcHRpb25zLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTFGNjQ1QTMxRjRDMDAwQzAwQjU0REVEIC8qIEV4Y2VwdGlvbkRh
dGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uRGF0
YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjY0NUQyMUZFQ0RCQzgwMEI1
NERFRCAvKiBQcm9jZXNzSWRlbnRpZmllci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBQcm9jZXNzSWRlbnRpZmllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUxRjY0NUQzMUZFQ0RCQzgwMEI1NERFRCAvKiBQcm9jZXNzSWRlbnRpZmllci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQcm9jZXNzSWRlbnRpZmllci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUY2NDVERTFGRjQ1OTRCMDBCNTRERUQgLyogTWVz
c2FnZVBvcnRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1l
c3NhZ2VQb3J0SWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUY2
QTNENTA2NjNCRjA0MDA0RDI5MTkgLyogSFRNTENhbnZhc0VsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTENhbnZhc0Vs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJz
ID0gMDsgfTsKKwkJNTFGNkEzRDYwNjYzQkYwNDAwNEQyOTE5IC8qIEhUTUxDYW52YXNFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVu
dFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhU
TUxDYW52YXNFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsg
dXNlc1RhYnMgPSAwOyB9OworCQk1MUY3OThFQjFCRTg4MEQzMDA4QUU0OTEgLyogSURCSW5kZXhJ
bmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElEQkluZGV4SW5m
by5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjc5OEVDMUJFODgwRDMwMDhB
RTQ5MSAvKiBJREJJbmRleEluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SURCSW5kZXhJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUxRjg4NkJFMUYz
MjkyMDcwMEMxOTNFRiAvKiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JTZXJ2aWNlV29ya2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTFGODg2QkYxRjMyOTIwNzAwQzE5M0VGIC8q
IEpTTmF2aWdhdG9yU2VydmljZVdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTFGQjU1MDIxMTNFM0U5MTAwODIxMTc2IC8qIEpTQ2xvc2VFdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Nsb3NlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTFGQjU1MDMxMTNFM0U5MTAwODIxMTc2IC8qIEpTQ2xvc2VFdmVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0Nsb3NlRXZlbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MUZCNjdEOTFBRTZCNUU0MDBEMDZDNUEg
LyogQ29udGVudEV4dGVuc2lvblN0eWxlU2hlZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ29udGVudEV4dGVuc2lvblN0eWxlU2hlZXQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MUZCNjdEQTFBRTZCNUU0MDBEMDZDNUEgLyogQ29udGVudEV4
dGVuc2lvblN0eWxlU2hlZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29u
dGVudEV4dGVuc2lvblN0eWxlU2hlZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTIxMzFFNUExQzRGMTU2MTAwMzNGODAyIC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZU1hYy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTI2NzI0RjEx
Q0IyRkRGNjAwNzU5NzREIC8qIFRleHRUcmFja1JlcHJlc2VudGF0aW9uQ29jb2EubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBUZXh0VHJhY2tSZXByZXNlbnRhdGlv
bkNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MjY3MjRGMjFDQjJGREY2
MDA3NTk3NEQgLyogVGV4dFRyYWNrUmVwcmVzZW50YXRpb25Db2NvYS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbkNvY29hLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyNzNDQzc0MjU2MTAzQ0YwMDg1MDAwNyAvKiBQbGF0
Zm9ybVhSQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0Zm9ybVhSQ29jb2EubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyNzNDQzc1MjU2MTAzQ0YwMDg1MDAwNyAv
KiBQbGF0Zm9ybVhSQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1YUkNvY29hLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyNzNDQzlBMjU2M0IyMTIwMDg1MDAwNyAvKiBK
U1dlYlhSVGVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dl
YlhSVGVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyNzNDQzlFMjU2M0Iz
NzYwMDg1MDAwNyAvKiBKU1dlYkZha2VYUkRldmljZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1dlYkZha2VYUkRldmljZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUyNzNDQ0EyMjU2M0I0RjcwMDg1MDAwNyAvKiBKU1hSU2ltdWxhdGVVc2Vy
QWN0aXZhdGlvbkZ1bmN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTWFJTaW11bGF0ZVVzZXJBY3RpdmF0aW9uRnVuY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1MjczQ0NBNjI1NjNCNUM5MDA4NTAwMDcgLyogSlNXZWJGYWtlWFJJ
bnB1dENvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNXZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1MjczQ0NBQTI1NjQ1NzZCMDA4NTAwMDcgLyogSlNGYWtlWFJJbnB1dFNvdXJjZUluaXQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGYWtlWFJJbnB1dFNv
dXJjZUluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MjczQ0NBQzI1NjQ1
NzZDMDA4NTAwMDcgLyogSlNGYWtlWFJCb3VuZHNQb2ludC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0Zha2VYUkJvdW5kc1BvaW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTI3M0NDQUQyNTY0NTc2QzAwODUwMDA3IC8qIEpTRmFrZVhSQnV0
dG9uU3RhdGVJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RmFrZVhSQnV0dG9uU3RhdGVJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTI3M0NDQUUyNTY0NTc2RDAwODUwMDA3IC8qIEpTRmFrZVhSUmlnaWRUcmFuc2Zvcm1Jbml0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmFrZVhSUmlnaWRUcmFu
c2Zvcm1Jbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTI3M0NDQUYyNTY0
NTc2RTAwODUwMDA3IC8qIEpTRmFrZVhSVmlld0luaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNGYWtlWFJWaWV3SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUyQjBENEJEMUM1N0ZEMUUwMDc3Q0U1MyAvKiBQbGF0Zm9ybVZpZXcuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1WaWV3Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyQjBENEJGMUM1N0ZENjYwMDc3Q0U1MyAvKiBWaWRlb0Z1
bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1MkIwRDRDMTFDNTdGRjkxMDA3N0NFNTMgLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZU1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MkQ1QTE4RDFD
NTQ1OTAzMDBERTM0QTMgLyogVmlkZW9MYXllck1hbmFnZXJPYmpDLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVmlkZW9MYXllck1hbmFnZXJPYmpDLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MkQ1QTE4RTFDNTQ1OTAzMDBERTM0QTMgLyogVmlk
ZW9MYXllck1hbmFnZXJPYmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZp
ZGVvTGF5ZXJNYW5hZ2VyT2JqQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MkQ1
QTFBNDFDNTc0ODg5MDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTW9kZWwuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTJENUExQTUxQzU3NDg4OTAwREUzNEEzIC8qIFZpZGVvRnVs
bHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTUyRDVBMUE2MUM1NzQ4ODkwMERFMzRBMyAvKiBWaWRlb0Z1bGxzY3JlZW5N
b2RlbFZpZGVvRWxlbWVudC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MkUyQ0FGQjE5RkYwMjA3MDAxRUVCNEYgLyogTWVkaWFQcm9kdWNlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVByb2R1Y2VyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyRjEwODYyMTYyQjZEODIwMDlBQzgxRSAvKiBNaXhl
ZENvbnRlbnRDaGVja2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE1peGVkQ29udGVudENoZWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MkYxMDg2MzE2MkI2RDgyMDA5QUM4MUUgLyogTWl4ZWRDb250ZW50Q2hlY2tlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNaXhlZENvbnRlbnRDaGVja2VyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTUyRjUyRTEwMTRBMDEzNEYwMEFDQzM5NyAvKiBOU1Njcm9s
bGVySW1wRGV0YWlscy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IE5TU2Nyb2xsZXJJbXBEZXRhaWxzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
MzBBNjM0MjFGQTNFMzNCMDAyNkE1NDUgLyogU291cmNlc0NvY29hLnR4dCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBTb3VyY2VzQ29jb2EudHh0OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1MzBBNjM0NjFGQTNFMzNEMDAyNkE1NDUgLyogU291cmNlcy50eHQgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gU291cmNlcy50eHQ7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzMTc2
MTIwMTNDNTE2NjkwMDI2RTQ1NCAvKiBTdHlsZUZsZXhpYmxlQm94RGF0YS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZUZsZXhpYmxlQm94RGF0YS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzMTc2MTIxMTNDNTE2NjkwMDI2RTQ1NCAvKiBT
dHlsZUZsZXhpYmxlQm94RGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
dHlsZUZsZXhpYmxlQm94RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MzUx
RDRBRTFERjkxNkFDMDA4MDEwQ0QgLyogRmlsZUhhbmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlSGFuZGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTM1MUQ0QUYxREY5MTZBQzAwODAxMENEIC8qIEZpbGVIYW5kbGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZUhhbmRsZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1MzU1RThERDFGOTY4MDQyMDAzMUUwOEMgLyogR2VuZXJhdGVVbmlmaWVk
U291cmNlcy54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBHZW5lcmF0ZVVuaWZpZWRTb3VyY2VzLnhj
Y29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MzZENUExRTE5M0UxOEQwMDBD
RTRDQUIgLyogSFRNTFNyY3NldFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBIVE1MU3Jjc2V0UGFyc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTM2RDVBMUYxOTNFMThFOTAwQ0U0Q0FCIC8qIEhUTUxTcmNzZXRQYXJzZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFNyY3NldFBhcnNlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1MzZENUEyMjE5M0U4RTBDMDBDRTRDQUIgLyogUGFyc2lu
Z1V0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXJzaW5nVXRp
bGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzOEVDN0VCMUY5NkFBNTMw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlNi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTYuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM3RUMxRjk2QUE1NDAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQk1MzhFQzdFRDFGOTZBQTU1MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTMtbW0ubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTMt
bW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UzLW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJNTM4RUM3RUUxRjk2QUE1NjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMi5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzdFRjFGOTZB
QTU3MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0YwMUY5NkFBNTgwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlNS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJNTM4RUM3RjExRjk2QUE1OTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U3LmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlNy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhF
QzdGMjFGOTZBQTVBMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTguY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTguY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U4LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0YzMUY5NkFBNUIwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMS1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEtbW0ubW0iOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzdGNDFGOTZBQTVEMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTExLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UxMS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTExLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0Y1MUY5NkFBNUUwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTEwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMTAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJNTM4RUM3RjYxRjk2QUE1RjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTIuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UxMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzdG
NzFGOTZBQTYwMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTE2LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNi5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE2LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0Y4MUY5NkFBNjkwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMi1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMi1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTItbW0ubW0iOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzdGOTFGOTZBQTZFMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTE5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UxOS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0ZBMUY5NkFBNzAwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJNTM4RUM3RkIxRjk2QUE3MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxOC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTguY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Ux
OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzdGQzFG
OTZBQTczMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTE0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNC5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE0LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDN0ZEMUY5NkFBNzQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTEzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM3RkUxRjk2QUE3NjAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2U5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQk1MzhFQzdGRjFGOTZBQTc3MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTE1LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNS5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTE1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODAw
MUY5NkFBNzgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjAuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIwLmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjAuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4MDExRjk2QUE3QTAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxNy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMTcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgyNjFGOTkzRjA1MDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTgzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2U4My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTgzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCTUzOEVDODI3MUY5OTNGMDYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTAuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUwLmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlNTAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4
RUM4MjgxRjk5M0YwNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMDEuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTEwMS5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEwMS5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgyOTFGOTkz
RjA3MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTExMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTExLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTExLmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODJBMUY5OTNGMDcwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMjMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTIzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4MkIxRjk5M0YwODAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UzMi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMzIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UzMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQk1MzhFQzgyQzFGOTkzRjA5MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTUzLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1My5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTUzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVD
ODJEMUY5OTNGMDkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTkuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTk5LmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlOTkuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4MkUxRjk5M0YwQTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlODguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U4OC5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgyRjFGOTkzRjBBMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTU4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2U1OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTU4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCTUzOEVDODMwMUY5OTNGMEIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTY1
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlNjUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
NTM4RUM4MzExRjk5M0YwQjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4OS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlODkuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U4OS5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgzMjFGOTkz
RjBDMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTM3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM3LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODMzMUY5OTNGMEMwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlOTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTk3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlOTcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4MzQxRjk5M0YwRDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxMDMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTEwMy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTEwMy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQk1MzhFQzgzNTFGOTkzRjBEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTIxLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMS5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTIxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVD
ODM2MUY5OTNGMEUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjkuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTY5LmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNjkuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4MzcxRjk5M0YwRTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3OS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNzkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U3OS5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgzODFGOTkzRjBGMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTEwOC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMTA4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTA4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCTUzOEVDODM5MUY5OTNGMEYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTE0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UxMTQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UxMTQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJNTM4RUM4M0ExRjk5M0YxMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjUuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UyNS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzgz
QjFGOTkzRjEwMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0Mi5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQyLmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODNDMUY5OTNGMTEwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNDUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTQ1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDUuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4M0QxRjk5M0YxMTAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U3My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlNzMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U3My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQk1MzhFQzgzRTFGOTkzRjEyMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTc2LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U3Ni5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTc2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUz
OEVDODNGMUY5OTNGMTIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI0LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjQuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NDAxRjk5M0Yx
MzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlODAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U4MC5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg0MTFGOTkzRjEzMDA0RDIyQTggLyog
VW5pZmllZFNvdXJjZTk0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2U5NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTk0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCTUzOEVDODQyMUY5OTNGMTQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTY0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlNjQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJNTM4RUM4NDMxRjk5M0YxNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0OC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDguY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0
OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg0NDFG
OTkzRjE1MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTg0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U4NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTg0LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODQ1MUY5OTNGMTUwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlOTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTk1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlOTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NDYxRjk5M0YxNjAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UxMDUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTEwNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTEwNS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQk1MzhFQzg0NzFGOTkzRjE2MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTUxLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1MS5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTUxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUz
OEVDODQ4MUY5OTNGMTcwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE1LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMTUuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMTUu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NDkxRjk5
M0YxNzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MC5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg0QTFGOTkzRjE4MDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTIyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UyMi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTUzOEVDODRCMUY5OTNGMTgwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMjguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTI4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMjguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJNTM4RUM4NEMxRjk5M0YxOTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjYuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UyNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg0
RDFGOTkzRjE5MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTcxLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U3MS5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTcxLmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODRFMUY5OTNGMUEwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNDEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTQxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDEuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NEYxRjk5M0YxQTAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U2Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlNjYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U2Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQk1MzhFQzg1MDFGOTkzRjFCMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTY3LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U2Ny5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTY3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUz
OEVDODUxMUY5OTNGMUMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjguY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTY4LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNjguY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NTIxRjk5M0Yx
QzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0My5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg1MzFGOTkzRjFEMDA0RDIyQTggLyog
VW5pZmllZFNvdXJjZTg3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2U4Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTg3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCTUzOEVDODU0MUY5OTNGMUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTA0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UxMDQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UxMDQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJNTM4RUM4NTUxRjk5M0YxRTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyOS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjkuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UyOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg1
NjFGOTkzRjFFMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTg1LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U4NS5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTg1LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODU3MUY5OTNGMUYwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMzQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTM0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzQuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NTgxRjk5M0YxRjAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UxMDIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTEwMi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTEwMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQk1MzhFQzg1OTFGOTkzRjIwMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTkx
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U5
MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTkxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTUzOEVDODVBMUY5OTNGMjAwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTYyLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNjIu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NUIxRjk5
M0YyMTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMS5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg1QzFGOTkzRjIxMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTExMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMTEwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTEwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODVEMUY5OTNGMjIwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlNzguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTc4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlNzguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJNTM4RUM4NUUxRjk5M0YyMjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3NS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNzUuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2U3NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhF
Qzg1RjFGOTkzRjIzMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTI3LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNy5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI3LmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODYwMUY5OTNGMjMw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzYuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NjExRjk5M0YyNDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U2My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlNjMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U2My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQk1MzhFQzg2MjFGOTkzRjI0MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTc0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U3
NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTc0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTUzOEVDODYzMUY5OTNGMjUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzAuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTcwLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNzAu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NjQxRjk5
M0YyNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNzcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U3Ny5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg2NTFGOTkzRjI2MDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTgxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2U4MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTgxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTUzOEVDODY2MUY5OTNGMjcwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTE2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UxMTYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UxMTYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJNTM4RUM4NjcxRjk5M0YyNzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5My5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlOTMuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2U5My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhF
Qzg2ODFGOTkzRjI4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQ3LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0Ny5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ3LmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODY5MUY5OTNGMjgw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTU0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTQuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NkExRjk5M0YyOTAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U0NC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlNDQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQk1MzhFQzg2QjFGOTkzRjI5MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTU5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1
OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTU5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTUzOEVDODZDMUY5OTNGMkEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTU1LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTUu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NkQxRjk5
M0YyQTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlODYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U4Ni5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg2RTFGOTkzRjJCMDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTkwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2U5MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTkwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTUzOEVDODZGMUY5OTNGMkIwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlOTIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTkyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlOTIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJNTM4RUM4NzAxRjk5M0YyQzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5Ni5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlOTYuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2U5Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg3
MTFGOTkzRjJDMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEwMC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTAwLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTAwLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODcyMUY5OTNGMkQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMDkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMDkuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4NzMxRjk5M0YyRDAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMDYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTEwNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEwNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg3NDFGOTkzRjJFMDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTk4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U5OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTk4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTUzOEVDODc1MUY5OTNGMkUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA3LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMDcuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UxMDcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4
RUM4NzYxRjk5M0YyRjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzAuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMC5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg3NzFGOTkzRjMw
MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQ2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ2LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODc4MUY5OTNGMzAwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlNTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTU3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJNTM4RUM4NzkxRjk5M0YzMTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2
MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
NjAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2U2MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQk1MzhFQzg3QTFGOTkzRjMxMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTM1LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNS5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM1
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODdCMUY5
OTNGMzIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzguY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzguY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4N0MxRjk5M0YzMjAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UzOS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMzkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg3RDFGOTkzRjMzMDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTQ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U0OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTQ5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTUzOEVDODdFMUY5OTNGMzMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjEuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTYxLmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlNjEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4
N0YxRjk5M0YzNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzMuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMy5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzg4MDFGOTkzRjM0MDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTUyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1Mi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUyLmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODgxMUY5OTNGMzUwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNzIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTcyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlNzIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJNTM4RUM4ODIxRjk5M0YzNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4Mi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlODIu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2U4Mi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1
MzhFQzg4MzFGOTkzRjM3MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTExMi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTEyLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTEy
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDODg0MUY5
OTNGMzgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTEzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMTMuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMTMuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM4ODUxRjk5M0YzQTAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U1Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlNTYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzkwMjFGOTlCNjRBMDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTEyNS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlMTI1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlMTI1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCTUzOEVDOTA0MUY5OUI2NEEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTMw
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2Ux
MzAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UxMzAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJNTM4RUM5MDUxRjk5QjY0QjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMTkuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTExOS5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTExOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzkw
NjFGOTlCNjREMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyMy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTIzLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTIzLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDOTA3MUY5OUI2NEUw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMjcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMjcuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM5MDgxRjk5QjY0RjAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTExNy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTExNy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzkwOTFGOTlCNjRGMDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTEyMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMTIwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMTIwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCTUzOEVDOTBBMUY5OUI2NTAwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI2LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMjYu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UxMjYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
NTM4RUM5MEIxRjk5QjY1MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjEuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTEyMS5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEy
MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk1MzhFQzkwQzFG
OTlCNjUyMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyOC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTI4LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTI4LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzOEVDOTBEMUY5OUI2NTMwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTI0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMjQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMjQuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4RUM5MEUxRjk5QjY1NDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UxMTguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTExOC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTExOC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQk1MzhFQzkwRjFGOTlCNjU1MDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTEyMi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMTIyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMTIyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTUzOEVDOTEwMUY5OUI2NTYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI5LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMjkuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UxMjkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNTM4
RjEwQTMxRjkwMEJEQzAwNTEwMkNFIC8qIFNvZnRMaW5rTGlieHNsdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb2Z0TGlua0xpYnhzbHQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MzhGMTBBNDFGOTAwQkREMDA1MTAyQ0UgLyogU29mdExpbmtM
aWJ4c2x0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvZnRMaW5rTGlieHNs
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1M0I4OTVBRDE5REM3QzM3MDA5Q0FB
OTMgLyogTWljcm90YXNrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNaWNy
b3Rhc2tzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTUzQzgyOThCMTNEOEQ5Mjcw
MERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJGbGV4aWJsZUJveC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1M0UyOUU1QzE2N0E4QTE5MDA1ODZEM0QgLyog
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcDsgcGF0aCA9IERlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTUzRTI5RTVEMTY3QThBMTkwMDU4NkQzRCAvKiBJ
bnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQk1M0VEM0ZEQzE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNl
dHRpbmdzR2VuZXJhdGVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTUzRUQzRkREMTY3QTg4RTcwMDY3NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5l
cmF0ZWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbnRlcm5hbFNldHRp
bmdzR2VuZXJhdGVkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1MDY0MEFEMjQw
NzU2REEwMEFBRTA0NSAvKiBQbGF0Zm9ybUltYWdlQnVmZmVyQmFja2VuZC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQbGF0Zm9ybUltYWdlQnVmZmVyQmFja2VuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1NTBBMEJDNzA4NUY2MDM5MDA3MzUzRDYgLyogUXVhbGlmaWVkTmFtZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRo
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBRdWFs
aWZpZWROYW1lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2Vz
VGFicyA9IDA7IH07CisJCTU1MEEwQkM4MDg1RjYwMzkwMDczNTNENiAvKiBRdWFsaWZpZWROYW1l
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVu
dFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFF1
YWxpZmllZE5hbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2Vz
VGFicyA9IDA7IH07CisJCTU1MEY2NjQ1MjJDQTg5QkQwMDBBMzQxNyAvKiBTVkdTaGFyZWRQcmlt
aXRpdmVQcm9wZXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdTaGFyZWRQcmltaXRpdmVQcm9wZXJ0
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NTEzN0IyQzIwMzc5RTU1MDAwMTAw
NEIgLyogU1ZHTWFya2VyVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHTWFya2VyVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU0Njc1Nzcx
RkQxRkMxQTAwM0IxMEIwIC8qIEltYWdlU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElt
YWdlU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU0Njc1NzgxRkQx
RkMxQTAwM0IxMEIwIC8qIEltYWdlU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlU291cmNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1NTBDQjQxMUU5NTVFM0MwMDExMUFB
MCAvKiBJbWFnZVR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdl
VHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU1MTMwMDAxRTdDQ0NDQTAw
QTY5RTM4IC8qIERlY29kaW5nT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEZWNvZGluZ09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU1
MzU5MjAyMjQ0MUExNjAwOEY1RUM5IC8qIFNWR0FuaW1hdGVkRGVjb3JhdGVkUHJvcGVydHkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0ZWREZWNvcmF0ZWRQcm9wZXJ0eS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1NTUzNTkyMTIyNDQxQjk3MDA4RjVFQzkgLyogU1ZHRGVjb3Jh
dGVkRW51bWVyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRGVjb3JhdGVkRW51bWVyYXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU1MzU5MjIyMjQ0MUJFOTAwOEY1RUM5
IC8qIFNWR0RlY29yYXRlZFByaW1pdGl2ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdEZWNvcmF0ZWRQ
cmltaXRpdmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTU1MzU5MjMyMjQ0MUMx
ODAwOEY1RUM5IC8qIFNWR0RlY29yYXRlZFByb3BlcnR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0Rl
Y29yYXRlZFByb3BlcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1NUI4N0VB
MUNBQUYwQUIwMDM0OTQyNSAvKiBJbWFnZURlY29kZXJDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBJbWFnZURlY29kZXJDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU1NUI4N0VCMUNBQUYwQUIwMDM0OTQyNSAvKiBJbWFnZURlY29kZXJDRy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZURlY29kZXJDRy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NTZDN0M0NzIyMTIzOTQyMDA5QjA2Q0EgLyogUmVu
ZGVyaW5nVXBkYXRlU2NoZWR1bGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlbmRlcmluZ1VwZGF0ZVNjaGVkdWxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1NTZDN0M0OTIyMTIzOTQzMDA5QjA2Q0EgLyogUmVuZGVyaW5nVXBkYXRlU2NoZWR1bGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlcmluZ1VwZGF0ZVNj
aGVkdWxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1NzZBNTYyMUQ4OEE3
MDgwMENDQzA0QyAvKiBJbWFnZUZyYW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEltYWdlRnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NTc2QTU2MzFEODhBNzA4MDBDQ0MwNEMgLyogSW1hZ2VGcmFtZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbWFnZUZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTU1ODQ3NjU4MjQ1M0FCQzIwMDlGNTUwQyAvKiBSZWR1Y2VkUmVzb2x1dGlvblNlY29uZHMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVkdWNlZFJlc29sdXRpb25TZWNvbmRzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU1OTdGQ0NCMjA3NkMwNjgwMEQzNUJCMCAvKiBHbHlwaERpc3Bs
YXlMaXN0Q2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2x5cGhEaXNw
bGF5TGlzdENhY2hlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1QTMzNkY2MUQ4
MjA5RjQwMDIyQzRDNyAvKiBOYXRpdmVJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBOYXRpdmVJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NUEz
MzZGODFEODIxRTNDMDAyMkM0QzcgLyogSW1hZ2VCYWNraW5nU3RvcmUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VCYWNraW5nU3RvcmUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTVBRjE0RTMxRUFBQzU5QjAwMjZFRUFBIC8qIFVUSVJlZ2lzdHJ5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVUSVJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTVBRjE0RTQxRUFBQzU5QjAwMjZFRUFBIC8qIFVUSVJlZ2lzdHJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFVUSVJlZ2lzdHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU1QkJENDI2MjREQjUzNDMwMEJCNkUwQyAvKiBJbWFnZVV0aWxpdGllc0NHLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEltYWdlVXRpbGl0aWVzQ0cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1NUJCRDQyODI0REI1M0EyMDBCQjZFMEMgLyogSW1hZ2VVdGlsaXRpZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSW1hZ2VVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTVCRTAyNTcyMjNCMjlDMDAwMzJGMDhBIC8qIFNWR1Byb3BlcnR5UmVnaXN0cnkuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHUHJvcGVydHlSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1NUJFMDI1OTIyM0IyOUMxMDAzMkYwOEEgLyogU1ZHQW5pbWF0aW9uQWRkaXRpdmVW
YWx1ZUZ1bmN0aW9uSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdBbmltYXRpb25BZGRpdGl2ZVZh
bHVlRnVuY3Rpb25JbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1QkUwMjVB
MjIzQjI5QzIwMDMyRjA4QSAvKiBTVkdQb2ludGVyTWVtYmVyQWNjZXNzb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHUG9pbnRlck1lbWJlckFjY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU1QkUwMjVCMjIzQjI5QzIwMDMyRjA4QSAvKiBTVkdBbmltYXRpb25GdW5jdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdBbmltYXRpb25GdW5jdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NUJFMDI1QzIyM0IyOUMzMDAzMkYwOEEgLyogU1ZHUHJvcGVydHlPd25l
clJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1Byb3BlcnR5T3duZXJSZWdpc3RyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NUJFMDI1RDIyM0IyOUM0MDAzMkYwOEEgLyog
U1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlZFBy
b3BlcnR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVCRTAyNUUyMjNCMjlD
NDAwMzJGMDhBIC8qIFNWR0FuaW1hdGVkUHJvcGVydHlQYWlyQWNjZXNzb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHQW5pbWF0ZWRQcm9wZXJ0eVBhaXJBY2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NUJFMDI1RjIyM0IyOUM1MDAzMkYwOEEgLyogU1ZHQW5pbWF0aW9uQWRk
aXRpdmVGdW5jdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdBbmltYXRpb25BZGRpdGl2ZUZ1bmN0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1QzBBMjk1MjNGRTJDRTAwMEYy
Q0I5MyAvKiBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERpc3BsYXlMaXN0RHJhd2luZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NUQ0MDhGNzFBN0M2MzE4MDBDNzg0NTAgLyogU1ZHSW1hZ2VDbGllbnRzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ltYWdlQ2xpZW50cy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1NURDQzUxQzIyNDA2MDVFMDBDMjZFMzIgLyogU1ZHQW5pbWF0
aW9uRGlzY3JldGVGdW5jdGlvbkltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0aW9uRGlz
Y3JldGVGdW5jdGlvbkltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVEQ0M1
MUQyMjQwNjE1NTAwQzI2RTMyIC8qIFNWR0FuaW1hdGlvbkRpc2NyZXRlRnVuY3Rpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHQW5pbWF0aW9uRGlzY3JldGVGdW5jdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NURDQzUyMzIyNDA3M0ZFMDBDMjZFMzIgLyogU1ZHTGlzdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTVkdMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1
RENDNTI1MjI0MDc0OUUwMEMyNkUzMiAvKiBTVkdQcmltaXRpdmVMaXN0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNWR1ByaW1pdGl2ZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVE
Q0M1MjYyMjQwNzRGQTAwQzI2RTMyIC8qIFNWR1Byb3BlcnR5QWNjZXNzb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHUHJvcGVydHlBY2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1NURDQzUyNzIyNDA3NTBCMDBDMjZFMzIgLyogU1ZHUHJvcGVydHlBY2Nlc3NvckltcGwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHUHJvcGVydHlBY2Nlc3NvckltcGwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTVFQzk1OTcyMDY5QzkyRDAwN0REMEE5IC8qIFBhaW50RnJlcXVlbmN5
VHJhY2tlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYWludEZyZXF1ZW5jeVRyYWNrZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVFRTUzNTQyMjNCMjlFOTAwRkJBOTQ0IC8qIFNWR01l
bWJlckFjY2Vzc29yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR01lbWJl
ckFjY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1RUU1MzU2MjIzQjI5
RjcwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5QW5pbWF0b3JJbXBsLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FuaW1hdGVkUHJvcGVydHlBbmltYXRvckltcGwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVFRTUzNTcyMjNCMjlGODAwRkJBOTQ0
IC8qIFNWR0FuaW1hdGVkUHJpbWl0aXZlUHJvcGVydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHQW5pbWF0ZWRQcmltaXRpdmVQcm9wZXJ0eS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NUVFNTM1ODIyM0IyOUY5MDBGQkE5NDQgLyogU1ZHQW5pbWF0ZWRQ
cm9wZXJ0eUFjY2Vzc29ySW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
VkdBbmltYXRlZFByb3BlcnR5QWNjZXNzb3JJbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU1RUU1MzU5MjIzQjI5RkEwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5QWNj
ZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0ZWRQcm9w
ZXJ0eUFjY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1RUU1MzVBMjIz
QjI5RkIwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5QW5pbWF0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0ZWRQcm9wZXJ0eUFuaW1hdG9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1RUU1MzVCMjIzQjJBMEMwMEZCQTk0NCAvKiBT
VkdBbmltYXRlZFByb3BlcnR5UGFpckFuaW1hdG9ySW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTVkdBbmltYXRlZFByb3BlcnR5UGFpckFuaW1hdG9ySW1wbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NUVFNTM1QzIyM0IyQTBEMDBGQkE5NDQgLyogU1ZH
QW5pbWF0ZWRQcm9wZXJ0eUltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHQW5pbWF0ZWRQcm9wZXJ0eUltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTVFRTUzNUQyMjNCMkEwRDAwRkJBOTQ0IC8qIFNWR0FuaW1hdGVkUHJvcGVydHlQYWlyQWNjZXNz
b3JJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FuaW1hdGVkUHJv
cGVydHlQYWlyQWNjZXNzb3JJbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1
RUU1MzVFMjIzQjJBMEUwMEZCQTk0NCAvKiBTVkdBbmltYXRpb25BZGRpdGl2ZVZhbHVlRnVuY3Rp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0aW9uQWRkaXRp
dmVWYWx1ZUZ1bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1RUU1MzVG
MjIzQjJBMEYwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5UGFpckFuaW1hdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FuaW1hdGVkUHJvcGVydHlQYWlyQW5p
bWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVFRTUzNjAyMjNCMkEyMTAw
RkJBOTQ0IC8qIFNWR1Byb3BlcnR5T3duZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHUHJvcGVydHlPd25lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NUVFNTM2MTIyM0IyQTIyMDBGQkE5NDQgLyogU1ZHQXR0cmlidXRlQW5pbWF0b3IuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQXR0cmlidXRlQW5pbWF0b3IuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NUVFNTM2MjIyM0IyQTIzMDBGQkE5NDQg
LyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdBbmltYXRlZFByb3BlcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU1
RUU1MzYzMjIzQjJBMjQwMEZCQTk0NCAvKiBTVkdQcm9wZXJ0eS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdQcm9wZXJ0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NUVFNTM2NDIyM0IyQTI0MDBGQkE5NDQgLyogU1ZHQXR0cmlidXRlQW5pbWF0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQXR0cmlidXRlQW5pbWF0b3IuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTVGQTdGRkEyMTEwRUNENzAwNUFFRkU3IC8q
IFNWR1pvb21BbmRQYW5UeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1pvb21BbmRQYW5UeXBlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MDQ0MDU3MUU1Mzg1MTYwMDM1NjYwMSAv
KiBDcnlwdG9BbGdvcml0aG1BRVNfQ0ZCTWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUFFU19DRkJNYWMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NzA0NDA1OTFFNTM5MzYyMDAzNTY2MDEgLyogSlNBZXNDYmNDZmJQ
YXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBZXNDYmNDZmJQYXJh
bXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcwNDQwNUIxRTUzOTM3OTAwMzU2
NjAxIC8qIEpTQWVzQ2JjQ2ZiUGFyYW1zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTQWVzQ2JjQ2ZiUGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTcwNkE2OTQxRERFNUJGODAwQTAzQjE0IC8qIFJzYU9hZXBQYXJhbXMuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFJzYU9hZXBQYXJhbXMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzA2QTY5
NTFEREU1Qzk1MDBBMDNCMTQgLyogQ3J5cHRvQWxnb3JpdGhtUnNhT2FlcFBhcmFtcy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1Sc2FPYWVwUGFyYW1z
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MDZBNjk3MURERTVFNDYwMEEwM0Ix
NCAvKiBKU1JzYU9hZXBQYXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSc2FPYWVwUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MDZBNjk5
MURERTVFODUwMEEwM0IxNCAvKiBKU1JzYU9hZXBQYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNSc2FPYWVwUGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTcxMjUyNjgxRTUyNEVCMTAwOEZGMzY5IC8qIENyeXB0b0FsZ29yaXRo
bUFFU19DRkIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvQWxnb3Jp
dGhtQUVTX0NGQi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzEyNTI2QTFFNTI1
MjdDMDA4RkYzNjkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NGQi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1BRVNfQ0ZCLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcxNTJCNTUyMUNCMkUzQTAwMEMzN0NBIC8qIEFwZHVS
ZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBBcGR1UmVz
cG9uc2UuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJhdXRobi9hcGR1L0FwZHVSZXNwb25zZS5jcHA7
IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJNTcxNTJCNTYyMUNCMkUzQTAwMEMzN0NB
IC8qIEFwZHVSZXNwb25zZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBBcGR1
UmVzcG9uc2UuaDsgcGF0aCA9IE1vZHVsZXMvd2ViYXV0aG4vYXBkdS9BcGR1UmVzcG9uc2UuaDsg
c291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk1NzE1MkI1NzIxQ0IyRTNBMDAwQzM3Q0Eg
LyogQXBkdUNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
QXBkdUNvbW1hbmQuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJhdXRobi9hcGR1L0FwZHVDb21tYW5k
LmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk1NzE1MkI1ODIxQ0IyRTNCMDAw
QzM3Q0EgLyogQXBkdUNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
QXBkdUNvbW1hbmQuaDsgcGF0aCA9IE1vZHVsZXMvd2ViYXV0aG4vYXBkdS9BcGR1Q29tbWFuZC5o
OyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCTU3MTUyQjZBMjFDRDk5NUMwMDBDMzdD
QSAvKiBVMmZDb21tYW5kQ29uc3RydWN0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gVTJmQ29tbWFuZENvbnN0cnVjdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTcxNTJCNkMyMUNEOTk1QzAwMEMzN0NBIC8qIFUyZkNvbW1hbmRDb25zdHJ1
Y3Rvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVMmZDb21tYW5kQ29uc3Ry
dWN0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcxNTJCN0EyMUREOEJBMTAw
MEMzN0NBIC8qIFUyZlJlc3BvbnNlQ29udmVydGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFUyZlJlc3Bv
bnNlQ29udmVydGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MTUyQjdCMjFE
RDhCQTEwMDBDMzdDQSAvKiBVMmZSZXNwb25zZUNvbnZlcnRlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBVMmZSZXNwb25zZUNvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTU3MTUyQjdFMjFEREE1ODEwMDBDMzdDQSAvKiBXZWJBdXRoZW50aWNhdGlvblV0aWxzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYkF1dGhlbnRpY2F0aW9uVXRpbHMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTcxNTJCN0YyMUREQTU4MTAwMEMzN0NBIC8qIFdlYkF1dGhlbnRpY2F0
aW9uVXRpbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQXV0aGVudGljYXRpb25VdGlscy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MTU2MTA4MjM0QzFCMzEwMDhGQzdB
QiAvKiBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcxNTYxMEQyMzRDNzQ4MTAwOEZDN0FCIC8q
IE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1NzE1NjExMDIzNEM3RkJDMDA4RkM3QUIgLyogSlNNb2NrV2ViQXV0aGVudGljYXRpb25Db25m
aWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTW9ja1dlYkF1
dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1NzE1NjExMTIzNEM3RkJDMDA4RkM3QUIgLyogSlNNb2NrV2ViQXV0aGVudGljYXRpb25Db25m
aWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTU3MUYyMTg4MURBNTdDNTQwMDVDOUVGRCAvKiBKU1N1YnRsZUNyeXB0by5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1N1YnRsZUNyeXB0by5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1NzFGMjE4QTFEQTU3QzdBMDA1QzlFRkQgLyogSlNTdWJ0
bGVDcnlwdG8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTdWJ0
bGVDcnlwdG8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzIwOTNEMTFERENF
QTRCMDAzMTBBQjAgLyogQWVzQ2JjQ2ZiUGFyYW1zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBZXNDYmNDZmJQYXJhbXMu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzIwOTNEMjFERENFQjlBMDAzMTBB
QjAgLyogQ3J5cHRvQWxnb3JpdGhtQWVzQ2JjQ2ZiUGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUFlc0NiY0NmYlBhcmFtcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1NzIxQTk4MzFFQ0U0RkI5MDA4MTI5NUEgLyogQ3J5cHRv
QWxnb3JpdGhtUlNBX1BTU01hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0
aG1SU0FfUFNTTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcyMUE5ODYx
RUNFNTNCMTAwODEyOTVBIC8qIENyeXB0b0RpZ2VzdEFsZ29yaXRobS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDcnlwdG9EaWdlc3RBbGdvcml0aG0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTcyMUE5ODgxRUNFNTcwNDAwODEyOTVBIC8qIENyeXB0b0FsZ29yaXRobVJzYVBzc1BhcmFtcy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1Sc2FQc3NQYXJhbXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcyMUE5OEExRUNFNTcwNDAwODEyOTVBIC8qIFJzYVBzc1Bh
cmFtcy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUnNhUHNzUGFyYW1zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTcyQTdGMjAxQzZFNTcxOTAwOUM2MTQ5IC8qIFNpbXVsYXRlZENsaWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbXVsYXRlZENsaWNrLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU3MkE3RjIyMUM2RTVBNjYwMDlDNjE0OSAvKiBTaW11bGF0ZWRD
bGljay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaW11bGF0ZWRD
bGljay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MkI0MDFEMjE3NTdBNjQw
MDBBRDQzRSAvKiBEZXZpY2VSZXF1ZXN0Q29udmVydGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmlj
ZVJlcXVlc3RDb252ZXJ0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcyQjQw
MUUyMTc1N0E2NDAwMEFENDNFIC8qIERldmljZVJlcXVlc3RDb252ZXJ0ZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRGV2aWNlUmVxdWVzdENvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU3MkI0MDIzMjE3NjhEODUwMDBBRDQzRSAvKiBVc2VyVmVyaWZpY2F0aW9u
UmVxdWlyZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNlclZlcmlmaWNhdGlvblJlcXVpcmVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MkI0MDI1MjE3NjhEODUwMDBBRDQz
RSAvKiBVc2VyVmVyaWZpY2F0aW9uUmVxdWlyZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFVzZXJWZXJpZmljYXRp
b25SZXF1aXJlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MkI0MDJB
MjE3NjkwMUYwMDBBRDQzRSAvKiBKU1VzZXJWZXJpZmljYXRpb25SZXF1aXJlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1VzZXJWZXJpZmljYXRpb25SZXF1aXJlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzJCNDAyQjIxNzY5MDFGMDAwQUQ0
M0UgLyogSlNVc2VyVmVyaWZpY2F0aW9uUmVxdWlyZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNVc2VyVmVyaWZpY2F0aW9uUmVxdWlyZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzJCNDAzNzIxNzcyNTZDMDAwQUQ0M0UgLyog
RGV2aWNlUmVzcG9uc2VDb252ZXJ0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRGV2aWNlUmVzcG9uc2VDb252ZXJ0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTcyQjQwMzgyMTc3MjU2QzAwMEFENDNFIC8qIERldmljZVJlc3BvbnNlQ29udmVydGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmljZVJlc3BvbnNlQ29u
dmVydGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTcyQjQwM0IyMTc3RkI2
MDAwMEFENDNFIC8qIEF1dGhlbnRpY2F0b3JHZXRJbmZvUmVzcG9uc2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXV0aGVudGljYXRvckdldEluZm9SZXNwb25zZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MkI0MDNDMjE3N0ZCNjEwMDBBRDQz
RSAvKiBBdXRoZW50aWNhdG9yR2V0SW5mb1Jlc3BvbnNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEF1dGhlbnRpY2F0b3JHZXRJbmZvUmVzcG9uc2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTcyQjQwM0QyMTc4MDE2RjAwMEFENDNFIC8qIEF1dGhlbnRpY2F0
b3JTdXBwb3J0ZWRPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEF1dGhlbnRpY2F0b3JTdXBwb3J0ZWRPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTcyQjQwM0UyMTc4MDE3MDAwMEFENDNFIC8qIEF1dGhlbnRpY2F0b3JTdXBw
b3J0ZWRPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dGhlbnRp
Y2F0b3JTdXBwb3J0ZWRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3
MzAzQkI0MjAwNkM2RUQwMDM1NTk2NSAvKiBDQk9SVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ0JPUlZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3MzAzQkI1MjAwNkM2RUQwMDM1NTk2NSAvKiBDQk9SV3JpdGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENCT1JXcml0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTczMDNCQjYyMDA2QzZFRDAwMzU1OTY1IC8qIENCT1JCaW5hcnkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0JPUkJpbmFyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1NzMwM0JCNzIwMDZDNkVEMDAzNTU5NjUgLyogQ0JPUlZhbHVlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENCT1JWYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzAzQkI4MjAwNkM2RUQwMDM1NTk2NSAvKiBDQk9SV3Jp
dGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENCT1JXcml0ZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0JCRTIwMDZFMDA0MDAzNTU5
NjUgLyogQ0JPUlJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDQk9SUmVhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDNCQkYy
MDA2RTAwQzAwMzU1OTY1IC8qIENCT1JSZWFkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ0JPUlJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMw
M0JDRjIwMDg3QTgzMDAzNTU5NjUgLyogQXV0aGVudGljYXRvclJlc3BvbnNlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEF1dGhlbnRpY2F0b3JSZXNwb25zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NzMwM0JEMTIwMDg3QTgzMDAzNTU5NjUgLyogQXV0aGVudGljYXRvclJlc3BvbnNlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBdXRoZW50aWNhdG9yUmVzcG9uc2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1NzMwM0JERDIwMDk1QjI2MDAzNTU5NjUgLyogSlNBdXRoZW50aWNhdG9yUmVzcG9u
c2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBdXRoZW50aWNhdG9yUmVz
cG9uc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDNCREUyMDA5NUIyNzAw
MzU1OTY1IC8qIEpTQXV0aGVudGljYXRvclJlc3BvbnNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXV0aGVudGljYXRvclJlc3BvbnNlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDNCRTYyMDA5NzQ3QTAwMzU1OTY1IC8qIFB1YmxpY0tl
eUNyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHVibGljS2V5Q3Jl
ZGVudGlhbENyZWF0aW9uT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NzMwM0JFODIwMDk3NDdBMDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0
aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzAzQkVBMjAwOTdGNDAwMDM1NTk2NSAvKiBQ
dWJsaWNLZXlDcmVkZW50aWFsVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQdWJsaWNLZXlDcmVkZW50
aWFsVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0JFQzIwMDk4MEJG
MDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTczMDNCRUUyMDA5ODBCRjAwMzU1OTY1IC8qIFB1YmxpY0tleUNyZWRlbnRpYWxE
ZXNjcmlwdG9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzAzQkYwMjAwOTg0NjEwMDM1NTk2NSAvKiBQ
dWJsaWNLZXlDcmVkZW50aWFsVHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUHVibGljS2V5Q3JlZGVudGlhbFR5cGUu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0JGMTIwMDk5MDQ1MDAzNTU5
NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1B1YmxpY0tleUNyZWRlbnRpYWxEZXNjcmlwdG9yLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDNCRjIyMDA5OTA0NTAwMzU1OTY1
IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0JGOTIwMDk5MTM0MDAzNTU5NjUgLyogSlNQdWJs
aWNLZXlDcmVkZW50aWFsVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1B1YmxpY0tleUNyZWRlbnRpYWxUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3MzAzQkZBMjAwOTkxMzUwMDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRpYWxUeXBlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUHVibGljS2V5Q3JlZGVu
dGlhbFR5cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0MwNjIwMDk5
OEY4MDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFB1YmxpY0tleUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1NzMwM0MwODIwMDk5OEY4MDAzNTU5NjUgLyogUHVibGljS2V5
Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQdWJsaWNLZXlDcmVkZW50aWFsUmVx
dWVzdE9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0MwQjIw
MDk5Qzc0MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQdWJsaWNLZXlDcmVkZW50
aWFsUmVxdWVzdE9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMw
M0MwQzIwMDk5Qzc1MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVzdE9wdGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQdWJsaWNLZXlDcmVkZW50
aWFsUmVxdWVzdE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDND
MTMyMDA5QTI1NzAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9u
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1B1YmxpY0tleUNyZWRlbnRp
YWxDcmVhdGlvbk9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDND
MTQyMDA5QTI1NzAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9u
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1B1YmxpY0tleUNy
ZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1NzMwM0MxQjIwMDlBOTg2MDAzNTU5NjUgLyogQXV0aGVudGljYXRvckF0dGVzdGF0aW9uUmVz
cG9uc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0aGVudGljYXRvckF0dGVzdGF0aW9uUmVzcG9uc2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczMDNDMUQyMDA5QTk4NjAwMzU1OTY1
IC8qIEF1dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJlc3BvbnNlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdXRoZW50aWNh
dG9yQXR0ZXN0YXRpb25SZXNwb25zZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3MzAzQzIwMjAwOUFFRjUwMDM1NTk2NSAvKiBKU0F1dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJl
c3BvbnNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXV0aGVu
dGljYXRvckF0dGVzdGF0aW9uUmVzcG9uc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NzMwM0MyMTIwMDlBRUY2MDAzNTU5NjUgLyogSlNBdXRoZW50aWNhdG9yQXR0ZXN0YXRp
b25SZXNwb25zZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1dGhlbnRp
Y2F0b3JBdHRlc3RhdGlvblJlc3BvbnNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3MzAzQzI3MjAwOUIyRkMwMDM1NTk2NSAvKiBBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9u
c2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzAzQzI5MjAwOUIyRkMwMDM1NTk2NSAvKiBB
dXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1dGhlbnRpY2F0b3JBc3Nl
cnRpb25SZXNwb25zZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzAzQzJE
MjAwOUI3RDkwMDM1NTk2NSAvKiBKU0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1dGhlbnRpY2F0b3JBc3NlcnRpb25S
ZXNwb25zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0MyRTIwMDlCN0RB
MDAzNTU5NjUgLyogSlNBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVz
cG9uc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzMwM0M0MzIwMTA1QjNE
MDAzNTU5NjUgLyogQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1
dGhlbnRpY2F0b3JDb29yZGluYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NzMwM0M0NDIwMTA1QjNEMDAzNTU5NjUgLyogQXV0aGVudGljYXRvckNvb3JkaW5hdG9yLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEF1dGhlbnRpY2F0b3JDb29yZGluYXRvci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3MzQ4OTM4MURBQzZCNkQwMERDMDY2NyAvKiBDcnlwdG9B
bGdvcml0aG1QYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENy
eXB0b0FsZ29yaXRobVBhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTczOUUxMkUxREFDN0Y3ODAwRTE0MzgzIC8qIEpTQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NyeXB0b0FsZ29yaXRobVBhcmFt
ZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTczOUUxMzAxREFDN0ZEMTAw
RTE0MzgzIC8qIEpTQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NyeXB0b0FsZ29yaXRobVBhcmFtZXRlcnMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzNGNTMzNTIxNjgwRDE0MDA0NTU4N0EgLyog
Rmlkb1BhcnNpbmdVdGlscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWRv
UGFyc2luZ1V0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3M0Y1MzM2MjE2
ODBEMTUwMDQ1NTg3QSAvKiBGaWRvUGFyc2luZ1V0aWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEZpZG9QYXJzaW5nVXRpbHMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NzRBQzc1MzFEQUMzNjdEMDBFOTc0NEMgLyogQ3J5cHRvQWxnb3JpdGht
UGFyYW1ldGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtUGFy
YW1ldGVycy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NEY1NURDMjA0RjM3
MzIwMDI5NDhDNiAvKiBXZWJBdXRoZW50aWNhdGlvbkNvbnN0YW50cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBdXRoZW50aWNhdGlvbkNvbnN0YW50cy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1NzRGNTVFMjIwNEYzQ0JGMDAyOTQ4QzYgLyogTG9jYWxB
dXRoZW50aWNhdGlvbi5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IExvY2FsQXV0aGVudGlj
YXRpb24uZnJhbWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Mb2NhbEF1
dGhlbnRpY2F0aW9uLmZyYW1ld29yazsgc291cmNlVHJlZSA9IFNES1JPT1Q7IH07CisJCTU3NTBB
OTcyMUU2OEQwMDAwMDcwNUM0QSAvKiBDcnlwdG9LZXlFQy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9LZXlFQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTU3NTBBOTczMUU2OEQwMDAwMDcwNUM0QSAvKiBDcnlwdG9LZXlFQy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9LZXlFQy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1NzUwQTk3QTFFNjkxNjE2MDA3MDVDNEEgLyogQ3J5cHRvS2V5RUNN
YWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvS2V5RUNN
YWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzUwQTk3QzFFNkExMkI0MDA3
MDVDNEEgLyogRWNLZXlQYXJhbXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEVjS2V5UGFyYW1zLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc1MEE5N0QxRTZBMTNFRjAwNzA1QzRBIC8qIENyeXB0b0Fs
Z29yaXRobUVjS2V5UGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENy
eXB0b0FsZ29yaXRobUVjS2V5UGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3NTBBOTdGMUU2QTE1MDgwMDcwNUM0QSAvKiBKU0VjS2V5UGFyYW1zLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRWNLZXlQYXJhbXMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1NzUwQTk4MDFFNkExNTA4MDA3MDVDNEEgLyogSlNFY0tleVBh
cmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0VjS2V5UGFyYW1zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NTBBOTg0MUU2QTIxNjgwMDcwNUM0QSAv
KiBDcnlwdG9BbGdvcml0aG1FQ0RILmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IENyeXB0b0FsZ29yaXRobUVDREguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NzUwQTk4NTFFNkEyMTY4MDA3MDVDNEEgLyogQ3J5cHRvQWxnb3JpdGhtRUNESC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1FQ0RILmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NTQ3MTk5MUVDRTVEMkEwMERENjNCMiAvKiBK
U1JzYVBzc1BhcmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JzYVBz
c1BhcmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzU0NzE5QTFFQ0U1RDJB
MDBERDYzQjIgLyogSlNSc2FQc3NQYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNSc2FQc3NQYXJhbXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1NzU4NTk1QzIzOUYxMTMwMDBDNzQ1NzIgLyogSlNBdXRoZW50aWNhdGlvbkV4dGVuc2lv
bnNDbGllbnRPdXRwdXRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXV0aGVudGljYXRpb25F
eHRlbnNpb25zQ2xpZW50T3V0cHV0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3NTg1OTVFMjM5RjExNzMwMEM3NDU3MiAvKiBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0Ns
aWVudE91dHB1dHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnND
bGllbnRPdXRwdXRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NTg1OTY1MjM5
RjE0Q0MwMEM3NDU3MiAvKiBBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRPdXRwdXRzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEF1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc1ODU5NjcyMzlGMTRDRDAwQzc0NTcyIC8q
IEF1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1dGhlbnRp
Y2F0aW9uRXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1NzU4NTk2OTIzOUYxRUM3MDBDNzQ1NzIgLyogQXV0aGVudGljYXRvclJlc3BvbnNl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1dGhlbnRpY2F0b3JSZXNwb25zZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NTg1OTZCMjM5RjI4NEIwMEM3NDU3MiAvKiBBdXRo
ZW50aWNhdG9yQXR0ZXN0YXRpb25SZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdXRo
ZW50aWNhdG9yQXR0ZXN0YXRpb25SZXNwb25zZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU3NTg1OTZFMjM5RjM5NzkwMEM3NDU3MiAvKiBBdXRoZW50aWNhdG9yQXNzZXJ0aW9u
UmVzcG9uc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXV0aGVudGljYXRvckFzc2VydGlvblJl
c3BvbnNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc1ODU5NzgyM0ExRkNF
NjAwQzc0NTcyIC8qIFBpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBQaW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzU4NTk3OTIzQTFGQ0Yy
MDBDNzQ1NzIgLyogUGluLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBpbi5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzYwODI0RjIwMTE4RDhEMDAxMTY2Nzgg
LyogSlNCYXNpY0NyZWRlbnRpYWxDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNCYXNp
Y0NyZWRlbnRpYWxDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzYw
ODI1NjIwMTFCRTAyMDAxMTY2NzggLyogSlNBdXRoZW50aWNhdG9yUmVzcG9uc2VDdXN0b20uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdXRoZW50aWNhdG9yUmVzcG9uc2VDdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzYwODI3MDIwMjE1MTNGMDAxMTY2NzggLyog
QXV0aGVudGljYXRvckNvb3JkaW5hdG9yQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dGhlbnRp
Y2F0b3JDb29yZGluYXRvckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
NzY4MTQyODFFNkY5OEFEMDBFNzc3NTQgLyogRWNkaEtleURlcml2ZVBhcmFtcy5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
RWNkaEtleURlcml2ZVBhcmFtcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3
NjgxNDI5MUU2Rjk5QzEwMEU3Nzc1NCAvKiBDcnlwdG9BbGdvcml0aG1FY2RoS2V5RGVyaXZlUGFy
YW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUVj
ZGhLZXlEZXJpdmVQYXJhbXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc2ODE0
MzQxRTZGRTNFODAwRTc3NzU0IC8qIENyeXB0b0FsZ29yaXRobUVDREhNYWMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtRUNESE1hYy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NjgxNDNEMUU3MDlDMzYwMEU3Nzc1NCAv
KiBKU0VjZGhLZXlEZXJpdmVQYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNFY2RoS2V5RGVyaXZlUGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNTc2ODE0M0UxRTcwOUMzNjAwRTc3NzU0IC8qIEpTRWNkaEtleURlcml2ZVBhcmFt
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0VjZGhLZXlEZXJpdmVQYXJh
bXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc2ODE0NDIxRTcwQ0IxMDAwRTc3
NzU0IC8qIEpTQWVzS2V5UGFyYW1zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQWVzS2V5UGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTc2ODE0NDMxRTcwQ0IxMDAwRTc3NzU0IC8qIEpTQWVzS2V5UGFyYW1zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWVzS2V5UGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU3NjhFNDMzMURCNzUyNDUwMEQwQTRGNyAvKiBKU1JzYUhhc2hlZEtleUdl
blBhcmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JzYUhhc2hlZEtl
eUdlblBhcmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1NzY4RTQzNTFEQjc1
MjczMDBEMEE0RjcgLyogSlNSc2FIYXNoZWRLZXlHZW5QYXJhbXMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSc2FIYXNoZWRLZXlHZW5QYXJhbXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Nzc0ODMxMDFEQURDNDk5MDA3MTZFRjkgLyogQWVz
S2V5UGFyYW1zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBBZXNLZXlQYXJhbXMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1Nzc0ODMxMTFEQURDNTVEMDA3MTZFRjkgLyogQ3J5cHRvQWxnb3JpdGhtQWVz
S2V5UGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29y
aXRobUFlc0tleVBhcmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Nzc0ODMx
NzFEQjFGRTg5MDA3MTZFRjkgLyogSG1hY0tleVBhcmFtcy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSG1hY0tleVBhcmFt
cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NzQ4MzE4MURCNDQ5MUYwMDcx
NkVGOSAvKiBDcnlwdG9BbGdvcml0aG1IbWFjS2V5UGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUhtYWNLZXlQYXJhbXMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc3NzdFMzYxRTcxMjE3RDAwRUUxQThEIC8qIENyeXB0b0Fs
Z29yaXRobVBCS0RGMi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBD
cnlwdG9BbGdvcml0aG1QQktERjIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
Nzc3N0UzNzFFNzEyMTdEMDBFRTFBOEQgLyogQ3J5cHRvQWxnb3JpdGhtUEJLREYyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVBCS0RGMi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Nzc3N0UzQTFFNzEyNDIyMDBFRTFBOEQgLyogQ3J5
cHRvS2V5UmF3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0
b0tleVJhdy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3Nzc3RTNCMUU3MTI0
MjIwMEVFMUE4RCAvKiBDcnlwdG9LZXlSYXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ3J5cHRvS2V5UmF3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3NzhC
RDgwMURBNDczM0UwMDlFMzAwOSAvKiBTdWJ0bGVDcnlwdG8uaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFN1YnRsZUNyeXB0by5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3
NzhCRDgxMURBNDgwMkMwMDlFMzAwOSAvKiBTdWJ0bGVDcnlwdG8uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU3VidGxlQ3J5cHRvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU3NzhCRDgzMURBNDgxN0IwMDlFMzAwOSAvKiBTdWJ0bGVDcnlwdG8uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3VidGxlQ3J5cHRvLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc4QTRDMDgyMTY3RDI5NTAwRDA4RjM0IC8qIEZpZG9I
aWRNZXNzYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpZG9IaWRNZXNzYWdlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc4QTRDMDkyMTY3RDI5NjAwRDA4RjM0IC8qIEZp
ZG9IaWRQYWNrZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlkb0hpZFBhY2tldC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3OEE0QzBBMjE2N0QyOTYwMEQwOEYzNCAvKiBG
aWRvSGlkUGFja2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpZG9IaWRQYWNrZXQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc4QTRDMEIyMTY3RDI5NjAwRDA4RjM0IC8qIEZpZG9Db25z
dGFudHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlkb0NvbnN0YW50cy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1NzkwOTk2QjFFQ0QyM0RBMDBGQzA3NjggLyogQ3J5cHRvQWxnb3JpdGht
UlNBX1BTUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1SU0FfUFNTLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3OTA5OTZDMUVDRDIzREEwMEZDMDc2OCAvKiBDcnlw
dG9BbGdvcml0aG1SU0FfUFNTLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRo
bVJTQV9QU1MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Nzk1N0NBNjFFOTcx
REUwMDA4MDcyQUIgLyogQ3J5cHRvQWxnb3JpdGhtSEtERi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1IS0RGLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTc5NTdDQTcxRTk3MURFMDAwODA3MkFCIC8qIENyeXB0b0FsZ29y
aXRobUhLREYuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvQWxnb3Jp
dGhtSEtERi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Nzk1N0NBQTFFOTcyNDdC
MDA4MDcyQUIgLyogQ3J5cHRvQWxnb3JpdGhtSEtERk1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1IS0RGTWFjLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTc5NTdDQUYxRTk3MjY0NTAwODA3MkFCIC8qIENyeXB0b0Fs
Z29yaXRobUhrZGZQYXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5
cHRvQWxnb3JpdGhtSGtkZlBhcmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
Nzk1N0NCMDFFOTcyNjQ1MDA4MDcyQUIgLyogSGtkZlBhcmFtcy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSGtkZlBhcmFtcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3
OTU3Q0I0MUU5NzJDNzgwMDgwNzJBQiAvKiBKU0hrZGZQYXJhbXMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIa2RmUGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTc5NTdDQjUxRTk3MkM3ODAwODA3MkFCIC8qIEpTSGtkZlBhcmFtcy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hrZGZQYXJhbXMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdCNUY3RjYxRTVCRTg0MDAwRjM0RjkwIC8qIENyeXB0
b0FsZ29yaXRobUFFU19HQ00uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQ3J5cHRvQWxnb3JpdGhtQUVTX0dDTS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTU3QjVGN0Y3MUU1QkU4NDAwMEYzNEY5MCAvKiBDcnlwdG9BbGdvcml0aG1BRVNfR0NNLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUFFU19HQ00u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdCNUY4MDcxRTVEMTlGMjAwRjM0Rjkw
IC8qIEFlc0djbVBhcmFtcy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQWVzR2NtUGFyYW1z
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdCNUY4MDgxRTVEMUE5ODAwRjM0
RjkwIC8qIENyeXB0b0FsZ29yaXRobUFlc0djbVBhcmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1BZXNHY21QYXJhbXMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTdCNUY4MEExRTVEMjJEQTAwRjM0RjkwIC8qIEpTQWVzR2NtUGFy
YW1zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWVzR2NtUGFy
YW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdCNUY4MEIxRTVEMjJEQTAw
RjM0RjkwIC8qIEpTQWVzR2NtUGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTQWVzR2NtUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3QjVG
ODBEMUU1RDJGMkQwMEYzNEY5MCAvKiBDcnlwdG9BbGdvcml0aG1BRVNfR0NNTWFjLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUFFU19HQ01N
YWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0JBRjI4NzIxNjdEMkY3MDA4
RTk1NEUgLyogRmlkb0NvbnN0YW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGaWRvQ29uc3RhbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTdCQUYyOEEyMTY3RDMwMzAwOEU5NTRFIC8qIEZpZG9IaWRNZXNzYWdlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpZG9IaWRNZXNzYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU3QzdBNjg5MUU1Njk0NkQwMEM2N0Q3MSAvKiBCYXNpY0NyZWRlbnRpYWwu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEJhc2ljQ3JlZGVudGlhbC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3QzdBNjhCMUU1Njk2NzUwMEM2N0Q3MSAvKiBCYXNpY0Ny
ZWRlbnRpYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFzaWNDcmVkZW50
aWFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3QzdBNjkzMUU1NzhBQ0EwMEM2
N0Q3MSAvKiBCYXNpY0NyZWRlbnRpYWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQmFzaWNDcmVkZW50aWFsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTdDN0E2OUMxRTU3OTEwRDAwQzY3RDcxIC8qIEpTQmFzaWNDcmVkZW50aWFsLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQmFzaWNDcmVkZW50aWFsLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdDN0E2OUQxRTU3OTEwRDAwQzY3RDcxIC8q
IEpTQmFzaWNDcmVkZW50aWFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
QmFzaWNDcmVkZW50aWFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RDAwMThC
MUREM0RCQTQwMEVEMTlEOSAvKiBDcnlwdG9LZXlVc2FnZS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3J5cHRvS2V5VXNh
Z2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0QwMDE4QzFERDU0MTMyMDBF
RDE5RDkgLyogSlNDcnlwdG9LZXlVc2FnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0NyeXB0b0tleVVzYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3
RDAwMThFMURENTQxNTMwMEVEMTlEOSAvKiBKU0NyeXB0b0tleVVzYWdlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3J5cHRvS2V5VXNhZ2UuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1N0QxMzUyMTIyOTQ5NzM0MDA4Mjc0MDEgLyogQXR0ZXN0
YXRpb25Db252ZXlhbmNlUHJlZmVyZW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdHRlc3RhdGlvbkNv
bnZleWFuY2VQcmVmZXJlbmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RDEz
NTIzMjI5NDk3MzQwMDgyNzQwMSAvKiBBdHRlc3RhdGlvbkNvbnZleWFuY2VQcmVmZXJlbmNlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBdHRlc3RhdGlvbkNvbnZleWFuY2VQcmVmZXJlbmNlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTdEMTM1MjYyMjk0QTdBNzAwODI3NDAxIC8qIEpTQXR0ZXN0YXRp
b25Db252ZXlhbmNlUHJlZmVyZW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0F0dGVzdGF0aW9uQ29udmV5YW5jZVByZWZlcmVuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTdEMTM1MjcyMjk0QTdBODAwODI3NDAxIC8qIEpTQXR0ZXN0YXRpb25Db252
ZXlhbmNlUHJlZmVyZW5jZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0F0dGVzdGF0aW9uQ29udmV5YW5jZVByZWZlcmVuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1N0Q4NDYyNDFGRTg5NUY1MDBDQTM2ODIgLyogTmF2aWdhdG9yQ3JlZGVu
dGlhbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2aWdhdG9y
Q3JlZGVudGlhbHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0Q4NDYyNTFG
RTg5NUY2MDBDQTM2ODIgLyogTmF2aWdhdG9yK0NyZWRlbnRpYWxzLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSAiTmF2aWdhdG9yK0NyZWRlbnRpYWxzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU3RDg0NjI2MUZFODk1RjgwMENBMzY4MiAvKiBOYXZpZ2F0b3JDcmVkZW50
aWFscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JDcmVkZW50
aWFscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0Q4NDYyOTFGRTk5RjYzMDBD
QTM2ODIgLyogQ3JlZGVudGlhbHNDb250YWluZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IENyZWRlbnRpYWxzQ29udGFpbmVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NTdEODQ2MkIxRkVBRjY4RjAwQ0EzNjgyIC8qIFB1YmxpY0tleUNyZWRlbnRpYWwuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUHVibGljS2V5Q3JlZGVudGlhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1N0Q4NDYyQzFGRUFGNjhGMDBDQTM2ODIgLyogUHVibGljS2V5Q3JlZGVudGlhbC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBQdWJsaWNLZXlDcmVkZW50aWFsLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNTdEODQ2MkQxRkVBRjY4RjAwQ0EzNjgyIC8qIFB1YmxpY0tleUNy
ZWRlbnRpYWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFB1YmxpY0tleUNyZWRlbnRpYWwuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1N0Q4NDYzMDFGRUFGQzJGMDBDQTM2ODIgLyogSlNQdWJsaWNLZXlD
cmVkZW50aWFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUHVibGljS2V5
Q3JlZGVudGlhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0Q4NDYzMTFGRUFG
QzJGMDBDQTM2ODIgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUHVibGljS2V5Q3JlZGVudGlhbC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3REE0N0E1MjI0MDFFMEYwMDJBNDYxMiAvKiBBdXRoZW50
aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRJbnB1dHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0aGVudGlj
YXRpb25FeHRlbnNpb25zQ2xpZW50SW5wdXRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTU3REE0N0E3MjI0MDFFMEYwMDJBNDYxMiAvKiBBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnND
bGllbnRJbnB1dHMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0
cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3REE0N0FDMjI0MDMyREMwMDJB
NDYxMiAvKiBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0cy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0cy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3REE0N0FEMjI0MDMyREQwMDJBNDYxMiAv
KiBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0cy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0cy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1N0RDRUQ3MjIxNDMwNUYwMDAxNkI4NDcgLyogQXV0aGVudGljYXRv
clJlc3BvbnNlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRoZW50aWNhdG9yUmVzcG9uc2VEYXRh
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RENFRDhDMjE0ODdFREIwMDE2Qjg0
NyAvKiBBdXRoZW50aWNhdG9yVHJhbnNwb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dGhlbnRpY2F0
b3JUcmFuc3BvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdEQ0VEOEUyMTQ4
N0VEQjAwMTZCODQ3IC8qIEF1dGhlbnRpY2F0b3JUcmFuc3BvcnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1dGhlbnRp
Y2F0b3JUcmFuc3BvcnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0RDRUQ5
MTIxNDg4MEM2MDAxNkI4NDcgLyogSlNBdXRoZW50aWNhdG9yVHJhbnNwb3J0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXV0aGVudGljYXRvclRyYW5zcG9ydC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RENFRDkyMjE0ODgwQzYwMDE2Qjg0
NyAvKiBKU0F1dGhlbnRpY2F0b3JUcmFuc3BvcnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNBdXRoZW50aWNhdG9yVHJhbnNwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTU3RTFFNUEwMUU4QzkxQjUwMEVFMzdDOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNf
Q1RSLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29y
aXRobUFFU19DVFIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0UxRTVBMTFF
OEM5MUI1MDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NUUi5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1BRVNfQ1RSLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU3RTFFNUE2MUU4REJEM0UwMEVFMzdDOSAvKiBDcnlwdG9BbGdv
cml0aG1BZXNDdHJQYXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5
cHRvQWxnb3JpdGhtQWVzQ3RyUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU3RTFFNUE5MUU4RENGNzQwMEVFMzdDOSAvKiBBZXNDdHJQYXJhbXMuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFlc0N0
clBhcmFtcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RTFFNUFBMUU4REQw
OUIwMEVFMzdDOSAvKiBKU0Flc0N0clBhcmFtcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0Flc0N0clBhcmFtcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU3RTFFNUFCMUU4REQwOUIwMEVFMzdDOSAvKiBKU0Flc0N0clBhcmFtcy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Flc0N0clBhcmFtcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1N0UxRTVBRjFFOEREM0ExMDBFRTM3QzkgLyogQ3J5cHRvQWxn
b3JpdGhtQUVTX0NUUk1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDcnlwdG9BbGdvcml0aG1BRVNfQ1RSTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTdFMjMzNTcxREM3RDI0ODAwRjI4RDAxIC8qIEpzb25XZWJLZXkuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEpzb25XZWJLZXkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1N0UyMzM1OTFEQzdEMzcyMDBGMjhEMDEgLyogUnNhT3RoZXJQcmltZXNJbmZvLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSc2FPdGhlclByaW1lc0luZm8uaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1N0UyMzM1QTFEQzdENUU1MDBGMjhEMDEgLyogSlNKc29uV2Vi
S2V5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSnNvbldlYktleS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0UyMzM1QzFEQzdENjA4MDBGMjhEMDEgLyog
SlNSc2FPdGhlclByaW1lc0luZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSc2FPdGhlclByaW1lc0luZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdF
MjMzNUUxREM3RDY3QjAwRjI4RDAxIC8qIEpTSnNvbldlYktleS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0pzb25XZWJLZXkuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1N0UyMzM2MDFEQzdENkFBMDBGMjhEMDEgLyogSlNSc2FPdGhlclByaW1l
c0luZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSc2FPdGhl
clByaW1lc0luZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0UyMzM2MjFE
QzdEQTI0MDBGMjhEMDEgLyogUnNhT3RoZXJQcmltZXNJbmZvLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFJzYU90aGVyUHJpbWVzSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1N0UyMzM2NDFEQzdEQjFGMDBGMjhEMDEgLyogSnNvbldlYktleS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKc29uV2ViS2V5Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTU3RTIzMzY2MURDQUIyMUMwMEYyOEQwMSAvKiBKU0htYWNLZXlQYXJh
bXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIbWFjS2V5UGFyYW1zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RTIzMzY4MURDQUIyNDMwMEYyOEQwMSAv
KiBKU0htYWNLZXlQYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNIbWFjS2V5UGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdF
MjMzNkExRENDMjYyNDAwRjI4RDAxIC8qIENyeXB0b0tleVJTQS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9LZXlSU0EuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1N0UyMzM2QzFEQ0Q0MzcwMDBGMjhEMDEgLyogUnNhSGFzaGVkSW1wb3J0
UGFyYW1zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBSc2FIYXNoZWRJbXBvcnRQYXJhbXMuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1N0UyMzM2RDFEQ0Q0M0ZEMDBGMjhEMDEgLyogQ3J5cHRvQWxnb3Jp
dGhtUnNhSGFzaGVkSW1wb3J0UGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENyeXB0b0FsZ29yaXRobVJzYUhhc2hlZEltcG9ydFBhcmFtcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1N0UyMzM3MDFEQ0Q0NjhGMDBGMjhEMDEgLyogSlNSc2FIYXNoZWRJ
bXBvcnRQYXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSc2FIYXNo
ZWRJbXBvcnRQYXJhbXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFMjMzNzIx
RENENDZCNjAwRjI4RDAxIC8qIEpTUnNhSGFzaGVkSW1wb3J0UGFyYW1zLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUnNhSGFzaGVkSW1wb3J0UGFyYW1zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFMjMzNzQxRENENkQzQjAwRjI4RDAxIC8q
IENyeXB0b0FsZ29yaXRobVJzYUhhc2hlZEtleUdlblBhcmFtcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1Sc2FIYXNoZWRLZXlHZW5QYXJhbXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFNjU3RTgxRTcxNEQxQTAwRjk0MUNBIC8q
IENyeXB0b0FsZ29yaXRobVBCS0RGMk1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1QQktERjJNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1N0U2NTdFQTFFNzE1RjA1MDBGOTQxQ0EgLyogUGJrZGYyUGFyYW1zLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBQYmtkZjJQYXJhbXMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
N0U2NTdFQjFFNzE2MkVBMDBGOTQxQ0EgLyogQ3J5cHRvQWxnb3JpdGhtUGJrZGYyUGFyYW1zLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVBia2RmMlBh
cmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0U2NTdFRDFFNzE2NjU0MDBG
OTQxQ0EgLyogSlNQYmtkZjJQYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNQYmtkZjJQYXJhbXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1N0U2NTdFRTFFNzE2NjU0MDBGOTQxQ0EgLyogSlNQYmtkZjJQYXJhbXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQYmtkZjJQYXJhbXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNTdFNjY0RkIxRTczNzAzMzAwNzY1NTM2IC8qIENvbW1vbkNyeXB0b0RF
UlV0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21tb25Dcnlw
dG9ERVJVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFRUFBNDQx
RTlFRDJERDAwNzAxMTI0IC8qIENyeXB0b0FsZ29yaXRobUVDRFNBLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUVDRFNBLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFRUFBNDUxRTlFRDJERDAwNzAxMTI0IC8qIENyeXB0
b0FsZ29yaXRobUVDRFNBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0
b0FsZ29yaXRobUVDRFNBLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RUVBQTQ4
MUU5RjJEMzIwMDcwMTEyNCAvKiBDcnlwdG9BbGdvcml0aG1FQ0RTQU1hYy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1FQ0RTQU1hYy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RUVBQTREMUU5RkZCRkMwMDcwMTEyNCAv
KiBDcnlwdG9BbGdvcml0aG1FY2RzYVBhcmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDcnlwdG9BbGdvcml0aG1FY2RzYVBhcmFtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1N0VFQUE0RTFFOUZGQkZDMDA3MDExMjQgLyogRWNkc2FQYXJhbXMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEVjZHNhUGFyYW1zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNTdFRUFBNTIxRUEwMDFCMTAwNzAxMTI0IC8qIEpTRWNkc2FQYXJhbXMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFY2RzYVBhcmFtcy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RUVBQTUzMUVBMDAxQjEwMDcwMTEyNCAv
KiBKU0VjZHNhUGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRWNk
c2FQYXJhbXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFRUFBNTcxRUEwQUZC
QjAwNzAxMTI0IC8qIENvbW1vbkNyeXB0b0RFUlV0aWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb21tb25DcnlwdG9ERVJVdGlsaXRpZXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0VGNUU1RjFEMjBDODM5MDAxNzFFNjAgLyogVGV4
dENvZGVjUmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4
dENvZGVjUmVwbGFjZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdFRjVF
NjExRDIwRDI4NzAwMTcxRTYwIC8qIFRleHRDb2RlY1JlcGxhY2VtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDb2RlY1JlcGxhY2VtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdGMUM4RTMyNURDNkVFNzAwRThGNkVBIC8qIFBy
aXZhdGVDbGlja01lYXN1cmVtZW50Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudENvY29hLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1N0Y4MjczOTFEQjcyQzIyMDA5RDJCRjQgLyogUnNhSGFzaGVk
S2V5R2VuUGFyYW1zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSc2FIYXNoZWRLZXlHZW5QYXJhbXMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1N0ZFNjg2RTI2MDUyRTMxMDBCRjQ1RTQgLyogQXV0aGVu
dGljYXRvckF0dGFjaG1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0aGVudGljYXRvckF0dGFjaG1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdGRTY4NzAyNjA1MkUzMTAwQkY0
NUU0IC8qIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdXRoZW50aWNhdG9yQXR0
YWNobWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RkU2ODc1MjYwNTU2
ODUwMEJGNDVFNCAvKiBKU0F1dGhlbnRpY2F0b3JBdHRhY2htZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTQXV0aGVudGljYXRvckF0dGFjaG1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNTdGRTY4NzcyNjA1NTY4RjAwQkY0NUU0IC8qIEpTQXV0aGVudGljYXRvckF0dGFjaG1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdXRoZW50aWNhdG9yQXR0YWNobWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU3RkVERDNEMURCNkQ0N0YwMEVCOTZGNSAvKiBS
c2FLZXlHZW5QYXJhbXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJzYUtleUdlblBhcmFtcy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU3RkVERDNFMURCNkQ1OTIwMEVCOTZGNSAvKiBDcnlwdG9BbGdv
cml0aG1Sc2FLZXlHZW5QYXJhbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q3J5cHRvQWxnb3JpdGhtUnNhS2V5R2VuUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU3RkVERDQwMURCNkQ3M0EwMEVCOTZGNSAvKiBKU1JzYUtleUdlblBhcmFtcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JzYUtleUdlblBhcmFtcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0ZFREQ0MjFEQjZENzYwMDBFQjk2RjUgLyogSlNS
c2FLZXlHZW5QYXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNSc2FLZXlHZW5QYXJhbXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1ODAz
NzE1RjFBNjZGMDBBMDBCQUY1MTkgLyogQ2xpcFJlY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ2xpcFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1ODAzNzE2MDFBNjZGMDBBMDBCQUY1MTkgLyogQ2xpcFJlY3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ2xpcFJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNTgwMzcxNjMxQTY2RjFEMzAwQkFGNTE5IC8qIExheWVyRnJhZ21lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5ZXJGcmFnbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1ODI0QUJBMDFBRTgxMTE2MDA5MDc0QjcgLyogUnVieUVsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUnVieUVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1ODI0QUJBMTFBRTgxMTE2MDA5MDc0Qjcg
LyogUnVieUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUnVieUVs
ZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTgyNEFCQTQxQUU4MTM4NDAw
OTA3NEI3IC8qIFJ1YnlUZXh0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBSdWJ5VGV4dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1ODI0QUJBNTFBRTgxMzg0MDA5MDc0QjcgLyogUnVieVRleHRFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1YnlUZXh0RWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1ODJERTMyMjFDMzBDODU0MDBCRTAyQTggLyogVGV4dERlY29y
YXRpb25QYWludGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRl
eHREZWNvcmF0aW9uUGFpbnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU4
MkRFMzIzMUMzMEM4NTQwMEJFMDJBOCAvKiBUZXh0RGVjb3JhdGlvblBhaW50ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dERlY29yYXRpb25QYWludGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU4NjhDN0M0MjUzOURBMzMwMEJGOURGMyAvKiBKU1Jl
c2l6ZU9ic2VydmVyQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTUmVzaXplT2JzZXJ2ZXJDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1ODY4QzdENTI1NDZFMEIzMDBCRjlERjMgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlckN1
c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ludGVyc2Vj
dGlvbk9ic2VydmVyQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTg4
NEZFNTYyMjgxM0UyRDAwNDBBRkY2IC8qIEpTUmVzaXplT2JzZXJ2ZXJFbnRyeUN1c3RvbS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Jlc2l6ZU9ic2VydmVyRW50
cnlDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1ODk1NTZFQzE4RDRB
NDQwMDA3NjRCMDMgLyogQm9yZGVyRWRnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBCb3JkZXJFZGdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU4QUVFMkYz
MThENEJDQ0YwMDIyRTdGRSAvKiBCb3JkZXJFZGdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEJvcmRlckVkZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1OEIyRjlFQTIyMzJENDNCMDA5MzhENjMgLyogUmVzaXplT2JzZXJ2ZXJFbnRyeS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUmVzaXplT2JzZXJ2ZXJFbnRyeS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU4QjJGOUVDMjIzMkQ0M0IwMDkzOEQ2MyAvKiBSZXNpemVP
YnNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNpemVPYnNlcnZl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OEIyRjlFRDIyMzJENDNDMDA5MzhE
NjMgLyogUmVzaXplT2JzZXJ2ZXJDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
UmVzaXplT2JzZXJ2ZXJDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU4QjJGOUVFMjIzMkQ0M0QwMDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckVudHJ5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc2l6ZU9ic2VydmVyRW50cnkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkY5RUYyMjMyRDQzRDAwOTM4RDYzIC8qIFJlc2l6
ZU9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc2l6
ZU9ic2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkY5RjAyMjMy
RDQzRTAwOTM4RDYzIC8qIFJlc2l6ZU9ic2VydmVyQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVzaXplT2JzZXJ2ZXJDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1OEIyRjlGMTIyMzJENDNFMDA5MzhENjMgLyogUmVzaXplT2JzZXJ2
ZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlc2l6ZU9ic2VydmVyLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkY5RjIyMjMyRDQzRjAwOTM4RDYzIC8qIFJlc2l6
ZU9ic2VydmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
c2l6ZU9ic2VydmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkY5
RjMyMjMyRDQzRjAwOTM4RDYzIC8qIFJlc2l6ZU9ic2VydmF0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlc2l6ZU9ic2VydmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTU4QjJGOUZFMjIzMkQ2MDcwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVy
Q2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZXNpemVPYnNlcnZlckNhbGxiYWNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkY5RkYyMjMyRDYwODAwOTM4
RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXJDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Jlc2l6
ZU9ic2VydmVyQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNThCMkZB
MDAyMjMyRDYwOTAwOTM4RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXJFbnRyeS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1Jlc2l6ZU9ic2VydmVyRW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1OEIyRkEwMTIyMzJENjBBMDA5MzhENjMgLyogSlNSZXNpemVPYnNlcnZlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1Jlc2l6ZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTU4QjJGQTAyMjIzMkQ2MEEwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVyRW50
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZXNpemVPYnNlcnZlckVudHJ5Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU4QjJGQTAzMjIzMkQ2MEIwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9i
c2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUmVzaXplT2JzZXJ2ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OENEMzVDQTE4RUI0QzM5MDBCOUYzQUMgLyogRmxv
YXRTaXplSGFzaC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGbG9hdFNpemVI
YXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU4REVFRDg1MTk4NzNGRjAwMDg4
OEZGMyAvKiBSZW5kZXJTZWxlY3Rpb25JbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFJlbmRlclNlbGVjdGlvbkluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1OTA1QURCRDEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxUcmVlVmlld2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTkwNUFEQkUxMzAyRjNDRTAwRjExNkRGIC8q
IFhNTFRyZWVWaWV3ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MVHJl
ZVZpZXdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OTBFMUI0ODExRTRFRjRC
MDA2OUY3ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERldmljZU9yaWVudGF0aW9uRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1OTMwOUExMDExRjRBRTU4MDAyNTA2MDMgLyogRGV2aWNlT3JpZW50YXRpb25D
bGllbnRNb2NrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERldmlj
ZU9yaWVudGF0aW9uQ2xpZW50TW9jay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTU5MzA5QTEyMTFGNEFFNkEwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25DbGll
bnRNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5NThGMUNCMTM0MzkxN0Mw
MDgwQjMxRiAvKiBYTUxWaWV3ZXIuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBYTUxW
aWV3ZXIuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OTU4RjFDQzEzNDM5MTdD
MDA4MEIzMUYgLyogWE1MVmlld2VyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBwYXRoID0gWE1MVmlld2VyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OTc4
MDg0OUQ0MUU2RjY1RDgxMTk4QkMgLyogTWF0aE1MU2VsZWN0RWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxTZWxlY3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTU5ODM2NURDMTM1NUY1M0MwMDFCMTg1RCAvKiBKU1Bvc2l0aW9u
Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQb3NpdGlvbkNh
bGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5ODM2NURFMTM1NUY1NjIw
MDFCMTg1RCAvKiBKU1Bvc2l0aW9uRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1Bvc2l0aW9uRXJyb3JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1OTgzNjVFMzEzNTVGNjA0MDAxQjE4NUQgLyogSlNQb3NpdGlvbkNhbGxi
YWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUG9zaXRpb25D
YWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5ODM2NUU1MTM1NUY2
MEQwMDFCMTg1RCAvKiBKU1Bvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Bvc2l0aW9uRXJyb3JDYWxsYmFjay5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlk
Z2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnJpZGdlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUExMTE5RDY4RDkwMERFRjFFRiAvKiBEZXZpY2VP
cmllbnRhdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERldmljZU9yaWVudGF0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1OUE4NUVBMzExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkV2ZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QTg1RUFBMTE5RDdCNkUwMERFRjFFRiAv
KiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEZXZp
Y2VPcmllbnRhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTlB
ODYwMDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RldmljZU9yaWVudGF0aW9uRXZl
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUE4NjAwNzExOURBRkExMDBE
RUYxRUYgLyogSlNEZXZpY2VPcmllbnRhdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRGV2aWNlT3JpZW50YXRpb25FdmVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1OUE4RjFEMzExQTY5NTA4MDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERl
dmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTU5QThGMUQ1MTFBNjk1MTMwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25D
b250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QThGMUQ3MTFBNjk1
MjAwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEZXZpY2VPcmllbnRhdGlvbkNsaWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1OUI1OTc3MjExMDg2NTZCMDA3MTU5RTggLyogQnJpZGdlSlNDLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJyaWRnZUpTQy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QjU5Nzc0MTEwODY1NzkwMDcxNTlFOCAvKiBC
cmlkZ2VKU0MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnJpZGdlSlNDLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QzI3RjA0MTM4RDI4QzEwMDc5QjdFMiAv
KiBOZXR3b3JrUmVzb3VyY2VzRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VzRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTU5QzI3RjA2MTM4RDI4Q0YwMDc5QjdFMiAvKiBOZXR3b3JrUmVzb3VyY2VzRGF0YS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrUmVzb3VyY2VzRGF0YS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1OUMyODA0MzEzOERDMjQxMDA3OUI3RTIg
LyogWE1MRXJyb3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhN
TEVycm9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5QzI4MDQ0MTM4REMy
NDEwMDc5QjdFMiAvKiBYTUxFcnJvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gWE1MRXJyb3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTU5RDFDMTAzMTFF
QjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRhdGlvbkRhdGEuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25EYXRhLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUE1NzRGMjIxMzFEQjkzOTAwNDcxQjg4IC8qIFJlbmRl
clF1b3RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclF1
b3RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUE1NzRGMjMxMzFEQjkzOTAw
NDcxQjg4IC8qIFJlbmRlclF1b3RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlbmRlclF1b3RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVBNTc0RjI2MTMx
REI5NkQwMDQ3MUI4OCAvKiBRdW90ZXNEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFF1b3Rlc0RhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk1QTU3NEYyNzEzMURCOTZEMDA0NzFCODggLyogUXVvdGVzRGF0YS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBRdW90ZXNEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVBOTE0NjlFOEU5Rjg0ODVDMzdBMjg3NiAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdHcmFwaGljc0Vs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QjFFMEU0MzI1RDE2MjlC
MDAyNzIyODEgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNUIzMDY5NUExOEIzRDM0NTAwOTlENUU4IC8qIFdlYkdMRHJhd0J1ZmZlcnMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xEcmF3QnVmZmVy
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVCMzA2OTVCMThCM0QzNDUwMDk5
RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFdlYkdMRHJhd0J1ZmZlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUIz
MDY5NUMxOEIzRDM0NTAwOTlENUU4IC8qIFdlYkdMRHJhd0J1ZmZlcnMuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFdlYkdMRHJhd0J1ZmZlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1QjQ2NjU1RDI1RDE0QzA5MDAwQ0ZFMTQgLyogU2Nyb2xsU25hcEFuaW1hdG9yU3Rh
dGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsU25hcEFu
aW1hdG9yU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QjQ2NjU1RTI1
RDE0QzA5MDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QjQ2NjU1RjI1RDE0QzA5MDAwQ0ZF
MTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNuYXBBbmlt
YXRvclN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbFNuYXBB
bmltYXRvclN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVCN0FCOUY2MjU2
N0RCN0UwMDY1OTJEMCAvKiBTY3JvbGxTbmFwT2Zmc2V0c0luZm8uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsU25hcE9mZnNldHNJbmZvLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMwMDE1MjEyNTAwMTEwMDAwOTRBQTkzIC8qIFRleHRD
b2RlY1NpbmdsZUJ5dGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
VGV4dENvZGVjU2luZ2xlQnl0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVD
MDAxNTIzMjUwMDExMDEwMDk0QUE5MyAvKiBUZXh0Q29kZWNTaW5nbGVCeXRlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRDb2RlY1NpbmdsZUJ5dGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMxQjFEMUUyNkYxNUIxOTAwODgyREEyIC8qIFNoYXJlZFdv
cmtlckdsb2JhbFNjb3BlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNUMxQjFEMjAyNkYxNUIxQTAwODgyREEyIC8qIFNoYXJlZFdvcmtlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFyZWRXb3JrZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1QzFCMUQyMTI2RjE1QjFBMDA4ODJEQTIgLyogU2hhcmVkV29y
a2VyR2xvYmFsU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMxQjFE
MjIyNkYxNUIxQTAwODgyREEyIC8qIFNoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTVDMUIxRDIzMjZGMTVCMUEwMDg4MkRBMiAvKiBTaGFyZWRXb3Jr
ZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNoYXJlZFdvcmtlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDMUIxRDI0MjZGMTVCMUEwMDg4MkRBMiAvKiBTaGFyZWRX
b3JrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVkV29ya2VyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDMUIxRDI1MjZGMTg4RDgwMDg4MkRBMiAv
KiBXb3JrZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXb3JrZXJPcHRpb25z
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMxQjFEMjYyNkYxOEE0QjAwODgy
REEyIC8qIFdvcmtlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V29ya2VyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzJFQkUwMTI1
NzcxOTg5MDBENTVCMDUgLyogU2VyaWFsaXplZE5GQS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTZXJpYWxpemVkTkZBLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTVDMkVCRTAzMjU3NzFBNEMwMEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcmlhbGl6ZWRORkEuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1QzM5MzA1RDFBQTBGNkE5MDAyOUM4MTYgLyogREZBQnl0ZWNv
ZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gREZBQnl0ZWNvZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMzOTMwNUUxQUEwRjZBOTAwMjlDODE2IC8qIERG
QUJ5dGVjb2RlQ29tcGlsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gREZBQnl0ZWNvZGVDb21waWxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTVDMzkzMDVGMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZUNvbXBpbGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERGQUJ5dGVjb2RlQ29tcGlsZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMzOTMwNjAxQUEwRjZBOTAwMjlDODE2IC8qIERGQUJ5
dGVjb2RlSW50ZXJwcmV0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gREZBQnl0ZWNvZGVJbnRlcnByZXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTVDMzkzMDYxMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZUludGVycHJldGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERGQUJ5dGVjb2RlSW50ZXJwcmV0ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUMzQzg1NkMxRDVBN0FEMzAwODhCOUVD
IC8qIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBOZXR3b3JrU3RvcmFnZVNlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1QzQzMDRBRDE5MUFDOTA4MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxP
RC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFWFRTaGFkZXJUZXh0
dXJlTE9ELmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM0MzA0QUUxOTFBQzkw
ODAwMEUyQkMwIC8qIEVYVFNoYWRlclRleHR1cmVMT0QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRVhUU2hhZGVyVGV4dHVyZUxPRC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1QzQzMDRBRjE5MUFDOTA4MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRVhUU2hhZGVyVGV4dHVyZUxPRC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNDMwNEIzMTkxQUVGNDYwMDBFMkJDMCAvKiBKU0VY
VFNoYWRlclRleHR1cmVMT0QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNFWFRTaGFkZXJUZXh0dXJlTE9ELmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVyZUxPRC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0VYVFNoYWRlclRleHR1cmVMT0QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM0QTBGRDMyNUMzNDJDNzAwRDlFRTk3IC8q
IFJhbmdlUmVzcG9uc2VHZW5lcmF0b3IubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBSYW5nZVJlc3BvbnNlR2VuZXJhdG9yLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk1QzRBMEZENTI1QzM0MkM4MDBEOUVFOTcgLyogUmFuZ2VSZXNwb25zZUdlbmVy
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYW5nZVJlc3BvbnNlR2Vu
ZXJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNEEwRkQ2MjVDMzQyREIw
MEQ5RUU5NyAvKiBDZXJ0aWZpY2F0ZUluZm9Db2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IENlcnRpZmljYXRlSW5mb0NvY29hLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk1QzRBMEZEODI1QzM0NDZDMDBEOUVFOTcgLyogUGFyc2VkUmVxdWVz
dFJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhcnNlZFJlcXVlc3RS
YW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzRBMEZEOTI1QzM0NDZEMDBE
OUVFOTcgLyogUGFyc2VkUmVxdWVzdFJhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFBhcnNlZFJlcXVlc3RSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTVDNTM4MUFGMUQ4NzkzRTAwMEUyRUJFNiAvKiBVUkxTZWFyY2hQYXJhbXMuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFVSTFNlYXJjaFBhcmFtcy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTVDNTM4MUIwMUQ4N0Q0NTcwMEUyRUJFNiAvKiBVUkxTZWFyY2hQ
YXJhbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVVJMU2VhcmNo
UGFyYW1zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM1MzgxQjExRDg3RDQ1
NzAwRTJFQkU2IC8qIFVSTFNlYXJjaFBhcmFtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBVUkxTZWFyY2hQYXJhbXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUM1MzgxQjMxRDg3RTA4MTAwRTJFQkU2IC8qIEpTVVJMU2VhcmNoUGFyYW1zLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVVJMU2VhcmNoUGFyYW1zLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM1MzgxQjQxRDg3RTA4MTAwRTJFQkU2IC8qIEpT
VVJMU2VhcmNoUGFyYW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVVJM
U2VhcmNoUGFyYW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNTNEQ0M2MjQ0
NjQ0OTcwMEE5MzEyNCAvKiBBcHBsZVBheVNldHVwLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBBcHBsZVBheVNldHVwLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM1M0RD
QzkyNDQ2NDQ5ODAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0dXBGZWF0dXJlLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQXBwbGVQYXlTZXR1cEZlYXR1cmUubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNTNEQ0NBMjQ0NjQ0OTgwMEE5MzEyNCAvKiBB
cHBsZVBheVNldHVwRmVhdHVyZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlT
ZXR1cEZlYXR1cmUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzUzRENDQjI0
NDY0NDk4MDBBOTMxMjQgLyogQXBwbGVQYXlTZXR1cFdlYkNvcmUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlTZXR1cFdlYkNvcmUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNUM1M0RDQ0MyNDQ2NDQ5OTAwQTkzMTI0IC8qIFBheW1lbnRJbnN0YWxs
bWVudENvbmZpZ3VyYXRpb24ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBQYXltZW50SW5zdGFsbG1lbnRDb25maWd1cmF0aW9uLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk1QzUzRENDRTI0NDY0NDk5MDBBOTMxMjQgLyogUGF5bWVudEluc3RhbGxt
ZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGF5bWVudEluc3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNUM1M0RDQ0YyNDQ2NDQ5OTAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0
dXBGZWF0dXJlV2ViQ29yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBs
ZVBheVNldHVwRmVhdHVyZVdlYkNvcmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUM1M0RDRDAyNDQ2NDQ5QTAwQTkzMTI0IC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRDb25maWd1cmF0
aW9uV2ViQ29yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUlu
c3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNUM1M0RDRDIyNDQ2NDQ5QTAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0dXAuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXBwbGVQYXlTZXR1cC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNTNEQ0Q0MjQ0NjQ0OUIwMEE5MzEyNCAvKiBBcHBs
ZVBheVNldHVwRmVhdHVyZVR5cGVXZWJDb3JlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFwcGxlUGF5U2V0dXBGZWF0dXJlVHlwZVdlYkNvcmUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNUM1M0RDRDUyNDQ2NDQ5QjAwQTkzMTI0IC8qIEFwcGxlUGF5SW5zdGFs
bG1lbnRDb25maWd1cmF0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheUlu
c3RhbGxtZW50Q29uZmlndXJhdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTVDNTNEQ0Q2MjQ0NjQ0OUMwMEE5MzEyNCAvKiBBcHBsZVBheVNldHVwRmVhdHVyZVR5cGUuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5U2V0dXBGZWF0dXJlVHlwZS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNUQyMzgzMjI3QTA2M0EwMDBCOUJEQSAvKiBD
dXN0b21IZWFkZXJGaWVsZHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3Vz
dG9tSGVhZGVyRmllbGRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNUQyMzg2
MjI3QTA3N0MwMDBCOUJEQSAvKiBDdXN0b21IZWFkZXJGaWVsZHMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3VzdG9tSGVhZGVyRmllbGRzLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUM2NjhFNjQxRTdDNkMzNTAwRDMyQjNCIC8qIFNvY2tldFN0
cmVhbUhhbmRsZUltcGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U29ja2V0U3RyZWFtSGFuZGxlSW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTVDNjg4QUEwMUQzODA1MDkwMDBCNTRGQSAvKiBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaHJlYWRhYmxlV2ViU29j
a2V0Q2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDNjg4QUEyMUQz
ODEyNkYwMDBCNTRGQSAvKiBTb2NrZXRQcm92aWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTb2NrZXRQcm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTVDNkQwMkZGMjY1QzIxMUEwMDJCNjRGRSAvKiBSZXNvdXJjZUxvYWRUaW1pbmcu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkVGltaW5nLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDN0M4OEQ3MUQwRjFGMkIwMDlEMkY2RCAv
KiBTb2NrZXRQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2Nr
ZXRQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Qzk3QTMzNjFGNUY3
QTY1MDAxMDUyMDcgLyogUmVjdEVkZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFJlY3RFZGdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1QzlCODYwQjFD
MjFFM0M2MDAxMTBGMzYgLyogTmV0d29ya0xvYWRNZXRyaWNzLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gTmV0d29ya0xvYWRNZXRyaWNzLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1QzlDMkRCMzIyNDFBNjczMDA5OTZCMEIgLyogQ29udGVudFJ1
bGVMaXN0UmVzdWx0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50
UnVsZUxpc3RSZXN1bHRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDOUVGMTZG
MURGRjcxOTkwMEE0NTJFMyAvKiBYUGF0aEdyYW1tYXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhHcmFtbWFyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNUM5RUYxNzAxREZGNzE5OTAwQTQ1MkUzIC8qIFhQYXRoR3JhbW1hci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUGF0aEdyYW1tYXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNUM5RUYyRjIyMUYwNjE3MTAwM0JEQzU2IC8qIFN0b3JhZ2VTZXNz
aW9uUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmFnZVNl
c3Npb25Qcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0ExREVDMjFG
NzFFNjg2MDBFNzFCRDMgLyogSFRUUEhlYWRlckZpZWxkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEhUVFBIZWFkZXJGaWVsZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTVDQTFERUM0MUY3MUU2ODcwMEU3MUJEMyAvKiBIVFRQSGVhZGVyRmllbGQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRUUEhlYWRlckZpZWxkLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDQjM3RkZDMUM2MkQyNzgwMEYyMDE4OCAvKiBT
Y3JvbGxBbmltYXRvck1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU2Nyb2xsQW5pbWF0b3JNb2NrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUNCMzdGRkQxQzYyRDI3ODAwRjIwMTg4IC8qIFNjcm9sbEFuaW1hdG9yTW9jay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxBbmltYXRvck1vY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNCQzhEQUExQUFBMzAyMjAwRTFDODAzIC8qIE1lZGlhQWNj
ZXNzaWJpbGl0eVNvZnRMaW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1lZGlhQWNjZXNzaWJpbGl0eVNvZnRMaW5rLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNUNCQzhEQUIxQUFBMzAyMjAwRTFDODAzIC8qIE1lZGlhQWNjZXNzaWJpbGl0eVNv
ZnRMaW5rLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQWNjZXNzaWJp
bGl0eVNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDQzc5MDBCMjY2
QUZBODgwMDY5MjRGRSAvKiBUaW1pbmdBbGxvd09yaWdpbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBUaW1pbmdBbGxvd09yaWdpbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk1Q0M3OTAwRDI2NkFGQTg5MDA2OTI0RkUgLyogVGltaW5nQWxsb3dPcmlnaW4uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGltaW5nQWxsb3dPcmlnaW4u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0NDMjcwNjIyRDUzQjY4MDA5NjRG
QTAgLyogQXV0b2ZpbGxFbGVtZW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBdXRvZmlsbEVsZW1lbnRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDQ0My
NzA3MjJENTNCNjkwMDk2NEZBMCAvKiBBdXRvZmlsbEVsZW1lbnRzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1dG9maWxsRWxlbWVudHMuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1Q0RDRERCRjIzRDdCN0JFMDBCQTM0QTEgLyogQ29udGVudEZp
bHRlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50Rmls
dGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDREQ4MzM5MUU0MzI0
QkIwMDYyMUU4MyAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2VDb2NvYS5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFJlYWx0aW1lSW5jb21pbmdWaWRlb1Nv
dXJjZUNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0REODMzOTFFNDMy
NEJCMDA2MjFFOTIgLyogUmVhbHRpbWVJbmNvbWluZ1ZpZGVvU291cmNlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlYWx0aW1lSW5jb21pbmdWaWRlb1NvdXJjZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDREQ4MzNBMUU0MzI0QkIwMDYyMUU5
MiAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVhbHRpbWVJbmNvbWluZ1ZpZGVvU291cmNlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTVDREQ4MzNCMUU0MzI0QkIwMDYyMUI4MyAvKiBSZWFsdGltZU91dGdv
aW5nVmlkZW9Tb3VyY2VDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBSZWFsdGltZU91dGdvaW5nVmlkZW9Tb3VyY2VDb2NvYS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTVDREQ4MzNCMUU0MzI0QkIwMDYyMUU5MiAvKiBSZWFsdGltZU91dGdv
aW5nVmlkZW9Tb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNUNERDgzM0MxRTQzMjRCQjAwNjIxQjgzIC8qIFJlYWx0aW1lT3V0Z29pbmdWaWRlb1Nv
dXJjZUNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1lT3V0
Z29pbmdWaWRlb1NvdXJjZUNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVD
REQ4MzNDMUU0MzI0QkIwMDYyMUU5MiAvKiBSZWFsdGltZU91dGdvaW5nVmlkZW9Tb3VyY2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291
cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDREQ4MzNGMUU0MzI1M0QwMDYy
MUU5MiAvKiBMaWJXZWJSVENEYXRhQ2hhbm5lbEhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gTGliV2ViUlRDRGF0YUNoYW5uZWxIYW5kbGVyLmNwcDsgcGF0
aCA9IGxpYndlYnJ0Yy9MaWJXZWJSVENEYXRhQ2hhbm5lbEhhbmRsZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1Q0REODM0MDFFNDMyNTNEMDA2MjFFOTIgLyogTGliV2ViUlRD
RGF0YUNoYW5uZWxIYW5kbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IExp
YldlYlJUQ0RhdGFDaGFubmVsSGFuZGxlci5oOyBwYXRoID0gbGlid2VicnRjL0xpYldlYlJUQ0Rh
dGFDaGFubmVsSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0RGQTZD
NzFBQTRGMkRBMDBFQTg3NDYgLyogQ29udGVudEV4dGVuc2lvbkFjdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudEV4dGVuc2lvbkFjdGlvbnMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNFNUQ5QTAxREI4OTdDMzAwQ0U3QThEIC8qIFRleHRE
ZWNvZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHREZWNv
ZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNFNUQ5QTExREI4OTdDMzAw
Q0U3QThEIC8qIFRleHREZWNvZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFRleHREZWNvZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDRTVEOUEyMURC
ODk3QzMwMENFN0E4RCAvKiBUZXh0RGVjb2Rlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
VGV4dERlY29kZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0U1RDlBMzFE
Qjg5N0MzMDBDRTdBOEQgLyogVGV4dEVuY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVGV4dEVuY29kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1Q0U1RDlBNDFEQjg5N0MzMDBDRTdBOEQgLyogVGV4dEVuY29kZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEVuY29kZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNUNFNUQ5QTUxREI4OTdDMzAwQ0U3QThEIC8qIFRleHRFbmNvZGVyLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBUZXh0RW5jb2Rlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTVDRTVEOUE3MURCODk5RkMwMENFN0E4RCAvKiBKU1RleHREZWNvZGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVGV4dERlY29kZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0U1RDlBODFEQjg5OUZDMDBDRTdBOEQg
LyogSlNUZXh0RGVjb2Rlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Rl
eHREZWNvZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDRTVEOUE5MURCODk5
RkMwMENFN0E4RCAvKiBKU1RleHRFbmNvZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTVGV4dEVuY29kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk1Q0U1RDlBQTFEQjg5OUZDMDBDRTdBOEQgLyogSlNUZXh0RW5jb2Rlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1RleHRFbmNvZGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTVDRkIyMEQ2MjJERTgzMDQwMEVEMkI3NiAvKiBIVE1MRGlhbG9nRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRGlhbG9n
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVDRkIyMEQ4MjJERTgz
MDUwMEVEMkI3NiAvKiBIVE1MRGlhbG9nRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSFRNTERpYWxvZ0VsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1
Q0ZCMjBEOTIyREU4MzA2MDBFRDJCNzYgLyogSFRNTERpYWxvZ0VsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTERpYWxvZ0VsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNUNGQzQzNEUxOTI0MDZBOTAwQTBEM0I1IC8qIFBvaW50ZXJMb2Nr
Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb2lu
dGVyTG9ja0NvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0ZD
NDM0RjE5MjQwNkE5MDBBMEQzQjUgLyogUG9pbnRlckxvY2tDb250cm9sbGVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvaW50ZXJMb2NrQ29udHJvbGxlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1RDIxQTgwMDEzRUNFNURGMDBCQjcwNjQgLyogV2ViVlRU
UGFyc2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlZUVFBh
cnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVEMjFBODAxMTNFQ0U1REYw
MEJCNzA2NCAvKiBXZWJWVFRQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViVlRUUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVENTk3NUIx
MTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0ZW1WZXJzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFN5c3RlbVZlcnNpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNUQ1OTc1QjIxOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24ubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTeXN0ZW1WZXJzaW9uLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1RDkyNUI2NTBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xs
QWxpZ25tZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9s
bEFsaWdubWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVEOTI1QjY2MEY2
NEQ0REQwMEI4NDdGMCAvKiBTY3JvbGxBbGlnbm1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsQWxpZ25tZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTVEQTVFMEZBMTAyQjk1MzgwMDA4OENGOSAvKiBKU1dlYlNvY2tldC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYlNvY2tldC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTVEQTVFMEZCMTAyQjk1MzgwMDA4OENGOSAvKiBKU1dlYlNvY2tl
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYlNvY2tldC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1REIxQkM2ODEwNzE1QTY0MDBFRkFBNDkgLyogVHJh
bnNmb3JtU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYW5zZm9y
bVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1REIxQkM2OTEwNzE1QTY0
MDBFRkFBNDkgLyogVHJhbnNmb3JtU291cmNlTGlieHNsdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zvcm1Tb3VyY2VMaWJ4c2x0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNURGRUJBQjYxODU5MkI2RDAwQzc1QkVCIC8qIFdlYktpdEF2
YWlsYWJpbGl0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJLaXRBdmFp
bGFiaWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUUyQzQzNEQxQkNFRTJF
NTAwMDFFMkJDIC8qIFBlZXJDb25uZWN0aW9uQmFja2VuZC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQZWVyQ29ubmVjdGlvbkJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNUUyQzQzNTYxQkNFRTMwRDAwMDFFMkJDIC8qIFJUQ1J0cFJlY2VpdmVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1J0cFJlY2VpdmVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUUyQzQzNTcxQkNFRTMwRDAwMDFFMkJD
IC8qIFJUQ1J0cFJlY2VpdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJU
Q1J0cFJlY2VpdmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFMkM0MzU4MUJD
RUUzMEQwMDAxRTJCQyAvKiBSVENSdHBSZWNlaXZlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUlRDUnRwUmVjZWl2ZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJD
NDM1OTFCQ0VFMzBEMDAwMUUyQkMgLyogUlRDUnRwU2VuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1J0cFNlbmRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTVFMkM0MzVBMUJDRUUzMEQwMDAxRTJCQyAvKiBSVENSdHBTZW5kZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwU2VuZGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFMkM0MzVCMUJDRUUzMEQwMDAxRTJCQyAvKiBSVENSdHBT
ZW5kZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFNlbmRlci5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFMkM0MzY0MUJDRUUzNzIwMDAxRTJCQyAvKiBSVENU
cmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJUQ1Ry
YWNrRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM2NTFCQ0VF
MzcyMDAwMUUyQkMgLyogUlRDVHJhY2tFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSVENUcmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVF
MkM0MzY2MUJDRUUzNzIwMDAxRTJCQyAvKiBSVENUcmFja0V2ZW50LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBSVENUcmFja0V2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNUUyQzQzNjkxQkNGMDVDODAwMDFFMkJDIC8qIEpTUlRDVHJhY2tFdmVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ1RyYWNrRXZlbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM2QTFCQ0YwNUM4MDAwMUUyQkMgLyogSlNS
VENUcmFja0V2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUlRDVHJh
Y2tFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM2RDFCQ0YwRDY5
MDAwMUUyQkMgLyogSlNSVENSdHBSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1JUQ1J0cFJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNUUyQzQzNkQxQkNGMEQ2OTAwMDFFMkJEIC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXIu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENSdHBUcmFuc2Nl
aXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFMkM0MzZFMUJDRjBENjkw
MDAxRTJCQyAvKiBKU1JUQ1J0cFJlY2VpdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTUlRDUnRwUmVjZWl2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUUyQzQzNkUxQkNGMEQ2OTAwMDFFMkJEIC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSVENSdHBUcmFuc2NlaXZlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM2RjFCQ0YwRDY5MDAwMUUyQkMgLyogSlNSVENS
dHBTZW5kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSVENS
dHBTZW5kZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM2RjFCQ0Yw
RDY5MDAwMUUyQkUgLyogSlNSVENSdHBQYXJhbWV0ZXJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDUnRwUGFyYW1ldGVycy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTVFMkM0MzcwMUJDRjBENjkwMDAxRTJCQyAvKiBKU1JUQ1J0cFNlbmRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1JUQ1J0cFNlbmRlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTJDNDM3MDFCQ0YwRDY5MDAwMUUyQkUgLyog
SlNSVENSdHBQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
UlRDUnRwUGFyYW1ldGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1RTVFMkIx
MDFDRkMzRTRCMDAwQzBEODUgLyogUlRDUnRwVHJhbnNjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUlRDUnRwVHJhbnNjZWl2ZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1RTVFMkIxMTFDRkMzRTRCMDAwQzBEODUgLyogUlRDUnRwVHJh
bnNjZWl2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUlRDUnRwVHJhbnNj
ZWl2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUU1RTJCMTIxQ0ZDM0U0QjAw
MEMwRDg1IC8qIFJUQ1J0cFRyYW5zY2VpdmVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBS
VENSdHBUcmFuc2NlaXZlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFNjY1
MzA5MURBNDM3QkYwMEZERDg0QyAvKiBSVENJY2VUcmFuc3BvcnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUlRDSWNlVHJhbnNwb3J0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTVFQTcyNUNBMUFDQUJDQjUwMEVBRDE3QiAvKiBOYXZpZ2F0b3JNZWRpYURldmlj
ZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2aWdhdG9yTWVk
aWFEZXZpY2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUVBNzI1Q0IxQUNB
QkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JNZWRpYURldmljZXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNUVBNzI1Q0MxQUNBQkNCNTAwRUFEMTdCIC8qIE5hdmlnYXRvcitNZWRp
YURldmljZXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJOYXZpZ2F0b3IrTWVkaWFEZXZp
Y2VzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVFQTcyNUNEMUFDQUJDRDkw
MEVBRDE3QiAvKiBNZWRpYURldmljZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWVkaWFEZXZpY2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NUVBNzI1Q0UxQUNBQkNEOTAwRUFEMTdCIC8qIE1lZGlhRGV2aWNlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYURldmljZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNUVBNzI1Q0YxQUNBQkNEOTAwRUFEMTdCIC8qIE1lZGlhRGV2aWNlcy5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFEZXZpY2VzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNUVCQjg5MkYxQzc3NzdEMDAwQzY1RDQxIC8qIE1lZGlhUGF5bG9hZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBheWxvYWQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUVCQjg5MzAxQzc3NzdFMTAwQzY1RDQxIC8qIEljZUNhbmRp
ZGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJY2VDYW5kaWRhdGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUVCQjg5MzgxQzc3QkRBNDAwQzY1RDQxIC8q
IFBlZXJNZWRpYURlc2NyaXB0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBlZXJNZWRpYURlc2NyaXB0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVG
MkRCQkU3MTc4RTMzMkQwMDE0MTQ4NiAvKiBDZXJ0aWZpY2F0ZUluZm9DRk5ldC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDZXJ0aWZpY2F0ZUluZm9DRk5ldC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVGMkRCQkU4MTc4RTMzNjkwMDE0MTQ4NiAv
KiBDZXJ0aWZpY2F0ZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2Vy
dGlmaWNhdGVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTVGQzdEQzI2Q0ZF
MjU2MzIwMEI4NUFFNSAvKiBKU0V2ZW50VGFyZ2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0V2ZW50VGFyZ2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTVGRTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29y
azsgbmFtZSA9IFNlY3VyaXR5LmZyYW1ld29yazsgcGF0aCA9IFN5c3RlbS9MaWJyYXJ5L0ZyYW1l
d29ya3MvU2VjdXJpdHkuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gU0RLUk9PVDsgfTsKKwkJNjI2
Q0RFMEMxMTQwNDI0QzAwMUU1QTY4IC8qIFNwYXRpYWxOYXZpZ2F0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwYXRpYWxOYXZpZ2F0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjI2Q0RFMEQxMTQwNDI0QzAwMUU1QTY4IC8qIFNwYXRp
YWxOYXZpZ2F0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwYXRpYWxO
YXZpZ2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTYyOEQyMTRCMTIxMzFF
RDEwMDU1RENGQyAvKiBOZXR3b3JraW5nQ29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBOZXR3b3JraW5nQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2MjhEMjE0RDEyMTMxRUY0MDA1NURDRkMgLyogRnJhbWVOZXR3b3JraW5nQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGcmFtZU5ldHdvcmtpbmdDb250ZXh0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTYyQzEyMTdBMTFBQjlFNzYwMDNDNDYy
QyAvKiBTdXNwZW5kYWJsZVRpbWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFN1c3BlbmRhYmxlVGltZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2MkMxMjE3QjExQUI5RTc3MDAzQzQ2MkMgLyogU3VzcGVuZGFibGVUaW1lci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdXNwZW5kYWJsZVRpbWVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTYyQ0QzMjU2MTE1N0U1N0MwMDYzQjBBNyAvKiBDdXN0b21FdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDdXN0b21FdmVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTYyQ0QzMjU3MTE1N0U1N0MwMDYzQjBB
NyAvKiBDdXN0b21FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDdXN0
b21FdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2MkNEMzI1ODExNTdFNTdD
MDA2M0IwQTcgLyogQ3VzdG9tRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEN1c3Rv
bUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjMxNTJEMTcxRjk1MzFF
RTAwN0E1RTRCIC8qIEFwcGxpY2F0aW9uTWFuaWZlc3RMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXBwbGljYXRpb25NYW5pZmVzdExvYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2MzE1MkQxODFGOTUzMUVFMDA3QTVFNEIgLyogQXBwbGljYXRpb25NYW5pZmVzdExvYWRlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsaWNhdGlvbk1hbmlmZXN0TG9hZGVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjMxODlBRTIwRTgzQTMzMzAwMDEyRTQxIC8qIE5v
ZGVSYXJlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb2RlUmFyZURh
dGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjM1M0UxRTQxRjkxNzQzMTAwQTM0
MjA4IC8qIENhY2hlZEFwcGxpY2F0aW9uTWFuaWZlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVk
QXBwbGljYXRpb25NYW5pZmVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2MzUz
RTFFNTFGOTE3NDMxMDBBMzQyMDggLyogQ2FjaGVkQXBwbGljYXRpb25NYW5pZmVzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRBcHBsaWNhdGlvbk1hbmlmZXN0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjM1NEY0QzcxRjdBRkM5NDAwRDg5REYzIC8qIEFwcGxpY2F0
aW9uTWFuaWZlc3RQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25NYW5pZmVzdFBh
cnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2MzU0RjRDODFGN0FGQzk0MDBE
ODlERjMgLyogQXBwbGljYXRpb25NYW5pZmVzdFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBBcHBsaWNhdGlvbk1hbmlmZXN0UGFyc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNjM3QjdBREUwRTg3NjdCODAwRTMyMTk0IC8qIEVsZW1lbnRSYXJlRGF0YS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50UmFyZURhdGEuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjNCRDRBNUQxRjc3OEU5RjAwNDM4NzIyIC8qIEFwcGxpY2F0
aW9uTWFuaWZlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGljYXRpb25NYW5pZmVzdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2M0Q3QjMyQzBFNzhDRDNGMDBGNzYxN0MgLyogTm9k
ZVJlbmRlclN0eWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5vZGVSZW5k
ZXJTdHlsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTBGQkYyNzBEOUFGMDQ2
MDA4RkMyOTIgLyogU1ZHSEtlcm5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNWR0hLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTY1MEZCRjI4MEQ5QUYwNDcwMDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHSEtlcm5FbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1MEZCRjI5MEQ5QUYwNDcwMDhGQzI5MiAvKiBTVkdIS2Vy
bkVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0hLZXJuRWxlbWVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1MTVFQzhGMEQ5NzIzRkYwMDYzRDQ5QSAv
KiBKU1NWR0FsdEdseXBoRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1NWR0FsdEdseXBoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTY1MTVFQzkwMEQ5NzIzRkYwMDYzRDQ5QSAvKiBKU1NWR0FsdEdseXBoRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FsdEdseXBoRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTJGQkJCQjBERTI3Q0I2MDAwMUQzODYg
LyogSlNET01XaW5kb3dDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNET01XaW5kb3dDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjU0OEUy
NDgwOUUxRTA0RDAwQUY4MDIwIC8qIERvY3VtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gRG9jdW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTUwQjY5MzA5
OURGMDI3MDA5MEQ3ODEgLyogQ0RBVEFTZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDREFUQVNlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk2NTUwQjY5NDA5OURGMDI3MDA5MEQ3ODEgLyogQ0RBVEFTZWN0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDREFUQVNlY3Rpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNjU1MEI2OTUwOTlERjAyNzAwOTBENzgxIC8qIENoYXJhY3RlckRh
dGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENoYXJhY3RlckRh
dGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTUwQjY5NjA5OURGMDI3MDA5
MEQ3ODEgLyogQ2hhcmFjdGVyRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ2hhcmFjdGVyRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTUwQjY5
NzA5OURGMDI3MDA5MEQ3ODEgLyogQ29tbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ29tbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTY1NTBCNjk4MDk5REYwMjcwMDkwRDc4MSAvKiBDb21tZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDb21tZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTY1NTBCNjlCMDk5REYwMjcwMDkwRDc4MSAvKiBUZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNjU1MEI2OUMwOTlERjAyNzAwOTBENzgxIC8qIFRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjU2
NTNGMkEwRDk3MjdEMjAwQ0E5NzIzIC8qIFNWR0FsdEdseXBoRWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbHRHbHlwaEVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTY1M0YyQjBEOTcyN0QyMDBDQTk3MjMgLyogU1ZH
QWx0R2x5cGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0Fs
dEdseXBoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTY1M0YyQzBE
OTcyN0QyMDBDQTk3MjMgLyogU1ZHQWx0R2x5cGhFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBTVkdBbHRHbHlwaEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2NTY1ODBFRTA5RDEyQjIwMDAwRTYxRDcgLyogQ1NTUHJvcGVydHlOYW1lcy5ncGVyZiAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gQ1NTUHJvcGVydHlOYW1lcy5ncGVyZjsgcGF0aCA9IERl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvQ1NTUHJvcGVydHlOYW1lcy5ncGVyZjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNjU2NTgwRUYwOUQxMkIyMDAwMEU2MUQ3IC8qIENT
U1Byb3BlcnR5TmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENTU1By
b3BlcnR5TmFtZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvQ1NTUHJvcGVydHlO
YW1lcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk2NTY1ODE0NzA5
RDEzMDQzMDAwRTYxRDcgLyogQ1NTVmFsdWVLZXl3b3Jkcy5ncGVyZiAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBuYW1lID0gQ1NTVmFsdWVLZXl3b3Jkcy5ncGVyZjsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvQ1NTVmFsdWVLZXl3b3Jkcy5ncGVyZjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJNjU2NTgxNDgwOUQxMzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENTU1ZhbHVlS2V5d29yZHMuaDsg
cGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvQ1NTVmFsdWVLZXl3b3Jkcy5oOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk2NTY1ODFBRTA5RDE0RUU2MDAwRTYxRDcg
LyogVXNlckFnZW50U3R5bGVTaGVldHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IFVzZXJBZ2VudFN0eWxlU2hlZXRzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L1VzZXJBZ2VudFN0eWxlU2hlZXRzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTY1NjU4MUFGMDlEMTRFRTYwMDBFNjFENyAvKiBVc2VyQWdlbnRTdHlsZVNoZWV0c0Rh
dGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVzZXJBZ2VudFN0
eWxlU2hlZXRzRGF0YS5jcHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1VzZXJBZ2Vu
dFN0eWxlU2hlZXRzRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCTY1NjU4MUU2MDlEMTUwOEQwMDBFNjFENyAvKiBTVkdFbGVtZW50RmFjdG9yeS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gU1ZHRWxlbWVudEZhY3RvcnkuY3Bw
OyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9TVkdFbGVtZW50RmFjdG9yeS5jcHA7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTY1NjU4MUU3MDlEMTUwOEQwMDBF
NjFENyAvKiBTVkdFbGVtZW50RmFjdG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gU1ZHRWxlbWVudEZhY3RvcnkuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
U1ZHRWxlbWVudEZhY3RvcnkuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJNjU2NTgxRTgwOUQxNTA4RDAwMEU2MUQ3IC8qIFNWR05hbWVzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTVkdOYW1lcy5jcHA7IHBhdGggPSBEZXJpdmVkU291
cmNlcy9XZWJDb3JlL1NWR05hbWVzLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJNjU2NTgxRTkwOUQxNTA4RDAwMEU2MUQ3IC8qIFNWR05hbWVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTVkdOYW1lcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9TVkdOYW1lcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQk2NTY1ODFFQTA5RDE1MDhEMDAwRTYxRDcgLyogWExpbmtOYW1lcy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gWExpbmtOYW1lcy5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL1hMaW5rTmFtZXMuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQk2NTY1ODFFQjA5RDE1MDhEMDAwRTYxRDcgLyogWExpbmtOYW1lcy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gWExpbmtOYW1lcy5oOyBwYXRoID0g
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9YTGlua05hbWVzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTY1NkI5RENBMTg5REUxMDAwMEJCODQyQyAvKiBVUkxEZWNvbXBv
c2l0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVSTERlY29tcG9zaXRpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNjU2RDM3MUEwQURCQTVERTAwQTQ1NTREIC8qIExvYWRlck5TVVJM
RXh0cmFzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2FkZXJOU1VSTEV4
dHJhcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTZEMzcxQjBBREJBNURFMDBB
NDU1NEQgLyogTG9hZGVyTlNVUkxFeHRyYXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gTG9hZGVyTlNVUkxFeHRyYXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTY1NkQzNzFFMEFEQkE1REUwMEE0NTU0RCAvKiBEb2N1bWVudExvYWRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRMb2FkZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjU2RDM3MjIwQURCQTVERTAwQTQ1NTREIC8qIEZvcm1T
dGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybVN0YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1NkQzNzIzMEFEQkE1REUwMEE0NTU0RCAvKiBG
b3JtU3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvcm1T
dGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1NkQzNzI0MEFEQkE1REUw
MEE0NTU0RCAvKiBGcmFtZUxvYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRnJhbWVMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjU2RDM3MjYw
QURCQTVERTAwQTQ1NTREIC8qIEZyYW1lTG9hZGVyQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGcmFtZUxvYWRlckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2NTZEMzcyNzBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlTG9hZGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1NkQzNzJCMEFEQkE1REUwMEE0NTU0RCAvKiBOZXRz
Y2FwZVBsdWdJblN0cmVhbUxvYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNjU2RDM3MzAwQURCQTVERTAwQTQ1NTREIC8qIFN1YnJlc291cmNlTG9hZGVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdWJyZXNvdXJjZUxvYWRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NTg0MzY4NTBBRTAxQjc0MDBFNTM3NDMgLyogRm9u
dExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb250TG9h
ZFJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjU4NDM2ODUwQUUwMUI3
NDAwRTUzNzUzIC8qIEZyYW1lTG9hZFJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEZyYW1lTG9hZFJlcXVlc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNjU5QTdEMTIwQjZEQjREOTAwMTE1NUIzIC8qIFN1YnN0aXR1dGVEYXRhLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdWJzdGl0dXRlRGF0YS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk2NTlEREM4MDA5RTE5OEJBMDAxQkYzQzYgLyogSlNEb2N1bWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEb2N1bWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1OUREQzgxMDlFMTk4QkEwMDFCRjNDNiAv
KiBKU0RvY3VtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RvY3Vt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1QTIxNDY3MDk3QTMyOTEwMEI5
MDUwQSAvKiBQYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYWdlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1QTIxNDgyMDk3QTNGNTMwMEI5MDUwQSAv
KiBGcmFtZVRyZWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZy
YW1lVHJlZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1QTIxNDgzMDk3QTNG
NTMwMEI5MDUwQSAvKiBGcmFtZVRyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZyYW1lVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NUJGMDIyOTA5
NzQ4MTYzMDBDNDMxOTYgLyogRnJhbWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEZyYW1lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjVCRjAy
MkEwOTc0ODE2MzAwQzQzMTk2IC8qIEZyYW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGcmFtZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NUM5N0FGMjA4
RUE5MDg4MDBBQ0QyNzMgLyogY29uZmlnLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IGNvbmZpZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0
YWJXaWR0aCA9IDQ7IHVzZXNUYWJzID0gMDsgfTsKKwkJNjVDQkZFRjcwOTc0RjYwNzAwMURBQzI1
IC8qIEZyYW1lVmlldy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RnJhbWVWaWV3LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjVDQkZFRjgwOTc0
RjYwNzAwMURBQzI1IC8qIEZyYW1lVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRnJhbWVWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1Q0M2QkVE
MTYwMTRFQzAwMDBFRDI3RCAvKiBMYXRpbjFUZXh0SXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTGF0aW4xVGV4dEl0ZXJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTY1REYzMUQ4MDlEMUMxMjIwMDBCRTMyNSAvKiBKU0F0dHIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXR0ci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTY1REYzMUQ5MDlEMUMxMjMwMDBCRTMyNSAvKiBKU0F0dHIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXR0ci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk2NURGMzFERjA5RDFDQzYwMDAwQkUzMjUgLyogSlNDaGFyYWN0ZXJE
YXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NoYXJhY3Rl
ckRhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NURGMzFFMDA5RDFDQzYw
MDAwQkUzMjUgLyogSlNDaGFyYWN0ZXJEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0NoYXJhY3RlckRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NjVERjMxRTEwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTRG9jdW1lbnRUeXBlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RvY3VtZW50VHlwZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1REYzMUUyMDlEMUNDNjAwMDBCRTMyNSAvKiBKU0RvY3Vt
ZW50VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEb2N1bWVudFR5
cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjVERjMxRTMwOUQxQ0M2MDAwMEJF
MzI1IC8qIEpTRE9NSW1wbGVtZW50YXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTRE9NSW1wbGVtZW50YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2NURGMzFFNDA5RDFDQzYwMDAwQkUzMjUgLyogSlNET01JbXBsZW1lbnRhdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01JbXBsZW1lbnRhdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NURGMzFFNTA5RDFDQzYwMDAwQkUz
MjUgLyogSlNFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NURGMzFFNjA5
RDFDQzYwMDAwQkUzMjUgLyogSlNFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjVERjMx
RTcwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTTXV0YXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNdXRhdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNjVERjMxRTgwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTTXV0YXRpb25F
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNdXRhdGlvbkV2ZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1REYzMUVCMDlEMUNDNjAwMDBCRTMy
NSAvKiBKU1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk2NURGMzFFQzA5RDFDQzYwMDAwQkUzMjUgLyogSlNQcm9jZXNzaW5n
SW5zdHJ1Y3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUHJvY2Vz
c2luZ0luc3RydWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1REYzMUVE
MDlEMUNDNjAwMDBCRTMyNSAvKiBKU1JhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1JhbmdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NjVERjMxRUUwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NjVERjMxRUYwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTVGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNjVERjMxRjAwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTVGV4dC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNUZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTY1REYzMUYxMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1doZWVsRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2hlZWxFdmVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1REYzMUYyMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1doZWVs
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2hlZWxFdmVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NURGMzIzMzA5RDFERTY1MDAwQkUzMjUg
LyogSlNDYW52YXNHcmFkaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNDYW52YXNHcmFkaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTY1REYzMjM0MDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc0dyYWRpZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NhbnZhc0dyYWRpZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTY1REYzMjM1MDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc1Bh
dHRlcm4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFz
UGF0dGVybi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY1REYzMjM2MDlEMURF
NjUwMDBCRTMyNSAvKiBKU0NhbnZhc1BhdHRlcm4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTQ2FudmFzUGF0dGVybi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2NUUwRTk0MzExMzNDODlGMDBCNENCMTAgLyogSlNET01XcmFwcGVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2NUZFQTg2ODA5ODMzQURFMDBCRUQ0QUIgLyogUGFnZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTY5NzEwMTA3MUM2QkUxNTUwMDE4QzdGMSAvKiBBY2Nlc3NpYmlsaXR5U1ZH
RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nlc3Np
YmlsaXR5U1ZHRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY5NzEw
MTA4MUM2QkUxNTUwMDE4QzdGMSAvKiBBY2Nlc3NpYmlsaXR5U1ZHRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5U1ZHRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2QTIyRTg2RjFGMTA0MTg2MDBGNTQ2QzMgLyogSW5z
cGVjdG9yQ2FudmFzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckNhbnZhcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk2QTIyRTg3MjFGMTA0MkM0MDBGNTQ2QzMgLyogSW5zcGVj
dG9yQ2FudmFzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3RvckNhbnZhcy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZBNzI3OTg4MUYxNkMyOUIwMDNGMzlCOCAvKiBJ
bnNwZWN0b3JTaGFkZXJQcm9ncmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEluc3BlY3RvclNoYWRlclByb2dyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkE3Mjc5ODkxRjE2QzI5QjAwM0YzOUI4IC8qIEluc3BlY3RvclNoYWRlclByb2dyYW0uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yU2hhZGVyUHJvZ3Jh
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZCMEEwN0YwMjFGQTRCNUMwMEQ1
NzM5MSAvKiBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2QjBBMDdGMTIxRkE0QjVDMDBENTczOTEgLyogUHJpdmF0ZUNsaWNrTWVhc3Vy
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2QjFGNDgwRjIyOTg5RUM0MDBERThCODIg
LyogQ3Jvc3NTaXRlTmF2aWdhdGlvbkRhdGFUcmFuc2Zlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcm9z
c1NpdGVOYXZpZ2F0aW9uRGF0YVRyYW5zZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZCNEQ0MTJCMjM5ODNGODgwMDI0OTRDMiAvKiBMb2dnZWRJblN0YXR1cy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMb2dnZWRJblN0YXR1cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2
QjRENDEyQzIzOTgzRjg4MDAyNDk0QzIgLyogTG9nZ2VkSW5TdGF0dXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTG9nZ2VkSW5TdGF0dXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2QjRFODYxMjIyMUI3MTNGMDAyMkYzODkgLyogUmVnaXN0cmFibGVEb21haW4uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVnaXN0cmFibGVEb21haW4uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNkI1MDdBMjEyMzRCRjM0MTAwQkU3QzYyIC8qIE5hdmlnYXRvcklzTG9nZ2VkSW4uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTmF2aWdhdG9ySXNMb2dnZWRJbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk2QjUwN0EyMjIzNEJGMzQxMDBCRTdDNjIgLyogTmF2aWdhdG9ySXNMb2dnZWRJbi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0b3JJc0xvZ2dlZEluLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkI1MDdBMjMyMzRCRjM0MTAwQkU3QzYyIC8qIE5hdmlnYXRv
citJc0xvZ2dlZEluLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiTmF2aWdhdG9yK0lzTG9nZ2VkSW4uaWRsIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkI2OTNBMkQxQzUxQTgyRTAwQjAzQkVGIC8qIFJlc291
cmNlTG9hZE9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291
cmNlTG9hZE9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZCNjkzQTMz
MUM1MUE5NUQwMEIwM0JFRiAvKiBSZXNvdXJjZUxvYWRPYnNlcnZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNvdXJjZUxvYWRPYnNlcnZlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZCREI1REMwMjI3QkQzQjgwMDkxOTc3MCAvKiBEb2N1
bWVudFN0b3JhZ2VBY2Nlc3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRTdG9yYWdlQWNjZXNz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZCREI1REMxMjI3QkQzQjgwMDkxOTc3
MCAvKiBEb2N1bWVudFN0b3JhZ2VBY2Nlc3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1l
bnRTdG9yYWdlQWNjZXNzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkJEQjVE
QzUyMjdDQTBFQjAwOTE5NzcwIC8qIERvY3VtZW50K1N0b3JhZ2VBY2Nlc3MuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJE
b2N1bWVudCtTdG9yYWdlQWNjZXNzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZDNEM5NkRBMUFENDQ4MzUwMDM2M0Y2NCAvKiBKU1JlYWRhYmxlQnl0ZVN0cmVhbUNvbnRyb2xs
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZWFkYWJsZUJ5
dGVTdHJlYW1Db250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkM0
Qzk2REExQUQ0NDgzNTAwMzY1NjcyIC8qIEpTUmVhZGFibGVTdHJlYW1CWU9CUmVxdWVzdC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JlYWRhYmxlU3RyZWFtQllP
QlJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2QzRDOTZEQTFBRDQ0
ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0
Q29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZDNEM5NkRCMUFE
NDQ4MzUwMDM2M0Y2NCAvKiBKU1JlYWRhYmxlQnl0ZVN0cmVhbUNvbnRyb2xsZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZWFkYWJsZUJ5dGVTdHJlYW1Db250cm9sbGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZDNEM5NkRCMUFENDQ4MzUwMDM2NTY3
MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTZDNEM5NkRCMUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3Ry
ZWFtRGVmYXVsdENvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZDNjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVl
c3RJbml0aWF0b3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRS
ZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZDNjM4ODk0QTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0
b3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNv
dXJjZVJlcXVlc3RJbml0aWF0b3JzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkUwQjkwNjUyMzIxQTY4QzAwNjIyM0IyIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVF
VEMxLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFMEI5MDY3MjMyMUE2OEMwMDYy
MjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2RTBCOTA2ODIzMjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQzEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2
RTBFNTY5OTE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVjdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGbG9hdFJvdW5kZWRSZWN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUwRTU2OUExODNCRkZFNjAwRTBFOEQ1IC8qIEZsb2F0
Um91bmRlZFJlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmxvYXRSb3Vu
ZGVkUmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTIxQzZCRjExMjYzMzg1
MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0wuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk2RTIxQzZDMTExMjYzMzk5MDBBN0JFMDIgLyogR3JhcGhp
Y3NDb250ZXh0R0xDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBH
cmFwaGljc0NvbnRleHRHTENHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUy
NDJCMjYyMzM1OTNENzAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0MkIyODIzMzU5M0Q3MDAyQ0FERDQgLyogSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xDb21wcmVz
c2VkVGV4dHVyZUVUQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI0MkIyOTIz
MzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMxLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyNDJCMkEyMzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xD
b21wcmVzc2VkVGV4dHVyZUVUQzEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTENvbXByZXNzZWRU
ZXh0dXJlRVRDMS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTI3RjI0MjIyOThD
RTRCMDBGMUY2MzIgLyogR3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHRHTEFOR0xFLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyN0YyNDMyMjlDOUY4NDAwRjFGNjMyIC8qIEV4dGVu
c2lvbnNHTEFOR0xFLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV4
dGVuc2lvbnNHTEFOR0xFLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyN0Yy
NDQyMjlDOUY4RDAwRjFGNjMyIC8qIEV4dGVuc2lvbnNHTEFOR0xFLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEV4dGVuc2lvbnNHTEFOR0xFLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTZFMjkwODYxMjI5REI5NTAwMDA5ODZFMiAvKiBUZW1wb3JhcnlBTkdMRVNl
dHRpbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGVtcG9yYXJ5
QU5HTEVTZXR0aW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUyOTA4NjMy
MjlEQjk3MDAwMDk4NkUyIC8qIFRlbXBvcmFyeUFOR0xFU2V0dGluZy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBUZW1wb3JhcnlBTkdMRVNldHRpbmcuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkUzRkFEMzYxNDczM0Y0MDAwRTQyMzA2IC8qIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVMzVEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZFM0ZBRDM2MTQ3MzNGNDAwMEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xEZXB0aFRl
eHR1cmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTNGQUQzNjE0NzMzRjQw
MTBFNDIzMDcgLyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFM0ZBRDM2MTQ3MzNGNDAyMEU0MjMwNyAvKiBKU1dl
YkdMRGVidWdTaGFkZXJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTV2ViR0xEZWJ1Z1NoYWRlcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2
RTNGQUQzNzE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVTM1RDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFM0ZBRDM3MTQ3MzNGNDAw
MEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTV2ViR0xEZXB0aFRleHR1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNkUzRkFEMzcxNDczM0Y0MDExRTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1JlbmRlcmVySW5m
by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMRGVidWdSZW5kZXJl
ckluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkUzRkFEMzcxNDczM0Y0MDIy
RTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1NoYWRlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNXZWJHTERlYnVnU2hhZGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2RTNGQUU4QzE0NzMzRkRCMDBFNDIzMDYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMz
VEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVMzVEMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTNGQUU4
QzE0NzMzRkRCMDBFNDIzMDcgLyogV2ViR0xEZXB0aFRleHR1cmUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xEZXB0aFRleHR1cmUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk2RTNGQUU4RDE0NzMzRkRCMDBFNDIzMDYgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVMzVEMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkUzRkFFOEQxNDczM0ZEQjAwRTQyMzA3IC8qIFdlYkdMRGVwdGhUZXh0dXJlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMRGVwdGhUZXh0dXJlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZFM0ZBRTkwMTQ3MzNGRUEwMEU0MjMwNiAvKiBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUzNUQy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVMzVEMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTNGQUU5
MDE0NzMzRkVBMDBFNDIzMDcgLyogV2ViR0xEZXB0aFRleHR1cmUuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFdlYkdMRGVwdGhUZXh0dXJlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNkU0N0U2NUYxMEI3OTQ0QjAwQjE4NkM4IC8qIFdlYkdMQW55LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQW55Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTZFNEFCQ0QyMTM4RUEwQjcwMDcxRDI5MSAvKiBKU0hUTUxVbmtub3duRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxVbmtub3duRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFNEFCQ0QzMTM4RUEwQjcw
MDcxRDI5MSAvKiBKU0hUTUxVbmtub3duRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0hUTUxVbmtub3duRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk2RTRFOTFBQTEwRjdGQjMxMDBBMjc3OUMgLyogV2ViR0xDb250ZXh0QXR0cmlidXRl
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTENvbnRleHRBdHRyaWJ1
dGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFNEU5MUFCMTBGN0ZCMzEwMEEy
Nzc5QyAvKiBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNkU1Mzg4RDgyNDU4QUUxODAwNzZBRTAzIC8qIEVYVENvbG9yQnVmZmVyRmxvYXQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEVYVENvbG9yQnVmZmVyRmxvYXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2RTUzODhEQTI0NThBRTE5MDA3NkFFMDMgLyogRVhUQ29sb3JCdWZmZXJIYWxmRmxvYXQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRVhUQ29sb3JCdWZmZXJIYWxmRmxvYXQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk2RTUzODhEQjI0NThBRTFBMDA3NkFFMDMgLyogV2ViR0xD
b2xvckJ1ZmZlckZsb2F0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29sb3JCdWZmZXJGbG9hdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTUzODhEQzI0NThBRTFCMDA3NkFFMDMg
LyogRVhUQ29sb3JCdWZmZXJGbG9hdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFWFRDb2xvckJ1ZmZlckZs
b2F0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFNTM4OEREMjQ1OEFFMUIwMDc2
QUUwMyAvKiBFWFRDb2xvckJ1ZmZlckZsb2F0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEVYVENv
bG9yQnVmZmVyRmxvYXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RTUzODhE
RTI0NThBRTFDMDA3NkFFMDMgLyogRVhUQ29sb3JCdWZmZXJIYWxmRmxvYXQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRVhUQ29sb3JCdWZmZXJIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNkU1Mzg4REYyNDU4QUUxQzAwNzZBRTAzIC8qIEVYVENvbG9yQnVmZmVySGFsZkZsb2F0
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBFWFRDb2xvckJ1ZmZlckhhbGZGbG9hdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTZFNTM4OEUwMjQ1OEFFMUQwMDc2QUUwMyAvKiBXZWJHTENvbG9yQnVmZmVy
RmxvYXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb2xvckJ1ZmZlckZsb2F0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU1Mzg4RTEyNDU4QUUxRDAwNzZBRTAzIC8q
IFdlYkdMQ29sb3JCdWZmZXJGbG9hdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb2xvckJ1ZmZlckZsb2F0Lmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFB
IC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNIVE1MQ2FudmFzRWxlbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAvKiBFeHRlbnNpb25z
R0wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXh0ZW5zaW9uc0dMLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFN0NBMzBBMjVCNEQyOEEwMDRBOTEzRSAvKiBK
U1dlYkdMTXVsdGlEcmF3LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xNdWx0aURyYXcuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU3Q0EzMEIyNUI0RDMyODAwNEE5MTNFIC8qIEpT
V2ViR0xNdWx0aURyYXcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTE11bHRpRHJhdy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFODRFOURFMTc2NjhCQUQwMDgxNUI2
OCAvKiBSYXN0ZXJTaGFwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSYXN0ZXJTaGFwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFODRFOURG
MTc2NjhCQUQwMDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSYXN0ZXJTaGFwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2
RThBQ0RFOTIzMzQ1Q0FGMDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkU4QUNERUIyMzM0NUNBRjAwMjRBQUY1IC8qIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4
dHVyZUVUQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RThBQ0RFQzIzMzQ1Q0Iw
MDAyNEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUVUQy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFQkYw
RTQ1MTJBODkyNjEwMERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT0VTVGV4dHVyZUZsb2F0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkVCRjBFNDYxMkE4OTI2MTAwREIxNzA5IC8qIE9FU1RleHR1cmVG
bG9hdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPRVNUZXh0dXJlRmxvYXQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkVCRjBFNDcxMkE4OTI2MTAwREIxNzA5
IC8qIE9FU1RleHR1cmVGbG9hdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT0VTVGV4dHVy
ZUZsb2F0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkVCRjBFNTIxMkE4OTI5
ODAwREIxNzA5IC8qIFdlYkdMRXh0ZW5zaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFdlYkdMRXh0ZW5zaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNkVCRjBFNTMxMkE4OTI5ODAwREIxNzA5IC8qIFdlYkdMRXh0ZW5zaW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMRXh0ZW5zaW9uLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZFQkYwRTc0MTJBOTg2ODgwMERCMTcwOSAvKiBKU09FU1RleHR1
cmVGbG9hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU09FU1Rl
eHR1cmVGbG9hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFQkYwRTc0MTJB
OTg2ODgwMERCMTcwQSAvKiBKU1dlYkdMRHJhd0J1ZmZlcnMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTERyYXdCdWZmZXJzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkVCRjBFNzUxMkE5ODY4ODAwREIxNzA5IC8qIEpTT0VTVGV4dHVy
ZUZsb2F0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTT0VTVGV4dHVyZUZs
b2F0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFQkYwRTc1MTJBOTg2ODgwMERC
MTcwQSAvKiBKU1dlYkdMRHJhd0J1ZmZlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNXZWJHTERyYXdCdWZmZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZFQzM2MkQ1MjVCNEM1M0QwMDkzN0Y4NSAvKiBXZWJHTE11bHRpRHJhdy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTE11bHRpRHJhdy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFQzM2MkQ3MjVCNEM1M0UwMDkzN0Y4NSAvKiBXZWJHTE11
bHRpRHJhdy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTE11bHRpRHJh
dy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RUMzNjJEODI1QjRDNTNFMDA5MzdG
ODUgLyogV2ViR0xNdWx0aURyYXcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMTXVs
dGlEcmF3LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkVDNDgwOUYxNkVBNjM4
QTAwQTQ4RENCIC8qIEZsb2F0UG9seWdvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBGbG9hdFBvbHlnb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk2RUM0ODBBMDE2RUE2MzhBMDBBNDhEQ0IgLyogRmxvYXRQb2x5Z29uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZsb2F0UG9seWdvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2RUQ4NzhDMjE0NzQ5M0Y0MDA0QzM1OTcgLyogUmVuZGVyVGFibGVDYXB0aW9u
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclRhYmxlQ2Fw
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZFRDg3OEMzMTQ3NDkzRjQw
MDRDMzU5NyAvKiBSZW5kZXJUYWJsZUNhcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyVGFibGVDYXB0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZFRDhDMzc3MTgzQkZGOEMwMDlFNTNCRCAvKiBCb3hTaGFwZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCb3hTaGFwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTZFRDhDMzc4MTgzQkZGOEMwMDlFNTNCRCAvKiBCb3hTaGFwZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3hTaGFwZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk2RUU4QTc3MDEwRjgwM0YzMDA1QTRBMjQgLyogSlNXZWJHTENvbnRleHRB
dHRyaWJ1dGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2Vi
R0xDb250ZXh0QXR0cmlidXRlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZF
RThBNzcxMTBGODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTENvbnRleHRBdHRyaWJ1dGVzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGMDgzMERGMjBCNDY5NTEwMDhBOTQ1QiAv
KiBCbG9ja0Zvcm1hdHRpbmdHZW9tZXRyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCbG9ja0Zv
cm1hdHRpbmdHZW9tZXRyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGMEI5
OEIzMjNGMjY4RUIwMEVFQzJGMiAvKiBMYXlvdXRJbmxpbmVUZXh0Qm94LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dElubGluZVRleHRCb3guaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkYwQjk4QjYyM0YyNjkwNjAwRUVDMkYyIC8qIExheW91dElubGlu
ZVRleHRCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0SW5saW5lVGV4dEJveC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGMENENjkyMjI5RUQzMTkwMEM1OTk0RSAv
KiBJbmxpbmVMaW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUxpbmUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjBDRDY5NDIyOUVEMzI3MDBDNTk5NEUgLyogSW5s
aW5lTGluZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmxpbmVMaW5lLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGMTBCMDg2MjJCODU2OEQwMDkwRTY5QyAv
KiBJbmxpbmVGb3JtYXR0aW5nUXVpcmtzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUZv
cm1hdHRpbmdRdWlya3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjE1NTIy
MDI2NDc2QjVCMDBFMzUzQzYgLyogVGFibGVXcmFwcGVyQmxvY2tGb3JtYXR0aW5nUXVpcmtzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhYmxlV3JhcHBlckJsb2NrRm9ybWF0
dGluZ1F1aXJrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjE3MjY0QzI0NzBD
NUY3MDA1MThDOTYgLyogVGFibGVXcmFwcGVyQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBUYWJsZVdyYXBwZXJCbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkYxNzI2NEUyNDcwQzYwQTAwNTE4Qzk2IC8q
IFRhYmxlV3JhcHBlckJsb2NrRm9ybWF0dGluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVGFibGVXcmFwcGVyQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjFDQzFEQzIyNUY4QjQxMDA3MjBBRDIgLyogSW5s
aW5lVGV4dEl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5lVGV4dEl0ZW0uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjFDQzFERDIyNUY4QjQyMDA3MjBBRDIgLyog
SW5saW5lVGV4dEl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5saW5lVGV4dEl0ZW0uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkYxRTgzQTAyNjY1ODg0QzAwMkU5RDI4IC8qIFRhYmxl
Rm9ybWF0dGluZ0NvbnN0cmFpbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFRhYmxlRm9ybWF0dGluZ0NvbnN0cmFpbnRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZGMUU4M0E1MjY2NTg4OEMwMDJFOUQyOCAvKiBGb3JtYXR0aW5nQ29uc3RyYWludHMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybWF0dGluZ0NvbnN0cmFpbnRzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGMjIyQjc0MUFCNTJENjQwMDk0NjUxQSAv
KiBXZWJHTFZlcnRleEFycmF5T2JqZWN0QmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTFZlcnRl
eEFycmF5T2JqZWN0QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjIyMkI3
NTFBQjUyRDhBMDA5NDY1MUEgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdEJhc2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xWZXJ0ZXhBcnJheU9iamVjdEJh
c2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjI1QjIwMDIyMEE4NUFCMDAw
MDAxMUIgLyogSW5saW5lTGluZUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5l
TGluZUJ1aWxkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjI2QkI2OTIz
MzQzRTVBMDAyRjJCRUEgLyogTGF5b3V0Q29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBM
YXlvdXRDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkYyNkJCNkIy
MzM0M0U1QjAwMkYyQkVBIC8qIExheW91dENvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0
Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjI2RUI0NjIzNDAwNEE1
MDA2OTA2RTIgLyogSW5saW5lTGluZUJ1aWxkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW5saW5lTGluZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNkYzNUVGQUYyMTg3Q0JENTAwNDRFMEY0IC8qIElubGluZUZvcm1hdHRpbmdHZW9tZXRyeS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmxpbmVGb3JtYXR0aW5n
R2VvbWV0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjM2MEU0RTIzOTk5
NDIwMDAxNTEyQTcgLyogSW5saW5lU29mdExpbmVCcmVha0l0ZW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW5saW5lU29mdExpbmVCcmVha0l0ZW0uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkYzRkJBOTYyNTU2RTMwODAwMzUzMEZEIC8qIExheW91dEludGVn
cmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0
SW50ZWdyYXRpb25JbmxpbmVDb250ZW50QnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZGM0ZCQTk3MjU1NkUzMTIwMDM1MzBGRCAvKiBMYXlvdXRJbnRlZ3JhdGlvbklu
bGluZUNvbnRlbnRCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExh
eW91dEludGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNkY0MERBODEyNTEzMDMzQTAwRUMwNEI3IC8qIElubGluZVJlY3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5saW5lUmVjdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk2RjQ5QzNFNjI2NDc5QjNCMDA1MTk1M0QgLyogVGFibGVGb3JtYXR0
aW5nUXVpcmtzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhYmxlRm9ybWF0
dGluZ1F1aXJrcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjRBNUJENTIyRjlG
MTZCMDBBODBGMjUgLyogTGF5b3V0UGhhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0
UGhhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjU2QjQ0NjI2NDc5RTYx
MDBBQUUyNTcgLyogRm9ybWF0dGluZ1F1aXJrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGb3JtYXR0aW5nUXVpcmtzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZGNUI3RUFBMjMwMEE3OUUwMDY3RDlDMyAvKiBUYWJsZUdyaWQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gVGFibGVHcmlkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY2Mzgz
RjQyNDI3QUY0OTAwREFCQTUzIC8qIExheW91dEluaXRpYWxDb250YWluaW5nQmxvY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0SW5pdGlhbENvbnRhaW5pbmdCbG9j
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjY2MzhENDI0OUUyNjhCMDAxOTI1
RkMgLyogVGFibGVXcmFwcGVyQmxvY2tGb3JtYXR0aW5nUXVpcmtzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFRhYmxlV3JhcHBlckJsb2NrRm9ybWF0dGluZ1F1aXJrcy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZGNjlBNzk5MjRENkZBQjgwMEU2Qjg1RCAvKiBJbmxpbmVMaW5l
Qm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUxpbmVCb3guY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk2RjZERjM2RTI2NDcyMkVBMDA5M0U4MzQgLyogQmxvY2tNYXJn
aW5Db2xsYXBzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9ja01hcmdp
bkNvbGxhcHNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGNkVFNzQxMjZENDRF
RTIwMDM3NENEQSAvKiBJbmxpbmVMaW5lQm94VmVydGljYWxBbGlnbmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUxpbmVCb3hWZXJ0aWNhbEFsaWduZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY2RUU3NDQyNkQ0NEYwMzAwMzc0Q0RBIC8qIElu
bGluZUxpbmVCb3hWZXJ0aWNhbEFsaWduZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5saW5l
TGluZUJveFZlcnRpY2FsQWxpZ25lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZGNzBERUREMjUxMTI2RjMwMEYwRkM3OCAvKiBGbGV4Rm9ybWF0dGluZ0dlb21ldHJ5LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEZsZXhGb3JtYXR0aW5nR2VvbWV0cnkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk2RjczOTE4QzIxMDZDRUREMDA2QUYyNjIgLyogTGF5b3V0VW5p
dHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0VW5pdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNkY3QjhDRUMyMzYyNkU2NjAwQzlGRjE1IC8qIElubGluZUl0ZW0uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSW5saW5lSXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZGN0NBM0M0MjA4QzI5NTYwMDJGMjlBQiAvKiBMYXlvdXRTdGF0ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjdDQTND
NTIwOEMyOTU2MDAyRjI5QUIgLyogTGF5b3V0U3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TGF5b3V0U3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RjdDQTNDODIw
OEMyQjJFMDAyRjI5QUIgLyogSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNkY3Q0EzQzkyMDhDMkIyRTAwMkYyOUFCIC8qIElubGluZUZvcm1hdHRpbmdDb250ZXh0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUZvcm1hdHRpbmdDb250ZXh0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY4RjQ2MDEyMUIwM0JCNDAwNDFBQzNBIC8qIEZvcm1h
dHRpbmdRdWlya3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9ybWF0dGluZ1F1aXJrcy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOEY0NjAzMjFCMDNCQzYwMDQxQUMzQSAv
KiBCbG9ja0Zvcm1hdHRpbmdRdWlya3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmxvY2tGb3Jt
YXR0aW5nUXVpcmtzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY5MTQyMEYy
NTE1MjEzNzAwNEU0RkVBIC8qIElubGluZUxpbmVHZW9tZXRyeS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbmxpbmVMaW5lR2VvbWV0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNkY5OTVBMDkxQTcwNzBFNjAwQTczNUY0IC8qIFdlYkdMUXVlcnkuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdMUXVlcnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2Rjk5NUEwQTFBNzA3MEU2MDBBNzM1RjQgLyogV2ViR0xTYW1wbGVyLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTFNhbXBsZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk2Rjk5NUEwQjFBNzA3MEU2MDBBNzM1RjQgLyogV2ViR0xTeW5jLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTFN5bmMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2Rjk5NUEwQzFBNzA3MEU2MDBBNzM1RjQgLyogV2ViR0xUcmFuc2Zvcm1GZWVk
YmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xUcmFuc2Zvcm1GZWVkYmFjay5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTBEMUE3MDcwRTYwMEE3MzVG
NCAvKiBXZWJHTFZlcnRleEFycmF5T2JqZWN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
ZWJHTFZlcnRleEFycmF5T2JqZWN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NkY5OTVBMTMxQTcwNzU2MjAwQTczNUY0IC8qIFdlYkdMU3luYy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTFN5bmMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk2Rjk5NUExNDFBNzA3NTYyMDBBNzM1RjQgLyogV2ViR0xTeW5jLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMU3luYy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk2Rjk5NUExNzFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xRdWVyeS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTFF1ZXJ5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY5OTVBMTgxQTcwNzhCMTAwQTczNUY0IC8qIFdl
YkdMUXVlcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xRdWVyeS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2Rjk5NUExOTFBNzA3OEIxMDBBNzM1RjQg
LyogV2ViR0xTYW1wbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFdlYkdMU2FtcGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTFB
MUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFNhbXBsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xTYW1wbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZGOTk1QTFCMUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMVHJhbnNmb3JtRmVlZGJh
Y2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2Rjk5NUExQzFBNzA3OEIxMDBB
NzM1RjQgLyogV2ViR0xUcmFuc2Zvcm1GZWVkYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZGOTk1QTFEMUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFZlcnRleEFycmF5T2Jq
ZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMVmVydGV4
QXJyYXlPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2Rjk5NUExRTFB
NzA3OEIxMDBBNzM1RjQgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTFZlcnRleEFycmF5T2JqZWN0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTI3MUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdMUXVl
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTFF1ZXJ5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY5OTVBMjgxQTcwODMzNzAwQTcz
NUY0IC8qIEpTV2ViR0xRdWVyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1dlYkdMUXVlcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY5OTVBMjkxQTcw
ODMzNzAwQTczNUY0IC8qIEpTV2ViR0xTYW1wbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xTYW1wbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNkY5OTVBMkExQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xTYW1wbGVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xTYW1wbGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTJCMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdM
U3luYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMU3lu
Yy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTJDMUE3MDgzMzcwMEE3
MzVGNCAvKiBKU1dlYkdMU3luYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1dlYkdMU3luYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2Rjk5NUEyRDFBNzA4
MzM3MDBBNzM1RjQgLyogSlNXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViR0xUcmFuc2Zvcm1GZWVkYmFjay5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGOTk1QTJFMUE3MDgzMzcwMEE3MzVGNCAvKiBK
U1dlYkdMVHJhbnNmb3JtRmVlZGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTZGOTk1QTJGMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdMVmVydGV4QXJyYXlPYmplY3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTFZlcnRleEFy
cmF5T2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkY5OTVBMzAxQTcw
ODMzNzAwQTczNUY0IC8qIEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMVmVydGV4QXJyYXlPYmplY3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZBQUU3MTEyNkEyODE0QTAwRTA3NTAyIC8qIElubGluZUxl
dmVsQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUxldmVsQm94
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQUUxNkJBMjQwNkRFN0UwMEE0ODQx
NCAvKiBQcmVjb21wdXRlZEJsb2NrTWFyZ2luQ29sbGFwc2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUHJlY29tcHV0ZWRCbG9ja01hcmdpbkNvbGxhcHNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNkZCMEVEMTEyNDI3QjZDNjAwMjczN0U2IC8qIExheW91dEluaXRpYWxDb250
YWluaW5nQmxvY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0SW5pdGlhbENvbnRhaW5p
bmdCbG9jay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQjExQjU5MjE3ODNG
Q0YwMEUyQTU3NCAvKiBUZXh0VXRpbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUZXh0VXRpbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RkIxMUI1QjIxNzgz
RkNGMDBFMkE1NzQgLyogVGV4dFV0aWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gVGV4dFV0aWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RkIy
MkUzMDIzMDA5N0UzMDBDMjA4NjYgLyogVGFibGVHcmlkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhYmxl
R3JpZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RkIyNDAwMzIzREZGMTI3MDA3
OTY0NTggLyogSW5saW5lTGluZUJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbmxpbmVMaW5lQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQjQ3RTYx
MjI3NzQyNUEwMEM3QkNCMCAvKiBMYXlvdXRJbnRlZ3JhdGlvbkxpbmUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0SW50ZWdyYXRpb25MaW5lLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTZGQjVFMjEyMjIxRjI0NDcwMDM5ODlDRiAvKiBDb250ZW50Q2hh
bmdlT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudENoYW5nZU9ic2VydmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQjdEMkQ3MjUwRkQ3RTUwMDAyMDdBQSAvKiBG
bGV4Rm9ybWF0dGluZ0NvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxleEZvcm1hdHRp
bmdDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZCN0QyRDgyNTBG
RDdFRjAwMDIwN0FBIC8qIEZsZXhGb3JtYXR0aW5nU3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRmxleEZvcm1hdHRpbmdTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTZGQjdEMkQ5MjUwRkQ3RkMwMDAyMDdBQSAvKiBGbGV4Rm9ybWF0dGluZ0NvbnRleHQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmxleEZvcm1hdHRpbmdDb250ZXh0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQjdEMkRBMjUwRkQ3RkMwMDAyMDdBQSAvKiBG
bGV4Rm9ybWF0dGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZs
ZXhGb3JtYXR0aW5nU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZCQjg2
MDUyMEI0NjRCNjAwREFEOTM4IC8qIEZvcm1hdHRpbmdHZW9tZXRyeS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGb3JtYXR0aW5nR2VvbWV0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2RkMzRjk0NTI1MTY3NTY2MDBBNDlCRUEgLyogSW5saW5lTGluZVJ1bi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmxpbmVMaW5lUnVuLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTZGQzUzQUVCMjRBRjdBOEUwMDYwNTlGRSAvKiBUYWJsZUZvcm1hdHRp
bmdRdWlya3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGFibGVGb3JtYXR0aW5nUXVpcmtzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZDNUNBOTIyMkUzNTk5MzAwQjEzRTEx
IC8qIFRhYmxlRm9ybWF0dGluZ1N0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRhYmxlRm9y
bWF0dGluZ1N0YXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZDNUNBOTQy
MkUzNTk5NDAwQjEzRTExIC8qIFRhYmxlRm9ybWF0dGluZ0NvbnRleHQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gVGFibGVGb3JtYXR0aW5nQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTZGQzVDQTk1MjJFMzU5OTQwMEIxM0UxMSAvKiBUYWJsZUZvcm1hdHRpbmdDb250
ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhYmxlRm9ybWF0dGluZ0NvbnRleHQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZDNUNBOTYyMkUzNTk5NTAwQjEzRTExIC8qIFRhYmxlRm9y
bWF0dGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRhYmxlRm9ybWF0dGluZ1N0YXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGQ0JEQjk1MjY1REYyQzcwMDIxRUE3QiAvKiBM
YXlvdXRDb250YWluaW5nQmxvY2tDaGFpbkl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IExheW91dENvbnRhaW5pbmdCbG9ja0NoYWluSXRlcmF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZEMDk1NDEyNTExMTUyMjAwOTg4NzdEIC8qIExheW91
dEdlb21ldHJ5UmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRH
ZW9tZXRyeVJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZFMTk4MTMyMTc4
Mzk3QjAwNDQ2RjA4IC8qIElubGluZUNvbnRlbnRCcmVha2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUNvbnRlbnRCcmVha2VyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZFMTk4MTUyMTc4Mzk3QzAwNDQ2RjA4IC8qIElubGluZUNv
bnRlbnRCcmVha2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUNv
bnRlbnRCcmVha2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGRTYzNkU3MjY0
Nzk2MjkwMEYwOTUxRSAvKiBJbmxpbmVGb3JtYXR0aW5nUXVpcmtzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUZvcm1hdHRpbmdRdWlya3MuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNkZFN0FBMjYyMUMzN0I2MzAwMjk2RENEIC8qIE1hcmdpblR5cGVz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmdpblR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTZGRTdDRkEwMjE3N0VFRjEwMDVCMTU3MyAvKiBJbmxpbmVJdGVtLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGluZUl0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNkZFOUYwOTIyMjIxMTAzNTAwNEM1MDgyIC8qIENvbnRlbnRDaGFuZ2VPYnNl
cnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50Q2hh
bmdlT2JzZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2RkVGRTgxRDIy
RjlEMjJBMDAxMTQ5MjcgLyogTGF5b3V0UGhhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0UGhh
c2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZGOTExRjYyNjQ4N0ZDODAwMjAy
MURGIC8qIEZsZXhGb3JtYXR0aW5nR2VvbWV0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRmxleEZvcm1hdHRpbmdHZW9tZXRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk2RkY5RjFCRTI0NkQ5NjZDMDA0MzUwODMgLyogVGFibGVMYXlvdXQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVGFibGVMYXlvdXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk2RkZBNEJGRTIzRjJGRUNEMDA3RTRFQkMgLyogTGF5b3V0TGluZUJyZWFrQm94LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IExheW91dExpbmVCcmVha0JveC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTZGRkE0QzAwMjNGMkZFRDkwMDdFNEVCQyAvKiBMYXlvdXRMaW5lQnJl
YWtCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0TGluZUJyZWFr
Qm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTZGRkRDNDNFMjEyRUZGMTYwMEE5
Q0E5MSAvKiBGbG9hdEF2b2lkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRmxvYXRBdm9pZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNkZG
REM0NDAyMTJFRkYxNjAwQTlDQTkxIC8qIEZsb2F0QXZvaWRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBGbG9hdEF2b2lkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzA5QTAxRkQxRTNEMEJDQzAwNkIwRDRDIC8qIE1vZHVsZUZldGNoRmFpbHVyZUtpbmQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9kdWxlRmV0Y2hGYWlsdXJlS2lu
ZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTAwNEI5RDFEQzEzOTg4MDBBNTJB
MzggLyogcGxheWJhY2stc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlw
dDsgcGF0aCA9ICJwbGF5YmFjay1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzEwMjVFQzIxRjk5RjA5NjAwNEEyNTBDIC8qIFdlYkFuaW1hdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJBbmltYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEw
MjVFQzMxRjk5RjA5NjAwNEEyNTBDIC8qIFdlYkFuaW1hdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBXZWJBbmltYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTAy
NUVDNDFGOTlGMDk2MDA0QTI1MEMgLyogRG9jdW1lbnRUaW1lbGluZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEb2N1bWVudFRpbWVsaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzEwMjVFQzUxRjk5RjA5NjAwNEEyNTBDIC8qIERvY3VtZW50VGltZWxpbmUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRG9jdW1lbnRUaW1lbGluZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MTAyNUVDNjFGOTlGMDk2MDA0QTI1MEMgLyogQW5pbWF0aW9uVGltZWxpbmUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQW5pbWF0aW9uVGltZWxpbmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MTAyNUVDNzFGOTlGMDk2MDA0QTI1MEMgLyogQW5pbWF0aW9uVGltZWxpbmUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQW5pbWF0aW9uVGltZWxpbmUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzEwMjVFQzgxRjk5RjA5NjAwNEEyNTBDIC8qIFdlYkFuaW1hdGlvbi5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gV2ViQW5pbWF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEw
MjVFQzkxRjk5RjA5NjAwNEEyNTBDIC8qIEFuaW1hdGlvblRpbWVsaW5lLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBbmlt
YXRpb25UaW1lbGluZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDI1RUNB
MUY5OUYwOTYwMDRBMjUwQyAvKiBEb2N1bWVudFRpbWVsaW5lLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEb2N1bWVudFRp
bWVsaW5lLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEwMjVFRDUxRjk5RjE0
NzAwNEEyNTBDIC8qIEpTQW5pbWF0aW9uVGltZWxpbmVDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBbmltYXRpb25UaW1lbGluZUN1c3RvbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDI1RUQ3MUY5OUYxQTYwMDRBMjUwQyAvKiBK
U1dlYkFuaW1hdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1dlYkFuaW1hdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDI1RUQ4
MUY5OUYxQTYwMDRBMjUwQyAvKiBKU1dlYkFuaW1hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1dlYkFuaW1hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MTAyNUVEOTFGOTlGMUE3MDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1lbGluZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FuaW1hdGlvblRpbWVsaW5lLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDI1RURBMUY5OUYxQTcwMDRBMjUwQyAvKiBK
U0FuaW1hdGlvblRpbWVsaW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQW5pbWF0aW9uVGltZWxpbmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MTAyNUVEQjFGOTlGMUE4MDA0QTI1MEMgLyogSlNEb2N1bWVudFRpbWVsaW5lLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRG9jdW1lbnRUaW1lbGluZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDI1RURDMUY5OUYxQTgwMDRBMjUwQyAv
KiBKU0RvY3VtZW50VGltZWxpbmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNEb2N1bWVudFRpbWVsaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMDhF
RUU0MjQxOEVENTMwMDVDM0RBNyAvKiBXZWJBbmltYXRpb25UeXBlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBbmltYXRpb25UeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MTBGQTc0QjFERUU1NzZEMDA0QzcxNUUgLyogY29udHJvbHMtYmFyLmpz
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImNvbnRyb2xzLWJhci5q
cyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMEZBNzRDMURFRTU3N0UwMDRDNzE1
RSAvKiBjb250cm9scy12aXNpYmlsaXR5LXN1cHBvcnQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmphdmFzY3JpcHQ7IHBhdGggPSAiY29udHJvbHMtdmlzaWJpbGl0eS1zdXBwb3J0LmpzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzExMTI0M0IyMTZGQTZFMDAwRUI3QjY3IC8qIENv
bXBvc2l0ZU9wZXJhdGlvbk9yQXV0by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDb21wb3NpdGVPcGVyYXRpb25PckF1dG8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzExMTI0M0QyMTZGQTZFMDAwRUI3QjY3IC8qIENvbXBvc2l0ZU9wZXJhdGlvbk9yQXV0by5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29tcG9zaXRlT3BlcmF0aW9uT3JBdXRvLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzExMTI0M0YyMTZGQTdCRTAwRUI3QjY3IC8q
IEpTQ29tcG9zaXRlT3BlcmF0aW9uT3JBdXRvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTQ29tcG9zaXRlT3BlcmF0aW9uT3JBdXRvLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzExMTI0NDAyMTZGQTdCRTAwRUI3QjY3IC8qIEpTQ29tcG9zaXRl
T3BlcmF0aW9uT3JBdXRvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ29t
cG9zaXRlT3BlcmF0aW9uT3JBdXRvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
MTZFMkM5MUZFRDc1RDAwMEMwNkZERSAvKiBDb21wdXRlZEVmZmVjdFRpbWluZy5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gQ29tcHV0ZWRFZmZlY3RUaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3MTE2RTJDQjFGRUQ3NUQxMDBDMDZGREUgLyogQ29tcHV0ZWRFZmZl
Y3RUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29tcHV0ZWRFZmZl
Y3RUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzExNkUyQ0QxRkVENzY1
MjAwQzA2RkRFIC8qIEpTQ29tcHV0ZWRFZmZlY3RUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNDb21wdXRlZEVmZmVjdFRpbWluZy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMTZFMkNFMUZFRDc2NTIwMEMwNkZERSAvKiBKU0NvbXB1
dGVkRWZmZWN0VGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ29t
cHV0ZWRFZmZlY3RUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzExNzQ0
NTYxNEJDMzRFMjAwRUU1RkM4IC8qIFNWR1RleHRNZXRyaWNzQnVpbGRlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdUZXh0TWV0cmljc0J1aWxkZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTE3NDQ1NzE0QkMzNEUyMDBFRTVGQzggLyog
U1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR1RleHRNZXRyaWNzQnVpbGRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MTE4RkVEMjE1Njg1Q0M2MDAzMEI3OUEgLyogSlNTVkdWaWV3U3BlYy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1ZpZXdTcGVjLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzExOEZFRDMxNTY4NUNDNjAwMzBCNzlBIC8qIEpTU1ZHVmlld1Nw
ZWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdWaWV3U3BlYy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTE5NDY1MzI0MTgxRTgzMDA0NjZDMTEgLyog
RWxlbWVudEFuaW1hdGlvblJhcmVEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEVsZW1lbnRBbmltYXRpb25SYXJlRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MTE5NDY1NTI0MTgxRTg0MDA0NjZDMTEgLyogRWxlbWVudEFuaW1hdGlvblJhcmVEYXRh
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEVsZW1lbnRBbmltYXRp
b25SYXJlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMUFEMTIzMjM2
RDg2RDMwMDZGRjM3QyAvKiBBbmltYXRpb25FdmVudEJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQW5pbWF0aW9uRXZlbnRCYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcxMUFEMTI1MjM2RDg2RDQwMDZGRjM3QyAvKiBBbmltYXRpb25FdmVudEJhc2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQW5pbWF0aW9uRXZlbnRC
YXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzExRkIwNzUxREM3Njg4RjAw
QzRDNzA4IC8qIHBsYWNhcmQtc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9ICJwbGFjYXJkLXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3MTIwNzMzRDIxNkRGQUYxMDBDNzgzMjkgLyogT3B0aW9uYWxFZmZlY3RUaW1pbmcu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3B0aW9uYWxFZmZlY3RUaW1pbmcu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyMDczM0YyMTZERkFGMjAwQzc4MzI5
IC8qIE9wdGlvbmFsRWZmZWN0VGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPcHRp
b25hbEVmZmVjdFRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMjA3
MzQxMjE2REZCMzEwMEM3ODMyOSAvKiBKU09wdGlvbmFsRWZmZWN0VGltaW5nLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTT3B0aW9uYWxFZmZlY3RUaW1pbmcuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyMDczNDIyMTZERkIzMTAwQzc4MzI5IC8qIEpTT3B0
aW9uYWxFZmZlY3RUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNPcHRpb25hbEVmZmVjdFRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxMjE1N0MwMURDQ0NBMDcwMEFBN0E5MiAvKiBtYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNv
bnRyb2xzLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gIm1hY29zLWZ1bGxzY3JlZW4t
bWVkaWEtY29udHJvbHMuY3NzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyMTU3
QzExRENDQ0EwNzAwQUE3QTkyIC8qIG1hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMuanMg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAibWFjb3MtZnVsbHNjcmVl
bi1tZWRpYS1jb250cm9scy5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMjND
MTgyMjA0NzM5OTIwMDc4OTM5MiAvKiBKU0NTU1RyYW5zaXRpb24uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDU1NUcmFuc2l0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzEyM0MxODQyMDQ3Mzk5MzAwNzg5MzkyIC8qIEpTQ1NTVHJhbnNp
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NTU1RyYW5zaXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyM0MxODUyMDQ3MzlCOTAwNzg5Mzky
IC8qIENTU1RyYW5zaXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU1RyYW5zaXRp
b24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTIzQzE4NjIwNDczOUJBMDA3
ODkzOTIgLyogQ1NTVHJhbnNpdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NUcmFuc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMjNDMTg3
MjA0NzM5QkIwMDc4OTM5MiAvKiBDU1NUcmFuc2l0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU1RyYW5zaXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MTI0N0UyNjFGRUE1RjYwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUFuaW1hdGlv
bk9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNLZXlmcmFtZUFu
aW1hdGlvbk9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMjgx
RkVBNUY2MTAwOEMwOENFIC8qIEpTSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSXRlcmF0aW9uQ29tcG9zaXRlT3Bl
cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMjkxRkVBNUY2
MjAwOEMwOENFIC8qIEpTS2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTS2V5ZnJhbWVBbmltYXRpb25PcHRpb25zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMkExRkVBNUY2MjAwOEMwOENFIC8q
IEpTS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxMjQ3RTJCMUZFQTVGNjMwMDhDMDhDRSAvKiBKU0NvbXBvc2l0ZU9wZXJhdGlvbi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NvbXBvc2l0ZU9wZXJhdGlv
bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMjQ3RTJDMUZFQTVGNjQwMDhD
MDhDRSAvKiBKU0l0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0l0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3MTI0N0UyRDFGRUE1RjY1MDA4QzA4Q0UgLyogSlNLZXlm
cmFtZUVmZmVjdE9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNLZXlmcmFtZUVmZmVjdE9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MTI0N0UyRTFGRUE1RjY2MDA4QzA4Q0UgLyogSlNDb21wb3NpdGVPcGVyYXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDb21wb3NpdGVPcGVyYXRpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMkYxRkVBNUY3RDAwOEMwOENFIC8q
IEtleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBLZXlmcmFtZUFuaW1hdGlvbk9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzEyNDdFMzAxRkVBNUY3RTAwOEMwOENFIC8qIEtleWZyYW1lRWZmZWN0T3B0aW9ucy5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMzExRkVBNUY3RTAwOEMwOENFIC8qIEl0
ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSXRl
cmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzEyNDdFMzIxRkVBNUY3RjAwOEMwOENFIC8qIEtleWZyYW1lRWZmZWN0T3B0aW9ucy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBLZXlmcmFtZUVmZmVjdE9wdGlvbnMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMzMxRkVBNUY4MDAwOEMwOENFIC8q
IEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzEyNDdFMzQxRkVBNUY4MDAwOEMwOENFIC8qIEtleWZyYW1lQW5pbWF0aW9u
T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gS2V5ZnJhbWVBbmltYXRpb25PcHRp
b25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyNDdFMzUxRkVBNUY4MTAw
OEMwOENFIC8qIENvbXBvc2l0ZU9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDb21wb3NpdGVPcGVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzEyNDdFMzYxRkVBNUY4MTAwOEMwOENFIC8qIENvbXBvc2l0ZU9wZXJhdGlvbi5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29tcG9zaXRlT3BlcmF0aW9uLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzEyQkU0N0ExRkU4NjQ0NzAwMjAzMUNDIC8qIEVmZmVjdFRpbWlu
Zy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRWZmZWN0VGltaW5nLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyQkU0N0MxRkU4NjQ0ODAwMjAzMUNDIC8qIEVmZmVjdFRp
bWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZmZlY3RUaW1pbmcuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyQkU0N0UxRkU4NjQ5RDAwMjAzMUNDIC8q
IFBsYXliYWNrRGlyZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBs
YXliYWNrRGlyZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxMkJFNDdG
MUZFODY0OUUwMDIwMzFDQyAvKiBQbGF5YmFja0RpcmVjdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gUGxheWJhY2tEaXJlY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MTJCRTQ4MTFGRTg2NUQ0MDAyMDMxQ0MgLyogRmlsbE1vZGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsbE1vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzEyQkU0ODIxRkU4NjVENTAwMjAzMUNDIC8qIEZpbGxNb2RlLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBGaWxsTW9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTcxMkJFNDg0MUZFODY3QzIwMDIwMzFDQyAvKiBKU0ZpbGxNb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTRmlsbE1vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTJC
RTQ4NTFGRTg2ODE4MDAyMDMxQ0MgLyogSlNGaWxsTW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0ZpbGxNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTcxMkJFNDg2MUZFODY4NTkwMDIwMzFDQyAvKiBKU1BsYXliYWNrRGlyZWN0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGxheWJhY2tEaXJlY3Rpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEyQkU0ODcxRkU4Njg1QTAwMjAzMUNDIC8qIEpTUGxh
eWJhY2tEaXJlY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNQbGF5YmFja0RpcmVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
MkRCQTQ3MjFGOEFENzkwMDhGMzZCMiAvKiBTY3JvbGxpbmdDb29yZGluYXRvclR5cGVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ0Nvb3JkaW5hdG9yVHlwZXMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEzMDE0MUQxREM5QzA4NjAwQ0EzQTg4
IC8qIHBpcC1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRo
ID0gInBpcC1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEzMTcx
MzIxRkJFNzhDNTAwRjc1OERFIC8qIENTU1Byb3BlcnR5QmxlbmRpbmdDbGllbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUHJvcGVydHlCbGVuZGluZ0NsaWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTMyNDQ0RjIwMTA5RDlCMDBBRTdGQjIgLyog
V2ViQW5pbWF0aW9uVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkFuaW1hdGlvblV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MTM0NDk2QjE0Njk0MUIzMDA3MjAzMTIgLyogU1ZHTGVuZ3RoQ29udGV4dC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdMZW5ndGhDb250ZXh0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzEzNDQ5NkMxNDY5NDFCMzAwNzIwMzEyIC8qIFNWR0xl
bmd0aENvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTGVuZ3Ro
Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTM5MjJCQzI1MThBQjcw
MDA1REIzQzIgLyogU3R5bGVhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlYWJsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTNFNzBBRjE3MzNFOEIzMDBBMjJEMDAgLyogcGx1
Z0lucy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IHBsdWdJbnMuanM7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTcxM0YxRDU3MjNERjFEN0QwMDNGNUVGQSAvKiBHZXRBbmltYXRpb25z
T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gR2V0QW5pbWF0aW9uc09wdGlvbnMu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTNGMUQ1OTIzREYxRDdEMDAzRjVF
RkEgLyogR2V0QW5pbWF0aW9uc09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gR2V0QW5pbWF0aW9uc09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzEzRjFENUIyM0RGMjU2MDAwM0Y1RUZBIC8qIEpTR2V0QW5pbWF0aW9uc09wdGlvbnMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNHZXRBbmltYXRpb25zT3B0aW9ucy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTNGMUQ1QzIzREYyNTYwMDAzRjVFRkEg
LyogSlNHZXRBbmltYXRpb25zT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0dldEFuaW1hdGlvbnNPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzE0MTMxNDcxREM5RDZBRjAwMzM2MTA3IC8qIGZ1bGxzY3JlZW4tc3VwcG9y
dC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJmdWxsc2NyZWVu
LXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTQ5NUREODIwMkIw
NkRDMDBBREZEMzQgLyogSlNFZmZlY3RUaW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNFZmZlY3RUaW1pbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3MTQ5NUREQTIwMkIwNkRFMDBBREZEMzQgLyogSlNFZmZlY3RUaW1pbmcuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFZmZlY3RUaW1pbmcuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE0QzdDNjAxRkRBRDI3OTAwRjJCRUUxIC8qIEFuaW1hdGlv
blBsYXliYWNrRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
QW5pbWF0aW9uUGxheWJhY2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTcxNEM3QzYyMUZEQUQyN0EwMEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFja0V2ZW50SW5pdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBbmltYXRpb25QbGF5YmFja0V2ZW50
SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTRDN0M2MzFGREFEMjdBMDBG
MkJFRTEgLyogQW5pbWF0aW9uUGxheWJhY2tFdmVudEluaXQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEFuaW1hdGlvblBsYXliYWNrRXZlbnRJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzE0QzdDNjQxRkRBRDI3QjAwRjJCRUUxIC8qIEFuaW1hdGlvblBsYXliYWNr
RXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFuaW1hdGlvblBsYXliYWNrRXZlbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTRDN0M2NTFGREFEMjdCMDBGMkJF
RTEgLyogQW5pbWF0aW9uUGxheWJhY2tFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBbmltYXRpb25QbGF5YmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTcxNEM3QzY4MUZEQURBRDQwMEYyQkVFMSAvKiBKU0FuaW1hdGlvblBsYXliYWNrRXZl
bnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQW5pbWF0
aW9uUGxheWJhY2tFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MTRDN0M2OTFGREFEQUQ1MDBGMkJFRTEgLyogSlNBbmltYXRpb25QbGF5YmFja0V2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQW5pbWF0aW9uUGxheWJhY2tF
dmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNEM3QzZBMUZEQURBRDUw
MEYyQkVFMSAvKiBKU0FuaW1hdGlvblBsYXliYWNrRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNBbmltYXRpb25QbGF5YmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTcxNEM3QzZCMUZEQURBRDUwMEYyQkVFMSAvKiBKU0FuaW1hdGlvblBs
YXliYWNrRXZlbnRJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQW5p
bWF0aW9uUGxheWJhY2tFdmVudEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NzE0RjVCMDUxREVFNUY3NDAwNzVCRDE3IC8qIGludmFsaWQtcGxhY2FyZC5qcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJpbnZhbGlkLXBsYWNhcmQuanMiOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTRGNUIwNjFERUU1RjhBMDA3NUJEMTcgLyogaW52
YWxpZC1wbGFjYXJkQDF4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9ICJpbnZhbGlkLXBsYWNhcmRAMXgucG5nIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE0RjVCMDcxREVFNUY4QTAwNzVCRDE3IC8q
IGludmFsaWQtcGxhY2FyZEAyeC5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBpbWFnZS5wbmc7IHBhdGggPSAiaW52YWxpZC1wbGFjYXJkQDJ4LnBu
ZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNEY1QjA4MURFRTVGOEEwMDc1QkQx
NyAvKiBpbnZhbGlkLXBsYWNhcmRAM3gucG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gaW1hZ2UucG5nOyBwYXRoID0gImludmFsaWQtcGxhY2FyZEAz
eC5wbmciOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTRGNUIwOTFERUU1RjlFMDA3
NUJEMTcgLyogaW52YWxpZC1wbGFjYXJkQDF4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBuZzsgcGF0aCA9ICJpbnZhbGlkLXBsYWNh
cmRAMXgucG5nIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE0RjVCMEExREVFNUY5
RTAwNzVCRDE3IC8qIGludmFsaWQtcGxhY2FyZEAyeC5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5wbmc7IHBhdGggPSAiaW52YWxpZC1w
bGFjYXJkQDJ4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNTJDRUMyMURE
MjIzNTMwMEZENTk2MiAvKiBpb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImlvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMu
anMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTUzNzlGRTE0NkJEOUQ2MDA4QkQ2
MTUgLyogU1ZHUGF0aERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHUGF0aERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTUzNzlG
RjE0NkJEOUQ2MDA4QkQ2MTUgLyogU1ZHUGF0aERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU1ZHUGF0aERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NzE1NTZDQTgxRjlGMDk5QjAwRTc4RDA4IC8qIEtleWZyYW1lRWZmZWN0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtleWZyYW1lRWZmZWN0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE1NTZDQUExRjlGMDk5QjAwRTc4RDA4IC8qIEtleWZyYW1l
RWZmZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEtleWZyYW1lRWZmZWN0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNTU2Q0FCMUY5RjA5OUMwMEU3OEQw
OCAvKiBLZXlmcmFtZUVmZmVjdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gS2V5ZnJhbWVF
ZmZlY3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTU1NkNCNjFGOUYwOUZD
MDBFNzhEMDggLyogSlNLZXlmcmFtZUVmZmVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0tleWZyYW1lRWZmZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNzE1NTZDQjcxRjlGMDlGQzAwRTc4RDA4IC8qIEpTS2V5ZnJhbWVFZmZlY3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNLZXlmcmFtZUVmZmVjdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTU2QkM5RjIxQ0EzNTA2MDA1MzQzOTcgLyogQmFz
aWNFZmZlY3RUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFzaWNF
ZmZlY3RUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE1N0UzRDExREMx
RUU0QjAwOTQ1NTBFIC8qIHNjcnViYmluZy1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBwYXRoID0gInNjcnViYmluZy1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzE1QUQ3MUQyMDUwNTEyNDAwRDU5MkRDIC8qIERlY2xhcmF0aXZl
QW5pbWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlY2xhcmF0aXZl
QW5pbWF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNUFENzFGMjA1MDUx
MjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTcxNURBNUQzMjAxQkI5MDIwMDJFRjJCMCAvKiBKU1dlYkFuaW1h
dGlvbkN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dl
YkFuaW1hdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNkZB
MEQ4MURCMjY1OTEwMDczMjNDQyAvKiBhaXJwbGF5LWJ1dHRvbi5jc3MgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
LmNzczsgcGF0aCA9ICJhaXJwbGF5LWJ1dHRvbi5jc3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3MTZGQTBEOTFEQjI2NTkxMDA3MzIzQ0MgLyogYWlycGxheS1idXR0b24uanMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAiYWlycGxheS1idXR0b24uanMi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBEQTFEQjI2NTkxMDA3MzIzQ0Mg
LyogYWlycGxheS1wbGFjYXJkLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gImFpcnBsYXktcGxhY2FyZC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTcxNkZBMERDMURCMjY1OTEwMDczMjNDQyAvKiBidXR0b24uY3NzICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5j
c3M7IHBhdGggPSBidXR0b24uY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZG
QTBERDFEQjI2NTkxMDA3MzIzQ0MgLyogYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBwYXRoID0gYnV0dG9uLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MTZGQTBERTFEQjI2NTkxMDA3MzIzQ0MgLyogYnV0dG9ucy1jb250YWluZXIuY3NzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC5jc3M7IHBhdGggPSAiYnV0dG9ucy1jb250YWluZXIuY3NzIjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEwREYxREIyNjU5MTAwNzMyM0NDIC8qIGJ1dHRvbnMt
Y29udGFpbmVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImJ1
dHRvbnMtY29udGFpbmVyLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEw
RTAxREIyNjU5MTAwNzMyM0NDIC8qIGZvcndhcmQtYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImZvcndhcmQtYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEwRTExREIyNjU5MTAwNzMyM0NDIC8qIGZ1bGxzY3JlZW4t
YnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImZ1bGxz
Y3JlZW4tYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEwRTQx
REIyNjU5MTAwNzMyM0NDIC8qIGljb24tc2VydmljZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
amF2YXNjcmlwdDsgcGF0aCA9ICJpY29uLXNlcnZpY2UuanMiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MTZGQTBFNTFEQjI2NTkxMDA3MzIzQ0MgLyogbGF5b3V0LWl0ZW0uanMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAibGF5b3V0LWl0ZW0uanMiOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBFNjFEQjI2NTkxMDA3MzIzQ0MgLyog
bGF5b3V0LW5vZGUuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAi
bGF5b3V0LW5vZGUuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBFNzFE
QjI2NTkxMDA3MzIzQ0MgLyogbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzLmNzcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQuY3NzOyBwYXRoID0gIm1hY29zLWlubGluZS1tZWRpYS1jb250cm9scy5jc3MiOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBFODFEQjI2NTkxMDA3MzIzQ0MgLyog
bWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZh
c2NyaXB0OyBwYXRoID0gIm1hY29zLWlubGluZS1tZWRpYS1jb250cm9scy5qcyI7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNkZBMEVBMURCMjY1OTEwMDczMjNDQyAvKiBtZWRpYS1j
b250cm9scy5jc3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LmNzczsgcGF0aCA9ICJtZWRpYS1jb250cm9scy5j
c3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBFQjFEQjI2NTkxMDA3MzIz
Q0MgLyogbWVkaWEtY29udHJvbHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7
IHBhdGggPSAibWVkaWEtY29udHJvbHMuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MTZGQTBFQzFEQjI2NTkxMDA3MzIzQ0MgLyogbXV0ZS1idXR0b24uanMgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAibXV0ZS1idXR0b24uanMiOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBFRDFEQjI2NTkxMDA3MzIzQ0MgLyogcGlwLWJ1dHRv
bi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJwaXAtYnV0dG9u
LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEwRUUxREIyNjU5MTAwNzMy
M0NDIC8qIHBpcC1wbGFjYXJkLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gInBpcC1wbGFjYXJkLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2
RkEwRUYxREIyNjU5MTAwNzMyM0NDIC8qIHBsYWNhcmQuY3NzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7
IHBhdGggPSBwbGFjYXJkLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2RkEw
RjAxREIyNjU5MTAwNzMyM0NDIC8qIHBsYWNhcmQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmph
dmFzY3JpcHQ7IHBhdGggPSBwbGFjYXJkLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MTZGQTBGMTFEQjI2NTkxMDA3MzIzQ0MgLyogcGxheS1wYXVzZS1idXR0b24uanMgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAicGxheS1wYXVzZS1idXR0b24uanMi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBGMjFEQjI2NTkxMDA3MzIzQ0Mg
LyogcmV3aW5kLWJ1dHRvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0
aCA9ICJyZXdpbmQtYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE2
RkEwRjMxREIyNjU5MTAwNzMyM0NDIC8qIHNjaGVkdWxlci5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuamF2YXNjcmlwdDsgcGF0aCA9IHNjaGVkdWxlci5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNzE2RkEwRjYxREIyNjU5MTAwNzMyM0NDIC8qIHNraXAtYmFjay1idXR0b24uanMg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAic2tpcC1iYWNrLWJ1dHRv
bi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNkZBMEY3MURCMjY1OTEwMDcz
MjNDQyAvKiBzbGlkZXIuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBzbGlkZXIuY3Nz
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBGODFEQjI2NTkxMDA3MzIzQ0Mg
Lyogc2xpZGVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gc2xp
ZGVyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZGQTBGQjFEQjI2NTkxMDA3
MzIzQ0MgLyogdGltZS1jb250cm9sLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBwYXRoID0gInRpbWUtY29udHJvbC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTcxNkZBMEZDMURCMjY1OTEwMDczMjNDQyAvKiB0aW1lLWxhYmVsLmNzcyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQuY3NzOyBwYXRoID0gInRpbWUtbGFiZWwuY3NzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzE2RkEwRkQxREIyNjU5MTAwNzMyM0NDIC8qIHRpbWUtbGFiZWwuanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAidGltZS1sYWJlbC5qcyI7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNkZBMEZFMURCMjY1OTEwMDczMjNDQyAvKiB0cmFja3Mt
YnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInRyYWNr
cy1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTcyOUY3OTIwRjNC
QTM5MDA4MDFDRTYgLyogRG9jdW1lbnRUaW1lbGluZU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IERvY3VtZW50VGltZWxpbmVPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzE3MjlGN0EyMEYzQkEzQTAwODAxQ0U2IC8qIERvY3VtZW50VGltZWxpbmVP
cHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERvY3VtZW50VGltZWxp
bmVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNzI5RjdDMjBGM0JB
QjkwMDgwMUNFNiAvKiBKU0RvY3VtZW50VGltZWxpbmVPcHRpb25zLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRG9jdW1lbnRUaW1lbGluZU9wdGlvbnMuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE3MjlGN0QyMEYzQkFCQTAwODAxQ0U2IC8qIEpTRG9jdW1l
bnRUaW1lbGluZU9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNEb2N1bWVudFRpbWVsaW5lT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTcxNzNERUJEMjYxNERGMDQwMDk3REYzMiAvKiBTdHlsZWFibGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVhYmxlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzE3N0UyNDYxREI4MEQyRjAwOTE5QTBCIC8qIG1lZGlhLWNvbnRy
b2xsZXItc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9
ICJtZWRpYS1jb250cm9sbGVyLXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MTc3RTI0NzFEQjgwRDJGMDA5MTlBMEIgLyogbXV0ZS1zdXBwb3J0LmpzICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIm11dGUtc3VwcG9ydC5qcyI7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNzdFMjQ4MURCODBEMkYwMDkxOUEwQiAvKiBzdGFy
dC1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInN0
YXJ0LXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTdGNjE4QjFF
NDNENjFBMDBGMzcwMjQgLyogY29udHJvbHMtYmFyLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBw
YXRoID0gImNvbnRyb2xzLWJhci5jc3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MTdGNjE4RTFFNDNENjFBMDBGMzcwMjQgLyogdGV4dC10cmFja3MuY3NzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dC5jc3M7IHBhdGggPSAidGV4dC10cmFja3MuY3NzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzE3RjkwNTcxREM0MEVENjAwMDZGNTIwIC8qIHZvbHVtZS1zdXBwb3J0LmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInZvbHVtZS1zdXBwb3J0LmpzIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE3RjkwNTgxREM0QkI2MDAwMDZGNTIwIC8q
IGFpcnBsYXktc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0
aCA9ICJhaXJwbGF5LXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MTgxQTE2OTI0NEYwRjJDMDA3RDhBMjQgLyogRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERvY3VtZW50VGltZWxpbmVzQ29udHJv
bGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTgxQTE2QjI0NEYwRjJEMDA3
RDhBMjQgLyogRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxODY3NTQzMURGMTAxQUQwMDMzRDdGMyAvKiBz
ZWVrLWJ1dHRvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJz
ZWVrLWJ1dHRvbi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxODY3NTQ0MURG
MTAxQzYwMDMzRDdGMyAvKiBzZWVrLWJhY2t3YXJkLXN1cHBvcnQuanMgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAic2Vlay1iYWNrd2FyZC1zdXBwb3J0LmpzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzE4Njc1NDUxREYxMDFDNjAwMzNEN0YzIC8qIHNl
ZWstZm9yd2FyZC1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gInNlZWstZm9yd2FyZC1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzE4Njc1NDYxREYxMDFDNjAwMzNEN0YzIC8qIHNlZWstc3VwcG9ydC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJzZWVrLXN1cHBvcnQuanMiOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MThDN0Y1NjFERDM4NUM1MDBCNzMzQzggLyogc3Rh
dHVzLWxhYmVsLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gInN0YXR1cy1sYWJlbC5j
c3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MThDN0Y1NzFERDM4NUM1MDBCNzMz
QzggLyogc3RhdHVzLWxhYmVsLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gInN0YXR1cy1sYWJlbC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
OTlCOTRBMjU1MUYwRTEwMDQ5NEE1NyAvKiBTdHlsZUNvbnRlbnRBbGlnbm1lbnREYXRhLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlQ29udGVudEFsaWdubWVu
dERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTk5Qjk0RjI1NTIxMDNF
MDA0OTRBNTcgLyogU3R5bGVTZWxmQWxpZ25tZW50RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZVNlbGZBbGlnbm1lbnREYXRhLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBMUI2MDcxREVFNUE4MjAwNzNCQ0ZCIC8qIGVuICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBuYW1lID0gZW47IHBhdGggPSAiZW4ubHByb2ovbW9kZXJuLW1lZGlhLWNvbnRy
b2xzLWxvY2FsaXplZC1zdHJpbmdzLmpzIjsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9Owor
CQk3MUEzRDE3RDI1NjJCODI0MDA2NEUyQTYgLyogSFRNTE1vZGVsRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MTW9kZWxFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTcxQTNEMTdGMjU2MkI4MjQwMDY0RTJBNiAvKiBIVE1MTW9kZWxF
bGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTW9kZWxFbGVtZW50LmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBM0QxODAyNTYyQjgyNTAwNjRFMkE2IC8q
IEhUTUxNb2RlbEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSFRNTE1vZGVsRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
QTNEMTgyMjU2MkJEREIwMDY0RTJBNiAvKiBKU0hUTUxNb2RlbEVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MTW9kZWxFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBM0QxODMyNTYyQkREQjAwNjRFMkE2IC8qIEpT
SFRNTE1vZGVsRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hU
TUxNb2RlbEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBNTdERUYx
NTRCRTI1QzAwMDlEMTIwIC8qIFNWR1BhdGhVdGlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUGF0aFV0aWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTcxQTU3REYwMTU0QkUyNUMwMDA5RDEyMCAvKiBTVkdQYXRoVXRpbGl0
aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhVdGlsaXRpZXMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBNTgxOTMyMzZGNDY2NDAwRDgxQTI0
IC8qIEtleWZyYW1lRWZmZWN0U3RhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gS2V5ZnJhbWVFZmZlY3RTdGFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MUE1ODE5NTIzNkY0NjY1MDBEODFBMjQgLyogS2V5ZnJhbWVFZmZlY3RTdGFjay5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBLZXlmcmFtZUVmZmVjdFN0YWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFBRUU0RUIyMUI1QTQ5QzAwRERCMDM2IC8q
IFRvdWNoQWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRvdWNoQWN0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxQjA0NjBBMUREM0MyRUUwMEVF
MTlDRiAvKiBzdGF0dXMtc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlw
dDsgcGF0aCA9ICJzdGF0dXMtc3VwcG9ydC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxQjI4NDI0MjAzQ0VDMEIwMDM2QUE1RCAvKiBKU0NTU0FuaW1hdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU0FuaW1hdGlvbi5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxQjI4NDI2MjAzQ0VDMEQwMDM2QUE1RCAvKiBKU0NT
U0FuaW1hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NTU0FuaW1h
dGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MUI1QUIyNDIxRjFEOUUyMDAz
NzZFNUMgLyogUG9pbnRlckNhcHR1cmVDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBvaW50ZXJDYXB0dXJlQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MUI1QUIyNTIxRjFEOUUzMDAzNzZFNUMgLyogUG9pbnRlckNhcHR1cmVD
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBvaW50
ZXJDYXB0dXJlQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
QzI1QUY1MjM5MkJGM0MwMEQ1QzA5OCAvKiBXZWJBbmltYXRpb25VdGlsaXRpZXMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViQW5pbWF0aW9uVXRpbGl0aWVzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFDMjlFMkUyMDNDRTc2QjAwOEYzNkQy
IC8qIENTU0FuaW1hdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDU1NBbmltYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MUMyOUUz
MDIwM0NFNzZCMDA4RjM2RDIgLyogQ1NTQW5pbWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENTU0FuaW1hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MUMyOUUzMTIwM0NFNzZDMDA4RjM2RDIgLyogQ1NTQW5pbWF0aW9uLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBDU1NBbmltYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3MUM1QkIxQjFGQjYxMUVBMDAwN0EyQUUgLyogQW5pbWF0YWJsZS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQW5pbWF0YWJsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcxQzkxNjA3MUQxNDgzQTMwMEFDQTQ3RCAvKiBVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVzZXJJbnRlcmZhY2VMYXlv
dXREaXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFDQUEzRDkyNjhE
MEJGOTAwRjI1NDEwIC8qIEhUTUxNb2RlbEVsZW1lbnRDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IEhUTUxNb2RlbEVsZW1lbnRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzFDRTJDNTEyMjA5REM3RjAwQzQ5NEJEIC8qIE1vdXNlRXZlbnRJT1MuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW91c2VFdmVudElPUy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxRDAyRDkwMURCNTVDNEUwMERENUNGNSAvKiBtYWlu
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gbWFpbi5qczsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFEMDJEOTIxREI1NUM0RTAwREQ1Q0Y1IC8qIG1l
ZGlhLWNvbnRyb2xsZXIuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGgg
PSAibWVkaWEtY29udHJvbGxlci5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
RDI1NTRGMURCOTAwMDIwMDA0RDc2QiAvKiBza2lwLWJhY2stc3VwcG9ydC5qcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJza2lwLWJhY2stc3VwcG9ydC5qcyI7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxRDQ3NEEyMjQ2MkU4MzQwMDJGMDEwNiAvKiBQ
bGF5Q2lyY2xlLnBkZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IGltYWdlLnBkZjsgcGF0aCA9IFBsYXlDaXJjbGUucGRmOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MUQ0NzRBMzI0NjJFODM0MDAyRjAxMDYgLyogSW52YWxpZENpcmNsZS5w
ZGYgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFn
ZS5wZGY7IHBhdGggPSBJbnZhbGlkQ2lyY2xlLnBkZjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzFENDc0QTQyNDYyRTgzNDAwMkYwMTA2IC8qIFNwaW5uZXJTcHJpdGVAMngucG5nICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1hZ2UucG5n
OyBwYXRoID0gIlNwaW5uZXJTcHJpdGVAMngucG5nIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzFENkFBNzExREE0RUFGNzAwQjIzOTY5IC8qIGFpcnBsYXktcGxhY2FyZEAxeC5wbmcg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5w
bmc7IHBhdGggPSAiYWlycGxheS1wbGFjYXJkQDF4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcxRDZBQTcyMURBNEVBRjcwMEIyMzk2OSAvKiBhaXJwbGF5LXBsYWNhcmRAMngu
cG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1h
Z2UucG5nOyBwYXRoID0gImFpcnBsYXktcGxhY2FyZEAyeC5wbmciOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MUQ2QUE3MzFEQTRFQUY3MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJk
QDN4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IGltYWdlLnBuZzsgcGF0aCA9ICJhaXJwbGF5LXBsYWNhcmRAM3gucG5nIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNzFENkFBODUxREE0RUFGNzAwQjIzOTY5IC8qIHBpcC1wbGFjYXJk
QDF4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IGltYWdlLnBuZzsgcGF0aCA9ICJwaXAtcGxhY2FyZEAxeC5wbmciOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MUQ2QUE4NjFEQTRFQUY3MDBCMjM5NjkgLyogcGlwLXBsYWNhcmRAMngu
cG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1h
Z2UucG5nOyBwYXRoID0gInBpcC1wbGFjYXJkQDJ4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcxRDZBQTg3MURBNEVBRjcwMEIyMzk2OSAvKiBwaXAtcGxhY2FyZEAzeC5wbmcg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5w
bmc7IHBhdGggPSAicGlwLXBsYWNhcmRAM3gucG5nIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzFENkFBOTIxREE0RUFGNzAwQjIzOTY5IC8qIGFpcnBsYXktcGxhY2FyZEAxeC5wbmcg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5w
bmc7IHBhdGggPSAiYWlycGxheS1wbGFjYXJkQDF4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcxRDZBQTkzMURBNEVBRjcwMEIyMzk2OSAvKiBhaXJwbGF5LXBsYWNhcmRAMngu
cG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1h
Z2UucG5nOyBwYXRoID0gImFpcnBsYXktcGxhY2FyZEAyeC5wbmciOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MUQ2QUFBQTFEQTRFQUY3MDBCMjM5NjkgLyogcGlwLXBsYWNhcmRAMXgu
cG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1h
Z2UucG5nOyBwYXRoID0gInBpcC1wbGFjYXJkQDF4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcxRDZBQUFCMURBNEVBRjcwMEIyMzk2OSAvKiBwaXAtcGxhY2FyZEAyeC5wbmcg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5w
bmc7IHBhdGggPSAicGlwLXBsYWNhcmRAMngucG5nIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzFEQ0I2RkYxNTY4MTk3NjAwODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1pvb21BbmRQYW4uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MURDQjcwMDE1NjgxOTc2MDA4NjIyNzEgLyog
SlNTVkdab29tQW5kUGFuLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZH
Wm9vbUFuZFBhbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MURFMjc5NDIwM0E5
QzFDMDA1OENCNTEgLyogd2F0Y2hvcy1tZWRpYS1jb250cm9scy5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ3YXRjaG9zLW1lZGlhLWNvbnRyb2xzLmpzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFFMjE4MzgxNzM1OUZCODAwNkU2RTREIC8qIFBs
dWdJbnNSZXNvdXJjZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IGZpbGVFbmNvZGluZyA9IDQ7IG5hbWUgPSBQbHVnSW5z
UmVzb3VyY2VzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1BsdWdJbnNSZXNvdXJj
ZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJNzFFMjE4MzkxNzM1
OUZCODAwNkU2RTREIC8qIFBsdWdJbnNSZXNvdXJjZXNEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBmaWxl
RW5jb2RpbmcgPSA0OyBuYW1lID0gUGx1Z0luc1Jlc291cmNlc0RhdGEuY3BwOyBwYXRoID0gRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9QbHVnSW5zUmVzb3VyY2VzRGF0YS5jcHA7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTcxRTJDNDI0MjFDOTM1MUQwMDI0RjhDOCAvKiBB
bmltYXRpb25FZmZlY3RQaGFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
bmltYXRpb25FZmZlY3RQaGFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MUVB
RENENjIyMDg3RTZEMDA2NUE0NUYgLyogUG9pbnRlcklELmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBvaW50ZXJJRC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MUVGQ0VENjIwMkIzODhDMDBEN0M0MTEgLyogQW5pbWF0aW9uRWZmZWN0LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBBbmltYXRpb25FZmZlY3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3MUVGQ0VENzIwMkIzODhEMDBEN0M0MTEgLyogQW5pbWF0aW9uRWZmZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFuaW1hdGlvbkVmZmVjdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3MUVGQ0VEQTIwMkIzODhGMDBEN0M0MTEgLyogQW5pbWF0
aW9uRWZmZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFuaW1h
dGlvbkVmZmVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxRUZDRURFMjAy
QjM5QzcwMEQ3QzQxMSAvKiBKU0FuaW1hdGlvbkVmZmVjdEN1c3RvbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FuaW1hdGlvbkVmZmVjdEN1c3RvbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxRjA1RjdFMjUxMjQ0MEMwMDcxRTY5MyAvKiBD
U1NQcm9wZXJ0eUFuaW1hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
U1NQcm9wZXJ0eUFuaW1hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MUYw
NUY3RjI1MTI0NDBEMDA3MUU2OTMgLyogQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MUY2RUU0MTI1NUVERjlDMDBGQzRDNUIgLyog
R3JpZFRyYWNrU2l6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBH
cmlkVHJhY2tTaXplLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFGOTM2Rjcx
REQ0Rjk5QjAwOTIyQ0M3IC8qIHRyYWNrcy1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBwYXRoID0gInRyYWNrcy1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNzFGRjg1MTgyMkEzRjgxRjAwNUQ1OTU5IC8qIE5hdmlnYXRvck1heFRv
dWNoUG9pbnRzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JNYXhUb3VjaFBv
aW50cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyMTQ0MzQ1MjI0MEM4QkEw
MEYxMkZGNyAvKiBTVkdBbmltYXRlZFZhbHVlUHJvcGVydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZH
QW5pbWF0ZWRWYWx1ZVByb3BlcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcy
MTQ0MzQ2MjI0MENBRDIwMEYxMkZGNyAvKiBTVkdWYWx1ZVByb3BlcnR5LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNWR1ZhbHVlUHJvcGVydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzIx
QjQ5NkYyNTEyQUMwNDAwRkU5RDNCIC8qIEltYWdlQml0bWFwQmFja2luZy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBJbWFnZUJpdG1hcEJhY2tpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3MjFCNDk3MDI1MTJBQzA0MDBGRTlEM0IgLyogSW1hZ2VCaXRtYXBCYWNraW5nLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEltYWdlQml0bWFwQmFja2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MjJBODE1QzIzOEZENTA1MDBDMDA1ODMgLyogQW5pbWF0aW9uRnJhbWVSYXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFuaW1hdGlvbkZyYW1lUmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MjQyQUM5NTI1NzU4RkUwMDA1QTlDRjEgLyogRGlzcGxheUxpc3RGbHVz
aElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzcGxheUxp
c3RGbHVzaElkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI0RUQz
MjkxQTNBN0U1NDAwRjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEVYVEJsZW5kTWluTWF4LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNzI0RUQzMkExQTNBN0U1NDAwRjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVYVEJsZW5kTWluTWF4Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyNEVEMzJCMUEzQTdFNTQwMEY1RjEzQyAvKiBF
WFRCbGVuZE1pbk1heC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRVhUQmxlbmRNaW5NYXgu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MjRFRDMyRjFBM0E4QjIzMDBGNUYx
M0MgLyogSlNFWFRCbGVuZE1pbk1heC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0VYVEJsZW5kTWluTWF4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzI0RUQzMzAxQTNBOEIyMzAwRjVGMTNDIC8qIEpTRVhUQmxlbmRNaW5NYXguaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFWFRCbGVuZE1pbk1heC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3MjRFRTU0RTFEQzdGMjVCMDBBOTFGRkIgLyogQWN0aXZpdHlT
dGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY3Rpdml0eVN0YXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyNEVFNTRGMURDN0YyNUIwMEE5MUZGQiAv
KiBBY3Rpdml0eVN0YXRlQ2hhbmdlT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQWN0aXZpdHlTdGF0ZUNoYW5nZU9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTcyNTIzOTZCMjU0Q0FEQzIwMEY1RkIxNSAvKiBOYXRpdmVJbWFnZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBOYXRpdmVJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcyNjZGMDEzMjI0MUJDRTIwMDgzMzk3NSAvKiBTVkdQcm9wZXJ0eUFuaW1hdG9y
RmFjdG9yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQcm9wZXJ0eUFuaW1hdG9yRmFjdG9yeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MjY2RjAxNDIyNDFCRkIyMDA4MzM5NzUgLyog
U1ZHUHJpbWl0aXZlUHJvcGVydHlBbmltYXRvckltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUHJp
bWl0aXZlUHJvcGVydHlBbmltYXRvckltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzI2NkYwMTUyMjQxQzA5ODAwODMzOTc1IC8qIFNWR1ByaW1pdGl2ZVByb3BlcnR5QW5pbWF0
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUHJpbWl0aXZlUHJvcGVydHlBbmltYXRvci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MjY2RjAxNjIyNDFDMEZFMDA4MzM5NzUgLyogU1ZH
UHJvcGVydHlBbmltYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQcm9wZXJ0eUFuaW1hdG9yLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyNjZGMDE4MjI0MjlDRkQwMDgzMzk3NSAv
KiBTVkdBbmltYXRpb25BZGRpdGl2ZVZhbHVlRnVuY3Rpb25JbXBsLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNWR0FuaW1hdGlvbkFkZGl0aXZlVmFsdWVGdW5jdGlvbkltcGwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3MjY2RjAyNTIyNDMwRjhDMDA4MzM5NzUgLyogU1ZHVmFs
dWVQcm9wZXJ0eUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVmFsdWVQcm9wZXJ0eUxpc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI2NkYwMjcyMjQzMTA5MjAwODMzOTc1IC8q
IFNWR1Byb3BlcnR5TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQcm9wZXJ0eUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI2NkYwMjgyMjQzMTIwMzAwODMzOTc1IC8qIFNW
R0FuaW1hdGlvbkFkZGl0aXZlTGlzdEZ1bmN0aW9uSW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdB
bmltYXRpb25BZGRpdGl2ZUxpc3RGdW5jdGlvbkltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNzI2NkYwMjkyMjQzMTJCMTAwODMzOTc1IC8qIFNWR0FuaW1hdGlvbkFkZGl0aXZl
TGlzdEZ1bmN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FuaW1hdGlvbkFkZGl0aXZlTGlzdEZ1
bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyNjZGMDJBMjI0MzE0OUIw
MDgzMzk3NSAvKiBTVkdBbmltYXRlZFByb3BlcnR5TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdB
bmltYXRlZFByb3BlcnR5TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MjZE
NTZFMTI1M0FFMDQzMDAwMkVGOTAgLyogUGxhdGZvcm1JbWFnZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQ
bGF0Zm9ybUltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyN0FGRUQxMUEy
RUE2QTAwMDA0NDJFOCAvKiBFWFRzUkdCLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEVYVHNSR0IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MjdB
RkVEMjFBMkVBNkEwMDAwNDQyRTggLyogRVhUc1JHQi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBFWFRzUkdCLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyN0FG
RUQzMUEyRUE2QTAwMDA0NDJFOCAvKiBFWFRzUkdCLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBFWFRzUkdCLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI5OUJDNjQyM0Q2
ODZBNjAwQ0M2ODgzIC8qIEFscGhhUHJlbXVsdGlwbGljYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QWxwaGFQcmVtdWx0aXBsaWNhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
Mjk5QkM2NjIzRDY4NkM2MDBDQzY4ODMgLyogUmVuZGVyaW5nTW9kZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJpbmdNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyOUQwNTJF
MjUzMTNFMjYwMDQyMjA5OCAvKiBSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTcyQkFDM0E0MjNFMTczMjcwMDhENzQxQyAvKiBJbWFnZUJ1ZmZlckJhY2tl
bmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1hZ2VCdWZmZXJC
YWNrZW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJCQUMzQTUyM0UxNzMy
ODAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQmFja2VuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJbWFnZUJ1ZmZlckJhY2tlbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzJCQUMzQTYyM0UxNzMyODAwOEQ3NDFDIC8qIFBsYXRmb3JtSW1hZ2VCdWZmZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1JbWFnZUJ1ZmZlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MkJBQzNBNzIzRTE3MzI4MDA4RDc0MUMgLyog
Q29uY3JldGVJbWFnZUJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
b25jcmV0ZUltYWdlQnVmZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyQkFD
M0E4MjNFMUU1NDMwMDhENzQxQyAvKiBJbWFnZUJ1ZmZlckNHQml0bWFwQmFja2VuZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbWFnZUJ1ZmZlckNHQml0bWFwQmFj
a2VuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyQkFDM0E5MjNFMUU1NDMw
MDhENzQxQyAvKiBJbWFnZUJ1ZmZlcklPU3VyZmFjZUJhY2tlbmQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1hZ2VCdWZmZXJJT1N1cmZhY2VCYWNrZW5kLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJCQUMzQUEyM0UxRTU0NDAwOEQ3NDFDIC8q
IEltYWdlQnVmZmVyQ0dCaXRtYXBCYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEltYWdlQnVmZmVyQ0dCaXRtYXBCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTcyQkFDM0FCMjNFMUU1NDQwMDhENzQxQyAvKiBJbWFnZUJ1ZmZlcklPU3VyZmFj
ZUJhY2tlbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VCdWZmZXJJ
T1N1cmZhY2VCYWNrZW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyQkFDM0FD
MjNFMUU1NDUwMDhENzQxQyAvKiBJbWFnZUJ1ZmZlckNHQmFja2VuZC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbWFnZUJ1ZmZlckNHQmFja2VuZC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyQkFDM0FEMjNFMUU1NDUwMDhENzQxQyAvKiBJbWFn
ZUJ1ZmZlckNHQmFja2VuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFn
ZUJ1ZmZlckNHQmFja2VuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MkMxOEEz
RjIzMEIwNEI3MDA2ODQ3QzcgLyogSW1hZ2VQYWludGluZ09wdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW1hZ2VQYWludGluZ09wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
NzJFNDE3NjExQTJFOEQyRjAwNEM1NjJBIC8qIEpTRVhUc1JHQi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0VYVHNSR0IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MkU0MTc2MjFBMkU4RDJGMDA0QzU2MkEgLyogSlNFWFRzUkdCLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRVhUc1JHQi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MkVBMDlGNzIzRkNDQjNEMDA4NTA0QTUgLyogRGlzcGxheUxpc3RJbWFn
ZUJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5TGlzdEltYWdlQnVmZmVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcyRUEwOUY5MjNGQ0NDNkEwMDg1MDRBNSAvKiBEaXNw
bGF5TGlzdERyYXdpbmdDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpc3BsYXlMaXN0RHJhd2lu
Z0NvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGMUFEOUYxQTM5MDRD
MzAwMDE0RTE4IC8qIEVYVEZyYWdEZXB0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBFWFRGcmFnRGVwdGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3MkYxQURBMDFBMzkwNEMzMDAwMTRFMTggLyogRVhURnJhZ0RlcHRoLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVYVEZyYWdEZXB0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3MkYxQURBMTFBMzkwNEMzMDAwMTRFMTggLyogRVhURnJhZ0RlcHRoLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFWFRGcmFnRGVwdGguaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3MkYxQURBMzFBMzkwQjlGMDAwMTRFMTggLyogSlNFWFRGcmFnRGVwdGgu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFWFRGcmFnRGVwdGgu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MkYxQURBNDFBMzkwQjlGMDAwMTRF
MTggLyogSlNFWFRGcmFnRGVwdGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNFWFRGcmFnRGVwdGguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGNjY3REYy
NjBDMjY0NDAwRUUzNkFEIC8qIERpYWdub3N0aWNMb2dnaW5nRG9tYWluLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IERpYWdub3N0aWNMb2dnaW5nRG9tYWluLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTcyRkIyMzg0MjI0OTdBRDQwMDdFNUFDNyAvKiBTVkdWYWx1ZVByb3BlcnR5QW5pbWF0b3JJ
bXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1ZhbHVlUHJvcGVydHlB
bmltYXRvckltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGQjIzODYyMjQ5
N0FENTAwN0U1QUM3IC8qIFNWR1ZhbHVlUHJvcGVydHlBbmltYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTVkdWYWx1ZVByb3BlcnR5QW5pbWF0b3IuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGQjIzODcyMjQ5N0IxNTAwN0U1QUM3IC8qIFNWR1ZhbHVl
UHJvcGVydHlMaXN0QW5pbWF0b3JJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNWR1ZhbHVlUHJvcGVydHlMaXN0QW5pbWF0b3JJbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTcyRkIyMzg4MjI0OTdCMTUwMDdFNUFDNyAvKiBTVkdWYWx1ZVByb3BlcnR5
TGlzdEFuaW1hdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1ZhbHVl
UHJvcGVydHlMaXN0QW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJG
QjIzOTYyMjRCMDdCOTAwN0U1QUM3IC8qIFNWR1BhdGhTZWdJbXBsLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhTZWdJbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTc1NTNDRkU2MTA4RjQ3M0YwMEVBMjgxRSAvKiBUaW1lbGluZVJlY29yZEZhY3Rv
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGltZWxpbmVSZWNvcmRGYWN0
b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc1NTNDRkU3MTA4RjQ3M0YwMEVB
MjgxRSAvKiBUaW1lbGluZVJlY29yZEZhY3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVGltZWxpbmVSZWNvcmRGYWN0b3J5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJNzU3OTNFODAwRDBDRTBCMzAwN0ZDMEFDIC8qIE1lc3NhZ2VFdmVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVzc2FnZUV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzU3OTNFODEwRDBDRTBCMzAwN0ZDMEFD
IC8qIE1lc3NhZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVz
c2FnZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc1NzkzRTgyMEQwQ0Uw
QjMwMDdGQzBBQyAvKiBNZXNzYWdlRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBN
ZXNzYWdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NTc5M0VDNjBE
MENFNzJEMDA3RkMwQUMgLyogSlNNZXNzYWdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVzc2FnZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzU3OTNFQzcwRDBDRTcyRDAwN0ZDMEFDIC8qIEpTTWVzc2FnZUV2ZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lc3NhZ2VFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NjMzQTcyNDEzRDhCMzNBMDA4NTAxQjYgLyogTG9j
YWxlVG9TY3JpcHRNYXBwaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExv
Y2FsZVRvU2NyaXB0TWFwcGluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NjMz
QTcyNTEzRDhCMzNBMDA4NTAxQjYgLyogTG9jYWxlVG9TY3JpcHRNYXBwaW5nLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExvY2FsZVRvU2NyaXB0TWFwcGluZy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc2OTQ1NjNBMTIxNEQ5N0MwMDA3Q0JBRSAv
KiBKU0RPTVRva2VuTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0RPTVRva2VuTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc2OTQ1
NjNCMTIxNEQ5N0MwMDA3Q0JBRSAvKiBKU0RPTVRva2VuTGlzdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0RPTVRva2VuTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3NkNERDJFQzExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlN
ZW51TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc2Q0REMkVEMTEwM0RB
NjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmlsaXR5TWVudUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eU1lbnVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTc2Q0REMkVFMTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmlsaXR5TWVu
dUxpc3RQb3B1cC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nl
c3NpYmlsaXR5TWVudUxpc3RQb3B1cC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTc2Q0REMkVGMTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmlsaXR5TWVudUxpc3RQb3B1cC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5TWVudUxpc3RQ
b3B1cC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NkNERDJGMDExMDNEQTY2MDA2
ODA1MjEgLyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0T3B0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlNZW51TGlzdE9wdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc2Q0REMkYxMTEwM0RBNjYwMDY4MDUyMSAvKiBB
Y2Nlc3NpYmlsaXR5TWVudUxpc3RPcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQWNjZXNzaWJpbGl0eU1lbnVMaXN0T3B0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTc2RkMyQjA4MTIzNzBEQTAwMDZBOTkxQSAvKiBET01Ub2tlbkxpc3QuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NVG9rZW5MaXN0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzZGQzJCMDkxMjM3MERBMDAwNkE5OTFBIC8qIERP
TVRva2VuTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01Ub2tlbkxp
c3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzZGQzJCMEExMjM3MERBMDAwNkE5
OTFBIC8qIERPTVRva2VuTGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NVG9rZW5M
aXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzcyODY5NEIxNEY4ODgyNTAw
RjQ4NERDIC8qIEVYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NzI4Njk0QzE0Rjg4ODI1MDBGNDg0REMgLyog
RVhUVGV4dHVyZUZpbHRlckFuaXNvdHJvcGljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEVYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3NzI4Njk0RDE0Rjg4ODI1MDBGNDg0REMgLyogRVhUVGV4dHVyZUZpbHRlckFu
aXNvdHJvcGljLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFWFRUZXh0dXJlRmlsdGVyQW5p
c290cm9waWMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NzI4Njk4MTE0RkQ5
QURBMDBGNDg0REMgLyogSlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9w
aWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3NzI4Njk4MjE0RkQ5QURBMDBG
NDg0REMgLyogSlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzc3OUJEOTExRjJGREJDRTAwQzIxNDE3IC8qIEpTVmlz
dWFsVmlld3BvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNW
aXN1YWxWaWV3cG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3NzlCRDky
MUYyRkRCRjcwMEMyMTQxNyAvKiBKU1Zpc3VhbFZpZXdwb3J0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVmlzdWFsVmlld3BvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNzc3OUJEOTMxRjJGREZDQjAwQzIxNDE3IC8qIFZpc3VhbFZpZXdwb3J0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpc3VhbFZpZXdwb3J0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3NzlCRDk0MUYzMTE3QjcwMEMyMTQxNyAvKiBWaXN1YWxW
aWV3cG9ydC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBWaXN1YWxW
aWV3cG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3QTE3QTZFMTJGMjgx
ODIwMDRFMDJGNiAvKiBPRVNWZXJ0ZXhBcnJheU9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBPRVNWZXJ0ZXhBcnJheU9iamVjdC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTc3QTE3QTZGMTJGMjgxODIwMDRFMDJGNiAvKiBPRVNWZXJ0ZXhB
cnJheU9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPRVNWZXJ0ZXhB
cnJheU9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0ExN0E3MDEyRjI4
MTgyMDA0RTAyRjYgLyogT0VTVmVydGV4QXJyYXlPYmplY3QuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IE9FU1ZlcnRleEFycmF5T2JqZWN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzdBMTdBNzQxMkYyODY0MjAwNEUwMkY2IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RP
RVMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xWZXJ0ZXhB
cnJheU9iamVjdE9FUy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3QTE3QTc1
MTJGMjg2NDIwMDRFMDJGNiAvKiBXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzdBMTdBNzYxMkYyODY0MjAwNEUwMkY2IC8qIFdl
YkdMVmVydGV4QXJyYXlPYmplY3RPRVMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdlYkdM
VmVydGV4QXJyYXlPYmplY3RPRVMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
N0ExN0E3QTEyRjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlc0dMLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdyYXBoaWNzVHlwZXNHTC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3N0ExN0FBMjEyRjI4QjJBMDA0RTAyRjYgLyogSlNPRVNWZXJ0ZXhBcnJh
eU9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU09FU1Zl
cnRleEFycmF5T2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzdBMTdB
QTMxMkYyOEIyQTAwNEUwMkY2IC8qIEpTT0VTVmVydGV4QXJyYXlPYmplY3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNPRVNWZXJ0ZXhBcnJheU9iamVjdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3N0FBRDY4MzFFQ0ZCNjYyMDBCRkEyRDEgLyogQ3JlZGVu
dGlhbENyZWF0aW9uT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3JlZGVudGlh
bENyZWF0aW9uT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3QUFE
Njg1MUVDRkJEMzkwMEJGQTJEMSAvKiBDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzdDMTNGMDQyMTY1NjU4QTAwMkQ5QzVGIC8qIEpTSW50ZXJzZWN0aW9uT2Jz
ZXJ2ZXJFbnRyeUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ludGVyc2VjdGlvbk9i
c2VydmVyRW50cnlDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0NB
QUFFRjFGMkZDMzUwMDBDQjVDOEQgLyogVmlzdWFsVmlld3BvcnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFZpc3VhbFZpZXdwb3J0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzdENTBGRkExRUQ0RUM3ODAwREE0Qzg3IC8qIENyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3JlZGVudGlhbFJlcXVlc3RPcHRpb25zLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzdENTBGRkIxRUQ0RjE2QzAwREE0Qzg3IC8q
IENyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNzdENTBGRkMxRUQ0RjcwQzAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbENyZWF0aW9uT3B0
aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NyZWRlbnRp
YWxDcmVhdGlvbk9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0Q1
MEZGRDFFRDRGNzBDMDBEQTRDODcgLyogSlNDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3JlZGVudGlhbENyZWF0aW9uT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0Q1MEZGRTFFRDRGNzBDMDBEQTRD
ODcgLyogSlNDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3N0Q1MEZGRjFFRDRGNzBDMDBEQTRDODcgLyogSlNDcmVk
ZW50aWFsUmVxdWVzdE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJNzdENTEwMTYxRUQ2MDIxQjAwREE0Qzg3IC8qIENyZWRlbnRpYWxzQ29udGFpbmVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyZWRlbnRpYWxzQ29udGFpbmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3RDUxMDE4MUVENzE1OTkwMERBNEM4NyAvKiBD
cmVkZW50aWFsc0NvbnRhaW5lci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDcmVkZW50aWFsc0NvbnRhaW5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTc3RDUxMDFBMUVENzIyQjUwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxzQ29udGFpbmVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3JlZGVudGlhbHNDb250
YWluZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0Q1MTAxQjFFRDcyMkI1
MDBEQTRDODcgLyogSlNDcmVkZW50aWFsc0NvbnRhaW5lci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0NyZWRlbnRpYWxzQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTc3RDUxMDIzMUVENzRCNTUwMERBNEM4NyAvKiBKU05hdmlnYXRvckNyZWRl
bnRpYWxzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTmF2aWdh
dG9yQ3JlZGVudGlhbHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3N0Q1MTAy
NDFFRDc0QjU1MDBEQTRDODcgLyogSlNOYXZpZ2F0b3JDcmVkZW50aWFscy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU05hdmlnYXRvckNyZWRlbnRpYWxzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTc3RUY2MkYxMTJGOURCNzQwMEM3N0JEMiAvKiBKU1dlYkdM
VmVydGV4QXJyYXlPYmplY3RPRVMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNXZWJHTFZlcnRleEFycmF5T2JqZWN0T0VTLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzdFRjYyRjIxMkY5REI3NDAwQzc3QkQyIC8qIEpTV2ViR0xWZXJ0ZXhBcnJh
eU9iamVjdE9FUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dlYkdMVmVy
dGV4QXJyYXlPYmplY3RPRVMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzlBQzky
MTYxMDk5NDVDODAwMjEyNjZFIC8qIEpTQ29tcG9zaXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NvbXBvc2l0aW9uRXZlbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3OUFDOTIxNzEwOTk0NUM4MDAyMTI2NkUgLyogSlNDb21w
b3NpdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ29tcG9z
aXRpb25FdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3OUYyRjU5RTEwOTE5
MzlBMDAwRDg3Q0IgLyogQ29tcG9zaXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDb21wb3NpdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJNzlGMkY1OUYxMDkxOTM5QTAwMEQ4N0NCIC8qIENvbXBvc2l0aW9uRXZlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29tcG9zaXRpb25FdmVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3OUYyRjVBMDEwOTE5MzlBMDAwRDg3Q0IgLyog
Q29tcG9zaXRpb25FdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29tcG9zaXRpb25F
dmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBMDlDRUVCMUYwMUNDOTMw
MEU5M0JEQiAvKiBGaWxlTW9uaXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlTW9uaXRv
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBMDlDRUVDMUYwMUNDOTMwMEU5
M0JEQiAvKiBGaWxlTW9uaXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlTW9uaXRvci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QTA5Q0VGMDFGMDFEMUY3MDBFOTNCREIgLyogRmls
ZU1vbml0b3JDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZpbGVNb25pdG9yQ29jb2Eu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBMEU3NzBCMTBDMDBBODgwMEEwMjc2
RSAvKiBJbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0EwRTc3MEMxMEMwMEE4ODAwQTAyNzZFIC8qIEluc3BlY3RvckZyb250ZW5k
SG9zdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0EwRTc3MEQxMEMwMEE4ODAw
QTAyNzZFIC8qIEluc3BlY3RvckZyb250ZW5kSG9zdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0EwRTc3MUMxMEMwMERCMTAwQTAyNzZFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW5zcGVjdG9yRnJvbnRl
bmRIb3N0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0EwRTc3MUQxMEMwMERC
MTAwQTAyNzZFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdBMjI3MzFFMjBDOUY5RDkwMERCMURFRiAvKiBXZWJLaXROU0ltYWdl
RXh0cmFzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViS2l0TlNJbWFnZUV4dHJhcy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0EyMjczMUYyMEM5RjlEQTAwREIxREVGIC8q
IFdlYktpdE5TSW1hZ2VFeHRyYXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0TlNJbWFnZUV4dHJh
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QTI5RjU3MTE4QzY5NTE0MDA0RDBG
ODEgLyogT3V0T2ZCYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBPdXRPZkJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdBM0VCRUFBMjFCRjA1NEMwMDBEMDQzRCAvKiBKU1NWR1ZpZXdT
cGVjQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHVmlld1NwZWNDdXN0b20uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QTQ1MDMyRDE4REI3MTcyMDAzNzdCMzQg
LyogQnVmZmVyZWRMaW5lUmVhZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEJ1ZmZlcmVkTGluZVJlYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdBNDUwMzJFMThEQjcxNzIwMDM3N0IzNCAvKiBCdWZmZXJlZExpbmVSZWFkZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnVmZmVyZWRMaW5lUmVhZGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBNTQ4NTdEMTRFMDJENTEwMDZBRTA1QSAvKiBJbnNw
ZWN0b3JIaXN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElu
c3BlY3Rvckhpc3RvcnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QTU0ODU3
RTE0RTAyRDUxMDA2QUUwNUEgLyogSW5zcGVjdG9ySGlzdG9yeS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JIaXN0b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdBNTQ4ODE1MTRFNDMyQTEwMDZBRTA1QSAvKiBET01QYXRjaFN1cHBvcnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NUGF0Y2hTdXBwb3J0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBNTQ4ODE2MTRFNDMyQTEwMDZBRTA1QSAvKiBET01Q
YXRjaFN1cHBvcnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9N
UGF0Y2hTdXBwb3J0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0E1NTE1RjMx
OTE4MzBBMzAwOTY4N0QyIC8qIFlvdVR1YmVQbHVnaW5SZXBsYWNlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBZb3VUdWJlUGx1Z2luUmVwbGFjZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0E1NTE1RjQxOTE4MzBBMzAwOTY4N0QyIC8qIFlvdVR1
YmVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBZb3VUdWJlUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QTU2OTk2RTIwODZDNjE4MDAwRTA0MzMgLyogQ29va2llUmVxdWVzdEhlYWRlckZp
ZWxkUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29va2llUmVxdWVz
dEhlYWRlckZpZWxkUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0E2NzRC
RDkwRjlFQkY0RTAwNkNGMDk5IC8qIFBhZ2VHcm91cExvYWREZWZlcnJlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYWdlR3JvdXBMb2FkRGVmZXJyZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QTY3NEJEQTBGOUVCRjRFMDA2Q0YwOTkgLyog
UGFnZUdyb3VwTG9hZERlZmVycmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBhZ2VHcm91cExvYWREZWZlcnJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
QTkyOUNBMTFDNTk4Mzc4MDA0REYyMjYgLyogUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0E5MjlDQTIxQzU5ODM3ODAwNERG
MjI2IC8qIFJlc291cmNlTG9hZFN0YXRpc3RpY3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QTkzODY4MjE4RENDMTQ1MDBCODI2M0QgLyogVlRUU2Nhbm5lci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBWVFRTY2FubmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0E5Mzg2ODMxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5u
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVlRUU2Nhbm5lci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGls
ZUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGls
ZUNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUEzQTY5NjE5
NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gVGlsZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0FBM0E2OTcxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVHcmlkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRpbGVHcmlkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0FBM0E2OTgxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVHcmlkLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRpbGVHcmlkLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdBQTNBNjlEMTk0QjU5QjYwMDFDQkQyNCAvKiBMYXllclBvb2wuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5ZXJQb29sLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FBM0E2OUUxOTRCNTlCNjAwMUNCRDI0IC8qIExheWVy
UG9vbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXllclBvb2wuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FBM0E2QTExOTRCNUMyMjAwMUNCRDI0IC8qIFRp
bGVDb3ZlcmFnZU1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBU
aWxlQ292ZXJhZ2VNYXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUEzQTZB
MjE5NEI1QzIyMDAxQ0JEMjQgLyogVGlsZUNvdmVyYWdlTWFwLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFRpbGVDb3ZlcmFnZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QUFCQTI1NzE0QkM2MTMzMDBBQTlBMTEgLyogRE9NRWRpdG9yLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTUVkaXRvci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdBQUJBMjU4MTRCQzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRWRpdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBREU3MjI1MTBDQkJCOUIwMDZCM0IzQSAvKiBDb250ZXh0
TWVudVByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRleHRN
ZW51UHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FFMzM1RUYxQUNC
MDlFMjAwRTQwMUVGIC8qIFdoZWVsRXZlbnRUZXN0TW9uaXRvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXaGVlbEV2ZW50VGVzdE1vbml0b3IuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QUUzMzVGMDFBQ0IwOUUyMDBFNDAxRUYgLyogV2hlZWxF
dmVudFRlc3RNb25pdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdoZWVs
RXZlbnRUZXN0TW9uaXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUU2Qzkz
NzFCRTBDNUM4MDBFMTlFMDMgLyogTWFpblRocmVhZFNoYXJlZFRpbWVyQ0YuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWFpblRocmVhZFNoYXJlZFRpbWVyQ0YuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUU2QzkzOTFCRTBDNjAxMDBFMTlFMDMg
LyogTWFpblRocmVhZFNoYXJlZFRpbWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IE1haW5UaHJlYWRTaGFyZWRUaW1lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdBRTZDOTNBMUJFMEM2MDEwMEUxOUUwMyAvKiBNYWluVGhyZWFkU2hhcmVkVGlt
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWFpblRocmVhZFNoYXJlZFRp
bWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBRjlCMUZDMThDRkIyREYwMEM2
NEJFRiAvKiBWVFRSZWdpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gVlRUUmVnaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGOUIxRkQx
OENGQjJERjAwQzY0QkVGIC8qIFZUVFJlZ2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBWVFRSZWdpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGOUIx
RkUxOENGQjJERjAwQzY0QkVGIC8qIFZUVFJlZ2lvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gVlRUUmVnaW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGOUIxRkYx
OENGQjJERjAwQzY0QkVGIC8qIFZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVlRUUmVnaW9uTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdBRjlCMjAwMThDRkIyREYwMEM2NEJFRiAvKiBWVFRSZWdpb25MaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGOUIyMDExOENGQjJERjAwQzY0QkVGIC8qIFZUVFJlZ2lv
bkxpc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZUVFJlZ2lvbkxpc3QuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUY5QjIwODE4Q0ZCNUYyMDBDNjRCRUYgLyogSlNW
VFRSZWdpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNWVFRS
ZWdpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUY5QjIwOTE4Q0ZCNUYy
MDBDNjRCRUYgLyogSlNWVFRSZWdpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNWVFRSZWdpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGOUIyMEEx
OENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QUY5QjIwQjE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9uTGlzdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QjEwMzM5QTI1NDk3MjAwMDBDOEMxQUMgLyog
R3JhcGhpY3NDb250ZXh0R0xDVkFOR0xFLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNz
Q29udGV4dEdMQ1ZBTkdMRS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdCMTAz
MzlDMjU0OTcyMDEwMEM4QzFBQyAvKiBHcmFwaGljc0NvbnRleHRHTENWQU5HTEUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gR3JhcGhpY3NDb250ZXh0R0xDVkFOR0xFLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdCMTAzMzlEMjU0OTcyMDEwMEM4QzFBQyAvKiBHcmFwaGljc0NvbnRleHRHTENW
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMQ1YuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0I0NUFCNTQyNUZCQTlERDAwRkQyN0Y0IC8qIEdyYXBoaWNzQ29udGV4
dEdMQU5HTEVFR0xVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
R3JhcGhpY3NDb250ZXh0R0xBTkdMRUVHTFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QjY0QzBCNDI1NEMzQjE2MDAwNkI0QUYgLyogUmVtb3RlR3JhcGhpY3NDb250
ZXh0R0xQcm94eUJhc2VDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFJlbW90ZUdyYXBo
aWNzQ29udGV4dEdMUHJveHlCYXNlQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdCNkRDODE1MjU3MTJFOTEwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRHTElPU3VyZmFj
ZVN3YXBDaGFpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFw
aGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdCNkRDODE3MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRleHRHTElP
U3VyZmFjZVN3YXBDaGFpbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFw
aGljc0NvbnRleHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QjczMTFGQTI1QzA5MkI3MDAzQjI3OTYgLyogU2NvcGVkSGlnaFBlcmZvcm1hbmNl
R1BVUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY29wZWRIaWdo
UGVyZm9ybWFuY2VHUFVSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdC
Nzc0QzYyMjVGQjkzNTUwMDkxMzk1RiAvKiBHcmFwaGljc0NvbnRleHRHTEFOR0xFRUdMVXRpbGl0
aWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNzQ29udGV4dEdMQU5HTEVFR0xVdGls
aXRpZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QjkwNDE2RTI1NTAxMTA5
MDA2RUVCOEMgLyogUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVtb3RlR3JhcGhpY3NDb250ZXh0R0xQcm94eUJhc2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0JCMzRBMTYyNTM0NUNCMjAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4
dEdMQU5HTEVVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3Jh
cGhpY3NDb250ZXh0R0xBTkdMRVV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3QkIzNEE0NTI1Mzc3NkM2MDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0R0xJbWFnZUV4
dHJhY3Rvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9y
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdCQjM0QTQ3MjUzNzc2QzcwMDAyOUQw
OCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QkI2ODBCNzI1QkExQkUzMDAyQjg3MzggLyogR3JhcGhpY3NDaGVja3NN
YWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDaGVj
a3NNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QkI2ODBCODI1QkExQkU0
MDAyQjg3MzggLyogR3JhcGhpY3NDaGVja3NNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gR3JhcGhpY3NDaGVja3NNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0JFNzI2NUIyNTc2M0I4RDAwRTg1RDk4IC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHlCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJv
eHlCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MwMTFGM0QyNEZBRDM2
MDAwNUJFRjEwIC8qIFNldHRpbmdzLmNwcC5lcmIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2V0dGluZ3MuY3BwLmVyYjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MwMTFGM0UyNEZBRDM2MDAwNUJFRjEwIC8qIElu
dGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuY3BwLmVyYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJbnRlcm5hbFNldHRpbmdzR2Vu
ZXJhdGVkLmNwcC5lcmI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMDExRjNGMjRG
QUQzNjAwMDVCRUYxMCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmlkbC5lcmIgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
SW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5pZGwuZXJiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QzAxMUY0MDI0RkFEMzYwMDA1QkVGMTAgLyogU2V0dGluZ3MuaC5lcmIgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
U2V0dGluZ3MuaC5lcmI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMDExRjQxMjRG
QUQzNjAwMDVCRUYxMCAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJhdGVkLmguZXJiICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElu
dGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaC5lcmI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDMDExRjQzMjRGQUQzNjEwMDVCRUYxMCAvKiBHZW5lcmF0ZVNldHRpbmdzLnJiICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGluZGVudFdpZHRoID0gMjsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0LnNjcmlwdC5ydWJ5OyBuYW1lID0gR2VuZXJhdGVTZXR0aW5ncy5yYjsgcGF0aCA9
IFNjcmlwdHMvR2VuZXJhdGVTZXR0aW5ncy5yYjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0MwMTdDM0QyNDk2OUYxMzAwREMwQzAyIC8qIE5hdmlnYXRvclBsdWdpbnMuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IE5hdmlnYXRvclBsdWdpbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzAy
MzIwMDI1MUE1MjQ4MDBCQTdCQjYgLyogRG9jdW1lbnRTVkcuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9j
dW1lbnRTVkcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MwMjMyMDEyNTFBNTI0
ODAwQkE3QkI2IC8qIERvY3VtZW50U1ZHLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50
U1ZHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MwMjlDNkQyNDkzQzhGODAw
MjY4MjA0IC8qIENvbG9yVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29sb3JUeXBlcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzBDRUYyODFFNEE1NDJDMDA4REVCODAgLyogSlNE
T01Db25zdHJ1Y3RvckJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNE
T01Db25zdHJ1Y3RvckJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MwQ0VG
MjkxRTRBNTREMzAwOERFQjgwIC8qIEpTRE9NQ29uc3RydWN0b3JXaXRoRG9jdW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db25zdHJ1Y3RvcldpdGhEb2N1bWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzBDRUYyQTFFNEE1NTZDMDA4REVC
ODAgLyogSlNET01CdWlsdGluQ29uc3RydWN0b3JCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yQmFzZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzBDRUYyQjFFNEE1NUMzMDA4REVCODAgLyogSlNET01Db25zdHJ1
Y3Rvck5vdENvbnN0cnVjdGFibGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNET01Db25zdHJ1Y3Rvck5vdENvbnN0cnVjdGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0MwQ0VGMkMxRTRBNTY0RDAwOERFQjgwIC8qIEpTRE9NTGVnYWN5RmFjdG9yeUZ1
bmN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NTGVnYWN5RmFj
dG9yeUZ1bmN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMENFRjJEMUU0
QTU2QzUwMDhERUI4MCAvKiBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUJ1aWx0aW5Db25zdHJ1Y3Rvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3QzBDRUYyRTFFNEE1ODMyMDA4REVCODAgLyogSlNET01CdWls
dGluQ29uc3RydWN0b3JCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRE9NQnVpbHRpbkNvbnN0cnVjdG9yQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDMENFRjJGMUU0QTU4QUQwMDhERUI4MCAvKiBKU0RPTUNvbnN0cnVjdG9yQmFz
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUNvbnN0cnVj
dG9yQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMENFRjMwMUU0QTU4
RjEwMDhERUI4MCAvKiBKU0RPTUNvbnN0cnVjdG9yV2l0aERvY3VtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NQ29uc3RydWN0b3JXaXRoRG9jdW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE4NDNGQjFDOEI3MjgzMDAyRUI5
NzMgLyogQXV0b2ZpbGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
QXV0b2ZpbGwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE4NDNGQzFDOEI3
MjgzMDAyRUI5NzMgLyogQXV0b2ZpbGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXV0b2ZpbGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCOUExRjVF
MEVBNzAwODhGM0U2IC8qIENhbnZhc0RyYXdJbWFnZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gQ2FudmFzRHJhd0ltYWdlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0Mx
OTNCOUMxRjVFMEVBODAwODhGM0U2IC8qIENhbnZhc0xpbmVKb2luLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBDYW52YXNMaW5lSm9pbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDMTkzQjlEMUY1RTBFQTkwMDg4RjNFNiAvKiBDYW52YXNQYXRoRHJhd2luZ1N0eWxlcy5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2FudmFzUGF0aERyYXdpbmdTdHlsZXMuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0I5RTFGNUUwRUE5MDA4OEYzRTYgLyog
Q2FudmFzUmVjdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2FudmFzUmVjdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQjlGMUY1RTBFQUEwMDg4RjNFNiAvKiBD
YW52YXNMaW5lSm9pbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNM
aW5lSm9pbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBMDFGNUUwRUFB
MDA4OEYzRTYgLyogQ2FudmFzRmlsbFN0cm9rZVN0eWxlcy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gQ2FudmFzRmlsbFN0cm9rZVN0eWxlcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDMTkzQkExMUY1RTBFQUIwMDg4RjNFNiAvKiBDYW52YXNGaWxsUnVsZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNGaWxsUnVsZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBMjFGNUUwRUFCMDA4OEYzRTYgLyogQ2FudmFzSW1h
Z2VEYXRhLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDYW52YXNJbWFnZURhdGEuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBMzFGNUUwRUFDMDA4OEYzRTYgLyog
Q2FudmFzVGV4dEFsaWduLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbnZh
c1RleHRBbGlnbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBNDFGNUUw
RUFEMDA4OEYzRTYgLyogQ2FudmFzVGV4dEJhc2VsaW5lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENhbnZhc1RleHRCYXNlbGluZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QzE5M0JBNTFGNUUwRUFFMDA4OEYzRTYgLyogQ2FudmFzRmlsbFJ1bGUuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IENhbnZhc0ZpbGxSdWxlLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0MxOTNCQTYxRjVFMEVBRTAwODhGM0U2IC8qIENhbnZhc0RyYXdQYXRo
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDYW52YXNEcmF3UGF0aC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQkE3MUY1RTBFQUYwMDg4RjNFNiAvKiBQYXRoMkQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGF0aDJELmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCQTgxRjVFMEVBRjAwODhGM0U2IC8qIElt
YWdlU21vb3RoaW5nUXVhbGl0eS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSW1hZ2VTbW9v
dGhpbmdRdWFsaXR5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCQTkx
RjVFMEVCMDAwODhGM0U2IC8qIENhbnZhc1RleHREcmF3aW5nU3R5bGVzLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBDYW52YXNUZXh0RHJhd2luZ1N0eWxlcy5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDMTkzQkFBMUY1RTBFQjEwMDg4RjNFNiAvKiBDYW52YXNDb21wb3Np
dGluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2FudmFzQ29tcG9zaXRpbmcuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBQjFGNUUwRUIxMDA4OEYzRTYgLyog
UGF0aDJELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhdGgyRC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBQzFGNUUwRUIyMDA4OEYzRTYgLyogQ2Fu
dmFzRGlyZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDYW52YXNEaXJlY3Rpb24u
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JBRDFGNUUwRUIzMDA4OEYz
RTYgLyogQ2FudmFzU2hhZG93U3R5bGVzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDYW52
YXNTaGFkb3dTdHlsZXMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JB
RTFGNUUwRUI0MDA4OEYzRTYgLyogQ2FudmFzVGV4dEFsaWduLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBDYW52YXNUZXh0QWxpZ24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzE5M0JBRjFGNUUwRUI0MDA4OEYzRTYgLyogSW1hZ2VTbW9vdGhpbmdRdWFsaXR5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlU21vb3RoaW5nUXVhbGl0eS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JCMDFGNUUwRUI1MDA4OEYzRTYgLyog
Q2FudmFzSW1hZ2VTbW9vdGhpbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENhbnZhc0lt
YWdlU21vb3RoaW5nLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCQjEx
RjVFMEVCNTAwODhGM0U2IC8qIENhbnZhc0xpbmVDYXAuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IENhbnZhc0xpbmVDYXAuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5
M0JCMjFGNUUwRUI2MDA4OEYzRTYgLyogQ2FudmFzU3RhdGUuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IENhbnZhc1N0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0Mx
OTNCQjMxRjVFMEVCNzAwODhGM0U2IC8qIENhbnZhc0ZpbHRlcnMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IENhbnZhc0ZpbHRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzE5M0JCNDFGNUUwRUI3MDA4OEYzRTYgLyogUGF0aDJELmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBQYXRoMkQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JC
NTFGNUUwRUI4MDA4OEYzRTYgLyogQ2FudmFzVHJhbnNmb3JtLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBDYW52YXNUcmFuc2Zvcm0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzE5M0JCNjFGNUUwRUI5MDA4OEYzRTYgLyogQ2FudmFzRGlyZWN0aW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbnZhc0RpcmVjdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzE5M0JCNzFGNUUwRUI5MDA4OEYzRTYgLyogQ2FudmFzVGV4dEJh
c2VsaW5lLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDYW52YXNUZXh0QmFzZWxpbmUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JCODFGNUUwRUJBMDA4OEYzRTYg
LyogQ2FudmFzVXNlckludGVyZmFjZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2FudmFz
VXNlckludGVyZmFjZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQkI5
MUY1RTBFQkIwMDg4RjNFNiAvKiBDYW52YXNUZXh0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBDYW52YXNUZXh0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCQkEx
RjVFMEVCQjAwODhGM0U2IC8qIENhbnZhc0xpbmVDYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQ2FudmFzTGluZUNhcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzE5M0JDNzFGNUUwRkE3MDA4OEYzRTYgLyogSlNDYW52YXNMaW5lQ2FwLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTQ2FudmFzTGluZUNhcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
QzE5M0JDODFGNUUwRkE4MDA4OEYzRTYgLyogSlNDYW52YXNGaWxsUnVsZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0NhbnZhc0ZpbGxSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0MxOTNCQ0YxRjVFMEZBRDAwODhGM0U2IC8qIEpTQ2FudmFzRGlyZWN0aW9uLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFzRGlyZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0MxOTNCRDIxRjVFMEZBRTAwODhGM0U2IC8qIEpTQ2FudmFzVGV4dEFs
aWduLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFzVGV4dEFsaWduLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCRDMxRjVFMEZBRjAwODhGM0U2IC8qIEpTQ2Fu
dmFzVGV4dEJhc2VsaW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2FudmFzVGV4dEJhc2Vs
aW5lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCRDQxRjVFMEZCMDAw
ODhGM0U2IC8qIEpTQ2FudmFzVGV4dEJhc2VsaW5lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ2FudmFz
VGV4dEJhc2VsaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQkRCMUY1
RTBGQjQwMDg4RjNFNiAvKiBKU0NhbnZhc0ZpbGxSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ2Fu
dmFzRmlsbFJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCREMxRjVF
MEZCNTAwODhGM0U2IC8qIEpTQ2FudmFzTGluZUpvaW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDYW52
YXNMaW5lSm9pbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JERDFGNUUw
RkI2MDA4OEYzRTYgLyogSlNDYW52YXNEaXJlY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDYW52
YXNEaXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MxOTNCRTExRjVF
MEZCODAwODhGM0U2IC8qIEpTQ2FudmFzVGV4dEFsaWduLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ2Fu
dmFzVGV4dEFsaWduLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQkU3MUY1
RTBGQkMwMDg4RjNFNiAvKiBKU0NhbnZhc0xpbmVKb2luLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTQ2FudmFzTGluZUpvaW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5
M0JFQTFGNUUwRkJFMDA4OEYzRTYgLyogSlNDYW52YXNMaW5lQ2FwLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQ2FudmFzTGluZUNhcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDMTkzQkZCMUY1RTEwQzQwMDg4RjNFNiAvKiBKU0ltYWdlU21vb3RoaW5nUXVhbGl0eS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0ltYWdlU21vb3RoaW5nUXVhbGl0eS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMTkzQkZDMUY1RTEwQzUwMDg4RjNFNiAvKiBKU0ltYWdl
U21vb3RoaW5nUXVhbGl0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlU21vb3RoaW5nUXVhbGl0
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JGRDFGNUUxMEQ2MDA4OEYz
RTYgLyogSlNQYXRoMkQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXRoMkQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzE5M0JGRTFGNUUxMEQ3MDA4OEYzRTYgLyogSlNQ
YXRoMkQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQYXRoMkQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0MxQjRBNjUyNEE5OTc1OTAwMzM3MjdGIC8qIENvbG9yQmxlbmRpbmcuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ29sb3JCbGVuZGluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDMUI0QTY3MjRBOTk3NjYwMDMzNzI3RiAvKiBDb2xvckJsZW5kaW5nLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENvbG9yQmxlbmRpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0MxRThDRkYxRUQwQzJCRTAwQjFEOTgzIC8qIEJlZm9yZVVubG9hZEV2ZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBCZWZvcmVVbmxvYWRFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDMUU4RDAwMUVEMEMyQkUwMEIxRDk4MyAvKiBDYWxsYmFja1Jlc3Vs
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWxsYmFja1Jlc3VsdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzFFOTcyNTFBOUY5ODM0MDA3QkYwRkIgLyog
QXV0b0ZpbGxCdXR0b25FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEF1dG9GaWxsQnV0dG9uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDMUU5NzI2MUE5Rjk4MzQwMDdCRjBGQiAvKiBBdXRvRmlsbEJ1dHRvbkVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0b0ZpbGxCdXR0b25FbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMUY1RDU4MUYyMkZGNzMwMEE4ODc0
RiAvKiBKU0RPTUNvbnZlcnRTY2hlZHVsZWRBY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01D
b252ZXJ0U2NoZWR1bGVkQWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdD
MkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MyQkREM0MxN0M3Rjk4QjAwMzhGRjE1
IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0MyRDcyMjkyNTA4MzhCMDAwNTM5NjYyIC8qIEdsb2JhbEV2ZW50SGFuZGxlcnMrQ1NTVHJh
bnNpdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9ICJHbG9iYWxFdmVudEhhbmRsZXJzK0NTU1RyYW5zaXRpb25zLmlk
bCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMkQ3MjJDMjUwODM5NjMwMDUzOTY2
MiAvKiBHbG9iYWxFdmVudEhhbmRsZXJzK0NTU0FuaW1hdGlvbnMuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJHbG9iYWxF
dmVudEhhbmRsZXJzK0NTU0FuaW1hdGlvbnMuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0MyRDcyMkUyNTA4M0EzNDAwNTM5NjYyIC8qIEdsb2JhbEV2ZW50SGFuZGxlcnMrUG9p
bnRlckV2ZW50cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkdsb2JhbEV2ZW50SGFuZGxlcnMrUG9pbnRlckV2ZW50cy5p
ZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzJFMEJDRjI1MTA2QUM0MDA1RjND
ODcgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZUZldGNoLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdp
bmRvd09yV29ya2VyR2xvYmFsU2NvcGVGZXRjaC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3QzJFMEJEMDI1MTA2QUM0MDA1RjNDODcgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZUZldGNoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGVG
ZXRjaC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMkUwQkQxMjUxMDZBQzQw
MDVGM0M4NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlK0ZldGNoLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiV2lu
ZG93T3JXb3JrZXJHbG9iYWxTY29wZStGZXRjaC5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QzJFMEJEOTI1MTE4MDBFMDA1RjNDODcgLyogTmF2aWdhdG9yQ29va2llcy5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gTmF2aWdhdG9yQ29va2llcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDMkZBNjBGMUVBOTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVzb3VyY2VDcnlwdG9n
cmFwaGljRGlnZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MyRkE2MTAx
RUE5NUEzMjAwQTAzMTA4IC8qIFJlc291cmNlQ3J5cHRvZ3JhcGhpY0RpZ2VzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzMEQ5N0UxRjgxNUFDMDAwMjY4MzU2IC8q
IEpTQWJvcnRDb250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQWJvcnRDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
N0MzMEQ5ODAxRjgxNUFDMTAwMjY4MzU2IC8qIEpTQWJvcnRDb250cm9sbGVyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJvcnRDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdDMzBEOTgxMUY4MTVBQzEwMDI2ODM1NiAvKiBKU0Fib3J0U2ln
bmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJvcnRTaWduYWwuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzMEQ5ODIxRjgxNUFDMjAwMjY4MzU2IC8q
IEpTQWJvcnRTaWduYWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNBYm9ydFNpZ25hbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzMwQTAx
MURGOEZBQzYwMEQzMzk1QyAvKiBHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzMwQTAzMURGOUU5NUIwMEQzMzk1QyAv
KiBQb3NpdGlvbk9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBvc2l0aW9uT3B0aW9ucy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzMwQTA1MURGOUY5NTEwMEQzMzk1QyAvKiBKU1Bvc2l0
aW9uT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Bv
c2l0aW9uT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzMwQTA2
MURGOUY5NTEwMEQzMzk1QyAvKiBKU1Bvc2l0aW9uT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1Bvc2l0aW9uT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QzMzRjM2MDFCNEEwNTA0MDA1MDJDQUYgLyogSlNEb2N1bWVudEZyYWdtZW50
Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRG9jdW1l
bnRGcmFnbWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzY1
NTY5MjUwNkREQjcwMEE3ODgyQiAvKiBEb2N1bWVudE9yU2hhZG93Um9vdCtDU1NPTS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gIkRvY3VtZW50T3JTaGFkb3dSb290K0NTU09NLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDMzY1NTZDMjUwNkRFOUMwMEE3ODgyQiAvKiBEb2N1bWVudE9yU2hhZG93Um9v
dCtQb2ludGVyTG9jay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkRvY3VtZW50T3JTaGFkb3dSb290K1BvaW50ZXJMb2Nr
LmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDMzY1NTZFMjUwNkRGOTkwMEE3
ODgyQiAvKiBEb2N1bWVudE9yU2hhZG93Um9vdCtQaWN0dXJlSW5QaWN0dXJlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAi
RG9jdW1lbnRPclNoYWRvd1Jvb3QrUGljdHVyZUluUGljdHVyZS5pZGwiOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzM2NTU3MDI1MDZFMEE3MDBBNzg4MkIgLyogRG9jdW1lbnRPclNo
YWRvd1Jvb3QrV2ViQW5pbWF0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkRvY3VtZW50T3JTaGFkb3dSb290K1dl
YkFuaW1hdGlvbnMuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzODA2REIy
NTA1QjE4OTAwNzQ0QTdCIC8qIEFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEFuaW1hdGlvbkZyYW1lUHJvdmlkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QzNBOEFBMzI1MDk0NjFGMDA4QzQ3N0YgLyogRG9jdW1lbnQrSFRNTC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gIkRvY3VtZW50K0hUTUwuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0MzQThBQTYyNTA5NDg1OTAwOEM0NzdGIC8qIERvY3VtZW50K0hUTUxPYnNvbGV0ZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gIkRvY3VtZW50K0hUTUxPYnNvbGV0ZS5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QzNBOEFCNDI1MDk5RjVBMDA4QzQ3N0YgLyogRG9jdW1lbnQrUGFnZVZpc2liaWxp
dHkuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9ICJEb2N1bWVudCtQYWdlVmlzaWJpbGl0eS5pZGwiOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzNBOEFCNjI1MDk5RkZEMDA4QzQ3N0YgLyogRG9jdW1lbnQrUG9p
bnRlckxvY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9ICJEb2N1bWVudCtQb2ludGVyTG9jay5pZGwiOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3QzNBOEFCODI1MDlBMTBGMDA4QzQ3N0YgLyogRG9jdW1lbnQr
Q1NTT01WaWV3LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSAiRG9jdW1lbnQrQ1NTT01WaWV3LmlkbCI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdDM0E4QUJBMjUwOUExOTkwMDhDNDc3RiAvKiBEb2N1bWVudCtT
ZWxlY3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9ICJEb2N1bWVudCtTZWxlY3Rpb24uaWRsIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0MzQThBQkMyNTA5QTI1NjAwOEM0NzdGIC8qIEZvbnRGYWNlU291
cmNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBGb250RmFjZVNvdXJjZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDM0E4QUJFMjUwOUE0NjYwMDhDNDc3RiAvKiBYUGF0aEV2YWx1YXRvckJhc2UuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFhQYXRoRXZhbHVhdG9yQmFzZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDM0E4QUMwMjUwOUE2MDIwMDhDNDc3RiAvKiBEb2N1bWVudCtXZWJBbmltYXRpb25zLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSAiRG9jdW1lbnQrV2ViQW5pbWF0aW9ucy5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QzNBOEFDMjI1MDlBNkNEMDA4QzQ3N0YgLyogRG9jdW1lbnQrVW5kb01hbmFu
Z2VyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSAiRG9jdW1lbnQrVW5kb01hbmFuZ2VyLmlkbCI7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDM0E5MUU1MUM5NjNCODgwMEQxQTdFMyAvKiBDbGlwYm9hcmRBY2Nl
c3NQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2xpcGJvYXJkQWNj
ZXNzUG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDM0I3OTZGMTkwODc1
N0IwMEI0N0EyRCAvKiBVc2VyTWVzc2FnZUhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVXNlck1lc3NhZ2VIYW5kbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0MzQjc5NzAxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFu
ZGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRs
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzRDhFRTkxRTBCMTVBNzAwMjNC
MDg0IC8qIElEQkN1cnNvckRpcmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJREJDdXJzb3JEaXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
N0MzRDhFRUExRTBCMTVBNzAwMjNCMDg0IC8qIElEQkN1cnNvckRpcmVjdGlvbi5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gSURCQ3Vyc29yRGlyZWN0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0MzRDhFRUQxRTBCMjE0MzAwMjNCMDg0IC8qIEpTSURCQ3Vyc29yRGly
ZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURCQ3Vy
c29yRGlyZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzRDhFRUUx
RTBCMjE0MzAwMjNCMDg0IC8qIEpTSURCQ3Vyc29yRGlyZWN0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSURCQ3Vyc29yRGlyZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDM0U1MTA4MThERjhGMzUwMEMxMTJGNyAvKiBIVE1MQ29udmVydGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxDb252ZXJ0ZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzRTUxMDkxOERGOEYzNTAwQzExMkY3IC8qIEhU
TUxDb252ZXJ0ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBI
VE1MQ29udmVydGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzNGMDFCRjFD
OEU1QUIxMDBBREQ5NjIgLyogVXNlckNvbnRlbnRQcm92aWRlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyQ29udGVudFByb3ZpZGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0MzRjAxQzAxQzhFNUFCMTAwQUREOTYyIC8qIFVzZXJDb250
ZW50UHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNlckNvbnRl
bnRQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzQxODlBQjFCMDdD
MTcwMDAwRkE3NTcgLyogR2xvYmFsRXZlbnRIYW5kbGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gR2xvYmFsRXZlbnRI
YW5kbGVycy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNDE4OUFDMUIwN0NC
RjIwMDBGQTc1NyAvKiBXaW5kb3dFdmVudEhhbmRsZXJzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXaW5kb3dFdmVudEhh
bmRsZXJzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M0NUM5QzcxRTNFOEFG
RjAwQUFCNTU4IC8qIEpTRE9NRXhjZXB0aW9uSGFuZGxpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNET01FeGNlcHRpb25IYW5kbGluZy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QzQ1QzlDODFFM0U4QjUxMDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2Fj
aGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01XcmFwcGVyQ2FjaGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M0NUM5QzkxRTNFOENENzAwQUFCNTU4
IC8qIEpTRE9NQmluZGluZ1NlY3VyaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRE9NQmluZGluZ1NlY3VyaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDNDVDOUNBMUUzRThEMkUwMEFBQjU1OCAvKiBKU0RPTUJpbmRpbmdTZWN1cml0eS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUJpbmRpbmdTZWN1cml0eS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNDVDOUNCMUUzRThFNDkwMEFBQjU1
OCAvKiBKU0RPTVdyYXBwZXJDYWNoZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0RPTVdyYXBwZXJDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDNDVDOUNDMUUzRThGMDgwMEFBQjU1OCAvKiBKU0RPTUV4Y2VwdGlvbkhhbmRsaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NRXhjZXB0aW9uSGFu
ZGxpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzQ4QTZDRTE5MUM5RDY1
MDAwMjY2NzQgLyogV2ViS2l0TmFtZXNwYWNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFdlYktpdE5hbWVzcGFjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDNDhBNkNGMTkxQzlENjUwMDAyNjY3NCAvKiBXZWJLaXROYW1lc3BhY2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViS2l0TmFtZXNwYWNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNDhBNkQyMTkxQzlEOEUwMDAyNjY3NCAvKiBXZWJLaXRO
YW1lc3BhY2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFdlYktpdE5hbWVzcGFjZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdDNEM5NkQ4MUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFt
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUmVhZGFibGVTdHJl
YW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzRDOTZEODFBRDQ0ODM1MDAz
NjVBNjAgLyogSlNXcml0YWJsZVN0cmVhbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1dyaXRhYmxlU3RyZWFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0M0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW0uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzRDOTZEOTFBRDQ0ODM1MDAzNjVBNjAgLyogSlNXcml0
YWJsZVN0cmVhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1dyaXRhYmxl
U3RyZWFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNEM5NkRBMUFENDQ4MzUw
MDM2MzU3MiAvKiBKU1JlYWRhYmxlU3RyZWFtQllPQlJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JlYWRhYmxlU3RyZWFtQllPQlJlYWRlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNEM5NkRBMUFENDQ4MzUwMDM2NUE1MCAvKiBK
U1JlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNEM5NkRCMUFENDQ4MzUwMDM2MzU3MiAvKiBKU1JlYWRh
YmxlU3RyZWFtQllPQlJlYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1JlYWRhYmxlU3RyZWFtQllPQlJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzRDOTZEQjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJsZVN0cmVhbURlZmF1bHRSZWFk
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbURl
ZmF1bHRSZWFkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M1MTRFMDAyNEFG
ODA1ODAwNTA3MTBGIC8qIENvbG9yQ29udmVyc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xvckNv
bnZlcnNpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M1MTRFMDIyNEFGODA1
ODAwNTA3MTBGIC8qIENvbG9yQ29udmVyc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb2xv
ckNvbnZlcnNpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzUxNkFEMjFG
MzUyNTIwMDAzNEI2QkYgLyogRE9NUHJvbWlzZVByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVBy
b21pc2VQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzUxRkNDRTI1MDAy
QkZCMDBCQTBGMkYgLyogTWF0aE1MRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWF0aE1MRWxlbWVudC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNTIyMjk1MUUxREFERjgwMDJDQjhGNyAv
KiBJRExUeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJRExUeXBlcy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzUyMjI5NzFFMURBRTE2MDAyQ0I4Rjcg
LyogQWN0aXZlRE9NQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQWN0aXZlRE9NQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzUyMjI5ODFFMURBRTE2MDAyQ0I4RjcgLyogQWN0aXZlRE9NQ2FsbGJhY2suaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWN0aXZlRE9NQ2FsbGJhY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M1MjIyOUIxRTFEQUU0NzAwMkNCOEY3IC8qIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDNTIyMjlDMUUxREFFNDcwMDJDQjhGNyAvKiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M1MjJENDkxNUI0NzdFODAwOUI3Qzk1IC8q
IEluc3BlY3Rvck92ZXJsYXkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSW5zcGVjdG9yT3ZlcmxheS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdD
NTIyRDRBMTVCNDc4QjIwMDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3Rvck92ZXJsYXkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0M1MjY2OTYxRjFCMDJGQzAwMEYwNjhCIC8qIFN0cmluZ0FkYXB0b3Jz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0cmluZ0FkYXB0b3JzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNTdCRkU2MUVERTJGNUIwMDUzNEE0OCAvKiBK
U0RPTUFic3RyYWN0T3BlcmF0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0RPTUFic3RyYWN0T3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzVCRUEzQTFFOUVFNzcxMDBDQzUxN0IgLyogTmF2aWdhdG9ySUQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IE5hdmlnYXRvcklELmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0M1QkVBM0IxRTlFRTc3MTAwQ0M1MTdCIC8qIE5hdmlnYXRvckxhbmd1YWdlLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JMYW5ndWFnZS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDNUJFQTNDMUU5RUU3NzEwMENDNTE3QiAvKiBOYXZpZ2F0b3JPbkxp
bmUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvck9uTGluZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNUYyOEY5MUE4MjdEODQwMEMwRjMxRiAvKiBIVE1M
QXR0YWNobWVudEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSFRNTEF0dGFjaG1lbnRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0M1RjI4RkExQTgyN0Q4NDAwQzBGMzFGIC8qIEhUTUxBdHRhY2htZW50RWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MQXR0YWNobWVudEVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2MDEyODA2MDA3OEJCNzBFMzY3QTk1IC8q
IEROU1Jlc29sdmVRdWV1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBETlNSZXNvbHZlUXVldWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzYx
MzZGNjE3MTBDMzUyMDBGRjRBNTcgLyogSGFzaGVyLnBtICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucGVybDsgbmFtZSA9IEhhc2hl
ci5wbTsgcGF0aCA9IHNjcmlwdHMvSGFzaGVyLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3QzYxMzZGNzE3MTBDMzUyMDBGRjRBNTcgLyogSW5GaWxlc0NvbXBpbGVyLnBtICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQu
cGVybDsgbmFtZSA9IEluRmlsZXNDb21waWxlci5wbTsgcGF0aCA9IHNjcmlwdHMvSW5GaWxlc0Nv
bXBpbGVyLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzYxMzZGODE3MTBDMzUy
MDBGRjRBNTcgLyogSW5GaWxlc1BhcnNlci5wbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuc2NyaXB0LnBlcmw7IG5hbWUgPSBJbkZpbGVzUGFy
c2VyLnBtOyBwYXRoID0gc2NyaXB0cy9JbkZpbGVzUGFyc2VyLnBtOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QzYxMzZGOTE3MTBDMzUyMDBGRjRBNTcgLyogU3RhdGljU3RyaW5nLnBt
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5z
Y3JpcHQucGVybDsgbmFtZSA9IFN0YXRpY1N0cmluZy5wbTsgcGF0aCA9IHNjcmlwdHMvU3RhdGlj
U3RyaW5nLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1MjJFQzFFMDBBNEM3
MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50TWV0aG9kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudE1ldGhvZC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QzY1MjJFRDFFMDBBNEM3MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50TWV0
aG9kLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheVBheW1lbnRNZXRob2QuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1MjJGMjFFMDBBNTE3MDA2NzdGMjIg
LyogQXBwbGVQYXlQYXltZW50UGFzcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBcHBsZVBheVBheW1lbnRQYXNzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdD
NjUyMkYzMUUwMEE1MTcwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnRQYXNzLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheVBheW1lbnRQYXNzLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0M2NTIyRjgxRTAwQzkwOTAwNjc3RjIyIC8qIEFwcGxlUGF5UGF5bWVu
dENvbnRhY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlQYXlt
ZW50Q29udGFjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1MjJGOTFFMDBD
OTA5MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50Q29udGFjdC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXBwbGVQYXlQYXltZW50Q29udGFjdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDNjUyMkZFMUUwMEQwMzQwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlQYXltZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjUyMkZGMUUwMEQwMzQwMDY3N0YyMiAvKiBBcHBs
ZVBheVBheW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjUyMzBBMUUwMERCQjQwMDY3N0Yy
MiAvKiBKU0FwcGxlUGF5UGF5bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0FwcGxlUGF5UGF5bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1
MjMwQjFFMDBEQkI0MDA2NzdGMjIgLyogSlNBcHBsZVBheVBheW1lbnRDb250YWN0LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXBwbGVQYXlQYXltZW50Q29udGFj
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjUyMzBDMUUwMERCQjQwMDY3
N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudENvbnRhY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNBcHBsZVBheVBheW1lbnRDb250YWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdDNjUyMzBEMUUwMERCQjQwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVu
dE1ldGhvZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxl
UGF5UGF5bWVudE1ldGhvZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjUy
MzBFMUUwMERCQjQwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1MjMwRjFFMDBEQkI0MDA2NzdGMjIgLyogSlNB
cHBsZVBheVBheW1lbnRQYXNzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQXBwbGVQYXlQYXltZW50UGFzcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDNjUyMzEwMUUwMERCQjQwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudFBhc3MuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheVBheW1lbnRQYXNzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjUyMzFEMUUwMThCNUEwMDY3N0YyMiAv
KiBKU0FwcGxlUGF5UGF5bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0FwcGxlUGF5UGF5bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDNjU3OURGMUUwMDc5RjkwMEUzQTI3QSAvKiBBcHBsZVBheVBheW1lbnRSZXF1ZXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudFJlcXVlc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NTc5RTExRTAwN0ExMTAwRTNBMjdBIC8q
IEFwcGxlUGF5UGF5bWVudFJlcXVlc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5UGF5bWVudFJlcXVlc3Qu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1NzlFMjFFMDA4MjcwMDBFM0Ey
N0EgLyogQXBwbGVQYXlMaW5lSXRlbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBcHBsZVBheUxpbmVJdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjU3
OUU0MUUwMDgyQzgwMEUzQTI3QSAvKiBBcHBsZVBheUxpbmVJdGVtLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBh
eUxpbmVJdGVtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NTc5RTUxRTAw
ODMwNjAwRTNBMjdBIC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2QuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEFwcGxlUGF5U2hpcHBpbmdNZXRob2QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QzY1NzlFNzFFMDA4MzE2MDBFM0EyN0EgLyogQXBwbGVQYXlTaGlwcGluZ01l
dGhvZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheVNoaXBwaW5n
TWV0aG9kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjU3OUU5MUUwMDg1NjYw
MEUzQTI3QSAvKiBKU0FwcGxlUGF5TGluZUl0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheUxpbmVJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0M2NTc5RUExRTAwODU2NjAwRTNBMjdBIC8qIEpTQXBwbGVQYXlMaW5lSXRl
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxlUGF5TGluZUl0ZW0u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NTc5RUIxRTAwODU2NjAwRTNBMjdB
IC8qIEpTQXBwbGVQYXlQYXltZW50UmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudFJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzY1NzlFQzFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVBh
eW1lbnRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQ
YXlQYXltZW50UmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY1NzlF
RDFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVNoaXBwaW5nTWV0aG9kLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjU3OUVFMUUwMDg1NjYwMEUzQTI3
QSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdNZXRob2QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNBcHBsZVBheVNoaXBwaW5nTWV0aG9kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDNjc1MkJBMUIwNkU4MjAwMEMyNzlDQiAvKiBOb25FbGVtZW50UGFyZW50Tm9k
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9uRWxlbWVudFBhcmVudE5vZGUuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY3NzEwOTI1MjZBNDU4MDBGREVGMDAgLyog
SFRNTEVsZW1lbnQrQ1NTT01WaWV3LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiSFRNTEVsZW1lbnQrQ1NTT01WaWV3Lmlk
bCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTIyMjUyN0QyMjEwMEZERUYw
MCAvKiBFbGVtZW50K1BvaW50ZXJMb2NrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRWxlbWVudCtQb2ludGVyTG9jay5p
ZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY3NzEyNDI1MjdEMjIyMDBGREVG
MDAgLyogRWxlbWVudCtQb2ludGVyRXZlbnRzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRWxlbWVudCtQb2ludGVyRXZl
bnRzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTI1MjUyN0QyMjIw
MEZERUYwMCAvKiBFbGVtZW50K0Z1bGxzY3JlZW4uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJFbGVtZW50K0Z1bGxzY3Jl
ZW4uaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMjYyNTI3RDIyMzAw
RkRFRjAwIC8qIEVsZW1lbnQrQ1NTT01WaWV3LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRWxlbWVudCtDU1NPTVZpZXcu
aWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMjcyNTI3RDI4MDAwRkRF
RjAwIC8qIFJhbmdlK0RPTVBhcnNpbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJSYW5nZStET01QYXJzaW5nLmlkbCI7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTI4MjUyN0QyODEwMEZERUYwMCAv
KiBSYW5nZStDU1NPTVZpZXcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJSYW5nZStDU1NPTVZpZXcuaWRsIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMkEyNTI3RDVDNzAwRkRFRjAwIC8qIEhUTUxJ
bWFnZUVsZW1lbnQrQ1NTT01WaWV3LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiSFRNTEltYWdlRWxlbWVudCtDU1NPTVZp
ZXcuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMkIyNTI3RDc1RjAw
RkRFRjAwIC8qIFdpbmRvd0xvY2FsU3RvcmFnZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2luZG93TG9jYWxTdG9yYWdl
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMkMyNTI3RDdDOTAwRkRF
RjAwIC8qIFdpbmRvd1Nlc3Npb25TdG9yYWdlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXaW5kb3dTZXNzaW9uU3RvcmFn
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTJEMjUyN0Q4MjUwMEZE
RUYwMCAvKiBET01XaW5kb3crQ1NTT00uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5kb3crQ1NTT00uaWRsIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMkUyNTI3RDg4NDAwRkRFRjAwIC8q
IERPTVdpbmRvdytDU1NPTVZpZXcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5kb3crQ1NTT01WaWV3LmlkbCI7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTJGMjUyN0Q5RDYwMEZERUYwMCAv
KiBET01XaW5kb3crVmlzdWFsVmlld3BvcnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5kb3crVmlzdWFsVmll
d3BvcnQuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMzAyNTI3REEx
MzAwRkRFRjAwIC8qIERPTVdpbmRvdytTZWxlY3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5kb3crU2Vs
ZWN0aW9uLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNjc3MTMxMjUyN0RB
NjAwMEZERUYwMCAvKiBET01XaW5kb3crQ29tcGF0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRE9NV2luZG93K0NvbXBh
dC5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzY3NzEzMjI1MjdEQjYwMDBG
REVGMDAgLyogSFRNTEJvZHlFbGVtZW50K0NvbXBhdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkhUTUxCb2R5RWxlbWVu
dCtDb21wYXQuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMzMyNTI3
REM0ODAwRkRFRjAwIC8qIERPTVdpbmRvdytSZXF1ZXN0SWRsZUNhbGxiYWNrLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAi
RE9NV2luZG93K1JlcXVlc3RJZGxlQ2FsbGJhY2suaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0M2NzcxMzQyNTI3REQ4MDAwRkRFRjAwIC8qIERPTVdpbmRvdytEZXZpY2VNb3Rp
b24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9ICJET01XaW5kb3crRGV2aWNlTW90aW9uLmlkbCI7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDNjc3MTM1MjUyN0REQTkwMEZERUYwMCAvKiBET01XaW5kb3crRGV2
aWNlT3JpZW50YXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5kb3crRGV2aWNlT3JpZW50YXRpb24uaWRs
Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M2NzcxMzYyNTI3REY0QjAwRkRFRjAw
IC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUrUGVyZm9ybWFuY2UuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJXaW5k
b3dPcldvcmtlckdsb2JhbFNjb3BlK1BlcmZvcm1hbmNlLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdDNjc3MTM3MjUyN0RGRjUwMEZERUYwMCAvKiBXaW5kb3dPcldvcmtlckds
b2JhbFNjb3BlK0NyeXB0by5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIldpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUrQ3J5
cHRvLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzI0NzFBMjUxNjc0NEMw
MEMzNjNDRCAvKiBQZXJmb3JtYW5jZStVc2VyVGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiUGVyZm9ybWFuY2Ur
VXNlclRpbWluZy5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzcyNDcxQzI1
MTY3NENFMDBDMzYzQ0QgLyogUGVyZm9ybWFuY2UrUGVyZm9ybWFuY2VUaW1lbGluZS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gIlBlcmZvcm1hbmNlK1BlcmZvcm1hbmNlVGltZWxpbmUuaWRsIjsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0M3MjQ3MUQyNTE2NzUyQzAwQzM2M0NEIC8qIFBlcmZvcm1hbmNlK1Jl
c291cmNlVGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiUGVyZm9ybWFuY2UrUmVzb3VyY2VUaW1pbmcuaWRsIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3MjQ3MUUyNTE2NzU4ODAwQzM2M0NEIC8q
IFBlcmZvcm1hbmNlK05hdmlnYXRpb25UaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJQZXJmb3JtYW5jZStOYXZp
Z2F0aW9uVGltaW5nLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzNGQjA1
MTkxRUY0MTYwMDdERTA2MSAvKiBVc2VyTWVzc2FnZUhhbmRsZXJzTmFtZXNwYWNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVzZXJNZXNzYWdlSGFuZGxlcnNOYW1l
c3BhY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzczRkIwNjE5MUVGNDE3
MDA3REUwNjEgLyogVXNlck1lc3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXJzTmFtZXNwYWNlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzNGQjA5MTkxRUY0OUYwMDdERTA2MSAvKiBVc2Vy
TWVzc2FnZUhhbmRsZXJzTmFtZXNwYWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXJzTmFt
ZXNwYWNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3M0ZCMEExOTFFRjVB
ODAwN0RFMDYxIC8qIEpTVXNlck1lc3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1VzZXJNZXNzYWdlSGFuZGxlcnNOYW1lc3Bh
Y2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzczRkIwQjE5MUVGNUE4MDA3
REUwNjEgLyogSlNVc2VyTWVzc2FnZUhhbmRsZXJzTmFtZXNwYWNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTVXNlck1lc3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzczRkIwRTE5MUVGNjBFMDA3REUwNjEgLyogVXNl
ck1lc3NhZ2VIYW5kbGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzczRkIwRjE5MUVGNkY0MDA3REUwNjEgLyogSlNVc2Vy
TWVzc2FnZUhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNVc2VyTWVzc2FnZUhhbmRsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
QzczRkIxMDE5MUVGNkY0MDA3REUwNjEgLyogSlNVc2VyTWVzc2FnZUhhbmRsZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNVc2VyTWVzc2FnZUhhbmRsZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3N0MzQ0YxREVFNDcxODAwQTUwQkZBIC8qIEJsb2JQ
cm9wZXJ0eUJhZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gQmxvYlByb3BlcnR5QmFnLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0M3N0MzRDAxREVFNDcyNDAwQTUwQkZBIC8qIEJsb2JQcm9wZXJ0eUJh
Zy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9iUHJvcGVydHlCYWcuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3N0MzRDIxREVGMTc4RTAwQTUwQkZBIC8q
IEpTQmxvYlByb3BlcnR5QmFnLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTQmxvYlByb3BlcnR5QmFnLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
N0M3N0MzRDMxREVGMTc4RTAwQTUwQkZBIC8qIEpTQmxvYlByb3BlcnR5QmFnLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQmxvYlByb3BlcnR5QmFnLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdDNzdDM0Q2MURFRjg1MEEwMEE1MEJGQSAvKiBFbmRpbmdUeXBl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVuZGluZ1R5cGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3N0MzRDkxREVGODZENzAwQTUwQkZBIC8qIEpTRW5k
aW5nVHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0VuZGlu
Z1R5cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Qzc3QzNEQTFERUY4NkQ3
MDBBNTBCRkEgLyogSlNFbmRpbmdUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRW5kaW5nVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Qzc5MDNC
MDFGODZGOTVDMDA0NjNBNzAgLyogSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3Qzc5MDNCMTFGODZGOTVDMDA0NjNBNzAgLyogSW1hZ2VCaXRtYXBSZW5k
ZXJpbmdDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlQml0bWFwUmVuZGVyaW5n
Q29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzkwM0IyMUY4NkY5
NUMwMDQ2M0E3MCAvKiBJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEltYWdl
Qml0bWFwUmVuZGVyaW5nQ29udGV4dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDNzkwM0I1MUY4NkZERTQwMDQ2M0E3MCAvKiBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4
dFNldHRpbmdzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdD
b250ZXh0U2V0dGluZ3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Qzc5MDNC
NjFGODZGREU2MDA0NjNBNzAgLyogSlNJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHRTZXR0aW5n
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dFNldHRpbmdz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzkwM0I3MUY4NkZERTQwMDQ2M0E3
MCAvKiBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDNzkwM0I4MUY4NkZERTYwMDQ2M0E3MCAvKiBKU0ltYWdlQml0bWFwUmVuZGVy
aW5nQ29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Qzc5MDNCQTFGODZGRjMzMDA0NjNB
NzAgLyogUGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFBsYWNlaG9sZGVyUmVuZGVyaW5nQ29udGV4dC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDNzkwM0JDMUY4NkZGMzQwMDQ2M0E3MCAvKiBQbGFj
ZWhvbGRlclJlbmRlcmluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDN0JGOTNFMjUxNkM4QkMwMDgwODY4MiAvKiBQZXJmb3JtYW5jZU1hcmtPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTWFya09wdGlvbnMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0M3QkY5NDAyNTE2QzhCQzAwODA4NjgyIC8qIFBlcmZvcm1hbmNl
TWFya09wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlTWFya09wdGlvbnMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzdCRjk0NDI1MTZDQzkyMDA4MDg2ODIgLyogUGVyZm9y
bWFuY2VNYXJrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTWFyay5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDN0JGOTQ5MjUxNkZBNTQwMDgwODY4MiAvKiBQ
ZXJmb3JtYW5jZU1lYXN1cmVPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNlTWVh
c3VyZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M3QkY5NEIyNTE2
RkE1NDAwODA4NjgyIC8qIFBlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZv
cm1hbmNlTWVhc3VyZU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
QzdCRjk1MDI1MTZGQjU0MDA4MDg2ODIgLyogUGVyZm9ybWFuY2VNZWFzdXJlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTWVhc3VyZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDODEzOUEzMUVENjI4MUQwMENFMjZFOCAvKiBKU0RPTUF0dHJpYnV0ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUF0dHJpYnV0ZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzgxMzlBNDFFRDYyODFEMDBDRTI2RTggLyogSlNET01P
cGVyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01PcGVyYXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4MTM5QTUxRUQ2MjgxRDAwQ0Uy
NkU4IC8qIEpTRE9NT3BlcmF0aW9uUmV0dXJuaW5nUHJvbWlzZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0RPTU9wZXJhdGlvblJldHVybmluZ1Byb21pc2UuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4M0RFODUxRDA0Q0JENDAwRkVCQ0YzIC8qIFNwcmlu
Z1NvbHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTcHJpbmdTb2x2ZXIu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4ODI0QzQyNDlEN0IwNTAwRUQ4RkM0
IC8qIFNWR1BhdGhTZWdWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
VkdQYXRoU2VnVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RTM0OTIx
RTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEFueS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnRBbnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0M4RTM0OTMxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEJhc2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0QmFzZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzhFMzQ5NDFFNEEzMzhFMDA1NENFMjMgLyogSlNET01D
b252ZXJ0Qm9vbGVhbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNv
bnZlcnRCb29sZWFuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNDk1MUU0
QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRCdWZmZXJTb3VyY2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0QnVmZmVyU291cmNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNDk2MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNv
bnZlcnRDYWxsYmFja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01D
b252ZXJ0Q2FsbGJhY2tzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNDk3
MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnREYXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NQ29udmVydERhdGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzhFMzQ5ODFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0
RGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnREYXRl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNDk5MUU0QTMzOEUwMDU0Q0Uy
MyAvKiBKU0RPTUNvbnZlcnREaWN0aW9uYXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRE9NQ29udmVydERpY3Rpb25hcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJN0M4RTM0OUExRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEVudW1lcmF0aW9u
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydEVudW1lcmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNDlCMUU0QTMzOEUwMDU0
Q0UyMyAvKiBKU0RPTUNvbnZlcnRFdmVudExpc3RlbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydEV2ZW50TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0M4RTM0OUMxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydElu
ZGV4ZWREQi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnRJ
bmRleGVkREIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RTM0OUQxRTRBMzM4
RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEludGVyZmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnRJbnRlcmZhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0M4RTM0OUUxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEpTT04u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0SlNPTi5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzhFMzQ5RjFFNEEzMzhFMDA1NENFMjMgLyog
SlNET01Db252ZXJ0TnVsbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RP
TUNvbnZlcnROdWxsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEUzNEEwMUU0
QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnROdWxsYWJsZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnROdWxsYWJsZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QzhFMzRBMTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0TnVt
YmVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUNvbnZl
cnROdW1iZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RTM0QTIxRTRB
MzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydE51bWJlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0TnVtYmVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3QzhFMzRBMzFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0T2JqZWN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydE9iamVjdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzhFMzRBNDFFNEEzMzhFMDA1NENFMjMg
LyogSlNET01Db252ZXJ0UmVjb3JkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRE9NQ29udmVydFJlY29yZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzhF
MzRBNTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0U2VxdWVuY2VzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydFNlcXVlbmNlcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3QzhFMzRBNjFFNEEzMzhFMDA1NENFMjMgLyogSlNET01D
b252ZXJ0U2VyaWFsaXplZFNjcmlwdFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRE9NQ29udmVydFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzhFMzRBNzFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0
U3RyaW5ncy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUNv
bnZlcnRTdHJpbmdzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RTM0QTgx
RTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFN0cmluZ3MuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0U3RyaW5ncy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3QzhFMzRBOTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0VW5p
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Db252ZXJ0VW5pb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RTM0QUExRTRBMzM4RTAwNTRDRTIz
IC8qIEpTRE9NQ29udmVydFZhcmlhZGljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRE9NQ29udmVydFZhcmlhZGljLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDOEUzNEFCMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRXZWJHTC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnZlcnRXZWJHTC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3QzhFMzRBQzFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252
ZXJ0WFBhdGhOU1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
RE9NQ29udmVydFhQYXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QzhGMjI0MjFERDNCM0I5MDBFOTJEQTMgLyogU1ZHQW5nbGVWYWx1ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmdsZVZhbHVlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M4RjIyNDMxREQzQjNCOTAwRTkyREEzIC8qIFNWR0FuZ2xl
VmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5nbGVWYWx1ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzhGMjI0NTFERDNEMUM1MDBFOTJEQTMg
LyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFNWR1ByZXNlcnZlQXNwZWN0UmF0aW9WYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOEYyMjQ2MUREM0QxQzUwMEU5MkRBMyAvKiBTVkdQcmVz
ZXJ2ZUFzcGVjdFJhdGlvVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHUHJlc2VydmVBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDOTNGMzQ3MUFBNkJBNUUwMEE5OEJBQiAvKiBDb21waWxlZENvbnRlbnRFeHRlbnNpb24u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29tcGlsZWRDb250ZW50
RXh0ZW5zaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M5M0YzNDgxQUE2
QkE1RTAwQTk4QkFCIC8qIENvbXBpbGVkQ29udGVudEV4dGVuc2lvbi5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDb21waWxlZENvbnRlbnRFeHRlbnNpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M5M0YzNEIxQUE2QkYwNzAwQTk4QkFCIC8qIENvbnRlbnRF
eHRlbnNpb25Db21waWxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDb250ZW50RXh0ZW5zaW9uQ29tcGlsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3QzkzRjM0QzFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lvbkNvbXBpbGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRFeHRlbnNpb25Db21w
aWxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0E4RjFGM0NDMEFBMDBG
M0FBMDkgLyogQ3J5cHRvS2V5QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0tleUFs
Z29yaXRobS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0E5MTFGM0NDMEFB
MDBGM0FBMDkgLyogQ3J5cHRvS2V5QWxnb3JpdGhtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDcnlwdG9LZXlBbGdvcml0
aG0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0E5NjFGM0NDREFEMDBG
M0FBMDkgLyogQ3J5cHRvQWVzS2V5QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0Fl
c0tleUFsZ29yaXRobS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0E5NzFG
M0NDREFEMDBGM0FBMDkgLyogQ3J5cHRvQWVzS2V5QWxnb3JpdGhtLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDcnlwdG9B
ZXNLZXlBbGdvcml0aG0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0E5
QTFGM0NDREYyMDBGM0FBMDkgLyogQ3J5cHRvRWNLZXlBbGdvcml0aG0uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ3J5cHRvRWNLZXlBbGdvcml0aG0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
N0M5QUNBOUIxRjNDQ0RGMjAwRjNBQTA5IC8qIENyeXB0b0VjS2V5QWxnb3JpdGhtLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBDcnlwdG9FY0tleUFsZ29yaXRobS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDOUFDQTlFMUYzQ0NFMzAwMEYzQUEwOSAvKiBDcnlwdG9IbWFjS2V5QWxnb3JpdGhtLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENyeXB0b0htYWNLZXlBbGdvcml0aG0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0M5QUNBOUYxRjNDQ0UzMDAwRjNBQTA5IC8qIENyeXB0b0htYWNLZXlBbGdv
cml0aG0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IENyeXB0b0htYWNLZXlBbGdvcml0aG0uaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzlBQ0FBMjFGM0NDRTY5MDBGM0FBMDkgLyogQ3J5cHRvUnNhS2V5
QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b1JzYUtleUFsZ29yaXRobS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FBMzFGM0NDRTY5MDBGM0FBMDkgLyogQ3J5
cHRvUnNhS2V5QWxnb3JpdGhtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDcnlwdG9Sc2FLZXlBbGdvcml0aG0uaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FBNjFGM0NDRUI0MDBGM0FBMDkgLyog
Q3J5cHRvUnNhSGFzaGVkS2V5QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b1JzYUhh
c2hlZEtleUFsZ29yaXRobS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FB
NzFGM0NDRUI0MDBGM0FBMDkgLyogQ3J5cHRvUnNhSGFzaGVkS2V5QWxnb3JpdGhtLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBDcnlwdG9Sc2FIYXNoZWRLZXlBbGdvcml0aG0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3QzlBQ0FBQTFGM0NEQjYzMDBGM0FBMDkgLyogSlNDcnlwdG9BZXNLZXlBbGdvcml0
aG0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDcnlwdG9BZXNLZXlBbGdvcml0aG0uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M5QUNBQUMxRjNDREI5RDAwRjNBQTA5IC8qIEpTQ3J5cHRv
RWNLZXlBbGdvcml0aG0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDcnlwdG9FY0tleUFsZ29yaXRobS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FBRDFGM0NEQjlFMDBGM0FBMDkg
LyogSlNDcnlwdG9FY0tleUFsZ29yaXRobS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NyeXB0
b0VjS2V5QWxnb3JpdGhtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M5QUNB
QUUxRjNDREI5RjAwRjNBQTA5IC8qIEpTQ3J5cHRvSG1hY0tleUFsZ29yaXRobS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0NyeXB0b0htYWNLZXlBbGdvcml0aG0uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3QzlBQ0FBRjFGM0NEQjlGMDBGM0FBMDkgLyogSlNDcnlwdG9IbWFj
S2V5QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3J5cHRvSG1hY0tleUFsZ29yaXRobS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FCMDFGM0NEQkEwMDBGM0FBMDkg
LyogSlNDcnlwdG9LZXlBbGdvcml0aG0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDcnlwdG9L
ZXlBbGdvcml0aG0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FCMTFG
M0NEQkExMDBGM0FBMDkgLyogSlNDcnlwdG9LZXlBbGdvcml0aG0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNDcnlwdG9LZXlBbGdvcml0aG0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0M5
QUNBQjIxRjNDREMwMDAwRjNBQTA5IC8qIEpTQ3J5cHRvUnNhS2V5QWxnb3JpdGhtLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTQ3J5cHRvUnNhS2V5QWxnb3JpdGhtLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0M5QUNBQjMxRjNDREMwMTAwRjNBQTA5IC8qIEpTQ3J5cHRvUnNh
S2V5QWxnb3JpdGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3J5cHRvUnNhS2V5QWxnb3JpdGhtLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDOUFDQUI0MUYzQ0RDMDEwMEYzQUEwOSAv
KiBKU0NyeXB0b1JzYUhhc2hlZEtleUFsZ29yaXRobS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0NyeXB0b1JzYUhhc2hlZEtleUFsZ29yaXRobS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDOUFDQUI1MUYzQ0RDMDIwMEYzQUEwOSAvKiBKU0NyeXB0b1JzYUhhc2hlZEtleUFs
Z29yaXRobS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NyeXB0b1JzYUhhc2hlZEtleUFsZ29yaXRobS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlBQ0FCNjFGM0NEQzQ3MDBGM0FBMDkg
LyogSlNDcnlwdG9BZXNLZXlBbGdvcml0aG0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDcnlw
dG9BZXNLZXlBbGdvcml0aG0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlB
Q0FDOTFGNDBCOTZBMDBGM0FBMDkgLyogQ3J5cHRvS2V5Rm9ybWF0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENyeXB0b0tleUZvcm1hdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlEQkZF
QTFBOUM0ODlGMDAwRDZCMjUgLyogSFRNTEF0dGFjaG1lbnRFbGVtZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
QXR0YWNobWVudEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlE
QkZFQjFBOUM0OUIxMDAwRDZCMjUgLyogSlNIVE1MQXR0YWNobWVudEVsZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MQXR0YWNobWVudEVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QzlEQkZFQzFBOUM0OUIxMDAwRDZC
MjUgLyogSlNIVE1MQXR0YWNobWVudEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNIVE1MQXR0YWNobWVudEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0NBNTVGQ0EyNTI0MTdBNzAwMzFGNDUyIC8qIEVsZW1lbnRDb250ZW50RWRpdGFi
bGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEVsZW1lbnRDb250ZW50RWRpdGFibGUuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3Q0FDNkFFODI0N0YwODIwMDBFNjFENTkgLyogQ29sb3JNYXRyaXguaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ29sb3JNYXRyaXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0NBQzZBRUMyNDdGMUM1MTAwRTYxRDU5IC8qIENvbG9yQ29tcG9uZW50cy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xvckNvbXBvbmVudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0NCNUNBM0QxRTUyNUM2QzAwRkFFRjEzIC8qIE1lZGlhUXVlcnlF
eHByZXNzaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlh
UXVlcnlFeHByZXNzaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NCNUNB
M0UxRTUyNUM2QzAwRkFFRjEzIC8qIE1lZGlhUXVlcnlFeHByZXNzaW9uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUXVlcnlFeHByZXNzaW9uLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdDQkE1QkE2MUYwQjRCREUwMDM0RDc0NSAvKiBKU0RPTUNvbnZl
cnRXZWJHTC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTUNvbnZlcnRXZWJHTC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDQkJCQ0M0MUY1NjA1NjcwMDVFRkFBQyAvKiBE
T01NYXRyaXgyREluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERPTU1hdHJpeDJESW5p
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDQkJCQ0M2MUY1NjA1NjgwMDVF
RkFBQyAvKiBET01NYXRyaXgyREluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NTWF0cml4MkRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDQkJC
Q0M4MUY1NjE3QzAwMDVFRkFBQyAvKiBKU0RPTU1hdHJpeDJESW5pdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0RPTU1hdHJpeDJESW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDQkJCQ0M5MUY1NjE3QzAwMDVFRkFBQyAvKiBKU0RPTU1hdHJpeDJESW5pdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0RPTU1hdHJpeDJESW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3Q0JEMTI5QTFGOThCNUZFMDAxMjdEMjkgLyogRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlcHJlY2F0ZWRHbG9iYWxTZXR0
aW5ncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0JEMTI5QzFGOThCNUZGMDAx
MjdEMjkgLyogRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IERlcHJlY2F0ZWRHbG9iYWxTZXR0aW5ncy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDQzJEREY4MUVDOTQxNUEwMDI3Qjc3NCAvKiBOb3RpZmlj
YXRpb25QZXJtaXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5vdGlmaWNhdGlvblBlcm1pc3Npb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NDMkRERkExRUM5NDE1QTAwMjdCNzc0
IC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5vdGlmaWNhdGlvblBlcm1pc3Np
b24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0MyRERGRTFFQzk1QTQ0MDAy
N0I3NzQgLyogSlNOb3RpZmljYXRpb25QZXJtaXNzaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm90aWZpY2F0aW9uUGVybWlzc2lvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDQzJEREZGMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlm
aWNhdGlvblBlcm1pc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNO
b3RpZmljYXRpb25QZXJtaXNzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdD
QzJERTAyMUVDQTA0QTUwMDI3Qjc3NCAvKiBOb3RpZmljYXRpb25EaXJlY3Rpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTm90aWZpY2F0aW9uRGlyZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDQzU2NEI2MThCQUJFQTYwMDFCOTY1MiAvKiBUZWxlcGhvbmVOdW1iZXJEZXRlY3Rv
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZWxlcGhvbmVOdW1iZXJEZXRl
Y3Rvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0M1NjRCOTE4QkFDNzIwMDAx
Qjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZWxlcGhvbmVOdW1iZXJEZXRlY3RvckNvY29hLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NDNjYwOTkxRjkzMDU3ODAwRDUwMEU5IC8q
IFNldHRpbmdzQmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXR0aW5n
c0Jhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NDNjYwOUIxRjkzMDU3OTAw
RDUwMEU5IC8qIFNldHRpbmdzQmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTZXR0aW5nc0Jhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
Q0M2OTkzRTE5MUVDNUY1MDBBRjIyNzAgLyogSlNXZWJLaXROYW1lc3BhY2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJLaXROYW1lc3BhY2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0M2OTkzRjE5MUVDNUY1MDBBRjIyNzAgLyogSlNX
ZWJLaXROYW1lc3BhY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJL
aXROYW1lc3BhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NEMEUyQjUxRjgw
QTQ4MjAwMTZBNENFIC8qIEFib3J0Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBYm9ydENv
bnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NEMEUyQjYxRjgwQTQ4
MjAwMTZBNENFIC8qIEFib3J0Q29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBYm9y
dENvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0QwRTJCNzFG
ODBBNDgyMDAxNkE0Q0UgLyogQWJvcnRDb250cm9sbGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBYm9ydENvbnRyb2xs
ZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0QwRTJCQzFGODBBNTZFMDAx
NkE0Q0UgLyogQWJvcnRTaWduYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJvcnRTaWduYWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NEMEUyQkQxRjgwQTU2RTAwMTZBNENFIC8qIEFi
b3J0U2lnbmFsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFib3J0U2lnbmFsLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NEMEUyQkUxRjgwQTU2RTAwMTZBNENFIC8qIEFib3J0
U2lnbmFsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBBYm9ydFNpZ25hbC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDRDFFNjkxMjRBQkY2MjQwMDg5QzQxOSAvKiBDb2xvclNlcmlhbGl6YXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ29sb3JTZXJpYWxpemF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDRDFFNjkyMjRBQkY2MjQwMDg5QzQxOSAvKiBDb2xvclNlcmlhbGl6YXRpb24u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29sb3JTZXJpYWxpemF0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NEMzQ0MEQxRjMxMDgzNjAwMERDRDQ5IC8qIE11dGF0aW9u
Q2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE11dGF0aW9uQ2FsbGJhY2suaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0QzNDQxMTFGMzEwOEREMDAwRENENDkg
LyogSlNNdXRhdGlvbkNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTXV0YXRpb25DYWxsYmFj
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0QzNDQxMjFGMzEwOEUyMDAwRENE
NDkgLyogSlNNdXRhdGlvbkNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTXV0YXRp
b25DYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRDQ5NENBMUE4
NkVCMUQwMDBBODdFQyAvKiBSZW5kZXJBdHRhY2htZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckF0dGFjaG1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3Q0Q0OTRDQjFBODZFQjFEMDAwQTg3RUMgLyogUmVuZGVyQXR0YWNobWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJBdHRhY2htZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRDcwQzNEMjRBMjhBM0EwMEU2MTA0MCAv
KiBTVkdMZW5ndGhMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0xlbmd0aExpc3QuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0Q3MEM0MDI0QTI4QUM5MDBFNjEwNDAg
LyogU1ZHTnVtYmVyTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdOdW1iZXJMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NENzBDNDIyNEEyOEI3MDAwRTYxMDQw
IC8qIFNWR1BvaW50TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdQb2ludExpc3QuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0Q3MEM0MzI0QTI4QkVDMDBFNjEwNDAg
LyogU1ZHU3RyaW5nTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdTdHJpbmdMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NENzBDNDYyNEEyOENENzAwRTYxMDQw
IC8qIFNWR1RyYW5zZm9ybUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVHJhbnNmb3Jt
TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDREE3OTEyMjUwRTg4RjAw
MDdEMUIzNiAvKiBJbm5lckhUTUwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElubmVySFRNTC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdDREE3OTE5MjUwRThDOTIwMDdEMUIzNiAvKiBFbGVtZW50K0RP
TVBhcnNpbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9ICJFbGVtZW50K0RPTVBhcnNpbmcuaWRsIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0NERTczOTYxRjlCRDU5NTAwMzkwMzEyIC8qIFNldHRpbmdzLnlh
bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgaW5kZW50
V2lkdGggPSAyOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXR0aW5ncy55YW1s
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDI7IH07CisJCTdDREU4RUJDMUYx
OTNCQzUwMDE2OEZFNyAvKiBDU1NTdHlsZURlY2xhcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1N0eWxlRGVjbGFyYXRpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3Q0UxOTE0NzFGMkE5OEFGMDAyNzJGNzggLyogRmV0Y2hSZXF1
ZXN0SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGZXRjaFJlcXVlc3RJ
bml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTE5MTQ5MUYyQTk4QjAwMDI3
MkY3OCAvKiBGZXRjaFJlcXVlc3RJbml0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGZXRj
aFJlcXVlc3RJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NFMTkxNEIx
RjJBOUFGQjAwMjcyRjc4IC8qIEZldGNoUmVmZXJyZXJQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RmV0Y2hSZWZlcnJlclBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0Ux
OTE0QzFGMkE5QUZCMDAyNzJGNzggLyogRmV0Y2hSZWZlcnJlclBvbGljeS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRmV0
Y2hSZWZlcnJlclBvbGljeS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTE5
MTRGMUYyQTlCMEEwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RNb2RlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZldGNoUmVxdWVzdE1vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NFMTkx
NTAxRjJBOUIwQTAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdE1vZGUuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZldGNoUmVx
dWVzdE1vZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0UxOTE1MzFGMkE5
QjFEMDAyNzJGNzggLyogRmV0Y2hSZXF1ZXN0Q3JlZGVudGlhbHMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RmV0Y2hSZXF1ZXN0Q3JlZGVudGlhbHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
N0NFMTkxNTQxRjJBOUIxRDAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdENyZWRlbnRpYWxzLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBGZXRjaFJlcXVlc3RDcmVkZW50aWFscy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDRTE5MTU3MUYyQTlCMzQwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RDYWNoZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGZXRjaFJlcXVlc3RDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk3Q0UxOTE1OTFGMkE5QjM0MDAyNzJGNzggLyogRmV0Y2hSZXF1ZXN0Q2FjaGUuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEZldGNoUmVxdWVzdENhY2hlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0NFMTkxNUQxRjJBOUI0RjAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdFJlZGlyZWN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZldGNoUmVxdWVzdFJlZGlyZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDRTE5MTVGMUYyQTlCNEYwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RSZWRpcmVj
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gRmV0Y2hSZXF1ZXN0UmVkaXJlY3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3Q0UxOTE2NDFGMkFCNkZCMDAyNzJGNzggLyogSlNGZXRjaFJlcXVlc3RDYWNo
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZldGNoUmVxdWVzdENhY2hlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTdDRTE5MTY0MUYyQUI2RkIwMDI3MkY3OSAvKiBKU0RPTUNhY2hlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRE9NQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0NFMTkxNjQxRjJBQjZGQjAwMjcyRjdBIC8qIEpTRE9NQ2FjaGVTdG9yYWdlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTRE9NQ2FjaGVTdG9yYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDRTE5MTY1MUYyQUI2RkQwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdE1vZGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNGZXRjaFJlcXVlc3RNb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0NFMTkxNjYxRjJBQjZGRjAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0
Q3JlZGVudGlhbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGZXRjaFJlcXVlc3RDcmVkZW50aWFscy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0UxOTE2NzFGMkFCNzAxMDAyNzJGNzgg
LyogSlNGZXRjaFJlZmVycmVyUG9saWN5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmV0Y2hS
ZWZlcnJlclBvbGljeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTE5MTY4
MUYyQUI3MDMwMDI3MkY3OCAvKiBKU0ZldGNoUmVmZXJyZXJQb2xpY3kuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNGZXRjaFJlZmVycmVyUG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDRTE5MTY5MUYyQUI3MDUwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdEluaXQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNGZXRjaFJlcXVlc3RJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdDRTE5MTZBMUYyQUI3MDYwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdFJlZGlyZWN0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRmV0Y2hSZXF1ZXN0UmVkaXJlY3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0NFMTkxNkIxRjJBQjcwODAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0
Q3JlZGVudGlhbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGZXRjaFJlcXVlc3RDcmVkZW50
aWFscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTE5MTZDMUYyQUI3MEEw
MDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdE1vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGZXRjaFJl
cXVlc3RNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTE5MTZEMUYyQUI3
MEMwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdEluaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNGZXRjaFJlcXVlc3RJbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NF
MTkxNkUxRjJBQjcwRDAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0Q2FjaGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNGZXRjaFJlcXVlc3RDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDRTE5MTZFMUYyQUI3MEQwMDI3MkY3OSAvKiBKU0RPTUNhY2hlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRE9NQ2FjaGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3Q0UxOTE2RTFGMkFCNzBEMDAyNzJGN0EgLyogSlNET01DYWNoZVN0b3JhZ2UuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNET01DYWNoZVN0b3JhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3Q0UxOTE2RTFGMkFCNzBEMDAyNzJGN0IgLyogSlNDYWNoZVF1ZXJ5T3B0
aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NhY2hlUXVlcnlPcHRpb25zLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NFMTkxNkYxRjJBQjcwRjAwMjcyRjc4IC8qIEpT
RmV0Y2hSZXF1ZXN0UmVkaXJlY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGZXRjaFJlcXVl
c3RSZWRpcmVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTIyMUVFMjUx
NDI5RjQwMDA2ODg2QiAvKiBQZXJmb3JtYW5jZU1hcmsuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlTWFy
ay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTIyMUYwMjUxNDI5RjUwMDA2
ODg2QiAvKiBQZXJmb3JtYW5jZU1lYXN1cmUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlTWVhc3VyZS5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTU4RDQ5MURENjRBNUIwMDEyODU1
MiAvKiBTVkdQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQb2lu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U1OEQ0RjFERDY5QTFFMDAxMjg1
NTIgLyogU1ZHTnVtYmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR051
bWJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U1OEQ1MTFERDdCMDkzMDAx
Mjg1NTIgLyogU1ZHTGVuZ3RoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNW
R0xlbmd0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U1OEQ1MjFERDdCMDkz
MDAxMjg1NTIgLyogU1ZHTGVuZ3RoVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHTGVuZ3RoVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3Q0U1OEQ1MzFERDdCMDkzMDAxMjg1NTIgLyogU1ZHTGVuZ3RoVmFsdWUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTGVuZ3RoVmFsdWUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0NFNThENTYxREQ3RDk2RDAwMTI4NTUyIC8qIFNWR1RyYW5zZm9y
bVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RyYW5zZm9ybVZh
bHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTY4MzQyMTkyMTQzQTgwMEY0
RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlwdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U2ODM0MzE5MjE0M0E4MDBGNEQ5MjggLyog
VXNlck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdDRTY4MzQ2MTkyMTgyMTUwMEY0RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRs
ZXJEZXNjcmlwdG9yVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNl
ck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvclR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdDRTZDQkZBMTg3RjM3MDcwMEQ0NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybWF0Q29udmVydGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRTZDQkZDMTg3RjM5NDkwMEQ0NkJGNSAvKiBGb3JtYXRD
b252ZXJ0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9ybWF0
Q29udmVydGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NFN0ZBNTkxRUY4
ODIzMDAwNjBDOUQ2IC8qIERvY3VtZW50VG91Y2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRU
b3VjaC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U3RkE1QTFFRjg4MjMwMDA2
MEM5RDYgLyogRG9jdW1lbnQrVG91Y2guaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJEb2N1bWVudCtUb3VjaC5pZGwiOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3Q0U3RkE1QjFFRjg4MjMwMDA2MEM5RDYgLyog
RG9jdW1lbnRUb3VjaC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEb2N1bWVudFRvdWNoLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NFQjU3RTkxRjk1NjUxNTAwMDk3QUVDIC8q
IFNldHRpbmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFNldHRpbmdzLmg7IHBhdGggPSBEZXJpdmVkU291
cmNlcy9XZWJDb3JlL1NldHRpbmdzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTdDRUI1N0VBMUY5NTY1MTUwMDA5N0FFQyAvKiBTZXR0aW5ncy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBTZXR0aW5ncy5jcHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1Nl
dHRpbmdzLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJN0NGMTU4
OTkxRUJCQ0RDNzAwRDRCRkI3IC8qIFN1YnJlc291cmNlSW50ZWdyaXR5LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN1YnJlc291cmNlSW50ZWdyaXR5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0NGMTU4OUExRUJCQ0RDNzAwRDRCRkI3IC8qIFN1
YnJlc291cmNlSW50ZWdyaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1
YnJlc291cmNlSW50ZWdyaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdDRjU3
MEM2MjQ5MkJENDkwMDhFQjMzQyAvKiBDdXJyZW50U2NyaXB0SW5jcmVtZW50ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ3VycmVudFNjcmlwdEluY3JlbWVudGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdDRjkzMEU2MUUwMUY5QUQwMEJBRkZCRSAvKiBQYXltZW50SGVhZGVycy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXltZW50SGVhZGVycy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk3Q0ZEQzU3QTFBQzFEODA1MDBFMjRBNTcgLyogQ29udGVu
dEV4dGVuc2lvbkVycm9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENvbnRlbnRFeHRlbnNpb25FcnJvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdDRkRDNTdCMUFDMUQ4MDUwMEUyNEE1NyAvKiBDb250ZW50RXh0ZW5zaW9uRXJyb3IuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudEV4dGVuc2lvbkVycm9yLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdENEM5NkQ4MUFENDQ4MzUwMDM2NUE1MCAvKiBK
U0ZldGNoSGVhZGVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0ZldGNoSGVhZGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdENEM5NkQ5
MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoSGVhZGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0ZldGNoSGVhZGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3RTQ2RjZGODE2MjdBMkM5MDAwNjIyMjMgLyogSlNPRVNFbGVtZW50SW5kZXhVaW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTT0VTRWxlbWVudEluZGV4
VWludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFNDZGNkY5MTYyN0EyQzkw
MDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRleFVpbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNPRVNFbGVtZW50SW5kZXhVaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTdFNDc0RTFCMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRyYWNr
ZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMaXRlRGF0YWJh
c2VUcmFja2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFNDc0RTFD
MTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRyYWNrZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMaXRlRGF0YWJhc2VUcmFja2VyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTdFNDc0RTFEMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRh
YmFzZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FM
aXRlRGF0YWJhc2VUcmFja2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U0
Qzk2RDgxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmV0Y2hSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVhZGFibGVT
dHJlYW1Tb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNS
ZWFkYWJsZVN0cmVhbVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdF
NEM5NkQ4MUFENDQ4MzUwMDM2NUE1MiAvKiBKU0ZldGNoRXZlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGZXRjaEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUzIC8qIEpTRXh0ZW5kYWJsZUV2
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRXh0ZW5kYWJs
ZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U0Qzk2RDgxQUQ0NDgz
NTAwMzY1QTU0IC8qIEpTRXh0ZW5kYWJsZUV2ZW50SW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0V4dGVuZGFibGVFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3RTRDOTZEOTFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaFJl
cXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGZXRjaFJlcXVlc3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U0Qzk2RDkxQUQ0NDgzNTAwMzY1QTUx
IC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNSZWFkYWJsZVN0cmVhbVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk3RTRDOTZEOTFBRDQ0ODM1MDAzNjVBNTIgLyogSlNGZXRjaEV2ZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmV0Y2hFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk3RTRDOTZEOTFBRDQ0ODM1MDAzNjVBNTMgLyogSlNFeHRlbmRhYmxlRXZl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeHRlbmRhYmxlRXZlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U0REUxMEMxOThCMTBCNjAwNTFDQjAy
IC8qIERpc2tDYWNoZU1vbml0b3JDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IERpc2tDYWNoZU1vbml0b3JDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0U1RDdBNzMxNjFEM0Y4RjAwODk2QzM0IC8qIE9FU0VsZW1lbnRJbmRleFVp
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT0VTRWxlbWVudElu
ZGV4VWludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFNUQ3QTc0MTYxRDNG
OEYwMDg5NkMzNCAvKiBPRVNFbGVtZW50SW5kZXhVaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9FU0VsZW1lbnRJbmRleFVpbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJN0U2NkUyMzExNkQ2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVBVEMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFNjZF
MjMxMTdFNkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZVBWUlRDLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U2NkUyMzIxNkQ2RUI2
QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk3RTY2RTIzMjE3RTZFQjZDMDBGN0U3RkYgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVBWUlRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3RTdERTFGQzE5NUNFRjI2MDAzNTM2M0IgLyogUmVzb3VyY2VSZXF1ZXN0Q29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBSZXNvdXJjZVJlcXVlc3RDb2Nv
YS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0U4RkFEQzMxOTlBOTVCMTAwNzE0
OTY4IC8qIFN1YnJlc291cmNlTG9hZGVyQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBTdWJyZXNvdXJjZUxvYWRlckNvY29hLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3RTk5QUY1MjBCMTM4NDY0NjhGQjAxQTUgLyogV2luZG93Rm9jdXNB
bGxvd2VkSW5kaWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFdpbmRvd0ZvY3VzQWxsb3dlZEluZGljYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTdFOTlBRjU0MEIxMzg0NjQ2OEZCMDFBNSAvKiBXaW5kb3dGb2N1c0FsbG93ZWRJbmRp
Y2F0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2luZG93Rm9jdXNBbGxv
d2VkSW5kaWNhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFQTMwRjYyMTZE
RkQ2MjcwMDI1N0QwQiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJN0VBMzBGNjIxN0VGRDYyNzAwMjU3RDBCIC8qIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVQVlJUQy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xDb21wcmVz
c2VkVGV4dHVyZVBWUlRDLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0VBMzBG
NjcxNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMQ29tcHJlc3NlZFRleHR1
cmVBVEMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3RUEzMEY2NzE3RUZGRTc1
MDAyNTdEMEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3RUEzMEY2ODE2REZGRTc1MDAyNTdE
MEIgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlQVRDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3RUEzMEY2ODE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUFZSVEMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNX
ZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0VEQUFGQzgxOUEyQ0JEMTAwMzRERkQxIC8qIERpc2tDYWNoZU1vbml0b3JDb2NvYS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNrQ2FjaGVNb25pdG9yQ29jb2EuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0VFNjg0NEUxMkQyNkUzODAwRTc5NDE1IC8q
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdFRTY4NDUzMTJEMjZFMzgwMEU3OTQxNSAvKiBGb3JtRGF0YVN0cmVhbUNGTmV0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvcm1EYXRhU3RyZWFtQ0ZOZXQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3RUU2ODQ1NDEyRDI2RTM4MDBFNzk0
MTUgLyogRm9ybURhdGFTdHJlYW1DRk5ldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBGb3JtRGF0YVN0cmVhbUNGTmV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTdFRTY4NDU3MTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZUVycm9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJN0VFNjg0NUExMkQyNkUzODAwRTc5NDE1IC8qIFJlc291cmNlUmVxdWVzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNvdXJjZVJlcXVlc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0VFNjg0NUIxMkQyNkUzODAwRTc5NDE1IC8qIFJl
c291cmNlUmVxdWVzdENGTmV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlc291cmNlUmVxdWVzdENGTmV0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJN0VFNjg0NUMxMkQyNkUzODAwRTc5NDE1IC8qIFJlc291cmNlUmVxdWVzdENGTmV0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNlUmVxdWVzdENGTmV0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdFRTY4NDVDMTJEMjZFMzgwMEZGOTQxNSAvKiBE
TlNSZXNvbHZlUXVldWVDRk5ldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
TlNSZXNvbHZlUXVldWVDRk5ldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3RUU2
ODQ1RDEyRDI2RTM4MDBFNzk0MTUgLyogUmVzb3VyY2VSZXNwb25zZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSZXNvdXJjZVJlc3BvbnNlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTdGNEM5NkQ4MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoQm9keS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZldGNoQm9keS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdGNEM5NkQ4MUFENDQ4MzUwMDM2NUE1MSAvKiBK
U1JlYWRhYmxlU3RyZWFtU2luay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1JlYWRhYmxlU3RyZWFtU2luay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTdGNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoQm9keS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZldGNoQm9keS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk3RjRDOTZEOTFBRDQ0ODM1MDAzNjVBNTEgLyogSlNSZWFkYWJsZVN0cmVhbVNp
bmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZWFkYWJsZVN0cmVhbVNp
bmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODEwMkM1ODcxMzI1QkIxMTAwRERF
NjdBIC8qIFN0cmluZ0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFN0cmluZ0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODFBQzU5OTcxMzE2MzZFNjAwMDlBN0UwIC8qIERhdGFUcmFuc2Zlckl0ZW0uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YVRyYW5zZmVySXRlbS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4MUFDNTk5ODEzMTYzNkU2MDAwOUE3RTAgLyogRGF0YVRyYW5zZmVy
SXRlbUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YVRyYW5zZmVy
SXRlbUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODFBQzVBRTgxMzE2Mzky
RTAwMDlBN0UwIC8qIERhdGFUcmFuc2Zlckl0ZW0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IERhdGFUcmFuc2Zlckl0ZW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MUFD
NUFFOTEzMTYzOTJFMDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbUxpc3QuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IERhdGFUcmFuc2Zlckl0ZW1MaXN0LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODFBQzZDMzQxMzFDNTdDMjAwMDlBN0UwIC8qIFN0cmluZ0NhbGxiYWNr
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTdHJpbmdDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTgxQUM2QzM1MTMxQzU3RDMwMDA5QTdFMCAvKiBTdHJpbmdD
YWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHJpbmdDYWxsYmFj
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MUJFMjBBODExRjRCNjZGMDA5MTVE
RkEgLyogSlNJREJDdXJzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
REJDdXJzb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODFGNjVGRjUxMzc4OEZB
QTAwRkY2RjJEIC8qIERyYWdTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBEcmFnU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODIyNTQzMkNBOUQ0
QjRDRjQ2MjhFQzdGIC8qIEpTQmVmb3JlVW5sb2FkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNCZWZvcmVVbmxvYWRFdmVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTgyQUIxNzZGMTI1QzgyNjcwMEM1MDY5RCAvKiBJbnNwZWN0b3JT
dHlsZVNoZWV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3Bl
Y3RvclN0eWxlU2hlZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MkFCMTc3
MDEyNUM4MjY3MDBDNTA2OUQgLyogSW5zcGVjdG9yU3R5bGVTaGVldC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JTdHlsZVNoZWV0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgyRTNEOERDMTIyRUEwRDEwMDNBRTVCQyAvKiBDU1NQcm9wZXJ0eVNv
dXJjZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTUHJv
cGVydHlTb3VyY2VEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODJFM0Q4
REQxMjJFQTBEMTAwM0FFNUJDIC8qIENTU1Byb3BlcnR5U291cmNlRGF0YS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NQcm9wZXJ0eVNvdXJjZURhdGEuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwMDMwRjMxQjdEMzNBNjAwRUQzQUFDIC8qIEdlbmVyaWND
YWNoZWRIVE1MQ29sbGVjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBHZW5lcmljQ2FjaGVkSFRNTENvbGxlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4MzAwMzBGNDFCN0QzM0E2MDBFRDNBQUMgLyogR2VuZXJpY0NhY2hlZEhUTUxD
b2xsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdlbmVyaWNDYWNo
ZWRIVE1MQ29sbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzAwMzBG
NzFCN0QzOTg4MDBFRDNBQUMgLyogQ2FjaGVkSFRNTENvbGxlY3Rpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkSFRNTENvbGxlY3Rpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODMwMDVGOUEyNEVCMUQyODAwNDgwRjlCIC8qIEF1ZGlvVGltZXN0
YW1wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvVGltZXN0YW1wLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzMDA1RjlDMjRFQjFEMjkwMDQ4MEY5QiAvKiBBdWRpb1RpbWVzdGFtcC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXVkaW9UaW1lc3RhbXAuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzAzMzRGQjFGNTQ5MDUyMDA0REY3MDcgLyogRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtRGlyZWN0
b3J5UmVhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwMzM0RkMxRjU0
OTA1MjAwNERGNzA3IC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzAzMzRGRDFGNTQ5MDUyMDA0REY3MDcgLyogRmlsZVN5
c3RlbUVudHJpZXNDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRmlsZVN5c3Rl
bUVudHJpZXNDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMDMz
NEZFMUY1NDkwNTIwMDRERjcwNyAvKiBGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwMzM0RkYxRjU0OTA1MjAwNERGNzA3IC8q
IEZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZp
bGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzA0MDI3RDI0OUE3QTVCMDBBOTBEOEQgLyogRGlzdGFuY2VNb2RlbFR5cGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzdGFuY2VNb2RlbFR5cGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwNDAyN0YyNDlBN0E1QzAwQTkwRDhEIC8qIERpc3RhbmNl
TW9kZWxUeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEaXN0YW5jZU1vZGVsVHlwZS5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMDQwMjgwMjQ5QTdBNUMwMEE5MEQ4
RCAvKiBQYW5uaW5nTW9kZWxUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBhbm5pbmdNb2RlbFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwNDAy
ODEyNDlBN0E1RDAwQTkwRDhEIC8qIFBhbm5pbmdNb2RlbFR5cGUuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFBhbm5pbmdNb2RlbFR5cGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4MzA1MTk5MjFCQjBGMEU3MDBGMzc3MkUgLyogSFRNTFRpbWVFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxUaW1lRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMDUxOTkzMUJCMEYwRTcwMEYzNzcyRSAvKiBI
VE1MVGltZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFRp
bWVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMDUxOTk0MUJCMEYw
RTcwMEYzNzcyRSAvKiBIVE1MVGltZUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IEhUTUxUaW1lRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMDZF
RkYwMUI4QkNFN0MwMDMxRDAzMiAvKiBOYXRpdmVOb2RlRmlsdGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hdGl2ZU5vZGVGaWx0ZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzA3ODRCMDFDNTJFRTE5MDAxMDREMUQgLyogWE1MRG9jdW1l
bnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFhNTERvY3VtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMwNzg0QjExQzUyRUUxOTAwMTA0RDFEIC8qIFhNTERvY3Vt
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTERvY3VtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEExQzdBMjREQjc4NkYwMDJFQ0NBRCAvKiBN
ZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1ZGlv
U291cmNlT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEExQzdD
MjREQjc4NzAwMDJFQ0NBRCAvKiBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VPcHRpb25zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTgzMEEzNkJBMURBQzVGQTcwMDZEN0QwOSAvKiBKU01vdXNlRXZl
bnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTW91c2VF
dmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzBBMzZCQjFEQUM1
RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU01vdXNlRXZlbnRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTgzMEQwQjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSUlSUHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMEQw
QjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSUlSUHJvY2Vzc29yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMxMDJC
MjMxRjlFQURDMjAwRTQwNEI5IC8qIEpTRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMxMDJCMjUxRjlFQURDMjAwRTQwNEI5IC8qIEpT
RXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4MzExQzAwMDFGQUEyRTg5MDBFM0M4RTUgLyogU1dTZXJ2ZXJKb2JRdWV1ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTV1NlcnZlckpvYlF1ZXVl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMxMUMwMDIxRkFBMkU4OTAwRTND
OEU1IC8qIFNXU2VydmVySm9iUXVldWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU1dTZXJ2ZXJKb2JRdWV1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzE5
OEZCQjI0QTE2MEMxMDA0MjBCMDUgLyogQmFzZUF1ZGlvQ29udGV4dC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCYXNlQXVkaW9Db250ZXh0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMxOThGQkQyNEExNjBDMTAwNDIwQjA1IC8qIEJhc2VBdWRp
b0NvbnRleHQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEJhc2VBdWRpb0NvbnRleHQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzE5OEZCRTI0QTE2MEMxMDA0MjBCMDUg
LyogQmFzZUF1ZGlvQ29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBC
YXNlQXVkaW9Db250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMUEzRUE4
MjUzRjc4QzIwMDY3ODA0RiAvKiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29w
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMUM0NkMzMUY5RUU1RTAwMEVC
RDQ1MCAvKiBKU0V4dGVuZGFibGVNZXNzYWdlRXZlbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50Q3VzdG9tLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMxRDFGMjkxQzU2RUNBMDAwRjVGNkMw
IC8qIEhUTUxEYXRhRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MRGF0YUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
MzIxNTA3QTFGMjdFQTE1MDA5NUIxMzYgLyogTmF2aWdhdG9yQmVhY29uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IE5hdmlnYXRvckJlYWNvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTgzMjE1MDdCMUYyN0VBMTUwMDk1QjEzNiAvKiBOYXZpZ2F0b3JCZWFjb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTmF2aWdhdG9yQmVhY29uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzMjE1MDdDMUYyN0VBMTUwMDk1QjEzNiAvKiBOYXZpZ2F0b3IrQmVhY29uLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAi
TmF2aWdhdG9yK0JlYWNvbi5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzI2
QkY4OTI0RDM1QzIwMDAxRjhBODUgLyogT3ZlclNhbXBsZVR5cGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
T3ZlclNhbXBsZVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMyNkJGOEIy
NEQzNUMyMDAwMUY4QTg1IC8qIE92ZXJTYW1wbGVUeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPdmVyU2FtcGxlVHlw
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzMjZCRjhDMjREMzVDMjAwMDFG
OEE4NSAvKiBXYXZlU2hhcGVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXYXZlU2hhcGVyT3B0
aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzI2QkY4RDI0RDM1QzIxMDAx
RjhBODUgLyogV2F2ZVNoYXBlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFdhdmVTaGFwZXJPcHRpb25zLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMyNzRGQ0QyNTJFMjZBODAwMUUzNURD
IC8qIEF1ZGlvV29ya2xldFByb2Nlc3NvckNvbnN0cnVjdGlvbkRhdGEuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ29uc3RydWN0aW9uRGF0YS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4MzI5QTQxNzFFQzI1QjJCMDA4RUQ0QkUgLyogRG9jdW1lbnRBbmRF
bGVtZW50RXZlbnRIYW5kbGVycy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRG9jdW1lbnRB
bmRFbGVtZW50RXZlbnRIYW5kbGVycy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzMjlEQ0MyMUM3QTZBRTMwMDczMEIzMyAvKiBIVE1MSHlwZXJsaW5rRWxlbWVudFV0aWxzLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MSHlwZXJsaW5rRWxlbWVudFV0aWxzLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMyQjg0MzMxOUQ4RTU1MTAwQjI2MDU1IC8q
IFNWR0FuaW1hdGVFbGVtZW50QmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdBbmltYXRlRWxlbWVudEJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODMyQjg0MzUxOUQ4RTU3NDAwQjI2MDU1IC8qIFNWR0FuaW1hdGVFbGVtZW50QmFzZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlRWxlbWVudEJhc2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzNBRTUyNjI0RDM4NkUxMDAwMTdD
NEIgLyogT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50SW5pdC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT2ZmbGluZUF1
ZGlvQ29tcGxldGlvbkV2ZW50SW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzM0FFNTI4MjREMzg2RTEwMDAxN0M0QiAvKiBPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnRJ
bml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudEluaXQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMzQjlFMkExRjUwOEQ4MDAwRTBFNDI4IC8q
IEpTRmlsZVN5c3RlbUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
RmlsZVN5c3RlbUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzM0I5RTJC
MUY1MDhEODAwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzM0I5RTJDMUY1MDhEODAwMEUw
RTQyOCAvKiBKU0ZpbGVTeXN0ZW1GaWxlRW50cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNGaWxlU3lzdGVtRmlsZUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTgzM0I5RTJEMUY1MDhEODAwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1GaWxlRW50cnku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNGaWxlU3lzdGVtRmls
ZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMzQjlFMkUxRjUwOEQ4
MDAwRTBFNDI4IC8qIEpTRmlsZVN5c3RlbUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRmlsZVN5c3RlbUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODMzQjlFMkYxRjUwOEQ4MDAwRTBFNDI4IC8qIEpTRmlsZVN5c3RlbURpcmVj
dG9yeUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmlsZVN5c3Rl
bURpcmVjdG9yeUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzM0JEODEz
MjUyNEQ0RTIwMDZFNzJCMyAvKiBXb3JrbGV0UGVuZGluZ1Rhc2tzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtsZXRQZW5kaW5nVGFza3MuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODMzQkQ4MTUyNTI0RDRFMjAwNkU3MkIzIC8qIFdvcmtsZXRQZW5kaW5n
VGFza3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2xldFBl
bmRpbmdUYXNrcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzM0JEODE2MjUy
NEQ0RTMwMDZFNzJCMyAvKiBXb3JrbGV0R2xvYmFsU2NvcGVQcm94eS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrbGV0R2xvYmFsU2NvcGVQcm94eS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzNCRDgxOTI1MjRENTFCMDA2RTcyQjMgLyogQXVkaW9Xb3Jr
bGV0R2xvYmFsU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9X
b3JrbGV0R2xvYmFsU2NvcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMzQkQ4
MUEyNTI0RDUxQzAwNkU3MkIzIC8qIEF1ZGlvV29ya2xldEdsb2JhbFNjb3BlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvV29ya2xldEdsb2JhbFNjb3BlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODMzQkQ4MUIyNTI0RDUxQzAwNkU3MkIz
IC8qIEF1ZGlvV29ya2xldE1lc3NhZ2luZ1Byb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEF1ZGlvV29ya2xldE1lc3NhZ2luZ1Byb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzM0JEODFDMjUyNEQ1MUQwMDZFNzJCMyAvKiBBdWRpb1dvcmtsZXRNZXNz
YWdpbmdQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRp
b1dvcmtsZXRNZXNzYWdpbmdQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzM0NGNzBGMjBEQjNGNUYwMDE0MUJDQyAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZU9i
c2VydmVyQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM0MDdGQzAx
RThEOUMxMjAwRTA0OEQzIC8qIFZpc2liaWxpdHlDaGFuZ2VDbGllbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVmlzaWJpbGl0eUNoYW5nZUNsaWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzQ4QkZBOTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xs
ZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENsYXNzQ29s
bGVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNDhCRkFBMUI4NTcy
OTUwMDkxMkYzNiAvKiBDbGFzc0NvbGxlY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ2xhc3NDb2xsZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzNEE2QTM4MjUyNjg0NDEwMDc0N0Y1RCAvKiBXb3JrbGV0UGFyYW1ldGVycy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrbGV0UGFyYW1ldGVycy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzRCODZBNjFDNTZFODNBMDBGM0YwRTMgLyogSFRNTERhdGFF
bGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MRGF0YUVsZW1lbnQuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzRCODZBNzFDNTZFODNBMDBGM0YwRTMgLyog
SFRNTERhdGFFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxE
YXRhRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzRCODZBODFDNTZF
OTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNIVE1MRGF0YUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM0Qjg2QTkxQzU2RTkzRTAwRjNGMEUzIC8qIEpTSFRNTERhdGFFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTERhdGFFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM0Q0JGQkYyNERDNzg1NTAwQzJBM0Q4
IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlh
U3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzNENCRkMxMjREQzc4NTYwMEMyQTNEOCAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlT3B0aW9u
cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzRERDRGMzFCRTA4OTg5MDAyQzlDM0UgLyogUGFnZU1hYy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhZ2VNYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBT
aGFyZWRTdHJpbmdIYXNoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJl
ZFN0cmluZ0hhc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM0REZBQ0UxRjdE
QUU1NzAwQzI3MjVCIC8qIFNoYXJlZFN0cmluZ0hhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2hhcmVkU3RyaW5nSGFzaC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MTlFMjRGNTczQUQwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkZpbHRlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4MzUwNTFBMDI0RjU3M0FFMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9u
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJSVJGaWx0ZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTA1MUExMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBJSVJGaWx0ZXJOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM1MDUxQTIyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSUlSRmlsdGVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUwNTFB
MzI0RjU3M0FGMDA5OTExRDcgLyogSUlSRmlsdGVyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSUlSRmlsdGVy
T3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTBDM0U3MURBNTlC
NjIwMDM1NTQyNCAvKiBTY3JvbGxMb2dpY2FsUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTBDM0U3MURBNTlCNjIwMDM1NTQzNSAvKiBTY3JvbGxJbnRvVmlld09w
dGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsSW50b1ZpZXdP
cHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTBDM0U3MURBNTlCNjIw
MDM1NjQyNCAvKiBTY3JvbGxCZWhhdmlvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTY3JvbGxCZWhhdmlvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzUw
QzNFNzFEQTU5QjYyMDAzNTY0MzQgLyogU2Nyb2xsQmVoYXZpb3IuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxCZWhhdmlvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNTBDM0U3MURBNTlCNjIwMDM1NjQzNSAvKiBTY3JvbGxPcHRpb25zLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbE9wdGlvbnMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MEMzRTcxREE1OUI2MjAwMzU2NDQ2IC8qIFNjcm9s
bFRvT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxUb09w
dGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MEMzRTgxREE1OUI2MjAw
MzU1NDI0IC8qIFNjcm9sbExvZ2ljYWxQb3NpdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gU2Nyb2xsTG9naWNhbFBvc2l0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODM1MEMzRTgxREE1OUI2MjAwMzU1NDM1IC8qIFNjcm9sbEludG9WaWV3T3B0aW9ucy5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MEMzRTgxREE1OUI2MjAwMzU2NDI0IC8qIFNjcm9s
bEJlaGF2aW9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTY3JvbGxCZWhhdmlvci5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNTBDM0U4MURBNTlCNjIwMDM1NjQzNSAv
KiBTY3JvbGxPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTY3JvbGxPcHRpb25z
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MEMzRTgxREE1OUI2MjAwMzU2
NDQ2IC8qIFNjcm9sbFRvT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2Nyb2xs
VG9PcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1MjBDN0QxQTcx
QkZDQzAwNkJEMkFBIC8qIENTU0ZvbnRGYW1pbHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ1NTRm9udEZhbWlseS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
MzU2NTdDNjFFQ0FCMEU4MDBDREU3MkQgLyogSlNET01NYXRyaXhJbml0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NTWF0cml4SW5pdC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNUFBMzg4MjUzRjU1QkIwMDc0NjU1NCAvKiBXb3JrZXJP
cldvcmtsZXRTY3JpcHRDb250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdvcmtlck9yV29ya2xldFNjcmlwdENvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzVCNjgwRTFGNTQ4QkRFMDA3MUY3RjYgLyogSlNGaWxlU3lz
dGVtRW50cnlDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNGaWxlU3lzdGVtRW50cnlDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzVEMkQ3NDFGNUYxRkI4MDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudCtFbnRyaWVzQVBJ
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiSFRNTElucHV0RWxlbWVudCtFbnRyaWVzQVBJ
LmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNUQyRDc1MUY1RjFGQjgwMDE0
MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBIVE1MSW5wdXRFbGVtZW50RW50cmllc0FQSS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4MzVEMkQ3NjFGNUYxRkI4MDAxNDFERUQgLyogSFRNTElucHV0RWxl
bWVudEVudHJpZXNBUEkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4MzVEMzYzNjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQnVpbGRlckN1c3RvbS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzVENTRDMTFGNERFNTM0MDBFNjA2NzEgLyogRGly
ZWN0b3J5RmlsZUxpc3RDcmVhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IERpcmVjdG9yeUZpbGVMaXN0Q3JlYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzNUQ1NEMyMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlzdENy
ZWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlyZWN0b3J5RmlsZUxp
c3RDcmVhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNURBOEZGMjRGNTgy
NTcwMDIyRERBNCAvKiBJSVJEU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSUlSRFNQ
S2VybmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1REE5MDEyNEY1ODI1
NzAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJSVJEU1BLZXJuZWwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM1RjhCMjYxRDJEOTBCQTAwRTQwOEVD
IC8qIFNsb3RhYmxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTbG90YWJsZS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNjJFOEJGMjBDRUY5Q0IwMDI0NTg4NiAvKiBT
aG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzNjU4OUQ4MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1FbnRyaWVz
Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lzdGVt
RW50cmllc0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNjU4OUQ5
MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lzdGVtRGlyZWN0b3J5UmVhZGVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNjU4OURBMUY1NEE3NjIwMERDMzFGNCAv
KiBKU0ZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2NTg5REIxRjU0QTc2MjAwREMzMUY0IC8qIEpTRmlsZVN5
c3RlbURpcmVjdG9yeVJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4MzY5RTU4RjFBRkREMDMwMDA4N0RGNjggLyogTm9uRG9jdW1lbnRUeXBlQ2hp
bGROb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4MzY5RkRGOTFGQTEwMkNBMDBDMUZGMUYgLyogU2VydmljZVdv
cmtlckNsaWVudFR5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJD
bGllbnRUeXBlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2OUZERkIxRkEx
MDJDQjAwQzFGRjFGIC8qIFNlcnZpY2VXb3JrZXJDbGllbnRUeXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJDbGllbnRUeXBlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTgzNkFDRUJGMUVDQTYyQjAwMDRCRDAxMiAvKiBET01NYXRyaXhS
ZWFkT25seS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01NYXRy
aXhSZWFkT25seS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkFDRUMwMUVD
QTYyQjAwMDRCRDAxMiAvKiBET01NYXRyaXhSZWFkT25seS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBET01NYXRyaXhSZWFkT25seS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4MzZBQ0VDMTFFQ0E2MkIwMDA0QkQwMTIgLyogRE9NTWF0cml4UmVhZE9ubHkuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERPTU1hdHJpeFJlYWRPbmx5LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2QUNFQzQxRUNBNjY1NDAwNEJEMDEyIC8qIERPTU1hdHJp
eC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01NYXRyaXguY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZBQ0VDNTFFQ0E2NjU0MDA0QkQwMTIg
LyogRE9NTWF0cml4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU1hdHJp
eC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZBQ0VDNjFFQ0E2NjU0MDA0QkQw
MTIgLyogRE9NTWF0cml4LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01NYXRyaXguaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZBQ0VDNzFFQ0E2NjU0MDA0QkQwMTIg
LyogRE9NTWF0cml4SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01N
YXRyaXhJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkFDRUM4MUVDQTY2
NTQwMDRCRDAxMiAvKiBET01NYXRyaXhJbml0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBE
T01NYXRyaXhJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2QUNFQ0Qx
RUNBQUIwNDAwNEJEMDEyIC8qIEpTRE9NTWF0cml4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRE9NTWF0cml4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM2QUNFQ0UxRUNBQUIwNDAwNEJEMDEyIC8qIEpTRE9NTWF0cml4LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NTWF0cml4Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNkFDRUNGMUVDQUFCMDQwMDRCRDAxMiAvKiBKU0RPTU1hdHJpeEluaXQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01NYXRyaXhJbml0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkFDRUQwMUVDQUFCMDQwMDRCRDAxMiAvKiBK
U0RPTU1hdHJpeFJlYWRPbmx5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRE9NTWF0cml4UmVhZE9ubHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4MzZBQ0VEMTFFQ0FBQjA0MDA0QkQwMTIgLyogSlNET01NYXRyaXhSZWFkT25seS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTU1hdHJpeFJlYWRPbmx5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNkIwOTUyMUY1RjM0RDAwMDNDMzcwMiAvKiBKU0hU
TUxJbnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTSFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODM2QjA5NTMxRjVGMzREMDAwM0MzNzAyIC8qIEpTSFRNTElucHV0RWxlbWVudEVu
dHJpZXNBUEkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1M
SW5wdXRFbGVtZW50RW50cmllc0FQSS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzNkQwMzI3MURBODlCNzMwMEZGRDk2QiAvKiBDbGlwYm9hcmRFdmVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQ2xpcGJvYXJkRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4MzZEMDMyODFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJbml0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4MzZEMDMyOTFEQTg5QjczMDBGRkQ5NkIgLyogRXZlbnRJbml0LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudEluaXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4MzZEMDMyQjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFdmVudEluaXQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzZEMDMyQzFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVu
dEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFdmVudEluaXQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkQxREE4QTEzMjAwRkZEOTZCIC8q
IEpTQ2xpcGJvYXJkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNDbGlwYm9hcmRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgz
NkQwMzJEMURBOEExMzIwMEZGRDk2QyAvKiBKU0NsaXBib2FyZC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NsaXBib2FyZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzNkQwMzJEMURBOEExMzIwMEZGRDk2RCAvKiBKU0NsaXBib2FyZEl0ZW0u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDbGlwYm9hcmRJdGVt
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM2RDAzMkUxREE4QTEzMjAwRkZE
OTZCIC8qIEpTQ2xpcGJvYXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNDbGlwYm9hcmRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzZE
MDMyRTFEQThBMTMyMDBGRkQ5NkMgLyogSlNDbGlwYm9hcmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNDbGlwYm9hcmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODM2RDAzMkUxREE4QTEzMjAwRkZEOTZEIC8qIEpTQ2xpcGJvYXJkSXRlbS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NsaXBib2FyZEl0ZW0uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODM2REFBMDUxQ0VBQjdDRDAwQTJCNzA3IC8qIFJlbmRlckRlc2Nl
bmRhbnRJdGVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJE
ZXNjZW5kYW50SXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3MDU2
ODgxRjUwOTE1MDAwRDkzNDI1IC8qIEpTRmlsZUNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmlsZUNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODM3MDU2ODkxRjUwOTE1MDAwRDkzNDI1IC8qIEpTRmlsZVN5c3RlbUVu
dHJ5Q2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlU3lz
dGVtRW50cnlDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzcwNTY4
QTFGNTA5MTUwMDBEOTM0MjUgLyogSlNGaWxlU3lzdGVtRW50cnlDYWxsYmFjay5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVTeXN0ZW1FbnRyeUNhbGxiYWNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3MDU2OEIxRjUwOTE1MDAwRDkz
NDI1IC8qIEpTRmlsZUNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRmlsZUNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNzFBQzM2
MUY1MDlCREQwMEZCRjI4NCAvKiBGaWxlU3lzdGVtRW50cnlDYWxsYmFjay5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gRmlsZVN5c3RlbUVudHJ5Q2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4MzcxQUMzNzFGNTA5QkREMDBGQkYyODQgLyogRXJyb3JDYWxsYmFj
ay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRXJyb3JDYWxsYmFjay5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNzFBQzM4MUY1MDlCREQwMEZCRjI4NCAvKiBGaWxlQ2Fs
bGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZpbGVDYWxsYmFjay5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNzFBQzM5MUY1MDlCREQwMEZCRjI4NCAvKiBFcnJv
ckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVycm9yQ2FsbGJh
Y2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3MjZFRjgyNTI2NzlCMjAwQzYx
MTRFIC8qIEF1ZGlvV29ya2xldFByb2Nlc3NvckNvbnN0cnVjdG9yLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEF1ZGlvV29ya2xldFByb2Nlc3NvckNvbnN0cnVjdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzNzI2RUZBMjUyNjc5QjMwMEM2MTE0RSAvKiBBdWRpb1dvcmtsZXRQcm9jZXNz
b3JDb25zdHJ1Y3Rvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ29uc3RydWN0b3Iu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzcyREIzMDFBNjc4MEE4MDBDNjk3
QzUgLyogRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4Mzc0NUNGRjI0RDg5OUMyMDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gR2Fpbk9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5PcHRpb25zLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBH
YWluT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNzU2OTk5MjUy
Q0YzNUUwMEUxQjk1NiAvKiBBdWRpb1BhcmFtRGVzY3JpcHRvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
dWRpb1BhcmFtRGVzY3JpcHRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzc1
Njk5QjI1MkNGMzVFMDBFMUI5NTYgLyogQXV0b21hdGlvblJhdGUuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1dG9tYXRp
b25SYXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3NTY5OUMyNTJDRjM1
RjAwRTFCOTU2IC8qIEF1ZGlvUGFyYW1EZXNjcmlwdG9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb1BhcmFtRGVz
Y3JpcHRvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzNzU2OTlEMjUyQ0Yz
NUYwMEUxQjk1NiAvKiBBdXRvbWF0aW9uUmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRvbWF0aW9u
UmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzc2MDlDODFGNTRDQzEzMDAw
QzEyMkQgLyogRXJyb3JDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBFcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM3NjVGOTMxREFDNTIxODAwQzA2NTM3IC8qIE1vdXNlRXZlbnRJbml0LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBNb3VzZUV2ZW50SW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTgzNzY1Rjk0MURBQzUyMTgwMEMwNjUzNyAvKiBNb3VzZUV2ZW50SW5pdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb3VzZUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4Mzc4ODc3RjI0RDhBNUZDMDAwRDRBNUIgLyogQXVkaW9CdWZm
ZXJTb3VyY2VPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQnVmZmVyU291cmNlT3B0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzc4ODc4MTI0RDhBNUZDMDAwRDRB
NUIgLyogQXVkaW9CdWZmZXJTb3VyY2VPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0J1ZmZlclNvdXJj
ZU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzc5MzYzQzFGQkJC
MEE0MDBDODAyM0MgLyogU2VydmljZVdvcmtlckNsaWVudERhdGEuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmljZVdvcmtlckNsaWVudERhdGEuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzc5MzYzRTFGQkJCMEE1MDBDODAyM0MgLyogU2Vy
dmljZVdvcmtlckNsaWVudERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U2VydmljZVdvcmtlckNsaWVudERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM3OTY0Q0UxRjhEQjY5QTAwMjE4RUEwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25EYXRhSU9TLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gR2VvbG9jYXRpb25Qb3Np
dGlvbkRhdGFJT1MubW07IHBhdGggPSBNb2R1bGVzL2dlb2xvY2F0aW9uL2lvcy9HZW9sb2NhdGlv
blBvc2l0aW9uRGF0YUlPUy5tbTsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk4MzdB
ODAxMjFFMUUxMjczMDAwMjZCOUYgLyogZW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnN0cmluZ3NkaWN0OyBuYW1lID0gZW47IHBh
dGggPSBlbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzZGljdDsgc291cmNlVHJlZSA9IFNPVVJD
RV9ST09UOyB9OworCQk4MzdCN0QxRjFEQzNGNTRDMDBEMDUxRkMgLyogVmFsaWRhdGlvbkJ1YmJs
ZUlPUy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZhbGlkYXRp
b25CdWJibGVJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzN0MwQjczMjRE
QjM4NDIwMDVENTk1OSAvKiBEeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IER5bmFtaWNzQ29tcHJlc3Nvck9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODM3QzBCNzUyNERCMzg0MzAwNUQ1OTU5IC8qIER5bmFtaWNzQ29tcHJlc3Nvck9wdGlv
bnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IER5bmFtaWNzQ29tcHJlc3Nvck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4MzdENDYyNTFGQTJBOEM1MDA1NEUxRkEgLyogU2VydmljZVdvcmtl
ckNsaWVudElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Vy
dmljZVdvcmtlckNsaWVudElkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODM3REZCMzQxRUJGRUE3MDAwNjAxMzg1IC8qIEVsZW1lbnRDU1NJbmxpbmVTdHlsZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRWxlbWVudENTU0lubGluZVN0eWxlLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3RkIzNDAxRjlFQTA2NjAwRDBGQzMxIC8qIEV4dGVu
ZGFibGVNZXNzYWdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXh0
ZW5kYWJsZU1lc3NhZ2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzdG
QjM0MjFGOUVBMDY3MDBEMEZDMzEgLyogRXh0ZW5kYWJsZU1lc3NhZ2VFdmVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM3RkIzNDMxRjlFQTA2ODAwRDBGQzMx
IC8qIEV4dGVuZGFibGVNZXNzYWdlRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV4
dGVuZGFibGVNZXNzYWdlRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
MzdGQ0I0RDI1NDBFM0M3MDA5MzRENEYgLyogV29ya2VyT3JXb3JrbGV0VGhyZWFkLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlck9yV29ya2xldFRocmVhZC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzODZBOTZFMTlGNjFFNEYwMEUxRUM0
QSAvKiBTdHlsZUJ1aWxkZXJHZW5lcmF0ZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmNwcDsgcGF0aCA9IERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmNwcDsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJODM4ODY3MzQxRDEzQkE1OTAwMzY5N0QwIC8qIFJlbmRlck9i
amVjdEVudW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck9iamVj
dEVudW1zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzODg2OUVCMUNFODFFOUUw
MEQxNkE5RSAvKiBKU1RleHRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNUZXh0Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM4Q0E2QkIxRkMwREZERDAwNUQ5RkE1IC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmll
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VySm9iRGF0
YUlkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM4RUY1MzYxREMx
NDlEQTAwOEYwQzM5IC8qIElEQlRyYW5zYWN0aW9uTW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJREJUcmFuc2FjdGlvbk1vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODM4RUY1MzcxREMxNDlEQTAwOEYwQzM5IC8qIElEQlRyYW5zYWN0aW9uTW9kZS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSURCVHJhbnNhY3Rpb25Nb2RlLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM4RUY1MzkxREMxNEE3NTAwOEYwQzM5IC8qIEpTSURC
VHJhbnNhY3Rpb25Nb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSURCVHJhbnNhY3Rpb25Nb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM4RUY1M0ExREMxNEE3NTAwOEYwQzM5IC8qIEpTSURCVHJhbnNhY3Rpb25Nb2RlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSURCVHJhbnNhY3Rpb25Nb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOEY4NkQ3MUY1MDlFNkMwMEU4Q0ZDNSAvKiBGaWxl
U3lzdGVtRW50cnlDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBG
aWxlU3lzdGVtRW50cnlDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
MzhGODZEODFGNTA5RTZDMDBFOENGQzUgLyogRmlsZUNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZpbGVDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4Mzk2ODBCMjFGNTRDNkE4MDA3NTI2OTAgLyogRmlsZVN5c3RlbUVudHJpZXNDYWxs
YmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVt
RW50cmllc0NhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM5OTQ3
MDcxRjUwQjYzODAwRTlEODZCIC8qIERPTUZpbGVTeXN0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRE9NRmlsZVN5c3RlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4Mzk5NDcwODFGNTBCNjM4MDBFOUQ4NkIgLyogRE9NRmlsZVN5c3RlbS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gRE9NRmlsZVN5c3RlbS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzOTk0NzA5MUY1MEI2MzgwMEU5RDg2QiAvKiBET01GaWxlU3lzdGVtLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTUZpbGVTeXN0ZW0uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4Mzk5NDcwRDFGNTBCNkYzMDBFOUQ4NkIgLyog
SlNET01GaWxlU3lzdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTRE9NRmlsZVN5c3RlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOTk0
NzBFMUY1MEI2RjMwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNET01GaWxlU3lzdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzOUEwOTVCMjUyNEYzNzYwMEVFRjMyOCAvKiBXb3JrZXJPcldvcmtsZXRTY3Jp
cHRDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlck9y
V29ya2xldFNjcmlwdENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODM5QTJGMkIxRTIwNEE2RDAwMzkwNTdFIC8qIFdlYkdMU3RhdGVUcmFja2VyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMU3RhdGVUcmFja2VyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODM5QTJGMkMxRTIwNEE2RDAwMzkwNTdFIC8qIFdl
YkdMU3RhdGVUcmFja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdM
U3RhdGVUcmFja2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzOUFBRkVBMUEw
QzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBIVE1MV0JSRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzOUFBRkVCMUEwQzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MV0JSRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4MzlCRTZEMjI0RjU4NzU1MDA0REY1MEYgLyogSUlSRmls
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElJUkZpbHRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4MzlCRTZENDI0RjU4NzU1MDA0REY1MEYgLyogSUlS
RmlsdGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElJUkZpbHRl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQTJBQkQ4MjREODZEQzYwMEUy
RDczRCAvKiBEZWxheU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVsYXlPcHRpb25zLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQTJBQkRBMjREODZEQzcwMEUyRDczRCAvKiBE
ZWxheU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IERlbGF5T3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTgzQTRBOUY4MUNFN0ZEN0UwMDcwOUIwMCAvKiBKU1hNTERvY3VtZW50Q3Vz
dG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWE1MRG9jdW1l
bnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0E4QUMzRTFGQUJC
RkQxMDAyMDY0QUMgLyogU2VydmljZVdvcmtlcklkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlcklkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODNBQ0QwMTAyNTIyOUUwNDAwMEQxMjRFIC8qIFdvcmtsZXRPcHRp
b25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtsZXRPcHRpb25zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQUNEMDEyMjUyMjlFMDQwMDBEMTI0RSAv
KiBXb3JrbGV0T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV29ya2xldE9wdGlv
bnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0IyNTAwOTFGQTExODFDMDBC
QzAyRDkgLyogSlNTZXJ2aWNlV29ya2VyQ2xpZW50VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1NlcnZpY2VXb3JrZXJDbGllbnRUeXBlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgzQjI1MDBCMUZBMTE4MUQwMEJDMDJEOSAvKiBKU1NlcnZpY2VXb3Jr
ZXJDbGllbnRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U2VydmljZVdvcmtlckNsaWVudFR5cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4M0I1REE0NTFGQTkwNzkzMDBCNTlERjQgLyogSlNOYXZpZ2F0b3JDdXN0b20uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0b3JDdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0I3NEVGMjFGM0UwQkQ3MDA5OTZCQzcgLyog
S2VlcGFsaXZlUmVxdWVzdFRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gS2VlcGFsaXZlUmVxdWVzdFRyYWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4M0I3NEVGMzFGM0UwQkQ3MDA5OTZCQzcgLyogS2VlcGFsaXZlUmVxdWVzdFRy
YWNrZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gS2VlcGFsaXZlUmVxdWVz
dFRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNCOTY4NzkxOUY4QUI4
MzAwNEVGN0FGIC8qIFN0eWxlQnVpbGRlckNvbnZlcnRlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODNCOTg2RkQyNTIyNUYwQjAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gQXVkaW9Xb3JrbGV0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNC
OTg2RkYyNTIyNUYwQjAwQTkzOUYxIC8qIEF1ZGlvUGFyYW1NYXAuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXVkaW9QYXJhbU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0I5ODcwMDI1
MjI1RjBCMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0Tm9kZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXVkaW9Xb3JrbGV0Tm9kZU9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODNCOTg3MDEyNTIyNUYwQzAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBBdWRpb1dvcmtsZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNCOTg3
MDIyNTIyNUYwQzAwQTkzOUYxIC8qIEF1ZGlvUGFyYW1NYXAuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQXVkaW9QYXJhbU1hcC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQjk4
NzAzMjUyMjVGMEMwMEE5MzlGMSAvKiBBdWRpb1dvcmtsZXROb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEF1ZGlvV29ya2xldE5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4M0I5ODcwNDI1MjI1RjBEMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0Tm9kZS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
QXVkaW9Xb3JrbGV0Tm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQjk4
NzA1MjUyMjVGMEQwMEE5MzlGMSAvKiBBdWRpb1dvcmtsZXROb2RlT3B0aW9ucy5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
QXVkaW9Xb3JrbGV0Tm9kZU9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4M0I5ODcwNjI1MjI1RjBFMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEF1ZGlvV29ya2xldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzQjk4NzA3MjUyMjVGMEUwMEE5MzlGMSAvKiBBdWRpb1dvcmtsZXROb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEF1ZGlvV29ya2xldE5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODNCOTg3MDgyNTIyNUYwRTAwQTkzOUYxIC8qIEF1ZGlvUGFyYW1NYXAuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlv
UGFyYW1NYXAuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0JCNUM4NzFENUQ2
RjNBMDA1QTcxRjQgLyogQWxsRGVzY2VuZGFudHNDb2xsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFsbERlc2NlbmRhbnRzQ29sbGVjdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4M0JCOEI1QjI1MjY3NzU1MDBEODlGMEIgLyogQXVkaW9Xb3Jr
bGV0UHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvV29ya2xldFByb2Nlc3Nv
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQkI4QjVEMjUyNjc3NTUwMEQ4
OUYwQiAvKiBBdWRpb1dvcmtsZXRQcm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Xb3Jr
bGV0UHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQkI4QjVFMjUy
Njc3NTYwMEQ4OUYwQiAvKiBBdWRpb1dvcmtsZXRQcm9jZXNzb3IuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvV29y
a2xldFByb2Nlc3Nvci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzQkQzQ0VC
MjQ5OThDQzUwMEJBM0U2NyAvKiBBdWRpb0NvbnRleHRTdGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXVkaW9Db250ZXh0U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4M0JEM0NFRDI0OTk4REY2MDBCQTNFNjcgLyogQXVkaW9Db250ZXh0U3RhdGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Db250ZXh0U3RhdGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNDMDVBNTgxQTY4NjIxMjAwN0U1REVBIC8qIFN0eWxl
UHJvcGVydHlTaG9ydGhhbmRGdW5jdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gU3R5bGVQcm9wZXJ0eVNob3J0aGFuZEZ1bmN0aW9ucy5jcHA7IHBhdGggPSBE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL1N0eWxlUHJvcGVydHlTaG9ydGhhbmRGdW5jdGlvbnMuY3Bw
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk4M0MwNUE1OTFBNjg2MjEy
MDA3RTVERUEgLyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZEZ1bmN0aW9ucy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBTdHlsZVByb3BlcnR5U2hvcnRoYW5kRnVuY3Rpb25zLmg7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1N0eWxlUHJvcGVydHlTaG9ydGhhbmRGdW5j
dGlvbnMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJODNDMUY1OTEx
RURGNjlEMzAwNDEwRDI3IC8qIFF1YWxpZmllZE5hbWVDYWNoZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBRdWFsaWZpZWROYW1lQ2FjaGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4M0MxRjU5MjFFREY2OUQzMDA0MTBEMjcgLyogUXVhbGlmaWVk
TmFtZUNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFF1YWxpZmllZE5h
bWVDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0M0NUI4QjFEQzJCNjYz
MDA4ODcxQkEgLyogVmFsaWRhdGlvbkJ1YmJsZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IFZhbGlkYXRpb25CdWJibGVNYWMubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTgzQzQ1QjhEMURDMkI2N0MwMDg4NzFCQSAvKiBWYWxpZGF0aW9uQnVi
YmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZhbGlkYXRpb25CdWJibGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNEMjZEM0MxQUZEQ0M1MDAwMUIzODcz
IC8qIENoaWxkTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2hpbGROb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODNEMjZEM0QxQUZEQ0M1MDAwMUIzODczIC8qIFBhcmVudE5vZGUuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFBhcmVudE5vZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0QzNUFF
QTFDNzE4N0VEMDBGNzBENUEgLyogWE1MSHR0cFJlcXVlc3RFdmVudFRhcmdldC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRDM1QUVCMUM3MTg3RUQwMEY3MEQ1QSAvKiBY
TUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYTUxI
dHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODNEMzVBRUYxQzcxOEQ4NDAwRjcwRDVBIC8qIEpTWE1MSHR0cFJlcXVlc3RFdmVudFRhcmdldC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1hNTEh0dHBSZXF1ZXN0
RXZlbnRUYXJnZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0QzNUFGMDFD
NzE4RDg0MDBGNzBENUEgLyogSlNYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWE1MSHR0cFJlcXVlc3RFdmVudFRhcmdldC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0Q1MTFGMzI1MEMxQ0E4MDAyRURDNTEgLyog
UHVzaFB1bGxGSUZPLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFB1
c2hQdWxsRklGTy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRDUxMUY1MjUw
QzFDQTgwMDJFREM1MSAvKiBQdXNoUHVsbEZJRk8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUHVzaFB1bGxGSUZPLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgz
RDZBQUU0MjUyNEVFMTMwMDQyOEI0QiAvKiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29w
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0RCOUUwQTI0REExOEI0MDAzN0I0
NjggLyogQmlxdWFkRmlsdGVyVHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQmlxdWFkRmlsdGVyVHlwZS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzREI5RTBDMjREQTE4QjUwMDM3QjQ2OCAvKiBC
aXF1YWRGaWx0ZXJUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpcXVhZEZpbHRlclR5cGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNEQjlFMEQyNERBMThCNTAwMzdCNDY4IC8qIEJp
cXVhZEZpbHRlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEJpcXVhZEZpbHRlck9wdGlvbnMuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0RCOUUwRTI0REExOEI2MDAzN0I0NjggLyogQmlx
dWFkRmlsdGVyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaXF1YWRGaWx0ZXJPcHRpb25zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRTA0NUVDMURBQTEwNEYwMEIwRDhCOSAv
KiBKU0V2ZW50TW9kaWZpZXJJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTRXZlbnRNb2RpZmllckluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4M0UwNDVFRDFEQUExMDRGMDBCMEQ4QjkgLyogSlNFdmVudE1vZGlmaWVySW5pdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0V2ZW50TW9kaWZpZXJJbml0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRTA0NUVFMURBQTEwNEYwMEIwRDhCOSAvKiBK
U1VJRXZlbnRJbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
VUlFdmVudEluaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0UwNDVFRjFE
QUExMDRGMDBCMEQ4QjkgLyogSlNVSUV2ZW50SW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1VJRXZlbnRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTgzRTM1OUEwMUJCMTAzMUQwMDJDRUI5OCAvKiBKU0hUTUxUaW1lRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxUaW1lRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4M0UzNTlBMTFCQjEwMzFEMDAyQ0VCOTggLyogSlNIVE1MVGlt
ZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1M
VGltZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0U4MjhCMjI1
Mjc5NENEMDAyN0UwRjcgLyogV29ya2VyT3JXb3JrbGV0VGhyZWFkLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlck9yV29ya2xldFRocmVhZC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4M0U4NjY3RDFGQkE1NjNGMDA4ODU1QzUgLyogU2VydmljZVdvcmtl
ckRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VydmljZVdvcmtlckRh
dGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNFODY2N0YxRkJBNTY0MDAwODg1
NUM1IC8qIFNlcnZpY2VXb3JrZXJEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODNFOTU5RTExQjhCQzIyQjAwNEQ5Mzg1IC8qIE5hdGl2ZU5vZGVGaWx0ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF0aXZlTm9kZUZpbHRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4M0U5QjMwMDFEQTVBNTFFMDBGRkQ4RDQgLyogSlNTY3Jv
bGxMb2dpY2FsUG9zaXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNTY3JvbGxMb2dpY2FsUG9zaXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4M0U5QjMwMDFEQTVBNTFFMDBGRkQ4RTUgLyogSlNTY3JvbGxJbnRvVmlld09wdGlvbnMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTY3JvbGxJbnRvVmll
d09wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0U5QjMwMDFEQTVB
NTFFMDBGRkU4RDQgLyogSlNTY3JvbGxCZWhhdmlvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1Njcm9sbEJlaGF2aW9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODNFOUIzMDAxREE1QTUxRTAwRkZFOEU1IC8qIEpTU2Nyb2xsT3B0aW9ucy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Njcm9sbE9wdGlvbnMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0U5QjMwMDFEQTVBNTFFMDBGRkU4
RjYgLyogSlNTY3JvbGxUb09wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNTY3JvbGxUb09wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4M0U5QjMwMTFEQTVBNTFFMDBGRkQ4RDQgLyogSlNTY3JvbGxMb2dpY2FsUG9zaXRpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTY3JvbGxMb2dpY2FsUG9zaXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNFOUIzMDExREE1QTUxRTAwRkZE
OEU1IC8qIEpTU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzRTlCMzAxMURBNUE1MUUwMEZGRThENCAvKiBKU1Njcm9sbEJlaGF2aW9yLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU2Nyb2xsQmVoYXZpb3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNFOUIzMDExREE1QTUxRTAwRkZFOEU1IC8qIEpT
U2Nyb2xsT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Njcm9s
bE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNFOUIzMDExREE1QTUx
RTAwRkZFOEY2IC8qIEpTU2Nyb2xsVG9PcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU2Nyb2xsVG9PcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTgzRUU1OThCMUY1MDk1OEIwMDNFOEIzMCAvKiBKU0Vycm9yQ2FsbGJhY2suaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTgzRUU1OThDMUY1MDk1OEIwMDNFOEIzMCAvKiBKU0Vycm9yQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNFcnJvckNh
bGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGMjhCRkQyNERCMURE
MzAwNUJBNkY2IC8qIENvbnZvbHZlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udm9sdmVy
T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0YyOEJGRjI0REIxREQ0
MDA1QkE2RjYgLyogQ29udm9sdmVyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29udm9sdmVyT3B0aW9ucy5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRjM3QTY3MjUzNkIyMUIwMEZGNUYz
QiAvKiBKU0F1ZGlvV29ya2xldFByb2Nlc3NvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0F1ZGlvV29ya2xldFByb2Nlc3NvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzRjU3MEFEMUM1MzI2OEUwMDdGRDZDQiAvKiBKU1hNTERvY3VtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWE1MRG9jdW1lbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGNTcwQUUxQzUzMjY4RTAwN0ZENkNCIC8qIEpTWE1MRG9j
dW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNYTUxEb2N1
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRjU3Mjk0MUZBMTA2NkYw
MDM4MzdCRSAvKiBKU1NlcnZpY2VXb3JrZXJDbGllbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTZXJ2aWNlV29ya2VyQ2xpZW50Q3VzdG9tLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGQjMzNjcxRjUwOEE0RTAwOTg2RTU0IC8q
IEZpbGVTeXN0ZW1GaWxlRW50cnkuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZpbGVTeXN0
ZW1GaWxlRW50cnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0ZCMzM2ODFG
NTA4QTRFMDA5ODZFNTQgLyogRmlsZVN5c3RlbUVudHJ5LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBGaWxlU3lzdGVtRW50cnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
M0ZCMzM2OTFGNTA4QTRFMDA5ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRyeS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGQjMzNkExRjUwOEE0RTAwOTg2RTU0IC8q
IEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRmls
ZVN5c3RlbURpcmVjdG9yeUVudHJ5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODNGQjMzNkIxRjUwOEE0RTAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlU3lzdGVtRGlyZWN0b3J5
RW50cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4M0ZCMzM2QzFGNTA4QTRF
MDA5ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBGaWxlU3lzdGVtRmlsZUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTgzRkIzMzZEMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsZVN5c3RlbURpcmVjdG9y
eUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRkIzMzZFMUY1MDhBNEUw
MDk4NkU1NCAvKiBGaWxlU3lzdGVtRW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRmlsZVN5c3RlbUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODNGQjMzNkYxRjUwOEE0RTAwOTg2RTU0IC8qIEZpbGVTeXN0ZW1FbnRyeS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU3lzdGVtRW50cnkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGQzk5NDcyNTI1NTdFNzAwMTc3NjE4IC8qIEF1ZGlvV29y
a2xldEdsb2JhbFNjb3BlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRkM5OTQ5MjUyNTU3RTcwMDE3NzYxOCAvKiBB
dWRpb1dvcmtsZXRUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Xb3JrbGV0VGhyZWFkLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRkM5OTRBMjUyNTU3RTgwMDE3NzYxOCAv
KiBBdWRpb1dvcmtsZXRUaHJlYWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9Xb3JrbGV0
VGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNGRTdDQTMxREE5RjE2
NTAwMzcyMzdDIC8qIEV2ZW50TW9kaWZpZXJJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEV2ZW50TW9kaWZpZXJJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTgzRkU3Q0E0MURBOUYxNjYwMDM3MjM3QyAvKiBVSUV2ZW50SW5pdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBVSUV2ZW50SW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4M0ZFN0NBNTFEQTlGMTY2MDAzNzIzN0MgLyogVUlFdmVudEluaXQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFVJRXZlbnRJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODNGRTdDQTYxREE5RjE2NjAwMzcyMzdDIC8qIEV2ZW50TW9kaWZpZXJJbml0
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudE1vZGlmaWVySW5pdC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTgzRkU5MDI1MUUzMDdDMUMwMDNFOTE5OSAvKiBQZXJm
b3JtYW5jZU1vbml0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UGVyZm9ybWFuY2VNb25pdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODNG
RTkwMjYxRTMwN0MxQzAwM0U5MTk5IC8qIFBlcmZvcm1hbmNlTW9uaXRvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZU1vbml0b3IuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODQxOUQyQTQxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhCeXRl
U3RyZWFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhCeXRlU3Ry
ZWFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0MTlEMkE1MTIwRDkyRDAwMDE0
MUY4RiAvKiBTVkdQYXRoQnl0ZVN0cmVhbUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1ZHUGF0aEJ5dGVTdHJlYW1CdWlsZGVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQxOUQyQTYxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhC
eXRlU3RyZWFtQnVpbGRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQ
YXRoQnl0ZVN0cmVhbUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQx
OUQyQUExMjBEOTJGQzAwMTQxRjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFtU291cmNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1BhdGhCeXRlU3RyZWFtU291cmNl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQxOUQyQUIxMjBEOTJGQzAwMTQx
RjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFtU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNWR1BhdGhCeXRlU3RyZWFtU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTg0MTlEMkI3MTIwRTBDNzYwMDE0MUY4RiAvKiBTVkdQYXRoU3RyaW5nQnVpbGRl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdQYXRoU3RyaW5n
QnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0MTlEMkI4MTIwRTBD
NzYwMDE0MUY4RiAvKiBTVkdQYXRoU3RyaW5nQnVpbGRlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTVkdQYXRoU3RyaW5nQnVpbGRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4NDFDNDQxNDI2MEMzOEJBMDBGRjY2NzMgLyogSlNET01DYXN0VGhpc1ZhbHVl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ2FzdFRoaXNWYWx1ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDIyNDE4MTEwN0U3N0Y0MDA3NjZBODcg
LyogSlNTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTg0MjI0MTgyMTA3RTc3RjQwMDc2NkE4NyAvKiBKU1NWR0ZFTW9ycGhv
bG9neUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRU1v
cnBob2xvZ3lFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0MjI0MTkw
MTA3RTc4QTcwMDc2NkE4NyAvKiBTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZFTW9ycGhvbG9neUVsZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDIyNDE5MTEwN0U3OEE3MDA3NjZBODcgLyog
U1ZHRkVNb3JwaG9sb2d5RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdGRU1vcnBob2xvZ3lFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTg0MjI0MTkyMTA3RTc4QTcwMDc2NkE4NyAvKiBTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQzMDBCRDUxMjBDOUFBQzAwMjE5NTRBIC8qIFNWR1Bh
dGhTdHJpbmdTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUGF0
aFN0cmluZ1NvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDMwMEJENzEy
MEM5QUQ0MDAyMTk1NEEgLyogU1ZHUGF0aFNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTVkdQYXRoU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTg0MzAwQkQ5MTIwQzlBRUQwMDIxOTU0QSAvKiBTVkdQYXRoU3RyaW5nU291cmNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1BhdGhTdHJpbmdTb3VyY2UuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDVFNzJGNzBGRDI2MUVFMDBBODdENzkg
LyogRmlsdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpbHRlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDVFNzJGOTBGRDI2MjM5MDBBODdENzkgLyog
U1ZHRmlsdGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0Zp
bHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NUU3MkZBMEZEMjYyMzkw
MEE4N0Q3OSAvKiBTVkdGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NjUwRTdDMjM4N0FE
N0MwMDYyNjZFMiAvKiBNZWRpYVF1ZXJ5TGlzdEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1lZGlhUXVlcnlMaXN0RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODQ2NTBFN0YyMzg3QUQ4QTAwNjI2NkUyIC8qIE1lZGlhUXVlcnlMaXN0RXZlbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFRdWVyeUxpc3RF
dmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NjUwRTgwMjM4N0FEOEIw
MDYyNjZFMiAvKiBNZWRpYVF1ZXJ5TGlzdEV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBNZWRpYVF1ZXJ5TGlzdEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODQ3MzBENUExMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNvdXJjZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXN0YW50TGlnaHRTb3VyY2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENUIxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9s
dmVNYXRyaXguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRkVDb252
b2x2ZU1hdHJpeC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDVDMTI0
OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZFQ29udm9sdmVNYXRyaXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODQ3MzBENUQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZFRGlmZnVzZUxpZ2h0aW5nLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENUUxMjQ4RjBCMzAwRDNBOUM5
IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZFRGlmZnVzZUxpZ2h0aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMw
RDVGMTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRURpc3BsYWNlbWVudE1hcC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDYwMTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3Bs
YWNlbWVudE1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGRURpc3BsYWNl
bWVudE1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDczMEQ2MTEyNDhGMEIz
MDBEM0E5QzkgLyogRkVGbG9vZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBGRUZsb29kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENjIx
MjQ4RjBCMzAwRDNBOUM5IC8qIEZFRmxvb2QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRkVGbG9vZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDczMEQ2MzEy
NDhGMEIzMDBEM0E5QzkgLyogRkVMaWdodGluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGRUxpZ2h0aW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODQ3MzBENjQxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFTGlnaHRpbmcuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRkVMaWdodGluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4NDczMEQ2NTEyNDhGMEIzMDBEM0E5QzkgLyogRkVNZXJnZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRU1lcmdlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODQ3MzBENjYxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFTWVyZ2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVNZXJnZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NDczMEQ2NzEyNDhGMEIzMDBEM0E5QzkgLyogRkVNb3JwaG9sb2d5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZFTW9ycGhvbG9neS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDY4MTI0OEYwQjMwMEQzQTlDOSAv
KiBGRU1vcnBob2xvZ3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVNb3Jw
aG9sb2d5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDY5MTI0OEYwQjMw
MEQzQTlDOSAvKiBGRU9mZnNldC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBGRU9mZnNldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDZB
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRU9mZnNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGRU9mZnNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDczMEQ2
QjEyNDhGMEIzMDBEM0E5QzkgLyogRkVTcGVjdWxhckxpZ2h0aW5nLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZFU3BlY3VsYXJMaWdodGluZy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDZDMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVNwZWN1
bGFyTGlnaHRpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVTcGVjdWxh
ckxpZ2h0aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzMwRDZEMTI0OEYw
QjMwMEQzQTlDOSAvKiBGRVRpbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRkVUaWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENkUx
MjQ4RjBCMzAwRDNBOUM5IC8qIEZFVGlsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBGRVRpbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENkYxMjQ4
RjBCMzAwRDNBOUM5IC8qIEZFVHVyYnVsZW5jZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBGRVR1cmJ1bGVuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4NDczMEQ3MDEyNDhGMEIzMDBEM0E5QzkgLyogRkVUdXJidWxlbmNlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZFVHVyYnVsZW5jZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NDczMEQ3NDEyNDhGMEIzMDBEM0E5QzkgLyogTGlnaHRTb3VyY2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlnaHRTb3VyY2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ3MzBENzUxMjQ4RjBCMzAwRDNBOUM5IC8qIFBvaW50TGln
aHRTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9pbnRMaWdodFNv
dXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDczMEQ3NjEyNDhGMEIzMDBE
M0E5QzkgLyogU3BvdExpZ2h0U291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNwb3RMaWdodFNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDc0
NUI4RDI0QTNGMDlGMDAyOUE4QjUgLyogQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4NDc0NUI4RTI0QTNGMEEwMDAyOUE4QjUgLyogQ3VzdG9tWFBhdGhO
U1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1c3RvbVhQYXRo
TlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDc2QzlFMzExREY2
QTBCMDA1NTVCMDIgLyogU1ZHUGF0aFNlZ0xpc3RCdWlsZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1BhdGhTZWdMaXN0QnVpbGRlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzZDOUU0MTFERjZBMEIwMDU1NUIwMiAvKiBTVkdQYXRo
U2VnTGlzdEJ1aWxkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUGF0
aFNlZ0xpc3RCdWlsZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0NzZDOUU3
MTFERjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQnVpbGRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTVkdQYXRoQnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg0NzZDOUU4MTFERjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQnVpbGRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQYXRoQnVpbGRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDc2QzlFOTExREY2QTI5MDA1NTVCMDIgLyogU1ZH
UGF0aENvbnN1bWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhD
b25zdW1lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDc2QzlFRDExREY2QTU4
MDA1NTVCMDIgLyogU1ZHUGF0aFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTVkdQYXRoUGFyc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODQ3NkM5RUUxMURGNkE1ODAwNTU1QjAyIC8qIFNWR1BhdGhQYXJzZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUGF0aFBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NDgwMTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVzc2lhbkJsdXIu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRkVHYXVzc2lhbkJsdXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDgwMTk1MzEwOEJBRkIzMDBDQjJC
MUYgLyogRkVHYXVzc2lhbkJsdXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RkVHYXVzc2lhbkJsdXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NDQx
MTk4QzMyRTAwQkZCMDA1IC8qIEhhc2hDaGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gSGFzaENoYW5nZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODQ4MkI3NEYxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSGFzaENoYW5nZUV2ZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8qIEpT
SGFzaENoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSGFz
aENoYW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0ODUyMjc3MTE5
MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTg0ODUyMjc4MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0hLZXJuRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDg1MjI3OTExOTAxNjJDMDA2RURD
N0YgLyogSlNTVkdWS2VybkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNTVkdWS2VybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4NDg1MjI3QTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdWS2VybkVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdWS2VybkVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODQ4NTIyODcxMTkwMTczQzAwNkVEQzdGIC8qIFNWR1ZL
ZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdW
S2VybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NDg1MjI4ODEx
OTAxNzNDMDA2RURDN0YgLyogU1ZHVktlcm5FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNWR1ZLZXJuRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk4NDg1MjI4OTExOTAxNzNDMDA2RURDN0YgLyogU1ZHVktlcm5FbGVtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTVkdWS2VybkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NEE4MUYzQjBGQzdERkYwMDA5NTUzMDAgLyogU291cmNlQWxwaGEuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU291cmNlQWxwaGEuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NEE4MUYzQzBGQzdERkYwMDA5NTUzMDAgLyog
U291cmNlQWxwaGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlQWxw
aGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODRBODFGM0YwRkM3RTAyNzAwOTU1
MzAwIC8qIFNvdXJjZUdyYXBoaWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU291cmNlR3JhcGhpYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0
QTgxRjQwMEZDN0UwMjcwMDk1NTMwMCAvKiBTb3VyY2VHcmFwaGljLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZUdyYXBoaWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODRCMkIyNEYwNTZCRjE1RjAwRDJCNzcxIC8qIFNTTEtleUdlbmVyYXRvck1hYy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50
V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IFNTTEtleUdlbmVyYXRvck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lk
dGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCTg0QjM0OUEwMjJGODZFNzQwMEQ0N0JDRiAvKiBF
dmVudFRhcmdldENvbmNyZXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2
ZW50VGFyZ2V0Q29uY3JldGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODRCMzQ5
QTMyMkY4NkU4MjAwRDQ3QkNGIC8qIEV2ZW50VGFyZ2V0Q29uY3JldGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRUYXJnZXRDb25jcmV0ZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0QjYyNjg0MTMzMTM4RjkwMDk1QTQ4OSAvKiBGb250
UGxhdGZvcm1EYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZv
bnRQbGF0Zm9ybURhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NEI2Qjk3
NTEyMEYxM0U1MDBCOEVGQUYgLyogU1ZHUGF0aFNlZ0xpc3RTb3VyY2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUGF0aFNlZ0xpc3RTb3VyY2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NEI2Qjk3NjEyMEYxM0U1MDBCOEVGQUYgLyogU1ZH
UGF0aFNlZ0xpc3RTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZH
UGF0aFNlZ0xpc3RTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODRCQkU1
NDgyNTk3RTdGMTAwQUE4RjI4IC8qIEpTSFRNTEFsbENvbGxlY3Rpb25DdXN0b20uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0QzBCNjczMjREQkFDQTIwMDU4
REY5NiAvKiBDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODRDNUIyRjgxMjE2REM4MTAwODhCNTNBIC8qIFNWR1BhdGhUcmF2ZXJz
YWxTdGF0ZUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U1ZHUGF0aFRyYXZlcnNhbFN0YXRlQnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTg0QzVCMkY5MTIxNkRDODEwMDg4QjUzQSAvKiBTVkdQYXRoVHJhdmVyc2FsU3RhdGVC
dWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhUcmF2ZXJz
YWxTdGF0ZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODRDNjc4NEEx
MjE0ODE0NzAwQTkyOTAyIC8qIFNWR1BhdGhCbGVuZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1BhdGhCbGVuZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODRDNjc4NEIxMjE0ODE0NzAwQTkyOTAyIC8qIFNWR1BhdGhCbGVuZGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdGhCbGVuZGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg0RDBDNDAzMTExNUYxRDQwMDE4QUEzNCAvKiBBZmZp
bmVUcmFuc2Zvcm0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQWZm
aW5lVHJhbnNmb3JtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODREMEM0MDUx
MTE1RjFFQTAwMThBQTM0IC8qIEFmZmluZVRyYW5zZm9ybS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBBZmZpbmVUcmFuc2Zvcm0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODREOUExNUYyNjAyREQ0MDAwOEQ2RDVBIC8qIEpTRE9NQ29uc3RydWN0b3JOb3RDYWxs
YWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUNvbnN0cnVjdG9y
Tm90Q2FsbGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUwMzFCMjYwQTQ0
RUZDNzAwRjk5MkUwIC8qIEJlZm9yZVVubG9hZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBCZWZvcmVVbmxvYWRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTg1MDMxQjI3MEE0NEVGQzcwMEY5OTJFMCAvKiBCZWZvcmVVbmxvYWRF
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmVmb3JlVW5sb2FkRXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUwMzFCMjgwQTQ0RUZDNzAwRjk5
MkUwIC8qIERhdGFUcmFuc2Zlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGF0YVRyYW5zZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1MDMxQjI5MEE0
NEVGQzcwMEY5OTJFMCAvKiBDbGlwYm9hcmRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ2xpcGJvYXJkRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENsaXBib2FyZEV2ZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1MDMxQjJCMEE0NEVGQzcwMEY5OTJFMCAvKiBFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTAzMUIyQzBBNDRFRkM3MDBGOTkyRTAgLyog
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1MDMxQjJEMEE0NEVGQzcwMEY5OTJFMCAvKiBLZXli
b2FyZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBLZXli
b2FyZEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUwMzFCMkUwQTQ0
RUZDNzAwRjk5MkUwIC8qIEtleWJvYXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEtleWJvYXJkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODUwMzFCMkYwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlRXZlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vdXNlRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NTAzMUIzMDBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VFdmVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW91c2VFdmVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk4NTAzMUIzMTBBNDRFRkM3MDBGOTkyRTAgLyogTW91c2VSZWxh
dGVkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vdXNl
UmVsYXRlZEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUwMzFCMzIw
QTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlUmVsYXRlZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBNb3VzZVJlbGF0ZWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk4NTAzMUIzMzBBNDRFRkM3MDBGOTkyRTAgLyogTXV0YXRpb25FdmVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTXV0YXRpb25FdmVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1MDMxQjM0MEE0NEVGQzcwMEY5OTJFMCAv
KiBNdXRhdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNdXRh
dGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1MDMxQjM2MEE0NEVG
QzcwMEY5OTJFMCAvKiBSZWdpc3RlcmVkRXZlbnRMaXN0ZW5lci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVnaXN0ZXJlZEV2ZW50TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODUwMzFCMzcwQTQ0RUZDNzAwRjk5MkUwIC8qIFVJRXZlbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVJRXZlbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTAzMUIzODBBNDRFRkM3MDBGOTkyRTAgLyogVUlF
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTAzMUIzOTBBNDRFRkM3MDBGOTkyRTAgLyogVUlF
dmVudFdpdGhLZXlTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlF
dmVudFdpdGhLZXlTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTAzMUIz
QTBBNDRFRkM3MDBGOTkyRTAgLyogV2hlZWxFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gV2hlZWxFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTg1MDMxQjNCMEE0NEVGQzcwMEY5OTJFMCAvKiBXaGVlbEV2ZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXaGVlbEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg1MDY1NkRDMEFBQjQ0RDkwMDJEMTVDMCAvKiBTdHlsZVNoZWV0LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3R5bGVTaGVldC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg1MDY1NkRGMEFBQjQ1NEYwMDJEMTVDMCAvKiBTdHlsZVNoZWV0TGlzdC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFN0eWxlU2hlZXRMaXN0LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUwODlDQzcwQTk4QzIyNjAwQTI3NUFBIC8qIENvbW1lbnQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDb21tZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODUwODlDQzkwQTk4QzJBQjAwQTI3NUFBIC8qIENEQVRBU2VjdGlvbi5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENEQVRBU2VjdGlvbi5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTg1MjE3RTAwMEE1RUNENDcwMERCOEQwMCAvKiBYU0xJbXBvcnRS
dWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYU0xJbXBvcnRS
dWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODUyMTdFMDEwQTVFQ0Q0NzAw
REI4RDAwIC8qIFhTTEltcG9ydFJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFhTTEltcG9ydFJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU0RkU3
MjcwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE5vZGVGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODU0RkU3MjgwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXJDb25kaXRpb24uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vZGVGaWx0ZXJDb25kaXRpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTRGRTcyOTBBMjI5N0JFMDA1OEQ3QUQg
LyogTm9kZUZpbHRlckNvbmRpdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTm9kZUZpbHRlckNvbmRpdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
NTRGRTcyQTBBMjI5N0JFMDA1OEQ3QUQgLyogTm9kZUl0ZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOb2RlSXRlcmF0b3IuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4NTRGRTcyQjBBMjI5N0JFMDA1OEQ3QUQgLyogTm9kZUl0ZXJhdG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb2RlSXRlcmF0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU0RkU3MkMwQTIyOTdCRTAwNThEN0FEIC8qIFRy
YXZlcnNhbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVHJhdmVy
c2FsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU0RkU3MkQwQTIyOTdCRTAw
NThEN0FEIC8qIFRyYXZlcnNhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VHJhdmVyc2FsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1NEZFNzJFMEEyMjk3
QkUwMDU4RDdBRCAvKiBUcmVlV2Fsa2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBUcmVlV2Fsa2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODU0RkU3MkYwQTIyOTdCRTAwNThEN0FEIC8qIFRyZWVXYWxrZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRyZWVXYWxrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODU1NTQyNTcwQUE0OEIxRTAwQkE4OUYyIC8qIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTU1NDI1ODBBQTQ4QjFFMDBCQTg5RjIg
LyogSFRNTFRhYmxlQ2VsbEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
VGFibGVDZWxsRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1NTU0
MjU5MEFBNDhCMUUwMEJBODlGMiAvKiBIVE1MVGFibGVDb2xFbGVtZW50LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gSFRNTFRhYmxlQ29sRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg1NTU0MjVBMEFBNDhCMUUwMEJBODlGMiAvKiBIVE1MVGFibGVFbGVtZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFRhYmxlRWxlbWVudC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1NTU0MjVCMEFBNDhCMUUwMEJBODlGMiAvKiBIVE1M
VGFibGVSb3dFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFRhYmxlUm93
RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1NTU0MjVDMEFBNDhC
MUUwMEJBODlGMiAvKiBIVE1MVGFibGVTZWN0aW9uRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJODU1NTQyOTUwQUE0OTM4ODAwQkE4OUYyIC8qIEhUTUxGcmFtZUVsZW1lbnQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MRnJhbWVFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU1NTQyOTYwQUE0OTM4ODAwQkE4OUYyIC8qIEhUTUxG
cmFtZVNldEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MRnJhbWVTZXRF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU1NTQyOTcwQUE0OTM4
ODAwQkE4OUYyIC8qIEhUTUxJRnJhbWVFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSFRNTElGcmFtZUVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
NTU1NDI5ODBBQTQ5Mzg4MDBCQTg5RjIgLyogSFRNTE9iamVjdEVsZW1lbnQuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBIVE1MT2JqZWN0RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg1NTU0Mjk5MEFBNDkzODgwMEJBODlGMiAvKiBIVE1MU2VsZWN0RWxlbWVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxTZWxlY3RFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU3NEQxRjEwQURFNjEyMjAwNENCQTExIC8qIEpT
U1ZHRWxlbWVudFdyYXBwZXJGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBKU1NWR0VsZW1lbnRXcmFwcGVyRmFjdG9yeS5jcHA7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0pTU1ZHRWxlbWVudFdyYXBwZXJGYWN0b3J5LmNwcDsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJODU3NEQxRjIwQURFNjEyMjAwNENCQTExIC8q
IEpTU1ZHRWxlbWVudFdyYXBwZXJGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBKU1NWR0VsZW1lbnRXcmFwcGVyRmFjdG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9KU1NWR0VsZW1lbnRXcmFwcGVyRmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQk4NTc0RDFGMzBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdO
dW1iZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTnVt
YmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODU3NEQxRjQwQURFNjEyMjAw
NENCQTExIC8qIEpTU1ZHTnVtYmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuaDsgcGF0
aCA9IEpTU1ZHTnVtYmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1NzREMUY1
MEFERTYxMjIwMDRDQkExMSAvKiBKU1NWR1BvaW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1NWR1BvaW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODU3NEQxRjYwQURFNjEyMjAwNENCQTExIC8qIEpTU1ZHUG9pbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5oOyBwYXRoID0gSlNTVkdQb2ludC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NTc0RDFGNzBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdSZWN0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1JlY3QuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTc0RDFGODBBREU2MTIyMDA0Q0JBMTEgLyogSlNT
VkdSZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuaDsgcGF0aCA9IEpTU1ZHUmVjdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NTg3ODY0OTAyREUzQTlBMDFFQTQxMjIg
LyogQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZEZvbnRMb2FkUmVxdWVzdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKKwkJODU4QzM4RUYw
QUE4RkREMTAwQjE4N0E0IC8qIERlcHJlY2F0ZWRDU1NPTVJHQkNvbG9yLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gRGVwcmVjYXRlZENTU09NUkdCQ29sb3IuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk4NThDMzkxMDBBQThGRjAwMDBCMTg3QTQgLyogQ1NTU3R5bGVTaGVl
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU1N0eWxlU2hlZXQuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk4NTkxMjg3OTBBQjIyMkVDMDAyMDIyNjUgLyogSFRNTEVt
YmVkRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxFbWJlZEVsZW1lbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NUFDQTlGOTBBOUI2MzEwMDA2NzFF
OTAgLyogTmFtZWROb2RlTWFwLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmFtZWROb2Rl
TWFwLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODVBQ0E5RkEwQTlCNjMxMDAw
NjcxRTkwIC8qIE5vZGVMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTm9kZUxpc3Qu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NUFGQTc0MTBBQUYyOTg0MDBFODQz
MDUgLyogRXZlbnRMaXN0ZW5lci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEV2ZW50TGlz
dGVuZXIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NUFGQTc0MjBBQUYyOTg0
MDBFODQzMDUgLyogRXZlbnRUYXJnZXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFdmVu
dFRhcmdldC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1QzU2QzVCMEFBODdB
RkQwMEQ5NTc1NSAvKiBNZWRpYUxpc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRp
YUxpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NUM1NkNBMTBBQTg5QUI0
MDBEOTU3NTUgLyogQ1NTU3R5bGVSdWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ1NT
U3R5bGVSdWxlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODVDNTZDQTIwQUE4
OUMxMDAwRDk1NzU1IC8qIENTU01lZGlhUnVsZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IENTU01lZGlhUnVsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg1QzU2Q0Ez
MEFBODlDQTQwMEQ5NTc1NSAvKiBDU1NGb250RmFjZVJ1bGUuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBDU1NGb250RmFjZVJ1bGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4NUM1NkNBNjBBQTg5RDVGMDBEOTU3NTUgLyogQ1NTUGFnZVJ1bGUuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBDU1NQYWdlUnVsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTg1QzU2Q0E5MEFBODlFNjYwMEQ5NTc1NSAvKiBDU1NJbXBvcnRSdWxlLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gQ1NTSW1wb3J0UnVsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTg1QzU2Q0FEMEFBODlGRTAwMEQ5NTc1NSAvKiBDU1NVbmtub3duUnVsZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU1Vua25vd25SdWxlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJODVERjJGNjkwQUEzQzc0MzAwQUQ2NEM1IC8qIEhUTUxDb2xsZWN0
aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTENvbGxlY3Rpb24uaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NURGMkY5MjBBQTNDOUI2MDBBRDY0QzUgLyogSFRN
TE9wdGlvbnNDb2xsZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTE9wdGlv
bnNDb2xsZWN0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODYyRjEyOUQx
OEMxNTcyQzAwNUM1NEFGIC8qIENvdW50ZWRVc2VyQWN0aXZpdHkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ291bnRlZFVzZXJBY3Rpdml0eS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4NjUxMkVEQjE1NEEyQUVFMDBBOTA0MjYgLyogUGVyZm9ybWFuY2VSZXNv
dXJjZVRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJm
b3JtYW5jZVJlc291cmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
ODY1MTJFREMxNTRBMkFFRjAwQTkwNDI2IC8qIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWlu
Zy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4NjUxMkVERDE1NEEyQUVGMDBBOTA0
MjYgLyogUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gUGVyZm9ybWFuY2VSZXNvdXJjZVRpbWluZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTg2ODE2MEQxMTg3NjY5QzQwMDIxRTc5RCAvKiBVc2VyQWN0aXZpdHkuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVXNlckFjdGl2aXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJODY4MTYwRDIxODc2NjlDNDAwMjFFNzlEIC8qIFVzZXJBY3Rpdml0eS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBVc2VyQWN0aXZpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODY4
MTYwRDMxODc2NjlFNzAwMjFFNzlEIC8qIFVzZXJBY3Rpdml0eU1hYy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFVzZXJBY3Rpdml0eU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJODZCQTc2NkQxNjY0MjdBODAwNUJFNUQxIC8qIEZyYW1lTG9hZFJlcXVlc3QuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRnJhbWVMb2FkUmVxdWVzdC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg2QkUzM0ZCMTUwNThDQjIwMENFMEZEOCAvKiBQ
ZXJmb3JtYW5jZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZv
cm1hbmNlRW50cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODZCRTMzRkMxNTA1
OENCMjAwQ0UwRkQ4IC8qIFBlcmZvcm1hbmNlRW50cnkuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFBlcmZvcm1hbmNlRW50cnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
NkQ5ODJGNjEyNUMxNTQwMDBBRDlFM0QgLyogRG9jdW1lbnRFdmVudFRpbWluZy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudEV2ZW50VGltaW5nLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTg5MzFERTVBMTRDNDRDNDQwMDBEQzlEMiAvKiBKU0Jsb2JD
dXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNCbG9iQ3Vz
dG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODk4Nzg1RjIxMjJFMUVBQzAw
M0FBQkRBIC8qIEpTRmlsZVJlYWRlclN5bmMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNGaWxlUmVhZGVyU3luYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTg5ODc4NUYzMTIyRTFFQUMwMDNBQUJEQSAvKiBKU0ZpbGVSZWFkZXJTeW5jLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmlsZVJlYWRlclN5bmMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEExMkUzNUMxMUZBMzMyODAwMjU4MzZBIC8qIERvY3Vt
ZW50TG9hZFRpbWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVu
dExvYWRUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEEzMDlDOUUxMjM5
NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCThBNDEzQURFMTIwN0JCQTUwMDgyMDE2RSAvKiBTY3JpcHRSdW5u
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2NyaXB0UnVubmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThBNDEzQURGMTIwN0JCQTUwMDgyMDE2RSAvKiBT
Y3JpcHRSdW5uZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Ny
aXB0UnVubmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEE3Q0M5NkExMjA3
NkQ3MzAwMUQ0NTg4IC8qIFBlbmRpbmdTY3JpcHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUGVuZGluZ1NjcmlwdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4
QTdDQzk2RjEyMDc2RjhBMDAxRDQ1ODggLyogUGVuZGluZ1NjcmlwdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZW5kaW5nU2NyaXB0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOEE4MUJGODQxMURDRkQ5MDAwREEyQjk4IC8qIE5ldHdvcmtMb2Fk
TWV0cmljcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrTG9hZE1l
dHJpY3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEE4NDREMDIxMUQzQzE4RTAw
MTQwNjVDIC8qIFBlcmZvcm1hbmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBlcmZvcm1hbmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThBODQ0RDAzMTFE
M0MxOEUwMDE0MDY1QyAvKiBQZXJmb3JtYW5jZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
UGVyZm9ybWFuY2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4QTlBNTg2RTEx
RTg0QzM1MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4QTlBNTg2RjExRTg0QzM2MDA4QUNGRDEgLyog
SlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOEE5QTU4NzMxMUU4NEM4MTAwOEFDRkQxIC8qIEpTUGVyZm9ybWFuY2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk4QTlBNTg3NzExRTg0Qzk4MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZVRp
bWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlVGlt
aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThBQjRCQzc2MTI2RkRCNzEwMERF
QjcyNyAvKiBJZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNyZW1lbnRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnRJbmNy
ZW1lbnRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4QUY0RTU1MjExREM1QTM2
MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCThBRjRFNTUzMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5j
ZU5hdmlnYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFu
Y2VOYXZpZ2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThBRjRFNTU0MTFE
QzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFBlcmZvcm1hbmNlTmF2aWdhdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCThBRjRFNTU5MTFEQzVBNjMwMDBFRDNERSAvKiBQZXJmb3JtYW5jZVRpbWluZy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZVRpbWluZy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4QUY0RTU1QTExREM1QTYzMDAwRUQzREUgLyog
UGVyZm9ybWFuY2VUaW1pbmcuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNl
VGltaW5nLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEUzM0NEOTMyMDFBMjlD
MTAwRTM5MDkzIC8qIEdhcExlbmd0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBHYXBMZW5ndGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4RTRD
OTZEODFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaFJlc3BvbnNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmV0Y2hSZXNwb25zZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCThFNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoUmVz
cG9uc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGZXRjaFJlc3BvbnNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThFQzZDOTYxMjAxQTI1MDEwMEZCRkE1
MyAvKiBHYXBMZW5ndGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2FwTGVu
Z3RoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThGNjc1NjE5MTI4OEIxN0IwMDQ3
QUNBMyAvKiBFdmVudFF1ZXVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2
ZW50UXVldWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOEY5MzREODMxMTg5RjFF
RTAwNTA4RDVEIC8qIEpTRXhlY1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRXhlY1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCThGOTM0RDg0
MTE4OUYxRUUwMDUwOEQ1RCAvKiBKU0V4ZWNTdGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0V4ZWNTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkwMDE3NzNEMTJFMDM0NzgwMDY0ODQ2MiAvKiBPRVNTdGFuZGFyZERlcml2YXRpdmVz
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9FU1N0YW5kYXJkRGVy
aXZhdGl2ZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MDAxNzczRTEyRTAz
NDc4MDA2NDg0NjIgLyogT0VTU3RhbmRhcmREZXJpdmF0aXZlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBPRVNTdGFuZGFyZERlcml2YXRpdmVzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkwMDE3NzNGMTJFMDM0NzgwMDY0ODQ2MiAvKiBPRVNTdGFuZGFyZERl
cml2YXRpdmVzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPRVNTdGFuZGFyZERlcml2YXRp
dmVzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTAwMTc4N0UxMkUwMzcwNzAw
NjQ4NDYyIC8qIEpTT0VTU3RhbmRhcmREZXJpdmF0aXZlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU09FU1N0YW5kYXJkRGVyaXZhdGl2ZXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MDAxNzg3RjEyRTAzNzA3MDA2NDg0NjIgLyogSlNPRVNT
dGFuZGFyZERlcml2YXRpdmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
T0VTU3RhbmRhcmREZXJpdmF0aXZlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MDE2RUE0QzI0NTREODEzMDAyMUQ5RDEgLyogSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkwRTM1MUJDMjQ3RTNENDgwMEZCRjI0RiAvKiBJREJEYXRhYmFzZU5h
bWVBbmRWZXJzaW9uUmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uUmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkwRTM1MUJEMjQ3RTNENDgwMEZCRjI0RiAvKiBJREJEYXRhYmFzZU5h
bWVBbmRWZXJzaW9uUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
REJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5MTA5RTlDNTIyMkNBQkM4MDBCQjYyNjQgLyogSW5zcGVjdG9yQXVkaXRSZXNvdXJj
ZXNPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yQXVk
aXRSZXNvdXJjZXNPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTEwOUU5
QzUyMjJDQUJDODAwQkI2MjY1IC8qIEpTSW5zcGVjdG9yQXVkaXRSZXNvdXJjZXNPYmplY3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbnNwZWN0b3JBdWRpdFJlc291cmNl
c09iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MTA5RTlDNzIyMkNBQkM5
MDBCQjYyNjQgLyogSW5zcGVjdG9yQXVkaXRSZXNvdXJjZXNPYmplY3QuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yQXVkaXRSZXNvdXJjZXNPYmplY3Qu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MTA5RTlDNzIyMkNBQkM5MDBCQjYy
NjUgLyogSlNJbnNwZWN0b3JBdWRpdFJlc291cmNlc09iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0luc3BlY3RvckF1ZGl0UmVzb3VyY2VzT2JqZWN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTEyNzhENUEyMURFREFENTAwQjU3MTg0
IC8qIFBhZ2VBdWRpdEFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFBhZ2VBdWRpdEFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTEy
NzhENUMyMURFREFENTAwQjU3MTg0IC8qIFBhZ2VBdWRpdEFnZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VBdWRpdEFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkxMjc4RDVGMjFERURBRUYwMEI1NzE4NCAvKiBXb3JrZXJBdWRpdEFnZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckF1ZGl0QWdlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MTI3OEQ2MDIxREVEQUYwMDBCNTcx
ODQgLyogV29ya2VyQXVkaXRBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBXb3JrZXJBdWRpdEFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkxM0ZF
NTk4MjM2Mjc5OTkwMEY5NDQ2QSAvKiBJbnNwZWN0b3JBbmltYXRpb25BZ2VudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBJbnNwZWN0b3JBbmltYXRpb25BZ2VudC5j
cHA7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckFuaW1hdGlvbkFnZW50LmNwcDsg
c291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk5MTNGRTU5QTIzNjI3OTk5MDBGOTQ0NkEg
LyogSW5zcGVjdG9yQW5pbWF0aW9uQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gSW5zcGVjdG9yQW5pbWF0aW9uQWdlbnQuaDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMv
SW5zcGVjdG9yQW5pbWF0aW9uQWdlbnQuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9Owor
CQk5MTc0RUE1RDI0NDBGOUE1MDAwODM0OUMgLyogUGFnZURlYnVnZ2VyTWFjLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGFnZURlYnVnZ2VyTWFjLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MTc1Q0U1NzIxRTI4MUVCMDBERjJDMjcgLyogSW5z
cGVjdG9yQXVkaXRET01PYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSW5zcGVjdG9yQXVkaXRET01PYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5MTc1Q0U1NzIxRTI4MUVCMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdERPTU9i
amVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0luc3BlY3Rv
ckF1ZGl0RE9NT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTE3NUNF
NTgyMUUyODFFQzAwREYyQzI3IC8qIEluc3BlY3RvckF1ZGl0RE9NT2JqZWN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckF1ZGl0RE9NT2JqZWN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkxNzVDRTU4MjFFMjgxRUMwMERGMkMyOCAvKiBKU0lu
c3BlY3RvckF1ZGl0RE9NT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTSW5zcGVjdG9yQXVkaXRET01PYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTE3NUNFNTkyMUUyODFFQzAwREYyQzI3IC8qIEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0
eU9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0
b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MTc1Q0U1OTIxRTI4MUVDMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNJ
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MTc1Q0U1QTIxRTI4MUVEMDBERjJDMjcgLyogSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3Bl
Y3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MTc1Q0U1QTIxRTI4MUVEMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJbnNwZWN0
b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTFCOEYwQjMyMTk1M0Q2NTAwMEMyQjAwIC8qIENlcnRpZmljYXRlU3VtbWFyeS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDZXJ0aWZpY2F0ZVN1bW1hcnkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTFCOTUyMjIxRjU4QTU4MDAwOTMxREMyIC8qIFJlY29y
ZGluZ1N3aXp6bGVUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlY29yZGluZ1N3aXp6bGVUeXBlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkxQzlGMkY4MUFFM0JFMjQwMDk1QjYxQyAv
KiBBWFRleHRTdGF0ZUNoYW5nZUludGVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBWFRleHRTdGF0ZUNo
YW5nZUludGVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MUUwRERCRDIzMEI0
MUU0MDAxOUUxRTMgLyogUGFnZURPTURlYnVnZ2VyQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZURPTURlYnVnZ2VyQWdlbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MUUwRERCRjIzMEI0MUU1MDAxOUUxRTMgLyogUGFnZURPTURl
YnVnZ2VyQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFnZURPTURl
YnVnZ2VyQWdlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTFFMEREQzIyMzBC
NDFGMDAwMTlFMUUzIC8qIFdvcmtlckRPTURlYnVnZ2VyQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRE9NRGVidWdnZXJBZ2VudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MUUwRERDMzIzMEI0MUYwMDAxOUUxRTMgLyogV29ya2VyRE9NRGVi
dWdnZXJBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3Jr
ZXJET01EZWJ1Z2dlckFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMw
MkIwQkMwRDc5RjgyOTAwQzdFRTgzIC8qIFBhZ2VHcm91cC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBQYWdlR3JvdXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5MzAyQjBCRTBENzlGODJDMDBDN0VFODMgLyogUGFnZUdyb3VwLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VHcm91cC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzA1QjI0QzA5OEYxQjZCMDBDMjg4NTUgLyogVGltZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGltZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMwNzA1OTAwOUUwQzc1ODAwQjE3RkU0IC8qIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2
ZVZhbHVlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBEZXByZWNhdGVkQ1NTT01QcmltaXRp
dmVWYWx1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMDcwNUM3MDlFMEM5
NUYwMEIxN0ZFNCAvKiBEZXByZWNhdGVkQ1NTT01Db3VudGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBEZXByZWNhdGVkQ1NTT01Db3VudGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTMwNzA2MTMwOUUwQ0E4MjAwQjE3RkU0IC8qIERlcml2ZWRTb3VyY2VzLm1ha2Ug
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHNvdXJjZWNv
ZGUubWFrZTsgZmlsZUVuY29kaW5nID0gNDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzLm1ha2U7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IHVzZXNUYWJzID0gMTsgfTsKKwkJOTMwN0YxRDUwQUYyRDU5
MDAwREJBMzFBIC8qIEhpdFRlc3RSZXN1bHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhpdFRlc3RSZXN1bHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzA3RjFENjBBRjJENTkwMDBEQkEzMUEgLyogSGl0VGVzdFJlc3VsdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSGl0VGVzdFJlc3VsdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzA4NDEzMzFDRERCMTU1MDBCMDk1OEMgLyogSlNET01Db252ZXJ0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzA4NURCMTI2RTAwMEJEMDAwRUM2QTcgLyogTmF2
aWdhdG9yU3RvcmFnZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTmF2aWdhdG9yU3RvcmFnZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzMDg1REI0MjZFMDA2Q0YwMDBFQzZBNyAvKiBTdG9yYWdlTWFu
YWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdG9yYWdlTWFu
YWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMDg1REI1MjZFMDA2RDAw
MDBFQzZBNyAvKiBTdG9yYWdlTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTdG9yYWdlTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzA4
NURCNjI2RTAwNkQwMDAwRUM2QTcgLyogU3RvcmFnZU1hbmFnZXIuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFN0b3JhZ2VNYW5hZ2VyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMwODVEQjgyNkUxNEZCQTAwMEVDNkE3IC8qIFN0b3JhZ2VQcm92aWRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTMwODVEQjkyNkUxNEZCQTAwMEVDNkE3IC8qIFN0b3JhZ2VDb25u
ZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0b3JhZ2VDb25uZWN0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMDg1REY2MjZFODIyQzYwMDBF
QzZBNyAvKiBEdW1teVN0b3JhZ2VQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBEdW1teVN0b3JhZ2VQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzA5MDg5MDBBRjdFREU0MDA4MURGMDEgLyogSGl0VGVzdFJlcXVlc3QuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhpdFRlc3RSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzMEFBQzk2MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRp
b25SdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0NvbmRpdGlvblJ1bGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzBBQUM5ODI1MEVCODE3MDAxM0RBOUYgLyogQ1NT
Q29uZGl0aW9uUnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NDb25kaXRpb25SdWxlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMEFBQzk5MjUwRUI4MTgwMDEzREE5RiAvKiBDU1ND
b25kaXRpb25SdWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NDb25kaXRpb25SdWxlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTMwQUFDOUIyNTBFQzJGMzAwMTNEQTlGIC8qIENTU0dyb3VwaW5n
UnVsZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQ1NTR3JvdXBpbmdSdWxlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTMwQUFDOUMyNTBFRDQwODAwMTNEQTlGIC8qIEpTQ1NTQ29uZGl0aW9uUnVsZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU0NvbmRpdGlvblJ1
bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzBBQUM5RDI1MEVENDA5MDAx
M0RBOUYgLyogSlNDU1NDb25kaXRpb25SdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTQ1NTQ29uZGl0aW9uUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzBBQUNBMDI1MEVENDExMDAxM0RBOUYgLyogSlNDU1NHcm91cGluZ1J1bGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NHcm91cGluZ1J1bGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMwQUFDQTEyNTBFRDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3Jv
dXBpbmdSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NT
R3JvdXBpbmdSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMwQzkwREMx
OUNGOTY1MzAwRDZDMjFBIC8qIElubGluZUl0ZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IElubGluZUl0ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTMxNTNCRDkxNDE4MUY3QTAwRkNGNUJFIC8qIG1pc3NpbmdJbWFnZUAyeC5w
bmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFn
ZS5wbmc7IHBhdGggPSAibWlzc2luZ0ltYWdlQDJ4LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMTUzQkRCMTQxOTU5QkIwMEZDRjVCRSAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5l
ci5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBp
bWFnZS5wbmc7IHBhdGggPSB0ZXh0QXJlYVJlc2l6ZUNvcm5lci5wbmc7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzMTUzQkUxMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2Uu
cG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gaW1h
Z2UucG5nOyBwYXRoID0gbWlzc2luZ0ltYWdlLnBuZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMxNkRERjgyNDBDNjRCMzAwOTM0MEFBIC8qIFNpbXBsZVJhbmdlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbXBsZVJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMTZEREZBMjQwQzY0QjMwMDkzNDBBQSAvKiBTaW1wbGVSYW5nZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaW1wbGVSYW5nZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMTZEREZFMjQwQzY0RjgwMDkzNDBBQSAvKiBC
b3VuZGFyeVBvaW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJvdW5kYXJ5
UG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQUUzQjgxRkI4MEVBRTAw
RjVFRkIyIC8qIEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWYWx1
ZUluV3JhcHBlZE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFCQ0M2
MDExMjRERkNCMDBCRTcwREQgLyogTWVkaWFDYW5TdGFydExpc3RlbmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzFDQkQwNjE2MUE0NEU5MDBFNEM4NzQgLyogU2Nyb2xsaW5n
U3RhdGVOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9s
bGluZ1N0YXRlTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMUNCRDA3
MTYxQTQ0RTkwMEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMUNCRDA4MTYxQTQ0RTkwMEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZVNj
cm9sbGluZ05vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Ny
b2xsaW5nU3RhdGVTY3JvbGxpbmdOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMxQ0JEMDkxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlU2Nyb2xsaW5nTm9k
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZVNjcm9s
bGluZ05vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMxQ0JEMEExNjFBNDRF
OTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZVRyZWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzFDQkQwQjE2MUE0NEU5MDBFNEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVU
cmVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1N0YXRlVHJl
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzFENzJGNTE1RkU2OTUzMDBDNEMw
N0UgLyogTGF5b3V0TWlsZXN0b25lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExheW91dE1pbGVzdG9uZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzIzQjA2
RDIzMDYxRTlCMDA5MDFDOEIgLyogSURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzIzQjA2RjIzMDYxRTlDMDA5MDFDOEIg
LyogSURCU2VyaWFsaXphdGlvbkNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSURCU2VyaWFsaXphdGlvbkNvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMyN0E5NDEwOTk2OEQxQTAwNjhBNTQ2IC8qIEhUTUxPcHRpb25zQ29sbGVjdGlvbi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MT3B0aW9uc0NvbGxl
Y3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzJDOUJDRTI2REQ2MjUy
MDA1M0IzREIgLyogRmlsZVN5c3RlbUZpbGVIYW5kbGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IEZpbGVTeXN0ZW1GaWxl
SGFuZGxlLmlkbDsgcGF0aCA9IE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVtRmls
ZUhhbmRsZS5pZGw7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJOTMyQzlCRDAyNkRE
NjI1NTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gRmlsZVN5c3RlbUhhbmRsZS5jcHA7IHBhdGggPSBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0Vf
Uk9PVDsgfTsKKwkJOTMyQzlCRDIyNkRENjI1NzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3Rv
cnlIYW5kbGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgbmFtZSA9IEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaWRsOyBwYXRoID0g
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuaWRsOyBz
b3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCTkzMkM5QkQzMjZERDYyNTkwMDUzQjNEQiAv
KiBGaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBGaWxlU3lzdGVtRmlsZUhhbmRsZS5jcHA7IHBhdGggPSBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuY3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCTkzMkM5QkQ0MjZERDYyNUEwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5
SGFuZGxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGUuaDsgcGF0aCA9IE1vZHVsZXMvZmlsZXN5c3RlbWFjY2Vzcy9GaWxlU3lzdGVt
RGlyZWN0b3J5SGFuZGxlLmg7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJOTMyQzlC
RDUyNkRENjI1QjAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZS5jcHA7IHBhdGggPSBNb2R1bGVzL2ZpbGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZS5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJOTMyQzlCRDYyNkRE
NjI1QzAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IEZpbGVTeXN0ZW1GaWxlSGFuZGxlLmg7IHBhdGggPSBNb2R1bGVzL2Zp
bGVzeXN0ZW1hY2Nlc3MvRmlsZVN5c3RlbUZpbGVIYW5kbGUuaDsgc291cmNlVHJlZSA9IFNPVVJD
RV9ST09UOyB9OworCQk5MzJDOUJEOTI2REQ2MjYwMDA1M0IzREIgLyogRmlsZVN5c3RlbUhhbmRs
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBuYW1lID0gRmlsZVN5c3RlbUhhbmRsZS5pZGw7IHBhdGggPSBNb2R1bGVzL2ZpbGVzeXN0
ZW1hY2Nlc3MvRmlsZVN5c3RlbUhhbmRsZS5pZGw7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsg
fTsKKwkJOTMyQzlCREEyNkRENjI2MTAwNTNCM0RCIC8qIEZpbGVTeXN0ZW1IYW5kbGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRmlsZVN5c3RlbUhhbmRsZS5oOyBwYXRoID0g
TW9kdWxlcy9maWxlc3lzdGVtYWNjZXNzL0ZpbGVTeXN0ZW1IYW5kbGUuaDsgc291cmNlVHJlZSA9
IFNPVVJDRV9ST09UOyB9OworCQk5MzJDQzBCNjFERkZEMTU4MDA0QzBGOUYgLyogTWVkaWFUcmFj
a0NvbnN0cmFpbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhVHJh
Y2tDb25zdHJhaW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzJDQzBEMDFE
RkZENjY3MDA0QzBGOUYgLyogSlNNZWRpYVRyYWNrQ29uc3RyYWludHMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYVRyYWNrQ29uc3RyYWludHMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzJDQzBEMTFERkZENjY3MDA0QzBGOUYgLyog
SlNNZWRpYVRyYWNrQ29uc3RyYWludHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNNZWRpYVRyYWNrQ29uc3RyYWludHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTMyQ0MwRjAxREZGRDhENDAwNEMwRjlGIC8qIE1lZGlhVHJhY2tDb25zdHJhaW50cy5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFUcmFja0NvbnN0cmFpbnRzLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMyQ0MwRjYxREZGREExRjAwNEMwRjlGIC8qIE1lZGlh
VHJhY2tDb25zdHJhaW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNZWRpYVRyYWNrQ29uc3RyYWludHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzJFMTYwODBBRjU3ODM0MDAyNUY0MDggLyogRnJhbWVMb2FkZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRnJhbWVMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzMwOUQ4NzA5OUU2NDkxMDA1NkU1ODEgLyogQXBwZW5kTm9kZUNv
bW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXBwZW5kTm9k
ZUNvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ4ODA5OUU2
NDkxMDA1NkU1ODEgLyogQXBwZW5kTm9kZUNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQXBwZW5kTm9kZUNvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMzMDlEODkwOTlFNjQ5MTAwNTZFNTgxIC8qIEFwcGx5U3R5bGVDb21tYW5kLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFwcGx5U3R5bGVDb21tYW5kLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEOEEwOTlFNjQ5MTAwNTZFNTgx
IC8qIEFwcGx5U3R5bGVDb21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEFwcGx5U3R5bGVDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5
RDhCMDk5RTY0OTEwMDU2RTU4MSAvKiBCcmVha0Jsb2NrcXVvdGVDb21tYW5kLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJyZWFrQmxvY2txdW90ZUNvbW1hbmQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ4QzA5OUU2NDkxMDA1NkU1ODEg
LyogQnJlYWtCbG9ja3F1b3RlQ29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBCcmVha0Jsb2NrcXVvdGVDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzMzA5RDhEMDk5RTY0OTEwMDU2RTU4MSAvKiBDb21wb3NpdGVFZGl0Q29tbWFuZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb21wb3NpdGVFZGl0Q29tbWFu
ZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDhFMDk5RTY0OTEwMDU2
RTU4MSAvKiBDb21wb3NpdGVFZGl0Q29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDb21wb3NpdGVFZGl0Q29tbWFuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzMwOUQ4RjA5OUU2NDkxMDA1NkU1ODEgLyogRGVsZXRlRnJvbVRleHROb2RlQ29tbWFu
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZWxldGVGcm9tVGV4
dE5vZGVDb21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEOTAw
OTlFNjQ5MTAwNTZFNTgxIC8qIERlbGV0ZUZyb21UZXh0Tm9kZUNvbW1hbmQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVsZXRlRnJvbVRleHROb2RlQ29tbWFuZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ5MTA5OUU2NDkxMDA1NkU1ODEgLyogRGVs
ZXRlU2VsZWN0aW9uQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEZWxldGVTZWxlY3Rpb25Db21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTMzMDlEOTIwOTlFNjQ5MTAwNTZFNTgxIC8qIERlbGV0ZVNlbGVjdGlvbkNvbW1hbmQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVsZXRlU2VsZWN0aW9uQ29tbWFu
ZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ5MzA5OUU2NDkxMDA1NkU1
ODEgLyogRWRpdEFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFZGl0
QWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDk0MDk5RTY0OTEw
MDU2RTU4MSAvKiBFZGl0Q29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBFZGl0Q29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
MzA5RDk1MDk5RTY0OTEwMDU2RTU4MSAvKiBFZGl0Q29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBFZGl0Q29tbWFuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzMwOUQ5NjA5OUU2NDkxMDA1NkU1ODEgLyogSFRNTEludGVyY2hhbmdlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxJbnRlcmNoYW5nZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDk3MDk5RTY0OTEwMDU2RTU4MSAvKiBI
VE1MSW50ZXJjaGFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTElu
dGVyY2hhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDk4MDk5RTY0
OTEwMDU2RTU4MSAvKiBFZGl0aW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEVkaXRpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ5
OTA5OUU2NDkxMDA1NkU1ODEgLyogRWRpdGluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBFZGl0aW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDlB
MDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnRJbnRvVGV4dE5vZGVDb21tYW5kLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc2VydEludG9UZXh0Tm9kZUNvbW1hbmQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ5QjA5OUU2NDkxMDA1NkU1
ODEgLyogSW5zZXJ0SW50b1RleHROb2RlQ29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJbnNlcnRJbnRvVGV4dE5vZGVDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzMzA5RDlDMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnRMaW5lQnJlYWtD
b21tYW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc2VydExp
bmVCcmVha0NvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOUQ5
RDA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0TGluZUJyZWFrQ29tbWFuZC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNlcnRMaW5lQnJlYWtDb21tYW5kLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RDlFMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnRO
b2RlQmVmb3JlQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJbnNlcnROb2RlQmVmb3JlQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzMzA5RDlGMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnROb2RlQmVmb3JlQ29tbWFuZC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNlcnROb2RlQmVmb3JlQ29tbWFu
ZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURBMDA5OUU2NDkxMDA1NkU1
ODEgLyogSW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3JDb21tYW5kLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQTEwOTlFNjQ5MTAwNTZFNTgx
IC8qIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURBMjA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0
VGV4dENvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5z
ZXJ0VGV4dENvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURB
MzA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0VGV4dENvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW5zZXJ0VGV4dENvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTMzMDlEQTgwOTlFNjQ5MTAwNTZFNTgxIC8qIG1hcmt1cC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBtYXJrdXAuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzMwOURBOTA5OUU2NDkxMDA1NkU1ODEgLyogbWFya3VwLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IG1hcmt1cC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzMwOURBQTA5OUU2NDkxMDA1NkU1ODEgLyogTWVyZ2VJZGVudGljYWxF
bGVtZW50c0NvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TWVyZ2VJZGVudGljYWxFbGVtZW50c0NvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5MzMwOURBQjA5OUU2NDkxMDA1NkU1ODEgLyogTWVyZ2VJZGVudGljYWxFbGVtZW50
c0NvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVyZ2VJZGVudGlj
YWxFbGVtZW50c0NvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlE
QUMwOTlFNjQ5MTAwNTZFNTgxIC8qIE1vdmVTZWxlY3Rpb25Db21tYW5kLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vdmVTZWxlY3Rpb25Db21tYW5kLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQUQwOTlFNjQ5MTAwNTZFNTgxIC8qIE1v
dmVTZWxlY3Rpb25Db21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1v
dmVTZWxlY3Rpb25Db21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5
REI1MDk5RTY0OTEwMDU2RTU4MSAvKiBSZW1vdmVOb2RlQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW1vdmVOb2RlQ29tbWFuZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5REI2MDk5RTY0OTEwMDU2RTU4MSAvKiBSZW1vdmVO
b2RlQ29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdmVOb2Rl
Q29tbWFuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURCNzA5OUU2NDkx
MDA1NkU1ODEgLyogUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGlsZHJlbkNvbW1hbmQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGls
ZHJlbkNvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURCODA5
OUU2NDkxMDA1NkU1ODEgLyogUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGlsZHJlbkNvbW1hbmQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGls
ZHJlbkNvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQkEwOTlF
NjQ5MTAwNTZFNTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQkIwOTlFNjQ5MTAwNTZFNTgxIC8qIFJl
cGxhY2VTZWxlY3Rpb25Db21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzMzA5REJFMDk5RTY0OTEwMDU2RTU4MSAvKiBGcmFtZVNlbGVjdGlvbi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGcmFtZVNlbGVjdGlvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5REJGMDk5RTY0OTEwMDU2RTU4MSAvKiBGcmFtZVNl
bGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGcmFtZVNlbGVjdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURDMDA5OUU2NDkxMDA1NkU1
ODEgLyogU2V0Tm9kZUF0dHJpYnV0ZUNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gU2V0Tm9kZUF0dHJpYnV0ZUNvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzMwOURDMTA5OUU2NDkxMDA1NkU1ODEgLyogU2V0Tm9kZUF0dHJp
YnV0ZUNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2V0Tm9kZUF0
dHJpYnV0ZUNvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQzIw
OTlFNjQ5MTAwNTZFNTgxIC8qIFNwbGl0RWxlbWVudENvbW1hbmQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BsaXRFbGVtZW50Q29tbWFuZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5REMzMDk5RTY0OTEwMDU2RTU4MSAvKiBTcGxpdEVs
ZW1lbnRDb21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwbGl0RWxl
bWVudENvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQzQwOTlF
NjQ5MTAwNTZFNTgxIC8qIFNwbGl0VGV4dE5vZGVDb21tYW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwbGl0VGV4dE5vZGVDb21tYW5kLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQzUwOTlFNjQ5MTAwNTZFNTgxIC8qIFNwbGl0VGV4
dE5vZGVDb21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwbGl0VGV4
dE5vZGVDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5REM2MDk5
RTY0OTEwMDU2RTU4MSAvKiBTcGxpdFRleHROb2RlQ29udGFpbmluZ0VsZW1lbnRDb21tYW5kLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwbGl0VGV4dE5vZGVDb250
YWluaW5nRWxlbWVudENvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
MzMwOURDNzA5OUU2NDkxMDA1NkU1ODEgLyogU3BsaXRUZXh0Tm9kZUNvbnRhaW5pbmdFbGVtZW50
Q29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTcGxpdFRleHROb2Rl
Q29udGFpbmluZ0VsZW1lbnRDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzMzA5REM4MDk5RTY0OTEwMDU2RTU4MSAvKiBUZXh0QWZmaW5pdHkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEFmZmluaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzMzA5REM5MDk5RTY0OTEwMDU2RTU4MSAvKiBUZXh0R3JhbnVsYXJpdHkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEdyYW51bGFyaXR5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RENBMDk5RTY0OTEwMDU2RTU4MSAvKiBUeXBp
bmdDb21tYW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFR5cGlu
Z0NvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURDQjA5OUU2
NDkxMDA1NkU1ODEgLyogVHlwaW5nQ29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBUeXBpbmdDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
MzA5RENDMDk5RTY0OTEwMDU2RTU4MSAvKiBUZXh0SXRlcmF0b3IuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dEl0ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQ0QwOTlFNjQ5MTAwNTZFNTgxIC8qIFRleHRJdGVyYXRvci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0SXRlcmF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlEQ0UwOTlFNjQ5MTAwNTZFNTgxIC8qIFZpc2li
bGVVbml0cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBWaXNpYmxl
VW5pdHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURDRjA5OUU2NDkx
MDA1NkU1ODEgLyogVmlzaWJsZVVuaXRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFZpc2libGVVbml0cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMwOURE
MDA5OUU2NDkxMDA1NkU1ODEgLyogVmlzaWJsZVBvc2l0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFZpc2libGVQb3NpdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzMzA5REQxMDk5RTY0OTEwMDU2RTU4MSAvKiBWaXNpYmxlUG9zaXRp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlzaWJsZVBvc2l0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5REQ0MDk5RTY0OTEwMDU2RTU4MSAv
KiBXcmFwQ29udGVudHNJbkR1bW15U3BhbkNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gV3JhcENvbnRlbnRzSW5EdW1teVNwYW5Db21tYW5kLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzMDlERDUwOTlFNjQ5MTAwNTZFNTgxIC8qIFdy
YXBDb250ZW50c0luRHVtbXlTcGFuQ29tbWFuZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXcmFwQ29udGVudHNJbkR1bW15U3BhbkNvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTMzMDlFQTAwOTlFQjc4QzAwNTZFNTgxIC8qIFNoYXJlZFRpbWVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXJlZFRpbWVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzA5RUExMDk5RUI3OEMwMDU2RTU4MSAvKiBUaW1lci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaW1lci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzJBQjNEMTY1MTVENzcwMEQ4MjdFQyAvKiBHcmFw
aGljc0NvbnRleHRHTE5FT04uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3Jh
cGhpY3NDb250ZXh0R0xORU9OLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzJB
Qjg3MTY1M0E5NzkwMEQ4MjdFQyAvKiBGRUJsZW5kTkVPTi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBGRUJsZW5kTkVPTi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzMyQUI4ODE2NTNBOTc5MDBEODI3RUMgLyogRkVDb21wb3NpdGVBcml0aG1ldGljTkVPTi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGRUNvbXBvc2l0ZUFyaXRobWV0aWNO
RU9OLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzJBQjg5MTY1M0E5NzkwMEQ4
MjdFQyAvKiBGRUdhdXNzaWFuQmx1ck5FT04uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRkVHYXVzc2lhbkJsdXJORU9OLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzMzJBQjhBMTY1M0E5NzkwMEQ4MjdFQyAvKiBGRUxpZ2h0aW5nTkVPTi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRUxpZ2h0aW5nTkVPTi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzMzJBQjhCMTY1M0E5NzkwMEQ4MjdFQyAvKiBGRUxpZ2h0
aW5nTkVPTi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGRUxpZ2h0aW5nTkVP
Ti5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzMyQUI4QzE2NTNBOTc5MDBEODI3
RUMgLyogTkVPTkhlbHBlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTkVP
TkhlbHBlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzNTRBM0IwQjI0RjhD
OTAwM0Y2REVBIC8qIFVJRXZlbnRXaXRoS2V5U3RhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVUlFdmVudFdpdGhLZXlTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzM0ExNDJCMEI3RDE4ODYwMEE1M0ZGRCAvKiBUZXh0RXZlbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dEV2ZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzQTE0MkMwQjdEMTg4NjAwQTUzRkZEIC8qIFRl
eHRFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVGV4dEV2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzQTE0MkQwQjdEMTg4NjAwQTUzRkZEIC8qIFRleHRF
dmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0RXZlbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzQTE0QjYwQjdEMUQ1MjAwQTUzRkZEIC8qIEpT
VGV4dEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVGV4
dEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTMzQTE0QjcwQjdEMUQ1
MjAwQTUzRkZEIC8qIEpTVGV4dEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTVGV4dEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNDMwNTk2
MURCOUZBMEUwMEU3MTJBNyAvKiBTVkdHcmFwaGljc0VsZW1lbnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0dyYXBo
aWNzRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNDNDQjdGMTJG
MjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFRleHRDb2RlY1VURjguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5MzQzQ0I4MDEyRjI1RTUxMDAzM0M1RUUgLyogVGV4dENvZGVjVVRGOC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0Q29kZWNVVEY4Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzNDQyQzlEMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVS
b3dzQ29sbGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MVGFi
bGVSb3dzQ29sbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ0MkM5
RjBEMkIzMzYwMDAzMzhGRjkgLyogSFRNTFRhYmxlUm93c0NvbGxlY3Rpb24uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRhYmxlUm93c0NvbGxlY3Rpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ0M0U3QjI2RThBNkJDMDA1ODUzOEYg
LyogU3RvcmFnZU1hbmFnZXIrRmlsZVN5c3RlbUFjY2Vzcy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIlN0b3JhZ2VNYW5h
Z2VyK0ZpbGVTeXN0ZW1BY2Nlc3MuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTM0NDNFN0QyNkU4QTZCQzAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vz
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlTWFuYWdlckZpbGVTeXN0ZW1BY2Nlc3MuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM0OTA3RTMxMjVCQkJDODAwN0YyM0EwIC8qIEdy
YXBoaWNzQ29udGV4dENHLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdyYXBo
aWNzQ29udGV4dENHLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNDk1MEFEMjUz
OTQzNDYwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3BlZWNoUmVjb2du
aXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBBRjI1Mzk0MzQ3
MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvckNvZGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U3BlZWNoUmVjb2duaXRpb25FcnJvckNvZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTM0OTUwQjEyNTM5NDM0ODAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNwZWVjaFJlY29nbml0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzNDk1MEI0MjUzOTQzNDkwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkV2ZW50Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBTcGVlY2hSZWNvZ25pdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTM0OTUwQjcyNTM5NDM0QjAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uQWx0
ZXJuYXRpdmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25BbHRlcm5h
dGl2ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNDk1MEI4MjUzOTQzNEMw
MDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkVycm9yQ29kZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3BlZWNoUmVj
b2duaXRpb25FcnJvckNvZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5
NTBCOTI1Mzk0MzREMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25SZXN1bHQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFNwZWVjaFJlY29nbml0aW9uUmVzdWx0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTM0OTUwQkEyNTM5NDM0RDAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3JFdmVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25FcnJvckV2ZW50LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTM0OTUwQkIyNTM5NDM0RTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uQWx0ZXJuYXRpdmUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNwZWVjaFJlY29nbml0aW9uQWx0ZXJuYXRpdmUu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBCQzI1Mzk0MzRFMDA5OUYx
NzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5hdGl2ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTcGVl
Y2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzNDk1MEJEMjUzOTQzNEYwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdExpc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25SZXN1bHRMaXN0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM0OTUwQkYyNTM5NDM1MDAwOTlGMTcxIC8q
IFNwZWVjaFJlY29nbml0aW9uUmVzdWx0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwZWVjaFJl
Y29nbml0aW9uUmVzdWx0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM0OTUw
QzAyNTM5NDM1MDAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzNDk1MEMxMjUzOTQzNTEwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlv
blJlc3VsdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBDMzI1Mzk0MzUyMDA5OUYxNzEgLyogU3Bl
ZWNoUmVjb2duaXRpb25FcnJvckV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFJlY29nbml0
aW9uRXJyb3JFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBDNDI1
Mzk0MzUyMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25SZXN1bHRMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNwZWVjaFJlY29nbml0aW9uUmVzdWx0TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5MzQ5NTBDNTI1Mzk0MzUzMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25S
ZXN1bHRMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdExpc3QuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBDNzI1Mzk0MzU0MDA5OUYxNzEgLyogU3Bl
ZWNoUmVjb2duaXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzQ5NTBDODI1Mzk0MzU0MDA5OUYx
NzEgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvckV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNwZWVjaFJlY29nbml0aW9uRXJyb3JFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzNDk1MEM5MjUzOTQzNTUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkV2ZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFJlY29nbml0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTM0Q0MxMDkwRURCMjIzOTAwQTY1OEYyIC8qIFNjcmlwdFNvdXJj
ZUNvZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2NyaXB0U291cmNlQ29k
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzRGNzEzNzBENUE2RUZGMDAwMThE
NjkgLyogQXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzRGNzEzOTBENUE2RjEwMDAwMThENjkgLyogQXV0
aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTM0RjcxM0IwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNvdXJjZUVycm9yQmFzZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzRGNzEzRDBENUE2RjI4MDAwMThENjkgLyog
UmVzb3VyY2VFcnJvckJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlc291cmNlRXJyb3JCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTM0RkU5RTQwQjVDQTUzOTAwM0U0QTczIC8qIEZpbGVDaG9vc2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVDaG9vc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTM1MDBGMzExM0ZERTNCRTAwOTlFQzI0IC8qIE5TU2Nyb2xsZXJJbXBE
ZXRhaWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TU2Nyb2xsZXJJbXBE
ZXRhaWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNTIwN0JEMDlCRDQxMEEw
MEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IExvY2FsaXplZFN0cmluZ3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2IC8qIFNjcm9sbFZpZXdNYWMubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxWaWV3TWFjLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzU1RUY0RjI1M0E0Mjc4MDA2RkY0QTQgLyogSlNBYnN0cmFj
dFJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWJzdHJhY3RSYW5n
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzU1RUY1MDI1M0E0Mjc5MDA2RkY0
QTQgLyogSlNBYnN0cmFjdFJhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQWJzdHJhY3RSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzNTVFRjUzMjUzQTRENUEwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2VDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNBYnN0cmFjdFJhbmdlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QzQ3NjIwOUFDNENFNjAwQTZBQUI0IC8qIE1vdXNlRXZlbnRX
aXRoSGl0VGVzdFJlc3VsdHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW91
c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5MzVDNDc2NjA5QUM0RDQzMDBBNkFBQjQgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzVDNDc2NzA5QUM0RDQzMDBBNkFBQjQgLyog
UGxhdGZvcm1Nb3VzZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBs
YXRmb3JtTW91c2VFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzVDNDc2
QTA5QUM0RDRGMDBBNkFBQjQgLyogUGxhdGZvcm1XaGVlbEV2ZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtV2hlZWxFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzVDNDc2RTA5QUM0RDczMDBBNkFBQjQgLyogS2V5RXZlbnRNYWMubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBLZXlFdmVudE1hYy5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1QzQ3NzQwOUFDNEQ4RDAwQTZBQUI0IC8q
IEdhcFJlY3RzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdhcFJlY3RzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUY0NTQwMEY3QzNCNUYwMEQ3QzFGQiAv
KiBKU0xhenlFdmVudExpc3RlbmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTTGF6eUV2ZW50TGlzdGVuZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzVGNDU0MTBGN0MzQjVGMDBEN0MxRkIgLyogSlNMYXp5RXZlbnRMaXN0ZW5lci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0xhenlFdmVudExpc3RlbmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBF
dmVudExpc3RlbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50TGlz
dGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM1RkJDRjEwOUJBMTQzQjAw
RTIzMEIxIC8qIEV4Y2VwdGlvbkNvZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRXhjZXB0aW9uQ29kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzY1ODNC
NDI2QUI4Q0I0MDA0RTYxRjQgLyogSURCVHJhbnNhY3Rpb25EdXJhYmlsaXR5LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBJREJUcmFuc2FjdGlvbkR1cmFiaWxpdHkuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5MzY1ODNCNjI2QUI5MTc0MDA0RTYxRjQgLyogSURCVHJhbnNh
Y3Rpb25EdXJhYmlsaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQlRy
YW5zYWN0aW9uRHVyYWJpbGl0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzZC
MjFGNDFEQkJGODMwMDA1MkUxMTcgLyogQ2FudmFzUGF0aC5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2FudmFzUGF0aC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNkREMDNBMDlDRUFDMjcwMDU2QUU4
QyAvKiBSYW5nZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUmFuZ2UuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5MzcwOTE4QzE0MTZEODZCMDA0NzczMzMgLyogdGV4dEFy
ZWFSZXNpemVDb3JuZXJAMngucG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gaW1hZ2UucG5nOyBwYXRoID0gInRleHRBcmVhUmVzaXplQ29ybmVyQDJ4
LnBuZyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzNzEwODBEMURCNzU0NTUwMDYw
NzQ0RSAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTM3MkI1MjAyNTU5RTUxRTAwRTA1OENGIC8qIEJvdW5kYXJ5UG9pbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQm91bmRhcnlQb2ludC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzNzdBQjlGMTVERUZFRUYwMDMxRkQwNCAvKiBQYWdpbmF0aW9uLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2luYXRpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTM3RkYzRDQxQTEwMTJENjAwOEVCQTMxIC8qIERpY3Rpb25hcnlMb29r
dXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGljdGlvbmFyeUxvb2t1cC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzdGRjNENjFBMTAxMzFCMDA4RUJBMzEg
LyogRGljdGlvbmFyeUxvb2t1cC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IERpY3Rpb25hcnlMb29rdXAubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzODBGNDcxMDlBMTFBQjQwMDFGREIzNCAvKiBXaWRnZXQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdpZGdldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzODBGNDcyMDlBMTFBQjQwMDFGREIzNCAvKiBXaWRnZXQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpZGdldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzgwRjQ3NzA5QTExQUNDMDAxRkRCMzQgLyogV2lkZ2V0TWFjLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdpZGdldE1hYy5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTM4MUI5NDEyM0Y5QjBFMDAwNzExOEI0IC8qIFJhZGlvTm9kZUxp
c3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFJhZGlvTm9kZUxpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5MzgyQUFCMTBEOEMzODYxMDBGMzU3QTYgLyogTm9kZVdpdGhJbmRleC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb2RlV2l0aEluZGV4Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzODJERjU3MTBBOEQ1QzkwMDkyNTY1MiAvKiBDb2xvclNwYWNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbG9yU3BhY2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM4NDMwQjIyNDc1REUzRjAwM0Y5NjE3IC8qIERpY3RhdGlv
bkNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGljdGF0aW9uQ29u
dGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5Mzg0OUMxNjI0QkUxMkU1MDA0
NDhENUEgLyogSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzODQ5QzFFMjRCRTQwNEEwMDQ0OEQ1
QSAvKiBFbXB0eVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRW1wdHlTY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzODQ5QzIxMjRCRUREODgwMDQ0OEQ1QSAvKiBKU0lEQlNlcmlhbGl6
YXRpb25HbG9iYWxPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJ
REJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzOEU2NUYwMDlGMDk4NDAwMDhBNDhFQyAvKiBKU0hUTUxFbGVtZW50V3JhcHBlckZhY3Rv
cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTSFRNTEVsZW1lbnRXcmFw
cGVyRmFjdG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0hUTUxFbGVtZW50
V3JhcHBlckZhY3RvcnkuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
OTM4RTY1RjYwOUYwOTg1RDAwOEE0OEVDIC8qIEpTSFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNIVE1MRWxlbWVudFdy
YXBwZXJGYWN0b3J5LmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRWxl
bWVudFdyYXBwZXJGYWN0b3J5LmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJOTM4RTY2MjUwOUYwOTk1NjAwOEE0OEVDIC8qIEhUTUxDYW52YXNFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MQ2FudmFzRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzOEU2NjVGMDlGMDlCODEwMDhBNDhFQyAvKiBKU0hUTUxDYW52
YXNFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TENhbnZhc0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzhFNjY2
MTA5RjA5Qjg3MDA4QTQ4RUMgLyogSlNIVE1MQ2FudmFzRWxlbWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxDYW52YXNFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzOTFBOTkwMTYyNzQ2Q0IwMDI5NzMzMCAvKiBTY3JvbGxpbmdDb29y
ZGluYXRvck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxpbmdD
b29yZGluYXRvck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzkxQTk5QTE2
MjlENkZGMDAyOTczMzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzkxQTk5QjE2MjlENzAwMDAyOTcz
MzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTM5MjE0NjgxOEE2RDc5MTAwMEVFNjg4IC8qIFRleHRJdGVyYXRvckJl
aGF2aW9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRJdGVyYXRvckJl
aGF2aW9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzOTIyNjJFMTAzMjEwODQw
MDZFN0Q1RCAvKiBKU0NTU1J1bGVMaXN0Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTQ1NTUnVsZUxpc3RDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5MzkyRjE0MTBBRDE4NUY0MDA2OTFCRDQgLyogUmVuZGVyQ291bnRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyQ291bnRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzkyRjE0MzBBRDE4NUZFMDA2OTFCRDQgLyogUmVu
ZGVyQ291bnRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyQ291bnRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzOTJGMTRCMEFE
MTg2MUIwMDY5MUJENCAvKiBDb3VudGVyTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ291bnRlck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM5
MkYxNEYwQUQxODYyMzAwNjkxQkQ0IC8qIENvdW50ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb3VudGVyTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzOTNFNUZEMTUxQTk5RjIwMDA2NkYwNiAvKiBDU1NJbWFnZVNldFZhbHVl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0ltYWdlU2V0VmFs
dWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzkzRTVGRTE1MUE5OUYyMDAw
NjZGMDYgLyogQ1NTSW1hZ2VTZXRWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NJbWFnZVNldFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
OTU1QTQxMDNENzI5MzIwMDg2MzVDRSAvKiBSZW5kZXJUcmVlQXNUZXh0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVHJlZUFzVGV4dC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsK
KwkJOTM5NTVBNDIwM0Q3MjkzMjAwODYzNUNFIC8qIFJlbmRlclRyZWVBc1RleHQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGluZGVudFdpZHRoID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJU
cmVlQXNUZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2Vz
VGFicyA9IDA7IH07CisJCTkzOTg4NUMxMDhCN0UzRDEwMEU3MDdDNCAvKiBFdmVudE5hbWVzLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50
V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEV2ZW50TmFtZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVz
ZXNUYWJzID0gMDsgfTsKKwkJOTM5ODg1QzIwOEI3RTNEMTAwRTcwN0M0IC8qIEV2ZW50TmFtZXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50
V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZl
bnROYW1lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJz
ID0gMDsgfTsKKwkJOTM5QjAyRUMwRUEyREJDNDAwQzU0NTcwIC8qIFdpZHRoSXRlcmF0b3IuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2lkdGhJdGVyYXRvci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzOUIwMkVEMEVBMkRCQzQwMEM1NDU3MCAv
KiBXaWR0aEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdpZHRo
SXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM5QzBEMjEyNTY0OEMz
OTAwQjMyMTFCIC8qIFNwZWVjaFJlY29nbml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoUmVj
b2duaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5MzlDMEQyMzI1NjQ4QzRF
MDBCMzIxMUIgLyogU3BlZWNoUmVjb2duaXplci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTcGVl
Y2hSZWNvZ25pemVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTM5QzBEMjgy
NTY0RTdGMjAwQjMyMTFCIC8qIE1lZGlhVXRpbGl0aWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhVXRpbGl0aWVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTM5QzBEMjkyNTY0RTdGMjAwQjMyMTFCIC8qIE1lZGlhVXRpbGl0aWVzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhVXRpbGl0aWVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQTA0ODFCMjU0OTU0RTQwMDBBQzQ2MiAvKiBTcGVl
Y2hSZWNvZ25pdGlvblJlc3VsdERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoUmVjb2duaXRp
b25SZXN1bHREYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQTA0ODFEMjU0
OTU0RTUwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU3BlZWNoUmVjb2duaXRpb25Db25uZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzQTA0ODFGMjU0OTU0RTYwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvblJl
cXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQTA0ODIwMjU0OTU0RTYwMDBBQzQ2MiAvKiBTcGVl
Y2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNwZWVjaFJlY29nbml0aW9uQ29ubmVjdGlvbkNsaWVudElkZW50aWZpZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNBMDQ4MjEyNTQ5NTRFODAwMEFDNDYyIC8qIFNwZWVjaFJl
Y29nbml0aW9uRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25FcnJvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0EwNDgyMjI1NDk1NEU4MDAwQUM0NjIg
LyogU3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwZWVj
aFJlY29nbml0aW9uUmVxdWVzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkz
QTA0ODI0MjU0OTU0RTkwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGll
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoUmVjb2duaXRpb25Db25uZWN0aW9uQ2xpZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQTA0ODI2MjU0OTU1MDAwMDBBQzQ2MiAv
KiBTcGVlY2hSZWNvZ25pdGlvblByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFJlY29n
bml0aW9uUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNBMzhCNEEw
RDBFNTgwODAwNjg3MkMyIC8qIEVkaXRvckNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRWRpdG9yQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzQTgwNjExMUUwM0I1MUMwMDhBMUYyNiAvKiBEb3VibGVSYW5nZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb3VibGVSYW5nZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5M0E4MDYxMjFFMDNCNTFDMDA4QTFGMjYgLyogRG91YmxlUmFuZ2Uu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERvdWJsZVJhbmdlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTNBODA2MTMxRTAzQjUxQzAwOEExRjI2IC8qIExvbmdSYW5nZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb25nUmFuZ2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNBODA2MTQxRTAzQjUxQzAwOEExRjI2IC8qIExvbmdSYW5n
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTG9uZ1JhbmdlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTNBODA2MTkxRTAzQjU4NTAwOEExRjI2IC8qIEpTRG91YmxlUmFu
Z2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEb3VibGVSYW5n
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQTgwNjFBMUUwM0I1ODUwMDhB
MUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRG91YmxlUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNBODA2MUIx
RTAzQjU4NTAwOEExRjI2IC8qIEpTTG9uZ1JhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTTG9uZ1JhbmdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTNBODA2MUMxRTAzQjU4NTAwOEExRjI2IC8qIEpTTG9uZ1JhbmdlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTG9uZ1JhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzQjBBNjQ0MjZDREM1QjYwMEFBMjFFNCAvKiBQZXJtaXNzaW9uU3RhdGUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcm1pc3Npb25TdGF0ZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQjBBNjQ1MjZDREM1QjYwMEFBMjFFNCAvKiBQZXJtaXNz
aW9uRGVzY3JpcHRvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGVybWlzc2lvbkRlc2Ny
aXB0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0IwQTY0NjI2Q0RDNUI3
MDBBQTIxRTQgLyogUGVybWlzc2lvbk5hbWUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBl
cm1pc3Npb25OYW1lLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCMEE2NDcy
NkNEQzVCNzAwQUEyMUU0IC8qIE5hdmlnYXRvcitQZXJtaXNzaW9ucy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gIk5hdmlnYXRvcitQZXJtaXNzaW9ucy5pZGwiOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5M0IwQTY0ODI2Q0RDNUI3MDBBQTIxRTQgLyogUGVybWlzc2lvbnMuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcm1pc3Npb25zLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTNCMEE2NDkyNkNEQzVCODAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0
dXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcm1pc3Npb25TdGF0dXMuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0IwQTY0QTI2Q0REMTNFMDBBQTIxRTQgLyogTmF2
aWdhdG9yUGVybWlzc2lvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2
aWdhdG9yUGVybWlzc2lvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCMEE2
NEIyNkNERDEzRTAwQUEyMUU0IC8qIFBlcm1pc3Npb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBlcm1pc3Npb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTkzQjBBNjRDMjZDREQxM0UwMEFBMjFFNCAvKiBOYXZpZ2F0b3JQZXJtaXNzaW9ucy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0b3JQZXJtaXNzaW9ucy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQjBBNjREMjZDREQxM0YwMEFBMjFF
NCAvKiBQZXJtaXNzaW9uU3RhdHVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBlcm1pc3Npb25TdGF0dXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCMEE2
NEUyNkNERDEzRjAwQUEyMUU0IC8qIFBlcm1pc3Npb25EZXNjcmlwdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcm1pc3Npb25EZXNjcmlwdG9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzQjBBNjRGMjZDREQxNDAwMEFBMjFFNCAvKiBQZXJtaXNzaW9u
U3RhdHVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcm1pc3Np
b25TdGF0dXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0IwQTY1MDI2Q0RE
MTQwMDBBQTIxRTQgLyogUGVybWlzc2lvbk5hbWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUGVybWlzc2lvbk5hbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNCMEE2NTEyNkNERDE0MDAwQUEyMUU0IC8qIFBlcm1pc3Npb25zLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcm1pc3Npb25zLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTNCMEE2NTIyNkNERDE0MTAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQZXJtaXNzaW9uU3RhdGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCMEE2NjkyNkQ0NEI3RjAwQUEyMUU0IC8q
IFBlcm1pc3Npb25Db250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcm1pc3Npb25Db250cm9s
bGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQjBBNjZGMjZENEI1MjkwMEFB
MjFFNCAvKiBQZXJtaXNzaW9uT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVybWlzc2lvbk9i
c2VydmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQjJEODE1MEY5OTIwRDIw
MDZBRTZCMiAvKiBTdWRkZW5UZXJtaW5hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTdWRkZW5UZXJtaW5hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5M0IyRDgxNzBGOTkyMEVFMDA2QUU2QjIgLyogU3VkZGVuVGVybWluYXRpb24ubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTdWRkZW5UZXJtaW5hdGlvbi5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCMzhFQjgyNTgyMTg5OTAwMTk4RTYzIC8q
IFNwZWVjaFJlY29nbml6ZXJDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFNwZWVjaFJlY29nbml6ZXJDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTNCMzhFQjkyNTgyMTkzQTAwMTk4RTYzIC8qIFdlYlNwZWVjaFJlY29nbml6ZXJU
YXNrTW9jay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlNw
ZWVjaFJlY29nbml6ZXJUYXNrTW9jay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNCMzhFQkEyNTgyMTkzQjAwMTk4RTYzIC8qIFdlYlNwZWVjaFJlY29nbml6ZXJUYXNrLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlNwZWVjaFJlY29nbml6ZXJUYXNrLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQjM4RUJCMjU4MjE5M0QwMDE5OEU2MyAv
KiBXZWJTcGVlY2hSZWNvZ25pemVyVGFza01vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV2ViU3BlZWNoUmVjb2duaXplclRhc2tNb2NrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzQjM4RUJDMjU4MjE5M0UwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNvZ25p
emVyVGFzay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlNw
ZWVjaFJlY29nbml6ZXJUYXNrLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0I2
QTBFNTBCMEJDQTVDMDBGNTAyN0EgLyogQ29udGV4dE1lbnUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENvbnRleHRNZW51Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTkzQjcwRDQ4MDlFQjBDN0MwMDlEODQ2OCAvKiBKU0RPTUJpbmRpbmcuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQmluZGluZy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5M0I3MEQ0RDA5RUIwQzdDMDA5RDg0NjggLyogSlNFdmVudExpc3RlbmVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50TGlzdGVu
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0I3MEQ0RTA5RUIwQzdDMDA5
RDg0NjggLyogSlNFdmVudExpc3RlbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0V2ZW50TGlzdGVuZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNC
NzBENEYwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQbHVnaW5FbGVtZW50RnVuY3Rp
b25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCNzBENTAwOUVCMEM3QzAw
OUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzQjcwRDUzMDlFQjBDN0MwMDlEODQ2OCAvKiBTY3JpcHRDb250cm9s
bGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRDb250
cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNCNzBENTQwOUVCMEM3
QzAwOUQ4NDY4IC8qIFNjcmlwdENvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNjcmlwdENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTNCNzdBMzcwQURENzkyNTAwRUE0QjgxIC8qIEZyYW1lTG9hZGVyVHlwZXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVMb2FkZXJUeXBlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0MwOUE1MjBCMDY0REIzMDA1QUJENEQgLyogRXZlbnRIYW5k
bGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50SGFuZGxlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0MwOUE3RTBCMDY0RUVGMDA1QUJENEQgLyog
RXZlbnRIYW5kbGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gRXZlbnRIYW5kbGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0Mw
OUE4MDBCMDY0RjAwMDA1QUJENEQgLyogRXZlbnRIYW5kbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV2ZW50SGFuZGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzQzA5Qzg1MEIwNjU3QUEwMDVBQkQ0RCAvKiBTY3JvbGxUeXBlcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxUeXBlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0MzOEJGQzE2NDQ3M0M3MDAwOTFFQjIgLyogU2Nyb2xsaW5n
U3RhdGVGaXhlZE5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5M0MzOEJGRDE2NDQ3M0M3MDAwOTFFQjIgLyogU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNDNDQxRkYwRjgxM0FFMTAwQzFBNjM0
IC8qIENvbGxlY3Rpb25UeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENv
bGxlY3Rpb25UeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQzRBNDEzMTYy
OURGNUEwMEMzRUI2RSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGlu
Z05vZGVNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNDNEE0MTQxNjI5REY1
QTAwQzNFQjZFIC8qIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0M0RjZFOTEx
MDhGOUE1MDA5OUQwREIgLyogQWNjZXNzaWJpbGl0eVNjcm9sbGJhci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5U2Nyb2xsYmFyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzQ0E0Qzk5MDlERjkzRkEwMERGODY3NyAvKiBodG1sLmNzcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBodG1sLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTNDQTRDOUEwOURGOTNGQTAwREY4Njc3IC8qIG1ha2UtY3NzLWZpbGUtYXJyYXlzLnBs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucGVybDsgcGF0aCA9ICJtYWtlLWNzcy1maWxlLWFycmF5
cy5wbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzQ0E0QzlCMDlERjkzRkEwMERG
ODY3NyAvKiBtYWtlcHJvcC5wbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBtYWtlcHJvcC5wbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNDQTRDOUQwOURGOTNGQTAwREY4Njc3IC8q
IG1ha2V2YWx1ZXMucGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gbWFrZXZhbHVlcy5wbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNDQTRDOUYwOURGOTNGQTAwREY4Njc3IC8qIHF1
aXJrcy5jc3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gcXVpcmtzLmNzczsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTNDQTRDQTIwOURGOTNGQTAwREY4Njc3IC8qIHN2Zy5jc3MgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gc3ZnLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTNDQ0YwMjYwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdGlvbkFjdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5M0NDRjA1RjBBRjZDQTc2MDAwMThFODkgLyogTmF2aWdhdGlv
bkFjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0
aW9uQWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNEMDUwMkUyNTNB
MTQ4QTAwMkEzMDcyIC8qIEFic3RyYWN0UmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3RS
YW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0QwNTAzMDI1M0ExNDhDMDAy
QTMwNzIgLyogQWJzdHJhY3RSYW5nZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQWJzdHJhY3RSYW5nZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRDA1MDMxMjUzQTE0OEMwMDJBMzA3MiAvKiBBYnN0
cmFjdFJhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFic3RyYWN0UmFuZ2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0QxOTYzMDFENkNBQjc2MDBGQzdFNDcgLyogRXhj
ZXB0aW9uT3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXhjZXB0aW9uT3Iu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNEMTk2MzIxRDZDQUI4MjAwRkM3RTQ3
IC8qIEV4Y2VwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNlcHRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNENkI3NkQyNTRCOEUxQjAwNThE
RDNBIC8qIFNwZWVjaFJlY29nbml0aW9uVXBkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFJl
Y29nbml0aW9uVXBkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRDZCNzZF
MjU0QjhFMUIwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlvblVwZGF0ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTcGVlY2hSZWNvZ25pdGlvblVwZGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTkzRDZCNzZGMjU0QjkwMkQwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlv
blJlcXVlc3RJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVjaFJlY29nbml0aW9uUmVxdWVzdElu
Zm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNENkI3QTYyNTUxRDNFRDAwNThE
RDNBIC8qIER1bW15U3BlZWNoUmVjb2duaXRpb25Qcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
dW1teVNwZWVjaFJlY29nbml0aW9uUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTNEOUQ1M0IwREEyN0UxODAwNzcyMTZDIC8qIFJhbmdlQm91bmRhcnlQb2ludC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYW5nZUJvdW5kYXJ5UG9pbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFMjI3REIwQUY1ODlBRDAwRDQ4MzI0IC8qIERv
Y3VtZW50TG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERv
Y3VtZW50TG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFMjI3REQw
QUY1ODlBRDAwRDQ4MzI0IC8qIE5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFMjI3REUwQUY1ODlBRDAwRDQ4
MzI0IC8qIFJlc291cmNlTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFJlc291cmNlTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNFMjI3REYwQUY1ODlBRDAwRDQ4MzI0IC8qIFN1YnJlc291cmNlTG9hZGVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN1YnJlc291cmNlTG9hZGVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFMjQxRkUwQjJCNEU0MDAwQzczMkExIC8qIEhU
TUxGcmFtZU93bmVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBI
VE1MRnJhbWVPd25lckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNF
MjQyNUUwQjJCNTA5NTAwQzczMkExIC8qIEhUTUxGcmFtZU93bmVyRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRnJhbWVPd25lckVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0UyQTMwNDEyM0U5REMwMDA5RkUxMkEg
LyogSFRNTFBhcnNlcklkaW9tcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MUGFyc2VySWRpb21zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNFMkEzMDUxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFBhcnNlcklkaW9tcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5M0U1QjI1NDI0NTM2QjFFMDA1QzUyRDAgLyogVVJMRGVjb21wb3Np
dGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVUkxEZWNvbXBv
c2l0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFNUIyNjMyNDU1RTk2
RjAwNUM1MkQwIC8qIEF0dHJpYnV0ZWRTdHJpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQXR0cmlidXRlZFN0cmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5M0VCMzU1RTA5RTM3RkQ2MDBGNDM3OTkgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb3VzZUV2ZW50V2l0
aEhpdFRlc3RSZXN1bHRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFRUMx
RTUwOUMyODc3NzAwQzUxNUQxIC8qIEF0dHIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF0
dHIuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0VFQzFFNjA5QzI4Nzc3MDBD
NTE1RDEgLyogQ2hhcmFjdGVyRGF0YS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2hhcmFj
dGVyRGF0YS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRUVDMUU4MDlDMjg3
NzcwMEM1MTVEMSAvKiBEb2N1bWVudFR5cGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERv
Y3VtZW50VHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRUVDMUU5MDlD
Mjg3NzcwMEM1MTVEMSAvKiBET01JbXBsZW1lbnRhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gRE9NSW1wbGVtZW50YXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5M0VFQzFFQTA5QzI4Nzc3MDBDNTE1RDEgLyogRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRUVD
MUYzMDlDMjg3NzcwMEM1MTVEMSAvKiBNdXRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBNdXRhdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTNFRUMxRjUwOUMyODc3NzAwQzUxNUQxIC8qIFByb2Nlc3NpbmdJbnN0cnVjdGlvbi5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gUHJvY2Vzc2luZ0luc3RydWN0aW9uLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNFRUMxRjYwOUMyODc3NzAwQzUxNUQxIC8qIFRleHQuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFRleHQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5M0VFQzFGNzA5QzI4Nzc3MDBDNTE1RDEgLyogV2hlZWxFdmVudC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gV2hlZWxFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTkzRUY3RDU0MTk1NEU5OEYwMERGQjcxRCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxpbmdTdGF0ZU5v
ZGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRjE5QjE5MDgyNDVFNTkwMDFF
OUFCQyAvKiBJbmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGluZGVudFdp
ZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnhtbDsgcGF0aCA9IEluZm8u
cGxpc3Q7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAw
OyB9OworCQk5M0YxOUIxQTA4MjQ1RTVBMDAxRTlBQkMgLyogV2ViQ29yZS5mcmFtZXdvcmsgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHdyYXBwZXIuZnJh
bWV3b3JrOyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSBXZWJDb3JlLmZyYW1ld29yazsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJOTNGMUQzMUEwNTU4Q0M1QzAwODIx
QkMwIC8qIGxpYmljdWNvcmUuZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSAiY29tcGlsZWQubWFjaC1vLmR5bGliIjsgbmFtZSA9IGxpYmljdWNv
cmUuZHlsaWI7IHBhdGggPSAvdXNyL2xpYi9saWJpY3Vjb3JlLmR5bGliOyBzb3VyY2VUcmVlID0g
IjxhYnNvbHV0ZT4iOyB9OworCQk5M0YxRDVCNzEyRDUzMkM0MDA4MzJCRUMgLyogV2ViR0xMb3Nl
Q29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTExv
c2VDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNGMUQ1QjgxMkQ1
MzJDNDAwODMyQkVDIC8qIFdlYkdMTG9zZUNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViR0xMb3NlQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5M0YxRDVCOTEyRDUzMkM0MDA4MzJCRUMgLyogV2ViR0xMb3NlQ29udGV4dC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xMb3NlQ29udGV4dC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTkzRjFENUJFMTJENTMzNTYwMDgzMkJFQyAvKiBKU1dlYkdMTG9zZUNv
bnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJHTExv
c2VDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNGMUQ1QkYxMkQ1
MzM1NjAwODMyQkVDIC8qIEpTV2ViR0xMb3NlQ29udGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1dlYkdMTG9zZUNvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTNGMkNDOTEyNDI3RkI5QTAwNTg1MUQ4IC8qIENoYXJhY3RlclJhbmdlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENoYXJhY3RlclJhbmdlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRjZCODFCMjU2NzlGNkYwMEEwODQ4OCAvKiBTcGVlY2hS
ZWNvZ25pdGlvbkNhcHR1cmVTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU3BlZWNoUmVjb2duaXRpb25DYXB0dXJlU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzRjZCODFDMjU2NzlGNzAwMEEwODQ4OCAvKiBTcGVlY2hSZWNvZ25pdGlvbkNh
cHR1cmVTb3VyY2VJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWVj
aFJlY29nbml0aW9uQ2FwdHVyZVNvdXJjZUltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTNGNkI4MUQyNTY3OUY3MDAwQTA4NDg4IC8qIFNwZWVjaFJlY29nbml0aW9uQ2FwdHVy
ZVNvdXJjZUltcGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3Bl
ZWNoUmVjb2duaXRpb25DYXB0dXJlU291cmNlSW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTkzRjZCODFFMjU2NzlGNzEwMEEwODQ4OCAvKiBTcGVlY2hSZWNvZ25pdGlvbkNh
cHR1cmVTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3Bl
ZWNoUmVjb2duaXRpb25DYXB0dXJlU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTNGNkYxRUExMjdGNzBCMTAwNTVDQjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMQ29udGV4dEV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTNGNkYxRUIxMjdGNzBCMTAwNTVDQjA2
IC8qIFdlYkdMQ29udGV4dEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkdMQ29udGV4dEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRjZG
MUVDMTI3RjcwQjEwMDU1Q0IwNiAvKiBXZWJHTENvbnRleHRFdmVudC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gV2ViR0xDb250ZXh0RXZlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5M0Y4QjMwNTBBMzAwRkUxMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvci5wbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQuc2NyaXB0LnBlcmw7IG5hbWUgPSBDb2RlR2VuZXJhdG9yLnBtOyBwYXRoID0g
c2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
M0Y4QjMwNjBBMzAwRkVBMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvckpTLnBtICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dC5zY3JpcHQucGVybDsgbmFtZSA9IENvZGVHZW5lcmF0b3JKUy5wbTsgcGF0aCA9IHNjcmlw
dHMvQ29kZUdlbmVyYXRvckpTLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB3cmFwc0xpbmVz
ID0gMDsgfTsKKwkJOTNGOEIzMDcwQTMwMEZFQTAwRjYxQUI4IC8qIGdlbmVyYXRlLWJpbmRpbmdz
LnBsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucGVybDsgbmFtZSA9ICJnZW5lcmF0ZS1iaW5kaW5n
cy5wbCI7IHBhdGggPSAic2NyaXB0cy9nZW5lcmF0ZS1iaW5kaW5ncy5wbCI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzRjkyNTQxMEY3RUY1QjgwMDdFMzdDOSAvKiBSYWRpb0J1dHRv
bkdyb3Vwcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYWRpb0J1dHRvbkdy
b3Vwcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0Y5MjU0MjBGN0VGNUI4MDA3
RTM3QzkgLyogUmFkaW9CdXR0b25Hcm91cHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmFkaW9CdXR0b25Hcm91cHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5M0Y5QjZERTBCQTBGQjcyMDA4NTQwNjQgLyogSlNDb21tZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ29tbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTkzRjlCNkRGMEJBMEZCNzIwMDg1NDA2NCAvKiBKU0NvbW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDb21tZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRjlCNzlFMEJBNjAzMjYwMDg1NDA2NCAvKiBKU0NEQVRB
U2VjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NEQVRB
U2VjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzRjlCNzlGMEJBNjAz
MjYwMDg1NDA2NCAvKiBKU0NEQVRBU2VjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0NEQVRBU2VjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
M0ZDREI0OTI2NDQ1NUQ2MDA0NkREN0QgLyogU2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0ZDREI0QjI2NDcwREQxMDA0NkREN0Qg
LyogU1ZHUHJvcGVydHlUcmFpdHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUHJvcGVydHlU
cmFpdHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5M0ZEQUZDOTBCMTEzMDc0
MDBFMjc0NkYgLyogRWRpdG9ySW5zZXJ0QWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBFZGl0b3JJbnNlcnRBY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTQxODI3ODgxRDhCMjQyMjAwNDkyNzY0IC8qIFN0eWxlQ29sb3IuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVDb2xvci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk0MTgyNzg5MUQ4QjI0MjIwMDQ5Mjc2NCAvKiBTdHlsZUNvbG9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQ29sb3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQxODI3OEQxRDhDQUU5NTAwNDkyNzY0IC8qIENTU1Bl
bmRpbmdTdWJzdGl0dXRpb25WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NQZW5kaW5nU3Vic3RpdHV0aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTQ0NENCQ0YxRDg2MEM3NDAwNzNBMDc0IC8qIFNpemVzQ2FsY1BhcnNlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTaXplc0NhbGNQYXJzZXIuaDsgcGF0aCA9IHBh
cnNlci9TaXplc0NhbGNQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ0
NENCRDAxRDg2MEM3NDAwNzNBMDc0IC8qIFNpemVzQ2FsY1BhcnNlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTaXplc0NhbGNQYXJzZXIuY3BwOyBwYXRoID0gcGFy
c2VyL1NpemVzQ2FsY1BhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0
NDRDQkQxMUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0F0dHJpYnV0ZVBhcnNlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTaXplc0F0dHJpYnV0ZVBhcnNlci5oOyBwYXRoID0g
cGFyc2VyL1NpemVzQXR0cmlidXRlUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk0NDRDQkQyMUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0F0dHJpYnV0ZVBhcnNlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBTaXplc0F0dHJpYnV0ZVBhcnNl
ci5jcHA7IHBhdGggPSBwYXJzZXIvU2l6ZXNBdHRyaWJ1dGVQYXJzZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NDQ0Q0JENzFEODg0ODJBMDA3M0EwNzQgLyogQ1NTVmFyaWFi
bGVQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTVmFyaWFibGVQ
YXJzZXIuaDsgcGF0aCA9IHBhcnNlci9DU1NWYXJpYWJsZVBhcnNlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NDQ0Q0JEODFEODg0ODJBMDA3M0EwNzQgLyogQ1NTVmFyaWFibGVQ
YXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ1NTVmFyaWFi
bGVQYXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL0NTU1ZhcmlhYmxlUGFyc2VyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ0NENCREIxRDg4NjE1ODAwNzNBMDc0IC8qIENTU1Zh
cmlhYmxlUmVmZXJlbmNlVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q1NTVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NDQ0Q0JEQzFEODg2MTU4MDA3M0EwNzQgLyogQ1NTVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NWYXJpYWJsZVJlZmVy
ZW5jZVZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ0NENCREQxRDg4
NjE1ODAwNzNBMDc0IC8qIENTU1ZhcmlhYmxlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDU1NWYXJpYWJsZURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTQ0NENCREUxRDg4NjE1ODAwNzNBMDc0IC8qIENTU1ZhcmlhYmxlRGF0YS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NWYXJpYWJsZURhdGEuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDQ3NkJEODFERkNBNEE3MDA2OTBFMjMgLyogQ1NT
RGVmZXJyZWRQYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
Q1NTRGVmZXJyZWRQYXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL0NTU0RlZmVycmVkUGFyc2VyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ0NzZCRDkxREZDQTRBNzAwNjkwRTIz
IC8qIENTU0RlZmVycmVkUGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IENTU0RlZmVycmVkUGFyc2VyLmg7IHBhdGggPSBwYXJzZXIvQ1NTRGVmZXJyZWRQYXJzZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ2RDM3MjgxRDZDQjI4QjAwNzcwODRGIC8q
IENTU1BhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDU1NQ
YXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL0NTU1BhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk0NkQzNzI5MUQ2Q0IyOEIwMDc3MDg0RiAvKiBDU1NQYXJzZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTUGFyc2VyLmg7IHBhdGggPSBwYXJzZXIv
Q1NTUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzJBMUQ2Q0Iy
OEIwMDc3MDg0RiAvKiBDU1NQYXJzZXJNb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IENTU1BhcnNlck1vZGUuaDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJNb2RlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzJCMUQ2Q0IyOEIwMDc3MDg0RiAvKiBD
U1NQYXJzZXJTZWxlY3Rvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBDU1NQYXJzZXJTZWxlY3Rvci5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTUGFyc2VyU2VsZWN0b3Iu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDZEMzcyQzFENkNCMjhCMDA3NzA4
NEYgLyogQ1NTUGFyc2VyU2VsZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gQ1NTUGFyc2VyU2VsZWN0b3IuaDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJTZWxlY3Rvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDZEMzczNDFENkNERjk4MDA3NzA4NEYg
LyogQ1NTVG9rZW5pemVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IENTU1Rva2VuaXplci5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTVG9rZW5pemVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ2RDM3MzUxRDZDREY5ODAwNzcwODRGIC8qIENTU1Rv
a2VuaXplcklucHV0U3RyZWFtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IENTU1Rva2VuaXplcklucHV0U3RyZWFtLmNwcDsgcGF0aCA9IHBhcnNlci9DU1NUb2tlbml6
ZXJJbnB1dFN0cmVhbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzM3
MUQ2Q0RGOTgwMDc3MDg0RiAvKiBDU1NUb2tlbml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gQ1NTVG9rZW5pemVyLmg7IHBhdGggPSBwYXJzZXIvQ1NTVG9rZW5pemVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzM4MUQ2Q0RGOTgwMDc3MDg0RiAv
KiBDU1NUb2tlbml6ZXJJbnB1dFN0cmVhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5h
bWUgPSBDU1NUb2tlbml6ZXJJbnB1dFN0cmVhbS5oOyBwYXRoID0gcGFyc2VyL0NTU1Rva2VuaXpl
cklucHV0U3RyZWFtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzNEMUQ2
Q0UzMUEwMDc3MDg0RiAvKiBDU1NQYXJzZXJUb2tlbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBDU1NQYXJzZXJUb2tlbi5oOyBwYXRoID0gcGFyc2VyL0NTU1BhcnNlclRva2Vu
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzNFMUQ2Q0UzMUEwMDc3MDg0
RiAvKiBDU1NQYXJzZXJUb2tlbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBDU1NQYXJzZXJUb2tlbi5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTUGFyc2VyVG9rZW4uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDZEMzc0MTFENkNGNjMyMDA3NzA4NEYg
LyogQ1NTUHJvcGVydHlQYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gQ1NTUHJvcGVydHlQYXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ2RDM3NDExRDZEMDYzMjAw
NzcwODRGIC8qIENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDU1NQcm9wZXJ0eVBhcnNlcldvcmtlclNhZmUuY3BwOyBw
YXRoID0gcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzQyMUQ2Q0Y2MzIwMDc3MDg0RiAvKiBDU1NQcm9wZXJ0
eVBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDU1NQcm9wZXJ0eVBh
cnNlci5oOyBwYXRoID0gcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk0NkQzNzQyMUQ2RDA2MzIwMDc3MDg0RiAvKiBDU1NQcm9wZXJ0eVBh
cnNlcldvcmtlclNhZmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTUHJv
cGVydHlQYXJzZXJXb3JrZXJTYWZlLmg7IHBhdGggPSBwYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJX
b3JrZXJTYWZlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzQzMUQ2Q0Y3
ODgwMDc3MDg0RiAvKiBDU1NQYXJzZXJJZGlvbXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gQ1NTUGFyc2VySWRpb21zLmg7IHBhdGggPSBwYXJzZXIvQ1NTUGFyc2VySWRpb21z
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0NkQzNzQ3MUQ2RDA2MEMwMDc3MDg0
RiAvKiBDU1NNYXJrdXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q1NTTWFya3VwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ2RDM3NDgxRDZE
MDYwQzAwNzcwODRGIC8qIENTU01hcmt1cC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NNYXJrdXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ2RDM3NEIx
RDZEMDdGNTAwNzcwODRGIC8qIENTU1BhcnNlclRva2VuUmFuZ2UuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ1NTUGFyc2VyVG9rZW5SYW5nZS5jcHA7IHBhdGggPSBw
YXJzZXIvQ1NTUGFyc2VyVG9rZW5SYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk0NkQzNzRDMUQ2RDA3RjUwMDc3MDg0RiAvKiBDU1NQYXJzZXJUb2tlblJhbmdlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENTU1BhcnNlclRva2VuUmFuZ2UuaDsgcGF0
aCA9IHBhcnNlci9DU1NQYXJzZXJUb2tlblJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk0Nzk0OTE4MUUwMkY2REUwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTUNvdW50
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEZXByZWNhdGVk
Q1NTT01Db3VudGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MTkx
RTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NQ291bnRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RlcHJlY2F0ZWRDU1NPTUNvdW50ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MUExRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVw
cmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0Nzk0OTFCMUUwMkY2REUwMDAxOEQ4NSAvKiBKU0RlcHJl
Y2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTQ3OTQ5MUMxRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09N
UmVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RlcHJlY2F0
ZWRDU1NPTVJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDc5NDkxRDFF
MDJGNkRFMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01SZWN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRGVwcmVjYXRlZENTU09NUmVjdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NDc5NDkxRTFFMDJGNkRFMDAwMThEODUgLyogSlNEZXByZWNhdGVk
Q1NTT01SR0JDb2xvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0RlcHJlY2F0ZWRDU1NPTVJHQkNvbG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTQ3OTQ5MUYxRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NUkdCQ29sb3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEZXByZWNhdGVkQ1NTT01SR0JD
b2xvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDc5NDkyMDFFMDJGNkRFMDAw
MThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MjExRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRl
ZENTU09NVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEZXByZWNh
dGVkQ1NTT01WYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDc5NDkyMjFF
MDJGOTBCMDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NVmFsdWUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVwcmVjYXRlZENTU09NVmFsdWUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5NDc5NDkyMzFFMDJGOTBCMDAwMThEODUgLyogRGVwcmVj
YXRlZENTU09NVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVwcmVj
YXRlZENTU09NVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MjYx
RTAzMTMyMDAwMDE4RDg1IC8qIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0Nzk0OTI3MUUwMzEzMjAwMDAxOEQ4
NSAvKiBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk0Nzk0OTI4MUUwMzJBRTkwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01SZWN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlcHJlY2F0ZWRDU1NPTVJlY3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MjkxRTAzMkQ1ODAwMDE4RDg1
IC8qIERlcHJlY2F0ZWRDU1NPTVJHQkNvbG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERlcHJlY2F0ZWRDU1NPTVJHQkNvbG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk0Nzk0OTJBMUUwMzJFREIwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01Db3VudGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlcHJlY2F0ZWRDU1NPTUNvdW50
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MkIxRTAzM0IyODAwMDE4
RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5MkMxRTAzM0IyODAwMDE4RDg1IC8qIEpTRGVw
cmVjYXRlZENTU09NVmFsdWVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk0Nzk0OTJEMUUwNDU3OEQwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVwcmVjYXRlZENTU09N
VmFsdWVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ3OTQ5M0IxRTA0
NUNFMTAwMDE4RDg1IC8qIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZh
bHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ5M0I2QjYxRDc0QjM5NTAw
ODhFNzgwIC8qIE1lZGlhUXVlcnlCbG9ja1dhdGNoZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gTWVkaWFRdWVyeUJsb2NrV2F0Y2hlci5jcHA7IHBhdGggPSBwYXJz
ZXIvTWVkaWFRdWVyeUJsb2NrV2F0Y2hlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk0OTNCNkI3MUQ3NEIzOTUwMDg4RTc4MCAvKiBNZWRpYVF1ZXJ5QmxvY2tXYXRjaGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1lZGlhUXVlcnlCbG9ja1dhdGNoZXIu
aDsgcGF0aCA9IHBhcnNlci9NZWRpYVF1ZXJ5QmxvY2tXYXRjaGVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk0OTNCNkI4MUQ3NEIzOTUwMDg4RTc4MCAvKiBNZWRpYVF1ZXJ5UGFy
c2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IE1lZGlhUXVlcnlQ
YXJzZXIuY3BwOyBwYXRoID0gcGFyc2VyL01lZGlhUXVlcnlQYXJzZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NDkzQjZCOTFENzRCMzk1MDA4OEU3ODAgLyogTWVkaWFRdWVy
eVBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBNZWRpYVF1ZXJ5UGFy
c2VyLmg7IHBhdGggPSBwYXJzZXIvTWVkaWFRdWVyeVBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5NDlDNzZGRTFENkUxRDhDMDBDMERFNEYgLyogQ1NTUGFyc2VyRmFzdFBh
dGhzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENTU1BhcnNlckZh
c3RQYXRocy5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ5Qzc2RkYxRDZFMUQ4QzAwQzBERTRGIC8qIENTU1Bh
cnNlckZhc3RQYXRocy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDU1NQYXJz
ZXJGYXN0UGF0aHMuaDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTQ5Qzc3MDIxRDZFMzkzNTAwQzBERTRGIC8qIENTU1By
b3BlcnR5UGFyc2VySGVscGVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOyBwYXRoID0gcGFyc2VyL0NTU1Byb3Bl
cnR5UGFyc2VySGVscGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0OUM3
NzAzMUQ2RTM5MzUwMEMwREU0RiAvKiBDU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg7IHBh
dGggPSBwYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk0OUM3NzA2MUQ2RTQ4RUQwMEMwREU0RiAvKiBDU1NQYXJzZXJPYnNlcnZl
cldyYXBwZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ1NTUGFy
c2VyT2JzZXJ2ZXJXcmFwcGVyLmNwcDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJPYnNlcnZlcldy
YXBwZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NDlDNzcwNzFENkU0OEVE
MDBDMERFNEYgLyogQ1NTUGFyc2VyT2JzZXJ2ZXJXcmFwcGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IENTU1BhcnNlck9ic2VydmVyV3JhcHBlci5oOyBwYXRoID0gcGFyc2Vy
L0NTU1BhcnNlck9ic2VydmVyV3JhcHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NDlDNzcwQTFENkU0OUMzMDBDMERFNEYgLyogQ1NTUGFyc2VyT2JzZXJ2ZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTUGFyc2VyT2JzZXJ2ZXIuaDsgcGF0aCA9IHBh
cnNlci9DU1NQYXJzZXJPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
NEQ0QUM2MTFEQzI0QzgxMDA4MEYwMkQgLyogQ1NTQ3VzdG9tUHJvcGVydHlWYWx1ZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NDdXN0b21Qcm9wZXJ0eVZhbHVl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTRERDc5NzIxRTU0RTNBMjAwNThG
QjgwIC8qIEZsZXhpYmxlQm94QWxnb3JpdGhtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZsZXhpYmxlQm94QWxnb3JpdGhtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTRERDc5NzMxRTU0RTNBMjAwNThGQjgwIC8qIEZsZXhpYmxlQm94QWxnb3Jp
dGhtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZsZXhpYmxlQm94QWxnb3Jp
dGhtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk0REU1QzdEMUQ3OENCMjUwMDE2
NEYyQSAvKiBDU1NQYXJzZXJJZGlvbXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ1NTUGFyc2VySWRpb21zLmNwcDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJJZGlv
bXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NERFNUM3RjFEN0YzOUQwMDAx
NjRGMkEgLyogQ1NTQXRSdWxlSUQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gQ1NTQXRSdWxlSUQuY3BwOyBwYXRoID0gcGFyc2VyL0NTU0F0UnVsZUlELmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTRERTVDODAxRDdGMzlEMDAwMTY0RjJBIC8qIENT
U0F0UnVsZUlELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENTU0F0UnVsZUlE
Lmg7IHBhdGggPSBwYXJzZXIvQ1NTQXRSdWxlSUQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTRERTVDOEIxRDgwODAxNTAwMTY0RjJBIC8qIENTU1NlbGVjdG9yUGFyc2VyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENTU1NlbGVjdG9yUGFyc2VyLmNw
cDsgcGF0aCA9IHBhcnNlci9DU1NTZWxlY3RvclBhcnNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk0REU1QzhDMUQ4MDgwMTUwMDE2NEYyQSAvKiBDU1NTZWxlY3RvclBhcnNl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDU1NTZWxlY3RvclBhcnNlci5o
OyBwYXRoID0gcGFyc2VyL0NTU1NlbGVjdG9yUGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk0REU1QzhGMUQ4MzAwQ0IwMDE2NEYyQSAvKiBDU1NTdXBwb3J0c1BhcnNlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDU1NTdXBwb3J0c1BhcnNl
ci5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTU3VwcG9ydHNQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NERFNUM5MDFEODMwMENCMDAxNjRGMkEgLyogQ1NTU3VwcG9ydHNQ
YXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTU3VwcG9ydHNQYXJz
ZXIuaDsgcGF0aCA9IHBhcnNlci9DU1NTdXBwb3J0c1BhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5NERFNUM5MzFEODMwMUIwMDAxNjRGMkEgLyogQ1NTUGFyc2VySW1wbC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDU1NQYXJzZXJJbXBsLmNw
cDsgcGF0aCA9IHBhcnNlci9DU1NQYXJzZXJJbXBsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTRERTVDOTQxRDgzMDFCMDAwMTY0RjJBIC8qIENTU1BhcnNlckltcGwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ1NTUGFyc2VySW1wbC5oOyBwYXRoID0gcGFy
c2VyL0NTU1BhcnNlckltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTRFODM5
NEUxREZCMjcwMDAwN0JDNkE3IC8qIENTU05hbWVzcGFjZVJ1bGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTTmFtZXNwYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk0RTgzOTRGMURGQjI3MDAwMDdCQzZBNyAvKiBDU1NOYW1lc3Bh
Y2VSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU05hbWVzcGFjZVJ1
bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTRFODM5NTAxREZCMjlBNDAwN0JD
NkE3IC8qIENTU05hbWVzcGFjZVJ1bGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU05h
bWVzcGFjZVJ1bGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NEU4Mzk1MzFE
RkIyQkE2MDA3QkM2QTcgLyogSlNDU1NOYW1lc3BhY2VSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NTTmFtZXNwYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk0RTgzOTU0MURGQjJCQTYwMDdCQzZBNyAvKiBKU0NTU05hbWVz
cGFjZVJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NOYW1lc3Bh
Y2VSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1MDE4M0M5MjVENjMzRDgw
MEQ0MzQwRiAvKiBBcHBsZVBheURldGFpbHNVcGRhdGVCYXNlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBcHBsZVBheURldGFpbHNVcGRhdGVCYXNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTUwMTgzQ0IyNUQ2MzNEODAwRDQzNDBGIC8qIEFwcGxlUGF5RGV0YWlsc1Vw
ZGF0ZUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlEZXRh
aWxzVXBkYXRlQmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTBDNDg0OTI1
RDY3NzQyMDBBQjNEOUMgLyogb3ZlcmZsb3ctc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0
aCA9ICJvdmVyZmxvdy1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTUwQzQ4NEIyNUQ2Nzc0RTAwQUIzRDlDIC8qIG92ZXJmbG93LWJ1dHRvbi5qcyAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9ICJvdmVyZmxvdy1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NTBDNEMwMkJFRDg5MzZGODE4RTJGOTkgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHR3JhcGhpY3NFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1MjdEN0E4MjVENUZERTEwMEE2RTE3
NiAvKiBBcHBsZVBheURldGFpbHNVcGRhdGVEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEFwcGxlUGF5RGV0YWlsc1VwZGF0ZURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTUyN0Q3QUEyNUQ1RkRFMTAwQTZFMTc2IC8qIEFwcGxlUGF5RGV0YWlsc1Vw
ZGF0ZURhdGEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5RGV0YWlsc1VwZGF0
ZURhdGEuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTI3RDdBRDI1RDVGRTZC
MDBBNkUxNzYgLyogSlNBcHBsZVBheURldGFpbHNVcGRhdGVEYXRhLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlEZXRhaWxzVXBkYXRlRGF0YS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5NTI3RDdBRTI1RDVGRTZCMDBBNkUxNzYgLyogSlNBcHBs
ZVBheURldGFpbHNVcGRhdGVEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQXBwbGVQYXlEZXRhaWxzVXBkYXRlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk1M0JDRUFGMjVENjI4M0MwMEE0QTJBMSAvKiBKU0FwcGxlUGF5RGV0YWls
c1VwZGF0ZUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBh
eURldGFpbHNVcGRhdGVCYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1M0JD
RUIxMjVENjI4M0MwMEE0QTJBMSAvKiBKU0FwcGxlUGF5RGV0YWlsc1VwZGF0ZUJhc2UuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheURldGFpbHNVcGRh
dGVCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTU1MTk1OEQyNUZBOUUz
MDAwRjU4Q0YwIC8qIHdhdGNob3MtbWVkaWEtY29udHJvbHMuY3NzICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSAid2F0Y2hv
cy1tZWRpYS1jb250cm9scy5jc3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTUx
OTU4RTI1RkE5RTMwMDBGNThDRjAgLyogd2F0Y2hvcy1hY3Rpdml0eS1pbmRpY2F0b3IuY3NzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7
IHBhdGggPSAid2F0Y2hvcy1hY3Rpdml0eS1pbmRpY2F0b3IuY3NzIjsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTU1MTk1OEYyNUZBOUUzMTAwRjU4Q0YwIC8qIHdhdGNob3MtYWN0aXZp
dHktaW5kaWNhdG9yLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIndhdGNob3MtYWN0aXZpdHkt
aW5kaWNhdG9yLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTU1MTk1OTAyNUZB
OUUzRDAwRjU4Q0YwIC8qIHdhdGNob3MtbWVkaWEtY29udHJvbHMtc3VwcG9ydC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2
YXNjcmlwdDsgcGF0aCA9ICJ3YXRjaG9zLW1lZGlhLWNvbnRyb2xzLXN1cHBvcnQuanMiOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTUxOTU5MTI1RkE5RTQzMDBGNThDRjAgLyogYXVk
aW8tc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJhdWRpby1zdXBwb3J0LmpzIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTU1MTk1OTIyNUZBOUU0QzAwRjU4Q0YwIC8q
IG1lZGlhLWRvY3VtZW50LWNvbnRyb2xsZXIuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAibWVk
aWEtZG9jdW1lbnQtY29udHJvbGxlci5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTk1NTE5NTk1MjVGQTlFN0UwMEY1OENGMCAvKiB0aW1lLWNvbnRyb2wtc3VwcG9ydC5qcyAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
amF2YXNjcmlwdDsgcGF0aCA9ICJ0aW1lLWNvbnRyb2wtc3VwcG9ydC5qcyI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk1NTE5NTk2MjVGQTlFQUYwMEY1OENGMCAvKiBhY3Rpdml0eS1p
bmRpY2F0b3IuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC5jc3M7IHBhdGggPSAiYWN0aXZpdHktaW5kaWNhdG9yLmNzcyI7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1NTE5NTk3MjVGQTlFQjgwMEY1OENGMCAvKiBiYWNrZ3Jv
dW5kLXRpbnQuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC5jc3M7IHBhdGggPSAiYmFja2dyb3VuZC10aW50LmNzcyI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk1NTE5NTk4MjVGQTlFQjgwMEY1OENGMCAvKiBiYWNrZ3JvdW5k
LWNsaWNrLWRlbGVnYXRlLW5vdGlmaWVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gImJhY2tn
cm91bmQtY2xpY2stZGVsZWdhdGUtbm90aWZpZXIuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NTUxOTU5OTI1RkE5RUI5MDBGNThDRjAgLyogYmFja2dyb3VuZC10aW50LmpzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5qYXZhc2NyaXB0OyBwYXRoID0gImJhY2tncm91bmQtdGludC5qcyI7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk1NTE5NTlBMjVGQTlFQzYwMEY1OENGMCAvKiBpbmxpbmUtbWVkaWEt
Y29udHJvbHMuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC5jc3M7IHBhdGggPSAiaW5saW5lLW1lZGlhLWNvbnRyb2xzLmNzcyI7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1NTE5NTlCMjVGQTlFQ0MwMEY1OENGMCAvKiBpbmxp
bmUtbWVkaWEtY29udHJvbHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAiaW5saW5lLW1lZGlh
LWNvbnRyb2xzLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTU1MTk1OUMyNUZB
OUVFMzAwRjU4Q0YwIC8qIG1lZGlhLWRvY3VtZW50LmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gIm1lZGlhLWRvY3Vt
ZW50LmNzcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1NTE5NTlEMjVGQTlFRkIw
MEY1OENGMCAvKiBza2lwLWZvcndhcmQtYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0g
InNraXAtZm9yd2FyZC1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
NTYyRUVEOTI1RjE4REU1MDAzMzQ0NDIgLyogUGF5bWVudFJlcXVlc3RVdGlsaXRpZXMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGF5bWVudFJlcXVlc3RVdGlsaXRp
ZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTYyRUVEQjI1RjE4REU2MDAz
MzQ0NDIgLyogUGF5bWVudFJlcXVlc3RVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGF5bWVudFJlcXVlc3RVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTU2ODREN0YyNjUzNTdGNzAwMDI2OTM4IC8qIEFwcGxlUGF5Q291cG9uQ29k
ZURldGFpbHMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5Q291cG9uQ29kZURl
dGFpbHMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTY4NEQ4MTI2NTM1N0Y3
MDAwMjY5MzggLyogQXBwbGVQYXlDb3Vwb25Db2RlRGV0YWlscy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUNvdXBvbkNvZGVEZXRhaWxzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk1OTZCOTMwMjVERUVFOUYwMEVEMkNGQSAvKiBBcHBsZVBheUNv
dXBvbkNvZGVVcGRhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQ
YXlDb3Vwb25Db2RlVXBkYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1OTZC
OTMyMjVERUVFOUYwMEVEMkNGQSAvKiBBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5Q291cG9uQ29kZVVwZGF0ZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1OTZCOTM1MjVERUVGMDAwMEVEMkNGQSAvKiBKU0FwcGxl
UGF5Q291cG9uQ29kZVVwZGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0FwcGxlUGF5Q291cG9uQ29kZVVwZGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk1OTZCOTM2MjVERUVGMDIwMEVEMkNGQSAvKiBKU0FwcGxlUGF5Q291cG9uQ29k
ZUNoYW5nZWRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxl
UGF5Q291cG9uQ29kZUNoYW5nZWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NUExRTJFNzI1Q0M3NUE4MDAyNjhDOEUgLyogTWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRl
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnVJdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1QUE1NzBEMjVFRUVE
MzAwMDRFOTI4MyAvKiBJbnNwZWN0b3JDYW52YXNDYWxsVHJhY2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3RvckNhbnZhc0NhbGxUcmFjZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NUFBNTcwRTI1RUVFRDMxMDA0RTkyODMgLyog
SW5zcGVjdG9yQ2FudmFzQ2FsbFRyYWNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBJbnNwZWN0b3JDYW52YXNDYWxsVHJhY2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk1REY5RDIzMjUyQkVEOTkwMDBEN0Y0NiAvKiBQb2ludGVyQ2hhcmFjdGVyaXN0aWNz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFBvaW50ZXJDaGFyYWN0ZXJpc3RpY3MuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTVFQUQ1NUYyNjZFRjJEQTAwNEI5Q0YxIC8qIEFwcGxlUGF5Q291
cG9uQ29kZUNoYW5nZWRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBB
cHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTVFQUQ1NjEyNjZFRjJEQTAwNEI5Q0YxIC8qIEFwcGxlUGF5Q291cG9uQ29kZUNoYW5n
ZWRFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlDb3Vwb25Db2RlQ2hh
bmdlZEV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTVFQUQ1NjIyNjZF
RjJEQjAwNEI5Q0YxIC8qIEFwcGxlUGF5Q291cG9uQ29kZUNoYW5nZWRFdmVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2Vk
RXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU2NjI2NkVGMkY4
MDA0QjlDRjEgLyogQXBwbGVQYXlEYXRlQ29tcG9uZW50c1JhbmdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5RGF0ZUNvbXBvbmVudHNSYW5nZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU2NzI2NkVGMkY4MDA0QjlDRjEgLyogQXBwbGVQ
YXlEYXRlQ29tcG9uZW50cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlEYXRl
Q29tcG9uZW50cy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1RUFENTY4MjY2
RUYyRjkwMDRCOUNGMSAvKiBBcHBsZVBheURhdGVDb21wb25lbnRzUmFuZ2UuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5RGF0ZUNvbXBvbmVudHNSYW5nZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1RUFENTY5MjY2RUYyRjkwMDRCOUNGMSAvKiBBcHBsZVBh
eURhdGVDb21wb25lbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxl
UGF5RGF0ZUNvbXBvbmVudHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTVFQUQ1
NkUyNjZFRjM4NDAwNEI5Q0YxIC8qIEFwcGxlUGF5UGF5bWVudFRpbWluZy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheVBheW1lbnRUaW1pbmcuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTVFQUQ1NkYyNjZFRjM4NTAwNEI5Q0YxIC8qIEFwcGxlUGF5
UGF5bWVudFRpbWluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlQYXltZW50
VGltaW5nLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTVFQUQ1NzIyNjZFRjM5
MjAwNEI5Q0YxIC8qIEFwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1RUFENTczMjY2RUYzOTMwMDRCOUNG
MSAvKiBBcHBsZVBheVJlY3VycmluZ1BheW1lbnREYXRlVW5pdC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXBwbGVQYXlSZWN1cnJpbmdQYXltZW50RGF0ZVVuaXQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU3NjI2NkVGM0E2MDA0QjlDRjEgLyogQXBwbGVQYXlT
aGlwcGluZ0NvbnRhY3RFZGl0aW5nTW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBBcHBsZVBheVNoaXBwaW5nQ29udGFjdEVkaXRpbmdNb2RlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk1RUFENTc3MjY2RUYzQTcwMDRCOUNGMSAvKiBBcHBsZVBheVNoaXBw
aW5nQ29udGFjdEVkaXRpbmdNb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBh
eVNoaXBwaW5nQ29udGFjdEVkaXRpbmdNb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTVFQUQ1N0QyNjZFRjUyMjAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlDb3Vwb25Db2RlRGV0
YWlscy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5Q291cG9uQ29kZURldGFpbHMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU3RjI2NkVGNTIzMDA0QjlD
RjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVEZXRhaWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBw
bGVQYXlDb3Vwb25Db2RlRGV0YWlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
NUVBRDU4MDI2NkVGNTMwMDA0QjlDRjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZl
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZl
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU4MTI2NkVGNTMxMDA0
QjlDRjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNB
cHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTVFQUQ1ODQyNjZFRjU2ODAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlEYXRlQ29tcG9uZW50cy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5RGF0ZUNvbXBv
bmVudHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NUVBRDU4NTI2NkVGNTY5
MDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlEYXRlQ29tcG9uZW50cy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NUVBRDU4ODI2NkVGNTc5MDA0QjlDRjEgLyogSlNBcHBsZVBheURh
dGVDb21wb25lbnRzUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNBcHBsZVBheURhdGVDb21wb25lbnRzUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5NUVBRDU4OTI2NkVGNTc5MDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21w
b25lbnRzUmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBh
eURhdGVDb21wb25lbnRzUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTVF
QUQ1OEMyNjZFRjU5QTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlQYXltZW50VGltaW5nLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlQYXltZW50VGltaW5nLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1RUFENThEMjY2RUY1OUIwMDRCOUNGMSAvKiBK
U0FwcGxlUGF5UGF5bWVudFRpbWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudFRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk1RUFENTkwMjY2RUY1Q0IwMDRCOUNGMSAvKiBKU0FwcGxlUGF5UmVjdXJyaW5n
UGF5bWVudERhdGVVbml0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTQXBwbGVQYXlSZWN1cnJpbmdQYXltZW50RGF0ZVVuaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5NUVBRDU5MTI2NkVGNUNDMDA0QjlDRjEgLyogSlNBcHBsZVBheVJlY3Vy
cmluZ1BheW1lbnREYXRlVW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0FwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk1RUFENTk1MjY2RUY2MDkwMDRCOUNGMSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdD
b250YWN0RWRpdGluZ01vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNB
cHBsZVBheVNoaXBwaW5nQ29udGFjdEVkaXRpbmdNb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk1RUFENTk2MjY2RUY2MEEwMDRCOUNGMSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdD
b250YWN0RWRpdGluZ01vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNBcHBsZVBheVNoaXBwaW5nQ29udGFjdEVkaXRpbmdNb2RlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTVGNDVEMjQyNjRERkJFQjAwRDBCOEI4IC8qIFBhZ2VDb2xvclNh
bXBsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZUNvbG9yU2FtcGxlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1RjQ1RDI2MjY0REZCRUIwMEQwQjhCOCAvKiBQYWdl
Q29sb3JTYW1wbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VDb2xvclNhbXBsZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTcwNTk5NzUxMDdEOTc1MjAwQTUwQTdDIC8qIFBvbGlj
eUNoZWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9saWN5
Q2hlY2tlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3MDU5OTc2MTA3RDk3
NTIwMEE1MEE3QyAvKiBQb2xpY3lDaGVja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBvbGljeUNoZWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTcw
QjcyODkxNDRGRkFDNjAwRjAwQTM3IC8qIEV2ZW50SW50ZXJmYWNlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IG5hbWUgPSBFdmVudEludGVyZmFjZXMuaDsgcGF0aCA9IERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvRXZlbnRJbnRlcmZhY2VzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCTk3MEI3MkE1MTQ1MDA4RUIwMEYwMEEzNyAvKiBFdmVudEhlYWRlcnMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRXZlbnRIZWFkZXJzLmg7IHBhdGggPSBE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL0V2ZW50SGVhZGVycy5oOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQk5NzExNDYwMDE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9y
R2VvbG9jYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2
aWdhdG9yR2VvbG9jYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzEx
NDYwMTE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9yR2VvbG9jYXRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yR2VvbG9jYXRpb24uaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTcxMTQ2MDIxNEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRv
citHZW9sb2NhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIk5hdmlnYXRvcitHZW9s
b2NhdGlvbi5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzIwNUFBRDEyMzky
OENBMDBCMTczODAgLyogRlRQRGlyZWN0b3J5RG9jdW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRlRQRGlyZWN0b3J5RG9jdW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NzIwNUFBRTEyMzkyOENBMDBCMTczODAgLyogRlRQRGlyZWN0
b3J5RG9jdW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRlRQRGlyZWN0
b3J5RG9jdW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTcyMDVBQjExMjM5
MjkxMDAwQjE3MzgwIC8qIEltYWdlRG9jdW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSW1hZ2VEb2N1bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk3MjA1QUIyMTIzOTI5MTAwMEIxNzM4MCAvKiBJbWFnZURvY3VtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlRG9jdW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTcyMDVBQjMxMjM5MjkxMDAwQjE3MzgwIC8qIE1lZGlhRG9jdW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFEb2N1bWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3MjA1QUI0MTIzOTI5MTAwMEIx
NzM4MCAvKiBNZWRpYURvY3VtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lZGlhRG9jdW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTcyMDVBQjkx
MjM5MjkyNzAwQjE3MzgwIC8qIFBsdWdpbkRvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFBsdWdpbkRvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTcyMDVBQkExMjM5MjkyNzAwQjE3MzgwIC8qIFBsdWdpbkRvY3VtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsdWdpbkRvY3VtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3MjhDMzExMTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJr
dXBBY2N1bXVsYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBN
YXJrdXBBY2N1bXVsYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3MjhD
MzEyMTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVsYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNYXJrdXBBY2N1bXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5NzM4ODk5RTExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRXcml0ZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzM4ODk5RjExNkVBOURDMDBBREYz
MTMgLyogRG9jdW1lbnRXcml0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RG9jdW1lbnRXcml0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczRTMyNTQx
MDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczRTMyNTUxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291
cmNlTG9hZE5vdGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291
cmNlTG9hZE5vdGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0Y0MTg3
MTY5Qjk1RUYwMDA2QkY2MCAvKiBIVE1MUGFyc2VyT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MUGFyc2VyT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk3M0Y0MTg4MTY5Qjk1RUYwMDA2QkY2MCAvKiBIVE1MUGFyc2Vy
T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MUGFyc2VyT3B0
aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYxMTE0RjREREU2MDAz
RTdBNzAgLyogR2VvbG9jYXRpb25Db29yZGluYXRlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBHZW9sb2NhdGlvbkNvb3JkaW5hdGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk3NDZBRjExMTRGNERERTYwMDNFN0E3MiAvKiBHZW9sb2NhdGlvbkNvb3JkaW5h
dGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdlb2xvY2F0aW9u
Q29vcmRpbmF0ZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYxMjE0
RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Db29yZGluYXRlcy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gR2VvbG9jYXRpb25Db29yZGluYXRlcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3NDZBRjEzMTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvbi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHZW9sb2NhdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NDZBRjE0MTRGNERERTYwMDNFN0E3MCAvKiBH
ZW9sb2NhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHZW9sb2NhdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYxNTE0RjREREU2MDAzRTdB
NzAgLyogR2VvbG9jYXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEdlb2xvY2F0aW9u
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc0NkFGMTUxNEY0RERFNjAwM0U3
QTcxIC8qIEdlb2xvY2F0aW9uQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEdlb2xvY2F0aW9uQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
NDZBRjE2MTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2VvbG9jYXRpb25Db250cm9sbGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc0NkFGMTcxNEY0RERFNjAwM0U3QTcw
IC8qIEdlb2xvY2F0aW9uQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBHZW9sb2NhdGlvbkNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTc0NkFGMTgxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uRXJyb3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2VvbG9jYXRpb25FcnJvci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYxOTE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRp
b25Qb3NpdGlvbkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2VvbG9j
YXRpb25Qb3NpdGlvbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc0NkFG
MUExNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gR2VvbG9jYXRpb25Qb3NpdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NzQ2QUYxQjE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Q
b3NpdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gR2VvbG9jYXRpb25Qb3NpdGlvbi5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NDZBRjFDMTRGNERERTYwMDNFN0E3
MCAvKiBQb3NpdGlvbkNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBvc2l0aW9uQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc0NkFG
MUQxNEY0RERFNjAwM0U3QTcwIC8qIFBvc2l0aW9uQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFBvc2l0aW9uQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5NzQ2QUYxRTE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkVycm9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdlb2xvY2F0aW9uUG9zaXRpb25F
cnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYxRjE0RjREREU2MDAz
RTdBNzAgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkVycm9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBHZW9sb2NhdGlvblBvc2l0aW9uRXJyb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NzQ2QUYyMDE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25FcnJvckNhbGxiYWNr
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvc2l0aW9uRXJyb3JDYWxsYmFj
ay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzQ2QUYyMTE0RjREREU2MDAzRTdB
NzAgLyogUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQ
b3NpdGlvbkVycm9yQ2FsbGJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
NzQ2QUYyMjE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25PcHRpb25zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBvc2l0aW9uT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5NzRBODYyMDE0QjdBREJCMDAzRkRDNzYgLyogRnJhbWVEZXN0cnVjdGlv
bk9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZyYW1l
RGVzdHJ1Y3Rpb25PYnNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
NEE4NjIxMTRCN0FEQkIwMDNGREM3NiAvKiBGcmFtZURlc3RydWN0aW9uT2JzZXJ2ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVEZXN0cnVjdGlvbk9ic2VydmVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NEQyREEyMTQ2QTUzNUQwMEQ1MUY4QiAv
KiBTZWN1cml0eVBvbGljeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTZWN1cml0eVBvbGljeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NEQy
REEzMTQ2QTUzNUQwMEQ1MUY4QiAvKiBTZWN1cml0eVBvbGljeS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTZWN1cml0eVBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NzUyRDM4QjE0MTMxMDRCMDAzMzA1QkQgLyogSlNIVE1MU3BhbkVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MU3BhbkVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzUyRDM4QzE0MTMxMDRCMDAzMzA1
QkQgLyogSlNIVE1MU3BhbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNIVE1MU3BhbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc1
OUU5MzQxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExvYWRhYmxlVGV4dFRyYWNrLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc1OUU5MzUxNEVGMUNGODAwMjZBMkREIC8qIFRleHRU
cmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0VHJhY2su
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzU5RTkzNjE0RUYxQ0Y4MDAyNkEy
REQgLyogVGV4dFRyYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRU
cmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzU5RTkzNzE0RUYxQ0Y4MDAy
NkEyREQgLyogVGV4dFRyYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBUZXh0VHJhY2su
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzU5RTkzODE0RUYxQ0Y4MDAyNkEy
REQgLyogVGV4dFRyYWNrQ3VlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFRleHRUcmFja0N1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NTlF
OTM5MTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVGV4dFRyYWNrQ3VlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk3NTlFOTNBMTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWUuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFRleHRUcmFja0N1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk3NTlFOTNCMTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWVMaXN0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRUcmFja0N1ZUxpc3QuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzU5RTkzQzE0RUYxQ0Y4MDAyNkEyREQg
LyogVGV4dFRyYWNrQ3VlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
ZXh0VHJhY2tDdWVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NTlFOTNE
MTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWVMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBUZXh0VHJhY2tDdWVMaXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTc1OUU5NDgxNEVGMUQ0OTAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvYWRhYmxlVGV4dFRyYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NUNBMjg3MTMwMzY1RjgwMEU5OUFEOSAvKiBDcnlwdG8u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc1Q0EyODgxMzAzNjVGODAwRTk5QUQ5IC8qIENy
eXB0by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG8uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc1Q0EyODkxMzAzNjVGODAwRTk5QUQ5IC8qIENyeXB0
by5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3J5cHRvLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTc1Q0EyOUYxMzAzNjc5RDAwRTk5QUQ5IC8qIEpTQ3J5cHRvLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3J5cHRvLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc1Q0EyQTAxMzAzNjc5RDAwRTk5QUQ5IC8qIEpTQ3J5
cHRvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3J5cHRvLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NjI3QjhCMTRGQjNDRUUwMDJDRENBMSAvKiBDb250
ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3NjI3QjhDMTRGQjNDRUUwMDJDRENBMSAvKiBDb250ZXh0RGVzdHJ1Y3Rp
b25PYnNlcnZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZXh0RGVz
dHJ1Y3Rpb25PYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzYyN0I5
NzE0RkI1NDI0MDAyQ0RDQTEgLyogU3VwcGxlbWVudGFibGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3VwcGxlbWVudGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTc2RDZDNTkxMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2IuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmxvYi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk3NkQ2QzVBMTIyQjhBM0QwMDFGRDFGNyAvKiBCbG9iLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEJsb2IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTc2RDZDNUMxMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2JCdWlsZGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJsb2JCdWlsZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTc2RDZDNUQxMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2JCdWlsZGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJsb2JCdWlsZGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NkQ2QzVGMTIyQjhBM0QwMDFGRDFGNyAvKiBCbG9iVVJM
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJsb2JVUkwuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzZENkM2MDEyMkI4QTNEMDAxRkQxRjcgLyog
QmxvYlVSTC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9iVVJMLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NkQ2QzYxMTIyQjhBM0QwMDFGRDFGNyAvKiBG
aWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzZENkM2MjEyMkI4QTNEMDAxRkQxRjcgLyog
RmlsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NkQ2QzY2MTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlTGlz
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWxlTGlzdC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NkQ2QzY3MTIyQjhBM0QwMDFGRDFGNyAv
KiBGaWxlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlTGlzdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzZENkM2OTEyMkI4QTNEMDAxRkQxRjcg
LyogRmlsZVJlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBG
aWxlUmVhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc2RDZDNkExMjJC
OEEzRDAwMUZEMUY3IC8qIEZpbGVSZWFkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRmlsZVJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzZENkM3
NTEyMkI4QTNEMDAxRkQxRjcgLyogVGhyZWFkYWJsZUJsb2JSZWdpc3RyeS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaHJlYWRhYmxlQmxvYlJlZ2lzdHJ5LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc2RDZDNzYxMjJCOEEzRDAwMUZEMUY3IC8q
IFRocmVhZGFibGVCbG9iUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGhyZWFkYWJsZUJsb2JSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NzZGMzZFODE0Njg2MjI1MDA1RTkzQjQgLyogU2VjdXJpdHlDb250ZXh0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlY3VyaXR5Q29udGV4dC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3NkYzNkU5MTQ2ODYyMjUwMDVFOTNCNCAvKiBTZWN1
cml0eUNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VjdXJpdHlD
b250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzNzFGMTIyODcyMTcw
MEI4MUZGOCAvKiBIVE1MRWxlbWVudFN0YWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhUTUxFbGVtZW50U3RhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5NzdCMzcyMDEyMjg3MjE3MDBCODFGRjggLyogSFRNTEVsZW1lbnRTdGFjay5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MRWxlbWVudFN0YWNrLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzNzIxMTIyODcyMTcwMEI4MUZGOCAvKiBIVE1M
VHJlZUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRN
TFRyZWVCdWlsZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM3MjIx
MjI4NzIxNzAwQjgxRkY4IC8qIEhUTUxUcmVlQnVpbGRlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBIVE1MVHJlZUJ1aWxkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTc3QjM4NDkxMjI4ODNFOTAwQjgxRkY4IC8qIENTU1ByZWxvYWRTY2FubmVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1ByZWxvYWRTY2FubmVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM4NEExMjI4ODNFOTAwQjgxRkY4
IC8qIENTU1ByZWxvYWRTY2FubmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENTU1ByZWxvYWRTY2FubmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0Iz
ODRCMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MQ29uc3RydWN0aW9uU2l0ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MQ29uc3RydWN0aW9uU2l0ZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODRDMTIyODgzRTkwMEI4MUZGOCAvKiBI
VE1MQ29uc3RydWN0aW9uU2l0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBI
VE1MQ29uc3RydWN0aW9uU2l0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzdC
Mzg0RDEyMjg4M0U5MDBCODFGRjggLyogSFRNTERvY3VtZW50UGFyc2VyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxEb2N1bWVudFBhcnNlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODRFMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1M
RG9jdW1lbnRQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTERv
Y3VtZW50UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODRGMTIy
ODgzRTkwMEI4MUZGOCAvKiBIVE1MRW50aXR5TmFtZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSFRNTEVudGl0eU5hbWVzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzdC
Mzg1MDEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVudGl0eVBhcnNlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRW50aXR5UGFyc2VyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM4NTExMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRp
dHlQYXJzZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEVudGl0eVBh
cnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzdCMzg1MjEyMjg4M0U5MDBC
ODFGRjggLyogSFRNTEVudGl0eVNlYXJjaC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBIVE1MRW50aXR5U2VhcmNoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTc3QjM4NTMxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRpdHlTZWFyY2guaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEVudGl0eVNlYXJjaC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5NzdCMzg1NDEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVu
dGl0eVRhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxFbnRpdHlU
YWJsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzdCMzg1NTEyMjg4M0U5MDBC
ODFGRjggLyogSFRNTEZvcm1hdHRpbmdFbGVtZW50TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRm9ybWF0dGluZ0VsZW1lbnRMaXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM4NTYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxG
b3JtYXR0aW5nRWxlbWVudExpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SFRNTEZvcm1hdHRpbmdFbGVtZW50TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NzdCMzg1NzEyMjg4M0U5MDBCODFGRjggLyogSFRNTFBhcnNlclNjaGVkdWxlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MUGFyc2VyU2NoZWR1bGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM4NTgxMjI4ODNFOTAwQjgxRkY4
IC8qIEhUTUxQYXJzZXJTY2hlZHVsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSFRNTFBhcnNlclNjaGVkdWxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
NzdCMzg1OTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFByZWxvYWRTY2FubmVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxQcmVsb2FkU2Nhbm5lci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODVBMTIyODgzRTkwMEI4MUZGOCAvKiBI
VE1MUHJlbG9hZFNjYW5uZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRN
TFByZWxvYWRTY2FubmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODVC
MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MU2NyaXB0UnVubmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxTY3JpcHRSdW5uZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NzdCMzg1QzEyMjg4M0U5MDBCODFGRjggLyogSFRNTFNjcmlwdFJ1
bm5lci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MU2NyaXB0UnVubmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0IzODVEMTIyODgzRTkwMEI4MUZG
OCAvKiBIVE1MU2NyaXB0UnVubmVySG9zdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBIVE1MU2NyaXB0UnVubmVySG9zdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NzdCMzg1RTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFRva2VuaXplci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVG9rZW5pemVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3QjM4NUYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxUb2tl
bml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFRva2VuaXplci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzdFMkRDQjEyRjBFMjgzMDBDMTMzNzkg
LyogSFRNTFNvdXJjZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSFRNTFNvdXJjZVRyYWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5NzdFMkRDQzEyRjBFMjgzMDBDMTMzNzkgLyogSFRNTFNvdXJjZVRyYWNrZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFNvdXJjZVRyYWNrZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc3RTJFMEIxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFNTQXVkaXRvci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3N0UyRTBCMTJGMEZDOUMwMEMxMzM4
MCAvKiBYU1NBdWRpdG9yRGVsZWdhdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gWFNTQXVkaXRvckRlbGVnYXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOTc3RTJFMEMxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFNTQXVkaXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5NzdFMkUwQzEyRjBGQzlDMDBDMTMzODAgLyogWFNTQXVkaXRvckRlbGVnYXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhTU0F1ZGl0b3JEZWxlZ2F0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzhBRDY3MTE0MTMwQThEMDBDN0NBRTMg
LyogSFRNTFNwYW5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhUTUxTcGFuRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
OEFENjcyMTQxMzBBOEQwMEM3Q0FFMyAvKiBIVE1MU3BhbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFNwYW5FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3OEFENjczMTQxMzBBOEQwMEM3Q0FFMyAvKiBIVE1MU3BhbkVsZW1lbnQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxTcGFuRWxlbWVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3OEQwN0JEMTQ1QTBGNkMwMDk2OTA4RCAvKiBET01FeGNl
cHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRXhjZXB0
aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTc5RjQzRDExMDc1RTQ0QTAw
MDBGODNCIC8qIE5hdmlnYXRpb25TY2hlZHVsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gTmF2aWdhdGlvblNjaGVkdWxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3OUY0M0QyMTA3NUU0NEEwMDAwRjgzQiAvKiBOYXZpZ2F0aW9uU2NoZWR1
bGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRpb25TY2hlZHVs
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQTNDQTMxNDUyMzdDQzAwM0Ux
REE2IC8qIEV2ZW50VGFyZ2V0SGVhZGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5h
bWUgPSBFdmVudFRhcmdldEhlYWRlcnMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
RXZlbnRUYXJnZXRIZWFkZXJzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCTk3QUEzQ0E0MTQ1MjM3Q0MwMDNFMURBNiAvKiBFdmVudFRhcmdldEludGVyZmFjZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRXZlbnRUYXJnZXRJbnRlcmZhY2VzLmg7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0V2ZW50VGFyZ2V0SW50ZXJmYWNlcy5oOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5N0FBQkNGODE0RkEwOUQ1MDA3
NDU3QUUgLyogQ2xvc2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
bG9zZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QUFCQ0Y5MTRGQTA5
RDUwMDc0NTdBRSAvKiBDbG9zZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDbG9z
ZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJDRkMxNEZBMDlE
NTAwNzQ1N0FFIC8qIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QUFCQ0ZEMTRGQTA5RDUwMDc0NTdBRSAvKiBUaHJlYWRh
YmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFwcGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJDRkUxNEZBMDlENTAwNzQ1
N0FFIC8qIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsQ2xpZW50V3JhcHBlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVu
dFdyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJDRkYxNEZBMDlE
NTAwNzQ1N0FFIC8qIFdlYlNvY2tldC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBXZWJTb2NrZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0FB
QkQwMDE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdlYlNvY2tldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
N0FBQkQwMTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBXZWJTb2NrZXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0FB
QkQwMjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0Q2hhbm5lbC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTb2NrZXRDaGFubmVsLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJEMDMxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tl
dENoYW5uZWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU29ja2V0Q2hh
bm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0FBQkQwNDE0RkEwOUQ1MDA3
NDU3QUUgLyogV2ViU29ja2V0Q2hhbm5lbENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJTb2NrZXRDaGFubmVsQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk3QUFCRDA1MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXREZWZsYXRlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTb2NrZXREZWZsYXRl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QUFCRDA2MTRGQTA5RDUwMDc0
NTdBRSAvKiBXZWJTb2NrZXREZWZsYXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJTb2NrZXREZWZsYXRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
N0FBQkQwNzE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uRGlzcGF0Y2hlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJTb2NrZXRFeHRlbnNp
b25EaXNwYXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJEMDgx
NEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEV4dGVuc2lvbkRpc3BhdGNoZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU29ja2V0RXh0ZW5zaW9uRGlzcGF0Y2hlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0FBQkQwOTE0RkEwOUQ1MDA3NDU3QUUg
LyogV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYlNvY2tldEV4dGVuc2lvblByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5N0FBQkQwQTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RnJhbWUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViU29ja2V0RnJhbWUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdBQUJEMEIxNEZBMDlENTAwNzQ1N0FFIC8qIFdl
YlNvY2tldEhhbmRzaGFrZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBXZWJTb2NrZXRIYW5kc2hha2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
N0FBQkQwQzE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlNvY2tldEhhbmRzaGFrZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5N0FBQkQxMTE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhy
ZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5N0FBQkQxMjE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhy
ZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTdCOEZGQ0YxNkFFN0Y5MjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5j
ZVBhcnNlcklubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhcmFj
dGVyUmVmZXJlbmNlUGFyc2VySW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5N0JDNjlEODE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2hhbmdlVmVyc2lvbldyYXBwZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0JDNjlEOTE1MDVGMDc2MDAxQjc0
QUMgLyogQ2hhbmdlVmVyc2lvbldyYXBwZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ2hhbmdlVmVyc2lvbldyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOTdCQzY5REUxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTdCQzY5REYxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFiYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3QkM2OUUwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGF0YWJhc2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5N0JDNjlFMTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VBdXRob3JpemVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlQXV0aG9yaXpl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2OUUyMTUwNUYwODEwMDFC
NzRBQyAvKiBEYXRhYmFzZUF1dGhvcml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRGF0YWJhc2VBdXRob3JpemVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTk3QkM2OUUzMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNhbGxiYWNrLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFiYXNlQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzY5RTQxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ2Fs
bGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERhdGFiYXNlQ2FsbGJhY2suaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0JDNjlFNTE1MDVGMDgxMDAxQjc0QUMgLyog
RGF0YWJhc2VDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERhdGFiYXNlQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2
OUU2MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRGF0YWJhc2VDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk3QkM2OUU3MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZURldGFpbHMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YWJhc2VEZXRhaWxzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2OUVCMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRh
YmFzZVRhc2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGF0YWJh
c2VUYXNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzY5RUMxNTA1RjA4
MTAwMUI3NEFDIC8qIERhdGFiYXNlVGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEYXRhYmFzZVRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzY5
RUQxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVGhyZWFkLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFiYXNlVGhyZWFkLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTdCQzY5RUUxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVGhyZWFk
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFiYXNlVGhyZWFkLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2OUVGMTUwNUYwODEwMDFCNzRBQyAvKiBE
YXRhYmFzZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RGF0YWJhc2VUcmFja2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzY5
RjAxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVHJhY2tlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTdCQzY5RjExNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlTWFuYWdlckNsaWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRhYmFzZU1hbmFnZXJDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzY5RjkxNTA1RjA4MTAwMUI3
NEFDIC8qIFNRTENhbGxiYWNrV3JhcHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTUUxDYWxsYmFja1dyYXBwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTdCQzY5RkExNTA1RjA4MTAwMUI3NEFDIC8qIFNRTEVycm9yLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNRTEVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTk3QkM2OUZCMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxFcnJvci5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gU1FMRXJyb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0JD
NjlGRjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVzdWx0U2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNRTFJlc3VsdFNldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTk3QkM2QTAwMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1bHRTZXQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1FMUmVzdWx0U2V0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2QTAxMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1
bHRTZXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNRTFJlc3VsdFNldC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2QTAyMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxS
ZXN1bHRTZXRSb3dMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNRTFJlc3VsdFNldFJvd0xpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
N0JDNkEwMzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMUmVzdWx0U2V0Um93TGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTUUxSZXN1bHRTZXRSb3dMaXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2QTA0MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1
bHRTZXRSb3dMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTUUxSZXN1bHRTZXRSb3dM
aXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzZBMDcxNTA1RjA4MTAw
MUI3NEFDIC8qIFNRTFN0YXRlbWVudENhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNRTFN0YXRlbWVudENhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTk3QkM2QTA4MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRDYWxsYmFjay5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1FMU3RhdGVtZW50Q2FsbGJhY2suaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0JDNkEwOTE1MDVGMDgxMDAxQjc0QUMgLyogU1FM
U3RhdGVtZW50RXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTk3QkM2QTBBMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNr
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzZBMEQxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFRyYW5zYWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFNRTFRyYW5zYWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdC
QzZBMEUxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTk3QkM2QTBGMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbi5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1FMVHJhbnNhY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5N0JDNkExMDE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rp
b25DYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTUUxUcmFuc2Fj
dGlvbkNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QkM2QTExMTUw
NUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNhbGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBTUUxUcmFuc2FjdGlvbkNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOTdCQzZBMTQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uQ29v
cmRpbmF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1FMVHJh
bnNhY3Rpb25Db29yZGluYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
QkM2QTE1MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uQ29vcmRpbmF0b3Iu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzZBMTYxNTA1RjA4MTAwMUI3NEFD
IC8qIFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOTdCQzZBMTcxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9u
RXJyb3JDYWxsYmFjay5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1FMVHJhbnNhY3Rpb25F
cnJvckNhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdCQzg0ODEx
MjM2RkQ5MzAwMEM2MTYxIC8qIFRleHREb2N1bWVudFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0RG9jdW1lbnRQYXJzZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5N0JDODQ4MjEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERvY3Vt
ZW50UGFyc2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHREb2N1bWVu
dFBhcnNlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0JDODQ5QTEyMzcwQTRC
MDAwQzYxNjEgLyogSFRNTElucHV0U3RyZWFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEhUTUxJbnB1dFN0cmVhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
N0JDODRCMTEyMzcxMTgwMDAwQzYxNjEgLyogVGV4dERvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHREb2N1bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk3QkM4NEIyMTIzNzExODAwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dERvY3VtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3QzA3ODRGMTE2NUQ1QkUwMDNBMzJFRiAvKiBTdWZm
aXhUcmVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN1ZmZpeFRyZWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdDMUY1NTIxMjI4NTVDQjAwRURFNjE1IC8q
IEhUTUxTdGFja0l0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFN0
YWNrSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0MxRjU1MjEyMjg1NUNC
MDBFREU2MTYgLyogSFRNTFRva2VuLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEhUTUxUb2tlbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0MxRjU1MjEyMjg1
NUNCMDBFREU2MTcgLyogQXRvbUhUTUxUb2tlbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBdG9tSFRNTFRva2VuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
QzQ3MUQ5MTJGOTI1QkMwMDg2MzU0QiAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3kuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5LmNw
cDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3kuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5N0M0NzFEQTEyRjkyNUJEMDA4NjM1NEIgLyogQ29udGVudFNlY3VyaXR5
UG9saWN5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENvbnRlbnRTZWN1cml0
eVBvbGljeS5oOyBwYXRoID0gY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5N0QyQUQwMTE0QjgyM0E2MDA5M0RGMzIgLyogRE9NV2luZG93
UHJvcGVydHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NV2lu
ZG93UHJvcGVydHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5N0QyQUQwMjE0
QjgyM0E2MDA5M0RGMzIgLyogRE9NV2luZG93UHJvcGVydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRE9NV2luZG93UHJvcGVydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOTdEQ0UxRkYxMDgwN0M3NTAwNTdEMzk0IC8qIEhpc3RvcnlDb250cm9sbGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhpc3RvcnlDb250cm9sbGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTdEQ0UyMDAxMDgwN0M3NTAwNTdE
Mzk0IC8qIEhpc3RvcnlDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEhpc3RvcnlDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3
RTlFQzhCMTVEQzQ5MkYwMDRGMkU3MSAvKiBKU1ZvaWRDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1ZvaWRDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTk3RTlFQzhDMTVEQzQ5MkYwMDRGMkU3MSAvKiBKU1ZvaWRDYWxs
YmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZvaWRDYWxsYmFjay5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5ODMxQUU0OTE1NDIyNUEyMDBGRTI2NDQg
LyogUmVmZXJyZXJQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVm
ZXJyZXJQb2xpY3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTg0MjY0RUYxMkQ1
MjgwQTAwMEQ4OEE0IC8qIExpbmtMb2FkZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTGlua0xvYWRlckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5ODVCQjk2QjEzQTk0MDU4MDA3QTBCNjkgLyogTGlua1JlbEF0dHJpYnV0ZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMaW5rUmVsQXR0cmlidXRlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTg1QkI5NkMxM0E5NDA1ODAwN0EwQjY5IC8q
IExpbmtSZWxBdHRyaWJ1dGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlu
a1JlbEF0dHJpYnV0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OENCQzgwMzI2
MThGNjhCMDAxNTkzQzggLyogU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5OENFNDMyNTEyOUUwMEJEMDA1ODIxREMgLyogTGlua0xv
YWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMaW5rTG9hZGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOThDRTQzMjkxMjlFMDBFNTAwNTgy
MURDIC8qIExpbmtMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlu
a0xvYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OEVCMUY5NDEzMTNGRTA1
MDBEMEUxRUEgLyogTm90SW1wbGVtZW50ZWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTm90SW1wbGVtZW50ZWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOThG
OUQ2NjUyNUZEREZFNzAwQkQ4NDJEIC8qIENTU0NvdW50ZXJTdHlsZVJ1bGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQ291bnRlclN0eWxlUnVsZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk4RjlENjY3MjVGRERGRTgwMEJEODQyRCAvKiBD
U1NDb3VudGVyU3R5bGVSdWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NDb3VudGVy
U3R5bGVSdWxlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOThGOUQ2NjgyNUZE
REZFODAwQkQ4NDJEIC8qIENTU0NvdW50ZXJTdHlsZVJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ1NTQ291bnRlclN0eWxlUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5OTA4QjBFRDFCQ0FDRjkxMDBFRDBGNjUgLyogQnl0ZUxlbmd0aFF1ZXVpbmdT
dHJhdGVneS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IEJ5dGVM
ZW5ndGhRdWV1aW5nU3RyYXRlZ3kuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5
MDhCMEVFMUJDQUNGOTEwMEVEMEY2NSAvKiBDb3VudFF1ZXVpbmdTdHJhdGVneS5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IENvdW50UXVldWluZ1N0cmF0ZWd5Lmpz
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OTA4QjBFRjFCQ0FDRjkxMDBFRDBGNjUg
LyogUmVhZGFibGVTdHJlYW0uanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBh
dGggPSBSZWFkYWJsZVN0cmVhbS5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTkw
OEIwRjAxQkNBQ0Y5MTAwRUQwRjY1IC8qIFJlYWRhYmxlU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIu
anMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSBSZWFkYWJsZVN0cmVh
bURlZmF1bHRDb250cm9sbGVyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OTA4
QjBGMDFCQ0FDRjkxMDBFRDNGNjQgLyogUmVhZGFibGVCeXRlU3RyZWFtQ29udHJvbGxlci5qcyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IFJlYWRhYmxlQnl0ZVN0cmVh
bUNvbnRyb2xsZXIuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5MDhCMEYwMUJD
QUNGOTEwMEVENTY3MiAvKiBSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmpzICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1CWU9CUmVxdWVzdC5q
czsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTkwOEIwRjExQkNBQ0Y5MTAwRUQwRjU1
IC8qIFN0cmVhbUludGVybmFscy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
cGF0aCA9IFN0cmVhbUludGVybmFscy5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OTkwOEIwRjExQkNBQ0Y5MTAwRUQwRjY1IC8qIFJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzLmpzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gUmVhZGFibGVTdHJlYW1JbnRl
cm5hbHMuanM7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5MDhCMEYxMUJDQUNGOTEw
MEVEMEY3NSAvKiBXcml0YWJsZVN0cmVhbUludGVybmFscy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuamF2YXNjcmlwdDsgcGF0aCA9IFdyaXRhYmxlU3RyZWFtSW50ZXJuYWxzLmpzOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5OTA4QjBGMTFCQ0FDRjkxMDBFRDNGNjQgLyogUmVhZGFi
bGVCeXRlU3RyZWFtSW50ZXJuYWxzLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0
OyBwYXRoID0gUmVhZGFibGVCeXRlU3RyZWFtSW50ZXJuYWxzLmpzOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQk5OTA4QjBGMjFCQ0FDRjkxMDBFRDBGNjUgLyogUmVhZGFibGVTdHJlYW1E
ZWZhdWx0UmVhZGVyLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0g
UmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5OTA4QjBGMjFCQ0FDRjkxMDBFRDM1NzIgLyogUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVy
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gUmVhZGFibGVTdHJl
YW1CWU9CUmVhZGVyLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OTA4QjBGMzFC
Q0FDRkZFMDBFRDBGNjUgLyogQnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneUJ1aWx0aW5zLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEJ5dGVMZW5ndGhRdWV1aW5nU3Ry
YXRlZ3lCdWlsdGlucy5jcHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0J5dGVMZW5n
dGhRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCTk5MDhCMEY1MUJDQUQwN0QwMEVEMEY2NSAvKiBCeXRlTGVuZ3RoUXVldWlu
Z1N0cmF0ZWd5QnVpbHRpbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQnl0
ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneUJ1aWx0aW5zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5oOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5OTA4QjBGNjFCQ0FEMDdEMDBFRDBGNjUgLyogQ291
bnRRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBDb3VudFF1ZXVpbmdTdHJhdGVneUJ1aWx0aW5zLmNwcDsgcGF0aCA9IERlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvQ291bnRRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5jcHA7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTk5MDhCMEY3MUJDQUQwN0QwMEVEMEY2
NSAvKiBDb3VudFF1ZXVpbmdTdHJhdGVneUJ1aWx0aW5zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IENvdW50UXVldWluZ1N0cmF0ZWd5QnVpbHRpbnMuaDsgcGF0aCA9IERlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvQ291bnRRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5oOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5OTA4QjBGOTFCQ0FEMDdEMDBFRDBGNjUg
LyogUmVhZGFibGVTdHJlYW1CdWlsdGlucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBSZWFkYWJsZVN0cmVhbUJ1aWx0aW5zLmNwcDsgcGF0aCA9IERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvUmVhZGFibGVTdHJlYW1CdWlsdGlucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCTk5MDhCMEZBMUJDQUQwN0QwMEVEMEY2NSAvKiBSZWFkYWJs
ZVN0cmVhbURlZmF1bHRDb250cm9sbGVyQnVpbHRpbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlckJ1aWx0aW5z
LmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvUmVhZGFibGVTdHJlYW1EZWZhdWx0
Q29udHJvbGxlckJ1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJOTkwOEIwRkIxQkNBRDA3RDAwRUQwRjY1IC8qIFJlYWRhYmxlU3RyZWFtRGVmYXVsdENv
bnRyb2xsZXJCdWlsdGlucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBSZWFk
YWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyQnVpbHRpbnMuaDsgcGF0aCA9IERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlckJ1aWx0aW5zLmg7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTk5MDhCMEZEMUJDQUQwN0QwMEVE
MEY1NSAvKiBTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL1N0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcDsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJOTkwOEIwRkQxQkNBRDA3RDAwRUQwRjY1IC8q
IFJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gUmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5jcHA7IHBh
dGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1JlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRp
bnMuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5OTA4QjBGRDFC
Q0FEMDdEMDBFRDBGNjYgLyogSlNET01CaW5kaW5nSW50ZXJuYWxzQnVpbHRpbnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNET01CaW5kaW5nSW50ZXJuYWxzQnVp
bHRpbnMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTUJpbmRpbmdJbnRl
cm5hbHNCdWlsdGlucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTk5MDhCMEZEMUJDQUQwN0QwMEVEMEY3NSAvKiBXcml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0
aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdyaXRhYmxlU3Ry
ZWFtSW50ZXJuYWxzQnVpbHRpbnMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9X
cml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJOTkwOEIwRkQxQkNBRDA3RDAwRUQzRjY0IC8qIFJlYWRhYmxlQnl0
ZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFJlYWRhYmxlQnl0ZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcDsgcGF0aCA9
IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvUmVhZGFibGVCeXRlU3RyZWFtSW50ZXJuYWxzQnVpbHRp
bnMuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5OTA4QjBGRTFC
Q0FEMDdEMDBFRDBGNjUgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyQnVpbHRpbnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gUmVhZGFibGVTdHJlYW1EZWZh
dWx0UmVhZGVyQnVpbHRpbnMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9SZWFk
YWJsZVN0cmVhbURlZmF1bHRSZWFkZXJCdWlsdGlucy5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTk5MDhCMEZFMUJDQUQwN0QwMEVEMzU3MiAvKiBSZWFkYWJsZVN0
cmVhbUJZT0JSZWFkZXJCdWlsdGlucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBSZWFkYWJsZVN0cmVhbUJZT0JSZWFkZXJCdWlsdGlucy5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL1JlYWRhYmxlU3RyZWFtQllPQlJlYWRlckJ1aWx0aW5zLmNwcDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJOTkwOEIwRkYxQkNBRDA3RDAw
RUQwRjY1IC8qIFJlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlckJ1aWx0aW5zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFJlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlckJ1aWx0
aW5zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1JlYWRhYmxlU3RyZWFtRGVmYXVs
dFJlYWRlckJ1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CTk5MDhCMEZGMUJDQUQwN0QwMEVEMzU3MiAvKiBSZWFkYWJsZVN0cmVhbUJZT0JSZWFkZXJCdWls
dGlucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBSZWFkYWJsZVN0cmVhbUJZ
T0JSZWFkZXJCdWlsdGlucy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9SZWFkYWJs
ZVN0cmVhbUJZT0JSZWFkZXJCdWlsdGlucy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQk5OTIwMzk4MDE4Qjk1QkM2MDBCMzlBRjkgLyogVXNlcklucHV0QnJpZGdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVzZXJJbnB1dEJyaWRnZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5MjAzOTgxMThCOTVCQzYwMEIzOUFG
OSAvKiBVc2VySW5wdXRCcmlkZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VXNlcklucHV0QnJpZGdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5NEM2MDM3
MjUzQTI3NzIwMEJERjA2MCAvKiBJbnNwZWN0b3JGcm9udGVuZEFQSURpc3BhdGNoZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yRnJvbnRlbmRBUElEaXNwYXRj
aGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk5NEM2MDM5MjUzQTI3NzMwMEJE
RjA2MCAvKiBJbnNwZWN0b3JGcm9udGVuZEFQSURpc3BhdGNoZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9yRnJvbnRlbmRBUElEaXNwYXRjaGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTk2RTU5REIxREYwMEQ5MDAwNjYxMkI5
IC8qIE5hdmlnYXRvcldlYkRyaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBOYXZpZ2F0b3JXZWJEcml2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5OTZFNTlEQzFERjAwRDkwMDA2NjEyQjkgLyogTmF2aWdhdG9yV2ViRHJpdmVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRvcldlYkRyaXZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5OTZFNTlERDFERjAwRDkwMDA2NjEyQjkgLyogTmF2
aWdhdG9yK1dlYkRyaXZlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIk5hdmlnYXRvcitX
ZWJEcml2ZXIuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTlEMUIyRDEyM0FD
MTQzMDAwODExQ0YwIC8qIEluc3BlY3RvckRlYnVnZ2FibGVUeXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckRlYnVnZ2FibGVUeXBlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTlBNTI4RTgxMTdEN0Y1MkYwMEFBOTUxOCAvKiBGbG9hdGluZ09i
amVjdHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxvYXRpbmdP
YmplY3RzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUE1MjhFODIxN0Q3RjUy
RjAwQUE5NTE4IC8qIEZsb2F0aW5nT2JqZWN0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGbG9hdGluZ09iamVjdHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OUFCMUYzN0UxOEUyNDg5QTAwNTM0NzQzIC8qIENTU1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVG9MZW5ndGhDb252ZXJzaW9uRGF0
YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QUIxRjM3RjE4RTI0ODlBMDA1MzQ3
NDMgLyogQ1NTVG9MZW5ndGhDb252ZXJzaW9uRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDU1NUb0xlbmd0aENvbnZlcnNpb25EYXRhLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUFDNkYwMjIyMTE0OEY1MTAwQ0JEQTA2IC8qIE1lZGlhRW5n
aW5lQ29uZmlndXJhdGlvbkZhY3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeS5jcHA7IHBhdGggPSBtZWRp
YWNhcGFiaWxpdGllcy9NZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUFDNkYwMjUyMTE0OEY1NDAwQ0JEQTA2IC8qIE1lZGlh
RW5naW5lQ29uZmlndXJhdGlvbkZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeS5oOyBwYXRoID0gbWVkaWFjYXBh
YmlsaXRpZXMvTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5QUM2RjAyRDIxMTQ4RjlGMDBDQkRBMDYgLyogTWVkaWFFbmdpbmVD
b25maWd1cmF0aW9uRmFjdG9yeU1vY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeU1vY2suY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5QUM2RjAyRjIxMTQ4RkEyMDBDQkRBMDYgLyogTWVkaWFF
bmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeU1vY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeU1vY2suaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUFDQzA3OTQyNUM3MjVFRDAwREM2Mzg2IC8qIE1lZGlhS2V5
U3lzdGVtUmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBN
ZWRpYUtleVN5c3RlbVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
QUNDMDc5NzI1QzcyNjc2MDBEQzYzODYgLyogTWVkaWFLZXlTeXN0ZW1Db250cm9sbGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhS2V5U3lzdGVtQ29udHJv
bGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlBQ0MwN0E1MjVDODEwREYw
MERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbVJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTWVkaWFLZXlTeXN0ZW1SZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTlBQ0MwN0E3MjVDODExMEQwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNsaWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUtleVN5c3RlbUNsaWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QUNDMDdBRTI1QzgxNDFDMDBEQzYz
ODYgLyogTWVkaWFLZXlTeXN0ZW1Db250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhS2V5U3lzdGVtQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5QjAyRTBDMzIzNUU3NkFBMDA0MDQ0QjIgLyogVGV4dE1hbmlwdWxhdGlvbkNv
bnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUIwMkUwQzQyMzVFNzZBQTAwNDA0NEIyIC8q
IFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRN
YW5pcHVsYXRpb25Db250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OUIwM0Q4MDYxQkIzMTEwRDAwQjczRjY0IC8qIFJlYWRhYmxlQnl0ZVN0cmVhbUludGVybmFsc0J1
aWx0aW5zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFJlYWRhYmxlQnl0ZVN0
cmVhbUludGVybmFsc0J1aWx0aW5zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1Jl
YWRhYmxlQnl0ZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCTlCMDNEODA2MUJCMzExMEQwMEI3NjRDOSAvKiBTdHJlYW1JbnRl
cm5hbHNCdWlsdGlucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTdHJlYW1J
bnRlcm5hbHNCdWlsdGlucy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9TdHJlYW1J
bnRlcm5hbHNCdWlsdGlucy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQk5QjAzRDgwNjFCQjMxMTBEMDBCNzY0RDggLyogUmVhZGFibGVTdHJlYW1CdWlsdGlucy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBSZWFkYWJsZVN0cmVhbUJ1aWx0aW5zLmg7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1JlYWRhYmxlU3RyZWFtQnVpbHRpbnMuaDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJOUIwM0Q4MDYxQkIzMTEwRDAw
Qjc2NEQ5IC8qIFJlYWRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gUmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5oOyBw
YXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9SZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0
aW5zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTlCMDNEODA2MUJC
MzExMEQwMEI3NjREQSAvKiBKU0RPTUJpbmRpbmdJbnRlcm5hbHNCdWlsdGlucy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU0RPTUJpbmRpbmdJbnRlcm5hbHNCdWlsdGlucy5o
OyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTUJpbmRpbmdJbnRlcm5hbHNCdWls
dGlucy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5QjAzRDgwNjFC
QjMxMTBEMDBCNzY0RTkgLyogV3JpdGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXcml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0
aW5zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1dyaXRhYmxlU3RyZWFtSW50ZXJu
YWxzQnVpbHRpbnMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJOUIw
M0Q4MDYxQkIzMTEwRDAwQjc2NEVBIC8qIFRyYW5zZm9ybVN0cmVhbUludGVybmFsc0J1aWx0aW5z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFRyYW5zZm9ybVN0cmVhbUludGVy
bmFsc0J1aWx0aW5zLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1RyYW5zZm9ybVN0
cmVhbUludGVybmFsc0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCTlCMDk4QkQ1MUYzRDYwMzMwMDJERDU2MiAvKiBEYXRhVHJhbnNmZXJJdGVtLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFUcmFuc2Zlckl0ZW0uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjA5OEJERDFGM0Q2NzNEMDAyREQ1NjIg
LyogSlNEYXRhVHJhbnNmZXJJdGVtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTRGF0YVRyYW5zZmVySXRlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTlCMDk4QkRFMUYzRDY3M0QwMDJERDU2MiAvKiBKU0RhdGFUcmFuc2Zlckl0ZW0uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEYXRhVHJhbnNmZXJJdGVtLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCMDk4QkRGMUYzRDY3M0QwMDJERDU2MiAvKiBKU0Rh
dGFUcmFuc2Zlckl0ZW1MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRGF0YVRyYW5zZmVySXRlbUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5QjA5OEJFMDFGM0Q2NzNEMDAyREQ1NjIgLyogSlNEYXRhVHJhbnNmZXJJdGVtTGlzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RhdGFUcmFuc2Zlckl0ZW1MaXN0
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCMDk4QkU2MUYzRDZBRjYwMDJERDU2
MiAvKiBKU1N0cmluZ0NhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU3RyaW5nQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5QjA5OEJFNzFGM0Q2QUY2MDAyREQ1NjIgLyogSlNTdHJpbmdDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1N0cmluZ0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTlCMEFCQ0ExMjM2NzlBQjMwMEI0NTA4NSAvKiBFdmVudExvb3Au
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRMb29wLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCMEFCQ0EzMjM2NzlBQ0YwMEI0NTA4NSAvKiBXb3JrZXJF
dmVudExvb3AuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2Vy
RXZlbnRMb29wLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUIwQUJDQTQyMzY3
OUFDRjAwQjQ1MDg1IC8qIFdvcmtlckV2ZW50TG9vcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXb3JrZXJFdmVudExvb3AuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOUIwQUJDQUMyMzZCQjQwQTAwQjQ1MDg1IC8qIFRhc2tTb3VyY2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVGFza1NvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjBGRTg3MzFE
OUUwMkRGMDA0QThBQ0IgLyogRG9jdW1lbnRPclNoYWRvd1Jvb3QuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IERvY3VtZW50T3JTaGFkb3dSb290LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOUIxMjI5QzYyM0ZFNEQ1RjAwOENBNzUxIC8qIE1lZGlhU3RyYXRlZ3kuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTWVkaWFTdHJhdGVneS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk5QjEzMjU3QjFGM0QyQUJBMDBEQUFCNjkgLyogRGF0YVRyYW5zZmVySXRlbUxpc3QuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGF0YVRyYW5zZmVySXRlbUxpc3Qu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjE5QjY3RTFCOTY0RTUyMDAzNDg3
NDUgLyogU2hhZG93Um9vdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2hhZG93Um9vdC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCMUFCMDc5MTY0OEM2OUQwMDUxRjNG
MiAvKiBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEZvcm1Db250cm9s
c0NvbGxlY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjI0REU4QzE1
MTk0Qjk1MDBDNTlDMjcgLyogSFRNTEJESUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSFRNTEJESUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOUIyN0ZDNUUyMzREOUFEQTAwMzk0QTQ2IC8qIFdpbmRvd0V2ZW50TG9vcC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXaW5kb3dFdmVudExvb3AuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OUIyN0ZDNUYyMzREOUFEQjAwMzk0QTQ2IC8qIFdpbmRvd0V2ZW50TG9vcC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXaW5kb3dFdmVudExvb3AuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5QjJEOEE3ODE0OTk3Q0NGMDBFQ0VGM0UgLyogVW5kb1N0ZXAuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVW5kb1N0ZXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOUIzMkNEQTcxM0RGN0ZBOTAwRjM0RDEzIC8qIFJlbmRlcmVkUG9zaXRpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyZWRQb3NpdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5QjMyQ0RBODEzREY3RkE5MDBGMzREMTMgLyogUmVuZGVy
ZWRQb3NpdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5k
ZXJlZFBvc2l0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI0MTcwNjIx
MjU2NjJCMzAwNkIyOEZDIC8qIEFwcGx5QmxvY2tFbGVtZW50Q29tbWFuZC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBseUJsb2NrRWxlbWVudENvbW1hbmQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI0MTcwNjMxMjU2NjJCMzAwNkIyOEZDIC8qIEFwcGx5
QmxvY2tFbGVtZW50Q29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBBcHBseUJsb2NrRWxlbWVudENvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5QjQzNzZFRjIxMTdFODcyMDA5RDAzQTAgLyogVGhyb3dPbkR5bmFtaWNNYXJrdXBJ
bnNlcnRpb25Db3VudEluY3JlbWVudGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRocm93T25EeW5hbWlj
TWFya3VwSW5zZXJ0aW9uQ291bnRJbmNyZW1lbnRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5QjUwQjFEQzE3Q0Q0QzBGMDA4N0Y2M0MgLyogRm9ybU5hbWVkSXRlbS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb3JtTmFtZWRJdGVtLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTlCNTMyRUExMUJBOTI4NTcwMDM4QTgyNyAvKiBTbG90QXNzaWdu
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTbG90QXNzaWdu
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCNTMyRUEyMUJBOTI4NTcw
MDM4QTgyNyAvKiBTbG90QXNzaWdubWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTbG90QXNzaWdubWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjU1
RUVFODFCM0U4ODk4MDA1MzQyQkMgLyogRWRpdG9yQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBFZGl0b3JDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJOUI1NkM5QTgxQzg5MzEyODAwQzQ1NkRGIC8qIEN1c3RvbUVsZW1lbnRSZWFj
dGlvblF1ZXVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1c3RvbUVsZW1lbnRSZWFjdGlvblF1ZXVlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCNTZDOUE5MUM4OTMyOUEwMEM0NTZERiAv
KiBDdXN0b21FbGVtZW50UmVhY3Rpb25RdWV1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDdXN0b21FbGVtZW50UmVhY3Rpb25RdWV1ZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTlCNjExNjQ5MUY2QTU5MzMwMEU5MjNCOCAvKiBXZWJDb250ZW50
UmVhZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvbnRlbnRSZWFkZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjY5RDNCMTFCOThGRjBBMDBFMzUxMkIgLyogSFRN
TFNsb3RFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MU2xvdEVsZW1lbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QjY5RDNCMjFCOThGRkU5MDBFMzUx
MkIgLyogSFRNTFNsb3RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEhUTUxTbG90RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTlCNjlEM0IzMUI5OEZGRTkwMEUzNTEyQiAvKiBIVE1MU2xvdEVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFNsb3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTlCNjlEM0I2MUI5OTEwMDcwMEUzNTEyQiAvKiBKU0hUTUxTbG90RWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxTbG90
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCNjlEM0I3MUI5OTEw
MDcwMEUzNTEyQiAvKiBKU0hUTUxTbG90RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0hUTUxTbG90RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5QjZCQzk2MDFCOTc1OTY2MDA1QUUxRjAgLyogSlNTaGFkb3dSb290LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU2hhZG93Um9vdC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCNkJDOTYxMUI5NzU5NjYwMDVBRTFGMCAvKiBKU1NoYWRv
d1Jvb3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTaGFkb3dSb290Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCNkM0MTUyMTM0NDk0OTAwMDA4NUI2MiAv
KiBTdHJpbmdXaXRoRGlyZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFN0cmluZ1dpdGhEaXJlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI3
MTRFMUUxQzkxMTY2OTAwQUMwRTkyIC8qIEV2ZW50UGF0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBFdmVudFBhdGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5QjcxNEUxRjFDOTExNjY5MDBBQzBFOTIgLyogRXZlbnRQYXRoLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50UGF0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQk5Qjc0MjYwMzIzNEJFOTU2MDBEQjUyRTkgLyogSWRsZVJlcXVlc3RDYWxsYmFj
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJZGxlUmVxdWVzdENhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTlCNzQyNjA0MjM0QkU5NTYwMERCNTJFOSAvKiBJZGxlUmVxdWVzdENh
bGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBJZGxlUmVxdWVzdENhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJOUI3NDI2MDgyMzRCRUE2RTAwREI1MkU5IC8qIElkbGVEZWFkbGluZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJZGxlRGVhZGxpbmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJOUI3NDI2MDkyMzRCRUE2RTAwREI1MkU5IC8qIElkbGVEZWFkbGluZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJZGxlRGVhZGxpbmUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQk5Qjc0MjYwQTIzNEJFQTZFMDBEQjUyRTkgLyogSWRsZURlYWRsaW5lLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBJ
ZGxlRGVhZGxpbmUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5Qjg1NTMwNTIw
RTczM0I1MDA5RUVGNEYgLyogRXZlbnRUYXJnZXRGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEV2ZW50VGFyZ2V0RmFjdG9yeS5jcHA7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0V2ZW50VGFyZ2V0RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCTlCODY0RjAwMjM0QzAyOEEwMDZEMTBFQiAvKiBJZGxl
UmVxdWVzdE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSWRsZVJlcXVlc3RPcHRpb25zLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCODY0RjAxMjM0QzAyOEEwMDZEMTBFQiAvKiBJ
ZGxlUmVxdWVzdE9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IElkbGVSZXF1ZXN0T3B0aW9ucy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCODY0RjA1MjM0QzA4OTMwMDZEMTBFQiAvKiBJZGxl
Q2FsbGJhY2tDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElkbGVDYWxsYmFja0NvbnRyb2xs
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI4NjRGMDcyMzRDMDhBMzAwNkQx
MEVCIC8qIElkbGVDYWxsYmFja0NvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSWRs
ZUNhbGxiYWNrQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlC
OTFEQ0NDMjM4Mzc5MkQwMDBFRUUwRiAvKiBFdmVudExvb3AuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRXZlbnRMb29wLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI5Mjk5QjAx
RjY3OTZBNDAwNjcyM0MyIC8qIFdlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvbnRlbnRSZWFkZXJDb2NvYS5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUI5Q0FEQTcyMTY1REM3NjAwRThEODU4IC8qIEpT
TXV0YXRpb25SZWNvcmRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNdXRhdGlvblJl
Y29yZEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCQTI3M0YzMTcy
MjA2QkIwMDk3Q0U0NyAvKiBMb2dpY2FsU2VsZWN0aW9uT2Zmc2V0Q2FjaGVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJBODI3NzgxRjA2MTU2NTAwRjcxRTc1IC8q
IE5hdmlnYXRpb25EaXNhYmxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBO
YXZpZ2F0aW9uRGlzYWJsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJBQUM0
NTYyMTUxRTM5RTAwM0Q0QTk4IC8qIEdDUmVhY2hhYmxlUmVmLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdD
UmVhY2hhYmxlUmVmLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCQUFDNDU4MjE1
MUU3N0EwMDNENEE5OCAvKiBHQ1JlYWNoYWJsZVJlZi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBH
Q1JlYWNoYWJsZVJlZi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCQUI2QzZB
MTI1NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRWRpdGluZ1N0eWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTlCQUI2QzZCMTI1NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRWRpdGluZ1N0eWxlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOUJBRjNCMjMxMkMxQTM5ODAwMDE0QkYxIC8qIFdyaXRpbmdEaXJl
Y3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV3JpdGluZ0RpcmVjdGlv
bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkM1RjlERTFENUFBRDVEMDAyQjc0
OUQgLyogQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBD
dXN0b21FbGVtZW50UmVnaXN0cnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5
QkM1RjlERjFENUFBRjZBMDAyQjc0OUQgLyogSlNDdXN0b21FbGVtZW50UmVnaXN0cnlDdXN0b20u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21FbGVtZW50
UmVnaXN0cnlDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkM2QzIx
OTEzQ0NDOTdCMDA4RTAzMzcgLyogSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJDNkMyMUExM0NDQzk3QjAwOEUwMzM3IC8q
IEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJOUJDQ0NBNTMyMEU3MDk1RDAwNjhGQjAzIC8qIEV2ZW50RmFjdG9y
eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBFdmVudEZhY3Rvcnku
Y3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9FdmVudEZhY3RvcnkuY3BwOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQk5QkQwQkY5MTEyQTQyQkY1MDA3MkZE
NDMgLyogU2NvcGVkRXZlbnRRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTY29wZWRFdmVudFF1ZXVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCRDBC
RjkyMTJBNDJCRjUwMDcyRkQ0MyAvKiBTY29wZWRFdmVudFF1ZXVlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjb3BlZEV2ZW50UXVldWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5QkQxRjY4MDFGMDQ2MkI4MDAxQzlDREQgLyogTGF5b3V0RGlz
YWxsb3dlZFNjb3BlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dERp
c2FsbG93ZWRTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkQxRjY4MTFG
MDQ2MzEwMDAxQzlDREQgLyogTGF5b3V0RGlzYWxsb3dlZFNjb3BlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExheW91dERpc2FsbG93ZWRTY29wZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlCRDRFOTE0MUM0NjI4NzIwMDUwNjVCQyAvKiBKU0N1
c3RvbUVsZW1lbnRJbnRlcmZhY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNDdXN0b21FbGVtZW50SW50ZXJmYWNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJOUJENEU5MTUxQzQ2Mjg3MjAwNTA2NUJDIC8qIEpTQ3VzdG9tRWxlbWVudEludGVy
ZmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbUVsZW1lbnRJ
bnRlcmZhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJENEU5MTgxQzQ2MkNG
QzAwNTA2NUJDIC8qIEN1c3RvbUVsZW1lbnRSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDdXN0b21FbGVtZW50UmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5QkQ0RTkxOTFDNDYyQ0ZDMDA1MDY1QkMgLyogQ3VzdG9tRWxl
bWVudFJlZ2lzdHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1c3RvbUVs
ZW1lbnRSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkQ4QTk1OTE4
QkVGQzc2MDA5ODdFOUEgLyogQ29sbGVjdGlvbkluZGV4Q2FjaGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29sbGVjdGlvbkluZGV4Q2FjaGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk5QkREMTgyNTFGN0UwNTk5MDBFOEU1NzcgLyogV2ViQ29y
ZVBhc3RlYm9hcmRGaWxlUmVhZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVQYXN0ZWJvYXJk
RmlsZVJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkREMTgyNjFGN0Uw
NUY0MDBFOEU1NzcgLyogV2ViQ29yZVBhc3RlYm9hcmRGaWxlUmVhZGVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdlYkNvcmVQYXN0ZWJvYXJkRmlsZVJlYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTlCRTY3MTA5MUQ1QUVCMDQwMDM0NTUxNCAvKiBKU0N1c3RvbUVsZW1l
bnRSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0N1
c3RvbUVsZW1lbnRSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTlC
RTY3MTBBMUQ1QUVCMDQwMDM0NTUxNCAvKiBKU0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5QkU4NEVEQzI1QzUxMTJFMDA2NjVFOTMgLyog
SlNTdGF0aWNSYW5nZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1N0YXRpY1Jhbmdl
Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJFRDJDQUYxRjdDQzA2
MjAwNjY2MDE4IC8qIFBhc3RlYm9hcmRDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBh
c3RlYm9hcmRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOUJGNDMzNzYx
RjY3NjE5QjAwRTFGRDcxIC8qIFdlYkNvbnRlbnRSZWFkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViQ29udGVudFJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk5QkY5QTg3RTE2NDhERDJGMDAxQzZCMjMgLyogSlNIVE1MRm9ybUNvbnRyb2xzQ29s
bGVjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxG
b3JtQ29udHJvbHNDb2xsZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
OUJGOUE4N0YxNjQ4REQyRjAwMUM2QjIzIC8qIEpTSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRm9ybUNvbnRyb2xzQ29s
bGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5RDYzODAwRjFBRjE2RTE2
MDAzMUExNUMgLyogU3R5bGVTZWxmQWxpZ25tZW50RGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTdHlsZVNlbGZBbGlnbm1lbnREYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTlEQUM3QzUyMUFGMkNBQTEwMDQzN0M0NCAvKiBDU1NDb250ZW50RGlzdHJp
YnV0aW9uVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NT
Q29udGVudERpc3RyaWJ1dGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJOURBQzdDNTMxQUYyQ0FBMTAwNDM3QzQ0IC8qIENTU0NvbnRlbnREaXN0cmlidXRpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NDb250ZW50RGlzdHJpYnV0
aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOURBQzdDNTYxQUYyQ0I2
NDAwNDM3QzQ0IC8qIFN0eWxlQ29udGVudEFsaWdubWVudERhdGEuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVDb250ZW50QWxpZ25tZW50RGF0YS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMDdEMzM1MzE1MkI2MzBFMDAxQjYzOTMgLyogSlNXZWJHTFNo
YWRlclByZWNpc2lvbkZvcm1hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1dlYkdMU2hhZGVyUHJlY2lzaW9uRm9ybWF0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTA3RDMzNTQxNTJCNjMwRTAwMUI2MzkzIC8qIEpTV2ViR0xTaGFkZXJQcmVj
aXNpb25Gb3JtYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJHTFNo
YWRlclByZWNpc2lvbkZvcm1hdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMDdE
MzM1NzE1MkI2MzJEMDAxQjYzOTMgLyogV2ViR0xTaGFkZXJQcmVjaXNpb25Gb3JtYXQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0xTaGFkZXJQcmVjaXNpb25Gb3JtYXQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTA3RDMzNTkxNTJCNjMzRTAwMUI2Mzkz
IC8qIFdlYkdMU2hhZGVyUHJlY2lzaW9uRm9ybWF0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBXZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUEwOENGMTUzMTUyQjc3QjMwMDlDNTc3NSAvKiBXZWJHTFNoYWRlclByZWNpc2lvbkZv
cm1hdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTFNoYWRl
clByZWNpc2lvbkZvcm1hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEwRUUw
REVGMTQ0RjgyMzIwMEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gV2ViR0xEZWJ1Z1NoYWRlcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMEVFMERGMDE0NEY4MjQzMDBGODBCMEQgLyogV2ViR0xEZWJ1Z1JlbmRlcmVySW5m
by5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEwRUUwREYxMTQ0RjgyNTUwMEY4MEIwRCAv
KiBXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdlYkdMRGVidWdSZW5kZXJlckluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMEVFMERGMjE0NEY4MjU1MDBGODBCMEQgLyogV2ViR0xEZWJ1Z1JlbmRlcmVy
SW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTERlYnVnUmVuZGVy
ZXJJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEwRUUwREYzMTQ0RjgyNTUw
MEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBXZWJHTERlYnVnU2hhZGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUEwRUUwREY0MTQ0RjgyNTUwMEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJHTERlYnVnU2hhZGVycy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTA0RUM1MzIyMEEwMTc0MDBDQkY2N0EgLyog
UGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBheW1lbnRD
b29yZGluYXRvckNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDRF
QzU1MjIwQTM5QjQwMENCRjY3QSAvKiBNb2NrUGF5bWVudENvbnRhY3RGaWVsZHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTW9ja1BheW1lbnRDb250YWN0RmllbGRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUExMDRFQzU3MjIwQTM5QjQwMENCRjY3QSAvKiBNb2NrUGF5bWVudENvbnRhY3RG
aWVsZHMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IE1vY2tQYXltZW50Q29udGFjdEZpZWxkcy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExMDRFQzVCMjIwQTNFNDMwMENCRjY3QSAvKiBKU01vY2tQYXlt
ZW50Q29udGFjdEZpZWxkcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vY2tQYXltZW50Q29u
dGFjdEZpZWxkcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDRFQzVDMjIw
QTNFNDQwMENCRjY3QSAvKiBKU01vY2tQYXltZW50Q29udGFjdEZpZWxkcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU01vY2tQYXltZW50Q29udGFjdEZpZWxkcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMTA0RjI0MTE0QzcxRjdBMDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkU1ZHRG9jdW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTA0RjI0MjE0QzcxRjdBMDA5RTJD
MjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ2FjaGVkU1ZHRG9jdW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEw
QkI1ODIxNDg0RTNBNzAwQjJFODdBIC8qIFJlbmRlclNWR1JlY3QuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU1ZHUmVjdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExMEJCNTgzMTQ4NEUzQTcwMEIyRTg3QSAvKiBSZW5kZXJTVkdSZWN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNWR1JlY3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwQkI1ODgxNDg0RTNCMzAwQjJFODdBIC8qIFJl
bmRlclNWR1NoYXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlclNWR1NoYXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwQkI1ODkx
NDg0RTNCMzAwQjJFODdBIC8qIFJlbmRlclNWR1NoYXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbmRlclNWR1NoYXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExMEQ2RTk0MjE0NEM5OTgwMEZERDE0RCAvKiBKU1BheW1lbnRSZXNwb25zZUN1c3RvbS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BheW1lbnRSZXNwb25zZUN1c3RvbS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMERCRjQ2MThGOTIzMTcwMDBENzBDNiAvKiBMZWdh
Y3lQcmV2aWV3TG9hZGVyQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExlZ2FjeVByZXZpZXdMb2FkZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTEwREM3NjgxNDc0N0JBQjAwNUUyNDcxIC8qIFN0eWxlR3JpZERhdGEuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVHcmlkRGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMERDNzY5MTQ3NDdCQUIwMDVFMjQ3MSAvKiBTdHlsZUdy
aWREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlR3JpZERhdGEu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExMERCOUExNEY1REY3NzAwQTAzQjkz
IC8qIFN0eWxlR3JpZEl0ZW1EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFN0eWxlR3JpZEl0ZW1EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMTBE
QjlDMTRGNURGODcwMEEwM0I5MyAvKiBTdHlsZUdyaWRJdGVtRGF0YS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZUdyaWRJdGVtRGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMTNFMDI3MjMzMTgyOTMwMDlDMzNBMCAvKiBQYXltZW50
U2Vzc2lvbkVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRTZXNzaW9uRXJyb3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExM0UwMkEyMzMxOEVCQzAwOUMzM0EwIC8qIFBh
eW1lbnRTZXNzaW9uRXJyb3JDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBheW1lbnRT
ZXNzaW9uRXJyb3JDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExM0Uw
MkIyMzMxQTBFNDAwOUMzM0EwIC8qIEFwcGxlUGF5Q2FuY2VsRXZlbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXBwbGVQYXlDYW5jZWxFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MTEzRTAyQzIzMzFBMEU0MDA5QzMzQTAgLyogQXBwbGVQYXlDYW5jZWxFdmVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBcHBsZVBheUNhbmNlbEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTExNzUwOUMyNDc0NjhFNTAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1l
bnRJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMTc1MDlEMjQ3NDY4RTYwMEQ0RDI2QyAvKiBBcHBs
ZVBheUluc3RhbGxtZW50SXRlbVR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQYXlJbnN0YWxs
bWVudEl0ZW1UeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMTc1MDlFMjQ3
NDY4RTYwMEQ0RDI2QyAvKiBBcHBsZVBheUluc3RhbGxtZW50SXRlbVR5cGUuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFw
cGxlUGF5SW5zdGFsbG1lbnRJdGVtVHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExMTc1MDlGMjQ3NDY4RTcwMEQ0RDI2QyAvKiBBcHBsZVBheUluc3RhbGxtZW50SXRlbS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gQXBwbGVQYXlJbnN0YWxsbWVudEl0ZW0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMTFBRTBDOTFGRkQ2MDUzMDA0NzM0OEIgLyogTWVyY2hhbnRWYWxpZGF0aW9u
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExQUUwQ0ExRkZENjA1MzAwNDczNDhCIC8qIE1lcmNo
YW50VmFsaWRhdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lcmNoYW50VmFsaWRh
dGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExQUUwQ0IxRkZE
NjA1MzAwNDczNDhCIC8qIE1lcmNoYW50VmFsaWRhdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZXJjaGFu
dFZhbGlkYXRpb25FdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMUFF
MEQwMUZGRDYxREUwMDQ3MzQ4QiAvKiBKU01lcmNoYW50VmFsaWRhdGlvbkV2ZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVyY2hhbnRWYWxpZGF0aW9uRXZl
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTFBRTBEMTFGRkQ2MURGMDA0
NzM0OEIgLyogSlNNZXJjaGFudFZhbGlkYXRpb25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU01lcmNoYW50VmFsaWRhdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExMUU4QzAwMUIxRTI4QkUwMDAzQTdDNyAvKiBjb3B5Q3Vyc29yLnBu
ZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdl
LnBuZzsgcGF0aCA9IGNvcHlDdXJzb3IucG5nOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBMTFFOEMwMTFCMUUyOEJFMDAwM0E3QzcgLyogbW92ZUN1cnNvci5wbmcgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5wbmc7IHBhdGggPSBt
b3ZlQ3Vyc29yLnBuZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExRThDMDIxQjFF
MjhCRTAwMDNBN0M3IC8qIG5vcnRoRWFzdFNvdXRoV2VzdFJlc2l6ZUN1cnNvci5wbmcgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5wbmc7IHBh
dGggPSBub3J0aEVhc3RTb3V0aFdlc3RSZXNpemVDdXJzb3IucG5nOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMTFFOEMwMzFCMUUyOEJFMDAwM0E3QzcgLyogbm9ydGhTb3V0aFJlc2l6
ZUN1cnNvci5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBpbWFnZS5wbmc7IHBhdGggPSBub3J0aFNvdXRoUmVzaXplQ3Vyc29yLnBuZzsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTExRThDMDQxQjFFMjhCRTAwMDNBN0M3IC8qIG5vcnRo
V2VzdFNvdXRoRWFzdFJlc2l6ZUN1cnNvci5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBpbWFnZS5wbmc7IHBhdGggPSBub3J0aFdlc3RTb3V0aEVh
c3RSZXNpemVDdXJzb3IucG5nOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTIwQUNB
MDEzRjk5ODM3MDBGRTRBQzcgLyogTGF5b3V0UmVwYWludGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IExheW91dFJlcGFpbnRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMTIwQUNBMTEzRjk5ODQ2MDBGRTRBQzcgLyogTGF5b3V0UmVwYWludGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExheW91dFJlcGFpbnRlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMjcwNUMyMTY1NkJENjUwMEMyRTI3QyAv
KiBHcmlkUG9zaXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JpZFBv
c2l0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMkExMDRFMTY2NDQ0REMw
MDhGQTMxMSAvKiBHcmlkVHJhY2tTaXplLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEdyaWRUcmFja1NpemUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEzNkEw
MEExMTM0REJEMjAwQ0M4RDUwIC8qIFhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTEh0dHBSZXF1ZXN0
UHJvZ3Jlc3NFdmVudFRocm90dGxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTEzNkEwMEIxMTM0REJEMjAwQ0M4RDUwIC8qIFhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRo
cm90dGxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTEh0dHBSZXF1ZXN0
UHJvZ3Jlc3NFdmVudFRocm90dGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEx
M0I2MTY3MjQ3NURGQzUwMEJCRTZERSAvKiBBcHBsZVBheUluc3RhbGxtZW50UmV0YWlsQ2hhbm5l
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUluc3RhbGxtZW50UmV0YWlsQ2hhbm5lbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTNCNjE2OTI0NzVERkM1MDBCQkU2REUgLyog
QXBwbGVQYXlJbnN0YWxsbWVudFJldGFpbENoYW5uZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5SW5zdGFs
bG1lbnRSZXRhaWxDaGFubmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEz
QjYxNkMyNDc1RTMxMDAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudFJldGFpbENoYW5u
ZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheUlu
c3RhbGxtZW50UmV0YWlsQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUExM0I2MTZEMjQ3NUUzMTAwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5zdGFsbG1lbnRDb25maWd1
cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXBwbGVQ
YXlJbnN0YWxsbWVudENvbmZpZ3VyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMTNCNjE2RTI0NzVFMzExMDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50SXRl
bVR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheUluc3Rh
bGxtZW50SXRlbVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEzQjYxNkYy
NDc1RTMxMjAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudFJldGFpbENoYW5uZWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheUluc3RhbGxtZW50UmV0
YWlsQ2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTNCNjE3MDI0NzVF
MzEzMDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50SXRlbS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5SW5zdGFsbG1lbnRJdGVtLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEzQjYxNzEyNDc1RTMxNDAwQkJFNkRFIC8q
IEpTQXBwbGVQYXlJbnN0YWxsbWVudEl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNBcHBsZVBheUluc3RhbGxtZW50SXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMTNCNjE3MjI0NzVFMzE1MDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50
Q29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxl
UGF5SW5zdGFsbG1lbnRDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExM0I2MTczMjQ3NUUzMTYwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5zdGFsbG1lbnRJdGVt
VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5
SW5zdGFsbG1lbnRJdGVtVHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEx
NDA2MTg5MUUyRUNBMEEwMDMyQjM0RSAvKiBNb2NrUHJldmlld0xvYWRlckNsaWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb2NrUHJldmlld0xvYWRlckNsaWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDA2MThBMUUyRUNBMEEwMDMy
QjM0RSAvKiBNb2NrUHJldmlld0xvYWRlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNb2NrUHJldmlld0xvYWRlckNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMTQwOTBGQTFBQTUxRTFEMDA5MTE5MUEgLyogQ29udGVudEZpbHRlclVuYmxv
Y2tIYW5kbGVyQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXJDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTE0MDkwRkMxQUE1MUU0ODAwOTExOTFBIC8qIENvbnRlbnRGaWx0ZXJVbmJs
b2NrSGFuZGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50Rmls
dGVyVW5ibG9ja0hhbmRsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE0NkQz
MTYxRjk5QjUzRDAwRDI5MTk2IC8qIE1vY2tQYXltZW50Q29vcmRpbmF0b3IuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1v
Y2tQYXltZW50Q29vcmRpbmF0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MTQ2RDMxODFGOTlCQ0JBMDBEMjkxOTYgLyogSlNNb2NrUGF5bWVudENvb3JkaW5hdG9yLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ2RDMxOTFGOTlCQ0JCMDBEMjkxOTYg
LyogSlNNb2NrUGF5bWVudENvb3JkaW5hdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExNDZEMzFDMUY5OUM5QzIwMEQyOTE5NiAvKiBNb2NrUGF5bWVudEFk
ZHJlc3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja1BheW1lbnRBZGRyZXNzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExNDZEMzFFMUY5OUM5QzIwMEQyOTE5NiAvKiBNb2NrUGF5bWVu
dEFkZHJlc3MuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IE1vY2tQYXltZW50QWRkcmVzcy5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExNDZEMzFGMUY5OUNBM0QwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50
QWRkcmVzcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vY2tQYXltZW50
QWRkcmVzcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ2RDMyMDFGOTlDQTNF
MDBEMjkxOTYgLyogSlNNb2NrUGF5bWVudEFkZHJlc3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNNb2NrUGF5bWVudEFkZHJlc3MuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBMTQ2RDMyNDFGOTlENjk4MDBEMjkxOTYgLyogTW9ja1BheW1lbnRD
b250YWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tQYXltZW50Q29udGFjdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzI4QzE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQXBwS2l0
U3R1YnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0FLQXBwS2l0U3R1YnMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE0ODMyOEQxODdGNTA4NzAwREE2M0E2
IC8qIFdBS0FwcEtpdFN0dWJzLm0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMub2JqYzsgcGF0aCA9
IFdBS0FwcEtpdFN0dWJzLm07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDgzMjhF
MTg3RjUwODcwMERBNjNBNiAvKiBXQUtDbGlwVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXQUtDbGlwVmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MTQ4MzI4RjE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQ2xpcFZpZXcubSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5vYmpjOyBwYXRoID0gV0FLQ2xpcFZpZXcubTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTE0ODMyOTAxODdGNTA4NzAwREE2M0E2IC8qIFdBS1Jlc3BvbmRlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXQUtSZXNwb25kZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTE0ODMyOTExODdGNTA4NzAwREE2M0E2IC8qIFdBS1Jlc3BvbmRl
ci5tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBhdGggPSBXQUtSZXNwb25kZXIubTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE0ODMyOTIxODdGNTA4NzAwREE2M0E2IC8q
IFdBS1Njcm9sbFZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0FLU2Ny
b2xsVmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzI5MzE4N0Y1MDg3
MDBEQTYzQTYgLyogV0FLU2Nyb2xsVmlldy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IFdBS1Njcm9sbFZpZXcubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExNDgzMjk0MTg3RjUwODcwMERBNjNBNiAvKiBXQUtWaWV3LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdBS1ZpZXcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTE0ODMyOTUxODdGNTA4NzAwREE2M0E2IC8qIFdBS1ZpZXcubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXQUtWaWV3Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMTQ4MzI5NzE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLV2luZG93LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdBS1dpbmRvdy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMTQ4MzI5ODE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLV2luZG93Lm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0FLV2luZG93Lm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzI5OTE4N0Y1MDg3MDBEQTYzQTYgLyogV2Vi
Q29yZVRocmVhZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVGhy
ZWFkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDgzMjlBMTg3RjUwODcwMERB
NjNBNiAvKiBXZWJDb3JlVGhyZWFkLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gV2ViQ29yZVRocmVhZC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTE0ODMyOUIxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRJbnRlcm5hbC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVGhyZWFkSW50ZXJuYWwuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE0ODMyOUMxODdGNTA4NzAwREE2M0E2IC8qIFdl
YkNvcmVUaHJlYWRNZXNzYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkNvcmVUaHJlYWRNZXNzYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDgz
MjlEMTg3RjUwODcwMERBNjNBNiAvKiBXZWJDb3JlVGhyZWFkUnVuLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVUaHJlYWRSdW4uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzI5RTE4N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRo
cmVhZFJ1bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVGhyZWFk
UnVuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDgzMkEwMTg3RjUwODcwMERB
NjNBNiAvKiBXZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzJBMTE4N0Y1MDg3MDBEQTYzQTYgLyog
V2ViQ29yZVRocmVhZFN5c3RlbUludGVyZmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExNDgzMkEzMTg3RjUwODcwMERBNjNBNiAvKiBXS0NvbnRlbnRPYnNlcnZh
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0NvbnRlbnRPYnNlcnZh
dGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ4MzJBNDE4N0Y1MDg3MDBE
QTYzQTYgLyogV0tHcmFwaGljcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
S0dyYXBoaWNzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDgzMkE1MTg3RjUw
ODcwMERBNjNBNiAvKiBXS0dyYXBoaWNzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gV0tHcmFwaGljcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTE0ODMyQTYxODdGNTA4NzAwREE2M0E2IC8qIFdLVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV0tUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MTQ4MzJBNzE4N0Y1MDg3MDBEQTYzQTYgLyogV0tVdGlsaXRpZXMuYyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5jOyBwYXRoID0gV0tVdGlsaXRpZXMuYzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTE0ODMyQTgxODdGNTA4NzAwREE2M0E2IC8qIFdLVXRpbGl0aWVzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExNDgzMkE5MTg3RjUwODcwMERBNjNBNiAvKiBXS1ZpZXcuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUExNDgzMkFBMTg3RjUwODcwMERBNjNBNiAvKiBXS1ZpZXcubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS1ZpZXcubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExNDgzMkFCMTg3RjUwODcwMERBNjNBNiAvKiBXS1ZpZXdQcml2YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLVmlld1ByaXZhdGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE0OTFEQTIxRjg1OUQ4NzAwOTVGNUQ0IC8qIFBh
eW1lbnRTZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRTZXNzaW9uLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDk3ODZDMUFCQUYzMzgwMENFRjdFNCAvKiBDb250ZW50
RmlsdGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbnRlbnRG
aWx0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTQ5Nzg2RDFBQkFGMzM4
MDBDRUY3RTQgLyogQ29udGVudEZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDb250ZW50RmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNDk3
ODcwMUFCQUYzQTUwMENFRjdFNCAvKiBQbGF0Zm9ybUNvbnRlbnRGaWx0ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1Db250ZW50RmlsdGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNEJCMDlFMUY5ODEzQjgwMDYwNUEzNSAvKiBNb2NrUGF5
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrUGF5bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMTVENzUxMjFFNjhGN0IxMDBBMzVGQkMgLyogQmxvYkNhbGxiYWNrLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJsb2JDYWxsYmFjay5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNUQ3NTEzMUU2OEY3QjEwMEEzNUZCQyAvKiBC
bG9iQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvYkNhbGxi
YWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNUQ3NTE0MUU2OEY3QjEwMEEz
NUZCQyAvKiBCbG9iQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEJsb2JDYWxs
YmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNUQ3NTE3MUU2OEY4MzYw
MEEzNUZCQyAvKiBKU0Jsb2JDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0Jsb2JDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExNUQ3NTE4MUU2OEY4MzYwMEEzNUZCQyAvKiBKU0Jsb2JDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Jsb2JDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBMTVFMzFGMTFFMENCMEFBMDA0QjM3MUMgLyogUXVpY2tMb29rLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFF1aWNrTG9vay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTVFMzFGMjFFMENCMEFBMDA0QjM3MUMgLyogUXVpY2tMb29r
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUXVpY2tMb29rLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTVFNkJGMDFFMjEyQTZBMDA4MEFGMzQg
LyogRm91bmRhdGlvbi5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IEZvdW5kYXRpb24uZnJh
bWV3b3JrOyBwYXRoID0gU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Gb3VuZGF0aW9uLmZyYW1l
d29yazsgc291cmNlVHJlZSA9IFNES1JPT1Q7IH07CisJCUExNjRBMjQ0MjEzNEJDNzEwMDUwOTE1
NiAvKiBQYXltZW50TWV0aG9kQ2hhbmdlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudE1l
dGhvZENoYW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNjRBMjQ1
MjEzNEJDNzEwMDUwOTE1NiAvKiBQYXltZW50TWV0aG9kQ2hhbmdlRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTE2NEEyNDYyMTM0QkM3MTAwNTA5MTU2IC8qIFBheW1lbnRNZXRob2RD
aGFuZ2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE2NEEyNTEyMTM0QzFDQjAwNTA5MTU2IC8qIEpTUGF5
bWVudE1ldGhvZENoYW5nZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExNjRBMjUzMjEzNEMxQ0IwMDUwOTE1NiAvKiBKU1BheW1lbnRNZXRob2RDaGFuZ2VFdmVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BheW1lbnRNZXRo
b2RDaGFuZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNjc3REZB
MjEzRTAwNjYwMEEwOEMzNCAvKiBQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMTY3N0RGQzIxM0UwMDY2MDBBMDhDMzQgLyogUGF5bWVudFZhbGlkYXRpb25FcnJvcnMu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFBheW1lbnRWYWxpZGF0aW9uRXJyb3JzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTE2NzdFMDEyMTNFMDFDNTAwQTA4QzM0IC8qIEpTUGF5bWVudFZhbGlkYXRp
b25FcnJvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQYXltZW50VmFs
aWRhdGlvbkVycm9ycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTY3N0UwMjIx
M0UwMUM2MDBBMDhDMzQgLyogSlNQYXltZW50VmFsaWRhdGlvbkVycm9ycy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BheW1lbnRWYWxpZGF0aW9uRXJyb3JzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE2NzdFMDUyMTNFMDI0QzAwQTA4QzM0
IC8qIFBheWVyRXJyb3JGaWVsZHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5ZXJFcnJvckZpZWxkcy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTY3N0UwNzIxM0UwMjRDMDBBMDhDMzQg
LyogUGF5ZXJFcnJvckZpZWxkcy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5ZXJFcnJvckZpZWxkcy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNjc3RTBCMjEzRTAyQTAwMEEwOEMzNCAvKiBBZGRy
ZXNzRXJyb3JzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFkZHJlc3NFcnJvcnMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTE2NzdFMEQyMTNFMDJBMDAwQTA4QzM0IC8qIEFkZHJlc3NFcnJv
cnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEFkZHJlc3NFcnJvcnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMTY3N0UxMTIxM0UwM0M1MDBBMDhDMzQgLyogSlNBZGRyZXNzRXJyb3JzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQWRkcmVzc0Vycm9ycy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTY3N0UxMjIxM0UwM0M2MDBBMDhDMzQgLyogSlNBZGRyZXNz
RXJyb3JzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQWRkcmVz
c0Vycm9ycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExNjc3RTE1MjEzRTAz
RjAwMEEwOEMzNCAvKiBKU1BheWVyRXJyb3JGaWVsZHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNQYXllckVycm9yRmllbGRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUExNjc3RTE2MjEzRTAzRjAwMEEwOEMzNCAvKiBKU1BheWVyRXJyb3JGaWVsZHMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXllckVycm9yRmllbGRz
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE2NzdFMjQyMTQ0NTMyODAwQTA4
QzM0IC8qIEpTUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTE2OUIwNDIyNDhGMDM3QjAwRUU4QjdCIC8qIFBheW1lbnRBUElW
ZXJzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRBUElWZXJzaW9uLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExNjlCMDQ1MjQ4RjA0MTcwMEVFOEI3QiAvKiBQYXltZW50QVBJ
VmVyc2lvbkNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGF5bWVudEFQSVZlcnNpb25D
b2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE3NjNGM0MxRTIwNTIzNDAw
MUQ1OERFIC8qIFdlYkFyY2hpdmVEdW1wU3VwcG9ydC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IFdlYkFyY2hpdmVEdW1wU3VwcG9ydC5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTE3NjNGM0QxRTIwNTIzNDAwMUQ1OERFIC8qIFdlYkFyY2hpdmVE
dW1wU3VwcG9ydC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJBcmNoaXZl
RHVtcFN1cHBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE3NjNGNDAxRTIw
NTg2RTAwMUQ1OERFIC8qIENGTmV0d29yay5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IENG
TmV0d29yay5mcmFtZXdvcms7IHBhdGggPSBTeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NGTmV0
d29yay5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBTREtST09UOyB9OworCQlBMTdDODEyMDBGMkE1
Q0Y3MDA1REFBRUIgLyogSFRNTEVsZW1lbnRGYWN0b3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IEhUTUxFbGVtZW50RmFjdG9yeS5jcHA7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0hUTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCUExN0M4MTIxMEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxl
bWVudEZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSFRNTEVsZW1l
bnRGYWN0b3J5Lmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0hUTUxFbGVtZW50RmFj
dG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBMTdEMjc1RDFF
QUM1Nzk4MDBCRjAxRTcgLyogTWVkaWFTZWxlY3Rpb25PcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TWVkaWFTZWxlY3Rpb25PcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE3
RTRGMjYyMTlCQzAxNjAwRTFDN0VFIC8qIFdlYkNvcmVBZGRpdGlvbnMubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBXZWJDb3JlQWRkaXRpb25zLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMTdGRUU2MzFGODg5MzIyMDAyMUU4MTEgLyogUGF5bWVudFNlc3Npb25CYXNlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBheW1lbnRTZXNzaW9uQmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMTgyRDVCNjFCRTcyMjYyMDA4N0E3Q0MgLyogU2V0dGluZ3NCYXNlQ29jb2EubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTZXR0aW5nc0Jhc2VDb2Nv
YS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE4NUI0MjcxRTgyMTFBMTAwREM5
MTE4IC8qIExlZ2FjeVByZXZpZXdMb2FkZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBMZWdhY3lQcmV2aWV3TG9hZGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMTg1QjQyODFFODIxMUExMDBEQzkxMTggLyogTGVnYWN5UHJldmlld0xvYWRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMZWdhY3lQcmV2aWV3TG9hZGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExODg5MEFDMUFBMTNGMjUwMDI2QzMw
MSAvKiBQYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTg4OTBBRDFBQTEzRjI1MDAyNkMzMDEgLyog
UGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTE4RjdBMzUxRUNBNzM2NDAwNTlFMUUxIC8qIFJ1bnRpbWVBcHBsaWNh
dGlvbkNoZWNrcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSdW50aW1lQXBwbGljYXRpb25DaGVj
a3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTk1NkYxODIzMzFBNDY4MDA1
N0U5RDIgLyogQXBwbGVQYXlDYW5jZWxFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlDYW5jZWxFdmVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExOTU2RjFBMjMzMUE2NDYwMDU3
RTlEMiAvKiBKU0FwcGxlUGF5Q2FuY2VsRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNB
cHBsZVBheUNhbmNlbEV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE5
NTZGMUIyMzMxQTY0NjAwNTdFOUQyIC8qIEpTQXBwbGVQYXlDYW5jZWxFdmVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0FwcGxlUGF5Q2FuY2VsRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTE5NTZGMUQyMzMxQThDNzAwNTdFOUQyIC8qIEFwcGxlUGF5U2Vzc2lvbkVycm9yLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5U2Vzc2lvbkVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExOTU2RjFGMjMzMUE4QzcwMDU3RTlEMiAvKiBBcHBsZVBheVNlc3Npb25F
cnJvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlTZXNzaW9uRXJyb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMTlBRUExQzFBQUE3QzQ5MDBCNTJCMjUgLyogTW9ja0NvbnRlbnRGaWx0
ZXJTZXR0aW5ncy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gTW9ja0NvbnRlbnRGaWx0ZXJTZXR0aW5ncy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExOUFFQTFEMUFBQTgwNkUwMEI1MkIyNSAvKiBKU01v
Y2tDb250ZW50RmlsdGVyU2V0dGluZ3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTE5QUVBMUUxQUFBODA2RTAwQjUyQjI1IC8qIEpTTW9ja0NvbnRlbnRG
aWx0ZXJTZXR0aW5ncy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01vY2tD
b250ZW50RmlsdGVyU2V0dGluZ3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTE5
RDkzNDgxQUExMUIxRTAwQjQ2QzI0IC8qIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTmV0d29ya0V4dGVuc2lv
bkNvbnRlbnRGaWx0ZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExOUQ5MzQ5
MUFBMTFCMUUwMEI0NkMyNCAvKiBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUFBOUFCODFEMjM5MTE1MDBGRUFE
QjMgLyogQ29udGVudEZpbHRlckJsb2NrZWRQYWdlLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7
IHBhdGggPSBDb250ZW50RmlsdGVyQmxvY2tlZFBhZ2UuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTFBREFGNzkyMzYwRUY2QzAwOUNCNzc2IC8qIFByZXZpZXdDb252ZXJ0ZXIu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJldmlld0NvbnZlcnRlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExQURBRjdCMjM2MEZEM0QwMDlDQjc3NiAvKiBQcmV2aWV3Q29u
dmVydGVyQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByZXZpZXdD
b252ZXJ0ZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFBREFGN0My
MzYwRkQzRTAwOUNCNzc2IC8qIFByZXZpZXdDb252ZXJ0ZXJQcm92aWRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBQcmV2aWV3Q29udmVydGVyUHJvdmlkZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFBRkVERTQxRjhCRkY2RDAwODcwMTNGIC8qIE1vY2tQ
YXltZW50Q29vcmRpbmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja1BheW1lbnRDb29yZGluYXRv
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUFGRURFNTFGOEJGRjZEMDA4NzAx
M0YgLyogTW9ja1BheW1lbnRDb29yZGluYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb2Nr
UGF5bWVudENvb3JkaW5hdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFC
NUIyOUMxQUFBODQ2RTAwOEI2MDQyIC8qIE1vY2tDb250ZW50RmlsdGVyU2V0dGluZ3MuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9ja0NvbnRlbnRGaWx0ZXJTZXR0
aW5ncy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQjVCMjlEMUFBQTg0NkUw
MDhCNjA0MiAvKiBNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1vY2tDb250ZW50RmlsdGVyU2V0dGluZ3MuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTFCODlCOEQyMjFFMDFFRjAwRUI0Q0VBIC8qIFNES1ZhcmlhbnQu
eGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gU0RLVmFyaWFudC54Y2NvbmZpZzsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTFCQjg1OTkyMTU5QUVBMTAwNjdFMDdEIC8qIEFwcGxlUGF5RXJy
b3JDb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5RXJyb3JDb2RlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExQkI4NTlCMjE1OUFFQTEwMDY3RTA3RCAvKiBBcHBsZVBheUVy
cm9yQ29kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlFcnJvckNvZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMUJCODVBMDIxNTlBRjU3MDA2N0UwN0QgLyogQXBwbGVQYXlFcnJvckNv
bnRhY3RGaWVsZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUVycm9yQ29udGFjdEZpZWxkLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQkI4NUEyMjE1OUFGNTcwMDY3RTA3RCAv
KiBBcHBsZVBheUVycm9yQ29udGFjdEZpZWxkLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcHBsZVBheUVycm9yQ29udGFj
dEZpZWxkLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFCQjg1QTYyMTU5QjAy
QzAwNjdFMDdEIC8qIE1vY2tQYXltZW50RXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja1BheW1l
bnRFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUJCODVBODIxNTlCMDJD
MDA2N0UwN0QgLyogTW9ja1BheW1lbnRFcnJvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTW9ja1BheW1lbnRFcnJvci5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQkI4NUFDMjE1OUIxOUYwMDY3RTA3
RCAvKiBKU0FwcGxlUGF5RXJyb3JDb250YWN0RmllbGQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheUVycm9yQ29udGFjdEZpZWxkLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFCQjg1QUQyMTU5QjFBMDAwNjdFMDdEIC8qIEpTQXBw
bGVQYXlFcnJvckNvZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNBcHBsZVBheUVycm9yQ29kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEx
QkI4NUFFMjE1OUIxQTAwMDY3RTA3RCAvKiBKU0FwcGxlUGF5RXJyb3JDb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlFcnJvckNvZGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFCQjg1QUYyMTU5QjFBMDAwNjdFMDdEIC8qIEpTQXBwbGVQ
YXlFcnJvckNvbnRhY3RGaWVsZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0FwcGxlUGF5RXJyb3JDb250YWN0RmllbGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTFCQjg1QjQyMTU5QjM4OTAwNjdFMDdEIC8qIEpTTW9ja1BheW1lbnRFcnJvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vY2tQYXltZW50RXJyb3IuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUJCODVCNTIxNTlCMzhBMDA2N0UwN0Qg
LyogSlNNb2NrUGF5bWVudEVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTTW9ja1BheW1lbnRFcnJvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUJG
NkI4MDFBQTk2QzdEMDBBRjRBOEEgLyogTW9ja0NvbnRlbnRGaWx0ZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9ja0NvbnRlbnRGaWx0ZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBMUJGNkI4MTFBQTk2QzdEMDBBRjRBOEEgLyogTW9ja0Nv
bnRlbnRGaWx0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTW9ja0NvbnRl
bnRGaWx0ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFDMTUwNzcxRTNGMkIz
RTAwMzJDOThDIC8qIFByZXZpZXdDb252ZXJ0ZXJJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBQcmV2aWV3Q29udmVydGVySU9TLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBMUMxNTA3ODFFM0YyQjNFMDAzMkM5OEMgLyogUHJldmlld0NvbnZl
cnRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQcmV2aWV3Q29udmVydGVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQzJDNTc1MUZBMjg1MTYwMEJBNDZG
QSAvKiBQYXltZW50U2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXltZW50U2Vzc2lv
bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQzdGQUExMTMzQTVEMzUwMEQ2
NzMyRCAvKiBKU1hQYXRoUmVzdWx0Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTWFBhdGhSZXN1bHRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMUNCRUY2MzFGOUYxMTI5MDAyOERFN0MgLyogTW9ja1BheW1lbnRNZXRob2Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTW9ja1BheW1lbnRNZXRob2QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTFDQzU2NEMxRjQ2MTQ1MDAwQTQ1NTVCIC8qIEpTUGF5bWVudE1ldGhvZERh
dGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQYXltZW50TWV0aG9kRGF0
YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY0RDFGNDYxNDUxMDBBNDU1
NUIgLyogSlNQYXltZW50TWV0aG9kRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1BheW1lbnRNZXRob2REYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTFDQzU2NEUxRjQ2MTQ1MjAwQTQ1NTVCIC8qIEpTUGF5bWVudENvbXBsZXRlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGF5bWVudENvbXBsZXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0M1NjRGMUY0NjE0NTIwMEE0NTU1QiAvKiBK
U1BheW1lbnRJdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGF5bWVu
dEl0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFDQzU2NTAxRjQ2MTQ1MzAw
QTQ1NTVCIC8qIEpTUGF5bWVudFNoaXBwaW5nVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1BheW1lbnRTaGlwcGluZ1R5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTFDQzU2NTExRjQ2MTQ1NDAwQTQ1NTVCIC8qIEpTUGF5bWVudERldGFpbHNCYXNl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGF5bWVudERldGFpbHNCYXNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0M1NjUyMUY0NjE0NTUwMEE0NTU1
QiAvKiBKU1BheW1lbnREZXRhaWxzTW9kaWZpZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNQYXltZW50RGV0YWlsc01vZGlmaWVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTFDQzU2NTMxRjQ2MTQ1NjAwQTQ1NTVCIC8qIEpTUGF5bWVudE9w
dGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50
T3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0M1NjU0MUY0NjE0
NTcwMEE0NTU1QiAvKiBKU1BheW1lbnRSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTUGF5bWVudFJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMUNDNTY1NTFGNDYxNDU4MDBBNDU1NUIgLyogSlNQYXltZW50RGV0YWlsc0lu
aXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50RGV0
YWlsc0luaXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY1NjFGNDYx
NDU5MDBBNDU1NUIgLyogSlNQYXltZW50RGV0YWlsc0Jhc2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50RGV0YWlsc0Jhc2UuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY1NzFGNDYxNDVBMDBBNDU1NUIgLyogSlNQYXltZW50
UmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BheW1lbnRSZXF1
ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0M1NjU4MUY0NjE0NUIwMEE0
NTU1QiAvKiBKU1BheW1lbnRSZXNwb25zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1BheW1lbnRSZXNwb25zZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUExQ0M1NjU5MUY0NjE0NUMwMEE0NTU1QiAvKiBKU1BheW1lbnRTaGlwcGluZ09wdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BheW1lbnRTaGlwcGluZ09w
dGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY1QTFGNDYxNDVEMDBB
NDU1NUIgLyogSlNQYXltZW50RGV0YWlsc0luaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNQYXltZW50RGV0YWlsc0luaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTFDQzU2NUIxRjQ2MTQ1RTAwQTQ1NTVCIC8qIEpTUGF5bWVudERldGFpbHNNb2RpZmll
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BheW1lbnREZXRhaWxzTW9k
aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFDQzU2NUMxRjQ2MTQ1RjAw
QTQ1NTVCIC8qIEpTUGF5bWVudE9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNQYXltZW50T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MUNDNTY1RDFGNDYxNDYwMDBBNDU1NUIgLyogSlNQYXltZW50Q3VycmVuY3lBbW91bnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50Q3VycmVuY3lBbW91
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY1RTFGNDYxNDYxMDBB
NDU1NUIgLyogSlNQYXltZW50U2hpcHBpbmdUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTUGF5bWVudFNoaXBwaW5nVHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExQ0M1NjVGMUY0NjE0NjEwMEE0NTU1QiAvKiBKU1BheW1lbnRBZGRy
ZXNzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGF5bWVudEFk
ZHJlc3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY2MDFGNDYxNDYy
MDBBNDU1NUIgLyogSlNQYXltZW50Q29tcGxldGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNQYXltZW50Q29tcGxldGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMUNDNTY2MTFGNDYxNDY0MDBBNDU1NUIgLyogSlNQYXltZW50U2hpcHBpbmdP
cHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50
U2hpcHBpbmdPcHRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUNDNTY2
MjFGNDYxNDY1MDBBNDU1NUIgLyogSlNQYXltZW50SXRlbS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1BheW1lbnRJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTFDQzU2NjMxRjQ2MTQ2NjAwQTQ1NTVCIC8qIEpTUGF5bWVudEN1cnJlbmN5
QW1vdW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGF5bWVudEN1cnJl
bmN5QW1vdW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0M1NjY0MUY0NjE0
NjcwMEE0NTU1QiAvKiBKU1BheW1lbnRSZXNwb25zZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1BheW1lbnRSZXNwb25zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMUNDNTY2NTFGNDYxNDY4MDBBNDU1NUIgLyogSlNQYXltZW50QWRkcmVzcy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BheW1lbnRBZGRyZXNzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExQ0ZFMDMxMUY5RTcxMjkwMDY1QzM0NSAvKiBQYXltZW50
QWRkcmVzcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXltZW50QWRkcmVzcy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRDUwNjExMjMzMUVEOTYwMDE0RUU0RSAvKiBKU0Fw
cGxlUGF5U2Vzc2lvbkVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
QXBwbGVQYXlTZXNzaW9uRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFE
NTA2MTMyMzMxRUQ5NzAwMTRFRTRFIC8qIEpTQXBwbGVQYXlTZXNzaW9uRXJyb3IuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVNlc3Npb25FcnJvci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREU3MTJCMTg2MTJBQzEwMDczNDE5
MiAvKiBUb3VjaEV2ZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBUb3VjaEV2ZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QTdD
MUY3RUJEMEIwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBw
bGVQYXlSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QTdFMUY3
RUJEMEIwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5UmVxdWVz
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QTgzMUY3RUJERjIwMDU4
QTQ3NyAvKiBBcHBsZVBheU1lcmNoYW50Q2FwYWJpbGl0eS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBs
ZVBheU1lcmNoYW50Q2FwYWJpbGl0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MURGNUE4NTFGN0VCREYyMDA1OEE0NzcgLyogQXBwbGVQYXlNZXJjaGFudENhcGFiaWxpdHkuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEFwcGxlUGF5TWVyY2hhbnRDYXBhYmlsaXR5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTFERjVBODkxRjdFQzAwMDAwNThBNDc3IC8qIEpTQXBwbGVQYXlNZXJjaGFu
dENhcGFiaWxpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNB
cHBsZVBheU1lcmNoYW50Q2FwYWJpbGl0eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExREY1QThBMUY3RUMwMDAwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5TWVyY2hhbnRDYXBhYmls
aXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlNZXJjaGFu
dENhcGFiaWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFERjVBOEIxRjdF
QzAwMTAwNThBNDc3IC8qIEpTQXBwbGVQYXlSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlSZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUExREY1QThDMUY3RUMwMDEwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5UmVxdWVzdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QTkxMUY3RUM0MzIwMDU4QTQ3
NyAvKiBBcHBsZVBheUNvbnRhY3RGaWVsZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcHBsZVBheUNvbnRh
Y3RGaWVsZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMURGNUE5MzFGN0VDNDMy
MDA1OEE0NzcgLyogQXBwbGVQYXlDb250YWN0RmllbGQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEFwcGxlUGF5Q29udGFj
dEZpZWxkLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFERjVBOTcxRjdFQzhC
RjAwNThBNDc3IC8qIEpTQXBwbGVQYXlDb250YWN0RmllbGQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNBcHBsZVBheUNvbnRhY3RGaWVsZC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMURGNUE5ODFGN0VDOEMwMDA1OEE0NzcgLyogSlNBcHBsZVBheUNvbnRh
Y3RGaWVsZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxl
UGF5Q29udGFjdEZpZWxkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFERjVB
QTAxRjdFRTExMzAwNThBNDc3IC8qIEFwcGxlUGF5UGF5bWVudEhhbmRsZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQXBwbGVQYXlQYXltZW50SGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBMURGNUFBMTFGN0VFMTEzMDA1OEE0NzcgLyogQXBwbGVQYXlQYXltZW50SGFuZGxlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsZVBheVBheW1lbnRIYW5kbGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFERjVBQTQxRjdGNjRCQjAwNThBNDc3IC8qIFBheW1l
bnRIYW5kbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRIYW5kbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExREY1QUE1MUY3RjY0QkIwMDU4QTQ3NyAvKiBQYXltZW50SGFu
ZGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXltZW50SGFuZGxlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QUE4MUY4MDcwRDQwMDU4QTQ3NyAvKiBBcHBsZVBh
eU1lcmNoYW50Q2FwYWJpbGl0eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBcHBsZVBheU1lcmNo
YW50Q2FwYWJpbGl0eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREY1QUFB
MUY4MDc1RjAwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3RCYXNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEFwcGxlUGF5UmVxdWVzdEJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFE
RjVBQUIxRjgwNzVGMDAwNThBNDc3IC8qIEFwcGxlUGF5UmVxdWVzdEJhc2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQXBwbGVQYXlSZXF1ZXN0QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUExREY1QUFDMUY4MDc1RjAwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3RCYXNl
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBBcHBsZVBheVJlcXVlc3RCYXNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTFERjVBQjAxRjgwNzc1MjAwNThBNDc3IC8qIEpTQXBwbGVQYXlSZXF1ZXN0QmFz
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0FwcGxlUGF5UmVx
dWVzdEJhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMURGNUFCMTFGODA3
NzUyMDA1OEE0NzcgLyogSlNBcHBsZVBheVJlcXVlc3RCYXNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTQXBwbGVQYXlSZXF1ZXN0QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMURGNUFCNDFGODA3OEYzMDA1OEE0NzcgLyogQXBwbGVQYXlDb250YWN0
RmllbGQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXBwbGVQYXlDb250YWN0RmllbGQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMURGRDUyMjIzMzQ1OTNBMDA0MkZDREIgLyog
UGF5bWVudFN1bW1hcnlJdGVtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXltZW50U3VtbWFyeUl0ZW1z
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExREZENTI3MjMzNDU5NzMwMDQyRkNE
QiAvKiBQYXltZW50U3VtbWFyeUl0ZW1zQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQ
YXltZW50U3VtbWFyeUl0ZW1zQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUExRTA4NjVBMjQ4OUQyQjAwMEU0OTZEOSAvKiBBcHBsZVBheVNldHVwRmVhdHVyZVN0YXRlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBBcHBsZVBheVNldHVwRmVhdHVyZVN0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTFFMDg2NUMyNDg5RDJCMTAwRTQ5NkQ5IC8qIEFwcGxlUGF5U2V0dXBDb25m
aWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxlUGF5U2V0dXBDb25maWd1cmF0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRTA4NjVEMjQ4OUQyQjEwMEU0OTZEOSAv
KiBBcHBsZVBheVNldHVwQ29uZmlndXJhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlTZXR1cENvbmZp
Z3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUUwODY1RTI0ODlE
MkIxMDBFNDk2RDkgLyogQXBwbGVQYXlTZXR1cEZlYXR1cmVTdGF0ZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBcHBsZVBheVNldHVwRmVhdHVyZVN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUExRTA4NjYxMjQ4OUQzNDEwMEU0OTZEOSAvKiBNb2NrQXBwbGVQYXlTZXR1cEZlYXR1cmUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9ja0FwcGxlUGF5U2V0dXBGZWF0dXJlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFFMDg2NjIyNDg5RDM0MTAwRTQ5NkQ5IC8qIE1v
Y2tBcHBsZVBheVNldHVwRmVhdHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrQXBwbGVQYXlTZXR1
cEZlYXR1cmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFFMDg2NkEyNDhBQUJD
ODAwRTQ5NkQ5IC8qIERlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjZmlsZWxpc3Q7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCI7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExRTA4NjZDMjQ4QUFCQzgwMEU0OTZEOSAvKiBEZXJpdmVkU291cmNlcy1v
dXRwdXQueGNmaWxlbGlzdCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQueGNmaWxlbGlzdDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy1vdXRwdXQu
eGNmaWxlbGlzdCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRTA4NjZEMjQ4QUFC
QzkwMEU0OTZEOSAvKiBVbmlmaWVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNmaWxlbGlzdDsg
cGF0aCA9ICJVbmlmaWVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCI7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExRTA4NjZFMjQ4QUFDODUwMEU0OTZEOSAvKiBnZW5lcmF0ZS11bmlm
aWVkLXNvdXJjZXMuc2ggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0LnNjcmlwdC5zaDsgbmFtZSA9ICJnZW5lcmF0ZS11bmlmaWVkLXNvdXJjZXMu
c2giOyBwYXRoID0gIlNjcmlwdHMvZ2VuZXJhdGUtdW5pZmllZC1zb3VyY2VzLnNoIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFFMDg2NkYyNDhBQUM4NTAwRTQ5NkQ5IC8qIGNoZWNr
LXhjZmlsZWxpc3RzLnNoICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dC5zY3JpcHQuc2g7IG5hbWUgPSAiY2hlY2steGNmaWxlbGlzdHMuc2giOyBw
YXRoID0gIlNjcmlwdHMvY2hlY2steGNmaWxlbGlzdHMuc2giOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBMUUwODY3MDI0OEFBQzg1MDBFNDk2RDkgLyogZ2VuZXJhdGUtZGVyaXZlZC1z
b3VyY2VzLnNoICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dC5zY3JpcHQuc2g7IG5hbWUgPSAiZ2VuZXJhdGUtZGVyaXZlZC1zb3VyY2VzLnNoIjsg
cGF0aCA9ICJTY3JpcHRzL2dlbmVyYXRlLWRlcml2ZWQtc291cmNlcy5zaCI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExRTExNTQzMTMwMTVDM0QwMDU0QUM4QyAvKiBEaXN0YW50TGln
aHRTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzdGFu
dExpZ2h0U291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFFMTE1NDUx
MzAxNUM0RTAwNTRBQzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRMaWdodFNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExRTExNTQ3MTMwMTVDNUQwMDU0QUM4QyAvKiBTcG90TGlnaHRTb3Vy
Y2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BvdExpZ2h0U291
cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFFRDc3OEExQkUzMjkzRjAw
REMxNzkxIC8qIERldmljZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEZXZpY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUVENzc4QjFCRTMy
OTQwMDBEQzE3OTEgLyogRGV2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IERldmljZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY1NURCRjFGNTREMkQ2
MDBFREI3NUYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnlJT1MubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBUZXh0RW5jb2RpbmdSZWdpc3RyeUlPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTFGNTVEQzQxRjU0RDNGMDAwRURCNzVGIC8qIFRleHRFbmNvZGluZ1JlZ2lzdHJ5TWFj
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVGV4dEVuY29kaW5nUmVnaXN0cnlNYWMubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjYwMDQxMUY0NzU3QTkwMDc3RTgzRiAvKiBQ
YXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRSZXF1ZXN0
VXBkYXRlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNjAwNDIxRjQ3
NTdBOTAwNzdFODNGIC8qIFBheW1lbnRSZXF1ZXN0VXBkYXRlRXZlbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExRjYwMDQzMUY0NzU3QTkwMDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVw
ZGF0ZUV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNjAwNDcxRjQ3NTk0RTAwNzdFODNGIC8qIFBheW1l
bnREZXRhaWxzVXBkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnREZXRhaWxzVXBkYXRlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjYwMDQ4MUY0NzU5NEUwMDc3RTgzRiAv
KiBQYXltZW50RGV0YWlsc1VwZGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5bWVudERldGFpbHNVcGRhdGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY2MDA0QjFGNDc1QTVFMDA3N0U4M0Yg
LyogUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudEluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVu
dFJlcXVlc3RVcGRhdGVFdmVudEluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTFGNjAwNEMxRjQ3NUE1RTAwNzdFODNGIC8qIFBheW1lbnRSZXF1ZXN0VXBkYXRlRXZlbnRJbml0
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50SW5pdC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExRjYwMDRGMUY0NzY0RkQwMDc3RTgzRiAvKiBKU1BheW1lbnRE
ZXRhaWxzVXBkYXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
UGF5bWVudERldGFpbHNVcGRhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
MUY2MDA1MDFGNDc2NEZFMDA3N0U4M0YgLyogSlNQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50SW5p
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BheW1lbnRSZXF1ZXN0VXBk
YXRlRXZlbnRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjYwMDUxMUY0
NzY1MDAwMDc3RTgzRiAvKiBKU1BheW1lbnRSZXF1ZXN0VXBkYXRlRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNjAwNTIxRjQ3NjUwMTAwNzdF
ODNGIC8qIEpTUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1BheW1lbnRSZXF1ZXN0VXBkYXRlRXZlbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNjAwNTMxRjQ3NjUwMjAwNzdFODNGIC8qIEpTUGF5bWVudFJl
cXVlc3RVcGRhdGVFdmVudEluaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50SW5pdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExRjYwMDU0MUY0NzY1MDQwMDc3RTgzRiAvKiBKU1BheW1lbnREZXRh
aWxzVXBkYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGF5bWVudERl
dGFpbHNVcGRhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNkNGRkMxRkUw
OTYyMTAwMTgwNzhDIC8qIEFwcGxlUGF5TW9kaWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXBwbGVQ
YXlNb2RpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY2Q0ZGRTFGRTA5
NjIxMDAxODA3OEMgLyogQXBwbGVQYXlNb2RpZmllci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXBwbGVQYXlNb2RpZmll
ci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjZEMDAzMUZFMDk2RjYwMDE4
MDc4QyAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFwcGxl
UGF5UGF5bWVudE1ldGhvZFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFG
NkQwMDUxRkUwOTZGNjAwMTgwNzhDIC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEFwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMUY2RDAwQTFGRTA5OTIxMDAxODA3OEMgLyogSlNBcHBsZVBheU1vZGlmaWVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXBwbGVQYXlNb2RpZmll
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjZEMDBDMUZFMDk5MjIwMDE4
MDc4QyAvKiBKU0FwcGxlUGF5TW9kaWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNBcHBsZVBheU1vZGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUExRjZEMDBEMUZFMDk5NjQwMDE4MDc4QyAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBcHBsZVBheVBheW1l
bnRNZXRob2RUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNkQwMEUx
RkUwOTk2NDAwMTgwNzhDIC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9kVHlwZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNzZCMTAxRjQ0QzI0NTAwMTRDMzE4IC8q
IFBheW1lbnRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRSZXF1ZXN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjExMUY0NEMyNDUwMDE0QzMxOCAvKiBQYXlt
ZW50UmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXltZW50UmVxdWVzdC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjEyMUY0NEMyNDUwMDE0QzMxOCAvKiBQ
YXltZW50UmVxdWVzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5bWVudFJlcXVlc3QuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBMUY3NkIxNjFGNDRDMzkwMDAxNEMzMTggLyogUGF5bWVudE1ldGhv
ZERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudE1ldGhvZERhdGEuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNzZCMTgxRjQ0QzM5MDAwMTRDMzE4IC8qIFBheW1lbnRNZXRo
b2REYXRhLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBQYXltZW50TWV0aG9kRGF0YS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExRjc2QjFDMUY0NEMzRkUwMDE0QzMxOCAvKiBQYXltZW50RGV0YWlsc0Jh
c2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudERldGFpbHNCYXNlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExRjc2QjFFMUY0NEMzRkUwMDE0QzMxOCAvKiBQYXltZW50RGV0YWls
c0Jhc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFBheW1lbnREZXRhaWxzQmFzZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExRjc2QjIyMUY0NEM0OTEwMDE0QzMxOCAvKiBQYXltZW50RGV0YWlsc0lu
aXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudERldGFpbHNJbml0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUExRjc2QjI0MUY0NEM0OTEwMDE0QzMxOCAvKiBQYXltZW50RGV0YWls
c0luaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFBheW1lbnREZXRhaWxzSW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUExRjc2QjI4MUY0NEM0RUYwMDE0QzMxOCAvKiBQYXltZW50T3B0aW9ucy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQYXltZW50T3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMUY3NkIyQTFGNDRDNEVGMDAxNEMzMTggLyogUGF5bWVudE9wdGlvbnMuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFBheW1lbnRPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFG
NzZCMkUxRjQ0QzU1QTAwMTRDMzE4IC8qIFBheW1lbnRJdGVtLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBh
eW1lbnRJdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjMwMUY0NEM1
NUEwMDE0QzMxOCAvKiBQYXltZW50SXRlbS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5bWVudEl0ZW0uaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkIzNDFGNDRDNjBGMDAxNEMzMTggLyogUGF5
bWVudEN1cnJlbmN5QW1vdW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRDdXJyZW5jeUFtb3Vu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkIzNjFGNDRDNjBGMDAxNEMz
MTggLyogUGF5bWVudEN1cnJlbmN5QW1vdW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQYXltZW50Q3VycmVuY3lBbW91
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkIzQTFGNDRDRjI0MDAx
NEMzMTggLyogUGF5bWVudFJlc3BvbnNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRSZXNwb25z
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkIzQjFGNDRDRjI0MDAxNEMz
MTggLyogUGF5bWVudFJlc3BvbnNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBheW1lbnRSZXNw
b25zZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjNDMUY0NENGMjQw
MDE0QzMxOCAvKiBQYXltZW50UmVzcG9uc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBheW1lbnRSZXNwb25zZS5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjQwMUY0NENGN0YwMDE0QzMxOCAv
KiBQYXltZW50QWRkcmVzcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXltZW50QWRkcmVzcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI0MjFGNDRDRjdGMDAxNEMzMTggLyogUGF5
bWVudEFkZHJlc3MuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFBheW1lbnRBZGRyZXNzLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTFGNzZCNDYxRjQ0RDA3QTAwMTRDMzE4IC8qIFBheW1lbnRTaGlwcGlu
Z1R5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF5bWVudFNoaXBwaW5nVHlwZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI0ODFGNDREMDdBMDAxNEMzMTggLyogUGF5bWVudFNo
aXBwaW5nVHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGF5bWVudFNoaXBwaW5nVHlwZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUExRjc2QjRDMUY0NEQyNDIwMDE0QzMxOCAvKiBQYXltZW50RGV0
YWlsc01vZGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnREZXRhaWxzTW9kaWZpZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTFGNzZCNEUxRjQ0RDI0MjAwMTRDMzE4IC8q
IFBheW1lbnREZXRhaWxzTW9kaWZpZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBheW1lbnREZXRhaWxzTW9kaWZpZXIu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI1MjFGNDREMkM3MDAxNEMz
MTggLyogUGF5bWVudFNoaXBwaW5nT3B0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1lbnRTaGlw
cGluZ09wdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI1NDFGNDRE
MkM3MDAxNEMzMTggLyogUGF5bWVudFNoaXBwaW5nT3B0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQYXltZW50U2hp
cHBpbmdPcHRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI1ODFG
NDREM0IyMDAxNEMzMTggLyogUGF5bWVudENvbXBsZXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBheW1l
bnRDb21wbGV0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3NkI1QTFGNDRE
M0IyMDAxNEMzMTggLyogUGF5bWVudENvbXBsZXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQYXltZW50Q29tcGxldGUu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBMjA4RTIyMkE1NkEwQzc1NzVGMkE3MkUgLyogUmVuZGVyTWF0aE1MTWVu
Y2xvc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTWF0aE1MTWVu
Y2xvc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTJCOTIxNzIxNkM1Q0M0MjAw
NDFEQ0Q5IC8qIEludFJlY3RFeHRlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSW50UmVjdEV4dGVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMzFBQzcw
QTI0MzQwOTg0MDA3RjAwQTIgLyogTWVkaWFTdHJhdGVneS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmF0ZWd5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTMxQzRFNEMxNkUwMkFBNjAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxv
YXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEzMUM0RTRFMTZFMDJB
QjQwMDJGNzk1NyAvKiBPRVNUZXh0dXJlSGFsZkZsb2F0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9FU1RleHR1cmVIYWxmRmxvYXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTMxQzRFNTAxNkUwMkFDNTAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IE9FU1RleHR1cmVIYWxmRmxvYXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBMzFDNEU1MTE2RTAyQjA4MDAyRjc5NTcgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTT0VTVGV4dHVyZUhh
bGZGbG9hdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEzMUM0RTUzMTZFMDJC
NDAwMDJGNzk1NyAvKiBKU09FU1RleHR1cmVIYWxmRmxvYXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNPRVNUZXh0dXJlSGFsZkZsb2F0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUEzMzRCRDgyMjE5NEU0NjEwMDAwRDc3RiAvKiBTU0xLZXlHZW5lcmF0b3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1NMS2V5R2VuZXJhdG9y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTMzQzlGOTEyNEY4MzVBQTAwMEYw
ODQ1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDc1JHQi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQ3NSR0IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTMzQzlGOTMyNEY4MzVBQjAwMEYwODQ1IC8qIFdlYkdM
Q29tcHJlc3NlZFRleHR1cmVTM1RDc1JHQi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQ3NSR0IuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMzNDOUY5NDI0RjgzNUFCMDAwRjA4NDUgLyogV2ViR0xDb21w
cmVzc2VkVGV4dHVyZVMzVENzUkdCLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTENv
bXByZXNzZWRUZXh0dXJlUzNUQ3NSR0IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBMzcwNDlEODI1MUQ0QjhFMDA5QkExQjMgLyogRVhURmxvYXRCbGVuZC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gRVhURmxvYXRCbGVuZC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUEzNzA0OURBMjUxRDRCOEUwMDlCQTFCMyAvKiBFWFRGbG9hdEJsZW5kLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVYVEZsb2F0QmxlbmQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTM3MDQ5REIyNTFENEI4RjAwOUJBMUIzIC8qIEVYVEZsb2F0Qmxl
bmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRVhURmxvYXRCbGVu
ZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEzN0E0MkNFMjUxRUI5OTYwMEY3
NUFGRiAvKiBPRVNGQk9SZW5kZXJNaXBtYXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gT0VTRkJPUmVuZGVyTWlwbWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTM3QTQyRDAyNTFFQjk5NjAwRjc1QUZGIC8qIE9FU0ZCT1JlbmRlck1pcG1hcC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPRVNGQk9SZW5kZXJNaXBtYXAuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTM3QTQyRDEyNTFFQjk5NzAwRjc1QUZGIC8q
IE9FU0ZCT1JlbmRlck1pcG1hcC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT0VTRkJPUmVu
ZGVyTWlwbWFwLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTM3QTQyRTAyNTI3
QjQ5QzAwRjc1QUZGIC8qIEVYVFRleHR1cmVDb21wcmVzc2lvblJHVEMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRVhUVGV4dHVyZUNvbXByZXNzaW9uUkdUQy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUEzN0E0MkUyMjUyN0I0OUQwMEY3NUFGRiAv
KiBFWFRUZXh0dXJlQ29tcHJlc3Npb25SR1RDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEVYVFRleHR1cmVDb21wcmVzc2lvblJHVEMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTM3QTQyRTMyNTI3QjQ5RTAwRjc1QUZGIC8qIEVYVFRleHR1cmVDb21wcmVzc2lv
blJHVEMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEVYVFRleHR1cmVDb21wcmVzc2lvblJH
VEMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBM0FGOUQ4MTIwMzI1MkVFMDA2
Q0FEMDYgLyogVXNlckFnZW50Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBVc2VyQWdlbnRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTNBRjlEODIyMDMyNTMyNDAwNkNBRDA2IC8qIFVzZXJBZ2VudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyQWdlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTNBRjlEODMyMDMyNTY5MTAwNkNBRDA2IC8qIFVzZXJBZ2VudElPUy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFVzZXJBZ2VudElPUy5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTNBRjlEODQyMDMyNTZBMzAwNkNBRDA2IC8qIFVzZXJB
Z2VudE1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFVzZXJB
Z2VudE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTNCRjdFRjIyNTZDOEQ3
MjAwNDRCQzc1IC8qIEtIUlBhcmFsbGVsU2hhZGVyQ29tcGlsZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBLSFJQYXJhbGxlbFNoYWRlckNvbXBpbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBM0JGN0VGNDI1NkM4RDcyMDA0NEJDNzUgLyogS0hSUGFyYWxsZWxTaGFkZXJDb21w
aWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEtIUlBhcmFsbGVsU2hhZGVyQ29tcGlsZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBM0JGN0VGNTI1NkM4RDc0MDA0NEJDNzUgLyogS0hSUGFy
YWxsZWxTaGFkZXJDb21waWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBLSFJQYXJhbGxlbFNoYWRlckNvbXBpbGUuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBM0Q0MkE4NDFGMzNCQTM2MDBBNjRCNjIg
LyogTGF5b3V0VW5pdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBM
YXlvdXRVbml0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTQwOUM5ODIxMTZE
MERERDAwNzE5N0JEIC8qIEFjY2Vzc2liaWxpdHlQcm9ncmVzc0luZGljYXRvci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nlc3NpYmlsaXR5UHJvZ3Jlc3NJbmRp
Y2F0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNDA5Qzk4MzExNkQwRERE
MDA3MTk3QkQgLyogQWNjZXNzaWJpbGl0eVByb2dyZXNzSW5kaWNhdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlQcm9ncmVzc0luZGljYXRvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNDIyNkU1OTExNjNENjY3MDA4QjgzOTcgLyog
SlNIVE1MUHJvZ3Jlc3NFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTSFRNTFByb2dyZXNzRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE0MjI2RTVCMTE2M0Q2OTUwMDhCODM5NyAvKiBKU0hUTUxQcm9ncmVzc0VsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MUHJvZ3Jlc3NFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE0MjI2RUE1MTE2M0Q4NEQwMDhCODM5
NyAvKiBIVE1MUHJvZ3Jlc3NFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1M
UHJvZ3Jlc3NFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTQzQkY1
OTYxMTQ5MjkwQTAwQzY0M0NBIC8qIEhUTUxQcm9ncmVzc0VsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFByb2dyZXNzRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE0M0JGNTk3MTE0OTI5MEEwMEM2NDNDQSAvKiBIVE1M
UHJvZ3Jlc3NFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxQ
cm9ncmVzc0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTQzQkY1OUEx
MTQ5MjkyODAwQzY0M0NBIC8qIFJlbmRlclByb2dyZXNzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclByb2dyZXNzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTQzQkY1OUIxMTQ5MjkyODAwQzY0M0NBIC8qIFJlbmRlclByb2dyZXNzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclByb2dyZXNzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE0NTQ0MjQ4MTE5QjM2NjEwMDlCRTkxMiAvKiBIVE1M
TWV0ZXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhU
TUxNZXRlckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNDU0NDI0
OTExOUIzNjYxMDA5QkU5MTIgLyogSFRNTE1ldGVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBIVE1MTWV0ZXJFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE0NTQ0MjRDMTE5QjM2ODcwMDlCRTkxMiAvKiBSZW5kZXJNZXRlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNZXRlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE0NTQ0MjREMTE5QjM2ODcwMDlCRTkxMiAvKiBSZW5k
ZXJNZXRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNZXRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNDU2RkEyNDExQUQ0QTgzMDAyMEI0MjAg
LyogTGFiZWxzTm9kZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTGFiZWxzTm9kZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNDU2
RkEyNTExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTGFiZWxzTm9kZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTQ1NzMyQ0YxQzNBRkQ1OTAxODA2MDhGIC8qIFdvcmtlckFuaW1hdGlvbkNvbnRy
b2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyQW5p
bWF0aW9uQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE0NTcz
M0NGMUQzQUZENTkwMTkwNjA4RiAvKiBXb3JrZXJBbmltYXRpb25Db250cm9sbGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlckFuaW1hdGlvbkNvbnRyb2xsZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTRBNjlCOEJCOTFCNDlEMEE4MDRDMzFEIC8q
IEpTUHJvbWlzZVJlamVjdGlvbkV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTUHJvbWlzZVJlamVjdGlvbkV2ZW50Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTUwMTkyMEMxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9j
YXBpdGFsaXplLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dG9jYXBpdGFs
aXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1MDcxRTgyMUM1NkQwNzkwMDk5
NTFCRSAvKiBSZXNvdXJjZVVzYWdlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZXNvdXJjZVVzYWdlRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
NTA3MUU4MzFDNTZEMDc5MDA5OTUxQkUgLyogUmVzb3VyY2VVc2FnZVRocmVhZC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNvdXJjZVVzYWdlVGhyZWFkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTUwNzFFODQxQzU2RDA3OTAwOTk1MUJFIC8q
IFJlc291cmNlVXNhZ2VUaHJlYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVzb3VyY2VVc2FnZVRocmVhZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTA3
MUU4ODFDNTZENEZBMDA5OTUxQkUgLyogUmVzb3VyY2VVc2FnZVRocmVhZENvY29hLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVzb3VyY2VVc2FnZVRocmVhZENv
Y29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTJCMzQ4QzFGQTNCRDc5MDA4
QjYyNDYgLyogU2VydmljZVdvcmtlckRlYnVnZ2FibGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2VydmljZVdvcmtlckRlYnVnZ2FibGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTUyQjM0OEUxRkEzQkQ3OTAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJEZWJ1
Z2dhYmxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcnZpY2VX
b3JrZXJEZWJ1Z2dhYmxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTUyQjM0
OTMxRkEzRTI4NjAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJbnNwZWN0b3JQcm94eS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJ2aWNlV29ya2VySW5zcGVjdG9yUHJveHku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTUyQjM0OTUxRkEzRTI4NjAwOEI2MjQ2
IC8qIFNlcnZpY2VXb3JrZXJJbnNwZWN0b3JQcm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTZXJ2aWNlV29ya2VySW5zcGVjdG9yUHJveHkuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBNTJCMzQ5QzFGQTQxNkY4MDA4QjYyNDYgLyogV29ya2Vy
RGVidWdnZXJQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrZXJE
ZWJ1Z2dlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1MkQ4NUNBMjFC
MDk4MkYwMDYxQzFFQiAvKiBTZXJ2ZXJUaW1pbmdQYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU2VydmVyVGltaW5nUGFyc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTUyRDg1Q0IyMUIwOTgzMDAwNjFDMUVCIC8qIFNlcnZlclRpbWluZ1BhcnNlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTZXJ2ZXJUaW1pbmdQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTU0MTZGRTMxODgxMEVGODAwMDlGQzVGIC8qIFlvdVR1YmVFbWJlZFNoYWRvd0VsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWW91VHViZUVtYmVkU2hh
ZG93RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NDE2RkU0MTg4
MTBFRjgwMDA5RkM1RiAvKiBZb3VUdWJlRW1iZWRTaGFkb3dFbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFlvdVR1YmVFbWJlZFNoYWRvd0VsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU0QTBDNUYxREI3RjhCNzAwMTdBOTBCIC8qIFdvcmtl
ckluc3BlY3RvckNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1NEEwQzYwMURCN0Y4QjcwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JDb250
cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlckluc3BlY3Rv
ckNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU0QTBDNjMxREI4
MDUzMjAwMTdBOTBCIC8qIFdvcmtlckRlYnVnZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdvcmtlckRlYnVnZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTU0QTBDNjQxREI4MDUzMjAwMTdBOTBCIC8qIFdvcmtlckRlYnVnZ2VyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlckRlYnVnZ2VyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NEEwQzY3MURCODA3RDAwMDE3QTkwQiAvKiBXb3JrZXJU
b1BhZ2VGcm9udGVuZENoYW5uZWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
V29ya2VyVG9QYWdlRnJvbnRlbmRDaGFubmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE1NEEwQzY5MURCODMxRjEwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94eS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXb3JrZXJJbnNwZWN0b3JQcm94
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NEEwQzZBMURCODMxRjIwMDE3
QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXb3JrZXJJbnNwZWN0b3JQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBNTU0QjVGMDFFMzgzOTM2MDAxRDRFMDMgLyogUGVyZm9ybWFuY2VVc2VyVGltaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlVXNlclRp
bWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NTRCNUYxMUUzODM5MzYw
MDFENEUwMyAvKiBQZXJmb3JtYW5jZVVzZXJUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGVyZm9ybWFuY2VVc2VyVGltaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1NTYzOUNGMUM2RUZENTkwMDgwNkQ4RSAvKiBXb3JrZXJDb25zb2xlQ2xpZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlckNvbnNvbGVD
bGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTU2MzlEMDFDNkVGRDU5
MDA4MDZEOEUgLyogV29ya2VyQ29uc29sZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXb3JrZXJDb25zb2xlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE1NzMyQjA4MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRlQ29tcG9uZW50cy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NzMyQjA5MTM2QTE2MUQwMDVDOEQ3QyAvKiBE
YXRlQ29tcG9uZW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRlQ29t
cG9uZW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTc4RjQzMjFERTAwRUQ2
MDAzREZDNkEgLyogUHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFByb21pc2VSZWplY3Rpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE1NzhGNDMzMURFMDBFRDYwMDNERkM2QSAvKiBQcm9taXNlUmVq
ZWN0aW9uRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHJvbWlzZVJl
amVjdGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NzhGNDM0MURF
MDBFRDYwMDNERkM2QSAvKiBQcm9taXNlUmVqZWN0aW9uRXZlbnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFByb21pc2VSZWplY3Rpb25FdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1NzhGNDM5MURFMDEzRkIwMDNERkM2QSAvKiBKU1Byb21pc2VSZWplY3Rpb25F
dmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Byb21pc2VS
ZWplY3Rpb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NzhGNDNB
MURFMDEzRkIwMDNERkM2QSAvKiBKU1Byb21pc2VSZWplY3Rpb25FdmVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Byb21pc2VSZWplY3Rpb25FdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBNTc4RjQzRDFERTBCNjJCMDAzREZDNkEgLyogUmVqZWN0
ZWRQcm9taXNlVHJhY2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZWplY3RlZFByb21pc2VUcmFja2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTU3OEY0M0UxREUwQjYyQjAwM0RGQzZBIC8qIFJlamVjdGVkUHJvbWlzZVRyYWNrZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVqZWN0ZWRQcm9taXNlVHJhY2tlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTgxRUQxMDFGQjI4OEM4MDBDRUQ0RUMg
LyogU2VydmljZVdvcmtlckFnZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNlcnZpY2VXb3JrZXJBZ2VudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTgx
RUQxMjFGQjI4OEM5MDBDRUQ0RUMgLyogU2VydmljZVdvcmtlckFnZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJBZ2VudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1ODQwRTIyMTg3QjhBQzIwMDg0M0IxMCAvKiBXZWJJ
bmplY3RlZFNjcmlwdEhvc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gV2ViSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTU4NDBFMjMxODdCOEFDMjAwODQzQjEwIC8qIFdlYkluamVjdGVkU2NyaXB0SG9zdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJJbmplY3RlZFNjcmlwdEhvc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU4NEZFMjUxODYzN0RBQjAwODQzQjEwIC8q
IENvbW1hbmRMaW5lQVBJTW9kdWxlU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvbW1hbmRMaW5lQVBJTW9kdWxlU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1ODRGRTI3MTg2MzdEQ0EwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVs
ZVNvdXJjZS5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9IENvbW1h
bmRMaW5lQVBJTW9kdWxlU291cmNlLmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
NTg0RkUyOTE4NjM4NzBGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElNb2R1bGUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29tbWFuZExpbmVBUElNb2R1bGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTg0RkUyQTE4NjM4NzBGMDA4NDNCMTAg
LyogQ29tbWFuZExpbmVBUElNb2R1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ29tbWFuZExpbmVBUElNb2R1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTU4NEZFMkQxODY0Q0I4NDAwODQzQjEwIC8qIFdlYkluamVjdGVkU2NyaXB0TWFuYWdlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJJbmplY3RlZFNjcmlwdE1h
bmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTg0RkUyRTE4NjRDQjg0
MDA4NDNCMTAgLyogV2ViSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYkluamVjdGVkU2NyaXB0TWFuYWdlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBNTg0RkUzMTE4NjRENUFGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVB
UElIb3N0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbW1hbmRM
aW5lQVBJSG9zdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1ODRGRTMyMTg2
NEQ1QUYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ29tbWFuZExpbmVBUElIb3N0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1ODRGRTMzMTg2NEQ1QUYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3Qu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENvbW1hbmRMaW5lQVBJSG9zdC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1ODRGRTM5MTg2NEUyRDgwMDg0M0IxMCAvKiBKU0Nv
bW1hbmRMaW5lQVBJSG9zdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0NvbW1hbmRMaW5lQVBJSG9zdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE1ODRGRTNBMTg2NEUyRDgwMDg0M0IxMCAvKiBKU0NvbW1hbmRMaW5lQVBJSG9zdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NvbW1hbmRMaW5lQVBJSG9zdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTg2MEU2ODIzMERFMkUwMDA0NjFBQUUgLyogSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbldlYktpdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTg2
MEU2QTIzMERFMkUxMDA0NjFBQUUgLyogSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc3BlY3Rvckluc3RydW1lbnRhdGlvblB1YmxpYy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1ODYwRTZCMjMwREUyRTEwMDQ2MUFBRSAv
KiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25QdWJsaWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE1ODYwRTZDMjMwREUyRTIwMDQ2MUFBRSAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJL
aXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU4QzU5Q0MxRTM4MkVBOTAwNDc4
NTlDIC8qIEpTUGVyZm9ybWFuY2VNYXJrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VNYXJrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTU4QzU5Q0QxRTM4MkVBOTAwNDc4NTlDIC8qIEpTUGVyZm9ybWFuY2VNYXJrLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VNYXJrLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1OEM1OUNFMUUzODJFQTkwMDQ3ODU5QyAvKiBKU1Bl
cmZvcm1hbmNlTWVhc3VyZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1BlcmZvcm1hbmNlTWVhc3VyZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE1OEM1OUNGMUUzODJFQTkwMDQ3ODU5QyAvKiBKU1BlcmZvcm1hbmNlTWVhc3VyZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlTWVhc3VyZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTkzQ0Y4QTE4NDA1MzUyMDBCRkNFMjcgLyogSW5z
cGVjdG9yV2ViQWdlbnRCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElu
c3BlY3RvcldlYkFnZW50QmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTlD
MjMwNjIxRjI5MjA1MDA0RUM5MzkgLyogSW5zcGVjdG9yQ1BVUHJvZmlsZXJBZ2VudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JDUFVQcm9maWxlckFn
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTU5QzIzMDgyMUYyOTIwNjAw
NEVDOTM5IC8qIEluc3BlY3RvckNQVVByb2ZpbGVyQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yQ1BVUHJvZmlsZXJBZ2VudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBNUEyQUYwOTE4Mjk3MzQzMDBERTE3MjkgLyogUGFnZURlYnVnZ2Fi
bGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZURlYnVnZ2Fi
bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUEyQUYwQTE4Mjk3MzQzMDBE
RTE3MjkgLyogUGFnZURlYnVnZ2FibGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGFnZURlYnVnZ2FibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVBN0FB
NDIxMzJGMEVDQzAwRDNBM0MyIC8qIEF1dG9jYXBpdGFsaXplVHlwZXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQXV0b2NhcGl0YWxpemVUeXBlcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBNUE5OTMzNTFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VP
YnNlcnZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3Jt
YW5jZU9ic2VydmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVBOTkzMzYx
RTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUGVyZm9ybWFuY2VPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNUE5OTMzNzFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNl
cnZlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGVyZm9ybWFuY2VPYnNlcnZlci5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QTk5MzM4MUUzN0ZBRkQwMDVCNUU0RCAv
KiBQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE1QTk5MzM5MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2Vy
dmVyQ2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmZvcm1hbmNlT2JzZXJ2
ZXJDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QTk5MzNBMUUz
N0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxp
c3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUE5OTMzQjFFMzdGQUZEMDA1
QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QTk5MzNDMUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3Jt
YW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQZXJmb3Jt
YW5jZU9ic2VydmVyRW50cnlMaXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTVBOTkzNDIxRTM4MDk5OTAwNUI1RTREIC8qIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUE5OTM0MzFFMzgwOTk5MDA1QjVF
NEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTUGVyZm9ybWFuY2VPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBNUE5OTM0NDFFMzgwOTk5MDA1QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2Fs
bGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNQZXJmb3Jt
YW5jZU9ic2VydmVyQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
NUE5OTM0NTFFMzgwOTk5MDA1QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZU9ic2VydmVy
Q2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVBOTkzNDYxRTM4MDk5
OTAwNUI1RTREIC8qIEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxp
c3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUE5OTM0NzFFMzgwOTk5MDA1
QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUFGQjM0RDExNTE1MUE3MDBCMDQ1Q0IgLyogU3Rl
cFJhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0ZXBSYW5n
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QUZCMzRFMTE1MTUxQTcwMEIw
NDVDQiAvKiBTdGVwUmFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3Rl
cFJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QjgxQzg1MUZBQTQ0MjYw
MDM3RDFFNiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBJbnNwZWN0b3JNZW1vcnlBZ2VudC5jcHA7IHBhdGggPSBpbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3Rvck1lbW9yeUFnZW50LmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9S
T09UOyB9OworCQlBNUI4MUM4NjFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yRE9NQWdlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5zcGVjdG9yRE9NQWdlbnQuaDsg
cGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRE9NQWdlbnQuaDsgc291cmNlVHJlZSA9
IFNPVVJDRV9ST09UOyB9OworCQlBNUI4MUM4NzFGQUE0NDI2MDAzN0QxRTYgLyogV2ViSGVhcEFn
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdlYkhlYXBBZ2Vu
dC5jcHA7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL1dlYkhlYXBBZ2VudC5jcHA7IHNvdXJjZVRy
ZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVCODFDODgxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3Bl
Y3RvckRPTURlYnVnZ2VyQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudC5jcHA7IHBhdGggPSBpbnNwZWN0b3IvYWdl
bnRzL0luc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuY3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCUE1QjgxQzg5MUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JQYWdlQWdlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5zcGVjdG9yUGFnZUFnZW50Lmg7
IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvclBhZ2VBZ2VudC5oOyBzb3VyY2VUcmVl
ID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzhBMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0
b3JXb3JrZXJBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBJbnNwZWN0
b3JXb3JrZXJBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JXb3JrZXJB
Z2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzhCMUZBQTQ0MjYw
MDM3RDFFNiAvKiBJbnNwZWN0b3JUaW1lbGluZUFnZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEluc3BlY3RvclRpbWVsaW5lQWdlbnQuaDsgcGF0aCA9IGluc3BlY3Rvci9h
Z2VudHMvSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7
IH07CisJCUE1QjgxQzhDMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JET01TdG9yYWdlQWdl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5zcGVjdG9yRE9NU3RvcmFn
ZUFnZW50Lmg7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2Vu
dC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzhEMUZBQTQ0MjYwMDM3
RDFFNiAvKiBJbnNwZWN0b3JNZW1vcnlBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBJbnNwZWN0b3JNZW1vcnlBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9J
bnNwZWN0b3JNZW1vcnlBZ2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1
QjgxQzhFMUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJDb25zb2xlQWdlbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViQ29uc29sZUFnZW50Lmg7IHBhdGggPSBpbnNwZWN0b3Iv
YWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJ
CUE1QjgxQzhGMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JMYXllclRyZWVBZ2VudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBJbnNwZWN0b3JMYXllclRyZWVBZ2VudC5o
OyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JMYXllclRyZWVBZ2VudC5oOyBzb3Vy
Y2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzkwMUZBQTQ0MjYwMDM3RDFFNiAvKiBJ
bnNwZWN0b3JET01BZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBJbnNwZWN0b3JET01BZ2VudC5jcHA7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ckRPTUFnZW50LmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQlBNUI4MUM5MTFG
QUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yQ2FudmFzQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gSW5zcGVjdG9yQ2FudmFzQWdlbnQuaDsgcGF0aCA9IGluc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9yQ2FudmFzQWdlbnQuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09U
OyB9OworCQlBNUI4MUM5MjFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yQ1NTQWdlbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSW5zcGVjdG9yQ1NTQWdlbnQu
Y3BwOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JDU1NBZ2VudC5jcHA7IHNvdXJj
ZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVCODFDOTMxRkFBNDQyNjAwMzdEMUU2IC8qIElu
c3BlY3RvckRhdGFiYXNlQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
SW5zcGVjdG9yRGF0YWJhc2VBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0
b3JEYXRhYmFzZUFnZW50Lmg7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVCODFD
OTQxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3Rvck5ldHdvcmtBZ2VudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBJbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDsgcGF0aCA9IGlu
c3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50Lmg7IHNvdXJjZVRyZWUgPSBTT1VS
Q0VfUk9PVDsgfTsKKwkJQTVCODFDOTUxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvclBhZ2VB
Z2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBJbnNwZWN0b3JQ
YWdlQWdlbnQuY3BwOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JQYWdlQWdlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzk2MUZBQTQ0MjYwMDM3
RDFFNiAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBJbnNwZWN0b3JDYW52YXNBZ2VudC5jcHA7IHBhdGggPSBpbnNwZWN0b3Iv
YWdlbnRzL0luc3BlY3RvckNhbnZhc0FnZW50LmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09U
OyB9OworCQlBNUI4MUM5NzFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yQXBwbGljYXRpb25D
YWNoZUFnZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEluc3BlY3RvckFw
cGxpY2F0aW9uQ2FjaGVBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQlB
NUI4MUM5ODFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yV29ya2VyQWdlbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSW5zcGVjdG9yV29ya2VyQWdlbnQuY3Bw
OyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JXb3JrZXJBZ2VudC5jcHA7IHNvdXJj
ZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVCODFDOTkxRkFBNDQyNjAwMzdEMUU2IC8qIFdl
YkNvbnNvbGVBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBX
ZWJDb25zb2xlQWdlbnQuY3BwOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdl
bnQuY3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzlBMUZBQTQ0MjYw
MDM3RDFFNiAvKiBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50LmNwcDsgcGF0aCA9
IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50LmNwcDsgc291cmNlVHJl
ZSA9IFNPVVJDRV9ST09UOyB9OworCQlBNUI4MUM5QjFGQUE0NDI2MDAzN0QxRTYgLyogV2ViRGVi
dWdnZXJBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXZWJEZWJ1Z2dl
ckFnZW50Lmg7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRzL1dlYkRlYnVnZ2VyQWdlbnQuaDsgc291
cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQlBNUI4MUM5QzFGQUE0NDI2MDAzN0QxRTYgLyog
SW5zcGVjdG9yTmV0d29ya0FnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IEluc3BlY3Rvck5ldHdvcmtBZ2VudC5jcHA7IHBhdGggPSBpbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3Rvck5ldHdvcmtBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsK
KwkJQTVCODFDOUQxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckluZGV4ZWREQkFnZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEluc3BlY3RvckluZGV4ZWRE
QkFnZW50LmNwcDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySW5kZXhlZERCQWdl
bnQuY3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQzlFMUZBQTQ0MjYw
MDM3RDFFNiAvKiBJbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBJbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9y
L2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCUE1QjgxQzlGMUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJIZWFwQWdlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViSGVhcEFnZW50Lmg7IHBhdGggPSBpbnNw
ZWN0b3IvYWdlbnRzL1dlYkhlYXBBZ2VudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07
CisJCUE1QjgxQ0EwMUZBQTQ0MjcwMDM3RDFFNiAvKiBJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50LmNwcDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9
OworCQlBNUI4MUNBMTFGQUE0NDI3MDAzN0QxRTYgLyogSW5zcGVjdG9yQ1NTQWdlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5zcGVjdG9yQ1NTQWdlbnQuaDsgcGF0aCA9
IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yQ1NTQWdlbnQuaDsgc291cmNlVHJlZSA9IFNPVVJD
RV9ST09UOyB9OworCQlBNUI4MUNBMjFGQUE0NDI3MDAzN0QxRTYgLyogV2ViRGVidWdnZXJBZ2Vu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBXZWJEZWJ1Z2dlckFn
ZW50LmNwcDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvV2ViRGVidWdnZXJBZ2VudC5jcHA7IHNv
dXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVCODFDQTMxRkFBNDQyNzAwMzdEMUU2IC8q
IEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudC5oOyBwYXRoID0gaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50Lmg7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsg
fTsKKwkJQTVCODFDQTQxRkFBNDQyNzAwMzdEMUU2IC8qIEluc3BlY3RvckxheWVyVHJlZUFnZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEluc3BlY3RvckxheWVy
VHJlZUFnZW50LmNwcDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTGF5ZXJUcmVl
QWdlbnQuY3BwOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUE1QjgxQ0E1MUZBQTQ0
MjcwMDM3RDFFNiAvKiBJbnNwZWN0b3JEYXRhYmFzZUFnZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEluc3BlY3RvckRhdGFiYXNlQWdlbnQuY3BwOyBwYXRoID0g
aW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JEYXRhYmFzZUFnZW50LmNwcDsgc291cmNlVHJlZSA9
IFNPVVJDRV9ST09UOyB9OworCQlBNUI4MUNBNjFGQUE0NDI3MDAzN0QxRTYgLyogSW5zcGVjdG9y
VGltZWxpbmVBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBJ
bnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcDsgcGF0aCA9IGluc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yVGltZWxpbmVBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJQTVC
ODFDQkExRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VIZWFwQWdlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZUhlYXBBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE1QjgxQ0JCMUZBQTQ0QjcwMDM3RDFFNiAvKiBQYWdlQ29uc29sZUFn
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VDb25zb2xlQWdlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVCODFDQkMxRkFBNDRCNzAwMzdEMUU2
IC8qIFBhZ2VIZWFwQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFn
ZUhlYXBBZ2VudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUI4MUNCRDFGQUE0
NEI3MDAzN0QxRTYgLyogUGFnZURlYnVnZ2VyQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUGFnZURlYnVnZ2VyQWdlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNUI4MUNCRTFGQUE0NEI3MDAzN0QxRTYgLyogUGFnZURlYnVnZ2VyQWdl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFnZURlYnVnZ2VyQWdlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVCODFDQkYxRkFBNDRCNzAwMzdEMUU2
IC8qIFBhZ2VSdW50aW1lQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGFnZVJ1bnRpbWVBZ2VudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUI4MUND
MDFGQUE0NEI3MDAzN0QxRTYgLyogUGFnZUNvbnNvbGVBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYWdlQ29uc29sZUFnZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTVCODFDQzExRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VSdW50aW1l
QWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZVJ1bnRp
bWVBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QjgxQ0M3MUZBQTQ0
REEwMDM3RDFFNiAvKiBXb3JrZXJSdW50aW1lQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyUnVudGltZUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTVCODFDQzgxRkFBNDREQTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2Vy
QWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyRGVi
dWdnZXJBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QjgxQ0M5MUZB
QTQ0REEwMDM3RDFFNiAvKiBXb3JrZXJSdW50aW1lQWdlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV29ya2VyUnVudGltZUFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE1QjgxQ0NBMUZBQTQ0REEwMDM3RDFFNiAvKiBXb3JrZXJDb25zb2xlQWdlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyQ29uc29sZUFnZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1QjgxQ0NCMUZBQTQ0REEwMDM3RDFFNiAv
KiBXb3JrZXJDb25zb2xlQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV29ya2VyQ29uc29sZUFnZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTVCODFDQ0MxRkFBNDREQTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2VyQWdlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyRGVidWdnZXJBZ2VudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUM5NzRDRjExNDg1RkYxMDA2NkYyQUIgLyogS2V5
RXZlbnRDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBLZXlFdmVudENv
Y29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1Qzk3NEQwMTE0ODVGRjEwMDY2
RjJBQiAvKiBLZXlFdmVudENvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gS2V5RXZlbnRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTVDQjA1MUYxRkI1MUYxNjAwMDg5Qjk3IC8qIFBhZ2VOZXR3b3JrQWdlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFnZU5ldHdvcmtBZ2VudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1Q0IwNTIxMUZCNTFGMTcwMDA4OUI5NyAvKiBQYWdl
TmV0d29ya0FnZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhZ2VOZXR3
b3JrQWdlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVDQjA1MjIxRkI1MUYy
MzAwMDg5Qjk3IC8qIFdvcmtlck5ldHdvcmtBZ2VudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBXb3JrZXJOZXR3b3JrQWdlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNUNCMDUyMzFGQjUxRjI0MDAwODlCOTcgLyogV29ya2VyTmV0d29ya0Fn
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlck5ldHdvcmtBZ2Vu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNUNFOUYzQzFFNEJDNTg2MDAxQkJF
N0MgLyogUmVzb3VyY2VUaW1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVzb3VyY2VUaW1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVDRTlGM0Ux
RTRDNDE2QjAwMUJCRTdDIC8qIFJlc291cmNlVGltaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlVGltaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTVERUJEOUYxNkZCOTA4NzAwODM2RkUwIC8qIFdlYktpdFBsYXliYWNrVGFy
Z2V0QXZhaWxhYmlsaXR5RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV2ViS2l0UGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1REVCREEwMTZGQjkwODcwMDgzNkZFMCAvKiBXZWJLaXRQ
bGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYktpdFBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTVERUJEQTExNkZCOTA4NzAwODM2RkUwIC8qIFdlYktp
dFBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdlYktpdFBsYXliYWNrVGFyZ2V0QXZhaWxhYmlsaXR5RXZlbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBNUYzNkQzODE4Rjc1ODcyMDA1NEMwMjQgLyogUGFnZURlYnVn
Z2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhZ2VEZWJ1Z2dl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1RjM2RDM5MThGNzU4NzIwMDU0
QzAyNCAvKiBQYWdlRGVidWdnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGFnZURlYnVnZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1RjZFMTZDMTMy
RUQ0NkUwMDhFREFFMyAvKiBBdXRvY2FwaXRhbGl6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBBdXRvY2FwaXRhbGl6ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE2MTQ4QTc2MTJFNDFFM0IwMDQ0QTc4NCAvKiBKU0hUTUxLZXlnZW5FbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEtleWdlbkVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNjE0OEE3NzEyRTQxRTNC
MDA0NEE3ODQgLyogSlNIVE1MS2V5Z2VuRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0hUTUxLZXlnZW5FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE2MTQ4QTdGMTJFNDFFRDEwMDQ0QTc4NCAvKiBIVE1MS2V5Z2VuRWxlbWVudC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEtleWdlbkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBNkQxNjk2MTEzNDZCNDlCMDAwRUI3NzAgLyogU2hhZG93Um9v
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFkb3dSb290LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTZEMTY5NjMxMzQ2QjRDMTAwMEVCNzcw
IC8qIFNoYWRvd1Jvb3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhZG93
Um9vdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNkQ1QTk5QTE2MjlENkZGMDAy
OTczMzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5nTm9kZURl
bGVnYXRlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTZENUE5OUIxNjI5RDcw
MDAwMjk3MzMwIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxl
Z2F0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzE1MUJENzEyRjE1NThGMDA1
QTBGNjQgLyogVGV4dENoZWNrZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gVGV4dENoZWNrZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTcxNUU2NTAxMzRCQkJFQzAwRDhFNzEzIC8qIFByb2dyZXNzU2hhZG93RWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQcm9ncmVzc1NoYWRvd0VsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzE1RTY1MTEzNEJCQkVDMDBEOEU3
MTMgLyogUHJvZ3Jlc3NTaGFkb3dFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFByb2dyZXNzU2hhZG93RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBNzE4NzYwRDBCMkExMjAxMDBBMTZFQ0UgLyogRHJhZ0FjdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHJhZ0FjdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTcxODc4OEYwQjJEMDRBQzAwQTE2RUNFIC8qIERyYWdDb250cm9sbGVyTWFj
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRHJhZ0NvbnRyb2xs
ZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3MUE3MEM5MTFBRkIwMjAw
MDk4OUQ2RCAvKiBIVE1MTWV0ZXJFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBI
VE1MTWV0ZXJFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTcyM0Y3
N0ExNDg0Q0E0QzAwOEM2REJFIC8qIFBsYXRmb3JtRXhwb3J0TWFjcm9zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtRXhwb3J0TWFjcm9zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE3Mjc2M0JFMTY2ODlCRkIwMDJGQ0FDQiAvKiBVc2VyQWN0aW9u
RWxlbWVudFNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyQWN0aW9u
RWxlbWVudFNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzNGOTVGQzEyQzk3
QkZFMDAzMUFBRjkgLyogUm91bmRlZFJlY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUm91bmRlZFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBNzNGOTVGRDEyQzk3QkZFMDAzMUFBRjkgLyogUm91bmRlZFJlY3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUm91bmRlZFJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTc1RTQ5NzQxMDc1MkFDQjAwQzlCODk2IC8qIFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZXJpYWxpemVkU2NyaXB0VmFs
dWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc1RTQ5NzUxMDc1MkFDQjAwQzlC
ODk2IC8qIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNzVFOEI4MDBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRUJsZW5kLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc1RThCODEwRTFERTJENjAwN0YyNDgxIC8qIEZFQmxlbmQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVCbGVuZC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBNzVFOEI4MjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb2xvck1h
dHJpeC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRUNvbG9yTWF0
cml4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc1RThCODMwRTFERTJENjAw
N0YyNDgxIC8qIEZFQ29sb3JNYXRyaXguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRkVDb2xvck1hdHJpeC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzVFOEI4
NDBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb25lbnRUcmFuc2Zlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRUNvbXBvbmVudFRyYW5zZmVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc1RThCODUwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29t
cG9uZW50VHJhbnNmZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVDb21w
b25lbnRUcmFuc2Zlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzVFOEI4NjBF
MURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRkVDb21wb3NpdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBNzVFOEI4NzBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRkVDb21wb3NpdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTc2OUU5NjkxNjY4OUQwQzAwNUQ0NTI5IC8qIFVzZXJBY3Rpb25FbGVtZW50
U2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVzZXJBY3Rpb25F
bGVtZW50U2V0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc2RTVGN0UxMzVF
MERDRjAwQTY5ODM3IC8qIFJlbmRlcmVkRG9jdW1lbnRNYXJrZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyZWREb2N1bWVudE1hcmtlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBNzc5NzkxMzBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlRGF0YS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3Nzk3OTE0MEQ2QjlEMEMwMDM4NTFCOSAvKiBJ
bWFnZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VEYXRhLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3Nzk3OTE1MEQ2QjlEMEMwMDM4NTFCOSAv
KiBJbWFnZURhdGEuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEltYWdlRGF0YS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3Nzk3OTI0MEQ2QjlFNjQwMDM4NTFCOSAvKiBK
U0ltYWdlRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lt
YWdlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3Nzk3OTI1MEQ2QjlF
NjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0ltYWdlRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzdCNDE5
RjEyRTY3NUE5MDA1NDM0M0QgLyogVGV4dEV2ZW50SW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRFdmVudElucHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBNzdEMDAxMTEzM0IwQUVCMDBENjY1OEMgLyogVGV4dENoZWNraW5nLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRDaGVja2luZy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBNzg0OTQxQTBCNUZFNTA3MDAxRTIzN0EgLyogRGF0YVRy
YW5zZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRhVHJh
bnNmZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzhGRTEzOTEyMzY2QjEw
MDBBQ0U4RDAgLyogU3BlbGxDaGVja2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFNwZWxsQ2hlY2tlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE3OEZFMTNBMTIzNjZCMTAwMEFDRThEMCAvKiBTcGVsbENoZWNrZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IGZpbGVF
bmNvZGluZyA9IDQ7IHBhdGggPSBTcGVsbENoZWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTc5NTQ2NDIwQjVDNENCNDAwN0I0MzhGIC8qIERyYWdEYXRhLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERyYWdEYXRhLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTc5QkFEOUQxNjFFN0YzRjAwQzJFNjUyIC8qIFJ1bGVGZWF0dXJl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJ1bGVGZWF0dXJlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTc5QkFEOUUxNjFFN0YzRjAwQzJFNjUy
IC8qIFJ1bGVGZWF0dXJlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJ1bGVG
ZWF0dXJlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3OUJBRDlGMTYxRTdGM0Yw
MEMyRTY1MiAvKiBSdWxlU2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJ1bGVTZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNzlCQURBMDE2
MUU3RjNGMDBDMkU2NTIgLyogUnVsZVNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSdWxlU2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3QTc4Q0Q0MTUz
MkJBNjIwMDZDMjFFNCAvKiBDb250YWluZXJOb2RlQWxnb3JpdGhtcy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250YWluZXJOb2RlQWxnb3JpdGhtcy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3QjRFQTY4MTRDOTM0ODQwMEM4RjVCRiAvKiBK
U01hbGxvY1N0YXRpc3RpY3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNNYWxsb2NTdGF0aXN0aWNzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTdCNEVBNjkxNEM5MzQ4NDAwQzhGNUJGIC8qIEpTTWFsbG9jU3RhdGlzdGljcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01hbGxvY1N0YXRpc3RpY3MuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTdCNEVBNzgxNEM5MzQ4NDAwQzhGNUJGIC8qIEpTSW50ZXJu
YWxTZXR0aW5ncy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lu
dGVybmFsU2V0dGluZ3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0I0RUE3
OTE0QzkzNDg0MDBDOEY1QkYgLyogSlNJbnRlcm5hbFNldHRpbmdzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW50ZXJuYWxTZXR0aW5ncy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBN0I2RTY5RDBCMjkxQTk2MDBEMDUyOUYgLyogRHJhZ0RhdGEuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHJhZ0RhdGEuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTdCQkUyNjQxMUFGQjNGMjAwMDVFQTAzIC8qIEpTSFRNTE1ldGVyRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxNZXRl
ckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0JCRTI2NTExQUZC
M0YyMDAwNUVBMDMgLyogSlNIVE1MTWV0ZXJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTSFRNTE1ldGVyRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBN0JFN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogTWFsbG9jU3RhdGlzdGljcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYWxsb2NTdGF0aXN0aWNzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3QkU3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBNYWxs
b2NTdGF0aXN0aWNzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNYWxsb2NTdGF0aXN0aWNz
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTdCRjdFREMxNEM5MTc1QTAwMTQ0
ODlEIC8qIEludGVybmFsU2V0dGluZ3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSW50ZXJuYWxTZXR0aW5ncy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE3QkY3RUREMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludGVybmFsU2V0dGluZ3MuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTdCRjdFREUxNEM5MTc1QTAwMTQ0ODlEIC8qIEludGVybmFs
U2V0dGluZ3MuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEludGVybmFsU2V0dGluZ3MuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0M5QUJGNjEzNTdBM0JGMDBGNTUwM0Yg
LyogRGV0YWlsc01hcmtlckNvbnRyb2wuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gRGV0YWlsc01hcmtlckNvbnRyb2wuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBN0M5QUJGNzEzNTdBM0JGMDBGNTUwM0YgLyogRGV0YWlsc01hcmtlckNvbnRyb2wu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV0YWlsc01hcmtlckNvbnRyb2wu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTdDQTU5NUIwQjI3QkQ5RTAwRkEwMjFE
IC8qIERyYWdDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERy
YWdDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3Q0E1OTVDMEIy
N0JEOUUwMEZBMDIxRCAvKiBEcmFnQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBEcmFnQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE3Q0E1OTYyMEIyN0MxRjIwMEZBMDIxRCAvKiBEcmFnQ2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERyYWdDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTdDRkIzQ0YwQjdFRDEwQTAwNzBDMzJEIC8qIERyYWdJbWFnZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRHJhZ0ltYWdlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTdDRkIzRDAwQjdFRDEwQTAwNzBDMzJEIC8qIERy
YWdJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRHJhZ0ltYWdlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDAzMThEMEU5MzU0MDMwMEUyNEFDRCAv
KiBKU0ltYWdlRGF0YUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0ltYWdlRGF0YUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE3RDIwRjNCMTA3RjM3MzgwMEE4MDM5MiAvKiBXZWJHTEFjdGl2ZUluZm8uaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFdlYkdMQWN0aXZlSW5mby5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE3RDIwRjYwMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMQWN0aXZlSW5m
by5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDIwRjYxMTA3RjQwNjkwMEE4
MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1dlYkdMQWN0aXZlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
N0QyMEY2QjEwN0Y0MzhCMDBBODAzOTIgLyogV2ViR0xBY3RpdmVJbmZvLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQWN0aXZlSW5mby5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBN0Q2QjM0NzBGNjExMDQ1MDBCNzlGRDEgLyogV29ya2VyU2NyaXB0TG9h
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlclNjcmlwdExvYWRl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0Q2QjM0NzBGNjExMDQ1MDBGRjlG
RDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBN0Q2QjM0ODBGNjExMDQ1MDBCNzlGRDEgLyogV29ya2VyU2NyaXB0TG9hZGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtlclNjcmlwdExvYWRlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RDZCMzQ4MEY2MTEwNDUwMEZGOUZE
MSAvKiBXb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTdEQkY4REIxMjc2OTE5QzAwNkI2MDA4IC8qIFRleHRDaGVja2luZ0hlbHBl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0Q2hlY2tpbmdI
ZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0RCRjhEQzEyNzY5MTlD
MDA2QjYwMDggLyogVGV4dENoZWNraW5nSGVscGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFRleHRDaGVja2luZ0hlbHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODBBMzhGRDBFNTBDQzgyMDBBMjVFQkMgLyogUGF0dGVybkNHLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhdHRlcm5DRy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4MEQ2NzA3MEU5RTlERUIwMEU0MjBGMCAvKiBHcmFwaGljc0NvbnRl
eHRQbGF0Zm9ybVByaXZhdGVDRy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBH
cmFwaGljc0NvbnRleHRQbGF0Zm9ybVByaXZhdGVDRy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBODBFNkNCQTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTVmFsdWVMaXN0LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NWYWx1ZUxpc3QuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBFNkNCQzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NT
UHJpbWl0aXZlVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU1By
aW1pdGl2ZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU2Q0JEMEEx
OTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250RmFjZVJ1bGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENTU0ZvbnRGYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE4MEU2Q0JFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NTaGFkb3dWYWx1ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTU2hhZG93VmFsdWUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDQkYwQTE5ODlDQTAwN0ZCOEM1IC8qIENT
U1ZhbHVlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVmFsdWVM
aXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU2Q0MxMEExOTg5Q0EwMDdG
QjhDNSAvKiBDU1NJbXBvcnRSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NJbXBvcnRSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTgwRTZDQzMwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0ZvbnRWYWx1ZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTRm9udFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4MEU2Q0M0MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTgwRTZDQzUwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1N0eWxlUnVsZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTU3R5bGVSdWxlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDQzYwQTE5ODlDQTAwN0ZCOEM1IC8q
IENTU0luaGVyaXRlZFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDU1NJbmhlcml0ZWRWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4MEU2Q0M3MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250VmFsdWUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0ZvbnRWYWx1ZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4MEU2Q0M4MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NSdWxlTGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUnVsZUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDQ0EwQTE5ODlDQTAwN0ZCOEM1IC8qIENT
U1NoYWRvd1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBD
U1NTaGFkb3dWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU2Q0NC
MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQYWdlUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ1NTUGFnZVJ1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBODBFNkNDQzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTSW1wb3J0UnVsZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODBFNkNDRDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJvcGVy
dHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1Byb3BlcnR5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDQ0UwQTE5ODlDQTAwN0ZC
OEM1IC8qIENTU1Vua25vd25SdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NVbmtub3duUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBFNkNE
MDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1hZ2VWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ1NTSW1hZ2VWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODBFNkNEMTBBMTk4OUNBMDA3RkI4QzUgLyogUGFpci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUGFpci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
ODBFNkNEMjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTTWVkaWFSdWxlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NNZWRpYVJ1bGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBODBFNkNEMzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTRm9udEZhY2VS
dWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGb250RmFjZVJ1bGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDRDQwQTE5ODlDQTAwN0ZCOEM1
IC8qIENTU0ltYWdlVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IENTU0ltYWdlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBF
NkNENTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJvcGVydHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENTU1Byb3BlcnR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE4MEU2Q0Q2MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQYWdlUnVsZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUGFnZVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTgwRTZDRDcwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0luaGVyaXRlZFZhbHVl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NJbmhlcml0ZWRWYWx1ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBFNkNEODBBMTk4OUNBMDA3RkI4QzUg
LyogQ1NTSW5pdGlhbFZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDU1NJbml0aWFsVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
ODBFNkNEOTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTTWVkaWFSdWxlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDU1NNZWRpYVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTgwRTZDREEwQTE5ODlDQTAwN0ZCOEM1IC8qIENvdW50ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvdW50ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTgwRTZDREIwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1ByaW1pdGl2ZVZhbHVlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NQcmltaXRpdmVWYWx1
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU2Q0RDMEExOTg5Q0EwMDdG
QjhDNSAvKiBDU1NSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDU1NSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDREUwQTE5
ODlDQTAwN0ZCOEM1IC8qIENTU0luaXRpYWxWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQ1NTSW5pdGlhbFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE4MEU2Q0RGMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NSdWxlTGlzdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTUnVsZUxpc3QuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODBFNkNFMjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTU3R5bGVS
dWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NTdHlsZVJ1bGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZDRTMwQTE5ODlDQTAwN0ZCOEM1IC8q
IENTU1J1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU1J1bGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTZERjkwQTE5OTA2NzAwN0ZCOEM1IC8q
IFN0eWxlUHJvcGVydGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU3R5bGVQcm9wZXJ0aWVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgw
RTZERkEwQTE5OTA2NzAwN0ZCOEM1IC8qIFN0eWxlUHJvcGVydGllcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVQcm9wZXJ0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE4MEU2RTBEMEExOTkxMUMwMDdGQjhDNSAvKiBDU1NTdHlsZURlY2xhcmF0
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NTdHlsZURlY2xhcmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3MzQ4MEExOTlDNzcwMDdG
QjhDNSAvKiBDU1NTZWxlY3Rvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ1NTU2VsZWN0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBF
NzM0QjBBMTk5Qzc3MDA3RkI4QzUgLyogQ1NTU2VsZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENTU1NlbGVjdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE4MEU3OTk2MEExOUJEMjEwMDdGQjhDNSAvKiBEZXByZWNhdGVkQ1NTT01SZWN0LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVwcmVjYXRlZENTU09NUmVjdC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3OUZDMEExOUMzMDcwMDdGQjhDNSAvKiBIVE1MTWV0
YUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTWV0YUVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBFN0ExNTBBMTlDM0Q2MDA3RkI4QzUg
LyogSlNIVE1MTWV0YUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTSFRNTE1ldGFFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTgwRTdBMTYwQTE5QzNENjAwN0ZCOEM1IC8qIEpTSFRNTE1ldGFFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxNZXRhRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODBFN0FBRTBBMTlEMUYxMDA3RkI4QzUgLyogSFRNTFRp
dGxlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxUaXRsZUVsZW1lbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBFN0FBRjBBMTlEMUYxMDA3RkI4
QzUgLyogSFRNTEJhc2VFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEJh
c2VFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdBQjAwQTE5
RDFGMTAwN0ZCOEM1IC8qIEhUTUxMaW5rRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEhUTUxMaW5rRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
MEU3QUIxMEExOUQxRjEwMDdGQjhDNSAvKiBIVE1MSGVhZEVsZW1lbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBIVE1MSGVhZEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBODBFN0FCMjBBMTlEMUYxMDA3RkI4QzUgLyogSFRNTFN0eWxlRWxlbWVudC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxTdHlsZUVsZW1lbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODBFN0IwMjBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MVGl0
bGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxUaXRs
ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdCMDMwQTE5RDYw
NjAwN0ZCOEM1IC8qIEpTSFRNTExpbmtFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0hUTUxMaW5rRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODBFN0IwNDBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MU3R5bGVFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxTdHlsZUVsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdCMDUwQTE5RDYwNjAwN0ZCOEM1IC8qIEpT
SFRNTFN0eWxlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNIVE1MU3R5bGVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTgwRTdCMDYwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTExpbmtFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxMaW5rRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3QjA3MEExOUQ2MDYwMDdGQjhDNSAvKiBK
U0hUTUxCYXNlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNI
VE1MQmFzZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdCMDgw
QTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTEJhc2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxCYXNlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4MEU3QjA5MEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRs
ZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRN
TFRpdGxlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3QjBB
MEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxIZWFkRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MSGVhZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODBFN0IwQjBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MSGVh
ZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEhlYWRF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3RTE2MEExQTdDQ0Iw
MDdGQjhDNSAvKiBIVE1MVGV4dEFyZWFFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gSFRNTFRleHRBcmVhRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4MEU3RTE3MEExQTdDQ0IwMDdGQjhDNSAvKiBIVE1MSW5wdXRFbGVtZW50LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gSFRNTElucHV0RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE4MEU3RTE4MEExQTdDQ0IwMDdGQjhDNSAvKiBIVE1MT3B0aW9uRWxlbWVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxPcHRpb25FbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdFMTkwQTFBN0NDQjAwN0ZCOEM1IC8qIEhU
TUxPcHRHcm91cEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MT3B0R3Jv
dXBFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdFNTUwQTFB
N0ZCMzAwN0ZCOEM1IC8qIEhUTUxCdXR0b25FbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gSFRNTEJ1dHRvbkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBODBFN0U4RDBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MSW5wdXRFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxJbnB1dEVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdFOEUwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRN
TElucHV0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNIVE1MSW5wdXRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgw
RTdFOEYwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTE9wdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTE9wdGlvbkVsZW1lbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdFOTAwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTE9w
dGlvbkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
SFRNTE9wdGlvbkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODBF
N0U5MTBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MT3B0R3JvdXBFbGVtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxPcHRHcm91cEVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgwRTdFOTIwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRN
TE9wdEdyb3VwRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNIVE1MT3B0R3JvdXBFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQTgwRTdFOTMwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTFRleHRBcmVhRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MVGV4dEFyZWFFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3RTk0MEExQTgzRTMwMDdGQjhDNSAv
KiBKU0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSFRNTFRleHRBcmVhRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4MEU3RTk1MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxCdXR0b25FbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxCdXR0b25FbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MEU3RTk2MEExQTgzRTMwMDdGQjhD
NSAvKiBKU0hUTUxCdXR0b25FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0hUTUxCdXR0b25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTgxMzY5QjAwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxJbnB1dEVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxJbnB1dEVsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QjEwOTczNzRGNTAwRDc0NDYzIC8qIEhU
TUxJbnB1dEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEhUTUxJbnB1dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODEz
NjlCMjA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEZvcm1Db250cm9sRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEZvcm1Db250cm9sRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODEzNjlCMzA5NzM3NEY1MDBENzQ0NjMgLyogSFRN
TEZvcm1Db250cm9sRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE4MTM2OUI0MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MRm9ybUVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGb3JtRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODEzNjlCNTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEZv
cm1FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1M
Rm9ybUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODEzNjlCNjA5
NzM3NEY1MDBENzQ0NjMgLyogSFRNTEJ1dHRvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEhUTUxCdXR0b25FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4MTM2OUI3MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MQnV0dG9uRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEJ1dHRvbkVsZW1l
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODEzNjlCODA5NzM3NEY1MDBE
NzQ0NjMgLyogSFRNTEZpZWxkU2V0RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSFRNTEZpZWxkU2V0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODEzNjlCOTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEZpZWxkU2V0RWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEZpZWxkU2V0RWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTM2OUJBMDk3Mzc0RjUwMEQ3
NDQ2MyAvKiBIVE1MVGV4dEFyZWFFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBIVE1MVGV4dEFyZWFFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE4MTM2OUJCMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MVGV4dEFyZWFFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVGV4dEFyZWFFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QkMwOTczNzRGNTAwRDc0
NDYzIC8qIEhUTUxTZWxlY3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBIVE1MU2VsZWN0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
ODEzNjlCRDA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTFNlbGVjdEVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxTZWxlY3RFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QkUwOTczNzRGNTAwRDc0NDYzIC8qIEhU
TUxPcHRpb25zQ29sbGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SFRNTE9wdGlvbnNDb2xsZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
MTM2OUMwMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0aW9uRWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTE9wdGlvbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QzEwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxPcHRpb25F
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MT3B0
aW9uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTM2OUMyMDk3
Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0R3JvdXBFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBIVE1MT3B0R3JvdXBFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE4MTM2OUMzMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0R3JvdXBFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MT3B0R3Jv
dXBFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QzQwOTcz
NzRGNTAwRDc0NDYzIC8qIEhUTUxMZWdlbmRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBIVE1MTGVnZW5kRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBODEzNjlDNTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTExlZ2VuZEVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxMZWdlbmRFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxMzY5QzYwOTczNzRGNTAwRDc0
NDYzIC8qIEhUTUxMYWJlbEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEhUTUxMYWJlbEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgx
MzY5QzcwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxMYWJlbEVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxMYWJlbEVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODEzNjlDODA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEtl
eWdlbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxLZXln
ZW5FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTM2OUM5MDk3Mzc0
RjYwMEQ3NDQ2MyAvKiBIVE1MS2V5Z2VuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSFRNTEtleWdlbkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBODE4NUYzMTA5NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnRUeXBlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFR5cGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxODVGMzIwOTc2NTc2NTAwNTgyNkQ5IC8qIERvY3Vt
ZW50VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1l
bnRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxODVGMzMwOTc2NTc2
NTAwNTgyNkQ5IC8qIERPTUltcGxlbWVudGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBET01JbXBsZW1lbnRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODE4NUYzNDA5NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTgxODVGMzQ1OTc2NTc2NTAwNTgyNkQ5IC8qIERvY3VtZW50Rm9udExv
YWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRG
b250TG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxODVGMzUwOTc2
NTc2NTAwNTgyNkQ5IC8qIERvY3VtZW50RnJhZ21lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IERvY3VtZW50RnJhZ21lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTgxODVGMzU1OTc2NTc2NTAwNTgyNkQ5IC8qIERvY3VtZW50Rm9udExvYWRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRGb250TG9hZGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTg1RjM2MDk3NjU3NjUwMDU4MjZEOSAvKiBE
T01JbXBsZW1lbnRhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRE9NSW1wbGVtZW50YXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
ODE4NUYzNzA5NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnRGcmFnbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRGcmFnbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTg1RjM4MDk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxODcyMTAwOTc3RDNDMDAwNTgyNkQ5IC8qIE5v
ZGVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb2RlTGlzdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODE4NzIxMTA5NzdEM0MwMDA1ODI2RDkgLyog
Q29udGFpbmVyTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGFp
bmVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODE4NzIxMzA5NzdEM0Mw
MDA1ODI2RDkgLyogTmFtZU5vZGVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBOYW1lTm9kZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgxODcy
MTQwOTc3RDNDMDAwNTgyNkQ5IC8qIENvbnRhaW5lck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29udGFpbmVyTm9kZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTg3MjE1MDk3N0QzQzAwMDU4MjZEOSAv
KiBDaGlsZE5vZGVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGls
ZE5vZGVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MTg3MjE4MDk3N0Qz
QzAwMDU4MjZEOSAvKiBOYW1lZE5vZGVNYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE5hbWVkTm9kZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODE4
NzIxOTA5NzdEM0MwMDA1ODI2RDkgLyogTmFtZU5vZGVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYW1lTm9kZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBODE4NzIxQTA5NzdEM0MwMDA1ODI2RDkgLyogQ2hpbGROb2RlTGlzdC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2hpbGROb2RlTGlzdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4MjM5REZFMDlCM0NGOEEwMEI2MDY0
MSAvKiBMb2dnaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBM
b2dnaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgyMzlERkYwOUIzQ0Y4
QTAwQjYwNjQxIC8qIExvZ2dpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExvZ2dpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgyNEI0NjQwRTJFRjJF
QTAwODFBN0I3IC8qIFRleHRSdW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
VGV4dFJ1bi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODMzQzdGNjBBMkNGMUQ4
MDBENTc2NjQgLyogeG1sYXR0cnMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IHhtbGF0dHJz
LmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODMzQzgwQTBBMkNGMjU2MDBENTc2
NjQgLyogWE1MTmFtZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFhNTE5hbWVzLmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvWE1MTmFtZXMuY3Bw
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBODMzQzgwQjBBMkNGMjU2
MDBENTc2NjQgLyogWE1MTmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFhNTE5hbWVzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1hNTE5hbWVzLmg7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUE4M0I1MzM4MTRGMzk5QkIwMDcy
MEQ5RCAvKiBJRExBdHRyaWJ1dGVzLmpzb24gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmpzb247IG5hbWUgPSBJ
RExBdHRyaWJ1dGVzLmpzb247IHBhdGggPSBzY3JpcHRzL0lETEF0dHJpYnV0ZXMuanNvbjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgzQjUzODAxNEZCQjJFQzAwNzIwRDlEIC8qIHBy
ZXByb2Nlc3MtaWRscy5wbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuc2NyaXB0LnBlcmw7IG5hbWUgPSAicHJl
cHJvY2Vzcy1pZGxzLnBsIjsgcGF0aCA9ICJzY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbCI7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4M0I3OEYyMENDQUZGMTUwMDBCMDgyNSAvKiBK
U1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBODNCNzhGMzBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZVVyaUVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGb250RmFjZVVyaUVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODNCNzhGNDBDQ0FGRjE1
MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZVNyY0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNTVkdGb250RmFjZVNyY0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTgzQjc4RjUwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VT
cmNFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZH
Rm9udEZhY2VTcmNFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgz
Qjc4RjYwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4M0I3OEY3MENDQUZGMTUwMDBCMDgy
NSAvKiBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4M0I3OEY4MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0Zv
bnRGYWNlTmFtZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
VkdGb250RmFjZU5hbWVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
M0I3OEY5MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlTmFtZUVsZW1lbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGb250RmFjZU5hbWVFbGVt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTgzQjc4RkEwQ0NBRkYxNTAw
MEIwODI1IC8qIEpTU1ZHRm9udEZhY2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTU1ZHRm9udEZhY2VFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTgzQjc4RkIwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRm9udEZhY2VF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4M0UxQzcyMEU0OTA0MkIw
MDE0MEI5QyAvKiBTY3JpcHRDb250cm9sbGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gU2NyaXB0Q29udHJvbGxlck1hYy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQTg0RDgyN0IxMUQzMzNFRDAwOTcyOTkwIC8qIFJhd0RhdGFEb2N1bWVu
dFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSYXdEYXRhRG9jdW1l
bnRQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg0RDgyQkYxMUQzNDc0
ODAwOTcyOTkwIC8qIFNjcmlwdGFibGVEb2N1bWVudFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTg0RDgyQzAxMUQzNDc0ODAwOTcyOTkwIC8qIFNjcmlwdGFibGVE
b2N1bWVudFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
Y3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBODRFQkQ4MTBDQjhDOTc3MDAwNzk2MDkgLyogSlNTdHlsZVNoZWV0TGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1N0eWxlU2hlZXRMaXN0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4NEVCRDgyMENCOEM5NzcwMDA3OTYwOSAvKiBKU1N0eWxlU2hl
ZXRMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU3R5bGVT
aGVldExpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODUzMTIzQzExRDA0
NzFCMDBENEQwNzcgLyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODVEN0EyRjA4NzlFQkE5MDA2QTkxNzIgLyogUXVh
cnR6Q29yZS5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgbmFtZSA9IFF1YXJ0ekNvcmUuZnJhbWV3b3Jr
OyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvUXVhcnR6Q29yZS5mcmFtZXdvcms7
IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CisJCUE4NUYyMjA4MTQzMDM3N0QwMDdDQzg4
NCAvKiBKU1BvcFN0YXRlRXZlbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNQb3BTdGF0ZUV2ZW50Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTg2M0UyMDAxMzQzNDEyMDAwMjc0OTI2IC8qIFVuaWNvZGVCaWRpLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFVuaWNvZGVCaWRpLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4NjYyOUM5MDlEQTJCNDcwMDk2MzNBNSAvKiBKU1VJRXZlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVUlFdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODY2MjlDQTA5REEyQjQ3MDA5NjMzQTUgLyogSlNVSUV2
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1VJRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODY2MjlDQjA5REEyQjQ3MDA5NjMz
QTUgLyogSlNNb3VzZUV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U01vdXNlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg2NjI5Q0MwOURB
MkI0NzAwOTYzM0E1IC8qIEpTTW91c2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNNb3VzZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E1IC8qIEpTS2V5Ym9hcmRFdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNLZXlib2FyZEV2ZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNiAvKiBKU0lucHV0
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSW5wdXRFdmVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODY2MjlDRDA5REEyQjQ3MDA5NjMzQTcg
LyogSlNTdGF0aWNSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
dGF0aWNSYW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODY2MjlDRTA5REEy
QjQ3MDA5NjMzQTUgLyogSlNLZXlib2FyZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU0tleWJvYXJkRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTYgLyogSlNJbnB1dEV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lucHV0RXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODY2MjlDRTA5REEyQjQ3MDA5NjMzQTcgLyog
SlNTdGF0aWNSYW5nZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNTdGF0aWNSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFENDRD
MEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MUGx1Z0luRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSFRNTFBsdWdJbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTg3MUQ0NEQwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxQbHVnSW5FbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MUGx1Z0luRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFENDRFMEExMjdDQkMw
MEIxMkE2OCAvKiBIVE1MUGFyYW1FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBIVE1MUGFyYW1FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4NzFENDRGMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MUGFyYW1FbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MUGFyYW1FbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MUQ0NTAwQTEyN0NCQzAwQjEyQTY4IC8qIEhU
TUxPYmplY3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1M
T2JqZWN0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxRDQ1MTBB
MTI3Q0JDMDBCMTJBNjggLyogSFRNTE9iamVjdEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxPYmplY3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MUQ0NTIwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxFbWJlZEVs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxFbWJlZEVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MUQ0NTUwQTEyN0NCQzAwQjEy
QTY4IC8qIEhUTUxFbWJlZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEhUTUxFbWJlZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODcxREIxNzBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxUYWJsZVNlY3Rpb25FbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQjE4MEExNTBCRDYwMEIx
MkE2OCAvKiBIVE1MVGFibGVTZWN0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODcxREIxOTBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxl
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFRhYmxlRWxl
bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREIxQTBBMTUwQkQ2MDBC
MTJBNjggLyogSFRNTFRhYmxlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSFRNTFRhYmxlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE4NzFEQjFCMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFibGVDb2xFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVGFibGVDb2xFbGVt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURCMUMwQTE1MEJENjAw
QjEyQTY4IC8qIEhUTUxUYWJsZUNlbGxFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBIVE1MVGFibGVDZWxsRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBODcxREIxRDBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlQ2FwdGlvbkVsZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxUYWJsZUNhcHRpb25F
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQjFFMEExNTBCRDYw
MEIxMkE2OCAvKiBIVE1MVGFibGVQYXJ0RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSFRNTFRhYmxlUGFydEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQTg3MURCMUYwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZVBhcnRFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVGFibGVQYXJ0
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQjIwMEExNTBC
RDYwMEIxMkE2OCAvKiBIVE1MVGFibGVDZWxsRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBODcxREIyMTBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxl
Q29sRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFRhYmxl
Q29sRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREIyMjBBMTUw
QkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlUm93RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRhYmxlUm93RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQjIzMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFibGVS
b3dFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MVGFibGVS
b3dFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQjI0MEExNTBC
RDYwMEIxMkE2OCAvKiBIVE1MVGFibGVDYXB0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREMxMzBBMTUyMDU3MDBCMTJBNjggLyogSFRN
TEJhc2VFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MQmFz
ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURDMTQwQTE1MjA1
NzAwQjEyQTY4IC8qIEhUTUxMaW5rRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSFRNTExpbmtFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4NzFEQzE1MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MTGlua0VsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxMaW5rRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQzE2MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1M
U2NyaXB0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTFNjcmlwdEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcx
REMxNzBBMTUyMDU3MDBCMTJBNjggLyogSFRNTFN0eWxlRWxlbWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFN0eWxlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBODcxREMxODBBMTUyMDU3MDBCMTJBNjggLyogSFRNTE1ldGFFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MTWV0YUVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURDMTkwQTE1MjA1NzAwQjEyQTY4IC8q
IEhUTUxTY3JpcHRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBI
VE1MU2NyaXB0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREMx
QTBBMTUyMDU3MDBCMTJBNjggLyogSFRNTFN0eWxlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFN0eWxlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQzFCMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MTWV0YUVs
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxNZXRh
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFEQzFDMEExNTIw
NTcwMEIxMkE2OCAvKiBIVE1MVGl0bGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBIVE1MVGl0bGVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE4NzFEQzFEMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MVGl0bGVFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVGl0bGVFbGVtZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURDMUUwQTE1MjA1NzAwQjEyQTY4IC8q
IEhUTUxCYXNlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSFRNTEJhc2VFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3
MURFMTcwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxGcmFtZUVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREUxODBBMTUyQUM4MDBCMTJBNjggLyogSFRNTElG
cmFtZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhU
TUxJRnJhbWVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURF
MTkwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxIZWFkRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEhlYWRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURFMUEwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxIdG1sRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEh0bWxF
bGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURFMUIwQTE1MkFD
ODAwQjEyQTY4IC8qIEhUTUxIdG1sRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSFRNTEh0bWxFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4NzFERTFDMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MRnJhbWVTZXRFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MRnJhbWVTZXRFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFERTFEMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1M
Qm9keUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhU
TUxCb2R5RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFERTFF
MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSUZyYW1lRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSFRNTElGcmFtZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTg3MURFMUYwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxGcmFtZUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxGcmFtZUVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURFMjAwQTE1MkFDODAwQjEyQTY4IC8q
IEhUTUxCb2R5RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRN
TEJvZHlFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFERTIxMEEx
NTJBQzgwMEIxMkE2OCAvKiBIVE1MSGVhZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEhUTUxIZWFkRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODcxREUyMjBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEZyYW1lU2V0RWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEZyYW1lU2V0RWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFERUM5MEExNTMwQzcwMEIx
MkE2OCAvKiBSZW5kZXJGcmFtZVNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUmVuZGVyRnJhbWVTZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURF
Q0EwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lU2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJGcmFtZVNldC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4NzFERUNCMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyRnJhbWUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg3MURFQ0MwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRl
ckZyYW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJG
cmFtZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4NzFERkRFMEExNTM3NkIw
MEIxMkE2OCAvKiBSZW5kZXJSZXBsYWNlZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyUmVwbGFjZWQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBODcxREZERjBBMTUzNzZCMDBCMTJBNjggLyogUmVuZGVyUmVwbGFjZWQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclJlcGxhY2VkLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4NzFERkUwMEExNTM3NkIwMEIxMkE2OCAvKiBSZW5kZXJXaWRn
ZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlcldpZGdldC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODcxREZFMTBBMTUzNzZCMDBCMTJBNjggLyog
UmVuZGVyV2lkZ2V0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBS
ZW5kZXJXaWRnZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODc0OEJERjEy
Q0JGMkRDMDAxRkJBNDEgLyogSGFzaFRvb2xzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEhhc2hUb29scy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODc0OEQ2
NjEyQ0MzNzYzMDAxRkJBNDEgLyogSW1hZ2VPcmllbnRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBJbWFnZU9yaWVudGF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4ODA1QUYxMTZDOTZBRUEwMDBFOUQ5OCAvKiBJbnB1dFN0cmVhbVByZXByb2Nl
c3Nvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBODgyREExRjE1OTM4NDZBMDAwMTE1RUQgLyogQ1NTVG9T
dHlsZU1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NUb1N0
eWxlTWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg4MkRBMjIxNTkzODQ4
RDAwMDExNUVEIC8qIENTU1RvU3R5bGVNYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ1NTVG9TdHlsZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODgz
REYyNTBGM0QwNDVEMDBGMTlCRjYgLyogVmlzaWJsZVNlbGVjdGlvbi5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBWaXNpYmxlU2VsZWN0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTg4M0RGMjYwRjNEMDQ1RDAwRjE5QkY2IC8qIFZpc2libGVT
ZWxlY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlzaWJsZVNlbGVj
dGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODhERDQ4NjBCNDYyOUEzMDBD
MDI5OTAgLyogUGF0aFRyYXZlcnNhbFN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBhdGhUcmF2ZXJzYWxTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBODhERDQ4ODBCNDYyOUIwMDBDMDI5OTAgLyogUGF0aFRyYXZlcnNhbFN0YXRlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhdGhUcmF2ZXJzYWxTdGF0ZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4OTk0MzI2MEI0MjMzODcwMEQ3QzgwMiAv
KiBCaXRtYXBJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaXRtYXBJ
bWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODk5NDMyNzBCNDIzMzg3MDBE
N0M4MDIgLyogQml0bWFwSW1hZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQml0bWFwSW1hZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODlD
Q0M1MDBGNDRFOTgxMDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVwbGFjZU5vZGVXaXRoU3BhbkNv
bW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBODlDQ0M1MTBGNDRFOTgx
MDBCNURBMTAgLyogUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVwbGFjZU5vZGVXaXRoU3BhbkNvbW1hbmQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThCQzA0OTExMjE0RjY5NjAwQjVGMTIyIC8qIEhUTUxFbnRp
dHlUYWJsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBIVE1MRW50
aXR5VGFibGUuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9IVE1MRW50aXR5VGFi
bGUuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBOEMyMjgwRDEx
RDRBNTk3MDBENUE3RDMgLyogRG9jdW1lbnRQYXJzZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOEMyMjg5RjExRDU3MjJFMDBENUE3RDMgLyogRGVjb2RlZERhdGFEb2N1bWVu
dFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWNvZGVkRGF0YURv
Y3VtZW50UGFyc2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4QzIyOEEwMTFE
NTcyMkUwMEQ1QTdEMyAvKiBEZWNvZGVkRGF0YURvY3VtZW50UGFyc2VyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlY29kZWREYXRhRG9jdW1lbnRQYXJzZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEM0MDI5MjEzNDhCMjIyMDA2M0YxRTUg
LyogQmlkaVJ1bkxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmlkaVJ1
bkxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDNEE3RUIwOUQ1NjMyNzAw
MDNBQzhEIC8qIFN0eWxlZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFN0eWxlZEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDNEE3
RUMwOUQ1NjMyNzAwMDNBQzhEIC8qIFN0eWxlZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOEM0QTdFRTA5RDU2MzI3MDAwM0FDOEQgLyogTm9kZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4QzRBN0Y1MDlENTYzMjcwMDAzQUM4RCAvKiBFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4QzRBN0Y2MDlENTYzMjcwMDAzQUM4RCAvKiBFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDNEE3RjkwOUQ1NjMyNzAwMDNBQzhEIC8qIEF0dHJp
YnV0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXR0cmlidXRlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4QzRBN0ZCMDlENTYzMjcwMDAzQUM4RCAvKiBB
dHRyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdHRyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4QzRBN0ZDMDlENTYzMjcwMDAzQUM4RCAvKiBBdHRyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdHRyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDQjQxMDIwRTg1QjhBNTAwMzJDNEYwIC8qIERhc2hB
cnJheS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXNoQXJyYXkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDQ0JCNDYxNTFGODMxNjAwQUI3Q0U5IC8qIERP
TVdpbmRvd1dlYkRhdGFiYXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IERPTVdpbmRvd1dlYkRhdGFiYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQThDQ0JCNDcxNTFGODMxNjAwQUI3Q0U5IC8qIERPTVdpbmRvd1dlYkRhdGFiYXNlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVdpbmRvd1dlYkRhdGFiYXNlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4Q0NCQjRFMTUxRjgzNUEwMEFCN0NFOSAvKiBE
T01XaW5kb3crV2ViRGF0YWJhc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJET01XaW5k
b3crV2ViRGF0YWJhc2UuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDRkYw
NDgwQTE1NEYwOTAwMEE0MjM0IC8qIEZpeGVkVGFibGVMYXlvdXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpeGVkVGFibGVMYXlvdXQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBOENGRjA0OTBBMTU0RjA5MDAwQTQyMzQgLyogQXV0b1RhYmxl
TGF5b3V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdXRvVGFibGVMYXlv
dXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDRkYwNEEwQTE1NEYwOTAwMEE0
MjM0IC8qIEZpeGVkVGFibGVMYXlvdXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZpeGVkVGFibGVMYXlvdXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThD
RkYwNEIwQTE1NEYwOTAwMEE0MjM0IC8qIEF1dG9UYWJsZUxheW91dC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXV0b1RhYmxlTGF5b3V0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDRkYwNEMwQTE1NEYwOTAwMEE0MjM0IC8qIFRhYmxlTGF5
b3V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUYWJsZUxheW91dC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOENGRjVEQTBBMTU1QTA1MDAwQTQyMzQgLyog
TGVnYWN5Um9vdElubGluZUJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TGVnYWN5Um9vdElubGluZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOENG
RjVEQzBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5saW5lRmxvd0JveC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5SW5saW5lRmxvd0JveC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBOENGRjVERDBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5s
aW5lRmxvd0JveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGVn
YWN5SW5saW5lRmxvd0JveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4Q0ZG
NURFMEExNTVBMDUwMDBBNDIzNCAvKiBMZWdhY3lJbmxpbmVCb3guaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IExlZ2FjeUlubGluZUJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOENGRjVERjBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5saW5lQm94LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lJbmxpbmVCb3gu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOENGRjVFMDBBMTU1QTA1MDAwQTQy
MzQgLyogTGVnYWN5Um9vdElubGluZUJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTGVnYWN5Um9vdElubGluZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4Q0ZGNkJEMEExNTYxMTgwMDBBNDIzNCAvKiBMZWdhY3lFbGxpcHNpc0JveC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5RWxsaXBzaXNCb3guaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDRkY2Q0EwQTE1NjFDRDAwMEE0MjM0IC8q
IExlZ2FjeUVsbGlwc2lzQm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBMZWdhY3lFbGxpcHNpc0JveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUE4Q0ZGNzk4MEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MRm9udEVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxGb250RWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4Q0ZGNzk5MEExNTY5NzgwMDBBNDIzNCAvKiBIVE1M
UXVvdGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MUXVv
dGVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4Q0ZGNzlBMEExNTY5
NzgwMDBBNDIzNCAvKiBIVE1MQW5jaG9yRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSFRNTEFuY2hvckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOENGRjc5QjBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTFF1b3RlRWxlbWVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFF1b3RlRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4Q0ZGNzlDMEExNTY5Nzgw
MDBBNDIzNCAvKiBIVE1MRm9udEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEhUTUxGb250RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
OENGRjc5RDBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTE1vZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxNb2RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE4Q0ZGNzlFMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MQlJFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MQlJFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThDRkY3OUYwQTE1Njk3ODAwMEE0MjM0
IC8qIEhUTUxNb2RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MTW9kRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
Q0ZGN0EwMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MQlJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MQlJFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4Q0ZGN0ExMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MQW5jaG9yRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEFuY2hvckVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThEMDVGQTUwQTIzQjMwMTAwNUU3MjAzIC8q
IEpTQ1NTUnVsZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTQ1NTUnVsZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEQwNUZB
NjBBMjNCMzAxMDA1RTcyMDMgLyogSlNDU1NSdWxlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNDU1NSdWxlTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBOEQwNjRFRjBBMjNCRkVBMDA1RTcyMDMgLyogSFRNTEZvcm1FbGVtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEZvcm1FbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQThEMDY0RjkwQTIzQzBDQzAwNUU3MjAzIC8qIEpTSFRNTEZvcm1FbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxGb3Jt
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RDA2NEZBMEEyM0Mw
Q0MwMDVFNzIwMyAvKiBKU0hUTUxGb3JtRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNIVE1MRm9ybUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQThEMDY1MUIwQTIzQzFGRTAwNUU3MjAzIC8qIENTU1J1bGVMaXN0LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gQ1NTUnVsZUxpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBOEQwNjUxQzBBMjNDMUZFMDA1RTcyMDMgLyogRGVwcmVjYXRlZENTU09NVmFsdWVM
aXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThEMDZCMzcwQTI2NURDRDAwNUU3
MjAzIC8qIEhUTUxOYW1lcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSFRN
TE5hbWVzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0hUTUxOYW1lcy5oOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBOEQwNkIzODBBMjY1RENEMDA1RTcy
MDMgLyogSFRNTE5hbWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBIVE1MTmFtZXMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9IVE1MTmFtZXMu
Y3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBOEQyMjNGQjE2QjUy
RTRFMDAxNTcyODggLyogSFRNTFJlc291cmNlUHJlbG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxSZXNvdXJjZVByZWxvYWRlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RDIyM0ZDMTZCNTJFNEUwMDE1NzI4OCAvKiBIVE1MUmVz
b3VyY2VQcmVsb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFJl
c291cmNlUHJlbG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4REYzRkM2
MDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThERjNGQzcwOTdGQTBGQjAwNTI5ODFCIC8q
IEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4REYzRkM4MDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MQ29sbGVj
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTENvbGxlY3Rpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThERjNGQzkwOTdGQTBGQjAwNTI5ODFC
IC8qIEhUTUxDb2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MQ29sbGVjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
REYzRkNDMDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MTmFtZUNvbGxlY3Rpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxOYW1lQ29sbGVjdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBOERGM0ZDRDA5N0ZBMEZCMDA1Mjk4MUIgLyogSFRNTE5hbWVD
b2xsZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1M
TmFtZUNvbGxlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOERGNEFE
RTA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVDb2wuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclRhYmxlQ29sLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQThERjRBREYwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRhYmxlQ2Vs
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGFibGVDZWxsLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4REY0QUUwMDk4MEM0MkMwMDUyOTgxQiAv
KiBSZW5kZXJUYWJsZUNlbGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlbmRlclRhYmxlQ2VsbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
REY0QUUxMDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJsZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGFibGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQThERjRBRTIwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRhYmxlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUYWJsZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4REY0QUUzMDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJU
YWJsZVNlY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJl
bmRlclRhYmxlU2VjdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4REY0
QUU0MDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJsZVJvdy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGFibGVSb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQThERjRBRTUwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRhYmxlU2VjdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGFibGVTZWN0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4REY0QUU2MDk4MEM0MkMwMDUyOTgxQiAv
KiBSZW5kZXJUYWJsZVJvdy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUmVuZGVyVGFibGVSb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOERG
NEFFNzA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVDb2wuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRhYmxlQ29sLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUE4RUE3OUU1MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MT0xpc3RFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MT0xpc3RFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3OUU2MEExOTE2REYwMEE4RUY1RiAvKiBI
VE1MVUxpc3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1M
VUxpc3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3OUU3MEEx
OTE2REYwMEE4RUY1RiAvKiBIVE1MVUxpc3RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MVUxpc3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQThFQTc5RTgwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxNZW51RWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTE1lbnVFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3OUU5MEExOTE2REYwMEE4RUY1RiAv
KiBIVE1MRExpc3RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MRExpc3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QThFQTc5RUEwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxMSUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxMSUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQThFQTc5RUIwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxETGlzdEVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxETGlzdEVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThFQTc5RUMwQTE5MTZERjAwQThFRjVGIC8q
IEhUTUxNZW51RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSFRNTE1lbnVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThF
QTc5RUQwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxEaXJlY3RvcnlFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRGlyZWN0b3J5RWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3OUVFMEExOTE2REYwMEE4RUY1RiAv
KiBIVE1MRGlyZWN0b3J5RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSFRNTERpcmVjdG9yeUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QThFQTc5RUYwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxPTGlzdEVsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxPTGlzdEVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBNzlGMDBBMTkxNkRGMDBBOEVGNUYgLyogSFRN
TExJRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRN
TExJRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3QTQ4MEEx
OTFBNTIwMEE4RUY1RiAvKiBSZW5kZXJMaXN0SXRlbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyTGlzdEl0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOEVBN0E0QTBBMTkxQTUyMDBBOEVGNUYgLyogUmVuZGVyTGlzdE1hcmtlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTGlzdE1hcmtlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0E0QjBBMTkxQTUyMDBBOEVGNUYgLyog
UmVuZGVyTGlzdE1hcmtlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUmVuZGVyTGlzdE1hcmtlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4
RUE3QTRDMEExOTFBNTIwMEE4RUY1RiAvKiBSZW5kZXJMaXN0SXRlbS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTGlzdEl0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQThFQTdDOUQwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxNYXJxdWVlRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTE1hcnF1ZWVFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3QzlFMEExOTJCOUMwMEE4RUY1
RiAvKiBIVE1MTWFycXVlZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEhUTUxNYXJxdWVlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUE4RUE3QzlGMEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MUHJlRWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTFByZUVsZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0NBMDBBMTkyQjlDMDBBOEVGNUYgLyog
SFRNTEhlYWRpbmdFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBIVE1MSGVhZGluZ0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBOEVBN0NBMTBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTEhSRWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEhSRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOEVBN0NBMjBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTFByZUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxQcmVFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3Q0EzMEExOTJCOUMwMEE4RUY1RiAvKiBI
VE1MRGl2RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTERpdkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0NB
NDBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTFBhcmFncmFwaEVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxQYXJhZ3JhcGhFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThFQTdDQTUwQTE5MkI5QzAwQThFRjVGIC8qIEhU
TUxIUkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhU
TUxIUkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0NBNzBB
MTkyQjlDMDBBOEVGNUYgLyogSFRNTFBhcmFncmFwaEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxQYXJhZ3JhcGhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE4RUE3Q0E5MEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MRGl2RWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTERpdkVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThFQTdDQUEwQTE5MkI5QzAwQThFRjVGIC8q
IEhUTUxIZWFkaW5nRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SFRNTEhlYWRpbmdFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3
RDIzMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MSW1hZ2VMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxJbWFnZUxvYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOEVBN0QyNDBBMTkzODU1MDBBOEVGNUYgLyogSFRNTE1hcEVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxNYXBFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3RDI1MEExOTM4NTUwMEE4RUY1RiAvKiBIVE1M
SW1hZ2VFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MSW1h
Z2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE3RDI2MEExOTM4
NTUwMEE4RUY1RiAvKiBIVE1MQXJlYUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEhUTUxBcmVhRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBOEVBN0QyNzBBMTkzODU1MDBBOEVGNUYgLyogSFRNTEFyZWFFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MQXJlYUVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0QyODBBMTkzODU1MDBBOEVGNUYgLyogSFRN
TEltYWdlTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBI
VE1MSW1hZ2VMb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0Qy
OTBBMTkzODU1MDBBOEVGNUYgLyogSFRNTEltYWdlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEltYWdlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE4RUE3RDJBMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MTWFwRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTE1hcEVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBN0VCNDBBMTk0NUQw
MDBBOEVGNUYgLyogUHJvY2Vzc2luZ0luc3RydWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQThFQTdFQjUwQTE5NDVEMDAwQThFRjVGIC8qIFByb2Nlc3NpbmdJbnN0cnVj
dGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJvY2Vzc2lu
Z0luc3RydWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQThFQTdGRkYw
QTE5NTE2RTAwQThFRjVGIC8qIENTU1N0eWxlU2hlZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENTU1N0eWxlU2hlZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQThFQTgwMDAwQTE5NTE2RTAwQThFRjVGIC8qIENTU1N0eWxlU2hlZXQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1N0eWxlU2hlZXQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBODAwMTBBMTk1MTZFMDBBOEVGNUYgLyogTWVkaWFM
aXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUxpc3Qu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEVBODAwMjBBMTk1MTZFMDBBOEVG
NUYgLyogU3R5bGVTaGVldExpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFN0eWxlU2hlZXRMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE4MDAz
MEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVTaGVldExpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOEVBODAwNDBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVTaGVldC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBOEVBODAwNTBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVl
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVTaGVldC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RUE4MDA2MEExOTUxNkUwMEE4RUY1
RiAvKiBNZWRpYUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlh
TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOEZBNkU1QjBFNENGREVEMDBE
NUNGNDkgLyogUGF0dGVybi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXR0
ZXJuLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE4RkE2RTVDMEU0Q0ZERUQwMEQ1
Q0Y0OSAvKiBQYXR0ZXJuLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFBhdHRlcm4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOTFDOUZCQzFCNjU4
NkRFMDBBRkZENTQgLyogQWNjZXNzaWJpbGl0eVRyZWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQWNjZXNzaWJpbGl0eVRyZWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOTFDOUZCRDFCNjU4NkRFMDBBRkZENTQgLyogQWNjZXNzaWJpbGl0eVRy
ZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eVRyZWUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTkxQzlGQzAxQjY1OUE2NzAwQUZGRDU0
IC8qIEFjY2Vzc2liaWxpdHlUcmVlSXRlbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBBY2Nlc3NpYmlsaXR5VHJlZUl0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOTFDOUZDMTFCNjU5QTY3MDBBRkZENTQgLyogQWNjZXNzaWJpbGl0eVRyZWVJ
dGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlUcmVl
SXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOTc4N0NCMjFGNUY1OTkyMDBD
NTUxQzYgLyogQWNjZXNzaWJpbGl0eU1lZGlhT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vz
c2liaWxpdHlNZWRpYU9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOTc4
N0NCMzFGNUY1QzY1MDBDNTUxQzYgLyogQWNjZXNzaWJpbGl0eU1lZGlhT2JqZWN0LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlNZWRpYU9iamVjdC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUE5QzZFNEUxMEQ3NDVFMDUwMDY0NDJFOSAvKiBET01NaW1lVHlw
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NTWltZVR5cGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOUM2RTRFMjBENzQ1RTA1MDA2NDQy
RTkgLyogRE9NTWltZVR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERP
TU1pbWVUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5QzZFNEU1MEQ3NDVF
MTgwMDY0NDJFOSAvKiBET01NaW1lVHlwZUFycmF5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBET01NaW1lVHlwZUFycmF5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQTlDNkU0RTYwRDc0NUUxODAwNjQ0MkU5IC8qIERPTU1pbWVUeXBlQXJyYXku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTU1pbWVUeXBlQXJyYXkuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlDNkU0RTkwRDc0NUUyQjAwNjQ0MkU5IC8q
IERPTVBsdWdpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9N
UGx1Z2luLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlDNkU0RUEwRDc0NUUy
QjAwNjQ0MkU5IC8qIERPTVBsdWdpbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NUGx1Z2luLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5QzZFNEVEMEQ3
NDVFMzgwMDY0NDJFOSAvKiBET01QbHVnaW5BcnJheS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRE9NUGx1Z2luQXJyYXkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBOUM2RTRFRTBENzQ1RTM4MDA2NDQyRTkgLyogRE9NUGx1Z2luQXJyYXkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTVBsdWdpbkFycmF5Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5QzZFNEYxMEQ3NDVFNDgwMDY0NDJFOSAvKiBQbHVn
aW5EYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQbHVnaW5E
YXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlDNkU0RjIwRDc0NUU0ODAw
NjQ0MkU5IC8qIFBsdWdpbkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBsdWdpbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlDNkU1QTMwRDc0
NjQ1ODAwNjQ0MkU5IC8qIE5hdmlnYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTmF2aWdhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTlDNkU1QTQwRDc0NjQ1ODAwNjQ0MkU5IC8qIE5hdmlnYXRvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE5QzZFNjVEMEQ3NDY2OTQwMDY0NDJFOSAvKiBOYXZpZ2F0b3IuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlBOUM2RTY1RTBENzQ2NkYyMDA2NDQyRTkgLyogRE9NTWltZVR5cGUuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBET01NaW1lVHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUE5QzZFNjVGMEQ3NDY3MDAwMDY0NDJFOSAvKiBET01NaW1lVHlwZUFycmF5LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NTWltZVR5cGVBcnJheS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUE5QzZFNjYwMEQ3NDY3MEMwMDY0NDJFOSAvKiBET01QbHVnaW4uaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01QbHVnaW4uaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBOUM2RTY2MTBENzQ2NzFFMDA2NDQyRTkgLyogRE9NUGx1Z2luQXJyYXku
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01QbHVnaW5BcnJheS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5RDI0N0Y1MEQ3NTdFMzMwMEZERjk1OSAvKiBKU05hdmln
YXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNOYXZpZ2F0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOUQyNDdGNjBENzU3RTMzMDBG
REY5NTkgLyogSlNOYXZpZ2F0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTTmF2aWdhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5RDI0N0ZBMEQ3
NTdFNjkwMEZERjk1OSAvKiBKU0RPTVBsdWdpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNET01QbHVnaW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBOUQyNDdGQjBENzU3RTY5MDBGREY5NTkgLyogSlNET01QbHVnaW4uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NUGx1Z2luLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUE5RDI0N0ZDMEQ3NTdFNjkwMEZERjk1OSAvKiBKU0RPTVBsdWdpbkFycmF5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RPTVBsdWdpbkFy
cmF5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlEMjQ3RkQwRDc1N0U2OTAw
RkRGOTU5IC8qIEpTRE9NUGx1Z2luQXJyYXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTRE9NUGx1Z2luQXJyYXkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTlEMjQ4MDIwRDc1N0U3RDAwRkRGOTU5IC8qIEpTRE9NTWltZVR5cGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NTWltZVR5cGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBOUQyNDgwMzBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1l
VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01NaW1lVHlwZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBOUQyNDgwNDBENzU3RTdEMDBGREY5NTkg
LyogSlNET01NaW1lVHlwZUFycmF5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0RPTU1pbWVUeXBlQXJyYXkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBOUQyNDgwNTBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1lVHlwZUFycmF5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTU1pbWVUeXBlQXJyYXkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTlFRTQ0OEMyMTBGQzlBRDAwQjZFQUU2IC8qIEFy
aWFBdHRyaWJ1dGVzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBcmlhQXR0cmlidXRlcy5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE5RUU0NDhGMjEwRkQ2OUEwMEI2RUFF
NiAvKiBBY2Nlc3NpYmlsaXR5Um9sZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQWNjZXNzaWJpbGl0eVJvbGUuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQTA5NzhFRDBBQkFBNkUxMDA4NzQ0ODAgLyog
Q1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUFBMDk3OEVFMEFCQUE2RTEwMDg3NDQ4MCAvKiBDU1NDdXJzb3JJbWFnZVZhbHVlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NDdXJzb3JJbWFnZVZhbHVlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMTFDMDRCMjMxNjk2ODkwMDlEOTgzMSAvKiBN
YXRoTUxNYXRoRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWF0aE1MTWF0aEVsZW1lbnQuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBQTExQzA0RDIzMTY5NzNEMDA5RDk4MzEgLyogSlNNYXRo
TUxNYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01hdGhNTE1hdGhFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUExMUMwNEUyMzE2OTc4MjAwOUQ5
ODMxIC8qIEpTTWF0aE1MTWF0aEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNYXRoTUxNYXRo
RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQTJBNUFCODE2QTQ4NUQ1
MDA5NzVBMjUgLyogRE9NV2luZG93U3BlZWNoU3ludGhlc2lzLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IERPTVdpbmRvd1NwZWVjaFN5bnRoZXNpcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUFBMkE1QUI5MTZBNDg1RDUwMDk3NUEyNSAvKiBET01XaW5kb3dTcGVlY2hTeW50aGVz
aXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NV2luZG93U3BlZWNoU3ludGhlc2lzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkE1QUJBMTZBNDg1RDUwMDk3NUEyNSAvKiBET01XaW5k
b3crU3BlZWNoU3ludGhlc2lzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRE9NV2luZG93K1NwZWVjaFN5bnRoZXNpcy5p
ZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQTJBNUFCRDE2QTQ4NUQ1MDA5NzVB
MjUgLyogU3BlZWNoU3ludGhlc2lzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNwZWVjaFN5bnRo
ZXNpcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkE1QUJFMTZBNDg1RDUw
MDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhl
c2lzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkE1QUJGMTZBNDg1RDUwMDk3
NUEyNSAvKiBTcGVlY2hTeW50aGVzaXMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpcy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkE1QUMwMTZBNDg1RDUwMDk3NUEyNSAvKiBT
cGVlY2hTeW50aGVzaXNFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTcGVlY2hTeW50aGVz
aXNFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkE1QUMwMTZBNDg1
RDUwMDk3NkEyNSAvKiBKU1NwZWVjaFN5bnRoZXNpc0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU3BlZWNoU3ludGhlc2lzRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBQTJBNUFDMTE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQUEyQTVBQzExNkE0ODVENTAwOTc2QTI1IC8qIEpTU3BlZWNoU3ludGhlc2lz
RXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTcGVlY2hTeW50aGVzaXNFdmVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBQTJBNUFDMjE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNo
U3ludGhlc2lzRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpc0V2ZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUEyQTVBQzMxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVj
aFN5bnRoZXNpc1V0dGVyYW5jZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUEyQTVBQzQxNkE0ODVENTAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTcGVl
Y2hTeW50aGVzaXNVdHRlcmFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
QTJBNUFDNTE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBQTJBNUFDNjE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lz
Vm9pY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQTJBNUFDNzE2QTQ4NUQ1MDA5NzVBMjUgLyog
U3BlZWNoU3ludGhlc2lzVm9pY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3ludGhlc2lzVm9p
Y2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUEyQTVBQzgxNkE0ODVENTAwOTc1
QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTcGVlY2hTeW50aGVzaXNWb2lj
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBMkUwRDA5MjVBRjUxMDQwMDc2
OTNCQSAvKiBGb2N1c09wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZvY3VzT3B0aW9ucy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nl
c3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBQTQ3OEE3RTE2Q0Q3MEMzMDA3RDFCQjQgLyogV2ViQWNjZXNzaWJpbGl0
eU9iamVjdFdyYXBwZXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGlj
aXRGaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgZmlsZUVuY29kaW5nID0gNDsgcGF0
aCA9IFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBQTRDM0E3NDBCMkIxNjc5MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVl
dE93bmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmxpbmVT
dHlsZVNoZWV0T3duZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQTRDM0E3
NTBCMkIxNjc5MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVldE93bmVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbmxpbmVTdHlsZVNoZWV0T3duZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUE1RjNCOTAxNkNDNUJFQjAwNDU1RUIwIC8qIENvcmVGb3Vu
ZGF0aW9uLmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gQ29yZUZvdW5kYXRpb24uZnJhbWV3
b3JrOyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQ29yZUZvdW5kYXRpb24uZnJh
bWV3b3JrOyBzb3VyY2VUcmVlID0gIjxhYnNvbHV0ZT4iOyB9OworCQlBQTYxQkI1MjIzMTY3NDcz
MDAyRkUyNUEgLyogSlNNYXRoTUxFbGVtZW50V3JhcHBlckZhY3RvcnkuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNNYXRoTUxFbGVtZW50V3JhcHBlckZhY3Rvcnku
Y3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU01hdGhNTEVsZW1lbnRXcmFwcGVy
RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUFBNjFC
QjU0MjMxNjc0NzQwMDJGRTI1QSAvKiBKU01hdGhNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBKU01hdGhNTEVsZW1lbnRXcmFwcGVyRmFj
dG9yeS5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU01hdGhNTEVsZW1lbnRXcmFw
cGVyRmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlBQTdG
RUU5QzE2QTRFNkYzMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTcGVlY2hTeW50aGVzaXMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBQTdGRUU5RTE2QTRFNkYzMDA0QzBDMzMgLyogSlNTcGVl
Y2hTeW50aGVzaXNVdHRlcmFuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNTcGVlY2hTeW50aGVzaXNVdHRlcmFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBQTdGRUU5RjE2QTRFNkYzMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXNV
dHRlcmFuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTcGVlY2hTeW50
aGVzaXNVdHRlcmFuY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUE3RkVFQTAx
NkE0RTZGMzAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTcGVlY2hTeW50aGVzaXNWb2ljZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBN0ZFRUExMTZBNEU2RjMwMDRDMEMzMyAvKiBK
U1NwZWVjaFN5bnRoZXNpc1ZvaWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTU3BlZWNoU3ludGhlc2lzVm9pY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QUE3RkVFQUMxNkE0RTc0QjAwNEMwQzMzIC8qIEpTU3BlZWNoU3ludGhlc2lzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU3BlZWNoU3ludGhlc2lzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUFBQTcyOEYwMTZEMUQ4QkMwMEQzQkJDNiAvKiBBY2Nlc3NpYmls
aXR5T2JqZWN0SU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
QWNjZXNzaWJpbGl0eU9iamVjdElPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QUFBNzI4RjExNkQxRDhCQzAwRDNCQkM2IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
SU9TLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBQTcyOEYy
MTZEMUQ4QkMwMEQzQkJDNiAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVySU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQUE3MjhG
MzE2RDFEOEJDMDBEM0JCQzYgLyogQVhPYmplY3RDYWNoZUlPUy5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFYT2JqZWN0Q2FjaGVJT1MubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUFBQzA4Q0YwMTVGOTQxRkMwMEYxRTE4OCAvKiBBY2Nlc3NpYmls
aXR5U1ZHUm9vdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBY2Nl
c3NpYmlsaXR5U1ZHUm9vdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFBQzA4
Q0YxMTVGOTQxRkMwMEYxRTE4OCAvKiBBY2Nlc3NpYmlsaXR5U1ZHUm9vdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBY2Nlc3NpYmlsaXR5U1ZHUm9vdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBQUNDODNENjIzMTY1NjlFMDBFQjZCRjUgLyogSFRNTE9yRm9y
ZWlnbkVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxPckZvcmVpZ25FbGVtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUFDQzgzRDcyMzE2NTc2QTAwRUI2QkY1IC8qIEpTSFRNTE9y
Rm9yZWlnbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MT3JGb3JlaWduRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQUNDODNEODIzMTY1NzZCMDBFQjZCRjUg
LyogSlNIVE1MT3JGb3JlaWduRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxP
ckZvcmVpZ25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUFEOUQw
QjEyMURGQTgwQzAwMUIxMUM3IC8qIExhenlMb2FkSW1hZ2VPYnNlcnZlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMYXp5TG9hZEltYWdlT2JzZXJ2ZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQUQ5RDBCMzIxREZBODBFMDAxQjExQzcgLyog
TGF6eUxvYWRJbWFnZU9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExhenlMb2FkSW1hZ2VPYnNlcnZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
QURFRkU0MzI1QUY0RkNCMDA0MERENjcgLyogRm9jdXNPcHRpb25zLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZvY3VzT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQUUyN0I3NDE2
Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXpl
ck1vY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQUUyN0I3NTE2Q0JGQzBE
MDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplck1vY2suaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUFFMzc1NUQxNzQyOUJDQzAwNjIwMEMyIC8qIFBs
YXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVySU9TLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBQUY1QjdCMTE1MjRCNEJEMDAwNENCNDkgLyogV2ViU29ja2V0
RnJhbWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViU29ja2V0
RnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQjIzQTMyNTA5QkJBN0Qw
MDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUIyM0EzMjYwOUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9y
ZVRleHRJbnNlcnRlZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBC
ZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
QjI0N0E2QTBBRkQ2MzgzMDAzRkE1RkQgLyogUmVuZGVyU2xpZGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTbGlkZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBQjI0N0E2QjBBRkQ2MzgzMDAzRkE1RkQgLyogUmVuZGVyU2xpZGVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTbGlkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUIzMUM5MUQxMEFFMUI4RTAwMEM3QjkyIC8qIExp
bmVDbGFtcFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExpbmVDbGFt
cFZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFCNjdEMUE2MDk3RjNBRTMw
MEY5MzkyRSAvKiBSZW5kZXJUZXh0Q29udHJvbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVuZGVyVGV4dENvbnRyb2wuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlBQjY3RDFBNzA5N0YzQUUzMDBGOTM5MkUgLyogUmVuZGVyVGV4dENvbnRyb2wu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRleHRDb250cm9sLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFCNzE3MDg4MEIzMTE4MDgwMDE3MTIzRSAv
KiBTZWFyY2hQb3B1cE1lbnUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNl
YXJjaFBvcHVwTWVudS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQkFGMjIwNzBD
MDNCMUM3MDBCMEJDRjAgLyogQ2hyb21lTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IENocm9tZU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQUJCNTQxOUMwQUNEREZFNDAwMjgyMEVCIC8qIFJlbmRlckxpc3RCb3guY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckxpc3RCb3guY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBQkI1NDE5RDBBQ0RERkU0MDAyODIwRUIgLyogUmVuZGVy
TGlzdEJveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTGlzdEJv
eC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBQkMxMjg3NjBCMzNBQTZEMDBDNjkz
RDUgLyogUG9wdXBNZW51Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBQb3B1cE1lbnVDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUJEREZF
NzMwQTVDNkU2RjAwQTNFMTFEIC8qIFJlbmRlck1lbnVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNZW51TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUFCRERGRTc0MEE1QzZFNzAwMEEzRTExRCAvKiBSZW5kZXJNZW51TGlz
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyTWVudUxpc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUQwM0FBRjgxNDY4NDUzOTAwQTM5QjVCIC8q
IENTU1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU1Zh
bHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUQyMEIxOEMxOEU5RDIxNjAw
NUE4MDgzIC8qIEpTTm9kZUxpc3RDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNOb2RlTGlzdEN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
RDQ0OTVGMTE0MUZDMDg5MDA1NDFFREYgLyogRXZlbnRMaXN0ZW5lck1hcC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFdmVudExpc3RlbmVyTWFwLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUQ0NDk1RjIxNDFGQzA4OTAwNTQxRURGIC8qIEV2ZW50
TGlzdGVuZXJNYXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRMaXN0
ZW5lck1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDQ5OTE0MTE4RjA4MTUx
MDBCRjAwOTIgLyogSFRNTFVua25vd25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEhUTUxVbmtub3duRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBRDQ5OTE0MjE4RjA4MTUxMDBCRjAwOTIgLyogSFRNTFVua25vd25FbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MVW5rbm93bkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBRDVBMEMyMDFERUNBMEI1MDA3MDcwNTQgLyogUGVyZm9ybWFu
Y2VMb2dnaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZvcm1hbmNl
TG9nZ2luZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDVBMEMyMTFERUNBMTAx
MDA3MDcwNTQgLyogUGVyZm9ybWFuY2VMb2dnaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlTG9nZ2luZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUFENUEwQzIyMURFQ0EzN0UwMDcwNzA1NCAvKiBQZXJmb3JtYW5jZUxvZ2dp
bmdDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFBlcmZv
cm1hbmNlTG9nZ2luZ0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDZF
NzFBQTE2Njg4OTlEMDAzMjBDMTMgLyogRG9jdW1lbnRTaGFyZWRPYmplY3RQb29sLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50U2hhcmVkT2JqZWN0UG9v
bC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFENkU3MUFCMTY2ODg5OUQwMDMy
MEMxMyAvKiBEb2N1bWVudFNoYXJlZE9iamVjdFBvb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRG9jdW1lbnRTaGFyZWRPYmplY3RQb29sLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUFENzI2RkU3MTZEOUYyMDQwMDNBNEU2RCAvKiBKU01lZGlhTGlzdEN1c3Rv
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhTGlzdEN1c3RvbS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDcyNkZFOTE2RDlGNDBBMDAzQTRFNkQg
LyogSlNDU1NSdWxlQ3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
Q1NTUnVsZUN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDcyNkZFQTE2
RDlGNDBCMDAzQTRFNkQgLyogSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDcyNkZFQzE2RDlGNEI5MDAzQTRFNkQgLyog
SlNTdHlsZVNoZWV0Q3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
U3R5bGVTaGVldEN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRDlGRjZF
MDE5MDgzOTFEMDAzQjYxRTAgLyogSU9TdXJmYWNlUG9vbENvY29hLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gSU9TdXJmYWNlUG9vbENvY29hLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlBREJBRDZFQzFCQ0REOTUwMDAzODEzMjUgLyogUmVzb3Vy
Y2VVc2FnZU92ZXJsYXkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UmVzb3VyY2VVc2FnZU92ZXJsYXkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlB
REJBRDZFRDFCQ0REOTUwMDAzODEzMjUgLyogUmVzb3VyY2VVc2FnZU92ZXJsYXkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VVc2FnZU92ZXJsYXkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUREQTk0QkYxOTY4NkY4MDAwNDUzMDI5IC8qIEpTRG9j
dW1lbnRDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEb2N1bWVu
dEN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBRERGMUFENDEyNTdDRDlB
MDAwM0E3NTkgLyogUmVuZGVyU1ZHUGF0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBSZW5kZXJTVkdQYXRoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQURERjFBRDUxMjU3Q0Q5QTAwMDNBNzU5IC8qIFJlbmRlclNWR1BhdGguaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU1ZHUGF0aC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlBREUxNjczNjE4MTA1MEMzMDA0NjNBMkUgLyogUmVuZGVyUHRyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclB0ci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlBREVDNzhGNzE4RUU1MzA4MDAxMzE1QzIgLyogSlNFbGVtZW50Q3Vz
dG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRWxlbWVudEN1c3RvbS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBREZFMkI1NDFCRDVGNDEyMDBEQUI0NTcg
LyogUmVzb3VyY2VVc2FnZU92ZXJsYXlDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFJlc291cmNlVXNhZ2VPdmVybGF5Q29jb2EubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIxMEI2OTdEMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tl
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJWVFRUb2tlbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMTBCNjk3RTE0MEMxNzQwMDBCQzFDMjYgLyogV2Vi
VlRUVG9rZW5pemVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdl
YlZUVFRva2VuaXplci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIxMEI2OTdG
MTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViVlRUVG9rZW5pemVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIxQUQ0RTcxMTNBMTJBNDYwMDg0NkIyNyAvKiBUZXh0VHJhY2tMb2FkZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dFRyYWNrTG9hZGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjFBRDRFNzIxM0ExMkE0NjAwODQ2QjI3IC8q
IFRleHRUcmFja0xvYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0
VHJhY2tMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIwMTExMDUwQUI3
NzQwNTAwREIwRTY4IC8qIEpTU1ZHQUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTU1ZHQUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjAxMTEwNjBBQjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdDRDBEMDBCRjFGMDA3MUI3ODIgLyogR3JhZGllbnRB
dHRyaWJ1dGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFkaWVudEF0
dHJpYnV0ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3Q0UwRDAwQkYx
RjAwNzFCNzgyIC8qIExpbmVhckdyYWRpZW50QXR0cmlidXRlcy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTGluZWFyR3JhZGllbnRBdHRyaWJ1dGVzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0RCMEQwMEJGMUYwMDcxQjc4MiAvKiBQYXR0ZXJuQXR0
cmlidXRlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGF0dGVybkF0dHJp
YnV0ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3REMwRDAwQkYxRjAw
NzFCNzgyIC8qIFJhZGlhbEdyYWRpZW50QXR0cmlidXRlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmFkaWFsR3JhZGllbnRBdHRyaWJ1dGVzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyMjI3N0REMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQUVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdERTBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0RGMEQwMEJGMUYw
MDcxQjc4MiAvKiBTVkdBRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0FF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RTEwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0FuZ2xlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdBbmdsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdFMjBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHQW5nbGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdB
bmdsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0UzMEQwMEJGMUYw
MDcxQjc4MiAvKiBTVkdBbmltYXRlQ29sb3JFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlQ29sb3JFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RTQwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1h
dGVDb2xvckVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0Fu
aW1hdGVDb2xvckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3
RTUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVDb2xvckVsZW1lbnQuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRlQ29sb3JFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RTYwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVk
QW5nbGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRlZEFuZ2xlLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RTcwRDAwQkYxRjAwNzFCNzgyIC8q
IFNWR0FuaW1hdGVkQm9vbGVhbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0FuaW1h
dGVkQm9vbGVhbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0U4MEQw
MEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlZEVudW1lcmF0aW9uLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gU1ZHQW5pbWF0ZWRFbnVtZXJhdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3N0U5MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlZEludGVn
ZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRlZEludGVnZXIuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdFQTBEMDBCRjFGMDA3MUI3ODIgLyog
U1ZHQW5pbWF0ZWRMZW5ndGguaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRl
ZExlbmd0aC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0VCMEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlZExlbmd0aExpc3QuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBTVkdBbmltYXRlZExlbmd0aExpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzdFQzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZWROdW1iZXIuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRlZE51bWJlci5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0VEMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmlt
YXRlZE51bWJlckxpc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdBbmltYXRlZE51
bWJlckxpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdGNDBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gU1ZHQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RjUwRDAwQkYxRjAwNzFCNzgyIC8qIFNW
R0FuaW1hdGVkUmVjdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0FuaW1hdGVkUmVj
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0Y2MEQwMEJGMUYwMDcx
Qjc4MiAvKiBTVkdBbmltYXRlZFN0cmluZy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNW
R0FuaW1hdGVkU3RyaW5nLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3
RjgwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVkVHJhbnNmb3JtTGlzdC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFNWR0FuaW1hdGVkVHJhbnNmb3JtTGlzdC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0Y5MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmlt
YXRlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZH
QW5pbWF0ZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzdG
QTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0FuaW1hdGVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3N0ZCMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlRWxlbWVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0FuaW1hdGVFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RkMwRDAwQkYxRjAwNzFCNzgyIC8qIFNW
R0FuaW1hdGVNb3Rpb25FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTVkdBbmltYXRlTW90aW9uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3N0ZEMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlTW90aW9uRWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHQW5pbWF0ZU1vdGlv
bkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc3RkUwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdBbmltYXRlVHJhbnNmb3JtRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3N0ZGMEQwMEJGMUYwMDcxQjc4MiAv
KiBTVkdBbmltYXRlVHJhbnNmb3JtRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1ZHQW5pbWF0ZVRyYW5zZm9ybUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjIyMjc4MDAwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVUcmFuc2Zv
cm1FbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHQW5pbWF0ZVRyYW5zZm9y
bUVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgwMTBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODAyMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRp
b25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdBbmltYXRp
b25FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODAzMEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdBbmltYXRpb25FbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gU1ZHQW5pbWF0aW9uRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3ODA0MEQwMEJGMUYwMDcxQjc4MiAvKiBzdmdhdHRycy5pbiAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gc3ZnYXR0cnMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3ODA1MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDaXJjbGVFbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdDaXJjbGVFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MDYwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0Np
cmNsZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0NpcmNs
ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MDcwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0NpcmNsZUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBTVkdDaXJjbGVFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIy
Mjc4MDgwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NsaXBQYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQ2xpcFBhdGhFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MDkwRDAwQkYxRjAwNzFCNzgyIC8qIFNW
R0NsaXBQYXRoRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZH
Q2xpcFBhdGhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODBB
MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDbGlwUGF0aEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBTVkdDbGlwUGF0aEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzgwRTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ29tcG9uZW50VHJhbnNmZXJG
dW5jdGlvbkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR0NvbXBvbmVudFRyYW5zZmVyRnVuY3Rpb25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MEYwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NvbXBvbmVudFRy
YW5zZmVyRnVuY3Rpb25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMjIyNzgxMDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ29tcG9uZW50VHJh
bnNmZXJGdW5jdGlvbkVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdDb21w
b25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3ODExMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDdXJzb3JFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdDdXJzb3JFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MTIwRDAwQkYxRjAwNzFCNzgy
IC8qIFNWR0N1cnNvckVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR0N1cnNvckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4
MTMwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0N1cnNvckVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBTVkdDdXJzb3JFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4MTcwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0RlZnNFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdEZWZzRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODE4MEQwMEJGMUYwMDcxQjc4MiAvKiBT
VkdEZWZzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRGVm
c0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MTkwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0RlZnNFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
U1ZHRGVmc0VsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgx
QTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRGVzY0VsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0Rlc2NFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MUIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0Rlc2NFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdEZXNjRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgxQzBEMDBCRjFGMDA3MUI3ODIgLyog
U1ZHRGVzY0VsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdEZXNjRWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODFEMEQwMEJGMUYwMDcx
Qjc4MiAvKiBTVkdEb2N1bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHRG9jdW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIy
NzgxRTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRG9jdW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNWR0RvY3VtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3ODFGMEQwMEJGMUYwMDcxQjc4MiAvKiBEb2N1bWVudCtTVkcuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSAiRG9jdW1lbnQrU1ZHLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3ODIwMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MjEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0Vs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0VsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MjIwRDAwQkYxRjAwNzFCNzgyIC8q
IFNWR0VsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdFbGVtZW50LmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MjkwRDAwQkYxRjAwNzFCNzgyIC8q
IFNWR0VsbGlwc2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTVkdFbGxpcHNlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3ODJBMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdFbGxpcHNlRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRWxsaXBzZUVsZW1lbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MkIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0VsbGlw
c2VFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRWxsaXBzZUVsZW1lbnQu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzMTBEMDBCRjFGMDA3MUI3
ODIgLyogU1ZHRkVCbGVuZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFNWR0ZFQmxlbmRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4MzIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFQmxlbmRFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRUJsZW5kRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzMzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZH
RkVCbGVuZEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGRUJsZW5kRWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODM0MEQwMEJGMUYw
MDcxQjc4MiAvKiBTVkdGRUNvbG9yTWF0cml4RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzNTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVD
b2xvck1hdHJpeEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNW
R0ZFQ29sb3JNYXRyaXhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3ODM2MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbG9yTWF0cml4RWxlbWVudC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4MzcwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZF
Q29tcG9uZW50VHJhbnNmZXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTVkdGRUNvbXBvbmVudFRyYW5zZmVyRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODM4MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbXBv
bmVudFRyYW5zZmVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U1ZHRkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4MzkwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9uZW50VHJhbnNmZXJF
bGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVDb21wb25lbnRUcmFuc2Zl
ckVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzQTBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHRkVDb21wb3NpdGVFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdGRUNvbXBvc2l0ZUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzQjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVD
b21wb3NpdGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdG
RUNvbXBvc2l0ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4
M0MwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9zaXRlRWxlbWVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFNWR0ZFQ29tcG9zaXRlRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyMjI3ODNEMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpZmZ1c2VM
aWdodGluZ0VsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3ODNFMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpZmZ1c2VMaWdodGluZ0Vs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFRGlmZnVzZUxp
Z2h0aW5nRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzgzRjBE
MDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NDAwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZF
RGlzcGxhY2VtZW50TWFwRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NDEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRGlzcGxhY2Vt
ZW50TWFwRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVE
aXNwbGFjZW1lbnRNYXBFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3ODQyMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg0MzBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTVkdGRURpc3RhbnRMaWdodEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzg0NDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVEaXN0YW50
TGlnaHRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRURp
c3RhbnRMaWdodEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4
NDUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODQ2MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZs
b29kRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZH
RkVGbG9vZEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg0
NzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVGbG9vZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFRmxvb2RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3ODQ4MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZsb29kRWxlbWVu
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFRmxvb2RFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NDkwRDAwQkYxRjAwNzFCNzgyIC8qIFNW
R0ZFRnVuY0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTVkdGRUZ1bmNBRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3ODRBMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNBRWxlbWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVGdW5jQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NEIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRnVuY0FF
bGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVGdW5jQUVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg0QzBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHRkVGdW5jQkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNWR0ZFRnVuY0JFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjIyMjc4NEQwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRnVuY0JFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRUZ1bmNCRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg0RTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVG
dW5jQkVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGRUZ1bmNCRWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODRGMEQwMEJGMUYwMDcx
Qjc4MiAvKiBTVkdGRUZ1bmNHRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHRkVGdW5jR0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzg1MDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVGdW5jR0VsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFRnVuY0dFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODUxMEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGRUZ1bmNHRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFRnVuY0dF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NTIwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFRnVuY1JFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTVkdGRUZ1bmNSRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3ODUzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRUZ1bmNSRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVGdW5jUkVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NTQwRDAwQkYyMDAwNzFCNzgy
IC8qIFNWR0ZFRnVuY1JFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVG
dW5jUkVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg1NTBE
MDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg1NjBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjIyMjc4NTcwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFR2F1c3NpYW5CbHVyRWxl
bWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFR2F1c3NpYW5CbHVyRWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODU4MEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdGRUltYWdlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHRkVJbWFnZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzg1OTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVJbWFnZUVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFSW1hZ2VFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODVBMEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGRUltYWdlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFSW1hZ2VF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NUIwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFTGlnaHRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTVkdGRUxpZ2h0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3ODVDMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRUxpZ2h0RWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVMaWdodEVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NUQwRDAwQkYyMDAwNzFCNzgy
IC8qIFNWR0ZFTWVyZ2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTVkdGRU1lcmdlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3ODVFMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRU1lcmdlRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVNZXJnZUVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NUYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZF
TWVyZ2VFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVNZXJnZUVsZW1l
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg2MDBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTVkdGRU1lcmdlTm9kZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzg2MTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVNZXJnZU5v
ZGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRU1lcmdl
Tm9kZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NjIwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0ZFTWVyZ2VOb2RlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFNWR0ZFTWVyZ2VOb2RlRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3ODYzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRU9mZnNldEVsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZFT2Zmc2V0RWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODY0MEQwMEJGMjAw
MDcxQjc4MiAvKiBTVkdGRU9mZnNldEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFNWR0ZFT2Zmc2V0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMjIyNzg2NTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVPZmZzZXRFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVPZmZzZXRFbGVtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NjYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFUG9p
bnRMaWdodEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR0ZFUG9pbnRMaWdodEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjIyNzg2NzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg2ODBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNW
R0ZFUG9pbnRMaWdodEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyNzg2OTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHRkVTcGVjdWxhckxp
Z2h0aW5nRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODZB
MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODZCMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3ODZDMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVNwb3RMaWdodEVs
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZFU3Bv
dExpZ2h0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODZE
MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVNwb3RMaWdodEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFU3BvdExpZ2h0RWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg2RTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVTcG90
TGlnaHRFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVTcG90TGlnaHRF
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NkYwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFVGlsZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFNWR0ZFVGlsZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzg3MDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVUaWxlRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRkVUaWxlRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg3MTBEMDBCRjIwMDA3MUI3ODIgLyog
U1ZHRkVUaWxlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZFVGlsZUVs
ZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg3MjBEMDBCRjIw
MDA3MUI3ODIgLyogU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODczMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVR1
cmJ1bGVuY2VFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdG
RVR1cmJ1bGVuY2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3
ODc0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVR1cmJ1bGVuY2VFbGVtZW50LmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODc1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGaWx0ZXJF
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdGaWx0
ZXJFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NzYwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0ZpbHRlckVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNWR0ZpbHRlckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4NzcwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpbHRlckVsZW1lbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGaWx0ZXJFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NzgwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpbHRlclBy
aW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4NzkwRDAwQkYyMDAwNzFCNzgyIC8qIFNW
R0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODdBMEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBTVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg3QjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRml0
VG9WaWV3Qm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdG
aXRUb1ZpZXdCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg3QzBE
MDBCRjIwMDA3MUI3ODIgLyogU1ZHRml0VG9WaWV3Qm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTVkdGaXRUb1ZpZXdCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4N0QwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpdFRvVmlld0JveC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0ZpdFRvVmlld0JveC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyMjI3ODdFMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZUVs
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZvbnRG
YWNlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODdGMEQw
MEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNWR0ZvbnRGYWNlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzg4MDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VFbGVtZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRm9udEZhY2VFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4ODEwRDAwQkYyMDAwNzFCNzgyIC8qIFNW
R0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjIyMjc4ODIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlRm9ybWF0
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRm9udEZhY2VG
b3JtYXRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODgzMEQw
MEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzg4NDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VO
YW1lRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZH
Rm9udEZhY2VOYW1lRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3ODg1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZU5hbWVFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGb250RmFjZU5hbWVFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODg2MEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGb250RmFjZU5hbWVFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRm9u
dEZhY2VOYW1lRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3
ODg3MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZVNyY0VsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZvbnRGYWNlU3JjRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODg4MEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdGb250RmFjZVNyY0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNWR0ZvbnRGYWNlU3JjRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjIyNzg4OTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VTcmNFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHRm9udEZhY2VTcmNFbGVtZW50LmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4OEEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0Zv
bnRGYWNlVXJpRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHRm9udEZhY2VVcmlFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjIyMjc4OEIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlVXJpRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRm9udEZhY2VVcmlFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODhDMEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdGb250RmFjZVVyaUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdG
b250RmFjZVVyaUVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIy
Nzg4RDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4OEUwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzg4RjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9yZWlnbk9iamVjdEVs
ZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGb3JlaWduT2JqZWN0RWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3ODkwMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdHRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHR0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIy
Nzg5MTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHR0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFNWR0dFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3ODkyMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdHRWxlbWVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFNWR0dFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc4OTMwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0dyYWRpZW50RWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHR3JhZGllbnRFbGVtZW50
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4OTQwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR0dyYWRpZW50RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHR3JhZGllbnRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3ODk1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdHcmFkaWVudEVsZW1lbnQuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTVkdHcmFkaWVudEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzg5NjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHSW1hZ2VFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdJbWFnZUVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzg5NzBEMDBCRjIw
MDA3MUI3ODIgLyogU1ZHSW1hZ2VFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdJbWFnZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjIyMjc4OTgwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ltYWdlRWxlbWVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFNWR0ltYWdlRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3ODlFMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdMZW5ndGguaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBTVkdMZW5ndGguaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzhBMDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTGVuZ3RoTGlzdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTGVuZ3RoTGlzdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhBMTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTGVuZ3Ro
TGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR0xlbmd0aExpc3QuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhBMjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZH
TGluZWFyR3JhZGllbnRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzhBMzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTGluZWFyR3JhZGllbnRF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdMaW5lYXJHcmFk
aWVudEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QTQwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0xpbmVhckdyYWRpZW50RWxlbWVudC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFNWR0xpbmVhckdyYWRpZW50RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyMjI3OEE1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdMaW5lRWxlbWVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHTGluZUVsZW1l
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhBNjBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHTGluZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNWR0xpbmVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3
OEE3MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdMaW5lRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFNWR0xpbmVFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjIyMjc4QUEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0xvY2F0YWJsZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHTG9jYXRhYmxlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QUIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0xvY2F0
YWJsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTG9jYXRhYmxlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEFEMEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdNYXJrZXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTVkdNYXJrZXJFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjIyMjc4QUUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR01hcmtlckVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR01hcmtlckVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QUYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR01hcmtlckVs
ZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdNYXJrZXJFbGVtZW50LmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QjAwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR01hc2tFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTVkdNYXNrRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3
OEIxMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdNYXNrRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU1ZHTWFza0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjIyMjc4QjIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR01hc2tFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHTWFza0VsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzhCMzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTWF0cml4Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHTWF0cml4LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QjQwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR01ldGFkYXRhRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHTWV0YWRh
dGFFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QjUwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR01ldGFkYXRhRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU1ZHTWV0YWRhdGFFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3OEI2MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdNZXRhZGF0YUVsZW1lbnQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdNZXRhZGF0YUVsZW1lbnQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhCNzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZH
TVBhdGhFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
VkdNUGF0aEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhC
ODBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTVBhdGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdNUGF0aEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjIyMjc4QjkwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR051bWJlci5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFNWR051bWJlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3OEJCMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdOdW1iZXJMaXN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdOdW1iZXJMaXN0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEJDMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdOdW1iZXJM
aXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHTnVtYmVyTGlzdC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEMwMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQ
YXJzZXJVdGlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR1BhcnNlclV0aWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3OEMxMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXJzZXJVdGlsaXRpZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhcnNlclV0aWxpdGllcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhDMjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aEVs
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1BhdGhF
bGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4QzMwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR1BhdGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdQYXRoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyNzhDNDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aEVsZW1lbnQuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBTVkdQYXRoRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3OEM1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdQYXRoU2VnLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OEM2MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OEM5MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQXJjQWJz
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0FyY0Ficy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OENBMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQ
YXRoU2VnQXJjUmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0FyY1Jl
bC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OENEMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdQYXRoU2VnQ2xvc2VQYXRoLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
U1ZHUGF0aFNlZ0Nsb3NlUGF0aC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3OEQwMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b0N1YmljQWJzLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY0Ficy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEQxMEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZH
UGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3OEQ0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3Ro
QWJzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Nt
b290aEFicy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEQ1MEQwMEJG
MjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmlkbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aFJlbC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEQ4MEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFNWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljQWJzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjIyMjc4RDkwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdDdXJ2ZXRvUXVh
ZHJhdGljUmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0N1cnZldG9R
dWFkcmF0aWNSZWwuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhEQzBE
MDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290
aEFicy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEREMEQwMEJGMjAw
MDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFNWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoUmVsLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4RTAwRDAwQkYyMDAwNzFCNzgy
IC8qIFNWR1BhdGhTZWdMaW5ldG9BYnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdQ
YXRoU2VnTGluZXRvQWJzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4
RTMwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhFNDBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxSZWwuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OEU1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnTGluZXRv
UmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0xpbmV0b1JlbC5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEU4MEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBTVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzhFOTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRp
Y2FsUmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRp
Y2FsUmVsLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4RUIwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdQYXRoU2VnTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyNzhFQzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0xpc3QuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBTVkdQYXRoU2VnTGlzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3OEVGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQYXRoU2VnTW92ZXRvQWJzLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ01vdmV0b0Ficy5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEYwMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQ
YXRoU2VnTW92ZXRvUmVsLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUGF0aFNlZ01v
dmV0b1JlbC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEYxMEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdQYXR0ZXJuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1ZHUGF0dGVybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMjIyNzhGMjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUGF0dGVybkVsZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BhdHRlcm5FbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEYzMEQwMEJGMjEwMDcxQjc4
MiAvKiBTVkdQYXR0ZXJuRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1Bh
dHRlcm5FbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4RjQw
RDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvaW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
U1ZHUG9pbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhGNjBEMDBC
RjIxMDA3MUI3ODIgLyogU1ZHUG9pbnRMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTVkdQb2ludExpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIy
Mjc4RjcwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvaW50TGlzdC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFNWR1BvaW50TGlzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3OEY4MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5RWxlbWVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUG9seUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzhGOTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUG9s
eUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BvbHlFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEZBMEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdQb2x5Z29uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHUG9seWdvbkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzhGQjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1BvbHlnb25FbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEZDMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdQb2x5Z29uRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1BvbHlnb25F
bGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc4RkQwRDAwQkYy
MTAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU1ZHUG9seWxpbmVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc4RkUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUG9seWxpbmVFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OEZGMEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBT
VkdQb2x5bGluZUVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIy
NzkwMTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkwMjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
UHJlc2VydmVBc3BlY3RSYXRpby5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1ByZXNl
cnZlQXNwZWN0UmF0aW8uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkw
MzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkwNDBEMDBCRjIxMDA3MUI3
ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjIyMjc5MDUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50
RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1JhZGlhbEdyYWRpZW50RWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTA2MEQwMEJGMjEw
MDcxQjc4MiAvKiBTVkdSZWN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHUmVjdC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTA3MEQwMEJGMjEwMDcxQjc4
MiAvKiBTVkdSZWN0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHUmVjdEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyNzkwODBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1JlY3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OTA5MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdSZWN0RWxlbWVudC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1JlY3RFbGVtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MEEwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1JlbmRl
cmluZ0ludGVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUmVuZGVy
aW5nSW50ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTBCMEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdSZW5kZXJpbmdJbnRlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBTVkdSZW5kZXJpbmdJbnRlbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjIyNzkwQzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHU2NyaXB0RWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHU2NyaXB0RWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTBEMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdTY3JpcHRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdT
Y3JpcHRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTBFMEQw
MEJGMjEwMDcxQjc4MiAvKiBTVkdTY3JpcHRFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gU1ZHU2NyaXB0RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3OTBGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTZXRFbGVtZW50LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdTZXRFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MTAwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1NldEVs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1NldEVsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MTEwRDAwQkYyMTAwNzFCNzgy
IC8qIFNWR1NldEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdTZXRFbGVt
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MTIwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1N0b3BFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTVkdTdG9wRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3OTEzMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTdG9wRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHU3RvcEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MTQwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N0b3BFbGVt
ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHU3RvcEVsZW1lbnQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkxNjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
U3RyaW5nTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHU3RyaW5n
TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkxNzBEMDBCRjIxMDA3
MUI3ODIgLyogU1ZHU3RyaW5nTGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1N0
cmluZ0xpc3QuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkxRjBEMDBC
RjIxMDA3MUI3ODIgLyogU1ZHR3JhcGhpY3NFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTVkdHcmFwaGljc0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzkyMDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHR3JhcGhpY3NF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdHcmFwaGljc0Vs
ZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MjEwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1N0eWxlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHU3R5bGVFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjIyMjc5MjIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N0eWxlRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHU3R5bGVFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTIzMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTdHls
ZUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdTdHlsZUVsZW1lbnQuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkyNDBEMDBCRjIxMDA3MUI3ODIg
LyogU1ZHU1ZHRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHU1ZHRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3
OTI1MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTVkdFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdTVkdFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyMjI3OTI2MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTVkdFbGVtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHU1ZHRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OTI3MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTd2l0Y2hFbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdTd2l0Y2hFbGVt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MjgwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1N3aXRjaEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNWR1N3aXRjaEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjIyMjc5MjkwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N3aXRjaEVsZW1lbnQuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBTVkdTd2l0Y2hFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjIyMjc5MkEwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1N5bWJvbEVsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1N5bWJvbEVsZW1l
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkyQjBEMDBCRjIxMDA3
MUI3ODIgLyogU1ZHU3ltYm9sRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU1ZHU3ltYm9sRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyNzkyQzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHU3ltYm9sRWxlbWVudC5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFNWR1N5bWJvbEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzkyRDBEMDBCRjIxMDA3MUI3ODIgLyogc3ZndGFncy5pbiAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gc3ZndGFncy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjIyMjc5MkUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1Rlc3RzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdUZXN0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyMjI3OTJGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXN0cy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVGVzdHMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MzAwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1Rlc3RzLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHVGVzdHMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzkzMTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dENvbnRlbnRFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdUZXh0Q29u
dGVudEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkzMjBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dENvbnRlbnRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTVkdUZXh0Q29udGVudEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MzMwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRDb250
ZW50RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1RleHRDb250ZW50RWxl
bWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTM0MEQwMEJGMjEw
MDcxQjc4MiAvKiBTVkdUZXh0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHVGV4dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMjIyNzkzNTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dEVsZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RleHRFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTM2MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXh0RWxl
bWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1RleHRFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5MzcwRDAwQkYyMTAwNzFCNzgyIC8qIFNW
R1RleHRQYXRoRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHVGV4dFBhdGhFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjIyMjc5MzgwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRQYXRoRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVGV4dFBhdGhFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTM5MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXh0
UGF0aEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdUZXh0UGF0aEVsZW1l
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzkzQTBEMDBCRjIxMDA3
MUI3ODIgLyogU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTNCMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdU
ZXh0UG9zaXRpb25pbmdFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3OTNDMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTNEMEQwMEJGMjEwMDcxQjc4
MiAvKiBTVkdUaXRsZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNWR1RpdGxlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyMjI3OTNFMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUaXRsZUVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RpdGxlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzkzRjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGl0bGVFbGVt
ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHVGl0bGVFbGVtZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5NDEwRDAwQkYyMTAwNzFCNzgyIC8qIFNW
R1RyYW5zZm9ybS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVHJhbnNm
b3JtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTQyMEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdUcmFuc2Zvcm0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdUcmFu
c2Zvcm0uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk0MzBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtYWJsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gU1ZHVHJhbnNmb3JtYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyMjI3OTQ0MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUcmFuc2Zvcm1hYmxlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdUcmFuc2Zvcm1hYmxlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTQ2MEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdUcmFuc2Zvcm1EaXN0YW5jZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU1ZHVHJhbnNmb3JtRGlzdGFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMjIyNzk0NzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtRGlzdGFuY2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RyYW5zZm9ybURpc3RhbmNlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTQ5MEQwMEJGMjEwMDcxQjc4MiAv
KiBTVkdUcmFuc2Zvcm1MaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
VkdUcmFuc2Zvcm1MaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTRB
MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUcmFuc2Zvcm1MaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gU1ZHVHJhbnNmb3JtTGlzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjI3OTRCMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUUmVmRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVFJlZkVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk0QzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
VFJlZkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1RSZWZF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTREMEQwMEJGMjEw
MDcxQjc4MiAvKiBTVkdUUmVmRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNW
R1RSZWZFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5NEUw
RDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RTcGFuRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVFNwYW5FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjIyMjc5NEYwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RTcGFuRWxlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVFNwYW5FbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTUwMEQwMEJGMjEwMDcxQjc4MiAv
KiBTVkdUU3BhbkVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdUU3BhbkVs
ZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk1MTBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVW5pdFR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBTVkdVbml0VHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5
NTIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1VuaXRUeXBlcy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFNWR1VuaXRUeXBlcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
MjI3OTUzMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdVUklSZWZlcmVuY2UuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1VSSVJlZmVyZW5jZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTU0MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdVUklS
ZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1VSSVJlZmVy
ZW5jZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk1NTBEMDBCRjIxMDA3
MUI3ODIgLyogU1ZHVVJJUmVmZXJlbmNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZH
VVJJUmVmZXJlbmNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5NTYw
RDAwQkYyMTAwNzFCNzgyIC8qIFNWR1VzZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1VzZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMjIyNzk1NzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVXNlRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHVXNlRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk1ODBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVXNl
RWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1VzZUVsZW1lbnQuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk1OTBEMDBCRjIxMDA3MUI3ODIgLyog
U1ZHVmlld0VsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNWR1ZpZXdFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5
NUEwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1ZpZXdFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdWaWV3RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjIyNzk1QjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVmlld0VsZW1lbnQuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdWaWV3RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyMjI3OTVDMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdWaWV3U3BlYy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHVmlld1NwZWMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyNzk1RDBEMDBCRjIxMDA3MUI3ODIg
LyogU1ZHVmlld1NwZWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1Zp
ZXdTcGVjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyMjI3OTVFMEQwMEJGMjEw
MDcxQjc4MiAvKiBTVkdWaWV3U3BlYy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1Zp
ZXdTcGVjLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMjc5NUYwRDAwQkYy
MTAwNzFCNzgyIC8qIFNWR1pvb21BbmRQYW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNWR1pvb21BbmRQYW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMjIyNzk2MDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHWm9vbUFuZFBhbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHWm9vbUFuZFBhbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyNzk2MTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHWm9vbUFuZFBh
bi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR1pvb21BbmRQYW4uaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyN0IwMDBEMDBCRkYxMDA3MUI3ODIgLyogU1ZHQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTVkdDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMjIyN0IwNDBEMDBCRkYxMDA3MUI3ODIgLyogU1ZHQ1NTVmFs
dWVLZXl3b3Jkcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHQ1NTVmFsdWVLZXl3b3Jk
cy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMkY2OTYwQUI3NzE5NTAwMjJF
RkFEIC8qIEpTU1ZHQW5nbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU1ZHQW5nbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjIyRjY5
NzBBQjc3MTk1MDAyMkVGQUQgLyogSlNTVkdBbmdsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNTVkdBbmdsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MjIyRjY5QTBBQjc3MUI4MDAyMkVGQUQgLyogSlNTVkdFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjIyRjY5QjBBQjc3MUI4MDAyMkVGQUQgLyogSlNTVkdFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0VsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIyMzYyMjYwQzNBRjA0QTAwMDhDQTlCIC8qIEpT
U1ZHVGV4dFBhdGhFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1NWR1RleHRQYXRoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyMjM2MjI3MEMzQUYwNEEwMDA4Q0E5QiAvKiBKU1NWR1RleHRQYXRoRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdUZXh0UGF0aEVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIzNTQwRjAwRDAwNzgyRTAwMjM4MkZBIC8q
IFN0cmluZ1RydW5jYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU3RyaW5nVHJ1bmNhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjIz
NTQwRjEwRDAwNzgyRTAwMjM4MkZBIC8qIFN0cmluZ1RydW5jYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU3RyaW5nVHJ1bmNhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyNTU5OEVBMEQwMEQ4QjkwMEJCODI1QyAvKiBTVkdGRUltYWdlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdGRUltYWdlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI1NTk4RUIwRDAwRDhCOTAwQkI4MjVDIC8qIFNW
R0ZFSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0ZFSW1hZ2Uu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI1NTk5MEIwRDAwRDhCOTAwQkI4MjVD
IC8qIFNWR0ltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
VkdJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNTU5OTBDMEQwMEQ4
QjkwMEJCODI1QyAvKiBTVkdJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU1ZHSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI1NTk5MEQwRDAw
RDhCOTAwQkI4MjVDIC8qIEVtcHR5Q2xpZW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRW1wdHlDbGllbnRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
NzUzNTJBMEIwNTM4MTQwMDJDRTY0RiAvKiBUcmFuc2Zvcm1hdGlvbk1hdHJpeENHLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2Zvcm1hdGlvbk1hdHJpeENH
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1MkIwQjA1MzgxNDAwMkNF
NjRGIC8qIEZsb2F0UG9pbnRDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRmxvYXRQb2ludENHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3
NTM1MkMwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UmVjdENHLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGbG9hdFJlY3RDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyNzUzNTJEMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFNpemVDRy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmxvYXRTaXplQ0cuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1MzUzMjBCMDUzODE0MDAyQ0U2NEYgLyog
SW50UG9pbnRDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW50
UG9pbnRDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzUzNTMzMEIwNTM4
MTQwMDJDRTY0RiAvKiBJbnRSZWN0Q0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEludFJlY3RDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
NzUzNTM0MEIwNTM4MTQwMDJDRTY0RiAvKiBJbnRTaXplQ0cuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEludFNpemVDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyNzUzNTM1MEIwNTM4MTQwMDJDRTY0RiAvKiBQYXRoQ0cuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhdGhDRy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyNzUzNTM2MEIwNTM4MTQwMDJDRTY0RiAvKiBQREZEb2N1bWVudElt
YWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQREZEb2N1bWVu
dEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1MzcwQjA1Mzgx
NDAwMkNFNjRGIC8qIFBERkRvY3VtZW50SW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBERkRvY3VtZW50SW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjI3NTM1MzgwQjA1MzgxNDAwMkNFNjRGIC8qIENvbG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb2xvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyNzUzNTM5MEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ29sb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjI3NTM1M0EwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9pbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZsb2F0UG9pbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjc1MzUzQjBCMDUzODE0MDAyQ0U2NEYgLyogRmxvYXRQb2ludC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmxvYXRQb2ludC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1MzUzQzBCMDUzODE0MDAyQ0U2NEYgLyogRmxvYXRS
ZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGbG9hdFJlY3Qu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1MzUzRDBCMDUzODE0MDAyQ0U2
NEYgLyogRmxvYXRSZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGbG9h
dFJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1M0UwQjA1MzgxNDAw
MkNFNjRGIC8qIEZsb2F0U2l6ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRmxvYXRTaXplLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1
M0YwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0U2l6ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRmxvYXRTaXplLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
NzUzNTQwMEIwNTM4MTQwMDJDRTY0RiAvKiBJY29uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJY29uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzUzNTQx
MEIwNTM4MTQwMDJDRTY0RiAvKiBJbWFnZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSW1hZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1
MzU0MjBCMDUzODE0MDAyQ0U2NEYgLyogSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzUzNTQ0
MEIwNTM4MTQwMDJDRTY0RiAvKiBJbnRQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSW50UG9pbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1
NDUwQjA1MzgxNDAwMkNFNjRGIC8qIEludFJlY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEludFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjc1MzU0NjBCMDUzODE0MDAyQ0U2NEYgLyogSW50UmVjdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW50UmVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjc1MzU0NzBCMDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW50U2l6ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjc1MzU0ODBCMDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZUhhc2guaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludFNpemVIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyNzUzNTRBMEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvck1hYy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBDb2xvck1hYy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1NEIwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9p
bnRNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRmxvYXRQ
b2ludE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1NEMwQjA1Mzgx
NDAwMkNFNjRGIC8qIEZsb2F0UmVjdENvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IEZsb2F0UmVjdENvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMjc1MzU0RDBCMDUzODE0MDAyQ0U2NEYgLyogRmxvYXRTaXplTWFjLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZsb2F0U2l6ZU1hYy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3NTM1NEUwQjA1MzgxNDAwMkNFNjRGIC8qIElt
YWdlTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEltYWdl
TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1MzU0RjBCMDUzODE0MDAy
Q0U2NEYgLyogSW50UG9pbnRNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gSW50UG9pbnRNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
NzUzNTUwMEIwNTM4MTQwMDJDRTY0RiAvKiBJbnRSZWN0Q29jb2EubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gSW50UmVjdENvY29hLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMjc1MzU1MTBCMDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZU1hYy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbnRTaXplTWFjLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjc1MzU1MjBCMDUzODE0MDAyQ0U2NEYg
LyogUGF0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGF0aC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzUzNTUzMEIwNTM4MTQwMDJDRTY0
RiAvKiBQYXRoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXRoLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzUzNThEMEIwNTNBNjYwMDJDRTY0RiAvKiBJ
Y29uTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEljb25N
YWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyNzdCNDAzMEIyMkYzN0MwMDA0
QkVDNiAvKiBHcmFwaGljc0NvbnRleHRDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjI3QjI4MUYwQ0VGMEMwNzAwRDM5RDU0IC8qIEpTU1ZHRm9udEVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRm9udEVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjdCMjgyMDBDRUYwQzA3
MDBEMzlENTQgLyogSlNTVkdGb250RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNTVkdGb250RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMjdCMjgyMTBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdHbHlwaEVsZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHR2x5cGhFbGVtZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI3QjI4MjIwQ0VGMEMwNzAwRDM5RDU0IC8q
IEpTU1ZHR2x5cGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1NWR0dseXBoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjdCMjgy
MzBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR01pc3NpbmdHbHlwaEVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjdCMjgyNDBDRUYwQzA3MDBEMzlE
NTQgLyogSlNTVkdNaXNzaW5nR2x5cGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1NWR01pc3NpbmdHbHlwaEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjI4QzZBMUUwRDAwQzQ0ODAwMzM0QUE0IC8qIFNWR0RvY3VtZW50RXh0ZW5z
aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHRG9jdW1l
bnRFeHRlbnNpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjI4QzZBMUYw
RDAwQzQ0ODAwMzM0QUE0IC8qIFNWR0RvY3VtZW50RXh0ZW5zaW9ucy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHRG9jdW1lbnRFeHRlbnNpb25zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyOEM2QTIwMEQwMEM0NDgwMDMzNEFBNCAvKiBTVkdJbWFnZUxv
YWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHSW1hZ2VM
b2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMjhDNkEyMTBEMDBDNDQ4
MDAzMzRBQTQgLyogU1ZHSW1hZ2VMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNWR0ltYWdlTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
OEM2QTI2MEQwMEM0NDgwMDMzNEFBNCAvKiB4bGlua2F0dHJzLmluICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSB4bGlua2F0dHJzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkEw
MTU5MjBBRjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3NDb250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFwaGljc0NvbnRleHQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkEwMTU5MzBBRjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3ND
b250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFwaGljc0NvbnRl
eHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJBMDE1OTQwQUY2Q0Q1MzAwNkJD
RTBFIC8qIEdyYXBoaWNzVHlwZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEdyYXBoaWNzVHlwZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MkEwMTU5NTBBRjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3NUeXBlcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gR3JhcGhpY3NUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkExMEI5MTBCMzgxOEJEMDAwOTlBQTQgLyogSW1hZ2VCdWZmZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlQnVmZmVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyQTEwQzkxMEIzODE4QkQwMDA5OUFBNCAvKiBJbWFnZUJ1ZmZl
clBpcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlQnVmZmVyUGlw
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkExRjJBMTBDRUYwQUJGMDA0NDJG
NkEgLyogU1ZHRm9udEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNWR0ZvbnRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjJBMUYyQTIwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0ZvbnRFbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdGb250RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMkExRjJBMzBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHRm9udEVsZW1lbnQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdGb250RWxlbWVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQTFGMkE0MENFRjBBQkYwMDQ0MkY2QSAvKiBTVkdHbHlw
aEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0ds
eXBoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQTFGMkE1MENF
RjBBQkYwMDQ0MkY2QSAvKiBTVkdHbHlwaEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNWR0dseXBoRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkExRjJBNjBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHR2x5cGhFbGVtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gU1ZHR2x5cGhFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjJBMUYyQTcwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR01pc3NpbmdHbHlw
aEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR01p
c3NpbmdHbHlwaEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkEx
RjJBODBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkExRjJBOTBDRUYwQUJGMDA0NDJGNkEgLyogU1ZH
TWlzc2luZ0dseXBoRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNWR01pc3Np
bmdHbHlwaEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkFGRkM3
NTBEMDBBNUMxMDAzMDA3NEQgLyogRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQUZGQzc2MEQwMEE1QzEwMDMwMDc0RCAv
KiBGb250Q3VzdG9tUGxhdGZvcm1EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBGb250Q3VzdG9tUGxhdGZvcm1EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyQUZGQzc4MEQwMEE1QzEwMDMwMDc0RCAvKiBGb250Q2FzY2FkZUNvY29hLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZvbnRDYXNjYWRlQ29jb2EubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQUZGQzhDMEQwMEE1REYwMDMwMDc0RCAv
KiBUZXh0Qm91bmRhcmllcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBUZXh0Qm91bmRhcmllcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJC
MUY3MTQwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50ZXJFdmVudHNIaXRSdWxlcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2ZW50c0hpdFJ1bGVzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJCMUY3MTUwRDAwQ0FBODAwNEFFQTY0
IC8qIFBvaW50ZXJFdmVudHNIaXRSdWxlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUG9pbnRlckV2ZW50c0hpdFJ1bGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyQzNEOUYyMEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpQ29udGV4dC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmlkaUNvbnRleHQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkMzRDlGMzBEMDA2QzFEMDBFRjZGMjYgLyogQmlkaUNvbnRl
eHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpZGlDb250ZXh0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEOUY0MEQwMDZDMUQwMEVGNkYyNiAvKiBC
aWRpUmVzb2x2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpZGlSZXNv
bHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMzRDlGRTBEMDA2QzFEMDBF
RjZGMjYgLyogU2VnbWVudGVkU3RyaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTZWdtZW50ZWRTdHJpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkMzRDlGRjBEMDA2QzFEMDBFRjZGMjYgLyogU2VnbWVudGVkU3RyaW5nLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZWdtZW50ZWRTdHJpbmcuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJDM0RBMDQwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRCb3Vu
ZGFyaWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0Qm91bmRhcmll
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMzREEwOTBEMDA2QzFEMDBFRjZG
MjYgLyogVGV4dENvZGVjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBUZXh0Q29kZWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMzREEwQTBE
MDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBUZXh0Q29kZWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJDM0RB
MEIwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY0lDVS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dENvZGVjSUNVLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJDM0RBMEMwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY0lDVS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dENvZGVjSUNVLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTBEMEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29k
ZWNMYXRpbjEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRD
b2RlY0xhdGluMS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTBFMEQw
MDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29kZWNMYXRpbjEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFRleHRDb2RlY0xhdGluMS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkMzREEwRjBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjVXNlckRlZmluZWQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDb2RlY1VzZXJEZWZp
bmVkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJDM0RBMTAwRDAwNkMxRDAw
RUY2RjI2IC8qIFRleHRDb2RlY1VzZXJEZWZpbmVkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBUZXh0Q29kZWNVc2VyRGVmaW5lZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkMzREExMTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjVVRGMTYuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRDb2RlY1VURjE2LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJDM0RBMTIwRDAwNkMxRDAwRUY2RjI2IC8q
IFRleHRDb2RlY1VURjE2LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0
Q29kZWNVVEYxNi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMzREExNTBEMDA2
QzFEMDBFRjZGMjYgLyogVGV4dEZsYWdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBUZXh0RmxhZ3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJDM0RBMTYw
RDAwNkMxRDAwRUY2RjI2IC8qIFRleHRFbmNvZGluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVGV4dEVuY29kaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjJDM0RBMTcwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRFbmNvZGluZy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEVuY29kaW5nLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTE4MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0RW5jb2Rp
bmdSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4
dEVuY29kaW5nUmVnaXN0cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMz
REExOTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRFbmNvZGluZ1JlZ2lzdHJ5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTRGMEQwMDZDRDYwMEVGNkYyNiAvKiBGb250Q2Fz
Y2FkZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2Nh
ZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkMzREE1MDBEMDA2Q0Q2MDBF
RjZGMjYgLyogRm9udENhc2NhZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZvbnRDYXNjYWRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTUxMEQw
MDZDRDYwMEVGNkYyNiAvKiBGb250Q2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZvbnRDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyQzNEQTUyMEQwMDZDRDYwMEVGNkYyNiAvKiBGb250Q2FjaGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkMzREE1MzBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyQzNEQTU0MEQwMDZDRDYwMEVGNkYyNiAvKiBGb250LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBGb250Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyQzNEQTU1MEQwMDZDRDYwMEVGNkYyNiAvKiBGb250RGVzY3JpcHRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnREZXNjcmlwdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkMzREE1NjBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENhc2NhZGVG
b250cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udENhc2Nh
ZGVGb250cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzNEQTU3MEQwMDZD
RDYwMEVGNkYyNiAvKiBGb250Q2FzY2FkZUZvbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBGb250Q2FzY2FkZUZvbnRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyQzNEQTVBMEQwMDZDRDYwMEVGNkYyNiAvKiBGb250U2VsZWN0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRTZWxlY3Rvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMkMzREE1QjBEMDA2Q0Q2MDBFRjZGMjYgLyogR2x5cGhCdWZmZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdseXBoQnVmZmVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyQzk2RDhDMEIzQUYyQjcwMDVFODBFQyAvKiBKU1NWR1Bh
dGhTZWdDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U1ZHUGF0aFNlZ0N1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRDNE
QTUzMEQwMDZDRDYwMEVGNkYyNyAvKiBPcGVuVHlwZU1hdGhEYXRhLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPcGVuVHlwZU1hdGhEYXRhLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJEM0RBNTMwRDAwNkNENjAwRUY2RjNBIC8qIE9wZW5UeXBl
Q0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9wZW5UeXBlQ0cu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkQzREE1NDBEMDA2Q0Q2MDBFRjZG
MjcgLyogT3BlblR5cGVNYXRoRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gT3BlblR5cGVNYXRoRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkQz
REE1NDBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVDRy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gT3BlblR5cGVDRy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMkQzRUE1NDBEMDA2Q0Q2MDBFRjZGMjggLyogT3BlblR5cGVUeXBlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3BlblR5cGVUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMkUyN0M5RDBCMEYyQjA5MDBGMTdDN0IgLyogRmxvYXRQb2ludDNELmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGbG9hdFBvaW50M0QuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkUyN0M5RTBCMEYyQjA5MDBGMTdDN0Ig
LyogRmxvYXRQb2ludDNELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGbG9h
dFBvaW50M0QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJFNEVDOTQwRDAwQzIy
QjAwNDMyNjQzIC8qIFNWR1pvb21FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1ZHWm9vbUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjJFNEVDOTUwRDAwQzIyQjAwNDMyNjQzIC8qIFNWR1pvb21FdmVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHWm9vbUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyRTRFQzk2MEQwMEMyMkIwMDQzMjY0MyAvKiBTVkdab29tRXZlbnQuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdab29tRXZlbnQuaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkVEOTc3MDBCMUY1NUNFMDAyNTdEMEYgLyogR3JhcGhpY3NDb250
ZXh0Q0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyYXBoaWNz
Q29udGV4dENHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGMzRGRTUwRTgy
RjgxNDAwRjYyN0NEIC8qIEROUy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
TlMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGMzRGRTgwRTgyRjgyNzAwRjY0
OENEIC8qIEROU1Jlc29sdmVRdWV1ZUNGTmV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEROU1Jlc29sdmVRdWV1ZUNGTmV0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJGQTNDNEUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZUNvbG9y
RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdB
bmltYXRlQ29sb3JFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJG
QTNDNEYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZUNvbG9yRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBbmltYXRlQ29sb3JFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzUwMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0FuaW1hdGVkQW5nbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHQW5pbWF0ZWRBbmdsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyRkEzQzUxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkQW5nbGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWRBbmdsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M1MjBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdBbmltYXRlZEJvb2xlYW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU1ZHQW5pbWF0ZWRCb29sZWFuLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjJGQTNDNTMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRCb29sZWFuLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FuaW1hdGVkQm9vbGVhbi5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M1NDBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdBbmltYXRlZEVudW1lcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1NWR0FuaW1hdGVkRW51bWVyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMkZBM0M1NTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZEVu
dW1lcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0FuaW1h
dGVkRW51bWVyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDNTYw
QUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRJbnRlZ2VyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FuaW1hdGVkSW50ZWdlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzU3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0FuaW1hdGVkSW50ZWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
VkdBbmltYXRlZEludGVnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTND
NTgwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRMZW5ndGguY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWRMZW5ndGguY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M1OTBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdBbmltYXRlZExlbmd0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
VkdBbmltYXRlZExlbmd0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M1
QTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZExlbmd0aExpc3QuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWRMZW5ndGhMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDNUIwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHQW5pbWF0ZWRMZW5ndGhMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NWR0FuaW1hdGVkTGVuZ3RoTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0M1QzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51bWJlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBbmltYXRlZE51
bWJlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzVEMEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTnVtYmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1NWR0FuaW1hdGVkTnVtYmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyRkEzQzVFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTnVtYmVyTGlz
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBbmltYXRl
ZE51bWJlckxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M1RjBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51bWJlckxpc3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWROdW1iZXJMaXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzYyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0Fu
aW1hdGVkUHJlc2VydmVBc3BlY3RSYXRpby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNTVkdBbmltYXRlZFByZXNlcnZlQXNwZWN0UmF0aW8uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M2MzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdB
bmltYXRlZFByZXNlcnZlQXNwZWN0UmF0aW8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTU1ZHQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVjdFJhdGlvLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyRkEzQzY0MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVk
UmVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBbmlt
YXRlZFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M2NTBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFJlY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWRSZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyRkEzQzY2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkU3RyaW5nLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FuaW1hdGVkU3Ry
aW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDNjcwQUI3NUE2RTAw
MEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRTdHJpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZWRTdHJpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjJGQTNDNjgwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRUcmFuc2Zvcm1M
aXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0FuaW1h
dGVkVHJhbnNmb3JtTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEz
QzY5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkVHJhbnNmb3JtTGlzdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBbmltYXRlZFRyYW5zZm9ybUxpc3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDNkEwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHQW5pbWF0ZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTU1ZHQW5pbWF0ZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0M2QjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdBbmltYXRlRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M2QzBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdBbmltYXRlVHJhbnNmb3JtRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdBbmltYXRlVHJhbnNmb3JtRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzZEMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzQzZFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGlvbkVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHQW5pbWF0
aW9uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzZGMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHQW5pbWF0aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkZBM0M3MDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdDaXJjbGVF
bGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0Np
cmNsZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M3MTBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdDaXJjbGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1NWR0NpcmNsZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJGQTNDNzIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQ2xpcFBhdGhFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0NsaXBQ
YXRoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzczMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0NsaXBQYXRoRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdDbGlwUGF0aEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjJGQTNDNzYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQ29tcG9uZW50
VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTU1ZHQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M3NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNTVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M3ODBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdDdXJzb3JFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1NWR0N1cnNvckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMkZBM0M3OTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdDdXJzb3JFbGVtZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0N1cnNvckVsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDN0EwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZH
RGVmc0VsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U1ZHRGVmc0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M3
QjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdEZWZzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdEZWZzRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkZBM0M3QzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdEZXNjRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdEZXNjRWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzdEMEFCNzVBNkUwMDBF
NUFDNCAvKiBKU1NWR0Rlc2NFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0Rlc2NFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
RkEzQzdFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0RvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0RvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDN0YwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRG9jdW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRG9jdW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDODAwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHRWxsaXBzZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHRWxsaXBzZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0M4MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdFbGxpcHNlRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdFbGxpcHNlRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M4MjBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdGRUJsZW5kRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNTVkdGRUJsZW5kRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUIyRkEzQzgzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFQmxlbmRFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZFQmxlbmRFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzg0MEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjJGQTNDODUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVDb2xvck1h
dHJpeEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVD
b2xvck1hdHJpeEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTND
ODYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVDb21wb25lbnRU
cmFuc2ZlckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M4
NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUNvbXBvbmVudFRyYW5zZmVyRWxlbWVudC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRUNvbXBvbmVudFRyYW5zZmVy
RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M4ODBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdGRUNvbXBvc2l0ZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVDb21wb3NpdGVFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDODkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZH
RkVDb21wb3NpdGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1NWR0ZFQ29tcG9zaXRlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MkZBM0M4QTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRURpZmZ1c2VMaWdodGluZ0VsZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVEaWZmdXNl
TGlnaHRpbmdFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTND
OEIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxl
bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M4QzBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDOEQwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M4RTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRURp
c3RhbnRMaWdodEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjJGQTNDOEYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaXN0YW50TGlnaHRF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZFRGlzdGFu
dExpZ2h0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M5MDBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZsb29kRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGRUZsb29kRWxlbWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzkxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZF
Rmxvb2RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZF
Rmxvb2RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzkyMEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY0FFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZFRnVuY0FFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDOTMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVG
dW5jQUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVG
dW5jQUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDOTQwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVGdW5jQkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVGdW5jQkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M5NTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1
bmNCRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRUZ1
bmNCRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M5NjBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNHRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGRUZ1bmNHRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzk3MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVu
Y0dFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZFRnVu
Y0dFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzk4MEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY1JFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZFRnVuY1JFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDOTkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVGdW5j
UkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVGdW5j
UkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDOUEwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHRkVHYXVzc2lhbkJsdXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzlCMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNTVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJGQTNDOUMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVJbWFnZUVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVJbWFn
ZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0M5RDBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGRUltYWdlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNTVkdGRUltYWdlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkZBM0M5RTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRU1lcmdlRWxlbWVu
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGRU1lcmdl
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQzlGMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0ZFTWVyZ2VFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1NWR0ZFTWVyZ2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzQ0EwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFTWVyZ2VOb2RlRWxl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGRU1l
cmdlTm9kZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NB
MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRU1lcmdlTm9kZUVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVNZXJnZU5vZGVFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0EyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0ZFT2Zmc2V0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNTVkdGRU9mZnNldEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMkZBM0NBMzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRU9mZnNldEVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVPZmZzZXRFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0E0MEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR0ZFUG9pbnRMaWdodEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyRkEzQ0E1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFUG9pbnRMaWdo
dEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHRkVQb2lu
dExpZ2h0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NBNjBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NBNzBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDQTgwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRkVTcG90TGlnaHRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1NWR0ZFU3BvdExpZ2h0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyRkEzQ0E5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFU3BvdExp
Z2h0RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRVNw
b3RMaWdodEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDQUEw
QUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVUaWxlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdGRVRpbGVFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDQUIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVU
aWxlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGRVRp
bGVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0FDMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0FEMEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTU1ZHRkVUdXJidWxlbmNlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0NBRTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGaWx0ZXJFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR0ZpbHRlckVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NBRjBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdGaWx0ZXJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR0ZpbHRlckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjJGQTNDQjAwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHRm9yZWlnbk9iamVj
dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NCMTBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdGb3JlaWduT2JqZWN0RWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NCMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdH
RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdH
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0IzMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0dFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NWR0dFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
RkEzQ0I0MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0dyYWRpZW50RWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdHcmFkaWVudEVsZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NCNTBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdHcmFkaWVudEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTU1ZHR3JhZGllbnRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyRkEzQ0I2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ltYWdlRWxlbWVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdJbWFnZUVsZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NCNzBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdJbWFnZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
U1ZHSW1hZ2VFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0I4
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdMZW5ndGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0NCOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdMZW5ndGguaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTGVuZ3RoLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyRkEzQ0JBMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aExp
c3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTGVuZ3Ro
TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0JCMEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0xlbmd0aExpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTU1ZHTGVuZ3RoTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
MkZBM0NCQzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTGluZWFyR3JhZGll
bnRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDQkQwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NCRTBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdMaW5lRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNTVkdMaW5lRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEz
Q0JGMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xpbmVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0xpbmVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyRkEzQ0MwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hcmtlckVsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHTWFya2Vy
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0MxMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR01hcmtlckVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTU1ZHTWFya2VyRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0NDMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNYXNrRWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdNYXNrRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0MzMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR01hc2tFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1NWR01hc2tFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEz
Q0M0MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hdHJpeC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdNYXRyaXguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkZBM0NDNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNYXRyaXguaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTWF0cml4Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0M2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01ldGFk
YXRhRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNT
VkdNZXRhZGF0YUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZB
M0NDNzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNZXRhZGF0YUVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHTWV0YWRhdGFFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0M4MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR051
bWJlckxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZH
TnVtYmVyTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0M5MEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR051bWJlckxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTU1ZHTnVtYmVyTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0NDQzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoRWxlbWVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdQYXRoRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0NEMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR1BhdGhFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1NWR1BhdGhFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0NF
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0aFNlZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzQ0NGMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWcuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUGF0aFNlZy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NEMDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRo
U2VnQXJjQWJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NW
R1BhdGhTZWdBcmNBYnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NE
MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQXJjQWJzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdBcmNBYnMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRDIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0Fy
Y1JlbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdQYXRo
U2VnQXJjUmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRDMwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0FyY1JlbC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNTVkdQYXRoU2VnQXJjUmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzQ0Q0MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDbG9zZVBh
dGguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0aFNl
Z0Nsb3NlUGF0aC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0Q1MEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDbG9zZVBhdGguaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ0Nsb3NlUGF0aC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkZBM0NENjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2Vn
Q3VydmV0b0N1YmljQWJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0NENzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1
YmljQWJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdD
dXJ2ZXRvQ3ViaWNBYnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRDgw
QUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdQYXRoU2VnQ3VydmV0b0N1Ymlj
UmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRDkwQUI3NUE2RTAw
MEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1JlbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0RBMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1Bh
dGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhBYnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aEFicy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0RCMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhBYnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aEFicy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NEQzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRo
U2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NERDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQ
YXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDREUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNl
Z0N1cnZldG9RdWFkcmF0aWNBYnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkZBM0NERjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2Vn
Q3VydmV0b1F1YWRyYXRpY0Ficy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCMkZBM0NFMDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1
YWRyYXRpY1JlbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNT
VkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1JlbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyRkEzQ0UxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvUXVh
ZHJhdGljUmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhT
ZWdDdXJ2ZXRvUXVhZHJhdGljUmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
RkEzQ0UyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21v
b3RoQWJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1Bh
dGhTZWdDdXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjJGQTNDRTMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9R
dWFkcmF0aWNTbW9vdGhBYnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
U1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJGQTNDRTQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZl
dG9RdWFkcmF0aWNTbW9vdGhSZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NFNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQ
YXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NFNjBBQjc1QTZFMDAwRTVBQzQgLyogSlNT
VkdQYXRoU2VnTGluZXRvQWJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1NWR1BhdGhTZWdMaW5ldG9BYnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0NFNzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvQWJzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdMaW5ldG9BYnMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRTgwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NFOTBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbEFicy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbEFicy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NFQTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQ
YXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNTVkdQYXRoU2VnTGluZXRvSG9yaXpvbnRhbFJlbC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0VCMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1Bh
dGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUIyRkEzQ0VDMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5l
dG9SZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0
aFNlZ0xpbmV0b1JlbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0VE
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9SZWwuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ0xpbmV0b1JlbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NFRTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRo
U2VnTGluZXRvVmVydGljYWxBYnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsQWJzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRUYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xp
bmV0b1ZlcnRpY2FsQWJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NW
R1BhdGhTZWdMaW5ldG9WZXJ0aWNhbEFicy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCMkZBM0NGMDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvVmVydGljYWxS
ZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0aFNl
Z0xpbmV0b1ZlcnRpY2FsUmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJG
QTNDRjEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsUmVsLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdMaW5ldG9WZXJ0
aWNhbFJlbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NGMjBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNTVkdQYXRoU2VnTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzQ0YzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaXN0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdMaXN0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0Y0MEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR1BhdGhTZWdNb3ZldG9BYnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU1ZHUGF0aFNlZ01vdmV0b0Ficy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyRkEzQ0Y1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdNb3ZldG9BYnMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUGF0aFNlZ01vdmV0b0Fi
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NGNjBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdQYXRoU2VnTW92ZXRvUmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1NWR1BhdGhTZWdNb3ZldG9SZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCMkZBM0NGNzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTW92
ZXRvUmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BhdGhTZWdN
b3ZldG9SZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNDRjgwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHUGF0dGVybkVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUGF0dGVybkVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCMkZBM0NGOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXR0ZXJu
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdQYXR0ZXJu
RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NGQTBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdQb2ludExpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTU1ZHUG9pbnRMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjJGQTNDRkIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUG9pbnRMaXN0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BvaW50TGlzdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0NGRDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQb2x5
Z29uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNT
VkdQb2x5Z29uRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEz
Q0ZFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BvbHlnb25FbGVtZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1BvbHlnb25FbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUIyRkEzQ0ZGMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BvbHls
aW5lRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNT
VkdQb2x5bGluZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZB
M0QwMDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQb2x5bGluZUVsZW1lbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUG9seWxpbmVFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDAxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1By
ZXNlcnZlQXNwZWN0UmF0aW8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU1ZHUHJlc2VydmVBc3BlY3RSYXRpby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUIyRkEzRDAyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1ByZXNlcnZlQXNwZWN0UmF0
aW8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHUHJlc2VydmVBc3Bl
Y3RSYXRpby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QwMzBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMDQwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU1NWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkZBM0QwNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdSZWN0RWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdSZWN0RWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDA2MEFCNzVBNkUwMDBF
NUFDNCAvKiBKU1NWR1JlY3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1NWR1JlY3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIy
RkEzRDA4MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1JlbmRlcmluZ0ludGVudC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdSZW5kZXJpbmdJbnRlbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QwOTBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdSZW5kZXJpbmdJbnRlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTU1ZHUmVuZGVyaW5nSW50ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUIyRkEzRDBBMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1NjcmlwdEVsZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU1ZHU2NyaXB0RWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDBCMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR1NjcmlwdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTU1ZHU2NyaXB0RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZB
M0QwQzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTZXRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1NldEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QwRDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTZXRF
bGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1NldEVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMEUwQUI3NUE2RTAwMEU1
QUM0IC8qIEpTU1ZHU3RvcEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTU1ZHU3RvcEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0QwRjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTdG9wRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdTdG9wRWxlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QxMDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdT
dHJpbmdMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NW
R1N0cmluZ0xpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QxMTBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTdHJpbmdMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU1NWR1N0cmluZ0xpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjJGQTNEMTIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHU3R5bGVFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1N0eWxlRWxlbWVudC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDEzMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR1N0eWxlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNTVkdTdHlsZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJG
QTNEMTQwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU1ZHRWxlbWVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdTVkdFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU1ZH
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdTVkdFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDE2MEFCNzVBNkYwMDBF
NUFDNCAvKiBKU1NWR1N3aXRjaEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTU1ZHU3dpdGNoRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzRDE3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1N3aXRjaEVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHU3dpdGNoRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QxODBBQjc1QTZGMDAwRTVBQzQg
LyogSlNTVkdTeW1ib2xFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1NWR1N5bWJvbEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCMkZBM0QxOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTeW1ib2xFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR1N5bWJvbEVsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMUEwQUI3NUE2RjAwMEU1QUM0IC8qIEpT
U1ZHVGV4dENvbnRlbnRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1NWR1RleHRDb250ZW50RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUIyRkEzRDFCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRDb250ZW50RWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdUZXh0Q29udGVu
dEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMUMwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHVGV4dEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTU1ZHVGV4dEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCMkZBM0QxRDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUZXh0RWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdUZXh0RWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QxRTBBQjc1QTZGMDAwRTVBQzQgLyog
SlNTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCMkZBM0QxRjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUZXh0
UG9zaXRpb25pbmdFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1NWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjJGQTNEMjAwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGl0bGVFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1RpdGxlRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDIxMEFCNzVBNkYwMDBFNUFDNCAv
KiBKU1NWR1RpdGxlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNTVkdUaXRsZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNE
MjIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVHJhbnNmb3JtLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1RyYW5zZm9ybS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUIyRkEzRDIzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RyYW5zZm9y
bS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdUcmFuc2Zvcm0uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMjQwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHVHJhbnNmb3JtTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNTVkdUcmFuc2Zvcm1MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjJGQTNEMjUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVHJhbnNmb3JtTGlzdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdUcmFuc2Zvcm1MaXN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDI2MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R1RSZWZFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1NWR1RSZWZFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNE
MjcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVFJlZkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZHVFJlZkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjJGQTNEMjgwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVFNwYW5FbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1RTcGFuRWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDI5MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR1RTcGFuRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNTVkdUU3BhbkVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjJGQTNEMkEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVW5pdFR5cGVzLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1VuaXRUeXBlcy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDJCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R1VuaXRUeXBlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdVbml0
VHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMkMwQUI3NUE2RjAw
MEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNTVkdVc2VFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQjJGQTNEMkQwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdVc2VFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDJFMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1Zp
ZXdFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NW
R1ZpZXdFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjJGQTNEMkYw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVmlld0VsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTU1ZHVmlld0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjJGQTNEMzAwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHWm9vbUV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1pvb21FdmVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUIyRkEzRDMxMEFCNzVBNkYwMDBFNUFDNCAv
KiBKU1NWR1pvb21FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNT
Vkdab29tRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjUwRjVCODAwRTk2
Q0Q5OTAwQUQ3MUE2IC8qIFdlYkNvcmVPYmpDRXh0cmFzLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29yZU9iakNFeHRyYXMubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUI1MUEyRjNFMTdEN0QzQTQwMDcyNTE3QSAvKiBJbWFnZVF1YWxpdHlD
b250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUXVhbGl0
eUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjUxQTJGNDAxN0Q3
RDVEQTAwNzI1MTdBIC8qIEltYWdlUXVhbGl0eUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1MzIwRDY5MTIyQTI0RTkwMDJEMTQ0MCAvKiBGb250
UGxhdGZvcm1EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRQbGF0
Zm9ybURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjUzMjBENkExMjJBMjRF
OTAwMkQxNDQwIC8qIEZvbnRQbGF0Zm9ybURhdGFDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZvbnRQbGF0Zm9ybURhdGFDb2NvYS5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjU2MkRCNUUxN0QzQ0Q1NjAwMTBBRjk2IC8qIEhUTUxFbGVt
ZW50VHlwZUhlbHBlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSFRNTEVsZW1lbnRUeXBlSGVscGVycy5o
OyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9IVE1MRWxlbWVudFR5cGVIZWxwZXJzLmg7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUI1NjJEQjVGMTdEM0NENTYw
MDEwQUY5NiAvKiBTVkdFbGVtZW50VHlwZUhlbHBlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gU1ZHRWxl
bWVudFR5cGVIZWxwZXJzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL1NWR0VsZW1l
bnRUeXBlSGVscGVycy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlC
NTY1NzZFNDE3REE1OTlGMDBBNTZCREMgLyogSlNFeGVjU3RhdGVJbnN0cnVtZW50YXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeGVjU3RhdGVJbnN0cnVtZW50YXRp
b24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjU2NTc5QjQxODI0RDEyQTAwRTc5
RjIzIC8qIFJlbmRlckNoaWxkSXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyQ2hpbGRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCNTdDQjUyQjE4MkEzN0Y2MDA3OUE2NDcgLyogTGVnYWN5SW5saW5lRWxlbWVudEJveC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMZWdhY3lJbmxpbmVFbGVtZW50Qm94Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1N0NCNTJDMTgyQTNFRUQwMDc5QTY0NyAv
KiBMZWdhY3lJbmxpbmVFbGVtZW50Qm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IExlZ2FjeUlubGluZUVsZW1lbnRCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCNTk1RkY0NjE4MjRDRUUzMDBGRjUxQ0QgLyogUmVuZGVySXRlcmF0b3IuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVySXRlcmF0b3IuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjU5Q0E1OUFGMTcwRDhGQUE1QjhDOUFEIC8qIE1hdGhN
TFNjcmlwdHNFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE1hdGhNTFNjcmlwdHNFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QjU5Q0E1OUFGMTcwRDhGQUE1QjhDQUJFIC8qIE1hdGhNTFBhZGRlZEVsZW1lbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MUGFkZGVkRWxlbWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1OUNBODQ5RDQxRTZGNjVEODExOTdBQiAv
KiBNYXRoTUxTY3JpcHRzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNYXRoTUxTY3JpcHRzRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
NTlDQTg0OUQ0MUU2RjY1RDgxMTk4QkMgLyogTWF0aE1MUGFkZGVkRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxQYWRkZWRFbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1OURENjk3MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFi
YXNlQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNEYXRhYmFz
ZUNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1OURENjk4MTE5MDI5
RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNlQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNEYXRhYmFzZUNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQjU5REQ2OUIxMTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rp
b25DYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NRTFRyYW5z
YWN0aW9uQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjU5REQ2OUMx
MTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NRTFRyYW5zYWN0aW9uQ2FsbGJhY2suY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNTlERDY5RjExOTAyQTUyMDA3RTk2ODQg
LyogSlNTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQjU5REQ2QTAxMTkwMkE1MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNh
Y3Rpb25FcnJvckNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQjU5REQ2QTMxMTkwMkE2MjAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50Q2Fs
bGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTUUxTdGF0ZW1lbnRD
YWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNTlERDZBNDExOTAyQTYy
MDA3RTk2ODQgLyogSlNTUUxTdGF0ZW1lbnRDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1NRTFN0YXRlbWVudENhbGxiYWNrLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjU5REQ2QTcxMTkwMkE3MTAwN0U5Njg0IC8qIEpTU1FMU3Rh
dGVtZW50RXJyb3JDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1NRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQjU5REQ2QTgxMTkwMkE3MTAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFj
ay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NRTFN0YXRlbWVu
dEVycm9yQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNTlFRDIz
QTE4MjcyNjc5MDA2RDU2NEMgLyogUmVuZGVyQW5jZXN0b3JJdGVyYXRvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJBbmNlc3Rvckl0ZXJhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUI1QTY4NDIxMEZGQUJFOTgwMEQyNDY4OSAvKiBTUUxpdGVG
aWxlU3lzdGVtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTGl0ZUZpbGVT
eXN0ZW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjVBNjg0MjMwRkZBQkVBQTAw
RDI0Njg5IC8qIFNRTGl0ZUZpbGVTeXN0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU1FMaXRlRmlsZVN5c3RlbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUI1QjdBMTZFMTdDMTA0ODAwMEU0QUEwQSAvKiBFbGVtZW50RGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBFbGVtZW50RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNUI3
QTE2RjE3QzEwODA2MDBFNEFBMEEgLyogRWxlbWVudERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRWxlbWVudERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNjU2NjI2
RTEyMEIxMjI3MDA2RUE4NUMgLyogSlNJREJUcmFuc2FjdGlvbi5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU0lEQlRyYW5zYWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUI2NThGRjlGMTUyMkVGM0EwMERENTU5NSAvKiBKU1JhZGlvTm9kZUxpc3QuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSYWRpb05vZGVMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjY1OEZGQTAxNTIyRUYzQTAwREQ1NTk1
IC8qIEpTUmFkaW9Ob2RlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U1JhZGlvTm9kZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjY1OEZGQTMx
NTIyRUZBQTAwREQ1NTk1IC8qIFJhZGlvTm9kZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gUmFkaW9Ob2RlTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUI2NThGRkE0MTUyMkVGQUEwMERENTU5NSAvKiBSYWRpb05vZGVMaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJhZGlvTm9kZUxpc3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjZEOUQyMzMxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZl
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9jdXNFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNkQ5RDIzNDE0RUFCRDI2MDA5MEQ3NUUgLyogRm9j
dXNFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb2N1c0V2
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjZEOUQyNzIxNEVBQkYwMzAw
OTBENzVFIC8qIEZvY3VzRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZvY3VzRXZl
bnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNkQ5RDI3OTE0RUFDMDg2MDA5
MEQ3NUUgLyogSlNGb2N1c0V2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTRm9jdXNFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCNkQ5RDI3QTE0
RUFDMDg2MDA5MEQ3NUUgLyogSlNGb2N1c0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRm9jdXNFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUI3NzZENDNBMTEwNDUyNUQwMEJFQjBFQyAvKiBQcmludENvbnRleHQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHJpbnRDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUI3NzZENDNDMTEwNDUyNzUwMEJFQjBFQyAvKiBQcmludENvbnRleHQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJpbnRDb250ZXh0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjhEQkRCNDcxMzBCMEY4QTAwRjVDREIx
IC8qIFNldFNlbGVjdGlvbkNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU2V0U2VsZWN0aW9uQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUI4REJEQjQ4MTMwQjBGOEEwMEY1Q0RCMSAvKiBTZXRTZWxlY3Rpb25Db21tYW5kLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNldFNlbGVjdGlvbkNvbW1hbmQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQjhEQkRCNDkxMzBCMEY4QTAwRjVDREIxIC8q
IFNwZWxsaW5nQ29ycmVjdGlvbkNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU3BlbGxpbmdDb3JyZWN0aW9uQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUI4REJEQjRBMTMwQjBGOEEwMEY1Q0RCMSAvKiBTcGVsbGluZ0NvcnJl
Y3Rpb25Db21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNwZWxsaW5n
Q29ycmVjdGlvbkNvbW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMwMEYw
MTAwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0ZpbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
QzAwRjAxMTBFMEExODk1MDBGRDA0RTMgLyogSlNGaWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRmlsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzAw
RjAxMjBFMEExODk1MDBGRDA0RTMgLyogSlNGaWxlTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkMwMEYwMTMwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZUxpc3QuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzAyQTYzQjBFMDlBOUNGMDA0QjZEMkIgLyogQ1NTRnVuY3Rpb25WYWx1
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGdW5jdGlvblZhbHVlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMDJBNjQ1MEUwOUFBRTkwMDRCNkQyQiAv
KiBDU1NGdW5jdGlvblZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IENTU0Z1bmN0aW9uVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
QzA2RUQwNDBCRkQ1QkFFMDA4NTZFOUQgLyogSlNIVE1MVGFibGVTZWN0aW9uRWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MVGFibGVTZWN0aW9u
RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMDZFRDA1MEJGRDVC
QUUwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxUYWJsZVNlY3Rpb25FbGVtZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMDZFRDk5MEJGRDY2MDYwMDg1NkU5RCAvKiBKU0hUTUxU
YWJsZUNvbEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSFRNTFRhYmxlQ29sRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDMDZFRDlBMEJGRDY2MDYwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUNvbEVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTFRhYmxlQ29sRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzA2RUQ5QjBCRkQ2NjA2MDA4NTZFOUQgLyog
SlNIVE1MVGFibGVSb3dFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0hUTUxUYWJsZVJvd0VsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzA2RUQ5QzBCRkQ2NjA2MDA4NTZFOUQgLyogSlNIVE1MVGFibGVSb3dFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxUYWJsZVJvd0VsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMwNkVERTEwQkZENkQwRDAwODU2
RTlEIC8qIEpTSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQzA2RURFMjBCRkQ2RDBEMDA4NTZFOUQgLyogSlNIVE1MVGFibGVD
ZWxsRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MVGFi
bGVDZWxsRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzA2RUUwMjBC
RkQ3MUFBMDA4NTZFOUQgLyogSlNIVE1MVGFibGVFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxUYWJsZUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQzA2RUUwMzBCRkQ3MUFBMDA4NTZFOUQgLyogSlNIVE1MVGFi
bGVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxUYWJs
ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMwNkYyNDkwNkQxOEE3
RTAwNEE2RkEzIC8qIFhTTFN0eWxlU2hlZXRMaWJ4c2x0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhTTFN0eWxlU2hlZXRMaWJ4c2x0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7
IH07CisJCUJDMDZGMjRBMDZEMThBN0UwMDRBNkZBMyAvKiBYU0xTdHlsZVNoZWV0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhTTFN0eWxlU2hl
ZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7
IH07CisJCUJDMDZGMjRCMDZEMThBN0UwMDRBNkZBMyAvKiBYU0xUUHJvY2Vzc29yLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGgg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhTTFRQ
cm9jZXNzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNU
YWJzID0gMDsgfTsKKwkJQkMwNkYyNEMwNkQxOEE3RTAwNEE2RkEzIC8qIFhTTFRQcm9jZXNzb3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50
V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFNM
VFByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNU
YWJzID0gMDsgfTsKKwkJQkMwNkYyNEQwNkQxOEE3RTAwNEE2RkEzIC8qIFhTTFRQcm9jZXNzb3JM
aWJ4c2x0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFhTTFRQcm9jZXNzb3JMaWJ4c2x0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUJDMDczQkE5MEMzOTlCMUYwMDBG
NTk3OSAvKiBGbG9hdENvbnZlcnNpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEZsb2F0Q29udmVyc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzBD
QTc0QzI2NEFFRDBBMDA0RkRDNjIgLyogUGl4ZWxCdWZmZXJDb252ZXJzaW9uLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBpeGVsQnVmZmVyQ29udmVyc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQzBDQTc0RDI2NEFFRDBBMDA0RkRDNjIgLyogUGl4ZWxCdWZmZXJDb252ZXJzaW9uLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBpeGVsQnVmZmVyQ29udmVyc2lvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMTAxMzdCMjVDMzYyNEIwMERDNzczQyAvKiBDb2xvck1v
ZGVscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xvck1vZGVscy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQzEwMTM3RTI1QzM2MzE2MDBEQzc3M0MgLyogQ29sb3JUcmFuc2ZlckZ1bmN0
aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xvclRyYW5zZmVyRnVuY3Rpb25zLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMTI0RUU0MEMyNjQxQ0QwMDlFMjM0OSAvKiBCYXJQcm9w
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCYXJQcm9wLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMjRFRTUwQzI2NDFDRDAwOUUyMzQ5IC8q
IEJhclByb3AuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhclByb3AuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMjRFRTYwQzI2NDFDRDAwOUUyMzQ5IC8q
IEJhclByb3AuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBCYXJQcm9wLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMjRFRkQwQzI2NDQ3QTAwOUUyMzQ5IC8qIEpTQmFy
UHJvcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNCYXJQcm9w
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMjRFRkUwQzI2NDQ3QTAwOUUy
MzQ5IC8qIEpTQmFyUHJvcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNC
YXJQcm9wLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMTI4QTcyMTM3Qzg2N0Mw
MENBQzg0NSAvKiBSZW5kZXJHcmlkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlbmRlckdyaWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMxMjhCMDAxMzdD
OEQ0NjAwQ0FDODQ1IC8qIFJlbmRlckdyaWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyR3JpZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDMTQwMjg4MEU4MzY4MDgwMDMxOTcxNyAvKiBTY3JvbGxiYXJUaGVtZUNvbXBvc2l0ZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUNvbXBv
c2l0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMTQwMjg5MEU4MzY4MDgw
MDMxOTcxNyAvKiBTY3JvbGxiYXJUaGVtZUNvbXBvc2l0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTY3JvbGxiYXJUaGVtZUNvbXBvc2l0ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzFBN0Q5NTE4RkNCNUIwMDA0MjE4NzkgLyogUmVuZGVyTXVsdGlDb2x1
bW5TcGFubmVyUGxhY2Vob2xkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQzFBN0Q5NjE4RkNCNUIwMDA0MjE4NzkgLyogUmVuZGVyTXVs
dGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMEZCN0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTRGVwcmVjYXRl
ZENTU09NVmFsdWVDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQzIyNzI4NjBFODJFNzA3MDBFN0Y5NzUgLyogU3R5bGVSZWZsZWN0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlUmVmbGVjdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vy
c29yRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDdXJzb3JEYXRhLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMjI3MkFDMEU4MkU4RjMwMEU3Rjk3NSAv
KiBDdXJzb3JMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1cnNvckxp
c3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMjcyQkEwRTgyRUFBRTAwRTdG
OTc1IC8qIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMjI3MkJCMEU4MkVBQUUwMEU3Rjk3NSAvKiBTdHlsZVJh
cmVOb25Jbmhlcml0ZWREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0
eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkMyMjcyRTEwRTgyRUU5QjAwRTdGOTc1IC8qIFN0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMjI3MkUyMEU4MkVFOUIwMEU3
Rjk3NSAvKiBTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN0eWxlUmFyZUluaGVyaXRlZERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkMyMjczMDEwRTgyRjFFNjAwRTdGOTc1IC8qIFN0eWxlSW5oZXJpdGVkRGF0YS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZUluaGVyaXRlZERh
dGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzIyNzMwMjBFODJGMUU2MDBF
N0Y5NzUgLyogU3R5bGVJbmhlcml0ZWREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFN0eWxlSW5oZXJpdGVkRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQzIyNzQ3NDBFODM2NkUyMDBFN0Y5NzUgLyogU1ZHUmVuZGVyU3R5bGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHUmVuZGVyU3R5bGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzIyNzQ3NTBFODM2NkUyMDBFN0Y5NzUgLyogU1ZHUmVu
ZGVyU3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU1ZHUmVuZGVyU3R5
bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMjc0NzYwRTgzNjZFMjAwRTdG
OTc1IC8qIFNWR1JlbmRlclN0eWxlRGVmcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTVkdSZW5kZXJTdHlsZURlZnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzIyNzQ3NzBFODM2NkUyMDBFN0Y5NzUgLyogU1ZHUmVuZGVyU3R5bGVEZWZzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1JlbmRlclN0eWxlRGVmcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzIzRTRFMDBEQUFDRTBGMDA5RkRDOTEgLyog
Q1NTR3JhZGllbnRWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBDU1NHcmFkaWVudFZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMy
M0U3NkIwREFFODhBOTAwOUZEQzkxIC8qIENTU0ltYWdlR2VuZXJhdG9yVmFsdWUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMjNFRTkxMERBRUQyQkMwMDlGREM5
MSAvKiBDU1NJbWFnZUdlbmVyYXRvclZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkMyM0YwREEwREFGRjRBNDAwOUZEQzkxIC8qIEdlbmVyYXRlZEltYWdlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDMjQ0MUMzMEU4QjY1RDAwMDU1MzIwRiAvKiBTY3JvbGxWaWV3
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbFZpZXcuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzI3NEIyRTE0MEVCRUIyMDBFQURGQTYg
LyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzI3NEIzMDE0MEVCRUQ4MDBFQURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZh
bHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0JvcmRlcklt
YWdlU2xpY2VWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMjk5MzVD
MTdBMURENTgwMEJDRTg4MCAvKiBDb2xvcklucHV0VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDb2xvcklucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDMkNCRjRCMTQwRjFBNjUwMDM4NzlCRSAvKiBKU1dlYkdMQ29udGV4dEV2
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2ViR0xDb250ZXh0RXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyQ0JGN0ExNDBGMUQ1ODAwMzg3
OUJFIC8qIEpTV2ViR0xDb250ZXh0RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNXZWJHTENvbnRleHRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDMkNDQTBFMjY1NUREQjIwMEI4QzAzNSAvKiBEZXN0aW5hdGlvbkNvbG9yU3Bh
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRGVzdGluYXRpb25Db2xvclNwYWNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDMkNDQTBGMjY1NUREQjIwMEI4QzAzNSAvKiBEZXN0aW5hdGlv
bkNvbG9yU3BhY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVzdGluYXRpb25Db2xvclNwYWNl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyRUQ1NTQwQzZCOUJEMzAwOTIw
QkZGIC8qIEpTRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU0VsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQzJFRDZCQjBDNkJEMkYwMDA5MjBCRkYgLyogSlNBdHRyQ3VzdG9tLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXR0ckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDMzA1Qzc3MEMwNzZCQjMwMENEMjBGMCAvKiBKU0hUTUxPYmpl
Y3RFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hU
TUxPYmplY3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzMDVD
NzgwQzA3NkJCMzAwQ0QyMEYwIC8qIEpTSFRNTE9iamVjdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTE9iamVjdEVsZW1lbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkMzM0ZCMUEwRjMwRUU4NTAwMkNERDdDIC8qIFJlbmRlckxpbmVC
b3hMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckxp
bmVCb3hMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzNDhCQTcwREI3
RjFCODAwNEFCQUI5IC8qIFhNTEh0dHBSZXF1ZXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBYTUxIdHRwUmVxdWVzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMzQ4
QkJEMERCN0Y1MzEwMDRBQkFCOSAvKiBKU1hNTEh0dHBSZXF1ZXN0Q3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWE1MSHR0cFJlcXVlc3RDdXN0b20uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzM0OEJEMTBEQjdGODA0MDA0QUJBQjkg
LyogSlNYTUxIdHRwUmVxdWVzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1hNTEh0dHBSZXF1ZXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkMzNDhCRDEwREI3RjgwNDAwNEFCQUJBIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5zLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzNDhCRDEwREI3RjgwNDAwNEFCQUJCIC8qIFdl
YkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDMzQ4QkQyMERCN0Y4MDQwMDRBQkFCOSAvKiBKU1hNTEh0dHBSZXF1ZXN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWE1MSHR0cFJlcXVlc3QuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzNDhCRDIwREI3RjgwNDAwNEFCQUJBIC8q
IFdlYkNvcmVKU0J1aWx0aW5zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
YkNvcmVKU0J1aWx0aW5zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDMzQ4QkQy
MERCN0Y4MDQwMDRBQkFCQiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzQkMyOUIwRTkxQUIwRjAwODM1NTg4IC8qIEhv
c3RXaW5kb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSG9zdFdpbmRvdy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzNCRTEyQTBFOTgwOTJGMDA4MzU1ODgg
LyogUG9wdXBNZW51U3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9w
dXBNZW51U3R5bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzQkU5OTAwRTlD
MUM3QzAwODM1NTg4IC8qIFJlbmRlclNjcm9sbGJhci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTY3JvbGxiYXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQzNCRTk5MTBFOUMxQzdDMDA4MzU1ODggLyogUmVuZGVyU2Nyb2xsYmFyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclNjcm9sbGJhci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzNCRTk5MjBFOUMxQzdDMDA4MzU1ODggLyogUmVu
ZGVyU2Nyb2xsYmFyUGFydC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5k
ZXJTY3JvbGxiYXJQYXJ0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDM0JFOTk4
MEU5QzFFNUQwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxiYXJUaGVtZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJTY3JvbGxiYXJUaGVtZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQzNCRTlBNDBFOUMyMzk2MDA4MzU1ODggLyogUmVuZGVyU2Nyb2xs
YmFyVGhlbWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
U2Nyb2xsYmFyVGhlbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzNCRTlB
QTBFOUMyNDIwMDA4MzU1ODggLyogUmVuZGVyU2Nyb2xsYmFyUGFydC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJTY3JvbGxiYXJQYXJ0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzQzM5QjQwQzBEM0Q4RDAwNUY0RDdBIC8qIEpTTWVk
aWFMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlh
TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDM0MzOUI1MEMwRDNEOEQw
MDVGNEQ3QSAvKiBKU01lZGlhTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNNZWRpYUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMzRTYyNDIy
NjU5NzkxNzAwNTQ4QUNEIC8qIFBsYXRmb3JtQ29sb3JTcGFjZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybUNvbG9yU3BhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM0MzY4RTcwQzIyNkUzMjAwNUVGQjVGIC8qIFJlY3QuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkM0NkMxRUQwQzBEREJERjAwMjBDRkMzIC8qIEpTQ1NTUnVsZUN1c3RvbS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDU1NSdWxlQ3VzdG9tLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM0NkMxRjIwQzBEREM4RjAwMjBDRkMzIC8q
IEpTQ1NTRm9udEZhY2VSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0NTU0ZvbnRGYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDNDZDMUYzMEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU0ZvbnRGYWNlUnVsZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NGb250RmFjZVJ1bGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM0NkMxRjQwQzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTSW1w
b3J0UnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDU1NJ
bXBvcnRSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM0NkMxRjUwQzBE
REM4RjAwMjBDRkMzIC8qIEpTQ1NTSW1wb3J0UnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNDU1NJbXBvcnRSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDNDZDMUY2MEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU01lZGlhUnVsZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDU1NNZWRpYVJ1bGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzQ2QzFGNzBDMEREQzhGMDAyMENGQzMgLyogSlND
U1NNZWRpYVJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ1NTTWVk
aWFSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDZDMUY4MEMwRERDOEYw
MDIwQ0ZDMyAvKiBKU0NTU1BhZ2VSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0NTU1BhZ2VSdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkM0NkMxRjkwQzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTUGFnZVJ1bGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ1NTUGFnZVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM0NkMyMDQwQzBERENBMTAwMjBDRkMzIC8qIEpTQ1NTU3R5bGVSdWxl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU1N0eWxlUnVs
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDZDMjA1MEMwRERDQTEwMDIw
Q0ZDMyAvKiBKU0NTU1N0eWxlUnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNDU1NTdHlsZVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM0ODM5
QkEyNjQ2MTgxQTAwQTI4QjYyIC8qIFBpeGVsQnVmZmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBpeGVs
QnVmZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDgzOUJCMjY0NjE4MUEw
MEEyOEI2MiAvKiBQaXhlbEJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQaXhlbEJ1ZmZl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDkxOEMwMEJGRUEwNTAwMDlE
NjMxNiAvKiBKU0hUTUxGcmFtZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTSFRNTEZyYW1lRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDNDkxOEMxMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxGcmFtZUVsZW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEZyYW1lRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzQ5MThDMjBCRkVBMDUwMDA5RDYzMTYg
LyogSlNIVE1MSUZyYW1lRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNIVE1MSUZyYW1lRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDNDkxOEMzMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxJRnJhbWVFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxJRnJhbWVFbGVtZW50Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDkxQjRFMEMwMjNFMkQwMDlENjMxNiAv
KiBIVE1MTWFycXVlZUVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEhUTUxNYXJx
dWVlRWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNDkxQjc2MEMw
MjNFRkQwMDlENjMxNiAvKiBKU0hUTUxNYXJxdWVlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MTWFycXVlZUVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzQ5MUI3NzBDMDIzRUZEMDA5RDYzMTYgLyogSlNIVE1M
TWFycXVlZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRN
TE1hcnF1ZWVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNEEyM0VC
MjVFQzE2MDIwMEFBQzYzMCAvKiBDb2xvckx1bWluYW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2xv
ckx1bWluYW5jZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzRBNTMyMTI1NjA1
MjcwMDAyOEM1OTIgLyogRWRpdGFibGVMaW5rQmVoYXZpb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWRp
dGFibGVMaW5rQmVoYXZpb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM0QTUz
MjQyNTYwNTU1OTAwMjhDNTkyIC8qIFRleHREaXJlY3Rpb25TdWJtZW51SW5jbHVzaW9uQmVoYXZp
b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dERpcmVjdGlvblN1Ym1lbnVJbmNsdXNpb25CZWhhdmlv
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzRBNTMyNjI1NjA1NUQzMDAyOEM1
OTIgLyogVXNlckludGVyZmFjZURpcmVjdGlvblBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVc2Vy
SW50ZXJmYWNlRGlyZWN0aW9uUG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDNEE1MzI4MjU2MDU2M0IwMDI4QzU5MiAvKiBQREZJbWFnZUNhY2hpbmdQb2xpY3kuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUERGSW1hZ2VDYWNoaW5nUG9saWN5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDNEE1MzJBMjU2MDU2NkUwMDI4QzU5MiAvKiBGcmFtZUZsYXR0ZW5pbmcuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRnJhbWVGbGF0dGVuaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDNEE1MzJDMjU2MDU2RDUwMDI4QzU5MiAvKiBEZWJ1Z092ZXJsYXlSZWdpb25zLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IERlYnVnT3ZlcmxheVJlZ2lvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM0QTUzMkUyNTYwNTdDRDAwMjhDNTkyIC8qIEZvbnRMb2FkVGltaW5nT3Zl
cnJpZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udExvYWRUaW1pbmdPdmVycmlkZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzRBNTMzMDI1NjA1OTAzMDAyOEM1OTIgLyogRm9yY2Vk
QWNjZXNzaWJpbGl0eVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcmNlZEFjY2Vzc2liaWxpdHlW
YWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzRBNTMzMjI1NjA1OTgzMDAy
OEM1OTIgLyogSFRNTFBhcnNlclNjcmlwdGluZ0ZsYWdQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SFRNTFBhcnNlclNjcmlwdGluZ0ZsYWdQb2xpY3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkM0QTUzMzQyNTYwNUE1NjAwMjhDNTkyIC8qIERhdGFEZXRlY3RvclR5cGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRGF0YURldGVjdG9yVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQzRBNTMzNjI1NjA1QUUxMDAyOEM1OTIgLyogU3RvcmFnZUJsb2NraW5nUG9saWN5Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFN0b3JhZ2VCbG9ja2luZ1BvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzRBNTMzODI1NjA2Mzk4MDAyOEM1OTIgLyogRm9udFJlbmRlcmluZ01v
ZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udFJlbmRlcmluZ01vZGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM0QTUzM0EyNTYwNjRFMTAwMjhDNTkyIC8qIFRleHREaXJlY3Rpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVGV4dERpcmVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzUxMTU2RDEyQjE3NDlDMDBDOTY3NTQgLyogU2Nyb2xsQW5pbWF0b3JNYWMubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxBbmltYXRvck1h
Yy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1MTU4MEEwQzAzRDQwNDAwOEJC
MEVFIC8qIEpTSFRNTERvY3VtZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0hUTUxEb2N1bWVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDNTNDNUY0MERBNTZCOTIwMDIxRUI1RCAvKiBHcmFkaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmFkaWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzUzQzYwNzBEQTU2QzU3MDAyMUVCNUQgLyogR3JhZGllbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhZGllbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzUzQzYwQTBEQTU2Q0YxMDAyMUVCNUQgLyogR3JhZGll
bnRDRy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHcmFkaWVudENH
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1M0M2OTEwREE1OTExNDAwMjFF
QjVEIC8qIENTU0dyYWRpZW50VmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ1NTR3JhZGllbnRWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzUz
RDkxMDExNDMxMENDMDAwRDgxN0UgLyogV2ViQ29yZUpTQ2xpZW50RGF0YS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlSlNDbGllbnREYXRhLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDNTNEQTJEMTE0MzEyMUUwMDBEODE3RSAvKiBET01XcmFwcGVy
V29ybGQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NV3JhcHBlcldvcmxk
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNTNEQTQ3MTE0MzEzNEQwMDBEODE3
RSAvKiBET01XcmFwcGVyV29ybGQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRE9NV3JhcHBlcldvcmxkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkM1ODIzRjQwQzBBOThERjAwNTNGMUI1IC8qIEpTSFRNTEVsZW1lbnRDdXN0b20uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MRWxlbWVudEN1c3RvbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNTgyNUYyMEMwQjg5MzgwMDUzRjFCNSAv
KiBKU0NTU1N0eWxlRGVjbGFyYXRpb25DdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1QTEyREQwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxl
Y3RWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NSZWZs
ZWN0VmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzVBMTJERTBEQzA0
MTQ4MDBDOUFGQUQgLyogQ1NTUmVmbGVjdFZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IENTU1JlZmxlY3RWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQzVBODY4MTBDMzM2NzYwMDBFRUE2NDkgLyogRE9NU2VsZWN0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01TZWxlY3Rpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQzVBODY4MjBDMzM2NzYwMDBFRUE2NDkgLyogRE9NU2VsZWN0
aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01TZWxlY3Rpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1QTg2ODMwQzMzNjc2MDAwRUVBNjQ5IC8q
IERPTVNlbGVjdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERPTVNlbGVjdGlvbi5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUE4NkIzMEMzMzY3RTgwMEVFQTY0
OSAvKiBKU0RPTVNlbGVjdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNET01TZWxlY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
QzVBODZCNDBDMzM2N0U4MDBFRUE2NDkgLyogSlNET01TZWxlY3Rpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NU2VsZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDNUM3NjI5MTQ5N0ZFMTQwMEJDNDc3NSAvKiBQbGF0Zm9ybUV2ZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtRXZlbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI1REEwRTgxQjdFQTAwQjI1OTY1IC8qIEJvcmRl
clZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJvcmRlclZhbHVlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCNURDMEU4MUI4REQwMEIyNTk2NSAv
KiBPdXRsaW5lVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT3V0bGlu
ZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCNURFMEU4MUI5QUIw
MEIyNTk2NSAvKiBDb2xsYXBzZWRCb3JkZXJWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb2xsYXBzZWRCb3JkZXJWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzVFQjVFMDBFODFCRTg3MDBCMjU5NjUgLyogQm9yZGVyRGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCb3JkZXJEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDNUVCNUU0MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0
YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVN1cnJvdW5kRGF0YS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5NjUg
LyogU3R5bGVTdXJyb3VuZERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU3R5bGVTdXJyb3VuZERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQzVFQjY2NzBFODFDQjcxMDBCMjU5NjUgLyogUmVuZGVyU3R5bGVDb25zdGFudHMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU3R5bGVDb25zdGFudHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI2N0EwRTgxRDNCRTAwQjI1OTY1IC8qIFN0
eWxlQm94RGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUJveERh
dGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI2N0MwRTgxRDQyMDAwQjI1
OTY1IC8qIFN0eWxlQm94RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTdHlsZUJveERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzVF
QjY5NzBFODFEQTYzMDBCMjU5NjUgLyogU3R5bGVWaXN1YWxEYXRhLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlVmlzdWFsRGF0YS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDNUVCNjk4MEU4MURBNjMwMEIyNTk2NSAvKiBTdHlsZVZpc3Vh
bERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVWaXN1YWxEYXRh
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCNjlDMEU4MURBRUIwMEIyNTk2
NSAvKiBGaWxsTGF5ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RmlsbExheWVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI2OUQwRTgx
REFFQjAwQjI1OTY1IC8qIEZpbGxMYXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBGaWxsTGF5ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI2QTAw
RTgxREM0RjAwQjI1OTY1IC8qIFN0eWxlQmFja2dyb3VuZERhdGEuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVCYWNrZ3JvdW5kRGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCNkExMEU4MURDNEYwMEIyNTk2NSAvKiBTdHlsZUJh
Y2tncm91bmREYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQmFj
a2dyb3VuZERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI3MjcwRTgx
REU4MTAwQjI1OTY1IC8qIFN0eWxlTWFycXVlZURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVNYXJxdWVlRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDNUVCNzI4MEU4MURFODEwMEIyNTk2NSAvKiBTdHlsZU1hcnF1ZWVEYXRh
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlTWFycXVlZURhdGEuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI3NEIwRTgxRTA2NzAwQjI1OTY1IC8q
IFN0eWxlTXVsdGlDb2xEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFN0eWxlTXVsdGlDb2xEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkM1RUI3NEMwRTgxRTA2NzAwQjI1OTY1IC8qIFN0eWxlTXVsdGlDb2xEYXRhLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlTXVsdGlDb2xEYXRhLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDNUVCODBEMEU4MUYyQ0UwMEIyNTk2NSAvKiBTdHlsZVRyYW5z
Zm9ybURhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVU
cmFuc2Zvcm1EYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI4MEUw
RTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTdHlsZVRyYW5zZm9ybURhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM1RUI4QjYwRTgyMDFCRDAwQjI1OTY1IC8qIFN0eWxlRGVwcmVjYXRlZEZs
ZXhpYmxlQm94RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
dHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJveERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQzVFQjhCNzBFODIwMUJEMDBCMjU5NjUgLyogU3R5bGVEZXByZWNhdGVkRmxleGli
bGVCb3hEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlRGVwcmVj
YXRlZEZsZXhpYmxlQm94RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzVF
QjhDMTBFODIwMzFCMDBCMjU5NjUgLyogU2hhZG93RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTaGFkb3dEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkM1RUI4QzIwRTgyMDMxQjAwQjI1OTY1IC8qIFNoYWRvd0RhdGEuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhZG93RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzVFQjk0RjBFODIwNTZCMDBCMjU5NjUgLyogQ291bnRlckRpcmVjdGl2
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ291bnRlckRpcmVjdGl2ZXMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM1RUI5NzgwRTgyMDY5MjAwQjI1OTY1
IC8qIENvdW50ZXJDb250ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENv
dW50ZXJDb250ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCOTdFMEU4
MjA3MjUwMEIyNTk2NSAvKiBDb250ZW50RGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDb250ZW50RGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDNUVCOTdGMEU4MjA3MjUwMEIyNTk2NSAvKiBDb250ZW50RGF0YS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDb250ZW50RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQzVFQkEwRTBFODIzRTQ3MDBCMjU5NjUgLyogS2V5ZnJhbWVMaXN0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtleWZyYW1lTGlzdC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNUVCQTBGMEU4MjNFNDcwMEIyNTk2NSAvKiBL
ZXlmcmFtZUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gS2V5ZnJhbWVM
aXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjA0OUNCMERCNTYwQzIwMDIw
NDczOSAvKiBDU1NDYW52YXNWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDU1NDYW52YXNWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzYwNEE0
MjBEQjU2MzRFMDAyMDQ3MzkgLyogQ1NTQ2FudmFzVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQ2FudmFzVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzYwOTAxRTBFOTFCOEVDMDAwQzY4QjUgLyogSlNFdmVudFRhcmdldEN1
c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50VGFy
Z2V0Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM2MEQ2RTgwRDI4
RDgzNDAwQjk5MThGIC8qIERPTUV4Y2VwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBET01FeGNlcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM2
MEQ2RUIwRDI4RDk5OTAwQjk5MThGIC8qIERPTUV4Y2VwdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gRE9NRXhjZXB0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkM2MEQ3QkUwRDI5QTQ2MzAwQjk5MThGIC8qIEpTRE9NRXhjZXB0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NRXhjZXB0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM2MEQ3QkYwRDI5QTQ2MzAwQjk5MThGIC8qIEpTRE9NRXhj
ZXB0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NRXhjZXB0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjM1RThCMjY0QzJDQUUwMDBFRjMz
QSAvKiBQaXhlbEJ1ZmZlckZvcm1hdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQaXhlbEJ1ZmZlckZvcm1h
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzYzNUU4RjI2NEMyRUNFMDAwRUYz
M0EgLyogUGl4ZWxCdWZmZXJGb3JtYXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGl4ZWxCdWZm
ZXJGb3JtYXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzYzNUU5MDI2NEM0
NjlGMDAwRUYzM0EgLyogUGl4ZWxGb3JtYXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGl4ZWxG
b3JtYXQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzYzNUU5MTI2NEM0NzYw
MDAwRUYzM0EgLyogQWxwaGFQcmVtdWx0aXBsaWNhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBBbHBoYVByZW11bHRpcGxpY2F0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkM2NDY0MDgxMUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBET01TdHJpbmdNYXAuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM2NDY0MUExMUQ3RjQxNjAwNjQ1NUIwIC8qIERhdGFzZXRET01TdHJpbmdN
YXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YXNldERPTVN0cmluZ01h
cC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzY0NjQxQjExRDdGNDE2MDA2NDU1
QjAgLyogRGF0YXNldERPTVN0cmluZ01hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEYXRhc2V0RE9NU3RyaW5nTWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkM2NDY0NzkxMUQ4MDBDRDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5pZGwgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NU3RyaW5nTWFwLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM2NDY0OTUxMUQ4MjM0OTAwNjQ1NUIwIC8qIEpTRE9NU3RyaW5nTWFwLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NU3RyaW5nTWFwLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM2NDY0OTYxMUQ4MjM0OTAwNjQ1NUIw
IC8qIEpTRE9NU3RyaW5nTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
RE9NU3RyaW5nTWFwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjRCNEM5MENC
NDI5NUQwMDVGMkI2MiAvKiBDYWNoZWRGb250LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENhY2hlZEZvbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQzY0QjRDQTBDQjQyOTVEMDA1RjJCNjIgLyogQ2FjaGVkRm9udC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRGb250Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDNjRCNENEMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NGb250RmFjZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjRCNENFMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250
RmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGb250RmFjZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzY0QjRDRjBDQjQyOThBMDA1RjJCNjIgLyog
Q1NTRm9udEZhY2VTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQ1NTRm9udEZhY2VTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
QzY0QjREMDBDQjQyOThBMDA1RjJCNjIgLyogQ1NTRm9udEZhY2VTb3VyY2UuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTRm9udEZhY2VTb3VyY2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkM2NEI0RDEwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNl
U3JjVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTRm9u
dEZhY2VTcmNWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNjRCNEQy
MENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZVNyY1ZhbHVlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENTU0ZvbnRGYWNlU3JjVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM2NEI0RDMwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRTZWxlY3Rv
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NGb250U2VsZWN0
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzY0QjRENDBDQjQyOThBMDA1
RjJCNjIgLyogQ1NTRm9udFNlbGVjdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU0ZvbnRTZWxlY3Rvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzY5
MzI3MTBEN0UyOTM5MDBBRTQ0RDEgLyogSlNET01XaW5kb3dCYXNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NV2luZG93QmFzZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDNjkzMjcyMEQ3RTI5MzkwMEFFNDREMSAvKiBKU0RPTVdpbmRv
d0Jhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01XaW5kb3dCYXNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNkQ0NEVBMEMwN0YyRUQwMDcyRDJD
OSAvKiBKU0hUTUxFbWJlZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSFRNTEVtYmVkRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDNkQ0NEVCMEMwN0YyRUQwMDcyRDJDOSAvKiBKU0hUTUxFbWJlZEVsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSFRNTEVtYmVkRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzZENkUyNTA5QUY5NDM1MDBGNTk3NTkgLyog
U2Nyb2xsVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsVmll
dy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzZFQjg0NTI2MjY2QjYxMDAzMjI1
QTcgLyogQ29sb3JMdW1pbmFuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29sb3JMdW1pbmFu
Y2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzcwOURERTI2NjMyM0NFMDBC
OUEyMUMgLyogQ1NTQ2FsY1N5bWJvbFRhYmxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0NhbGNTeW1i
b2xUYWJsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzcwOURERjI2NjMyM0NF
MDBCOUEyMUMgLyogQ1NTQ2FsY1N5bWJvbFRhYmxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENT
U0NhbGNTeW1ib2xUYWJsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNzcy
QjM2MEM0RUE5MUUwMDgzMjg1RiAvKiBDU1NIZWxwZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENTU0hlbHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
Qzc3MkM0NDBDNEVCMkM2MDA4MzI4NUYgLyogWE1MSHR0cFJlcXVlc3QuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTEh0dHBSZXF1ZXN0LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3NzJDNDUwQzRFQjJDNjAwODMyODVGIC8qIFhNTEh0dHBS
ZXF1ZXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYTUxIdHRwUmVxdWVz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzc3MkM0QzBDNEVCMzA0MDA4MzI4
NUYgLyogTUlNRVR5cGVSZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTUlNRVR5cGVSZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDNzcyQzREMEM0RUIzMDQwMDgzMjg1RiAvKiBNSU1FVHlwZVJlZ2lzdHJ5LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNSU1FVHlwZVJlZ2lzdHJ5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNzcyRTEyMTMzMTYyMEMwMDFFQzlDRSAvKiBDU1NMaW5l
Qm94Q29udGFpblZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0xp
bmVCb3hDb250YWluVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3NzJF
MTUxMzMxNjJDMjAwMUVDOUNFIC8qIENTU0xpbmVCb3hDb250YWluVmFsdWUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDNzc5RTEzMUJCMjE1QkIwMENBQThCRiAv
KiBDU1NDdXN0b21Qcm9wZXJ0eVZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU0N1c3RvbVByb3BlcnR5VmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkM3NzlFMTUxQkIyMjZBMjAwQ0FBOEJGIC8qIFN0eWxlQ3VzdG9tUHJvcGVydHlEYXRhLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQ3VzdG9tUHJvcGVydHlEYXRh
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDN0IyQUY4MDQ1MDgyNDEwMEE4MDAw
RiAvKiBTY3JvbGxiYXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2Nyb2xsYmFyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRo
ID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlCQzdEOEZFRDFCRDAzQjY0MDBGRkU1NDAgLyogQ1NT
VW5zZXRWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NV
bnNldFZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3RDhGRUUxQkQw
M0I2NDAwRkZFNTQwIC8qIENTU1Vuc2V0VmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ1NTVW5zZXRWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
QzdEOEZGMTFCRDFBNDc5MDBGRkU1NDAgLyogQ1NTUmV2ZXJ0VmFsdWUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTUmV2ZXJ0VmFsdWUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQzdEOEZGMjFCRDFBNDc5MDBGRkU1NDAgLyogQ1NTUmV2ZXJ0
VmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUmV2ZXJ0VmFsdWUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3RjQ0QTcwQjlFMzI0RTAwQTlEMDgx
IC8qIEltYWdlT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElt
YWdlT2JzZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3RkE2MUUwRDFG
MENCRDAwREIyMkE5IC8qIExpdmVOb2RlTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMaXZlTm9kZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQzdGQTYxRjBEMUYwQ0JEMDBEQjIyQTkgLyogTGl2ZU5vZGVMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExpdmVOb2RlTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQzdGQTYyQjBEMUYwRUZGMDBEQjIyQTkgLyogU3RhdGljTm9kZUxpc3Qu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RhdGljTm9kZUxpc3QuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM3RkE2MkMwRDFGMEVGRjAwREIyMkE5IC8qIFN0
YXRpY05vZGVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0
YXRpY05vZGVMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM4MDhCMTEx
QzBFMjNBQzAwNjZGRDZCIC8qIEhUTUxQaWN0dXJlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSFRNTFBpY3R1cmVFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkM4MDhCMTIxQzBFMkIzNTAwNjZGRDZCIC8qIEpTSFRNTFBpY3R1cmVFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTFBpY3R1cmVFbGVt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM4MDhCMTMxQzBFMkIzNTAw
NjZGRDZCIC8qIEpTSFRNTFBpY3R1cmVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTSFRNTFBpY3R1cmVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDODBDOTg1MENEMjk0RUUwMEEwQjdCMyAvKiBDU1NUaW1pbmdGdW5jdGlvblZhbHVl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NUaW1pbmdGdW5j
dGlvblZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM4MEM5ODYwQ0Qy
OTRFRTAwQTBCN0IzIC8qIENTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkM4MjQzMjUwRDBDRThBMjAwNDYwQzhGIC8qIEpTU1FMRXJyb3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTUUxFcnJvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzgyNDMyNjBEMENFOEEyMDA0NjBDOEYgLyogSlNTUUxU
cmFuc2FjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NRTFRyYW5z
YWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDODI0M0U2MEQwQ0ZENzUw
MDQ2MEM4RiAvKiBXaW5kb3dGZWF0dXJlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBXaW5kb3dGZWF0dXJlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDODI0M0U3MEQwQ0ZENzUwMDQ2MEM4RiAvKiBXaW5kb3dGZWF0dXJlcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXaW5kb3dGZWF0dXJlcy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQzg0RjQzOTI2NDFBQjE0MDBGNTdDMUMgLyogQ3VzdG9tUGFpbnRJ
bWFnZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDdXN0b21QYWludEltYWdlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM4NEY0M0EyNjQxQUIxNDAwRjU3QzFDIC8qIEN1c3Rv
bVBhaW50SW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3VzdG9tUGFpbnRJbWFnZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQzhBRTM0QzEyRUEwOTZBMDBFQjNBRTYgLyogU2Nyb2xs
YWJsZUFyZWEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xs
YWJsZUFyZWEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzhBRTM0RDEyRUEw
OTZBMDBFQjNBRTYgLyogU2Nyb2xsYWJsZUFyZWEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2Nyb2xsYWJsZUFyZWEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkM4Qjg1M0MwRTdDN0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJhclRoZW1lTWFjLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGJhclRoZW1lTWFjLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDOEI4NTRBMEU3QzdGNTYwMEFCNjk4NCAvKiBTY3JvbGxiYXJU
aGVtZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxiYXJUaGVtZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzhCRjE1MDEwNTgxM0JGMDBBNDBBMDcg
LyogVXNlclN0eWxlU2hlZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVXNl
clN0eWxlU2hlZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM4QkYxNTkxMDU4
MTQxODAwQTQwQTA3IC8qIFVzZXJTdHlsZVNoZWV0VHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVXNlclN0eWxlU2hlZXRUeXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQzhDOEZBQjBERENEMzFCMDBCNTkyRjQgLyogUmVuZGVyU3R5bGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyU3R5bGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzhDOEZBQzBERENEMzFCMDBCNTkyRjQgLyogUmVu
ZGVyU3R5bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU3R5bGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM5MjZGN0UwQzA1NTI0NzAwODI3NzZC
IC8qIEpTSFRNTEZyYW1lU2V0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNIVE1MRnJhbWVTZXRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkM5MjZGN0YwQzA1NTI0NzAwODI3NzZCIC8qIEpTSFRNTEZyYW1lU2V0RWxl
bWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MRnJhbWVTZXRF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTQzOUMyMTE2Q0Y0OTQw
MDQ4Qzc1MCAvKiBKU05vZGVDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNOb2RlQ3VzdG9tLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTQ2MkNC
MTA3QTdBMzkwMDg1NzE5MyAvKiBCZWZvcmVMb2FkRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEJlZm9yZUxvYWRFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDOTQ2MkQ3MTA3QTdCNEMwMDg1NzE5MyAvKiBCZWZvcmVMb2FkRXZlbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmVmb3JlTG9hZEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDOTQ2MzQ1MTA3QTkzNEIwMDg1NzE5MyAvKiBKU0JlZm9yZUxvYWRF
dmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0JlZm9yZUxv
YWRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTQ2MzQ3MTA3QTkz
NjYwMDg1NzE5MyAvKiBKU0JlZm9yZUxvYWRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0JlZm9yZUxvYWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQzk0RDEwNzBDMjc0Rjg4MDA2QkM2MTcgLyogUGxhdGZvcm1TY3JlZW5NYWMubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1TY3JlZW5NYWMu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTREMTRDMEMyNzVDNjgwMDZCQzYx
NyAvKiBKU0hpc3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTSGlzdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTREMTREMEMy
NzVDNjgwMDZCQzYxNyAvKiBKU0hpc3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTSGlzdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzk0RDE1
MDBDMjc1QzhCMDA2QkM2MTcgLyogSGlzdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSGlzdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDOTREMTUxMEMyNzVDOEIwMDZCQzYxNyAvKiBIaXN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBIaXN0b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDOTREMTUyMEMyNzVDOEIwMDZCQzYxNyAvKiBIaXN0b3J5LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSGlzdG9yeS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOTZE
QjQyMEYzQTg4MEUwMDU3M0NCMyAvKiBSZW5kZXJCb3hNb2RlbE9iamVjdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJCb3hNb2RlbE9iamVjdC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQzk2REI0NTBGM0E4ODIyMDA1NzNDQjMgLyogUmVuZGVyQm94
TW9kZWxPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyQm94TW9kZWxPYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzk3
RTIzODEwOTE0NDk1MDAxMEQzNjEgLyogSFRNTEFsbENvbGxlY3Rpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEFsbENvbGxlY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkM5N0UyMzkxMDkxNDQ5NTAwMTBEMzYxIC8qIEhUTUxBbGxDb2xsZWN0
aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxBbGxDb2xs
ZWN0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM5N0UyM0MxMDkxNDZG
MTAwMTBEMzYxIC8qIEhUTUxBbGxDb2xsZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBIVE1MQWxsQ29sbGVjdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
OTdFNDEwMTA5MTU0RkEwMDEwRDM2MSAvKiBKU0hUTUxBbGxDb2xsZWN0aW9uLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEFsbENvbGxlY3Rpb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQzk3RTQxMTEwOTE1NEZBMDAxMEQzNjEgLyog
SlNIVE1MQWxsQ29sbGVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0hUTUxBbGxDb2xsZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDOThB
MjdDMEMwQzk5NTAwMDRCRUJGNyAvKiBKU1N0eWxlU2hlZXRDdXN0b20uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTdHlsZVNoZWV0Q3VzdG9tLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkM5QTYxNDIxNDY4NTlEOTAwNjA1N0ZEIC8qIEV2ZW50
TmFtZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gRXZlbnROYW1lcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkM5QTYxNDUxNDY4NTlEOTAwNjA1N0ZEIC8qIG1ha2VfZXZlbnRfZmFjdG9yeS5wbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuc2NyaXB0
LnBlcmw7IHBhdGggPSBtYWtlX2V2ZW50X2ZhY3RvcnkucGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDOUE2MTQ2MTQ2ODU5RDkwMDYwNTdGRCAvKiBtYWtlX25hbWVzLnBsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQu
cGVybDsgcGF0aCA9IG1ha2VfbmFtZXMucGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDQTA4OEYyMjY0RTFCRjkwMDNFMkE2QyAvKiBJbWFnZURhdGFTZXR0aW5ncy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBJbWFnZURhdGFTZXR0aW5ncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0EwODhGNDI2NEUxQkY5MDAzRTJBNkMgLyogSW1hZ2VEYXRhU2V0dGluZ3MuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IEltYWdlRGF0YVNldHRpbmdzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNB
MTY5QTAwQkZENTVCNDAwMTlDQTc2IC8qIEpTSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTFRhYmxlQ2FwdGlvbkVs
ZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0ExNjlBMTBCRkQ1NUI0
MDAxOUNBNzYgLyogSlNIVE1MVGFibGVDYXB0aW9uRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MVGFibGVDYXB0aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0EyNTcxNDEyOTNDMDEwMDA3QTI2M0QgLyogVmVydGljYWxQ
b3NpdGlvbkNhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZlcnRpY2Fs
UG9zaXRpb25DYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0EyQjA2MDEw
NTA0NzVGMDA0M0JEMUMgLyogVXNlclNjcmlwdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBVc2VyU2NyaXB0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQTJC
MDhBMTA1MDVCQ0QwMDQzQkQxQyAvKiBVc2VyU2NyaXB0VHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVXNlclNjcmlwdFR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDQTM3OEJBMEQxNUY2NDIwMEI3OTNENiAvKiBTY2hlZHVsZWRBY3Rpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2NoZWR1bGVkQWN0aW9uLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBMzc4QkIwRDE1RjY0MjAwQjc5M0Q2
IC8qIFNjaGVkdWxlZEFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y2hlZHVsZWRBY3Rpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBNTU5MTIy
NjNEQkQ3OTAwN0YxOUIzIC8qIFBpeGVsRm9ybWF0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBpeGVsRm9ybWF0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
QTU1OTFBMjYzRjEwQjkwMDdGMTlCMyAvKiBQcmVkZWZpbmVkQ29sb3JTcGFjZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBQcmVkZWZpbmVkQ29sb3JTcGFjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQ0E1NTkxQzI2M0YxMEI5MDA3RjE5QjMgLyogUHJlZGVmaW5lZENvbG9yU3BhY2UuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFByZWRlZmluZWRDb2xvclNwYWNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkNBNTU5MUQyNjNGMTBCOTAwN0YxOUIzIC8qIFByZWRlZmluZWRDb2xvclNwYWNlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFByZWRlZmluZWRDb2xvclNwYWNlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBODNFMzYwRDdDREM0RTAwMzQyMUE4IC8qIERhdGFUcmFu
c2Zlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRGF0YVRyYW5zZmVyLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBODNFNEQwRDdDRTFFOTAwMzQyMUE4IC8qIEpTRGF0
YVRyYW5zZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGF0
YVRyYW5zZmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBODNFNEUwRDdD
RTFFOTAwMzQyMUE4IC8qIEpTRGF0YVRyYW5zZmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTRGF0YVRyYW5zZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDQTg0NkQ0MERDNjdBMzUwMDI2QzMwOSAvKiBSZW5kZXJSZXBsaWNhLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclJlcGxpY2EuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0E4NDZENTBEQzY3QTM1MDAyNkMzMDkgLyogUmVuZGVyUmVw
bGljYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJSZXBsaWNhLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQThDODFDMTFFM0QzNjkwMDgxMkZCNyAv
KiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQmFja0ZvcndhcmRDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDQThDODFEMTFFM0QzNjkwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmFja0ZvcndhcmRDb250cm9sbGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBQTQ4NkQxNEEwNTI1MzAwODhG
QUM0IC8qIFBsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDQUE0ODZFMTRBMDUyNTMwMDg4RkFDNCAvKiBQbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9y
bUV2ZW50RmFjdG9yeU1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0FBOTBD
MjBBN0VCQTYwMDA4QjEyMjkgLyogU2Nyb2xsYmFyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTY3JvbGxiYXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQ0FCNDE3RjEzRTM1NkU4MDBEOEFBRjMgLyogUmVnaW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlZ2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDQUI0MTgwMTNFMzU2RTgwMEQ4QUFGMyAvKiBSZWdpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVnaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDQUNGM0JBMTA3MjkyMUEwMEMwQzhBMyAvKiBVc2VyQ29udGVudFVSTFBhdHRlcm4u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNlckNvbnRlbnRVUkxQ
YXR0ZXJuLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNBQ0YzQkIxMDcyOTIx
QTAwQzBDOEEzIC8qIFVzZXJDb250ZW50VVJMUGF0dGVybi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBVc2VyQ29udGVudFVSTFBhdHRlcm4uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkNBRDE4MDkxMzFDN0EwRDAwOTkwNDA2IC8qIGVuICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dC5wbGlzdC5zdHJpbmdzOyBuYW1lID0gZW47IHBhdGggPSBlbi5scHJvai9Mb2NhbGl6YWJsZS5z
dHJpbmdzOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUJDQUUxRkE1MTI5MzlEQjcw
MDRDQjAyNiAvKiBTY3JvbGxBbmltYXRvck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTY3JvbGxBbmltYXRvck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0FGRURBRjI1OTY2RDA1MDAzMEU2QUEgLyogQ29sb3JTcGFjZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb2xvclNwYWNlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkNBRkVEQjIyNTk2OEQwQjAwMzBFNkFBIC8qIENvbG9yU3BhY2VDRy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDb2xvclNwYWNlQ0cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkNBRkVEQjMyNTk2OEQwQjAwMzBFNkFBIC8qIENvbG9yU3BhY2VDRy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDb2xvclNwYWNlQ0cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQ0IxNkJGRTA5NzlDM0JEMDA0Njc3NDEgLyogTWVtb3J5Q2FjaGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lbW9yeUNhY2hlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNCMTZCRkYwOTc5QzNCRDAwNDY3NzQxIC8qIE1lbW9yeUNh
Y2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZW1vcnlDYWNoZS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0IxNkMwMDA5NzlDM0JEMDA0Njc3NDEgLyog
Q2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDQjE2QzAxMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRDU1NTdHlsZVNoZWV0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRDU1NTdHlsZVNoZWV0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjE2QzAyMDk3OUMzQkQwMDQ2Nzc0MSAvKiBD
YWNoZWRJbWFnZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2Fj
aGVkSW1hZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0IxNkMwMzA5NzlD
M0JEMDA0Njc3NDEgLyogQ2FjaGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENhY2hlZEltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjE2
QzA2MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQ0IxNkMwNzA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkUmVzb3Vy
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFJlc291cmNlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjE2QzA5MDk3OUMzQkQwMDQ2Nzc0MSAv
KiBDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkU2NyaXB0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNCMTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8q
IENhY2hlZFNjcmlwdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVk
U2NyaXB0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjE2QzBFMDk3OUMzQkQw
MDQ2Nzc0MSAvKiBDYWNoZWRYU0xTdHlsZVNoZWV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRYU0xTdHlsZVNoZWV0LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkNCMTZDMEYwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFhTTFN0eWxl
U2hlZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlZFhTTFN0eWxl
U2hlZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNCMTZDMTAwOTc5QzNCRDAw
NDY3NzQxIC8qIENhY2hlZFJlc291cmNlTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDQjE2QzExMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJj
ZUxvYWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkUmVzb3Vy
Y2VMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNCNDc3OTcyNUQ0NkVG
RjAwNUVGMEM4IC8qIFJlbmRlck1vZGVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1vZGVsLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjQ3Nzk4MjVENDZFRkYwMDVFRjBDOCAv
KiBSZW5kZXJNb2RlbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNb2RlbC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQjkyRDRFMTI5MzU1MEIwMEM4Mzg3RiAvKiBG
b250QmFzZWxpbmUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udEJhc2Vs
aW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQkI4QUI1MTNGMUFGQjAwMDcz
NERGMCAvKiBQT0RJbnRlcnZhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQ
T0RJbnRlcnZhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0JCOEFCNjEzRjFB
RkIwMDA3MzRERjAgLyogUE9ESW50ZXJ2YWxUcmVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBPREludGVydmFsVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0JCOEFCNzEzRjFBRkIwMDA3MzRERjAgLyogUE9EUmVkQmxhY2tUcmVlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBPRFJlZEJsYWNrVHJlZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQ0JGQjUzQTBEQ0QyOUNGMDAxOUIzRTUgLyogSlNXaW5kb3dQcm94
eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dpbmRvd1Byb3h5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNCRkI1M0IwRENEMjlDRjAwMTlC
M0U1IC8qIEpTV2luZG93UHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNXaW5kb3dQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0MwRTg3MzFC
RkU3MEU5MDA4RjdGNTAgLyogSFRNTFBpY3R1cmVFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxQaWN0dXJlRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDQzBFODc0MUJGRTcwRTkwMDhGN0Y1MCAvKiBIVE1MUGljdHVy
ZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFBpY3R1cmVF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQzVCREZFMEMwRTkzMTEw
MDExQzJEQiAvKiBKU0NTU1N0eWxlU2hlZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTQ1NTU3R5bGVTaGVldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDQzVCREZGMEMwRTkzMTEwMDExQzJEQiAvKiBKU0NTU1N0eWxlU2hlZXQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ1NTU3R5bGVTaGVldC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0M4Q0ZDQTA5ODZDRDI0MDAxNDBCRjIgLyogQ29sb3JE
YXRhLmdwZXJmICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDb2xvckRhdGEuZ3BlcmY7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hU
TUxDb2xsZWN0aW9uQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTSFRNTENvbGxlY3Rpb25DdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQ0NCQUQzRTBDMThDMTQyMDBDRTg5MEYgLyogSlNIVE1MQ29sbGVjdGlvbi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MQ29sbGVjdGlvbi5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQ0JBRDNGMEMxOEMxNDIwMENFODkwRiAv
KiBKU0hUTUxDb2xsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U0hUTUxDb2xsZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQ0ZCQUU3
MEI1MTUyRUQwMDAxRjFENyAvKiBEb2N1bWVudFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRQYXJzZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkNEMEUwRjcwRTk3MkMzNTAwMjY1REVBIC8qIFNlY3VyaXR5T3JpZ2luLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlY3VyaXR5T3JpZ2luLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNEMEUwRjgwRTk3MkMzNTAwMjY1REVBIC8qIFNl
Y3VyaXR5T3JpZ2luLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY3VyaXR5
T3JpZ2luLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRDBFMEY5MEU5NzJDMzUw
MDI2NURFQSAvKiBTZWN1cml0eU9yaWdpbkhhc2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2VjdXJpdHlPcmlnaW5IYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDRDM3MzZDMjY4NjM1QkUwMDM2NDRFNCAvKiBsYXlvdXQtdHJhaXRzLmpzICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZh
c2NyaXB0OyBwYXRoID0gImxheW91dC10cmFpdHMuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQ0QzNzM2RTI2ODYzNzBBMDAzNjQ0RTQgLyogbWFjb3MtbGF5b3V0LXRyYWl0cy5q
cyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJtYWNvcy1sYXlvdXQtdHJhaXRzLmpzIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNEMzczNkYyNjg2NDIwMzAwMzY0NEU0IC8qIHdhdGNo
b3MtbGF5b3V0LXRyYWl0cy5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ3YXRjaG9zLWxheW91
dC10cmFpdHMuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0QzNzM3MDI2ODY0
MjNDMDAzNjQ0RTQgLyogaW9zLWxheW91dC10cmFpdHMuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGgg
PSAiaW9zLWxheW91dC10cmFpdHMuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
Q0Q1MzM2MzBFRDY4NDg5MDA4ODc0NjggLyogQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlkZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlk
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNEOUMyNUUwQzE3QUE2NzAwNUM5
MEEyIC8qIEpTRE9NV2luZG93Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0RPTVdpbmRvd0N1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDRDlDMjYwMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05vZGVDdXN0b20uY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTm9kZUN1c3RvbS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRDlDMjYxMEMxN0FBNjcwMDVDOTBBMiAvKiBKU05v
ZGVMaXN0Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U05vZGVMaXN0Q3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNEOUMy
QkMwQzE3QjY5RTAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU05hbWVkTm9kZU1hcC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDRDlDMkJEMEMxN0I2OUUwMDVDOTBBMiAvKiBKU05hbWVkTm9kZU1h
cC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNOYW1lZE5vZGVNYXAuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNEOUMyQkUwQzE3QjY5RTAwNUM5MEEyIC8q
IEpTTm9kZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
Tm9kZUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0Q5QzJCRjBDMTdC
NjlFMDA1QzkwQTIgLyogSlNOb2RlTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNOb2RlTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0RENDU0
RDEyMzZDOTVDMDA5QTc5ODUgLyogQ29sdW1uSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDb2x1bW5JbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
REYzMTc5MTFGOEQ2ODMwMDNDNUJGOCAvKiBVc2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyVHlwaW5nR2VzdHVyZUlu
ZGljYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDREYzMTdBMTFGOEQ2
ODMwMDNDNUJGOCAvKiBVc2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBVc2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0RGRDQ4QzBFMzA1MjkwMDA5RDEwQUQgLyogWE1MSHR0
cFJlcXVlc3RVcGxvYWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWE1MSHR0
cFJlcXVlc3RVcGxvYWQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNERkQ0OEQw
RTMwNTI5MDAwOUQxMEFEIC8qIFhNTEh0dHBSZXF1ZXN0VXBsb2FkLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhNTEh0dHBSZXF1ZXN0VXBsb2FkLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNERkQ0OTAwRTMwNTY0NDAwOUQxMEFEIC8qIFhNTEh0
dHBSZXF1ZXN0VXBsb2FkLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYTUxIdHRwUmVxdWVz
dFVwbG9hZC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDREZENDkzMEUzMDU5
MkYwMDlEMTBBRCAvKiBKU1hNTEh0dHBSZXF1ZXN0VXBsb2FkLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0RGRDQ5NDBFMzA1OTJGMDA5RDEwQUQgLyogSlNYTUxI
dHRwUmVxdWVzdFVwbG9hZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1hN
TEh0dHBSZXF1ZXN0VXBsb2FkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRTAx
Mzk4MEMwQkVGMTgwMDQzODYwQSAvKiBKU1N0eWxlU2hlZXQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU3R5bGVTaGVldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRTAxMzk5MEMwQkVGMTgwMDQzODYwQSAvKiBKU1N0eWxlU2hlZXQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU3R5bGVTaGVldC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0UwNDkwQzI2M0EyRjFDMDA5RENCQjggLyogQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJEU2V0dGluZ3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FudmFzUmVuZGVy
aW5nQ29udGV4dDJEU2V0dGluZ3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNF
MDQ5MEUyNjNBMkYxQzAwOURDQkI4IC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRFNldHRpbmdz
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRTZXR0aW5ncy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRTFDNDE5MEQ5ODI5ODAwMDNCMDJGMiAvKiBMb2NhdGlv
bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2NhdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0UxQzQxQTBEOTgyOTgwMDAzQjAyRjIgLyogTG9jYXRp
b24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTG9jYXRpb24uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0UxQzQyMjBEOTgyOUYyMDAzQjAyRjIg
LyogTG9jYXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IExvY2F0aW9uLmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFMUM0MzkwRDk4MzBEMzAwM0IwMkYyIC8qIEpT
TG9jYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNMb2Nh
dGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRTFDNDNBMEQ5ODMwRDMw
MDNCMDJGMiAvKiBKU0xvY2F0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTTG9jYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFMUM0M0YwRDk4
MzBGNDAwM0IwMkYyIC8qIEpTTG9jYXRpb25DdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNMb2NhdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRTMyQjlCMTUxN0MwQjEwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVt
blNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNdWx0aUNvbHVt
blNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0UzMkI5RDE1MTdDMjI3MDBG
NTQyRUMgLyogUmVuZGVyTXVsdGlDb2x1bW5TZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVuZGVyTXVsdGlDb2x1bW5TZXQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQ0U0NDEzMTEyRjc0OEUyMDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRl
eHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyQ29tYmlu
ZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0U0NDEzMjEyRjc0OEUy
MDA5Qjg0QjggLyogUmVuZGVyQ29tYmluZVRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyQ29tYmluZVRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkNFNjU4RkUwRUE5MjQ4QTAwN0U0NTMzIC8qIFRoZW1lLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFRoZW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
RTY1OUE4MEVBOTI3QjkwMDdFNDUzMyAvKiBUaGVtZVR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFRoZW1lVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkNFNjU5RTUwRUE5MkZCMjAwN0U0NTMzIC8qIFRoZW1lTWFjLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFRoZW1lTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDRTY1OUU4MEVBOTJGRkEwMDdFNDUzMyAvKiBUaGVtZU1hYy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRoZW1lTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQ0U2NUJFODBFQUNERjE2MDA3RTQ1MzMgLyogTGVuZ3RoLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExlbmd0aC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDRTY1QkU5MEVBQ0RGMTYwMDdFNDUzMyAvKiBMZW5ndGguaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVuZ3RoLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDRTY1RDMxMEVBRDEyMTEwMDdFNDUzMyAvKiBUaGVtZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUaGVtZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDRTc4OTE1MTEyMEQ2MDgwMDYwRUNFNSAvKiBJbmxpbmVJdGVy
YXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmxpbmVJdGVyYXRvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0U3ODk4NTExMjBFN0E2MDA2MEVDRTUg
LyogQmlkaVJ1bi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaWRpUnVuLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRTc4OThBMTEyMEU4MDIwMDYwRUNFNSAv
KiBCaWRpUnVuLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpZGlS
dW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0U3QjE5MjBENEU4Njk2MDA3
NUE1MzkgLyogSlNIaXN0b3J5Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTSGlzdG9yeUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUJDRTkzRjQ0MTUxN0M1NjcwMDhDQ0Y3NCAvKiBSZW5kZXJGcmFnbWVudENvbnRhaW5lclNl
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJGcmFnbWVudENvbnRh
aW5lclNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0U5M0Y0NjE1MTdDNkQ1
MDA4Q0NGNzQgLyogUmVuZGVyRnJhZ21lbnRDb250YWluZXJTZXQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRnJhZ21lbnRDb250YWluZXJTZXQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDc3QzA5N0NBQUM4MDA5NEM5RTQgLyog
Q1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDc3RDA5N0NBQUM4MDA5NEM5RTQgLyogQ1NTQ29tcHV0
ZWRTdHlsZURlY2xhcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkNFQTQ3OEMwOTdDQUFDODAwOTRDOUU0IC8qIENTU1ZhbHVlS2V5d29yZHMuaW4gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IENTU1ZhbHVlS2V5d29yZHMuaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRUE0ODEzMDk3RDkzMDIwMDk0QzlFNCAvKiBMZWdhY3lMaW5lTGF5b3V0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lMaW5lTGF5
b3V0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MTUwOTdEOTMwMjAw
OTRDOUU0IC8qIEJyZWFrTGluZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEJyZWFrTGluZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VB
NDgxNjA5N0Q5MzAyMDA5NEM5RTQgLyogQnJlYWtMaW5lcy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQnJlYWtMaW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0VBNDgxQTA5N0Q5MzAyMDA5NEM5RTQgLyogTGVnYWN5SW5saW5lVGV4dEJveC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGVnYWN5SW5saW5lVGV4dEJveC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODFCMDk3RDkzMDIwMDk0QzlF
NCAvKiBMZWdhY3lJbmxpbmVUZXh0Qm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBMZWdhY3lJbmxpbmVUZXh0Qm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDRUE0ODIwMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCbG9jay5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyQmxvY2suY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCQ0VBNDgyMTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2su
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckJsb2NrLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODIyMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5k
ZXJCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckJv
eC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODIzMDk3RDkzMDIwMDk0
QzlFNCAvKiBSZW5kZXJCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJl
bmRlckJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDgyNDA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyTGluZUJyZWFrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW5kZXJMaW5lQnJlYWsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQ0VBNDgyNTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyTGluZUJyZWFrLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJMaW5lQnJlYWsuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MjYwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRl
ckJ1dHRvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVy
QnV0dG9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MjcwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlckJ1dHRvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUmVuZGVyQnV0dG9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0
ODI4MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJWaWV3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJWaWV3LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkNFQTQ4MjkwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclZpZXcuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MkEwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckhUTUxDYW52
YXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckhUTUxD
YW52YXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDgyQjA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVySFRNTENhbnZhcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVySFRNTENhbnZhcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0VBNDgyRTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJEZXByZWNh
dGVkRmxleGlibGVCb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDgy
RjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJEZXByZWNhdGVkRmxleGlibGVCb3gu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MzYwOTdEOTMwMjAwOTRDOUU0
IC8qIFJlbmRlckltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZW5kZXJJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODM3
MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUmVuZGVySW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkNFQTQ4MzgwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlcklubGluZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVySW5saW5lLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4MzkwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlcklubGlu
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVySW5saW5lLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODNBMDk3RDkzMDIwMDk0QzlFNCAvKiBS
ZW5kZXJMYXllci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVu
ZGVyTGF5ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDgzQjA5N0Q5
MzAyMDA5NEM5RTQgLyogUmVuZGVyTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFJlbmRlckxheWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0
ODQwMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJPYmplY3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlck9iamVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRUE0ODQxMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJPYmplY3QuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck9iamVjdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDg0ODA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVy
VGhlbWVNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAz
MDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlclRoZW1l
TWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODQ5MDk3RDkzMDIwMDk0
QzlFNCAvKiBSZW5kZXJUaGVtZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBSZW5kZXJUaGVtZU1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkNFQTQ4NEEwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclRoZW1lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUaGVtZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJDRUE0ODRCMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUaGVt
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGhlbWUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQTQ4NEMwOTdEOTMwMjAwOTRDOUU0IC8qIFJl
bmRlclRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRl
clRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDg0RDA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyVGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUmVuZGVyVGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDg0RTA5
N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGV4dEZyYWdtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUZXh0RnJhZ21lbnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0VBNDg0RjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGV4
dEZyYWdtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJUZXh0
RnJhZ21lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQjE3OUIxNDMzNzlG
NTAwNTJFQUU5IC8qIFJlbmRlckJveEZyYWdtZW50SW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZW5kZXJCb3hGcmFnbWVudEluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkNFQzAxQkEwQzI3NERBQzAwOUY0RUM5IC8qIFNjcmVlbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2NyZWVuLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQzAxQkIwQzI3NERBQzAwOUY0RUM5IC8qIFNjcmVlbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2NyZWVuLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDRUMwMUJDMEMyNzREQUMwMDlGNEVDOSAvKiBTY3JlZW4uaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTY3JlZW4uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCQ0VDMDFDMDBDMjc0REREMDA5RjRFQzkgLyogSlNTY3JlZW4uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTU2NyZWVuLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQkNFQzAxQzEwQzI3NERERDAwOUY0RUM5IC8qIEpTU2NyZWVuLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NjcmVlbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0VDMDFENjBDMjc0RUI0MDA5RjRFQzkgLyogUGxhdGZvcm1T
Y3JlZW4uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtU2NyZWVu
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUY0M0NFMEU2NzNEQTEwMDFDMTI4
NyAvKiBTdHlsZUltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxl
SW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFRjQzREMwRTY3NDAxMjAw
MUMxMjg3IC8qIE5pbmVQaWVjZUltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE5pbmVQaWVjZUltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUY0
M0RGMEU2NzQxMTAwMDFDMTI4NyAvKiBOaW5lUGllY2VJbWFnZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOaW5lUGllY2VJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJDRUY0NDQ5MEU2NzQ1RTAwMDFDMTI4NyAvKiBTdHlsZUdlbmVyYXRl
ZEltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlR2VuZXJhdGVk
SW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFRjQ0NEMwRTY3NDYyODAw
MUMxMjg3IC8qIFN0eWxlQ2FjaGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gU3R5bGVDYWNoZWRJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
Q0VGNDQ3OTBFNjc0N0QwMDAxQzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZUNhY2hlZEltYWdlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFRjQ0N0MwRTY3NDgwNjAwMUMxMjg3IC8qIFN0eWxl
R2VuZXJhdGVkSW1hZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U3R5bGVHZW5lcmF0ZWRJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
RUY0NTNGMEU2NzZBQzEwMDFDMTI4NyAvKiBUZXh0TWV0cmljcy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gVGV4dE1ldHJpY3MuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
Q0VGNDVFODBFNjg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVGV4dE1ldHJpY3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkNFRjQ1RjMwRTY4N0I1QzAwMUMxMjg3IC8qIEpTVGV4dE1ldHJpY3MuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUZXh0TWV0cmljcy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRUY0NUY0MEU2ODdCNUMwMDFDMTI4NyAvKiBKU1Rl
eHRNZXRyaWNzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVGV4dE1ldHJp
Y3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFRjg2OUUwRTg0NEU5RDAwQTg1
Q0Q1IC8qIFNjcm9sbGJhclRoZW1lTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gU2Nyb2xsYmFyVGhlbWVNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDRUZBRjREMEMzMTdFNjkwMEZBODFGNiAvKiBKU0V2ZW50Q3VzdG9tLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50Q3VzdG9tLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNFRkUxREMwRENBNUNGRDAwNzM5MjE5IC8qIFhT
TFRQcm9jZXNzb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFhTTFRQcm9jZXNzb3IuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0VGRTFFODBEQ0E1RjY0MDA3MzkyMTkg
LyogSlNYU0xUUHJvY2Vzc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTWFNMVFByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
RUZFMUU5MERDQTVGNjQwMDczOTIxOSAvKiBKU1hTTFRQcm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNYU0xUUHJvY2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRjE2NDRGMjY2MjlGQzcwMDAyRjdFRiAvKiBDU1NDYWxjRXhwcmVzc2lv
bk5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTQ2FsY0V4cHJlc3Npb25Ob2RlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2NDUwMjY2MjlGQzcwMDAyRjdFRiAvKiBDU1NDYWxj
RXhwcmVzc2lvbk5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQ2FsY0V4cHJlc3Npb25O
b2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0NTMyNjYyQTEyMjAw
MDJGN0VGIC8qIENTU0NhbGNQcmltaXRpdmVWYWx1ZU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NT
Q2FsY1ByaW1pdGl2ZVZhbHVlTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
Q0YxNjQ1NDI2NjJBMTIyMDAwMkY3RUYgLyogQ1NTQ2FsY1ByaW1pdGl2ZVZhbHVlTm9kZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDU1NDYWxjUHJpbWl0aXZlVmFsdWVOb2RlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0NTcyNjYyQTFFOTAwMDJGN0VGIC8qIENTU0Nh
bGNOZWdhdGVOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0NhbGNOZWdhdGVOb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2NDU4MjY2MkExRTkwMDAyRjdFRiAvKiBDU1ND
YWxjTmVnYXRlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NDYWxjTmVnYXRlTm9kZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2NDVCMjY2MkEyMzcwMDAyRjdF
RiAvKiBDU1NDYWxjSW52ZXJ0Tm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NDYWxjSW52ZXJ0Tm9k
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ1QzI2NjJBMjM3MDAwMkY3
RUYgLyogQ1NTQ2FsY0ludmVydE5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQ2FsY0lu
dmVydE5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ1RjI2NjJB
MjhEMDAwMkY3RUYgLyogQ1NTQ2FsY09wZXJhdGlvbk5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NT
Q2FsY09wZXJhdGlvbk5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0
NjAyNjYyQTI4RDAwMDJGN0VGIC8qIENTU0NhbGNPcGVyYXRpb25Ob2RlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENTU0NhbGNPcGVyYXRpb25Ob2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkNGMTY0NjMyNjYyQTMxQTAwMDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9k
ZVBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NDYWxjRXhwcmVzc2lvbk5vZGVQYXJzZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0NjQyNjYyQTMxQTAwMDJGN0VGIC8q
IENTU0NhbGNFeHByZXNzaW9uTm9kZVBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1ND
YWxjRXhwcmVzc2lvbk5vZGVQYXJzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCQ0YxNjQ2ODI2NjJBOTM0MDAwMkY3RUYgLyogQ1NTQ2FsY0NhdGVnb3J5TWFwcGluZy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDU1NDYWxjQ2F0ZWdvcnlNYXBwaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUJDRjE2NDY5MjY2MkE5MzQwMDAyRjdFRiAvKiBDU1NDYWxjQ2F0ZWdvcnlN
YXBwaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0NhbGNDYXRlZ29yeU1hcHBpbmcuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ2RDI2NjJBQTUwMDAwMkY3RUYg
LyogQ2FsY3VsYXRpb25DYXRlZ29yeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWxjdWxhdGlvbkNhdGVn
b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2NDZGMjY2MkFBNkYwMDAy
RjdFRiAvKiBDYWxjdWxhdGlvbkNhdGVnb3J5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhbGN1
bGF0aW9uQ2F0ZWdvcnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ3
MDI2NjJBQUMzMDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25Ob2RlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENhbGNFeHByZXNzaW9uTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0Yx
NjQ3MTI2NjJBQUMzMDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25Ob2RlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhbGNFeHByZXNzaW9uTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUJDRjE2NDc0MjY2MkFCMzYwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk51bWJlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDYWxjRXhwcmVzc2lvbk51bWJlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQ0YxNjQ3NTI2NjJBQjM2MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25O
dW1iZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FsY0V4cHJlc3Npb25OdW1iZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ3ODI2NjJBQjg1MDAwMkY3RUYgLyog
Q2FsY0V4cHJlc3Npb25MZW5ndGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FsY0V4cHJlc3Npb25MZW5n
dGguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0NzkyNjYyQUI4NTAwMDJG
N0VGIC8qIENhbGNFeHByZXNzaW9uTGVuZ3RoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhbGNF
eHByZXNzaW9uTGVuZ3RoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0
N0MyNjYyQUJFNzAwMDJGN0VGIC8qIENhbGNFeHByZXNzaW9uTmVnYXRpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ2FsY0V4cHJlc3Npb25OZWdhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlCQ0YxNjQ3RDI2NjJBQkU3MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25OZWdhdGlvbi5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWxjRXhwcmVzc2lvbk5lZ2F0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGMTY0ODAyNjYyQUM1MTAwMDJGN0VGIC8qIENhbGNF
eHByZXNzaW9uSW52ZXJzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbGNFeHByZXNzaW9uSW52ZXJz
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2NDgxMjY2MkFDNTEwMDAy
RjdFRiAvKiBDYWxjRXhwcmVzc2lvbkludmVyc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBD
YWxjRXhwcmVzc2lvbkludmVyc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJDRjE2NDg0MjY2MkFDQTMwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk9wZXJhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDYWxjRXhwcmVzc2lvbk9wZXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlCQ0YxNjQ4NTI2NjJBQ0EzMDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25P
cGVyYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FsY0V4cHJlc3Npb25PcGVyYXRpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ4ODI2NjJBRDUyMDAwMkY3
RUYgLyogQ2FsY0V4cHJlc3Npb25CbGVuZExlbmd0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWxjRXhw
cmVzc2lvbkJsZW5kTGVuZ3RoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRjE2
NDg5MjY2MkFENTIwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbkJsZW5kTGVuZ3RoLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENhbGNFeHByZXNzaW9uQmxlbmRMZW5ndGguY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0YxNjQ4QzI2NjJBREQ4MDAwMkY3RUYgLyogQ2FsY09wZXJh
dG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbGNPcGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCQ0YxNjQ4RDI2NjJBREQ4MDAwMkY3RUYgLyogQ2FsY09wZXJhdG9yLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENhbGNPcGVyYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJDRjM0QTM2MTFBMjMxQ0QwMEM3MTgwNCAvKiBOYW1lZE5vZGVNYXAuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmFtZWROb2RlTWFwLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkNGNDhDRTYxMzcwRDExNDAwNEU4N0Q2IC8qIEFk
anVzdFZpZXdTaXplT3JOb3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWRq
dXN0Vmlld1NpemVPck5vdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0ZBOTMw
NzEwMzMzMTkzMDA3QjI1RDEgLyogUmVuZGVyT3ZlcmZsb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUmVuZGVyT3ZlcmZsb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQkNGQjJFNUQwOTc5RTQ2NDAwQkE3MDNEIC8qIENhY2hlZFJlc291cmNlQ2xpZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNvdXJjZUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0ZCNDVGMzE3RDhFMzkyMDA0NDQ0NDYg
LyogUmVuZGVyQmxvY2tGbG93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckJsb2NrRmxvdy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0ZCNDVGNDE3RDhFNDk0MDA0NDQ0NDYgLyog
UmVuZGVyQmxvY2tGbG93LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlbmRlckJsb2NrRmxvdy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDRkY2
NDhGMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTGVuZ3RoQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJD
RkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhTaXplLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IExlbmd0aFNpemUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQkUxNkM1OEUxN0NGRTE3MjAwODUyQzA0IC8qIEluYmFuZEdlbmVyaWNUZXh0VHJhY2suY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5iYW5kR2VuZXJpY1RleHRU
cmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFMTZDNThGMTdDRkUxNzIw
MDg1MkMwNCAvKiBJbmJhbmRHZW5lcmljVGV4dFRyYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEluYmFuZEdlbmVyaWNUZXh0VHJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQkUxNkM1OTAxN0NGRTE3MjAwODUyQzA0IC8qIEluYmFuZFdlYlZUVFRleHRU
cmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmJhbmRXZWJW
VFRUZXh0VHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRTE2QzU5MTE3
Q0ZFMTcyMDA4NTJDMDQgLyogSW5iYW5kV2ViVlRUVGV4dFRyYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEluYmFuZFdlYlZUVFRleHRUcmFjay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlCRTIwNTA3NjE4QTQ1ODQ2MDA4MDY0N0UgLyogVlRUQ3VlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFZUVEN1ZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFMjA1MDc3MThBNDU4NDYwMDgwNjQ3RSAvKiBWVFRDdWUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVlRUQ3VlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUJFMjA1MDc4MThBNDU4NDYwMDgwNjQ3RSAvKiBWVFRDdWUuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZUVEN1ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUJFMjA1MDdCMThBNDU4QjEwMDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVlRUQ3VlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkUyMDUwN0MxOEE0NThCMTAwODA2NDdFIC8qIFJl
bmRlclZUVEN1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJWVFRD
dWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkUyMDUwN0YxOEE0NjBBQTAwODA2
NDdFIC8qIEpTVlRUQ3VlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTVlRUQ3VlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkUyMDUwODAxOEE0
NjBBQTAwODA2NDdFIC8qIEpTVlRUQ3VlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTVlRUQ3VlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFMjM0ODA5MThB
OTg3MDMwMEU0QjZFOCAvKiBEYXRhQ3VlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IERhdGFDdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRTIz
NDgwQTE4QTk4NzAzMDBFNEI2RTggLyogRGF0YUN1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBEYXRhQ3VlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFMjM0
ODBCMThBOTg3MDMwMEU0QjZFOCAvKiBEYXRhQ3VlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBEYXRhQ3VlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU2MTAzOUIxOEE5
RDYxMjAwREQ1MEQ3IC8qIEpTRGF0YUN1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0RhdGFDdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlC
RTYxMDM5QzE4QTlENjEyMDBERDUwRDcgLyogSlNEYXRhQ3VlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRGF0YUN1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlCRTg1NUY3RjA3MDFFODM1MDAyMzk3NjkgLyogV2ViQ29yZVZpZXcuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZVZpZXcuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUJF
ODU2MDUxMDcwMUY5MTEwMDIzOTc2OSAvKiBXZWJDb3JlVmlldy5tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLm9iamM7IHBhdGggPSBXZWJDb3JlVmlldy5tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKKwkJQkU4
OEUwQkYxNzE1Q0UyNjAwNjU4RDk4IC8qIFRyYWNrTGlzdEJhc2UuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVHJhY2tMaXN0QmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUJFODhFMEMwMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFja0xpc3RCYXNl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYWNrTGlzdEJhc2UuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU4OEUwQ0MxNzE1RDJBMjAwNjU4RDk4IC8qIEF1
ZGlvVHJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9U
cmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFODhFMENEMTcxNUQyQTIw
MDY1OEQ5OCAvKiBBdWRpb1RyYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEF1ZGlvVHJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU4OEUwQ0UxNzE1
RDJBMjAwNjU4RDk4IC8qIEF1ZGlvVHJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1
ZGlvVHJhY2suaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRTg4RTBDRjE3MTVE
MkEyMDA2NThEOTggLyogQXVkaW9UcmFja0xpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQXVkaW9UcmFja0xpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlCRTg4RTBEMDE3MTVEMkEyMDA2NThEOTggLyogQXVkaW9UcmFja0xpc3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9UcmFja0xpc3QuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU4OEUwRDExNzE1RDJBMjAwNjU4RDk4IC8qIEF1ZGlvVHJh
Y2tMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb1RyYWNrTGlzdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFODhFMEQyMTcxNUQyQTIwMDY1OEQ5OCAvKiBW
aWRlb1RyYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFZpZGVv
VHJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRTg4RTBEMzE3MTVEMkEy
MDA2NThEOTggLyogVmlkZW9UcmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBWaWRlb1RyYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFODhFMEQ0MTcx
NUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1RyYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBW
aWRlb1RyYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU4OEUwRDUxNzE1
RDJBMjAwNjU4RDk4IC8qIFZpZGVvVHJhY2tMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFZpZGVvVHJhY2tMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkU4OEUwRDYxNzE1RDJBMjAwNjU4RDk4IC8qIFZpZGVvVHJhY2tMaXN0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvVHJhY2tMaXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFODhFMEQ3MTcxNUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1Ry
YWNrTGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gVmlkZW9UcmFja0xpc3QuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRThFRjAzRTE3MUM4RkY5MDA5QjQ4QzMgLyog
SlNBdWRpb1RyYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
QXVkaW9UcmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFOEVGMDNGMTcx
QzhGRjkwMDlCNDhDMyAvKiBKU0F1ZGlvVHJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNBdWRpb1RyYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJF
OEVGMDQwMTcxQzhGRjkwMDlCNDhDMyAvKiBKU0F1ZGlvVHJhY2tMaXN0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXVkaW9UcmFja0xpc3QuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlCRThFRjA0MTE3MUM4RkY5MDA5QjQ4QzMgLyogSlNBdWRp
b1RyYWNrTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1ZGlvVHJh
Y2tMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFOEVGMDQ2MTcxQzkwMTQw
MDlCNDhDMyAvKiBKU1ZpZGVvVHJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNWaWRlb1RyYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QkU4RUYwNDcxNzFDOTAxNDAwOUI0OEMzIC8qIEpTVmlkZW9UcmFjay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZpZGVvVHJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQkU4RUYwNDgxNzFDOTAxNDAwOUI0OEMzIC8qIEpTVmlkZW9UcmFja0xpc3QuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNWaWRlb1RyYWNrTGlzdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUJFOEVGMDQ5MTcxQzkwMTQwMDlCNDhD
MyAvKiBKU1ZpZGVvVHJhY2tMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTVmlkZW9UcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU5MTNE
N0YxODFFRjhFNTAwRENCMDlFIC8qIFRyYWNrUHJpdmF0ZUJhc2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVHJhY2tQcml2YXRlQmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlCRTkxRkM4QjA2MTMzNjY2MDA1RTM3OTAgLyogUG9zaXRpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUG9zaXRpb24uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJ
CUJFOTFGQzhDMDYxMzM2NjYwMDVFMzc5MCAvKiBQb3NpdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb3NpdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlC
RTk2MUM1MjE4QUQzMzdDMDBEMDdEQzUgLyogSW5iYW5kRGF0YVRleHRUcmFjay5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmJhbmREYXRhVGV4dFRyYWNrLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkU5NjFDNTMxOEFEMzM3QzAwRDA3REM1IC8q
IEluYmFuZERhdGFUZXh0VHJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SW5iYW5kRGF0YVRleHRUcmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCRTk4
M0Q5NTA1MkEyRTBBMDA4OTJEODUgLyogV2ViQ29yZUtleWJvYXJkVUlNb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVLZXlib2Fy
ZFVJTW9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJz
ID0gMDsgfTsKKwkJQkVBODA3QzYwRjcxNEEwMzAwNTI0MTk5IC8qIFNlbGVjdGlvbkdlb21ldHJ5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlbGVjdGlvbkdlb21l
dHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkVBODA3QzcwRjcxNEEwMzAw
NTI0MTk5IC8qIFNlbGVjdGlvbkdlb21ldHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNlbGVjdGlvbkdlb21ldHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUJFRjI5RUU5MTcxNUREMDkwMEM0QjRDOSAvKiBBdWRpb1RyYWNrUHJpdmF0ZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1RyYWNrUHJpdmF0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCRUYyOUVFQTE3MTVERDA5MDBDNEI0QzkgLyogVmlkZW9UcmFj
a1ByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9UcmFja1By
aXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzA0MDBDN0MyNjFDQjNEQjAw
QUY0NEZBIC8qIEFYSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQVhJbWFnZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDMDQwMEM3RTI2MUNCM0RCMDBBRjQ0RkEgLyogQVhJbWFnZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBWEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQzA0NkUxQUIxMjA4QTlGRTAwQkEyQ0Y3IC8qIExvY2FsaXplZFN0cmluZ3MuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTG9jYWxpemVkU3RyaW5ncy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMwNDkzRUI3MjQ0Njk5RTQwMDlBQUM4
MCAvKiBBWExvZ2dlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBWExvZ2dl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMDc4Mzc2MDIzREYyNTNFMDBDOUM1
QzggLyogQVhJc29sYXRlZE9iamVjdE1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IEFYSXNv
bGF0ZWRPYmplY3RNYWMubW07IHBhdGggPSBtYWMvQVhJc29sYXRlZE9iamVjdE1hYy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzA4RjEzQTEyNDQ3NjZEQzAwQUI5ODlGIC8qIEFY
TG9nZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFYTG9nZ2VyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQzBFMkYzMjUyNDEyQkYyOTAwOUM3M0VDIC8qIGxpYkFjY2Vzc2li
aWxpdHkudGJkICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gInNvdXJjZWNvZGUudGV4dC1iYXNlZC1keWxpYi1kZWZpbml0aW9uIjsgbmFtZSA9IGxpYkFj
Y2Vzc2liaWxpdHkudGJkOyBwYXRoID0gdXNyL2xpYi9saWJBY2Nlc3NpYmlsaXR5LnRiZDsgc291
cmNlVHJlZSA9IFNES1JPT1Q7IH07CisJCUMwRjJBNDNGMTM4NjlBMjgwMDY2QzUzNCAvKiBwcmVw
cm9jZXNzb3IucG0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0LnNjcmlwdC5wZXJsOyBuYW1lID0gcHJlcHJvY2Vzc29yLnBtOyBwYXRoID0gc2Ny
aXB0cy9wcmVwcm9jZXNzb3IucG07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMxMDVE
QTYxMEYzQUE2OEYwMDFERDQ0RiAvKiBUZXh0RW5jb2RpbmdEZXRlY3RvcklDVS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0RW5jb2RpbmdEZXRlY3RvcklDVS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMxMDVEQTYzMEYzQUE2QjgwMDFERDQ0
RiAvKiBUZXh0RW5jb2RpbmdEZXRlY3Rvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBUZXh0RW5jb2RpbmdEZXRlY3Rvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDMTFBOUVDRDIxNDAzQTVDMDBDRkIyMEEgLyogU3dpdGNoaW5nR1BVQ2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN3aXRjaGluZ0dQVUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDMTFBOUVEMjIxNDA1NzhCMDBDRkIyMEEgLyogU3dpdGNoaW5nR1BVQ2xpZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFN3aXRjaGluZ0dQVUNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUMxMzc4NDZCMjQyQkVFQkEwMEU4NkZBOCAvKiBQbGF0Zm9ybVNjcmVl
bi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQbGF0Zm9ybVNjcmVl
bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMxNDkzODA1MjIzNDI3MTkwMDBD
RDcwNyAvKiBTcGVlY2hTeW50aGVzaXNDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3BlZWNoU3lu
dGhlc2lzQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMxNDlENTU5MjQy
RUE0RjgwMDNFQkIxMiAvKiBTbGVlcERpc2FibGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFNsZWVwRGlzYWJsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDMTQ5RDU1QTI0MkVBNEY5MDAzRUJCMTIgLyogU2xlZXBEaXNhYmxlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTbGVlcERpc2FibGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUMxNDlENTVCMjQyRUE0RkEwMDNFQkIxMiAvKiBTbGVlcERpc2Fi
bGVyQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNsZWVwRGlzYWJs
ZXJDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzE0OUQ1NjUyNDJFQjc2
NTAwM0VCQjEyIC8qIFNsZWVwRGlzYWJsZXJJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNs
ZWVwRGlzYWJsZXJJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMx
NjkyREQxMjNEMjNBQkQwMDZFODhGNyAvKiBTeXN0ZW1CYXR0ZXJ5Lm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gU3lzdGVtQmF0dGVyeS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QzE2OTJERDQyM0QyM0FFMDAwNkU4OEY3IC8qIFN5c3RlbUJhdHRlcnkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU3lzdGVtQmF0dGVyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMThDQzBB
MzI1ODBFRkIxMDAzRDc1RkIgLyogVW5pdmVyc2FsQWNjZXNzWm9vbS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBVbml2ZXJzYWxBY2Nlc3Nab29tLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMx
OENDMEE2MjU4MEYwRkEwMDNENzVGQiAvKiBVbml2ZXJzYWxBY2Nlc3Nab29tLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gVW5pdmVyc2FsQWNjZXNzWm9vbS5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQzE4RkI1MTgyNDJGOTM4MjAwN0U5ODc1IC8qIFNsZWVwRGlzYWJsZXJDbGll
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2xlZXBEaXNhYmxlckNsaWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMxRTFEMjM1MjAzREYxNTQwMDU4NDY2NSAvKiBTY3Jl
ZW5Qcm9wZXJ0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmVlblByb3BlcnRpZXMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzFGN0I3MkYyNDQ4RjJBQzAwMTI0NTU3IC8qIEFHWENv
bXBpbGVyU2VydmljZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBR1hDb21waWxlclNlcnZpY2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMUY3QjczMDI0NDhGMkFDMDAxMjQ1
NTcgLyogQUdYQ29tcGlsZXJTZXJ2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFHWENvbXBpbGVyU2Vy
dmljZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMjAxNUMwOTFCRTZGRTJDMDA4
MjIzODkgLyogRm9udFZhcmlhbnRCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRWYXJpYW50
QnVpbGRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMjFCRjc0MjIxQ0Q5NjNC
MDAyMjc5NzkgLyogV0hMU0xTdGFuZGFyZExpYnJhcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0hMU0xT
dGFuZGFyZExpYnJhcnkuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvV0hMU0xTdGFu
ZGFyZExpYnJhcnkuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJQzIx
REYyRTcxRDlFNEU5OTAwRjVCMjRDIC8qIENTU0ZvbnRWYXJpYXRpb25WYWx1ZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NGb250VmFyaWF0aW9uVmFsdWUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMjFERjJFODFEOUU0RTk5MDBGNUIyNEMg
LyogQ1NTRm9udFZhcmlhdGlvblZhbHVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU0ZvbnRWYXJpYXRpb25WYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDMjQ1OEU2MTFGRTg5NzlFMDA1OTQ3NTkgLyogRm9udENhY2hlQ29yZVRleHQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRm9udENhY2hlQ29yZVRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQzI2MDE3QTExQzcyREM5OTAwRjc0QTE2IC8qIENTU0ZvbnRGYWNlU2V0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0ZvbnRGYWNlU2V0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzI2MDE3QTIxQzcyREM5OTAwRjc0QTE2IC8qIENTU0Zv
bnRGYWNlU2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0ZvbnRGYWNl
U2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMyODA4MzNDMUM2REIxOTQwMDE0
NTFCNiAvKiBGb250RmFjZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRm9udEZhY2UuaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDMjgwODMzRDFDNkRDMjJDMDAxNDUxQjYg
LyogSlNGb250RmFjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBK
U0ZvbnRGYWNlLmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFjZS5j
cHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUMyODA4MzNFMUM2REMy
MkMwMDE0NTFCNiAvKiBKU0ZvbnRGYWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IEpTRm9udEZhY2UuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGb250RmFj
ZS5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlDMjgwQjNGRDFFRjQ2
MDg5MDBEMzUxMzUgLyogRm9udEZhbWlseVNwZWNpZmljYXRpb25OdWxsLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uTnVsbC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMyQUIwQUY0MUU2QjNDNkMwMDEzNDhD
NSAvKiBGb250U2VsZWN0aW9uQWxnb3JpdGhtLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZvbnRTZWxlY3Rpb25BbGdvcml0aG0uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDMkFCMEFGNTFFNkIzQzZDMDAxMzQ4QzUgLyogRm9udFNlbGVjdGlvbkFs
Z29yaXRobS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb250U2VsZWN0aW9u
QWxnb3JpdGhtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMyQUIwQjAzMUU2REU5
MkMwMDEzNDhDNSAvKiBGb250U2VsZWN0aW9uVmFsdWVJbmxpbmVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEZvbnRTZWxlY3Rpb25WYWx1ZUlubGluZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQzJDMkNGNTUxRUYzNzYxQTAwNDI4MUE4IC8qIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uTnVs
bC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGb250RmFtaWx5U3BlY2lmaWNh
dGlvbk51bGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzJFMzhFRkIxRTgzOTZG
RDAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENTU0ZvbnRTdHlsZVZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQzJFMzhFRkMxRTgzOTZGRDAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVZhbHVl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0ZvbnRTdHlsZVZhbHVlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMyRTM4RUZGMUU4NDU3MzUwMENBM0FERiAv
KiBDU1NGb250U3R5bGVSYW5nZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENTU0ZvbnRTdHlsZVJhbmdlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDMkUzOEYwMDFFODQ1NzM1MDBDQTNBREYgLyogQ1NTRm9udFN0eWxlUmFuZ2VW
YWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGb250U3R5bGVSYW5n
ZVZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMyRjRFNzg4MUU0NUFFREYw
MDZENzEwNSAvKiBDb21wbGV4VGV4dENvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQ29tcGxleFRleHRDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQzJGNEU3ODkxRTQ1QUVERjAwNkQ3MTA1IC8qIENvbXBsZXhUZXh0
Q29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21wbGV4VGV4
dENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzMzMEEyMjExM0VD
MTk2QjAwMDBCNDVCIC8qIENvbG9yQ2hvb3Nlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDb2xvckNob29zZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzMz
RUU1QzIxNEZCNDk2MTAwMDIwOTVBIC8qIEJhc2VDbGlja2FibGVXaXRoS2V5SW5wdXRUeXBlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJhc2VDbGlja2FibGVXaXRo
S2V5SW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzMzRUU1QzMx
NEZCNDk2MTAwMDIwOTVBIC8qIEJhc2VDbGlja2FibGVXaXRoS2V5SW5wdXRUeXBlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VDbGlja2FibGVXaXRoS2V5SW5wdXRUeXBl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMzNDg2MTIxMTVGREUyMUUwMDdBMUND
OSAvKiBJbnB1dFR5cGVOYW1lcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJbnB1dFR5cGVOYW1lcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMz
NDg2MTIyMTVGREUyMUUwMDdBMUNDOSAvKiBJbnB1dFR5cGVOYW1lcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBJbnB1dFR5cGVOYW1lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDMzc1RDdGQjE2NjM5NTE5MDA2MTg0QUIgLyogVHlwZUFoZWFkLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFR5cGVBaGVhZC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUMzNzVEN0ZDMTY2Mzk1MTkwMDYxODRBQiAvKiBUeXBlQWhl
YWQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHlwZUFoZWFkLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMzN0NERUJDMTQ5RUYyMDMwMDQyMDkwRCAvKiBDb2xv
ckNob29zZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29sb3JD
aG9vc2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMzQ0YxN0EwMTVC
MDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IElkVGFyZ2V0T2JzZXJ2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDM0NGMTdBMTE1QjAwNjNGMDAyNzZEMzkgLyogSWRUYXJnZXRPYnNlcnZl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJZFRhcmdldE9ic2VydmVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUMzQ0YxN0EyMTVCMDA2M0YwMDI3NkQzOSAv
KiBJZFRhcmdldE9ic2VydmVyUmVnaXN0cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSWRUYXJnZXRPYnNlcnZlclJlZ2lzdHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQzNDRjE3QTMxNUIwMDYzRjAwMjc2RDM5IC8qIElkVGFyZ2V0T2JzZXJ2
ZXJSZWdpc3RyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJZFRhcmdldE9i
c2VydmVyUmVnaXN0cnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzNFNjFDNjUz
QTY0ODA3QTgzRTc2RkI4IC8qIE1hdGhNTE1lbmNsb3NlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxNZW5jbG9zZUVsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNENENjI5ODE4MzgzNzY2MDA3RUJBRjEgLyogRnJh
bWVTbmFwc2hvdHRpbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RnJhbWVTbmFwc2hvdHRpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNENE
NjI5OTE4MzgzNzY2MDA3RUJBRjEgLyogRnJhbWVTbmFwc2hvdHRpbmcuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRnJhbWVTbmFwc2hvdHRpbmcuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQzUwRDBFODEwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3Bh
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmFnZU5hbWVzcGFjZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNTEzN0NGMDExQTU4Mzc4MDA0QURCOTkg
LyogSlNET01TdHJpbmdMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRE9NU3RyaW5nTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM1
MTM3Q0YxMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01TdHJpbmdMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUM1MjI3REVGMUMzQzZERDcwMEY1RUQ1NCAvKiBEYXRhRGV0ZWN0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFEZXRlY3Rpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzUyMjdERjAxQzNDNkRENzAwRjVFRDU0IC8qIERhdGFE
ZXRlY3Rpb24ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEYXRh
RGV0ZWN0aW9uLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNTI3OEIwQjE3RjIx
MkVBMDAzQTI5OTggLyogUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDNTNEMzkzMzFDOTc4OTJEMDA3RjNBRTkgLyogTUlNRVR5
cGVSZWdpc3RyeUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gTUlNRVR5cGVSZWdpc3RyeUNvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDNTQ0Mjc0OTExQTU3RTdBMDA2M0E3NDkgLyogRE9NU3RyaW5nTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBET01TdHJpbmdMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUM1NDQyNzRBMTFBNTdFN0EwMDYzQTc0OSAvKiBET01TdHJpbmdMaXN0Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01TdHJpbmdMaXN0LmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQzU1NjEwRjAxMUE3MDRFQjAwQjgyRDI3IC8qIERPTVN0cmluZ0xp
c3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NU3RyaW5nTGlz
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM1NTkyRjc3MUE5MkFBMjgwMDFG
ODg2MiAvKiBDaGFyYWN0ZXJQcm9wZXJ0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENoYXJhY3RlclByb3BlcnRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQzU1QzdCQTAxNzE4QUZCQTAwMTMyN0U0IC8qIFJlbmRlclRoZW1lSU9TLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVuZGVyVGhlbWVJT1MubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM1NzJFRTFEMTIwMUM5QkMwMDdEOEY4MiAvKiBKU0lE
QkluZGV4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTSURCSW5kZXguaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzU4NUE2NjAxMUQ0RkFDNTAwNEMzRTRCIC8q
IElEQkJpbmRpbmdVdGlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSURCQmluZGluZ1V0aWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUM1ODVBNjYxMTFENEZBQzUwMDRDM0U0QiAvKiBJREJCaW5kaW5nVXRpbGl0aWVzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElEQkJpbmRpbmdVdGlsaXRpZXMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzU4NUE2NkIxMUQ0RkIwNzAwNEMzRTRCIC8qIEpT
SURCRGF0YWJhc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNJREJEYXRh
YmFzZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNTg1QTY3NTExRDRGQjA3MDA0
QzNFNEIgLyogSlNJREJLZXlSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU0lEQktleVJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM1ODVBNjc3
MTFENEZCMDcwMDRDM0U0QiAvKiBKU0lEQk9iamVjdFN0b3JlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTSURCT2JqZWN0U3RvcmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQzU4NUE2NzkxMUQ0RkIwNzAwNEMzRTRCIC8qIEpTSURCUmVxdWVzdC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0lEQlJlcXVlc3QuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQzU4NUE2OTUxMUQ0RkIxMzAwNEMzRTRCIC8qIEpTSURCRmFjdG9y
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0lEQkZhY3RvcnkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzVBMUVBNzkxNTJCQzQ4NjAwNEQwMEI2IC8qIFNp
bXBsaWZ5TWFya3VwQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTaW1wbGlmeU1hcmt1cENvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDNUExRUE3QTE1MkJDNDg2MDA0RDAwQjYgLyogU2ltcGxpZnlNYXJrdXBDb21tYW5kLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbXBsaWZ5TWFya3VwQ29tbWFuZC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNUI0QzI0QjE1MDkyMzZDMDBBNkVGMzcg
LyogV2ViQ29yZU5TVVJMRXh0cmFzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlYkNvcmVOU1VSTEV4dHJhcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNUI0
QzI0QzE1MDkyMzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2ViQ29yZU5TVVJMRXh0cmFzLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNUJBQzE2RjE0RTMwRTQ3MDAwMDg4MzcgLyogUGxh
dGZvcm1QYXN0ZWJvYXJkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRm
b3JtUGFzdGVib2FyZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNUQ0QUE3ODEx
NkJBRkI2MDA2OUNBOTMgLyogR2x5cGhNZXRyaWNzTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEdseXBoTWV0cmljc01hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDNUU5QjY3NjEwNjk3RTEzMDBDN0JCMUEgLyogU3RvcmFnZUV2ZW50RGlzcGF0Y2hlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdG9yYWdlRXZlbnREaXNw
YXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzVFQkREODExMDVFRERF
QzAwNTY4MTZGIC8qIFN0b3JhZ2VFdmVudERpc3BhdGNoZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3RvcmFnZUV2ZW50RGlzcGF0Y2hlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDNUY3NjVCNDE0RTFENDE0MDA2Qzg5OUIgLyogUGFzdGVib2FyZFN0cmF0
ZWd5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhc3RlYm9hcmRTdHJhdGVn
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNUY3NjVCQTE0RTFFQ0Y0MDA2Qzg5
OUIgLyogUGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gUGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDNjUwNDZBODE2N0JGQjU1MDBDQzJBNEQgLyogVGVtcGxhdGVDb250ZW50
RG9jdW1lbnRGcmFnbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZW1w
bGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUM2QTcwMzMyNUM5RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50VGFyZ2V0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzZENzRBRDMwOUFBMjgyRTAwMEIwQTUyIC8qIE1vZGlm
eVNlbGVjdGlvbkxpc3RMZXZlbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
b2RpZnlTZWxlY3Rpb25MaXN0TGV2ZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QzZENzRBRTMwOUFBMjkwQTAwMEIwQTUyIC8qIE1vZGlmeVNlbGVjdGlvbkxpc3RMZXZlbC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb2RpZnlTZWxlY3Rpb25MaXN0
TGV2ZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNkYwOEZCOTE0MzBGRThG
MDA2ODU4NDkgLyogTXV0YXRpb25SZWNvcmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gTXV0YXRpb25SZWNvcmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDNkYwOEZCQTE0MzBGRThGMDA2ODU4NDkgLyogTXV0YXRpb25SZWNvcmQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTXV0YXRpb25SZWNvcmQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQzZGMDhGQkIxNDMwRkU4RjAwNjg1ODQ5IC8qIE11dGF0aW9uUmVj
b3JkLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNdXRhdGlvblJlY29yZC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM2RjA4RkM3MTQzMTAwMEQwMDY4NTg0OSAvKiBKU011
dGF0aW9uUmVjb3JkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TXV0YXRpb25SZWNvcmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDNkYwOEZD
ODE0MzEwMDBEMDA2ODU4NDkgLyogSlNNdXRhdGlvblJlY29yZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU011dGF0aW9uUmVjb3JkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUM2RjA5MDAxMTQzMjdCNjEwMDY4NTg0OSAvKiBNdXRhdGlvbkNhbGxiYWNrLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE11dGF0aW9uQ2FsbGJhY2suaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQzZGMDkwMDUxNDMyN0I2MTAwNjg1ODQ5IC8qIE11
dGF0aW9uT2JzZXJ2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TXV0YXRpb25PYnNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM2RjA5
MDA2MTQzMjdCNjEwMDY4NTg0OSAvKiBNdXRhdGlvbk9ic2VydmVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE11dGF0aW9uT2JzZXJ2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQzZGMDkwMDcxNDMyN0I2MTAwNjg1ODQ5IC8qIE11dGF0aW9uT2JzZXJ2ZXIu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE11dGF0aW9uT2JzZXJ2ZXIuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDNkYwOTAyNDE0MzI3RDRGMDA2ODU4NDkgLyogSlNNdXRh
dGlvbk9ic2VydmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TXV0YXRpb25PYnNlcnZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUM2RjA5
MDI1MTQzMjdENEYwMDY4NTg0OSAvKiBKU011dGF0aW9uT2JzZXJ2ZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNdXRhdGlvbk9ic2VydmVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUM2RjA5MTdFMTQzQTJCQjkwMDY4NTg0OSAvKiBKU011dGF0aW9uT2Jz
ZXJ2ZXJDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNN
dXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QzlENDY3MDQxRTYwQzNFQjAwODE5NUZCIC8qIEF1dG9wbGF5RXZlbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXV0b3BsYXlFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQTA5MUQ4
NjIzQ0Y5MDc4MDBBRDQzNDYgLyogU3R5bGVJbWFnZVNldC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTdHlsZUltYWdlU2V0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0EwOTFE
ODkyM0NGOTA4ODAwQUQ0MzQ2IC8qIFN0eWxlSW1hZ2VTZXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5
bGVJbWFnZVNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQTE2MzVEQzIwNzJF
NzY5MDBFN0QyQ0UgLyogUmVmZXJyZXJQb2xpY3kuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVmZXJyZXJQb2xpY3kuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQTE5MzNENTI0MDdENjQwMDA3MTI0MUEgLyogUGVyZm9ybWFuY2VQYWludFRpbWlu
Zy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBQZXJmb3JtYW5jZVBhaW50VGltaW5nLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNBMTkzM0Q4MjQwN0VEQ0YwMDcxMjQxQSAvKiBQZXJmb3JtYW5j
ZVBhaW50VGltaW5nLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQZXJmb3JtYW5jZVBhaW50
VGltaW5nLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0EzQTRBQUIyNTQxNkUz
QzAwNkNEQUUyIC8qIEltYWdlUmVzb2x1dGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJbWFnZVJlc29sdXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQTNBNEFBRDI1NDE2RTNFMDA2Q0RBRTIgLyogSW1hZ2VSZXNvbHV0aW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlUmVzb2x1dGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDQTNCRjY3QjEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xs
QW5pbWF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xs
QW5pbWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQTNCRjY3RDEwRDk5
QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2Nyb2xsQW5pbWF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0E1MkJBRTUyM0QwQUYxNjAwREUwQjg0IC8qIFN0eWxlQ3Vyc29ySW1hZ2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU3R5bGVDdXJzb3JJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNBNTJCQUU3MjNEMEFGMTcwMERFMEI4NCAvKiBTdHlsZU11bHRpSW1hZ2UuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVNdWx0aUltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0E1MkJBRTgyM0QwQUYxODAwREUwQjg0IC8qIFN0eWxlTXVsdGlJbWFnZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTdHlsZU11bHRpSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0E1MkJBRTkyM0QwQUYxOTAwREUwQjg0IC8qIFN0eWxlQ3Vyc29ySW1hZ2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3R5bGVDdXJzb3JJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDQTZDMTUyRjIyMEI0QTU1MDA1NUNCRkMgLyogSlNJREJSZXF1ZXN0Q3VzdG9tLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSURCUmVxdWVzdEN1c3Rv
bS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNBNkMxNTM3MjIwRDFFQjMwMDU1
Q0JGQyAvKiBKU0lEQkN1cnNvckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0lEQkN1cnNvckN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNBNkMxNTM4MjIwRDFFQjMwMDU1Q0JGQyAvKiBKU0lEQkN1cnNvcldpdGhWYWx1ZUN1
c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0lEQkN1cnNv
cldpdGhWYWx1ZUN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNBN0U5
QjQ3MjQzNjFEQzUwMDRFODlGNiAvKiBDb250ZW50ZnVsUGFpbnRDaGVja2VyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRmdWxQYWludENoZWNrZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0E3RTlCNDgyNDM2MURDNTAwNEU4OUY2IC8qIENvbnRl
bnRmdWxQYWludENoZWNrZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQ29udGVudGZ1bFBhaW50Q2hlY2tlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0FzcGVjdFJhdGlvVmFsdWUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1
QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDU1NBc3BlY3RSYXRpb1ZhbHVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNCMzhGRDRBMUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBlcmZvcm1hbmNlRW50cnkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQjM4RkQ0RDFDQ0Y5MzdFMDA1OTJBM0YgLyogSlNQ
ZXJmb3JtYW5jZUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNp
dEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBmaWxlRW5jb2RpbmcgPSA0OyBwYXRoID0g
SlNQZXJmb3JtYW5jZUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Iz
OEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BlcmZvcm1hbmNlRW50cnkuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0IzOEZENTUxQ0QyMUQ1QjAwNTkyQTNGIC8qIEpTUGVyZm9ybWFu
Y2VFbnRyeUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1BlcmZvcm1hbmNlRW50cnlDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5n
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2VS
ZXNvdXJjZVRpbWluZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCMzhGRDU5
MUNEMjMxNDUwMDU5MkEzRiAvKiBKU1BlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQZXJmb3JtYW5jZVJlc291cmNlVGltaW5nLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNCOENGMDE1MUE5MzRCNDMwMDBENTEwQiAv
KiBNaWNyb3Rhc2tzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1p
Y3JvdGFza3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQkE5REMwODFERjQ0
REM0MDAwNTY3NUMgLyogTGlua0hlYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBMaW5rSGVhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0JBOURDMDkxREY0NERDNDAwMDU2NzVDIC8qIExpbmtIZWFkZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTGlua0hlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDQkI2QjJEMTFDQjdBREM2MDA5RURFMUEgLyogTGlua1ByZWxvYWRSZXNvdXJjZUNsaWVu
dHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGlua1ByZWxvYWRS
ZXNvdXJjZUNsaWVudHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDQkI2QjJE
MjFDQjdBREQwMDA5RURFMUEgLyogTGlua1ByZWxvYWRSZXNvdXJjZUNsaWVudHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGlua1ByZWxvYWRSZXNvdXJjZUNsaWVudHMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0JDMkQyMkQxQ0U1Qjc3NDAwRDE4ODBCIC8q
IFJlc291cmNlVGltaW5nSW5mb3JtYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNCQzJEMjJFMUNFNUI3N0QwMEQxODgwQiAvKiBSZXNvdXJjZVRpbWlu
Z0luZm9ybWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlc291cmNl
VGltaW5nSW5mb3JtYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0NDMkI1
MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEZXZpY2VDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0NDMkI1MTExNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGV2aWNlQ29udHJvbGxlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNDQzJCNTEyMTVGNjEzMDYwMDQ4Q0RENiAvKiBE
ZXZpY2VDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERldmlj
ZUNvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QwMzIwMTUyMjc5
RjVCRjAwREQ5RjBCIC8qIEpTTWVkaWFDYXBhYmlsaXRpZXNDdXN0b20uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNNZWRpYUNhcGFiaWxpdGllc0N1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDA2M0Y4MDFFMjNGQTg5MDA4MTJCRTMgLyogSW5pdERhdGFSZWdpc3RyeS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbml0RGF0YVJlZ2lzdHJ5LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QwNjNGODExRTIzRkE4OTAwODEyQkUzIC8q
IEluaXREYXRhUmVnaXN0cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5p
dERhdGFSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDBDOEI1ODIx
NDFDOENBMDA2MkY1OUQgLyogTWVkaWFDYXBhYmlsaXRpZXNJbmZvLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lZGlhQ2FwYWJpbGl0aWVzSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDBFRUUwQjE0NzQzRTM1MDAzRUFGQTIgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvcklPUy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb091dHB1dFVuaXRBZGFw
dG9ySU9TLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QxMUIzREYyMjdDQUFB
OTAwMjNBRkM3IC8qIEFWU3RyZWFtRGF0YVBhcnNlck1JTUVUeXBlQ2FjaGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQVZTdHJlYW1EYXRhUGFyc2VyTUlNRVR5cGVDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRDExQjNFMDIyN0NBQUE5MDAyM0FGQzcgLyogQVZTdHJlYW1EYXRhUGFy
c2VyTUlNRVR5cGVDYWNoZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFWU3RyZWFtRGF0YVBh
cnNlck1JTUVUeXBlQ2FjaGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMTI3
REVBMTRGMzA5NzkwMEU4NDc3OSAvKiBXZWJDb3JlRnVsbFNjcmVlbldpbmRvdy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlRnVsbFNjcmVlbldpbmRvdy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDEyN0RFQjE0RjMwOTc5MDBFODQ3NzkgLyogV2Vi
Q29yZUZ1bGxTY3JlZW5XaW5kb3cubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBXZWJDb3JlRnVsbFNjcmVlbldpbmRvdy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0QxN0E0NTkyMTM3NDAxNjAwNzlFQzdCIC8qIFVuaWZpZWRTb3VyY2U2Mi1tbS5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNl
NjItbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2U2Mi1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCUNEMTlBMjY3MUExM0U3MDAwMDhENjUwRSAvKiBEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDE5RkVBNjFGNTczOTcyMDAw
QzQyRkIgLyogSW1hZ2VEZWNvZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlRGVjb2Rlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDE5RkVBNzFGNTczOTcyMDAwQzQyRkIgLyog
SW1hZ2VEZWNvZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlRGVjb2Rlci5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMTlGRUFDMUY1NzRCNkQwMDBDNDJGQiAvKiBJ
bWFnZURlY29kZXJBVkZPYmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlRGVjb2RlckFWRk9iakMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QxOUZFQUQxRjU3NEI2RDAwMEM0MkZC
IC8qIEltYWdlRGVjb2RlckFWRk9iakMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbWFnZURl
Y29kZXJBVkZPYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDFFNzM0NjE2
N0JDNzhFMDA5QTg4NUQgLyogVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDIyNUMwOTFDNDZGQkY0MDAxNDA3NjEgLyog
V2ViQ29yZU5TVVJMU2Vzc2lvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFdlYkNvcmVOU1VSTFNlc3Npb24ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEMjI1QzBBMUM0NkZCRjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVOU1VSTFNlc3Npb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QyN0FFNEUyMkE5ODY4NzAwOTQ3RkY5IC8qIElt
YWdlUm90YXRpb25TZXNzaW9uVlQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW1hZ2VSb3RhdGlvblNlc3Np
b25WVC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDI3QUU0RjIyQTk4Njg3MDA5
NDdGRjkgLyogSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IEltYWdlUm90YXRpb25TZXNzaW9uVlQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEMjdGNkUwMTQ1NzVDMUIwMDc4MjA3RCAvKiBNZWRpYUNvbnRyb2xsZXIuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1l
ZGlhQ29udHJvbGxlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMjdGNkUy
MTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlhQ29udHJvbGxlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEMjdGNkUzMTQ1NzY3NTgwMDc4MjA3RCAvKiBKU01lZGlhQ29u
dHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhQ29udHJv
bGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDI3RjZFNDE0NTc2Nzg3MDA3
ODIwN0QgLyogTWVkaWFDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1lZGlhQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDI3
RjZFNjE0NTc3MEQzMDA3ODIwN0QgLyogTWVkaWFDb250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhQ29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEMkY0QTIxMThEODlGNzAwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3
YXJlTGlzdGVuZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVk
aW9IYXJkd2FyZUxpc3RlbmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Qy
RjRBMjIxOEQ4OUY3MDAwNjM3NDZEIC8qIEF1ZGlvSGFyZHdhcmVMaXN0ZW5lci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QyRjRBMjUxOEQ4QTM0OTAwNjM3NDZEIC8qIEF1ZGlv
SGFyZHdhcmVMaXN0ZW5lck1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBBdWRpb0hhcmR3YXJlTGlzdGVuZXJNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRDJGNEEyNjE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxpc3RlbmVy
TWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvSGFyZHdhcmVMaXN0
ZW5lck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDMwQjI4NjIzQTE3M0FB
MDBENzQ4OEIgLyogTWVkaWFDYXBhYmlsaXRpZXNMb2dnaW5nLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1l
ZGlhQ2FwYWJpbGl0aWVzTG9nZ2luZy5oOyBwYXRoID0gbWVkaWFjYXBhYmlsaXRpZXMvTWVkaWFD
YXBhYmlsaXRpZXNMb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMzBC
Mjg3MjNBMTczQUEwMEQ3NDg4QiAvKiBNZWRpYUNhcGFiaWxpdGllc0xvZ2dpbmcuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gTWVkaWFDYXBhYmlsaXRpZXNMb2dnaW5nLmNwcDsgcGF0aCA9IG1lZGlh
Y2FwYWJpbGl0aWVzL01lZGlhQ2FwYWJpbGl0aWVzTG9nZ2luZy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNEMzE4NjIwMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2YXRlTWVk
aWFTb3VyY2VBVkZPYmpDLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRo
ID0gQ0RNUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0QzMTg2MjExOTlGMUUyQTAwMzBBMEY3IC8qIENETVByaXZhdGVNZWRpYVNvdXJj
ZUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNUHJpdmF0ZU1l
ZGlhU291cmNlQVZGT2JqQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDMzNkY1
RjE3RjlGNjQ3MDBERERDRDAgLyogQVZUcmFja1ByaXZhdGVBVkZPYmpDSW1wbC5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFWVHJhY2tQcml2YXRlQVZGT2JqQ0lt
cGwubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMzM2RjYwMTdGOUY2NDcwMERE
RENEMCAvKiBBVlRyYWNrUHJpdmF0ZUFWRk9iakNJbXBsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEFWVHJhY2tQcml2YXRlQVZGT2JqQ0ltcGwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0QzMzZGNjMxN0ZBMEE0RDAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2
YXRlQVZGLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvVHJhY2tQcml2
YXRlQVZGLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEMzM2RjY1MTdGQTBBQzYw
MERERENEMCAvKiBWaWRlb1RyYWNrUHJpdmF0ZUFWRk9iakMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gVmlkZW9UcmFja1ByaXZhdGVBVkZPYmpDLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QzMzZGNjYxN0ZBMEFDNjAwREREQ0QwIC8qIFZpZGVv
VHJhY2tQcml2YXRlQVZGT2JqQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBW
aWRlb1RyYWNrUHJpdmF0ZUFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0QzNkMxNUYyNjA2N0MxRjAwQzhDNTI5IC8qIEF1ZGlvU2Vzc2lvbk1hYy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBBdWRpb1Nlc3Npb25NYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Qz
NkMxNjEyNjA3RTc4NjAwQzhDNTI5IC8qIEF1ZGlvU2Vzc2lvbklPUy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBBdWRpb1Nlc3Npb25JT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0QzNkMx
NjgyNjBBNjNEMzAwQzhDNTI5IC8qIFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNEMzZDMTY5MjYwQTYzRDQwMEM4QzUyOSAvKiBTaGFyZWRSb3V0aW5nQXJiaXRyYXRv
ci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDM3QjM3NDE1QzFBN0UxMDA2REM4OTggLyog
RGlhZ25vc3RpY0xvZ2dpbmdLZXlzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IERpYWdub3N0aWNMb2dnaW5nS2V5cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNEMzdCMzc1MTVDMUE3RTEwMDZEQzg5OCAvKiBEaWFnbm9zdGljTG9nZ2luZ0tleXMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlhZ25vc3RpY0xvZ2dpbmdLZXlz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEM0E0OTU1MTdBOUQwMUIwMDI3NEU0
MiAvKiBNZWRpYVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNZWRpYVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEM0E0OTU2
MTdBOUQwMUIwMDI3NEU0MiAvKiBNZWRpYVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNZWRpYVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDNBNDk1NzE3QTlEMDFCMDAyNzRFNDIgLyogTWVkaWFTb3VyY2UuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IE1lZGlhU291cmNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0QzQTQ5NTgxN0E5RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTb3VyY2VCdWZmZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDNBNDk1OTE3QTlEMDFCMDAyNzRFNDIgLyogU291cmNlQnVmZmVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZUJ1ZmZlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDNBNDk1QTE3QTlEMDFCMDAyNzRFNDIgLyogU291
cmNlQnVmZmVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTb3VyY2VCdWZmZXIuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDNBNDk1QjE3QTlEMDFCMDAyNzRFNDIgLyog
U291cmNlQnVmZmVyTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTb3VyY2VCdWZmZXJMaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Qz
QTQ5NUMxN0E5RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlckxpc3QuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlQnVmZmVyTGlzdC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRDNBNDk1RDE3QTlEMDFCMDAyNzRFNDIgLyogU291cmNlQnVmZmVyTGlz
dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU291cmNlQnVmZmVyTGlzdC5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEM0NFMTFDMjQwNDUxQUYwMDRCQTAxRCAvKiBDRE1Q
cml2YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENETVByaXZhdGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDRDNFMjFEQjIxODMzRjUxMDBFNjZGNTUgLyogSW1hZ2VCdWZm
ZXJVdGlsaXRpZXNDRy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbWFnZUJ1ZmZlclV0aWxpdGllc0NHLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEM0UyNTFCMTgwNDZCMDYwMEUyN0Y1NiAv
KiBHcmlkQXJlYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmlkQXJlYS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDNFMjUyMTE4MDQ2QkNEMDBFMjdGNTYg
LyogQ1NTR3JpZFRlbXBsYXRlQXJlYXNWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDU1NHcmlkVGVtcGxhdGVBcmVhc1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0QzRTI1MjIxODA0NkJDRDAwRTI3RjU2IC8qIENTU0dyaWRUZW1w
bGF0ZUFyZWFzVmFsdWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTR3Jp
ZFRlbXBsYXRlQXJlYXNWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRB
QzUyODE0OTZBRTJGMDA4N0M0RUYgLyogQ29tcG9zaXRlLndhdiAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGF1ZGlvLndhdjsgbmFtZSA9IENvbXBvc2l0
ZS53YXY7IHBhdGggPSBwbGF0Zm9ybS9hdWRpby9yZXNvdXJjZXMvQ29tcG9zaXRlLndhdjsgc291
cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQlDRDRFMEFGQTExRjdCQzI3MDA5RDM4MTEgLyog
ZnVsbHNjcmVlbi5jc3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LmNzczsgcGF0aCA9IGZ1bGxzY3JlZW4uY3Nz
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU2MDIzNTdCMzE3MDA3ODk1QzMg
LyogSGRyTWV0YWRhdGFUeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIZHJNZXRhZGF0YVR5cGUuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU2MjIzNTdCM0FEMDA3ODk1QzMgLyogVHJhbnNm
ZXJGdW5jdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gVHJhbnNmZXJGdW5jdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNENEU0RTZDMjM1N0I1NTYwMDc4OTVDMyAvKiBKU01lZGlhQ2FwYWJp
bGl0aWVzRW5jb2RpbmdJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
TWVkaWFDYXBhYmlsaXRpZXNFbmNvZGluZ0luZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0Q0RTRFNkQyMzU3QjU1NjAwNzg5NUMzIC8qIEpTTWVkaWFDYXBhYmlsaXRpZXNEZWNv
ZGluZ0luZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUNhcGFi
aWxpdGllc0RlY29kaW5nSW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRF
NEU2RTIzNTdCNTU2MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFNkYyMzU3QjU1NzAwNzg5NUMzIC8qIEpT
TWVkaWFDYXBhYmlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNN
ZWRpYUNhcGFiaWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU3
MDIzNTdCNTU3MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU3MTIzNTdCNTU3MDA3ODk1QzMg
LyogSlNNZWRpYUNhcGFiaWxpdGllc0VuY29kaW5nSW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhQ2FwYWJpbGl0aWVzRW5jb2RpbmdJbmZvLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFNzIyMzU3QjU1ODAwNzg5NUMzIC8q
IEpTTWVkaWFDYXBhYmlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNNZWRpYUNhcGFiaWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNENEU0RTdDMjM1N0I1RkQwMDc4OTVDMyAvKiBKU0F1ZGlvQ29uZmlndXJhdGlvbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0F1ZGlvQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRDRFNEU3RDIzNTdCNUZEMDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGll
c0luZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFN0UyMzU3QjVGRDAwNzg5NUMzIC8qIEpTTWVk
aWFDb25maWd1cmF0aW9uLmRlcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBKU01lZGlhQ29uZmlndXJhdGlvbi5kZXA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENEU0RTdGMjM1N0I1RkQwMDc4OTVDMyAvKiBKU1Ry
YW5zZmVyRnVuY3Rpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNUcmFuc2ZlckZ1bmN0aW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENEU0RTgwMjM1N0I1RkUwMDc4OTVDMyAvKiBK
U01lZGlhRW5jb2RpbmdDb25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVk
aWFFbmNvZGluZ0NvbmZpZ3VyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRDRFNEU4MTIzNTdCNUZFMDA3ODk1QzMgLyogSlNIZHJNZXRhZGF0YVR5cGUuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNIZHJNZXRhZGF0YVR5cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRDRFNEU4MjIzNTdCNUZFMDA3ODk1QzMgLyogSlNNZWRpYURlY29kaW5nQ29u
ZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhRGVjb2RpbmdDb25maWd1cmF0aW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENEU0RTgzMjM1N0I1RkYwMDc4OTVD
MyAvKiBKU0hkck1ldGFkYXRhVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hkck1ldGFkYXRhVHlw
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU4NDIzNTdCNUZGMDA3ODk1
QzMgLyogSlNDb2xvckdhbXV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ29sb3JHYW11dC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENEU0RTg1MjM1N0I1RkYwMDc4OTVD
MyAvKiBKU01lZGlhQ2FwYWJpbGl0aWVzRGVjb2RpbmdJbmZvLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTTWVkaWFDYXBhYmlsaXRpZXNEZWNvZGluZ0luZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRDRFNEU4NjIzNTdCNjAwMDA3ODk1QzMgLyogSlNDb2xvckdhbXV0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTQ29sb3JHYW11dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDRFNEU4NzIzNTdCNjAwMDA3ODk1QzMgLyogSlNNZWRpYUNvbmZpZ3VyYXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNNZWRpYUNvbmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0Q0RTRFODgyMzU3QjYwMDAwNzg5NUMzIC8qIEpTTWVkaWFEZWNvZGluZ1R5
cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYURlY29kaW5nVHlwZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDRFNEU4OTIzNTdCNjAxMDA3ODk1QzMgLyogSlNNZWRpYURlY29k
aW5nQ29uZmlndXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhRGVjb2RpbmdD
b25maWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFOEMy
MzU3QjYwMjAwNzg5NUMzIC8qIEpTVHJhbnNmZXJGdW5jdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1RyYW5zZmVyRnVuY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRDRFNEU4RDIzNTdCNjAyMDA3ODk1QzMgLyogSlNBdWRpb0NvbmZpZ3VyYXRpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRpb0NvbmZpZ3VyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDRFNEU4RTIzNTdCNjAyMDA3ODk1QzMgLyogSlNNZWRpYUVuY29k
aW5nVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhRW5jb2RpbmdUeXBlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENEU0RThGMjM1N0I2MDMwMDc4OTVDMyAvKiBKU01lZGlh
RW5jb2RpbmdUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFFbmNvZGluZ1R5cGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU5MDIzNTdCNjAzMDA3ODk1
QzMgLyogSlNNZWRpYURlY29kaW5nVHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlh
RGVjb2RpbmdUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFOTEy
MzU3QjYwMzAwNzg5NUMzIC8qIEpTTWVkaWFFbmNvZGluZ0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNNZWRpYUVuY29kaW5nQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRDRFNEU5MzIzNTdCNjA0MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxp
dGllc0luZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYUNhcGFiaWxpdGllc0luZm8u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU5NzIzNTdCQThGMDA3ODk1
QzMgLyogSlNWaWRlb0NvbmZpZ3VyYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWaWRlb0NvbmZp
Z3VyYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q0RTRFOTkyMzU3QkE4
RjAwNzg5NUMzIC8qIEpTVmlkZW9Db25maWd1cmF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTVmlkZW9Db25maWd1cmF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0Q0RTRFOUEyMzU3Q0I5QzAwNzg5NUMzIC8qIFRyYW5zZmVyRnVuY3Rpb24uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gVHJhbnNmZXJGdW5jdGlvbi5oOyBwYXRoID0gbWVkaWFjYXBhYmlsaXRpZXMvVHJhbnNm
ZXJGdW5jdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDRFNEU5QjIzNTdD
QjlEMDA3ODk1QzMgLyogQ29sb3JHYW11dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDb2xvckdhbXV0Lmg7
IHBhdGggPSBtZWRpYWNhcGFiaWxpdGllcy9Db2xvckdhbXV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNENEU0RTlDMjM1N0NCOUQwMDc4OTVDMyAvKiBIZHJNZXRhZGF0YVR5cGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gSGRyTWV0YWRhdGFUeXBlLmg7IHBhdGggPSBtZWRpYWNhcGFiaWxp
dGllcy9IZHJNZXRhZGF0YVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q1
MjA5RTMxQjBCRDgzODAwNzcxODRFIC8qIE1lZGlhUGxheWVyRW51bXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQbGF5ZXJFbnVtcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRDUyMDlFNTFCMEJEOUUxMDA3NzE4NEUgLyogSFRNTE1lZGlhRWxlbWVu
dEVudW1zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxNZWRpYUVsZW1l
bnRFbnVtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDUyNUJBMjFFRTBCMTA3
MDA3ODhERjUgLyogRm91ckNDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvdXJDQy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDRDUzOTNDQjE3NURDQ0U2MDBDMDcxMjMgLyogTWVtb3J5SW5m
by5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZW1vcnlJbmZvLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENTM5M0NDMTc1RENDRTYwMEMwNzEyMyAvKiBNZW1v
cnlJbmZvLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZW1vcnlJbmZvLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q1MzkzRDExNzVFMDE4NjAwQzA3MTIzIC8qIEpTTWVt
b3J5SW5mby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lbW9y
eUluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDUzOTNEMjE3NUUwMTg2
MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTTWVtb3J5SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDU0QTc2
MDE4MEY5RjcwMDBCMDc2QzkgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9UcmFja1ByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDU0QTc2MTE4MEY5RjcwMDBCMDc2QzkgLyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFW
Rk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9UcmFja1ByaXZh
dGVNZWRpYVNvdXJjZUFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q1
NERFNDkxNzQ2OUM2RDAwNUU1QjM2IC8qIEF1ZGlvU2Vzc2lvbk1hYy5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEF1ZGlvU2Vzc2lvbk1hYy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q1ODk0OTMyMTg3NDA2NDAwNEY0MjRBIC8qIEltYWdlQnVm
ZmVyVXRpbGl0aWVzQ0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW1hZ2VCdWZmZXJVdGlsaXRp
ZXNDRy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENTg5NkRGMUNEMkIxNTEw
MEIzQkNDOCAvKiBXZWJQbGF5YmFja0NvbnRyb2xzTWFuYWdlci5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlBsYXliYWNrQ29udHJvbHNNYW5hZ2VyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDU4OTZFMDFDRDJCMTUxMDBCM0JDQzggLyog
V2ViUGxheWJhY2tDb250cm9sc01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViUGxheWJhY2tDb250cm9sc01hbmFnZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0Q1RDI3NzUxRTgzMThFMDAwRDgwQTNEIC8qIFdlYkNvcmVEZWNvbXByZXNzaW9u
U2Vzc2lvbi5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNv
cmVEZWNvbXByZXNzaW9uU2Vzc2lvbi5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0Q1RDI3NzYxRTgzMThFMDAwRDgwQTNEIC8qIFdlYkNvcmVEZWNvbXByZXNzaW9uU2Vzc2lvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlRGVjb21wcmVzc2lvblNl
c3Npb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q1RTVCNUUxQTE1Q0U1NDAw
MEM2MDlFIC8qIFBhZ2VDb25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBhZ2VDb25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNENUU1QjYwMUExNUYxNTYwMDBDNjA5RSAvKiBQYWdlQ29uZmlndXJhdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYWdlQ29uZmlndXJhdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENjQxRUIxMTgxOEY1RUQwMEVFNEM0MSAvKiBN
ZWRpYVNvdXJjZVByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVk
aWFTb3VyY2VQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENjQxRUIy
MTgxOEY1RUQwMEVFNEM0MSAvKiBTb3VyY2VCdWZmZXJQcml2YXRlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNvdXJjZUJ1ZmZlclByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0Q2NDFFQzcxODFFRDYwMTAwRUU0QzQxIC8qIE1lZGlhU2FtcGxlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1lZGlhU2FtcGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNENkZFNUI3MjRCQ0U2NDUwMDlGQ0RBNCAvKiBWUDlVdGlsaXRpZXNDb2NvYS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBWUDlVdGlsaXRpZXNDb2NvYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDZGRTVCODI0QkNFNjQ1MDA5RkNEQTQgLyogVlA5VXRpbGl0aWVzQ29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBWUDlVdGlsaXRpZXNDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0Q2RkU1QkEyNEJDRTdCNjAwOUZDREE0IC8qIFZQOVV0aWxpdGllcy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBWUDlVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0Q2RkU1QkIyNEJDRTdCNjAwOUZDREE0IC8qIFZQOVV0aWxpdGllcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBWUDlVdGlsaXRpZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDcyMEI0NzIyNjgyQzdFMDAwNDdGREUgLyogSVNPRmFpclBsYXlTdHJlYW1pbmdQc3No
Qm94LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElTT0ZhaXJQbGF5U3RyZWFtaW5nUHNzaEJveC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNENzIwQjQ5MjI2ODJDN0YwMDA0N0ZE
RSAvKiBJU09GYWlyUGxheVN0cmVhbWluZ1Bzc2hCb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSVNPRmFp
clBsYXlTdHJlYW1pbmdQc3NoQm94Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
NzhBMkVDMUY3NTY0ODYwMERFMzcxQiAvKiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZG
T2JqQy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IENETUluc3Rh
bmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDc4QTJFRTFGNzU2NDg2MDBERTM3MUIgLyogQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVh
bWluZ0FWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNSW5zdGFu
Y2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0Q3RDMzNDExQzdBMTIzRjAwMDQxMjkzIC8qIFBpeGVsQnVmZmVyQ29uZm9ybWVyQ1YuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGl4ZWxCdWZmZXJDb25mb3Jt
ZXJDVi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEN0QzMzQyMUM3QTEyM0Yw
MDA0MTI5MyAvKiBQaXhlbEJ1ZmZlckNvbmZvcm1lckNWLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBpeGVsQnVmZmVyQ29uZm9ybWVyQ1YuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0Q3RDMzNDUxQzdBMTZCRjAwMDQxMjkzIC8qIENvcmVWaWRlb1NvZnRMaW5r
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvcmVWaWRlb1NvZnRM
aW5rLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q3RDMzNDYxQzdBMTZCRjAw
MDQxMjkzIC8qIENvcmVWaWRlb1NvZnRMaW5rLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvcmVWaWRlb1NvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEN0RCQjI2MThDQTExRkYwMEMxMTA2NiAvKiBDU1NHcmlkTGluZU5hbWVzVmFsdWUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTR3JpZExpbmVOYW1lc1ZhbHVl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q3REJCMjcxOENBMTFGRjAwQzEx
MDY2IC8qIENTU0dyaWRMaW5lTmFtZXNWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBDU1NHcmlkTGluZU5hbWVzVmFsdWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0Q3RTA1MjAxNjUxQTg0MTAwQzEyMDFGIC8qIFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlQVZGUmVzb3VyY2VMb2FkZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q3RTA1MjExNjUxQTg0MTAwQzEyMDFGIC8qIFdlYkNvcmVB
VkZSZXNvdXJjZUxvYWRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvcmVBVkZSZXNv
dXJjZUxvYWRlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4M0QzNUEyMTEx
MTA4MjAwNzZFMTFDIC8qIERlZmVycmFibGVUYXNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlZmVycmFi
bGVUYXNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODcxQzVDMUZCNTJCNjMw
MEYwQjk2NSAvKiBJU09TY2hlbWVUeXBlQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IElTT1NjaGVtZVR5cGVCb3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0Q4NzFDNUUxRkI1MkI2NDAwRjBCOTY1IC8qIElTT1Byb3RlY3Rpb25TY2hlbWVJbmZvQm94LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElTT1Byb3RlY3Rpb25TY2hl
bWVJbmZvQm94LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4NzFDNUYxRkI1
MkI2NDAwRjBCOTY1IC8qIElTT1NjaGVtZVR5cGVCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSVNPU2NoZW1lVHlwZUJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNEODcxQzYwMUZCNTJCNjUwMEYwQjk2NSAvKiBJU09Qcm90ZWN0aW9uU2No
ZW1lSW5mb0JveC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJU09Qcm90ZWN0
aW9uU2NoZW1lSW5mb0JveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDg3MUM2
MTFGQjUyQjY1MDBGMEI5NjUgLyogSVNPVHJhY2tFbmNyeXB0aW9uQm94LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IElTT1RyYWNrRW5jcnlwdGlvbkJveC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODcxQzYyMUZCNTJCNjUwMEYwQjk2NSAvKiBJ
U09Cb3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSVNPQm94Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODcxQzYzMUZCNTJCNjYwMEYwQjk2NSAvKiBJU09T
Y2hlbWVJbmZvcm1hdGlvbkJveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJU09TY2hlbWVJbmZvcm1hdGlvbkJveC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNEODcxQzY0MUZCNTJCNjcwMEYwQjk2NSAvKiBJU09TY2hlbWVJbmZvcm1hdGlvbkJv
eC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJU09TY2hlbWVJbmZvcm1hdGlv
bkJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDg3MUM2NTFGQjUyQjY3MDBG
MEI5NjUgLyogSVNPVlRUQ3VlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElT
T1ZUVEN1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDg3MUM2NjFGQjUyQjY4
MDBGMEI5NjUgLyogSVNPVHJhY2tFbmNyeXB0aW9uQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IElTT1RyYWNrRW5jcnlwdGlvbkJveC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRDg3MUM2NzFGQjUyQjY4MDBGMEI5NjUgLyogSVNPT3JpZ2luYWxGb3JtYXRC
b3guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSVNPT3JpZ2luYWxGb3JtYXRC
b3guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4NzFDNjgxRkI1MkI2OTAwRjBC
OTY1IC8qIElTT0JveC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJ
U09Cb3guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDg3MUM2OTFGQjUyQjY5
MDBGMEI5NjUgLyogSVNPVlRUQ3VlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IElTT1ZUVEN1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODcx
QzZBMUZCNTJCNkEwMEYwQjk2NSAvKiBJU09PcmlnaW5hbEZvcm1hdEJveC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJU09PcmlnaW5hbEZvcm1hdEJveC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODc1QTc0MjQxMUI3OTgwMEIwOUY1OCAvKiBN
ZWRpYVNlc3Npb25IZWxwZXJJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTZXNzaW9uSGVscGVy
SU9TLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEODc1QTc1MjQxMUI3OTgwMEIw
OUY1OCAvKiBNZWRpYVNlc3Npb25IZWxwZXJJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBN
ZWRpYVNlc3Npb25IZWxwZXJJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
OEE3QkI5MTk3NzM1RkUwMENCRDY0MyAvKiBBdWRpb1NvdXJjZVByb3ZpZGVyQVZGT2JqQy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEF1ZGlvU291cmNlUHJvdmlk
ZXJBVkZPYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDhBN0JCQTE5Nzcz
NUZFMDBDQkQ2NDMgLyogQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4QUNBOEMxRDIzOTcxOTAwRUNDNTlFIC8qIE1lZGlh
UmVtb3RlU29mdExpbmsubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBN
ZWRpYVJlbW90ZVNvZnRMaW5rLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDhB
Q0E4RDFEMjM5NzE5MDBFQ0M1OUUgLyogTWVkaWFSZW1vdGVTb2Z0TGluay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVJlbW90ZVNvZnRMaW5rLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEOEIzMUExMjM3OURDODMwMDg4M0ZERSAvKiBXZWJWaWRlb0Nv
bnRhaW5lckxheWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4QjMxQTIyMzc5REM4MzAwODgzRkRFIC8q
IFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJWaWRl
b0NvbnRhaW5lckxheWVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDhCNUE0
MDE4MEQxNDlBMDA4QjhFNjUgLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBWaWRlb1RyYWNrUHJp
dmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0Q4QjVBNDExODBEMTQ5QTAwOEI4RTY1IC8qIFZpZGVvVHJhY2tQcml2YXRlTWVkaWFTb3VyY2VB
VkZPYmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvVHJhY2tQcml2
YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
OEI1QTQ0MTgwREQ4RDYwMDhCOEU2NSAvKiBWaWRlb1RyYWNrK01lZGlhU291cmNlLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSAiVmlkZW9UcmFjaytNZWRpYVNvdXJjZS5pZGwiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDhCNUE0NTE4MERGRjRFMDA4QjhFNjUgLyogVmlkZW9UcmFja01lZGlhU291cmNlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvVHJhY2tNZWRpYVNvdXJjZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDhCNUE0NzE4MEUxMzYxMDA4QjhFNjUg
LyogVGV4dFRyYWNrK01lZGlhU291cmNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiVGV4dFRyYWNrK01lZGlhU291cmNl
LmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOEI1QTQ4MTgwRTEzOEIwMDhC
OEU2NSAvKiBUZXh0VHJhY2tNZWRpYVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBUZXh0VHJhY2tNZWRpYVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDRDhCNUE0QTE4MEUxN0EzMDA4QjhFNjUgLyogQXVkaW9UcmFjaytNZWRpYVNvdXJjZS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gIkF1ZGlvVHJhY2srTWVkaWFTb3VyY2UuaWRsIjsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0Q4QjVBNEIxODBFMTdDMDAwOEI4RTY1IC8qIEF1ZGlvVHJhY2tNZWRpYVNv
dXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1RyYWNrTWVkaWFT
b3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4QzZDMjYyMkZEREE4RjAw
QTcyMEFCIC8qIEpTUmVtb3RlUGxheWJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZW1v
dGVQbGF5YmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOEM2QzI3MjJG
RERBOTAwMEE3MjBBQiAvKiBKU1JlbW90ZVBsYXliYWNrQXZhaWxhYmlsaXR5Q2FsbGJhY2suY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNSZW1vdGVQbGF5YmFja0F2YWlsYWJpbGl0eUNhbGxiYWNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4QzZDMjgyMkZEREE5MDAwQTcy
MEFCIC8qIEpTUmVtb3RlUGxheWJhY2tBdmFpbGFiaWxpdHlDYWxsYmFjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1JlbW90ZVBsYXliYWNrQXZhaWxhYmlsaXR5Q2FsbGJhY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4QzZDMjkyMkZEREE5MTAwQTcyMEFCIC8qIEpTUmVtb3RlUGxh
eWJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNSZW1vdGVQbGF5YmFjay5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDhEMzA2RDIzQUQ0RkE4MDA2QzM5NzUgLyogQ0RNTG9nZ2luZy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDRE1Mb2dnaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEOEQzMDZFMjNBRDRGQTgwMDZDMzk3NSAvKiBDRE1Mb2dnaW5nLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENETUxvZ2dpbmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDhGNjY3MDI0QzBGMjA4MDAwQzQyMUMgLyogU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTb3VyY2VCdWZmZXJQYXJzZXJXZWJNLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q4RjY2NzIyNEMwRjIwODAwMEM0MjFDIC8qIFNvdXJjZUJ1ZmZl
clBhcnNlcldlYk0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlQnVmZmVyUGFyc2VyV2ViTS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDkyRjUwRjIyNjBGRkVFMDBGODdCQjMgLyog
RG9jdW1lbnQrRnVsbHNjcmVlbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIkRvY3VtZW50K0Z1bGxzY3JlZW4uaWRsIjsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5MkY1MTAyMjYwRkZFRTAwRjg3QkIzIC8q
IERvY3VtZW50RnVsbHNjcmVlbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudEZ1bGxzY3JlZW4u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5MkY1MTYyMjYxMDM4MjAwRjg3QkIz
IC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZ1bGxzY3JlZW5NYW5hZ2Vy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOTJGNTE3MjI2MTAzODIwMEY4N0JC
MyAvKiBGdWxsc2NyZWVuTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGdWxsc2NyZWVu
TWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOTRBNUM5MUY3MUNB
OUQwMEY1MjVDNSAvKiBDRE1DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ0RNQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOTRBNUNDMUY3
MUNCNjkwMEY1MjVDNSAvKiBDRE1SZXF1aXJlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDRE1SZXF1aXJlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRDk0QTVDRDFGNzFDQjY5MDBGNTI1QzUgLyogQ0RNS2V5U3lzdGVtQ29uZmlndXJhdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDRE1LZXlTeXN0ZW1Db25maWd1cmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOTRBNUNFMUY3MUNCNkEwMEY1
MjVDNSAvKiBDRE1JbnN0YW5jZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
RE1JbnN0YW5jZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDk0QTVDRjFGNzFD
QjYxMDBGNTI1QzUgLyogQ0RNUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQ0RNUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5NEE1Q0YxRjcx
Q0I2MTAwRjUyNUQ1IC8qIENETVByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENETVByb3h5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5
NEE1Q0YxRjcxQ0I2QTAwRjUyNUM1IC8qIENETVByaXZhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ0RNUHJpdmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRDk0QTVEMDFGNzFDQjZCMDBGNTI1QzUgLyogQ0RNUmVzdHJpY3Rpb25zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENETVJlc3RyaWN0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRDk0QTVEMTFGNzFDQjZCMDBGNTI1QzUgLyogQ0RNRmFjdG9yeS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDRE1GYWN0b3J5LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5NEE1RDIxRjcxQ0I2QjAwRjUyNUM1IC8q
IENETUZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNRmFjdG9y
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDk0QTVEMzFGNzFDQjZDMDBGNTI1
QzUgLyogQ0RNTWVkaWFDYXBhYmlsaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENETU1lZGlhQ2FwYWJpbGl0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDk0QTVENDFGNzFDQjZDMDBGNTI1QzUgLyogQ0RNS2V5U3RhdHVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENETUtleVN0YXR1cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRDk0QTVENTFGNzFDQjZEMDBGNTI1QzUgLyogQ0RNU2Vzc2lvblR5cGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNU2Vzc2lvblR5cGUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0Q5NEE1RDYxRjcxQ0I2RDAwRjUyNUM1IC8qIENETU1lc3Nh
Z2VUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENETU1lc3NhZ2VUeXBl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOTRBNURBMUY3MUNCQjAwMEY1MjVD
NSAvKiBDRE1DbGVhcktleS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDRE1D
bGVhcktleS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDk0QTVEQjFGNzFDQkIw
MDBGNTI1QzUgLyogQ0RNQ2xlYXJLZXkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ0RNQ2xlYXJLZXkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RDlBODdGOTIxNUQ2Q0YzMDA2RjE3QjUgLyogUXVpcmtzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFF1aXJrcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOUE4N0ZCMjE1RDZD
RjMwMDZGMTdCNSAvKiBRdWlya3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUXVpcmtzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOUQzNzVBMjE1MTYzRTQwMDQ5NjU3QiAvKiBDRE1JbnN0
YW5jZVNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNSW5zdGFuY2VTZXNzaW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOURFMTcyMTdBQUM3NEMwMEVBMzg2RCAvKiBKU01l
ZGlhU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVk
aWFTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDlERTE3MzE3QUFD
NzRDMDBFQTM4NkQgLyogSlNNZWRpYVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU01lZGlhU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
OURFMTc2MTdBQUM3NUIwMEVBMzg2RCAvKiBKU1NvdXJjZUJ1ZmZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NvdXJjZUJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEOURFMTc3MTdBQUM3NUIwMEVBMzg2RCAvKiBKU1NvdXJjZUJ1
ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NvdXJjZUJ1ZmZlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDlERTE3ODE3QUFDNzVCMDBFQTM4NkQg
LyogSlNTb3VyY2VCdWZmZXJMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTU291cmNlQnVmZmVyTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEOURFMTc5MTdBQUM3NUIwMEVBMzg2RCAvKiBKU1NvdXJjZUJ1ZmZlckxpc3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTb3VyY2VCdWZmZXJMaXN0Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOURFMTdFMTdBQUQ2NEUwMEVBMzg2RCAvKiBET01V
UkxNZWRpYVNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBET01VUkxNZWRpYVNvdXJjZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEOURFMTdGMTdBQUQ2NEUwMEVBMzg2
RCAvKiBET01VUkxNZWRpYVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01VUkxNZWRpYVNvdXJj
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRDlERTE4MDE3QUFENjRFMDBFQTM4
NkQgLyogRE9NVVJMK01lZGlhU291cmNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiRE9NVVJMK01lZGlhU291cmNlLmlk
bCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTEzMEJCMUZFQjMzMkMwMEY1MzI1
NCAvKiBOYXZpZ2F0b3JNZWRpYUNhcGFiaWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBOYXZpZ2F0b3JNZWRpYUNhcGFiaWxpdGllcy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTEzMEJEMUZFQjMzMkQwMEY1MzI1NCAvKiBNZWRpYUNh
cGFiaWxpdGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRp
YUNhcGFiaWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTI5QTBB
MUNCRDlBNzQwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2RlbC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25Nb2RlbC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDREEyOUEwQzFDQkQ5Q0ZFMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNz
aW9uTW9kZWxNZWRpYUVsZW1lbnQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBMjlBMEQxQ0JEOUNGRTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vz
c2lvbk1vZGVsTWVkaWFFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBsYXliYWNrU2Vzc2lvbk1vZGVsTWVkaWFFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNEQTI5QTE0MUNCREE1NkMwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25JbnRl
cmZhY2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF5
YmFja1Nlc3Npb25JbnRlcmZhY2VNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEQTI5QTE1MUNCREE1NkMwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VNYWMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxheWJhY2tTZXNzaW9uSW50ZXJm
YWNlTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTI5QTJDMUNCRjczRkMw
MDkwMUNDRiAvKiBXZWJBVlBsYXllckNvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViQVZQbGF5ZXJDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNEQTI5QTJEMUNCRjczRkMwMDkwMUNDRiAvKiBXZWJBVlBsYXllckNvbnRyb2xs
ZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJBVlBsYXll
ckNvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTI5QTJFMUNC
RjczRkMwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREEyOUEyRjFDQkY3M0ZDMDA5MDFDQ0Yg
LyogUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZLaXQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25JbnRlcmZhY2VBVktpdC5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBNTk1OTEyMTQ2REVDMzAwQTg0MTg1IC8qIEhF
VkNVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSEVWQ1V0aWxpdGllcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDREE1OTU5MjIxNDZERUMzMDBBODQxODUgLyogSEVWQ1V0aWxp
dGllcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIRVZDVXRpbGl0aWVzLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBNTk1OTYyMTQ2REY3ODAwQTg0MTg1IC8qIEhFVkNVdGls
aXRpZXNDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIRVZDVXRpbGl0aWVzQ29jb2EuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBNTk1OTcyMTQ2REY3ODAwQTg0MTg1IC8qIEhFVkNV
dGlsaXRpZXNDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEhFVkNVdGlsaXRpZXNDb2Nv
YS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBNzk4MjExNzBBMjJEQzAwRDQ1
QzU1IC8qIEF1ZGlvU2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1Nlc3Npb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBNzk4MjMxNzBBMjU4MzAwRDQ1QzU1IC8qIEF1
ZGlvU2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRp
b1Nlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREE3OTgyNTE3MEEy
NzkwMDBENDVDNTUgLyogQXVkaW9TZXNzaW9uSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gQXVkaW9TZXNzaW9uSU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDREE5OEQ5QjE2MDEyOEE1MDBGRUEzQjEgLyogSlNXZWJLaXRNZWRpYUtleUVy
cm9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV2ViS2l0TWVk
aWFLZXlFcnJvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTk4RDlDMTYw
MTI4QTUwMEZFQTNCMSAvKiBKU1dlYktpdE1lZGlhS2V5RXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRNZWRpYUtleUVycm9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNEQTk4RENFMTYwMTU5NzkwMEZFQTNCMSAvKiBKU1dlYktpdE1lZGlh
S2V5cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYktpdE1l
ZGlhS2V5cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTk4RENGMTYwMTU5
NzkwMEZFQTNCMSAvKiBKU1dlYktpdE1lZGlhS2V5cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU1dlYktpdE1lZGlhS2V5cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDREE5OEREMDE2MDE1OTc5MDBGRUEzQjEgLyogSlNXZWJLaXRNZWRpYUtleVNlc3Npb24u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJLaXRNZWRpYUtl
eVNlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREE5OEREMTE2MDE1
OTc5MDBGRUEzQjEgLyogSlNXZWJLaXRNZWRpYUtleVNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNXZWJLaXRNZWRpYUtleVNlc3Npb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBOThEREIxNjAyNkExODAwRkVBM0IxIC8qIEpTV2ViS2l0TWVk
aWFLZXlNZXNzYWdlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJLaXRNZWRpYUtl
eU1lc3NhZ2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTk4RERD
MTYwMjZBMTkwMEZFQTNCMSAvKiBKU1dlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTV2ViS2l0TWVkaWFLZXlNZXNzYWdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0RBOThEREQxNjAyNkExOTAwRkVBM0IxIC8qIEpTV2ViS2l0TWVkaWFL
ZXlOZWVkZWRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dlYktpdE1lZGlhS2V5TmVl
ZGVkRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREE5OERERTE2MDI2
QTE5MDBGRUEzQjEgLyogSlNXZWJLaXRNZWRpYUtleU5lZWRlZEV2ZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDREE5OEUwOTE2MDNDRDU5MDBGRUEzQjEgLyogTGVnYWN5Q0RNLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IExlZ2FjeUNETS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEQTk4RTBBMTYwM0NENTkwMEZFQTNCMSAvKiBMZWdhY3lDRE0uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
TGVnYWN5Q0RNLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTk4RTBDMTYwM0NG
M0MwMEZFQTNCMSAvKiBMZWdhY3lDRE1Qcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IExlZ2FjeUNETVByaXZhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0RBQjZEMjUxN0M3REU1NzAwQzYwQjM0IC8qIE1lZGlhQ29udHJvbHNIb3N0LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBNZWRpYUNvbnRyb2xzSG9zdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
QUI2RDI2MTdDN0RFNkMwMEM2MEIzNCAvKiBNZWRpYUNvbnRyb2xzSG9zdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUNvbnRyb2xzSG9zdC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQUI2RDI3MTdDN0RFNkMwMEM2MEIzNCAvKiBNZWRp
YUNvbnRyb2xzSG9zdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNv
bnRyb2xzSG9zdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREFCNkQyQjE3Qzgx
NEVFMDBDNjBCMzQgLyogSlNNZWRpYUNvbnRyb2xzSG9zdC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhQ29udHJvbHNIb3N0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RBQjZEMkMxN0M4MTRFRTAwQzYwQjM0IC8qIEpTTWVkaWFDb250
cm9sc0hvc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUNvbnRy
b2xzSG9zdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREFCNkQyRjE3QzkyNTk1
MDBDNjBCMzQgLyogVXNlckFnZW50U2NyaXB0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IG5hbWUgPSBVc2VyQWdlbnRTY3JpcHRzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L1VzZXJBZ2VudFNjcmlwdHMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJQ0RBQjZEMzAxN0M5MjU5NTAwQzYwQjM0IC8qIFVzZXJBZ2VudFNjcmlwdHNEYXRhLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVzZXJBZ2VudFNjcmlwdHNEYXRh
LmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvVXNlckFnZW50U2NyaXB0c0RhdGEu
Y3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlDREFFOEMwNzE3NDZC
OTU3MDA1MzJENzggLyogUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQUU4QzA4MTc0NkI5NTcwMDUzMkQ3
OCAvKiBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNEQjcwNDU4MUY3NDY1QTEwMDM5MjNERiAvKiBDRE1GYWlyUGxheVN0
cmVhbWluZy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDRE1GYWlyUGxheVN0cmVhbWluZy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDREI3MDQ1OTFGNzQ2NUExMDAzOTIzREYgLyogQ0RNRmFp
clBsYXlTdHJlYW1pbmcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ0RNRmFpclBsYXlTdHJlYW1p
bmcuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJEM0QyODFGRTg1Q0I4MDAx
MkM1NDUgLyogVmlkZW9Db25maWd1cmF0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBW
aWRlb0NvbmZpZ3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJE
M0QyOTFGRTg1Q0I5MDAxMkM1NDUgLyogTWVkaWFDb25maWd1cmF0aW9uLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBNZWRpYUNvbmZpZ3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDREJEM0QyQTFGRTg1Q0JBMDAxMkM1NDUgLyogTWVkaWFFbmNvZGluZ0NvbmZp
Z3VyYXRpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhRW5jb2RpbmdDb25maWd1
cmF0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RCRDNEMkIxRkU4NUNC
QjAwMTJDNTQ1IC8qIEF1ZGlvQ29uZmlndXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBBdWRpb0NvbmZpZ3VyYXRpb24uaDsgcGF0aCA9IG1lZGlhY2FwYWJpbGl0aWVz
L0F1ZGlvQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJE
M0QyRDFGRTg1Q0JDMDAxMkM1NDUgLyogTWVkaWFFbmNvZGluZ1R5cGUuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IE1lZGlhRW5jb2RpbmdUeXBlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0RCRDNEMkUxRkU4NUNCQzAwMTJDNTQ1IC8qIE1lZGlhRGVjb2RpbmdUeXBlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYURlY29kaW5nVHlwZS5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQkQzRDJGMUZFODVDQkMwMDEyQzU0NSAvKiBNZWRpYUNh
cGFiaWxpdGllcy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFDYXBhYmlsaXRpZXMu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJEM0QzMTFGRTg1Q0JFMDAxMkM1
NDUgLyogTmF2aWdhdG9yK01lZGlhQ2FwYWJpbGl0aWVzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSAiTmF2aWdhdG9yK01lZGlhQ2FwYWJpbGl0aWVzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNEQkQzRDMyMUZFODVDQkUwMDEyQzU0NSAvKiBNZWRpYUNhcGFiaWxpdGll
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhcGFiaWxpdGllcy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJEM0QzMzFGRTg1Q0JFMDAxMkM1NDUg
LyogTWVkaWFDYXBhYmlsaXRpZXNJbmZvLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRp
YUNhcGFiaWxpdGllc0luZm8uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJE
M0QzNDFGRTg1Q0JGMDAxMkM1NDUgLyogVmlkZW9Db25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFZpZGVvQ29uZmlndXJhdGlvbi5oOyBwYXRoID0gbWVkaWFj
YXBhYmlsaXRpZXMvVmlkZW9Db25maWd1cmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNEQkQzRDM1MUZFODVDQkYwMDEyQzU0NSAvKiBNZWRpYUNvbmZpZ3VyYXRpb24uaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTWVkaWFDb25maWd1cmF0aW9uLmg7IHBh
dGggPSBtZWRpYWNhcGFiaWxpdGllcy9NZWRpYUNvbmZpZ3VyYXRpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RCRDNEMzYxRkU4NUNDMDAwMTJDNTQ1IC8qIE1lZGlhRGVjb2Rp
bmdDb25maWd1cmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE1lZGlh
RGVjb2RpbmdDb25maWd1cmF0aW9uLmg7IHBhdGggPSBtZWRpYWNhcGFiaWxpdGllcy9NZWRpYURl
Y29kaW5nQ29uZmlndXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJE
M0QzNzFGRTg1Q0MwMDAxMkM1NDUgLyogTWVkaWFFbmNvZGluZ0NvbmZpZ3VyYXRpb24uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTWVkaWFFbmNvZGluZ0NvbmZpZ3VyYXRpb24u
aDsgcGF0aCA9IG1lZGlhY2FwYWJpbGl0aWVzL01lZGlhRW5jb2RpbmdDb25maWd1cmF0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQkQzRDM4MUZFODVDQzAwMDEyQzU0NSAv
KiBNZWRpYURlY29kaW5nVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBN
ZWRpYURlY29kaW5nVHlwZS5oOyBwYXRoID0gbWVkaWFjYXBhYmlsaXRpZXMvTWVkaWFEZWNvZGlu
Z1R5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RCRDNEMzkxRkU4NUNDMTAw
MTJDNTQ1IC8qIE5hdmlnYXRvck1lZGlhQ2FwYWJpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRvck1lZGlhQ2FwYWJpbGl0aWVzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEQkQzRDNCMUZFODVDQzIwMDEyQzU0NSAvKiBNZWRpYURlY29k
aW5nQ29uZmlndXJhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFEZWNvZGlu
Z0NvbmZpZ3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREJEM0Qz
QzFGRTg1Q0MyMDAxMkM1NDUgLyogQXVkaW9Db25maWd1cmF0aW9uLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBBdWRpb0NvbmZpZ3VyYXRpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDREJEM0QzRTFGRTg1Q0MzMDAxMkM1NDUgLyogTWVkaWFFbmNvZGluZ1R5cGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTWVkaWFFbmNvZGluZ1R5cGUuaDsgcGF0
aCA9IG1lZGlhY2FwYWJpbGl0aWVzL01lZGlhRW5jb2RpbmdUeXBlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNEQkQzRDNGMUZFODVDQzMwMDEyQzU0NSAvKiBDb2xvckdhbXV0Lmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDb2xvckdhbXV0LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0RCRUFFQUExOUQ5MkI2QzAwQkVCQTg4IC8qIE1lZGlhU2VsZWN0aW9u
R3JvdXBBVkZPYmpDLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
TWVkaWFTZWxlY3Rpb25Hcm91cEFWRk9iakMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEQkVBRUFCMTlEOTJCNkMwMEJFQkE4OCAvKiBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2Jq
Qy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVNlbGVjdGlvbkdyb3Vw
QVZGT2JqQy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREMyNkIzQzE2MEE2MkIw
MDAyNjc1N0IgLyogTGVnYWN5TW9ja0NETS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lN
b2NrQ0RNLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDMjZCM0QxNjBBNjJC
MDAwMjY3NTdCIC8qIExlZ2FjeU1vY2tDRE0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5TW9ja0NE
TS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREMzMTJFMTIyRkNEMEIwMDAxMjA0
RUMgLyogUmVtb3RlUGxheWJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVtb3RlUGxheWJhY2suaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDMzEyRTIyMkZDRDBCMDAwMTIwNEVDIC8q
IEhUTUxNZWRpYUVsZW1lbnQrUmVtb3RlUGxheWJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJIVE1MTWVkaWFFbGVt
ZW50K1JlbW90ZVBsYXliYWNrLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
QzMxMkUzMjJGQ0QwQjAwMDEyMDRFQyAvKiBSZW1vdGVQbGF5YmFjay5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSZW1vdGVQbGF5YmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEQzMxMkU0MjJGQ0QwQjAwMDEyMDRFQyAvKiBSZW1vdGVQbGF5YmFja0F2YWlsYWJpbGl0eUNh
bGxiYWNrLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBSZW1vdGVQbGF5YmFja0F2YWlsYWJpbGl0eUNhbGxiYWNrLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDMzEyRTUyMkZDRDBCMDAwMTIwNEVDIC8q
IEhUTUxNZWRpYUVsZW1lbnRSZW1vdGVQbGF5YmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MTWVk
aWFFbGVtZW50UmVtb3RlUGxheWJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0RDMzEyRTYyMkZDRDBCMDAwMTIwNEVDIC8qIFJlbW90ZVBsYXliYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSZW1v
dGVQbGF5YmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzMxMkU3MjJG
Q0QwQjAwMDEyMDRFQyAvKiBSZW1vdGVQbGF5YmFja0F2YWlsYWJpbGl0eUNhbGxiYWNrLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFJlbW90ZVBsYXliYWNrQXZhaWxhYmlsaXR5Q2FsbGJhY2suaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNDhBQzcyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlh
RW5naW5lQ29uZmlndXJhdGlvbkZhY3RvcnlDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUVu
Z2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0RDNDhBQzgyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlhRW5naW5lQ29uZmlndXJhdGlv
bkZhY3RvcnlDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYUVuZ2luZUNvbmZpZ3Vy
YXRpb25GYWN0b3J5Q29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREM2
NzUyMDFFQUVBOUI3MDA3MjdDODQgLyogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFuYWdl
ci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1h
bmFnZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzY3NTIxMUVBRUE5Qjcw
MDcyN0M4NCAvKiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZU1hbmFnZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNjc1MjQxRUFFQTlENDAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFWQXVkaW9TZXNzaW9u
Q2FwdHVyZURldmljZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNjc1MjUx
RUFFQTlENDAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0RDNjlERDQxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVu
V2FybmluZ1ZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQ29yZUZ1
bGxTY3JlZW5XYXJuaW5nVmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREM2
OURENTE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVu
V2FybmluZ1ZpZXcubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzY5REQ4MTYz
NzFGRDMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREM2OUREOTE2MzcxRkQzMDA3
QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNzM0MTIxOTc3ODk2QzAw
NDZCRkM1IC8qIENBUmluZ0J1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDQVJpbmdCdWZmZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
REM3MzQxMzE5Nzc4OTZDMDA0NkJGQzUgLyogQ0FSaW5nQnVmZmVyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENBUmluZ0J1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDREM3NDcwMDI0QkUyNjc5MDBDMTg2OEIgLyogUG93ZXJTb3VyY2VOb3RpZmllci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQb3dlclNvdXJjZU5vdGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNEQzc0NzAxMjRCRTI2NzkwMEMxODY4QiAvKiBQb3dlclNvdXJjZU5vdGlm
aWVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUG93ZXJTb3VyY2VOb3RpZmllci5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDOEI1QTAxODA0NjM0NzAwMTZFNjg1IC8qIE1l
ZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2Jq
Qy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDOEI1QTExODA0NjM0NzAwMTZF
Njg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9i
akMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDOEI1QTQxODA0NzRGNzAwMTZF
Njg1IC8qIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDREM4QjVBNTE4MDQ3NEY3MDAxNkU2ODUgLyogTWVkaWFT
b3VyY2VQcml2YXRlQVZGT2JqQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEQzhCNUE4MTgwNDdGRjEwMDE2RTY4NSAvKiBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNvdXJjZUJ1ZmZlclBy
aXZhdGVBVkZPYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREM4QjVBOTE4
MDQ3RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDOEI1QUMxODA0QUU1RDAwMTZFNjg1IC8qIFNv
dXJjZUJ1ZmZlclByaXZhdGVDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU291cmNlQnVmZmVyUHJpdmF0ZUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDREM5MzlBNTFFOUJERkIxMDBCQjc2OEQgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gVmlkZW9Ub29sYm94U29mdExpbmsuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDREM5MzlBNjFFOUJERkIxMDBCQjc2OEQgLyogVmlkZW9Ub29s
Ym94U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmlkZW9Ub29sYm94U29mdExpbmsuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDOTc5RjIxQzQ5OEMwOTAwREI1MEQ0IC8qIFdl
YkNvcmVOU0Vycm9yRXh0cmFzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gV2ViQ29yZU5TRXJyb3JFeHRyYXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEQzk3OUYzMUM0OThDMDkwMERCNTBENCAvKiBXZWJDb3JlTlNFcnJvckV4dHJhcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlTlNFcnJvckV4dHJhcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRENBOThFOTE4QjJDOEQwMDBDMTJGRjkgLyog
TGVnYWN5Q0RNUHJpdmF0ZU1lZGlhUGxheWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IExlZ2FjeUNETVByaXZhdGVNZWRpYVBsYXllci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRENBOThFQTE4QjJDOEVCMDBDMTJGRjkgLyogTGVnYWN5Q0RNUHJpdmF0ZU1l
ZGlhUGxheWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExlZ2Fj
eUNETVByaXZhdGVNZWRpYVBsYXllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNEQ0M5QkM1MjIzODdEQTMwMEZGQjUxQyAvKiBNZWRpYUNhcGFiaWxpdGllc0RlY29kaW5nSW5m
by5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFDYXBhYmlsaXRpZXNEZWNvZGluZ0luZm8uaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDRENDOUJDQTIyMzg3RTIxMDBGRkI1MUMgLyogTWVkaWFDYXBh
YmlsaXRpZXNFbmNvZGluZ0luZm8uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhQ2FwYWJpbGl0aWVzRW5jb2RpbmdJ
bmZvLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDQzlCQ0UyMjM4N0U5QTAw
RkZCNTFDIC8qIE1lZGlhQ2FwYWJpbGl0aWVzRGVjb2RpbmdJbmZvLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lZGlhQ2FwYWJpbGl0aWVzRGVjb2RpbmdJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNEQ0M5QkQwMjIzODdFQUEwMEZGQjUxQyAvKiBNZWRpYUNhcGFiaWxpdGllc0VuY29k
aW5nSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYUNhcGFiaWxpdGllc0VuY29kaW5nSW5mby5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRENENDFFNTFDM0REQjA5MDA5NjVEOTkg
LyogUGFyc2VkQ29udGVudFJhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFBhcnNlZENvbnRlbnRSYW5nZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEQ0Q0MUU2MUMzRERCMDkwMDk2NUQ5OSAvKiBQYXJzZWRDb250ZW50UmFuZ2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFyc2VkQ29udGVudFJhbmdlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQ0U1Q0QwMTQ2MzNCQzkwMEQ0N0NDQSAvKiBFdmVu
dFRhcmdldEZhY3RvcnkuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRXZlbnRUYXJnZXRGYWN0
b3J5LmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRENGQUJCQjE4QzBBRTMxMDA2
Rjg0NTAgLyogSGlnaGxpZ2h0RGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBIaWdobGlnaHREYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQ0ZBQkJD
MThDMEFGMTkwMDZGODQ1MCAvKiBIaWdobGlnaHREYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEhpZ2hsaWdodERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDREQxRTUyNTE2N0JBNTY0MDBDRTgyMEIgLyogVGV4dFRyYWNrUmVwcmVzZW50
YXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dFRyYWNrUmVwcmVz
ZW50YXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RENzA4OTQxODM1OUY2
RTAwMkIzREM2IC8qIFNhbXBsZU1hcC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTYW1wbGVNYXAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREQ3
MDg5NTE4MzU5RjZGMDAyQjNEQzYgLyogU2FtcGxlTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNhbXBsZU1hcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
RERDMUU3OTE4QTk1MkYzMDAyN0E5RDQgLyogTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU291cmNlUHJpdmF0ZUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUEyMjI1MzhDRDgwMDBBMTMwMEMg
LyogTWVkaWFTZXNzaW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVNlc3Npb24uaWRsOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRERERUEyMzI1MzhDRDgwMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9u
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRERERUEyNDI1MzhDRDgwMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE1lZGlhU2Vzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNERERFQTI1MjUzOENEQUIwMEExMzAwQyAvKiBOYXZpZ2F0b3IrTWVkaWFTZXNzaW9u
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSAiTmF2aWdhdG9yK01lZGlhU2Vzc2lvbi5pZGwiOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRERERUEyNjI1MzhDREFCMDBBMTMwMEMgLyogTmF2aWdhdG9yTWVkaWFT
ZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRvck1lZGlhU2Vzc2lvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUEyNzI1MzhDREFCMDBBMTMwMEMgLyogTmF2aWdh
dG9yTWVkaWFTZXNzaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hdmlnYXRvck1lZGlhU2Vz
c2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTI4MjUzOENEQ0Iw
MEExMzAwQyAvKiBNZWRpYVNlc3Npb25QbGF5YmFja1N0YXRlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVNlc3Np
b25QbGF5YmFja1N0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVB
MjkyNTM4Q0RDQjAwQTEzMDBDIC8qIE1lZGlhU2Vzc2lvblBsYXliYWNrU3RhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRERERUEyQTI1MzhDREUzMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9u
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBNZWRpYVNlc3Npb25BY3Rpb24uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRERERUEyQjI1MzhDREUzMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1lZGlhU2Vzc2lvbkFjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRERERUEyQzI1MzhDRTA0MDBBMTMwMEMgLyogTWVkaWFNZXRhZGF0YS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gTWVkaWFNZXRhZGF0YS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNE
RERFQTJEMjUzOENFMDQwMEExMzAwQyAvKiBNZWRpYU1ldGFkYXRhLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1lZGlhTWV0YWRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVBMkYy
NTM4Q0UxRTAwQTEzMDBDIC8qIE1lZGlhTWV0YWRhdGFJbml0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYU1ldGFk
YXRhSW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTMwMjUzOENF
MUUwMEExMzAwQyAvKiBNZWRpYU1ldGFkYXRhSW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYU1l
dGFkYXRhSW5pdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUEzMTI1MzhD
RTM1MDBBMTMwMEMgLyogTWVkaWFJbWFnZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFJbWFnZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTMyMjUzOENFMzUwMEExMzAwQyAvKiBNZWRp
YUltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0REREVBMzMyNTM4Q0U2MjAwQTEzMDBDIC8qIE1lZGlhUG9zaXRpb25TdGF0
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFQb3NpdGlvblN0YXRlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQ0REREVBMzQyNTM4Q0U2MjAwQTEzMDBDIC8qIE1lZGlhUG9zaXRpb25TdGF0ZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBNZWRpYVBvc2l0aW9uU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0REREVBMzUyNTM4Q0U3MDAwQTEzMDBDIC8qIE1lZGlhU2Vzc2lvbkFjdGlv
bkRldGFpbHMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IE1lZGlhU2Vzc2lvbkFjdGlvbkRldGFpbHMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUEzNjI1MzhDRTcwMDBBMTMwMEMgLyogTWVkaWFT
ZXNzaW9uQWN0aW9uRGV0YWlscy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVNlc3Npb25BY3Rpb25E
ZXRhaWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTM5MjUzOEU5QzIw
MEExMzAwQyAvKiBNZWRpYVNlc3Npb25BY3Rpb25IYW5kbGVyLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVNlc3Np
b25BY3Rpb25IYW5kbGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVB
M0EyNTM4RTlDMjAwQTEzMDBDIC8qIE1lZGlhU2Vzc2lvbkFjdGlvbkhhbmRsZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gTWVkaWFTZXNzaW9uQWN0aW9uSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRERERUEzRjI1MzkxMURCMDBBMTMwMEMgLyogSlNNZWRpYVNlc3Npb25BY3Rp
b24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYVNlc3Npb25BY3Rpb24uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUE0MDI1MzkxMURCMDBBMTMwMEMgLyogSlNN
ZWRpYVNlc3Npb25BY3Rpb25EZXRhaWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9u
QWN0aW9uRGV0YWlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUE0MTI1
MzkxMURCMDBBMTMwMEMgLyogSlNNZWRpYVNlc3Npb25BY3Rpb25EZXRhaWxzLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9uQWN0aW9uRGV0YWlscy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNERERFQTQyMjUzOTExREMwMEExMzAwQyAvKiBKU01lZGlhU2Vz
c2lvblBsYXliYWNrU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYVNlc3Npb25QbGF5YmFj
a1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTQzMjUzOTExREMw
MEExMzAwQyAvKiBKU01lZGlhU2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlh
U2Vzc2lvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTQ0MjUzOTEx
REQwMEExMzAwQyAvKiBKU01lZGlhU2Vzc2lvbkFjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01l
ZGlhU2Vzc2lvbkFjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRERERUE0
NTI1MzkxMUREMDBBMTMwMEMgLyogSlNNZWRpYVNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNN
ZWRpYVNlc3Npb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVBNDYyNTM5
MTFERDAwQTEzMDBDIC8qIEpTTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0ZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU01lZGlhU2Vzc2lvblBsYXliYWNrU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRERERUE0NzI1MzkxMjA2MDBBMTMwMEMgLyogSlNNZWRpYU1ldGFk
YXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFNZXRhZGF0YS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDRERERUE0ODI1MzkxMjA2MDBBMTMwMEMgLyogSlNNZWRpYU1ldGFkYXRh
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFNZXRhZGF0YS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNERERFQTQ5MjUzOTEyMDcwMEExMzAwQyAvKiBKU01lZGlhTWV0
YWRhdGFJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFNZXRhZGF0YUluaXQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVBNEEyNTM5MTIwNzAwQTEzMDBDIC8qIEpTTWVk
aWFNZXRhZGF0YUluaXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYU1ldGFkYXRhSW5p
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTRCMjUzOTEyMDcwMEEx
MzAwQyAvKiBKU01lZGlhUG9zaXRpb25TdGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01l
ZGlhUG9zaXRpb25TdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERF
QTRDMjUzOTEyMDgwMEExMzAwQyAvKiBKU01lZGlhUG9zaXRpb25TdGF0ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU01lZGlhUG9zaXRpb25TdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRERERUE0RDI1MzkxM0JCMDBBMTMwMEMgLyogSlNNZWRpYVNlc3Npb25BY3Rpb25IYW5kbGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTTWVkaWFTZXNzaW9uQWN0aW9uSGFuZGxlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERFQTRFMjUzOTEzQkMwMEExMzAwQyAv
KiBKU01lZGlhU2Vzc2lvbkFjdGlvbkhhbmRsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYVNl
c3Npb25BY3Rpb25IYW5kbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERERF
QTRGMjUzOTFFRDQwMEExMzAwQyAvKiBKU01lZGlhSW1hZ2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNNZWRpYUltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVB
NTAyNTM5MUVENDAwQTEzMDBDIC8qIEpTTWVkaWFJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01l
ZGlhSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0REREVBNTIyNTM5NURF
MTAwQTEzMDBDIC8qIE1lZGlhTWV0YWRhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFN
ZXRhZGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEREUwMkU5MThCM0RG
QzcwMENGN0ZGMSAvKiBMZWdhY3lDRE1TZXNzaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExlZ2FjeUNE
TVNlc3Npb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RERTAyRUExOEIzRUQ2
RDAwQ0Y3RkYxIC8qIENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEREUwMkVCMThCM0VENkQwMENGN0ZGMSAvKiBDRE1TZXNz
aW9uQVZGb3VuZGF0aW9uT2JqQy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRERFMDJFRTE4QjU2NEZBMDBDRjdGRjEgLyogQ0RNU2Vzc2lvbkFWU3RyZWFt
U2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDRE1TZXNzaW9uQVZTdHJlYW1TZXNzaW9uLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEREUwMkVGMThCNTY1MTIwMENGN0ZGMSAvKiBD
RE1TZXNzaW9uQVZTdHJlYW1TZXNzaW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gQ0RNU2Vzc2lvbkFWU3RyZWFtU2Vzc2lvbi5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0RFM0E4NTIxN0Y1RkNFNjAwQzVCRTIwIC8qIEF1ZGlvVHJhY2tQcml2
YXRlQVZGLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvVHJhY2tQcml2
YXRlQVZGLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERTNBODU1MTdGNjAyMDQw
MEM1QkUyMCAvKiBBdWRpb1RyYWNrUHJpdmF0ZUFWRk9iakMubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBdWRpb1RyYWNrUHJpdmF0ZUFWRk9iakMubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERTNBODU2MTdGNjAyMDQwMEM1QkUyMCAvKiBBdWRp
b1RyYWNrUHJpdmF0ZUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXVkaW9UcmFja1ByaXZhdGVBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNERTNBRTEwMjRCNDkxNjkwMDEyOEU3RSAvKiBDRE1VdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNERTNBRTEzMjRCNDkzNkYwMDEyOEU3RSAvKiBDRE1VdGlsaXRpZXMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ0RNVXRpbGl0aWVzLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFNTk1OTMxQkYxNjZBRDAwQTFDQkU4IC8qIENE
TVNlc3Npb25BVkNvbnRlbnRLZXlTZXNzaW9uLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gQ0RNU2Vzc2lvbkFWQ29udGVudEtleVNlc3Npb24ubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERTU5NTk0MUJGMTY2RDEwMEExQ0JFOCAvKiBDRE1TZXNz
aW9uQVZDb250ZW50S2V5U2Vzc2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDRE1TZXNzaW9uQVZDb250ZW50S2V5U2Vzc2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDREU1OTU5NjFCRjI2RTIxMDBBMUNCRTggLyogQ0RNU2Vzc2lvbk1lZGlhU291cmNl
QVZGT2JqQy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDRE1TZXNzaW9uTWVk
aWFTb3VyY2VBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERTU5NTlD
MUJGMjc1NzEwMEExQ0JFOCAvKiBDRE1TZXNzaW9uTWVkaWFTb3VyY2VBVkZPYmpDLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQ0RNU2Vzc2lvbk1lZGlhU291cmNl
QVZGT2JqQy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFNjY3QTExRTRCQkE0
RDAwRTgxNTRBIC8qIFBsYXRmb3JtQXVkaW9EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBsYXRmb3JtQXVkaW9EYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNERTdGQzQyMTgxOTA0QjEwMDJCQkI3NyAvKiBPcmRlckl0ZXJhdG9yLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9yZGVySXRlcmF0b3IuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDREU3RkM0MzE4MTkwNEIxMDAyQkJCNzcgLyogT3JkZXJJ
dGVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcmRlckl0ZXJhdG9y
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERTgzREFGMTgzQzQ0MDYwMDMxRUFB
MyAvKiBWaWRlb1BsYXliYWNrUXVhbGl0eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBWaWRlb1BsYXliYWNrUXVhbGl0eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNERTgzREIwMTgzQzQ0MDYwMDMxRUFBMyAvKiBWaWRlb1BsYXliYWNrUXVhbGl0
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBWaWRlb1BsYXliYWNrUXVhbGl0
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREU4M0RCMzE4M0M0NDFFMDAzMUVB
QTMgLyogVmlkZW9QbGF5YmFja1F1YWxpdHkuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZpZGVvUGxheWJhY2tRdWFsaXR5
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFODNEQjQxODNEMzUyQTAwMzFF
QUEzIC8qIEpTVmlkZW9QbGF5YmFja1F1YWxpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gSlNWaWRlb1BsYXliYWNrUXVhbGl0eS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNERTgzREI1MTgzRDM1MkEwMDMxRUFBMyAvKiBKU1ZpZGVvUGxheWJh
Y2tRdWFsaXR5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVmlkZW9QbGF5
YmFja1F1YWxpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFOEI1RUExQTY5
Nzc3MzAwQjRCNjZBIC8qIExlZ2FjeUNETVByaXZhdGVDbGVhcktleS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMZWdhY3lDRE1Qcml2YXRlQ2xlYXJLZXkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREU4QjVFQjFBNjk3NzczMDBCNEI2NkEgLyog
TGVnYWN5Q0RNUHJpdmF0ZUNsZWFyS2V5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IExlZ2FjeUNETVByaXZhdGVDbGVhcktleS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDREU4QjVFRTFBNjk3NzhCMDBCNEI2NkEgLyogTGVnYWN5Q0RNU2Vzc2lvbkNsZWFyS2V5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IExlZ2FjeUNETVNlc3Np
b25DbGVhcktleS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERThCNUVGMUE2
OTc3OEIwMEI0QjY2QSAvKiBMZWdhY3lDRE1TZXNzaW9uQ2xlYXJLZXkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5Q0RNU2Vzc2lvbkNsZWFyS2V5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERUE3QzgyMTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJG
dWxsU2NyZWVuLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlckZ1bGxT
Y3JlZW4uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFQTdDODMxMjc2MjMwNDAw
Qjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyRnVsbFNjcmVlbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNERUIzRDcyMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VCdWZmZXJQYXJzZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU291cmNlQnVmZmVyUGFyc2VyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFQjNENzMyNEM0MUE2RTAwMUZCRUVGIC8qIFNvdXJjZUJ1ZmZl
clBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb3VyY2VCdWZmZXJQYXJzZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFQ0E4OTgxRURGNDQ3RDAwRENCMDhCIC8qIEFWQXNzZXRU
cmFja1V0aWxpdGllcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFWQXNzZXRUcmFja1V0aWxp
dGllcy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFQ0E4OTkxRURGNDQ3RDAw
RENCMDhCIC8qIEFWQXNzZXRUcmFja1V0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBVkFzc2V0
VHJhY2tVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RFRTM5MzYx
Nzk3NDI1OTAwMUQ3NTgwIC8qIFB1YmxpY1VSTE1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gUHVibGljVVJMTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNERUUzOTM4MTc5NzQyNzQwMDFENzU4MCAvKiBVUkxSZWdpc3RyeS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBVUkxSZWdpc3RyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDREVGNEZENjE3RTg1QzhGMDBBRUUyNEIgLyogR3JpZExlbmd0aC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBHcmlkTGVuZ3RoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNERjJCMDAzMTgxRjA1OUMwMEYyQjQyNCAvKiBNZWRpYURlc2NyaXB0aW9uLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhRGVzY3JpcHRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGMkIwMDYxODIwNTQwNjAwRjJCNDI0IC8qIE1v
Y2tCb3guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9ja0JveC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjJCMDA3MTgyMDU0MDYwMEYyQjQy
NCAvKiBNb2NrQm94LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vY2tCb3gu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGMkIwMDgxODIwNTQwNjAwRjJCNDI0
IC8qIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGMkIwMDkxODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tNZWRp
YVBsYXllck1lZGlhU291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1v
Y2tNZWRpYVBsYXllck1lZGlhU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNERjJCMDBBMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vY2tNZWRpYVNvdXJjZVByaXZh
dGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREYyQjAwQjE4MjA1NDA2MDBG
MkI0MjQgLyogTW9ja01lZGlhU291cmNlUHJpdmF0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNb2NrTWVkaWFTb3VyY2VQcml2YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUNERjJCMDBDMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrU291cmNlQnVmZmVyUHJp
dmF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNb2NrU291cmNl
QnVmZmVyUHJpdmF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjJCMDBE
MTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrU291cmNlQnVmZmVyUHJpdmF0ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrU291cmNlQnVmZmVyUHJpdmF0ZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDREYyQjAwRjE4MjA1NDA2MDBGMkI0MjQgLyogTW9ja1Ry
YWNrcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2NrVHJhY2tzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjQxOTk5MUFCMERBMTQwMDRFNjRFMSAvKiBt
aXNzaW5nSW1hZ2VAM3gucG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gaW1hZ2UucG5nOyBwYXRoID0gIm1pc3NpbmdJbWFnZUAzeC5wbmciOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREY0QjcxMzFFMDBCN0U1MDBFMjM1QTIgLyogQ0RN
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENETS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjRCNzE0MUUwMEI3RTUwMEUyMzVBMiAvKiBDRE0u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0RNLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNERjRCNzE3MUUwMUNCOTEwMEUyMzVBMiAvKiBNZWRpYUtleXNSZXN0
cmljdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFLZXlzUmVz
dHJpY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjRCNzE5MUUwMUQz
RDAwMEUyMzVBMiAvKiBNZWRpYUtleVNlc3Npb25UeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBNZWRpYUtleVNlc3Npb25UeXBlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0RGNEI3MUIxRTAxRTExQTAwRTIzNUEyIC8qIEpTTWVkaWFLZXlTZXNzaW9uVHlwZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhS2V5U2Vzc2lvblR5
cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREY0QjcxQzFFMDFFMTFBMDBF
MjM1QTIgLyogSlNNZWRpYUtleVNlc3Npb25UeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTTWVkaWFLZXlTZXNzaW9uVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDREY0QjcxRjFFMDNCRjZGMDBFMjM1QTIgLyogTW9ja0NETUZhY3RvcnkuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IE1vY2tDRE1GYWN0b3J5LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0RGNEI3MjExRTAzQkY4MTAwRTIzNUEyIC8qIE1vY2tDRE1GYWN0b3J5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1vY2tDRE1GYWN0b3J5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGNEI3MjIxRTAzQkY4MTAwRTIz
NUEyIC8qIE1vY2tDRE1GYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1vY2tDRE1GYWN0b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjRCNzI3
MUUwM0M1NzMwMEUyMzVBMiAvKiBNZWRpYUtleXNSZXF1aXJlbWVudC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFLZXlzUmVxdWlyZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDREY0QjcyOTFFMDNDNjNFMDBFMjM1QTIgLyogSlNNZWRpYUtleXNSZXF1aXJl
bWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhS2V5
c1JlcXVpcmVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGNEI3MkEx
RTAzQzYzRTAwRTIzNUEyIC8qIEpTTWVkaWFLZXlzUmVxdWlyZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZWRpYUtleXNSZXF1aXJlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlDREY0QjcyRDFFMDNDQTRBMDBFMjM1QTIgLyogSlNNb2NrQ0RN
RmFjdG9yeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01vY2tD
RE1GYWN0b3J5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGNEI3MkUxRTAz
Q0E0QTAwRTIzNUEyIC8qIEpTTW9ja0NETUZhY3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNNb2NrQ0RNRmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlDREY2NUNDOTE0NUI0M0E3MDBDNEM3QUEgLyogTWVkaWFDb250cm9sbGVySW50ZXJmYWNl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhQ29udHJvbGxlckludGVy
ZmFjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREY3NDgzQzE4RkVCQ0VDMDAw
NkVDQzAgLyogR3JpZFBvc2l0aW9uc1Jlc29sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEdyaWRQb3NpdGlvbnNSZXNvbHZlci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNERjc0ODNEMThGRUJDRUMwMDA2RUNDMCAvKiBHcmlkUG9zaXRpb25z
UmVzb2x2ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR3JpZFBvc2l0aW9u
c1Jlc29sdmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjc1NjlCMjE1QzIz
QTQwMEVGQ0I1MCAvKiBDRE1FbmNyeXB0aW9uU2NoZW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENETUVu
Y3J5cHRpb25TY2hlbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGNzU2OUQy
MTVDMjQ0NDAwRUZDQjUwIC8qIE1lZGlhS2V5RW5jcnlwdGlvblNjaGVtZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYUtleUVuY3J5cHRpb25TY2hlbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0RGNzU2OUUyMTVDMjg1RTAwRUZDQjUwIC8qIE1lZGlhS2V5RW5jcnlwdGlvblNjaGVt
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gTWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1lLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJQ0RGNzU2QTAyMTVDMjlFODAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNy
eXB0aW9uU2NoZW1lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
TWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1lLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0RGNzU2QTEyMTVDMjlFOTAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNyeXB0aW9uU2NoZW1l
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFLZXlFbmNyeXB0aW9u
U2NoZW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjk5NEZBMjRDMTJBNkEw
MDJFQTA2MiAvKiBTb3VyY2VCdWZmZXJQYXJzZXJBVkZPYmpDLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNv
dXJjZUJ1ZmZlclBhcnNlckFWRk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
Q0RGOTk0RkIyNEMxMkE2QTAwMkVBMDYyIC8qIFNvdXJjZUJ1ZmZlclBhcnNlckFWRk9iakMubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTb3VyY2VCdWZmZXJQYXJzZXJBVkZPYmpDLm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREY5OTRGRTI0QzI4MTM2MDAyRUEwNjIgLyogVmlk
ZW9UcmFja1ByaXZhdGVXZWJNLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZGVvVHJhY2tQcml2YXRlV2Vi
TS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREY5OTRGRjI0QzI4MTM2MDAyRUEw
NjIgLyogVmlkZW9UcmFja1ByaXZhdGVXZWJNLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFZpZGVv
VHJhY2tQcml2YXRlV2ViTS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERjk5
NTAwMjRDMjgxNDkwMDJFQTA2MiAvKiBBdWRpb1RyYWNrUHJpdmF0ZVdlYk0uaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQXVkaW9UcmFja1ByaXZhdGVXZWJNLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNERjk5NTAxMjRDMjgxNDkwMDJFQTA2MiAvKiBBdWRpb1RyYWNrUHJpdmF0ZVdlYk0uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9UcmFja1ByaXZhdGVXZWJNLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RGQzM2MDMxOENBNjFDMjAwMjZFNTZGIC8qIFJlbW90ZUNv
bW1hbmRMaXN0ZW5lci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBS
ZW1vdGVDb21tYW5kTGlzdGVuZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlD
REZDMzYwNDE4Q0E2MUMyMDAyNkU1NkYgLyogUmVtb3RlQ29tbWFuZExpc3RlbmVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90ZUNvbW1hbmRMaXN0ZW5lci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREZENzhCQTIyNDJDNEZFMDBENzIwOEEgLyogSlNU
ZXh0VHJhY2tDdWVHZW5lcmljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpT
VGV4dFRyYWNrQ3VlR2VuZXJpYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREZE
NzhCQjIyNDJDNEZGMDBENzIwOEEgLyogSlNUZXh0VHJhY2tDdWVHZW5lcmljLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVGV4dFRyYWNrQ3VlR2VuZXJpYy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNERkQ3OEMyMjI0MkZDNDkwMEQ3MjA4QSAv
KiBUZXh0VHJhY2tDdWVHZW5lcmljLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBUZXh0VHJh
Y2tDdWVHZW5lcmljLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0UwNTdGQTMx
MjIwNzMxMTAwQTQ3NkQ1IC8qIERvY3VtZW50TWFya2VyQ29udHJvbGxlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEb2N1bWVudE1hcmtlckNvbnRyb2xsZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTA1N0ZBNDEyMjA3MzExMDBBNDc2RDUg
LyogRG9jdW1lbnRNYXJrZXJDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERvY3VtZW50TWFya2VyQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRTA4QzNDRjE1MkI1OTlBMDAyMUI4QzIgLyogQWx0ZXJuYXRpdmVUZXh0Q29udHJv
bGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBbHRlcm5hdGl2
ZVRleHRDb250cm9sbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0UwOEMz
RDAxNTJCNTk5QTAwMjFCOEMyIC8qIEFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTE4NjY0MjFGNzJFNUI0MDBBMENBQjYgLyog
TWFya2VkVGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXJrZWRUZXh0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0UxODY2NDMxRjcyRTVCNDAwQTBDQUI2IC8qIE1hcmtl
ZFRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWFya2VkVGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlDRTFBNTAxRDIyRDUzNTA5MDBDQkM5MjcgLyogRE9NVGltZXJIb2xkaW5nVGFu
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBET01UaW1lckhvbGRpbmdUYW5rLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUNFMUE1MDFFMjJENTM1MDkwMENCQzkyNyAvKiBET01UaW1lckhvbGRp
bmdUYW5rLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTVRpbWVySG9sZGluZ1RhbmsuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTIxMjE1MzI0MERCRDMwMDA2RUQ0NDMgLyog
VGV4dFBsYWNlaG9sZGVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0UGxhY2Vob2xkZXJF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFMjEyMTU0MjQwREJEMzAw
MDZFRDQ0MyAvKiBUZXh0UGxhY2Vob2xkZXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFRleHRQbGFjZWhvbGRlckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlDRTI4NDk4NjFDQTM2MERGMDBCNEE1N0YgLyogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0
aXZlTmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gQ29udGVudFNlY3Vy
aXR5UG9saWN5RGlyZWN0aXZlTmFtZXMuaDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVOYW1lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTI4NDk4
ODFDQTM2MTQ2MDBCNEE1N0YgLyogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXMu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5
UG9saWN5RGlyZWN0aXZlTmFtZXMuY3BwOyBwYXRoID0gY3NwL0NvbnRlbnRTZWN1cml0eVBvbGlj
eURpcmVjdGl2ZU5hbWVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U0NTk0
NjQyNDEyMUEwNTAwNzgwMTlGIC8qIEFsdGVybmF0aXZlVGV4dENvbnRleHRDb250cm9sbGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEFsdGVybmF0aXZlVGV4dENvbnRleHRDb250cm9sbGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNDU5NDY1MjQxMjFBMDUwMDc4MDE5RiAvKiBBbHRl
cm5hdGl2ZVRleHRDb250ZXh0Q29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFs
dGVybmF0aXZlVGV4dENvbnRleHRDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRTUxNjlFNTIxRjFCODQ3MDBFQTRGNzggLyogQ29sb3JJT1MuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ29sb3JJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U1MTY5RTYy
MUYxQjg0NzAwRUE0Rjc4IC8qIENvbG9ySU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQ29s
b3JJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNUNCMUIzMTRFREFCNkYw
MEJCMjc5NSAvKiBFdmVudFNlbmRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBFdmVudFNlbmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTVGQTI1MzIw
OUU0OEM1MDA1MUQ3MDAgLyogQ29udGVudFNlY3VyaXR5UG9saWN5Q2xpZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IENvbnRlbnRTZWN1cml0eVBvbGljeUNsaWVudC5oOyBwYXRoID0gY3NwL0NvbnRlbnRT
ZWN1cml0eVBvbGljeUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTY4
QzhGRjIxOTI0RUU1MDAxMjMwQjMgLyogUGxhdGZvcm1LZXlib2FyZEV2ZW50LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUNFNkQ4OTI5NEM3QUFDRTBBRDg5QjNERCAvKiBNYXRoTUxNZW5jbG9zZUVs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MTWVuY2xvc2VF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNkRBREY3MUM1OTFFNkEw
MDNGNkE4OCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5UmVz
cG9uc2VIZWFkZXJzLmNwcDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25z
ZUhlYWRlcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTZEQURGODFDNTkx
RTZBMDAzRjZBODggLyogQ29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3Bv
bnNlSGVhZGVycy5oOyBwYXRoID0gY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVh
ZGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTc5OUY5NTFDNkE0NkJDMDA5
N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0
LmNwcDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3OTlGOTYxQzZBNDZCQzAwOTdCNTE4IC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdC5oOyBwYXRoID0gY3NwL0Nv
bnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0U3OTlGOTkxQzZBNEJDRDAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeURp
cmVjdGl2ZUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29u
dGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA7IHBhdGggPSBjc3AvQ29udGVudFNl
Y3VyaXR5UG9saWN5RGlyZWN0aXZlTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNFNzk5RjlBMUM2QTRCQ0QwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJl
Y3RpdmVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENvbnRlbnRTZWN1
cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xp
Y3lEaXJlY3RpdmVMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFNzk5RjlE
MUM2QTRDMTYwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5U291
cmNlLmNwcDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTc5OUY5RTFDNkE0QzE2MDA5N0I1MTggLyogQ29u
dGVudFNlY3VyaXR5UG9saWN5U291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZS5oOyBwYXRoID0gY3NwL0NvbnRlbnRTZWN1
cml0eVBvbGljeVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTc5OUZB
MjFDNkE1MDNBMDA5N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZS5oOyBwYXRoID0gY3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDRTc5OUZBNTFDNkE1MDU3MDA5N0I1MTggLyogQ29u
dGVudFNlY3VyaXR5UG9saWN5TWVkaWFMaXN0RGlyZWN0aXZlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlzdERpcmVj
dGl2ZS5jcHA7IHBhdGggPSBjc3AvQ29udGVudFNlY3VyaXR5UG9saWN5TWVkaWFMaXN0RGlyZWN0
aXZlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3OTlGQTYxQzZBNTA1NzAw
OTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlzdERpcmVjdGl2ZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBDb250ZW50U2VjdXJpdHlQb2xpY3lNZWRpYUxp
c3REaXJlY3RpdmUuaDsgcGF0aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lNZWRpYUxpc3RE
aXJlY3RpdmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3OTlGQTkxQzZBNTA2
NjAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9s
aWN5U291cmNlTGlzdERpcmVjdGl2ZS5jcHA7IHBhdGggPSBjc3AvQ29udGVudFNlY3VyaXR5UG9s
aWN5U291cmNlTGlzdERpcmVjdGl2ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNFNzk5RkFBMUM2QTUwNjYwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VM
aXN0RGlyZWN0aXZlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IENvbnRlbnRT
ZWN1cml0eVBvbGljeVNvdXJjZUxpc3REaXJlY3RpdmUuaDsgcGF0aCA9IGNzcC9Db250ZW50U2Vj
dXJpdHlQb2xpY3lTb3VyY2VMaXN0RGlyZWN0aXZlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUNFN0E2QzI2MjA4NTM3RTIwMEZBMkI0NiAvKiBTYW1lU2l0ZUluZm8uaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2FtZVNpdGVJbmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNF
N0E2QzI3MjA4NTM3RTIwMEZBMkI0NiAvKiBTYW1lU2l0ZUluZm8uY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU2FtZVNpdGVJbmZvLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3
QjJEQUYxNTg2QUJBRDAwOThCM0ZBIC8qIEFsdGVybmF0aXZlVGV4dFVJQ29udHJvbGxlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBbHRlcm5hdGl2ZVRleHRVSUNvbnRyb2xs
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3QjJEQjAxNTg2QUJBRDAwOThC
M0ZBIC8qIEFsdGVybmF0aXZlVGV4dFVJQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgcGF0aCA9IEFsdGVybmF0aXZlVGV4dFVJQ29udHJvbGxlci5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3QjJEQjExNTg2QUJBRDAwOThCM0ZBIC8qIFRl
eHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0U3QjJEQjIxNTg2QUJBRDAwOThCM0ZBIC8qIFRleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFRleHRBbHRlcm5hdGl2
ZVdpdGhSYW5nZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0U3RTE3ODIxQzgz
QTQ5MTAwQUQwNkFGIC8qIENvbnRlbnRTZWN1cml0eVBvbGljeUhhc2guaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5SGFzaC5oOyBwYXRoID0g
Y3NwL0NvbnRlbnRTZWN1cml0eVBvbGljeUhhc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0VBODQ3MjAyMTI2MjJBRDAwOTQwODA5IC8qIFRleHRDaGVja2luZ01hYy5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IFRleHRDaGVja2luZ01hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0VCQjhDMzEyMDc4NkRDQjAwMDM5NTQ3IC8qIEZldGNoSWRpb21zLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEZldGNoSWRpb21zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUNFQkI4QzMyMjA3ODZEQ0IwMDAzOTU0NyAvKiBGZXRjaElkaW9tcy5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBGZXRjaElkaW9tcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNF
Q0FERkMzMTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaWN0YXRpb25BbHRlcm5hdGl2ZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlDRUNBREZDNDE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0
aW9uQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaWN0
YXRpb25Db21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0VDQURGQzUx
NTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRGljdGF0aW9uQ29tbWFuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlDRUNBREZDQjE1Mzc3OTFEMDBFMzcwNjggLyogVGV4dEluc2VydGlvbkJhc2VDb21t
YW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRJbnNlcnRp
b25CYXNlQ29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFQ0FERkND
MTUzNzc5MUQwMEUzNzA2OCAvKiBUZXh0SW5zZXJ0aW9uQmFzZUNvbW1hbmQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEluc2VydGlvbkJhc2VDb21tYW5kLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFQ0NGQzNBMTQxOTczRDUwMDJBMEFDMSAvKiBEZWNv
ZGVFc2NhcGVTZXF1ZW5jZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVj
b2RlRXNjYXBlU2VxdWVuY2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFRDA2
QUNFMUM3Nzc1NDgwMEZERkFGMSAvKiBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTZWN1cml0eVBvbGljeVZp
b2xhdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0VEMDZBQ0Yx
Qzc3NzU0ODAwRkRGQUYxIC8qIEpTU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZl
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0VEQTEyRDYxNTJDQTFDQjAwRDlF
MDhEIC8qIEFsdGVybmF0aXZlVGV4dENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBbHRlcm5hdGl2ZVRleHRDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJQ0VFRkNENzcxOURCMzFGNzAwMzg3NkQ3IC8qIE1lZGlhUmVzb3VyY2VMb2FkZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFSZXNvdXJjZUxvYWRl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFRUZDRDc4MTlEQjMxRjcwMDM4
NzZENyAvKiBNZWRpYVJlc291cmNlTG9hZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE1lZGlhUmVzb3VyY2VMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJQ0VFRkNEN0IxOURCMzNEQzAwMzg3NkQ3IC8qIFBsYXRmb3JtTWVkaWFSZXNvdXJjZUxvYWRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybU1lZGlhUmVzb3Vy
Y2VMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0VGNDE4Q0MxMTc5Njc4
QzAwOUQxMTJDIC8qIFZpZXdwb3J0QXJndW1lbnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFZpZXdwb3J0QXJndW1lbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJQ0VGNDE4Q0QxMTc5Njc4QzAwOUQxMTJDIC8qIFZpZXdwb3J0QXJndW1lbnRz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZpZXdwb3J0QXJndW1lbnRzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNFRjU5QjI1MUNBMEUxMUQwMDVDM0UxMyAv
KiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlLmNwcDsgcGF0
aCA9IGNzcC9Db250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlDRUZENURCMjIwOUVCRUQ0MDA3ODhCNjcgLyogQ29udGVudFNlY3Vy
aXR5UG9saWN5Q2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IENvbnRlbnRTZWN1cml0eVBv
bGljeUNsaWVudC5jcHA7IHBhdGggPSBjc3AvQ29udGVudFNlY3VyaXR5UG9saWN5Q2xpZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDAwMEVCQTAxMUJEQUZENDAwQzQ3NzI2
IC8qIEZyYW1lTG9hZGVyU3RhdGVNYWNoaW5lLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEZyYW1lTG9hZGVyU3RhdGVNYWNoaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRDAwMEVCQTExMUJEQUZENDAwQzQ3NzI2IC8qIEZyYW1lTG9hZGVyU3Rh
dGVNYWNoaW5lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZyYW1lTG9hZGVy
U3RhdGVNYWNoaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwMDBFRDI1MTFD
MUI5Q0QwMEM0NzcyNiAvKiBTdWJmcmFtZUxvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBTdWJmcmFtZUxvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUQwMDBFRDI2MTFDMUI5Q0QwMEM0NzcyNiAvKiBTdWJmcmFtZUxvYWRlci5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdWJmcmFtZUxvYWRlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlEMDFBMjdBQjEwQzlCRkQ4MDAwMjZBNDIgLyogU3BhY2VT
cGxpdFN0cmluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTcGFj
ZVNwbGl0U3RyaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDAxQTI3QUMx
MEM5QkZEODAwMDI2QTQyIC8qIFNwYWNlU3BsaXRTdHJpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU3BhY2VTcGxpdFN0cmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlEMDM2REQ4RDIwOEZGQzBDMDBGOUY0QjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFTVEMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBU1RDLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDA1Q0VEMjcwQTQwQkIyQzAwQzVBRjM4IC8qIEZvcm1hdEJs
b2NrQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9y
bWF0QmxvY2tDb21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDA1Q0VE
MjgwQTQwQkIyQzAwQzVBRjM4IC8qIEZvcm1hdEJsb2NrQ29tbWFuZC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRm9ybWF0QmxvY2tDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUQwNkMwRDhEMENGRDExNDYwMDY1RjQzRiAvKiBSZW1vdmVGb3JtYXRD
b21tYW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW92ZUZvcm1hdENv
bW1hbmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDA2QzBEOEUwQ0ZEMTE0NjAw
NjVGNDNGIC8qIFJlbW92ZUZvcm1hdENvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVtb3ZlRm9ybWF0Q29tbWFuZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUQwN0RFQUI3MEEzNjU1NEEwMENBMzBGOCAvKiBJbnNlcnRMaXN0Q29tbWFu
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zZXJ0TGlzdENv
bW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDdERUFCODBBMzY1NTRB
MDBDQTMwRjggLyogSW5zZXJ0TGlzdENvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEluc2VydExpc3RDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUQwODQzQTRDMjBGRUMxNjUwMEZFODYwRSAvKiBHcmFwaGljc0NvbnRleHRHTE9wZW5HTE1h
bmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5h
Z2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDA4NkZFOTYwOUQ1M0FBQjAw
NUJDNzREIC8qIFVubGlua0NvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gVW5saW5rQ29tbWFuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMDg2RkU5
NzA5RDUzQUFCMDA1QkM3NEQgLyogVW5saW5rQ29tbWFuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBVbmxpbmtDb21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRDBBMjBENTQyMDkyQTBBNjAwRTBDMjU5IC8qIFdlYkdMQ29tcHJlc3NlZFRl
eHR1cmVBU1RDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVBU1RDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwQTIwRDU2
MjA5MkEwQTYwMEUwQzI1OSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNU
Qy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwQTNBNzMwMTQwNUEzOTgwMEZC
OEVEMyAvKiBSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVzb3VyY2VMb2FkZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUQwQjA1NTY2MDlDNjcwMDEwMDMwN0U0MyAvKiBDcmVhdGVMaW5rQ29tbWFuZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcmVhdGVMaW5rQ29tbWFuZC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMEIwNTU2NzA5QzY3MDAxMDAzMDdFNDMgLyogQ3Jl
YXRlTGlua0NvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q3JlYXRlTGlua0NvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMEJD
NTQ0ODE0NDNBQzRBMDBFMTA1REEgLyogQ2FjaGVkU3R5bGVTaGVldENsaWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRTdHlsZVNoZWV0Q2xpZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwQkQ0RjVBMTQwODg1MEYwMDY4MzlCNiAvKiBEaWN0
YXRpb25Db21tYW5kSU9TLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IERpY3RhdGlvbkNvbW1hbmRJT1MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlE
MEJENEY1QjE0MDg4NTBGMDA2ODM5QjYgLyogRGljdGF0aW9uQ29tbWFuZElPUy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaWN0YXRpb25Db21tYW5kSU9TLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwRURBNzcyMTQzRTMwM0MwMDI4RTM4MyAvKiBDYWNoZWRS
YXdSZXNvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWNo
ZWRSYXdSZXNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQwRURBNzcz
MTQzRTMwM0MwMDI4RTM4MyAvKiBDYWNoZWRSYXdSZXNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDYWNoZWRSYXdSZXNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlEMEZGMkE1QjExRjhDNDVBMDA3RTc0RTAgLyogUGluZ0xvYWRlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQaW5nTG9hZGVyLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDBGRjJBNUMxMUY4QzQ1QTAwN0U3NEUwIC8qIFBpbmdM
b2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGluZ0xvYWRlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMkNEQjVFRDYzOEY0M0FGODZGMDdBQTIgLyog
SlNFcnJvckV2ZW50Q3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTRXJyb3JFdmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUQzMDI3NTQ1MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlckRldGFpbHNNYXJrZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEMzAyNzU0NjEyQTVGRTg0MDA0QkQ4Mjgg
LyogUmVuZGVyRGV0YWlsc01hcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJEZXRhaWxzTWFya2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQz
NTlENzg2MTI5Q0EyNzEwMDA2RTVEMiAvKiBIVE1MRGV0YWlsc0VsZW1lbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTERldGFpbHNFbGVtZW50LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDM1OUQ3ODcxMjlDQTI3MTAwMDZFNUQyIC8qIEhU
TUxEZXRhaWxzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1M
RGV0YWlsc0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDM1OUQ3ODgx
MjlDQTI3MTAwMDZFNUQyIC8qIEhUTUxEZXRhaWxzRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gSFRNTERldGFpbHNFbGVtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRDM1OUQ4QkMxMjlDQTU1QzAwMDZFNUQyIC8qIEpTSFRNTERldGFpbHNFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTERldGFpbHNFbGVt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDM1OUQ4QkQxMjlDQTU1QzAw
MDZFNUQyIC8qIEpTSFRNTERldGFpbHNFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTSFRNTERldGFpbHNFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUQzQTk0QTMxMTIyREFCQUMwMEEzN0JCQyAvKiBNZWRpYVF1ZXJ5TGlzdC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVF1ZXJ5TGlzdC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQzQTk0QTMyMTIyREFCQUMwMEEzN0JCQyAvKiBN
ZWRpYVF1ZXJ5TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVF1
ZXJ5TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEM0E5NEEzMzEyMkRBQkFD
MDBBMzdCQkMgLyogTWVkaWFRdWVyeUxpc3QuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1l
ZGlhUXVlcnlMaXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDNBOTRBNDIx
MjJEQzQwRjAwQTM3QkJDIC8qIEpTTWVkaWFRdWVyeUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYVF1ZXJ5TGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUQzQTk0QTQzMTIyREM0MEYwMEEzN0JCQyAvKiBKU01lZGlhUXVlcnlM
aXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFRdWVyeUxpc3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDNBQTEwRjExMjNBOThBQTAwOTIxNTJC
IC8qIE1lZGlhUXVlcnlNYXRjaGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IE1lZGlhUXVlcnlNYXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRDNBQTEwRjIxMjNBOThBQTAwOTIxNTJCIC8qIE1lZGlhUXVlcnlNYXRjaGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUXVlcnlNYXRjaGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUQzRDRFOTcwMTMwQzdDRkUwMDdCQTU0MCAvKiBIVE1MU3Vt
bWFyeUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRN
TFN1bW1hcnlFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDNENEU5
NzExMzBDN0NGRTAwN0JBNTQwIC8qIEhUTUxTdW1tYXJ5RWxlbWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MU3VtbWFyeUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRDNGM0QzNTkxQTY5QTNCMDAwNTlGQzJCIC8qIEpTV2ViR0wyUmVuZGVy
aW5nQ29udGV4dEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1dlYkdMMlJlbmRlcmluZ0NvbnRleHRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlEM0YzRDM1QjFBNjlBNTA2MDA1OUZDMkIgLyogV2ViR0wyUmVuZGVyaW5nQ29u
dGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJHTDJSZW5k
ZXJpbmdDb250ZXh0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDNGM0QzNUMx
QTY5QTUwNjAwNTlGQzJCIC8qIFdlYkdMMlJlbmRlcmluZ0NvbnRleHQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlEM0YzRDM1RDFBNjlBNTA2MDA1OUZDMkIgLyogV2ViR0wyUmVu
ZGVyaW5nQ29udGV4dC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViR0wyUmVuZGVyaW5n
Q29udGV4dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQzRjNEMzVFMUE2OUE1
MDYwMDU5RkMyQiAvKiBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEM0YzRDM1RjFBNjlBNTA2MDA1OUZDMkIgLyog
V2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUQzRjNEMzYwMUE2OUE1MDYwMDU5RkMyQiAvKiBXZWJHTFJlbmRlcmluZ0NvbnRleHRC
YXNlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNl
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDNGM0QzNjExQTY5QjE5MDAwNTlG
QzJCIC8qIEpTV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU1dlYkdMMlJlbmRlcmluZ0NvbnRleHQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlEM0YzRDM2MjFBNjlCMTkwMDA1OUZDMkIgLyogSlNXZWJHTDJS
ZW5kZXJpbmdDb250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV2Vi
R0wyUmVuZGVyaW5nQ29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlENEY3
MkM2NTNBNjQ4MDdBODNFNzZGQjggLyogTWF0aE1MT3BlcmF0b3JEaWN0aW9uYXJ5LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1hdGhNTE9wZXJhdG9yRGljdGlvbmFy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQ2MTlBMzA1MTQ0RTAwQkUwMDRC
QzMwMiAvKiBDaGlsZExpc3RNdXRhdGlvblNjb3BlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlENjE5QTMwNjE0NEUwMEJFMDA0QkMzMDIgLyogQ2hpbGRMaXN0TXV0
YXRpb25TY29wZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGlsZExpc3RN
dXRhdGlvblNjb3BlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQ2NDg5RDIzMTY2
RkZDRjEwMDdDMDMxQiAvKiBKU0hUTUxUZW1wbGF0ZUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MVGVtcGxhdGVFbGVtZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDY0ODlEMjQxNjZGRkNGMTAwN0MwMzFCIC8qIEpTSFRN
TFRlbXBsYXRlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hU
TUxUZW1wbGF0ZUVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDZFMjc2
QUQxNDYzNzQ1NTAwMUQyODBBIC8qIE11dGF0aW9uT2JzZXJ2ZXJSZWdpc3RyYXRpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTXV0YXRpb25PYnNlcnZlclJlZ2lz
dHJhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUQ2RTI3NkFFMTQ2Mzc0
NTUwMDFEMjgwQSAvKiBNdXRhdGlvbk9ic2VydmVyUmVnaXN0cmF0aW9uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE11dGF0aW9uT2JzZXJ2ZXJSZWdpc3RyYXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDZFNTI4QTExNDlBOTI2RDAwRUZFMUYzIC8qIE11
dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDZFNTI4QTIxNDlBOTI2RDAwRUZFMUYzIC8qIE11dGF0aW9u
T2JzZXJ2ZXJJbnRlcmVzdEdyb3VwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE11dGF0aW9uT2JzZXJ2ZXJJbnRlcmVzdEdyb3VwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUQ2RUZDMEJCMTY2NkRGN0EwMDNEMjkxRSAvKiBIVE1MVGVtcGxhdGVFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxUZW1wbGF0ZUVsZW1l
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlENkVGQzBCQzE2NjZERjdBMDAz
RDI5MUUgLyogSFRNTFRlbXBsYXRlRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBIVE1MVGVtcGxhdGVFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUQ2RUZDMEJEMTY2NkRGN0EwMDNEMjkxRSAvKiBIVE1MVGVtcGxhdGVFbGVtZW50LmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MVGVtcGxhdGVFbGVtZW50LmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDZGNzk2MEMxNjZGRkVDRTAwNzZERDE4IC8qIEpTSFRNTFRl
bXBsYXRlRWxlbWVudEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0hUTUxUZW1wbGF0ZUVsZW1lbnRDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlENzBBRDY1NTEzRTEzNDJCMDA1QjUwQjQgLyogUmVuZGVyRnJhZ21lbnRDb250
YWluZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyRnJh
Z21lbnRDb250YWluZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlENzBBRDY1
NjEzRTEzNDJCMDA1QjUwQjQgLyogUmVuZGVyRnJhZ21lbnRDb250YWluZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyRnJhZ21lbnRDb250YWluZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRDhCNjE1MkUxMDMyNDk1MTAwQzg1NTRBIC8qIENvb2tp
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb29raWUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREFBQ0IzRDkxNkYyNDE2NDAwNjY2MTM1IC8qIFBhZ2VDb25z
b2xlQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhZ2VD
b25zb2xlQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREFBQ0IzREEx
NkYyNDE2NDAwNjY2MTM1IC8qIFBhZ2VDb25zb2xlQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFBhZ2VDb25zb2xlQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCURCMjNDMkM5MEE1MDhEMjkwMDI0ODlFQiAvKiBJbmRlbnRPdXRkZW50Q29tbWFu
ZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5kZW50T3V0ZGVu
dENvbW1hbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlEQjIzQzJDQTBBNTA4
RDI5MDAyNDg5RUIgLyogSW5kZW50T3V0ZGVudENvbW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEluZGVudE91dGRlbnRDb21tYW5kLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCURCRkNCMEVCRkY1Q0Q3N0VCRUIzNTM5NSAvKiBSZW5kZXJNYXRoTUxTcGFj
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNYXRoTUxT
cGFjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURCRkNCMEVCRkY1Q0Q3N0VC
RUIzNTk1RiAvKiBSZW5kZXJNYXRoTUxQYWRkZWQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVuZGVyTWF0aE1MUGFkZGVkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJREQwNUZFMEIwQjhCQTNDNjAwOUFDREZFIC8qIFdlYkNvcmVPYmpDRXh0cmFz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlT2JqQ0V4dHJhcy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERDc2M0JCMTA5OTJDMkM5MDA3NDBCOEUg
LyogbGlieG1sMi5keWxpYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZHlsaWIiOyBuYW1lID0gbGlieG1sMi5keWxpYjsg
cGF0aCA9IC91c3IvbGliL2xpYnhtbDIuZHlsaWI7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7
IH07CisJCURFNUY4M0IyMUZBMTg2NzYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAxLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMDEuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UzMDEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1
RjgzQjMxRkExODY3NzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM1NS5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM1NS5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNCNDFGQTE4
Njc4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzc4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzc4LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0I1MUZBMTg2NzkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzYyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2UzNjIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNjIuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQjYxRkExODY3QTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzNzcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTM3Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTM3Ny5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERTVGODNCNzFGQTE4NjdCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5
OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
Mzk4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMzk4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFNUY4M0I4MUZBMTg2N0MwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM1LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMzUuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UzMzUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjgz
QjkxRkExODY3RDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTYuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMxNi5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMxNi5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNCQTFGQTE4NjdE
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzc2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzc2LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0JCMUZBMTg2N0UwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzc1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UzNzUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNzUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQkMxRkExODY3RjAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzMzQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTMzNC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTMzNC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERTVGODNCRDFGQTE4NjgwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4MC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzgw
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMzgwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFNUY4M0JFMUZBMTg2ODEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYxLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNjEuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Uz
NjEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQkYx
RkExODY4MTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMyMi5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMyMi5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNDMDFGQTE4NjgyMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM5Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzkyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzkyLmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0MxMUZBMTg2ODMwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzMyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2UzMzIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMzIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQzIxRkExODY4NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzOTEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTM5MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTM5MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERTVGODNDMzFGQTE4Njg1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1Mi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzUyLmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlMzUyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
NUY4M0M0MUZBMTg2ODYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY2LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNjYuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNjYu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQzUxRkEx
ODY4NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM1NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM1NC5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNDNjFGQTE4Njg3MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTMxMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMzEwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzEwLmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0M3MUZBMTg2ODgwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzIxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UzMjEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMjEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREU1RjgzQzgxRkExODY4OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
NTAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTM1MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTM1MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERTVGODNDOTFGQTE4NjhBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1Ny5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzU3LmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMzU3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4
M0NBMUZBMTg2OEEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI0LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMjQuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMjQuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzQ0IxRkExODY4
QjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMyOS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMyOS5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNDQzFGQTE4NjhDMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTM2My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMzYzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzYzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0NEMUZBMTg2OEQwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzgxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UzODEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2UzODEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREU1RjgzQ0UxRkExODY4RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODYu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM4
Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTM4Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERTVGODNDRjFGQTE4NjhGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0Mi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzQyLmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
MzQyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0Qw
MUZBMTg2OEYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg1LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzODUuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzODUuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRDExRkExODY5MDAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM3NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM3NC5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNEMjFGQTE4NjkxMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM4My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlMzgzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzgzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFNUY4M0QzMUZBMTg2OTIwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzEzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UzMTMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UzMTMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1RjgzRDQxRkExODY5MzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDcuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMwNy5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTMwNy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODNENTFGQTE4Njk0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwNC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzA0LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzA0
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0Q2MUZB
MTg2OTUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMDUuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMDUuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRDcxRkExODY5NjAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzMTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTMxNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMxNS5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNEODFGQTE4Njk3MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTMzMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMzMxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzMxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFNUY4M0Q5MUZBMTg2OTgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzMzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UzMzMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UzMzMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREU1RjgzREExRkExODY5OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzYuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMzNi5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTMzNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVG
ODNEQjFGQTE4NjlBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzOC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzM4LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzM4LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0RDMUZBMTg2
OUIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNTkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNTkuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzREQxRkExODY5QzAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzNjUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTM2NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM2NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNERTFGQTE4NjlEMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTMyNS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlMzI1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlMzI1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFNUY4M0RGMUZBMTg2OUUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2Uz
MDkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UzMDkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREU1RjgzRTAxRkExODY5RjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzcuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMzNy5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTMzNy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNF
MTFGQTE4NkEwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2OS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzY5LmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzY5LmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0UyMUZBMTg2QTIw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNzAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNzAuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRTMxRkExODZBMzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzODQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTM4NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM4NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERTVGODNFNDFGQTE4NkE0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM4Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMzg3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMzg3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFNUY4M0U1MUZBMTg2QTYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE5LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMTku
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UzMTkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REU1RjgzRTYxRkExODZBNzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTkuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM5OS5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM5
OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNFNzFG
QTE4NkE4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1My5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzUzLmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzUzLmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0U4MUZBMTg2QTkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzY3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNjcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNjcuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRTkxRkExODZBQTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzMDMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTMwMy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMwMy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERTVGODNFQTFGQTE4NkFCMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM2MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMzYwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMzYwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFNUY4M0VCMUZBMTg2QUQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMDIuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UzMDIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1
RjgzRUMxRkExODZBRTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzkuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMzOS5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMzOS5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNFRDFGQTE4
NkFGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4OS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzg5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzg5LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0VFMUZBMTg2QjAwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzA2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2UzMDYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMDYuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRUYxRkExODZCMTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzMTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTMxNC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTMxNC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERTVGODNGMDFGQTE4NkIyMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0
NC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
MzQ0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMzQ0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFNUY4M0YxMUZBMTg2QjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzIzLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMjMuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UzMjMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjgz
RjIxRkExODZCNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM5NS5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM5NS5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNGMzFGQTE4NkI1
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzExLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzExLmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0Y0MUZBMTg2QjYwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzQ1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UzNDUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNDUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRjUxRkExODZCNzAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzNTguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTM1OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTM1OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERTVGODNGNjFGQTE4NkI4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyMC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzIw
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMzIwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFNUY4M0Y3MUZBMTg2QjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA4LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMDguY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Uz
MDguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRjgx
RkExODZCQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTMxMi5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTMxMi5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNGOTFGQTE4NkJCMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM5NC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzk0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzk0LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4M0ZBMUZBMTg2QkMwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzMwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2UzMzAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMzAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRkIxRkExODZCRDAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0MDAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTQwMC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTQwMC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERTVGODNGQzFGQTE4NkJFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2OC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzY4LmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlMzY4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
NUY4M0ZEMUZBMTg2QkYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI4LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMjguY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMjgu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1RjgzRkUxRkEx
ODZDMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM1Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM1Ni5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODNGRjFGQTE4NkMxMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTM0Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMzQ3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzQ3LmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NDAwMUZBMTg2QzIwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzQ4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UzNDguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNDguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREU1Rjg0MDExRkExODZDMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
NDMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTM0My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTM0My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERTVGODQwMjFGQTE4NkM0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4Mi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzgyLmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMzgyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4
NDAzMUZBMTg2QzUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg4LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzODguY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzODguY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0MDQxRkExODZD
NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM5My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM5My5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODQwNTFGQTE4NkM3MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTMxNy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMzE3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzE3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NDA2MUZBMTg2QzgwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzQxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UzNDEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2UzNDEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREU1Rjg0MDcxRkExODZDODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTEu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM1
MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTM1MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERTVGODQwODFGQTE4NkM5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2NC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzY0LmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
MzY0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NDA5
MUZBMTg2Q0EwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcxLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNzEuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNzEuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0MEExRkExODZDQjAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM3My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM3My5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODQwQjFGQTE4NkNDMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTMyNi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlMzI2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzI2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFNUY4NDBDMUZBMTg2Q0QwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzk3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UzOTcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UzOTcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1Rjg0MEQxRkExODZDRTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNDkuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM0OS5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTM0OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODQwRTFGQTE4NkNGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5Ni5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzk2LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzk2
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NDBGMUZB
MTg2RDAwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzMTguY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMTguY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0MTAxRkExODZEMTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzNDAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTM0MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTM0MC5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODQxMTFGQTE4NkQyMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTM3Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMzcyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzcyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFNUY4NDEyMUZBMTg2RDMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzI3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UzMjcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UzMjcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREU1Rjg0MTMxRkExODZENDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOTAuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTM5MC5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTM5MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVG
ODQxNDFGQTE4NkQ1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM0Ni5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMzQ2LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzQ2LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NDE1MUZBMTg2
RDYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UzNzkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzNzkuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0OUYxRkExQTQ3RTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0MDkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTQwOS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQwOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRBMDFGQTFBNDdGMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQwOC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlNDA4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlNDA4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFNUY4NEExMUZBMUE0ODAwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA3
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0
MDcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2U0MDcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREU1Rjg0QTIxRkExQTQ4MTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQzNC5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTQzNC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRB
MjFGQTFBNDgxMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4NC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDg0LmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDg0LmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEEzMUZBMUE0ODIw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MDIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MDIuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QTQxRkExQTQ4MzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0NDMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTQ0My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ0My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERTVGODRBNDFGQTFBNDgzMDA2REI2M0IgLyogVW5pZmllZFNv
dXJjZTQ5My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlNDkzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlNDkzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFNUY4NEE1MUZBMUE0ODMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI3LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0Mjcu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2U0MjcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REU1Rjg0QTYxRkExQTQ4NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDguY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ0OC5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ0
OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRBNjFG
QTFBNDg0MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5OC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDk4LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDk4LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEE3MUZBMUE0ODUwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDE4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MTguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MTguY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QTgxRkExQTQ4NjAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NDYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTQ0Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ0Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERTVGODRBODFGQTFBNDg2MDA2REI2M0IgLyogVW5pZmllZFNvdXJj
ZTQ5Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlNDk2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlNDk2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFNUY4NEE5MUZBMUE0ODcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMzLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MzMuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2U0MzMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1
Rjg0QTkxRkExQTQ4NzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODMuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ4My5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ4My5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRBQTFGQTFB
NDg4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDQ3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDQ3LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEFBMUZBMUE0ODgwMDZEQjYz
QiAvKiBVbmlmaWVkU291cmNlNDk3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2U0OTcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0OTcuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QUIxRkExQTQ4OTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0MjAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTQyMC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTQyMC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERTVGODRBQzFGQTFBNDhBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQy
NC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
NDI0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlNDI0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFNUY4NEFEMUZBMUE0OEIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMxLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MzEuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2U0MzEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0
QUQxRkExQTQ4QjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODEuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ4MS5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ4MS5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRBRTFGQTFBNDhD
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0NS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDQ1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDQ1LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEFFMUZBMUE0OEMwMDZEQjYzQiAv
KiBVbmlmaWVkU291cmNlNDk1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2U0OTUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0OTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QUYxRkExQTQ4RDAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2U0NDQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTQ0NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTQ0NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERTVGODRBRjFGQTFBNDhEMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5NC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDk0
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlNDk0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFNUY4NEIwMUZBMUE0OEUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQ5LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NDkuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0
NDkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QjAx
RkExQTQ4RTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0OTkuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ5OS5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ5OS5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRCMTFGQTFBNDhGMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDE1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDE1LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEIyMUZBMUE0OTAwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDE5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2U0MTkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MTkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QjMxRkExQTQ5MTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NTAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTQ1MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTQ1MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERTVGODRCMzFGQTFBNDkxMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUwMC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTAwLmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlNTAwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
NUY4NEI0MUZBMUE0OTEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MDQuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MDQu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QjUxRkEx
QTQ5MzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQxNy5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQxNy5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRCNjFGQTFBNDkzMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQ0MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlNDQxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDQxLmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEI2MUZBMUE0OTMwMDZEQjYzQiAvKiBVbmlm
aWVkU291cmNlNDkxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2U0OTEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0OTEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREU1Rjg0QjcxRkExQTQ5NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
MTMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTQxMy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTQxMy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERTVGODRCODFGQTFBNDk1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDE0LmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlNDE0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4
NEI5MUZBMUE0OTYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE2LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MTYuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MTYuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QkExRkExQTQ5
NzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQwNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQwNi5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRCQjFGQTFBNDk4MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQzMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlNDMwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDMwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEJDMUZBMUE0OTkwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDI2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2U0MjYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U0MjYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREU1Rjg0QkQxRkExQTQ5QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NDAu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ0
MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTQ0MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERTVGODRCRDFGQTFBNDlBMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5MC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDkwLmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
NDkwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEJF
MUZBMUE0OUIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA1LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MDUuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MDUuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QkYxRkExQTQ5QzAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQwMy5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQwMy5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRDMDFGQTFBNDlEMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQ0Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlNDQyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDQyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFNUY4NEMwMUZBMUE0OUQwMDZEQjYzQiAvKiBVbmlmaWVkU291
cmNlNDkyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U0OTIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2U0OTIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1Rjg0QzExRkExQTQ5RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQxMi5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTQxMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODRDMjFGQTFBNDlGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyOC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDI4LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDI4
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEMzMUZB
MUE0OUYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MjMuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MjMuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QzQxRkExQTRBMDAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0MzUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTQzNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQzNS5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRDNDFGQTFBNEEwMDA2REI2M0IgLyogVW5p
ZmllZFNvdXJjZTQ4NS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlNDg1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDg1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFNUY4NEM1MUZBMUE0QTEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDM3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2U0MzcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2U0MzcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREU1Rjg0QzUxRkExQTRBMTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODcuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ4Ny5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTQ4Ny5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVG
ODRDNjFGQTFBNEEyMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzOC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDM4LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDM4LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NEM2MUZBMUE0
QTIwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDg4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0ODguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0ODguY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0QzcxRkExQTRBMzAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0MjkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTQyOS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQyOS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRDODFGQTFBNEE0MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQzMi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlNDMyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlNDMyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFNUY4NEM4MUZBMUE0QTQwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDgy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0
ODIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2U0ODIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREU1Rjg0QzkxRkExQTRBNTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTAuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQxMC5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTQxMC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRD
QTFGQTFBNEE2MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxMS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDExLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDExLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NENCMUZBMUE0QTcw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MjEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0MjEuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0Q0MxRkExQTRBODAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0MzYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTQzNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQzNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERTVGODRDQzFGQTFBNEE4MDA2REI2M0IgLyogVW5pZmllZFNv
dXJjZTQ4Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlNDg2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlNDg2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFNUY4NENEMUZBMUE0QTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI1LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0MjUu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2U0MjUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REU1Rjg0Q0UxRkExQTRBQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQyMi5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQy
Mi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODRDRjFG
QTFBNEFCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzOS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDM5LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDM5LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NENGMUZBMUE0QUIwMDZE
QjYzQiAvKiBVbmlmaWVkU291cmNlNDg5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0ODkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0ODkuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg0RDAxRkExQTRBQzAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0MDEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTQwMS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQwMS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERTVGODUzRDFGQTFBQkIyMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTgtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmll
ZFNvdXJjZTgtbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U4LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREU1Rjg1M0UxRkExQUJCMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxNS1t
bS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291
cmNlMTUtbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UxNS1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFNUY4NTNGMUZBMUFCQjQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjgtbW0u
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJj
ZTI4LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMjgtbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERTVGODU0MDFGQTFBQkI1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1LW1tLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2Uz
NS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTM1LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREU1Rjg1NDExRkExQUJCNjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyMy1tbS5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMjMt
bW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UyMy1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFNUY4NTQyMUZBMUFCQjcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAtbW0ubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTMwLW1t
Lm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMzAtbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERTVGODU0MzFGQTFBQkI4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0LW1tLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U0NC1tbS5t
bSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTQ0LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REU1Rjg1NDQxRkExQUJCOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Ni1tbS5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlNDYtbW0ubW0i
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2U0Ni1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
NUY4NTQ1MUZBMUFCQkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzctbW0ubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTM3LW1tLm1tIjsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMzctbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVG
ODU0NjFGQTFBQkJCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI0LW1tLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2UyNC1tbS5tbSI7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTI0LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1
NDcxRkExQUJCQjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyNS1tbS5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMjUtbW0ubW0iOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Uy
NS1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTQ4
MUZBMUFCQkMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMtbW0ubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTQzLW1tLm1tIjsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDMt
bW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU0OTFG
QTFBQkJEMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTQtbW0ubW0iOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0LW1tLm1t
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NEExRkExQUJC
RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxNy1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMTctbW0ubW0iOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNy1tbS5tbSI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTRCMUZBMUFCQkYw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDktbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTQ5LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDktbW0ubW0iOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU0QzFGQTFBQkMwMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTUwLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U1MC1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUwLW1tLm1tIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NEQxRkExQUJDMTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UyMi1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMjItbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMi1tbS5tbSI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTRFMUZBMUFCQzIwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMTQtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTE0LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTQtbW0ubW0iOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU0RjFGQTFBQkMzMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQyLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gIlVuaWZpZWRTb3VyY2U0Mi1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQyLW1tLm1tIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NTAxRkExQUJDMzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UxOC1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
bmFtZSA9ICJVbmlmaWVkU291cmNlMTgtbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxOC1tbS5tbSI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTUxMUZBMUFCQzQwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzEtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5h
bWUgPSAiVW5pZmllZFNvdXJjZTMxLW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzEtbW0ubW0iOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU1MjFGQTFBQkM1MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTIwLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1l
ID0gIlVuaWZpZWRTb3VyY2UyMC1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIwLW1tLm1tIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NTMxRkExQUJDNjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UxOS1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9
ICJVbmlmaWVkU291cmNlMTktbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxOS1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTU0MUZBMUFCQzcwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlOS1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJV
bmlmaWVkU291cmNlOS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTktbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERTVGODU1NTFGQTFBQkM4MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM2LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZp
ZWRTb3VyY2UzNi1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTM2LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREU1Rjg1NTYxRkExQUJDOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
MC1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVk
U291cmNlNDAtbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U0MC1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFNUY4NTU3MUZBMUFCQ0EwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQt
bW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNv
dXJjZTM0LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMzQtbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERTVGODU1ODFGQTFBQkNCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1LW1t
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3Vy
Y2U0NS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTQ1LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1Rjg1NTkxRkExQUJDQzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOS1tbS5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNl
MzktbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UzOS1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFNUY4NTVBMUZBMUFCQ0QwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjEtbW0ubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTIx
LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMjEtbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERTVGODU1QjFGQTFBQkNFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzLW1tLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2UzMy1t
bS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTMzLW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREU1Rjg1NUMxRkExQUJDRTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzOC1tbS5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlMzgtbW0u
bW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UzOC1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFNUY4NTVEMUZBMUFCQ0YwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjYtbW0ubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTI2LW1tLm1t
IjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlMjYtbW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODU1RTFGQTFBQkQwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTE2LW1tLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2UxNi1tbS5tbSI7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTE2LW1tLm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1
Rjg1NUYxRkExQUJEMTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U3LW1tLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U3LW1tLm1tIjsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
Ny1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTYw
MUZBMUFCRDIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzItbW0ubW0gKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTMyLW1tLm1tIjsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMzIt
bW0ubW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU2MTFG
QTFBQkQzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTExLW1tLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2UxMS1tbS5tbSI7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTExLW1t
Lm1tIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NjIxRkEx
QUJENDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Ny1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlNDctbW0ubW0iOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0Ny1tbS5t
bSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTYzMUZBMUFC
RDUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMTAtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTEwLW1tLm1tIjsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTAtbW0ubW0i
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU2NDFGQTFBQkQ1
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTEyLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2UxMi1tbS5tbSI7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEyLW1tLm1tIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NjUxRkExQUJENjAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U1LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNS1tbS5tbSI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTY2MUZBMUFCRDcwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDEtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTQxLW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDEtbW0ubW0iOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU2NzFGQTFBQkQ4MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ4LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gIlVuaWZpZWRTb3VyY2U0OC1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ4LW1tLm1tIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NjgxRkExQUJEOTAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UyOS1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
bmFtZSA9ICJVbmlmaWVkU291cmNlMjktbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyOS1tbS5tbSI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NTY5MUZBMUFCREEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMjctbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5h
bWUgPSAiVW5pZmllZFNvdXJjZTI3LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjctbW0ubW0iOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODU2QTFGQTFBQkRCMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTEzLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1l
ID0gIlVuaWZpZWRTb3VyY2UxMy1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTEzLW1tLm1tIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1NkIxRkExQUJEQjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U2LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0g
IlVuaWZpZWRTb3VyY2U2LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNi1tbS5tbSI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFNUY4NUI2MUZBMjM4MzUwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDY4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U0NjguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2U0NjguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1Rjg1QjYxRkEyMzgzNTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTguY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUxOC5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTUxOC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODVCNzFGQTIzODM1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2OS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDY5LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDY5
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUI3MUZB
MjM4MzUwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTE5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1MTkuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MTkuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QjgxRkEyMzgzNjAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0NTguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTQ1OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ1OC5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVCODFGQTIzODM2MDA2REI2M0IgLyogVW5p
ZmllZFNvdXJjZTUwOC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlNTA4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTA4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFNUY4NUI5MUZBMjM4MzcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDY0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2U0NjQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2U0NjQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREU1Rjg1QjkxRkEyMzgzNzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUxNC5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTUxNC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVG
ODVCQTFGQTIzODM4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2Ni5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDY2LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDY2LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUJBMUZBMjM4
MzgwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTE2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1MTYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MTYuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QkIxRkEyMzgzOTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0NTEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTQ1MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ1MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVCQjFGQTIzODM5MDA2REI2M0IgLyogVW5pZmll
ZFNvdXJjZTUwMS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlNTAxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlNTAxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFNUY4NUJDMUZBMjM4M0EwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0
NjIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2U0NjIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREU1Rjg1QkMxRkEyMzgzQTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUxMi5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTUxMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVC
RDFGQTIzODNBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ1My5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDUzLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDUzLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUJEMUZBMjM4M0Ew
MDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTAzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1MDMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MDMuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QkUxRkEyMzgzQjAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0NTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTQ1Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ1Ny5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERTVGODVCRTFGQTIzODNCMDA2REI2M0IgLyogVW5pZmllZFNv
dXJjZTUwNy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlNTA3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlNTA3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFNUY4NUJGMUZBMjM4M0MwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY1LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NjUu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2U0NjUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REU1Rjg1QkYxRkEyMzgzQzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUxNS5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUx
NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDMDFG
QTIzODNEMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2MC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDYwLmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDYwLmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUMwMUZBMjM4M0QwMDZE
QjYzQiAvKiBVbmlmaWVkU291cmNlNTEwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U1MTAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MTAuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QzExRkEyMzgzRTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NzAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTQ3MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ3MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERTVGODVDMTFGQTIzODNFMDA2REI2M0IgLyogVW5pZmllZFNvdXJj
ZTUyMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlNTIwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlNTIwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFNUY4NUMyMUZBMjM4M0YwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NTIuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2U0NTIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1
Rjg1QzIxRkEyMzgzRjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUwMi5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUwMi5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDMzFGQTIz
ODQwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2My5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDYzLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDYzLmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUMzMUZBMjM4NDAwMDZEQjYz
QiAvKiBVbmlmaWVkU291cmNlNTEzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2U1MTMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MTMuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QzQxRkEyMzg0MjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0NzEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTQ3MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTQ3MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERTVGODVDNDFGQTIzODQyMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUy
MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
NTIxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlNTIxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFNUY4NUM1MUZBMjM4NDMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU2LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NTYuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2U0NTYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1
QzUxRkEyMzg0MzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDYuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUwNi5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUwNi5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDNjFGQTIzODQ0
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDc3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDc3LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUM2MUZBMjM4NDQwMDZEQjYzQiAv
KiBVbmlmaWVkU291cmNlNTI3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2U1MjcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MjcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1QzcxRkEyMzg0NTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2U0NTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTQ1NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTQ1NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERTVGODVDNzFGQTIzODQ1MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUwNS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTA1
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlNTA1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFNUY4NUM4MUZBMjM4NDYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NTQuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0
NTQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1Qzgx
RkEyMzg0NjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MDQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUwNC5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUwNC5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDOTFGQTIzODQ4MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNDcyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDcyLmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUM5MUZBMjM4NDgwMDZEQjYzQiAvKiBV
bmlmaWVkU291cmNlNTIyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2U1MjIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MjIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1Q0ExRkEyMzg0QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NzMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTQ3My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTQ3My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERTVGODVDQTFGQTIzODRBMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyMy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTIzLmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlNTIzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
NUY4NUNCMUZBMjM4NEIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY3LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NjcuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0Njcu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1Q0IxRkEy
Mzg0QjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MTcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUxNy5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUxNy5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDQzFGQTIzODRDMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQ2MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlNDYxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDYxLmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUNDMUZBMjM4NEMwMDZEQjYzQiAvKiBVbmlm
aWVkU291cmNlNTExLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2U1MTEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1MTEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREU1Rjg1Q0QxRkEyMzg0RDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
NzQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTQ3NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTQ3NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERTVGODVDRDFGQTIzODREMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyNC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTI0LmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlNTI0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4
NUNFMUZBMjM4NEUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc1LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NzUuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0NzUuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1Q0UxRkEyMzg0
RTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUyNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUyNS5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVDRjFGQTIzODUwMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ3OS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlNDc5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDc5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUNGMUZBMjM4NTAwMDZEQjYzQiAvKiBVbmlmaWVk
U291cmNlNTI5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2U1MjkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2U1MjkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREU1Rjg1RDAxRkEyMzg1MjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NTku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ1
OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTQ1OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERTVGODVEMDFGQTIzODUyMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUwOS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTA5LmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
NTA5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NUQx
MUZBMjM4NTQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc2LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2U0NzYuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U0NzYuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg1RDExRkEyMzg1NDAw
NkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTUyNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUyNi5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODVEMjFGQTIzODU2MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQ3OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlNDc4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNDc4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFNUY4NUQyMUZBMjM4NTYwMDZEQjYzQiAvKiBVbmlmaWVkU291
cmNlNTI4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2U1MjguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2U1MjguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREU1Rjg1RDMxRkEyMzg1OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0ODAuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTQ4MC5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTQ4MC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RTVGODVEMzFGQTIzODU5MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUzMC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlNTMwLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTMw
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NjMyMUZB
MkFFRkYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTktbW0ubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTU5LW1tLm1tIjsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTktbW0u
bW0iOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODYzMzFGQTJB
RjAwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU0LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U1NC1tbS5tbSI7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTU0LW1tLm1t
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg2MzQxRkEyQUYw
MTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1Ni1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlNTYtbW0ubW0iOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1Ni1tbS5tbSI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NjM1MUZBMkFGMDMw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTMtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTUzLW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTMtbW0ubW0iOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODYzNjFGQTJBRjA0MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTUxLW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gIlVuaWZpZWRTb3VyY2U1MS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTUxLW1tLm1tIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg2MzcxRkEyQUYwNTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U1Mi1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgbmFtZSA9ICJVbmlmaWVkU291cmNlNTItbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U1Mi1tbS5tbSI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NjM4MUZBMkFGMDYwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNTctbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IG5hbWUgPSAiVW5pZmllZFNvdXJjZTU3LW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNTctbW0ubW0iOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODYzOTFGQTJBRjA3MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTU4LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBuYW1lID0gIlVuaWZpZWRTb3VyY2U1OC1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTU4LW1tLm1tIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREU1Rjg2M0ExRkEyQUYwNzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U2MC1tbS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
bmFtZSA9ICJVbmlmaWVkU291cmNlNjAtbW0ubW0iOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2U2MC1tbS5tbSI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFNUY4NjNBMUZBMkFGMDcwMDZEQjYzQiAvKiBV
bmlmaWVkU291cmNlNjEtbW0ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5h
bWUgPSAiVW5pZmllZFNvdXJjZTYxLW1tLm1tIjsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlNjEtbW0ubW0iOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERTVGODYzQjFGQTJBRjA4MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTU1LW1tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1l
ID0gIlVuaWZpZWRTb3VyY2U1NS1tbS5tbSI7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTU1LW1tLm1tIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDMjk3NUQxQjRERUIyQTAwNUY1OTQ1IC8qIEpTQ3Vz
dG9tRXZlbnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SlNDdXN0b21FdmVudEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURF
Q0E3RDZBMUY5RTYxQ0IwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNDQuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNDQu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdENkIxRjlF
NjFDQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDguY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE0OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE0OC5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q2QzFGOUU2MUNFMDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTE1OS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMTU5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTU5LmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDZEMUY5RTYxQ0YwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTMxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UxMzEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMzEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREVDQTdENkUxRjlFNjFEMDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
NjkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTE2OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTE2OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERUNBN0Q2RjFGOUU2MUQyMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1My5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTUzLmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMTUzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3
RDcwMUY5RTYxRDMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTY3LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNjcuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNjcuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdENzExRjlFNjFE
NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE2My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE2My5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q3MjFGOUU2MUQ1MDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTE0Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMTQ2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTQ2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDczMUY5RTYxRDYwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTQ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UxNDkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2UxNDkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREVDQTdENzQxRjlFNjFENzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTcu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE1
Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTE1Ny5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERUNBN0Q3NTFGOUU2MUQ5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzOS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTM5LmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
MTM5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDc2
MUY5RTYxREEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU4LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNTguY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNTguY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdENzcxRjlFNjFEQjAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE1Mi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE1Mi5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q3ODFGOUU2MURDMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTE2OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlMTY4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTY4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDc5MUY5RTYxREQwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UxNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UxNTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREVDQTdEN0ExRjlFNjFERTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNjQuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE2NC5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTE2NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RUNBN0Q3QjFGOUU2MUUwMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzOC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTM4LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTM4
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDdDMUY5
RTYxRTEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMzcuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMzcuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEN0QxRjlFNjFFMjAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UxNjUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTE2NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE2NS5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q3RTFGOUU2MUUzMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTEzMi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMTMyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTMyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFQ0E3RDdGMUY5RTYxRTQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTU2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UxNTYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UxNTYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREVDQTdEODAxRjlFNjFFNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTEzMy5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTEzMy5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNB
N0Q4MTFGOUU2MUU2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTM1LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTM1LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDgyMUY5RTYx
RTgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNDAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNDAuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEODMxRjlFNjFFOTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxNDUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTE0NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE0NS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q4NDFGOUU2MUVBMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTE1MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlMTUwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlMTUwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFQ0E3RDg1MUY5RTYxRUIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2Ux
NDIuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UxNDIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREVDQTdEODYxRjlFNjFFQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE1NC5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTE1NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q4
NzFGOUU2MUVFMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE2MC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTYwLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTYwLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDg4MUY5RTYxRUYw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTYxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNjEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNjEuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEODkxRjlFNjFGMDAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UxNjIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTE2Mi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE2Mi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q4QTFGOUU2MUYxMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTEzNi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMTM2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMTM2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFQ0E3RDhCMUY5RTYxRjMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQxLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNDEu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UxNDEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REVDQTdEOEMxRjlFNjFGNDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE0My5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE0
My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Q4RDFG
OUU2MUY1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTQ3LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTQ3LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RDhFMUY5RTYxRjYwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTM0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxMzQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxMzQuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEOEYxRjlFNjFGNzAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UxNjYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTE2Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE2Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERUNBN0Q5MDFGOUU2MUY4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTE1MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMTUxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMTUxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFQ0E3RDkxMUY5RTYxRjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcwLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNzAuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UxNzAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVD
QTdERDMxRjlFQjMyMTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDkuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIwOS5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIwOS5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RENDFGOUVC
MzIzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTk3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTk3LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REQ1MUY5RUIzMjQwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTg4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2UxODguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxODguY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERDYxRjlFQjMyNTAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyMDYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTIwNi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTIwNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERUNBN0RENzFGOUVCMzI3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4
Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
MTgyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMTgyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFQ0E3REQ4MUY5RUIzMjgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk2LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxOTYuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UxOTYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdE
RDkxRjlFQjMyOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE4My5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE4My5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0REQTFGOUVCMzJC
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwOC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjA4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjA4LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RERCMUY5RUIzMkMwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjEwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UyMTAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMTAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEREMxRjlFQjMyRTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UxOTIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTE5Mi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTE5Mi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERUNBN0RERDFGOUVCMzJGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE3OS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTc5
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMTc5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFQ0E3RERFMUY5RUIzMzEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxODQuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Ux
ODQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdEREYx
RjlFQjMzMjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIwMi5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIwMi5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RFMDFGOUVCMzMzMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTIwNy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjA3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjA3LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REUxMUY5RUIzMzUwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTk4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2UxOTguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxOTguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERTIxRjlFQjMzNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UxOTEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTE5MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTE5MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERUNBN0RFMzFGOUVCMzM3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4NS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTg1LmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlMTg1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
Q0E3REU0MUY5RUIzMzkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA0LmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMDQuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMDQu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERTUxRjlF
QjMzQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNzcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE3Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE3Ny5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RFNjFGOUVCMzNCMDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTE3NS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMTc1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTc1LmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REU3MUY5RUIzM0MwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjAzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UyMDMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMDMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREVDQTdERTgxRjlFQjMzRTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
NzMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTE3My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTE3My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERUNBN0RFOTFGOUVCMzNGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4MS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTgxLmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMTgxLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3
REVBMUY5RUIzNDAwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxOTMuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxOTMuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERUIxRjlFQjM0
MTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE5NS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE5NS5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RFQzFGOUVCMzQyMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTE3NC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMTc0LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTc0LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REVEMUY5RUIzNDQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTg5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UxODkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2UxODkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREVDQTdERUUxRjlFQjM0NTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNzYu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE3
Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTE3Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERUNBN0RFRjFGOUVCMzQ2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4MC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMTgwLmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
MTgwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REYw
MUY5RUIzNDcwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg2LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxODYuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxODYuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERjExRjlFQjM0ODAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE5NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE5NC5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RGMjFGOUVCMzRBMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTE3Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlMTcyLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTcyLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFQ0E3REYzMUY5RUIzNEIwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjAwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UyMDAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UyMDAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREVDQTdERjQxRjlFQjM0QzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDEuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIwMS5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTIwMS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RUNBN0RGNTFGOUVCMzREMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwNS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjA1LmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjA1
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3REY2MUY5
RUIzNEUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UxNzEuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UxNzEuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdERjcxRjlFQjM0RjAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UxODcuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTE4Ny5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTE4Ny5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0RGODFGOUVCMzUxMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTE5MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMTkwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMTkwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFQ0E3REY5MUY5RUIzNTIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTk5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UxOTkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UxOTkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREVDQTdERkExRjlFQjM1MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNzguY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTE3OC5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTE3OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNB
N0UzMDFGOUVCRDMyMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIyMC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjIwLmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjIwLmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RTMxMUY5RUJE
MzQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjIzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMjMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMjMuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFMzIxRjlFQkQzNTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyMjguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTIyOC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIyOC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0UzMzFGOUVCRDM2MDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTIxOS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlMjE5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlMjE5LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFQ0E3RTM0MUY5RUJEMzcwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI5
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2Uy
MjkuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UyMjkuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREVDQTdFMzUxRjlFQkQzODAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjYuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIyNi5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTIyNi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0Uz
NjFGOUVCRDM5MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzMy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjMzLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjMzLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RTM3MUY5RUJEM0Ew
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjMxLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMzEuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMzEuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFMzgxRjlFQkQzQjAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyMTIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTIxMi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIxMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERUNBN0UzOTFGOUVCRDNDMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTIxNi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMjE2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMjE2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFQ0E3RTNBMUY5RUJEM0QwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjMyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMzIu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UyMzIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REVDQTdFM0IxRjlFQkQzRTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzguY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIzOC5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIz
OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0UzQzFG
OUVCRDNGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzOS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjM5LmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjM5LmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RTNEMUY5RUJENDAwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjQwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNDAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNDAuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFM0UxRjlFQkQ0MTAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyMTEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTIxMS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIxMS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERUNBN0UzRjFGOUVCRDQyMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTIzMC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMjMwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMjMwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFQ0E3RTQwMUY5RUJENDMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE0LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMTQuY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UyMTQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVD
QTdFNDExRjlFQkQ0NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzYuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIzNi5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIzNi5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0U0MjFGOUVC
RDQ1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzNS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjM1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjM1LmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RTQzMUY5RUJENDYwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjE4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2UyMTguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMTguY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFNDQxRjlFQkQ0NzAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyMTUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTIxNS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTIxNS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERUNBN0U0NTFGOUVCRDQ4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIx
Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
MjE3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMjE3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFQ0E3RTQ2MUY5RUJENDkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjIxLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMjEuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UyMjEuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdF
NDcxRjlFQkQ0QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIzNC5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIzNC5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0U0ODFGOUVCRDRC
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzNy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjM3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjM3LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RTQ5MUY5RUJENEMwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjI0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UyMjQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyMjQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFNEExRjlFQkQ0RDAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyMjIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTIyMi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTIyMi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERUNBN0U0QjFGOUVCRDRFMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIxMy5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjEz
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMjEzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFQ0E3RTRDMUY5RUJENEYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI1LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyMjUuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Uy
MjUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdFNEQx
RjlFQkQ1MDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMjcuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTIyNy5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTIyNy5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZCQTFGOUZFOTgyMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTI3MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjcxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjcxLmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkJCMUY5RkU5ODMwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMzAwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2UzMDAuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UzMDAuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGQkMxRjlGRTk4NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyNzMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTI3My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTI3My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERUNBN0ZCRDFGOUZFOTg1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5MC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjkwLmNw
cDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVk
U291cmNlMjkwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURF
Q0E3RkJFMUY5RkU5ODYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNjIuY3BwOyBwYXRoID0g
IkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNjIu
Y3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGQkYxRjlG
RTk4NzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1My5jcHA7IHBhdGggPSAiRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1My5jcHAiOyBzb3Vy
Y2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZDMDFGOUZFOTg4MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTI1MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IG5hbWUgPSBVbmlmaWVkU291cmNlMjUwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJD
b3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjUwLmNwcCI7IHNvdXJjZVRyZWUgPSBC
VUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkMxMUY5RkU5ODkwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjc0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVu
aWZpZWRTb3VyY2UyNzQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmll
ZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNzQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJREVDQTdGQzIxRjlGRTk4QTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
ODEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJj
ZTI4MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMv
VW5pZmllZFNvdXJjZTI4MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlERUNBN0ZDMzFGOUZFOThCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0Ny5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjQ3LmNwcDsg
cGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291
cmNlMjQ3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3
RkM0MUY5RkU5OEMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjgwLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyODAuY3BwOyBwYXRoID0gIkRl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyODAuY3Bw
Ijsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGQzUxRjlGRTk4
RDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI2OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI2OS5jcHAiOyBzb3VyY2VU
cmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZDNjFGOUZFOThFMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTI5NS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5h
bWUgPSBVbmlmaWVkU291cmNlMjk1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3Jl
L3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjk1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkM3MUY5RkU5OEYwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjU3LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZp
ZWRTb3VyY2UyNTcuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1z
b3VyY2VzL1VuaWZpZWRTb3VyY2UyNTcuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RT
X0RJUjsgfTsKKwkJREVDQTdGQzgxRjlGRTk5MDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTgu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI1
OC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5p
ZmllZFNvdXJjZTI1OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlERUNBN0ZDOTFGOUZFOTkxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5My5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjkzLmNwcDsgcGF0
aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNl
MjkzLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkNB
MUY5RkU5OTIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNzkuY3BwOyBwYXRoID0gIkRlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNzkuY3BwIjsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGQ0IxRjlGRTk5MzAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI2MS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI2MS5jcHAiOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZDQzFGOUZFOTk0MDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTI2Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBVbmlmaWVkU291cmNlMjY3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3Vu
aWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjY3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkNEMUY5RkU5OTUwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjk4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRT
b3VyY2UyOTguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3Vy
Y2VzL1VuaWZpZWRTb3VyY2UyOTguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJREVDQTdGQ0UxRjlGRTk5NjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTEuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI5MS5j
cHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmll
ZFNvdXJjZTI5MS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlE
RUNBN0ZDRjFGOUZFOTk3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI3Mi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjcyLmNwcDsgcGF0aCA9
ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjcy
LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkQwMUY5
RkU5OTgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNDIuY3BwOyBwYXRoID0gIkRlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNDIuY3BwIjsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRDExRjlGRTk5ODAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyNjAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gVW5pZmllZFNvdXJjZTI2MC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI2MC5jcHAiOyBzb3VyY2VUcmVlID0g
QlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZEMjFGOUZFOTk5MDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTI2OC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBV
bmlmaWVkU291cmNlMjY4LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZp
ZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjY4LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CisJCURFQ0E3RkQzMUY5RkU5OUEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
Mjg4LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3Vy
Y2UyODguY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2Vz
L1VuaWZpZWRTb3VyY2UyODguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsg
fTsKKwkJREVDQTdGRDQxRjlGRTk5QjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzguY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI3OC5jcHA7
IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNv
dXJjZTI3OC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNB
N0ZENTFGOUZFOTlDMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0OS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjQ5LmNwcDsgcGF0aCA9ICJE
ZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjQ5LmNw
cCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkQ2MUY5RkU5
OUUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyODQuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyODQuY3BwIjsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRDcxRjlGRTk5RjAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyNjQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gVW5pZmllZFNvdXJjZTI2NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29y
ZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI2NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJ
TFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZEODFGOUZFOUEwMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTI2Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlm
aWVkU291cmNlMjY2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQt
c291cmNlcy9VbmlmaWVkU291cmNlMjY2LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7IH07CisJCURFQ0E3RkQ5MUY5RkU5QTEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc2
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2Uy
NzYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1Vu
aWZpZWRTb3VyY2UyNzYuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJREVDQTdGREExRjlGRTlBMjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTkuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI5OS5jcHA7IHBh
dGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJj
ZTI5OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZE
QjFGOUZFOUEzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1MS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjUxLmNwcDsgcGF0aCA9ICJEZXJp
dmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjUxLmNwcCI7
IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkRDMUY5RkU5QTMw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNjUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2Vz
L1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNjUuY3BwIjsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGREQxRjlGRTlBNDAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyODIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1l
ID0gVW5pZmllZFNvdXJjZTI4Mi5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91
bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI4Mi5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZERTFGOUZFOUE1MDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTI3MC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVk
U291cmNlMjcwLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291
cmNlcy9VbmlmaWVkU291cmNlMjcwLmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19E
SVI7IH07CisJCURFQ0E3RkRGMUY5RkU5QTYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTQu
Y3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZp
ZWRTb3VyY2UyNTQuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJ
REVDQTdGRTAxRjlGRTlBNzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNzcuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI3Ny5jcHA7IHBhdGgg
PSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI3
Ny5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZFMTFG
OUZFOUE4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5Mi5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjkyLmNwcDsgcGF0aCA9ICJEZXJpdmVk
U291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjkyLmNwcCI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkUyMUY5RkU5QTkwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjQ2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNDYuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNDYuY3BwIjsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRTMxRjlGRTlBQTAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyNTkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0g
VW5pZmllZFNvdXJjZTI1OS5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlm
aWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI1OS5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlERUNBN0ZFNDFGOUZFOUFCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTI5Ny5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291
cmNlMjk3LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNl
cy9VbmlmaWVkU291cmNlMjk3LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7
IH07CisJCURFQ0E3RkU1MUY5RkU5QUMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ4LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNDguY3Bw
OyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRT
b3VyY2UyNDguY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVD
QTdGRTYxRjlGRTlBQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyODcuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI4Ny5jcHA7IHBhdGggPSAi
RGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI4Ny5j
cHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZFNzFGOUZF
OUFEMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0MS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjQxLmNwcDsgcGF0aCA9ICJEZXJpdmVkU291
cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjQxLmNwcCI7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkU4MUY5RkU5QUUwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjc1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
bmFtZSA9IFVuaWZpZWRTb3VyY2UyNzUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNv
cmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNzUuY3BwIjsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRTkxRjlGRTlBRjAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyODMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5p
ZmllZFNvdXJjZTI4My5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVk
LXNvdXJjZXMvVW5pZmllZFNvdXJjZTI4My5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVD
VFNfRElSOyB9OworCQlERUNBN0ZFQTFGOUZFOUIwMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0
NS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNl
MjQ1LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9V
bmlmaWVkU291cmNlMjQ1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCURFQ0E3RkVCMUY5RkU5QjEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQzLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNDMuY3BwOyBw
YXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3Vy
Y2UyNDMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdG
RUMxRjlGRTlCMjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI0NC5jcHA7IHBhdGggPSAiRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI0NC5jcHAi
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZFRDFGOUZFOUIz
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4Ni5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjg2LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNl
cy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjg2LmNwcCI7IHNvdXJjZVRy
ZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkVFMUY5RkU5QjQwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjYzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IFVuaWZpZWRTb3VyY2UyNjMuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
dW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNjMuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxU
X1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRUYxRjlGRTlCNTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyOTQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmll
ZFNvdXJjZTI5NC5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNv
dXJjZXMvVW5pZmllZFNvdXJjZTI5NC5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNf
RElSOyB9OworCQlERUNBN0ZGMDFGOUZFOUI2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI4NS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjg1
LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9XZWJDb3JlL3VuaWZpZWQtc291cmNlcy9Vbmlm
aWVkU291cmNlMjg1LmNwcCI7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJ
CURFQ0E3RkYxMUY5RkU5QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFVuaWZpZWRTb3VyY2UyNTIuY3BwOyBwYXRo
ID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5pZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2Uy
NTIuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRjIx
RjlGRTlCNzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTYuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNvdXJjZTI5Ni5jcHA7IHBhdGggPSAiRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJjZXMvVW5pZmllZFNvdXJjZTI5Ni5jcHAiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlERUNBN0ZGMzFGOUZFOUI4MDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTI4OS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBVbmlmaWVkU291cmNlMjg5LmNwcDsgcGF0aCA9ICJEZXJpdmVkU291cmNlcy9X
ZWJDb3JlL3VuaWZpZWQtc291cmNlcy9VbmlmaWVkU291cmNlMjg5LmNwcCI7IHNvdXJjZVRyZWUg
PSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCURFQ0E3RkY0MUY5RkU5QjkwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjU1LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IFVuaWZpZWRTb3VyY2UyNTUuY3BwOyBwYXRoID0gIkRlcml2ZWRTb3VyY2VzL1dlYkNvcmUvdW5p
ZmllZC1zb3VyY2VzL1VuaWZpZWRTb3VyY2UyNTUuY3BwIjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKKwkJREVDQTdGRjUxRjlGRTlCQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyNTYuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gVW5pZmllZFNv
dXJjZTI1Ni5jcHA7IHBhdGggPSAiRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS91bmlmaWVkLXNvdXJj
ZXMvVW5pZmllZFNvdXJjZTI1Ni5jcHAiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlERjE5RTJBQTI0NzcyOUE2MDA3QkRBQ0IgLyogU2hvdWxkUmVsYXhUaGlyZFBhcnR5
Q29va2llQmxvY2tpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hvdWxk
UmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJREYzNjVEMDQyNUE5ODRDODAwNUREQjhDIC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRp
bWluZy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjM2NUQwNjI1QTk4NEM4MDA1RERC
OEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlcmZv
cm1hbmNlTmF2aWdhdGlvblRpbWluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlE
RjM2NUQwNzI1QTk4NEM5MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuaWRsOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlERjRFMzhEQzI1Mjc5NTkzMDAyQTc0ODEgLyogVmVyc2lvbkNoZWNrcy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFZlcnNpb25DaGVja3Mu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGNEUzOERFMjUyNzk1OTQwMDJBNzQ4
MSAvKiBWZXJzaW9uQ2hlY2tzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFZl
cnNpb25DaGVja3MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREY3RTlBMjk0QzdB
QUNFMEFEODlCM0REIC8qIE1hdGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNYXRoTUxPcGVyYXRvckRpY3Rpb25hcnkuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREY5NUIxNDYyNEZEQUZEMjAwQjFGNEQ3IC8qIFRleHRDb2Rl
Y0NKSy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZXh0Q29kZWND
SksuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjk1QjE0ODI0RkRBRkQzMDBC
MUY0RDcgLyogVGV4dENvZGVjQ0pLLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFRleHRDb2RlY0NKSy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERjlBRkQ3MDEz
RkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCURGOUFGRDcxMTNGQzMx
RDgwMDE1RkVCNyAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uT2JqQy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREZCNEExOUMy
NjE3N0Q2ODAwNTY3NkEyIC8qIExvY2FsaXplZERhdGVDYWNoZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBMb2NhbGl6ZWREYXRlQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJREZCNEExOUQyNjE3N0Q2OTAwNTY3NkEyIC8qIExvY2FsaXplZERhdGVDYWNo
ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IExvY2FsaXplZERh
dGVDYWNoZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJREZDNjEwQTIyNEZCMkE3
QzAwNjI1NEM4IC8qIEVuY29kaW5nVGFibGVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEVuY29kaW5nVGFibGVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJREZDNjEwQTQyNEZCMkE3RDAwNjI1NEM4IC8qIEVuY29kaW5nVGFibGVzLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVuY29kaW5nVGFibGVzLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCURGREI5MTJDRjhFODhBNkRBMUFEMjY0RiAvKiBBYm9ydGFibGVU
YXNrUXVldWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJvcnRhYmxlVGFz
a1F1ZXVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUwRkVGMzcxQjA3QzUzRUFD
MUMxRkJFRSAvKiBFdmVudFNvdXJjZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRXZlbnRT
b3VyY2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMEZFRjM3MUIxN0M1M0VB
QzFDMUZCRUUgLyogRXZlbnRTb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRXZlbnRTb3VyY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTBGRUYzNzFC
MjdDNTNFQUMxQzFGQkVFIC8qIEV2ZW50U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEV2ZW50U291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTBGRUYzNzFCMzdDNTNFQUMxQzFGQkVFIC8qIEpTRXZlbnRTb3VyY2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFdmVudFNvdXJjZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFMEZFRjM3MUI0N0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJj
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50U291cmNl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEwNzQwMEIwRTc3QkRDMDAwMzNB
RjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNNZXNzYWdlQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUxMDc0MDBDMEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVzc2FnZUNoYW5uZWwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEwQjlCNkEwQjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQ
YXRoTlNSZXNvbHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXRpdmVY
UGF0aE5TUmVzb2x2ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEwQjlCNkIw
Qjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYXRpdmVYUGF0aE5TUmVzb2x2ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTEwMDMyRTFDOUFDM0RFMDA0MTJERDAgLyogQ1NT
R3JpZEF1dG9SZXBlYXRWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDU1NHcmlkQXV0b1JlcGVhdFZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTExMDAzMkYxQzlBQzNERTAwNDEyREQwIC8qIENTU0dyaWRBdXRvUmVwZWF0VmFsdWUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTR3JpZEF1dG9SZXBlYXRWYWx1
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTEyRjQ2RjFFM0E4NUQ4MDBENkNE
RkQgLyogR3JpZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmlkLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMTJGNDcwMUUzQTg1RjIwMEQ2Q0RGRCAvKiBH
cmlkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyaWQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTFBRjE1MDExQjlBMUEzMDA4MDUxMDMgLyog
Q3Vyc29yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEN1cnNvci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMUM5RDlBMEVCMzY4MTIwMEU0MDlE
QiAvKiBTY3JpcHRFeGVjdXRpb25Db250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTExQzlEQUYwRUIzNjk5NTAwRTQwOURCIC8qIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2NyaXB0RXhlY3V0aW9u
Q29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjMzRjBBMTg1QTNF
M0IwMDhERkFGNSAvKiBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1Mx
X3YxXzUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTIzM0YwQjE4NUEzRTNC
MDA4REZBRjUgLyogQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjMzRjBFMTg1QTQxMzAwMDhERkFGNSAv
KiBDcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81TWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzVNYWMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTI0NzQ4MzEwQUExNjFEMDBCNzk0
OTMgLyogQXV0aGVudGljYXRpb25DbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQXV0aGVudGljYXRpb25DbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTEyNUY4MjkxODIyQ0ZFQzAwRDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobVNIQTEuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtU0hBMS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjVGODJBMTgyMkNGRUMwMEQ4NENE
OSAvKiBDcnlwdG9BbGdvcml0aG1TSEExLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENyeXB0b0FsZ29yaXRobVNIQTEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTEyNUY4MkYxODIyRjExQjAwRDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobUhNQUMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtSE1BQy5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjVGODMwMTgyMkYxMUIwMEQ4NENEOSAv
KiBDcnlwdG9BbGdvcml0aG1ITUFDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENyeXB0b0FsZ29yaXRobUhNQUMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEy
NUY4MzMxODIyRjE4QTAwRDg0Q0Q5IC8qIENyeXB0b0tleUhNQUMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvS2V5SE1BQy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxMjVGODM0MTgyMkYxOEEwMEQ4NENEOSAvKiBDcnlwdG9LZXlITUFD
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0tleUhNQUMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyNUY4MzcxODIyRjFFQjAwRDg0Q0Q5IC8qIENy
eXB0b0FsZ29yaXRobUhNQUNNYWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ3J5cHRvQWxnb3JpdGhtSE1BQ01hYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUUxMjVGODNGMTgyNDI1M0EwMEQ4NENEOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNfQ0JD
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRo
bUFFU19DQkMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTI1Rjg0MDE4MjQy
NTNBMDBEODRDRDkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NCQy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1BRVNfQ0JDLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxMjVGODQzMTgyNDI1QzkwMEQ4NENEOSAvKiBDcnlwdG9BbGdvcml0
aG1BRVNfQ0JDTWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENy
eXB0b0FsZ29yaXRobUFFU19DQkNNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMTI1Rjg0QjE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0tleUFFUy5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxMjVGODRDMTgyNDI4OUQwMEQ4NENEOSAvKiBDcnlwdG9LZXlB
RVMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvS2V5QUVTLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjcxOUM2MEVFRUMxNjgwMEY2MTIxMyAvKiBO
YXZpZ2F0b3JCYXNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5hdmlnYXRv
ckJhc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyNzE5QzkwRUVFQzIxMzAw
RjYxMjEzIC8qIE5hdmlnYXRvckJhc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTmF2aWdhdG9yQmFzZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUxMjcxQTBBMEVFRUM3N0EwMEY2MTIxMyAvKiBXb3JrZXJOYXZpZ2F0b3IuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV29ya2VyTmF2aWdhdG9yLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxMjcxQTEzMEVFRUM4MDQwMEY2MTIxMyAvKiBXb3JrZXJOYXZpZ2F0
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya2VyTmF2aWdh
dG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyNzFBNTEwRUVFQ0QxQzAw
RjYxMjEzIC8qIFdvcmtlck5hdmlnYXRvci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV29y
a2VyTmF2aWdhdG9yLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyNzFBNTYw
RUVFQ0RFNDAwRjYxMjEzIC8qIEpTV29ya2VyTmF2aWdhdG9yLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTV29ya2VyTmF2aWdhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUUxMjcxQTU3MEVFRUNERTQwMEY2MTIxMyAvKiBKU1dvcmtlck5hdmlnYXRvci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dvcmtlck5hdmlnYXRv
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMjg0QUQ5MTA0NDdBRUIwMEVB
RUI1MiAvKiBQYWdlVHJhbnNpdGlvbkV2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQ
YWdlVHJhbnNpdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEy
ODRBRTAxMDQ0N0Q0NTAwRUFFQjUyIC8qIFBhZ2VUcmFuc2l0aW9uRXZlbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFnZVRyYW5zaXRpb25FdmVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMTI4NEFFOTEwNDQ3REVFMDBFQUVCNTIgLyogUGFnZVRyYW5z
aXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYWdl
VHJhbnNpdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyODRC
QUYxMDQ0OUZGQTAwRUFFQjUyIC8qIEpTUGFnZVRyYW5zaXRpb25FdmVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1BhZ2VUcmFuc2l0aW9uRXZlbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyODRCQjAxMDQ0OUZGQTAwRUFFQjUyIC8qIEpTUGFnZVRy
YW5zaXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1BhZ2VUcmFuc2l0aW9uRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MTJBOUY0NjI0OEE5OURGMDAzRjA2QzggLyogWFJJbnRlcmFjdGlvbk1vZGUuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFhSSW50ZXJhY3Rpb25Nb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTEyQTlGNDgyNDhBOTlFMDAwM0YwNkM4IC8qIFhSSW50ZXJhY3Rpb25Nb2Rl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSSW50ZXJhY3Rpb25Nb2RlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMkRFNzE1MUU0Qjc0ODcwMEY5QUNDRiAv
KiBHcmlkVHJhY2tTaXppbmdBbGdvcml0aG0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gR3JpZFRyYWNrU2l6aW5nQWxnb3JpdGhtLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTEyREU3MTYxRTRCNzQ4NzAwRjlBQ0NGIC8qIEdyaWRUcmFja1Npemlu
Z0FsZ29yaXRobS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHcmlkVHJhY2tT
aXppbmdBbGdvcml0aG0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEyRURCN0Ew
QjMwOEE3ODAwMjcwNEI2IC8qIEV2ZW50VGFyZ2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEV2ZW50VGFyZ2V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
MkVEQkU5MEIzMDhFMEIwMDI3MDRCNiAvKiBFdmVudFRhcmdldC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFdmVudFRhcmdldC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUxMkZEQUZCMjRBMEZEMUMwMDcwMjM2RSAvKiBXZWJYUkxheWVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhSTGF5ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTJGREFGRDI0QTBGRDFFMDA3MDIzNkUgLyogV2Vi
WFJMYXllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJYUkxheWVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMkZEQUZFMjRBMEZEMUYwMDcwMjM2RSAv
KiBXZWJYUkxheWVyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJYUkxheWVyLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEzNEY1QUExMkVFMzQzRjAwNEVDNThEIC8q
IEludFJlY3RIYXNoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludFJlY3RI
YXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxMzk4NjYxMTU0Nzg0NzQwMDFF
M0Y2NSAvKiBTdHlsZVJlc29sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFN0eWxlUmVzb2x2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MTM5ODY2MjE1NDc4NDc0MDAxRTNGNjUgLyogU3R5bGVSZXNvbHZlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVJlc29sdmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUUxM0VGMzQyMTY4NEVDRjQwMDM0QzgzRiAvKiBOZXR3b3JrU3RvcmFnZVNlc3Np
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29ya1N0b3JhZ2VTZXNz
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxM0VGMzQ3MTY4NTBDNDcwMDM0
QzgzRiAvKiBOZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBOZXR3b3JrU3RvcmFnZVNlc3Npb25DRk5ldC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxM0YwMUVBMTI3MEUxMEQwMERGQkE3MSAvKiBDb29r
aWVTdG9yYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvb2tpZVN0b3Jh
Z2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTEzRjAxRjAxMjcwRTE5MDAwREZC
QTcxIC8qIENvb2tpZVN0b3JhZ2VNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBDb29raWVTdG9yYWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFMTQyNEM5MTE2NEI1MkM4MDBGMzJENDAgLyogQ29va2llSmFyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvb2tpZUphci5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxNDI0QzkyMTY0QjUyQzgwMEYzMkQ0MCAvKiBDb29raWVKYXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29va2llSmFyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxNEE5NEQ2MTZERkRGOTUwMDY4REU4MiAvKiBCbG9iUmVnaXN0
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmxvYlJlZ2lzdHJ5
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE0RjFDNDIxNEI1REFDNjAwRUE5
MDA5IC8qIEhUTUxGb3JtQ29udHJvbEVsZW1lbnRXaXRoU3RhdGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxNEYxQzQzMTRCNURBQzYwMEVBOTAw
OSAvKiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0aFN0YXRlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEhUTUxGb3JtQ29udHJvbEVsZW1lbnRXaXRoU3RhdGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1MTNENTAxNjc3RjA4ODAwMTQ5RkNCIC8qIE5vdElt
cGxlbWVudGVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdElt
cGxlbWVudGVkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1MjU1MTMxNkZE
MjM0RjAwM0Q3QURCIC8qIFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxl
Z2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlUmVzb3VyY2VI
YW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTE1MjU1MTQxNkZEMjM0RjAwM0Q3QURCIC8qIFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFz
T3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1N0E4REMxODE3MkMyQzAwOUY4MjFE
IC8qIENyeXB0b0tleS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3J5cHRvS2V5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTE1N0E4REUxODE3MzMxQzAwOUY4MjFEIC8qIEpTQ3J5cHRvS2V5LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3J5cHRvS2V5LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1N0E4REYxODE3MzMxQzAwOUY4MjFEIC8qIEpT
Q3J5cHRvS2V5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3J5cHRvS2V5
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxNTdBOEUyMTgxNzNBM0EwMDlGODIx
RCAvKiBDcnlwdG9LZXkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q3J5cHRvS2V5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1N0E4RTMxODE3
M0EzQTAwOUY4MjFEIC8qIENyeXB0b0tleS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBDcnlwdG9LZXkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE1QTM2RDYx
MTA0NTcyMDAwQjdCNjM5IC8qIFhNTE5TTmFtZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gWE1MTlNOYW1lcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9YTUxO
U05hbWVzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUUxNUEzNkQ4
MTEwNDU3MjcwMEI3QjYzOSAvKiBYTUxOU05hbWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgbmFtZSA9IFhNTE5TTmFtZXMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9YTUxOU05hbWVzLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJRTE1RkY3RDQxOEM5NTUzODAwRkU0Qzg3IC8qIEtleXByZXNzQ29tbWFuZC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBLZXlwcmVzc0NvbW1hbmQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTE2NEEyRTcxOTFBQzVCQjAwMTA3MzdEIC8qIEZpbGVDb2NvYS5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZpbGVDb2NvYS5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE2NEEyRUIxOTFBRTYzNTAwMTA3MzdEIC8q
IEJsb2JEYXRhRmlsZVJlZmVyZW5jZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IEJsb2JEYXRhRmlsZVJlZmVyZW5jZU1hYy5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTE2NEZBQTIxODMxNUJGNDAwREI0RTYxIC8qIENyeXB0b0tleVJTQS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9LZXlSU0EuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE2NEZBQTQxODMxNUUxQTAwREI0RTYxIC8qIENyeXB0
b0tleVJTQU1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlw
dG9LZXlSU0FNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTY5ODAzQzEx
MzM1NDJEMDA4OTQxMTUgLyogQ1J1bnRpbWVPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQ1J1bnRpbWVPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTE2OTgwNDgxMTMzNjQ0NzAwODk0MTE1IC8qIENSdW50aW1lT2JqZWN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENSdW50aW1lT2JqZWN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE2OTgyNTQxMTM0NjI5RDAwODk0MTE1IC8qIE9iakNS
dW50aW1lT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9iakNSdW50
aW1lT2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxNjk4MjVGMTEzNDYz
NkEwMDg5NDExNSAvKiBPYmpDUnVudGltZU9iamVjdC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgcGF0aCA9IE9iakNSdW50aW1lT2JqZWN0Lm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFMTZBODRGNzE0Qzg1Q0NDMDAyOTc3REYgLyogQ1NTQm9yZGVySW1hZ2Uu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTQm9yZGVySW1hZ2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTZBODRGODE0Qzg1Q0NDMDAyOTc3
REYgLyogQ1NTQm9yZGVySW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q1NTQm9yZGVySW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE3MkFGNkIx
ODBGMjRDNjAwRkJBREI5IC8qIENyeXB0b0FsZ29yaXRobS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG0uY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFMTcyQUY2QzE4MEYyNEM2MDBGQkFEQjkgLyogQ3J5cHRvQWxnb3JpdGht
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTcyQUY2RjE4MEYyODk1MDBGQkFEQjkgLyog
Q3J5cHRvS2V5VXNhZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRv
S2V5VXNhZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE3MkFGOEQxODExQkMz
NzAwRkJBREI5IC8qIEpTRE9NUHJvbWlzZURlZmVycmVkLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9NUHJvbWlzZURlZmVycmVkLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTE3MkFGOEUxODExQkMzNzAwRkJBREI5IC8qIEpTRE9NUHJvbWlz
ZURlZmVycmVkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NUHJvbWlz
ZURlZmVycmVkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxNzY1ODBDMTgwREYz
QTAwMDVBOTZEMSAvKiBPRVNFbGVtZW50SW5kZXhVaW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPRVNFbGVtZW50SW5k
ZXhVaW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE3OUYwRDkxQjk3NzRG
RTAwRUQwQTI3IC8qIEludGVybmFscy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IEludGVybmFscy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE3
QjQ5MEIxNkE5NzI2OTAwMUM4ODM5IC8qIFRyYW5zaXRpb25FdmVudC5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gVHJhbnNpdGlvbkV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTE3QjQ5MTMxNkE5QjA5MzAwMUM4ODM5IC8qIFRyYW5zaXRpb25FdmVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUcmFuc2l0aW9uRXZlbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTdCNDkxNDE2QTlCMDkzMDAxQzg4MzkgLyog
VHJhbnNpdGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYW5z
aXRpb25FdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTdCNDkxRjE2QTlC
OEZGMDAxQzg4MzkgLyogSlNUcmFuc2l0aW9uRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNUcmFuc2l0aW9uRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTE3QjQ5MjAxNkE5QjhGRjAwMUM4ODM5IC8qIEpTVHJhbnNpdGlvbkV2ZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJhbnNpdGlvbkV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE4MDgxMTAxNkZDRjQyRTAwQjgwRDA3
IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTE4MDgxMTQxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU3lu
Y2hyb25vdXNMb2FkZXJDbGllbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
ODA4MTE1MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTgyNTY4RDBFRjJCMDJEMDA5MzMyNDIgLyog
SlNXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1dvcmtlckdsb2JhbFNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTE4MjU2OEUwRUYyQjAyRDAwOTMzMjQyIC8qIEpTV29ya2VyR2xvYmFsU2NvcGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXb3JrZXJHbG9iYWxTY29wZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTgyNThBQjBFRjNDRDcwMDA5MzMyNDIgLyogSlNX
b3JrZXJHbG9iYWxTY29wZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBKU1dvcmtlckdsb2JhbFNjb3BlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTE4NTM2ODExRjRFNDcyNzAwRkUwOTFCIC8qIFdlYkFyY2hpdmVSZXNvdXJj
ZUZyb21OU0F0dHJpYnV0ZWRTdHJpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQXJjaGl2ZVJlc291
cmNlRnJvbU5TQXR0cmlidXRlZFN0cmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMTg1MzY4MjFGNEU0NzI3MDBGRTA5MUIgLyogV2ViQXJjaGl2ZVJlc291cmNlRnJvbU5TQXR0
cmlidXRlZFN0cmluZy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkFyY2hpdmVSZXNvdXJj
ZUZyb21OU0F0dHJpYnV0ZWRTdHJpbmcubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUxOEMzNTQxMUY3MTk2Q0QwMEZGNjMyRCAvKiBXZWJBcmNoaXZlUmVzb3VyY2VXZWJSZXNvdXJj
ZUhhbmRsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQXJjaGl2ZVJlc291cmNlV2ViUmVzb3VyY2VI
YW5kbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEMzNTQyMUY3MTk3MDEw
MEZGNjMyRCAvKiBXZWJBcmNoaXZlUmVzb3VyY2VXZWJSZXNvdXJjZUhhbmRsZXIubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBXZWJBcmNoaXZlUmVzb3VyY2VXZWJSZXNvdXJjZUhhbmRsZXIubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4M0RDMjQzRjcxQ0IwMDkyNDdENiAv
KiBGYWtlWFJJbnB1dFNvdXJjZUluaXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZha2VY
UklucHV0U291cmNlSW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4
M0REMjQzRjcxQ0MwMDkyNDdENiAvKiBXZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViRmFrZVhSSW5wdXRDb250cm9sbGVy
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE4RDgzREUyNDNGNzFDRDAwOTI0
N0Q2IC8qIEZha2VYUkJ1dHRvblN0YXRlSW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBGYWtlWFJCdXR0b25TdGF0ZUluaXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTE4RDgzREYyNDNGNzFDRDAwOTI0N0Q2IC8qIEZha2VYUlZpZXdJbml0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZha2VYUlZpZXdJbml0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4M0UwMjQzRjcxQ0UwMDkyNDdENiAvKiBXZWJYUlRlc3Qu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViWFJUZXN0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE4RDgzRTEyNDNGNzFDRTAwOTI0N0Q2IC8q
IFdlYkZha2VYUklucHV0Q29udHJvbGxlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2Vi
RmFrZVhSSW5wdXRDb250cm9sbGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTE4RDgzRTIyNDNGNzFDRjAwOTI0N0Q2IC8qIEZha2VYUlZpZXdJbml0LmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBGYWtlWFJWaWV3SW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUUxOEQ4M0UzMjQzRjcxQ0YwMDkyNDdENiAvKiBGYWtlWFJCdXR0b25TdGF0ZUluaXQu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZha2VYUkJ1dHRvblN0YXRlSW5pdC5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4M0U0MjQzRjcxRDAwMDkyNDdENiAvKiBG
YWtlWFJCb3VuZHNQb2ludC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGYWtl
WFJCb3VuZHNQb2ludC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMThEODNFNTI0
M0Y3MUQxMDA5MjQ3RDYgLyogRmFrZVhSUmlnaWRUcmFuc2Zvcm1Jbml0LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZha2VYUlJpZ2lkVHJhbnNmb3JtSW5pdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMThEODNFNjI0M0Y3MUQxMDA5MjQ3RDYgLyogRmFrZVhS
UmlnaWRUcmFuc2Zvcm1Jbml0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGYWtlWFJSaWdp
ZFRyYW5zZm9ybUluaXQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMThEODNF
NzI0M0Y3MUQyMDA5MjQ3RDYgLyogV2ViRmFrZVhSRGV2aWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBXZWJGYWtlWFJEZXZpY2UuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMThEODNFODI0M0Y3MUQyMDA5MjQ3RDYgLyogV2ViWFJUZXN0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlhSVGVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFMThEODNFOTI0M0Y3MUQzMDA5MjQ3RDYgLyogV2ViRmFrZVhSRGV2aWNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkZha2VYUkRldmljZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4M0VBMjQzRjcxRDQwMDkyNDdENiAvKiBG
YWtlWFJJbnB1dFNvdXJjZUluaXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RmFrZVhSSW5wdXRTb3VyY2VJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
OEQ4M0VCMjQzRjcxRDUwMDkyNDdENiAvKiBXZWJYUlRlc3QuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFdlYlhSVGVzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOEQ4
M0VDMjQzRjcxRDUwMDkyNDdENiAvKiBYUlNpbXVsYXRlVXNlckFjdGl2YXRpb25GdW5jdGlvbi5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUlNpbXVsYXRlVXNlckFjdGl2YXRp
b25GdW5jdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMThEODNFRDI0M0Y3
MUQ2MDA5MjQ3RDYgLyogV2ViRmFrZVhSRGV2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYkZha2VYUkRldmljZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMThEODNFRTI0M0Y3MUQ3MDA5MjQ3RDYgLyogV2ViRmFrZVhSSW5wdXRDb250cm9sbGVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkZha2VYUklucHV0Q29udHJvbGxl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMThEODNFRjI0M0Y3MUQ3MDA5MjQ3
RDYgLyogRmFrZVhSQm91bmRzUG9pbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEZha2VY
UkJvdW5kc1BvaW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE4RDgzRjAy
NDNGNzFEODAwOTI0N0Q2IC8qIFhSU2ltdWxhdGVVc2VyQWN0aXZhdGlvbkZ1bmN0aW9uLmlkbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUlNpbXVsYXRlVXNlckFjdGl2YXRpb25GdW5jdGlvbi5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOERGMzM0MThBQUYxMkMwMDc3M0U1
OSAvKiBTZXJpYWxpemVkQ3J5cHRvS2V5V3JhcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTZXJpYWxpemVkQ3J5cHRvS2V5V3JhcC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMThERjMzNjE4QUFGMTREMDA3NzNFNTkgLyogU2VyaWFsaXplZENyeXB0b0tleVdy
YXBNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTZXJpYWxp
emVkQ3J5cHRvS2V5V3JhcE1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5
NDkwODYyNDM0RjE1ODAwNDE2QTk5IC8qIFdlYlhSVmlldy5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gV2ViWFJWaWV3LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5NDkw
ODcyNDM0RjE1OTAwNDE2QTk5IC8qIFdlYlhSVmlld3BvcnQuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IFdlYlhSVmlld3BvcnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MTk0OTA4ODI0MzRGMTU5MDA0MTZBOTkgLyogV2ViWFJGcmFtZS5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
OyBwYXRoID0gV2ViWFJGcmFtZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
OTQ5MDg5MjQzNEYxNUEwMDQxNkE5OSAvKiBXZWJYUklucHV0U291cmNlLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBXZWJYUklucHV0U291cmNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTE5NDkwOEYyNDM0RjE1RDAwNDE2QTk5IC8qIFdlYlhSV2ViR0xMYXllci5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViWFJXZWJHTExheWVyLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTE5NDkwOTMyNDM0RjE2MDAwNDE2QTk5IC8qIFdlYlhSSW5wdXRT
b3VyY2VBcnJheS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViWFJJbnB1dFNvdXJjZUFy
cmF5LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5NDkwOTQyNDM0RjE2MDAw
NDE2QTk5IC8qIFdlYlhSQm91bmRlZFJlZmVyZW5jZVNwYWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBXZWJYUkJvdW5kZWRSZWZlcmVuY2VTcGFjZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUxOTQ5MDk1MjQzNEYxNjEwMDQxNkE5OSAvKiBXZWJYUldlYkdMTGF5ZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViWFJXZWJHTExheWVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOTQ5MDk4MjQzNEYxNjIwMDQxNkE5OSAvKiBX
ZWJYUlJpZ2lkVHJhbnNmb3JtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJYUlJpZ2lk
VHJhbnNmb3JtLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5NDkwOUEyNDM0
RjE2NDAwNDE2QTk5IC8qIFdlYlhSU3lzdGVtLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBX
ZWJYUlN5c3RlbS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOTQ5MDlDMjQz
NEYxNjUwMDQxNkE5OSAvKiBXZWJYUlZpZXdlclBvc2UuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdlYlhSVmlld2VyUG9zZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
OTQ5MDlFMjQzNEYxNjYwMDQxNkE5OSAvKiBXZWJYUlNlc3Npb24uaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFdlYlhSU2Vzc2lvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUxOTQ5MEExMjQzNEYxNjgwMDQxNkE5OSAvKiBXZWJYUlBvc2UuaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFdlYlhSUG9zZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
OTQ5MEEyMjQzNEYxNjgwMDQxNkE5OSAvKiBXZWJYUlNwYWNlLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBXZWJYUlNwYWNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5
NDkwQTQyNDM0RjE2OTAwNDE2QTk5IC8qIFdlYlhSUmVuZGVyU3RhdGUuaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFdlYlhSUmVuZGVyU3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMTk0OTBBNjI0MzRGMTZCMDA0MTZBOTkgLyogV2ViWFJSZWZlcmVuY2VTcGFjZS5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gV2ViWFJSZWZlcmVuY2VTcGFjZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOTcyNzE1MTgyMDU0OUUwMDU5MkQ1MSAvKiBDcnlw
dG9LZXlUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0tleVR5
cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5QUMzRTYxODI0REM3OTAwMzQ5
NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTIyNC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1TSEEyMjQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFMTlBQzNFNzE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGht
U0hBMjI0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29yaXRo
bVNIQTIyNC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTlBQzNFODE4MjREQzc5
MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMjU2LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVNIQTI1Ni5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxOUFDM0U5MTgyNERDNzkwMDM0OTQyNiAvKiBDcnlwdG9BbGdv
cml0aG1TSEEyNTYuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvQWxn
b3JpdGhtU0hBMjU2Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxOUFDM0VBMTgy
NERDNzkwMDM0OTQyNiAvKiBDcnlwdG9BbGdvcml0aG1TSEEzODQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtU0hBMzg0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5QUMzRUIxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTM4NC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlw
dG9BbGdvcml0aG1TSEEzODQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTE5QUMz
RUMxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTUxMi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1TSEE1MTIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTlBQzNFRDE4MjREQzc5MDAzNDk0MjYgLyog
Q3J5cHRvQWxnb3JpdGhtU0hBNTEyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IENyeXB0b0FsZ29yaXRobVNIQTUxMi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MTlBQzNGODE4MjU2NkY3MDAzNDk0MjYgLyogQ3J5cHRvS2V5TWFjLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0tleU1hYy5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxQTE0NzA3MTExMDJCMTUwMEVFQzBGMyAvKiBDb250YWluZXJOb2Rl
QWxnb3JpdGhtcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250YWluZXJO
b2RlQWxnb3JpdGhtcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUEzMTYyQjEz
NEJDMzJEMDA3QzlBNEYgLyogV2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYk5TQXR0cmlidXRlZFN0cmluZ0V4dHJhcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUEzMTYyQzEzNEJDMzJEMDA3QzlBNEYgLyog
V2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gV2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUE1Rjk5QTBFN0VBQTI1MDBBRjg1RUEgLyogSlNNZXNzYWdl
Q2hhbm5lbEN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U01lc3NhZ2VDaGFubmVsQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTFBQjFFQTgxNEU5RTI3RDAwNDQ5RTEzIC8qIEZpbGVMaXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBGaWxlTGlzdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQUIx
RUI3MTRFOUUzNTgwMDQ0OUUxMyAvKiBGaWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBGaWxlLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFBQjFFQkQxNEU5RTNBODAwNDQ5RTEzIC8qIEZpbGVSZWFk
ZXJTeW5jLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSBGaWxlUmVhZGVyU3luYy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUUxQURFQ0JEMEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5oOyBmaWxlRW5jb2RpbmcgPSA0OyBwYXRoID0gTWVzc2FnZVBvcnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFBREVDQkUwRTc2QUNGMTAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lc3NhZ2VQb3J0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFBREVDQzYwRTc2QUQxRjAwNEExQTVF
IC8qIE1lc3NhZ2VQb3J0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZXNzYWdlUG9ydC5p
ZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQURFQ0NDMEU3NkFEOEIwMDRBMUE1
RSAvKiBNZXNzYWdlQ2hhbm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZXNzYWdlQ2hhbm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUFERUNDRDBF
NzZBRDhCMDA0QTFBNUUgLyogTWVzc2FnZUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gTWVzc2FnZUNoYW5uZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFMUFERUNEMDBFNzZBREFCMDA0QTFBNUUgLyogTWVzc2FnZUNoYW5uZWwuaWRs
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lc3NhZ2VDaGFubmVsLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFBREVENDYwRTc2QjhERDAwNEExQTVFIC8qIEpTTWVzc2FnZVBv
cnRDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZXNz
YWdlUG9ydEN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQURFREQ4
MEU3NkJEOTMwMDRBMUE1RSAvKiBKU01lc3NhZ2VQb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTTWVzc2FnZVBvcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTFBREVERDkwRTc2QkQ5MzAwNEExQTVFIC8qIEpTTWVzc2FnZVBvcnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZXNzYWdlUG9ydC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQjI1MTA0MTUyQTBCQUYwMDY5Qjc3OSAvKiBTdHlsZVBy
b3BlcnR5U2hvcnRoYW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMUIyNTEwNTE1MkEwQkFGMDA2OUI3NzkgLyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVByb3BlcnR5U2hvcnRoYW5kLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQjRDRDI0MTBCMzIyRTIwMEJGRkQ3RSAv
KiBDcmVkZW50aWFsU3RvcmFnZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IENyZWRlbnRpYWxTdG9yYWdlTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMUI1MzM0NjE3MTdEMEEwMDBGMjA1RjkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRSZWZl
cmVuY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FjaGVkU1ZH
RG9jdW1lbnRSZWZlcmVuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUI1
MzM0ODE3MTdERUUzMDBGMjA1RjkgLyogQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFCQTAwMzAxNkZCOTJBQzAwQkE3QTM1IC8qIFJl
c291cmNlSGFuZGxlQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFJlc291cmNlSGFuZGxlQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTFCQTY2RjAxNzQyQkQ4NjAwQzIwMjUxIC8qIER5bmFtaWNMaW5rZXJJbnRlcnBvc2luZy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEeW5hbWljTGlua2VySW50ZXJwb3Np
bmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFCQTY2RjIxNzQyQkRDQzAwQzIw
MjUxIC8qIFdlYkNvcmVUZXN0U2hpbS54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBXZWJDb3JlVGVz
dFNoaW0ueGNjb25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQkE2NzE2MTc0
MkJERTAwMEMyMDI1MSAvKiBsaWJXZWJDb3JlVGVzdFNoaW0uZHlsaWIgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9ICJjb21waWxlZC5tYWNoLW8uZHlsaWIi
OyBpbmNsdWRlSW5JbmRleCA9IDA7IHBhdGggPSBsaWJXZWJDb3JlVGVzdFNoaW0uZHlsaWI7IHNv
dXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUUxQkE2NzE5MTc0MkJFRjQwMEMy
MDI1MSAvKiBXZWJDb3JlVGVzdFNoaW1MaWJyYXJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFdlYkNvcmVUZXN0U2hpbUxpYnJhcnkuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFMUJCODRBQzE4MjJDQTc0MDA1MjUwNDMgLyogQ3J5cHRvQWxnb3Jp
dGhtUmVnaXN0cnlNYWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q3J5cHRvQWxnb3JpdGhtUmVnaXN0cnlNYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFMUJEMzMxNzE4MkQ4REREMDBDMDVEOUYgLyogQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BL
Q1MxX3YxXzUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3J5cHRv
QWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFMUJEMzMxODE4MkQ4REREMDBDMDVEOUYgLyogQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BL
Q1MxX3YxXzUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvQWxnb3Jp
dGhtUlNBU1NBX1BLQ1MxX3YxXzUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFC
RTUxMkIwQ0Y2QzUxMjAwMkVBOTU5IC8qIFhTTFRVbmljb2RlU29ydC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYU0xUVW5pY29kZVNvcnQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUJFNTEyQzBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNv
ZGVTb3J0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhTTFRVbmljb2RlU29y
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUMxQTM5QjI0ODAwODA2MDBFMEFG
NjYgLyogUGxhdGZvcm1YUk9wZW5YUi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBQbGF0Zm9ybVhST3BlblhSLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTFDMUEzOUMyNDgwMDgwNzAwRTBBRjY2IC8qIFBsYXRmb3JtWFJPcGVuWFIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1YUk9wZW5YUi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUMyNjZENjE4MzE3QUI0MDAzRjhCMzMgLyogQ3J5cHRvQWxn
b3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzVNYWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzVNYWMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUMyNjZEQzE4MzE5RjMxMDAzRjhCMzMgLyogQ3J5
cHRvS2V5UlNBQ29tcG9uZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDcnlwdG9LZXlSU0FDb21wb25lbnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTFDMjY2REQxODMxOUYzMTAwM0Y4QjMzIC8qIENyeXB0b0tleVJTQUNvbXBvbmVudHMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvS2V5UlNBQ29tcG9uZW50
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUMzNjJFRDBFQUYyQUE5MDA3NDEw
QkMgLyogSlNXb3JrZXJMb2NhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBKU1dvcmtlckxvY2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQzM2
MkVFMEVBRjJBQTkwMDc0MTBCQyAvKiBKU1dvcmtlckxvY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV29ya2VyTG9jYXRpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUMzNkMwMjBFQjA3NkQ2MDA3NDEwQkMgLyogSlNET01HbG9i
YWxPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01HbG9iYWxP
YmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFDMzZDQkMwRUIwODA2MjAw
NzQxMEJDIC8qIEpTRE9NR2xvYmFsT2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTRE9NR2xvYmFsT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTFDMzZEMzIwRUIwQTA5NDAwNzQxMEJDIC8qIEpTV29ya2VyR2xvYmFsU2NvcGVC
YXNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTV29ya2VyR2xv
YmFsU2NvcGVCYXNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFDMzZEMzMw
RUIwQTA5NDAwNzQxMEJDIC8qIEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQzQxNUQ5MEY2NTVENkYwMDkyRDJGQiAvKiBDcm9zc09y
aWdpblByZWZsaWdodFJlc3VsdENhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTFDNDE1REQwRjY1NUQ3QzAwOTJEMkZCIC8qIENyb3NzT3JpZ2luUHJlZmxp
Z2h0UmVzdWx0Q2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
Q3Jvc3NPcmlnaW5QcmVmbGlnaHRSZXN1bHRDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUUxQzQxNjExMEY2NTYyRkQwMDkyRDJGQiAvKiBDcm9zc09yaWdpbkFjY2Vzc0Nv
bnRyb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3Jvc3NPcmlnaW5BY2Nl
c3NDb250cm9sLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQzQxNjE2MEY2NTYz
MTgwMDkyRDJGQiAvKiBDcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2wuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFDNERFNjgwRUE3NUMxRTAwMjNDQ0Q2IC8qIEFj
dGl2ZURPTU9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBY3RpdmVE
T01PYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFDNERFNkQwRUE3NUM2
NTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBY3RpdmVET01PYmplY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMUM2NTcyNDE4MTZFNjlEMDAyNTZDREQgLyogQ3J5cHRvQWxnb3JpdGhtSWRlbnRp
Zmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1J
ZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxQzZDRkMyMTc0NkQy
OTMwMDdCODdBMSAvKiBET01XaW5kb3dDb25zdHJ1Y3RvcnMuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IERPTVdpbmRvd0Nv
bnN0cnVjdG9ycy5pZGw7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTVdpbmRvd0Nv
bnN0cnVjdG9ycy5pZGw7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUUx
QzhCRTVDMEU4QkQxNUEwMDY0Q0I3RCAvKiBKU1dvcmtlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU1dvcmtlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUUxQzk0QUY3MTkxMzAzRjAwMEQ1QTg5MyAvKiBCbG9iUGFydC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCbG9iUGFydC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFMUNBQTVDNTBFOEJEMjM2MDBBNzNFQ0EgLyogSlNXb3JrZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTFDREU5MUYxNTAxOEVEMDAwODYyQ0M1IC8qIEFzeW5jRmlsZVN0cmVhbS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBc3luY0ZpbGVTdHJlYW0uY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUNERTkyMTE1MDE5MTY5MDA4NjJDQzUg
LyogQXN5bmNGaWxlU3RyZWFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFz
eW5jRmlsZVN0cmVhbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUQzMUNEQTE5
MTk2MDIwMDAxMDA1QTMgLyogQmxvYkRhdGFGaWxlUmVmZXJlbmNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJsb2JEYXRhRmlsZVJlZmVyZW5jZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRDMxQ0RCMTkxOTYwMjAwMDEwMDVBMyAvKiBCbG9i
RGF0YUZpbGVSZWZlcmVuY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxv
YkRhdGFGaWxlUmVmZXJlbmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRTFC
RUZGMTE1RkY2RkIwMDZGNTJDQSAvKiBXaW5kb3dzS2V5Ym9hcmRDb2Rlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXaW5kb3dzS2V5Ym9hcmRDb2Rlcy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUU2RUVBMzBCNjI4REE4MDA1RjJGNzAgLyogSlNIVE1MU2Vs
ZWN0RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hU
TUxTZWxlY3RFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFNkVF
QTcwQjYyOERCMzAwNUYyRjcwIC8qIEpTSFRNTFNlbGVjdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmg7IHBhdGggPSBKU0hUTUxTZWxlY3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxRUMyOTlEMEJCMDRDNkIwMEVBMTg3QiAvKiBYUGF0aE5vZGVT
ZXQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFBhdGhOb2RlU2V0
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFQzI5OUUwQkIwNEM2QjAwRUEx
ODdCIC8qIFhQYXRoTm9kZVNldC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBY
UGF0aE5vZGVTZXQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRDhBQzIwQ0M0
OUJFMDAwQkZDNTU3IC8qIENTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFDNzI0MTJCMTZGMDBFNzk0RDYgLyogV2ViWFJW
aWV3ZXJQb3NlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlhSVmlld2Vy
UG9zZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFDODI0MTJCMTZGMDBF
Nzk0RDYgLyogWFJTZXNzaW9uTW9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gWFJTZXNz
aW9uTW9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUM5MjQxMkIx
NzAwMEU3OTRENiAvKiBYUlJlZmVyZW5jZVNwYWNlVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBYUlJlZmVyZW5jZVNwYWNlVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFMUVFOEFDQTI0MTJCMTcwMDBFNzk0RDYgLyogTmF2aWdhdG9yV2ViWFIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yV2ViWFIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBQ0IyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSUmVu
ZGVyU3RhdGVJbml0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSUmVuZGVy
U3RhdGVJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUNDMjQxMkIx
NzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gWFJJbnB1dFNvdXJjZUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTFFRThBQ0QyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmlnaWRUcmFu
c2Zvcm0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViWFJSaWdp
ZFRyYW5zZm9ybS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUNFMjQx
MkIxNzAwMEU3OTRENiAvKiBXZWJYUlJlbmRlclN0YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhSUmVuZGVyU3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFMUVFOEFDRjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJTcGFjZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJYUlNwYWNlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUQwMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJlZmVyZW5j
ZVNwYWNlRXZlbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFhSUmVmZXJlbmNlU3BhY2VF
dmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUQxMjQxMkIxNzAw
MEU3OTRENiAvKiBXZWJYUkJvdW5kZWRSZWZlcmVuY2VTcGFjZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJYUkJvdW5kZWRSZWZlcmVuY2VTcGFjZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFEMjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJSZWZl
cmVuY2VTcGFjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJY
UlJlZmVyZW5jZVNwYWNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThB
RDMyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSQm91bmRlZFJlZmVyZW5jZVNwYWNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhSQm91bmRlZFJlZmVyZW5jZVNw
YWNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRDUyNDEyQjE3MDAw
RTc5NEQ2IC8qIFdlYlhSUmVuZGVyU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViWFJSZW5kZXJTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MUVFOEFENjI0MTJCMTcwMDBFNzk0RDYgLyogWFJWaXNpYmlsaXR5U3RhdGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJWaXNpYmlsaXR5U3RhdGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRDcyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbklu
aXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFhSU2Vzc2lvbkluaXQuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFEODI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJX
ZWJHTExheWVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhS
V2ViR0xMYXllci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUQ5MjQx
MkIxNzAwMEU3OTRENiAvKiBYUlZpc2liaWxpdHlTdGF0ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gWFJWaXNpYmlsaXR5U3RhdGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFMUVFOEFEQTI0MTJCMTcwMDBFNzk0RDYgLyogWFJFbnZpcm9ubWVudEJsZW5kTW9kZS5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gWFJFbnZpcm9ubWVudEJsZW5kTW9kZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QURCMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJl
ZmVyZW5jZVNwYWNlRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJS
ZWZlcmVuY2VTcGFjZUV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4
QURDMjQxMkIxNzAwMEU3OTRENiAvKiBYUlNlc3Npb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYUlNlc3Npb25FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxRUU4QUREMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUklucHV0U291
cmNlQXJyYXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViWFJJbnB1dFNv
dXJjZUFycmF5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUUwMjQxMkIx
NzAwMEU3OTRENiAvKiBXZWJYUlZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gV2ViWFJWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUUxMjQx
MkIxNzAwMEU3OTRENiAvKiBXZWJYUlBvc2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2ViWFJQb3NlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUUy
MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlN5c3RlbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJYUlN5c3RlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MUVFOEFFMzI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJGcmFtZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJYUkZyYW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUxRUU4QUU0MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50Lmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRTUyNDEyQjE3MDAwRTc5NEQ2
IC8qIFdlYlhSUG9zZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
ZWJYUlBvc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFFNjI0MTJC
MTcwMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZUFycmF5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYlhSSW5wdXRTb3VyY2VBcnJheS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUU3MjQxMkIxNzAwMEU3OTRENiAvKiBYUlNlc3Np
b25FdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUlNlc3Npb25FdmVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFFODI0MTJCMTcwMDBFNzk0
RDYgLyogV2ViWFJTeXN0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gV2ViWFJTeXN0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFF
OTI0MTJCMTcwMDBFNzk0RDYgLyogWFJGcmFtZVJlcXVlc3RDYWxsYmFjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBYUkZyYW1lUmVxdWVzdENhbGxiYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUVBMjQxMkIxNzAwMEU3OTRENiAvKiBYUlRhcmdl
dFJheU1vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJUYXJnZXRSYXlN
b2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUVCMjQxMkIxNzAwMEU3
OTRENiAvKiBXZWJYUlZpZXdwb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdlYlhSVmlld3BvcnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
MUVFOEFFQzI0MTJCMTcwMDBFNzk0RDYgLyogWFJSZW5kZXJTdGF0ZUluaXQuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFhSUmVuZGVyU3RhdGVJbml0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTFFRThBRUUyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSSGFuZGVkbmVzcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYUkhhbmRlZG5lc3MuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRjAyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSRnJh
bWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViWFJGcmFtZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUYxMjQxMkIxNzAwMEU3OTRE
NiAvKiBOYXZpZ2F0b3JXZWJYUi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBOYXZpZ2F0b3JXZWJYUi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
RUU4QUYzMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJlZmVyZW5jZVNwYWNlRXZlbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFJSZWZlcmVuY2VTcGFjZUV2ZW50LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRjQyNDEyQjE3MDAwRTc5NEQ2
IC8qIFdlYlhSVmlld3BvcnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vi
WFJWaWV3cG9ydC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEFGNTI0MTJC
MTcwMDBFNzk0RDYgLyogWFJFeWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
WFJFeWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRjgyNDEyQjE3MDAw
RTc5NEQ2IC8qIFdlYlhSU3BhY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gV2ViWFJTcGFjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4
QUY5MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSSW5wdXRTb3VyY2VzQ2hhbmdlRXZlbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRkEyNDEyQjE3MDAwRTc5NEQ2IC8q
IFhSUmVmZXJlbmNlU3BhY2VUeXBlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUlJlZmVy
ZW5jZVNwYWNlVHlwZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUZC
MjQxMkIxNzAwMEU3OTRENiAvKiBYUkZyYW1lUmVxdWVzdENhbGxiYWNrLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBYUkZyYW1lUmVxdWVzdENhbGxiYWNrLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTFFRThBRkQyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbkV2ZW50
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUlNlc3Npb25FdmVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QUZFMjQxMkIxNzAwMEU3OTRENiAvKiBYUlNlc3Np
b25Nb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhSU2Vzc2lvbk1vZGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThBRkYyNDEyQjE3MDAwRTc5NEQ2
IC8qIFhSVGFyZ2V0UmF5TW9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gWFJUYXJnZXRS
YXlNb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThCMDAyNDEyQjE3
MDAwRTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VFdmVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gWFJJbnB1dFNvdXJjZUV2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTFFRThCMDMyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSRXllLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBYUkV5ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QjA1MjQx
MkIxNzAwMEU3OTRENiAvKiBYUkVudmlyb25tZW50QmxlbmRNb2RlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFhSRW52aXJvbm1lbnRCbGVuZE1vZGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThCMDYyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmlnaWRU
cmFuc2Zvcm0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViWFJSaWdpZFRy
YW5zZm9ybS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEIwNzI0MTJCMTcw
MDBFNzk0RDYgLyogWFJIYW5kZWRuZXNzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBYUkhh
bmRlZG5lc3MuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEIwODI0MTJC
MTcwMDBFNzk0RDYgLyogWFJXZWJHTExheWVySW5pdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBYUldlYkdMTGF5ZXJJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUxRUU4QjA5MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlRXZlbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJJbnB1dFNvdXJjZUV2ZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4QjBCMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJY
UlZpZXdlclBvc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vi
WFJWaWV3ZXJQb3NlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThCMEQy
NDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gV2ViWFJJbnB1dFNvdXJjZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxRUU4QjBFMjQxMkIxNzAwMEU3OTRENiAvKiBOYXZpZ2F0b3IrV2Vi
WFIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9ICJOYXZpZ2F0b3IrV2ViWFIuaWRsIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThCMEYyNDEyQjE3MDAwRTc5NEQ2IC8qIFdl
YlhSU2Vzc2lvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJY
UlNlc3Npb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEIxMDI0MTJC
MTcwMDBFNzk0RDYgLyogWFJXZWJHTExheWVySW5pdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gWFJXZWJHTExheWVySW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
RUU4QjExMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlNlc3Npb24uaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV2ViWFJTZXNzaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUUxRUU4QjEyMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlZpZXcuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2ViWFJWaWV3LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTFFRThCMTMyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbklu
aXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFJTZXNzaW9uSW5pdC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEIxNDI0MTJCMTcwMDBFNzk0RDYgLyog
V2ViWFJSZWZlcmVuY2VTcGFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJYUlJlZmVyZW5jZVNwYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRUU4
QjE1MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhSSW5wdXRTb3VyY2VzQ2hhbmdlRXZl
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUVFOEIxNzI0MTJCMTcwMDBF
Nzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJYUklucHV0U291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUx
RUU4QjZGMjQxMkIyQTcwMEU3OTRENiAvKiBQbGF0Zm9ybVhSLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtWFIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTFGMUU4MkQwQzNDMkJCOTAwNkRCMzkxIC8qIFhTTFRFeHRlbnNpb25zLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhTTFRFeHRlbnNpb25zLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGMUU4MkUwQzNDMkJCOTAwNkRCMzkxIC8qIFhTTFRF
eHRlbnNpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhTTFRFeHRlbnNp
b25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRjgwQjg0MTgzMTcyNDcwMDc4
ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDcnlwdG9LZXlQYWlyLmlkbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGODBCODYxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0
b0tleVBhaXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3J5cHRvS2V5UGFp
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4MEI4QjE4MzE3MkI1MDA3ODg1
QzMgLyogSlNDcnlwdG9LZXlQYWlyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEpTQ3J5cHRvS2V5UGFpci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUxRjgwQjhDMTgzMTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDcnlwdG9LZXlQYWlyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUxRjgxNzQ1MUU4OTdBNTIwMEYyMkNEMCAvKiBHcmlkUG9zaXRpb24u
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR3JpZFBvc2l0aW9uLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGRTEzNjgxODNGRTFBQjAwODkyRjEz
IC8qIENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobVJTQV9PQUVQLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTFGRTEzNjkxODNGRTFBQjAwODkyRjEzIC8qIENyeXB0b0FsZ29yaXRo
bVJTQV9PQUVQLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29y
aXRobVJTQV9PQUVQLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRkUxMzZFMTgz
RkVDRjAwMDg5MkYxMyAvKiBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUE1hYy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUE1hYy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRkUxMzcyMTg0MDJBNjcwMDg5MkYx
MyAvKiBDb21tb25DcnlwdG9VdGlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ29tbW9uQ3J5cHRvVXRpbGl0aWVzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTFGRTEzNzMxODQwMkE2NzAwODkyRjEzIC8qIENvbW1vbkNyeXB0b1V0aWxp
dGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb21tb25DcnlwdG9VdGls
aXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGRTEzNzgxODREMjFCQjAw
ODkyRjEzIC8qIENyeXB0b0FsZ29yaXRobUFFU19LVy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1BRVNfS1cuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFMUZFMTM3OTE4NEQyMUJCMDA4OTJGMTMgLyogQ3J5cHRvQWxnb3Jp
dGhtQUVTX0tXLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENyeXB0b0FsZ29y
aXRobUFFU19LVy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUZFMTM3QzE4NEQy
NzAyMDA4OTJGMTMgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0tXTWFjLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0FsZ29yaXRobUFFU19LV01hYy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRkY1N0EyMEYwMTI1NUIwMDg5MUVCQiAvKiBU
aHJlYWRHbG9iYWxEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRocmVh
ZEdsb2JhbERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGRjU3QTUwRjAx
MjU2QjAwODkxRUJCIC8qIFRocmVhZEdsb2JhbERhdGEuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVGhyZWFkR2xvYmFsRGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUxRkY4RjZBMTgwREI1QkUwMDEzMjY3NCAvKiBDcnlwdG9BbGdvcml0aG1S
ZWdpc3RyeS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9B
bGdvcml0aG1SZWdpc3RyeS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRkY4
RjZCMTgwREI1QkUwMDEzMjY3NCAvKiBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzA1OTI2MTFFMjdBMzhDMDBENTdDOTggLyogSW5s
aW5lQ2xhc3NpY1NjcmlwdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJbmxpbmVDbGFzc2ljU2NyaXB0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTMwNTkyNjIxRTI3QTM4QzAwRDU3Qzk4IC8qIElubGluZUNsYXNzaWNTY3JpcHQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5saW5lQ2xhc3NpY1NjcmlwdC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMzA1OTI2NTFFMjdBM0M2MDBENTdDOTggLyogQ2FjaGVk
U2NyaXB0RmV0Y2hlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBD
YWNoZWRTY3JpcHRGZXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTMw
NTkyNjYxRTI3QTNDNjAwRDU3Qzk4IC8qIENhY2hlZFNjcmlwdEZldGNoZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkU2NyaXB0RmV0Y2hlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFMzA3REVDNjFEODFFNDQ4MDAxNDFDQUYgLyogQ2FjaGVkTW9k
dWxlU2NyaXB0TG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENhY2hlZE1vZHVsZVNjcmlwdExvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUzMDdERUM3MUQ4MUU0NDgwMDE0MUNBRiAvKiBDYWNoZWRNb2R1bGVTY3JpcHRMb2FkZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVkTW9kdWxlU2NyaXB0TG9h
ZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzMDdERUQyMUQ4MUU0RUQwMDE0
MUNBRiAvKiBMb2FkYWJsZU1vZHVsZVNjcmlwdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMb2FkYWJsZU1vZHVsZVNjcmlwdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUzMDdERUQzMUQ4MUU0RUQwMDE0MUNBRiAvKiBMb2FkYWJsZU1vZHVsZVNj
cmlwdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMb2FkYWJsZU1vZHVsZVNj
cmlwdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzE1MEVBNTFEQTcyMThEMDAx
OTQwMTIgLyogRE9NSklUSGVscGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01KSVRIZWxwZXJzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzMUNENzUw
MjI5Rjc0OTUwMEZCREExOSAvKiBUYWJsZUxheW91dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBU
YWJsZUxheW91dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzMjNDRkY5MUU1
QUY2QTUwMEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQcm9taXNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTRE9NQ29udmVydFByb21pc2UuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTMyOTI3NUUyMjU0M0Y1NzAwMzA4QTlBIC8qIENTU1N0eWxlVmFsdWUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTU3R5bGVWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUzMjkyNzYwMjI1NDNGNTgwMDMwOEE5QSAvKiBDU1NTdHlsZUltYWdlVmFs
dWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTU3R5bGVJbWFnZVZhbHVlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTMyOTI3NjEyMjU0M0Y1ODAwMzA4QTlBIC8qIENTU1Vu
cGFyc2VkVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTVW5wYXJzZWRWYWx1ZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzMjkyNzYyMjI1NDNGNTgwMDMwOEE5QSAv
KiBDU1NOdW1lcmljVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTTnVtZXJpY1ZhbHVl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTMyOTI3NjMyMjU0M0Y1OTAwMzA4
QTlBIC8qIENTU1VuaXRWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NVbml0VmFsdWUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzI5Mjc2NjIyNTQzRkRFMDAzMDhB
OUEgLyogRE9NUmVjdFJlYWRPbmx5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERPTVJlY3RSZWFk
T25seS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzMzQ4MjVFMURDOTNBQTAw
MDlDOTU0NCAvKiBET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0b3J5LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IERPTUpJVEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaDsgcGF0aCA9
IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlFMzNEMENCQzI2NzJFMUIzMDA3
NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9N
R2xvYmFsT2JqZWN0SW5saW5lcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzQz
MkRFMDI1RDM3N0UyMDA1OEU2MTIgLyogV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzQzMkRFMzI1RDM3N0UzMDA1OEU2MTIgLyog
V29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFdvcmtlck1vZHVsZVNjcmlwdExvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUzNDdFNUY4MjVENEYwMDAwMEYxN0E1QyAvKiBXb3JrZXJTY3JpcHRGZXRj
aGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdvcmtlclNjcmlwdEZldGNo
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM0RUU0OUYxREMyRDU3NTAwRUFB
OUQzIC8qIEpTRXZlbnRDdXN0b20uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNFdmVudEN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzUxODhCMzI1
RDM4N0NGMDBBNzdBRjMgLyogTW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1vZHVsZVNjcmlwdExvYWRlckNsaWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMzU4MDJCNTFEQzg0MzU4MDBBOTc3M0MgLyogRE9NSklU
SURMVHlwZUZpbHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBET01KSVRJ
RExUeXBlRmlsdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzI0MjUy
N0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklUT3BlcmF0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb3JlSklUT3BlcmF0aW9ucy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3Jl
SklUT3BlcmF0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3Jl
SklUT3BlcmF0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzVCOTA3QzIz
RjYwNjc3MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTG9jYWxpemVkRGV2aWNlTW9kZWwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTM1QjkwN0UyM0Y2MDY3NzAwMDAxMUZGIC8qIExvY2FsaXplZERldmlj
ZU1vZGVsLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTG9jYWxp
emVkRGV2aWNlTW9kZWwubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzNjQzMjFB
MjVEMzdBNjYwMEY5MEUyQSAvKiBNb2R1bGVTY3JpcHRMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTW9kdWxlU2NyaXB0TG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUzN0M4NjRGMUVCNjNFMkQwMDg3QzZDQSAvKiBKU0RPTVByb21pc2UuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01Qcm9taXNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzODgzODk0MUJBRDE0NUYwMEQ2MkVFMyAvKiBTY3JpcHRN
b2R1bGVMb2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2Ny
aXB0TW9kdWxlTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM4ODM4
OTUxQkFEMTQ1RjAwRDYyRUUzIC8qIFNjcmlwdE1vZHVsZUxvYWRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRNb2R1bGVMb2FkZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTM4RDA2MDkxRjhFODExOTAwNjQ5Q0YyIC8qIE1vZHVsZUZldGNoUGFy
YW1ldGVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb2R1bGVGZXRjaFBh
cmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM5NjI4QkQyMzk1NzI4
RTAwNjU4RUNEIC8qIERldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMzk2MjhDMDIzOTU3NDMwMDA2NThFQ0Qg
LyogTW90aW9uTWFuYWdlckNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBNb3Rpb25NYW5hZ2VyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUz
OTc1Qjc2MUVDOUFGMzkwMDg0NzcxNyAvKiBKU0RvY3VtZW50RnJhZ21lbnRET01KSVQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEb2N1bWVudEZyYWdtZW50RE9N
SklULmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM5NzVCNzcxRUM5QUYzOTAw
ODQ3NzE3IC8qIEpTRWxlbWVudERPTUpJVC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU0VsZW1lbnRET01KSVQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFMzk3NUI3ODFFQzlBRjM5MDA4NDc3MTcgLyogSlNFdmVudERPTUpJVC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50RE9NSklULmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTM5OEZDMjMxREMzMkExQjAwM0M0Njg0IC8qIERPTUpJ
VEhlbHBlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NSklU
SGVscGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQTc3NjY1MURDODVE
MjIwMEI2OTBEOCAvKiBET01KSVRJRExDb252ZXJ0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERPTUpJVElETENvbnZlcnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTNBNzc2NjYxREM4NUQyMjAwQjY5MEQ4IC8qIERPTUpJVElETFR5cGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NSklUSURMVHlwZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFM0E4NkZDMTI2OTVFQjQ4MDA1OTI2NEQgLyogQ2FwdGlvblByZWZlcmVu
Y2VzRGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FwdGlvblBy
ZWZlcmVuY2VzRGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNBRTZD
RDEyMjUyRjI3MDAwQzcwQjUwIC8qIEFsbERlc2NlbmRhbnRzQ29sbGVjdGlvbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBbGxEZXNjZW5kYW50c0NvbGxlY3Rpb24u
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0FGQTk2NDFEQTZFOTA4MDAyODYx
QkQgLyogSlNOb2RlRE9NSklULmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTTm9kZURPTUpJVC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQUZE
N0FCMjU1RjUwREMwMEU1RTMwRSAvKiBXb3JrZXJUaHJlYWRUeXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdvcmtlclRocmVhZFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNCMkYw
RTMxRDdGMzVFQzAwQjBDOUQxIC8qIExvYWRhYmxlQ2xhc3NpY1NjcmlwdC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMb2FkYWJsZUNsYXNzaWNTY3JpcHQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0IyRjBFNDFEN0YzNUVDMDBCMEM5RDEgLyog
TG9hZGFibGVDbGFzc2ljU2NyaXB0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IExvYWRhYmxlQ2xhc3NpY1NjcmlwdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
M0IyRjBFNzFEN0YzNUVDMDBCMEM5RDEgLyogTG9hZGFibGVTY3JpcHQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTG9hZGFibGVTY3JpcHQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTNCMkYwRTgxRDdGMzVFQzAwQjBDOUQxIC8qIExvYWRhYmxlU2NyaXB0Q2xp
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvYWRhYmxlU2NyaXB0Q2xp
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQjJGMEU5MUQ3RjNEM0MwMEIw
QzlEMSAvKiBMb2FkYWJsZVNjcmlwdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBMb2FkYWJsZVNjcmlwdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUUzQjdDMDYyMURDMzQxNUEwMDFGQjBCOCAvKiBKU0RvY3VtZW50RE9NSklULmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRG9jdW1lbnRET01KSVQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0JCQzI0NTIzODM1NTFBMDA2RUMzOUYgLyogQ1NT
VmFsdWVLZXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVmFsdWVLZXku
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNCQzgyNzMyMjUzMDIyMTAwNTI3NkRF
IC8qIE5vZGVMaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vZGVMaXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNCRjE5RTEyMkFGMkY1NTAwOUM5OTI2IC8qIFhNTEh0
dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBYTUxIdHRwUmVx
dWVzdFByb2dyZXNzRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0JG
MTlFMzIyQUYyRkE1MDA5Qzk5MjYgLyogT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVudC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBPdmVyY29uc3RyYWluZWRFcnJvckV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNCRjE5RTQyMkFGMkZDRjAwOUM5OTI2IC8qIENsb3NlRXZl
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2xvc2VFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUzQkYxOUU1MjJBRjJGRjQwMDlDOTkyNiAvKiBCZWZvcmVMb2FkRXZl
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmVmb3JlTG9hZEV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNCRjE5RTYyMkFGMzAyQTAwOUM5OTI2IC8qIEhhc2hDaGFu
Z2VFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIYXNoQ2hhbmdlRXZlbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0JGMTlFNzIyQUYzMDlGMDA5Qzk5MjYgLyogU2Vj
dXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTZWN1cml0
eVBvbGljeVZpb2xhdGlvbkV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTNDMDQxMkQyNTRDQTI5QjAwMjFEMEU2IC8qIFN5c3RlbVNvdW5kTWFuYWdlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeXN0ZW1Tb3VuZE1hbmFnZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNDMDQxMzEyNTRDQTY2NjAwMjFEMEU2IC8qIFN5c3RlbVNv
dW5kRGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtU291bmREZWxlZ2F0ZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0MwNDEzMjI1NENBNzExMDAyMUQwRTYgLyogU3lz
dGVtU291bmRNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbVNvdW5kTWFuYWdl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzQzk5QTA4MURDM0Q0MTcwMDc5
NEFEMyAvKiBET01KSVRDaGVja0RPTS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBET01KSVRDaGVja0RPTS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFM0M5QUVD
OTIxMTMxNDc0MDA0MTlCOTIgLyogSlNNaWNyb3Rhc2tDYWxsYmFjay5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU01pY3JvdGFza0NhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUUzQ0EwQkZBMjY3M0Y0NzgwMDlGREQ2NyAvKiBKU0RPTUJpbmRpbmdT
ZWN1cml0eUlubGluZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01CaW5kaW5nU2VjdXJpdHlJbmxp
bmVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzRDA0OTkzMURBREMwNDUwMDcx
OEYzQyAvKiBOb2RlQ29uc3RhbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5vZGVDb25zdGFudHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNFNEUyQTUx
RTNCMTZGQzAwMjNCQjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcmlwdEVsZW1lbnRDYWNoZWRT
Y3JpcHRGZXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNFNEUyQTYx
RTNCMTZGQzAwMjNCQjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRG
ZXRjaGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzRkEzODYxMUQ3MTZFNzYw
MEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFBlbmRpbmdTY3JpcHRDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRvckFzc2VydGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudEl0ZXJhdG9yQXNz
ZXJ0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDAxRTBBMzFDM0MwQjgz
MDBGMzREMTAgLyogU3R5bGVDaGFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gU3R5bGVDaGFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQwMUUwQTUx
QzNDMENGNzAwRjM0RDEwIC8qIFN0eWxlQ2hhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFN0eWxlQ2hhbmdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTQwM0I3OUYyNTFCMTE4QjAwMTlFODAwIC8qIExheW91dEludGVncmF0aW9uQ292ZXJh
Z2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0MDNCN0ExMjUxQjExOTMwMDE5RTgwMCAv
KiBMYXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IExheW91dEludGVncmF0aW9uQ292ZXJhZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTQwNkYzRkIxMTk4MzA3RDAwOUQ1OUQ2IC8qIENvbG9yRGF0YS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBDb2xvckRhdGEuY3BwOyBwYXRoID0gRGVy
aXZlZFNvdXJjZXMvV2ViQ29yZS9Db2xvckRhdGEuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OworCQlFNDE4MDI1MzIzRDQ1NDlBMDBGRkIwNzEgLyogTGF5b3V0SW50ZWdy
YXRpb25Cb3hUcmVlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dElu
dGVncmF0aW9uQm94VHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDE4MDI1
NjIzRDQ1NEI1MDBGRkIwNzEgLyogTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IExheW91dEludGVncmF0aW9uQm94VHJlZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU0MTkwNDFFMUNDNjQ4NkIwMEMzNUY1RCAvKiBGb250U2VsZWN0b3JD
bGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udFNlbGVjdG9yQ2xp
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0MUVBMDM4MTE5ODM2REIwMDcx
MEJDNSAvKiBDU1NQcm9wZXJ0eU5hbWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgbmFtZSA9IENTU1Byb3BlcnR5TmFtZXMuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9DU1NQcm9wZXJ0eU5hbWVzLmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKKwkJRTQxRUEwMzkxMTk4Mzc0OTAwNzEwQkM1IC8qIENTU1ZhbHVlS2V5d29yZHMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQ1NTVmFsdWVLZXl3b3Jkcy5j
cHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0NTU1ZhbHVlS2V5d29yZHMuY3BwOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlFNDIwNTAxNDIxNDE5MDFBMDA2
NkVGM0IgLyogUHJvY2Vzc1dhcm1pbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUHJvY2Vzc1dhcm1pbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQyMDUw
MTYyMTQxOTAxQjAwNjZFRjNCIC8qIFByb2Nlc3NXYXJtaW5nLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFByb2Nlc3NXYXJtaW5nLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTQyNEEzOUQxMzMwREYwMTAwQ0Y2REM5IC8qIExlZ2FjeVRpbGVHcmlk
VGlsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMZWdhY3lUaWxlR3JpZFRp
bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQyNEEzOUYxMzMwREYxRTAwQ0Y2
REM5IC8qIExlZ2FjeVRpbGVHcmlkVGlsZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IExlZ2FjeVRpbGVHcmlkVGlsZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbGxlY3Rpb25JbmRleENhY2hl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0Mjk1RkEzMTJCMDYxNEUwMEQxQUNF
MCAvKiBSZXNvdXJjZUxvYWRQcmlvcml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZXNvdXJjZUxvYWRQcmlvcml0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFNDJFNzZEOTFDN0FGNzZDMDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVVcGRhdGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFNDJFNzZEQjFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVVcGRhdGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQzMTA1QjcxNjc1MEYwQzAwREIyRkI4IC8qIE5vZGVU
cmF2ZXJzYWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTm9kZVRy
YXZlcnNhbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0MzEwNUJBMTY3NTBG
MTYwMERCMkZCOCAvKiBOb2RlVHJhdmVyc2FsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE5vZGVUcmF2ZXJzYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQz
MTJBQjUyNEIzMjY1NjAwNjc4MzQ5IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMYXlvdXRJbnRlZ3JhdGlvblBh
Z2luYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDMxMkFCNzI0QjMy
NjU2MDA2NzgzNDkgLyogTGF5b3V0SW50ZWdyYXRpb25QYWdpbmF0aW9uLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDNBMDIzQTE3RUIzNzBBMDA0Q0REMjUgLyogUmVu
ZGVyRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0M0EwMjNDMTdFQjM3MTMwMDRD
REQyNSAvKiBSZW5kZXJFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFJlbmRlckVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
NDNBRjhFNDFBQzVCN0REMDBDQTcxN0UgLyogQ2FjaGVWYWxpZGF0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENhY2hlVmFsaWRhdGlvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0M0FGOEU1MUFDNUI3REQwMENBNzE3RSAvKiBDYWNoZVZh
bGlkYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FjaGVWYWxpZGF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDBBQTk1MUM2ODQyMDgwMEEy
NjVDQyAvKiBFbGVtZW50QW5kVGV4dERlc2NlbmRhbnRJdGVyYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50QW5kVGV4dERlc2NlbmRhbnRJdGVyYXRvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQwREY1NDI2RUI1M0RGMDA0QUYwNkIgLyog
VGV4dEJveFBhaW50ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEJv
eFBhaW50ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0MERGNTcyNkVCNTNF
QTAwNEFGMDZCIC8qIFRleHRCb3hQYWludGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFRleHRCb3hQYWludGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTQ0MEZENTEyNUE0QUZERjAwRjdDODQ5IC8qIFN0eWxlZE1hcmtlZFRleHQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVkTWFya2VkVGV4dC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFNDQwRkQ1NDI1QTRBRkVFMDBGN0M4NDkgLyogU3R5bGVk
TWFya2VkVGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHlsZWRNYXJrZWRUZXh0LmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0NTEwNzcyMDJDN0UwMTAwNjU3RDMzIC8q
IENvbXBpbGVkU2VsZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29t
cGlsZWRTZWxlY3Rvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTM4RjBD
RDYzMzEwMDBGQURBNzUgLyogSFRNTEF1ZGlvRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MQXVkaW9FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTQ0NjEzOTAwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxBdWRpb0VsZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTEF1ZGlvRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTM5MTBDRDYzMzEwMDBGQURBNzUg
LyogSFRNTEF1ZGlvRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTEF1ZGlv
RWxlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDYxMzkyMENENjMz
MTAwMEZBREE3NSAvKiBIVE1MTWVkaWFFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEhUTUxNZWRpYUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNDQ2MTM5MzBDRDYzMzEwMDBGQURBNzUgLyogSFRNTE1lZGlhRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIVE1MTWVkaWFFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDYxMzk0MENENjMzMTAwMEZBREE3NSAvKiBI
VE1MTWVkaWFFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBIVE1MTWVkaWFFbGVt
ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0NjEzOTUwQ0Q2MzMxMDAw
RkFEQTc1IC8qIEhUTUxTb3VyY2VFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEhUTUxTb3VyY2VFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTQ0NjEzOTYwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxTb3VyY2VFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxTb3VyY2VFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDYxMzk3MENENjMzMTAwMEZBREE3NSAvKiBI
VE1MU291cmNlRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFNvdXJjZUVs
ZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTM5ODBDRDYzMzEw
MDBGQURBNzUgLyogSFRNTFZpZGVvRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIVE1MVmlkZW9FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTQ0NjEzOTkwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxWaWRlb0VsZW1lbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSFRNTFZpZGVvRWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTM5QTBDRDYzMzEwMDBGQURBNzUgLyogSFRN
TFZpZGVvRWxlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gSFRNTFZpZGVvRWxlbWVu
dC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDYxMzlCMENENjMzMTAwMEZB
REE3NSAvKiBNZWRpYUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1l
ZGlhRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0NjEzOUMwQ0Q2MzMx
MDAwRkFEQTc1IC8qIE1lZGlhRXJyb3IuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1lZGlh
RXJyb3IuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTM5RDBDRDYzMzEw
MDBGQURBNzUgLyogVGltZVJhbmdlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBUaW1lUmFuZ2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0
NjEzOUUwQ0Q2MzMxMDAwRkFEQTc1IC8qIFRpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVGltZVJhbmdlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFNDQ2MTM5RjBDRDYzMzEwMDBGQURBNzUgLyogVGltZVJhbmdlcy5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gVGltZVJhbmdlcy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0NDYxM0EwMENENjMzMTAwMEZBREE3NSAvKiBWb2lkQ2FsbGJhY2suaWRsICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IFZvaWRDYWxsYmFjay5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU0NDYxM0I0MENENjM0NEUwMEZBREE3NSAvKiBWb2lkQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVm9pZENhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU0NDYxNDBFMENENjgyNjkwMEZBREE3NSAvKiBKU0hUTUxWaWRlb0VsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNIVE1MVmlkZW9F
bGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0NjE0MEYwQ0Q2ODI2
OTAwRkFEQTc1IC8qIEpTSFRNTFZpZGVvRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0hUTUxWaWRlb0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTQ0NjE0MTAwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU01lZGlhRXJyb3IuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTQxMTBDRDY4MjY5MDBGQURBNzUgLyogSlNNZWRp
YUVycm9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTWVkaWFFcnJvci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDQ2MTQxMjBDRDY4MjY5MDBGQURBNzUg
LyogSlNUaW1lUmFuZ2VzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTVGltZVJhbmdlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NDYxNDEz
MENENjgyNjkwMEZBREE3NSAvKiBKU1RpbWVSYW5nZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNUaW1lUmFuZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0NDdGNUIxMjY2Q0Y2M0QwMDEzM0YwMCAvKiBUZXh0Qm94U2VsZWN0YWJsZVJhbmdlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRCb3hTZWxlY3RhYmxlUmFuZ2UuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0QjRCQjExNDE2NTBENzAwMkIxRDhCIC8q
IFNlbGVjdG9yQ2hlY2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTZWxlY3RvckNoZWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDRC
NEJCMjE0MTY1MEQ3MDAyQjFEOEIgLyogU2VsZWN0b3JDaGVja2VyLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFNlbGVjdG9yQ2hlY2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNDRFRTNBNjE3NTc2RTU1MDBFRUU4Q0YgLyogRm9udEdlbmVyaWNGYW1pbGll
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250R2VuZXJpY0ZhbWlsaWVzLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0RUUzQTcxNzU3NkU1NTAwRUVFOENGIC8qIEZvbnRH
ZW5lcmljRmFtaWxpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udEdlbmVyaWNGYW1pbGllcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDRGQTE4NDFCQ0E2QjVBMDA5MUI2RUYgLyog
Q29tcG9zZWRUcmVlSXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q29tcG9zZWRUcmVlSXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ0
RkExODYxQkNBOTE1NjAwOTFCNkVGIC8qIENvbXBvc2VkVHJlZUl0ZXJhdG9yLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENvbXBvc2VkVHJlZUl0ZXJhdG9yLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ1MUM2MzMyMzk0MDU4RTAwOTkzMTkwIC8q
IExheW91dEludGVncmF0aW9uSW5saW5lQ29udGVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBMYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTQ1MzIyQTkxNDBDRTI2NzAwNUEwRjkyIC8qIFNlbGVjdG9yUXVl
cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2VsZWN0b3JRdWVy
eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NTMyMkFBMTQwQ0UyNjcwMDVB
MEY5MiAvKiBTZWxlY3RvclF1ZXJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNlbGVjdG9yUXVlcnkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ1MzkwMTkw
RUFGQ0FDQTAwMzY5NUM4IC8qIFBhc3RlYm9hcmRJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IHBhdGggPSBQYXN0ZWJvYXJkSU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNDUzOTAzMjBFQUZENjM3MDAzNjk1QzggLyogUGxhdGZvcm1TY3JlZW5JT1Mu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQbGF0Zm9ybVNjcmVl
bklPUy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ1MzkwMzQwRUFGRDYzNzAw
MzY5NUM4IC8qIFNjcm9sbFZpZXdJT1MubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBTY3JvbGxWaWV3SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFNDUzOTAzQzBFQUZENjM3MDAzNjk1QzggLyogV2lkZ2V0SU9TLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2lkZ2V0SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNDUzOTBBRDBFQUZGNEI1MDAzNjk1QzggLyogU3lzdGVtTWVtb3J5SU9T
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbU1lbW9yeUlP
Uy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NUE2QzczMjQxN0JBNEMwMDZF
NENENSAvKiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NUE2Qzc2MjQxN0JBNTkwMDZFNENENSAv
KiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFNDVCQTZBODIzNzQ5MjZCMDA0REZDMDcgLyogTWF0Y2hlZERlY2xh
cmF0aW9uc0NhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGNoZWRE
ZWNsYXJhdGlvbnNDYWNoZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDVCQTZB
QjIzNzQ5MjdCMDA0REZDMDcgLyogTWF0Y2hlZERlY2xhcmF0aW9uc0NhY2hlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IE1hdGNoZWREZWNsYXJhdGlvbnNDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU0NUJBNkIyMjM3NjIyN0UwMDRERkMwNyAvKiBTdHlsZUFkanVzdGVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlQWRqdXN0ZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDVCQTZCNTIzNzYyMjlGMDA0REZD
MDcgLyogU3R5bGVBZGp1c3Rlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
dHlsZUFkanVzdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0NjA1RkVBMjE2
NjQ4MDgwMEU1MzA0NiAvKiBQcmV3YXJtSW5mb3JtYXRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUHJld2FybUluZm9ybWF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU0NjE4MDJDMUM4REQyOTAwMDI2QzAyQyAvKiBTdHlsZVJlbGF0aW9ucy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVJlbGF0aW9ucy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFNDYxODAyRTFDOERENEQyMDAyNkMwMkMgLyogU3R5bGVS
ZWxhdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVS
ZWxhdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDYxRDY1QzFCQjBD
N0YwMDBDQjU2NDUgLyogU3R5bGVTY29wZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBTdHlsZVNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTQ2MUQ2NUUxQkIwQzgwRDAwQ0I1NjQ1IC8qIFN0eWxlU2NvcGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFNDYyQTRBMDExM0U3MUJFMDA0QTQyMjAgLyogSW50UG9pbnRIYXNoLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEludFBvaW50SGFzaC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNDZBMkIxQjE3Q0E2NUI5MDAwREJDRDggLyogVHlwZWRFbGVtZW50RGVz
Y2VuZGFudEl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFR5cGVk
RWxlbWVudERlc2NlbmRhbnRJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFNDZBMkIxRDE3Q0E3NkIxMDAwREJDRDggLyogRWxlbWVudENoaWxkSXRlcmF0b3IuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudENoaWxkSXRlcmF0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ2QjQxRjgxQ0IyNEU3MDAwOEYxMURFIC8qIFNj
cmlwdERpc2FsbG93ZWRTY29wZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBT
Y3JpcHREaXNhbGxvd2VkU2NvcGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3
NzhCN0QxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21FdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU0Nzc4QjdFMTE1QTU4MUEwMEI1RDM3MiAvKiBKU0N1c3RvbUV2ZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ3VzdG9tRXZlbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3QTNBQzIxQzVFQUJCRTAwQ0NCRkE3IC8qIFN0
eWxlU2hhcmluZ1Jlc29sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFN0eWxlU2hhcmluZ1Jlc29sdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTQ3QTNBQzQxQzVFQUM3OTAwQ0NCRkE3IC8qIFN0eWxlU2hhcmluZ1Jlc29sdmVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlU2hhcmluZ1Jlc29sdmVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0N0E5N0NFMTYzMDU5RkMwMDVEQ0Q5OSAvKiBT
dHlsZUludmFsaWRhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFN0eWxlSW52YWxpZGF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDdB
OTdDRjE2MzA1OUZDMDA1RENEOTkgLyogU3R5bGVJbnZhbGlkYXRvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUludmFsaWRhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU0N0I0QkU2MEU3MTI0MTYwMDAzODg1NCAvKiBDYWNoZWRSZXNvdXJjZUhh
bmRsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRSZXNvdXJjZUhh
bmRsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDdCNEJFNzBFNzEyNDE2MDAw
Mzg4NTQgLyogQ2FjaGVkUmVzb3VyY2VIYW5kbGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gQ2FjaGVkUmVzb3VyY2VIYW5kbGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNDdDMzkxRjFGRTZFMEQ4MDBCQkJDNkIgLyogUmVuZGVyVHJlZVVwZGF0
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZVVw
ZGF0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDdDMzkyMDFGRTZFMEQ5
MDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNDdDMzkyMTFGRTZFMERBMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXJG
aXJzdExldHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5k
ZXJUcmVlQnVpbGRlckZpcnN0TGV0dGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTQ3QzM5MjIxRkU2RTBEQTAwQkJCQzZCIC8qIFJlbmRlclRyZWVVcGRhdGVyR2VuZXJhdGVk
Q29udGVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJU
cmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFNDdDMzkyMzFGRTZFMERBMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXJNdWx0aUNv
bHVtbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJUcmVl
QnVpbGRlck11bHRpQ29sdW1uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3
QzM5MjQxRkU2RTBEQjAwQkJCQzZCIC8qIFJlbmRlclRyZWVQb3NpdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJUcmVlUG9zaXRpb24uaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3QzM5MjUxRkU2RTBEQjAwQkJCQzZCIC8qIFJlbmRlclRyZWVV
cGRhdGVyR2VuZXJhdGVkQ29udGVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTQ3QzM5MjYxRkU2RTBEQzAwQkJCQzZCIC8qIFJlbmRlclRyZWVCdWlsZGVy
Rmlyc3RMZXR0ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVHJl
ZUJ1aWxkZXJGaXJzdExldHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDdD
MzkyNzFGRTZFMERDMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXJNdWx0aUNvbHVtbi5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJUcmVlQnVpbGRlck11bHRpQ29s
dW1uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0N0MzOTI4MUZFNkUwREQwMEJC
QkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlckxpc3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU0N0MzOTI5MUZFNkUwREUwMEJCQkM2QiAvKiBSZW5kZXJUcmVlUG9zaXRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZVBvc2l0aW9u
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3QzM5MkExRkU2RTBERTAwQkJC
QzZCIC8qIFJlbmRlclRyZWVCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFJlbmRlclRyZWVCdWlsZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0
N0MzOTJCMUZFNkUwREYwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlckxpc3QuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVuZGVyVHJlZUJ1aWxkZXJMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTQ3QzM5MkMxRkU2RTBERjAwQkJCQzZC
IC8qIFJlbmRlclRyZWVVcGRhdGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFJlbmRlclRyZWVVcGRhdGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0N0Uy
NzY0MTYwMzZFRDIwMEVFMkFGQiAvKiBFeHRlbnNpb25TdHlsZVNoZWV0cy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBFeHRlbnNpb25TdHlsZVNoZWV0cy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFNDdFMjc2NzE2MDM2RURDMDBFRTJBRkIgLyogRXh0ZW5zaW9u
U3R5bGVTaGVldHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXh0
ZW5zaW9uU3R5bGVTaGVldHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDdG
QzhBMTI1Qjg0RDcxMDA1NDk1RkMgLyogTG9hZFNjaGVkdWxpbmdNb2RlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvYWRTY2hlZHVsaW5nTW9kZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFNDgxMzdCODFEQjNCNTI2MDA1QzU5QkYgLyogU3R5bGVWYWxpZGl0
eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVZhbGlkaXR5Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0ODYzQ0ZBMjM4NDJFODcwMDk3MjE1OCAvKiBS
dWxlRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSdWxlRGF0
YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0ODYzQ0ZEMjM4NDJFOUUwMDk3
MjE1OCAvKiBSdWxlRGF0YS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSdWxl
RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNDk0NkVBQzE1NkU2NEREMDBE
MzI5N0YgLyogU3R5bGVSdWxlSW1wb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFN0eWxlUnVsZUltcG9ydC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU0OTQ2RUFEMTU2RTY0REQwMEQzMjk3RiAvKiBTdHlsZVJ1bGVJbXBvcnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVSdWxlSW1wb3J0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU0OUJEOUY5MTMxRkQyRUQwMDNDNTZGMCAvKiBDU1NWYWx1ZVBv
b2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ1NTVmFsdWVQb29sLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0OUJEQTBBMTMxRkQzRTUwMDNDNTZGMCAvKiBD
U1NWYWx1ZVBvb2wuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NT
VmFsdWVQb29sLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBMDA3ODIxQjgy
MEVDODAwMkM1QTZFIC8qIERhdGFVUkxEZWNvZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERhdGFVUkxEZWNvZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0QTAwNzg0MUI4MjBFRDMwMDJDNUE2RSAvKiBEYXRhVVJMRGVjb2Rlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRhVVJMRGVjb2Rlci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QTE4MjJGMUYxM0JFNTgwMEZFRjY5OCAvKiBTdHlsZUlu
dmFsaWRhdGlvbkZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUludmFsaWRhdGlvbkZ1
bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEExQUM3ODIyRkFGRDUw
MDAxN0I3NUIgLyogTGVnYWN5TGluZUxheW91dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMZWdhY3lMaW5lTGF5b3V0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0QTY2NEM0MjUyMUI3NzcwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9y
TW9kZXJuUGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRJbnRl
Z3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJuUGF0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFNEE2NjRDNTI1MjFCNzc4MDA3MDgxREMgLyogTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVy
YXRvckxlZ2FjeVBhdGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0
SW50ZWdyYXRpb25SdW5JdGVyYXRvckxlZ2FjeVBhdGguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTRBNjY0QzYyNTIxQjc3ODAwNzA4MURDIC8qIExheW91dEludGVncmF0aW9uUnVu
SXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0SW50ZWdy
YXRpb25SdW5JdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEE2NjRD
NzI1MjFCNzc5MDA3MDgxREMgLyogTGF5b3V0SW50ZWdyYXRpb25SdW5JdGVyYXRvci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0
ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBNzk5NEUyMEVFNEFF
MTAwQzE5NTY4IC8qIENTU1BhcnNlckNvbnRleHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gQ1NTUGFyc2VyQ29udGV4dC5oOyBwYXRoID0gcGFyc2VyL0NTU1BhcnNlckNvbnRl
eHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBNzk5NTAyMEVFNEFFMjAwQzE5
NTY4IC8qIENTU1BhcnNlckNvbnRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBuYW1lID0gQ1NTUGFyc2VyQ29udGV4dC5jcHA7IHBhdGggPSBwYXJzZXIvQ1NTUGFyc2VyQ29u
dGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QTgxNEQzMUM2REVDNDAw
MEJGODVBQyAvKiBDbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNEE4MTRENTFDNkRFRThEMDBCRjg1QUMgLyogQ2xhc3NDaGFuZ2VJbnZh
bGlkYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2xhc3ND
aGFuZ2VJbnZhbGlkYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEE4
MTRENzFDNzBFMTA1MDBCRjg1QUMgLyogQXR0cmlidXRlQ2hhbmdlSW52YWxpZGF0aW9uLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF0dHJpYnV0ZUNoYW5nZUludmFs
aWRhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QTgxNEQ5MUM3MEUx
MEQwMEJGODVBQyAvKiBBdHRyaWJ1dGVDaGFuZ2VJbnZhbGlkYXRpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQXR0cmlidXRlQ2hhbmdlSW52YWxpZGF0aW9uLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QTgxNEREMUM3MzM4RDEwMEJGODVBQyAvKiBJZENo
YW5nZUludmFsaWRhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBJZENoYW5nZUludmFsaWRhdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0QTgxNERGMUM3MzM4RUIwMEJGODVBQyAvKiBJZENoYW5nZUludmFsaWRhdGlvbi5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJZENoYW5nZUludmFsaWRhdGlvbi5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEE4RDIxNDIyNTc4REEwMDBBODQ2M0MgLyogRXZl
bnRSZWdpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRXZlbnRSZWdpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBOEQyMTUyMjU3OERBMDAwQTg0NjND
IC8qIEV2ZW50UmVnaW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEV2ZW50UmVnaW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBQkFCREIy
MzYwODhGRDAwRkE0MzQ1IC8qIExheW91dEludGVncmF0aW9uTGluZUxheW91dC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBQkFCREUyMzYwODkzRDAwRkE0MzQ1IC8q
IExheW91dEludGVncmF0aW9uTGluZUxheW91dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVMYXlvdXQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFNEFCQUJFMjIzNjFBMzI5MDBGQTQzNDUgLyogUHJvcGVydHlD
YXNjYWRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb3BlcnR5Q2FzY2Fk
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEFCQUJFNTIzNjFBMzQyMDBGQTQz
NDUgLyogUHJvcGVydHlDYXNjYWRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFByb3BlcnR5Q2Fz
Y2FkZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QUJBQkYwMjM2OEI5MTgw
MEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXJTdGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdHls
ZUJ1aWxkZXJTdGF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QUJBQkYy
MjM2OEI5NTgwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXJTdGF0ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTdHlsZUJ1aWxkZXJTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNEFCQUJGNDIzNjhDNkVGMDBGQTQzNDUgLyogQ2FzY2FkZUxldmVsLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhc2NhZGVMZXZlbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFNEFCQUMwMjIzNkFFOTU4MDBGQTQzNDUgLyogU3R5bGVCdWls
ZGVyR2VuZXJhdGVkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlQnVp
bGRlckdlbmVyYXRlZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEFCQUMwNTIz
NkIwMTZDMDBGQTQzNDUgLyogU3R5bGVCdWlsZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN0eWxlQnVpbGRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
NEFCQUMwNzIzNkIwMTgxMDBGQTQzNDUgLyogU3R5bGVCdWlsZGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFN0eWxlQnVpbGRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0
QUU3QzE1MTdEMUJCOTUwMDA5RkIzMSAvKiBFbGVtZW50SXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudEl0ZXJhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU0QUU3QzE5MTdEMjMyMzUwMDA5RkIzMSAvKiBFbGVtZW50QW5jZXN0b3JJ
dGVyYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50QW5jZXN0
b3JJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEFGQ0ZBNDBEQUYy
OUEzMDBGNUY1NUMgLyogVW5pdEJlemllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBVbml0QmV6aWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QUZEMDA1
MERBRjMzNTQwMEY1RjU1QyAvKiBTTUlMVGltZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTTUlMVGltZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUU0QUZEMDA2MERBRjMzNTQwMEY1RjU1QyAvKiBTTUlMVGltZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTTUlMVGltZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlFNEFGRDAwNzBEQUYzMzU0MDBGNUY1NUMgLyogU01JTFRpbWVDb250YWluZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU01JTFRpbWVDb250YWluZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEFGRDAwODBEQUYzMzU0MDBGNUY1NUMgLyog
U01JTFRpbWVDb250YWluZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU01J
TFRpbWVDb250YWluZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRBRkQwMDkw
REFGMzM1NDAwRjVGNTVDIC8qIFNWR1NNSUxFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFNWR1NNSUxFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTRBRkQwMEEwREFGMzM1NDAwRjVGNTVDIC8qIFNWR1NNSUxFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1NNSUxFbGVtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QjQxRTAxMENCRjhFQUEwMEFGMkVDRSAvKiBQcm9n
cmVzc0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFByb2dy
ZXNzRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEI0MUUwMjBDQkY4
RUFBMDBBRjJFQ0UgLyogUHJvZ3Jlc3NFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBQcm9ncmVzc0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0
QjQxRTAzMENCRjhFQUEwMEFGMkVDRSAvKiBQcm9ncmVzc0V2ZW50LmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBQcm9ncmVzc0V2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTRCNDFFMEMwQ0JGOTBCRDAwQUYyRUNFIC8qIE1lZGlhUGxheWVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhUGxheWVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTRCNDFFMEQwQ0JGOTBCRDAwQUYyRUNFIC8qIE1lZGlhUGxheWVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGxheWVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QjQxRTMzMENCRkI2MDkwMEFGMkVDRSAvKiBSZW5k
ZXJWaWRlby5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJW
aWRlby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QjQxRTM0MENCRkI2MDkw
MEFGMkVDRSAvKiBSZW5kZXJWaWRlby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW5kZXJWaWRlby5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEI0MjM3MTBD
QkZCNkUwMDBBRjJFQ0UgLyogSlNIVE1MU291cmNlRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0hUTUxTb3VyY2VFbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRCNDIzNzIwQ0JGQjZFMDAwQUYyRUNFIC8qIEpTSFRNTFNv
dXJjZUVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MU291
cmNlRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEI0MjM3RDBDQkZC
NzNDMDBBRjJFQ0UgLyogSlNIVE1MQXVkaW9FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTEF1ZGlvRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU0QjQyMzdFMENCRkI3M0MwMEFGMkVDRSAvKiBKU0hUTUxBdWRpb0Vs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNIVE1MQXVkaW9FbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QjQyMzdGMENCRkI3M0MwMEFG
MkVDRSAvKiBKU0hUTUxNZWRpYUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNIVE1MTWVkaWFFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTRCNDIzODAwQ0JGQjczQzAwQUYyRUNFIC8qIEpTSFRNTE1lZGlhRWxlbWVudC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0hUTUxNZWRpYUVsZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRCNDIzODUwQ0JGQjczQzAwQUYyRUNFIC8q
IEpTUHJvZ3Jlc3NFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1Byb2dyZXNzRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEI0
MjM4NjBDQkZCNzNDMDBBRjJFQ0UgLyogSlNQcm9ncmVzc0V2ZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTUHJvZ3Jlc3NFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNEI2NUE1NzEzMkZBOEU3MDA3MEU3QkUgLyogTGVnYWN5VGlsZUdyaWQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5VGlsZUdyaWQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRCNjVBNTkxMzJGQUFGOTAwNzBFN0JFIC8qIExlZ2Fj
eVRpbGVHcmlkLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTGVn
YWN5VGlsZUdyaWQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QjY1QTVCMTMy
RkFDQjAwMDcwRTdCRSAvKiBMZWdhY3lUaWxlTGF5ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gTGVnYWN5VGlsZUxheWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU0QjY1QTVEMTMyRkFEQjYwMDcwRTdCRSAvKiBMZWdhY3lUaWxlTGF5ZXIubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBMZWdhY3lUaWxlTGF5ZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QkE1MDhGMUJDRkJEOTUwMEUzNEVGNyAvKiBD
b21wb3NlZFRyZWVBbmNlc3Rvckl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IENvbXBvc2VkVHJlZUFuY2VzdG9ySXRlcmF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTRCQkVEMEMxNEY0MDI1RDAwM0YwQjk4IC8qIFByb3BlcnR5U2V0Q1NTU3R5
bGVEZWNsYXJhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQ
cm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFNEJCRUQwRDE0RjQwMjVEMDAzRjBCOTggLyogUHJvcGVydHlTZXRDU1NTdHlsZURl
Y2xhcmF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb3BlcnR5U2V0
Q1NTU3R5bGVEZWNsYXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEJC
RUQ0QTE0RkNEQkExMDAzRjBCOTggLyogU3R5bGVSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU0QkJFRDRCMTRGQ0RCQTEwMDNGMEI5OCAvKiBTdHlsZVJ1bGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU0QzE3ODk1MEVFNjkwMzgwMDgyNEQ2OSAvKiBDU1NTZWxlY3Rvckxpc3QuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ1NTU2VsZWN0b3JMaXN0LmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRDMTc4OTYwRUU2OTAzODAwODI0RDY5
IC8qIENTU1NlbGVjdG9yTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
U1NTZWxlY3Rvckxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRDMjc5NTYw
Q0Y5NzQxOTAwRTk3Qjk4IC8qIFJlbmRlck1lZGlhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFJlbmRlck1lZGlhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTRDMjc5NTcwQ0Y5NzQxOTAwRTk3Qjk4IC8qIFJlbmRlck1lZGlhLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbmRlck1lZGlhLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU0QzNCMUY5MEYwRTQxNjEwMDk2OTNGNiAvKiBMZWdhY3lUaWxlQ2FjaGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5VGlsZUNhY2hlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0QzNCMUZCMEYwRTQxNzAwMDk2OTNGNiAvKiBM
ZWdhY3lUaWxlQ2FjaGUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBMZWdhY3lUaWxlQ2FjaGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0Qzkx
QTBEMTgwMjM0MzEwMEExN0Y2RCAvKiBUZXh0UGFpbnRTdHlsZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBUZXh0UGFpbnRTdHlsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFNEM5MUEwRjE4MDIzNDM5MDBBMTdGNkQgLyogVGV4dFBhaW50U3R5bGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dFBhaW50U3R5bGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEM5MUExNTE4MDk5OUYxMDBBMTdGNkQgLyog
UmVuZGVyVGV4dExpbmVCb3hlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
ZW5kZXJUZXh0TGluZUJveGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0Qzkx
QTE3MTgwOTk5RkIwMEExN0Y2RCAvKiBSZW5kZXJUZXh0TGluZUJveGVzLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbmRlclRleHRMaW5lQm94ZXMuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEQzM0YzOTI1MkFFRUNDMDA4MzdEMDUgLyogSW5s
aW5lUnVuQW5kT2Zmc2V0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElubGlu
ZVJ1bkFuZE9mZnNldC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEQzM0YzRjI1
MkM0QjgyMDA4MzdEMDUgLyogTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3IuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3Iu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTREMzNGNDIyNTJDNTBBODAwODM3RDA1
IC8qIExheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IExheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTREMzNGNDMyNTJDNTBFMjAwODM3RDA1IC8qIExheW91dEludGVncmF0aW9uTGlu
ZUl0ZXJhdG9yTGVnYWN5UGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBM
YXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvckxlZ2FjeVBhdGguaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRTREMzNGNDUyNTJDNTBGQjAwODM3RDA1IC8qIExheW91dEludGVncmF0
aW9uTGluZUl0ZXJhdG9yTW9kZXJuUGF0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGguaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRENThFQjIxN0I0REJEQzAwQ0JEQ0E4IC8qIFN0eWxlUmVz
b2x2ZUZvckRvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFN0eWxlUmVzb2x2ZUZvckRvY3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTRENThFQjMxN0I0REJEQzAwQ0JEQ0E4IC8qIFN0eWxlUmVzb2x2ZUZvckRvY3VtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlUmVzb2x2ZUZvckRvY3VtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RDU4RUI2MTdCNEVEODkwMENCRENB
OCAvKiBTdHlsZUZvbnRTaXplRnVuY3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFN0eWxlRm9udFNpemVGdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNEQ1OEVCNzE3QjRFRDg5MDBDQkRDQTggLyogU3R5bGVGb250U2l6ZUZ1
bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUZvbnRTaXpl
RnVuY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RDU4RUJBMTdCOEYx
MjgwMENCRENBOCAvKiBFbGVtZW50VHJhdmVyc2FsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEVsZW1lbnRUcmF2ZXJzYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRTRENjhFQjIxN0I0REJEQzAwQ0JEQ0E4IC8qIFN0eWxlUmVzb2x2ZUZvckZvbnRSYXcuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3R5bGVSZXNvbHZlRm9yRm9u
dFJhdy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RDY4RUIzMTdCNERCREMw
MENCRENBOCAvKiBTdHlsZVJlc29sdmVGb3JGb250UmF3LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFN0eWxlUmVzb2x2ZUZvckZvbnRSYXcuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTREODZFNkIyNjQwMzk0QzAwQjYyNDI1IC8qIFN0eWxlU2NvcGVPcmRpbmFs
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlU2NvcGVPcmRpbmFsLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RDk4OEIzMTdCRkQxRjYwMDg0RkI4OCAv
KiBUZXh0Tm9kZVRyYXZlcnNhbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
ZXh0Tm9kZVRyYXZlcnNhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEQ5ODhC
NTE3QkZFQjIxMDA4NEZCODggLyogVGV4dE5vZGVUcmF2ZXJzYWwuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGV4dE5vZGVUcmF2ZXJzYWwuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlFNERBQ0U2OTFEMTJFMTBCMDA3NTk4MEYgLyogU3R5bGVQZW5k
aW5nUmVzb3VyY2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlUGVu
ZGluZ1Jlc291cmNlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNERBQ0U2QjFE
MTJFMTE2MDA3NTk4MEYgLyogU3R5bGVQZW5kaW5nUmVzb3VyY2VzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlUGVuZGluZ1Jlc291cmNlcy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0REVBQTE1MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHls
ZVRyZWVSZXNvbHZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
dHlsZVRyZWVSZXNvbHZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0REVB
QTE2MTdBOTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRyZWVSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNEUyNDM4MjFEQUI5NTNFMDBDMjZFNEIgLyogbWV0ZXJFbGVtZW50U2hh
ZG93LmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gbWV0ZXJFbGVtZW50U2hhZG93LmNz
czsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRFMzlBRkExMzMwRUZBODAwM0FCMjc0
IC8qIExlZ2FjeVRpbGVMYXllclBvb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTGVnYWN5VGlsZUxheWVyUG9vbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
NEUzOUFGQzEzMzBFRkM1MDAzQUIyNzQgLyogTGVnYWN5VGlsZUxheWVyUG9vbC5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IExlZ2FjeVRpbGVMYXllclBvb2wubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RThCNEVBMjE2Qjc5RTUwMEI4ODM0RCAv
KiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlFNEU4QjRFRDIxNkI3OUY0MDBCODgzNEQgLyogU3lzdGVtRm9udERhdGFiYXNl
Q29yZVRleHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3lzdGVt
Rm9udERhdGFiYXNlQ29yZVRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
NEU4QjRGMDIxNkI4QjVGMDBCODgzNEQgLyogRm9udENhc2NhZGVEZXNjcmlwdGlvbi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGb250Q2FzY2FkZURlc2NyaXB0aW9u
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRFOEI0RjIyMTZCOEI2MDAwQjg4
MzREIC8qIEZvbnRDYXNjYWRlRGVzY3JpcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRm9udENhc2NhZGVEZXNjcmlwdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFNEYwQkUyRTI1NzEwQTc1MDA5RTc0MzEgLyogQ2FyZXRSZWN0Q29tcHV0YXRpb24u
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FyZXRSZWN0Q29tcHV0YXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRGMEJFMzAyNTcxMEE3NjAwOUU3NDMx
IC8qIENhcmV0UmVjdENvbXB1dGF0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENhcmV0UmVjdENvbXB1dGF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTRGMzhEMTkyNjI2RjEzQjAwN0IxMDY0IC8qIERlZmF1bHRSZXNvdXJjZUxvYWRQ
cmlvcml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWZhdWx0UmVzb3Vy
Y2VMb2FkUHJpb3JpdHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTRGMzhEMUMy
NjI2RjE0NDAwN0IxMDY0IC8qIERlZmF1bHRSZXNvdXJjZUxvYWRQcmlvcml0eS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZWZhdWx0UmVzb3VyY2VMb2FkUHJpb3Jp
dHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNEY5RUVGMDE1NkQ4NEM0MDBE
MjNFN0UgLyogU3R5bGVTaGVldENvbnRlbnRzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFN0eWxlU2hlZXRDb250ZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU0RjlFRUYxMTU2RDg0QzQwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVTaGVldENvbnRlbnRzLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU0RkI0QjM1MjM5QkVCMTAwMDNDMzM2QSAv
KiBMYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTUwNjIwODMyNTQwOTE5QjAwQzQzMDkxIC8qIENvbnRhY3RzUmVxdWVzdERhdGEu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gQ29udGFjdHNSZXF1ZXN0RGF0YS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFNTE2Njk4RjIwRkY5OTE2MDA5RDJDMjcgLyogTGlzdEJ1dHRvbkFycm93
QDJ4LnBuZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IGltYWdlLnBuZzsgcGF0aCA9ICJMaXN0QnV0dG9uQXJyb3dAMngucG5nIjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTUxNzY3MDIyMEI4OEMxNDAwRDQxMTY3IC8qIERhdGFMaXN0U3Vn
Z2VzdGlvbkluZm9ybWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFMaXN0U3VnZ2VzdGlvbklu
Zm9ybWF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1MUE4MURFMTcyOThE
NzcwMEJGQ0E2MSAvKiBKU1BlcmZvcm1hbmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTUGVyZm9ybWFuY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFNTFENkExRDI0RTFFMjU1MDA4OTFDRkEgLyogRGF0ZVRpbWVGaWVsZHNTdGF0ZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBEYXRlVGltZUZpZWxkc1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU1MjZBRjNFMTcyN0Y4RjIwMEU0MTc4MSAvKiBQZXJmb3JtYW5jZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQZXJmb3JtYW5jZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1MkNGNTRDMjBBMjY4QUMwMERBREEyNyAvKiBEYXRh
TGlzdFN1Z2dlc3Rpb25zQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFMaXN0U3VnZ2VzdGlv
bnNDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTUyQ0Y1NEUyMEEzNUEy
ODAwREFEQTI3IC8qIERhdGFMaXN0U3VnZ2VzdGlvblBpY2tlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBE
YXRhTGlzdFN1Z2dlc3Rpb25QaWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RTUyRUZERjIyMTEyODc1QTAwQUQyODJBIC8qIElucHV0TW9kZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJ
bnB1dE1vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTUyRUZERjMyMTEyODc1
QTAwQUQyODJBIC8qIElucHV0TW9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnB1dE1vZGUu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNTRDQTZERDI1NURFMkQ1MDBGOTAx
QTMgLyogbGVnYWN5Rm9ybUNvbnRyb2xzSU9TLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0gbGVnYWN5Rm9ybUNvbnRy
b2xzSU9TLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU1RjQ5NzkxNTFCODg4
MDAwQkI2N0RCIC8qIExlbmd0aEZ1bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBMZW5ndGhGdW5jdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFNTdBNzQwMTI1Q0EwNTc0MDA1MDA0NkIgLyogRGF0YUxpc3RCdXR0b25FbGVtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERhdGFMaXN0QnV0dG9uRWxlbWVudC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1OEI0NUI4MjBBRDA3REQwMDk5MTAyNSAvKiBEYXRh
TGlzdEJ1dHRvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0YUxpc3RCdXR0b25FbGVtZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1OTZERDI2MjUxOTAzRDEwMEMyNzVB
NyAvKiBOYXZpZ2F0b3JDb250YWN0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYXZpZ2F0b3JDb250YWN0
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNTk2REQyNzI1MTkwM0QyMDBDMjc1
QTcgLyogTmF2aWdhdG9yQ29udGFjdHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2aWdhdG9y
Q29udGFjdHMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNTk2REQyODI1MTkw
M0QyMDBDMjc1QTcgLyogTmF2aWdhdG9yK0NvbnRhY3RzLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSAiTmF2aWdhdG9yK0Nv
bnRhY3RzLmlkbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1OTZERDJEMjUxOTAz
RUYwMEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGFjdHNN
YW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1OTZERDJFMjUxOTAzRUYw
MEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29udGFj
dHNNYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkREMkYyNTE5
MDNFRjAwQzI3NUE3IC8qIENvbnRhY3RzTWFuYWdlci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29udGFjdHNNYW5hZ2Vy
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkREMzMyNTE5MDQxNDAwQzI3
NUE3IC8qIENvbnRhY3RzU2VsZWN0T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250YWN0c1Nl
bGVjdE9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkREMzQyNTE5
MDQxNDAwQzI3NUE3IC8qIENvbnRhY3RzU2VsZWN0T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29udGFjdHNT
ZWxlY3RPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkRENTYy
NTFCQUM0QTAwQzI3NUE3IC8qIENvbnRhY3RQcm9wZXJ0eS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb250
YWN0UHJvcGVydHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkRENTcyNTFC
QUM0QTAwQzI3NUE3IC8qIENvbnRhY3RQcm9wZXJ0eS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29udGFjdFByb3BlcnR5
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTU5NkRENUIyNTFCQjA4MjAwQzI3
NUE3IC8qIENvbnRhY3RJbmZvLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRhY3RJbmZvLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1OTZERDVDMjUxQkIwODIwMEMyNzVBNyAvKiBDb250
YWN0SW5mby5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gQ29udGFjdEluZm8uaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFNTlERDRCNzIxMDk4Mjg1MDAzQzhCNDcgLyogTGlzdEJ1dHRvbkFycm93LnBuZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGltYWdlLnBu
ZzsgcGF0aCA9IExpc3RCdXR0b25BcnJvdy5wbmc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU1QkE3RDYyMTUxNDM3Q0EwMEZFMUUzRiAvKiBMZW5ndGhGdW5jdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVuZ3RoRnVuY3Rpb25zLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU1QzU5QTk5MjREMEUxQUEwMDNCODZFMSAvKiBEYXRlVGltZUNo
b29zZXJQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGVU
aW1lQ2hvb3NlclBhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTVG
MDZBRTUyNEQ0ODQ3QjAwQkJDNEY4IC8qIERhdGVUaW1lRmllbGRFbGVtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IERhdGVUaW1lRmllbGRFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUU1RjA2QUU2MjRENDg0N0IwMEJCQzRGOCAvKiBEYXRlVGltZUZpZWxkRWxlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBEYXRlVGltZUZpZWxkRWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUU1RjA2QUU5MjRENDlCRjcwMEJCQzRGOCAvKiBEYXRlVGltZU51
bWVyaWNGaWVsZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0ZVRpbWVOdW1lcmljRmllbGRF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1RjA2QUVBMjRENDlCRjcw
MEJCQzRGOCAvKiBEYXRlVGltZU51bWVyaWNGaWVsZEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRTVGMDZBRUQyNEQ0QTYzNzAwQkJDNEY4IC8qIERhdGVUaW1lU3ltYm9saWNG
aWVsZEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNUYwNkFFRTI0RDRBNjM3MDBCQkM0
RjggLyogRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBEYXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTVGMDZBRjEyNEQ0QUFFNDAwQkJDNEY4IC8qIERhdGVUaW1lRmllbGRFbGVtZW50
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBEYXRlVGltZUZpZWxkRWxlbWVudHMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTVGMDZBRjIyNEQ0QUFFNDAwQkJDNEY4IC8qIERhdGVUaW1lRmll
bGRFbGVtZW50cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEYXRlVGltZUZpZWxkRWxlbWVudHMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNUYwNkFGNTI0RDRCQjU2MDBCQkM0
RjggLyogRGF0ZVRpbWVFZGl0RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEYXRlVGltZUVkaXRF
bGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU1RjA2QUY2MjRENEJCNTYw
MEJCQzRGOCAvKiBEYXRlVGltZUVkaXRFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERh
dGVUaW1lRWRpdEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzE0
NjdCMTI0QUJBRUYxMDBGQjJGNTAgLyogQXVkaW9Ob2RlT3B0aW9ucy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb05vZGVPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUU3MTQ2N0I0MjRBQkFGMEIwMEZCMkY1MCAvKiBBdWRpb05vZGVPcHRpb25z
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IHBhdGggPSBBdWRpb05vZGVPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTcxNDY3QjUyNEFCQUYxRDAwRkIyRjUwIC8qIFBhbm5lck9wdGlvbnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFubmVyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlFNzE0NjdCNzI0QUJBRjJDMDBGQjJGNTAgLyogUGFubmVyT3B0aW9u
cy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGFubmVyT3B0aW9ucy5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3NTVFODhGMjRDNzQzNEIwMDlGN0MyMyAvKiBQZXJpb2Rp
Y1dhdmVDb25zdHJhaW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQZXJpb2RpY1dhdmVDb25zdHJhaW50
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzU1RTg5MTI0Qzc0MzRCMDA5RjdD
MjMgLyogUGVyaW9kaWNXYXZlQ29uc3RyYWludHMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFBlcmlvZGljV2F2ZUNvbnN0
cmFpbnRzLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTc1NUU4OTYyNEM3NDYx
RDAwOUY3QzIzIC8qIFBlcmlvZGljV2F2ZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGVyaW9k
aWNXYXZlT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzU1RTg5ODI0
Qzc0NjFEMDA5RjdDMjMgLyogUGVyaW9kaWNXYXZlT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUGVyaW9kaWNX
YXZlT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3NTVFOEFGMjRD
QTI3MEEwMDlGN0MyMyAvKiBPc2NpbGxhdG9yT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPc2Np
bGxhdG9yT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzU1RThCMTI0
Q0EyNzBBMDA5RjdDMjMgLyogT3NjaWxsYXRvck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE9zY2lsbGF0b3JP
cHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTc1NUU4QjQyNENBMjc5
NjAwOUY3QzIzIC8qIE9zY2lsbGF0b3JUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9zY2lsbGF0b3JU
eXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3NTVFOEI2MjRDQTI3OTYwMDlG
N0MyMyAvKiBPc2NpbGxhdG9yVHlwZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gT3NjaWxsYXRvclR5cGUuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzg1RDkxMTI0QjREMUIxMDAxNERCMjEgLyogQ2hh
bm5lbENvdW50TW9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGFubmVsQ291bnRNb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3ODVEOTEzMjRCNEQxQjEwMDE0REIyMSAvKiBDaGFu
bmVsQ291bnRNb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDaGFubmVsQ291bnRNb2RlLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRTc4NUQ5MzEyNEI2MzZGRjAwMTREQjIxIC8qIENoYW5uZWxJbnRl
cnByZXRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGFubmVsSW50ZXJwcmV0YXRpb24uaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTc4NUQ5MzMyNEI2MzZGRjAwMTREQjIxIC8qIENo
YW5uZWxJbnRlcnByZXRhdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ2hhbm5lbEludGVycHJldGF0aW9uLmlkbDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTc4NUQ5NUMyNEI3RjcyNjAwMTREQjIxIC8q
IEF1ZGlvQ29udGV4dE9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvQ29udGV4dE9wdGlvbnMuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzg1RDk1RTI0QjdGNzI3MDAxNERCMjEgLyog
QXVkaW9Db250ZXh0TGF0ZW5jeUNhdGVnb3J5LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0NvbnRleHRMYXRlbmN5
Q2F0ZWdvcnkuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFNzg1RDk1RjI0QjdG
NzM0MDAxNERCMjEgLyogQXVkaW9Db250ZXh0T3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBBdWRpb0NvbnRleHRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU3ODVEOTYwMjRCN0Y3MzQwMDE0REIyMSAvKiBBdWRpb0NvbnRleHRMYXRlbmN5
Q2F0ZWdvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Db250ZXh0
TGF0ZW5jeUNhdGVnb3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3QzhFMTE4
MjREQ0FCRjMwMDI3QTI3RiAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudEluaXQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQXVkaW9Qcm9jZXNzaW5nRXZlbnRJbml0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUU3QzhFMTFBMjREQ0FCRjMwMDI3QTI3RiAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudElu
aXQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
dGV4dDsgcGF0aCA9IEF1ZGlvUHJvY2Vzc2luZ0V2ZW50SW5pdC5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUU3QzhFMTMzMjRFMkZBN0MwMDI3QTI3RiAvKiBDb25zdGFudFNvdXJj
ZU9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29uc3RhbnRTb3VyY2VPcHRpb25zLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3QzhFMTM1MjRFMkZBN0MwMDI3QTI3RiAvKiBDb25z
dGFudFNvdXJjZU9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENvbnN0YW50U291cmNlT3B0aW9ucy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3QzhFMTM4MjRFMkZFNjUwMDI3QTI3RiAvKiBD
b25zdGFudFNvdXJjZU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29uc3RhbnRTb3VyY2VOb2RlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3QzhFMTM5MjRFMkZFNjUwMDI3QTI3RiAv
KiBDb25zdGFudFNvdXJjZU5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ29uc3RhbnRTb3Vy
Y2VOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdDOEUxM0EyNEUyRkU2
NTAwMjdBMjdGIC8qIENvbnN0YW50U291cmNlTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ29uc3RhbnRTb3VyY2VO
b2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdDRjg0ODkyNEMwRTA1NzAw
QjA2QjkwIC8qIEF1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQXVkaW9TY2hlZHVs
ZWRTb3VyY2VOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdDRjg0QTUy
NEM2MzVGNDAwQjA2QjkwIC8qIE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE9mZmxpbmVBdWRpb0NvbnRleHRPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU3Q0Y4NEE3MjRDNjM1RjQwMEIwNkI5MCAvKiBPZmZsaW5lQXVkaW9Db250ZXh0
T3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gT2ZmbGluZUF1ZGlvQ29udGV4dE9wdGlvbnMuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFN0UwMzUyMDI0Q0Y2MEVEMDA4REZFRkIgLyogQ2hhbm5l
bE1lcmdlck9wdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhbm5lbE1lcmdlck9wdGlvbnMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdFMDM1MjIyNENGNjBFRDAwOERGRUZCIC8q
IENoYW5uZWxNZXJnZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDaGFubmVsTWVyZ2VyT3B0aW9ucy5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUU3RTAzNTI0MjRDRjcxNUUwMDhERkVGQiAv
KiBDaGFubmVsU3BsaXR0ZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENoYW5uZWxTcGxpdHRl
ck9wdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdFMDM1MjUyNENGNzE1
RTAwOERGRUZCIC8qIENoYW5uZWxTcGxpdHRlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENoYW5uZWxTcGxp
dHRlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFN0UwMzU1NzI0
RDM0NkRGMDA4REZFRkIgLyogQXVkaW9CdWZmZXJPcHRpb25zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1
ZGlvQnVmZmVyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFN0UwMzU1
OTI0RDM0NkRGMDA4REZFRkIgLyogQXVkaW9CdWZmZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0J1
ZmZlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFN0UwMzU2RjI0
RDRFMTkwMDA4REZFRkIgLyogQW5hbHlzZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBBbmFseXNlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
N0UwMzU3MTI0RDRFMTkxMDA4REZFRkIgLyogQW5hbHlzZXJPcHRpb25zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFuYWx5c2VyT3B0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFN0ZCRTdCQzI0RUIyRkE5MDBBMThFNjIgLyogU3RlcmVvUGFubmVyTm9k
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTdGVyZW9QYW5uZXJO
b2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdGQkU3QkUyNEVCMkZBQTAw
QTE4RTYyIC8qIFN0ZXJlb1Bhbm5lck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IFN0ZXJlb1Bhbm5lck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlF
N0ZCRTdCRjI0RUIyRkFBMDBBMThFNjIgLyogU3RlcmVvUGFubmVyTm9kZS5pZGwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gU3RlcmVvUGFubmVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUU3RkJFN0MwMjRFQjJGQUIwMEExOEU2MiAvKiBTdGVyZW9QYW5uZXJPcHRpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0ZXJlb1Bhbm5lck9wdGlvbnMu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTdGQkU3QzEyNEVCMkZBQjAwQTE4RTYy
IC8qIFN0ZXJlb1Bhbm5lck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
U3RlcmVvUGFubmVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFN0ZCRTdD
NDI0RUMzNkYzMDBBMThFNjIgLyogU3RlcmVvUGFubmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0ZXJl
b1Bhbm5lci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFN0ZCRTdDNTI0RUMzNkYz
MDBBMThFNjIgLyogU3RlcmVvUGFubmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0ZXJlb1Bh
bm5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUVCMDgxQ0Q4MTY5NjA4NDQw
MDU1MzczMCAvKiBUeXBlQ29udmVyc2lvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHlwZUNvbnZlcnNp
b25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUVCMDgxQ0Q5MTY5NjA4NDQwMDU1
MzczMCAvKiBUeXBlQ29udmVyc2lvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFR5cGVDb252ZXJzaW9ucy5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUVCRTVCMjI0MjQ1QTI2RUUwMDNBNUE4OCAvKiBT
UUxpdGVTdGF0ZW1lbnRBdXRvUmVzZXRTY29wZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBTUUxpdGVTdGF0ZW1lbnRBdXRvUmVzZXRTY29wZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlFQkU1QjIyNzI0NUEyOUNGMDAzQTVBODggLyogU1FMaXRlU3RhdGVtZW50
QXV0b1Jlc2V0U2NvcGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U1FMaXRlU3RhdGVtZW50QXV0b1Jlc2V0U2NvcGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlFQkY1MTIxQTE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUeXBlQ29udmVyc2lvbnMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFQkY1MTIxQjE2OTY0OTZDMDA1NkJE
MjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSlNUeXBlQ29udmVyc2lvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRUNB
NjgwQzYxRTY3NzI0NTAwNzMxRDIwIC8qIFN0cmluZ1V0aWxpdGllcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBTdHJpbmdVdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRUNBNjgwQzgxRTY3NzMwQjAwNzMxRDIwIC8qIFN0cmluZ1V0aWxpdGllcy5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFN0cmluZ1V0aWxpdGll
cy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRUQyQkE4M0IwOUEyNEI5MTAwNkMw
QUM0IC8qIERvY3VtZW50TWFya2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IERvY3VtZW50TWFya2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUVENTAxREM1
MEIyNDlGMjkwMEFFMThEOSAvKiBFZGl0b3JNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gRWRpdG9yTWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlFREUzQTRGRjBDN0E0MzA2MDA5NTZBMzcgLyogQ29sb3JNYWMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ29sb3JNYWMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRURFQzk4MDIwQUVEN0UxNzAwNTkxMzdGIC8qIFdlYkNvcmVQcmVmaXguaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVQcmVmaXguaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA0OyB1c2VzVGFicyA9IDA7IH07CisJCUVGQjcyODdCMjEy
NEM3M0QwMDVDMjU1OCAvKiBDYW52YXNBY3Rpdml0eVJlY29yZC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBDYW52YXNBY3Rpdml0eVJlY29yZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUVGQ0M2QzhEMjBGRTkxNDAwMEEyMzIxQiAvKiBDYW52YXNBY3Rpdml0eVJlY29yZC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNBY3Rpdml0eVJlY29yZC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGMTIxNzFGMzE2QThCQzYzMDAwMDUzQ0EgLyog
V2ViVlRURWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBX
ZWJWVFRFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjEyMTcxRjQx
NkE4QkM2MzAwMDA1M0NBIC8qIFdlYlZUVEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gV2ViVlRURWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGMzJCRENENTIzNjNBQUM5MDA3M0I2QUUgLyogVXNlckdlc3R1cmVFbXVsYXRpb25TY29wZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyR2VzdHVyZUVtdWxh
dGlvblNjb3BlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjMyQkRDRDcyMzYz
QUFDQTAwNzNCNkFFIC8qIFVzZXJHZXN0dXJlRW11bGF0aW9uU2NvcGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gVXNlckdlc3R1cmVFbXVsYXRpb25TY29wZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGMzQ0QzcxMjExMjVCODJDMDBGMjZFRUUgLyogSW5zcGVj
dG9yRnJvbnRlbmRDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5z
cGVjdG9yRnJvbnRlbmRDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjM0
NEM3NTIxMTI5NEQ5RDAwRjI2RUVFIC8qIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRM
b2NhbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGMzQ0Qzc1NzExMjk0RkY2MDBG
MjZFRUUgLyogSW5zcGVjdG9yRnJvbnRlbmRDbGllbnRMb2NhbC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjM1MEI3MzQxM0YxMzc3RDAwODgwQzQzIC8q
IEluc3RydW1lbnRpbmdBZ2VudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSW5zdHJ1bWVudGluZ0FnZW50cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUYzQUJGRTBCMTMwRTlEQTAwMEU3RjdEMSAvKiBJbnN0cnVtZW50aW5nQWdlbnRzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3RydW1lbnRpbmdBZ2VudHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjNENDYxNDYxMTYxRDUzMjAwQ0EwRDA5IC8qIEpT
RXJyb3JIYW5kbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RXJyb3JIYW5kbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjNENDYxNDcx
MTYxRDUzMjAwQ0EwRDA5IC8qIEpTRXJyb3JIYW5kbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRXJyb3JIYW5kbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUY0MDNFNzg1MjM2M0I1OEMwMDA0NDU1MCAvKiBFbnRlcktleUhpbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRW50ZXJLZXlIaW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0MDNF
Nzg2MjM2M0I1OEMwMDA0NDU1MCAvKiBFbnRlcktleUhpbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gRW50ZXJLZXlIaW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQwREFB
RUIyNUQ5RjI1RTAwMTFCNEZBIC8qIFBhc3RlYm9hcmRDb250ZXh0LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFBhc3RlYm9hcmRDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0MERB
QUVFMjVEOUYzQkYwMDExQjRGQSAvKiBQYWdlUGFzdGVib2FyZENvbnRleHQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUGFnZVBhc3RlYm9hcmRDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUY0MjBGMDA4MjVFNDc3OTEwMDkyNTFFRiAvKiBQb2ludGVyRXZlbnRUeXBlTmFtZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUG9pbnRlckV2ZW50VHlwZU5hbWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUY0MjBGMDA5MjVFNDc3OTEwMDkyNTFFRiAvKiBQb2ludGVyRXZlbnRUeXBl
TmFtZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2ZW50VHlwZU5hbWVzLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQyMkI4QjUyNTNGNzA2NTAwNEU3N0U4IC8q
IERpc3BsYXlMaXN0SXRlbUJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEaXNwbGF5TGlzdEl0ZW1C
dWZmZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQyMkI4QjYyNTNGNzA2NTAw
NEU3N0U4IC8qIERpc3BsYXlMaXN0SXRlbUJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBE
aXNwbGF5TGlzdEl0ZW1CdWZmZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
NDI5MjYxNzI1MjY0RDQ0MDAwMDc4OTggLyogTWVkaWFQbGF5ZXJJZGVudGlmaWVyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IE1lZGlhUGxheWVySWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGNDJDRUI1NDIxNDAzMUVFMDAyRENBNzIgLyogRm9udEF0dHJpYnV0ZUNoYW5nZXND
b2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEZvbnRBdHRyaWJ1dGVDaGFuZ2VzQ29jb2Eu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0MzNFOTAyMURCQkRCQTIwMEVGMEQx
NCAvKiBTdGF0aWNQYXN0ZWJvYXJkLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFN0YXRpY1Bhc3RlYm9hcmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQzM0U5
MDQxREJCREJDMjAwRUYwRDE0IC8qIFN0YXRpY1Bhc3RlYm9hcmQuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU3RhdGljUGFzdGVib2FyZC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUY0Mzc3RDU1MjU1MUM5QzYwMDgwQUJGRSAvKiBEaXNwbGF5TGlzdEl0ZW1UeXBlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERpc3BsYXlMaXN0SXRlbVR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRjQzNzdENTYyNTUxQzlDNjAwODBBQkZFIC8qIERpc3BsYXlMaXN0SXRlbVR5cGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRGlzcGxheUxpc3RJdGVtVHlwZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUY0NDBFNzZFMjMzRDk0RDMwMDYzRjlBQiAvKiBDbGlwYm9hcmQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2xpcGJvYXJkLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0MEU3NkYyMzNEOTREMzAwNjNGOUFCIC8q
IE5hdmlnYXRvckNsaXBib2FyZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBO
YXZpZ2F0b3JDbGlwYm9hcmQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0MEU3
NzAyMzNEOTRENDAwNjNGOUFCIC8qIENsaXBib2FyZEl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQ2xpcGJvYXJkSXRlbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGNDQwRTc3MTIzM0Q5NEQ0MDA2M0Y5QUIgLyogTmF2aWdhdG9yK0NsaXBib2FyZC5pZGwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gIk5hdmlnYXRvcitDbGlwYm9hcmQuaWRsIjsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0MEU3NzIyMzNEOTRENTAwNjNGOUFCIC8qIENsaXBi
b2FyZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDbGlwYm9hcmQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0MEU3NzMyMzNEOTRENTAwNjNGOUFCIC8qIE5h
dmlnYXRvckNsaXBib2FyZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBOYXZpZ2F0b3JDbGlwYm9hcmQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
NDQwRTc3NDIzM0Q5NEQ2MDA2M0Y5QUIgLyogQ2xpcGJvYXJkLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBDbGlwYm9hcmQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDQw
RTc3NTIzM0Q5NEQ2MDA2M0Y5QUIgLyogQ2xpcGJvYXJkSXRlbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDbGlwYm9hcmRJdGVtLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRjQ0MEU3NzcyMzNEOTRENzAwNjNGOUFCIC8qIENsaXBib2FyZEl0ZW0u
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENsaXBib2FyZEl0ZW0uaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGNDQyODUwQjIxNDA0MTI1MDBDQ0RBMjIgLyogRm9udEF0dHJp
YnV0ZUNoYW5nZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRm9udEF0dHJpYnV0ZUNoYW5nZXMu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDQyQzM1NzIzRTNBQzUxMDA0OTk1
ODIgLyogQ29tcG9zaXRpb25IaWdobGlnaHQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29tcG9zaXRpb25I
aWdobGlnaHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0NkVEREQyNjVEQUUz
RjAwMzFEQThGIC8qIERhdGFEZXRlY3Rpb25SZXN1bHRzU3RvcmFnZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBEYXRhRGV0ZWN0aW9uUmVzdWx0c1N0b3JhZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRjQ0NkVERTAyNjVEQjFFNTAwMzFEQThGIC8qIEltYWdlT3ZlcmxheURhdGFEZXRlY3Rp
b25SZXN1bHRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlT3ZlcmxheURhdGFEZXRl
Y3Rpb25SZXN1bHRJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0
NDZFREU3MjY1REQ4OTAwMDMxREE4RiAvKiBEYXRhRGV0ZWN0b3JFbGVtZW50SW5mby5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBEYXRhRGV0ZWN0b3JFbGVtZW50SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGNDRBNUY1NzFGRUQzODMwMDA3RjU5NDQgLyogTGVnYWN5TlNQYXN0ZWJvYXJk
VHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGVnYWN5TlNQYXN0ZWJvYXJkVHlwZXMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ0RUJCRDYxREI1RDFCNjAwMjc3MzM0IC8qIFN0YXRp
Y1JhbmdlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTdGF0aWNSYW5nZS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NEVCQkQ4MURCNUQyMTQwMDI3NzMzNCAvKiBTdGF0
aWNSYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdGF0aWNSYW5nZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDRFQkJEQTFEQjVERDlEMDAyNzczMzQg
LyogU3RhdGljUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
U3RhdGljUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDU3NzVDRDI0
MTQzN0Q1MDAyREYxQTAgLyogSW5saW5lUGF0aERhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5saW5l
UGF0aERhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ2MjhBOUUyMzREM0JC
RjAwQkM4ODRDIC8qIFBsYXRmb3JtUGFzdGVib2FyZENvY29hLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gUGxhdGZvcm1QYXN0ZWJvYXJkQ29jb2EubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NjJFNzlGMjQyQURBM0MwMDIwNERERCAvKiBEcmFn
RGF0YUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRHJh
Z0RhdGFDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ2MkU3QTAyNDJB
REEzRDAwMjA0REREIC8qIERyYWdJbWFnZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gRHJhZ0ltYWdlQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUY0NjcyOTI1MUUwREU1QUIwMEFDQzNEOCAvKiBTY3JvbGxTbmFwT2Zmc2V0c0lu
Zm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsU25hcE9mZnNldHNJ
bmZvLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NkM0NDdBMjM0NjUzNUUwMDM5
QTc5RCAvKiBDbGlwYm9hcmRJdGVtRGF0YVNvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDbGlwYm9h
cmRJdGVtRGF0YVNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDZDNDQ3
QzIzNDY1NDU0MDAzOUE3OUQgLyogQ2xpcGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJjZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDbGlwYm9hcmRJdGVtQmluZGluZ3NEYXRhU291cmNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NkM0NDdEMjM0NjU0NTQwMDM5QTc5RCAvKiBDbGlwYm9h
cmRJdGVtQmluZGluZ3NEYXRhU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENsaXBib2Fy
ZEl0ZW1CaW5kaW5nc0RhdGFTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGNDZDNDQ4MDIzNDY1NDdBMDAzOUE3OUQgLyogQ2xpcGJvYXJkSXRlbVBhc3RlYm9hcmREYXRh
U291cmNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENsaXBib2FyZEl0ZW1QYXN0ZWJvYXJkRGF0YVNvdXJj
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDZDNDQ4MTIzNDY1NDdBMDAzOUE3
OUQgLyogQ2xpcGJvYXJkSXRlbVBhc3RlYm9hcmREYXRhU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IENsaXBib2FyZEl0ZW1QYXN0ZWJvYXJkRGF0YVNvdXJjZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUY0NzM4NDU3MjVEREU5RkIwMDZERThERCAvKiBEYXRhT3duZXJU
eXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFPd25lclR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRjQ3QTA5Q0YyMEE5MzlGNjAwMjQwRkFFIC8qIERpc2FibGVkQWRhcHRhdGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzYWJsZWRBZGFwdGF0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGNDdBMDlENDIwQTlERDA0MDAyNDBGQUUgLyogRGlzYWJsZWRBZGFw
dGF0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEaXNhYmxlZEFkYXB0YXRpb25zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ3QTVFM0IxOTVCOEM4QTAwNDgzMTAwIC8q
IFN0eWxlU2Nyb2xsU25hcFBvaW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTdHlsZVNjcm9sbFNuYXBQb2ludHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RjQ3QTYzM0MxRkY2RkQ1MDAwODFCM0NDIC8qIFByb21pc2VkQXR0YWNobWVudEluZm8uaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUHJvbWlzZWRBdHRhY2htZW50SW5mby5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGNDdBRDIzODIxOTM0OTlBMDA1MUREMEIgLyogSW5zZXJ0TmVzdGVkTGlzdENv
bW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5zZXJ0TmVzdGVkTGlzdENvbW1hbmQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ3QUQyMzkyMTkzNDk5QTAwNTFERDBCIC8qIEluc2Vy
dE5lc3RlZExpc3RDb21tYW5kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluc2VydE5lc3RlZExp
c3RDb21tYW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ4MjIzMEUxRTM4
NjlCODAwNjZGQzc5IC8qIFdlYkl0ZW1Qcm92aWRlclBhc3RlYm9hcmQubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJJdGVtUHJvdmlkZXJQYXN0ZWJvYXJkLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDgyMjMwRjFFMzg2OUI4MDA2NkZDNzkg
LyogV2ViSXRlbVByb3ZpZGVyUGFzdGVib2FyZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXZWJJdGVtUHJvdmlkZXJQYXN0ZWJvYXJkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUY0ODIyMzEyMUUzODZFMjQwMDY2RkM3OSAvKiBBYnN0cmFjdFBhc3RlYm9hcmQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWJzdHJhY3RQYXN0ZWJvYXJkLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0ODI0MzQ4MjYwQzMyRjEwMDIyNDk3QyAv
KiBJbWFnZU92ZXJsYXlDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEltYWdlT3ZlcmxheUNv
bnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ4MjQzNEEyNjBDMzJG
MTAwMjI0OTdDIC8qIEltYWdlT3ZlcmxheUNvbnRyb2xsZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSW1hZ2VPdmVybGF5Q29udHJvbGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUY0ODM4OTgzMUUxRERGMkIwMDc2QjdFQSAvKiBEdW1wRWRpdGluZ0hpc3RvcnkuanMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IG5hbWUgPSBEdW1wRWRpdGluZ0hpc3Rvcnku
anM7IHBhdGggPSBTY3JpcHRzL0R1bXBFZGl0aW5nSGlzdG9yeS5qczsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRjQ4Mzg5ODQxRTFEREYyQjAwNzZCN0VBIC8qIEVkaXRpbmdIaXN0b3J5
VXRpbC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IEVkaXRpbmdI
aXN0b3J5VXRpbC5qczsgcGF0aCA9IFNjcmlwdHMvRWRpdGluZ0hpc3RvcnlVdGlsLmpzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDg1NzBBNDI2NDRDNzZEMDBDMDVGNzEgLyogVHJh
bnNsYXRpb25Db250ZXh0TWVudUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNsYXRpb25Db250
ZXh0TWVudUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ4QjdENTIyNUMz
NDFFNjAwOUU3NUREIC8qIFRleHRSZWNvZ25pdGlvblJlc3VsdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBU
ZXh0UmVjb2duaXRpb25SZXN1bHQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ4
RDJBNkEyMTU2MjNCNDAwQzY3NTJCIC8qIEZvbnRTaGFkb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9u
dFNoYWRvdy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDhEMkE3MTIxNTZEQzBB
MDBDNjc1MkIgLyogRm9udEF0dHJpYnV0ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRm9udEF0dHJpYnV0
ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ4RDJBNzUyMTU2RkU1NzAwQzY3
NTJCIC8qIEZvbnRBdHRyaWJ1dGVzQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBGb250
QXR0cmlidXRlc0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNDhEMkE3
QTIxNTcwNTFFMDBDNjc1MkIgLyogRm9udFNoYWRvd0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gRm9udFNoYWRvd0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
NDhEMkFBMzIxNTk3NDBEMDBDNjc1MkIgLyogQ29sb3JDb2NvYS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
b2xvckNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0OEQyQUE0MjE1OTc0
MEQwMEM2NzUyQiAvKiBDb2xvckNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQ29sb3JD
b2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ5Nzg2ODcxRkY0NUZBNTAw
RTA2MEFCIC8qIFBhc3RlYm9hcmRJdGVtSW5mby5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYXN0ZWJvYXJk
SXRlbUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjQ5RTk4RTQyMURFRTZD
MTAwOUFFNTVFIC8qIEVkaXRBY3Rpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRWRpdEFjdGlv
bi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0QjAwMTg3MjZFN0YyMUYwMDZF
QUFCRSAvKiBIVE1MQXRvbVN0cmluZ0NhY2hlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxBdG9tU3Ry
aW5nQ2FjaGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRCMDAxODgyNkU3RjIx
RjAwNkVBQUJFIC8qIEhUTUxBdG9tU3RyaW5nQ2FjaGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SFRNTEF0b21TdHJpbmdDYWNoZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0
QjJBOTA2MjY1MDJCQTAwMDlFNzI4NiAvKiBEYXRhRGV0ZWN0b3JIaWdobGlnaHQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gRGF0YURldGVjdG9ySGlnaGxpZ2h0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY0QjJBOTA4MjY1MDJCQzAwMDlFNzI4NiAvKiBEYXRhRGV0ZWN0b3JIaWdobGlnaHQu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBEYXRhRGV0ZWN0b3JIaWdobGlnaHQubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0QjJBOTBDMjY1MDg3RTQwMDlFNzI4NiAvKiBJbWFn
ZU92ZXJsYXlDb250cm9sbGVyTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gSW1hZ2VPdmVy
bGF5Q29udHJvbGxlck1hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRCNDIy
QzIyMjBDMDAwMDAwOUUxRTdEIC8qIERPTVBhc3RlQWNjZXNzLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERP
TVBhc3RlQWNjZXNzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0QzVGMjA1MjQ3
OUU3RUUwMEU5QjRGNSAvKiBDbGlwYm9hcmRJbWFnZVJlYWRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBD
bGlwYm9hcmRJbWFnZVJlYWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNEM1
RjIwODI0NzlFOUM4MDBFOUI0RjUgLyogQ2xpcGJvYXJkSW1hZ2VSZWFkZXIuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ2xpcGJvYXJkSW1hZ2VSZWFkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGNEM1RjIxMzI0NzlGQzRFMDBFOUI0RjUgLyogQ2xpcGJvYXJkSW1hZ2VSZWFk
ZXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBDbGlwYm9h
cmRJbWFnZVJlYWRlck1hYy5tbTsgcGF0aCA9IG1hYy9DbGlwYm9hcmRJbWFnZVJlYWRlck1hYy5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRDNUYyMTYyNDc5RkNEMTAwRTlCNEY1
IC8qIENsaXBib2FyZEltYWdlUmVhZGVySU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gQ2xpcGJvYXJkSW1hZ2VSZWFkZXJJT1MubW07IHBhdGggPSBpb3MvQ2xp
cGJvYXJkSW1hZ2VSZWFkZXJJT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0
RDQzRDY0MjE4ODAyRTYwMEVDRUNBQyAvKiBTZXJpYWxpemVkQXR0YWNobWVudERhdGEuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU2VyaWFsaXplZEF0dGFjaG1lbnREYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUY0RDk4MTdEMjE5NUZCRjYwMDgyMzBGQyAvKiBDaGFuZ2VMaXN0VHlwZUNv
bW1hbmQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhbmdlTGlzdFR5cGVDb21tYW5kLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RDk4MTdFMjE5NUZCRjYwMDgyMzBGQyAvKiBDaGFuZ2VM
aXN0VHlwZUNvbW1hbmQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2hhbmdlTGlzdFR5cGVDb21t
YW5kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRERDg2NjIyNUNDNjA4NDAw
NTlCRkRBIC8qIGltYWdlT3ZlcmxheS5jc3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LmNzczsgcGF0aCA9IGltYWdlT3ZlcmxheS5jc3M7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RTE5NjVBMjFGMjM5NTAwMDI4NTA3OCAvKiBK
U1VuZG9JdGVtQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTVW5kb0l0ZW1DdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNEUx
OTY1RjIxRjI2RTRFMDAyODUwNzggLyogVW5kb0l0ZW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
VW5kb0l0ZW0uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNEUxOTY2MTIxRjI3
RDNDMDAyODUwNzggLyogQ3VzdG9tVW5kb1N0ZXAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQ3VzdG9tVW5kb1N0ZXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RjRFMTk2NjIyMUYyN0QzRDAwMjg1MDc4IC8qIEN1c3RvbVVuZG9TdGVwLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEN1c3RvbVVuZG9TdGVwLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRFNTdFREEyMTNGM0Y1RjAwNEVBOThFIC8qIEZvbnRBdHRy
aWJ1dGVDaGFuZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvbnRBdHRyaWJ1dGVDaGFuZ2VzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RTU3RURGMjEzRjQzNEEwMDRFQTk4RSAvKiBX
ZWJDb3JlTlNGb250TWFuYWdlckV4dHJhcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlTlNGb250
TWFuYWdlckV4dHJhcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNEU1N0VFMDIx
M0Y0MzRBMDA0RUE5OEUgLyogV2ViQ29yZU5TRm9udE1hbmFnZXJFeHRyYXMubW0gKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBXZWJDb3JlTlNGb250TWFuYWdlckV4dHJhcy5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRjRGQjM0RkEyMzUwQzg1RDAwRjAwOTRBIC8qIFBhc3RlYm9hcmRD
dXN0b21EYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBhc3RlYm9hcmRDdXN0b21EYXRhLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RkIzNEZCMjM1MEM4NUQwMEYwMDk0QSAvKiBQYXN0
ZWJvYXJkQ3VzdG9tRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXN0ZWJvYXJkQ3VzdG9t
RGF0YS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0RkIzNTAwMjM1MEM5NjIw
MEYwMDk0QSAvKiBQYXN0ZWJvYXJkQ3VzdG9tRGF0YUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gUGFzdGVib2FyZEN1c3RvbURhdGFDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRjUwNjY0RjUxNTdGNTJEQzAwQUMyMjZGIC8qIEZvcm1Db250cm9sbGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvcm1Db250cm9sbGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjUwNjY0RjYxNTdGNTJEQzAwQUMyMjZGIC8q
IEZvcm1Db250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZvcm1D
b250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1MTNBM0U5MTVGRjQ4
NDEwMDE1MjZEQiAvKiBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBWYWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGNTIzRDIzQjAyREU0Mzk2MDE4NjM1Q0EgLyogSFRNTERvY3VtZW50
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5k
ZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhUTUxEb2N1bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0g
ODsgdXNlc1RhYnMgPSAwOyB9OworCQlGNTIzRDIzQzAyREU0Mzk2MDE4NjM1Q0EgLyogSFRNTERv
Y3VtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEhUTUxEb2N1bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IHVzZXNUYWJzID0gMDsgfTsKKwkJRjUyM0QyM0UwMkRFNDM5NjAxODYzNUNBIC8qIEhUTUxFbGVt
ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsg
aW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IEhUTUxFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGgg
PSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUY1MjNEMjNGMDJERTQzOTYwMTg2MzVDQSAvKiBIVE1M
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBIVE1MRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IHVzZXNUYWJzID0gMDsgfTsKKwkJRjUyM0QyNzgwMkRFNDNENzAxODYzNUNBIC8qIFRleHRSZXNv
dXJjZURlY29kZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gVGV4dFJlc291cmNlRGVjb2Rlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlGNTIzRDI3OTAyREU0M0Q3
MDE4NjM1Q0EgLyogVGV4dFJlc291cmNlRGVjb2Rlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0UmVzb3VyY2VEZWNvZGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlGNTIz
RDMwMzAyREU0NDc2MDE4NjM1Q0EgLyogUmFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmFuZ2UuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKKwkJRjUyM0QzMDQwMkRF
NDQ3NjAxODYzNUNBIC8qIFJhbmdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFJhbmdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldp
ZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlGNTJBOEZENTFEMEE4ODAxMDA3M0NGNDIgLyog
QWNjZXNzaWJpbGl0eUxhYmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEFjY2Vzc2liaWxpdHlMYWJlbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUY1MkE4RkQ2MUQwQTg4MDEwMDczQ0Y0MiAvKiBBY2Nlc3NpYmlsaXR5TGFiZWwuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQWNjZXNzaWJpbGl0eUxhYmVsLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1MkFENUUzMTUzNDI0NUYwMDU5RkJFNiAvKiBFbXB0eUNs
aWVudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRW1wdHlDbGll
bnRzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU0NEY3ODYxNUNGQjJBODAw
QUYzM0E4IC8qIFBsYXRmb3JtTG9jYWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IFBsYXRmb3JtTG9jYWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRjU0NEY3ODcxNUNGQjJBODAwQUYzM0E4IC8qIFBsYXRmb3JtTG9jYWxlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3JtTG9jYWxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUY1NUIzRDc5MTI1MUYxMkQwMDNFRjI2OSAvKiBCYXNlVGV4dElucHV0
VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCYXNlVGV4dElu
cHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDdBMTI1MUYx
MkQwMDNFRjI2OSAvKiBCYXNlVGV4dElucHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBCYXNlVGV4dElucHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGNTVCM0Q3QjEyNTFGMTJEMDAzRUYyNjkgLyogQnV0dG9uSW5wdXRUeXBlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1dHRvbklucHV0VHlwZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDdDMTI1MUYxMkQwMDNFRjI2OSAvKiBC
dXR0b25JbnB1dFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnV0dG9u
SW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDdEMTI1MUYx
MkQwMDNFRjI2OSAvKiBDaGVja2JveElucHV0VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDaGVja2JveElucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUY1NUIzRDdFMTI1MUYxMkQwMDNFRjI2OSAvKiBDaGVja2JveElucHV0VHlw
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGVja2JveElucHV0VHlwZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0Q4MDEyNTFGMTJEMDAzRUYyNjkg
LyogQ29sb3JJbnB1dFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29s
b3JJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEODExMjUx
RjEyRDAwM0VGMjY5IC8qIERhdGVJbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRGF0ZUlucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY1NUIzRDgyMTI1MUYxMkQwMDNFRjI2OSAvKiBEYXRlSW5wdXRUeXBlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGVJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEODUxMjUxRjEyRDAwM0VGMjY5IC8qIERhdGVUaW1lTG9j
YWxJbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGF0
ZVRpbWVMb2NhbElucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1
NUIzRDg2MTI1MUYxMkQwMDNFRjI2OSAvKiBEYXRlVGltZUxvY2FsSW5wdXRUeXBlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGVUaW1lTG9jYWxJbnB1dFR5cGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEODcxMjUxRjEyRDAwM0VGMjY5IC8qIEVt
YWlsSW5wdXRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEVt
YWlsSW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEODgx
MjUxRjEyRDAwM0VGMjY5IC8qIEVtYWlsSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEVtYWlsSW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUY1NUIzRDg5MTI1MUYxMkQwMDNFRjI2OSAvKiBGaWxlSW5wdXRUeXBlLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpbGVJbnB1dFR5cGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0Q4QTEyNTFGMTJEMDAzRUYyNjkgLyogRmlsZUlu
cHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlSW5wdXRUeXBl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDhCMTI1MUYxMkQwMDNFRjI2
OSAvKiBIaWRkZW5JbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSGlkZGVuSW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RjU1QjNEOEMxMjUxRjEyRDAwM0VGMjY5IC8qIEhpZGRlbklucHV0VHlwZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBIaWRkZW5JbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRjU1QjNEOEQxMjUxRjEyRDAwM0VGMjY5IC8qIEltYWdlSW5wdXRUeXBl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEltYWdlSW5wdXRUeXBl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEOEUxMjUxRjEyRDAwM0VG
MjY5IC8qIEltYWdlSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEltYWdlSW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDkx
MTI1MUYxMkQwMDNFRjI2OSAvKiBNb250aElucHV0VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBNb250aElucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUY1NUIzRDkyMTI1MUYxMkQwMDNFRjI2OSAvKiBNb250aElucHV0VHlwZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNb250aElucHV0VHlwZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0Q5MzEyNTFGMTJEMDAzRUYyNjkgLyogTnVt
YmVySW5wdXRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE51
bWJlcklucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDk0
MTI1MUYxMkQwMDNFRjI2OSAvKiBOdW1iZXJJbnB1dFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTnVtYmVySW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY1NUIzRDk1MTI1MUYxMkQwMDNFRjI2OSAvKiBQYXNzd29yZElucHV0VHlwZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYXNzd29yZElucHV0VHlwZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDk2MTI1MUYxMkQwMDNFRjI2
OSAvKiBQYXNzd29yZElucHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBQYXNzd29yZElucHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVC
M0Q5NzEyNTFGMTJEMDAzRUYyNjkgLyogUmFkaW9JbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmFkaW9JbnB1dFR5cGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGNTVCM0Q5ODEyNTFGMTJEMDAzRUYyNjkgLyogUmFkaW9JbnB1dFR5
cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmFkaW9JbnB1dFR5cGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEOTkxMjUxRjEyRDAwM0VGMjY5IC8q
IFJhbmdlSW5wdXRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJhbmdlSW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNE
OUExMjUxRjEyRDAwM0VGMjY5IC8qIFJhbmdlSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFJhbmdlSW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY1NUIzRDlCMTI1MUYxMkQwMDNFRjI2OSAvKiBSZXNldElucHV0VHlwZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNldElucHV0VHlwZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDlDMTI1MUYxMkQwMDNFRjI2OSAvKiBS
ZXNldElucHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXNldElu
cHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0Q5RDEyNTFGMTJE
MDAzRUYyNjkgLyogU2VhcmNoSW5wdXRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNlYXJjaElucHV0VHlwZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY1NUIzRDlFMTI1MUYxMkQwMDNFRjI2OSAvKiBTZWFyY2hJbnB1dFR5cGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VhcmNoSW5wdXRUeXBlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzRDlGMTI1MUYxMkQwMDNFRjI2OSAvKiBTdWJtaXRJ
bnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3VibWl0
SW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEQTAxMjUx
RjEyRDAwM0VGMjY5IC8qIFN1Ym1pdElucHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBTdWJtaXRJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRjU1QjNEQTExMjUxRjEyRDAwM0VGMjY5IC8qIFRlbGVwaG9uZUlucHV0VHlwZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZWxlcGhvbmVJbnB1dFR5cGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0RBMjEyNTFGMTJEMDAzRUYyNjkg
LyogVGVsZXBob25lSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFRlbGVwaG9uZUlucHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVC
M0RBMzEyNTFGMTJEMDAzRUYyNjkgLyogVGV4dEZpZWxkSW5wdXRUeXBlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRleHRGaWVsZElucHV0VHlwZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzREE0MTI1MUYxMkQwMDNFRjI2OSAvKiBUZXh0
RmllbGRJbnB1dFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dEZp
ZWxkSW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzREE1MTI1
MUYxMkQwMDNFRjI2OSAvKiBUZXh0SW5wdXRUeXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFRleHRJbnB1dFR5cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGNTVCM0RBNjEyNTFGMTJEMDAzRUYyNjkgLyogVGV4dElucHV0VHlwZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0SW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUY1NUIzREE3MTI1MUYxMkQwMDNFRjI2OSAvKiBUaW1lSW5wdXRU
eXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRpbWVJbnB1dFR5
cGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNTVCM0RBODEyNTFGMTJEMDAz
RUYyNjkgLyogVGltZUlucHV0VHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUaW1lSW5wdXRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzREE5
MTI1MUYxMkQwMDNFRjI2OSAvKiBVUkxJbnB1dFR5cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVVJMSW5wdXRUeXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRjU1QjNEQUExMjUxRjEyRDAwM0VGMjY5IC8qIFVSTElucHV0VHlwZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVUkxJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRjU1QjNEQUIxMjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5
cGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vla0lucHV0VHlw
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1NUIzREFDMTI1MUYxMkQwMDNF
RjI2OSAvKiBXZWVrSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdlZWtJbnB1dFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU4Nzg0RjAw
MkRFMzc1OTAxRUE0MTIyIC8qIEN1cnNvck1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEN1cnNvck1hYy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUY1ODc4NTRD
MDJERTM3NTkwMUVBNDEyMiAvKiBXZWJDb3JlRnJhbWVWaWV3LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVGcmFtZVZpZXcuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUY1
ODc4NjQ5MDJERTNBOUEwMUVBNDEyMiAvKiBDYWNoZVBvbGljeS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZVBvbGljeS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IHVzZXNUYWJzID0gMDsgfTsKKwkJRjU4Nzg2
NjIwMkRFM0IxMTAxRUE0MTIyIC8qIFNTTEtleUdlbmVyYXRvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTU0xLZXlHZW5lcmF0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB1c2VzVGFicyA9IDA7IH07CisJCUY1
ODc4Njg0MDJERTNCODYwMUVBNDEyMiAvKiBDdXJzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ3Vyc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IHRhYldpZHRoID0gODsgdXNlc1RhYnMgPSAwOyB9OworCQlGNTk3M0RERTE1Q0ZCMjAz
MDAyN0Y4MDQgLyogTG9jYWxlQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gTG9jYWxlQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU5NzNEREYx
NUNGQjIwMzAwMjdGODA0IC8qIExvY2FsZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gTG9jYWxlQ29jb2EubW07IHBhdGggPSAuLi9jb2NvYS9Mb2NhbGVD
b2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjU5Qzk1RkQxMjU1QjIzRjAw
MDYyM0MwIC8qIEJhc2VEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBCYXNlRGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGNTlDOTVGRTEyNTVCMjNGMDAwNjIzQzAgLyogQmFzZURh
dGVBbmRUaW1lSW5wdXRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJh
c2VEYXRlQW5kVGltZUlucHV0VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
NUExNTQyNTEyNzk1MzREMDBEMEIwQzAgLyogVmFsaWRhdGlvbk1lc3NhZ2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVmFsaWRhdGlvbk1lc3NhZ2UuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNUExNTQyNjEyNzk1MzREMDBEMEIwQzAgLyogVmFs
aWRhdGlvbk1lc3NhZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmFsaWRh
dGlvbk1lc3NhZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjVDMDQxRDcwRkZD
QTdDRTAwODM5RDRBIC8qIEhUTUxEYXRhTGlzdEVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSFRNTERhdGFMaXN0RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUY1QzA0MUQ4MEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxp
c3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhUTUxEYXRhTGlz
dEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjVDMDQxRDkwRkZDQTdD
RTAwODM5RDRBIC8qIEhUTUxEYXRhTGlzdEVsZW1lbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IEhUTUxEYXRhTGlzdEVsZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGNUMwNDFFMTBGRkNBOTZEMDA4MzlENEEgLyogSlNIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTSFRNTERhdGFMaXN0RWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY1QzA0MUUyMEZGQ0E5NkQwMDgz
OUQ0QSAvKiBKU0hUTUxEYXRhTGlzdEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNIVE1MRGF0YUxpc3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUY3NUEwNTlBRjE3MEQ4RkFBNUI4Q0FCRSAvKiBNYXRoTUxTZWxlY3RFbGVtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1hdGhNTFNlbGVjdEVsZW1l
bnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGODIxNjI5OTAyOUY0RkI1MDEw
MDAxMzEgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFtZXdvcms7IHBhdGggPSBKYXZh
U2NyaXB0Q29yZS5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CisJCUY5MTZDNDhCMERCNTEwRjgwMDc2Q0Q4MyAvKiBKU1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NF
dmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNYTUxIdHRw
UmVxdWVzdFByb2dyZXNzRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
OTE2QzQ4QzBEQjUxMEY4MDA3NkNEODMgLyogSlNYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTWE1MSHR0cFJlcXVlc3RQcm9n
cmVzc0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY5RjBFRDc3MERCNTBD
QTIwMEQxNkRCOSAvKiBYTUxIdHRwUmVxdWVzdFByb2dyZXNzRXZlbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFhNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGOUYwRUQ3ODBEQjUwQ0EyMDBEMTZEQjkgLyogWE1M
SHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gWE1M
SHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRkE2NTRBNjMxMTA4QUJCNzAwMjYxNUUwIC8qIG1hdGhtbC5jc3MgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
LmNzczsgcGF0aCA9IG1hdGhtbC5jc3M7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZB
NjU0QTY3MTEwOEFCRTIwMDI2MTVFMCAvKiBtYXRoYXR0cnMuaW4gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBw
YXRoID0gbWF0aGF0dHJzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQTY1NEE2
OTExMDhBQkVEMDAyNjE1RTAgLyogTWF0aE1MVG9rZW5FbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1hdGhNTFRva2VuRWxlbWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBNjU0QTY5MTEwOEFCRUQwMDI2MTZGMSAvKiBNYXRoTUxP
cGVyYXRvckVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TWF0aE1MT3BlcmF0b3JFbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RkE2NTRBNjkxMTA4QUJFRDAwMjYyNkYxIC8qIE1hdGhNTFVuZGVyT3ZlckVsZW1lbnQuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MVW5kZXJPdmVyRWxlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBNjU0QTZBMTEwOEFCRUQwMDI2
MTVFMCAvKiBNYXRoTUxUb2tlbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTWF0aE1MVG9rZW5FbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZBNjU0QTZBMTEwOEFCRUQwMDI2MTZGMSAvKiBNYXRoTUxPcGVyYXRvckVsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MT3BlcmF0b3JFbGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBNjU0QTZBMTEwOEFCRUQwMDI2MjZGMSAvKiBN
YXRoTUxVbmRlck92ZXJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE1hdGhNTFVuZGVyT3ZlckVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RkE2RTQ2NkZDRDA0MThBOTk2NkE1QjYwIC8qIEROU1Jlc29sdmVRdWV1ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBETlNSZXNvbHZlUXVldWUuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkE3NjVBNjkxMTA4QUJFRDAwMjYxNUUwIC8qIE1hdGhNTFJvd0VsZW1l
bnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MUm93RWxl
bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBNzY1QTY5MTEwOEFCRUQw
MDc4MkE1QyAvKiBNYXRoTUxSb290RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNYXRoTUxSb290RWxlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUZBNzY1QTZBMTEwOEFCRUQwMDI2MTVFMCAvKiBNYXRoTUxSb3dFbGVtZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhNTFJvd0VsZW1lbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkE3NjVBNkExMTA4QUJFRDAwNzgyQTVDIC8qIE1h
dGhNTFJvb3RFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hdGhN
TFJvb3RFbGVtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBQkU3MkVEMTA1
OUMxRUIwMEQ4ODhDQyAvKiBNYXRoTUxBbm5vdGF0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXRoTUxBbm5vdGF0aW9uRWxlbWVudC5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZBQkU3MkVEMTA1OUMxRUIwMEQ5OTlERCAvKiBN
YXRoTUxFbGVtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1h
dGhNTEVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQUJFNzJFRTEw
NTlDMUVCMDBEODg4Q0MgLyogTWF0aE1MQW5ub3RhdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MQW5ub3RhdGlvbkVsZW1lbnQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkFCRTcyRUUxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTEVs
ZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MRWxlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQUJFNzJFRjEwNTlDMUVCMDBEOTk5REQg
LyogTWF0aE1MUHJlc2VudGF0aW9uRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBNYXRoTUxQcmVzZW50YXRpb25FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkFCRTcyRjAxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTFByZXNl
bnRhdGlvbkVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1M
UHJlc2VudGF0aW9uRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQUJF
NzJGMTEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MTWF0aEVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWF0aE1MTWF0aEVsZW1lbnQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGQUJFNzJGMjEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1M
TWF0aEVsZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWF0aE1MTWF0
aEVsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkFCRTcyRjMxMDU5QzFF
QjAwRDk5OUREIC8qIG1hdGh0YWdzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IG1hdGh0YWdz
LmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQUJFNzJGQjEwNTlDMjExMDBEOTk5
REQgLyogTWF0aE1MRWxlbWVudEZhY3RvcnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gTWF0aE1MRWxlbWVudEZhY3RvcnkuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9NYXRoTUxFbGVtZW50RmFjdG9yeS5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9Q
Uk9EVUNUU19ESVI7IH07CisJCUZBQkU3MkZDMTA1OUMyMTEwMEQ5OTlERCAvKiBNYXRoTUxOYW1l
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBNYXRoTUxOYW1lcy5j
cHA7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL01hdGhNTE5hbWVzLmNwcDsgc291cmNl
VHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJRkIyNzNFN0UyMDg2RTZBMzAwQTU0RTg3
IC8qIFNWR0dlb21ldHJ5RWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBTVkdHZW9tZXRyeUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGQjI3M0U3RjIwODZFNkEzMDBBNTRFODcgLyogU1ZHR2VvbWV0cnlFbGVtZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR0dlb21ldHJ5RWxlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQjI3M0U4MDIwODZFNkEzMDBBNTRFODcgLyogU1ZH
R2VvbWV0cnlFbGVtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTVkdHZW9tZXRyeUVs
ZW1lbnQuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQjI3M0U4MzIwODZFNzNF
MDBBNTRFODcgLyogSlNTVkdHZW9tZXRyeUVsZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSlNTVkdHZW9tZXRyeUVsZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0g
U09VUkNFX1JPT1Q7IH07CisJCUZCMjczRTg0MjA4NkU3M0UwMEE1NEU4NyAvKiBKU1NWR0dlb21l
dHJ5RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0dlb21l
dHJ5RWxlbWVudC5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07CisJCUZCMkMxNUMyMTY1
RDY0OTAwMDM5QzlGOCAvKiBDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQjMwNTZDMTE2OUU1REFDMDA5NkEyMzIgLyogQ1NT
R3JvdXBpbmdSdWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0dyb3Vw
aW5nUnVsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQjQ4NEY0QTE3MUY4MjFF
MDAwNDA3NTUgLyogVHJhbnNmb3JtRnVuY3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IFRyYW5zZm9ybUZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZCNDg0RjRCMTcxRjgyMUUwMDA0MDc1NSAvKiBUcmFuc2Zvcm1GdW5jdGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNmb3JtRnVuY3Rpb25z
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZCOTJERjQ5MTVGRUQwODcwMDk5NDQz
MyAvKiBDbGlwUGF0aE9wZXJhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBDbGlwUGF0aE9wZXJhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQjk2
NUI4MTE3QkJCNUY5MDBFODM1QjkgLyogQ1NTRmlsdGVySW1hZ2VWYWx1ZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NGaWx0ZXJJbWFnZVZhbHVlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZCOTY1QjgyMTdCQkI2MkMwMEU4MzVCOSAvKiBDU1NGaWx0ZXJJ
bWFnZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0Zp
bHRlckltYWdlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQkQ2QUY4
MjE1RUYyMUEzMDA4QjcxMTAgLyogQmFzaWNTaGFwZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQmFzaWNTaGFwZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGQkQ2QUY4MzE1RUYyMUEzMDA4QjcxMTAgLyogQmFzaWNTaGFwZXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFzaWNTaGFwZXMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkJENkFGODQxNUVGMjFENDAwOEI3MTEwIC8qIEJhc2ljU2hhcGVGdW5j
dGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmFzaWNTaGFw
ZUZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZCRDZBRjg1MTVF
RjIxRDQwMDhCNzExMCAvKiBCYXNpY1NoYXBlRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEJhc2ljU2hhcGVGdW5jdGlvbnMuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkJENkFGODYxNUVGMjFENDAwOEI3MTEwIC8qIENTU0Jhc2ljU2hhcGVzLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENTU0Jhc2ljU2hhcGVzLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkJENkFGODcxNUVGMjFENDAwOEI3MTEw
IC8qIENTU0Jhc2ljU2hhcGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENT
U0Jhc2ljU2hhcGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZCREI2MTlBMTZE
NjAzMkEwMEJCMzM5NCAvKiBFbGVtZW50UnVsZUNvbGxlY3Rvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBFbGVtZW50UnVsZUNvbGxlY3Rvci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZCREI2MTlDMTZENjAzNDYwMEJCMzM5NCAvKiBQYWdlUnVs
ZUNvbGxlY3Rvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQYWdl
UnVsZUNvbGxlY3Rvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZCREI2MTlF
MTZENjAzNjUwMEJCMzM5NCAvKiBFbGVtZW50UnVsZUNvbGxlY3Rvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50UnVsZUNvbGxlY3Rvci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGQkRCNjFBMDE2RDYwMzdFMDBCQjMzOTQgLyogUGFnZVJ1bGVDb2xs
ZWN0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGFnZVJ1bGVDb2xsZWN0
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkJGODkwNDQxNjlFOUYxRjAwNTJE
ODZFIC8qIENTU0dyb3VwaW5nUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDU1NHcm91cGluZ1J1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGQzYzQkRCMTE2N0FBQkFDMDBGOTM4MEYgLyogQ1NTU3VwcG9ydHNSdWxlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU1N1cHBvcnRzUnVsZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGQzYzQkRCMjE2N0FBQkFDMDBGOTM4MEYgLyogQ1NTU3VwcG9ydHNS
dWxlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDU1NTdXBwb3J0c1J1bGUuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGQzg0ODAyRTE2N0FCNDQ0MDA4Q0QxMDAgLyogSlND
U1NTdXBwb3J0c1J1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NT
dXBwb3J0c1J1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkM5QTBGNzIxNjQw
OTRDRjAwM0Q2QjhEIC8qIERPTUNTU05hbWVzcGFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBET01DU1NOYW1lc3BhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRkM5QTBGNzMxNjQwOTRDRjAwM0Q2QjhEIC8qIERPTUNTU05hbWVzcGFjZS5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gRE9NQ1NTTmFtZXNwYWNlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkM5RTBFNEIxNjQxOUMxRTAwMzkyQkUzIC8qIEpTRE9NQ1NTTmFtZXNwYWNl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRE9NQ1NTTmFtZXNwYWNlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMDBEN0EyMTRBM0Y2MTkwMDczNDAxMSAv
KiBTaW5jUmVzYW1wbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNpbmNSZXNhbXBsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDAwRDdB
MzE0QTNGNjE5MDA3MzQwMTEgLyogU2luY1Jlc2FtcGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTaW5jUmVzYW1wbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMDZERkEzMTM0QTRERUYwMDZGNUQ3RCAvKiBEZWZhdWx0QXVkaW9EZXN0aW5hdGlvbk5v
ZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVmYXVsdEF1ZGlv
RGVzdGluYXRpb25Ob2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQwNkRG
QTQxMzRBNERFRjAwNkY1RDdEIC8qIERlZmF1bHRBdWRpb0Rlc3RpbmF0aW9uTm9kZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWZhdWx0QXVkaW9EZXN0aW5hdGlvbk5vZGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQwOEE4N0ExNzVEMzkyNjAwMkNEMzYw
IC8qIFBvbHlnb25TaGFwZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBQb2x5Z29uU2hhcGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDA4QTg3
QjE3NUQzOTI2MDAyQ0QzNjAgLyogUG9seWdvblNoYXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBvbHlnb25TaGFwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGRDA4QTg3QzE3NUQzOTI2MDAyQ0QzNjAgLyogUmVjdGFuZ2xlU2hhcGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUmVjdGFuZ2xlU2hhcGUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRDA4QTg3RDE3NUQzOTI2MDAyQ0QzNjAgLyogUmVjdGFu
Z2xlU2hhcGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVjdGFuZ2xlU2hh
cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQwOEE4N0UxNzVEMzkyNjAwMkNE
MzYwIC8qIFNoYXBlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNo
YXBlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQwOEE4N0YxNzVEMzkyNjAw
MkNEMzYwIC8qIFNoYXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXBl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMDhBODg1MTc1RDM5MjYwMDJDRDM2
MCAvKiBTaGFwZUludGVydmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNo
YXBlSW50ZXJ2YWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQwOEE4ODYxNzVE
MzkyNjAwMkNEMzYwIC8qIFNoYXBlT3V0c2lkZUluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2hhcGVPdXRzaWRlSW5mby5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZEMDhBODg3MTc1RDM5MjYwMDJDRDM2MCAvKiBTaGFwZU91dHNpZGVJbmZv
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNoYXBlT3V0c2lkZUluZm8uaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQxNjYwQTQxMzc4N0M2RDAwMUZGQTdCIC8q
IERlbm9ybWFsRGlzYWJsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVu
b3JtYWxEaXNhYmxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDE3NjJERDE3
NjY4NkQ5MDBEODM2QTggLyogVXBTYW1wbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFVwU2FtcGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZEMTc2MkRFMTc2Njg2RDkwMEQ4MzZBOCAvKiBVcFNhbXBsZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gVXBTYW1wbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMTc2MkUxMTc2Njg2RUEwMEQ4MzZBOCAvKiBEb3duU2FtcGxlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEb3duU2FtcGxlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZEMTc2MkUyMTc2Njg2RUEwMEQ4MzZBOCAvKiBEb3duU2FtcGxl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb3duU2FtcGxlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDFBRjE0RTE2NTZGMTIxMDBDNkQ0RjcgLyogU2hh
cGVWYWx1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaGFwZVZhbHVlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMjNBMTIzMTNGNUZBNTkwMEY2NzAwMSAv
KiBKU01lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU01lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMjNBMTI0MTNGNUZBNTkwMEY2NzAwMSAvKiBKU01l
ZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU01lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRDJEQkYwRTEyQjA0OEEzMDBFRDk4QzYgLyogQWNjZWxlcmF0ZS5mcmFtZXdv
cmsgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFw
cGVyLmZyYW1ld29yazsgbmFtZSA9IEFjY2VsZXJhdGUuZnJhbWV3b3JrOyBwYXRoID0gL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvQWNjZWxlcmF0ZS5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSAi
PGFic29sdXRlPiI7IH07CisJCUZEMkRCRjBGMTJCMDQ4QTMwMEVEOThDNiAvKiBBdWRpb1Rvb2xi
b3guZnJhbWV3b3JrICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gd3JhcHBlci5mcmFtZXdvcms7IG5hbWUgPSBBdWRpb1Rvb2xib3guZnJhbWV3b3JrOyBw
YXRoID0gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvQXVkaW9Ub29sYm94LmZyYW1ld29yazsg
c291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKKwkJRkQzMTVGQUMxMkIwMjY3NTAwQzFBMzU5
IC8qIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkQzMTVGQUQxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvQmFzaWNQcm9j
ZXNzb3JOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQmFzaWNQ
cm9jZXNzb3JOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkFFMTJC
MDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBdWRpb0J1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMzE1RkFGMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb0J1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRDMxNUZCMDEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CdWZmZXIuaWRsICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvQnVmZmVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkQzMTVGQjExMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvQnVmZmVyU291cmNl
Tm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb0J1ZmZl
clNvdXJjZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZCMjEy
QjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQnVmZmVyU291cmNlTm9kZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGRDMxNUZCMzEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CdWZmZXJT
b3VyY2VOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0J1ZmZlclNvdXJjZU5v
ZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZCNDEyQjAyNjc1MDBD
MUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQ2hhbm5lbE1lcmdlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGRDMxNUZCNTEyQjAyNjc1MDBDMUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhbm5lbE1lcmdlck5vZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGQjYxMkIwMjY3NTAwQzFBMzU5IC8qIENo
YW5uZWxNZXJnZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBDaGFubmVsTWVyZ2Vy
Tm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkI3MTJCMDI2NzUw
MEMxQTM1OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENoYW5uZWxTcGxpdHRlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNUZCODEyQjAyNjc1MDBDMUEzNTkgLyogQ2hhbm5lbFNwbGl0dGVy
Tm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDaGFubmVsU3BsaXR0ZXJO
b2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkI5MTJCMDI2NzUwMEMx
QTM1OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBD
aGFubmVsU3BsaXR0ZXJOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQz
MTVGQkExMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNUZCQjEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9Db250ZXh0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQ29udGV4dC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZCQzEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9D
b250ZXh0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0NvbnRleHQuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZCRDEyQjAyNjc1MDBDMUEzNTkgLyogQXVk
aW9EZXN0aW5hdGlvbk5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGRDMxNUZCRTEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9EZXN0aW5hdGlvbk5vZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGQkYxMkIwMjY3NTAwQzFBMzU5IC8qIEF1
ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRpb0Rlc3Rp
bmF0aW9uTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkMyMTJC
MDI2NzUwMEMxQTM1OSAvKiBHYWluTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBHYWluTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
MzE1RkMzMTJCMDI2NzUwMEMxQTM1OSAvKiBHYWluTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBHYWluTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RDMxNUZDNDEyQjAyNjc1MDBDMUEzNTkgLyogR2Fpbk5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsg
cGF0aCA9IEdhaW5Ob2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVG
QzUxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvTGlzdGVuZXIuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9MaXN0ZW5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZEMzE1RkM2MTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0xpc3RlbmVyLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvTGlzdGVuZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGQzcxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlv
TGlzdGVuZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvTGlzdGVuZXIuaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZDODEyQjAyNjc1MDBDMUEzNTkgLyog
QXVkaW9Ob2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlv
Tm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkM5MTJCMDI2NzUw
MEMxQTM1OSAvKiBBdWRpb05vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXVkaW9Ob2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkNBMTJCMDI2
NzUwMEMxQTM1OSAvKiBBdWRpb05vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlv
Tm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkNCMTJCMDI2NzUw
MEMxQTM1OSAvKiBBdWRpb05vZGVJbnB1dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBBdWRpb05vZGVJbnB1dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMzE1RkNDMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb05vZGVJbnB1dC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb05vZGVJbnB1dC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGRDMxNUZDRDEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9Ob2RlT3V0
cHV0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvTm9kZU91
dHB1dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkNFMTJCMDI2NzUw
MEMxQTM1OSAvKiBBdWRpb05vZGVPdXRwdXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQXVkaW9Ob2RlT3V0cHV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
MzE1RkNGMTJCMDI2NzUwMEMxQTM1OSAvKiBQYW5uZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBhbm5lck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRDMxNUZEMDEyQjAyNjc1MDBDMUEzNTkgLyogUGFubmVyTm9kZS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYW5uZXJOb2RlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUZEMzE1RkQxMTJCMDI2NzUwMEMxQTM1OSAvKiBQYW5uZXJOb2RlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBQYW5uZXJOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRDIxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvUGFyYW0uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9QYXJhbS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkQzMTJCMDI2NzUwMEMxQTM1OSAvKiBB
dWRpb1BhcmFtLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvUGFyYW0u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRDQxMkIwMjY3NTAwQzFBMzU5
IC8qIEF1ZGlvUGFyYW0uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvUGFyYW0uaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZENTEyQjAyNjc2MDBDMUEzNTkg
LyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQXVkaW9Qcm9jZXNzaW5nRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGRDMxNUZENjEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Qcm9jZXNzaW5nRXZlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRDcxMkIwMjY3NjAwQzFBMzU5
IC8qIEF1ZGlvUHJvY2Vzc2luZ0V2ZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBBdWRp
b1Byb2Nlc3NpbmdFdmVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1
RkRBMTJCMDI2NzYwMEMxQTM1OSAvKiBCaXF1YWREU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQmlxdWFkRFNQS2VybmVsLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGREIxMkIwMjY3NjAwQzFBMzU5IC8qIEJpcXVhZERTUEtl
cm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaXF1YWREU1BLZXJuZWwu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGREMxMkIwMjY3NjAwQzFBMzU5
IC8qIEJpcXVhZFByb2Nlc3Nvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBCaXF1YWRQcm9jZXNzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RDMxNUZERDEyQjAyNjc2MDBDMUEzNTkgLyogQmlxdWFkUHJvY2Vzc29yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpcXVhZFByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNUZERTEyQjAyNjc2MDBDMUEzNTkgLyogQ29udm9sdmVyTm9kZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb252b2x2ZXJOb2RlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGREYxMkIwMjY3NjAwQzFBMzU5
IC8qIENvbnZvbHZlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29u
dm9sdmVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZFMDEyQjAy
Njc2MDBDMUEzNTkgLyogQ29udm9sdmVyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
Q29udm9sdmVyTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkUx
MTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheURTUEtlcm5lbC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBEZWxheURTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZEMzE1RkUyMTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheURTUEtlcm5lbC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWxheURTUEtlcm5lbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNUZFMzEyQjAyNjc2MDBDMUEzNTkgLyogRGVs
YXlOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERlbGF5Tm9k
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkU0MTJCMDI2NzYwMEMx
QTM1OSAvKiBEZWxheU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVs
YXlOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkU1MTJCMDI2NzYw
MEMxQTM1OSAvKiBEZWxheU5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IERlbGF5Tm9k
ZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkU2MTJCMDI2NzYwMEMx
QTM1OSAvKiBEZWxheVByb2Nlc3Nvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBEZWxheVByb2Nlc3Nvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZEMzE1RkU3MTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheVByb2Nlc3Nvci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEZWxheVByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNUZFQjEyQjAyNjc2MDBDMUEzNTkgLyogU2NyaXB0UHJvY2Vzc29y
Tm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRQcm9j
ZXNzb3JOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRUMxMkIw
MjY3NjAwQzFBMzU5IC8qIFNjcmlwdFByb2Nlc3Nvck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2NyaXB0UHJvY2Vzc29yTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRDMxNUZFRDEyQjAyNjc2MDBDMUEzNTkgLyogU2NyaXB0UHJvY2Vzc29yTm9k
ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2NyaXB0UHJvY2Vzc29yTm9kZS5pZGw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE1RkYxMTJCMDI2NzYwMEMxQTM1OSAvKiBS
ZWFsdGltZUFuYWx5c2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJlYWx0aW1lQW5hbHlzZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMx
NUZGMjEyQjAyNjc2MDBDMUEzNTkgLyogUmVhbHRpbWVBbmFseXNlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGltZUFuYWx5c2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZEMzE1RkYzMTJCMDI2NzYwMEMxQTM1OSAvKiBBbmFseXNlck5vZGUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQW5hbHlzZXJOb2RlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRjQxMkIwMjY3NjAwQzFBMzU5IC8q
IEFuYWx5c2VyTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBbmFseXNl
ck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTVGRjUxMkIwMjY3NjAw
QzFBMzU5IC8qIEFuYWx5c2VyTm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gQW5hbHlz
ZXJOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNDQxMkIwMjZG
NzAwQzFBMzU5IC8qIEF1ZGlvQXJyYXkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXVkaW9BcnJheS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA0NTEy
QjAyNkY3MDBDMUEzNTkgLyogQXVkaW9CdXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQXVkaW9CdXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RDMxNjA0NjEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9CdXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQXVkaW9CdXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RkQzMTYwNDcxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdWRpb0NoYW5uZWwuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGRDMxNjA0ODEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9DaGFubmVs
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQ2hhbm5lbC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA0OTEyQjAyNkY3MDBDMUEzNTkgLyogQXVk
aW9EZXN0aW5hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb0Rl
c3RpbmF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDRBMTJCMDI2
RjcwMEMxQTM1OSAvKiBBdWRpb0RTUEtlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBBdWRpb0RTUEtlcm5lbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RDMxNjA0QjEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9EU1BLZXJuZWxQcm9jZXNz
b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA0QzEyQjAyNkY3MDBD
MUEzNTkgLyogQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQXVkaW9EU1BLZXJuZWxQcm9jZXNzb3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkQzMTYwNEQxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvRmlsZVJlYWRlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb0ZpbGVSZWFkZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNEUxMkIwMjZGNzAwQzFBMzU5IC8qIEF1
ZGlvUHJvY2Vzc29yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvUHJv
Y2Vzc29yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDRGMTJCMDI2Rjcw
MEMxQTM1OSAvKiBBdWRpb1Jlc2FtcGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBBdWRpb1Jlc2FtcGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMzE2MDUwMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb1Jlc2FtcGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1Jlc2FtcGxlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGRDMxNjA1MTEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9SZXNhbXBs
ZXJLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9S
ZXNhbXBsZXJLZXJuZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1
MjEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9SZXNhbXBsZXJLZXJuZWwuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9SZXNhbXBsZXJLZXJuZWwuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNTMxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvU291cmNl
UHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Tb3VyY2VQ
cm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1NDEyQjAyNkY3
MDBDMUEzNTkgLyogQXVkaW9VdGlsaXRpZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gQXVkaW9VdGlsaXRpZXMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGRDMxNjA1NTEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9VdGlsaXRpZXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9VdGlsaXRpZXMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNTYxMkIwMjZGNzAwQzFBMzU5IC8qIEJpcXVhZC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCaXF1YWQuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1NzEyQjAyNkY3MDBDMUEzNTkgLyogQmlxdWFk
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJpcXVhZC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1ODEyQjAyNkY3MDBDMUEzNTkgLyogQ29uZS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb25lLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNTkxMkIwMjZGNzAwQzFBMzU5IC8qIENvbmUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29uZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNjA1QTEyQjAyNkY3MDBDMUEzNTkgLyogRGlzdGFuY2UuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGlzdGFuY2UuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1QjEyQjAyNkY3MDBDMUEzNTkgLyogRGlzdGFu
Y2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlzdGFuY2UuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNUMxMkIwMjZGNzAwQzFBMzU5IC8qIEVxdWFs
UG93ZXJQYW5uZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXF1
YWxQb3dlclBhbm5lci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDVE
MTJCMDI2RjcwMEMxQTM1OSAvKiBFcXVhbFBvd2VyUGFubmVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEVxdWFsUG93ZXJQYW5uZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRkQzMTYwNUUxMkIwMjZGNzAwQzFBMzU5IC8qIEZGVENvbnZvbHZlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRlRDb252b2x2ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA1RjEyQjAyNkY3MDBDMUEzNTkgLyogRkZU
Q29udm9sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZGVENvbnZvbHZl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA2MDEyQjAyNkY3MDBDMUEz
NTkgLyogRkZURnJhbWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RkZURnJhbWUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA2MTEyQjAy
NkY3MDBDMUEzNTkgLyogRkZURnJhbWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRkZURnJhbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNjIxMkIw
MjZGNzAwQzFBMzU5IC8qIEhSVEZEYXRhYmFzZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBIUlRGRGF0YWJhc2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGRDMxNjA2MzEyQjAyNkY3MDBDMUEzNTkgLyogSFJURkRhdGFiYXNlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhSVEZEYXRhYmFzZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDMxNjA2NDEyQjAyNkY3MDBDMUEzNTkgLyogSFJURkRhdGFiYXNlTG9h
ZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhSVEZEYXRhYmFz
ZUxvYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDY1MTJCMDI2
RjcwMEMxQTM1OSAvKiBIUlRGRGF0YWJhc2VMb2FkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSFJURkRhdGFiYXNlTG9hZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZEMzE2MDY2MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGRWxldmF0aW9uLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhSVEZFbGV2YXRpb24uY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA2NzEyQjAyNkY3MDBDMUEzNTkgLyogSFJU
RkVsZXZhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIUlRGRWxldmF0
aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDY4MTJCMDI2RjcwMEMx
QTM1OSAvKiBIUlRGS2VybmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEhSVEZLZXJuZWwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA2
OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBIUlRGS2VybmVsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
MzE2MDZBMTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhSVEZQYW5uZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRDMxNjA2QjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIUlRGUGFubmVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUZEMzE2MDZDMTJCMDI2RjcwMEMxQTM1OSAvKiBQYW5uZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGFubmVyLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNkQxMkIwMjZGNzAwQzFBMzU5IC8qIFBhbm5lci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQYW5uZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNkUxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYi5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXZlcmIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA2RjEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJi
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJldmVyYi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRDMxNjA3MDEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJiQWNj
dW11bGF0aW9uQnVmZmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFJldmVyYkFjY3VtdWxhdGlvbkJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEMzE2MDcxMTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJBY2N1bXVsYXRpb25CdWZmZXIu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmV2ZXJiQWNjdW11bGF0aW9uQnVm
ZmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDcyMTJCMDI2RjcwMEMx
QTM1OSAvKiBSZXZlcmJDb252b2x2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUmV2ZXJiQ29udm9sdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRkQzMTYwNzMxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkNvbnZvbHZlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZXZlcmJDb252b2x2ZXIuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNzQxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkNvbnZv
bHZlclN0YWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJldmVy
YkNvbnZvbHZlclN0YWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYw
NzUxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkNvbnZvbHZlclN0YWdlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJldmVyYkNvbnZvbHZlclN0YWdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDc2MTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJJbnB1
dEJ1ZmZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXZlcmJJ
bnB1dEJ1ZmZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MDc3MTJC
MDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJJbnB1dEJ1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSZXZlcmJJbnB1dEJ1ZmZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGRDMxNjA3ODEyQjAyNkY3MDBDMUEzNTkgLyogVmVjdG9yTWF0aC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBWZWN0b3JNYXRoLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwNzkxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1h
dGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVmVjdG9yTWF0aC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDMxNjBCNTEyQjAyNzJBMDBDMUEzNTkgLyogQXVk
aW9CdXNNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBBdWRp
b0J1c01hYy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQzMTYwQjYxMkIwMjcy
QTAwQzFBMzU5IC8qIEF1ZGlvT3V0cHV0VW5pdEFkYXB0b3JNYWMuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9PdXRwdXRVbml0QWRhcHRvck1hYy5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzE2MEJBMTJCMDI3MkEwMEMxQTM1OSAvKiBG
RlRGcmFtZU1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGRlRG
cmFtZU1hYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEMzU5MThEMTM4REIy
MjAwMEUxRUJFQyAvKiBBdWRpb1BhcmFtVGltZWxpbmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9QYXJhbVRpbWVsaW5lLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkQzNTkxOEUxMzhEQjIyMDAwRTFFQkVDIC8qIEF1ZGlvUGFyYW1UaW1l
bGluZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1BhcmFtVGltZWxp
bmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1MzczNTAxMzdCNjUxODAwMDA4
RENFIC8qIFplcm9Qb2xlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFplcm9Qb2xlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1MzczNTExMzdC
NjUxODAwMDA4RENFIC8qIFplcm9Qb2xlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFplcm9Qb2xlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENTM3MzU0MTM3
QjY1M0IwMDAwOERDRSAvKiBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRHluYW1pY3NDb21wcmVzc29yS2VybmVsLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1MzczNTUxMzdCNjUzQjAwMDA4RENFIC8q
IER5bmFtaWNzQ29tcHJlc3Nvcktlcm5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRkQ1Njg2QzcxM0FDMTgwMjAwQjY5QzY4IC8qIEFzeW5jQXVkaW9EZWNvZGVyLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEFzeW5jQXVkaW9EZWNvZGVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1Njg2QzgxM0FDMTgwMjAwQjY5QzY4
IC8qIEFzeW5jQXVkaW9EZWNvZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEFzeW5jQXVkaW9EZWNvZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENTY4
NkNCMTNBQzE4MTQwMEI2OUM2OCAvKiBBdWRpb0J1ZmZlckNhbGxiYWNrLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQnVmZmVyQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1Njg2Q0QxM0FDMTgzRTAwQjY5QzY4IC8qIEF1ZGlvQnVmZmVy
Q2FsbGJhY2suaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IEF1ZGlvQnVmZmVyQ2FsbGJhY2su
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDU4MUZBQjE1MjBGOTFGMDAzQTdB
NzUgLyogT3NjaWxsYXRvck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gT3NjaWxsYXRvck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RDU4MUZBQzE1MjBGOTFGMDAzQTdBNzUgLyogT3NjaWxsYXRvck5vZGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gT3NjaWxsYXRvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkQ1ODFGQUQxNTIwRjkxRjAwM0E3QTc1IC8qIE9zY2lsbGF0b3JOb2RlLmlk
bCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPc2NpbGxhdG9yTm9kZS5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZENTgxRkIxMTUyMEY5M0IwMDNBN0E3NSAvKiBQZXJpb2RpY1dh
dmUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUGVyaW9kaWNXYXZl
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1ODFGQjIxNTIwRjkzQjAwM0E3
QTc1IC8qIFBlcmlvZGljV2F2ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQ
ZXJpb2RpY1dhdmUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ1ODFGQjMxNTIw
RjkzQjAwM0E3QTc1IC8qIFBlcmlvZGljV2F2ZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0g
UGVyaW9kaWNXYXZlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ2MjlFQTEx
NTRCNDcxNjAwMDZEMDI2IC8qIEF1ZGlvQmFzaWNJbnNwZWN0b3JOb2RlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvQmFzaWNJbnNwZWN0b3JOb2RlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENjI5RUEyMTU0QjQ3MTYwMDA2RDAyNiAvKiBBdWRpb0Jh
c2ljSW5zcGVjdG9yTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBBdWRpb0Jhc2ljSW5zcGVjdG9yTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZENjJGNTJEMTQ1ODk4RDgwMDk0QjBFRCAvKiBBdWRpb1NvdXJjZVByb3ZpZGVyQ2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvU291cmNlUHJvdmlkZXJD
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ2NzFBNzQxNTlCQjA3MDAw
MTk3NTU5IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ2NzFBNzUxNTlCQjA3MDAwMTk3NTU5IC8qIE1l
ZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZENjcxQTc2MTU5QkIwNzAwMDE5NzU1OSAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNl
Tm9kZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU5v
ZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDY3NzczNDE5NUNBQjIwMDA3
MkUwRDMgLyogQ1NTU3VwcG9ydHNSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IENTU1N1cHBvcnRzUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZENjc3NzM1MTk1Q0FCMjAwMDcyRTBEMyAvKiBET01DU1NOYW1lc3BhY2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NQ1NTTmFtZXNwYWNlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ2Nzc3MzYxOTVDQUI3RDAwNzJFMEQzIC8qIEpT
Q1NTU3VwcG9ydHNSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9
IEpTQ1NTU3VwcG9ydHNSdWxlLmNwcDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlND
U1NTdXBwb3J0c1J1bGUuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9Owor
CQlGRDY3NzczNzE5NUNBQjdEMDA3MkUwRDMgLyogSlNET01DU1NOYW1lc3BhY2UuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNET01DU1NOYW1lc3BhY2UuY3BwOyBw
YXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0RPTUNTU05hbWVzcGFjZS5jcHA7IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUZENkVEMkMxMTM2QjhFNDIwMDNDRjA3
MiAvKiBEeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRDZFRDJDMjEzNkI4RTQyMDAzQ0YwNzIgLyogRHluYW1pY3NDb21wcmVz
c29yTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENkVEMkM1MTM2QjhF
NjYwMDNDRjA3MiAvKiBEeW5hbWljc0NvbXByZXNzb3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRHluYW1pY3NDb21wcmVzc29yLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkQ2RUQyQzYxMzZCOEU2NjAwM0NGMDcyIC8qIER5bmFtaWNzQ29tcHJl
c3Nvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEeW5hbWljc0NvbXByZXNz
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ2RUQyQzkxMzZCOEU5RDAwM0NG
MDcyIC8qIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGRDZGMjUyOTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2Rl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhRWxlbWVudEF1
ZGlvU291cmNlTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENkYyNTJB
MTNGNUVGMEUwMDY1MTY1RiAvKiBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZENkYyNTJCMTNGNUVGMEUwMDY1MTY1RiAv
KiBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9
IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZENzg2OEI3MTM2Qjk5OTIwMEQ0MDNERiAvKiBKU0R5bmFtaWNzQ29tcHJlc3Nvck5v
ZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEeW5hbWljc0Nv
bXByZXNzb3JOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ3ODY4Qjgx
MzZCOTk5MjAwRDQwM0RGIC8qIEpTRHluYW1pY3NDb21wcmVzc29yTm9kZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ3RjI5OEExM0Q0QzBDQjAwQUQ5NTM1IC8qIFdhdmVT
aGFwZXJEU1BLZXJuZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
V2F2ZVNoYXBlckRTUEtlcm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
N0YyOThCMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyRFNQS2VybmVsLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdhdmVTaGFwZXJEU1BLZXJuZWwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ3RjI5OEMxM0Q0QzBDQjAwQUQ5NTM1IC8qIFdhdmVTaGFw
ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdhdmVTaGFw
ZXJOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ3RjI5OEQxM0Q0QzBD
QjAwQUQ5NTM1IC8qIFdhdmVTaGFwZXJOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFdhdmVTaGFwZXJOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
N0YyOThFMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyTm9kZS5pZGwgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0
ZXh0OyBwYXRoID0gV2F2ZVNoYXBlck5vZGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGRDdGMjk4RjEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlclByb2Nlc3Nvci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXYXZlU2hhcGVyUHJvY2Vzc29y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ3RjI5OTAxM0Q0QzBDQjAwQUQ5
NTM1IC8qIFdhdmVTaGFwZXJQcm9jZXNzb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gV2F2ZVNoYXBlclByb2Nlc3Nvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGRDgyRDdGNTEzRDRDOEJEMDA0RTQzNzIgLyogSlNXYXZlU2hhcGVyTm9kZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1dhdmVTaGFwZXJOb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkQ4MkQ3RjYxM0Q0QzhCRDAwNEU0MzcyIC8qIEpT
V2F2ZVNoYXBlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNXYXZl
U2hhcGVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRDhDNDZFOTE1NDYw
OEU3MDBBNTkxMEMgLyogQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEF1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEOEM0NkVBMTU0NjA4RTcwMEE1OTEwQyAvKiBB
dWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEQTE1RTgxMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXVkaW9CdWZmZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUU4MjEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRp
b0J1ZmZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1ZGlvQnVmZmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTgzMTJCMDNFRTEwMDNBNTgz
QSAvKiBKU0F1ZGlvQnVmZmVyU291cmNlTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU0F1ZGlvQnVmZmVyU291cmNlTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUZEQTE1RTg0MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVy
U291cmNlTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1ZGlvQnVm
ZmVyU291cmNlTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUU4NTEy
QjAzRUUxMDAzQTU4M0EgLyogSlNDaGFubmVsTWVyZ2VyTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NoYW5uZWxNZXJnZXJOb2RlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBMTVFODYxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQ2hhbm5l
bE1lcmdlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDaGFubmVs
TWVyZ2VyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUU4NzEyQjAz
RUUxMDAzQTU4M0EgLyogSlNDaGFubmVsU3BsaXR0ZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ2hhbm5lbFNwbGl0dGVyTm9kZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTg4MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0NoYW5u
ZWxTcGxpdHRlck5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDaGFu
bmVsU3BsaXR0ZXJOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTg5
MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0F1ZGlvQ29udGV4dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZEQTE1RThBMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQ29udGV4dC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0F1ZGlvQ29udGV4dC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUU4QjEyQjAzRUUxMDAzQTU4M0EgLyogSlNB
dWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU0F1ZGlvRGVzdGluYXRpb25Ob2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRkRBMTVFOEMxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9EZXN0aW5hdGlvbk5vZGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBdWRpb0Rlc3RpbmF0aW9uTm9k
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUU4RjEyQjAzRUUxMDAzQTU4
M0EgLyogSlNHYWluTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0dhaW5Ob2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBMTVFOTAx
MkIwM0VFMTAwM0E1ODNBIC8qIEpTR2Fpbk5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNHYWluTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREEx
NUU5MTEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRpb0xpc3RlbmVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQXVkaW9MaXN0ZW5lci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTkyMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvTGlz
dGVuZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBdWRpb0xpc3RlbmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTkzMTJCMDNFRTEwMDNBNTgz
QSAvKiBKU0F1ZGlvTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU0F1ZGlvTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTk0
MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0F1ZGlvTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
REExNUU5NTEyQjAzRUUxMDAzQTU4M0EgLyogSlNQYW5uZXJOb2RlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGFubmVyTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUZEQTE1RTk2MTJCMDNFRTEwMDNBNTgzQSAvKiBKU1Bhbm5lck5vZGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNQYW5uZXJOb2RlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTk3MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1
ZGlvUGFyYW0uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRp
b1BhcmFtLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBMTVFOTgxMkIwM0VF
MTAwM0E1ODNBIC8qIEpTQXVkaW9QYXJhbS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU0F1ZGlvUGFyYW0uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBMTVF
OTkxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9Qcm9jZXNzaW5nRXZlbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRpb1Byb2Nlc3NpbmdFdmVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTE1RTlBMTJCMDNFRTEwMDNBNTgzQSAv
KiBKU0F1ZGlvUHJvY2Vzc2luZ0V2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJRkRBMTVFQkIxMkIwM0YwQjAwM0E1ODNBIC8qIEpTQ29udm9sdmVyTm9kZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NvbnZvbHZlck5vZGUuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUVCQzEyQjAzRjBCMDAzQTU4M0EgLyogSlND
b252b2x2ZXJOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTQ29udm9s
dmVyTm9kZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUVDNzEyQjAzRjUw
MDAzQTU4M0EgLyogSlNBbmFseXNlck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNBbmFseXNlck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGREExNUVDODEyQjAzRjUwMDAzQTU4M0EgLyogSlNBbmFseXNlck5vZGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNBbmFseXNlck5vZGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRkRBMTVFQ0IxMkIwM0Y2MTAwM0E1ODNBIC8qIEpTU2NyaXB0UHJv
Y2Vzc29yTm9kZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1Nj
cmlwdFByb2Nlc3Nvck5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREEx
NUVDQzEyQjAzRjYxMDAzQTU4M0EgLyogSlNTY3JpcHRQcm9jZXNzb3JOb2RlLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU2NyaXB0UHJvY2Vzc29yTm9kZS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUVDRjEyQjAzRjk0MDAzQTU4M0EgLyogSlNEZWxh
eU5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNEZWxheU5v
ZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREExNUVEMDEyQjAzRjk0MDAz
QTU4M0EgLyogSlNEZWxheU5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SlNEZWxheU5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBM0U5NTUxMzRB
NDlFRjAwOEQ0QjVBIC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREEzRTk1NjEzNEE0OUVGMDA4RDRC
NUEgLyogT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGREEzRTk1NzEzNEE0OUVGMDA4RDRCNUEgLyogT2ZmbGluZUF1ZGlv
RGVzdGluYXRpb25Ob2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZEQTNFOTU4MTM0QTQ5RUYwMDhENEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlv
bk5vZGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gT2ZmbGluZUF1ZGlvRGVz
dGluYXRpb25Ob2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTNFOTVEMTM0
QTQ5RkYwMDhENEI1QSAvKiBPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQuaWRsICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQTkzMjVBMTY3MDNCMkEwMDg5ODJEQyAvKiBPZmZsaW5l
QXVkaW9Db250ZXh0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE9m
ZmxpbmVBdWRpb0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREE5
MzI1QjE2NzAzQjJBMDA4OTgyREMgLyogT2ZmbGluZUF1ZGlvQ29udGV4dC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBPZmZsaW5lQXVkaW9Db250ZXh0Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUZEQTkzMjVDMTY3MDNCMkEwMDg5ODJEQyAvKiBPZmZsaW5lQXVk
aW9Db250ZXh0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBPZmZsaW5lQXVkaW9Db250ZXh0
LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRBOTMyNjQxNjcwM0JBOTAwODk4
MkRDIC8qIEpTT2ZmbGluZUF1ZGlvQ29udGV4dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBKU09mZmxpbmVBdWRpb0NvbnRleHQuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGREE5MzI2NTE2NzAzQkE5MDA4OTgyREMgLyogSlNPZmZsaW5lQXVkaW9D
b250ZXh0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTT2ZmbGluZUF1ZGlv
Q29udGV4dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREFGMTk5NjE1MTNEMTMx
MDA4REIwQzMgLyogRGlyZWN0Q29udm9sdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IERpcmVjdENvbnZvbHZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZEQUYxOTk3MTUxM0QxMzEwMDhEQjBDMyAvKiBEaXJlY3RDb252b2x2ZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGlyZWN0Q29udm9sdmVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQjA1MkREMTU2MUE0MkMwMEI1MDBENiAvKiBBdWRpb1N1
bW1pbmdKdW5jdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBB
dWRpb1N1bW1pbmdKdW5jdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZE
QjA1MkRFMTU2MUE0MkMwMEI1MDBENiAvKiBBdWRpb1N1bW1pbmdKdW5jdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1N1bW1pbmdKdW5jdGlvbi5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGREIxNzAwMzE0QTJCQUIyMDBBMkI1RDkgLyogTXVsdGlD
aGFubmVsUmVzYW1wbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE11bHRpQ2hhbm5lbFJlc2FtcGxlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZEQjE3MDA0MTRBMkJBQjIwMEEyQjVEOSAvKiBNdWx0aUNoYW5uZWxSZXNhbXBsZXIuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTXVsdGlDaGFubmVsUmVzYW1wbGVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQkQ0ODBBMTU5QkM2ODcwMDkzRUI0RiAvKiBK
U01lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU5vZGUuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGREJENDgwQjE1OUJDNjg3MDA5M0VCNEYgLyogSlNNZWRpYVN0
cmVhbUF1ZGlvU291cmNlTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBK
U01lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUZEQzU0RjAxMTM5OUIwREEwMDhEOTExNyAvKiBCaXF1YWRGaWx0ZXJOb2RlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpcXVhZEZpbHRlck5vZGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGREM1NEYwMjEzOTlCMERBMDA4RDkxMTcgLyog
QmlxdWFkRmlsdGVyTm9kZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCaXF1
YWRGaWx0ZXJOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZEQzU0RjAzMTM5
OUIwREEwMDhEOTExNyAvKiBCaXF1YWRGaWx0ZXJOb2RlLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBh
dGggPSBCaXF1YWRGaWx0ZXJOb2RlLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RkRFMkQ1NUExNTlFNjZFQjAwRENDQ0Y4IC8qIEF1ZGlvSU9DYWxsYmFjay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb0lPQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJRkRFQTYyNDAxNTIxMDJFMjAwNDc5REYwIC8qIEpTT3NjaWxsYXRvck5v
ZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNPc2NpbGxhdG9y
Tm9kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZERUE2MjQxMTUyMTAyRTIw
MDQ3OURGMCAvKiBKU09zY2lsbGF0b3JOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEpTT3NjaWxsYXRvck5vZGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
RkRFQTYyNDQxNTIxMDJGQzAwNDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUGVyaW9kaWNXYXZlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRFQTYyNDUxNTIxMDJGQzAwNDc5REYwIC8qIEpTUGVyaW9k
aWNXYXZlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUGVyaW9kaWNXYXZl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZERjA5REM2MTM5OUI2MjIwMDY4OEU1
QiAvKiBKU0JpcXVhZEZpbHRlck5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNCaXF1YWRGaWx0ZXJOb2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRkRGMDlEQzcxMzk5QjYyMjAwNjg4RTVCIC8qIEpTQmlxdWFkRmlsdGVyTm9kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0JpcXVhZEZpbHRlck5vZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRGNkJBRjYxMzRBNEM5ODAwODIyOTIwIC8qIEpT
T2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRGNkJBRjcxMzRBNEM5ODAwODIyOTIwIC8qIEpTT2ZmbGlu
ZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IEpTT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCUZERjdFOUMxMTNBQzIxREIwMEE1MUVBQyAvKiBKU0F1ZGlvQnVmZmVyQ2FsbGJhY2su
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNBdWRpb0J1ZmZlckNh
bGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkRGN0U5QzIxM0FDMjFE
QjAwQTUxRUFDIC8qIEpTQXVkaW9CdWZmZXJDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBKU0F1ZGlvQnVmZmVyQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkUwRDg0RTgxMDQ4NDM0ODAwMUExNzlFIC8qIFdlYkV2ZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUZFMEQ4NEVBMTA0ODQzNkUwMDFBMTc5RSAvKiBXZWJFdmVudC5tbSAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkV2ZW50Lm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGRTM2RkQxMTE2Qzc4MjY0MDBGODg3QzEgLyogQ2hhbmdl
VmVyc2lvbkRhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2hhbmdlVmVy
c2lvbkRhdGEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkUzNkZEMTIxNkM3ODI2
NDAwRjg4N0MxIC8qIFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkUzNkZEMTMxNkM3ODI2NDAwRjg4N0MxIC8q
IFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUZFMzZGRDE0MTZDNzgyNjQwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFRyYW5zYWN0aW9uU3RhdGUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkU0NTZGMTYxNjc3RDc0RTAwNUVEREY5
IC8qIERhdGFiYXNlTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEYXRhYmFzZU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RTQ1NkYxNzE2NzdENzRFMDA1RURERjkgLyogRGF0YWJhc2VNYW5hZ2VyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERhdGFiYXNlTWFuYWdlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRTY5MzhCNTEwNDVENjdFMDA4RUFCQjYgLyogRXZlbnRIYW5kbGVySU9T
Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRXZlbnRIYW5kbGVy
SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRTY5OTg2RjE5MjA4N0U3MDA2
OTM2QkQgLyogRmxvYXRpbmdQb2ludEVudmlyb25tZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEZsb2F0aW5nUG9pbnRFbnZpcm9ubWVudC5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZFNjk5ODcwMTkyMDg3RTcwMDY5MzZCRCAvKiBGbG9hdGlu
Z1BvaW50RW52aXJvbm1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmxv
YXRpbmdQb2ludEVudmlyb25tZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZF
NkZENDhCMEY2NzZFOTMwMDA5Mjg3MyAvKiBKU0Nvb3JkaW5hdGVzLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ29vcmRpbmF0ZXMuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlGRTZGRDQ4QzBGNjc2RTkzMDAwOTI4NzMgLyogSlNDb29yZGluYXRl
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0Nvb3JkaW5hdGVzLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZFODBEQTVGMEU5QzQ3MDMwMDBENkY3NSAvKiBK
U0dlb2xvY2F0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
R2VvbG9jYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRTgwREE2MDBF
OUM0NzAzMDAwRDZGNzUgLyogSlNHZW9sb2NhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBKU0dlb2xvY2F0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZFODBEQTYxMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb3Bvc2l0aW9uLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTR2VvcG9zaXRpb24uY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRTgwREE2MjBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9wb3Np
dGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0dlb3Bvc2l0aW9uLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZFODBEQTZEMEU5QzQ3MkYwMDBENkY3NSAv
KiBKU1Bvc2l0aW9uRXJyb3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNQb3NpdGlvbkVycm9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkU4
MERBNkUwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU1Bvc2l0aW9uRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJRkU4QTY3NDUxNkNERDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudC5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTUUxTdGF0ZW1lbnQuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRThBNjc0NjE2Q0REMTlFMDA5MzBCRjggLyog
U1FMU3RhdGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFN0YXRl
bWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRTlFODlGOTE2RTJEQzA0MDBB
OTA4RjggLyogT3JpZ2luTG9jay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBPcmlnaW5Mb2NrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkU5RTg5
RkExNkUyREMwNDAwQTkwOEY4IC8qIE9yaWdpbkxvY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gT3JpZ2luTG9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlG
RUQxM0QzOTBDRUE5MzQ2MDBEODk0NjYgLyogRWRpdG9ySU9TLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gRWRpdG9ySU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQlGRUQxM0QzQjBDRUE5MzZBMDBEODk0NjYgLyogRnJhbWVJT1MubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBGcmFtZUlPUy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkVEMTNEM0YwQ0VBOTM5NDAwRDg5NDY2IC8qIEljb25JT1Mu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJY29uSU9TLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRUQxM0Q1MDBDRUE5NDk3MDBEODk0NjYgLyog
UmVuZGVyVGhlbWVJT1MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVy
VGhlbWVJT1MuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkVFMTgxMTExNkMzMTlF
ODAwMDg0ODQ5IC8qIFNRTFRyYW5zYWN0aW9uQmFja2VuZC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTUUxUcmFuc2FjdGlvbkJhY2tlbmQuY3BwOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRUUxODExMjE2QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNh
Y3Rpb25CYWNrZW5kLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNRTFRyYW5z
YWN0aW9uQmFja2VuZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRjk0NUVDOTE2
MUY3RjM2MDA5NzFCQzggLyogUHNldWRvRWxlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBQc2V1ZG9FbGVtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRkY5NDVFQ0ExNjFGN0YzNjAwOTcxQkM4IC8qIFBzZXVkb0VsZW1lbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUHNldWRvRWxlbWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRkFDMzBGQzE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdP
YmplY3RzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRyYWlsaW5nT2JqZWN0
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRkFDMzBGRDE4NEZCMTQ1MDA4QzRG
MUUgLyogVHJhaWxpbmdPYmplY3RzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFRyYWlsaW5nT2JqZWN0cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CUZGQjY5OEM5MTgzMkYxMEIwMDE1OEEzMSAvKiBCcmVha2luZ0NvbnRleHQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnJlYWtpbmdDb250ZXh0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUZGQjY5OENBMTgzM0VDMzgwMDE1OEEzMSAvKiBMaW5lQnJlYWtlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBMaW5lQnJlYWtlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUZGQjY5OENCMTgzM0VDMzgwMDE1OEEzMSAv
KiBMaW5lQnJlYWtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBMaW5lQnJl
YWtlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRkI2OThDRDE4MzNGMTc2MDAx
NThBMzEgLyogTGluZUluZm8uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTGluZUluZm8uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRkI2OThDRTE4
MzNGMTc2MDAxNThBMzEgLyogTGluZUluZm8uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTGluZUluZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkZEQkMwNDUx
ODNEMjdCNzAwNDA3MTA5IC8qIExpbmVXaWR0aC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMaW5lV2lkdGguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkZEQkMw
NDYxODNEMjdCNzAwNDA3MTA5IC8qIExpbmVXaWR0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBMaW5lV2lkdGguY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlGRkVGQUIyOTE4MzgwREEwMDA1MTQ1MzQgLyogTGluZUxheW91dFN0YXRlLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExpbmVMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlGRkVGQUIyRDE4M0JDQjZGMDA1MTQ1MzQgLyogTGluZUlubGlu
ZUhlYWRlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTGluZUlubGluZUhl
YWRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKy8qIEVuZCBQQlhGaWxlUmVmZXJl
bmNlIHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlv
biAqLworCQk0MTdEQTZDRTEzNzM0RTAyMDA3QzU3RkIgLyogRnJhbWV3b3JrcyAqLyA9IHsKKwkJ
CWlzYSA9IFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0
NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCUExNzYzRjQxMUUyMDU4NkUwMDFENThERSAvKiBD
Rk5ldHdvcmsuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJCQkJQUE1RjNCOTExNkNDNUJF
QjAwNDU1RUIwIC8qIENvcmVGb3VuZGF0aW9uLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAor
CQkJCUExNUU2QkYxMUUyMTJBNkEwMDgwQUYzNCAvKiBGb3VuZGF0aW9uLmZyYW1ld29yayBpbiBG
cmFtZXdvcmtzICovLAorCQkJCTQxMjMwOTEzMTM4QzQyRkYwMEJDQ0ZDQSAvKiBKYXZhU2NyaXB0
Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCQk0MTIzMDgxQjEzOEM0Mjk3MDBC
Q0NGQ0EgLyogV2ViQ29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCSk7CisJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJfTsKKwkJOTNGMTlCMTIw
ODI0NUU1OTAwMUU5QUJDIC8qIEZyYW1ld29ya3MgKi8gPSB7CisJCQlpc2EgPSBQQlhGcmFtZXdv
cmtzQnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxl
cyA9ICgKKwkJCQlGRDJEQkYxMjEyQjA0OEEzMDBFRDk4QzYgLyogQWNjZWxlcmF0ZS5mcmFtZXdv
cmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCQlGRDJEQkYxMzEyQjA0OEEzMDBFRDk4QzYgLyogQXVk
aW9Ub29sYm94LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAorCQkJCTFBQjMzREE1MTI1NTFF
MzIwMDI0NDU3QSAvKiBJT0tpdC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKKwkJCQk5M0Yx
OUIxNjA4MjQ1RTU5MDAxRTlBQkMgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrIGluIEZyYW1l
d29ya3MgKi8sCisJCQkJQzBFMkYzMjcyNDEyQkYyOTAwOUM3M0VDIC8qIGxpYkFjY2Vzc2liaWxp
dHkudGJkIGluIEZyYW1ld29ya3MgKi8sCisJCQkJMUMwMjJGMDAyMkNGRUQ2ODAwNkRGMDFCIC8q
IGxpYmNvbXByZXNzaW9uLnRiZCBpbiBGcmFtZXdvcmtzICovLAorCQkJCTkzRjE5QjE3MDgyNDVF
NTkwMDFFOUFCQyAvKiBsaWJpY3Vjb3JlLmR5bGliIGluIEZyYW1ld29ya3MgKi8sCisJCQkJMUNG
QUUzMjMwQTZENkEzRjAwMzI1OTNEIC8qIGxpYm9iamMuZHlsaWIgaW4gRnJhbWV3b3JrcyAqLywK
KwkJCQkxQzA5RDA1OTFFMzFDNkE5MDA3MjVGMTggLyogbGliUEFMLmEgaW4gRnJhbWV3b3JrcyAq
LywKKwkJCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFt
ZXdvcmtzICovLAorCQkJCTM3OTkxOUIyMTIwMERFNTAwMEVBMDQxQyAvKiBsaWJ6LmR5bGliIGlu
IEZyYW1ld29ya3MgKi8sCisJCQkJQTg4QUQ1MkYwOTUyNEI5MjAwMUREMTk2IC8qIFF1YXJ0ekNv
cmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCisJCQkJNUZFMUQyOTIxNzhGRDFGMzAwMUFB
M0MzIC8qIFNlY3VyaXR5LmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAorCQkJKTsKKwkJCXJ1
bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OworCQlFMUJBNjcwRTE3
NDJCREUwMDBDMjAyNTEgLyogRnJhbWV3b3JrcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEZyYW1ld29y
a3NCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVz
ID0gKAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwor
CQl9OworLyogRW5kIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8KKworLyogQmVn
aW4gUEJYR3JvdXAgc2VjdGlvbiAqLworCQkwMEI5MzE4MDEzQkE4NjdGMDAzNUE5NDggLyogcGFy
c2VyICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk5N0I4
RkZDRjE2QUU3RjkyMDAzODM4OEQgLyogQ2hhcmFjdGVyUmVmZXJlbmNlUGFyc2VySW5saW5lcy5o
ICovLAorCQkJCTAwQzYwRTNFMTNENzZEN0UwMDkyQTI3NSAvKiBNYXJrdXBUb2tlbml6ZXJJbmxp
bmVzLmggKi8sCisJCQkJMDBCOTMxODExM0JBODY3RjAwMzVBOTQ4IC8qIFhNTERvY3VtZW50UGFy
c2VyLmNwcCAqLywKKwkJCQkwMEI5MzE4MjEzQkE4NjdGMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQ
YXJzZXIuaCAqLywKKwkJCQkwMEI5MzE4MzEzQkE4NjdGMDAzNUE5NDggLyogWE1MRG9jdW1lbnRQ
YXJzZXJMaWJ4bWwyLmNwcCAqLywKKwkJCQkwMEI5MzE4NTEzQkE4NjdGMDAzNUE5NDggLyogWE1M
RG9jdW1lbnRQYXJzZXJTY29wZS5jcHAgKi8sCisJCQkJMDBCOTMxODYxM0JBODY3RjAwMzVBOTQ4
IC8qIFhNTERvY3VtZW50UGFyc2VyU2NvcGUuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gcGFyc2Vy
OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMDM0NzY4REZGRjM4QTUwNDEx
REI5QzhCIC8qIFByb2R1Y3RzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQlFMUJBNjcxNjE3NDJCREUwMDBDMjAyNTEgLyogbGliV2ViQ29yZVRlc3RTaGlt
LmR5bGliICovLAorCQkJCTQxN0RBNkQwMTM3MzRFMDIwMDdDNTdGQiAvKiBsaWJXZWJDb3JlVGVz
dFN1cHBvcnQuZHlsaWIgKi8sCisJCQkJOTNGMTlCMUEwODI0NUU1QTAwMUU5QUJDIC8qIFdlYkNv
cmUuZnJhbWV3b3JrICovLAorCQkJKTsKKwkJCW5hbWUgPSBQcm9kdWN0czsKKwkJCXNvdXJjZVRy
ZWUgPSBTT1VSQ0VfUk9PVDsKKwkJCXRhYldpZHRoID0gNDsKKwkJCXVzZXNUYWJzID0gMDsKKwkJ
fTsKKwkJMDcyMjFCNDYxN0NFQzMyNzAwODQ4RTUxIC8qIG1lZGlhc3RyZWFtICovID0geworCQkJ
aXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MTc2MTJBQTFFM0E5OTIzMDBD
M0Q4MUQgLyogbGlid2VicnRjICovLAorCQkJCTQxQzdFMTA1MUU2QTU0MzYwMDI3QjRERSAvKiBD
YW52YXNDYXB0dXJlTWVkaWFTdHJlYW1UcmFjay5jcHAgKi8sCisJCQkJNDFDN0UxMDYxRTZBNTQz
NjAwMjdCNERFIC8qIENhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmggKi8sCisJCQkJNDFD
N0UxMDgxRTZBQTM3QzAwMjdCNERFIC8qIENhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmlk
bCAqLywKKwkJCQk0MTEyMjNDMzI2MDM1NjdDMDBCMEEwQjYgLyogRGV0YWNoZWRSVENEYXRhQ2hh
bm5lbC5oICovLAorCQkJCTkzQTgwNjExMUUwM0I1MUMwMDhBMUYyNiAvKiBEb3VibGVSYW5nZS5o
ICovLAorCQkJCTkzQTgwNjEyMUUwM0I1MUMwMDhBMUYyNiAvKiBEb3VibGVSYW5nZS5pZGwgKi8s
CisJCQkJOTNBODA2MTMxRTAzQjUxQzAwOEExRjI2IC8qIExvbmdSYW5nZS5oICovLAorCQkJCTkz
QTgwNjE0MUUwM0I1MUMwMDhBMUYyNiAvKiBMb25nUmFuZ2UuaWRsICovLAorCQkJCTE1OUFFODJB
MUIzQTQwMkYwMDM3NDc4QiAvKiBNZWRpYURldmljZUluZm8uY3BwICovLAorCQkJCTE1MTQ1QjhG
MUIzQTFCM0UwMDY2MkJGNyAvKiBNZWRpYURldmljZUluZm8uaCAqLywKKwkJCQkxNTE0NUI5MTFC
M0ExRDRDMDA2NjJCRjcgLyogTWVkaWFEZXZpY2VJbmZvLmlkbCAqLywKKwkJCQk1RUE3MjVDRDFB
Q0FCQ0Q5MDBFQUQxN0IgLyogTWVkaWFEZXZpY2VzLmNwcCAqLywKKwkJCQk1RUE3MjVDRTFBQ0FC
Q0Q5MDBFQUQxN0IgLyogTWVkaWFEZXZpY2VzLmggKi8sCisJCQkJNUVBNzI1Q0YxQUNBQkNEOTAw
RUFEMTdCIC8qIE1lZGlhRGV2aWNlcy5pZGwgKi8sCisJCQkJMDcyMjFCNEMxN0NFQzMyNzAwODQ4
RTUxIC8qIE1lZGlhU3RyZWFtLmNwcCAqLywKKwkJCQkwNzIyMUI0RDE3Q0VDMzI3MDA4NDhFNTEg
LyogTWVkaWFTdHJlYW0uaCAqLywKKwkJCQkwNzIyMUI0RTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVk
aWFTdHJlYW0uaWRsICovLAorCQkJCTA3MjIxQjU0MTdDRUMzMjcwMDg0OEU1MSAvKiBNZWRpYVN0
cmVhbVRyYWNrLmNwcCAqLywKKwkJCQkwNzIyMUI1NTE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFT
dHJlYW1UcmFjay5oICovLAorCQkJCTA3MjIxQjU2MTdDRUMzMjcwMDg0OEU1MSAvKiBNZWRpYVN0
cmVhbVRyYWNrLmlkbCAqLywKKwkJCQkwNzIyMUI1NzE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFT
dHJlYW1UcmFja0V2ZW50LmNwcCAqLywKKwkJCQkwNzIyMUI1ODE3Q0VDMzI3MDA4NDhFNTEgLyog
TWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi8sCisJCQkJMDcyMjFCNTkxN0NFQzMyNzAwODQ4RTUx
IC8qIE1lZGlhU3RyZWFtVHJhY2tFdmVudC5pZGwgKi8sCisJCQkJOTMyQ0MwRjYxREZGREExRjAw
NEMwRjlGIC8qIE1lZGlhVHJhY2tDb25zdHJhaW50cy5jcHAgKi8sCisJCQkJOTMyQ0MwQjYxREZG
RDE1ODAwNEMwRjlGIC8qIE1lZGlhVHJhY2tDb25zdHJhaW50cy5oICovLAorCQkJCTkzMkNDMEYw
MURGRkQ4RDQwMDRDMEY5RiAvKiBNZWRpYVRyYWNrQ29uc3RyYWludHMuaWRsICovLAorCQkJCTA3
QzFDMEUwMUJGQjYwMDEwMEJEMjI1NiAvKiBNZWRpYVRyYWNrU3VwcG9ydGVkQ29uc3RyYWludHMu
aCAqLywKKwkJCQkwN0MxQzBFMTFCRkI2MDAxMDBCRDIyNTYgLyogTWVkaWFUcmFja1N1cHBvcnRl
ZENvbnN0cmFpbnRzLmlkbCAqLywKKwkJCQk1RUE3MjVDQzFBQ0FCQ0I1MDBFQUQxN0IgLyogTmF2
aWdhdG9yK01lZGlhRGV2aWNlcy5pZGwgKi8sCisJCQkJNUVBNzI1Q0ExQUNBQkNCNTAwRUFEMTdC
IC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5jcHAgKi8sCisJCQkJNUVBNzI1Q0IxQUNBQkNCNTAw
RUFEMTdCIC8qIE5hdmlnYXRvck1lZGlhRGV2aWNlcy5oICovLAorCQkJCTA3MDRBNDA1MUQ2REU5
RjEwMDg2RENEQiAvKiBPdmVyY29uc3RyYWluZWRFcnJvci5oICovLAorCQkJCTA3MDRBNDAzMUQ2
REU5RjEwMDg2RENEQiAvKiBPdmVyY29uc3RyYWluZWRFcnJvci5pZGwgKi8sCisJCQkJRTNCRjE5
RTMyMkFGMkZBNTAwOUM5OTI2IC8qIE92ZXJjb25zdHJhaW5lZEVycm9yRXZlbnQuY3BwICovLAor
CQkJCTA3MkE3MDNFMUQ2RThGNjIwMERGMEFGQyAvKiBPdmVyY29uc3RyYWluZWRFcnJvckV2ZW50
LmggKi8sCisJCQkJMDcyQTcwM0YxRDZFOEY2MjAwREYwQUZDIC8qIE92ZXJjb25zdHJhaW5lZEVy
cm9yRXZlbnQuaWRsICovLAorCQkJCTQxRTQwODM4MURDQjc0NzkwMEVGQ0UxOSAvKiBQZWVyQ29u
bmVjdGlvbkJhY2tlbmQuY3BwICovLAorCQkJCTVFMkM0MzREMUJDRUUyRTUwMDAxRTJCQyAvKiBQ
ZWVyQ29ubmVjdGlvbkJhY2tlbmQuaCAqLywKKwkJCQkzMTZEQ0IyQjFFNzhGM0E5MDAxQjVGODcg
LyogUlRDQW5zd2VyT3B0aW9ucy5oICovLAorCQkJCTMxNkRDQjJDMUU3OEYzQTkwMDFCNUY4NyAv
KiBSVENBbnN3ZXJPcHRpb25zLmlkbCAqLywKKwkJCQk0MTIwOUU5NDIxNkVBNjlBMDBBNzNBMTIg
LyogUlRDQ2VydGlmaWNhdGUuY3BwICovLAorCQkJCTQxMjA5RTkzMjE2RDVDNzkwMEE3M0ExMiAv
KiBSVENDZXJ0aWZpY2F0ZS5oICovLAorCQkJCTQxMjA5RTkxMjE2RDU5M0MwMEE3M0ExMiAvKiBS
VENDZXJ0aWZpY2F0ZS5pZGwgKi8sCisJCQkJMDdBQjk5NjUxOERBM0MwMTAwMTg3NzFFIC8qIFJU
Q0NvbmZpZ3VyYXRpb24uaCAqLywKKwkJCQkwN0FCOTk2NjE4REEzQzAxMDAxODc3MUUgLyogUlRD
Q29uZmlndXJhdGlvbi5pZGwgKi8sCisJCQkJNDE4MjA1NDgxRTUzRUFBRDAwRDYyMjA3IC8qIFJU
Q0NvbnRyb2xsZXIuY3BwICovLAorCQkJCTQxODIwNTQ1MUU1M0M4Q0QwMEQ2MjIwNyAvKiBSVEND
b250cm9sbGVyLmggKi8sCisJCQkJMDcyMjFCNjMxN0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RhdGFD
aGFubmVsLmNwcCAqLywKKwkJCQkwNzIyMUI2NDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNo
YW5uZWwuaCAqLywKKwkJCQkwNzIyMUI2NTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5u
ZWwuaWRsICovLAorCQkJCTA3MjIxQjY2MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5l
bEV2ZW50LmNwcCAqLywKKwkJCQkwNzIyMUI2NzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDRGF0YUNo
YW5uZWxFdmVudC5oICovLAorCQkJCTA3MjIxQjY4MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENEYXRh
Q2hhbm5lbEV2ZW50LmlkbCAqLywKKwkJCQk0MTZFREJGNzI2MDBENzYzMDAwOTI2NzUgLyogUlRD
RGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyLmNwcCAqLywKKwkJCQk0MTZFREJGNDI2MDBENjc4MDAw
OTI2NzUgLyogUlRDRGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyLmggKi8sCisJCQkJNDE2RURCRUQy
NUZGQjIyNDAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlLmNwcCAqLywKKwkJ
CQk0MTZFREJFRjI1RkZCMjI0MDAwOTI2NzUgLyogUlRDRGF0YUNoYW5uZWxSZW1vdGVTb3VyY2Uu
aCAqLywKKwkJCQk0MUZDQjc1RDIxNDg2NkZFMDAzOEFEQzYgLyogUlRDRGVncmFkYXRpb25QcmVm
ZXJlbmNlLmggKi8sCisJCQkJNDFGQ0I3NTUyMTQ4NjVDRjAwMzhBREM2IC8qIFJUQ0RlZ3JhZGF0
aW9uUHJlZmVyZW5jZS5pZGwgKi8sCisJCQkJNDE4OEQ1NUYyNkM1NTExQTAwNDg1OEM4IC8qIFJU
Q0R0bHNUcmFuc3BvcnQuY3BwICovLAorCQkJCTQxODhENTVFMjZDNTUxMUEwMDQ4NThDOCAvKiBS
VENEdGxzVHJhbnNwb3J0LmggKi8sCisJCQkJNDE4OEQ1NUQyNkM1NTExQTAwNDg1OEM4IC8qIFJU
Q0R0bHNUcmFuc3BvcnQuaWRsICovLAorCQkJCTQxODhENTVBMjZDNTRENkYwMDQ4NThDOCAvKiBS
VENEdGxzVHJhbnNwb3J0QmFja2VuZC5oICovLAorCQkJCTQxODhENTYyMjZDNTUxQjEwMDQ4NThD
OCAvKiBSVENEdGxzVHJhbnNwb3J0U3RhdGUuaCAqLywKKwkJCQk0MTg4RDU2MDI2QzU1MTY2MDA0
ODU4QzggLyogUlRDRHRsc1RyYW5zcG9ydFN0YXRlLmlkbCAqLywKKwkJCQkwNzIyMUI2OTE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDRFRNRlNlbmRlci5jcHAgKi8sCisJCQkJMDcyMjFCNkExN0NFQzMy
NzAwODQ4RTUxIC8qIFJUQ0RUTUZTZW5kZXIuaCAqLywKKwkJCQkwNzIyMUI2QjE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDRFRNRlNlbmRlci5pZGwgKi8sCisJCQkJMDcyMjFCNkMxN0NFQzMyNzAwODQ4
RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwICovLAorCQkJCTA3MjIxQjZEMTdDRUMz
MjcwMDg0OEU1MSAvKiBSVENEVE1GVG9uZUNoYW5nZUV2ZW50LmggKi8sCisJCQkJMDcyMjFCNkUx
N0NFQzMyNzAwODQ4RTUxIC8qIFJUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaWRsICovLAorCQkJCTQx
RkNCNzVFMjE0ODY2RkYwMDM4QURDNiAvKiBSVENEdHhTdGF0dXMuaCAqLywKKwkJCQk0MUZDQjc1
NzIxNDg2NUQxMDAzOEFEQzYgLyogUlRDRHR4U3RhdHVzLmlkbCAqLywKKwkJCQk0MTQxODlGRTI1
NjQxOEUwMDAzNjM0MTcgLyogUlRDRW5jb2RlZEF1ZGlvRnJhbWUuY3BwICovLAorCQkJCTQxNDE4
OUZCMjU2NDE3NTcwMDM2MzQxNyAvKiBSVENFbmNvZGVkQXVkaW9GcmFtZS5oICovLAorCQkJCTQx
NDE4OUY5MjU2NDE2NTAwMDM2MzQxNyAvKiBSVENFbmNvZGVkQXVkaW9GcmFtZS5pZGwgKi8sCisJ
CQkJNDE0MThBMDUyNTY2NjBBRjAwMzYzNDE3IC8qIFJUQ0VuY29kZWRGcmFtZS5jcHAgKi8sCisJ
CQkJNDE0MThBMDYyNTY2NjBCMDAwMzYzNDE3IC8qIFJUQ0VuY29kZWRGcmFtZS5oICovLAorCQkJ
CTQxNDE4OUZGMjU2NDE4RTcwMDM2MzQxNyAvKiBSVENFbmNvZGVkVmlkZW9GcmFtZS5jcHAgKi8s
CisJCQkJNDE0MTg5RkQyNTY0MTc2NjAwMzYzNDE3IC8qIFJUQ0VuY29kZWRWaWRlb0ZyYW1lLmgg
Ki8sCisJCQkJNDE0MTg5RkEyNTY0MTY1MTAwMzYzNDE3IC8qIFJUQ0VuY29kZWRWaWRlb0ZyYW1l
LmlkbCAqLywKKwkJCQk0MUI3QzA0QTI2RTY5MTcwMDBEMzZDMDcgLyogUlRDRXJyb3IuY3BwICov
LAorCQkJCTQxQjdDMDRCMjZFNjkxNzEwMEQzNkMwNyAvKiBSVENFcnJvci5oICovLAorCQkJCTQx
QjdDMDQ5MjZFNjkxNkYwMEQzNkMwNyAvKiBSVENFcnJvci5pZGwgKi8sCisJCQkJNDFBQjk3OTIy
NkU3NUEyRDAwN0MwRkU2IC8qIFJUQ0Vycm9yRGV0YWlsVHlwZS5oICovLAorCQkJCTQxQUI5Nzk0
MjZFNzVBMkQwMDdDMEZFNiAvKiBSVENFcnJvckRldGFpbFR5cGUuaWRsICovLAorCQkJCTQxQjdD
MDQ1MjZFNjkwQkMwMEQzNkMwNyAvKiBSVENFcnJvckV2ZW50LmNwcCAqLywKKwkJCQk0MUI3QzA0
NzI2RTY5MEJEMDBEMzZDMDcgLyogUlRDRXJyb3JFdmVudC5oICovLAorCQkJCTQxQjdDMDQ4MjZF
NjkwQkUwMEQzNkMwNyAvKiBSVENFcnJvckV2ZW50LmlkbCAqLywKKwkJCQkwNzIyMUI3MTE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRlLmNwcCAqLywKKwkJCQkwNzIyMUI3MjE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDSWNlQ2FuZGlkYXRlLmggKi8sCisJCQkJMDcyMjFCNzMxN0NFQzMy
NzAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZS5pZGwgKi8sCisJCQkJNDEwRjU2NTkyNEZDRjk1
NzAwQTJFNTBDIC8qIFJUQ0ljZUNhbmRpZGF0ZUluaXQuaCAqLywKKwkJCQk0MTBGNTY1NzI0RkNG
N0M3MDBBMkU1MEMgLyogUlRDSWNlQ2FuZGlkYXRlSW5pdC5pZGwgKi8sCisJCQkJNDE1OERDQkUy
NEZGQ0Y2MTAwQjlEQTQxIC8qIFJUQ0ljZUNhbmRpZGF0ZVR5cGUuaCAqLywKKwkJCQk0MTU4RENC
QTI0RkZDREMzMDBCOURBNDEgLyogUlRDSWNlQ2FuZGlkYXRlVHlwZS5pZGwgKi8sCisJCQkJNDE1
OERDQkQyNEZGQ0Y2MTAwQjlEQTQxIC8qIFJUQ0ljZUNvbXBvbmVudC5oICovLAorCQkJCTQxNThE
Q0I2MjRGRkNEMUIwMEI5REE0MSAvKiBSVENJY2VDb21wb25lbnQuaWRsICovLAorCQkJCTMxNkRD
QjNCMUU3OTBFMkMwMDFCNUY4NyAvKiBSVENJY2VDb25uZWN0aW9uU3RhdGUuaWRsICovLAorCQkJ
CTMxNkRDQjM1MUU3OTBFMUIwMDFCNUY4NyAvKiBSVENJY2VHYXRoZXJpbmdTdGF0ZS5pZGwgKi8s
CisJCQkJNDE1OERDQkIyNEZGQ0Y2MDAwQjlEQTQxIC8qIFJUQ0ljZVByb3RvY29sLmggKi8sCisJ
CQkJNDE1OERDQjgyNEZGQ0RDMzAwQjlEQTQxIC8qIFJUQ0ljZVByb3RvY29sLmlkbCAqLywKKwkJ
CQkwN0FCOTk2NzE4REEzQzAxMDAxODc3MUUgLyogUlRDSWNlU2VydmVyLmggKi8sCisJCQkJMDdB
Qjk5NjgxOERBM0MwMTAwMTg3NzFFIC8qIFJUQ0ljZVNlcnZlci5pZGwgKi8sCisJCQkJNDE1OERD
QkMyNEZGQ0Y2MDAwQjlEQTQxIC8qIFJUQ0ljZVRjcENhbmRpZGF0ZVR5cGUuaCAqLywKKwkJCQk0
MTU4RENCOTI0RkZDREMzMDBCOURBNDEgLyogUlRDSWNlVGNwQ2FuZGlkYXRlVHlwZS5pZGwgKi8s
CisJCQkJMzE2RENCODgxRTdBNjk5NjAwMUI1Rjg3IC8qIFJUQ0ljZVRyYW5zcG9ydC5jcHAgKi8s
CisJCQkJNUU2NjUzMDkxREE0MzdCRjAwRkREODRDIC8qIFJUQ0ljZVRyYW5zcG9ydC5oICovLAor
CQkJCTMxNkRDQjg5MUU3QTY5OTYwMDFCNUY4NyAvKiBSVENJY2VUcmFuc3BvcnQuaWRsICovLAor
CQkJCTQxNDUxNkUwMjZDQzA0MjEwMEFBQUJFMCAvKiBSVENJY2VUcmFuc3BvcnRCYWNrZW5kLmgg
Ki8sCisJCQkJMzE2RENCOEUxRTdBNkM3OTAwMUI1Rjg3IC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRl
LmlkbCAqLywKKwkJCQk0MTBCQ0Y1MzI2RjBDRDhCMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9u
RGVzY3JpcHRpb25Jbml0LmggKi8sCisJCQkJNDEwQkNGNTUyNkYwQ0Q4QzAwNDBCMTI0IC8qIFJU
Q0xvY2FsU2Vzc2lvbkRlc2NyaXB0aW9uSW5pdC5pZGwgKi8sCisJCQkJNDFDMTRCQzQyNkRFNkRF
ODAwNjg1QkY1IC8qIFJUQ05ldHdvcmtNYW5hZ2VyLmggKi8sCisJCQkJMDczNzk0REMxOUVFMkM1
MjAwRTVBMDQ1IC8qIFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5oICovLAorCQkJCTMxNkRDQjEyMUU3
OEJFNDMwMDFCNUY4NyAvKiBSVENPZmZlckFuc3dlck9wdGlvbnMuaWRsICovLAorCQkJCTMxNkRD
QjI4MUU3OEYzOTUwMDFCNUY4NyAvKiBSVENPZmZlck9wdGlvbnMuaCAqLywKKwkJCQkzMTZEQ0Iy
OTFFNzhGMzk1MDAxQjVGODcgLyogUlRDT2ZmZXJPcHRpb25zLmlkbCAqLywKKwkJCQkwNzIyMUI3
NzE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb24uY3BwICovLAorCQkJCTA3MjIx
Qjc4MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbi5oICovLAorCQkJCTA3MjIx
Qjc5MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbi5pZGwgKi8sCisJCQkJNDE5
RTZFQzYyNTY2RDIxMzAwMkI1MDEwIC8qIFJUQ1BlZXJDb25uZWN0aW9uSWNlRXJyb3JFdmVudC5j
cHAgKi8sCisJCQkJNDE5RTZFQzcyNTY2RDIxNDAwMkI1MDEwIC8qIFJUQ1BlZXJDb25uZWN0aW9u
SWNlRXJyb3JFdmVudC5oICovLAorCQkJCTQxOUU2RUM0MjU2NkQyMTEwMDJCNTAxMCAvKiBSVENQ
ZWVyQ29ubmVjdGlvbkljZUVycm9yRXZlbnQuaWRsICovLAorCQkJCTA3MjIxQjc0MTdDRUMzMjcw
MDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50LmNwcCAqLywKKwkJCQkwNzIyMUI3
NTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VFdmVudC5oICovLAorCQkJ
CTA3MjIxQjc2MTdDRUMzMjcwMDg0OEU1MSAvKiBSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50Lmlk
bCAqLywKKwkJCQk0MUE0OEE5QzFFODMxMjkxMDBEMkFDMkQgLyogUlRDUGVlckNvbm5lY3Rpb25T
dGF0ZS5pZGwgKi8sCisJCQkJNDFFNTkzRkQyMTQ4NjVBOTAwRDNDQjYxIC8qIFJUQ1ByaW9yaXR5
VHlwZS5pZGwgKi8sCisJCQkJNDExNEZFMkYyNUJFQkQxODAwOUQ5RjIwIC8qIFJUQ1J0Y3BQYXJh
bWV0ZXJzLmggKi8sCisJCQkJNDExNEZFMzEyNUJFQkQxODAwOUQ5RjIwIC8qIFJUQ1J0Y3BQYXJh
bWV0ZXJzLmlkbCAqLywKKwkJCQk0MTM2OUU1NTIxOEM3NkUzMDA3OTJFMjkgLyogUlRDUnRwQ2Fw
YWJpbGl0aWVzLmlkbCAqLywKKwkJCQk0MUUwQTdEOTIzQkI1OTAxMDA1NjEwNjAgLyogUlRDUnRw
Q29kZWNDYXBhYmlsaXR5LmlkbCAqLywKKwkJCQk0MUZDQjc1RjIxNDg2NkZGMDAzOEFEQzYgLyog
UlRDUnRwQ29kZWNQYXJhbWV0ZXJzLmggKi8sCisJCQkJNDFGQ0I3NTkyMTQ4NjVEMzAwMzhBREM2
IC8qIFJUQ1J0cENvZGVjUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDE0QUQzRkYyMTQ5OEQzMDAw
NTIxNjc2IC8qIFJUQ1J0cENvZGluZ1BhcmFtZXRlcnMuaCAqLywKKwkJCQk0MTRBRDQwMjIxNDk4
RDMyMDA1MjE2NzYgLyogUlRDUnRwQ29kaW5nUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDE1RTFC
QjMyMTUwMTA4MDAwMjJEQTk2IC8qIFJUQ1J0cENvbnRyaWJ1dGluZ1NvdXJjZS5oICovLAorCQkJ
CTQxNUUxQkI1MjE1MDEwODEwMDIyREE5NiAvKiBSVENSdHBDb250cmlidXRpbmdTb3VyY2UuaWRs
ICovLAorCQkJCTQxNEFENDAwMjE0OThEMzEwMDUyMTY3NiAvKiBSVENSdHBEZWNvZGluZ1BhcmFt
ZXRlcnMuaCAqLywKKwkJCQk0MTRBRDQwMTIxNDk4RDMxMDA1MjE2NzYgLyogUlRDUnRwRGVjb2Rp
bmdQYXJhbWV0ZXJzLmlkbCAqLywKKwkJCQk0MUZDQjc2MTIxNDg2NzAwMDAzOEFEQzYgLyogUlRD
UnRwRW5jb2RpbmdQYXJhbWV0ZXJzLmggKi8sCisJCQkJNDFFNTkzRkYyMTQ4NjVBQTAwRDNDQjYx
IC8qIFJUQ1J0cEVuY29kaW5nUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDFGQ0I3NUIyMTQ4NjZG
RDAwMzhBREM2IC8qIFJUQ1J0cEZlY1BhcmFtZXRlcnMuaCAqLywKKwkJCQk0MUU1OTQwMTIxNDg2
NUFCMDBEM0NCNjEgLyogUlRDUnRwRmVjUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDFGQ0I3NUEy
MTQ4NjZGRDAwMzhBREM2IC8qIFJUQ1J0cEhlYWRlckV4dGVuc2lvblBhcmFtZXRlcnMuaCAqLywK
KwkJCQk0MUU1OTQwMDIxNDg2NUFBMDBEM0NCNjEgLyogUlRDUnRwSGVhZGVyRXh0ZW5zaW9uUGFy
YW1ldGVycy5pZGwgKi8sCisJCQkJNDFBNDhBQTgxRTg0QUYxRDAwRDJBQzJEIC8qIFJUQ1J0cFBh
cmFtZXRlcnMuaCAqLywKKwkJCQk0MUE0OEFBNzFFODRBRUVDMDBEMkFDMkQgLyogUlRDUnRwUGFy
YW1ldGVycy5pZGwgKi8sCisJCQkJNDEzQzhCMjQyNTUyRUVBOTAwRTY1MDU1IC8qIFJUQ1J0cFJl
Y2VpdmVyK1RyYW5zZm9ybS5pZGwgKi8sCisJCQkJNUUyQzQzNTYxQkNFRTMwRDAwMDFFMkJDIC8q
IFJUQ1J0cFJlY2VpdmVyLmNwcCAqLywKKwkJCQk1RTJDNDM1NzFCQ0VFMzBEMDAwMUUyQkMgLyog
UlRDUnRwUmVjZWl2ZXIuaCAqLywKKwkJCQk1RTJDNDM1ODFCQ0VFMzBEMDAwMUUyQkMgLyogUlRD
UnRwUmVjZWl2ZXIuaWRsICovLAorCQkJCTQxRDFBMDQ4MjEzRURERUIwMDYzRkI2QiAvKiBSVENS
dHBSZWNlaXZlckJhY2tlbmQuaCAqLywKKwkJCQk0MTNDOEIzMDI1NTJGMjdDMDBFNjUwNTUgLyog
UlRDUnRwUmVjZWl2ZXJXaXRoVHJhbnNmb3JtLmggKi8sCisJCQkJNDFGQ0I3NjAyMTQ4NjcwMDAw
MzhBREM2IC8qIFJUQ1J0cFJ0eFBhcmFtZXRlcnMuaCAqLywKKwkJCQk0MUZDQjc1ODIxNDg2NUQy
MDAzOEFEQzYgLyogUlRDUnRwUnR4UGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDE0MTg5RjQyNTYy
RTMyQzAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlwdFRyYW5zZm9ybS5jcHAgKi8sCisJCQkJNDE0MTg5
RjIyNTYyRTMyQjAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlwdFRyYW5zZm9ybS5oICovLAorCQkJCTQx
NDE4OUYwMjU2MkRGNTUwMDM2MzQxNyAvKiBSVENSdHBTY3JpcHRUcmFuc2Zvcm0uaWRsICovLAor
CQkJCTQxNDE4OUYzMjU2MkUzMkMwMDM2MzQxNyAvKiBSVENSdHBTY3JpcHRUcmFuc2Zvcm1lci5j
cHAgKi8sCisJCQkJNDE0MTg5RjUyNTYyRTMyRDAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlwdFRyYW5z
Zm9ybWVyLmggKi8sCisJCQkJNDE0MTg5RjEyNTYyREY1NjAwMzYzNDE3IC8qIFJUQ1J0cFNjcmlw
dFRyYW5zZm9ybWVyLmlkbCAqLywKKwkJCQk0MTQxODlFRjI1NjJERjBDMDAzNjM0MTcgLyogUlRD
UnRwU2NyaXB0VHJhbnNmb3JtUHJvdmlkZXIuaWRsICovLAorCQkJCTQxM0M4QjI2MjU1MkVFQTkw
MEU2NTA1NSAvKiBSVENSdHBTZW5kZXIrVHJhbnNmb3JtLmlkbCAqLywKKwkJCQk1RTJDNDM1OTFC
Q0VFMzBEMDAwMUUyQkMgLyogUlRDUnRwU2VuZGVyLmNwcCAqLywKKwkJCQk1RTJDNDM1QTFCQ0VF
MzBEMDAwMUUyQkMgLyogUlRDUnRwU2VuZGVyLmggKi8sCisJCQkJNUUyQzQzNUIxQkNFRTMwRDAw
MDFFMkJDIC8qIFJUQ1J0cFNlbmRlci5pZGwgKi8sCisJCQkJNDFEMUEwNDYyMTNFRERFQjAwNjNG
QjZCIC8qIFJUQ1J0cFNlbmRlckJhY2tlbmQuaCAqLywKKwkJCQk0MTNDOEIyRTI1NTJGMjdCMDBF
NjUwNTUgLyogUlRDUnRwU2VuZGVyV2l0aFRyYW5zZm9ybS5oICovLAorCQkJCTQxNEFEM0ZDMjE0
OTg0MjAwMDUyMTY3NiAvKiBSVENSdHBTZW5kUGFyYW1ldGVycy5oICovLAorCQkJCTQxNEFEM0ZF
MjE0OTg0MjAwMDUyMTY3NiAvKiBSVENSdHBTZW5kUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJNDE4
MUM2NDUyNTVCNEMyODAwQUVCMEZGIC8qIFJUQ1J0cFNGcmFtZVRyYW5zZm9ybS5jcHAgKi8sCisJ
CQkJNDE4MUM2NDQyNTVCNEMyNzAwQUVCMEZGIC8qIFJUQ1J0cFNGcmFtZVRyYW5zZm9ybS5oICov
LAorCQkJCTQxODFDNjQzMjU1QjRDMjcwMEFFQjBGRiAvKiBSVENSdHBTRnJhbWVUcmFuc2Zvcm0u
aWRsICovLAorCQkJCTQxODFDNjQxMjU1QjRDMjYwMEFFQjBGRiAvKiBSVENSdHBTRnJhbWVUcmFu
c2Zvcm1lci5jcHAgKi8sCisJCQkJNDE4MUM2NDIyNTVCNEMyNjAwQUVCMEZGIC8qIFJUQ1J0cFNG
cmFtZVRyYW5zZm9ybWVyLmggKi8sCisJCQkJNDE4MUM2M0YyNTVCNEMyNTAwQUVCMEZGIC8qIFJU
Q1J0cFNGcmFtZVRyYW5zZm9ybWVyQ29jb2EuY3BwICovLAorCQkJCTQxQjZBQTUyMjZCOTk1Rjkw
MEFBREZBNyAvKiBSVENSdHBTRnJhbWVUcmFuc2Zvcm1FcnJvckV2ZW50LmNwcCAqLywKKwkJCQk0
MUI2QUE0RjI2Qjk5NUY4MDBBQURGQTcgLyogUlRDUnRwU0ZyYW1lVHJhbnNmb3JtRXJyb3JFdmVu
dC5oICovLAorCQkJCTQxQjZBQTUxMjZCOTk1RjgwMEFBREZBNyAvKiBSVENSdHBTRnJhbWVUcmFu
c2Zvcm1FcnJvckV2ZW50LmlkbCAqLywKKwkJCQk0MTVFMUJCNjIxNTAxNTJBMDAyMkRBOTYgLyog
UlRDUnRwU3luY2hyb25pemF0aW9uU291cmNlLmggKi8sCisJCQkJNDE1RTFCQjcyMTUwMTUzMDAw
MjJEQTk2IC8qIFJUQ1J0cFN5bmNocm9uaXphdGlvblNvdXJjZS5pZGwgKi8sCisJCQkJNUU1RTJC
MTAxQ0ZDM0U0QjAwMEMwRDg1IC8qIFJUQ1J0cFRyYW5zY2VpdmVyLmNwcCAqLywKKwkJCQk1RTVF
MkIxMTFDRkMzRTRCMDAwQzBEODUgLyogUlRDUnRwVHJhbnNjZWl2ZXIuaCAqLywKKwkJCQk1RTVF
MkIxMjFDRkMzRTRCMDAwQzBEODUgLyogUlRDUnRwVHJhbnNjZWl2ZXIuaWRsICovLAorCQkJCTQx
ODZCRDQ2MjE0MDcyQjYwMDAxODI2RiAvKiBSVENSdHBUcmFuc2NlaXZlckJhY2tlbmQuaCAqLywK
KwkJCQkzMTZEQ0IxNzFFNzhDMzMwMDAxQjVGODcgLyogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rp
b24uaWRsICovLAorCQkJCTQxODFDNUM2MjU1NTczNTEwMEFFQjBGRiAvKiBSVENSdHBUcmFuc2Zv
cm0uY3BwICovLAorCQkJCTQxM0M4QjJGMjU1MkYyN0IwMEU2NTA1NSAvKiBSVENSdHBUcmFuc2Zv
cm0uaCAqLywKKwkJCQk0MTgxQzVDQTI1NTU4MkUzMDBBRUIwRkYgLyogUlRDUnRwVHJhbnNmb3Jt
YWJsZUZyYW1lLmggKi8sCisJCQkJNDE4MUM1QzgyNTU1NzNERjAwQUVCMEZGIC8qIFJUQ1J0cFRy
YW5zZm9ybUJhY2tlbmQuaCAqLywKKwkJCQk0MTQ1MTZFODI2Q0U1MjUzMDBBQUFCRTAgLyogUlRD
U2N0cFRyYW5zcG9ydC5jcHAgKi8sCisJCQkJNDE0NTE2RUEyNkNFNTI1NDAwQUFBQkUwIC8qIFJU
Q1NjdHBUcmFuc3BvcnQuaCAqLywKKwkJCQk0MTQ1MTZFOTI2Q0U1MjU0MDBBQUFCRTAgLyogUlRD
U2N0cFRyYW5zcG9ydC5pZGwgKi8sCisJCQkJNDE0NTE2RUIyNkNFNTI2NjAwQUFBQkUwIC8qIFJU
Q1NjdHBUcmFuc3BvcnRCYWNrZW5kLmggKi8sCisJCQkJNDE0NTE2RUUyNkNFNTU2QzAwQUFBQkUw
IC8qIFJUQ1NjdHBUcmFuc3BvcnRTdGF0ZS5oICovLAorCQkJCTQxNDUxNkVEMjZDRTU1NkIwMEFB
QUJFMCAvKiBSVENTY3RwVHJhbnNwb3J0U3RhdGUuaWRsICovLAorCQkJCTQxMEY1NjU4MjRGQ0Y4
NTQwMEEyRTUwQyAvKiBSVENTZHBUeXBlLmlkbCAqLywKKwkJCQkwNzIyMUI3QTE3Q0VDMzI3MDA4
NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmNwcCAqLywKKwkJCQkwNzIyMUI3QjE3Q0VD
MzI3MDA4NDhFNTEgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmggKi8sCisJCQkJMDcyMjFCN0Mx
N0NFQzMyNzAwODQ4RTUxIC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbi5pZGwgKi8sCisJCQkJNDEw
RjU2NUEyNEZDRjlFNjAwQTJFNTBDIC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkluaXQuaCAqLywK
KwkJCQk0MTBGNTY1NTI0RkNGNzA1MDBBMkU1MEMgLyogUlRDU2Vzc2lvbkRlc2NyaXB0aW9uSW5p
dC5pZGwgKi8sCisJCQkJMzE2RENCNDExRTc5MEUzQzAwMUI1Rjg3IC8qIFJUQ1NpZ25hbGluZ1N0
YXRlLmlkbCAqLywKKwkJCQkwNzIyMUI4NDE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDU3RhdHNSZXBv
cnQuaCAqLywKKwkJCQkwNzIyMUI4NTE3Q0VDMzI3MDA4NDhFNTEgLyogUlRDU3RhdHNSZXBvcnQu
aWRsICovLAorCQkJCTVFMkM0MzY0MUJDRUUzNzIwMDAxRTJCQyAvKiBSVENUcmFja0V2ZW50LmNw
cCAqLywKKwkJCQk1RTJDNDM2NTFCQ0VFMzcyMDAwMUUyQkMgLyogUlRDVHJhY2tFdmVudC5oICov
LAorCQkJCTVFMkM0MzY2MUJDRUUzNzIwMDAxRTJCQyAvKiBSVENUcmFja0V2ZW50LmlkbCAqLywK
KwkJCQk0MUJDRTg3NjI1RjdBNjdBMDA0NkMyRTUgLyogUlRDVHJhbnNmb3JtRXZlbnQuY3BwICov
LAorCQkJCTQxQkNFODc3MjVGN0E2N0EwMDQ2QzJFNSAvKiBSVENUcmFuc2Zvcm1FdmVudC5oICov
LAorCQkJCTQxQkNFODc1MjVGN0E2NzkwMDQ2QzJFNSAvKiBSVENUcmFuc2Zvcm1FdmVudC5pZGwg
Ki8sCisJCQkJNDEyMDlFMjYyNTdBMkZCQjAwMTIwQUNBIC8qIFNGcmFtZVV0aWxzLmNwcCAqLywK
KwkJCQk0MTIwOUUyNDI1N0EyRkJCMDAxMjBBQ0EgLyogU0ZyYW1lVXRpbHMuaCAqLywKKwkJCQk0
MUU2N0E3RjI1RDE2ODQ2MDA3QjBBNEMgLyogU1RVTk1lc3NhZ2VQYXJzaW5nLmNwcCAqLywKKwkJ
CQk0MUU2N0E4MTI1RDE2ODQ3MDA3QjBBNEMgLyogU1RVTk1lc3NhZ2VQYXJzaW5nLmggKi8sCisJ
CQkJMDcyMjFCOEQxN0NFQzMyNzAwODQ4RTUxIC8qIFVzZXJNZWRpYUNsaWVudC5oICovLAorCQkJ
CTA3MjIxQjhFMTdDRUMzMjcwMDg0OEU1MSAvKiBVc2VyTWVkaWFDb250cm9sbGVyLmNwcCAqLywK
KwkJCQkwNzIyMUI4RjE3Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhQ29udHJvbGxlci5oICov
LAorCQkJCTA3MjIxQjkwMTdDRUMzMjcwMDg0OEU1MSAvKiBVc2VyTWVkaWFSZXF1ZXN0LmNwcCAq
LywKKwkJCQkwNzIyMUI5MTE3Q0VDMzI3MDA4NDhFNTEgLyogVXNlck1lZGlhUmVxdWVzdC5oICov
LAorCQkJKTsKKwkJCXBhdGggPSBtZWRpYXN0cmVhbTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTA3MjIxQjkyMTdDRjBBRDQwMDg0OEU1MSAvKiBtZWRpYXN0cmVhbSAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNDFDM0I4OUEyNjQ5
QjE4RTAwNEVENERFIC8qIGNvY29hICovLAorCQkJCUNEQzY3NTFGMUVBRUE5OTYwMDcyN0M4NCAv
KiBpb3MgKi8sCisJCQkJNDE1NzQ3NDIxRTM4Njk4MDAwRTkxNEQ4IC8qIGxpYndlYnJ0YyAqLywK
KwkJCQkwNzI5QjE0RDE3Q0ZDQ0EwMDA0RjFENjAgLyogbWFjICovLAorCQkJCTQxNkEwNjk1MjND
Q0FBOUUwMDM0NzEwOSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlci5jcHAgKi8sCisJ
CQkJNDE2QTA2OTYyM0NDQUE5RjAwMzQ3MTA5IC8qIEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRl
cmVyLmggKi8sCisJCQkJNDE2QTA2OTQyM0NDQUE5RTAwMzQ3MTA5IC8qIEF1ZGlvVHJhY2tQcml2
YXRlTWVkaWFTdHJlYW0uY3BwICovLAorCQkJCTA3RDZBNEY2MUJGMjMwN0QwMDE3NDE0NiAvKiBB
dWRpb1RyYWNrUHJpdmF0ZU1lZGlhU3RyZWFtLmggKi8sCisJCQkJMDdCNzExNkExRDg5OUU2MzAw
OUYwRkZCIC8qIENhcHR1cmVEZXZpY2UuaCAqLywKKwkJCQkwN0I3MTE2QjFEODk5RTYzMDA5RjBG
RkIgLyogQ2FwdHVyZURldmljZU1hbmFnZXIuY3BwICovLAorCQkJCTA3QjcxMTZDMUQ4OTlFNjMw
MDlGMEZGQiAvKiBDYXB0dXJlRGV2aWNlTWFuYWdlci5oICovLAorCQkJCTVFQkI4OTMwMUM3Nzc3
RTEwMEM2NUQ0MSAvKiBJY2VDYW5kaWRhdGUuaCAqLywKKwkJCQk0MUMxNEJDODI2REY3OUQ2MDA2
ODVCRjUgLyogTUROU1JlZ2lzdGVyRXJyb3IuaCAqLywKKwkJCQkxQkU1QkZDMTFENTE1NzE1MDAx
NjY2RDkgLyogTWVkaWFDb25zdHJhaW50cy5jcHAgKi8sCisJCQkJMDcyMjFCOTkxN0NGMEFENDAw
ODQ4RTUxIC8qIE1lZGlhQ29uc3RyYWludHMuaCAqLywKKwkJCQk0MUIyOEIxMzFGODUwMUE0MDBG
QjUyQUMgLyogTWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24uY3BwICovLAorCQkJCTQxQjI4QjEy
MUY4NTAxQTMwMEZCNTJBQyAvKiBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5oICovLAorCQkJ
CTVFQkI4OTJGMUM3Nzc3RDAwMEM2NUQ0MSAvKiBNZWRpYVBheWxvYWQuaCAqLywKKwkJCQkwNzBG
NTQ5NzE3RjEyRjZCMDAxNjlFMDQgLyogTWVkaWFTdHJlYW1Db25zdHJhaW50c1ZhbGlkYXRpb25D
bGllbnQuaCAqLywKKwkJCQkwNzExNTg4RjE3REY2MzM3MDBFREZFMkIgLyogTWVkaWFTdHJlYW1Q
cml2YXRlLmNwcCAqLywKKwkJCQkwNzIyMUI5RDE3Q0YwQUQ0MDA4NDhFNTEgLyogTWVkaWFTdHJl
YW1Qcml2YXRlLmggKi8sCisJCQkJMDc4RTNDQkUxRkUxOUYzMDAwNDgzQzFEIC8qIE1lZGlhU3Ry
ZWFtUmVxdWVzdC5oICovLAorCQkJCTA3RkZERTY2MTgxQUVENDIwMDcyRDQwOSAvKiBNZWRpYVN0
cmVhbVRyYWNrUHJpdmF0ZS5jcHAgKi8sCisJCQkJMDdGRkRFNjcxODFBRUQ0MjAwNzJENDA5IC8q
IE1lZGlhU3RyZWFtVHJhY2tQcml2YXRlLmggKi8sCisJCQkJNUVCQjg5MzgxQzc3QkRBNDAwQzY1
RDQxIC8qIFBlZXJNZWRpYURlc2NyaXB0aW9uLmggKi8sCisJCQkJNDExMDNBQUExRTM5NzkwQTAw
NzY5RjAzIC8qIFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZS5jcHAgKi8sCisJCQkJNDExMDNB
QTkxRTM5NzkwQTAwNzY5RjAzIC8qIFJlYWx0aW1lSW5jb21pbmdBdWRpb1NvdXJjZS5oICovLAor
CQkJCTVDREQ4MzM5MUU0MzI0QkIwMDYyMUU5MiAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3Vy
Y2UuY3BwICovLAorCQkJCTVDREQ4MzNBMUU0MzI0QkIwMDYyMUU5MiAvKiBSZWFsdGltZUluY29t
aW5nVmlkZW9Tb3VyY2UuaCAqLywKKwkJCQk0QTRGNjU2QjFBQTk5N0YxMDBFMzhDREQgLyogUmVh
bHRpbWVNZWRpYVNvdXJjZS5jcHAgKi8sCisJCQkJNEE0RjY1NkMxQUE5OTdGMTAwRTM4Q0REIC8q
IFJlYWx0aW1lTWVkaWFTb3VyY2UuaCAqLywKKwkJCQk0QTRGNjU2RDFBQTk5N0YxMDBFMzhDREQg
LyogUmVhbHRpbWVNZWRpYVNvdXJjZUNhcGFiaWxpdGllcy5oICovLAorCQkJCTRBMEZGQTlGMUFB
RjVFQTIwMDYyODAzQiAvKiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcCAqLywKKwkJCQk0
QTBGRkFBMDFBQUY1RUEyMDA2MjgwM0IgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oICov
LAorCQkJCTA3NTRBNUVCMjE1RUFERjMwMDJEM0E5OSAvKiBSZWFsdGltZU1lZGlhU291cmNlRmFj
dG9yeS5jcHAgKi8sCisJCQkJMDc1NEE1RTgyMTVFQTNCNzAwMkQzQTk5IC8qIFJlYWx0aW1lTWVk
aWFTb3VyY2VGYWN0b3J5LmggKi8sCisJCQkJNDFCODc3NjAyM0RFMTA0MjAwMzYzOEI4IC8qIFJl
YWx0aW1lTWVkaWFTb3VyY2VJZGVudGlmaWVyLmggKi8sCisJCQkJNEE0RjY1NkUxQUE5OTdGMTAw
RTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5jcHAgKi8sCisJCQkJNEE0RjY1
NkYxQUE5OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5oICovLAor
CQkJCTJFQzQxREUyMUMwNDEwQTMwMEQyOTRGRSAvKiBSZWFsdGltZU1lZGlhU291cmNlU3VwcG9y
dGVkQ29uc3RyYWludHMuY3BwICovLAorCQkJCTA3QzFDMEU0MUJGQjYwRUQwMEJEMjI1NiAvKiBS
ZWFsdGltZU1lZGlhU291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMuaCAqLywKKwkJCQk0MTEwM0FB
NzFFMzk3OTBBMDA3NjlGMDMgLyogUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlLmNwcCAqLywK
KwkJCQk0MTEwM0FBODFFMzk3OTBBMDA3NjlGMDMgLyogUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291
cmNlLmggKi8sCisJCQkJNUNERDgzM0IxRTQzMjRCQjAwNjIxRTkyIC8qIFJlYWx0aW1lT3V0Z29p
bmdWaWRlb1NvdXJjZS5jcHAgKi8sCisJCQkJNUNERDgzM0MxRTQzMjRCQjAwNjIxRTkyIC8qIFJl
YWx0aW1lT3V0Z29pbmdWaWRlb1NvdXJjZS5oICovLAorCQkJCTA3Mjg4MENFMjAxMEVFRDYwMDcx
QjI1NSAvKiBSZWFsdGltZVZpZGVvQ2FwdHVyZVNvdXJjZS5jcHAgKi8sCisJCQkJMDcyODgwRDAy
MDEwRUVENzAwNzFCMjU1IC8qIFJlYWx0aW1lVmlkZW9DYXB0dXJlU291cmNlLmggKi8sCisJCQkJ
NDFCRjIwNDIyMkI5NDcxNzAwMDRGODEyIC8qIFJlYWx0aW1lVmlkZW9Tb3VyY2UuY3BwICovLAor
CQkJCTQxQkYyMDQwMjJCOTQ3MTYwMDA0RjgxMiAvKiBSZWFsdGltZVZpZGVvU291cmNlLmggKi8s
CisJCQkJMzEzNTkxMEMxRTdERENCNjAwRjMwNjMwIC8qIFJUQ0J1bmRsZVBvbGljeS5oICovLAor
CQkJCTA3MjIxQkEyMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENEYXRhQ2hhbm5lbEhhbmRsZXIuaCAq
LywKKwkJCQkwNzIyMUJBMzE3Q0YwQUQ0MDA4NDhFNTEgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVy
Q2xpZW50LmggKi8sCisJCQkJNDE2RURCRkYyNjAwRTc4NzAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFu
bmVsSWRlbnRpZmllci5oICovLAorCQkJCTQxNkVEQzAxMjYwMEU3QjAwMDA5MjY3NSAvKiBSVENE
YXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uLmggKi8sCisJCQkJNDE2RURDMDMyNjAw
RTgwRjAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlQ29ubmVjdGlvbi5oICov
LAorCQkJCTMxNkRFNzAxMUU4M0FFMUQwMDg0QzI2MSAvKiBSVENEYXRhQ2hhbm5lbFN0YXRlLmgg
Ki8sCisJCQkJNDFGMjM1NDQyMkY1NTAzMzAwQjRGQ0RCIC8qIFJUQ0RUTUZTZW5kZXJCYWNrZW5k
LmggKi8sCisJCQkJMDcyMjFCQTYxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ0ljZUNhbmRpZGF0ZURl
c2NyaXB0b3IuY3BwICovLAorCQkJCTA3MjIxQkE3MTdDRjBBRDQwMDg0OEU1MSAvKiBSVENJY2VD
YW5kaWRhdGVEZXNjcmlwdG9yLmggKi8sCisJCQkJMzEzNTkxMDAxRTdEREM2MDAwRjMwNjMwIC8q
IFJUQ0ljZUNvbm5lY3Rpb25TdGF0ZS5oICovLAorCQkJCTMxMzU5MTAxMUU3RERDNjAwMEYzMDYz
MCAvKiBSVENJY2VHYXRoZXJpbmdTdGF0ZS5oICovLAorCQkJCTMxMzU5MTAyMUU3RERDNjAwMEYz
MDYzMCAvKiBSVENJY2VUcmFuc3BvcnRQb2xpY3kuaCAqLywKKwkJCQkzMTM1OTEwMzFFN0REQzYw
MDBGMzA2MzAgLyogUlRDSWNlVHJhbnNwb3J0U3RhdGUuaCAqLywKKwkJCQkwNzIyMUJBQTE3Q0Yw
QUQ0MDA4NDhFNTEgLyogUlRDUGVlckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50LmggKi8sCisJCQkJ
NDFBNDhBOUQxRTgzMTJFQjAwRDJBQzJEIC8qIFJUQ1BlZXJDb25uZWN0aW9uU3RhdGUuaCAqLywK
KwkJCQk0MTJCQTVGRTIxOEM2NTE4MDAzNjU0NzQgLyogUlRDUE11eFBvbGljeS5oICovLAorCQkJ
CTQxM0NDMTFDMjVFN0Q5OEQwMEQ1OUM0QiAvKiBSVENQcmlvcml0eVR5cGUuaCAqLywKKwkJCQk0
MTJERTRCNjIxOTI4NUJGMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggKi8sCisJCQkJ
NDFFMEE3REMyM0JCNjNEQjAwNTYxMDYwIC8qIFJUQ1J0cENvZGVjQ2FwYWJpbGl0eS5oICovLAor
CQkJCTMxRUI1NEREMUU3REM3NDQwMEMxNjIzQiAvKiBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlv
bi5oICovLAorCQkJCTMxMzU5MTA0MUU3RERDNjAwMEYzMDYzMCAvKiBSVENTZHBUeXBlLmggKi8s
CisJCQkJMDcyMjFCQUIxN0NGMEFENDAwODQ4RTUxIC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRl
c2NyaXB0b3IuY3BwICovLAorCQkJCTA3MjIxQkFDMTdDRjBBRDQwMDg0OEU1MSAvKiBSVENTZXNz
aW9uRGVzY3JpcHRpb25EZXNjcmlwdG9yLmggKi8sCisJCQkJMDcyMjFCQUQxN0NGMEFENDAwODQ4
RTUxIC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvblJlcXVlc3QuaCAqLywKKwkJCQkzMTM1OTEwNTFF
N0REQzYwMDBGMzA2MzAgLyogUlRDU2lnbmFsaW5nU3RhdGUuaCAqLywKKwkJCQkwNzIyMUJCMDE3
Q0YwQUQ0MDA4NDhFNTEgLyogUlRDVm9pZFJlcXVlc3QuaCAqLywKKwkJCQkwNzU3QjEzQzIxNEFF
Nzk3MDA3OTRCMEQgLyogVmlkZW9QcmVzZXQuaCAqLywKKwkJCQkwNzBFODFEMDFCRjI3NjU2MDAx
RkRBNDggLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oICovLAorCQkJCTQxQjJBNjI1
MUVGMUJGNjAwMDJCOUQ3QSAvKiBXZWJBdWRpb1NvdXJjZVByb3ZpZGVyLmggKi8sCisJCQkpOwor
CQkJcGF0aCA9IG1lZGlhc3RyZWFtOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJMDcyOUIxNEQxN0NGQ0NBMDAwNEYxRDYwIC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMDcwMzYzREExODFBMUNEQzAwQzA3NEE1IC8qIEFW
Q2FwdHVyZURldmljZU1hbmFnZXIuaCAqLywKKwkJCQkwNzAzNjNEQjE4MUExQ0RDMDBDMDc0QTUg
LyogQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5tbSAqLywKKwkJCQkwNzAzNjNERTE4MUExQ0RDMDBD
MDc0QTUgLyogQVZWaWRlb0NhcHR1cmVTb3VyY2UuaCAqLywKKwkJCQkwNzAzNjNERjE4MUExQ0RD
MDBDMDc0QTUgLyogQVZWaWRlb0NhcHR1cmVTb3VyY2UubW0gKi8sCisJCQkJNDE3N0Y1MUMyMzgy
NTQ0MDAwQzA0NDg2IC8qIEJhc2VBdWRpb1NoYXJlZFVuaXQuY3BwICovLAorCQkJCTQxNzdGNTFF
MjM4MjU0NUUwMEMwNDQ4NiAvKiBCYXNlQXVkaW9TaGFyZWRVbml0LmggKi8sCisJCQkJNDE2Rjgw
N0EyNDUwOUYzMjAwQjY4RjAyIC8qIENHRGlzcGxheVN0cmVhbUNhcHR1cmVTb3VyY2UuY3BwICov
LAorCQkJCTQxNkY4MDdDMjQ1MDlGMzMwMEI2OEYwMiAvKiBDR0Rpc3BsYXlTdHJlYW1DYXB0dXJl
U291cmNlLmggKi8sCisJCQkJMDcxNzc2NUUyNkMzMDNCNzAwQTYzMjk5IC8qIENHRGlzcGxheVN0
cmVhbVNjcmVlbkNhcHR1cmVTb3VyY2UuaCAqLywKKwkJCQkwNzE3NzY1RjI2QzMwM0I3MDBBNjMy
OTkgLyogQ0dEaXNwbGF5U3RyZWFtU2NyZWVuQ2FwdHVyZVNvdXJjZS5tbSAqLywKKwkJCQk0MTZG
ODA3OTI0NTA5RjMyMDBCNjhGMDIgLyogQ0dXaW5kb3dDYXB0dXJlU291cmNlLmggKi8sCisJCQkJ
NDE2RjgwN0IyNDUwOUYzMzAwQjY4RjAyIC8qIENHV2luZG93Q2FwdHVyZVNvdXJjZS5tbSAqLywK
KwkJCQkzRjgwMjAzMTFFOUUzODFEMDBERUM2MUQgLyogQ29yZUF1ZGlvQ2FwdHVyZURldmljZS5j
cHAgKi8sCisJCQkJM0Y4MDIwMzIxRTlFMzgxRDAwREVDNjFEIC8qIENvcmVBdWRpb0NhcHR1cmVE
ZXZpY2UuaCAqLywKKwkJCQkzRjgwMjAzMzFFOUUzODFEMDBERUM2MUQgLyogQ29yZUF1ZGlvQ2Fw
dHVyZURldmljZU1hbmFnZXIuY3BwICovLAorCQkJCTNGODAyMDM0MUU5RTM4MUQwMERFQzYxRCAv
KiBDb3JlQXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oICovLAorCQkJCTNGM0JCNTgyMUU3MDlF
RTQwMEM3MDFGMiAvKiBDb3JlQXVkaW9DYXB0dXJlU291cmNlLmNwcCAqLywKKwkJCQkzRjNCQjU4
MzFFNzA5RUU0MDBDNzAxRjIgLyogQ29yZUF1ZGlvQ2FwdHVyZVNvdXJjZS5oICovLAorCQkJCTA3
QTZEODQ4MUZFQjcwMEIwMDY0NDFERSAvKiBEaXNwbGF5Q2FwdHVyZU1hbmFnZXJDb2NvYS5jcHAg
Ki8sCisJCQkJMDdBNkQ4NDkxRkVCNzAwQzAwNjQ0MURFIC8qIERpc3BsYXlDYXB0dXJlTWFuYWdl
ckNvY29hLmggKi8sCisJCQkJMDdBNkQ4NDcxRkVCNzAwQjAwNjQ0MURFIC8qIERpc3BsYXlDYXB0
dXJlU291cmNlTWFjLmNwcCAqLywKKwkJCQkwN0E2RDg0QTFGRUI3MDBEMDA2NDQxREUgLyogRGlz
cGxheUNhcHR1cmVTb3VyY2VNYWMuaCAqLywKKwkJCQk0MTc0RTkyMDI1MzVEQ0REMDBGRTQyMDIg
LyogTWVkaWFTdHJlYW1UcmFja0F1ZGlvU291cmNlUHJvdmlkZXJDb2NvYS5jcHAgKi8sCisJCQkJ
NDE3NEU5MUUyNTM1RENENjAwRkU0MjAyIC8qIE1lZGlhU3RyZWFtVHJhY2tBdWRpb1NvdXJjZVBy
b3ZpZGVyQ29jb2EuaCAqLywKKwkJCQkwNzQ0RUNFQjFFMEM0QUU1MDAwRDA5NDQgLyogTW9ja0F1
ZGlvU2hhcmVkVW5pdC5oICovLAorCQkJCTA3NDRFQ0VDMUUwQzRBRTUwMDBEMDk0NCAvKiBNb2Nr
QXVkaW9TaGFyZWRVbml0Lm1tICovLAorCQkJCTA3RUU3NkVEMUJFQTYxOTgwMEY4OTEzMyAvKiBN
b2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1hYy5oICovLAorCQkJCTA3RUU3NkVFMUJFQTYxOTgwMEY4
OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZU1hYy5tbSAqLywKKwkJCQk0MTEwM0FBQTFF
Mzk3OTBBMDA3NjlGMTQgLyogUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlQ29jb2EuY3BwICov
LAorCQkJCTQxMTAzQUE5MUUzOTc5MEEwMDc2OUYxNCAvKiBSZWFsdGltZUluY29taW5nQXVkaW9T
b3VyY2VDb2NvYS5oICovLAorCQkJCTQxQ0I4NDAwMjVDQUI3QjAwMDEwRTJCMSAvKiBSZWFsdGlt
ZUluY29taW5nVmlkZW9Tb3VyY2VDb2NvYS5oICovLAorCQkJCTVDREQ4MzM5MUU0MzI0QkIwMDYy
MUU4MyAvKiBSZWFsdGltZUluY29taW5nVmlkZW9Tb3VyY2VDb2NvYS5tbSAqLywKKwkJCQk0QTBG
RkFBMzFBQUY1RUY2MDA2MjgwM0IgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5jcHAg
Ki8sCisJCQkJNDE2Q0U0QTQyMjlERjEyRTAwQThBNjg2IC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWMubW0gKi8sCisJCQkJNDExMDNBQTcxRTM5NzkwQTAwNzY5RjE0IC8qIFJlYWx0aW1l
T3V0Z29pbmdBdWRpb1NvdXJjZUNvY29hLmNwcCAqLywKKwkJCQk0MTEwM0FBODFFMzk3OTBBMDA3
NjlGMTQgLyogUmVhbHRpbWVPdXRnb2luZ0F1ZGlvU291cmNlQ29jb2EuaCAqLywKKwkJCQk1Q0RE
ODMzQjFFNDMyNEJCMDA2MjFCODMgLyogUmVhbHRpbWVPdXRnb2luZ1ZpZGVvU291cmNlQ29jb2Eu
Y3BwICovLAorCQkJCTVDREQ4MzNDMUU0MzI0QkIwMDYyMUI4MyAvKiBSZWFsdGltZU91dGdvaW5n
VmlkZW9Tb3VyY2VDb2NvYS5oICovLAorCQkJCTQxOTI0MjQ3MjEyN0I3Q0MwMDYzNEZDRiAvKiBS
ZWFsdGltZU91dGdvaW5nVmlkZW9Tb3VyY2VDb2NvYS5tbSAqLywKKwkJCQk0MUQxOTM4RjIxNTJD
NTYxMDA2RjE0Q0EgLyogUmVhbHRpbWVWaWRlb1V0aWxpdGllcy5oICovLAorCQkJCTQxNTg2NDlG
MjNCRjdCOTMwMEEwQTYxRSAvKiBSZWFsdGltZVZpZGVvVXRpbGl0aWVzLm1tICovLAorCQkJCTA3
RDYzNzNFMUJCMEIxMTMwMDI1NkNFOSAvKiBXZWJBdWRpb1NvdXJjZVByb3ZpZGVyQ29jb2EuaCAq
LywKKwkJCQkwN0Q2MzczRjFCQjBCMTEzMDAyNTZDRTkgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRl
ckNvY29hLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQkwNzJBRTFERTE4M0MwNTEzMDAwQTU5ODggLyogcGx1Z2lucyAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMDcyQUUxREYxODND
MDc0MTAwMEE1OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50LmggKi8sCisJCQkJMDcyQUUxRTExODND
MDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzcyAqLywKKwkJCQkw
NzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAq
LywKKwkJCQkwNzJBRTFFMzE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaWRsICovLAorCQkJCTA3MkFFMUU0MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5qcyAqLywKKwkJCQkwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyog
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQubW0gKi8sCisJCQkJN0E1NTE1RjQxOTE4MzBBMzAw
OTY4N0QyIC8qIFlvdVR1YmVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJN0E1NTE1RjMx
OTE4MzBBMzAwOTY4N0QyIC8qIFlvdVR1YmVQbHVnaW5SZXBsYWNlbWVudC5oICovLAorCQkJKTsK
KwkJCXBhdGggPSBwbHVnaW5zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJ
MDc2RjBEMDgxMkI4MTkyNzAwQzI2QUE0IC8qIGF2Zm91bmRhdGlvbiAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJREY5QUZENkYxM0ZDMzFCMDAwMTVGRUI3
IC8qIG9iamMgKi8sCisJCQkJQ0Q4QTdCQkExOTc3MzVGRTAwQ0JENjQzIC8qIEF1ZGlvU291cmNl
UHJvdmlkZXJBVkZPYmpDLmggKi8sCisJCQkJQ0Q4QTdCQjkxOTc3MzVGRTAwQ0JENjQzIC8qIEF1
ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tICovLAorCQkJCUNERTNBODUyMTdGNUZDRTYwMEM1
QkUyMCAvKiBBdWRpb1RyYWNrUHJpdmF0ZUFWRi5oICovLAorCQkJCUNEMzM2RjYwMTdGOUY2NDcw
MERERENEMCAvKiBBVlRyYWNrUHJpdmF0ZUFWRk9iakNJbXBsLmggKi8sCisJCQkJQ0QzMzZGNUYx
N0Y5RjY0NzAwREREQ0QwIC8qIEFWVHJhY2tQcml2YXRlQVZGT2JqQ0ltcGwubW0gKi8sCisJCQkJ
Q0RCNzA0NTkxRjc0NjVBMTAwMzkyM0RGIC8qIENETUZhaXJQbGF5U3RyZWFtaW5nLmNwcCAqLywK
KwkJCQlDREI3MDQ1ODFGNzQ2NUExMDAzOTIzREYgLyogQ0RNRmFpclBsYXlTdHJlYW1pbmcuaCAq
LywKKwkJCQlDRDMxODYyMTE5OUYxRTJBMDAzMEEwRjcgLyogQ0RNUHJpdmF0ZU1lZGlhU291cmNl
QVZGT2JqQy5oICovLAorCQkJCUNEMzE4NjIwMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2YXRl
TWVkaWFTb3VyY2VBVkZPYmpDLm1tICovLAorCQkJCTA3RTlFMTJGMThGNjJCMzcwMDExQTNBNCAv
KiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuY3BwICovLAorCQkJCTA3RTlFMTJE
MThGNUUyNzYwMDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuaCAq
LywKKwkJCQkwN0I0NDJENDE2NkM3MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0
ZUFWRi5jcHAgKi8sCisJCQkJMDdCNDQyRDUxNjZDNzBCMDAwNTU2Q0FEIC8qIEluYmFuZFRleHRU
cmFja1ByaXZhdGVBVkYuaCAqLywKKwkJCQlDRDcyMEI0NzIyNjgyQzdFMDAwNDdGREUgLyogSVNP
RmFpclBsYXlTdHJlYW1pbmdQc3NoQm94LmNwcCAqLywKKwkJCQlDRDcyMEI0OTIyNjgyQzdGMDAw
NDdGREUgLyogSVNPRmFpclBsYXlTdHJlYW1pbmdQc3NoQm94LmggKi8sCisJCQkJMDcxRTQ5NkYx
QUQ1QUI1RTAwOEE1MEI0IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDb2NvYS5oICovLAorCQkJCTA3
MUU0OTZEMUFENUFBMEQwMDhBNTBCNCAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29jb2EubW0gKi8s
CisJCQkJMDc2RjBEMDkxMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbi5jcHAgKi8sCisJCQkJMDc2RjBEMEExMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICovLAorCQkJCUNEQkVBRUFCMTlEOTJCNkMwMEJFQkE4
OCAvKiBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5oICovLAorCQkJCUNEQkVBRUFBMTlEOTJC
NkMwMEJFQkE4OCAvKiBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5tbSAqLywKKwkJCQk0MTAy
NEZDODIzQ0YyNTRGMDBGREY5OEUgLyogU2FtcGxlQnVmZmVyRGlzcGxheUxheWVyLmNwcCAqLywK
KwkJCQk0MTQ1OThCRTIzQzhBQUI4MDAyQjlDQzggLyogU2FtcGxlQnVmZmVyRGlzcGxheUxheWVy
LmggKi8sCisJCQkJQ0QzMzZGNjMxN0ZBMEE0RDAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRl
QVZGLmggKi8sCisJCQkJMDcwOUQ3OTAxQUU1NTU3RTAwNEU0MkY4IC8qIFdlYk1lZGlhU2Vzc2lv
bk1hbmFnZXJNYWMuY3BwICovLAorCQkJCTA3MDlENzkxMUFFNTU1N0UwMDRFNDJGOCAvKiBXZWJN
ZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGF2Zm91bmRhdGlv
bjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTA3Q0ZEOTkzMTdEMDE0MDUw
MDFDNEZGQyAvKiBNZWRpYVN0cmVhbSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJMDcyNzdFNDAxN0QwMThDQzAwMTU1MzRFIC8qIEpTQ2FudmFzQ2FwdHVy
ZU1lZGlhU3RyZWFtVHJhY2suY3BwICovLAorCQkJCTA3Mjc3RTQxMTdEMDE4Q0MwMDE1NTM0RSAv
KiBKU0NhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmggKi8sCisJCQkJOTNBODA2MTkxRTAz
QjU4NTAwOEExRjI2IC8qIEpTRG91YmxlUmFuZ2UuY3BwICovLAorCQkJCTkzQTgwNjFBMUUwM0I1
ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggKi8sCisJCQkJOTNBODA2MUIxRTAzQjU4NTAw
OEExRjI2IC8qIEpTTG9uZ1JhbmdlLmNwcCAqLywKKwkJCQk5M0E4MDYxQzFFMDNCNTg1MDA4QTFG
MjYgLyogSlNMb25nUmFuZ2UuaCAqLywKKwkJCQkxNTdDQzI2MTFCN0MxQ0E0MDBEOEQwNzUgLyog
SlNNZWRpYURldmljZUluZm8uY3BwICovLAorCQkJCTE1N0NDMjYyMUI3QzFDQTQwMEQ4RDA3NSAv
KiBKU01lZGlhRGV2aWNlSW5mby5oICovLAorCQkJCTE1NzM5QkI4MUI0MjAxMjIwMEQyNThDMSAv
KiBKU01lZGlhRGV2aWNlcy5jcHAgKi8sCisJCQkJMTU3MzlCQjkxQjQyMDEyMjAwRDI1OEMxIC8q
IEpTTWVkaWFEZXZpY2VzLmggKi8sCisJCQkJMDcyNzdFNDAxN0QwMThDQzAwMTU1MzREIC8qIEpT
TWVkaWFTdHJlYW0uY3BwICovLAorCQkJCTA3Mjc3RTQxMTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01l
ZGlhU3RyZWFtLmggKi8sCisJCQkJMDcyNzdFNDIxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFT
dHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgKi8sCisJCQkJMDcyNzdFNDMxN0QwMThDQzAw
MTU1MzREIC8qIEpTTWVkaWFTdHJlYW1BdWRpb0Rlc3RpbmF0aW9uTm9kZS5oICovLAorCQkJCTA3
Mjc3RTQ2MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suY3BwICovLAorCQkJ
CTA3Mjc3RTQ3MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suaCAqLywKKwkJ
CQkwNzI3N0U0ODE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrRXZlbnQuY3Bw
ICovLAorCQkJCTA3Mjc3RTQ5MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tF
dmVudC5oICovLAorCQkJCTkzMkNDMEQwMURGRkQ2NjcwMDRDMEY5RiAvKiBKU01lZGlhVHJhY2tD
b25zdHJhaW50cy5jcHAgKi8sCisJCQkJOTMyQ0MwRDExREZGRDY2NzAwNEMwRjlGIC8qIEpTTWVk
aWFUcmFja0NvbnN0cmFpbnRzLmggKi8sCisJCQkJMDc4N0M0NjcxQkZCREY2RjAwNkRDRDdGIC8q
IEpTTWVkaWFUcmFja1N1cHBvcnRlZENvbnN0cmFpbnRzLmNwcCAqLywKKwkJCQkwNzg3QzQ2ODFC
RkJERjZGMDA2RENEN0YgLyogSlNNZWRpYVRyYWNrU3VwcG9ydGVkQ29uc3RyYWludHMuaCAqLywK
KwkJCQkwNzA0QTQwOTFENkRGQzY5MDA4NkRDREIgLyogSlNPdmVyY29uc3RyYWluZWRFcnJvci5j
cHAgKi8sCisJCQkJMDcwNEE0MEExRDZERkM2OTAwODZEQ0RCIC8qIEpTT3ZlcmNvbnN0cmFpbmVk
RXJyb3IuaCAqLywKKwkJCQkwNzA0QTQxMzFENkYzOUZCMDA4NkRDREIgLyogSlNPdmVyY29uc3Ry
YWluZWRFcnJvckV2ZW50LmNwcCAqLywKKwkJCQkwNzA0QTQxNDFENkYzOUZCMDA4NkRDREIgLyog
SlNPdmVyY29uc3RyYWluZWRFcnJvckV2ZW50LmggKi8sCisJCQkJMzE2RENCMkQxRTc4RjQ5NjAw
MUI1Rjg3IC8qIEpTUlRDQW5zd2VyT3B0aW9ucy5jcHAgKi8sCisJCQkJMzE2RENCMkUxRTc4RjQ5
NjAwMUI1Rjg3IC8qIEpTUlRDQW5zd2VyT3B0aW9ucy5oICovLAorCQkJCTA3Mzc5NEUzMTlFRTJG
RjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uY3BwICovLAorCQkJCTA3Mzc5NEU0MTlF
RTJGRjIwMEU1QTA0NSAvKiBKU1JUQ0NvbmZpZ3VyYXRpb24uaCAqLywKKwkJCQkwNzk2OUQ5MTE3
RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbC5jcHAgKi8sCisJCQkJMDc5NjlEOTIx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRGF0YUNoYW5uZWwuaCAqLywKKwkJCQkwNzk2OUQ5MzE3
RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmNwcCAqLywKKwkJCQkwNzk2
OUQ5NDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENEYXRhQ2hhbm5lbEV2ZW50LmggKi8sCisJCQkJ
MDc5NjlEOTUxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRNRlNlbmRlci5jcHAgKi8sCisJCQkJ
MDc5NjlEOTYxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRFRNRlNlbmRlci5oICovLAorCQkJCTA3
OTY5RDk3MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuY3BwICov
LAorCQkJCTA3OTY5RDk4MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZl
bnQuaCAqLywKKwkJCQkwNzk2OUQ5QjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENJY2VDYW5kaWRh
dGUuY3BwICovLAorCQkJCTA3OTY5RDlDMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRp
ZGF0ZS5oICovLAorCQkJCTMxNkRDQjQ1MUU3OTEwQTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUNvbm5l
Y3Rpb25TdGF0ZS5jcHAgKi8sCisJCQkJMzE2RENCNDYxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRD
SWNlQ29ubmVjdGlvblN0YXRlLmggKi8sCisJCQkJMzE2RENCNDcxRTc5MTBBNjAwMUI1Rjg3IC8q
IEpTUlRDSWNlR2F0aGVyaW5nU3RhdGUuY3BwICovLAorCQkJCTMxNkRDQjQ4MUU3OTEwQTYwMDFC
NUY4NyAvKiBKU1JUQ0ljZUdhdGhlcmluZ1N0YXRlLmggKi8sCisJCQkJMDczNzk0RTkxOUVFMzQx
RTAwRTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmNwcCAqLywKKwkJCQkwNzM3OTRFQTE5RUUzNDFF
MDBFNUEwNDUgLyogSlNSVENJY2VTZXJ2ZXIuaCAqLywKKwkJCQkzMTlCREU0RjFFN0E4NThBMDBC
QTI5NkMgLyogSlNSVENJY2VUcmFuc3BvcnQuY3BwICovLAorCQkJCTMxOUJERTUwMUU3QTg1OEEw
MEJBMjk2QyAvKiBKU1JUQ0ljZVRyYW5zcG9ydC5oICovLAorCQkJCTMxOUJERTUyMUU3QTg2QzEw
MEJBMjk2QyAvKiBKU1JUQ0ljZVRyYW5zcG9ydFN0YXRlLmNwcCAqLywKKwkJCQkzMTlCREU1MzFF
N0E4NkMxMDBCQTI5NkMgLyogSlNSVENJY2VUcmFuc3BvcnRTdGF0ZS5oICovLAorCQkJCTMxNkRD
QjE5MUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHAgKi8sCisJ
CQkJMzE2RENCMUExRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmgg
Ki8sCisJCQkJMzE2RENCMkYxRTc4RjQ5NjAwMUI1Rjg3IC8qIEpTUlRDT2ZmZXJPcHRpb25zLmNw
cCAqLywKKwkJCQkzMTZEQ0IzMDFFNzhGNDk2MDAxQjVGODcgLyogSlNSVENPZmZlck9wdGlvbnMu
aCAqLywKKwkJCQkwNzk2OUQ5RjE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29ubmVjdGlv
bi5jcHAgKi8sCisJCQkJMDc5NjlEQTAxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDUGVlckNvbm5l
Y3Rpb24uaCAqLywKKwkJCQkwNzk2OUQ5RDE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVyQ29u
bmVjdGlvbkljZUV2ZW50LmNwcCAqLywKKwkJCQkwNzk2OUQ5RTE3RDE0MTUxMDA3RkY4NDIgLyog
SlNSVENQZWVyQ29ubmVjdGlvbkljZUV2ZW50LmggKi8sCisJCQkJMzE5QkRFNTIxRTdBODZDMTAw
QkEyOTZEIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25TdGF0ZS5jcHAgKi8sCisJCQkJMzE5QkRFNTMx
RTdBODZDMTAwQkEyOTZEIC8qIEpTUlRDUGVlckNvbm5lY3Rpb25TdGF0ZS5oICovLAorCQkJCTVF
MkM0MzZGMUJDRjBENjkwMDAxRTJCRSAvKiBKU1JUQ1J0cFBhcmFtZXRlcnMuY3BwICovLAorCQkJ
CTVFMkM0MzcwMUJDRjBENjkwMDAxRTJCRSAvKiBKU1JUQ1J0cFBhcmFtZXRlcnMuaCAqLywKKwkJ
CQk1RTJDNDM2RDFCQ0YwRDY5MDAwMUUyQkMgLyogSlNSVENSdHBSZWNlaXZlci5jcHAgKi8sCisJ
CQkJNUUyQzQzNkUxQkNGMEQ2OTAwMDFFMkJDIC8qIEpTUlRDUnRwUmVjZWl2ZXIuaCAqLywKKwkJ
CQk1RTJDNDM2RjFCQ0YwRDY5MDAwMUUyQkMgLyogSlNSVENSdHBTZW5kZXIuY3BwICovLAorCQkJ
CTVFMkM0MzcwMUJDRjBENjkwMDAxRTJCQyAvKiBKU1JUQ1J0cFNlbmRlci5oICovLAorCQkJCTVF
MkM0MzZEMUJDRjBENjkwMDAxRTJCRCAvKiBKU1JUQ1J0cFRyYW5zY2VpdmVyLmNwcCAqLywKKwkJ
CQk1RTJDNDM2RTFCQ0YwRDY5MDAwMUUyQkQgLyogSlNSVENSdHBUcmFuc2NlaXZlci5oICovLAor
CQkJCTMxNkRDQjFCMUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0
aW9uLmNwcCAqLywKKwkJCQkzMTZEQ0IxQzFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENSdHBUcmFu
c2NlaXZlckRpcmVjdGlvbi5oICovLAorCQkJCTA3OTY5REExMTdEMTQxNTEwMDdGRjg0MiAvKiBK
U1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5jcHAgKi8sCisJCQkJMDc5NjlEQTIxN0QxNDE1MTAwN0ZG
ODQyIC8qIEpTUlRDU2Vzc2lvbkRlc2NyaXB0aW9uLmggKi8sCisJCQkJMzE2RENCNDkxRTc5MTBB
NjAwMUI1Rjg3IC8qIEpTUlRDU2lnbmFsaW5nU3RhdGUuY3BwICovLAorCQkJCTMxNkRDQjRBMUU3
OTEwQTYwMDFCNUY4NyAvKiBKU1JUQ1NpZ25hbGluZ1N0YXRlLmggKi8sCisJCQkJMDc5NjlEQTcx
N0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDU3RhdHNSZXBvcnQuY3BwICovLAorCQkJCTA3OTY5REE4
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1N0YXRzUmVwb3J0LmggKi8sCisJCQkJNUUyQzQzNjkx
QkNGMDVDODAwMDFFMkJDIC8qIEpTUlRDVHJhY2tFdmVudC5jcHAgKi8sCisJCQkJNUUyQzQzNkEx
QkNGMDVDODAwMDFFMkJDIC8qIEpTUlRDVHJhY2tFdmVudC5oICovLAorCQkJKTsKKwkJCW5hbWUg
PSBNZWRpYVN0cmVhbTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTA4MUNE
RkJEMTI2RUNGRTgwMEQyMTVDQSAvKiBwcm9wZXJ0aWVzICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1NTUzNTkyMDIyNDQxQTE2MDA4RjVFQzkgLyogU1ZH
QW5pbWF0ZWREZWNvcmF0ZWRQcm9wZXJ0eS5oICovLAorCQkJCTU1RUU1MzU3MjIzQjI5RjgwMEZC
QTk0NCAvKiBTVkdBbmltYXRlZFByaW1pdGl2ZVByb3BlcnR5LmggKi8sCisJCQkJNTVCRTAyNUQy
MjNCMjlDNDAwMzJGMDhBIC8qIFNWR0FuaW1hdGVkUHJvcGVydHkuY3BwICovLAorCQkJCTU1RUU1
MzYyMjIzQjJBMjMwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5LmggKi8sCisJCQkJNTVF
RTUzNTkyMjNCMjlGQTAwRkJBOTQ0IC8qIFNWR0FuaW1hdGVkUHJvcGVydHlBY2Nlc3Nvci5oICov
LAorCQkJCTU1RUU1MzU4MjIzQjI5RjkwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5QWNj
ZXNzb3JJbXBsLmggKi8sCisJCQkJNTVFRTUzNUEyMjNCMjlGQjAwRkJBOTQ0IC8qIFNWR0FuaW1h
dGVkUHJvcGVydHlBbmltYXRvci5oICovLAorCQkJCTU1RUU1MzU2MjIzQjI5RjcwMEZCQTk0NCAv
KiBTVkdBbmltYXRlZFByb3BlcnR5QW5pbWF0b3JJbXBsLmggKi8sCisJCQkJNTVFRTUzNUMyMjNC
MkEwRDAwRkJBOTQ0IC8qIFNWR0FuaW1hdGVkUHJvcGVydHlJbXBsLmggKi8sCisJCQkJNzI2NkYw
MkEyMjQzMTQ5QjAwODMzOTc1IC8qIFNWR0FuaW1hdGVkUHJvcGVydHlMaXN0LmggKi8sCisJCQkJ
NTVCRTAyNUUyMjNCMjlDNDAwMzJGMDhBIC8qIFNWR0FuaW1hdGVkUHJvcGVydHlQYWlyQWNjZXNz
b3IuaCAqLywKKwkJCQk1NUVFNTM1RDIyM0IyQTBEMDBGQkE5NDQgLyogU1ZHQW5pbWF0ZWRQcm9w
ZXJ0eVBhaXJBY2Nlc3NvckltcGwuaCAqLywKKwkJCQk1NUVFNTM1RjIyM0IyQTBGMDBGQkE5NDQg
LyogU1ZHQW5pbWF0ZWRQcm9wZXJ0eVBhaXJBbmltYXRvci5oICovLAorCQkJCTU1RUU1MzVCMjIz
QjJBMEMwMEZCQTk0NCAvKiBTVkdBbmltYXRlZFByb3BlcnR5UGFpckFuaW1hdG9ySW1wbC5oICov
LAorCQkJCTcyMTQ0MzQ1MjI0MEM4QkEwMEYxMkZGNyAvKiBTVkdBbmltYXRlZFZhbHVlUHJvcGVy
dHkuaCAqLywKKwkJCQk1NUJFMDI1RjIyM0IyOUM1MDAzMkYwOEEgLyogU1ZHQW5pbWF0aW9uQWRk
aXRpdmVGdW5jdGlvbi5oICovLAorCQkJCTcyNjZGMDI5MjI0MzEyQjEwMDgzMzk3NSAvKiBTVkdB
bmltYXRpb25BZGRpdGl2ZUxpc3RGdW5jdGlvbi5oICovLAorCQkJCTcyNjZGMDI4MjI0MzEyMDMw
MDgzMzk3NSAvKiBTVkdBbmltYXRpb25BZGRpdGl2ZUxpc3RGdW5jdGlvbkltcGwuaCAqLywKKwkJ
CQk1NUVFNTM1RTIyM0IyQTBFMDBGQkE5NDQgLyogU1ZHQW5pbWF0aW9uQWRkaXRpdmVWYWx1ZUZ1
bmN0aW9uLmggKi8sCisJCQkJNzI2NkYwMTgyMjQyOUNGRDAwODMzOTc1IC8qIFNWR0FuaW1hdGlv
bkFkZGl0aXZlVmFsdWVGdW5jdGlvbkltcGwuY3BwICovLAorCQkJCTU1QkUwMjU5MjIzQjI5QzEw
MDMyRjA4QSAvKiBTVkdBbmltYXRpb25BZGRpdGl2ZVZhbHVlRnVuY3Rpb25JbXBsLmggKi8sCisJ
CQkJNTVEQ0M1MUQyMjQwNjE1NTAwQzI2RTMyIC8qIFNWR0FuaW1hdGlvbkRpc2NyZXRlRnVuY3Rp
b24uaCAqLywKKwkJCQk1NURDQzUxQzIyNDA2MDVFMDBDMjZFMzIgLyogU1ZHQW5pbWF0aW9uRGlz
Y3JldGVGdW5jdGlvbkltcGwuaCAqLywKKwkJCQk1NUJFMDI1QjIyM0IyOUMyMDAzMkYwOEEgLyog
U1ZHQW5pbWF0aW9uRnVuY3Rpb24uaCAqLywKKwkJCQk1NUVFNTM2MTIyM0IyQTIyMDBGQkE5NDQg
LyogU1ZHQXR0cmlidXRlQW5pbWF0b3IuY3BwICovLAorCQkJCTU1RUU1MzY0MjIzQjJBMjQwMEZC
QTk0NCAvKiBTVkdBdHRyaWJ1dGVBbmltYXRvci5oICovLAorCQkJCTU1NTM1OTIxMjI0NDFCOTcw
MDhGNUVDOSAvKiBTVkdEZWNvcmF0ZWRFbnVtZXJhdGlvbi5oICovLAorCQkJCTU1NTM1OTIyMjI0
NDFCRTkwMDhGNUVDOSAvKiBTVkdEZWNvcmF0ZWRQcmltaXRpdmUuaCAqLywKKwkJCQk1NTUzNTky
MzIyNDQxQzE4MDA4RjVFQzkgLyogU1ZHRGVjb3JhdGVkUHJvcGVydHkuaCAqLywKKwkJCQk1NURD
QzUyMzIyNDA3M0ZFMDBDMjZFMzIgLyogU1ZHTGlzdC5oICovLAorCQkJCTU1RUU1MzU0MjIzQjI5
RTkwMEZCQTk0NCAvKiBTVkdNZW1iZXJBY2Nlc3Nvci5oICovLAorCQkJCTU1QkUwMjVBMjIzQjI5
QzIwMDMyRjA4QSAvKiBTVkdQb2ludGVyTWVtYmVyQWNjZXNzb3IuaCAqLywKKwkJCQk1NURDQzUy
NTIyNDA3NDlFMDBDMjZFMzIgLyogU1ZHUHJpbWl0aXZlTGlzdC5oICovLAorCQkJCTcyNjZGMDE1
MjI0MUMwOTgwMDgzMzk3NSAvKiBTVkdQcmltaXRpdmVQcm9wZXJ0eUFuaW1hdG9yLmggKi8sCisJ
CQkJNzI2NkYwMTQyMjQxQkZCMjAwODMzOTc1IC8qIFNWR1ByaW1pdGl2ZVByb3BlcnR5QW5pbWF0
b3JJbXBsLmggKi8sCisJCQkJNTVFRTUzNjMyMjNCMkEyNDAwRkJBOTQ0IC8qIFNWR1Byb3BlcnR5
LmggKi8sCisJCQkJNTVEQ0M1MjYyMjQwNzRGQTAwQzI2RTMyIC8qIFNWR1Byb3BlcnR5QWNjZXNz
b3IuaCAqLywKKwkJCQk1NURDQzUyNzIyNDA3NTBCMDBDMjZFMzIgLyogU1ZHUHJvcGVydHlBY2Nl
c3NvckltcGwuaCAqLywKKwkJCQk3MjY2RjAxNjIyNDFDMEZFMDA4MzM5NzUgLyogU1ZHUHJvcGVy
dHlBbmltYXRvci5oICovLAorCQkJCTcyNjZGMDEzMjI0MUJDRTIwMDgzMzk3NSAvKiBTVkdQcm9w
ZXJ0eUFuaW1hdG9yRmFjdG9yeS5oICovLAorCQkJCTcyNjZGMDI3MjI0MzEwOTIwMDgzMzk3NSAv
KiBTVkdQcm9wZXJ0eUxpc3QuaCAqLywKKwkJCQk1NUVFNTM2MDIyM0IyQTIxMDBGQkE5NDQgLyog
U1ZHUHJvcGVydHlPd25lci5oICovLAorCQkJCTU1QkUwMjVDMjIzQjI5QzMwMDMyRjA4QSAvKiBT
VkdQcm9wZXJ0eU93bmVyUmVnaXN0cnkuaCAqLywKKwkJCQk1NUJFMDI1NzIyM0IyOUMwMDAzMkYw
OEEgLyogU1ZHUHJvcGVydHlSZWdpc3RyeS5oICovLAorCQkJCTkzRkNEQjRCMjY0NzBERDEwMDQ2
REQ3RCAvKiBTVkdQcm9wZXJ0eVRyYWl0cy5jcHAgKi8sCisJCQkJMDg4QTBFMDMxMjZFRjFEQjAw
OTc4RjdBIC8qIFNWR1Byb3BlcnR5VHJhaXRzLmggKi8sCisJCQkJNTUwRjY2NDUyMkNBODlCRDAw
MEEzNDE3IC8qIFNWR1NoYXJlZFByaW1pdGl2ZVByb3BlcnR5LmggKi8sCisJCQkJNzIxNDQzNDYy
MjQwQ0FEMjAwRjEyRkY3IC8qIFNWR1ZhbHVlUHJvcGVydHkuaCAqLywKKwkJCQk3MkZCMjM4NjIy
NDk3QUQ1MDA3RTVBQzcgLyogU1ZHVmFsdWVQcm9wZXJ0eUFuaW1hdG9yLmggKi8sCisJCQkJNzJG
QjIzODQyMjQ5N0FENDAwN0U1QUM3IC8qIFNWR1ZhbHVlUHJvcGVydHlBbmltYXRvckltcGwuaCAq
LywKKwkJCQk3MjY2RjAyNTIyNDMwRjhDMDA4MzM5NzUgLyogU1ZHVmFsdWVQcm9wZXJ0eUxpc3Qu
aCAqLywKKwkJCQk3MkZCMjM4ODIyNDk3QjE1MDA3RTVBQzcgLyogU1ZHVmFsdWVQcm9wZXJ0eUxp
c3RBbmltYXRvci5oICovLAorCQkJCTcyRkIyMzg3MjI0OTdCMTUwMDdFNUFDNyAvKiBTVkdWYWx1
ZVByb3BlcnR5TGlzdEFuaW1hdG9ySW1wbC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBwcm9wZXJ0
aWVzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMDg2N0Q2OTFGRTg0MDI4
RkMwMkFBQzA3IC8qIFdlYkNvcmUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTFDMDlEMDRCMUUzMUMzMjgwMDcyNUYxOCAvKiBQQUwueGNvZGVwcm9qICov
LAorCQkJCTY1Qzk3QUYyMDhFQTkwODgwMEFDRDI3MyAvKiBjb25maWcuaCAqLywKKwkJCQlFREVD
OTgwMjBBRUQ3RTE3MDA1OTEzN0YgLyogV2ViQ29yZVByZWZpeC5oICovLAorCQkJCTUzMEE2MzQ2
MUZBM0UzM0QwMDI2QTU0NSAvKiBTb3VyY2VzLnR4dCAqLywKKwkJCQk1MzBBNjM0MjFGQTNFMzNC
MDAyNkE1NDUgLyogU291cmNlc0NvY29hLnR4dCAqLywKKwkJCQk5MzA3MDYxMzA5RTBDQTgyMDBC
MTdGRTQgLyogRGVyaXZlZFNvdXJjZXMubWFrZSAqLywKKwkJCQlBMUUwODY2QTI0OEFBQkM4MDBF
NDk2RDkgLyogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCAqLywKKwkJCQlBMUUwODY2
QzI0OEFBQkM4MDBFNDk2RDkgLyogRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgKi8s
CisJCQkJOTNGMTlCMTkwODI0NUU1OTAwMUU5QUJDIC8qIEluZm8ucGxpc3QgKi8sCisJCQkJQTFF
MDg2NkQyNDhBQUJDOTAwRTQ5NkQ5IC8qIFVuaWZpZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
ICovLAorCQkJCTk3MTE0NUZFMTRFRjAwNkUwMDY3NEZEOSAvKiBNb2R1bGVzICovLAorCQkJCTI5
QTgxMjA0MEZCQjlCNDEwMDUxMDI5MyAvKiBhY2Nlc3NpYmlsaXR5ICovLAorCQkJCTcxMDI1RUMx
MUY5OUYwOTYwMDRBMjUwQyAvKiBhbmltYXRpb24gKi8sCisJCQkJQkMxQTM3OTAwOTdDNkY5NzAw
MTlGM0Q4IC8qIGJpbmRpbmdzICovLAorCQkJCTFBNTY5Q0M0MEQ3RTJCNjAwMDdDMzk4MyAvKiBi
cmlkZ2UgKi8sCisJCQkJMjZGMEM4OTAxQTJENzlDQjAwMjc5NEY4IC8qIGNvbnRlbnRleHRlbnNp
b25zICovLAorCQkJCUUxRkY4RjVCMTgwNzM2MkIwMDEzMjY3NCAvKiBjcnlwdG8gKi8sCisJCQkJ
RjUyM0QxODQwMkRFNDJFODAxODYzNUNBIC8qIGNzcyAqLywKKwkJCQkyNkI5OTk4RDE4MDNBREZB
MDBEMDExMjEgLyogY3Nzaml0ICovLAorCQkJCTBGNzkwRjNDMjUxN0NFNkQwMDlCQTAzNCAvKiBk
aXNwbGF5ICovLAorCQkJCUY1MjNEMzI0MDJERTQ0NzgwMTg2MzVDQSAvKiBkb20gKi8sCisJCQkJ
RTNBRkE5NjMxREE2RThBRjAwMjg2MUJEIC8qIGRvbWppdCAqLywKKwkJCQk5MzMwOUQ4NjA5OUU2
NDkxMDA1NkU1ODEgLyogZWRpdGluZyAqLywKKwkJCQk5NzZENkM1NzEyMkI4QTE4MDAxRkQxRjcg
LyogZmlsZWFwaSAqLywKKwkJCQk1MTc0MUQwODBCMDcyNTcwMDBFRDQ0MkMgLyogaGlzdG9yeSAq
LywKKwkJCQk5M0VFQzFFQzA5QzI4Nzc3MDBDNTE1RDEgLyogaHRtbCAqLywKKwkJCQkxQzgxQjk0
RDBFOTczMkQ5MDAyNjZFMDcgLyogaW5zcGVjdG9yICovLAorCQkJCTExNUNGQTY2MjA4QUY3MjAw
MDFFNjk5MSAvKiBsYXlvdXQgKi8sCisJCQkJQkNCMTZCRkIwOTc5QzM4NzAwNDY3NzQxIC8qIGxv
YWRlciAqLywKKwkJCQlGQUJFNzJFQzEwNTlDMUVCMDBEOTk5REQgLyogbWF0aG1sICovLAorCQkJ
CTY1QkYwMjE4MDk3NDgwNjMwMEM0MzE5NiAvKiBwYWdlICovLAorCQkJCUJDRjFBNUJBMDk3ODMy
MDkwMDYxQTEyMyAvKiBwbGF0Zm9ybSAqLywKKwkJCQk1RENGODM2OTBENTkxNTc4MDA5NTNCQzYg
LyogcGx1Z2lucyAqLywKKwkJCQlGNTIzRDJGMzAyREU0NDNCMDE4NjM1Q0EgLyogcmVuZGVyaW5n
ICovLAorCQkJCTk5RTQ1QTEzMThBMDIxNzYwMDI2RDg4RiAvKiByZXBsYXkgKi8sCisJCQkJMUFF
ODJFQzkwQ0FBRTE3NzAwMjIzN0FFIC8qIHN0b3JhZ2UgKi8sCisJCQkJRTQ3NjNENEExN0IyNzA0
OTAwRDM1MjA2IC8qIHN0eWxlICovLAorCQkJCUIyMjI3N0NBMEQwMEJGMUUwMDcxQjc4MiAvKiBz
dmcgKi8sCisJCQkJNDE3REE0Q0QxMzczNDIwNDAwN0M1N0ZCIC8qIHRlc3RpbmcgKi8sCisJCQkJ
MkU0MzQ2MzEwRjU0NkE2ODAwQjBGMUJBIC8qIHdvcmtlcnMgKi8sCisJCQkJNEJERUEzMTgyMTdF
QkI4ODAwNTJERkNEIC8qIHdvcmtsZXRzICovLAorCQkJCUUxRjA0MjQzMDk4MzkzODkwMDY2OTRF
QSAvKiB4bWwgKi8sCisJCQkJNjU2NTgwRUMwOUQxMkIyMDAwMEU2MUQ3IC8qIERlcml2ZWQgU291
cmNlcyAqLywKKwkJCQkwODlDMTY2NUZFODQxMTU4QzAyQUFDMDcgLyogUmVzb3VyY2VzICovLAor
CQkJCTM3MTdEN0U0MTdFQ0MzNkMwMDNDMjc2RCAvKiBTY3JpcHRzICovLAorCQkJCTA4NjdENjlB
RkU4NDAyOEZDMDJBQUMwNyAvKiBGcmFtZXdvcmtzICovLAorCQkJCTAzNDc2OERGRkYzOEE1MDQx
MURCOUM4QiAvKiBQcm9kdWN0cyAqLywKKwkJCQkxQ0RENDQ2NjBCQTlDODAwMDBGOTAxNDcgLyog
Q29uZmlndXJhdGlvbnMgKi8sCisJCQkpOworCQkJbmFtZSA9IFdlYkNvcmU7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQkwODY3RDY5QUZFODQwMjhGQzAyQUFDMDcgLyogRnJh
bWV3b3JrcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
RkQyREJGMEUxMkIwNDhBMzAwRUQ5OEM2IC8qIEFjY2VsZXJhdGUuZnJhbWV3b3JrICovLAorCQkJ
CUZEMkRCRjBGMTJCMDQ4QTMwMEVEOThDNiAvKiBBdWRpb1Rvb2xib3guZnJhbWV3b3JrICovLAor
CQkJCUExNzYzRjQwMUUyMDU4NkUwMDFENThERSAvKiBDRk5ldHdvcmsuZnJhbWV3b3JrICovLAor
CQkJCUFBNUYzQjkwMTZDQzVCRUIwMDQ1NUVCMCAvKiBDb3JlRm91bmRhdGlvbi5mcmFtZXdvcmsg
Ki8sCisJCQkJQTE1RTZCRjAxRTIxMkE2QTAwODBBRjM0IC8qIEZvdW5kYXRpb24uZnJhbWV3b3Jr
ICovLAorCQkJCTFBQjMzREE0MTI1NTFFMzIwMDI0NDU3QSAvKiBJT0tpdC5mcmFtZXdvcmsgKi8s
CisJCQkJRjgyMTYyOTkwMjlGNEZCNTAxMDAwMTMxIC8qIEphdmFTY3JpcHRDb3JlLmZyYW1ld29y
ayAqLywKKwkJCQlDMEUyRjMyNTI0MTJCRjI5MDA5QzczRUMgLyogbGliQWNjZXNzaWJpbGl0eS50
YmQgKi8sCisJCQkJMUM4RDI2RDAyMkMwOUNERTAwRDEyNUYzIC8qIGxpYmNvbXByZXNzaW9uLnRi
ZCAqLywKKwkJCQk5M0YxRDMxQTA1NThDQzVDMDA4MjFCQzAgLyogbGliaWN1Y29yZS5keWxpYiAq
LywKKwkJCQkxQ0ZBRTMyMjBBNkQ2QTNGMDAzMjU5M0QgLyogbGlib2JqYy5keWxpYiAqLywKKwkJ
CQlERDc2M0JCMTA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiAqLywKKwkJCQkzNzk5
MTlCMTEyMDBERTUwMDBFQTA0MUMgLyogbGliei5keWxpYiAqLywKKwkJCQk1NzRGNTVFMjIwNEYz
Q0JGMDAyOTQ4QzYgLyogTG9jYWxBdXRoZW50aWNhdGlvbi5mcmFtZXdvcmsgKi8sCisJCQkJQTg1
RDdBMkYwODc5RUJBOTAwNkE5MTcyIC8qIFF1YXJ0ekNvcmUuZnJhbWV3b3JrICovLAorCQkJCTVG
RTFEMjkxMTc4RkQxRjMwMDFBQTNDMyAvKiBTZWN1cml0eS5mcmFtZXdvcmsgKi8sCisJCQkpOwor
CQkJbmFtZSA9IEZyYW1ld29ya3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQkJdGFi
V2lkdGggPSA0OworCQkJdXNlc1RhYnMgPSAwOworCQl9OworCQkwODhDMkY3NDEyMzkwMDgwMDAz
RDY1Q0UgLyogc3ZnICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgK
KwkJCQk0MzY3MDg4MTEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHQmxvY2suY3BwICovLAor
CQkJCTQzNjcwODgyMTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdCbG9jay5oICovLAorCQkJ
CTQzNjcwODgzMTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdDb250YWluZXIuY3BwICovLAor
CQkJCTQzNjcwODg0MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdDb250YWluZXIuaCAqLywK
KwkJCQkyQjQyMzU5RjE1MjUwRjYwMDBEQkJDRDggLyogUmVuZGVyU1ZHRWxsaXBzZS5jcHAgKi8s
CisJCQkJMkI0MjM1QTAxNTI1MEY2MDAwREJCQ0Q4IC8qIFJlbmRlclNWR0VsbGlwc2UuaCAqLywK
KwkJCQk0M0MwOTJCOTEyRDlFNEVFMDBBOTg5QzMgLyogUmVuZGVyU1ZHRm9yZWlnbk9iamVjdC5j
cHAgKi8sCisJCQkJNDNDMDkyQkExMkQ5RTRFRTAwQTk4OUMzIC8qIFJlbmRlclNWR0ZvcmVpZ25P
YmplY3QuaCAqLywKKwkJCQk0MzY3MDg4NTEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHR3Jh
ZGllbnRTdG9wLmNwcCAqLywKKwkJCQk0MzY3MDg4NjEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVy
U1ZHR3JhZGllbnRTdG9wLmggKi8sCisJCQkJNDM2NzA4ODcxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJl
bmRlclNWR0hpZGRlbkNvbnRhaW5lci5jcHAgKi8sCisJCQkJNDM2NzA4ODgxMkQ5Q0E0QTAwMDQ0
MjM0IC8qIFJlbmRlclNWR0hpZGRlbkNvbnRhaW5lci5oICovLAorCQkJCTQzNjcwODg5MTJEOUNB
NEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdJbWFnZS5jcHAgKi8sCisJCQkJNDM2NzA4OEExMkQ5Q0E0
QTAwMDQ0MjM0IC8qIFJlbmRlclNWR0ltYWdlLmggKi8sCisJCQkJMDg1NEIwMDIxMjU1RTRFNjAw
QjlDREQwIC8qIFJlbmRlclNWR0lubGluZS5jcHAgKi8sCisJCQkJMDg1NEIwMDMxMjU1RTRFNjAw
QjlDREQwIC8qIFJlbmRlclNWR0lubGluZS5oICovLAorCQkJCTA4NTRCMDA0MTI1NUU0RTYwMEI5
Q0REMCAvKiBSZW5kZXJTVkdJbmxpbmVUZXh0LmNwcCAqLywKKwkJCQkwODU0QjAwNTEyNTVFNEU2
MDBCOUNERDAgLyogUmVuZGVyU1ZHSW5saW5lVGV4dC5oICovLAorCQkJCTQzNjcwODhCMTJEOUNB
NEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdNb2RlbE9iamVjdC5jcHAgKi8sCisJCQkJNDM2NzA4OEMx
MkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR01vZGVsT2JqZWN0LmggKi8sCisJCQkJQURERjFB
RDQxMjU3Q0Q5QTAwMDNBNzU5IC8qIFJlbmRlclNWR1BhdGguY3BwICovLAorCQkJCUFEREYxQUQ1
MTI1N0NEOUEwMDAzQTc1OSAvKiBSZW5kZXJTVkdQYXRoLmggKi8sCisJCQkJQTEwQkI1ODIxNDg0
RTNBNzAwQjJFODdBIC8qIFJlbmRlclNWR1JlY3QuY3BwICovLAorCQkJCUExMEJCNTgzMTQ4NEUz
QTcwMEIyRTg3QSAvKiBSZW5kZXJTVkdSZWN0LmggKi8sCisJCQkJNDM2NzA4OEQxMkQ5Q0E0QTAw
MDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlLmNwcCAqLywKKwkJCQk0MzY3MDg4RTEyRDlDQTRB
MDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2UuaCAqLywKKwkJCQk0MzY3MDg4RjEyRDlDQTRB
MDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VDbGlwcGVyLmNwcCAqLywKKwkJCQk0MzY3MDg5
MDEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VDbGlwcGVyLmggKi8sCisJCQkJ
NDM2NzA4OTExMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmNw
cCAqLywKKwkJCQk0MzY3MDg5MjEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VD
b250YWluZXIuaCAqLywKKwkJCQk0MzY3MDg5MzEyRDlDQTRBMDAwNDQyMzQgLyogUmVuZGVyU1ZH
UmVzb3VyY2VGaWx0ZXIuY3BwICovLAorCQkJCTQzNjcwODk0MTJEOUNBNEEwMDA0NDIzNCAvKiBS
ZW5kZXJTVkdSZXNvdXJjZUZpbHRlci5oICovLAorCQkJCTQzNjcwODk1MTJEOUNBNEEwMDA0NDIz
NCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRlclByaW1pdGl2ZS5jcHAgKi8sCisJCQkJNDM2NzA4
OTYxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlRmlsdGVyUHJpbWl0aXZlLmgg
Ki8sCisJCQkJNDM2NzA4OTcxMkQ5Q0E0QTAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlR3Jh
ZGllbnQuY3BwICovLAorCQkJCTQzNjcwODk4MTJEOUNBNEEwMDA0NDIzNCAvKiBSZW5kZXJTVkdS
ZXNvdXJjZUdyYWRpZW50LmggKi8sCisJCQkJNDM2NzA4OTkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJl
bmRlclNWR1Jlc291cmNlTGluZWFyR3JhZGllbnQuY3BwICovLAorCQkJCTQzNjcwODlBMTJEOUNB
NEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUxpbmVhckdyYWRpZW50LmggKi8sCisJCQkJ
NDM2NzA4OUIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTWFya2VyLmNwcCAq
LywKKwkJCQk0MzY3MDg5QzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VNYXJr
ZXIuaCAqLywKKwkJCQk0MzY3MDg5RDEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3Vy
Y2VNYXNrZXIuY3BwICovLAorCQkJCTQzNjcwODlFMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJT
VkdSZXNvdXJjZU1hc2tlci5oICovLAorCQkJCTQzNjcwODlGMTJEOUNBNEIwMDA0NDIzNCAvKiBS
ZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uY3BwICovLAorCQkJCTQzNjcwOEEwMTJEOUNBNEIwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uaCAqLywKKwkJCQk0MzY3MDhBMTEyRDlD
QTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VSYWRpYWxHcmFkaWVudC5jcHAgKi8sCisJ
CQkJNDM2NzA4QTIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlUmFkaWFsR3Jh
ZGllbnQuaCAqLywKKwkJCQk0MzY3MDhBMzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVz
b3VyY2VTb2xpZENvbG9yLmNwcCAqLywKKwkJCQk0MzY3MDhBNDEyRDlDQTRCMDAwNDQyMzQgLyog
UmVuZGVyU1ZHUmVzb3VyY2VTb2xpZENvbG9yLmggKi8sCisJCQkJNDM2NzA4QTUxMkQ5Q0E0QjAw
MDQ0MjM0IC8qIFJlbmRlclNWR1Jvb3QuY3BwICovLAorCQkJCTQzNjcwOEE2MTJEOUNBNEIwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSb290LmggKi8sCisJCQkJQTEwQkI1ODgxNDg0RTNCMzAwQjJFODdB
IC8qIFJlbmRlclNWR1NoYXBlLmNwcCAqLywKKwkJCQlBMTBCQjU4OTE0ODRFM0IzMDBCMkU4N0Eg
LyogUmVuZGVyU1ZHU2hhcGUuaCAqLywKKwkJCQkwODU0QjAwNjEyNTVFNEU2MDBCOUNERDAgLyog
UmVuZGVyU1ZHVGV4dC5jcHAgKi8sCisJCQkJMDg1NEIwMDcxMjU1RTRFNjAwQjlDREQwIC8qIFJl
bmRlclNWR1RleHQuaCAqLywKKwkJCQkwODU0QjAwODEyNTVFNEU2MDBCOUNERDAgLyogUmVuZGVy
U1ZHVGV4dFBhdGguY3BwICovLAorCQkJCTA4NTRCMDA5MTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5k
ZXJTVkdUZXh0UGF0aC5oICovLAorCQkJCTQzNjcwOEE5MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5k
ZXJTVkdUcmFuc2Zvcm1hYmxlQ29udGFpbmVyLmNwcCAqLywKKwkJCQk0MzY3MDhBQTEyRDlDQTRC
MDAwNDQyMzQgLyogUmVuZGVyU1ZHVHJhbnNmb3JtYWJsZUNvbnRhaW5lci5oICovLAorCQkJCTA4
NTRCMDBCMTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdUU3Bhbi5oICovLAorCQkJCTQzNjcw
OEFCMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdWaWV3cG9ydENvbnRhaW5lci5jcHAgKi8s
CisJCQkJNDM2NzA4QUMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1ZpZXdwb3J0Q29udGFp
bmVyLmggKi8sCisJCQkJMDg1NEIwMEMxMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZUZsb3dC
b3guY3BwICovLAorCQkJCTA4NTRCMDBEMTI1NUU0RTYwMEI5Q0REMCAvKiBTVkdJbmxpbmVGbG93
Qm94LmggKi8sCisJCQkJMDg1NEIwMEUxMjU1RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZVRleHRC
b3guY3BwICovLAorCQkJCTA4NTRCMDBGMTI1NUU0RTYwMEI5Q0REMCAvKiBTVkdJbmxpbmVUZXh0
Qm94LmggKi8sCisJCQkJNDM2NzA4QUYxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR01hcmtlckRhdGEu
aCAqLywKKwkJCQk3MTUzNzlGRTE0NkJEOUQ2MDA4QkQ2MTUgLyogU1ZHUGF0aERhdGEuY3BwICov
LAorCQkJCTcxNTM3OUZGMTQ2QkQ5RDYwMDhCRDYxNSAvKiBTVkdQYXRoRGF0YS5oICovLAorCQkJ
CTE5N0IxODBBMTUwNjM0QzAwMEU0QURBOCAvKiBTVkdSZW5kZXJpbmdDb250ZXh0LmNwcCAqLywK
KwkJCQkxOTdCMTgwQjE1MDYzNEMwMDBFNEFEQTggLyogU1ZHUmVuZGVyaW5nQ29udGV4dC5oICov
LAorCQkJCTQzNjcwOEIyMTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZW5kZXJTdXBwb3J0LmNwcCAq
LywKKwkJCQk0MzY3MDhCMzEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVuZGVyU3VwcG9ydC5oICov
LAorCQkJCTQzNjcwOEI0MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZW5kZXJUcmVlQXNUZXh0LmNw
cCAqLywKKwkJCQk0MzY3MDhCNTEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVuZGVyVHJlZUFzVGV4
dC5oICovLAorCQkJCTQzNjcwOEI2MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZXNvdXJjZXMuY3Bw
ICovLAorCQkJCTQzNjcwOEI3MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZXNvdXJjZXMuaCAqLywK
KwkJCQk0MzY3MDhCODEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVzb3VyY2VzQ2FjaGUuY3BwICov
LAorCQkJCTQzNjcwOEI5MTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZXNvdXJjZXNDYWNoZS5oICov
LAorCQkJCTQzNjcwOEJBMTJEOUNBNEIwMDA0NDIzNCAvKiBTVkdSZXNvdXJjZXNDeWNsZVNvbHZl
ci5jcHAgKi8sCisJCQkJNDM2NzA4QkIxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291cmNlc0N5
Y2xlU29sdmVyLmggKi8sCisJCQkJMDg1NEIwMTAxMjU1RTRFNjAwQjlDREQwIC8qIFNWR1Jvb3RJ
bmxpbmVCb3guY3BwICovLAorCQkJCTA4NTRCMDExMTI1NUU0RTYwMEI5Q0REMCAvKiBTVkdSb290
SW5saW5lQm94LmggKi8sCisJCQkJMDhGMEJGQkQxMjU1QzUzQzAwMDc1MTg1IC8qIFNWR1RleHRD
aHVuay5jcHAgKi8sCisJCQkJMDhGMEJGQkUxMjU1QzUzQzAwMDc1MTg1IC8qIFNWR1RleHRDaHVu
ay5oICovLAorCQkJCTA4MTY2OEQxMTI1NjAzQkYwMDZGMjVERSAvKiBTVkdUZXh0Q2h1bmtCdWls
ZGVyLmNwcCAqLywKKwkJCQkwODE2NjhEMjEyNTYwM0JGMDA2RjI1REUgLyogU1ZHVGV4dENodW5r
QnVpbGRlci5oICovLAorCQkJCTA4RjBCRkJGMTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0RnJh
Z21lbnQuaCAqLywKKwkJCQkwODhDMkY3NTEyMzkwMDgwMDAzRDY1Q0UgLyogU1ZHVGV4dExheW91
dEF0dHJpYnV0ZXMuY3BwICovLAorCQkJCTA4OEMyRjc2MTIzOTAwODAwMDNENjVDRSAvKiBTVkdU
ZXh0TGF5b3V0QXR0cmlidXRlcy5oICovLAorCQkJCTA4MTA5M0Q5MTI1NUYwRTcwMEVEOUQyOSAv
KiBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3BwICovLAorCQkJCTA4MTA5M0RBMTI1
NUYwRTcwMEVEOUQyOSAvKiBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuaCAqLywKKwkJ
CQkwODE2NjhENzEyNTYwM0Q1MDA2RjI1REUgLyogU1ZHVGV4dExheW91dEVuZ2luZS5jcHAgKi8s
CisJCQkJMDgxNjY4RDgxMjU2MDNENTAwNkYyNURFIC8qIFNWR1RleHRMYXlvdXRFbmdpbmUuaCAq
LywKKwkJCQkwODBFNDkyMTEyNTVGM0JEMDBFRkNBMjcgLyogU1ZHVGV4dExheW91dEVuZ2luZUJh
c2VsaW5lLmNwcCAqLywKKwkJCQkwODBFNDkyMjEyNTVGM0JEMDBFRkNBMjcgLyogU1ZHVGV4dExh
eW91dEVuZ2luZUJhc2VsaW5lLmggKi8sCisJCQkJMDgwRTQ5MjMxMjU1RjNCRDAwRUZDQTI3IC8q
IFNWR1RleHRMYXlvdXRFbmdpbmVTcGFjaW5nLmNwcCAqLywKKwkJCQkwODBFNDkyNDEyNTVGM0JE
MDBFRkNBMjcgLyogU1ZHVGV4dExheW91dEVuZ2luZVNwYWNpbmcuaCAqLywKKwkJCQkwOEYwQkZD
MDEyNTVDNTNDMDAwNzUxODUgLyogU1ZHVGV4dE1ldHJpY3MuY3BwICovLAorCQkJCTA4RjBCRkMx
MTI1NUM1M0MwMDA3NTE4NSAvKiBTVkdUZXh0TWV0cmljcy5oICovLAorCQkJCTcxMTc0NDU2MTRC
QzM0RTIwMEVFNUZDOCAvKiBTVkdUZXh0TWV0cmljc0J1aWxkZXIuY3BwICovLAorCQkJCTcxMTc0
NDU3MTRCQzM0RTIwMEVFNUZDOCAvKiBTVkdUZXh0TWV0cmljc0J1aWxkZXIuaCAqLywKKwkJCQkw
ODU0QjAxMjEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4dFF1ZXJ5LmNwcCAqLywKKwkJCQkwODU0
QjAxMzEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4dFF1ZXJ5LmggKi8sCisJCQkpOworCQkJcGF0
aCA9IHN2ZzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTA4OUMxNjY1RkU4
NDExNThDMDJBQUMwNyAvKiBSZXNvdXJjZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCUNEMERCQjNFMTQyMjc0RTYwMDI4MDI2MyAvKiBhdWRpbyAqLywK
KwkJCQk2NTk5OEE2NTBFNUY1RkQzMDA0RTA5N0EgLyogaW1hZ2VzICovLAorCQkJCUExQUE5QUI4
MUQyMzkxMTUwMEZFQURCMyAvKiBDb250ZW50RmlsdGVyQmxvY2tlZFBhZ2UuaHRtbCAqLywKKwkJ
CQlBMTFFOEMwMDFCMUUyOEJFMDAwM0E3QzcgLyogY29weUN1cnNvci5wbmcgKi8sCisJCQkJMkQ5
RjBFMTIxNEZGMUNCRjAwQkEwRkY3IC8qIGxpbmVhclNSR0IuaWNjICovLAorCQkJCUJDQUQxODA4
MTMxQzdBMEQwMDk5MDQwNiAvKiBMb2NhbGl6YWJsZS5zdHJpbmdzICovLAorCQkJCTgzN0E4MDEx
MUUxRTEyNzMwMDAyNkI5RiAvKiBMb2NhbGl6YWJsZS5zdHJpbmdzZGljdCAqLywKKwkJCQk5MzE1
M0JFMTE0MTk1QTU3MDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlLnBuZyAqLywKKwkJCQk5MzE1M0JE
OTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdlQDJ4LnBuZyAqLywKKwkJCQlDREY0MTk5
OTFBQjBEQTE0MDA0RTY0RTEgLyogbWlzc2luZ0ltYWdlQDN4LnBuZyAqLywKKwkJCQk3MUExQjYw
NjFERUU1QTgyMDA3M0JDRkIgLyogbW9kZXJuLW1lZGlhLWNvbnRyb2xzLWxvY2FsaXplZC1zdHJp
bmdzLmpzICovLAorCQkJCUExMUU4QzAxMUIxRTI4QkUwMDAzQTdDNyAvKiBtb3ZlQ3Vyc29yLnBu
ZyAqLywKKwkJCQlBMTFFOEMwMjFCMUUyOEJFMDAwM0E3QzcgLyogbm9ydGhFYXN0U291dGhXZXN0
UmVzaXplQ3Vyc29yLnBuZyAqLywKKwkJCQlBMTFFOEMwMzFCMUUyOEJFMDAwM0E3QzcgLyogbm9y
dGhTb3V0aFJlc2l6ZUN1cnNvci5wbmcgKi8sCisJCQkJQTExRThDMDQxQjFFMjhCRTAwMDNBN0M3
IC8qIG5vcnRoV2VzdFNvdXRoRWFzdFJlc2l6ZUN1cnNvci5wbmcgKi8sCisJCQkJNzEzRTcwQUYx
NzMzRThCMzAwQTIyRDAwIC8qIHBsdWdJbnMuanMgKi8sCisJCQkJOTMxNTNCREIxNDE5NTlCQjAw
RkNGNUJFIC8qIHRleHRBcmVhUmVzaXplQ29ybmVyLnBuZyAqLywKKwkJCQk5MzcwOTE4QzE0MTZE
ODZCMDA0NzczMzMgLyogdGV4dEFyZWFSZXNpemVDb3JuZXJAMngucG5nICovLAorCQkJKTsKKwkJ
CXBhdGggPSBSZXNvdXJjZXM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQkJdGFiV2lk
dGggPSA0OworCQkJdXNlc1RhYnMgPSAwOworCQl9OworCQkwRjc5MEYzQzI1MTdDRTZEMDA5QkEw
MzQgLyogZGlzcGxheSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAo
CisJCQkJMEZDNjkyQzMyNTdENzBDQTAwOThFM0Y5IC8qIGNvbXBvc2l0aW5nICovLAorCQkJCTBG
RkYxQjcxMjUxQkM2NTcwMDk4Nzk1QSAvKiBjc3MgKi8sCisJCQkJMEZGMzMxMjkyNkM4QTFFQzAw
RTI3RDQ4IC8qIERpc3BsYXlHZW9tZXRyeVR5cGVzLmggKi8sCisJCQkJMEZGRjFCODIyNTFCQzY2
MzAwOTg3OTVBIC8qIERpc3BsYXlUcmVlLmNwcCAqLywKKwkJCQkwRkZGMUI4MTI1MUJDNjYzMDA5
ODc5NUEgLyogRGlzcGxheVRyZWUuaCAqLywKKwkJCQkwRkZGMUI4MDI1MUJDNjYyMDA5ODc5NUEg
LyogRGlzcGxheVRyZWVCdWlsZGVyLmNwcCAqLywKKwkJCQkwRkZGMUI3RjI1MUJDNjYyMDA5ODc5
NUEgLyogRGlzcGxheVRyZWVCdWlsZGVyLmggKi8sCisJCQkJMEY3OTBGM0QyNTE3Q0U2RDAwOUJB
MDM0IC8qIERpc3BsYXlWaWV3LmNwcCAqLywKKwkJCQkwRjc5MEYzRjI1MTdDRTZEMDA5QkEwMzQg
LyogRGlzcGxheVZpZXcuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gZGlzcGxheTsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTBGQzY5MkMzMjU3RDcwQ0EwMDk4RTNGOSAvKiBj
b21wb3NpdGluZyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJMEZDNjkyQzYyNTdENzBGMzAwOThFM0Y5IC8qIERpc3BsYXlMYXllckNvbnRyb2xsZXIuY3Bw
ICovLAorCQkJCTBGQzY5MkM1MjU3RDcwRjIwMDk4RTNGOSAvKiBEaXNwbGF5TGF5ZXJDb250cm9s
bGVyLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGNvbXBvc2l0aW5nOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMEZFNUZCQzkxQzNERDUwNjAwMDdBMkNBIC8qIGRpc3BsYXls
aXN0cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMEZF
NUZCQ0ExQzNERDUxRTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0LmNwcCAqLywKKwkJCQkwRkU1RkJD
QjFDM0RENTFFMDAwN0EyQ0EgLyogRGlzcGxheUxpc3QuaCAqLywKKwkJCQkxQ0FGNTZEODI1MzAx
NDU3MDAxN0I0NzIgLyogRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXIuaCAqLywKKwkJCQkx
Q0FGNTZERTI1MzAyNDVBMDAxN0I0NzIgLyogRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3JkZXJD
b3JlVGV4dC5jcHAgKi8sCisJCQkJNTVDMEEyOTUyM0ZFMkNFMDAwRjJDQjkzIC8qIERpc3BsYXlM
aXN0RHJhd2luZ0NvbnRleHQuY3BwICovLAorCQkJCTcyRUEwOUY5MjNGQ0NDNkEwMDg1MDRBNSAv
KiBEaXNwbGF5TGlzdERyYXdpbmdDb250ZXh0LmggKi8sCisJCQkJNzI0MkFDOTUyNTc1OEZFMDAw
NUE5Q0YxIC8qIERpc3BsYXlMaXN0Rmx1c2hJZGVudGlmaWVyLmggKi8sCisJCQkJNzJFQTA5Rjcy
M0ZDQ0IzRDAwODUwNEE1IC8qIERpc3BsYXlMaXN0SW1hZ2VCdWZmZXIuaCAqLywKKwkJCQlGNDIy
QjhCNjI1M0Y3MDY1MDA0RTc3RTggLyogRGlzcGxheUxpc3RJdGVtQnVmZmVyLmNwcCAqLywKKwkJ
CQlGNDIyQjhCNTI1M0Y3MDY1MDA0RTc3RTggLyogRGlzcGxheUxpc3RJdGVtQnVmZmVyLmggKi8s
CisJCQkJMUNFOEQxMjUyNjE4NUJEODAwRkMzQUVGIC8qIERpc3BsYXlMaXN0SXRlbUJ1ZmZlcklk
ZW50aWZpZXIuaCAqLywKKwkJCQkwRkU1RkJDQzFDM0RENTFFMDAwN0EyQ0EgLyogRGlzcGxheUxp
c3RJdGVtcy5jcHAgKi8sCisJCQkJMEZFNUZCQ0QxQzNERDUxRTAwMDdBMkNBIC8qIERpc3BsYXlM
aXN0SXRlbXMuaCAqLywKKwkJCQlGNDM3N0Q1NjI1NTFDOUM2MDA4MEFCRkUgLyogRGlzcGxheUxp
c3RJdGVtVHlwZS5jcHAgKi8sCisJCQkJRjQzNzdENTUyNTUxQzlDNjAwODBBQkZFIC8qIERpc3Bs
YXlMaXN0SXRlbVR5cGUuaCAqLywKKwkJCQkxQ0U4RDEyQjI2MTg2MTY0MDBGQzNBRUYgLyogRGlz
cGxheUxpc3RJdGVyYXRvci5jcHAgKi8sCisJCQkJMUNFOEQxMkMyNjE4NjE2NDAwRkMzQUVGIC8q
IERpc3BsYXlMaXN0SXRlcmF0b3IuaCAqLywKKwkJCQkwRkU1RkJDRTFDM0RENTFFMDAwN0EyQ0Eg
LyogRGlzcGxheUxpc3RSZWNvcmRlci5jcHAgKi8sCisJCQkJMEZFNUZCQ0YxQzNERDUxRTAwMDdB
MkNBIC8qIERpc3BsYXlMaXN0UmVjb3JkZXIuaCAqLywKKwkJCQkwRkU1RkJEMDFDM0RENTFFMDAw
N0EyQ0EgLyogRGlzcGxheUxpc3RSZXBsYXllci5jcHAgKi8sCisJCQkJMEZFNUZCRDExQzNERDUx
RTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0UmVwbGF5ZXIuaCAqLywKKwkJCQkxQ0U4ODYzRTI2MTA1
QTVGMDAwQzgxNkMgLyogSW5NZW1vcnlEaXNwbGF5TGlzdC5jcHAgKi8sCisJCQkJMUNFODg2M0Yy
NjEwNUE1RjAwMEM4MTZDIC8qIEluTWVtb3J5RGlzcGxheUxpc3QuaCAqLywKKwkJCSk7CisJCQlw
YXRoID0gZGlzcGxheWxpc3RzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJ
MEZGRjFCNzEyNTFCQzY1NzAwOTg3OTVBIC8qIGNzcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJMEZGRjFCNzIyNTFCQzY1NzAwOTg3OTVBIC8qIERpc3Bs
YXlCb3guY3BwICovLAorCQkJCTBGRkYxQjc4MjUxQkM2NTcwMDk4Nzk1QSAvKiBEaXNwbGF5Qm94
LmggKi8sCisJCQkJMEZCRkNFMjQyNTZDQkQ5QTAwQTBCNDg5IC8qIERpc3BsYXlCb3hDbGlwLmNw
cCAqLywKKwkJCQkwRkJGQ0UyNjI1NkNCRDlBMDBBMEI0ODkgLyogRGlzcGxheUJveENsaXAuaCAq
LywKKwkJCQkwRjk0NzIyQjI1MzRCMDQ1MDBGMTUzQzggLyogRGlzcGxheUJveERlY29yYXRpb25E
YXRhLmNwcCAqLywKKwkJCQkwRjk0NzIyOTI1MzRCMDQ1MDBGMTUzQzggLyogRGlzcGxheUJveERl
Y29yYXRpb25EYXRhLmggKi8sCisJCQkJMEY2MzhFNDYyNTU3MjM3NzAwOTc0NjY4IC8qIERpc3Bs
YXlCb3hEZWNvcmF0aW9uUGFpbnRlci5jcHAgKi8sCisJCQkJMEY2MzhFNDcyNTU3MjM3ODAwOTc0
NjY4IC8qIERpc3BsYXlCb3hEZWNvcmF0aW9uUGFpbnRlci5oICovLAorCQkJCTBGNjU2RkI2MjU0
NTJFNTQwMDIxOUY0QyAvKiBEaXNwbGF5Qm94RmFjdG9yeS5jcHAgKi8sCisJCQkJMEY2NTZGQjUy
NTQ1MkU1NDAwMjE5RjRDIC8qIERpc3BsYXlCb3hGYWN0b3J5LmggKi8sCisJCQkJMEY5NDcyMjAy
NTM0MDEwOTAwRjE1M0M4IC8qIERpc3BsYXlCb3hNb2RlbEJveC5jcHAgKi8sCisJCQkJMEY5NDcy
MUUyNTM0MDEwOTAwRjE1M0M4IC8qIERpc3BsYXlCb3hNb2RlbEJveC5oICovLAorCQkJCTBGNjU2
RkJEMjU0NUZENTcwMDIxOUY0QyAvKiBEaXNwbGF5Qm94UGFpbnRlci5jcHAgKi8sCisJCQkJMEY2
NTZGQkMyNTQ1RkQ1NjAwMjE5RjRDIC8qIERpc3BsYXlCb3hQYWludGVyLmggKi8sCisJCQkJMEYy
ODA4NjMyNTcwMTUxNzAwRkU2QzVBIC8qIERpc3BsYXlCb3hSYXJlR2VvbWV0cnkuY3BwICovLAor
CQkJCTBGMjgwODYxMjU3MDE1MTcwMEZFNkM1QSAvKiBEaXNwbGF5Qm94UmFyZUdlb21ldHJ5Lmgg
Ki8sCisJCQkJMEZGRjFCNzQyNTFCQzY1NzAwOTg3OTVBIC8qIERpc3BsYXlDb250YWluZXJCb3gu
Y3BwICovLAorCQkJCTBGRkYxQjdBMjUxQkM2NTcwMDk4Nzk1QSAvKiBEaXNwbGF5Q29udGFpbmVy
Qm94LmggKi8sCisJCQkJMEZGRjFCN0QyNTFCQzY1NzAwOTg3OTVBIC8qIERpc3BsYXlDU1NQYWlu
dGVyLmNwcCAqLywKKwkJCQkwRkZGMUI3NzI1MUJDNjU3MDA5ODc5NUEgLyogRGlzcGxheUNTU1Bh
aW50ZXIuaCAqLywKKwkJCQkwRjk0NzIyQzI1MzRCQTczMDBGMTUzQzggLyogRGlzcGxheUZpbGxM
YXllckltYWdlR2VvbWV0cnkuY3BwICovLAorCQkJCTBGOTQ3MjJEMjUzNEJBNzMwMEYxNTNDOCAv
KiBEaXNwbGF5RmlsbExheWVySW1hZ2VHZW9tZXRyeS5oICovLAorCQkJCTBGRkYxQjc1MjUxQkM2
NTcwMDk4Nzk1QSAvKiBEaXNwbGF5SW1hZ2VCb3guY3BwICovLAorCQkJCTBGRkYxQjdCMjUxQkM2
NTcwMDk4Nzk1QSAvKiBEaXNwbGF5SW1hZ2VCb3guaCAqLywKKwkJCQkwRjMyQkE0MTI1NEYzMjE2
MDAxQUMzOEUgLyogRGlzcGxheVBhaW50aW5nQ29udGV4dC5oICovLAorCQkJCTBGRkYxQjdDMjUx
QkM2NTcwMDk4Nzk1QSAvKiBEaXNwbGF5UmVwbGFjZWRCb3guY3BwICovLAorCQkJCTBGRkYxQjc5
MjUxQkM2NTcwMDk4Nzk1QSAvKiBEaXNwbGF5UmVwbGFjZWRCb3guaCAqLywKKwkJCQkwRjg2ODJG
QzI1NzA3RjQ3MDBDMDhCQjUgLyogRGlzcGxheVN0YWNraW5nSXRlbS5jcHAgKi8sCisJCQkJMEY4
NjgyRkEyNTcwN0Y0NzAwQzA4QkI1IC8qIERpc3BsYXlTdGFja2luZ0l0ZW0uaCAqLywKKwkJCQkw
RkZGMUI3NjI1MUJDNjU3MDA5ODc5NUEgLyogRGlzcGxheVN0eWxlLmNwcCAqLywKKwkJCQkwRkZG
MUI3MzI1MUJDNjU3MDA5ODc5NUEgLyogRGlzcGxheVN0eWxlLmggKi8sCisJCQkJMEZCMDY4OTQy
NTI0M0I5MDAwMUU4RTc1IC8qIERpc3BsYXlUZXh0Qm94LmNwcCAqLywKKwkJCQkwRkIwNjg5NjI1
MjQzQjkwMDAxRThFNzUgLyogRGlzcGxheVRleHRCb3guaCAqLywKKwkJCSk7CisJCQlwYXRoID0g
Y3NzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMTExRkExQzMyNkYwRjJF
NjAwM0I4RjE2IC8qIGludmFsaWRhdGlvbiAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJMTExRkExQzYyNkYwRjMwRjAwM0I4RjE2IC8qIElubGluZURhbWFn
ZS5oICovLAorCQkJCTExMUZBMUM5MjZGMEY0MzgwMDNCOEYxNiAvKiBJbmxpbmVJbnZhbGlkYXRp
b24uY3BwICovLAorCQkJCTExMUZBMUM1MjZGMEYzMEYwMDNCOEYxNiAvKiBJbmxpbmVJbnZhbGlk
YXRpb24uaCAqLywKKwkJCSk7CisJCQlwYXRoID0gaW52YWxpZGF0aW9uOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMTE1Q0ZBNjYyMDhBRjcyMDAwMUU2OTkxIC8qIGxheW91
dCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNkZDRkMw
NTUyMTJEQUNDMjAwNzY5NUQyIC8qIGZsb2F0cyAqLywKKwkJCQk2Rjg0NEY3RjI2M0Q5MTYxMDBG
OTEzNzAgLyogZm9ybWF0dGluZ0NvbnRleHRzICovLAorCQkJCUU0RkI0QjFFMjM5NTM1NkYwMDND
MzM2QSAvKiBpbnRlZ3JhdGlvbiAqLywKKwkJCQkxMTVDRkE5MDIwOEI5NDQxMDAxRTY5OTEgLyog
bGF5b3V0dHJlZSAqLywKKwkJCQkxMTVDRkE3NTIwOEFGRTMwMDAxRTY5OTEgLyogRm9ybWF0dGlu
Z1N0YXRlLmNwcCAqLywKKwkJCQkxMTVDRkE3NDIwOEFGRTMwMDAxRTY5OTEgLyogRm9ybWF0dGlu
Z1N0YXRlLmggKi8sCisJCQkJNkYyNkJCNjkyMzM0M0U1QTAwMkYyQkVBIC8qIExheW91dENvbnRl
eHQuY3BwICovLAorCQkJCTZGMjZCQjZCMjMzNDNFNUIwMDJGMkJFQSAvKiBMYXlvdXRDb250ZXh0
LmggKi8sCisJCQkJNkY0QTVCRDUyMkY5RjE2QjAwQTgwRjI1IC8qIExheW91dFBoYXNlLmNwcCAq
LywKKwkJCQk2RkVGRTgxRDIyRjlEMjJBMDAxMTQ5MjcgLyogTGF5b3V0UGhhc2UuaCAqLywKKwkJ
CQk2RjdDQTNDNTIwOEMyOTU2MDAyRjI5QUIgLyogTGF5b3V0U3RhdGUuY3BwICovLAorCQkJCTZG
N0NBM0M0MjA4QzI5NTYwMDJGMjlBQiAvKiBMYXlvdXRTdGF0ZS5oICovLAorCQkJCTExNUNBODMw
MjMzMjhCMUUwMEZEM0IwOCAvKiBMYXlvdXRVbml0cy5jcHAgKi8sCisJCQkJNkY3MzkxOEMyMTA2
Q0VERDAwNkFGMjYyIC8qIExheW91dFVuaXRzLmggKi8sCisJCQkJNkZFN0FBMjYyMUMzN0I2MzAw
Mjk2RENEIC8qIE1hcmdpblR5cGVzLmggKi8sCisJCQkJMTFGRjAyRDUyMEJBM0M4MTAwODNGMjVC
IC8qIFZlcmlmaWNhdGlvbi5jcHAgKi8sCisJCQkpOworCQkJcGF0aCA9IGxheW91dDsKKwkJCXNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTExNUNGQTkwMjA4Qjk0NDEwMDFFNjk5MSAv
KiBsYXlvdXR0cmVlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgK
KwkJCQkxMTVDRkE5NjIwOEI5NTJCMDAxRTY5OTEgLyogTGF5b3V0Qm94LmNwcCAqLywKKwkJCQkx
MTVDRkE5NTIwOEI5NTJCMDAxRTY5OTEgLyogTGF5b3V0Qm94LmggKi8sCisJCQkJMEZGMjlBNTUy
NTEwMUE2MTAwM0MzNEUyIC8qIExheW91dEJveEdlb21ldHJ5LmNwcCAqLywKKwkJCQkwRkYyOUE1
MzI1MTAxQTYxMDAzQzM0RTIgLyogTGF5b3V0Qm94R2VvbWV0cnkuaCAqLywKKwkJCQkxMTEwMEZD
OTIwOTI3Q0JDMDA4MUFBNkMgLyogTGF5b3V0Q2hpbGRJdGVyYXRvci5oICovLAorCQkJCTExOTlG
QTQ1MjA4RTM1QTMwMDIzNThDQyAvKiBMYXlvdXRDb250YWluZXJCb3guY3BwICovLAorCQkJCTEx
OTlGQTQ0MjA4RTM1QTMwMDIzNThDQyAvKiBMYXlvdXRDb250YWluZXJCb3guaCAqLywKKwkJCQk2
RkNCREI5NTI2NURGMkM3MDAyMUVBN0IgLyogTGF5b3V0Q29udGFpbmluZ0Jsb2NrQ2hhaW5JdGVy
YXRvci5oICovLAorCQkJCTExQjA0MkZCMjBCMEUyMTQwMDgyOEE2QiAvKiBMYXlvdXREZXNjZW5k
YW50SXRlcmF0b3IuaCAqLywKKwkJCQk2RkQwOTU0MTI1MTExNTIyMDA5ODg3N0QgLyogTGF5b3V0
R2VvbWV0cnlSZWN0LmggKi8sCisJCQkJNkZCMEVEMTEyNDI3QjZDNjAwMjczN0U2IC8qIExheW91
dEluaXRpYWxDb250YWluaW5nQmxvY2suY3BwICovLAorCQkJCTZGNjM4M0Y0MjQyN0FGNDkwMERB
QkE1MyAvKiBMYXlvdXRJbml0aWFsQ29udGFpbmluZ0Jsb2NrLmggKi8sCisJCQkJNkYwQjk4QjYy
M0YyNjkwNjAwRUVDMkYyIC8qIExheW91dElubGluZVRleHRCb3guY3BwICovLAorCQkJCTZGMEI5
OEIzMjNGMjY4RUIwMEVFQzJGMiAvKiBMYXlvdXRJbmxpbmVUZXh0Qm94LmggKi8sCisJCQkJMTEx
MDBGQzcyMDkyNzY0QzAwODFBQTZDIC8qIExheW91dEl0ZXJhdG9yLmggKi8sCisJCQkJNkZGQTRC
RkUyM0YyRkVDRDAwN0U0RUJDIC8qIExheW91dExpbmVCcmVha0JveC5jcHAgKi8sCisJCQkJNkZG
QTRDMDAyM0YyRkVEOTAwN0U0RUJDIC8qIExheW91dExpbmVCcmVha0JveC5oICovLAorCQkJCTEx
MUM2MTU3MjBBRDFBRTEwMDVCODJGQSAvKiBMYXlvdXRSZXBsYWNlZEJveC5jcHAgKi8sCisJCQkJ
MTExQzYxNTYyMEFEMUFFMTAwNUI4MkZBIC8qIExheW91dFJlcGxhY2VkQm94LmggKi8sCisJCQkJ
MTExMDBGRDUyMDk1MTRERTAwODFBQTZDIC8qIExheW91dFRyZWVCdWlsZGVyLmNwcCAqLywKKwkJ
CQkxMTEwMEZENzIwOTUxNERGMDA4MUFBNkMgLyogTGF5b3V0VHJlZUJ1aWxkZXIuaCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gbGF5b3V0dHJlZTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCTExNUNGQTk5MjA4QkMwOUEwMDFFNjk5MSAvKiBibG9jayAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNkZENEZFM0UyNDcwQjNBRDAwNzM3NEND
IC8qIHRhYmxld3JhcHBlciAqLywKKwkJCQkxMTVDRkE2RDIwOEFGQUI2MDAxRTY5OTEgLyogQmxv
Y2tGb3JtYXR0aW5nQ29udGV4dC5jcHAgKi8sCisJCQkJMTE1Q0ZBNkMyMDhBRkFCNjAwMUU2OTkx
IC8qIEJsb2NrRm9ybWF0dGluZ0NvbnRleHQuaCAqLywKKwkJCQk2RjA4MzBERjIwQjQ2OTUxMDA4
QTk0NUIgLyogQmxvY2tGb3JtYXR0aW5nR2VvbWV0cnkuY3BwICovLAorCQkJCTQ3ODYzNTY0MjY1
MDdBMzcwMEM1RTJFMCAvKiBCbG9ja0Zvcm1hdHRpbmdHZW9tZXRyeS5oICovLAorCQkJCTZGOEY0
NjAzMjFCMDNCQzYwMDQxQUMzQSAvKiBCbG9ja0Zvcm1hdHRpbmdRdWlya3MuY3BwICovLAorCQkJ
CTQ3Rjk0N0RBMjY1MDJGMkYwMDg3OTY4QyAvKiBCbG9ja0Zvcm1hdHRpbmdRdWlya3MuaCAqLywK
KwkJCQkxMTVDRkE3OTIwOEI4RDlEMDAxRTY5OTEgLyogQmxvY2tGb3JtYXR0aW5nU3RhdGUuY3Bw
ICovLAorCQkJCTExNUNGQTc4MjA4QjhEOUQwMDFFNjk5MSAvKiBCbG9ja0Zvcm1hdHRpbmdTdGF0
ZS5oICovLAorCQkJCTExNUNGQTg5MjA4QjkyMUEwMDFFNjk5MSAvKiBCbG9ja01hcmdpbkNvbGxh
cHNlLmNwcCAqLywKKwkJCQk2RjZERjM2RTI2NDcyMkVBMDA5M0U4MzQgLyogQmxvY2tNYXJnaW5D
b2xsYXBzZS5oICovLAorCQkJCTZGQUUxNkJBMjQwNkRFN0UwMEE0ODQxNCAvKiBQcmVjb21wdXRl
ZEJsb2NrTWFyZ2luQ29sbGFwc2UuY3BwICovLAorCQkJKTsKKwkJCXBhdGggPSBibG9jazsKKwkJ
CXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTExNUNGQTlBMjA4QkMxNDAwMDFFNjk5
MSAvKiBpbmxpbmUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCTExMUZBMUMzMjZGMEYyRTYwMDNCOEYxNiAvKiBpbnZhbGlkYXRpb24gKi8sCisJCQkJNkZF
N0REREQyMEVDNkU4QjAwOEI1QjRFIC8qIHRleHQgKi8sCisJCQkJNkZFMTk4MTMyMTc4Mzk3QjAw
NDQ2RjA4IC8qIElubGluZUNvbnRlbnRCcmVha2VyLmNwcCAqLywKKwkJCQk2RkUxOTgxNTIxNzgz
OTdDMDA0NDZGMDggLyogSW5saW5lQ29udGVudEJyZWFrZXIuaCAqLywKKwkJCQkxMTUxM0QwMDI2
RDk4MUREMDA0RDNGQUEgLyogSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmNwcCAqLywKKwkJ
CQkxMTUxM0QwMjI2RDk4MUU3MDA0RDNGQUEgLyogSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVy
LmggKi8sCisJCQkJNkY3Q0EzQzkyMDhDMkIyRTAwMkYyOUFCIC8qIElubGluZUZvcm1hdHRpbmdD
b250ZXh0LmNwcCAqLywKKwkJCQk2RjdDQTNDODIwOEMyQjJFMDAyRjI5QUIgLyogSW5saW5lRm9y
bWF0dGluZ0NvbnRleHQuaCAqLywKKwkJCQk2RjM1RUZBRjIxODdDQkQ1MDA0NEUwRjQgLyogSW5s
aW5lRm9ybWF0dGluZ0dlb21ldHJ5LmNwcCAqLywKKwkJCQk0N0M0RDU3QzI2NTA4QkNBMDBDN0FC
MUYgLyogSW5saW5lRm9ybWF0dGluZ0dlb21ldHJ5LmggKi8sCisJCQkJNkYxMEIwODYyMkI4NTY4
RDAwOTBFNjlDIC8qIElubGluZUZvcm1hdHRpbmdRdWlya3MuY3BwICovLAorCQkJCTZGRTYzNkU3
MjY0Nzk2MjkwMEYwOTUxRSAvKiBJbmxpbmVGb3JtYXR0aW5nUXVpcmtzLmggKi8sCisJCQkJMTE1
Q0ZBN0QyMDhCOEUxMDAwMUU2OTkxIC8qIElubGluZUZvcm1hdHRpbmdTdGF0ZS5jcHAgKi8sCisJ
CQkJMTE1Q0ZBN0MyMDhCOEUxMDAwMUU2OTkxIC8qIElubGluZUZvcm1hdHRpbmdTdGF0ZS5oICov
LAorCQkJCTZGN0I4Q0VDMjM2MjZFNjYwMEM5RkYxNSAvKiBJbmxpbmVJdGVtLmNwcCAqLywKKwkJ
CQk2RkU3Q0ZBMDIxNzdFRUYxMDA1QjE1NzMgLyogSW5saW5lSXRlbS5oICovLAorCQkJCTZGQUFF
NzExMjZBMjgxNEEwMEUwNzUwMiAvKiBJbmxpbmVMZXZlbEJveC5oICovLAorCQkJCTZGMENENjky
MjI5RUQzMTkwMEM1OTk0RSAvKiBJbmxpbmVMaW5lLmNwcCAqLywKKwkJCQk2RjBDRDY5NDIyOUVE
MzI3MDBDNTk5NEUgLyogSW5saW5lTGluZS5oICovLAorCQkJCTZGNjlBNzk5MjRENkZBQjgwMEU2
Qjg1RCAvKiBJbmxpbmVMaW5lQm94LmNwcCAqLywKKwkJCQk2RkIyNDAwMzIzREZGMTI3MDA3OTY0
NTggLyogSW5saW5lTGluZUJveC5oICovLAorCQkJCTExQzMyMjdBMjZEOTU4QjUwMDMyOEY0RCAv
KiBJbmxpbmVMaW5lQm94QnVpbGRlci5jcHAgKi8sCisJCQkJMTFDMzIyN0MyNkQ5NThDRTAwMzI4
RjREIC8qIElubGluZUxpbmVCb3hCdWlsZGVyLmggKi8sCisJCQkJNkY2RUU3NDQyNkQ0NEYwMzAw
Mzc0Q0RBIC8qIElubGluZUxpbmVCb3hWZXJ0aWNhbEFsaWduZXIuY3BwICovLAorCQkJCTZGNkVF
NzQxMjZENDRFRTIwMDM3NENEQSAvKiBJbmxpbmVMaW5lQm94VmVydGljYWxBbGlnbmVyLmggKi8s
CisJCQkJNkYyNUIyMDAyMjBBODVBQjAwMDAwMTFCIC8qIElubGluZUxpbmVCdWlsZGVyLmNwcCAq
LywKKwkJCQk2RjI2RUI0NjIzNDAwNEE1MDA2OTA2RTIgLyogSW5saW5lTGluZUJ1aWxkZXIuaCAq
LywKKwkJCQk2RjkxNDIwRjI1MTUyMTM3MDA0RTRGRUEgLyogSW5saW5lTGluZUdlb21ldHJ5Lmgg
Ki8sCisJCQkJNkZDM0Y5NDUyNTE2NzU2NjAwQTQ5QkVBIC8qIElubGluZUxpbmVSdW4uaCAqLywK
KwkJCQk2RjQwREE4MTI1MTMwMzNBMDBFQzA0QjcgLyogSW5saW5lUmVjdC5oICovLAorCQkJCTZG
MzYwRTRFMjM5OTk0MjAwMDE1MTJBNyAvKiBJbmxpbmVTb2Z0TGluZUJyZWFrSXRlbS5oICovLAor
CQkJCTZGMUNDMURDMjI1RjhCNDEwMDcyMEFEMiAvKiBJbmxpbmVUZXh0SXRlbS5jcHAgKi8sCisJ
CQkJNkYxQ0MxREQyMjVGOEI0MjAwNzIwQUQyIC8qIElubGluZVRleHRJdGVtLmggKi8sCisJCQkp
OworCQkJcGF0aCA9IGlubGluZTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTEyMjFFMDU4MUMwMkI0MDkwMDZBMUEwMCAvKiBBbmltYXRpb24gKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTcxNEM3QzY5MUZEQURBRDUwMEYyQkVFMSAv
KiBKU0FuaW1hdGlvblBsYXliYWNrRXZlbnQuY3BwICovLAorCQkJCTcxNEM3QzZBMUZEQURBRDUw
MEYyQkVFMSAvKiBKU0FuaW1hdGlvblBsYXliYWNrRXZlbnQuaCAqLywKKwkJCQk3MTRDN0M2ODFG
REFEQUQ0MDBGMkJFRTEgLyogSlNBbmltYXRpb25QbGF5YmFja0V2ZW50SW5pdC5jcHAgKi8sCisJ
CQkJNzE0QzdDNkIxRkRBREFENTAwRjJCRUUxIC8qIEpTQW5pbWF0aW9uUGxheWJhY2tFdmVudElu
aXQuaCAqLywKKwkJCQk3MTAyNUVEQTFGOTlGMUE3MDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1l
bGluZS5jcHAgKi8sCisJCQkJNzEwMjVFRDkxRjk5RjFBNzAwNEEyNTBDIC8qIEpTQW5pbWF0aW9u
VGltZWxpbmUuaCAqLywKKwkJCQk3MTI0N0UyQjFGRUE1RjYzMDA4QzA4Q0UgLyogSlNDb21wb3Np
dGVPcGVyYXRpb24uY3BwICovLAorCQkJCTcxMjQ3RTJFMUZFQTVGNjYwMDhDMDhDRSAvKiBKU0Nv
bXBvc2l0ZU9wZXJhdGlvbi5oICovLAorCQkJCTcxMTEyNDNGMjE2RkE3QkUwMEVCN0I2NyAvKiBK
U0NvbXBvc2l0ZU9wZXJhdGlvbk9yQXV0by5jcHAgKi8sCisJCQkJNzExMTI0NDAyMTZGQTdCRTAw
RUI3QjY3IC8qIEpTQ29tcG9zaXRlT3BlcmF0aW9uT3JBdXRvLmggKi8sCisJCQkJNzExNkUyQ0Qx
RkVENzY1MjAwQzA2RkRFIC8qIEpTQ29tcHV0ZWRFZmZlY3RUaW1pbmcuY3BwICovLAorCQkJCTcx
MTZFMkNFMUZFRDc2NTIwMEMwNkZERSAvKiBKU0NvbXB1dGVkRWZmZWN0VGltaW5nLmggKi8sCisJ
CQkJNzFCMjg0MjQyMDNDRUMwQjAwMzZBQTVEIC8qIEpTQ1NTQW5pbWF0aW9uLmNwcCAqLywKKwkJ
CQk3MUIyODQyNjIwM0NFQzBEMDAzNkFBNUQgLyogSlNDU1NBbmltYXRpb24uaCAqLywKKwkJCQk3
MTIzQzE4MjIwNDczOTkyMDA3ODkzOTIgLyogSlNDU1NUcmFuc2l0aW9uLmNwcCAqLywKKwkJCQk3
MTIzQzE4NDIwNDczOTkzMDA3ODkzOTIgLyogSlNDU1NUcmFuc2l0aW9uLmggKi8sCisJCQkJNzEw
MjVFREIxRjk5RjFBODAwNEEyNTBDIC8qIEpTRG9jdW1lbnRUaW1lbGluZS5jcHAgKi8sCisJCQkJ
NzEwMjVFREMxRjk5RjFBODAwNEEyNTBDIC8qIEpTRG9jdW1lbnRUaW1lbGluZS5oICovLAorCQkJ
CTcxNzI5RjdEMjBGM0JBQkEwMDgwMUNFNiAvKiBKU0RvY3VtZW50VGltZWxpbmVPcHRpb25zLmNw
cCAqLywKKwkJCQk3MTcyOUY3QzIwRjNCQUI5MDA4MDFDRTYgLyogSlNEb2N1bWVudFRpbWVsaW5l
T3B0aW9ucy5oICovLAorCQkJCTcxNDk1REQ4MjAyQjA2REMwMEFERkQzNCAvKiBKU0VmZmVjdFRp
bWluZy5jcHAgKi8sCisJCQkJNzE0OTVEREEyMDJCMDZERTAwQURGRDM0IC8qIEpTRWZmZWN0VGlt
aW5nLmggKi8sCisJCQkJNzEyQkU0ODQxRkU4NjdDMjAwMjAzMUNDIC8qIEpTRmlsbE1vZGUuY3Bw
ICovLAorCQkJCTcxMkJFNDg1MUZFODY4MTgwMDIwMzFDQyAvKiBKU0ZpbGxNb2RlLmggKi8sCisJ
CQkJNzEzRjFENUMyM0RGMjU2MDAwM0Y1RUZBIC8qIEpTR2V0QW5pbWF0aW9uc09wdGlvbnMuY3Bw
ICovLAorCQkJCTcxM0YxRDVCMjNERjI1NjAwMDNGNUVGQSAvKiBKU0dldEFuaW1hdGlvbnNPcHRp
b25zLmggKi8sCisJCQkJNzEyNDdFMjgxRkVBNUY2MTAwOEMwOENFIC8qIEpTSXRlcmF0aW9uQ29t
cG9zaXRlT3BlcmF0aW9uLmNwcCAqLywKKwkJCQk3MTI0N0UyQzFGRUE1RjY0MDA4QzA4Q0UgLyog
SlNJdGVyYXRpb25Db21wb3NpdGVPcGVyYXRpb24uaCAqLywKKwkJCQk3MTI0N0UyOTFGRUE1RjYy
MDA4QzA4Q0UgLyogSlNLZXlmcmFtZUFuaW1hdGlvbk9wdGlvbnMuY3BwICovLAorCQkJCTcxMjQ3
RTI2MUZFQTVGNjAwMDhDMDhDRSAvKiBKU0tleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5oICovLAor
CQkJCTcxNTU2Q0I2MUY5RjA5RkMwMEU3OEQwOCAvKiBKU0tleWZyYW1lRWZmZWN0LmNwcCAqLywK
KwkJCQk3MTU1NkNCNzFGOUYwOUZDMDBFNzhEMDggLyogSlNLZXlmcmFtZUVmZmVjdC5oICovLAor
CQkJCTcxMjQ3RTJEMUZFQTVGNjUwMDhDMDhDRSAvKiBKU0tleWZyYW1lRWZmZWN0T3B0aW9ucy5j
cHAgKi8sCisJCQkJNzEyNDdFMkExRkVBNUY2MjAwOEMwOENFIC8qIEpTS2V5ZnJhbWVFZmZlY3RP
cHRpb25zLmggKi8sCisJCQkJNzEyMDczNDIyMTZERkIzMTAwQzc4MzI5IC8qIEpTT3B0aW9uYWxF
ZmZlY3RUaW1pbmcuY3BwICovLAorCQkJCTcxMjA3MzQxMjE2REZCMzEwMEM3ODMyOSAvKiBKU09w
dGlvbmFsRWZmZWN0VGltaW5nLmggKi8sCisJCQkJNzEyQkU0ODcxRkU4Njg1QTAwMjAzMUNDIC8q
IEpTUGxheWJhY2tEaXJlY3Rpb24uY3BwICovLAorCQkJCTcxMkJFNDg2MUZFODY4NTkwMDIwMzFD
QyAvKiBKU1BsYXliYWNrRGlyZWN0aW9uLmggKi8sCisJCQkJNzEwMjVFRDcxRjk5RjFBNjAwNEEy
NTBDIC8qIEpTV2ViQW5pbWF0aW9uLmNwcCAqLywKKwkJCQk3MTAyNUVEODFGOTlGMUE2MDA0QTI1
MEMgLyogSlNXZWJBbmltYXRpb24uaCAqLywKKwkJCSk7CisJCQluYW1lID0gQW5pbWF0aW9uOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMTRERkIzM0YwQTdERjc2MzAwMThG
NzY5IC8qIERlcml2ZWQgU291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJMTIyMUUwNTgxQzAyQjQwOTAwNkExQTAwIC8qIEFuaW1hdGlvbiAqLywK
KwkJCQkxQUU5NkE3OTFEMUEwQTVDMDBCODY3NjggLyogQXBwbGVQYXkgKi8sCisJCQkJNDFGQjI3
ODgxRjM0NDYxQjAwNzk1NDg4IC8qIENhY2hlQVBJICovLAorCQkJCUY0NDBFNzY5MjMzRDkzNjIw
MDYzRjlBQiAvKiBDbGlwYm9hcmQgKi8sCisJCQkJQTgzQjc5MTAwQ0NCMDAxQjAwMEIwODI1IC8q
IENvcmUgKi8sCisJCQkJNTdDN0E2OEQxRTU2OUE4NDAwQzY3RDcxIC8qIENyZWRlbnRpYWxNYW5h
Z2VtZW50ICovLAorCQkJCUUxRkY4RjYxMTgwNzQ1QzYwMDEzMjY3NCAvKiBDcnlwdG8gKi8sCisJ
CQkJQTgzQjc5MEUwQ0NBRkY5NzAwMEIwODI1IC8qIENTUyAqLywKKwkJCQk1Q0U1RDlBNjFEQjg5
OUE4MDBDRTdBOEQgLyogRW5jb2RpbmcgKi8sCisJCQkJQ0RBOThEQ0QxNjAxNTE1QzAwRkVBM0Ix
IC8qIEVuY3J5cHRlZE1lZGlhICovLAorCQkJCTgzRkIzMzc3MUY1MDhDQjUwMDk4NkU1NCAvKiBF
bnRyaWVzQVBJICovLAorCQkJCUE4M0I3OTEyMENDQjAwM0YwMDBCMDgyNSAvKiBFdmVudHMgKi8s
CisJCQkJNDJBMDIzRkExQTM5RjEzQTAwRjcyMkNGIC8qIEZldGNoQVBJICovLAorCQkJCTg5ODc4
NTc2MTIyQ0ExREEwMDNBQUJEQSAvKiBGaWxlQVBJICovLAorCQkJCTUxOEY0RkZDMTk0Q0FCRTMw
MDgxQkFBRSAvKiBHYW1lcGFkICovLAorCQkJCTdDMzMwQTA0MURGOUY5M0IwMEQzMzk1QyAvKiBH
ZW9sb2NhdGlvbiAqLywKKwkJCQlBODNCNzkwODBDQ0FGRjJCMDAwQjA4MjUgLyogSFRNTCAqLywK
KwkJCQkxQzVGQUVDQTBEQ0ZEOEM5MDBENThGNzggLyogSW5zcGVjdG9yICovLAorCQkJCUFBQ0M4
M0Q5MjMxNjU3ODYwMEVCNkJGNSAvKiBNQVRITUwgKi8sCisJCQkJQ0Q0RTRFNkEyMzU3QjUyNjAw
Nzg5NUMzIC8qIE1lZGlhQ2FwYWJpbGl0aWVzICovLAorCQkJCUNEQUI2RDJBMTdDN0U5N0QwMEM2
MEIzNCAvKiBNZWRpYUNvbnRyb2xzICovLAorCQkJCUNERERFQTNEMjUzOTExOUMwMEExMzAwQyAv
KiBNZWRpYVNlc3Npb24gKi8sCisJCQkJQ0Q2MUZFN0IxNzk0Q0EwMjAwNDEwMUVCIC8qIE1lZGlh
U291cmNlICovLAorCQkJCTA3Q0ZEOTkzMTdEMDE0MDUwMDFDNEZGQyAvKiBNZWRpYVN0cmVhbSAq
LywKKwkJCQkzMzUwM0M5QzEwMTc5QTlBMDAzQjQ3RTEgLyogTm90aWZpY2F0aW9ucyAqLywKKwkJ
CQkxQUMyMjYwMjBEQjY5RUE3MDA4OUI2NjkgLyogT2ZmbGluZSAqLywKKwkJCQlBMUNDNTY0QTFG
NDYxM0JCMDBBNDU1NUIgLyogUGF5bWVudFJlcXVlc3QgKi8sCisJCQkJMUQwMDI2OUEyMzc0QjlG
ODAwQ0E2Q0RGIC8qIFBpY3R1cmVJblBpY3R1cmUgKi8sCisJCQkJQTlEMjQ3RjkwRDc1N0U0MTAw
RkRGOTU5IC8qIFBsdWdpbnMgKi8sCisJCQkJQkM5ODU0NDYwQ0QzREE1RjAwMDY5QkMxIC8qIFJh
bmdlcyAqLywKKwkJCQlDRDhDNkMyNDIyRkREQTY0MDBBNzIwQUIgLyogUmVtb3RlUGxheWJhY2sg
Ki8sCisJCQkJNTE4MkMyNEMxRjMxNDIwOTAwNTlCQTdDIC8qIFNlcnZpY2VXb3JrZXJzICovLAor
CQkJCUFBN0ZFRTlCMTZBNDkxQTEwMDRDMEMzMyAvKiBTcGVlY2ggKi8sCisJCQkJQTgzQjc5MTUw
Q0NCMDA3ODAwMEIwODI1IC8qIFN0b3JhZ2UgKi8sCisJCQkJNDFBMDIzRkExQTM5RjEzQTAwRjcy
MkNGIC8qIFN0cmVhbXMgKi8sCisJCQkJQTgzQjc5MEEwQ0NBRkY0NzAwMEIwODI1IC8qIFNWRyAq
LywKKwkJCQk0MTdEQTcxMjEzNzM1RDkwMDA3QzU3RkIgLyogVGVzdGluZyAqLywKKwkJCQlFMUM4
QkU0QjBFOEJEMEQxMDA2NENCN0QgLyogVGhyZWFkcyAqLywKKwkJCQlCQzk4NTQ1MzBDRDNEQThG
MDAwNjlCQzEgLyogVHJhdmVyc2FsICovLAorCQkJCUZEQTE1RTdCMTJCMDNFMDQwMDNBNTgzQSAv
KiBXZWJBdWRpbyAqLywKKwkJCQk1N0Q4NDYyRjFGRUFGQjA1MDBDQTM2ODIgLyogV2ViQXV0aE4g
Ki8sCisJCQkJNURBNUUwRjkxMDJCOTUwNDAwMDg4Q0Y5IC8qIFdlYlNvY2tldHMgKi8sCisJCQkJ
QkM5ODU0NDMwQ0QzRDlEMDAwMDY5QkMxIC8qIFdpbmRvdyAqLywKKwkJCQlBODNCNzkyMjBDQ0Iw
MEYwMDAwQjA4MjUgLyogWE1MICovLAorCQkJCUE4M0I3OTBDMENDQUZGODMwMDBCMDgyNSAvKiBY
UGF0aCAqLywKKwkJCQkwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpT
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQlCQzM0OEJEMTBEQjdGODA0MDA0
QUJBQkIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5jcHAgKi8sCisJCQkJQkMzNDhCRDIw
REI3RjgwNDAwNEFCQUJCIC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCAqLywKKwkJCQlC
QzM0OEJEMTBEQjdGODA0MDA0QUJBQkEgLyogV2ViQ29yZUpTQnVpbHRpbnMuY3BwICovLAorCQkJ
CUJDMzQ4QkQyMERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJDb3JlSlNCdWlsdGlucy5oICovLAorCQkJ
KTsKKwkJCW5hbWUgPSAiRGVyaXZlZCBTb3VyY2VzIjsKKwkJCXBhdGggPSBEZXJpdmVkU291cmNl
cy9XZWJDb3JlOworCQkJc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsKKwkJfTsKKwkJ
MThBNkNENkYwRDhGMjAyNTAwMURDM0NFIC8qIGlvcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJNkZFOUYwOTIyMjIxMTAzNTAwNEM1MDgyIC8qIENvbnRl
bnRDaGFuZ2VPYnNlcnZlci5jcHAgKi8sCisJCQkJNkZCNUUyMTIyMjFGMjQ0NzAwMzk4OUNGIC8q
IENvbnRlbnRDaGFuZ2VPYnNlcnZlci5oICovLAorCQkJCUNFMUE1MDFFMjJENTM1MDkwMENCQzky
NyAvKiBET01UaW1lckhvbGRpbmdUYW5rLmNwcCAqLywKKwkJCQlDRTFBNTAxRDIyRDUzNTA5MDBD
QkM5MjcgLyogRE9NVGltZXJIb2xkaW5nVGFuay5oICovLAorCQkJCUZFNjkzOEI1MTA0NUQ2N0Uw
MDhFQUJCNiAvKiBFdmVudEhhbmRsZXJJT1MubW0gKi8sCisJCQkJRkVEMTNEM0IwQ0VBOTM2QTAw
RDg5NDY2IC8qIEZyYW1lSU9TLm1tICovLAorCQkJCTIyNUExNkIzMEQ1QzExRTkwMDA5MDI5NSAv
KiBXZWJFdmVudFJlZ2lvbi5oICovLAorCQkJCTIyNUExNkI0MEQ1QzExRTkwMDA5MDI5NSAvKiBX
ZWJFdmVudFJlZ2lvbi5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0gaW9zOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUEyRTZFNTYwQ0M1NTFFMDAwNEEyMDYyIC8qIHNxbCAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUEyRTZFNzgw
Q0M1NTZENTAwNEEyMDYyIC8qIFNRTGl0ZUF1dGhvcml6ZXIuY3BwICovLAorCQkJCTFBMjI0NjQz
MENDOThEREIwMEMwNTI0MCAvKiBTUUxpdGVEYXRhYmFzZS5jcHAgKi8sCisJCQkJMUEyMjQ2NDQw
Q0M5OEREQjAwQzA1MjQwIC8qIFNRTGl0ZURhdGFiYXNlLmggKi8sCisJCQkJN0U0NzRFMUQxMjQ5
NERDOTAwMjM1MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJhY2tlci5jcHAgKi8sCisJCQkJN0U0NzRF
MUMxMjQ5NERDOTAwMjM1MzY0IC8qIFNRTGl0ZURhdGFiYXNlVHJhY2tlci5oICovLAorCQkJCTdF
NDc0RTFCMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRyYWNrZXJDbGllbnQuaCAq
LywKKwkJCQlCNUE2ODQyMzBGRkFCRUFBMDBEMjQ2ODkgLyogU1FMaXRlRmlsZVN5c3RlbS5jcHAg
Ki8sCisJCQkJQjVBNjg0MjEwRkZBQkU5ODAwRDI0Njg5IC8qIFNRTGl0ZUZpbGVTeXN0ZW0uaCAq
LywKKwkJCQkxQTIyNDY0NTBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlU3RhdGVtZW50LmNwcCAq
LywKKwkJCQkxQTIyNDY0NjBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlU3RhdGVtZW50LmggKi8s
CisJCQkJRUJFNUIyMjcyNDVBMjlDRjAwM0E1QTg4IC8qIFNRTGl0ZVN0YXRlbWVudEF1dG9SZXNl
dFNjb3BlLmNwcCAqLywKKwkJCQlFQkU1QjIyNDI0NUEyNkVFMDAzQTVBODggLyogU1FMaXRlU3Rh
dGVtZW50QXV0b1Jlc2V0U2NvcGUuaCAqLywKKwkJCQkxQTIyNDY0NzBDQzk4RERCMDBDMDUyNDAg
LyogU1FMaXRlVHJhbnNhY3Rpb24uY3BwICovLAorCQkJCTFBMjI0NjQ4MENDOThEREIwMEMwNTI0
MCAvKiBTUUxpdGVUcmFuc2FjdGlvbi5oICovLAorCQkJCTFBMkU2RTU4MENDNTUyMTMwMDRBMjA2
MiAvKiBTUUxWYWx1ZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBzcWw7CisJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOworCQl9OworCQkxQTU2OUNDNDBEN0UyQjYwMDA3QzM5ODMgLyogYnJpZGdl
ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkxQTU2OUND
NTBEN0UyQjgyMDA3QzM5ODMgLyogYyAqLywKKwkJCQk1OUI1OTc3MTExMDg2NTU2MDA3MTU5RTgg
LyoganNjICovLAorCQkJCTFBNTY5Q0UyMEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjICovLAorCQkJ
CTU5OUU3NThGMTEwNTVBMUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCAqLywKKwkJCQkxQTcxRDU3OTBG
MzM4MTkwMDBGOUNFNEUgLyogSWRlbnRpZmllclJlcC5jcHAgKi8sCisJCQkJMUE3MUQ1N0EwRjMz
ODE5MDAwRjlDRTRFIC8qIElkZW50aWZpZXJSZXAuaCAqLywKKwkJCQkxQTU2OUNEQTBEN0UyQjgy
MDA3QzM5ODMgLyogTlBfanNvYmplY3QuY3BwICovLAorCQkJCTFBNTY5Q0RCMEQ3RTJCODIwMDdD
Mzk4MyAvKiBOUF9qc29iamVjdC5oICovLAorCQkJCTFBNTY5Q0REMEQ3RTJCODIwMDdDMzk4MyAv
KiBucHJ1bnRpbWUuY3BwICovLAorCQkJCTFBNTY5Q0RGMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1
bnRpbWVfaW1wbC5oICovLAorCQkJCTFBNTY5Q0UwMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1bnRp
bWVfaW50ZXJuYWwuaCAqLywKKwkJCQkxQTU2OUNFMTBEN0UyQjgyMDA3QzM5ODMgLyogbnBydW50
aW1lX3ByaXYuaCAqLywKKwkJCQkxQTU2OUNFRjBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9h
cnJheS5jcHAgKi8sCisJCQkJMUE1NjlDRjAwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfYXJy
YXkuaCAqLywKKwkJCQkxQTU2OUNGMTBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9tZXRob2Qu
Y3BwICovLAorCQkJCTFBNTY5Q0YyMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1lX21ldGhvZC5o
ICovLAorCQkJCTFBNTY5Q0YzMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1lX29iamVjdC5jcHAg
Ki8sCisJCQkJMUE1NjlDRjQwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfb2JqZWN0LmggKi8s
CisJCQkJMUE1NjlDRjUwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfcm9vdC5jcHAgKi8sCisJ
CQkJMUE1NjlDRjYwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfcm9vdC5oICovLAorCQkJKTsK
KwkJCXBhdGggPSBicmlkZ2U7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQkx
QTU2OUNDNTBEN0UyQjgyMDA3QzM5ODMgLyogYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOwor
CQkJY2hpbGRyZW4gPSAoCisJCQkJMUE1NjlDQzYwRDdFMkI4MjAwN0MzOTgzIC8qIGNfY2xhc3Mu
Y3BwICovLAorCQkJCTFBNTY5Q0M3MEQ3RTJCODIwMDdDMzk4MyAvKiBjX2NsYXNzLmggKi8sCisJ
CQkJMUE1NjlDQzgwRDdFMkI4MjAwN0MzOTgzIC8qIGNfaW5zdGFuY2UuY3BwICovLAorCQkJCTFB
NTY5Q0M5MEQ3RTJCODIwMDdDMzk4MyAvKiBjX2luc3RhbmNlLmggKi8sCisJCQkJMUE1NjlDQ0Ew
RDdFMkI4MjAwN0MzOTgzIC8qIGNfcnVudGltZS5jcHAgKi8sCisJCQkJMUE1NjlDQ0IwRDdFMkI4
MjAwN0MzOTgzIC8qIGNfcnVudGltZS5oICovLAorCQkJCTFBNTY5Q0NDMEQ3RTJCODIwMDdDMzk4
MyAvKiBjX3V0aWxpdHkuY3BwICovLAorCQkJCTFBNTY5Q0NEMEQ3RTJCODIwMDdDMzk4MyAvKiBj
X3V0aWxpdHkuaCAqLywKKwkJCQlFMTY5ODA0ODExMzM2NDQ3MDA4OTQxMTUgLyogQ1J1bnRpbWVP
YmplY3QuY3BwICovLAorCQkJCUUxNjk4MDNDMTEzMzU0MkQwMDg5NDExNSAvKiBDUnVudGltZU9i
amVjdC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBjOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsKKwkJfTsKKwkJMUE1NjlDRTIwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamMgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTFBNTY5Q0UzMEQ3RTJCODIwMDdD
Mzk4MyAvKiBvYmpjX2NsYXNzLmggKi8sCisJCQkJMUE1NjlDRTQwRDdFMkI4MjAwN0MzOTgzIC8q
IG9iamNfY2xhc3MubW0gKi8sCisJCQkJMUE1NjlDRTUwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNf
aGVhZGVyLmggKi8sCisJCQkJMUE1NjlDRTYwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfaW5zdGFu
Y2UuaCAqLywKKwkJCQkxQTU2OUNFNzBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19pbnN0YW5jZS5t
bSAqLywKKwkJCQkxQTU2OUNFODBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19ydW50aW1lLmggKi8s
CisJCQkJMUE1NjlDRTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5tbSAqLywKKwkJ
CQkxQTU2OUNFQTBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY191dGlsaXR5LmggKi8sCisJCQkJMUE1
NjlDRUIwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0eS5tbSAqLywKKwkJCQlFMTY5ODI1
NDExMzQ2MjlEMDA4OTQxMTUgLyogT2JqQ1J1bnRpbWVPYmplY3QuaCAqLywKKwkJCQlFMTY5ODI1
RjExMzQ2MzZBMDA4OTQxMTUgLyogT2JqQ1J1bnRpbWVPYmplY3QubW0gKi8sCisJCQkJMUNBRjM0
N0UwQTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5oICovLAorCQkJCTFDQUYzNDdG
MEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QubW0gKi8sCisJCQkJMUNBRjM0ODAw
QTZDNDA1MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdFByaXZhdGUuaCAqLywKKwkJCQkxQTU2
OUNFQzBEN0UyQjgyMDA3QzM5ODMgLyogV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gb2JqYzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTFBNThFODYxMUQxOUQzNzMwMEMwRUE3MyAvKiBhcHBsZXBheSAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUE1OEU4NjkxRDE5RDhDMDAwQzBFQTczIC8q
IGNvY29hICovLAorCQkJCUExREY1QTlGMUY3RUUwRjEwMDU4QTQ3NyAvKiBwYXltZW50cmVxdWVz
dCAqLywKKwkJCQlBMTEzRTAyQzIzMzFBMEU0MDA5QzMzQTAgLyogQXBwbGVQYXlDYW5jZWxFdmVu
dC5jcHAgKi8sCisJCQkJQTExM0UwMkIyMzMxQTBFNDAwOUMzM0EwIC8qIEFwcGxlUGF5Q2FuY2Vs
RXZlbnQuaCAqLywKKwkJCQlBMTk1NkYxODIzMzFBNDY4MDA1N0U5RDIgLyogQXBwbGVQYXlDYW5j
ZWxFdmVudC5pZGwgKi8sCisJCQkJQTFERjVBQjQxRjgwNzhGMzAwNThBNDc3IC8qIEFwcGxlUGF5
Q29udGFjdEZpZWxkLmNwcCAqLywKKwkJCQlBMURGNUE5MTFGN0VDNDMyMDA1OEE0NzcgLyogQXBw
bGVQYXlDb250YWN0RmllbGQuaCAqLywKKwkJCQlBMURGNUE5MzFGN0VDNDMyMDA1OEE0NzcgLyog
QXBwbGVQYXlDb250YWN0RmllbGQuaWRsICovLAorCQkJCTk1RUFENTYyMjY2RUYyREIwMDRCOUNG
MSAvKiBBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZlbnQuY3BwICovLAorCQkJCTk1RUFENTVG
MjY2RUYyREEwMDRCOUNGMSAvKiBBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZlbnQuaCAqLywK
KwkJCQk5NUVBRDU2MTI2NkVGMkRBMDA0QjlDRjEgLyogQXBwbGVQYXlDb3Vwb25Db2RlQ2hhbmdl
ZEV2ZW50LmlkbCAqLywKKwkJCQk5NTY4NEQ4MTI2NTM1N0Y3MDAwMjY5MzggLyogQXBwbGVQYXlD
b3Vwb25Db2RlRGV0YWlscy5oICovLAorCQkJCTk1Njg0RDdGMjY1MzU3RjcwMDAyNjkzOCAvKiBB
cHBsZVBheUNvdXBvbkNvZGVEZXRhaWxzLmlkbCAqLywKKwkJCQk5NTk2QjkzMDI1REVFRTlGMDBF
RDJDRkEgLyogQXBwbGVQYXlDb3Vwb25Db2RlVXBkYXRlLmggKi8sCisJCQkJOTU5NkI5MzIyNURF
RUU5RjAwRUQyQ0ZBIC8qIEFwcGxlUGF5Q291cG9uQ29kZVVwZGF0ZS5pZGwgKi8sCisJCQkJOTVF
QUQ1NjkyNjZFRjJGOTAwNEI5Q0YxIC8qIEFwcGxlUGF5RGF0ZUNvbXBvbmVudHMuaCAqLywKKwkJ
CQk5NUVBRDU2NzI2NkVGMkY4MDA0QjlDRjEgLyogQXBwbGVQYXlEYXRlQ29tcG9uZW50cy5pZGwg
Ki8sCisJCQkJOTVFQUQ1NjYyNjZFRjJGODAwNEI5Q0YxIC8qIEFwcGxlUGF5RGF0ZUNvbXBvbmVu
dHNSYW5nZS5oICovLAorCQkJCTk1RUFENTY4MjY2RUYyRjkwMDRCOUNGMSAvKiBBcHBsZVBheURh
dGVDb21wb25lbnRzUmFuZ2UuaWRsICovLAorCQkJCTk1MDE4M0NCMjVENjMzRDgwMEQ0MzQwRiAv
KiBBcHBsZVBheURldGFpbHNVcGRhdGVCYXNlLmggKi8sCisJCQkJOTUwMTgzQzkyNUQ2MzNEODAw
RDQzNDBGIC8qIEFwcGxlUGF5RGV0YWlsc1VwZGF0ZUJhc2UuaWRsICovLAorCQkJCTk1MjdEN0E4
MjVENUZERTEwMEE2RTE3NiAvKiBBcHBsZVBheURldGFpbHNVcGRhdGVEYXRhLmggKi8sCisJCQkJ
OTUyN0Q3QUEyNUQ1RkRFMTAwQTZFMTc2IC8qIEFwcGxlUGF5RGV0YWlsc1VwZGF0ZURhdGEuaWRs
ICovLAorCQkJCTFBREZERkQ2MUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheUVycm9yLmggKi8s
CisJCQkJMUFERkRGRDcxRTcxRDhERjAwOEY1RDM0IC8qIEFwcGxlUGF5RXJyb3IuaWRsICovLAor
CQkJCUExQkI4NTk5MjE1OUFFQTEwMDY3RTA3RCAvKiBBcHBsZVBheUVycm9yQ29kZS5oICovLAor
CQkJCUExQkI4NTlCMjE1OUFFQTEwMDY3RTA3RCAvKiBBcHBsZVBheUVycm9yQ29kZS5pZGwgKi8s
CisJCQkJQTFCQjg1QTAyMTU5QUY1NzAwNjdFMDdEIC8qIEFwcGxlUGF5RXJyb3JDb250YWN0Rmll
bGQuaCAqLywKKwkJCQlBMUJCODVBMjIxNTlBRjU3MDA2N0UwN0QgLyogQXBwbGVQYXlFcnJvckNv
bnRhY3RGaWVsZC5pZGwgKi8sCisJCQkJNUM1M0RDRDUyNDQ2NDQ5QjAwQTkzMTI0IC8qIEFwcGxl
UGF5SW5zdGFsbG1lbnRDb25maWd1cmF0aW9uLmlkbCAqLywKKwkJCQk1QzUzRENEMDI0NDY0NDlB
MDBBOTMxMjQgLyogQXBwbGVQYXlJbnN0YWxsbWVudENvbmZpZ3VyYXRpb25XZWJDb3JlLmggKi8s
CisJCQkJQTExNzUwOUMyNDc0NjhFNTAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVt
LmggKi8sCisJCQkJQTExNzUwOUYyNDc0NjhFNzAwRDREMjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1l
bnRJdGVtLmlkbCAqLywKKwkJCQlBMTE3NTA5RDI0NzQ2OEU2MDBENEQyNkMgLyogQXBwbGVQYXlJ
bnN0YWxsbWVudEl0ZW1UeXBlLmggKi8sCisJCQkJQTExNzUwOUUyNDc0NjhFNjAwRDREMjZDIC8q
IEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtVHlwZS5pZGwgKi8sCisJCQkJQTEzQjYxNjcyNDc1REZD
NTAwQkJFNkRFIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRSZXRhaWxDaGFubmVsLmggKi8sCisJCQkJ
QTEzQjYxNjkyNDc1REZDNTAwQkJFNkRFIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRSZXRhaWxDaGFu
bmVsLmlkbCAqLywKKwkJCQk3QzY1NzlFMjFFMDA4MjcwMDBFM0EyN0EgLyogQXBwbGVQYXlMaW5l
SXRlbS5oICovLAorCQkJCTdDNjU3OUU0MUUwMDgyQzgwMEUzQTI3QSAvKiBBcHBsZVBheUxpbmVJ
dGVtLmlkbCAqLywKKwkJCQlBMURGNUFBODFGODA3MEQ0MDA1OEE0NzcgLyogQXBwbGVQYXlNZXJj
aGFudENhcGFiaWxpdHkuY3BwICovLAorCQkJCUExREY1QTgzMUY3RUJERjIwMDU4QTQ3NyAvKiBB
cHBsZVBheU1lcmNoYW50Q2FwYWJpbGl0eS5oICovLAorCQkJCUExREY1QTg1MUY3RUJERjIwMDU4
QTQ3NyAvKiBBcHBsZVBheU1lcmNoYW50Q2FwYWJpbGl0eS5pZGwgKi8sCisJCQkJN0M2NTIyRkUx
RTAwRDAzNDAwNjc3RjIyIC8qIEFwcGxlUGF5UGF5bWVudC5oICovLAorCQkJCTdDNjUyMkZGMUUw
MEQwMzQwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnQuaWRsICovLAorCQkJCTFBREZERkQ4MUU3
MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVBheW1lbnRBdXRob3JpemF0aW9uUmVzdWx0LmggKi8s
CisJCQkJMUFERkRGRDkxRTcxRDhERjAwOEY1RDM0IC8qIEFwcGxlUGF5UGF5bWVudEF1dGhvcml6
YXRpb25SZXN1bHQuaWRsICovLAorCQkJCTFBOEE2NDNEMUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBs
ZVBheVBheW1lbnRBdXRob3JpemVkRXZlbnQuY3BwICovLAorCQkJCTFBOEE2NDNFMUQxOUZDRkIw
MEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRBdXRob3JpemVkRXZlbnQuaCAqLywKKwkJCQkxQThB
NjQzRjFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlQYXltZW50QXV0aG9yaXplZEV2ZW50Lmlk
bCAqLywKKwkJCQk3QzY1MjJGODFFMDBDOTA5MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50Q29u
dGFjdC5oICovLAorCQkJCTdDNjUyMkY5MUUwMEM5MDkwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1l
bnRDb250YWN0LmlkbCAqLywKKwkJCQk3QzY1MjJFQzFFMDBBNEM3MDA2NzdGMjIgLyogQXBwbGVQ
YXlQYXltZW50TWV0aG9kLmggKi8sCisJCQkJN0M2NTIyRUQxRTAwQTRDNzAwNjc3RjIyIC8qIEFw
cGxlUGF5UGF5bWVudE1ldGhvZC5pZGwgKi8sCisJCQkJMUE4QTY0NDAxRDE5RkNGQjAwRDBFMDBG
IC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZFNlbGVjdGVkRXZlbnQuY3BwICovLAorCQkJCTFBOEE2
NDQyMUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50
LmggKi8sCisJCQkJMUE4QTY0NDMxRDE5RkNGQjAwRDBFMDBGIC8qIEFwcGxlUGF5UGF5bWVudE1l
dGhvZFNlbGVjdGVkRXZlbnQuaWRsICovLAorCQkJCUExRjZEMDAzMUZFMDk2RjYwMDE4MDc4QyAv
KiBBcHBsZVBheVBheW1lbnRNZXRob2RUeXBlLmggKi8sCisJCQkJQTFGNkQwMDUxRkUwOTZGNjAw
MTgwNzhDIC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaWRsICovLAorCQkJCTFBREZERkRB
MUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUuaCAqLywKKwkJ
CQkxQURGREZEQjFFNzFEOERGMDA4RjVEMzQgLyogQXBwbGVQYXlQYXltZW50TWV0aG9kVXBkYXRl
LmlkbCAqLywKKwkJCQk3QzY1MjJGMjFFMDBBNTE3MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50
UGFzcy5oICovLAorCQkJCTdDNjUyMkYzMUUwMEE1MTcwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1l
bnRQYXNzLmlkbCAqLywKKwkJCQk3QzY1NzlERjFFMDA3OUY5MDBFM0EyN0EgLyogQXBwbGVQYXlQ
YXltZW50UmVxdWVzdC5oICovLAorCQkJCTdDNjU3OUUxMUUwMDdBMTEwMEUzQTI3QSAvKiBBcHBs
ZVBheVBheW1lbnRSZXF1ZXN0LmlkbCAqLywKKwkJCQk5NUVBRDU2RTI2NkVGMzg0MDA0QjlDRjEg
LyogQXBwbGVQYXlQYXltZW50VGltaW5nLmggKi8sCisJCQkJOTVFQUQ1NkYyNjZFRjM4NTAwNEI5
Q0YxIC8qIEFwcGxlUGF5UGF5bWVudFRpbWluZy5pZGwgKi8sCisJCQkJOTVFQUQ1NzIyNjZFRjM5
MjAwNEI5Q0YxIC8qIEFwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVVbml0LmggKi8sCisJCQkJ
OTVFQUQ1NzMyNjZFRjM5MzAwNEI5Q0YxIC8qIEFwcGxlUGF5UmVjdXJyaW5nUGF5bWVudERhdGVV
bml0LmlkbCAqLywKKwkJCQlBMURGNUFBQjFGODA3NUYwMDA1OEE0NzcgLyogQXBwbGVQYXlSZXF1
ZXN0QmFzZS5jcHAgKi8sCisJCQkJQTFERjVBQUExRjgwNzVGMDAwNThBNDc3IC8qIEFwcGxlUGF5
UmVxdWVzdEJhc2UuaCAqLywKKwkJCQlBMURGNUFBQzFGODA3NUYwMDA1OEE0NzcgLyogQXBwbGVQ
YXlSZXF1ZXN0QmFzZS5pZGwgKi8sCisJCQkJMUE4QTY0NDQxRDE5RkNGQjAwRDBFMDBGIC8qIEFw
cGxlUGF5U2Vzc2lvbi5jcHAgKi8sCisJCQkJMUE4QTY0NDUxRDE5RkNGQjAwRDBFMDBGIC8qIEFw
cGxlUGF5U2Vzc2lvbi5oICovLAorCQkJCTFBOEE2NDQ2MUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBs
ZVBheVNlc3Npb24uaWRsICovLAorCQkJCUExOTU2RjFEMjMzMUE4QzcwMDU3RTlEMiAvKiBBcHBs
ZVBheVNlc3Npb25FcnJvci5oICovLAorCQkJCUExOTU2RjFGMjMzMUE4QzcwMDU3RTlEMiAvKiBB
cHBsZVBheVNlc3Npb25FcnJvci5pZGwgKi8sCisJCQkJMUE1OEU4NjMxRDE5RDRERjAwQzBFQTcz
IC8qIEFwcGxlUGF5U2Vzc2lvblBheW1lbnRSZXF1ZXN0LmNwcCAqLywKKwkJCQkxQTU4RTg2NDFE
MTlENERGMDBDMEVBNzMgLyogQXBwbGVQYXlTZXNzaW9uUGF5bWVudFJlcXVlc3QuaCAqLywKKwkJ
CQk1QzUzRENEMjI0NDY0NDlBMDBBOTMxMjQgLyogQXBwbGVQYXlTZXR1cC5jcHAgKi8sCisJCQkJ
NUM1M0RDQzYyNDQ2NDQ5NzAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0dXAuaWRsICovLAorCQkJCUEx
RTA4NjVDMjQ4OUQyQjEwMEU0OTZEOSAvKiBBcHBsZVBheVNldHVwQ29uZmlndXJhdGlvbi5oICov
LAorCQkJCUExRTA4NjVEMjQ4OUQyQjEwMEU0OTZEOSAvKiBBcHBsZVBheVNldHVwQ29uZmlndXJh
dGlvbi5pZGwgKi8sCisJCQkJNUM1M0RDQ0EyNDQ2NDQ5ODAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0
dXBGZWF0dXJlLmlkbCAqLywKKwkJCQk1QzUzRENDOTI0NDY0NDk4MDBBOTMxMjQgLyogQXBwbGVQ
YXlTZXR1cEZlYXR1cmUubW0gKi8sCisJCQkJQTFFMDg2NUUyNDg5RDJCMTAwRTQ5NkQ5IC8qIEFw
cGxlUGF5U2V0dXBGZWF0dXJlU3RhdGUuaCAqLywKKwkJCQlBMUUwODY1QTI0ODlEMkIwMDBFNDk2
RDkgLyogQXBwbGVQYXlTZXR1cEZlYXR1cmVTdGF0ZS5pZGwgKi8sCisJCQkJNUM1M0RDRDYyNDQ2
NDQ5QzAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0dXBGZWF0dXJlVHlwZS5pZGwgKi8sCisJCQkJNUM1
M0RDRDQyNDQ2NDQ5QjAwQTkzMTI0IC8qIEFwcGxlUGF5U2V0dXBGZWF0dXJlVHlwZVdlYkNvcmUu
aCAqLywKKwkJCQk1QzUzRENDRjI0NDY0NDk5MDBBOTMxMjQgLyogQXBwbGVQYXlTZXR1cEZlYXR1
cmVXZWJDb3JlLmggKi8sCisJCQkJNUM1M0RDQ0IyNDQ2NDQ5ODAwQTkzMTI0IC8qIEFwcGxlUGF5
U2V0dXBXZWJDb3JlLmggKi8sCisJCQkJOTVFQUQ1NzYyNjZFRjNBNjAwNEI5Q0YxIC8qIEFwcGxl
UGF5U2hpcHBpbmdDb250YWN0RWRpdGluZ01vZGUuaCAqLywKKwkJCQk5NUVBRDU3NzI2NkVGM0E3
MDA0QjlDRjEgLyogQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RFZGl0aW5nTW9kZS5pZGwgKi8sCisJ
CQkJMUE4QTY0NDcxRDE5RkNGQjAwRDBFMDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdDb250YWN0U2Vs
ZWN0ZWRFdmVudC5jcHAgKi8sCisJCQkJMUE4QTY0NDgxRDE5RkNGQjAwRDBFMDBGIC8qIEFwcGxl
UGF5U2hpcHBpbmdDb250YWN0U2VsZWN0ZWRFdmVudC5oICovLAorCQkJCTFBOEE2NDQ5MUQxOUZD
RkIwMEQwRTAwRiAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdFNlbGVjdGVkRXZlbnQuaWRsICov
LAorCQkJCTFBREZERkRDMUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFj
dFVwZGF0ZS5oICovLAorCQkJCTFBREZERkREMUU3MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVNo
aXBwaW5nQ29udGFjdFVwZGF0ZS5pZGwgKi8sCisJCQkJN0M2NTc5RTcxRTAwODMxNjAwRTNBMjdB
IC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2QuaCAqLywKKwkJCQk3QzY1NzlFNTFFMDA4MzA2MDBF
M0EyN0EgLyogQXBwbGVQYXlTaGlwcGluZ01ldGhvZC5pZGwgKi8sCisJCQkJMUE4QTY0NEIxRDE5
RkNGQjAwRDBFMDBGIC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2RTZWxlY3RlZEV2ZW50LmNwcCAq
LywKKwkJCQkxQThBNjQ0QzFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBwbGVQYXlTaGlwcGluZ01ldGhv
ZFNlbGVjdGVkRXZlbnQuaCAqLywKKwkJCQkxQThBNjQ0RDFEMTlGQ0ZCMDBEMEUwMEYgLyogQXBw
bGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQuaWRsICovLAorCQkJCTFBREZERkRFMUU3
MUQ4REYwMDhGNUQzNCAvKiBBcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmggKi8sCisJCQkJ
MUFERkRGREYxRTcxRDhERjAwOEY1RDM0IC8qIEFwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUu
aWRsICovLAorCQkJCTFBOEE2NDRFMUQxOUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVZhbGlkYXRl
TWVyY2hhbnRFdmVudC5jcHAgKi8sCisJCQkJMUE4QTY0NEYxRDE5RkNGQjAwRDBFMDBGIC8qIEFw
cGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50LmggKi8sCisJCQkJMUE4QTY0NTAxRDE5RkNGQjAw
RDBFMDBGIC8qIEFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50LmlkbCAqLywKKwkJCQkxQThB
NjQzNzFEMTlGQzUzMDBEMEUwMEYgLyogUGF5bWVudC5oICovLAorCQkJCUExNjlCMDQyMjQ4RjAz
N0IwMEVFOEI3QiAvKiBQYXltZW50QVBJVmVyc2lvbi5oICovLAorCQkJCTFBRTk2QTg2MUQxQTBD
RUIwMEI4Njc2OCAvKiBQYXltZW50QXV0aG9yaXphdGlvblN0YXR1cy5oICovLAorCQkJCTFBOEE2
NDM4MUQxOUZDNTMwMEQwRTAwRiAvKiBQYXltZW50Q29udGFjdC5oICovLAorCQkJCTFBNThFODZC
MUQxOUU0MkQwMEMwRUE3MyAvKiBQYXltZW50Q29vcmRpbmF0b3IuY3BwICovLAorCQkJCTFBNThF
ODZDMUQxOUU0MkQwMEMwRUE3MyAvKiBQYXltZW50Q29vcmRpbmF0b3IuaCAqLywKKwkJCQlBMTA0
RUM1MzIyMEEwMTc0MDBDQkY2N0EgLyogUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50LmNwcCAqLywK
KwkJCQkxQTU4RTg2MjFEMTlEM0JGMDBDMEVBNzMgLyogUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50
LmggKi8sCisJCQkJN0NGOTMwRTYxRTAxRjlBRDAwQkFGRkJFIC8qIFBheW1lbnRIZWFkZXJzLmgg
Ki8sCisJCQkJNUM1M0RDQ0MyNDQ2NDQ5OTAwQTkzMTI0IC8qIFBheW1lbnRJbnN0YWxsbWVudENv
bmZpZ3VyYXRpb24ubW0gKi8sCisJCQkJNUM1M0RDQ0UyNDQ2NDQ5OTAwQTkzMTI0IC8qIFBheW1l
bnRJbnN0YWxsbWVudENvbmZpZ3VyYXRpb25XZWJDb3JlLmggKi8sCisJCQkJMUFFOTZBODcxRDFB
MENFQjAwQjg2NzY4IC8qIFBheW1lbnRNZXJjaGFudFNlc3Npb24uaCAqLywKKwkJCQkxQThBNjQz
OTFEMTlGQzUzMDBEMEUwMEYgLyogUGF5bWVudE1ldGhvZC5oICovLAorCQkJCTFBOEE2NDY2MUQx
OUZERkYwMEQwRTAwRiAvKiBQYXltZW50UmVxdWVzdFZhbGlkYXRvci5oICovLAorCQkJCTFBOEE2
NDY1MUQxOUZERkYwMEQwRTAwRiAvKiBQYXltZW50UmVxdWVzdFZhbGlkYXRvci5tbSAqLywKKwkJ
CQlBMUMyQzU3NTFGQTI4NTE2MDBCQTQ2RkEgLyogUGF5bWVudFNlc3Npb24uY3BwICovLAorCQkJ
CUExNDkxREEyMUY4NTlEODcwMDk1RjVENCAvKiBQYXltZW50U2Vzc2lvbi5oICovLAorCQkJCUEx
MTNFMDI3MjMzMTgyOTMwMDlDMzNBMCAvKiBQYXltZW50U2Vzc2lvbkVycm9yLmggKi8sCisJCQkJ
QTFERkQ1MjIyMzM0NTkzQTAwNDJGQ0RCIC8qIFBheW1lbnRTdW1tYXJ5SXRlbXMuaCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gYXBwbGVwYXk7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9
OworCQkxQTU4RTg2OTFEMTlEOEMwMDBDMEVBNzMgLyogY29jb2EgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExNjlCMDQ1MjQ4RjA0MTcwMEVFOEI3QiAv
KiBQYXltZW50QVBJVmVyc2lvbkNvY29hLm1tICovLAorCQkJCTFBOEE2NDY5MUQxOUZGODcwMEQw
RTAwRiAvKiBQYXltZW50Q29jb2EubW0gKi8sCisJCQkJMUE4QTY0NkExRDE5RkY4NzAwRDBFMDBG
IC8qIFBheW1lbnRDb250YWN0Q29jb2EubW0gKi8sCisJCQkJMUFEQTRBMUIxRDIyRjJDMDAwNUE5
QTE1IC8qIFBheW1lbnRNZXJjaGFudFNlc3Npb25Db2NvYS5tbSAqLywKKwkJCQkxQThBNjQ2QjFE
MTlGRjg3MDBEMEUwMEYgLyogUGF5bWVudE1ldGhvZENvY29hLm1tICovLAorCQkJCUExMTNFMDJB
MjMzMThFQkMwMDlDMzNBMCAvKiBQYXltZW50U2Vzc2lvbkVycm9yQ29jb2EubW0gKi8sCisJCQkJ
QTFERkQ1MjcyMzM0NTk3MzAwNDJGQ0RCIC8qIFBheW1lbnRTdW1tYXJ5SXRlbXNDb2NvYS5tbSAq
LywKKwkJCSk7CisJCQlwYXRoID0gY29jb2E7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwor
CQl9OworCQkxQTg4QTkwMTE3NTUzQ0Q3MDAwQzc0RjkgLyogZm9ybXMgKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTFBODhBOTAyMTc1NTNDRDcwMDBDNzRG
OSAvKiBGaWxlSWNvbkxvYWRlci5jcHAgKi8sCisJCQkJMUE4OEE5MDMxNzU1M0NENzAwMEM3NEY5
IC8qIEZpbGVJY29uTG9hZGVyLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGZvcm1zOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUE4RjZCQjAwREI1NUNEQzAwMURCNzk0IC8q
IGFwcGNhY2hlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQkxQThGNkJCMTBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZS5jcHAgKi8sCisJ
CQkJMUE4RjZCQjIwREI1NUNEQzAwMURCNzk0IC8qIEFwcGxpY2F0aW9uQ2FjaGUuaCAqLywKKwkJ
CQkxQThGNkJCMzBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCAq
LywKKwkJCQkxQThGNkJCNDBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZUdyb3Vw
LmggKi8sCisJCQkJMjRGNTRFQUExMDFGRTkxNDAwMEFFNzQxIC8qIEFwcGxpY2F0aW9uQ2FjaGVI
b3N0LmNwcCAqLywKKwkJCQkyNEY1NEVBQjEwMUZFOTE0MDAwQUU3NDEgLyogQXBwbGljYXRpb25D
YWNoZUhvc3QuaCAqLywKKwkJCQkxQThGNkJCQTBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRp
b25DYWNoZU1hbmlmZXN0UGFyc2VyLmNwcCAqLywKKwkJCQkxQThGNkJCQjBEQjU1Q0RDMDAxREI3
OTQgLyogQXBwbGljYXRpb25DYWNoZU1hbmlmZXN0UGFyc2VyLmggKi8sCisJCQkJMUE4RjZCQjUw
REI1NUNEQzAwMURCNzk0IC8qIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZS5jcHAgKi8sCisJCQkJ
MUE4RjZCQjYwREI1NUNEQzAwMURCNzk0IC8qIEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZS5oICov
LAorCQkJCTQxOTQ1Njk0MjAzNTAyQTUwMDRCQTI3NyAvKiBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VMb2FkZXIuY3BwICovLAorCQkJCTQxOTQ1Njk2MjAzNTAyQTYwMDRCQTI3NyAvKiBBcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2VMb2FkZXIuaCAqLywKKwkJCQkxQTJBQUM1NjBEQzJBM0IxMDBBMjBE
OUEgLyogQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwICovLAorCQkJCTFBMkFBQzU3MERDMkEz
QjEwMEEyMEQ5QSAvKiBBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5oICovLAorCQkJCTFBOEY2QkI3
MERCNTVDREMwMDFEQjc5NCAvKiBET01BcHBsaWNhdGlvbkNhY2hlLmNwcCAqLywKKwkJCQkxQThG
NkJCODBEQjU1Q0RDMDAxREI3OTQgLyogRE9NQXBwbGljYXRpb25DYWNoZS5oICovLAorCQkJCTFB
OEY2QkI5MERCNTVDREMwMDFEQjc5NCAvKiBET01BcHBsaWNhdGlvbkNhY2hlLmlkbCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gYXBwY2FjaGU7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9
OworCQkxQUMyMjYwMjBEQjY5RUE3MDA4OUI2NjkgLyogT2ZmbGluZSAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUFDMjI2MEEwREI2OUYxOTAwODlCNjY5
IC8qIEpTRE9NQXBwbGljYXRpb25DYWNoZS5jcHAgKi8sCisJCQkJMUFDMjI2MEIwREI2OUYxOTAw
ODlCNjY5IC8qIEpTRE9NQXBwbGljYXRpb25DYWNoZS5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBP
ZmZsaW5lOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUFFNDJGNjcwQUE0
QjhDQjAwQzg2MTJEIC8qIGNmICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQk1MTdBNjNCRjFCNzQzMTdFMDBFN0RDREMgLyogS2V5ZWREZWNvZGVyQ0YuY3Bw
ICovLAorCQkJCTUxN0E2M0MwMUI3NDMxN0UwMEU3RENEQyAvKiBLZXllZERlY29kZXJDRi5oICov
LAorCQkJCTUxN0E2M0MxMUI3NDMxN0UwMEU3RENEQyAvKiBLZXllZEVuY29kZXJDRi5jcHAgKi8s
CisJCQkJNTE3QTYzQzIxQjc0MzE3RTAwRTdEQ0RDIC8qIEtleWVkRW5jb2RlckNGLmggKi8sCisJ
CQkJN0FFNkM5MzcxQkUwQzVDODAwRTE5RTAzIC8qIE1haW5UaHJlYWRTaGFyZWRUaW1lckNGLmNw
cCAqLywKKwkJCQk1Q0JDOERBQTFBQUEzMDIyMDBFMUM4MDMgLyogTWVkaWFBY2Nlc3NpYmlsaXR5
U29mdExpbmsuY3BwICovLAorCQkJCTVDQkM4REFCMUFBQTMwMjIwMEUxQzgwMyAvKiBNZWRpYUFj
Y2Vzc2liaWxpdHlTb2Z0TGluay5oICovLAorCQkJCTJENzZCQjgzMTk0NTZGODEwMENGRDI5QSAv
KiBSdW5Mb29wT2JzZXJ2ZXIuY3BwICovLAorCQkJCTJENzZCQjgwMTk0NTYzMjQwMENGRDI5QSAv
KiBSdW5Mb29wT2JzZXJ2ZXIuaCAqLywKKwkJCQk1MTJERDhFMjBEOTFFMkI0MDAwRjg5RUUgLyog
U2hhcmVkQnVmZmVyQ0YuY3BwICovLAorCQkJKTsKKwkJCXBhdGggPSBjZjsKKwkJCXNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTFBRTgyRUM5MENBQUUxNzcwMDIyMzdBRSAvKiBzdG9y
YWdlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MUUz
RjlDNTBEQTA1OURDMDAyNTA5MTEgLyogU3RvcmFnZS5jcHAgKi8sCisJCQkJNTFFM0Y5QzQwREEw
NTlEQzAwMjUwOTExIC8qIFN0b3JhZ2UuaCAqLywKKwkJCQk1MUUzRjlEMTBEQTA1RDcxMDAyNTA5
MTEgLyogU3RvcmFnZS5pZGwgKi8sCisJCQkJNTFCRTM3REUwREFFRTAwRTAwMTA4NUZDIC8qIFN0
b3JhZ2VBcmVhLmggKi8sCisJCQkJNTFFMEJBQkEwREE1NTQ3MTAwQTlFNDE3IC8qIFN0b3JhZ2VF
dmVudC5jcHAgKi8sCisJCQkJNTFFMEJBQjkwREE1NTQ3MTAwQTlFNDE3IC8qIFN0b3JhZ2VFdmVu
dC5oICovLAorCQkJCTUxRTBCQUJEMERBNTU0ODQwMEE5RTQxNyAvKiBTdG9yYWdlRXZlbnQuaWRs
ICovLAorCQkJCUM1RTlCNjc2MTA2OTdFMTMwMEM3QkIxQSAvKiBTdG9yYWdlRXZlbnREaXNwYXRj
aGVyLmNwcCAqLywKKwkJCQlDNUVCREQ4MTEwNUVEREVDMDA1NjgxNkYgLyogU3RvcmFnZUV2ZW50
RGlzcGF0Y2hlci5oICovLAorCQkJCTUxRTBCQjM3MERBNUFDQjYwMEE5RTQxNyAvKiBTdG9yYWdl
TWFwLmNwcCAqLywKKwkJCQk1MUUwQkIzNjBEQTVBQ0I2MDBBOUU0MTcgLyogU3RvcmFnZU1hcC5o
ICovLAorCQkJCUM1MEQwRTgxMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmgg
Ki8sCisJCQkJMUEzNzYzNjkxQTJFNjhCQjAwOUE3RUUyIC8qIFN0b3JhZ2VOYW1lc3BhY2VQcm92
aWRlci5jcHAgKi8sCisJCQkJMUEzNzYzNkExQTJFNjhCQjAwOUE3RUUyIC8qIFN0b3JhZ2VOYW1l
c3BhY2VQcm92aWRlci5oICovLAorCQkJCTQxREU3QzdBMjIyREExM0QwMDUzMkI2NSAvKiBTdG9y
YWdlUXVvdGFNYW5hZ2VyLmNwcCAqLywKKwkJCQk0MURFN0M3QjIyMkRBMTNFMDA1MzJCNjUgLyog
U3RvcmFnZVF1b3RhTWFuYWdlci5oICovLAorCQkJCTUxNjZEM0NDMUU4RUQ0MTEwMEFENjJFMyAv
KiBTdG9yYWdlVHlwZS5oICovLAorCQkJKTsKKwkJCWluZGVudFdpZHRoID0gNDsKKwkJCXBhdGgg
PSBzdG9yYWdlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJCXRhYldpZHRoID0gODsK
KwkJCXVzZXNUYWJzID0gMDsKKwkJfTsKKwkJMUFFOTZBNzkxRDFBMEE1QzAwQjg2NzY4IC8qIEFw
cGxlUGF5ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlB
MTk1NkYxQTIzMzFBNjQ2MDA1N0U5RDIgLyogSlNBcHBsZVBheUNhbmNlbEV2ZW50LmNwcCAqLywK
KwkJCQlBMTk1NkYxQjIzMzFBNjQ2MDA1N0U5RDIgLyogSlNBcHBsZVBheUNhbmNlbEV2ZW50Lmgg
Ki8sCisJCQkJQTFERjVBOTgxRjdFQzhDMDAwNThBNDc3IC8qIEpTQXBwbGVQYXlDb250YWN0Rmll
bGQuY3BwICovLAorCQkJCUExREY1QTk3MUY3RUM4QkYwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5Q29u
dGFjdEZpZWxkLmggKi8sCisJCQkJOTVFQUQ1ODAyNjZFRjUzMDAwNEI5Q0YxIC8qIEpTQXBwbGVQ
YXlDb3Vwb25Db2RlQ2hhbmdlZEV2ZW50LmNwcCAqLywKKwkJCQk5NTk2QjkzNjI1REVFRjAyMDBF
RDJDRkEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVDaGFuZ2VkRXZlbnQuaCAqLywKKwkJCQk5NUVB
RDU3RDI2NkVGNTIyMDA0QjlDRjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVEZXRhaWxzLmNwcCAq
LywKKwkJCQk5NUVBRDU3RjI2NkVGNTIzMDA0QjlDRjEgLyogSlNBcHBsZVBheUNvdXBvbkNvZGVE
ZXRhaWxzLmggKi8sCisJCQkJOTU5NkI5MzUyNURFRUYwMDAwRUQyQ0ZBIC8qIEpTQXBwbGVQYXlD
b3Vwb25Db2RlVXBkYXRlLmNwcCAqLywKKwkJCQk5NUVBRDU4MTI2NkVGNTMxMDA0QjlDRjEgLyog
SlNBcHBsZVBheUNvdXBvbkNvZGVVcGRhdGUuaCAqLywKKwkJCQk5NUVBRDU4NDI2NkVGNTY4MDA0
QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRzLmNwcCAqLywKKwkJCQk5NUVBRDU4NTI2
NkVGNTY5MDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRzLmggKi8sCisJCQkJOTVF
QUQ1ODgyNjZFRjU3OTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlEYXRlQ29tcG9uZW50c1JhbmdlLmNw
cCAqLywKKwkJCQk5NUVBRDU4OTI2NkVGNTc5MDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21w
b25lbnRzUmFuZ2UuaCAqLywKKwkJCQk5NTNCQ0VCMTI1RDYyODNDMDBBNEEyQTEgLyogSlNBcHBs
ZVBheURldGFpbHNVcGRhdGVCYXNlLmNwcCAqLywKKwkJCQk5NTNCQ0VBRjI1RDYyODNDMDBBNEEy
QTEgLyogSlNBcHBsZVBheURldGFpbHNVcGRhdGVCYXNlLmggKi8sCisJCQkJOTUyN0Q3QUUyNUQ1
RkU2QjAwQTZFMTc2IC8qIEpTQXBwbGVQYXlEZXRhaWxzVXBkYXRlRGF0YS5jcHAgKi8sCisJCQkJ
OTUyN0Q3QUQyNUQ1RkU2QjAwQTZFMTc2IC8qIEpTQXBwbGVQYXlEZXRhaWxzVXBkYXRlRGF0YS5o
ICovLAorCQkJCTFBREZERkUxMUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5RXJyb3IuY3Bw
ICovLAorCQkJCTFBREZERkUyMUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5RXJyb3IuaCAq
LywKKwkJCQlBMUJCODVBRDIxNTlCMUEwMDA2N0UwN0QgLyogSlNBcHBsZVBheUVycm9yQ29kZS5j
cHAgKi8sCisJCQkJQTFCQjg1QUUyMTU5QjFBMDAwNjdFMDdEIC8qIEpTQXBwbGVQYXlFcnJvckNv
ZGUuaCAqLywKKwkJCQlBMUJCODVBQzIxNTlCMTlGMDA2N0UwN0QgLyogSlNBcHBsZVBheUVycm9y
Q29udGFjdEZpZWxkLmNwcCAqLywKKwkJCQlBMUJCODVBRjIxNTlCMUEwMDA2N0UwN0QgLyogSlNB
cHBsZVBheUVycm9yQ29udGFjdEZpZWxkLmggKi8sCisJCQkJQTEzQjYxNkQyNDc1RTMxMDAwQkJF
NkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudENvbmZpZ3VyYXRpb24uY3BwICovLAorCQkJCUEx
M0I2MTcyMjQ3NUUzMTUwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5zdGFsbG1lbnRDb25maWd1cmF0
aW9uLmggKi8sCisJCQkJQTEzQjYxNzAyNDc1RTMxMzAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0
YWxsbWVudEl0ZW0uY3BwICovLAorCQkJCUExM0I2MTcxMjQ3NUUzMTQwMEJCRTZERSAvKiBKU0Fw
cGxlUGF5SW5zdGFsbG1lbnRJdGVtLmggKi8sCisJCQkJQTEzQjYxNzMyNDc1RTMxNjAwQkJFNkRF
IC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudEl0ZW1UeXBlLmNwcCAqLywKKwkJCQlBMTNCNjE2RTI0
NzVFMzExMDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50SXRlbVR5cGUuaCAqLywKKwkJ
CQlBMTNCNjE2QzI0NzVFMzEwMDBCQkU2REUgLyogSlNBcHBsZVBheUluc3RhbGxtZW50UmV0YWls
Q2hhbm5lbC5jcHAgKi8sCisJCQkJQTEzQjYxNkYyNDc1RTMxMjAwQkJFNkRFIC8qIEpTQXBwbGVQ
YXlJbnN0YWxsbWVudFJldGFpbENoYW5uZWwuaCAqLywKKwkJCQk3QzY1NzlFOTFFMDA4NTY2MDBF
M0EyN0EgLyogSlNBcHBsZVBheUxpbmVJdGVtLmNwcCAqLywKKwkJCQk3QzY1NzlFQTFFMDA4NTY2
MDBFM0EyN0EgLyogSlNBcHBsZVBheUxpbmVJdGVtLmggKi8sCisJCQkJQTFERjVBODkxRjdFQzAw
MDAwNThBNDc3IC8qIEpTQXBwbGVQYXlNZXJjaGFudENhcGFiaWxpdHkuY3BwICovLAorCQkJCUEx
REY1QThBMUY3RUMwMDAwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5TWVyY2hhbnRDYXBhYmlsaXR5Lmgg
Ki8sCisJCQkJQTFGNkQwMEExRkUwOTkyMTAwMTgwNzhDIC8qIEpTQXBwbGVQYXlNb2RpZmllci5j
cHAgKi8sCisJCQkJQTFGNkQwMEMxRkUwOTkyMjAwMTgwNzhDIC8qIEpTQXBwbGVQYXlNb2RpZmll
ci5oICovLAorCQkJCTdDNjUyMzFEMUUwMThCNUEwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVu
dC5jcHAgKi8sCisJCQkJN0M2NTIzMEExRTAwREJCNDAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXlt
ZW50LmggKi8sCisJCQkJMUFERkRGRTMxRTcxRENBMDAwOEY1RDM0IC8qIEpTQXBwbGVQYXlQYXlt
ZW50QXV0aG9yaXphdGlvblJlc3VsdC5jcHAgKi8sCisJCQkJMUFERkRGRTQxRTcxRENBMDAwOEY1
RDM0IC8qIEpTQXBwbGVQYXlQYXltZW50QXV0aG9yaXphdGlvblJlc3VsdC5oICovLAorCQkJCTFB
RTk2QTdBMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVu
dC5jcHAgKi8sCisJCQkJMUFFOTZBN0IxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlQYXlt
ZW50QXV0aG9yaXplZEV2ZW50LmggKi8sCisJCQkJN0M2NTIzMEIxRTAwREJCNDAwNjc3RjIyIC8q
IEpTQXBwbGVQYXlQYXltZW50Q29udGFjdC5jcHAgKi8sCisJCQkJN0M2NTIzMEMxRTAwREJCNDAw
Njc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50Q29udGFjdC5oICovLAorCQkJCTdDNjUyMzBEMUUw
MERCQjQwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZC5jcHAgKi8sCisJCQkJN0M2
NTIzMEUxRTAwREJCNDAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9kLmggKi8sCisJ
CQkJMUFFOTZBN0MxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlQYXltZW50TWV0aG9kU2Vs
ZWN0ZWRFdmVudC5jcHAgKi8sCisJCQkJMUFFOTZBN0QxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBw
bGVQYXlQYXltZW50TWV0aG9kU2VsZWN0ZWRFdmVudC5oICovLAorCQkJCUExRjZEMDBEMUZFMDk5
NjQwMDE4MDc4QyAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuY3BwICovLAorCQkJCUEx
RjZEMDBFMUZFMDk5NjQwMDE4MDc4QyAvKiBKU0FwcGxlUGF5UGF5bWVudE1ldGhvZFR5cGUuaCAq
LywKKwkJCQkxQURGREZFNTFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBsZVBheVBheW1lbnRNZXRo
b2RVcGRhdGUuY3BwICovLAorCQkJCTFBREZERkU2MUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxl
UGF5UGF5bWVudE1ldGhvZFVwZGF0ZS5oICovLAorCQkJCTdDNjUyMzBGMUUwMERCQjQwMDY3N0Yy
MiAvKiBKU0FwcGxlUGF5UGF5bWVudFBhc3MuY3BwICovLAorCQkJCTdDNjUyMzEwMUUwMERCQjQw
MDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudFBhc3MuaCAqLywKKwkJCQk3QzY1NzlFQjFFMDA4
NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVBheW1lbnRSZXF1ZXN0LmNwcCAqLywKKwkJCQk3QzY1
NzlFQzFFMDA4NTY2MDBFM0EyN0EgLyogSlNBcHBsZVBheVBheW1lbnRSZXF1ZXN0LmggKi8sCisJ
CQkJOTVFQUQ1OEQyNjZFRjU5QjAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlQYXltZW50VGltaW5nLmNw
cCAqLywKKwkJCQk5NUVBRDU4QzI2NkVGNTlBMDA0QjlDRjEgLyogSlNBcHBsZVBheVBheW1lbnRU
aW1pbmcuaCAqLywKKwkJCQk5NUVBRDU5MDI2NkVGNUNCMDA0QjlDRjEgLyogSlNBcHBsZVBheVJl
Y3VycmluZ1BheW1lbnREYXRlVW5pdC5jcHAgKi8sCisJCQkJOTVFQUQ1OTEyNjZFRjVDQzAwNEI5
Q0YxIC8qIEpTQXBwbGVQYXlSZWN1cnJpbmdQYXltZW50RGF0ZVVuaXQuaCAqLywKKwkJCQlBMURG
NUE4QzFGN0VDMDAxMDA1OEE0NzcgLyogSlNBcHBsZVBheVJlcXVlc3QuY3BwICovLAorCQkJCUEx
REY1QThCMUY3RUMwMDEwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdC5oICovLAorCQkJCUEx
REY1QUIwMUY4MDc3NTIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdEJhc2UuY3BwICovLAor
CQkJCUExREY1QUIxMUY4MDc3NTIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVxdWVzdEJhc2UuaCAq
LywKKwkJCQkxQUU5NkE3RTFEMUEwQTgwMDBCODY3NjggLyogSlNBcHBsZVBheVNlc3Npb24uY3Bw
ICovLAorCQkJCTFBRTk2QTdGMUQxQTBBODAwMEI4Njc2OCAvKiBKU0FwcGxlUGF5U2Vzc2lvbi5o
ICovLAorCQkJCUExRDUwNjEzMjMzMUVEOTcwMDE0RUU0RSAvKiBKU0FwcGxlUGF5U2Vzc2lvbkVy
cm9yLmNwcCAqLywKKwkJCQlBMUQ1MDYxMTIzMzFFRDk2MDAxNEVFNEUgLyogSlNBcHBsZVBheVNl
c3Npb25FcnJvci5oICovLAorCQkJCTk1RUFENTk2MjY2RUY2MEEwMDRCOUNGMSAvKiBKU0FwcGxl
UGF5U2hpcHBpbmdDb250YWN0RWRpdGluZ01vZGUuY3BwICovLAorCQkJCTk1RUFENTk1MjY2RUY2
MDkwMDRCOUNGMSAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0RWRpdGluZ01vZGUuaCAqLywK
KwkJCQkxQUU5NkE4MDFEMUEwQTgwMDBCODY3NjggLyogSlNBcHBsZVBheVNoaXBwaW5nQ29udGFj
dFNlbGVjdGVkRXZlbnQuY3BwICovLAorCQkJCTFBRTk2QTgxMUQxQTBBODAwMEI4Njc2OCAvKiBK
U0FwcGxlUGF5U2hpcHBpbmdDb250YWN0U2VsZWN0ZWRFdmVudC5oICovLAorCQkJCTFBREZERkU3
MUU3MURDQTAwMDhGNUQzNCAvKiBKU0FwcGxlUGF5U2hpcHBpbmdDb250YWN0VXBkYXRlLmNwcCAq
LywKKwkJCQkxQURGREZFODFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBsZVBheVNoaXBwaW5nQ29u
dGFjdFVwZGF0ZS5oICovLAorCQkJCTdDNjU3OUVEMUUwMDg1NjYwMEUzQTI3QSAvKiBKU0FwcGxl
UGF5U2hpcHBpbmdNZXRob2QuY3BwICovLAorCQkJCTdDNjU3OUVFMUUwMDg1NjYwMEUzQTI3QSAv
KiBKU0FwcGxlUGF5U2hpcHBpbmdNZXRob2QuaCAqLywKKwkJCQkxQUU5NkE4MjFEMUEwQTgwMDBC
ODY3NjggLyogSlNBcHBsZVBheVNoaXBwaW5nTWV0aG9kU2VsZWN0ZWRFdmVudC5jcHAgKi8sCisJ
CQkJMUFFOTZBODMxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNl
bGVjdGVkRXZlbnQuaCAqLywKKwkJCQkxQURGREZFOTFFNzFEQ0EwMDA4RjVEMzQgLyogSlNBcHBs
ZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmNwcCAqLywKKwkJCQkxQURGREZFQTFFNzFEQ0EwMDA4
RjVEMzQgLyogSlNBcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmggKi8sCisJCQkJMUFFOTZB
ODQxRDFBMEE4MDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuY3Bw
ICovLAorCQkJKTsKKwkJCW5hbWUgPSBBcHBsZVBheTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTFBRjYyRUUxMTREQTIyQTcwMDQxNTU2QyAvKiBzY3JvbGxpbmcgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzRUY3RDUzMTk1NEU5
OEYwMERGQjcxRCAvKiBjb2NvYSAqLywKKwkJCQkxQUY2MkVFMjE0REEyMkE3MDA0MTU1NkMgLyog
bWFjICovLAorCQkJCTBGRkQ0RDVFMTg2NTFGQTMwMDUxMkY2RSAvKiBBc3luY1Njcm9sbGluZ0Nv
b3JkaW5hdG9yLmNwcCAqLywKKwkJCQkwRkZENEQ1RjE4NjUxRkEzMDA1MTJGNkUgLyogQXN5bmNT
Y3JvbGxpbmdDb29yZGluYXRvci5oICovLAorCQkJCTBGNjA1QUVBMTVGOTQ4NDgwMDRERjBDMCAv
KiBTY3JvbGxpbmdDb25zdHJhaW50cy5jcHAgKi8sCisJCQkJMEY2MDVBRUIxNUY5NDg0ODAwNERG
MEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFpbnRzLmggKi8sCisJCQkJMUFGNjJFRTQxNERBMjJBNzAw
NDE1NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCAqLywKKwkJCQkxQUY2MkVFNTE0REEy
MkE3MDA0MTU1NkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCAqLywKKwkJCQk3MTJEQkE0NzIx
RjhBRDc5MDA4RjM2QjIgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3JUeXBlcy5oICovLAorCQkJCTUx
QzYxQjA4MURFNTM2RTcwMDhBMjEyRCAvKiBTY3JvbGxpbmdNb21lbnR1bUNhbGN1bGF0b3IuY3Bw
ICovLAorCQkJCTUxQzYxQjA5MURFNTM2RTcwMDhBMjEyRCAvKiBTY3JvbGxpbmdNb21lbnR1bUNh
bGN1bGF0b3IuaCAqLywKKwkJCQk5M0MzOEJGQzE2NDQ3M0M3MDAwOTFFQjIgLyogU2Nyb2xsaW5n
U3RhdGVGaXhlZE5vZGUuY3BwICovLAorCQkJCTkzQzM4QkZEMTY0NDczQzcwMDA5MUVCMiAvKiBT
Y3JvbGxpbmdTdGF0ZUZpeGVkTm9kZS5oICovLAorCQkJCTBGRDQxRTYzMjFGODAyNjAwMDBDMDA2
RCAvKiBTY3JvbGxpbmdTdGF0ZUZyYW1lSG9zdGluZ05vZGUuY3BwICovLAorCQkJCTBGRDQxRTY1
MjFGODAyNjEwMDBDMDA2RCAvKiBTY3JvbGxpbmdTdGF0ZUZyYW1lSG9zdGluZ05vZGUuaCAqLywK
KwkJCQkwRkVBM0U3QTE5MUIyRkM1MDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9s
bGluZ05vZGUuY3BwICovLAorCQkJCTBGRUEzRTc5MTkxQjJGQzUwMDBGMUI1NSAvKiBTY3JvbGxp
bmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZS5oICovLAorCQkJCTkzMUNCRDA2MTYxQTQ0RTkwMEU0
Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUuY3BwICovLAorCQkJCTkzMUNCRDA3MTYxQTQ0RTkw
MEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZU5vZGUuaCAqLywKKwkJCQkwRkVBM0U4MTE5MUIzMUJG
MDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbGluZ05vZGUuY3BwICovLAor
CQkJCTBGRUEzRTgyMTkxQjMxQkYwMDBGMUI1NSAvKiBTY3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Ny
b2xsaW5nTm9kZS5oICovLAorCQkJCTBGOUI1NDc2MjJCNEE3NzMwMDdCNUU4QSAvKiBTY3JvbGxp
bmdTdGF0ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmNwcCAqLywKKwkJCQkwRjlCNTQ3NTIyQjRB
NzcyMDA3QjVFOEEgLyogU2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbFByb3h5Tm9kZS5oICov
LAorCQkJCTBGOTRCNjRGMjIwOTE0RkUwMDE1NzAxNCAvKiBTY3JvbGxpbmdTdGF0ZVBvc2l0aW9u
ZWROb2RlLmNwcCAqLywKKwkJCQkwRjk0QjY1MTIyMDkxNEZGMDAxNTcwMTQgLyogU2Nyb2xsaW5n
U3RhdGVQb3NpdGlvbmVkTm9kZS5oICovLAorCQkJCTkzMUNCRDA4MTYxQTQ0RTkwMEU0Qzg3NCAv
KiBTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGUuY3BwICovLAorCQkJCTkzMUNCRDA5MTYxQTQ0
RTkwMEU0Qzg3NCAvKiBTY3JvbGxpbmdTdGF0ZVNjcm9sbGluZ05vZGUuaCAqLywKKwkJCQkwRkI4
ODkwQzE2N0QzMDE2MDAxMENEQTUgLyogU2Nyb2xsaW5nU3RhdGVTdGlja3lOb2RlLmNwcCAqLywK
KwkJCQkwRkI4ODkwRDE2N0QzMDE2MDAxMENEQTUgLyogU2Nyb2xsaW5nU3RhdGVTdGlja3lOb2Rl
LmggKi8sCisJCQkJOTMxQ0JEMEExNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlVHJl
ZS5jcHAgKi8sCisJCQkJOTMxQ0JEMEIxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRl
VHJlZS5oICovLAorCQkJCTFBRjYyRjIwMTREQUZFNzkwMDQxNTU2QyAvKiBTY3JvbGxpbmdUaHJl
YWQuY3BwICovLAorCQkJCTFBRjYyRjIxMTREQUZFNzkwMDQxNTU2QyAvKiBTY3JvbGxpbmdUaHJl
YWQuaCAqLywKKwkJCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5j
cHAgKi8sCisJCQkJMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAq
LywKKwkJCQkwRkQ0MUU2NzIxRjgwMjgyMDAwQzAwNkQgLyogU2Nyb2xsaW5nVHJlZUZyYW1lSG9z
dGluZ05vZGUuY3BwICovLAorCQkJCTBGRDQxRTY2MjFGODAyODIwMDBDMDA2RCAvKiBTY3JvbGxp
bmdUcmVlRnJhbWVIb3N0aW5nTm9kZS5oICovLAorCQkJCTBGRUEzRTg1MTkxQjNCRDcwMDBGMUI1
NSAvKiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlLmNwcCAqLywKKwkJCQkwRkVBM0U4
NjE5MUIzQkQ3MDAwRjFCNTUgLyogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZS5oICov
LAorCQkJCTBGRDk3NUQ0MjQ1Q0JERDcwMEM0MjI5OSAvKiBTY3JvbGxpbmdUcmVlR2VzdHVyZVN0
YXRlLmNwcCAqLywKKwkJCQkwRkQ5NzVEMjI0NUNCREFGMDBDNDIyOTkgLyogU2Nyb2xsaW5nVHJl
ZUdlc3R1cmVTdGF0ZS5oICovLAorCQkJCTBGRkQ0NUE4MjQzQkYyNTcwMDBENEJFQSAvKiBTY3Jv
bGxpbmdUcmVlTGF0Y2hpbmdDb250cm9sbGVyLmNwcCAqLywKKwkJCQkwRkZENDVBNzI0M0JGMjU3
MDAwRDRCRUEgLyogU2Nyb2xsaW5nVHJlZUxhdGNoaW5nQ29udHJvbGxlci5oICovLAorCQkJCTFB
QUFEREUxMTREQzhDOEYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlTm9kZS5jcHAgKi8sCisJCQkJ
MUFBQURERTIxNERDOEM4RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2RlLmggKi8sCisJCQkJ
MEZFQTNFN0QxOTFCMzE2OTAwMEYxQjU1IC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGlu
Z05vZGUuY3BwICovLAorCQkJCTBGRUEzRTdFMTkxQjMxNjkwMDBGMUI1NSAvKiBTY3JvbGxpbmdU
cmVlT3ZlcmZsb3dTY3JvbGxpbmdOb2RlLmggKi8sCisJCQkJOTM5MUE5OUExNjI5RDZGRjAwMjk3
MzMwIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlLmNwcCAqLywKKwkJCQk5MzkxQTk5QjE2
MjlENzAwMDAyOTczMzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGUuaCAqLywKKwkJCQlB
NkQ1QTk5QTE2MjlENkZGMDAyOTczMzAgLyogU2Nyb2xsaW5nVHJlZVNjcm9sbGluZ05vZGVEZWxl
Z2F0ZS5jcHAgKi8sCisJCQkJQTZENUE5OUIxNjI5RDcwMDAwMjk3MzMwIC8qIFNjcm9sbGluZ1Ry
ZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGUuaCAqLywKKwkJCQkwRjk1MTBGMjI0RjQ3NjlDMDAxRjUy
REMgLyogU2Nyb2xsTGF0Y2hpbmdDb250cm9sbGVyLmNwcCAqLywKKwkJCQkwRjk1MTBGMDI0RjQ3
NjlDMDAxRjUyREMgLyogU2Nyb2xsTGF0Y2hpbmdDb250cm9sbGVyLmggKi8sCisJCQkJNUI3QUI5
RjYyNTY3REI3RTAwNjU5MkQwIC8qIFNjcm9sbFNuYXBPZmZzZXRzSW5mby5jcHAgKi8sCisJCQkJ
RjQ2NzI5MjUxRTBERTVBQjAwQUNDM0Q4IC8qIFNjcm9sbFNuYXBPZmZzZXRzSW5mby5oICovLAor
CQkJCTBGNjM4M0RCMTg2MTVCMjkwMDNFNURCNSAvKiBUaHJlYWRlZFNjcm9sbGluZ1RyZWUuY3Bw
ICovLAorCQkJCTBGNjM4M0RDMTg2MTVCMjkwMDNFNURCNSAvKiBUaHJlYWRlZFNjcm9sbGluZ1Ry
ZWUuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gc2Nyb2xsaW5nOworCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKKwkJfTsKKwkJMUFGNjJFRTIxNERBMjJBNzAwNDE1NTZDIC8qIG1hYyAqLyA9IHsK
KwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJOTM5MUE5OTAxNjI3NDZD
QjAwMjk3MzMwIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLmggKi8sCisJCQkJMUFGNjJFRTMx
NERBMjJBNzAwNDE1NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yTWFjLm1tICovLAorCQkJCTUx
N0RFRUU3MURFOTRCMDgwMEI5MTY0NCAvKiBTY3JvbGxpbmdNb21lbnR1bUNhbGN1bGF0b3JNYWMu
aCAqLywKKwkJCQk1MTdERUVFMzFERTk0QURDMDBCOTE2NDQgLyogU2Nyb2xsaW5nTW9tZW50dW1D
YWxjdWxhdG9yTWFjLm1tICovLAorCQkJCTBGNzNCNzY1MjIyQjMyN0YwMDgwNTMxNiAvKiBTY3Jv
bGxpbmdTdGF0ZVNjcm9sbGluZ05vZGVNYWMubW0gKi8sCisJCQkJOTNDNEE0MTMxNjI5REY1QTAw
QzNFQjZFIC8qIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaCAqLywKKwkJCQk5
M0M0QTQxNDE2MjlERjVBMDBDM0VCNkUgLyogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9k
ZU1hYy5tbSAqLywKKwkJCQkwRkU1ODA2MjE5MzI3QTYyMDBERTMyRUIgLyogU2Nyb2xsaW5nVHJl
ZU1hYy5oICovLAorCQkJCTBGRTU4MDYxMTkzMjdBNjIwMERFMzJFQiAvKiBTY3JvbGxpbmdUcmVl
TWFjLm1tICovLAorCQkJCTBGQzA1MTZBMjE5QjVFQkUwMDMxQzM5RSAvKiBTY3JvbGxpbmdUcmVl
T3ZlcmZsb3dTY3JvbGxpbmdOb2RlTWFjLmggKi8sCisJCQkJMEZDMDUxNjgyMTlCNUVCRTAwMzFD
MzlFIC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVNYWMubW0gKi8sCisJCQkJ
MEYzN0YwODQyMjAyQUNCNzAwQTg5QzBCIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVs
ZWdhdGVNYWMuaCAqLywKKwkJCQkwRjM3RjA4MzIyMDJBQzhGMDBBODlDMEIgLyogU2Nyb2xsaW5n
VHJlZVNjcm9sbGluZ05vZGVEZWxlZ2F0ZU1hYy5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0gbWFj
OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUMwOUQwNEMxRTMxQzMyODAw
NzI1RjE4IC8qIFByb2R1Y3RzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQkxQzA5RDA1MDFFMzFDMzI5MDA3MjVGMTggLyogbGliUEFMLmEgKi8sCisJCQkp
OworCQkJbmFtZSA9IFByb2R1Y3RzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJMUMxNjVFNEYyM0VDRjU1RTAwQjBGQ0ZCIC8qIGNvY29hICovID0geworCQkJaXNhID0gUEJY
R3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlGNTk3M0RERTE1Q0ZCMjAzMDAyN0Y4MDQgLyog
TG9jYWxlQ29jb2EuaCAqLywKKwkJCQlGNTk3M0RERjE1Q0ZCMjAzMDAyN0Y4MDQgLyogTG9jYWxl
Q29jb2EubW0gKi8sCisJCQkJREZCNEExOUMyNjE3N0Q2ODAwNTY3NkEyIC8qIExvY2FsaXplZERh
dGVDYWNoZS5oICovLAorCQkJCURGQjRBMTlEMjYxNzdENjkwMDU2NzZBMiAvKiBMb2NhbGl6ZWRE
YXRlQ2FjaGUubW0gKi8sCisJCQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUM1RkFFQ0EwRENGRDhDOTAwRDU4Rjc4IC8qIEluc3BlY3Rv
ciAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQTU4NEZF
MjUxODYzN0RBQjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJTW9kdWxlU291cmNlLmggKi8sCisJ
CQkJQTU4NEZFMzkxODY0RTJEODAwODQzQjEwIC8qIEpTQ29tbWFuZExpbmVBUElIb3N0LmNwcCAq
LywKKwkJCQlBNTg0RkUzQTE4NjRFMkQ4MDA4NDNCMTAgLyogSlNDb21tYW5kTGluZUFQSUhvc3Qu
aCAqLywKKwkJCQk5MTc1Q0U1OTIxRTI4MUVDMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdEFj
Y2Vzc2liaWxpdHlPYmplY3QuY3BwICovLAorCQkJCTkxNzVDRTVBMjFFMjgxRUQwMERGMkMyOCAv
KiBKU0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5oICovLAorCQkJCTkxNzVDRTU3
MjFFMjgxRUIwMERGMkMyOCAvKiBKU0luc3BlY3RvckF1ZGl0RE9NT2JqZWN0LmNwcCAqLywKKwkJ
CQk5MTc1Q0U1ODIxRTI4MUVDMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRpdERPTU9iamVjdC5o
ICovLAorCQkJCTkxMDlFOUM3MjIyQ0FCQzkwMEJCNjI2NSAvKiBKU0luc3BlY3RvckF1ZGl0UmVz
b3VyY2VzT2JqZWN0LmNwcCAqLywKKwkJCQk5MTA5RTlDNTIyMkNBQkM4MDBCQjYyNjUgLyogSlNJ
bnNwZWN0b3JBdWRpdFJlc291cmNlc09iamVjdC5oICovLAorCQkJCTdBMEU3NzFDMTBDMDBEQjEw
MEEwMjc2RSAvKiBKU0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHAgKi8sCisJCQkJN0EwRTc3MUQx
MEMwMERCMTAwQTAyNzZFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmggKi8sCisJCQkpOwor
CQkJbmFtZSA9IEluc3BlY3RvcjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTFDNkZEOTIwMjUwQ0NBNjQwMEQ2RTkyMCAvKiBjb3JldGV4dCAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUM2RkQ4QUUyNTBBMzExNTAwRDZFOTIwIC8q
IEZvbnRDYXNjYWRlQ29yZVRleHQuY3BwICovLAorCQkJCTFDNkZEOEFGMjUwQTMzQ0YwMEQ2RTky
MCAvKiBGb250Q29yZVRleHQuY3BwICovLAorCQkJCTFDNkZEOEFDMjUwQTI5NEQwMEQ2RTkyMCAv
KiBGb250UGxhdGZvcm1EYXRhQ29yZVRleHQuY3BwICovLAorCQkJCTFDNkZEOEFEMjUwQTJFNTMw
MEQ2RTkyMCAvKiBHbHlwaFBhZ2VDb3JlVGV4dC5jcHAgKi8sCisJCQkpOworCQkJcGF0aCA9IGNv
cmV0ZXh0OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMUM4MUI5NEQwRTk3
MzJEOTAwMjY2RTA3IC8qIGluc3BlY3RvciAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJQTVCODFDODMxRkFBNDQwNjAwMzdEMUU2IC8qIGFnZW50cyAqLywK
KwkJCQk5MTc0RUE1QzI0NDBGOThBMDAwODM0OUMgLyogbWFjICovLAorCQkJCUE1ODRGRTMxMTg2
NEQ1QUYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3QuY3BwICovLAorCQkJCUE1ODRGRTMy
MTg2NEQ1QUYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3QuaCAqLywKKwkJCQlBNTg0RkUz
MzE4NjRENUFGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElIb3N0LmlkbCAqLywKKwkJCQlBNTg0
RkUyOTE4NjM4NzBGMDA4NDNCMTAgLyogQ29tbWFuZExpbmVBUElNb2R1bGUuY3BwICovLAorCQkJ
CUE1ODRGRTJBMTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5oICovLAor
CQkJCUE1ODRGRTI3MTg2MzdEQ0EwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZVNvdXJj
ZS5qcyAqLywKKwkJCQk3QUFCQTI1NzE0QkM2MTMzMDBBQTlBMTEgLyogRE9NRWRpdG9yLmNwcCAq
LywKKwkJCQk3QUFCQTI1ODE0QkM2MTMzMDBBQTlBMTEgLyogRE9NRWRpdG9yLmggKi8sCisJCQkJ
N0E1NDg4MTYxNEU0MzJBMTAwNkFFMDVBIC8qIERPTVBhdGNoU3VwcG9ydC5jcHAgKi8sCisJCQkJ
N0E1NDg4MTUxNEU0MzJBMTAwNkFFMDVBIC8qIERPTVBhdGNoU3VwcG9ydC5oICovLAorCQkJCTkx
NzVDRTU5MjFFMjgxRUMwMERGMkMyNyAvKiBJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmpl
Y3QuY3BwICovLAorCQkJCTkxNzVDRTVBMjFFMjgxRUQwMERGMkMyNyAvKiBJbnNwZWN0b3JBdWRp
dEFjY2Vzc2liaWxpdHlPYmplY3QuaCAqLywKKwkJCQk5MTc1Q0U1NzIxRTI4MUVCMDBERjJDMjcg
LyogSW5zcGVjdG9yQXVkaXRET01PYmplY3QuY3BwICovLAorCQkJCTkxNzVDRTU4MjFFMjgxRUMw
MERGMkMyNyAvKiBJbnNwZWN0b3JBdWRpdERPTU9iamVjdC5oICovLAorCQkJCTkxMDlFOUM3MjIy
Q0FCQzkwMEJCNjI2NCAvKiBJbnNwZWN0b3JBdWRpdFJlc291cmNlc09iamVjdC5jcHAgKi8sCisJ
CQkJOTEwOUU5QzUyMjJDQUJDODAwQkI2MjY0IC8qIEluc3BlY3RvckF1ZGl0UmVzb3VyY2VzT2Jq
ZWN0LmggKi8sCisJCQkJNkEyMkU4NzIxRjEwNDJDNDAwRjU0NkMzIC8qIEluc3BlY3RvckNhbnZh
cy5jcHAgKi8sCisJCQkJNkEyMkU4NkYxRjEwNDE4NjAwRjU0NkMzIC8qIEluc3BlY3RvckNhbnZh
cy5oICovLAorCQkJCTk1QUE1NzBEMjVFRUVEMzAwMDRFOTI4MyAvKiBJbnNwZWN0b3JDYW52YXND
YWxsVHJhY2VyLmNwcCAqLywKKwkJCQk5NUFBNTcwRTI1RUVFRDMxMDA0RTkyODMgLyogSW5zcGVj
dG9yQ2FudmFzQ2FsbFRyYWNlci5oICovLAorCQkJCTFDODFCOTU4MEU5NzMzMDgwMDI2NkUwNyAv
KiBJbnNwZWN0b3JDbGllbnQuaCAqLywKKwkJCQkxQzgxQjk1NzBFOTczMzA4MDAyNjZFMDcgLyog
SW5zcGVjdG9yQ29udHJvbGxlci5jcHAgKi8sCisJCQkJMUM4MUI5NTYwRTk3MzMwODAwMjY2RTA3
IC8qIEluc3BlY3RvckNvbnRyb2xsZXIuaCAqLywKKwkJCQk0MUYwNjIxMzBGNUYxOTI2MDBBMDdF
QUMgLyogSW5zcGVjdG9yRGF0YWJhc2VSZXNvdXJjZS5jcHAgKi8sCisJCQkJNDFGMDYyMTIwRjVG
MTkyNjAwQTA3RUFDIC8qIEluc3BlY3RvckRhdGFiYXNlUmVzb3VyY2UuaCAqLywKKwkJCQk5OUQx
QjJEMTIzQUMxNDMwMDA4MTFDRjAgLyogSW5zcGVjdG9yRGVidWdnYWJsZVR5cGUuaCAqLywKKwkJ
CQk5OTRDNjAzOTI1M0EyNzczMDBCREYwNjAgLyogSW5zcGVjdG9yRnJvbnRlbmRBUElEaXNwYXRj
aGVyLmNwcCAqLywKKwkJCQk5OTRDNjAzNzI1M0EyNzcyMDBCREYwNjAgLyogSW5zcGVjdG9yRnJv
bnRlbmRBUElEaXNwYXRjaGVyLmggKi8sCisJCQkJRjM0NEM3MTIxMTI1QjgyQzAwRjI2RUVFIC8q
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50LmggKi8sCisJCQkJRjM0NEM3NTcxMTI5NEZGNjAwRjI2
RUVFIC8qIEluc3BlY3RvckZyb250ZW5kQ2xpZW50TG9jYWwuY3BwICovLAorCQkJCUYzNDRDNzUy
MTEyOTREOUQwMEYyNkVFRSAvKiBJbnNwZWN0b3JGcm9udGVuZENsaWVudExvY2FsLmggKi8sCisJ
CQkJN0EwRTc3MEIxMEMwMEE4ODAwQTAyNzZFIC8qIEluc3BlY3RvckZyb250ZW5kSG9zdC5jcHAg
Ki8sCisJCQkJN0EwRTc3MEMxMEMwMEE4ODAwQTAyNzZFIC8qIEluc3BlY3RvckZyb250ZW5kSG9z
dC5oICovLAorCQkJCTdBMEU3NzBEMTBDMDBBODgwMEEwMjc2RSAvKiBJbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaWRsICovLAorCQkJCTdBNTQ4NTdEMTRFMDJENTEwMDZBRTA1QSAvKiBJbnNwZWN0b3JI
aXN0b3J5LmNwcCAqLywKKwkJCQk3QTU0ODU3RTE0RTAyRDUxMDA2QUUwNUEgLyogSW5zcGVjdG9y
SGlzdG9yeS5oICovLAorCQkJCTIwRDYyOTI0MTI1MzY5MEIwMDA4MTU0MyAvKiBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb24uY3BwICovLAorCQkJCTIwRDYyOTI1MTI1MzY5MEIwMDA4MTU0MyAvKiBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCAqLywKKwkJCQlBNTg2MEU2QTIzMERFMkUxMDA0NjFB
QUUgLyogSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmNwcCAqLywKKwkJCQlBNTg2MEU2
QjIzMERFMkUxMDA0NjFBQUUgLyogSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmggKi8s
CisJCQkJQTU4NjBFNkMyMzBERTJFMjAwNDYxQUFFIC8qIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdC5jcHAgKi8sCisJCQkJQTU4NjBFNjgyMzBERTJFMDAwNDYxQUFFIC8qIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbldlYktpdC5oICovLAorCQkJCTUwNEFBQ0NCMTgzNDQ1NTkwMEUzRDlC
QyAvKiBJbnNwZWN0b3JOb2RlRmluZGVyLmNwcCAqLywKKwkJCQk1MDRBQUNDQzE4MzQ0NTU5MDBF
M0Q5QkMgLyogSW5zcGVjdG9yTm9kZUZpbmRlci5oICovLAorCQkJCTdDNTIyRDQ5MTVCNDc3RTgw
MDlCN0M5NSAvKiBJbnNwZWN0b3JPdmVybGF5LmNwcCAqLywKKwkJCQk3QzUyMkQ0QTE1QjQ3OEIy
MDA5QjdDOTUgLyogSW5zcGVjdG9yT3ZlcmxheS5oICovLAorCQkJCTZBNzI3OTg5MUYxNkMyOUIw
MDNGMzlCOCAvKiBJbnNwZWN0b3JTaGFkZXJQcm9ncmFtLmNwcCAqLywKKwkJCQk2QTcyNzk4ODFG
MTZDMjlCMDAzRjM5QjggLyogSW5zcGVjdG9yU2hhZGVyUHJvZ3JhbS5oICovLAorCQkJCTgyQUIx
NzZGMTI1QzgyNjcwMEM1MDY5RCAvKiBJbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCAqLywKKwkJCQk4
MkFCMTc3MDEyNUM4MjY3MDBDNTA2OUQgLyogSW5zcGVjdG9yU3R5bGVTaGVldC5oICovLAorCQkJ
CUE1OTNDRjhBMTg0MDUzNTIwMEJGQ0UyNyAvKiBJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCAqLywK
KwkJCQlGMzUwQjczNDEzRjEzNzdEMDA4ODBDNDMgLyogSW5zdHJ1bWVudGluZ0FnZW50cy5jcHAg
Ki8sCisJCQkJRjNBQkZFMEIxMzBFOURBMDAwRTdGN0QxIC8qIEluc3RydW1lbnRpbmdBZ2VudHMu
aCAqLywKKwkJCQk1OUMyN0YwNDEzOEQyOEMxMDA3OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0Rh
dGEuY3BwICovLAorCQkJCTU5QzI3RjA2MTM4RDI4Q0YwMDc5QjdFMiAvKiBOZXR3b3JrUmVzb3Vy
Y2VzRGF0YS5oICovLAorCQkJCUE1RjM2RDM4MThGNzU4NzIwMDU0QzAyNCAvKiBQYWdlRGVidWdn
ZXIuY3BwICovLAorCQkJCUE1RjM2RDM5MThGNzU4NzIwMDU0QzAyNCAvKiBQYWdlRGVidWdnZXIu
aCAqLywKKwkJCQk5MUI5NTIyMjFGNThBNTgwMDA5MzFEQzIgLyogUmVjb3JkaW5nU3dpenpsZVR5
cGUuaCAqLywKKwkJCQk3NTUzQ0ZFNzEwOEY0NzNGMDBFQTI4MUUgLyogVGltZWxpbmVSZWNvcmRG
YWN0b3J5LmNwcCAqLywKKwkJCQk3NTUzQ0ZFNjEwOEY0NzNGMDBFQTI4MUUgLyogVGltZWxpbmVS
ZWNvcmRGYWN0b3J5LmggKi8sCisJCQkJQTU4NDBFMjIxODdCOEFDMjAwODQzQjEwIC8qIFdlYklu
amVjdGVkU2NyaXB0SG9zdC5jcHAgKi8sCisJCQkJQTU4NDBFMjMxODdCOEFDMjAwODQzQjEwIC8q
IFdlYkluamVjdGVkU2NyaXB0SG9zdC5oICovLAorCQkJCUE1ODRGRTJEMTg2NENCODQwMDg0M0Ix
MCAvKiBXZWJJbmplY3RlZFNjcmlwdE1hbmFnZXIuY3BwICovLAorCQkJCUE1ODRGRTJFMTg2NENC
ODQwMDg0M0IxMCAvKiBXZWJJbmplY3RlZFNjcmlwdE1hbmFnZXIuaCAqLywKKwkJCQlBNTRBMEM2
MzFEQjgwNTMyMDAxN0E5MEIgLyogV29ya2VyRGVidWdnZXIuY3BwICovLAorCQkJCUE1NEEwQzY0
MURCODA1MzIwMDE3QTkwQiAvKiBXb3JrZXJEZWJ1Z2dlci5oICovLAorCQkJCUE1NEEwQzVGMURC
N0Y4QjcwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcCAqLywKKwkJCQlB
NTRBMEM2MDFEQjdGOEI3MDAxN0E5MEIgLyogV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5oICov
LAorCQkJCUE1NEEwQzY3MURCODA3RDAwMDE3QTkwQiAvKiBXb3JrZXJUb1BhZ2VGcm9udGVuZENo
YW5uZWwuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gaW5zcGVjdG9yOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJCXRhYldpZHRoID0gODsKKwkJCXVzZXNUYWJzID0gMDsKKwkJfTsKKwkJ
MUNERDQ0NjYwQkE5QzgwMDAwRjkwMTQ3IC8qIENvbmZpZ3VyYXRpb25zICovID0geworCQkJaXNh
ID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkxQ0RENDVFNjBCQTlDODQ2MDBGOTAx
NDcgLyogQmFzZS54Y2NvbmZpZyAqLywKKwkJCQkxQ0RENDVFNDBCQTlDODQ2MDBGOTAxNDcgLyog
RGVidWdSZWxlYXNlLnhjY29uZmlnICovLAorCQkJCTQ0OTA5OEIxMEY4RjgyNTIwMDc2QTMyNyAv
KiBGZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyAqLywKKwkJCQk1MzU1RThERDFGOTY4MDQyMDAzMUUw
OEMgLyogR2VuZXJhdGVVbmlmaWVkU291cmNlcy54Y2NvbmZpZyAqLywKKwkJCQlBMUI4OUI4RDIy
MUUwMUVGMDBFQjRDRUEgLyogU0RLVmFyaWFudC54Y2NvbmZpZyAqLywKKwkJCQkxQzkwNERGOTBC
QTlEMkM4MDA4MUU5RDAgLyogVmVyc2lvbi54Y2NvbmZpZyAqLywKKwkJCQkxQ0RENDVFNTBCQTlD
ODQ2MDBGOTAxNDcgLyogV2ViQ29yZS54Y2NvbmZpZyAqLywKKwkJCQlFMUJBNjZGMjE3NDJCREND
MDBDMjAyNTEgLyogV2ViQ29yZVRlc3RTaGltLnhjY29uZmlnICovLAorCQkJCTQxODE3MDdEMTM4
NkVERjIwMDU3QUFBNCAvKiBXZWJDb3JlVGVzdFN1cHBvcnQueGNjb25maWcgKi8sCisJCQkJMzcx
MTlBNzkyMENDQjYxMDAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZp
ZyAqLywKKwkJCSk7CisJCQlwYXRoID0gQ29uZmlndXJhdGlvbnM7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQkJdGFiV2lkdGggPSA0OworCQkJdXNlc1RhYnMgPSAwOworCQl9OworCQkx
Q0UzNDk3ODI2QjMzQjVEMDA4MzA2QkQgLyogZ3B1ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7
CisJCQljaGlsZHJlbiA9ICgKKwkJCQkxQ0UzNDk3QjI2QjMzQjhDMDA4MzA2QkQgLyogY29jb2Eg
Ki8sCisJCQkJMUNFMzQ5N0EyNkIzM0I3QTAwODMwNkJEIC8qIEdQVURldmljZS5oICovLAorCQkJ
KTsKKwkJCXBhdGggPSBncHU7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQkx
Q0UzNDk3QjI2QjMzQjhDMDA4MzA2QkQgLyogY29jb2EgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTFDRTM0OTdDMjZCMzNCQUUwMDgzMDZCRCAvKiBHUFVE
ZXZpY2VNZXRhbC5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0gY29jb2E7CisJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOworCQl9OworCQkxRDAwMjY5QTIzNzRCOUY4MDBDQTZDREYgLyogUGljdHVy
ZUluUGljdHVyZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJMUQwMDI2QTkyMzc0RjlEOTAwQ0E2Q0RGIC8qIEpTRW50ZXJQaWN0dXJlSW5QaWN0dXJlRXZl
bnQuY3BwICovLAorCQkJCTFEMDAyNkE4MjM3NEY5RDkwMENBNkNERiAvKiBKU0VudGVyUGljdHVy
ZUluUGljdHVyZUV2ZW50LmggKi8sCisJCQkJMUQwMDI2QTMyMzc0RDYyNDAwQ0E2Q0RGIC8qIEpT
UGljdHVyZUluUGljdHVyZVdpbmRvdy5jcHAgKi8sCisJCQkJMUQwMDI2QTIyMzc0RDYyMzAwQ0E2
Q0RGIC8qIEpTUGljdHVyZUluUGljdHVyZVdpbmRvdy5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBQ
aWN0dXJlSW5QaWN0dXJlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMURF
RjA2QTIyMzNDMzJEQjAwRUUyMjhEIC8qIHBpY3R1cmVpbnBpY3R1cmUgKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTFERUYwNkRFMjMzRDJFMUMwMEVFMjI4
RCAvKiBEb2N1bWVudCtQaWN0dXJlSW5QaWN0dXJlLmlkbCAqLywKKwkJCQk3QzM2NTU2RTI1MDZE
Rjk5MDBBNzg4MkIgLyogRG9jdW1lbnRPclNoYWRvd1Jvb3QrUGljdHVyZUluUGljdHVyZS5pZGwg
Ki8sCisJCQkJMURFRjA2REMyMzNEMkUxQzAwRUUyMjhEIC8qIERvY3VtZW50UGljdHVyZUluUGlj
dHVyZS5jcHAgKi8sCisJCQkJMURFRjA2REQyMzNEMkUxQzAwRUUyMjhEIC8qIERvY3VtZW50UGlj
dHVyZUluUGljdHVyZS5oICovLAorCQkJCTFERUYwNkNCMjMzQzNEMTUwMEVFMjI4RCAvKiBFbnRl
clBpY3R1cmVJblBpY3R1cmVFdmVudC5jcHAgKi8sCisJCQkJMURFRjA2Q0EyMzNDM0QwQjAwRUUy
MjhEIC8qIEVudGVyUGljdHVyZUluUGljdHVyZUV2ZW50LmggKi8sCisJCQkJMURFRjA2RDAyMzND
M0Q0MTAwRUUyMjhEIC8qIEVudGVyUGljdHVyZUluUGljdHVyZUV2ZW50LmlkbCAqLywKKwkJCQkx
REVGMDZDRjIzM0MzRDM4MDBFRTIyOEQgLyogSFRNTFZpZGVvRWxlbWVudCtQaWN0dXJlSW5QaWN0
dXJlLmlkbCAqLywKKwkJCQkxREVGMDZEMjIzM0MzRDU2MDBFRTIyOEQgLyogSFRNTFZpZGVvRWxl
bWVudFBpY3R1cmVJblBpY3R1cmUuY3BwICovLAorCQkJCTFERUYwNkNDMjMzQzNEMjAwMEVFMjI4
RCAvKiBIVE1MVmlkZW9FbGVtZW50UGljdHVyZUluUGljdHVyZS5oICovLAorCQkJCTFERUYwNkNF
MjMzQzNEMzEwMEVFMjI4RCAvKiBQaWN0dXJlSW5QaWN0dXJlV2luZG93LmNwcCAqLywKKwkJCQkx
REVGMDZDRDIzM0MzRDJBMDBFRTIyOEQgLyogUGljdHVyZUluUGljdHVyZVdpbmRvdy5oICovLAor
CQkJCTFERUYwNkQxMjMzQzNENEIwMEVFMjI4RCAvKiBQaWN0dXJlSW5QaWN0dXJlV2luZG93Lmlk
bCAqLywKKwkJCSk7CisJCQlwYXRoID0gcGljdHVyZWlucGljdHVyZTsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTI2Qjk5OThEMTgwM0FERkEwMEQwMTEyMSAvKiBjc3NqaXQg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUU0NDUxMDc3
MjAyQzdFMDEwMDY1N0QzMyAvKiBDb21waWxlZFNlbGVjdG9yLmggKi8sCisJCQkJMjZCOTk5OTIx
ODAzQjlEOTAwRDAxMTIxIC8qIEZ1bmN0aW9uQ2FsbC5oICovLAorCQkJCTI2Qjk5OThFMTgwM0FF
NzIwMEQwMTEyMSAvKiBSZWdpc3RlckFsbG9jYXRvci5oICovLAorCQkJCTI2Qjk5OTk0MTgwNEQ1
NDIwMEQwMTEyMSAvKiBTZWxlY3RvckNvbXBpbGVyLmNwcCAqLywKKwkJCQkyNkI5OTk5NTE4MDRE
NTQyMDBEMDExMjEgLyogU2VsZWN0b3JDb21waWxlci5oICovLAorCQkJCTI2Qjk5OTkwMTgwM0Iz
QzkwMEQwMTEyMSAvKiBTdGFja0FsbG9jYXRvci5oICovLAorCQkJKTsKKwkJCXBhdGggPSBjc3Nq
aXQ7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQkyNkYwQzg5MDFBMkQ3OUNC
MDAyNzk0RjggLyogY29udGVudGV4dGVuc2lvbnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCTQzRURENjdDMUI0ODVEQkYwMDY0MEU3NSAvKiBDb21iaW5l
ZEZpbHRlcnNBbHBoYWJldC5jcHAgKi8sCisJCQkJNDNFREQ2N0QxQjQ4NURCRjAwNjQwRTc1IC8q
IENvbWJpbmVkRmlsdGVyc0FscGhhYmV0LmggKi8sCisJCQkJMjZFOTQ0RDQxQUM0QjJERDAwN0I4
NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVycy5jcHAgKi8sCisJCQkJMjZFOTQ0RDUxQUM0QjJERDAw
N0I4NUI1IC8qIENvbWJpbmVkVVJMRmlsdGVycy5oICovLAorCQkJCTdDOTNGMzQ3MUFBNkJBNUUw
MEE5OEJBQiAvKiBDb21waWxlZENvbnRlbnRFeHRlbnNpb24uY3BwICovLAorCQkJCTdDOTNGMzQ4
MUFBNkJBNUUwMEE5OEJBQiAvKiBDb21waWxlZENvbnRlbnRFeHRlbnNpb24uaCAqLywKKwkJCQk1
MUI0NUQxRTFBQjhEMUUyMDAxMTdDRDIgLyogQ29udGVudEV4dGVuc2lvbi5jcHAgKi8sCisJCQkJ
NTFCNDVEMUYxQUI4RDFFMjAwMTE3Q0QyIC8qIENvbnRlbnRFeHRlbnNpb24uaCAqLywKKwkJCQk1
Q0RGQTZDNzFBQTRGMkRBMDBFQTg3NDYgLyogQ29udGVudEV4dGVuc2lvbkFjdGlvbnMuaCAqLywK
KwkJCQk3QzkzRjM0QjFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lvbkNvbXBpbGVy
LmNwcCAqLywKKwkJCQk3QzkzRjM0QzFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lv
bkNvbXBpbGVyLmggKi8sCisJCQkJN0NGREM1N0ExQUMxRDgwNTAwRTI0QTU3IC8qIENvbnRlbnRF
eHRlbnNpb25FcnJvci5jcHAgKi8sCisJCQkJN0NGREM1N0IxQUMxRDgwNTAwRTI0QTU3IC8qIENv
bnRlbnRFeHRlbnNpb25FcnJvci5oICovLAorCQkJCTI2RjBDODk1MUEyRTcyNEIwMDI3OTRGOCAv
KiBDb250ZW50RXh0ZW5zaW9uUGFyc2VyLmNwcCAqLywKKwkJCQkyNkYwQzg5NjFBMkU3MjRCMDAy
Nzk0RjggLyogQ29udGVudEV4dGVuc2lvblBhcnNlci5oICovLAorCQkJCTI2RjBDODk5MUEyRUMx
MTAwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uUnVsZS5jcHAgKi8sCisJCQkJMjZGMEM4OUEx
QTJFQzExMDAwMjc5NEY4IC8qIENvbnRlbnRFeHRlbnNpb25SdWxlLmggKi8sCisJCQkJMjZGMEM4
OUQxQTJFQzNCRTAwMjc5NEY4IC8qIENvbnRlbnRFeHRlbnNpb25zQmFja2VuZC5jcHAgKi8sCisJ
CQkJMjZGMEM4OUUxQTJFQzNCRTAwMjc5NEY4IC8qIENvbnRlbnRFeHRlbnNpb25zQmFja2VuZC5o
ICovLAorCQkJCTI2MjM5MTM1MUE2NDhDRUUwMDcyNTFBMyAvKiBDb250ZW50RXh0ZW5zaW9uc0Rl
YnVnZ2luZy5oICovLAorCQkJCTUxRkI2N0Q5MUFFNkI1RTQwMEQwNkM1QSAvKiBDb250ZW50RXh0
ZW5zaW9uU3R5bGVTaGVldC5jcHAgKi8sCisJCQkJNTFGQjY3REExQUU2QjVFNDAwRDA2QzVBIC8q
IENvbnRlbnRFeHRlbnNpb25TdHlsZVNoZWV0LmggKi8sCisJCQkJNUM5QzJEQjMyMjQxQTY3MzAw
OTk2QjBCIC8qIENvbnRlbnRSdWxlTGlzdFJlc3VsdHMuaCAqLywKKwkJCQkyNjc3MjVGNjFBNUIz
QUQ5MDAzQzI0REQgLyogREZBLmNwcCAqLywKKwkJCQkyNjc3MjVGNzFBNUIzQUQ5MDAzQzI0REQg
LyogREZBLmggKi8sCisJCQkJNUMzOTMwNUQxQUEwRjZBOTAwMjlDODE2IC8qIERGQUJ5dGVjb2Rl
LmggKi8sCisJCQkJNUMzOTMwNUUxQUEwRjZBOTAwMjlDODE2IC8qIERGQUJ5dGVjb2RlQ29tcGls
ZXIuY3BwICovLAorCQkJCTVDMzkzMDVGMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZUNv
bXBpbGVyLmggKi8sCisJCQkJNUMzOTMwNjAxQUEwRjZBOTAwMjlDODE2IC8qIERGQUJ5dGVjb2Rl
SW50ZXJwcmV0ZXIuY3BwICovLAorCQkJCTVDMzkzMDYxMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFC
eXRlY29kZUludGVycHJldGVyLmggKi8sCisJCQkJMjZBODA3ODIxQjE4Rjk3NzAwRTIxOUJFIC8q
IERGQUNvbWJpbmVyLmNwcCAqLywKKwkJCQkyNkE4MDc4MzFCMThGOTc3MDBFMjE5QkUgLyogREZB
Q29tYmluZXIuaCAqLywKKwkJCQkyNkE1MTdGQjFBQjkyMjM4MDA2MzM1REYgLyogREZBTWluaW1p
emVyLmNwcCAqLywKKwkJCQkyNkE1MTdGQzFBQjkyMjM4MDA2MzM1REYgLyogREZBTWluaW1pemVy
LmggKi8sCisJCQkJMjZENEU4NDUxQjQyNTM5RDAwRTAzM0EyIC8qIERGQU5vZGUuY3BwICovLAor
CQkJCTI2NzcyNUY5MUE1QjNBRDkwMDNDMjRERCAvKiBERkFOb2RlLmggKi8sCisJCQkJMjZFQTg5
QTYxQjRGMkI3NTAwOEM1RkQyIC8qIEhhc2hhYmxlQWN0aW9uTGlzdC5oICovLAorCQkJCTI2Rjc1
NkIyMUIzQjY2RjcwMDA1REQ3OSAvKiBJbW11dGFibGVORkEuaCAqLywKKwkJCQkyNkY3NTZCNDFC
M0I2OEYyMDAwNURENzkgLyogSW1tdXRhYmxlTkZBTm9kZUJ1aWxkZXIuaCAqLywKKwkJCQkyNkY3
NTZBRTFCM0I2NUFDMDAwNURENzkgLyogTXV0YWJsZVJhbmdlLmggKi8sCisJCQkJMjZGNzU2QUYx
QjNCNjVBQzAwMDVERDc5IC8qIE11dGFibGVSYW5nZUxpc3QuaCAqLywKKwkJCQkyNjkzOTcyNTFB
NEE1RkJEMDBFODM0OUQgLyogTkZBLmNwcCAqLywKKwkJCQkyNjkzOTcyMzFBNEE1QjY0MDBFODM0
OUQgLyogTkZBLmggKi8sCisJCQkJMjY5Mzk3MjAxQTRBNDEyRjAwRTgzNDlEIC8qIE5GQU5vZGUu
aCAqLywKKwkJCQkyNjc3MjVGQTFBNUIzQUQ5MDAzQzI0REQgLyogTkZBVG9ERkEuY3BwICovLAor
CQkJCTI2NzcyNUZCMUE1QjNBRDkwMDNDMjRERCAvKiBORkFUb0RGQS5oICovLAorCQkJCTVDMkVC
RTAzMjU3NzFBNEMwMEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmNwcCAqLywKKwkJCQk1QzJFQkUw
MTI1NzcxOTg5MDBENTVCMDUgLyogU2VyaWFsaXplZE5GQS5oICovLAorCQkJCTI2RTk0NERDMUFD
NEI0RUEwMDdCODVCNSAvKiBUZXJtLmggKi8sCisJCQkJMjY3NzI2MDIxQTVERjZGMjAwM0MyNERE
IC8qIFVSTEZpbHRlclBhcnNlci5jcHAgKi8sCisJCQkJMjY3NzI2MDMxQTVERjZGMjAwM0MyNERE
IC8qIFVSTEZpbHRlclBhcnNlci5oICovLAorCQkJKTsKKwkJCXBhdGggPSBjb250ZW50ZXh0ZW5z
aW9uczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTI5QTgxMjA0MEZCQjlC
NDEwMDUxMDI5MyAvKiBhY2Nlc3NpYmlsaXR5ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJ
CQljaGlsZHJlbiA9ICgKKwkJCQlBQUE3MjhFRjE2RDFEOEJDMDBEM0JCQzYgLyogaW9zICovLAor
CQkJCTI5QUUyMTI5MjFBQjlFQ0IwMDg2OTI4MyAvKiBpc29sYXRlZHRyZWUgKi8sCisJCQkJMjlB
ODEyMDUwRkJCOUI1MjAwNTEwMjkzIC8qIG1hYyAqLywKKwkJCQkyOTgxQ0E5RDEzMTgyMkVDMDBE
MTJGMkEgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkLmNwcCAqLywKKwkJCQkyOUE4MTIxNjBGQkI5
QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkLmggKi8sCisJCQkJMjk4MUNBOUUx
MzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlBUklBR3JpZENlbGwuY3BwICovLAorCQkJ
CTI5QTgxMjEwMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmgg
Ki8sCisJCQkJMjk4MUNBOUYxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlBUklBR3Jp
ZFJvdy5jcHAgKi8sCisJCQkJMjlBODEyMTUwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxp
dHlBUklBR3JpZFJvdy5oICovLAorCQkJCTI5MTRFMzA1MUNBQjVBNDQwMDQ5OTY2RiAvKiBBY2Nl
c3NpYmlsaXR5QXR0YWNobWVudC5jcHAgKi8sCisJCQkJMjkxNEUzMDYxQ0FCNUE0NDAwNDk5NjZG
IC8qIEFjY2Vzc2liaWxpdHlBdHRhY2htZW50LmggKi8sCisJCQkJMjk4MUNBQTAxMzE4MjJFQzAw
RDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlJbWFnZU1hcExpbmsuY3BwICovLAorCQkJCTI5QTgxMjFE
MEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5SW1hZ2VNYXBMaW5rLmggKi8sCisJCQkJ
RjUyQThGRDUxRDBBODgwMTAwNzNDRjQyIC8qIEFjY2Vzc2liaWxpdHlMYWJlbC5jcHAgKi8sCisJ
CQkJRjUyQThGRDYxRDBBODgwMTAwNzNDRjQyIC8qIEFjY2Vzc2liaWxpdHlMYWJlbC5oICovLAor
CQkJCTI5ODFDQUExMTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5TGlzdC5jcHAgKi8s
CisJCQkJMjlBODEyMEUwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlMaXN0LmggKi8s
CisJCQkJMjk4MUNBQTIxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vzc2liaWxpdHlMaXN0Qm94LmNw
cCAqLywKKwkJCQkyOUE4MTIyNTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUxpc3RC
b3guaCAqLywKKwkJCQkyOTgxQ0FBMzEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eUxp
c3RCb3hPcHRpb24uY3BwICovLAorCQkJCTI5QTgxMjI0MEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nl
c3NpYmlsaXR5TGlzdEJveE9wdGlvbi5oICovLAorCQkJCTI5ODFBQkM0MTMxODIyRUMwMEQxMkYy
QSAvKiBBY2Nlc3NpYmlsaXR5TWF0aE1MRWxlbWVudC5jcHAgKi8sCisJCQkJMDdCMEFCQ0UxMDMy
MjQyMjAwRkJEQzMzIC8qIEFjY2Vzc2liaWxpdHlNYXRoTUxFbGVtZW50LmggKi8sCisJCQkJQTk3
ODdDQjMxRjVGNUM2NTAwQzU1MUM2IC8qIEFjY2Vzc2liaWxpdHlNZWRpYU9iamVjdC5jcHAgKi8s
CisJCQkJQTk3ODdDQjIxRjVGNTk5MjAwQzU1MUM2IC8qIEFjY2Vzc2liaWxpdHlNZWRpYU9iamVj
dC5oICovLAorCQkJCTc2Q0REMkVDMTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmlsaXR5TWVu
dUxpc3QuY3BwICovLAorCQkJCTc2Q0REMkVEMTEwM0RBNjYwMDY4MDUyMSAvKiBBY2Nlc3NpYmls
aXR5TWVudUxpc3QuaCAqLywKKwkJCQk3NkNERDJGMDExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNz
aWJpbGl0eU1lbnVMaXN0T3B0aW9uLmNwcCAqLywKKwkJCQk3NkNERDJGMTExMDNEQTY2MDA2ODA1
MjEgLyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0T3B0aW9uLmggKi8sCisJCQkJNzZDREQyRUUxMTAz
REE2NjAwNjgwNTIxIC8qIEFjY2Vzc2liaWxpdHlNZW51TGlzdFBvcHVwLmNwcCAqLywKKwkJCQk3
NkNERDJFRjExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0UG9wdXAuaCAq
LywKKwkJCQkyOUFDQjIxMzE0M0U3NDk4MDA2QkNBNUYgLyogQWNjZXNzaWJpbGl0eU1vY2tPYmpl
Y3QuY3BwICovLAorCQkJCTI5QUNCMjExMTQzRTcxMjgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5
TW9ja09iamVjdC5oICovLAorCQkJCTI5ODU3MDkyMTVDQzUzMkQwMDYzNTVDRCAvKiBBY2Nlc3Np
YmlsaXR5Tm9kZU9iamVjdC5jcHAgKi8sCisJCQkJMjk4NTcwOTMxNUNDNTMyRDAwNjM1NUNEIC8q
IEFjY2Vzc2liaWxpdHlOb2RlT2JqZWN0LmggKi8sCisJCQkJMjk4MUNBQTUxMzE4MjJFQzAwRDEy
RjJBIC8qIEFjY2Vzc2liaWxpdHlPYmplY3QuY3BwICovLAorCQkJCTI5QTgxMjE4MEZCQjlDMUQw
MDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0LmggKi8sCisJCQkJMjkzNkJGNUEyMUQ2OTk5
RTAwNEE4RkM5IC8qIEFjY2Vzc2liaWxpdHlPYmplY3RJbnRlcmZhY2UuaCAqLywKKwkJCQlBNDA5
Qzk4MjExNkQwREREMDA3MTk3QkQgLyogQWNjZXNzaWJpbGl0eVByb2dyZXNzSW5kaWNhdG9yLmNw
cCAqLywKKwkJCQlBNDA5Qzk4MzExNkQwREREMDA3MTk3QkQgLyogQWNjZXNzaWJpbGl0eVByb2dy
ZXNzSW5kaWNhdG9yLmggKi8sCisJCQkJMjk4MUNBQTYxMzE4MjJFQzAwRDEyRjJBIC8qIEFjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3QuY3BwICovLAorCQkJCTI5QTgxMjFCMEZCQjlDMUQwMDUxMDI5
MyAvKiBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmggKi8sCisJCQkJQTlFRTQ0OEYyMTBGRDY5
QTAwQjZFQUU2IC8qIEFjY2Vzc2liaWxpdHlSb2xlLmlkbCAqLywKKwkJCQkyOTgxQ0FBNzEzMTgy
MkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eVNjcm9sbGJhci5jcHAgKi8sCisJCQkJOTNDNEY2
RTkxMTA4RjlBNTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxiYXIuaCAqLywKKwkJCQky
OTgxQ0FBODEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eVNjcm9sbFZpZXcuY3BwICov
LAorCQkJCTI5NDg5RkM1MTJDMDBGMDMwMEQ4M0YwRiAvKiBBY2Nlc3NpYmlsaXR5U2Nyb2xsVmll
dy5oICovLAorCQkJCTI5ODFDQUE5MTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5U2xp
ZGVyLmNwcCAqLywKKwkJCQkwNzA5RkM0RDEwMjVERUUzMDA1OUNEQkEgLyogQWNjZXNzaWJpbGl0
eVNsaWRlci5oICovLAorCQkJCTI5RDdCQ0Y1MTQ0NEFGNTgwMDcwNjE5QyAvKiBBY2Nlc3NpYmls
aXR5U3BpbkJ1dHRvbi5jcHAgKi8sCisJCQkJMjlEN0JDRjkxNDQ0QUY3RDAwNzA2MTlDIC8qIEFj
Y2Vzc2liaWxpdHlTcGluQnV0dG9uLmggKi8sCisJCQkJNjk3MTAxMDcxQzZCRTE1NTAwMThDN0Yx
IC8qIEFjY2Vzc2liaWxpdHlTVkdFbGVtZW50LmNwcCAqLywKKwkJCQk2OTcxMDEwODFDNkJFMTU1
MDAxOEM3RjEgLyogQWNjZXNzaWJpbGl0eVNWR0VsZW1lbnQuaCAqLywKKwkJCQlBQUMwOENGMDE1
Rjk0MUZDMDBGMUUxODggLyogQWNjZXNzaWJpbGl0eVNWR1Jvb3QuY3BwICovLAorCQkJCUFBQzA4
Q0YxMTVGOTQxRkMwMEYxRTE4OCAvKiBBY2Nlc3NpYmlsaXR5U1ZHUm9vdC5oICovLAorCQkJCTI5
ODFDQUFBMTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5VGFibGUuY3BwICovLAorCQkJ
CTI5QTgxMjBEMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5VGFibGUuaCAqLywKKwkJ
CQkyOTgxQ0FBQjEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eVRhYmxlQ2VsbC5jcHAg
Ki8sCisJCQkJMjlBODEyMTQwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZUNl
bGwuaCAqLywKKwkJCQkyOTgxQ0FBQzEzMTgyMkVDMDBEMTJGMkEgLyogQWNjZXNzaWJpbGl0eVRh
YmxlQ29sdW1uLmNwcCAqLywKKwkJCQkyOUE4MTIyMzBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNz
aWJpbGl0eVRhYmxlQ29sdW1uLmggKi8sCisJCQkJMjk4MUNBQUQxMzE4MjJFQzAwRDEyRjJBIC8q
IEFjY2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5jcHAgKi8sCisJCQkJMjlBODEyMjEw
RkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5oICov
LAorCQkJCTI5ODFDQUFFMTMxODIyRUMwMEQxMkYyQSAvKiBBY2Nlc3NpYmlsaXR5VGFibGVSb3cu
Y3BwICovLAorCQkJCTI5QTgxMjEzMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5VGFi
bGVSb3cuaCAqLywKKwkJCQlBOTFDOUZCQzFCNjU4NkRFMDBBRkZENTQgLyogQWNjZXNzaWJpbGl0
eVRyZWUuY3BwICovLAorCQkJCUE5MUM5RkJEMUI2NTg2REUwMEFGRkQ1NCAvKiBBY2Nlc3NpYmls
aXR5VHJlZS5oICovLAorCQkJCUE5MUM5RkMwMUI2NTlBNjcwMEFGRkQ1NCAvKiBBY2Nlc3NpYmls
aXR5VHJlZUl0ZW0uY3BwICovLAorCQkJCUE5MUM5RkMxMUI2NTlBNjcwMEFGRkQ1NCAvKiBBY2Nl
c3NpYmlsaXR5VHJlZUl0ZW0uaCAqLywKKwkJCQlBOUVFNDQ4QzIxMEZDOUFEMDBCNkVBRTYgLyog
QXJpYUF0dHJpYnV0ZXMuaWRsICovLAorCQkJCUMwNDAwQzdFMjYxQ0IzREIwMEFGNDRGQSAvKiBB
WEltYWdlLmNwcCAqLywKKwkJCQlDMDQwMEM3QzI2MUNCM0RCMDBBRjQ0RkEgLyogQVhJbWFnZS5o
ICovLAorCQkJCUMwOEYxM0ExMjQ0NzY2REMwMEFCOTg5RiAvKiBBWExvZ2dlci5jcHAgKi8sCisJ
CQkJQzA0OTNFQjcyNDQ2OTlFNDAwOUFBQzgwIC8qIEFYTG9nZ2VyLmggKi8sCisJCQkJMjk4MUNB
QUYxMzE4MjJFQzAwRDEyRjJBIC8qIEFYT2JqZWN0Q2FjaGUuY3BwICovLAorCQkJCTI5QTgxMjFB
MEZCQjlDMUQwMDUxMDI5MyAvKiBBWE9iamVjdENhY2hlLmggKi8sCisJCQkJOTFDOUYyRjgxQUUz
QkUyNDAwOTVCNjFDIC8qIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50LmggKi8sCisJCQkJQkM0QTUz
MzAyNTYwNTkwMzAwMjhDNTkyIC8qIEZvcmNlZEFjY2Vzc2liaWxpdHlWYWx1ZS5oICovLAorCQkJ
KTsKKwkJCXBhdGggPSBhY2Nlc3NpYmlsaXR5OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKwkJMjlBODEyMDUwRkJCOUI1MjAwNTEwMjkzIC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMjk0QkRBRTYyMUZGNTgyQTAwNTEwNzdC
IC8qIEFjY2Vzc2liaWxpdHlPYmplY3RCYXNlLm1tICovLAorCQkJCTI5QTgxMjQ0MEZCQjlDQTkw
MDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0TWFjLm1tICovLAorCQkJCTI5QTgxMjQ3MEZC
QjlDQTkwMDUxMDI5MyAvKiBBWE9iamVjdENhY2hlTWFjLm1tICovLAorCQkJCTI5QTgxMjQ1MEZC
QjlDQTkwMDUxMDI5MyAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckJhc2UuaCAqLywK
KwkJCQkyOUE4MTI0NjBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJCYXNlLm1tICovLAorCQkJCUFBNDc4QTdEMTZDRDcwQzMwMDdEMUJCNCAvKiBXZWJBY2Nl
c3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5oICovLAorCQkJCUFBNDc4QTdFMTZDRDcwQzMwMDdE
MUJCNCAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbSAqLywKKwkJCSk7CisJ
CQlwYXRoID0gbWFjOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMjlBRTIx
MjkyMUFCOUVDQjAwODY5MjgzIC8qIGlzb2xhdGVkdHJlZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQzA3ODM3NUYyM0RGMjQ2MjAwQzlDNUM4IC8qIG1h
YyAqLywKKwkJCQkyOUFFMjEzNDIxQUJBNDhBMDA4NjkyODMgLyogQVhJc29sYXRlZE9iamVjdC5j
cHAgKi8sCisJCQkJMjlBRTIxMzMyMUFCQTQ4QTAwODY5MjgzIC8qIEFYSXNvbGF0ZWRPYmplY3Qu
aCAqLywKKwkJCQkyOUFFMjEyQzIxQUI5RUVCMDA4NjkyODMgLyogQVhJc29sYXRlZFRyZWUuY3Bw
ICovLAorCQkJCTI5QUUyMTJCMjFBQjlFRUIwMDg2OTI4MyAvKiBBWElzb2xhdGVkVHJlZS5oICov
LAorCQkJKTsKKwkJCXBhdGggPSBpc29sYXRlZHRyZWU7CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQl9OworCQkyQUVGNkZCQjI2RTcxNkVFMDAzMjZEMDIgLyogbnVtZXJpYyAqLyA9IHsK
KwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMkFFRjZGREUyNkU4MDFC
OTAwMzI2RDAyIC8qIENTU01hdGhJbnZlcnQuY3BwICovLAorCQkJCTJBRUY2RkM2MjZFNzE2RUUw
MDMyNkQwMiAvKiBDU1NNYXRoSW52ZXJ0LmggKi8sCisJCQkJMkFFRjZGQzkyNkU3MTZFRTAwMzI2
RDAyIC8qIENTU01hdGhJbnZlcnQuaWRsICovLAorCQkJCTJBRUY2RkUxMjZFODAyRjAwMDMyNkQw
MiAvKiBDU1NNYXRoTWF4LmNwcCAqLywKKwkJCQkyQUVGNkZCRDI2RTcxNkVFMDAzMjZEMDIgLyog
Q1NTTWF0aE1heC5oICovLAorCQkJCTJBRUY2RkMwMjZFNzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRo
TWF4LmlkbCAqLywKKwkJCQkyQUVGNkZFMjI2RTgwMkYwMDAzMjZEMDIgLyogQ1NTTWF0aE1pbi5j
cHAgKi8sCisJCQkJMkFFRjZGQ0EyNkU3MTZFRTAwMzI2RDAyIC8qIENTU01hdGhNaW4uaCAqLywK
KwkJCQkyQUVGNkZDODI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aE1pbi5pZGwgKi8sCisJCQkJ
MkFFRjZGRTMyNkU4MDJGMDAwMzI2RDAyIC8qIENTU01hdGhOZWdhdGUuY3BwICovLAorCQkJCTJB
RUY2RkQyMjZFN0VDOUIwMDMyNkQwMiAvKiBDU1NNYXRoTmVnYXRlLmggKi8sCisJCQkJMkFFRjZG
RDEyNkU3RUM5QjAwMzI2RDAyIC8qIENTU01hdGhOZWdhdGUuaWRsICovLAorCQkJCTJBRUY2RkM1
MjZFNzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRoT3BlcmF0b3IuaCAqLywKKwkJCQkyQUVGNkZDQjI2
RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aE9wZXJhdG9yLmlkbCAqLywKKwkJCQkyQUVGNkZFNDI2
RTgwMkYwMDAzMjZEMDIgLyogQ1NTTWF0aFByb2R1Y3QuY3BwICovLAorCQkJCTJBRUY2RkMyMjZF
NzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRoUHJvZHVjdC5oICovLAorCQkJCTJBRUY2RkJDMjZFNzE2
RUUwMDMyNkQwMiAvKiBDU1NNYXRoUHJvZHVjdC5pZGwgKi8sCisJCQkJMkFFRjZGRTUyNkU4MDJG
MTAwMzI2RDAyIC8qIENTU01hdGhTdW0uY3BwICovLAorCQkJCTJBRUY2RkMxMjZFNzE2RUUwMDMy
NkQwMiAvKiBDU1NNYXRoU3VtLmggKi8sCisJCQkJMkFFRjZGQzMyNkU3MTZFRTAwMzI2RDAyIC8q
IENTU01hdGhTdW0uaWRsICovLAorCQkJCTJBRUY2RkU2MjZFODAyRjEwMDMyNkQwMiAvKiBDU1NN
YXRoVmFsdWUuY3BwICovLAorCQkJCTJBRUY2RkM3MjZFNzE2RUUwMDMyNkQwMiAvKiBDU1NNYXRo
VmFsdWUuaCAqLywKKwkJCQkyQUVGNkZCRTI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTWF0aFZhbHVl
LmlkbCAqLywKKwkJCQkyQUVGNkZFMDI2RTgwMkVGMDAzMjZEMDIgLyogQ1NTTnVtZXJpY0FycmF5
LmNwcCAqLywKKwkJCQkyQUVGNkZCRjI2RTcxNkVFMDAzMjZEMDIgLyogQ1NTTnVtZXJpY0FycmF5
LmggKi8sCisJCQkJMkFFRjZGQzQyNkU3MTZFRTAwMzI2RDAyIC8qIENTU051bWVyaWNBcnJheS5p
ZGwgKi8sCisJCQkJMkFFRjZGQ0YyNkU3MUYyRTAwMzI2RDAyIC8qIENTU051bWVyaWNCYXNlVHlw
ZS5oICovLAorCQkJCTJBRUY2RkNEMjZFNzFGMkQwMDMyNkQwMiAvKiBDU1NOdW1lcmljQmFzZVR5
cGUuaWRsICovLAorCQkJCTJBRUY2RkNFMjZFNzFGMkQwMDMyNkQwMiAvKiBDU1NOdW1lcmljVHlw
ZS5oICovLAorCQkJCTJBRUY2RkQwMjZFNzFGMkUwMDMyNkQwMiAvKiBDU1NOdW1lcmljVHlwZS5p
ZGwgKi8sCisJCQkpOworCQkJcGF0aCA9IG51bWVyaWM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQl9OworCQkyQ0UxMTg5ODI0QzI0MDJDMDAzNzcwRTkgLyogY29yZWltYWdlICovID0g
eworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkyQ0FBNEEzOTI0QkUx
OEI3MDA5REVFNzAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2UuaCAqLywKKwkJCQky
Q0FBNEEzNzI0QkUxOEExMDA5REVFNzAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXJDb3JlSW1hZ2Uu
bW0gKi8sCisJCQkpOworCQkJcGF0aCA9IGNvcmVpbWFnZTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7CisJCX07CisJCTJEMDYyMTQ2MURBNjM5RUMwMEE3RkIyNiAvKiBsZWdhY3kgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNEQTk4RTA5MTYwM0NE
NTkwMEZFQTNCMSAvKiBMZWdhY3lDRE0uY3BwICovLAorCQkJCUNEQTk4RTBBMTYwM0NENTkwMEZF
QTNCMSAvKiBMZWdhY3lDRE0uaCAqLywKKwkJCQlDREE5OEUwQzE2MDNDRjNDMDBGRUEzQjEgLyog
TGVnYWN5Q0RNUHJpdmF0ZS5oICovLAorCQkJCUNERThCNUVBMUE2OTc3NzMwMEI0QjY2QSAvKiBM
ZWdhY3lDRE1Qcml2YXRlQ2xlYXJLZXkuY3BwICovLAorCQkJCUNERThCNUVCMUE2OTc3NzMwMEI0
QjY2QSAvKiBMZWdhY3lDRE1Qcml2YXRlQ2xlYXJLZXkuaCAqLywKKwkJCQlDRENBOThFQTE4QjJD
OEVCMDBDMTJGRjkgLyogTGVnYWN5Q0RNUHJpdmF0ZU1lZGlhUGxheWVyLmNwcCAqLywKKwkJCQlD
RENBOThFOTE4QjJDOEQwMDBDMTJGRjkgLyogTGVnYWN5Q0RNUHJpdmF0ZU1lZGlhUGxheWVyLmgg
Ki8sCisJCQkJQ0RFOEI1RUUxQTY5Nzc4QjAwQjRCNjZBIC8qIExlZ2FjeUNETVNlc3Npb25DbGVh
cktleS5jcHAgKi8sCisJCQkJQ0RFOEI1RUYxQTY5Nzc4QjAwQjRCNjZBIC8qIExlZ2FjeUNETVNl
c3Npb25DbGVhcktleS5oICovLAorCQkJCTJEMDYyMTQyMURBNjM5ODgwMEE3RkIyNiAvKiBXZWJL
aXRNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAgKi8sCisJCQkJMkQwNjIxNDMxREE2Mzk4ODAwQTdG
QjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50LmggKi8sCisJCQkJMkQwNjIxNTMxREE2
M0FCRjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50LmlkbCAqLywKKwkJCQky
RDA2MjE0NzFEQTYzQTc5MDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVudC5jcHAg
Ki8sCisJCQkJMkQwNjIxNDgxREE2M0E3OTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TmVlZGVk
RXZlbnQuaCAqLywKKwkJCQkyRDA2MjE1NDFEQTYzQUJGMDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFL
ZXlOZWVkZWRFdmVudC5pZGwgKi8sCisJCQkJMkQwNjIxNDkxREE2M0E3OTAwQTdGQjI2IC8qIFdl
YktpdE1lZGlhS2V5cy5jcHAgKi8sCisJCQkJMkQwNjIxNEExREE2M0E3OTAwQTdGQjI2IC8qIFdl
YktpdE1lZGlhS2V5cy5oICovLAorCQkJCTJEMDYyMTU1MURBNjNBQkYwMEE3RkIyNiAvKiBXZWJL
aXRNZWRpYUtleXMuaWRsICovLAorCQkJCTJEMDYyMTRCMURBNjNBNzkwMEE3RkIyNiAvKiBXZWJL
aXRNZWRpYUtleVNlc3Npb24uY3BwICovLAorCQkJCTJEMDYyMTRDMURBNjNBNzkwMEE3RkIyNiAv
KiBXZWJLaXRNZWRpYUtleVNlc3Npb24uaCAqLywKKwkJCQkyRDA2MjE1NjFEQTYzQUJGMDBBN0ZC
MjYgLyogV2ViS2l0TWVkaWFLZXlTZXNzaW9uLmlkbCAqLywKKwkJCSk7CisJCQlwYXRoID0gbGVn
YWN5OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMkQ1MDM2NjYxQkNERERD
NDAwRTIwQkIzIC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJMkQ1MDM2NjcxQkNERERDNDAwRTIwQkIzIC8qIEdlc3R1cmVFdmVudHMuY3BwICov
LAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9
OworCQkyRDhEM0JFQTIzODQ3QUM4MDA2NTcwNzUgLyogZ2VzdHVyZS1yZWNvZ25pemVycyAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMkQ4RDNCRUIyMzg0
N0FDOTAwNjU3MDc1IC8qIGdlc3R1cmUtcmVjb2duaXplci5qcyAqLywKKwkJCQkyRDhEM0JFQzIz
ODQ3QUM5MDA2NTcwNzUgLyogcGluY2guanMgKi8sCisJCQkJMkQ4RDNCRUQyMzg0N0FDOTAwNjU3
MDc1IC8qIHRhcC5qcyAqLywKKwkJCSk7CisJCQlwYXRoID0gImdlc3R1cmUtcmVjb2duaXplcnMi
OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMkU0MzQ2MzEwRjU0NkE2ODAw
QjBGMUJBIC8qIHdvcmtlcnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVu
ID0gKAorCQkJCTUxRjE3NTQ0MUYzRUJCRjIwMEM3NDk1MCAvKiBzZXJ2aWNlICovLAorCQkJCTQx
RTFCMUNBMEZGNTk4NjkwMDU3NkIzQiAvKiBBYnN0cmFjdFdvcmtlci5jcHAgKi8sCisJCQkJNDFF
MUIxQ0IwRkY1OTg2OTAwNTc2QjNCIC8qIEFic3RyYWN0V29ya2VyLmggKi8sCisJCQkJNDFFMUIx
Q0MwRkY1OTg2OTAwNTc2QjNCIC8qIEFic3RyYWN0V29ya2VyLmlkbCAqLywKKwkJCQk0MTYyQTQ0
RDEwMTE0NUFFMDBERkYzRUQgLyogRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuY3BwICovLAor
CQkJCTQxNjJBNDRFMTAxMTQ1QUUwMERGRjNFRCAvKiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29w
ZS5oICovLAorCQkJCTQxNjJBNDRGMTAxMTQ1QUUwMERGRjNFRCAvKiBEZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZS5pZGwgKi8sCisJCQkJNDFBM0Q1OEMxMDFDMTUyRDAwMzE2RDA3IC8qIERlZGlj
YXRlZFdvcmtlclRocmVhZC5jcHAgKi8sCisJCQkJNDFBM0Q1OEQxMDFDMTUyRDAwMzE2RDA3IC8q
IERlZGljYXRlZFdvcmtlclRocmVhZC5oICovLAorCQkJCTQ2MkU0QzRGMjYxNkE4MDEwMDNBMkM2
NyAvKiBTY3JpcHRCdWZmZXIuY3BwICovLAorCQkJCTQ2MkU0QzREMjYxNkE4MDEwMDNBMkM2NyAv
KiBTY3JpcHRCdWZmZXIuaCAqLywKKwkJCQk1QzFCMUQyMDI2RjE1QjFBMDA4ODJEQTIgLyogU2hh
cmVkV29ya2VyLmNwcCAqLywKKwkJCQk1QzFCMUQyNDI2RjE1QjFBMDA4ODJEQTIgLyogU2hhcmVk
V29ya2VyLmggKi8sCisJCQkJNUMxQjFEMjMyNkYxNUIxQTAwODgyREEyIC8qIFNoYXJlZFdvcmtl
ci5pZGwgKi8sCisJCQkJNUMxQjFEMUUyNkYxNUIxOTAwODgyREEyIC8qIFNoYXJlZFdvcmtlckds
b2JhbFNjb3BlLmNwcCAqLywKKwkJCQk1QzFCMUQyMTI2RjE1QjFBMDA4ODJEQTIgLyogU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGUuaCAqLywKKwkJCQk1QzFCMUQyMjI2RjE1QjFBMDA4ODJEQTIgLyog
U2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaWRsICovLAorCQkJCTJFNDM0NjMzMEY1NDZBODIwMEIw
RjFCQSAvKiBXb3JrZXIuY3BwICovLAorCQkJCTJFNDM0NjM0MEY1NDZBODIwMEIwRjFCQSAvKiBX
b3JrZXIuaCAqLywKKwkJCQkyRTQzNDYzNTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyLmlkbCAq
LywKKwkJCQlBNDU3MzJDRjFDM0FGRDU5MDE4MDYwOEYgLyogV29ya2VyQW5pbWF0aW9uQ29udHJv
bGxlci5jcHAgKi8sCisJCQkJQTQ1NzMzQ0YxRDNBRkQ1OTAxOTA2MDhGIC8qIFdvcmtlckFuaW1h
dGlvbkNvbnRyb2xsZXIuaCAqLywKKwkJCQlBNTU2MzlDRjFDNkVGRDU5MDA4MDZEOEUgLyogV29y
a2VyQ29uc29sZUNsaWVudC5jcHAgKi8sCisJCQkJQTU1NjM5RDAxQzZFRkQ1OTAwODA2RDhFIC8q
IFdvcmtlckNvbnNvbGVDbGllbnQuaCAqLywKKwkJCQlBNTJCMzQ5QzFGQTQxNkY4MDA4QjYyNDYg
LyogV29ya2VyRGVidWdnZXJQcm94eS5oICovLAorCQkJCTlCMEFCQ0EzMjM2NzlBQ0YwMEI0NTA4
NSAvKiBXb3JrZXJFdmVudExvb3AuY3BwICovLAorCQkJCTlCMEFCQ0E0MjM2NzlBQ0YwMEI0NTA4
NSAvKiBXb3JrZXJFdmVudExvb3AuaCAqLywKKwkJCQlBN0Q2QjM0ODBGNjExMDQ1MDBGRjlGRDEg
LyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCAqLywKKwkJCQlBN0Q2QjM0NzBGNjExMDQ1MDBG
RjlGRDEgLyogV29ya2VyRm9udExvYWRSZXF1ZXN0LmggKi8sCisJCQkJMkU0MzQ2MzYwRjU0NkE4
MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmNwcCAqLywKKwkJCQkyRTQzNDYzNzBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuaCAqLywKKwkJCQkyRTQzNDYzODBGNTQ2
QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGUuaWRsICovLAorCQkJCTJFNDM0NjM5MEY1
NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJHbG9iYWxTY29wZVByb3h5LmggKi8sCisJCQkJQTU0QTBD
NjkxREI4MzFGMTAwMTdBOTBCIC8qIFdvcmtlckluc3BlY3RvclByb3h5LmNwcCAqLywKKwkJCQlB
NTRBMEM2QTFEQjgzMUYyMDAxN0E5MEIgLyogV29ya2VySW5zcGVjdG9yUHJveHkuaCAqLywKKwkJ
CQkxOEY4MzFCNzBGRDQ4Qzc4MDBEOEM1NkIgLyogV29ya2VyTG9hZGVyUHJveHkuaCAqLywKKwkJ
CQkyRTQzNDYzQTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyTG9jYXRpb24uY3BwICovLAorCQkJ
CTJFNDM0NjNCMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJMb2NhdGlvbi5oICovLAorCQkJCTJF
NDM0NjNDMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJMb2NhdGlvbi5pZGwgKi8sCisJCQkJMkU0
MzQ2M0QwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcCAqLywKKwkJ
CQkyRTQzNDYzRTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyTWVzc2FnaW5nUHJveHkuaCAqLywK
KwkJCQkyRTQzNDYzRjBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyT2JqZWN0UHJveHkuaCAqLywK
KwkJCQk1QzFCMUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovLAorCQkJ
CTVDMUIxRDI1MjZGMTg4RDgwMDg4MkRBMiAvKiBXb3JrZXJPcHRpb25zLmlkbCAqLywKKwkJCQk4
MzFBM0VBODI1M0Y3OEMyMDA2NzgwNEYgLyogV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuY3Bw
ICovLAorCQkJCTgzRDZBQUU0MjUyNEVFMTMwMDQyOEI0QiAvKiBXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZS5oICovLAorCQkJCTgzNUFBMzg4MjUzRjU1QkIwMDc0NjU1NCAvKiBXb3JrZXJPcldv
cmtsZXRTY3JpcHRDb250cm9sbGVyLmNwcCAqLywKKwkJCQk4MzlBMDk1QjI1MjRGMzc2MDBFRUYz
MjggLyogV29ya2VyT3JXb3JrbGV0U2NyaXB0Q29udHJvbGxlci5oICovLAorCQkJCTgzN0ZDQjRE
MjU0MEUzQzcwMDkzNEQ0RiAvKiBXb3JrZXJPcldvcmtsZXRUaHJlYWQuY3BwICovLAorCQkJCTgz
RTgyOEIyMjUyNzk0Q0QwMDI3RTBGNyAvKiBXb3JrZXJPcldvcmtsZXRUaHJlYWQuaCAqLywKKwkJ
CQk0MTZFMjlBNTEwMkZBOTYyMDA3RkMxNEUgLyogV29ya2VyUmVwb3J0aW5nUHJveHkuaCAqLywK
KwkJCQkyRTQzNDY0MDBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyUnVuTG9vcC5jcHAgKi8sCisJ
CQkJMkU0MzQ2NDEwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlclJ1bkxvb3AuaCAqLywKKwkJCQlB
N0Q2QjM0ODBGNjExMDQ1MDBCNzlGRDEgLyogV29ya2VyU2NyaXB0TG9hZGVyLmNwcCAqLywKKwkJ
CQlBN0Q2QjM0NzBGNjExMDQ1MDBCNzlGRDEgLyogV29ya2VyU2NyaXB0TG9hZGVyLmggKi8sCisJ
CQkJMkVBNzY4MDMwRkU3MTI2NDAwQUI5QzhBIC8qIFdvcmtlclNjcmlwdExvYWRlckNsaWVudC5o
ICovLAorCQkJCTJFNDM0NjQyMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJUaHJlYWQuY3BwICov
LAorCQkJCTJFNDM0NjQzMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJUaHJlYWQuaCAqLywKKwkJ
CQlFM0FGRDdBQjI1NUY1MERDMDBFNUUzMEUgLyogV29ya2VyVGhyZWFkVHlwZS5oICovLAorCQkJ
CTUxRjE3NEZDMUYzNTg5ODgwMEM3NDk1MCAvKiBXb3JrZXJUeXBlLmggKi8sCisJCQkJNTFGMTc0
RkExRjM1ODhENzAwQzc0OTUwIC8qIFdvcmtlclR5cGUuaWRsICovLAorCQkJKTsKKwkJCXBhdGgg
PSB3b3JrZXJzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMzMzRjcwM0Qw
RkI0OUMxNjAwOEUxMkE2IC8qIG5vdGlmaWNhdGlvbnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTMzNTAzQ0M2MTAxN0ExQjEwMDNCNDdFMSAvKiBOb3Rp
ZmljYXRpb24uY3BwICovLAorCQkJCTMzM0Y3MDRGMEZCNDlDQTIwMDhFMTJBNiAvKiBOb3RpZmlj
YXRpb24uaCAqLywKKwkJCQkzMzNGNzA0RTBGQjQ5Q0EyMDA4RTEyQTYgLyogTm90aWZpY2F0aW9u
LmlkbCAqLywKKwkJCQkzMzUwM0M5OTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xp
ZW50LmggKi8sCisJCQkJMzEyOENBNjcxNDczMzE1MjAwNzRDNzJBIC8qIE5vdGlmaWNhdGlvbkNv
bnRyb2xsZXIuY3BwICovLAorCQkJCTMxMjhDQTZBMTQ3MzMxNjMwMDc0QzcyQSAvKiBOb3RpZmlj
YXRpb25Db250cm9sbGVyLmggKi8sCisJCQkJN0NDMkRFMDIxRUNBMDRBNTAwMjdCNzc0IC8qIE5v
dGlmaWNhdGlvbkRpcmVjdGlvbi5oICovLAorCQkJCTdDQzJEREY4MUVDOTQxNUEwMDI3Qjc3NCAv
KiBOb3RpZmljYXRpb25QZXJtaXNzaW9uLmggKi8sCisJCQkJN0NDMkRERkExRUM5NDE1QTAwMjdC
Nzc0IC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb24uaWRsICovLAorCQkJCTMxRUMxREFDMTRGRjI2
RUEwMEM5NDY2MiAvKiBOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaCAqLywKKwkJCQkz
MUVDMUQ1MDE0RkVGRDA4MDBDOTQ2NjIgLyogTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNr
LmlkbCAqLywKKwkJCSk7CisJCQlwYXRoID0gbm90aWZpY2F0aW9uczsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTMzNTAzQzlDMTAxNzlBOUEwMDNCNDdFMSAvKiBOb3RpZmlj
YXRpb25zICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkz
MzUwM0M5RjEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uY3BwICovLAorCQkJCTMz
NTAzQ0EwMTAxNzlBRDcwMDNCNDdFMSAvKiBKU05vdGlmaWNhdGlvbi5oICovLAorCQkJCTdDQzJE
REZFMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlmaWNhdGlvblBlcm1pc3Npb24uY3BwICovLAor
CQkJCTdDQzJEREZGMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlmaWNhdGlvblBlcm1pc3Npb24u
aCAqLywKKwkJCQkzMUVDMUUyNjE0RkY2MEVFMDBDOTQ2NjIgLyogSlNOb3RpZmljYXRpb25QZXJt
aXNzaW9uQ2FsbGJhY2suY3BwICovLAorCQkJCTMxRUMxRTI3MTRGRjYwRUUwMEM5NDY2MiAvKiBK
U05vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBO
b3RpZmljYXRpb25zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJMzcxN0Q3
RTQxN0VDQzM2QzAwM0MyNzZEIC8qIFNjcmlwdHMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCUY0ODM4OTc5MUUxREQyM0EwMDc2QjdFQSAvKiBFZGl0aW5n
SGlzdG9yeSAqLywKKwkJCQk3QzAxMUYzQzI0RkFEMzYwMDA1QkVGMTAgLyogU2V0dGluZ3NUZW1w
bGF0ZXMgKi8sCisJCQkJQTFFMDg2NkYyNDhBQUM4NTAwRTQ5NkQ5IC8qIGNoZWNrLXhjZmlsZWxp
c3RzLnNoICovLAorCQkJCTM3MTdEN0U1MTdFQ0MzQTYwMDNDMjc2RCAvKiBleHRyYWN0LWxvY2Fs
aXphYmxlLXN0cmluZ3MucGwgKi8sCisJCQkJQTFFMDg2NzAyNDhBQUM4NTAwRTQ5NkQ5IC8qIGdl
bmVyYXRlLWRlcml2ZWQtc291cmNlcy5zaCAqLywKKwkJCQlBMUUwODY2RTI0OEFBQzg1MDBFNDk2
RDkgLyogZ2VuZXJhdGUtdW5pZmllZC1zb3VyY2VzLnNoICovLAorCQkJCTdDMDExRjQzMjRGQUQz
NjEwMDVCRUYxMCAvKiBHZW5lcmF0ZVNldHRpbmdzLnJiICovLAorCQkJCTM3RDQ1NkZCMUE5QTUw
QjYwMDMzMzBBMSAvKiBMb2NhbGl6YWJsZVN0cmluZ3MucG0gKi8sCisJCQkpOworCQkJbmFtZSA9
IFNjcmlwdHM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQkzNzIxNDkzMzE4
RjBCNkQ2MDAxNTZFREMgLyogb3BlbnR5cGUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCUIyRDNEQTUzMEQwMDZDRDYwMEVGNkYzQSAvKiBPcGVuVHlwZUNH
LmNwcCAqLywKKwkJCQlCMkQzREE1NDBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVDRy5oICov
LAorCQkJCUIyRDNEQTUzMEQwMDZDRDYwMEVGNkYyNyAvKiBPcGVuVHlwZU1hdGhEYXRhLmNwcCAq
LywKKwkJCQlCMkQzREE1NDBEMDA2Q0Q2MDBFRjZGMjcgLyogT3BlblR5cGVNYXRoRGF0YS5oICov
LAorCQkJCUIyRDNFQTU0MEQwMDZDRDYwMEVGNkYyOCAvKiBPcGVuVHlwZVR5cGVzLmggKi8sCisJ
CQkpOworCQkJcGF0aCA9IG9wZW50eXBlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJ
fTsKKwkJNDEzODBDMUUxRjM0MzY2MDAwMTU1RkRBIC8qIGNhY2hlICovID0geworCQkJaXNhID0g
UEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MUZCMjc5QjFGMzRDRUYwMDA3OTU0ODcg
LyogQ2FjaGVRdWVyeU9wdGlvbnMuaCAqLywKKwkJCQk0MUZCMjc5OTFGMzRDRTlDMDA3OTU0ODcg
LyogQ2FjaGVRdWVyeU9wdGlvbnMuaWRsICovLAorCQkJCTQxRDEyOUM5MUYzRDBFRTMwMEQxNUU0
NyAvKiBDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmNwcCAqLywKKwkJCQk0MUQxMjlDQzFGM0QwRUUz
MDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbi5oICovLAorCQkJCTQxMzgwQzIwMUYz
NDM2OEEwMDE1NUZEQSAvKiBET01DYWNoZS5jcHAgKi8sCisJCQkJNDEzODBDMjUxRjM0MzY5QTAw
MTU1RkRBIC8qIERPTUNhY2hlLmggKi8sCisJCQkJNDEzODBDMjMxRjM0MzY5NDAwMTU1RkRBIC8q
IERPTUNhY2hlLmlkbCAqLywKKwkJCQk0MUZBQkQyRTFGNEUwMjUxMDA2QTZDOTcgLyogRE9NQ2Fj
aGVFbmdpbmUuY3BwICovLAorCQkJCTQxRkFCRDJCMUY0REZFNDIwMDZBNkM5NyAvKiBET01DYWNo
ZUVuZ2luZS5oICovLAorCQkJCTQxMzgwQzIxMUYzNDM2OEQwMDE1NUZEQSAvKiBET01DYWNoZVN0
b3JhZ2UuY3BwICovLAorCQkJCTQxMzgwQzIyMUYzNDM2OTAwMDE1NUZEQSAvKiBET01DYWNoZVN0
b3JhZ2UuaCAqLywKKwkJCQk0MTM4MEMyNDFGMzQzNjk3MDAxNTVGREEgLyogRE9NQ2FjaGVTdG9y
YWdlLmlkbCAqLywKKwkJCQk0MTg5MzhBRjI0MjlGOUFCMDA3RkRDNDEgLyogUmV0cmlldmVSZWNv
cmRzT3B0aW9ucy5oICovLAorCQkJCTQxMzgwQzJBMUYzNDNFMkYwMDE1NUZEQSAvKiBXaW5kb3dP
cldvcmtlckdsb2JhbFNjb3BlK0NhY2hlcy5pZGwgKi8sCisJCQkJNDFGQjI3OEYxRjM0QzI4MjAw
Nzk1NDg3IC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGVDYWNoZXMuY3BwICovLAorCQkJCTQx
RkIyNzhEMUYzNEMyODIwMDc5NTQ4NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlQ2FjaGVz
LmggKi8sCisJCQkJNDFBN0QzNEYxRjQzOEQxMDAwODk4OERFIC8qIFdvcmtlckNhY2hlU3RvcmFn
ZUNvbm5lY3Rpb24uY3BwICovLAorCQkJCTQxQTdEMzUwMUY0MzhEMTAwMDg5ODhERSAvKiBXb3Jr
ZXJDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGNhY2hlOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNDE1MEY5RUQxMkI2RTA5OTAwMDhD
ODYwIC8qIHNoYWRvdyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAo
CisJCQkJN0MxRTk3MjUxQTlGOTgzNDAwN0JGMEZCIC8qIEF1dG9GaWxsQnV0dG9uRWxlbWVudC5j
cHAgKi8sCisJCQkJN0MxRTk3MjYxQTlGOTgzNDAwN0JGMEZCIC8qIEF1dG9GaWxsQnV0dG9uRWxl
bWVudC5oICovLAorCQkJCUU1N0E3NDAxMjVDQTA1NzQwMDUwMDQ2QiAvKiBEYXRhTGlzdEJ1dHRv
bkVsZW1lbnQuY3BwICovLAorCQkJCUU1OEI0NUI4MjBBRDA3REQwMDk5MTAyNSAvKiBEYXRhTGlz
dEJ1dHRvbkVsZW1lbnQuaCAqLywKKwkJCQlFNUYwNkFGNjI0RDRCQjU2MDBCQkM0RjggLyogRGF0
ZVRpbWVFZGl0RWxlbWVudC5jcHAgKi8sCisJCQkJRTVGMDZBRjUyNEQ0QkI1NjAwQkJDNEY4IC8q
IERhdGVUaW1lRWRpdEVsZW1lbnQuaCAqLywKKwkJCQlFNUYwNkFFNjI0RDQ4NDdCMDBCQkM0Rjgg
LyogRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwICovLAorCQkJCUU1RjA2QUU1MjRENDg0N0IwMEJC
QzRGOCAvKiBEYXRlVGltZUZpZWxkRWxlbWVudC5oICovLAorCQkJCUU1RjA2QUYyMjRENEFBRTQw
MEJCQzRGOCAvKiBEYXRlVGltZUZpZWxkRWxlbWVudHMuY3BwICovLAorCQkJCUU1RjA2QUYxMjRE
NEFBRTQwMEJCQzRGOCAvKiBEYXRlVGltZUZpZWxkRWxlbWVudHMuaCAqLywKKwkJCQlFNUYwNkFF
QTI0RDQ5QkY3MDBCQkM0RjggLyogRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVtZW50LmNwcCAqLywK
KwkJCQlFNUYwNkFFOTI0RDQ5QkY3MDBCQkM0RjggLyogRGF0ZVRpbWVOdW1lcmljRmllbGRFbGVt
ZW50LmggKi8sCisJCQkJRTVGMDZBRUUyNEQ0QTYzNzAwQkJDNEY4IC8qIERhdGVUaW1lU3ltYm9s
aWNGaWVsZEVsZW1lbnQuY3BwICovLAorCQkJCUU1RjA2QUVEMjRENEE2MzcwMEJCQzRGOCAvKiBE
YXRlVGltZVN5bWJvbGljRmllbGRFbGVtZW50LmggKi8sCisJCQkJQTdDOUFCRjYxMzU3QTNCRjAw
RjU1MDNGIC8qIERldGFpbHNNYXJrZXJDb250cm9sLmNwcCAqLywKKwkJCQlBN0M5QUJGNzEzNTdB
M0JGMDBGNTUwM0YgLyogRGV0YWlsc01hcmtlckNvbnRyb2wuaCAqLywKKwkJCQlGNEREODY2MjI1
Q0M2MDg0MDA1OUJGREEgLyogaW1hZ2VPdmVybGF5LmNzcyAqLywKKwkJCQk0MTcyNTNBODEzNTRC
QkJDMDAzNjBGMkEgLyogTWVkaWFDb250cm9sVGV4dFRyYWNrQ29udGFpbmVyRWxlbWVudC5jcHAg
Ki8sCisJCQkJNDE3MjUzQTkxMzU0QkJCQzAwMzYwRjJBIC8qIE1lZGlhQ29udHJvbFRleHRUcmFj
a0NvbnRhaW5lckVsZW1lbnQuaCAqLywKKwkJCQlFNEUyNDM4MjFEQUI5NTNFMDBDMjZFNEIgLyog
bWV0ZXJFbGVtZW50U2hhZG93LmNzcyAqLywKKwkJCQlBNzE1RTY1MDEzNEJCQkVDMDBEOEU3MTMg
LyogUHJvZ3Jlc3NTaGFkb3dFbGVtZW50LmNwcCAqLywKKwkJCQlBNzE1RTY1MTEzNEJCQkVDMDBE
OEU3MTMgLyogUHJvZ3Jlc3NTaGFkb3dFbGVtZW50LmggKi8sCisJCQkJNDE1MEY5RjAxMkI2RTBF
NzAwMDhDODYwIC8qIFNsaWRlclRodW1iRWxlbWVudC5jcHAgKi8sCisJCQkJNDE1MEY5RUYxMkI2
RTBFNzAwMDhDODYwIC8qIFNsaWRlclRodW1iRWxlbWVudC5oICovLAorCQkJCTQ1MTI1MDIwMTVE
Q0UzN0QwMDJGODRFMiAvKiBTcGluQnV0dG9uRWxlbWVudC5jcHAgKi8sCisJCQkJNDUxMjUwMjEx
NURDRTM3RDAwMkY4NEUyIC8qIFNwaW5CdXR0b25FbGVtZW50LmggKi8sCisJCQkJMTQyQjk3Qzcx
MzEzODk0MzAwOEJFRjRCIC8qIFRleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHAgKi8sCisJCQkJ
MTQyQjk3QzgxMzEzODk0MzAwOEJFRjRCIC8qIFRleHRDb250cm9sSW5uZXJFbGVtZW50cy5oICov
LAorCQkJCUNFMjEyMTU0MjQwREJEMzAwMDZFRDQ0MyAvKiBUZXh0UGxhY2Vob2xkZXJFbGVtZW50
LmNwcCAqLywKKwkJCQlDRTIxMjE1MzI0MERCRDMwMDA2RUQ0NDMgLyogVGV4dFBsYWNlaG9sZGVy
RWxlbWVudC5oICovLAorCQkJCUE1NDE2RkUzMTg4MTBFRjgwMDA5RkM1RiAvKiBZb3VUdWJlRW1i
ZWRTaGFkb3dFbGVtZW50LmNwcCAqLywKKwkJCQlBNTQxNkZFNDE4ODEwRUY4MDAwOUZDNUYgLyog
WW91VHViZUVtYmVkU2hhZG93RWxlbWVudC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBzaGFkb3c7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk0MTU3NDc0MjFFMzg2OTgwMDBF
OTE0RDggLyogbGlid2VicnRjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQk0MUQ1MUJCMjFFNEUyRTgxMDAxMzFBNUIgLyogTGliV2ViUlRDQXVkaW9Gb3Jt
YXQuaCAqLywKKwkJCQk0MTUwODAzNDFFM0YwMEFBMDA1MUQ3NUQgLyogTGliV2ViUlRDQXVkaW9N
b2R1bGUuY3BwICovLAorCQkJCTQxNTA4MDM1MUUzRjAwQUEwMDUxRDc1RCAvKiBMaWJXZWJSVENB
dWRpb01vZHVsZS5oICovLAorCQkJCTQxRjIzNTQ1MjJGNTUwQkUwMEI0RkNEQiAvKiBMaWJXZWJS
VENEVE1GU2VuZGVyQmFja2VuZC5jcHAgKi8sCisJCQkJNDFGMjM1NDYyMkY1NTBCRjAwQjRGQ0RC
IC8qIExpYldlYlJUQ0RUTUZTZW5kZXJCYWNrZW5kLmggKi8sCisJCQkJNDRFMzQ5RjcyNDZGNERD
NzAwNjg0NzlDIC8qIExpYldlYlJUQ0VudW1UcmFpdHMuaCAqLywKKwkJCQk0MTU3NDc0MzFFMzg2
OTlFMDBFOTE0RDggLyogTGliV2ViUlRDTWFjcm9zLmggKi8sCisJCQkJNDFBMUIwMEQxRTUyNjU2
RTAwN0YzNzY5IC8qIExpYldlYlJUQ1Byb3ZpZGVyLmNwcCAqLywKKwkJCQk0MTU3NDc0NDFFMzg2
OTlFMDBFOTE0RDggLyogTGliV2ViUlRDUHJvdmlkZXIuaCAqLywKKwkJCQk0MUIyOEIzODFGODYw
QkQxMDBGQjUyQUMgLyogTGliV2ViUlRDUHJvdmlkZXJDb2NvYS5jcHAgKi8sCisJCQkJNDFCMjhC
MzYxRjg2MEJEMDAwRkI1MkFDIC8qIExpYldlYlJUQ1Byb3ZpZGVyQ29jb2EuaCAqLywKKwkJCQk0
MTBFNDQ1RjIzNDM3M0FEMDAwMTczRDQgLyogTGliV2ViUlRDU29ja2V0SWRlbnRpZmllci5oICov
LAorCQkJKTsKKwkJCW5hbWUgPSBsaWJ3ZWJydGM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQk0MTc2MTJBQTFFM0E5OTIzMDBDM0Q4MUQgLyogbGlid2VicnRjICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MTIwOUU5NjIxNkVDMzRG
MDBBNzNBMTIgLyogTGliV2ViUlRDQ2VydGlmaWNhdGVHZW5lcmF0b3IuY3BwICovLAorCQkJCTQx
MjA5RTk1MjE2RUMzNEUwMEE3M0ExMiAvKiBMaWJXZWJSVENDZXJ0aWZpY2F0ZUdlbmVyYXRvci5o
ICovLAorCQkJCTVDREQ4MzNGMUU0MzI1M0QwMDYyMUU5MiAvKiBMaWJXZWJSVENEYXRhQ2hhbm5l
bEhhbmRsZXIuY3BwICovLAorCQkJCTVDREQ4MzQwMUU0MzI1M0QwMDYyMUU5MiAvKiBMaWJXZWJS
VENEYXRhQ2hhbm5lbEhhbmRsZXIuaCAqLywKKwkJCQk0MTg4RDU2NDI2QzU1MzBCMDA0ODU4Qzgg
LyogTGliV2ViUlRDRHRsc1RyYW5zcG9ydEJhY2tlbmQuY3BwICovLAorCQkJCTQxODhENTY1MjZD
NTUzMEIwMDQ4NThDOCAvKiBMaWJXZWJSVENEdGxzVHJhbnNwb3J0QmFja2VuZC5oICovLAorCQkJ
CTQxNDUxNkRGMjZDQzA0MEQwMEFBQUJFMCAvKiBMaWJXZWJSVENJY2VUcmFuc3BvcnRCYWNrZW5k
LmNwcCAqLywKKwkJCQk0MTQ1MTZERDI2Q0MwNDBEMDBBQUFCRTAgLyogTGliV2ViUlRDSWNlVHJh
bnNwb3J0QmFja2VuZC5oICovLAorCQkJCTQxNzYxMkFCMUUzQTk5M0IwMEMzRDgxRCAvKiBMaWJX
ZWJSVENNZWRpYUVuZHBvaW50LmNwcCAqLywKKwkJCQk0MTc2MTJBQzFFM0E5OTNCMDBDM0Q4MUQg
LyogTGliV2ViUlRDTWVkaWFFbmRwb2ludC5oICovLAorCQkJCTQxNUEzQjczMjEzOEUyNjQwMDFC
NEJBQSAvKiBMaWJXZWJSVENPYnNlcnZlcnMuaCAqLywKKwkJCQk0MTc2MTJBRDFFM0E5OTNCMDBD
M0Q4MUQgLyogTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmNwcCAqLywKKwkJCQk0MTc2
MTJBRTFFM0E5OTNCMDBDM0Q4MUQgLyogTGliV2ViUlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmgg
Ki8sCisJCQkJNDFEMUEwNEEyMTNFRERGRTAwNjNGQjZCIC8qIExpYldlYlJUQ1J0cFJlY2VpdmVy
QmFja2VuZC5jcHAgKi8sCisJCQkJNDE4NkJEM0IyMTNFREUzODAwMDE4MjZGIC8qIExpYldlYlJU
Q1J0cFJlY2VpdmVyQmFja2VuZC5oICovLAorCQkJCTQxODFDNUMwMjU1M0VCNkUwMEFFQjBGRiAv
KiBMaWJXZWJSVENSdHBSZWNlaXZlclRyYW5zZm9ybUJhY2tlbmQuY3BwICovLAorCQkJCTQxODFD
NUMyMjU1M0VCNkYwMEFFQjBGRiAvKiBMaWJXZWJSVENSdHBSZWNlaXZlclRyYW5zZm9ybUJhY2tl
bmQuaCAqLywKKwkJCQk0MUQxQTA0QjIxM0VEREZFMDA2M0ZCNkIgLyogTGliV2ViUlRDUnRwU2Vu
ZGVyQmFja2VuZC5jcHAgKi8sCisJCQkJNDE4NkJEM0QyMTNFREUzOTAwMDE4MjZGIC8qIExpYldl
YlJUQ1J0cFNlbmRlckJhY2tlbmQuaCAqLywKKwkJCQk0MTgxQzVDMTI1NTNFQjZFMDBBRUIwRkYg
LyogTGliV2ViUlRDUnRwU2VuZGVyVHJhbnNmb3JtQmFja2VuZC5jcHAgKi8sCisJCQkJNDE4MUM1
QkUyNTUzRUI2RTAwQUVCMEZGIC8qIExpYldlYlJUQ1J0cFNlbmRlclRyYW5zZm9ybUJhY2tlbmQu
aCAqLywKKwkJCQk0MTg2QkQ0RDIxNDBCOUU4MDAwMTgyNkYgLyogTGliV2ViUlRDUnRwVHJhbnNj
ZWl2ZXJCYWNrZW5kLmNwcCAqLywKKwkJCQk0MTg2QkQ0QjIxNDBBODA1MDAwMTgyNkYgLyogTGli
V2ViUlRDUnRwVHJhbnNjZWl2ZXJCYWNrZW5kLmggKi8sCisJCQkJNDEwQkExMzEyNTcwRkU1NzAw
MkUyRjhBIC8qIExpYldlYlJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5jcHAgKi8sCisJCQkJNDE4
MUM1Q0MyNTU1ODM2ODAwQUVCMEZGIC8qIExpYldlYlJUQ1J0cFRyYW5zZm9ybWFibGVGcmFtZS5o
ICovLAorCQkJCTQxODFDNUNFMjU1NTg5NTUwMEFFQjBGRiAvKiBMaWJXZWJSVENSdHBUcmFuc2Zv
cm1CYWNrZW5kLmNwcCAqLywKKwkJCQk0MTgxQzVDRjI1NTU4OTU2MDBBRUIwRkYgLyogTGliV2Vi
UlRDUnRwVHJhbnNmb3JtQmFja2VuZC5oICovLAorCQkJCTQxNDUxNkU3MjZDRTUyM0UwMEFBQUJF
MCAvKiBMaWJXZWJSVENTY3RwVHJhbnNwb3J0QmFja2VuZC5jcHAgKi8sCisJCQkJNDE0NTE2RTUy
NkNFNTIzRTAwQUFBQkUwIC8qIExpYldlYlJUQ1NjdHBUcmFuc3BvcnRCYWNrZW5kLmggKi8sCisJ
CQkJNDFEMjhEMEIyMTM5RTAxRDAwRjQyMDZGIC8qIExpYldlYlJUQ1N0YXRzQ29sbGVjdG9yLmNw
cCAqLywKKwkJCQk0MUQyOEQwQzIxMzlFMDFFMDBGNDIwNkYgLyogTGliV2ViUlRDU3RhdHNDb2xs
ZWN0b3IuaCAqLywKKwkJCQk0MUQxQTA0OTIxM0VEREZEMDA2M0ZCNkIgLyogTGliV2ViUlRDVXRp
bHMuY3BwICovLAorCQkJCTQxRDFBMDRDMjEzRURERkYwMDYzRkI2QiAvKiBMaWJXZWJSVENVdGls
cy5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBsaWJ3ZWJydGM7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQk0MTdEQTRDRDEzNzM0MjA0MDA3QzU3RkIgLyogdGVzdGluZyAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQTE3NjNGM0IxRTIw
NTFBQjAwMUQ1OERFIC8qIGNvY29hICovLAorCQkJCTQxODE1QzFCMTM4MzE5NjMwMDU3QUFBNCAv
KiBqcyAqLywKKwkJCQlFMThEODNFNDI0M0Y3MUQwMDA5MjQ3RDYgLyogRmFrZVhSQm91bmRzUG9p
bnQuaCAqLywKKwkJCQlFMThEODNFRjI0M0Y3MUQ3MDA5MjQ3RDYgLyogRmFrZVhSQm91bmRzUG9p
bnQuaWRsICovLAorCQkJCUUxOEQ4M0RFMjQzRjcxQ0QwMDkyNDdENiAvKiBGYWtlWFJCdXR0b25T
dGF0ZUluaXQuaCAqLywKKwkJCQlFMThEODNFMzI0M0Y3MUNGMDA5MjQ3RDYgLyogRmFrZVhSQnV0
dG9uU3RhdGVJbml0LmlkbCAqLywKKwkJCQlFMThEODNFQTI0M0Y3MUQ0MDA5MjQ3RDYgLyogRmFr
ZVhSSW5wdXRTb3VyY2VJbml0LmggKi8sCisJCQkJRTE4RDgzREMyNDNGNzFDQjAwOTI0N0Q2IC8q
IEZha2VYUklucHV0U291cmNlSW5pdC5pZGwgKi8sCisJCQkJRTE4RDgzRTUyNDNGNzFEMTAwOTI0
N0Q2IC8qIEZha2VYUlJpZ2lkVHJhbnNmb3JtSW5pdC5oICovLAorCQkJCUUxOEQ4M0U2MjQzRjcx
RDEwMDkyNDdENiAvKiBGYWtlWFJSaWdpZFRyYW5zZm9ybUluaXQuaWRsICovLAorCQkJCUUxOEQ4
M0RGMjQzRjcxQ0QwMDkyNDdENiAvKiBGYWtlWFJWaWV3SW5pdC5oICovLAorCQkJCUUxOEQ4M0Uy
MjQzRjcxQ0YwMDkyNDdENiAvKiBGYWtlWFJWaWV3SW5pdC5pZGwgKi8sCisJCQkJNTE3MTRFQTkx
Q0Y2NTg5OTAwNDcyM0M0IC8qIEdDT2JzZXJ2YXRpb24uY3BwICovLAorCQkJCTUxNzE0RUFBMUNG
NjU4OTkwMDQ3MjNDNCAvKiBHQ09ic2VydmF0aW9uLmggKi8sCisJCQkJNTE3MTRFQUIxQ0Y2NTg5
OTAwNDcyM0M0IC8qIEdDT2JzZXJ2YXRpb24uaWRsICovLAorCQkJCTQxN0RBNENGMTM3MzQzMjYw
MDdDNTdGQiAvKiBJbnRlcm5hbHMuY3BwICovLAorCQkJCTQxN0RBNENFMTM3MzQzMjYwMDdDNTdG
QiAvKiBJbnRlcm5hbHMuaCAqLywKKwkJCQk0MTgxM0Y5MTEzODE4QUQ2MDA1N0FBQTQgLyogSW50
ZXJuYWxzLmlkbCAqLywKKwkJCQlFMTc5RjBEOTFCOTc3NEZFMDBFRDBBMjcgLyogSW50ZXJuYWxz
Lm1tICovLAorCQkJCUE3QkY3RURDMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdz
LmNwcCAqLywKKwkJCQlBN0JGN0VERDE0QzkxNzVBMDAxNDQ4OUQgLyogSW50ZXJuYWxTZXR0aW5n
cy5oICovLAorCQkJCUE3QkY3RURFMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdz
LmlkbCAqLywKKwkJCQk0MTM2QzU3ODIzOThFNUI1MDAyNDk3RDMgLyogSW50ZXJuYWxzTWFwTGlr
ZS5jcHAgKi8sCisJCQkJNDEzNkM1NzYyMzk4RTVCNDAwMjQ5N0QzIC8qIEludGVybmFsc01hcExp
a2UuaCAqLywKKwkJCQk0MTM2QzU3OTIzOThFNUI2MDAyNDk3RDMgLyogSW50ZXJuYWxzTWFwTGlr
ZS5pZGwgKi8sCisJCQkJNDEzNkVDMDkyMzgzODdDMzAwMEFEQkNFIC8qIEludGVybmFsc1NldExp
a2UuY3BwICovLAorCQkJCTQxMzZFQzBBMjM4Mzg3QzQwMDBBREJDRSAvKiBJbnRlcm5hbHNTZXRM
aWtlLmggKi8sCisJCQkJNDEzNkVDMDcyMzgzODc0NjAwMEFEQkNFIC8qIEludGVybmFsc1NldExp
a2UuaWRsICovLAorCQkJCUNEQzI2QjNDMTYwQTYyQjAwMDI2NzU3QiAvKiBMZWdhY3lNb2NrQ0RN
LmNwcCAqLywKKwkJCQlDREMyNkIzRDE2MEE2MkIwMDAyNjc1N0IgLyogTGVnYWN5TW9ja0NETS5o
ICovLAorCQkJCUE3QkU3RUREMTRDOTE3NUEwMDE0NDg5RCAvKiBNYWxsb2NTdGF0aXN0aWNzLmgg
Ki8sCisJCQkJQTdCRTdFREUxNEM5MTc1QTAwMTQ0ODlEIC8qIE1hbGxvY1N0YXRpc3RpY3MuaWRs
ICovLAorCQkJCUNENTM5M0NCMTc1RENDRTYwMEMwNzEyMyAvKiBNZW1vcnlJbmZvLmggKi8sCisJ
CQkJQ0Q1MzkzQ0MxNzVEQ0NFNjAwQzA3MTIzIC8qIE1lbW9yeUluZm8uaWRsICovLAorCQkJCUEx
RTA4NjYxMjQ4OUQzNDEwMEU0OTZEOSAvKiBNb2NrQXBwbGVQYXlTZXR1cEZlYXR1cmUuY3BwICov
LAorCQkJCUExRTA4NjYyMjQ4OUQzNDEwMEU0OTZEOSAvKiBNb2NrQXBwbGVQYXlTZXR1cEZlYXR1
cmUuaCAqLywKKwkJCQlDREY0QjcyMTFFMDNCRjgxMDBFMjM1QTIgLyogTW9ja0NETUZhY3Rvcnku
Y3BwICovLAorCQkJCUNERjRCNzIyMUUwM0JGODEwMEUyMzVBMiAvKiBNb2NrQ0RNRmFjdG9yeS5o
ICovLAorCQkJCUNERjRCNzFGMUUwM0JGNkYwMEUyMzVBMiAvKiBNb2NrQ0RNRmFjdG9yeS5pZGwg
Ki8sCisJCQkJQTFCRjZCODAxQUE5NkM3RDAwQUY0QThBIC8qIE1vY2tDb250ZW50RmlsdGVyLmNw
cCAqLywKKwkJCQlBMUJGNkI4MTFBQTk2QzdEMDBBRjRBOEEgLyogTW9ja0NvbnRlbnRGaWx0ZXIu
aCAqLywKKwkJCQlBMUI1QjI5QzFBQUE4NDZFMDA4QjYwNDIgLyogTW9ja0NvbnRlbnRGaWx0ZXJT
ZXR0aW5ncy5jcHAgKi8sCisJCQkJQTFCNUIyOUQxQUFBODQ2RTAwOEI2MDQyIC8qIE1vY2tDb250
ZW50RmlsdGVyU2V0dGluZ3MuaCAqLywKKwkJCQlBMTlBRUExQzFBQUE3QzQ5MDBCNTJCMjUgLyog
TW9ja0NvbnRlbnRGaWx0ZXJTZXR0aW5ncy5pZGwgKi8sCisJCQkJNTEwNThBRDcxRDY3OTI1NzAw
OUE1MzhDIC8qIE1vY2tHYW1lcGFkLmNwcCAqLywKKwkJCQk1MTA1OEFEODFENjc5MjU3MDA5QTUz
OEMgLyogTW9ja0dhbWVwYWQuaCAqLywKKwkJCQk1MTA1OEFEOTFENjc5MjU3MDA5QTUzOEMgLyog
TW9ja0dhbWVwYWRQcm92aWRlci5jcHAgKi8sCisJCQkJNTEwNThBREExRDY3OTI1NzAwOUE1MzhD
IC8qIE1vY2tHYW1lcGFkUHJvdmlkZXIuaCAqLywKKwkJCQk0MTU3RUJGOTFFM0FCMDY4MDBBQzlG
RTkgLyogTW9ja0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uLmNwcCAqLywKKwkJCQk0MTU3RUJGODFF
M0FCMDY4MDBBQzlGRTkgLyogTW9ja0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uLmggKi8sCisJCQkJ
MDc0MEIxNDMyNURFMzFBOTAwRTM4REJBIC8qIE1vY2tNZWRpYVNlc3Npb25Db29yZGluYXRvci5j
cHAgKi8sCisJCQkJMDc0MEIxNDEyNURFMzFBODAwRTM4REJBIC8qIE1vY2tNZWRpYVNlc3Npb25D
b29yZGluYXRvci5oICovLAorCQkJCTJENkYzRThBMUMxRUNCMUMwMDYxREJENCAvKiBNb2NrUGFn
ZU92ZXJsYXkuY3BwICovLAorCQkJCTJENkYzRThCMUMxRUNCMUMwMDYxREJENCAvKiBNb2NrUGFn
ZU92ZXJsYXkuaCAqLywKKwkJCQkyRDZGM0U4QzFDMUVDQjFDMDA2MURCRDQgLyogTW9ja1BhZ2VP
dmVybGF5LmlkbCAqLywKKwkJCQkyREFBRTMyQzE5RENBRjYwMDBFMDAyRDIgLyogTW9ja1BhZ2VP
dmVybGF5Q2xpZW50LmNwcCAqLywKKwkJCQkyREFBRTMyRDE5RENBRjYwMDBFMDAyRDIgLyogTW9j
a1BhZ2VPdmVybGF5Q2xpZW50LmggKi8sCisJCQkJQTE0QkIwOUUxRjk4MTNCODAwNjA1QTM1IC8q
IE1vY2tQYXltZW50LmggKi8sCisJCQkJQTE0NkQzMUMxRjk5QzlDMjAwRDI5MTk2IC8qIE1vY2tQ
YXltZW50QWRkcmVzcy5oICovLAorCQkJCUExNDZEMzFFMUY5OUM5QzIwMEQyOTE5NiAvKiBNb2Nr
UGF5bWVudEFkZHJlc3MuaWRsICovLAorCQkJCUExNDZEMzI0MUY5OUQ2OTgwMEQyOTE5NiAvKiBN
b2NrUGF5bWVudENvbnRhY3QuaCAqLywKKwkJCQlBMTA0RUM1NTIyMEEzOUI0MDBDQkY2N0EgLyog
TW9ja1BheW1lbnRDb250YWN0RmllbGRzLmggKi8sCisJCQkJQTEwNEVDNTcyMjBBMzlCNDAwQ0JG
NjdBIC8qIE1vY2tQYXltZW50Q29udGFjdEZpZWxkcy5pZGwgKi8sCisJCQkJQTFBRkVERTUxRjhC
RkY2RDAwODcwMTNGIC8qIE1vY2tQYXltZW50Q29vcmRpbmF0b3IuY3BwICovLAorCQkJCUExQUZF
REU0MUY4QkZGNkQwMDg3MDEzRiAvKiBNb2NrUGF5bWVudENvb3JkaW5hdG9yLmggKi8sCisJCQkJ
QTE0NkQzMTYxRjk5QjUzRDAwRDI5MTk2IC8qIE1vY2tQYXltZW50Q29vcmRpbmF0b3IuaWRsICov
LAorCQkJCUExQkI4NUE2MjE1OUIwMkMwMDY3RTA3RCAvKiBNb2NrUGF5bWVudEVycm9yLmggKi8s
CisJCQkJQTFCQjg1QTgyMTU5QjAyQzAwNjdFMDdEIC8qIE1vY2tQYXltZW50RXJyb3IuaWRsICov
LAorCQkJCUExQ0JFRjYzMUY5RjExMjkwMDI4REU3QyAvKiBNb2NrUGF5bWVudE1ldGhvZC5oICov
LAorCQkJCUExNDA2MTg5MUUyRUNBMEEwMDMyQjM0RSAvKiBNb2NrUHJldmlld0xvYWRlckNsaWVu
dC5jcHAgKi8sCisJCQkJQTE0MDYxOEExRTJFQ0EwQTAwMzJCMzRFIC8qIE1vY2tQcmV2aWV3TG9h
ZGVyQ2xpZW50LmggKi8sCisJCQkJNTcxNTYxMDgyMzRDMUIzMTAwOEZDN0FCIC8qIE1vY2tXZWJB
dXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaCAqLywKKwkJCQk1NzE1NjEwRDIzNEM3NDgxMDA4
RkM3QUIgLyogTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5pZGwgKi8sCisJCQkJ
NDE3RjBEODAxRkZFRTE0RjAwOEVGMzAzIC8qIFNlcnZpY2VXb3JrZXJJbnRlcm5hbHMuY3BwICov
LAorCQkJCTQxN0YwRDdFMUZGRUUxNEUwMDhFRjMwMyAvKiBTZXJ2aWNlV29ya2VySW50ZXJuYWxz
LmggKi8sCisJCQkJNDE3RjBEODExRkZFRTE1MDAwOEVGMzAzIC8qIFNlcnZpY2VXb3JrZXJJbnRl
cm5hbHMuaWRsICovLAorCQkJCTQxRDQxQzY1MjI1Njg1OTIwMDY5Nzk0MiAvKiBTZXJ2aWNlV29y
a2VySW50ZXJuYWxzLm1tICovLAorCQkJCUVCMDgxQ0Q4MTY5NjA4NDQwMDU1MzczMCAvKiBUeXBl
Q29udmVyc2lvbnMuaCAqLywKKwkJCQlFQjA4MUNEOTE2OTYwODQ0MDA1NTM3MzAgLyogVHlwZUNv
bnZlcnNpb25zLmlkbCAqLywKKwkJCQlFMUJBNjcxOTE3NDJCRUY0MDBDMjAyNTEgLyogV2ViQ29y
ZVRlc3RTaGltTGlicmFyeS5jcHAgKi8sCisJCQkJRTE4RDgzRTkyNDNGNzFEMzAwOTI0N0Q2IC8q
IFdlYkZha2VYUkRldmljZS5jcHAgKi8sCisJCQkJRTE4RDgzRUQyNDNGNzFENjAwOTI0N0Q2IC8q
IFdlYkZha2VYUkRldmljZS5oICovLAorCQkJCUUxOEQ4M0U3MjQzRjcxRDIwMDkyNDdENiAvKiBX
ZWJGYWtlWFJEZXZpY2UuaWRsICovLAorCQkJCUUxOEQ4M0REMjQzRjcxQ0MwMDkyNDdENiAvKiBX
ZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuY3BwICovLAorCQkJCUUxOEQ4M0VFMjQzRjcxRDcwMDky
NDdENiAvKiBXZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuaCAqLywKKwkJCQlFMThEODNFMTI0M0Y3
MUNFMDA5MjQ3RDYgLyogV2ViRmFrZVhSSW5wdXRDb250cm9sbGVyLmlkbCAqLywKKwkJCQlFMThE
ODNFMDI0M0Y3MUNFMDA5MjQ3RDYgLyogV2ViWFJUZXN0LmNwcCAqLywKKwkJCQlFMThEODNFODI0
M0Y3MUQyMDA5MjQ3RDYgLyogV2ViWFJUZXN0LmggKi8sCisJCQkJRTE4RDgzRUIyNDNGNzFENTAw
OTI0N0Q2IC8qIFdlYlhSVGVzdC5pZGwgKi8sCisJCQkJRTE4RDgzRUMyNDNGNzFENTAwOTI0N0Q2
IC8qIFhSU2ltdWxhdGVVc2VyQWN0aXZhdGlvbkZ1bmN0aW9uLmggKi8sCisJCQkJRTE4RDgzRjAy
NDNGNzFEODAwOTI0N0Q2IC8qIFhSU2ltdWxhdGVVc2VyQWN0aXZhdGlvbkZ1bmN0aW9uLmlkbCAq
LywKKwkJCSk7CisJCQlwYXRoID0gdGVzdGluZzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCX07CisJCTQxN0RBNzEyMTM3MzVEOTAwMDdDNTdGQiAvKiBUZXN0aW5nICovID0geworCQkJ
aXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MjczQ0NBQzI1NjQ1NzZDMDA4
NTAwMDcgLyogSlNGYWtlWFJCb3VuZHNQb2ludC5jcHAgKi8sCisJCQkJNTI3M0NDQUQyNTY0NTc2
QzAwODUwMDA3IC8qIEpTRmFrZVhSQnV0dG9uU3RhdGVJbml0LmNwcCAqLywKKwkJCQk1MjczQ0NB
QTI1NjQ1NzZCMDA4NTAwMDcgLyogSlNGYWtlWFJJbnB1dFNvdXJjZUluaXQuY3BwICovLAorCQkJ
CTUyNzNDQ0FFMjU2NDU3NkQwMDg1MDAwNyAvKiBKU0Zha2VYUlJpZ2lkVHJhbnNmb3JtSW5pdC5j
cHAgKi8sCisJCQkJNTI3M0NDQUYyNTY0NTc2RTAwODUwMDA3IC8qIEpTRmFrZVhSVmlld0luaXQu
Y3BwICovLAorCQkJCTUxNzE0RUFFMUNGNjY1NEEwMDQ3MjNDNCAvKiBKU0dDT2JzZXJ2YXRpb24u
Y3BwICovLAorCQkJCTUxNzE0RUFGMUNGNjY1NEEwMDQ3MjNDNCAvKiBKU0dDT2JzZXJ2YXRpb24u
aCAqLywKKwkJCQk0MTdEQTcxQjEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5hbHMuY3BwICov
LAorCQkJCTQxN0RBNzFDMTM3MzVERkEwMDdDNTdGQiAvKiBKU0ludGVybmFscy5oICovLAorCQkJ
CUE3QjRFQTc4MTRDOTM0ODQwMEM4RjVCRiAvKiBKU0ludGVybmFsU2V0dGluZ3MuY3BwICovLAor
CQkJCUE3QjRFQTc5MTRDOTM0ODQwMEM4RjVCRiAvKiBKU0ludGVybmFsU2V0dGluZ3MuaCAqLywK
KwkJCQk1M0VEM0ZEQzE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNldHRpbmdzR2VuZXJh
dGVkLmNwcCAqLywKKwkJCQk1M0VEM0ZERDE2N0E4OEU3MDA2NzYyRTYgLyogSlNJbnRlcm5hbFNl
dHRpbmdzR2VuZXJhdGVkLmggKi8sCisJCQkJMkQ2RjNFOTIxQzFGODU1NTAwNjFEQkQ2IC8qIEpT
SW50ZXJuYWxzTWFwTGlrZS5jcHAgKi8sCisJCQkJMkQ2RjNFOTIxQzFGODU1NTAwNjFEQkQ1IC8q
IEpTSW50ZXJuYWxzU2V0TGlrZS5jcHAgKi8sCisJCQkJQTdCNEVBNjgxNEM5MzQ4NDAwQzhGNUJG
IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5jcHAgKi8sCisJCQkJQTdCNEVBNjkxNEM5MzQ4NDAwQzhG
NUJGIC8qIEpTTWFsbG9jU3RhdGlzdGljcy5oICovLAorCQkJCUNENTM5M0QxMTc1RTAxODYwMEMw
NzEyMyAvKiBKU01lbW9yeUluZm8uY3BwICovLAorCQkJCUNENTM5M0QyMTc1RTAxODYwMEMwNzEy
MyAvKiBKU01lbW9yeUluZm8uaCAqLywKKwkJCQlDREY0QjcyRDFFMDNDQTRBMDBFMjM1QTIgLyog
SlNNb2NrQ0RNRmFjdG9yeS5jcHAgKi8sCisJCQkJQ0RGNEI3MkUxRTAzQ0E0QTAwRTIzNUEyIC8q
IEpTTW9ja0NETUZhY3RvcnkuaCAqLywKKwkJCQlBMTlBRUExRDFBQUE4MDZFMDBCNTJCMjUgLyog
SlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmNwcCAqLywKKwkJCQlBMTlBRUExRTFBQUE4MDZF
MDBCNTJCMjUgLyogSlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggKi8sCisJCQkJMkQ2RjNF
OTIxQzFGODU1NTAwNjFEQkQ0IC8qIEpTTW9ja1BhZ2VPdmVybGF5LmNwcCAqLywKKwkJCQkyRDZG
M0U5MzFDMUY4NTU1MDA2MURCRDQgLyogSlNNb2NrUGFnZU92ZXJsYXkuaCAqLywKKwkJCQlBMTQ2
RDMyMDFGOTlDQTNFMDBEMjkxOTYgLyogSlNNb2NrUGF5bWVudEFkZHJlc3MuY3BwICovLAorCQkJ
CUExNDZEMzFGMUY5OUNBM0QwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50QWRkcmVzcy5oICovLAor
CQkJCUExMDRFQzVCMjIwQTNFNDMwMENCRjY3QSAvKiBKU01vY2tQYXltZW50Q29udGFjdEZpZWxk
cy5jcHAgKi8sCisJCQkJQTEwNEVDNUMyMjBBM0U0NDAwQ0JGNjdBIC8qIEpTTW9ja1BheW1lbnRD
b250YWN0RmllbGRzLmggKi8sCisJCQkJQTE0NkQzMTkxRjk5QkNCQjAwRDI5MTk2IC8qIEpTTW9j
a1BheW1lbnRDb29yZGluYXRvci5jcHAgKi8sCisJCQkJQTE0NkQzMTgxRjk5QkNCQTAwRDI5MTk2
IC8qIEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5oICovLAorCQkJCUExQkI4NUI0MjE1OUIzODkw
MDY3RTA3RCAvKiBKU01vY2tQYXltZW50RXJyb3IuY3BwICovLAorCQkJCUExQkI4NUI1MjE1OUIz
OEEwMDY3RTA3RCAvKiBKU01vY2tQYXltZW50RXJyb3IuaCAqLywKKwkJCQkyRDZGM0U5MjFDMUY4
NTU1MDA2MURCRTQgLyogSlNNb2NrUlRDUnRwVHJhbnNmb3JtLmNwcCAqLywKKwkJCQk1NzE1NjEx
MTIzNEM3RkJDMDA4RkM3QUIgLyogSlNNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9u
LmNwcCAqLywKKwkJCQk1NzE1NjExMDIzNEM3RkJDMDA4RkM3QUIgLyogSlNNb2NrV2ViQXV0aGVu
dGljYXRpb25Db25maWd1cmF0aW9uLmggKi8sCisJCQkJNDI3REE3MUIxMzczNURGQTAwN0M1N0ZC
IC8qIEpTU2VydmljZVdvcmtlckludGVybmFscy5jcHAgKi8sCisJCQkJNDI3REE3MUMxMzczNURG
QTAwN0M1N0ZCIC8qIEpTU2VydmljZVdvcmtlckludGVybmFscy5oICovLAorCQkJCUVCRjUxMjFB
MTY5NjQ5NkMwMDU2QkQyNSAvKiBKU1R5cGVDb252ZXJzaW9ucy5jcHAgKi8sCisJCQkJRUJGNTEy
MUIxNjk2NDk2QzAwNTZCRDI1IC8qIEpTVHlwZUNvbnZlcnNpb25zLmggKi8sCisJCQkJNTI3M0ND
OUUyNTYzQjM3NjAwODUwMDA3IC8qIEpTV2ViRmFrZVhSRGV2aWNlLmNwcCAqLywKKwkJCQk1Mjcz
Q0NBNjI1NjNCNUM5MDA4NTAwMDcgLyogSlNXZWJGYWtlWFJJbnB1dENvbnRyb2xsZXIuY3BwICov
LAorCQkJCTUyNzNDQzlBMjU2M0IyMTIwMDg1MDAwNyAvKiBKU1dlYlhSVGVzdC5jcHAgKi8sCisJ
CQkJNTI3M0NDQTIyNTYzQjRGNzAwODUwMDA3IC8qIEpTWFJTaW11bGF0ZVVzZXJBY3RpdmF0aW9u
RnVuY3Rpb24uY3BwICovLAorCQkJKTsKKwkJCW5hbWUgPSBUZXN0aW5nOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNDE4MTVDMUIxMzgzMTk2MzAwNTdBQUE0IC8qIGpzICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MTgxNUMxQzEz
ODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0LmNwcCAqLywKKwkJCQk0MTgxNUMx
RDEzODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0LmggKi8sCisJCQkpOworCQkJ
cGF0aCA9IGpzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNDFBMDIzRUEx
QTM5REI3OTAwRjcyMkNGIC8qIHN0cmVhbXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCTE0OEI0RkZGMUI2OTA0QzUwMEM5NTRFNSAvKiBCeXRlTGVuZ3Ro
UXVldWluZ1N0cmF0ZWd5LmlkbCAqLywKKwkJCQk5OTA4QjBFRDFCQ0FDRjkxMDBFRDBGNjUgLyog
Qnl0ZUxlbmd0aFF1ZXVpbmdTdHJhdGVneS5qcyAqLywKKwkJCQkxNDhCNEZGRjFCNjkwNEM1MDBD
OTU0RTQgLyogQ291bnRRdWV1aW5nU3RyYXRlZ3kuaWRsICovLAorCQkJCTk5MDhCMEVFMUJDQUNG
OTEwMEVEMEY2NSAvKiBDb3VudFF1ZXVpbmdTdHJhdGVneS5qcyAqLywKKwkJCQk0MTE4OUVGNzFB
RDgyMzI4MDBCOTNGNjQgLyogUmVhZGFibGVCeXRlU3RyZWFtQ29udHJvbGxlci5pZGwgKi8sCisJ
CQkJOTkwOEIwRjAxQkNBQ0Y5MTAwRUQzRjY0IC8qIFJlYWRhYmxlQnl0ZVN0cmVhbUNvbnRyb2xs
ZXIuanMgKi8sCisJCQkJOTkwOEIwRjExQkNBQ0Y5MTAwRUQzRjY0IC8qIFJlYWRhYmxlQnl0ZVN0
cmVhbUludGVybmFscy5qcyAqLywKKwkJCQk0MUEwMjNFRDFBMzlEQjc5MDBGNzIyQ0YgLyogUmVh
ZGFibGVTdHJlYW0uaWRsICovLAorCQkJCTk5MDhCMEVGMUJDQUNGOTEwMEVEMEY2NSAvKiBSZWFk
YWJsZVN0cmVhbS5qcyAqLywKKwkJCQk0MTlGQUZBRDFBQkFCQ0Q1MDA1QjM1NzIgLyogUmVhZGFi
bGVTdHJlYW1CWU9CUmVhZGVyLmlkbCAqLywKKwkJCQk5OTA4QjBGMjFCQ0FDRjkxMDBFRDM1NzIg
LyogUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVyLmpzICovLAorCQkJCTQxMTg5RUY3MUFEODIzMjgw
MEI5NTY3MiAvKiBSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmlkbCAqLywKKwkJCQk5OTA4QjBG
MDFCQ0FDRjkxMDBFRDU2NzIgLyogUmVhZGFibGVTdHJlYW1CWU9CUmVxdWVzdC5qcyAqLywKKwkJ
CQk0MTE4OUVGNzFBRDgyMzI4MDBCOTBBMEQgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJv
bGxlci5pZGwgKi8sCisJCQkJOTkwOEIwRjAxQkNBQ0Y5MTAwRUQwRjY1IC8qIFJlYWRhYmxlU3Ry
ZWFtRGVmYXVsdENvbnRyb2xsZXIuanMgKi8sCisJCQkJNDE5RkFGQUQxQUJBQkNENTAwNUI4MjhC
IC8qIFJlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5pZGwgKi8sCisJCQkJOTkwOEIwRjIxQkNB
Q0Y5MTAwRUQwRjY1IC8qIFJlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5qcyAqLywKKwkJCQk5
OTA4QjBGMTFCQ0FDRjkxMDBFRDBGNjUgLyogUmVhZGFibGVTdHJlYW1JbnRlcm5hbHMuanMgKi8s
CisJCQkJNDEyOUM5ODcxRjU4NjYyRDAwOUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5jcHAg
Ki8sCisJCQkJNDEyOUM5ODAxRjU4NjFDNzAwOUQ3NDAzIC8qIFJlYWRhYmxlU3RyZWFtU2luay5o
ICovLAorCQkJCTQxMjlDOTgxMUY1ODYxQzcwMDlENzQwMyAvKiBSZWFkYWJsZVN0cmVhbVNpbmsu
aWRsICovLAorCQkJCTJENDNFQjJEMjM0NzJCQzMwMDJBMUVENCAvKiBSZWFkYWJsZVN0cmVhbVNv
dXJjZS5jcHAgKi8sCisJCQkJNDE4QzM5NUIxQzhGMEE2MTAwNTFDOEEzIC8qIFJlYWRhYmxlU3Ry
ZWFtU291cmNlLmggKi8sCisJCQkJNDE4QzM5NUMxQzhGMEE2MTAwNTFDOEEzIC8qIFJlYWRhYmxl
U3RyZWFtU291cmNlLmlkbCAqLywKKwkJCQk5OTA4QjBGMTFCQ0FDRjkxMDBFRDBGNTUgLyogU3Ry
ZWFtSW50ZXJuYWxzLmpzICovLAorCQkJCTQxRkNBNUY3MjRFQUFGMTUwMDVFMUJBNiAvKiBUcmFu
c2Zvcm1TdHJlYW0uaWRsICovLAorCQkJCTQxRkNBNUY5MjRFQUFGMTYwMDVFMUJBNiAvKiBUcmFu
c2Zvcm1TdHJlYW0uanMgKi8sCisJCQkJNDFGQ0E1RkEyNEVBQUYxNjAwNUUxQkE2IC8qIFRyYW5z
Zm9ybVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmlkbCAqLywKKwkJCQk0MUZDQTVGQjI0RUFBRjE2
MDA1RTFCQTYgLyogVHJhbnNmb3JtU3RyZWFtRGVmYXVsdENvbnRyb2xsZXIuanMgKi8sCisJCQkJ
NDFGQ0E1RkMyNEVBQjc4MDAwNUUxQkE2IC8qIFRyYW5zZm9ybVN0cmVhbUludGVybmFscy5qcyAq
LywKKwkJCQk0MUU2RDcyMjI2RUFBMDQ2MDBCNzY1RDYgLyogV3JpdGFibGVTdHJlYW0uY3BwICov
LAorCQkJCTQxRTZENzIxMjZFQUEwNDUwMEI3NjVENiAvKiBXcml0YWJsZVN0cmVhbS5oICovLAor
CQkJCTQxQTAyM0VEMUEzOURCNzkwMEY3MjJERiAvKiBXcml0YWJsZVN0cmVhbS5pZGwgKi8sCisJ
CQkJNDE3NjY3MzQyNERDMDhFQjAwOEJGRTI4IC8qIFdyaXRhYmxlU3RyZWFtRGVmYXVsdENvbnRy
b2xsZXIuaWRsICovLAorCQkJCTQxNzY2NzMzMjREQzA4RUIwMDhCRkUyOCAvKiBXcml0YWJsZVN0
cmVhbURlZmF1bHRDb250cm9sbGVyLmpzICovLAorCQkJCTQxNzY2NzMwMjREQzA4RUEwMDhCRkUy
OCAvKiBXcml0YWJsZVN0cmVhbURlZmF1bHRXcml0ZXIuaWRsICovLAorCQkJCTQxNzY2NzMyMjRE
QzA4RUIwMDhCRkUyOCAvKiBXcml0YWJsZVN0cmVhbURlZmF1bHRXcml0ZXIuanMgKi8sCisJCQkJ
OTkwOEIwRjExQkNBQ0Y5MTAwRUQwRjc1IC8qIFdyaXRhYmxlU3RyZWFtSW50ZXJuYWxzLmpzICov
LAorCQkJCTQxNDE4QTAyMjU2NDM1OTgwMDM2MzQxNyAvKiBXcml0YWJsZVN0cmVhbVNpbmsuaCAq
LywKKwkJCQk0MTQxOEEwMDI1NjQzNTk3MDAzNjM0MTcgLyogV3JpdGFibGVTdHJlYW1TaW5rLmlk
bCAqLywKKwkJCSk7CisJCQlwYXRoID0gc3RyZWFtczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTQxQTAyM0ZBMUEzOUYxM0EwMEY3MjJDRiAvKiBTdHJlYW1zICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk2QzRDOTZEQTFBRDQ0ODM1
MDAzNjNGNjQgLyogSlNSZWFkYWJsZUJ5dGVTdHJlYW1Db250cm9sbGVyLmNwcCAqLywKKwkJCQk2
QzRDOTZEQjFBRDQ0ODM1MDAzNjNGNjQgLyogSlNSZWFkYWJsZUJ5dGVTdHJlYW1Db250cm9sbGVy
LmggKi8sCisJCQkJN0M0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW0u
Y3BwICovLAorCQkJCTdDNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU1JlYWRhYmxlU3RyZWFt
LmggKi8sCisJCQkJN0M0Qzk2REExQUQ0NDgzNTAwMzYzNTcyIC8qIEpTUmVhZGFibGVTdHJlYW1C
WU9CUmVhZGVyLmNwcCAqLywKKwkJCQk3QzRDOTZEQjFBRDQ0ODM1MDAzNjM1NzIgLyogSlNSZWFk
YWJsZVN0cmVhbUJZT0JSZWFkZXIuaCAqLywKKwkJCQk2QzRDOTZEQTFBRDQ0ODM1MDAzNjU2NzIg
LyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmNwcCAqLywKKwkJCQk2QzRDOTZEQjFBRDQ0
ODM1MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVhbUJZT0JSZXF1ZXN0LmggKi8sCisJCQkJNkM0
Qzk2REExQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxl
ci5jcHAgKi8sCisJCQkJNkM0Qzk2REIxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJl
YW1EZWZhdWx0Q29udHJvbGxlci5oICovLAorCQkJCTdDNEM5NkRBMUFENDQ4MzUwMDM2NUE1MCAv
KiBKU1JlYWRhYmxlU3RyZWFtRGVmYXVsdFJlYWRlci5jcHAgKi8sCisJCQkJN0M0Qzk2REIxQUQ0
NDgzNTAwMzY1QTUwIC8qIEpTUmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyLmggKi8sCisJCQkJ
N0M0Qzk2RDgxQUQ0NDgzNTAwMzY1QTYwIC8qIEpTV3JpdGFibGVTdHJlYW0uY3BwICovLAorCQkJ
CTdDNEM5NkQ5MUFENDQ4MzUwMDM2NUE2MCAvKiBKU1dyaXRhYmxlU3RyZWFtLmggKi8sCisJCQkp
OworCQkJbmFtZSA9IFN0cmVhbXM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9Owor
CQk0MUMzQjg5QTI2NDlCMThFMDA0RUQ0REUgLyogY29jb2EgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTQxQzNCODlEMjY0OUIxQjYwMDRFRDRERSAvKiBB
dWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJlckNvY29hLmNwcCAqLywKKwkJCQk0MUMzQjg5QzI2
NDlCMUI2MDA0RUQ0REUgLyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXJDb2NvYS5oICov
LAorCQkJCTQxQzNCODlFMjY0OUIxQjcwMDRFRDRERSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tS
ZW5kZXJlckludGVybmFsVW5pdC5jcHAgKi8sCisJCQkJNDFDM0I4OUYyNjQ5QjFCNzAwNEVENERF
IC8qIEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVySW50ZXJuYWxVbml0LmggKi8sCisJCQkJ
NDFDM0I4QTAyNjQ5QjFCNzAwNEVENERFIC8qIEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVy
VW5pdC5jcHAgKi8sCisJCQkJNDFDM0I4OUIyNjQ5QjFCNjAwNEVENERFIC8qIEF1ZGlvTWVkaWFT
dHJlYW1UcmFja1JlbmRlcmVyVW5pdC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBjb2NvYTsKKwkJ
CXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTQxRjU0RjdDMUM1MEM0RjYwMDMzODQ4
OCAvKiBmZXRjaCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJNDFGNTRGN0QxQzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoQm9keS5jcHAgKi8sCisJCQkJNDFG
NTRGN0UxQzUwQzRGNjAwMzM4NDg4IC8qIEZldGNoQm9keS5oICovLAorCQkJCTQxRjU0RjdGMUM1
MEM0RjYwMDMzODQ4OCAvKiBGZXRjaEJvZHkuaWRsICovLAorCQkJCTQxQ0Y4QkU0MUQ0NjIyMjAw
MDcwN0RDOSAvKiBGZXRjaEJvZHlDb25zdW1lci5jcHAgKi8sCisJCQkJNDFDRjhCRTUxRDQ2MjIy
MDAwNzA3REM5IC8qIEZldGNoQm9keUNvbnN1bWVyLmggKi8sCisJCQkJNDE0N0UyQjMxQzg5OTEy
NjAwQTdFNzE1IC8qIEZldGNoQm9keU93bmVyLmNwcCAqLywKKwkJCQk0MTQ3RTJCMjFDODgzMzdG
MDBBN0U3MTUgLyogRmV0Y2hCb2R5T3duZXIuaCAqLywKKwkJCQk0MTMwMTVENTFDN0I1NzA0MDAw
OTFDNkYgLyogRmV0Y2hCb2R5U291cmNlLmNwcCAqLywKKwkJCQk0MTMwMTVENjFDN0I1NzA0MDAw
OTFDNkYgLyogRmV0Y2hCb2R5U291cmNlLmggKi8sCisJCQkJNDFGNTRGODIxQzUwQzRGNjAwMzM4
NDg4IC8qIEZldGNoSGVhZGVycy5jcHAgKi8sCisJCQkJNDFGNTRGODMxQzUwQzRGNjAwMzM4NDg4
IC8qIEZldGNoSGVhZGVycy5oICovLAorCQkJCTQxRjU0Rjg0MUM1MEM0RjYwMDMzODQ4OCAvKiBG
ZXRjaEhlYWRlcnMuaWRsICovLAorCQkJCTQxNkUwQjM3MjA5QkMzQzIwMDRBOTVEOSAvKiBGZXRj
aElkZW50aWZpZXIuaCAqLywKKwkJCQk0MTQ3RTJCNDFDODk5MTI2MDBBN0U3MTUgLyogRmV0Y2hM
b2FkZXIuY3BwICovLAorCQkJCTQxNDdFMkI1MUM4OTkxMjYwMEE3RTcxNSAvKiBGZXRjaExvYWRl
ci5oICovLAorCQkJCTQxNDdFMkI2MUM4OTkxMjYwMEE3RTcxNSAvKiBGZXRjaExvYWRlckNsaWVu
dC5oICovLAorCQkJCTdDRTE5MTRCMUYyQTlBRkIwMDI3MkY3OCAvKiBGZXRjaFJlZmVycmVyUG9s
aWN5LmggKi8sCisJCQkJN0NFMTkxNEMxRjJBOUFGQjAwMjcyRjc4IC8qIEZldGNoUmVmZXJyZXJQ
b2xpY3kuaWRsICovLAorCQkJCTQxRjU0Rjg3MUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaFJlcXVl
c3QuY3BwICovLAorCQkJCTQxRjU0Rjg4MUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaFJlcXVlc3Qu
aCAqLywKKwkJCQk0MUY1NEY4OTFDNTBDNEY2MDAzMzg0ODggLyogRmV0Y2hSZXF1ZXN0LmlkbCAq
LywKKwkJCQk3Q0UxOTE1NzFGMkE5QjM0MDAyNzJGNzggLyogRmV0Y2hSZXF1ZXN0Q2FjaGUuaCAq
LywKKwkJCQk3Q0UxOTE1OTFGMkE5QjM0MDAyNzJGNzggLyogRmV0Y2hSZXF1ZXN0Q2FjaGUuaWRs
ICovLAorCQkJCTdDRTE5MTUzMUYyQTlCMUQwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RDcmVkZW50
aWFscy5oICovLAorCQkJCTdDRTE5MTU0MUYyQTlCMUQwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RD
cmVkZW50aWFscy5pZGwgKi8sCisJCQkJN0NFMTkxNDcxRjJBOThBRjAwMjcyRjc4IC8qIEZldGNo
UmVxdWVzdEluaXQuaCAqLywKKwkJCQk3Q0UxOTE0OTFGMkE5OEIwMDAyNzJGNzggLyogRmV0Y2hS
ZXF1ZXN0SW5pdC5pZGwgKi8sCisJCQkJN0NFMTkxNEYxRjJBOUIwQTAwMjcyRjc4IC8qIEZldGNo
UmVxdWVzdE1vZGUuaCAqLywKKwkJCQk3Q0UxOTE1MDFGMkE5QjBBMDAyNzJGNzggLyogRmV0Y2hS
ZXF1ZXN0TW9kZS5pZGwgKi8sCisJCQkJN0NFMTkxNUQxRjJBOUI0RjAwMjcyRjc4IC8qIEZldGNo
UmVxdWVzdFJlZGlyZWN0LmggKi8sCisJCQkJN0NFMTkxNUYxRjJBOUI0RjAwMjcyRjc4IC8qIEZl
dGNoUmVxdWVzdFJlZGlyZWN0LmlkbCAqLywKKwkJCQk0MTMwMTVENTFDN0I1NzA0MDAwOTFDNkUg
LyogRmV0Y2hSZXNwb25zZS5jcHAgKi8sCisJCQkJNDEzMDE1RDYxQzdCNTcwNDAwMDkxQzZFIC8q
IEZldGNoUmVzcG9uc2UuaCAqLywKKwkJCQk0MTMwMTVENzFDN0I1NzA0MDAwOTFDNkUgLyogRmV0
Y2hSZXNwb25zZS5pZGwgKi8sCisJCQkJN0MyRTBCRDEyNTEwNkFDNDAwNUYzQzg3IC8qIFdpbmRv
d09yV29ya2VyR2xvYmFsU2NvcGUrRmV0Y2guaWRsICovLAorCQkJCTdDMkUwQkQwMjUxMDZBQzQw
MDVGM0M4NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlRmV0Y2guY3BwICovLAorCQkJCTdD
MkUwQkNGMjUxMDZBQzQwMDVGM0M4NyAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNjb3BlRmV0Y2gu
aCAqLywKKwkJCSk7CisJCQlwYXRoID0gZmV0Y2g7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQk0MUZCMjc4ODFGMzQ0NjFCMDA3OTU0ODggLyogQ2FjaGVBUEkgKi8gPSB7CisJ
CQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTdDRTE5MTZFMUYyQUI3MEQw
MDI3MkY3QiAvKiBKU0NhY2hlUXVlcnlPcHRpb25zLmNwcCAqLywKKwkJCQk3Q0UxOTE2RTFGMkFC
NzBEMDAyNzJGNzkgLyogSlNET01DYWNoZS5jcHAgKi8sCisJCQkJN0NFMTkxNjQxRjJBQjZGQjAw
MjcyRjc5IC8qIEpTRE9NQ2FjaGUuaCAqLywKKwkJCQk3Q0UxOTE2RTFGMkFCNzBEMDAyNzJGN0Eg
LyogSlNET01DYWNoZVN0b3JhZ2UuY3BwICovLAorCQkJCTdDRTE5MTY0MUYyQUI2RkIwMDI3MkY3
QSAvKiBKU0RPTUNhY2hlU3RvcmFnZS5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBDYWNoZUFQSTsK
KwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTQyQTAyM0ZBMUEzOUYxM0EwMEY3
MjJDRiAvKiBGZXRjaEFQSSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJN0Y0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hCb2R5LmNwcCAqLywK
KwkJCQk3RjRDOTZEOTFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaEJvZHkuaCAqLywKKwkJCQk3
RDRDOTZEODFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaEhlYWRlcnMuY3BwICovLAorCQkJCTdE
NEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoSGVhZGVycy5oICovLAorCQkJCTdDRTE5
MTY3MUYyQUI3MDEwMDI3MkY3OCAvKiBKU0ZldGNoUmVmZXJyZXJQb2xpY3kuY3BwICovLAorCQkJ
CTdDRTE5MTY4MUYyQUI3MDMwMDI3MkY3OCAvKiBKU0ZldGNoUmVmZXJyZXJQb2xpY3kuaCAqLywK
KwkJCQk3RTRDOTZEODFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaFJlcXVlc3QuY3BwICovLAor
CQkJCTdFNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVzdC5oICovLAorCQkJ
CTdDRTE5MTZFMUYyQUI3MEQwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdENhY2hlLmNwcCAqLywK
KwkJCQk3Q0UxOTE2NDFGMkFCNkZCMDAyNzJGNzggLyogSlNGZXRjaFJlcXVlc3RDYWNoZS5oICov
LAorCQkJCTdDRTE5MTZCMUYyQUI3MDgwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdENyZWRlbnRp
YWxzLmNwcCAqLywKKwkJCQk3Q0UxOTE2NjFGMkFCNkZGMDAyNzJGNzggLyogSlNGZXRjaFJlcXVl
c3RDcmVkZW50aWFscy5oICovLAorCQkJCTdDRTE5MTZEMUYyQUI3MEMwMDI3MkY3OCAvKiBKU0Zl
dGNoUmVxdWVzdEluaXQuY3BwICovLAorCQkJCTdDRTE5MTY5MUYyQUI3MDUwMDI3MkY3OCAvKiBK
U0ZldGNoUmVxdWVzdEluaXQuaCAqLywKKwkJCQk3Q0UxOTE2NTFGMkFCNkZEMDAyNzJGNzggLyog
SlNGZXRjaFJlcXVlc3RNb2RlLmNwcCAqLywKKwkJCQk3Q0UxOTE2QzFGMkFCNzBBMDAyNzJGNzgg
LyogSlNGZXRjaFJlcXVlc3RNb2RlLmggKi8sCisJCQkJN0NFMTkxNkYxRjJBQjcwRjAwMjcyRjc4
IC8qIEpTRmV0Y2hSZXF1ZXN0UmVkaXJlY3QuY3BwICovLAorCQkJCTdDRTE5MTZBMUYyQUI3MDYw
MDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdFJlZGlyZWN0LmggKi8sCisJCQkJOEU0Qzk2RDgxQUQ0
NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXNwb25zZS5jcHAgKi8sCisJCQkJOEU0Qzk2RDkxQUQ0
NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXNwb25zZS5oICovLAorCQkJCTdGNEM5NkQ4MUFENDQ4
MzUwMDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU2luay5jcHAgKi8sCisJCQkJN0Y0Qzk2RDkx
QUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1TaW5rLmggKi8sCisJCQkJN0U0Qzk2
RDgxQUQ0NDgzNTAwMzY1QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuY3BwICovLAorCQkJ
CTdFNEM5NkQ5MUFENDQ4MzUwMDM2NUE1MSAvKiBKU1JlYWRhYmxlU3RyZWFtU291cmNlLmggKi8s
CisJCQkpOworCQkJbmFtZSA9IEZldGNoQVBJOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKwkJNDM5MDQ2QzIxMkRBMjVDRTAwQUY4MEEyIC8qIG1hdGhtbCAqLyA9IHsKKwkJCWlz
YSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNDM5MTc2Q0IxMkRBMjVFMTdCQUY4
MEEyIC8qIE1hdGhNTFN0eWxlLmNwcCAqLywKKwkJCQk0MzkxNzZDQzEyREEyNUUxN0JBRjgwQTIg
LyogTWF0aE1MU3R5bGUuaCAqLywKKwkJCQk0MzkwNDZENTEyREEyNUU4MTJBRjgwQUMgLyogTWF0
aE9wZXJhdG9yLmNwcCAqLywKKwkJCQk0MzkwNDZENjEyREEyNUU4MTJBRjgwQUMgLyogTWF0aE9w
ZXJhdG9yLmggKi8sCisJCQkJNDM5MDQ2QzMxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhN
TEJsb2NrLmNwcCAqLywKKwkJCQk0MzkwNDZDNDEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0
aE1MQmxvY2suaCAqLywKKwkJCQk0MzkwNDZDNTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0
aE1MRmVuY2VkLmNwcCAqLywKKwkJCQk0MzkwNDZDNjEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVy
TWF0aE1MRmVuY2VkLmggKi8sCisJCQkJNDM5MDQ2QzUxMkRBMjVFODAwQUY4MUIzIC8qIFJlbmRl
ck1hdGhNTEZlbmNlZE9wZXJhdG9yLmNwcCAqLywKKwkJCQk0MzkwNDZDNjEyREEyNUU4MDBBRjgx
QjMgLyogUmVuZGVyTWF0aE1MRmVuY2VkT3BlcmF0b3IuaCAqLywKKwkJCQk0MzkwNDZDNzEyREEy
NUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MRnJhY3Rpb24uY3BwICovLAorCQkJCTQzOTA0NkM4
MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxGcmFjdGlvbi5oICovLAorCQkJCTQzOTA0
NkM5MTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxNYXRoLmNwcCAqLywKKwkJCQk0Mzkw
NDZDQTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MTWF0aC5oICovLAorCQkJCTM2NjJG
OTg0MDQ3Q0VEQkU1REREQUZBQSAvKiBSZW5kZXJNYXRoTUxNZW5jbG9zZS5jcHAgKi8sCisJCQkJ
QTIwOEUyMjJBNTZBMEM3NTc1RjJBNzJFIC8qIFJlbmRlck1hdGhNTE1lbmNsb3NlLmggKi8sCisJ
CQkJNDM5MDQ2Q0IxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTE9wZXJhdG9yLmNwcCAq
LywKKwkJCQk0MzkwNDZDQzEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MT3BlcmF0b3Iu
aCAqLywKKwkJCQlEQkZDQjBFQkZGNUNENzdFQkVCMzU5NUYgLyogUmVuZGVyTWF0aE1MUGFkZGVk
LmNwcCAqLywKKwkJCQkzMzFGRjY3REUxOTdCNTczOTNDNDZBN0YgLyogUmVuZGVyTWF0aE1MUGFk
ZGVkLmggKi8sCisJCQkJNDM5MDQ2Q0QxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFJv
b3QuY3BwICovLAorCQkJCTQzOTA0NkNFMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxS
b290LmggKi8sCisJCQkJNDM5MDQ2Q0YxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFJv
dy5jcHAgKi8sCisJCQkJNDM5MDQ2RDAxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTFJv
dy5oICovLAorCQkJCTQzOTA0NkQzMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxTY3Jp
cHRzLmNwcCAqLywKKwkJCQk0MzkwNDZENDEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1M
U2NyaXB0cy5oICovLAorCQkJCURCRkNCMEVCRkY1Q0Q3N0VCRUIzNTM5NSAvKiBSZW5kZXJNYXRo
TUxTcGFjZS5jcHAgKi8sCisJCQkJMzMxRkY2N0RFMTk3QjU3MzkzQzQ2QUE3IC8qIFJlbmRlck1h
dGhNTFNwYWNlLmggKi8sCisJCQkJNDM5MDQ2RDcxMkRBMjVFODAwQUY4MEE5IC8qIFJlbmRlck1h
dGhNTFRva2VuLmNwcCAqLywKKwkJCQk0MzkwNDZEODEyREEyNUU4MDBBRjgwQTkgLyogUmVuZGVy
TWF0aE1MVG9rZW4uaCAqLywKKwkJCQk0MzkwNDZENTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVy
TWF0aE1MVW5kZXJPdmVyLmNwcCAqLywKKwkJCQk0MzkwNDZENjEyREEyNUU4MDBBRjgwQTIgLyog
UmVuZGVyTWF0aE1MVW5kZXJPdmVyLmggKi8sCisJCQkpOworCQkJcGF0aCA9IG1hdGhtbDsKKwkJ
CXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTQ0MUFGMEE3MEVCQTdCQkYwMDQ0RUQ0
QiAvKiBpb3MgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJ
CTJEMjlFQ0M5MTkyRjFGMUQwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JJT1MuaCAq
LywKKwkJCQkwRjk3QTY1NzE1NURBODFFMDBGQURENEMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9y
SU9TLm1tICovLAorCQkJCTFBQzJEODlDMUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50aWFsaWFz
aW5nU3RhdGVTYXZlci5oICovLAorCQkJCUZFRDEzRDNGMENFQTkzOTQwMEQ4OTQ2NiAvKiBJY29u
SU9TLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBpb3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQl9OworCQk0NDMyOTJDMTBFQkE2RDczMDBFNjIwMTYgLyogaW9zICovID0geworCQkJ
aXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlEMEJENEY1QTE0MDg4NTBGMDA2
ODM5QjYgLyogRGljdGF0aW9uQ29tbWFuZElPUy5jcHAgKi8sCisJCQkJRDBCRDRGNUIxNDA4ODUw
RjAwNjgzOUI2IC8qIERpY3RhdGlvbkNvbW1hbmRJT1MuaCAqLywKKwkJCQlGRUQxM0QzOTBDRUE5
MzQ2MDBEODk0NjYgLyogRWRpdG9ySU9TLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBpb3M7CisJ
CQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk0NDQwNkJDNjI1OEQ0OTJFMDA3MEIw
NjUgLyogZW4ubHByb2ogKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0g
KAorCQkJKTsKKwkJCW5hbWUgPSBlbi5scHJvajsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCX07CisJCTQ0OTdENThDMEVCQTg1NEYwMEExMDU1MiAvKiBpb3MgKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExMERCRjQ2MThGOTIzMTcwMDBENzBD
NiAvKiBMZWdhY3lQcmV2aWV3TG9hZGVyQ2xpZW50LmggKi8sCisJCQkJNDQzRjA0MjYwRTc1QzhG
QjAwN0U1NDA3IC8qIE5ldHdvcmtTdGF0ZU5vdGlmaWVySU9TLm1tICovLAorCQkJCTQ0QTIwREI4
MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCAqLywKKwkJCQk0NDRE
NEUyMTBGNzA4QjJFMDAzMTU4RTAgLyogV2ViQ29yZVVSTFJlc3BvbnNlSU9TLm1tICovLAorCQkJ
KTsKKwkJCXBhdGggPSBpb3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk0
NEU4OEU0NzIzNjhERjBGMDA5QjQ4NDcgLyogaGlnaGxpZ2h0ICovID0geworCQkJaXNhID0gUEJY
R3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0NDUyMTBERDI1RDYxRUZGMDAzQTJFRDggLyog
QXBwSGlnaGxpZ2h0LmggKi8sCisJCQkJNDRBRTA0NTgyNTc5Q0ZGQjAwQzQyRTY1IC8qIEFwcEhp
Z2hsaWdodFJhbmdlRGF0YS5jcHAgKi8sCisJCQkJNDRBRTA0NUEyNTc5Q0ZGQjAwQzQyRTY1IC8q
IEFwcEhpZ2hsaWdodFJhbmdlRGF0YS5oICovLAorCQkJCTQ0MjUwNzA2MjU4MjlBMTQwMEMwOTM2
OCAvKiBBcHBIaWdobGlnaHRTdG9yYWdlLmNwcCAqLywKKwkJCQk0NDI1MDcwNzI1ODI5QTE0MDBD
MDkzNjggLyogQXBwSGlnaGxpZ2h0U3RvcmFnZS5oICovLAorCQkJCTQ0RTg4RTU0MjM2QTY2QTEw
MDlCNDg0NyAvKiBIaWdobGlnaHQuY3BwICovLAorCQkJCTQ0RTg4RTUxMjM2QTVDOEQwMDlCNDg0
NyAvKiBIaWdobGlnaHQuaCAqLywKKwkJCQk0NEU4OEU0RDIzNjkxMjhCMDA5QjQ4NDcgLyogSGln
aGxpZ2h0LmlkbCAqLywKKwkJCQk0NEU4OEU1MjIzNkE2NjdGMDA5QjQ4NDcgLyogSGlnaGxpZ2h0
UmVnaXN0ZXIuY3BwICovLAorCQkJCTQ0RTg4RTUwMjM2QTU2QUMwMDlCNDg0NyAvKiBIaWdobGln
aHRSZWdpc3Rlci5oICovLAorCQkJCTQ0RTg4RTRDMjM2OTEyOEEwMDlCNDg0NyAvKiBIaWdobGln
aHRSZWdpc3Rlci5pZGwgKi8sCisJCQkJNDQ5RDg2NEQyNjQwQzlCOTAwMDEyMkRFIC8qIEhpZ2hs
aWdodFZpc2liaWxpdHkuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gaGlnaGxpZ2h0OworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNDY0MjQwNDQyMEVBRjBCRDAwQjI5RkQyIC8q
IGNvY29hICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0
NjQyNDA0NTIwRUFGMEVEMDBCMjlGRDIgLyogRGF0YWJhc2VNYW5hZ2VyQ29jb2EubW0gKi8sCisJ
CQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJNDk0ODRGQUUxMDJDRjAxRTAwMTg3REQzIC8qIGNhbnZhcyAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMzFBNzk1QzExODg4QjcyNDAwMzgyRjkwIC8q
IEFOR0xFSW5zdGFuY2VkQXJyYXlzLmNwcCAqLywKKwkJCQkzMUE3OTVDMjE4ODhCNzI0MDAzODJG
OTAgLyogQU5HTEVJbnN0YW5jZWRBcnJheXMuaCAqLywKKwkJCQkzMUE3OTVDMzE4ODhCNzI0MDAz
ODJGOTAgLyogQU5HTEVJbnN0YW5jZWRBcnJheXMuaWRsICovLAorCQkJCTdDMTkzQkFBMUY1RTBF
QjEwMDg4RjNFNiAvKiBDYW52YXNDb21wb3NpdGluZy5pZGwgKi8sCisJCQkJN0MxOTNCQjYxRjVF
MEVCOTAwODhGM0U2IC8qIENhbnZhc0RpcmVjdGlvbi5oICovLAorCQkJCTdDMTkzQkFDMUY1RTBF
QjIwMDg4RjNFNiAvKiBDYW52YXNEaXJlY3Rpb24uaWRsICovLAorCQkJCTdDMTkzQjlBMUY1RTBF
QTcwMDg4RjNFNiAvKiBDYW52YXNEcmF3SW1hZ2UuaWRsICovLAorCQkJCTdDMTkzQkE2MUY1RTBF
QUUwMDg4RjNFNiAvKiBDYW52YXNEcmF3UGF0aC5pZGwgKi8sCisJCQkJN0MxOTNCQTExRjVFMEVB
QjAwODhGM0U2IC8qIENhbnZhc0ZpbGxSdWxlLmggKi8sCisJCQkJN0MxOTNCQTUxRjVFMEVBRTAw
ODhGM0U2IC8qIENhbnZhc0ZpbGxSdWxlLmlkbCAqLywKKwkJCQk3QzE5M0JBMDFGNUUwRUFBMDA4
OEYzRTYgLyogQ2FudmFzRmlsbFN0cm9rZVN0eWxlcy5pZGwgKi8sCisJCQkJN0MxOTNCQjMxRjVF
MEVCNzAwODhGM0U2IC8qIENhbnZhc0ZpbHRlcnMuaWRsICovLAorCQkJCTQ5NDg0RkIzMTAyQ0Yy
M0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5jcHAgKi8sCisJCQkJNDk0ODRGQjQxMDJDRjIz
QzAwMTg3REQzIC8qIENhbnZhc0dyYWRpZW50LmggKi8sCisJCQkJNDk0ODRGQjUxMDJDRjIzQzAw
MTg3REQzIC8qIENhbnZhc0dyYWRpZW50LmlkbCAqLywKKwkJCQk3QzE5M0JBMjFGNUUwRUFCMDA4
OEYzRTYgLyogQ2FudmFzSW1hZ2VEYXRhLmlkbCAqLywKKwkJCQk3QzE5M0JCMDFGNUUwRUI1MDA4
OEYzRTYgLyogQ2FudmFzSW1hZ2VTbW9vdGhpbmcuaWRsICovLAorCQkJCTdDMTkzQkJBMUY1RTBF
QkIwMDg4RjNFNiAvKiBDYW52YXNMaW5lQ2FwLmggKi8sCisJCQkJN0MxOTNCQjExRjVFMEVCNTAw
ODhGM0U2IC8qIENhbnZhc0xpbmVDYXAuaWRsICovLAorCQkJCTdDMTkzQjlGMUY1RTBFQUEwMDg4
RjNFNiAvKiBDYW52YXNMaW5lSm9pbi5oICovLAorCQkJCTdDMTkzQjlDMUY1RTBFQTgwMDg4RjNF
NiAvKiBDYW52YXNMaW5lSm9pbi5pZGwgKi8sCisJCQkJNDY3MUUwNjMxRDY3QTU3QjAwQzZCNDk3
IC8qIENhbnZhc1BhdGguY3BwICovLAorCQkJCTQ2NzFFMDY0MUQ2N0E1N0IwMEM2QjQ5NyAvKiBD
YW52YXNQYXRoLmggKi8sCisJCQkJOTM2QjIxRjQxREJCRjgzMDAwNTJFMTE3IC8qIENhbnZhc1Bh
dGguaWRsICovLAorCQkJCTdDMTkzQjlEMUY1RTBFQTkwMDg4RjNFNiAvKiBDYW52YXNQYXRoRHJh
d2luZ1N0eWxlcy5pZGwgKi8sCisJCQkJNDk0ODRGQjYxMDJDRjIzQzAwMTg3REQzIC8qIENhbnZh
c1BhdHRlcm4uY3BwICovLAorCQkJCTQ5NDg0RkI3MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNQ
YXR0ZXJuLmggKi8sCisJCQkJNDk0ODRGQjgxMDJDRjIzQzAwMTg3REQzIC8qIENhbnZhc1BhdHRl
cm4uaWRsICovLAorCQkJCTdDMTkzQjlFMUY1RTBFQTkwMDg4RjNFNiAvKiBDYW52YXNSZWN0Lmlk
bCAqLywKKwkJCQk0OUM3QjlCQzEwNDJEMzJGMDAwOUQ0NDcgLyogQ2FudmFzUmVuZGVyaW5nQ29u
dGV4dC5jcHAgKi8sCisJCQkJNDlDN0I5QkQxMDQyRDMyRjAwMDlENDQ3IC8qIENhbnZhc1JlbmRl
cmluZ0NvbnRleHQuaCAqLywKKwkJCQk0OTQ4NEZCQzEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFz
UmVuZGVyaW5nQ29udGV4dDJELmNwcCAqLywKKwkJCQk0OTQ4NEZCRDEwMkNGMjNDMDAxODdERDMg
LyogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggKi8sCisJCQkJNDk0ODRGQkUxMDJDRjIzQzAw
MTg3REQzIC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5pZGwgKi8sCisJCQkJMzE0MEM1MjEx
RkRGMzE4NDAwRDJBODczIC8qIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UuY3BwICovLAor
CQkJCTMxNDBDNTIyMUZERjMxODYwMEQyQTg3MyAvKiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRC
YXNlLmggKi8sCisJCQkJQkNFMDQ5MEMyNjNBMkYxQzAwOURDQkI4IC8qIENhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyRFNldHRpbmdzLmggKi8sCisJCQkJQkNFMDQ5MEUyNjNBMkYxQzAwOURDQkI4IC8q
IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRFNldHRpbmdzLmlkbCAqLywKKwkJCQk3QzE5M0JBRDFG
NUUwRUIzMDA4OEYzRTYgLyogQ2FudmFzU2hhZG93U3R5bGVzLmlkbCAqLywKKwkJCQk3QzE5M0JC
MjFGNUUwRUI2MDA4OEYzRTYgLyogQ2FudmFzU3RhdGUuaWRsICovLAorCQkJCTQ5NDg0RkJGMTAy
Q0YyM0MwMDE4N0REMyAvKiBDYW52YXNTdHlsZS5jcHAgKi8sCisJCQkJNDk0ODRGQzAxMDJDRjIz
QzAwMTg3REQzIC8qIENhbnZhc1N0eWxlLmggKi8sCisJCQkJN0MxOTNCQjkxRjVFMEVCQjAwODhG
M0U2IC8qIENhbnZhc1RleHQuaWRsICovLAorCQkJCTdDMTkzQkEzMUY1RTBFQUMwMDg4RjNFNiAv
KiBDYW52YXNUZXh0QWxpZ24uaCAqLywKKwkJCQk3QzE5M0JBRTFGNUUwRUI0MDA4OEYzRTYgLyog
Q2FudmFzVGV4dEFsaWduLmlkbCAqLywKKwkJCQk3QzE5M0JBNDFGNUUwRUFEMDA4OEYzRTYgLyog
Q2FudmFzVGV4dEJhc2VsaW5lLmggKi8sCisJCQkJN0MxOTNCQjcxRjVFMEVCOTAwODhGM0U2IC8q
IENhbnZhc1RleHRCYXNlbGluZS5pZGwgKi8sCisJCQkJN0MxOTNCQTkxRjVFMEVCMDAwODhGM0U2
IC8qIENhbnZhc1RleHREcmF3aW5nU3R5bGVzLmlkbCAqLywKKwkJCQk3QzE5M0JCNTFGNUUwRUI4
MDA4OEYzRTYgLyogQ2FudmFzVHJhbnNmb3JtLmlkbCAqLywKKwkJCQk3QzE5M0JCODFGNUUwRUJB
MDA4OEYzRTYgLyogQ2FudmFzVXNlckludGVyZmFjZS5pZGwgKi8sCisJCQkJNzI0RUQzMjkxQTNB
N0U1NDAwRjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4LmNwcCAqLywKKwkJCQk3MjRFRDMyQTFBM0E3
RTU0MDBGNUYxM0MgLyogRVhUQmxlbmRNaW5NYXguaCAqLywKKwkJCQk3MjRFRDMyQjFBM0E3RTU0
MDBGNUYxM0MgLyogRVhUQmxlbmRNaW5NYXguaWRsICovLAorCQkJCTZFNTM4OEREMjQ1OEFFMUIw
MDc2QUUwMyAvKiBFWFRDb2xvckJ1ZmZlckZsb2F0LmNwcCAqLywKKwkJCQk2RTUzODhEQzI0NThB
RTFCMDA3NkFFMDMgLyogRVhUQ29sb3JCdWZmZXJGbG9hdC5oICovLAorCQkJCTZFNTM4OEQ4MjQ1
OEFFMTgwMDc2QUUwMyAvKiBFWFRDb2xvckJ1ZmZlckZsb2F0LmlkbCAqLywKKwkJCQk2RTUzODhE
QTI0NThBRTE5MDA3NkFFMDMgLyogRVhUQ29sb3JCdWZmZXJIYWxmRmxvYXQuY3BwICovLAorCQkJ
CTZFNTM4OERFMjQ1OEFFMUMwMDc2QUUwMyAvKiBFWFRDb2xvckJ1ZmZlckhhbGZGbG9hdC5oICov
LAorCQkJCTZFNTM4OERGMjQ1OEFFMUMwMDc2QUUwMyAvKiBFWFRDb2xvckJ1ZmZlckhhbGZGbG9h
dC5pZGwgKi8sCisJCQkJQTM3MDQ5REIyNTFENEI4RjAwOUJBMUIzIC8qIEVYVEZsb2F0QmxlbmQu
Y3BwICovLAorCQkJCUEzNzA0OURBMjUxRDRCOEUwMDlCQTFCMyAvKiBFWFRGbG9hdEJsZW5kLmgg
Ki8sCisJCQkJQTM3MDQ5RDgyNTFENEI4RTAwOUJBMUIzIC8qIEVYVEZsb2F0QmxlbmQuaWRsICov
LAorCQkJCTcyRjFBRDlGMUEzOTA0QzMwMDAxNEUxOCAvKiBFWFRGcmFnRGVwdGguY3BwICovLAor
CQkJCTcyRjFBREEwMUEzOTA0QzMwMDAxNEUxOCAvKiBFWFRGcmFnRGVwdGguaCAqLywKKwkJCQk3
MkYxQURBMTFBMzkwNEMzMDAwMTRFMTggLyogRVhURnJhZ0RlcHRoLmlkbCAqLywKKwkJCQk1QzQz
MDRBRDE5MUFDOTA4MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5jcHAgKi8sCisJCQkJ
NUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNoYWRlclRleHR1cmVMT0QuaCAqLywKKwkJ
CQk1QzQzMDRBRjE5MUFDOTA4MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5pZGwgKi8s
CisJCQkJNzI3QUZFRDExQTJFQTZBMDAwMDQ0MkU4IC8qIEVYVHNSR0IuY3BwICovLAorCQkJCTcy
N0FGRUQyMUEyRUE2QTAwMDA0NDJFOCAvKiBFWFRzUkdCLmggKi8sCisJCQkJNzI3QUZFRDMxQTJF
QTZBMDAwMDQ0MkU4IC8qIEVYVHNSR0IuaWRsICovLAorCQkJCUEzN0E0MkUwMjUyN0I0OUMwMEY3
NUFGRiAvKiBFWFRUZXh0dXJlQ29tcHJlc3Npb25SR1RDLmNwcCAqLywKKwkJCQlBMzdBNDJFMjI1
MjdCNDlEMDBGNzVBRkYgLyogRVhUVGV4dHVyZUNvbXByZXNzaW9uUkdUQy5oICovLAorCQkJCUEz
N0E0MkUzMjUyN0I0OUUwMEY3NUFGRiAvKiBFWFRUZXh0dXJlQ29tcHJlc3Npb25SR1RDLmlkbCAq
LywKKwkJCQk3NzI4Njk0QjE0Rjg4ODI1MDBGNDg0REMgLyogRVhUVGV4dHVyZUZpbHRlckFuaXNv
dHJvcGljLmNwcCAqLywKKwkJCQk3NzI4Njk0QzE0Rjg4ODI1MDBGNDg0REMgLyogRVhUVGV4dHVy
ZUZpbHRlckFuaXNvdHJvcGljLmggKi8sCisJCQkJNzcyODY5NEQxNEY4ODgyNTAwRjQ4NERDIC8q
IEVYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5pZGwgKi8sCisJCQkJMEYxNkJFRDkyMzA0RjA1
MzAwQjRBMTY3IC8qIEdQVUJhc2VkQ2FudmFzUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8sCisJCQkJ
MzExNTE4RkIxRTc4QzE1RjAwRUM1MTRBIC8qIEdQVUJhc2VkQ2FudmFzUmVuZGVyaW5nQ29udGV4
dC5oICovLAorCQkJCTdDNzkwM0IxMUY4NkY5NUMwMDQ2M0E3MCAvKiBJbWFnZUJpdG1hcFJlbmRl
cmluZ0NvbnRleHQuY3BwICovLAorCQkJCTdDNzkwM0IwMUY4NkY5NUMwMDQ2M0E3MCAvKiBJbWFn
ZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQuaCAqLywKKwkJCQk3Qzc5MDNCMjFGODZGOTVDMDA0NjNB
NzAgLyogSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmlkbCAqLywKKwkJCQkzMThFQUQ0QTFG
QTkxMTU3MDA4Q0VGODYgLyogSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0U2V0dGluZ3MuaCAq
LywKKwkJCQkzMThFQUQ0QzFGQTkxMzUyMDA4Q0VGODYgLyogSW1hZ2VCaXRtYXBSZW5kZXJpbmdD
b250ZXh0U2V0dGluZ3MuaWRsICovLAorCQkJCTdDMTkzQkFGMUY1RTBFQjQwMDg4RjNFNiAvKiBJ
bWFnZVNtb290aGluZ1F1YWxpdHkuaCAqLywKKwkJCQk3QzE5M0JBODFGNUUwRUFGMDA4OEYzRTYg
LyogSW1hZ2VTbW9vdGhpbmdRdWFsaXR5LmlkbCAqLywKKwkJCQlBM0JGN0VGMjI1NkM4RDcyMDA0
NEJDNzUgLyogS0hSUGFyYWxsZWxTaGFkZXJDb21waWxlLmNwcCAqLywKKwkJCQlBM0JGN0VGNDI1
NkM4RDcyMDA0NEJDNzUgLyogS0hSUGFyYWxsZWxTaGFkZXJDb21waWxlLmggKi8sCisJCQkJQTNC
RjdFRjUyNTZDOEQ3NDAwNDRCQzc1IC8qIEtIUlBhcmFsbGVsU2hhZGVyQ29tcGlsZS5pZGwgKi8s
CisJCQkJN0U1RDdBNzMxNjFEM0Y4RjAwODk2QzM0IC8qIE9FU0VsZW1lbnRJbmRleFVpbnQuY3Bw
ICovLAorCQkJCTdFNUQ3QTc0MTYxRDNGOEYwMDg5NkMzNCAvKiBPRVNFbGVtZW50SW5kZXhVaW50
LmggKi8sCisJCQkJRTE3NjU4MEMxODBERjNBMDAwNUE5NkQxIC8qIE9FU0VsZW1lbnRJbmRleFVp
bnQuaWRsICovLAorCQkJCUEzN0E0MkNFMjUxRUI5OTYwMEY3NUFGRiAvKiBPRVNGQk9SZW5kZXJN
aXBtYXAuY3BwICovLAorCQkJCUEzN0E0MkQwMjUxRUI5OTYwMEY3NUFGRiAvKiBPRVNGQk9SZW5k
ZXJNaXBtYXAuaCAqLywKKwkJCQlBMzdBNDJEMTI1MUVCOTk3MDBGNzVBRkYgLyogT0VTRkJPUmVu
ZGVyTWlwbWFwLmlkbCAqLywKKwkJCQk5MDAxNzczRDEyRTAzNDc4MDA2NDg0NjIgLyogT0VTU3Rh
bmRhcmREZXJpdmF0aXZlcy5jcHAgKi8sCisJCQkJOTAwMTc3M0UxMkUwMzQ3ODAwNjQ4NDYyIC8q
IE9FU1N0YW5kYXJkRGVyaXZhdGl2ZXMuaCAqLywKKwkJCQk5MDAxNzczRjEyRTAzNDc4MDA2NDg0
NjIgLyogT0VTU3RhbmRhcmREZXJpdmF0aXZlcy5pZGwgKi8sCisJCQkJNkVCRjBFNDUxMkE4OTI2
MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5jcHAgKi8sCisJCQkJNkVCRjBFNDYxMkE4OTI2
MTAwREIxNzA5IC8qIE9FU1RleHR1cmVGbG9hdC5oICovLAorCQkJCTZFQkYwRTQ3MTJBODkyNjEw
MERCMTcwOSAvKiBPRVNUZXh0dXJlRmxvYXQuaWRsICovLAorCQkJCTMxNDZGRTY1MTg0NDIwODcw
MDFBOTM3QyAvKiBPRVNUZXh0dXJlRmxvYXRMaW5lYXIuY3BwICovLAorCQkJCTMxNDZGRTY2MTg0
NDIwODcwMDFBOTM3QyAvKiBPRVNUZXh0dXJlRmxvYXRMaW5lYXIuaCAqLywKKwkJCQkzMTQ2RkU2
NzE4NDQyMDg3MDAxQTkzN0MgLyogT0VTVGV4dHVyZUZsb2F0TGluZWFyLmlkbCAqLywKKwkJCQlB
MzFDNEU0QzE2RTAyQUE2MDAyRjc5NTcgLyogT0VTVGV4dHVyZUhhbGZGbG9hdC5jcHAgKi8sCisJ
CQkJQTMxQzRFNEUxNkUwMkFCNDAwMkY3OTU3IC8qIE9FU1RleHR1cmVIYWxmRmxvYXQuaCAqLywK
KwkJCQlBMzFDNEU1MDE2RTAyQUM1MDAyRjc5NTcgLyogT0VTVGV4dHVyZUhhbGZGbG9hdC5pZGwg
Ki8sCisJCQkJMzEwNzhDQzIxODgwQTZBNjAwODA5OURDIC8qIE9FU1RleHR1cmVIYWxmRmxvYXRM
aW5lYXIuY3BwICovLAorCQkJCTMxMDc4Q0MzMTg4MEE2QTYwMDgwOTlEQyAvKiBPRVNUZXh0dXJl
SGFsZkZsb2F0TGluZWFyLmggKi8sCisJCQkJMzEwNzhDQzQxODgwQTZBNjAwODA5OURDIC8qIE9F
U1RleHR1cmVIYWxmRmxvYXRMaW5lYXIuaWRsICovLAorCQkJCTc3QTE3QTZFMTJGMjgxODIwMDRF
MDJGNiAvKiBPRVNWZXJ0ZXhBcnJheU9iamVjdC5jcHAgKi8sCisJCQkJNzdBMTdBNkYxMkYyODE4
MjAwNEUwMkY2IC8qIE9FU1ZlcnRleEFycmF5T2JqZWN0LmggKi8sCisJCQkJNzdBMTdBNzAxMkYy
ODE4MjAwNEUwMkY2IC8qIE9FU1ZlcnRleEFycmF5T2JqZWN0LmlkbCAqLywKKwkJCQkzMTQwQzUx
RDFGREYxNTFBMDBEMkE4NzMgLyogT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNw
cCAqLywKKwkJCQkzMTQwQzUxRTFGREYxNTFBMDBEMkE4NzMgLyogT2Zmc2NyZWVuQ2FudmFzUmVu
ZGVyaW5nQ29udGV4dDJELmggKi8sCisJCQkJMzE0MEM1MUIxRkRGMTNEMjAwRDJBODczIC8qIE9m
ZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5pZGwgKi8sCisJCQkJNEIxRTEzRUMyMTc5
MzgzODAwNDJDRjk4IC8qIFBhaW50UmVuZGVyaW5nQ29udGV4dDJELmNwcCAqLywKKwkJCQk0QjFF
MTNFQTIxNzkzN0IzMDA0MkNGOTggLyogUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQuaCAqLywKKwkJ
CQk0QjFFMTNFRDIxNzkzREMxMDA0MkNGOTggLyogUGFpbnRSZW5kZXJpbmdDb250ZXh0MkQuaWRs
ICovLAorCQkJCTdDMTkzQkE3MUY1RTBFQUYwMDg4RjNFNiAvKiBQYXRoMkQuY3BwICovLAorCQkJ
CTdDMTkzQkFCMUY1RTBFQjEwMDg4RjNFNiAvKiBQYXRoMkQuaCAqLywKKwkJCQk3QzE5M0JCNDFG
NUUwRUI3MDA4OEYzRTYgLyogUGF0aDJELmlkbCAqLywKKwkJCQk3Qzc5MDNCQTFGODZGRjMzMDA0
NjNBNzAgLyogUGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0LmNwcCAqLywKKwkJCQk3Qzc5MDNC
QzFGODZGRjM0MDA0NjNBNzAgLyogUGxhY2Vob2xkZXJSZW5kZXJpbmdDb250ZXh0LmggKi8sCisJ
CQkJQkNBNTU5MUQyNjNGMTBCOTAwN0YxOUIzIC8qIFByZWRlZmluZWRDb2xvclNwYWNlLmNwcCAq
LywKKwkJCQlCQ0E1NTkxQTI2M0YxMEI5MDA3RjE5QjMgLyogUHJlZGVmaW5lZENvbG9yU3BhY2Uu
aCAqLywKKwkJCQlCQ0E1NTkxQzI2M0YxMEI5MDA3RjE5QjMgLyogUHJlZGVmaW5lZENvbG9yU3Bh
Y2UuaWRsICovLAorCQkJCUQzRjNEMzVCMUE2OUE1MDYwMDU5RkMyQiAvKiBXZWJHTDJSZW5kZXJp
bmdDb250ZXh0LmNwcCAqLywKKwkJCQlEM0YzRDM1QzFBNjlBNTA2MDA1OUZDMkIgLyogV2ViR0wy
UmVuZGVyaW5nQ29udGV4dC5oICovLAorCQkJCUQzRjNEMzVEMUE2OUE1MDYwMDU5RkMyQiAvKiBX
ZWJHTDJSZW5kZXJpbmdDb250ZXh0LmlkbCAqLywKKwkJCQlBN0QyMEY2QjEwN0Y0MzhCMDBBODAz
OTIgLyogV2ViR0xBY3RpdmVJbmZvLmggKi8sCisJCQkJQTdEMjBGM0IxMDdGMzczODAwQTgwMzky
IC8qIFdlYkdMQWN0aXZlSW5mby5pZGwgKi8sCisJCQkJNkU0N0U2NUYxMEI3OTQ0QjAwQjE4NkM4
IC8qIFdlYkdMQW55LmggKi8sCisJCQkJNDlDN0I5QTgxMDQyRDMyRTAwMDlENDQ3IC8qIFdlYkdM
QnVmZmVyLmNwcCAqLywKKwkJCQk0OUM3QjlBOTEwNDJEMzJFMDAwOUQ0NDcgLyogV2ViR0xCdWZm
ZXIuaCAqLywKKwkJCQk0OUM3QjlBQTEwNDJEMzJFMDAwOUQ0NDcgLyogV2ViR0xCdWZmZXIuaWRs
ICovLAorCQkJCTZFNTM4OEUwMjQ1OEFFMUQwMDc2QUUwMyAvKiBXZWJHTENvbG9yQnVmZmVyRmxv
YXQuY3BwICovLAorCQkJCTZFNTM4OERCMjQ1OEFFMUEwMDc2QUUwMyAvKiBXZWJHTENvbG9yQnVm
ZmVyRmxvYXQuaCAqLywKKwkJCQk2RTUzODhFMTI0NThBRTFEMDA3NkFFMDMgLyogV2ViR0xDb2xv
ckJ1ZmZlckZsb2F0LmlkbCAqLywKKwkJCQlEMEEyMEQ1NjIwOTJBMEE2MDBFMEMyNTkgLyogV2Vi
R0xDb21wcmVzc2VkVGV4dHVyZUFTVEMuY3BwICovLAorCQkJCUQwQTIwRDU0MjA5MkEwQTYwMEUw
QzI1OSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5oICovLAorCQkJCUQwMzZERDhEMjA4
RkZDMEMwMEY5RjRCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlQVNUQy5pZGwgKi8sCisJCQkJ
N0U2NkUyMzExNkQ2RUI2QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVBVEMuY3Bw
ICovLAorCQkJCTdFNjZFMjMyMTZENkVCNkMwMEY3RTdGRiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlQVRDLmggKi8sCisJCQkJN0VBMzBGNjIxNkRGRDYyNzAwMjU3RDBCIC8qIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVBVEMuaWRsICovLAorCQkJCTZFOEFDREU5MjMzNDVDQUYwMDI0QUFGNSAvKiBX
ZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmNwcCAqLywKKwkJCQk2RThBQ0RFQjIzMzQ1Q0FGMDAy
NEFBRjUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oICovLAorCQkJCTZFOEFDREVDMjMz
NDVDQjAwMDI0QUFGNSAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDLmlkbCAqLywKKwkJCQk2
RTBCOTA2ODIzMjFBNjhEMDA2MjIzQjIgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuY3Bw
ICovLAorCQkJCTZFMEI5MDY1MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNzZWRUZXh0
dXJlRVRDMS5oICovLAorCQkJCTZFMEI5MDY3MjMyMUE2OEMwMDYyMjNCMiAvKiBXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlRVRDMS5pZGwgKi8sCisJCQkJN0U2NkUyMzExN0U2RUI2QzAwRjdFN0ZGIC8q
IFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5jcHAgKi8sCisJCQkJN0U2NkUyMzIxN0U2RUI2
QzAwRjdFN0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oICovLAorCQkJCTdFQTMw
RjYyMTdFRkQ2MjcwMDI1N0QwQiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJlUFZSVEMuaWRsICov
LAorCQkJCTZFM0ZBRThDMTQ3MzNGREIwMEU0MjMwNiAvKiBXZWJHTENvbXByZXNzZWRUZXh0dXJl
UzNUQy5jcHAgKi8sCisJCQkJNkUzRkFFOEQxNDczM0ZEQjAwRTQyMzA2IC8qIFdlYkdMQ29tcHJl
c3NlZFRleHR1cmVTM1RDLmggKi8sCisJCQkJNkUzRkFFOTAxNDczM0ZFQTAwRTQyMzA2IC8qIFdl
YkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmlkbCAqLywKKwkJCQlBMzNDOUY5MzI0RjgzNUFCMDAw
RjA4NDUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVENzUkdCLmNwcCAqLywKKwkJCQlBMzND
OUY5MTI0RjgzNUFBMDAwRjA4NDUgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVENzUkdCLmgg
Ki8sCisJCQkJQTMzQzlGOTQyNEY4MzVBQjAwMEYwODQ1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1
cmVTM1RDc1JHQi5pZGwgKi8sCisJCQkJNkU0RTkxQUExMEY3RkIzMTAwQTI3NzlDIC8qIFdlYkdM
Q29udGV4dEF0dHJpYnV0ZXMuaCAqLywKKwkJCQk2RTRFOTFBQjEwRjdGQjMxMDBBMjc3OUMgLyog
V2ViR0xDb250ZXh0QXR0cmlidXRlcy5pZGwgKi8sCisJCQkJOTNGNkYxRUExMjdGNzBCMTAwNTVD
QjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmNwcCAqLywKKwkJCQk5M0Y2RjFFQjEyN0Y3MEIxMDA1
NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuaCAqLywKKwkJCQk5M0Y2RjFFQzEyN0Y3MEIxMDA1
NUNCMDYgLyogV2ViR0xDb250ZXh0RXZlbnQuaWRsICovLAorCQkJCTAxRDNDRjdDMTRCRDBBMzAw
MEZFOTk3MCAvKiBXZWJHTENvbnRleHRHcm91cC5jcHAgKi8sCisJCQkJMDFEM0NGN0QxNEJEMEEz
MDAwRkU5OTcwIC8qIFdlYkdMQ29udGV4dEdyb3VwLmggKi8sCisJCQkJMDFEM0NGN0UxNEJEMEEz
MDAwRkU5OTcwIC8qIFdlYkdMQ29udGV4dE9iamVjdC5jcHAgKi8sCisJCQkJMDFEM0NGN0YxNEJE
MEEzMDAwRkU5OTcwIC8qIFdlYkdMQ29udGV4dE9iamVjdC5oICovLAorCQkJCUEwRUUwREYxMTQ0
RjgyNTUwMEY4MEIwRCAvKiBXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmNwcCAqLywKKwkJCQlBMEVF
MERGMjE0NEY4MjU1MDBGODBCMEQgLyogV2ViR0xEZWJ1Z1JlbmRlcmVySW5mby5oICovLAorCQkJ
CUEwRUUwREYwMTQ0RjgyNDMwMEY4MEIwRCAvKiBXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmlkbCAq
LywKKwkJCQlBMEVFMERGMzE0NEY4MjU1MDBGODBCMEQgLyogV2ViR0xEZWJ1Z1NoYWRlcnMuY3Bw
ICovLAorCQkJCUEwRUUwREY0MTQ0RjgyNTUwMEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5o
ICovLAorCQkJCUEwRUUwREVGMTQ0RjgyMzIwMEY4MEIwRCAvKiBXZWJHTERlYnVnU2hhZGVycy5p
ZGwgKi8sCisJCQkJNkUzRkFFOEMxNDczM0ZEQjAwRTQyMzA3IC8qIFdlYkdMRGVwdGhUZXh0dXJl
LmNwcCAqLywKKwkJCQk2RTNGQUU4RDE0NzMzRkRCMDBFNDIzMDcgLyogV2ViR0xEZXB0aFRleHR1
cmUuaCAqLywKKwkJCQk2RTNGQUU5MDE0NzMzRkVBMDBFNDIzMDcgLyogV2ViR0xEZXB0aFRleHR1
cmUuaWRsICovLAorCQkJCTVCMzA2OTVBMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZm
ZXJzLmNwcCAqLywKKwkJCQk1QjMwNjk1QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVm
ZmVycy5oICovLAorCQkJCTVCMzA2OTVDMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZm
ZXJzLmlkbCAqLywKKwkJCQk2RUJGMEU1MjEyQTg5Mjk4MDBEQjE3MDkgLyogV2ViR0xFeHRlbnNp
b24uY3BwICovLAorCQkJCTZFQkYwRTUzMTJBODkyOTgwMERCMTcwOSAvKiBXZWJHTEV4dGVuc2lv
bi5oICovLAorCQkJCTQ5QzdCOUFFMTA0MkQzMkUwMDA5RDQ0NyAvKiBXZWJHTEZyYW1lYnVmZmVy
LmNwcCAqLywKKwkJCQk0OUM3QjlBRjEwNDJEMzJFMDAwOUQ0NDcgLyogV2ViR0xGcmFtZWJ1ZmZl
ci5oICovLAorCQkJCTQ5QzdCOUIwMTA0MkQzMkUwMDA5RDQ0NyAvKiBXZWJHTEZyYW1lYnVmZmVy
LmlkbCAqLywKKwkJCQk5M0YxRDVCNzEyRDUzMkM0MDA4MzJCRUMgLyogV2ViR0xMb3NlQ29udGV4
dC5jcHAgKi8sCisJCQkJOTNGMUQ1QjgxMkQ1MzJDNDAwODMyQkVDIC8qIFdlYkdMTG9zZUNvbnRl
eHQuaCAqLywKKwkJCQk5M0YxRDVCOTEyRDUzMkM0MDA4MzJCRUMgLyogV2ViR0xMb3NlQ29udGV4
dC5pZGwgKi8sCisJCQkJNkVDMzYyRDUyNUI0QzUzRDAwOTM3Rjg1IC8qIFdlYkdMTXVsdGlEcmF3
LmNwcCAqLywKKwkJCQk2RUMzNjJENzI1QjRDNTNFMDA5MzdGODUgLyogV2ViR0xNdWx0aURyYXcu
aCAqLywKKwkJCQk2RUMzNjJEODI1QjRDNTNFMDA5MzdGODUgLyogV2ViR0xNdWx0aURyYXcuaWRs
ICovLAorCQkJCTQ5QzdCOUI0MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTE9iamVjdC5jcHAgKi8s
CisJCQkJNDlDN0I5QjUxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMT2JqZWN0LmggKi8sCisJCQkJ
NDlDN0I5QjYxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMUHJvZ3JhbS5jcHAgKi8sCisJCQkJNDlD
N0I5QjcxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMUHJvZ3JhbS5oICovLAorCQkJCTQ5QzdCOUI4
MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFByb2dyYW0uaWRsICovLAorCQkJCTZGOTk1QTE3MUE3
MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFF1ZXJ5LmNwcCAqLywKKwkJCQk2Rjk5NUExODFBNzA3OEIx
MDBBNzM1RjQgLyogV2ViR0xRdWVyeS5oICovLAorCQkJCTZGOTk1QTA5MUE3MDcwRTYwMEE3MzVG
NCAvKiBXZWJHTFF1ZXJ5LmlkbCAqLywKKwkJCQk0OUM3QjlCOTEwNDJEMzJGMDAwOUQ0NDcgLyog
V2ViR0xSZW5kZXJidWZmZXIuY3BwICovLAorCQkJCTQ5QzdCOUJBMTA0MkQzMkYwMDA5RDQ0NyAv
KiBXZWJHTFJlbmRlcmJ1ZmZlci5oICovLAorCQkJCTQ5QzdCOUJCMTA0MkQzMkYwMDA5RDQ0NyAv
KiBXZWJHTFJlbmRlcmJ1ZmZlci5pZGwgKi8sCisJCQkJNDlDN0I5QkYxMDQyRDMyRjAwMDlENDQ3
IC8qIFdlYkdMUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8sCisJCQkJNDlDN0I5QzAxMDQyRDMyRjAw
MDlENDQ3IC8qIFdlYkdMUmVuZGVyaW5nQ29udGV4dC5oICovLAorCQkJCTQ5QzdCOUMxMTA0MkQz
MkYwMDA5RDQ0NyAvKiBXZWJHTFJlbmRlcmluZ0NvbnRleHQuaWRsICovLAorCQkJCUQzRjNEMzVF
MUE2OUE1MDYwMDU5RkMyQiAvKiBXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmNwcCAqLywKKwkJ
CQlEM0YzRDM1RjFBNjlBNTA2MDA1OUZDMkIgLyogV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5o
ICovLAorCQkJCUQzRjNEMzYwMUE2OUE1MDYwMDU5RkMyQiAvKiBXZWJHTFJlbmRlcmluZ0NvbnRl
eHRCYXNlLmlkbCAqLywKKwkJCQk2Rjk5NUExOTFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xTYW1w
bGVyLmNwcCAqLywKKwkJCQk2Rjk5NUExQTFBNzA3OEIxMDBBNzM1RjQgLyogV2ViR0xTYW1wbGVy
LmggKi8sCisJCQkJNkY5OTVBMEExQTcwNzBFNjAwQTczNUY0IC8qIFdlYkdMU2FtcGxlci5pZGwg
Ki8sCisJCQkJNDlDN0I5QzIxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMU2hhZGVyLmNwcCAqLywK
KwkJCQk0OUM3QjlDMzEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuaCAqLywKKwkJCQk0
OUM3QjlDNDEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuaWRsICovLAorCQkJCUEwOENG
MTUzMTUyQjc3QjMwMDlDNTc3NSAvKiBXZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdC5jcHAgKi8s
CisJCQkJQTA3RDMzNTcxNTJCNjMyRDAwMUI2MzkzIC8qIFdlYkdMU2hhZGVyUHJlY2lzaW9uRm9y
bWF0LmggKi8sCisJCQkJQTA3RDMzNTkxNTJCNjMzRTAwMUI2MzkzIC8qIFdlYkdMU2hhZGVyUHJl
Y2lzaW9uRm9ybWF0LmlkbCAqLywKKwkJCQkwMUQzQ0Y4MDE0QkQwQTMwMDBGRTk5NzAgLyogV2Vi
R0xTaGFyZWRPYmplY3QuY3BwICovLAorCQkJCTAxRDNDRjgxMTRCRDBBMzAwMEZFOTk3MCAvKiBX
ZWJHTFNoYXJlZE9iamVjdC5oICovLAorCQkJCTZGOTk1QTEzMUE3MDc1NjIwMEE3MzVGNCAvKiBX
ZWJHTFN5bmMuY3BwICovLAorCQkJCTZGOTk1QTE0MUE3MDc1NjIwMEE3MzVGNCAvKiBXZWJHTFN5
bmMuaCAqLywKKwkJCQk2Rjk5NUEwQjFBNzA3MEU2MDBBNzM1RjQgLyogV2ViR0xTeW5jLmlkbCAq
LywKKwkJCQk0OUM3QjlDNTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xUZXh0dXJlLmNwcCAqLywK
KwkJCQk0OUM3QjlDNjEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xUZXh0dXJlLmggKi8sCisJCQkJ
NDlDN0I5QzcxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMVGV4dHVyZS5pZGwgKi8sCisJCQkJNkY5
OTVBMUIxQTcwNzhCMTAwQTczNUY0IC8qIFdlYkdMVHJhbnNmb3JtRmVlZGJhY2suY3BwICovLAor
CQkJCTZGOTk1QTFDMUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmgg
Ki8sCisJCQkJNkY5OTVBMEMxQTcwNzBFNjAwQTczNUY0IC8qIFdlYkdMVHJhbnNmb3JtRmVlZGJh
Y2suaWRsICovLAorCQkJCTBDM0YxRjU3MTBDODg3MTIwMEQ3MkNFMSAvKiBXZWJHTFVuaWZvcm1M
b2NhdGlvbi5jcHAgKi8sCisJCQkJMEMzRjFGNTgxMEM4ODcxMjAwRDcyQ0UxIC8qIFdlYkdMVW5p
Zm9ybUxvY2F0aW9uLmggKi8sCisJCQkJMEMzRjFGNTkxMEM4ODcxMjAwRDcyQ0UxIC8qIFdlYkdM
VW5pZm9ybUxvY2F0aW9uLmlkbCAqLywKKwkJCQk2Rjk5NUExRDFBNzA3OEIxMDBBNzM1RjQgLyog
V2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5jcHAgKi8sCisJCQkJNkY5OTVBMUUxQTcwNzhCMTAwQTcz
NUY0IC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3QuaCAqLywKKwkJCQk2Rjk5NUEwRDFBNzA3MEU2
MDBBNzM1RjQgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5pZGwgKi8sCisJCQkJNkYyMjJCNzUx
QUI1MkQ4QTAwOTQ2NTFBIC8qIFdlYkdMVmVydGV4QXJyYXlPYmplY3RCYXNlLmNwcCAqLywKKwkJ
CQk2RjIyMkI3NDFBQjUyRDY0MDA5NDY1MUEgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdEJhc2Uu
aCAqLywKKwkJCQk3N0ExN0E3NDEyRjI4NjQyMDA0RTAyRjYgLyogV2ViR0xWZXJ0ZXhBcnJheU9i
amVjdE9FUy5jcHAgKi8sCisJCQkJNzdBMTdBNzUxMkYyODY0MjAwNEUwMkY2IC8qIFdlYkdMVmVy
dGV4QXJyYXlPYmplY3RPRVMuaCAqLywKKwkJCQk3N0ExN0E3NjEyRjI4NjQyMDA0RTAyRjYgLyog
V2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5pZGwgKi8sCisJCQkpOworCQkJcGF0aCA9IGNhbnZh
czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTQ5NTg3ODFFMTJBNTdEQkMw
MDcyMzhBQyAvKiBjb2NvYSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJMEY1RTIwMDUxOEU3NzFGQzAwM0VDM0U1IC8qIFBsYXRmb3JtQ0FBbmltYXRpb25D
b2NvYS5oICovLAorCQkJCTQ5NTg3ODFGMTJBNTdEREYwMDcyMzhBQyAvKiBQbGF0Zm9ybUNBQW5p
bWF0aW9uQ29jb2EubW0gKi8sCisJCQkJMEYxMzE2M0YxNkVEMENERTAwMzVDQzA0IC8qIFBsYXRm
b3JtQ0FGaWx0ZXJzQ29jb2EubW0gKi8sCisJCQkJMkQ3MEJBMTIxODA3NERERjAwMDE5MDhBIC8q
IFBsYXRmb3JtQ0FMYXllckNvY29hLmggKi8sCisJCQkJNDk1ODc4MjAxMkE1N0RERjAwNzIzOEFD
IC8qIFBsYXRmb3JtQ0FMYXllckNvY29hLm1tICovLAorCQkJCTMxREVBNDU0MUIzOUY0RDkwMEY3
NzE3OCAvKiBXZWJTeXN0ZW1CYWNrZHJvcExheWVyLmggKi8sCisJCQkJMzFERUE0NTMxQjM5RjRE
OTAwRjc3MTc4IC8qIFdlYlN5c3RlbUJhY2tkcm9wTGF5ZXIubW0gKi8sCisJCQkJMEY1ODBGQTEx
NDk2OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLmggKi8sCisJCQkJMEY1ODBG
QTIxNDk2OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLm1tICovLAorCQkJCUNE
OEIzMUExMjM3OURDODMwMDg4M0ZERSAvKiBXZWJWaWRlb0NvbnRhaW5lckxheWVyLmggKi8sCisJ
CQkJQ0Q4QjMxQTIyMzc5REM4MzAwODgzRkRFIC8qIFdlYlZpZGVvQ29udGFpbmVyTGF5ZXIubW0g
Ki8sCisJCQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKwkJNDk5QjNFQzAxMjhDQ0MxODAwRTcyNkMyIC8qIGNhICovID0geworCQkJaXNhID0g
UEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0OTU4NzgxRTEyQTU3REJDMDA3MjM4QUMg
LyogY29jb2EgKi8sCisJCQkJNDk5QjNFRDQxMjhDRDMxNDAwRTcyNkMyIC8qIEdyYXBoaWNzTGF5
ZXJDQS5jcHAgKi8sCisJCQkJNDk5QjNFRDUxMjhDRDMxNDAwRTcyNkMyIC8qIEdyYXBoaWNzTGF5
ZXJDQS5oICovLAorCQkJCTdBQTNBNjlEMTk0QjU5QjYwMDFDQkQyNCAvKiBMYXllclBvb2wuY3Bw
ICovLAorCQkJCTdBQTNBNjlFMTk0QjU5QjYwMDFDQkQyNCAvKiBMYXllclBvb2wuaCAqLywKKwkJ
CQkwRkRGNDVBNjFCRDFDNkZEMDBFNEZBOEMgLyogUGxhdGZvcm1DQUFuaW1hdGlvbi5jcHAgKi8s
CisJCQkJNDk5QjNFREMxMjhEQjUwMTAwRTcyNkMyIC8qIFBsYXRmb3JtQ0FBbmltYXRpb24uaCAq
LywKKwkJCQkwRjEzMTYzRDE2RUQwQ0M4MDAzNUNDMDQgLyogUGxhdGZvcm1DQUZpbHRlcnMuaCAq
LywKKwkJCQkyRDcwQkExNDE4MDc0Rjg1MDAwMTkwOEEgLyogUGxhdGZvcm1DQUxheWVyLmNwcCAq
LywKKwkJCQk0OTlCM0VDMzEyOENDQzQ3MDBFNzI2QzIgLyogUGxhdGZvcm1DQUxheWVyLmggKi8s
CisJCQkJNDkzRTVFMDgxMkQ2NDIwNTAwMDIwMDgxIC8qIFBsYXRmb3JtQ0FMYXllckNsaWVudC5o
ICovLAorCQkJCTdBQTNBNjk1MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAg
Ki8sCisJCQkJN0FBM0E2OTYxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVDb250cm9sbGVyLmggKi8s
CisJCQkJN0FBM0E2QTExOTRCNUMyMjAwMUNCRDI0IC8qIFRpbGVDb3ZlcmFnZU1hcC5jcHAgKi8s
CisJCQkJN0FBM0E2QTIxOTRCNUMyMjAwMUNCRDI0IC8qIFRpbGVDb3ZlcmFnZU1hcC5oICovLAor
CQkJCTdBQTNBNjk3MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlR3JpZC5jcHAgKi8sCisJCQkJN0FB
M0E2OTgxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVHcmlkLmggKi8sCisJCQkJNDk0QkM0MEMxMkFF
REQ5RTAwNzQzQkQyIC8qIFRyYW5zZm9ybWF0aW9uTWF0cml4Q0EuY3BwICovLAorCQkJKTsKKwkJ
CXBhdGggPSBjYTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTQ5RTkxMUIy
MEVGODZEMjcwMDlEMENBRiAvKiB0cmFuc2Zvcm1zICovID0geworCQkJaXNhID0gUEJYR3JvdXA7
CisJCQljaGlsZHJlbiA9ICgKKwkJCQk4NEQwQzQwMzExMTVGMUQ0MDAxOEFBMzQgLyogQWZmaW5l
VHJhbnNmb3JtLmNwcCAqLywKKwkJCQk4NEQwQzQwNTExMTVGMUVBMDAxOEFBMzQgLyogQWZmaW5l
VHJhbnNmb3JtLmggKi8sCisJCQkJNDlFOTExQjUwRUY4NkQ0NzAwOUQwQ0FGIC8qIElkZW50aXR5
VHJhbnNmb3JtT3BlcmF0aW9uLmggKi8sCisJCQkJNDlENURDMjcwRjQyM0E3MzAwOEYyMEZEIC8q
IE1hdHJpeDNEVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLywKKwkJCQk0OUQ1REMyODBGNDIzQTcz
MDA4RjIwRkQgLyogTWF0cml4M0RUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLywKKwkJCQk0OUU5MTFC
NjBFRjg2RDQ3MDA5RDBDQUYgLyogTWF0cml4VHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLywKKwkJ
CQk0OUU5MTFCNzBFRjg2RDQ3MDA5RDBDQUYgLyogTWF0cml4VHJhbnNmb3JtT3BlcmF0aW9uLmgg
Ki8sCisJCQkJNDlENURDMjkwRjQyM0E3MzAwOEYyMEZEIC8qIFBlcnNwZWN0aXZlVHJhbnNmb3Jt
T3BlcmF0aW9uLmNwcCAqLywKKwkJCQk0OUQ1REMyQTBGNDIzQTczMDA4RjIwRkQgLyogUGVyc3Bl
Y3RpdmVUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLywKKwkJCQk0OUU5MTFCODBFRjg2RDQ3MDA5RDBD
QUYgLyogUm90YXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLywKKwkJCQk0OUU5MTFCOTBFRjg2
RDQ3MDA5RDBDQUYgLyogUm90YXRlVHJhbnNmb3JtT3BlcmF0aW9uLmggKi8sCisJCQkJNDlFOTEx
QkEwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNjYWxlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCAqLywKKwkJ
CQk0OUU5MTFCQjBFRjg2RDQ3MDA5RDBDQUYgLyogU2NhbGVUcmFuc2Zvcm1PcGVyYXRpb24uaCAq
LywKKwkJCQk0OUU5MTFCQzBFRjg2RDQ3MDA5RDBDQUYgLyogU2tld1RyYW5zZm9ybU9wZXJhdGlv
bi5jcHAgKi8sCisJCQkJNDlFOTExQkQwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNrZXdUcmFuc2Zvcm1P
cGVyYXRpb24uaCAqLywKKwkJCQk0OUU5MTFCMzBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3Jt
YXRpb25NYXRyaXguY3BwICovLAorCQkJCTQ5RTkxMUI0MEVGODZENDcwMDlEMENBRiAvKiBUcmFu
c2Zvcm1hdGlvbk1hdHJpeC5oICovLAorCQkJCTBGRTk1RjFDMUNENTQzREYwMEQyRjQ1QSAvKiBU
cmFuc2Zvcm1PcGVyYXRpb24uY3BwICovLAorCQkJCTQ5RTkxMUJFMEVGODZENDcwMDlEMENBRiAv
KiBUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLywKKwkJCQk0OUU5MTFCRjBFRjg2RDQ3MDA5RDBDQUYg
LyogVHJhbnNmb3JtT3BlcmF0aW9ucy5jcHAgKi8sCisJCQkJNDlFOTExQzAwRUY4NkQ0NzAwOUQw
Q0FGIC8qIFRyYW5zZm9ybU9wZXJhdGlvbnMuaCAqLywKKwkJCQk0OTQ1QkZEMTEzQ0Y4MDkwMDBD
QzNCMzggLyogVHJhbnNmb3JtU3RhdGUuY3BwICovLAorCQkJCTQ5NDVCRkQyMTNDRjgwOTAwMEND
M0IzOCAvKiBUcmFuc2Zvcm1TdGF0ZS5oICovLAorCQkJCTQ5RTkxMUMxMEVGODZENDcwMDlEMENB
RiAvKiBUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uY3BwICovLAorCQkJCTQ5RTkxMUMyMEVG
ODZENDcwMDlEMENBRiAvKiBUcmFuc2xhdGVUcmFuc2Zvcm1PcGVyYXRpb24uaCAqLywKKwkJCSk7
CisJCQlwYXRoID0gdHJhbnNmb3JtczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07
CisJCTQ5RTkxMkE0MEVGQUM4RTYwMDlEMENBRiAvKiBhbmltYXRpb24gKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTQ5RTkxMkE1MEVGQUM5MDYwMDlEMENB
RiAvKiBBbmltYXRpb24uY3BwICovLAorCQkJCTQ5RTkxMkE2MEVGQUM5MDYwMDlEMENBRiAvKiBB
bmltYXRpb24uaCAqLywKKwkJCQk0OUU5MTJBNzBFRkFDOTA2MDA5RDBDQUYgLyogQW5pbWF0aW9u
TGlzdC5jcHAgKi8sCisJCQkJNDlFOTEyQTgwRUZBQzkwNjAwOUQwQ0FGIC8qIEFuaW1hdGlvbkxp
c3QuaCAqLywKKwkJCQkwRjU4MEZBRTE0OTgwMEQ0MDBGQjVCRDggLyogQW5pbWF0aW9uVXRpbGl0
aWVzLmggKi8sCisJCQkJMEZERjQ1QTgxQkQxQzgyNTAwRTRGQThDIC8qIFRpbWluZ0Z1bmN0aW9u
LmNwcCAqLywKKwkJCQk0OUU5MTJBOTBFRkFDOTA2MDA5RDBDQUYgLyogVGltaW5nRnVuY3Rpb24u
aCAqLywKKwkJCSk7CisJCQlwYXRoID0gYW5pbWF0aW9uOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJNEJBRkQwREEyMTkyMUVBRDAwQzBBQjY0IC8qIHR5cGVkb20gKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTJBRUY2RkJCMjZFNzE2
RUUwMDMyNkQwMiAvKiBudW1lcmljICovLAorCQkJCTJBNDEwN0EwMjZDQjY2RUQwMDNCRjc5NyAv
KiBDU1NLZXl3b3JkVmFsdWUuY3BwICovLAorCQkJCTJBNDEwN0EzMjZDQjY2RUUwMDNCRjc5NyAv
KiBDU1NLZXl3b3JkVmFsdWUuaCAqLywKKwkJCQkyQTQxMDdBMjI2Q0I2NkVEMDAzQkY3OTcgLyog
Q1NTS2V5d29yZFZhbHVlLmlkbCAqLywKKwkJCQkyQUNCNEQyOTI2REM0QUIzMDBCRUI3NTMgLyog
Q1NTTnVtZXJpY0ZhY3RvcnkuY3BwICovLAorCQkJCTJBQ0I0RDI3MjZEQzRBQjIwMEJFQjc1MyAv
KiBDU1NOdW1lcmljRmFjdG9yeS5oICovLAorCQkJCUUzMjkyNzYyMjI1NDNGNTgwMDMwOEE5QSAv
KiBDU1NOdW1lcmljVmFsdWUuY3BwICovLAorCQkJCTRCQUZEMERGMjE5MjIwQUIwMEMwQUI2NCAv
KiBDU1NOdW1lcmljVmFsdWUuaCAqLywKKwkJCQk0QkFGRDBEQjIxOTIyMDIyMDBDMEFCNjQgLyog
Q1NTTnVtZXJpY1ZhbHVlLmlkbCAqLywKKwkJCQkyQUJGRkZFRjI2QzUzNUJDMDA0ODg3NUIgLyog
Q1NTT01WYXJpYWJsZVJlZmVyZW5jZVZhbHVlLmNwcCAqLywKKwkJCQkyQUJGRkZGMTI2QzUzNUJE
MDA0ODg3NUIgLyogQ1NTT01WYXJpYWJsZVJlZmVyZW5jZVZhbHVlLmggKi8sCisJCQkJMkFCRkZG
RjIyNkM1MzVCRDAwNDg4NzVCIC8qIENTU09NVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5pZGwgKi8s
CisJCQkJRTMyOTI3NjAyMjU0M0Y1ODAwMzA4QTlBIC8qIENTU1N0eWxlSW1hZ2VWYWx1ZS5jcHAg
Ki8sCisJCQkJNEI0Mzg2NEYyMTlDRDU2MTAwRjhEM0M1IC8qIENTU1N0eWxlSW1hZ2VWYWx1ZS5o
ICovLAorCQkJCTRCNDM4NjREMjE5Q0Q1MkQwMEY4RDNDNSAvKiBDU1NTdHlsZUltYWdlVmFsdWUu
aWRsICovLAorCQkJCUUzMjkyNzVFMjI1NDNGNTcwMDMwOEE5QSAvKiBDU1NTdHlsZVZhbHVlLmNw
cCAqLywKKwkJCQk0QkFGRDBENTIxOTIxNDZCMDBDMEFCNjQgLyogQ1NTU3R5bGVWYWx1ZS5oICov
LAorCQkJCTRCQUZEMEQzMjE5MjE0NTYwMEMwQUI2NCAvKiBDU1NTdHlsZVZhbHVlLmlkbCAqLywK
KwkJCQlFMzI5Mjc2MzIyNTQzRjU5MDAzMDhBOUEgLyogQ1NTVW5pdFZhbHVlLmNwcCAqLywKKwkJ
CQk0QkFGRDBERDIxOTIyMDkyMDBDMEFCNjQgLyogQ1NTVW5pdFZhbHVlLmggKi8sCisJCQkJNEJB
RkQwREMyMTkyMjA0QTAwQzBBQjY0IC8qIENTU1VuaXRWYWx1ZS5pZGwgKi8sCisJCQkJRTMyOTI3
NjEyMjU0M0Y1ODAwMzA4QTlBIC8qIENTU1VucGFyc2VkVmFsdWUuY3BwICovLAorCQkJCTRCQUZE
MEQ4MjE5MjFFQTAwMEMwQUI2NCAvKiBDU1NVbnBhcnNlZFZhbHVlLmggKi8sCisJCQkJNEJBRkQw
RDcyMTkyMUU3OTAwQzBBQjY0IC8qIENTU1VucGFyc2VkVmFsdWUuaWRsICovLAorCQkJCTRCRDc4
MUJFMjFDMTk2NUYwMEQ5NzAzRSAvKiBTdHlsZVByb3BlcnR5TWFwLmggKi8sCisJCQkJNEJENzgx
QkMyMUMxOTY0ODAwRDk3MDNFIC8qIFN0eWxlUHJvcGVydHlNYXAuaWRsICovLAorCQkJCTRCRDc4
MUM1MjFDMUQ2NzcwMEQ5NzAzRSAvKiBTdHlsZVByb3BlcnR5TWFwUmVhZE9ubHkuY3BwICovLAor
CQkJCTRCQUZEMENFMjE5MEY5QjQwMEMwQUI2NCAvKiBTdHlsZVByb3BlcnR5TWFwUmVhZE9ubHku
aCAqLywKKwkJCQk0QkFGRDBEMDIxOTBGOUMyMDBDMEFCNjQgLyogU3R5bGVQcm9wZXJ0eU1hcFJl
YWRPbmx5LmlkbCAqLywKKwkJCSk7CisJCQlwYXRoID0gdHlwZWRvbTsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTRCREVBMzE4MjE3RUJCODgwMDUyREZDRCAvKiB3b3JrbGV0
cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNEI2QjVD
QzEyMTY0MzlDRjAwNjAzODE3IC8qIFBhaW50V29ya2xldEdsb2JhbFNjb3BlLmNwcCAqLywKKwkJ
CQk0QjZCNUNCRjIxNjQzODY0MDA2MDM4MTcgLyogUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaCAq
LywKKwkJCQk0QjZCNUNDMzIxNjQzQThFMDA2MDM4MTcgLyogUGFpbnRXb3JrbGV0R2xvYmFsU2Nv
cGUuaWRsICovLAorCQkJCTRCREVBMzIzMjE3RUM5NkEwMDUyREZDRCAvKiBXb3JrbGV0LmNwcCAq
LywKKwkJCQk0QkRFQTMxRjIxN0VDNTVGMDA1MkRGQ0QgLyogV29ya2xldC5oICovLAorCQkJCTRC
REVBMzFDMjE3RUJDRjUwMDUyREZDRCAvKiBXb3JrbGV0LmlkbCAqLywKKwkJCQk0QkRFQTMyNjIx
N0ZFMkZBMDA1MkRGQ0QgLyogV29ya2xldEdsb2JhbFNjb3BlLmNwcCAqLywKKwkJCQk0QkRFQTMy
NDIxN0ZFMkU0MDA1MkRGQ0QgLyogV29ya2xldEdsb2JhbFNjb3BlLmggKi8sCisJCQkJNEJERUEz
MkEyMTgwMTA3MjAwNTJERkNEIC8qIFdvcmtsZXRHbG9iYWxTY29wZS5pZGwgKi8sCisJCQkJODMz
QkQ4MTYyNTI0RDRFMzAwNkU3MkIzIC8qIFdvcmtsZXRHbG9iYWxTY29wZVByb3h5LmggKi8sCisJ
CQkJODNBQ0QwMTAyNTIyOUUwNDAwMEQxMjRFIC8qIFdvcmtsZXRPcHRpb25zLmggKi8sCisJCQkJ
ODNBQ0QwMTIyNTIyOUUwNDAwMEQxMjRFIC8qIFdvcmtsZXRPcHRpb25zLmlkbCAqLywKKwkJCQk4
MzRBNkEzODI1MjY4NDQxMDA3NDdGNUQgLyogV29ya2xldFBhcmFtZXRlcnMuaCAqLywKKwkJCQk4
MzNCRDgxNTI1MjRENEUyMDA2RTcyQjMgLyogV29ya2xldFBlbmRpbmdUYXNrcy5jcHAgKi8sCisJ
CQkJODMzQkQ4MTMyNTI0RDRFMjAwNkU3MkIzIC8qIFdvcmtsZXRQZW5kaW5nVGFza3MuaCAqLywK
KwkJCSk7CisJCQlwYXRoID0gd29ya2xldHM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwor
CQl9OworCQk0RDNCMDBBMDIxNUQ1QzBGMDA3NkI5ODMgLyogbWVkaWFyZWNvcmRlciAqLyA9IHsK
KwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNEQ3RUIzRjQyMTdDNkFF
NjAwRDY0ODg4IC8qIEJsb2JFdmVudC5jcHAgKi8sCisJCQkJNEQzQjAwQUQyMTVENkE2OTAwNzZC
OTgzIC8qIEJsb2JFdmVudC5oICovLAorCQkJCTREM0IwMEE2MjE1RDY0NUIwMDc2Qjk4MyAvKiBC
bG9iRXZlbnQuaWRsICovLAorCQkJCTREM0IwMEE4MjE1RDY5QTYwMDc2Qjk4MyAvKiBNZWRpYVJl
Y29yZGVyLmNwcCAqLywKKwkJCQk0RDNCMDBBOTIxNUQ2OUE3MDA3NkI5ODMgLyogTWVkaWFSZWNv
cmRlci5oICovLAorCQkJCTREM0IwMEE0MjE1RDYxMDQwMDc2Qjk4MyAvKiBNZWRpYVJlY29yZGVy
LmlkbCAqLywKKwkJCQk0REI3MTMwRTIxNkVFQkFFMDA5NkE0REQgLyogTWVkaWFSZWNvcmRlckVy
cm9yRXZlbnQuY3BwICovLAorCQkJCTREQjcxMzBDMjE2RUMyQkQwMDk2QTRERCAvKiBNZWRpYVJl
Y29yZGVyRXJyb3JFdmVudC5oICovLAorCQkJCTREQjcxMzBBMjE2RUMyQkMwMDk2QTRERCAvKiBN
ZWRpYVJlY29yZGVyRXJyb3JFdmVudC5pZGwgKi8sCisJCQkJNDE3NkU4OTEyM0MzNEI3NTAwM0U4
M0ZFIC8qIE1lZGlhUmVjb3JkZXJQcm92aWRlci5jcHAgKi8sCisJCQkJNDE3NkU4OEYyM0MzNDhE
MjAwM0U4M0ZFIC8qIE1lZGlhUmVjb3JkZXJQcm92aWRlci5oICovLAorCQkJKTsKKwkJCXBhdGgg
PSBtZWRpYXJlY29yZGVyOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNEQz
QjUwMTIyMTdFNThBMzAwNjY1REIxIC8qIG1lZGlhcmVjb3JkZXIgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTREM0MwNUQ0MjFBRjQ4MDkwMEYyODkwQSAv
KiBjb2NvYSAqLywKKwkJCQk0MTc3MDQwQjIzRjcwQ0FCMDAwQzU0RUUgLyogTWVkaWFSZWNvcmRl
clByaXZhdGUuY3BwICovLAorCQkJCTREM0I1MDE0MjE3RTU4QjcwMDY2NURCMSAvKiBNZWRpYVJl
Y29yZGVyUHJpdmF0ZS5oICovLAorCQkJCTRENzNGOTQ1MjE4QkM1RkEwMDNBM0VENiAvKiBNZWRp
YVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuY3BwICovLAorCQkJCTRENzNGOTQ0MjE4QkM1RkEwMDNB
M0VENiAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuaCAqLywKKwkJCQk0RDlGNkI2NTIx
ODI1MzJCMDA5MkE5QzUgLyogTWVkaWFSZWNvcmRlclByaXZhdGVNb2NrLmNwcCAqLywKKwkJCQk0
RDlGNkI2NDIxODI1MzJCMDA5MkE5QzUgLyogTWVkaWFSZWNvcmRlclByaXZhdGVNb2NrLmggKi8s
CisJCQkJNDE0QjdGQUIyNEQ4MUM4RjAwMzNENDQyIC8qIE1lZGlhUmVjb3JkZXJQcml2YXRlT3B0
aW9ucy5oICovLAorCQkJKTsKKwkJCXBhdGggPSBtZWRpYXJlY29yZGVyOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNEQzQzA1RDQyMUFGNDgwOTAwRjI4OTBBIC8qIGNvY29h
ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MUUxRjMz
RjI0OEE2MkI2MDAyMkQ1REUgLyogQXVkaW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLmggKi8sCisJ
CQkJNDFFMUYzM0QyNDhBNjJCNjAwMjJENURFIC8qIEF1ZGlvU2FtcGxlQnVmZmVyQ29tcHJlc3Nv
ci5tbSAqLywKKwkJCQk0RDczRjk0QzIxOEM0QTg3MDAzQTNFRDYgLyogTWVkaWFSZWNvcmRlclBy
aXZhdGVXcml0ZXJDb2NvYS5oICovLAorCQkJCTRENzNGOTREMjE4QzRBODcwMDNBM0VENiAvKiBN
ZWRpYVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLm1tICovLAorCQkJCTQxQ0Q2Rjg5MjNENkU4
MUMwMEIxNjQyMSAvKiBWaWRlb1NhbXBsZUJ1ZmZlckNvbXByZXNzb3IuaCAqLywKKwkJCQk0MUNE
NkY4QjIzRDZFODFEMDBCMTY0MjEgLyogVmlkZW9TYW1wbGVCdWZmZXJDb21wcmVzc29yLm1tICov
LAorCQkJKTsKKwkJCXBhdGggPSBjb2NvYTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCTUxMDMxMDQyMUJBOEM2NEMwMDMzMjlDMCAvKiBjbGllbnQgKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUxN0IyNUE3MUNDODIwMzIwMDYxQzAx
MSAvKiBJREJDb25uZWN0aW9uUHJveHkuY3BwICovLAorCQkJCTUxN0IyNUE4MUNDODIwMzIwMDYx
QzAxMSAvKiBJREJDb25uZWN0aW9uUHJveHkuaCAqLywKKwkJCQk1MTg1RkNCQzFCQjVDQjc3MDAx
Mjg5OEYgLyogSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcCAqLywKKwkJCQk1MTBBNThGRDFCQjA3
QTk2MDBDMTkyODIgLyogSURCQ29ubmVjdGlvblRvU2VydmVyLmggKi8sCisJCQkJNTE4NUZDQkQx
QkI1Q0I3NzAwMTI4OThGIC8qIElEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmggKi8sCisJ
CQkJNTFEN0VGRUIxQkRFRkE0NzAwRTkzRTEwIC8qIFRyYW5zYWN0aW9uT3BlcmF0aW9uLmNwcCAq
LywKKwkJCQk1MTYwNzEyQjFCRDgzMDUzMDBEQkM0RjIgLyogVHJhbnNhY3Rpb25PcGVyYXRpb24u
aCAqLywKKwkJCSk7CisJCQlwYXRoID0gY2xpZW50OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsKKwkJfTsKKwkJNTEwQTU4RTExQkFBNDA5ODAwQzE5MjgyIC8qIHNoYXJlZCAqLyA9IHsKKwkJ
CWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTE3MTM4RjkxQkYzQURBQzAw
MEQ1RjAxIC8qIElEQkN1cnNvckluZm8uY3BwICovLAorCQkJCTUxNzEzOEZBMUJGM0FEQUMwMDBE
NUYwMSAvKiBJREJDdXJzb3JJbmZvLmggKi8sCisJCQkJNTExMEZDRkIxRTAzNjJBNTAwNkY4RDBC
IC8qIElEQkN1cnNvclJlY29yZC5oICovLAorCQkJCTUxQkE0QUMxMUJCQjVDQkYwMERGM0Q2RCAv
KiBJREJEYXRhYmFzZUluZm8uY3BwICovLAorCQkJCTUxQkE0QUMyMUJCQjVDQkYwMERGM0Q2RCAv
KiBJREJEYXRhYmFzZUluZm8uaCAqLywKKwkJCQk5MDE2RUE0QzI0NTREODEzMDAyMUQ5RDEgLyog
SURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oICovLAorCQkJCTUxNDg0NTNDMUJCOUQwNzYwMDZB
NzJFRCAvKiBJREJFcnJvci5jcHAgKi8sCisJCQkJNTE0ODQ1M0QxQkI5RDA3NjAwNkE3MkVEIC8q
IElEQkVycm9yLmggKi8sCisJCQkJNTE5REJDNkQxREMwMEZCOTAwMzI5QkY1IC8qIElEQkdldEFs
bFJlY29yZHNEYXRhLmNwcCAqLywKKwkJCQk1MTlEQkM2QzFEQzAwRkEwMDAzMjlCRjUgLyogSURC
R2V0QWxsUmVjb3Jkc0RhdGEuaCAqLywKKwkJCQk1MTA1RjA2QTFENEJCMEJDMDBGQjgwQkMgLyog
SURCR2V0UmVjb3JkRGF0YS5jcHAgKi8sCisJCQkJNTEwNUYwNjgxRDRCQTU0MTAwRkI4MEJDIC8q
IElEQkdldFJlY29yZERhdGEuaCAqLywKKwkJCQk1MUY3OThFQjFCRTg4MEQzMDA4QUU0OTEgLyog
SURCSW5kZXhJbmZvLmNwcCAqLywKKwkJCQk1MUY3OThFQzFCRTg4MEQzMDA4QUU0OTEgLyogSURC
SW5kZXhJbmZvLmggKi8sCisJCQkJNTFFMjY5MzQxREQzQkQ5MTAwNkI2QTU4IC8qIElEQkl0ZXJh
dGVDdXJzb3JEYXRhLmNwcCAqLywKKwkJCQk1MUUyNjkzNTFERDNCRDkxMDA2QjZBNTggLyogSURC
SXRlcmF0ZUN1cnNvckRhdGEuaCAqLywKKwkJCQk1MTYwNzEyQzFCRDgzMDcyMDBEQkM0RjIgLyog
SURCT2JqZWN0U3RvcmVJbmZvLmNwcCAqLywKKwkJCQk1MTYwNzEyRDFCRDgzMDcyMDBEQkM0RjIg
LyogSURCT2JqZWN0U3RvcmVJbmZvLmggKi8sCisJCQkJNTEwQTU4RjUxQkFDQzRBNTAwQzE5Mjgy
IC8qIElEQlJlcXVlc3REYXRhLmNwcCAqLywKKwkJCQk1MTBBNThGNjFCQUNDNEE1MDBDMTkyODIg
LyogSURCUmVxdWVzdERhdGEuaCAqLywKKwkJCQk1MTQ1QjEwNzFCQzQ4OTBCMDBFODYyMTkgLyog
SURCUmVzb3VyY2VJZGVudGlmaWVyLmNwcCAqLywKKwkJCQk1MTQ1QjEwODFCQzQ4OTBCMDBFODYy
MTkgLyogSURCUmVzb3VyY2VJZGVudGlmaWVyLmggKi8sCisJCQkJNTFENzIzNkExQkI2MEJGRTAw
NDc4Q0EzIC8qIElEQlJlc3VsdERhdGEuY3BwICovLAorCQkJCTUxRDcyMzZCMUJCNjBCRkUwMDQ3
OENBMyAvKiBJREJSZXN1bHREYXRhLmggKi8sCisJCQkJNTE5OEY3QUExQkJERDNFMzAwRTJDQzVG
IC8qIElEQlRyYW5zYWN0aW9uSW5mby5jcHAgKi8sCisJCQkJNTE5OEY3QUIxQkJERDNFMzAwRTJD
QzVGIC8qIElEQlRyYW5zYWN0aW9uSW5mby5oICovLAorCQkJCTUxNzEzOEVEMUJFRDFEMTcwMDBE
NUYwMSAvKiBJbmRleEtleS5jcHAgKi8sCisJCQkJNTE3MTM4RUUxQkVEMUQxNzAwMEQ1RjAxIC8q
IEluZGV4S2V5LmggKi8sCisJCQkpOworCQkJcGF0aCA9IHNoYXJlZDsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTUxMEE1OEVFMUJBQjcxRTAwMEMxOTI4MiAvKiBzZXJ2ZXIg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUxQkE0QUM3
MUJCQzVBRDYwMERGM0Q2RCAvKiBJREJCYWNraW5nU3RvcmUuaCAqLywKKwkJCQk1MTZEN0Q2RDFC
QjVGMDY1MDBBRjdDNzcgLyogSURCQ29ubmVjdGlvblRvQ2xpZW50LmNwcCAqLywKKwkJCQk1MTBB
NThGRTFCQjA3QUE1MDBDMTkyODIgLyogSURCQ29ubmVjdGlvblRvQ2xpZW50LmggKi8sCisJCQkJ
NTE2RDdENkUxQkI1RjA2NTAwQUY3Qzc3IC8qIElEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVnYXRl
LmggKi8sCisJCQkJNTExRUMxMjUxQzUwQUE1NzAwMzJGOTgzIC8qIElEQlNlcmlhbGl6YXRpb24u
Y3BwICovLAorCQkJCTUxMUVDMTI2MUM1MEFBNTcwMDMyRjk4MyAvKiBJREJTZXJpYWxpemF0aW9u
LmggKi8sCisJCQkJOTMyM0IwNkQyMzA2MUU5QjAwOTAxQzhCIC8qIElEQlNlcmlhbGl6YXRpb25D
b250ZXh0LmNwcCAqLywKKwkJCQk5MzIzQjA2RjIzMDYxRTlDMDA5MDFDOEIgLyogSURCU2VyaWFs
aXphdGlvbkNvbnRleHQuaCAqLywKKwkJCQk1MTBBNThFRjFCQUI3MjBGMDBDMTkyODIgLyogSURC
U2VydmVyLmNwcCAqLywKKwkJCQk1MTBBNThGMDFCQUI3MjBGMDBDMTkyODIgLyogSURCU2VydmVy
LmggKi8sCisJCQkJNTFFRUFBNzExQkVGRkE3OTAwMjE4MDA4IC8qIEluZGV4VmFsdWVFbnRyeS5j
cHAgKi8sCisJCQkJNTFFRUFBNzIxQkVGRkE3OTAwMjE4MDA4IC8qIEluZGV4VmFsdWVFbnRyeS5o
ICovLAorCQkJCTUxNzEzOEY1MUJGMTIyNjIwMDBENUYwMSAvKiBJbmRleFZhbHVlU3RvcmUuY3Bw
ICovLAorCQkJCTUxNzEzOEY2MUJGMTIyNjIwMDBENUYwMSAvKiBJbmRleFZhbHVlU3RvcmUuaCAq
LywKKwkJCQk1MUUxQkFDMDFCRDgwNjQ3MDA1NUQ4MUYgLyogTWVtb3J5QmFja2luZ1N0b3JlVHJh
bnNhY3Rpb24uY3BwICovLAorCQkJCTUxRTFCQUMxMUJEODA2NDcwMDU1RDgxRiAvKiBNZW1vcnlC
YWNraW5nU3RvcmVUcmFuc2FjdGlvbi5oICovLAorCQkJCTUxNzEzOTAxMUJGNjRERTMwMDBENUYw
MSAvKiBNZW1vcnlDdXJzb3IuY3BwICovLAorCQkJCTUxNzEzOTAyMUJGNjRERTMwMDBENUYwMSAv
KiBNZW1vcnlDdXJzb3IuaCAqLywKKwkJCQk1MUJBNEFDODFCQkM1QjlFMDBERjNENkQgLyogTWVt
b3J5SURCQmFja2luZ1N0b3JlLmNwcCAqLywKKwkJCQk1MUJBNEFDOTFCQkM1QjlFMDBERjNENkQg
LyogTWVtb3J5SURCQmFja2luZ1N0b3JlLmggKi8sCisJCQkJNTE4Rjk3MDAxQkU5NEM1QjAwMjMx
ODdDIC8qIE1lbW9yeUluZGV4LmNwcCAqLywKKwkJCQk1MThGOTcwMTFCRTk0QzVCMDAyMzE4N0Mg
LyogTWVtb3J5SW5kZXguaCAqLywKKwkJCQk1MTk3NTVGNzFCRkQ3REJDMDAzREU5ODAgLyogTWVt
b3J5SW5kZXhDdXJzb3IuY3BwICovLAorCQkJCTUxOTc1NUY4MUJGRDdEQkMwMDNERTk4MCAvKiBN
ZW1vcnlJbmRleEN1cnNvci5oICovLAorCQkJCTUxNzcxREZDMUJEQjQ3NTYwMENBRThFNCAvKiBN
ZW1vcnlPYmplY3RTdG9yZS5jcHAgKi8sCisJCQkJNTE3NzFERkQxQkRCNDc1NjAwQ0FFOEU0IC8q
IE1lbW9yeU9iamVjdFN0b3JlLmggKi8sCisJCQkJNTE3MTM5MDMxQkY2NERFMzAwMEQ1RjAxIC8q
IE1lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmNwcCAqLywKKwkJCQk1MTcxMzkwNDFCRjY0REUzMDAw
RDVGMDEgLyogTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuaCAqLywKKwkJCQk1MTZGN0Y2QjFDMzFD
NzlEMDBGMTExREMgLyogU2VydmVyT3BlbkRCUmVxdWVzdC5jcHAgKi8sCisJCQkJNTE2RjdGNkMx
QzMxQzc5RDAwRjExMURDIC8qIFNlcnZlck9wZW5EQlJlcXVlc3QuaCAqLywKKwkJCQk1MTJCREI0
ODFDNDU2RkFCMDA2NDk0REYgLyogU1FMaXRlSURCQmFja2luZ1N0b3JlLmNwcCAqLywKKwkJCQk1
MTJCREI0OTFDNDU2RkFCMDA2NDk0REYgLyogU1FMaXRlSURCQmFja2luZ1N0b3JlLmggKi8sCisJ
CQkJNTExRUMxMkQxQzUwQUJFQzAwMzJGOTgzIC8qIFNRTGl0ZUlEQkN1cnNvci5jcHAgKi8sCisJ
CQkJNTExRUMxMkUxQzUwQUJFQzAwMzJGOTgzIC8qIFNRTGl0ZUlEQkN1cnNvci5oICovLAorCQkJ
CTUxMUVDMTI5MUM1MEFCQkEwMDMyRjk4MyAvKiBTUUxpdGVJREJUcmFuc2FjdGlvbi5jcHAgKi8s
CisJCQkJNTExRUMxMkExQzUwQUJCQTAwMzJGOTgzIC8qIFNRTGl0ZUlEQlRyYW5zYWN0aW9uLmgg
Ki8sCisJCQkJNTE4ODY0REUxQkJBRjMwRjAwRTU0MEM5IC8qIFVuaXF1ZUlEQkRhdGFiYXNlLmNw
cCAqLywKKwkJCQk1MTg4NjRERjFCQkFGMzBGMDBFNTQwQzkgLyogVW5pcXVlSURCRGF0YWJhc2Uu
aCAqLywKKwkJCQk1MTk4RjdBMjFCQkRBQTI5MDBFMkNDNUYgLyogVW5pcXVlSURCRGF0YWJhc2VD
b25uZWN0aW9uLmNwcCAqLywKKwkJCQk1MTk4RjdBMzFCQkRBQTI5MDBFMkNDNUYgLyogVW5pcXVl
SURCRGF0YWJhc2VDb25uZWN0aW9uLmggKi8sCisJCQkJNTE5OEY3QTYxQkJERDM4MTAwRTJDQzVG
IC8qIFVuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uY3BwICovLAorCQkJCTUxOThGN0E3MUJC
REQzODEwMEUyQ0M1RiAvKiBVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmggKi8sCisJCQkp
OworCQkJcGF0aCA9IHNlcnZlcjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTUxMjZFNkI2MEEyRTNBRUYwMDVDMjlGQSAvKiBpY29uICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MTNGMTQ1MTBBQjYzNEM0MDAwOTREREYgLyogSWNv
bkxvYWRlci5jcHAgKi8sCisJCQkJNTEzRjE0NTIwQUI2MzRDNDAwMDk0RERGIC8qIEljb25Mb2Fk
ZXIuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gaWNvbjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTUxMkREOEU4MEQ5MUU2OTEwMDBGODlFRSAvKiBhcmNoaXZlICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MTJERDhFOTBEOTFFNkFG
MDAwRjg5RUUgLyogY2YgKi8sCisJCQkJMzdERENEOUQxMzg0NEZGQTAwMDhCNzkzIC8qIEFyY2hp
dmUuY3BwICovLAorCQkJCTUxMkREOEVDMEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlLmggKi8s
CisJCQkJNTEyREQ4RjAwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVGYWN0b3J5LmNwcCAqLywK
KwkJCQk1MTJERDhGMzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZUZhY3RvcnkuaCAqLywKKwkJ
CQk1MTJERDhGMTBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmNwcCAqLywKKwkJ
CQk1MTJERDhGMjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmggKi8sCisJCQkJ
NTEyREQ4RUQwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZUNvbGxlY3Rpb24uY3Bw
ICovLAorCQkJCTUxMkREOEVFMEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlUmVzb3VyY2VDb2xs
ZWN0aW9uLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGFyY2hpdmU7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQk1MTJERDhFOTBEOTFFNkFGMDAwRjg5RUUgLyogY2YgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUxMkREOEVBMEQ5MUU2
QUYwMDBGODlFRSAvKiBMZWdhY3lXZWJBcmNoaXZlLmNwcCAqLywKKwkJCQk1MTJERDhFQjBEOTFF
NkFGMDAwRjg5RUUgLyogTGVnYWN5V2ViQXJjaGl2ZS5oICovLAorCQkJCTUxQjI0MTdBMEQ5MzFG
M0YwMEU4M0Y1QyAvKiBMZWdhY3lXZWJBcmNoaXZlTWFjLm1tICovLAorCQkJKTsKKwkJCXBhdGgg
PSBjZjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTUxNUJFMTg3MUQ1NEY1
REIwMEREN0M2OCAvKiBnYW1lcGFkICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGls
ZHJlbiA9ICgKKwkJCQk1MUFFQTRCRjFENkUzQzIzMDBFMDI2OUQgLyogY29jb2EgKi8sCisJCQkJ
NTE1QkUxOTYxRDU0RjY0NTAwREQ3QzY4IC8qIG1hYyAqLywKKwkJCQk1MTVCRTE4ODFENTRGNUY2
MDBERDdDNjggLyogRW1wdHlHYW1lcGFkUHJvdmlkZXIuY3BwICovLAorCQkJCTUxNUJFMTg5MUQ1
NEY1RjYwMEREN0M2OCAvKiBFbXB0eUdhbWVwYWRQcm92aWRlci5oICovLAorCQkJCTUxNzE1RkU4
MjRDRDA1REQwMDJDOTdFNiAvKiBHYW1lcGFkQ29uc3RhbnRzLmNwcCAqLywKKwkJCQk1MTcxNUZF
OTI0Q0QwNUREMDAyQzk3RTYgLyogR2FtZXBhZENvbnN0YW50cy5oICovLAorCQkJCTUxNUJFMThB
MUQ1NEY1RjYwMEREN0M2OCAvKiBHYW1lcGFkUHJvdmlkZXIuY3BwICovLAorCQkJCTUxNUJFMThC
MUQ1NEY1RjYwMEREN0M2OCAvKiBHYW1lcGFkUHJvdmlkZXIuaCAqLywKKwkJCQk1MTVCRTE4QzFE
NTRGNUY2MDBERDdDNjggLyogR2FtZXBhZFByb3ZpZGVyQ2xpZW50LmggKi8sCisJCQkJNTEwQTkx
RjIyNEQzMjRDNjAwQkZEODlDIC8qIEtub3duR2FtZXBhZHMuaCAqLywKKwkJCQk1MTVCRTE4RTFE
NTRGNUY2MDBERDdDNjggLyogUGxhdGZvcm1HYW1lcGFkLmggKi8sCisJCQkJNTEwQTkxREIyNENG
NDQxODAwQkZEODlDIC8qIFNoYXJlZEdhbWVwYWRWYWx1ZS5oICovLAorCQkJKTsKKwkJCXBhdGgg
PSBnYW1lcGFkOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTE1QkUxOTYx
RDU0RjY0NTAwREQ3QzY4IC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJNTEwQTkxRjUyNEQzMjUwMDAwQkZEODlDIC8qIER1YWxzaG9jazNISURH
YW1lcGFkLmNwcCAqLywKKwkJCQk1MTBBOTFGNDI0RDMyNEZGMDBCRkQ4OUMgLyogRHVhbHNob2Nr
M0hJREdhbWVwYWQuaCAqLywKKwkJCQk1MTBBOTFGQjI0RDNDMEZEMDBCRkQ4OUMgLyogR2FtZXBh
ZENvbnN0YW50c01hYy5oICovLAorCQkJCTUxMEE5MUU3MjRDRkVBMTcwMEJGRDg5QyAvKiBHZW5l
cmljSElER2FtZXBhZC5jcHAgKi8sCisJCQkJNTEwQTkxRTkyNENGRUEzMjAwQkZEODlDIC8qIEdl
bmVyaWNISURHYW1lcGFkLmggKi8sCisJCQkJNTE1QkUxOTcxRDU0RjZCRDAwREQ3QzY4IC8qIEhJ
REdhbWVwYWQuY3BwICovLAorCQkJCTUxNUJFMTk4MUQ1NEY2QkQwMEREN0M2OCAvKiBISURHYW1l
cGFkLmggKi8sCisJCQkJNTEwQTkxRDUyNENFOEVERTAwQkZEODlDIC8qIEhJREdhbWVwYWRFbGVt
ZW50LmNwcCAqLywKKwkJCQk1MTBBOTFENjI0Q0U4RURFMDBCRkQ4OUMgLyogSElER2FtZXBhZEVs
ZW1lbnQuaCAqLywKKwkJCQk1MTVCRTE5QTFENTRGNkJEMDBERDdDNjggLyogSElER2FtZXBhZFBy
b3ZpZGVyLmggKi8sCisJCQkJNTE1QkUxOTkxRDU0RjZCRDAwREQ3QzY4IC8qIEhJREdhbWVwYWRQ
cm92aWRlci5tbSAqLywKKwkJCQk1MTBBOTIwNzI0RDRGMDdBMDBCRkQ4OUMgLyogTG9naXRlY2hH
YW1lcGFkLmNwcCAqLywKKwkJCQk1MTBBOTIwNTI0RDRGMDdBMDBCRkQ4OUMgLyogTG9naXRlY2hH
YW1lcGFkLmggKi8sCisJCQkJNTE3RTAzRjQyNEI2Qjk2MzAwNTQ4OTVBIC8qIE11bHRpR2FtZXBh
ZFByb3ZpZGVyLmggKi8sCisJCQkJNTE3RTAzRjUyNEI2Qjk2NDAwNTQ4OTVBIC8qIE11bHRpR2Ft
ZXBhZFByb3ZpZGVyLm1tICovLAorCQkJCTUxMEE5MjBGMjRENUUyMTcwMEJGRDg5QyAvKiBTdGFk
aWFISURHYW1lcGFkLmNwcCAqLywKKwkJCQk1MTBBOTIxMTI0RDVFMjE3MDBCRkQ4OUMgLyogU3Rh
ZGlhSElER2FtZXBhZC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOworCQl9OworCQk1MTYwRjQ5MjBCMEFBNzE1MDBDMUQyQUYgLyogbWFjICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MTYwRjQ5NzBC
MEFBNzVGMDBDMUQyQUYgLyogSGlzdG9yeUl0ZW1NYWMubW0gKi8sCisJCQkpOworCQkJcGF0aCA9
IG1hYzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTUxNzQxRDA4MEIwNzI1
NzAwMEVENDQyQyAvKiBoaXN0b3J5ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGls
ZHJlbiA9ICgKKwkJCQk1MTYwRjQ5MjBCMEFBNzE1MDBDMUQyQUYgLyogbWFjICovLAorCQkJCTE0
NzdFNzc0MEJGNDEzNEEwMDE1Mjg3MiAvKiBCYWNrRm9yd2FyZENhY2hlLmNwcCAqLywKKwkJCQkx
NDc3RTc3NTBCRjQxMzRBMDAxNTI4NzIgLyogQmFja0ZvcndhcmRDYWNoZS5oICovLAorCQkJCTUx
NzQxRDBCMEIwNzI1OUEwMEVENDQyQyAvKiBCYWNrRm9yd2FyZENsaWVudC5oICovLAorCQkJCUJD
QThDODFEMTFFM0QzNjkwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuY3BwICovLAor
CQkJCUJDQThDODFDMTFFM0QzNjkwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuaCAq
LywKKwkJCQk1MUExQjg3QjIwODdDNEI4MDA5NzlBNzUgLyogQmFja0ZvcndhcmRJdGVtSWRlbnRp
Zmllci5oICovLAorCQkJCTUxQzBBQTQwMEYyQUExNUUwMDE2NDhDMiAvKiBDYWNoZWRGcmFtZS5j
cHAgKi8sCisJCQkJNTFDMEFBMzgwRjJBQTEwQTAwMTY0OEMyIC8qIENhY2hlZEZyYW1lLmggKi8s
CisJCQkJNTFDQkZDOTgwRDEwRTQ4MzAwMkRCRjUxIC8qIENhY2hlZEZyYW1lUGxhdGZvcm1EYXRh
LmggKi8sCisJCQkJNTEwMTg0NjgwQjA4NjAyQTAwNEE4MjVGIC8qIENhY2hlZFBhZ2UuY3BwICov
LAorCQkJCTUxMDE4NDY3MEIwODYwMkEwMDRBODI1RiAvKiBDYWNoZWRQYWdlLmggKi8sCisJCQkJ
NTE3NDFEMEUwQjA3MjU5QTAwRUQ0NDJDIC8qIEhpc3RvcnlJdGVtLmNwcCAqLywKKwkJCQk1MTc0
MUQwRDBCMDcyNTlBMDBFRDQ0MkMgLyogSGlzdG9yeUl0ZW0uaCAqLywKKwkJCSk7CisJCQlwYXRo
ID0gaGlzdG9yeTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7
CisJCQl1c2VzVGFicyA9IDA7CisJCX07CisJCTUxN0E1MkVDMUY0NzUzMkQwMERDREMwQSAvKiBz
ZXJ2ZXIgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUx
QjkxNDBEMUZEMjc4MjUwMEVFMjg1OSAvKiBSZWdpc3RyYXRpb25EYXRhYmFzZS5jcHAgKi8sCisJ
CQkJNTFCOTE0MEMxRkQyNzgyNTAwRUUyODU5IC8qIFJlZ2lzdHJhdGlvbkRhdGFiYXNlLmggKi8s
CisJCQkJNTFCOTE0MEUxRkQyNzgyNTAwRUUyODU5IC8qIFJlZ2lzdHJhdGlvblN0b3JlLmNwcCAq
LywKKwkJCQk1MUI5MTQwQjFGRDI3ODI1MDBFRTI4NTkgLyogUmVnaXN0cmF0aW9uU3RvcmUuaCAq
LywKKwkJCQk0MTUxRTVCOTFGQkE0Qzc2MDBFNDdFMkQgLyogU1dPcmlnaW5TdG9yZS5jcHAgKi8s
CisJCQkJNDE1MUU1QjcxRkJBNEM3NTAwRTQ3RTJEIC8qIFNXT3JpZ2luU3RvcmUuaCAqLywKKwkJ
CQk0NjI3M0NBRTI2MEU1OURGMDA2RkFBOTEgLyogU1dTY3JpcHRTdG9yYWdlLmNwcCAqLywKKwkJ
CQk0NjI3M0NBQzI2MEU1OURGMDA2RkFBOTEgLyogU1dTY3JpcHRTdG9yYWdlLmggKi8sCisJCQkJ
NTE3QTUyRUYxRjQ3NTM1OTAwRENEQzBBIC8qIFNXU2VydmVyLmNwcCAqLywKKwkJCQk1MTdBNTJF
RTFGNDc1MzU5MDBEQ0RDMEEgLyogU1dTZXJ2ZXIuaCAqLywKKwkJCQk4MzExQzAwMDFGQUEyRTg5
MDBFM0M4RTUgLyogU1dTZXJ2ZXJKb2JRdWV1ZS5jcHAgKi8sCisJCQkJODMxMUMwMDIxRkFBMkU4
OTAwRTNDOEU1IC8qIFNXU2VydmVySm9iUXVldWUuaCAqLywKKwkJCQk1MUY2NDU5NTFGNEE2ODYx
MDBCNTRERUQgLyogU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwICovLAorCQkJCTUxRjY0NTk0MUY0
QTY4NEYwMEI1NERFRCAvKiBTV1NlcnZlclJlZ2lzdHJhdGlvbi5oICovLAorCQkJCTUxODU0MzBB
MUZCNjc4M0YwMDQ3OEY5NSAvKiBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwICovLAor
CQkJCTUxODU0MzA5MUZCNjc4M0UwMDQ3OEY5NSAvKiBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rp
b24uaCAqLywKKwkJCQk1MTdBNTM0MzFGNTBDMTYxMDBEQ0RDMEEgLyogU1dTZXJ2ZXJXb3JrZXIu
Y3BwICovLAorCQkJCTUxN0E1MzQyMUY1MEMxNjEwMERDREMwQSAvKiBTV1NlcnZlcldvcmtlci5o
ICovLAorCQkJKTsKKwkJCXBhdGggPSBzZXJ2ZXI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQk1MTdDODcwNzFGOEU4RkYyMDBFQjgwNzYgLyogY29udGV4dCAqLyA9IHsKKwkJ
CWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQTUyQjM0OEUxRkEzQkQ3OTAw
OEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJEZWJ1Z2dhYmxlLmNwcCAqLywKKwkJCQlBNTJCMzQ4QzFG
QTNCRDc5MDA4QjYyNDYgLyogU2VydmljZVdvcmtlckRlYnVnZ2FibGUuaCAqLywKKwkJCQk0MTlB
Q0Y5MDFGOTdFN0Q2MDA5RjFBODMgLyogU2VydmljZVdvcmtlckZldGNoLmNwcCAqLywKKwkJCQk0
MTlBQ0Y4RTFGOTdFN0Q1MDA5RjFBODMgLyogU2VydmljZVdvcmtlckZldGNoLmggKi8sCisJCQkJ
QTUyQjM0OTUxRkEzRTI4NjAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJbnNwZWN0b3JQcm94eS5j
cHAgKi8sCisJCQkJQTUyQjM0OTMxRkEzRTI4NjAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJbnNw
ZWN0b3JQcm94eS5oICovLAorCQkJCTUxN0M4NzExMUY4RUU3MkYwMEVCODA3NiAvKiBTZXJ2aWNl
V29ya2VyVGhyZWFkLmNwcCAqLywKKwkJCQk1MTdDODcxMDFGOEVFNzJFMDBFQjgwNzYgLyogU2Vy
dmljZVdvcmtlclRocmVhZC5oICovLAorCQkJCTQxMTJCNTQxMUY5RjlDOUMwMEU2Nzg3NSAvKiBT
ZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwICovLAorCQkJCTQxMTJCNTNGMUY5RjlDOUIwMEU2
Nzg3NSAvKiBTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuaCAqLywKKwkJCQk0NjcyNDEzQTFGQTI0
QjE0MDA4OEJENkQgLyogU1dDb250ZXh0TWFuYWdlci5jcHAgKi8sCisJCQkJNDY3MjQxM0IxRkEy
NEIxNDAwODhCRDZEIC8qIFNXQ29udGV4dE1hbmFnZXIuaCAqLywKKwkJCSk7CisJCQlwYXRoID0g
Y29udGV4dDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTUxODJDMjRDMUYz
MTQyMDkwMDU5QkE3QyAvKiBTZXJ2aWNlV29ya2VycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJN0U0Qzk2RDgxQUQ0NDgzNTAwMzY1QTUzIC8qIEpTRXh0
ZW5kYWJsZUV2ZW50LmNwcCAqLywKKwkJCQk3RTRDOTZEOTFBRDQ0ODM1MDAzNjVBNTMgLyogSlNF
eHRlbmRhYmxlRXZlbnQuaCAqLywKKwkJCQk3RTRDOTZEODFBRDQ0ODM1MDAzNjVBNTQgLyogSlNF
eHRlbmRhYmxlRXZlbnRJbml0LmNwcCAqLywKKwkJCQk4MzEwMkIyNTFGOUVBREMyMDBFNDA0Qjkg
LyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmNwcCAqLywKKwkJCQk4MzEwMkIyMzFGOUVBREMy
MDBFNDA0QjkgLyogSlNFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8sCisJCQkJN0U0Qzk2RDgx
QUQ0NDgzNTAwMzY1QTUyIC8qIEpTRmV0Y2hFdmVudC5jcHAgKi8sCisJCQkJN0U0Qzk2RDkxQUQ0
NDgzNTAwMzY1QTUyIC8qIEpTRmV0Y2hFdmVudC5oICovLAorCQkJCTUxRjg4NkJFMUYzMjkyMDcw
MEMxOTNFRiAvKiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuY3BwICovLAorCQkJCTUxRjg4NkJG
MUYzMjkyMDcwMEMxOTNFRiAvKiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIuaCAqLywKKwkJCQk1
MTgyQzI1MzFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyLmNwcCAqLywKKwkJCQk1
MTgyQzI1MjFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyLmggKi8sCisJCQkJNDZF
QjM3QzIxRjk3Q0NDQjAwQjY1NTIzIC8qIEpTU2VydmljZVdvcmtlckNsaWVudC5jcHAgKi8sCisJ
CQkJNDZFQjM3QzMxRjk3Q0NDQjAwQjY1NTIzIC8qIEpTU2VydmljZVdvcmtlckNsaWVudC5oICov
LAorCQkJCTQ2RUIzN0M0MUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJDbGllbnRz
LmNwcCAqLywKKwkJCQk0NkVCMzdDNTFGOTdDQ0NCMDBCNjU1MjMgLyogSlNTZXJ2aWNlV29ya2Vy
Q2xpZW50cy5oICovLAorCQkJCTgzQjI1MDBCMUZBMTE4MUQwMEJDMDJEOSAvKiBKU1NlcnZpY2VX
b3JrZXJDbGllbnRUeXBlLmNwcCAqLywKKwkJCQk4M0IyNTAwOTFGQTExODFDMDBCQzAyRDkgLyog
SlNTZXJ2aWNlV29ya2VyQ2xpZW50VHlwZS5oICovLAorCQkJCTUxODJDMjUxMUYzMTQyNTAwMDU5
QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXJDb250YWluZXIuY3BwICovLAorCQkJCTUxODJDMjU0MUYz
MTQyNTAwMDU5QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXJDb250YWluZXIuaCAqLywKKwkJCQk1MTgy
QzI0RTFGMzE0MjUwMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwICov
LAorCQkJCTUxODJDMjREMUYzMTQyNTAwMDU5QkE3QyAvKiBKU1NlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZS5oICovLAorCQkJCTUxODJDMjRGMUYzMTQyNTAwMDU5QkE3QyAvKiBKU1NlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb24uY3BwICovLAorCQkJCTUxODJDMjUwMUYzMTQyNTAwMDU5QkE3QyAvKiBK
U1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24uaCAqLywKKwkJCQk1MUYxNzUwMDFGMzU4QjM2MDBD
NzQ5NTAgLyogSlNTZXJ2aWNlV29ya2VyVXBkYXRlVmlhQ2FjaGUuY3BwICovLAorCQkJCTUxRjE3
NTAxMUYzNThCMzYwMEM3NDk1MCAvKiBKU1NlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZS5oICov
LAorCQkJCTQ2RUIzN0M2MUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJXaW5kb3dD
bGllbnQuY3BwICovLAorCQkJCTQ2RUIzN0M3MUY5N0NDQ0IwMEI2NTUyMyAvKiBKU1NlcnZpY2VX
b3JrZXJXaW5kb3dDbGllbnQuaCAqLywKKwkJCSk7CisJCQluYW1lID0gU2VydmljZVdvcmtlcnM7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk1MThGNEZFOTE5NENBNEI2MDA4
MUJBQUUgLyogZ2FtZXBhZCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJNTFBNEJCMDcxOTU0RDYxNjAwRkE1QzJFIC8qIEdhbWVwYWQuY3BwICovLAorCQkJ
CTUxQTRCQjA4MTk1NEQ2MTYwMEZBNUMyRSAvKiBHYW1lcGFkLmggKi8sCisJCQkJNTFBNEJCMDkx
OTU0RDYxNjAwRkE1QzJFIC8qIEdhbWVwYWQuaWRsICovLAorCQkJCTUxOEY0RkVEMTk0Q0E0RTYw
MDgxQkFBRSAvKiBHYW1lcGFkQnV0dG9uLmNwcCAqLywKKwkJCQk1MThGNEZFRTE5NENBNEU2MDA4
MUJBQUUgLyogR2FtZXBhZEJ1dHRvbi5oICovLAorCQkJCTUxOEY0RkVGMTk0Q0E0RTYwMDgxQkFB
RSAvKiBHYW1lcGFkQnV0dG9uLmlkbCAqLywKKwkJCQk1MTZDNjIxRDE5NTBENDg3MDAzMzdFNzUg
LyogR2FtZXBhZEV2ZW50LmNwcCAqLywKKwkJCQk1MTZDNjIxRTE5NTBENDg3MDAzMzdFNzUgLyog
R2FtZXBhZEV2ZW50LmggKi8sCisJCQkJNTE2QzYyMUYxOTUwRDQ4NzAwMzM3RTc1IC8qIEdhbWVw
YWRFdmVudC5pZGwgKi8sCisJCQkJNTFBOUQ5RTcxOTVCOTMxRjAwMUIyQjVDIC8qIEdhbWVwYWRN
YW5hZ2VyLmNwcCAqLywKKwkJCQk1MUE5RDlFODE5NUI5MzFGMDAxQjJCNUMgLyogR2FtZXBhZE1h
bmFnZXIuaCAqLywKKwkJCQk1MUE0QkIwRjE5NTRENjI3MDBGQTVDMkUgLyogTmF2aWdhdG9yK0dh
bWVwYWQuaWRsICovLAorCQkJCTUxQTRCQjBEMTk1NEQ2MjcwMEZBNUMyRSAvKiBOYXZpZ2F0b3JH
YW1lcGFkLmNwcCAqLywKKwkJCQk1MUE0QkIwRTE5NTRENjI3MDBGQTVDMkUgLyogTmF2aWdhdG9y
R2FtZXBhZC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBnYW1lcGFkOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTE4RjRGRkMxOTRDQUJFMzAwODFCQUFFIC8qIEdhbWVwYWQg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUxOEY0RkZE
MTk0Q0FDM0EwMDgxQkFBRSAvKiBKU0dhbWVwYWQuY3BwICovLAorCQkJCTUxOEY0RkZFMTk0Q0FD
M0EwMDgxQkFBRSAvKiBKU0dhbWVwYWQuaCAqLywKKwkJCQk1MThGNEZGRjE5NENBQzNBMDA4MUJB
QUUgLyogSlNHYW1lcGFkQnV0dG9uLmNwcCAqLywKKwkJCQk1MThGNTAwMDE5NENBQzNBMDA4MUJB
QUUgLyogSlNHYW1lcGFkQnV0dG9uLmggKi8sCisJCQkJNTE2QzYyMjMxOTUwRTJCOTAwMzM3RTc1
IC8qIEpTR2FtZXBhZEV2ZW50LmNwcCAqLywKKwkJCQk1MTZDNjIyNDE5NTBFMkI5MDAzMzdFNzUg
LyogSlNHYW1lcGFkRXZlbnQuaCAqLywKKwkJCSk7CisJCQluYW1lID0gR2FtZXBhZDsKKwkJCXNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTUxQUVBNEJGMUQ2RTNDMjMwMEUwMjY5RCAv
KiBjb2NvYSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
NTFFMzk4RkMxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250cm9sbGVyR2FtZXBhZC5oICovLAor
CQkJCTUxRTM5OEZEMUQ2RTQ3NEIwMDlDODgzMSAvKiBHYW1lQ29udHJvbGxlckdhbWVwYWQubW0g
Ki8sCisJCQkJNTFFMzk4RkUxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250cm9sbGVyR2FtZXBh
ZFByb3ZpZGVyLmggKi8sCisJCQkJNTFFMzk4RkYxRDZFNDc0QjAwOUM4ODMxIC8qIEdhbWVDb250
cm9sbGVyR2FtZXBhZFByb3ZpZGVyLm1tICovLAorCQkJCTUxMzBGMkYyMjRBRUE2MDIwMEUxRDBB
MCAvKiBHYW1lQ29udHJvbGxlclNvZnRMaW5rLmggKi8sCisJCQkJNTEzMEYyRjQyNEFFQTYwMzAw
RTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsubW0gKi8sCisJCQkJNTEzMEYyRjUyNEFF
QTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU1BJLmggKi8sCisJCQkpOworCQkJcGF0aCA9
IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTFFQ0MzRTQyMDA1
ODMxRjAwNDgzRUFFIC8qIG1lc3NhZ2Vwb3J0cyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOwor
CQkJY2hpbGRyZW4gPSAoCisJCQkJNTFFQ0MzRjMyMDA1ODdCNjAwNDgzRUFFIC8qIE1lc3NhZ2VQ
b3J0Q2hhbm5lbC5jcHAgKi8sCisJCQkJNTFFQ0MzRjQyMDA1ODdCNzAwNDgzRUFFIC8qIE1lc3Nh
Z2VQb3J0Q2hhbm5lbC5oICovLAorCQkJCTUxRUNDM0ZDMjAwNTkzMDIwMDQ4M0VBRSAvKiBNZXNz
YWdlUG9ydENoYW5uZWxQcm92aWRlci5jcHAgKi8sCisJCQkJNTFFQ0MzRkIyMDA1OTMwMTAwNDgz
RUFFIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmggKi8sCisJCQkJNTFBNzQ4RTQyMDA2
MDAyMTAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5jcHAgKi8sCisJ
CQkJNTFBNzQ4RTUyMDA2MDAyMTAwNzVCQTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVy
SW1wbC5oICovLAorCQkJCTUxRUNDM0Y1MjAwNTg3QjcwMDQ4M0VBRSAvKiBNZXNzYWdlUG9ydENo
YW5uZWxSZWdpc3RyeS5jcHAgKi8sCisJCQkJNTFFQ0MzRjEyMDA1ODdCNTAwNDgzRUFFIC8qIE1l
c3NhZ2VQb3J0Q2hhbm5lbFJlZ2lzdHJ5LmggKi8sCisJCQkJNTFBNzQ4RTEyMDA1RDBFMDAwNzVC
QTY4IC8qIE1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzLmNwcCAqLywKKwkJCQk1MUE3NDhFMDIwMDVE
MEUwMDA3NUJBNjggLyogTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCAqLywKKwkJCQk0MTExNEE3
QzIzMTdCMzlFMDBCNTYwMDcgLyogV29ya2VyTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuY3Bw
ICovLAorCQkJCTQxMTE0QTdBMjMxN0IzOUUwMEI1NjAwNyAvKiBXb3JrZXJNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5oICovLAorCQkJKTsKKwkJCXBhdGggPSBtZXNzYWdlcG9ydHM7CisJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk1MUYxNzU0NDFGM0VCQkYyMDBDNzQ5NTAg
Lyogc2VydmljZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJNTE3Qzg3MDcxRjhFOEZGMjAwRUI4MDc2IC8qIGNvbnRleHQgKi8sCisJCQkJNTE3QTUyRUMx
RjQ3NTMyRDAwRENEQzBBIC8qIHNlcnZlciAqLywKKwkJCQk0MUFGMzc5MjFGOERBNDhBMDAxMTFD
MzEgLyogRXh0ZW5kYWJsZUV2ZW50LmNwcCAqLywKKwkJCQk0MUFGMzc4QTFGOEMxRTdBMDAxMTFD
MzEgLyogRXh0ZW5kYWJsZUV2ZW50LmggKi8sCisJCQkJNDFBRjM3OEUxRjhDMUU3QzAwMTExQzMx
IC8qIEV4dGVuZGFibGVFdmVudC5pZGwgKi8sCisJCQkJNDEzMUYzQjQxRjk1NUJDMzAwNTk5OTVB
IC8qIEV4dGVuZGFibGVFdmVudEluaXQuaCAqLywKKwkJCQk0MTMxRjNCNTFGOTU1QkM1MDA1OTk5
NUEgLyogRXh0ZW5kYWJsZUV2ZW50SW5pdC5pZGwgKi8sCisJCQkJODM3RkIzNDIxRjlFQTA2NzAw
RDBGQzMxIC8qIEV4dGVuZGFibGVNZXNzYWdlRXZlbnQuY3BwICovLAorCQkJCTgzN0ZCMzQwMUY5
RUEwNjYwMEQwRkMzMSAvKiBFeHRlbmRhYmxlTWVzc2FnZUV2ZW50LmggKi8sCisJCQkJODM3RkIz
NDMxRjlFQTA2ODAwRDBGQzMxIC8qIEV4dGVuZGFibGVNZXNzYWdlRXZlbnQuaWRsICovLAorCQkJ
CTQxQUYzNzk0MUY4REE0OTUwMDExMUMzMSAvKiBGZXRjaEV2ZW50LmNwcCAqLywKKwkJCQk0MUFG
Mzc4ODFGOEMxRTc5MDAxMTFDMzEgLyogRmV0Y2hFdmVudC5oICovLAorCQkJCTQxQUYzNzhEMUY4
QzFFN0IwMDExMUMzMSAvKiBGZXRjaEV2ZW50LmlkbCAqLywKKwkJCQk1MUYxNzU1QjFGM0VCQzBD
MDBDNzQ5NTAgLyogU2VydmljZVdvcmtlci5jcHAgKi8sCisJCQkJNTFGMTc1NUExRjNFQkMwQzAw
Qzc0OTUwIC8qIFNlcnZpY2VXb3JrZXIuaCAqLywKKwkJCQk1MUYxNzU1OTFGM0VCQzBDMDBDNzQ5
NTAgLyogU2VydmljZVdvcmtlci5pZGwgKi8sCisJCQkJNDZFRjE0MjcxRjk3QjdCQTAwQzJBNTI0
IC8qIFNlcnZpY2VXb3JrZXJDbGllbnQuY3BwICovLAorCQkJCTQ2RUYxNDI0MUY5N0I3QkEwMEMy
QTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50LmggKi8sCisJCQkJNDZFRjE0MjgxRjk3QjdCQTAw
QzJBNTI0IC8qIFNlcnZpY2VXb3JrZXJDbGllbnQuaWRsICovLAorCQkJCTgzNzkzNjNDMUZCQkIw
QTQwMEM4MDIzQyAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YS5jcHAgKi8sCisJCQkJODM3OTM2
M0UxRkJCQjBBNTAwQzgwMjNDIC8qIFNlcnZpY2VXb3JrZXJDbGllbnREYXRhLmggKi8sCisJCQkJ
OTNGQ0RCNDkyNjQ0NTVENjAwNDZERDdEIC8qIFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVy
LmNwcCAqLywKKwkJCQk4MzdENDYyNTFGQTJBOEM1MDA1NEUxRkEgLyogU2VydmljZVdvcmtlckNs
aWVudElkZW50aWZpZXIuaCAqLywKKwkJCQk0MTNGQzRDRDFGRDFERDhDMDA1NDFDNEIgLyogU2Vy
dmljZVdvcmtlckNsaWVudFF1ZXJ5T3B0aW9ucy5oICovLAorCQkJCTQ2RUYxNDIxMUY5N0I3QkEw
MEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50cy5jcHAgKi8sCisJCQkJNDZFRjE0MjIxRjk3
QjdCQTAwQzJBNTI0IC8qIFNlcnZpY2VXb3JrZXJDbGllbnRzLmggKi8sCisJCQkJNDZFRjE0MjMx
Rjk3QjdCQTAwQzJBNTI0IC8qIFNlcnZpY2VXb3JrZXJDbGllbnRzLmlkbCAqLywKKwkJCQk4MzY5
RkRGQjFGQTEwMkNCMDBDMUZGMUYgLyogU2VydmljZVdvcmtlckNsaWVudFR5cGUuaCAqLywKKwkJ
CQk4MzY5RkRGOTFGQTEwMkNBMDBDMUZGMUYgLyogU2VydmljZVdvcmtlckNsaWVudFR5cGUuaWRs
ICovLAorCQkJCTUxRjE3NTU4MUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyQ29udGFp
bmVyLmNwcCAqLywKKwkJCQk1MUYxNzU1NzFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtl
ckNvbnRhaW5lci5oICovLAorCQkJCTUxRjE3NTU2MUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNl
V29ya2VyQ29udGFpbmVyLmlkbCAqLywKKwkJCQk1MTdDODcxNjFGOEZENEQzMDBFQjgwNzYgLyog
U2VydmljZVdvcmtlckNvbnRleHREYXRhLmNwcCAqLywKKwkJCQk1MUNBN0VFNzFGODgzMkUwMDAz
RDMxMzEgLyogU2VydmljZVdvcmtlckNvbnRleHREYXRhLmggKi8sCisJCQkJODNFODY2N0YxRkJB
NTY0MDAwODg1NUM1IC8qIFNlcnZpY2VXb3JrZXJEYXRhLmNwcCAqLywKKwkJCQk4M0U4NjY3RDFG
QkE1NjNGMDA4ODU1QzUgLyogU2VydmljZVdvcmtlckRhdGEuaCAqLywKKwkJCQk1MTdBNTM1QzFG
NTg5OUYyMDBEQ0RDMEEgLyogU2VydmljZVdvcmtlckZldGNoUmVzdWx0LmggKi8sCisJCQkJNTFG
MTc1NTUxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8s
CisJCQkJNTFGMTc1NTQxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZS5oICovLAorCQkJCTUxRjE3NTUzMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGUuaWRsICovLAorCQkJCTgzQThBQzNFMUZBQkJGRDEwMDIwNjRBQyAvKiBTZXJ2aWNl
V29ya2VySWRlbnRpZmllci5oICovLAorCQkJCTUxRjE3NTUyMUYzRUJDMEMwMEM3NDk1MCAvKiBT
ZXJ2aWNlV29ya2VySm9iLmNwcCAqLywKKwkJCQk1MUYxNzU1MTFGM0VCQzBDMDBDNzQ5NTAgLyog
U2VydmljZVdvcmtlckpvYi5oICovLAorCQkJCTUxRjE3NTUwMUYzRUJDMEMwMEM3NDk1MCAvKiBT
ZXJ2aWNlV29ya2VySm9iQ2xpZW50LmggKi8sCisJCQkJNTE3QTUzMjQxRjRCOTA0QTAwRENEQzBB
IC8qIFNlcnZpY2VXb3JrZXJKb2JEYXRhLmNwcCAqLywKKwkJCQk1MUY2NDU2NjFGNDUzOTlGMDBC
NTRERUQgLyogU2VydmljZVdvcmtlckpvYkRhdGEuaCAqLywKKwkJCQk4MzhDQTZCQjFGQzBERkRE
MDA1RDlGQTUgLyogU2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyLmggKi8sCisJCQkJNTFG
NjQ1NjUxRjQ1Mzk5RjAwQjU0REVEIC8qIFNlcnZpY2VXb3JrZXJKb2JUeXBlLmggKi8sCisJCQkJ
NTFGMTc1NEYxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJQcm92aWRlci5jcHAgKi8s
CisJCQkJNTFGMTc1NEUxRjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJQcm92aWRlci5o
ICovLAorCQkJCTUxRjE3NTREMUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uLmNwcCAqLywKKwkJCQk1MUYxNzU0QzFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbi5oICovLAorCQkJCTUxRjE3NTRCMUYzRUJDMEMwMEM3NDk1MCAvKiBT
ZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLmlkbCAqLywKKwkJCQk1MTdBNTM0QjFGNTQ5RDRBMDBE
Q0RDMEEgLyogU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEuY3BwICovLAorCQkJCTUxN0E1
MzRDMUY1NDlENEEwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YS5oICov
LAorCQkJCTUxN0E1MzI3MUY0QjkwQjIwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uS2V5LmNwcCAqLywKKwkJCQk1MTdBNTMyNjFGNEI5MEIyMDBEQ0RDMEEgLyogU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbktleS5oICovLAorCQkJCTUxRjY0NUEwMUY0QkY1MTYwMEI1NERFRCAv
KiBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uT3B0aW9ucy5jcHAgKi8sCisJCQkJNTFGMTc1NEEx
RjNFQkMwQzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25PcHRpb25zLmggKi8s
CisJCQkJNTE1RTM3RjQxRkFBOTM4ODAwRDdGMjJBIC8qIFNlcnZpY2VXb3JrZXJUeXBlcy5oICov
LAorCQkJCTUxRjE3NTQ3MUYzRUJDMEMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyVXBkYXRlVmlh
Q2FjaGUuaCAqLywKKwkJCQk1MUYxNzU0NjFGM0VCQzBDMDBDNzQ5NTAgLyogU2VydmljZVdvcmtl
clVwZGF0ZVZpYUNhY2hlLmlkbCAqLywKKwkJCQk0NkVGMTQyNTFGOTdCN0JBMDBDMkE1MjQgLyog
U2VydmljZVdvcmtlcldpbmRvd0NsaWVudC5jcHAgKi8sCisJCQkJNDZFRjE0MjAxRjk3QjdCQTAw
QzJBNTI0IC8qIFNlcnZpY2VXb3JrZXJXaW5kb3dDbGllbnQuaCAqLywKKwkJCQk0NkVGMTQyNjFG
OTdCN0JBMDBDMkE1MjQgLyogU2VydmljZVdvcmtlcldpbmRvd0NsaWVudC5pZGwgKi8sCisJCQkJ
NDZFQ0I2MzYxRkQwQTNCQjAwODhFNUFEIC8qIFNXQ2xpZW50Q29ubmVjdGlvbi5jcHAgKi8sCisJ
CQkJNDZFQ0I2MzcxRkQwQTNCQjAwODhFNUFEIC8qIFNXQ2xpZW50Q29ubmVjdGlvbi5oICovLAor
CQkJCTQxQTA5OEJDMjMxRTkxRDEwMEY0RkZGMCAvKiBXb3JrZXJTV0NsaWVudENvbm5lY3Rpb24u
Y3BwICovLAorCQkJCTQxQTA5OEJFMjMxRTkxRDEwMEY0RkZGMCAvKiBXb3JrZXJTV0NsaWVudENv
bm5lY3Rpb24uaCAqLywKKwkJCSk7CisJCQlwYXRoID0gc2VydmljZTsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTUyNzNDQzcyMjU2MTAzOUIwMDg1MDAwNyAvKiBjb2NvYSAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTI3M0NDNzUy
NTYxMDNDRjAwODUwMDA3IC8qIFBsYXRmb3JtWFJDb2NvYS5oICovLAorCQkJCTUyNzNDQzc0MjU2
MTAzQ0YwMDg1MDAwNyAvKiBQbGF0Zm9ybVhSQ29jb2EubW0gKi8sCisJCQkpOworCQkJcGF0aCA9
IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTM4RUM3RUExRjk2
QTk1QjAwNEQyMkE4IC8qIHVuaWZpZWQtc291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTM4RUM3RjMxRjk2QUE1QjAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UxLW1tLm1tICovLAorCQkJCTUzOEVDN0ZBMUY5NkFBNzAwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMS5jcHAgKi8sCisJCQkJNTM4RUM3RjgxRjk2QUE2OTAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UyLW1tLm1tICovLAorCQkJCTUzOEVDN0VFMUY5NkFBNTYwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMi5jcHAgKi8sCisJCQkJNTM4RUM3RUQxRjk2QUE1NTAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UzLW1tLm1tICovLAorCQkJCTUzOEVDN0VDMUY5NkFBNTQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMy5jcHAgKi8sCisJCQkJREU1Rjg1NDkxRkExQUJCRDAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0LW1tLm1tICovLAorCQkJCTUzOEVDN0VGMUY5NkFBNTcwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNC5jcHAgKi8sCisJCQkJREU1Rjg1NjUxRkExQUJENjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U1LW1tLm1tICovLAorCQkJCTUzOEVDN0YwMUY5NkFBNTgwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNS5jcHAgKi8sCisJCQkJREU1Rjg1NkIxRkExQUJEQjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U2LW1tLm1tICovLAorCQkJCTUzOEVDN0VCMUY5NkFBNTMwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNi5jcHAgKi8sCisJCQkJREU1Rjg1NUYxRkExQUJEMTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U3LW1tLm1tICovLAorCQkJCTUzOEVDN0YxMUY5NkFBNTkwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlNy5jcHAgKi8sCisJCQkJREU1Rjg1M0QxRkExQUJCMjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U4LW1tLm1tICovLAorCQkJCTUzOEVDN0YyMUY5NkFBNUEwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlOC5jcHAgKi8sCisJCQkJREU1Rjg1NTQxRkExQUJDNzAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U5LW1tLm1tICovLAorCQkJCTUzOEVDN0ZFMUY5NkFBNzYwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlOS5jcHAgKi8sCisJCQkJREU1Rjg1NjMxRkExQUJENTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UxMC1tbS5tbSAqLywKKwkJCQk1MzhFQzdGNTFGOTZBQTVFMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTEwLmNwcCAqLywKKwkJCQlERTVGODU2MTFGQTFBQkQzMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTExLW1tLm1tICovLAorCQkJCTUzOEVDN0Y0MUY5NkFBNUQwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTEuY3BwICovLAorCQkJCURFNUY4NTY0MUZBMUFCRDUwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMTItbW0ubW0gKi8sCisJCQkJNTM4RUM3RjYxRjk2QUE1RjAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMi5jcHAgKi8sCisJCQkJREU1Rjg1NkExRkExQUJEQjAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UxMy1tbS5tbSAqLywKKwkJCQk1MzhFQzdGRDFGOTZBQTc0MDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTEzLmNwcCAqLywKKwkJCQlERTVGODU0RTFGQTFBQkMyMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTE0LW1tLm1tICovLAorCQkJCTUzOEVDN0ZDMUY5NkFBNzMwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTQuY3BwICovLAorCQkJCURFNUY4NTNFMUZBMUFCQjMwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMTUtbW0ubW0gKi8sCisJCQkJNTM4RUM3RkYxRjk2QUE3NzAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxNS5jcHAgKi8sCisJCQkJREU1Rjg1NUUxRkExQUJEMDAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UxNi1tbS5tbSAqLywKKwkJCQk1MzhFQzdGNzFGOTZBQTYwMDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTE2LmNwcCAqLywKKwkJCQlERTVGODU0QTFGQTFBQkJFMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTE3LW1tLm1tICovLAorCQkJCTUzOEVDODAxMUY5NkFBN0Ew
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTcuY3BwICovLAorCQkJCURFNUY4NTUwMUZBMUFCQzMw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMTgtbW0ubW0gKi8sCisJCQkJNTM4RUM3RkIxRjk2QUE3
MjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxOC5jcHAgKi8sCisJCQkJREU1Rjg1NTMxRkExQUJD
NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UxOS1tbS5tbSAqLywKKwkJCQk1MzhFQzdGOTFGOTZB
QTZFMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTE5LmNwcCAqLywKKwkJCQlERTVGODU1MjFGQTFB
QkM1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIwLW1tLm1tICovLAorCQkJCTUzOEVDODAwMUY5
NkFBNzgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjAuY3BwICovLAorCQkJCURFNUY4NTVBMUZB
MUFCQ0QwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjEtbW0ubW0gKi8sCisJCQkJNTM4RUM4MzUx
Rjk5M0YwRDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyMS5jcHAgKi8sCisJCQkJREU1Rjg1NEQx
RkExQUJDMTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyMi1tbS5tbSAqLywKKwkJCQk1MzhFQzg0
QTFGOTkzRjE4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTIyLmNwcCAqLywKKwkJCQlERTVGODU0
MTFGQTFBQkI2MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIzLW1tLm1tICovLAorCQkJCTUzOEVD
ODJBMUY5OTNGMDcwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjMuY3BwICovLAorCQkJCURFNUY4
NTQ2MUZBMUFCQkIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjQtbW0ubW0gKi8sCisJCQkJNTM4
RUM4M0YxRjk5M0YxMjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNC5jcHAgKi8sCisJCQkJREU1
Rjg1NDcxRkExQUJCQjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyNS1tbS5tbSAqLywKKwkJCQk1
MzhFQzgzQTFGOTkzRjEwMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTI1LmNwcCAqLywKKwkJCQlE
RTVGODU1RDFGQTFBQkNGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI2LW1tLm1tICovLAorCQkJ
CTUzOEVDODRDMUY5OTNGMTkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjYuY3BwICovLAorCQkJ
CURFNUY4NTY5MUZBMUFCREEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMjctbW0ubW0gKi8sCisJ
CQkJNTM4RUM4NUYxRjk5M0YyMzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNy5jcHAgKi8sCisJ
CQkJREU1Rjg1M0YxRkExQUJCNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UyOC1tbS5tbSAqLywK
KwkJCQk1MzhFQzg0QjFGOTkzRjE4MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTI4LmNwcCAqLywK
KwkJCQlERTVGODU2ODFGQTFBQkQ5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI5LW1tLm1tICov
LAorCQkJCTUzOEVDODU1MUY5OTNGMUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMjkuY3BwICov
LAorCQkJCURFNUY4NTQyMUZBMUFCQjcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAtbW0ubW0g
Ki8sCisJCQkJNTM4RUM4NzYxRjk5M0YyRjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMC5jcHAg
Ki8sCisJCQkJREU1Rjg1NTExRkExQUJDNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMS1tbS5t
bSAqLywKKwkJCQk1MzhFQzg1QjFGOTkzRjIxMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTMxLmNw
cCAqLywKKwkJCQlERTVGODU2MDFGQTFBQkQyMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyLW1t
Lm1tICovLAorCQkJCTUzOEVDODJCMUY5OTNGMDgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMzIu
Y3BwICovLAorCQkJCURFNUY4NTVCMUZBMUFCQ0UwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzMt
bW0ubW0gKi8sCisJCQkJNTM4RUM4N0YxRjk5M0YzNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2Uz
My5jcHAgKi8sCisJCQkJREU1Rjg1NTcxRkExQUJDQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
NC1tbS5tbSAqLywKKwkJCQk1MzhFQzg1NzFGOTkzRjFGMDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTM0LmNwcCAqLywKKwkJCQlERTVGODU0MDFGQTFBQkI1MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM1LW1tLm1tICovLAorCQkJCTUzOEVDODdBMUY5OTNGMzEwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMzUuY3BwICovLAorCQkJCURFNUY4NTU1MUZBMUFCQzgwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzYtbW0ubW0gKi8sCisJCQkJNTM4RUM4NjAxRjk5M0YyMzAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UzNi5jcHAgKi8sCisJCQkJREU1Rjg1NDUxRkExQUJCQTAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzNy1tbS5tbSAqLywKKwkJCQk1MzhFQzgzMjFGOTkzRjBDMDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTM3LmNwcCAqLywKKwkJCQlERTVGODU1QzFGQTFBQkNFMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTM4LW1tLm1tICovLAorCQkJCTUzOEVDODdCMUY5OTNGMzIwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMzguY3BwICovLAorCQkJCURFNUY4NTU5MUZBMUFCQ0MwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzktbW0ubW0gKi8sCisJCQkJNTM4RUM4N0MxRjk5M0YzMjAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UzOS5jcHAgKi8sCisJCQkJREU1Rjg1NTYxRkExQUJDOTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0MC1tbS5tbSAqLywKKwkJCQk1MzhFQzg0OTFGOTkzRjE3MDA0RDIyQTggLyog
VW5pZmllZFNvdXJjZTQwLmNwcCAqLywKKwkJCQlERTVGODU2NjFGQTFBQkQ3MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQxLW1tLm1tICovLAorCQkJCTUzOEVDODRFMUY5OTNGMUEwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlNDEuY3BwICovLAorCQkJCURFNUY4NTRGMUZBMUFCQzMwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDItbW0ubW0gKi8sCisJCQkJNTM4RUM4M0IxRjk5M0YxMDAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U0Mi5jcHAgKi8sCisJCQkJREU1Rjg1NDgxRkExQUJCQzAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0My1tbS5tbSAqLywKKwkJCQk1MzhFQzg1MjFGOTkzRjFDMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTQzLmNwcCAqLywKKwkJCQlERTVGODU0MzFGQTFBQkI4MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQ0LW1tLm1tICovLAorCQkJCTUzOEVDODZBMUY5OTNGMjkwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNDQuY3BwICovLAorCQkJCURFNUY4NTU4MUZBMUFCQ0IwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDUtbW0ubW0gKi8sCisJCQkJNTM4RUM4M0MxRjk5M0YxMTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0NS5jcHAgKi8sCisJCQkJREU1Rjg1NDQxRkExQUJCOTAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Ni1tbS5tbSAqLywKKwkJCQk1MzhFQzg3NzFGOTkzRjMw
MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQ2LmNwcCAqLywKKwkJCQlERTVGODU2MjFGQTFBQkQ0
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3LW1tLm1tICovLAorCQkJCTUzOEVDODY4MUY5OTNG
MjgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNDcuY3BwICovLAorCQkJCURFNUY4NTY3MUZBMUFC
RDgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDgtbW0ubW0gKi8sCisJCQkJNTM4RUM4NDMxRjk5
M0YxNDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0OC5jcHAgKi8sCisJCQkJREU1Rjg1NEIxRkEx
QUJCRjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0OS1tbS5tbSAqLywKKwkJCQk1MzhFQzg3RDFG
OTkzRjMzMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTQ5LmNwcCAqLywKKwkJCQlERTVGODU0QzFG
QTFBQkMwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUwLW1tLm1tICovLAorCQkJCTUzOEVDODI3
MUY5OTNGMDYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTAuY3BwICovLAorCQkJCURFNUY4NjM2
MUZBMkFGMDQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTEtbW0ubW0gKi8sCisJCQkJNTM4RUM4
NDcxRjk5M0YxNjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1MS5jcHAgKi8sCisJCQkJREU1Rjg2
MzcxRkEyQUYwNTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1Mi1tbS5tbSAqLywKKwkJCQk1MzhF
Qzg4MDFGOTkzRjM0MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTUyLmNwcCAqLywKKwkJCQlERTVG
ODYzNTFGQTJBRjAzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUzLW1tLm1tICovLAorCQkJCTUz
OEVDODJDMUY5OTNGMDkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTMuY3BwICovLAorCQkJCURF
NUY4NjMzMUZBMkFGMDAwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTQtbW0ubW0gKi8sCisJCQkJ
NTM4RUM4NjkxRjk5M0YyODAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1NC5jcHAgKi8sCisJCQkJ
REU1Rjg2M0IxRkEyQUYwODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1NS1tbS5tbSAqLywKKwkJ
CQk1MzhFQzg2QzFGOTkzRjJBMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTU1LmNwcCAqLywKKwkJ
CQlERTVGODYzNDFGQTJBRjAxMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU2LW1tLm1tICovLAor
CQkJCTUzOEVDODg1MUY5OTNGM0EwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTYuY3BwICovLAor
CQkJCURFNUY4NjM4MUZBMkFGMDYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNTctbW0ubW0gKi8s
CisJCQkJNTM4RUM4NzgxRjk5M0YzMDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1Ny5jcHAgKi8s
CisJCQkJREU1Rjg2MzkxRkEyQUYwNzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U1OC1tbS5tbSAq
LywKKwkJCQk1MzhFQzgyRjFGOTkzRjBBMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTU4LmNwcCAq
LywKKwkJCQlERTVGODYzMjFGQTJBRUZGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU5LW1tLm1t
ICovLAorCQkJCTUzOEVDODZCMUY5OTNGMjkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNTkuY3Bw
ICovLAorCQkJCURFNUY4NjNBMUZBMkFGMDcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNjAtbW0u
bW0gKi8sCisJCQkJNTM4RUM4NzkxRjk5M0YzMTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2MC5j
cHAgKi8sCisJCQkJREU1Rjg2M0ExRkEyQUYwNzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U2MS1t
bS5tbSAqLywKKwkJCQk1MzhFQzg3RTFGOTkzRjMzMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTYx
LmNwcCAqLywKKwkJCQlDRDE3QTQ1OTIxMzc0MDE2MDA3OUVDN0IgLyogVW5pZmllZFNvdXJjZTYy
LW1tLm1tICovLAorCQkJCTUzOEVDODVBMUY5OTNGMjAwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjIuY3BwICovLAorCQkJCTUzOEVDODYxMUY5OTNGMjQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjMuY3BwICovLAorCQkJCTUzOEVDODQyMUY5OTNGMTQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjQuY3BwICovLAorCQkJCTUzOEVDODMwMUY5OTNGMEIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjUuY3BwICovLAorCQkJCTUzOEVDODRGMUY5OTNGMUEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjYuY3BwICovLAorCQkJCTUzOEVDODUwMUY5OTNGMUIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjcuY3BwICovLAorCQkJCTUzOEVDODUxMUY5OTNGMUMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjguY3BwICovLAorCQkJCTUzOEVDODM2MUY5OTNGMEUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NjkuY3BwICovLAorCQkJCTUzOEVDODYzMUY5OTNGMjUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzAuY3BwICovLAorCQkJCTUzOEVDODREMUY5OTNGMTkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzEuY3BwICovLAorCQkJCTUzOEVDODgxMUY5OTNGMzUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzIuY3BwICovLAorCQkJCTUzOEVDODNEMUY5OTNGMTEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzMuY3BwICovLAorCQkJCTUzOEVDODYyMUY5OTNGMjQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzQuY3BwICovLAorCQkJCTUzOEVDODVFMUY5OTNGMjIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzUuY3BwICovLAorCQkJCTUzOEVDODNFMUY5OTNGMTIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzYuY3BwICovLAorCQkJCTUzOEVDODY0MUY5OTNGMjYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzcuY3BwICovLAorCQkJCTUzOEVDODVEMUY5OTNGMjIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzguY3BwICovLAorCQkJCTUzOEVDODM3MUY5OTNGMEUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
NzkuY3BwICovLAorCQkJCTUzOEVDODQwMUY5OTNGMTMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODAuY3BwICovLAorCQkJCTUzOEVDODY1MUY5OTNGMjYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODEuY3BwICovLAorCQkJCTUzOEVDODgyMUY5OTNGMzYwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODIuY3BwICovLAorCQkJCTUzOEVDODI2MUY5OTNGMDUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODMuY3BwICovLAorCQkJCTUzOEVDODQ0MUY5OTNGMTUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODQuY3BwICovLAorCQkJCTUzOEVDODU2MUY5OTNGMUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODUuY3BwICovLAorCQkJCTUzOEVDODZEMUY5OTNGMkEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODYuY3BwICovLAorCQkJCTUzOEVDODUzMUY5OTNGMUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODcuY3BwICovLAorCQkJCTUzOEVDODJFMUY5OTNGMEEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODguY3BwICovLAorCQkJCTUzOEVDODMxMUY5OTNGMEIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
ODkuY3BwICovLAorCQkJCTUzOEVDODZFMUY5OTNGMkIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTAuY3BwICovLAorCQkJCTUzOEVDODU5MUY5OTNGMjAwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTEuY3BwICovLAorCQkJCTUzOEVDODZGMUY5OTNGMkIwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTIuY3BwICovLAorCQkJCTUzOEVDODY3MUY5OTNGMjcwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTMuY3BwICovLAorCQkJCTUzOEVDODQxMUY5OTNGMTMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTQuY3BwICovLAorCQkJCTUzOEVDODQ1MUY5OTNGMTUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTUuY3BwICovLAorCQkJCTUzOEVDODcwMUY5OTNGMkMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTYuY3BwICovLAorCQkJCTUzOEVDODMzMUY5OTNGMEMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTcuY3BwICovLAorCQkJCTUzOEVDODc0MUY5OTNGMkUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTguY3BwICovLAorCQkJCTUzOEVDODJEMUY5OTNGMDkwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTkuY3BwICovLAorCQkJCTUzOEVDODcxMUY5OTNGMkMwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTAwLmNwcCAqLywKKwkJCQk1MzhFQzgyODFGOTkzRjA2MDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTEwMS5jcHAgKi8sCisJCQkJNTM4RUM4NTgxRjk5M0YxRjAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxMDIuY3BwICovLAorCQkJCTUzOEVDODM0MUY5OTNGMEQwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTAzLmNwcCAqLywKKwkJCQk1MzhFQzg1NDFGOTkzRjFEMDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTEwNC5jcHAgKi8sCisJCQkJNTM4RUM4NDYxRjk5M0YxNjAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UxMDUuY3BwICovLAorCQkJCTUzOEVDODczMUY5OTNGMkQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlMTA2LmNwcCAqLywKKwkJCQk1MzhFQzg3NTFGOTkzRjJFMDA0RDIyQTggLyogVW5pZmll
ZFNvdXJjZTEwNy5jcHAgKi8sCisJCQkJNTM4RUM4MzgxRjk5M0YwRjAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UxMDguY3BwICovLAorCQkJCTUzOEVDODcyMUY5OTNGMkQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMTA5LmNwcCAqLywKKwkJCQk1MzhFQzg1QzFGOTkzRjIxMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTExMC5jcHAgKi8sCisJCQkJNTM4RUM4MjkxRjk5M0YwNzAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UxMTEuY3BwICovLAorCQkJCTUzOEVDODgzMUY5OTNGMzcwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTEyLmNwcCAqLywKKwkJCQk1MzhFQzg4NDFGOTkzRjM4MDA0RDIyQTggLyog
VW5pZmllZFNvdXJjZTExMy5jcHAgKi8sCisJCQkJNTM4RUM4MzkxRjk5M0YwRjAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UxMTQuY3BwICovLAorCQkJCTUzOEVDODQ4MUY5OTNGMTcwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlMTE1LmNwcCAqLywKKwkJCQk1MzhFQzg2NjFGOTkzRjI3MDA0RDIyQTgg
LyogVW5pZmllZFNvdXJjZTExNi5jcHAgKi8sCisJCQkJNTM4RUM5MDgxRjk5QjY0RjAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UxMTcuY3BwICovLAorCQkJCTUzOEVDOTBFMUY5OUI2NTQwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTE4LmNwcCAqLywKKwkJCQk1MzhFQzkwNTFGOTlCNjRCMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTExOS5jcHAgKi8sCisJCQkJNTM4RUM5MDkxRjk5QjY0RjAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxMjAuY3BwICovLAorCQkJCTUzOEVDOTBCMUY5OUI2NTEwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTIxLmNwcCAqLywKKwkJCQk1MzhFQzkwRjFGOTlCNjU1MDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTEyMi5jcHAgKi8sCisJCQkJNTM4RUM5MDYxRjk5QjY0RDAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjMuY3BwICovLAorCQkJCTUzOEVDOTBEMUY5OUI2NTMw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI0LmNwcCAqLywKKwkJCQk1MzhFQzkwMjFGOTlCNjRB
MDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyNS5jcHAgKi8sCisJCQkJNTM4RUM5MEExRjk5QjY1
MDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjYuY3BwICovLAorCQkJCTUzOEVDOTA3MUY5OUI2
NEUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI3LmNwcCAqLywKKwkJCQk1MzhFQzkwQzFGOTlC
NjUyMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEyOC5jcHAgKi8sCisJCQkJNTM4RUM5MTAxRjk5
QjY1NjAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMjkuY3BwICovLAorCQkJCTUzOEVDOTA0MUY5
OUI2NEEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTMwLmNwcCAqLywKKwkJCQlERUNBN0Q2RDFG
OUU2MUNGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzMS5jcHAgKi8sCisJCQkJREVDQTdEN0Ux
RjlFNjFFMzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzIuY3BwICovLAorCQkJCURFQ0E3RDgw
MUY5RTYxRTUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTMzLmNwcCAqLywKKwkJCQlERUNBN0Q4
RTFGOUU2MUY2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNC5jcHAgKi8sCisJCQkJREVDQTdE
ODExRjlFNjFFNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzUuY3BwICovLAorCQkJCURFQ0E3
RDhBMUY5RTYxRjEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM2LmNwcCAqLywKKwkJCQlERUNB
N0Q3QzFGOUU2MUUxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTEzNy5jcHAgKi8sCisJCQkJREVD
QTdEN0IxRjlFNjFFMDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxMzguY3BwICovLAorCQkJCURF
Q0E3RDc1MUY5RTYxRDkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM5LmNwcCAqLywKKwkJCQlE
RUNBN0Q4MjFGOUU2MUU4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0MC5jcHAgKi8sCisJCQkJ
REVDQTdEOEIxRjlFNjFGMzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDEuY3BwICovLAorCQkJ
CURFQ0E3RDg1MUY5RTYxRUIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQyLmNwcCAqLywKKwkJ
CQlERUNBN0Q4QzFGOUU2MUY0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0My5jcHAgKi8sCisJ
CQkJREVDQTdENkExRjlFNjFDQjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDQuY3BwICovLAor
CQkJCURFQ0E3RDgzMUY5RTYxRTkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ1LmNwcCAqLywK
KwkJCQlERUNBN0Q3MjFGOUU2MUQ1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0Ni5jcHAgKi8s
CisJCQkJREVDQTdEOEQxRjlFNjFGNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNDcuY3BwICov
LAorCQkJCURFQ0E3RDZCMUY5RTYxQ0MwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ4LmNwcCAq
LywKKwkJCQlERUNBN0Q3MzFGOUU2MUQ2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE0OS5jcHAg
Ki8sCisJCQkJREVDQTdEODQxRjlFNjFFQTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTAuY3Bw
ICovLAorCQkJCURFQ0E3RDkwMUY5RTYxRjgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTUxLmNw
cCAqLywKKwkJCQlERUNBN0Q3NzFGOUU2MURCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1Mi5j
cHAgKi8sCisJCQkJREVDQTdENkYxRjlFNjFEMjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxNTMu
Y3BwICovLAorCQkJCURFQ0E3RDg2MUY5RTYxRUMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU0
LmNwcCAqLywKKwkJCQlERUNBN0Q3OTFGOUU2MUREMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE1
NS5jcHAgKi8sCisJCQkJREVDQTdEN0YxRjlFNjFFNDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Ux
NTYuY3BwICovLAorCQkJCURFQ0E3RDc0MUY5RTYxRDcwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTU3LmNwcCAqLywKKwkJCQlERUNBN0Q3NjFGOUU2MURBMDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTE1OC5jcHAgKi8sCisJCQkJREVDQTdENkMxRjlFNjFDRTAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UxNTkuY3BwICovLAorCQkJCURFQ0E3RDg3MUY5RTYxRUUwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTYwLmNwcCAqLywKKwkJCQlERUNBN0Q4ODFGOUU2MUVGMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTE2MS5jcHAgKi8sCisJCQkJREVDQTdEODkxRjlFNjFGMDAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UxNjIuY3BwICovLAorCQkJCURFQ0E3RDcxMUY5RTYxRDQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTYzLmNwcCAqLywKKwkJCQlERUNBN0Q3QTFGOUU2MURFMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTE2NC5jcHAgKi8sCisJCQkJREVDQTdEN0QxRjlFNjFFMjAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UxNjUuY3BwICovLAorCQkJCURFQ0E3RDhGMUY5RTYxRjcwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTY2LmNwcCAqLywKKwkJCQlERUNBN0Q3MDFGOUU2MUQzMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTE2Ny5jcHAgKi8sCisJCQkJREVDQTdENzgxRjlFNjFEQzAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UxNjguY3BwICovLAorCQkJCURFQ0E3RDZFMUY5RTYxRDAwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTY5LmNwcCAqLywKKwkJCQlERUNBN0Q5MTFGOUU2MUY5MDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTE3MC5jcHAgKi8sCisJCQkJREVDQTdERjYxRjlFQjM0RTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UxNzEuY3BwICovLAorCQkJCURFQ0E3REYyMUY5RUIzNEEwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTcyLmNwcCAqLywKKwkJCQlERUNBN0RFODFGOUVCMzNFMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTE3My5jcHAgKi8sCisJCQkJREVDQTdERUMxRjlFQjM0MjAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UxNzQuY3BwICovLAorCQkJCURFQ0E3REU2MUY5RUIzM0IwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTc1LmNwcCAqLywKKwkJCQlERUNBN0RFRTFGOUVCMzQ1MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTE3Ni5jcHAgKi8sCisJCQkJREVDQTdERTUxRjlFQjMzQTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UxNzcuY3BwICovLAorCQkJCURFQ0E3REZBMUY5RUIzNTMwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTc4LmNwcCAqLywKKwkJCQlERUNBN0RERDFGOUVCMzJGMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTE3OS5jcHAgKi8sCisJCQkJREVDQTdERUYxRjlFQjM0NjAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODAuY3BwICovLAorCQkJCURFQ0E3REU5MUY5RUIzM0Yw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgxLmNwcCAqLywKKwkJCQlERUNBN0RENzFGOUVCMzI3
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4Mi5jcHAgKi8sCisJCQkJREVDQTdERDkxRjlFQjMy
OTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODMuY3BwICovLAorCQkJCURFQ0E3RERFMUY5RUIz
MzEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg0LmNwcCAqLywKKwkJCQlERUNBN0RFMzFGOUVC
MzM3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4NS5jcHAgKi8sCisJCQkJREVDQTdERjAxRjlF
QjM0NzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODYuY3BwICovLAorCQkJCURFQ0E3REY3MUY5
RUIzNEYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg3LmNwcCAqLywKKwkJCQlERUNBN0RENTFG
OUVCMzI0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE4OC5jcHAgKi8sCisJCQkJREVDQTdERUQx
RjlFQjM0NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxODkuY3BwICovLAorCQkJCURFQ0E3REY4
MUY5RUIzNTEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkwLmNwcCAqLywKKwkJCQlERUNBN0RF
MjFGOUVCMzM2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5MS5jcHAgKi8sCisJCQkJREVDQTdE
REMxRjlFQjMyRTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTIuY3BwICovLAorCQkJCURFQ0E3
REVBMUY5RUIzNDAwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkzLmNwcCAqLywKKwkJCQlERUNB
N0RGMTFGOUVCMzQ4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5NC5jcHAgKi8sCisJCQkJREVD
QTdERUIxRjlFQjM0MTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTUuY3BwICovLAorCQkJCURF
Q0E3REQ4MUY5RUIzMjgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk2LmNwcCAqLywKKwkJCQlE
RUNBN0RENDFGOUVCMzIzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTE5Ny5jcHAgKi8sCisJCQkJ
REVDQTdERTExRjlFQjMzNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UxOTguY3BwICovLAorCQkJ
CURFQ0E3REY5MUY5RUIzNTIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk5LmNwcCAqLywKKwkJ
CQlERUNBN0RGMzFGOUVCMzRCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwMC5jcHAgKi8sCisJ
CQkJREVDQTdERjQxRjlFQjM0QzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDEuY3BwICovLAor
CQkJCURFQ0E3RERGMUY5RUIzMzIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjAyLmNwcCAqLywK
KwkJCQlERUNBN0RFNzFGOUVCMzNDMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwMy5jcHAgKi8s
CisJCQkJREVDQTdERTQxRjlFQjMzOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDQuY3BwICov
LAorCQkJCURFQ0E3REY1MUY5RUIzNEQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA1LmNwcCAq
LywKKwkJCQlERUNBN0RENjFGOUVCMzI1MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwNi5jcHAg
Ki8sCisJCQkJREVDQTdERTAxRjlFQjMzMzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMDcuY3Bw
ICovLAorCQkJCURFQ0E3RERBMUY5RUIzMkIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA4LmNw
cCAqLywKKwkJCQlERUNBN0REMzFGOUVCMzIxMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIwOS5j
cHAgKi8sCisJCQkJREVDQTdEREIxRjlFQjMyQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMTAu
Y3BwICovLAorCQkJCURFQ0E3RTNFMUY5RUJENDEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjEx
LmNwcCAqLywKKwkJCQlERUNBN0UzODFGOUVCRDNCMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIx
Mi5jcHAgKi8sCisJCQkJREVDQTdFNEIxRjlFQkQ0RTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
MTMuY3BwICovLAorCQkJCURFQ0E3RTQwMUY5RUJENDMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjE0LmNwcCAqLywKKwkJCQlERUNBN0U0NDFGOUVCRDQ3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTIxNS5jcHAgKi8sCisJCQkJREVDQTdFMzkxRjlFQkQzQzAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyMTYuY3BwICovLAorCQkJCURFQ0E3RTQ1MUY5RUJENDgwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjE3LmNwcCAqLywKKwkJCQlERUNBN0U0MzFGOUVCRDQ2MDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTIxOC5jcHAgKi8sCisJCQkJREVDQTdFMzMxRjlFQkQzNjAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyMTkuY3BwICovLAorCQkJCURFQ0E3RTMwMUY5RUJEMzIwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjIwLmNwcCAqLywKKwkJCQlERUNBN0U0NjFGOUVCRDQ5MDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTIyMS5jcHAgKi8sCisJCQkJREVDQTdFNEExRjlFQkQ0RDAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyMjIuY3BwICovLAorCQkJCURFQ0E3RTMxMUY5RUJEMzQwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjIzLmNwcCAqLywKKwkJCQlERUNBN0U0OTFGOUVCRDRDMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTIyNC5jcHAgKi8sCisJCQkJREVDQTdFNEMxRjlFQkQ0RjAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyMjUuY3BwICovLAorCQkJCURFQ0E3RTM1MUY5RUJEMzgwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjI2LmNwcCAqLywKKwkJCQlERUNBN0U0RDFGOUVCRDUwMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTIyNy5jcHAgKi8sCisJCQkJREVDQTdFMzIxRjlFQkQzNTAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyMjguY3BwICovLAorCQkJCURFQ0E3RTM0MUY5RUJEMzcwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjI5LmNwcCAqLywKKwkJCQlERUNBN0UzRjFGOUVCRDQyMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTIzMC5jcHAgKi8sCisJCQkJREVDQTdFMzcxRjlFQkQzQTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyMzEuY3BwICovLAorCQkJCURFQ0E3RTNBMUY5RUJEM0QwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjMyLmNwcCAqLywKKwkJCQlERUNBN0UzNjFGOUVCRDM5MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTIzMy5jcHAgKi8sCisJCQkJREVDQTdFNDcxRjlFQkQ0QTAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyMzQuY3BwICovLAorCQkJCURFQ0E3RTQyMUY5RUJENDUwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjM1LmNwcCAqLywKKwkJCQlERUNBN0U0MTFGOUVCRDQ0MDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTIzNi5jcHAgKi8sCisJCQkJREVDQTdFNDgxRjlFQkQ0QjAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyMzcuY3BwICovLAorCQkJCURFQ0E3RTNCMUY5RUJEM0Uw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM4LmNwcCAqLywKKwkJCQlERUNBN0UzQzFGOUVCRDNG
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTIzOS5jcHAgKi8sCisJCQkJREVDQTdFM0QxRjlFQkQ0
MDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDAuY3BwICovLAorCQkJCURFQ0E3RkU3MUY5RkU5
QUQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQxLmNwcCAqLywKKwkJCQlERUNBN0ZEMDFGOUZF
OTk4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0Mi5jcHAgKi8sCisJCQkJREVDQTdGRUIxRjlG
RTlCMTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDMuY3BwICovLAorCQkJCURFQ0E3RkVDMUY5
RkU5QjIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ0LmNwcCAqLywKKwkJCQlERUNBN0ZFQTFG
OUZFOUIwMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0NS5jcHAgKi8sCisJCQkJREVDQTdGRTIx
RjlGRTlBOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDYuY3BwICovLAorCQkJCURFQ0E3RkMz
MUY5RkU5OEIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ3LmNwcCAqLywKKwkJCQlERUNBN0ZF
NTFGOUZFOUFDMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI0OC5jcHAgKi8sCisJCQkJREVDQTdG
RDUxRjlGRTk5QzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNDkuY3BwICovLAorCQkJCURFQ0E3
RkMwMUY5RkU5ODgwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUwLmNwcCAqLywKKwkJCQlERUNB
N0ZEQjFGOUZFOUEzMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1MS5jcHAgKi8sCisJCQkJREVD
QTdGRjExRjlGRTlCNjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTIuY3BwICovLAorCQkJCURF
Q0E3RkJGMUY5RkU5ODcwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUzLmNwcCAqLywKKwkJCQlE
RUNBN0ZERjFGOUZFOUE2MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1NC5jcHAgKi8sCisJCQkJ
REVDQTdGRjQxRjlGRTlCOTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTUuY3BwICovLAorCQkJ
CURFQ0E3RkY1MUY5RkU5QkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU2LmNwcCAqLywKKwkJ
CQlERUNBN0ZDNzFGOUZFOThGMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI1Ny5jcHAgKi8sCisJ
CQkJREVDQTdGQzgxRjlGRTk5MDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNTguY3BwICovLAor
CQkJCURFQ0E3RkUzMUY5RkU5QUEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU5LmNwcCAqLywK
KwkJCQlERUNBN0ZEMTFGOUZFOTk4MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2MC5jcHAgKi8s
CisJCQkJREVDQTdGQ0IxRjlGRTk5MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjEuY3BwICov
LAorCQkJCURFQ0E3RkJFMUY5RkU5ODYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYyLmNwcCAq
LywKKwkJCQlERUNBN0ZFRTFGOUZFOUI0MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2My5jcHAg
Ki8sCisJCQkJREVDQTdGRDcxRjlGRTk5RjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjQuY3Bw
ICovLAorCQkJCURFQ0E3RkRDMUY5RkU5QTMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY1LmNw
cCAqLywKKwkJCQlERUNBN0ZEODFGOUZFOUEwMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2Ni5j
cHAgKi8sCisJCQkJREVDQTdGQ0MxRjlGRTk5NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyNjcu
Y3BwICovLAorCQkJCURFQ0E3RkQyMUY5RkU5OTkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY4
LmNwcCAqLywKKwkJCQlERUNBN0ZDNTFGOUZFOThEMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI2
OS5jcHAgKi8sCisJCQkJREVDQTdGREUxRjlGRTlBNTAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2Uy
NzAuY3BwICovLAorCQkJCURFQ0E3RkJBMUY5RkU5ODIwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjcxLmNwcCAqLywKKwkJCQlERUNBN0ZDRjFGOUZFOTk3MDBFM0I2NjEgLyogVW5pZmllZFNvdXJj
ZTI3Mi5jcHAgKi8sCisJCQkJREVDQTdGQkMxRjlGRTk4NDAwRTNCNjYxIC8qIFVuaWZpZWRTb3Vy
Y2UyNzMuY3BwICovLAorCQkJCURFQ0E3RkMxMUY5RkU5ODkwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjc0LmNwcCAqLywKKwkJCQlERUNBN0ZFODFGOUZFOUFFMDBFM0I2NjEgLyogVW5pZmllZFNv
dXJjZTI3NS5jcHAgKi8sCisJCQkJREVDQTdGRDkxRjlGRTlBMTAwRTNCNjYxIC8qIFVuaWZpZWRT
b3VyY2UyNzYuY3BwICovLAorCQkJCURFQ0E3RkUwMUY5RkU5QTcwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjc3LmNwcCAqLywKKwkJCQlERUNBN0ZENDFGOUZFOTlCMDBFM0I2NjEgLyogVW5pZmll
ZFNvdXJjZTI3OC5jcHAgKi8sCisJCQkJREVDQTdGQ0ExRjlGRTk5MjAwRTNCNjYxIC8qIFVuaWZp
ZWRTb3VyY2UyNzkuY3BwICovLAorCQkJCURFQ0E3RkM0MUY5RkU5OEMwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjgwLmNwcCAqLywKKwkJCQlERUNBN0ZDMjFGOUZFOThBMDBFM0I2NjEgLyogVW5p
ZmllZFNvdXJjZTI4MS5jcHAgKi8sCisJCQkJREVDQTdGREQxRjlGRTlBNDAwRTNCNjYxIC8qIFVu
aWZpZWRTb3VyY2UyODIuY3BwICovLAorCQkJCURFQ0E3RkU5MUY5RkU5QUYwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjgzLmNwcCAqLywKKwkJCQlERUNBN0ZENjFGOUZFOTlFMDBFM0I2NjEgLyog
VW5pZmllZFNvdXJjZTI4NC5jcHAgKi8sCisJCQkJREVDQTdGRjAxRjlGRTlCNjAwRTNCNjYxIC8q
IFVuaWZpZWRTb3VyY2UyODUuY3BwICovLAorCQkJCURFQ0E3RkVEMUY5RkU5QjMwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjg2LmNwcCAqLywKKwkJCQlERUNBN0ZFNjFGOUZFOUFDMDBFM0I2NjEg
LyogVW5pZmllZFNvdXJjZTI4Ny5jcHAgKi8sCisJCQkJREVDQTdGRDMxRjlGRTk5QTAwRTNCNjYx
IC8qIFVuaWZpZWRTb3VyY2UyODguY3BwICovLAorCQkJCURFQ0E3RkYzMUY5RkU5QjgwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjg5LmNwcCAqLywKKwkJCQlERUNBN0ZCRDFGOUZFOTg1MDBFM0I2
NjEgLyogVW5pZmllZFNvdXJjZTI5MC5jcHAgKi8sCisJCQkJREVDQTdGQ0UxRjlGRTk5NjAwRTNC
NjYxIC8qIFVuaWZpZWRTb3VyY2UyOTEuY3BwICovLAorCQkJCURFQ0E3RkUxMUY5RkU5QTgwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjkyLmNwcCAqLywKKwkJCQlERUNBN0ZDOTFGOUZFOTkxMDBF
M0I2NjEgLyogVW5pZmllZFNvdXJjZTI5My5jcHAgKi8sCisJCQkJREVDQTdGRUYxRjlGRTlCNTAw
RTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTQuY3BwICovLAorCQkJCURFQ0E3RkM2MUY5RkU5OEUw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk1LmNwcCAqLywKKwkJCQlERUNBN0ZGMjFGOUZFOUI3
MDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5Ni5jcHAgKi8sCisJCQkJREVDQTdGRTQxRjlGRTlB
QjAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UyOTcuY3BwICovLAorCQkJCURFQ0E3RkNEMUY5RkU5
OTUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk4LmNwcCAqLywKKwkJCQlERUNBN0ZEQTFGOUZF
OUEyMDBFM0I2NjEgLyogVW5pZmllZFNvdXJjZTI5OS5jcHAgKi8sCisJCQkJREVDQTdGQkIxRjlG
RTk4MzAwRTNCNjYxIC8qIFVuaWZpZWRTb3VyY2UzMDAuY3BwICovLAorCQkJCURFNUY4M0IyMUZB
MTg2NzYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAxLmNwcCAqLywKKwkJCQlERTVGODNFQjFG
QTE4NkFEMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwMi5jcHAgKi8sCisJCQkJREU1RjgzRTkx
RkExODZBQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDMuY3BwICovLAorCQkJCURFNUY4M0Q1
MUZBMTg2OTQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA0LmNwcCAqLywKKwkJCQlERTVGODNE
NjFGQTE4Njk1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwNS5jcHAgKi8sCisJCQkJREU1Rjgz
RUUxRkExODZCMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDYuY3BwICovLAorCQkJCURFNUY4
M0Q0MUZBMTg2OTMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA3LmNwcCAqLywKKwkJCQlERTVG
ODNGNzFGQTE4NkI5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwOC5jcHAgKi8sCisJCQkJREU1
RjgzREYxRkExODY5RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMDkuY3BwICovLAorCQkJCURF
NUY4M0M2MUZBMTg2ODcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEwLmNwcCAqLywKKwkJCQlE
RTVGODNGMzFGQTE4NkI1MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxMS5jcHAgKi8sCisJCQkJ
REU1RjgzRjgxRkExODZCQTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTIuY3BwICovLAorCQkJ
CURFNUY4M0QzMUZBMTg2OTIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEzLmNwcCAqLywKKwkJ
CQlERTVGODNFRjFGQTE4NkIxMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxNC5jcHAgKi8sCisJ
CQkJREU1RjgzRDcxRkExODY5NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTUuY3BwICovLAor
CQkJCURFNUY4M0I5MUZBMTg2N0QwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE2LmNwcCAqLywK
KwkJCQlERTVGODQwNTFGQTE4NkM3MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMxNy5jcHAgKi8s
CisJCQkJREU1Rjg0MEYxRkExODZEMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMTguY3BwICov
LAorCQkJCURFNUY4M0U1MUZBMTg2QTYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE5LmNwcCAq
LywKKwkJCQlERTVGODNGNjFGQTE4NkI4MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyMC5jcHAg
Ki8sCisJCQkJREU1RjgzQzcxRkExODY4ODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjEuY3Bw
ICovLAorCQkJCURFNUY4M0JGMUZBMTg2ODEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzIyLmNw
cCAqLywKKwkJCQlERTVGODNGMTFGQTE4NkIzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyMy5j
cHAgKi8sCisJCQkJREU1RjgzQ0ExRkExODY4QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMjQu
Y3BwICovLAorCQkJCURFNUY4M0RFMUZBMTg2OUQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI1
LmNwcCAqLywKKwkJCQlERTVGODQwQjFGQTE4NkNDMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMy
Ni5jcHAgKi8sCisJCQkJREU1Rjg0MTIxRkExODZEMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
MjcuY3BwICovLAorCQkJCURFNUY4M0ZEMUZBMTg2QkYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzI4LmNwcCAqLywKKwkJCQlERTVGODNDQjFGQTE4NjhCMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTMyOS5jcHAgKi8sCisJCQkJREU1RjgzRkExRkExODZCQzAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzMzAuY3BwICovLAorCQkJCURFNUY4M0Q4MUZBMTg2OTcwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzMxLmNwcCAqLywKKwkJCQlERTVGODNDMTFGQTE4NjgzMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTMzMi5jcHAgKi8sCisJCQkJREU1RjgzRDkxRkExODY5ODAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzMzMuY3BwICovLAorCQkJCURFNUY4M0JDMUZBMTg2N0YwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzM0LmNwcCAqLywKKwkJCQlERTVGODNCODFGQTE4NjdDMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTMzNS5jcHAgKi8sCisJCQkJREU1RjgzREExRkExODY5OTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzMzYuY3BwICovLAorCQkJCURFNUY4M0UwMUZBMTg2OUYwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzM3LmNwcCAqLywKKwkJCQlERTVGODNEQjFGQTE4NjlBMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTMzOC5jcHAgKi8sCisJCQkJREU1RjgzRUMxRkExODZBRTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzMzkuY3BwICovLAorCQkJCURFNUY4NDEwMUZBMTg2RDEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzQwLmNwcCAqLywKKwkJCQlERTVGODQwNjFGQTE4NkM4MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM0MS5jcHAgKi8sCisJCQkJREU1RjgzQ0YxRkExODY4RjAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzNDIuY3BwICovLAorCQkJCURFNUY4NDAxMUZBMTg2QzMwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzQzLmNwcCAqLywKKwkJCQlERTVGODNGMDFGQTE4NkIyMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTM0NC5jcHAgKi8sCisJCQkJREU1RjgzRjQxRkExODZCNjAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzNDUuY3BwICovLAorCQkJCURFNUY4NDE0MUZBMTg2RDUwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzQ2LmNwcCAqLywKKwkJCQlERTVGODNGRjFGQTE4NkMxMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTM0Ny5jcHAgKi8sCisJCQkJREU1Rjg0MDAxRkExODZDMjAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2UzNDguY3BwICovLAorCQkJCURFNUY4NDBEMUZBMTg2Q0UwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzQ5LmNwcCAqLywKKwkJCQlERTVGODNDODFGQTE4Njg5MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM1MC5jcHAgKi8sCisJCQkJREU1Rjg0MDcxRkExODZDODAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTEuY3BwICovLAorCQkJCURFNUY4M0MzMUZBMTg2ODUw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzUyLmNwcCAqLywKKwkJCQlERTVGODNFNzFGQTE4NkE4
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1My5jcHAgKi8sCisJCQkJREU1RjgzQzUxRkExODY4
NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTQuY3BwICovLAorCQkJCURFNUY4M0IzMUZBMTg2
NzcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU1LmNwcCAqLywKKwkJCQlERTVGODNGRTFGQTE4
NkMwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1Ni5jcHAgKi8sCisJCQkJREU1RjgzQzkxRkEx
ODY4QTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNTcuY3BwICovLAorCQkJCURFNUY4M0Y1MUZB
MTg2QjcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU4LmNwcCAqLywKKwkJCQlERTVGODNEQzFG
QTE4NjlCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1OS5jcHAgKi8sCisJCQkJREU1RjgzRUEx
RkExODZBQjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjAuY3BwICovLAorCQkJCURFNUY4M0JF
MUZBMTg2ODEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYxLmNwcCAqLywKKwkJCQlERTVGODNC
NTFGQTE4Njc5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2Mi5jcHAgKi8sCisJCQkJREU1Rjgz
Q0MxRkExODY4QzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjMuY3BwICovLAorCQkJCURFNUY4
NDA4MUZBMTg2QzkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY0LmNwcCAqLywKKwkJCQlERTVG
ODNERDFGQTE4NjlDMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2NS5jcHAgKi8sCisJCQkJREU1
RjgzQzQxRkExODY4NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjYuY3BwICovLAorCQkJCURF
NUY4M0U4MUZBMTg2QTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY3LmNwcCAqLywKKwkJCQlE
RTVGODNGQzFGQTE4NkJFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM2OC5jcHAgKi8sCisJCQkJ
REU1RjgzRTExRkExODZBMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNjkuY3BwICovLAorCQkJ
CURFNUY4M0UyMUZBMTg2QTIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcwLmNwcCAqLywKKwkJ
CQlERTVGODQwOTFGQTE4NkNBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3MS5jcHAgKi8sCisJ
CQkJREU1Rjg0MTExRkExODZEMjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzIuY3BwICovLAor
CQkJCURFNUY4NDBBMUZBMTg2Q0IwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzczLmNwcCAqLywK
KwkJCQlERTVGODNEMTFGQTE4NjkwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3NC5jcHAgKi8s
CisJCQkJREU1RjgzQkIxRkExODY3RTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzUuY3BwICov
LAorCQkJCURFNUY4M0JBMUZBMTg2N0QwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc2LmNwcCAq
LywKKwkJCQlERTVGODNCNjFGQTE4NjdBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3Ny5jcHAg
Ki8sCisJCQkJREU1RjgzQjQxRkExODY3ODAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzNzguY3Bw
ICovLAorCQkJCURFNUY4NDE1MUZBMTg2RDYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc5LmNw
cCAqLywKKwkJCQlERTVGODNCRDFGQTE4NjgwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4MC5j
cHAgKi8sCisJCQkJREU1RjgzQ0QxRkExODY4RDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzODEu
Y3BwICovLAorCQkJCURFNUY4NDAyMUZBMTg2QzQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzgy
LmNwcCAqLywKKwkJCQlERTVGODNEMjFGQTE4NjkxMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM4
My5jcHAgKi8sCisJCQkJREU1RjgzRTMxRkExODZBMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2Uz
ODQuY3BwICovLAorCQkJCURFNUY4M0QwMUZBMTg2OEYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
Mzg1LmNwcCAqLywKKwkJCQlERTVGODNDRTFGQTE4NjhFMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTM4Ni5jcHAgKi8sCisJCQkJREU1RjgzRTQxRkExODZBNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2UzODcuY3BwICovLAorCQkJCURFNUY4NDAzMUZBMTg2QzUwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzg4LmNwcCAqLywKKwkJCQlERTVGODNFRDFGQTE4NkFGMDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM4OS5jcHAgKi8sCisJCQkJREU1Rjg0MTMxRkExODZENDAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2UzOTAuY3BwICovLAorCQkJCURFNUY4M0MyMUZBMTg2ODQwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzkxLmNwcCAqLywKKwkJCQlERTVGODNDMDFGQTE4NjgyMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTM5Mi5jcHAgKi8sCisJCQkJREU1Rjg0MDQxRkExODZDNjAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2UzOTMuY3BwICovLAorCQkJCURFNUY4M0Y5MUZBMTg2QkIwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzk0LmNwcCAqLywKKwkJCQlERTVGODNGMjFGQTE4NkI0MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTM5NS5jcHAgKi8sCisJCQkJREU1Rjg0MEUxRkExODZDRjAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2UzOTYuY3BwICovLAorCQkJCURFNUY4NDBDMUZBMTg2Q0QwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzk3LmNwcCAqLywKKwkJCQlERTVGODNCNzFGQTE4NjdCMDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM5OC5jcHAgKi8sCisJCQkJREU1RjgzRTYxRkExODZBNzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2UzOTkuY3BwICovLAorCQkJCURFNUY4M0ZCMUZBMTg2QkQwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDAwLmNwcCAqLywKKwkJCQlERTVGODREMDFGQTFBNEFDMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQwMS5jcHAgKi8sCisJCQkJREU1Rjg0QTMxRkExQTQ4MjAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0MDIuY3BwICovLAorCQkJCURFNUY4NEJGMUZBMUE0OUMwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDAzLmNwcCAqLywKKwkJCQlERTVGODRCNDFGQTFBNDkxMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQwNC5jcHAgKi8sCisJCQkJREU1Rjg0QkUxRkExQTQ5QjAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0MDUuY3BwICovLAorCQkJCURFNUY4NEJBMUZBMUE0OTcwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDA2LmNwcCAqLywKKwkJCQlERTVGODRBMTFGQTFBNDgwMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQwNy5jcHAgKi8sCisJCQkJREU1Rjg0QTAxRkExQTQ3RjAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MDguY3BwICovLAorCQkJCURFNUY4NDlGMUZBMUE0N0Uw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA5LmNwcCAqLywKKwkJCQlERTVGODRDOTFGQTFBNEE1
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxMC5jcHAgKi8sCisJCQkJREU1Rjg0Q0ExRkExQTRB
NjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTEuY3BwICovLAorCQkJCURFNUY4NEMxMUZBMUE0
OUUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDEyLmNwcCAqLywKKwkJCQlERTVGODRCNzFGQTFB
NDk0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxMy5jcHAgKi8sCisJCQkJREU1Rjg0QjgxRkEx
QTQ5NTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTQuY3BwICovLAorCQkJCURFNUY4NEIxMUZB
MUE0OEYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE1LmNwcCAqLywKKwkJCQlERTVGODRCOTFG
QTFBNDk2MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxNi5jcHAgKi8sCisJCQkJREU1Rjg0QjUx
RkExQTQ5MzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MTcuY3BwICovLAorCQkJCURFNUY4NEE3
MUZBMUE0ODUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE4LmNwcCAqLywKKwkJCQlERTVGODRC
MjFGQTFBNDkwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQxOS5jcHAgKi8sCisJCQkJREU1Rjg0
QUIxRkExQTQ4OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjAuY3BwICovLAorCQkJCURFNUY4
NENCMUZBMUE0QTcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIxLmNwcCAqLywKKwkJCQlERTVG
ODRDRTFGQTFBNEFBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyMi5jcHAgKi8sCisJCQkJREU1
Rjg0QzMxRkExQTQ5RjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjMuY3BwICovLAorCQkJCURF
NUY4NEFDMUZBMUE0OEEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI0LmNwcCAqLywKKwkJCQlE
RTVGODRDRDFGQTFBNEE5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyNS5jcHAgKi8sCisJCQkJ
REU1Rjg0QkMxRkExQTQ5OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjYuY3BwICovLAorCQkJ
CURFNUY4NEE1MUZBMUE0ODMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI3LmNwcCAqLywKKwkJ
CQlERTVGODRDMjFGQTFBNDlGMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyOC5jcHAgKi8sCisJ
CQkJREU1Rjg0QzcxRkExQTRBMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MjkuY3BwICovLAor
CQkJCURFNUY4NEJCMUZBMUE0OTgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMwLmNwcCAqLywK
KwkJCQlERTVGODRBRDFGQTFBNDhCMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzMS5jcHAgKi8s
CisJCQkJREU1Rjg0QzgxRkExQTRBNDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzIuY3BwICov
LAorCQkJCURFNUY4NEE5MUZBMUE0ODcwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMzLmNwcCAq
LywKKwkJCQlERTVGODRBMjFGQTFBNDgxMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzNC5jcHAg
Ki8sCisJCQkJREU1Rjg0QzQxRkExQTRBMDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0MzUuY3Bw
ICovLAorCQkJCURFNUY4NENDMUZBMUE0QTgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM2LmNw
cCAqLywKKwkJCQlERTVGODRDNTFGQTFBNEExMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQzNy5j
cHAgKi8sCisJCQkJREU1Rjg0QzYxRkExQTRBMjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0Mzgu
Y3BwICovLAorCQkJCURFNUY4NENGMUZBMUE0QUIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM5
LmNwcCAqLywKKwkJCQlERTVGODRCRDFGQTFBNDlBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0
MC5jcHAgKi8sCisJCQkJREU1Rjg0QjYxRkExQTQ5MzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0
NDEuY3BwICovLAorCQkJCURFNUY4NEMwMUZBMUE0OUQwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDQyLmNwcCAqLywKKwkJCQlERTVGODRBNDFGQTFBNDgzMDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTQ0My5jcHAgKi8sCisJCQkJREU1Rjg0QUYxRkExQTQ4RDAwNkRCNjNBIC8qIFVuaWZpZWRTb3Vy
Y2U0NDQuY3BwICovLAorCQkJCURFNUY4NEFFMUZBMUE0OEMwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDQ1LmNwcCAqLywKKwkJCQlERTVGODRBODFGQTFBNDg2MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTQ0Ni5jcHAgKi8sCisJCQkJREU1Rjg0QUExRkExQTQ4ODAwNkRCNjNBIC8qIFVuaWZpZWRT
b3VyY2U0NDcuY3BwICovLAorCQkJCURFNUY4NEE2MUZBMUE0ODQwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDQ4LmNwcCAqLywKKwkJCQlERTVGODRCMDFGQTFBNDhFMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTQ0OS5jcHAgKi8sCisJCQkJREU1Rjg0QjMxRkExQTQ5MTAwNkRCNjNBIC8qIFVuaWZp
ZWRTb3VyY2U0NTAuY3BwICovLAorCQkJCURFNUY4NUJCMUZBMjM4MzkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDUxLmNwcCAqLywKKwkJCQlERTVGODVDMjFGQTIzODNGMDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTQ1Mi5jcHAgKi8sCisJCQkJREU1Rjg1QkQxRkEyMzgzQTAwNkRCNjNBIC8qIFVu
aWZpZWRTb3VyY2U0NTMuY3BwICovLAorCQkJCURFNUY4NUM4MUZBMjM4NDYwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDU0LmNwcCAqLywKKwkJCQlERTVGODVDNzFGQTIzODQ1MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTQ1NS5jcHAgKi8sCisJCQkJREU1Rjg1QzUxRkEyMzg0MzAwNkRCNjNBIC8q
IFVuaWZpZWRTb3VyY2U0NTYuY3BwICovLAorCQkJCURFNUY4NUJFMUZBMjM4M0IwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDU3LmNwcCAqLywKKwkJCQlERTVGODVCODFGQTIzODM2MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ1OC5jcHAgKi8sCisJCQkJREU1Rjg1RDAxRkEyMzg1MjAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2U0NTkuY3BwICovLAorCQkJCURFNUY4NUMwMUZBMjM4M0QwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDYwLmNwcCAqLywKKwkJCQlERTVGODVDQzFGQTIzODRDMDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQ2MS5jcHAgKi8sCisJCQkJREU1Rjg1QkMxRkEyMzgzQTAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U0NjIuY3BwICovLAorCQkJCURFNUY4NUMzMUZBMjM4NDAwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDYzLmNwcCAqLywKKwkJCQlERTVGODVCOTFGQTIzODM3MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2NC5jcHAgKi8sCisJCQkJREU1Rjg1QkYxRkEyMzgzQzAw
NkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NjUuY3BwICovLAorCQkJCURFNUY4NUJBMUZBMjM4Mzgw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY2LmNwcCAqLywKKwkJCQlERTVGODVDQjFGQTIzODRC
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2Ny5jcHAgKi8sCisJCQkJREU1Rjg1QjYxRkEyMzgz
NTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NjguY3BwICovLAorCQkJCURFNUY4NUI3MUZBMjM4
MzUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY5LmNwcCAqLywKKwkJCQlERTVGODVDMTFGQTIz
ODNFMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3MC5jcHAgKi8sCisJCQkJREU1Rjg1QzQxRkEy
Mzg0MjAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzEuY3BwICovLAorCQkJCURFNUY4NUM5MUZB
MjM4NDgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDcyLmNwcCAqLywKKwkJCQlERTVGODVDQTFG
QTIzODRBMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3My5jcHAgKi8sCisJCQkJREU1Rjg1Q0Qx
RkEyMzg0RDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzQuY3BwICovLAorCQkJCURFNUY4NUNF
MUZBMjM4NEUwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc1LmNwcCAqLywKKwkJCQlERTVGODVE
MTFGQTIzODU0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3Ni5jcHAgKi8sCisJCQkJREU1Rjg1
QzYxRkEyMzg0NDAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0NzcuY3BwICovLAorCQkJCURFNUY4
NUQyMUZBMjM4NTYwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc4LmNwcCAqLywKKwkJCQlERTVG
ODVDRjFGQTIzODUwMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3OS5jcHAgKi8sCisJCQkJREU1
Rjg1RDMxRkEyMzg1OTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U0ODAuY3BwICovLAorCQkJCURF
NUY4NEFEMUZBMUE0OEIwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDgxLmNwcCAqLywKKwkJCQlE
RTVGODRDODFGQTFBNEE0MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4Mi5jcHAgKi8sCisJCQkJ
REU1Rjg0QTkxRkExQTQ4NzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODMuY3BwICovLAorCQkJ
CURFNUY4NEEyMUZBMUE0ODEwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDg0LmNwcCAqLywKKwkJ
CQlERTVGODRDNDFGQTFBNEEwMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4NS5jcHAgKi8sCisJ
CQkJREU1Rjg0Q0MxRkExQTRBODAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODYuY3BwICovLAor
CQkJCURFNUY4NEM1MUZBMUE0QTEwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDg3LmNwcCAqLywK
KwkJCQlERTVGODRDNjFGQTFBNEEyMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ4OC5jcHAgKi8s
CisJCQkJREU1Rjg0Q0YxRkExQTRBQjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0ODkuY3BwICov
LAorCQkJCURFNUY4NEJEMUZBMUE0OUEwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDkwLmNwcCAq
LywKKwkJCQlERTVGODRCNjFGQTFBNDkzMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5MS5jcHAg
Ki8sCisJCQkJREU1Rjg0QzAxRkExQTQ5RDAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0OTIuY3Bw
ICovLAorCQkJCURFNUY4NEE0MUZBMUE0ODMwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDkzLmNw
cCAqLywKKwkJCQlERTVGODRBRjFGQTFBNDhEMDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5NC5j
cHAgKi8sCisJCQkJREU1Rjg0QUUxRkExQTQ4QzAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0OTUu
Y3BwICovLAorCQkJCURFNUY4NEE4MUZBMUE0ODYwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNDk2
LmNwcCAqLywKKwkJCQlERTVGODRBQTFGQTFBNDg4MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTQ5
Ny5jcHAgKi8sCisJCQkJREU1Rjg0QTYxRkExQTQ4NDAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U0
OTguY3BwICovLAorCQkJCURFNUY4NEIwMUZBMUE0OEUwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNl
NDk5LmNwcCAqLywKKwkJCQlERTVGODRCMzFGQTFBNDkxMDA2REI2M0IgLyogVW5pZmllZFNvdXJj
ZTUwMC5jcHAgKi8sCisJCQkJREU1Rjg1QkIxRkEyMzgzOTAwNkRCNjNCIC8qIFVuaWZpZWRTb3Vy
Y2U1MDEuY3BwICovLAorCQkJCURFNUY4NUMyMUZBMjM4M0YwMDZEQjYzQiAvKiBVbmlmaWVkU291
cmNlNTAyLmNwcCAqLywKKwkJCQlERTVGODVCRDFGQTIzODNBMDA2REI2M0IgLyogVW5pZmllZFNv
dXJjZTUwMy5jcHAgKi8sCisJCQkJREU1Rjg1QzgxRkEyMzg0NjAwNkRCNjNCIC8qIFVuaWZpZWRT
b3VyY2U1MDQuY3BwICovLAorCQkJCURFNUY4NUM3MUZBMjM4NDUwMDZEQjYzQiAvKiBVbmlmaWVk
U291cmNlNTA1LmNwcCAqLywKKwkJCQlERTVGODVDNTFGQTIzODQzMDA2REI2M0IgLyogVW5pZmll
ZFNvdXJjZTUwNi5jcHAgKi8sCisJCQkJREU1Rjg1QkUxRkEyMzgzQjAwNkRCNjNCIC8qIFVuaWZp
ZWRTb3VyY2U1MDcuY3BwICovLAorCQkJCURFNUY4NUI4MUZBMjM4MzYwMDZEQjYzQiAvKiBVbmlm
aWVkU291cmNlNTA4LmNwcCAqLywKKwkJCQlERTVGODVEMDFGQTIzODUyMDA2REI2M0IgLyogVW5p
ZmllZFNvdXJjZTUwOS5jcHAgKi8sCisJCQkJREU1Rjg1QzAxRkEyMzgzRDAwNkRCNjNCIC8qIFVu
aWZpZWRTb3VyY2U1MTAuY3BwICovLAorCQkJCURFNUY4NUNDMUZBMjM4NEMwMDZEQjYzQiAvKiBV
bmlmaWVkU291cmNlNTExLmNwcCAqLywKKwkJCQlERTVGODVCQzFGQTIzODNBMDA2REI2M0IgLyog
VW5pZmllZFNvdXJjZTUxMi5jcHAgKi8sCisJCQkJREU1Rjg1QzMxRkEyMzg0MDAwNkRCNjNCIC8q
IFVuaWZpZWRTb3VyY2U1MTMuY3BwICovLAorCQkJCURFNUY4NUI5MUZBMjM4MzcwMDZEQjYzQiAv
KiBVbmlmaWVkU291cmNlNTE0LmNwcCAqLywKKwkJCQlERTVGODVCRjFGQTIzODNDMDA2REI2M0Ig
LyogVW5pZmllZFNvdXJjZTUxNS5jcHAgKi8sCisJCQkJREU1Rjg1QkExRkEyMzgzODAwNkRCNjNC
IC8qIFVuaWZpZWRTb3VyY2U1MTYuY3BwICovLAorCQkJCURFNUY4NUNCMUZBMjM4NEIwMDZEQjYz
QiAvKiBVbmlmaWVkU291cmNlNTE3LmNwcCAqLywKKwkJCQlERTVGODVCNjFGQTIzODM1MDA2REI2
M0IgLyogVW5pZmllZFNvdXJjZTUxOC5jcHAgKi8sCisJCQkJREU1Rjg1QjcxRkEyMzgzNTAwNkRC
NjNCIC8qIFVuaWZpZWRTb3VyY2U1MTkuY3BwICovLAorCQkJCURFNUY4NUMxMUZBMjM4M0UwMDZE
QjYzQiAvKiBVbmlmaWVkU291cmNlNTIwLmNwcCAqLywKKwkJCQlERTVGODVDNDFGQTIzODQyMDA2
REI2M0IgLyogVW5pZmllZFNvdXJjZTUyMS5jcHAgKi8sCisJCQkJREU1Rjg1QzkxRkEyMzg0ODAw
NkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjIuY3BwICovLAorCQkJCURFNUY4NUNBMUZBMjM4NEEw
MDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTIzLmNwcCAqLywKKwkJCQlERTVGODVDRDFGQTIzODRE
MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyNC5jcHAgKi8sCisJCQkJREU1Rjg1Q0UxRkEyMzg0
RTAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjUuY3BwICovLAorCQkJCURFNUY4NUQxMUZBMjM4
NTQwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTI2LmNwcCAqLywKKwkJCQlERTVGODVDNjFGQTIz
ODQ0MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUyNy5jcHAgKi8sCisJCQkJREU1Rjg1RDIxRkEy
Mzg1NjAwNkRCNjNCIC8qIFVuaWZpZWRTb3VyY2U1MjguY3BwICovLAorCQkJCURFNUY4NUNGMUZB
MjM4NTAwMDZEQjYzQiAvKiBVbmlmaWVkU291cmNlNTI5LmNwcCAqLywKKwkJCQlERTVGODVEMzFG
QTIzODU5MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTUzMC5jcHAgKi8sCisJCQkpOworCQkJcGF0
aCA9ICJ1bmlmaWVkLXNvdXJjZXMiOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJNTcxNTJCNTMyMUNCMkNFMzAwMEMzN0NBIC8qIGFwZHUgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTU3MTUyQjU3MjFDQjJFM0EwMDBDMzdDQSAvKiBB
cGR1Q29tbWFuZC5jcHAgKi8sCisJCQkJNTcxNTJCNTgyMUNCMkUzQjAwMEMzN0NBIC8qIEFwZHVD
b21tYW5kLmggKi8sCisJCQkJNTcxNTJCNTUyMUNCMkUzQTAwMEMzN0NBIC8qIEFwZHVSZXNwb25z
ZS5jcHAgKi8sCisJCQkJNTcxNTJCNTYyMUNCMkUzQTAwMEMzN0NBIC8qIEFwZHVSZXNwb25zZS5o
ICovLAorCQkJKTsKKwkJCXBhdGggPSBhcGR1OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKwkJNTczMDNCQjMyMDA2QzZFRDAwMzU1OTY1IC8qIGNib3IgKi8gPSB7CisJCQlpc2Eg
PSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTU3MzAzQkI2MjAwNkM2RUQwMDM1NTk2
NSAvKiBDQk9SQmluYXJ5LmggKi8sCisJCQkJNTczMDNCQkUyMDA2RTAwNDAwMzU1OTY1IC8qIENC
T1JSZWFkZXIuY3BwICovLAorCQkJCTU3MzAzQkJGMjAwNkUwMEMwMDM1NTk2NSAvKiBDQk9SUmVh
ZGVyLmggKi8sCisJCQkJNTczMDNCQjcyMDA2QzZFRDAwMzU1OTY1IC8qIENCT1JWYWx1ZS5jcHAg
Ki8sCisJCQkJNTczMDNCQjQyMDA2QzZFRDAwMzU1OTY1IC8qIENCT1JWYWx1ZS5oICovLAorCQkJ
CTU3MzAzQkI4MjAwNkM2RUQwMDM1NTk2NSAvKiBDQk9SV3JpdGVyLmNwcCAqLywKKwkJCQk1NzMw
M0JCNTIwMDZDNkVEMDAzNTU5NjUgLyogQ0JPUldyaXRlci5oICovLAorCQkJKTsKKwkJCXBhdGgg
PSBjYm9yOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTc4QTRCRkEyMTY2
QUUwMDAwRDA4RjM0IC8qIGZpZG8gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTU3MkI0MDNCMjE3N0ZCNjAwMDBBRDQzRSAvKiBBdXRoZW50aWNhdG9yR2V0
SW5mb1Jlc3BvbnNlLmNwcCAqLywKKwkJCQk1NzJCNDAzQzIxNzdGQjYxMDAwQUQ0M0UgLyogQXV0
aGVudGljYXRvckdldEluZm9SZXNwb25zZS5oICovLAorCQkJCTU3MkI0MDNEMjE3ODAxNkYwMDBB
RDQzRSAvKiBBdXRoZW50aWNhdG9yU3VwcG9ydGVkT3B0aW9ucy5jcHAgKi8sCisJCQkJNTcyQjQw
M0UyMTc4MDE3MDAwMEFENDNFIC8qIEF1dGhlbnRpY2F0b3JTdXBwb3J0ZWRPcHRpb25zLmggKi8s
CisJCQkJNTcyQjQwMUUyMTc1N0E2NDAwMEFENDNFIC8qIERldmljZVJlcXVlc3RDb252ZXJ0ZXIu
Y3BwICovLAorCQkJCTU3MkI0MDFEMjE3NTdBNjQwMDBBRDQzRSAvKiBEZXZpY2VSZXF1ZXN0Q29u
dmVydGVyLmggKi8sCisJCQkJNTcyQjQwMzgyMTc3MjU2QzAwMEFENDNFIC8qIERldmljZVJlc3Bv
bnNlQ29udmVydGVyLmNwcCAqLywKKwkJCQk1NzJCNDAzNzIxNzcyNTZDMDAwQUQ0M0UgLyogRGV2
aWNlUmVzcG9uc2VDb252ZXJ0ZXIuaCAqLywKKwkJCQk1N0JBRjI4NzIxNjdEMkY3MDA4RTk1NEUg
LyogRmlkb0NvbnN0YW50cy5jcHAgKi8sCisJCQkJNTc4QTRDMEIyMTY3RDI5NjAwRDA4RjM0IC8q
IEZpZG9Db25zdGFudHMuaCAqLywKKwkJCQk1NzhBNEMwODIxNjdEMjk1MDBEMDhGMzQgLyogRmlk
b0hpZE1lc3NhZ2UuY3BwICovLAorCQkJCTU3QkFGMjhBMjE2N0QzMDMwMDhFOTU0RSAvKiBGaWRv
SGlkTWVzc2FnZS5oICovLAorCQkJCTU3OEE0QzA5MjE2N0QyOTYwMEQwOEYzNCAvKiBGaWRvSGlk
UGFja2V0LmNwcCAqLywKKwkJCQk1NzhBNEMwQTIxNjdEMjk2MDBEMDhGMzQgLyogRmlkb0hpZFBh
Y2tldC5oICovLAorCQkJCTU3M0Y1MzM2MjE2ODBEMTUwMDQ1NTg3QSAvKiBGaWRvUGFyc2luZ1V0
aWxzLmNwcCAqLywKKwkJCQk1NzNGNTMzNTIxNjgwRDE0MDA0NTU4N0EgLyogRmlkb1BhcnNpbmdV
dGlscy5oICovLAorCQkJCTU3NTg1OTc4MjNBMUZDRTYwMEM3NDU3MiAvKiBQaW4uY3BwICovLAor
CQkJCTU3NTg1OTc5MjNBMUZDRjIwMEM3NDU3MiAvKiBQaW4uaCAqLywKKwkJCQk1NzE1MkI2QTIx
Q0Q5OTVDMDAwQzM3Q0EgLyogVTJmQ29tbWFuZENvbnN0cnVjdG9yLmNwcCAqLywKKwkJCQk1NzE1
MkI2QzIxQ0Q5OTVDMDAwQzM3Q0EgLyogVTJmQ29tbWFuZENvbnN0cnVjdG9yLmggKi8sCisJCQkJ
NTcxNTJCN0IyMUREOEJBMTAwMEMzN0NBIC8qIFUyZlJlc3BvbnNlQ29udmVydGVyLmNwcCAqLywK
KwkJCQk1NzE1MkI3QTIxREQ4QkExMDAwQzM3Q0EgLyogVTJmUmVzcG9uc2VDb252ZXJ0ZXIuaCAq
LywKKwkJCSk7CisJCQlwYXRoID0gZmlkbzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCTU3QzdBNjg4MUU1Njk0NkQwMEM2N0Q3MSAvKiBjcmVkZW50aWFsbWFuYWdlbWVudCAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTdDN0E2OTMx
RTU3OEFDQTAwQzY3RDcxIC8qIEJhc2ljQ3JlZGVudGlhbC5jcHAgKi8sCisJCQkJNTdDN0E2OEIx
RTU2OTY3NTAwQzY3RDcxIC8qIEJhc2ljQ3JlZGVudGlhbC5oICovLAorCQkJCTU3QzdBNjg5MUU1
Njk0NkQwMEM2N0Q3MSAvKiBCYXNpY0NyZWRlbnRpYWwuaWRsICovLAorCQkJCTc3QUFENjg1MUVD
RkJEMzkwMEJGQTJEMSAvKiBDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zLmggKi8sCisJCQkJNzdB
QUQ2ODMxRUNGQjY2MjAwQkZBMkQxIC8qIENyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaWRsICov
LAorCQkJCTc3RDUwRkZCMUVENEYxNkMwMERBNEM4NyAvKiBDcmVkZW50aWFsUmVxdWVzdE9wdGlv
bnMuaCAqLywKKwkJCQk3N0Q1MEZGQTFFRDRFQzc4MDBEQTRDODcgLyogQ3JlZGVudGlhbFJlcXVl
c3RPcHRpb25zLmlkbCAqLywKKwkJCQk3N0Q1MTAxODFFRDcxNTk5MDBEQTRDODcgLyogQ3JlZGVu
dGlhbHNDb250YWluZXIuY3BwICovLAorCQkJCTc3RDUxMDE2MUVENjAyMUIwMERBNEM4NyAvKiBD
cmVkZW50aWFsc0NvbnRhaW5lci5oICovLAorCQkJCTU3RDg0NjI5MUZFOTlGNjMwMENBMzY4MiAv
KiBDcmVkZW50aWFsc0NvbnRhaW5lci5pZGwgKi8sCisJCQkJNTdEODQ2MjUxRkU4OTVGNjAwQ0Ez
NjgyIC8qIE5hdmlnYXRvcitDcmVkZW50aWFscy5pZGwgKi8sCisJCQkJNTdEODQ2MjQxRkU4OTVG
NTAwQ0EzNjgyIC8qIE5hdmlnYXRvckNyZWRlbnRpYWxzLmNwcCAqLywKKwkJCQk1N0Q4NDYyNjFG
RTg5NUY4MDBDQTM2ODIgLyogTmF2aWdhdG9yQ3JlZGVudGlhbHMuaCAqLywKKwkJCSk7CisJCQlw
YXRoID0gY3JlZGVudGlhbG1hbmFnZW1lbnQ7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwor
CQl9OworCQk1N0M3QTY4RDFFNTY5QTg0MDBDNjdENzEgLyogQ3JlZGVudGlhbE1hbmFnZW1lbnQg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTU3QzdBNjlD
MUU1NzkxMEQwMEM2N0Q3MSAvKiBKU0Jhc2ljQ3JlZGVudGlhbC5jcHAgKi8sCisJCQkJNTdDN0E2
OUQxRTU3OTEwRDAwQzY3RDcxIC8qIEpTQmFzaWNDcmVkZW50aWFsLmggKi8sCisJCQkJNzdENTBG
RkMxRUQ0RjcwQzAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5jcHAgKi8s
CisJCQkJNzdENTBGRkQxRUQ0RjcwQzAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbENyZWF0aW9uT3B0
aW9ucy5oICovLAorCQkJCTc3RDUwRkZFMUVENEY3MEMwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxS
ZXF1ZXN0T3B0aW9ucy5jcHAgKi8sCisJCQkJNzdENTBGRkYxRUQ0RjcwQzAwREE0Qzg3IC8qIEpT
Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25zLmggKi8sCisJCQkJNzdENTEwMUExRUQ3MjJCNTAwREE0
Qzg3IC8qIEpTQ3JlZGVudGlhbHNDb250YWluZXIuY3BwICovLAorCQkJCTc3RDUxMDFCMUVENzIy
QjUwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxzQ29udGFpbmVyLmggKi8sCisJCQkJNzdENTEwMjMx
RUQ3NEI1NTAwREE0Qzg3IC8qIEpTTmF2aWdhdG9yQ3JlZGVudGlhbHMuY3BwICovLAorCQkJCTc3
RDUxMDI0MUVENzRCNTUwMERBNEM4NyAvKiBKU05hdmlnYXRvckNyZWRlbnRpYWxzLmggKi8sCisJ
CQkpOworCQkJbmFtZSA9IENyZWRlbnRpYWxNYW5hZ2VtZW50OworCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKKwkJfTsKKwkJNTdEODQ2MkExRkVBRjU3RjAwQ0EzNjgyIC8qIHdlYmF1dGhuICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1NzE1MkI1MzIx
Q0IyQ0UzMDAwQzM3Q0EgLyogYXBkdSAqLywKKwkJCQk1NzMwM0JCMzIwMDZDNkVEMDAzNTU5NjUg
LyogY2JvciAqLywKKwkJCQk1NzhBNEJGQTIxNjZBRTAwMDBEMDhGMzQgLyogZmlkbyAqLywKKwkJ
CQk1N0QxMzUyMTIyOTQ5NzM0MDA4Mjc0MDEgLyogQXR0ZXN0YXRpb25Db252ZXlhbmNlUHJlZmVy
ZW5jZS5oICovLAorCQkJCTU3RDEzNTIzMjI5NDk3MzQwMDgyNzQwMSAvKiBBdHRlc3RhdGlvbkNv
bnZleWFuY2VQcmVmZXJlbmNlLmlkbCAqLywKKwkJCQk1N0RBNDdBNTIyNDAxRTBGMDAyQTQ2MTIg
LyogQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50SW5wdXRzLmggKi8sCisJCQkJNTdEQTQ3
QTcyMjQwMUUwRjAwMkE0NjEyIC8qIEF1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudElucHV0
cy5pZGwgKi8sCisJCQkJNTc1ODU5NjUyMzlGMTRDQzAwQzc0NTcyIC8qIEF1dGhlbnRpY2F0aW9u
RXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaCAqLywKKwkJCQk1NzU4NTk2NzIzOUYxNENEMDBDNzQ1
NzIgLyogQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50T3V0cHV0cy5pZGwgKi8sCisJCQkJ
NTc1ODU5NkUyMzlGMzk3OTAwQzc0NTcyIC8qIEF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25z
ZS5jcHAgKi8sCisJCQkJNTczMDNDMjcyMDA5QjJGQzAwMzU1OTY1IC8qIEF1dGhlbnRpY2F0b3JB
c3NlcnRpb25SZXNwb25zZS5oICovLAorCQkJCTU3MzAzQzI5MjAwOUIyRkMwMDM1NTk2NSAvKiBB
dXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UuaWRsICovLAorCQkJCTU3RkU2ODZFMjYwNTJF
MzEwMEJGNDVFNCAvKiBBdXRoZW50aWNhdG9yQXR0YWNobWVudC5oICovLAorCQkJCTU3RkU2ODcw
MjYwNTJFMzEwMEJGNDVFNCAvKiBBdXRoZW50aWNhdG9yQXR0YWNobWVudC5pZGwgKi8sCisJCQkJ
NTc1ODU5NkIyMzlGMjg0QjAwQzc0NTcyIC8qIEF1dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJlc3Bv
bnNlLmNwcCAqLywKKwkJCQk1NzMwM0MxQjIwMDlBOTg2MDAzNTU5NjUgLyogQXV0aGVudGljYXRv
ckF0dGVzdGF0aW9uUmVzcG9uc2UuaCAqLywKKwkJCQk1NzMwM0MxRDIwMDlBOTg2MDAzNTU5NjUg
LyogQXV0aGVudGljYXRvckF0dGVzdGF0aW9uUmVzcG9uc2UuaWRsICovLAorCQkJCTU3MzAzQzQ0
MjAxMDVCM0QwMDM1NTk2NSAvKiBBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuY3BwICovLAorCQkJ
CTU3MzAzQzQzMjAxMDVCM0QwMDM1NTk2NSAvKiBBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuaCAq
LywKKwkJCQk1NzYwODI3MDIwMjE1MTNGMDAxMTY2NzggLyogQXV0aGVudGljYXRvckNvb3JkaW5h
dG9yQ2xpZW50LmggKi8sCisJCQkJNTc1ODU5NjkyMzlGMUVDNzAwQzc0NTcyIC8qIEF1dGhlbnRp
Y2F0b3JSZXNwb25zZS5jcHAgKi8sCisJCQkJNTczMDNCQ0YyMDA4N0E4MzAwMzU1OTY1IC8qIEF1
dGhlbnRpY2F0b3JSZXNwb25zZS5oICovLAorCQkJCTU3MzAzQkQxMjAwODdBODMwMDM1NTk2NSAv
KiBBdXRoZW50aWNhdG9yUmVzcG9uc2UuaWRsICovLAorCQkJCTU3RENFRDcyMjE0MzA1RjAwMDE2
Qjg0NyAvKiBBdXRoZW50aWNhdG9yUmVzcG9uc2VEYXRhLmggKi8sCisJCQkJNTdEQ0VEOEMyMTQ4
N0VEQjAwMTZCODQ3IC8qIEF1dGhlbnRpY2F0b3JUcmFuc3BvcnQuaCAqLywKKwkJCQk1N0RDRUQ4
RTIxNDg3RURCMDAxNkI4NDcgLyogQXV0aGVudGljYXRvclRyYW5zcG9ydC5pZGwgKi8sCisJCQkJ
NTdEODQ2MkMxRkVBRjY4RjAwQ0EzNjgyIC8qIFB1YmxpY0tleUNyZWRlbnRpYWwuY3BwICovLAor
CQkJCTU3RDg0NjJCMUZFQUY2OEYwMENBMzY4MiAvKiBQdWJsaWNLZXlDcmVkZW50aWFsLmggKi8s
CisJCQkJNTdEODQ2MkQxRkVBRjY4RjAwQ0EzNjgyIC8qIFB1YmxpY0tleUNyZWRlbnRpYWwuaWRs
ICovLAorCQkJCTU3MzAzQkU2MjAwOTc0N0EwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFs
Q3JlYXRpb25PcHRpb25zLmggKi8sCisJCQkJNTczMDNCRTgyMDA5NzQ3QTAwMzU1OTY1IC8qIFB1
YmxpY0tleUNyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaWRsICovLAorCQkJCTU3MzAzQkVDMjAw
OTgwQkYwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5oICovLAorCQkJ
CTU3MzAzQkVFMjAwOTgwQkYwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRv
ci5pZGwgKi8sCisJCQkJNTczMDNDMDYyMDA5OThGODAwMzU1OTY1IC8qIFB1YmxpY0tleUNyZWRl
bnRpYWxSZXF1ZXN0T3B0aW9ucy5oICovLAorCQkJCTU3MzAzQzA4MjAwOTk4RjgwMDM1NTk2NSAv
KiBQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuaWRsICovLAorCQkJCTU3MzAzQkVB
MjAwOTdGNDAwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsVHlwZS5oICovLAorCQkJCTU3
MzAzQkYwMjAwOTg0NjEwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsVHlwZS5pZGwgKi8s
CisJCQkJNTcyQjQwMjMyMTc2OEQ4NTAwMEFENDNFIC8qIFVzZXJWZXJpZmljYXRpb25SZXF1aXJl
bWVudC5oICovLAorCQkJCTU3MkI0MDI1MjE3NjhEODUwMDBBRDQzRSAvKiBVc2VyVmVyaWZpY2F0
aW9uUmVxdWlyZW1lbnQuaWRsICovLAorCQkJCTU3NEY1NURDMjA0RjM3MzIwMDI5NDhDNiAvKiBX
ZWJBdXRoZW50aWNhdGlvbkNvbnN0YW50cy5oICovLAorCQkJCTU3MTUyQjdGMjFEREE1ODEwMDBD
MzdDQSAvKiBXZWJBdXRoZW50aWNhdGlvblV0aWxzLmNwcCAqLywKKwkJCQk1NzE1MkI3RTIxRERB
NTgxMDAwQzM3Q0EgLyogV2ViQXV0aGVudGljYXRpb25VdGlscy5oICovLAorCQkJKTsKKwkJCXBh
dGggPSB3ZWJhdXRobjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTU3RDg0
NjJGMUZFQUZCMDUwMENBMzY4MiAvKiBXZWJBdXRoTiAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTdEMTM1MjcyMjk0QTdBODAwODI3NDAxIC8qIEpTQXR0
ZXN0YXRpb25Db252ZXlhbmNlUHJlZmVyZW5jZS5jcHAgKi8sCisJCQkJNTdEMTM1MjYyMjk0QTdB
NzAwODI3NDAxIC8qIEpTQXR0ZXN0YXRpb25Db252ZXlhbmNlUHJlZmVyZW5jZS5oICovLAorCQkJ
CTU3REE0N0FDMjI0MDMyREMwMDJBNDYxMiAvKiBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0Ns
aWVudElucHV0cy5jcHAgKi8sCisJCQkJNTdEQTQ3QUQyMjQwMzJERDAwMkE0NjEyIC8qIEpTQXV0
aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50SW5wdXRzLmggKi8sCisJCQkJNTc1ODU5NUMyMzlG
MTEzMDAwQzc0NTcyIC8qIEpTQXV0aGVudGljYXRpb25FeHRlbnNpb25zQ2xpZW50T3V0cHV0cy5j
cHAgKi8sCisJCQkJNTc1ODU5NUUyMzlGMTE3MzAwQzc0NTcyIC8qIEpTQXV0aGVudGljYXRpb25F
eHRlbnNpb25zQ2xpZW50T3V0cHV0cy5oICovLAorCQkJCTU3MzAzQzJFMjAwOUI3REEwMDM1NTk2
NSAvKiBKU0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5jcHAgKi8sCisJCQkJNTczMDND
MkQyMDA5QjdEOTAwMzU1OTY1IC8qIEpTQXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlLmgg
Ki8sCisJCQkJNTdGRTY4NzcyNjA1NTY4RjAwQkY0NUU0IC8qIEpTQXV0aGVudGljYXRvckF0dGFj
aG1lbnQuY3BwICovLAorCQkJCTU3RkU2ODc1MjYwNTU2ODUwMEJGNDVFNCAvKiBKU0F1dGhlbnRp
Y2F0b3JBdHRhY2htZW50LmggKi8sCisJCQkJNTczMDNDMjAyMDA5QUVGNTAwMzU1OTY1IC8qIEpT
QXV0aGVudGljYXRvckF0dGVzdGF0aW9uUmVzcG9uc2UuY3BwICovLAorCQkJCTU3MzAzQzIxMjAw
OUFFRjYwMDM1NTk2NSAvKiBKU0F1dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJlc3BvbnNlLmggKi8s
CisJCQkJNTczMDNCREUyMDA5NUIyNzAwMzU1OTY1IC8qIEpTQXV0aGVudGljYXRvclJlc3BvbnNl
LmNwcCAqLywKKwkJCQk1NzMwM0JERDIwMDk1QjI2MDAzNTU5NjUgLyogSlNBdXRoZW50aWNhdG9y
UmVzcG9uc2UuaCAqLywKKwkJCQk1N0RDRUQ5MTIxNDg4MEM2MDAxNkI4NDcgLyogSlNBdXRoZW50
aWNhdG9yVHJhbnNwb3J0LmNwcCAqLywKKwkJCQk1N0RDRUQ5MjIxNDg4MEM2MDAxNkI4NDcgLyog
SlNBdXRoZW50aWNhdG9yVHJhbnNwb3J0LmggKi8sCisJCQkJNTdEODQ2MzExRkVBRkMyRjAwQ0Ez
NjgyIC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbC5jcHAgKi8sCisJCQkJNTdEODQ2MzAxRkVBRkMy
RjAwQ0EzNjgyIC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbC5oICovLAorCQkJCTU3MzAzQzE0MjAw
OUEyNTcwMDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuY3Bw
ICovLAorCQkJCTU3MzAzQzEzMjAwOUEyNTcwMDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRp
YWxDcmVhdGlvbk9wdGlvbnMuaCAqLywKKwkJCQk1NzMwM0JGMTIwMDk5MDQ1MDAzNTU5NjUgLyog
SlNQdWJsaWNLZXlDcmVkZW50aWFsRGVzY3JpcHRvci5jcHAgKi8sCisJCQkJNTczMDNCRjIyMDA5
OTA0NTAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaCAqLywKKwkJ
CQk1NzMwM0MwQjIwMDk5Qzc0MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVz
dE9wdGlvbnMuY3BwICovLAorCQkJCTU3MzAzQzBDMjAwOTlDNzUwMDM1NTk2NSAvKiBKU1B1Ymxp
Y0tleUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5oICovLAorCQkJCTU3MzAzQkZBMjAwOTkxMzUw
MDM1NTk2NSAvKiBKU1B1YmxpY0tleUNyZWRlbnRpYWxUeXBlLmNwcCAqLywKKwkJCQk1NzMwM0JG
OTIwMDk5MTM0MDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsVHlwZS5oICovLAorCQkJ
CTU3MkI0MDJCMjE3NjkwMUYwMDBBRDQzRSAvKiBKU1VzZXJWZXJpZmljYXRpb25SZXF1aXJlbWVu
dC5jcHAgKi8sCisJCQkJNTcyQjQwMkEyMTc2OTAxRjAwMEFENDNFIC8qIEpTVXNlclZlcmlmaWNh
dGlvblJlcXVpcmVtZW50LmggKi8sCisJCQkpOworCQkJbmFtZSA9IFdlYkF1dGhOOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNTlCNTk3NzExMTA4NjU1NjAwNzE1OUU4IC8q
IGpzYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNTlC
NTk3NzIxMTA4NjU2QjAwNzE1OUU4IC8qIEJyaWRnZUpTQy5jcHAgKi8sCisJCQkJNTlCNTk3NzQx
MTA4NjU3OTAwNzE1OUU4IC8qIEJyaWRnZUpTQy5oICovLAorCQkJKTsKKwkJCXBhdGggPSBqc2M7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk1OUM3N0YxMDEwNTQ1OTFDMDA1
MDYxMDQgLyogbW9jayAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAo
CisJCQkJQ0RGMkIwMDUxODIwNTNERjAwRjJCNDI0IC8qIG1lZGlhc291cmNlICovLAorCQkJCTU5
MzA5QTEwMTFGNEFFNTgwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudE1vY2suY3Bw
ICovLAorCQkJCTU5MzA5QTEyMTFGNEFFNkEwMDI1MDYwMyAvKiBEZXZpY2VPcmllbnRhdGlvbkNs
aWVudE1vY2suaCAqLywKKwkJCQk5QUM2RjAyRDIxMTQ4RjlGMDBDQkRBMDYgLyogTWVkaWFFbmdp
bmVDb25maWd1cmF0aW9uRmFjdG9yeU1vY2suY3BwICovLAorCQkJCTlBQzZGMDJGMjExNDhGQTIw
MENCREEwNiAvKiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5TW9jay5oICovLAorCQkJ
CTA3N0I2NDE0MUI5NUY3MDMwMDNFOUFENSAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0TW9jay5jcHAg
Ki8sCisJCQkJMDc3QjY0MTUxQjk1RjcwMzAwM0U5QUQ1IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRN
b2NrLmggKi8sCisJCQkJMDc3QjY0MTAxQjk0RjEyRTAwM0U5QUQ1IC8qIE1lZGlhUGxheWJhY2tU
YXJnZXRQaWNrZXJNb2NrLmNwcCAqLywKKwkJCQkwNzdCNjQxMTFCOTRGMTJFMDAzRTlBRDUgLyog
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlck1vY2suaCAqLywKKwkJCQk0MUI5MTM3ODIzNTg0RDBG
MDAyNUJGQTMgLyogTW9ja0F1ZGlvRGVzdGluYXRpb25Db2NvYS5jcHAgKi8sCisJCQkJNDFCOTEz
NzYyMzU4NEQwRTAwMjVCRkEzIC8qIE1vY2tBdWRpb0Rlc3RpbmF0aW9uQ29jb2EuaCAqLywKKwkJ
CQk0MTNDQ0Q0ODIwREUwMTNDMDA2NUEyMUEgLyogTW9ja01lZGlhRGV2aWNlLmggKi8sCisJCQkJ
MDdENkE0RjExQkVENUY4ODAwMTc0MTQ2IC8qIE1vY2tSZWFsdGltZUF1ZGlvU291cmNlLmNwcCAq
LywKKwkJCQkwN0Q2QTRGMjFCRUQ1Rjg4MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3Vy
Y2UuaCAqLywKKwkJCQk0QTBGRkE5QjFBQUY1RTZDMDA2MjgwM0IgLyogTW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXIuY3BwICovLAorCQkJCTRBMEZGQTlDMUFBRjVFNkMwMDYyODAzQiAvKiBN
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oICovLAorCQkJCTA3RUU3NkU5MUJFOTZEQjAw
MEY4OTEzMyAvKiBNb2NrUmVhbHRpbWVWaWRlb1NvdXJjZS5jcHAgKi8sCisJCQkJMDdFRTc2RUEx
QkU5NkRCMDAwRjg5MTMzIC8qIE1vY2tSZWFsdGltZVZpZGVvU291cmNlLmggKi8sCisJCQkJQUFF
MjdCNzQxNkNCRkMwRDAwNjIzMDQzIC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2l6ZXJNb2NrLmNw
cCAqLywKKwkJCQlBQUUyN0I3NTE2Q0JGQzBEMDA2MjMwNDMgLyogUGxhdGZvcm1TcGVlY2hTeW50
aGVzaXplck1vY2suaCAqLywKKwkJCQkwNzM3OTRGMzE5RjU4NjRFMDBFNUEwNDUgLyogUlRDRGF0
YUNoYW5uZWxIYW5kbGVyTW9jay5jcHAgKi8sCisJCQkJMDczNzk0RjQxOUY1ODY0RTAwRTVBMDQ1
IC8qIFJUQ0RhdGFDaGFubmVsSGFuZGxlck1vY2suaCAqLywKKwkJCQkwNzM3OTRGNzE5RjU4NjRF
MDBFNUEwNDUgLyogUlRDTm90aWZpZXJzTW9jay5jcHAgKi8sCisJCQkJMDczNzk0RjgxOUY1ODY0
RTAwRTVBMDQ1IC8qIFJUQ05vdGlmaWVyc01vY2suaCAqLywKKwkJCQk1Q0IzN0ZGQzFDNjJEMjc4
MDBGMjAxODggLyogU2Nyb2xsQW5pbWF0b3JNb2NrLmNwcCAqLywKKwkJCQk1Q0IzN0ZGRDFDNjJE
Mjc4MDBGMjAxODggLyogU2Nyb2xsQW5pbWF0b3JNb2NrLmggKi8sCisJCQkJMEZFNzE0MDMxNDIx
NzBCODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgKi8sCisJCQkJMEZFNzE0MDQx
NDIxNzBCODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oICovLAorCQkJCTJEN0VEMEE5
MUJBRTk5MTcwMDQzQjNFNSAvKiBUaW1lckV2ZW50QmFzZWRNb2NrLmggKi8sCisJCQkpOworCQkJ
cGF0aCA9IG1vY2s7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk1Q0U1RDlB
NjFEQjg5OUE4MDBDRTdBOEQgLyogRW5jb2RpbmcgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCTVDRTVEOUE3MURCODk5RkMwMENFN0E4RCAvKiBKU1RleHRE
ZWNvZGVyLmNwcCAqLywKKwkJCQk1Q0U1RDlBODFEQjg5OUZDMDBDRTdBOEQgLyogSlNUZXh0RGVj
b2Rlci5oICovLAorCQkJCTVDRTVEOUE5MURCODk5RkMwMENFN0E4RCAvKiBKU1RleHRFbmNvZGVy
LmNwcCAqLywKKwkJCQk1Q0U1RDlBQTFEQjg5OUZDMDBDRTdBOEQgLyogSlNUZXh0RW5jb2Rlci5o
ICovLAorCQkJKTsKKwkJCW5hbWUgPSBFbmNvZGluZzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTVENTk3NUI1MTk2MzYyQkUwMEQwMDg3OCAvKiBjb2NvYSAqLyA9IHsKKwkJ
CWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRjQ0NkVEREQyNjVEQUUzRjAw
MzFEQThGIC8qIERhdGFEZXRlY3Rpb25SZXN1bHRzU3RvcmFnZS5oICovLAorCQkJCUY0NDZFREU3
MjY1REQ4OTAwMDMxREE4RiAvKiBEYXRhRGV0ZWN0b3JFbGVtZW50SW5mby5oICovLAorCQkJCUY0
NDZFREUwMjY1REIxRTUwMDMxREE4RiAvKiBJbWFnZU92ZXJsYXlEYXRhRGV0ZWN0aW9uUmVzdWx0
SWRlbnRpZmllci5oICovLAorCQkJCTQxM0UwMDdCMURCMEU3MDcwMDIzNDFEMiAvKiBNZW1vcnlS
ZWxlYXNlQ29jb2EubW0gKi8sCisJCQkJQUQ1QTBDMjIxREVDQTM3RTAwNzA3MDU0IC8qIFBlcmZv
cm1hbmNlTG9nZ2luZ0NvY29hLm1tICovLAorCQkJCUFERkUyQjU0MUJENUY0MTIwMERBQjQ1NyAv
KiBSZXNvdXJjZVVzYWdlT3ZlcmxheUNvY29hLm1tICovLAorCQkJCUE1MDcxRTg4MUM1NkQ0RkEw
MDk5NTFCRSAvKiBSZXNvdXJjZVVzYWdlVGhyZWFkQ29jb2EubW0gKi8sCisJCQkJQTE4MkQ1QjYx
QkU3MjI2MjAwODdBN0NDIC8qIFNldHRpbmdzQmFzZUNvY29hLm1tICovLAorCQkJCTQ0Q0UyQkJF
MjY0Mzc5OUUwMDdBRTExMCAvKiBXZWJUZXh0SW5kaWNhdG9yTGF5ZXIuaCAqLywKKwkJCQk0NENF
MkJCQzI2NDM3OTlEMDA3QUUxMTAgLyogV2ViVGV4dEluZGljYXRvckxheWVyLm1tICovLAorCQkJ
KTsKKwkJCXBhdGggPSBjb2NvYTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTVEQTVFMEY5MTAyQjk1MDQwMDA4OENGOSAvKiBXZWJTb2NrZXRzICovID0geworCQkJaXNhID0g
UEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MUZCNTUwMzExM0UzRTkxMDA4MjExNzYg
LyogSlNDbG9zZUV2ZW50LmNwcCAqLywKKwkJCQk1MUZCNTUwMjExM0UzRTkxMDA4MjExNzYgLyog
SlNDbG9zZUV2ZW50LmggKi8sCisJCQkJNURBNUUwRkExMDJCOTUzODAwMDg4Q0Y5IC8qIEpTV2Vi
U29ja2V0LmNwcCAqLywKKwkJCQk1REE1RTBGQjEwMkI5NTM4MDAwODhDRjkgLyogSlNXZWJTb2Nr
ZXQuaCAqLywKKwkJCSk7CisJCQluYW1lID0gV2ViU29ja2V0czsKKwkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CisJCX07CisJCTVEQ0Y4MzY5MEQ1OTE1NzgwMDk1M0JDNiAvKiBwbHVnaW5zICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlBOUM2RTRFMTBE
NzQ1RTA1MDA2NDQyRTkgLyogRE9NTWltZVR5cGUuY3BwICovLAorCQkJCUE5QzZFNEUyMEQ3NDVF
MDUwMDY0NDJFOSAvKiBET01NaW1lVHlwZS5oICovLAorCQkJCUE5QzZFNjVFMEQ3NDY2RjIwMDY0
NDJFOSAvKiBET01NaW1lVHlwZS5pZGwgKi8sCisJCQkJQTlDNkU0RTUwRDc0NUUxODAwNjQ0MkU5
IC8qIERPTU1pbWVUeXBlQXJyYXkuY3BwICovLAorCQkJCUE5QzZFNEU2MEQ3NDVFMTgwMDY0NDJF
OSAvKiBET01NaW1lVHlwZUFycmF5LmggKi8sCisJCQkJQTlDNkU2NUYwRDc0NjcwMDAwNjQ0MkU5
IC8qIERPTU1pbWVUeXBlQXJyYXkuaWRsICovLAorCQkJCUE5QzZFNEU5MEQ3NDVFMkIwMDY0NDJF
OSAvKiBET01QbHVnaW4uY3BwICovLAorCQkJCUE5QzZFNEVBMEQ3NDVFMkIwMDY0NDJFOSAvKiBE
T01QbHVnaW4uaCAqLywKKwkJCQlBOUM2RTY2MDBENzQ2NzBDMDA2NDQyRTkgLyogRE9NUGx1Z2lu
LmlkbCAqLywKKwkJCQlBOUM2RTRFRDBENzQ1RTM4MDA2NDQyRTkgLyogRE9NUGx1Z2luQXJyYXku
Y3BwICovLAorCQkJCUE5QzZFNEVFMEQ3NDVFMzgwMDY0NDJFOSAvKiBET01QbHVnaW5BcnJheS5o
ICovLAorCQkJCUE5QzZFNjYxMEQ3NDY3MUUwMDY0NDJFOSAvKiBET01QbHVnaW5BcnJheS5pZGwg
Ki8sCisJCQkJMUE5MjdGQ0YxNDE2QTE1QjAwM0E4M0M4IC8qIG5wYXBpLmggKi8sCisJCQkJMUEy
MTlCM0EwRENBODdBQjAwNDBFM0EwIC8qIG5wZnVuY3Rpb25zLmggKi8sCisJCQkJMUE5MjdGRDAx
NDE2QTE1QjAwM0E4M0M4IC8qIG5wcnVudGltZS5oICovLAorCQkJCTFBOTI3RkQxMTQxNkExNUIw
MDNBODNDOCAvKiBucHR5cGVzLmggKi8sCisJCQkJQTlDNkU0RjEwRDc0NUU0ODAwNjQ0MkU5IC8q
IFBsdWdpbkRhdGEuY3BwICovLAorCQkJCUE5QzZFNEYyMEQ3NDVFNDgwMDY0NDJFOSAvKiBQbHVn
aW5EYXRhLmggKi8sCisJCQkJMUEwOEZFREExRDU5MkI4QjAwOEJBOENCIC8qIFBsdWdpbkluZm9Q
cm92aWRlci5jcHAgKi8sCisJCQkJMUEwOEZFREIxRDU5MkI4QjAwOEJBOENCIC8qIFBsdWdpbklu
Zm9Qcm92aWRlci5oICovLAorCQkJCTBBRkRBQzNDMTBGNTQ0OEMwMEUxRjNEMiAvKiBQbHVnaW5W
aWV3QmFzZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBwbHVnaW5zOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNjNCRDRBNUMxRjc3OEU4NDAwNDM4NzIyIC8qIGFwcGxpY2F0
aW9ubWFuaWZlc3QgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCTYzQkQ0QTVEMUY3NzhFOUYwMDQzODcyMiAvKiBBcHBsaWNhdGlvbk1hbmlmZXN0LmggKi8s
CisJCQkJNjM1NEY0QzgxRjdBRkM5NDAwRDg5REYzIC8qIEFwcGxpY2F0aW9uTWFuaWZlc3RQYXJz
ZXIuY3BwICovLAorCQkJCTYzNTRGNEM3MUY3QUZDOTQwMEQ4OURGMyAvKiBBcHBsaWNhdGlvbk1h
bmlmZXN0UGFyc2VyLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGFwcGxpY2F0aW9ubWFuaWZlc3Q7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk2NTY1ODBFQzA5RDEyQjIwMDAw
RTYxRDcgLyogRGVyaXZlZCBTb3VyY2VzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQlj
aGlsZHJlbiA9ICgKKwkJCQk1MzhFQzdFQTFGOTZBOTVCMDA0RDIyQTggLyogdW5pZmllZC1zb3Vy
Y2VzICovLAorCQkJCTk5MDhCMEYzMUJDQUNGRkUwMEVEMEY2NSAvKiBCeXRlTGVuZ3RoUXVldWlu
Z1N0cmF0ZWd5QnVpbHRpbnMuY3BwICovLAorCQkJCTk5MDhCMEY1MUJDQUQwN0QwMEVEMEY2NSAv
KiBCeXRlTGVuZ3RoUXVldWluZ1N0cmF0ZWd5QnVpbHRpbnMuaCAqLywKKwkJCQlFNDA2RjNGQjEx
OTgzMDdEMDA5RDU5RDYgLyogQ29sb3JEYXRhLmNwcCAqLywKKwkJCQk5OTA4QjBGNjFCQ0FEMDdE
MDBFRDBGNjUgLyogQ291bnRRdWV1aW5nU3RyYXRlZ3lCdWlsdGlucy5jcHAgKi8sCisJCQkJOTkw
OEIwRjcxQkNBRDA3RDAwRUQwRjY1IC8qIENvdW50UXVldWluZ1N0cmF0ZWd5QnVpbHRpbnMuaCAq
LywKKwkJCQlFNDFFQTAzODExOTgzNkRCMDA3MTBCQzUgLyogQ1NTUHJvcGVydHlOYW1lcy5jcHAg
Ki8sCisJCQkJNjU2NTgwRUUwOUQxMkIyMDAwMEU2MUQ3IC8qIENTU1Byb3BlcnR5TmFtZXMuZ3Bl
cmYgKi8sCisJCQkJNjU2NTgwRUYwOUQxMkIyMDAwMEU2MUQ3IC8qIENTU1Byb3BlcnR5TmFtZXMu
aCAqLywKKwkJCQlFNDFFQTAzOTExOTgzNzQ5MDA3MTBCQzUgLyogQ1NTVmFsdWVLZXl3b3Jkcy5j
cHAgKi8sCisJCQkJNjU2NTgxNDcwOUQxMzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29yZHMu
Z3BlcmYgKi8sCisJCQkJNjU2NTgxNDgwOUQxMzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5d29y
ZHMuaCAqLywKKwkJCQlFMzM0ODI1RTFEQzkzQUEwMDA5Qzk1NDQgLyogRE9NSklUQWJzdHJhY3RI
ZWFwUmVwb3NpdG9yeS5oICovLAorCQkJCUUxQzZDRkMyMTc0NkQyOTMwMDdCODdBMSAvKiBET01X
aW5kb3dDb25zdHJ1Y3RvcnMuaWRsICovLAorCQkJCTQ0NDA2QkM2MjU4RDQ5MkUwMDcwQjA2NSAv
KiBlbi5scHJvaiAqLywKKwkJCQk5QkNDQ0E1MzIwRTcwOTVEMDA2OEZCMDMgLyogRXZlbnRGYWN0
b3J5LmNwcCAqLywKKwkJCQk5NzBCNzJBNTE0NTAwOEVCMDBGMDBBMzcgLyogRXZlbnRIZWFkZXJz
LmggKi8sCisJCQkJOTcwQjcyODkxNDRGRkFDNjAwRjAwQTM3IC8qIEV2ZW50SW50ZXJmYWNlcy5o
ICovLAorCQkJCTlCODU1MzA1MjBFNzMzQjUwMDlFRUY0RiAvKiBFdmVudFRhcmdldEZhY3Rvcnku
Y3BwICovLAorCQkJCTk3QUEzQ0EzMTQ1MjM3Q0MwMDNFMURBNiAvKiBFdmVudFRhcmdldEhlYWRl
cnMuaCAqLywKKwkJCQk5N0FBM0NBNDE0NTIzN0NDMDAzRTFEQTYgLyogRXZlbnRUYXJnZXRJbnRl
cmZhY2VzLmggKi8sCisJCQkJQTE3QzgxMjAwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVtZW50
RmFjdG9yeS5jcHAgKi8sCisJCQkJQTE3QzgxMjEwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVt
ZW50RmFjdG9yeS5oICovLAorCQkJCUI1NjJEQjVFMTdEM0NENTYwMDEwQUY5NiAvKiBIVE1MRWxl
bWVudFR5cGVIZWxwZXJzLmggKi8sCisJCQkJQThCQzA0OTExMjE0RjY5NjAwQjVGMTIyIC8qIEhU
TUxFbnRpdHlUYWJsZS5jcHAgKi8sCisJCQkJQThEMDZCMzgwQTI2NURDRDAwNUU3MjAzIC8qIEhU
TUxOYW1lcy5jcHAgKi8sCisJCQkJQThEMDZCMzcwQTI2NURDRDAwNUU3MjAzIC8qIEhUTUxOYW1l
cy5oICovLAorCQkJCTFBQzkwMEMwMTk0M0MwQTAwMDg2MjVCNSAvKiBIVFRQSGVhZGVyTmFtZXMu
Y3BwICovLAorCQkJCTFBQzkwMEMxMTk0M0MwQTAwMDg2MjVCNSAvKiBIVFRQSGVhZGVyTmFtZXMu
Z3BlcmYgKi8sCisJCQkJMUFDOTAwQzIxOTQzQzBBMDAwODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1l
cy5oICovLAorCQkJCTUzRTI5RTVDMTY3QThBMTkwMDU4NkQzRCAvKiBJbnRlcm5hbFNldHRpbmdz
R2VuZXJhdGVkLmNwcCAqLywKKwkJCQk1M0UyOUU1RDE2N0E4QTE5MDA1ODZEM0QgLyogSW50ZXJu
YWxTZXR0aW5nc0dlbmVyYXRlZC5oICovLAorCQkJCTE0RENGM0IwMUI2QkUyMDgwMDYyRDRDMyAv
KiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuY3BwICovLAorCQkJCTE0RENGM0IxMUI2QkUy
MDgwMDYyRDRDMyAvKiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuaCAqLywKKwkJCQkxNERD
RjNCMDFCNkJFMjA4MDA2MkQ0QzIgLyogSlNDb3VudFF1ZXVpbmdTdHJhdGVneS5jcHAgKi8sCisJ
CQkJMTREQ0YzQjExQjZCRTIwODAwNjJENEMyIC8qIEpTQ291bnRRdWV1aW5nU3RyYXRlZ3kuaCAq
LywKKwkJCQk5OTA4QjBGRDFCQ0FEMDdEMDBFRDBGNjYgLyogSlNET01CaW5kaW5nSW50ZXJuYWxz
QnVpbHRpbnMuY3BwICovLAorCQkJCTlCMDNEODA2MUJCMzExMEQwMEI3NjREQSAvKiBKU0RPTUJp
bmRpbmdJbnRlcm5hbHNCdWlsdGlucy5oICovLAorCQkJCUMyODA4MzNEMUM2REMyMkMwMDE0NTFC
NiAvKiBKU0ZvbnRGYWNlLmNwcCAqLywKKwkJCQlDMjgwODMzRTFDNkRDMjJDMDAxNDUxQjYgLyog
SlNGb250RmFjZS5oICovLAorCQkJCTFDMjRFRUE2MUM3MkE3QjQwMDgwRjhGQyAvKiBKU0ZvbnRG
YWNlU2V0LmNwcCAqLywKKwkJCQkxQzI0RUVBNzFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFj
ZVNldC5oICovLAorCQkJCTkzOEU2NUY2MDlGMDk4NUQwMDhBNDhFQyAvKiBKU0hUTUxFbGVtZW50
V3JhcHBlckZhY3RvcnkuY3BwICovLAorCQkJCTkzOEU2NUYwMDlGMDk4NDAwMDhBNDhFQyAvKiBK
U0hUTUxFbGVtZW50V3JhcHBlckZhY3RvcnkuaCAqLywKKwkJCQlBQTYxQkI1MjIzMTY3NDczMDAy
RkUyNUEgLyogSlNNYXRoTUxFbGVtZW50V3JhcHBlckZhY3RvcnkuY3BwICovLAorCQkJCUFBNjFC
QjU0MjMxNjc0NzQwMDJGRTI1QSAvKiBKU01hdGhNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oICov
LAorCQkJCTg1NzREMUYxMEFERTYxMjIwMDRDQkExMSAvKiBKU1NWR0VsZW1lbnRXcmFwcGVyRmFj
dG9yeS5jcHAgKi8sCisJCQkJODU3NEQxRjIwQURFNjEyMjAwNENCQTExIC8qIEpTU1ZHRWxlbWVu
dFdyYXBwZXJGYWN0b3J5LmggKi8sCisJCQkJNDQ2RUU0RTgyNTVFMEQ5MjAwNDU0NDYzIC8qIExv
Y2FsaXphYmxlQWRkaXRpb25zLnN0cmluZ3Mub3V0ICovLAorCQkJCUZBQkU3MkZCMTA1OUMyMTEw
MEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8sCisJCQkJNDRBMjhBQUIxMkRG
QjhBQzAwQUU5MjNCIC8qIE1hdGhNTEVsZW1lbnRGYWN0b3J5LmggKi8sCisJCQkJRkFCRTcyRkMx
MDU5QzIxMTAwRDk5OUREIC8qIE1hdGhNTE5hbWVzLmNwcCAqLywKKwkJCQk0NEEyOEFBRTEyREZC
OEJGMDBBRTkyM0IgLyogTWF0aE1MTmFtZXMuaCAqLywKKwkJCQk3MUUyMTgzODE3MzU5RkI4MDA2
RTZFNEQgLyogUGx1Z0luc1Jlc291cmNlcy5oICovLAorCQkJCTcxRTIxODM5MTczNTlGQjgwMDZF
NkU0RCAvKiBQbHVnSW5zUmVzb3VyY2VzRGF0YS5jcHAgKi8sCisJCQkJOTkwOEIwRkQxQkNBRDA3
RDAwRUQzRjY0IC8qIFJlYWRhYmxlQnl0ZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCAqLywK
KwkJCQk5QjAzRDgwNjFCQjMxMTBEMDBCNzNGNjQgLyogUmVhZGFibGVCeXRlU3RyZWFtSW50ZXJu
YWxzQnVpbHRpbnMuaCAqLywKKwkJCQk5OTA4QjBGOTFCQ0FEMDdEMDBFRDBGNjUgLyogUmVhZGFi
bGVTdHJlYW1CdWlsdGlucy5jcHAgKi8sCisJCQkJOUIwM0Q4MDYxQkIzMTEwRDAwQjc2NEQ4IC8q
IFJlYWRhYmxlU3RyZWFtQnVpbHRpbnMuaCAqLywKKwkJCQk5OTA4QjBGRTFCQ0FEMDdEMDBFRDM1
NzIgLyogUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVyQnVpbHRpbnMuY3BwICovLAorCQkJCTk5MDhC
MEZGMUJDQUQwN0QwMEVEMzU3MiAvKiBSZWFkYWJsZVN0cmVhbUJZT0JSZWFkZXJCdWlsdGlucy5o
ICovLAorCQkJCTk5MDhCMEZBMUJDQUQwN0QwMEVEMEY2NSAvKiBSZWFkYWJsZVN0cmVhbURlZmF1
bHRDb250cm9sbGVyQnVpbHRpbnMuY3BwICovLAorCQkJCTk5MDhCMEZCMUJDQUQwN0QwMEVEMEY2
NSAvKiBSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyQnVpbHRpbnMuaCAqLywKKwkJCQk5
OTA4QjBGRTFCQ0FEMDdEMDBFRDBGNjUgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0UmVhZGVyQnVp
bHRpbnMuY3BwICovLAorCQkJCTk5MDhCMEZGMUJDQUQwN0QwMEVEMEY2NSAvKiBSZWFkYWJsZVN0
cmVhbURlZmF1bHRSZWFkZXJCdWlsdGlucy5oICovLAorCQkJCTk5MDhCMEZEMUJDQUQwN0QwMEVE
MEY2NSAvKiBSZWFkYWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCAqLywKKwkJCQk5QjAz
RDgwNjFCQjMxMTBEMDBCNzY0RDkgLyogUmVhZGFibGVTdHJlYW1JbnRlcm5hbHNCdWlsdGlucy5o
ICovLAorCQkJCTQzQjg1RUQyMThDQkVDNTIwMEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNz
QW5kQ29tcGF0aWJpbGl0eUVsZW1lbnRNYXAuY3BwICovLAorCQkJCTQzQjg1RUQzMThDQkVDNTIw
MEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0aWJpbGl0eUVsZW1lbnRNYXAu
Z3BlcmYgKi8sCisJCQkJMjZBQTBGOUQxOEQyQTE4QjAwNDE5MzgxIC8qIFNlbGVjdG9yUHNldWRv
RWxlbWVudFR5cGVNYXAuY3BwICovLAorCQkJCTI2QUEwRjlGMThEMkExQzEwMDQxOTM4MSAvKiBT
ZWxlY3RvclBzZXVkb0VsZW1lbnRUeXBlTWFwLmdwZXJmICovLAorCQkJCTdDRUI1N0VBMUY5NTY1
MTUwMDA5N0FFQyAvKiBTZXR0aW5ncy5jcHAgKi8sCisJCQkJN0NFQjU3RTkxRjk1NjUxNTAwMDk3
QUVDIC8qIFNldHRpbmdzLmggKi8sCisJCQkJOTkwOEIwRkQxQkNBRDA3RDAwRUQwRjU1IC8qIFN0
cmVhbUludGVybmFsc0J1aWx0aW5zLmNwcCAqLywKKwkJCQk5QjAzRDgwNjFCQjMxMTBEMDBCNzY0
QzkgLyogU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCAqLywKKwkJCQk4Mzg2QTk2RTE5RjYxRTRG
MDBFMUVDNEEgLyogU3R5bGVCdWlsZGVyR2VuZXJhdGVkLmNwcCAqLywKKwkJCQk4M0MwNUE1ODFB
Njg2MjEyMDA3RTVERUEgLyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZEZ1bmN0aW9ucy5jcHAgKi8s
CisJCQkJODNDMDVBNTkxQTY4NjIxMjAwN0U1REVBIC8qIFN0eWxlUHJvcGVydHlTaG9ydGhhbmRG
dW5jdGlvbnMuaCAqLywKKwkJCQk2NTY1ODFFNjA5RDE1MDhEMDAwRTYxRDcgLyogU1ZHRWxlbWVu
dEZhY3RvcnkuY3BwICovLAorCQkJCTY1NjU4MUU3MDlEMTUwOEQwMDBFNjFENyAvKiBTVkdFbGVt
ZW50RmFjdG9yeS5oICovLAorCQkJCUI1NjJEQjVGMTdEM0NENTYwMDEwQUY5NiAvKiBTVkdFbGVt
ZW50VHlwZUhlbHBlcnMuaCAqLywKKwkJCQk2NTY1ODFFODA5RDE1MDhEMDAwRTYxRDcgLyogU1ZH
TmFtZXMuY3BwICovLAorCQkJCTY1NjU4MUU5MDlEMTUwOEQwMDBFNjFENyAvKiBTVkdOYW1lcy5o
ICovLAorCQkJCTlCMDNEODA2MUJCMzExMEQwMEI3NjRFQSAvKiBUcmFuc2Zvcm1TdHJlYW1JbnRl
cm5hbHNCdWlsdGlucy5oICovLAorCQkJCUNEQUI2RDJGMTdDOTI1OTUwMEM2MEIzNCAvKiBVc2Vy
QWdlbnRTY3JpcHRzLmggKi8sCisJCQkJQ0RBQjZEMzAxN0M5MjU5NTAwQzYwQjM0IC8qIFVzZXJB
Z2VudFNjcmlwdHNEYXRhLmNwcCAqLywKKwkJCQk2NTY1ODFBRTA5RDE0RUU2MDAwRTYxRDcgLyog
VXNlckFnZW50U3R5bGVTaGVldHMuaCAqLywKKwkJCQk2NTY1ODFBRjA5RDE0RUU2MDAwRTYxRDcg
LyogVXNlckFnZW50U3R5bGVTaGVldHNEYXRhLmNwcCAqLywKKwkJCQkxQTE0MTRCMzEzQTBGMDUw
MDAxOTk5NkMgLyogV2ViS2l0Rm9udEZhbWlseU5hbWVzLmNwcCAqLywKKwkJCQkxQTE0MTRCNDEz
QTBGMDUwMDAxOTk5NkMgLyogV2ViS2l0Rm9udEZhbWlseU5hbWVzLmggKi8sCisJCQkJQzIxQkY3
NDIyMUNEOTYzQjAwMjI3OTc5IC8qIFdITFNMU3RhbmRhcmRMaWJyYXJ5LmggKi8sCisJCQkJMUM1
MEM0OTUyMkM4NEYyNDAwQTZFNEJFIC8qIFdITFNMU3RhbmRhcmRMaWJyYXJ5RnVuY3Rpb25NYXAu
Y3BwICovLAorCQkJCTUxNzQ4RkEyMUNDNkVFRUIwMDcyOEQ4NCAvKiBXb3JrZXJHbG9iYWxTY29w
ZUNvbnN0cnVjdG9ycy5pZGwgKi8sCisJCQkJOTkwOEIwRkQxQkNBRDA3RDAwRUQwRjc1IC8qIFdy
aXRhYmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuY3BwICovLAorCQkJCTlCMDNEODA2MUJCMzEx
MEQwMEI3NjRFOSAvKiBXcml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmggKi8sCisJCQkJ
NjU2NTgxRUEwOUQxNTA4RDAwMEU2MUQ3IC8qIFhMaW5rTmFtZXMuY3BwICovLAorCQkJCTY1NjU4
MUVCMDlEMTUwOEQwMDBFNjFENyAvKiBYTGlua05hbWVzLmggKi8sCisJCQkJQTgzM0M4MEEwQTJD
RjI1NjAwRDU3NjY0IC8qIFhNTE5hbWVzLmNwcCAqLywKKwkJCQlBODMzQzgwQjBBMkNGMjU2MDBE
NTc2NjQgLyogWE1MTmFtZXMuaCAqLywKKwkJCQlFMTVBMzZEODExMDQ1NzI3MDBCN0I2MzkgLyog
WE1MTlNOYW1lcy5jcHAgKi8sCisJCQkJRTE1QTM2RDYxMTA0NTcyMDAwQjdCNjM5IC8qIFhNTE5T
TmFtZXMuaCAqLywKKwkJCSk7CisJCQluYW1lID0gIkRlcml2ZWQgU291cmNlcyI7CisJCQlwYXRo
ID0gRGVyaXZlZFNvdXJjZXMvV2ViQ29yZTsKKwkJCXNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNU
U19ESVI7CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1c2VzVGFicyA9IDA7CisJCX07CisJCTY1NkI4
NEQ3MEFFQTFDRTkwMEEwOTVCNCAvKiBuZXR3b3JrICovID0geworCQkJaXNhID0gUEJYR3JvdXA7
CisJCQljaGlsZHJlbiA9ICgKKwkJCQlCMkYzNEZFNzBFODJGODE3MDBGNjI3Q0QgLyogY2YgKi8s
CisJCQkJN0U3REUxRkUxOTVDRUYyRDAwMzUzNjNCIC8qIGNvY29hICovLAorCQkJCTQ0OTdENThD
MEVCQTg1NEYwMEExMDU1MiAvKiBpb3MgKi8sCisJCQkJNjU2Qjg0RTcwQUVBMURBRTAwQTA5NUI0
IC8qIG1hYyAqLywKKwkJCQk5MzRGNzEzNzBENUE2RUZGMDAwMThENjkgLyogQXV0aGVudGljYXRp
b25DaGFsbGVuZ2VCYXNlLmNwcCAqLywKKwkJCQk5MzRGNzEzOTBENUE2RjEwMDAwMThENjkgLyog
QXV0aGVudGljYXRpb25DaGFsbGVuZ2VCYXNlLmggKi8sCisJCQkJRTEyNDc0ODMxMEFBMTYxRDAw
Qjc5NDkzIC8qIEF1dGhlbnRpY2F0aW9uQ2xpZW50LmggKi8sCisJCQkJMkVERUYxRUQxMjFCMEVG
QzAwNzI2REIyIC8qIEJsb2JEYXRhLmNwcCAqLywKKwkJCQkyRURFRjFFRTEyMUIwRUZDMDA3MjZE
QjIgLyogQmxvYkRhdGEuaCAqLywKKwkJCQlFMUQzMUNEQTE5MTk2MDIwMDAxMDA1QTMgLyogQmxv
YkRhdGFGaWxlUmVmZXJlbmNlLmNwcCAqLywKKwkJCQlFMUQzMUNEQjE5MTk2MDIwMDAxMDA1QTMg
LyogQmxvYkRhdGFGaWxlUmVmZXJlbmNlLmggKi8sCisJCQkJRTFDOTRBRjcxOTEzMDNGMDAwRDVB
ODkzIC8qIEJsb2JQYXJ0LmggKi8sCisJCQkJRTE0QTk0RDYxNkRGREY5NTAwNjhERTgyIC8qIEJs
b2JSZWdpc3RyeS5jcHAgKi8sCisJCQkJMkVERUYxRUYxMjFCMEVGQzAwNzI2REIyIC8qIEJsb2JS
ZWdpc3RyeS5oICovLAorCQkJCTJFREVGMUYwMTIxQjBFRkMwMDcyNkRCMiAvKiBCbG9iUmVnaXN0
cnlJbXBsLmNwcCAqLywKKwkJCQkyRURFRjFGMTEyMUIwRUZDMDA3MjZEQjIgLyogQmxvYlJlZ2lz
dHJ5SW1wbC5oICovLAorCQkJCTJFQjRCQ0QwMTIxRjAzRTMwMEVDNDg4NSAvKiBCbG9iUmVzb3Vy
Y2VIYW5kbGUuY3BwICovLAorCQkJCTJFQjRCQ0QxMTIxRjAzRTMwMEVDNDg4NSAvKiBCbG9iUmVz
b3VyY2VIYW5kbGUuaCAqLywKKwkJCQlFNDNBRjhFNDFBQzVCN0REMDBDQTcxN0UgLyogQ2FjaGVW
YWxpZGF0aW9uLmNwcCAqLywKKwkJCQlFNDNBRjhFNTFBQzVCN0REMDBDQTcxN0UgLyogQ2FjaGVW
YWxpZGF0aW9uLmggKi8sCisJCQkJOTFCOEYwQjMyMTk1M0Q2NTAwMEMyQjAwIC8qIENlcnRpZmlj
YXRlU3VtbWFyeS5oICovLAorCQkJCTdBNTY5OTZFMjA4NkM2MTgwMDBFMDQzMyAvKiBDb29raWVS
ZXF1ZXN0SGVhZGVyRmllbGRQcm94eS5oICovLAorCQkJCUUxM0YwMUVBMTI3MEUxMEQwMERGQkE3
MSAvKiBDb29raWVTdG9yYWdlLmggKi8sCisJCQkJNTE0Qzc2NTkwQ0U5MjNBMTAwN0VGM0NEIC8q
IENyZWRlbnRpYWwuaCAqLywKKwkJCQk1MTRDNzY1ODBDRTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVu
dGlhbEJhc2UuY3BwICovLAorCQkJCTM3OTI5MTc4MTk4NUVGMzkwMEY0QjY2MSAvKiBDcmVkZW50
aWFsQmFzZS5oICovLAorCQkJCTUxQTA1MjMyMTA1ODc3NEYwMENDOUU5NSAvKiBDcmVkZW50aWFs
U3RvcmFnZS5jcHAgKi8sCisJCQkJNTFBMDUyMzExMDU4Nzc0RjAwQ0M5RTk1IC8qIENyZWRlbnRp
YWxTdG9yYWdlLmggKi8sCisJCQkJRTRBMDA3ODQxQjgyMEVEMzAwMkM1QTZFIC8qIERhdGFVUkxE
ZWNvZGVyLmNwcCAqLywKKwkJCQlFNEEwMDc4MjFCODIwRUM4MDAyQzVBNkUgLyogRGF0YVVSTERl
Y29kZXIuaCAqLywKKwkJCQkxQUY4RTEzMjEyNTY1QTQ0NDUyMzBGRjcgLyogRE5TLmNwcCAqLywK
KwkJCQlCMkYzNEZFNTBFODJGODE0MDBGNjI3Q0QgLyogRE5TLmggKi8sCisJCQkJN0M2MDEyODA2
MDA3OEJCNzBFMzY3QTk1IC8qIEROU1Jlc29sdmVRdWV1ZS5jcHAgKi8sCisJCQkJRkE2RTQ2NkZD
RDA0MThBOTk2NkE1QjYwIC8qIEROU1Jlc29sdmVRdWV1ZS5oICovLAorCQkJCTUxNEM3NjVBMENF
OTIzQTEwMDdFRjNDRCAvKiBGb3JtRGF0YS5jcHAgKi8sCisJCQkJNTE0Qzc2NUIwQ0U5MjNBMTAw
N0VGM0NEIC8qIEZvcm1EYXRhLmggKi8sCisJCQkJMDg1QjkyQjgwRUZERTczRDAwRTYxMjNDIC8q
IEZvcm1EYXRhQnVpbGRlci5jcHAgKi8sCisJCQkJMDg1QjkyQjkwRUZERTczRDAwRTYxMjNDIC8q
IEZvcm1EYXRhQnVpbGRlci5oICovLAorCQkJCTQ2QzA5NjIwMjNENzhERDYwMDY1N0MwOSAvKiBI
VFRQQ29va2llQWNjZXB0UG9saWN5LmggKi8sCisJCQkJMEI4QzU2RDMwRjI4NjI3RjAwMDUwMkUx
IC8qIEhUVFBIZWFkZXJNYXAuY3BwICovLAorCQkJCTUxNEM3NjVDMENFOTIzQTEwMDdFRjNDRCAv
KiBIVFRQSGVhZGVyTWFwLmggKi8sCisJCQkJMUFDOTAwQkYxOTQzQUYzRDAwODYyNUI1IC8qIEhU
VFBIZWFkZXJOYW1lcy5pbiAqLywKKwkJCQk0MTYxNEE3NjFEQTY0MjM2MDA0QUQwNkYgLyogSFRU
UEhlYWRlclZhbHVlcy5jcHAgKi8sCisJCQkJNDE2MTRBNzcxREE2NDIzNjAwNEFEMDZGIC8qIEhU
VFBIZWFkZXJWYWx1ZXMuaCAqLywKKwkJCQk1MTRDNzY1RDBDRTkyM0ExMDA3RUYzQ0QgLyogSFRU
UFBhcnNlcnMuY3BwICovLAorCQkJCTUxNEM3NjVFMENFOTIzQTEwMDdFRjNDRCAvKiBIVFRQUGFy
c2Vycy5oICovLAorCQkJCTYyOEQyMTRCMTIxMzFFRDEwMDU1RENGQyAvKiBOZXR3b3JraW5nQ29u
dGV4dC5oICovLAorCQkJCTQxNkQ3NTlGMjBDNjQ0MTMwMEQwMkQyQyAvKiBOZXR3b3JrTG9hZElu
Zm9ybWF0aW9uLmggKi8sCisJCQkJOEE4MUJGODQxMURDRkQ5MDAwREEyQjk4IC8qIE5ldHdvcmtM
b2FkTWV0cmljcy5oICovLAorCQkJCTFBN0ZBNjFBMEREQTNCQkUwMDI4RjhBNSAvKiBOZXR3b3Jr
U3RhdGVOb3RpZmllci5jcHAgKi8sCisJCQkJMUE3RkE2MTgwRERBM0IzQTAwMjhGOEE1IC8qIE5l
dHdvcmtTdGF0ZU5vdGlmaWVyLmggKi8sCisJCQkJNUMzQzg1NkMxRDVBN0FEMzAwODhCOUVDIC8q
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAgKi8sCisJCQkJRTEzRUYzNDIxNjg0RUNGNDAwMzRD
ODNGIC8qIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oICovLAorCQkJCUNEQ0Q0MUU1MUMzRERCMDkw
MDk2NUQ5OSAvKiBQYXJzZWRDb250ZW50UmFuZ2UuY3BwICovLAorCQkJCUNEQ0Q0MUU2MUMzRERC
MDkwMDk2NUQ5OSAvKiBQYXJzZWRDb250ZW50UmFuZ2UuaCAqLywKKwkJCQk0NDc5NTgwMjE2NDNC
NDdCMDAxRTBBN0YgLyogUGFyc2VkQ29udGVudFR5cGUuY3BwICovLAorCQkJCTQ0Nzk1ODAzMTY0
M0I0N0IwMDFFMEE3RiAvKiBQYXJzZWRDb250ZW50VHlwZS5oICovLAorCQkJCTVDNEEwRkQ5MjVD
MzQ0NkQwMEQ5RUU5NyAvKiBQYXJzZWRSZXF1ZXN0UmFuZ2UuY3BwICovLAorCQkJCTVDNEEwRkQ4
MjVDMzQ0NkMwMEQ5RUU5NyAvKiBQYXJzZWRSZXF1ZXN0UmFuZ2UuaCAqLywKKwkJCQkzN0JBQUU1
NzE5ODBEMUREMDA1REZFNzEgLyogUHJvdGVjdGlvblNwYWNlLmggKi8sCisJCQkJNTE0Qzc2NUYw
Q0U5MjNBMTAwN0VGM0NEIC8qIFByb3RlY3Rpb25TcGFjZUJhc2UuY3BwICovLAorCQkJCTUxNEM3
NjYwMENFOTIzQTEwMDdFRjNDRCAvKiBQcm90ZWN0aW9uU3BhY2VCYXNlLmggKi8sCisJCQkJNTFB
MDUyNTUxMDU4ODc0MDAwQ0M5RTk1IC8qIFByb3RlY3Rpb25TcGFjZUhhc2guaCAqLywKKwkJCQkx
QUY4RTEzMjEyNTY1QTQ0MDAyMzBGRjcgLyogUHJveHlTZXJ2ZXIuY3BwICovLAorCQkJCTFBRjhF
MTE5MTI1NjU5MjYwMDIzMEZGNyAvKiBQcm94eVNlcnZlci5oICovLAorCQkJCTkzNEY3MTNEMEQ1
QTZGMjgwMDAxOEQ2OSAvKiBSZXNvdXJjZUVycm9yQmFzZS5jcHAgKi8sCisJCQkJOTM0RjcxM0Iw
RDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggKi8sCisJCQkJNTE0Qzc2NjMw
Q0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlLmNwcCAqLywKKwkJCQk1MTRDNzY2NDBD
RTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuaCAqLywKKwkJCQlFMUJBMDAzMDE2RkI5
MkFDMDBCQTdBMzUgLyogUmVzb3VyY2VIYW5kbGVDbGllbnQuY3BwICovLAorCQkJCTUxNEM3NjY1
MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUNsaWVudC5oICovLAorCQkJCTUxNEM3
NjY2MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVybmFsLmggKi8sCisJCQkJ
RTQyOTVGQTMxMkIwNjE0RTAwRDFBQ0UwIC8qIFJlc291cmNlTG9hZFByaW9yaXR5LmggKi8sCisJ
CQkJNTE0Qzc2NjcwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlUmVxdWVzdEJhc2UuY3BwICov
LAorCQkJCTUxNEM3NjY4MENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZVJlcXVlc3RCYXNlLmgg
Ki8sCisJCQkJNTE0Qzc2NjkwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlUmVzcG9uc2VCYXNl
LmNwcCAqLywKKwkJCQk1MTRDNzY2QTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VSZXNwb25z
ZUJhc2UuaCAqLywKKwkJCQlDRTdBNkMyNzIwODUzN0UyMDBGQTJCNDYgLyogU2FtZVNpdGVJbmZv
LmNwcCAqLywKKwkJCQlDRTdBNkMyNjIwODUzN0UyMDBGQTJCNDYgLyogU2FtZVNpdGVJbmZvLmgg
Ki8sCisJCQkJREYxOUUyQUEyNDc3MjlBNjAwN0JEQUNCIC8qIFNob3VsZFJlbGF4VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nLmggKi8sCisJCQkJNTEwRDRBMkUxMDMxNjVFRTAwNDlFQTU0IC8qIFNv
Y2tldFN0cmVhbUVycm9yLmggKi8sCisJCQkJNTEwRDRBMzAxMDMxNjVFRTAwNDlFQTU0IC8qIFNv
Y2tldFN0cmVhbUhhbmRsZS5jcHAgKi8sCisJCQkJNTEwRDRBMzExMDMxNjVFRTAwNDlFQTU0IC8q
IFNvY2tldFN0cmVhbUhhbmRsZS5oICovLAorCQkJCTUxMEQ0QTMyMTAzMTY1RUUwMDQ5RUE1NCAv
KiBTb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQuaCAqLywKKwkJCQk1QzY2OEU2NDFFN0M2QzM1MDBE
MzJCM0IgLyogU29ja2V0U3RyZWFtSGFuZGxlSW1wbC5jcHAgKi8sCisJCQkJNUM5RUYyRjIyMUYw
NjE3MTAwM0JEQzU2IC8qIFN0b3JhZ2VTZXNzaW9uUHJvdmlkZXIuaCAqLywKKwkJCQk0NjgyRDFG
RjFGNzk3ODIzMDBDODYzREIgLyogU3RvcmVkQ3JlZGVudGlhbHNQb2xpY3kuaCAqLywKKwkJCQlF
MTgwODExMDE2RkNGNDJFMDBCODBEMDcgLyogU3luY2hyb25vdXNMb2FkZXJDbGllbnQuY3BwICov
LAorCQkJCUUxODA4MTE1MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVu
dC5oICovLAorCQkJCTVDQzc5MDBEMjY2QUZBODkwMDY5MjRGRSAvKiBUaW1pbmdBbGxvd09yaWdp
bi5jcHAgKi8sCisJCQkJNUNDNzkwMEIyNjZBRkE4ODAwNjkyNEZFIC8qIFRpbWluZ0FsbG93T3Jp
Z2luLmggKi8sCisJCQkpOworCQkJcGF0aCA9IG5ldHdvcms7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQk2NTZCODRFNzBBRUExREFFMDBBMDk1QjQgLyogbWFjICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1MTRDNzY0MjBDRTkyMzRF
MDA3RUYzQ0QgLyogQXV0aGVudGljYXRpb25NYWMuaCAqLywKKwkJCQk1MTRDNzY0MzBDRTkyMzRF
MDA3RUYzQ0QgLyogQXV0aGVudGljYXRpb25NYWMubW0gKi8sCisJCQkJRTE2NEEyRUIxOTFBRTYz
NTAwMTA3MzdEIC8qIEJsb2JEYXRhRmlsZVJlZmVyZW5jZU1hYy5tbSAqLywKKwkJCQlFMTNGMDFG
MDEyNzBFMTkwMDBERkJBNzEgLyogQ29va2llU3RvcmFnZU1hYy5tbSAqLywKKwkJCQlFMUI0Q0Qy
NDEwQjMyMkUyMDBCRkZEN0UgLyogQ3JlZGVudGlhbFN0b3JhZ2VNYWMubW0gKi8sCisJCQkJNTE0
Qzc2NDQwQ0U5MjM0RTAwN0VGM0NEIC8qIEZvcm1EYXRhU3RyZWFtTWFjLmggKi8sCisJCQkJNTE0
Qzc2NDUwQ0U5MjM0RTAwN0VGM0NEIC8qIEZvcm1EYXRhU3RyZWFtTWFjLm1tICovLAorCQkJCTFB
N0ZBNjQ3MEREQTNDQkEwMDI4RjhBNSAvKiBOZXR3b3JrU3RhdGVOb3RpZmllck1hYy5jcHAgKi8s
CisJCQkJNTE0Qzc2NDYwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291cmNlRXJyb3JNYWMubW0gKi8s
CisJCQkJNTE0Qzc2NDcwQ0U5MjM0RTAwN0VGM0NEIC8qIFJlc291cmNlSGFuZGxlTWFjLm1tICov
LAorCQkJCUUxODA4MTE0MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVu
dC5tbSAqLywKKwkJCQkxRkFGQkYxNjE1QTVGQTUyMDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmgg
Ki8sCisJCQkJMUZBRkJGMTcxNUE1RkE1MjAwMDgzQTIwIC8qIFVUSVV0aWxpdGllcy5tbSAqLywK
KwkJCQlFMTUyNTUxMzE2RkQyMzRGMDAzRDdBREIgLyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNP
cGVyYXRpb25RdWV1ZURlbGVnYXRlLmggKi8sCisJCQkJRTE1MjU1MTQxNkZEMjM0RjAwM0Q3QURC
IC8qIFdlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbSAqLywK
KwkJCQkzN0Y4MThGQjBENjU3NjA2MDA1RTFGMDUgLyogV2ViQ29yZVVSTFJlc3BvbnNlLmggKi8s
CisJCQkJMzdGODE4RkMwRDY1NzYwNjAwNUUxRjA1IC8qIFdlYkNvcmVVUkxSZXNwb25zZS5tbSAq
LywKKwkJCSk7CisJCQlwYXRoID0gbWFjOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJ
fTsKKwkJNjU4MkExNDgwOTk5OUQ2QzAwQkVFQjZEIC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUFGRkM0NEQxRDVFN0VDNzAwMjY3QTY2IC8q
IEJsb2NrbGlzdFVwZGF0ZXIuaCAqLywKKwkJCQkxQUZGQzQ0RTFENUU3RUM3MDAyNjdBNjYgLyog
QmxvY2tsaXN0VXBkYXRlci5tbSAqLywKKwkJCQlGNTg3ODRGMDAyREUzNzU5MDFFQTQxMjIgLyog
Q3Vyc29yTWFjLm1tICovLAorCQkJCUY0QjJBOTA2MjY1MDJCQTAwMDlFNzI4NiAvKiBEYXRhRGV0
ZWN0b3JIaWdobGlnaHQuaCAqLywKKwkJCQlGNEIyQTkwODI2NTAyQkMwMDA5RTcyODYgLyogRGF0
YURldGVjdG9ySGlnaGxpZ2h0Lm1tICovLAorCQkJCUUxQkE2NkYwMTc0MkJEODYwMEMyMDI1MSAv
KiBEeW5hbWljTGlua2VySW50ZXJwb3NpbmcuaCAqLywKKwkJCQk1MTBBOTFFNTI0Q0ZDQzE4MDBC
RkQ4OUMgLyogSElERGV2aWNlLmNwcCAqLywKKwkJCQk1MTBBOTFFMjI0Q0ZDQzE4MDBCRkQ4OUMg
LyogSElERGV2aWNlLmggKi8sCisJCQkJNTEwQTkxRTQyNENGQ0MxODAwQkZEODlDIC8qIEhJREVs
ZW1lbnQuY3BwICovLAorCQkJCTUxMEE5MUUzMjRDRkNDMTgwMEJGRDg5QyAvKiBISURFbGVtZW50
LmggKi8sCisJCQkJOTM1QzQ3NkUwOUFDNEQ3MzAwQTZBQUI0IC8qIEtleUV2ZW50TWFjLm1tICov
LAorCQkJCUY0NEE1RjU3MUZFRDM4MzAwMDdGNTk0NCAvKiBMZWdhY3lOU1Bhc3RlYm9hcmRUeXBl
cy5oICovLAorCQkJCTA2RTgxRUVCMEFCNURBOTcwMEM4NzgzNyAvKiBMb2NhbEN1cnJlbnRHcmFw
aGljc0NvbnRleHRNYWMubW0gKi8sCisJCQkJNDQ1Nzc1RTQyMDQ3MkY3MzAwOERDRTVEIC8qIExv
Y2FsRGVmYXVsdFN5c3RlbUFwcGVhcmFuY2UuaCAqLywKKwkJCQk0NDU3NzVFOTIwNDczMDNCMDA4
RENFNUQgLyogTG9jYWxEZWZhdWx0U3lzdGVtQXBwZWFyYW5jZS5tbSAqLywKKwkJCQkxNDAyNjQ1
RDBBRkRDMTlCMDA1OTE5RTIgLyogTG9nZ2luZ01hYy5tbSAqLywKKwkJCQlDRDhBQ0E4RDFEMjM5
NzE5MDBFQ0M1OUUgLyogTWVkaWFSZW1vdGVTb2Z0TGluay5oICovLAorCQkJCUNEOEFDQThDMUQy
Mzk3MTkwMEVDQzU5RSAvKiBNZWRpYVJlbW90ZVNvZnRMaW5rLm1tICovLAorCQkJCTkzNTAwRjMx
MTNGREUzQkUwMDk5RUMyNCAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5oICovLAorCQkJCTUyRjUy
RTEwMTRBMDEzNEYwMEFDQzM5NyAvKiBOU1Njcm9sbGVySW1wRGV0YWlscy5tbSAqLywKKwkJCQk0
QjI3MDk4MTBBRjJFNUUwMDA2NTEyN0YgLyogUGFzdGVib2FyZE1hYy5tbSAqLywKKwkJCQkxQUY1
RTRFMTFFNTc3OUIxMDA0QTFGMDEgLyogUGFzdGVib2FyZFdyaXRlci5oICovLAorCQkJCTFBRjVF
NEUwMUU1Nzc5QjEwMDRBMUYwMSAvKiBQYXN0ZWJvYXJkV3JpdGVyLm1tICovLAorCQkJCUJDQUE0
ODZFMTRBMDUyNTMwMDg4RkFDNCAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oICovLAorCQkJ
CUJDQUE0ODZEMTRBMDUyNTMwMDg4RkFDNCAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbSAq
LywKKwkJCQlDNUY3NjVCQTE0RTFFQ0Y0MDA2Qzg5OUIgLyogUGxhdGZvcm1QYXN0ZWJvYXJkTWFj
Lm1tICovLAorCQkJCUJDOTREMTA3MEMyNzRGODgwMDZCQzYxNyAvKiBQbGF0Zm9ybVNjcmVlbk1h
Yy5tbSAqLywKKwkJCQkyOUU0RDhFMDE2QjA5NTk4MDBDODQ3MDQgLyogUGxhdGZvcm1TcGVlY2hT
eW50aGVzaXplck1hYy5tbSAqLywKKwkJCQlDREEyOUExNTFDQkRBNTZDMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uSW50ZXJmYWNlTWFjLmggKi8sCisJCQkJQ0RBMjlBMTQxQ0JEQTU2QzAwOTAx
Q0NGIC8qIFBsYXliYWNrU2Vzc2lvbkludGVyZmFjZU1hYy5tbSAqLywKKwkJCQkxQUZGQzQ0RjFE
NUU3RUM3MDAyNjdBNjYgLyogUGx1Z2luQmxvY2tsaXN0LmggKi8sCisJCQkJMUFGRkM0NTAxRDVF
N0VDNzAwMjY3QTY2IC8qIFBsdWdpbkJsb2NrbGlzdC5tbSAqLywKKwkJCQk0NjM0NTkyQjFBQzIy
NzEwMDBFQ0I3MUMgLyogUG93ZXJPYnNlcnZlck1hYy5jcHAgKi8sCisJCQkJNDZEQkI2NEUxQUI4
Qzk2RjAwRDlBODEzIC8qIFBvd2VyT2JzZXJ2ZXJNYWMuaCAqLywKKwkJCQkwMDgxRkVGRTE2QjBB
MkI2MDA4QUFBN0EgLyogUHVibGljU3VmZml4TWFjLm1tICovLAorCQkJCUJDQUUxRkE1MTI5MzlE
QjcwMDRDQjAyNiAvKiBTY3JvbGxBbmltYXRvck1hYy5oICovLAorCQkJCUJDNTExNTZEMTJCMTc0
OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywKKwkJCQlCQzhCODUzQzBFN0M3
RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywKKwkJCQlCQ0VGODY5RTBFODQ0
RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8sCisJCQkJNUIxRTBFNDMyNUQx
NjI5QjAwMjcyMjgxIC8qIFNjcm9sbGluZ0VmZmVjdHNDb250cm9sbGVyLm1tICovLAorCQkJCTkz
NTM2NzZBMDlBRUQ4OEIwMEQzNUNENiAvKiBTY3JvbGxWaWV3TWFjLm1tICovLAorCQkJCTA3N0FG
MTQxMThGNEIxQkIwMDAxRUQ2MSAvKiBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlTWFjLmggKi8s
CisJCQkJMDc3QUYxNDIxOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybURhdGFD
dWVNYWMubW0gKi8sCisJCQkJODRCMkIyNEYwNTZCRjE1RjAwRDJCNzcxIC8qIFNTTEtleUdlbmVy
YXRvck1hYy5tbSAqLywKKwkJCQlFQ0E2ODBDNjFFNjc3MjQ1MDA3MzFEMjAgLyogU3RyaW5nVXRp
bGl0aWVzLmggKi8sCisJCQkJRUNBNjgwQzgxRTY3NzMwQjAwNzMxRDIwIC8qIFN0cmluZ1V0aWxp
dGllcy5tbSAqLywKKwkJCQk5M0IyRDgxNzBGOTkyMEVFMDA2QUU2QjIgLyogU3VkZGVuVGVybWlu
YXRpb24ubW0gKi8sCisJCQkJQkNFNjU5RTUwRUE5MkZCMjAwN0U0NTMzIC8qIFRoZW1lTWFjLmgg
Ki8sCisJCQkJQkNFNjU5RTgwRUE5MkZGQTAwN0U0NTMzIC8qIFRoZW1lTWFjLm1tICovLAorCQkJ
CTUxREY2RDdGMEI5MkExOEUwMEMyREM4NSAvKiBUaHJlYWRDaGVjay5tbSAqLywKKwkJCQk4Njgx
NjBEMzE4NzY2OUU3MDAyMUU3OUQgLyogVXNlckFjdGl2aXR5TWFjLm1tICovLAorCQkJCUEzQUY5
RDg0MjAzMjU2QTMwMDZDQUQwNiAvKiBVc2VyQWdlbnRNYWMubW0gKi8sCisJCQkJODNDNDVCOEIx
REMyQjY2MzAwODg3MUJBIC8qIFZhbGlkYXRpb25CdWJibGVNYWMubW0gKi8sCisJCQkJNTJCMEQ0
QzExQzU3RkY5MTAwNzdDRTUzIC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZU1hYy5oICovLAor
CQkJCTUyMTMxRTVBMUM0RjE1NjEwMDMzRjgwMiAvKiBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VN
YWMubW0gKi8sCisJCQkJQ0RDNjlERDgxNjM3MUZEMzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2Ny
ZWVuUGxhY2Vob2xkZXJWaWV3LmggKi8sCisJCQkJQ0RDNjlERDkxNjM3MUZEMzAwN0MzOERGIC8q
IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tICovLAorCQkJCUNEQzY5REQ0MTYz
MjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmggKi8sCisJCQkJ
Q0RDNjlERDUxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcu
bW0gKi8sCisJCQkJQ0QxMjdERUExNEYzMDk3OTAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxsU2NyZWVu
V2luZG93LmggKi8sCisJCQkJQ0QxMjdERUIxNEYzMDk3OTAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxs
U2NyZWVuV2luZG93Lm1tICovLAorCQkJCUY0RTU3RURGMjEzRjQzNEEwMDRFQTk4RSAvKiBXZWJD
b3JlTlNGb250TWFuYWdlckV4dHJhcy5oICovLAorCQkJCUY0RTU3RUUwMjEzRjQzNEEwMDRFQTk4
RSAvKiBXZWJDb3JlTlNGb250TWFuYWdlckV4dHJhcy5tbSAqLywKKwkJCQlDNUI0QzI0QjE1MDky
MzZDMDBBNkVGMzcgLyogV2ViQ29yZU5TVVJMRXh0cmFzLmggKi8sCisJCQkJQzVCNEMyNEMxNTA5
MjM2QzAwQTZFRjM3IC8qIFdlYkNvcmVOU1VSTEV4dHJhcy5tbSAqLywKKwkJCQlERDA1RkUwQjBC
OEJBM0M2MDA5QUNERkUgLyogV2ViQ29yZU9iakNFeHRyYXMuaCAqLywKKwkJCQlCNTBGNUI4MDBF
OTZDRDk5MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gKi8sCisJCQkJQkU4NTVGN0Yw
NzAxRTgzNTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3LmggKi8sCisJCQkJQkU4NTYwNTEwNzAxRjkx
MTAwMjM5NzY5IC8qIFdlYkNvcmVWaWV3Lm0gKi8sCisJCQkJMUFGRkM0NTExRDVFN0VDNzAwMjY3
QTY2IC8qIFdlYkdMQmxvY2tsaXN0LmggKi8sCisJCQkJMUFGRkM0NTIxRDVFN0VDNzAwMjY3QTY2
IC8qIFdlYkdMQmxvY2tsaXN0Lm1tICovLAorCQkJCUUxQTMxNjJCMTM0QkMzMkQwMDdDOUE0RiAv
KiBXZWJOU0F0dHJpYnV0ZWRTdHJpbmdFeHRyYXMuaCAqLywKKwkJCQlFMUEzMTYyQzEzNEJDMzJE
MDA3QzlBNEYgLyogV2ViTlNBdHRyaWJ1dGVkU3RyaW5nRXh0cmFzLm1tICovLAorCQkJCUNENTg5
NkUwMUNEMkIxNTEwMEIzQkNDOCAvKiBXZWJQbGF5YmFja0NvbnRyb2xzTWFuYWdlci5oICovLAor
CQkJCUNENTg5NkRGMUNEMkIxNTEwMEIzQkNDOCAvKiBXZWJQbGF5YmFja0NvbnRyb2xzTWFuYWdl
ci5tbSAqLywKKwkJCQk5MzgwRjQ3NzA5QTExQUNDMDAxRkRCMzQgLyogV2lkZ2V0TWFjLm1tICov
LAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9
OworCQk2NTk5OEE2NTBFNUY1RkQzMDA0RTA5N0EgLyogaW1hZ2VzICovID0geworCQkJaXNhID0g
UEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkyRDUwQTRCNTFDRTEwRTAwMDAxOTgwNDkg
LyogQXR0YWNobWVudFBsYWNlaG9sZGVyLnBuZyAqLywKKwkJCQkyRDUwQTRCNjFDRTEwRTAwMDAx
OTgwNDkgLyogQXR0YWNobWVudFBsYWNlaG9sZGVyQDJ4LnBuZyAqLywKKwkJCQlFNTlERDRCNzIx
MDk4Mjg1MDAzQzhCNDcgLyogTGlzdEJ1dHRvbkFycm93LnBuZyAqLywKKwkJCQlFNTE2Njk4RjIw
RkY5OTE2MDA5RDJDMjcgLyogTGlzdEJ1dHRvbkFycm93QDJ4LnBuZyAqLywKKwkJCSk7CisJCQlu
YW1lID0gaW1hZ2VzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNjVCRjAy
MTgwOTc0ODA2MzAwQzQzMTk2IC8qIHBhZ2UgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCTVENTk3NUI1MTk2MzYyQkUwMEQwMDg3OCAvKiBjb2NvYSAqLywK
KwkJCQlDRTE3QUQxNDFDNTg1MjJGMDA1RjQ3OTkgLyogY3NwICovLAorCQkJCTE4QTZDRDZGMEQ4
RjIwMjUwMDFEQzNDRSAvKiBpb3MgKi8sCisJCQkJOTNDMDlBODIwQjA2NEYwNTAwNUFCRDREIC8q
IG1hYyAqLywKKwkJCQkxQUY2MkVFMTE0REEyMkE3MDA0MTU1NkMgLyogc2Nyb2xsaW5nICovLAor
CQkJCTQ2Qjk1MTkzMjA3RDYzMkYwMEE3RDJERCAvKiBBYnN0cmFjdERPTVdpbmRvdy5jcHAgKi8s
CisJCQkJNDZCOTUxOEEyMDdENjMyODAwQTdEMkREIC8qIEFic3RyYWN0RE9NV2luZG93LmggKi8s
CisJCQkJNDZCOTUxOTQyMDdENjMzMDAwQTdEMkREIC8qIEFic3RyYWN0RnJhbWUuY3BwICovLAor
CQkJCTQ2Qjk1MThGMjA3RDYzMkIwMEE3RDJERCAvKiBBYnN0cmFjdEZyYW1lLmggKi8sCisJCQkJ
MEY3MDQ5NUQyMTFCNTI0MjAwMzY5OTY4IC8qIEFjdGl2aXR5U3RhdGUuY3BwICovLAorCQkJCTcy
NEVFNTRFMURDN0YyNUIwMEE5MUZGQiAvKiBBY3Rpdml0eVN0YXRlLmggKi8sCisJCQkJNzI0RUU1
NEYxREM3RjI1QjAwQTkxRkZCIC8qIEFjdGl2aXR5U3RhdGVDaGFuZ2VPYnNlcnZlci5oICovLAor
CQkJCUJDRjQ4Q0U2MTM3MEQxMTQwMDRFODdENiAvKiBBZGp1c3RWaWV3U2l6ZU9yTm90LmggKi8s
CisJCQkJQ0VEQTEyRDYxNTJDQTFDQjAwRDlFMDhEIC8qIEFsdGVybmF0aXZlVGV4dENsaWVudC5o
ICovLAorCQkJCUM5RDQ2NzA0MUU2MEMzRUIwMDgxOTVGQiAvKiBBdXRvcGxheUV2ZW50LmggKi8s
CisJCQkJNDU4MzBENEIxNjc5QjRGODAwQUNGOEMzIC8qIEF1dG9zY3JvbGxDb250cm9sbGVyLmNw
cCAqLywKKwkJCQk0NTgzMEQ0QzE2NzlCNEY4MDBBQ0Y4QzMgLyogQXV0b3Njcm9sbENvbnRyb2xs
ZXIuaCAqLywKKwkJCQlCQzEyNEVFNDBDMjY0MUNEMDA5RTIzNDkgLyogQmFyUHJvcC5jcHAgKi8s
CisJCQkJQkMxMjRFRTUwQzI2NDFDRDAwOUUyMzQ5IC8qIEJhclByb3AuaCAqLywKKwkJCQlCQzEy
NEVFNjBDMjY0MUNEMDA5RTIzNDkgLyogQmFyUHJvcC5pZGwgKi8sCisJCQkJNDYwQkI2MTMxRDBB
MUJFQzAwMjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5jcHAgKi8sCisJCQkJNDYwQkI2MTQxRDBB
MUJFQzAwMjIxODEyIC8qIEJhc2U2NFV0aWxpdGllcy5oICovLAorCQkJCTQxRDEyOUQ0MUYzRDBG
NjYwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oICovLAorCQkJCTA3MkNBODYwMTZD
QjREQzMwMDhBRTEzMSAvKiBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcCAqLywKKwkJCQkwNzlE
MDg2NzE2MkYyMEU4MDBEQjg2NTggLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5oICovLAorCQkJ
CTA3OUQwODZBMTYyRjIxRjkwMERCODY1OCAvKiBDYXB0aW9uVXNlclByZWZlcmVuY2VzTWVkaWFB
Ri5jcHAgKi8sCisJCQkJMDc5RDA4NjkxNjJGMjFGOTAwREI4NjU4IC8qIENhcHRpb25Vc2VyUHJl
ZmVyZW5jZXNNZWRpYUFGLmggKi8sCisJCQkJMTREODIzOEEwQUY5MkRGNjAwMDRGMDU3IC8qIENo
cm9tZS5jcHAgKi8sCisJCQkJMTREODIzNTAwQUY5MkE3OTAwMDRGMDU3IC8qIENocm9tZS5oICov
LAorCQkJCTE0RDgyNDA2MEFGOTNBRUIwMDA0RjA1NyAvKiBDaHJvbWVDbGllbnQuaCAqLywKKwkJ
CQk0MTA3OTA4QTFGQzNFNEYyMDA2MUIyN0EgLyogQ2xpZW50T3JpZ2luLmggKi8sCisJCQkJMDY1
QUQ0RjIwQjBDMkVEQTAwNUEyQjFEIC8qIENvbnRleHRNZW51Q2xpZW50LmggKi8sCisJCQkJNTEw
NkQ3QkIxOEJEQjc2RjAwMEFCMTY2IC8qIENvbnRleHRNZW51Q29udGV4dC5jcHAgKi8sCisJCQkJ
NTEwNkQ3QkMxOEJEQjc2RjAwMEFCMTY2IC8qIENvbnRleHRNZW51Q29udGV4dC5oICovLAorCQkJ
CTA2NUFENEYzMEIwQzJFREEwMDVBMkIxRCAvKiBDb250ZXh0TWVudUNvbnRyb2xsZXIuY3BwICov
LAorCQkJCTA2NUFENEY0MEIwQzJFREEwMDVBMkIxRCAvKiBDb250ZXh0TWVudUNvbnRyb2xsZXIu
aCAqLywKKwkJCQk3QURFNzIyNTEwQ0JCQjlCMDA2QjNCM0EgLyogQ29udGV4dE1lbnVQcm92aWRl
ci5oICovLAorCQkJCTZCMUY0ODBGMjI5ODlFQzQwMERFOEI4MiAvKiBDcm9zc1NpdGVOYXZpZ2F0
aW9uRGF0YVRyYW5zZmVyLmggKi8sCisJCQkJOTc1Q0EyODcxMzAzNjVGODAwRTk5QUQ5IC8qIENy
eXB0by5jcHAgKi8sCisJCQkJOTc1Q0EyODgxMzAzNjVGODAwRTk5QUQ5IC8qIENyeXB0by5oICov
LAorCQkJCTk3NUNBMjg5MTMwMzY1RjgwMEU5OUFEOSAvKiBDcnlwdG8uaWRsICovLAorCQkJCTFB
Q0IyQjIxMUE1NzMzRjQwMDMzMzM5MiAvKiBEYXRhYmFzZVByb3ZpZGVyLmNwcCAqLywKKwkJCQkx
QUNCMkIyMjFBNTczM0Y0MDAzMzMzOTIgLyogRGF0YWJhc2VQcm92aWRlci5oICovLAorCQkJCUJD
NEE1MzJDMjU2MDU2RDUwMDI4QzU5MiAvKiBEZWJ1Z092ZXJsYXlSZWdpb25zLmggKi8sCisJCQkJ
MEY2QTEyQkIxQTAwOTIzNzAwQzZERTcyIC8qIERlYnVnUGFnZU92ZXJsYXlzLmNwcCAqLywKKwkJ
CQkwRjZBMTJCQzFBMDA5MjM3MDBDNkRFNzIgLyogRGVidWdQYWdlT3ZlcmxheXMuaCAqLywKKwkJ
CQk3Q0JEMTI5QzFGOThCNUZGMDAxMjdEMjkgLyogRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzLmNw
cCAqLywKKwkJCQk3Q0JEMTI5QTFGOThCNUZFMDAxMjdEMjkgLyogRGVwcmVjYXRlZEdsb2JhbFNl
dHRpbmdzLmggKi8sCisJCQkJQ0NDMkI1MTAxNUY2MTMwNjAwNDhDREQ2IC8qIERldmljZUNsaWVu
dC5oICovLAorCQkJCUNDQzJCNTExMTVGNjEzMDYwMDQ4Q0RENiAvKiBEZXZpY2VDb250cm9sbGVy
LmNwcCAqLywKKwkJCQlDQ0MyQjUxMjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJvbGxl
ci5oICovLAorCQkJCUNEMTlBMjY3MUExM0U3MDAwMDhENjUwRSAvKiBEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudC5oICovLAorCQkJCTcyRjY2N0RGMjYwQzI2NDQwMEVFMzZBRCAvKiBEaWFnbm9zdGlj
TG9nZ2luZ0RvbWFpbi5oICovLAorCQkJCUNEMzdCMzc0MTVDMUE3RTEwMDZEQzg5OCAvKiBEaWFn
bm9zdGljTG9nZ2luZ0tleXMuY3BwICovLAorCQkJCUNEMzdCMzc1MTVDMUE3RTEwMDZEQzg5OCAv
KiBEaWFnbm9zdGljTG9nZ2luZ0tleXMuaCAqLywKKwkJCQk4MzcyREIzMDFBNjc4MEE4MDBDNjk3
QzUgLyogRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8sCisJCQkJRjQ3QTA5RDQyMEE5
REQwNDAwMjQwRkFFIC8qIERpc2FibGVkQWRhcHRhdGlvbnMuY3BwICovLAorCQkJCUY0N0EwOUNG
MjBBOTM5RjYwMDI0MEZBRSAvKiBEaXNhYmxlZEFkYXB0YXRpb25zLmggKi8sCisJCQkJQkM1QTg2
ODEwQzMzNjc2MDAwRUVBNjQ5IC8qIERPTVNlbGVjdGlvbi5jcHAgKi8sCisJCQkJQkM1QTg2ODIw
QzMzNjc2MDAwRUVBNjQ5IC8qIERPTVNlbGVjdGlvbi5oICovLAorCQkJCUJDNUE4NjgzMEMzMzY3
NjAwMEVFQTY0OSAvKiBET01TZWxlY3Rpb24uaWRsICovLAorCQkJCTE4ODYwNEIxMEYyRTY1NEEw
MDBCNjQ0MyAvKiBET01UaW1lci5jcHAgKi8sCisJCQkJMTg4NjA0QjIwRjJFNjU0QTAwMEI2NDQz
IC8qIERPTVRpbWVyLmggKi8sCisJCQkJN0M2NzcxMzEyNTI3REE2MDAwRkRFRjAwIC8qIERPTVdp
bmRvdytDb21wYXQuaWRsICovLAorCQkJCTdDNjc3MTJEMjUyN0Q4MjUwMEZERUYwMCAvKiBET01X
aW5kb3crQ1NTT00uaWRsICovLAorCQkJCTdDNjc3MTJFMjUyN0Q4ODQwMEZERUYwMCAvKiBET01X
aW5kb3crQ1NTT01WaWV3LmlkbCAqLywKKwkJCQk3QzY3NzEzNDI1MjdERDgwMDBGREVGMDAgLyog
RE9NV2luZG93K0RldmljZU1vdGlvbi5pZGwgKi8sCisJCQkJN0M2NzcxMzUyNTI3RERBOTAwRkRF
RjAwIC8qIERPTVdpbmRvdytEZXZpY2VPcmllbnRhdGlvbi5pZGwgKi8sCisJCQkJN0M2NzcxMzMy
NTI3REM0ODAwRkRFRjAwIC8qIERPTVdpbmRvdytSZXF1ZXN0SWRsZUNhbGxiYWNrLmlkbCAqLywK
KwkJCQk3QzY3NzEzMDI1MjdEQTEzMDBGREVGMDAgLyogRE9NV2luZG93K1NlbGVjdGlvbi5pZGwg
Ki8sCisJCQkJN0M2NzcxMkYyNTI3RDlENjAwRkRFRjAwIC8qIERPTVdpbmRvdytWaXN1YWxWaWV3
cG9ydC5pZGwgKi8sCisJCQkJMTQwM0I5OTYwOUVCMTNBRjAwNzk3QzdGIC8qIERPTVdpbmRvdy5j
cHAgKi8sCisJCQkJMTQwM0I5OTUwOUVCMTNBRjAwNzk3QzdGIC8qIERPTVdpbmRvdy5oICovLAor
CQkJCTE0MDNCOTBDMDlFQjEyNDUwMDc5N0M3RiAvKiBET01XaW5kb3cuaWRsICovLAorCQkJCTUx
N0ZCQTE3MTUxQUE3MUIwMEI1Nzk1OSAvKiBET01XaW5kb3dFeHRlbnNpb24uY3BwICovLAorCQkJ
CTUxN0ZCQTE4MTUxQUE3MUIwMEI1Nzk1OSAvKiBET01XaW5kb3dFeHRlbnNpb24uaCAqLywKKwkJ
CQk5N0QyQUQwMTE0QjgyM0E2MDA5M0RGMzIgLyogRE9NV2luZG93UHJvcGVydHkuY3BwICovLAor
CQkJCTk3RDJBRDAyMTRCODIzQTYwMDkzREYzMiAvKiBET01XaW5kb3dQcm9wZXJ0eS5oICovLAor
CQkJCUE3MTg3NjBEMEIyQTEyMDEwMEExNkVDRSAvKiBEcmFnQWN0aW9ucy5oICovLAorCQkJCUE3
Q0E1OTYyMEIyN0MxRjIwMEZBMDIxRCAvKiBEcmFnQ2xpZW50LmggKi8sCisJCQkJQTdDQTU5NUMw
QjI3QkQ5RTAwRkEwMjFEIC8qIERyYWdDb250cm9sbGVyLmNwcCAqLywKKwkJCQlBN0NBNTk1QjBC
MjdCRDlFMDBGQTAyMUQgLyogRHJhZ0NvbnRyb2xsZXIuaCAqLywKKwkJCQk4MUY2NUZGNTEzNzg4
RkFBMDBGRjZGMkQgLyogRHJhZ1N0YXRlLmggKi8sCisJCQkJOTNENkI3QTYyNTUxRDNFRDAwNThE
RDNBIC8qIER1bW15U3BlZWNoUmVjb2duaXRpb25Qcm92aWRlci5oICovLAorCQkJCTFBRjMyNjc3
MEQ3OEI5NDQwMDY4RjBDNCAvKiBFZGl0b3JDbGllbnQuaCAqLywKKwkJCQk5M0MwOUE4MDBCMDY0
RjAwMDA1QUJENEQgLyogRXZlbnRIYW5kbGVyLmNwcCAqLywKKwkJCQk5M0MwOUE1MjBCMDY0REIz
MDA1QUJENEQgLyogRXZlbnRIYW5kbGVyLmggKi8sCisJCQkJRTBGRUYzNzFCMjdDNTNFQUMxQzFG
QkVFIC8qIEV2ZW50U291cmNlLmNwcCAqLywKKwkJCQlFMEZFRjM3MUIxN0M1M0VBQzFDMUZCRUUg
LyogRXZlbnRTb3VyY2UuaCAqLywKKwkJCQlFMEZFRjM3MUIwN0M1M0VBQzFDMUZCRUUgLyogRXZl
bnRTb3VyY2UuaWRsICovLAorCQkJCTE0OTkzQkUzMEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1c0Nv
bnRyb2xsZXIuY3BwICovLAorCQkJCTE0OTkzQkU0MEIyRjJCMUMwMDUwNDk3RiAvKiBGb2N1c0Nv
bnRyb2xsZXIuaCAqLywKKwkJCQkwNjIyODc4MzBCNERCMzIyMDAwQzM0REYgLyogRm9jdXNEaXJl
Y3Rpb24uaCAqLywKKwkJCQk2NUJGMDIyOTA5NzQ4MTYzMDBDNDMxOTYgLyogRnJhbWUuY3BwICov
LAorCQkJCTY1QkYwMjJBMDk3NDgxNjMwMEM0MzE5NiAvKiBGcmFtZS5oICovLAorCQkJCTk3NEE4
NjIwMTRCN0FEQkIwMDNGREM3NiAvKiBGcmFtZURlc3RydWN0aW9uT2JzZXJ2ZXIuY3BwICovLAor
CQkJCTk3NEE4NjIxMTRCN0FEQkIwMDNGREM3NiAvKiBGcmFtZURlc3RydWN0aW9uT2JzZXJ2ZXIu
aCAqLywKKwkJCQlCQzRBNTMyQTI1NjA1NjZFMDAyOEM1OTIgLyogRnJhbWVGbGF0dGVuaW5nLmgg
Ki8sCisJCQkJMEYxMTc4MTYyMkUzQzQ3RTAwOEJENTcwIC8qIEZyYW1lSWRlbnRpZmllci5oICov
LAorCQkJCUM0Q0Q2Mjk4MTgzODM3NjYwMDdFQkFGMSAvKiBGcmFtZVNuYXBzaG90dGluZy5jcHAg
Ki8sCisJCQkJQzRDRDYyOTkxODM4Mzc2NjAwN0VCQUYxIC8qIEZyYW1lU25hcHNob3R0aW5nLmgg
Ki8sCisJCQkJNjVBMjE0ODIwOTdBM0Y1MzAwQjkwNTBBIC8qIEZyYW1lVHJlZS5jcHAgKi8sCisJ
CQkJNjVBMjE0ODMwOTdBM0Y1MzAwQjkwNTBBIC8qIEZyYW1lVHJlZS5oICovLAorCQkJCTY1Q0JG
RUY3MDk3NEY2MDcwMDFEQUMyNSAvKiBGcmFtZVZpZXcuY3BwICovLAorCQkJCTY1Q0JGRUY4MDk3
NEY2MDcwMDFEQUMyNSAvKiBGcmFtZVZpZXcuaCAqLywKKwkJCQkxMTNEMEI0RjFGOUZERDJCMDBG
NjExQkIgLyogRnJhbWVWaWV3TGF5b3V0Q29udGV4dC5jcHAgKi8sCisJCQkJMTEzRDBCNTAxRjlG
REQyQjAwRjYxMUJCIC8qIEZyYW1lVmlld0xheW91dENvbnRleHQuaCAqLywKKwkJCQk0NkI5NTE5
MTIwN0Q2MzJEMDBBN0QyREQgLyogR2xvYmFsRnJhbWVJZGVudGlmaWVyLmggKi8sCisJCQkJNDZC
OTUxOTAyMDdENjMyQzAwQTdEMkREIC8qIEdsb2JhbFdpbmRvd0lkZW50aWZpZXIuaCAqLywKKwkJ
CQlCQzk0RDE1MDBDMjc1QzhCMDA2QkM2MTcgLyogSGlzdG9yeS5jcHAgKi8sCisJCQkJQkM5NEQx
NTEwQzI3NUM4QjAwNkJDNjE3IC8qIEhpc3RvcnkuaCAqLywKKwkJCQlCQzk0RDE1MjBDMjc1QzhC
MDA2QkM2MTcgLyogSGlzdG9yeS5pZGwgKi8sCisJCQkJRjQ4MjQzNEEyNjBDMzJGMTAwMjI0OTdD
IC8qIEltYWdlT3ZlcmxheUNvbnRyb2xsZXIuY3BwICovLAorCQkJCUY0ODI0MzQ4MjYwQzMyRjEw
MDIyNDk3QyAvKiBJbWFnZU92ZXJsYXlDb250cm9sbGVyLmggKi8sCisJCQkJMEY0NzEwRDUxREI2
RkUyMjAwMkRDRUMzIC8qIEludGVyc2VjdGlvbk9ic2VydmVyLmNwcCAqLywKKwkJCQkwRjQ3MTBE
NjFEQjZGRTIyMDAyRENFQzMgLyogSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaCAqLywKKwkJCQkwRjQ3
MTBENzFEQjZGRTIyMDAyRENFQzMgLyogSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaWRsICovLAorCQkJ
CTBGOEI0NTcxMURDM0ZCQTMwMDQ0M0MzRiAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlckNhbGxiYWNr
LmggKi8sCisJCQkJMEY4QjQ1NkYxREMzRkIxMDAwNDQzQzNGIC8qIEludGVyc2VjdGlvbk9ic2Vy
dmVyQ2FsbGJhY2suaWRsICovLAorCQkJCTBGNDcxMEQ4MURCNkZFMjIwMDJEQ0VDMyAvKiBJbnRl
cnNlY3Rpb25PYnNlcnZlckVudHJ5LmNwcCAqLywKKwkJCQkwRjQ3MTBEOTFEQjZGRTIyMDAyRENF
QzMgLyogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oICovLAorCQkJCTBGNDcxMERBMURCNkZF
MjIwMDJEQ0VDMyAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5LmlkbCAqLywKKwkJCQkxRjUz
MDM5QTI2ODU0RTY2MDAyMzYzMDMgLyogS2V5Ym9hcmRTY3JvbGwuY3BwICovLAorCQkJCTFGMDIw
QUVEMjY3ODBGQ0UwMDAwODA5QSAvKiBLZXlib2FyZFNjcm9sbC5oICovLAorCQkJCTkzMUQ3MkY1
MTVGRTY5NTMwMEM0QzA3RSAvKiBMYXlvdXRNaWxlc3RvbmUuaCAqLywKKwkJCQlCQ0UxQzQxQTBE
OTgyOTgwMDAzQjAyRjIgLyogTG9jYXRpb24uY3BwICovLAorCQkJCUJDRTFDNDE5MEQ5ODI5ODAw
MDNCMDJGMiAvKiBMb2NhdGlvbi5oICovLAorCQkJCUJDRTFDNDIyMEQ5ODI5RjIwMDNCMDJGMiAv
KiBMb2NhdGlvbi5pZGwgKi8sCisJCQkJNkI0RDQxMkMyMzk4M0Y4ODAwMjQ5NEMyIC8qIExvZ2dl
ZEluU3RhdHVzLmNwcCAqLywKKwkJCQk2QjRENDEyQjIzOTgzRjg4MDAyNDk0QzIgLyogTG9nZ2Vk
SW5TdGF0dXMuaCAqLywKKwkJCQk5MzFCQ0M2MDExMjRERkNCMDBCRTcwREQgLyogTWVkaWFDYW5T
dGFydExpc3RlbmVyLmggKi8sCisJCQkJOTVBMUUyRTcyNUNDNzVBODAwMjY4QzhFIC8qIE1lZGlh
Q29udHJvbHNDb250ZXh0TWVudUl0ZW0uaCAqLywKKwkJCQk1MkUyQ0FGQjE5RkYwMjA3MDAxRUVC
NEYgLyogTWVkaWFQcm9kdWNlci5oICovLAorCQkJCTQxM0UwMDc3MURCMEU0REUwMDIzNDFEMiAv
KiBNZW1vcnlSZWxlYXNlLmNwcCAqLywKKwkJCQk0MTNFMDA3ODFEQjBFNERFMDAyMzQxRDIgLyog
TWVtb3J5UmVsZWFzZS5oICovLAorCQkJCTkzRUIzNTVFMDlFMzdGRDYwMEY0Mzc5OSAvKiBNb3Vz
ZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRzLmNwcCAqLywKKwkJCQk5MzVDNDc2MjA5QUM0Q0U2MDBB
NkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oICovLAorCQkJCTZCNTA3QTIz
MjM0QkYzNDEwMEJFN0M2MiAvKiBOYXZpZ2F0b3IrSXNMb2dnZWRJbi5pZGwgKi8sCisJCQkJQTlD
NkU1QTMwRDc0NjQ1ODAwNjQ0MkU5IC8qIE5hdmlnYXRvci5jcHAgKi8sCisJCQkJQTlDNkU1QTQw
RDc0NjQ1ODAwNjQ0MkU5IC8qIE5hdmlnYXRvci5oICovLAorCQkJCUE5QzZFNjVEMEQ3NDY2OTQw
MDY0NDJFOSAvKiBOYXZpZ2F0b3IuaWRsICovLAorCQkJCUUxMjcxOUM5MEVFRUMyMTMwMEY2MTIx
MyAvKiBOYXZpZ2F0b3JCYXNlLmNwcCAqLywKKwkJCQlFMTI3MTlDNjBFRUVDMTY4MDBGNjEyMTMg
LyogTmF2aWdhdG9yQmFzZS5oICovLAorCQkJCTdDMkUwQkQ5MjUxMTgwMEUwMDVGM0M4NyAvKiBO
YXZpZ2F0b3JDb29raWVzLmlkbCAqLywKKwkJCQk3QzVCRUEzQTFFOUVFNzcxMDBDQzUxN0IgLyog
TmF2aWdhdG9ySUQuaWRsICovLAorCQkJCTZCNTA3QTIyMjM0QkYzNDEwMEJFN0M2MiAvKiBOYXZp
Z2F0b3JJc0xvZ2dlZEluLmNwcCAqLywKKwkJCQk2QjUwN0EyMTIzNEJGMzQxMDBCRTdDNjIgLyog
TmF2aWdhdG9ySXNMb2dnZWRJbi5oICovLAorCQkJCTdDNUJFQTNCMUU5RUU3NzEwMENDNTE3QiAv
KiBOYXZpZ2F0b3JMYW5ndWFnZS5pZGwgKi8sCisJCQkJN0M1QkVBM0MxRTlFRTc3MTAwQ0M1MTdC
IC8qIE5hdmlnYXRvck9uTGluZS5pZGwgKi8sCisJCQkJN0MwMTdDM0QyNDk2OUYxMzAwREMwQzAy
IC8qIE5hdmlnYXRvclBsdWdpbnMuaWRsICovLAorCQkJCTUxODJDMjRCMUYzMTNBRTAwMDU5QkE3
QyAvKiBOYXZpZ2F0b3JTZXJ2aWNlV29ya2VyLmlkbCAqLywKKwkJCQkxREM1NTNGRDIxMUJBMTJB
MDA0Qjc4MEUgLyogTmF2aWdhdG9yU2hhcmUuaWRsICovLAorCQkJCTkzMDg1REIxMjZFMDAwQkQw
MDBFQzZBNyAvKiBOYXZpZ2F0b3JTdG9yYWdlLmlkbCAqLywKKwkJCQkwMDE0NjI4ODEwM0NEMURF
MDAwQjIwREIgLyogT3JpZ2luQWNjZXNzRW50cnkuY3BwICovLAorCQkJCTAwMTQ2Mjg5MTAzQ0Qx
REUwMDBCMjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5oICovLAorCQkJCTY1RkVBODY4MDk4MzNB
REUwMEJFRDRBQiAvKiBQYWdlLmNwcCAqLywKKwkJCQk2NUEyMTQ2NzA5N0EzMjkxMDBCOTA1MEEg
LyogUGFnZS5oICovLAorCQkJCTk1RjQ1RDI0MjY0REZCRUIwMEQwQjhCOCAvKiBQYWdlQ29sb3JT
YW1wbGVyLmNwcCAqLywKKwkJCQk5NUY0NUQyNjI2NERGQkVCMDBEMEI4QjggLyogUGFnZUNvbG9y
U2FtcGxlci5oICovLAorCQkJCUNENUU1QjYwMUExNUYxNTYwMDBDNjA5RSAvKiBQYWdlQ29uZmln
dXJhdGlvbi5jcHAgKi8sCisJCQkJQ0Q1RTVCNUUxQTE1Q0U1NDAwMEM2MDlFIC8qIFBhZ2VDb25m
aWd1cmF0aW9uLmggKi8sCisJCQkJREFBQ0IzRDkxNkYyNDE2NDAwNjY2MTM1IC8qIFBhZ2VDb25z
b2xlQ2xpZW50LmNwcCAqLywKKwkJCQlEQUFDQjNEQTE2RjI0MTY0MDA2NjYxMzUgLyogUGFnZUNv
bnNvbGVDbGllbnQuaCAqLywKKwkJCQlBNUEyQUYwOTE4Mjk3MzQzMDBERTE3MjkgLyogUGFnZURl
YnVnZ2FibGUuY3BwICovLAorCQkJCUE1QTJBRjBBMTgyOTczNDMwMERFMTcyOSAvKiBQYWdlRGVi
dWdnYWJsZS5oICovLAorCQkJCTkzMDJCMEJDMEQ3OUY4MjkwMEM3RUU4MyAvKiBQYWdlR3JvdXAu
Y3BwICovLAorCQkJCTkzMDJCMEJFMEQ3OUY4MkMwMEM3RUU4MyAvKiBQYWdlR3JvdXAuaCAqLywK
KwkJCQk3QTY3NEJEOTBGOUVCRjRFMDA2Q0YwOTkgLyogUGFnZUdyb3VwTG9hZERlZmVycmVyLmNw
cCAqLywKKwkJCQk3QTY3NEJEQTBGOUVCRjRFMDA2Q0YwOTkgLyogUGFnZUdyb3VwTG9hZERlZmVy
cmVyLmggKi8sCisJCQkJNDZCNjUwREIyMjk2MjYyNzAwRkQ4QUE0IC8qIFBhZ2VJZGVudGlmaWVy
LmggKi8sCisJCQkJMkQ1QzlDRkIxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5LmNwcCAq
LywKKwkJCQkyRDVDOUNGQzE5QzdCNTJFMDBCM0M1QzEgLyogUGFnZU92ZXJsYXkuaCAqLywKKwkJ
CQkyRDVDOUNGRDE5QzdCNTJFMDBCM0M1QzEgLyogUGFnZU92ZXJsYXlDb250cm9sbGVyLmNwcCAq
LywKKwkJCQkyRDVDOUNGRTE5QzdCNTJFMDBCM0M1QzEgLyogUGFnZU92ZXJsYXlDb250cm9sbGVy
LmggKi8sCisJCQkJRjQwREFBRUUyNUQ5RjNCRjAwMTFCNEZBIC8qIFBhZ2VQYXN0ZWJvYXJkQ29u
dGV4dC5oICovLAorCQkJCTM3MUU2NUNEMTM2NjFFRUQwMEJFRURCMCAvKiBQYWdlU2VyaWFsaXpl
ci5jcHAgKi8sCisJCQkJMzcxRTY1Q0IxMzY2MUVEQzAwQkVFREIwIC8qIFBhZ2VTZXJpYWxpemVy
LmggKi8sCisJCQkJQkM0QTUzMjgyNTYwNTYzQjAwMjhDNTkyIC8qIFBERkltYWdlQ2FjaGluZ1Bv
bGljeS5oICovLAorCQkJCTdDNzI0NzFFMjUxNjc1ODgwMEMzNjNDRCAvKiBQZXJmb3JtYW5jZStO
YXZpZ2F0aW9uVGltaW5nLmlkbCAqLywKKwkJCQk3QzcyNDcxQzI1MTY3NENFMDBDMzYzQ0QgLyog
UGVyZm9ybWFuY2UrUGVyZm9ybWFuY2VUaW1lbGluZS5pZGwgKi8sCisJCQkJN0M3MjQ3MUQyNTE2
NzUyQzAwQzM2M0NEIC8qIFBlcmZvcm1hbmNlK1Jlc291cmNlVGltaW5nLmlkbCAqLywKKwkJCQk3
QzcyNDcxQTI1MTY3NDRDMDBDMzYzQ0QgLyogUGVyZm9ybWFuY2UrVXNlclRpbWluZy5pZGwgKi8s
CisJCQkJRTUyNkFGM0UxNzI3RjhGMjAwRTQxNzgxIC8qIFBlcmZvcm1hbmNlLmNwcCAqLywKKwkJ
CQk4QTg0NEQwMjExRDNDMThFMDAxNDA2NUMgLyogUGVyZm9ybWFuY2UuaCAqLywKKwkJCQk4QTg0
NEQwMzExRDNDMThFMDAxNDA2NUMgLyogUGVyZm9ybWFuY2UuaWRsICovLAorCQkJCUNCMzhGRDRB
MUNDQ0YyREQwMDU5MkEzRiAvKiBQZXJmb3JtYW5jZUVudHJ5LmNwcCAqLywKKwkJCQk4NkJFMzNG
QjE1MDU4Q0IyMDBDRTBGRDggLyogUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCTg2QkUzM0ZD
MTUwNThDQjIwMENFMEZEOCAvKiBQZXJmb3JtYW5jZUVudHJ5LmlkbCAqLywKKwkJCQlBRDVBMEMy
MTFERUNBMTAxMDA3MDcwNTQgLyogUGVyZm9ybWFuY2VMb2dnaW5nLmNwcCAqLywKKwkJCQlBRDVB
MEMyMDFERUNBMEI1MDA3MDcwNTQgLyogUGVyZm9ybWFuY2VMb2dnaW5nLmggKi8sCisJCQkJMEZG
MkU4MEMxRUUwRDQzMDAwOUVBQkQ0IC8qIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5jcHAgKi8s
CisJCQkJMEY4NTBGRTIxRUQ3QzE4MzAwRkI3N0E3IC8qIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVu
dC5oICovLAorCQkJCTdDN0JGOTQ0MjUxNkNDOTIwMDgwODY4MiAvKiBQZXJmb3JtYW5jZU1hcmsu
Y3BwICovLAorCQkJCTM3QzczOEU4MUVEQkQyRUQwMDNGMkIwQiAvKiBQZXJmb3JtYW5jZU1hcmsu
aCAqLywKKwkJCQk3Q0UyMjFFRTI1MTQyOUY0MDAwNjg4NkIgLyogUGVyZm9ybWFuY2VNYXJrLmlk
bCAqLywKKwkJCQk3QzdCRjkzRTI1MTZDOEJDMDA4MDg2ODIgLyogUGVyZm9ybWFuY2VNYXJrT3B0
aW9ucy5oICovLAorCQkJCTdDN0JGOTQwMjUxNkM4QkMwMDgwODY4MiAvKiBQZXJmb3JtYW5jZU1h
cmtPcHRpb25zLmlkbCAqLywKKwkJCQk3QzdCRjk1MDI1MTZGQjU0MDA4MDg2ODIgLyogUGVyZm9y
bWFuY2VNZWFzdXJlLmNwcCAqLywKKwkJCQkzN0M3MzhFQTFFREJEMzgxMDAzRjJCMEIgLyogUGVy
Zm9ybWFuY2VNZWFzdXJlLmggKi8sCisJCQkJN0NFMjIxRjAyNTE0MjlGNTAwMDY4ODZCIC8qIFBl
cmZvcm1hbmNlTWVhc3VyZS5pZGwgKi8sCisJCQkJN0M3QkY5NDkyNTE2RkE1NDAwODA4NjgyIC8q
IFBlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaCAqLywKKwkJCQk3QzdCRjk0QjI1MTZGQTU0MDA4
MDg2ODIgLyogUGVyZm9ybWFuY2VNZWFzdXJlT3B0aW9ucy5pZGwgKi8sCisJCQkJODNGRTkwMjUx
RTMwN0MxQzAwM0U5MTk5IC8qIFBlcmZvcm1hbmNlTW9uaXRvci5jcHAgKi8sCisJCQkJODNGRTkw
MjYxRTMwN0MxQzAwM0U5MTk5IC8qIFBlcmZvcm1hbmNlTW9uaXRvci5oICovLAorCQkJCThBRjRF
NTUyMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAorCQkJ
CThBRjRFNTUzMTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5jZU5hdmlnYXRpb24uaCAqLywK
KwkJCQk4QUY0RTU1NDExREM1QTM2MDAwRUQzREUgLyogUGVyZm9ybWFuY2VOYXZpZ2F0aW9uLmlk
bCAqLywKKwkJCQlERjM2NUQwNDI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9ybWFuY2VOYXZpZ2F0
aW9uVGltaW5nLmNwcCAqLywKKwkJCQlERjM2NUQwNjI1QTk4NEM4MDA1RERCOEMgLyogUGVyZm9y
bWFuY2VOYXZpZ2F0aW9uVGltaW5nLmggKi8sCisJCQkJREYzNjVEMDcyNUE5ODRDOTAwNUREQjhD
IC8qIFBlcmZvcm1hbmNlTmF2aWdhdGlvblRpbWluZy5pZGwgKi8sCisJCQkJQTVBOTkzMzUxRTM3
RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwICovLAorCQkJCUE1QTk5MzM2
MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmggKi8sCisJCQkJQTVBOTkz
MzcxRTM3RkFGRDAwNUI1RTREIC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXIuaWRsICovLAorCQkJCUE1
QTk5MzM4MUUzN0ZBRkQwMDVCNUU0RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyQ2FsbGJhY2suaCAq
LywKKwkJCQlBNUE5OTMzOTFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlckNh
bGxiYWNrLmlkbCAqLywKKwkJCQlBNUE5OTMzQTFFMzdGQUZEMDA1QjVFNEQgLyogUGVyZm9ybWFu
Y2VPYnNlcnZlckVudHJ5TGlzdC5jcHAgKi8sCisJCQkJQTVBOTkzM0IxRTM3RkFGRDAwNUI1RTRE
IC8qIFBlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaCAqLywKKwkJCQlBNUE5OTMzQzFFMzdG
QUZEMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlckVudHJ5TGlzdC5pZGwgKi8sCisJCQkJ
Q0ExOTMzRDUyNDA3RDY0MDAwNzEyNDFBIC8qIFBlcmZvcm1hbmNlUGFpbnRUaW1pbmcuaCAqLywK
KwkJCQlDQTE5MzNEODI0MDdFRENGMDA3MTI0MUEgLyogUGVyZm9ybWFuY2VQYWludFRpbWluZy5p
ZGwgKi8sCisJCQkJODY1MTJFREIxNTRBMkFFRTAwQTkwNDI2IC8qIFBlcmZvcm1hbmNlUmVzb3Vy
Y2VUaW1pbmcuY3BwICovLAorCQkJCTg2NTEyRURDMTU0QTJBRUYwMEE5MDQyNiAvKiBQZXJmb3Jt
YW5jZVJlc291cmNlVGltaW5nLmggKi8sCisJCQkJODY1MTJFREQxNTRBMkFFRjAwQTkwNDI2IC8q
IFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaWRsICovLAorCQkJCTI4REI5QkM1MjAyMEVBMDQw
MEU1NEEwNyAvKiBQZXJmb3JtYW5jZVNlcnZlclRpbWluZy5jcHAgKi8sCisJCQkJMjhEQjlCQzYy
MDIwRUEwNDAwRTU0QTA3IC8qIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nLmggKi8sCisJCQkJMjhE
QjlCQzcyMDIwRUEwNDAwRTU0QTA3IC8qIFBlcmZvcm1hbmNlU2VydmVyVGltaW5nLmlkbCAqLywK
KwkJCQkwRjQzQzg1QzE4OUUxMENGMDAwMTlBRTIgLyogUGVyZm9ybWFuY2VUaW1pbmcuY3BwICov
LAorCQkJCThBRjRFNTU5MTFEQzVBNjMwMDBFRDNERSAvKiBQZXJmb3JtYW5jZVRpbWluZy5oICov
LAorCQkJCThBRjRFNTVBMTFEQzVBNjMwMDBFRDNERSAvKiBQZXJmb3JtYW5jZVRpbWluZy5pZGwg
Ki8sCisJCQkJQTU1NEI1RjAxRTM4MzkzNjAwMUQ0RTAzIC8qIFBlcmZvcm1hbmNlVXNlclRpbWlu
Zy5jcHAgKi8sCisJCQkJQTU1NEI1RjExRTM4MzkzNjAwMUQ0RTAzIC8qIFBlcmZvcm1hbmNlVXNl
clRpbWluZy5oICovLAorCQkJCTcxQjVBQjI1MjFGMUQ5RTMwMDM3NkU1QyAvKiBQb2ludGVyQ2Fw
dHVyZUNvbnRyb2xsZXIuY3BwICovLAorCQkJCTcxQjVBQjI0MjFGMUQ5RTIwMDM3NkU1QyAvKiBQ
b2ludGVyQ2FwdHVyZUNvbnRyb2xsZXIuaCAqLywKKwkJCQk5NURGOUQyMzI1MkJFRDk5MDAwRDdG
NDYgLyogUG9pbnRlckNoYXJhY3RlcmlzdGljcy5oICovLAorCQkJCTVDRkM0MzRFMTkyNDA2QTkw
MEEwRDNCNSAvKiBQb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwICovLAorCQkJCTVDRkM0MzRGMTky
NDA2QTkwMEEwRDNCNSAvKiBQb2ludGVyTG9ja0NvbnRyb2xsZXIuaCAqLywKKwkJCQkzNzcyQjA5
NTE2NTM1ODU2MDAwQTQ5Q0EgLyogUG9wdXBPcGVuaW5nT2JzZXJ2ZXIuaCAqLywKKwkJCQlFNDYw
NUZFQTIxNjY0ODA4MDBFNTMwNDYgLyogUHJld2FybUluZm9ybWF0aW9uLmggKi8sCisJCQkJQjc3
NkQ0M0MxMTA0NTI3NTAwQkVCMEVDIC8qIFByaW50Q29udGV4dC5jcHAgKi8sCisJCQkJQjc3NkQ0
M0ExMTA0NTI1RDAwQkVCMEVDIC8qIFByaW50Q29udGV4dC5oICovLAorCQkJCUU0MjA1MDE2MjE0
MTkwMUIwMDY2RUYzQiAvKiBQcm9jZXNzV2FybWluZy5jcHAgKi8sCisJCQkJRTQyMDUwMTQyMTQx
OTAxQTAwNjZFRjNCIC8qIFByb2Nlc3NXYXJtaW5nLmggKi8sCisJCQkJQ0Q5QTg3RjkyMTVENkNG
MzAwNkYxN0I1IC8qIFF1aXJrcy5jcHAgKi8sCisJCQkJQ0Q5QTg3RkIyMTVENkNGMzAwNkYxN0I1
IC8qIFF1aXJrcy5oICovLAorCQkJCTU1ODQ3NjU4MjQ1M0FCQzIwMDlGNTUwQyAvKiBSZWR1Y2Vk
UmVzb2x1dGlvblNlY29uZHMuaCAqLywKKwkJCQk0NkI5NTE4RDIwN0Q2MzJBMDBBN0QyREQgLyog
UmVtb3RlRE9NV2luZG93LmNwcCAqLywKKwkJCQk0NkI5NTE4RTIwN0Q2MzJBMDBBN0QyREQgLyog
UmVtb3RlRE9NV2luZG93LmggKi8sCisJCQkJNDZCQ0JCQzMyMDg1MDBBNzAwNzEwNjM4IC8qIFJl
bW90ZURPTVdpbmRvdy5pZGwgKi8sCisJCQkJNDZCOTUxOEMyMDdENjMyOTAwQTdEMkREIC8qIFJl
bW90ZUZyYW1lLmNwcCAqLywKKwkJCQk0NkI5NTE5MjIwN0Q2MzJFMDBBN0QyREQgLyogUmVtb3Rl
RnJhbWUuaCAqLywKKwkJCQk1NTZDN0M0OTIyMTIzOTQzMDA5QjA2Q0EgLyogUmVuZGVyaW5nVXBk
YXRlU2NoZWR1bGVyLmNwcCAqLywKKwkJCQk1NTZDN0M0NzIyMTIzOTQyMDA5QjA2Q0EgLyogUmVu
ZGVyaW5nVXBkYXRlU2NoZWR1bGVyLmggKi8sCisJCQkJNThCMkY5RjIyMjMyRDQzRjAwOTM4RDYz
IC8qIFJlc2l6ZU9ic2VydmF0aW9uLmNwcCAqLywKKwkJCQk1OEIyRjlGMzIyMzJENDNGMDA5MzhE
NjMgLyogUmVzaXplT2JzZXJ2YXRpb24uaCAqLywKKwkJCQk1OEIyRjlFRjIyMzJENDNEMDA5MzhE
NjMgLyogUmVzaXplT2JzZXJ2ZXIuY3BwICovLAorCQkJCTU4QjJGOUVDMjIzMkQ0M0IwMDkzOEQ2
MyAvKiBSZXNpemVPYnNlcnZlci5oICovLAorCQkJCTU4QjJGOUYxMjIzMkQ0M0UwMDkzOEQ2MyAv
KiBSZXNpemVPYnNlcnZlci5pZGwgKi8sCisJCQkJMEZENkE2OEIyNkVFQzM3RjAwN0IyMjMxIC8q
IFJlc2l6ZU9ic2VydmVyQm94T3B0aW9ucy5oICovLAorCQkJCTBGRDZBNjc0MjZFRUJBQjkwMDdC
MjIzMSAvKiBSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaWRsICovLAorCQkJCTU4QjJGOUYwMjIz
MkQ0M0UwMDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckNhbGxiYWNrLmggKi8sCisJCQkJNThCMkY5
RUQyMjMyRDQzQzAwOTM4RDYzIC8qIFJlc2l6ZU9ic2VydmVyQ2FsbGJhY2suaWRsICovLAorCQkJ
CTU4QjJGOUVFMjIzMkQ0M0QwMDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckVudHJ5LmggKi8sCisJ
CQkJNThCMkY5RUEyMjMyRDQzQjAwOTM4RDYzIC8qIFJlc2l6ZU9ic2VydmVyRW50cnkuaWRsICov
LAorCQkJCTBGRDZBNjg5MjZFRUMzMkEwMDdCMjIzMSAvKiBSZXNpemVPYnNlcnZlck9wdGlvbnMu
aCAqLywKKwkJCQkwRkQ2QTY3MjI2RUVCQTA1MDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRp
b25zLmlkbCAqLywKKwkJCQkwRkQ2QTY4RDI2RUVDNUU4MDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2
ZXJTaXplLmggKi8sCisJCQkJMEZENkE2NzYyNkVFQkM3QjAwN0IyMjMxIC8qIFJlc2l6ZU9ic2Vy
dmVyU2l6ZS5pZGwgKi8sCisJCQkJQTUwNzFFODIxQzU2RDA3OTAwOTk1MUJFIC8qIFJlc291cmNl
VXNhZ2VEYXRhLmggKi8sCisJCQkJQURCQUQ2RUMxQkNERDk1MDAwMzgxMzI1IC8qIFJlc291cmNl
VXNhZ2VPdmVybGF5LmNwcCAqLywKKwkJCQlBREJBRDZFRDFCQ0REOTUwMDAzODEzMjUgLyogUmVz
b3VyY2VVc2FnZU92ZXJsYXkuaCAqLywKKwkJCQlBNTA3MUU4MzFDNTZEMDc5MDA5OTUxQkUgLyog
UmVzb3VyY2VVc2FnZVRocmVhZC5jcHAgKi8sCisJCQkJQTUwNzFFODQxQzU2RDA3OTAwOTk1MUJF
IC8qIFJlc291cmNlVXNhZ2VUaHJlYWQuaCAqLywKKwkJCQk3QzUyMjI5QjFFMURBRTQ3MDAyQ0I4
RjcgLyogUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAgKi8sCisJCQkJN0M1MjIyOUMxRTFEQUU0
NzAwMkNCOEY3IC8qIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCAqLywKKwkJCQlCQ0VDMDFCQTBD
Mjc0REFDMDA5RjRFQzkgLyogU2NyZWVuLmNwcCAqLywKKwkJCQlCQ0VDMDFCQjBDMjc0REFDMDA5
RjRFQzkgLyogU2NyZWVuLmggKi8sCisJCQkJQkNFQzAxQkMwQzI3NERBQzAwOUY0RUM5IC8qIFNj
cmVlbi5pZGwgKi8sCisJCQkJODM1MEMzRTcxREE1OUI2MjAwMzU2NDM0IC8qIFNjcm9sbEJlaGF2
aW9yLmNwcCAqLywKKwkJCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZp
b3IuaCAqLywKKwkJCQk4MzUwQzNFODFEQTU5QjYyMDAzNTY0MjQgLyogU2Nyb2xsQmVoYXZpb3Iu
aWRsICovLAorCQkJCTgzNTBDM0U3MURBNTlCNjIwMDM1NTQzNSAvKiBTY3JvbGxJbnRvVmlld09w
dGlvbnMuaCAqLywKKwkJCQk4MzUwQzNFODFEQTU5QjYyMDAzNTU0MzUgLyogU2Nyb2xsSW50b1Zp
ZXdPcHRpb25zLmlkbCAqLywKKwkJCQk4MzUwQzNFNzFEQTU5QjYyMDAzNTU0MjQgLyogU2Nyb2xs
TG9naWNhbFBvc2l0aW9uLmggKi8sCisJCQkJODM1MEMzRTgxREE1OUI2MjAwMzU1NDI0IC8qIFNj
cm9sbExvZ2ljYWxQb3NpdGlvbi5pZGwgKi8sCisJCQkJODM1MEMzRTcxREE1OUI2MjAwMzU2NDM1
IC8qIFNjcm9sbE9wdGlvbnMuaCAqLywKKwkJCQk4MzUwQzNFODFEQTU5QjYyMDAzNTY0MzUgLyog
U2Nyb2xsT3B0aW9ucy5pZGwgKi8sCisJCQkJODM1MEMzRTcxREE1OUI2MjAwMzU2NDQ2IC8qIFNj
cm9sbFRvT3B0aW9ucy5oICovLAorCQkJCTgzNTBDM0U4MURBNTlCNjIwMDM1NjQ0NiAvKiBTY3Jv
bGxUb09wdGlvbnMuaWRsICovLAorCQkJCUJDRDBFMEY3MEU5NzJDMzUwMDI2NURFQSAvKiBTZWN1
cml0eU9yaWdpbi5jcHAgKi8sCisJCQkJQkNEMEUwRjgwRTk3MkMzNTAwMjY1REVBIC8qIFNlY3Vy
aXR5T3JpZ2luLmggKi8sCisJCQkJNTFFM0FBMDgxQjk4QkM5QTAwMzZBRDgxIC8qIFNlY3VyaXR5
T3JpZ2luRGF0YS5jcHAgKi8sCisJCQkJNTFFM0FBMDkxQjk4QkM5QTAwMzZBRDgxIC8qIFNlY3Vy
aXR5T3JpZ2luRGF0YS5oICovLAorCQkJCUJDRDBFMEY5MEU5NzJDMzUwMDI2NURFQSAvKiBTZWN1
cml0eU9yaWdpbkhhc2guaCAqLywKKwkJCQk5NzREMkRBMjE0NkE1MzVEMDBENTFGOEIgLyogU2Vj
dXJpdHlQb2xpY3kuY3BwICovLAorCQkJCTk3NEQyREEzMTQ2QTUzNUQwMEQ1MUY4QiAvKiBTZWN1
cml0eVBvbGljeS5oICovLAorCQkJCTdDREU3Mzk2MUY5QkQ1OTUwMDM5MDMxMiAvKiBTZXR0aW5n
cy55YW1sICovLAorCQkJCTdDQzY2MDlCMUY5MzA1NzkwMEQ1MDBFOSAvKiBTZXR0aW5nc0Jhc2Uu
Y3BwICovLAorCQkJCTdDQzY2MDk5MUY5MzA1NzgwMEQ1MDBFOSAvKiBTZXR0aW5nc0Jhc2UuaCAq
LywKKwkJCQkxREM1NTQwMDIxMUJBOEM4MDA0Qjc4MEUgLyogU2hhcmVEYXRhLmggKi8sCisJCQkJ
MURDNTUzRkYyMTFCQTg0MTAwNEI3ODBFIC8qIFNoYXJlRGF0YS5pZGwgKi8sCisJCQkJMUEyQzY2
NzEyNDJBRkVGNzAwMzA1NUVDIC8qIFNoYXJlRGF0YVJlYWRlci5jcHAgKi8sCisJCQkJMUEyQzY2
NzMyNDJBRkVGODAwMzA1NUVDIC8qIFNoYXJlRGF0YVJlYWRlci5oICovLAorCQkJCTVDNjg4QUEy
MUQzODEyNkYwMDBCNTRGQSAvKiBTb2NrZXRQcm92aWRlci5jcHAgKi8sCisJCQkJNUM3Qzg4RDcx
RDBGMUYyQjAwOUQyRjZEIC8qIFNvY2tldFByb3ZpZGVyLmggKi8sCisJCQkJNjI2Q0RFMEMxMTQw
NDI0QzAwMUU1QTY4IC8qIFNwYXRpYWxOYXZpZ2F0aW9uLmNwcCAqLywKKwkJCQk2MjZDREUwRDEx
NDA0MjRDMDAxRTVBNjggLyogU3BhdGlhbE5hdmlnYXRpb24uaCAqLywKKwkJCQk5M0EwNDgyNjI1
NDk1NTAwMDAwQUM0NjIgLyogU3BlZWNoUmVjb2duaXRpb25Qcm92aWRlci5oICovLAorCQkJCUMx
NDkzODA1MjIzNDI3MTkwMDBDRDcwNyAvKiBTcGVlY2hTeW50aGVzaXNDbGllbnQuaCAqLywKKwkJ
CQlCQzRBNTMzNjI1NjA1QUUxMDAyOEM1OTIgLyogU3RvcmFnZUJsb2NraW5nUG9saWN5LmggKi8s
CisJCQkJNDZGRUZCQzYyNkRENjc4MjAwQjBDNDg4IC8qIFN0cnVjdHVyZWRTZXJpYWxpemVPcHRp
b25zLmggKi8sCisJCQkJNDZGRUZCQzcyNkRENjc4MzAwQjBDNDg4IC8qIFN0cnVjdHVyZWRTZXJp
YWxpemVPcHRpb25zLmlkbCAqLywKKwkJCQk2MkMxMjE3QTExQUI5RTc2MDAzQzQ2MkMgLyogU3Vz
cGVuZGFibGVUaW1lci5jcHAgKi8sCisJCQkJNjJDMTIxN0IxMUFCOUU3NzAwM0M0NjJDIC8qIFN1
c3BlbmRhYmxlVGltZXIuaCAqLywKKwkJCQlCQzRBNTMyNDI1NjA1NTU5MDAyOEM1OTIgLyogVGV4
dERpcmVjdGlvblN1Ym1lbnVJbmNsdXNpb25CZWhhdmlvci5oICovLAorCQkJCTJENEY5NkYxMUEx
RUNDMjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9yLmNwcCAqLywKKwkJCQkyRDRGOTZGMjFBMUVD
QzI0MDA5OEJGODggLyogVGV4dEluZGljYXRvci5oICovLAorCQkJCUY0ODU3MEE0MjY0NEM3NkQw
MEMwNUY3MSAvKiBUcmFuc2xhdGlvbkNvbnRleHRNZW51SW5mby5oICovLAorCQkJCUY0RTE5NjVG
MjFGMjZFNEUwMDI4NTA3OCAvKiBVbmRvSXRlbS5jcHAgKi8sCisJCQkJMkVDREJBRDUyMUQ4OTA2
MzAwRjAwRUNEIC8qIFVuZG9JdGVtLmggKi8sCisJCQkJMkVDREJBRDcyMUQ4OTA2MzAwRjAwRUNE
IC8qIFVuZG9JdGVtLmlkbCAqLywKKwkJCQkyRUNEQkFDRjIxRDg5MDM0MDBGMDBFQ0QgLyogVW5k
b01hbmFnZXIuY3BwICovLAorCQkJCTJFQ0RCQUNFMjFEODkwMzQwMEYwMEVDRCAvKiBVbmRvTWFu
YWdlci5oICovLAorCQkJCTJFQ0RCQUQwMjFEODkwMzQwMEYwMEVDRCAvKiBVbmRvTWFuYWdlci5p
ZGwgKi8sCisJCQkJMUFFNzlENDAxODhEQjYxRjAwMjIzOUMyIC8qIFVzZXJDb250ZW50Q29udHJv
bGxlci5jcHAgKi8sCisJCQkJMUFFNzlENDExODhEQjYxRjAwMjIzOUMyIC8qIFVzZXJDb250ZW50
Q29udHJvbGxlci5oICovLAorCQkJCTdDM0YwMUJGMUM4RTVBQjEwMEFERDk2MiAvKiBVc2VyQ29u
dGVudFByb3ZpZGVyLmNwcCAqLywKKwkJCQk3QzNGMDFDMDFDOEU1QUIxMDBBREQ5NjIgLyogVXNl
ckNvbnRlbnRQcm92aWRlci5oICovLAorCQkJCTAwM0YxRkU5MTFFNkFCNDMwMDgyNThEOSAvKiBV
c2VyQ29udGVudFR5cGVzLmggKi8sCisJCQkJQkNBQ0YzQkExMDcyOTIxQTAwQzBDOEEzIC8qIFVz
ZXJDb250ZW50VVJMUGF0dGVybi5jcHAgKi8sCisJCQkJQkNBQ0YzQkIxMDcyOTIxQTAwQzBDOEEz
IC8qIFVzZXJDb250ZW50VVJMUGF0dGVybi5oICovLAorCQkJCUJDNEE1MzI2MjU2MDU1RDMwMDI4
QzU5MiAvKiBVc2VySW50ZXJmYWNlRGlyZWN0aW9uUG9saWN5LmggKi8sCisJCQkJMEY3NjhDMkIy
NkQwMzg0MTAwOERCRTBCIC8qIFVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyLmggKi8sCisJCQkJ
N0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAgKi8sCisJ
CQkJN0MzQjc5NzAxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5oICovLAor
CQkJCTdDNzNGQjBFMTkxRUY2MEUwMDdERTA2MSAvKiBVc2VyTWVzc2FnZUhhbmRsZXIuaWRsICov
LAorCQkJCTdDRTY4MzQyMTkyMTQzQTgwMEY0RDkyOCAvKiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNj
cmlwdG9yLmNwcCAqLywKKwkJCQk3Q0U2ODM0MzE5MjE0M0E4MDBGNEQ5MjggLyogVXNlck1lc3Nh
Z2VIYW5kbGVyRGVzY3JpcHRvci5oICovLAorCQkJCTdDRTY4MzQ2MTkyMTgyMTUwMEY0RDkyOCAv
KiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlwdG9yVHlwZXMuaCAqLywKKwkJCQk3QzczRkIwNTE5
MUVGNDE2MDA3REUwNjEgLyogVXNlck1lc3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5jcHAgKi8sCisJ
CQkJN0M3M0ZCMDYxOTFFRjQxNzAwN0RFMDYxIC8qIFVzZXJNZXNzYWdlSGFuZGxlcnNOYW1lc3Bh
Y2UuaCAqLywKKwkJCQk3QzczRkIwOTE5MUVGNDlGMDA3REUwNjEgLyogVXNlck1lc3NhZ2VIYW5k
bGVyc05hbWVzcGFjZS5pZGwgKi8sCisJCQkJQkNBMkIwNjAxMDUwNDc1RjAwNDNCRDFDIC8qIFVz
ZXJTY3JpcHQuaCAqLywKKwkJCQlCQ0EyQjA4QTEwNTA1QkNEMDA0M0JEMUMgLyogVXNlclNjcmlw
dFR5cGVzLmggKi8sCisJCQkJQkM4QkYxNTAxMDU4MTNCRjAwQTQwQTA3IC8qIFVzZXJTdHlsZVNo
ZWV0LmggKi8sCisJCQkJQkM4QkYxNTkxMDU4MTQxODAwQTQwQTA3IC8qIFVzZXJTdHlsZVNoZWV0
VHlwZXMuaCAqLywKKwkJCQlGNTEzQTNFOTE1RkY0ODQxMDAxNTI2REIgLyogVmFsaWRhdGlvbk1l
c3NhZ2VDbGllbnQuaCAqLywKKwkJCQkyNkY5QTgzNjE4QTA0NkFDMDBBRUI4OEEgLyogVmlld3Bv
cnRDb25maWd1cmF0aW9uLmNwcCAqLywKKwkJCQkyNkY5QTgzNzE4QTA0NkFDMDBBRUI4OEEgLyog
Vmlld3BvcnRDb25maWd1cmF0aW9uLmggKi8sCisJCQkJMUFGNENFRUIxOEJDM0MxQjAwQkMyRDM0
IC8qIFZpc2l0ZWRMaW5rU3RvcmUuY3BwICovLAorCQkJCTFBQkE3RkZGMTg5NzM0MTIwMERDRTlE
NiAvKiBWaXNpdGVkTGlua1N0b3JlLmggKi8sCisJCQkJNzc3OUJEOTQxRjMxMTdCNzAwQzIxNDE3
IC8qIFZpc3VhbFZpZXdwb3J0LmNwcCAqLywKKwkJCQk3Nzc5QkQ5MzFGMkZERkNCMDBDMjE0MTcg
LyogVmlzdWFsVmlld3BvcnQuaCAqLywKKwkJCQk3N0NBQUFFRjFGMkZDMzUwMDBDQjVDOEQgLyog
VmlzdWFsVmlld3BvcnQuaWRsICovLAorCQkJCUJFOTgzRDk1MDUyQTJFMEEwMDg5MkQ4NSAvKiBX
ZWJDb3JlS2V5Ym9hcmRVSU1vZGUuaCAqLywKKwkJCQk3QzQ4QTZDRTE5MUM5RDY1MDAwMjY2NzQg
LyogV2ViS2l0TmFtZXNwYWNlLmNwcCAqLywKKwkJCQk3QzQ4QTZDRjE5MUM5RDY1MDAwMjY2NzQg
LyogV2ViS2l0TmFtZXNwYWNlLmggKi8sCisJCQkJN0M0OEE2RDIxOTFDOUQ4RTAwMDI2Njc0IC8q
IFdlYktpdE5hbWVzcGFjZS5pZGwgKi8sCisJCQkJNDk0QkQ3OTMwRjU1QzhFRTAwNzQ3ODI4IC8q
IFdlYktpdFBvaW50LmggKi8sCisJCQkJNDk0QkQ3OTQwRjU1QzhFRTAwNzQ3ODI4IC8qIFdlYktp
dFBvaW50LmlkbCAqLywKKwkJCQkyRTE5NTE2QTFCNjU5OEQyMDBERjZFRUYgLyogV2hlZWxFdmVu
dERlbHRhRmlsdGVyLmNwcCAqLywKKwkJCQkyRUJCQzNENzFCNjU5ODgzMDBGNTI1M0QgLyogV2hl
ZWxFdmVudERlbHRhRmlsdGVyLmggKi8sCisJCQkJN0FFMzM1RUYxQUNCMDlFMjAwRTQwMUVGIC8q
IFdoZWVsRXZlbnRUZXN0TW9uaXRvci5jcHAgKi8sCisJCQkJN0FFMzM1RjAxQUNCMDlFMjAwRTQw
MUVGIC8qIFdoZWVsRXZlbnRUZXN0TW9uaXRvci5oICovLAorCQkJCTdDNDE4OUFDMUIwN0NCRjIw
MDBGQTc1NyAvKiBXaW5kb3dFdmVudEhhbmRsZXJzLmlkbCAqLywKKwkJCQlCQzgyNDNFNjBEMENG
RDc1MDA0NjBDOEYgLyogV2luZG93RmVhdHVyZXMuY3BwICovLAorCQkJCUJDODI0M0U3MEQwQ0ZE
NzUwMDQ2MEM4RiAvKiBXaW5kb3dGZWF0dXJlcy5oICovLAorCQkJCTdFOTlBRjUyMEIxMzg0NjQ2
OEZCMDFBNSAvKiBXaW5kb3dGb2N1c0FsbG93ZWRJbmRpY2F0b3IuY3BwICovLAorCQkJCTdFOTlB
RjU0MEIxMzg0NjQ2OEZCMDFBNSAvKiBXaW5kb3dGb2N1c0FsbG93ZWRJbmRpY2F0b3IuaCAqLywK
KwkJCQk3QzY3NzEyQjI1MjdENzVGMDBGREVGMDAgLyogV2luZG93TG9jYWxTdG9yYWdlLmlkbCAq
LywKKwkJCQk3QzY3NzEzNzI1MjdERkY1MDBGREVGMDAgLyogV2luZG93T3JXb3JrZXJHbG9iYWxT
Y29wZStDcnlwdG8uaWRsICovLAorCQkJCTdDNjc3MTM2MjUyN0RGNEIwMEZERUYwMCAvKiBXaW5k
b3dPcldvcmtlckdsb2JhbFNjb3BlK1BlcmZvcm1hbmNlLmlkbCAqLywKKwkJCQk0NjBDNzQ1NjI2
REQ2OTlEMDA0MjdEM0UgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZS5jcHAgKi8sCisJCQkJ
NDYwQzc0NTgyNkRENjk5RDAwNDI3RDNFIC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUuaCAq
LywKKwkJCQk5MzcxMDgwRDFEQjc1NDU1MDA2MDc0NEUgLyogV2luZG93T3JXb3JrZXJHbG9iYWxT
Y29wZS5pZGwgKi8sCisJCQkJN0M2NzcxMkMyNTI3RDdDOTAwRkRFRjAwIC8qIFdpbmRvd1Nlc3Np
b25TdG9yYWdlLmlkbCAqLywKKwkJCQlFMTI3MUExMzBFRUVDODA0MDBGNjEyMTMgLyogV29ya2Vy
TmF2aWdhdG9yLmNwcCAqLywKKwkJCQlFMTI3MUEwQTBFRUVDNzdBMDBGNjEyMTMgLyogV29ya2Vy
TmF2aWdhdG9yLmggKi8sCisJCQkJRTEyNzFBNTEwRUVFQ0QxQzAwRjYxMjEzIC8qIFdvcmtlck5h
dmlnYXRvci5pZGwgKi8sCisJCQkpOworCQkJcGF0aCA9IHBhZ2U7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQkJdGFiV2lkdGggPSA0OworCQkJdXNlc1RhYnMgPSAwOworCQl9OworCQk2
RTI3RjI0MTIyOThDRTJFMDBGMUY2MzIgLyogYW5nbGUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTI3RTNDODA2MjU3RjVFNkUwMEM5ODZBQiAvKiBBTkdM
RUhlYWRlcnMuaCAqLywKKwkJCQk2RTI3RjI0MzIyOUM5Rjg0MDBGMUY2MzIgLyogRXh0ZW5zaW9u
c0dMQU5HTEUuY3BwICovLAorCQkJCTZFMjdGMjQ0MjI5QzlGOEQwMEYxRjYzMiAvKiBFeHRlbnNp
b25zR0xBTkdMRS5oICovLAorCQkJCTZFMjdGMjQyMjI5OENFNEIwMEYxRjYzMiAvKiBHcmFwaGlj
c0NvbnRleHRHTEFOR0xFLmNwcCAqLywKKwkJCQk3Qjc3NEM2MjI1RkI5MzU1MDA5MTM5NUYgLyog
R3JhcGhpY3NDb250ZXh0R0xBTkdMRUVHTFV0aWxpdGllcy5jcHAgKi8sCisJCQkJN0I0NUFCNTQy
NUZCQTlERDAwRkQyN0Y0IC8qIEdyYXBoaWNzQ29udGV4dEdMQU5HTEVFR0xVdGlsaXRpZXMuaCAq
LywKKwkJCQk3QkIzNEExNjI1MzQ1Q0IyMDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0R0xBTkdM
RVV0aWxpdGllcy5oICovLAorCQkJCTZFMjkwODYxMjI5REI5NTAwMDA5ODZFMiAvKiBUZW1wb3Jh
cnlBTkdMRVNldHRpbmcuY3BwICovLAorCQkJCTZFMjkwODYzMjI5REI5NzAwMDA5ODZFMiAvKiBU
ZW1wb3JhcnlBTkdMRVNldHRpbmcuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gYW5nbGU7CisJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk2Rjg0NEY3RjI2M0Q5MTYxMDBGOTEzNzAg
LyogZm9ybWF0dGluZ0NvbnRleHRzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGls
ZHJlbiA9ICgKKwkJCQkxMTVDRkE5OTIwOEJDMDlBMDAxRTY5OTEgLyogYmxvY2sgKi8sCisJCQkJ
NkZCN0QyRDUyNTBGRDdCNTAwMDIwN0FBIC8qIGZsZXggKi8sCisJCQkJMTE1Q0ZBOUEyMDhCQzE0
MDAwMUU2OTkxIC8qIGlubGluZSAqLywKKwkJCQk2RkM1Q0E5MTIyRTM1OTMzMDBCMTNFMTEgLyog
dGFibGUgKi8sCisJCQkJNkYxRTgzQTUyNjY1ODg4QzAwMkU5RDI4IC8qIEZvcm1hdHRpbmdDb25z
dHJhaW50cy5oICovLAorCQkJCTExNUNGQTY5MjA4QUY3RDAwMDFFNjk5MSAvKiBGb3JtYXR0aW5n
Q29udGV4dC5jcHAgKi8sCisJCQkJMTE1Q0ZBNjgyMDhBRjdEMDAwMUU2OTkxIC8qIEZvcm1hdHRp
bmdDb250ZXh0LmggKi8sCisJCQkJNkZCQjg2MDUyMEI0NjRCNjAwREFEOTM4IC8qIEZvcm1hdHRp
bmdHZW9tZXRyeS5jcHAgKi8sCisJCQkJNDc1Qzg5QTMyNjUwQUMzQjAwRjNCNDU2IC8qIEZvcm1h
dHRpbmdHZW9tZXRyeS5oICovLAorCQkJCTZGOEY0NjAxMjFCMDNCQjQwMDQxQUMzQSAvKiBGb3Jt
YXR0aW5nUXVpcmtzLmNwcCAqLywKKwkJCQk2RjU2QjQ0NjI2NDc5RTYxMDBBQUUyNTcgLyogRm9y
bWF0dGluZ1F1aXJrcy5oICovLAorCQkJKTsKKwkJCXBhdGggPSBmb3JtYXR0aW5nQ29udGV4dHM7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk2RkI3RDJENTI1MEZEN0I1MDAw
MjA3QUEgLyogZmxleCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAo
CisJCQkJNkZCN0QyRDcyNTBGRDdFNTAwMDIwN0FBIC8qIEZsZXhGb3JtYXR0aW5nQ29udGV4dC5j
cHAgKi8sCisJCQkJNkZCN0QyRDkyNTBGRDdGQzAwMDIwN0FBIC8qIEZsZXhGb3JtYXR0aW5nQ29u
dGV4dC5oICovLAorCQkJCTZGNzBERUREMjUxMTI2RjMwMEYwRkM3OCAvKiBGbGV4Rm9ybWF0dGlu
Z0dlb21ldHJ5LmNwcCAqLywKKwkJCQk2RkY5MTFGNjI2NDg3RkM4MDAyMDIxREYgLyogRmxleEZv
cm1hdHRpbmdHZW9tZXRyeS5oICovLAorCQkJCTZGQjdEMkQ4MjUwRkQ3RUYwMDAyMDdBQSAvKiBG
bGV4Rm9ybWF0dGluZ1N0YXRlLmNwcCAqLywKKwkJCQk2RkI3RDJEQTI1MEZEN0ZDMDAwMjA3QUEg
LyogRmxleEZvcm1hdHRpbmdTdGF0ZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBmbGV4OworCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNkZDNUNBOTEyMkUzNTkzMzAwQjEzRTEx
IC8qIHRhYmxlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQk2RjFFODNBMDI2NjU4ODRDMDAyRTlEMjggLyogVGFibGVGb3JtYXR0aW5nQ29uc3RyYWludHMu
aCAqLywKKwkJCQk2RkM1Q0E5NDIyRTM1OTk0MDBCMTNFMTEgLyogVGFibGVGb3JtYXR0aW5nQ29u
dGV4dC5jcHAgKi8sCisJCQkJNkZDNUNBOTUyMkUzNTk5NDAwQjEzRTExIC8qIFRhYmxlRm9ybWF0
dGluZ0NvbnRleHQuaCAqLywKKwkJCQkxMUQxOUMyRTIzMTU5QkFFMDA4RjI0RDMgLyogVGFibGVG
b3JtYXR0aW5nR2VvbWV0cnkuY3BwICovLAorCQkJCTQ3RkE5NkZGMjY1MDk4MkEwMDg0MTQxNiAv
KiBUYWJsZUZvcm1hdHRpbmdHZW9tZXRyeS5oICovLAorCQkJCTZGQzUzQUVCMjRBRjdBOEUwMDYw
NTlGRSAvKiBUYWJsZUZvcm1hdHRpbmdRdWlya3MuY3BwICovLAorCQkJCTZGNDlDM0U2MjY0NzlC
M0IwMDUxOTUzRCAvKiBUYWJsZUZvcm1hdHRpbmdRdWlya3MuaCAqLywKKwkJCQk2RkM1Q0E5MjIy
RTM1OTkzMDBCMTNFMTEgLyogVGFibGVGb3JtYXR0aW5nU3RhdGUuY3BwICovLAorCQkJCTZGQzVD
QTk2MjJFMzU5OTUwMEIxM0UxMSAvKiBUYWJsZUZvcm1hdHRpbmdTdGF0ZS5oICovLAorCQkJCTZG
NUI3RUFBMjMwMEE3OUUwMDY3RDlDMyAvKiBUYWJsZUdyaWQuY3BwICovLAorCQkJCTZGQjIyRTMw
MjMwMDk3RTMwMEMyMDg2NiAvKiBUYWJsZUdyaWQuaCAqLywKKwkJCQk2RkY5RjFCRTI0NkQ5NjZD
MDA0MzUwODMgLyogVGFibGVMYXlvdXQuY3BwICovLAorCQkJKTsKKwkJCXBhdGggPSB0YWJsZTsK
KwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTZGQ0ZDMDU1MjEyREFDQzIwMDc2
OTVEMiAvKiBmbG9hdHMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0g
KAorCQkJCTZGRkRDNDNFMjEyRUZGMTYwMEE5Q0E5MSAvKiBGbG9hdEF2b2lkZXIuY3BwICovLAor
CQkJCTZGRkRDNDQwMjEyRUZGMTYwMEE5Q0E5MSAvKiBGbG9hdEF2b2lkZXIuaCAqLywKKwkJCQkx
MTVDRkE4NTIwOEI5MDY2MDAxRTY5OTEgLyogRmxvYXRpbmdDb250ZXh0LmNwcCAqLywKKwkJCQkx
MTVDRkE4NDIwOEI5MDY2MDAxRTY5OTEgLyogRmxvYXRpbmdDb250ZXh0LmggKi8sCisJCQkJMTE1
Q0ZBODEyMDhCOEVEQTAwMUU2OTkxIC8qIEZsb2F0aW5nU3RhdGUuY3BwICovLAorCQkJCTExNUNG
QTgwMjA4QjhFREEwMDFFNjk5MSAvKiBGbG9hdGluZ1N0YXRlLmggKi8sCisJCQkpOworCQkJcGF0
aCA9IGZsb2F0czsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTZGRDRGRTNF
MjQ3MEIzQUQwMDczNzRDQyAvKiB0YWJsZXdyYXBwZXIgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTZGMTcyNjRDMjQ3MEM1RjcwMDUxOEM5NiAvKiBUYWJs
ZVdyYXBwZXJCbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmNwcCAqLywKKwkJCQk2RjE3MjY0RTI0NzBD
NjBBMDA1MThDOTYgLyogVGFibGVXcmFwcGVyQmxvY2tGb3JtYXR0aW5nQ29udGV4dC5oICovLAor
CQkJCTZGNjYzOEQ0MjQ5RTI2OEIwMDE5MjVGQyAvKiBUYWJsZVdyYXBwZXJCbG9ja0Zvcm1hdHRp
bmdRdWlya3MuY3BwICovLAorCQkJCTZGMTU1MjIwMjY0NzZCNUIwMEUzNTNDNiAvKiBUYWJsZVdy
YXBwZXJCbG9ja0Zvcm1hdHRpbmdRdWlya3MuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gdGFibGV3
cmFwcGVyOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNkZFN0REREQyMEVD
NkU4QjAwOEI1QjRFIC8qIHRleHQgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTZGQjExQjVCMjE3ODNGQ0YwMEUyQTU3NCAvKiBUZXh0VXRpbC5jcHAgKi8s
CisJCQkJNkZCMTFCNTkyMTc4M0ZDRjAwRTJBNTc0IC8qIFRleHRVdGlsLmggKi8sCisJCQkpOwor
CQkJcGF0aCA9IHRleHQ7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk3MTAy
NUVDMTFGOTlGMDk2MDA0QTI1MEMgLyogYW5pbWF0aW9uICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk3MUM1QkIxQjFGQjYxMUVBMDAwN0EyQUUgLyogQW5p
bWF0YWJsZS5pZGwgKi8sCisJCQkJNzFFRkNFREEyMDJCMzg4RjAwRDdDNDExIC8qIEFuaW1hdGlv
bkVmZmVjdC5jcHAgKi8sCisJCQkJNzFFRkNFRDcyMDJCMzg4RDAwRDdDNDExIC8qIEFuaW1hdGlv
bkVmZmVjdC5oICovLAorCQkJCTcxRUZDRUQ2MjAyQjM4OEMwMEQ3QzQxMSAvKiBBbmltYXRpb25F
ZmZlY3QuaWRsICovLAorCQkJCTcxRTJDNDI0MjFDOTM1MUQwMDI0RjhDOCAvKiBBbmltYXRpb25F
ZmZlY3RQaGFzZS5oICovLAorCQkJCTcxMUFEMTI1MjM2RDg2RDQwMDZGRjM3QyAvKiBBbmltYXRp
b25FdmVudEJhc2UuY3BwICovLAorCQkJCTcxMUFEMTIzMjM2RDg2RDMwMDZGRjM3QyAvKiBBbmlt
YXRpb25FdmVudEJhc2UuaCAqLywKKwkJCQk3QzM4MDZEQjI1MDVCMTg5MDA3NDRBN0IgLyogQW5p
bWF0aW9uRnJhbWVQcm92aWRlci5pZGwgKi8sCisJCQkJNzE0QzdDNjAxRkRBRDI3OTAwRjJCRUUx
IC8qIEFuaW1hdGlvblBsYXliYWNrRXZlbnQuY3BwICovLAorCQkJCTcxNEM3QzY1MUZEQUQyN0Iw
MEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFja0V2ZW50LmggKi8sCisJCQkJNzE0QzdDNjQxRkRB
RDI3QjAwRjJCRUUxIC8qIEFuaW1hdGlvblBsYXliYWNrRXZlbnQuaWRsICovLAorCQkJCTcxNEM3
QzYyMUZEQUQyN0EwMEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFja0V2ZW50SW5pdC5oICovLAor
CQkJCTcxNEM3QzYzMUZEQUQyN0EwMEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFja0V2ZW50SW5p
dC5pZGwgKi8sCisJCQkJNzEwMjVFQzYxRjk5RjA5NjAwNEEyNTBDIC8qIEFuaW1hdGlvblRpbWVs
aW5lLmNwcCAqLywKKwkJCQk3MTAyNUVDNzFGOTlGMDk2MDA0QTI1MEMgLyogQW5pbWF0aW9uVGlt
ZWxpbmUuaCAqLywKKwkJCQk3MTAyNUVDOTFGOTlGMDk2MDA0QTI1MEMgLyogQW5pbWF0aW9uVGlt
ZWxpbmUuaWRsICovLAorCQkJCTcxNTZCQzlGMjFDQTM1MDYwMDUzNDM5NyAvKiBCYXNpY0VmZmVj
dFRpbWluZy5oICovLAorCQkJCTcxMjQ3RTM1MUZFQTVGODEwMDhDMDhDRSAvKiBDb21wb3NpdGVP
cGVyYXRpb24uaCAqLywKKwkJCQk3MTI0N0UzNjFGRUE1RjgxMDA4QzA4Q0UgLyogQ29tcG9zaXRl
T3BlcmF0aW9uLmlkbCAqLywKKwkJCQk3MTExMjQzQjIxNkZBNkUwMDBFQjdCNjcgLyogQ29tcG9z
aXRlT3BlcmF0aW9uT3JBdXRvLmggKi8sCisJCQkJNzExMTI0M0QyMTZGQTZFMDAwRUI3QjY3IC8q
IENvbXBvc2l0ZU9wZXJhdGlvbk9yQXV0by5pZGwgKi8sCisJCQkJNzExNkUyQ0IxRkVENzVEMTAw
QzA2RkRFIC8qIENvbXB1dGVkRWZmZWN0VGltaW5nLmggKi8sCisJCQkJNzExNkUyQzkxRkVENzVE
MDAwQzA2RkRFIC8qIENvbXB1dGVkRWZmZWN0VGltaW5nLmlkbCAqLywKKwkJCQk3MUMyOUUyRTIw
M0NFNzZCMDA4RjM2RDIgLyogQ1NTQW5pbWF0aW9uLmNwcCAqLywKKwkJCQk3MUMyOUUzMDIwM0NF
NzZCMDA4RjM2RDIgLyogQ1NTQW5pbWF0aW9uLmggKi8sCisJCQkJNzFDMjlFMzEyMDNDRTc2QzAw
OEYzNkQyIC8qIENTU0FuaW1hdGlvbi5pZGwgKi8sCisJCQkJNzFGMDVGN0YyNTEyNDQwRDAwNzFF
NjkzIC8qIENTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcCAqLywKKwkJCQk3MUYwNUY3RTI1MTI0NDBD
MDA3MUU2OTMgLyogQ1NTUHJvcGVydHlBbmltYXRpb24uaCAqLywKKwkJCQk3MTMxNzEzMjFGQkU3
OEM1MDBGNzU4REUgLyogQ1NTUHJvcGVydHlCbGVuZGluZ0NsaWVudC5oICovLAorCQkJCTcxMjND
MTg3MjA0NzM5QkIwMDc4OTM5MiAvKiBDU1NUcmFuc2l0aW9uLmNwcCAqLywKKwkJCQk3MTIzQzE4
NjIwNDczOUJBMDA3ODkzOTIgLyogQ1NTVHJhbnNpdGlvbi5oICovLAorCQkJCTcxMjNDMTg1MjA0
NzM5QjkwMDc4OTM5MiAvKiBDU1NUcmFuc2l0aW9uLmlkbCAqLywKKwkJCQk3MTVBRDcxRjIwNTA1
MTI0MDBENTkyREMgLyogRGVjbGFyYXRpdmVBbmltYXRpb24uY3BwICovLAorCQkJCTcxNUFENzFE
MjA1MDUxMjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5oICovLAorCQkJCTdDM0E4
QUMwMjUwOUE2MDIwMDhDNDc3RiAvKiBEb2N1bWVudCtXZWJBbmltYXRpb25zLmlkbCAqLywKKwkJ
CQk3QzM2NTU3MDI1MDZFMEE3MDBBNzg4MkIgLyogRG9jdW1lbnRPclNoYWRvd1Jvb3QrV2ViQW5p
bWF0aW9ucy5pZGwgKi8sCisJCQkJNzEwMjVFQzQxRjk5RjA5NjAwNEEyNTBDIC8qIERvY3VtZW50
VGltZWxpbmUuY3BwICovLAorCQkJCTcxMDI1RUM1MUY5OUYwOTYwMDRBMjUwQyAvKiBEb2N1bWVu
dFRpbWVsaW5lLmggKi8sCisJCQkJNzEwMjVFQ0ExRjk5RjA5NjAwNEEyNTBDIC8qIERvY3VtZW50
VGltZWxpbmUuaWRsICovLAorCQkJCTcxNzI5RjdBMjBGM0JBM0EwMDgwMUNFNiAvKiBEb2N1bWVu
dFRpbWVsaW5lT3B0aW9ucy5oICovLAorCQkJCTcxNzI5Rjc5MjBGM0JBMzkwMDgwMUNFNiAvKiBE
b2N1bWVudFRpbWVsaW5lT3B0aW9ucy5pZGwgKi8sCisJCQkJNzE4MUExNkIyNDRGMEYyRDAwN0Q4
QTI0IC8qIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5jcHAgKi8sCisJCQkJNzE4MUExNjky
NDRGMEYyQzAwN0Q4QTI0IC8qIERvY3VtZW50VGltZWxpbmVzQ29udHJvbGxlci5oICovLAorCQkJ
CTcxMkJFNDdDMUZFODY0NDgwMDIwMzFDQyAvKiBFZmZlY3RUaW1pbmcuaCAqLywKKwkJCQk3MTJC
RTQ3QTFGRTg2NDQ3MDAyMDMxQ0MgLyogRWZmZWN0VGltaW5nLmlkbCAqLywKKwkJCQk3MTE5NDY1
NTI0MTgxRTg0MDA0NjZDMTEgLyogRWxlbWVudEFuaW1hdGlvblJhcmVEYXRhLmNwcCAqLywKKwkJ
CQk3MTE5NDY1MzI0MTgxRTgzMDA0NjZDMTEgLyogRWxlbWVudEFuaW1hdGlvblJhcmVEYXRhLmgg
Ki8sCisJCQkJNzEyQkU0ODExRkU4NjVENDAwMjAzMUNDIC8qIEZpbGxNb2RlLmggKi8sCisJCQkJ
NzEyQkU0ODIxRkU4NjVENTAwMjAzMUNDIC8qIEZpbGxNb2RlLmlkbCAqLywKKwkJCQk3MTNGMUQ1
OTIzREYxRDdEMDAzRjVFRkEgLyogR2V0QW5pbWF0aW9uc09wdGlvbnMuaCAqLywKKwkJCQk3MTNG
MUQ1NzIzREYxRDdEMDAzRjVFRkEgLyogR2V0QW5pbWF0aW9uc09wdGlvbnMuaWRsICovLAorCQkJ
CTdDMkQ3MjJDMjUwODM5NjMwMDUzOTY2MiAvKiBHbG9iYWxFdmVudEhhbmRsZXJzK0NTU0FuaW1h
dGlvbnMuaWRsICovLAorCQkJCTdDMkQ3MjI5MjUwODM4QjAwMDUzOTY2MiAvKiBHbG9iYWxFdmVu
dEhhbmRsZXJzK0NTU1RyYW5zaXRpb25zLmlkbCAqLywKKwkJCQk3MTI0N0UzMzFGRUE1RjgwMDA4
QzA4Q0UgLyogSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggKi8sCisJCQkJNzEyNDdFMzEx
RkVBNUY3RTAwOEMwOENFIC8qIEl0ZXJhdGlvbkNvbXBvc2l0ZU9wZXJhdGlvbi5pZGwgKi8sCisJ
CQkJNzEyNDdFMkYxRkVBNUY3RDAwOEMwOENFIC8qIEtleWZyYW1lQW5pbWF0aW9uT3B0aW9ucy5o
ICovLAorCQkJCTcxMjQ3RTM0MUZFQTVGODAwMDhDMDhDRSAvKiBLZXlmcmFtZUFuaW1hdGlvbk9w
dGlvbnMuaWRsICovLAorCQkJCTcxNTU2Q0E4MUY5RjA5OUIwMEU3OEQwOCAvKiBLZXlmcmFtZUVm
ZmVjdC5jcHAgKi8sCisJCQkJNzE1NTZDQUExRjlGMDk5QjAwRTc4RDA4IC8qIEtleWZyYW1lRWZm
ZWN0LmggKi8sCisJCQkJNzE1NTZDQUIxRjlGMDk5QzAwRTc4RDA4IC8qIEtleWZyYW1lRWZmZWN0
LmlkbCAqLywKKwkJCQk3MTI0N0UzMjFGRUE1RjdGMDA4QzA4Q0UgLyogS2V5ZnJhbWVFZmZlY3RP
cHRpb25zLmggKi8sCisJCQkJNzEyNDdFMzAxRkVBNUY3RTAwOEMwOENFIC8qIEtleWZyYW1lRWZm
ZWN0T3B0aW9ucy5pZGwgKi8sCisJCQkJNzFBNTgxOTUyMzZGNDY2NTAwRDgxQTI0IC8qIEtleWZy
YW1lRWZmZWN0U3RhY2suY3BwICovLAorCQkJCTcxQTU4MTkzMjM2RjQ2NjQwMEQ4MUEyNCAvKiBL
ZXlmcmFtZUVmZmVjdFN0YWNrLmggKi8sCisJCQkJNzEyMDczM0QyMTZERkFGMTAwQzc4MzI5IC8q
IE9wdGlvbmFsRWZmZWN0VGltaW5nLmggKi8sCisJCQkJNzEyMDczM0YyMTZERkFGMjAwQzc4MzI5
IC8qIE9wdGlvbmFsRWZmZWN0VGltaW5nLmlkbCAqLywKKwkJCQk3MTJCRTQ3RTFGRTg2NDlEMDAy
MDMxQ0MgLyogUGxheWJhY2tEaXJlY3Rpb24uaCAqLywKKwkJCQk3MTJCRTQ3RjFGRTg2NDlFMDAy
MDMxQ0MgLyogUGxheWJhY2tEaXJlY3Rpb24uaWRsICovLAorCQkJCTcxMDI1RUMzMUY5OUYwOTYw
MDRBMjUwQyAvKiBXZWJBbmltYXRpb24uY3BwICovLAorCQkJCTcxMDI1RUMyMUY5OUYwOTYwMDRB
MjUwQyAvKiBXZWJBbmltYXRpb24uaCAqLywKKwkJCQk3MTAyNUVDODFGOTlGMDk2MDA0QTI1MEMg
LyogV2ViQW5pbWF0aW9uLmlkbCAqLywKKwkJCQk3MTA4RUVFNDI0MThFRDUzMDA1QzNEQTcgLyog
V2ViQW5pbWF0aW9uVHlwZXMuaCAqLywKKwkJCQk3MUMyNUFGNTIzOTJCRjNDMDBENUMwOTggLyog
V2ViQW5pbWF0aW9uVXRpbGl0aWVzLmNwcCAqLywKKwkJCQk3MTMyNDQ0RjIwMTA5RDlCMDBBRTdG
QjIgLyogV2ViQW5pbWF0aW9uVXRpbGl0aWVzLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGFuaW1h
dGlvbjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTcxNkZBMEQ3MURCMjY1
OTEwMDczMjNDQyAvKiBjb250cm9scyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJOTU1MTk1OTYyNUZBOUVBRjAwRjU4Q0YwIC8qIGFjdGl2aXR5LWluZGlj
YXRvci5jc3MgKi8sCisJCQkJNzE2RkEwRDgxREIyNjU5MTAwNzMyM0NDIC8qIGFpcnBsYXktYnV0
dG9uLmNzcyAqLywKKwkJCQk3MTZGQTBEOTFEQjI2NTkxMDA3MzIzQ0MgLyogYWlycGxheS1idXR0
b24uanMgKi8sCisJCQkJNzE2RkEwREExREIyNjU5MTAwNzMyM0NDIC8qIGFpcnBsYXktcGxhY2Fy
ZC5qcyAqLywKKwkJCQkyRDU2ODAwMTIzODg4NjAzMDA3RUNCOEEgLyogYXV0by1oaWRlLWNvbnRy
b2xsZXIuanMgKi8sCisJCQkJOTU1MTk1OTgyNUZBOUVCODAwRjU4Q0YwIC8qIGJhY2tncm91bmQt
Y2xpY2stZGVsZWdhdGUtbm90aWZpZXIuanMgKi8sCisJCQkJOTU1MTk1OTcyNUZBOUVCODAwRjU4
Q0YwIC8qIGJhY2tncm91bmQtdGludC5jc3MgKi8sCisJCQkJOTU1MTk1OTkyNUZBOUVCOTAwRjU4
Q0YwIC8qIGJhY2tncm91bmQtdGludC5qcyAqLywKKwkJCQk3MTZGQTBEQzFEQjI2NTkxMDA3MzIz
Q0MgLyogYnV0dG9uLmNzcyAqLywKKwkJCQk3MTZGQTBERDFEQjI2NTkxMDA3MzIzQ0MgLyogYnV0
dG9uLmpzICovLAorCQkJCTcxNkZBMERFMURCMjY1OTEwMDczMjNDQyAvKiBidXR0b25zLWNvbnRh
aW5lci5jc3MgKi8sCisJCQkJNzE2RkEwREYxREIyNjU5MTAwNzMyM0NDIC8qIGJ1dHRvbnMtY29u
dGFpbmVyLmpzICovLAorCQkJCTcxN0Y2MThCMUU0M0Q2MUEwMEYzNzAyNCAvKiBjb250cm9scy1i
YXIuY3NzICovLAorCQkJCTcxMEZBNzRCMURFRTU3NkQwMDRDNzE1RSAvKiBjb250cm9scy1iYXIu
anMgKi8sCisJCQkJNzE2RkEwRTAxREIyNjU5MTAwNzMyM0NDIC8qIGZvcndhcmQtYnV0dG9uLmpz
ICovLAorCQkJCTcxNkZBMEUxMURCMjY1OTEwMDczMjNDQyAvKiBmdWxsc2NyZWVuLWJ1dHRvbi5q
cyAqLywKKwkJCQk3MTZGQTBFNDFEQjI2NTkxMDA3MzIzQ0MgLyogaWNvbi1zZXJ2aWNlLmpzICov
LAorCQkJCTk1NTE5NTlBMjVGQTlFQzYwMEY1OENGMCAvKiBpbmxpbmUtbWVkaWEtY29udHJvbHMu
Y3NzICovLAorCQkJCTk1NTE5NTlCMjVGQTlFQ0MwMEY1OENGMCAvKiBpbmxpbmUtbWVkaWEtY29u
dHJvbHMuanMgKi8sCisJCQkJNzE0RjVCMDUxREVFNUY3NDAwNzVCRDE3IC8qIGludmFsaWQtcGxh
Y2FyZC5qcyAqLywKKwkJCQk3MTUyQ0VDMjFERDIyMzUzMDBGRDU5NjIgLyogaW9zLWlubGluZS1t
ZWRpYS1jb250cm9scy5qcyAqLywKKwkJCQlCQ0QzNzM3MDI2ODY0MjNDMDAzNjQ0RTQgLyogaW9z
LWxheW91dC10cmFpdHMuanMgKi8sCisJCQkJNzE2RkEwRTUxREIyNjU5MTAwNzMyM0NDIC8qIGxh
eW91dC1pdGVtLmpzICovLAorCQkJCTcxNkZBMEU2MURCMjY1OTEwMDczMjNDQyAvKiBsYXlvdXQt
bm9kZS5qcyAqLywKKwkJCQlCQ0QzNzM2QzI2ODYzNUJFMDAzNjQ0RTQgLyogbGF5b3V0LXRyYWl0
cy5qcyAqLywKKwkJCQk3MTIxNTdDMDFEQ0NDQTA3MDBBQTdBOTIgLyogbWFjb3MtZnVsbHNjcmVl
bi1tZWRpYS1jb250cm9scy5jc3MgKi8sCisJCQkJNzEyMTU3QzExRENDQ0EwNzAwQUE3QTkyIC8q
IG1hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMuanMgKi8sCisJCQkJNzE2RkEwRTcxREIy
NjU5MTAwNzMyM0NDIC8qIG1hY29zLWlubGluZS1tZWRpYS1jb250cm9scy5jc3MgKi8sCisJCQkJ
NzE2RkEwRTgxREIyNjU5MTAwNzMyM0NDIC8qIG1hY29zLWlubGluZS1tZWRpYS1jb250cm9scy5q
cyAqLywKKwkJCQlCQ0QzNzM2RTI2ODYzNzBBMDAzNjQ0RTQgLyogbWFjb3MtbGF5b3V0LXRyYWl0
cy5qcyAqLywKKwkJCQk3MTZGQTBFQTFEQjI2NTkxMDA3MzIzQ0MgLyogbWVkaWEtY29udHJvbHMu
Y3NzICovLAorCQkJCTcxNkZBMEVCMURCMjY1OTEwMDczMjNDQyAvKiBtZWRpYS1jb250cm9scy5q
cyAqLywKKwkJCQk5NTUxOTU5QzI1RkE5RUUzMDBGNThDRjAgLyogbWVkaWEtZG9jdW1lbnQuY3Nz
ICovLAorCQkJCTcxNkZBMEVDMURCMjY1OTEwMDczMjNDQyAvKiBtdXRlLWJ1dHRvbi5qcyAqLywK
KwkJCQk5NTBDNDg0QjI1RDY3NzRFMDBBQjNEOUMgLyogb3ZlcmZsb3ctYnV0dG9uLmpzICovLAor
CQkJCTcxNkZBMEVEMURCMjY1OTEwMDczMjNDQyAvKiBwaXAtYnV0dG9uLmpzICovLAorCQkJCTcx
NkZBMEVFMURCMjY1OTEwMDczMjNDQyAvKiBwaXAtcGxhY2FyZC5qcyAqLywKKwkJCQk3MTZGQTBF
RjFEQjI2NTkxMDA3MzIzQ0MgLyogcGxhY2FyZC5jc3MgKi8sCisJCQkJNzE2RkEwRjAxREIyNjU5
MTAwNzMyM0NDIC8qIHBsYWNhcmQuanMgKi8sCisJCQkJNzE2RkEwRjExREIyNjU5MTAwNzMyM0ND
IC8qIHBsYXktcGF1c2UtYnV0dG9uLmpzICovLAorCQkJCTcxNkZBMEYyMURCMjY1OTEwMDczMjND
QyAvKiByZXdpbmQtYnV0dG9uLmpzICovLAorCQkJCTcxNkZBMEYzMURCMjY1OTEwMDczMjNDQyAv
KiBzY2hlZHVsZXIuanMgKi8sCisJCQkJNzE4Njc1NDMxREYxMDFBRDAwMzNEN0YzIC8qIHNlZWst
YnV0dG9uLmpzICovLAorCQkJCTcxNkZBMEY2MURCMjY1OTEwMDczMjNDQyAvKiBza2lwLWJhY2st
YnV0dG9uLmpzICovLAorCQkJCTk1NTE5NTlEMjVGQTlFRkIwMEY1OENGMCAvKiBza2lwLWZvcndh
cmQtYnV0dG9uLmpzICovLAorCQkJCTcxNkZBMEY3MURCMjY1OTEwMDczMjNDQyAvKiBzbGlkZXIu
Y3NzICovLAorCQkJCTcxNkZBMEY4MURCMjY1OTEwMDczMjNDQyAvKiBzbGlkZXIuanMgKi8sCisJ
CQkJNzE4QzdGNTYxREQzODVDNTAwQjczM0M4IC8qIHN0YXR1cy1sYWJlbC5jc3MgKi8sCisJCQkJ
NzE4QzdGNTcxREQzODVDNTAwQjczM0M4IC8qIHN0YXR1cy1sYWJlbC5qcyAqLywKKwkJCQk3MTdG
NjE4RTFFNDNENjFBMDBGMzcwMjQgLyogdGV4dC10cmFja3MuY3NzICovLAorCQkJCTcxNkZBMEZC
MURCMjY1OTEwMDczMjNDQyAvKiB0aW1lLWNvbnRyb2wuanMgKi8sCisJCQkJNzE2RkEwRkMxREIy
NjU5MTAwNzMyM0NDIC8qIHRpbWUtbGFiZWwuY3NzICovLAorCQkJCTcxNkZBMEZEMURCMjY1OTEw
MDczMjNDQyAvKiB0aW1lLWxhYmVsLmpzICovLAorCQkJCTcxNkZBMEZFMURCMjY1OTEwMDczMjND
QyAvKiB0cmFja3MtYnV0dG9uLmpzICovLAorCQkJCTk1NTE5NThFMjVGQTlFMzAwMEY1OENGMCAv
KiB3YXRjaG9zLWFjdGl2aXR5LWluZGljYXRvci5jc3MgKi8sCisJCQkJOTU1MTk1OEYyNUZBOUUz
MTAwRjU4Q0YwIC8qIHdhdGNob3MtYWN0aXZpdHktaW5kaWNhdG9yLmpzICovLAorCQkJCUJDRDM3
MzZGMjY4NjQyMDMwMDM2NDRFNCAvKiB3YXRjaG9zLWxheW91dC10cmFpdHMuanMgKi8sCisJCQkJ
OTU1MTk1OEQyNUZBOUUzMDAwRjU4Q0YwIC8qIHdhdGNob3MtbWVkaWEtY29udHJvbHMuY3NzICov
LAorCQkJCTcxREUyNzk0MjAzQTlDMUMwMDU4Q0I1MSAvKiB3YXRjaG9zLW1lZGlhLWNvbnRyb2xz
LmpzICovLAorCQkJKTsKKwkJCW5hbWUgPSBjb250cm9sczsKKwkJCXBhdGggPSAiTW9kdWxlcy9t
b2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMiOworCQkJc291cmNlVHJlZSA9IFNPVVJDRV9S
T09UOworCQl9OworCQk3MUQwMkQ5MTFEQjU1QzRFMDBERDVDRjUgLyogbWVkaWEgKi8gPSB7CisJ
CQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTcxN0Y5MDU4MURDNEJCNjAw
MDA2RjUyMCAvKiBhaXJwbGF5LXN1cHBvcnQuanMgKi8sCisJCQkJOTU1MTk1OTEyNUZBOUU0MzAw
RjU4Q0YwIC8qIGF1ZGlvLXN1cHBvcnQuanMgKi8sCisJCQkJNzEwRkE3NEMxREVFNTc3RTAwNEM3
MTVFIC8qIGNvbnRyb2xzLXZpc2liaWxpdHktc3VwcG9ydC5qcyAqLywKKwkJCQk3MTQxMzE0NzFE
QzlENkFGMDAzMzYxMDcgLyogZnVsbHNjcmVlbi1zdXBwb3J0LmpzICovLAorCQkJCTcxNzdFMjQ2
MURCODBEMkYwMDkxOUEwQiAvKiBtZWRpYS1jb250cm9sbGVyLXN1cHBvcnQuanMgKi8sCisJCQkJ
NzFEMDJEOTIxREI1NUM0RTAwREQ1Q0Y1IC8qIG1lZGlhLWNvbnRyb2xsZXIuanMgKi8sCisJCQkJ
OTU1MTk1OTIyNUZBOUU0QzAwRjU4Q0YwIC8qIG1lZGlhLWRvY3VtZW50LWNvbnRyb2xsZXIuanMg
Ki8sCisJCQkJNzE3N0UyNDcxREI4MEQyRjAwOTE5QTBCIC8qIG11dGUtc3VwcG9ydC5qcyAqLywK
KwkJCQk5NTBDNDg0OTI1RDY3NzQyMDBBQjNEOUMgLyogb3ZlcmZsb3ctc3VwcG9ydC5qcyAqLywK
KwkJCQk3MTMwMTQxRDFEQzlDMDg2MDBDQTNBODggLyogcGlwLXN1cHBvcnQuanMgKi8sCisJCQkJ
NzExRkIwNzUxREM3Njg4RjAwQzRDNzA4IC8qIHBsYWNhcmQtc3VwcG9ydC5qcyAqLywKKwkJCQk3
MTAwNEI5RDFEQzEzOTg4MDBBNTJBMzggLyogcGxheWJhY2stc3VwcG9ydC5qcyAqLywKKwkJCQk3
MTU3RTNEMTFEQzFFRTRCMDA5NDU1MEUgLyogc2NydWJiaW5nLXN1cHBvcnQuanMgKi8sCisJCQkJ
NzE4Njc1NDQxREYxMDFDNjAwMzNEN0YzIC8qIHNlZWstYmFja3dhcmQtc3VwcG9ydC5qcyAqLywK
KwkJCQk3MTg2NzU0NTFERjEwMUM2MDAzM0Q3RjMgLyogc2Vlay1mb3J3YXJkLXN1cHBvcnQuanMg
Ki8sCisJCQkJNzE4Njc1NDYxREYxMDFDNjAwMzNEN0YzIC8qIHNlZWstc3VwcG9ydC5qcyAqLywK
KwkJCQk3MUQyNTU0RjFEQjkwMDAyMDAwNEQ3NkIgLyogc2tpcC1iYWNrLXN1cHBvcnQuanMgKi8s
CisJCQkJNzE3N0UyNDgxREI4MEQyRjAwOTE5QTBCIC8qIHN0YXJ0LXN1cHBvcnQuanMgKi8sCisJ
CQkJNzFCMDQ2MEExREQzQzJFRTAwRUUxOUNGIC8qIHN0YXR1cy1zdXBwb3J0LmpzICovLAorCQkJ
CTk1NTE5NTk1MjVGQTlFN0UwMEY1OENGMCAvKiB0aW1lLWNvbnRyb2wtc3VwcG9ydC5qcyAqLywK
KwkJCQk3MUY5MzZGNzFERDRGOTlCMDA5MjJDQzcgLyogdHJhY2tzLXN1cHBvcnQuanMgKi8sCisJ
CQkJNzE3RjkwNTcxREM0MEVENjAwMDZGNTIwIC8qIHZvbHVtZS1zdXBwb3J0LmpzICovLAorCQkJ
CTk1NTE5NTkwMjVGQTlFM0QwMEY1OENGMCAvKiB3YXRjaG9zLW1lZGlhLWNvbnRyb2xzLXN1cHBv
cnQuanMgKi8sCisJCQkpOworCQkJcGF0aCA9IG1lZGlhOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJNzFENDc0QTEyNDYyRTgzNDAwMkYwMTA2IC8qIHdhdGNoT1MgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTcxRDQ3NEEzMjQ2MkU4
MzQwMDJGMDEwNiAvKiBJbnZhbGlkQ2lyY2xlLnBkZiAqLywKKwkJCQk3MUQ0NzRBMjI0NjJFODM0
MDAyRjAxMDYgLyogUGxheUNpcmNsZS5wZGYgKi8sCisJCQkJNzFENDc0QTQyNDYyRTgzNDAwMkYw
MTA2IC8qIFNwaW5uZXJTcHJpdGVAMngucG5nICovLAorCQkJKTsKKwkJCXBhdGggPSB3YXRjaE9T
OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNzFENkFBMzkxREE0RUFGNzAw
QjIzOTY5IC8qIG1vZGVybi1tZWRpYS1jb250cm9scyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3Vw
OworCQkJY2hpbGRyZW4gPSAoCisJCQkJNzE2RkEwRDcxREIyNjU5MTAwNzMyM0NDIC8qIGNvbnRy
b2xzICovLAorCQkJCTJEOEQzQkVBMjM4NDdBQzgwMDY1NzA3NSAvKiBnZXN0dXJlLXJlY29nbml6
ZXJzICovLAorCQkJCTcxRDZBQTZGMURBNEVBRjcwMEIyMzk2OSAvKiBpbWFnZXMgKi8sCisJCQkJ
NzFEMDJEOTExREI1NUM0RTAwREQ1Q0Y1IC8qIG1lZGlhICovLAorCQkJCTcxRDAyRDkwMURCNTVD
NEUwMERENUNGNSAvKiBtYWluLmpzICovLAorCQkJKTsKKwkJCXBhdGggPSAibW9kZXJuLW1lZGlh
LWNvbnRyb2xzIjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTcxRDZBQTZG
MURBNEVBRjcwMEIyMzk2OSAvKiBpbWFnZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCTcxRDZBQTcwMURBNEVBRjcwMEIyMzk2OSAvKiBpT1MgKi8sCisJ
CQkJNzFENkFBOEYxREE0RUFGNzAwQjIzOTY5IC8qIG1hY09TICovLAorCQkJCTcxRDQ3NEExMjQ2
MkU4MzQwMDJGMDEwNiAvKiB3YXRjaE9TICovLAorCQkJKTsKKwkJCXBhdGggPSBpbWFnZXM7CisJ
CQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk3MUQ2QUE3MDFEQTRFQUY3MDBCMjM5
NjkgLyogaU9TICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQk3MUQ2QUE3MTFEQTRFQUY3MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJkQDF4LnBuZyAqLywK
KwkJCQk3MUQ2QUE3MjFEQTRFQUY3MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJkQDJ4LnBuZyAq
LywKKwkJCQk3MUQ2QUE3MzFEQTRFQUY3MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJkQDN4LnBu
ZyAqLywKKwkJCQk3MTRGNUIwNjFERUU1RjhBMDA3NUJEMTcgLyogaW52YWxpZC1wbGFjYXJkQDF4
LnBuZyAqLywKKwkJCQk3MTRGNUIwNzFERUU1RjhBMDA3NUJEMTcgLyogaW52YWxpZC1wbGFjYXJk
QDJ4LnBuZyAqLywKKwkJCQk3MTRGNUIwODFERUU1RjhBMDA3NUJEMTcgLyogaW52YWxpZC1wbGFj
YXJkQDN4LnBuZyAqLywKKwkJCQk3MUQ2QUE4NTFEQTRFQUY3MDBCMjM5NjkgLyogcGlwLXBsYWNh
cmRAMXgucG5nICovLAorCQkJCTcxRDZBQTg2MURBNEVBRjcwMEIyMzk2OSAvKiBwaXAtcGxhY2Fy
ZEAyeC5wbmcgKi8sCisJCQkJNzFENkFBODcxREE0RUFGNzAwQjIzOTY5IC8qIHBpcC1wbGFjYXJk
QDN4LnBuZyAqLywKKwkJCSk7CisJCQlwYXRoID0gaU9TOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJNzFENkFBOEYxREE0RUFGNzAwQjIzOTY5IC8qIG1hY09TICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk3MUQ2QUE5MjFEQTRFQUY3
MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJkQDF4LnBuZyAqLywKKwkJCQk3MUQ2QUE5MzFEQTRF
QUY3MDBCMjM5NjkgLyogYWlycGxheS1wbGFjYXJkQDJ4LnBuZyAqLywKKwkJCQk3MTRGNUIwOTFE
RUU1RjlFMDA3NUJEMTcgLyogaW52YWxpZC1wbGFjYXJkQDF4LnBuZyAqLywKKwkJCQk3MTRGNUIw
QTFERUU1RjlFMDA3NUJEMTcgLyogaW52YWxpZC1wbGFjYXJkQDJ4LnBuZyAqLywKKwkJCQk3MUQ2
QUFBQTFEQTRFQUY3MDBCMjM5NjkgLyogcGlwLXBsYWNhcmRAMXgucG5nICovLAorCQkJCTcxRDZB
QUFCMURBNEVBRjcwMEIyMzk2OSAvKiBwaXAtcGxhY2FyZEAyeC5wbmcgKi8sCisJCQkpOworCQkJ
cGF0aCA9IG1hY09TOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJNzFGODQ5
Q0MyNTY1QUI3RTAwOEMzN0YyIC8qIG1vZGVsLWVsZW1lbnQgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTcxQTNEMTgwMjU2MkI4MjUwMDY0RTJBNiAvKiBI
VE1MTW9kZWxFbGVtZW50LmNwcCAqLywKKwkJCQk3MUEzRDE3RDI1NjJCODI0MDA2NEUyQTYgLyog
SFRNTE1vZGVsRWxlbWVudC5oICovLAorCQkJCTcxQTNEMTdGMjU2MkI4MjQwMDY0RTJBNiAvKiBI
VE1MTW9kZWxFbGVtZW50LmlkbCAqLywKKwkJCQk3MUNBQTNEOTI2OEQwQkY5MDBGMjU0MTAgLyog
SFRNTE1vZGVsRWxlbWVudENvY29hLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSAibW9kZWwtZWxl
bWVudCI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk3QzAxMUYzQzI0RkFE
MzYwMDA1QkVGMTAgLyogU2V0dGluZ3NUZW1wbGF0ZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTdDMDExRjNFMjRGQUQzNjAwMDVCRUYxMCAvKiBJbnRl
cm5hbFNldHRpbmdzR2VuZXJhdGVkLmNwcC5lcmIgKi8sCisJCQkJN0MwMTFGNDEyNEZBRDM2MDAw
NUJFRjEwIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaC5lcmIgKi8sCisJCQkJN0MwMTFG
M0YyNEZBRDM2MDAwNUJFRjEwIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaWRsLmVyYiAq
LywKKwkJCQk3QzAxMUYzRDI0RkFEMzYwMDA1QkVGMTAgLyogU2V0dGluZ3MuY3BwLmVyYiAqLywK
KwkJCQk3QzAxMUY0MDI0RkFEMzYwMDA1QkVGMTAgLyogU2V0dGluZ3MuaC5lcmIgKi8sCisJCQkp
OworCQkJbmFtZSA9IFNldHRpbmdzVGVtcGxhdGVzOworCQkJcGF0aCA9IFNjcmlwdHMvU2V0dGlu
Z3NUZW1wbGF0ZXM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk3QzMzMEEw
NDFERjlGOTNCMDBEMzM5NUMgLyogR2VvbG9jYXRpb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUZFNkZENDhCMEY2NzZFOTMwMDA5Mjg3MyAvKiBKU0Nv
b3JkaW5hdGVzLmNwcCAqLywKKwkJCQlGRTZGRDQ4QzBGNjc2RTkzMDAwOTI4NzMgLyogSlNDb29y
ZGluYXRlcy5oICovLAorCQkJCUZFODBEQTVGMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0
aW9uLmNwcCAqLywKKwkJCQlGRTgwREE2MDBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9sb2NhdGlv
bi5oICovLAorCQkJCUZFODBEQTYxMEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb3Bvc2l0aW9uLmNw
cCAqLywKKwkJCQlGRTgwREE2MjBFOUM0NzAzMDAwRDZGNzUgLyogSlNHZW9wb3NpdGlvbi5oICov
LAorCQkJCTU5ODM2NUUzMTM1NUY2MDQwMDFCMTg1RCAvKiBKU1Bvc2l0aW9uQ2FsbGJhY2suY3Bw
ICovLAorCQkJCTU5ODM2NURDMTM1NUY1M0MwMDFCMTg1RCAvKiBKU1Bvc2l0aW9uQ2FsbGJhY2su
aCAqLywKKwkJCQlGRTgwREE2RDBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3NpdGlvbkVycm9yLmNw
cCAqLywKKwkJCQlGRTgwREE2RTBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3NpdGlvbkVycm9yLmgg
Ki8sCisJCQkJNTk4MzY1RTUxMzU1RjYwRDAwMUIxODVEIC8qIEpTUG9zaXRpb25FcnJvckNhbGxi
YWNrLmNwcCAqLywKKwkJCQk1OTgzNjVERTEzNTVGNTYyMDAxQjE4NUQgLyogSlNQb3NpdGlvbkVy
cm9yQ2FsbGJhY2suaCAqLywKKwkJCQk3QzMzMEEwNTFERjlGOTUxMDBEMzM5NUMgLyogSlNQb3Np
dGlvbk9wdGlvbnMuY3BwICovLAorCQkJCTdDMzMwQTA2MURGOUY5NTEwMEQzMzk1QyAvKiBKU1Bv
c2l0aW9uT3B0aW9ucy5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBHZW9sb2NhdGlvbjsKKwkJCXNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTdDM0Q4RUU0MUUwOEJBQkUwMDIzQjA4NCAv
KiBHQyAvIFdyYXBwaW5nIE9ubHkgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTQxMDkzODJDMjM0Nzg1MEUwMDk0MjhCQSAvKiBKU0Fib3J0U2lnbmFsQ3Vz
dG9tLmNwcCAqLywKKwkJCQk5MzU1RUY1MzI1M0E0RDVBMDA2RkY0QTQgLyogSlNBYnN0cmFjdFJh
bmdlQ3VzdG9tLmNwcCAqLywKKwkJCQk3MUVGQ0VERTIwMkIzOUM3MDBEN0M0MTEgLyogSlNBbmlt
YXRpb25FZmZlY3RDdXN0b20uY3BwICovLAorCQkJCTcxMDI1RUQ1MUY5OUYxNDcwMDRBMjUwQyAv
KiBKU0FuaW1hdGlvblRpbWVsaW5lQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzJFRDZCQjBDNkJEMkYw
MDA5MjBCRkYgLyogSlNBdHRyQ3VzdG9tLmNwcCAqLywKKwkJCQk0NkMzQThEMzI1NDhENEI3MDBD
OEM1M0EgLyogSlNBdWRpb0J1ZmZlckN1c3RvbS5jcHAgKi8sCisJCQkJNDY2NTM2RkEyNjRDOERE
MTAwQUFEMUQ3IC8qIEpTQXVkaW9Ob2RlQ3VzdG9tLmNwcCAqLywKKwkJCQk4M0YzN0E2NzI1MzZC
MjFCMDBGRjVGM0IgLyogSlNBdWRpb1dvcmtsZXRQcm9jZXNzb3JDdXN0b20uY3BwICovLAorCQkJ
CTU3NjA4MjU2MjAxMUJFMDIwMDExNjY3OCAvKiBKU0F1dGhlbnRpY2F0b3JSZXNwb25zZUN1c3Rv
bS5jcHAgKi8sCisJCQkJNDY4QjhCREUyNUNDODQ5MzAwRjY3ODIyIC8qIEpTQmFzZUF1ZGlvQ29u
dGV4dEN1c3RvbS5jcHAgKi8sCisJCQkJNTc2MDgyNEYyMDExOEQ4RDAwMTE2Njc4IC8qIEpTQmFz
aWNDcmVkZW50aWFsQ3VzdG9tLmNwcCAqLywKKwkJCQk4OTMxREU1QTE0QzQ0QzQ0MDAwREM5RDIg
LyogSlNCbG9iQ3VzdG9tLmNwcCAqLywKKwkJCQk0OUVFRDE0QjEwNTE5NzE5MDAwOTlGQUIgLyog
SlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwICovLAorCQkJCUJDNDZDMUVEMEMw
RERCREYwMDIwQ0ZDMyAvKiBKU0NTU1J1bGVDdXN0b20uY3BwICovLAorCQkJCUFENzI2RkU5MTZE
OUY0MEEwMDNBNEU2RCAvKiBKU0NTU1J1bGVDdXN0b20uaCAqLywKKwkJCQk5MzkyMjYyRTEwMzIx
MDg0MDA2RTdENUQgLyogSlNDU1NSdWxlTGlzdEN1c3RvbS5jcHAgKi8sCisJCQkJQkM1ODI1RjIw
QzBCODkzODAwNTNGMUI1IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5jcHAgKi8sCisJ
CQkJQUQ3MjZGRUExNkQ5RjQwQjAwM0E0RTZEIC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3Rv
bS5oICovLAorCQkJCTRCQUZEMEUyMjE5MjYwNEQwMEMwQUI2NCAvKiBKU0NTU1N0eWxlVmFsdWVD
dXN0b20uY3BwICovLAorCQkJCUJDMjBGQjdFMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcCAqLywKKwkJCQk0OUM3QkE4QzEwNDJGNUIxMDAwOUQ0NDcg
LyogSlNEb2N1bWVudEN1c3RvbS5jcHAgKi8sCisJCQkJQUREQTk0QkYxOTY4NkY4MDAwNDUzMDI5
IC8qIEpTRG9jdW1lbnRDdXN0b20uaCAqLywKKwkJCQk3QzMzRjM2MDFCNEEwNTA0MDA1MDJDQUYg
LyogSlNEb2N1bWVudEZyYWdtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQkwRjk0QTM5NTFFRjFCMTA1
MDBGQkFGRkIgLyogSlNET01RdWFkQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzJFRDU1NDBDNkI5QkQz
MDA5MjBCRkYgLyogSlNFbGVtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlBREVDNzhGNzE4RUU1MzA4
MDAxMzE1QzIgLyogSlNFbGVtZW50Q3VzdG9tLmggKi8sCisJCQkJRDJDREI1RUQ2MzhGNDNBRjg2
RjA3QUEyIC8qIEpTRXJyb3JFdmVudEN1c3RvbS5jcHAgKi8sCisJCQkJQkNFRkFGNEQwQzMxN0U2
OTAwRkE4MUY2IC8qIEpTRXZlbnRDdXN0b20uY3BwICovLAorCQkJCUUzNEVFNDlGMURDMkQ1NzUw
MEVBQTlEMyAvKiBKU0V2ZW50Q3VzdG9tLmggKi8sCisJCQkJQkM2MDkwMUUwRTkxQjhFQzAwMEM2
OEI1IC8qIEpTRXZlbnRUYXJnZXRDdXN0b20uY3BwICovLAorCQkJCTQ2QjYzRjZCMUM2RThDREYw
MDJFOTE0QiAvKiBKU0V2ZW50VGFyZ2V0Q3VzdG9tLmggKi8sCisJCQkJNDEzMUYzQjExRjk1NTI4
MTAwNTk5OTVBIC8qIEpTRmV0Y2hFdmVudEN1c3RvbS5jcHAgKi8sCisJCQkJODM1QjY4MEUxRjU0
OEJERTAwNzFGN0Y2IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk4NEJC
RTU0ODI1OTdFN0YxMDBBQThGMjggLyogSlNIVE1MQWxsQ29sbGVjdGlvbkN1c3RvbS5jcHAgKi8s
CisJCQkJNkU1NzZCQzMyNEVCNTA5QzAwOTRENEFBIC8qIEpTSFRNTENhbnZhc0VsZW1lbnRDdXN0
b20uY3BwICovLAorCQkJCUJDQ0JBRDNBMEMxOEJGRjgwMENFODkwRiAvKiBKU0hUTUxDb2xsZWN0
aW9uQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzUxNTgwQTBDMDNENDA0MDA4QkIwRUUgLyogSlNIVE1M
RG9jdW1lbnRDdXN0b20uY3BwICovLAorCQkJCUQ2Rjc5NjBDMTY2RkZFQ0UwMDc2REQxOCAvKiBK
U0hUTUxUZW1wbGF0ZUVsZW1lbnRDdXN0b20uY3BwICovLAorCQkJCTUxNDEyOTlBMUM2QzE2NkQw
MDU5RTcxNCAvKiBKU0lEQkluZGV4Q3VzdG9tLmNwcCAqLywKKwkJCQk1MTFFRjJDRTE3RjBGREYx
MDBFNEZBMTYgLyogSlNJREJPYmplY3RTdG9yZUN1c3RvbS5jcHAgKi8sCisJCQkJNTFFMjY5MzIx
REQzQkM0MzAwNkI2QTU4IC8qIEpTSURCVHJhbnNhY3Rpb25DdXN0b20uY3BwICovLAorCQkJCUE3
RDAzMThEMEU5MzU0MDMwMEUyNEFDRCAvKiBKU0ltYWdlRGF0YUN1c3RvbS5jcHAgKi8sCisJCQkJ
NTg2OEM3RDUyNTQ2RTBCMzAwQkY5REYzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJDdXN0b20u
Y3BwICovLAorCQkJCTc3QzEzRjA0MjE2NTY1OEEwMDJEOUM1RiAvKiBKU0ludGVyc2VjdGlvbk9i
c2VydmVyRW50cnlDdXN0b20uY3BwICovLAorCQkJCUNEMDMyMDE1MjI3OUY1QkYwMEREOUYwQiAv
KiBKU01lZGlhQ2FwYWJpbGl0aWVzQ3VzdG9tLmggKi8sCisJCQkJQUQ3MjZGRTcxNkQ5RjIwNDAw
M0E0RTZEIC8qIEpTTWVkaWFMaXN0Q3VzdG9tLmggKi8sCisJCQkJNDE1Q0RBRjYxRTZDRTBEMzAw
NEYxMUVFIC8qIEpTTWVkaWFTdHJlYW1UcmFja0N1c3RvbS5jcHAgKi8sCisJCQkJRTFBNUY5OUEw
RTdFQUEyNTAwQUY4NUVBIC8qIEpTTWVzc2FnZUNoYW5uZWxDdXN0b20uY3BwICovLAorCQkJCUUx
QURFRDQ2MEU3NkI4REQwMDRBMUE1RSAvKiBKU01lc3NhZ2VQb3J0Q3VzdG9tLmNwcCAqLywKKwkJ
CQlDNkYwOTE3RTE0M0EyQkI5MDA2ODU4NDkgLyogSlNNdXRhdGlvbk9ic2VydmVyQ3VzdG9tLmNw
cCAqLywKKwkJCQk5QjlDQURBNzIxNjVEQzc2MDBFOEQ4NTggLyogSlNNdXRhdGlvblJlY29yZEN1
c3RvbS5jcHAgKi8sCisJCQkJODNCNURBNDUxRkE5MDc5MzAwQjU5REY0IC8qIEpTTmF2aWdhdG9y
Q3VzdG9tLmNwcCAqLywKKwkJCQlCQ0Q5QzI2MDBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlQ3Vz
dG9tLmNwcCAqLywKKwkJCQlCQzk0MzlDMjExNkNGNDk0MDA0OEM3NTAgLyogSlNOb2RlQ3VzdG9t
LmggKi8sCisJCQkJMUE3NTBERDMwQTkwRTcyOTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yQ3Vz
dG9tLmNwcCAqLywKKwkJCQlCQ0Q5QzI2MTBDMTdBQTY3MDA1QzkwQTIgLyogSlNOb2RlTGlzdEN1
c3RvbS5jcHAgKi8sCisJCQkJQUQyMEIxOEMxOEU5RDIxNjAwNUE4MDgzIC8qIEpTTm9kZUxpc3RD
dXN0b20uaCAqLywKKwkJCQkzMTQwQzUyQjFGRTA2QjQ5MDBEMkE4NzMgLyogSlNPZmZzY3JlZW5D
YW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwICovLAorCQkJCTRCMUUxM0VFMjE3OTQx
MzIwMDQyQ0Y5OCAvKiBKU1BhaW50UmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcCAqLywKKwkJ
CQlDQjM4RkQ1NTFDRDIxRDVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZUVudHJ5Q3VzdG9tLmNw
cCAqLywKKwkJCQk4MzNDRjcwRjIwREIzRjVGMDAxNDFCQ0MgLyogSlNQZXJmb3JtYW5jZU9ic2Vy
dmVyQ3VzdG9tLmNwcCAqLywKKwkJCQlBNEE2OUI4QkI5MUI0OUQwQTgwNEMzMUQgLyogSlNQcm9t
aXNlUmVqZWN0aW9uRXZlbnRDdXN0b20uY3BwICovLAorCQkJCTU4NjhDN0M0MjUzOURBMzMwMEJG
OURGMyAvKiBKU1Jlc2l6ZU9ic2VydmVyQ3VzdG9tLmNwcCAqLywKKwkJCQk1ODg0RkU1NjIyODEz
RTJEMDA0MEFGRjYgLyogSlNSZXNpemVPYnNlcnZlckVudHJ5Q3VzdG9tLmNwcCAqLywKKwkJCQk4
M0Y1NzI5NDFGQTEwNjZGMDAzODM3QkUgLyogSlNTZXJ2aWNlV29ya2VyQ2xpZW50Q3VzdG9tLmNw
cCAqLywKKwkJCQk0NjBEMTk0NDFGQ0UyMUREMDBDM0RCODUgLyogSlNTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGVDdXN0b20uY3BwICovLAorCQkJCTlCRTg0RURDMjVDNTExMkUwMDY2NUU5MyAvKiBK
U1N0YXRpY1JhbmdlQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzk4QTI3QzBDMEM5OTUwMDA0QkVCRjcg
LyogSlNTdHlsZVNoZWV0Q3VzdG9tLmNwcCAqLywKKwkJCQlBRDcyNkZFQzE2RDlGNEI5MDAzQTRF
NkQgLyogSlNTdHlsZVNoZWV0Q3VzdG9tLmggKi8sCisJCQkJQjJDOTZEOEMwQjNBRjJCNzAwNUU4
MEVDIC8qIEpTU1ZHUGF0aFNlZ0N1c3RvbS5jcHAgKi8sCisJCQkJODM4ODY5RUIxQ0U4MUU5RTAw
RDE2QTlFIC8qIEpTVGV4dEN1c3RvbS5jcHAgKi8sCisJCQkJMDdFMTE3MDYxNDg5RUJFQjAwRUM1
QUNFIC8qIEpTVGV4dFRyYWNrQ3VlQ3VzdG9tLmNwcCAqLywKKwkJCQkwNzAzMzRFODE0NUExRjM1
MDA4RDhENDUgLyogSlNUcmFja0N1c3RvbS5jcHAgKi8sCisJCQkJMDc4NDYzODQxNDVCMUI4RTAw
QTU4REYxIC8qIEpTVHJhY2tDdXN0b20uaCAqLywKKwkJCQk1MTZCQjc5MjBDRTkxRTY4MDA1MTJG
NzkgLyogSlNUcmVlV2Fsa2VyQ3VzdG9tLmNwcCAqLywKKwkJCQlGNEUxOTY1QTIxRjIzOTUwMDAy
ODUwNzggLyogSlNVbmRvSXRlbUN1c3RvbS5jcHAgKi8sCisJCQkJNzE1REE1RDMyMDFCQjkwMjAw
MkVGMkIwIC8qIEpTV2ViQW5pbWF0aW9uQ3VzdG9tLmNwcCAqLywKKwkJCQlEM0YzRDM1OTFBNjlB
M0IwMDA1OUZDMkIgLyogSlNXZWJHTDJSZW5kZXJpbmdDb250ZXh0Q3VzdG9tLmNwcCAqLywKKwkJ
CQk0OUVFRDE0QzEwNTE5NzFBMDAwOTlGQUIgLyogSlNXZWJHTFJlbmRlcmluZ0NvbnRleHRDdXN0
b20uY3BwICovLAorCQkJCTExRTZDRjFCMjVGMTQwRTMwMDEzRDNENSAvKiBKU1dlYlhSUmVmZXJl
bmNlU3BhY2VDdXN0b20uY3BwICovLAorCQkJCTExRTZDRjFEMjVGMTQwRTQwMDEzRDNENSAvKiBK
U1dlYlhSU3BhY2VDdXN0b20uY3BwICovLAorCQkJCUUxODI1OEFCMEVGM0NENzAwMDkzMzI0MiAv
KiBKU1dvcmtlckdsb2JhbFNjb3BlQ3VzdG9tLmNwcCAqLywKKwkJCQk0NkY5MUJDOTFGQ0REMEZF
MDAxNTk5QzMgLyogSlNXb3JrZXJOYXZpZ2F0b3JDdXN0b20uY3BwICovLAorCQkJCTgzQTRBOUY4
MUNFN0ZEN0UwMDcwOUIwMCAvKiBKU1hNTERvY3VtZW50Q3VzdG9tLmNwcCAqLywKKwkJCQlBMUM3
RkFBMTEzM0E1RDM1MDBENjczMkQgLyogSlNYUGF0aFJlc3VsdEN1c3RvbS5jcHAgKi8sCisJCQkp
OworCQkJbmFtZSA9ICJHQyAvIFdyYXBwaW5nIE9ubHkiOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJN0MzRTUxMDcxOERGOEYxMjAwQzExMkY3IC8qIGNvY29hICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlDRTQ1OTQ2NDI0MTIxQTA1
MDA3ODAxOUYgLyogQWx0ZXJuYXRpdmVUZXh0Q29udGV4dENvbnRyb2xsZXIuaCAqLywKKwkJCQlD
RTQ1OTQ2NTI0MTIxQTA1MDA3ODAxOUYgLyogQWx0ZXJuYXRpdmVUZXh0Q29udGV4dENvbnRyb2xs
ZXIubW0gKi8sCisJCQkJQ0U3QjJEQUYxNTg2QUJBRDAwOThCM0ZBIC8qIEFsdGVybmF0aXZlVGV4
dFVJQ29udHJvbGxlci5oICovLAorCQkJCUNFN0IyREIwMTU4NkFCQUQwMDk4QjNGQSAvKiBBbHRl
cm5hdGl2ZVRleHRVSUNvbnRyb2xsZXIubW0gKi8sCisJCQkJOTNFNUIyNjMyNDU1RTk2RjAwNUM1
MkQwIC8qIEF0dHJpYnV0ZWRTdHJpbmcuaCAqLywKKwkJCQk1Q0NDMjcwNzIyRDUzQjY5MDA5NjRG
QTAgLyogQXV0b2ZpbGxFbGVtZW50cy5jcHAgKi8sCisJCQkJNUNDQzI3MDYyMkQ1M0I2ODAwOTY0
RkEwIC8qIEF1dG9maWxsRWxlbWVudHMuaCAqLywKKwkJCQlDNTIyN0RFRjFDM0M2REQ3MDBGNUVE
NTQgLyogRGF0YURldGVjdGlvbi5oICovLAorCQkJCUM1MjI3REYwMUMzQzZERDcwMEY1RUQ1NCAv
KiBEYXRhRGV0ZWN0aW9uLm1tICovLAorCQkJCUJDNEE1MzM0MjU2MDVBNTYwMDI4QzU5MiAvKiBE
YXRhRGV0ZWN0b3JUeXBlLmggKi8sCisJCQkJOTM3RkYzRDYxQTEwMTMxQjAwOEVCQTMxIC8qIERp
Y3Rpb25hcnlMb29rdXAubW0gKi8sCisJCQkJOUI1NUVFRTgxQjNFODg5ODAwNTM0MkJDIC8qIEVk
aXRvckNvY29hLm1tICovLAorCQkJCUY0MkNFQjU0MjE0MDMxRUUwMDJEQ0E3MiAvKiBGb250QXR0
cmlidXRlQ2hhbmdlc0NvY29hLm1tICovLAorCQkJCUY0OEQyQTc1MjE1NkZFNTcwMEM2NzUyQiAv
KiBGb250QXR0cmlidXRlc0NvY29hLm1tICovLAorCQkJCUY0OEQyQTdBMjE1NzA1MUUwMEM2NzUy
QiAvKiBGb250U2hhZG93Q29jb2EubW0gKi8sCisJCQkJN0MzRTUxMDgxOERGOEYzNTAwQzExMkY3
IC8qIEhUTUxDb252ZXJ0ZXIuaCAqLywKKwkJCQk3QzNFNTEwOTE4REY4RjM1MDBDMTEyRjcgLyog
SFRNTENvbnZlcnRlci5tbSAqLywKKwkJCQlFMTg1MzY4MTFGNEU0NzI3MDBGRTA5MUIgLyogV2Vi
QXJjaGl2ZVJlc291cmNlRnJvbU5TQXR0cmlidXRlZFN0cmluZy5oICovLAorCQkJCUUxODUzNjgy
MUY0RTQ3MjcwMEZFMDkxQiAvKiBXZWJBcmNoaXZlUmVzb3VyY2VGcm9tTlNBdHRyaWJ1dGVkU3Ry
aW5nLm1tICovLAorCQkJCUUxOEMzNTQxMUY3MTk2Q0QwMEZGNjMyRCAvKiBXZWJBcmNoaXZlUmVz
b3VyY2VXZWJSZXNvdXJjZUhhbmRsZXIuaCAqLywKKwkJCQlFMThDMzU0MjFGNzE5NzAxMDBGRjYz
MkQgLyogV2ViQXJjaGl2ZVJlc291cmNlV2ViUmVzb3VyY2VIYW5kbGVyLm1tICovLAorCQkJCTlC
OTI5OUIwMUY2Nzk2QTQwMDY3MjNDMiAvKiBXZWJDb250ZW50UmVhZGVyQ29jb2EubW0gKi8sCisJ
CQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJN0M1MjIyOTQxRTFEQUREQzAwMkNCOEY3IC8qIHNjcmlwdHMgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzRjhCMzA1MEEzMDBGRTEwMEY2MUFCOCAv
KiBDb2RlR2VuZXJhdG9yLnBtICovLAorCQkJCTkzRjhCMzA2MEEzMDBGRUEwMEY2MUFCOCAvKiBD
b2RlR2VuZXJhdG9ySlMucG0gKi8sCisJCQkJOTNGOEIzMDcwQTMwMEZFQTAwRjYxQUI4IC8qIGdl
bmVyYXRlLWJpbmRpbmdzLnBsICovLAorCQkJCTdDNjEzNkY2MTcxMEMzNTIwMEZGNEE1NyAvKiBI
YXNoZXIucG0gKi8sCisJCQkJQTgzQjUzMzgxNEYzOTlCQjAwNzIwRDlEIC8qIElETEF0dHJpYnV0
ZXMuanNvbiAqLywKKwkJCQkxNDgxM0JGMzA5RURGODhFMDBGNzU3RTEgLyogSURMUGFyc2VyLnBt
ICovLAorCQkJCTdDNjEzNkY3MTcxMEMzNTIwMEZGNEE1NyAvKiBJbkZpbGVzQ29tcGlsZXIucG0g
Ki8sCisJCQkJN0M2MTM2RjgxNzEwQzM1MjAwRkY0QTU3IC8qIEluRmlsZXNQYXJzZXIucG0gKi8s
CisJCQkJQTgzQjUzODAxNEZCQjJFQzAwNzIwRDlEIC8qIHByZXByb2Nlc3MtaWRscy5wbCAqLywK
KwkJCQlDMEYyQTQzRjEzODY5QTI4MDA2NkM1MzQgLyogcHJlcHJvY2Vzc29yLnBtICovLAorCQkJ
CTdDNjEzNkY5MTcxMEMzNTIwMEZGNEE1NyAvKiBTdGF0aWNTdHJpbmcucG0gKi8sCisJCQkpOwor
CQkJbmFtZSA9IHNjcmlwdHM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk3
QzhFMzQ5MTFFNEEzMzczMDA1NENFMjMgLyogQ29udmVyc2lvbnMgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMDg0MTMzMUNEREIxNTUwMEIwOTU4QyAv
KiBKU0RPTUNvbnZlcnQuaCAqLywKKwkJCQk3QzhFMzQ5MjFFNEEzMzhFMDA1NENFMjMgLyogSlNE
T01Db252ZXJ0QW55LmggKi8sCisJCQkJN0M4RTM0OTMxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9N
Q29udmVydEJhc2UuaCAqLywKKwkJCQk3QzhFMzQ5NDFFNEEzMzhFMDA1NENFMjMgLyogSlNET01D
b252ZXJ0Qm9vbGVhbi5oICovLAorCQkJCTdDOEUzNDk1MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RP
TUNvbnZlcnRCdWZmZXJTb3VyY2UuaCAqLywKKwkJCQk3QzhFMzQ5NjFFNEEzMzhFMDA1NENFMjMg
LyogSlNET01Db252ZXJ0Q2FsbGJhY2tzLmggKi8sCisJCQkJN0M4RTM0OTcxRTRBMzM4RTAwNTRD
RTIzIC8qIEpTRE9NQ29udmVydERhdGUuY3BwICovLAorCQkJCTdDOEUzNDk4MUU0QTMzOEUwMDU0
Q0UyMyAvKiBKU0RPTUNvbnZlcnREYXRlLmggKi8sCisJCQkJN0M4RTM0OTkxRTRBMzM4RTAwNTRD
RTIzIC8qIEpTRE9NQ29udmVydERpY3Rpb25hcnkuaCAqLywKKwkJCQk3QzhFMzQ5QTFFNEEzMzhF
MDA1NENFMjMgLyogSlNET01Db252ZXJ0RW51bWVyYXRpb24uaCAqLywKKwkJCQk3QzhFMzQ5QjFF
NEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0RXZlbnRMaXN0ZW5lci5oICovLAorCQkJCTdD
OEUzNDlDMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRJbmRleGVkREIuaCAqLywKKwkJ
CQk3QzhFMzQ5RDFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0SW50ZXJmYWNlLmggKi8s
CisJCQkJN0M4RTM0OUUxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEpTT04uaCAqLywK
KwkJCQk3QzhFMzQ5RjFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0TnVsbC5oICovLAor
CQkJCTdDOEUzNEEwMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnROdWxsYWJsZS5oICov
LAorCQkJCTdDOEUzNEExMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnROdW1iZXJzLmNw
cCAqLywKKwkJCQk3QzhFMzRBMjFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0TnVtYmVy
cy5oICovLAorCQkJCTdDOEUzNEEzMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRPYmpl
Y3QuaCAqLywKKwkJCQlFMzIzQ0ZGOTFFNUFGNkE1MDBGMEI0QTAgLyogSlNET01Db252ZXJ0UHJv
bWlzZS5oICovLAorCQkJCTdDOEUzNEE0MUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRS
ZWNvcmQuaCAqLywKKwkJCQk3QzFGNUQ1ODFGMjJGRjczMDBBODg3NEYgLyogSlNET01Db252ZXJ0
U2NoZWR1bGVkQWN0aW9uLmggKi8sCisJCQkJN0M4RTM0QTUxRTRBMzM4RTAwNTRDRTIzIC8qIEpT
RE9NQ29udmVydFNlcXVlbmNlcy5oICovLAorCQkJCTdDOEUzNEE2MUU0QTMzOEUwMDU0Q0UyMyAv
KiBKU0RPTUNvbnZlcnRTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCAqLywKKwkJCQk3QzhFMzRBNzFF
NEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0U3RyaW5ncy5jcHAgKi8sCisJCQkJN0M4RTM0
QTgxRTRBMzM4RTAwNTRDRTIzIC8qIEpTRE9NQ29udmVydFN0cmluZ3MuaCAqLywKKwkJCQk3QzhF
MzRBOTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0VW5pb24uaCAqLywKKwkJCQk3QzhF
MzRBQTFFNEEzMzhFMDA1NENFMjMgLyogSlNET01Db252ZXJ0VmFyaWFkaWMuaCAqLywKKwkJCQk3
Q0JBNUJBNjFGMEI0QkRFMDAzNEQ3NDUgLyogSlNET01Db252ZXJ0V2ViR0wuY3BwICovLAorCQkJ
CTdDOEUzNEFCMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRXZWJHTC5oICovLAorCQkJ
CTdDOEUzNEFDMUU0QTMzOEUwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRYUGF0aE5TUmVzb2x2ZXIu
aCAqLywKKwkJCSk7CisJCQluYW1lID0gQ29udmVyc2lvbnM7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQk3Q0QzNDQxQjFGMzJERTMwMDAwRENENDkgLyogQ2FjaGVkIEF0dHJp
YnV0ZXMgdy8gSW52YWxpZGF0aW9uICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGls
ZHJlbiA9ICgKKwkJCQlERUMyOTc1RDFCNERFQjJBMDA1RjU5NDUgLyogSlNDdXN0b21FdmVudEN1
c3RvbS5jcHAgKi8sCisJCQkJODMxQzQ2QzMxRjlFRTVFMDAwRUJENDUwIC8qIEpTRXh0ZW5kYWJs
ZU1lc3NhZ2VFdmVudEN1c3RvbS5jcHAgKi8sCisJCQkJQkNFN0IxOTIwRDRFODY5NjAwNzVBNTM5
IC8qIEpTSGlzdG9yeUN1c3RvbS5jcHAgKi8sCisJCQkJQ0E2QzE1MzcyMjBEMUVCMzAwNTVDQkZD
IC8qIEpTSURCQ3Vyc29yQ3VzdG9tLmNwcCAqLywKKwkJCQlDQTZDMTUzODIyMEQxRUIzMDA1NUNC
RkMgLyogSlNJREJDdXJzb3JXaXRoVmFsdWVDdXN0b20uY3BwICovLAorCQkJCUNBNkMxNTJGMjIw
QjRBNTUwMDU1Q0JGQyAvKiBKU0lEQlJlcXVlc3RDdXN0b20uY3BwICovLAorCQkJCTQxMEI3RTcx
MTA0NUZBQjAwMEQ4MjI0RiAvKiBKU01lc3NhZ2VFdmVudEN1c3RvbS5jcHAgKi8sCisJCQkJQTE2
NzdFMjQyMTQ0NTMyODAwQTA4QzM0IC8qIEpTUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50Q3VzdG9t
LmNwcCAqLywKKwkJCQlBMTBENkU5NDIxNDRDOTk4MDBGREQxNEQgLyogSlNQYXltZW50UmVzcG9u
c2VDdXN0b20uY3BwICovLAorCQkJCUE4NUYyMjA4MTQzMDM3N0QwMDdDQzg4NCAvKiBKU1BvcFN0
YXRlRXZlbnRDdXN0b20uY3BwICovLAorCQkJCTExNjQ4QjQxMjYwQTNGNkMwMDRBRjFGMiAvKiBK
U1dlYlhSUmlnaWRUcmFuc2Zvcm1DdXN0b20uY3BwICovLAorCQkJCTExNjQ4QjQzMjYwQTNGNkMw
MDRBRjFGMiAvKiBKU1dlYlhSVmlld0N1c3RvbS5jcHAgKi8sCisJCQkJQkMzNDhCQkQwREI3RjUz
MTAwNEFCQUI5IC8qIEpTWE1MSHR0cFJlcXVlc3RDdXN0b20uY3BwICovLAorCQkJKTsKKwkJCW5h
bWUgPSAiQ2FjaGVkIEF0dHJpYnV0ZXMgdy8gSW52YWxpZGF0aW9uIjsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCTdFNERFMTBCMTk4QjEwODEwMDUxQ0IwMiAvKiBjb2NvYSAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJN0VEQUFGQzgx
OUEyQ0JEMTAwMzRERkQxIC8qIERpc2tDYWNoZU1vbml0b3JDb2NvYS5oICovLAorCQkJCTdFNERF
MTBDMTk4QjEwQjYwMDUxQ0IwMiAvKiBEaXNrQ2FjaGVNb25pdG9yQ29jb2EubW0gKi8sCisJCQkJ
NTdGMUM4RTMyNURDNkVFNzAwRThGNkVBIC8qIFByaXZhdGVDbGlja01lYXN1cmVtZW50Q29jb2Eu
bW0gKi8sCisJCQkJN0U4RkFEQzMxOTlBOTVCMTAwNzE0OTY4IC8qIFN1YnJlc291cmNlTG9hZGVy
Q29jb2EubW0gKi8sCisJCQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKKwkJfTsKKwkJN0U3REUxRkUxOTVDRUYyRDAwMzUzNjNCIC8qIGNvY29hICovID0g
eworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1QzRBMEZENjI1QzM0
MkRCMDBEOUVFOTcgLyogQ2VydGlmaWNhdGVJbmZvQ29jb2EubW0gKi8sCisJCQkJNTFEMTI0OEMx
RTczNjQ1NjAwMkIyODIwIC8qIENvb2tpZUNvY29hLm1tICovLAorCQkJCTUxMjBCQkFEMUYxQ0U3
NzAwMEVGRUJGMSAvKiBDb29raWVTdG9yYWdlT2JzZXJ2ZXIuaCAqLywKKwkJCQk1MTIwQkJBQzFG
MUNFNzcwMDBFRkVCRjEgLyogQ29va2llU3RvcmFnZU9ic2VydmVyLm1tICovLAorCQkJCTM3OTI5
MTdDMTk4NzY3OEYwMEY0QjY2MSAvKiBDcmVkZW50aWFsQ29jb2EuaCAqLywKKwkJCQkzNzkyOTE3
QjE5ODc2NzhGMDBGNEI2NjEgLyogQ3JlZGVudGlhbENvY29hLm1tICovLAorCQkJCTQ2RTEzOUY2
MjNEOEI4RTcwMDc1ODQ4RSAvKiBIVFRQQ29va2llQWNjZXB0UG9saWN5Q29jb2EuaCAqLywKKwkJ
CQk1QzlCODYwQjFDMjFFM0M2MDAxMTBGMzYgLyogTmV0d29ya0xvYWRNZXRyaWNzLm1tICovLAor
CQkJCTUxRDEyNDhBMUU3MzYyNUMwMDJCMjgyMCAvKiBOZXR3b3JrU3RvcmFnZVNlc3Npb25Db2Nv
YS5tbSAqLywKKwkJCQkzNzJBREEzNzE5N0Y0N0I5MDBGQzUwMUUgLyogUHJvdGVjdGlvblNwYWNl
Q29jb2EuaCAqLywKKwkJCQkzNzJBREEzOTE5N0Y2ODc2MDBGQzUwMUUgLyogUHJvdGVjdGlvblNw
YWNlQ29jb2EubW0gKi8sCisJCQkJNUM0QTBGRDUyNUMzNDJDODAwRDlFRTk3IC8qIFJhbmdlUmVz
cG9uc2VHZW5lcmF0b3IuaCAqLywKKwkJCQk1QzRBMEZEMzI1QzM0MkM3MDBEOUVFOTcgLyogUmFu
Z2VSZXNwb25zZUdlbmVyYXRvci5tbSAqLywKKwkJCQk3RTdERTFGQzE5NUNFRjI2MDAzNTM2M0Ig
LyogUmVzb3VyY2VSZXF1ZXN0Q29jb2EubW0gKi8sCisJCQkJQTFGNzhEMEIxQzI1NDIyQzAwMjQ1
NDQ2IC8qIFJlc291cmNlUmVzcG9uc2VDb2NvYS5tbSAqLywKKwkJCQlDRDIyNUMwQTFDNDZGQkY0
MDAxNDA3NjEgLyogV2ViQ29yZU5TVVJMU2Vzc2lvbi5oICovLAorCQkJCUNEMjI1QzA5MUM0NkZC
RjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLm1tICovLAorCQkJKTsKKwkJCXBhdGgg
PSBjb2NvYTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTgzMjE1MDc5MUYy
N0U5NkIwMDk1QjEzNiAvKiBiZWFjb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNo
aWxkcmVuID0gKAorCQkJCTgzMjE1MDdDMUYyN0VBMTUwMDk1QjEzNiAvKiBOYXZpZ2F0b3IrQmVh
Y29uLmlkbCAqLywKKwkJCQk4MzIxNTA3QTFGMjdFQTE1MDA5NUIxMzYgLyogTmF2aWdhdG9yQmVh
Y29uLmNwcCAqLywKKwkJCQk4MzIxNTA3QjFGMjdFQTE1MDA5NUIxMzYgLyogTmF2aWdhdG9yQmVh
Y29uLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGJlYWNvbjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7CisJCX07CisJCTgzNzk2NENDMUY4REI2N0QwMDIxOEVBMCAvKiBpb3MgKi8gPSB7CisJ
CQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTgzNzk2NENFMUY4REI2OUEw
MDIxOEVBMCAvKiBHZW9sb2NhdGlvblBvc2l0aW9uRGF0YUlPUy5tbSAqLywKKwkJCSk7CisJCQlu
YW1lID0gaW9zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJODNGQjMzNjUx
RjUwOEExNzAwOTg2RTU0IC8qIGVudHJpZXNhcGkgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCTgzOTk0NzA5MUY1MEI2MzgwMEU5RDg2QiAvKiBET01GaWxl
U3lzdGVtLmNwcCAqLywKKwkJCQk4Mzk5NDcwNzFGNTBCNjM4MDBFOUQ4NkIgLyogRE9NRmlsZVN5
c3RlbS5oICovLAorCQkJCTgzOTk0NzA4MUY1MEI2MzgwMEU5RDg2QiAvKiBET01GaWxlU3lzdGVt
LmlkbCAqLywKKwkJCQk4Mzc2MDlDODFGNTRDQzEzMDAwQzEyMkQgLyogRXJyb3JDYWxsYmFjay5j
cHAgKi8sCisJCQkJODM3MUFDMzkxRjUwOUJERDAwRkJGMjg0IC8qIEVycm9yQ2FsbGJhY2suaCAq
LywKKwkJCQk4MzcxQUMzNzFGNTA5QkREMDBGQkYyODQgLyogRXJyb3JDYWxsYmFjay5pZGwgKi8s
CisJCQkJODM4Rjg2RDgxRjUwOUU2QzAwRThDRkM1IC8qIEZpbGVDYWxsYmFjay5oICovLAorCQkJ
CTgzNzFBQzM4MUY1MDlCREQwMEZCRjI4NCAvKiBGaWxlQ2FsbGJhY2suaWRsICovLAorCQkJCTgz
RkIzMzZCMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnkuY3BwICov
LAorCQkJCTgzRkIzMzZEMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5RW50
cnkuaCAqLywKKwkJCQk4M0ZCMzM2QTFGNTA4QTRFMDA5ODZFNTQgLyogRmlsZVN5c3RlbURpcmVj
dG9yeUVudHJ5LmlkbCAqLywKKwkJCQk4MzAzMzRGQjFGNTQ5MDUyMDA0REY3MDcgLyogRmlsZVN5
c3RlbURpcmVjdG9yeVJlYWRlci5jcHAgKi8sCisJCQkJODMwMzM0RkMxRjU0OTA1MjAwNERGNzA3
IC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLywKKwkJCQk4MzAzMzRGRjFGNTQ5MDUy
MDA0REY3MDcgLyogRmlsZVN5c3RlbURpcmVjdG9yeVJlYWRlci5pZGwgKi8sCisJCQkJODM5Njgw
QjIxRjU0QzZBODAwNzUyNjkwIC8qIEZpbGVTeXN0ZW1FbnRyaWVzQ2FsbGJhY2suY3BwICovLAor
CQkJCTgzMDMzNEZFMUY1NDkwNTIwMDRERjcwNyAvKiBGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNr
LmggKi8sCisJCQkJODMwMzM0RkQxRjU0OTA1MjAwNERGNzA3IC8qIEZpbGVTeXN0ZW1FbnRyaWVz
Q2FsbGJhY2suaWRsICovLAorCQkJCTgzRkIzMzZFMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxlU3lz
dGVtRW50cnkuY3BwICovLAorCQkJCTgzRkIzMzZGMUY1MDhBNEUwMDk4NkU1NCAvKiBGaWxlU3lz
dGVtRW50cnkuaCAqLywKKwkJCQk4M0ZCMzM2ODFGNTA4QTRFMDA5ODZFNTQgLyogRmlsZVN5c3Rl
bUVudHJ5LmlkbCAqLywKKwkJCQk4MzhGODZENzFGNTA5RTZDMDBFOENGQzUgLyogRmlsZVN5c3Rl
bUVudHJ5Q2FsbGJhY2suaCAqLywKKwkJCQk4MzcxQUMzNjFGNTA5QkREMDBGQkYyODQgLyogRmls
ZVN5c3RlbUVudHJ5Q2FsbGJhY2suaWRsICovLAorCQkJCTgzRkIzMzY5MUY1MDhBNEUwMDk4NkU1
NCAvKiBGaWxlU3lzdGVtRmlsZUVudHJ5LmNwcCAqLywKKwkJCQk4M0ZCMzM2QzFGNTA4QTRFMDA5
ODZFNTQgLyogRmlsZVN5c3RlbUZpbGVFbnRyeS5oICovLAorCQkJCTgzRkIzMzY3MUY1MDhBNEUw
MDk4NkU1NCAvKiBGaWxlU3lzdGVtRmlsZUVudHJ5LmlkbCAqLywKKwkJCQk4MzVEMkQ3NDFGNUYx
RkI4MDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudCtFbnRyaWVzQVBJLmlkbCAqLywKKwkJCQk4
MzVEMkQ3NjFGNUYxRkI4MDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuY3Bw
ICovLAorCQkJCTgzNUQyRDc1MUY1RjFGQjgwMDE0MURFRCAvKiBIVE1MSW5wdXRFbGVtZW50RW50
cmllc0FQSS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBlbnRyaWVzYXBpOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJODNGQjMzNzcxRjUwOENCNTAwOTg2RTU0IC8qIEVudHJp
ZXNBUEkgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTgz
OTk0NzBEMUY1MEI2RjMwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uY3BwICovLAorCQkJCTgz
OTk0NzBFMUY1MEI2RjMwMEU5RDg2QiAvKiBKU0RPTUZpbGVTeXN0ZW0uaCAqLywKKwkJCQk4M0VF
NTk4QzFGNTA5NThCMDAzRThCMzAgLyogSlNFcnJvckNhbGxiYWNrLmNwcCAqLywKKwkJCQk4M0VF
NTk4QjFGNTA5NThCMDAzRThCMzAgLyogSlNFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJODM3MDU2
ODgxRjUwOTE1MDAwRDkzNDI1IC8qIEpTRmlsZUNhbGxiYWNrLmNwcCAqLywKKwkJCQk4MzcwNTY4
QjFGNTA5MTUwMDBEOTM0MjUgLyogSlNGaWxlQ2FsbGJhY2suaCAqLywKKwkJCQk4MzNCOUUyQjFG
NTA4RDgwMDBFMEU0MjggLyogSlNGaWxlU3lzdGVtRGlyZWN0b3J5RW50cnkuY3BwICovLAorCQkJ
CTgzM0I5RTJGMUY1MDhEODAwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5o
ICovLAorCQkJCTgzNjU4OURCMUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3Rv
cnlSZWFkZXIuY3BwICovLAorCQkJCTgzNjU4OUQ5MUY1NEE3NjIwMERDMzFGNCAvKiBKU0ZpbGVT
eXN0ZW1EaXJlY3RvcnlSZWFkZXIuaCAqLywKKwkJCQk4MzY1ODlEQTFGNTRBNzYyMDBEQzMxRjQg
LyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmNwcCAqLywKKwkJCQk4MzY1ODlEODFGNTRB
NzYyMDBEQzMxRjQgLyogSlNGaWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggKi8sCisJCQkJODMz
QjlFMkUxRjUwOEQ4MDAwRTBFNDI4IC8qIEpTRmlsZVN5c3RlbUVudHJ5LmNwcCAqLywKKwkJCQk4
MzNCOUUyQTFGNTA4RDgwMDBFMEU0MjggLyogSlNGaWxlU3lzdGVtRW50cnkuaCAqLywKKwkJCQk4
MzcwNTY4QTFGNTA5MTUwMDBEOTM0MjUgLyogSlNGaWxlU3lzdGVtRW50cnlDYWxsYmFjay5jcHAg
Ki8sCisJCQkJODM3MDU2ODkxRjUwOTE1MDAwRDkzNDI1IC8qIEpTRmlsZVN5c3RlbUVudHJ5Q2Fs
bGJhY2suaCAqLywKKwkJCQk4MzNCOUUyRDFGNTA4RDgwMDBFMEU0MjggLyogSlNGaWxlU3lzdGVt
RmlsZUVudHJ5LmNwcCAqLywKKwkJCQk4MzNCOUUyQzFGNTA4RDgwMDBFMEU0MjggLyogSlNGaWxl
U3lzdGVtRmlsZUVudHJ5LmggKi8sCisJCQkJODM2QjA5NTMxRjVGMzREMDAwM0MzNzAyIC8qIEpT
SFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuY3BwICovLAorCQkJCTgzNkIwOTUyMUY1RjM0RDAw
MDNDMzcwMiAvKiBKU0hUTUxJbnB1dEVsZW1lbnRFbnRyaWVzQVBJLmggKi8sCisJCQkpOworCQkJ
bmFtZSA9IEVudHJpZXNBUEk7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk4
OTg3ODU3NjEyMkNBMURBMDAzQUFCREEgLyogRmlsZUFQSSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMkUyRDk5Q0IxMEUyQkJEQTAwNDk2MzM3IC8qIEpT
QmxvYi5jcHAgKi8sCisJCQkJMkUyRDk5Q0MxMEUyQkJEQTAwNDk2MzM3IC8qIEpTQmxvYi5oICov
LAorCQkJCUExNUQ3NTE3MUU2OEY4MzYwMEEzNUZCQyAvKiBKU0Jsb2JDYWxsYmFjay5jcHAgKi8s
CisJCQkJQTE1RDc1MTgxRTY4RjgzNjAwQTM1RkJDIC8qIEpTQmxvYkNhbGxiYWNrLmggKi8sCisJ
CQkJN0M3N0MzRDIxREVGMTc4RTAwQTUwQkZBIC8qIEpTQmxvYlByb3BlcnR5QmFnLmNwcCAqLywK
KwkJCQk3Qzc3QzNEMzFERUYxNzhFMDBBNTBCRkEgLyogSlNCbG9iUHJvcGVydHlCYWcuaCAqLywK
KwkJCQk3Qzc3QzNEOTFERUY4NkQ3MDBBNTBCRkEgLyogSlNFbmRpbmdUeXBlLmNwcCAqLywKKwkJ
CQk3Qzc3QzNEQTFERUY4NkQ3MDBBNTBCRkEgLyogSlNFbmRpbmdUeXBlLmggKi8sCisJCQkJQkMw
MEYwMTAwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZS5jcHAgKi8sCisJCQkJQkMwMEYwMTEwRTBB
MTg5NTAwRkQwNEUzIC8qIEpTRmlsZS5oICovLAorCQkJCUJDMDBGMDEyMEUwQTE4OTUwMEZEMDRF
MyAvKiBKU0ZpbGVMaXN0LmNwcCAqLywKKwkJCQlCQzAwRjAxMzBFMEExODk1MDBGRDA0RTMgLyog
SlNGaWxlTGlzdC5oICovLAorCQkJCTJFOTRGNDM5MTE5MjA3REEwMEI3Rjc1RCAvKiBKU0ZpbGVS
ZWFkZXIuY3BwICovLAorCQkJCTJFOTRGNDNBMTE5MjA3REEwMEI3Rjc1RCAvKiBKU0ZpbGVSZWFk
ZXIuaCAqLywKKwkJCQk4OTg3ODVGMjEyMkUxRUFDMDAzQUFCREEgLyogSlNGaWxlUmVhZGVyU3lu
Yy5jcHAgKi8sCisJCQkJODk4Nzg1RjMxMjJFMUVBQzAwM0FBQkRBIC8qIEpTRmlsZVJlYWRlclN5
bmMuaCAqLywKKwkJCSk7CisJCQluYW1lID0gRmlsZUFQSTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7CisJCX07CisJCTkxNzRFQTVDMjQ0MEY5OEEwMDA4MzQ5QyAvKiBtYWMgKi8gPSB7CisJ
CQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkxNzRFQTVEMjQ0MEY5QTUw
MDA4MzQ5QyAvKiBQYWdlRGVidWdnZXJNYWMubW0gKi8sCisJCQkpOworCQkJcGF0aCA9IG1hYzsK
KwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCTkzMDg1REIzMjZFMDA2OEUwMDBF
QzZBNyAvKiBzdG9yYWdlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9
ICgKKwkJCQk5MzA4NURGNjI2RTgyMkM2MDAwRUM2QTcgLyogRHVtbXlTdG9yYWdlUHJvdmlkZXIu
aCAqLywKKwkJCQk5MzA4NURCOTI2RTE0RkJBMDAwRUM2QTcgLyogU3RvcmFnZUNvbm5lY3Rpb24u
aCAqLywKKwkJCQk5MzA4NURCNDI2RTAwNkNGMDAwRUM2QTcgLyogU3RvcmFnZU1hbmFnZXIuY3Bw
ICovLAorCQkJCTkzMDg1REI1MjZFMDA2RDAwMDBFQzZBNyAvKiBTdG9yYWdlTWFuYWdlci5oICov
LAorCQkJCTkzMDg1REI2MjZFMDA2RDAwMDBFQzZBNyAvKiBTdG9yYWdlTWFuYWdlci5pZGwgKi8s
CisJCQkJOTMwODVEQjgyNkUxNEZCQTAwMEVDNkE3IC8qIFN0b3JhZ2VQcm92aWRlci5oICovLAor
CQkJKTsKKwkJCXBhdGggPSBzdG9yYWdlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJ
fTsKKwkJOTMyQzlCQ0QyNkRENjIyOTAwNTNCM0RCIC8qIGZpbGVzeXN0ZW1hY2Nlc3MgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMkM5QkQ1MjZERDYy
NUIwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlLmNwcCAqLywKKwkJCQk5MzJD
OUJENDI2REQ2MjVBMDA1M0IzREIgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oICovLAor
CQkJCTkzMkM5QkQyMjZERDYyNTcwMDUzQjNEQiAvKiBGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
LmlkbCAqLywKKwkJCQk5MzJDOUJEMzI2REQ2MjU5MDA1M0IzREIgLyogRmlsZVN5c3RlbUZpbGVI
YW5kbGUuY3BwICovLAorCQkJCTkzMkM5QkQ2MjZERDYyNUMwMDUzQjNEQiAvKiBGaWxlU3lzdGVt
RmlsZUhhbmRsZS5oICovLAorCQkJCTkzMkM5QkNFMjZERDYyNTIwMDUzQjNEQiAvKiBGaWxlU3lz
dGVtRmlsZUhhbmRsZS5pZGwgKi8sCisJCQkJOTMyQzlCRDAyNkRENjI1NTAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1IYW5kbGUuY3BwICovLAorCQkJCTkzMkM5QkRBMjZERDYyNjEwMDUzQjNEQiAvKiBG
aWxlU3lzdGVtSGFuZGxlLmggKi8sCisJCQkJOTMyQzlCRDkyNkRENjI2MDAwNTNCM0RCIC8qIEZp
bGVTeXN0ZW1IYW5kbGUuaWRsICovLAorCQkJCTkzNDQzRTdCMjZFOEE2QkMwMDU4NTM4RiAvKiBT
dG9yYWdlTWFuYWdlcitGaWxlU3lzdGVtQWNjZXNzLmlkbCAqLywKKwkJCQk5MzQ0M0U3RDI2RThB
NkJDMDA1ODUzOEYgLyogU3RvcmFnZU1hbmFnZXJGaWxlU3lzdGVtQWNjZXNzLmggKi8sCisJCQkp
OworCQkJcGF0aCA9IGZpbGVzeXN0ZW1hY2Nlc3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQk5MzMwOUQ4NjA5OUU2NDkxMDA1NkU1ODEgLyogZWRpdGluZyAqLyA9IHsKKwkJ
CWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJN0MzRTUxMDcxOERGOEYxMjAw
QzExMkY3IC8qIGNvY29hICovLAorCQkJCTQ0MzI5MkMxMEVCQTZENzMwMEU2MjAxNiAvKiBpb3Mg
Ki8sCisJCQkJRUQ1MDFEQzkwQjI0OUYzOTAwQUUxOEQ5IC8qIG1hYyAqLywKKwkJCQlDRTA4QzND
RjE1MkI1OTlBMDAyMUI4QzIgLyogQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5jcHAgKi8sCisJ
CQkJQ0UwOEMzRDAxNTJCNTk5QTAwMjFCOEMyIC8qIEFsdGVybmF0aXZlVGV4dENvbnRyb2xsZXIu
aCAqLywKKwkJCQk5MzMwOUQ4NzA5OUU2NDkxMDA1NkU1ODEgLyogQXBwZW5kTm9kZUNvbW1hbmQu
Y3BwICovLAorCQkJCTkzMzA5RDg4MDk5RTY0OTEwMDU2RTU4MSAvKiBBcHBlbmROb2RlQ29tbWFu
ZC5oICovLAorCQkJCTlCNDE3MDYzMTI1NjYyQjMwMDZCMjhGQyAvKiBBcHBseUJsb2NrRWxlbWVu
dENvbW1hbmQuY3BwICovLAorCQkJCTlCNDE3MDYyMTI1NjYyQjMwMDZCMjhGQyAvKiBBcHBseUJs
b2NrRWxlbWVudENvbW1hbmQuaCAqLywKKwkJCQk5MzMwOUQ4OTA5OUU2NDkxMDA1NkU1ODEgLyog
QXBwbHlTdHlsZUNvbW1hbmQuY3BwICovLAorCQkJCTkzMzA5RDhBMDk5RTY0OTEwMDU2RTU4MSAv
KiBBcHBseVN0eWxlQ29tbWFuZC5oICovLAorCQkJCTkzMzA5RDhCMDk5RTY0OTEwMDU2RTU4MSAv
KiBCcmVha0Jsb2NrcXVvdGVDb21tYW5kLmNwcCAqLywKKwkJCQk5MzMwOUQ4QzA5OUU2NDkxMDA1
NkU1ODEgLyogQnJlYWtCbG9ja3F1b3RlQ29tbWFuZC5oICovLAorCQkJCUY0RDk4MTdFMjE5NUZC
RjYwMDgyMzBGQyAvKiBDaGFuZ2VMaXN0VHlwZUNvbW1hbmQuY3BwICovLAorCQkJCUY0RDk4MTdE
MjE5NUZCRjYwMDgyMzBGQyAvKiBDaGFuZ2VMaXN0VHlwZUNvbW1hbmQuaCAqLywKKwkJCQk5M0Yy
Q0M5MTI0MjdGQjlBMDA1ODUxRDggLyogQ2hhcmFjdGVyUmFuZ2UuaCAqLywKKwkJCQk3QzNBOTFF
NTFDOTYzQjg4MDBEMUE3RTMgLyogQ2xpcGJvYXJkQWNjZXNzUG9saWN5LmggKi8sCisJCQkJOTMz
MDlEOEQwOTlFNjQ5MTAwNTZFNTgxIC8qIENvbXBvc2l0ZUVkaXRDb21tYW5kLmNwcCAqLywKKwkJ
CQk5MzMwOUQ4RTA5OUU2NDkxMDA1NkU1ODEgLyogQ29tcG9zaXRlRWRpdENvbW1hbmQuaCAqLywK
KwkJCQlGNDQyQzM1NzIzRTNBQzUxMDA0OTk1ODIgLyogQ29tcG9zaXRpb25IaWdobGlnaHQuaCAq
LywKKwkJCQkyREQ1QTcyNjFFQkVFNDdEMDA5QkE1OTcgLyogQ29tcG9zaXRpb25VbmRlcmxpbmUu
aCAqLywKKwkJCQlEMEIwNTU2NzA5QzY3MDAxMDAzMDdFNDMgLyogQ3JlYXRlTGlua0NvbW1hbmQu
Y3BwICovLAorCQkJCUQwQjA1NTY2MDlDNjcwMDEwMDMwN0U0MyAvKiBDcmVhdGVMaW5rQ29tbWFu
ZC5oICovLAorCQkJCUY0RTE5NjYyMjFGMjdEM0QwMDI4NTA3OCAvKiBDdXN0b21VbmRvU3RlcC5j
cHAgKi8sCisJCQkJRjRFMTk2NjEyMUYyN0QzQzAwMjg1MDc4IC8qIEN1c3RvbVVuZG9TdGVwLmgg
Ki8sCisJCQkJOTMzMDlEOEYwOTlFNjQ5MTAwNTZFNTgxIC8qIERlbGV0ZUZyb21UZXh0Tm9kZUNv
bW1hbmQuY3BwICovLAorCQkJCTkzMzA5RDkwMDk5RTY0OTEwMDU2RTU4MSAvKiBEZWxldGVGcm9t
VGV4dE5vZGVDb21tYW5kLmggKi8sCisJCQkJOTMzMDlEOTEwOTlFNjQ5MTAwNTZFNTgxIC8qIERl
bGV0ZVNlbGVjdGlvbkNvbW1hbmQuY3BwICovLAorCQkJCTkzMzA5RDkyMDk5RTY0OTEwMDU2RTU4
MSAvKiBEZWxldGVTZWxlY3Rpb25Db21tYW5kLmggKi8sCisJCQkJQ0VDQURGQzMxNTM3NzhGRjAw
RTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0aXZlLmggKi8sCisJCQkJQ0VDQURGQzQxNTM3NzhG
RjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuY3BwICovLAorCQkJCUNFQ0FERkM1MTUzNzc4
RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25Db21tYW5kLmggKi8sCisJCQkJOTM4NDMwQjIyNDc1REUz
RjAwM0Y5NjE3IC8qIERpY3RhdGlvbkNvbnRleHQuaCAqLywKKwkJCQkyRDU2NDZBRjFCOEY4NDkz
MDAzQzQ5OTQgLyogRGljdGlvbmFyeVBvcHVwSW5mby5oICovLAorCQkJCUJDNEE1MzIxMjU2MDUy
NzAwMDI4QzU5MiAvKiBFZGl0YWJsZUxpbmtCZWhhdmlvci5oICovLAorCQkJCUY0OUU5OEU0MjFE
RUU2QzEwMDlBRTU1RSAvKiBFZGl0QWN0aW9uLmNwcCAqLywKKwkJCQk5MzMwOUQ5MzA5OUU2NDkx
MDA1NkU1ODEgLyogRWRpdEFjdGlvbi5oICovLAorCQkJCTkzMzA5RDk0MDk5RTY0OTEwMDU2RTU4
MSAvKiBFZGl0Q29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlEOTUwOTlFNjQ5MTAwNTZFNTgxIC8q
IEVkaXRDb21tYW5kLmggKi8sCisJCQkJOTMzMDlEOTgwOTlFNjQ5MTAwNTZFNTgxIC8qIEVkaXRp
bmcuY3BwICovLAorCQkJCTkzMzA5RDk5MDk5RTY0OTEwMDU2RTU4MSAvKiBFZGl0aW5nLmggKi8s
CisJCQkJNEYxNTM0REQxMUI1MzJFQzAwMjFGRDg2IC8qIEVkaXRpbmdCZWhhdmlvci5oICovLAor
CQkJCTRGMTUzNERGMTFCNTMzMDIwMDIxRkQ4NiAvKiBFZGl0aW5nQmVoYXZpb3JUeXBlLmggKi8s
CisJCQkJM0FDNjQ4QjExMjlFMTQ2NTAwQzNFQjI1IC8qIEVkaXRpbmdCb3VuZGFyeS5oICovLAor
CQkJCTlCQUI2QzZCMTI1NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuY3BwICovLAorCQkJ
CTlCQUI2QzZBMTI1NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuaCAqLywKKwkJCQk0QjMw
NDNDQTBBRTAzNzNCMDBBODI2NDcgLyogRWRpdG9yLmNwcCAqLywKKwkJCQk0QjMwNDNDQjBBRTAz
NzNCMDBBODI2NDcgLyogRWRpdG9yLmggKi8sCisJCQkJOTNBMzhCNEEwRDBFNTgwODAwNjg3MkMy
IC8qIEVkaXRvckNvbW1hbmQuY3BwICovLAorCQkJCTRCQUU5NUIwMEIyRkE5Q0UwMEFFRDhBMCAv
KiBFZGl0b3JEZWxldGVBY3Rpb24uaCAqLywKKwkJCQk5M0ZEQUZDOTBCMTEzMDc0MDBFMjc0NkYg
LyogRWRpdG9ySW5zZXJ0QWN0aW9uLmggKi8sCisJCQkJMzcyQzAwRDgxMjk2MTlGODAwNUM5NTc1
IC8qIEZpbmRPcHRpb25zLmggKi8sCisJCQkJRjQ0Mjg1MEIyMTQwNDEyNTAwQ0NEQTIyIC8qIEZv
bnRBdHRyaWJ1dGVDaGFuZ2VzLmNwcCAqLywKKwkJCQlGNEU1N0VEQTIxM0YzRjVGMDA0RUE5OEUg
LyogRm9udEF0dHJpYnV0ZUNoYW5nZXMuaCAqLywKKwkJCQlGNDhEMkE3MTIxNTZEQzBBMDBDNjc1
MkIgLyogRm9udEF0dHJpYnV0ZXMuaCAqLywKKwkJCQlGNDhEMkE2QTIxNTYyM0I0MDBDNjc1MkIg
LyogRm9udFNoYWRvdy5oICovLAorCQkJCUQwNUNFRDI3MEE0MEJCMkMwMEM1QUYzOCAvKiBGb3Jt
YXRCbG9ja0NvbW1hbmQuY3BwICovLAorCQkJCUQwNUNFRDI4MEE0MEJCMkMwMEM1QUYzOCAvKiBG
b3JtYXRCbG9ja0NvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURCRTA5OUU2NDkxMDA1NkU1ODEgLyog
RnJhbWVTZWxlY3Rpb24uY3BwICovLAorCQkJCTkzMzA5REJGMDk5RTY0OTEwMDU2RTU4MSAvKiBG
cmFtZVNlbGVjdGlvbi5oICovLAorCQkJCTkzMzA5RDk2MDk5RTY0OTEwMDU2RTU4MSAvKiBIVE1M
SW50ZXJjaGFuZ2UuY3BwICovLAorCQkJCTkzMzA5RDk3MDk5RTY0OTEwMDU2RTU4MSAvKiBIVE1M
SW50ZXJjaGFuZ2UuaCAqLywKKwkJCQlEQjIzQzJDOTBBNTA4RDI5MDAyNDg5RUIgLyogSW5kZW50
T3V0ZGVudENvbW1hbmQuY3BwICovLAorCQkJCURCMjNDMkNBMEE1MDhEMjkwMDI0ODlFQiAvKiBJ
bmRlbnRPdXRkZW50Q29tbWFuZC5oICovLAorCQkJCUU0RDMzRjM5MjUyQUVFQ0MwMDgzN0QwNSAv
KiBJbmxpbmVSdW5BbmRPZmZzZXQuaCAqLywKKwkJCQk5MzMwOUQ5QTA5OUU2NDkxMDA1NkU1ODEg
LyogSW5zZXJ0SW50b1RleHROb2RlQ29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlEOUIwOTlFNjQ5
MTAwNTZFNTgxIC8qIEluc2VydEludG9UZXh0Tm9kZUNvbW1hbmQuaCAqLywKKwkJCQk5MzMwOUQ5
QzA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0TGluZUJyZWFrQ29tbWFuZC5jcHAgKi8sCisJCQkJ
OTMzMDlEOUQwOTlFNjQ5MTAwNTZFNTgxIC8qIEluc2VydExpbmVCcmVha0NvbW1hbmQuaCAqLywK
KwkJCQlEMDdERUFCNzBBMzY1NTRBMDBDQTMwRjggLyogSW5zZXJ0TGlzdENvbW1hbmQuY3BwICov
LAorCQkJCUQwN0RFQUI4MEEzNjU1NEEwMENBMzBGOCAvKiBJbnNlcnRMaXN0Q29tbWFuZC5oICov
LAorCQkJCUY0N0FEMjM5MjE5MzQ5OUEwMDUxREQwQiAvKiBJbnNlcnROZXN0ZWRMaXN0Q29tbWFu
ZC5jcHAgKi8sCisJCQkJRjQ3QUQyMzgyMTkzNDk5QTAwNTFERDBCIC8qIEluc2VydE5lc3RlZExp
c3RDb21tYW5kLmggKi8sCisJCQkJOTMzMDlEOUUwOTlFNjQ5MTAwNTZFNTgxIC8qIEluc2VydE5v
ZGVCZWZvcmVDb21tYW5kLmNwcCAqLywKKwkJCQk5MzMwOUQ5RjA5OUU2NDkxMDA1NkU1ODEgLyog
SW5zZXJ0Tm9kZUJlZm9yZUNvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURBMDA5OUU2NDkxMDA1NkU1
ODEgLyogSW5zZXJ0UGFyYWdyYXBoU2VwYXJhdG9yQ29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlE
QTEwOTlFNjQ5MTAwNTZFNTgxIC8qIEluc2VydFBhcmFncmFwaFNlcGFyYXRvckNvbW1hbmQuaCAq
LywKKwkJCQk5MzMwOURBMjA5OUU2NDkxMDA1NkU1ODEgLyogSW5zZXJ0VGV4dENvbW1hbmQuY3Bw
ICovLAorCQkJCTkzMzA5REEzMDk5RTY0OTEwMDU2RTU4MSAvKiBJbnNlcnRUZXh0Q29tbWFuZC5o
ICovLAorCQkJCTkzMzA5REE4MDk5RTY0OTEwMDU2RTU4MSAvKiBtYXJrdXAuY3BwICovLAorCQkJ
CTkzMzA5REE5MDk5RTY0OTEwMDU2RTU4MSAvKiBtYXJrdXAuaCAqLywKKwkJCQk5NzI4QzMxMTEy
NjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNjdW11bGF0b3IuY3BwICovLAorCQkJCTk3MjhDMzEy
MTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVsYXRvci5oICovLAorCQkJCTkzMzA5REFB
MDk5RTY0OTEwMDU2RTU4MSAvKiBNZXJnZUlkZW50aWNhbEVsZW1lbnRzQ29tbWFuZC5jcHAgKi8s
CisJCQkJOTMzMDlEQUIwOTlFNjQ5MTAwNTZFNTgxIC8qIE1lcmdlSWRlbnRpY2FsRWxlbWVudHND
b21tYW5kLmggKi8sCisJCQkJQzZENzRBRTMwOUFBMjkwQTAwMEIwQTUyIC8qIE1vZGlmeVNlbGVj
dGlvbkxpc3RMZXZlbC5jcHAgKi8sCisJCQkJQzZENzRBRDMwOUFBMjgyRTAwMEIwQTUyIC8qIE1v
ZGlmeVNlbGVjdGlvbkxpc3RMZXZlbC5oICovLAorCQkJCTkzMzA5REFDMDk5RTY0OTEwMDU2RTU4
MSAvKiBNb3ZlU2VsZWN0aW9uQ29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlEQUQwOTlFNjQ5MTAw
NTZFNTgxIC8qIE1vdmVTZWxlY3Rpb25Db21tYW5kLmggKi8sCisJCQkJRDA2QzBEOEUwQ0ZEMTE0
NjAwNjVGNDNGIC8qIFJlbW92ZUZvcm1hdENvbW1hbmQuY3BwICovLAorCQkJCUQwNkMwRDhEMENG
RDExNDYwMDY1RjQzRiAvKiBSZW1vdmVGb3JtYXRDb21tYW5kLmggKi8sCisJCQkJOTMzMDlEQjUw
OTlFNjQ5MTAwNTZFNTgxIC8qIFJlbW92ZU5vZGVDb21tYW5kLmNwcCAqLywKKwkJCQk5MzMwOURC
NjA5OUU2NDkxMDA1NkU1ODEgLyogUmVtb3ZlTm9kZUNvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURC
NzA5OUU2NDkxMDA1NkU1ODEgLyogUmVtb3ZlTm9kZVByZXNlcnZpbmdDaGlsZHJlbkNvbW1hbmQu
Y3BwICovLAorCQkJCTkzMzA5REI4MDk5RTY0OTEwMDU2RTU4MSAvKiBSZW1vdmVOb2RlUHJlc2Vy
dmluZ0NoaWxkcmVuQ29tbWFuZC5oICovLAorCQkJCTlCMzJDREE4MTNERjdGQTkwMEYzNEQxMyAv
KiBSZW5kZXJlZFBvc2l0aW9uLmNwcCAqLywKKwkJCQk5QjMyQ0RBNzEzREY3RkE5MDBGMzREMTMg
LyogUmVuZGVyZWRQb3NpdGlvbi5oICovLAorCQkJCUE4OUNDQzUwMEY0NEU5ODEwMEI1REExMCAv
KiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5jcHAgKi8sCisJCQkJQTg5Q0NDNTEwRjQ0RTk4
MTAwQjVEQTEwIC8qIFJlcGxhY2VOb2RlV2l0aFNwYW5Db21tYW5kLmggKi8sCisJCQkJMkRGNTEy
Q0IxRDg3M0U0NzAwMUQ2NzgwIC8qIFJlcGxhY2VSYW5nZVdpdGhUZXh0Q29tbWFuZC5jcHAgKi8s
CisJCQkJMkRGNTEyQ0MxRDg3M0U0NzAwMUQ2NzgwIC8qIFJlcGxhY2VSYW5nZVdpdGhUZXh0Q29t
bWFuZC5oICovLAorCQkJCTkzMzA5REJBMDk5RTY0OTEwMDU2RTU4MSAvKiBSZXBsYWNlU2VsZWN0
aW9uQ29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlEQkIwOTlFNjQ5MTAwNTZFNTgxIC8qIFJlcGxh
Y2VTZWxlY3Rpb25Db21tYW5kLmggKi8sCisJCQkJNTE0MDVDODYxOTBCMDE0NDAwNzU0Rjk0IC8q
IFNlbGVjdGlvbkdlb21ldHJ5R2F0aGVyZXIuY3BwICovLAorCQkJCTUxNDA1Qzg3MTkwQjAxNDQw
MDc1NEY5NCAvKiBTZWxlY3Rpb25HZW9tZXRyeUdhdGhlcmVyLmggKi8sCisJCQkJRjRENDNENjQy
MTg4MDJFNjAwRUNFQ0FDIC8qIFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YS5oICovLAorCQkJCTkz
MzA5REMwMDk5RTY0OTEwMDU2RTU4MSAvKiBTZXROb2RlQXR0cmlidXRlQ29tbWFuZC5jcHAgKi8s
CisJCQkJOTMzMDlEQzEwOTlFNjQ5MTAwNTZFNTgxIC8qIFNldE5vZGVBdHRyaWJ1dGVDb21tYW5k
LmggKi8sCisJCQkJQjhEQkRCNDcxMzBCMEY4QTAwRjVDREIxIC8qIFNldFNlbGVjdGlvbkNvbW1h
bmQuY3BwICovLAorCQkJCUI4REJEQjQ4MTMwQjBGOEEwMEY1Q0RCMSAvKiBTZXRTZWxlY3Rpb25D
b21tYW5kLmggKi8sCisJCQkJQzVBMUVBNzkxNTJCQzQ4NjAwNEQwMEI2IC8qIFNpbXBsaWZ5TWFy
a3VwQ29tbWFuZC5jcHAgKi8sCisJCQkJQzVBMUVBN0ExNTJCQzQ4NjAwNEQwMEI2IC8qIFNpbXBs
aWZ5TWFya3VwQ29tbWFuZC5oICovLAorCQkJCTRCNkZBNkYyMEMzOUU0OEMwMDA4NzAxMSAvKiBT
bWFydFJlcGxhY2UuaCAqLywKKwkJCQk0QjZGQTZGNjBDMzlFNEExMDAwODcwMTEgLyogU21hcnRS
ZXBsYWNlQ0YuY3BwICovLAorCQkJCUE3OEZFMTM5MTIzNjZCMTAwMEFDRThEMCAvKiBTcGVsbENo
ZWNrZXIuY3BwICovLAorCQkJCUE3OEZFMTNBMTIzNjZCMTAwMEFDRThEMCAvKiBTcGVsbENoZWNr
ZXIuaCAqLywKKwkJCQlCOERCREI0OTEzMEIwRjhBMDBGNUNEQjEgLyogU3BlbGxpbmdDb3JyZWN0
aW9uQ29tbWFuZC5jcHAgKi8sCisJCQkJQjhEQkRCNEExMzBCMEY4QTAwRjVDREIxIC8qIFNwZWxs
aW5nQ29ycmVjdGlvbkNvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURDMjA5OUU2NDkxMDA1NkU1ODEg
LyogU3BsaXRFbGVtZW50Q29tbWFuZC5jcHAgKi8sCisJCQkJOTMzMDlEQzMwOTlFNjQ5MTAwNTZF
NTgxIC8qIFNwbGl0RWxlbWVudENvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURDNDA5OUU2NDkxMDA1
NkU1ODEgLyogU3BsaXRUZXh0Tm9kZUNvbW1hbmQuY3BwICovLAorCQkJCTkzMzA5REM1MDk5RTY0
OTEwMDU2RTU4MSAvKiBTcGxpdFRleHROb2RlQ29tbWFuZC5oICovLAorCQkJCTkzMzA5REM2MDk5
RTY0OTEwMDU2RTU4MSAvKiBTcGxpdFRleHROb2RlQ29udGFpbmluZ0VsZW1lbnRDb21tYW5kLmNw
cCAqLywKKwkJCQk5MzMwOURDNzA5OUU2NDkxMDA1NkU1ODEgLyogU3BsaXRUZXh0Tm9kZUNvbnRh
aW5pbmdFbGVtZW50Q29tbWFuZC5oICovLAorCQkJCTkzMzA5REM4MDk5RTY0OTEwMDU2RTU4MSAv
KiBUZXh0QWZmaW5pdHkuaCAqLywKKwkJCQlBN0RCRjhEQjEyNzY5MTlDMDA2QjYwMDggLyogVGV4
dENoZWNraW5nSGVscGVyLmNwcCAqLywKKwkJCQlBN0RCRjhEQzEyNzY5MTlDMDA2QjYwMDggLyog
VGV4dENoZWNraW5nSGVscGVyLmggKi8sCisJCQkJOTMzMDlEQzkwOTlFNjQ5MTAwNTZFNTgxIC8q
IFRleHRHcmFudWxhcml0eS5oICovLAorCQkJCUNFQ0FERkNCMTUzNzc5MUQwMEUzNzA2OCAvKiBU
ZXh0SW5zZXJ0aW9uQmFzZUNvbW1hbmQuY3BwICovLAorCQkJCUNFQ0FERkNDMTUzNzc5MUQwMEUz
NzA2OCAvKiBUZXh0SW5zZXJ0aW9uQmFzZUNvbW1hbmQuaCAqLywKKwkJCQk5MzMwOURDQzA5OUU2
NDkxMDA1NkU1ODEgLyogVGV4dEl0ZXJhdG9yLmNwcCAqLywKKwkJCQk5MzMwOURDRDA5OUU2NDkx
MDA1NkU1ODEgLyogVGV4dEl0ZXJhdG9yLmggKi8sCisJCQkJOTM5MjE0NjgxOEE2RDc5MTAwMEVF
Njg4IC8qIFRleHRJdGVyYXRvckJlaGF2aW9yLmggKi8sCisJCQkJOUIwMkUwQzQyMzVFNzZBQTAw
NDA0NEIyIC8qIFRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyLmNwcCAqLywKKwkJCQk5QjAyRTBD
MzIzNUU3NkFBMDA0MDQ0QjIgLyogVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuaCAqLywKKwkJ
CQk5MzMwOURDQTA5OUU2NDkxMDA1NkU1ODEgLyogVHlwaW5nQ29tbWFuZC5jcHAgKi8sCisJCQkJ
OTMzMDlEQ0IwOTlFNjQ5MTAwNTZFNTgxIC8qIFR5cGluZ0NvbW1hbmQuaCAqLywKKwkJCQk5QjJE
OEE3ODE0OTk3Q0NGMDBFQ0VGM0UgLyogVW5kb1N0ZXAuaCAqLywKKwkJCQlEMDg2RkU5NzA5RDUz
QUFCMDA1QkM3NEQgLyogVW5saW5rQ29tbWFuZC5jcHAgKi8sCisJCQkJRDA4NkZFOTYwOUQ1M0FB
QjAwNUJDNzREIC8qIFVubGlua0NvbW1hbmQuaCAqLywKKwkJCQk5MzMwOUREMDA5OUU2NDkxMDA1
NkU1ODEgLyogVmlzaWJsZVBvc2l0aW9uLmNwcCAqLywKKwkJCQk5MzMwOUREMTA5OUU2NDkxMDA1
NkU1ODEgLyogVmlzaWJsZVBvc2l0aW9uLmggKi8sCisJCQkJQTg4M0RGMjUwRjNEMDQ1RDAwRjE5
QkY2IC8qIFZpc2libGVTZWxlY3Rpb24uY3BwICovLAorCQkJCUE4ODNERjI2MEYzRDA0NUQwMEYx
OUJGNiAvKiBWaXNpYmxlU2VsZWN0aW9uLmggKi8sCisJCQkJOTMzMDlEQ0UwOTlFNjQ5MTAwNTZF
NTgxIC8qIFZpc2libGVVbml0cy5jcHAgKi8sCisJCQkJOTMzMDlEQ0YwOTlFNjQ5MTAwNTZFNTgx
IC8qIFZpc2libGVVbml0cy5oICovLAorCQkJCTlCNjExNjQ5MUY2QTU5MzMwMEU5MjNCOCAvKiBX
ZWJDb250ZW50UmVhZGVyLmNwcCAqLywKKwkJCQk5QkY0MzM3NjFGNjc2MTlCMDBFMUZENzEgLyog
V2ViQ29udGVudFJlYWRlci5oICovLAorCQkJCTlCREQxODI2MUY3RTA1RjQwMEU4RTU3NyAvKiBX
ZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXIuY3BwICovLAorCQkJCTlCREQxODI1MUY3RTA1OTkw
MEU4RTU3NyAvKiBXZWJDb3JlUGFzdGVib2FyZEZpbGVSZWFkZXIuaCAqLywKKwkJCQk5MzMwOURE
NDA5OUU2NDkxMDA1NkU1ODEgLyogV3JhcENvbnRlbnRzSW5EdW1teVNwYW5Db21tYW5kLmNwcCAq
LywKKwkJCQk5MzMwOURENTA5OUU2NDkxMDA1NkU1ODEgLyogV3JhcENvbnRlbnRzSW5EdW1teVNw
YW5Db21tYW5kLmggKi8sCisJCQkJOUJBRjNCMjMxMkMxQTM5ODAwMDE0QkYxIC8qIFdyaXRpbmdE
aXJlY3Rpb24uaCAqLywKKwkJCSk7CisJCQlwYXRoID0gZWRpdGluZzsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1c2VzVGFicyA9IDA7CisJCX07CisJ
CTkzMzJBQjNCMTY1MTVENzcwMEQ4MjdFQyAvKiBjcHUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMzJBQjNDMTY1MTVENzcwMEQ4MjdFQyAvKiBhcm0g
Ki8sCisJCQkpOworCQkJcGF0aCA9IGNwdTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCTkzMzJBQjNDMTY1MTVENzcwMEQ4MjdFQyAvKiBhcm0gKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMzJBQjg2MTY1M0E5NzkwMEQ4MjdFQyAv
KiBmaWx0ZXJzICovLAorCQkJCTkzMzJBQjNEMTY1MTVENzcwMEQ4MjdFQyAvKiBHcmFwaGljc0Nv
bnRleHRHTE5FT04uaCAqLywKKwkJCSk7CisJCQlwYXRoID0gYXJtOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJOTMzMkFCODYxNjUzQTk3OTAwRDgyN0VDIC8qIGZpbHRlcnMg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMzJBQjg3
MTY1M0E5NzkwMEQ4MjdFQyAvKiBGRUJsZW5kTkVPTi5oICovLAorCQkJCTkzMzJBQjg4MTY1M0E5
NzkwMEQ4MjdFQyAvKiBGRUNvbXBvc2l0ZUFyaXRobWV0aWNORU9OLmggKi8sCisJCQkJOTMzMkFC
ODkxNjUzQTk3OTAwRDgyN0VDIC8qIEZFR2F1c3NpYW5CbHVyTkVPTi5oICovLAorCQkJCTkzMzJB
QjhBMTY1M0E5NzkwMEQ4MjdFQyAvKiBGRUxpZ2h0aW5nTkVPTi5jcHAgKi8sCisJCQkJOTMzMkFC
OEIxNjUzQTk3OTAwRDgyN0VDIC8qIEZFTGlnaHRpbmdORU9OLmggKi8sCisJCQkJOTMzMkFCOEMx
NjUzQTk3OTAwRDgyN0VDIC8qIE5FT05IZWxwZXJzLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGZp
bHRlcnM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk5M0ExRUFBMjBBNTYz
NEQ4MDA2OTYwQTAgLyogbWFjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQkxQzI2NDk3OTBEN0UyNDhBMDBCRDEwRjIgLyogRG9jdW1lbnRMb2FkZXJNYWMu
Y3BwICovLAorCQkJCTY1NkQzNzFBMEFEQkE1REUwMEE0NTU0RCAvKiBMb2FkZXJOU1VSTEV4dHJh
cy5oICovLAorCQkJCTY1NkQzNzFCMEFEQkE1REUwMEE0NTU0RCAvKiBMb2FkZXJOU1VSTEV4dHJh
cy5tbSAqLywKKwkJCQk1MUFBM0Y2RTBCRDVBQTlFMDA4OTI5NzEgLyogUmVzb3VyY2VMb2FkZXJN
YWMubW0gKi8sCisJCQkpOworCQkJcGF0aCA9IG1hYzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCTkzQjBBNjQyMjZDREM1NzQwMEFBMjFFNCAvKiBwZXJtaXNzaW9ucyAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJOTNCMEE2NDcyNkNE
QzVCNzAwQUEyMUU0IC8qIE5hdmlnYXRvcitQZXJtaXNzaW9ucy5pZGwgKi8sCisJCQkJOTNCMEE2
NEMyNkNERDEzRTAwQUEyMUU0IC8qIE5hdmlnYXRvclBlcm1pc3Npb25zLmNwcCAqLywKKwkJCQk5
M0IwQTY0QTI2Q0REMTNFMDBBQTIxRTQgLyogTmF2aWdhdG9yUGVybWlzc2lvbnMuaCAqLywKKwkJ
CQk5M0IwQTY2OTI2RDQ0QjdGMDBBQTIxRTQgLyogUGVybWlzc2lvbkNvbnRyb2xsZXIuaCAqLywK
KwkJCQk5M0IwQTY0RTI2Q0REMTNGMDBBQTIxRTQgLyogUGVybWlzc2lvbkRlc2NyaXB0b3IuaCAq
LywKKwkJCQk5M0IwQTY0NTI2Q0RDNUI2MDBBQTIxRTQgLyogUGVybWlzc2lvbkRlc2NyaXB0b3Iu
aWRsICovLAorCQkJCTkzQjBBNjUwMjZDREQxNDAwMEFBMjFFNCAvKiBQZXJtaXNzaW9uTmFtZS5o
ICovLAorCQkJCTkzQjBBNjQ2MjZDREM1QjcwMEFBMjFFNCAvKiBQZXJtaXNzaW9uTmFtZS5pZGwg
Ki8sCisJCQkJOTNCMEE2NkYyNkQ0QjUyOTAwQUEyMUU0IC8qIFBlcm1pc3Npb25PYnNlcnZlci5o
ICovLAorCQkJCTkzQjBBNjUxMjZDREQxNDAwMEFBMjFFNCAvKiBQZXJtaXNzaW9ucy5jcHAgKi8s
CisJCQkJOTNCMEE2NEIyNkNERDEzRTAwQUEyMUU0IC8qIFBlcm1pc3Npb25zLmggKi8sCisJCQkJ
OTNCMEE2NDgyNkNEQzVCNzAwQUEyMUU0IC8qIFBlcm1pc3Npb25zLmlkbCAqLywKKwkJCQk5M0Iw
QTY1MjI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvblN0YXRlLmggKi8sCisJCQkJOTNCMEE2
NDQyNkNEQzVCNjAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0ZS5pZGwgKi8sCisJCQkJOTNCMEE2
NEYyNkNERDE0MDAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0dXMuY3BwICovLAorCQkJCTkzQjBB
NjREMjZDREQxM0YwMEFBMjFFNCAvKiBQZXJtaXNzaW9uU3RhdHVzLmggKi8sCisJCQkJOTNCMEE2
NDkyNkNEQzVCODAwQUEyMUU0IC8qIFBlcm1pc3Npb25TdGF0dXMuaWRsICovLAorCQkJKTsKKwkJ
CXBhdGggPSBwZXJtaXNzaW9uczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CTkzQjM4RUI2MjU4MjE4MzMwMDE5OEU2MyAvKiBjb2NvYSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJOTNCMzhFQjgyNTgyMTg5OTAwMTk4RTYzIC8qIFNw
ZWVjaFJlY29nbml6ZXJDb2NvYS5tbSAqLywKKwkJCQk5M0IzOEVCQTI1ODIxOTNCMDAxOThFNjMg
LyogV2ViU3BlZWNoUmVjb2duaXplclRhc2suaCAqLywKKwkJCQk5M0IzOEVCQzI1ODIxOTNFMDAx
OThFNjMgLyogV2ViU3BlZWNoUmVjb2duaXplclRhc2subW0gKi8sCisJCQkJOTNCMzhFQkIyNTgy
MTkzRDAwMTk4RTYzIC8qIFdlYlNwZWVjaFJlY29nbml6ZXJUYXNrTW9jay5oICovLAorCQkJCTkz
QjM4RUI5MjU4MjE5M0EwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNvZ25pemVyVGFza01vY2subW0g
Ki8sCisJCQkpOworCQkJcGF0aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
KwkJfTsKKwkJOTNDMDlBODIwQjA2NEYwNTAwNUFCRDREIC8qIG1hYyAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQUJBRjIyMDcwQzAzQjFDNzAwQjBCQ0Yw
IC8qIENocm9tZU1hYy5tbSAqLywKKwkJCQlBNzE4Nzg4RjBCMkQwNEFDMDBBMTZFQ0UgLyogRHJh
Z0NvbnRyb2xsZXJNYWMubW0gKi8sCisJCQkJOTNDMDlBN0UwQjA2NEVFRjAwNUFCRDREIC8qIEV2
ZW50SGFuZGxlck1hYy5tbSAqLywKKwkJCQlGNEIyQTkwQzI2NTA4N0U0MDA5RTcyODYgLyogSW1h
Z2VPdmVybGF5Q29udHJvbGxlck1hYy5tbSAqLywKKwkJCQk4MzRERDRGMzFCRTA4OTg5MDAyQzlD
M0UgLyogUGFnZU1hYy5tbSAqLywKKwkJCQkyRDkzQUVFMTE5REY1NjQxMDAyQTg2QzMgLyogU2Vy
dmljZXNPdmVybGF5Q29udHJvbGxlci5oICovLAorCQkJCTJEOTNBRUUyMTlERjU2NDEwMDJBODZD
MyAvKiBTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLm1tICovLAorCQkJCTJENEY5NkYzMUExRUND
MjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9yV2luZG93LmggKi8sCisJCQkJMkQ0Rjk2RjQxQTFF
Q0MyNDAwOThCRjg4IC8qIFRleHRJbmRpY2F0b3JXaW5kb3cubW0gKi8sCisJCQkJRjU4Nzg1NEMw
MkRFMzc1OTAxRUE0MTIyIC8qIFdlYkNvcmVGcmFtZVZpZXcuaCAqLywKKwkJCQkyRTlCNUQ4RTFC
NjZBOTRFMDA4QzZBMjQgLyogV2hlZWxFdmVudERlbHRhRmlsdGVyTWFjLmggKi8sCisJCQkJMkVF
RUU1NUIxQjY2QTA0NzAwOEUyQ0JDIC8qIFdoZWVsRXZlbnREZWx0YUZpbHRlck1hYy5tbSAqLywK
KwkJCSk7CisJCQlwYXRoID0gbWFjOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJOTNFRUMxRUMwOUMyODc3NzAwQzUxNUQxIC8qIGh0bWwgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTQ5NDg0RkFFMTAyQ0YwMUUwMDE4N0REMyAvKiBj
YW52YXMgKi8sCisJCQkJMUE4OEE5MDExNzU1M0NENzAwMEM3NEY5IC8qIGZvcm1zICovLAorCQkJ
CTk3QzFGNTUxMTIyODU1ODgwMEVERTYxNiAvKiBwYXJzZXIgKi8sCisJCQkJNDE1MEY5RUQxMkI2
RTA5OTAwMDhDODYwIC8qIHNoYWRvdyAqLywKKwkJCQlCMUFENEU3NzEzQTEyQTcyMDA4NDZCMjcg
LyogdHJhY2sgKi8sCisJCQkJQTVGNkUxNkMxMzJFRDQ2RTAwOEVEQUUzIC8qIEF1dG9jYXBpdGFs
aXplLmNwcCAqLywKKwkJCQlBNTAxOTIwQzEzMkVCRjJFMDA4QkZFNTUgLyogQXV0b2NhcGl0YWxp
emUuaCAqLywKKwkJCQlBNUE3QUE0MjEzMkYwRUNDMDBEM0EzQzIgLyogQXV0b2NhcGl0YWxpemVU
eXBlcy5oICovLAorCQkJCTdDMTg0M0ZCMUM4QjcyODMwMDJFQjk3MyAvKiBBdXRvZmlsbC5jcHAg
Ki8sCisJCQkJN0MxODQzRkMxQzhCNzI4MzAwMkVCOTczIC8qIEF1dG9maWxsLmggKi8sCisJCQkJ
Mzc5RTYxQzUxMjZDQTVDMzAwQjYzRThEIC8qIEJhc2VCdXR0b25JbnB1dFR5cGUuY3BwICovLAor
CQkJCTM3OUU2MUM2MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNlQnV0dG9uSW5wdXRUeXBlLmggKi8s
CisJCQkJMzc5RTYxQzcxMjZDQTVDMzAwQjYzRThEIC8qIEJhc2VDaGVja2FibGVJbnB1dFR5cGUu
Y3BwICovLAorCQkJCTM3OUU2MUM4MTI2Q0E1QzMwMEI2M0U4RCAvKiBCYXNlQ2hlY2thYmxlSW5w
dXRUeXBlLmggKi8sCisJCQkJQzMzRUU1QzIxNEZCNDk2MTAwMDIwOTVBIC8qIEJhc2VDbGlja2Fi
bGVXaXRoS2V5SW5wdXRUeXBlLmNwcCAqLywKKwkJCQlDMzNFRTVDMzE0RkI0OTYxMDAwMjA5NUEg
LyogQmFzZUNsaWNrYWJsZVdpdGhLZXlJbnB1dFR5cGUuaCAqLywKKwkJCQlGNTlDOTVGRDEyNTVC
MjNGMDAwNjIzQzAgLyogQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcCAqLywKKwkJCQlGNTlD
OTVGRTEyNTVCMjNGMDAwNjIzQzAgLyogQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggKi8sCisJ
CQkJRjU1QjNENzkxMjUxRjEyRDAwM0VGMjY5IC8qIEJhc2VUZXh0SW5wdXRUeXBlLmNwcCAqLywK
KwkJCQlGNTVCM0Q3QTEyNTFGMTJEMDAzRUYyNjkgLyogQmFzZVRleHRJbnB1dFR5cGUuaCAqLywK
KwkJCQlGNTVCM0Q3QjEyNTFGMTJEMDAzRUYyNjkgLyogQnV0dG9uSW5wdXRUeXBlLmNwcCAqLywK
KwkJCQlGNTVCM0Q3QzEyNTFGMTJEMDAzRUYyNjkgLyogQnV0dG9uSW5wdXRUeXBlLmggKi8sCisJ
CQkJODMwMDMwRjcxQjdEMzk4ODAwRUQzQUFDIC8qIENhY2hlZEhUTUxDb2xsZWN0aW9uLmggKi8s
CisJCQkJMzEzMTcxNTcxRkIwOTY5RTAwOEQ5MUZDIC8qIENhbnZhc0Jhc2UuY3BwICovLAorCQkJ
CTMxMzE3MTU0MUZCMDc5RDEwMDhEOTFGQyAvKiBDYW52YXNCYXNlLmggKi8sCisJCQkJRjU1QjNE
N0QxMjUxRjEyRDAwM0VGMjY5IC8qIENoZWNrYm94SW5wdXRUeXBlLmNwcCAqLywKKwkJCQlGNTVC
M0Q3RTEyNTFGMTJEMDAzRUYyNjkgLyogQ2hlY2tib3hJbnB1dFR5cGUuaCAqLywKKwkJCQk0NkVC
RUEwMTFCN0Q0RDVEMDBCRTQ5NDEgLyogQ29sbGVjdGlvblRyYXZlcnNhbC5oICovLAorCQkJCTkz
QzQ0MUZGMEY4MTNBRTEwMEMxQTYzNCAvKiBDb2xsZWN0aW9uVHlwZS5oICovLAorCQkJCUJDMjk5
MzVDMTdBMURENTgwMEJDRTg4MCAvKiBDb2xvcklucHV0VHlwZS5jcHAgKi8sCisJCQkJRjU1QjNE
ODAxMjUxRjEyRDAwM0VGMjY5IC8qIENvbG9ySW5wdXRUeXBlLmggKi8sCisJCQkJNEIxRTEzRTky
MTc5MEQ3RTAwNDJDRjk4IC8qIEN1c3RvbVBhaW50Q2FudmFzLmNwcCAqLywKKwkJCQk0QjFFMTNF
NjIxNzkwRDY2MDA0MkNGOTggLyogQ3VzdG9tUGFpbnRDYW52YXMuaCAqLywKKwkJCQlCQzg0RjQz
OTI2NDFBQjE0MDBGNTdDMUMgLyogQ3VzdG9tUGFpbnRJbWFnZS5jcHAgKi8sCisJCQkJQkM4NEY0
M0EyNjQxQUIxNDAwRjU3QzFDIC8qIEN1c3RvbVBhaW50SW1hZ2UuaCAqLywKKwkJCQlFNTE3Njcw
MjIwQjg4QzE0MDBENDExNjcgLyogRGF0YUxpc3RTdWdnZXN0aW9uSW5mb3JtYXRpb24uaCAqLywK
KwkJCQlGNTVCM0Q4MTEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZUlucHV0VHlwZS5jcHAgKi8sCisJ
CQkJRjU1QjNEODIxMjUxRjEyRDAwM0VGMjY5IC8qIERhdGVJbnB1dFR5cGUuaCAqLywKKwkJCQlF
NTFENkExRDI0RTFFMjU1MDA4OTFDRkEgLyogRGF0ZVRpbWVGaWVsZHNTdGF0ZS5oICovLAorCQkJ
CUY1NUIzRDg1MTI1MUYxMkQwMDNFRjI2OSAvKiBEYXRlVGltZUxvY2FsSW5wdXRUeXBlLmNwcCAq
LywKKwkJCQlGNTVCM0Q4NjEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZVRpbWVMb2NhbElucHV0VHlw
ZS5oICovLAorCQkJCTgzNUQ1NEMxMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3RvcnlGaWxlTGlz
dENyZWF0b3IuY3BwICovLAorCQkJCTgzNUQ1NEMyMUY0REU1MzQwMEU2MDY3MSAvKiBEaXJlY3Rv
cnlGaWxlTGlzdENyZWF0b3IuaCAqLywKKwkJCQkyRUQ2MDlCQTExNDVCMDcxMDBDODY4NEUgLyog
RE9NRm9ybURhdGEuY3BwICovLAorCQkJCTJFRDYwOUJCMTE0NUIwNzEwMEM4Njg0RSAvKiBET01G
b3JtRGF0YS5oICovLAorCQkJCTJFMDg4OEMzMTE0ODgzQTkwMEFGNDI2NSAvKiBET01Gb3JtRGF0
YS5pZGwgKi8sCisJCQkJNzZGQzJCMDgxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5j
cHAgKi8sCisJCQkJNzZGQzJCMDkxMjM3MERBMDAwNkE5OTFBIC8qIERPTVRva2VuTGlzdC5oICov
LAorCQkJCTc2RkMyQjBBMTIzNzBEQTAwMDZBOTkxQSAvKiBET01Ub2tlbkxpc3QuaWRsICovLAor
CQkJCTJFMzdERkQ3MTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuY3BwICovLAorCQkJCTJFMzdE
RkQ4MTJEQkFGQjgwMEE2QjIzMyAvKiBET01VUkwuaCAqLywKKwkJCQkyRTM3REZEOTEyREJBRkI4
MDBBNkIyMzMgLyogRE9NVVJMLmlkbCAqLywKKwkJCQlGNTVCM0Q4NzEyNTFGMTJEMDAzRUYyNjkg
LyogRW1haWxJbnB1dFR5cGUuY3BwICovLAorCQkJCUY1NUIzRDg4MTI1MUYxMkQwMDNFRjI2OSAv
KiBFbWFpbElucHV0VHlwZS5oICovLAorCQkJCUY0MDNFNzg2MjM2M0I1OEMwMDA0NDU1MCAvKiBF
bnRlcktleUhpbnQuY3BwICovLAorCQkJCUY0MDNFNzg1MjM2M0I1OEMwMDA0NDU1MCAvKiBFbnRl
cktleUhpbnQuaCAqLywKKwkJCQk0MUEwODI5QjIyOTMyRUY0MDA4NDI2RTAgLyogRmVhdHVyZVBv
bGljeS5jcHAgKi8sCisJCQkJNDFBMDgyOTkyMjkzMkVGNDAwODQyNkUwIC8qIEZlYXR1cmVQb2xp
Y3kuaCAqLywKKwkJCQlGNTVCM0Q4OTEyNTFGMTJEMDAzRUYyNjkgLyogRmlsZUlucHV0VHlwZS5j
cHAgKi8sCisJCQkJRjU1QjNEOEExMjUxRjEyRDAwM0VGMjY5IC8qIEZpbGVJbnB1dFR5cGUuaCAq
LywKKwkJCQk0QTBEQTJGQzEyOUIyNDE5MDBBQjYxRTEgLyogRm9ybUFzc29jaWF0ZWRFbGVtZW50
LmNwcCAqLywKKwkJCQk0QTBEQTJGRDEyOUIyNDE5MDBBQjYxRTEgLyogRm9ybUFzc29jaWF0ZWRF
bGVtZW50LmggKi8sCisJCQkJRjUwNjY0RjUxNTdGNTJEQzAwQUMyMjZGIC8qIEZvcm1Db250cm9s
bGVyLmNwcCAqLywKKwkJCQlGNTA2NjRGNjE1N0Y1MkRDMDBBQzIyNkYgLyogRm9ybUNvbnRyb2xs
ZXIuaCAqLywKKwkJCQk5QjUwQjFEQzE3Q0Q0QzBGMDA4N0Y2M0MgLyogRm9ybU5hbWVkSXRlbS5o
ICovLAorCQkJCTk3MjA1QUFEMTIzOTI4Q0EwMEIxNzM4MCAvKiBGVFBEaXJlY3RvcnlEb2N1bWVu
dC5jcHAgKi8sCisJCQkJOTcyMDVBQUUxMjM5MjhDQTAwQjE3MzgwIC8qIEZUUERpcmVjdG9yeURv
Y3VtZW50LmggKi8sCisJCQkJODMwMDMwRjMxQjdEMzNBNjAwRUQzQUFDIC8qIEdlbmVyaWNDYWNo
ZWRIVE1MQ29sbGVjdGlvbi5jcHAgKi8sCisJCQkJODMwMDMwRjQxQjdEMzNBNjAwRUQzQUFDIC8q
IEdlbmVyaWNDYWNoZWRIVE1MQ29sbGVjdGlvbi5oICovLAorCQkJCUY1NUIzRDhCMTI1MUYxMkQw
MDNFRjI2OSAvKiBIaWRkZW5JbnB1dFR5cGUuY3BwICovLAorCQkJCUY1NUIzRDhDMTI1MUYxMkQw
MDNFRjI2OSAvKiBIaWRkZW5JbnB1dFR5cGUuaCAqLywKKwkJCQlCQzk3RTIzOTEwOTE0NDk1MDAx
MEQzNjEgLyogSFRNTEFsbENvbGxlY3Rpb24uY3BwICovLAorCQkJCUJDOTdFMjM4MTA5MTQ0OTUw
MDEwRDM2MSAvKiBIVE1MQWxsQ29sbGVjdGlvbi5oICovLAorCQkJCUJDOTdFMjNDMTA5MTQ2RjEw
MDEwRDM2MSAvKiBIVE1MQWxsQ29sbGVjdGlvbi5pZGwgKi8sCisJCQkJQThDRkY3OUEwQTE1Njk3
ODAwMEE0MjM0IC8qIEhUTUxBbmNob3JFbGVtZW50LmNwcCAqLywKKwkJCQlBOENGRjdBMTBBMTU2
OTc4MDAwQTQyMzQgLyogSFRNTEFuY2hvckVsZW1lbnQuaCAqLywKKwkJCQkxQTRBMkREMzBBMUI4
NDUxMDBDODA3RjggLyogSFRNTEFuY2hvckVsZW1lbnQuaWRsICovLAorCQkJCUE4RUE3RDI3MEEx
OTM4NTUwMEE4RUY1RiAvKiBIVE1MQXJlYUVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3RDI2MEEx
OTM4NTUwMEE4RUY1RiAvKiBIVE1MQXJlYUVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQTlGMDBBMUNE
QTU3MDBCNDJCMjUgLyogSFRNTEFyZWFFbGVtZW50LmlkbCAqLywKKwkJCQk3QzVGMjhGOTFBODI3
RDg0MDBDMEYzMUYgLyogSFRNTEF0dGFjaG1lbnRFbGVtZW50LmNwcCAqLywKKwkJCQk3QzVGMjhG
QTFBODI3RDg0MDBDMEYzMUYgLyogSFRNTEF0dGFjaG1lbnRFbGVtZW50LmggKi8sCisJCQkJN0M5
REJGRUExQTlDNDg5RjAwMEQ2QjI1IC8qIEhUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgKi8sCisJ
CQkJNTE5RkUwQTEwREFENDQ2RTAwQTA4RjIxIC8qIEhUTUxBdHRyaWJ1dGVOYW1lcy5pbiAqLywK
KwkJCQlFNDQ2MTM4RjBDRDYzMzEwMDBGQURBNzUgLyogSFRNTEF1ZGlvRWxlbWVudC5jcHAgKi8s
CisJCQkJRTQ0NjEzOTAwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxBdWRpb0VsZW1lbnQuaCAqLywK
KwkJCQlFNDQ2MTM5MTBDRDYzMzEwMDBGQURBNzUgLyogSFRNTEF1ZGlvRWxlbWVudC5pZGwgKi8s
CisJCQkJQTg3MURDMUUwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxCYXNlRWxlbWVudC5jcHAgKi8s
CisJCQkJQTg3MURDMTMwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxCYXNlRWxlbWVudC5oICovLAor
CQkJCUE4MEU3QUFGMEExOUQxRjEwMDdGQjhDNSAvKiBIVE1MQmFzZUVsZW1lbnQuaWRsICovLAor
CQkJCTBGMjZBN0E5MjA1NEMzQ0YwMDkwQTE0MSAvKiBIVE1MQkRJRWxlbWVudC5jcHAgKi8sCisJ
CQkJOUIyNERFOEMxNTE5NEI5NTAwQzU5QzI3IC8qIEhUTUxCRElFbGVtZW50LmggKi8sCisJCQkJ
N0M2NzcxMzIyNTI3REI2MDAwRkRFRjAwIC8qIEhUTUxCb2R5RWxlbWVudCtDb21wYXQuaWRsICov
LAorCQkJCUE4NzFERTFEMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MQm9keUVsZW1lbnQuY3BwICov
LAorCQkJCUE4NzFERTIwMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MQm9keUVsZW1lbnQuaCAqLywK
KwkJCQkxQUUyQTlGMjBBMUNEQTU3MDBCNDJCMjUgLyogSFRNTEJvZHlFbGVtZW50LmlkbCAqLywK
KwkJCQlBOENGRjc5RTBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTEJSRWxlbWVudC5jcHAgKi8sCisJ
CQkJQThDRkY3QTAwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxCUkVsZW1lbnQuaCAqLywKKwkJCQkx
QUUyQTlGMzBBMUNEQTU3MDBCNDJCMjUgLyogSFRNTEJSRWxlbWVudC5pZGwgKi8sCisJCQkJQTgx
MzY5QjcwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxCdXR0b25FbGVtZW50LmNwcCAqLywKKwkJCQlB
ODEzNjlCNjA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEJ1dHRvbkVsZW1lbnQuaCAqLywKKwkJCQlB
ODBFN0U1NTBBMUE3RkIzMDA3RkI4QzUgLyogSFRNTEJ1dHRvbkVsZW1lbnQuaWRsICovLAorCQkJ
CTUxRjZBM0Q1MDY2M0JGMDQwMDREMjkxOSAvKiBIVE1MQ2FudmFzRWxlbWVudC5jcHAgKi8sCisJ
CQkJNTFGNkEzRDYwNjYzQkYwNDAwNEQyOTE5IC8qIEhUTUxDYW52YXNFbGVtZW50LmggKi8sCisJ
CQkJOTM4RTY2MjUwOUYwOTk1NjAwOEE0OEVDIC8qIEhUTUxDYW52YXNFbGVtZW50LmlkbCAqLywK
KwkJCQlBOERGM0ZDOTA5N0ZBMEZCMDA1Mjk4MUIgLyogSFRNTENvbGxlY3Rpb24uY3BwICovLAor
CQkJCUE4REYzRkM4MDk3RkEwRkIwMDUyOTgxQiAvKiBIVE1MQ29sbGVjdGlvbi5oICovLAorCQkJ
CTg1REYyRjY5MEFBM0M3NDMwMEFENjRDNSAvKiBIVE1MQ29sbGVjdGlvbi5pZGwgKi8sCisJCQkJ
ODMxRDFGMjkxQzU2RUNBMDAwRjVGNkMwIC8qIEhUTUxEYXRhRWxlbWVudC5jcHAgKi8sCisJCQkJ
ODM0Qjg2QTcxQzU2RTgzQTAwRjNGMEUzIC8qIEhUTUxEYXRhRWxlbWVudC5oICovLAorCQkJCTgz
NEI4NkE2MUM1NkU4M0EwMEYzRjBFMyAvKiBIVE1MRGF0YUVsZW1lbnQuaWRsICovLAorCQkJCUY1
QzA0MUQ3MEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RFbGVtZW50LmNwcCAqLywKKwkJ
CQlGNUMwNDFEODBGRkNBN0NFMDA4MzlENEEgLyogSFRNTERhdGFMaXN0RWxlbWVudC5oICovLAor
CQkJCUY1QzA0MUQ5MEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RFbGVtZW50LmlkbCAq
LywKKwkJCQlEMzU5RDc4NjEyOUNBMjcxMDAwNkU1RDIgLyogSFRNTERldGFpbHNFbGVtZW50LmNw
cCAqLywKKwkJCQlEMzU5RDc4NzEyOUNBMjcxMDAwNkU1RDIgLyogSFRNTERldGFpbHNFbGVtZW50
LmggKi8sCisJCQkJRDM1OUQ3ODgxMjlDQTI3MTAwMDZFNUQyIC8qIEhUTUxEZXRhaWxzRWxlbWVu
dC5pZGwgKi8sCisJCQkJNUNGQjIwRDYyMkRFODMwNDAwRUQyQjc2IC8qIEhUTUxEaWFsb2dFbGVt
ZW50LmNwcCAqLywKKwkJCQk1Q0ZCMjBEOTIyREU4MzA2MDBFRDJCNzYgLyogSFRNTERpYWxvZ0Vs
ZW1lbnQuaCAqLywKKwkJCQk1Q0ZCMjBEODIyREU4MzA1MDBFRDJCNzYgLyogSFRNTERpYWxvZ0Vs
ZW1lbnQuaWRsICovLAorCQkJCUE4RUE3OUVEMEExOTE2REYwMEE4RUY1RiAvKiBIVE1MRGlyZWN0
b3J5RWxlbWVudC5jcHAgKi8sCisJCQkJQThFQTc5RUUwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxE
aXJlY3RvcnlFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRDkwQTFCMjNBNDAwRDhDODdDIC8qIEhU
TUxEaXJlY3RvcnlFbGVtZW50LmlkbCAqLywKKwkJCQlBOEVBN0NBMzBBMTkyQjlDMDBBOEVGNUYg
LyogSFRNTERpdkVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3Q0E5MEExOTJCOUMwMEE4RUY1RiAv
KiBIVE1MRGl2RWxlbWVudC5oICovLAorCQkJCTFBODVCMkFEMEExQjJBNkQwMEQ4Qzg3QyAvKiBI
VE1MRGl2RWxlbWVudC5pZGwgKi8sCisJCQkJQThFQTc5RTkwQTE5MTZERjAwQThFRjVGIC8qIEhU
TUxETGlzdEVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3OUVCMEExOTE2REYwMEE4RUY1RiAvKiBI
VE1MRExpc3RFbGVtZW50LmggKi8sCisJCQkJMUE4NUIxRDEwQTFCMjM1QjAwRDhDODdDIC8qIEhU
TUxETGlzdEVsZW1lbnQuaWRsICovLAorCQkJCUY1MjNEMjNCMDJERTQzOTYwMTg2MzVDQSAvKiBI
VE1MRG9jdW1lbnQuY3BwICovLAorCQkJCUY1MjNEMjNDMDJERTQzOTYwMTg2MzVDQSAvKiBIVE1M
RG9jdW1lbnQuaCAqLywKKwkJCQkxQTQ5NEUyOTBBMTIzNTQzMDBGREFGQzEgLyogSFRNTERvY3Vt
ZW50LmlkbCAqLywKKwkJCQk3QzY3NzEwOTI1MjZBNDU4MDBGREVGMDAgLyogSFRNTEVsZW1lbnQr
Q1NTT01WaWV3LmlkbCAqLywKKwkJCQlGNTIzRDIzRTAyREU0Mzk2MDE4NjM1Q0EgLyogSFRNTEVs
ZW1lbnQuY3BwICovLAorCQkJCUY1MjNEMjNGMDJERTQzOTYwMTg2MzVDQSAvKiBIVE1MRWxlbWVu
dC5oICovLAorCQkJCTFBNDk0QkJCMEExMjJEQ0QwMEZEQUZDMSAvKiBIVE1MRWxlbWVudC5pZGwg
Ki8sCisJCQkJQTg3MUQ0NTUwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxFbWJlZEVsZW1lbnQuY3Bw
ICovLAorCQkJCUE4NzFENDUyMEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MRW1iZWRFbGVtZW50Lmgg
Ki8sCisJCQkJODU5MTI4NzkwQUIyMjJFQzAwMjAyMjY1IC8qIEhUTUxFbWJlZEVsZW1lbnQuaWRs
ICovLAorCQkJCUE4MTM2OUI5MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MRmllbGRTZXRFbGVtZW50
LmNwcCAqLywKKwkJCQlBODEzNjlCODA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTEZpZWxkU2V0RWxl
bWVudC5oICovLAorCQkJCTFBRTJBOUY0MEExQ0RBNTcwMEI0MkIyNSAvKiBIVE1MRmllbGRTZXRF
bGVtZW50LmlkbCAqLywKKwkJCQlBOENGRjc5ODBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTEZvbnRF
bGVtZW50LmNwcCAqLywKKwkJCQlBOENGRjc5QzBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTEZvbnRF
bGVtZW50LmggKi8sCisJCQkJMUFFMkE5RjUwQTFDREE1NzAwQjQyQjI1IC8qIEhUTUxGb250RWxl
bWVudC5pZGwgKi8sCisJCQkJQTgxMzY5QjMwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQuY3BwICovLAorCQkJCUE4MTM2OUIyMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1M
Rm9ybUNvbnRyb2xFbGVtZW50LmggKi8sCisJCQkJRTE0RjFDNDIxNEI1REFDNjAwRUE5MDA5IC8q
IEhUTUxGb3JtQ29udHJvbEVsZW1lbnRXaXRoU3RhdGUuY3BwICovLAorCQkJCUUxNEYxQzQzMTRC
NURBQzYwMEVBOTAwOSAvKiBIVE1MRm9ybUNvbnRyb2xFbGVtZW50V2l0aFN0YXRlLmggKi8sCisJ
CQkJQThERjNGQzcwOTdGQTBGQjAwNTI5ODFCIC8qIEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0aW9u
LmNwcCAqLywKKwkJCQlBOERGM0ZDNjA5N0ZBMEZCMDA1Mjk4MUIgLyogSFRNTEZvcm1Db250cm9s
c0NvbGxlY3Rpb24uaCAqLywKKwkJCQk5QjFBQjA3OTE2NDhDNjlEMDA1MUYzRjIgLyogSFRNTEZv
cm1Db250cm9sc0NvbGxlY3Rpb24uaWRsICovLAorCQkJCUE4MTM2OUI1MDk3Mzc0RjUwMEQ3NDQ2
MyAvKiBIVE1MRm9ybUVsZW1lbnQuY3BwICovLAorCQkJCUE4MTM2OUI0MDk3Mzc0RjUwMEQ3NDQ2
MyAvKiBIVE1MRm9ybUVsZW1lbnQuaCAqLywKKwkJCQlBOEQwNjRFRjBBMjNCRkVBMDA1RTcyMDMg
LyogSFRNTEZvcm1FbGVtZW50LmlkbCAqLywKKwkJCQlBODcxREUxNzBBMTUyQUM4MDBCMTJBNjgg
LyogSFRNTEZyYW1lRWxlbWVudC5jcHAgKi8sCisJCQkJQTg3MURFMUYwQTE1MkFDODAwQjEyQTY4
IC8qIEhUTUxGcmFtZUVsZW1lbnQuaCAqLywKKwkJCQk4NTU1NDI5NTBBQTQ5Mzg4MDBCQTg5RjIg
LyogSFRNTEZyYW1lRWxlbWVudC5pZGwgKi8sCisJCQkJMTRGRkUzMUMwQUUxOTYzMzAwMTM2QkY1
IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmNwcCAqLywKKwkJCQkxNEZGRTMxQjBBRTE5NjMzMDAx
MzZCRjUgLyogSFRNTEZyYW1lRWxlbWVudEJhc2UuaCAqLywKKwkJCQk5M0UyNDI1RTBCMkI1MDk1
MDBDNzMyQTEgLyogSFRNTEZyYW1lT3duZXJFbGVtZW50LmNwcCAqLywKKwkJCQk5M0UyNDFGRTBC
MkI0RTQwMDBDNzMyQTEgLyogSFRNTEZyYW1lT3duZXJFbGVtZW50LmggKi8sCisJCQkJQTg3MURF
MjIwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxGcmFtZVNldEVsZW1lbnQuY3BwICovLAorCQkJCUE4
NzFERTFDMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MRnJhbWVTZXRFbGVtZW50LmggKi8sCisJCQkJ
ODU1NTQyOTYwQUE0OTM4ODAwQkE4OUYyIC8qIEhUTUxGcmFtZVNldEVsZW1lbnQuaWRsICovLAor
CQkJCUE4NzFERTE5MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSGVhZEVsZW1lbnQuY3BwICovLAor
CQkJCUE4NzFERTIxMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSGVhZEVsZW1lbnQuaCAqLywKKwkJ
CQlBODBFN0FCMTBBMTlEMUYxMDA3RkI4QzUgLyogSFRNTEhlYWRFbGVtZW50LmlkbCAqLywKKwkJ
CQlBOEVBN0NBMDBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTEhlYWRpbmdFbGVtZW50LmNwcCAqLywK
KwkJCQlBOEVBN0NBQTBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTEhlYWRpbmdFbGVtZW50LmggKi8s
CisJCQkJMUFFMkE5RjgwQTFDREE1NzAwQjQyQjI1IC8qIEhUTUxIZWFkaW5nRWxlbWVudC5pZGwg
Ki8sCisJCQkJQThFQTdDQTUwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxIUkVsZW1lbnQuY3BwICov
LAorCQkJCUE4RUE3Q0ExMEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MSFJFbGVtZW50LmggKi8sCisJ
CQkJMUFFMkE5RjkwQTFDREE1NzAwQjQyQjI1IC8qIEhUTUxIUkVsZW1lbnQuaWRsICovLAorCQkJ
CUE4NzFERTFBMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuY3BwICovLAorCQkJ
CUE4NzFERTFCMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuaCAqLywKKwkJCQkx
QTg1QjE3RDBBMUIxODM2MDBEOEM4N0MgLyogSFRNTEh0bWxFbGVtZW50LmlkbCAqLywKKwkJCQk4
MzI5RENDMjFDN0E2QUUzMDA3MzBCMzMgLyogSFRNTEh5cGVybGlua0VsZW1lbnRVdGlscy5pZGwg
Ki8sCisJCQkJQTg3MURFMTgwQTE1MkFDODAwQjEyQTY4IC8qIEhUTUxJRnJhbWVFbGVtZW50LmNw
cCAqLywKKwkJCQlBODcxREUxRTBBMTUyQUM4MDBCMTJBNjggLyogSFRNTElGcmFtZUVsZW1lbnQu
aCAqLywKKwkJCQk4NTU1NDI5NzBBQTQ5Mzg4MDBCQTg5RjIgLyogSFRNTElGcmFtZUVsZW1lbnQu
aWRsICovLAorCQkJCTdDNjc3MTJBMjUyN0Q1QzcwMEZERUYwMCAvKiBIVE1MSW1hZ2VFbGVtZW50
K0NTU09NVmlldy5pZGwgKi8sCisJCQkJQThFQTdEMjkwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxJ
bWFnZUVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3RDI1MEExOTM4NTUwMEE4RUY1RiAvKiBIVE1M
SW1hZ2VFbGVtZW50LmggKi8sCisJCQkJMUFFMkFBNzkwQTFDREM2MTAwQjQyQjI1IC8qIEhUTUxJ
bWFnZUVsZW1lbnQuaWRsICovLAorCQkJCUE4RUE3RDI4MEExOTM4NTUwMEE4RUY1RiAvKiBIVE1M
SW1hZ2VMb2FkZXIuY3BwICovLAorCQkJCUE4RUE3RDIzMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1M
SW1hZ2VMb2FkZXIuaCAqLywKKwkJCQlBODEzNjlCMTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTElu
cHV0RWxlbWVudC5jcHAgKi8sCisJCQkJQTgxMzY5QjAwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxJ
bnB1dEVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0UxNzBBMUE3Q0NCMDA3RkI4QzUgLyogSFRNTElu
cHV0RWxlbWVudC5pZGwgKi8sCisJCQkJQTgxMzY5QzkwOTczNzRGNjAwRDc0NDYzIC8qIEhUTUxL
ZXlnZW5FbGVtZW50LmNwcCAqLywKKwkJCQlBODEzNjlDODA5NzM3NEY1MDBENzQ0NjMgLyogSFRN
TEtleWdlbkVsZW1lbnQuaCAqLywKKwkJCQlBNjE0OEE3RjEyRTQxRUQxMDA0NEE3ODQgLyogSFRN
TEtleWdlbkVsZW1lbnQuaWRsICovLAorCQkJCUE4MTM2OUM3MDk3Mzc0RjUwMEQ3NDQ2MyAvKiBI
VE1MTGFiZWxFbGVtZW50LmNwcCAqLywKKwkJCQlBODEzNjlDNjA5NzM3NEY1MDBENzQ0NjMgLyog
SFRNTExhYmVsRWxlbWVudC5oICovLAorCQkJCTFBRTJBQUJFMEExQ0REODMwMEI0MkIyNSAvKiBI
VE1MTGFiZWxFbGVtZW50LmlkbCAqLywKKwkJCQlBODEzNjlDNTA5NzM3NEY1MDBENzQ0NjMgLyog
SFRNTExlZ2VuZEVsZW1lbnQuY3BwICovLAorCQkJCUE4MTM2OUM0MDk3Mzc0RjUwMEQ3NDQ2MyAv
KiBIVE1MTGVnZW5kRWxlbWVudC5oICovLAorCQkJCTFBRTJBQUNDMEExQ0REREIwMEI0MkIyNSAv
KiBIVE1MTGVnZW5kRWxlbWVudC5pZGwgKi8sCisJCQkJQThFQTc5RjAwQTE5MTZERjAwQThFRjVG
IC8qIEhUTUxMSUVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3OUVBMEExOTE2REYwMEE4RUY1RiAv
KiBIVE1MTElFbGVtZW50LmggKi8sCisJCQkJMUFFMkFBRTYwQTFDRTUyRTAwQjQyQjI1IC8qIEhU
TUxMSUVsZW1lbnQuaWRsICovLAorCQkJCUE4NzFEQzE1MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1M
TGlua0VsZW1lbnQuY3BwICovLAorCQkJCUE4NzFEQzE0MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1M
TGlua0VsZW1lbnQuaCAqLywKKwkJCQlBODBFN0FCMDBBMTlEMUYxMDA3RkI4QzUgLyogSFRNTExp
bmtFbGVtZW50LmlkbCAqLywKKwkJCQlBOEVBN0QyQTBBMTkzODU1MDBBOEVGNUYgLyogSFRNTE1h
cEVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3RDI0MEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MTWFw
RWxlbWVudC5oICovLAorCQkJCTFBRTJBQUY3MEExQ0U1ODYwMEI0MkIyNSAvKiBIVE1MTWFwRWxl
bWVudC5pZGwgKi8sCisJCQkJQThFQTdDOUUwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxNYXJxdWVl
RWxlbWVudC5jcHAgKi8sCisJCQkJQThFQTdDOUQwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxNYXJx
dWVlRWxlbWVudC5oICovLAorCQkJCUJDNDkxQjRFMEMwMjNFMkQwMDlENjMxNiAvKiBIVE1MTWFy
cXVlZUVsZW1lbnQuaWRsICovLAorCQkJCTQxRDZCRDk4MjUxQjNBREEwMDU1QTdCNyAvKiBIVE1M
TWVkaWFFbGVtZW50K0F1ZGlvT3V0cHV0LmlkbCAqLywKKwkJCQlFNDQ2MTM5MjBDRDYzMzEwMDBG
QURBNzUgLyogSFRNTE1lZGlhRWxlbWVudC5jcHAgKi8sCisJCQkJRTQ0NjEzOTMwQ0Q2MzMxMDAw
RkFEQTc1IC8qIEhUTUxNZWRpYUVsZW1lbnQuaCAqLywKKwkJCQlFNDQ2MTM5NDBDRDYzMzEwMDBG
QURBNzUgLyogSFRNTE1lZGlhRWxlbWVudC5pZGwgKi8sCisJCQkJQ0Q1MjA5RTUxQjBCRDlFMTAw
NzcxODRFIC8qIEhUTUxNZWRpYUVsZW1lbnRFbnVtcy5oICovLAorCQkJCUE4RUE3OUVDMEExOTE2
REYwMEE4RUY1RiAvKiBIVE1MTWVudUVsZW1lbnQuY3BwICovLAorCQkJCUE4RUE3OUU4MEExOTE2
REYwMEE4RUY1RiAvKiBIVE1MTWVudUVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUU0MzBBMUQyNjlF
MDBCNDJCMjUgLyogSFRNTE1lbnVFbGVtZW50LmlkbCAqLywKKwkJCQkyRjMxRTA3MzFGQTNCMzND
MDBFMDU5QkEgLyogSFRNTE1lbnVJdGVtRWxlbWVudC5jcHAgKi8sCisJCQkJMkYzMUUwNzExRkEz
QjMzQjAwRTA1OUJBIC8qIEhUTUxNZW51SXRlbUVsZW1lbnQuaCAqLywKKwkJCQkyRjMxRTA3NjFG
QTNDMTBCMDBFMDU5QkEgLyogSFRNTE1lbnVJdGVtRWxlbWVudC5pZGwgKi8sCisJCQkJQTg3MURD
MUIwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxNZXRhRWxlbWVudC5jcHAgKi8sCisJCQkJQTg3MURD
MTgwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxNZXRhRWxlbWVudC5oICovLAorCQkJCUE4MEU3OUZD
MEExOUMzMDcwMDdGQjhDNSAvKiBIVE1MTWV0YUVsZW1lbnQuaWRsICovLAorCQkJCUE0NTQ0MjQ4
MTE5QjM2NjEwMDlCRTkxMiAvKiBIVE1MTWV0ZXJFbGVtZW50LmNwcCAqLywKKwkJCQlBNDU0NDI0
OTExOUIzNjYxMDA5QkU5MTIgLyogSFRNTE1ldGVyRWxlbWVudC5oICovLAorCQkJCUE3MUE3MEM5
MTFBRkIwMjAwMDk4OUQ2RCAvKiBIVE1MTWV0ZXJFbGVtZW50LmlkbCAqLywKKwkJCQlBOENGRjc5
RjBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTE1vZEVsZW1lbnQuY3BwICovLAorCQkJCUE4Q0ZGNzlE
MEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MTW9kRWxlbWVudC5oICovLAorCQkJCTFBRTJBQjA3MEEx
Q0U1Q0YwMEI0MkIyNSAvKiBIVE1MTW9kRWxlbWVudC5pZGwgKi8sCisJCQkJQThERjNGQ0QwOTdG
QTBGQjAwNTI5ODFCIC8qIEhUTUxOYW1lQ29sbGVjdGlvbi5jcHAgKi8sCisJCQkJQThERjNGQ0Mw
OTdGQTBGQjAwNTI5ODFCIC8qIEhUTUxOYW1lQ29sbGVjdGlvbi5oICovLAorCQkJCUE4NzFENDUx
MEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MT2JqZWN0RWxlbWVudC5jcHAgKi8sCisJCQkJQTg3MUQ0
NTAwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxPYmplY3RFbGVtZW50LmggKi8sCisJCQkJODU1NTQy
OTgwQUE0OTM4ODAwQkE4OUYyIC8qIEhUTUxPYmplY3RFbGVtZW50LmlkbCAqLywKKwkJCQlBOEVB
NzlFRjBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTE9MaXN0RWxlbWVudC5jcHAgKi8sCisJCQkJQThF
QTc5RTUwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxPTGlzdEVsZW1lbnQuaCAqLywKKwkJCQkxQTg1
QjFDQjBBMUIyMkRDMDBEOEM4N0MgLyogSFRNTE9MaXN0RWxlbWVudC5pZGwgKi8sCisJCQkJQTgx
MzY5QzMwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxPcHRHcm91cEVsZW1lbnQuY3BwICovLAorCQkJ
CUE4MTM2OUMyMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0R3JvdXBFbGVtZW50LmggKi8sCisJ
CQkJQTgwRTdFMTkwQTFBN0NDQjAwN0ZCOEM1IC8qIEhUTUxPcHRHcm91cEVsZW1lbnQuaWRsICov
LAorCQkJCUE4MTM2OUMxMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1MT3B0aW9uRWxlbWVudC5jcHAg
Ki8sCisJCQkJQTgxMzY5QzAwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxPcHRpb25FbGVtZW50Lmgg
Ki8sCisJCQkJQTgwRTdFMTgwQTFBN0NDQjAwN0ZCOEM1IC8qIEhUTUxPcHRpb25FbGVtZW50Lmlk
bCAqLywKKwkJCQk5MzI3QTk0MTA5OTY4RDFBMDA2OEE1NDYgLyogSFRNTE9wdGlvbnNDb2xsZWN0
aW9uLmNwcCAqLywKKwkJCQlBODEzNjlCRTA5NzM3NEY1MDBENzQ0NjMgLyogSFRNTE9wdGlvbnND
b2xsZWN0aW9uLmggKi8sCisJCQkJODVERjJGOTIwQUEzQzlCNjAwQUQ2NEM1IC8qIEhUTUxPcHRp
b25zQ29sbGVjdGlvbi5pZGwgKi8sCisJCQkJQUFDQzgzRDYyMzE2NTY5RTAwRUI2QkY1IC8qIEhU
TUxPckZvcmVpZ25FbGVtZW50LmlkbCAqLywKKwkJCQk0QUQwMTAwNTEyN0U2NDJBMDAxNTAzNUYg
LyogSFRNTE91dHB1dEVsZW1lbnQuY3BwICovLAorCQkJCTRBRDAxMDA2MTI3RTY0MkEwMDE1MDM1
RiAvKiBIVE1MT3V0cHV0RWxlbWVudC5oICovLAorCQkJCTRBRDAxMDA3MTI3RTY0MkEwMDE1MDM1
RiAvKiBIVE1MT3V0cHV0RWxlbWVudC5pZGwgKi8sCisJCQkJQThFQTdDQTQwQTE5MkI5QzAwQThF
RjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmNwcCAqLywKKwkJCQlBOEVBN0NBNzBBMTkyQjlD
MDBBOEVGNUYgLyogSFRNTFBhcmFncmFwaEVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUI2MTBBMUNF
N0NBMDBCNDJCMjUgLyogSFRNTFBhcmFncmFwaEVsZW1lbnQuaWRsICovLAorCQkJCUE4NzFENDRG
MEExMjdDQkMwMEIxMkE2OCAvKiBIVE1MUGFyYW1FbGVtZW50LmNwcCAqLywKKwkJCQlBODcxRDQ0
RTBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oICovLAorCQkJCTFBRTJBQjcy
MEExQ0U4MTUwMEI0MkIyNSAvKiBIVE1MUGFyYW1FbGVtZW50LmlkbCAqLywKKwkJCQlCQ0MwRTg3
MzFCRkU3MEU5MDA4RjdGNTAgLyogSFRNTFBpY3R1cmVFbGVtZW50LmNwcCAqLywKKwkJCQlCQ0Mw
RTg3NDFCRkU3MEU5MDA4RjdGNTAgLyogSFRNTFBpY3R1cmVFbGVtZW50LmggKi8sCisJCQkJQkM4
MDhCMTExQzBFMjNBQzAwNjZGRDZCIC8qIEhUTUxQaWN0dXJlRWxlbWVudC5pZGwgKi8sCisJCQkJ
QTg3MUQ0NEQwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxQbHVnSW5FbGVtZW50LmNwcCAqLywKKwkJ
CQlBODcxRDQ0QzBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCAqLywKKwkJ
CQk0NDE1MjkyRDBFMUFFOEEwMDBDNEEyRDAgLyogSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAg
Ki8sCisJCQkJNDQxNTI5MkMwRTFBRThBMDAwQzRBMkQwIC8qIEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQuaCAqLywKKwkJCQlBOEVBN0M5RjBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTFByZUVsZW1lbnQu
Y3BwICovLAorCQkJCUE4RUE3Q0EyMEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MUHJlRWxlbWVudC5o
ICovLAorCQkJCTFBRTJBQjg1MEExQ0U4NTAwMEI0MkIyNSAvKiBIVE1MUHJlRWxlbWVudC5pZGwg
Ki8sCisJCQkJQTQzQkY1OTYxMTQ5MjkwQTAwQzY0M0NBIC8qIEhUTUxQcm9ncmVzc0VsZW1lbnQu
Y3BwICovLAorCQkJCUE0M0JGNTk3MTE0OTI5MEEwMEM2NDNDQSAvKiBIVE1MUHJvZ3Jlc3NFbGVt
ZW50LmggKi8sCisJCQkJQTQyMjZFQTUxMTYzRDg0RDAwOEI4Mzk3IC8qIEhUTUxQcm9ncmVzc0Vs
ZW1lbnQuaWRsICovLAorCQkJCUE4Q0ZGNzlCMEExNTY5NzgwMDBBNDIzNCAvKiBIVE1MUXVvdGVF
bGVtZW50LmNwcCAqLywKKwkJCQlBOENGRjc5OTBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTFF1b3Rl
RWxlbWVudC5oICovLAorCQkJCTFBRTJBRUEzMEExRDI4RTgwMEI0MkIyNSAvKiBIVE1MUXVvdGVF
bGVtZW50LmlkbCAqLywKKwkJCQlBODcxREMxNjBBMTUyMDU3MDBCMTJBNjggLyogSFRNTFNjcmlw
dEVsZW1lbnQuY3BwICovLAorCQkJCUE4NzFEQzE5MEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MU2Ny
aXB0RWxlbWVudC5oICovLAorCQkJCTFBRTJBQjk2MEExQ0U4OEQwMEI0MkIyNSAvKiBIVE1MU2Ny
aXB0RWxlbWVudC5pZGwgKi8sCisJCQkJQTgxMzY5QkQwOTczNzRGNTAwRDc0NDYzIC8qIEhUTUxT
ZWxlY3RFbGVtZW50LmNwcCAqLywKKwkJCQlBODEzNjlCQzA5NzM3NEY1MDBENzQ0NjMgLyogSFRN
TFNlbGVjdEVsZW1lbnQuaCAqLywKKwkJCQk4NTU1NDI5OTBBQTQ5Mzg4MDBCQTg5RjIgLyogSFRN
TFNlbGVjdEVsZW1lbnQuaWRsICovLAorCQkJCTlCNjlEM0IyMUI5OEZGRTkwMEUzNTEyQiAvKiBI
VE1MU2xvdEVsZW1lbnQuY3BwICovLAorCQkJCTlCNjlEM0IzMUI5OEZGRTkwMEUzNTEyQiAvKiBI
VE1MU2xvdEVsZW1lbnQuaCAqLywKKwkJCQk5QjY5RDNCMTFCOThGRjBBMDBFMzUxMkIgLyogSFRN
TFNsb3RFbGVtZW50LmlkbCAqLywKKwkJCQlFNDQ2MTM5NTBDRDYzMzEwMDBGQURBNzUgLyogSFRN
TFNvdXJjZUVsZW1lbnQuY3BwICovLAorCQkJCUU0NDYxMzk2MENENjMzMTAwMEZBREE3NSAvKiBI
VE1MU291cmNlRWxlbWVudC5oICovLAorCQkJCUU0NDYxMzk3MENENjMzMTAwMEZBREE3NSAvKiBI
VE1MU291cmNlRWxlbWVudC5pZGwgKi8sCisJCQkJOTc4QUQ2NzExNDEzMEE4RDAwQzdDQUUzIC8q
IEhUTUxTcGFuRWxlbWVudC5jcHAgKi8sCisJCQkJOTc4QUQ2NzIxNDEzMEE4RDAwQzdDQUUzIC8q
IEhUTUxTcGFuRWxlbWVudC5oICovLAorCQkJCTk3OEFENjczMTQxMzBBOEQwMEM3Q0FFMyAvKiBI
VE1MU3BhbkVsZW1lbnQuaWRsICovLAorCQkJCUE4NzFEQzFBMEExNTIwNTcwMEIxMkE2OCAvKiBI
VE1MU3R5bGVFbGVtZW50LmNwcCAqLywKKwkJCQlBODcxREMxNzBBMTUyMDU3MDBCMTJBNjggLyog
SFRNTFN0eWxlRWxlbWVudC5oICovLAorCQkJCUE4MEU3QUIyMEExOUQxRjEwMDdGQjhDNSAvKiBI
VE1MU3R5bGVFbGVtZW50LmlkbCAqLywKKwkJCQlEM0Q0RTk3MDEzMEM3Q0ZFMDA3QkE1NDAgLyog
SFRNTFN1bW1hcnlFbGVtZW50LmNwcCAqLywKKwkJCQlEM0Q0RTk3MTEzMEM3Q0ZFMDA3QkE1NDAg
LyogSFRNTFN1bW1hcnlFbGVtZW50LmggKi8sCisJCQkJQTg3MURCMjQwQTE1MEJENjAwQjEyQTY4
IC8qIEhUTUxUYWJsZUNhcHRpb25FbGVtZW50LmNwcCAqLywKKwkJCQlBODcxREIxRDBBMTUwQkQ2
MDBCMTJBNjggLyogSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuaCAqLywKKwkJCQk4NTU1NDI1NzBB
QTQ4QjFFMDBCQTg5RjIgLyogSFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuaWRsICovLAorCQkJCUE4
NzFEQjIwMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFibGVDZWxsRWxlbWVudC5jcHAgKi8sCisJ
CQkJQTg3MURCMUMwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUNlbGxFbGVtZW50LmggKi8s
CisJCQkJODU1NTQyNTgwQUE0OEIxRTAwQkE4OUYyIC8qIEhUTUxUYWJsZUNlbGxFbGVtZW50Lmlk
bCAqLywKKwkJCQlBODcxREIxQjBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlQ29sRWxlbWVu
dC5jcHAgKi8sCisJCQkJQTg3MURCMjEwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUNvbEVs
ZW1lbnQuaCAqLywKKwkJCQk4NTU1NDI1OTBBQTQ4QjFFMDBCQTg5RjIgLyogSFRNTFRhYmxlQ29s
RWxlbWVudC5pZGwgKi8sCisJCQkJQTg3MURCMUEwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJs
ZUVsZW1lbnQuY3BwICovLAorCQkJCUE4NzFEQjE5MEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFi
bGVFbGVtZW50LmggKi8sCisJCQkJODU1NTQyNUEwQUE0OEIxRTAwQkE4OUYyIC8qIEhUTUxUYWJs
ZUVsZW1lbnQuaWRsICovLAorCQkJCUE4NzFEQjFGMEExNTBCRDYwMEIxMkE2OCAvKiBIVE1MVGFi
bGVQYXJ0RWxlbWVudC5jcHAgKi8sCisJCQkJQTg3MURCMUUwQTE1MEJENjAwQjEyQTY4IC8qIEhU
TUxUYWJsZVBhcnRFbGVtZW50LmggKi8sCisJCQkJQTg3MURCMjIwQTE1MEJENjAwQjEyQTY4IC8q
IEhUTUxUYWJsZVJvd0VsZW1lbnQuY3BwICovLAorCQkJCUE4NzFEQjIzMEExNTBCRDYwMEIxMkE2
OCAvKiBIVE1MVGFibGVSb3dFbGVtZW50LmggKi8sCisJCQkJODU1NTQyNUIwQUE0OEIxRTAwQkE4
OUYyIC8qIEhUTUxUYWJsZVJvd0VsZW1lbnQuaWRsICovLAorCQkJCTkzNDQyQzlGMEQyQjMzNjAw
MDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5jcHAgKi8sCisJCQkJOTM0NDJDOUQw
RDJCMzM1QzAwMzM4RkY5IC8qIEhUTUxUYWJsZVJvd3NDb2xsZWN0aW9uLmggKi8sCisJCQkJQTg3
MURCMTgwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmNwcCAqLywK
KwkJCQlBODcxREIxNzBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlU2VjdGlvbkVsZW1lbnQu
aCAqLywKKwkJCQk4NTU1NDI1QzBBQTQ4QjFFMDBCQTg5RjIgLyogSFRNTFRhYmxlU2VjdGlvbkVs
ZW1lbnQuaWRsICovLAorCQkJCTUxOUZFMEEyMERBRDQ0NkUwMEEwOEYyMSAvKiBIVE1MVGFnTmFt
ZXMuaW4gKi8sCisJCQkJRDZFRkMwQkIxNjY2REY3QTAwM0QyOTFFIC8qIEhUTUxUZW1wbGF0ZUVs
ZW1lbnQuY3BwICovLAorCQkJCUQ2RUZDMEJDMTY2NkRGN0EwMDNEMjkxRSAvKiBIVE1MVGVtcGxh
dGVFbGVtZW50LmggKi8sCisJCQkJRDZFRkMwQkQxNjY2REY3QTAwM0QyOTFFIC8qIEhUTUxUZW1w
bGF0ZUVsZW1lbnQuaWRsICovLAorCQkJCUE4MTM2OUJCMDk3Mzc0RjUwMEQ3NDQ2MyAvKiBIVE1M
VGV4dEFyZWFFbGVtZW50LmNwcCAqLywKKwkJCQlBODEzNjlCQTA5NzM3NEY1MDBENzQ0NjMgLyog
SFRNTFRleHRBcmVhRWxlbWVudC5oICovLAorCQkJCUE4MEU3RTE2MEExQTdDQ0IwMDdGQjhDNSAv
KiBIVE1MVGV4dEFyZWFFbGVtZW50LmlkbCAqLywKKwkJCQk5QkM2QzIxQTEzQ0NDOTdCMDA4RTAz
MzcgLyogSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuY3BwICovLAorCQkJCTlCQzZDMjE5MTND
Q0M5N0IwMDhFMDMzNyAvKiBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5oICovLAorCQkJCTgz
MDUxOTkyMUJCMEYwRTcwMEYzNzcyRSAvKiBIVE1MVGltZUVsZW1lbnQuY3BwICovLAorCQkJCTgz
MDUxOTkzMUJCMEYwRTcwMEYzNzcyRSAvKiBIVE1MVGltZUVsZW1lbnQuaCAqLywKKwkJCQk4MzA1
MTk5NDFCQjBGMEU3MDBGMzc3MkUgLyogSFRNTFRpbWVFbGVtZW50LmlkbCAqLywKKwkJCQlBODcx
REMxRDBBMTUyMDU3MDBCMTJBNjggLyogSFRNTFRpdGxlRWxlbWVudC5jcHAgKi8sCisJCQkJQTg3
MURDMUMwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxUaXRsZUVsZW1lbnQuaCAqLywKKwkJCQlBODBF
N0FBRTBBMTlEMUYxMDA3RkI4QzUgLyogSFRNTFRpdGxlRWxlbWVudC5pZGwgKi8sCisJCQkJMDcw
NzU2ODgxNDIyNjJENjAwNDE0MTYxIC8qIEhUTUxUcmFja0VsZW1lbnQuY3BwICovLAorCQkJCTA3
MDc1Njg5MTQyMjYyRDYwMDQxNDE2MSAvKiBIVE1MVHJhY2tFbGVtZW50LmggKi8sCisJCQkJMDcw
NzU2OEExNDIyNjJENjAwNDE0MTYxIC8qIEhUTUxUcmFja0VsZW1lbnQuaWRsICovLAorCQkJCUE4
RUE3OUU3MEExOTE2REYwMEE4RUY1RiAvKiBIVE1MVUxpc3RFbGVtZW50LmNwcCAqLywKKwkJCQlB
OEVBNzlFNjBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTFVMaXN0RWxlbWVudC5oICovLAorCQkJCTFB
ODVCMUQ1MEExQjIzNkMwMEQ4Qzg3QyAvKiBIVE1MVUxpc3RFbGVtZW50LmlkbCAqLywKKwkJCQkw
RjI2QTdBQTIwNTRFQzVBMDA5MEExNDEgLyogSFRNTFVua25vd25FbGVtZW50LmNwcCAqLywKKwkJ
CQlBRDQ5OTE0MTE4RjA4MTUxMDBCRjAwOTIgLyogSFRNTFVua25vd25FbGVtZW50LmggKi8sCisJ
CQkJQUQ0OTkxNDIxOEYwODE1MTAwQkYwMDkyIC8qIEhUTUxVbmtub3duRWxlbWVudC5pZGwgKi8s
CisJCQkJRTQ0NjEzOTgwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxWaWRlb0VsZW1lbnQuY3BwICov
LAorCQkJCUU0NDYxMzk5MENENjMzMTAwMEZBREE3NSAvKiBIVE1MVmlkZW9FbGVtZW50LmggKi8s
CisJCQkJRTQ0NjEzOUEwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxWaWRlb0VsZW1lbnQuaWRsICov
LAorCQkJCTgzOUFBRkVBMUEwQzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5jcHAgKi8s
CisJCQkJODM5QUFGRUIxQTBDMEM4RDAwNjA1Rjk5IC8qIEhUTUxXQlJFbGVtZW50LmggKi8sCisJ
CQkJMzFEMjZCQzIxRjg2RDE4QzAwOEZGMjU1IC8qIEltYWdlQml0bWFwLmNwcCAqLywKKwkJCQkz
MUQyNkJCRjFGODZEMTg5MDA4RkYyNTUgLyogSW1hZ2VCaXRtYXAuaCAqLywKKwkJCQkzMUQyNkJD
MTFGODZEMThCMDA4RkYyNTUgLyogSW1hZ2VCaXRtYXAuaWRsICovLAorCQkJCTcyMUI0OTZGMjUx
MkFDMDQwMEZFOUQzQiAvKiBJbWFnZUJpdG1hcEJhY2tpbmcuY3BwICovLAorCQkJCTcyMUI0OTcw
MjUxMkFDMDQwMEZFOUQzQiAvKiBJbWFnZUJpdG1hcEJhY2tpbmcuaCAqLywKKwkJCQkzMUQyNkJD
MDFGODZEMThBMDA4RkYyNTUgLyogSW1hZ2VCaXRtYXBPcHRpb25zLmggKi8sCisJCQkJMzFEMjZC
QkQxRjg2RDE4NzAwOEZGMjU1IC8qIEltYWdlQml0bWFwT3B0aW9ucy5pZGwgKi8sCisJCQkJQTc3
OTc5MTMwRDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5jcHAgKi8sCisJCQkJQTc3OTc5MTQw
RDZCOUQwQzAwMzg1MUI5IC8qIEltYWdlRGF0YS5oICovLAorCQkJCUE3Nzk3OTE1MEQ2QjlEMEMw
MDM4NTFCOSAvKiBJbWFnZURhdGEuaWRsICovLAorCQkJCUJDQTA4OEYyMjY0RTFCRjkwMDNFMkE2
QyAvKiBJbWFnZURhdGFTZXR0aW5ncy5oICovLAorCQkJCUJDQTA4OEY0MjY0RTFCRjkwMDNFMkE2
QyAvKiBJbWFnZURhdGFTZXR0aW5ncy5pZGwgKi8sCisJCQkJOTcyMDVBQjExMjM5MjkxMDAwQjE3
MzgwIC8qIEltYWdlRG9jdW1lbnQuY3BwICovLAorCQkJCTk3MjA1QUIyMTIzOTI5MTAwMEIxNzM4
MCAvKiBJbWFnZURvY3VtZW50LmggKi8sCisJCQkJRjU1QjNEOEQxMjUxRjEyRDAwM0VGMjY5IC8q
IEltYWdlSW5wdXRUeXBlLmNwcCAqLywKKwkJCQlGNTVCM0Q4RTEyNTFGMTJEMDAzRUYyNjkgLyog
SW1hZ2VJbnB1dFR5cGUuaCAqLywKKwkJCQlFNTJFRkRGMzIxMTI4NzVBMDBBRDI4MkEgLyogSW5w
dXRNb2RlLmNwcCAqLywKKwkJCQlFNTJFRkRGMjIxMTI4NzVBMDBBRDI4MkEgLyogSW5wdXRNb2Rl
LmggKi8sCisJCQkJMzdFMzUyNEExMjQ1MEM1MjAwQkFGNUQ5IC8qIElucHV0VHlwZS5jcHAgKi8s
CisJCQkJMzdFMzUyNEMxMjQ1MEM2NjAwQkFGNUQ5IC8qIElucHV0VHlwZS5oICovLAorCQkJCUMz
NDg2MTIxMTVGREUyMUUwMDdBMUNDOSAvKiBJbnB1dFR5cGVOYW1lcy5jcHAgKi8sCisJCQkJQzM0
ODYxMjIxNUZERTIxRTAwN0ExQ0M5IC8qIElucHV0VHlwZU5hbWVzLmggKi8sCisJCQkJNDUwQ0VC
RUUxNTA3M0JCRTAwMkJCMTQ5IC8qIExhYmVsYWJsZUVsZW1lbnQuY3BwICovLAorCQkJCTQ1MENF
QkVGMTUwNzNCQkUwMDJCQjE0OSAvKiBMYWJlbGFibGVFbGVtZW50LmggKi8sCisJCQkJQTQ1NkZB
MjQxMUFENEE4MzAwMjBCNDIwIC8qIExhYmVsc05vZGVMaXN0LmNwcCAqLywKKwkJCQlBNDU2RkEy
NTExQUQ0QTgzMDAyMEI0MjAgLyogTGFiZWxzTm9kZUxpc3QuaCAqLywKKwkJCQk0NDM3QzRBOTI0
RTJBRTVGMDAwOTUxMjggLyogTGF6eUxvYWRGcmFtZU9ic2VydmVyLmNwcCAqLywKKwkJCQk0NDM3
QzRBNzI0RTJBRTVGMDAwOTUxMjggLyogTGF6eUxvYWRGcmFtZU9ic2VydmVyLmggKi8sCisJCQkJ
QUFEOUQwQjEyMURGQTgwQzAwMUIxMUM3IC8qIExhenlMb2FkSW1hZ2VPYnNlcnZlci5jcHAgKi8s
CisJCQkJQUFEOUQwQjMyMURGQTgwRTAwMUIxMUM3IC8qIExhenlMb2FkSW1hZ2VPYnNlcnZlci5o
ICovLAorCQkJCTFBNERBNDFGMUNERDNBODMwMEY0NDczQyAvKiBMaW5rSWNvbkNvbGxlY3Rvci5j
cHAgKi8sCisJCQkJMUE0REE0MjAxQ0REM0E4MzAwRjQ0NzNDIC8qIExpbmtJY29uQ29sbGVjdG9y
LmggKi8sCisJCQkJMUEyNTBFMEMxQ0RENjMyMDAwRDBCRTYzIC8qIExpbmtJY29uVHlwZS5oICov
LAorCQkJCTk4NUJCOTZCMTNBOTQwNTgwMDdBMEI2OSAvKiBMaW5rUmVsQXR0cmlidXRlLmNwcCAq
LywKKwkJCQk5ODVCQjk2QzEzQTk0MDU4MDA3QTBCNjkgLyogTGlua1JlbEF0dHJpYnV0ZS5oICov
LAorCQkJCUNEMjdGNkU2MTQ1NzcwRDMwMDc4MjA3RCAvKiBNZWRpYUNvbnRyb2xsZXIuY3BwICov
LAorCQkJCUNEMjdGNkU0MTQ1NzY3ODcwMDc4MjA3RCAvKiBNZWRpYUNvbnRyb2xsZXIuaCAqLywK
KwkJCQlDRDI3RjZFMDE0NTc1QzFCMDA3ODIwN0QgLyogTWVkaWFDb250cm9sbGVyLmlkbCAqLywK
KwkJCQlDREY2NUNDOTE0NUI0M0E3MDBDNEM3QUEgLyogTWVkaWFDb250cm9sbGVySW50ZXJmYWNl
LmggKi8sCisJCQkJOTcyMDVBQjMxMjM5MjkxMDAwQjE3MzgwIC8qIE1lZGlhRG9jdW1lbnQuY3Bw
ICovLAorCQkJCTk3MjA1QUI0MTIzOTI5MTAwMEIxNzM4MCAvKiBNZWRpYURvY3VtZW50LmggKi8s
CisJCQkJMDdGRTk5REExODgwN0E3RDAwMjU2NjQ4IC8qIE1lZGlhRWxlbWVudFNlc3Npb24uY3Bw
ICovLAorCQkJCTA3RkU5OURCMTg4MDdBN0QwMDI1NjY0OCAvKiBNZWRpYUVsZW1lbnRTZXNzaW9u
LmggKi8sCisJCQkJMkQ5QkY3MDExREJGQkIyNDAwN0E3RDk5IC8qIE1lZGlhRW5jcnlwdGVkRXZl
bnQuY3BwICovLAorCQkJCTJEOUJGNzAyMURCRkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5cHRl
ZEV2ZW50LmggKi8sCisJCQkJMkQ5QkY3MDMxREJGQkIyNDAwN0E3RDk5IC8qIE1lZGlhRW5jcnlw
dGVkRXZlbnQuaWRsICovLAorCQkJCTJEOUJGNzA0MURCRkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVu
Y3J5cHRlZEV2ZW50SW5pdC5oICovLAorCQkJCUU0NDYxMzlCMENENjMzMTAwMEZBREE3NSAvKiBN
ZWRpYUVycm9yLmggKi8sCisJCQkJRTQ0NjEzOUMwQ0Q2MzMxMDAwRkFEQTc1IC8qIE1lZGlhRXJy
b3IuaWRsICovLAorCQkJCTA3QTZEMUU5MTQ5MTEzNzcwMDA1MUQwQyAvKiBNZWRpYUZyYWdtZW50
VVJJUGFyc2VyLmNwcCAqLywKKwkJCQkwN0E2RDFFQTE0OTExMzc3MDAwNTFEMEMgLyogTWVkaWFG
cmFnbWVudFVSSVBhcnNlci5oICovLAorCQkJCUY1NUIzRDkxMTI1MUYxMkQwMDNFRjI2OSAvKiBN
b250aElucHV0VHlwZS5jcHAgKi8sCisJCQkJRjU1QjNEOTIxMjUxRjEyRDAwM0VGMjY5IC8qIE1v
bnRoSW5wdXRUeXBlLmggKi8sCisJCQkJRjU1QjNEOTMxMjUxRjEyRDAwM0VGMjY5IC8qIE51bWJl
cklucHV0VHlwZS5jcHAgKi8sCisJCQkJRjU1QjNEOTQxMjUxRjEyRDAwM0VGMjY5IC8qIE51bWJl
cklucHV0VHlwZS5oICovLAorCQkJCTMxNDg3N0UwMUZBQThGRTkwMEMwNTc1OSAvKiBPZmZzY3Jl
ZW5DYW52YXMuY3BwICovLAorCQkJCTMxNDg3N0UxMUZBQThGRTkwMEMwNTc1OSAvKiBPZmZzY3Jl
ZW5DYW52YXMuaCAqLywKKwkJCQkzMTQ4NzdEOTFGQUE4NzA2MDBDMDU3NTkgLyogT2Zmc2NyZWVu
Q2FudmFzLmlkbCAqLywKKwkJCQlGNTVCM0Q5NTEyNTFGMTJEMDAzRUYyNjkgLyogUGFzc3dvcmRJ
bnB1dFR5cGUuY3BwICovLAorCQkJCUY1NUIzRDk2MTI1MUYxMkQwMDNFRjI2OSAvKiBQYXNzd29y
ZElucHV0VHlwZS5oICovLAorCQkJCTk3MjA1QUI5MTIzOTI5MjcwMEIxNzM4MCAvKiBQbHVnaW5E
b2N1bWVudC5jcHAgKi8sCisJCQkJOTcyMDVBQkExMjM5MjkyNzAwQjE3MzgwIC8qIFBsdWdpbkRv
Y3VtZW50LmggKi8sCisJCQkJQ0RFRTM5MzYxNzk3NDI1OTAwMUQ3NTgwIC8qIFB1YmxpY1VSTE1h
bmFnZXIuY3BwICovLAorCQkJCTEwRkIwODRBMTRFMTVDN0UwMEEzREI5OCAvKiBQdWJsaWNVUkxN
YW5hZ2VyLmggKi8sCisJCQkJRjU1QjNEOTcxMjUxRjEyRDAwM0VGMjY5IC8qIFJhZGlvSW5wdXRU
eXBlLmNwcCAqLywKKwkJCQlGNTVCM0Q5ODEyNTFGMTJEMDAzRUYyNjkgLyogUmFkaW9JbnB1dFR5
cGUuaCAqLywKKwkJCQlCNjU4RkZBMzE1MjJFRkFBMDBERDU1OTUgLyogUmFkaW9Ob2RlTGlzdC5j
cHAgKi8sCisJCQkJQjY1OEZGQTQxNTIyRUZBQTAwREQ1NTk1IC8qIFJhZGlvTm9kZUxpc3QuaCAq
LywKKwkJCQk5MzgxQjk0MTIzRjlCMEUwMDA3MTE4QjQgLyogUmFkaW9Ob2RlTGlzdC5pZGwgKi8s
CisJCQkJRjU1QjNEOTkxMjUxRjEyRDAwM0VGMjY5IC8qIFJhbmdlSW5wdXRUeXBlLmNwcCAqLywK
KwkJCQlGNTVCM0Q5QTEyNTFGMTJEMDAzRUYyNjkgLyogUmFuZ2VJbnB1dFR5cGUuaCAqLywKKwkJ
CQlGNTVCM0Q5QjEyNTFGMTJEMDAzRUYyNjkgLyogUmVzZXRJbnB1dFR5cGUuY3BwICovLAorCQkJ
CUY1NUIzRDlDMTI1MUYxMkQwMDNFRjI2OSAvKiBSZXNldElucHV0VHlwZS5oICovLAorCQkJCTU4
MjRBQkEwMUFFODExMTYwMDkwNzRCNyAvKiBSdWJ5RWxlbWVudC5jcHAgKi8sCisJCQkJNTgyNEFC
QTExQUU4MTExNjAwOTA3NEI3IC8qIFJ1YnlFbGVtZW50LmggKi8sCisJCQkJNTgyNEFCQTQxQUU4
MTM4NDAwOTA3NEI3IC8qIFJ1YnlUZXh0RWxlbWVudC5jcHAgKi8sCisJCQkJNTgyNEFCQTUxQUU4
MTM4NDAwOTA3NEI3IC8qIFJ1YnlUZXh0RWxlbWVudC5oICovLAorCQkJCUY1NUIzRDlEMTI1MUYx
MkQwMDNFRjI2OSAvKiBTZWFyY2hJbnB1dFR5cGUuY3BwICovLAorCQkJCUY1NUIzRDlFMTI1MUYx
MkQwMDNFRjI2OSAvKiBTZWFyY2hJbnB1dFR5cGUuaCAqLywKKwkJCQlBNUFGQjM0RDExNTE1MUE3
MDBCMDQ1Q0IgLyogU3RlcFJhbmdlLmNwcCAqLywKKwkJCQlBNUFGQjM0RTExNTE1MUE3MDBCMDQ1
Q0IgLyogU3RlcFJhbmdlLmggKi8sCisJCQkJNDZEMDAwM0MyNkEwRkU2RjAwRDFCRjFFIC8qIFN1
Ym1pdEV2ZW50LmNwcCAqLywKKwkJCQk0NkQwMDAzRTI2QTBGRTZGMDBEMUJGMUUgLyogU3VibWl0
RXZlbnQuaCAqLywKKwkJCQk0NkQwMDAzRjI2QTBGRTcwMDBEMUJGMUUgLyogU3VibWl0RXZlbnQu
aWRsICovLAorCQkJCUY1NUIzRDlGMTI1MUYxMkQwMDNFRjI2OSAvKiBTdWJtaXRJbnB1dFR5cGUu
Y3BwICovLAorCQkJCUY1NUIzREEwMTI1MUYxMkQwMDNFRjI2OSAvKiBTdWJtaXRJbnB1dFR5cGUu
aCAqLywKKwkJCQlGNTVCM0RBMTEyNTFGMTJEMDAzRUYyNjkgLyogVGVsZXBob25lSW5wdXRUeXBl
LmNwcCAqLywKKwkJCQlGNTVCM0RBMjEyNTFGMTJEMDAzRUYyNjkgLyogVGVsZXBob25lSW5wdXRU
eXBlLmggKi8sCisJCQkJOTdCQzg0QjExMjM3MTE4MDAwMEM2MTYxIC8qIFRleHREb2N1bWVudC5j
cHAgKi8sCisJCQkJOTdCQzg0QjIxMjM3MTE4MDAwMEM2MTYxIC8qIFRleHREb2N1bWVudC5oICov
LAorCQkJCUY1NUIzREEzMTI1MUYxMkQwMDNFRjI2OSAvKiBUZXh0RmllbGRJbnB1dFR5cGUuY3Bw
ICovLAorCQkJCUY1NUIzREE0MTI1MUYxMkQwMDNFRjI2OSAvKiBUZXh0RmllbGRJbnB1dFR5cGUu
aCAqLywKKwkJCQlGNTVCM0RBNTEyNTFGMTJEMDAzRUYyNjkgLyogVGV4dElucHV0VHlwZS5jcHAg
Ki8sCisJCQkJRjU1QjNEQTYxMjUxRjEyRDAwM0VGMjY5IC8qIFRleHRJbnB1dFR5cGUuaCAqLywK
KwkJCQlCQ0VGNDVFODBFNjg3NzY3MDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaCAqLywKKwkJCQlC
Q0VGNDUzRjBFNjc2QUMxMDAxQzEyODcgLyogVGV4dE1ldHJpY3MuaWRsICovLAorCQkJCUY1NUIz
REE3MTI1MUYxMkQwMDNFRjI2OSAvKiBUaW1lSW5wdXRUeXBlLmNwcCAqLywKKwkJCQlGNTVCM0RB
ODEyNTFGMTJEMDAzRUYyNjkgLyogVGltZUlucHV0VHlwZS5oICovLAorCQkJCUU0NDYxMzlEMENE
NjMzMTAwMEZBREE3NSAvKiBUaW1lUmFuZ2VzLmNwcCAqLywKKwkJCQlFNDQ2MTM5RTBDRDYzMzEw
MDBGQURBNzUgLyogVGltZVJhbmdlcy5oICovLAorCQkJCUU0NDYxMzlGMENENjMzMTAwMEZBREE3
NSAvKiBUaW1lUmFuZ2VzLmlkbCAqLywKKwkJCQlDMzc1RDdGQjE2NjM5NTE5MDA2MTg0QUIgLyog
VHlwZUFoZWFkLmNwcCAqLywKKwkJCQlDMzc1RDdGQzE2NjM5NTE5MDA2MTg0QUIgLyogVHlwZUFo
ZWFkLmggKi8sCisJCQkJOTNFNUIyNTQyNDUzNkIxRTAwNUM1MkQwIC8qIFVSTERlY29tcG9zaXRp
b24uY3BwICovLAorCQkJCTY1NkI5RENBMTg5REUxMDAwMEJCODQyQyAvKiBVUkxEZWNvbXBvc2l0
aW9uLmggKi8sCisJCQkJRjU1QjNEQTkxMjUxRjEyRDAwM0VGMjY5IC8qIFVSTElucHV0VHlwZS5j
cHAgKi8sCisJCQkJRjU1QjNEQUExMjUxRjEyRDAwM0VGMjY5IC8qIFVSTElucHV0VHlwZS5oICov
LAorCQkJCUNERUUzOTM4MTc5NzQyNzQwMDFENzU4MCAvKiBVUkxSZWdpc3RyeS5oICovLAorCQkJ
CTVDNTM4MUIwMUQ4N0Q0NTcwMEUyRUJFNiAvKiBVUkxTZWFyY2hQYXJhbXMuY3BwICovLAorCQkJ
CTVDNTM4MUIxMUQ4N0Q0NTcwMEUyRUJFNiAvKiBVUkxTZWFyY2hQYXJhbXMuaCAqLywKKwkJCQk1
QzUzODFBRjFEODc5M0UwMDBFMkVCRTYgLyogVVJMU2VhcmNoUGFyYW1zLmlkbCAqLywKKwkJCQlG
NUExNTQyNTEyNzk1MzREMDBEMEIwQzAgLyogVmFsaWRhdGlvbk1lc3NhZ2UuY3BwICovLAorCQkJ
CUY1QTE1NDI2MTI3OTUzNEQwMEQwQjBDMCAvKiBWYWxpZGF0aW9uTWVzc2FnZS5oICovLAorCQkJ
CTE1Qzc3MDhBMTAwRDNDNkEwMDVCQTI2NyAvKiBWYWxpZGl0eVN0YXRlLmggKi8sCisJCQkJMTVD
NzcwODkxMDBEM0M2QTAwNUJBMjY3IC8qIFZhbGlkaXR5U3RhdGUuaWRsICovLAorCQkJCUU0NDYx
M0I0MENENjM0NEUwMEZBREE3NSAvKiBWb2lkQ2FsbGJhY2suaCAqLywKKwkJCQlFNDQ2MTNBMDBD
RDYzMzEwMDBGQURBNzUgLyogVm9pZENhbGxiYWNrLmlkbCAqLywKKwkJCQkyRDE5MzIxNzFEQTY0
RTE5MDBBNTRBMDggLyogV2ViS2l0TWVkaWFLZXlFcnJvci5oICovLAorCQkJCTJEMTkzMjE4MURB
NjRFMTkwMEE1NEEwOCAvKiBXZWJLaXRNZWRpYUtleUVycm9yLmlkbCAqLywKKwkJCQlGNTVCM0RB
QjEyNTFGMTJEMDAzRUYyNjkgLyogV2Vla0lucHV0VHlwZS5jcHAgKi8sCisJCQkJRjU1QjNEQUMx
MjUxRjEyRDAwM0VGMjY5IC8qIFdlZWtJbnB1dFR5cGUuaCAqLywKKwkJCSk7CisJCQlwYXRoID0g
aHRtbDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1
c2VzVGFicyA9IDA7CisJCX07CisJCTkzRUY3RDUzMTk1NEU5OEYwMERGQjcxRCAvKiBjb2NvYSAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJOTNFRjdENTQx
OTU0RTk4RjAwREZCNzFEIC8qIFNjcm9sbGluZ1N0YXRlTm9kZS5tbSAqLywKKwkJCQkwRjk0QjY0
MjIyMDhGNzAxMDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJlZUZpeGVkTm9kZS5oICovLAorCQkJCTBG
OTRCNjQ0MjIwOEY3MDIwMDE1NzAxNCAvKiBTY3JvbGxpbmdUcmVlRml4ZWROb2RlLm1tICovLAor
CQkJCTBGQzRCMDA0MjJCOUEwMkMwMENGM0IxRSAvKiBTY3JvbGxpbmdUcmVlT3ZlcmZsb3dTY3Jv
bGxQcm94eU5vZGUuaCAqLywKKwkJCQkwRkM0QjAwNTIyQjlBMDJEMDBDRjNCMUUgLyogU2Nyb2xs
aW5nVHJlZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLm1tICovLAorCQkJCTBGOTRCNjUzMjIwOTE1
NkMwMDE1NzAxNCAvKiBTY3JvbGxpbmdUcmVlUG9zaXRpb25lZE5vZGUuaCAqLywKKwkJCQkwRjk0
QjY1NDIyMDkxNTZDMDAxNTcwMTQgLyogU2Nyb2xsaW5nVHJlZVBvc2l0aW9uZWROb2RlLm1tICov
LAorCQkJCTBGOTRCNjQzMjIwOEY3MDIwMDE1NzAxNCAvKiBTY3JvbGxpbmdUcmVlU3RpY2t5Tm9k
ZS5oICovLAorCQkJCTBGOTRCNjQ1MjIwOEY3MDMwMDE1NzAxNCAvKiBTY3JvbGxpbmdUcmVlU3Rp
Y2t5Tm9kZS5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0gY29jb2E7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQk5NDZEMzcyNzFENkNCMjI1MDA3NzA4NEYgLyogcGFyc2VyICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk5NERFNUM3RjFE
N0YzOUQwMDAxNjRGMkEgLyogQ1NTQXRSdWxlSUQuY3BwICovLAorCQkJCTk0REU1QzgwMUQ3RjM5
RDAwMDE2NEYyQSAvKiBDU1NBdFJ1bGVJRC5oICovLAorCQkJCTk0NDc2QkQ4MURGQ0E0QTcwMDY5
MEUyMyAvKiBDU1NEZWZlcnJlZFBhcnNlci5jcHAgKi8sCisJCQkJOTQ0NzZCRDkxREZDQTRBNzAw
NjkwRTIzIC8qIENTU0RlZmVycmVkUGFyc2VyLmggKi8sCisJCQkJOTQ2RDM3MjgxRDZDQjI4QjAw
NzcwODRGIC8qIENTU1BhcnNlci5jcHAgKi8sCisJCQkJOTQ2RDM3MjkxRDZDQjI4QjAwNzcwODRG
IC8qIENTU1BhcnNlci5oICovLAorCQkJCUU0QTc5OTUwMjBFRTRBRTIwMEMxOTU2OCAvKiBDU1NQ
YXJzZXJDb250ZXh0LmNwcCAqLywKKwkJCQlFNEE3OTk0RTIwRUU0QUUxMDBDMTk1NjggLyogQ1NT
UGFyc2VyQ29udGV4dC5oICovLAorCQkJCTk0OUM3NkZFMUQ2RTFEOEMwMEMwREU0RiAvKiBDU1NQ
YXJzZXJGYXN0UGF0aHMuY3BwICovLAorCQkJCTk0OUM3NkZGMUQ2RTFEOEMwMEMwREU0RiAvKiBD
U1NQYXJzZXJGYXN0UGF0aHMuaCAqLywKKwkJCQk5NERFNUM3RDFENzhDQjI1MDAxNjRGMkEgLyog
Q1NTUGFyc2VySWRpb21zLmNwcCAqLywKKwkJCQk5NDZEMzc0MzFENkNGNzg4MDA3NzA4NEYgLyog
Q1NTUGFyc2VySWRpb21zLmggKi8sCisJCQkJOTRERTVDOTMxRDgzMDFCMDAwMTY0RjJBIC8qIENT
U1BhcnNlckltcGwuY3BwICovLAorCQkJCTk0REU1Qzk0MUQ4MzAxQjAwMDE2NEYyQSAvKiBDU1NQ
YXJzZXJJbXBsLmggKi8sCisJCQkJOTQ2RDM3MkExRDZDQjI4QjAwNzcwODRGIC8qIENTU1BhcnNl
ck1vZGUuaCAqLywKKwkJCQk5NDlDNzcwQTFENkU0OUMzMDBDMERFNEYgLyogQ1NTUGFyc2VyT2Jz
ZXJ2ZXIuaCAqLywKKwkJCQk5NDlDNzcwNjFENkU0OEVEMDBDMERFNEYgLyogQ1NTUGFyc2VyT2Jz
ZXJ2ZXJXcmFwcGVyLmNwcCAqLywKKwkJCQk5NDlDNzcwNzFENkU0OEVEMDBDMERFNEYgLyogQ1NT
UGFyc2VyT2JzZXJ2ZXJXcmFwcGVyLmggKi8sCisJCQkJOTQ2RDM3MkIxRDZDQjI4QjAwNzcwODRG
IC8qIENTU1BhcnNlclNlbGVjdG9yLmNwcCAqLywKKwkJCQk5NDZEMzcyQzFENkNCMjhCMDA3NzA4
NEYgLyogQ1NTUGFyc2VyU2VsZWN0b3IuaCAqLywKKwkJCQk5NDZEMzczRTFENkNFMzFBMDA3NzA4
NEYgLyogQ1NTUGFyc2VyVG9rZW4uY3BwICovLAorCQkJCTk0NkQzNzNEMUQ2Q0UzMUEwMDc3MDg0
RiAvKiBDU1NQYXJzZXJUb2tlbi5oICovLAorCQkJCTk0NkQzNzRCMUQ2RDA3RjUwMDc3MDg0RiAv
KiBDU1NQYXJzZXJUb2tlblJhbmdlLmNwcCAqLywKKwkJCQk5NDZEMzc0QzFENkQwN0Y1MDA3NzA4
NEYgLyogQ1NTUGFyc2VyVG9rZW5SYW5nZS5oICovLAorCQkJCTk0NkQzNzQxMUQ2Q0Y2MzIwMDc3
MDg0RiAvKiBDU1NQcm9wZXJ0eVBhcnNlci5jcHAgKi8sCisJCQkJOTQ2RDM3NDIxRDZDRjYzMjAw
NzcwODRGIC8qIENTU1Byb3BlcnR5UGFyc2VyLmggKi8sCisJCQkJOTQ5Qzc3MDIxRDZFMzkzNTAw
QzBERTRGIC8qIENTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgKi8sCisJCQkJOTQ5Qzc3MDMx
RDZFMzkzNTAwQzBERTRGIC8qIENTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oICovLAorCQkJCTk0
NkQzNzQxMUQ2RDA2MzIwMDc3MDg0RiAvKiBDU1NQcm9wZXJ0eVBhcnNlcldvcmtlclNhZmUuY3Bw
ICovLAorCQkJCTk0NkQzNzQyMUQ2RDA2MzIwMDc3MDg0RiAvKiBDU1NQcm9wZXJ0eVBhcnNlcldv
cmtlclNhZmUuaCAqLywKKwkJCQk5NERFNUM4QjFEODA4MDE1MDAxNjRGMkEgLyogQ1NTU2VsZWN0
b3JQYXJzZXIuY3BwICovLAorCQkJCTk0REU1QzhDMUQ4MDgwMTUwMDE2NEYyQSAvKiBDU1NTZWxl
Y3RvclBhcnNlci5oICovLAorCQkJCTk0REU1QzhGMUQ4MzAwQ0IwMDE2NEYyQSAvKiBDU1NTdXBw
b3J0c1BhcnNlci5jcHAgKi8sCisJCQkJOTRERTVDOTAxRDgzMDBDQjAwMTY0RjJBIC8qIENTU1N1
cHBvcnRzUGFyc2VyLmggKi8sCisJCQkJOTQ2RDM3MzQxRDZDREY5ODAwNzcwODRGIC8qIENTU1Rv
a2VuaXplci5jcHAgKi8sCisJCQkJOTQ2RDM3MzcxRDZDREY5ODAwNzcwODRGIC8qIENTU1Rva2Vu
aXplci5oICovLAorCQkJCTk0NkQzNzM1MUQ2Q0RGOTgwMDc3MDg0RiAvKiBDU1NUb2tlbml6ZXJJ
bnB1dFN0cmVhbS5jcHAgKi8sCisJCQkJOTQ2RDM3MzgxRDZDREY5ODAwNzcwODRGIC8qIENTU1Rv
a2VuaXplcklucHV0U3RyZWFtLmggKi8sCisJCQkJOTQ0NENCRDgxRDg4NDgyQTAwNzNBMDc0IC8q
IENTU1ZhcmlhYmxlUGFyc2VyLmNwcCAqLywKKwkJCQk5NDQ0Q0JENzFEODg0ODJBMDA3M0EwNzQg
LyogQ1NTVmFyaWFibGVQYXJzZXIuaCAqLywKKwkJCQk5NDkzQjZCNjFENzRCMzk1MDA4OEU3ODAg
LyogTWVkaWFRdWVyeUJsb2NrV2F0Y2hlci5jcHAgKi8sCisJCQkJOTQ5M0I2QjcxRDc0QjM5NTAw
ODhFNzgwIC8qIE1lZGlhUXVlcnlCbG9ja1dhdGNoZXIuaCAqLywKKwkJCQk5NDkzQjZCODFENzRC
Mzk1MDA4OEU3ODAgLyogTWVkaWFRdWVyeVBhcnNlci5jcHAgKi8sCisJCQkJOTQ5M0I2QjkxRDc0
QjM5NTAwODhFNzgwIC8qIE1lZGlhUXVlcnlQYXJzZXIuaCAqLywKKwkJCQk5NDQ0Q0JEMjFEODYw
Qzc0MDA3M0EwNzQgLyogU2l6ZXNBdHRyaWJ1dGVQYXJzZXIuY3BwICovLAorCQkJCTk0NDRDQkQx
MUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0F0dHJpYnV0ZVBhcnNlci5oICovLAorCQkJCTk0NDRD
QkQwMUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0NhbGNQYXJzZXIuY3BwICovLAorCQkJCTk0NDRD
QkNGMUQ4NjBDNzQwMDczQTA3NCAvKiBTaXplc0NhbGNQYXJzZXIuaCAqLywKKwkJCSk7CisJCQlu
YW1lID0gcGFyc2VyOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJOTcxMTQ1
RkUxNEVGMDA2RTAwNjc0RkQ5IC8qIE1vZHVsZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCUNFMjYxNjlEMTg3RTY1NTQwMDc5NTVGMyAvKiBhaXJwbGF5
ICovLAorCQkJCTFBNThFODYxMUQxOUQzNzMwMEMwRUE3MyAvKiBhcHBsZXBheSAqLywKKwkJCQk2
M0JENEE1QzFGNzc4RTg0MDA0Mzg3MjIgLyogYXBwbGljYXRpb25tYW5pZmVzdCAqLywKKwkJCQlG
NDQwRTc2QTIzM0Q5M0M4MDA2M0Y5QUIgLyogYXN5bmMtY2xpcGJvYXJkICovLAorCQkJCTgzMjE1
MDc5MUYyN0U5NkIwMDk1QjEzNiAvKiBiZWFjb24gKi8sCisJCQkJNDEzODBDMUUxRjM0MzY2MDAw
MTU1RkRBIC8qIGNhY2hlICovLAorCQkJCUU1OTZERDIzMjUxOTAyRDYwMEMyNzVBNyAvKiBjb250
YWN0LXBpY2tlciAqLywKKwkJCQk1N0M3QTY4ODFFNTY5NDZEMDBDNjdENzEgLyogY3JlZGVudGlh
bG1hbmFnZW1lbnQgKi8sCisJCQkJQ0RBOThEQkQxNjAxNEUwODAwRkVBM0IxIC8qIGVuY3J5cHRl
ZG1lZGlhICovLAorCQkJCTgzRkIzMzY1MUY1MDhBMTcwMDk4NkU1NCAvKiBlbnRyaWVzYXBpICov
LAorCQkJCTQxRjU0RjdDMUM1MEM0RjYwMDMzODQ4OCAvKiBmZXRjaCAqLywKKwkJCQk5MzJDOUJD
RDI2REQ2MjI5MDA1M0IzREIgLyogZmlsZXN5c3RlbWFjY2VzcyAqLywKKwkJCQk1MThGNEZFOTE5
NENBNEI2MDA4MUJBQUUgLyogZ2FtZXBhZCAqLywKKwkJCQk5NzExNDVGRjE0RUYwMDc5MDA2NzRG
RDkgLyogZ2VvbG9jYXRpb24gKi8sCisJCQkJNDRFODhFNDcyMzY4REYwRjAwOUI0ODQ3IC8qIGhp
Z2hsaWdodCAqLywKKwkJCQk5NzEyQTU1MzE1MDA0RTNDMDA0OEFGMTAgLyogaW5kZXhlZGRiICov
LAorCQkJCUNEQkQzRDI3MUZFODVDOTIwMDEyQzU0NSAvKiBtZWRpYWNhcGFiaWxpdGllcyAqLywK
KwkJCQlDRDlBMzdGNTE3QzdEOTM2MDBDNUZBN0EgLyogbWVkaWFjb250cm9scyAqLywKKwkJCQk0
RDNCMDBBMDIxNUQ1QzBGMDA3NkI5ODMgLyogbWVkaWFyZWNvcmRlciAqLywKKwkJCQlDRERERUEy
MTI1MzhDRDM1MDBBMTMwMEMgLyogbWVkaWFzZXNzaW9uICovLAorCQkJCUIxQTk0MkREMTVCNUNF
MjIwMEQ1MjVEMSAvKiBtZWRpYXNvdXJjZSAqLywKKwkJCQkwNzIyMUI0NjE3Q0VDMzI3MDA4NDhF
NTEgLyogbWVkaWFzdHJlYW0gKi8sCisJCQkJNzFGODQ5Q0MyNTY1QUI3RTAwOEMzN0YyIC8qIG1v
ZGVsLWVsZW1lbnQgKi8sCisJCQkJNzFENkFBMzkxREE0RUFGNzAwQjIzOTY5IC8qIG1vZGVybi1t
ZWRpYS1jb250cm9scyAqLywKKwkJCQkzMzNGNzAzRDBGQjQ5QzE2MDA4RTEyQTYgLyogbm90aWZp
Y2F0aW9ucyAqLywKKwkJCQlBMUY3NkIwRTFGNDRDMENGMDAxNEMzMTggLyogcGF5bWVudHJlcXVl
c3QgKi8sCisJCQkJOTNCMEE2NDIyNkNEQzU3NDAwQUEyMUU0IC8qIHBlcm1pc3Npb25zICovLAor
CQkJCTFERUYwNkEyMjMzQzMyREIwMEVFMjI4RCAvKiBwaWN0dXJlaW5waWN0dXJlICovLAorCQkJ
CTA3MkFFMURFMTgzQzA1MTMwMDBBNTk4OCAvKiBwbHVnaW5zICovLAorCQkJCUNEQzMxMkUwMjJG
Q0QwQjAwMDEyMDRFQyAvKiByZW1vdGVwbGF5YmFjayAqLywKKwkJCQlBQTJBNUFCNzE2QTQ4NUE0
MDA5NzVBMjUgLyogc3BlZWNoICovLAorCQkJCTkzMDg1REIzMjZFMDA2OEUwMDBFQzZBNyAvKiBz
dG9yYWdlICovLAorCQkJCTQxQTAyM0VBMUEzOURCNzkwMEY3MjJDRiAvKiBzdHJlYW1zICovLAor
CQkJCUZEMzE1RkEyMTJCMDI1QjEwMEMxQTM1OSAvKiB3ZWJhdWRpbyAqLywKKwkJCQk1N0Q4NDYy
QTFGRUFGNTdGMDBDQTM2ODIgLyogd2ViYXV0aG4gKi8sCisJCQkJOTdCQzY5RDUxNTA1RjA1NDAw
MUI3NEFDIC8qIHdlYmRhdGFiYXNlICovLAorCQkJCTk5NkU1OURBMURGMDBENDUwMDY2MTJCOSAv
KiB3ZWJkcml2ZXIgKi8sCisJCQkJOTdBQUJDRjcxNEZBMDlCNTAwNzQ1N0FFIC8qIHdlYnNvY2tl
dHMgKi8sCisJCQkJRTFFRThBQzYyNDEyQjE2RjAwRTc5NEQ2IC8qIHdlYnhyICovLAorCQkJKTsK
KwkJCXBhdGggPSBNb2R1bGVzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJ
OTcxMTQ1RkYxNEVGMDA3OTAwNjc0RkQ5IC8qIGdlb2xvY2F0aW9uICovID0geworCQkJaXNhID0g
UEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk4Mzc5NjRDQzFGOERCNjdEMDAyMThFQTAg
LyogaW9zICovLAorCQkJCTk3NDZBRjEzMTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvbi5j
cHAgKi8sCisJCQkJOTc0NkFGMTQxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uLmggKi8s
CisJCQkJOTc0NkFGMTUxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uLmlkbCAqLywKKwkJ
CQk5NzQ2QUYxNTE0RjREREU2MDAzRTdBNzEgLyogR2VvbG9jYXRpb25DbGllbnQuaCAqLywKKwkJ
CQk5NzQ2QUYxNjE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Db250cm9sbGVyLmNwcCAq
LywKKwkJCQk5NzQ2QUYxNzE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Db250cm9sbGVy
LmggKi8sCisJCQkJOTc0NkFGMTExNEY0RERFNjAwM0U3QTcyIC8qIEdlb2xvY2F0aW9uQ29vcmRp
bmF0ZXMuY3BwICovLAorCQkJCTk3NDZBRjExMTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlv
bkNvb3JkaW5hdGVzLmggKi8sCisJCQkJOTc0NkFGMTIxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xv
Y2F0aW9uQ29vcmRpbmF0ZXMuaWRsICovLAorCQkJCTk3NDZBRjE4MTRGNERERTYwMDNFN0E3MCAv
KiBHZW9sb2NhdGlvbkVycm9yLmggKi8sCisJCQkJOTc0NkFGMUExNEY0RERFNjAwM0U3QTcwIC8q
IEdlb2xvY2F0aW9uUG9zaXRpb24uaCAqLywKKwkJCQk5NzQ2QUYxQjE0RjREREU2MDAzRTdBNzAg
LyogR2VvbG9jYXRpb25Qb3NpdGlvbi5pZGwgKi8sCisJCQkJOTc0NkFGMTkxNEY0RERFNjAwM0U3
QTcwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25EYXRhLmggKi8sCisJCQkJOTc0NkFGMUUxNEY0RERF
NjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uUG9zaXRpb25FcnJvci5oICovLAorCQkJCTk3NDZBRjFG
MTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvblBvc2l0aW9uRXJyb3IuaWRsICovLAorCQkJ
CTQ2QzgzRUZCMUE5QkJFMjkwMEE3OUE0MSAvKiBHZW9Ob3RpZmllci5jcHAgKi8sCisJCQkJNDZD
ODNFRkMxQTlCQkUyOTAwQTc5QTQxIC8qIEdlb05vdGlmaWVyLmggKi8sCisJCQkJOTcxMTQ2MDIx
NEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRvcitHZW9sb2NhdGlvbi5pZGwgKi8sCisJCQkJOTcx
MTQ2MDAxNEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRvckdlb2xvY2F0aW9uLmNwcCAqLywKKwkJ
CQk5NzExNDYwMTE0RUYwMDlBMDA2NzRGRDkgLyogTmF2aWdhdG9yR2VvbG9jYXRpb24uaCAqLywK
KwkJCQk5NzQ2QUYxQzE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25DYWxsYmFjay5oICovLAor
CQkJCTk3NDZBRjFEMTRGNERERTYwMDNFN0E3MCAvKiBQb3NpdGlvbkNhbGxiYWNrLmlkbCAqLywK
KwkJCQk5NzQ2QUYyMDE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25FcnJvckNhbGxiYWNrLmgg
Ki8sCisJCQkJOTc0NkFGMjExNEY0RERFNjAwM0U3QTcwIC8qIFBvc2l0aW9uRXJyb3JDYWxsYmFj
ay5pZGwgKi8sCisJCQkJOTc0NkFGMjIxNEY0RERFNjAwM0U3QTcwIC8qIFBvc2l0aW9uT3B0aW9u
cy5oICovLAorCQkJCTdDMzMwQTAzMURGOUU5NUIwMEQzMzk1QyAvKiBQb3NpdGlvbk9wdGlvbnMu
aWRsICovLAorCQkJKTsKKwkJCXBhdGggPSBnZW9sb2NhdGlvbjsKKwkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CisJCX07CisJCTk3MTJBNTUzMTUwMDRFM0MwMDQ4QUYxMCAvKiBpbmRleGVkZGIg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTUxMDMxMDQy
MUJBOEM2NEMwMDMzMjlDMCAvKiBjbGllbnQgKi8sCisJCQkJNTEwQTU4RUUxQkFCNzFFMDAwQzE5
MjgyIC8qIHNlcnZlciAqLywKKwkJCQk1MTBBNThFMTFCQUE0MDk4MDBDMTkyODIgLyogc2hhcmVk
ICovLAorCQkJCTUxNzE0RUE3MUNGNERFODcwMDQ3MjNDNCAvKiBJREJBY3RpdmVET01PYmplY3Qu
aCAqLywKKwkJCQk1MTY0NUI1NDFCOUY4OEU4MDBGNzg5Q0UgLyogSURCQ3Vyc29yLmNwcCAqLywK
KwkJCQk1MTY0NUI0MTFCOUY4ODlCMDBGNzg5Q0UgLyogSURCQ3Vyc29yLmggKi8sCisJCQkJNTFE
NzE5NzcxODExMDZERjAwMTZEQzUxIC8qIElEQkN1cnNvci5pZGwgKi8sCisJCQkJN0MzRDhFRTkx
RTBCMTVBNzAwMjNCMDg0IC8qIElEQkN1cnNvckRpcmVjdGlvbi5oICovLAorCQkJCTdDM0Q4RUVB
MUUwQjE1QTcwMDIzQjA4NCAvKiBJREJDdXJzb3JEaXJlY3Rpb24uaWRsICovLAorCQkJCTUxNjQ1
QjQyMUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJDdXJzb3JXaXRoVmFsdWUuY3BwICovLAorCQkJCTUx
NjQ1QjQzMUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJDdXJzb3JXaXRoVmFsdWUuaCAqLywKKwkJCQk1
MUQ3MTk3QjE4MTEwNkRGMDAxNkRDNTEgLyogSURCQ3Vyc29yV2l0aFZhbHVlLmlkbCAqLywKKwkJ
CQk1MTY0NUI0NDFCOUY4ODlCMDBGNzg5Q0UgLyogSURCRGF0YWJhc2UuY3BwICovLAorCQkJCTUx
NjQ1QjQ1MUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJEYXRhYmFzZS5oICovLAorCQkJCTUxRDcxOTdF
MTgxMTA2REYwMDE2REM1MSAvKiBJREJEYXRhYmFzZS5pZGwgKi8sCisJCQkJNTEwMzEwNUUxQkE4
RTA5MDAwMzMyOUMwIC8qIElEQkRhdGFiYXNlSWRlbnRpZmllci5jcHAgKi8sCisJCQkJNTEwMzEw
NUYxQkE4RTA5MDAwMzMyOUMwIC8qIElEQkRhdGFiYXNlSWRlbnRpZmllci5oICovLAorCQkJCTkw
RTM1MUJDMjQ3RTNENDgwMEZCRjI0RiAvKiBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uUmVxdWVz
dC5jcHAgKi8sCisJCQkJOTBFMzUxQkQyNDdFM0Q0ODAwRkJGMjRGIC8qIElEQkRhdGFiYXNlTmFt
ZUFuZFZlcnNpb25SZXF1ZXN0LmggKi8sCisJCQkJNTE2NDVCNDYxQjlGODg5QjAwRjc4OUNFIC8q
IElEQkZhY3RvcnkuY3BwICovLAorCQkJCTUxNjQ1QjQ3MUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJG
YWN0b3J5LmggKi8sCisJCQkJNTFENzE5OEExODExMDZERjAwMTZEQzUxIC8qIElEQkZhY3Rvcnku
aWRsICovLAorCQkJCTUxOURCQzcwMURDMTBEMzMwMDMyOUJGNSAvKiBJREJHZXRBbGxSZXN1bHQu
Y3BwICovLAorCQkJCTUxOURCQzcxMURDMTBEMzMwMDMyOUJGNSAvKiBJREJHZXRBbGxSZXN1bHQu
aCAqLywKKwkJCQk1MTJGMUE3NzFDMDdFQTBEMDA5MDgyMzkgLyogSURCR2V0UmVzdWx0LmNwcCAq
LywKKwkJCQk1MTIzQUYxQzE4OTE4QUU0MDAzMUNEQzkgLyogSURCR2V0UmVzdWx0LmggKi8sCisJ
CQkJNTE2NDVCNDgxQjlGODg5QjAwRjc4OUNFIC8qIElEQkluZGV4LmNwcCAqLywKKwkJCQk1MTY0
NUI0OTFCOUY4ODlCMDBGNzg5Q0UgLyogSURCSW5kZXguaCAqLywKKwkJCQk1MUQ3MTk5MDE4MTEw
NkUwMDAxNkRDNTEgLyogSURCSW5kZXguaWRsICovLAorCQkJCTUxRDcxOTkxMTgxMTA2RTAwMDE2
REM1MSAvKiBJREJLZXkuY3BwICovLAorCQkJCTUxRDcxOTkyMTgxMTA2RTAwMDE2REM1MSAvKiBJ
REJLZXkuaCAqLywKKwkJCQk1MTFFQzFBNzE4OERBRTdCMDBCQTNFQjYgLyogSURCS2V5RGF0YS5j
cHAgKi8sCisJCQkJNTExRUMxQTUxODhEQUNBNDAwQkEzRUI2IC8qIElEQktleURhdGEuaCAqLywK
KwkJCQk1MUQ3MTk5MzE4MTEwNkUwMDAxNkRDNTEgLyogSURCS2V5UGF0aC5jcHAgKi8sCisJCQkJ
NTFENzE5OTQxODExMDZFMDAwMTZEQzUxIC8qIElEQktleVBhdGguaCAqLywKKwkJCQk1MUQ3MTk5
NTE4MTEwNkUwMDAxNkRDNTEgLyogSURCS2V5UmFuZ2UuY3BwICovLAorCQkJCTUxRDcxOTk2MTgx
MTA2RTAwMDE2REM1MSAvKiBJREJLZXlSYW5nZS5oICovLAorCQkJCTUxRDcxOTk3MTgxMTA2RTAw
MDE2REM1MSAvKiBJREJLZXlSYW5nZS5pZGwgKi8sCisJCQkJNTEyM0FGMTYxODkwQTRDQTAwMzFD
REM5IC8qIElEQktleVJhbmdlRGF0YS5jcHAgKi8sCisJCQkJNTEyM0FGMTcxODkwQTRDQTAwMzFD
REM5IC8qIElEQktleVJhbmdlRGF0YS5oICovLAorCQkJCTUxNjQ1QjRBMUI5Rjg4OUIwMEY3ODlD
RSAvKiBJREJPYmplY3RTdG9yZS5jcHAgKi8sCisJCQkJNTE2NDVCNEIxQjlGODg5QjAwRjc4OUNF
IC8qIElEQk9iamVjdFN0b3JlLmggKi8sCisJCQkJNTFENzE5OUIxODExMDZFMDAwMTZEQzUxIC8q
IElEQk9iamVjdFN0b3JlLmlkbCAqLywKKwkJCQk1MTY0NUI0QzFCOUY4ODlCMDBGNzg5Q0UgLyog
SURCT3BlbkRCUmVxdWVzdC5jcHAgKi8sCisJCQkJNTE2NDVCNEQxQjlGODg5QjAwRjc4OUNFIC8q
IElEQk9wZW5EQlJlcXVlc3QuaCAqLywKKwkJCQk1MUQ3MTk5RTE4MTEwNkUwMDAxNkRDNTEgLyog
SURCT3BlbkRCUmVxdWVzdC5pZGwgKi8sCisJCQkJNTE2NDVCNEUxQjlGODg5QjAwRjc4OUNFIC8q
IElEQlJlcXVlc3QuY3BwICovLAorCQkJCTUxNjQ1QjRGMUI5Rjg4OUIwMEY3ODlDRSAvKiBJREJS
ZXF1ZXN0LmggKi8sCisJCQkJNTFENzE5QTMxODExMDZFMDAwMTZEQzUxIC8qIElEQlJlcXVlc3Qu
aWRsICovLAorCQkJCTUxNDEyOTk2MUM2OTc2MTUwMDU5RTcxNCAvKiBJREJSZXF1ZXN0Q29tcGxl
dGlvbkV2ZW50LmNwcCAqLywKKwkJCQk1MTQxMjk5NzFDNjk3NjE1MDA1OUU3MTQgLyogSURCUmVx
dWVzdENvbXBsZXRpb25FdmVudC5oICovLAorCQkJCTUxNjQ1QjUwMUI5Rjg4OUIwMEY3ODlDRSAv
KiBJREJUcmFuc2FjdGlvbi5jcHAgKi8sCisJCQkJNTE2NDVCNTExQjlGODg5QjAwRjc4OUNFIC8q
IElEQlRyYW5zYWN0aW9uLmggKi8sCisJCQkJNTFENzE5QTYxODExMDZFMDAwMTZEQzUxIC8qIElE
QlRyYW5zYWN0aW9uLmlkbCAqLywKKwkJCQk5MzY1ODNCNjI2QUI5MTc0MDA0RTYxRjQgLyogSURC
VHJhbnNhY3Rpb25EdXJhYmlsaXR5LmggKi8sCisJCQkJOTM2NTgzQjQyNkFCOENCNDAwNEU2MUY0
IC8qIElEQlRyYW5zYWN0aW9uRHVyYWJpbGl0eS5pZGwgKi8sCisJCQkJODM4RUY1MzYxREMxNDlE
QTAwOEYwQzM5IC8qIElEQlRyYW5zYWN0aW9uTW9kZS5oICovLAorCQkJCTgzOEVGNTM3MURDMTQ5
REEwMDhGMEMzOSAvKiBJREJUcmFuc2FjdGlvbk1vZGUuaWRsICovLAorCQkJCTUxNjEwM0FEMUNB
REI5QTMwMDE2QjRDNyAvKiBJREJWYWx1ZS5jcHAgKi8sCisJCQkJNTE2MTAzQUUxQ0FEQjlBMzAw
MTZCNEM3IC8qIElEQlZhbHVlLmggKi8sCisJCQkJNTE2NDVCNTIxQjlGODg5QjAwRjc4OUNFIC8q
IElEQlZlcnNpb25DaGFuZ2VFdmVudC5jcHAgKi8sCisJCQkJNTE2NDVCNTMxQjlGODg5QjAwRjc4
OUNFIC8qIElEQlZlcnNpb25DaGFuZ2VFdmVudC5oICovLAorCQkJCTUxRDcxOUFEMTgxMTA2RTAw
MDE2REM1MSAvKiBJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsICovLAorCQkJCTUxRDcxOUFFMTgx
MTA2RTAwMDE2REM1MSAvKiBJbmRleGVkREIuaCAqLywKKwkJCQk1MUQ3MTlCMzE4MTEwNkUwMDAx
NkRDNTEgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsICov
LAorCQkJCTUxRDcxOUIxMTgxMTA2RTAwMDE2REM1MSAvKiBXaW5kb3dPcldvcmtlckdsb2JhbFNj
b3BlSW5kZXhlZERhdGFiYXNlLmNwcCAqLywKKwkJCQk1MUQ3MTlCMjE4MTEwNkUwMDAxNkRDNTEg
LyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5oICovLAorCQkJKTsK
KwkJCXBhdGggPSBpbmRleGVkZGI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9Owor
CQk5NzZENkM1NzEyMkI4QTE4MDAxRkQxRjcgLyogZmlsZWFwaSAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRTFDREU5MUYxNTAxOEVEMDAwODYyQ0M1IC8q
IEFzeW5jRmlsZVN0cmVhbS5jcHAgKi8sCisJCQkJRTFDREU5MjExNTAxOTE2OTAwODYyQ0M1IC8q
IEFzeW5jRmlsZVN0cmVhbS5oICovLAorCQkJCTk3NkQ2QzU5MTIyQjhBM0QwMDFGRDFGNyAvKiBC
bG9iLmNwcCAqLywKKwkJCQk5NzZENkM1QTEyMkI4QTNEMDAxRkQxRjcgLyogQmxvYi5oICovLAor
CQkJCTE0QTk4RTA1MTM2Mzg2QTIwMEM5RkVEMiAvKiBCbG9iLmlkbCAqLywKKwkJCQk5NzZENkM1
QzEyMkI4QTNEMDAxRkQxRjcgLyogQmxvYkJ1aWxkZXIuY3BwICovLAorCQkJCTk3NkQ2QzVEMTIy
QjhBM0QwMDFGRDFGNyAvKiBCbG9iQnVpbGRlci5oICovLAorCQkJCUExNUQ3NTEyMUU2OEY3QjEw
MEEzNUZCQyAvKiBCbG9iQ2FsbGJhY2suY3BwICovLAorCQkJCUExNUQ3NTEzMUU2OEY3QjEwMEEz
NUZCQyAvKiBCbG9iQ2FsbGJhY2suaCAqLywKKwkJCQlBMTVENzUxNDFFNjhGN0IxMDBBMzVGQkMg
LyogQmxvYkNhbGxiYWNrLmlkbCAqLywKKwkJCQk0MUU5RENFNDIzMTk3M0ZFMDBGMzU5NDkgLyog
QmxvYkxvYWRlci5oICovLAorCQkJCTdDNzdDM0QwMURFRTQ3MjQwMEE1MEJGQSAvKiBCbG9iUHJv
cGVydHlCYWcuaCAqLywKKwkJCQk3Qzc3QzNDRjFERUU0NzE4MDBBNTBCRkEgLyogQmxvYlByb3Bl
cnR5QmFnLmlkbCAqLywKKwkJCQk5NzZENkM1RjEyMkI4QTNEMDAxRkQxRjcgLyogQmxvYlVSTC5j
cHAgKi8sCisJCQkJOTc2RDZDNjAxMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2JVUkwuaCAqLywKKwkJ
CQk3Qzc3QzNENjFERUY4NTBBMDBBNTBCRkEgLyogRW5kaW5nVHlwZS5oICovLAorCQkJCTQxRTlE
Q0U2MjMxOTc0MjMwMEYzNTk0OSAvKiBFbmRpbmdUeXBlLmlkbCAqLywKKwkJCQk5NzZENkM2MTEy
MkI4QTNEMDAxRkQxRjcgLyogRmlsZS5jcHAgKi8sCisJCQkJOTc2RDZDNjIxMjJCOEEzRDAwMUZE
MUY3IC8qIEZpbGUuaCAqLywKKwkJCQlFMUFCMUVCNzE0RTlFMzU4MDA0NDlFMTMgLyogRmlsZS5p
ZGwgKi8sCisJCQkJRTE2NEEyRTcxOTFBQzVCQjAwMTA3MzdEIC8qIEZpbGVDb2NvYS5tbSAqLywK
KwkJCQk5NzZENkM2NjEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZUxpc3QuY3BwICovLAorCQkJCTk3
NkQ2QzY3MTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlTGlzdC5oICovLAorCQkJCUUxQUIxRUE4MTRF
OUUyN0QwMDQ0OUUxMyAvKiBGaWxlTGlzdC5pZGwgKi8sCisJCQkJOTc2RDZDNjkxMjJCOEEzRDAw
MUZEMUY3IC8qIEZpbGVSZWFkZXIuY3BwICovLAorCQkJCTk3NkQ2QzZBMTIyQjhBM0QwMDFGRDFG
NyAvKiBGaWxlUmVhZGVyLmggKi8sCisJCQkJMTRCREY1OUExMzY1Mzk5MTAwMTQ4MzkzIC8qIEZp
bGVSZWFkZXIuaWRsICovLAorCQkJCTJFNzU4NDFBMTI3NzlBREEwMDYyNjI4QiAvKiBGaWxlUmVh
ZGVyTG9hZGVyLmNwcCAqLywKKwkJCQkyRTc1ODQxQjEyNzc5QURBMDA2MjYyOEIgLyogRmlsZVJl
YWRlckxvYWRlci5oICovLAorCQkJCTJFNzU4NDFDMTI3NzlBREEwMDYyNjI4QiAvKiBGaWxlUmVh
ZGVyTG9hZGVyQ2xpZW50LmggKi8sCisJCQkJMkVERjM2OUExMjJDOTRCNDAwMkY3RDRFIC8qIEZp
bGVSZWFkZXJTeW5jLmNwcCAqLywKKwkJCQkyRURGMzY5QjEyMkM5NEI0MDAyRjdENEUgLyogRmls
ZVJlYWRlclN5bmMuaCAqLywKKwkJCQlFMUFCMUVCRDE0RTlFM0E4MDA0NDlFMTMgLyogRmlsZVJl
YWRlclN5bmMuaWRsICovLAorCQkJCTQxRTlEQ0VBMjMxOUNBRTgwMEYzNTk0OSAvKiBOZXR3b3Jr
U2VuZFF1ZXVlLmNwcCAqLywKKwkJCQk0MUU5RENFODIzMTlDQTc1MDBGMzU5NDkgLyogTmV0d29y
a1NlbmRRdWV1ZS5oICovLAorCQkJCTk3NkQ2Qzc1MTIyQjhBM0QwMDFGRDFGNyAvKiBUaHJlYWRh
YmxlQmxvYlJlZ2lzdHJ5LmNwcCAqLywKKwkJCQk5NzZENkM3NjEyMkI4QTNEMDAxRkQxRjcgLyog
VGhyZWFkYWJsZUJsb2JSZWdpc3RyeS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBmaWxlYXBpOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJOTdBQUJDRjcxNEZBMDlCNTAwNzQ1
N0FFIC8qIHdlYnNvY2tldHMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVu
ID0gKAorCQkJCUUzQkYxOUU0MjJBRjJGQ0YwMDlDOTkyNiAvKiBDbG9zZUV2ZW50LmNwcCAqLywK
KwkJCQk5N0FBQkNGODE0RkEwOUQ1MDA3NDU3QUUgLyogQ2xvc2VFdmVudC5oICovLAorCQkJCTk3
QUFCQ0Y5MTRGQTA5RDUwMDc0NTdBRSAvKiBDbG9zZUV2ZW50LmlkbCAqLywKKwkJCQk1QzY4OEFB
MDFEMzgwNTA5MDAwQjU0RkEgLyogVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuY3BwICovLAor
CQkJCTk3QUFCQ0ZDMTRGQTA5RDUwMDc0NTdBRSAvKiBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5l
bC5oICovLAorCQkJCTk3QUFCQ0ZEMTRGQTA5RDUwMDc0NTdBRSAvKiBUaHJlYWRhYmxlV2ViU29j
a2V0Q2hhbm5lbENsaWVudFdyYXBwZXIuY3BwICovLAorCQkJCTk3QUFCQ0ZFMTRGQTA5RDUwMDc0
NTdBRSAvKiBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbENsaWVudFdyYXBwZXIuaCAqLywKKwkJ
CQk5N0FBQkNGRjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0LmNwcCAqLywKKwkJCQk5N0FB
QkQwMDE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0LmggKi8sCisJCQkJOTdBQUJEMDExNEZB
MDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldC5pZGwgKi8sCisJCQkJOTdBQUJEMDIxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldENoYW5uZWwuY3BwICovLAorCQkJCTk3QUFCRDAzMTRGQTA5RDUw
MDc0NTdBRSAvKiBXZWJTb2NrZXRDaGFubmVsLmggKi8sCisJCQkJOTdBQUJEMDQxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldENoYW5uZWxDbGllbnQuaCAqLywKKwkJCQk0MTEwMEM3RjIzRjcz
QTU2MDAxQkMzM0IgLyogV2ViU29ja2V0Q2hhbm5lbEluc3BlY3Rvci5jcHAgKi8sCisJCQkJNDEx
MDBDN0UyM0Y3Mzk4MjAwMUJDMzNCIC8qIFdlYlNvY2tldENoYW5uZWxJbnNwZWN0b3IuaCAqLywK
KwkJCQk0QTM4QkY0RTE0RkUxQzA5MDA2MTI1MTIgLyogV2ViU29ja2V0RGVmbGF0ZUZyYW1lci5j
cHAgKi8sCisJCQkJNEEzOEJGNEYxNEZFMUMwOTAwNjEyNTEyIC8qIFdlYlNvY2tldERlZmxhdGVG
cmFtZXIuaCAqLywKKwkJCQk5N0FBQkQwNTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RGVm
bGF0ZXIuY3BwICovLAorCQkJCTk3QUFCRDA2MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRE
ZWZsYXRlci5oICovLAorCQkJCTk3QUFCRDA3MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRF
eHRlbnNpb25EaXNwYXRjaGVyLmNwcCAqLywKKwkJCQk5N0FBQkQwODE0RkEwOUQ1MDA3NDU3QUUg
LyogV2ViU29ja2V0RXh0ZW5zaW9uRGlzcGF0Y2hlci5oICovLAorCQkJCTRBNUEyQUQ5MTYxRTdF
MDAwMDU4ODlERCAvKiBXZWJTb2NrZXRFeHRlbnNpb25QYXJzZXIuY3BwICovLAorCQkJCTRBNUEy
QURBMTYxRTdFMDAwMDU4ODlERCAvKiBXZWJTb2NrZXRFeHRlbnNpb25QYXJzZXIuaCAqLywKKwkJ
CQk5N0FBQkQwOTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29y
LmggKi8sCisJCQkJQUFGNUI3QjExNTI0QjRCRDAwMDRDQjQ5IC8qIFdlYlNvY2tldEZyYW1lLmNw
cCAqLywKKwkJCQk5N0FBQkQwQTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RnJhbWUuaCAq
LywKKwkJCQk5N0FBQkQwQjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlLmNw
cCAqLywKKwkJCQk5N0FBQkQwQzE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtl
LmggKi8sCisJCQkJNDFFMTJFOUQyNEZFNzRFMjAwOTNGRkI0IC8qIFdlYlNvY2tldElkZW50aWZp
ZXIuaCAqLywKKwkJCQk5N0FBQkQxMTE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhyZWFkYWJs
ZVdlYlNvY2tldENoYW5uZWwuY3BwICovLAorCQkJCTk3QUFCRDEyMTRGQTA5RDUwMDc0NTdBRSAv
KiBXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5oICovLAorCQkJKTsKKwkJCXBhdGgg
PSB3ZWJzb2NrZXRzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJOTdCQzY5
RDUxNTA1RjA1NDAwMUI3NEFDIC8qIHdlYmRhdGFiYXNlICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0NjQyNDA0NDIwRUFGMEJEMDBCMjlGRDIgLyogY29j
b2EgKi8sCisJCQkJRkUzNkZEMTExNkM3ODI2NDAwRjg4N0MxIC8qIENoYW5nZVZlcnNpb25EYXRh
LmggKi8sCisJCQkJOTdCQzY5RDgxNTA1RjA3NjAwMUI3NEFDIC8qIENoYW5nZVZlcnNpb25XcmFw
cGVyLmNwcCAqLywKKwkJCQk5N0JDNjlEOTE1MDVGMDc2MDAxQjc0QUMgLyogQ2hhbmdlVmVyc2lv
bldyYXBwZXIuaCAqLywKKwkJCQk5N0JDNjlERTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2Uu
Y3BwICovLAorCQkJCTk3QkM2OURGMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5oICovLAor
CQkJCTk3QkM2OUUwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZS5pZGwgKi8sCisJCQkJOTdC
QzY5RTExNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQXV0aG9yaXplci5jcHAgKi8sCisJCQkJ
OTdCQzY5RTIxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQXV0aG9yaXplci5oICovLAorCQkJ
CTk3QkM2OUUzMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNhbGxiYWNrLmggKi8sCisJCQkJ
OTdCQzY5RTQxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ2FsbGJhY2suaWRsICovLAorCQkJ
CTk3QkM2OUU1MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNvbnRleHQuY3BwICovLAorCQkJ
CTk3QkM2OUU2MTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZUNvbnRleHQuaCAqLywKKwkJCQk5
N0JDNjlFNzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VEZXRhaWxzLmggKi8sCisJCQkJRkU0
NTZGMTYxNjc3RDc0RTAwNUVEREY5IC8qIERhdGFiYXNlTWFuYWdlci5jcHAgKi8sCisJCQkJRkU0
NTZGMTcxNjc3RDc0RTAwNUVEREY5IC8qIERhdGFiYXNlTWFuYWdlci5oICovLAorCQkJCTk3QkM2
OUYxMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZU1hbmFnZXJDbGllbnQuaCAqLywKKwkJCQk5
N0JDNjlFQjE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmNwcCAqLywKKwkJCQk5N0JD
NjlFQzE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUYXNrLmggKi8sCisJCQkJOTdCQzY5RUQx
NTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVGhyZWFkLmNwcCAqLywKKwkJCQk5N0JDNjlFRTE1
MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUaHJlYWQuaCAqLywKKwkJCQk5N0JDNjlFRjE1MDVG
MDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUcmFja2VyLmNwcCAqLywKKwkJCQk5N0JDNjlGMDE1MDVG
MDgxMDAxQjc0QUMgLyogRGF0YWJhc2VUcmFja2VyLmggKi8sCisJCQkJQThDQ0JCNEUxNTFGODM1
QTAwQUI3Q0U5IC8qIERPTVdpbmRvdytXZWJEYXRhYmFzZS5pZGwgKi8sCisJCQkJQThDQ0JCNDYx
NTFGODMxNjAwQUI3Q0U5IC8qIERPTVdpbmRvd1dlYkRhdGFiYXNlLmNwcCAqLywKKwkJCQlBOEND
QkI0NzE1MUY4MzE2MDBBQjdDRTkgLyogRE9NV2luZG93V2ViRGF0YWJhc2UuaCAqLywKKwkJCQlG
RTlFODlGOTE2RTJEQzA0MDBBOTA4RjggLyogT3JpZ2luTG9jay5jcHAgKi8sCisJCQkJRkU5RTg5
RkExNkUyREMwNDAwQTkwOEY4IC8qIE9yaWdpbkxvY2suaCAqLywKKwkJCQk5N0JDNjlGOTE1MDVG
MDgxMDAxQjc0QUMgLyogU1FMQ2FsbGJhY2tXcmFwcGVyLmggKi8sCisJCQkJOTdCQzY5RkExNTA1
RjA4MTAwMUI3NEFDIC8qIFNRTEVycm9yLmggKi8sCisJCQkJOTdCQzY5RkIxNTA1RjA4MTAwMUI3
NEFDIC8qIFNRTEVycm9yLmlkbCAqLywKKwkJCQk5N0JDNjlGRjE1MDVGMDgxMDAxQjc0QUMgLyog
U1FMUmVzdWx0U2V0LmNwcCAqLywKKwkJCQk5N0JDNkEwMDE1MDVGMDgxMDAxQjc0QUMgLyogU1FM
UmVzdWx0U2V0LmggKi8sCisJCQkJOTdCQzZBMDExNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFJlc3Vs
dFNldC5pZGwgKi8sCisJCQkJOTdCQzZBMDIxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFJlc3VsdFNl
dFJvd0xpc3QuY3BwICovLAorCQkJCTk3QkM2QTAzMTUwNUYwODEwMDFCNzRBQyAvKiBTUUxSZXN1
bHRTZXRSb3dMaXN0LmggKi8sCisJCQkJOTdCQzZBMDQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFJl
c3VsdFNldFJvd0xpc3QuaWRsICovLAorCQkJCUZFOEE2NzQ1MTZDREQxOUUwMDkzMEJGOCAvKiBT
UUxTdGF0ZW1lbnQuY3BwICovLAorCQkJCUZFOEE2NzQ2MTZDREQxOUUwMDkzMEJGOCAvKiBTUUxT
dGF0ZW1lbnQuaCAqLywKKwkJCQk5N0JDNkEwNzE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVt
ZW50Q2FsbGJhY2suaCAqLywKKwkJCQk5N0JDNkEwODE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3Rh
dGVtZW50Q2FsbGJhY2suaWRsICovLAorCQkJCTk3QkM2QTA5MTUwNUYwODEwMDFCNzRBQyAvKiBT
UUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmggKi8sCisJCQkJOTdCQzZBMEExNTA1RjA4MTAwMUI3
NEFDIC8qIFNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCTk3QkM2QTBEMTUw
NUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlvbi5jcHAgKi8sCisJCQkJOTdCQzZBMEUxNTA1
RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmggKi8sCisJCQkJOTdCQzZBMEYxNTA1RjA4
MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uLmlkbCAqLywKKwkJCQlGRUUxODExMTE2QzMxOUU4
MDAwODQ4NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmNwcCAqLywKKwkJCQlGRUUxODExMjE2
QzMxOUU4MDAwODQ4NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmggKi8sCisJCQkJOTdCQzZB
MTAxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2suaCAqLywKKwkJCQk5
N0JDNkExMTE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5pZGwgKi8s
CisJCQkJOTdCQzZBMTQxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uQ29vcmRpbmF0
b3IuY3BwICovLAorCQkJCTk3QkM2QTE1MTUwNUYwODEwMDFCNzRBQyAvKiBTUUxUcmFuc2FjdGlv
bkNvb3JkaW5hdG9yLmggKi8sCisJCQkJOTdCQzZBMTYxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRy
YW5zYWN0aW9uRXJyb3JDYWxsYmFjay5oICovLAorCQkJCTk3QkM2QTE3MTUwNUYwODEwMDFCNzRB
QyAvKiBTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaWRsICovLAorCQkJCUZFMzZGRDE0MTZD
NzgyNjQwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlLmggKi8sCisJCQkJRkUzNkZEMTIx
NkM3ODI2NDAwRjg4N0MxIC8qIFNRTFRyYW5zYWN0aW9uU3RhdGVNYWNoaW5lLmNwcCAqLywKKwkJ
CQlGRTM2RkQxMzE2Qzc4MjY0MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmUu
aCAqLywKKwkJCSk7CisJCQlwYXRoID0gd2ViZGF0YWJhc2U7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQk5N0MxRjU1MTEyMjg1NTg4MDBFREU2MTYgLyogcGFyc2VyICovID0g
eworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk5N0MxRjU1MjEyMjg1
NUNCMDBFREU2MTcgLyogQXRvbUhUTUxUb2tlbi5oICovLAorCQkJCTk3N0IzODQ5MTIyODgzRTkw
MEI4MUZGOCAvKiBDU1NQcmVsb2FkU2Nhbm5lci5jcHAgKi8sCisJCQkJOTc3QjM4NEExMjI4ODNF
OTAwQjgxRkY4IC8qIENTU1ByZWxvYWRTY2FubmVyLmggKi8sCisJCQkJRjRCMDAxODgyNkU3RjIx
RjAwNkVBQUJFIC8qIEhUTUxBdG9tU3RyaW5nQ2FjaGUuY3BwICovLAorCQkJCUY0QjAwMTg3MjZF
N0YyMUYwMDZFQUFCRSAvKiBIVE1MQXRvbVN0cmluZ0NhY2hlLmggKi8sCisJCQkJOTc3QjM4NEIx
MjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcCAqLywKKwkJCQk5NzdC
Mzg0QzEyMjg4M0U5MDBCODFGRjggLyogSFRNTENvbnN0cnVjdGlvblNpdGUuaCAqLywKKwkJCQk5
NzdCMzg0RDEyMjg4M0U5MDBCODFGRjggLyogSFRNTERvY3VtZW50UGFyc2VyLmNwcCAqLywKKwkJ
CQk5NzdCMzg0RTEyMjg4M0U5MDBCODFGRjggLyogSFRNTERvY3VtZW50UGFyc2VyLmggKi8sCisJ
CQkJOTc3QjM3MUYxMjI4NzIxNzAwQjgxRkY4IC8qIEhUTUxFbGVtZW50U3RhY2suY3BwICovLAor
CQkJCTk3N0IzNzIwMTIyODcyMTcwMEI4MUZGOCAvKiBIVE1MRWxlbWVudFN0YWNrLmggKi8sCisJ
CQkJOTc3QjM4NEYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRpdHlOYW1lcy5pbiAqLywKKwkJ
CQk5NzdCMzg1MDEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVudGl0eVBhcnNlci5jcHAgKi8sCisJ
CQkJOTc3QjM4NTExMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRpdHlQYXJzZXIuaCAqLywKKwkJ
CQk5NzdCMzg1MjEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVudGl0eVNlYXJjaC5jcHAgKi8sCisJ
CQkJOTc3QjM4NTMxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRpdHlTZWFyY2guaCAqLywKKwkJ
CQk5NzdCMzg1NDEyMjg4M0U5MDBCODFGRjggLyogSFRNTEVudGl0eVRhYmxlLmggKi8sCisJCQkJ
OTc3QjM4NTUxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxGb3JtYXR0aW5nRWxlbWVudExpc3QuY3Bw
ICovLAorCQkJCTk3N0IzODU2MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRm9ybWF0dGluZ0VsZW1l
bnRMaXN0LmggKi8sCisJCQkJOTdCQzg0OUExMjM3MEE0QjAwMEM2MTYxIC8qIEhUTUxJbnB1dFN0
cmVhbS5oICovLAorCQkJCTJCRThFMkM4MTJBNThBMDEwMEZBRDU1MCAvKiBIVE1MTWV0YUNoYXJz
ZXRQYXJzZXIuY3BwICovLAorCQkJCTJCRThFMkM2MTJBNTg5RUMwMEZBRDU1MCAvKiBIVE1MTWV0
YUNoYXJzZXRQYXJzZXIuaCAqLywKKwkJCQk5M0UyQTMwNDEyM0U5REMwMDA5RkUxMkEgLyogSFRN
TFBhcnNlcklkaW9tcy5jcHAgKi8sCisJCQkJOTNFMkEzMDUxMjNFOURDMDAwOUZFMTJBIC8qIEhU
TUxQYXJzZXJJZGlvbXMuaCAqLywKKwkJCQk5NzNGNDE4NzE2OUI5NUVGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuY3BwICovLAorCQkJCTk3M0Y0MTg4MTY5Qjk1RUYwMDA2QkY2MCAvKiBI
VE1MUGFyc2VyT3B0aW9ucy5oICovLAorCQkJCTk3N0IzODU3MTIyODgzRTkwMEI4MUZGOCAvKiBI
VE1MUGFyc2VyU2NoZWR1bGVyLmNwcCAqLywKKwkJCQk5NzdCMzg1ODEyMjg4M0U5MDBCODFGRjgg
LyogSFRNTFBhcnNlclNjaGVkdWxlci5oICovLAorCQkJCUJDNEE1MzMyMjU2MDU5ODMwMDI4QzU5
MiAvKiBIVE1MUGFyc2VyU2NyaXB0aW5nRmxhZ1BvbGljeS5oICovLAorCQkJCTk3N0IzODU5MTIy
ODgzRTkwMEI4MUZGOCAvKiBIVE1MUHJlbG9hZFNjYW5uZXIuY3BwICovLAorCQkJCTk3N0IzODVB
MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MUHJlbG9hZFNjYW5uZXIuaCAqLywKKwkJCQlBOEQyMjNG
QjE2QjUyRTRFMDAxNTcyODggLyogSFRNTFJlc291cmNlUHJlbG9hZGVyLmNwcCAqLywKKwkJCQlB
OEQyMjNGQzE2QjUyRTRFMDAxNTcyODggLyogSFRNTFJlc291cmNlUHJlbG9hZGVyLmggKi8sCisJ
CQkJOTc3QjM4NUIxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxTY3JpcHRSdW5uZXIuY3BwICovLAor
CQkJCTk3N0IzODVDMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MU2NyaXB0UnVubmVyLmggKi8sCisJ
CQkJOTc3QjM4NUQxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxTY3JpcHRSdW5uZXJIb3N0LmggKi8s
CisJCQkJOTc3RTJEQ0IxMkYwRTI4MzAwQzEzMzc5IC8qIEhUTUxTb3VyY2VUcmFja2VyLmNwcCAq
LywKKwkJCQk5NzdFMkRDQzEyRjBFMjgzMDBDMTMzNzkgLyogSFRNTFNvdXJjZVRyYWNrZXIuaCAq
LywKKwkJCQk1MzZENUExRTE5M0UxOEQwMDBDRTRDQUIgLyogSFRNTFNyY3NldFBhcnNlci5jcHAg
Ki8sCisJCQkJNTM2RDVBMUYxOTNFMThFOTAwQ0U0Q0FCIC8qIEhUTUxTcmNzZXRQYXJzZXIuaCAq
LywKKwkJCQk5N0MxRjU1MjEyMjg1NUNCMDBFREU2MTUgLyogSFRNTFN0YWNrSXRlbS5oICovLAor
CQkJCTk3QzFGNTUyMTIyODU1Q0IwMEVERTYxNiAvKiBIVE1MVG9rZW4uaCAqLywKKwkJCQk5NzdC
Mzg1RTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFRva2VuaXplci5jcHAgKi8sCisJCQkJOTc3QjM4
NUYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxUb2tlbml6ZXIuaCAqLywKKwkJCQk5NzdCMzcyMTEy
Mjg3MjE3MDBCODFGRjggLyogSFRNTFRyZWVCdWlsZGVyLmNwcCAqLywKKwkJCQk5NzdCMzcyMjEy
Mjg3MjE3MDBCODFGRjggLyogSFRNTFRyZWVCdWlsZGVyLmggKi8sCisJCQkJQTg4MDVBRjExNkM5
NkFFQTAwMEU5RDk4IC8qIElucHV0U3RyZWFtUHJlcHJvY2Vzc29yLmggKi8sCisJCQkJOEEzMDlD
OUUxMjM5NTBCRTAwQ0I5MjA0IC8qIE5lc3RpbmdMZXZlbEluY3JlbWVudGVyLmggKi8sCisJCQkJ
NTM2RDVBMjIxOTNFOEUwQzAwQ0U0Q0FCIC8qIFBhcnNpbmdVdGlsaXRpZXMuaCAqLywKKwkJCQk5
N0JDODQ4MTEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERvY3VtZW50UGFyc2VyLmNwcCAqLywKKwkJ
CQk5N0JDODQ4MjEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERvY3VtZW50UGFyc2VyLmggKi8sCisJ
CQkJOTc3RTJFMEIxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3IuY3BwICovLAorCQkJCTk3
N0UyRTBDMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRpdG9yLmggKi8sCisJCQkJOTc3RTJFMEIx
MkYwRkM5QzAwQzEzMzgwIC8qIFhTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHAgKi8sCisJCQkJOTc3RTJF
MEMxMkYwRkM5QzAwQzEzMzgwIC8qIFhTU0F1ZGl0b3JEZWxlZ2F0ZS5oICovLAorCQkJKTsKKwkJ
CXBhdGggPSBwYXJzZXI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk5OTZF
NTlEQTFERjAwRDQ1MDA2NjEyQjkgLyogd2ViZHJpdmVyICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk5OTZFNTlERDFERjAwRDkwMDA2NjEyQjkgLyogTmF2
aWdhdG9yK1dlYkRyaXZlci5pZGwgKi8sCisJCQkJOTk2RTU5REIxREYwMEQ5MDAwNjYxMkI5IC8q
IE5hdmlnYXRvcldlYkRyaXZlci5jcHAgKi8sCisJCQkJOTk2RTU5REMxREYwMEQ5MDAwNjYxMkI5
IC8qIE5hdmlnYXRvcldlYkRyaXZlci5oICovLAorCQkJKTsKKwkJCXBhdGggPSB3ZWJkcml2ZXI7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQk5OUU0NUExMzE4QTAyMTc2MDAy
NkQ4OEYgLyogcmVwbGF5ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9
ICgKKwkJCQk5OTIwMzk4MDE4Qjk1QkM2MDBCMzlBRjkgLyogVXNlcklucHV0QnJpZGdlLmNwcCAq
LywKKwkJCQk5OTIwMzk4MTE4Qjk1QkM2MDBCMzlBRjkgLyogVXNlcklucHV0QnJpZGdlLmggKi8s
CisJCQkpOworCQkJcGF0aCA9IHJlcGxheTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJ
CX07CisJCTlBQzZGMDIwMjExNDhGMUUwMENCREEwNiAvKiBtZWRpYWNhcGFiaWxpdGllcyAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQ0RCRDNEMkIxRkU4
NUNCQjAwMTJDNTQ1IC8qIEF1ZGlvQ29uZmlndXJhdGlvbi5oICovLAorCQkJCUNENEU0RTlCMjM1
N0NCOUQwMDc4OTVDMyAvKiBDb2xvckdhbXV0LmggKi8sCisJCQkJQ0Q0RTRFOUMyMzU3Q0I5RDAw
Nzg5NUMzIC8qIEhkck1ldGFkYXRhVHlwZS5oICovLAorCQkJCUNEQ0M5QkNFMjIzODdFOUEwMEZG
QjUxQyAvKiBNZWRpYUNhcGFiaWxpdGllc0RlY29kaW5nSW5mby5oICovLAorCQkJCUNEQ0M5QkQw
MjIzODdFQUEwMEZGQjUxQyAvKiBNZWRpYUNhcGFiaWxpdGllc0VuY29kaW5nSW5mby5oICovLAor
CQkJCUNEMEM4QjU4MjE0MUM4Q0EwMDYyRjU5RCAvKiBNZWRpYUNhcGFiaWxpdGllc0luZm8uaCAq
LywKKwkJCQlDRDMwQjI4NzIzQTE3M0FBMDBENzQ4OEIgLyogTWVkaWFDYXBhYmlsaXRpZXNMb2dn
aW5nLmNwcCAqLywKKwkJCQlDRDMwQjI4NjIzQTE3M0FBMDBENzQ4OEIgLyogTWVkaWFDYXBhYmls
aXRpZXNMb2dnaW5nLmggKi8sCisJCQkJQ0RCRDNEMzUxRkU4NUNCRjAwMTJDNTQ1IC8qIE1lZGlh
Q29uZmlndXJhdGlvbi5oICovLAorCQkJCUNEQkQzRDM2MUZFODVDQzAwMDEyQzU0NSAvKiBNZWRp
YURlY29kaW5nQ29uZmlndXJhdGlvbi5oICovLAorCQkJCUNEQkQzRDM4MUZFODVDQzAwMDEyQzU0
NSAvKiBNZWRpYURlY29kaW5nVHlwZS5oICovLAorCQkJCUNEQkQzRDM3MUZFODVDQzAwMDEyQzU0
NSAvKiBNZWRpYUVuY29kaW5nQ29uZmlndXJhdGlvbi5oICovLAorCQkJCUNEQkQzRDNFMUZFODVD
QzMwMDEyQzU0NSAvKiBNZWRpYUVuY29kaW5nVHlwZS5oICovLAorCQkJCTlBQzZGMDIyMjExNDhG
NTEwMENCREEwNiAvKiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5LmNwcCAqLywKKwkJ
CQk5QUM2RjAyNTIxMTQ4RjU0MDBDQkRBMDYgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFj
dG9yeS5oICovLAorCQkJCUNENEU0RTlBMjM1N0NCOUMwMDc4OTVDMyAvKiBUcmFuc2ZlckZ1bmN0
aW9uLmggKi8sCisJCQkJQ0RCRDNEMzQxRkU4NUNCRjAwMTJDNTQ1IC8qIFZpZGVvQ29uZmlndXJh
dGlvbi5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBtZWRpYWNhcGFiaWxpdGllczsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUExNDgzMjhCMTg3RjUwNjgwMERBNjNBNiAvKiB3
YWsgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUZFNjk5
ODZGMTkyMDg3RTcwMDY5MzZCRCAvKiBGbG9hdGluZ1BvaW50RW52aXJvbm1lbnQuY3BwICovLAor
CQkJCUZFNjk5ODcwMTkyMDg3RTcwMDY5MzZCRCAvKiBGbG9hdGluZ1BvaW50RW52aXJvbm1lbnQu
aCAqLywKKwkJCQlBMTQ4MzI4QzE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQXBwS2l0U3R1YnMuaCAq
LywKKwkJCQlBMTQ4MzI4RDE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQXBwS2l0U3R1YnMubSAqLywK
KwkJCQlBMTQ4MzI4RTE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQ2xpcFZpZXcuaCAqLywKKwkJCQlB
MTQ4MzI4RjE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLQ2xpcFZpZXcubSAqLywKKwkJCQlBMTQ4MzI5
MDE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLUmVzcG9uZGVyLmggKi8sCisJCQkJQTE0ODMyOTExODdG
NTA4NzAwREE2M0E2IC8qIFdBS1Jlc3BvbmRlci5tICovLAorCQkJCUExNDgzMjkyMTg3RjUwODcw
MERBNjNBNiAvKiBXQUtTY3JvbGxWaWV3LmggKi8sCisJCQkJQTE0ODMyOTMxODdGNTA4NzAwREE2
M0E2IC8qIFdBS1Njcm9sbFZpZXcubW0gKi8sCisJCQkJQTE0ODMyOTQxODdGNTA4NzAwREE2M0E2
IC8qIFdBS1ZpZXcuaCAqLywKKwkJCQlBMTQ4MzI5NTE4N0Y1MDg3MDBEQTYzQTYgLyogV0FLVmll
dy5tbSAqLywKKwkJCQkxQTg3NEFERTE5MDg1RTkxMDBCMDMxNzEgLyogV0FLVmlld0ludGVybmFs
LmggKi8sCisJCQkJQTE0ODMyOTcxODdGNTA4NzAwREE2M0E2IC8qIFdBS1dpbmRvdy5oICovLAor
CQkJCUExNDgzMjk4MTg3RjUwODcwMERBNjNBNiAvKiBXQUtXaW5kb3cubW0gKi8sCisJCQkJQTE0
ODMyOTkxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWQuaCAqLywKKwkJCQlBMTQ4MzI5
QTE4N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZC5tbSAqLywKKwkJCQlBMTQ4MzI5QjE4
N0Y1MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZEludGVybmFsLmggKi8sCisJCQkJQTE0ODMy
OUMxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRNZXNzYWdlLmggKi8sCisJCQkJQTE0
ODMyOUQxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRSdW4uY3BwICovLAorCQkJCUEx
NDgzMjlFMTg3RjUwODcwMERBNjNBNiAvKiBXZWJDb3JlVGhyZWFkUnVuLmggKi8sCisJCQkJQTE0
ODMyQTAxODdGNTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuY3Bw
ICovLAorCQkJCUExNDgzMkExMTg3RjUwODcwMERBNjNBNiAvKiBXZWJDb3JlVGhyZWFkU3lzdGVt
SW50ZXJmYWNlLmggKi8sCisJCQkJQTE0ODMyQTMxODdGNTA4NzAwREE2M0E2IC8qIFdLQ29udGVu
dE9ic2VydmF0aW9uLmggKi8sCisJCQkJQTE0ODMyQTQxODdGNTA4NzAwREE2M0E2IC8qIFdLR3Jh
cGhpY3MuaCAqLywKKwkJCQlBMTQ4MzJBNTE4N0Y1MDg3MDBEQTYzQTYgLyogV0tHcmFwaGljcy5t
bSAqLywKKwkJCQlBMTQ4MzJBNjE4N0Y1MDg3MDBEQTYzQTYgLyogV0tUeXBlcy5oICovLAorCQkJ
CUExNDgzMkE3MTg3RjUwODcwMERBNjNBNiAvKiBXS1V0aWxpdGllcy5jICovLAorCQkJCUExNDgz
MkE4MTg3RjUwODcwMERBNjNBNiAvKiBXS1V0aWxpdGllcy5oICovLAorCQkJCUExNDgzMkE5MTg3
RjUwODcwMERBNjNBNiAvKiBXS1ZpZXcuaCAqLywKKwkJCQlBMTQ4MzJBQTE4N0Y1MDg3MDBEQTYz
QTYgLyogV0tWaWV3Lm1tICovLAorCQkJCUExNDgzMkFCMTg3RjUwODcwMERBNjNBNiAvKiBXS1Zp
ZXdQcml2YXRlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHdhazsKKwkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CisJCX07CisJCUExNUUzMUYwMUUwQ0IwNzUwMDRCMzcxQyAvKiBpb3MgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExODVCNDI4MUU4MjEx
QTEwMERDOTExOCAvKiBMZWdhY3lQcmV2aWV3TG9hZGVyLmggKi8sCisJCQkJQTE4NUI0MjcxRTgy
MTFBMTAwREM5MTE4IC8qIExlZ2FjeVByZXZpZXdMb2FkZXIubW0gKi8sCisJCQkpOworCQkJcGF0
aCA9IGlvczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUExNzYzRjNCMUUy
MDUxQUIwMDFENThERSAvKiBjb2NvYSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJQTE3NjNGM0QxRTIwNTIzNDAwMUQ1OERFIC8qIFdlYkFyY2hpdmVEdW1w
U3VwcG9ydC5oICovLAorCQkJCUExNzYzRjNDMUUyMDUyMzQwMDFENThERSAvKiBXZWJBcmNoaXZl
RHVtcFN1cHBvcnQubW0gKi8sCisJCQkJMkQ3REEwRUYyNDM1RUIxNzAwRjA0OEQxIC8qIFdlYlZp
ZXdWaXN1YWxJZGVudGlmaWNhdGlvbk92ZXJsYXkuaCAqLywKKwkJCQkyRDdEQTBGMTI0MzVFQjE4
MDBGMDQ4RDEgLyogV2ViVmlld1Zpc3VhbElkZW50aWZpY2F0aW9uT3ZlcmxheS5tbSAqLywKKwkJ
CSk7CisJCQlwYXRoID0gY29jb2E7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9Owor
CQlBMUNDNTY0QTFGNDYxM0JCMDBBNDU1NUIgLyogUGF5bWVudFJlcXVlc3QgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExNjc3RTEyMjEzRTAzQzYwMEEw
OEMzNCAvKiBKU0FkZHJlc3NFcnJvcnMuY3BwICovLAorCQkJCUExNjc3RTExMjEzRTAzQzUwMEEw
OEMzNCAvKiBKU0FkZHJlc3NFcnJvcnMuaCAqLywKKwkJCQlBMTFBRTBEMDFGRkQ2MURFMDA0NzM0
OEIgLyogSlNNZXJjaGFudFZhbGlkYXRpb25FdmVudC5jcHAgKi8sCisJCQkJQTExQUUwRDExRkZE
NjFERjAwNDczNDhCIC8qIEpTTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaCAqLywKKwkJCQlBMTY3
N0UxNjIxM0UwM0YwMDBBMDhDMzQgLyogSlNQYXllckVycm9yRmllbGRzLmNwcCAqLywKKwkJCQlB
MTY3N0UxNTIxM0UwM0YwMDBBMDhDMzQgLyogSlNQYXllckVycm9yRmllbGRzLmggKi8sCisJCQkJ
QTFDQzU2NUYxRjQ2MTQ2MTAwQTQ1NTVCIC8qIEpTUGF5bWVudEFkZHJlc3MuY3BwICovLAorCQkJ
CUExQ0M1NjY1MUY0NjE0NjgwMEE0NTU1QiAvKiBKU1BheW1lbnRBZGRyZXNzLmggKi8sCisJCQkJ
QTFDQzU2NjAxRjQ2MTQ2MjAwQTQ1NTVCIC8qIEpTUGF5bWVudENvbXBsZXRlLmNwcCAqLywKKwkJ
CQlBMUNDNTY0RTFGNDYxNDUyMDBBNDU1NUIgLyogSlNQYXltZW50Q29tcGxldGUuaCAqLywKKwkJ
CQlBMUNDNTY1RDFGNDYxNDYwMDBBNDU1NUIgLyogSlNQYXltZW50Q3VycmVuY3lBbW91bnQuY3Bw
ICovLAorCQkJCUExQ0M1NjYzMUY0NjE0NjYwMEE0NTU1QiAvKiBKU1BheW1lbnRDdXJyZW5jeUFt
b3VudC5oICovLAorCQkJCUExQ0M1NjU2MUY0NjE0NTkwMEE0NTU1QiAvKiBKU1BheW1lbnREZXRh
aWxzQmFzZS5jcHAgKi8sCisJCQkJQTFDQzU2NTExRjQ2MTQ1NDAwQTQ1NTVCIC8qIEpTUGF5bWVu
dERldGFpbHNCYXNlLmggKi8sCisJCQkJQTFDQzU2NTUxRjQ2MTQ1ODAwQTQ1NTVCIC8qIEpTUGF5
bWVudERldGFpbHNJbml0LmNwcCAqLywKKwkJCQlBMUNDNTY1QTFGNDYxNDVEMDBBNDU1NUIgLyog
SlNQYXltZW50RGV0YWlsc0luaXQuaCAqLywKKwkJCQlBMUNDNTY1MjFGNDYxNDU1MDBBNDU1NUIg
LyogSlNQYXltZW50RGV0YWlsc01vZGlmaWVyLmNwcCAqLywKKwkJCQlBMUNDNTY1QjFGNDYxNDVF
MDBBNDU1NUIgLyogSlNQYXltZW50RGV0YWlsc01vZGlmaWVyLmggKi8sCisJCQkJQTFGNjAwNEYx
RjQ3NjRGRDAwNzdFODNGIC8qIEpTUGF5bWVudERldGFpbHNVcGRhdGUuY3BwICovLAorCQkJCUEx
RjYwMDU0MUY0NzY1MDQwMDc3RTgzRiAvKiBKU1BheW1lbnREZXRhaWxzVXBkYXRlLmggKi8sCisJ
CQkJQTFDQzU2NjIxRjQ2MTQ2NTAwQTQ1NTVCIC8qIEpTUGF5bWVudEl0ZW0uY3BwICovLAorCQkJ
CUExQ0M1NjRGMUY0NjE0NTIwMEE0NTU1QiAvKiBKU1BheW1lbnRJdGVtLmggKi8sCisJCQkJQTE2
NEEyNTMyMTM0QzFDQjAwNTA5MTU2IC8qIEpTUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50LmNwcCAq
LywKKwkJCQlBMTY0QTI1MTIxMzRDMUNCMDA1MDkxNTYgLyogSlNQYXltZW50TWV0aG9kQ2hhbmdl
RXZlbnQuaCAqLywKKwkJCQlBMUNDNTY0RDFGNDYxNDUxMDBBNDU1NUIgLyogSlNQYXltZW50TWV0
aG9kRGF0YS5jcHAgKi8sCisJCQkJQTFDQzU2NEMxRjQ2MTQ1MDAwQTQ1NTVCIC8qIEpTUGF5bWVu
dE1ldGhvZERhdGEuaCAqLywKKwkJCQlBMUNDNTY1MzFGNDYxNDU2MDBBNDU1NUIgLyogSlNQYXlt
ZW50T3B0aW9ucy5jcHAgKi8sCisJCQkJQTFDQzU2NUMxRjQ2MTQ1RjAwQTQ1NTVCIC8qIEpTUGF5
bWVudE9wdGlvbnMuaCAqLywKKwkJCQlBMUNDNTY1NDFGNDYxNDU3MDBBNDU1NUIgLyogSlNQYXlt
ZW50UmVxdWVzdC5jcHAgKi8sCisJCQkJQTFDQzU2NTcxRjQ2MTQ1QTAwQTQ1NTVCIC8qIEpTUGF5
bWVudFJlcXVlc3QuaCAqLywKKwkJCQlBMUY2MDA1MTFGNDc2NTAwMDA3N0U4M0YgLyogSlNQYXlt
ZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmNwcCAqLywKKwkJCQlBMUY2MDA1MjFGNDc2NTAxMDA3N0U4
M0YgLyogSlNQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmggKi8sCisJCQkJQTFGNjAwNTMxRjQ3
NjUwMjAwNzdFODNGIC8qIEpTUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudEluaXQuY3BwICovLAor
CQkJCUExRjYwMDUwMUY0NzY0RkUwMDc3RTgzRiAvKiBKU1BheW1lbnRSZXF1ZXN0VXBkYXRlRXZl
bnRJbml0LmggKi8sCisJCQkJQTFDQzU2NTgxRjQ2MTQ1QjAwQTQ1NTVCIC8qIEpTUGF5bWVudFJl
c3BvbnNlLmNwcCAqLywKKwkJCQlBMUNDNTY2NDFGNDYxNDY3MDBBNDU1NUIgLyogSlNQYXltZW50
UmVzcG9uc2UuaCAqLywKKwkJCQlBMUNDNTY2MTFGNDYxNDY0MDBBNDU1NUIgLyogSlNQYXltZW50
U2hpcHBpbmdPcHRpb24uY3BwICovLAorCQkJCUExQ0M1NjU5MUY0NjE0NUMwMEE0NTU1QiAvKiBK
U1BheW1lbnRTaGlwcGluZ09wdGlvbi5oICovLAorCQkJCUExQ0M1NjVFMUY0NjE0NjEwMEE0NTU1
QiAvKiBKU1BheW1lbnRTaGlwcGluZ1R5cGUuY3BwICovLAorCQkJCUExQ0M1NjUwMUY0NjE0NTMw
MEE0NTU1QiAvKiBKU1BheW1lbnRTaGlwcGluZ1R5cGUuaCAqLywKKwkJCQlBMTY3N0UwMjIxM0Uw
MUM2MDBBMDhDMzQgLyogSlNQYXltZW50VmFsaWRhdGlvbkVycm9ycy5jcHAgKi8sCisJCQkJQTE2
NzdFMDEyMTNFMDFDNTAwQTA4QzM0IC8qIEpTUGF5bWVudFZhbGlkYXRpb25FcnJvcnMuaCAqLywK
KwkJCSk7CisJCQluYW1lID0gUGF5bWVudFJlcXVlc3Q7CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQl9OworCQlBMURGNUE5RjFGN0VFMEYxMDA1OEE0NzcgLyogcGF5bWVudHJlcXVlc3Qg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExRjZDRkZD
MUZFMDk2MjEwMDE4MDc4QyAvKiBBcHBsZVBheU1vZGlmaWVyLmggKi8sCisJCQkJQTFGNkNGRkUx
RkUwOTYyMTAwMTgwNzhDIC8qIEFwcGxlUGF5TW9kaWZpZXIuaWRsICovLAorCQkJCUExREY1QUEx
MUY3RUUxMTMwMDU4QTQ3NyAvKiBBcHBsZVBheVBheW1lbnRIYW5kbGVyLmNwcCAqLywKKwkJCQlB
MURGNUFBMDFGN0VFMTEzMDA1OEE0NzcgLyogQXBwbGVQYXlQYXltZW50SGFuZGxlci5oICovLAor
CQkJCUExREY1QTdDMUY3RUJEMEIwMDU4QTQ3NyAvKiBBcHBsZVBheVJlcXVlc3QuaCAqLywKKwkJ
CQlBMURGNUE3RTFGN0VCRDBCMDA1OEE0NzcgLyogQXBwbGVQYXlSZXF1ZXN0LmlkbCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gcGF5bWVudHJlcXVlc3Q7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQlBMUY3NkIwRTFGNDRDMENGMDAxNEMzMTggLyogcGF5bWVudHJlcXVlc3QgKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExNjc3RTBCMjEz
RTAyQTAwMEEwOEMzNCAvKiBBZGRyZXNzRXJyb3JzLmggKi8sCisJCQkJQTE2NzdFMEQyMTNFMDJB
MDAwQTA4QzM0IC8qIEFkZHJlc3NFcnJvcnMuaWRsICovLAorCQkJCUExMUFFMENBMUZGRDYwNTMw
MDQ3MzQ4QiAvKiBNZXJjaGFudFZhbGlkYXRpb25FdmVudC5jcHAgKi8sCisJCQkJQTExQUUwQzkx
RkZENjA1MzAwNDczNDhCIC8qIE1lcmNoYW50VmFsaWRhdGlvbkV2ZW50LmggKi8sCisJCQkJQTEx
QUUwQ0IxRkZENjA1MzAwNDczNDhCIC8qIE1lcmNoYW50VmFsaWRhdGlvbkV2ZW50LmlkbCAqLywK
KwkJCQlBMTY3N0UwNTIxM0UwMjRDMDBBMDhDMzQgLyogUGF5ZXJFcnJvckZpZWxkcy5oICovLAor
CQkJCUExNjc3RTA3MjEzRTAyNEMwMEEwOEMzNCAvKiBQYXllckVycm9yRmllbGRzLmlkbCAqLywK
KwkJCQlBMUNGRTAzMTFGOUU3MTI5MDA2NUMzNDUgLyogUGF5bWVudEFkZHJlc3MuY3BwICovLAor
CQkJCUExRjc2QjQwMUY0NENGN0YwMDE0QzMxOCAvKiBQYXltZW50QWRkcmVzcy5oICovLAorCQkJ
CUExRjc2QjQyMUY0NENGN0YwMDE0QzMxOCAvKiBQYXltZW50QWRkcmVzcy5pZGwgKi8sCisJCQkJ
QTFGNzZCNTgxRjQ0RDNCMjAwMTRDMzE4IC8qIFBheW1lbnRDb21wbGV0ZS5oICovLAorCQkJCUEx
Rjc2QjVBMUY0NEQzQjIwMDE0QzMxOCAvKiBQYXltZW50Q29tcGxldGUuaWRsICovLAorCQkJCUEx
Rjc2QjM0MUY0NEM2MEYwMDE0QzMxOCAvKiBQYXltZW50Q3VycmVuY3lBbW91bnQuaCAqLywKKwkJ
CQlBMUY3NkIzNjFGNDRDNjBGMDAxNEMzMTggLyogUGF5bWVudEN1cnJlbmN5QW1vdW50LmlkbCAq
LywKKwkJCQlBMUY3NkIxQzFGNDRDM0ZFMDAxNEMzMTggLyogUGF5bWVudERldGFpbHNCYXNlLmgg
Ki8sCisJCQkJQTFGNzZCMUUxRjQ0QzNGRTAwMTRDMzE4IC8qIFBheW1lbnREZXRhaWxzQmFzZS5p
ZGwgKi8sCisJCQkJQTFGNzZCMjIxRjQ0QzQ5MTAwMTRDMzE4IC8qIFBheW1lbnREZXRhaWxzSW5p
dC5oICovLAorCQkJCUExRjc2QjI0MUY0NEM0OTEwMDE0QzMxOCAvKiBQYXltZW50RGV0YWlsc0lu
aXQuaWRsICovLAorCQkJCUExRjc2QjRDMUY0NEQyNDIwMDE0QzMxOCAvKiBQYXltZW50RGV0YWls
c01vZGlmaWVyLmggKi8sCisJCQkJQTFGNzZCNEUxRjQ0RDI0MjAwMTRDMzE4IC8qIFBheW1lbnRE
ZXRhaWxzTW9kaWZpZXIuaWRsICovLAorCQkJCUExRjYwMDQ3MUY0NzU5NEUwMDc3RTgzRiAvKiBQ
YXltZW50RGV0YWlsc1VwZGF0ZS5oICovLAorCQkJCUExRjYwMDQ4MUY0NzU5NEUwMDc3RTgzRiAv
KiBQYXltZW50RGV0YWlsc1VwZGF0ZS5pZGwgKi8sCisJCQkJQTFERjVBQTUxRjdGNjRCQjAwNThB
NDc3IC8qIFBheW1lbnRIYW5kbGVyLmNwcCAqLywKKwkJCQlBMURGNUFBNDFGN0Y2NEJCMDA1OEE0
NzcgLyogUGF5bWVudEhhbmRsZXIuaCAqLywKKwkJCQlBMUY3NkIyRTFGNDRDNTVBMDAxNEMzMTgg
LyogUGF5bWVudEl0ZW0uaCAqLywKKwkJCQlBMUY3NkIzMDFGNDRDNTVBMDAxNEMzMTggLyogUGF5
bWVudEl0ZW0uaWRsICovLAorCQkJCUExNjRBMjQ1MjEzNEJDNzEwMDUwOTE1NiAvKiBQYXltZW50
TWV0aG9kQ2hhbmdlRXZlbnQuY3BwICovLAorCQkJCUExNjRBMjQ0MjEzNEJDNzEwMDUwOTE1NiAv
KiBQYXltZW50TWV0aG9kQ2hhbmdlRXZlbnQuaCAqLywKKwkJCQlBMTY0QTI0NjIxMzRCQzcxMDA1
MDkxNTYgLyogUGF5bWVudE1ldGhvZENoYW5nZUV2ZW50LmlkbCAqLywKKwkJCQlBMUY3NkIxNjFG
NDRDMzkwMDAxNEMzMTggLyogUGF5bWVudE1ldGhvZERhdGEuaCAqLywKKwkJCQlBMUY3NkIxODFG
NDRDMzkwMDAxNEMzMTggLyogUGF5bWVudE1ldGhvZERhdGEuaWRsICovLAorCQkJCUExRjc2QjI4
MUY0NEM0RUYwMDE0QzMxOCAvKiBQYXltZW50T3B0aW9ucy5oICovLAorCQkJCUExRjc2QjJBMUY0
NEM0RUYwMDE0QzMxOCAvKiBQYXltZW50T3B0aW9ucy5pZGwgKi8sCisJCQkJQTFGNzZCMTExRjQ0
QzI0NTAwMTRDMzE4IC8qIFBheW1lbnRSZXF1ZXN0LmNwcCAqLywKKwkJCQlBMUY3NkIxMDFGNDRD
MjQ1MDAxNEMzMTggLyogUGF5bWVudFJlcXVlc3QuaCAqLywKKwkJCQlBMUY3NkIxMjFGNDRDMjQ1
MDAxNEMzMTggLyogUGF5bWVudFJlcXVlc3QuaWRsICovLAorCQkJCUExRjYwMDQyMUY0NzU3QTkw
MDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmNwcCAqLywKKwkJCQlBMUY2MDA0
MTFGNDc1N0E5MDA3N0U4M0YgLyogUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudC5oICovLAorCQkJ
CUExRjYwMDQzMUY0NzU3QTkwMDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50Lmlk
bCAqLywKKwkJCQlBMUY2MDA0QjFGNDc1QTVFMDA3N0U4M0YgLyogUGF5bWVudFJlcXVlc3RVcGRh
dGVFdmVudEluaXQuaCAqLywKKwkJCQlBMUY2MDA0QzFGNDc1QTVFMDA3N0U4M0YgLyogUGF5bWVu
dFJlcXVlc3RVcGRhdGVFdmVudEluaXQuaWRsICovLAorCQkJCTk1NjJFRUQ5MjVGMThERTUwMDMz
NDQ0MiAvKiBQYXltZW50UmVxdWVzdFV0aWxpdGllcy5jcHAgKi8sCisJCQkJOTU2MkVFREIyNUYx
OERFNjAwMzM0NDQyIC8qIFBheW1lbnRSZXF1ZXN0VXRpbGl0aWVzLmggKi8sCisJCQkJQTFGNzZC
M0IxRjQ0Q0YyNDAwMTRDMzE4IC8qIFBheW1lbnRSZXNwb25zZS5jcHAgKi8sCisJCQkJQTFGNzZC
M0ExRjQ0Q0YyNDAwMTRDMzE4IC8qIFBheW1lbnRSZXNwb25zZS5oICovLAorCQkJCUExRjc2QjND
MUY0NENGMjQwMDE0QzMxOCAvKiBQYXltZW50UmVzcG9uc2UuaWRsICovLAorCQkJCUExN0ZFRTYz
MUY4ODkzMjIwMDIxRTgxMSAvKiBQYXltZW50U2Vzc2lvbkJhc2UuaCAqLywKKwkJCQlBMUY3NkI1
MjFGNDREMkM3MDAxNEMzMTggLyogUGF5bWVudFNoaXBwaW5nT3B0aW9uLmggKi8sCisJCQkJQTFG
NzZCNTQxRjQ0RDJDNzAwMTRDMzE4IC8qIFBheW1lbnRTaGlwcGluZ09wdGlvbi5pZGwgKi8sCisJ
CQkJQTFGNzZCNDYxRjQ0RDA3QTAwMTRDMzE4IC8qIFBheW1lbnRTaGlwcGluZ1R5cGUuaCAqLywK
KwkJCQlBMUY3NkI0ODFGNDREMDdBMDAxNEMzMTggLyogUGF5bWVudFNoaXBwaW5nVHlwZS5pZGwg
Ki8sCisJCQkJQTE2NzdERkEyMTNFMDA2NjAwQTA4QzM0IC8qIFBheW1lbnRWYWxpZGF0aW9uRXJy
b3JzLmggKi8sCisJCQkJQTE2NzdERkMyMTNFMDA2NjAwQTA4QzM0IC8qIFBheW1lbnRWYWxpZGF0
aW9uRXJyb3JzLmlkbCAqLywKKwkJCSk7CisJCQlwYXRoID0gcGF5bWVudHJlcXVlc3Q7CisJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlBNTE2RThCMjEzNkUwNEMwMDA3NkMzQzAg
LyogaW9zICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlB
MUY1NURCRjFGNTREMkQ2MDBFREI3NUYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnlJT1MubW0gKi8s
CisJCQkpOworCQkJcGF0aCA9IGlvczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07
CisJCUE1OUUzQzFCMTE1ODBGMzQwMDcyOTI4RSAvKiBpb3MgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUExNDgzMjhCMTg3RjUwNjgwMERBNjNBNiAvKiB3
YWsgKi8sCisJCQkJRjQ4MjIzMTIxRTM4NkUyNDAwNjZGQzc5IC8qIEFic3RyYWN0UGFzdGVib2Fy
ZC5oICovLAorCQkJCUNFNTE2OUU1MjFGMUI4NDcwMEVBNEY3OCAvKiBDb2xvcklPUy5oICovLAor
CQkJCUNFNTE2OUU2MjFGMUI4NDcwMEVBNEY3OCAvKiBDb2xvcklPUy5tbSAqLywKKwkJCQlBMUVE
Nzc4QTFCRTMyOTNGMDBEQzE3OTEgLyogRGV2aWNlLmNwcCAqLywKKwkJCQlBMUVENzc4QjFCRTMy
OTQwMDBEQzE3OTEgLyogRGV2aWNlLmggKi8sCisJCQkJMzFFQUY5N0MxMjE0MzVBNDAwRTdDMUJG
IC8qIERldmljZU1vdGlvbkNsaWVudElPUy5oICovLAorCQkJCTMxRUFGOTdEMTIxNDM1QTQwMEU3
QzFCRiAvKiBEZXZpY2VNb3Rpb25DbGllbnRJT1MubW0gKi8sCisJCQkJMzE0MDM3OTkxMjRCRUE3
RjAwQUY0MEU0IC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmggKi8sCisJCQkJMzE0MDM3
OUExMjRCRUE3RjAwQUY0MEU0IC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLm1tICovLAor
CQkJCUUzOTYyOEJEMjM5NTcyOEUwMDY1OEVDRCAvKiBEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVBy
b3ZpZGVyLmggKi8sCisJCQkJMEZEQTdDMjIxODgzMzBBOTAwQzk1NEI1IC8qIERyYWdJbWFnZUlP
Uy5tbSAqLywKKwkJCQkyNjU1NDEzNzE0ODk4MTFDMDAwREZDNUQgLyogS2V5RXZlbnRDb2Rlc0lP
Uy5oICovLAorCQkJCTI2NTU0MTM4MTQ4OTgxMUMwMDBERkM1RCAvKiBLZXlFdmVudElPUy5tbSAq
LywKKwkJCQlFNEMzQjFGOTBGMEU0MTYxMDA5NjkzRjYgLyogTGVnYWN5VGlsZUNhY2hlLmggKi8s
CisJCQkJRTRDM0IxRkIwRjBFNDE3MDAwOTY5M0Y2IC8qIExlZ2FjeVRpbGVDYWNoZS5tbSAqLywK
KwkJCQlFNEI2NUE1NzEzMkZBOEU3MDA3MEU3QkUgLyogTGVnYWN5VGlsZUdyaWQuaCAqLywKKwkJ
CQlFNEI2NUE1OTEzMkZBQUY5MDA3MEU3QkUgLyogTGVnYWN5VGlsZUdyaWQubW0gKi8sCisJCQkJ
RTQyNEEzOUQxMzMwREYwMTAwQ0Y2REM5IC8qIExlZ2FjeVRpbGVHcmlkVGlsZS5oICovLAorCQkJ
CUU0MjRBMzlGMTMzMERGMUUwMENGNkRDOSAvKiBMZWdhY3lUaWxlR3JpZFRpbGUubW0gKi8sCisJ
CQkJRTRCNjVBNUIxMzJGQUNCMDAwNzBFN0JFIC8qIExlZ2FjeVRpbGVMYXllci5oICovLAorCQkJ
CUU0QjY1QTVEMTMyRkFEQjYwMDcwRTdCRSAvKiBMZWdhY3lUaWxlTGF5ZXIubW0gKi8sCisJCQkJ
RTRFMzlBRkExMzMwRUZBODAwM0FCMjc0IC8qIExlZ2FjeVRpbGVMYXllclBvb2wuaCAqLywKKwkJ
CQlFNEUzOUFGQzEzMzBFRkM1MDAzQUIyNzQgLyogTGVnYWN5VGlsZUxheWVyUG9vbC5tbSAqLywK
KwkJCQk0NENBMjg0MzI0NUZDQTUwMDBDOTRDN0YgLyogTG9jYWxDdXJyZW50R3JhcGhpY3NDb250
ZXh0SU9TLm1tICovLAorCQkJCTFDNDNERTY4MjJBQjRCOEEwMDE1MjdEOSAvKiBMb2NhbEN1cnJl
bnRUcmFpdENvbGxlY3Rpb24uaCAqLywKKwkJCQkxQzQzREU2QTIyQUI0QjhBMDAxNTI3RDkgLyog
TG9jYWxDdXJyZW50VHJhaXRDb2xsZWN0aW9uLm1tICovLAorCQkJCUUzNUI5MDdDMjNGNjA2Nzcw
MDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5oICovLAorCQkJCUUzNUI5MDdFMjNGNjA2
NzcwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VNb2RlbC5tbSAqLywKKwkJCQlFMzk2MjhDMDIz
OTU3NDMwMDA2NThFQ0QgLyogTW90aW9uTWFuYWdlckNsaWVudC5oICovLAorCQkJCUU0NTM5MDE5
MEVBRkNBQ0EwMDM2OTVDOCAvKiBQYXN0ZWJvYXJkSU9TLm1tICovLAorCQkJCTI2NjAxRUJEMTRC
M0I5QUQwMDEyQzBGRSAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5oICovLAorCQkJCTI2NjAx
RUJFMTRCM0I5QUQwMDEyQzBGRSAvKiBQbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5tbSAqLywKKwkJ
CQlDNTI3OEIwQjE3RjIxMkVBMDAzQTI5OTggLyogUGxhdGZvcm1QYXN0ZWJvYXJkSU9TLm1tICov
LAorCQkJCUU0NTM5MDMyMEVBRkQ2MzcwMDM2OTVDOCAvKiBQbGF0Zm9ybVNjcmVlbklPUy5tbSAq
LywKKwkJCQlBQUUzNzU1RDE3NDI5QkNDMDA2MjAwQzIgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVz
aXplcklPUy5tbSAqLywKKwkJCQlDREEyOUEyRTFDQkY3M0ZDMDA5MDFDQ0YgLyogUGxheWJhY2tT
ZXNzaW9uSW50ZXJmYWNlQVZLaXQuaCAqLywKKwkJCQlDREEyOUEyRjFDQkY3M0ZDMDA5MDFDQ0Yg
LyogUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZLaXQubW0gKi8sCisJCQkJQTFDMTUwNzcxRTNG
MkIzRTAwMzJDOThDIC8qIFByZXZpZXdDb252ZXJ0ZXJJT1MubW0gKi8sCisJCQkJQTE1RTMxRjEx
RTBDQjBBQTAwNEIzNzFDIC8qIFF1aWNrTG9vay5oICovLAorCQkJCUExNUUzMUYyMUUwQ0IwQUEw
MDRCMzcxQyAvKiBRdWlja0xvb2subW0gKi8sCisJCQkJMEYxNzc0N0UxMzc4Qjc3MTAwOURBNzZB
IC8qIFNjcm9sbEFuaW1hdG9ySU9TLmggKi8sCisJCQkJMEYxNzc0N0YxMzc4Qjc3MjAwOURBNzZB
IC8qIFNjcm9sbEFuaW1hdG9ySU9TLm1tICovLAorCQkJCTQ0Qzk5MTg1MEYzRDFFQkUwMDU4NjY3
MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oICovLAorCQkJCTQ0Qzk5MTgxMEYzRDFFMEQwMDU4NjY3
MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5tbSAqLywKKwkJCQlFNDUzOTAzNDBFQUZENjM3MDAzNjk1
QzggLyogU2Nyb2xsVmlld0lPUy5tbSAqLywKKwkJCQlCRUE4MDdDNjBGNzE0QTAzMDA1MjQxOTkg
LyogU2VsZWN0aW9uR2VvbWV0cnkuY3BwICovLAorCQkJCUJFQTgwN0M3MEY3MTRBMDMwMDUyNDE5
OSAvKiBTZWxlY3Rpb25HZW9tZXRyeS5oICovLAorCQkJCTBGMDNDMDczMTg4NDY5NUUwMEE1RjhD
QSAvKiBTeXN0ZW1NZW1vcnkuaCAqLywKKwkJCQlFNDUzOTBBRDBFQUZGNEI1MDAzNjk1QzggLyog
U3lzdGVtTWVtb3J5SU9TLmNwcCAqLywKKwkJCQk0NEM5OTE5RDBGM0QyMTBFMDA1ODY2NzAgLyog
VGhlbWVJT1MuaCAqLywKKwkJCQk0NEM5OTE5RTBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1Mu
bW0gKi8sCisJCQkJMUY3MkJGMDgxODdGRDQyNzAwMDlCQ0IzIC8qIFRpbGVDb250cm9sbGVyTWVt
b3J5SGFuZGxlcklPUy5jcHAgKi8sCisJCQkJMUY3MkJGMDkxODdGRDQyNzAwMDlCQ0IzIC8qIFRp
bGVDb250cm9sbGVyTWVtb3J5SGFuZGxlcklPUy5oICovLAorCQkJCUEzQUY5RDgzMjAzMjU2OTEw
MDZDQUQwNiAvKiBVc2VyQWdlbnRJT1MubW0gKi8sCisJCQkJODM3QjdEMUYxREMzRjU0QzAwRDA1
MUZDIC8qIFZhbGlkYXRpb25CdWJibGVJT1MubW0gKi8sCisJCQkJM0ZCQzRBRjIxODk4ODE1NjAw
NDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmggKi8sCisJCQkJM0ZCQzRB
RjExODk4ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tICov
LAorCQkJCUNEQTI5QTJDMUNCRjczRkMwMDkwMUNDRiAvKiBXZWJBVlBsYXllckNvbnRyb2xsZXIu
aCAqLywKKwkJCQlDREEyOUEyRDFDQkY3M0ZDMDA5MDFDQ0YgLyogV2ViQVZQbGF5ZXJDb250cm9s
bGVyLm1tICovLAorCQkJCTFGMzZFQTlBMUUyMUJBMTcwMDYyMUUyNSAvKiBXZWJCYWNrZ3JvdW5k
VGFza0NvbnRyb2xsZXIuaCAqLywKKwkJCQkxRjM2RUE5QjFFMjFCQTE3MDA2MjFFMjUgLyogV2Vi
QmFja2dyb3VuZFRhc2tDb250cm9sbGVyLm1tICovLAorCQkJCTMxNDAzNzk3MTI0QkVBN0YwMEFG
NDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oICovLAorCQkJCTMxNDAzNzk4MTI0QkVBN0Yw
MEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5tbSAqLywKKwkJCQlGRTBEODRFODEwNDg0
MzQ4MDAxQTE3OUUgLyogV2ViRXZlbnQuaCAqLywKKwkJCQlGRTBEODRFQTEwNDg0MzZFMDAxQTE3
OUUgLyogV2ViRXZlbnQubW0gKi8sCisJCQkJRjQ4MjIzMEYxRTM4NjlCODAwNjZGQzc5IC8qIFdl
Ykl0ZW1Qcm92aWRlclBhc3RlYm9hcmQuaCAqLywKKwkJCQlGNDgyMjMwRTFFMzg2OUI4MDA2NkZD
NzkgLyogV2ViSXRlbVByb3ZpZGVyUGFzdGVib2FyZC5tbSAqLywKKwkJCQkxRjg3NTZCMTFFMjJC
RUVGMDA0MkM0MEQgLyogV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyQ2xpZW50LmggKi8sCisJCQkJ
MUY4NzU2QjAxRTIyQkVFRjAwNDJDNDBEIC8qIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlckNsaWVu
dC5tbSAqLywKKwkJCQkzRjQyQjMxQjE4ODExOTFCMDAyNzhBQUMgLyogV2ViVmlkZW9GdWxsc2Ny
ZWVuQ29udHJvbGxlckFWS2l0LmggKi8sCisJCQkJM0Y0MkIzMUMxODgxMTkxQjAwMjc4QUFDIC8q
IFdlYlZpZGVvRnVsbHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbSAqLywKKwkJCQlFNDUzOTAzQzBF
QUZENjM3MDAzNjk1QzggLyogV2lkZ2V0SU9TLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBpb3M7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlBNUI4MUM4MzFGQUE0NDA2MDAz
N0QxRTYgLyogYWdlbnRzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9
ICgKKwkJCQlBNUI4MUNCOTFGQUE0NDgyMDAzN0QxRTYgLyogcGFnZSAqLywKKwkJCQlBNUI4MUND
NjFGQUE0NEMzMDAzN0QxRTYgLyogd29ya2VyICovLAorCQkJCTkxM0ZFNTk4MjM2Mjc5OTkwMEY5
NDQ2QSAvKiBJbnNwZWN0b3JBbmltYXRpb25BZ2VudC5jcHAgKi8sCisJCQkJOTEzRkU1OUEyMzYy
Nzk5OTAwRjk0NDZBIC8qIEluc3BlY3RvckFuaW1hdGlvbkFnZW50LmggKi8sCisJCQkJQTVCODFD
QTAxRkFBNDQyNzAwMzdEMUU2IC8qIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAg
Ki8sCisJCQkJQTVCODFDOTcxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudC5oICovLAorCQkJCUE1QjgxQzk2MUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0
b3JDYW52YXNBZ2VudC5jcHAgKi8sCisJCQkJQTVCODFDOTExRkFBNDQyNjAwMzdEMUU2IC8qIElu
c3BlY3RvckNhbnZhc0FnZW50LmggKi8sCisJCQkJQTU5QzIzMDYyMUYyOTIwNTAwNEVDOTM5IC8q
IEluc3BlY3RvckNQVVByb2ZpbGVyQWdlbnQuY3BwICovLAorCQkJCUE1OUMyMzA4MjFGMjkyMDYw
MDRFQzkzOSAvKiBJbnNwZWN0b3JDUFVQcm9maWxlckFnZW50LmggKi8sCisJCQkJQTVCODFDOTIx
RkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckNTU0FnZW50LmNwcCAqLywKKwkJCQlBNUI4MUNB
MTFGQUE0NDI3MDAzN0QxRTYgLyogSW5zcGVjdG9yQ1NTQWdlbnQuaCAqLywKKwkJCQlBNUI4MUNB
NTFGQUE0NDI3MDAzN0QxRTYgLyogSW5zcGVjdG9yRGF0YWJhc2VBZ2VudC5jcHAgKi8sCisJCQkJ
QTVCODFDOTMxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckRhdGFiYXNlQWdlbnQuaCAqLywK
KwkJCQlBNUI4MUM5MDFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yRE9NQWdlbnQuY3BwICov
LAorCQkJCUE1QjgxQzg2MUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JET01BZ2VudC5oICov
LAorCQkJCUE1QjgxQzg4MUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JET01EZWJ1Z2dlckFn
ZW50LmNwcCAqLywKKwkJCQlBNUI4MUNBMzFGQUE0NDI3MDAzN0QxRTYgLyogSW5zcGVjdG9yRE9N
RGVidWdnZXJBZ2VudC5oICovLAorCQkJCUE1QjgxQzlBMUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNw
ZWN0b3JET01TdG9yYWdlQWdlbnQuY3BwICovLAorCQkJCUE1QjgxQzhDMUZBQTQ0MjYwMDM3RDFF
NiAvKiBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQuaCAqLywKKwkJCQlBNUI4MUM5RDFGQUE0NDI2
MDAzN0QxRTYgLyogSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwICovLAorCQkJCUE1QjgxQzlF
MUZBQTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JJbmRleGVkREJBZ2VudC5oICovLAorCQkJCUE1
QjgxQ0E0MUZBQTQ0MjcwMDM3RDFFNiAvKiBJbnNwZWN0b3JMYXllclRyZWVBZ2VudC5jcHAgKi8s
CisJCQkJQTVCODFDOEYxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvckxheWVyVHJlZUFnZW50
LmggKi8sCisJCQkJQTVCODFDODUxRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3Rvck1lbW9yeUFn
ZW50LmNwcCAqLywKKwkJCQlBNUI4MUM4RDFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9yTWVt
b3J5QWdlbnQuaCAqLywKKwkJCQlBNUI4MUM5QzFGQUE0NDI2MDAzN0QxRTYgLyogSW5zcGVjdG9y
TmV0d29ya0FnZW50LmNwcCAqLywKKwkJCQlBNUI4MUM5NDFGQUE0NDI2MDAzN0QxRTYgLyogSW5z
cGVjdG9yTmV0d29ya0FnZW50LmggKi8sCisJCQkJQTVCODFDOTUxRkFBNDQyNjAwMzdEMUU2IC8q
IEluc3BlY3RvclBhZ2VBZ2VudC5jcHAgKi8sCisJCQkJQTVCODFDODkxRkFBNDQyNjAwMzdEMUU2
IC8qIEluc3BlY3RvclBhZ2VBZ2VudC5oICovLAorCQkJCUE1QjgxQ0E2MUZBQTQ0MjcwMDM3RDFF
NiAvKiBJbnNwZWN0b3JUaW1lbGluZUFnZW50LmNwcCAqLywKKwkJCQlBNUI4MUM4QjFGQUE0NDI2
MDAzN0QxRTYgLyogSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5oICovLAorCQkJCUE1QjgxQzk4MUZB
QTQ0MjYwMDM3RDFFNiAvKiBJbnNwZWN0b3JXb3JrZXJBZ2VudC5jcHAgKi8sCisJCQkJQTVCODFD
OEExRkFBNDQyNjAwMzdEMUU2IC8qIEluc3BlY3RvcldvcmtlckFnZW50LmggKi8sCisJCQkJQTVC
ODFDOTkxRkFBNDQyNjAwMzdEMUU2IC8qIFdlYkNvbnNvbGVBZ2VudC5jcHAgKi8sCisJCQkJQTVC
ODFDOEUxRkFBNDQyNjAwMzdEMUU2IC8qIFdlYkNvbnNvbGVBZ2VudC5oICovLAorCQkJCUE1Qjgx
Q0EyMUZBQTQ0MjcwMDM3RDFFNiAvKiBXZWJEZWJ1Z2dlckFnZW50LmNwcCAqLywKKwkJCQlBNUI4
MUM5QjFGQUE0NDI2MDAzN0QxRTYgLyogV2ViRGVidWdnZXJBZ2VudC5oICovLAorCQkJCUE1Qjgx
Qzg3MUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJIZWFwQWdlbnQuY3BwICovLAorCQkJCUE1QjgxQzlG
MUZBQTQ0MjYwMDM3RDFFNiAvKiBXZWJIZWFwQWdlbnQuaCAqLywKKwkJCSk7CisJCQlwYXRoID0g
YWdlbnRzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQTVCODFDQjkxRkFB
NDQ4MjAwMzdEMUU2IC8qIHBhZ2UgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTkxMjc4RDVBMjFERURBRDUwMEI1NzE4NCAvKiBQYWdlQXVkaXRBZ2VudC5j
cHAgKi8sCisJCQkJOTEyNzhENUMyMURFREFENTAwQjU3MTg0IC8qIFBhZ2VBdWRpdEFnZW50Lmgg
Ki8sCisJCQkJQTVCODFDQzAxRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VDb25zb2xlQWdlbnQuY3Bw
ICovLAorCQkJCUE1QjgxQ0JCMUZBQTQ0QjcwMDM3RDFFNiAvKiBQYWdlQ29uc29sZUFnZW50Lmgg
Ki8sCisJCQkJQTVCODFDQkQxRkFBNDRCNzAwMzdEMUU2IC8qIFBhZ2VEZWJ1Z2dlckFnZW50LmNw
cCAqLywKKwkJCQlBNUI4MUNCRTFGQUE0NEI3MDAzN0QxRTYgLyogUGFnZURlYnVnZ2VyQWdlbnQu
aCAqLywKKwkJCQk5MUUwRERCRDIzMEI0MUU0MDAxOUUxRTMgLyogUGFnZURPTURlYnVnZ2VyQWdl
bnQuY3BwICovLAorCQkJCTkxRTBEREJGMjMwQjQxRTUwMDE5RTFFMyAvKiBQYWdlRE9NRGVidWdn
ZXJBZ2VudC5oICovLAorCQkJCUE1QjgxQ0JBMUZBQTQ0QjcwMDM3RDFFNiAvKiBQYWdlSGVhcEFn
ZW50LmNwcCAqLywKKwkJCQlBNUI4MUNCQzFGQUE0NEI3MDAzN0QxRTYgLyogUGFnZUhlYXBBZ2Vu
dC5oICovLAorCQkJCUE1Q0IwNTFGMUZCNTFGMTYwMDA4OUI5NyAvKiBQYWdlTmV0d29ya0FnZW50
LmNwcCAqLywKKwkJCQlBNUNCMDUyMTFGQjUxRjE3MDAwODlCOTcgLyogUGFnZU5ldHdvcmtBZ2Vu
dC5oICovLAorCQkJCUE1QjgxQ0MxMUZBQTQ0QjcwMDM3RDFFNiAvKiBQYWdlUnVudGltZUFnZW50
LmNwcCAqLywKKwkJCQlBNUI4MUNCRjFGQUE0NEI3MDAzN0QxRTYgLyogUGFnZVJ1bnRpbWVBZ2Vu
dC5oICovLAorCQkJCUYzMkJEQ0Q1MjM2M0FBQzkwMDczQjZBRSAvKiBVc2VyR2VzdHVyZUVtdWxh
dGlvblNjb3BlLmNwcCAqLywKKwkJCQlGMzJCRENENzIzNjNBQUNBMDA3M0I2QUUgLyogVXNlckdl
c3R1cmVFbXVsYXRpb25TY29wZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBwYWdlOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQTVCODFDQzYxRkFBNDRDMzAwMzdEMUU2IC8q
IHdvcmtlciAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
QTU4MUVEMTIxRkIyODhDOTAwQ0VENEVDIC8qIFNlcnZpY2VXb3JrZXJBZ2VudC5jcHAgKi8sCisJ
CQkJQTU4MUVEMTAxRkIyODhDODAwQ0VENEVDIC8qIFNlcnZpY2VXb3JrZXJBZ2VudC5oICovLAor
CQkJCTkxMjc4RDVGMjFERURBRUYwMEI1NzE4NCAvKiBXb3JrZXJBdWRpdEFnZW50LmNwcCAqLywK
KwkJCQk5MTI3OEQ2MDIxREVEQUYwMDBCNTcxODQgLyogV29ya2VyQXVkaXRBZ2VudC5oICovLAor
CQkJCUE1QjgxQ0NCMUZBQTQ0REEwMDM3RDFFNiAvKiBXb3JrZXJDb25zb2xlQWdlbnQuY3BwICov
LAorCQkJCUE1QjgxQ0NBMUZBQTQ0REEwMDM3RDFFNiAvKiBXb3JrZXJDb25zb2xlQWdlbnQuaCAq
LywKKwkJCQlBNUI4MUNDODFGQUE0NERBMDAzN0QxRTYgLyogV29ya2VyRGVidWdnZXJBZ2VudC5j
cHAgKi8sCisJCQkJQTVCODFDQ0MxRkFBNDREQTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2VyQWdl
bnQuaCAqLywKKwkJCQk5MUUwRERDMzIzMEI0MUYwMDAxOUUxRTMgLyogV29ya2VyRE9NRGVidWdn
ZXJBZ2VudC5jcHAgKi8sCisJCQkJOTFFMEREQzIyMzBCNDFGMDAwMTlFMUUzIC8qIFdvcmtlckRP
TURlYnVnZ2VyQWdlbnQuaCAqLywKKwkJCQlBNUNCMDUyMjFGQjUxRjIzMDAwODlCOTcgLyogV29y
a2VyTmV0d29ya0FnZW50LmNwcCAqLywKKwkJCQlBNUNCMDUyMzFGQjUxRjI0MDAwODlCOTcgLyog
V29ya2VyTmV0d29ya0FnZW50LmggKi8sCisJCQkJQTVCODFDQzcxRkFBNDREQTAwMzdEMUU2IC8q
IFdvcmtlclJ1bnRpbWVBZ2VudC5jcHAgKi8sCisJCQkJQTVCODFDQzkxRkFBNDREQTAwMzdEMUU2
IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oICovLAorCQkJKTsKKwkJCXBhdGggPSB3b3JrZXI7CisJ
CQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlBNUM5NzRDRTExNDg1RkRBMDA2NkYy
QUIgLyogY29jb2EgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCUMxRjdCNzJGMjQ0OEYyQUMwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UuY3BwICov
LAorCQkJCUMxRjdCNzMwMjQ0OEYyQUMwMDEyNDU1NyAvKiBBR1hDb21waWxlclNlcnZpY2UuaCAq
LywKKwkJCQlBMTQwOTBGQTFBQTUxRTFEMDA5MTE5MUEgLyogQ29udGVudEZpbHRlclVuYmxvY2tI
YW5kbGVyQ29jb2EubW0gKi8sCisJCQkJQ0Q3RDMzNDUxQzdBMTZCRjAwMDQxMjkzIC8qIENvcmVW
aWRlb1NvZnRMaW5rLmNwcCAqLywKKwkJCQlDRDdEMzM0NjFDN0ExNkJGMDAwNDEyOTMgLyogQ29y
ZVZpZGVvU29mdExpbmsuaCAqLywKKwkJCQlGNDYyRTc5RjI0MkFEQTNDMDAyMDREREQgLyogRHJh
Z0RhdGFDb2NvYS5tbSAqLywKKwkJCQlGNDYyRTdBMDI0MkFEQTNEMDAyMDREREQgLyogRHJhZ0lt
YWdlQ29jb2EubW0gKi8sCisJCQkJN0EwOUNFRjAxRjAxRDFGNzAwRTkzQkRCIC8qIEZpbGVNb25p
dG9yQ29jb2EubW0gKi8sCisJCQkJQTVDOTc0Q0YxMTQ4NUZGMTAwNjZGMkFCIC8qIEtleUV2ZW50
Q29jb2EuaCAqLywKKwkJCQlBNUM5NzREMDExNDg1RkYxMDA2NkYyQUIgLyogS2V5RXZlbnRDb2Nv
YS5tbSAqLywKKwkJCQkwNkU4MUVENjBBQjVENUU5MDBDODc4MzcgLyogTG9jYWxDdXJyZW50R3Jh
cGhpY3NDb250ZXh0LmggKi8sCisJCQkJMUE0ODMyQjIxQTk1M0JBNjAwOEI0REZFIC8qIExvY2Fs
aXplZFN0cmluZ3NDb2NvYS5tbSAqLywKKwkJCQk0NkVGQUYwRDFFNUZCOUMyMDBFN0YzNEIgLyog
TG93UG93ZXJNb2RlTm90aWZpZXIubW0gKi8sCisJCQkJOTM5QzBEMjgyNTY0RTdGMjAwQjMyMTFC
IC8qIE1lZGlhVXRpbGl0aWVzLmNwcCAqLywKKwkJCQk5MzlDMEQyOTI1NjRFN0YyMDBCMzIxMUIg
LyogTWVkaWFVdGlsaXRpZXMuaCAqLywKKwkJCQlDNTNEMzkzMzFDOTc4OTJEMDA3RjNBRTkgLyog
TUlNRVR5cGVSZWdpc3RyeUNvY29hLm1tICovLAorCQkJCUExOUQ5MzQ5MUFBMTFCMUUwMEI0NkMy
NCAvKiBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oICovLAorCQkJCUExOUQ5MzQ4MUFB
MTFCMUUwMEI0NkMyNCAvKiBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5tbSAqLywKKwkJ
CQlBMTg4OTBBRDFBQTEzRjI1MDAyNkMzMDEgLyogUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0
ZXIuaCAqLywKKwkJCQlBMTg4OTBBQzFBQTEzRjI1MDAyNkMzMDEgLyogUGFyZW50YWxDb250cm9s
c0NvbnRlbnRGaWx0ZXIubW0gKi8sCisJCQkJOUJFRDJDQUYxRjdDQzA2MjAwNjY2MDE4IC8qIFBh
c3RlYm9hcmRDb2NvYS5tbSAqLywKKwkJCQlGNEZCMzUwMDIzNTBDOTYyMDBGMDA5NEEgLyogUGFz
dGVib2FyZEN1c3RvbURhdGFDb2NvYS5tbSAqLywKKwkJCQlGNDYyOEE5RTIzNEQzQkJGMDBCQzg4
NEMgLyogUGxhdGZvcm1QYXN0ZWJvYXJkQ29jb2EubW0gKi8sCisJCQkJNTJCMEQ0QkQxQzU3RkQx
RTAwNzdDRTUzIC8qIFBsYXRmb3JtVmlldy5oICovLAorCQkJCUNEQTI5QTBBMUNCRDlBNzQwMDkw
MUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2RlbC5oICovLAorCQkJCUNEQTI5QTBEMUNCRDlDRkUw
MDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVudC5oICovLAorCQkJCUNE
QTI5QTBDMUNCRDlDRkUwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2RlbE1lZGlhRWxlbWVu
dC5tbSAqLywKKwkJCQlDREM3NDcwMDI0QkUyNjc5MDBDMTg2OEIgLyogUG93ZXJTb3VyY2VOb3Rp
Zmllci5oICovLAorCQkJCUNEQzc0NzAxMjRCRTI2NzkwMEMxODY4QiAvKiBQb3dlclNvdXJjZU5v
dGlmaWVyLm1tICovLAorCQkJCTUxMTdGMzBDMjVFNjEwMUYwMDJBOUYxRSAvKiBSZW1vdGVDb21t
YW5kTGlzdGVuZXJDb2NvYS5oICovLAorCQkJCTUxMTdGMzBBMjVFNjEwMUUwMDJBOUYxRSAvKiBS
ZW1vdGVDb21tYW5kTGlzdGVuZXJDb2NvYS5tbSAqLywKKwkJCQk0NjVBOEU3ODFDOEEyNENFMDBF
N0QzRTQgLyogUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzQ29jb2EubW0gKi8sCisJCQkJMEU3MDU4
RjMxQkM1Q0NENzAwNDVBNTA3IC8qIFNlYXJjaFBvcHVwTWVudUNvY29hLmggKi8sCisJCQkJMEU3
MDU4RUQxQkM1QkMxOTAwNDVBNTA3IC8qIFNlYXJjaFBvcHVwTWVudUNvY29hLm1tICovLAorCQkJ
CTFBNEE5NTUxMEI0RURDRkYwMDJEOEMzQyAvKiBTaGFyZWRCdWZmZXJDb2NvYS5tbSAqLywKKwkJ
CQlDMTY5MkRENDIzRDIzQUUwMDA2RTg4RjcgLyogU3lzdGVtQmF0dGVyeS5oICovLAorCQkJCUMx
NjkyREQxMjNEMjNBQkQwMDZFODhGNyAvKiBTeXN0ZW1CYXR0ZXJ5Lm1tICovLAorCQkJCTVENTk3
NUIxMTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0ZW1WZXJzaW9uLmggKi8sCisJCQkJNUQ1OTc1QjIx
OTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24ubW0gKi8sCisJCQkJN0NDNTY0QjkxOEJB
QzcyMDAwMUI5NjUyIC8qIFRlbGVwaG9uZU51bWJlckRldGVjdG9yQ29jb2EuY3BwICovLAorCQkJ
CTMxMEQ3MTk0MUIzMzVDOUQwMDlDN0I3MyAvKiBUaGVtZUNvY29hLmggKi8sCisJCQkJMzEwRDcx
OTMxQjMzNUM5RDAwOUM3QjczIC8qIFRoZW1lQ29jb2EubW0gKi8sCisJCQkJQTNBRjlEODEyMDMy
NTJFRTAwNkNBRDA2IC8qIFVzZXJBZ2VudENvY29hLm1tICovLAorCQkJCURGNEUzOERFMjUyNzk1
OTQwMDJBNzQ4MSAvKiBWZXJzaW9uQ2hlY2tzLmggKi8sCisJCQkJREY0RTM4REMyNTI3OTU5MzAw
MkE3NDgxIC8qIFZlcnNpb25DaGVja3MubW0gKi8sCisJCQkJNTJCMEQ0QkYxQzU3RkQ2NjAwNzdD
RTUzIC8qIFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmggKi8sCisJCQkJNTJENUExQTQx
QzU3NDg4OTAwREUzNEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1vZGVsLmggKi8sCisJCQkJNTJENUEx
QTUxQzU3NDg4OTAwREUzNEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lmgg
Ki8sCisJCQkJNTJENUExQTYxQzU3NDg4OTAwREUzNEEzIC8qIFZpZGVvRnVsbHNjcmVlbk1vZGVs
VmlkZW9FbGVtZW50Lm1tICovLAorCQkJCUNEQzkzOUE1MUU5QkRGQjEwMEJCNzY4RCAvKiBWaWRl
b1Rvb2xib3hTb2Z0TGluay5jcHAgKi8sCisJCQkJQ0RDOTM5QTYxRTlCREZCMTAwQkI3NjhEIC8q
IFZpZGVvVG9vbGJveFNvZnRMaW5rLmggKi8sCisJCQkJQTE3RTRGMjYyMTlCQzAxNjAwRTFDN0VF
IC8qIFdlYkNvcmVBZGRpdGlvbnMubW0gKi8sCisJCQkJQ0RDOTc5RjMxQzQ5OEMwOTAwREI1MEQ0
IC8qIFdlYkNvcmVOU0Vycm9yRXh0cmFzLmggKi8sCisJCQkJQ0RDOTc5RjIxQzQ5OEMwOTAwREI1
MEQ0IC8qIFdlYkNvcmVOU0Vycm9yRXh0cmFzLm1tICovLAorCQkJCTVERkVCQUI2MTg1OTJCNkQw
MEM3NUJFQiAvKiBXZWJLaXRBdmFpbGFiaWxpdHkuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gY29j
b2E7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlBNzVFOEI3RjBFMURFMkIw
MDA3RjI0ODEgLyogZmlsdGVycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRy
ZW4gPSAoCisJCQkJQTFFMTE1NDMxMzAxNUMzRDAwNTRBQzhDIC8qIERpc3RhbnRMaWdodFNvdXJj
ZS5jcHAgKi8sCisJCQkJODQ3MzBENUExMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNv
dXJjZS5oICovLAorCQkJCUE3NUU4QjgwMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUJsZW5kLmNwcCAq
LywKKwkJCQlBNzVFOEI4MTBFMURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5oICovLAorCQkJCUE3
NUU4QjgyMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbG9yTWF0cml4LmNwcCAqLywKKwkJCQlBNzVF
OEI4MzBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb2xvck1hdHJpeC5oICovLAorCQkJCUE3NUU4Qjg0
MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmNwcCAqLywKKwkJCQlBNzVF
OEI4NTBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb25lbnRUcmFuc2Zlci5oICovLAorCQkJCUE3
NUU4Qjg2MEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvc2l0ZS5jcHAgKi8sCisJCQkJQTc1RThC
ODcwRTFERTJENjAwN0YyNDgxIC8qIEZFQ29tcG9zaXRlLmggKi8sCisJCQkJODQ3MzBENUIxMjQ4
RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRyaXguY3BwICovLAorCQkJCTg0NzMwRDVDMTI0
OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0cml4LmggKi8sCisJCQkJODQ3MzBENUQxMjQ4
RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxpZ2h0aW5nLmNwcCAqLywKKwkJCQk4NDczMEQ1RTEy
NDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNlTGlnaHRpbmcuaCAqLywKKwkJCQk4NDczMEQ1RjEy
NDhGMEIzMDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAuY3BwICovLAorCQkJCTg0NzMwRDYw
MTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oICovLAorCQkJCTQzNThFODdF
MTM2MEEzMTcwMEU0NzQ4QyAvKiBGRURyb3BTaGFkb3cuY3BwICovLAorCQkJCTQzNThFODdGMTM2
MEEzMTcwMEU0NzQ4QyAvKiBGRURyb3BTaGFkb3cuaCAqLywKKwkJCQk4NDczMEQ2MTEyNDhGMEIz
MDBEM0E5QzkgLyogRkVGbG9vZC5jcHAgKi8sCisJCQkJODQ3MzBENjIxMjQ4RjBCMzAwRDNBOUM5
IC8qIEZFRmxvb2QuaCAqLywKKwkJCQk4NDgwMTk1MjEwOEJBRkIzMDBDQjJCMUYgLyogRkVHYXVz
c2lhbkJsdXIuY3BwICovLAorCQkJCTg0ODAxOTUzMTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNz
aWFuQmx1ci5oICovLAorCQkJCTg0NzMwRDYzMTI0OEYwQjMwMEQzQTlDOSAvKiBGRUxpZ2h0aW5n
LmNwcCAqLywKKwkJCQk4NDczMEQ2NDEyNDhGMEIzMDBEM0E5QzkgLyogRkVMaWdodGluZy5oICov
LAorCQkJCTg0NzMwRDY1MTI0OEYwQjMwMEQzQTlDOSAvKiBGRU1lcmdlLmNwcCAqLywKKwkJCQk4
NDczMEQ2NjEyNDhGMEIzMDBEM0E5QzkgLyogRkVNZXJnZS5oICovLAorCQkJCTg0NzMwRDY3MTI0
OEYwQjMwMEQzQTlDOSAvKiBGRU1vcnBob2xvZ3kuY3BwICovLAorCQkJCTg0NzMwRDY4MTI0OEYw
QjMwMEQzQTlDOSAvKiBGRU1vcnBob2xvZ3kuaCAqLywKKwkJCQk4NDczMEQ2OTEyNDhGMEIzMDBE
M0E5QzkgLyogRkVPZmZzZXQuY3BwICovLAorCQkJCTg0NzMwRDZBMTI0OEYwQjMwMEQzQTlDOSAv
KiBGRU9mZnNldC5oICovLAorCQkJCTg0NzMwRDZCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVNwZWN1
bGFyTGlnaHRpbmcuY3BwICovLAorCQkJCTg0NzMwRDZDMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVNw
ZWN1bGFyTGlnaHRpbmcuaCAqLywKKwkJCQk4NDczMEQ2RDEyNDhGMEIzMDBEM0E5QzkgLyogRkVU
aWxlLmNwcCAqLywKKwkJCQk4NDczMEQ2RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVUaWxlLmggKi8s
CisJCQkJODQ3MzBENkYxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFVHVyYnVsZW5jZS5jcHAgKi8sCisJ
CQkJODQ3MzBENzAxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFVHVyYnVsZW5jZS5oICovLAorCQkJCTg0
NUU3MkY3MEZEMjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCAqLywKKwkJCQkwOEM5MjUxNzBGQ0M3
QzRBMDA0ODBERUMgLyogRmlsdGVyRWZmZWN0LmNwcCAqLywKKwkJCQkwOEM5MjUxODBGQ0M3QzRB
MDA0ODBERUMgLyogRmlsdGVyRWZmZWN0LmggKi8sCisJCQkJMkM4NTY1MzgyNEMxMEIwQjAwQTM3
NjczIC8qIEZpbHRlckVmZmVjdFJlbmRlcmVyLmNwcCAqLywKKwkJCQkyQzg1NjUzMzI0QzBGNzND
MDBBMzc2NzMgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuaCAqLywKKwkJCQk0OUVDRUI2MzE0OTk3
OTBEMDBDREQzQTQgLyogRmlsdGVyT3BlcmF0aW9uLmNwcCAqLywKKwkJCQk0OUVDRUI2NDE0OTk3
OTBEMDBDREQzQTQgLyogRmlsdGVyT3BlcmF0aW9uLmggKi8sCisJCQkJNDlFQ0VCNjUxNDk5Nzkw
RDAwQ0REM0E0IC8qIEZpbHRlck9wZXJhdGlvbnMuY3BwICovLAorCQkJCTQ5RUNFQjY2MTQ5OTc5
MEQwMENERDNBNCAvKiBGaWx0ZXJPcGVyYXRpb25zLmggKi8sCisJCQkJODQ3MzBENzQxMjQ4RjBC
MzAwRDNBOUM5IC8qIExpZ2h0U291cmNlLmggKi8sCisJCQkJQTFFMTE1NDUxMzAxNUM0RTAwNTRB
QzhDIC8qIFBvaW50TGlnaHRTb3VyY2UuY3BwICovLAorCQkJCTg0NzMwRDc1MTI0OEYwQjMwMEQz
QTlDOSAvKiBQb2ludExpZ2h0U291cmNlLmggKi8sCisJCQkJODRBODFGM0IwRkM3REZGMDAwOTU1
MzAwIC8qIFNvdXJjZUFscGhhLmNwcCAqLywKKwkJCQk4NEE4MUYzQzBGQzdERkYwMDA5NTUzMDAg
LyogU291cmNlQWxwaGEuaCAqLywKKwkJCQk4NEE4MUYzRjBGQzdFMDI3MDA5NTUzMDAgLyogU291
cmNlR3JhcGhpYy5jcHAgKi8sCisJCQkJODRBODFGNDAwRkM3RTAyNzAwOTU1MzAwIC8qIFNvdXJj
ZUdyYXBoaWMuaCAqLywKKwkJCQlBMUUxMTU0NzEzMDE1QzVEMDA1NEFDOEMgLyogU3BvdExpZ2h0
U291cmNlLmNwcCAqLywKKwkJCQk4NDczMEQ3NjEyNDhGMEIzMDBEM0E5QzkgLyogU3BvdExpZ2h0
U291cmNlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGZpbHRlcnM7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQlBODNCNzkwODBDQ0FGRjJCMDAwQjA4MjUgLyogSFRNTCAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMzFBNzk1QzQxODg4
QkFEMTAwMzgyRjkwIC8qIEpTQU5HTEVJbnN0YW5jZWRBcnJheXMuY3BwICovLAorCQkJCTMxQTc5
NUM1MTg4OEJBRDEwMDM4MkY5MCAvKiBKU0FOR0xFSW5zdGFuY2VkQXJyYXlzLmggKi8sCisJCQkJ
QkU4RUYwM0UxNzFDOEZGOTAwOUI0OEMzIC8qIEpTQXVkaW9UcmFjay5jcHAgKi8sCisJCQkJQkU4
RUYwM0YxNzFDOEZGOTAwOUI0OEMzIC8qIEpTQXVkaW9UcmFjay5oICovLAorCQkJCUJFOEVGMDQw
MTcxQzhGRjkwMDlCNDhDMyAvKiBKU0F1ZGlvVHJhY2tMaXN0LmNwcCAqLywKKwkJCQlCRThFRjA0
MTE3MUM4RkY5MDA5QjQ4QzMgLyogSlNBdWRpb1RyYWNrTGlzdC5oICovLAorCQkJCTdDMTkzQkNG
MUY1RTBGQUQwMDg4RjNFNiAvKiBKU0NhbnZhc0RpcmVjdGlvbi5jcHAgKi8sCisJCQkJN0MxOTNC
REQxRjVFMEZCNjAwODhGM0U2IC8qIEpTQ2FudmFzRGlyZWN0aW9uLmggKi8sCisJCQkJN0MxOTNC
QzgxRjVFMEZBODAwODhGM0U2IC8qIEpTQ2FudmFzRmlsbFJ1bGUuY3BwICovLAorCQkJCTdDMTkz
QkRCMUY1RTBGQjQwMDg4RjNFNiAvKiBKU0NhbnZhc0ZpbGxSdWxlLmggKi8sCisJCQkJNjVERjMy
MzMwOUQxREU2NTAwMEJFMzI1IC8qIEpTQ2FudmFzR3JhZGllbnQuY3BwICovLAorCQkJCTY1REYz
MjM0MDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc0dyYWRpZW50LmggKi8sCisJCQkJN0MxOTNC
RUExRjVFMEZCRTAwODhGM0U2IC8qIEpTQ2FudmFzTGluZUNhcC5jcHAgKi8sCisJCQkJN0MxOTNC
QzcxRjVFMEZBNzAwODhGM0U2IC8qIEpTQ2FudmFzTGluZUNhcC5oICovLAorCQkJCTdDMTkzQkU3
MUY1RTBGQkMwMDg4RjNFNiAvKiBKU0NhbnZhc0xpbmVKb2luLmNwcCAqLywKKwkJCQk3QzE5M0JE
QzFGNUUwRkI1MDA4OEYzRTYgLyogSlNDYW52YXNMaW5lSm9pbi5oICovLAorCQkJCTY1REYzMjM1
MDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc1BhdHRlcm4uY3BwICovLAorCQkJCTY1REYzMjM2
MDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc1BhdHRlcm4uaCAqLywKKwkJCQk0OUVFRDEzRTEw
NTE5Njk0MDAwOTlGQUIgLyogSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwICovLAorCQkJ
CTQ5RUVEMTNGMTA1MTk2OTQwMDA5OUZBQiAvKiBKU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5o
ICovLAorCQkJCTdDMTkzQkQyMUY1RTBGQUUwMDg4RjNFNiAvKiBKU0NhbnZhc1RleHRBbGlnbi5j
cHAgKi8sCisJCQkJN0MxOTNCRTExRjVFMEZCODAwODhGM0U2IC8qIEpTQ2FudmFzVGV4dEFsaWdu
LmggKi8sCisJCQkJN0MxOTNCRDMxRjVFMEZBRjAwODhGM0U2IC8qIEpTQ2FudmFzVGV4dEJhc2Vs
aW5lLmNwcCAqLywKKwkJCQk3QzE5M0JENDFGNUUwRkIwMDA4OEYzRTYgLyogSlNDYW52YXNUZXh0
QmFzZWxpbmUuaCAqLywKKwkJCQlCRTYxMDM5QjE4QTlENjEyMDBERDUwRDcgLyogSlNEYXRhQ3Vl
LmNwcCAqLywKKwkJCQlCRTYxMDM5QzE4QTlENjEyMDBERDUwRDcgLyogSlNEYXRhQ3VlLmggKi8s
CisJCQkJMkUwODg4RDIxMTQ4ODQ4QTAwQUY0MjY1IC8qIEpTRE9NRm9ybURhdGEuY3BwICovLAor
CQkJCTJFMDg4OEQzMTE0ODg0OEEwMEFGNDI2NSAvKiBKU0RPTUZvcm1EYXRhLmggKi8sCisJCQkJ
NzY5NDU2M0ExMjE0RDk3QzAwMDdDQkFFIC8qIEpTRE9NVG9rZW5MaXN0LmNwcCAqLywKKwkJCQk3
Njk0NTYzQjEyMTREOTdDMDAwN0NCQUUgLyogSlNET01Ub2tlbkxpc3QuaCAqLywKKwkJCQkyRTM3
RTAwMzEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwuY3BwICovLAorCQkJCTJFMzdFMDA0MTJE
QkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVSTC5oICovLAorCQkJCTcyNEVEMzJGMUEzQThCMjMwMEY1
RjEzQyAvKiBKU0VYVEJsZW5kTWluTWF4LmNwcCAqLywKKwkJCQk3MjRFRDMzMDFBM0E4QjIzMDBG
NUYxM0MgLyogSlNFWFRCbGVuZE1pbk1heC5oICovLAorCQkJCTcyRjFBREEzMUEzOTBCOUYwMDAx
NEUxOCAvKiBKU0VYVEZyYWdEZXB0aC5jcHAgKi8sCisJCQkJNzJGMUFEQTQxQTM5MEI5RjAwMDE0
RTE4IC8qIEpTRVhURnJhZ0RlcHRoLmggKi8sCisJCQkJNUM0MzA0QjMxOTFBRUY0NjAwMEUyQkMw
IC8qIEpTRVhUU2hhZGVyVGV4dHVyZUxPRC5jcHAgKi8sCisJCQkJNUM0MzA0QjQxOTFBRUY0NjAw
MEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVyZUxPRC5oICovLAorCQkJCTcyRTQxNzYxMUEyRThE
MkYwMDRDNTYyQSAvKiBKU0VYVHNSR0IuY3BwICovLAorCQkJCTcyRTQxNzYyMUEyRThEMkYwMDRD
NTYyQSAvKiBKU0VYVHNSR0IuaCAqLywKKwkJCQk3NzI4Njk4MTE0RkQ5QURBMDBGNDg0REMgLyog
SlNFWFRUZXh0dXJlRmlsdGVyQW5pc290cm9waWMuY3BwICovLAorCQkJCTc3Mjg2OTgyMTRGRDlB
REEwMEY0ODREQyAvKiBKU0VYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5oICovLAorCQkJCUJD
OTdFNDEwMTA5MTU0RkEwMDEwRDM2MSAvKiBKU0hUTUxBbGxDb2xsZWN0aW9uLmNwcCAqLywKKwkJ
CQlCQzk3RTQxMTEwOTE1NEZBMDAxMEQzNjEgLyogSlNIVE1MQWxsQ29sbGVjdGlvbi5oICovLAor
CQkJCTFBNEEyREVCMEExQjg1MkEwMEM4MDdGOCAvKiBKU0hUTUxBbmNob3JFbGVtZW50LmNwcCAq
LywKKwkJCQkxQTRBMkRFQzBBMUI4NTJBMDBDODA3RjggLyogSlNIVE1MQW5jaG9yRWxlbWVudC5o
ICovLAorCQkJCTFBRTJBQTBBMEExQ0RBQjMwMEI0MkIyNSAvKiBKU0hUTUxBcmVhRWxlbWVudC5j
cHAgKi8sCisJCQkJMUFFMkFBMEIwQTFDREFCMzAwQjQyQjI1IC8qIEpTSFRNTEFyZWFFbGVtZW50
LmggKi8sCisJCQkJN0M5REJGRUIxQTlDNDlCMTAwMEQ2QjI1IC8qIEpTSFRNTEF0dGFjaG1lbnRF
bGVtZW50LmNwcCAqLywKKwkJCQk3QzlEQkZFQzFBOUM0OUIxMDAwRDZCMjUgLyogSlNIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCAqLywKKwkJCQlFNEI0MjM3RDBDQkZCNzNDMDBBRjJFQ0UgLyogSlNI
VE1MQXVkaW9FbGVtZW50LmNwcCAqLywKKwkJCQlFNEI0MjM3RTBDQkZCNzNDMDBBRjJFQ0UgLyog
SlNIVE1MQXVkaW9FbGVtZW50LmggKi8sCisJCQkJQTgwRTdCMDgwQTE5RDYwNjAwN0ZCOEM1IC8q
IEpTSFRNTEJhc2VFbGVtZW50LmNwcCAqLywKKwkJCQlBODBFN0IwNzBBMTlENjA2MDA3RkI4QzUg
LyogSlNIVE1MQmFzZUVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUEwRTBBMUNEQUIzMDBCNDJCMjUg
LyogSlNIVE1MQm9keUVsZW1lbnQuY3BwICovLAorCQkJCTFBRTJBQTBGMEExQ0RBQjMwMEI0MkIy
NSAvKiBKU0hUTUxCb2R5RWxlbWVudC5oICovLAorCQkJCTFBRTJBQTEwMEExQ0RBQjMwMEI0MkIy
NSAvKiBKU0hUTUxCUkVsZW1lbnQuY3BwICovLAorCQkJCTFBRTJBQTExMEExQ0RBQjMwMEI0MkIy
NSAvKiBKU0hUTUxCUkVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0U5NjBBMUE4M0UzMDA3RkI4QzUg
LyogSlNIVE1MQnV0dG9uRWxlbWVudC5jcHAgKi8sCisJCQkJQTgwRTdFOTUwQTFBODNFMzAwN0ZC
OEM1IC8qIEpTSFRNTEJ1dHRvbkVsZW1lbnQuaCAqLywKKwkJCQk5MzhFNjY1RjA5RjA5QjgxMDA4
QTQ4RUMgLyogSlNIVE1MQ2FudmFzRWxlbWVudC5jcHAgKi8sCisJCQkJOTM4RTY2NjEwOUYwOUI4
NzAwOEE0OEVDIC8qIEpTSFRNTENhbnZhc0VsZW1lbnQuaCAqLywKKwkJCQlCQ0NCQUQzRTBDMThD
MTQyMDBDRTg5MEYgLyogSlNIVE1MQ29sbGVjdGlvbi5jcHAgKi8sCisJCQkJQkNDQkFEM0YwQzE4
QzE0MjAwQ0U4OTBGIC8qIEpTSFRNTENvbGxlY3Rpb24uaCAqLywKKwkJCQk4MzRCODZBOTFDNTZF
OTNFMDBGM0YwRTMgLyogSlNIVE1MRGF0YUVsZW1lbnQuY3BwICovLAorCQkJCTgzNEI4NkE4MUM1
NkU5M0UwMEYzRjBFMyAvKiBKU0hUTUxEYXRhRWxlbWVudC5oICovLAorCQkJCUY1QzA0MUUxMEZG
Q0E5NkQwMDgzOUQ0QSAvKiBKU0hUTUxEYXRhTGlzdEVsZW1lbnQuY3BwICovLAorCQkJCUY1QzA0
MUUyMEZGQ0E5NkQwMDgzOUQ0QSAvKiBKU0hUTUxEYXRhTGlzdEVsZW1lbnQuaCAqLywKKwkJCQlE
MzU5RDhCQzEyOUNBNTVDMDAwNkU1RDIgLyogSlNIVE1MRGV0YWlsc0VsZW1lbnQuY3BwICovLAor
CQkJCUQzNTlEOEJEMTI5Q0E1NUMwMDA2RTVEMiAvKiBKU0hUTUxEZXRhaWxzRWxlbWVudC5oICov
LAorCQkJCTFBODVCMUUwMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxEaXJlY3RvcnlFbGVtZW50
LmNwcCAqLywKKwkJCQkxQTg1QjFFMTBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MRGlyZWN0b3J5
RWxlbWVudC5oICovLAorCQkJCTFBODVCMkI0MEExQjJBQzcwMEQ4Qzg3QyAvKiBKU0hUTUxEaXZF
bGVtZW50LmNwcCAqLywKKwkJCQkxQTg1QjJCNTBBMUIyQUM3MDBEOEM4N0MgLyogSlNIVE1MRGl2
RWxlbWVudC5oICovLAorCQkJCTFBODVCMUUyMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxETGlz
dEVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMUUzMEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hUTUxE
TGlzdEVsZW1lbnQuaCAqLywKKwkJCQkxQTQ5NEUzMjBBMTIzNThBMDBGREFGQzEgLyogSlNIVE1M
RG9jdW1lbnQuY3BwICovLAorCQkJCTFBNDk0RTMzMEExMjM1OEIwMEZEQUZDMSAvKiBKU0hUTUxE
b2N1bWVudC5oICovLAorCQkJCTFBNDk0QkY4MEExMjJGNDQwMEZEQUZDMSAvKiBKU0hUTUxFbGVt
ZW50LmNwcCAqLywKKwkJCQkxQTQ5NEJGOTBBMTIyRjQ0MDBGREFGQzEgLyogSlNIVE1MRWxlbWVu
dC5oICovLAorCQkJCUJDNkQ0NEVBMEMwN0YyRUQwMDcyRDJDOSAvKiBKU0hUTUxFbWJlZEVsZW1l
bnQuY3BwICovLAorCQkJCUJDNkQ0NEVCMEMwN0YyRUQwMDcyRDJDOSAvKiBKU0hUTUxFbWJlZEVs
ZW1lbnQuaCAqLywKKwkJCQkxQUUyQUExMjBBMUNEQUIzMDBCNDJCMjUgLyogSlNIVE1MRmllbGRT
ZXRFbGVtZW50LmNwcCAqLywKKwkJCQkxQUUyQUExMzBBMUNEQUIzMDBCNDJCMjUgLyogSlNIVE1M
RmllbGRTZXRFbGVtZW50LmggKi8sCisJCQkJMUFFMkFBMTQwQTFDREFCMzAwQjQyQjI1IC8qIEpT
SFRNTEZvbnRFbGVtZW50LmNwcCAqLywKKwkJCQkxQUUyQUExNTBBMUNEQUIzMDBCNDJCMjUgLyog
SlNIVE1MRm9udEVsZW1lbnQuaCAqLywKKwkJCQk5QkY5QTg3RTE2NDhERDJGMDAxQzZCMjMgLyog
SlNIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5jcHAgKi8sCisJCQkJOUJGOUE4N0YxNjQ4REQy
RjAwMUM2QjIzIC8qIEpTSFRNTEZvcm1Db250cm9sc0NvbGxlY3Rpb24uaCAqLywKKwkJCQlBOEQw
NjRGOTBBMjNDMENDMDA1RTcyMDMgLyogSlNIVE1MRm9ybUVsZW1lbnQuY3BwICovLAorCQkJCUE4
RDA2NEZBMEEyM0MwQ0MwMDVFNzIwMyAvKiBKU0hUTUxGb3JtRWxlbWVudC5oICovLAorCQkJCUJD
NDkxOEMwMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxGcmFtZUVsZW1lbnQuY3BwICovLAorCQkJ
CUJDNDkxOEMxMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxGcmFtZUVsZW1lbnQuaCAqLywKKwkJ
CQlCQzkyNkY3RTBDMDU1MjQ3MDA4Mjc3NkIgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50LmNwcCAq
LywKKwkJCQlCQzkyNkY3RjBDMDU1MjQ3MDA4Mjc3NkIgLyogSlNIVE1MRnJhbWVTZXRFbGVtZW50
LmggKi8sCisJCQkJQTgwRTdCMEEwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTEhlYWRFbGVtZW50
LmNwcCAqLywKKwkJCQlBODBFN0IwQjBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MSGVhZEVsZW1l
bnQuaCAqLywKKwkJCQkxQUUyQUExQTBBMUNEQUI0MDBCNDJCMjUgLyogSlNIVE1MSGVhZGluZ0Vs
ZW1lbnQuY3BwICovLAorCQkJCTFBRTJBQTFCMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxIZWFk
aW5nRWxlbWVudC5oICovLAorCQkJCTFBRTJBQTFDMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxI
UkVsZW1lbnQuY3BwICovLAorCQkJCTFBRTJBQTFEMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxI
UkVsZW1lbnQuaCAqLywKKwkJCQkxQTg1QjE4RDBBMUIxOEEyMDBEOEM4N0MgLyogSlNIVE1MSHRt
bEVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMThFMEExQjE4QTIwMEQ4Qzg3QyAvKiBKU0hUTUxI
dG1sRWxlbWVudC5oICovLAorCQkJCUJDNDkxOEMyMEJGRUEwNTAwMDlENjMxNiAvKiBKU0hUTUxJ
RnJhbWVFbGVtZW50LmNwcCAqLywKKwkJCQlCQzQ5MThDMzBCRkVBMDUwMDA5RDYzMTYgLyogSlNI
VE1MSUZyYW1lRWxlbWVudC5oICovLAorCQkJCTFBRTJBQTkzMEExQ0REMkQwMEI0MkIyNSAvKiBK
U0hUTUxJbWFnZUVsZW1lbnQuY3BwICovLAorCQkJCTFBRTJBQTk0MEExQ0REMkQwMEI0MkIyNSAv
KiBKU0hUTUxJbWFnZUVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0U4RTBBMUE4M0UzMDA3RkI4QzUg
LyogSlNIVE1MSW5wdXRFbGVtZW50LmNwcCAqLywKKwkJCQlBODBFN0U4RDBBMUE4M0UzMDA3RkI4
QzUgLyogSlNIVE1MSW5wdXRFbGVtZW50LmggKi8sCisJCQkJQTYxNDhBNzYxMkU0MUUzQjAwNDRB
Nzg0IC8qIEpTSFRNTEtleWdlbkVsZW1lbnQuY3BwICovLAorCQkJCUE2MTQ4QTc3MTJFNDFFM0Iw
MDQ0QTc4NCAvKiBKU0hUTUxLZXlnZW5FbGVtZW50LmggKi8sCisJCQkJMUFFMkFCMTcwQTFDRTYz
QjAwQjQyQjI1IC8qIEpTSFRNTExhYmVsRWxlbWVudC5jcHAgKi8sCisJCQkJMUFFMkFCMTgwQTFD
RTYzQjAwQjQyQjI1IC8qIEpTSFRNTExhYmVsRWxlbWVudC5oICovLAorCQkJCTFBRTJBQjE5MEEx
Q0U2M0IwMEI0MkIyNSAvKiBKU0hUTUxMZWdlbmRFbGVtZW50LmNwcCAqLywKKwkJCQkxQUUyQUIx
QTBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTGVnZW5kRWxlbWVudC5oICovLAorCQkJCTFBRTJB
QjFCMEExQ0U2M0IwMEI0MkIyNSAvKiBKU0hUTUxMSUVsZW1lbnQuY3BwICovLAorCQkJCTFBRTJB
QjFDMEExQ0U2M0IwMEI0MkIyNSAvKiBKU0hUTUxMSUVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0Iw
NjBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MTGlua0VsZW1lbnQuY3BwICovLAorCQkJCUE4MEU3
QjAzMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxMaW5rRWxlbWVudC5oICovLAorCQkJCTFBRTJB
QjFEMEExQ0U2M0IwMEI0MkIyNSAvKiBKU0hUTUxNYXBFbGVtZW50LmNwcCAqLywKKwkJCQkxQUUy
QUIxRTBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTWFwRWxlbWVudC5oICovLAorCQkJCUJDNDkx
Qjc2MEMwMjNFRkQwMDlENjMxNiAvKiBKU0hUTUxNYXJxdWVlRWxlbWVudC5jcHAgKi8sCisJCQkJ
QkM0OTFCNzcwQzAyM0VGRDAwOUQ2MzE2IC8qIEpTSFRNTE1hcnF1ZWVFbGVtZW50LmggKi8sCisJ
CQkJRTRCNDIzN0YwQ0JGQjczQzAwQUYyRUNFIC8qIEpTSFRNTE1lZGlhRWxlbWVudC5jcHAgKi8s
CisJCQkJRTRCNDIzODAwQ0JGQjczQzAwQUYyRUNFIC8qIEpTSFRNTE1lZGlhRWxlbWVudC5oICov
LAorCQkJCTFBRTJBRTU5MEExRDI2RjIwMEI0MkIyNSAvKiBKU0hUTUxNZW51RWxlbWVudC5jcHAg
Ki8sCisJCQkJMUFFMkFFNUEwQTFEMjZGMjAwQjQyQjI1IC8qIEpTSFRNTE1lbnVFbGVtZW50Lmgg
Ki8sCisJCQkJQTgwRTdBMTUwQTE5QzNENjAwN0ZCOEM1IC8qIEpTSFRNTE1ldGFFbGVtZW50LmNw
cCAqLywKKwkJCQlBODBFN0ExNjBBMTlDM0Q2MDA3RkI4QzUgLyogSlNIVE1MTWV0YUVsZW1lbnQu
aCAqLywKKwkJCQlBN0JCRTI2NDExQUZCM0YyMDAwNUVBMDMgLyogSlNIVE1MTWV0ZXJFbGVtZW50
LmNwcCAqLywKKwkJCQlBN0JCRTI2NTExQUZCM0YyMDAwNUVBMDMgLyogSlNIVE1MTWV0ZXJFbGVt
ZW50LmggKi8sCisJCQkJNzFBM0QxODIyNTYyQkREQjAwNjRFMkE2IC8qIEpTSFRNTE1vZGVsRWxl
bWVudC5jcHAgKi8sCisJCQkJNzFBM0QxODMyNTYyQkREQjAwNjRFMkE2IC8qIEpTSFRNTE1vZGVs
RWxlbWVudC5oICovLAorCQkJCTFBRTJBQjFGMEExQ0U2M0IwMEI0MkIyNSAvKiBKU0hUTUxNb2RF
bGVtZW50LmNwcCAqLywKKwkJCQkxQUUyQUIyMDBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTW9k
RWxlbWVudC5oICovLAorCQkJCUJDMzA1Qzc3MEMwNzZCQjMwMENEMjBGMCAvKiBKU0hUTUxPYmpl
Y3RFbGVtZW50LmNwcCAqLywKKwkJCQlCQzMwNUM3ODBDMDc2QkIzMDBDRDIwRjAgLyogSlNIVE1M
T2JqZWN0RWxlbWVudC5oICovLAorCQkJCTFBODVCMUU0MEExQjI0MDUwMEQ4Qzg3QyAvKiBKU0hU
TUxPTGlzdEVsZW1lbnQuY3BwICovLAorCQkJCTFBODVCMUU1MEExQjI0MDUwMEQ4Qzg3QyAvKiBK
U0hUTUxPTGlzdEVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0U5MjBBMUE4M0UzMDA3RkI4QzUgLyog
SlNIVE1MT3B0R3JvdXBFbGVtZW50LmNwcCAqLywKKwkJCQlBODBFN0U5MTBBMUE4M0UzMDA3RkI4
QzUgLyogSlNIVE1MT3B0R3JvdXBFbGVtZW50LmggKi8sCisJCQkJQTgwRTdFOTAwQTFBODNFMzAw
N0ZCOEM1IC8qIEpTSFRNTE9wdGlvbkVsZW1lbnQuY3BwICovLAorCQkJCUE4MEU3RThGMEExQTgz
RTMwMDdGQjhDNSAvKiBKU0hUTUxPcHRpb25FbGVtZW50LmggKi8sCisJCQkJNDQ4QTI5QkUwQTQ2
RDlDQjAwMzA3NTlGIC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmNwcCAqLywKKwkJCQk0NDhB
MjlCRDBBNDZEOUNCMDAzMDc1OUYgLyogSlNIVE1MT3B0aW9uc0NvbGxlY3Rpb24uaCAqLywKKwkJ
CQlBQUNDODNEODIzMTY1NzZCMDBFQjZCRjUgLyogSlNIVE1MT3JGb3JlaWduRWxlbWVudC5jcHAg
Ki8sCisJCQkJQUFDQzgzRDcyMzE2NTc2QTAwRUI2QkY1IC8qIEpTSFRNTE9yRm9yZWlnbkVsZW1l
bnQuaCAqLywKKwkJCQk0QUQwMTczQTEyN0U4Mjg2MDAxNTAzNUYgLyogSlNIVE1MT3V0cHV0RWxl
bWVudC5jcHAgKi8sCisJCQkJNEFEMDE3M0IxMjdFODI4NjAwMTUwMzVGIC8qIEpTSFRNTE91dHB1
dEVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUI5RTBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MUGFy
YWdyYXBoRWxlbWVudC5jcHAgKi8sCisJCQkJMUFFMkFCOUYwQTFDRTkwNTAwQjQyQjI1IC8qIEpT
SFRNTFBhcmFncmFwaEVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUJBMDBBMUNFOTA1MDBCNDJCMjUg
LyogSlNIVE1MUGFyYW1FbGVtZW50LmNwcCAqLywKKwkJCQkxQUUyQUJBMTBBMUNFOTA1MDBCNDJC
MjUgLyogSlNIVE1MUGFyYW1FbGVtZW50LmggKi8sCisJCQkJQkM4MDhCMTIxQzBFMkIzNTAwNjZG
RDZCIC8qIEpTSFRNTFBpY3R1cmVFbGVtZW50LmNwcCAqLywKKwkJCQlCQzgwOEIxMzFDMEUyQjM1
MDA2NkZENkIgLyogSlNIVE1MUGljdHVyZUVsZW1lbnQuaCAqLywKKwkJCQkxQUUyQUJBMjBBMUNF
OTA1MDBCNDJCMjUgLyogSlNIVE1MUHJlRWxlbWVudC5jcHAgKi8sCisJCQkJMUFFMkFCQTMwQTFD
RTkwNTAwQjQyQjI1IC8qIEpTSFRNTFByZUVsZW1lbnQuaCAqLywKKwkJCQlBNDIyNkU1OTExNjNE
NjY3MDA4QjgzOTcgLyogSlNIVE1MUHJvZ3Jlc3NFbGVtZW50LmNwcCAqLywKKwkJCQlBNDIyNkU1
QjExNjNENjk1MDA4QjgzOTcgLyogSlNIVE1MUHJvZ3Jlc3NFbGVtZW50LmggKi8sCisJCQkJMUFF
MkFFQzMwQTFEMjk3QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxlbWVudC5jcHAgKi8sCisJCQkJ
MUFFMkFFQzQwQTFEMjk3QjAwQjQyQjI1IC8qIEpTSFRNTFF1b3RlRWxlbWVudC5oICovLAorCQkJ
CTFBRTJBQkE0MEExQ0U5MDUwMEI0MkIyNSAvKiBKU0hUTUxTY3JpcHRFbGVtZW50LmNwcCAqLywK
KwkJCQkxQUUyQUJBNTBBMUNFOTA1MDBCNDJCMjUgLyogSlNIVE1MU2NyaXB0RWxlbWVudC5oICov
LAorCQkJCUUxRTZFRUEzMEI2MjhEQTgwMDVGMkY3MCAvKiBKU0hUTUxTZWxlY3RFbGVtZW50LmNw
cCAqLywKKwkJCQlFMUU2RUVBNzBCNjI4REIzMDA1RjJGNzAgLyogSlNIVE1MU2VsZWN0RWxlbWVu
dC5oICovLAorCQkJCTlCNjlEM0I2MUI5OTEwMDcwMEUzNTEyQiAvKiBKU0hUTUxTbG90RWxlbWVu
dC5jcHAgKi8sCisJCQkJOUI2OUQzQjcxQjk5MTAwNzAwRTM1MTJCIC8qIEpTSFRNTFNsb3RFbGVt
ZW50LmggKi8sCisJCQkJRTRCNDIzNzEwQ0JGQjZFMDAwQUYyRUNFIC8qIEpTSFRNTFNvdXJjZUVs
ZW1lbnQuY3BwICovLAorCQkJCUU0QjQyMzcyMENCRkI2RTAwMEFGMkVDRSAvKiBKU0hUTUxTb3Vy
Y2VFbGVtZW50LmggKi8sCisJCQkJOTc1MkQzOEIxNDEzMTA0QjAwMzMwNUJEIC8qIEpTSFRNTFNw
YW5FbGVtZW50LmNwcCAqLywKKwkJCQk5NzUyRDM4QzE0MTMxMDRCMDAzMzA1QkQgLyogSlNIVE1M
U3BhbkVsZW1lbnQuaCAqLywKKwkJCQlBODBFN0IwNTBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1M
U3R5bGVFbGVtZW50LmNwcCAqLywKKwkJCQlBODBFN0IwNDBBMTlENjA2MDA3RkI4QzUgLyogSlNI
VE1MU3R5bGVFbGVtZW50LmggKi8sCisJCQkJQkNBMTY5QTAwQkZENTVCNDAwMTlDQTc2IC8qIEpT
SFRNTFRhYmxlQ2FwdGlvbkVsZW1lbnQuY3BwICovLAorCQkJCUJDQTE2OUExMEJGRDU1QjQwMDE5
Q0E3NiAvKiBKU0hUTUxUYWJsZUNhcHRpb25FbGVtZW50LmggKi8sCisJCQkJQkMwNkVERTEwQkZE
NkQwRDAwODU2RTlEIC8qIEpTSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwICovLAorCQkJCUJDMDZF
REUyMEJGRDZEMEQwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUNlbGxFbGVtZW50LmggKi8sCisJCQkJ
QkMwNkVEOTkwQkZENjYwNjAwODU2RTlEIC8qIEpTSFRNTFRhYmxlQ29sRWxlbWVudC5jcHAgKi8s
CisJCQkJQkMwNkVEOUEwQkZENjYwNjAwODU2RTlEIC8qIEpTSFRNTFRhYmxlQ29sRWxlbWVudC5o
ICovLAorCQkJCUJDMDZFRTAyMEJGRDcxQUEwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUVsZW1lbnQu
Y3BwICovLAorCQkJCUJDMDZFRTAzMEJGRDcxQUEwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUVsZW1l
bnQuaCAqLywKKwkJCQlCQzA2RUQ5QjBCRkQ2NjA2MDA4NTZFOUQgLyogSlNIVE1MVGFibGVSb3dF
bGVtZW50LmNwcCAqLywKKwkJCQlCQzA2RUQ5QzBCRkQ2NjA2MDA4NTZFOUQgLyogSlNIVE1MVGFi
bGVSb3dFbGVtZW50LmggKi8sCisJCQkJQkMwNkVEMDQwQkZENUJBRTAwODU2RTlEIC8qIEpTSFRN
TFRhYmxlU2VjdGlvbkVsZW1lbnQuY3BwICovLAorCQkJCUJDMDZFRDA1MEJGRDVCQUUwMDg1NkU5
RCAvKiBKU0hUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmggKi8sCisJCQkJRDY0ODlEMjMxNjZGRkNG
MTAwN0MwMzFCIC8qIEpTSFRNTFRlbXBsYXRlRWxlbWVudC5jcHAgKi8sCisJCQkJRDY0ODlEMjQx
NjZGRkNGMTAwN0MwMzFCIC8qIEpTSFRNTFRlbXBsYXRlRWxlbWVudC5oICovLAorCQkJCUE4MEU3
RTk0MEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwICovLAorCQkJ
CUE4MEU3RTkzMEExQTgzRTMwMDdGQjhDNSAvKiBKU0hUTUxUZXh0QXJlYUVsZW1lbnQuaCAqLywK
KwkJCQk4M0UzNTlBMTFCQjEwMzFEMDAyQ0VCOTggLyogSlNIVE1MVGltZUVsZW1lbnQuY3BwICov
LAorCQkJCTgzRTM1OUEwMUJCMTAzMUQwMDJDRUI5OCAvKiBKU0hUTUxUaW1lRWxlbWVudC5oICov
LAorCQkJCUE4MEU3QjA5MEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQuY3Bw
ICovLAorCQkJCUE4MEU3QjAyMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxUaXRsZUVsZW1lbnQu
aCAqLywKKwkJCQkwNzA3NTZEMTE0MjM5QTRFMDA0MTQxNjEgLyogSlNIVE1MVHJhY2tFbGVtZW50
LmNwcCAqLywKKwkJCQkwNzA3NTZEMjE0MjM5QTRFMDA0MTQxNjEgLyogSlNIVE1MVHJhY2tFbGVt
ZW50LmggKi8sCisJCQkJMUE4NUIyMEUwQTFCMjU4NzAwRDhDODdDIC8qIEpTSFRNTFVMaXN0RWxl
bWVudC5jcHAgKi8sCisJCQkJMUE4NUIyMEYwQTFCMjU4NzAwRDhDODdDIC8qIEpTSFRNTFVMaXN0
RWxlbWVudC5oICovLAorCQkJCTZFNEFCQ0QyMTM4RUEwQjcwMDcxRDI5MSAvKiBKU0hUTUxVbmtu
b3duRWxlbWVudC5jcHAgKi8sCisJCQkJNkU0QUJDRDMxMzhFQTBCNzAwNzFEMjkxIC8qIEpTSFRN
TFVua25vd25FbGVtZW50LmggKi8sCisJCQkJRTQ0NjE0MEUwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpT
SFRNTFZpZGVvRWxlbWVudC5jcHAgKi8sCisJCQkJRTQ0NjE0MEYwQ0Q2ODI2OTAwRkFEQTc1IC8q
IEpTSFRNTFZpZGVvRWxlbWVudC5oICovLAorCQkJCTMxRDI2QkM2MUY4NkQyNjkwMDhGRjI1NSAv
KiBKU0ltYWdlQml0bWFwLmNwcCAqLywKKwkJCQkzMUQyNkJDMzFGODZEMjY1MDA4RkYyNTUgLyog
SlNJbWFnZUJpdG1hcC5oICovLAorCQkJCTMxRDI2QkM0MUY4NkQyNjYwMDhGRjI1NSAvKiBKU0lt
YWdlQml0bWFwT3B0aW9ucy5jcHAgKi8sCisJCQkJMzFEMjZCQzUxRjg2RDI2ODAwOEZGMjU1IC8q
IEpTSW1hZ2VCaXRtYXBPcHRpb25zLmggKi8sCisJCQkJN0M3OTAzQjcxRjg2RkRFNDAwNDYzQTcw
IC8qIEpTSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0LmNwcCAqLywKKwkJCQk3Qzc5MDNCODFG
ODZGREU2MDA0NjNBNzAgLyogSlNJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRleHQuaCAqLywKKwkJ
CQk3Qzc5MDNCNTFGODZGREU0MDA0NjNBNzAgLyogSlNJbWFnZUJpdG1hcFJlbmRlcmluZ0NvbnRl
eHRTZXR0aW5ncy5jcHAgKi8sCisJCQkJN0M3OTAzQjYxRjg2RkRFNjAwNDYzQTcwIC8qIEpTSW1h
Z2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0U2V0dGluZ3MuaCAqLywKKwkJCQlBNzc5NzkyNDBENkI5
RTY0MDAzODUxQjkgLyogSlNJbWFnZURhdGEuY3BwICovLAorCQkJCUE3Nzk3OTI1MEQ2QjlFNjQw
MDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oICovLAorCQkJCTdDMTkzQkZCMUY1RTEwQzQwMDg4RjNF
NiAvKiBKU0ltYWdlU21vb3RoaW5nUXVhbGl0eS5jcHAgKi8sCisJCQkJN0MxOTNCRkMxRjVFMTBD
NTAwODhGM0U2IC8qIEpTSW1hZ2VTbW9vdGhpbmdRdWFsaXR5LmggKi8sCisJCQkJQ0QyN0Y2RTIx
NDU3Njc1ODAwNzgyMDdEIC8qIEpTTWVkaWFDb250cm9sbGVyLmNwcCAqLywKKwkJCQlDRDI3RjZF
MzE0NTc2NzU4MDA3ODIwN0QgLyogSlNNZWRpYUNvbnRyb2xsZXIuaCAqLywKKwkJCQkyRDlCRjcw
RjFEQkZEOENFMDA3QTdEOTkgLyogSlNNZWRpYUVuY3J5cHRlZEV2ZW50LmNwcCAqLywKKwkJCQky
RDlCRjcxMTFEQkZEOTE0MDA3QTdEOTkgLyogSlNNZWRpYUVuY3J5cHRlZEV2ZW50LmggKi8sCisJ
CQkJRTQ0NjE0MTAwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5jcHAgKi8sCisJCQkJ
RTQ0NjE0MTEwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5oICovLAorCQkJCTdFNDZG
NkY4MTYyN0EyQzkwMDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRleFVpbnQuY3BwICovLAorCQkJ
CTdFNDZGNkY5MTYyN0EyQzkwMDA2MjIyMyAvKiBKU09FU0VsZW1lbnRJbmRleFVpbnQuaCAqLywK
KwkJCQk5MDAxNzg3RTEyRTAzNzA3MDA2NDg0NjIgLyogSlNPRVNTdGFuZGFyZERlcml2YXRpdmVz
LmNwcCAqLywKKwkJCQk5MDAxNzg3RjEyRTAzNzA3MDA2NDg0NjIgLyogSlNPRVNTdGFuZGFyZERl
cml2YXRpdmVzLmggKi8sCisJCQkJNkVCRjBFNzQxMkE5ODY4ODAwREIxNzA5IC8qIEpTT0VTVGV4
dHVyZUZsb2F0LmNwcCAqLywKKwkJCQk2RUJGMEU3NTEyQTk4Njg4MDBEQjE3MDkgLyogSlNPRVNU
ZXh0dXJlRmxvYXQuaCAqLywKKwkJCQkzMTQ2RkU3MDE4NDQyMzY3MDAxQTkzN0MgLyogSlNPRVNU
ZXh0dXJlRmxvYXRMaW5lYXIuY3BwICovLAorCQkJCTMxNDZGRTcxMTg0NDIzNjcwMDFBOTM3QyAv
KiBKU09FU1RleHR1cmVGbG9hdExpbmVhci5oICovLAorCQkJCUEzMUM0RTUxMTZFMDJCMDgwMDJG
Nzk1NyAvKiBKU09FU1RleHR1cmVIYWxmRmxvYXQuY3BwICovLAorCQkJCUEzMUM0RTUzMTZFMDJC
NDAwMDJGNzk1NyAvKiBKU09FU1RleHR1cmVIYWxmRmxvYXQuaCAqLywKKwkJCQkzMTA3OENDNTE4
ODBBQUFBMDA4MDk5REMgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFyLmNwcCAqLywKKwkJ
CQkzMTA3OENDNjE4ODBBQUFBMDA4MDk5REMgLyogSlNPRVNUZXh0dXJlSGFsZkZsb2F0TGluZWFy
LmggKi8sCisJCQkJNzdBMTdBQTIxMkYyOEIyQTAwNEUwMkY2IC8qIEpTT0VTVmVydGV4QXJyYXlP
YmplY3QuY3BwICovLAorCQkJCTc3QTE3QUEzMTJGMjhCMkEwMDRFMDJGNiAvKiBKU09FU1ZlcnRl
eEFycmF5T2JqZWN0LmggKi8sCisJCQkJMzE0ODc3RTUxRkFBQjAyNDAwQzA1NzU5IC8qIEpTT2Zm
c2NyZWVuQ2FudmFzLmNwcCAqLywKKwkJCQkzMTQ4NzdFNDFGQUFCMDIyMDBDMDU3NTkgLyogSlNP
ZmZzY3JlZW5DYW52YXMuaCAqLywKKwkJCQkzMTQwQzUyNjFGREY1NTgxMDBEMkE4NzMgLyogSlNP
ZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuY3BwICovLAorCQkJCTMxNDBDNTI1MUZE
RjU1N0YwMEQyQTg3MyAvKiBKU09mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5oICov
LAorCQkJCTdDMTkzQkZEMUY1RTEwRDYwMDg4RjNFNiAvKiBKU1BhdGgyRC5jcHAgKi8sCisJCQkJ
N0MxOTNCRkUxRjVFMTBENzAwODhGM0U2IC8qIEpTUGF0aDJELmggKi8sCisJCQkJQjY1OEZGOUYx
NTIyRUYzQTAwREQ1NTk1IC8qIEpTUmFkaW9Ob2RlTGlzdC5jcHAgKi8sCisJCQkJQjY1OEZGQTAx
NTIyRUYzQTAwREQ1NTk1IC8qIEpTUmFkaW9Ob2RlTGlzdC5oICovLAorCQkJCUJDRUY0NUYzMEU2
ODdCNUMwMDFDMTI4NyAvKiBKU1RleHRNZXRyaWNzLmNwcCAqLywKKwkJCQlCQ0VGNDVGNDBFNjg3
QjVDMDAxQzEyODcgLyogSlNUZXh0TWV0cmljcy5oICovLAorCQkJCTA3MDc1NjhFMTQyMjY2OEMw
MDQxNDE2MSAvKiBKU1RleHRUcmFjay5jcHAgKi8sCisJCQkJMDcwNzU2OEYxNDIyNjY4QzAwNDE0
MTYxIC8qIEpTVGV4dFRyYWNrLmggKi8sCisJCQkJMDcwNzU2RDcxNDIzOUI0QjAwNDE0MTYxIC8q
IEpTVGV4dFRyYWNrQ3VlLmNwcCAqLywKKwkJCQkwNzA3NTZEODE0MjM5QjRCMDA0MTQxNjEgLyog
SlNUZXh0VHJhY2tDdWUuaCAqLywKKwkJCQlDREZENzhCQjIyNDJDNEZGMDBENzIwOEEgLyogSlNU
ZXh0VHJhY2tDdWVHZW5lcmljLmNwcCAqLywKKwkJCQlDREZENzhCQTIyNDJDNEZFMDBENzIwOEEg
LyogSlNUZXh0VHJhY2tDdWVHZW5lcmljLmggKi8sCisJCQkJMDcwNzU2RDkxNDIzOUI0QzAwNDE0
MTYxIC8qIEpTVGV4dFRyYWNrQ3VlTGlzdC5jcHAgKi8sCisJCQkJMDcwNzU2REExNDIzOUI0RTAw
NDE0MTYxIC8qIEpTVGV4dFRyYWNrQ3VlTGlzdC5oICovLAorCQkJCTA3QjVBMkQ5MTQ2NDMyMEEw
MEE4MUVDRSAvKiBKU1RleHRUcmFja0xpc3QuY3BwICovLAorCQkJCTA3QjVBMkRBMTQ2NDMyMEEw
MEE4MUVDRSAvKiBKU1RleHRUcmFja0xpc3QuaCAqLywKKwkJCQlFNDQ2MTQxMjBDRDY4MjY5MDBG
QURBNzUgLyogSlNUaW1lUmFuZ2VzLmNwcCAqLywKKwkJCQlFNDQ2MTQxMzBDRDY4MjY5MDBGQURB
NzUgLyogSlNUaW1lUmFuZ2VzLmggKi8sCisJCQkJMDc4NDYzNDAxNDVCMTUxQTAwQTU4REYxIC8q
IEpTVHJhY2tFdmVudC5jcHAgKi8sCisJCQkJMDc4NDYzNDExNDVCMTUxQTAwQTU4REYxIC8qIEpT
VHJhY2tFdmVudC5oICovLAorCQkJCTVDNTM4MUIzMUQ4N0UwODEwMEUyRUJFNiAvKiBKU1VSTFNl
YXJjaFBhcmFtcy5jcHAgKi8sCisJCQkJNUM1MzgxQjQxRDg3RTA4MTAwRTJFQkU2IC8qIEpTVVJM
U2VhcmNoUGFyYW1zLmggKi8sCisJCQkJMTVDNzcwOTIxMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFs
aWRpdHlTdGF0ZS5jcHAgKi8sCisJCQkJMTVDNzcwOTExMDBEM0NBODAwNUJBMjY3IC8qIEpTVmFs
aWRpdHlTdGF0ZS5oICovLAorCQkJCUNERTgzREI0MTgzRDM1MkEwMDMxRUFBMyAvKiBKU1ZpZGVv
UGxheWJhY2tRdWFsaXR5LmNwcCAqLywKKwkJCQlDREU4M0RCNTE4M0QzNTJBMDAzMUVBQTMgLyog
SlNWaWRlb1BsYXliYWNrUXVhbGl0eS5oICovLAorCQkJCUJFOEVGMDQ2MTcxQzkwMTQwMDlCNDhD
MyAvKiBKU1ZpZGVvVHJhY2suY3BwICovLAorCQkJCUJFOEVGMDQ3MTcxQzkwMTQwMDlCNDhDMyAv
KiBKU1ZpZGVvVHJhY2suaCAqLywKKwkJCQlCRThFRjA0ODE3MUM5MDE0MDA5QjQ4QzMgLyogSlNW
aWRlb1RyYWNrTGlzdC5jcHAgKi8sCisJCQkJQkU4RUYwNDkxNzFDOTAxNDAwOUI0OEMzIC8qIEpT
VmlkZW9UcmFja0xpc3QuaCAqLywKKwkJCQk5N0U5RUM4QjE1REM0OTJGMDA0RjJFNzEgLyogSlNW
b2lkQ2FsbGJhY2suY3BwICovLAorCQkJCTk3RTlFQzhDMTVEQzQ5MkYwMDRGMkU3MSAvKiBKU1Zv
aWRDYWxsYmFjay5oICovLAorCQkJCUJFMjA1MDdGMThBNDYwQUEwMDgwNjQ3RSAvKiBKU1ZUVEN1
ZS5jcHAgKi8sCisJCQkJQkUyMDUwODAxOEE0NjBBQTAwODA2NDdFIC8qIEpTVlRUQ3VlLmggKi8s
CisJCQkJN0FGOUIyMDgxOENGQjVGMjAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uLmNwcCAqLywKKwkJ
CQk3QUY5QjIwOTE4Q0ZCNUYyMDBDNjRCRUYgLyogSlNWVFRSZWdpb24uaCAqLywKKwkJCQk3QUY5
QjIwQTE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmNwcCAqLywKKwkJCQk3QUY5
QjIwQjE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmggKi8sCisJCQkJRDNGM0Qz
NjExQTY5QjE5MDAwNTlGQzJCIC8qIEpTV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5jcHAgKi8sCisJ
CQkJRDNGM0QzNjIxQTY5QjE5MDAwNTlGQzJCIC8qIEpTV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5o
ICovLAorCQkJCUE3RDIwRjYwMTA3RjQwNjkwMEE4MDM5MiAvKiBKU1dlYkdMQWN0aXZlSW5mby5j
cHAgKi8sCisJCQkJQTdEMjBGNjExMDdGNDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZv
LmggKi8sCisJCQkJNDlDN0I5ODAxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xCdWZmZXIuY3Bw
ICovLAorCQkJCTQ5QzdCOTgxMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMQnVmZmVyLmggKi8s
CisJCQkJN0VBMzBGNjcxNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFUQy5jcHAgKi8sCisJCQkJN0VBMzBGNjgxNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21w
cmVzc2VkVGV4dHVyZUFUQy5oICovLAorCQkJCTZFMjQyQjI2MjMzNTkzRDcwMDJDQURENCAvKiBK
U1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuY3BwICovLAorCQkJCTZFMjQyQjI4MjMzNTkzRDcw
MDJDQURENCAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCAqLywKKwkJCQk2RTI0MkIy
OTIzMzU5M0Q3MDAyQ0FERDQgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlRVRDMS5jcHAgKi8s
CisJCQkJNkUyNDJCMkEyMzM1OTNEODAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUVUQzEuaCAqLywKKwkJCQk3RUEzMEY2NzE3RUZGRTc1MDAyNTdEMEIgLyogSlNXZWJHTENvbXBy
ZXNzZWRUZXh0dXJlUFZSVEMuY3BwICovLAorCQkJCTdFQTMwRjY4MTdFRkZFNzUwMDI1N0QwQiAv
KiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oICovLAorCQkJCTZFM0ZBRDM2MTQ3MzNG
NDAwMEU0MjMwNiAvKiBKU1dlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmNwcCAqLywKKwkJCQk2
RTNGQUQzNzE0NzMzRjQwMDBFNDIzMDYgLyogSlNXZWJHTENvbXByZXNzZWRUZXh0dXJlUzNUQy5o
ICovLAorCQkJCTZFRThBNzcwMTBGODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29udGV4dEF0dHJp
YnV0ZXMuY3BwICovLAorCQkJCTZFRThBNzcxMTBGODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29u
dGV4dEF0dHJpYnV0ZXMuaCAqLywKKwkJCQlCQzJDQkY3QTE0MEYxRDU4MDAzODc5QkUgLyogSlNX
ZWJHTENvbnRleHRFdmVudC5jcHAgKi8sCisJCQkJQkMyQ0JGNEIxNDBGMUE2NTAwMzg3OUJFIC8q
IEpTV2ViR0xDb250ZXh0RXZlbnQuaCAqLywKKwkJCQk2RTNGQUQzNjE0NzMzRjQwMTBFNDIzMDcg
LyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmNwcCAqLywKKwkJCQk2RTNGQUQzNzE0NzMzRjQw
MTFFNDIzMDcgLyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggKi8sCisJCQkJNkUzRkFEMzYx
NDczM0Y0MDIwRTQyMzA3IC8qIEpTV2ViR0xEZWJ1Z1NoYWRlcnMuY3BwICovLAorCQkJCTZFM0ZB
RDM3MTQ3MzNGNDAyMkU0MjMwNyAvKiBKU1dlYkdMRGVidWdTaGFkZXJzLmggKi8sCisJCQkJNkUz
RkFEMzYxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2ViR0xEZXB0aFRleHR1cmUuY3BwICovLAorCQkJ
CTZFM0ZBRDM3MTQ3MzNGNDAwMEU0MjMwNyAvKiBKU1dlYkdMRGVwdGhUZXh0dXJlLmggKi8sCisJ
CQkJNkVCRjBFNzQxMkE5ODY4ODAwREIxNzBBIC8qIEpTV2ViR0xEcmF3QnVmZmVycy5jcHAgKi8s
CisJCQkJNkVCRjBFNzUxMkE5ODY4ODAwREIxNzBBIC8qIEpTV2ViR0xEcmF3QnVmZmVycy5oICov
LAorCQkJCTQ5QzdCOTg0MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMRnJhbWVidWZmZXIuY3Bw
ICovLAorCQkJCTQ5QzdCOTg1MTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMRnJhbWVidWZmZXIu
aCAqLywKKwkJCQk5M0YxRDVCRTEyRDUzMzU2MDA4MzJCRUMgLyogSlNXZWJHTExvc2VDb250ZXh0
LmNwcCAqLywKKwkJCQk5M0YxRDVCRjEyRDUzMzU2MDA4MzJCRUMgLyogSlNXZWJHTExvc2VDb250
ZXh0LmggKi8sCisJCQkJNkU3Q0EzMEIyNUI0RDMyODAwNEE5MTNFIC8qIEpTV2ViR0xNdWx0aURy
YXcuY3BwICovLAorCQkJCTZFN0NBMzBBMjVCNEQyOEEwMDRBOTEzRSAvKiBKU1dlYkdMTXVsdGlE
cmF3LmggKi8sCisJCQkJNDlDN0I5ODgxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xQcm9ncmFt
LmNwcCAqLywKKwkJCQk0OUM3Qjk4OTEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFByb2dyYW0u
aCAqLywKKwkJCQk2Rjk5NUEyNzFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJHTFF1ZXJ5LmNwcCAq
LywKKwkJCQk2Rjk5NUEyODFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJHTFF1ZXJ5LmggKi8sCisJ
CQkJNDlDN0I5OEExMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xSZW5kZXJidWZmZXIuY3BwICov
LAorCQkJCTQ5QzdCOThCMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMUmVuZGVyYnVmZmVyLmgg
Ki8sCisJCQkJNDlFRUQxNDAxMDUxOTY5NDAwMDk5RkFCIC8qIEpTV2ViR0xSZW5kZXJpbmdDb250
ZXh0LmNwcCAqLywKKwkJCQk0OUVFRDE0MTEwNTE5Njk0MDAwOTlGQUIgLyogSlNXZWJHTFJlbmRl
cmluZ0NvbnRleHQuaCAqLywKKwkJCQk2Rjk5NUEyOTFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJH
TFNhbXBsZXIuY3BwICovLAorCQkJCTZGOTk1QTJBMUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdM
U2FtcGxlci5oICovLAorCQkJCTQ5QzdCOThGMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMU2hh
ZGVyLmNwcCAqLywKKwkJCQk0OUM3Qjk5MDEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFNoYWRl
ci5oICovLAorCQkJCUEwN0QzMzUzMTUyQjYzMEUwMDFCNjM5MyAvKiBKU1dlYkdMU2hhZGVyUHJl
Y2lzaW9uRm9ybWF0LmNwcCAqLywKKwkJCQlBMDdEMzM1NDE1MkI2MzBFMDAxQjYzOTMgLyogSlNX
ZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdC5oICovLAorCQkJCTZGOTk1QTJCMUE3MDgzMzcwMEE3
MzVGNCAvKiBKU1dlYkdMU3luYy5jcHAgKi8sCisJCQkJNkY5OTVBMkMxQTcwODMzNzAwQTczNUY0
IC8qIEpTV2ViR0xTeW5jLmggKi8sCisJCQkJNDlDN0I5OTExMDQyRDJEMzAwMDlENDQ3IC8qIEpT
V2ViR0xUZXh0dXJlLmNwcCAqLywKKwkJCQk0OUM3Qjk5MjEwNDJEMkQzMDAwOUQ0NDcgLyogSlNX
ZWJHTFRleHR1cmUuaCAqLywKKwkJCQk2Rjk5NUEyRDFBNzA4MzM3MDBBNzM1RjQgLyogSlNXZWJH
TFRyYW5zZm9ybUZlZWRiYWNrLmNwcCAqLywKKwkJCQk2Rjk5NUEyRTFBNzA4MzM3MDBBNzM1RjQg
LyogSlNXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmggKi8sCisJCQkJMEM0NTM0MjUxMENEQkJGQTAw
ODY5MTU3IC8qIEpTV2ViR0xVbmlmb3JtTG9jYXRpb24uY3BwICovLAorCQkJCTBDNDUzNDI2MTBD
REJCRkEwMDg2OTE1NyAvKiBKU1dlYkdMVW5pZm9ybUxvY2F0aW9uLmggKi8sCisJCQkJNkY5OTVB
MkYxQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5jcHAgKi8sCisJ
CQkJNkY5OTVBMzAxQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdC5o
ICovLAorCQkJCTc3RUY2MkYxMTJGOURCNzQwMEM3N0JEMiAvKiBKU1dlYkdMVmVydGV4QXJyYXlP
YmplY3RPRVMuY3BwICovLAorCQkJCTc3RUY2MkYyMTJGOURCNzQwMEM3N0JEMiAvKiBKU1dlYkdM
VmVydGV4QXJyYXlPYmplY3RPRVMuaCAqLywKKwkJCQkzMUEwODkxQjFFNzM4RDU5MDAzQjY2MDkg
LyogSlNXZWJHUFVCdWZmZXIuY3BwICovLAorCQkJCTMxQTA4OTFEMUU3MzhENTkwMDNCNjYwOSAv
KiBKU1dlYkdQVUJ1ZmZlci5oICovLAorCQkJCTMxQTA4OTFFMUU3MzhENTkwMDNCNjYwOSAvKiBK
U1dlYkdQVUNvbW1hbmRCdWZmZXIuY3BwICovLAorCQkJCTMxQTA4OTIwMUU3MzhENTkwMDNCNjYw
OSAvKiBKU1dlYkdQVUNvbW1hbmRCdWZmZXIuaCAqLywKKwkJCQkzMUEwODkyMTFFNzM4RDU5MDAz
QjY2MDkgLyogSlNXZWJHUFVDb21tYW5kUXVldWUuY3BwICovLAorCQkJCTMxQTA4OTIzMUU3MzhE
NTkwMDNCNjYwOSAvKiBKU1dlYkdQVUNvbW1hbmRRdWV1ZS5oICovLAorCQkJCTM4RjIzQUFFMUU4
RTgzQzQwMENFNDZGNSAvKiBKU1dlYkdQVUNvbXB1dGVDb21tYW5kRW5jb2Rlci5jcHAgKi8sCisJ
CQkJMzhGMjNBQjAxRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0ZUNvbW1hbmRFbmNv
ZGVyLmggKi8sCisJCQkJMzhGMjNBQjExRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0
ZVBpcGVsaW5lU3RhdGUuY3BwICovLAorCQkJCTM4RjIzQUIyMUU4RTgzRDAwMENFNDZGNSAvKiBK
U1dlYkdQVUNvbXB1dGVQaXBlbGluZVN0YXRlLmggKi8sCisJCQkJMzFBMDg5MjQxRTczOEQ1OTAw
M0I2NjA5IC8qIEpTV2ViR1BVRGVwdGhTdGVuY2lsRGVzY3JpcHRvci5jcHAgKi8sCisJCQkJMzFB
MDg5MjYxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVRGVwdGhTdGVuY2lsRGVzY3JpcHRvci5o
ICovLAorCQkJCTMxQTA4OTI3MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURlcHRoU3RlbmNp
bFN0YXRlLmNwcCAqLywKKwkJCQkzMUEwODkyOTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVE
ZXB0aFN0ZW5jaWxTdGF0ZS5oICovLAorCQkJCTMxQTA4OTJBMUU3MzhENTkwMDNCNjYwOSAvKiBK
U1dlYkdQVURyYXdhYmxlLmNwcCAqLywKKwkJCQkzMUEwODkyQzFFNzM4RDU5MDAzQjY2MDkgLyog
SlNXZWJHUFVEcmF3YWJsZS5oICovLAorCQkJCTMxQTA4OTJEMUU3MzhENTkwMDNCNjYwOSAvKiBK
U1dlYkdQVUZ1bmN0aW9uLmNwcCAqLywKKwkJCQkzMUEwODkyRjFFNzM4RDU5MDAzQjY2MDkgLyog
SlNXZWJHUFVGdW5jdGlvbi5oICovLAorCQkJCTMxQTA4OTMwMUU3MzhENTkwMDNCNjYwOSAvKiBK
U1dlYkdQVUxpYnJhcnkuY3BwICovLAorCQkJCTMxQTA4OTMyMUU3MzhENTkwMDNCNjYwOSAvKiBK
U1dlYkdQVUxpYnJhcnkuaCAqLywKKwkJCQkzMTJGRjkzRTIxQTYxRjA3MDBFQjE5OUQgLyogSlNX
ZWJHUFVRdWV1ZS5jcHAgKi8sCisJCQkJMzEyRkY5M0QyMUE2MUYwNzAwRUIxOTlEIC8qIEpTV2Vi
R1BVUXVldWUuaCAqLywKKwkJCQkzMUEwODkzMzFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVS
ZW5kZXJDb21tYW5kRW5jb2Rlci5jcHAgKi8sCisJCQkJMzFBMDg5MzUxRTczOEQ1OTAwM0I2NjA5
IC8qIEpTV2ViR1BVUmVuZGVyQ29tbWFuZEVuY29kZXIuaCAqLywKKwkJCQkzMUEwODkzNjFFNzM4
RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmNwcCAqLywKKwkJCQkzMUEw
ODkzODFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmggKi8sCisJ
CQkJMzFBMDg5MzkxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0F0dGFjaG1l
bnREZXNjcmlwdG9yLmNwcCAqLywKKwkJCQkzMUEwODkzQjFFNzM4RDU5MDAzQjY2MDkgLyogSlNX
ZWJHUFVSZW5kZXJQYXNzQXR0YWNobWVudERlc2NyaXB0b3IuaCAqLywKKwkJCQkzMUEwODkzQzFF
NzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzQ29sb3JBdHRhY2htZW50RGVzY3Jp
cHRvci5jcHAgKi8sCisJCQkJMzFBMDg5M0UxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVu
ZGVyUGFzc0NvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuaCAqLywKKwkJCQkzMUEwODkzRjFFNzM4
RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzRGVwdGhBdHRhY2htZW50RGVzY3JpcHRv
ci5jcHAgKi8sCisJCQkJMzFBMDg5NDExRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVy
UGFzc0RlcHRoQXR0YWNobWVudERlc2NyaXB0b3IuaCAqLywKKwkJCQkzMUEwODk0MjFFNzM4RDU5
MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQYXNzRGVzY3JpcHRvci5jcHAgKi8sCisJCQkJMzFB
MDg5NDQxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0Rlc2NyaXB0b3IuaCAq
LywKKwkJCQkzMUEwODk0NTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGlu
ZUNvbG9yQXR0YWNobWVudERlc2NyaXB0b3IuY3BwICovLAorCQkJCTMxQTA4OTQ3MUU3MzhENTkw
MDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBpcGVsaW5lQ29sb3JBdHRhY2htZW50RGVzY3JpcHRv
ci5oICovLAorCQkJCTMxQTA4OTQ4MUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBp
cGVsaW5lRGVzY3JpcHRvci5jcHAgKi8sCisJCQkJMzFBMDg5NEExRTczOEQ1OTAwM0I2NjA5IC8q
IEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVEZXNjcmlwdG9yLmggKi8sCisJCQkJMzFBMDg5NEIxRTcz
OEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVTdGF0ZS5jcHAgKi8sCisJCQkJ
MzFBMDg5NEQxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGlwZWxpbmVTdGF0ZS5o
ICovLAorCQkJCTM4N0FFOTU4MUU4RTkyRUYwMDAwREU5NiAvKiBKU1dlYkdQVVNpemUuY3BwICov
LAorCQkJCTM4N0FFOTU5MUU4RTkyRUYwMDAwREU5NiAvKiBKU1dlYkdQVVNpemUuaCAqLywKKwkJ
CQkzMUEwODk0RTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVUZXh0dXJlLmNwcCAqLywKKwkJ
CQkzMUEwODk1MDFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVUZXh0dXJlLmggKi8sCisJCQkJ
MzFBMDg5NTExRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVVGV4dHVyZURlc2NyaXB0b3IuY3Bw
ICovLAorCQkJCTMxQTA4OTUzMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVVRleHR1cmVEZXNj
cmlwdG9yLmggKi8sCisJCQkJMEZEQTdDMjQxODgzMzMzMjAwQzk1NEI1IC8qIEpTV2ViS2l0UGxh
eWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudC5jcHAgKi8sCisJCQkJMEZEQTdDMjUxODgzMzMz
MjAwQzk1NEI1IC8qIEpTV2ViS2l0UGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlFdmVudC5oICov
LAorCQkJKTsKKwkJCW5hbWUgPSBIVE1MOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJ
fTsKKwkJQTgzQjc5MEEwQ0NBRkY0NzAwMEIwODI1IC8qIFNWRyAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQjIwMTExMDUwQUI3NzQwNTAwREIwRTY4IC8q
IEpTU1ZHQUVsZW1lbnQuY3BwICovLAorCQkJCUIyMDExMTA2MEFCNzc0MDUwMERCMEU2OCAvKiBK
U1NWR0FFbGVtZW50LmggKi8sCisJCQkJMjREOTEyOEYxM0NBOTUxRTAwRDIxOTE1IC8qIEpTU1ZH
QWx0R2x5cGhEZWZFbGVtZW50LmNwcCAqLywKKwkJCQkyNEQ5MTI5MDEzQ0E5NTFFMDBEMjE5MTUg
LyogSlNTVkdBbHRHbHlwaERlZkVsZW1lbnQuaCAqLywKKwkJCQk2NTE1RUM4RjBEOTcyM0ZGMDA2
M0Q0OUEgLyogSlNTVkdBbHRHbHlwaEVsZW1lbnQuY3BwICovLAorCQkJCTY1MTVFQzkwMEQ5NzIz
RkYwMDYzRDQ5QSAvKiBKU1NWR0FsdEdseXBoRWxlbWVudC5oICovLAorCQkJCTI0RDkxMjkzMTND
QTk1NjEwMEQyMTkxNSAvKiBKU1NWR0FsdEdseXBoSXRlbUVsZW1lbnQuY3BwICovLAorCQkJCTI0
RDkxMjk0MTNDQTk1NjEwMEQyMTkxNSAvKiBKU1NWR0FsdEdseXBoSXRlbUVsZW1lbnQuaCAqLywK
KwkJCQlCMjIyRjY5NjBBQjc3MTk1MDAyMkVGQUQgLyogSlNTVkdBbmdsZS5jcHAgKi8sCisJCQkJ
QjIyMkY2OTcwQUI3NzE5NTAwMjJFRkFEIC8qIEpTU1ZHQW5nbGUuaCAqLywKKwkJCQlCMkZBM0M0
RTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlQ29sb3JFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMkZBM0M0RjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlQ29sb3JFbGVtZW50Lmgg
Ki8sCisJCQkJQjJGQTNDNTAwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRBbmdsZS5j
cHAgKi8sCisJCQkJQjJGQTNDNTEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRBbmds
ZS5oICovLAorCQkJCUIyRkEzQzUyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkQm9v
bGVhbi5jcHAgKi8sCisJCQkJQjJGQTNDNTMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0
ZWRCb29sZWFuLmggKi8sCisJCQkJQjJGQTNDNTQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5p
bWF0ZWRFbnVtZXJhdGlvbi5jcHAgKi8sCisJCQkJQjJGQTNDNTUwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHQW5pbWF0ZWRFbnVtZXJhdGlvbi5oICovLAorCQkJCUIyRkEzQzU2MEFCNzVBNkUwMDBF
NUFDNCAvKiBKU1NWR0FuaW1hdGVkSW50ZWdlci5jcHAgKi8sCisJCQkJQjJGQTNDNTcwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRJbnRlZ2VyLmggKi8sCisJCQkJQjJGQTNDNTgwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRMZW5ndGguY3BwICovLAorCQkJCUIyRkEzQzU5
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTGVuZ3RoLmggKi8sCisJCQkJQjJGQTND
NUEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRMZW5ndGhMaXN0LmNwcCAqLywKKwkJ
CQlCMkZBM0M1QjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZExlbmd0aExpc3QuaCAq
LywKKwkJCQlCMkZBM0M1QzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51bWJlci5j
cHAgKi8sCisJCQkJQjJGQTNDNUQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWROdW1i
ZXIuaCAqLywKKwkJCQlCMkZBM0M1RTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZE51
bWJlckxpc3QuY3BwICovLAorCQkJCUIyRkEzQzVGMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0Fu
aW1hdGVkTnVtYmVyTGlzdC5oICovLAorCQkJCUIyRkEzQzYyMEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR0FuaW1hdGVkUHJlc2VydmVBc3BlY3RSYXRpby5jcHAgKi8sCisJCQkJQjJGQTNDNjMwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRQcmVzZXJ2ZUFzcGVjdFJhdGlvLmggKi8sCisJ
CQkJQjJGQTNDNjQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRSZWN0LmNwcCAqLywK
KwkJCQlCMkZBM0M2NTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFJlY3QuaCAqLywK
KwkJCQlCMkZBM0M2NjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFN0cmluZy5jcHAg
Ki8sCisJCQkJQjJGQTNDNjcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRTdHJpbmcu
aCAqLywKKwkJCQlCMkZBM0M2ODBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFRyYW5z
Zm9ybUxpc3QuY3BwICovLAorCQkJCUIyRkEzQzY5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0Fu
aW1hdGVkVHJhbnNmb3JtTGlzdC5oICovLAorCQkJCUIyRkEzQzZBMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0FuaW1hdGVFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M2QjBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdBbmltYXRlRWxlbWVudC5oICovLAorCQkJCTQ0OTZFMzlCMTM5ODEzNkMwMDNF
RTMyQSAvKiBKU1NWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmNwcCAqLywKKwkJCQk0NDk2RTM5QzEz
OTgxMzZDMDAzRUUzMkEgLyogSlNTVkdBbmltYXRlTW90aW9uRWxlbWVudC5oICovLAorCQkJCUIy
RkEzQzZDMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmNw
cCAqLywKKwkJCQlCMkZBM0M2RDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlVHJhbnNm
b3JtRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzZFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0Fu
aW1hdGlvbkVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzZGMEFCNzVBNkUwMDBFNUFDNCAvKiBK
U1NWR0FuaW1hdGlvbkVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0M3MDBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdDaXJjbGVFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M3MTBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdDaXJjbGVFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDNzIwQUI3NUE2RTAwMEU1
QUM0IC8qIEpTU1ZHQ2xpcFBhdGhFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M3MzBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdDbGlwUGF0aEVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0M3NjBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5jcHAg
Ki8sCisJCQkJQjJGQTNDNzcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHQ29tcG9uZW50VHJhbnNm
ZXJGdW5jdGlvbkVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0M3ODBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdDdXJzb3JFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M3OTBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdDdXJzb3JFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDN0EwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRGVmc0VsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzdCMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0RlZnNFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDN0MwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRGVzY0VsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzdEMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0Rlc2NFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDN0UwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRG9jdW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzdGMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0RvY3VtZW50LmggKi8sCisJCQkJQjIyMkY2OUEwQUI3NzFCODAwMjJFRkFEIC8qIEpT
U1ZHRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMkY2OUIwQUI3NzFCODAwMjJFRkFEIC8qIEpTU1ZH
RWxlbWVudC5oICovLAorCQkJCUIyRkEzQzgwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0VsbGlw
c2VFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M4MTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdF
bGxpcHNlRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzgyMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0ZFQmxlbmRFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M4MzBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdGRUJsZW5kRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzg0MEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0ZFQ29sb3JNYXRyaXhFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M4NTBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdGRUNvbG9yTWF0cml4RWxlbWVudC5oICovLAorCQkJCUIyRkEzQzg2
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFQ29tcG9uZW50VHJhbnNmZXJFbGVtZW50LmNwcCAq
LywKKwkJCQlCMkZBM0M4NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUNvbXBvbmVudFRyYW5z
ZmVyRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzg4MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZF
Q29tcG9zaXRlRWxlbWVudC5jcHAgKi8sCisJCQkJQjJGQTNDODkwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHRkVDb21wb3NpdGVFbGVtZW50LmggKi8sCisJCQkJMTlCRkY2NDkxMUMwRjJBQzAwQjhD
MDREIC8qIEpTU1ZHRkVDb252b2x2ZU1hdHJpeEVsZW1lbnQuY3BwICovLAorCQkJCTE5QkZGNjRB
MTFDMEYyQUMwMEI4QzA0RCAvKiBKU1NWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50LmggKi8sCisJ
CQkJQjJGQTNDOEEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaWZmdXNlTGlnaHRpbmdFbGVt
ZW50LmNwcCAqLywKKwkJCQlCMkZBM0M4QjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRURpZmZ1
c2VMaWdodGluZ0VsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0M4QzBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzhEMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0ZFRGlzcGxhY2VtZW50TWFwRWxlbWVudC5oICovLAorCQkJCUIy
RkEzQzhFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRGlzdGFudExpZ2h0RWxlbWVudC5jcHAg
Ki8sCisJCQkJQjJGQTNDOEYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVEaXN0YW50TGlnaHRF
bGVtZW50LmggKi8sCisJCQkJNDM1OEU4N0ExMzYwQTJFRTAwRTQ3NDhDIC8qIEpTU1ZHRkVEcm9w
U2hhZG93RWxlbWVudC5jcHAgKi8sCisJCQkJNDM1OEU4N0IxMzYwQTJFRTAwRTQ3NDhDIC8qIEpT
U1ZHRkVEcm9wU2hhZG93RWxlbWVudC5oICovLAorCQkJCUIyRkEzQzkwMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0ZFRmxvb2RFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M5MTBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdGRUZsb29kRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzkyMEFCNzVBNkUw
MDBFNUFDNCAvKiBKU1NWR0ZFRnVuY0FFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M5MzBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNBRWxlbWVudC5oICovLAorCQkJCUIyRkEzQzk0MEFC
NzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY0JFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0M5
NTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNCRWxlbWVudC5oICovLAorCQkJCUIyRkEz
Qzk2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY0dFbGVtZW50LmNwcCAqLywKKwkJCQlC
MkZBM0M5NzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNHRWxlbWVudC5oICovLAorCQkJ
CUIyRkEzQzk4MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY1JFbGVtZW50LmNwcCAqLywK
KwkJCQlCMkZBM0M5OTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNSRWxlbWVudC5oICov
LAorCQkJCUIyRkEzQzlBMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFR2F1c3NpYW5CbHVyRWxl
bWVudC5jcHAgKi8sCisJCQkJQjJGQTNDOUIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVHYXVz
c2lhbkJsdXJFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDOUMwQUI3NUE2RTAwMEU1QUM0IC8qIEpT
U1ZHRkVJbWFnZUVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzlEMEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR0ZFSW1hZ2VFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDOUUwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHRkVNZXJnZUVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQzlGMEFCNzVBNkUwMDBF
NUFDNCAvKiBKU1NWR0ZFTWVyZ2VFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDQTAwQUI3NUE2RTAw
MEU1QUM0IC8qIEpTU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0NBMTBB
Qjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRU1lcmdlTm9kZUVsZW1lbnQuaCAqLywKKwkJCQk4NDIy
NDE4MTEwN0U3N0Y0MDA3NjZBODcgLyogSlNTVkdGRU1vcnBob2xvZ3lFbGVtZW50LmNwcCAqLywK
KwkJCQk4NDIyNDE4MjEwN0U3N0Y0MDA3NjZBODcgLyogSlNTVkdGRU1vcnBob2xvZ3lFbGVtZW50
LmggKi8sCisJCQkJQjJGQTNDQTIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVPZmZzZXRFbGVt
ZW50LmNwcCAqLywKKwkJCQlCMkZBM0NBMzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRU9mZnNl
dEVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0NBNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdGRVBv
aW50TGlnaHRFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0NBNTBBQjc1QTZFMDAwRTVBQzQgLyog
SlNTVkdGRVBvaW50TGlnaHRFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDQTYwQUI3NUE2RTAwMEU1
QUM0IC8qIEpTU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC5jcHAgKi8sCisJCQkJQjJGQTND
QTcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVTcGVjdWxhckxpZ2h0aW5nRWxlbWVudC5oICov
LAorCQkJCUIyRkEzQ0E4MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZFU3BvdExpZ2h0RWxlbWVu
dC5jcHAgKi8sCisJCQkJQjJGQTNDQTkwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVTcG90TGln
aHRFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDQUEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRkVU
aWxlRWxlbWVudC5jcHAgKi8sCisJCQkJQjJGQTNDQUIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZH
RkVUaWxlRWxlbWVudC5oICovLAorCQkJCUIyRkEzQ0FDMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R0ZFVHVyYnVsZW5jZUVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQ0FEMEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0NBRTBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdGaWx0ZXJFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0NBRjBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdGaWx0ZXJFbGVtZW50LmggKi8sCisJCQkJQjI3QjI4MUYwQ0VG
MEMwNzAwRDM5RDU0IC8qIEpTU1ZHRm9udEVsZW1lbnQuY3BwICovLAorCQkJCUIyN0IyODIwMENF
RjBDMDcwMEQzOUQ1NCAvKiBKU1NWR0ZvbnRFbGVtZW50LmggKi8sCisJCQkJQTgzQjc4RkEwQ0NB
RkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VFbGVtZW50LmNwcCAqLywKKwkJCQlBODNCNzhG
QjBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZUVsZW1lbnQuaCAqLywKKwkJCQlBODNC
NzhGNzBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQuY3BwICov
LAorCQkJCUE4M0I3OEY2MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRm9ybWF0RWxl
bWVudC5oICovLAorCQkJCUE4M0I3OEY5MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNl
TmFtZUVsZW1lbnQuY3BwICovLAorCQkJCUE4M0I3OEY4MENDQUZGMTUwMDBCMDgyNSAvKiBKU1NW
R0ZvbnRGYWNlTmFtZUVsZW1lbnQuaCAqLywKKwkJCQlBODNCNzhGNTBDQ0FGRjE1MDAwQjA4MjUg
LyogSlNTVkdGb250RmFjZVNyY0VsZW1lbnQuY3BwICovLAorCQkJCUE4M0I3OEY0MENDQUZGMTUw
MDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlU3JjRWxlbWVudC5oICovLAorCQkJCUE4M0I3OEYzMEND
QUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5jcHAgKi8sCisJCQkJQTgz
Qjc4RjIwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VVcmlFbGVtZW50LmggKi8sCisJ
CQkJQjJGQTNDQjAwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQu
Y3BwICovLAorCQkJCUIyRkEzQ0IxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0ZvcmVpZ25PYmpl
Y3RFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDQjIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHR0Vs
ZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQ0IzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0dFbGVt
ZW50LmggKi8sCisJCQkJRkIyNzNFODMyMDg2RTczRTAwQTU0RTg3IC8qIEpTU1ZHR2VvbWV0cnlF
bGVtZW50LmNwcCAqLywKKwkJCQlGQjI3M0U4NDIwODZFNzNFMDBBNTRFODcgLyogSlNTVkdHZW9t
ZXRyeUVsZW1lbnQuaCAqLywKKwkJCQlCMjdCMjgyMTBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdH
bHlwaEVsZW1lbnQuY3BwICovLAorCQkJCUIyN0IyODIyMENFRjBDMDcwMEQzOUQ1NCAvKiBKU1NW
R0dseXBoRWxlbWVudC5oICovLAorCQkJCTI0RDkxMjk3MTNDQTk2REUwMEQyMTkxNSAvKiBKU1NW
R0dseXBoUmVmRWxlbWVudC5jcHAgKi8sCisJCQkJMjREOTEyOTkxM0NBOTcxNDAwRDIxOTE1IC8q
IEpTU1ZHR2x5cGhSZWZFbGVtZW50LmggKi8sCisJCQkJQjJGQTNDQjQwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHR3JhZGllbnRFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0NCNTBBQjc1QTZFMDAw
RTVBQzQgLyogSlNTVkdHcmFkaWVudEVsZW1lbnQuaCAqLywKKwkJCQk1QTkxNDY5RThFOUY4NDg1
QzM3QTI4NzYgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQuY3BwICovLAorCQkJCTk1MEM0QzAyQkVE
ODkzNkY4MThFMkY5OSAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5oICovLAorCQkJCTg0ODUyMjc3
MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgKi8sCisJCQkJODQ4NTIy
NzgxMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHSEtlcm5FbGVtZW50LmggKi8sCisJCQkJQjJGQTND
QjYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZB
M0NCNzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdJbWFnZUVsZW1lbnQuaCAqLywKKwkJCQlCMkZB
M0NCODBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdMZW5ndGguY3BwICovLAorCQkJCUIyRkEzQ0I5
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5oICovLAorCQkJCUIyRkEzQ0JBMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aExpc3QuY3BwICovLAorCQkJCUIyRkEzQ0JCMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aExpc3QuaCAqLywKKwkJCQlCMkZBM0NCQzBBQjc1QTZF
MDAwRTVBQzQgLyogSlNTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEz
Q0JEMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oICovLAor
CQkJCUIyRkEzQ0JFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR0xpbmVFbGVtZW50LmNwcCAqLywK
KwkJCQlCMkZBM0NCRjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdMaW5lRWxlbWVudC5oICovLAor
CQkJCUIyRkEzQ0MwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hcmtlckVsZW1lbnQuY3BwICov
LAorCQkJCUIyRkEzQ0MxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hcmtlckVsZW1lbnQuaCAq
LywKKwkJCQlCMkZBM0NDMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNYXNrRWxlbWVudC5jcHAg
Ki8sCisJCQkJQjJGQTNDQzMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHTWFza0VsZW1lbnQuaCAq
LywKKwkJCQlCMkZBM0NDNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdNYXRyaXguY3BwICovLAor
CQkJCUIyRkEzQ0M1MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01hdHJpeC5oICovLAorCQkJCUIy
RkEzQ0M2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR01ldGFkYXRhRWxlbWVudC5jcHAgKi8sCisJ
CQkJQjJGQTNDQzcwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHTWV0YWRhdGFFbGVtZW50LmggKi8s
CisJCQkJQjI3QjI4MjMwQ0VGMEMwNzAwRDM5RDU0IC8qIEpTU1ZHTWlzc2luZ0dseXBoRWxlbWVu
dC5jcHAgKi8sCisJCQkJQjI3QjI4MjQwQ0VGMEMwNzAwRDM5RDU0IC8qIEpTU1ZHTWlzc2luZ0ds
eXBoRWxlbWVudC5oICovLAorCQkJCTQ0OTZFM0ExMTM5ODEzQ0IwMDNFRTMyQSAvKiBKU1NWR01Q
YXRoRWxlbWVudC5jcHAgKi8sCisJCQkJNDQ5NkUzOUYxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZH
TVBhdGhFbGVtZW50LmggKi8sCisJCQkJODU3NEQxRjMwQURFNjEyMjAwNENCQTExIC8qIEpTU1ZH
TnVtYmVyLmNwcCAqLywKKwkJCQk4NTc0RDFGNDBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdOdW1i
ZXIuaCAqLywKKwkJCQlCMkZBM0NDODBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdOdW1iZXJMaXN0
LmNwcCAqLywKKwkJCQlCMkZBM0NDOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdOdW1iZXJMaXN0
LmggKi8sCisJCQkJQjJGQTNDQ0MwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aEVsZW1lbnQu
Y3BwICovLAorCQkJCUIyRkEzQ0NEMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhFbGVtZW50
LmggKi8sCisJCQkJQjJGQTNDQ0UwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZy5jcHAg
Ki8sCisJCQkJQjJGQTNDQ0YwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZy5oICovLAor
CQkJCUIyRkEzQ0QwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdBcmNBYnMuY3BwICov
LAorCQkJCUIyRkEzQ0QxMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdBcmNBYnMuaCAq
LywKKwkJCQlCMkZBM0NEMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQXJjUmVsLmNw
cCAqLywKKwkJCQlCMkZBM0NEMzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQXJjUmVs
LmggKi8sCisJCQkJQjJGQTNDRDQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0Nsb3Nl
UGF0aC5jcHAgKi8sCisJCQkJQjJGQTNDRDUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNl
Z0Nsb3NlUGF0aC5oICovLAorCQkJCUIyRkEzQ0Q2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1Bh
dGhTZWdDdXJ2ZXRvQ3ViaWNBYnMuY3BwICovLAorCQkJCUIyRkEzQ0Q3MEFCNzVBNkUwMDBFNUFD
NCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMuaCAqLywKKwkJCQlCMkZBM0NEODBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmNwcCAqLywKKwkJCQlC
MkZBM0NEOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljUmVsLmgg
Ki8sCisJCQkJQjJGQTNDREEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9D
dWJpY1Ntb290aEFicy5jcHAgKi8sCisJCQkJQjJGQTNDREIwQUI3NUE2RTAwMEU1QUM0IC8qIEpT
U1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290aEFicy5oICovLAorCQkJCUIyRkEzQ0RDMEFCNzVB
NkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhSZWwuY3BwICovLAor
CQkJCUIyRkEzQ0REMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNT
bW9vdGhSZWwuaCAqLywKKwkJCQlCMkZBM0NERTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRo
U2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5jcHAgKi8sCisJCQkJQjJGQTNDREYwQUI3NUE2RTAwMEU1
QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMuaCAqLywKKwkJCQlCMkZBM0NF
MDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1JlbC5jcHAg
Ki8sCisJCQkJQjJGQTNDRTEwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9R
dWFkcmF0aWNSZWwuaCAqLywKKwkJCQlCMkZBM0NFMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQ
YXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aEFicy5jcHAgKi8sCisJCQkJQjJGQTNDRTMwQUI3
NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMuaCAq
LywKKwkJCQlCMkZBM0NFNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1
YWRyYXRpY1Ntb290aFJlbC5jcHAgKi8sCisJCQkJQjJGQTNDRTUwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhSZWwuaCAqLywKKwkJCQlCMkZBM0NF
NjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvQWJzLmNwcCAqLywKKwkJCQlC
MkZBM0NFNzBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvQWJzLmggKi8sCisJ
CQkJQjJGQTNDRTgwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250
YWxBYnMuY3BwICovLAorCQkJCUIyRkEzQ0U5MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhT
ZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmggKi8sCisJCQkJQjJGQTNDRUEwQUI3NUE2RTAwMEU1QUM0
IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxSZWwuY3BwICovLAorCQkJCUIyRkEzQ0VC
MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsUmVsLmggKi8s
CisJCQkJQjJGQTNDRUMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b1JlbC5j
cHAgKi8sCisJCQkJQjJGQTNDRUQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0
b1JlbC5oICovLAorCQkJCUIyRkEzQ0VFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdM
aW5ldG9WZXJ0aWNhbEFicy5jcHAgKi8sCisJCQkJQjJGQTNDRUYwQUI3NUE2RTAwMEU1QUM0IC8q
IEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsQWJzLmggKi8sCisJCQkJQjJGQTNDRjAwQUI3NUE2
RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsUmVsLmNwcCAqLywKKwkJCQlC
MkZBM0NGMTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvVmVydGljYWxSZWwu
aCAqLywKKwkJCQlCMkZBM0NGMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGlzdC5j
cHAgKi8sCisJCQkJQjJGQTNDRjMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpc3Qu
aCAqLywKKwkJCQlCMkZBM0NGNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTW92ZXRv
QWJzLmNwcCAqLywKKwkJCQlCMkZBM0NGNTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdQYXRoU2Vn
TW92ZXRvQWJzLmggKi8sCisJCQkJQjJGQTNDRjYwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUGF0
aFNlZ01vdmV0b1JlbC5jcHAgKi8sCisJCQkJQjJGQTNDRjcwQUI3NUE2RTAwMEU1QUM0IC8qIEpT
U1ZHUGF0aFNlZ01vdmV0b1JlbC5oICovLAorCQkJCUIyRkEzQ0Y4MEFCNzVBNkUwMDBFNUFDNCAv
KiBKU1NWR1BhdHRlcm5FbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0NGOTBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdQYXR0ZXJuRWxlbWVudC5oICovLAorCQkJCTg1NzREMUY1MEFERTYxMjIwMDRD
QkExMSAvKiBKU1NWR1BvaW50LmNwcCAqLywKKwkJCQk4NTc0RDFGNjBBREU2MTIyMDA0Q0JBMTEg
LyogSlNTVkdQb2ludC5oICovLAorCQkJCUIyRkEzQ0ZBMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BvaW50TGlzdC5jcHAgKi8sCisJCQkJQjJGQTNDRkIwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZH
UG9pbnRMaXN0LmggKi8sCisJCQkJQjJGQTNDRkQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUG9s
eWdvbkVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzQ0ZFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NW
R1BvbHlnb25FbGVtZW50LmggKi8sCisJCQkJQjJGQTNDRkYwQUI3NUE2RTAwMEU1QUM0IC8qIEpT
U1ZHUG9seWxpbmVFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0QwMDBBQjc1QTZFMDAwRTVBQzQg
LyogSlNTVkdQb2x5bGluZUVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0QwMTBBQjc1QTZFMDAwRTVB
QzQgLyogSlNTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmNwcCAqLywKKwkJCQlCMkZBM0QwMjBBQjc1
QTZFMDAwRTVBQzQgLyogSlNTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmggKi8sCisJCQkJQjJGQTNE
MDMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcCAqLywK
KwkJCQlCMkZBM0QwNDBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdSYWRpYWxHcmFkaWVudEVsZW1l
bnQuaCAqLywKKwkJCQk4NTc0RDFGNzBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdSZWN0LmNwcCAq
LywKKwkJCQk4NTc0RDFGODBBREU2MTIyMDA0Q0JBMTEgLyogSlNTVkdSZWN0LmggKi8sCisJCQkJ
QjJGQTNEMDUwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUmVjdEVsZW1lbnQuY3BwICovLAorCQkJ
CUIyRkEzRDA2MEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1JlY3RFbGVtZW50LmggKi8sCisJCQkJ
QjJGQTNEMDgwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHUmVuZGVyaW5nSW50ZW50LmNwcCAqLywK
KwkJCQlCMkZBM0QwOTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdSZW5kZXJpbmdJbnRlbnQuaCAq
LywKKwkJCQlCMkZBM0QwQTBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTY3JpcHRFbGVtZW50LmNw
cCAqLywKKwkJCQlCMkZBM0QwQjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTY3JpcHRFbGVtZW50
LmggKi8sCisJCQkJQjJGQTNEMEMwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHU2V0RWxlbWVudC5j
cHAgKi8sCisJCQkJQjJGQTNEMEQwQUI3NUE2RTAwMEU1QUM0IC8qIEpTU1ZHU2V0RWxlbWVudC5o
ICovLAorCQkJCUIyRkEzRDBFMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1N0b3BFbGVtZW50LmNw
cCAqLywKKwkJCQlCMkZBM0QwRjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTdG9wRWxlbWVudC5o
ICovLAorCQkJCUIyRkEzRDEwMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1N0cmluZ0xpc3QuY3Bw
ICovLAorCQkJCUIyRkEzRDExMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1N0cmluZ0xpc3QuaCAq
LywKKwkJCQlCMkZBM0QxMjBBQjc1QTZFMDAwRTVBQzQgLyogSlNTVkdTdHlsZUVsZW1lbnQuY3Bw
ICovLAorCQkJCUIyRkEzRDEzMEFCNzVBNkUwMDBFNUFDNCAvKiBKU1NWR1N0eWxlRWxlbWVudC5o
ICovLAorCQkJCUIyRkEzRDE0MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1NWR0VsZW1lbnQuY3Bw
ICovLAorCQkJCUIyRkEzRDE1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1NWR0VsZW1lbnQuaCAq
LywKKwkJCQlCMkZBM0QxNjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTd2l0Y2hFbGVtZW50LmNw
cCAqLywKKwkJCQlCMkZBM0QxNzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTd2l0Y2hFbGVtZW50
LmggKi8sCisJCQkJQjJGQTNEMTgwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU3ltYm9sRWxlbWVu
dC5jcHAgKi8sCisJCQkJQjJGQTNEMTkwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHU3ltYm9sRWxl
bWVudC5oICovLAorCQkJCUIyRkEzRDFBMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRDb250
ZW50RWxlbWVudC5jcHAgKi8sCisJCQkJQjJGQTNEMUIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZH
VGV4dENvbnRlbnRFbGVtZW50LmggKi8sCisJCQkJQjJGQTNEMUMwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHVGV4dEVsZW1lbnQuY3BwICovLAorCQkJCUIyRkEzRDFEMEFCNzVBNkYwMDBFNUFDNCAv
KiBKU1NWR1RleHRFbGVtZW50LmggKi8sCisJCQkJQjIyMzYyMjYwQzNBRjA0QTAwMDhDQTlCIC8q
IEpTU1ZHVGV4dFBhdGhFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIzNjIyNzBDM0FGMDRBMDAwOENB
OUIgLyogSlNTVkdUZXh0UGF0aEVsZW1lbnQuaCAqLywKKwkJCQlCMkZBM0QxRTBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmNwcCAqLywKKwkJCQlCMkZBM0Qx
RjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmggKi8sCisJ
CQkJQjJGQTNEMjAwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGl0bGVFbGVtZW50LmNwcCAqLywK
KwkJCQlCMkZBM0QyMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUaXRsZUVsZW1lbnQuaCAqLywK
KwkJCQlCMkZBM0QyMjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUcmFuc2Zvcm0uY3BwICovLAor
CQkJCUIyRkEzRDIzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RyYW5zZm9ybS5oICovLAorCQkJ
CUIyRkEzRDI0MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RyYW5zZm9ybUxpc3QuY3BwICovLAor
CQkJCUIyRkEzRDI1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RyYW5zZm9ybUxpc3QuaCAqLywK
KwkJCQlCMkZBM0QyNjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUUmVmRWxlbWVudC5jcHAgKi8s
CisJCQkJQjJGQTNEMjcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVFJlZkVsZW1lbnQuaCAqLywK
KwkJCQlCMkZBM0QyODBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUU3BhbkVsZW1lbnQuY3BwICov
LAorCQkJCUIyRkEzRDI5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RTcGFuRWxlbWVudC5oICov
LAorCQkJCUIyRkEzRDJBMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1VuaXRUeXBlcy5jcHAgKi8s
CisJCQkJQjJGQTNEMkIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVW5pdFR5cGVzLmggKi8sCisJ
CQkJQjJGQTNEMkMwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5jcHAgKi8sCisJ
CQkJQjJGQTNEMkQwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5oICovLAorCQkJ
CUIyRkEzRDJFMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1ZpZXdFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMkZBM0QyRjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdWaWV3RWxlbWVudC5oICovLAorCQkJ
CTcxMThGRUQyMTU2ODVDQzYwMDMwQjc5QSAvKiBKU1NWR1ZpZXdTcGVjLmNwcCAqLywKKwkJCQk3
MTE4RkVEMzE1Njg1Q0M2MDAzMEI3OUEgLyogSlNTVkdWaWV3U3BlYy5oICovLAorCQkJCTg0ODUy
Mjc5MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR1ZLZXJuRWxlbWVudC5jcHAgKi8sCisJCQkJODQ4
NTIyN0ExMTkwMTYyQzAwNkVEQzdGIC8qIEpTU1ZHVktlcm5FbGVtZW50LmggKi8sCisJCQkJNzFE
Q0I2RkYxNTY4MTk3NjAwODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5jcHAgKi8sCisJCQkJNzFE
Q0I3MDAxNTY4MTk3NjAwODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5oICovLAorCQkJCUIyRkEz
RDMwMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1pvb21FdmVudC5jcHAgKi8sCisJCQkJQjJGQTNE
MzEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHWm9vbUV2ZW50LmggKi8sCisJCQkpOworCQkJbmFt
ZSA9IFNWRzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUE4M0I3OTBDMEND
QUZGODMwMDBCMDgyNSAvKiBYUGF0aCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJMUE3NjJDNkIwQTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhFdmFsdWF0
b3IuY3BwICovLAorCQkJCTFBNzYyQzZDMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoRXZhbHVh
dG9yLmggKi8sCisJCQkJMUE3NjJDNkQwQTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhFeHByZXNz
aW9uLmNwcCAqLywKKwkJCQkxQTc2MkM2RTBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV4cHJl
c3Npb24uaCAqLywKKwkJCQkxQTc2MkM2RjBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aE5TUmVz
b2x2ZXIuY3BwICovLAorCQkJCTFBNzYyQzcwMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoTlNS
ZXNvbHZlci5oICovLAorCQkJCTFBNzYyQzcxMEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoUmVz
dWx0LmNwcCAqLywKKwkJCQkxQTc2MkM3MjBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aFJlc3Vs
dC5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBYUGF0aDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CisJCX07CisJCUE4M0I3OTBFMENDQUZGOTcwMDBCMDgyNSAvKiBDU1MgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTkzMEFBQzlDMjUwRUQ0MDgwMDEz
REE5RiAvKiBKU0NTU0NvbmRpdGlvblJ1bGUuY3BwICovLAorCQkJCTkzMEFBQzlEMjUwRUQ0MDkw
MDEzREE5RiAvKiBKU0NTU0NvbmRpdGlvblJ1bGUuaCAqLywKKwkJCQlCQzQ2QzFGMjBDMEREQzhG
MDAyMENGQzMgLyogSlNDU1NGb250RmFjZVJ1bGUuY3BwICovLAorCQkJCUJDNDZDMUYzMEMwRERD
OEYwMDIwQ0ZDMyAvKiBKU0NTU0ZvbnRGYWNlUnVsZS5oICovLAorCQkJCTkzMEFBQ0ExMjUwRUQ0
MTEwMDEzREE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5jcHAgKi8sCisJCQkJOTMwQUFDQTAyNTBF
RDQxMTAwMTNEQTlGIC8qIEpTQ1NTR3JvdXBpbmdSdWxlLmggKi8sCisJCQkJQkM0NkMxRjQwQzBE
REM4RjAwMjBDRkMzIC8qIEpTQ1NTSW1wb3J0UnVsZS5jcHAgKi8sCisJCQkJQkM0NkMxRjUwQzBE
REM4RjAwMjBDRkMzIC8qIEpTQ1NTSW1wb3J0UnVsZS5oICovLAorCQkJCTMxNkZFMDZEMEU2Q0NC
RUUwMEJGNjA4OCAvKiBKU0NTU0tleWZyYW1lUnVsZS5jcHAgKi8sCisJCQkJMzE2RkUwNkUwRTZD
Q0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVSdWxlLmggKi8sCisJCQkJMzE2RkUwNkYwRTZD
Q0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVzUnVsZS5jcHAgKi8sCisJCQkJMzE2RkUwNzAw
RTZDQ0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVzUnVsZS5oICovLAorCQkJCUJDNDZDMUY2
MEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU01lZGlhUnVsZS5jcHAgKi8sCisJCQkJQkM0NkMxRjcw
QzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTTWVkaWFSdWxlLmggKi8sCisJCQkJOTRFODM5NTMxREZC
MkJBNjAwN0JDNkE3IC8qIEpTQ1NTTmFtZXNwYWNlUnVsZS5jcHAgKi8sCisJCQkJOTRFODM5NTQx
REZCMkJBNjAwN0JDNkE3IC8qIEpTQ1NTTmFtZXNwYWNlUnVsZS5oICovLAorCQkJCUJDNDZDMUY4
MEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU1BhZ2VSdWxlLmNwcCAqLywKKwkJCQlCQzQ2QzFGOTBD
MEREQzhGMDAyMENGQzMgLyogSlNDU1NQYWdlUnVsZS5oICovLAorCQkJCTE0Q0Y3QjMxMDlGNkVD
RDcwMEVCMzY2NSAvKiBKU0NTU1J1bGUuY3BwICovLAorCQkJCTE0Q0Y3QjMyMDlGNkVDRDcwMEVC
MzY2NSAvKiBKU0NTU1J1bGUuaCAqLywKKwkJCQlBOEQwNUZBNTBBMjNCMzAxMDA1RTcyMDMgLyog
SlNDU1NSdWxlTGlzdC5jcHAgKi8sCisJCQkJQThEMDVGQTYwQTIzQjMwMTAwNUU3MjAzIC8qIEpT
Q1NTUnVsZUxpc3QuaCAqLywKKwkJCQkxNDIwMTFCNDBBMDAzMTMzMDA4MzAzRjkgLyogSlNDU1NT
dHlsZURlY2xhcmF0aW9uLmNwcCAqLywKKwkJCQkxNDIwMTFCNTBBMDAzMTMzMDA4MzAzRjkgLyog
SlNDU1NTdHlsZURlY2xhcmF0aW9uLmggKi8sCisJCQkJQkM0NkMyMDQwQzBERENBMTAwMjBDRkMz
IC8qIEpTQ1NTU3R5bGVSdWxlLmNwcCAqLywKKwkJCQlCQzQ2QzIwNTBDMEREQ0ExMDAyMENGQzMg
LyogSlNDU1NTdHlsZVJ1bGUuaCAqLywKKwkJCQlCQ0M1QkRGRTBDMEU5MzExMDAxMUMyREIgLyog
SlNDU1NTdHlsZVNoZWV0LmNwcCAqLywKKwkJCQlCQ0M1QkRGRjBDMEU5MzExMDAxMUMyREIgLyog
SlNDU1NTdHlsZVNoZWV0LmggKi8sCisJCQkJRkQ2Nzc3MzYxOTVDQUI3RDAwNzJFMEQzIC8qIEpT
Q1NTU3VwcG9ydHNSdWxlLmNwcCAqLywKKwkJCQlGQzg0ODAyRTE2N0FCNDQ0MDA4Q0QxMDAgLyog
SlNDU1NTdXBwb3J0c1J1bGUuaCAqLywKKwkJCQk5NDc5NDkxODFFMDJGNkRFMDAwMThEODUgLyog
SlNEZXByZWNhdGVkQ1NTT01Db3VudGVyLmNwcCAqLywKKwkJCQk5NDc5NDkxOTFFMDJGNkRFMDAw
MThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01Db3VudGVyLmggKi8sCisJCQkJOTQ3OTQ5MUExRTAy
RjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuY3BwICovLAor
CQkJCTk0Nzk0OTFCMUUwMkY2REUwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2
ZVZhbHVlLmggKi8sCisJCQkJOTQ3OTQ5MUMxRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVwcmVjYXRl
ZENTU09NUmVjdC5jcHAgKi8sCisJCQkJOTQ3OTQ5MUQxRTAyRjZERTAwMDE4RDg1IC8qIEpTRGVw
cmVjYXRlZENTU09NUmVjdC5oICovLAorCQkJCTk0Nzk0OTFFMUUwMkY2REUwMDAxOEQ4NSAvKiBK
U0RlcHJlY2F0ZWRDU1NPTVJHQkNvbG9yLmNwcCAqLywKKwkJCQk5NDc5NDkxRjFFMDJGNkRFMDAw
MThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01SR0JDb2xvci5oICovLAorCQkJCTk0Nzk0OTIwMUUw
MkY2REUwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmNwcCAqLywKKwkJCQk5NDc5
NDkyMTFFMDJGNkRFMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZS5oICovLAorCQkJ
CTk0Nzk0OTJCMUUwMzNCMjgwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5j
cHAgKi8sCisJCQkJOTQ3OTQ5MkMxRTAzM0IyODAwMDE4RDg1IC8qIEpTRGVwcmVjYXRlZENTU09N
VmFsdWVMaXN0LmggKi8sCisJCQkJRkQ2Nzc3MzcxOTVDQUI3RDAwNzJFMEQzIC8qIEpTRE9NQ1NT
TmFtZXNwYWNlLmNwcCAqLywKKwkJCQlGQzlFMEU0QjE2NDE5QzFFMDAzOTJCRTMgLyogSlNET01D
U1NOYW1lc3BhY2UuaCAqLywKKwkJCQk4MzZBQ0VDRDFFQ0FBQjA0MDA0QkQwMTIgLyogSlNET01N
YXRyaXguY3BwICovLAorCQkJCTgzNkFDRUNFMUVDQUFCMDQwMDRCRDAxMiAvKiBKU0RPTU1hdHJp
eC5oICovLAorCQkJCTdDQkJCQ0M4MUY1NjE3QzAwMDVFRkFBQyAvKiBKU0RPTU1hdHJpeDJESW5p
dC5jcHAgKi8sCisJCQkJN0NCQkJDQzkxRjU2MTdDMDAwNUVGQUFDIC8qIEpTRE9NTWF0cml4MkRJ
bml0LmggKi8sCisJCQkJODM1NjU3QzYxRUNBQjBFODAwQ0RFNzJEIC8qIEpTRE9NTWF0cml4SW5p
dC5jcHAgKi8sCisJCQkJODM2QUNFQ0YxRUNBQUIwNDAwNEJEMDEyIC8qIEpTRE9NTWF0cml4SW5p
dC5oICovLAorCQkJCTgzNkFDRUQwMUVDQUFCMDQwMDRCRDAxMiAvKiBKU0RPTU1hdHJpeFJlYWRP
bmx5LmNwcCAqLywKKwkJCQk4MzZBQ0VEMTFFQ0FBQjA0MDA0QkQwMTIgLyogSlNET01NYXRyaXhS
ZWFkT25seS5oICovLAorCQkJCUJDM0MzOUI0MEMwRDNEOEQwMDVGNEQ3QSAvKiBKU01lZGlhTGlz
dC5jcHAgKi8sCisJCQkJQkMzQzM5QjUwQzBEM0Q4RDAwNUY0RDdBIC8qIEpTTWVkaWFMaXN0Lmgg
Ki8sCisJCQkJRDNBOTRBNDIxMjJEQzQwRjAwQTM3QkJDIC8qIEpTTWVkaWFRdWVyeUxpc3QuY3Bw
ICovLAorCQkJCUQzQTk0QTQzMTIyREM0MEYwMEEzN0JCQyAvKiBKU01lZGlhUXVlcnlMaXN0Lmgg
Ki8sCisJCQkJMEZGNTAyNjcxMDJCQTk0MzAwNjZGMzlBIC8qIEpTU3R5bGVNZWRpYS5jcHAgKi8s
CisJCQkJMEZGNTAyNjgxMDJCQTk0MzAwNjZGMzlBIC8qIEpTU3R5bGVNZWRpYS5oICovLAorCQkJ
CUJDRTAxMzk4MEMwQkVGMTgwMDQzODYwQSAvKiBKU1N0eWxlU2hlZXQuY3BwICovLAorCQkJCUJD
RTAxMzk5MEMwQkVGMTgwMDQzODYwQSAvKiBKU1N0eWxlU2hlZXQuaCAqLywKKwkJCQlBODRFQkQ4
MjBDQjhDOTc3MDAwNzk2MDkgLyogSlNTdHlsZVNoZWV0TGlzdC5jcHAgKi8sCisJCQkJQTg0RUJE
ODEwQ0I4Qzk3NzAwMDc5NjA5IC8qIEpTU3R5bGVTaGVldExpc3QuaCAqLywKKwkJCQkzRjJCMzNF
OTE2NUFGMTU1MDBFMzk4N0MgLyogSlNXZWJLaXRDU1NWaWV3cG9ydFJ1bGUuY3BwICovLAorCQkJ
CTNGMkIzM0VBMTY1QUYxNTUwMEUzOTg3QyAvKiBKU1dlYktpdENTU1ZpZXdwb3J0UnVsZS5oICov
LAorCQkJKTsKKwkJCW5hbWUgPSBDU1M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9
OworCQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLyA9IHsKKwkJCWlzYSA9IFBC
WEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJN0MzMEQ5N0UxRjgxNUFDMDAwMjY4MzU2IC8q
IEpTQWJvcnRDb250cm9sbGVyLmNwcCAqLywKKwkJCQk3QzMwRDk4MDFGODE1QUMxMDAyNjgzNTYg
LyogSlNBYm9ydENvbnRyb2xsZXIuaCAqLywKKwkJCQk3QzMwRDk4MjFGODE1QUMyMDAyNjgzNTYg
LyogSlNBYm9ydFNpZ25hbC5jcHAgKi8sCisJCQkJN0MzMEQ5ODExRjgxNUFDMTAwMjY4MzU2IC8q
IEpTQWJvcnRTaWduYWwuaCAqLywKKwkJCQk2NURGMzFEODA5RDFDMTIyMDAwQkUzMjUgLyogSlNB
dHRyLmNwcCAqLywKKwkJCQk2NURGMzFEOTA5RDFDMTIzMDAwQkUzMjUgLyogSlNBdHRyLmggKi8s
CisJCQkJOTNGOUI3OUUwQkE2MDMyNjAwODU0MDY0IC8qIEpTQ0RBVEFTZWN0aW9uLmNwcCAqLywK
KwkJCQk5M0Y5Qjc5RjBCQTYwMzI2MDA4NTQwNjQgLyogSlNDREFUQVNlY3Rpb24uaCAqLywKKwkJ
CQk2NURGMzFERjA5RDFDQzYwMDAwQkUzMjUgLyogSlNDaGFyYWN0ZXJEYXRhLmNwcCAqLywKKwkJ
CQk2NURGMzFFMDA5RDFDQzYwMDAwQkUzMjUgLyogSlNDaGFyYWN0ZXJEYXRhLmggKi8sCisJCQkJ
OTNGOUI2REUwQkEwRkI3MjAwODU0MDY0IC8qIEpTQ29tbWVudC5jcHAgKi8sCisJCQkJOTNGOUI2
REYwQkEwRkI3MjAwODU0MDY0IC8qIEpTQ29tbWVudC5oICovLAorCQkJCTlCRTY3MTA5MUQ1QUVC
MDQwMDM0NTUxNCAvKiBKU0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5jcHAgKi8sCisJCQkJOUJFNjcx
MEExRDVBRUIwNDAwMzQ1NTE0IC8qIEpTQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmggKi8sCisJCQkJ
QkNBODNFNEQwRDdDRTFFOTAwMzQyMUE4IC8qIEpTRGF0YVRyYW5zZmVyLmNwcCAqLywKKwkJCQlC
Q0E4M0U0RTBEN0NFMUU5MDAzNDIxQTggLyogSlNEYXRhVHJhbnNmZXIuaCAqLywKKwkJCQk5QjA5
OEJERDFGM0Q2NzNEMDAyREQ1NjIgLyogSlNEYXRhVHJhbnNmZXJJdGVtLmNwcCAqLywKKwkJCQk5
QjA5OEJERTFGM0Q2NzNEMDAyREQ1NjIgLyogSlNEYXRhVHJhbnNmZXJJdGVtLmggKi8sCisJCQkJ
OUIwOThCREYxRjNENjczRDAwMkRENTYyIC8qIEpTRGF0YVRyYW5zZmVySXRlbUxpc3QuY3BwICov
LAorCQkJCTlCMDk4QkUwMUYzRDY3M0QwMDJERDU2MiAvKiBKU0RhdGFUcmFuc2Zlckl0ZW1MaXN0
LmggKi8sCisJCQkJMzFGQjFBNjMxMjBBNUQzRjAwREMwMkEwIC8qIEpTRGV2aWNlTW90aW9uRXZl
bnQuY3BwICovLAorCQkJCTMxRkIxQTY0MTIwQTVEM0YwMERDMDJBMCAvKiBKU0RldmljZU1vdGlv
bkV2ZW50LmggKi8sCisJCQkJNTlBODYwMDUxMTlEQUY3RjAwREVGMUVGIC8qIEpTRGV2aWNlT3Jp
ZW50YXRpb25FdmVudC5jcHAgKi8sCisJCQkJNTlBODYwMDcxMTlEQUZBMTAwREVGMUVGIC8qIEpT
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oICovLAorCQkJCTY1OUREQzgwMDlFMTk4QkEwMDFCRjND
NiAvKiBKU0RvY3VtZW50LmNwcCAqLywKKwkJCQk2NTlEREM4MTA5RTE5OEJBMDAxQkYzQzYgLyog
SlNEb2N1bWVudC5oICovLAorCQkJCTFBNDk0RURDMEExMjNGNEMwMEZEQUZDMSAvKiBKU0RvY3Vt
ZW50RnJhZ21lbnQuY3BwICovLAorCQkJCTFBNDk0RUREMEExMjNGNEMwMEZEQUZDMSAvKiBKU0Rv
Y3VtZW50RnJhZ21lbnQuaCAqLywKKwkJCQk2NURGMzFFMTA5RDFDQzYwMDAwQkUzMjUgLyogSlNE
b2N1bWVudFR5cGUuY3BwICovLAorCQkJCTY1REYzMUUyMDlEMUNDNjAwMDBCRTMyNSAvKiBKU0Rv
Y3VtZW50VHlwZS5oICovLAorCQkJCUJDNjBEN0JFMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RPTUV4
Y2VwdGlvbi5jcHAgKi8sCisJCQkJQkM2MEQ3QkYwRDI5QTQ2MzAwQjk5MThGIC8qIEpTRE9NRXhj
ZXB0aW9uLmggKi8sCisJCQkJNjVERjMxRTMwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTRE9NSW1wbGVt
ZW50YXRpb24uY3BwICovLAorCQkJCTY1REYzMUU0MDlEMUNDNjAwMDBCRTMyNSAvKiBKU0RPTUlt
cGxlbWVudGF0aW9uLmggKi8sCisJCQkJMEY0OTY2QTQxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9N
UG9pbnQuY3BwICovLAorCQkJCTBGNDk2NkE1MURCNDBDNDMwMEEyNzRCQiAvKiBKU0RPTVBvaW50
LmggKi8sCisJCQkJMEY0OTY2QTYxREI0MEM0MzAwQTI3NEJCIC8qIEpTRE9NUG9pbnRJbml0LmNw
cCAqLywKKwkJCQkwRjQ5NjZBNzFEQjQwQzQzMDBBMjc0QkIgLyogSlNET01Qb2ludEluaXQuaCAq
LywKKwkJCQkwRjQ5NjZBODFEQjQwQzQzMDBBMjc0QkIgLyogSlNET01Qb2ludFJlYWRPbmx5LmNw
cCAqLywKKwkJCQkwRjQ5NjZBOTFEQjQwQzQzMDBBMjc0QkIgLyogSlNET01Qb2ludFJlYWRPbmx5
LmggKi8sCisJCQkJMEZGM0I5MjQxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZC5jcHAgKi8s
CisJCQkJMEZGM0I5MjUxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZC5oICovLAorCQkJCTBG
RjNCOTI2MUVFM0I2REUwMEI4NDE0NCAvKiBKU0RPTVF1YWRJbml0LmNwcCAqLywKKwkJCQkwRkYz
QjkyNzFFRTNCNkRFMDBCODQxNDQgLyogSlNET01RdWFkSW5pdC5oICovLAorCQkJCTBGNDcxMEI1
MURCNTZCRTgwMDJEQ0VDMyAvKiBKU0RPTVJlY3QuY3BwICovLAorCQkJCTBGNDcxMEI2MURCNTZC
RTgwMDJEQ0VDMyAvKiBKU0RPTVJlY3QuaCAqLywKKwkJCQkwRjQ3MTBCNzFEQjU2QkU4MDAyRENF
QzMgLyogSlNET01SZWN0SW5pdC5jcHAgKi8sCisJCQkJMEY0NzEwQjgxREI1NkJFODAwMkRDRUMz
IC8qIEpTRE9NUmVjdEluaXQuaCAqLywKKwkJCQk0NjZEQzZBQjFFREUwMjFEMDA3NDYyMjQgLyog
SlNET01SZWN0TGlzdC5jcHAgKi8sCisJCQkJNDY2RUQ4RDIxRURFMDEzNTAwNUU0M0Y2IC8qIEpT
RE9NUmVjdExpc3QuaCAqLywKKwkJCQkwRjQ3MTBCOTFEQjU2QkU4MDAyRENFQzMgLyogSlNET01S
ZWN0UmVhZE9ubHkuY3BwICovLAorCQkJCTBGNDcxMEJBMURCNTZCRTgwMDJEQ0VDMyAvKiBKU0RP
TVJlY3RSZWFkT25seS5oICovLAorCQkJCUM1MTM3Q0YwMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RP
TVN0cmluZ0xpc3QuY3BwICovLAorCQkJCUM1MTM3Q0YxMTFBNTgzNzgwMDRBREI5OSAvKiBKU0RP
TVN0cmluZ0xpc3QuaCAqLywKKwkJCQlCQzY0NjQ5NTExRDgyMzQ5MDA2NDU1QjAgLyogSlNET01T
dHJpbmdNYXAuY3BwICovLAorCQkJCUJDNjQ2NDk2MTFEODIzNDkwMDY0NTVCMCAvKiBKU0RPTVN0
cmluZ01hcC5oICovLAorCQkJCTY1REYzMUU1MDlEMUNDNjAwMDBCRTMyNSAvKiBKU0VsZW1lbnQu
Y3BwICovLAorCQkJCTY1REYzMUU2MDlEMUNDNjAwMDBCRTMyNSAvKiBKU0VsZW1lbnQuaCAqLywK
KwkJCQk3Q0QzNDQxMjFGMzEwOEUyMDAwRENENDkgLyogSlNNdXRhdGlvbkNhbGxiYWNrLmNwcCAq
LywKKwkJCQk3Q0QzNDQxMTFGMzEwOEREMDAwRENENDkgLyogSlNNdXRhdGlvbkNhbGxiYWNrLmgg
Ki8sCisJCQkJQzZGMDkwMjQxNDMyN0Q0RjAwNjg1ODQ5IC8qIEpTTXV0YXRpb25PYnNlcnZlci5j
cHAgKi8sCisJCQkJQzZGMDkwMjUxNDMyN0Q0RjAwNjg1ODQ5IC8qIEpTTXV0YXRpb25PYnNlcnZl
ci5oICovLAorCQkJCUM2RjA4RkM3MTQzMTAwMEQwMDY4NTg0OSAvKiBKU011dGF0aW9uUmVjb3Jk
LmNwcCAqLywKKwkJCQlDNkYwOEZDODE0MzEwMDBEMDA2ODU4NDkgLyogSlNNdXRhdGlvblJlY29y
ZC5oICovLAorCQkJCUJDRDlDMkJDMEMxN0I2OUUwMDVDOTBBMiAvKiBKU05hbWVkTm9kZU1hcC5j
cHAgKi8sCisJCQkJQkNEOUMyQkQwQzE3QjY5RTAwNUM5MEEyIC8qIEpTTmFtZWROb2RlTWFwLmgg
Ki8sCisJCQkJMTREQzBEMzUwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5jcHAgKi8sCisJCQkJ
MTREQzBEMzYwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5oICovLAorCQkJCUJDRDlDMkJFMEMx
N0I2OUUwMDVDOTBBMiAvKiBKU05vZGVMaXN0LmNwcCAqLywKKwkJCQlCQ0Q5QzJCRjBDMTdCNjlF
MDA1QzkwQTIgLyogSlNOb2RlTGlzdC5oICovLAorCQkJCTY1REYzMUVCMDlEMUNDNjAwMDBCRTMy
NSAvKiBKU1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5jcHAgKi8sCisJCQkJNjVERjMxRUMwOUQxQ0M2
MDAwMEJFMzI1IC8qIEpTUHJvY2Vzc2luZ0luc3RydWN0aW9uLmggKi8sCisJCQkJRTRCNDIzODUw
Q0JGQjczQzAwQUYyRUNFIC8qIEpTUHJvZ3Jlc3NFdmVudC5jcHAgKi8sCisJCQkJRTRCNDIzODYw
Q0JGQjczQzAwQUYyRUNFIC8qIEpTUHJvZ3Jlc3NFdmVudC5oICovLAorCQkJCTQ5OThBRUNCMTNG
OUQ2QzkwMDkwQjFBQSAvKiBKU1JlcXVlc3RBbmltYXRpb25GcmFtZUNhbGxiYWNrLmNwcCAqLywK
KwkJCQk0OTk4QUVDQzEzRjlENkM5MDA5MEIxQUEgLyogSlNSZXF1ZXN0QW5pbWF0aW9uRnJhbWVD
YWxsYmFjay5oICovLAorCQkJCTlCNkJDOTYwMUI5NzU5NjYwMDVBRTFGMCAvKiBKU1NoYWRvd1Jv
b3QuY3BwICovLAorCQkJCTlCNkJDOTYxMUI5NzU5NjYwMDVBRTFGMCAvKiBKU1NoYWRvd1Jvb3Qu
aCAqLywKKwkJCQk0NkRGRjQ5OTFEQzI2MUY5MDBCODBCNDggLyogSlNTaGFkb3dSb290TW9kZS5j
cHAgKi8sCisJCQkJNDZERkY0OUExREMyNjFGOTAwQjgwQjQ4IC8qIEpTU2hhZG93Um9vdE1vZGUu
aCAqLywKKwkJCQk5QjA5OEJFNjFGM0Q2QUY2MDAyREQ1NjIgLyogSlNTdHJpbmdDYWxsYmFjay5j
cHAgKi8sCisJCQkJOUIwOThCRTcxRjNENkFGNjAwMkRENTYyIC8qIEpTU3RyaW5nQ2FsbGJhY2su
aCAqLywKKwkJCQk2NURGMzFFRjA5RDFDQzYwMDAwQkUzMjUgLyogSlNUZXh0LmNwcCAqLywKKwkJ
CQk2NURGMzFGMDA5RDFDQzYwMDAwQkUzMjUgLyogSlNUZXh0LmggKi8sCisJCQkJNDZFNzkxNDUx
Rjk3RTAxNzAwMTk5NzM5IC8qIEpTVmlzaWJpbGl0eVN0YXRlLmNwcCAqLywKKwkJCQk0NkU3OTE0
NjFGOTdFMDE3MDAxOTk3MzkgLyogSlNWaXNpYmlsaXR5U3RhdGUuaCAqLywKKwkJCQk3Nzc5QkQ5
MTFGMkZEQkNFMDBDMjE0MTcgLyogSlNWaXN1YWxWaWV3cG9ydC5jcHAgKi8sCisJCQkJNzc3OUJE
OTIxRjJGREJGNzAwQzIxNDE3IC8qIEpTVmlzdWFsVmlld3BvcnQuaCAqLywKKwkJCQk4M0Y1NzBB
RTFDNTMyNjhFMDA3RkQ2Q0IgLyogSlNYTUxEb2N1bWVudC5jcHAgKi8sCisJCQkJODNGNTcwQUQx
QzUzMjY4RTAwN0ZENkNCIC8qIEpTWE1MRG9jdW1lbnQuaCAqLywKKwkJCSk7CisJCQluYW1lID0g
Q29yZTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUE4M0I3OTEyMENDQjAw
M0YwMDBCMDgyNSAvKiBFdmVudHMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTMxOTg0ODAzMUExRTZCNUQwMEExMzMxOCAvKiBKU0FuaW1hdGlvbkV2ZW50
LmNwcCAqLywKKwkJCQkzMTk4NDgwNDFBMUU2QjVEMDBBMTMzMTggLyogSlNBbmltYXRpb25FdmVu
dC5oICovLAorCQkJCUJDOTQ2MzQ1MTA3QTkzNEIwMDg1NzE5MyAvKiBKU0JlZm9yZUxvYWRFdmVu
dC5jcHAgKi8sCisJCQkJQkM5NDYzNDcxMDdBOTM2NjAwODU3MTkzIC8qIEpTQmVmb3JlTG9hZEV2
ZW50LmggKi8sCisJCQkJODIyNTQzMkNBOUQ0QjRDRjQ2MjhFQzdGIC8qIEpTQmVmb3JlVW5sb2Fk
RXZlbnQuY3BwICovLAorCQkJCTI5RTA0QTI3QkVEMkY4MUY5OEU5MDIyQiAvKiBKU0JlZm9yZVVu
bG9hZEV2ZW50LmggKi8sCisJCQkJODM2RDAzMkQxREE4QTEzMjAwRkZEOTZCIC8qIEpTQ2xpcGJv
YXJkRXZlbnQuY3BwICovLAorCQkJCTgzNkQwMzJFMURBOEExMzIwMEZGRDk2QiAvKiBKU0NsaXBi
b2FyZEV2ZW50LmggKi8sCisJCQkJNzlBQzkyMTYxMDk5NDVDODAwMjEyNjZFIC8qIEpTQ29tcG9z
aXRpb25FdmVudC5jcHAgKi8sCisJCQkJNzlBQzkyMTcxMDk5NDVDODAwMjEyNjZFIC8qIEpTQ29t
cG9zaXRpb25FdmVudC5oICovLAorCQkJCUU0Nzc4QjdEMTE1QTU4MUEwMEI1RDM3MiAvKiBKU0N1
c3RvbUV2ZW50LmNwcCAqLywKKwkJCQlFNDc3OEI3RTExNUE1ODFBMDBCNUQzNzIgLyogSlNDdXN0
b21FdmVudC5oICovLAorCQkJCTJFQ0Y3QURBMTAxNjJCMzgwMDQyN0RFNyAvKiBKU0Vycm9yRXZl
bnQuY3BwICovLAorCQkJCTJFQ0Y3QURCMTAxNjJCMzgwMDQyN0RFNyAvKiBKU0Vycm9yRXZlbnQu
aCAqLywKKwkJCQkxNEU4Mzc4MzA5Rjg1RDFDMDBCODVBRTQgLyogSlNFdmVudC5jcHAgKi8sCisJ
CQkJMTRFODM3OEQwOUY4NUQ0RjAwQjg1QUU0IC8qIEpTRXZlbnQuaCAqLywKKwkJCQk4MzZEMDMy
QjFEQThBMTMyMDBGRkQ5NkIgLyogSlNFdmVudEluaXQuY3BwICovLAorCQkJCTgzNkQwMzJDMURB
OEExMzIwMEZGRDk2QiAvKiBKU0V2ZW50SW5pdC5oICovLAorCQkJCTgzRTA0NUVDMURBQTEwNEYw
MEIwRDhCOSAvKiBKU0V2ZW50TW9kaWZpZXJJbml0LmNwcCAqLywKKwkJCQk4M0UwNDVFRDFEQUEx
MDRGMDBCMEQ4QjkgLyogSlNFdmVudE1vZGlmaWVySW5pdC5oICovLAorCQkJCUM2QTcwMzMyNUM5
RDBCNkNEQ0JDNEQ3OCAvKiBKU0V2ZW50VGFyZ2V0LmNwcCAqLywKKwkJCQk1RkM3REMyNkNGRTI1
NjMyMDBCODVBRTUgLyogSlNFdmVudFRhcmdldC5oICovLAorCQkJCUI2RDlEMjdBMTRFQUMwODYw
MDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuY3BwICovLAorCQkJCUI2RDlEMjc5MTRFQUMwODYwMDkw
RDc1RSAvKiBKU0ZvY3VzRXZlbnQuaCAqLywKKwkJCQkwRkRBN0MxQzE4ODMyMkZDMDBDOTU0QjUg
LyogSlNHZXN0dXJlRXZlbnQuY3BwICovLAorCQkJCTBGREE3QzFEMTg4MzIyRkMwMEM5NTRCNSAv
KiBKU0dlc3R1cmVFdmVudC5oICovLAorCQkJCTg0ODJCNzRGMTE5OENCNkIwMEJGQjAwNSAvKiBK
U0hhc2hDaGFuZ2VFdmVudC5jcHAgKi8sCisJCQkJODQ4MkI3NTAxMTk4Q0I2QjAwQkZCMDA1IC8q
IEpTSGFzaENoYW5nZUV2ZW50LmggKi8sCisJCQkJQTg2NjI5Q0UwOURBMkI0NzAwOTYzM0E2IC8q
IEpTSW5wdXRFdmVudC5jcHAgKi8sCisJCQkJQTg2NjI5Q0QwOURBMkI0NzAwOTYzM0E2IC8qIEpT
SW5wdXRFdmVudC5oICovLAorCQkJCUE4NjYyOUNFMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJv
YXJkRXZlbnQuY3BwICovLAorCQkJCUE4NjYyOUNEMDlEQTJCNDcwMDk2MzNBNSAvKiBKU0tleWJv
YXJkRXZlbnQuaCAqLywKKwkJCQlFMTA3NDAwQjBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdl
Q2hhbm5lbC5jcHAgKi8sCisJCQkJRTEwNzQwMEMwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2Fn
ZUNoYW5uZWwuaCAqLywKKwkJCQk3NTc5M0VDNjBEMENFNzJEMDA3RkMwQUMgLyogSlNNZXNzYWdl
RXZlbnQuY3BwICovLAorCQkJCTc1NzkzRUM3MEQwQ0U3MkQwMDdGQzBBQyAvKiBKU01lc3NhZ2VF
dmVudC5oICovLAorCQkJCUUxQURFREQ5MEU3NkJEOTMwMDRBMUE1RSAvKiBKU01lc3NhZ2VQb3J0
LmNwcCAqLywKKwkJCQlFMUFERUREODBFNzZCRDkzMDA0QTFBNUUgLyogSlNNZXNzYWdlUG9ydC5o
ICovLAorCQkJCUE4NjYyOUNDMDlEQTJCNDcwMDk2MzNBNSAvKiBKU01vdXNlRXZlbnQuY3BwICov
LAorCQkJCUE4NjYyOUNCMDlEQTJCNDcwMDk2MzNBNSAvKiBKU01vdXNlRXZlbnQuaCAqLywKKwkJ
CQk4MzBBMzZCQTFEQUM1RkE3MDA2RDdEMDkgLyogSlNNb3VzZUV2ZW50SW5pdC5jcHAgKi8sCisJ
CQkJODMwQTM2QkIxREFDNUZBNzAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCAqLywKKwkJ
CQk2NURGMzFFNzA5RDFDQzYwMDAwQkUzMjUgLyogSlNNdXRhdGlvbkV2ZW50LmNwcCAqLywKKwkJ
CQk2NURGMzFFODA5RDFDQzYwMDAwQkUzMjUgLyogSlNNdXRhdGlvbkV2ZW50LmggKi8sCisJCQkJ
MUEwRDU3M0UwQTVDNzg2NzAwN0VERDRDIC8qIEpTT3ZlcmZsb3dFdmVudC5jcHAgKi8sCisJCQkJ
MUEwRDU3M0YwQTVDNzg2NzAwN0VERDRDIC8qIEpTT3ZlcmZsb3dFdmVudC5oICovLAorCQkJCUUx
Mjg0QkIwMTA0NDlGRkEwMEVBRUI1MiAvKiBKU1BhZ2VUcmFuc2l0aW9uRXZlbnQuY3BwICovLAor
CQkJCUUxMjg0QkFGMTA0NDlGRkEwMEVBRUI1MiAvKiBKU1BhZ2VUcmFuc2l0aW9uRXZlbnQuaCAq
LywKKwkJCQk1MTg5RjAxQjEwQjM3QkQ5MDBGM0M3MzkgLyogSlNQb3BTdGF0ZUV2ZW50LmNwcCAq
LywKKwkJCQk1MTg5RjAxQzEwQjM3QkQ5MDBGM0M3MzkgLyogSlNQb3BTdGF0ZUV2ZW50LmggKi8s
CisJCQkJQTU3OEY0MzkxREUwMTNGQjAwM0RGQzZBIC8qIEpTUHJvbWlzZVJlamVjdGlvbkV2ZW50
LmNwcCAqLywKKwkJCQlBNTc4RjQzQTFERTAxM0ZCMDAzREZDNkEgLyogSlNQcm9taXNlUmVqZWN0
aW9uRXZlbnQuaCAqLywKKwkJCQlDRUQwNkFDRTFDNzc3NTQ4MDBGREZBRjEgLyogSlNTZWN1cml0
eVBvbGljeVZpb2xhdGlvbkV2ZW50LmNwcCAqLywKKwkJCQlDRUQwNkFDRjFDNzc3NTQ4MDBGREZB
RjEgLyogSlNTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50LmggKi8sCisJCQkJOTMzQTE0QjYw
QjdEMUQ1MjAwQTUzRkZEIC8qIEpTVGV4dEV2ZW50LmNwcCAqLywKKwkJCQk5MzNBMTRCNzBCN0Qx
RDUyMDBBNTNGRkQgLyogSlNUZXh0RXZlbnQuaCAqLywKKwkJCQkwRkRBN0MxMDE4ODMyMkVCMDBD
OTU0QjUgLyogSlNUb3VjaC5jcHAgKi8sCisJCQkJMEZEQTdDMTExODgzMjJFQjAwQzk1NEI1IC8q
IEpTVG91Y2guaCAqLywKKwkJCQkwRkRBN0MxMjE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaEV2
ZW50LmNwcCAqLywKKwkJCQkwRkRBN0MxMzE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaEV2ZW50
LmggKi8sCisJCQkJMEZEQTdDMTQxODgzMjJFQjAwQzk1NEI1IC8qIEpTVG91Y2hMaXN0LmNwcCAq
LywKKwkJCQkwRkRBN0MxNTE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaExpc3QuaCAqLywKKwkJ
CQlFMTdCNDkyMDE2QTlCOEZGMDAxQzg4MzkgLyogSlNUcmFuc2l0aW9uRXZlbnQuY3BwICovLAor
CQkJCUUxN0I0OTFGMTZBOUI4RkYwMDFDODgzOSAvKiBKU1RyYW5zaXRpb25FdmVudC5oICovLAor
CQkJCUE4NjYyOUNBMDlEQTJCNDcwMDk2MzNBNSAvKiBKU1VJRXZlbnQuY3BwICovLAorCQkJCUE4
NjYyOUM5MDlEQTJCNDcwMDk2MzNBNSAvKiBKU1VJRXZlbnQuaCAqLywKKwkJCQk4M0UwNDVFRTFE
QUExMDRGMDBCMEQ4QjkgLyogSlNVSUV2ZW50SW5pdC5jcHAgKi8sCisJCQkJODNFMDQ1RUYxREFB
MTA0RjAwQjBEOEI5IC8qIEpTVUlFdmVudEluaXQuaCAqLywKKwkJCQkzMUMwRkYzOTBFNENFRkFD
MDA3RDZGRTUgLyogSlNXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgKi8sCisJCQkJMzFDMEZGM0Ew
RTRDRUZBQzAwN0Q2RkU1IC8qIEpTV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCAqLywKKwkJCQkzMUMw
RkYzQjBFNENFRkFDMDA3RDZGRTUgLyogSlNXZWJLaXRUcmFuc2l0aW9uRXZlbnQuY3BwICovLAor
CQkJCTMxQzBGRjNDMEU0Q0VGQUMwMDdENkZFNSAvKiBKU1dlYktpdFRyYW5zaXRpb25FdmVudC5o
ICovLAorCQkJCTY1REYzMUYxMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1doZWVsRXZlbnQuY3BwICov
LAorCQkJCTY1REYzMUYyMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1doZWVsRXZlbnQuaCAqLywKKwkJ
CSk7CisJCQluYW1lID0gRXZlbnRzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJQTgzQjc5MTUwQ0NCMDA3ODAwMEIwODI1IC8qIFN0b3JhZ2UgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTFBRTgyRjhEMENBQUZBOUQwMDIyMzdBRSAv
KiBKU0RhdGFiYXNlLmNwcCAqLywKKwkJCQkxQUU4MkY4RTBDQUFGQTlEMDAyMjM3QUUgLyogSlNE
YXRhYmFzZS5oICovLAorCQkJCUI1OURENjk4MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFiYXNl
Q2FsbGJhY2suY3BwICovLAorCQkJCUI1OURENjk3MTE5MDI5RTUwMDdFOTY4NCAvKiBKU0RhdGFi
YXNlQ2FsbGJhY2suaCAqLywKKwkJCQk1MTFFRjJBOTE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJD
dXJzb3IuY3BwICovLAorCQkJCTgxQkUyMEE4MTFGNEI2NkYwMDkxNURGQSAvKiBKU0lEQkN1cnNv
ci5oICovLAorCQkJCTdDM0Q4RUVEMUUwQjIxNDMwMDIzQjA4NCAvKiBKU0lEQkN1cnNvckRpcmVj
dGlvbi5jcHAgKi8sCisJCQkJN0MzRDhFRUUxRTBCMjE0MzAwMjNCMDg0IC8qIEpTSURCQ3Vyc29y
RGlyZWN0aW9uLmggKi8sCisJCQkJNTExRUYyQUExN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCQ3Vy
c29yV2l0aFZhbHVlLmNwcCAqLywKKwkJCQk1MTFFRjJBQjE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJ
REJDdXJzb3JXaXRoVmFsdWUuaCAqLywKKwkJCQk1MTFFRjJBQzE3RjBGQzQ4MDBFNEZBMTYgLyog
SlNJREJEYXRhYmFzZS5jcHAgKi8sCisJCQkJQzU4NUE2NkIxMUQ0RkIwNzAwNEMzRTRCIC8qIEpT
SURCRGF0YWJhc2UuaCAqLywKKwkJCQk1MTFFRjJBRDE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJG
YWN0b3J5LmNwcCAqLywKKwkJCQlDNTg1QTY5NTExRDRGQjEzMDA0QzNFNEIgLyogSlNJREJGYWN0
b3J5LmggKi8sCisJCQkJNTExRUYyQUUxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCSW5kZXguY3Bw
ICovLAorCQkJCUM1NzJFRTFEMTIwMUM5QkMwMDdEOEY4MiAvKiBKU0lEQkluZGV4LmggKi8sCisJ
CQkJNTExRUYyQUYxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCS2V5UmFuZ2UuY3BwICovLAorCQkJ
CUM1ODVBNjc1MTFENEZCMDcwMDRDM0U0QiAvKiBKU0lEQktleVJhbmdlLmggKi8sCisJCQkJNTEx
RUYyQjAxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCT2JqZWN0U3RvcmUuY3BwICovLAorCQkJCUM1
ODVBNjc3MTFENEZCMDcwMDRDM0U0QiAvKiBKU0lEQk9iamVjdFN0b3JlLmggKi8sCisJCQkJNTEx
RUYyQjExN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCT3BlbkRCUmVxdWVzdC5jcHAgKi8sCisJCQkJ
NTExRUYyQjIxN0YwRkM0ODAwRTRGQTE2IC8qIEpTSURCT3BlbkRCUmVxdWVzdC5oICovLAorCQkJ
CTUxMUVGMkIzMTdGMEZDNDgwMEU0RkExNiAvKiBKU0lEQlJlcXVlc3QuY3BwICovLAorCQkJCUM1
ODVBNjc5MTFENEZCMDcwMDRDM0U0QiAvKiBKU0lEQlJlcXVlc3QuaCAqLywKKwkJCQk1MTFFRjJC
NDE3RjBGQzQ4MDBFNEZBMTYgLyogSlNJREJUcmFuc2FjdGlvbi5jcHAgKi8sCisJCQkJQjY1NjYy
NkUxMjBCMTIyNzAwNkVBODVDIC8qIEpTSURCVHJhbnNhY3Rpb24uaCAqLywKKwkJCQk4MzhFRjUz
OTFEQzE0QTc1MDA4RjBDMzkgLyogSlNJREJUcmFuc2FjdGlvbk1vZGUuY3BwICovLAorCQkJCTgz
OEVGNTNBMURDMTRBNzUwMDhGMEMzOSAvKiBKU0lEQlRyYW5zYWN0aW9uTW9kZS5oICovLAorCQkJ
CTI2OTIzOTkxMTUwNUUxQUEwMDlFNTdGQyAvKiBKU0lEQlZlcnNpb25DaGFuZ2VFdmVudC5jcHAg
Ki8sCisJCQkJMjY5MjM5OTIxNTA1RTFBQTAwOUU1N0ZDIC8qIEpTSURCVmVyc2lvbkNoYW5nZUV2
ZW50LmggKi8sCisJCQkJNTE0Qzc2MzUwQ0U5MjI1RTAwN0VGM0NEIC8qIEpTU1FMRXJyb3IuY3Bw
ICovLAorCQkJCUJDODI0MzI1MEQwQ0U4QTIwMDQ2MEM4RiAvKiBKU1NRTEVycm9yLmggKi8sCisJ
CQkJMUFFODJGRUEwQ0FCMDdFRTAwMjIzN0FFIC8qIEpTU1FMUmVzdWx0U2V0LmNwcCAqLywKKwkJ
CQkxQUU4MkZFQjBDQUIwN0VFMDAyMjM3QUUgLyogSlNTUUxSZXN1bHRTZXQuaCAqLywKKwkJCQkx
QUZFMTE5NzBDQkZGQ0M0MDAzMDE3RkEgLyogSlNTUUxSZXN1bHRTZXRSb3dMaXN0LmNwcCAqLywK
KwkJCQkxQUZFMTE5ODBDQkZGQ0M0MDAzMDE3RkEgLyogSlNTUUxSZXN1bHRTZXRSb3dMaXN0Lmgg
Ki8sCisJCQkJQjU5REQ2QTQxMTkwMkE2MjAwN0U5Njg0IC8qIEpTU1FMU3RhdGVtZW50Q2FsbGJh
Y2suY3BwICovLAorCQkJCUI1OURENkEzMTE5MDJBNjIwMDdFOTY4NCAvKiBKU1NRTFN0YXRlbWVu
dENhbGxiYWNrLmggKi8sCisJCQkJQjU5REQ2QTgxMTkwMkE3MTAwN0U5Njg0IC8qIEpTU1FMU3Rh
dGVtZW50RXJyb3JDYWxsYmFjay5jcHAgKi8sCisJCQkJQjU5REQ2QTcxMTkwMkE3MTAwN0U5Njg0
IC8qIEpTU1FMU3RhdGVtZW50RXJyb3JDYWxsYmFjay5oICovLAorCQkJCTUxNEM3NjM2MENFOTIy
NUUwMDdFRjNDRCAvKiBKU1NRTFRyYW5zYWN0aW9uLmNwcCAqLywKKwkJCQlCQzgyNDMyNjBEMENF
OEEyMDA0NjBDOEYgLyogSlNTUUxUcmFuc2FjdGlvbi5oICovLAorCQkJCUI1OURENjlDMTE5MDJB
NDIwMDdFOTY4NCAvKiBKU1NRTFRyYW5zYWN0aW9uQ2FsbGJhY2suY3BwICovLAorCQkJCUI1OURE
NjlCMTE5MDJBNDIwMDdFOTY4NCAvKiBKU1NRTFRyYW5zYWN0aW9uQ2FsbGJhY2suaCAqLywKKwkJ
CQlCNTlERDZBMDExOTAyQTUyMDA3RTk2ODQgLyogSlNTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJh
Y2suY3BwICovLAorCQkJCUI1OURENjlGMTE5MDJBNTIwMDdFOTY4NCAvKiBKU1NRTFRyYW5zYWN0
aW9uRXJyb3JDYWxsYmFjay5oICovLAorCQkJCTUxRTNGOUQ0MERBMDVFMUQwMDI1MDkxMSAvKiBK
U1N0b3JhZ2UuY3BwICovLAorCQkJCTUxRTNGOUQ1MERBMDVFMUQwMDI1MDkxMSAvKiBKU1N0b3Jh
Z2UuaCAqLywKKwkJCQk1MUUwQkFFODBEQTU1RDRBMDBBOUU0MTcgLyogSlNTdG9yYWdlRXZlbnQu
Y3BwICovLAorCQkJCTUxRTBCQUU5MERBNTVENEEwMEE5RTQxNyAvKiBKU1N0b3JhZ2VFdmVudC5o
ICovLAorCQkJKTsKKwkJCW5hbWUgPSBTdG9yYWdlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsKKwkJfTsKKwkJQTgzQjc5MjIwQ0NCMDBGMDAwMEIwODI1IC8qIFhNTCAqLyA9IHsKKwkJCWlz
YSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJMUFDRTUzREQwQThEMTg4MTAwMjI5
NDdEIC8qIEpTRE9NUGFyc2VyLmNwcCAqLywKKwkJCQkxQUNFNTNERTBBOEQxODgxMDAyMjk0N0Qg
LyogSlNET01QYXJzZXIuaCAqLywKKwkJCQlCQzM0OEJEMTBEQjdGODA0MDA0QUJBQjkgLyogSlNY
TUxIdHRwUmVxdWVzdC5jcHAgKi8sCisJCQkJQkMzNDhCRDIwREI3RjgwNDAwNEFCQUI5IC8qIEpT
WE1MSHR0cFJlcXVlc3QuaCAqLywKKwkJCQk4M0QzNUFFRjFDNzE4RDg0MDBGNzBENUEgLyogSlNY
TUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmNwcCAqLywKKwkJCQk4M0QzNUFGMDFDNzE4RDg0MDBG
NzBENUEgLyogSlNYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmggKi8sCisJCQkJRjkxNkM0OEIw
REI1MTBGODAwNzZDRDgzIC8qIEpTWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmNwcCAqLywK
KwkJCQlGOTE2QzQ4QzBEQjUxMEY4MDA3NkNEODMgLyogSlNYTUxIdHRwUmVxdWVzdFByb2dyZXNz
RXZlbnQuaCAqLywKKwkJCQlCQ0RGRDQ5MzBFMzA1OTJGMDA5RDEwQUQgLyogSlNYTUxIdHRwUmVx
dWVzdFVwbG9hZC5jcHAgKi8sCisJCQkJQkNERkQ0OTQwRTMwNTkyRjAwOUQxMEFEIC8qIEpTWE1M
SHR0cFJlcXVlc3RVcGxvYWQuaCAqLywKKwkJCQkxQUNFNTNGNDBBOEQxOTQ3MDAyMjk0N0QgLyog
SlNYTUxTZXJpYWxpemVyLmNwcCAqLywKKwkJCQkxQUNFNTNGNTBBOEQxOTQ3MDAyMjk0N0QgLyog
SlNYTUxTZXJpYWxpemVyLmggKi8sCisJCQkJQkNFRkUxRTgwRENBNUY2NDAwNzM5MjE5IC8qIEpT
WFNMVFByb2Nlc3Nvci5jcHAgKi8sCisJCQkJQkNFRkUxRTkwRENBNUY2NDAwNzM5MjE5IC8qIEpT
WFNMVFByb2Nlc3Nvci5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBYTUw7CisJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOworCQl9OworCQlBOEQyQjI1MjEyODdBNTYwMDBBRjREREEgLyogY2FjaGUg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTYzNTNFMUU1
MUY5MTc0MzEwMEEzNDIwOCAvKiBDYWNoZWRBcHBsaWNhdGlvbk1hbmlmZXN0LmNwcCAqLywKKwkJ
CQk2MzUzRTFFNDFGOTE3NDMxMDBBMzQyMDggLyogQ2FjaGVkQXBwbGljYXRpb25NYW5pZmVzdC5o
ICovLAorCQkJCUJDQjE2QzAwMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRDU1NTdHlsZVNoZWV0
LmNwcCAqLywKKwkJCQlCQ0IxNkMwMTA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkQ1NTU3R5bGVT
aGVldC5oICovLAorCQkJCUJDNjRCNEM5MENCNDI5NUQwMDVGMkI2MiAvKiBDYWNoZWRGb250LmNw
cCAqLywKKwkJCQlCQzY0QjRDQTBDQjQyOTVEMDA1RjJCNjIgLyogQ2FjaGVkRm9udC5oICovLAor
CQkJCTFBRUY0RTY2MTcwRTE2MDMwMEFCMjc5OSAvKiBDYWNoZWRGb250Q2xpZW50LmggKi8sCisJ
CQkJODU4Nzg2NDkwMkRFM0E5QTAxRUE0MTIyIC8qIENhY2hlZEZvbnRMb2FkUmVxdWVzdC5oICov
LAorCQkJCUJDQjE2QzAyMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRJbWFnZS5jcHAgKi8sCisJ
CQkJQkNCMTZDMDMwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZEltYWdlLmggKi8sCisJCQkJMzE5
RkJENUQxNUQyRjQ0NDAwOTY0MEE2IC8qIENhY2hlZEltYWdlQ2xpZW50LmggKi8sCisJCQkJRDBF
REE3NzIxNDNFMzAzQzAwMjhFMzgzIC8qIENhY2hlZFJhd1Jlc291cmNlLmNwcCAqLywKKwkJCQlE
MEVEQTc3MzE0M0UzMDNDMDAyOEUzODMgLyogQ2FjaGVkUmF3UmVzb3VyY2UuaCAqLywKKwkJCQlF
MUI1MzM0ODE3MTdERUUzMDBGMjA1RjkgLyogQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaCAqLywK
KwkJCQlCQ0IxNkMwNjA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkUmVzb3VyY2UuY3BwICovLAor
CQkJCUJDQjE2QzA3MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJjZS5oICovLAorCQkJ
CUJDRkIyRTVEMDk3OUU0NjQwMEJBNzAzRCAvKiBDYWNoZWRSZXNvdXJjZUNsaWVudC5oICovLAor
CQkJCUJDQjE2QzA5MDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRSZXNvdXJjZUNsaWVudFdhbGtl
ci5oICovLAorCQkJCUU0N0I0QkU3MEU3MTI0MTYwMDAzODg1NCAvKiBDYWNoZWRSZXNvdXJjZUhh
bmRsZS5jcHAgKi8sCisJCQkJRTQ3QjRCRTYwRTcxMjQxNjAwMDM4ODU0IC8qIENhY2hlZFJlc291
cmNlSGFuZGxlLmggKi8sCisJCQkJQkNCMTZDMTAwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFJl
c291cmNlTG9hZGVyLmNwcCAqLywKKwkJCQlCQ0IxNkMxMTA5NzlDM0JEMDA0Njc3NDEgLyogQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIuaCAqLywKKwkJCQk1MDgxRTNERjNDRkM4MEMxNkVGOEI0OEIgLyog
Q2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmNwcCAqLywKKwkJCQk1MDgxRTNFMTNEMDI4MEMxNkVGOEI0
OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmggKi8sCisJCQkJNkM2Mzg4OTRBOTZDQ0VFNTBD
OEM5NDZDIC8qIENhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMuY3BwICovLAorCQkJCTZD
NjM4ODkzQTk2Q0NFRTUwQzhDOTQ2QyAvKiBDYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3Jz
LmggKi8sCisJCQkJQkNCMTZDMEEwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5jcHAg
Ki8sCisJCQkJQkNCMTZDMEIwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hlZFNjcmlwdC5oICovLAor
CQkJCUQwQkM1NDQ4MTQ0M0FDNEEwMEUxMDVEQSAvKiBDYWNoZWRTdHlsZVNoZWV0Q2xpZW50Lmgg
Ki8sCisJCQkJQTEwNEYyNDExNEM3MUY3QTAwOUUyQzIzIC8qIENhY2hlZFNWR0RvY3VtZW50LmNw
cCAqLywKKwkJCQlBMTA0RjI0MjE0QzcxRjdBMDA5RTJDMjMgLyogQ2FjaGVkU1ZHRG9jdW1lbnQu
aCAqLywKKwkJCQkxQUVGNEU2ODE3MEUxNzQ4MDBBQjI3OTkgLyogQ2FjaGVkU1ZHRG9jdW1lbnRD
bGllbnQuaCAqLywKKwkJCQlFMUI1MzM0NjE3MTdEMEEwMDBGMjA1RjkgLyogQ2FjaGVkU1ZHRG9j
dW1lbnRSZWZlcmVuY2UuY3BwICovLAorCQkJCUZCMkMxNUMyMTY1RDY0OTAwMDM5QzlGOCAvKiBD
YWNoZWRTVkdEb2N1bWVudFJlZmVyZW5jZS5oICovLAorCQkJCTFDMDkzOUU4MUExM0UxMjkwMEI3
ODhFNSAvKiBDYWNoZWRTVkdGb250LmNwcCAqLywKKwkJCQkxQzA5MzlFOTFBMTNFMTI5MDBCNzg4
RTUgLyogQ2FjaGVkU1ZHRm9udC5oICovLAorCQkJCTA3NTM4NjAwMTQ0ODlFOTgwMEI3ODQ1MiAv
KiBDYWNoZWRUZXh0VHJhY2suY3BwICovLAorCQkJCTA3NTM4NjAxMTQ0ODlFOTgwMEI3ODQ1MiAv
KiBDYWNoZWRUZXh0VHJhY2suaCAqLywKKwkJCQlCQ0IxNkMwRTA5NzlDM0JEMDA0Njc3NDEgLyog
Q2FjaGVkWFNMU3R5bGVTaGVldC5jcHAgKi8sCisJCQkJQkNCMTZDMEYwOTc5QzNCRDAwNDY3NzQx
IC8qIENhY2hlZFhTTFN0eWxlU2hlZXQuaCAqLywKKwkJCQlGNTg3ODY0OTAyREUzQTlBMDFFQTQx
MjIgLyogQ2FjaGVQb2xpY3kuaCAqLywKKwkJCQk4M0I3NEVGMjFGM0UwQkQ3MDA5OTZCQzcgLyog
S2VlcGFsaXZlUmVxdWVzdFRyYWNrZXIuY3BwICovLAorCQkJCTgzQjc0RUYzMUYzRTBCRDcwMDk5
NkJDNyAvKiBLZWVwYWxpdmVSZXF1ZXN0VHJhY2tlci5oICovLAorCQkJCUJDQjE2QkZFMDk3OUMz
QkQwMDQ2Nzc0MSAvKiBNZW1vcnlDYWNoZS5jcHAgKi8sCisJCQkJQkNCMTZCRkYwOTc5QzNCRDAw
NDY3NzQxIC8qIE1lbW9yeUNhY2hlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGNhY2hlOworCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQTlEMjQ3RjkwRDc1N0U0MTAwRkRGOTU5
IC8qIFBsdWdpbnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCUE5RDI0ODAyMEQ3NTdFN0QwMEZERjk1OSAvKiBKU0RPTU1pbWVUeXBlLmNwcCAqLywKKwkJ
CQlBOUQyNDgwMzBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1lVHlwZS5oICovLAorCQkJCUE5
RDI0ODA0MEQ3NTdFN0QwMEZERjk1OSAvKiBKU0RPTU1pbWVUeXBlQXJyYXkuY3BwICovLAorCQkJ
CUE5RDI0ODA1MEQ3NTdFN0QwMEZERjk1OSAvKiBKU0RPTU1pbWVUeXBlQXJyYXkuaCAqLywKKwkJ
CQlBOUQyNDdGQTBENzU3RTY5MDBGREY5NTkgLyogSlNET01QbHVnaW4uY3BwICovLAorCQkJCUE5
RDI0N0ZCMEQ3NTdFNjkwMEZERjk1OSAvKiBKU0RPTVBsdWdpbi5oICovLAorCQkJCUE5RDI0N0ZD
MEQ3NTdFNjkwMEZERjk1OSAvKiBKU0RPTVBsdWdpbkFycmF5LmNwcCAqLywKKwkJCQlBOUQyNDdG
RDBENzU3RTY5MDBGREY5NTkgLyogSlNET01QbHVnaW5BcnJheS5oICovLAorCQkJKTsKKwkJCW5h
bWUgPSBQbHVnaW5zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQUEyQTVB
QjcxNkE0ODVBNDAwOTc1QTI1IC8qIHNwZWVjaCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOwor
CQkJY2hpbGRyZW4gPSAoCisJCQkJOTNCMzhFQjYyNTgyMTgzMzAwMTk4RTYzIC8qIGNvY29hICov
LAorCQkJCUFBMkE1QUJBMTZBNDg1RDUwMDk3NUEyNSAvKiBET01XaW5kb3crU3BlZWNoU3ludGhl
c2lzLmlkbCAqLywKKwkJCQlBQTJBNUFCODE2QTQ4NUQ1MDA5NzVBMjUgLyogRE9NV2luZG93U3Bl
ZWNoU3ludGhlc2lzLmNwcCAqLywKKwkJCQlBQTJBNUFCOTE2QTQ4NUQ1MDA5NzVBMjUgLyogRE9N
V2luZG93U3BlZWNoU3ludGhlc2lzLmggKi8sCisJCQkJOTM0OTUwQzcyNTM5NDM1NDAwOTlGMTcx
IC8qIFNwZWVjaFJlY29nbml0aW9uLmNwcCAqLywKKwkJCQk5MzQ5NTBCMTI1Mzk0MzQ4MDA5OUYx
NzEgLyogU3BlZWNoUmVjb2duaXRpb24uaCAqLywKKwkJCQk5MzQ5NTBBRDI1Mzk0MzQ2MDA5OUYx
NzEgLyogU3BlZWNoUmVjb2duaXRpb24uaWRsICovLAorCQkJCTkzNDk1MEI3MjUzOTQzNEIwMDk5
RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlLmNwcCAqLywKKwkJCQk5MzQ5NTBC
QzI1Mzk0MzRFMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5hdGl2ZS5oICovLAor
CQkJCTkzNDk1MEJCMjUzOTQzNEUwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0
aXZlLmlkbCAqLywKKwkJCQk5M0Y2QjgxRTI1Njc5RjcxMDBBMDg0ODggLyogU3BlZWNoUmVjb2du
aXRpb25DYXB0dXJlU291cmNlLmNwcCAqLywKKwkJCQk5M0Y2QjgxQjI1Njc5RjZGMDBBMDg0ODgg
LyogU3BlZWNoUmVjb2duaXRpb25DYXB0dXJlU291cmNlLmggKi8sCisJCQkJOTNGNkI4MUQyNTY3
OUY3MDAwQTA4NDg4IC8qIFNwZWVjaFJlY29nbml0aW9uQ2FwdHVyZVNvdXJjZUltcGwuY3BwICov
LAorCQkJCTkzRjZCODFDMjU2NzlGNzAwMEEwODQ4OCAvKiBTcGVlY2hSZWNvZ25pdGlvbkNhcHR1
cmVTb3VyY2VJbXBsLmggKi8sCisJCQkJOTNBMDQ4MUQyNTQ5NTRFNTAwMEFDNDYyIC8qIFNwZWVj
aFJlY29nbml0aW9uQ29ubmVjdGlvbi5oICovLAorCQkJCTkzQTA0ODI0MjU0OTU0RTkwMDBBQzQ2
MiAvKiBTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnQuaCAqLywKKwkJCQk5M0EwNDgy
MDI1NDk1NEU2MDAwQUM0NjIgLyogU3BlZWNoUmVjb2duaXRpb25Db25uZWN0aW9uQ2xpZW50SWRl
bnRpZmllci5oICovLAorCQkJCTkzQTA0ODIxMjU0OTU0RTgwMDBBQzQ2MiAvKiBTcGVlY2hSZWNv
Z25pdGlvbkVycm9yLmggKi8sCisJCQkJOTM0OTUwQUYyNTM5NDM0NzAwOTlGMTcxIC8qIFNwZWVj
aFJlY29nbml0aW9uRXJyb3JDb2RlLmggKi8sCisJCQkJOTM0OTUwQjgyNTM5NDM0QzAwOTlGMTcx
IC8qIFNwZWVjaFJlY29nbml0aW9uRXJyb3JDb2RlLmlkbCAqLywKKwkJCQk5MzQ5NTBDODI1Mzk0
MzU0MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvckV2ZW50LmNwcCAqLywKKwkJCQk5
MzQ5NTBDMzI1Mzk0MzUyMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvckV2ZW50Lmgg
Ki8sCisJCQkJOTM0OTUwQkEyNTM5NDM0RDAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJy
b3JFdmVudC5pZGwgKi8sCisJCQkJOTM0OTUwQzAyNTM5NDM1MDAwOTlGMTcxIC8qIFNwZWVjaFJl
Y29nbml0aW9uRXZlbnQuY3BwICovLAorCQkJCTkzNDk1MEM5MjUzOTQzNTUwMDk5RjE3MSAvKiBT
cGVlY2hSZWNvZ25pdGlvbkV2ZW50LmggKi8sCisJCQkJOTM0OTUwQjQyNTM5NDM0OTAwOTlGMTcx
IC8qIFNwZWVjaFJlY29nbml0aW9uRXZlbnQuaWRsICovLAorCQkJCTkzQTA0ODIyMjU0OTU0RTgw
MDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvblJlcXVlc3QuY3BwICovLAorCQkJCTkzQTA0ODFG
MjU0OTU0RTYwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvblJlcXVlc3QuaCAqLywKKwkJCQk5
M0Q2Qjc2RjI1NEI5MDJEMDA1OEREM0EgLyogU3BlZWNoUmVjb2duaXRpb25SZXF1ZXN0SW5mby5o
ICovLAorCQkJCTkzNDk1MEJGMjUzOTQzNTAwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvblJl
c3VsdC5jcHAgKi8sCisJCQkJOTM0OTUwQzEyNTM5NDM1MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29n
bml0aW9uUmVzdWx0LmggKi8sCisJCQkJOTM0OTUwQjkyNTM5NDM0RDAwOTlGMTcxIC8qIFNwZWVj
aFJlY29nbml0aW9uUmVzdWx0LmlkbCAqLywKKwkJCQk5M0EwNDgxQjI1NDk1NEU0MDAwQUM0NjIg
LyogU3BlZWNoUmVjb2duaXRpb25SZXN1bHREYXRhLmggKi8sCisJCQkJOTM0OTUwQkQyNTM5NDM0
RjAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0TGlzdC5jcHAgKi8sCisJCQkJOTM0
OTUwQzQyNTM5NDM1MjAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uUmVzdWx0TGlzdC5oICov
LAorCQkJCTkzNDk1MEM1MjUzOTQzNTMwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvblJlc3Vs
dExpc3QuaWRsICovLAorCQkJCTkzRDZCNzZFMjU0QjhFMUIwMDU4REQzQSAvKiBTcGVlY2hSZWNv
Z25pdGlvblVwZGF0ZS5jcHAgKi8sCisJCQkJOTNENkI3NkQyNTRCOEUxQjAwNThERDNBIC8qIFNw
ZWVjaFJlY29nbml0aW9uVXBkYXRlLmggKi8sCisJCQkJOTM5QzBEMjMyNTY0OEM0RTAwQjMyMTFC
IC8qIFNwZWVjaFJlY29nbml6ZXIuY3BwICovLAorCQkJCTkzOUMwRDIxMjU2NDhDMzkwMEIzMjEx
QiAvKiBTcGVlY2hSZWNvZ25pemVyLmggKi8sCisJCQkJQUEyQTVBQkQxNkE0ODVENTAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpcy5jcHAgKi8sCisJCQkJQUEyQTVBQkUxNkE0ODVENTAwOTc1QTI1
IC8qIFNwZWVjaFN5bnRoZXNpcy5oICovLAorCQkJCUFBMkE1QUJGMTZBNDg1RDUwMDk3NUEyNSAv
KiBTcGVlY2hTeW50aGVzaXMuaWRsICovLAorCQkJCUFBMkE1QUMwMTZBNDg1RDUwMDk3NUEyNSAv
KiBTcGVlY2hTeW50aGVzaXNFdmVudC5jcHAgKi8sCisJCQkJQUEyQTVBQzExNkE0ODVENTAwOTc1
QTI1IC8qIFNwZWVjaFN5bnRoZXNpc0V2ZW50LmggKi8sCisJCQkJQUEyQTVBQzIxNkE0ODVENTAw
OTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc0V2ZW50LmlkbCAqLywKKwkJCQlBQTJBNUFDNDE2QTQ4
NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmNwcCAqLywKKwkJCQlBQTJB
NUFDNTE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmggKi8sCisJ
CQkJQUEyQTVBQzMxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5p
ZGwgKi8sCisJCQkJQUEyQTVBQzYxNkE0ODVENTAwOTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1Zv
aWNlLmNwcCAqLywKKwkJCQlBQTJBNUFDNzE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3ludGhl
c2lzVm9pY2UuaCAqLywKKwkJCQlBQTJBNUFDODE2QTQ4NUQ1MDA5NzVBMjUgLyogU3BlZWNoU3lu
dGhlc2lzVm9pY2UuaWRsICovLAorCQkJKTsKKwkJCXBhdGggPSBzcGVlY2g7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQlBQTdGRUU5QjE2QTQ5MUExMDA0QzBDMzMgLyogU3Bl
ZWNoICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlBQTdG
RUU5QzE2QTRFNkYzMDA0QzBDMzMgLyogSlNTcGVlY2hTeW50aGVzaXMuY3BwICovLAorCQkJCUFB
N0ZFRUFDMTZBNEU3NEIwMDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpcy5oICovLAorCQkJCUFB
MkE1QUMwMTZBNDg1RDUwMDk3NkEyNSAvKiBKU1NwZWVjaFN5bnRoZXNpc0V2ZW50LmNwcCAqLywK
KwkJCQlBQTJBNUFDMTE2QTQ4NUQ1MDA5NzZBMjUgLyogSlNTcGVlY2hTeW50aGVzaXNFdmVudC5o
ICovLAorCQkJCUFBN0ZFRTlFMTZBNEU2RjMwMDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpc1V0
dGVyYW5jZS5jcHAgKi8sCisJCQkJQUE3RkVFOUYxNkE0RTZGMzAwNEMwQzMzIC8qIEpTU3BlZWNo
U3ludGhlc2lzVXR0ZXJhbmNlLmggKi8sCisJCQkJQUE3RkVFQTAxNkE0RTZGMzAwNEMwQzMzIC8q
IEpTU3BlZWNoU3ludGhlc2lzVm9pY2UuY3BwICovLAorCQkJCUFBN0ZFRUExMTZBNEU2RjMwMDRD
MEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpc1ZvaWNlLmggKi8sCisJCQkpOworCQkJbmFtZSA9IFNw
ZWVjaDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUFBQTcyOEVGMTZEMUQ4
QkMwMEQzQkJDNiAvKiBpb3MgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVu
ID0gKAorCQkJCUFBQTcyOEYwMTZEMUQ4QkMwMEQzQkJDNiAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0
SU9TLm1tICovLAorCQkJCUFBQTcyOEYzMTZEMUQ4QkMwMEQzQkJDNiAvKiBBWE9iamVjdENhY2hl
SU9TLm1tICovLAorCQkJCUFBQTcyOEYxMTZEMUQ4QkMwMEQzQkJDNiAvKiBXZWJBY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlcklPUy5oICovLAorCQkJCUFBQTcyOEYyMTZEMUQ4QkMwMEQzQkJDNiAv
KiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbSAqLywKKwkJCSk7CisJCQlwYXRo
ID0gaW9zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQUFDQzgzRDkyMzE2
NTc4NjAwRUI2QkY1IC8qIE1BVEhNTCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJQUExMUMwNEQyMzE2OTczRDAwOUQ5ODMxIC8qIEpTTWF0aE1MTWF0aEVs
ZW1lbnQuY3BwICovLAorCQkJCUFBMTFDMDRFMjMxNjk3ODIwMDlEOTgzMSAvKiBKU01hdGhNTE1h
dGhFbGVtZW50LmggKi8sCisJCQkpOworCQkJbmFtZSA9IE1BVEhNTDsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCUIxQTk0MkREMTVCNUNFMjIwMEQ1MjVEMSAvKiBtZWRpYXNv
dXJjZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQ0Q4
QjVBNEExODBFMTdBMzAwOEI4RTY1IC8qIEF1ZGlvVHJhY2srTWVkaWFTb3VyY2UuaWRsICovLAor
CQkJCUNEOEI1QTRCMTgwRTE3QzAwMDhCOEU2NSAvKiBBdWRpb1RyYWNrTWVkaWFTb3VyY2UuaCAq
LywKKwkJCQlDRDlERTE4MDE3QUFENjRFMDBFQTM4NkQgLyogRE9NVVJMK01lZGlhU291cmNlLmlk
bCAqLywKKwkJCQlDRDlERTE3RTE3QUFENjRFMDBFQTM4NkQgLyogRE9NVVJMTWVkaWFTb3VyY2Uu
Y3BwICovLAorCQkJCUNEOURFMTdGMTdBQUQ2NEUwMEVBMzg2RCAvKiBET01VUkxNZWRpYVNvdXJj
ZS5oICovLAorCQkJCUNEM0E0OTU1MTdBOUQwMUIwMDI3NEU0MiAvKiBNZWRpYVNvdXJjZS5jcHAg
Ki8sCisJCQkJQ0QzQTQ5NTYxN0E5RDAxQjAwMjc0RTQyIC8qIE1lZGlhU291cmNlLmggKi8sCisJ
CQkJQ0QzQTQ5NTcxN0E5RDAxQjAwMjc0RTQyIC8qIE1lZGlhU291cmNlLmlkbCAqLywKKwkJCQk0
MTc2OTAwNDIyRkNEOEYyMDBCMTU3NkQgLyogTWVkaWFTb3VyY2VSZWdpc3RyeS5jcHAgKi8sCisJ
CQkJNDE3NjkwMDMyMkZDRDhGMjAwQjE1NzZEIC8qIE1lZGlhU291cmNlUmVnaXN0cnkuaCAqLywK
KwkJCQlDREQ3MDg5NDE4MzU5RjZFMDAyQjNEQzYgLyogU2FtcGxlTWFwLmNwcCAqLywKKwkJCQlD
REQ3MDg5NTE4MzU5RjZGMDAyQjNEQzYgLyogU2FtcGxlTWFwLmggKi8sCisJCQkJQ0QzQTQ5NTgx
N0E5RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlci5jcHAgKi8sCisJCQkJQ0QzQTQ5NTkxN0E5
RDAxQjAwMjc0RTQyIC8qIFNvdXJjZUJ1ZmZlci5oICovLAorCQkJCUNEM0E0OTVBMTdBOUQwMUIw
MDI3NEU0MiAvKiBTb3VyY2VCdWZmZXIuaWRsICovLAorCQkJCUNEM0E0OTVCMTdBOUQwMUIwMDI3
NEU0MiAvKiBTb3VyY2VCdWZmZXJMaXN0LmNwcCAqLywKKwkJCQlDRDNBNDk1QzE3QTlEMDFCMDAy
NzRFNDIgLyogU291cmNlQnVmZmVyTGlzdC5oICovLAorCQkJCUNEM0E0OTVEMTdBOUQwMUIwMDI3
NEU0MiAvKiBTb3VyY2VCdWZmZXJMaXN0LmlkbCAqLywKKwkJCQlDRDhCNUE0NzE4MEUxMzYxMDA4
QjhFNjUgLyogVGV4dFRyYWNrK01lZGlhU291cmNlLmlkbCAqLywKKwkJCQlDRDhCNUE0ODE4MEUx
MzhCMDA4QjhFNjUgLyogVGV4dFRyYWNrTWVkaWFTb3VyY2UuaCAqLywKKwkJCQlDREU4M0RBRjE4
M0M0NDA2MDAzMUVBQTMgLyogVmlkZW9QbGF5YmFja1F1YWxpdHkuY3BwICovLAorCQkJCUNERTgz
REIwMTgzQzQ0MDYwMDMxRUFBMyAvKiBWaWRlb1BsYXliYWNrUXVhbGl0eS5oICovLAorCQkJCUNE
RTgzREIzMTgzQzQ0MUUwMDMxRUFBMyAvKiBWaWRlb1BsYXliYWNrUXVhbGl0eS5pZGwgKi8sCisJ
CQkJQ0Q4QjVBNDQxODBERDhENjAwOEI4RTY1IC8qIFZpZGVvVHJhY2srTWVkaWFTb3VyY2UuaWRs
ICovLAorCQkJCUNEOEI1QTQ1MTgwREZGNEUwMDhCOEU2NSAvKiBWaWRlb1RyYWNrTWVkaWFTb3Vy
Y2UuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gbWVkaWFzb3VyY2U7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQlCMUFENEU3NzEzQTEyQTcyMDA4NDZCMjcgLyogdHJhY2sgKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUJFODhFMENDMTcx
NUQyQTIwMDY1OEQ5OCAvKiBBdWRpb1RyYWNrLmNwcCAqLywKKwkJCQlCRTg4RTBDRDE3MTVEMkEy
MDA2NThEOTggLyogQXVkaW9UcmFjay5oICovLAorCQkJCUJFODhFMENFMTcxNUQyQTIwMDY1OEQ5
OCAvKiBBdWRpb1RyYWNrLmlkbCAqLywKKwkJCQlCRTg4RTBDRjE3MTVEMkEyMDA2NThEOTggLyog
QXVkaW9UcmFja0xpc3QuY3BwICovLAorCQkJCUJFODhFMEQwMTcxNUQyQTIwMDY1OEQ5OCAvKiBB
dWRpb1RyYWNrTGlzdC5oICovLAorCQkJCUJFODhFMEQxMTcxNUQyQTIwMDY1OEQ5OCAvKiBBdWRp
b1RyYWNrTGlzdC5pZGwgKi8sCisJCQkJN0E0NTAzMkQxOERCNzE3MjAwMzc3QjM0IC8qIEJ1ZmZl
cmVkTGluZVJlYWRlci5jcHAgKi8sCisJCQkJN0E0NTAzMkUxOERCNzE3MjAwMzc3QjM0IC8qIEJ1
ZmZlcmVkTGluZVJlYWRlci5oICovLAorCQkJCUJFMjM0ODA5MThBOTg3MDMwMEU0QjZFOCAvKiBE
YXRhQ3VlLmNwcCAqLywKKwkJCQlCRTIzNDgwQTE4QTk4NzAzMDBFNEI2RTggLyogRGF0YUN1ZS5o
ICovLAorCQkJCUJFMjM0ODBCMThBOTg3MDMwMEU0QjZFOCAvKiBEYXRhQ3VlLmlkbCAqLywKKwkJ
CQlCRTk2MUM1MjE4QUQzMzdDMDBEMDdEQzUgLyogSW5iYW5kRGF0YVRleHRUcmFjay5jcHAgKi8s
CisJCQkJQkU5NjFDNTMxOEFEMzM3QzAwRDA3REM1IC8qIEluYmFuZERhdGFUZXh0VHJhY2suaCAq
LywKKwkJCQlCRTE2QzU4RTE3Q0ZFMTcyMDA4NTJDMDQgLyogSW5iYW5kR2VuZXJpY1RleHRUcmFj
ay5jcHAgKi8sCisJCQkJQkUxNkM1OEYxN0NGRTE3MjAwODUyQzA0IC8qIEluYmFuZEdlbmVyaWNU
ZXh0VHJhY2suaCAqLywKKwkJCQkwNzk0MTc4RjE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4
dFRyYWNrLmNwcCAqLywKKwkJCQkwNzk0MTc5MDE2NkU4NTVGMDA5NDE2QzIgLyogSW5iYW5kVGV4
dFRyYWNrLmggKi8sCisJCQkJQkUxNkM1OTAxN0NGRTE3MjAwODUyQzA0IC8qIEluYmFuZFdlYlZU
VFRleHRUcmFjay5jcHAgKi8sCisJCQkJQkUxNkM1OTExN0NGRTE3MjAwODUyQzA0IC8qIEluYmFu
ZFdlYlZUVFRleHRUcmFjay5oICovLAorCQkJCTk3NTlFOTM0MTRFRjFDRjgwMDI2QTJERCAvKiBM
b2FkYWJsZVRleHRUcmFjay5jcHAgKi8sCisJCQkJOTc1OUU5NDgxNEVGMUQ0OTAwMjZBMkREIC8q
IExvYWRhYmxlVGV4dFRyYWNrLmggKi8sCisJCQkJOTc1OUU5MzUxNEVGMUNGODAwMjZBMkREIC8q
IFRleHRUcmFjay5jcHAgKi8sCisJCQkJOTc1OUU5MzYxNEVGMUNGODAwMjZBMkREIC8qIFRleHRU
cmFjay5oICovLAorCQkJCTk3NTlFOTM3MTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2suaWRs
ICovLAorCQkJCTk3NTlFOTM4MTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWUuY3BwICov
LAorCQkJCTk3NTlFOTM5MTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWUuaCAqLywKKwkJ
CQk5NzU5RTkzQTE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4dFRyYWNrQ3VlLmlkbCAqLywKKwkJCQkw
NzFBOUVDMDE2OEZCNTZDMDAyNjI5RjkgLyogVGV4dFRyYWNrQ3VlR2VuZXJpYy5jcHAgKi8sCisJ
CQkJMDcxQTlFQzExNjhGQjU2QzAwMjYyOUY5IC8qIFRleHRUcmFja0N1ZUdlbmVyaWMuaCAqLywK
KwkJCQlDREZENzhDMjIyNDJGQzQ5MDBENzIwOEEgLyogVGV4dFRyYWNrQ3VlR2VuZXJpYy5pZGwg
Ki8sCisJCQkJOTc1OUU5M0IxNEVGMUNGODAwMjZBMkREIC8qIFRleHRUcmFja0N1ZUxpc3QuY3Bw
ICovLAorCQkJCTk3NTlFOTNDMTRFRjFDRjgwMDI2QTJERCAvKiBUZXh0VHJhY2tDdWVMaXN0Lmgg
Ki8sCisJCQkJOTc1OUU5M0QxNEVGMUNGODAwMjZBMkREIC8qIFRleHRUcmFja0N1ZUxpc3QuaWRs
ICovLAorCQkJCTA3Njk3MDg0MTQ2M0FEODcwMEY1MDJDRiAvKiBUZXh0VHJhY2tMaXN0LmNwcCAq
LywKKwkJCQkwNzY5NzA4NTE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICovLAor
CQkJCTA3QjVBMzA2MTQ2ODUzNzEwMEE4MUVDRSAvKiBUZXh0VHJhY2tMaXN0LmlkbCAqLywKKwkJ
CQkwNzAzMzREODE0NUEwMDZGMDA4RDhENDUgLyogVHJhY2tCYXNlLmNwcCAqLywKKwkJCQkwNzAz
MzRENjE0NTlGRkQ1MDA4RDhENDUgLyogVHJhY2tCYXNlLmggKi8sCisJCQkJMDcwMzM0RDAxNDU5
RkZBQzAwOEQ4RDQ1IC8qIFRyYWNrRXZlbnQuY3BwICovLAorCQkJCTA3MDMzNEQxMTQ1OUZGQUMw
MDhEOEQ0NSAvKiBUcmFja0V2ZW50LmggKi8sCisJCQkJMDcwMzM0RDIxNDU5RkZBQzAwOEQ4RDQ1
IC8qIFRyYWNrRXZlbnQuaWRsICovLAorCQkJCUJFODhFMEJGMTcxNUNFMjYwMDY1OEQ5OCAvKiBU
cmFja0xpc3RCYXNlLmNwcCAqLywKKwkJCQlCRTg4RTBDMDE3MTVDRTI2MDA2NThEOTggLyogVHJh
Y2tMaXN0QmFzZS5oICovLAorCQkJCUJFODhFMEQyMTcxNUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1Ry
YWNrLmNwcCAqLywKKwkJCQlCRTg4RTBEMzE3MTVEMkEyMDA2NThEOTggLyogVmlkZW9UcmFjay5o
ICovLAorCQkJCUJFODhFMEQ0MTcxNUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1RyYWNrLmlkbCAqLywK
KwkJCQlCRTg4RTBENTE3MTVEMkEyMDA2NThEOTggLyogVmlkZW9UcmFja0xpc3QuY3BwICovLAor
CQkJCUJFODhFMEQ2MTcxNUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1RyYWNrTGlzdC5oICovLAorCQkJ
CUJFODhFMEQ3MTcxNUQyQTIwMDY1OEQ5OCAvKiBWaWRlb1RyYWNrTGlzdC5pZGwgKi8sCisJCQkJ
QkUyMDUwNzYxOEE0NTg0NjAwODA2NDdFIC8qIFZUVEN1ZS5jcHAgKi8sCisJCQkJQkUyMDUwNzcx
OEE0NTg0NjAwODA2NDdFIC8qIFZUVEN1ZS5oICovLAorCQkJCUJFMjA1MDc4MThBNDU4NDYwMDgw
NjQ3RSAvKiBWVFRDdWUuaWRsICovLAorCQkJCTdBRjlCMUZDMThDRkIyREYwMEM2NEJFRiAvKiBW
VFRSZWdpb24uY3BwICovLAorCQkJCTdBRjlCMUZEMThDRkIyREYwMEM2NEJFRiAvKiBWVFRSZWdp
b24uaCAqLywKKwkJCQk3QUY5QjFGRTE4Q0ZCMkRGMDBDNjRCRUYgLyogVlRUUmVnaW9uLmlkbCAq
LywKKwkJCQk3QUY5QjFGRjE4Q0ZCMkRGMDBDNjRCRUYgLyogVlRUUmVnaW9uTGlzdC5jcHAgKi8s
CisJCQkJN0FGOUIyMDAxOENGQjJERjAwQzY0QkVGIC8qIFZUVFJlZ2lvbkxpc3QuaCAqLywKKwkJ
CQk3QUY5QjIwMTE4Q0ZCMkRGMDBDNjRCRUYgLyogVlRUUmVnaW9uTGlzdC5pZGwgKi8sCisJCQkJ
N0E5Mzg2ODIxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuY3BwICovLAorCQkJCTdBOTM4
NjgzMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi8sCisJCQkJRjEyMTcxRjMxNkE4
QkM2MzAwMDA1M0NBIC8qIFdlYlZUVEVsZW1lbnQuY3BwICovLAorCQkJCUYxMjE3MUY0MTZBOEJD
NjMwMDAwNTNDQSAvKiBXZWJWVFRFbGVtZW50LmggKi8sCisJCQkJNUQyMUE4MDAxM0VDRTVERjAw
QkI3MDY0IC8qIFdlYlZUVFBhcnNlci5jcHAgKi8sCisJCQkJNUQyMUE4MDExM0VDRTVERjAwQkI3
MDY0IC8qIFdlYlZUVFBhcnNlci5oICovLAorCQkJCUIxMEI2OTdEMTQwQzE3NDAwMEJDMUMyNiAv
KiBXZWJWVFRUb2tlbi5oICovLAorCQkJCUIxMEI2OTdFMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJW
VFRUb2tlbml6ZXIuY3BwICovLAorCQkJCUIxMEI2OTdGMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJW
VFRUb2tlbml6ZXIuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gdHJhY2s7CisJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOworCQl9OworCQlCMjIyNzdDQTBEMDBCRjFFMDA3MUI3ODIgLyogc3ZnICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlFNDZFOTc4NjBE
QUFENjFCMDA3MUU4OTQgLyogYW5pbWF0aW9uICovLAorCQkJCUIyNTU5ODg2MEQwMEQ4QjgwMEJC
ODI1QyAvKiBncmFwaGljcyAqLywKKwkJCQkwODFDREZCRDEyNkVDRkU4MDBEMjE1Q0EgLyogcHJv
cGVydGllcyAqLywKKwkJCQlCMjIyNzgxRjBEMDBCRjFGMDA3MUI3ODIgLyogRG9jdW1lbnQrU1ZH
LmlkbCAqLywKKwkJCQk3QzAyMzIwMTI1MUE1MjQ4MDBCQTdCQjYgLyogRG9jdW1lbnRTVkcuY3Bw
ICovLAorCQkJCTdDMDIzMjAwMjUxQTUyNDgwMEJBN0JCNiAvKiBEb2N1bWVudFNWRy5oICovLAor
CQkJCUIyMjI3N0NEMEQwMEJGMUYwMDcxQjc4MiAvKiBHcmFkaWVudEF0dHJpYnV0ZXMuaCAqLywK
KwkJCQlCMjIyNzdDRTBEMDBCRjFGMDA3MUI3ODIgLyogTGluZWFyR3JhZGllbnRBdHRyaWJ1dGVz
LmggKi8sCisJCQkJQjIyMjc3REIwRDAwQkYxRjAwNzFCNzgyIC8qIFBhdHRlcm5BdHRyaWJ1dGVz
LmggKi8sCisJCQkJQjIyMjc3REMwRDAwQkYxRjAwNzFCNzgyIC8qIFJhZGlhbEdyYWRpZW50QXR0
cmlidXRlcy5oICovLAorCQkJCUIyMjI3N0REMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBRWxlbWVu
dC5jcHAgKi8sCisJCQkJQjIyMjc3REUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FFbGVtZW50Lmgg
Ki8sCisJCQkJQjIyMjc3REYwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FFbGVtZW50LmlkbCAqLywK
KwkJCQkyNEQ5MTJBRDEzQ0E5QTFGMDBEMjE5MTUgLyogU1ZHQWx0R2x5cGhEZWZFbGVtZW50LmNw
cCAqLywKKwkJCQkyNEQ5MTJBRTEzQ0E5QTFGMDBEMjE5MTUgLyogU1ZHQWx0R2x5cGhEZWZFbGVt
ZW50LmggKi8sCisJCQkJMjREOTEyQUYxM0NBOUExRjAwRDIxOTE1IC8qIFNWR0FsdEdseXBoRGVm
RWxlbWVudC5pZGwgKi8sCisJCQkJNjU2NTNGMkEwRDk3MjdEMjAwQ0E5NzIzIC8qIFNWR0FsdEds
eXBoRWxlbWVudC5jcHAgKi8sCisJCQkJNjU2NTNGMkIwRDk3MjdEMjAwQ0E5NzIzIC8qIFNWR0Fs
dEdseXBoRWxlbWVudC5oICovLAorCQkJCTY1NjUzRjJDMEQ5NzI3RDIwMENBOTcyMyAvKiBTVkdB
bHRHbHlwaEVsZW1lbnQuaWRsICovLAorCQkJCTI0RDkxMkI0MTNDQTlBNjkwMEQyMTkxNSAvKiBT
VkdBbHRHbHlwaEl0ZW1FbGVtZW50LmNwcCAqLywKKwkJCQkyNEQ5MTJCNTEzQ0E5QTY5MDBEMjE5
MTUgLyogU1ZHQWx0R2x5cGhJdGVtRWxlbWVudC5oICovLAorCQkJCTI0RDkxMkI2MTNDQTlBNjkw
MEQyMTkxNSAvKiBTVkdBbHRHbHlwaEl0ZW1FbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzdFMTBE
MDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5nbGUuaCAqLywKKwkJCQlCMjIyNzdFMjBEMDBCRjFGMDA3
MUI3ODIgLyogU1ZHQW5nbGUuaWRsICovLAorCQkJCTdDOEYyMjQyMUREM0IzQjkwMEU5MkRBMyAv
KiBTVkdBbmdsZVZhbHVlLmNwcCAqLywKKwkJCQk3QzhGMjI0MzFERDNCM0I5MDBFOTJEQTMgLyog
U1ZHQW5nbGVWYWx1ZS5oICovLAorCQkJCUIyMjI3N0UzMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdB
bmltYXRlQ29sb3JFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzdFNDBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHQW5pbWF0ZUNvbG9yRWxlbWVudC5oICovLAorCQkJCUIyMjI3N0U1MEQwMEJGMUYwMDcx
Qjc4MiAvKiBTVkdBbmltYXRlQ29sb3JFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzdFNjBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZWRBbmdsZS5pZGwgKi8sCisJCQkJQjIyMjc3RTcwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVkQm9vbGVhbi5pZGwgKi8sCisJCQkJQjIyMjc3RTgw
RDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVkRW51bWVyYXRpb24uaWRsICovLAorCQkJCUIy
MjI3N0U5MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlZEludGVnZXIuaWRsICovLAorCQkJ
CUIyMjI3N0VBMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlZExlbmd0aC5pZGwgKi8sCisJ
CQkJQjIyMjc3RUIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVkTGVuZ3RoTGlzdC5pZGwg
Ki8sCisJCQkJQjIyMjc3RUMwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVkTnVtYmVyLmlk
bCAqLywKKwkJCQlCMjIyNzdFRDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZWROdW1iZXJM
aXN0LmlkbCAqLywKKwkJCQlCMjIyNzdGNDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZWRQ
cmVzZXJ2ZUFzcGVjdFJhdGlvLmlkbCAqLywKKwkJCQlCMjIyNzdGNTBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHQW5pbWF0ZWRSZWN0LmlkbCAqLywKKwkJCQlCMjIyNzdGNjBEMDBCRjFGMDA3MUI3ODIg
LyogU1ZHQW5pbWF0ZWRTdHJpbmcuaWRsICovLAorCQkJCUIyMjI3N0Y4MEQwMEJGMUYwMDcxQjc4
MiAvKiBTVkdBbmltYXRlZFRyYW5zZm9ybUxpc3QuaWRsICovLAorCQkJCUIyMjI3N0Y5MEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdBbmltYXRlRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc3RkEwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVFbGVtZW50LmggKi8sCisJCQkJQjIyMjc3RkIwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVFbGVtZW50LmlkbCAqLywKKwkJCQk4MzJCODQzNTE5
RDhFNTc0MDBCMjYwNTUgLyogU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcCAqLywKKwkJCQk4MzJC
ODQzMzE5RDhFNTUxMDBCMjYwNTUgLyogU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmggKi8sCisJCQkJ
QjIyMjc3RkMwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVNb3Rpb25FbGVtZW50LmNwcCAq
LywKKwkJCQlCMjIyNzdGRDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZU1vdGlvbkVsZW1l
bnQuaCAqLywKKwkJCQk0NEQ4REE5QTEzOTU0NUNEMDAzMzdCNzUgLyogU1ZHQW5pbWF0ZU1vdGlv
bkVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3N0ZFMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdBbmlt
YXRlVHJhbnNmb3JtRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc3RkYwRDAwQkYxRjAwNzFCNzgy
IC8qIFNWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmggKi8sCisJCQkJQjIyMjc4MDAwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmlkbCAqLywKKwkJCQlCMjIy
NzgwMTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAgKi8sCisJCQkJ
QjIyMjc4MDIwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0FuaW1hdGlvbkVsZW1lbnQuaCAqLywKKwkJ
CQlCMjIyNzgwMzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQW5pbWF0aW9uRWxlbWVudC5pZGwgKi8s
CisJCQkJQjIyMjc4MDQwRDAwQkYxRjAwNzFCNzgyIC8qIHN2Z2F0dHJzLmluICovLAorCQkJCUIy
MjI3ODA1MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDaXJjbGVFbGVtZW50LmNwcCAqLywKKwkJCQlC
MjIyNzgwNjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ2lyY2xlRWxlbWVudC5oICovLAorCQkJCUIy
MjI3ODA3MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDaXJjbGVFbGVtZW50LmlkbCAqLywKKwkJCQlC
MjIyNzgwODBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ2xpcFBhdGhFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMjIyNzgwOTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ2xpcFBhdGhFbGVtZW50LmggKi8sCisJ
CQkJQjIyMjc4MEEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NsaXBQYXRoRWxlbWVudC5pZGwgKi8s
CisJCQkJQjIyMjc4MEUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0NvbXBvbmVudFRyYW5zZmVyRnVu
Y3Rpb25FbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzgwRjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZH
Q29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzgxMDBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuaWRsICov
LAorCQkJCUIyMjI3ODExMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDdXJzb3JFbGVtZW50LmNwcCAq
LywKKwkJCQlCMjIyNzgxMjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHQ3Vyc29yRWxlbWVudC5oICov
LAorCQkJCUIyMjI3ODEzMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdDdXJzb3JFbGVtZW50LmlkbCAq
LywKKwkJCQlCMjIyNzgxNzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRGVmc0VsZW1lbnQuY3BwICov
LAorCQkJCUIyMjI3ODE4MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdEZWZzRWxlbWVudC5oICovLAor
CQkJCUIyMjI3ODE5MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdEZWZzRWxlbWVudC5pZGwgKi8sCisJ
CQkJQjIyMjc4MUEwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0Rlc2NFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMjIyNzgxQjBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRGVzY0VsZW1lbnQuaCAqLywKKwkJCQlC
MjIyNzgxQzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRGVzY0VsZW1lbnQuaWRsICovLAorCQkJCUIy
MjI3ODFEMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdEb2N1bWVudC5jcHAgKi8sCisJCQkJQjIyMjc4
MUUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0RvY3VtZW50LmggKi8sCisJCQkJQjI4QzZBMUUwRDAw
QzQ0ODAwMzM0QUE0IC8qIFNWR0RvY3VtZW50RXh0ZW5zaW9ucy5jcHAgKi8sCisJCQkJQjI4QzZB
MUYwRDAwQzQ0ODAwMzM0QUE0IC8qIFNWR0RvY3VtZW50RXh0ZW5zaW9ucy5oICovLAorCQkJCUIy
MjI3ODIwMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzgy
MTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRWxlbWVudC5oICovLAorCQkJCUIyMjI3ODIyMEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdFbGVtZW50LmlkbCAqLywKKwkJCQkwODFBQThEOTExMTEyMzdFMDAy
QUIwNkUgLyogU1ZHRWxlbWVudFJhcmVEYXRhLmggKi8sCisJCQkJQjIyMjc4MjkwRDAwQkYxRjAw
NzFCNzgyIC8qIFNWR0VsbGlwc2VFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzgyQTBEMDBCRjFG
MDA3MUI3ODIgLyogU1ZHRWxsaXBzZUVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzgyQjBEMDBCRjFG
MDA3MUI3ODIgLyogU1ZHRWxsaXBzZUVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODMxMEQwMEJG
MUYwMDcxQjc4MiAvKiBTVkdGRUJsZW5kRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4MzIwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0ZFQmxlbmRFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4MzMwRDAw
QkYxRjAwNzFCNzgyIC8qIFNWR0ZFQmxlbmRFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzgzNDBE
MDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQuY3BwICovLAorCQkJCUIy
MjI3ODM1MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbG9yTWF0cml4RWxlbWVudC5oICovLAor
CQkJCUIyMjI3ODM2MEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbG9yTWF0cml4RWxlbWVudC5p
ZGwgKi8sCisJCQkJQjIyMjc4MzcwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9uZW50VHJh
bnNmZXJFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzgzODBEMDBCRjFGMDA3MUI3ODIgLyogU1ZH
RkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzgzOTBEMDBCRjFGMDA3
MUI3ODIgLyogU1ZHRkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3
ODNBMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbXBvc2l0ZUVsZW1lbnQuY3BwICovLAorCQkJ
CUIyMjI3ODNCMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUNvbXBvc2l0ZUVsZW1lbnQuaCAqLywK
KwkJCQlCMjIyNzgzQzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVDb21wb3NpdGVFbGVtZW50Lmlk
bCAqLywKKwkJCQkxOTIxMzI3MTExQzBFNkJCMDA0NTYyMzggLyogU1ZHRkVDb252b2x2ZU1hdHJp
eEVsZW1lbnQuY3BwICovLAorCQkJCTE5MjEzMjcyMTFDMEU2QkIwMDQ1NjIzOCAvKiBTVkdGRUNv
bnZvbHZlTWF0cml4RWxlbWVudC5oICovLAorCQkJCTE5MjEzMjczMTFDMEU2QkIwMDQ1NjIzOCAv
KiBTVkdGRUNvbnZvbHZlTWF0cml4RWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4M0QwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC5jcHAgKi8sCisJCQkJQjIy
Mjc4M0UwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC5oICov
LAorCQkJCUIyMjI3ODNGMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpZmZ1c2VMaWdodGluZ0Vs
ZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODQwMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRURpc3Bs
YWNlbWVudE1hcEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODQxMEQwMEJGMUYwMDcxQjc4MiAv
KiBTVkdGRURpc3BsYWNlbWVudE1hcEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg0MjBEMDBCRjFG
MDA3MUI3ODIgLyogU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIy
Nzg0MzBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50LmNwcCAqLywK
KwkJCQlCMjIyNzg0NDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVEaXN0YW50TGlnaHRFbGVtZW50
LmggKi8sCisJCQkJQjIyMjc4NDUwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRGlzdGFudExpZ2h0
RWxlbWVudC5pZGwgKi8sCisJCQkJNDM1OEU4ODIxMzYwQTMzQjAwRTQ3NDhDIC8qIFNWR0ZFRHJv
cFNoYWRvd0VsZW1lbnQuY3BwICovLAorCQkJCTQzNThFODgzMTM2MEEzM0IwMEU0NzQ4QyAvKiBT
VkdGRURyb3BTaGFkb3dFbGVtZW50LmggKi8sCisJCQkJNDM1OEU4ODQxMzYwQTMzQjAwRTQ3NDhD
IC8qIFNWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODQ2MEQwMEJGMUYw
MDcxQjc4MiAvKiBTVkdGRUZsb29kRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4NDcwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0ZFRmxvb2RFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4NDgwRDAwQkYx
RjAwNzFCNzgyIC8qIFNWR0ZFRmxvb2RFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg0OTBEMDBC
RjFGMDA3MUI3ODIgLyogU1ZHRkVGdW5jQUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODRBMEQw
MEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNBRWxlbWVudC5oICovLAorCQkJCUIyMjI3ODRCMEQw
MEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNBRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4NEMw
RDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRnVuY0JFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzg0
RDBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVGdW5jQkVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg0
RTBEMDBCRjFGMDA3MUI3ODIgLyogU1ZHRkVGdW5jQkVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3
ODRGMEQwMEJGMUYwMDcxQjc4MiAvKiBTVkdGRUZ1bmNHRWxlbWVudC5jcHAgKi8sCisJCQkJQjIy
Mjc4NTAwRDAwQkYxRjAwNzFCNzgyIC8qIFNWR0ZFRnVuY0dFbGVtZW50LmggKi8sCisJCQkJQjIy
Mjc4NTEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFRnVuY0dFbGVtZW50LmlkbCAqLywKKwkJCQlC
MjIyNzg1MjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVGdW5jUkVsZW1lbnQuY3BwICovLAorCQkJ
CUIyMjI3ODUzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRUZ1bmNSRWxlbWVudC5oICovLAorCQkJ
CUIyMjI3ODU0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRUZ1bmNSRWxlbWVudC5pZGwgKi8sCisJ
CQkJQjIyMjc4NTUwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFR2F1c3NpYW5CbHVyRWxlbWVudC5j
cHAgKi8sCisJCQkJQjIyMjc4NTYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFR2F1c3NpYW5CbHVy
RWxlbWVudC5oICovLAorCQkJCUIyMjI3ODU3MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRUdhdXNz
aWFuQmx1ckVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODU4MEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGRUltYWdlRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4NTkwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR0ZFSW1hZ2VFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4NUEwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR0ZFSW1hZ2VFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg1QjBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHRkVMaWdodEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODVDMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdGRUxpZ2h0RWxlbWVudC5oICovLAorCQkJCUIyMjI3ODVEMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdGRU1lcmdlRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4NUUwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR0ZFTWVyZ2VFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4NUYwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR0ZFTWVyZ2VFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg2MDBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzg2MTBEMDBC
RjIwMDA3MUI3ODIgLyogU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4NjIw
RDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFTWVyZ2VOb2RlRWxlbWVudC5pZGwgKi8sCisJCQkJODQy
MjQxOTAxMDdFNzhBNzAwNzY2QTg3IC8qIFNWR0ZFTW9ycGhvbG9neUVsZW1lbnQuY3BwICovLAor
CQkJCTg0MjI0MTkxMTA3RTc4QTcwMDc2NkE4NyAvKiBTVkdGRU1vcnBob2xvZ3lFbGVtZW50Lmgg
Ki8sCisJCQkJODQyMjQxOTIxMDdFNzhBNzAwNzY2QTg3IC8qIFNWR0ZFTW9ycGhvbG9neUVsZW1l
bnQuaWRsICovLAorCQkJCUIyMjI3ODYzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRU9mZnNldEVs
ZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODY0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRU9mZnNl
dEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg2NTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVPZmZz
ZXRFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg2NjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRkVQ
b2ludExpZ2h0RWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4NjcwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR0ZFUG9pbnRMaWdodEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg2ODBEMDBCRjIwMDA3MUI3
ODIgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4NjkwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZFU3BlY3VsYXJMaWdodGluZ0VsZW1lbnQuY3BwICovLAorCQkJCUIy
MjI3ODZBMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50Lmgg
Ki8sCisJCQkJQjIyMjc4NkIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFU3BlY3VsYXJMaWdodGlu
Z0VsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODZDMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGRVNw
b3RMaWdodEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODZEMEQwMEJGMjAwMDcxQjc4MiAvKiBT
VkdGRVNwb3RMaWdodEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg2RTBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHRkVTcG90TGlnaHRFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg2RjBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHRkVUaWxlRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4NzAwRDAwQkYyMDAw
NzFCNzgyIC8qIFNWR0ZFVGlsZUVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzg3MTBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHRkVUaWxlRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4NzIwRDAwQkYyMDAw
NzFCNzgyIC8qIFNWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODczMEQw
MEJGMjAwMDcxQjc4MiAvKiBTVkdGRVR1cmJ1bGVuY2VFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4
NzQwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuaWRsICovLAorCQkJ
CUIyMjI3ODc1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGaWx0ZXJFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMjIyNzg3NjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRmlsdGVyRWxlbWVudC5oICovLAorCQkJ
CUIyMjI3ODc3MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGaWx0ZXJFbGVtZW50LmlkbCAqLywKKwkJ
CQlCMjIyNzg3ODBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRB
dHRyaWJ1dGVzLmNwcCAqLywKKwkJCQlCMjIyNzg3OTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRmls
dGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmggKi8sCisJCQkJQjIyMjc4N0EwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5pZGwgKi8s
CisJCQkJQjIyMjc4N0IwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpdFRvVmlld0JveC5jcHAgKi8s
CisJCQkJQjIyMjc4N0MwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZpdFRvVmlld0JveC5oICovLAor
CQkJCUIyMjI3ODdEMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGaXRUb1ZpZXdCb3guaWRsICovLAor
CQkJCUIyQTFGMkExMENFRjBBQkYwMDQ0MkY2QSAvKiBTVkdGb250RWxlbWVudC5jcHAgKi8sCisJ
CQkJQjJBMUYyQTIwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0ZvbnRFbGVtZW50LmggKi8sCisJCQkJ
QjJBMUYyQTMwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0ZvbnRFbGVtZW50LmlkbCAqLywKKwkJCQlC
MjIyNzg3RTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMjIyNzg3RjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VFbGVtZW50LmggKi8sCisJ
CQkJQjIyMjc4ODAwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlRWxlbWVudC5pZGwgKi8s
CisJCQkJQjIyMjc4ODEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlRm9ybWF0RWxlbWVu
dC5jcHAgKi8sCisJCQkJQjIyMjc4ODIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlRm9y
bWF0RWxlbWVudC5oICovLAorCQkJCUIyMjI3ODgzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGb250
RmFjZUZvcm1hdEVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODg0MEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdGb250RmFjZU5hbWVFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzg4NTBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHRm9udEZhY2VOYW1lRWxlbWVudC5oICovLAorCQkJCUIyMjI3ODg2MEQwMEJG
MjAwMDcxQjc4MiAvKiBTVkdGb250RmFjZU5hbWVFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg4
NzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VTcmNFbGVtZW50LmNwcCAqLywKKwkJCQlC
MjIyNzg4ODBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VTcmNFbGVtZW50LmggKi8sCisJ
CQkJQjIyMjc4ODkwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlU3JjRWxlbWVudC5pZGwg
Ki8sCisJCQkJQjIyMjc4OEEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlVXJpRWxlbWVu
dC5jcHAgKi8sCisJCQkJQjIyMjc4OEIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlVXJp
RWxlbWVudC5oICovLAorCQkJCUIyMjI3ODhDMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdGb250RmFj
ZVVyaUVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3ODhEMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdG
b3JlaWduT2JqZWN0RWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4OEUwRDAwQkYyMDAwNzFCNzgy
IC8qIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4OEYwRDAwQkYyMDAw
NzFCNzgyIC8qIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzg5MDBE
MDBCRjIwMDA3MUI3ODIgLyogU1ZHR0VsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3ODkxMEQwMEJG
MjAwMDcxQjc4MiAvKiBTVkdHRWxlbWVudC5oICovLAorCQkJCUIyMjI3ODkyMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdHRWxlbWVudC5pZGwgKi8sCisJCQkJRkIyNzNFN0UyMDg2RTZBMzAwQTU0RTg3
IC8qIFNWR0dlb21ldHJ5RWxlbWVudC5jcHAgKi8sCisJCQkJRkIyNzNFN0YyMDg2RTZBMzAwQTU0
RTg3IC8qIFNWR0dlb21ldHJ5RWxlbWVudC5oICovLAorCQkJCUZCMjczRTgwMjA4NkU2QTMwMEE1
NEU4NyAvKiBTVkdHZW9tZXRyeUVsZW1lbnQuaWRsICovLAorCQkJCUIyQTFGMkE0MENFRjBBQkYw
MDQ0MkY2QSAvKiBTVkdHbHlwaEVsZW1lbnQuY3BwICovLAorCQkJCUIyQTFGMkE1MENFRjBBQkYw
MDQ0MkY2QSAvKiBTVkdHbHlwaEVsZW1lbnQuaCAqLywKKwkJCQlCMkExRjJBNjBDRUYwQUJGMDA0
NDJGNkEgLyogU1ZHR2x5cGhFbGVtZW50LmlkbCAqLywKKwkJCQkyNEQ5MTJCQTEzQ0E5QTk3MDBE
MjE5MTUgLyogU1ZHR2x5cGhSZWZFbGVtZW50LmNwcCAqLywKKwkJCQkyNEQ5MTJCQjEzQ0E5QTk3
MDBEMjE5MTUgLyogU1ZHR2x5cGhSZWZFbGVtZW50LmggKi8sCisJCQkJMjREOTEyQkMxM0NBOUE5
NzAwRDIxOTE1IC8qIFNWR0dseXBoUmVmRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4OTMwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0dyYWRpZW50RWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4OTQw
RDAwQkYyMDAwNzFCNzgyIC8qIFNWR0dyYWRpZW50RWxlbWVudC5oICovLAorCQkJCUIyMjI3ODk1
MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdHcmFkaWVudEVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3
OTFGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdHcmFwaGljc0VsZW1lbnQuY3BwICovLAorCQkJCUIy
MjI3OTIwMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdHcmFwaGljc0VsZW1lbnQuaCAqLywKKwkJCQk5
MzQzMDU5NjFEQjlGQTBFMDBFNzEyQTcgLyogU1ZHR3JhcGhpY3NFbGVtZW50LmlkbCAqLywKKwkJ
CQk2NTBGQkYyNzBEOUFGMDQ2MDA4RkMyOTIgLyogU1ZHSEtlcm5FbGVtZW50LmNwcCAqLywKKwkJ
CQk2NTBGQkYyODBEOUFGMDQ3MDA4RkMyOTIgLyogU1ZHSEtlcm5FbGVtZW50LmggKi8sCisJCQkJ
NjUwRkJGMjkwRDlBRjA0NzAwOEZDMjkyIC8qIFNWR0hLZXJuRWxlbWVudC5pZGwgKi8sCisJCQkJ
QjIyMjc4OTYwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ltYWdlRWxlbWVudC5jcHAgKi8sCisJCQkJ
QjIyMjc4OTcwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR0ltYWdlRWxlbWVudC5oICovLAorCQkJCUIy
MjI3ODk4MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdJbWFnZUVsZW1lbnQuaWRsICovLAorCQkJCUIy
OEM2QTIwMEQwMEM0NDgwMDMzNEFBNCAvKiBTVkdJbWFnZUxvYWRlci5jcHAgKi8sCisJCQkJQjI4
QzZBMjEwRDAwQzQ0ODAwMzM0QUE0IC8qIFNWR0ltYWdlTG9hZGVyLmggKi8sCisJCQkJN0NFNThE
NTExREQ3QjA5MzAwMTI4NTUyIC8qIFNWR0xlbmd0aC5oICovLAorCQkJCUIyMjI3ODlFMEQwMEJG
MjAwMDcxQjc4MiAvKiBTVkdMZW5ndGguaWRsICovLAorCQkJCTcxMzQ0OTZCMTQ2OTQxQjMwMDcy
MDMxMiAvKiBTVkdMZW5ndGhDb250ZXh0LmNwcCAqLywKKwkJCQk3MTM0NDk2QzE0Njk0MUIzMDA3
MjAzMTIgLyogU1ZHTGVuZ3RoQ29udGV4dC5oICovLAorCQkJCTdDRDcwQzNEMjRBMjhBM0EwMEU2
MTA0MCAvKiBTVkdMZW5ndGhMaXN0LmNwcCAqLywKKwkJCQlCMjIyNzhBMDBEMDBCRjIwMDA3MUI3
ODIgLyogU1ZHTGVuZ3RoTGlzdC5oICovLAorCQkJCUIyMjI3OEExMEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdMZW5ndGhMaXN0LmlkbCAqLywKKwkJCQk3Q0U1OEQ1MjFERDdCMDkzMDAxMjg1NTIgLyog
U1ZHTGVuZ3RoVmFsdWUuY3BwICovLAorCQkJCTdDRTU4RDUzMUREN0IwOTMwMDEyODU1MiAvKiBT
VkdMZW5ndGhWYWx1ZS5oICovLAorCQkJCUIyMjI3OEEyMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdM
aW5lYXJHcmFkaWVudEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OEEzMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzhBNDBEMDBCRjIw
MDA3MUI3ODIgLyogU1ZHTGluZWFyR3JhZGllbnRFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzhB
NTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTGluZUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OEE2
MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdMaW5lRWxlbWVudC5oICovLAorCQkJCUIyMjI3OEE3MEQw
MEJGMjAwMDcxQjc4MiAvKiBTVkdMaW5lRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4QUEwRDAw
QkYyMDAwNzFCNzgyIC8qIFNWR0xvY2F0YWJsZS5jcHAgKi8sCisJCQkJQjIyMjc4QUIwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR0xvY2F0YWJsZS5oICovLAorCQkJCUIyMjI3OEFEMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdNYXJrZXJFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzhBRTBEMDBCRjIwMDA3
MUI3ODIgLyogU1ZHTWFya2VyRWxlbWVudC5oICovLAorCQkJCUIyMjI3OEFGMEQwMEJGMjAwMDcx
Qjc4MiAvKiBTVkdNYXJrZXJFbGVtZW50LmlkbCAqLywKKwkJCQk1NTEzN0IyQzIwMzc5RTU1MDAw
MTAwNEIgLyogU1ZHTWFya2VyVHlwZXMuaCAqLywKKwkJCQlCMjIyNzhCMDBEMDBCRjIwMDA3MUI3
ODIgLyogU1ZHTWFza0VsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OEIxMEQwMEJGMjAwMDcxQjc4
MiAvKiBTVkdNYXNrRWxlbWVudC5oICovLAorCQkJCUIyMjI3OEIyMEQwMEJGMjAwMDcxQjc4MiAv
KiBTVkdNYXNrRWxlbWVudC5pZGwgKi8sCisJCQkJMDgwNkU1NzkxMjg5MzA0NTAwN0NFRDMyIC8q
IFNWR01hdHJpeC5oICovLAorCQkJCUIyMjI3OEIzMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdNYXRy
aXguaWRsICovLAorCQkJCUIyMjI3OEI0MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdNZXRhZGF0YUVs
ZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OEI1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdNZXRhZGF0
YUVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzhCNjBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTWV0YWRh
dGFFbGVtZW50LmlkbCAqLywKKwkJCQlCMkExRjJBNzBDRUYwQUJGMDA0NDJGNkEgLyogU1ZHTWlz
c2luZ0dseXBoRWxlbWVudC5jcHAgKi8sCisJCQkJQjJBMUYyQTgwQ0VGMEFCRjAwNDQyRjZBIC8q
IFNWR01pc3NpbmdHbHlwaEVsZW1lbnQuaCAqLywKKwkJCQlCMkExRjJBOTBDRUYwQUJGMDA0NDJG
NkEgLyogU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc4QjcwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR01QYXRoRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4QjgwRDAwQkYy
MDAwNzFCNzgyIC8qIFNWR01QYXRoRWxlbWVudC5oICovLAorCQkJCTQ0RDhEQTk4MTM5NTQ1QkUw
MDMzN0I3NSAvKiBTVkdNUGF0aEVsZW1lbnQuaWRsICovLAorCQkJCTdDRTU4RDRGMURENjlBMUUw
MDEyODU1MiAvKiBTVkdOdW1iZXIuaCAqLywKKwkJCQlCMjIyNzhCOTBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHTnVtYmVyLmlkbCAqLywKKwkJCQk3Q0Q3MEM0MDI0QTI4QUM5MDBFNjEwNDAgLyogU1ZH
TnVtYmVyTGlzdC5jcHAgKi8sCisJCQkJQjIyMjc4QkIwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR051
bWJlckxpc3QuaCAqLywKKwkJCQlCMjIyNzhCQzBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHTnVtYmVy
TGlzdC5pZGwgKi8sCisJCQkJQjIyMjc4QzAwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhcnNlclV0
aWxpdGllcy5jcHAgKi8sCisJCQkJQjIyMjc4QzEwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhcnNl
clV0aWxpdGllcy5oICovLAorCQkJCTJEM0EwRTM1MTNBN0Q3NjEwMEU4NUFGMCAvKiBTVkdQYXJz
aW5nRXJyb3IuaCAqLywKKwkJCQk4NEM2Nzg0QTEyMTQ4MTQ3MDBBOTI5MDIgLyogU1ZHUGF0aEJs
ZW5kZXIuY3BwICovLAorCQkJCTg0QzY3ODRCMTIxNDgxNDcwMEE5MjkwMiAvKiBTVkdQYXRoQmxl
bmRlci5oICovLAorCQkJCTg0NzZDOUU3MTFERjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQnVpbGRl
ci5jcHAgKi8sCisJCQkJODQ3NkM5RTgxMURGNkEyOTAwNTU1QjAyIC8qIFNWR1BhdGhCdWlsZGVy
LmggKi8sCisJCQkJODQxOUQyQTQxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFt
LmggKi8sCisJCQkJODQxOUQyQTUxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFt
QnVpbGRlci5jcHAgKi8sCisJCQkJODQxOUQyQTYxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhC
eXRlU3RyZWFtQnVpbGRlci5oICovLAorCQkJCTg0MTlEMkFBMTIwRDkyRkMwMDE0MUY4RiAvKiBT
VkdQYXRoQnl0ZVN0cmVhbVNvdXJjZS5jcHAgKi8sCisJCQkJODQxOUQyQUIxMjBEOTJGQzAwMTQx
RjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFtU291cmNlLmggKi8sCisJCQkJODQ3NkM5RTkxMURGNkEy
OTAwNTU1QjAyIC8qIFNWR1BhdGhDb25zdW1lci5oICovLAorCQkJCUIyMjI3OEMyMEQwMEJGMjAw
MDcxQjc4MiAvKiBTVkdQYXRoRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc4QzMwRDAwQkYyMDAw
NzFCNzgyIC8qIFNWR1BhdGhFbGVtZW50LmggKi8sCisJCQkJQjIyMjc4QzQwRDAwQkYyMDAwNzFC
NzgyIC8qIFNWR1BhdGhFbGVtZW50LmlkbCAqLywKKwkJCQk4NDc2QzlFRDExREY2QTU4MDA1NTVC
MDIgLyogU1ZHUGF0aFBhcnNlci5jcHAgKi8sCisJCQkJODQ3NkM5RUUxMURGNkE1ODAwNTU1QjAy
IC8qIFNWR1BhdGhQYXJzZXIuaCAqLywKKwkJCQlCMjIyNzhDNTBEMDBCRjIwMDA3MUI3ODIgLyog
U1ZHUGF0aFNlZy5oICovLAorCQkJCUIyMjI3OEM2MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRo
U2VnLmlkbCAqLywKKwkJCQlCMjIyNzhDOTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0Fy
Y0Ficy5pZGwgKi8sCisJCQkJQjIyMjc4Q0EwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdB
cmNSZWwuaWRsICovLAorCQkJCUIyMjI3OENEMEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2Vn
Q2xvc2VQYXRoLmlkbCAqLywKKwkJCQlCMjIyNzhEMDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0
aFNlZ0N1cnZldG9DdWJpY0Ficy5pZGwgKi8sCisJCQkJQjIyMjc4RDEwRDAwQkYyMDAwNzFCNzgy
IC8qIFNWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNSZWwuaWRsICovLAorCQkJCUIyMjI3OEQ0MEQwMEJG
MjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoQWJzLmlkbCAqLywKKwkJ
CQlCMjIyNzhENTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0N1cnZldG9DdWJpY1Ntb290
aFJlbC5pZGwgKi8sCisJCQkJQjIyMjc4RDgwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdD
dXJ2ZXRvUXVhZHJhdGljQWJzLmlkbCAqLywKKwkJCQlCMjIyNzhEOTBEMDBCRjIwMDA3MUI3ODIg
LyogU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNSZWwuaWRsICovLAorCQkJCUIyMjI3OERDMEQw
MEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aEFicy5pZGwg
Ki8sCisJCQkJQjIyMjc4REQwRDAwQkYyMDAwNzFCNzgyIC8qIFNWR1BhdGhTZWdDdXJ2ZXRvUXVh
ZHJhdGljU21vb3RoUmVsLmlkbCAqLywKKwkJCQk3MkZCMjM5NjIyNEIwN0I5MDA3RTVBQzcgLyog
U1ZHUGF0aFNlZ0ltcGwuaCAqLywKKwkJCQlCMjIyNzhFMDBEMDBCRjIwMDA3MUI3ODIgLyogU1ZH
UGF0aFNlZ0xpbmV0b0Ficy5pZGwgKi8sCisJCQkJQjIyMjc4RTMwRDAwQkYyMDAwNzFCNzgyIC8q
IFNWR1BhdGhTZWdMaW5ldG9Ib3Jpem9udGFsQWJzLmlkbCAqLywKKwkJCQlCMjIyNzhFNDBEMDBC
RjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxSZWwuaWRsICovLAorCQkJ
CUIyMjI3OEU1MEQwMEJGMjAwMDcxQjc4MiAvKiBTVkdQYXRoU2VnTGluZXRvUmVsLmlkbCAqLywK
KwkJCQlCMjIyNzhFODBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2Fs
QWJzLmlkbCAqLywKKwkJCQlCMjIyNzhFOTBEMDBCRjIwMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ0xp
bmV0b1ZlcnRpY2FsUmVsLmlkbCAqLywKKwkJCQlCMjIyNzhFQjBEMDBCRjIwMDA3MUI3ODIgLyog
U1ZHUGF0aFNlZ0xpc3QuaCAqLywKKwkJCQlCMjIyNzhFQzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
UGF0aFNlZ0xpc3QuaWRsICovLAorCQkJCTg0NzZDOUUzMTFERjZBMEIwMDU1NUIwMiAvKiBTVkdQ
YXRoU2VnTGlzdEJ1aWxkZXIuY3BwICovLAorCQkJCTg0NzZDOUU0MTFERjZBMEIwMDU1NUIwMiAv
KiBTVkdQYXRoU2VnTGlzdEJ1aWxkZXIuaCAqLywKKwkJCQk4NEI2Qjk3NTEyMEYxM0U1MDBCOEVG
QUYgLyogU1ZHUGF0aFNlZ0xpc3RTb3VyY2UuY3BwICovLAorCQkJCTg0QjZCOTc2MTIwRjEzRTUw
MEI4RUZBRiAvKiBTVkdQYXRoU2VnTGlzdFNvdXJjZS5oICovLAorCQkJCUIyMjI3OEVGMEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdQYXRoU2VnTW92ZXRvQWJzLmlkbCAqLywKKwkJCQlCMjIyNzhGMDBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHUGF0aFNlZ01vdmV0b1JlbC5pZGwgKi8sCisJCQkJN0M4ODI0
QzQyNDlEN0IwNTAwRUQ4RkM0IC8qIFNWR1BhdGhTZWdWYWx1ZS5oICovLAorCQkJCTg0MzAwQkQ3
MTIwQzlBRDQwMDIxOTU0QSAvKiBTVkdQYXRoU291cmNlLmggKi8sCisJCQkJODQxOUQyQjcxMjBF
MEM3NjAwMTQxRjhGIC8qIFNWR1BhdGhTdHJpbmdCdWlsZGVyLmNwcCAqLywKKwkJCQk4NDE5RDJC
ODEyMEUwQzc2MDAxNDFGOEYgLyogU1ZHUGF0aFN0cmluZ0J1aWxkZXIuaCAqLywKKwkJCQk4NDMw
MEJEOTEyMEM5QUVEMDAyMTk1NEEgLyogU1ZHUGF0aFN0cmluZ1NvdXJjZS5jcHAgKi8sCisJCQkJ
ODQzMDBCRDUxMjBDOUFBQzAwMjE5NTRBIC8qIFNWR1BhdGhTdHJpbmdTb3VyY2UuaCAqLywKKwkJ
CQk4NEM1QjJGODEyMTZEQzgxMDA4OEI1M0EgLyogU1ZHUGF0aFRyYXZlcnNhbFN0YXRlQnVpbGRl
ci5jcHAgKi8sCisJCQkJODRDNUIyRjkxMjE2REM4MTAwODhCNTNBIC8qIFNWR1BhdGhUcmF2ZXJz
YWxTdGF0ZUJ1aWxkZXIuaCAqLywKKwkJCQk3MUE1N0RFRjE1NEJFMjVDMDAwOUQxMjAgLyogU1ZH
UGF0aFV0aWxpdGllcy5jcHAgKi8sCisJCQkJNzFBNTdERjAxNTRCRTI1QzAwMDlEMTIwIC8qIFNW
R1BhdGhVdGlsaXRpZXMuaCAqLywKKwkJCQlCMjIyNzhGMTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
UGF0dGVybkVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OEYyMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdQYXR0ZXJuRWxlbWVudC5oICovLAorCQkJCUIyMjI3OEYzMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdQYXR0ZXJuRWxlbWVudC5pZGwgKi8sCisJCQkJN0NFNThENDkxREQ2NEE1QjAwMTI4NTUyIC8q
IFNWR1BvaW50LmggKi8sCisJCQkJQjIyMjc4RjQwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvaW50
LmlkbCAqLywKKwkJCQk3Q0Q3MEM0MjI0QTI4QjcwMDBFNjEwNDAgLyogU1ZHUG9pbnRMaXN0LmNw
cCAqLywKKwkJCQlCMjIyNzhGNjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUG9pbnRMaXN0LmggKi8s
CisJCQkJQjIyMjc4RjcwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvaW50TGlzdC5pZGwgKi8sCisJ
CQkJQjIyMjc4RjgwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvbHlFbGVtZW50LmNwcCAqLywKKwkJ
CQlCMjIyNzhGOTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUG9seUVsZW1lbnQuaCAqLywKKwkJCQlC
MjIyNzhGQTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuY3BwICovLAorCQkJ
CUIyMjI3OEZCMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxlbWVudC5oICovLAorCQkJ
CUIyMjI3OEZDMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5Z29uRWxlbWVudC5pZGwgKi8sCisJ
CQkJQjIyMjc4RkQwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5jcHAgKi8s
CisJCQkJQjIyMjc4RkUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1BvbHlsaW5lRWxlbWVudC5oICov
LAorCQkJCUIyMjI3OEZGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuaWRs
ICovLAorCQkJCUIyMjI3OTAxMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJh
dGlvLmggKi8sCisJCQkJQjIyMjc5MDIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1ByZXNlcnZlQXNw
ZWN0UmF0aW8uaWRsICovLAorCQkJCTdDOEYyMjQ1MUREM0QxQzUwMEU5MkRBMyAvKiBTVkdQcmVz
ZXJ2ZUFzcGVjdFJhdGlvVmFsdWUuY3BwICovLAorCQkJCTdDOEYyMjQ2MUREM0QxQzUwMEU5MkRB
MyAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvVmFsdWUuaCAqLywKKwkJCQlCMjIyNzkwMzBEMDBC
RjIxMDA3MUI3ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIy
NzkwNDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmggKi8sCisJ
CQkJQjIyMjc5MDUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1JhZGlhbEdyYWRpZW50RWxlbWVudC5p
ZGwgKi8sCisJCQkJMDhFREUxOUUxMkE1MEI4RTAwQjk1Nzk3IC8qIFNWR1JlY3QuaCAqLywKKwkJ
CQlCMjIyNzkwNjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVjdC5pZGwgKi8sCisJCQkJQjIyMjc5
MDcwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzkw
ODBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzkwOTBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVjdEVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3OTBBMEQw
MEJGMjEwMDcxQjc4MiAvKiBTVkdSZW5kZXJpbmdJbnRlbnQuaCAqLywKKwkJCQlCMjIyNzkwQjBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHUmVuZGVyaW5nSW50ZW50LmlkbCAqLywKKwkJCQkwRkMyNzZC
QzI2REIxOTAwMDA5M0U4RUQgLyogU1ZHUmVzb3VyY2VFbGVtZW50Q2xpZW50LmggKi8sCisJCQkJ
QjIyMjc5MEMwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1NjcmlwdEVsZW1lbnQuY3BwICovLAorCQkJ
CUIyMjI3OTBEMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTY3JpcHRFbGVtZW50LmggKi8sCisJCQkJ
QjIyMjc5MEUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1NjcmlwdEVsZW1lbnQuaWRsICovLAorCQkJ
CUIyMjI3OTBGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTZXRFbGVtZW50LmNwcCAqLywKKwkJCQlC
MjIyNzkxMDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHU2V0RWxlbWVudC5oICovLAorCQkJCUIyMjI3
OTExMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTZXRFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzkx
MjBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHU3RvcEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTEz
MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdTdG9wRWxlbWVudC5oICovLAorCQkJCUIyMjI3OTE0MEQw
MEJGMjEwMDcxQjc4MiAvKiBTVkdTdG9wRWxlbWVudC5pZGwgKi8sCisJCQkJN0NENzBDNDMyNEEy
OEJFQzAwRTYxMDQwIC8qIFNWR1N0cmluZ0xpc3QuY3BwICovLAorCQkJCUIyMjI3OTE2MEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdTdHJpbmdMaXN0LmggKi8sCisJCQkJQjIyMjc5MTcwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1N0cmluZ0xpc3QuaWRsICovLAorCQkJCUIyMjI3OTIxMEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdTdHlsZUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTIyMEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdTdHlsZUVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzkyMzBEMDBCRjIxMDA3MUI3
ODIgLyogU1ZHU3R5bGVFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzkyNDBEMDBCRjIxMDA3MUI3
ODIgLyogU1ZHU1ZHRWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc5MjUwRDAwQkYyMTAwNzFCNzgy
IC8qIFNWR1NWR0VsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzkyNjBEMDBCRjIxMDA3MUI3ODIgLyog
U1ZHU1ZHRWxlbWVudC5pZGwgKi8sCisJCQkJQjIyMjc5MjcwRDAwQkYyMTAwNzFCNzgyIC8qIFNW
R1N3aXRjaEVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTI4MEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdTd2l0Y2hFbGVtZW50LmggKi8sCisJCQkJQjIyMjc5MjkwRDAwQkYyMTAwNzFCNzgyIC8qIFNW
R1N3aXRjaEVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3OTJBMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdTeW1ib2xFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIyNzkyQjBEMDBCRjIxMDA3MUI3ODIgLyog
U1ZHU3ltYm9sRWxlbWVudC5oICovLAorCQkJCUIyMjI3OTJDMEQwMEJGMjEwMDcxQjc4MiAvKiBT
VkdTeW1ib2xFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzkyRDBEMDBCRjIxMDA3MUI3ODIgLyog
c3ZndGFncy5pbiAqLywKKwkJCQlCMjIyNzkyRTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGVzdHMu
Y3BwICovLAorCQkJCUIyMjI3OTJGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXN0cy5oICovLAor
CQkJCUIyMjI3OTMwMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXN0cy5pZGwgKi8sCisJCQkJQjIy
Mjc5MzEwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRDb250ZW50RWxlbWVudC5jcHAgKi8sCisJ
CQkJQjIyMjc5MzIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRDb250ZW50RWxlbWVudC5oICov
LAorCQkJCUIyMjI3OTMzMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXh0Q29udGVudEVsZW1lbnQu
aWRsICovLAorCQkJCUIyMjI3OTM0MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUZXh0RWxlbWVudC5j
cHAgKi8sCisJCQkJQjIyMjc5MzUwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRFbGVtZW50Lmgg
Ki8sCisJCQkJQjIyMjc5MzYwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRFbGVtZW50LmlkbCAq
LywKKwkJCQlCMjIyNzkzNzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dFBhdGhFbGVtZW50LmNw
cCAqLywKKwkJCQlCMjIyNzkzODBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVGV4dFBhdGhFbGVtZW50
LmggKi8sCisJCQkJQjIyMjc5MzkwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRQYXRoRWxlbWVu
dC5pZGwgKi8sCisJCQkJQjIyMjc5M0EwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RleHRQb3NpdGlv
bmluZ0VsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTNCMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdU
ZXh0UG9zaXRpb25pbmdFbGVtZW50LmggKi8sCisJCQkJQjIyMjc5M0MwRDAwQkYyMTAwNzFCNzgy
IC8qIFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3OTNEMEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdUaXRsZUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTNFMEQwMEJG
MjEwMDcxQjc4MiAvKiBTVkdUaXRsZUVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzkzRjBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVGl0bGVFbGVtZW50LmlkbCAqLywKKwkJCQkxQ0NERjVCQjE5OTAzMzI0
MDBCQ0VCQUQgLyogU1ZHVG9PVEZGb250Q29udmVyc2lvbi5jcHAgKi8sCisJCQkJMUNDREY1QkMx
OTkwMzMyNDAwQkNFQkFEIC8qIFNWR1RvT1RGRm9udENvbnZlcnNpb24uaCAqLywKKwkJCQlCMjIy
Nzk0MTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtLmggKi8sCisJCQkJQjIyMjc5NDIw
RDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybS5pZGwgKi8sCisJCQkJQjIyMjc5NDMwRDAw
QkYyMTAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybWFibGUuY3BwICovLAorCQkJCUIyMjI3OTQ0MEQw
MEJGMjEwMDcxQjc4MiAvKiBTVkdUcmFuc2Zvcm1hYmxlLmggKi8sCisJCQkJQjIyMjc5NDYwRDAw
QkYyMTAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybURpc3RhbmNlLmNwcCAqLywKKwkJCQlCMjIyNzk0
NzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtRGlzdGFuY2UuaCAqLywKKwkJCQk3Q0Q3
MEM0NjI0QTI4Q0Q3MDBFNjEwNDAgLyogU1ZHVHJhbnNmb3JtTGlzdC5jcHAgKi8sCisJCQkJQjIy
Mjc5NDkwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybUxpc3QuaCAqLywKKwkJCQlCMjIy
Nzk0QTBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVHJhbnNmb3JtTGlzdC5pZGwgKi8sCisJCQkJN0NF
NThENTYxREQ3RDk2RDAwMTI4NTUyIC8qIFNWR1RyYW5zZm9ybVZhbHVlLmggKi8sCisJCQkJQjIy
Mjc5NEIwRDAwQkYyMTAwNzFCNzgyIC8qIFNWR1RSZWZFbGVtZW50LmNwcCAqLywKKwkJCQlCMjIy
Nzk0QzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVFJlZkVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzk0
RDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHVFJlZkVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3OTRF
MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUU3BhbkVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTRG
MEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdUU3BhbkVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzk1MDBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHVFNwYW5FbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzk1MTBE
MDBCRjIxMDA3MUI3ODIgLyogU1ZHVW5pdFR5cGVzLmggKi8sCisJCQkJQjIyMjc5NTIwRDAwQkYy
MTAwNzFCNzgyIC8qIFNWR1VuaXRUeXBlcy5pZGwgKi8sCisJCQkJMEYyNkE3QUQyMDU2MjYxMDAw
OTBBMTQxIC8qIFNWR1Vua25vd25FbGVtZW50LmNwcCAqLywKKwkJCQkzN0M3MzhFQzFFREJENUI3
MDAzRjJCMEIgLyogU1ZHVW5rbm93bkVsZW1lbnQuaCAqLywKKwkJCQlCMjIyNzk1MzBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVVJJUmVmZXJlbmNlLmNwcCAqLywKKwkJCQlCMjIyNzk1NDBEMDBCRjIx
MDA3MUI3ODIgLyogU1ZHVVJJUmVmZXJlbmNlLmggKi8sCisJCQkJQjIyMjc5NTUwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1VSSVJlZmVyZW5jZS5pZGwgKi8sCisJCQkJQjIyMjc5NTYwRDAwQkYyMTAw
NzFCNzgyIC8qIFNWR1VzZUVsZW1lbnQuY3BwICovLAorCQkJCUIyMjI3OTU3MEQwMEJGMjEwMDcx
Qjc4MiAvKiBTVkdVc2VFbGVtZW50LmggKi8sCisJCQkJQjIyMjc5NTgwRDAwQkYyMTAwNzFCNzgy
IC8qIFNWR1VzZUVsZW1lbnQuaWRsICovLAorCQkJCUIyMjI3OTU5MEQwMEJGMjEwMDcxQjc4MiAv
KiBTVkdWaWV3RWxlbWVudC5jcHAgKi8sCisJCQkJQjIyMjc5NUEwRDAwQkYyMTAwNzFCNzgyIC8q
IFNWR1ZpZXdFbGVtZW50LmggKi8sCisJCQkJQjIyMjc5NUIwRDAwQkYyMTAwNzFCNzgyIC8qIFNW
R1ZpZXdFbGVtZW50LmlkbCAqLywKKwkJCQlCMjIyNzk1QzBEMDBCRjIxMDA3MUI3ODIgLyogU1ZH
Vmlld1NwZWMuY3BwICovLAorCQkJCUIyMjI3OTVEMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdWaWV3
U3BlYy5oICovLAorCQkJCUIyMjI3OTVFMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdWaWV3U3BlYy5p
ZGwgKi8sCisJCQkJODQ4NTIyODcxMTkwMTczQzAwNkVEQzdGIC8qIFNWR1ZLZXJuRWxlbWVudC5j
cHAgKi8sCisJCQkJODQ4NTIyODgxMTkwMTczQzAwNkVEQzdGIC8qIFNWR1ZLZXJuRWxlbWVudC5o
ICovLAorCQkJCTg0ODUyMjg5MTE5MDE3M0MwMDZFREM3RiAvKiBTVkdWS2VybkVsZW1lbnQuaWRs
ICovLAorCQkJCUIyMjI3OTVGMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdab29tQW5kUGFuLmNwcCAq
LywKKwkJCQlCMjIyNzk2MDBEMDBCRjIxMDA3MUI3ODIgLyogU1ZHWm9vbUFuZFBhbi5oICovLAor
CQkJCUIyMjI3OTYxMEQwMEJGMjEwMDcxQjc4MiAvKiBTVkdab29tQW5kUGFuLmlkbCAqLywKKwkJ
CQk1NUZBN0ZGQTIxMTBFQ0Q3MDA1QUVGRTcgLyogU1ZHWm9vbUFuZFBhblR5cGUuaCAqLywKKwkJ
CQlCMkU0RUM5NDBEMDBDMjJCMDA0MzI2NDMgLyogU1ZHWm9vbUV2ZW50LmNwcCAqLywKKwkJCQlC
MkU0RUM5NTBEMDBDMjJCMDA0MzI2NDMgLyogU1ZHWm9vbUV2ZW50LmggKi8sCisJCQkJQjJFNEVD
OTYwRDAwQzIyQjAwNDMyNjQzIC8qIFNWR1pvb21FdmVudC5pZGwgKi8sCisJCQkJQjI4QzZBMjYw
RDAwQzQ0ODAwMzM0QUE0IC8qIHhsaW5rYXR0cnMuaW4gKi8sCisJCQkpOworCQkJcGF0aCA9IHN2
ZzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUIyNTU5ODg2MEQwMEQ4Qjgw
MEJCODI1QyAvKiBncmFwaGljcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRy
ZW4gPSAoCisJCQkJQjI1NTk4OUMwRDAwRDhCODAwQkI4MjVDIC8qIGZpbHRlcnMgKi8sCisJCQkJ
QjI1NTk5MEIwRDAwRDhCOTAwQkI4MjVDIC8qIFNWR0ltYWdlLmNwcCAqLywKKwkJCQlCMjU1OTkw
QzBEMDBEOEI5MDBCQjgyNUMgLyogU1ZHSW1hZ2UuaCAqLywKKwkJCQkwOEY4NTlEMjE0NjNGOUNE
MDA2N0Q5MzMgLyogU1ZHSW1hZ2VDYWNoZS5jcHAgKi8sCisJCQkJMDhGODU5RDMxNDYzRjlDRDAw
NjdEOTMzIC8qIFNWR0ltYWdlQ2FjaGUuaCAqLywKKwkJCQk1NUQ0MDhGNzFBN0M2MzE4MDBDNzg0
NTAgLyogU1ZHSW1hZ2VDbGllbnRzLmggKi8sCisJCQkJMDhGODU5RDIxNDYzRjlDRDAwNjdEOTM0
IC8qIFNWR0ltYWdlRm9yQ29udGFpbmVyLmNwcCAqLywKKwkJCQkwOEY4NTlEMzE0NjNGOUNEMDA2
N0Q5MzQgLyogU1ZHSW1hZ2VGb3JDb250YWluZXIuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gZ3Jh
cGhpY3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlCMjU1OTg5QzBEMDBE
OEI4MDBCQjgyNUMgLyogZmlsdGVycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJQjI1NTk4RUEwRDAwRDhCOTAwQkI4MjVDIC8qIFNWR0ZFSW1hZ2UuY3Bw
ICovLAorCQkJCUIyNTU5OEVCMEQwMEQ4QjkwMEJCODI1QyAvKiBTVkdGRUltYWdlLmggKi8sCisJ
CQkJODQ1RTcyRjkwRkQyNjIzOTAwQTg3RDc5IC8qIFNWR0ZpbHRlci5jcHAgKi8sCisJCQkJODQ1
RTcyRkEwRkQyNjIzOTAwQTg3RDc5IC8qIFNWR0ZpbHRlci5oICovLAorCQkJCTA4MUVCRjM4MEZE
MzRGNDEwMERBNzU1OSAvKiBTVkdGaWx0ZXJCdWlsZGVyLmNwcCAqLywKKwkJCQkwODFFQkYzOTBG
RDM0RjQxMDBEQTc1NTkgLyogU1ZHRmlsdGVyQnVpbGRlci5oICovLAorCQkJKTsKKwkJCXBhdGgg
PSBmaWx0ZXJzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQjI3NTM1Mjkw
QjA1MzgxNDAwMkNFNjRGIC8qIGNnICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGls
ZHJlbiA9ICgKKwkJCQkwRkNGMzMyMzBGMkI5NzE1MDA0QjY3OTUgLyogQ29sb3JDRy5jcHAgKi8s
CisJCQkJQkNBRkVEQjMyNTk2OEQwQjAwMzBFNkFBIC8qIENvbG9yU3BhY2VDRy5jcHAgKi8sCisJ
CQkJQkNBRkVEQjIyNTk2OEQwQjAwMzBFNkFBIC8qIENvbG9yU3BhY2VDRy5oICovLAorCQkJCUIy
NzUzNTJCMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFBvaW50Q0cuY3BwICovLAorCQkJCUIyNzUz
NTJDMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFJlY3RDRy5jcHAgKi8sCisJCQkJQjI3NTM1MkQw
QjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0U2l6ZUNHLmNwcCAqLywKKwkJCQlCQzUzQzYwQTBEQTU2
Q0YxMDAyMUVCNUQgLyogR3JhZGllbnRDRy5jcHAgKi8sCisJCQkJQjJFRDk3NzAwQjFGNTVDRTAw
MjU3RDBGIC8qIEdyYXBoaWNzQ29udGV4dENHLmNwcCAqLywKKwkJCQk5MzQ5MDdFMzEyNUJCQkM4
MDA3RjIzQTAgLyogR3JhcGhpY3NDb250ZXh0Q0cuaCAqLywKKwkJCQk2RTIxQzZDMTExMjYzMzk5
MDBBN0JFMDIgLyogR3JhcGhpY3NDb250ZXh0R0xDRy5jcHAgKi8sCisJCQkJQTgwRDY3MDcwRTlF
OURFQjAwRTQyMEYwIC8qIEdyYXBoaWNzQ29udGV4dFBsYXRmb3JtUHJpdmF0ZUNHLmggKi8sCisJ
CQkJNzJCQUMzQUMyM0UxRTU0NTAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQ0dCYWNrZW5kLmNwcCAq
LywKKwkJCQk3MkJBQzNBRDIzRTFFNTQ1MDA4RDc0MUMgLyogSW1hZ2VCdWZmZXJDR0JhY2tlbmQu
aCAqLywKKwkJCQk3MkJBQzNBODIzRTFFNTQzMDA4RDc0MUMgLyogSW1hZ2VCdWZmZXJDR0JpdG1h
cEJhY2tlbmQuY3BwICovLAorCQkJCTcyQkFDM0FBMjNFMUU1NDQwMDhENzQxQyAvKiBJbWFnZUJ1
ZmZlckNHQml0bWFwQmFja2VuZC5oICovLAorCQkJCTcyQkFDM0E5MjNFMUU1NDMwMDhENzQxQyAv
KiBJbWFnZUJ1ZmZlcklPU3VyZmFjZUJhY2tlbmQuY3BwICovLAorCQkJCTcyQkFDM0FCMjNFMUU1
NDQwMDhENzQxQyAvKiBJbWFnZUJ1ZmZlcklPU3VyZmFjZUJhY2tlbmQuaCAqLywKKwkJCQlDRDU4
OTQ5MzIxODc0MDY0MDA0RjQyNEEgLyogSW1hZ2VCdWZmZXJVdGlsaXRpZXNDRy5jcHAgKi8sCisJ
CQkJQ0QzRTIxREIyMTgzM0Y1MTAwRTY2RjU1IC8qIEltYWdlQnVmZmVyVXRpbGl0aWVzQ0cuaCAq
LywKKwkJCQk1NTVCODdFQTFDQUFGMEFCMDAzNDk0MjUgLyogSW1hZ2VEZWNvZGVyQ0cuY3BwICov
LAorCQkJCTU1NUI4N0VCMUNBQUYwQUIwMDM0OTQyNSAvKiBJbWFnZURlY29kZXJDRy5oICovLAor
CQkJCTRCMzQ4MDkyMEVFRjUwRDQwMEFDMUI0MSAvKiBJbWFnZVNvdXJjZUNHLmggKi8sCisJCQkJ
NEIzNDgwOTEwRUVGNTBENDAwQUMxQjQxIC8qIEltYWdlU291cmNlQ0dNYWMubW0gKi8sCisJCQkJ
NTVCQkQ0MjYyNERCNTM0MzAwQkI2RTBDIC8qIEltYWdlVXRpbGl0aWVzQ0cuY3BwICovLAorCQkJ
CUIyNzUzNTMyMEIwNTM4MTQwMDJDRTY0RiAvKiBJbnRQb2ludENHLmNwcCAqLywKKwkJCQlCMjc1
MzUzMzBCMDUzODE0MDAyQ0U2NEYgLyogSW50UmVjdENHLmNwcCAqLywKKwkJCQlCMjc1MzUzNDBC
MDUzODE0MDAyQ0U2NEYgLyogSW50U2l6ZUNHLmNwcCAqLywKKwkJCQkxQzIxRTU3QTE4M0VEMUZG
MDAxQzI4OUQgLyogSU9TdXJmYWNlUG9vbC5jcHAgKi8sCisJCQkJMUMyMUU1N0IxODNFRDFGRjAw
MUMyODlEIC8qIElPU3VyZmFjZVBvb2wuaCAqLywKKwkJCQkzNzdBM0E4RjE1RUZDRTlBMDA1OUY1
QzcgLyogTmF0aXZlSW1hZ2VDRy5jcHAgKi8sCisJCQkJQjI3NTM1MzUwQjA1MzgxNDAwMkNFNjRG
IC8qIFBhdGhDRy5jcHAgKi8sCisJCQkJQTgwQTM4RkQwRTUwQ0M4MjAwQTI1RUJDIC8qIFBhdHRl
cm5DRy5jcHAgKi8sCisJCQkJQjI3NTM1MzYwQjA1MzgxNDAwMkNFNjRGIC8qIFBERkRvY3VtZW50
SW1hZ2UuY3BwICovLAorCQkJCUIyNzUzNTM3MEIwNTM4MTQwMDJDRTY0RiAvKiBQREZEb2N1bWVu
dEltYWdlLmggKi8sCisJCQkJMUZDNDBGQjgxNjU1QzU5MTAwNDBGMjlFIC8qIFN1YmltYWdlQ2Fj
aGVXaXRoVGltZXIuY3BwICovLAorCQkJCTFGQzQwRkI3MTY1NUM1OTEwMDQwRjI5RSAvKiBTdWJp
bWFnZUNhY2hlV2l0aFRpbWVyLmggKi8sCisJCQkJQjI3NTM1MkEwQjA1MzgxNDAwMkNFNjRGIC8q
IFRyYW5zZm9ybWF0aW9uTWF0cml4Q0cuY3BwICovLAorCQkJCTU1QUYxNEUzMUVBQUM1OUIwMDI2
RUVBQSAvKiBVVElSZWdpc3RyeS5jcHAgKi8sCisJCQkJNTVBRjE0RTQxRUFBQzU5QjAwMjZFRUFB
IC8qIFVUSVJlZ2lzdHJ5LmggKi8sCisJCQkpOworCQkJcGF0aCA9IGNnOworCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQjI3NTM1NDkwQjA1MzgxNDAwMkNFNjRGIC8qIG1hYyAq
LyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRURFM0E0RkYw
QzdBNDMwNjAwOTU2QTM3IC8qIENvbG9yTWFjLmggKi8sCisJCQkJQjI3NTM1NEEwQjA1MzgxNDAw
MkNFNjRGIC8qIENvbG9yTWFjLm1tICovLAorCQkJCTM3QzIzODIwMTA5OEM4NDIwMEVGOUY3MiAv
KiBDb21wbGV4VGV4dENvbnRyb2xsZXJDb3JlVGV4dC5tbSAqLywKKwkJCQlCMjc1MzU0QjBCMDUz
ODE0MDAyQ0U2NEYgLyogRmxvYXRQb2ludE1hYy5tbSAqLywKKwkJCQlCMjc1MzU0RDBCMDUzODE0
MDAyQ0U2NEYgLyogRmxvYXRTaXplTWFjLm1tICovLAorCQkJCUIyQUZGQzc1MEQwMEE1QzEwMDMw
MDc0RCAvKiBGb250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcCAqLywKKwkJCQlCMkFGRkM3NjBEMDBB
NUMxMDAzMDA3NEQgLyogRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oICovLAorCQkJCTdCQjY4MEI3
MjVCQTFCRTMwMDJCODczOCAvKiBHcmFwaGljc0NoZWNrc01hYy5jcHAgKi8sCisJCQkJN0JCNjgw
QjgyNUJBMUJFNDAwMkI4NzM4IC8qIEdyYXBoaWNzQ2hlY2tzTWFjLmggKi8sCisJCQkJQjI3NTM1
OEQwQjA1M0E2NjAwMkNFNjRGIC8qIEljb25NYWMubW0gKi8sCisJCQkJQjI3NTM1NEUwQjA1Mzgx
NDAwMkNFNjRGIC8qIEltYWdlTWFjLm1tICovLAorCQkJCUIyNzUzNTRGMEIwNTM4MTQwMDJDRTY0
RiAvKiBJbnRQb2ludE1hYy5tbSAqLywKKwkJCQlCMjc1MzU1MTBCMDUzODE0MDAyQ0U2NEYgLyog
SW50U2l6ZU1hYy5tbSAqLywKKwkJCQk0OUFGMkQ2QjE0NDM1RDIxMDAxNkE3ODQgLyogTGVnYWN5
RGlzcGxheVJlZnJlc2hNb25pdG9yTWFjLmNwcCAqLywKKwkJCQkyREU3MDAyMjE5MkZFODJBMDBC
MDk3NUMgLyogTGVnYWN5RGlzcGxheVJlZnJlc2hNb25pdG9yTWFjLmggKi8sCisJCQkJMkQ2RTQ2
ODIxN0Q2NjBGNTAwRUNGOEJCIC8qIFBERkRvY3VtZW50SW1hZ2VNYWMubW0gKi8sCisJCQkJN0I3
MzExRkEyNUMwOTJCNzAwM0IyNzk2IC8qIFNjb3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJlcXVlc3Qu
aCAqLywKKwkJCQkxNjNFODhGNTExOEEzOUQyMDBFRDkyMzEgLyogU2ltcGxlRm9udERhdGFDb3Jl
VGV4dC5jcHAgKi8sCisJCQkJQzExQTlFRDIyMTQwNTc4QjAwQ0ZCMjBBIC8qIFN3aXRjaGluZ0dQ
VUNsaWVudC5jcHAgKi8sCisJCQkJQzExQTlFQ0QyMTQwM0E1QzAwQ0ZCMjBBIC8qIFN3aXRjaGlu
Z0dQVUNsaWVudC5oICovLAorCQkJCTdBMjI3MzFGMjBDOUY5REEwMERCMURFRiAvKiBXZWJLaXRO
U0ltYWdlRXh0cmFzLmggKi8sCisJCQkJN0EyMjczMUUyMEM5RjlEOTAwREIxREVGIC8qIFdlYktp
dE5TSW1hZ2VFeHRyYXMubW0gKi8sCisJCQkJMEZDRjMzMkIwRjJCOUEyNTAwNEI2Nzk1IC8qIFdl
YkxheWVyLmggKi8sCisJCQkJMEZDRjMzMkEwRjJCOUEyNTAwNEI2Nzk1IC8qIFdlYkxheWVyLm1t
ICovLAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwor
CQl9OworCQlCMkEwMTU5MTBBRjZDRDUzMDA2QkNFMEUgLyogZ3JhcGhpY3MgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTZFMjdGMjQxMjI5OENFMkUwMEYx
RjYzMiAvKiBhbmdsZSAqLywKKwkJCQkwNzZGMEQwODEyQjgxOTI3MDBDMjZBQTQgLyogYXZmb3Vu
ZGF0aW9uICovLAorCQkJCTQ5OUIzRUMwMTI4Q0NDMTgwMEU3MjZDMiAvKiBjYSAqLywKKwkJCQlC
Mjc1MzUyOTBCMDUzODE0MDAyQ0U2NEYgLyogY2cgKi8sCisJCQkJQjUzMjBENjgxMjJBMjRFOTAw
MkQxNDQwIC8qIGNvY29hICovLAorCQkJCTJDRTExODk4MjRDMjQwMkMwMDM3NzBFOSAvKiBjb3Jl
aW1hZ2UgKi8sCisJCQkJMUM2RkQ5MjAyNTBDQ0E2NDAwRDZFOTIwIC8qIGNvcmV0ZXh0ICovLAor
CQkJCTkzMzJBQjNCMTY1MTVENzcwMEQ4MjdFQyAvKiBjcHUgKi8sCisJCQkJQ0Q5RDgyN0MxQzdC
QjJFRDAwNkZGMDY2IC8qIGN2ICovLAorCQkJCTBGRTVGQkM5MUMzREQ1MDYwMDA3QTJDQSAvKiBk
aXNwbGF5bGlzdHMgKi8sCisJCQkJQTc1RThCN0YwRTFERTJCMDAwN0YyNDgxIC8qIGZpbHRlcnMg
Ki8sCisJCQkJMUNFMzQ5NzgyNkIzM0I1RDAwODMwNkJEIC8qIGdwdSAqLywKKwkJCQk0NDFBRjBB
NzBFQkE3QkJGMDA0NEVENEIgLyogaW9zICovLAorCQkJCUNEODkyRjVBMUZCNTJBQ0YwMDkzMzNE
MiAvKiBpc28gKi8sCisJCQkJQjI3NTM1NDkwQjA1MzgxNDAwMkNFNjRGIC8qIG1hYyAqLywKKwkJ
CQlGQkMyMjBERDEyMzdGQkVCMDBCQ0Y3ODggLyogb3BlbmdsICovLAorCQkJCTM3MjE0OTMzMThG
MEI2RDYwMDE1NkVEQyAvKiBvcGVudHlwZSAqLywKKwkJCQk0OUU5MTFCMjBFRjg2RDI3MDA5RDBD
QUYgLyogdHJhbnNmb3JtcyAqLywKKwkJCQlCQzYzNUU5MTI2NEM0NzYwMDAwRUYzM0EgLyogQWxw
aGFQcmVtdWx0aXBsaWNhdGlvbi5jcHAgKi8sCisJCQkJNzI5OUJDNjQyM0Q2ODZBNjAwQ0M2ODgz
IC8qIEFscGhhUHJlbXVsdGlwbGljYXRpb24uaCAqLywKKwkJCQkwRjdFNDc1MzI1RUVCNzlCMDAx
M0Y5MDkgLyogQU5HTEVXZWJLaXRCcmlkZ2UuY3BwICovLAorCQkJCTBGN0U0NzU0MjVFRUI3OUIw
MDEzRjkwOSAvKiBBTkdMRVdlYktpdEJyaWRnZS5oICovLAorCQkJCTBGN0U0NzUxMjVFRUI3OUEw
MDEzRjkwOSAvKiBBbmltYXRpb25GcmFtZVJhdGUuY3BwICovLAorCQkJCTcyMkE4MTVDMjM4RkQ1
MDUwMEMwMDU4MyAvKiBBbmltYXRpb25GcmFtZVJhdGUuaCAqLywKKwkJCQlCRUYyOUVFOTE3MTVE
RDA5MDBDNEI0QzkgLyogQXVkaW9UcmFja1ByaXZhdGUuaCAqLywKKwkJCQkyREQ4NzE0NzI2NUY0
MzY0MDA1Rjk5N0MgLyogQmlmdXJjYXRlZEdyYXBoaWNzQ29udGV4dC5jcHAgKi8sCisJCQkJMkRE
ODcxNDkyNjVGNDM2NTAwNUY5OTdDIC8qIEJpZnVyY2F0ZWRHcmFwaGljc0NvbnRleHQuaCAqLywK
KwkJCQlBODk5NDMyNzBCNDIzMzg3MDBEN0M4MDIgLyogQml0bWFwSW1hZ2UuY3BwICovLAorCQkJ
CUE4OTk0MzI2MEI0MjMzODcwMEQ3QzgwMiAvKiBCaXRtYXBJbWFnZS5oICovLAorCQkJCUIyNzUz
NTM4MEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvci5jcHAgKi8sCisJCQkJQjI3NTM1MzkwQjA1Mzgx
NDAwMkNFNjRGIC8qIENvbG9yLmggKi8sCisJCQkJN0MxQjRBNjUyNEE5OTc1OTAwMzM3MjdGIC8q
IENvbG9yQmxlbmRpbmcuY3BwICovLAorCQkJCTdDMUI0QTY3MjRBOTk3NjYwMDMzNzI3RiAvKiBD
b2xvckJsZW5kaW5nLmggKi8sCisJCQkJN0NBQzZBRUMyNDdGMUM1MTAwRTYxRDU5IC8qIENvbG9y
Q29tcG9uZW50cy5oICovLAorCQkJCTdDNTE0RTAyMjRBRjgwNTgwMDUwNzEwRiAvKiBDb2xvckNv
bnZlcnNpb24uY3BwICovLAorCQkJCTdDNTE0RTAwMjRBRjgwNTgwMDUwNzEwRiAvKiBDb2xvckNv
bnZlcnNpb24uaCAqLywKKwkJCQkzMTAzQjdERTFEQjAxNTU2MDA4QkI4OTAgLyogQ29sb3JIYXNo
LmggKi8sCisJCQkJQkM2RUI4NDUyNjI2NkI2MTAwMzIyNUE3IC8qIENvbG9yTHVtaW5hbmNlLmNw
cCAqLywKKwkJCQlCQzRBMjNFQjI1RUMxNjAyMDBBQUM2MzAgLyogQ29sb3JMdW1pbmFuY2UuaCAq
LywKKwkJCQk3Q0FDNkFFODI0N0YwODIwMDBFNjFENTkgLyogQ29sb3JNYXRyaXguaCAqLywKKwkJ
CQlCQzEwMTM3QjI1QzM2MjRCMDBEQzc3M0MgLyogQ29sb3JNb2RlbHMuaCAqLywKKwkJCQk3Q0Qx
RTY5MjI0QUJGNjI0MDA4OUM0MTkgLyogQ29sb3JTZXJpYWxpemF0aW9uLmNwcCAqLywKKwkJCQk3
Q0QxRTY5MTI0QUJGNjI0MDA4OUM0MTkgLyogQ29sb3JTZXJpYWxpemF0aW9uLmggKi8sCisJCQkJ
QkNBRkVEQUYyNTk2NkQwNTAwMzBFNkFBIC8qIENvbG9yU3BhY2UuY3BwICovLAorCQkJCTkzODJE
RjU3MTBBOEQ1QzkwMDkyNTY1MiAvKiBDb2xvclNwYWNlLmggKi8sCisJCQkJQkMxMDEzN0UyNUMz
NjMxNjAwREM3NzNDIC8qIENvbG9yVHJhbnNmZXJGdW5jdGlvbnMuaCAqLywKKwkJCQk3QzAyOUM2
RDI0OTNDOEY4MDAyNjgyMDQgLyogQ29sb3JUeXBlcy5oICovLAorCQkJCTBGRTZDNzZCMUZCRkI3
QTYwMDI1QzA1MyAvKiBDb2xvclV0aWxpdGllcy5jcHAgKi8sCisJCQkJMEZFNkM3NkMxRkJGQjdB
NjAwMjVDMDUzIC8qIENvbG9yVXRpbGl0aWVzLmggKi8sCisJCQkJQzJGNEU3ODgxRTQ1QUVERjAw
NkQ3MTA1IC8qIENvbXBsZXhUZXh0Q29udHJvbGxlci5jcHAgKi8sCisJCQkJQzJGNEU3ODkxRTQ1
QUVERjAwNkQ3MTA1IC8qIENvbXBsZXhUZXh0Q29udHJvbGxlci5oICovLAorCQkJCTFDODRCRTQx
MjZEMzkzOUYwMDJENjFGQyAvKiBDb21wb3NlZENoYXJhY3RlckNsdXN0ZXJUZXh0SXRlcmF0b3Iu
aCAqLywKKwkJCQk3MkJBQzNBNzIzRTE3MzI4MDA4RDc0MUMgLyogQ29uY3JldGVJbWFnZUJ1ZmZl
ci5oICovLAorCQkJCTJEMkZDMDU0MTQ2MENENkYwMDI2MzYzMyAvKiBDcm9zc2ZhZGVHZW5lcmF0
ZWRJbWFnZS5jcHAgKi8sCisJCQkJMkQyRkMwNTUxNDYwQ0Q2RjAwMjYzNjMzIC8qIENyb3NzZmFk
ZUdlbmVyYXRlZEltYWdlLmggKi8sCisJCQkJQThDQjQxMDIwRTg1QjhBNTAwMzJDNEYwIC8qIERh
c2hBcnJheS5oICovLAorCQkJCTU1NTEzMDAwMUU3Q0NDQ0EwMEE2OUUzOCAvKiBEZWNvZGluZ09w
dGlvbnMuaCAqLywKKwkJCQlCQzJDQ0EwRjI2NTVEREIyMDBCOEMwMzUgLyogRGVzdGluYXRpb25D
b2xvclNwYWNlLmNwcCAqLywKKwkJCQlCQzJDQ0EwRTI2NTVEREIyMDBCOEMwMzUgLyogRGVzdGlu
YXRpb25Db2xvclNwYWNlLmggKi8sCisJCQkJNDlGQzdBNEYxNDQ0QUY1RjAwQTVEODY0IC8qIERp
c3BsYXlSZWZyZXNoTW9uaXRvci5jcHAgKi8sCisJCQkJNDlBRjJENjgxNDQzNUQwNTAwMTZBNzg0
IC8qIERpc3BsYXlSZWZyZXNoTW9uaXRvci5oICovLAorCQkJCTJEMjlFQ0MxMTkyRUNDODMwMDk4
NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQuY3BwICovLAorCQkJCTJEMjlFQ0My
MTkyRUNDODMwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1vbml0b3JDbGllbnQuaCAqLywKKwkJ
CQkwRkJCNUZCRDI2MDk1QTlDMDA1NDU3MkMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9y
eS5oICovLAorCQkJCTJEMjlFQ0MzMTkyRUNDODMwMDk4NEI3OCAvKiBEaXNwbGF5UmVmcmVzaE1v
bml0b3JNYW5hZ2VyLmNwcCAqLywKKwkJCQkyRDI5RUNDNDE5MkVDQzgzMDA5ODRCNzggLyogRGlz
cGxheVJlZnJlc2hNb25pdG9yTWFuYWdlci5oICovLAorCQkJCTBGQkI1RkM5MjYwRTlCNDMwMDU0
NTcyQyAvKiBEaXNwbGF5VXBkYXRlLmNwcCAqLywKKwkJCQkwRkJCNUZDQjI2MEU5QjQ0MDA1NDU3
MkMgLyogRGlzcGxheVVwZGF0ZS5oICovLAorCQkJCTZFNjdEMkE4MTI4MEU4QkQwMDg3NThGNyAv
KiBFeHRlbnNpb25zR0wuaCAqLywKKwkJCQkyRTg4OENBOTI1RjZBNDExMDA1NzkxNEEgLyogRmxv
YXRMaW5lLmNwcCAqLywKKwkJCQkyRTg4OENBODI1RjZBNDExMDA1NzkxNEEgLyogRmxvYXRMaW5l
LmggKi8sCisJCQkJQjI3NTM1M0EwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9pbnQuY3BwICov
LAorCQkJCUIyNzUzNTNCMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFBvaW50LmggKi8sCisJCQkJ
QjJFMjdDOUQwQjBGMkIwOTAwRjE3QzdCIC8qIEZsb2F0UG9pbnQzRC5jcHAgKi8sCisJCQkJQjJF
MjdDOUUwQjBGMkIwOTAwRjE3QzdCIC8qIEZsb2F0UG9pbnQzRC5oICovLAorCQkJCTZFQzQ4MDlG
MTZFQTYzOEEwMEE0OERDQiAvKiBGbG9hdFBvbHlnb24uY3BwICovLAorCQkJCTZFQzQ4MEEwMTZF
QTYzOEEwMEE0OERDQiAvKiBGbG9hdFBvbHlnb24uaCAqLywKKwkJCQkwRkQ3MjM4MTBFQzhCRDkz
MDBDQTVERDcgLyogRmxvYXRRdWFkLmNwcCAqLywKKwkJCQkwRkQ3MjM4MDBFQzhCRDkzMDBDQTVE
RDcgLyogRmxvYXRRdWFkLmggKi8sCisJCQkJQjI3NTM1M0MwQjA1MzgxNDAwMkNFNjRGIC8qIEZs
b2F0UmVjdC5jcHAgKi8sCisJCQkJQjI3NTM1M0QwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UmVj
dC5oICovLAorCQkJCTZFMEU1Njk5MTgzQkZGRTYwMEUwRThENSAvKiBGbG9hdFJvdW5kZWRSZWN0
LmNwcCAqLywKKwkJCQk2RTBFNTY5QTE4M0JGRkU2MDBFMEU4RDUgLyogRmxvYXRSb3VuZGVkUmVj
dC5oICovLAorCQkJCUIyNzUzNTNFMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFNpemUuY3BwICov
LAorCQkJCUIyNzUzNTNGMEIwNTM4MTQwMDJDRTY0RiAvKiBGbG9hdFNpemUuaCAqLywKKwkJCQk1
OENEMzVDQTE4RUI0QzM5MDBCOUYzQUMgLyogRmxvYXRTaXplSGFzaC5oICovLAorCQkJCUIyQzNE
QTUzMEQwMDZDRDYwMEVGNkYyNiAvKiBGb250LmNwcCAqLywKKwkJCQlCMkMzREE1NDBEMDA2Q0Q2
MDBFRjZGMjYgLyogRm9udC5oICovLAorCQkJCUJDQjkyRDRFMTI5MzU1MEIwMEM4Mzg3RiAvKiBG
b250QmFzZWxpbmUuaCAqLywKKwkJCQlCMkMzREE1MTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENh
Y2hlLmNwcCAqLywKKwkJCQlCMkMzREE1MjBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENhY2hlLmgg
Ki8sCisJCQkJQjJDM0RBNEYwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnRDYXNjYWRlLmNwcCAqLywK
KwkJCQlCMkMzREE1MDBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENhc2NhZGUuaCAqLywKKwkJCQlF
NEU4QjRGMDIxNkI4QjVGMDBCODgzNEQgLyogRm9udENhc2NhZGVEZXNjcmlwdGlvbi5jcHAgKi8s
CisJCQkJRTRFOEI0RjIyMTZCOEI2MDAwQjg4MzREIC8qIEZvbnRDYXNjYWRlRGVzY3JpcHRpb24u
aCAqLywKKwkJCQlCMkMzREE1NjBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udENhc2NhZGVGb250cy5j
cHAgKi8sCisJCQkJQjJDM0RBNTcwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnRDYXNjYWRlRm9udHMu
aCAqLywKKwkJCQkzN0FDQ0U2MjBEQTJBQTk2MDA4OUU2MDIgLyogRm9udERlc2NyaXB0aW9uLmNw
cCAqLywKKwkJCQlCMkMzREE1NTBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udERlc2NyaXB0aW9uLmgg
Ki8sCisJCQkJQzI4MEIzRkQxRUY0NjA4OTAwRDM1MTM1IC8qIEZvbnRGYW1pbHlTcGVjaWZpY2F0
aW9uTnVsbC5jcHAgKi8sCisJCQkJQzJDMkNGNTUxRUYzNzYxQTAwNDI4MUE4IC8qIEZvbnRGYW1p
bHlTcGVjaWZpY2F0aW9uTnVsbC5oICovLAorCQkJCUU0NEVFM0E2MTc1NzZFNTUwMEVFRThDRiAv
KiBGb250R2VuZXJpY0ZhbWlsaWVzLmNwcCAqLywKKwkJCQlFNDRFRTNBNzE3NTc2RTU1MDBFRUU4
Q0YgLyogRm9udEdlbmVyaWNGYW1pbGllcy5oICovLAorCQkJCTA4NDU2ODA3MTJCOTBEQTYwMDk2
MEE5RiAvKiBGb250TWV0cmljcy5oICovLAorCQkJCTg0QjYyNjg0MTMzMTM4RjkwMDk1QTQ4OSAv
KiBGb250UGxhdGZvcm1EYXRhLmNwcCAqLywKKwkJCQlCNTMyMEQ2OTEyMkEyNEU5MDAyRDE0NDAg
LyogRm9udFBsYXRmb3JtRGF0YS5oICovLAorCQkJCTM3MUY0RkZCMEQyNUU3RjMwMEVDRTBENSAv
KiBGb250UmFuZ2VzLmNwcCAqLywKKwkJCQkzNzFGNEZGQTBEMjVFN0YzMDBFQ0UwRDUgLyogRm9u
dFJhbmdlcy5oICovLAorCQkJCUMyQUIwQUY0MUU2QjNDNkMwMDEzNDhDNSAvKiBGb250U2VsZWN0
aW9uQWxnb3JpdGhtLmNwcCAqLywKKwkJCQlDMkFCMEFGNTFFNkIzQzZDMDAxMzQ4QzUgLyogRm9u
dFNlbGVjdGlvbkFsZ29yaXRobS5oICovLAorCQkJCUIyQzNEQTVBMEQwMDZDRDYwMEVGNkYyNiAv
KiBGb250U2VsZWN0b3IuaCAqLywKKwkJCQlFNDE5MDQxRTFDQzY0ODZCMDBDMzVGNUQgLyogRm9u
dFNlbGVjdG9yQ2xpZW50LmggKi8sCisJCQkJNEE2RTlGQzUxM0MxN0Q1NzAwNDZBN0Y4IC8qIEZv
bnRUYWdnZWRTZXR0aW5ncy5jcHAgKi8sCisJCQkJNEE2RTlGQzYxM0MxN0Q1NzAwNDZBN0Y4IC8q
IEZvbnRUYWdnZWRTZXR0aW5ncy5oICovLAorCQkJCTdDRTZDQkZDMTg3RjM5NDkwMEQ0NkJGNSAv
KiBGb3JtYXRDb252ZXJ0ZXIuY3BwICovLAorCQkJCTdDRTZDQkZBMTg3RjM3MDcwMEQ0NkJGNSAv
KiBGb3JtYXRDb252ZXJ0ZXIuaCAqLywKKwkJCQlDRDUyNUJBMjFFRTBCMTA3MDA3ODhERjUgLyog
Rm91ckNDLmggKi8sCisJCQkJNEZCMzkwQUMxNUVGNjFGMzAwN0FENTFGIC8qIEdlbmVyYXRlZElt
YWdlLmNwcCAqLywKKwkJCQlCQzIzRjBEQTBEQUZGNEE0MDA5RkRDOTEgLyogR2VuZXJhdGVkSW1h
Z2UuaCAqLywKKwkJCQkwRkI2MjUyQzE4REUxQjE1MDBBMDdDMDUgLyogR2VvbWV0cnlVdGlsaXRp
ZXMuY3BwICovLAorCQkJCTBGQjYyNTJEMThERTFCMTUwMEEwN0MwNSAvKiBHZW9tZXRyeVV0aWxp
dGllcy5oICovLAorCQkJCTA4NkJCRDBFMTM2MDM5QzIwMDhCMTVEOCAvKiBHbHlwaC5oICovLAor
CQkJCUIyQzNEQTVCMEQwMDZDRDYwMEVGNkYyNiAvKiBHbHlwaEJ1ZmZlci5oICovLAorCQkJCTFD
NEQwREQxMjREOUYwREIwMDNENzQ5OCAvKiBHbHlwaEJ1ZmZlck1lbWJlcnMuaCAqLywKKwkJCQlD
NUQ0QUE3ODExNkJBRkI2MDA2OUNBOTMgLyogR2x5cGhNZXRyaWNzTWFwLmggKi8sCisJCQkJMDg3
M0I4NkExMzYwNjRFQTAwQTUyMkMyIC8qIEdseXBoUGFnZS5oICovLAorCQkJCUJDNTNDNjA3MERB
NTZDNTcwMDIxRUI1RCAvKiBHcmFkaWVudC5jcHAgKi8sCisJCQkJQkM1M0M1RjQwREE1NkI5MjAw
MjFFQjVEIC8qIEdyYWRpZW50LmggKi8sCisJCQkJMkQyRkMwNTYxNDYwQ0Q2RjAwMjYzNjMzIC8q
IEdyYWRpZW50SW1hZ2UuY3BwICovLAorCQkJCTJEMkZDMDU3MTQ2MENENkYwMDI2MzYzMyAvKiBH
cmFkaWVudEltYWdlLmggKi8sCisJCQkJQjJBMDE1OTIwQUY2Q0Q1MzAwNkJDRTBFIC8qIEdyYXBo
aWNzQ29udGV4dC5jcHAgKi8sCisJCQkJQjJBMDE1OTMwQUY2Q0Q1MzAwNkJDRTBFIC8qIEdyYXBo
aWNzQ29udGV4dC5oICovLAorCQkJCTMxM0RFODZEMjNBOTY5NjYwMDhGQzQ3QiAvKiBHcmFwaGlj
c0NvbnRleHRHTC5jcHAgKi8sCisJCQkJMzEzREU4NkYyM0E5Njk2NzAwOEZDNDdCIC8qIEdyYXBo
aWNzQ29udGV4dEdMLmggKi8sCisJCQkJN0MzMzBBMDExREY4RkFDNjAwRDMzOTVDIC8qIEdyYXBo
aWNzQ29udGV4dEdMQXR0cmlidXRlcy5oICovLAorCQkJCTdCQjM0QTQ3MjUzNzc2QzcwMDAyOUQw
OCAvKiBHcmFwaGljc0NvbnRleHRHTEltYWdlRXh0cmFjdG9yLmNwcCAqLywKKwkJCQk3QkIzNEE0
NTI1Mzc3NkM2MDAwMjlEMDggLyogR3JhcGhpY3NDb250ZXh0R0xJbWFnZUV4dHJhY3Rvci5oICov
LAorCQkJCTBGNTgwQjA5MEYxMkEyNjkwMDUxRDY4OSAvKiBHcmFwaGljc0xheWVyLmNwcCAqLywK
KwkJCQkwRjU4MEIwQTBGMTJBMjY5MDA1MUQ2ODkgLyogR3JhcGhpY3NMYXllci5oICovLAorCQkJ
CTBGNTgwQjBCMEYxMkEyNjkwMDUxRDY4OSAvKiBHcmFwaGljc0xheWVyQ2xpZW50LmggKi8sCisJ
CQkJMUFDNjk1OTIxNjFBMUU1MzAwMzczMkNCIC8qIEdyYXBoaWNzTGF5ZXJGYWN0b3J5LmggKi8s
CisJCQkJMEZBMjRENzcxNjJERjkxOTAwQTNGNEMwIC8qIEdyYXBoaWNzTGF5ZXJVcGRhdGVyLmNw
cCAqLywKKwkJCQkwRkEyNEQ3ODE2MkRGOTE5MDBBM0Y0QzAgLyogR3JhcGhpY3NMYXllclVwZGF0
ZXIuaCAqLywKKwkJCQlCMkEwMTU5NDBBRjZDRDUzMDA2QkNFMEUgLyogR3JhcGhpY3NUeXBlcy5j
cHAgKi8sCisJCQkJQjJBMDE1OTUwQUY2Q0Q1MzAwNkJDRTBFIC8qIEdyYXBoaWNzVHlwZXMuaCAq
LywKKwkJCQk3N0ExN0E3QTEyRjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlc0dMLmggKi8s
CisJCQkJQ0RBNTk1OTIyMTQ2REVDMzAwQTg0MTg1IC8qIEhFVkNVdGlsaXRpZXMuY3BwICovLAor
CQkJCUNEQTU5NTkxMjE0NkRFQzMwMEE4NDE4NSAvKiBIRVZDVXRpbGl0aWVzLmggKi8sCisJCQkJ
QjI3NTM1NDAwQjA1MzgxNDAwMkNFNjRGIC8qIEljb24uaCAqLywKKwkJCQlCMjc1MzU0MTBCMDUz
ODE0MDAyQ0U2NEYgLyogSW1hZ2UuY3BwICovLAorCQkJCUIyNzUzNTQyMEIwNTM4MTQwMDJDRTY0
RiAvKiBJbWFnZS5oICovLAorCQkJCTU1QTMzNkY4MUQ4MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJh
Y2tpbmdTdG9yZS5oICovLAorCQkJCTQzRDI1OTc2MTNDODE2RjQwMDYwODU1OSAvKiBJbWFnZUJ1
ZmZlci5jcHAgKi8sCisJCQkJQjJBMTBCOTEwQjM4MThCRDAwMDk5QUE0IC8qIEltYWdlQnVmZmVy
LmggKi8sCisJCQkJNzJCQUMzQTQyM0UxNzMyNzAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQmFja2Vu
ZC5jcHAgKi8sCisJCQkJNzJCQUMzQTUyM0UxNzMyODAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQmFj
a2VuZC5oICovLAorCQkJCTQzRDI1OTg2MTNDODE2RjQwMDYwODU1OSAvKiBJbWFnZUJ1ZmZlclBp
cGUuY3BwICovLAorCQkJCUIyQTEwQzkxMEIzODE4QkQwMDA5OUFBNCAvKiBJbWFnZUJ1ZmZlclBp
cGUuaCAqLywKKwkJCQlDRDE5RkVBNzFGNTczOTcyMDAwQzQyRkIgLyogSW1hZ2VEZWNvZGVyLmNw
cCAqLywKKwkJCQlDRDE5RkVBNjFGNTczOTcyMDAwQzQyRkIgLyogSW1hZ2VEZWNvZGVyLmggKi8s
CisJCQkJMUQ0NzY1OEQyNUNDQTc3ODAwN0FGMzEyIC8qIEltYWdlRGVjb2RlcklkZW50aWZpZXIu
aCAqLywKKwkJCQk1NTc2QTU2MjFEODhBNzA4MDBDQ0MwNEMgLyogSW1hZ2VGcmFtZS5jcHAgKi8s
CisJCQkJNTU3NkE1NjMxRDg4QTcwODAwQ0NDMDRDIC8qIEltYWdlRnJhbWUuaCAqLywKKwkJCQlC
QzdGNDRBNzBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZlci5oICovLAorCQkJCUE4NzQ4
RDY2MTJDQzM3NjMwMDFGQkE0MSAvKiBJbWFnZU9yaWVudGF0aW9uLmggKi8sCisJCQkJNzJDMThB
M0YyMzBCMDRCNzAwNjg0N0M3IC8qIEltYWdlUGFpbnRpbmdPcHRpb25zLmggKi8sCisJCQkJQ0Ez
QTRBQUIyNTQxNkUzQzAwNkNEQUUyIC8qIEltYWdlUmVzb2x1dGlvbi5jcHAgKi8sCisJCQkJQ0Ez
QTRBQUQyNTQxNkUzRTAwNkNEQUUyIC8qIEltYWdlUmVzb2x1dGlvbi5oICovLAorCQkJCTU1NDY3
NTc3MUZEMUZDMUEwMDNCMTBCMCAvKiBJbWFnZVNvdXJjZS5jcHAgKi8sCisJCQkJNTU0Njc1Nzgx
RkQxRkMxQTAwM0IxMEIwIC8qIEltYWdlU291cmNlLmggKi8sCisJCQkJNTU1MENCNDExRTk1NUUz
QzAwMTExQUEwIC8qIEltYWdlVHlwZXMuaCAqLywKKwkJCQk1NUJCRDQyODI0REI1M0EyMDBCQjZF
MEMgLyogSW1hZ2VVdGlsaXRpZXMuaCAqLywKKwkJCQkwNzg2MzNGODI0MDcxNUQyMDA4N0FFMjEg
LyogSW5iYW5kR2VuZXJpY0N1ZS5jcHAgKi8sCisJCQkJMDc4NjMzREUyM0ZFREYyMjAwODdBRTIx
IC8qIEluYmFuZEdlbmVyaWNDdWUuaCAqLywKKwkJCQkwNzA2QTBENzI0MDgzMEE2MDBFOTM4MTgg
LyogSW5iYW5kR2VuZXJpY0N1ZUlkZW50aWZpZXIuaCAqLywKKwkJCQkwNzk0MTc5MzE2NkVBMDRF
MDA5NDE2QzIgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5oICovLAorCQkJCTA3Q0U3N0Q0MTY3
MTJBNkEwMEM1NUE0NyAvKiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQ2xpZW50LmggKi8sCisJCQkJ
RjQ1Nzc1Q0QyNDE0MzdENTAwMkRGMUEwIC8qIElubGluZVBhdGhEYXRhLmggKi8sCisJCQkJMkQ0
NkYwNEQxN0I5NkZCRDAwNTY0N0YwIC8qIEludFBvaW50LmNwcCAqLywKKwkJCQlCMjc1MzU0NDBC
MDUzODE0MDAyQ0U2NEYgLyogSW50UG9pbnQuaCAqLywKKwkJCQlFNDYyQTRBMDExM0U3MUJFMDA0
QTQyMjAgLyogSW50UG9pbnRIYXNoLmggKi8sCisJCQkJQjI3NTM1NDUwQjA1MzgxNDAwMkNFNjRG
IC8qIEludFJlY3QuY3BwICovLAorCQkJCUIyNzUzNTQ2MEIwNTM4MTQwMDJDRTY0RiAvKiBJbnRS
ZWN0LmggKi8sCisJCQkJQTJCOTIxNzIxNkM1Q0M0MjAwNDFEQ0Q5IC8qIEludFJlY3RFeHRlbnQu
aCAqLywKKwkJCQlFMTM0RjVBQTEyRUUzNDNGMDA0RUM1OEQgLyogSW50UmVjdEhhc2guaCAqLywK
KwkJCQkyRDQ2RjA0RjE3Qjk2RkQyMDA1NjQ3RjAgLyogSW50U2l6ZS5jcHAgKi8sCisJCQkJQjI3
NTM1NDcwQjA1MzgxNDAwMkNFNjRGIC8qIEludFNpemUuaCAqLywKKwkJCQlCMjc1MzU0ODBCMDUz
ODE0MDAyQ0U2NEYgLyogSW50U2l6ZUhhc2guaCAqLywKKwkJCQk2NUNDNkJFRDE2MDE0RUMwMDAw
RUQyN0QgLyogTGF0aW4xVGV4dEl0ZXJhdG9yLmggKi8sCisJCQkJMEY3MzZFQ0EyNkNDQjk3QTAw
MEFEN0NBIC8qIExheWVyVHJlZUFzVGV4dE9wdGlvbnMuaCAqLywKKwkJCQkwRjM2RTczNjFCRDE4
MzdBMDAyREI4OTEgLyogTGF5b3V0UG9pbnQuY3BwICovLAorCQkJCTE0MURDMDRCMTY0ODM0Qjkw
MDM3MUU1QSAvKiBMYXlvdXRQb2ludC5oICovLAorCQkJCTE0MURDMDRDMTY0ODM0QjkwMDM3MUU1
QSAvKiBMYXlvdXRSZWN0LmNwcCAqLywKKwkJCQkxNDFEQzA0RDE2NDgzNEI5MDAzNzFFNUEgLyog
TGF5b3V0UmVjdC5oICovLAorCQkJCTBGMzZFNzM4MUJEMTg0QjkwMDJEQjg5MSAvKiBMYXlvdXRT
aXplLmNwcCAqLywKKwkJCQkxNDFEQzA0RTE2NDgzNEI5MDAzNzFFNUEgLyogTGF5b3V0U2l6ZS5o
ICovLAorCQkJCUNEREUwMkU5MThCM0RGQzcwMENGN0ZGMSAvKiBMZWdhY3lDRE1TZXNzaW9uLmgg
Ki8sCisJCQkJMDdFM0RGRDAxQTlFNzg2NTAwNzY0Q0E4IC8qIE1lZGlhUGxheWJhY2tUYXJnZXQu
aCAqLywKKwkJCQkwNzkyMTY1MzFBQTU2MEFBMDBBM0MwNDkgLyogTWVkaWFQbGF5YmFja1Rhcmdl
dENsaWVudC5oICovLAorCQkJCTA3OEU0M0Q3MUFCQjZDN0UwMDFDMkZBNiAvKiBNZWRpYVBsYXli
YWNrVGFyZ2V0UGlja2VyLmNwcCAqLywKKwkJCQkwNzhFNDNEODFBQkI2QzdFMDAxQzJGQTYgLyog
TWVkaWFQbGF5YmFja1RhcmdldFBpY2tlci5oICovLAorCQkJCUU0QjQxRTBDMENCRjkwQkQwMEFG
MkVDRSAvKiBNZWRpYVBsYXllci5jcHAgKi8sCisJCQkJRTRCNDFFMEQwQ0JGOTBCRDAwQUYyRUNF
IC8qIE1lZGlhUGxheWVyLmggKi8sCisJCQkJQ0Q1MjA5RTMxQjBCRDgzODAwNzcxODRFIC8qIE1l
ZGlhUGxheWVyRW51bXMuaCAqLywKKwkJCQlGNDI5MjYxNzI1MjY0RDQ0MDAwMDc4OTggLyogTWVk
aWFQbGF5ZXJJZGVudGlmaWVyLmggKi8sCisJCQkJMDc5RjVFNEIwRjNCRUJFQTAwNUUwNzgyIC8q
IE1lZGlhUGxheWVyUHJpdmF0ZS5oICovLAorCQkJCUNENjQxRUIxMTgxOEY1RUQwMEVFNEM0MSAv
KiBNZWRpYVNvdXJjZVByaXZhdGUuaCAqLywKKwkJCQlDRERDMUU3OTE4QTk1MkYzMDAyN0E5RDQg
LyogTWVkaWFTb3VyY2VQcml2YXRlQ2xpZW50LmggKi8sCisJCQkJMDc2MTFEQjgyNDNGQjc1QzAw
RDgwNzA0IC8qIE1lZGlhVXNhZ2VJbmZvLmggKi8sCisJCQkJMDdCOTNGRkIyM0I5MkFBQjAwMzZG
OEVBIC8qIE1JTUVUeXBlQ2FjaGUuY3BwICovLAorCQkJCTA3QjkzRkY5MjNCOTJBQUEwMDM2RjhF
QSAvKiBNSU1FVHlwZUNhY2hlLmggKi8sCisJCQkJMkRDOEQzOTYyNUYyRkU5MzAwQ0ZDQkFCIC8q
IE1vZGVsLmNwcCAqLywKKwkJCQkyREM4RDM5NzI1RjJGRTk0MDBDRkNCQUIgLyogTW9kZWwuaCAq
LywKKwkJCQkzMTRCRTNBNDFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZElt
YWdlLmNwcCAqLywKKwkJCQkzMTRCRTNBNTFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdl
bmVyYXRlZEltYWdlLmggKi8sCisJCQkJNzI1MjM5NkIyNTRDQURDMjAwRjVGQjE1IC8qIE5hdGl2
ZUltYWdlLmNwcCAqLywKKwkJCQk1NUEzMzZGNjFEODIwOUY0MDAyMkM0QzcgLyogTmF0aXZlSW1h
Z2UuaCAqLywKKwkJCQkyREEzOTdFMzI2NUM3Mzc0MDA0NjhGMzMgLyogTnVsbEdyYXBoaWNzQ29u
dGV4dC5oICovLAorCQkJCUIyNzUzNTUyMEIwNTM4MTQwMDJDRTY0RiAvKiBQYXRoLmNwcCAqLywK
KwkJCQlCMjc1MzU1MzBCMDUzODE0MDAyQ0U2NEYgLyogUGF0aC5oICovLAorCQkJCUE4OERENDg4
MEI0NjI5QjAwMEMwMjk5MCAvKiBQYXRoVHJhdmVyc2FsU3RhdGUuY3BwICovLAorCQkJCUE4OERE
NDg2MEI0NjI5QTMwMEMwMjk5MCAvKiBQYXRoVHJhdmVyc2FsU3RhdGUuaCAqLywKKwkJCQkyRDUw
MDJGOTFCNTZENzk5MDAyMEFBRjcgLyogUGF0aFV0aWxpdGllcy5jcHAgKi8sCisJCQkJMkQ1MDAy
RkExQjU2RDc5OTAwMjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMuaCAqLywKKwkJCQlBOEZBNkU1QzBF
NENGREVEMDBENUNGNDkgLyogUGF0dGVybi5jcHAgKi8sCisJCQkJQThGQTZFNUIwRTRDRkRFRDAw
RDVDRjQ5IC8qIFBhdHRlcm4uaCAqLywKKwkJCQlCQzQ4MzlCQjI2NDYxODFBMDBBMjhCNjIgLyog
UGl4ZWxCdWZmZXIuY3BwICovLAorCQkJCUJDNDgzOUJBMjY0NjE4MUEwMEEyOEI2MiAvKiBQaXhl
bEJ1ZmZlci5oICovLAorCQkJCUJDMENBNzREMjY0QUVEMEEwMDRGREM2MiAvKiBQaXhlbEJ1ZmZl
ckNvbnZlcnNpb24uY3BwICovLAorCQkJCUJDMENBNzRDMjY0QUVEMEEwMDRGREM2MiAvKiBQaXhl
bEJ1ZmZlckNvbnZlcnNpb24uaCAqLywKKwkJCQlCQzYzNUU4RjI2NEMyRUNFMDAwRUYzM0EgLyog
UGl4ZWxCdWZmZXJGb3JtYXQuY3BwICovLAorCQkJCUJDNjM1RThCMjY0QzJDQUUwMDBFRjMzQSAv
KiBQaXhlbEJ1ZmZlckZvcm1hdC5oICovLAorCQkJCUJDNjM1RTkwMjY0QzQ2OUYwMDBFRjMzQSAv
KiBQaXhlbEZvcm1hdC5jcHAgKi8sCisJCQkJQkNBNTU5MTIyNjNEQkQ3OTAwN0YxOUIzIC8qIFBp
eGVsRm9ybWF0LmggKi8sCisJCQkJQkMzRTYyNDIyNjU5NzkxNzAwNTQ4QUNEIC8qIFBsYXRmb3Jt
Q29sb3JTcGFjZS5oICovLAorCQkJCTcyNkQ1NkUxMjUzQUUwNDMwMDAyRUY5MCAvKiBQbGF0Zm9y
bUltYWdlLmggKi8sCisJCQkJNzJCQUMzQTYyM0UxNzMyODAwOEQ3NDFDIC8qIFBsYXRmb3JtSW1h
Z2VCdWZmZXIuaCAqLywKKwkJCQk1NTA2NDBBRDI0MDc1NkRBMDBBQUUwNDUgLyogUGxhdGZvcm1J
bWFnZUJ1ZmZlckJhY2tlbmQuaCAqLywKKwkJCQkwNTYyRjk2MDE1NzNGODhGMDAzMUNBMTYgLyog
UGxhdGZvcm1MYXllci5oICovLAorCQkJCUNFRUZDRDdCMTlEQjMzREMwMDM4NzZENyAvKiBQbGF0
Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXIuaCAqLywKKwkJCQkwNzI4NDdFMjE2RUJDNUIwMDA0M0NG
QTQgLyogUGxhdGZvcm1UZXh0VHJhY2suaCAqLywKKwkJCQkwNzRFODJCODE4QTY5RjBFMDA3RUY1
NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmNwcCAqLywKKwkJCQkwNzRFODJCOTE4QTY5RjBFMDA3
RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmggKi8sCisJCQkJQkNBQjQxN0YxM0UzNTZFODAw
RDhBQUYzIC8qIFJlZ2lvbi5jcHAgKi8sCisJCQkJQkNBQjQxODAxM0UzNTZFODAwRDhBQUYzIC8q
IFJlZ2lvbi5oICovLAorCQkJCTdCRTcyNjVCMjU3NjNCOEQwMEU4NUQ5OCAvKiBSZW1vdGVHcmFw
aGljc0NvbnRleHRHTFByb3h5QmFzZS5jcHAgKi8sCisJCQkJN0I5MDQxNkUyNTUwMTEwOTAwNkVF
QjhDIC8qIFJlbW90ZUdyYXBoaWNzQ29udGV4dEdMUHJveHlCYXNlLmggKi8sCisJCQkJMDczQTE1
NTEyMTc3QTM5ODAwRUEwOEYyIC8qIFJlbW90ZVZpZGVvU2FtcGxlLmNwcCAqLywKKwkJCQkwNzNB
MTU1MzIxNzdBMzlBMDBFQTA4RjIgLyogUmVtb3RlVmlkZW9TYW1wbGUuaCAqLywKKwkJCQk3Mjk5
QkM2NjIzRDY4NkM2MDBDQzY4ODMgLyogUmVuZGVyaW5nTW9kZS5oICovLAorCQkJCTcyOUQwNTJF
MjUzMTNFMjYwMDQyMjA5OCAvKiBSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXIuaCAqLywKKwkJ
CQlBNzNGOTVGQzEyQzk3QkZFMDAzMUFBRjkgLyogUm91bmRlZFJlY3QuY3BwICovLAorCQkJCUE3
M0Y5NUZEMTJDOTdCRkUwMDMxQUFGOSAvKiBSb3VuZGVkUmVjdC5oICovLAorCQkJCTBGM0RENDRE
MTJGNUVBMUIwMDBEOTE5MCAvKiBTaGFkb3dCbHVyLmNwcCAqLywKKwkJCQkwRjNERDQ0RTEyRjVF
QTFCMDAwRDkxOTAgLyogU2hhZG93Qmx1ci5oICovLAorCQkJCTFERDEyN0FDMjU2RTNBODcwMEIy
MjdENyAvKiBTb3VyY2VCdWZmZXJQcml2YXRlLmNwcCAqLywKKwkJCQlDRDY0MUVCMjE4MThGNUVE
MDBFRTRDNDEgLyogU291cmNlQnVmZmVyUHJpdmF0ZS5oICovLAorCQkJCUNEQzhCNUFDMTgwNEFF
NUQwMDE2RTY4NSAvKiBTb3VyY2VCdWZmZXJQcml2YXRlQ2xpZW50LmggKi8sCisJCQkJN0M4M0RF
ODUxRDA0Q0JENDAwRkVCQ0YzIC8qIFNwcmluZ1NvbHZlci5oICovLAorCQkJCUIyMzU0MEYwMEQw
MDc4MkUwMDIzODJGQSAvKiBTdHJpbmdUcnVuY2F0b3IuY3BwICovLAorCQkJCUIyMzU0MEYxMEQw
MDc4MkUwMDIzODJGQSAvKiBTdHJpbmdUcnVuY2F0b3IuaCAqLywKKwkJCQkwODc1NThDNDEzQjRB
NTdEMDBGNDkzMDcgLyogU3Vycm9nYXRlUGFpckF3YXJlVGV4dEl0ZXJhdG9yLmggKi8sCisJCQkJ
M0JCNkI4MEYyMkE3RDMxMTAwM0EyQTY5IC8qIFRhYlNpemUuaCAqLywKKwkJCQkzNzZEQ0NFMDEz
QjRGOTY2MDAyRUJFRkMgLyogVGV4dFJ1bi5jcHAgKi8sCisJCQkJQTgyNEI0NjQwRTJFRjJFQTAw
ODFBN0I3IC8qIFRleHRSdW4uaCAqLywKKwkJCQlDRDFFNzM0NjE2N0JDNzhFMDA5QTg4NUQgLyog
VGV4dFRyYWNrUmVwcmVzZW50YXRpb24uY3BwICovLAorCQkJCUNERDFFNTI1MTY3QkE1NjQwMENF
ODIwQiAvKiBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbi5oICovLAorCQkJCTFBRjg5QTQxMTUxOEZE
RUEwMEU1NDdCNSAvKiBUaWxlZEJhY2tpbmcuaCAqLywKKwkJCQkwNzZFMTFCRTFGNjgzRTBEMDAx
NzczOTUgLyogVHJhY2tQcml2YXRlQmFzZS5jcHAgKi8sCisJCQkJQkU5MTNEN0YxODFFRjhFNTAw
RENCMDlFIC8qIFRyYWNrUHJpdmF0ZUJhc2UuaCAqLywKKwkJCQlFNEFGQ0ZBNDBEQUYyOUEzMDBG
NUY1NUMgLyogVW5pdEJlemllci5oICovLAorCQkJCTBGNUE1N0NBMjI5QjE4QUUwMDI1RURBOSAv
KiBWZWxvY2l0eURhdGEuY3BwICovLAorCQkJCTBGMUEwQzM2MjI5QTQ4MTgwMEQzN0FEQiAvKiBW
ZWxvY2l0eURhdGEuaCAqLywKKwkJCQkxREFCMzExMzI1MUQ3MjVDMDBGQzk0ODUgLyogVmlkZW9M
YXllck1hbmFnZXIuaCAqLywKKwkJCQkwNzUwMzNBNjI1MkJEMzY4MDBGNzBDRTMgLyogVmlkZW9Q
bGF5YmFja1F1YWxpdHlNZXRyaWNzLmggKi8sCisJCQkJQkVGMjlFRUExNzE1REQwOTAwQzRCNEM5
IC8qIFZpZGVvVHJhY2tQcml2YXRlLmggKi8sCisJCQkJQ0Q2RkU1QkIyNEJDRTdCNjAwOUZDREE0
IC8qIFZQOVV0aWxpdGllcy5jcHAgKi8sCisJCQkJQ0Q2RkU1QkEyNEJDRTdCNjAwOUZDREE0IC8q
IFZQOVV0aWxpdGllcy5oICovLAorCQkJCTE0MTFEQ0IwMTY0QzM5QTgwMEQ0OUJDMSAvKiBXaWR0
aENhY2hlLmggKi8sCisJCQkJOTM5QjAyRUMwRUEyREJDNDAwQzU0NTcwIC8qIFdpZHRoSXRlcmF0
b3IuY3BwICovLAorCQkJCTkzOUIwMkVEMEVBMkRCQzQwMEM1NDU3MCAvKiBXaWR0aEl0ZXJhdG9y
LmggKi8sCisJCQkJNTAxQkFBQTgxMzk1MEUyQzAwRjdBQ0VCIC8qIFdpbmRSdWxlLmggKi8sCisJ
CQkJMzc5OTE5OTQxMjAwRERGNDAwRUEwNDFDIC8qIFdPRkZGaWxlRm9ybWF0LmNwcCAqLywKKwkJ
CQkzNzk5MTk5NTEyMDBEREY0MDBFQTA0MUMgLyogV09GRkZpbGVGb3JtYXQuaCAqLywKKwkJCSk7
CisJCQlwYXRoID0gZ3JhcGhpY3M7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9Owor
CQlCMkIyNjQ1OTBEMDBBNzdFMDAwQUNDMUQgLyogY2YgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTM3MUE2N0NBMTFDNkM3REIwMDA0N0I4QiAvKiBIeXBo
ZW5hdGlvbkNGLmNwcCAqLywKKwkJCSk7CisJCQlwYXRoID0gY2Y7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQlCMkMzRDlFQzBEMDA2QzFEMDBFRjZGMjYgLyogdGV4dCAqLyA9
IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQjJCMjY0NTkwRDAw
QTc3RTAwMEFDQzFEIC8qIGNmICovLAorCQkJCTFDMTY1RTRGMjNFQ0Y1NUUwMEIwRkNGQiAvKiBj
b2NvYSAqLywKKwkJCQlBNTE2RThCMjEzNkUwNEMwMDA3NkMzQzAgLyogaW9zICovLAorCQkJCUIy
QzNEOUY5MEQwMDZDMUQwMEVGNkYyNiAvKiBtYWMgKi8sCisJCQkJQjJDM0Q5RjIwRDAwNkMxRDAw
RUY2RjI2IC8qIEJpZGlDb250ZXh0LmNwcCAqLywKKwkJCQlCMkMzRDlGMzBEMDA2QzFEMDBFRjZG
MjYgLyogQmlkaUNvbnRleHQuaCAqLywKKwkJCQlCMkMzRDlGNDBEMDA2QzFEMDBFRjZGMjYgLyog
QmlkaVJlc29sdmVyLmggKi8sCisJCQkJQThDNDAyOTIxMzQ4QjIyMjAwNjNGMUU1IC8qIEJpZGlS
dW5MaXN0LmggKi8sCisJCQkJQzU1OTJGNzcxQTkyQUEyODAwMUY4ODYyIC8qIENoYXJhY3RlclBy
b3BlcnRpZXMuaCAqLywKKwkJCQkwRkRBN0MyMDE4ODMyQkNDMDBDOTU0QjUgLyogRGF0ZVRpbWVG
b3JtYXQuY3BwICovLAorCQkJCTQ1M0VCNjM1MTU5QzU3MDQwMDAwMUJCNyAvKiBEYXRlVGltZUZv
cm1hdC5oICovLAorCQkJCUNFQ0NGQzNBMTQxOTczRDUwMDJBMEFDMSAvKiBEZWNvZGVFc2NhcGVT
ZXF1ZW5jZXMuaCAqLywKKwkJCQlERkM2MTBBMjI0RkIyQTdDMDA2MjU0QzggLyogRW5jb2RpbmdU
YWJsZXMuY3BwICovLAorCQkJCURGQzYxMEE0MjRGQjJBN0QwMDYyNTRDOCAvKiBFbmNvZGluZ1Rh
Ymxlcy5oICovLAorCQkJCUJDNEE1MzM4MjU2MDYzOTgwMDI4QzU5MiAvKiBGb250UmVuZGVyaW5n
TW9kZS5oICovLAorCQkJCTM3NUNEMjMxMTE5RDQzQzgwMEEyQTg1OSAvKiBIeXBoZW5hdGlvbi5o
ICovLAorCQkJCTc2MzNBNzI1MTNEOEIzM0EwMDg1MDFCNiAvKiBMb2NhbGVUb1NjcmlwdE1hcHBp
bmcuY3BwICovLAorCQkJCTc2MzNBNzI0MTNEOEIzM0EwMDg1MDFCNiAvKiBMb2NhbGVUb1Njcmlw
dE1hcHBpbmcuaCAqLywKKwkJCQlGNTQ0Rjc4NjE1Q0ZCMkE4MDBBRjMzQTggLyogUGxhdGZvcm1M
b2NhbGUuY3BwICovLAorCQkJCUY1NDRGNzg3MTVDRkIyQTgwMEFGMzNBOCAvKiBQbGF0Zm9ybUxv
Y2FsZS5oICovLAorCQkJCTM3OUUzNzE0MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFi
bGUuY3BwICovLAorCQkJCTM3OUUzNzE1MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFi
bGUuaCAqLywKKwkJCQlCMkMzRDlGRTBEMDA2QzFEMDBFRjZGMjYgLyogU2VnbWVudGVkU3RyaW5n
LmNwcCAqLywKKwkJCQlCMkMzRDlGRjBEMDA2QzFEMDBFRjZGMjYgLyogU2VnbWVudGVkU3RyaW5n
LmggKi8sCisJCQkJOUI2QzQxNTIxMzQ0OTQ5MDAwMDg1QjYyIC8qIFN0cmluZ1dpdGhEaXJlY3Rp
b24uaCAqLywKKwkJCQk5N0MwNzg0RjExNjVENUJFMDAzQTMyRUYgLyogU3VmZml4VHJlZS5oICov
LAorCQkJCTM3MkMwMEMzMTI5NjExRjEwMDVDOTU3NSAvKiBUZXh0Qm91bmRhcmllcy5jcHAgKi8s
CisJCQkJQjJDM0RBMDQwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRCb3VuZGFyaWVzLmggKi8sCisJ
CQkJQTcxNTFCRDcxMkYxNTU4RjAwNUEwRjY0IC8qIFRleHRDaGVja2VyQ2xpZW50LmggKi8sCisJ
CQkJQTc3RDAwMTExMzNCMEFFQjAwRDY2NThDIC8qIFRleHRDaGVja2luZy5oICovLAorCQkJCUIy
QzNEQTA5MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29kZWMuY3BwICovLAorCQkJCUIyQzNEQTBB
MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29kZWMuaCAqLywKKwkJCQkyNkU5OEEwRjEzMEE5RkNB
MDA4RUI3QjIgLyogVGV4dENvZGVjQVNDSUlGYXN0UGF0aC5oICovLAorCQkJCURGOTVCMTQ2MjRG
REFGRDIwMEIxRjRENyAvKiBUZXh0Q29kZWNDSksuY3BwICovLAorCQkJCURGOTVCMTQ4MjRGREFG
RDMwMEIxRjRENyAvKiBUZXh0Q29kZWNDSksuaCAqLywKKwkJCQlCMkMzREEwQjBEMDA2QzFEMDBF
RjZGMjYgLyogVGV4dENvZGVjSUNVLmNwcCAqLywKKwkJCQlCMkMzREEwQzBEMDA2QzFEMDBFRjZG
MjYgLyogVGV4dENvZGVjSUNVLmggKi8sCisJCQkJQjJDM0RBMEQwRDAwNkMxRDAwRUY2RjI2IC8q
IFRleHRDb2RlY0xhdGluMS5jcHAgKi8sCisJCQkJQjJDM0RBMEUwRDAwNkMxRDAwRUY2RjI2IC8q
IFRleHRDb2RlY0xhdGluMS5oICovLAorCQkJCTU3RUY1RTYxMUQyMEQyODcwMDE3MUU2MCAvKiBU
ZXh0Q29kZWNSZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJNTdFRjVFNUYxRDIwQzgzOTAwMTcxRTYw
IC8qIFRleHRDb2RlY1JlcGxhY2VtZW50LmggKi8sCisJCQkJNUMwMDE1MjEyNTAwMTEwMDAwOTRB
QTkzIC8qIFRleHRDb2RlY1NpbmdsZUJ5dGUuY3BwICovLAorCQkJCTVDMDAxNTIzMjUwMDExMDEw
MDk0QUE5MyAvKiBUZXh0Q29kZWNTaW5nbGVCeXRlLmggKi8sCisJCQkJQjJDM0RBMEYwRDAwNkMx
RDAwRUY2RjI2IC8qIFRleHRDb2RlY1VzZXJEZWZpbmVkLmNwcCAqLywKKwkJCQlCMkMzREExMDBE
MDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjVXNlckRlZmluZWQuaCAqLywKKwkJCQlCMkMzREEx
MTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjVVRGMTYuY3BwICovLAorCQkJCUIyQzNEQTEy
MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0Q29kZWNVVEYxNi5oICovLAorCQkJCTkzNDNDQjdGMTJG
MjVFNTEwMDMzQzVFRSAvKiBUZXh0Q29kZWNVVEY4LmNwcCAqLywKKwkJCQk5MzQzQ0I4MDEyRjI1
RTUxMDAzM0M1RUUgLyogVGV4dENvZGVjVVRGOC5oICovLAorCQkJCUJDNEE1MzNBMjU2MDY0RTEw
MDI4QzU5MiAvKiBUZXh0RGlyZWN0aW9uLmggKi8sCisJCQkJQjJDM0RBMTYwRDAwNkMxRDAwRUY2
RjI2IC8qIFRleHRFbmNvZGluZy5jcHAgKi8sCisJCQkJQjJDM0RBMTcwRDAwNkMxRDAwRUY2RjI2
IC8qIFRleHRFbmNvZGluZy5oICovLAorCQkJCUMxMDVEQTYzMEYzQUE2QjgwMDFERDQ0RiAvKiBU
ZXh0RW5jb2RpbmdEZXRlY3Rvci5oICovLAorCQkJCUMxMDVEQTYxMEYzQUE2OEYwMDFERDQ0RiAv
KiBUZXh0RW5jb2RpbmdEZXRlY3RvcklDVS5jcHAgKi8sCisJCQkJQjJDM0RBMTgwRDAwNkMxRDAw
RUY2RjI2IC8qIFRleHRFbmNvZGluZ1JlZ2lzdHJ5LmNwcCAqLywKKwkJCQlCMkMzREExOTBEMDA2
QzFEMDBFRjZGMjYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnkuaCAqLywKKwkJCQlCMkMzREExNTBE
MDA2QzFEMDBFRjZGMjYgLyogVGV4dEZsYWdzLmggKi8sCisJCQkJQTg2M0UyMDAxMzQzNDEyMDAw
Mjc0OTI2IC8qIFVuaWNvZGVCaWRpLmggKi8sCisJCQkJMTQ0NzZBQTcxNURDNEJCMTAwMzA1REIy
IC8qIFdyaXRpbmdNb2RlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHRleHQ7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQlCMkMzRDlGOTBEMDA2QzFEMDBFRjZGMjYgLyogbWFj
ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlCMkFGRkM4
QzBEMDBBNURGMDAzMDA3NEQgLyogVGV4dEJvdW5kYXJpZXMubW0gKi8sCisJCQkJQ0VBODQ3MjAy
MTI2MjJBRDAwOTQwODA5IC8qIFRleHRDaGVja2luZ01hYy5tbSAqLywKKwkJCQlBMUY1NURDNDFG
NTREM0YwMDBFREI3NUYgLyogVGV4dEVuY29kaW5nUmVnaXN0cnlNYWMubW0gKi8sCisJCQkpOwor
CQkJcGF0aCA9IG1hYzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUIyRjM0
RkU3MEU4MkY4MTcwMEY2MjdDRCAvKiBjZiAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJN0VFNjg0NEUxMkQyNkUzODAwRTc5NDE1IC8qIEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlLmggKi8sCisJCQkJNUYyREJCRTgxNzhFMzM2OTAwMTQxNDg2IC8qIENlcnRp
ZmljYXRlSW5mby5oICovLAorCQkJCTVGMkRCQkU3MTc4RTMzMkQwMDE0MTQ4NiAvKiBDZXJ0aWZp
Y2F0ZUluZm9DRk5ldC5jcHAgKi8sCisJCQkJQjJGMzRGRTgwRTgyRjgyNzAwRjY0OENEIC8qIERO
U1Jlc29sdmVRdWV1ZUNGTmV0LmNwcCAqLywKKwkJCQk3RUU2ODQ1QzEyRDI2RTM4MDBGRjk0MTUg
LyogRE5TUmVzb2x2ZVF1ZXVlQ0ZOZXQuaCAqLywKKwkJCQk3RUU2ODQ1MzEyRDI2RTM4MDBFNzk0
MTUgLyogRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAgKi8sCisJCQkJN0VFNjg0NTQxMkQyNkUzODAw
RTc5NDE1IC8qIEZvcm1EYXRhU3RyZWFtQ0ZOZXQuaCAqLywKKwkJCQlFMTNFRjM0NzE2ODUwQzQ3
MDAzNEM4M0YgLyogTmV0d29ya1N0b3JhZ2VTZXNzaW9uQ0ZOZXQuY3BwICovLAorCQkJCTFBRjhF
MUMxMTI1NjczRTAwMDIzMEZGNyAvKiBQcm94eVNlcnZlckNGTmV0LmNwcCAqLywKKwkJCQk3RUU2
ODQ1NzEyRDI2RTM4MDBFNzk0MTUgLyogUmVzb3VyY2VFcnJvci5oICovLAorCQkJCTdFRTY4NDVB
MTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZVJlcXVlc3QuaCAqLywKKwkJCQk3RUU2ODQ1QjEy
RDI2RTM4MDBFNzk0MTUgLyogUmVzb3VyY2VSZXF1ZXN0Q0ZOZXQuY3BwICovLAorCQkJCTdFRTY4
NDVDMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZVJlcXVlc3RDRk5ldC5oICovLAorCQkJCTdF
RTY4NDVEMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZVJlc3BvbnNlLmggKi8sCisJCQkJNTFB
QkFFMUMxMDNDMTkxMzAwOEM1MjYwIC8qIFNvY2tldFN0cmVhbUhhbmRsZUltcGwuaCAqLywKKwkJ
CQk1MUFCQUUxRDEwM0MxOTEzMDA4QzUyNjAgLyogU29ja2V0U3RyZWFtSGFuZGxlSW1wbENGTmV0
LmNwcCAqLywKKwkJCSk7CisJCQlwYXRoID0gY2Y7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQlCNTMyMEQ2ODEyMkEyNEU5MDAyRDE0NDAgLyogY29jb2EgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNERjk5NTAxMjRDMjgxNDkwMDJF
QTA2MiAvKiBBdWRpb1RyYWNrUHJpdmF0ZVdlYk0uY3BwICovLAorCQkJCUNERjk5NTAwMjRDMjgx
NDkwMDJFQTA2MiAvKiBBdWRpb1RyYWNrUHJpdmF0ZVdlYk0uaCAqLywKKwkJCQlGNDhEMkFBMzIx
NTk3NDBEMDBDNjc1MkIgLyogQ29sb3JDb2NvYS5oICovLAorCQkJCUY0OEQyQUE0MjE1OTc0MEQw
MEM2NzUyQiAvKiBDb2xvckNvY29hLm1tICovLAorCQkJCUIyNzUzNTRDMEIwNTM4MTQwMDJDRTY0
RiAvKiBGbG9hdFJlY3RDb2NvYS5tbSAqLywKKwkJCQkxQzM5NjlDRjFCNzQyMTFFMDAyQkNGQTcg
LyogRm9udENhY2hlQ29yZVRleHQuY3BwICovLAorCQkJCUMyNDU4RTYxMUZFODk3OUUwMDU5NDc1
OSAvKiBGb250Q2FjaGVDb3JlVGV4dC5oICovLAorCQkJCUIyQUZGQzc4MEQwMEE1QzEwMDMwMDc0
RCAvKiBGb250Q2FzY2FkZUNvY29hLm1tICovLAorCQkJCTFDNkZEOEIwMjUwQTM1RjEwMEQ2RTky
MCAvKiBGb250Q29jb2EuY3BwICovLAorCQkJCTFDMTJBQzJDMUVFNzc5OTUwMDc5RTBBMCAvKiBG
b250RGVzY3JpcHRpb25Db2NvYS5jcHAgKi8sCisJCQkJMUMxMkFDMjgxRUU3NzhBRTAwNzlFMEEw
IC8qIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uQ29yZVRleHQuY3BwICovLAorCQkJCTFDMTJBQzI5
MUVFNzc4QUUwMDc5RTBBMCAvKiBGb250RmFtaWx5U3BlY2lmaWNhdGlvbkNvcmVUZXh0LmggKi8s
CisJCQkJQjUzMjBENkExMjJBMjRFOTAwMkQxNDQwIC8qIEZvbnRQbGF0Zm9ybURhdGFDb2NvYS5t
bSAqLywKKwkJCQlCMjc3QjQwMzBCMjJGMzdDMDAwNEJFQzYgLyogR3JhcGhpY3NDb250ZXh0Q29j
b2EubW0gKi8sCisJCQkJN0I2REM4MTUyNTcxMkU5MTAwMzgwQzcwIC8qIEdyYXBoaWNzQ29udGV4
dEdMSU9TdXJmYWNlU3dhcENoYWluLmNwcCAqLywKKwkJCQk3QjZEQzgxNzI1NzEyRTkyMDAzODBD
NzAgLyogR3JhcGhpY3NDb250ZXh0R0xJT1N1cmZhY2VTd2FwQ2hhaW4uaCAqLywKKwkJCQk0OUZG
QkYxQzExQzg1NTBFMDA2QTcxMTggLyogR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbSAq
LywKKwkJCQlDREE1OTU5NjIxNDZERjc4MDBBODQxODUgLyogSEVWQ1V0aWxpdGllc0NvY29hLmgg
Ki8sCisJCQkJQ0RBNTk1OTcyMTQ2REY3ODAwQTg0MTg1IC8qIEhFVkNVdGlsaXRpZXNDb2NvYS5t
bSAqLywKKwkJCQlCMjc1MzU1MDBCMDUzODE0MDAyQ0U2NEYgLyogSW50UmVjdENvY29hLm1tICov
LAorCQkJCTJEMEI0QUE5MThEQTFDQ0QwMDQzNERFMSAvKiBJT1N1cmZhY2UuaCAqLywKKwkJCQky
RDBCNEFBQTE4REExQ0NEMDA0MzRERTEgLyogSU9TdXJmYWNlLm1tICovLAorCQkJCUFEOUZGNkUw
MTkwODM5MUQwMDNCNjFFMCAvKiBJT1N1cmZhY2VQb29sQ29jb2EubW0gKi8sCisJCQkJQ0RDNDhB
QzgyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlhRW5naW5lQ29uZmlndXJhdGlvbkZhY3RvcnlDb2Nv
YS5jcHAgKi8sCisJCQkJQ0RDNDhBQzcyMTQ5Q0YyQTAwMjRGRDU5IC8qIE1lZGlhRW5naW5lQ29u
ZmlndXJhdGlvbkZhY3RvcnlDb2NvYS5oICovLAorCQkJCTA3Rjg3NjgzMUFENEE5NDUwMDkwNTg0
OSAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dC5oICovLAorCQkJCTFEMDA4QUE1MjYyMTA4
QzAwMEVFM0FERSAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dC5tbSAqLywKKwkJCQkzMTY0
N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovLAorCQkJCTMx
NjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovLAorCQkJ
CTdCNjRDMEI0MjU0QzNCMTYwMDA2QjRBRiAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5
QmFzZUNvY29hLm1tICovLAorCQkJCUNERUIzRDcyMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VC
dWZmZXJQYXJzZXIuY3BwICovLAorCQkJCUNERUIzRDczMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3Vy
Y2VCdWZmZXJQYXJzZXIuaCAqLywKKwkJCQlDRDhGNjY3MDI0QzBGMjA4MDAwQzQyMUMgLyogU291
cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAgKi8sCisJCQkJQ0Q4RjY2NzIyNEMwRjIwODAwMEM0MjFD
IC8qIFNvdXJjZUJ1ZmZlclBhcnNlcldlYk0uaCAqLywKKwkJCQlFNEU4QjRFRDIxNkI3OUY0MDBC
ODgzNEQgLyogU3lzdGVtRm9udERhdGFiYXNlQ29yZVRleHQuY3BwICovLAorCQkJCUU0RThCNEVB
MjE2Qjc5RTUwMEI4ODM0RCAvKiBTeXN0ZW1Gb250RGF0YWJhc2VDb3JlVGV4dC5oICovLAorCQkJ
CTUyNjcyNEYyMUNCMkZERjYwMDc1OTc0RCAvKiBUZXh0VHJhY2tSZXByZXNlbnRhdGlvbkNvY29h
LmggKi8sCisJCQkJNTI2NzI0RjExQ0IyRkRGNjAwNzU5NzREIC8qIFRleHRUcmFja1JlcHJlc2Vu
dGF0aW9uQ29jb2EubW0gKi8sCisJCQkJQ0RGOTk0RkYyNEMyODEzNjAwMkVBMDYyIC8qIFZpZGVv
VHJhY2tQcml2YXRlV2ViTS5jcHAgKi8sCisJCQkJQ0RGOTk0RkUyNEMyODEzNjAwMkVBMDYyIC8q
IFZpZGVvVHJhY2tQcml2YXRlV2ViTS5oICovLAorCQkJCUNENkZFNUI3MjRCQ0U2NDUwMDlGQ0RB
NCAvKiBWUDlVdGlsaXRpZXNDb2NvYS5oICovLAorCQkJCUNENkZFNUI4MjRCQ0U2NDUwMDlGQ0RB
NCAvKiBWUDlVdGlsaXRpZXNDb2NvYS5tbSAqLywKKwkJCQkyRDNFRjQ0NDE5MTc5MTVDMDAwMzQx
ODQgLyogV2ViQWN0aW9uRGlzYWJsaW5nQ0FMYXllckRlbGVnYXRlLmggKi8sCisJCQkJMkQzRUY0
NDUxOTE3OTE1QzAwMDM0MTg0IC8qIFdlYkFjdGlvbkRpc2FibGluZ0NBTGF5ZXJEZWxlZ2F0ZS5t
bSAqLywKKwkJCQkyRDNFRjQ0NjE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5ZXJFeHRy
YXMuaCAqLywKKwkJCQkyRDNFRjQ0NzE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5ZXJF
eHRyYXMubW0gKi8sCisJCQkJQ0Q1RDI3NzYxRTgzMThFMDAwRDgwQTNEIC8qIFdlYkNvcmVEZWNv
bXByZXNzaW9uU2Vzc2lvbi5oICovLAorCQkJCUNENUQyNzc1MUU4MzE4RTAwMEQ4MEEzRCAvKiBX
ZWJDb3JlRGVjb21wcmVzc2lvblNlc3Npb24ubW0gKi8sCisJCQkJNDlGRkJGM0QxMUM5M0VFMzAw
NkE3MTE4IC8qIFdlYkdMTGF5ZXIuaCAqLywKKwkJCQk0OUZGQkYzRTExQzkzRUUzMDA2QTcxMTgg
LyogV2ViR0xMYXllci5tbSAqLywKKwkJCQkwN0Y1Q0ZGNDI1ODJBNEY4MDA2NjJFRjUgLyogV2Vi
TUF1ZGlvVXRpbGl0aWVzQ29jb2EuaCAqLywKKwkJCQkwN0Y1Q0ZGMjI1ODJBNEY4MDA2NjJFRjUg
LyogV2ViTUF1ZGlvVXRpbGl0aWVzQ29jb2EubW0gKi8sCisJCQkpOworCQkJcGF0aCA9IGNvY29h
OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQkMxQTM3OTAwOTdDNkY5NzAw
MTlGM0Q4IC8qIGJpbmRpbmdzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQlCQzFBMzc5MzA5N0M2RkIxMDAxOUYzRDggLyoganMgKi8sCisJCQkJN0M1MjIy
OTQxRTFEQUREQzAwMkNCOEY3IC8qIHNjcmlwdHMgKi8sCisJCQkJN0M1MjIyOTUxRTFEQURGODAw
MkNCOEY3IC8qIElETFR5cGVzLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGJpbmRpbmdzOworCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJCXRhYldpZHRoID0gNDsKKwkJCXVzZXNUYWJzID0g
MDsKKwkJfTsKKwkJQkMxQTM3OTMwOTdDNkZCMTAwMTlGM0Q4IC8qIGpzICovID0geworCQkJaXNh
ID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlCQ0NFNThBNzEwNjFFODJGMDA4RkIz
NUEgLyogQ2FsbGJhY2sgT2JqZWN0cyAqLywKKwkJCQlCQ0NFNThCNDEwNjFFOTI1MDA4RkIzNUEg
LyogQ29uc3RydWN0b3JzICovLAorCQkJCTdDOEUzNDkxMUU0QTMzNzMwMDU0Q0UyMyAvKiBDb252
ZXJzaW9ucyAqLywKKwkJCQlCQzRFREVGNzBDMDhGNDE0MDA3RURENDkgLyogQ3VzdG9tICovLAor
CQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8sCisJCQkJ
MkRGQTQ4OEUxREI1NDFDMjAwMzYyQjk5IC8qIEJ1ZmZlclNvdXJjZS5oICovLAorCQkJCUUzMDdE
RUM2MUQ4MUU0NDgwMDE0MUNBRiAvKiBDYWNoZWRNb2R1bGVTY3JpcHRMb2FkZXIuY3BwICovLAor
CQkJCUUzMDdERUM3MUQ4MUU0NDgwMDE0MUNBRiAvKiBDYWNoZWRNb2R1bGVTY3JpcHRMb2FkZXIu
aCAqLywKKwkJCQlFMzA1OTI2NTFFMjdBM0M2MDBENTdDOTggLyogQ2FjaGVkU2NyaXB0RmV0Y2hl
ci5jcHAgKi8sCisJCQkJRTMwNTkyNjYxRTI3QTNDNjAwRDU3Qzk4IC8qIENhY2hlZFNjcmlwdEZl
dGNoZXIuaCAqLywKKwkJCQlCQ0Q1MzM2MzBFRDY4NDg5MDA4ODc0NjggLyogQ2FjaGVkU2NyaXB0
U291cmNlUHJvdmlkZXIuaCAqLywKKwkJCQkwRjYwRjMyOTFERkJCMTA0MDA0MTZENkMgLyogQ29t
bW9uVk0uY3BwICovLAorCQkJCTBGNjBGMzJBMURGQkIxMDQwMDQxNkQ2QyAvKiBDb21tb25WTS5o
ICovLAorCQkJCTBGOURBQTBDMUZEMUM2NjMwMDc5QzVCMiAvKiBET01HQ091dHB1dENvbnN0cmFp
bnQuY3BwICovLAorCQkJCTBGOURBQTBFMUZEMUM2NjQwMDc5QzVCMiAvKiBET01HQ091dHB1dENv
bnN0cmFpbnQuaCAqLywKKwkJCQk3QzUxNkFEMjFGMzUyNTIwMDAzNEI2QkYgLyogRE9NUHJvbWlz
ZVByb3h5LmggKi8sCisJCQkJQkM1M0RBNDcxMTQzMTM0RDAwMEQ4MTdFIC8qIERPTVdyYXBwZXJX
b3JsZC5jcHAgKi8sCisJCQkJQkM1M0RBMkQxMTQzMTIxRTAwMEQ4MTdFIC8qIERPTVdyYXBwZXJX
b3JsZC5oICovLAorCQkJCTJEMjkzODY5MjM1RjZCNjgwMEM3RjNCMiAvKiBFeGNlcHRpb25EZXRh
aWxzLmggKi8sCisJCQkJMTQzMkU4NDgwQzUxNDkzRjAwQjE1MDBGIC8qIEdDQ29udHJvbGxlci5j
cHAgKi8sCisJCQkJMTQzMkU4NDYwQzUxNDkzODAwQjE1MDBGIC8qIEdDQ29udHJvbGxlci5oICov
LAorCQkJCUM1ODVBNjYwMTFENEZBQzUwMDRDM0U0QiAvKiBJREJCaW5kaW5nVXRpbGl0aWVzLmNw
cCAqLywKKwkJCQlDNTg1QTY2MTExRDRGQUM1MDA0QzNFNEIgLyogSURCQmluZGluZ1V0aWxpdGll
cy5oICovLAorCQkJCTQxNDE4QTAzMjU2NDNFMTIwMDM2MzQxNyAvKiBJbnRlcm5hbFdyaXRhYmxl
U3RyZWFtLmNwcCAqLywKKwkJCQk0MTQxOEEwNDI1NjQzRTEzMDAzNjM0MTcgLyogSW50ZXJuYWxX
cml0YWJsZVN0cmVhbS5oICovLAorCQkJCTlCRDRFOTE0MUM0NjI4NzIwMDUwNjVCQyAvKiBKU0N1
c3RvbUVsZW1lbnRJbnRlcmZhY2UuY3BwICovLAorCQkJCTlCRDRFOTE1MUM0NjI4NzIwMDUwNjVC
QyAvKiBKU0N1c3RvbUVsZW1lbnRJbnRlcmZhY2UuaCAqLywKKwkJCQk3QzU3QkZFNjFFREUyRjVC
MDA1MzRBNDggLyogSlNET01BYnN0cmFjdE9wZXJhdGlvbnMuaCAqLywKKwkJCQk3QzgxMzlBMzFF
RDYyODFEMDBDRTI2RTggLyogSlNET01BdHRyaWJ1dGUuaCAqLywKKwkJCQk5M0I3MEQ0ODA5RUIw
QzdDMDA5RDg0NjggLyogSlNET01CaW5kaW5nLmggKi8sCisJCQkJNDFERUZDQjIxRTU2QzFCOTAw
MEQ5RTVGIC8qIEpTRE9NQmluZGluZ0ludGVybmFscy5qcyAqLywKKwkJCQk3QzQ1QzlDQTFFM0U4
RDJFMDBBQUI1NTggLyogSlNET01CaW5kaW5nU2VjdXJpdHkuY3BwICovLAorCQkJCTdDNDVDOUM5
MUUzRThDRDcwMEFBQjU1OCAvKiBKU0RPTUJpbmRpbmdTZWN1cml0eS5oICovLAorCQkJCUUzQ0Ew
QkZBMjY3M0Y0NzgwMDlGREQ2NyAvKiBKU0RPTUJpbmRpbmdTZWN1cml0eUlubGluZXMuaCAqLywK
KwkJCQk4NDFDNDQxNDI2MEMzOEJBMDBGRjY2NzMgLyogSlNET01DYXN0VGhpc1ZhbHVlLmggKi8s
CisJCQkJN0M0NUM5Q0MxRTNFOEYwODAwQUFCNTU4IC8qIEpTRE9NRXhjZXB0aW9uSGFuZGxpbmcu
Y3BwICovLAorCQkJCTdDNDVDOUM3MUUzRThBRkYwMEFBQjU1OCAvKiBKU0RPTUV4Y2VwdGlvbkhh
bmRsaW5nLmggKi8sCisJCQkJRTFDMzZDQkMwRUIwODA2MjAwNzQxMEJDIC8qIEpTRE9NR2xvYmFs
T2JqZWN0LmNwcCAqLywKKwkJCQlFMUMzNkMwMjBFQjA3NkQ2MDA3NDEwQkMgLyogSlNET01HbG9i
YWxPYmplY3QuaCAqLywKKwkJCQlFMzNEMENCQzI2NzJFMUIzMDA3NEUxODMgLyogSlNET01HbG9i
YWxPYmplY3RJbmxpbmVzLmggKi8sCisJCQkJN0MyQkREM0IxN0M3Rjk4QjAwMzhGRjE1IC8qIEpT
RE9NR2xvYmFsT2JqZWN0VGFzay5jcHAgKi8sCisJCQkJN0MyQkREM0MxN0M3Rjk4QjAwMzhGRjE1
IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovLAorCQkJCTQxQTFCMDFCMUU1NDIzOTYwMDdG
Mzc2OSAvKiBKU0RPTUd1YXJkZWRPYmplY3QuY3BwICovLAorCQkJCTQxQTFCMDFBMUU1NDIzOTYw
MDdGMzc2OSAvKiBKU0RPTUd1YXJkZWRPYmplY3QuaCAqLywKKwkJCQk0MTM4Rjg1NTFEMjUzRUVF
MDAxQ0I2MUUgLyogSlNET01JdGVyYXRvci5jcHAgKi8sCisJCQkJNDEzOEY4NTYxRDI1M0VFRTAw
MUNCNjFFIC8qIEpTRE9NSXRlcmF0b3IuaCAqLywKKwkJCQk0MURFRkNCMzFFNTZDMUI5MDAwRDlF
NUYgLyogSlNET01NYXBMaWtlLmNwcCAqLywKKwkJCQk0MURFRkNCNDFFNTZDMUI5MDAwRDlFNUYg
LyogSlNET01NYXBMaWtlLmggKi8sCisJCQkJN0M4MTM5QTQxRUQ2MjgxRDAwQ0UyNkU4IC8qIEpT
RE9NT3BlcmF0aW9uLmggKi8sCisJCQkJN0M4MTM5QTUxRUQ2MjgxRDAwQ0UyNkU4IC8qIEpTRE9N
T3BlcmF0aW9uUmV0dXJuaW5nUHJvbWlzZS5oICovLAorCQkJCTQxQUYzNzlDMUY4REIxQjEwMDEx
MUMzMSAvKiBKU0RPTVByb21pc2UuY3BwICovLAorCQkJCUUzN0M4NjRGMUVCNjNFMkQwMDg3QzZD
QSAvKiBKU0RPTVByb21pc2UuaCAqLywKKwkJCQlFMTcyQUY4RDE4MTFCQzM3MDBGQkFEQjkgLyog
SlNET01Qcm9taXNlRGVmZXJyZWQuY3BwICovLAorCQkJCUUxNzJBRjhFMTgxMUJDMzcwMEZCQURC
OSAvKiBKU0RPTVByb21pc2VEZWZlcnJlZC5oICovLAorCQkJCTQxM0ExQUExMjM3MUE4QTkwMDdF
RjNBNSAvKiBKU0RPTVNldExpa2UuY3BwICovLAorCQkJCTQxM0ExQTlGMjM3MUE4QTgwMDdFRjNB
NSAvKiBKU0RPTVNldExpa2UuaCAqLywKKwkJCQlCQzY5MzI3MTBEN0UyOTM5MDBBRTQ0RDEgLyog
SlNET01XaW5kb3dCYXNlLmNwcCAqLywKKwkJCQlCQzY5MzI3MjBEN0UyOTM5MDBBRTQ0RDEgLyog
SlNET01XaW5kb3dCYXNlLmggKi8sCisJCQkJNDYwQ0JGMzMxRDRCQ0NGRTAwOTJFODhFIC8qIEpT
RE9NV2luZG93UHJvcGVydGllcy5jcHAgKi8sCisJCQkJNDYwQ0JGMzQxRDRCQ0NGRTAwOTJFODhF
IC8qIEpTRE9NV2luZG93UHJvcGVydGllcy5oICovLAorCQkJCTQxNzBBMkU5MUQ4QzBDQzAwMDMx
ODQ1MiAvKiBKU0RPTVdyYXBwZXIuY3BwICovLAorCQkJCTY1RTBFOTQzMTEzM0M4OUYwMEI0Q0Ix
MCAvKiBKU0RPTVdyYXBwZXIuaCAqLywKKwkJCQk3QzQ1QzlDQjFFM0U4RTQ5MDBBQUI1NTggLyog
SlNET01XcmFwcGVyQ2FjaGUuY3BwICovLAorCQkJCTdDNDVDOUM4MUUzRThCNTEwMEFBQjU1OCAv
KiBKU0RPTVdyYXBwZXJDYWNoZS5oICovLAorCQkJCThGOTM0RDg0MTE4OUYxRUUwMDUwOEQ1RCAv
KiBKU0V4ZWNTdGF0ZS5jcHAgKi8sCisJCQkJOEY5MzREODMxMTg5RjFFRTAwNTA4RDVEIC8qIEpT
RXhlY1N0YXRlLmggKi8sCisJCQkJQjU2NTc2RTQxN0RBNTk5RjAwQTU2QkRDIC8qIEpTRXhlY1N0
YXRlSW5zdHJ1bWVudGF0aW9uLmggKi8sCisJCQkJOTM4NDlDMTYyNEJFMTJFNTAwNDQ4RDVBIC8q
IEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHAgKi8sCisJCQkJOTM4NDlDMjEyNEJF
REQ4ODAwNDQ4RDVBIC8qIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5oICovLAorCQkJ
CUUzQzlBRUM5MjExMzE0NzQwMDQxOUI5MiAvKiBKU01pY3JvdGFza0NhbGxiYWNrLmggKi8sCisJ
CQkJOTNCNzBENEYwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5j
cHAgKi8sCisJCQkJOTNCNzBENTAwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTUGx1Z2luRWxlbWVudEZ1
bmN0aW9ucy5oICovLAorCQkJCTQ2QkNCQkMxMjA4NTAwODAwMDcxMDYzOCAvKiBKU1JlbW90ZURP
TVdpbmRvd0Jhc2UuY3BwICovLAorCQkJCTQ2QkNCQkMwMjA4NTAwN0YwMDcxMDYzOCAvKiBKU1Jl
bW90ZURPTVdpbmRvd0Jhc2UuaCAqLywKKwkJCQk5MzFBRTNCODFGQjgwRUFFMDBGNUVGQjIgLyog
SlNWYWx1ZUluV3JhcHBlZE9iamVjdC5oICovLAorCQkJCUJDQkZCNTNBMERDRDI5Q0YwMDE5QjNF
NSAvKiBKU1dpbmRvd1Byb3h5LmNwcCAqLywKKwkJCQlCQ0JGQjUzQjBEQ0QyOUNGMDAxOUIzRTUg
LyogSlNXaW5kb3dQcm94eS5oICovLAorCQkJCUUxQzM2RDMyMEVCMEEwOTQwMDc0MTBCQyAvKiBK
U1dvcmtlckdsb2JhbFNjb3BlQmFzZS5jcHAgKi8sCisJCQkJRTFDMzZEMzMwRUIwQTA5NDAwNzQx
MEJDIC8qIEpTV29ya2VyR2xvYmFsU2NvcGVCYXNlLmggKi8sCisJCQkJNEJERUEzMkQyMTgwMzQw
NTAwNTJERkNEIC8qIEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5jcHAgKi8sCisJCQkJNEJERUEz
MkIyMTgwMzNFQjAwNTJERkNEIC8qIEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZS5oICovLAorCQkJ
CTcwOUEwMUZEMUUzRDBCQ0MwMDZCMEQ0QyAvKiBNb2R1bGVGZXRjaEZhaWx1cmVLaW5kLmggKi8s
CisJCQkJRTM2NDMyMUEyNUQzN0E2NjAwRjkwRTJBIC8qIE1vZHVsZVNjcmlwdExvYWRlci5oICov
LAorCQkJCUUzNTE4OEIzMjVEMzg3Q0YwMEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGll
bnQuaCAqLywKKwkJCQk0MUI0NTlFRDFGNTVFQkM3MDAwMEY2RkQgLyogUmVhZGFibGVTdHJlYW0u
Y3BwICovLAorCQkJCTQxQjQ1OURBMUY0Q0FEQjkwMDAwRjZGRCAvKiBSZWFkYWJsZVN0cmVhbS5o
ICovLAorCQkJCTQxOEMzOTVFMUM4RjBBQUIwMDUxQzhBMyAvKiBSZWFkYWJsZVN0cmVhbURlZmF1
bHRDb250cm9sbGVyLmNwcCAqLywKKwkJCQk0MThDMzk1RjFDOEYwQUFCMDA1MUM4QTMgLyogUmVh
ZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxlci5oICovLAorCQkJCTUxQkE5NDZGMjNBQzMwNTAw
MDQ0NDg0NiAvKiBSdW5KYXZhU2NyaXB0UGFyYW1ldGVycy5oICovLAorCQkJCTQ2Qjg1OTNBMjYx
NjcyMEMwMDE5RURDNiAvKiBTY3JpcHRCdWZmZXJTb3VyY2VQcm92aWRlci5oICovLAorCQkJCTQx
RjFEMjFFMEVGMzVDMkEwMERBODc1MyAvKiBTY3JpcHRDYWNoZWRGcmFtZURhdGEuY3BwICovLAor
CQkJCTQxRjFEMjFEMEVGMzVDMkEwMERBODc1MyAvKiBTY3JpcHRDYWNoZWRGcmFtZURhdGEuaCAq
LywKKwkJCQk5M0I3MEQ1MzA5RUIwQzdDMDA5RDg0NjggLyogU2NyaXB0Q29udHJvbGxlci5jcHAg
Ki8sCisJCQkJOTNCNzBENTQwOUVCMEM3QzAwOUQ4NDY4IC8qIFNjcmlwdENvbnRyb2xsZXIuaCAq
LywKKwkJCQlBODNFMUM3MjBFNDkwNDJCMDAxNDBCOUMgLyogU2NyaXB0Q29udHJvbGxlck1hYy5t
bSAqLywKKwkJCQlFMzg4Mzg5NDFCQUQxNDVGMDBENjJFRTMgLyogU2NyaXB0TW9kdWxlTG9hZGVy
LmNwcCAqLywKKwkJCQlFMzg4Mzg5NTFCQUQxNDVGMDBENjJFRTMgLyogU2NyaXB0TW9kdWxlTG9h
ZGVyLmggKi8sCisJCQkJOTM0Q0MxMDkwRURCMjIzOTAwQTY1OEYyIC8qIFNjcmlwdFNvdXJjZUNv
ZGUuaCAqLywKKwkJCQk0MTI3RDUzNjBGOEFBQjFEMDBFNDI0RjUgLyogU2NyaXB0U3RhdGUuY3Bw
ICovLAorCQkJCTQxQzc2MEIwMEVERTAzRDMwMEMxNjU1RiAvKiBTY3JpcHRTdGF0ZS5oICovLAor
CQkJCTIyOEMyODQ0MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRXcmFwcGFibGUuaCAqLywKKwkJ
CQkxNDAwRDdBNzE3MTM2RUE3MDA3N0NFMDUgLyogU2NyaXB0V3JhcHBhYmxlSW5saW5lcy5oICov
LAorCQkJCUE3NUU0OTc1MTA3NTJBQ0IwMEM5Qjg5NiAvKiBTZXJpYWxpemVkU2NyaXB0VmFsdWUu
Y3BwICovLAorCQkJCUE3NUU0OTc0MTA3NTJBQ0IwMEM5Qjg5NiAvKiBTZXJpYWxpemVkU2NyaXB0
VmFsdWUuaCAqLywKKwkJCQk3QzUyNjY5NjFGMUIwMkZDMDAwRjA2OEIgLyogU3RyaW5nQWRhcHRv
cnMuaCAqLywKKwkJCQk0MTRCODIwMjFENkRGMEQ5MDA3N0VCRTMgLyogU3RydWN0dXJlZENsb25l
LmNwcCAqLywKKwkJCQk0MTRCODIwMzFENkRGMEQ5MDA3N0VCRTMgLyogU3RydWN0dXJlZENsb25l
LmggKi8sCisJCQkJNDE5QkU3NTIxQkM3RjNEQjAwRTFDODVCIC8qIFdlYkNvcmVCdWlsdGluTmFt
ZXMuaCAqLywKKwkJCQlFMzU4MkMyNDI1MjdGNjY4MDBEMUI3OTAgLyogV2ViQ29yZUpJVE9wZXJh
dGlvbnMuY3BwICovLAorCQkJCUUzNTgyQzI2MjUyN0Y2NjgwMEQxQjc5MCAvKiBXZWJDb3JlSklU
T3BlcmF0aW9ucy5oICovLAorCQkJCTBGN0RGMTQ3MUUyQkYxQTYwMDk1OTUxQiAvKiBXZWJDb3Jl
SlNDbGllbnREYXRhLmNwcCAqLywKKwkJCQlCQzUzRDkxMDExNDMxMENDMDAwRDgxN0UgLyogV2Vi
Q29yZUpTQ2xpZW50RGF0YS5oICovLAorCQkJCTBGMDk5RDA2MTdCOTY4QTEwMEZGODRCOSAvKiBX
ZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuY3BwICovLAorCQkJCTBGMDk5RDA3MTdCOTY4QTEw
MEZGODRCOSAvKiBXZWJDb3JlVHlwZWRBcnJheUNvbnRyb2xsZXIuaCAqLywKKwkJCQk0NjM1MjFB
QzIwODEwOTBFMDBDMjg5MjIgLyogV2luZG93UHJveHkuY3BwICovLAorCQkJCTQ2MzUyMUFBMjA4
MTA5MEIwMEMyODkyMiAvKiBXaW5kb3dQcm94eS5oICovLAorCQkJCUUzNDMyREUzMjVEMzc3RTMw
MDU4RTYxMiAvKiBXb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuY3BwICovLAorCQkJCUUzNDMyREUw
MjVEMzc3RTIwMDU4RTYxMiAvKiBXb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCAqLywKKwkJCQlF
MzQ3RTVGODI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2NyaXB0RmV0Y2hlci5oICovLAorCQkJ
KTsKKwkJCXBhdGggPSBqczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUJD
NEVERUY3MEMwOEY0MTQwMDdFREQ0OSAvKiBDdXN0b20gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTdDRDM0NDFCMUYzMkRFMzAwMDBEQ0Q0OSAvKiBDYWNo
ZWQgQXR0cmlidXRlcyB3LyBJbnZhbGlkYXRpb24gKi8sCisJCQkJN0MzRDhFRTQxRTA4QkFCRTAw
MjNCMDg0IC8qIEdDIC8gV3JhcHBpbmcgT25seSAqLywKKwkJCQk5QkM1RjlERjFENUFBRjZBMDAy
Qjc0OUQgLyogSlNDdXN0b21FbGVtZW50UmVnaXN0cnlDdXN0b20uY3BwICovLAorCQkJCUJDRDlD
MjVFMEMxN0FBNjcwMDVDOTBBMiAvKiBKU0RPTVdpbmRvd0N1c3RvbS5jcHAgKi8sCisJCQkJNjUy
RkJCQkIwREUyN0NCNjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggKi8sCisJCQkJQkM1
ODIzRjQwQzBBOThERjAwNTNGMUI1IC8qIEpTSFRNTEVsZW1lbnRDdXN0b20uY3BwICovLAorCQkJ
CUJDRTFDNDNGMEQ5ODMwRjQwMDNCMDJGMiAvKiBKU0xvY2F0aW9uQ3VzdG9tLmNwcCAqLywKKwkJ
CQk0QjZCNUNCRTIxNjQzNEZCMDA2MDM4MTcgLyogSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZUN1
c3RvbS5jcHAgKi8sCisJCQkJNDE4QzM5NUQxQzhGMEFBQjAwNTFDOEEzIC8qIEpTUmVhZGFibGVT
dHJlYW1Tb3VyY2VDdXN0b20uY3BwICovLAorCQkJCTQ2QkNCQkJFMjA4NTAwNUIwMDcxMDYzOCAv
KiBKU1JlbW90ZURPTVdpbmRvd0N1c3RvbS5jcHAgKi8sCisJCQkJNDE3MzNEN0QyNURGQkZDNTAw
QTEzNkU1IC8qIEpTUlRDUnRwU0ZyYW1lVHJhbnNmb3JtQ3VzdG9tLmNwcCAqLywKKwkJCQk3QTNF
QkVBQTIxQkYwNTRDMDAwRDA0M0QgLyogSlNTVkdWaWV3U3BlY0N1c3RvbS5jcHAgKi8sCisJCQkp
OworCQkJbmFtZSA9IEN1c3RvbTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJ
CUJDOEM4RkFBMEREQ0QyRjIwMEI1OTJGNCAvKiBzdHlsZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRkJENkFGODIxNUVGMjFBMzAwOEI3MTEwIC8qIEJh
c2ljU2hhcGVzLmNwcCAqLywKKwkJCQlGQkQ2QUY4MzE1RUYyMUEzMDA4QjcxMTAgLyogQmFzaWNT
aGFwZXMuaCAqLywKKwkJCQkwRjI4M0E5MTIzNTYzMTI2MDA0Nzk0Q0EgLyogQm9yZGVyRGF0YS5j
cHAgKi8sCisJCQkJQkM1RUI1RTAwRTgxQkU4NzAwQjI1OTY1IC8qIEJvcmRlckRhdGEuaCAqLywK
KwkJCQlCQzVFQjVEQTBFODFCN0VBMDBCMjU5NjUgLyogQm9yZGVyVmFsdWUuaCAqLywKKwkJCQlC
QzVFQjVERTBFODFCOUFCMDBCMjU5NjUgLyogQ29sbGFwc2VkQm9yZGVyVmFsdWUuaCAqLywKKwkJ
CQlCQzVFQjk3RTBFODIwNzI1MDBCMjU5NjUgLyogQ29udGVudERhdGEuY3BwICovLAorCQkJCUJD
NUVCOTdGMEU4MjA3MjUwMEIyNTk2NSAvKiBDb250ZW50RGF0YS5oICovLAorCQkJCUJDNUVCOTc4
MEU4MjA2OTIwMEIyNTk2NSAvKiBDb3VudGVyQ29udGVudC5oICovLAorCQkJCUJDNUVCOTRGMEU4
MjA1NkIwMEIyNTk2NSAvKiBDb3VudGVyRGlyZWN0aXZlcy5oICovLAorCQkJCUJDMjI3MkExMEU4
MkU4N0MwMEU3Rjk3NSAvKiBDdXJzb3JEYXRhLmggKi8sCisJCQkJQkMyMjcyQUMwRTgyRThGMzAw
RTdGOTc1IC8qIEN1cnNvckxpc3QuaCAqLywKKwkJCQlCQzVFQjY5QzBFODFEQUVCMDBCMjU5NjUg
LyogRmlsbExheWVyLmNwcCAqLywKKwkJCQlCQzVFQjY5RDBFODFEQUVCMDBCMjU5NjUgLyogRmls
bExheWVyLmggKi8sCisJCQkJOEUzM0NEOTMyMDFBMjlDMTAwRTM5MDkzIC8qIEdhcExlbmd0aC5j
cHAgKi8sCisJCQkJOEVDNkM5NjEyMDFBMjUwMTAwRkJGQTUzIC8qIEdhcExlbmd0aC5oICovLAor
CQkJCUNEM0UyNTFCMTgwNDZCMDYwMEUyN0Y1NiAvKiBHcmlkQXJlYS5oICovLAorCQkJCUNERUY0
RkQ2MTdFODVDOEYwMEFFRTI0QiAvKiBHcmlkTGVuZ3RoLmggKi8sCisJCQkJRTFGODE3NDUxRTg5
N0E1MjAwRjIyQ0QwIC8qIEdyaWRQb3NpdGlvbi5jcHAgKi8sCisJCQkJQTEyNzA1QzIxNjU2QkQ2
NTAwQzJFMjdDIC8qIEdyaWRQb3NpdGlvbi5oICovLAorCQkJCUNERjc0ODNDMThGRUJDRUMwMDA2
RUNDMCAvKiBHcmlkUG9zaXRpb25zUmVzb2x2ZXIuY3BwICovLAorCQkJCUNERjc0ODNEMThGRUJD
RUMwMDA2RUNDMCAvKiBHcmlkUG9zaXRpb25zUmVzb2x2ZXIuaCAqLywKKwkJCQk3MUY2RUU0MTI1
NUVERjlDMDBGQzRDNUIgLyogR3JpZFRyYWNrU2l6ZS5jcHAgKi8sCisJCQkJQTEyQTEwNEUxNjY0
NDREQzAwOEZBMzExIC8qIEdyaWRUcmFja1NpemUuaCAqLywKKwkJCQlCQzVFQkEwRTBFODIzRTQ3
MDBCMjU5NjUgLyogS2V5ZnJhbWVMaXN0LmNwcCAqLywKKwkJCQlCQzVFQkEwRjBFODIzRTQ3MDBC
MjU5NjUgLyogS2V5ZnJhbWVMaXN0LmggKi8sCisJCQkJQUIzMUM5MUQxMEFFMUI4RTAwMEM3Qjky
IC8qIExpbmVDbGFtcFZhbHVlLmggKi8sCisJCQkJQkNFRjQzREYwRTY3NDExMDAwMUMxMjg3IC8q
IE5pbmVQaWVjZUltYWdlLmNwcCAqLywKKwkJCQlCQ0VGNDNEQzBFNjc0MDEyMDAxQzEyODcgLyog
TmluZVBpZWNlSW1hZ2UuaCAqLywKKwkJCQlCQzVFQjVEQzBFODFCOEREMDBCMjU5NjUgLyogT3V0
bGluZVZhbHVlLmggKi8sCisJCQkJNUE1NzRGMjYxMzFEQjk2RDAwNDcxQjg4IC8qIFF1b3Rlc0Rh
dGEuY3BwICovLAorCQkJCTVBNTc0RjI3MTMxREI5NkQwMDQ3MUI4OCAvKiBRdW90ZXNEYXRhLmgg
Ki8sCisJCQkJQkM4QzhGQUIwRERDRDMxQjAwQjU5MkY0IC8qIFJlbmRlclN0eWxlLmNwcCAqLywK
KwkJCQlCQzhDOEZBQzBERENEMzFCMDBCNTkyRjQgLyogUmVuZGVyU3R5bGUuaCAqLywKKwkJCQkw
RkVGMjBDRjFCRDRBNjRGMDAxMjhFNUQgLyogUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwICovLAor
CQkJCUJDNUVCNjY3MEU4MUNCNzEwMEIyNTk2NSAvKiBSZW5kZXJTdHlsZUNvbnN0YW50cy5oICov
LAorCQkJCUJDNUVCOEMxMEU4MjAzMUIwMEIyNTk2NSAvKiBTaGFkb3dEYXRhLmNwcCAqLywKKwkJ
CQlCQzVFQjhDMjBFODIwMzFCMDBCMjU5NjUgLyogU2hhZG93RGF0YS5oICovLAorCQkJCTFBQjVF
QkNGMTk0QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCAqLywKKwkJCQlGRDFBRjE0RTE2
NTZGMTIxMDBDNkQ0RjcgLyogU2hhcGVWYWx1ZS5oICovLAorCQkJCUJDNUVCNkEwMEU4MURDNEYw
MEIyNTk2NSAvKiBTdHlsZUJhY2tncm91bmREYXRhLmNwcCAqLywKKwkJCQlCQzVFQjZBMTBFODFE
QzRGMDBCMjU5NjUgLyogU3R5bGVCYWNrZ3JvdW5kRGF0YS5oICovLAorCQkJCUJDNUVCNjdDMEU4
MUQ0MjAwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEuY3BwICovLAorCQkJCUJDNUVCNjdBMEU4MUQz
QkUwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEuaCAqLywKKwkJCQlCQ0VGNDQ3OTBFNjc0N0QwMDAx
QzEyODcgLyogU3R5bGVDYWNoZWRJbWFnZS5jcHAgKi8sCisJCQkJQkNFRjQ0NEMwRTY3NDYyODAw
MUMxMjg3IC8qIFN0eWxlQ2FjaGVkSW1hZ2UuaCAqLywKKwkJCQkxQzBBQTE2QTIxOTQwREM3MDA4
OTY4MjkgLyogU3R5bGVDb2xvclNjaGVtZS5oICovLAorCQkJCTcxOTlCOTRBMjU1MUYwRTEwMDQ5
NEE1NyAvKiBTdHlsZUNvbnRlbnRBbGlnbm1lbnREYXRhLmNwcCAqLywKKwkJCQk5REFDN0M1NjFB
RjJDQjY0MDA0MzdDNDQgLyogU3R5bGVDb250ZW50QWxpZ25tZW50RGF0YS5oICovLAorCQkJCUNB
NTJCQUU1MjNEMEFGMTYwMERFMEI4NCAvKiBTdHlsZUN1cnNvckltYWdlLmNwcCAqLywKKwkJCQlD
QTUyQkFFOTIzRDBBRjE5MDBERTBCODQgLyogU3R5bGVDdXJzb3JJbWFnZS5oICovLAorCQkJCUJD
Nzc5RTE1MUJCMjI2QTIwMENBQThCRiAvKiBTdHlsZUN1c3RvbVByb3BlcnR5RGF0YS5oICovLAor
CQkJCUJDNUVCOEI2MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURlcHJlY2F0ZWRGbGV4aWJsZUJv
eERhdGEuY3BwICovLAorCQkJCUJDNUVCOEI3MEU4MjAxQkQwMEIyNTk2NSAvKiBTdHlsZURlcHJl
Y2F0ZWRGbGV4aWJsZUJveERhdGEuaCAqLywKKwkJCQkzMTlBRTA2MTE0MkQ2QjI0MDA2NTYzQTEg
LyogU3R5bGVGaWx0ZXJEYXRhLmNwcCAqLywKKwkJCQkzMTlBRTA2MjE0MkQ2QjI0MDA2NTYzQTEg
LyogU3R5bGVGaWx0ZXJEYXRhLmggKi8sCisJCQkJNTMxNzYxMjAxM0M1MTY2OTAwMjZFNDU0IC8q
IFN0eWxlRmxleGlibGVCb3hEYXRhLmNwcCAqLywKKwkJCQk1MzE3NjEyMTEzQzUxNjY5MDAyNkU0
NTQgLyogU3R5bGVGbGV4aWJsZUJveERhdGEuaCAqLywKKwkJCQlCQ0VGNDQ3QzBFNjc0ODA2MDAx
QzEyODcgLyogU3R5bGVHZW5lcmF0ZWRJbWFnZS5jcHAgKi8sCisJCQkJQkNFRjQ0NDkwRTY3NDVF
MDAwMUMxMjg3IC8qIFN0eWxlR2VuZXJhdGVkSW1hZ2UuaCAqLywKKwkJCQlBMTBEQzc2ODE0NzQ3
QkFCMDA1RTI0NzEgLyogU3R5bGVHcmlkRGF0YS5jcHAgKi8sCisJCQkJQTEwREM3NjkxNDc0N0JB
QjAwNUUyNDcxIC8qIFN0eWxlR3JpZERhdGEuaCAqLywKKwkJCQlBMTEwREI5QzE0RjVERjg3MDBB
MDNCOTMgLyogU3R5bGVHcmlkSXRlbURhdGEuY3BwICovLAorCQkJCUExMTBEQjlBMTRGNURGNzcw
MEEwM0I5MyAvKiBTdHlsZUdyaWRJdGVtRGF0YS5oICovLAorCQkJCUJDRUY0M0NFMEU2NzNEQTEw
MDFDMTI4NyAvKiBTdHlsZUltYWdlLmggKi8sCisJCQkJQ0EwOTFEODYyM0NGOTA3ODAwQUQ0MzQ2
IC8qIFN0eWxlSW1hZ2VTZXQuY3BwICovLAorCQkJCUNBMDkxRDg5MjNDRjkwODgwMEFENDM0NiAv
KiBTdHlsZUltYWdlU2V0LmggKi8sCisJCQkJQkMyMjczMDEwRTgyRjFFNjAwRTdGOTc1IC8qIFN0
eWxlSW5oZXJpdGVkRGF0YS5jcHAgKi8sCisJCQkJQkMyMjczMDIwRTgyRjFFNjAwRTdGOTc1IC8q
IFN0eWxlSW5oZXJpdGVkRGF0YS5oICovLAorCQkJCUJDNUVCNzI3MEU4MURFODEwMEIyNTk2NSAv
KiBTdHlsZU1hcnF1ZWVEYXRhLmNwcCAqLywKKwkJCQlCQzVFQjcyODBFODFERTgxMDBCMjU5NjUg
LyogU3R5bGVNYXJxdWVlRGF0YS5oICovLAorCQkJCUJDNUVCNzRCMEU4MUUwNjcwMEIyNTk2NSAv
KiBTdHlsZU11bHRpQ29sRGF0YS5jcHAgKi8sCisJCQkJQkM1RUI3NEMwRTgxRTA2NzAwQjI1OTY1
IC8qIFN0eWxlTXVsdGlDb2xEYXRhLmggKi8sCisJCQkJQ0E1MkJBRTcyM0QwQUYxNzAwREUwQjg0
IC8qIFN0eWxlTXVsdGlJbWFnZS5jcHAgKi8sCisJCQkJQ0E1MkJBRTgyM0QwQUYxODAwREUwQjg0
IC8qIFN0eWxlTXVsdGlJbWFnZS5oICovLAorCQkJCUJDMjI3MkUxMEU4MkVFOUIwMEU3Rjk3NSAv
KiBTdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcCAqLywKKwkJCQlCQzIyNzJFMjBFODJFRTlCMDBF
N0Y5NzUgLyogU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oICovLAorCQkJCUJDMjI3MkJBMEU4MkVB
QUUwMEU3Rjk3NSAvKiBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCAqLywKKwkJCQlCQzIy
NzJCQjBFODJFQUFFMDBFN0Y5NzUgLyogU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oICovLAor
CQkJCUJDMjI3Mjg2MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rpb24uaCAqLywKKwkJ
CQlGNDdBNUUzQjE5NUI4QzhBMDA0ODMxMDAgLyogU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmggKi8s
CisJCQkJNzE5OUI5NEYyNTUyMTAzRTAwNDk0QTU3IC8qIFN0eWxlU2VsZkFsaWdubWVudERhdGEu
Y3BwICovLAorCQkJCTlENjM4MDBGMUFGMTZFMTYwMDMxQTE1QyAvKiBTdHlsZVNlbGZBbGlnbm1l
bnREYXRhLmggKi8sCisJCQkJQkM1RUI1RTYwRTgxQkZFRjAwQjI1OTY1IC8qIFN0eWxlU3Vycm91
bmREYXRhLmNwcCAqLywKKwkJCQlCQzVFQjVFNDBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJy
b3VuZERhdGEuaCAqLywKKwkJCQlCQzVFQjgwRDBFODFGMkNFMDBCMjU5NjUgLyogU3R5bGVUcmFu
c2Zvcm1EYXRhLmNwcCAqLywKKwkJCQlCQzVFQjgwRTBFODFGMkNFMDBCMjU5NjUgLyogU3R5bGVU
cmFuc2Zvcm1EYXRhLmggKi8sCisJCQkJQkM1RUI2OTcwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxl
VmlzdWFsRGF0YS5jcHAgKi8sCisJCQkJQkM1RUI2OTgwRTgxREE2MzAwQjI1OTY1IC8qIFN0eWxl
VmlzdWFsRGF0YS5oICovLAorCQkJCUJDMjI3NDc0MEU4MzY2RTIwMEU3Rjk3NSAvKiBTVkdSZW5k
ZXJTdHlsZS5jcHAgKi8sCisJCQkJQkMyMjc0NzUwRTgzNjZFMjAwRTdGOTc1IC8qIFNWR1JlbmRl
clN0eWxlLmggKi8sCisJCQkJQkMyMjc0NzYwRTgzNjZFMjAwRTdGOTc1IC8qIFNWR1JlbmRlclN0
eWxlRGVmcy5jcHAgKi8sCisJCQkJQkMyMjc0NzcwRTgzNjZFMjAwRTdGOTc1IC8qIFNWR1JlbmRl
clN0eWxlRGVmcy5oICovLAorCQkJCTFDQjZCNEY4MjE3QjgzOTMwMDkzQjlDRCAvKiBUZXh0RGVj
b3JhdGlvblRoaWNrbmVzcy5oICovLAorCQkJCTFDRjBCRkQ0MjI5ODcwNjgwMEVEMjA3NCAvKiBU
ZXh0U2l6ZUFkanVzdG1lbnQuY3BwICovLAorCQkJCTQ0OEIxQjc4MEYzQTJGOUIwMDQ3QTlFMiAv
KiBUZXh0U2l6ZUFkanVzdG1lbnQuaCAqLywKKwkJCQkxQ0I2QjRGQjIxN0I4Mzk0MDA5M0I5Q0Qg
LyogVGV4dFVuZGVybGluZU9mZnNldC5oICovLAorCQkJCTBGMTVFRDU5MUI3RUM3QzUwMEVEREZF
QiAvKiBXaWxsQ2hhbmdlRGF0YS5jcHAgKi8sCisJCQkJMEYxNUVENUExQjdFQzdDNTAwRURERkVC
IC8qIFdpbGxDaGFuZ2VEYXRhLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHN0eWxlOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQkM5ODU0NDMwQ0QzRDlEMDAwMDY5QkMxIC8q
IFdpbmRvdyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
QkMxMjRFRkQwQzI2NDQ3QTAwOUUyMzQ5IC8qIEpTQmFyUHJvcC5jcHAgKi8sCisJCQkJQkMxMjRF
RkUwQzI2NDQ3QTAwOUUyMzQ5IC8qIEpTQmFyUHJvcC5oICovLAorCQkJCTk3NUNBMjlGMTMwMzY3
OUQwMEU5OUFEOSAvKiBKU0NyeXB0by5jcHAgKi8sCisJCQkJOTc1Q0EyQTAxMzAzNjc5RDAwRTk5
QUQ5IC8qIEpTQ3J5cHRvLmggKi8sCisJCQkJQkM1QTg2QjMwQzMzNjdFODAwRUVBNjQ5IC8qIEpT
RE9NU2VsZWN0aW9uLmNwcCAqLywKKwkJCQlCQzVBODZCNDBDMzM2N0U4MDBFRUE2NDkgLyogSlNE
T01TZWxlY3Rpb24uaCAqLywKKwkJCQkxNDAzQkEwQjA5RUIxOEM3MDA3OTdDN0YgLyogSlNET01X
aW5kb3cuY3BwICovLAorCQkJCTE0MDNCQTBFMDlFQjE4RjgwMDc5N0M3RiAvKiBKU0RPTVdpbmRv
dy5oICovLAorCQkJCUUwRkVGMzcxQjQ3QzUzRUFDMUMxRkJFRSAvKiBKU0V2ZW50U291cmNlLmNw
cCAqLywKKwkJCQlFMEZFRjM3MUIzN0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5oICov
LAorCQkJCUJDOTREMTRDMEMyNzVDNjgwMDZCQzYxNyAvKiBKU0hpc3RvcnkuY3BwICovLAorCQkJ
CUJDOTREMTREMEMyNzVDNjgwMDZCQzYxNyAvKiBKU0hpc3RvcnkuaCAqLywKKwkJCQkwRjQ3MTBF
MTFEQjcwMEM3MDAyRENFQzMgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlci5jcHAgKi8sCisJCQkJ
MEY0NzEwRTIxREI3MDBDNzAwMkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaCAqLywK
KwkJCQkwRjhCNDU3MzFEQzQxREJBMDA0NDNDM0YgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlckNh
bGxiYWNrLmNwcCAqLywKKwkJCQkwRjhCNDU3NDFEQzQxREJBMDA0NDNDM0YgLyogSlNJbnRlcnNl
Y3Rpb25PYnNlcnZlckNhbGxiYWNrLmggKi8sCisJCQkJMEY0NzEwRTMxREI3MDBDNzAwMkRDRUMz
IC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5jcHAgKi8sCisJCQkJMEY0NzEwRTQxREI3
MDBDNzAwMkRDRUMzIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oICovLAorCQkJCUJD
RTFDNDM5MEQ5ODMwRDMwMDNCMDJGMiAvKiBKU0xvY2F0aW9uLmNwcCAqLywKKwkJCQlCQ0UxQzQz
QTBEOTgzMEQzMDAzQjAyRjIgLyogSlNMb2NhdGlvbi5oICovLAorCQkJCUE5RDI0N0Y1MEQ3NTdF
MzMwMEZERjk1OSAvKiBKU05hdmlnYXRvci5jcHAgKi8sCisJCQkJQTlEMjQ3RjYwRDc1N0UzMzAw
RkRGOTU5IC8qIEpTTmF2aWdhdG9yLmggKi8sCisJCQkJRTUxQTgxREUxNzI5OEQ3NzAwQkZDQTYx
IC8qIEpTUGVyZm9ybWFuY2UuY3BwICovLAorCQkJCThBOUE1ODczMTFFODRDODEwMDhBQ0ZEMSAv
KiBKU1BlcmZvcm1hbmNlLmggKi8sCisJCQkJQ0IzOEZENEQxQ0NGOTM3RTAwNTkyQTNGIC8qIEpT
UGVyZm9ybWFuY2VFbnRyeS5jcHAgKi8sCisJCQkJQ0IzOEZENEUxQ0NGOTM3RTAwNTkyQTNGIC8q
IEpTUGVyZm9ybWFuY2VFbnRyeS5oICovLAorCQkJCUE1OEM1OUNDMUUzODJFQTkwMDQ3ODU5QyAv
KiBKU1BlcmZvcm1hbmNlTWFyay5jcHAgKi8sCisJCQkJQTU4QzU5Q0QxRTM4MkVBOTAwNDc4NTlD
IC8qIEpTUGVyZm9ybWFuY2VNYXJrLmggKi8sCisJCQkJQTU4QzU5Q0UxRTM4MkVBOTAwNDc4NTlD
IC8qIEpTUGVyZm9ybWFuY2VNZWFzdXJlLmNwcCAqLywKKwkJCQlBNThDNTlDRjFFMzgyRUE5MDA0
Nzg1OUMgLyogSlNQZXJmb3JtYW5jZU1lYXN1cmUuaCAqLywKKwkJCQk4QTlBNTg2RTExRTg0QzM1
MDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZU5hdmlnYXRpb24uY3BwICovLAorCQkJCThBOUE1ODZG
MTFFODRDMzYwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5oICovLAorCQkJCUE1
QTk5MzQyMUUzODA5OTkwMDVCNUU0RCAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuY3BwICovLAor
CQkJCUE1QTk5MzQzMUUzODA5OTkwMDVCNUU0RCAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXIuaCAq
LywKKwkJCQlBNUE5OTM0NDFFMzgwOTk5MDA1QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVy
Q2FsbGJhY2suY3BwICovLAorCQkJCUE1QTk5MzQ1MUUzODA5OTkwMDVCNUU0RCAvKiBKU1BlcmZv
cm1hbmNlT2JzZXJ2ZXJDYWxsYmFjay5oICovLAorCQkJCUE1QTk5MzQ2MUUzODA5OTkwMDVCNUU0
RCAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuY3BwICovLAorCQkJCUE1QTk5MzQ3
MUUzODA5OTkwMDVCNUU0RCAvKiBKU1BlcmZvcm1hbmNlT2JzZXJ2ZXJFbnRyeUxpc3QuaCAqLywK
KwkJCQlDQjM4RkQ1ODFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291cmNlVGlt
aW5nLmNwcCAqLywKKwkJCQlDQjM4RkQ1OTFDRDIzMTQ1MDA1OTJBM0YgLyogSlNQZXJmb3JtYW5j
ZVJlc291cmNlVGltaW5nLmggKi8sCisJCQkJMEY0M0M4NUUxODlFMTVBNjAwMDE5QUUyIC8qIEpT
UGVyZm9ybWFuY2VUaW1pbmcuY3BwICovLAorCQkJCThBOUE1ODc3MTFFODRDOTgwMDhBQ0ZEMSAv
KiBKU1BlcmZvcm1hbmNlVGltaW5nLmggKi8sCisJCQkJNDZDMzc2NUYyMDg1MTc2QzAwQzczODI5
IC8qIEpTUmVtb3RlRE9NV2luZG93LmNwcCAqLywKKwkJCQk0NkMzNzY2MTIwODUxNzZEMDBDNzM4
MjkgLyogSlNSZW1vdGVET01XaW5kb3cuaCAqLywKKwkJCQk1OEIyRkEwMzIyMzJENjBCMDA5MzhE
NjMgLyogSlNSZXNpemVPYnNlcnZlci5jcHAgKi8sCisJCQkJNThCMkZBMDEyMjMyRDYwQTAwOTM4
RDYzIC8qIEpTUmVzaXplT2JzZXJ2ZXIuaCAqLywKKwkJCQkwRkQ2QTY3OTI2RUVDMDc1MDA3QjIy
MzEgLyogSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuY3BwICovLAorCQkJCTBGRDZBNjdDMjZF
RUMwNzYwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyQm94T3B0aW9ucy5oICovLAorCQkJCTU4
QjJGOUZFMjIzMkQ2MDcwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVyQ2FsbGJhY2suY3BwICov
LAorCQkJCTU4QjJGOUZGMjIzMkQ2MDgwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVyQ2FsbGJh
Y2suaCAqLywKKwkJCQk1OEIyRkEwMDIyMzJENjA5MDA5MzhENjMgLyogSlNSZXNpemVPYnNlcnZl
ckVudHJ5LmNwcCAqLywKKwkJCQk1OEIyRkEwMjIyMzJENjBBMDA5MzhENjMgLyogSlNSZXNpemVP
YnNlcnZlckVudHJ5LmggKi8sCisJCQkJMEZENkE2ODAyNkVFQzFEOTAwN0IyMjMxIC8qIEpTUmVz
aXplT2JzZXJ2ZXJPcHRpb25zLmNwcCAqLywKKwkJCQkwRkQ2QTY4MjI2RUVDMUQ5MDA3QjIyMzEg
LyogSlNSZXNpemVPYnNlcnZlck9wdGlvbnMuaCAqLywKKwkJCQkwRkQ2QTY3QjI2RUVDMDc1MDA3
QjIyMzEgLyogSlNSZXNpemVPYnNlcnZlclNpemUuY3BwICovLAorCQkJCTBGRDZBNjdEMjZFRUMw
NzYwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyU2l6ZS5oICovLAorCQkJCUJDRUMwMUMwMEMy
NzREREQwMDlGNEVDOSAvKiBKU1NjcmVlbi5jcHAgKi8sCisJCQkJQkNFQzAxQzEwQzI3NERERDAw
OUY0RUM5IC8qIEpTU2NyZWVuLmggKi8sCisJCQkJODNFOUIzMDAxREE1QTUxRTAwRkZFOEQ0IC8q
IEpTU2Nyb2xsQmVoYXZpb3IuY3BwICovLAorCQkJCTgzRTlCMzAxMURBNUE1MUUwMEZGRThENCAv
KiBKU1Njcm9sbEJlaGF2aW9yLmggKi8sCisJCQkJODNFOUIzMDAxREE1QTUxRTAwRkZEOEU1IC8q
IEpTU2Nyb2xsSW50b1ZpZXdPcHRpb25zLmNwcCAqLywKKwkJCQk4M0U5QjMwMTFEQTVBNTFFMDBG
RkQ4RTUgLyogSlNTY3JvbGxJbnRvVmlld09wdGlvbnMuaCAqLywKKwkJCQk4M0U5QjMwMDFEQTVB
NTFFMDBGRkQ4RDQgLyogSlNTY3JvbGxMb2dpY2FsUG9zaXRpb24uY3BwICovLAorCQkJCTgzRTlC
MzAxMURBNUE1MUUwMEZGRDhENCAvKiBKU1Njcm9sbExvZ2ljYWxQb3NpdGlvbi5oICovLAorCQkJ
CTgzRTlCMzAwMURBNUE1MUUwMEZGRThFNSAvKiBKU1Njcm9sbE9wdGlvbnMuY3BwICovLAorCQkJ
CTgzRTlCMzAxMURBNUE1MUUwMEZGRThFNSAvKiBKU1Njcm9sbE9wdGlvbnMuaCAqLywKKwkJCQk4
M0U5QjMwMDFEQTVBNTFFMDBGRkU4RjYgLyogSlNTY3JvbGxUb09wdGlvbnMuY3BwICovLAorCQkJ
CTgzRTlCMzAxMURBNUE1MUUwMEZGRThGNiAvKiBKU1Njcm9sbFRvT3B0aW9ucy5oICovLAorCQkJ
CTdDNzNGQjBGMTkxRUY2RjQwMDdERTA2MSAvKiBKU1VzZXJNZXNzYWdlSGFuZGxlci5jcHAgKi8s
CisJCQkJN0M3M0ZCMTAxOTFFRjZGNDAwN0RFMDYxIC8qIEpTVXNlck1lc3NhZ2VIYW5kbGVyLmgg
Ki8sCisJCQkJN0M3M0ZCMEExOTFFRjVBODAwN0RFMDYxIC8qIEpTVXNlck1lc3NhZ2VIYW5kbGVy
c05hbWVzcGFjZS5jcHAgKi8sCisJCQkJN0M3M0ZCMEIxOTFFRjVBODAwN0RFMDYxIC8qIEpTVXNl
ck1lc3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5oICovLAorCQkJCTdDQzY5OTNFMTkxRUM1RjUwMEFG
MjI3MCAvKiBKU1dlYktpdE5hbWVzcGFjZS5jcHAgKi8sCisJCQkJN0NDNjk5M0YxOTFFQzVGNTAw
QUYyMjcwIC8qIEpTV2ViS2l0TmFtZXNwYWNlLmggKi8sCisJCQkJNDk0QkQ3OUIwRjU1Qzk0QzAw
NzQ3ODI4IC8qIEpTV2ViS2l0UG9pbnQuY3BwICovLAorCQkJCTQ5NEJENzlDMEY1NUM5NEMwMDc0
NzgyOCAvKiBKU1dlYktpdFBvaW50LmggKi8sCisJCQkpOworCQkJbmFtZSA9IFdpbmRvdzsKKwkJ
CXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUJDOTg1NDQ2MENEM0RBNUYwMDA2OUJD
MSAvKiBSYW5nZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCTkzNTVFRjUwMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuY3BwICovLAor
CQkJCTkzNTVFRjRGMjUzQTQyNzgwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCAqLywKKwkJ
CQk2NURGMzFFRDA5RDFDQzYwMDAwQkUzMjUgLyogSlNSYW5nZS5jcHAgKi8sCisJCQkJNjVERjMx
RUUwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUmFuZ2UuaCAqLywKKwkJCQlBODY2MjlDRTA5REEyQjQ3
MDA5NjMzQTcgLyogSlNTdGF0aWNSYW5nZS5jcHAgKi8sCisJCQkJQTg2NjI5Q0QwOURBMkI0NzAw
OTYzM0E3IC8qIEpTU3RhdGljUmFuZ2UuaCAqLywKKwkJCSk7CisJCQluYW1lID0gUmFuZ2VzOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQkM5ODU0NTMwQ0QzREE4RjAwMDY5
QkMxIC8qIFRyYXZlcnNhbCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJMTQxMTVCNzAwOUY4NENENjAwQ0E0RkMxIC8qIEpTTm9kZUZpbHRlci5jcHAgKi8s
CisJCQkJMTQxMTVCNzEwOUY4NENENjAwQ0E0RkMxIC8qIEpTTm9kZUZpbHRlci5oICovLAorCQkJ
CTFBNzUwRDhCMEE5MEU1MjEwMDBGRjIxNSAvKiBKU05vZGVJdGVyYXRvci5jcHAgKi8sCisJCQkJ
MUE3NTBEOEMwQTkwRTUyMTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yLmggKi8sCisJCQkJMUE3
NTBENUEwQTkwREVFMTAwMEZGMjE1IC8qIEpTVHJlZVdhbGtlci5jcHAgKi8sCisJCQkJMUE3NTBE
NUIwQTkwREVFMTAwMEZGMjE1IC8qIEpTVHJlZVdhbGtlci5oICovLAorCQkJKTsKKwkJCW5hbWUg
PSBUcmF2ZXJzYWw7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlCQ0IxNkJG
QjA5NzlDMzg3MDA0Njc3NDEgLyogbG9hZGVyICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJ
CQljaGlsZHJlbiA9ICgKKwkJCQkxQThGNkJCMDBEQjU1Q0RDMDAxREI3OTQgLyogYXBwY2FjaGUg
Ki8sCisJCQkJNTEyREQ4RTgwRDkxRTY5MTAwMEY4OUVFIC8qIGFyY2hpdmUgKi8sCisJCQkJQThE
MkIyNTIxMjg3QTU2MDAwQUY0RERBIC8qIGNhY2hlICovLAorCQkJCTdFNERFMTBCMTk4QjEwODEw
MDUxQ0IwMiAvKiBjb2NvYSAqLywKKwkJCQk1MTI2RTZCNjBBMkUzQUVGMDA1QzI5RkEgLyogaWNv
biAqLywKKwkJCQlBMTVFMzFGMDFFMENCMDc1MDA0QjM3MUMgLyogaW9zICovLAorCQkJCTkzQTFF
QUEyMEE1NjM0RDgwMDY5NjBBMCAvKiBtYWMgKi8sCisJCQkJNjMxNTJEMTgxRjk1MzFFRTAwN0E1
RTRCIC8qIEFwcGxpY2F0aW9uTWFuaWZlc3RMb2FkZXIuY3BwICovLAorCQkJCTYzMTUyRDE3MUY5
NTMxRUUwMDdBNUU0QiAvKiBBcHBsaWNhdGlvbk1hbmlmZXN0TG9hZGVyLmggKi8sCisJCQkJRUZC
NzI4N0IyMTI0QzczRDAwNUMyNTU4IC8qIENhbnZhc0FjdGl2aXR5UmVjb3JkLmNwcCAqLywKKwkJ
CQlFRkNDNkM4RDIwRkU5MTQwMDBBMjMyMUIgLyogQ2FudmFzQWN0aXZpdHlSZWNvcmQuaCAqLywK
KwkJCQlBMTQ5Nzg2QzFBQkFGMzM4MDBDRUY3RTQgLyogQ29udGVudEZpbHRlci5jcHAgKi8sCisJ
CQkJQTE0OTc4NkQxQUJBRjMzODAwQ0VGN0U0IC8qIENvbnRlbnRGaWx0ZXIuaCAqLywKKwkJCQk1
Q0RDRERCRjIzRDdCN0JFMDBCQTM0QTEgLyogQ29udGVudEZpbHRlckNsaWVudC5oICovLAorCQkJ
CUUxNDI0QzkxMTY0QjUyQzgwMEYzMkQ0MCAvKiBDb29raWVKYXIuY3BwICovLAorCQkJCUUxNDI0
QzkyMTY0QjUyQzgwMEYzMkQ0MCAvKiBDb29raWVKYXIuaCAqLywKKwkJCQlFMUM0MTYxNjBGNjU2
MzE4MDA5MkQyRkIgLyogQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmNwcCAqLywKKwkJCQlFMUM0
MTYxMTBGNjU2MkZEMDA5MkQyRkIgLyogQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmggKi8sCisJ
CQkJNDY3MkFBOTUyNkIwOTQyMDAwRTZFQzM4IC8qIENyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3ku
Y3BwICovLAorCQkJCTQ2NzJBQTk2MjZCMDk0MjEwMEU2RUMzOCAvKiBDcm9zc09yaWdpbkVtYmVk
ZGVyUG9saWN5LmggKi8sCisJCQkJNDY3MkFBOTQyNkIwOTQyMDAwRTZFQzM4IC8qIENyb3NzT3Jp
Z2luT3BlbmVyUG9saWN5LmNwcCAqLywKKwkJCQk0NjcyQUE5NzI2QjA5NDIxMDBFNkVDMzggLyog
Q3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kuaCAqLywKKwkJCQk0MUFCRTY3OTFEMDU4MEQ1MDA2RDg2
MkQgLyogQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcCAqLywKKwkJCQk0MUFCRTY3QTFE
MDU4MEQ1MDA2RDg2MkQgLyogQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmggKi8sCisJCQkJ
RTFDNDE1REQwRjY1NUQ3QzAwOTJEMkZCIC8qIENyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2Fj
aGUuY3BwICovLAorCQkJCUUxQzQxNUQ5MEY2NTVENkYwMDkyRDJGQiAvKiBDcm9zc09yaWdpblBy
ZWZsaWdodFJlc3VsdENhY2hlLmggKi8sCisJCQkJNUM1RDIzODYyMjdBMDc3QzAwMEI5QkRBIC8q
IEN1c3RvbUhlYWRlckZpZWxkcy5jcHAgKi8sCisJCQkJNUM1RDIzODMyMjdBMDYzQTAwMEI5QkRB
IC8qIEN1c3RvbUhlYWRlckZpZWxkcy5oICovLAorCQkJCUU0RjM4RDFDMjYyNkYxNDQwMDdCMTA2
NCAvKiBEZWZhdWx0UmVzb3VyY2VMb2FkUHJpb3JpdHkuY3BwICovLAorCQkJCUU0RjM4RDE5MjYy
NkYxM0IwMDdCMTA2NCAvKiBEZWZhdWx0UmVzb3VyY2VMb2FkUHJpb3JpdHkuaCAqLywKKwkJCQk5
M0UyMjdEQjBBRjU4OUFEMDBENDgzMjQgLyogRG9jdW1lbnRMb2FkZXIuY3BwICovLAorCQkJCTY1
NkQzNzFFMEFEQkE1REUwMEE0NTU0RCAvKiBEb2N1bWVudExvYWRlci5oICovLAorCQkJCThBMTJF
MzVDMTFGQTMzMjgwMDI1ODM2QSAvKiBEb2N1bWVudExvYWRUaW1pbmcuaCAqLywKKwkJCQkwQjkw
NTYxNTBGMjU3OEJFMDA5NUZGNkEgLyogRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCAqLywK
KwkJCQkwQjkwNTYxNjBGMjU3OEJFMDA5NUZGNkEgLyogRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmggKi8sCisJCQkJOTczODg5OUUxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50V3JpdGVyLmNw
cCAqLywKKwkJCQk5NzM4ODk5RjExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuaCAq
LywKKwkJCQlGNTJBRDVFMzE1MzQyNDVGMDA1OUZCRTYgLyogRW1wdHlDbGllbnRzLmNwcCAqLywK
KwkJCQlCMjU1OTkwRDBEMDBEOEI5MDBCQjgyNUMgLyogRW1wdHlDbGllbnRzLmggKi8sCisJCQkJ
NDE0REVERTUxRjlGRTkxNTAwNDdDNDBEIC8qIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCAqLywK
KwkJCQlDRUJCOEMzMjIwNzg2RENCMDAwMzk1NDcgLyogRmV0Y2hJZGlvbXMuY3BwICovLAorCQkJ
CUNFQkI4QzMxMjA3ODZEQ0IwMDAzOTU0NyAvKiBGZXRjaElkaW9tcy5oICovLAorCQkJCTQxQUQ3
NTM5MUNFRjZCQ0UwMEEzMTQ4NiAvKiBGZXRjaE9wdGlvbnMuaCAqLywKKwkJCQk2NTg0MzY4NTBB
RTAxQjc0MDBFNTM3NDMgLyogRm9udExvYWRSZXF1ZXN0LmggKi8sCisJCQkJNjU2RDM3MjMwQURC
QTVERTAwQTQ1NTREIC8qIEZvcm1TdGF0ZS5jcHAgKi8sCisJCQkJNjU2RDM3MjIwQURCQTVERTAw
QTQ1NTREIC8qIEZvcm1TdGF0ZS5oICovLAorCQkJCTQxODg1QjkyMTFCNkZEQTYwMDMzODNCQiAv
KiBGb3JtU3VibWlzc2lvbi5jcHAgKi8sCisJCQkJNDE4ODVCOTExMUI2RkRBNjAwMzM4M0JCIC8q
IEZvcm1TdWJtaXNzaW9uLmggKi8sCisJCQkJOTMyRTE2MDgwQUY1NzgzNDAwMjVGNDA4IC8qIEZy
YW1lTG9hZGVyLmNwcCAqLywKKwkJCQk2NTZEMzcyNDBBREJBNURFMDBBNDU1NEQgLyogRnJhbWVM
b2FkZXIuaCAqLywKKwkJCQk2NTZEMzcyNjBBREJBNURFMDBBNDU1NEQgLyogRnJhbWVMb2FkZXJD
bGllbnQuaCAqLywKKwkJCQlEMDAwRUJBMDExQkRBRkQ0MDBDNDc3MjYgLyogRnJhbWVMb2FkZXJT
dGF0ZU1hY2hpbmUuY3BwICovLAorCQkJCUQwMDBFQkExMTFCREFGRDQwMEM0NzcyNiAvKiBGcmFt
ZUxvYWRlclN0YXRlTWFjaGluZS5oICovLAorCQkJCTkzQjc3QTM3MEFERDc5MjUwMEVBNEI4MSAv
KiBGcmFtZUxvYWRlclR5cGVzLmggKi8sCisJCQkJODZCQTc2NkQxNjY0MjdBODAwNUJFNUQxIC8q
IEZyYW1lTG9hZFJlcXVlc3QuY3BwICovLAorCQkJCTY1ODQzNjg1MEFFMDFCNzQwMEU1Mzc1MyAv
KiBGcmFtZUxvYWRSZXF1ZXN0LmggKi8sCisJCQkJNjI4RDIxNEQxMjEzMUVGNDAwNTVEQ0ZDIC8q
IEZyYW1lTmV0d29ya2luZ0NvbnRleHQuaCAqLywKKwkJCQk1MUM4MUI4NzBDNDQyMkY3MDAxOUVD
RTMgLyogRlRQRGlyZWN0b3J5UGFyc2VyLmNwcCAqLywKKwkJCQk1MUM4MUI4ODBDNDQyMkY3MDAx
OUVDRTMgLyogRlRQRGlyZWN0b3J5UGFyc2VyLmggKi8sCisJCQkJMjg1MzhFRUQyMDIyMUZBNjAw
RDE5MDlBIC8qIEhlYWRlckZpZWxkVG9rZW5pemVyLmNwcCAqLywKKwkJCQkyODUzOEVFRTIwMjIx
RkE2MDBEMTkwOUEgLyogSGVhZGVyRmllbGRUb2tlbml6ZXIuaCAqLywKKwkJCQk5N0RDRTFGRjEw
ODA3Qzc1MDA1N0QzOTQgLyogSGlzdG9yeUNvbnRyb2xsZXIuY3BwICovLAorCQkJCTk3RENFMjAw
MTA4MDdDNzUwMDU3RDM5NCAvKiBIaXN0b3J5Q29udHJvbGxlci5oICovLAorCQkJCTVDQTFERUMy
MUY3MUU2ODYwMEU3MUJEMyAvKiBIVFRQSGVhZGVyRmllbGQuY3BwICovLAorCQkJCTVDQTFERUM0
MUY3MUU2ODcwMEU3MUJEMyAvKiBIVFRQSGVhZGVyRmllbGQuaCAqLywKKwkJCQkwODk1ODI1MzBF
ODU3QTdFMDBGODJDODMgLyogSW1hZ2VMb2FkZXIuY3BwICovLAorCQkJCTA4OTU4MjU0MEU4NTdB
N0UwMEY4MkM4MyAvKiBJbWFnZUxvYWRlci5oICovLAorCQkJCUNCQTlEQzA4MURGNDREQzQwMDA1
Njc1QyAvKiBMaW5rSGVhZGVyLmNwcCAqLywKKwkJCQlDQkE5REMwOTFERjQ0REM0MDAwNTY3NUMg
LyogTGlua0hlYWRlci5oICovLAorCQkJCTk4Q0U0MzI1MTI5RTAwQkQwMDU4MjFEQyAvKiBMaW5r
TG9hZGVyLmNwcCAqLywKKwkJCQk5OENFNDMyOTEyOUUwMEU1MDA1ODIxREMgLyogTGlua0xvYWRl
ci5oICovLAorCQkJCTk4NDI2NEVGMTJENTI4MEEwMDBEODhBNCAvKiBMaW5rTG9hZGVyQ2xpZW50
LmggKi8sCisJCQkJQ0JCNkIyRDExQ0I3QURDNjAwOUVERTFBIC8qIExpbmtQcmVsb2FkUmVzb3Vy
Y2VDbGllbnRzLmNwcCAqLywKKwkJCQlDQkI2QjJEMjFDQjdBREQwMDA5RURFMUEgLyogTGlua1By
ZWxvYWRSZXNvdXJjZUNsaWVudHMuaCAqLywKKwkJCQk1MUFCRjY0QzE2MzkyRTI4MDAxMzJBN0Eg
LyogTG9hZGVyU3RyYXRlZ3kuY3BwICovLAorCQkJCTUxRTY4MjBGMTYzODczMDIwMDNCQkYzQyAv
KiBMb2FkZXJTdHJhdGVneS5oICovLAorCQkJCUU0N0ZDOEExMjVCODRENzEwMDU0OTVGQyAvKiBM
b2FkU2NoZWR1bGluZ01vZGUuaCAqLywKKwkJCQlDRUVGQ0Q3NzE5REIzMUY3MDAzODc2RDcgLyog
TWVkaWFSZXNvdXJjZUxvYWRlci5jcHAgKi8sCisJCQkJQ0VFRkNENzgxOURCMzFGNzAwMzg3NkQ3
IC8qIE1lZGlhUmVzb3VyY2VMb2FkZXIuaCAqLywKKwkJCQk1MkYxMDg2MjE2MkI2RDgyMDA5QUM4
MUUgLyogTWl4ZWRDb250ZW50Q2hlY2tlci5jcHAgKi8sCisJCQkJNTJGMTA4NjMxNjJCNkQ4MjAw
OUFDODFFIC8qIE1peGVkQ29udGVudENoZWNrZXIuaCAqLywKKwkJCQk5M0NDRjA1RjBBRjZDQTc2
MDAwMThFODkgLyogTmF2aWdhdGlvbkFjdGlvbi5jcHAgKi8sCisJCQkJOTNDQ0YwMjYwQUY2QzUy
OTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rpb24uaCAqLywKKwkJCQk5QkE4Mjc3ODFGMDYxNTY1
MDBGNzFFNzUgLyogTmF2aWdhdGlvbkRpc2FibGVyLmggKi8sCisJCQkJOTc5RjQzRDExMDc1RTQ0
QTAwMDBGODNCIC8qIE5hdmlnYXRpb25TY2hlZHVsZXIuY3BwICovLAorCQkJCTk3OUY0M0QyMTA3
NUU0NEEwMDAwRjgzQiAvKiBOYXZpZ2F0aW9uU2NoZWR1bGVyLmggKi8sCisJCQkJOTNFMjI3REQw
QUY1ODlBRDAwRDQ4MzI0IC8qIE5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyLmNwcCAqLywKKwkJ
CQk2NTZEMzcyQjBBREJBNURFMDBBNDU1NEQgLyogTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIu
aCAqLywKKwkJCQlEMEZGMkE1QjExRjhDNDVBMDA3RTc0RTAgLyogUGluZ0xvYWRlci5jcHAgKi8s
CisJCQkJRDBGRjJBNUMxMUY4QzQ1QTAwN0U3NEUwIC8qIFBpbmdMb2FkZXIuaCAqLywKKwkJCQk5
NzA1OTk3NTEwN0Q5NzUyMDBBNTBBN0MgLyogUG9saWN5Q2hlY2tlci5jcHAgKi8sCisJCQkJOTcw
NTk5NzYxMDdEOTc1MjAwQTUwQTdDIC8qIFBvbGljeUNoZWNrZXIuaCAqLywKKwkJCQk0NjZDMkRB
QjI2QzczQUZCMDA2NTE5MzEgLyogUG9saWN5Q29udGFpbmVyLmggKi8sCisJCQkJNkIwQTA3RjEy
MUZBNEI1QzAwRDU3MzkxIC8qIFByaXZhdGVDbGlja01lYXN1cmVtZW50LmNwcCAqLywKKwkJCQk2
QjBBMDdGMDIxRkE0QjVDMDBENTczOTEgLyogUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQuaCAqLywK
KwkJCQkxQTJBNjgyMTBCNUJFREU3MDAwMkE0ODAgLyogUHJvZ3Jlc3NUcmFja2VyLmNwcCAqLywK
KwkJCQkxQTJBNjgyMjBCNUJFREU3MDAwMkE0ODAgLyogUHJvZ3Jlc3NUcmFja2VyLmggKi8sCisJ
CQkJMUFDQURENzgxODgwRDkxQzAwRDhCNzFEIC8qIFByb2dyZXNzVHJhY2tlckNsaWVudC5oICov
LAorCQkJCTQ2REQ2RTFFMjZFN0RCRTcwMDhDMUY0QyAvKiBSZXBvcnRpbmdFbmRwb2ludHNDYWNo
ZS5jcHAgKi8sCisJCQkJNDZERDZFMUMyNkU3REJFNjAwOEMxRjRDIC8qIFJlcG9ydGluZ0VuZHBv
aW50c0NhY2hlLmggKi8sCisJCQkJN0MyRkE2MEYxRUE5NUEzMjAwQTAzMTA4IC8qIFJlc291cmNl
Q3J5cHRvZ3JhcGhpY0RpZ2VzdC5jcHAgKi8sCisJCQkJN0MyRkE2MTAxRUE5NUEzMjAwQTAzMTA4
IC8qIFJlc291cmNlQ3J5cHRvZ3JhcGhpY0RpZ2VzdC5oICovLAorCQkJCTkzRTIyN0RFMEFGNTg5
QUQwMEQ0ODMyNCAvKiBSZXNvdXJjZUxvYWRlci5jcHAgKi8sCisJCQkJNjU2RDM3MjcwQURCQTVE
RTAwQTQ1NTREIC8qIFJlc291cmNlTG9hZGVyLmggKi8sCisJCQkJRDBBM0E3MzAxNDA1QTM5ODAw
RkI4RUQzIC8qIFJlc291cmNlTG9hZGVyT3B0aW9ucy5oICovLAorCQkJCTUxQUY1MDM1MTZGMTAw
RjYwMDk1QjJFOCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggKi8sCisJCQkJNTFFRTdCMzkxQUE1
MTIzMTAwRjkyQjIxIC8qIFJlc291cmNlTG9hZEluZm8uY3BwICovLAorCQkJCTUxRUU3QjM3MUFB
NTBCMDUwMEY5MkIyMSAvKiBSZXNvdXJjZUxvYWRJbmZvLmggKi8sCisJCQkJOTczRTMyNTQxMDg4
M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLywKKwkJCQk5NzNFMzI1
NTEwODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuaCAqLywKKwkJCQk2QjY5
M0EzMzFDNTFBOTVEMDBCMDNCRUYgLyogUmVzb3VyY2VMb2FkT2JzZXJ2ZXIuY3BwICovLAorCQkJ
CTZCNjkzQTJEMUM1MUE4MkUwMEIwM0JFRiAvKiBSZXNvdXJjZUxvYWRPYnNlcnZlci5oICovLAor
CQkJCTdBOTI5Q0ExMUM1OTgzNzgwMDRERjIyNiAvKiBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzLmNw
cCAqLywKKwkJCQk3QTkyOUNBMjFDNTk4Mzc4MDA0REYyMjYgLyogUmVzb3VyY2VMb2FkU3RhdGlz
dGljcy5oICovLAorCQkJCTVDNkQwMkZGMjY1QzIxMUEwMDJCNjRGRSAvKiBSZXNvdXJjZUxvYWRU
aW1pbmcuaCAqLywKKwkJCQlBNUNFOUYzRTFFNEM0MTZCMDAxQkJFN0MgLyogUmVzb3VyY2VUaW1p
bmcuY3BwICovLAorCQkJCUE1Q0U5RjNDMUU0QkM1ODYwMDFCQkU3QyAvKiBSZXNvdXJjZVRpbWlu
Zy5oICovLAorCQkJCUNCQzJEMjJEMUNFNUI3NzQwMEQxODgwQiAvKiBSZXNvdXJjZVRpbWluZ0lu
Zm9ybWF0aW9uLmNwcCAqLywKKwkJCQlDQkMyRDIyRTFDRTVCNzdEMDBEMTg4MEIgLyogUmVzb3Vy
Y2VUaW1pbmdJbmZvcm1hdGlvbi5oICovLAorCQkJCTI4NkU0RENCMjAyMTA0ODgwMDMxNTIzOCAv
KiBTZXJ2ZXJUaW1pbmcuY3BwICovLAorCQkJCTI4NkU0RENDMjAyMTA0ODgwMDMxNTIzOCAvKiBT
ZXJ2ZXJUaW1pbmcuaCAqLywKKwkJCQlBNTJEODVDQTIxQjA5ODJGMDA2MUMxRUIgLyogU2VydmVy
VGltaW5nUGFyc2VyLmNwcCAqLywKKwkJCQlBNTJEODVDQjIxQjA5ODMwMDA2MUMxRUIgLyogU2Vy
dmVyVGltaW5nUGFyc2VyLmggKi8sCisJCQkJODM2MkU4QkYyMENFRjlDQjAwMjQ1ODg2IC8qIFNo
b3VsZFRyZWF0QXNDb250aW51aW5nTG9hZC5oICovLAorCQkJCTUxMzI3RDVGMTFBMzNBMkIwMDRG
OUQ2NSAvKiBTaW5rRG9jdW1lbnQuY3BwICovLAorCQkJCTUxMzI3RDVFMTFBMzNBMkIwMDRGOUQ2
NSAvKiBTaW5rRG9jdW1lbnQuaCAqLywKKwkJCQlEMDAwRUQyNTExQzFCOUNEMDBDNDc3MjYgLyog
U3ViZnJhbWVMb2FkZXIuY3BwICovLAorCQkJCUQwMDBFRDI2MTFDMUI5Q0QwMEM0NzcyNiAvKiBT
dWJmcmFtZUxvYWRlci5oICovLAorCQkJCTdDRjE1ODk5MUVCQkNEQzcwMEQ0QkZCNyAvKiBTdWJy
ZXNvdXJjZUludGVncml0eS5jcHAgKi8sCisJCQkJN0NGMTU4OUExRUJCQ0RDNzAwRDRCRkI3IC8q
IFN1YnJlc291cmNlSW50ZWdyaXR5LmggKi8sCisJCQkJOTNFMjI3REYwQUY1ODlBRDAwRDQ4MzI0
IC8qIFN1YnJlc291cmNlTG9hZGVyLmNwcCAqLywKKwkJCQk2NTZEMzczMDBBREJBNURFMDBBNDU1
NEQgLyogU3VicmVzb3VyY2VMb2FkZXIuaCAqLywKKwkJCQk2NTlBN0QxMjBCNkRCNEQ5MDAxMTU1
QjMgLyogU3Vic3RpdHV0ZURhdGEuaCAqLywKKwkJCQkxQThGNkIwMTBEQjUzMDA2MDAxREI3OTQg
LyogU3Vic3RpdHV0ZVJlc291cmNlLmggKi8sCisJCQkJRjUyM0QyNzgwMkRFNDNENzAxODYzNUNB
IC8qIFRleHRSZXNvdXJjZURlY29kZXIuY3BwICovLAorCQkJCUY1MjNEMjc5MDJERTQzRDcwMTg2
MzVDQSAvKiBUZXh0UmVzb3VyY2VEZWNvZGVyLmggKi8sCisJCQkJQjFBRDRFNzExM0ExMkE0NjAw
ODQ2QjI3IC8qIFRleHRUcmFja0xvYWRlci5jcHAgKi8sCisJCQkJQjFBRDRFNzIxM0ExMkE0NjAw
ODQ2QjI3IC8qIFRleHRUcmFja0xvYWRlci5oICovLAorCQkJCTBCOTA1NjFEMEYyNTdFOTMwMDk1
RkY2QSAvKiBUaHJlYWRhYmxlTG9hZGVyLmNwcCAqLywKKwkJCQkwQjkwNTYxNzBGMjU3OEJFMDA5
NUZGNkEgLyogVGhyZWFkYWJsZUxvYWRlci5oICovLAorCQkJCTBCOTA1NjE4MEYyNTc4QkUwMDk1
RkY2QSAvKiBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmggKi8sCisJCQkJMUE3RTNDMjgxNzEwOTk3
MzAwMzY3OTM1IC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmggKi8sCisJCQkJMEI5
MDU2RjYwRjI2ODVGMzAwOTVGRjZBIC8qIFdvcmtlclRocmVhZGFibGVMb2FkZXIuY3BwICovLAor
CQkJCTBCOTA1NkY3MEYyNjg1RjMwMDk1RkY2QSAvKiBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmgg
Ki8sCisJCQkpOworCQkJcGF0aCA9IGxvYWRlcjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1c2VzVGFicyA9IDA7CisJCX07CisJCUJDQ0U1OEE3MTA2
MUU4MkYwMDhGQjM1QSAvKiBDYWxsYmFjayBPYmplY3RzICovID0geworCQkJaXNhID0gUEJYR3Jv
dXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkxNDQ5RTI4NjEwN0Q0REI0MDBCNTc5M0YgLyogSlND
YWxsYmFja0RhdGEuY3BwICovLAorCQkJCTE0NDlFMjRBMTA3RDRBODQwMEI1NzkzRiAvKiBKU0Nh
bGxiYWNrRGF0YS5oICovLAorCQkJCUYzRDQ2MTQ2MTE2MUQ1MzIwMENBMEQwOSAvKiBKU0Vycm9y
SGFuZGxlci5jcHAgKi8sCisJCQkJRjNENDYxNDcxMTYxRDUzMjAwQ0EwRDA5IC8qIEpTRXJyb3JI
YW5kbGVyLmggKi8sCisJCQkJOTNCNzBENEQwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTRXZlbnRMaXN0
ZW5lci5jcHAgKi8sCisJCQkJOTNCNzBENEUwOUVCMEM3QzAwOUQ4NDY4IC8qIEpTRXZlbnRMaXN0
ZW5lci5oICovLAorCQkJCTkzNUY0NTQwMEY3QzNCNUYwMEQ3QzFGQiAvKiBKU0xhenlFdmVudExp
c3RlbmVyLmNwcCAqLywKKwkJCQk5MzVGNDU0MTBGN0MzQjVGMDBEN0MxRkIgLyogSlNMYXp5RXZl
bnRMaXN0ZW5lci5oICovLAorCQkJCUJDQTM3OEJBMEQxNUY2NDIwMEI3OTNENiAvKiBTY2hlZHVs
ZWRBY3Rpb24uY3BwICovLAorCQkJCUJDQTM3OEJCMEQxNUY2NDIwMEI3OTNENiAvKiBTY2hlZHVs
ZWRBY3Rpb24uaCAqLywKKwkJCSk7CisJCQluYW1lID0gIkNhbGxiYWNrIE9iamVjdHMiOworCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQkNDRTU4QjQxMDYxRTkyNTAwOEZCMzVB
IC8qIENvbnN0cnVjdG9ycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4g
PSAoCisJCQkJN0MwQ0VGMkQxRTRBNTZDNTAwOERFQjgwIC8qIEpTRE9NQnVpbHRpbkNvbnN0cnVj
dG9yLmggKi8sCisJCQkJN0MwQ0VGMkUxRTRBNTgzMjAwOERFQjgwIC8qIEpTRE9NQnVpbHRpbkNv
bnN0cnVjdG9yQmFzZS5jcHAgKi8sCisJCQkJN0MwQ0VGMkExRTRBNTU2QzAwOERFQjgwIC8qIEpT
RE9NQnVpbHRpbkNvbnN0cnVjdG9yQmFzZS5oICovLAorCQkJCTQxM0MyQzMzMUJDMjlBN0IwMDc1
MjA0QyAvKiBKU0RPTUNvbnN0cnVjdG9yLmggKi8sCisJCQkJN0MwQ0VGMkYxRTRBNThBRDAwOERF
QjgwIC8qIEpTRE9NQ29uc3RydWN0b3JCYXNlLmNwcCAqLywKKwkJCQk3QzBDRUYyODFFNEE1NDJD
MDA4REVCODAgLyogSlNET01Db25zdHJ1Y3RvckJhc2UuaCAqLywKKwkJCQk4NEQ5QTE1RjI2MDJE
RDQwMDA4RDZENUEgLyogSlNET01Db25zdHJ1Y3Rvck5vdENhbGxhYmxlLmggKi8sCisJCQkJN0Mw
Q0VGMkIxRTRBNTVDMzAwOERFQjgwIC8qIEpTRE9NQ29uc3RydWN0b3JOb3RDb25zdHJ1Y3RhYmxl
LmggKi8sCisJCQkJN0MwQ0VGMzAxRTRBNThGMTAwOERFQjgwIC8qIEpTRE9NQ29uc3RydWN0b3JX
aXRoRG9jdW1lbnQuY3BwICovLAorCQkJCTdDMENFRjI5MUU0QTU0RDMwMDhERUI4MCAvKiBKU0RP
TUNvbnN0cnVjdG9yV2l0aERvY3VtZW50LmggKi8sCisJCQkJN0MwQ0VGMkMxRTRBNTY0RDAwOERF
QjgwIC8qIEpTRE9NTGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmggKi8sCisJCQkpOworCQkJbmFtZSA9
IENvbnN0cnVjdG9yczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUJDRjE2
NDREMjY2MjlGOUEwMDAyRjdFRiAvKiBjYWxjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJ
CQljaGlsZHJlbiA9ICgKKwkJCQlCQ0YxNjQ2OTI2NjJBOTM0MDAwMkY3RUYgLyogQ1NTQ2FsY0Nh
dGVnb3J5TWFwcGluZy5jcHAgKi8sCisJCQkJQkNGMTY0NjgyNjYyQTkzNDAwMDJGN0VGIC8qIENT
U0NhbGNDYXRlZ29yeU1hcHBpbmcuaCAqLywKKwkJCQlCQ0YxNjQ1MDI2NjI5RkM3MDAwMkY3RUYg
LyogQ1NTQ2FsY0V4cHJlc3Npb25Ob2RlLmNwcCAqLywKKwkJCQlCQ0YxNjQ0RjI2NjI5RkM3MDAw
MkY3RUYgLyogQ1NTQ2FsY0V4cHJlc3Npb25Ob2RlLmggKi8sCisJCQkJQkNGMTY0NjQyNjYyQTMx
QTAwMDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9kZVBhcnNlci5jcHAgKi8sCisJCQkJQkNG
MTY0NjMyNjYyQTMxQTAwMDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9kZVBhcnNlci5oICov
LAorCQkJCUJDRjE2NDVDMjY2MkEyMzcwMDAyRjdFRiAvKiBDU1NDYWxjSW52ZXJ0Tm9kZS5jcHAg
Ki8sCisJCQkJQkNGMTY0NUIyNjYyQTIzNzAwMDJGN0VGIC8qIENTU0NhbGNJbnZlcnROb2RlLmgg
Ki8sCisJCQkJQkNGMTY0NTgyNjYyQTFFOTAwMDJGN0VGIC8qIENTU0NhbGNOZWdhdGVOb2RlLmNw
cCAqLywKKwkJCQlCQ0YxNjQ1NzI2NjJBMUU5MDAwMkY3RUYgLyogQ1NTQ2FsY05lZ2F0ZU5vZGUu
aCAqLywKKwkJCQlCQ0YxNjQ2MDI2NjJBMjhEMDAwMkY3RUYgLyogQ1NTQ2FsY09wZXJhdGlvbk5v
ZGUuY3BwICovLAorCQkJCUJDRjE2NDVGMjY2MkEyOEQwMDAyRjdFRiAvKiBDU1NDYWxjT3BlcmF0
aW9uTm9kZS5oICovLAorCQkJCUJDRjE2NDU0MjY2MkExMjIwMDAyRjdFRiAvKiBDU1NDYWxjUHJp
bWl0aXZlVmFsdWVOb2RlLmNwcCAqLywKKwkJCQlCQ0YxNjQ1MzI2NjJBMTIyMDAwMkY3RUYgLyog
Q1NTQ2FsY1ByaW1pdGl2ZVZhbHVlTm9kZS5oICovLAorCQkJCUJDNzA5RERGMjY2MzIzQ0UwMEI5
QTIxQyAvKiBDU1NDYWxjU3ltYm9sVGFibGUuY3BwICovLAorCQkJCUJDNzA5RERFMjY2MzIzQ0Uw
MEI5QTIxQyAvKiBDU1NDYWxjU3ltYm9sVGFibGUuaCAqLywKKwkJCQk0OUFFMkQ4QzEzNEVFNTBD
MDA3MjkyMEEgLyogQ1NTQ2FsY1ZhbHVlLmNwcCAqLywKKwkJCQk0OUFFMkQ4RDEzNEVFNTBDMDA3
MjkyMEEgLyogQ1NTQ2FsY1ZhbHVlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGNhbGM7CisJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlCQ0YxNjQ2QzI2NjJBQTBBMDAwMkY3RUYg
LyogY2FsYyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
QkNGMTY0ODkyNjYyQUQ1MjAwMDJGN0VGIC8qIENhbGNFeHByZXNzaW9uQmxlbmRMZW5ndGguY3Bw
ICovLAorCQkJCUJDRjE2NDg4MjY2MkFENTIwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbkJsZW5k
TGVuZ3RoLmggKi8sCisJCQkJQkNGMTY0ODEyNjYyQUM1MTAwMDJGN0VGIC8qIENhbGNFeHByZXNz
aW9uSW52ZXJzaW9uLmNwcCAqLywKKwkJCQlCQ0YxNjQ4MDI2NjJBQzUxMDAwMkY3RUYgLyogQ2Fs
Y0V4cHJlc3Npb25JbnZlcnNpb24uaCAqLywKKwkJCQlCQ0YxNjQ3OTI2NjJBQjg1MDAwMkY3RUYg
LyogQ2FsY0V4cHJlc3Npb25MZW5ndGguY3BwICovLAorCQkJCUJDRjE2NDc4MjY2MkFCODUwMDAy
RjdFRiAvKiBDYWxjRXhwcmVzc2lvbkxlbmd0aC5oICovLAorCQkJCUJDRjE2NDdEMjY2MkFCRTcw
MDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk5lZ2F0aW9uLmNwcCAqLywKKwkJCQlCQ0YxNjQ3QzI2
NjJBQkU3MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25OZWdhdGlvbi5oICovLAorCQkJCUJDRjE2
NDcxMjY2MkFBQzMwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk5vZGUuY3BwICovLAorCQkJCUJD
RjE2NDcwMjY2MkFBQzMwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk5vZGUuaCAqLywKKwkJCQlC
Q0YxNjQ3NTI2NjJBQjM2MDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25OdW1iZXIuY3BwICovLAor
CQkJCUJDRjE2NDc0MjY2MkFCMzYwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk51bWJlci5oICov
LAorCQkJCUJDRjE2NDg1MjY2MkFDQTMwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk9wZXJhdGlv
bi5jcHAgKi8sCisJCQkJQkNGMTY0ODQyNjYyQUNBMzAwMDJGN0VGIC8qIENhbGNFeHByZXNzaW9u
T3BlcmF0aW9uLmggKi8sCisJCQkJQkNGMTY0OEQyNjYyQUREODAwMDJGN0VGIC8qIENhbGNPcGVy
YXRvci5jcHAgKi8sCisJCQkJQkNGMTY0OEMyNjYyQUREODAwMDJGN0VGIC8qIENhbGNPcGVyYXRv
ci5oICovLAorCQkJCUJDRjE2NDZGMjY2MkFBNkYwMDAyRjdFRiAvKiBDYWxjdWxhdGlvbkNhdGVn
b3J5LmNwcCAqLywKKwkJCQlCQ0YxNjQ2RDI2NjJBQTUwMDAwMkY3RUYgLyogQ2FsY3VsYXRpb25D
YXRlZ29yeS5oICovLAorCQkJCTQ5QUUyRDk0MTM0RUU1RjkwMDcyOTIwQSAvKiBDYWxjdWxhdGlv
blZhbHVlLmNwcCAqLywKKwkJCQk0OUFFMkQ5NTEzNEVFNUY5MDA3MjkyMEEgLyogQ2FsY3VsYXRp
b25WYWx1ZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBjYWxjOworCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKKwkJfTsKKwkJQkNGMUE1QkEwOTc4MzIwOTAwNjFBMTIzIC8qIHBsYXRmb3JtICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0OUU5MTJBNDBF
RkFDOEU2MDA5RDBDQUYgLyogYW5pbWF0aW9uICovLAorCQkJCUZEMzE2MDQwMTJCMDI2QTMwMEMx
QTM1OSAvKiBhdWRpbyAqLywKKwkJCQlCQ0YxNjQ2QzI2NjJBQTBBMDAwMkY3RUYgLyogY2FsYyAq
LywKKwkJCQkxQUU0MkY2NzBBQTRCOENCMDBDODYxMkQgLyogY2YgKi8sCisJCQkJQTVDOTc0Q0Ux
MTQ4NUZEQTAwNjZGMkFCIC8qIGNvY29hICovLAorCQkJCUNEOTRBNUNCMUY3MUNCNDYwMEY1MjVD
NSAvKiBlbmNyeXB0ZWRtZWRpYSAqLywKKwkJCQk1MTVCRTE4NzFENTRGNURCMDBERDdDNjggLyog
Z2FtZXBhZCAqLywKKwkJCQlCMkEwMTU5MTBBRjZDRDUzMDA2QkNFMEUgLyogZ3JhcGhpY3MgKi8s
CisJCQkJQTU5RTNDMUIxMTU4MEYzNDAwNzI5MjhFIC8qIGlvcyAqLywKKwkJCQk2NTgyQTE0ODA5
OTk5RDZDMDBCRUVCNkQgLyogbWFjICovLAorCQkJCTlBQzZGMDIwMjExNDhGMUUwMENCREEwNiAv
KiBtZWRpYWNhcGFiaWxpdGllcyAqLywKKwkJCQk0RDNCNTAxMjIxN0U1OEEzMDA2NjVEQjEgLyog
bWVkaWFyZWNvcmRlciAqLywKKwkJCQkwNzIyMUI5MjE3Q0YwQUQ0MDA4NDhFNTEgLyogbWVkaWFz
dHJlYW0gKi8sCisJCQkJNTlDNzdGMTAxMDU0NTkxQzAwNTA2MTA0IC8qIG1vY2sgKi8sCisJCQkJ
NjU2Qjg0RDcwQUVBMUNFOTAwQTA5NUI0IC8qIG5ldHdvcmsgKi8sCisJCQkJMUEyRTZFNTYwQ0M1
NTFFMDAwNEEyMDYyIC8qIHNxbCAqLywKKwkJCQlCMkMzRDlFQzBEMDA2QzFEMDBFRjZGMjYgLyog
dGV4dCAqLywKKwkJCQlFMUVFOEI2QjI0MTJCMkE3MDBFNzk0RDYgLyogeHIgKi8sCisJCQkJREZE
QjkxMkNGOEU4OEE2REExQUQyNjRGIC8qIEFib3J0YWJsZVRhc2tRdWV1ZS5oICovLAorCQkJCUUz
QTg2RkMxMjY5NUVCNDgwMDU5MjY0RCAvKiBDYXB0aW9uUHJlZmVyZW5jZXNEZWxlZ2F0ZS5oICov
LAorCQkJCUMzMzBBMjIxMTNFQzE5NkIwMDAwQjQ1QiAvKiBDb2xvckNob29zZXIuaCAqLywKKwkJ
CQlDMzdDREVCQzE0OUVGMjAzMDA0MjA5MEQgLyogQ29sb3JDaG9vc2VyQ2xpZW50LmggKi8sCisJ
CQkJQkNDOENGQ0EwOTg2Q0QyNDAwMTQwQkYyIC8qIENvbG9yRGF0YS5ncGVyZiAqLywKKwkJCQlB
MTQwOTBGQzFBQTUxRTQ4MDA5MTE5MUEgLyogQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyLmgg
Ki8sCisJCQkJNDFEMDE1QzkwRjRCNUM3MTAwNEE2NjJGIC8qIENvbnRlbnRUeXBlLmNwcCAqLywK
KwkJCQk0MUQwMTVDODBGNEI1QzcxMDA0QTY2MkYgLyogQ29udGVudFR5cGUuaCAqLywKKwkJCQkx
QUI0MEVERjFCRjQyNzFFMDBCQTgxQkUgLyogQ29udGV4dE1lbnUuY3BwICovLAorCQkJCTkzQjZB
MEU1MEIwQkNBNUMwMEY1MDI3QSAvKiBDb250ZXh0TWVudS5oICovLAorCQkJCTFBQjQwRUUwMUJG
NDI3MUUwMEJBODFCRSAvKiBDb250ZXh0TWVudUl0ZW0uY3BwICovLAorCQkJCTA2MDI3Q0FDMEIx
Q0JGQzAwMDg4NEIyRCAvKiBDb250ZXh0TWVudUl0ZW0uaCAqLywKKwkJCQkzMTFDMDhCQzE4RTM1
RDY4MDBCNjU2MTUgLyogQ29udHJvbFN0YXRlcy5oICovLAorCQkJCUQ4QjYxNTJFMTAzMjQ5NTEw
MEM4NTU0QSAvKiBDb29raWUuaCAqLywKKwkJCQk4NjJGMTI5RDE4QzE1NzJDMDA1QzU0QUYgLyog
Q291bnRlZFVzZXJBY3Rpdml0eS5oICovLAorCQkJCTQ2QzY5NkNBMUU3MjA1RTQwMDU5NzkzNyAv
KiBDUFVNb25pdG9yLmNwcCAqLywKKwkJCQk0NkM2OTZDOTFFNzIwNUU0MDA1OTc5MzcgLyogQ1BV
TW9uaXRvci5oICovLAorCQkJCUUxMUFGMTUwMTFCOUExQTMwMDgwNTEwMyAvKiBDdXJzb3IuY3Bw
ICovLAorCQkJCUY1ODc4Njg0MDJERTNCODYwMUVBNDEyMiAvKiBDdXJzb3IuaCAqLywKKwkJCQlF
NTJDRjU0RTIwQTM1QTI4MDBEQURBMjcgLyogRGF0YUxpc3RTdWdnZXN0aW9uUGlja2VyLmggKi8s
CisJCQkJRTUyQ0Y1NEMyMEEyNjhBQzAwREFEQTI3IC8qIERhdGFMaXN0U3VnZ2VzdGlvbnNDbGll
bnQuaCAqLywKKwkJCQlGNDczODQ1NzI1RERFOUZCMDA2REU4REQgLyogRGF0YU93bmVyVHlwZS5o
ICovLAorCQkJCUE1NzMyQjA4MTM2QTE2MUQwMDVDOEQ3QyAvKiBEYXRlQ29tcG9uZW50cy5jcHAg
Ki8sCisJCQkJQTU3MzJCMDkxMzZBMTYxRDAwNUM4RDdDIC8qIERhdGVDb21wb25lbnRzLmggKi8s
CisJCQkJMzdDNzM4RjExRURCREU4NzAwM0YyQjBCIC8qIERhdGVUaW1lQ2hvb3Nlci5oICovLAor
CQkJCTM3QzczOEYyMUVEQkRFODcwMDNGMkIwQiAvKiBEYXRlVGltZUNob29zZXJDbGllbnQuaCAq
LywKKwkJCQlFNUM1OUE5OTI0RDBFMUFBMDAzQjg2RTEgLyogRGF0ZVRpbWVDaG9vc2VyUGFyYW1l
dGVycy5oICovLAorCQkJCTQ1RkVBNUNEMTU2RERFOEMwMDY1NDEwMSAvKiBEZWNpbWFsLmNwcCAq
LywKKwkJCQk0NUZFQTVDRTE1NkRERThDMDA2NTQxMDEgLyogRGVjaW1hbC5oICovLAorCQkJCUNE
ODNEMzVBMjExMTEwODIwMDc2RTExQyAvKiBEZWZlcnJhYmxlVGFzay5oICovLAorCQkJCTQxODI2
QkYxMjNGQjU5NzAwMEI5MjJCMSAvKiBEb2N1bWVudElkZW50aWZpZXIuaCAqLywKKwkJCQlBNzk1
NDY0MjBCNUM0Q0I0MDA3QjQzOEYgLyogRHJhZ0RhdGEuY3BwICovLAorCQkJCUE3QjZFNjlEMEIy
OTFBOTYwMEQwNTI5RiAvKiBEcmFnRGF0YS5oICovLAorCQkJCUE3Q0ZCM0NGMEI3RUQxMEEwMDcw
QzMyRCAvKiBEcmFnSW1hZ2UuY3BwICovLAorCQkJCUE3Q0ZCM0QwMEI3RUQxMEEwMDcwQzMyRCAv
KiBEcmFnSW1hZ2UuaCAqLywKKwkJCQkxQUY1RTRENzFFNTY3N0E5MDA0QTFGMDEgLyogRHJhZ0l0
ZW0uaCAqLywKKwkJCQkyNjJFQzQxQzFEMTEwQjFGMDBCQTc4RkMgLyogRXZlbnRUcmFja2luZ1Jl
Z2lvbnMuY3BwICovLAorCQkJCTI2MkVDNDE5MUQwNzhGM0QwMEJBNzhGQyAvKiBFdmVudFRyYWNr
aW5nUmVnaW9ucy5oICovLAorCQkJCTkzNEZFOUU0MEI1Q0E1MzkwMDNFNEE3MyAvKiBGaWxlQ2hv
b3Nlci5jcHAgKi8sCisJCQkJMDY2Qzc3MkEwQUI2MDNCNzAwMjM4Q0M0IC8qIEZpbGVDaG9vc2Vy
LmggKi8sCisJCQkJNTM1MUQ0QUUxREY5MTZBQzAwODAxMENEIC8qIEZpbGVIYW5kbGUuY3BwICov
LAorCQkJCTUzNTFENEFGMURGOTE2QUMwMDgwMTBDRCAvKiBGaWxlSGFuZGxlLmggKi8sCisJCQkJ
N0EwOUNFRUIxRjAxQ0M5MzAwRTkzQkRCIC8qIEZpbGVNb25pdG9yLmNwcCAqLywKKwkJCQk3QTA5
Q0VFQzFGMDFDQzkzMDBFOTNCREIgLyogRmlsZU1vbml0b3IuaCAqLywKKwkJCQkyRUYxQkZFODEy
MUM5RjQyMDBDMjc2MjcgLyogRmlsZVN0cmVhbS5jcHAgKi8sCisJCQkJMkVGMUJGRTkxMjFDOUY0
MjAwQzI3NjI3IC8qIEZpbGVTdHJlYW0uaCAqLywKKwkJCQkyRUYxQkZGODEyMUNCMENFMDBDMjc2
MjcgLyogRmlsZVN0cmVhbUNsaWVudC5oICovLAorCQkJCUJDMDczQkE5MEMzOTlCMUYwMDBGNTk3
OSAvKiBGbG9hdENvbnZlcnNpb24uaCAqLywKKwkJCQk0MTkwRjNBMTI0OUQxNTI3MDA1MzFDNTcg
LyogRnJhbWVSYXRlTW9uaXRvci5jcHAgKi8sCisJCQkJNDE5MEYzQTMyNDlEMTUyODAwNTMxQzU3
IC8qIEZyYW1lUmF0ZU1vbml0b3IuaCAqLywKKwkJCQlBODc0OEJERjEyQ0JGMkRDMDAxRkJBNDEg
LyogSGFzaFRvb2xzLmggKi8sCisJCQkJQkMzQkMyOUIwRTkxQUIwRjAwODM1NTg4IC8qIEhvc3RX
aW5kb3cuaCAqLywKKwkJCQkxRkQ5OTJGOTI2QUEyNTREMDA4OEU1OTYgLyogS2V5Ym9hcmRTY3Jv
bGxpbmdBbmltYXRvci5jcHAgKi8sCisJCQkJMUZEOTkyRjYyNkFBMjRGODAwODhFNTk2IC8qIEtl
eWJvYXJkU2Nyb2xsaW5nQW5pbWF0b3IuaCAqLywKKwkJCQkxQUUwMEQ1NzE4MkRBQzhEMDAwODdE
RDcgLyogS2V5ZWRDb2RpbmcuaCAqLywKKwkJCQlFMTVGRjdENDE4Qzk1NTM4MDBGRTRDODcgLyog
S2V5cHJlc3NDb21tYW5kLmggKi8sCisJCQkJQTNENDJBODQxRjMzQkEzNjAwQTY0QjYyIC8qIExh
eW91dFVuaXQuY3BwICovLAorCQkJCTE0MURDMDQ3MTY0ODM0OEYwMDM3MUU1QSAvKiBMYXlvdXRV
bml0LmggKi8sCisJCQkJNTE2MkM3RjIxMUY3N0VGQTAwNjEyRUZFIC8qIExlZ2FjeVNjaGVtZVJl
Z2lzdHJ5LmNwcCAqLywKKwkJCQk1MTYyQzdGMzExRjc3RUZCMDA2MTJFRkUgLyogTGVnYWN5U2No
ZW1lUmVnaXN0cnkuaCAqLywKKwkJCQlCQ0U2NUJFODBFQUNERjE2MDA3RTQ1MzMgLyogTGVuZ3Ro
LmNwcCAqLywKKwkJCQlCQ0U2NUJFOTBFQUNERjE2MDA3RTQ1MzMgLyogTGVuZ3RoLmggKi8sCisJ
CQkJMEZFOTVGMUExQ0Q1NDBEMDAwRDJGNDVBIC8qIExlbmd0aEJveC5jcHAgKi8sCisJCQkJQkNG
RjY0OEYwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0aEJveC5oICovLAorCQkJCTBGODcxNjZEMUM4
NjlEODMwMDRGRjBERSAvKiBMZW5ndGhQb2ludC5jcHAgKi8sCisJCQkJMEY4NzE2NkUxQzg2OUQ4
MzAwNEZGMERFIC8qIExlbmd0aFBvaW50LmggKi8sCisJCQkJMEZFRjIwQ0QxQkQ0QTI0MTAwMTI4
RTVEIC8qIExlbmd0aFNpemUuY3BwICovLAorCQkJCUJDRkY2NDkwMEVBRDE1QzIwMEMxRDZGNyAv
KiBMZW5ndGhTaXplLmggKi8sCisJCQkJNTE0M0IyNjIxREREMTQ5MDAwMTRGQUM2IC8qIExpbmtJ
Y29uLmggKi8sCisJCQkJQzA0NkUxQUIxMjA4QTlGRTAwQkEyQ0Y3IC8qIExvY2FsaXplZFN0cmlu
Z3MuY3BwICovLAorCQkJCTkzNTIwN0JEMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJp
bmdzLmggKi8sCisJCQkJQTgyMzlERkUwOUIzQ0Y4QTAwQjYwNjQxIC8qIExvZ2dpbmcuY3BwICov
LAorCQkJCUE4MjM5REZGMDlCM0NGOEEwMEI2MDY0MSAvKiBMb2dnaW5nLmggKi8sCisJCQkJMUNG
MThGM0MyNkJCNUFGMjAwNEIxNzIyIC8qIExvZ0luaXRpYWxpemF0aW9uLmNwcCAqLywKKwkJCQkw
RkRDRDdGMjFENDdFNjU1MDA5RjA4QkMgLyogTG9nSW5pdGlhbGl6YXRpb24uaCAqLywKKwkJCQk0
NkVGQUYwRjFFNUZCOUUxMDBFN0YzNEIgLyogTG93UG93ZXJNb2RlTm90aWZpZXIuY3BwICovLAor
CQkJCTQ2RUZBRjEwMUU1RkI5RTEwMEU3RjM0QiAvKiBMb3dQb3dlck1vZGVOb3RpZmllci5oICov
LAorCQkJCTdBRTZDOTM5MUJFMEM2MDEwMEUxOUUwMyAvKiBNYWluVGhyZWFkU2hhcmVkVGltZXIu
Y3BwICovLAorCQkJCTdBRTZDOTNBMUJFMEM2MDEwMEUxOUUwMyAvKiBNYWluVGhyZWFkU2hhcmVk
VGltZXIuaCAqLywKKwkJCQlDREYyQjAwMzE4MUYwNTlDMDBGMkI0MjQgLyogTWVkaWFEZXNjcmlw
dGlvbi5oICovLAorCQkJCUNENjQxRUM3MTgxRUQ2MDEwMEVFNEM0MSAvKiBNZWRpYVNhbXBsZS5o
ICovLAorCQkJCUExN0QyNzVEMUVBQzU3OTgwMEJGMDFFNyAvKiBNZWRpYVNlbGVjdGlvbk9wdGlv
bi5oICovLAorCQkJCTQxNkVDQUUzMjVCNThDQzQwMEIzNERBNSAvKiBNZWRpYVNlc3Npb25Hcm91
cElkZW50aWZpZXIuaCAqLywKKwkJCQk0MTQ0NjBBMDI0MTI5OTQxMDA4MTRCRTcgLyogTWVkaWFT
ZXNzaW9uSWRlbnRpZmllci5oICovLAorCQkJCUEzMUFDNzBBMjQzNDA5ODQwMDdGMDBBMiAvKiBN
ZWRpYVN0cmF0ZWd5LmNwcCAqLywKKwkJCQk5QjEyMjlDNjIzRkU0RDVGMDA4Q0E3NTEgLyogTWVk
aWFTdHJhdGVneS5oICovLAorCQkJCTUxNTFGMDdCMjYxNTM2M0YwMEZEQjJCNCAvKiBNZWRpYVVu
aXF1ZUlkZW50aWZpZXIuaCAqLywKKwkJCQlCQzc3MkM0QzBDNEVCMzA0MDA4MzI4NUYgLyogTUlN
RVR5cGVSZWdpc3RyeS5jcHAgKi8sCisJCQkJQkM3NzJDNEQwQzRFQjMwNDAwODMyODVGIC8qIE1J
TUVUeXBlUmVnaXN0cnkuaCAqLywKKwkJCQlFMTUxM0Q1MDE2NzdGMDg4MDAxNDlGQ0IgLyogTm90
SW1wbGVtZW50ZWQuY3BwICovLAorCQkJCTk4RUIxRjk0MTMxM0ZFMDUwMEQwRTFFQSAvKiBOb3RJ
bXBsZW1lbnRlZC5oICovLAorCQkJCTQxNzhFRjE2MjQxMjVCNkMwMDE5M0M3NCAvKiBOb3dQbGF5
aW5nTWFuYWdlci5jcHAgKi8sCisJCQkJNDE3OEVGMTQyNDEyNUI2QzAwMTkzQzc0IC8qIE5vd1Bs
YXlpbmdNYW5hZ2VyLmggKi8sCisJCQkJNDE4NEY1MTUxRUFGMDU5ODAwRjE4QkYwIC8qIE9yaWVu
dGF0aW9uTm90aWZpZXIuaCAqLywKKwkJCQkyRUUwMkExRTFGNzMyNDI4MDAwNkFGNzIgLyogUGFz
dGVib2FyZC5jcHAgKi8sCisJCQkJNEIyNzA4QzUwQUYxOUVFNDAwNjUxMjdGIC8qIFBhc3RlYm9h
cmQuaCAqLywKKwkJCQlGNDBEQUFFQjI1RDlGMjVFMDAxMUI0RkEgLyogUGFzdGVib2FyZENvbnRl
eHQuaCAqLywKKwkJCQlGNEZCMzRGQjIzNTBDODVEMDBGMDA5NEEgLyogUGFzdGVib2FyZEN1c3Rv
bURhdGEuY3BwICovLAorCQkJCUY0RkIzNEZBMjM1MEM4NUQwMEYwMDk0QSAvKiBQYXN0ZWJvYXJk
Q3VzdG9tRGF0YS5oICovLAorCQkJCUY0OTc4Njg3MUZGNDVGQTUwMEUwNjBBQiAvKiBQYXN0ZWJv
YXJkSXRlbUluZm8uaCAqLywKKwkJCQlDNUY3NjVCNDE0RTFENDE0MDA2Qzg5OUIgLyogUGFzdGVi
b2FyZFN0cmF0ZWd5LmggKi8sCisJCQkJMUFGNUU0RDIxRTU2NzM1QTAwNEExRjAxIC8qIFBhc3Rl
Ym9hcmRXcml0ZXJEYXRhLmNwcCAqLywKKwkJCQkxQUY1RTREMzFFNTY3MzVBMDA0QTFGMDEgLyog
UGFzdGVib2FyZFdyaXRlckRhdGEuaCAqLywKKwkJCQkxREJDMUI1NTIzNDdCM0QyMDBCOTAxQUYg
LyogUGljdHVyZUluUGljdHVyZU9ic2VydmVyLmggKi8sCisJCQkJMUQyQzgyQjYyMzZBM0Y2QTAw
NTVENkM1IC8qIFBpY3R1cmVJblBpY3R1cmVTdXBwb3J0LmggKi8sCisJCQkJQTE0OTc4NzAxQUJB
RjNBNTAwQ0VGN0U0IC8qIFBsYXRmb3JtQ29udGVudEZpbHRlci5oICovLAorCQkJCUJDNUM3NjI5
MTQ5N0ZFMTQwMEJDNDc3NSAvKiBQbGF0Zm9ybUV2ZW50LmggKi8sCisJCQkJQTcyM0Y3N0ExNDg0
Q0E0QzAwOEM2REJFIC8qIFBsYXRmb3JtRXhwb3J0TWFjcm9zLmggKi8sCisJCQkJQ0U2OEM4RkYy
MTkyNEVFNTAwMTIzMEIzIC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5jcHAgKi8sCisJCQkJOTM1
QzQ3NjYwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtS2V5Ym9hcmRFdmVudC5oICovLAorCQkJ
CTkzNUM0NzY3MDlBQzRENDMwMEE2QUFCNCAvKiBQbGF0Zm9ybU1vdXNlRXZlbnQuaCAqLywKKwkJ
CQlDNUJBQzE2RjE0RTMwRTQ3MDAwMDg4MzcgLyogUGxhdGZvcm1QYXN0ZWJvYXJkLmggKi8sCisJ
CQkJQzEzNzg0NkIyNDJCRUVCQTAwRTg2RkE4IC8qIFBsYXRmb3JtU2NyZWVuLmNwcCAqLywKKwkJ
CQlCQ0VDMDFENjBDMjc0RUI0MDA5RjRFQzkgLyogUGxhdGZvcm1TY3JlZW4uaCAqLywKKwkJCQky
NTI3Q0M5NTE2QkY5NUREMDA5RERBQzAgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXNVdHRlcmFu
Y2UuY3BwICovLAorCQkJCTI1MjdDQzkxMTZCRjhCQTEwMDlEREFDMCAvKiBQbGF0Zm9ybVNwZWVj
aFN5bnRoZXNpc1V0dGVyYW5jZS5oICovLAorCQkJCTI1MjdDQzkzMTZCRjkyRUMwMDlEREFDMCAv
KiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNlLmNwcCAqLywKKwkJCQkyNTI3Q0M5MjE2QkY5
MEI0MDA5RERBQzAgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVzaXNWb2ljZS5oICovLAorCQkJCTI5
N0JFM0Q5MTZDMDQzRDgwMDMzMTZCRCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyLmNwcCAq
LywKKwkJCQkyOUU0RDhERjE2QjA5NDBGMDBDODQ3MDQgLyogUGxhdGZvcm1TcGVlY2hTeW50aGVz
aXplci5oICovLAorCQkJCTFBRDhGODFBMTFDQUI5RTkwMEU5M0U1NCAvKiBQbGF0Zm9ybVN0cmF0
ZWdpZXMuY3BwICovLAorCQkJCTFBRDhGODE5MTFDQUI5RTkwMEU5M0U1NCAvKiBQbGF0Zm9ybVN0
cmF0ZWdpZXMuaCAqLywKKwkJCQkwRkQ3QzIxRDIzQ0U0MUUzMDA5NkQxMDIgLyogUGxhdGZvcm1X
aGVlbEV2ZW50LmNwcCAqLywKKwkJCQk5MzVDNDc2QTA5QUM0RDRGMDBBNkFBQjQgLyogUGxhdGZv
cm1XaGVlbEV2ZW50LmggKi8sCisJCQkJQkNCQjhBQjUxM0YxQUZCMDAwNzM0REYwIC8qIFBPRElu
dGVydmFsLmggKi8sCisJCQkJQkNCQjhBQjYxM0YxQUZCMDAwNzM0REYwIC8qIFBPREludGVydmFs
VHJlZS5oICovLAorCQkJCUJDQkI4QUI3MTNGMUFGQjAwMDczNERGMCAvKiBQT0RSZWRCbGFja1Ry
ZWUuaCAqLywKKwkJCQk3MUVBRENENjIyMDg3RTZEMDA2NUE0NUYgLyogUG9pbnRlcklELmggKi8s
CisJCQkJMDY2OEUxODkwQUREOTYyNDAwNDEyOEUwIC8qIFBvcHVwTWVudS5oICovLAorCQkJCUFC
QzEyODc2MEIzM0FBNkQwMEM2OTNENSAvKiBQb3B1cE1lbnVDbGllbnQuaCAqLywKKwkJCQlCQzNC
RTEyQTBFOTgwOTJGMDA4MzU1ODggLyogUG9wdXBNZW51U3R5bGUuaCAqLywKKwkJCQlBMUFEQUY3
OTIzNjBFRjZDMDA5Q0I3NzYgLyogUHJldmlld0NvbnZlcnRlci5jcHAgKi8sCisJCQkJQTFDMTUw
NzgxRTNGMkIzRTAwMzJDOThDIC8qIFByZXZpZXdDb252ZXJ0ZXIuaCAqLywKKwkJCQlBMUFEQUY3
QjIzNjBGRDNEMDA5Q0I3NzYgLyogUHJldmlld0NvbnZlcnRlckNsaWVudC5oICovLAorCQkJCUEx
QURBRjdDMjM2MEZEM0UwMDlDQjc3NiAvKiBQcmV2aWV3Q29udmVydGVyUHJvdmlkZXIuaCAqLywK
KwkJCQk1MUY2NDVEMjFGRUNEQkM4MDBCNTRERUQgLyogUHJvY2Vzc0lkZW50aWZpZXIuY3BwICov
LAorCQkJCTUxRjY0NUQzMUZFQ0RCQzgwMEI1NERFRCAvKiBQcm9jZXNzSWRlbnRpZmllci5oICov
LAorCQkJCUY0N0E2MzNDMUZGNkZENTAwMDgxQjNDQyAvKiBQcm9taXNlZEF0dGFjaG1lbnRJbmZv
LmggKi8sCisJCQkJMDA4MUZFRkQxNkIwQTI0NDAwOEFBQTdBIC8qIFB1YmxpY1N1ZmZpeC5oICov
LAorCQkJCTVDOTdBMzM2MUY1RjdBNjUwMDEwNTIwNyAvKiBSZWN0RWRnZXMuaCAqLywKKwkJCQlD
QTE2MzVEQzIwNzJFNzY5MDBFN0QyQ0UgLyogUmVmZXJyZXJQb2xpY3kuY3BwICovLAorCQkJCTk4
MzFBRTQ5MTU0MjI1QTIwMEZFMjY0NCAvKiBSZWZlcnJlclBvbGljeS5oICovLAorCQkJCTZCNEU4
NjEyMjIxQjcxM0YwMDIyRjM4OSAvKiBSZWdpc3RyYWJsZURvbWFpbi5oICovLAorCQkJCUNERkMz
NjAzMThDQTYxQzIwMDI2RTU2RiAvKiBSZW1vdGVDb21tYW5kTGlzdGVuZXIuY3BwICovLAorCQkJ
CUNERkMzNjA0MThDQTYxQzIwMDI2RTU2RiAvKiBSZW1vdGVDb21tYW5kTGlzdGVuZXIuaCAqLywK
KwkJCQlBMThGN0EzNTFFQ0E3MzY0MDA1OUUxRTEgLyogUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tz
LmNwcCAqLywKKwkJCQkyOTNFQUUxRTEzNTZCMkZFMDA2N0FDRjkgLyogUnVudGltZUFwcGxpY2F0
aW9uQ2hlY2tzLmggKi8sCisJCQkJQzFFMUQyMzUyMDNERjE1NDAwNTg0NjY1IC8qIFNjcmVlblBy
b3BlcnRpZXMuaCAqLywKKwkJCQk0MTEyMjNCODI2MDI0NEZFMDBCMEEwQjYgLyogU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dElkZW50aWZpZXIuaCAqLywKKwkJCQlCQzhBRTM0QzEyRUEwOTZBMDBFQjNB
RTYgLyogU2Nyb2xsYWJsZUFyZWEuY3BwICovLAorCQkJCUJDOEFFMzREMTJFQTA5NkEwMEVCM0FF
NiAvKiBTY3JvbGxhYmxlQXJlYS5oICovLAorCQkJCTBGQzY5MkJDMjU3QzBGNDEwMDk4RTNGOSAv
KiBTY3JvbGxBbmltYXRpb25LaW5ldGljLmNwcCAqLywKKwkJCQkwRkM2OTJCQTI1N0MwRjQwMDA5
OEUzRjkgLyogU2Nyb2xsQW5pbWF0aW9uS2luZXRpYy5oICovLAorCQkJCTBGQzY5MkJEMjU3QzBG
NDEwMDk4RTNGOSAvKiBTY3JvbGxBbmltYXRpb25TbW9vdGguY3BwICovLAorCQkJCTBGQzY5MkJF
MjU3QzBGNDIwMDk4RTNGOSAvKiBTY3JvbGxBbmltYXRpb25TbW9vdGguaCAqLywKKwkJCQlDQTNC
RjY3QjEwRDk5QkFFMDBFNkNFNTMgLyogU2Nyb2xsQW5pbWF0b3IuY3BwICovLAorCQkJCUNBM0JG
NjdEMTBEOTlCQUUwMEU2Q0U1MyAvKiBTY3JvbGxBbmltYXRvci5oICovLAorCQkJCUJDQUE5MEMy
MEE3RUJBNjAwMDhCMTIyOSAvKiBTY3JvbGxiYXIuY3BwICovLAorCQkJCUJDN0IyQUY4MDQ1MDgy
NDEwMEE4MDAwRiAvKiBTY3JvbGxiYXIuaCAqLywKKwkJCQkwRkU3MTQxNTE0MjE4OUZDMDBEQjMz
QkEgLyogU2Nyb2xsYmFyVGhlbWUuY3BwICovLAorCQkJCUJDOEI4NTRBMEU3QzdGNTYwMEFCNjk4
NCAvKiBTY3JvbGxiYXJUaGVtZS5oICovLAorCQkJCUJDMTQwMjg4MEU4MzY4MDgwMDMxOTcxNyAv
KiBTY3JvbGxiYXJUaGVtZUNvbXBvc2l0ZS5jcHAgKi8sCisJCQkJQkMxNDAyODkwRTgzNjgwODAw
MzE5NzE3IC8qIFNjcm9sbGJhclRoZW1lQ29tcG9zaXRlLmggKi8sCisJCQkJNUI0NjY1NUUyNUQx
NEMwOTAwMENGRTE0IC8qIFNjcm9sbGluZ0VmZmVjdHNDb250cm9sbGVyLmNwcCAqLywKKwkJCQk1
QjQ2NjU1RjI1RDE0QzA5MDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCAq
LywKKwkJCQk1QjQ2NjU1RDI1RDE0QzA5MDAwQ0ZFMTQgLyogU2Nyb2xsU25hcEFuaW1hdG9yU3Rh
dGUuY3BwICovLAorCQkJCTVCNDY2NTYwMjVEMTRDMEEwMDBDRkUxNCAvKiBTY3JvbGxTbmFwQW5p
bWF0b3JTdGF0ZS5oICovLAorCQkJCTBGNENERUFBMjNEOTFBOEEwMDI1MUIwMiAvKiBTY3JvbGxU
eXBlcy5jcHAgKi8sCisJCQkJOTNDMDlDODUwQjA2NTdBQTAwNUFCRDREIC8qIFNjcm9sbFR5cGVz
LmggKi8sCisJCQkJQkMyNDQxQzMwRThCNjVEMDAwNTUzMjBGIC8qIFNjcm9sbFZpZXcuY3BwICov
LAorCQkJCUJDNkQ2RTI1MDlBRjk0MzUwMEY1OTc1OSAvKiBTY3JvbGxWaWV3LmggKi8sCisJCQkJ
QUI3MTcwODgwQjMxMTgwODAwMTcxMjNFIC8qIFNlYXJjaFBvcHVwTWVudS5oICovLAorCQkJCTA3
ODYzM0Q3MjNGRTA5NjQwMDg3QUUyMSAvKiBTZXJpYWxpemVkUGxhdGZvcm1EYXRhQ3VlLmNwcCAq
LywKKwkJCQkwNzdBRjEzRTE4RjRBRTQwMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtRGF0
YUN1ZS5oICovLAorCQkJCTA3NkQxQzFEMjNGNkQ5RDgwMEQ5NUIwNiAvKiBTZXJpYWxpemVkUGxh
dGZvcm1EYXRhQ3VlVmFsdWUuaCAqLywKKwkJCQkxQTRBOTU0QjBCNEVEQ0NCMDAyRDhDM0MgLyog
U2hhcmVkQnVmZmVyLmNwcCAqLywKKwkJCQkxQTRBOTU0QzBCNEVEQ0NCMDAyRDhDM0MgLyogU2hh
cmVkQnVmZmVyLmggKi8sCisJCQkJODM0REZBQ0UxRjdEQUU1NzAwQzI3MjVCIC8qIFNoYXJlZFN0
cmluZ0hhc2guY3BwICovLAorCQkJCTgzNERGQUNDMUY3REFFNTYwMEMyNzI1QiAvKiBTaGFyZWRT
dHJpbmdIYXNoLmggKi8sCisJCQkJOTMzMDlFQTAwOTlFQjc4QzAwNTZFNTgxIC8qIFNoYXJlZFRp
bWVyLmggKi8sCisJCQkJQzE0OUQ1NTkyNDJFQTRGODAwM0VCQjEyIC8qIFNsZWVwRGlzYWJsZXIu
Y3BwICovLAorCQkJCUMxNDlENTVBMjQyRUE0RjkwMDNFQkIxMiAvKiBTbGVlcERpc2FibGVyLmgg
Ki8sCisJCQkJQzE4RkI1MTgyNDJGOTM4MjAwN0U5ODc1IC8qIFNsZWVwRGlzYWJsZXJDbGllbnQu
Y3BwICovLAorCQkJCUMxNDlENTVCMjQyRUE0RkEwMDNFQkIxMiAvKiBTbGVlcERpc2FibGVyQ2xp
ZW50LmggKi8sCisJCQkJQzE0OUQ1NjUyNDJFQjc2NTAwM0VCQjEyIC8qIFNsZWVwRGlzYWJsZXJJ
ZGVudGlmaWVyLmggKi8sCisJCQkJQTMzNEJEODIyMTk0RTQ2MTAwMDBENzdGIC8qIFNTTEtleUdl
bmVyYXRvci5jcHAgKi8sCisJCQkJRjU4Nzg2NjIwMkRFM0IxMTAxRUE0MTIyIC8qIFNTTEtleUdl
bmVyYXRvci5oICovLAorCQkJCUY0MzNFOTA0MURCQkRCQzIwMEVGMEQxNCAvKiBTdGF0aWNQYXN0
ZWJvYXJkLmNwcCAqLywKKwkJCQlGNDMzRTkwMjFEQkJEQkEyMDBFRjBEMTQgLyogU3RhdGljUGFz
dGVib2FyZC5oICovLAorCQkJCTkzQjJEODE1MEY5OTIwRDIwMDZBRTZCMiAvKiBTdWRkZW5UZXJt
aW5hdGlvbi5oICovLAorCQkJCTk3NjI3Qjk3MTRGQjU0MjQwMDJDRENBMSAvKiBTdXBwbGVtZW50
YWJsZS5oICovLAorCQkJCUUzQzA0MTMxMjU0Q0E2NjYwMDIxRDBFNiAvKiBTeXN0ZW1Tb3VuZERl
bGVnYXRlLmggKi8sCisJCQkJRTNDMDQxMzIyNTRDQTcxMTAwMjFEMEU2IC8qIFN5c3RlbVNvdW5k
TWFuYWdlci5jcHAgKi8sCisJCQkJRTNDMDQxMkQyNTRDQTI5QjAwMjFEMEU2IC8qIFN5c3RlbVNv
dW5kTWFuYWdlci5oICovLAorCQkJCTdDQzU2NEI2MThCQUJFQTYwMDFCOTY1MiAvKiBUZWxlcGhv
bmVOdW1iZXJEZXRlY3Rvci5oICovLAorCQkJCUY0OEI3RDUyMjVDMzQxRTYwMDlFNzVERCAvKiBU
ZXh0UmVjb2duaXRpb25SZXN1bHQuaCAqLywKKwkJCQlCQ0U2NUQzMTBFQUQxMjExMDA3RTQ1MzMg
LyogVGhlbWUuY3BwICovLAorCQkJCUJDRTY1OEZFMEVBOTI0OEEwMDdFNDUzMyAvKiBUaGVtZS5o
ICovLAorCQkJCTBGMjgzQThEMjM1NTgyRjgwMDQ3OTRDQSAvKiBUaGVtZVR5cGVzLmNwcCAqLywK
KwkJCQlCQ0U2NTlBODBFQTkyN0I5MDA3RTQ1MzMgLyogVGhlbWVUeXBlcy5oICovLAorCQkJCTUx
REY2RDdEMEI5MkExNkQwMEMyREM4NSAvKiBUaHJlYWRDaGVjay5oICovLAorCQkJCUUxRkY1N0E1
MEYwMTI1NkIwMDg5MUVCQiAvKiBUaHJlYWRHbG9iYWxEYXRhLmNwcCAqLywKKwkJCQlFMUZGNTdB
MjBGMDEyNTVCMDA4OTFFQkIgLyogVGhyZWFkR2xvYmFsRGF0YS5oICovLAorCQkJCTUxMUZBRUE5
MUJEQzk4OUEwMEI0QUZFNCAvKiBUaHJlYWRTYWZlRGF0YUJ1ZmZlci5oICovLAorCQkJCTE4NUJD
RjI2MEYzMjc5Q0UwMDBFQTI2MiAvKiBUaHJlYWRUaW1lcnMuY3BwICovLAorCQkJCTE4NUJDRjI3
MEYzMjc5Q0UwMDBFQTI2MiAvKiBUaHJlYWRUaW1lcnMuaCAqLywKKwkJCQk5MzMwOUVBMTA5OUVC
NzhDMDA1NkU1ODEgLyogVGltZXIuY3BwICovLAorCQkJCTkzMDVCMjRDMDk4RjFCNkIwMEMyODg1
NSAvKiBUaW1lci5oICovLAorCQkJCTcxQUVFNEVCMjFCNUE0OUMwMEREQjAzNiAvKiBUb3VjaEFj
dGlvbi5oICovLAorCQkJCTg2ODE2MEQxMTg3NjY5QzQwMDIxRTc5RCAvKiBVc2VyQWN0aXZpdHku
Y3BwICovLAorCQkJCTg2ODE2MEQyMTg3NjY5QzQwMDIxRTc5RCAvKiBVc2VyQWN0aXZpdHkuaCAq
LywKKwkJCQlBM0FGOUQ4MjIwMzI1MzI0MDA2Q0FEMDYgLyogVXNlckFnZW50LmggKi8sCisJCQkJ
NzFDOTE2MDcxRDE0ODNBMzAwQUNBNDdEIC8qIFVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24u
aCAqLywKKwkJCQk4M0M0NUI4RDFEQzJCNjdDMDA4ODcxQkEgLyogVmFsaWRhdGlvbkJ1YmJsZS5o
ICovLAorCQkJCTUxNUY3OTUxMUNGQ0EzQzcwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jvc3NUaHJlYWRD
b3BpZXIuY3BwICovLAorCQkJCTUxNUY3OTUyMUNGQ0EzQzcwMENDRUQ5MyAvKiBXZWJDb3JlQ3Jv
c3NUaHJlYWRDb3BpZXIuaCAqLywKKwkJCQk4MzlBMkYyQjFFMjA0QTZEMDAzOTA1N0UgLyogV2Vi
R0xTdGF0ZVRyYWNrZXIuY3BwICovLAorCQkJCTgzOUEyRjJDMUUyMDRBNkQwMDM5MDU3RSAvKiBX
ZWJHTFN0YXRlVHJhY2tlci5oICovLAorCQkJCTkzODBGNDcxMDlBMTFBQjQwMDFGREIzNCAvKiBX
aWRnZXQuY3BwICovLAorCQkJCTkzODBGNDcyMDlBMTFBQjQwMDFGREIzNCAvKiBXaWRnZXQuaCAq
LywKKwkJCQlFMUUxQkVGRjExNUZGNkZCMDA2RjUyQ0EgLyogV2luZG93c0tleWJvYXJkQ29kZXMu
aCAqLywKKwkJCSk7CisJCQlwYXRoID0gcGxhdGZvcm07CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQkJdGFiV2lkdGggPSA0OworCQkJdXNlc1RhYnMgPSAwOworCQl9OworCQlDMDc4Mzc1
RjIzREYyNDYyMDBDOUM1QzggLyogbWFjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQlj
aGlsZHJlbiA9ICgKKwkJCQlDMDc4Mzc2MDIzREYyNTNFMDBDOUM1QzggLyogQVhJc29sYXRlZE9i
amVjdE1hYy5tbSAqLywKKwkJCSk7CisJCQluYW1lID0gbWFjOworCQkJc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsKKwkJfTsKKwkJQ0QwREJCM0UxNDIyNzRFNjAwMjgwMjYzIC8qIGF1ZGlvICovID0g
eworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlDRDRBQzUyODE0OTZB
RTJGMDA4N0M0RUYgLyogQ29tcG9zaXRlLndhdiAqLywKKwkJCSk7CisJCQluYW1lID0gYXVkaW87
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlDRDBFRUUwRDE0NzQzRTQ4MDAz
RUFGQTIgLyogaW9zICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgK
KwkJCQlDRDBFRUUwQjE0NzQzRTM1MDAzRUFGQTIgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvcklP
Uy5jcHAgKi8sCisJCQkJQ0QzNkMxNjEyNjA3RTc4NjAwQzhDNTI5IC8qIEF1ZGlvU2Vzc2lvbklP
Uy5oICovLAorCQkJCUNEQTc5ODI1MTcwQTI3OTAwMEQ0NUM1NSAvKiBBdWRpb1Nlc3Npb25JT1Mu
bW0gKi8sCisJCQkJQ0Q4NzVBNzQyNDExQjc5ODAwQjA5RjU4IC8qIE1lZGlhU2Vzc2lvbkhlbHBl
cklPUy5oICovLAorCQkJCUNEODc1QTc1MjQxMUI3OTgwMEIwOUY1OCAvKiBNZWRpYVNlc3Npb25I
ZWxwZXJJT1MubW0gKi8sCisJCQkJMDc2MzhBOTcxODg0NDg3MjAwRTE1QTFCIC8qIE1lZGlhU2Vz
c2lvbk1hbmFnZXJJT1MuaCAqLywKKwkJCQkwNzYzOEE5ODE4ODQ0ODcyMDBFMTVBMUIgLyogTWVk
aWFTZXNzaW9uTWFuYWdlcklPUy5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0gaW9zOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0Q0RTRFNkEyMzU3QjUyNjAwNzg5NUMzIC8q
IE1lZGlhQ2FwYWJpbGl0aWVzICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQlDRDRFNEU4RDIzNTdCNjAyMDA3ODk1QzMgLyogSlNBdWRpb0NvbmZpZ3VyYXRp
b24uY3BwICovLAorCQkJCUNENEU0RTdDMjM1N0I1RkQwMDc4OTVDMyAvKiBKU0F1ZGlvQ29uZmln
dXJhdGlvbi5oICovLAorCQkJCUNENEU0RTg0MjM1N0I1RkYwMDc4OTVDMyAvKiBKU0NvbG9yR2Ft
dXQuY3BwICovLAorCQkJCUNENEU0RTg2MjM1N0I2MDAwMDc4OTVDMyAvKiBKU0NvbG9yR2FtdXQu
aCAqLywKKwkJCQlDRDRFNEU4MTIzNTdCNUZFMDA3ODk1QzMgLyogSlNIZHJNZXRhZGF0YVR5cGUu
Y3BwICovLAorCQkJCUNENEU0RTgzMjM1N0I1RkYwMDc4OTVDMyAvKiBKU0hkck1ldGFkYXRhVHlw
ZS5oICovLAorCQkJCUNENEU0RTcyMjM1N0I1NTgwMDc4OTVDMyAvKiBKU01lZGlhQ2FwYWJpbGl0
aWVzLmNwcCAqLywKKwkJCQlDRDRFNEU2RjIzNTdCNTU3MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFi
aWxpdGllcy5oICovLAorCQkJCUNENEU0RTg1MjM1N0I1RkYwMDc4OTVDMyAvKiBKU01lZGlhQ2Fw
YWJpbGl0aWVzRGVjb2RpbmdJbmZvLmNwcCAqLywKKwkJCQlDRDRFNEU2RDIzNTdCNTU2MDA3ODk1
QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0RlY29kaW5nSW5mby5oICovLAorCQkJCUNENEU0RTcx
MjM1N0I1NTcwMDc4OTVDMyAvKiBKU01lZGlhQ2FwYWJpbGl0aWVzRW5jb2RpbmdJbmZvLmNwcCAq
LywKKwkJCQlDRDRFNEU2QzIzNTdCNTU2MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0Vu
Y29kaW5nSW5mby5oICovLAorCQkJCUNENEU0RTkzMjM1N0I2MDQwMDc4OTVDMyAvKiBKU01lZGlh
Q2FwYWJpbGl0aWVzSW5mby5jcHAgKi8sCisJCQkJQ0Q0RTRFNzAyMzU3QjU1NzAwNzg5NUMzIC8q
IEpTTWVkaWFDYXBhYmlsaXRpZXNJbmZvLmNwcCAqLywKKwkJCQlDRDRFNEU3RDIzNTdCNUZEMDA3
ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uaCAqLywKKwkJCQlDRDRFNEU2RTIzNTdC
NTU2MDA3ODk1QzMgLyogSlNNZWRpYUNhcGFiaWxpdGllc0luZm8uaCAqLywKKwkJCQlDRDRFNEU3
RTIzNTdCNUZEMDA3ODk1QzMgLyogSlNNZWRpYUNvbmZpZ3VyYXRpb24uZGVwICovLAorCQkJCUNE
NEU0RTg3MjM1N0I2MDAwMDc4OTVDMyAvKiBKU01lZGlhQ29uZmlndXJhdGlvbi5oICovLAorCQkJ
CUNENEU0RTg5MjM1N0I2MDEwMDc4OTVDMyAvKiBKU01lZGlhRGVjb2RpbmdDb25maWd1cmF0aW9u
LmNwcCAqLywKKwkJCQlDRDRFNEU4MjIzNTdCNUZFMDA3ODk1QzMgLyogSlNNZWRpYURlY29kaW5n
Q29uZmlndXJhdGlvbi5oICovLAorCQkJCUNENEU0RTkwMjM1N0I2MDMwMDc4OTVDMyAvKiBKU01l
ZGlhRGVjb2RpbmdUeXBlLmNwcCAqLywKKwkJCQlDRDRFNEU4ODIzNTdCNjAwMDA3ODk1QzMgLyog
SlNNZWRpYURlY29kaW5nVHlwZS5oICovLAorCQkJCUNENEU0RTgwMjM1N0I1RkUwMDc4OTVDMyAv
KiBKU01lZGlhRW5jb2RpbmdDb25maWd1cmF0aW9uLmNwcCAqLywKKwkJCQlDRDRFNEU5MTIzNTdC
NjAzMDA3ODk1QzMgLyogSlNNZWRpYUVuY29kaW5nQ29uZmlndXJhdGlvbi5oICovLAorCQkJCUNE
NEU0RThGMjM1N0I2MDMwMDc4OTVDMyAvKiBKU01lZGlhRW5jb2RpbmdUeXBlLmNwcCAqLywKKwkJ
CQlDRDRFNEU4RTIzNTdCNjAyMDA3ODk1QzMgLyogSlNNZWRpYUVuY29kaW5nVHlwZS5oICovLAor
CQkJCUNENEU0RThDMjM1N0I2MDIwMDc4OTVDMyAvKiBKU1RyYW5zZmVyRnVuY3Rpb24uY3BwICov
LAorCQkJCUNENEU0RTdGMjM1N0I1RkQwMDc4OTVDMyAvKiBKU1RyYW5zZmVyRnVuY3Rpb24uaCAq
LywKKwkJCQlDRDRFNEU5OTIzNTdCQThGMDA3ODk1QzMgLyogSlNWaWRlb0NvbmZpZ3VyYXRpb24u
Y3BwICovLAorCQkJCUNENEU0RTk3MjM1N0JBOEYwMDc4OTVDMyAvKiBKU1ZpZGVvQ29uZmlndXJh
dGlvbi5oICovLAorCQkJKTsKKwkJCW5hbWUgPSBNZWRpYUNhcGFiaWxpdGllczsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUNENjFGRTdCMTc5NENBMDIwMDQxMDFFQiAvKiBN
ZWRpYVNvdXJjZSAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQ0Q5REUxNzIxN0FBQzc0QzAwRUEzODZEIC8qIEpTTWVkaWFTb3VyY2UuY3BwICovLAorCQkJ
CUNEOURFMTczMTdBQUM3NEMwMEVBMzg2RCAvKiBKU01lZGlhU291cmNlLmggKi8sCisJCQkJQ0Q5
REUxNzYxN0FBQzc1QjAwRUEzODZEIC8qIEpTU291cmNlQnVmZmVyLmNwcCAqLywKKwkJCQlDRDlE
RTE3NzE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VCdWZmZXIuaCAqLywKKwkJCQlDRDlERTE3
ODE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VCdWZmZXJMaXN0LmNwcCAqLywKKwkJCQlDRDlE
RTE3OTE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VCdWZmZXJMaXN0LmggKi8sCisJCQkpOwor
CQkJbmFtZSA9IE1lZGlhU291cmNlOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsK
KwkJQ0Q2NjlENjUxRDIzMkRGNDAwNEQxODY2IC8qIGNvY29hICovID0geworCQkJaXNhID0gUEJY
R3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk0MTMxNTE4NDIzNTc3NDVFMDAxMTVFNkUgLyog
QXVkaW9EZXN0aW5hdGlvbkNvY29hLmNwcCAqLywKKwkJCQk0MTMxNTE4NjIzNTc3NDVFMDAxMTVF
NkUgLyogQXVkaW9EZXN0aW5hdGlvbkNvY29hLmggKi8sCisJCQkJNDZBQUFBM0MyNUQzNjMxNDAw
QkFGNDJGIC8qIEF1ZGlvRmlsZVJlYWRlckNvY29hLmNwcCAqLywKKwkJCQk0NkFBQUEzQTI1RDM2
MzE0MDBCQUY0MkYgLyogQXVkaW9GaWxlUmVhZGVyQ29jb2EuaCAqLywKKwkJCQkxREI2NkQzODI1
MzY3OEVBMDBCNjcxQjkgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvci5jcHAgKi8sCisJCQkJMURC
NjZEMzcyNTM2NzhFQTAwQjY3MUI5IC8qIEF1ZGlvT3V0cHV0VW5pdEFkYXB0b3IuaCAqLywKKwkJ
CQkwNzNCODc2MjFFNDM4NTlEMDA3MUMwRUMgLyogQXVkaW9TYW1wbGVCdWZmZXJMaXN0LmNwcCAq
LywKKwkJCQkwNzNCODc2MzFFNDM4NTlEMDA3MUMwRUMgLyogQXVkaW9TYW1wbGVCdWZmZXJMaXN0
LmggKi8sCisJCQkJMDczQjg3NjUxRTQzODU5RDAwNzFDMEVDIC8qIEF1ZGlvU2FtcGxlRGF0YVNv
dXJjZS5oICovLAorCQkJCTA3M0I4NzY0MUU0Mzg1OUQwMDcxQzBFQyAvKiBBdWRpb1NhbXBsZURh
dGFTb3VyY2UubW0gKi8sCisJCQkJMDczQjg3NTcxRTQwRENGRDAwNzFDMEVDIC8qIENBQXVkaW9T
dHJlYW1EZXNjcmlwdGlvbi5jcHAgKi8sCisJCQkJMDczQjg3NTgxRTQwRENGRDAwNzFDMEVDIC8q
IENBQXVkaW9TdHJlYW1EZXNjcmlwdGlvbi5oICovLAorCQkJCUNEQzczNDEyMTk3Nzg5NkMwMDQ2
QkZDNSAvKiBDQVJpbmdCdWZmZXIuY3BwICovLAorCQkJCUNEQzczNDEzMTk3Nzg5NkMwMDQ2QkZD
NSAvKiBDQVJpbmdCdWZmZXIuaCAqLywKKwkJCQk0MTdGN0FFRDIxMzlCRjY1MDBGQkE3RUMgLyog
TWVkaWFTZXNzaW9uTWFuYWdlckNvY29hLmggKi8sCisJCQkJNDE3RjdBRUEyMTM5QkY2NDAwRkJB
N0VDIC8qIE1lZGlhU2Vzc2lvbk1hbmFnZXJDb2NvYS5tbSAqLywKKwkJCQk0MTdGN0FFQjIxMzlC
RjY0MDBGQkE3RUMgLyogV2ViQXVkaW9CdWZmZXJMaXN0LmNwcCAqLywKKwkJCQk0MTdGN0FFQzIx
MzlCRjY1MDBGQkE3RUMgLyogV2ViQXVkaW9CdWZmZXJMaXN0LmggKi8sCisJCQkpOworCQkJcGF0
aCA9IGNvY29hOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0Q4OTJGNUEx
RkI1MkFDRjAwOTMzM0QyIC8qIGlzbyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hp
bGRyZW4gPSAoCisJCQkJQ0Q4NzFDNjgxRkI1MkI2OTAwRjBCOTY1IC8qIElTT0JveC5jcHAgKi8s
CisJCQkJQ0Q4NzFDNjIxRkI1MkI2NTAwRjBCOTY1IC8qIElTT0JveC5oICovLAorCQkJCUNEODcx
QzZBMUZCNTJCNkEwMEYwQjk2NSAvKiBJU09PcmlnaW5hbEZvcm1hdEJveC5jcHAgKi8sCisJCQkJ
Q0Q4NzFDNjcxRkI1MkI2ODAwRjBCOTY1IC8qIElTT09yaWdpbmFsRm9ybWF0Qm94LmggKi8sCisJ
CQkJQ0Q4NzFDNUUxRkI1MkI2NDAwRjBCOTY1IC8qIElTT1Byb3RlY3Rpb25TY2hlbWVJbmZvQm94
LmNwcCAqLywKKwkJCQlDRDg3MUM2MDFGQjUyQjY1MDBGMEI5NjUgLyogSVNPUHJvdGVjdGlvblNj
aGVtZUluZm9Cb3guaCAqLywKKwkJCQk0NTFBNDlGOEY4NzI2QkUwNzE1MThCRTIgLyogSVNPUHJv
dGVjdGlvblN5c3RlbVNwZWNpZmljSGVhZGVyQm94LmNwcCAqLywKKwkJCQkxMkY3NUE5QTg2RUEw
M0RBRjI0Qjc5NzEgLyogSVNPUHJvdGVjdGlvblN5c3RlbVNwZWNpZmljSGVhZGVyQm94LmggKi8s
CisJCQkJQ0Q4NzFDNjMxRkI1MkI2NjAwRjBCOTY1IC8qIElTT1NjaGVtZUluZm9ybWF0aW9uQm94
LmNwcCAqLywKKwkJCQlDRDg3MUM2NDFGQjUyQjY3MDBGMEI5NjUgLyogSVNPU2NoZW1lSW5mb3Jt
YXRpb25Cb3guaCAqLywKKwkJCQlDRDg3MUM1RjFGQjUyQjY0MDBGMEI5NjUgLyogSVNPU2NoZW1l
VHlwZUJveC5jcHAgKi8sCisJCQkJQ0Q4NzFDNUMxRkI1MkI2MzAwRjBCOTY1IC8qIElTT1NjaGVt
ZVR5cGVCb3guaCAqLywKKwkJCQlDRDg3MUM2MTFGQjUyQjY1MDBGMEI5NjUgLyogSVNPVHJhY2tF
bmNyeXB0aW9uQm94LmNwcCAqLywKKwkJCQlDRDg3MUM2NjFGQjUyQjY4MDBGMEI5NjUgLyogSVNP
VHJhY2tFbmNyeXB0aW9uQm94LmggKi8sCisJCQkJQ0Q4NzFDNjkxRkI1MkI2OTAwRjBCOTY1IC8q
IElTT1ZUVEN1ZS5jcHAgKi8sCisJCQkJQ0Q4NzFDNjUxRkI1MkI2NzAwRjBCOTY1IC8qIElTT1ZU
VEN1ZS5oICovLAorCQkJKTsKKwkJCXBhdGggPSBpc287CisJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOworCQl9OworCQlDRDhDNkMyNDIyRkREQTY0MDBBNzIwQUIgLyogUmVtb3RlUGxheWJhY2sg
Ki8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNEOEM2QzI2
MjJGRERBOEYwMEE3MjBBQiAvKiBKU1JlbW90ZVBsYXliYWNrLmNwcCAqLywKKwkJCQlDRDhDNkMy
OTIyRkREQTkxMDBBNzIwQUIgLyogSlNSZW1vdGVQbGF5YmFjay5oICovLAorCQkJCUNEOEM2QzI3
MjJGRERBOTAwMEE3MjBBQiAvKiBKU1JlbW90ZVBsYXliYWNrQXZhaWxhYmlsaXR5Q2FsbGJhY2su
Y3BwICovLAorCQkJCUNEOEM2QzI4MjJGRERBOTAwMEE3MjBBQiAvKiBKU1JlbW90ZVBsYXliYWNr
QXZhaWxhYmlsaXR5Q2FsbGJhY2suaCAqLywKKwkJCSk7CisJCQluYW1lID0gUmVtb3RlUGxheWJh
Y2s7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlDRDk0QTVDQjFGNzFDQjQ2
MDBGNTI1QzUgLyogZW5jcnlwdGVkbWVkaWEgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJ
CWNoaWxkcmVuID0gKAorCQkJCUNEOTRBNUQ5MUY3MUNCOUYwMEY1MjVDNSAvKiBjbGVhcmtleSAq
LywKKwkJCQlDREY3NTY5QjIxNUMyM0E0MDBFRkNCNTAgLyogQ0RNRW5jcnlwdGlvblNjaGVtZS5o
ICovLAorCQkJCUNEOTRBNUQxMUY3MUNCNkIwMEY1MjVDNSAvKiBDRE1GYWN0b3J5LmNwcCAqLywK
KwkJCQlDRDk0QTVEMjFGNzFDQjZCMDBGNTI1QzUgLyogQ0RNRmFjdG9yeS5oICovLAorCQkJCUNE
OTRBNUNFMUY3MUNCNkEwMEY1MjVDNSAvKiBDRE1JbnN0YW5jZS5oICovLAorCQkJCUNEOUQzNzVB
MjE1MTYzRTQwMDQ5NjU3QiAvKiBDRE1JbnN0YW5jZVNlc3Npb24uaCAqLywKKwkJCQlDRDk0QTVE
NDFGNzFDQjZDMDBGNTI1QzUgLyogQ0RNS2V5U3RhdHVzLmggKi8sCisJCQkJQ0Q5NEE1Q0QxRjcx
Q0I2OTAwRjUyNUM1IC8qIENETUtleVN5c3RlbUNvbmZpZ3VyYXRpb24uaCAqLywKKwkJCQlDRDhE
MzA2RTIzQUQ0RkE4MDA2QzM5NzUgLyogQ0RNTG9nZ2luZy5jcHAgKi8sCisJCQkJQ0Q4RDMwNkQy
M0FENEZBODAwNkMzOTc1IC8qIENETUxvZ2dpbmcuaCAqLywKKwkJCQlDRDk0QTVEMzFGNzFDQjZD
MDBGNTI1QzUgLyogQ0RNTWVkaWFDYXBhYmlsaXR5LmggKi8sCisJCQkJQ0Q5NEE1RDYxRjcxQ0I2
RDAwRjUyNUM1IC8qIENETU1lc3NhZ2VUeXBlLmggKi8sCisJCQkJQ0QzQ0UxMUMyNDA0NTFBRjAw
NEJBMDFEIC8qIENETVByaXZhdGUuY3BwICovLAorCQkJCUNEOTRBNUNGMUY3MUNCNkEwMEY1MjVD
NSAvKiBDRE1Qcml2YXRlLmggKi8sCisJCQkJQ0Q5NEE1Q0YxRjcxQ0I2MTAwRjUyNUQ1IC8qIENE
TVByb3h5LmNwcCAqLywKKwkJCQlDRDk0QTVDRjFGNzFDQjYxMDBGNTI1QzUgLyogQ0RNUHJveHku
aCAqLywKKwkJCQlDRDk0QTVDQzFGNzFDQjY5MDBGNTI1QzUgLyogQ0RNUmVxdWlyZW1lbnQuaCAq
LywKKwkJCQlDRDk0QTVEMDFGNzFDQjZCMDBGNTI1QzUgLyogQ0RNUmVzdHJpY3Rpb25zLmggKi8s
CisJCQkJQ0Q5NEE1RDUxRjcxQ0I2RDAwRjUyNUM1IC8qIENETVNlc3Npb25UeXBlLmggKi8sCisJ
CQkJQ0RFM0FFMTMyNEI0OTM2RjAwMTI4RTdFIC8qIENETVV0aWxpdGllcy5jcHAgKi8sCisJCQkJ
Q0RFM0FFMTAyNEI0OTE2OTAwMTI4RTdFIC8qIENETVV0aWxpdGllcy5oICovLAorCQkJKTsKKwkJ
CXBhdGggPSBlbmNyeXB0ZWRtZWRpYTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07
CisJCUNEOTRBNUQ5MUY3MUNCOUYwMEY1MjVDNSAvKiBjbGVhcmtleSAqLyA9IHsKKwkJCWlzYSA9
IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQ0Q5NEE1REIxRjcxQ0JCMDAwRjUyNUM1
IC8qIENETUNsZWFyS2V5LmNwcCAqLywKKwkJCQlDRDk0QTVEQTFGNzFDQkIwMDBGNTI1QzUgLyog
Q0RNQ2xlYXJLZXkuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gY2xlYXJrZXk7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQlDRDlBMzdGNTE3QzdEOTM2MDBDNUZBN0EgLyogbWVk
aWFjb250cm9scyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJQ0RBQjZEMjYxN0M3REU2QzAwQzYwQjM0IC8qIE1lZGlhQ29udHJvbHNIb3N0LmNwcCAqLywK
KwkJCQlDREFCNkQyNzE3QzdERTZDMDBDNjBCMzQgLyogTWVkaWFDb250cm9sc0hvc3QuaCAqLywK
KwkJCQlDREFCNkQyNTE3QzdERTU3MDBDNjBCMzQgLyogTWVkaWFDb250cm9sc0hvc3QuaWRsICov
LAorCQkJKTsKKwkJCXBhdGggPSBtZWRpYWNvbnRyb2xzOworCQkJc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsKKwkJfTsKKwkJQ0Q5RDgyN0MxQzdCQjJFRDAwNkZGMDY2IC8qIGN2ICovID0geworCQkJ
aXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk3QjEwMzM5RDI1NDk3MjAxMDBD
OEMxQUMgLyogR3JhcGhpY3NDb250ZXh0R0xDVi5oICovLAorCQkJCTdCMTAzMzlBMjU0OTcyMDAw
MEM4QzFBQyAvKiBHcmFwaGljc0NvbnRleHRHTENWQU5HTEUuY3BwICovLAorCQkJCTdCMTAzMzlD
MjU0OTcyMDEwMEM4QzFBQyAvKiBHcmFwaGljc0NvbnRleHRHTENWQU5HTEUuaCAqLywKKwkJCQlD
RDI3QUU0RTIyQTk4Njg3MDA5NDdGRjkgLyogSW1hZ2VSb3RhdGlvblNlc3Npb25WVC5oICovLAor
CQkJCUNEMjdBRTRGMjJBOTg2ODcwMDk0N0ZGOSAvKiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZULm1t
ICovLAorCQkJCTA3NDZEMzBDMjE0NkVBMzgwMDNEREY4NCAvKiBJbWFnZVRyYW5zZmVyU2Vzc2lv
blZULmggKi8sCisJCQkJMDc0NkQzMEEyMTQ2RUEzNzAwM0RERjg0IC8qIEltYWdlVHJhbnNmZXJT
ZXNzaW9uVlQubW0gKi8sCisJCQkJQ0Q3RDMzNDExQzdBMTIzRjAwMDQxMjkzIC8qIFBpeGVsQnVm
ZmVyQ29uZm9ybWVyQ1YuY3BwICovLAorCQkJCUNEN0QzMzQyMUM3QTEyM0YwMDA0MTI5MyAvKiBQ
aXhlbEJ1ZmZlckNvbmZvcm1lckNWLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGN2OworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0RBOThEQkQxNjAxNEUwODAwRkVBM0IxIC8q
IGVuY3J5cHRlZG1lZGlhICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9
ICgKKwkJCQkyRDA2MjE0NjFEQTYzOUVDMDBBN0ZCMjYgLyogbGVnYWN5ICovLAorCQkJCUNERjRC
NzEzMUUwMEI3RTUwMEUyMzVBMiAvKiBDRE0uY3BwICovLAorCQkJCUNERjRCNzE0MUUwMEI3RTUw
MEUyMzVBMiAvKiBDRE0uaCAqLywKKwkJCQlDRDk0QTVDOTFGNzFDQTlEMDBGNTI1QzUgLyogQ0RN
Q2xpZW50LmggKi8sCisJCQkJQ0QwNjNGODAxRTIzRkE4OTAwODEyQkUzIC8qIEluaXREYXRhUmVn
aXN0cnkuY3BwICovLAorCQkJCUNEMDYzRjgxMUUyM0ZBODkwMDgxMkJFMyAvKiBJbml0RGF0YVJl
Z2lzdHJ5LmggKi8sCisJCQkJQ0RGNzU2OUQyMTVDMjQ0NDAwRUZDQjUwIC8qIE1lZGlhS2V5RW5j
cnlwdGlvblNjaGVtZS5oICovLAorCQkJCUNERjc1NjlFMjE1QzI4NUUwMEVGQ0I1MCAvKiBNZWRp
YUtleUVuY3J5cHRpb25TY2hlbWUuaWRsICovLAorCQkJCTJEOUJGNzJGMURCRkRDMEYwMDdBN0Q5
OSAvKiBNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAgKi8sCisJCQkJMkQ5QkY3MzAxREJGREMwRjAw
N0E3RDk5IC8qIE1lZGlhS2V5TWVzc2FnZUV2ZW50LmggKi8sCisJCQkJMkQ5QkY2RjUxREJGQjcx
RjAwN0E3RDk5IC8qIE1lZGlhS2V5TWVzc2FnZUV2ZW50LmlkbCAqLywKKwkJCQkyRDlCRjczMTFE
QkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlNZXNzYWdlRXZlbnRJbml0LmggKi8sCisJCQkJMkQ5
QkY3MzIxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5TWVzc2FnZVR5cGUuaCAqLywKKwkJCQky
RDlCRjczMzFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlzLmNwcCAqLywKKwkJCQkyRDlCRjcz
NDFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlzLmggKi8sCisJCQkJMkQ5QkY2RjYxREJGQjcx
RjAwN0E3RDk5IC8qIE1lZGlhS2V5cy5pZGwgKi8sCisJCQkJMkQ5QkY3MzUxREJGREMwRjAwN0E3
RDk5IC8qIE1lZGlhS2V5U2Vzc2lvbi5jcHAgKi8sCisJCQkJMkQ5QkY3MzYxREJGREMwRjAwN0E3
RDk5IC8qIE1lZGlhS2V5U2Vzc2lvbi5oICovLAorCQkJCTJEOUJGNkY3MURCRkI3MUYwMDdBN0Q5
OSAvKiBNZWRpYUtleVNlc3Npb24uaWRsICovLAorCQkJCTJEOUJGNzM3MURCRkRDMEYwMDdBN0Q5
OSAvKiBNZWRpYUtleVNlc3Npb25UeXBlLmggKi8sCisJCQkJQ0RGNEI3MTkxRTAxRDNEMDAwRTIz
NUEyIC8qIE1lZGlhS2V5U2Vzc2lvblR5cGUuaWRsICovLAorCQkJCTJEOUJGNzM4MURCRkRDMEYw
MDdBN0Q5OSAvKiBNZWRpYUtleXNSZXF1aXJlbWVudC5oICovLAorCQkJCUNERjRCNzI3MUUwM0M1
NzMwMEUyMzVBMiAvKiBNZWRpYUtleXNSZXF1aXJlbWVudC5pZGwgKi8sCisJCQkJQ0RGNEI3MTcx
RTAxQ0I5MTAwRTIzNUEyIC8qIE1lZGlhS2V5c1Jlc3RyaWN0aW9ucy5oICovLAorCQkJCTJEOUJG
NzM5MURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleVN0YXR1cy5oICovLAorCQkJCTJEOUJGNzNB
MURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleVN0YXR1c01hcC5jcHAgKi8sCisJCQkJMkQ5QkY3
M0IxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3RhdHVzTWFwLmggKi8sCisJCQkJMkQ5QkY2
RjgxREJGQjcxRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3RhdHVzTWFwLmlkbCAqLywKKwkJCQkyRDlC
RjczQzFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlTeXN0ZW1BY2Nlc3MuY3BwICovLAorCQkJ
CTJEOUJGNzNEMURCRkRDMEYwMDdBN0Q5OSAvKiBNZWRpYUtleVN5c3RlbUFjY2Vzcy5oICovLAor
CQkJCTJEOUJGNkY5MURCRkI3MUYwMDdBN0Q5OSAvKiBNZWRpYUtleVN5c3RlbUFjY2Vzcy5pZGwg
Ki8sCisJCQkJOUFDQzA3QTcyNUM4MTEwRDAwREM2Mzg2IC8qIE1lZGlhS2V5U3lzdGVtQ2xpZW50
LmggKi8sCisJCQkJMkQ5QkY3M0UxREJGREMwRjAwN0E3RDk5IC8qIE1lZGlhS2V5U3lzdGVtQ29u
ZmlndXJhdGlvbi5oICovLAorCQkJCTJEOUJGNkZBMURCRkI3MUYwMDdBN0Q5OSAvKiBNZWRpYUtl
eVN5c3RlbUNvbmZpZ3VyYXRpb24uaWRsICovLAorCQkJCTlBQ0MwNzk3MjVDNzI2NzYwMERDNjM4
NiAvKiBNZWRpYUtleVN5c3RlbUNvbnRyb2xsZXIuY3BwICovLAorCQkJCTlBQ0MwN0FFMjVDODE0
MUMwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNvbnRyb2xsZXIuaCAqLywKKwkJCQkyRDlCRjcz
RjFEQkZEQzBGMDA3QTdEOTkgLyogTWVkaWFLZXlTeXN0ZW1NZWRpYUNhcGFiaWxpdHkuaCAqLywK
KwkJCQkyRDlCRjZGQjFEQkZCNzFGMDA3QTdEOTkgLyogTWVkaWFLZXlTeXN0ZW1NZWRpYUNhcGFi
aWxpdHkuaWRsICovLAorCQkJCTlBQ0MwNzk0MjVDNzI1RUQwMERDNjM4NiAvKiBNZWRpYUtleVN5
c3RlbVJlcXVlc3QuY3BwICovLAorCQkJCTlBQ0MwN0E1MjVDODEwREYwMERDNjM4NiAvKiBNZWRp
YUtleVN5c3RlbVJlcXVlc3QuaCAqLywKKwkJCQkwRjc2OEMzMzI2RDBBQjM5MDA4REJFMEIgLyog
TWVkaWFLZXlTeXN0ZW1SZXF1ZXN0SWRlbnRpZmllci5oICovLAorCQkJCTJEOUJGNkZDMURCRkI3
MUYwMDdBN0Q5OSAvKiBOYXZpZ2F0b3IrRU1FLmlkbCAqLywKKwkJCQkyRDlCRjc0MDFEQkZEQzBG
MDA3QTdEOTkgLyogTmF2aWdhdG9yRU1FLmNwcCAqLywKKwkJCQkyRDlCRjc0MTFEQkZEQzBGMDA3
QTdEOTkgLyogTmF2aWdhdG9yRU1FLmggKi8sCisJCQkpOworCQkJcGF0aCA9IGVuY3J5cHRlZG1l
ZGlhOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0RBOThEQ0QxNjAxNTE1
QzAwRkVBM0IxIC8qIEVuY3J5cHRlZE1lZGlhICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJ
CQljaGlsZHJlbiA9ICgKKwkJCQlDREY3NTZBMDIxNUMyOUU4MDBFRkNCNTAgLyogSlNNZWRpYUtl
eUVuY3J5cHRpb25TY2hlbWUuY3BwICovLAorCQkJCUNERjc1NkExMjE1QzI5RTkwMEVGQ0I1MCAv
KiBKU01lZGlhS2V5RW5jcnlwdGlvblNjaGVtZS5oICovLAorCQkJCTJEOUJGNzEzMURCRkRBQjEw
MDdBN0Q5OSAvKiBKU01lZGlhS2V5TWVzc2FnZUV2ZW50LmNwcCAqLywKKwkJCQkyRDlCRjcxNDFE
QkZEQUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleU1lc3NhZ2VFdmVudC5oICovLAorCQkJCTJEOUJG
NzE1MURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5cy5jcHAgKi8sCisJCQkJMkQ5QkY3MTYx
REJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlzLmggKi8sCisJCQkJMkQ5QkY3MTcxREJGREFC
MTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTZXNzaW9uLmNwcCAqLywKKwkJCQkyRDlCRjcxODFEQkZE
QUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleVNlc3Npb24uaCAqLywKKwkJCQlDREY0QjcxQjFFMDFF
MTFBMDBFMjM1QTIgLyogSlNNZWRpYUtleVNlc3Npb25UeXBlLmNwcCAqLywKKwkJCQlDREY0Qjcx
QzFFMDFFMTFBMDBFMjM1QTIgLyogSlNNZWRpYUtleVNlc3Npb25UeXBlLmggKi8sCisJCQkJQ0RG
NEI3MjkxRTAzQzYzRTAwRTIzNUEyIC8qIEpTTWVkaWFLZXlzUmVxdWlyZW1lbnQuY3BwICovLAor
CQkJCUNERjRCNzJBMUUwM0M2M0UwMEUyMzVBMiAvKiBKU01lZGlhS2V5c1JlcXVpcmVtZW50Lmgg
Ki8sCisJCQkJMkQ5QkY3MTkxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTdGF0dXNNYXAu
Y3BwICovLAorCQkJCTJEOUJGNzFBMURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3RhdHVz
TWFwLmggKi8sCisJCQkJMkQ5QkY3MUIxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTeXN0
ZW1BY2Nlc3MuY3BwICovLAorCQkJCTJEOUJGNzFDMURCRkRBQjEwMDdBN0Q5OSAvKiBKU01lZGlh
S2V5U3lzdGVtQWNjZXNzLmggKi8sCisJCQkJMkQ5QkY3MUQxREJGREFCMTAwN0E3RDk5IC8qIEpT
TWVkaWFLZXlTeXN0ZW1Db25maWd1cmF0aW9uLmNwcCAqLywKKwkJCQkyRDlCRjcxRTFEQkZEQUIx
MDA3QTdEOTkgLyogSlNNZWRpYUtleVN5c3RlbUNvbmZpZ3VyYXRpb24uaCAqLywKKwkJCQkyRDlC
RjcxRjFEQkZEQUIxMDA3QTdEOTkgLyogSlNNZWRpYUtleVN5c3RlbU1lZGlhQ2FwYWJpbGl0eS5j
cHAgKi8sCisJCQkJMkQ5QkY3MjAxREJGREFCMTAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTeXN0ZW1N
ZWRpYUNhcGFiaWxpdHkuaCAqLywKKwkJCQlDREE5OEQ5QjE2MDEyOEE1MDBGRUEzQjEgLyogSlNX
ZWJLaXRNZWRpYUtleUVycm9yLmNwcCAqLywKKwkJCQlDREE5OEQ5QzE2MDEyOEE1MDBGRUEzQjEg
LyogSlNXZWJLaXRNZWRpYUtleUVycm9yLmggKi8sCisJCQkJQ0RBOThEREIxNjAyNkExODAwRkVB
M0IxIC8qIEpTV2ViS2l0TWVkaWFLZXlNZXNzYWdlRXZlbnQuY3BwICovLAorCQkJCUNEQTk4RERD
MTYwMjZBMTkwMEZFQTNCMSAvKiBKU1dlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50LmggKi8sCisJ
CQkJQ0RBOThEREQxNjAyNkExOTAwRkVBM0IxIC8qIEpTV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVu
dC5jcHAgKi8sCisJCQkJQ0RBOThEREUxNjAyNkExOTAwRkVBM0IxIC8qIEpTV2ViS2l0TWVkaWFL
ZXlOZWVkZWRFdmVudC5oICovLAorCQkJCUNEQTk4RENFMTYwMTU5NzkwMEZFQTNCMSAvKiBKU1dl
YktpdE1lZGlhS2V5cy5jcHAgKi8sCisJCQkJQ0RBOThEQ0YxNjAxNTk3OTAwRkVBM0IxIC8qIEpT
V2ViS2l0TWVkaWFLZXlzLmggKi8sCisJCQkJQ0RBOThERDAxNjAxNTk3OTAwRkVBM0IxIC8qIEpT
V2ViS2l0TWVkaWFLZXlTZXNzaW9uLmNwcCAqLywKKwkJCQlDREE5OEREMTE2MDE1OTc5MDBGRUEz
QjEgLyogSlNXZWJLaXRNZWRpYUtleVNlc3Npb24uaCAqLywKKwkJCSk7CisJCQluYW1lID0gRW5j
cnlwdGVkTWVkaWE7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlDREFCNkQy
QTE3QzdFOTdEMDBDNjBCMzQgLyogTWVkaWFDb250cm9scyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdy
b3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQ0RBQjZEMkIxN0M4MTRFRTAwQzYwQjM0IC8qIEpT
TWVkaWFDb250cm9sc0hvc3QuY3BwICovLAorCQkJCUNEQUI2RDJDMTdDODE0RUUwMEM2MEIzNCAv
KiBKU01lZGlhQ29udHJvbHNIb3N0LmggKi8sCisJCQkpOworCQkJbmFtZSA9IE1lZGlhQ29udHJv
bHM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlDREJEM0QyNzFGRTg1Qzky
MDAxMkM1NDUgLyogbWVkaWFjYXBhYmlsaXRpZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCUNEQkQzRDNDMUZFODVDQzIwMDEyQzU0NSAvKiBBdWRpb0Nv
bmZpZ3VyYXRpb24uaWRsICovLAorCQkJCUNEQkQzRDNGMUZFODVDQzMwMDEyQzU0NSAvKiBDb2xv
ckdhbXV0LmlkbCAqLywKKwkJCQlDRDRFNEU2MDIzNTdCMzE3MDA3ODk1QzMgLyogSGRyTWV0YWRh
dGFUeXBlLmlkbCAqLywKKwkJCQlDREExMzBCRDFGRUIzMzJEMDBGNTMyNTQgLyogTWVkaWFDYXBh
YmlsaXRpZXMuY3BwICovLAorCQkJCUNEQkQzRDMyMUZFODVDQkUwMDEyQzU0NSAvKiBNZWRpYUNh
cGFiaWxpdGllcy5oICovLAorCQkJCUNEQkQzRDJGMUZFODVDQkMwMDEyQzU0NSAvKiBNZWRpYUNh
cGFiaWxpdGllcy5pZGwgKi8sCisJCQkJQ0RDQzlCQzUyMjM4N0RBMzAwRkZCNTFDIC8qIE1lZGlh
Q2FwYWJpbGl0aWVzRGVjb2RpbmdJbmZvLmlkbCAqLywKKwkJCQlDRENDOUJDQTIyMzg3RTIxMDBG
RkI1MUMgLyogTWVkaWFDYXBhYmlsaXRpZXNFbmNvZGluZ0luZm8uaWRsICovLAorCQkJCUNEQkQz
RDMzMUZFODVDQkUwMDEyQzU0NSAvKiBNZWRpYUNhcGFiaWxpdGllc0luZm8uaWRsICovLAorCQkJ
CUNEQkQzRDI5MUZFODVDQjkwMDEyQzU0NSAvKiBNZWRpYUNvbmZpZ3VyYXRpb24uaWRsICovLAor
CQkJCUNEQkQzRDNCMUZFODVDQzIwMDEyQzU0NSAvKiBNZWRpYURlY29kaW5nQ29uZmlndXJhdGlv
bi5pZGwgKi8sCisJCQkJQ0RCRDNEMkUxRkU4NUNCQzAwMTJDNTQ1IC8qIE1lZGlhRGVjb2RpbmdU
eXBlLmlkbCAqLywKKwkJCQlDREJEM0QyQTFGRTg1Q0JBMDAxMkM1NDUgLyogTWVkaWFFbmNvZGlu
Z0NvbmZpZ3VyYXRpb24uaWRsICovLAorCQkJCUNEQkQzRDJEMUZFODVDQkMwMDEyQzU0NSAvKiBN
ZWRpYUVuY29kaW5nVHlwZS5pZGwgKi8sCisJCQkJQ0RCRDNEMzExRkU4NUNCRTAwMTJDNTQ1IC8q
IE5hdmlnYXRvcitNZWRpYUNhcGFiaWxpdGllcy5pZGwgKi8sCisJCQkJQ0RBMTMwQkIxRkVCMzMy
QzAwRjUzMjU0IC8qIE5hdmlnYXRvck1lZGlhQ2FwYWJpbGl0aWVzLmNwcCAqLywKKwkJCQlDREJE
M0QzOTFGRTg1Q0MxMDAxMkM1NDUgLyogTmF2aWdhdG9yTWVkaWFDYXBhYmlsaXRpZXMuaCAqLywK
KwkJCQlDRDRFNEU2MjIzNTdCM0FEMDA3ODk1QzMgLyogVHJhbnNmZXJGdW5jdGlvbi5pZGwgKi8s
CisJCQkJQ0RCRDNEMjgxRkU4NUNCODAwMTJDNTQ1IC8qIFZpZGVvQ29uZmlndXJhdGlvbi5pZGwg
Ki8sCisJCQkpOworCQkJcGF0aCA9IG1lZGlhY2FwYWJpbGl0aWVzOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0RDMzEyRTAyMkZDRDBCMDAwMTIwNEVDIC8qIHJlbW90ZXBs
YXliYWNrICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlD
REMzMTJFMjIyRkNEMEIwMDAxMjA0RUMgLyogSFRNTE1lZGlhRWxlbWVudCtSZW1vdGVQbGF5YmFj
ay5pZGwgKi8sCisJCQkJQ0RDMzEyRTUyMkZDRDBCMDAwMTIwNEVDIC8qIEhUTUxNZWRpYUVsZW1l
bnRSZW1vdGVQbGF5YmFjay5oICovLAorCQkJCUNEQzMxMkUzMjJGQ0QwQjAwMDEyMDRFQyAvKiBS
ZW1vdGVQbGF5YmFjay5jcHAgKi8sCisJCQkJQ0RDMzEyRTEyMkZDRDBCMDAwMTIwNEVDIC8qIFJl
bW90ZVBsYXliYWNrLmggKi8sCisJCQkJQ0RDMzEyRTYyMkZDRDBCMDAwMTIwNEVDIC8qIFJlbW90
ZVBsYXliYWNrLmlkbCAqLywKKwkJCQlDREMzMTJFNzIyRkNEMEIwMDAxMjA0RUMgLyogUmVtb3Rl
UGxheWJhY2tBdmFpbGFiaWxpdHlDYWxsYmFjay5oICovLAorCQkJCUNEQzMxMkU0MjJGQ0QwQjAw
MDEyMDRFQyAvKiBSZW1vdGVQbGF5YmFja0F2YWlsYWJpbGl0eUNhbGxiYWNrLmlkbCAqLywKKwkJ
CSk7CisJCQlwYXRoID0gcmVtb3RlcGxheWJhY2s7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4i
OworCQl9OworCQlDREM2NzUxRjFFQUVBOTk2MDA3MjdDODQgLyogaW9zICovID0geworCQkJaXNh
ID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlDREM2NzUyNTFFQUVBOUQ0MDA3MjdD
ODQgLyogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlLmggKi8sCisJCQkJQ0RDNjc1MjQxRUFF
QTlENDAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNzaW9uQ2FwdHVyZURldmljZS5tbSAqLywKKwkJCQlD
REM2NzUyMTFFQUVBOUI3MDA3MjdDODQgLyogQVZBdWRpb1Nlc3Npb25DYXB0dXJlRGV2aWNlTWFu
YWdlci5oICovLAorCQkJCUNEQzY3NTIwMUVBRUE5QjcwMDcyN0M4NCAvKiBBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyLm1tICovLAorCQkJCTA3QUZGNDIwMUVGQjE0NDcwMEI1NDVC
MyAvKiBDb3JlQXVkaW9DYXB0dXJlU291cmNlSU9TLmggKi8sCisJCQkJMDdBRkY0MjExRUZCMTQ0
NzAwQjU0NUIzIC8qIENvcmVBdWRpb0NhcHR1cmVTb3VyY2VJT1MubW0gKi8sCisJCQkpOworCQkJ
cGF0aCA9IGlvczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUNERERFQTIx
MjUzOENEMzUwMEExMzAwQyAvKiBtZWRpYXNlc3Npb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNERERFQTMyMjUzOENFMzUwMEExMzAwQyAvKiBNZWRp
YUltYWdlLmggKi8sCisJCQkJQ0REREVBMzEyNTM4Q0UzNTAwQTEzMDBDIC8qIE1lZGlhSW1hZ2Uu
aWRsICovLAorCQkJCUNERERFQTUyMjUzOTVERTEwMEExMzAwQyAvKiBNZWRpYU1ldGFkYXRhLmNw
cCAqLywKKwkJCQlDRERERUEyRDI1MzhDRTA0MDBBMTMwMEMgLyogTWVkaWFNZXRhZGF0YS5oICov
LAorCQkJCUNERERFQTJDMjUzOENFMDQwMEExMzAwQyAvKiBNZWRpYU1ldGFkYXRhLmlkbCAqLywK
KwkJCQlDRERERUEzMDI1MzhDRTFFMDBBMTMwMEMgLyogTWVkaWFNZXRhZGF0YUluaXQuaCAqLywK
KwkJCQlDRERERUEyRjI1MzhDRTFFMDBBMTMwMEMgLyogTWVkaWFNZXRhZGF0YUluaXQuaWRsICov
LAorCQkJCTA3MzZCNzMzMjYwQTdCNjQwMEUwNjk5NCAvKiBNZWRpYU1ldGFkYXRhUGxheWxpc3RN
aXhpbi5pZGwgKi8sCisJCQkJQ0REREVBMzQyNTM4Q0U2MjAwQTEzMDBDIC8qIE1lZGlhUG9zaXRp
b25TdGF0ZS5oICovLAorCQkJCUNERERFQTMzMjUzOENFNjIwMEExMzAwQyAvKiBNZWRpYVBvc2l0
aW9uU3RhdGUuaWRsICovLAorCQkJCUNERERFQTI0MjUzOENEODAwMEExMzAwQyAvKiBNZWRpYVNl
c3Npb24uY3BwICovLAorCQkJCUNERERFQTIzMjUzOENEODAwMEExMzAwQyAvKiBNZWRpYVNlc3Np
b24uaCAqLywKKwkJCQlDRERERUEyMjI1MzhDRDgwMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uLmlk
bCAqLywKKwkJCQlDRERERUEyQjI1MzhDREUzMDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9u
LmggKi8sCisJCQkJQ0REREVBMkEyNTM4Q0RFMzAwQTEzMDBDIC8qIE1lZGlhU2Vzc2lvbkFjdGlv
bi5pZGwgKi8sCisJCQkJQ0REREVBMzYyNTM4Q0U3MDAwQTEzMDBDIC8qIE1lZGlhU2Vzc2lvbkFj
dGlvbkRldGFpbHMuaCAqLywKKwkJCQlDRERERUEzNTI1MzhDRTcwMDBBMTMwMEMgLyogTWVkaWFT
ZXNzaW9uQWN0aW9uRGV0YWlscy5pZGwgKi8sCisJCQkJQ0REREVBM0EyNTM4RTlDMjAwQTEzMDBD
IC8qIE1lZGlhU2Vzc2lvbkFjdGlvbkhhbmRsZXIuaCAqLywKKwkJCQlDRERERUEzOTI1MzhFOUMy
MDBBMTMwMEMgLyogTWVkaWFTZXNzaW9uQWN0aW9uSGFuZGxlci5pZGwgKi8sCisJCQkJMDcyREJD
MDUyNURDNkJEMzAwQTEzNTBFIC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmNwcCAqLywKKwkJ
CQkwNzJEQkMwMzI1REM2QkQzMDBBMTM1MEUgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IuaCAq
LywKKwkJCQkwNzJEQkJGQjI1REIzOEJDMDBBMTM1MEUgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0
b3IuaWRsICovLAorCQkJCTA3MzZCNzMwMjYwOTRBMzcwMEUwNjk5NCAvKiBNZWRpYVNlc3Npb25D
b29yZGluYXRvck1peGluLmlkbCAqLywKKwkJCQkwNzdCQTU3RDI2MEZFNzM5MDA3MkYxOUYgLyog
TWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcml2YXRlLmNwcCAqLywKKwkJCQkwNzdCQTU3QzI2MEZF
NzM4MDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcml2YXRlLmggKi8sCisJCQkJ
MDc3QkE1ODgyNjEyNkQ2NjAwNzJGMTlGIC8qIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yU3RhdGUu
aCAqLywKKwkJCQkwNzdCQTU4QTI2MTI2RDZCMDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uQ29vcmRp
bmF0b3JTdGF0ZS5pZGwgKi8sCisJCQkJQ0REREVBMjkyNTM4Q0RDQjAwQTEzMDBDIC8qIE1lZGlh
U2Vzc2lvblBsYXliYWNrU3RhdGUuaCAqLywKKwkJCQlDRERERUEyODI1MzhDRENCMDBBMTMwMEMg
LyogTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0ZS5pZGwgKi8sCisJCQkJMDczNkI3MzIyNjA5NTU1
NDAwRTA2OTk0IC8qIE1lZGlhU2Vzc2lvblBsYXlsaXN0TWl4aW4uaWRsICovLAorCQkJCTA3NDQ3
MUZEMjVFMTgwMDUwMDU0QjIzMSAvKiBNZWRpYVNlc3Npb25SZWFkeVN0YXRlLmggKi8sCisJCQkJ
MDc0NDcxRkYyNUUxODAwNTAwNTRCMjMxIC8qIE1lZGlhU2Vzc2lvblJlYWR5U3RhdGUuaWRsICov
LAorCQkJCUNERERFQTI1MjUzOENEQUIwMEExMzAwQyAvKiBOYXZpZ2F0b3IrTWVkaWFTZXNzaW9u
LmlkbCAqLywKKwkJCQlDRERERUEyNzI1MzhDREFCMDBBMTMwMEMgLyogTmF2aWdhdG9yTWVkaWFT
ZXNzaW9uLmNwcCAqLywKKwkJCQlDRERERUEyNjI1MzhDREFCMDBBMTMwMEMgLyogTmF2aWdhdG9y
TWVkaWFTZXNzaW9uLmggKi8sCisJCQkpOworCQkJcGF0aCA9IG1lZGlhc2Vzc2lvbjsKKwkJCXNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUNERERFQTNEMjUzOTExOUMwMEExMzAwQyAv
KiBNZWRpYVNlc3Npb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0g
KAorCQkJCUNERERFQTRGMjUzOTFFRDQwMEExMzAwQyAvKiBKU01lZGlhSW1hZ2UuY3BwICovLAor
CQkJCUNERERFQTUwMjUzOTFFRDQwMEExMzAwQyAvKiBKU01lZGlhSW1hZ2UuaCAqLywKKwkJCQlD
RERERUE0ODI1MzkxMjA2MDBBMTMwMEMgLyogSlNNZWRpYU1ldGFkYXRhLmNwcCAqLywKKwkJCQlD
RERERUE0NzI1MzkxMjA2MDBBMTMwMEMgLyogSlNNZWRpYU1ldGFkYXRhLmggKi8sCisJCQkJQ0RE
REVBNEEyNTM5MTIwNzAwQTEzMDBDIC8qIEpTTWVkaWFNZXRhZGF0YUluaXQuY3BwICovLAorCQkJ
CUNERERFQTQ5MjUzOTEyMDcwMEExMzAwQyAvKiBKU01lZGlhTWV0YWRhdGFJbml0LmggKi8sCisJ
CQkJQ0REREVBNEIyNTM5MTIwNzAwQTEzMDBDIC8qIEpTTWVkaWFQb3NpdGlvblN0YXRlLmNwcCAq
LywKKwkJCQlDRERERUE0QzI1MzkxMjA4MDBBMTMwMEMgLyogSlNNZWRpYVBvc2l0aW9uU3RhdGUu
aCAqLywKKwkJCQlDRERERUE0MzI1MzkxMURDMDBBMTMwMEMgLyogSlNNZWRpYVNlc3Npb24uY3Bw
ICovLAorCQkJCUNERERFQTQ1MjUzOTExREQwMEExMzAwQyAvKiBKU01lZGlhU2Vzc2lvbi5oICov
LAorCQkJCUNERERFQTNGMjUzOTExREIwMEExMzAwQyAvKiBKU01lZGlhU2Vzc2lvbkFjdGlvbi5j
cHAgKi8sCisJCQkJQ0REREVBNDQyNTM5MTFERDAwQTEzMDBDIC8qIEpTTWVkaWFTZXNzaW9uQWN0
aW9uLmggKi8sCisJCQkJQ0REREVBNDEyNTM5MTFEQjAwQTEzMDBDIC8qIEpTTWVkaWFTZXNzaW9u
QWN0aW9uRGV0YWlscy5jcHAgKi8sCisJCQkJQ0REREVBNDAyNTM5MTFEQjAwQTEzMDBDIC8qIEpT
TWVkaWFTZXNzaW9uQWN0aW9uRGV0YWlscy5oICovLAorCQkJCUNERERFQTREMjUzOTEzQkIwMEEx
MzAwQyAvKiBKU01lZGlhU2Vzc2lvbkFjdGlvbkhhbmRsZXIuY3BwICovLAorCQkJCUNERERFQTRF
MjUzOTEzQkMwMEExMzAwQyAvKiBKU01lZGlhU2Vzc2lvbkFjdGlvbkhhbmRsZXIuaCAqLywKKwkJ
CQkwNzJEQkMwNzI1REM2RURBMDBBMTM1MEUgLyogSlNNZWRpYVNlc3Npb25Db29yZGluYXRvci5j
cHAgKi8sCisJCQkJMDcyREJDMDYyNURDNkVEQTAwQTEzNTBFIC8qIEpTTWVkaWFTZXNzaW9uQ29v
cmRpbmF0b3IuaCAqLywKKwkJCQkwN0MxNDgyQzI2MTI5NTVFMDA3NzU4MjggLyogSlNNZWRpYVNl
c3Npb25Db29yZGluYXRvclN0YXRlLmNwcCAqLywKKwkJCQkwN0MxNDgyRDI2MTI5NTVGMDA3NzU4
MjggLyogSlNNZWRpYVNlc3Npb25Db29yZGluYXRvclN0YXRlLmggKi8sCisJCQkJQ0REREVBNDYy
NTM5MTFERDAwQTEzMDBDIC8qIEpTTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0ZS5jcHAgKi8sCisJ
CQkJQ0REREVBNDIyNTM5MTFEQzAwQTEzMDBDIC8qIEpTTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0
ZS5oICovLAorCQkJCTA3QzE0ODJCMjYxMjk1NUQwMDc3NTgyOCAvKiBKU01lZGlhU2Vzc2lvblJl
YWR5U3RhdGUuY3BwICovLAorCQkJCTA3QzE0ODI5MjYxMjk1NUMwMDc3NTgyOCAvKiBKU01lZGlh
U2Vzc2lvblJlYWR5U3RhdGUuaCAqLywKKwkJCSk7CisJCQluYW1lID0gTWVkaWFTZXNzaW9uOwor
CQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJQ0RGMkIwMDUxODIwNTNERjAwRjJC
NDI0IC8qIG1lZGlhc291cmNlICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJl
biA9ICgKKwkJCQlDREYyQjAwNjE4MjA1NDA2MDBGMkI0MjQgLyogTW9ja0JveC5jcHAgKi8sCisJ
CQkJQ0RGMkIwMDcxODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tCb3guaCAqLywKKwkJCQlDREYyQjAw
ODE4MjA1NDA2MDBGMkI0MjQgLyogTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuY3BwICovLAor
CQkJCUNERjJCMDA5MTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJj
ZS5oICovLAorCQkJCUNERjJCMDBBMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFTb3VyY2VQ
cml2YXRlLmNwcCAqLywKKwkJCQlDREYyQjAwQjE4MjA1NDA2MDBGMkI0MjQgLyogTW9ja01lZGlh
U291cmNlUHJpdmF0ZS5oICovLAorCQkJCUNERjJCMDBDMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2Nr
U291cmNlQnVmZmVyUHJpdmF0ZS5jcHAgKi8sCisJCQkJQ0RGMkIwMEQxODIwNTQwNjAwRjJCNDI0
IC8qIE1vY2tTb3VyY2VCdWZmZXJQcml2YXRlLmggKi8sCisJCQkJQ0RGMkIwMEYxODIwNTQwNjAw
RjJCNDI0IC8qIE1vY2tUcmFja3MuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gbWVkaWFzb3VyY2U7
CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlDRTE3QUQxNDFDNTg1MjJGMDA1
RjQ3OTkgLyogY3NwICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgK
KwkJCQk5N0M0NzFEOTEyRjkyNUJDMDA4NjM1NEIgLyogQ29udGVudFNlY3VyaXR5UG9saWN5LmNw
cCAqLywKKwkJCQk5N0M0NzFEQTEyRjkyNUJEMDA4NjM1NEIgLyogQ29udGVudFNlY3VyaXR5UG9s
aWN5LmggKi8sCisJCQkJQ0VGRDVEQjIyMDlFQkVENDAwNzg4QjY3IC8qIENvbnRlbnRTZWN1cml0
eVBvbGljeUNsaWVudC5jcHAgKi8sCisJCQkJQ0U1RkEyNTMyMDlFNDhDNTAwNTFENzAwIC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeUNsaWVudC5oICovLAorCQkJCUNFRjU5QjI1MUNBMEUxMUQwMDVD
M0UxMyAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuY3BwICovLAorCQkJCUNFNzk5
RkEyMUM2QTUwM0EwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmUuaCAq
LywKKwkJCQlDRTc5OUY5OTFDNkE0QkNEMDA5N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5
RGlyZWN0aXZlTGlzdC5jcHAgKi8sCisJCQkJQ0U3OTlGOUExQzZBNEJDRDAwOTdCNTE4IC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaCAqLywKKwkJCQlDRTI4NDk4ODFDQTM2
MTQ2MDBCNEE1N0YgLyogQ29udGVudFNlY3VyaXR5UG9saWN5RGlyZWN0aXZlTmFtZXMuY3BwICov
LAorCQkJCUNFMjg0OTg2MUNBMzYwREYwMEI0QTU3RiAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lE
aXJlY3RpdmVOYW1lcy5oICovLAorCQkJCUNFN0UxNzgyMUM4M0E0OTEwMEFEMDZBRiAvKiBDb250
ZW50U2VjdXJpdHlQb2xpY3lIYXNoLmggKi8sCisJCQkJQ0U3OTlGQTUxQzZBNTA1NzAwOTdCNTE4
IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlzdERpcmVjdGl2ZS5jcHAgKi8sCisJCQkJ
Q0U3OTlGQTYxQzZBNTA1NzAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeU1lZGlhTGlz
dERpcmVjdGl2ZS5oICovLAorCQkJCUNFNkRBREY3MUM1OTFFNkEwMDNGNkE4OCAvKiBDb250ZW50
U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMuY3BwICovLAorCQkJCUNFNkRBREY4MUM1OTFF
NkEwMDNGNkE4OCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMuaCAqLywK
KwkJCQlDRTc5OUY5RDFDNkE0QzE2MDA5N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5U291
cmNlLmNwcCAqLywKKwkJCQlDRTc5OUY5RTFDNkE0QzE2MDA5N0I1MTggLyogQ29udGVudFNlY3Vy
aXR5UG9saWN5U291cmNlLmggKi8sCisJCQkJQ0U3OTlGOTUxQzZBNDZCQzAwOTdCNTE4IC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxpc3QuY3BwICovLAorCQkJCUNFNzk5Rjk2MUM2QTQ2
QkMwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0LmggKi8sCisJCQkJ
Q0U3OTlGQTkxQzZBNTA2NjAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeVNvdXJjZUxp
c3REaXJlY3RpdmUuY3BwICovLAorCQkJCUNFNzk5RkFBMUM2QTUwNjYwMDk3QjUxOCAvKiBDb250
ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2VMaXN0RGlyZWN0aXZlLmggKi8sCisJCQkpOworCQkJbmFt
ZSA9IGNzcDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUNFMjYxNjlEMTg3
RTY1NTQwMDc5NTVGMyAvKiBhaXJwbGF5ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQlj
aGlsZHJlbiA9ICgKKwkJCQk0NDZEQzY0NjI0QTI5RDlCMDA2MUYzOTAgLyogUGxheWJhY2tUYXJn
ZXRDbGllbnRDb250ZXh0SWRlbnRpZmllci5oICovLAorCQkJCUE1REVCRDlGMTZGQjkwODcwMDgz
NkZFMCAvKiBXZWJLaXRQbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUV2ZW50LmNwcCAqLywKKwkJ
CQlBNURFQkRBMDE2RkI5MDg3MDA4MzZGRTAgLyogV2ViS2l0UGxheWJhY2tUYXJnZXRBdmFpbGFi
aWxpdHlFdmVudC5oICovLAorCQkJCUE1REVCREExMTZGQjkwODcwMDgzNkZFMCAvKiBXZWJLaXRQ
bGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUV2ZW50LmlkbCAqLywKKwkJCQkwNzA5RDc4QzFBRTU1
NTU0MDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAgKi8sCisJCQkJMDcwOUQ3
OEQxQUU1NTU1NDAwNEU0MkY4IC8qIFdlYk1lZGlhU2Vzc2lvbk1hbmFnZXIuaCAqLywKKwkJCQkw
NzA5RDc5NDFBRTU1QTI5MDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9uTWFuYWdlckNsaWVudC5o
ICovLAorCQkJKTsKKwkJCXBhdGggPSBhaXJwbGF5OworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsKKwkJfTsKKwkJQ0UyNjE2QTQxODdFNjVDMTAwNzk1NUYzIC8qIGlvcyAqLyA9IHsKKwkJCWlz
YSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJNzFDRTJDNTEyMjA5REM3RjAwQzQ5
NEJEIC8qIE1vdXNlRXZlbnRJT1MuY3BwICovLAorCQkJCTMxNTU3NENDMjE4RjY2RDAwMEQ4OEY2
NiAvKiBQb2ludGVyRXZlbnRJT1MuY3BwICovLAorCQkJCUExREU3MTJCMTg2MTJBQzEwMDczNDE5
MiAvKiBUb3VjaEV2ZW50cy5jcHAgKi8sCisJCQkpOworCQkJcGF0aCA9IGlvczsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCURGOUFGRDZGMTNGQzMxQjAwMDE1RkVCNyAvKiBv
YmpjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlDREUz
QTg1NjE3RjYwMjA0MDBDNUJFMjAgLyogQXVkaW9UcmFja1ByaXZhdGVBVkZPYmpDLmggKi8sCisJ
CQkJQ0RFM0E4NTUxN0Y2MDIwNDAwQzVCRTIwIC8qIEF1ZGlvVHJhY2tQcml2YXRlQVZGT2JqQy5t
bSAqLywKKwkJCQlDRDU0QTc2MDE4MEY5RjcwMDBCMDc2QzkgLyogQXVkaW9UcmFja1ByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMuY3BwICovLAorCQkJCUNENTRBNzYxMTgwRjlGNzAwMEIwNzZDOSAv
KiBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oICovLAorCQkJCTA3QzhBRDEy
MUQwNzNENjMwMDg3QzVDRSAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5oICovLAorCQkJCTA3QzhB
RDExMUQwNzNENjMwMDg3QzVDRSAvKiBBVkFzc2V0TUlNRVR5cGVDYWNoZS5tbSAqLywKKwkJCQlD
REVDQTg5OTFFREY0NDdEMDBEQ0IwOEIgLyogQVZBc3NldFRyYWNrVXRpbGl0aWVzLmggKi8sCisJ
CQkJQ0RFQ0E4OTgxRURGNDQ3RDAwRENCMDhCIC8qIEFWQXNzZXRUcmFja1V0aWxpdGllcy5tbSAq
LywKKwkJCQkwNzM4RTVFODI0OTk2OEFDMDBEQTEwMUMgLyogQVZPdXRwdXREZXZpY2VNZW51Q29u
dHJvbGxlclRhcmdldFBpY2tlci5oICovLAorCQkJCTA3MzhFNUVBMjQ5OTY4QUQwMERBMTAxQyAv
KiBBVk91dHB1dERldmljZU1lbnVDb250cm9sbGVyVGFyZ2V0UGlja2VyLm1tICovLAorCQkJCTA3
MzhFNUVCMjQ5OTY5MDkwMERBMTAxQyAvKiBBVlBsYXliYWNrVGFyZ2V0UGlja2VyLmggKi8sCisJ
CQkJMDdDQjlFNzEyNDlDMjI2QzAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0UGlj
a2VyLmggKi8sCisJCQkJMDdDQjlFNkYyNDlDMjI2QzAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJW
aWV3VGFyZ2V0UGlja2VyLm1tICovLAorCQkJCUNEMTFCM0RGMjI3Q0FBQTkwMDIzQUZDNyAvKiBB
VlN0cmVhbURhdGFQYXJzZXJNSU1FVHlwZUNhY2hlLmggKi8sCisJCQkJQ0QxMUIzRTAyMjdDQUFB
OTAwMjNBRkM3IC8qIEFWU3RyZWFtRGF0YVBhcnNlck1JTUVUeXBlQ2FjaGUubW0gKi8sCisJCQkJ
Q0Q3OEEyRUUxRjc1NjQ4NjAwREUzNzFCIC8qIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDLmggKi8sCisJCQkJQ0Q3OEEyRUMxRjc1NjQ4NjAwREUzNzFCIC8qIENETUluc3RhbmNl
RmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tICovLAorCQkJCUNERTU5NTk0MUJGMTY2RDEwMEEx
Q0JFOCAvKiBDRE1TZXNzaW9uQVZDb250ZW50S2V5U2Vzc2lvbi5oICovLAorCQkJCUNERTU5NTkz
MUJGMTY2QUQwMEExQ0JFOCAvKiBDRE1TZXNzaW9uQVZDb250ZW50S2V5U2Vzc2lvbi5tbSAqLywK
KwkJCQlDRERFMDJFQTE4QjNFRDZEMDBDRjdGRjEgLyogQ0RNU2Vzc2lvbkFWRm91bmRhdGlvbk9i
akMuaCAqLywKKwkJCQlDRERFMDJFQjE4QjNFRDZEMDBDRjdGRjEgLyogQ0RNU2Vzc2lvbkFWRm91
bmRhdGlvbk9iakMubW0gKi8sCisJCQkJQ0RERTAyRUUxOEI1NjRGQTAwQ0Y3RkYxIC8qIENETVNl
c3Npb25BVlN0cmVhbVNlc3Npb24uaCAqLywKKwkJCQlDRERFMDJFRjE4QjU2NTEyMDBDRjdGRjEg
LyogQ0RNU2Vzc2lvbkFWU3RyZWFtU2Vzc2lvbi5tbSAqLywKKwkJCQlDREU1OTU5NjFCRjI2RTIx
MDBBMUNCRTggLyogQ0RNU2Vzc2lvbk1lZGlhU291cmNlQVZGT2JqQy5oICovLAorCQkJCUNERTU5
NTlDMUJGMjc1NzEwMEExQ0JFOCAvKiBDRE1TZXNzaW9uTWVkaWFTb3VyY2VBVkZPYmpDLm1tICov
LAorCQkJCUNEMTlGRUFDMUY1NzRCNkQwMDBDNDJGQiAvKiBJbWFnZURlY29kZXJBVkZPYmpDLmgg
Ki8sCisJCQkJQ0QxOUZFQUQxRjU3NEI2RDAwMEM0MkZCIC8qIEltYWdlRGVjb2RlckFWRk9iakMu
bW0gKi8sCisJCQkJMDdBQTZCNjkxNjZEMDE5NTAwRDQ1NjcxIC8qIEluYmFuZFRleHRUcmFja1By
aXZhdGVBVkZPYmpDLmggKi8sCisJCQkJMDdBQTZCNkExNjZEMDE5NTAwRDQ1NjcxIC8qIEluYmFu
ZFRleHRUcmFja1ByaXZhdGVBVkZPYmpDLm1tICovLAorCQkJCTQxNDU5OEMwMjNDOEFENzgwMDJC
OUNDOCAvKiBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5oICovLAorCQkJCTQxNDU5OEMx
MjNDOEFENzkwMDJCOUNDOCAvKiBMb2NhbFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5tbSAqLywK
KwkJCQkwNzhFNDNEQjFBQkI2RjZGMDAxQzJGQTYgLyogTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
ck1hYy5oICovLAorCQkJCTA3OEU0M0RDMUFCQjZGNkYwMDFDMkZBNiAvKiBNZWRpYVBsYXliYWNr
VGFyZ2V0UGlja2VyTWFjLm1tICovLAorCQkJCURGOUFGRDcwMTNGQzMxRDgwMDE1RkVCNyAvKiBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmggKi8sCisJCQkJREY5QUZENzExM0ZD
MzFEODAwMTVGRUI3IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0gKi8s
CisJCQkJQ0RDOEI1QTExODA0NjM0NzAwMTZFNjg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlh
U291cmNlQVZGT2JqQy5oICovLAorCQkJCUNEQzhCNUEwMTgwNDYzNDcwMDE2RTY4NSAvKiBNZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0gKi8sCisJCQkJMTUwNTI0RjAxQjcx
MkZGMDAwNjk2QUE5IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oICov
LAorCQkJCTE1MDUyNEYxMUI3MTJGRjAwMDY5NkFBOSAvKiBNZWRpYVBsYXllclByaXZhdGVNZWRp
YVN0cmVhbUFWRk9iakMubW0gKi8sCisJCQkJMUIxMjREOEMxRDM4MEI3MDAwRUNERkIwIC8qIE1l
ZGlhU2FtcGxlQVZGT2JqQy5oICovLAorCQkJCTFCMTI0RDhFMUQzODBCQjYwMEVDREZCMCAvKiBN
ZWRpYVNhbXBsZUFWRk9iakMubW0gKi8sCisJCQkJQ0RDOEI1QTUxODA0NzRGNzAwMTZFNjg1IC8q
IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCAqLywKKwkJCQlDREM4QjVBNDE4MDQ3NEY3MDAx
NkU2ODUgLyogTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbSAqLywKKwkJCQk3QTI5RjU3MTE4
QzY5NTE0MDA0RDBGODEgLyogT3V0T2ZCYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5oICovLAorCQkJ
CUNERjk5NEZBMjRDMTJBNkEwMDJFQTA2MiAvKiBTb3VyY2VCdWZmZXJQYXJzZXJBVkZPYmpDLmgg
Ki8sCisJCQkJQ0RGOTk0RkIyNEMxMkE2QTAwMkVBMDYyIC8qIFNvdXJjZUJ1ZmZlclBhcnNlckFW
Rk9iakMubW0gKi8sCisJCQkJQ0RDOEI1QTkxODA0N0ZGMTAwMTZFNjg1IC8qIFNvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDLmggKi8sCisJCQkJQ0RDOEI1QTgxODA0N0ZGMTAwMTZFNjg1IC8qIFNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tICovLAorCQkJCTUyRDVBMThFMUM1NDU5MDMwMERF
MzRBMyAvKiBWaWRlb0xheWVyTWFuYWdlck9iakMuaCAqLywKKwkJCQk1MkQ1QTE4RDFDNTQ1OTAz
MDBERTM0QTMgLyogVmlkZW9MYXllck1hbmFnZXJPYmpDLm1tICovLAorCQkJCUNEMzM2RjY1MTdG
QTBBQzYwMERERENEMCAvKiBWaWRlb1RyYWNrUHJpdmF0ZUFWRk9iakMuY3BwICovLAorCQkJCUNE
MzM2RjY2MTdGQTBBQzYwMERERENEMCAvKiBWaWRlb1RyYWNrUHJpdmF0ZUFWRk9iakMuaCAqLywK
KwkJCQlDRDhCNUE0MTE4MEQxNDlBMDA4QjhFNjUgLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVNv
dXJjZUFWRk9iakMuaCAqLywKKwkJCQlDRDhCNUE0MDE4MEQxNDlBMDA4QjhFNjUgLyogVmlkZW9U
cmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0gKi8sCisJCQkJQ0Q3RTA1MjAxNjUxQTg0
MTAwQzEyMDFGIC8qIFdlYkNvcmVBVkZSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCUNEN0UwNTIx
MTY1MUE4NDEwMEMxMjAxRiAvKiBXZWJDb3JlQVZGUmVzb3VyY2VMb2FkZXIubW0gKi8sCisJCQkp
OworCQkJcGF0aCA9IG9iamM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlF
MTcyQUY3MTE4MEYzNDM0MDBGQkFEQjkgLyogbWFjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7
CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1N0VFQUE1NzFFQTBBRkJCMDA3MDExMjQgLyogQ29tbW9u
Q3J5cHRvREVSVXRpbGl0aWVzLmNwcCAqLywKKwkJCQk1N0U2NjRGQjFFNzM3MDMzMDA3NjU1MzYg
LyogQ29tbW9uQ3J5cHRvREVSVXRpbGl0aWVzLmggKi8sCisJCQkJRTEyNUY4NDMxODI0MjVDOTAw
RDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobUFFU19DQkNNYWMuY3BwICovLAorCQkJCTU3MDQ0MDU3
MUU1Mzg1MTYwMDM1NjYwMSAvKiBDcnlwdG9BbGdvcml0aG1BRVNfQ0ZCTWFjLmNwcCAqLywKKwkJ
CQk1N0UxRTVBRjFFOEREM0ExMDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NUUk1hYy5j
cHAgKi8sCisJCQkJNTdCNUY4MEQxRTVEMkYyRDAwRjM0RjkwIC8qIENyeXB0b0FsZ29yaXRobUFF
U19HQ01NYWMuY3BwICovLAorCQkJCUUxRkUxMzdDMTg0RDI3MDIwMDg5MkYxMyAvKiBDcnlwdG9B
bGdvcml0aG1BRVNfS1dNYWMuY3BwICovLAorCQkJCTU3NjgxNDM0MUU2RkUzRTgwMEU3Nzc1NCAv
KiBDcnlwdG9BbGdvcml0aG1FQ0RITWFjLmNwcCAqLywKKwkJCQk1N0VFQUE0ODFFOUYyRDMyMDA3
MDExMjQgLyogQ3J5cHRvQWxnb3JpdGhtRUNEU0FNYWMuY3BwICovLAorCQkJCTU3OTU3Q0FBMUU5
NzI0N0IwMDgwNzJBQiAvKiBDcnlwdG9BbGdvcml0aG1IS0RGTWFjLmNwcCAqLywKKwkJCQlFMTI1
RjgzNzE4MjJGMUVCMDBEODRDRDkgLyogQ3J5cHRvQWxnb3JpdGhtSE1BQ01hYy5jcHAgKi8sCisJ
CQkJNTdFNjU3RTgxRTcxNEQxQTAwRjk0MUNBIC8qIENyeXB0b0FsZ29yaXRobVBCS0RGMk1hYy5j
cHAgKi8sCisJCQkJRTFCQjg0QUMxODIyQ0E3NDAwNTI1MDQzIC8qIENyeXB0b0FsZ29yaXRobVJl
Z2lzdHJ5TWFjLmNwcCAqLywKKwkJCQlFMUZFMTM2RTE4M0ZFQ0YwMDA4OTJGMTMgLyogQ3J5cHRv
QWxnb3JpdGhtUlNBX09BRVBNYWMuY3BwICovLAorCQkJCTU3MjFBOTgzMUVDRTRGQjkwMDgxMjk1
QSAvKiBDcnlwdG9BbGdvcml0aG1SU0FfUFNTTWFjLmNwcCAqLywKKwkJCQlFMTIzM0YwRTE4NUE0
MTMwMDA4REZBRjUgLyogQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNU1hYy5jcHAgKi8s
CisJCQkJRTFDMjY2RDYxODMxN0FCNDAwM0Y4QjMzIC8qIENyeXB0b0FsZ29yaXRobVJTQVNTQV9Q
S0NTMV92MV81TWFjLmNwcCAqLywKKwkJCQk1NzIxQTk4NjFFQ0U1M0IxMDA4MTI5NUEgLyogQ3J5
cHRvRGlnZXN0QWxnb3JpdGhtLmggKi8sCisJCQkJNTc1MEE5N0ExRTY5MTYxNjAwNzA1QzRBIC8q
IENyeXB0b0tleUVDTWFjLmNwcCAqLywKKwkJCQlFMTlBQzNGODE4MjU2NkY3MDAzNDk0MjYgLyog
Q3J5cHRvS2V5TWFjLmNwcCAqLywKKwkJCQlFMTY0RkFBNDE4MzE1RTFBMDBEQjRFNjEgLyogQ3J5
cHRvS2V5UlNBTWFjLmNwcCAqLywKKwkJCQk0MTlEOTMwNzI1NUU4NDI4MDBEQTE5ODQgLyogQ3J5
cHRvVXRpbGl0aWVzQ29jb2EuY3BwICovLAorCQkJCTQxOUQ5MzA1MjU1RTg0MjcwMERBMTk4NCAv
KiBDcnlwdG9VdGlsaXRpZXNDb2NvYS5oICovLAorCQkJCUUxOERGMzM2MThBQUYxNEQwMDc3M0U1
OSAvKiBTZXJpYWxpemVkQ3J5cHRvS2V5V3JhcE1hYy5tbSAqLywKKwkJCSk7CisJCQlwYXRoID0g
bWFjOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTE3MkFGN0MxODBGM0Iw
RDAwRkJBREI5IC8qIGFsZ29yaXRobXMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNo
aWxkcmVuID0gKAorCQkJCUUxMjVGODNGMTgyNDI1M0EwMEQ4NENEOSAvKiBDcnlwdG9BbGdvcml0
aG1BRVNfQ0JDLmNwcCAqLywKKwkJCQlFMTI1Rjg0MDE4MjQyNTNBMDBEODRDRDkgLyogQ3J5cHRv
QWxnb3JpdGhtQUVTX0NCQy5oICovLAorCQkJCTU3MTI1MjZBMUU1MjUyN0MwMDhGRjM2OSAvKiBD
cnlwdG9BbGdvcml0aG1BRVNfQ0ZCLmNwcCAqLywKKwkJCQk1NzEyNTI2ODFFNTI0RUIxMDA4RkYz
NjkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NGQi5oICovLAorCQkJCTU3RTFFNUEwMUU4QzkxQjUw
MEVFMzdDOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNfQ1RSLmNwcCAqLywKKwkJCQk1N0UxRTVBMTFF
OEM5MUI1MDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0NUUi5oICovLAorCQkJCTU3QjVG
N0Y2MUU1QkU4NDAwMEYzNEY5MCAvKiBDcnlwdG9BbGdvcml0aG1BRVNfR0NNLmNwcCAqLywKKwkJ
CQk1N0I1RjdGNzFFNUJFODQwMDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0dDTS5oICov
LAorCQkJCUUxRkUxMzc4MTg0RDIxQkIwMDg5MkYxMyAvKiBDcnlwdG9BbGdvcml0aG1BRVNfS1cu
Y3BwICovLAorCQkJCUUxRkUxMzc5MTg0RDIxQkIwMDg5MkYxMyAvKiBDcnlwdG9BbGdvcml0aG1B
RVNfS1cuaCAqLywKKwkJCQk1NzUwQTk4NDFFNkEyMTY4MDA3MDVDNEEgLyogQ3J5cHRvQWxnb3Jp
dGhtRUNESC5jcHAgKi8sCisJCQkJNTc1MEE5ODUxRTZBMjE2ODAwNzA1QzRBIC8qIENyeXB0b0Fs
Z29yaXRobUVDREguaCAqLywKKwkJCQk1N0VFQUE0NDFFOUVEMkREMDA3MDExMjQgLyogQ3J5cHRv
QWxnb3JpdGhtRUNEU0EuY3BwICovLAorCQkJCTU3RUVBQTQ1MUU5RUQyREQwMDcwMTEyNCAvKiBD
cnlwdG9BbGdvcml0aG1FQ0RTQS5oICovLAorCQkJCTU3OTU3Q0E2MUU5NzFERTAwMDgwNzJBQiAv
KiBDcnlwdG9BbGdvcml0aG1IS0RGLmNwcCAqLywKKwkJCQk1Nzk1N0NBNzFFOTcxREUwMDA4MDcy
QUIgLyogQ3J5cHRvQWxnb3JpdGhtSEtERi5oICovLAorCQkJCUUxMjVGODJGMTgyMkYxMUIwMEQ4
NENEOSAvKiBDcnlwdG9BbGdvcml0aG1ITUFDLmNwcCAqLywKKwkJCQlFMTI1RjgzMDE4MjJGMTFC
MDBEODRDRDkgLyogQ3J5cHRvQWxnb3JpdGhtSE1BQy5oICovLAorCQkJCTU3Nzc3RTM2MUU3MTIx
N0QwMEVFMUE4RCAvKiBDcnlwdG9BbGdvcml0aG1QQktERjIuY3BwICovLAorCQkJCTU3Nzc3RTM3
MUU3MTIxN0QwMEVFMUE4RCAvKiBDcnlwdG9BbGdvcml0aG1QQktERjIuaCAqLywKKwkJCQlFMUZF
MTM2ODE4M0ZFMUFCMDA4OTJGMTMgLyogQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVAuY3BwICovLAor
CQkJCUUxRkUxMzY5MTgzRkUxQUIwMDg5MkYxMyAvKiBDcnlwdG9BbGdvcml0aG1SU0FfT0FFUC5o
ICovLAorCQkJCTU3OTA5OTZDMUVDRDIzREEwMEZDMDc2OCAvKiBDcnlwdG9BbGdvcml0aG1SU0Ff
UFNTLmNwcCAqLywKKwkJCQk1NzkwOTk2QjFFQ0QyM0RBMDBGQzA3NjggLyogQ3J5cHRvQWxnb3Jp
dGhtUlNBX1BTUy5oICovLAorCQkJCUUxMjMzRjBBMTg1QTNFM0IwMDhERkFGNSAvKiBDcnlwdG9B
bGdvcml0aG1SU0FFU19QS0NTMV92MV81LmNwcCAqLywKKwkJCQlFMTIzM0YwQjE4NUEzRTNCMDA4
REZBRjUgLyogQ3J5cHRvQWxnb3JpdGhtUlNBRVNfUEtDUzFfdjFfNS5oICovLAorCQkJCUUxQkQz
MzE3MTgyRDhEREQwMEMwNUQ5RiAvKiBDcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNS5j
cHAgKi8sCisJCQkJRTFCRDMzMTgxODJEOERERDAwQzA1RDlGIC8qIENyeXB0b0FsZ29yaXRobVJT
QVNTQV9QS0NTMV92MV81LmggKi8sCisJCQkJRTEyNUY4MjkxODIyQ0ZFQzAwRDg0Q0Q5IC8qIENy
eXB0b0FsZ29yaXRobVNIQTEuY3BwICovLAorCQkJCUUxMjVGODJBMTgyMkNGRUMwMEQ4NENEOSAv
KiBDcnlwdG9BbGdvcml0aG1TSEExLmggKi8sCisJCQkJRTE5QUMzRTYxODI0REM3OTAwMzQ5NDI2
IC8qIENyeXB0b0FsZ29yaXRobVNIQTIyNC5jcHAgKi8sCisJCQkJRTE5QUMzRTcxODI0REM3OTAw
MzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTIyNC5oICovLAorCQkJCUUxOUFDM0U4MTgyNERD
NzkwMDM0OTQyNiAvKiBDcnlwdG9BbGdvcml0aG1TSEEyNTYuY3BwICovLAorCQkJCUUxOUFDM0U5
MTgyNERDNzkwMDM0OTQyNiAvKiBDcnlwdG9BbGdvcml0aG1TSEEyNTYuaCAqLywKKwkJCQlFMTlB
QzNFQTE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMzg0LmNwcCAqLywKKwkJ
CQlFMTlBQzNFQjE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMzg0LmggKi8s
CisJCQkJRTE5QUMzRUMxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTUxMi5j
cHAgKi8sCisJCQkJRTE5QUMzRUQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNI
QTUxMi5oICovLAorCQkJKTsKKwkJCXBhdGggPSBhbGdvcml0aG1zOworCQkJc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTE5REEyOUQxODE5OTVDRTAwMDg4QkM4IC8qIGtleXMgKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTdDOUFDQTk2MUYz
Q0NEQUQwMEYzQUEwOSAvKiBDcnlwdG9BZXNLZXlBbGdvcml0aG0uaCAqLywKKwkJCQk3QzlBQ0E5
NzFGM0NDREFEMDBGM0FBMDkgLyogQ3J5cHRvQWVzS2V5QWxnb3JpdGhtLmlkbCAqLywKKwkJCQk3
QzlBQ0E5QTFGM0NDREYyMDBGM0FBMDkgLyogQ3J5cHRvRWNLZXlBbGdvcml0aG0uaCAqLywKKwkJ
CQk3QzlBQ0E5QjFGM0NDREYyMDBGM0FBMDkgLyogQ3J5cHRvRWNLZXlBbGdvcml0aG0uaWRsICov
LAorCQkJCTdDOUFDQTlFMUYzQ0NFMzAwMEYzQUEwOSAvKiBDcnlwdG9IbWFjS2V5QWxnb3JpdGht
LmggKi8sCisJCQkJN0M5QUNBOUYxRjNDQ0UzMDAwRjNBQTA5IC8qIENyeXB0b0htYWNLZXlBbGdv
cml0aG0uaWRsICovLAorCQkJCUUxMjVGODRCMTgyNDI4OUQwMEQ4NENEOSAvKiBDcnlwdG9LZXlB
RVMuY3BwICovLAorCQkJCUUxMjVGODRDMTgyNDI4OUQwMEQ4NENEOSAvKiBDcnlwdG9LZXlBRVMu
aCAqLywKKwkJCQk3QzlBQ0E4RjFGM0NDMEFBMDBGM0FBMDkgLyogQ3J5cHRvS2V5QWxnb3JpdGht
LmggKi8sCisJCQkJN0M5QUNBOTExRjNDQzBBQTAwRjNBQTA5IC8qIENyeXB0b0tleUFsZ29yaXRo
bS5pZGwgKi8sCisJCQkJNTc1MEE5NzIxRTY4RDAwMDAwNzA1QzRBIC8qIENyeXB0b0tleUVDLmNw
cCAqLywKKwkJCQk1NzUwQTk3MzFFNjhEMDAwMDA3MDVDNEEgLyogQ3J5cHRvS2V5RUMuaCAqLywK
KwkJCQlFMTI1RjgzMzE4MjJGMThBMDBEODRDRDkgLyogQ3J5cHRvS2V5SE1BQy5jcHAgKi8sCisJ
CQkJRTEyNUY4MzQxODIyRjE4QTAwRDg0Q0Q5IC8qIENyeXB0b0tleUhNQUMuaCAqLywKKwkJCQk1
Nzc3N0UzQTFFNzEyNDIyMDBFRTFBOEQgLyogQ3J5cHRvS2V5UmF3LmNwcCAqLywKKwkJCQk1Nzc3
N0UzQjFFNzEyNDIyMDBFRTFBOEQgLyogQ3J5cHRvS2V5UmF3LmggKi8sCisJCQkJNTdFMjMzNkEx
RENDMjYyNDAwRjI4RDAxIC8qIENyeXB0b0tleVJTQS5jcHAgKi8sCisJCQkJRTE2NEZBQTIxODMx
NUJGNDAwREI0RTYxIC8qIENyeXB0b0tleVJTQS5oICovLAorCQkJCUUxQzI2NkRDMTgzMTlGMzEw
MDNGOEIzMyAvKiBDcnlwdG9LZXlSU0FDb21wb25lbnRzLmNwcCAqLywKKwkJCQlFMUMyNjZERDE4
MzE5RjMxMDAzRjhCMzMgLyogQ3J5cHRvS2V5UlNBQ29tcG9uZW50cy5oICovLAorCQkJCTdDOUFD
QUE2MUYzQ0NFQjQwMEYzQUEwOSAvKiBDcnlwdG9Sc2FIYXNoZWRLZXlBbGdvcml0aG0uaCAqLywK
KwkJCQk3QzlBQ0FBNzFGM0NDRUI0MDBGM0FBMDkgLyogQ3J5cHRvUnNhSGFzaGVkS2V5QWxnb3Jp
dGhtLmlkbCAqLywKKwkJCQk3QzlBQ0FBMjFGM0NDRTY5MDBGM0FBMDkgLyogQ3J5cHRvUnNhS2V5
QWxnb3JpdGhtLmggKi8sCisJCQkJN0M5QUNBQTMxRjNDQ0U2OTAwRjNBQTA5IC8qIENyeXB0b1Jz
YUtleUFsZ29yaXRobS5pZGwgKi8sCisJCQkpOworCQkJcGF0aCA9IGtleXM7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQlFMUM2NTcxNDE4MTYwMTVGMDAyNTZDREQgLyogcGFy
YW1ldGVycyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
NTcyMDkzRDExRERDRUE0QjAwMzEwQUIwIC8qIEFlc0NiY0NmYlBhcmFtcy5pZGwgKi8sCisJCQkJ
NTdFMUU1QTkxRThEQ0Y3NDAwRUUzN0M5IC8qIEFlc0N0clBhcmFtcy5pZGwgKi8sCisJCQkJNTdC
NUY4MDcxRTVEMTlGMjAwRjM0RjkwIC8qIEFlc0djbVBhcmFtcy5pZGwgKi8sCisJCQkJNTc3NDgz
MTAxREFEQzQ5OTAwNzE2RUY5IC8qIEFlc0tleVBhcmFtcy5pZGwgKi8sCisJCQkJNTcyMDkzRDIx
RERDRUI5QTAwMzEwQUIwIC8qIENyeXB0b0FsZ29yaXRobUFlc0NiY0NmYlBhcmFtcy5oICovLAor
CQkJCTU3RTFFNUE2MUU4REJEM0UwMEVFMzdDOSAvKiBDcnlwdG9BbGdvcml0aG1BZXNDdHJQYXJh
bXMuaCAqLywKKwkJCQk1N0I1RjgwODFFNUQxQTk4MDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGht
QWVzR2NtUGFyYW1zLmggKi8sCisJCQkJNTc3NDgzMTExREFEQzU1RDAwNzE2RUY5IC8qIENyeXB0
b0FsZ29yaXRobUFlc0tleVBhcmFtcy5oICovLAorCQkJCTU3NjgxNDI5MUU2Rjk5QzEwMEU3Nzc1
NCAvKiBDcnlwdG9BbGdvcml0aG1FY2RoS2V5RGVyaXZlUGFyYW1zLmggKi8sCisJCQkJNTdFRUFB
NEQxRTlGRkJGQzAwNzAxMTI0IC8qIENyeXB0b0FsZ29yaXRobUVjZHNhUGFyYW1zLmggKi8sCisJ
CQkJNTc1MEE5N0QxRTZBMTNFRjAwNzA1QzRBIC8qIENyeXB0b0FsZ29yaXRobUVjS2V5UGFyYW1z
LmggKi8sCisJCQkJNTc5NTdDQUYxRTk3MjY0NTAwODA3MkFCIC8qIENyeXB0b0FsZ29yaXRobUhr
ZGZQYXJhbXMuaCAqLywKKwkJCQk1Nzc0ODMxODFEQjQ0OTFGMDA3MTZFRjkgLyogQ3J5cHRvQWxn
b3JpdGhtSG1hY0tleVBhcmFtcy5oICovLAorCQkJCTU3RTY1N0VCMUU3MTYyRUEwMEY5NDFDQSAv
KiBDcnlwdG9BbGdvcml0aG1QYmtkZjJQYXJhbXMuaCAqLywKKwkJCQk1N0UyMzM2RDFEQ0Q0M0ZE
MDBGMjhEMDEgLyogQ3J5cHRvQWxnb3JpdGhtUnNhSGFzaGVkSW1wb3J0UGFyYW1zLmggKi8sCisJ
CQkJNTdFMjMzNzQxRENENkQzQjAwRjI4RDAxIC8qIENyeXB0b0FsZ29yaXRobVJzYUhhc2hlZEtl
eUdlblBhcmFtcy5oICovLAorCQkJCTU3RkVERDNFMURCNkQ1OTIwMEVCOTZGNSAvKiBDcnlwdG9B
bGdvcml0aG1Sc2FLZXlHZW5QYXJhbXMuaCAqLywKKwkJCQk1NzA2QTY5NTFEREU1Qzk1MDBBMDNC
MTQgLyogQ3J5cHRvQWxnb3JpdGhtUnNhT2FlcFBhcmFtcy5oICovLAorCQkJCTU3MjFBOTg4MUVD
RTU3MDQwMDgxMjk1QSAvKiBDcnlwdG9BbGdvcml0aG1Sc2FQc3NQYXJhbXMuaCAqLywKKwkJCQk1
NzY4MTQyODFFNkY5OEFEMDBFNzc3NTQgLyogRWNkaEtleURlcml2ZVBhcmFtcy5pZGwgKi8sCisJ
CQkJNTdFRUFBNEUxRTlGRkJGQzAwNzAxMTI0IC8qIEVjZHNhUGFyYW1zLmlkbCAqLywKKwkJCQk1
NzUwQTk3QzFFNkExMkI0MDA3MDVDNEEgLyogRWNLZXlQYXJhbXMuaWRsICovLAorCQkJCTU3OTU3
Q0IwMUU5NzI2NDUwMDgwNzJBQiAvKiBIa2RmUGFyYW1zLmlkbCAqLywKKwkJCQk1Nzc0ODMxNzFE
QjFGRTg5MDA3MTZFRjkgLyogSG1hY0tleVBhcmFtcy5pZGwgKi8sCisJCQkJNTdFNjU3RUExRTcx
NUYwNTAwRjk0MUNBIC8qIFBia2RmMlBhcmFtcy5pZGwgKi8sCisJCQkJNTdFMjMzNkMxRENENDM3
MDAwRjI4RDAxIC8qIFJzYUhhc2hlZEltcG9ydFBhcmFtcy5pZGwgKi8sCisJCQkJNTdGODI3Mzkx
REI3MkMyMjAwOUQyQkY0IC8qIFJzYUhhc2hlZEtleUdlblBhcmFtcy5pZGwgKi8sCisJCQkJNTdG
RUREM0QxREI2RDQ3RjAwRUI5NkY1IC8qIFJzYUtleUdlblBhcmFtcy5pZGwgKi8sCisJCQkJNTcw
NkE2OTQxRERFNUJGODAwQTAzQjE0IC8qIFJzYU9hZXBQYXJhbXMuaWRsICovLAorCQkJCTU3MjFB
OThBMUVDRTU3MDQwMDgxMjk1QSAvKiBSc2FQc3NQYXJhbXMuaWRsICovLAorCQkJKTsKKwkJCXBh
dGggPSBwYXJhbWV0ZXJzOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTFD
OEJFNEIwRThCRDBEMTAwNjRDQjdEIC8qIFRocmVhZHMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91
cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTQxOEY4ODAyMEZGOTU3QUUwMDgwRjA0NSAvKiBKU0Fi
c3RyYWN0V29ya2VyLmNwcCAqLywKKwkJCQk0MThGODgwMzBGRjk1N0FFMDA4MEYwNDUgLyogSlNB
YnN0cmFjdFdvcmtlci5oICovLAorCQkJCTQxNjJBNDU1MTAxMTQ2NDcwMERGRjNFRCAvKiBKU0Rl
ZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmNwcCAqLywKKwkJCQk0MTYyQTQ1NjEwMTE0NjQ3MDBE
RkYzRUQgLyogSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oICovLAorCQkJCUUxQzhCRTVD
MEU4QkQxNUEwMDY0Q0I3RCAvKiBKU1dvcmtlci5jcHAgKi8sCisJCQkJRTFDQUE1QzUwRThCRDIz
NjAwQTczRUNBIC8qIEpTV29ya2VyLmggKi8sCisJCQkJRTE4MjU2OEQwRUYyQjAyRDAwOTMzMjQy
IC8qIEpTV29ya2VyR2xvYmFsU2NvcGUuY3BwICovLAorCQkJCUUxODI1NjhFMEVGMkIwMkQwMDkz
MzI0MiAvKiBKU1dvcmtlckdsb2JhbFNjb3BlLmggKi8sCisJCQkJRTFDMzYyRUUwRUFGMkFBOTAw
NzQxMEJDIC8qIEpTV29ya2VyTG9jYXRpb24uY3BwICovLAorCQkJCUUxQzM2MkVEMEVBRjJBQTkw
MDc0MTBCQyAvKiBKU1dvcmtlckxvY2F0aW9uLmggKi8sCisJCQkJRTEyNzFBNTcwRUVFQ0RFNDAw
RjYxMjEzIC8qIEpTV29ya2VyTmF2aWdhdG9yLmNwcCAqLywKKwkJCQlFMTI3MUE1NjBFRUVDREU0
MDBGNjEyMTMgLyogSlNXb3JrZXJOYXZpZ2F0b3IuaCAqLywKKwkJCQk1MUYxNzUwNDFGMzU4QkRF
MDBDNzQ5NTAgLyogSlNXb3JrZXJUeXBlLmNwcCAqLywKKwkJCQk1MUYxNzUwNTFGMzU4QkRFMDBD
NzQ5NTAgLyogSlNXb3JrZXJUeXBlLmggKi8sCisJCQkpOworCQkJbmFtZSA9IFRocmVhZHM7CisJ
CQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlFMUVFOEFDNjI0MTJCMTZGMDBFNzk0
RDYgLyogd2VieHIgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCUUxRUU4QjBFMjQxMkIxNzAwMEU3OTRENiAvKiBOYXZpZ2F0b3IrV2ViWFIuaWRsICovLAor
CQkJCUUxRUU4QUYxMjQxMkIxNzAwMEU3OTRENiAvKiBOYXZpZ2F0b3JXZWJYUi5jcHAgKi8sCisJ
CQkJRTFFRThBQ0EyNDEyQjE3MDAwRTc5NEQ2IC8qIE5hdmlnYXRvcldlYlhSLmggKi8sCisJCQkJ
RTFFRThBRDMyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSQm91bmRlZFJlZmVyZW5jZVNwYWNlLmNw
cCAqLywKKwkJCQlFMUVFOEFEMTI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJCb3VuZGVkUmVmZXJl
bmNlU3BhY2UuaCAqLywKKwkJCQlFMTk0OTA5NDI0MzRGMTYwMDA0MTZBOTkgLyogV2ViWFJCb3Vu
ZGVkUmVmZXJlbmNlU3BhY2UuaWRsICovLAorCQkJCUUxRUU4QUYwMjQxMkIxNzAwMEU3OTRENiAv
KiBXZWJYUkZyYW1lLmNwcCAqLywKKwkJCQlFMUVFOEFFMzI0MTJCMTcwMDBFNzk0RDYgLyogV2Vi
WFJGcmFtZS5oICovLAorCQkJCUUxOTQ5MDg4MjQzNEYxNTkwMDQxNkE5OSAvKiBXZWJYUkZyYW1l
LmlkbCAqLywKKwkJCQkxMUU1MTYzQjI2MUUxQTE0MDBFNjlGMjUgLyogV2ViWFJHYW1lcGFkLmNw
cCAqLywKKwkJCQkxMUU1MTYzQTI2MUUxQTE0MDBFNjlGMjUgLyogV2ViWFJHYW1lcGFkLmggKi8s
CisJCQkJRTFFRThCMEQyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3VyY2UuY3BwICov
LAorCQkJCUUxRUU4QjE3MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUklucHV0U291cmNlLmggKi8s
CisJCQkJRTE5NDkwODkyNDM0RjE1QTAwNDE2QTk5IC8qIFdlYlhSSW5wdXRTb3VyY2UuaWRsICov
LAorCQkJCUUxRUU4QUU2MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUklucHV0U291cmNlQXJyYXku
Y3BwICovLAorCQkJCUUxRUU4QUREMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUklucHV0U291cmNl
QXJyYXkuaCAqLywKKwkJCQlFMTk0OTA5MzI0MzRGMTYwMDA0MTZBOTkgLyogV2ViWFJJbnB1dFNv
dXJjZUFycmF5LmlkbCAqLywKKwkJCQkxMUU1MTYzNzI2MUUxQTA1MDBFNjlGMjUgLyogV2ViWFJJ
bnB1dFNwYWNlLmNwcCAqLywKKwkJCQkxMUU1MTYzNTI2MUUxQTA1MDBFNjlGMjUgLyogV2ViWFJJ
bnB1dFNwYWNlLmggKi8sCisJCQkJRTEyRkRBRkIyNEEwRkQxQzAwNzAyMzZFIC8qIFdlYlhSTGF5
ZXIuY3BwICovLAorCQkJCUUxMkZEQUZEMjRBMEZEMUUwMDcwMjM2RSAvKiBXZWJYUkxheWVyLmgg
Ki8sCisJCQkJRTEyRkRBRkUyNEEwRkQxRjAwNzAyMzZFIC8qIFdlYlhSTGF5ZXIuaWRsICovLAor
CQkJCTMxNEYxNjlCMjY0MEI2N0UwMDY2M0VDRSAvKiBXZWJYUk9wYXF1ZUZyYW1lYnVmZmVyLmNw
cCAqLywKKwkJCQkzMTRGMTY5RDI2NDBCNjdFMDA2NjNFQ0UgLyogV2ViWFJPcGFxdWVGcmFtZWJ1
ZmZlci5oICovLAorCQkJCUUxRUU4QUU1MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlBvc2UuY3Bw
ICovLAorCQkJCUUxRUU4QUUxMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlBvc2UuaCAqLywKKwkJ
CQlFMTk0OTBBMTI0MzRGMTY4MDA0MTZBOTkgLyogV2ViWFJQb3NlLmlkbCAqLywKKwkJCQlFMUVF
OEFEMjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJSZWZlcmVuY2VTcGFjZS5jcHAgKi8sCisJCQkJ
RTFFRThCMTQyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmVmZXJlbmNlU3BhY2UuaCAqLywKKwkJ
CQlFMTk0OTBBNjI0MzRGMTZCMDA0MTZBOTkgLyogV2ViWFJSZWZlcmVuY2VTcGFjZS5pZGwgKi8s
CisJCQkJRTFFRThBQ0UyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSUmVuZGVyU3RhdGUuY3BwICov
LAorCQkJCUUxRUU4QUQ1MjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlJlbmRlclN0YXRlLmggKi8s
CisJCQkJRTE5NDkwQTQyNDM0RjE2OTAwNDE2QTk5IC8qIFdlYlhSUmVuZGVyU3RhdGUuaWRsICov
LAorCQkJCUUxRUU4QUNEMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlJpZ2lkVHJhbnNmb3JtLmNw
cCAqLywKKwkJCQlFMUVFOEIwNjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJSaWdpZFRyYW5zZm9y
bS5oICovLAorCQkJCUUxOTQ5MDk4MjQzNEYxNjIwMDQxNkE5OSAvKiBXZWJYUlJpZ2lkVHJhbnNm
b3JtLmlkbCAqLywKKwkJCQlFMUVFOEIwRjI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJTZXNzaW9u
LmNwcCAqLywKKwkJCQlFMUVFOEIxMTI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJTZXNzaW9uLmgg
Ki8sCisJCQkJRTE5NDkwOUUyNDM0RjE2NjAwNDE2QTk5IC8qIFdlYlhSU2Vzc2lvbi5pZGwgKi8s
CisJCQkJRTFFRThBRjgyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSU3BhY2UuY3BwICovLAorCQkJ
CUUxRUU4QUNGMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlNwYWNlLmggKi8sCisJCQkJRTE5NDkw
QTIyNDM0RjE2ODAwNDE2QTk5IC8qIFdlYlhSU3BhY2UuaWRsICovLAorCQkJCUUxRUU4QUU4MjQx
MkIxNzAwMEU3OTRENiAvKiBXZWJYUlN5c3RlbS5jcHAgKi8sCisJCQkJRTFFRThBRTIyNDEyQjE3
MDAwRTc5NEQ2IC8qIFdlYlhSU3lzdGVtLmggKi8sCisJCQkJRTE5NDkwOUEyNDM0RjE2NDAwNDE2
QTk5IC8qIFdlYlhSU3lzdGVtLmlkbCAqLywKKwkJCQlFMUVFOEIxMjI0MTJCMTcwMDBFNzk0RDYg
LyogV2ViWFJWaWV3LmNwcCAqLywKKwkJCQlFMUVFOEFFMDI0MTJCMTcwMDBFNzk0RDYgLyogV2Vi
WFJWaWV3LmggKi8sCisJCQkJRTE5NDkwODYyNDM0RjE1ODAwNDE2QTk5IC8qIFdlYlhSVmlldy5p
ZGwgKi8sCisJCQkJRTFFRThCMEIyNDEyQjE3MDAwRTc5NEQ2IC8qIFdlYlhSVmlld2VyUG9zZS5j
cHAgKi8sCisJCQkJRTFFRThBQzcyNDEyQjE2RjAwRTc5NEQ2IC8qIFdlYlhSVmlld2VyUG9zZS5o
ICovLAorCQkJCUUxOTQ5MDlDMjQzNEYxNjUwMDQxNkE5OSAvKiBXZWJYUlZpZXdlclBvc2UuaWRs
ICovLAorCQkJCUUxRUU4QUVCMjQxMkIxNzAwMEU3OTRENiAvKiBXZWJYUlZpZXdwb3J0LmNwcCAq
LywKKwkJCQlFMUVFOEFGNDI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJWaWV3cG9ydC5oICovLAor
CQkJCUUxOTQ5MDg3MjQzNEYxNTkwMDQxNkE5OSAvKiBXZWJYUlZpZXdwb3J0LmlkbCAqLywKKwkJ
CQlFMUVFOEFEODI0MTJCMTcwMDBFNzk0RDYgLyogV2ViWFJXZWJHTExheWVyLmNwcCAqLywKKwkJ
CQlFMTk0OTA5NTI0MzRGMTYxMDA0MTZBOTkgLyogV2ViWFJXZWJHTExheWVyLmggKi8sCisJCQkJ
RTE5NDkwOEYyNDM0RjE1RDAwNDE2QTk5IC8qIFdlYlhSV2ViR0xMYXllci5pZGwgKi8sCisJCQkJ
RTFFRThCMDUyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSRW52aXJvbm1lbnRCbGVuZE1vZGUuaCAqLywK
KwkJCQlFMUVFOEFEQTI0MTJCMTcwMDBFNzk0RDYgLyogWFJFbnZpcm9ubWVudEJsZW5kTW9kZS5p
ZGwgKi8sCisJCQkJRTFFRThBRjUyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSRXllLmggKi8sCisJCQkJ
RTFFRThCMDMyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSRXllLmlkbCAqLywKKwkJCQlFMUVFOEFFOTI0
MTJCMTcwMDBFNzk0RDYgLyogWFJGcmFtZVJlcXVlc3RDYWxsYmFjay5oICovLAorCQkJCUUxRUU4
QUZCMjQxMkIxNzAwMEU3OTRENiAvKiBYUkZyYW1lUmVxdWVzdENhbGxiYWNrLmlkbCAqLywKKwkJ
CQlFMUVFOEFFRTI0MTJCMTcwMDBFNzk0RDYgLyogWFJIYW5kZWRuZXNzLmggKi8sCisJCQkJRTFF
RThCMDcyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSSGFuZGVkbmVzcy5pZGwgKi8sCisJCQkJRTFFRThB
Q0MyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VFdmVudC5jcHAgKi8sCisJCQkJRTFF
RThCMDkyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSSW5wdXRTb3VyY2VFdmVudC5oICovLAorCQkJCUUx
RUU4QjAwMjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlRXZlbnQuaWRsICovLAorCQkJ
CUUxRUU4QjE1MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50LmNw
cCAqLywKKwkJCQlFMUVFOEFGOTI0MTJCMTcwMDBFNzk0RDYgLyogWFJJbnB1dFNvdXJjZXNDaGFu
Z2VFdmVudC5oICovLAorCQkJCUUxRUU4QUU0MjQxMkIxNzAwMEU3OTRENiAvKiBYUklucHV0U291
cmNlc0NoYW5nZUV2ZW50LmlkbCAqLywKKwkJCQlFMTJBOUY0ODI0OEE5OUUwMDAzRjA2QzggLyog
WFJJbnRlcmFjdGlvbk1vZGUuaCAqLywKKwkJCQlFMTJBOUY0NjI0OEE5OURGMDAzRjA2QzggLyog
WFJJbnRlcmFjdGlvbk1vZGUuaWRsICovLAorCQkJCUUxRUU4QUYzMjQxMkIxNzAwMEU3OTRENiAv
KiBYUlJlZmVyZW5jZVNwYWNlRXZlbnQuY3BwICovLAorCQkJCUUxRUU4QURCMjQxMkIxNzAwMEU3
OTRENiAvKiBYUlJlZmVyZW5jZVNwYWNlRXZlbnQuaCAqLywKKwkJCQlFMUVFOEFEMDI0MTJCMTcw
MDBFNzk0RDYgLyogWFJSZWZlcmVuY2VTcGFjZUV2ZW50LmlkbCAqLywKKwkJCQlFMUVFOEFDOTI0
MTJCMTcwMDBFNzk0RDYgLyogWFJSZWZlcmVuY2VTcGFjZVR5cGUuaCAqLywKKwkJCQlFMUVFOEFG
QTI0MTJCMTcwMDBFNzk0RDYgLyogWFJSZWZlcmVuY2VTcGFjZVR5cGUuaWRsICovLAorCQkJCUUx
RUU4QUNCMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJlbmRlclN0YXRlSW5pdC5oICovLAorCQkJCUUx
RUU4QUVDMjQxMkIxNzAwMEU3OTRENiAvKiBYUlJlbmRlclN0YXRlSW5pdC5pZGwgKi8sCisJCQkJ
RTFFRThBREMyNDEyQjE3MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbkV2ZW50LmNwcCAqLywKKwkJCQlF
MUVFOEFFNzI0MTJCMTcwMDBFNzk0RDYgLyogWFJTZXNzaW9uRXZlbnQuaCAqLywKKwkJCQlFMUVF
OEFGRDI0MTJCMTcwMDBFNzk0RDYgLyogWFJTZXNzaW9uRXZlbnQuaWRsICovLAorCQkJCUUxRUU4
QjEzMjQxMkIxNzAwMEU3OTRENiAvKiBYUlNlc3Npb25Jbml0LmggKi8sCisJCQkJRTFFRThBRDcy
NDEyQjE3MDAwRTc5NEQ2IC8qIFhSU2Vzc2lvbkluaXQuaWRsICovLAorCQkJCUUxRUU4QUZFMjQx
MkIxNzAwMEU3OTRENiAvKiBYUlNlc3Npb25Nb2RlLmggKi8sCisJCQkJRTFFRThBQzgyNDEyQjE2
RjAwRTc5NEQ2IC8qIFhSU2Vzc2lvbk1vZGUuaWRsICovLAorCQkJCUUxRUU4QUVBMjQxMkIxNzAw
MEU3OTRENiAvKiBYUlRhcmdldFJheU1vZGUuaCAqLywKKwkJCQlFMUVFOEFGRjI0MTJCMTcwMDBF
Nzk0RDYgLyogWFJUYXJnZXRSYXlNb2RlLmlkbCAqLywKKwkJCQlFMUVFOEFENjI0MTJCMTcwMDBF
Nzk0RDYgLyogWFJWaXNpYmlsaXR5U3RhdGUuaCAqLywKKwkJCQlFMUVFOEFEOTI0MTJCMTcwMDBF
Nzk0RDYgLyogWFJWaXNpYmlsaXR5U3RhdGUuaWRsICovLAorCQkJCUUxRUU4QjA4MjQxMkIxNzAw
MEU3OTRENiAvKiBYUldlYkdMTGF5ZXJJbml0LmggKi8sCisJCQkJRTFFRThCMTAyNDEyQjE3MDAw
RTc5NEQ2IC8qIFhSV2ViR0xMYXllckluaXQuaWRsICovLAorCQkJKTsKKwkJCXBhdGggPSB3ZWJ4
cjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUUxRUU4QjZCMjQxMkIyQTcw
MEU3OTRENiAvKiB4ciAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAo
CisJCQkJNTI3M0NDNzIyNTYxMDM5QjAwODUwMDA3IC8qIGNvY29hICovLAorCQkJCUUxRUU4QjZE
MjQxMkIyQTcwMEU3OTRENiAvKiBvcGVueHIgKi8sCisJCQkJRTFFRThCNkYyNDEyQjJBNzAwRTc5
NEQ2IC8qIFBsYXRmb3JtWFIuaCAqLywKKwkJCSk7CisJCQlwYXRoID0geHI7CisJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOworCQl9OworCQlFMUVFOEI2RDI0MTJCMkE3MDBFNzk0RDYgLyogb3Bl
bnhyICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkxMThC
MDY4NjI1RTQxRTUxMDA3MEJFNEIgLyogT3BlblhSRXh0ZW5zaW9ucy5jcHAgKi8sCisJCQkJMTE4
QjA2ODgyNUU0MUU1MjAwNzBCRTRCIC8qIE9wZW5YUkV4dGVuc2lvbnMuaCAqLywKKwkJCQkxMTgw
RjgwMjI2MzFDRDkzMDAwMEU2MjQgLyogT3BlblhSSW5wdXQuY3BwICovLAorCQkJCTExODBGODAx
MjYzMUNEOTMwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dC5oICovLAorCQkJCTExODBGODAwMjYzMUNE
OTIwMDAwRTYyNCAvKiBPcGVuWFJJbnB1dE1hcHBpbmdzLmggKi8sCisJCQkJMTE4MEY3RkUyNjMx
Q0Q5MjAwMDBFNjI0IC8qIE9wZW5YUklucHV0U291cmNlLmNwcCAqLywKKwkJCQkxMTgwRjgwMzI2
MzFDRDk0MDAwMEU2MjQgLyogT3BlblhSSW5wdXRTb3VyY2UuaCAqLywKKwkJCQkxMThCMDY4OTI1
RTQxRTUyMDA3MEJFNEIgLyogT3BlblhSSW5zdGFuY2UuY3BwICovLAorCQkJCTExOEIwNjhBMjVF
NDFFNTMwMDcwQkU0QiAvKiBPcGVuWFJVdGlscy5oICovLAorCQkJCUUxQzFBMzlCMjQ4MDA4MDYw
MEUwQUY2NiAvKiBQbGF0Zm9ybVhST3BlblhSLmNwcCAqLywKKwkJCQlFMUMxQTM5QzI0ODAwODA3
MDBFMEFGNjYgLyogUGxhdGZvcm1YUk9wZW5YUi5oICovLAorCQkJKTsKKwkJCXBhdGggPSBvcGVu
eHI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlFMUYwNDI0MzA5ODM5Mzg5
MDA2Njk0RUEgLyogeG1sICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9
ICgKKwkJCQkwMEI5MzE4MDEzQkE4NjdGMDAzNUE5NDggLyogcGFyc2VyICovLAorCQkJCTg0QzBC
NjczMjREQkFDQTIwMDU4REY5NiAvKiBDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovLAorCQkJ
CTg0NzQ1QjhFMjRBM0YwQTAwMDI5QThCNSAvKiBDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaCAqLywK
KwkJCQk4NDc0NUI4RDI0QTNGMDlGMDAyOUE4QjUgLyogQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmlk
bCAqLywKKwkJCQkxQUNFNTNFMTBBOEQxOEU3MDAyMjk0N0QgLyogRE9NUGFyc2VyLmNwcCAqLywK
KwkJCQkxQUNFNTNFMjBBOEQxOEU3MDAyMjk0N0QgLyogRE9NUGFyc2VyLmggKi8sCisJCQkJMUFD
RTUzRTMwQThEMThFNzAwMjI5NDdEIC8qIERPTVBhcnNlci5pZGwgKi8sCisJCQkJRTEwQjlCNkIw
Qjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5jcHAgKi8sCisJCQkJRTEw
QjlCNkEwQjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oICovLAorCQkJ
CTUzOEYxMEEzMUY5MDBCREMwMDUxMDJDRSAvKiBTb2Z0TGlua0xpYnhzbHQuY3BwICovLAorCQkJ
CTUzOEYxMEE0MUY5MDBCREQwMDUxMDJDRSAvKiBTb2Z0TGlua0xpYnhzbHQuaCAqLywKKwkJCQlB
ODMzQzdGNjBBMkNGMUQ4MDBENTc2NjQgLyogeG1sYXR0cnMuaW4gKi8sCisJCQkJNTlDMjgwNDMx
MzhEQzI0MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5jcHAgKi8sCisJCQkJNTlDMjgwNDQxMzhEQzI0
MTAwNzlCN0UyIC8qIFhNTEVycm9ycy5oICovLAorCQkJCUJDNzcyQzQ0MEM0RUIyQzYwMDgzMjg1
RiAvKiBYTUxIdHRwUmVxdWVzdC5jcHAgKi8sCisJCQkJQkM3NzJDNDUwQzRFQjJDNjAwODMyODVG
IC8qIFhNTEh0dHBSZXF1ZXN0LmggKi8sCisJCQkJQkMzNDhCQTcwREI3RjFCODAwNEFCQUI5IC8q
IFhNTEh0dHBSZXF1ZXN0LmlkbCAqLywKKwkJCQk4M0QzNUFFQTFDNzE4N0VEMDBGNzBENUEgLyog
WE1MSHR0cFJlcXVlc3RFdmVudFRhcmdldC5oICovLAorCQkJCTgzRDM1QUVCMUM3MTg3RUQwMEY3
MEQ1QSAvKiBYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0LmlkbCAqLywKKwkJCQlFM0JGMTlFMTIy
QUYyRjU1MDA5Qzk5MjYgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmNwcCAqLywKKwkJ
CQlGOUYwRUQ3NzBEQjUwQ0EyMDBEMTZEQjkgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50
LmggKi8sCisJCQkJRjlGMEVENzgwREI1MENBMjAwRDE2REI5IC8qIFhNTEh0dHBSZXF1ZXN0UHJv
Z3Jlc3NFdmVudC5pZGwgKi8sCisJCQkJQTEzNkEwMEExMTM0REJEMjAwQ0M4RDUwIC8qIFhNTEh0
dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudFRocm90dGxlLmNwcCAqLywKKwkJCQlBMTM2QTAwQjExMzRE
QkQyMDBDQzhENTAgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50VGhyb3R0bGUuaCAqLywK
KwkJCQlCQ0RGRDQ4RDBFMzA1MjkwMDA5RDEwQUQgLyogWE1MSHR0cFJlcXVlc3RVcGxvYWQuY3Bw
ICovLAorCQkJCUJDREZENDhDMEUzMDUyOTAwMDlEMTBBRCAvKiBYTUxIdHRwUmVxdWVzdFVwbG9h
ZC5oICovLAorCQkJCUJDREZENDkwMEUzMDU2NDQwMDlEMTBBRCAvKiBYTUxIdHRwUmVxdWVzdFVw
bG9hZC5pZGwgKi8sCisJCQkJMUFDRTUzRTQwQThEMThFNzAwMjI5NDdEIC8qIFhNTFNlcmlhbGl6
ZXIuY3BwICovLAorCQkJCTFBQ0U1M0U1MEE4RDE4RTcwMDIyOTQ3RCAvKiBYTUxTZXJpYWxpemVy
LmggKi8sCisJCQkJMUFDRTUzRTYwQThEMThFNzAwMjI5NDdEIC8qIFhNTFNlcmlhbGl6ZXIuaWRs
ICovLAorCQkJCTU5MDVBREJEMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmNwcCAq
LywKKwkJCQk1OTA1QURCRTEzMDJGM0NFMDBGMTE2REYgLyogWE1MVHJlZVZpZXdlci5oICovLAor
CQkJCTU5NThGMUNCMTM0MzkxN0MwMDgwQjMxRiAvKiBYTUxWaWV3ZXIuY3NzICovLAorCQkJCTU5
NThGMUNDMTM0MzkxN0MwMDgwQjMxRiAvKiBYTUxWaWV3ZXIuanMgKi8sCisJCQkJMUFCN0ZDNDcw
QThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXZhbHVhdG9yLmNwcCAqLywKKwkJCQkxQUI3RkM0ODBB
OEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuaCAqLywKKwkJCQkxQUI3RkM0OTBBOEI5
MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuaWRsICovLAorCQkJCTdDM0E4QUJFMjUwOUE0
NjYwMDhDNDc3RiAvKiBYUGF0aEV2YWx1YXRvckJhc2UuaWRsICovLAorCQkJCTFBQjdGQzRBMEE4
QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uY3BwICovLAorCQkJCTFBQjdGQzRCMEE4
QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Npb24uaCAqLywKKwkJCQkxQUI3RkM0QzBBOEI5
MkVDMDBEOUQzN0IgLyogWFBhdGhFeHByZXNzaW9uLmlkbCAqLywKKwkJCQkxQUI3RkM0RDBBOEI5
MkVDMDBEOUQzN0IgLyogWFBhdGhFeHByZXNzaW9uTm9kZS5jcHAgKi8sCisJCQkJMUFCN0ZDNEUw
QThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoRXhwcmVzc2lvbk5vZGUuaCAqLywKKwkJCQkxQUI3RkM0
RjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhGdW5jdGlvbnMuY3BwICovLAorCQkJCTFBQjdGQzUw
MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEZ1bmN0aW9ucy5oICovLAorCQkJCTVDOUVGMTZGMURG
RjcxOTkwMEE0NTJFMyAvKiBYUGF0aEdyYW1tYXIuY3BwICovLAorCQkJCTVDOUVGMTcwMURGRjcx
OTkwMEE0NTJFMyAvKiBYUGF0aEdyYW1tYXIuaCAqLywKKwkJCQkxQUI3RkM1MTBBOEI5MkVDMDBE
OUQzN0IgLyogWFBhdGhHcmFtbWFyLnkgKi8sCisJCQkJRTFFQzI5OUQwQkIwNEM2QjAwRUExODdC
IC8qIFhQYXRoTm9kZVNldC5jcHAgKi8sCisJCQkJRTFFQzI5OUUwQkIwNEM2QjAwRUExODdCIC8q
IFhQYXRoTm9kZVNldC5oICovLAorCQkJCTFBQjdGQzU0MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0
aE5TUmVzb2x2ZXIuY3BwICovLAorCQkJCTFBQjdGQzU1MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0
aE5TUmVzb2x2ZXIuaCAqLywKKwkJCQkxQUI3RkM1NjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhO
U1Jlc29sdmVyLmlkbCAqLywKKwkJCQkxQUI3RkM1NzBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhQ
YXJzZXIuY3BwICovLAorCQkJCTFBQjdGQzU4MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhcnNl
ci5oICovLAorCQkJCTFBQjdGQzU5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhdGguY3BwICov
LAorCQkJCTFBQjdGQzVBMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhdGguaCAqLywKKwkJCQkx
QUI3RkM1QjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhQcmVkaWNhdGUuY3BwICovLAorCQkJCTFB
QjdGQzVDMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFByZWRpY2F0ZS5oICovLAorCQkJCTFBQjdG
QzVEMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFJlc3VsdC5jcHAgKi8sCisJCQkJMUFCN0ZDNUUw
QThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoUmVzdWx0LmggKi8sCisJCQkJMUFCN0ZDNUYwQThCOTJF
QzAwRDlEMzdCIC8qIFhQYXRoUmVzdWx0LmlkbCAqLywKKwkJCQkxQUI3RkM2MDBBOEI5MkVDMDBE
OUQzN0IgLyogWFBhdGhTdGVwLmNwcCAqLywKKwkJCQkxQUI3RkM2MTBBOEI5MkVDMDBEOUQzN0Ig
LyogWFBhdGhTdGVwLmggKi8sCisJCQkJMUFCN0ZDNjIwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRo
VXRpbC5jcHAgKi8sCisJCQkJMUFCN0ZDNjMwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoVXRpbC5o
ICovLAorCQkJCTFBQjdGQzY0MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFZhbHVlLmNwcCAqLywK
KwkJCQkxQUI3RkM2NTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhWYWx1ZS5oICovLAorCQkJCTFB
QjdGQzY2MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFZhcmlhYmxlUmVmZXJlbmNlLmNwcCAqLywK
KwkJCQkxQUI3RkM2NzBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhWYXJpYWJsZVJlZmVyZW5jZS5o
ICovLAorCQkJCTg1MjE3RTAwMEE1RUNENDcwMERCOEQwMCAvKiBYU0xJbXBvcnRSdWxlLmNwcCAq
LywKKwkJCQk4NTIxN0UwMTBBNUVDRDQ3MDBEQjhEMDAgLyogWFNMSW1wb3J0UnVsZS5oICovLAor
CQkJCUJDMDZGMjRBMDZEMThBN0UwMDRBNkZBMyAvKiBYU0xTdHlsZVNoZWV0LmggKi8sCisJCQkJ
QkMwNkYyNDkwNkQxOEE3RTAwNEE2RkEzIC8qIFhTTFN0eWxlU2hlZXRMaWJ4c2x0LmNwcCAqLywK
KwkJCQlFMUYxRTgyRDBDM0MyQkI5MDA2REIzOTEgLyogWFNMVEV4dGVuc2lvbnMuY3BwICovLAor
CQkJCUUxRjFFODJFMEMzQzJCQjkwMDZEQjM5MSAvKiBYU0xURXh0ZW5zaW9ucy5oICovLAorCQkJ
CUJDMDZGMjRCMDZEMThBN0UwMDRBNkZBMyAvKiBYU0xUUHJvY2Vzc29yLmNwcCAqLywKKwkJCQlC
QzA2RjI0QzA2RDE4QTdFMDA0QTZGQTMgLyogWFNMVFByb2Nlc3Nvci5oICovLAorCQkJCUJDRUZF
MURDMERDQTVDRkQwMDczOTIxOSAvKiBYU0xUUHJvY2Vzc29yLmlkbCAqLywKKwkJCQlCQzA2RjI0
RDA2RDE4QTdFMDA0QTZGQTMgLyogWFNMVFByb2Nlc3NvckxpYnhzbHQuY3BwICovLAorCQkJCUUx
QkU1MTJCMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwICovLAorCQkJCUUx
QkU1MTJDMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCAqLywKKwkJCSk7CisJ
CQlwYXRoID0geG1sOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJCXRhYldpZHRoID0g
NDsKKwkJCXVzZXNUYWJzID0gMDsKKwkJfTsKKwkJRTFGRjhGNUIxODA3MzYyQjAwMTMyNjc0IC8q
IGNyeXB0byAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJ
RTE3MkFGN0MxODBGM0IwRDAwRkJBREI5IC8qIGFsZ29yaXRobXMgKi8sCisJCQkJRTE5REEyOUQx
ODE5OTVDRTAwMDg4QkM4IC8qIGtleXMgKi8sCisJCQkJRTE3MkFGNzExODBGMzQzNDAwRkJBREI5
IC8qIG1hYyAqLywKKwkJCQlFMUM2NTcxNDE4MTYwMTVGMDAyNTZDREQgLyogcGFyYW1ldGVycyAq
LywKKwkJCQlFMUZFMTM3MjE4NDAyQTY3MDA4OTJGMTMgLyogQ29tbW9uQ3J5cHRvVXRpbGl0aWVz
LmNwcCAqLywKKwkJCQlFMUZFMTM3MzE4NDAyQTY3MDA4OTJGMTMgLyogQ29tbW9uQ3J5cHRvVXRp
bGl0aWVzLmggKi8sCisJCQkJRTE3MkFGNkIxODBGMjRDNjAwRkJBREI5IC8qIENyeXB0b0FsZ29y
aXRobS5jcHAgKi8sCisJCQkJRTE3MkFGNkMxODBGMjRDNjAwRkJBREI5IC8qIENyeXB0b0FsZ29y
aXRobS5oICovLAorCQkJCUUxQzY1NzI0MTgxNkU2OUQwMDI1NkNERCAvKiBDcnlwdG9BbGdvcml0
aG1JZGVudGlmaWVyLmggKi8sCisJCQkJNTczNDg5MzgxREFDNkI2RDAwREMwNjY3IC8qIENyeXB0
b0FsZ29yaXRobVBhcmFtZXRlcnMuaCAqLywKKwkJCQk1NzRBQzc1MzFEQUMzNjdEMDBFOTc0NEMg
LyogQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5pZGwgKi8sCisJCQkJRTFGRjhGNkExODBEQjVC
RTAwMTMyNjc0IC8qIENyeXB0b0FsZ29yaXRobVJlZ2lzdHJ5LmNwcCAqLywKKwkJCQlFMUZGOEY2
QjE4MERCNUJFMDAxMzI2NzQgLyogQ3J5cHRvQWxnb3JpdGhtUmVnaXN0cnkuaCAqLywKKwkJCQlF
MTU3QThFMjE4MTczQTNBMDA5RjgyMUQgLyogQ3J5cHRvS2V5LmNwcCAqLywKKwkJCQlFMTU3QThF
MzE4MTczQTNBMDA5RjgyMUQgLyogQ3J5cHRvS2V5LmggKi8sCisJCQkJRTE1N0E4REMxODE3MkMy
QzAwOUY4MjFEIC8qIENyeXB0b0tleS5pZGwgKi8sCisJCQkJN0M5QUNBQzkxRjQwQjk2QTAwRjNB
QTA5IC8qIENyeXB0b0tleUZvcm1hdC5oICovLAorCQkJCUUxRjgwQjg2MTgzMTcyNTIwMDc4ODVD
MyAvKiBDcnlwdG9LZXlQYWlyLmggKi8sCisJCQkJRTFGODBCODQxODMxNzI0NzAwNzg4NUMzIC8q
IENyeXB0b0tleVBhaXIuaWRsICovLAorCQkJCUUxOTcyNzE1MTgyMDU0OUUwMDU5MkQ1MSAvKiBD
cnlwdG9LZXlUeXBlLmggKi8sCisJCQkJRTE3MkFGNkYxODBGMjg5NTAwRkJBREI5IC8qIENyeXB0
b0tleVVzYWdlLmggKi8sCisJCQkJNTdEMDAxOEIxREQzREJBNDAwRUQxOUQ5IC8qIENyeXB0b0tl
eVVzYWdlLmlkbCAqLywKKwkJCQk1N0UyMzM2NDFEQzdEQjFGMDBGMjhEMDEgLyogSnNvbldlYktl
eS5oICovLAorCQkJCTU3RTIzMzU3MURDN0QyNDgwMEYyOEQwMSAvKiBKc29uV2ViS2V5LmlkbCAq
LywKKwkJCQk1N0UyMzM2MjFEQzdEQTI0MDBGMjhEMDEgLyogUnNhT3RoZXJQcmltZXNJbmZvLmgg
Ki8sCisJCQkJNTdFMjMzNTkxREM3RDM3MjAwRjI4RDAxIC8qIFJzYU90aGVyUHJpbWVzSW5mby5p
ZGwgKi8sCisJCQkJRTE4REYzMzQxOEFBRjEyQzAwNzczRTU5IC8qIFNlcmlhbGl6ZWRDcnlwdG9L
ZXlXcmFwLmggKi8sCisJCQkJNTc3OEJEODMxREE0ODE3QjAwOUUzMDA5IC8qIFN1YnRsZUNyeXB0
by5jcHAgKi8sCisJCQkJNTc3OEJEODExREE0ODAyQzAwOUUzMDA5IC8qIFN1YnRsZUNyeXB0by5o
ICovLAorCQkJCTU3NzhCRDgwMURBNDczM0UwMDlFMzAwOSAvKiBTdWJ0bGVDcnlwdG8uaWRsICov
LAorCQkJKTsKKwkJCXBhdGggPSBjcnlwdG87CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwor
CQl9OworCQlFMUZGOEY2MTE4MDc0NUM2MDAxMzI2NzQgLyogQ3J5cHRvICovID0geworCQkJaXNh
ID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk1NzA0NDA1QjFFNTM5Mzc5MDAzNTY2
MDEgLyogSlNBZXNDYmNDZmJQYXJhbXMuY3BwICovLAorCQkJCTU3MDQ0MDU5MUU1MzkzNjIwMDM1
NjYwMSAvKiBKU0Flc0NiY0NmYlBhcmFtcy5oICovLAorCQkJCTU3RTFFNUFBMUU4REQwOUIwMEVF
MzdDOSAvKiBKU0Flc0N0clBhcmFtcy5jcHAgKi8sCisJCQkJNTdFMUU1QUIxRThERDA5QjAwRUUz
N0M5IC8qIEpTQWVzQ3RyUGFyYW1zLmggKi8sCisJCQkJNTdCNUY4MEExRTVEMjJEQTAwRjM0Rjkw
IC8qIEpTQWVzR2NtUGFyYW1zLmNwcCAqLywKKwkJCQk1N0I1RjgwQjFFNUQyMkRBMDBGMzRGOTAg
LyogSlNBZXNHY21QYXJhbXMuaCAqLywKKwkJCQk1NzY4MTQ0MjFFNzBDQjEwMDBFNzc3NTQgLyog
SlNBZXNLZXlQYXJhbXMuY3BwICovLAorCQkJCTU3NjgxNDQzMUU3MENCMTAwMEU3Nzc1NCAvKiBK
U0Flc0tleVBhcmFtcy5oICovLAorCQkJCTdDOUFDQUI2MUYzQ0RDNDcwMEYzQUEwOSAvKiBKU0Ny
eXB0b0Flc0tleUFsZ29yaXRobS5jcHAgKi8sCisJCQkJN0M5QUNBQUExRjNDREI2MzAwRjNBQTA5
IC8qIEpTQ3J5cHRvQWVzS2V5QWxnb3JpdGhtLmggKi8sCisJCQkJNTczOUUxMzAxREFDN0ZEMTAw
RTE0MzgzIC8qIEpTQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5jcHAgKi8sCisJCQkJNTczOUUx
MkUxREFDN0Y3ODAwRTE0MzgzIC8qIEpTQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5oICovLAor
CQkJCTdDOUFDQUFEMUYzQ0RCOUUwMEYzQUEwOSAvKiBKU0NyeXB0b0VjS2V5QWxnb3JpdGhtLmNw
cCAqLywKKwkJCQk3QzlBQ0FBQzFGM0NEQjlEMDBGM0FBMDkgLyogSlNDcnlwdG9FY0tleUFsZ29y
aXRobS5oICovLAorCQkJCTdDOUFDQUFFMUYzQ0RCOUYwMEYzQUEwOSAvKiBKU0NyeXB0b0htYWNL
ZXlBbGdvcml0aG0uY3BwICovLAorCQkJCTdDOUFDQUFGMUYzQ0RCOUYwMEYzQUEwOSAvKiBKU0Ny
eXB0b0htYWNLZXlBbGdvcml0aG0uaCAqLywKKwkJCQlFMTU3QThERTE4MTczMzFDMDA5RjgyMUQg
LyogSlNDcnlwdG9LZXkuY3BwICovLAorCQkJCUUxNTdBOERGMTgxNzMzMUMwMDlGODIxRCAvKiBK
U0NyeXB0b0tleS5oICovLAorCQkJCTdDOUFDQUIwMUYzQ0RCQTAwMEYzQUEwOSAvKiBKU0NyeXB0
b0tleUFsZ29yaXRobS5jcHAgKi8sCisJCQkJN0M5QUNBQjExRjNDREJBMTAwRjNBQTA5IC8qIEpT
Q3J5cHRvS2V5QWxnb3JpdGhtLmggKi8sCisJCQkJRTFGODBCOEIxODMxNzJCNTAwNzg4NUMzIC8q
IEpTQ3J5cHRvS2V5UGFpci5jcHAgKi8sCisJCQkJRTFGODBCOEMxODMxNzJCNTAwNzg4NUMzIC8q
IEpTQ3J5cHRvS2V5UGFpci5oICovLAorCQkJCTU3RDAwMThFMURENTQxNTMwMEVEMTlEOSAvKiBK
U0NyeXB0b0tleVVzYWdlLmNwcCAqLywKKwkJCQk1N0QwMDE4QzFERDU0MTMyMDBFRDE5RDkgLyog
SlNDcnlwdG9LZXlVc2FnZS5oICovLAorCQkJCTdDOUFDQUI0MUYzQ0RDMDEwMEYzQUEwOSAvKiBK
U0NyeXB0b1JzYUhhc2hlZEtleUFsZ29yaXRobS5jcHAgKi8sCisJCQkJN0M5QUNBQjUxRjNDREMw
MjAwRjNBQTA5IC8qIEpTQ3J5cHRvUnNhSGFzaGVkS2V5QWxnb3JpdGhtLmggKi8sCisJCQkJN0M5
QUNBQjIxRjNDREMwMDAwRjNBQTA5IC8qIEpTQ3J5cHRvUnNhS2V5QWxnb3JpdGhtLmNwcCAqLywK
KwkJCQk3QzlBQ0FCMzFGM0NEQzAxMDBGM0FBMDkgLyogSlNDcnlwdG9Sc2FLZXlBbGdvcml0aG0u
aCAqLywKKwkJCQk1NzY4MTQzRDFFNzA5QzM2MDBFNzc3NTQgLyogSlNFY2RoS2V5RGVyaXZlUGFy
YW1zLmNwcCAqLywKKwkJCQk1NzY4MTQzRTFFNzA5QzM2MDBFNzc3NTQgLyogSlNFY2RoS2V5RGVy
aXZlUGFyYW1zLmggKi8sCisJCQkJNTdFRUFBNTIxRUEwMDFCMTAwNzAxMTI0IC8qIEpTRWNkc2FQ
YXJhbXMuY3BwICovLAorCQkJCTU3RUVBQTUzMUVBMDAxQjEwMDcwMTEyNCAvKiBKU0VjZHNhUGFy
YW1zLmggKi8sCisJCQkJNTc1MEE5N0YxRTZBMTUwODAwNzA1QzRBIC8qIEpTRWNLZXlQYXJhbXMu
Y3BwICovLAorCQkJCTU3NTBBOTgwMUU2QTE1MDgwMDcwNUM0QSAvKiBKU0VjS2V5UGFyYW1zLmgg
Ki8sCisJCQkJNTc5NTdDQjQxRTk3MkM3ODAwODA3MkFCIC8qIEpTSGtkZlBhcmFtcy5jcHAgKi8s
CisJCQkJNTc5NTdDQjUxRTk3MkM3ODAwODA3MkFCIC8qIEpTSGtkZlBhcmFtcy5oICovLAorCQkJ
CTU3RTIzMzY4MURDQUIyNDMwMEYyOEQwMSAvKiBKU0htYWNLZXlQYXJhbXMuY3BwICovLAorCQkJ
CTU3RTIzMzY2MURDQUIyMUMwMEYyOEQwMSAvKiBKU0htYWNLZXlQYXJhbXMuaCAqLywKKwkJCQk1
N0UyMzM1RTFEQzdENjdCMDBGMjhEMDEgLyogSlNKc29uV2ViS2V5LmNwcCAqLywKKwkJCQk1N0Uy
MzM1QTFEQzdENUU1MDBGMjhEMDEgLyogSlNKc29uV2ViS2V5LmggKi8sCisJCQkJNTdFNjU3RUQx
RTcxNjY1NDAwRjk0MUNBIC8qIEpTUGJrZGYyUGFyYW1zLmNwcCAqLywKKwkJCQk1N0U2NTdFRTFF
NzE2NjU0MDBGOTQxQ0EgLyogSlNQYmtkZjJQYXJhbXMuaCAqLywKKwkJCQk1N0UyMzM3MjFEQ0Q0
NkI2MDBGMjhEMDEgLyogSlNSc2FIYXNoZWRJbXBvcnRQYXJhbXMuY3BwICovLAorCQkJCTU3RTIz
MzcwMURDRDQ2OEYwMEYyOEQwMSAvKiBKU1JzYUhhc2hlZEltcG9ydFBhcmFtcy5oICovLAorCQkJ
CTU3NjhFNDM1MURCNzUyNzMwMEQwQTRGNyAvKiBKU1JzYUhhc2hlZEtleUdlblBhcmFtcy5jcHAg
Ki8sCisJCQkJNTc2OEU0MzMxREI3NTI0NTAwRDBBNEY3IC8qIEpTUnNhSGFzaGVkS2V5R2VuUGFy
YW1zLmggKi8sCisJCQkJNTdGRURENDIxREI2RDc2MDAwRUI5NkY1IC8qIEpTUnNhS2V5R2VuUGFy
YW1zLmNwcCAqLywKKwkJCQk1N0ZFREQ0MDFEQjZENzNBMDBFQjk2RjUgLyogSlNSc2FLZXlHZW5Q
YXJhbXMuaCAqLywKKwkJCQk1NzA2QTY5OTFEREU1RTg1MDBBMDNCMTQgLyogSlNSc2FPYWVwUGFy
YW1zLmNwcCAqLywKKwkJCQk1NzA2QTY5NzFEREU1RTQ2MDBBMDNCMTQgLyogSlNSc2FPYWVwUGFy
YW1zLmggKi8sCisJCQkJNTdFMjMzNjAxREM3RDZBQTAwRjI4RDAxIC8qIEpTUnNhT3RoZXJQcmlt
ZXNJbmZvLmNwcCAqLywKKwkJCQk1N0UyMzM1QzFEQzdENjA4MDBGMjhEMDEgLyogSlNSc2FPdGhl
clByaW1lc0luZm8uaCAqLywKKwkJCQk1NzU0NzE5QTFFQ0U1RDJBMDBERDYzQjIgLyogSlNSc2FQ
c3NQYXJhbXMuY3BwICovLAorCQkJCTU3NTQ3MTk5MUVDRTVEMkEwMERENjNCMiAvKiBKU1JzYVBz
c1BhcmFtcy5oICovLAorCQkJCTU3MUYyMThBMURBNTdDN0EwMDVDOUVGRCAvKiBKU1N1YnRsZUNy
eXB0by5jcHAgKi8sCisJCQkJNTcxRjIxODgxREE1N0M1NDAwNUM5RUZEIC8qIEpTU3VidGxlQ3J5
cHRvLmggKi8sCisJCQkpOworCQkJbmFtZSA9IENyeXB0bzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7CisJCX07CisJCUUzQUZBOTYzMURBNkU4QUYwMDI4NjFCRCAvKiBkb21qaXQgKi8gPSB7
CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUUzQzk5QTA4MURDM0Q0
MTcwMDc5NEFEMyAvKiBET01KSVRDaGVja0RPTS5oICovLAorCQkJCUUzOThGQzIzMURDMzJBMUIw
MDNDNDY4NCAvKiBET01KSVRIZWxwZXJzLmNwcCAqLywKKwkJCQlFMzE1MEVBNTFEQTcyMThEMDAx
OTQwMTIgLyogRE9NSklUSGVscGVycy5oICovLAorCQkJCUUzQTc3NjY1MURDODVEMjIwMEI2OTBE
OCAvKiBET01KSVRJRExDb252ZXJ0LmggKi8sCisJCQkJRTNBNzc2NjYxREM4NUQyMjAwQjY5MEQ4
IC8qIERPTUpJVElETFR5cGUuaCAqLywKKwkJCQlFMzU4MDJCNTFEQzg0MzU4MDBBOTc3M0MgLyog
RE9NSklUSURMVHlwZUZpbHRlci5oICovLAorCQkJCUUzQjdDMDYyMURDMzQxNUEwMDFGQjBCOCAv
KiBKU0RvY3VtZW50RE9NSklULmNwcCAqLywKKwkJCQlFMzk3NUI3NjFFQzlBRjM5MDA4NDc3MTcg
LyogSlNEb2N1bWVudEZyYWdtZW50RE9NSklULmNwcCAqLywKKwkJCQlFMzk3NUI3NzFFQzlBRjM5
MDA4NDc3MTcgLyogSlNFbGVtZW50RE9NSklULmNwcCAqLywKKwkJCQlFMzk3NUI3ODFFQzlBRjM5
MDA4NDc3MTcgLyogSlNFdmVudERPTUpJVC5jcHAgKi8sCisJCQkJRTNBRkE5NjQxREE2RTkwODAw
Mjg2MUJEIC8qIEpTTm9kZURPTUpJVC5jcHAgKi8sCisJCQkpOworCQkJcGF0aCA9IGRvbWppdDsK
KwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU0NkU5Nzg2MERBQUQ2MUIwMDcx
RTg5NCAvKiBhbmltYXRpb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVu
ID0gKAorCQkJCUU0QUZEMDA1MERBRjMzNTQwMEY1RjU1QyAvKiBTTUlMVGltZS5jcHAgKi8sCisJ
CQkJRTRBRkQwMDYwREFGMzM1NDAwRjVGNTVDIC8qIFNNSUxUaW1lLmggKi8sCisJCQkJRTRBRkQw
MDcwREFGMzM1NDAwRjVGNTVDIC8qIFNNSUxUaW1lQ29udGFpbmVyLmNwcCAqLywKKwkJCQlFNEFG
RDAwODBEQUYzMzU0MDBGNUY1NUMgLyogU01JTFRpbWVDb250YWluZXIuaCAqLywKKwkJCQlFNEFG
RDAwOTBEQUYzMzU0MDBGNUY1NUMgLyogU1ZHU01JTEVsZW1lbnQuY3BwICovLAorCQkJCUU0QUZE
MDBBMERBRjMzNTQwMEY1RjU1QyAvKiBTVkdTTUlMRWxlbWVudC5oICovLAorCQkJKTsKKwkJCXBh
dGggPSBhbmltYXRpb247CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlFNDc2
M0Q0QTE3QjI3MDQ5MDBEMzUyMDYgLyogc3R5bGUgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsK
KwkJCWNoaWxkcmVuID0gKAorCQkJCUU0QTgxNEQ3MUM3MEUxMDUwMEJGODVBQyAvKiBBdHRyaWJ1
dGVDaGFuZ2VJbnZhbGlkYXRpb24uY3BwICovLAorCQkJCUU0QTgxNEQ5MUM3MEUxMEQwMEJGODVB
QyAvKiBBdHRyaWJ1dGVDaGFuZ2VJbnZhbGlkYXRpb24uaCAqLywKKwkJCQlFNEFCQUJGNDIzNjhD
NkVGMDBGQTQzNDUgLyogQ2FzY2FkZUxldmVsLmggKi8sCisJCQkJRTRBODE0RDUxQzZERUU4RDAw
QkY4NUFDIC8qIENsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmNwcCAqLywKKwkJCQlFNEE4MTREMzFD
NkRFQzQwMDBCRjg1QUMgLyogQ2xhc3NDaGFuZ2VJbnZhbGlkYXRpb24uaCAqLywKKwkJCQlGQkRC
NjE5QTE2RDYwMzJBMDBCQjMzOTQgLyogRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwICovLAorCQkJ
CUZCREI2MTlFMTZENjAzNjUwMEJCMzM5NCAvKiBFbGVtZW50UnVsZUNvbGxlY3Rvci5oICovLAor
CQkJCUU0QTgxNEREMUM3MzM4RDEwMEJGODVBQyAvKiBJZENoYW5nZUludmFsaWRhdGlvbi5jcHAg
Ki8sCisJCQkJRTRBODE0REYxQzczMzhFQjAwQkY4NUFDIC8qIElkQ2hhbmdlSW52YWxpZGF0aW9u
LmggKi8sCisJCQkJMUMwMTA2RkUxOTI1OTRERjAwOEE0MjAxIC8qIElubGluZVRleHRCb3hTdHls
ZS5jcHAgKi8sCisJCQkJMUMwMTA2RkYxOTI1OTRERjAwOEE0MjAxIC8qIElubGluZVRleHRCb3hT
dHlsZS5oICovLAorCQkJCTRBOUNDODFFMTZCRjlCQjQwMEVDNjQ1QSAvKiBJbnNwZWN0b3JDU1NP
TVdyYXBwZXJzLmNwcCAqLywKKwkJCQk0QTlDQzgxRjE2QkY5QkI0MDBFQzY0NUEgLyogSW5zcGVj
dG9yQ1NTT01XcmFwcGVycy5oICovLAorCQkJCUU0NUJBNkFCMjM3NDkyN0IwMDRERkMwNyAvKiBN
YXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuY3BwICovLAorCQkJCUU0NUJBNkE4MjM3NDkyNkIwMDRE
RkMwNyAvKiBNYXRjaGVkRGVjbGFyYXRpb25zQ2FjaGUuaCAqLywKKwkJCQlGQkRCNjE5QzE2RDYw
MzQ2MDBCQjMzOTQgLyogUGFnZVJ1bGVDb2xsZWN0b3IuY3BwICovLAorCQkJCUZCREI2MUEwMTZE
NjAzN0UwMEJCMzM5NCAvKiBQYWdlUnVsZUNvbGxlY3Rvci5oICovLAorCQkJCUU0QUJBQkU1MjM2
MUEzNDIwMEZBNDM0NSAvKiBQcm9wZXJ0eUNhc2NhZGUuY3BwICovLAorCQkJCUU0QUJBQkUyMjM2
MUEzMjkwMEZBNDM0NSAvKiBQcm9wZXJ0eUNhc2NhZGUuaCAqLywKKwkJCQlFNDVBNkM3MzI0MTdC
QTRDMDA2RTRDRDUgLyogUHNldWRvQ2xhc3NDaGFuZ2VJbnZhbGlkYXRpb24uY3BwICovLAorCQkJ
CUU0NUE2Qzc2MjQxN0JBNTkwMDZFNENENSAvKiBQc2V1ZG9DbGFzc0NoYW5nZUludmFsaWRhdGlv
bi5oICovLAorCQkJCUU0ODYzQ0ZBMjM4NDJFODcwMDk3MjE1OCAvKiBSdWxlRGF0YS5jcHAgKi8s
CisJCQkJRTQ4NjNDRkQyMzg0MkU5RTAwOTcyMTU4IC8qIFJ1bGVEYXRhLmggKi8sCisJCQkJQTc5
QkFEOUQxNjFFN0YzRjAwQzJFNjUyIC8qIFJ1bGVGZWF0dXJlLmNwcCAqLywKKwkJCQlBNzlCQUQ5
RTE2MUU3RjNGMDBDMkU2NTIgLyogUnVsZUZlYXR1cmUuaCAqLywKKwkJCQlBNzlCQUQ5RjE2MUU3
RjNGMDBDMkU2NTIgLyogUnVsZVNldC5jcHAgKi8sCisJCQkJQTc5QkFEQTAxNjFFN0YzRjAwQzJF
NjUyIC8qIFJ1bGVTZXQuaCAqLywKKwkJCQk3MTczREVCRDI2MTRERjA0MDA5N0RGMzIgLyogU3R5
bGVhYmxlLmNwcCAqLywKKwkJCQk3MTM5MjJCQzI1MThBQjcwMDA1REIzQzIgLyogU3R5bGVhYmxl
LmggKi8sCisJCQkJRTQ1QkE2QjIyMzc2MjI3RTAwNERGQzA3IC8qIFN0eWxlQWRqdXN0ZXIuY3Bw
ICovLAorCQkJCUU0NUJBNkI1MjM3NjIyOUYwMDRERkMwNyAvKiBTdHlsZUFkanVzdGVyLmggKi8s
CisJCQkJRTRBQkFDMDcyMzZCMDE4MTAwRkE0MzQ1IC8qIFN0eWxlQnVpbGRlci5jcHAgKi8sCisJ
CQkJRTRBQkFDMDUyMzZCMDE2QzAwRkE0MzQ1IC8qIFN0eWxlQnVpbGRlci5oICovLAorCQkJCTgz
Qjk2ODc5MTlGOEFCODMwMDRFRjdBRiAvKiBTdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCAqLywKKwkJ
CQk4MzVEMzYzNjE5RkY2MTkzMDA0QzkzQUIgLyogU3R5bGVCdWlsZGVyQ3VzdG9tLmggKi8sCisJ
CQkJRTRBQkFDMDIyMzZBRTk1ODAwRkE0MzQ1IC8qIFN0eWxlQnVpbGRlckdlbmVyYXRlZC5oICov
LAorCQkJCUU0QUJBQkYwMjM2OEI5MTgwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXJTdGF0ZS5jcHAg
Ki8sCisJCQkJRTRBQkFCRjIyMzY4Qjk1ODAwRkE0MzQ1IC8qIFN0eWxlQnVpbGRlclN0YXRlLmgg
Ki8sCisJCQkJRTQwMUUwQTUxQzNDMENGNzAwRjM0RDEwIC8qIFN0eWxlQ2hhbmdlLmNwcCAqLywK
KwkJCQlFNDAxRTBBMzFDM0MwQjgzMDBGMzREMTAgLyogU3R5bGVDaGFuZ2UuaCAqLywKKwkJCQlF
NEQ1OEVCNjE3QjRFRDg5MDBDQkRDQTggLyogU3R5bGVGb250U2l6ZUZ1bmN0aW9ucy5jcHAgKi8s
CisJCQkJRTRENThFQjcxN0I0RUQ4OTAwQ0JEQ0E4IC8qIFN0eWxlRm9udFNpemVGdW5jdGlvbnMu
aCAqLywKKwkJCQlFNEExODIyRjFGMTNCRTU4MDBGRUY2OTggLyogU3R5bGVJbnZhbGlkYXRpb25G
dW5jdGlvbnMuaCAqLywKKwkJCQlFNDdBOTdDRTE2MzA1OUZDMDA1RENEOTkgLyogU3R5bGVJbnZh
bGlkYXRvci5jcHAgKi8sCisJCQkJRTQ3QTk3Q0YxNjMwNTlGQzAwNURDRDk5IC8qIFN0eWxlSW52
YWxpZGF0b3IuaCAqLywKKwkJCQlFNERBQ0U2QjFEMTJFMTE2MDA3NTk4MEYgLyogU3R5bGVQZW5k
aW5nUmVzb3VyY2VzLmNwcCAqLywKKwkJCQlFNERBQ0U2OTFEMTJFMTBCMDA3NTk4MEYgLyogU3R5
bGVQZW5kaW5nUmVzb3VyY2VzLmggKi8sCisJCQkJRTQ2MTgwMkUxQzhERDREMjAwMjZDMDJDIC8q
IFN0eWxlUmVsYXRpb25zLmNwcCAqLywKKwkJCQlFNDYxODAyQzFDOEREMjkwMDAyNkMwMkMgLyog
U3R5bGVSZWxhdGlvbnMuaCAqLywKKwkJCQlFNEQ1OEVCMjE3QjREQkRDMDBDQkRDQTggLyogU3R5
bGVSZXNvbHZlRm9yRG9jdW1lbnQuY3BwICovLAorCQkJCUU0RDU4RUIzMTdCNERCREMwMENCRENB
OCAvKiBTdHlsZVJlc29sdmVGb3JEb2N1bWVudC5oICovLAorCQkJCUU0RDY4RUIyMTdCNERCREMw
MENCRENBOCAvKiBTdHlsZVJlc29sdmVGb3JGb250UmF3LmNwcCAqLywKKwkJCQlFNEQ2OEVCMzE3
QjREQkRDMDBDQkRDQTggLyogU3R5bGVSZXNvbHZlRm9yRm9udFJhdy5oICovLAorCQkJCUUxMzk4
NjYxMTU0Nzg0NzQwMDFFM0Y2NSAvKiBTdHlsZVJlc29sdmVyLmNwcCAqLywKKwkJCQlFMTM5ODY2
MjE1NDc4NDc0MDAxRTNGNjUgLyogU3R5bGVSZXNvbHZlci5oICovLAorCQkJCUU0NjFENjVDMUJC
MEM3RjAwMENCNTY0NSAvKiBTdHlsZVNjb3BlLmNwcCAqLywKKwkJCQlFNDYxRDY1RTFCQjBDODBE
MDBDQjU2NDUgLyogU3R5bGVTY29wZS5oICovLAorCQkJCUU0RDg2RTZCMjY0MDM5NEMwMEI2MjQy
NSAvKiBTdHlsZVNjb3BlT3JkaW5hbC5oICovLAorCQkJCTRBNEY0OEE3MTZCMERGQzAwMEVEQkIy
OSAvKiBTdHlsZVNjb3BlUnVsZVNldHMuY3BwICovLAorCQkJCTRBNEY0OEE4MTZCMERGQzAwMEVE
QkIyOSAvKiBTdHlsZVNjb3BlUnVsZVNldHMuaCAqLywKKwkJCQlFNDdBM0FDMjFDNUVBQkJFMDBD
Q0JGQTcgLyogU3R5bGVTaGFyaW5nUmVzb2x2ZXIuY3BwICovLAorCQkJCUU0N0EzQUM0MUM1RUFD
NzkwMENDQkZBNyAvKiBTdHlsZVNoYXJpbmdSZXNvbHZlci5oICovLAorCQkJCUU0REVBQTE1MTdB
OTNEQzMwMDBFMDQzMCAvKiBTdHlsZVRyZWVSZXNvbHZlci5jcHAgKi8sCisJCQkJRTRERUFBMTYx
N0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggKi8sCisJCQkJRTQyRTc2RDkx
QzdBRjc2QzAwRTM2MTREIC8qIFN0eWxlVXBkYXRlLmNwcCAqLywKKwkJCQlFNDJFNzZEQjFDN0FG
Nzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCAqLywKKwkJCQlFNDgxMzdCODFEQjNCNTI2MDA1
QzU5QkYgLyogU3R5bGVWYWxpZGl0eS5oICovLAorCQkJCTRBOUNDODE1MTZCQjlBQzYwMEVDNjQ1
QSAvKiBVc2VyQWdlbnRTdHlsZS5jcHAgKi8sCisJCQkJNEE5Q0M4MTYxNkJCOUFDNjAwRUM2NDVB
IC8qIFVzZXJBZ2VudFN0eWxlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHN0eWxlOworCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRTQ3QzM5MUUxRkU2RTA4QzAwQkJCQzZCIC8q
IHVwZGF0aW5nICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQlFNDdDMzkyMDFGRTZFMEQ5MDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXIuY3BwICovLAor
CQkJCUU0N0MzOTJBMUZFNkUwREUwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlci5oICovLAor
CQkJCTExOTM0MEEwMUZFRTAyNDAwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlckJsb2NrLmNw
cCAqLywKKwkJCQkxMTkzNDBBMTFGRUUwMjQwMDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJC
bG9jay5oICovLAorCQkJCTExQzVGMTFGMjAwM0Y2OUYwMDAxQUU2MCAvKiBSZW5kZXJUcmVlQnVp
bGRlckJsb2NrRmxvdy5jcHAgKi8sCisJCQkJMTFDNUYxMUQyMDAzRjY5RTAwMDFBRTYwIC8qIFJl
bmRlclRyZWVCdWlsZGVyQmxvY2tGbG93LmggKi8sCisJCQkJMTEzNDA5RDcyMDNFMDM4MDAwQzY2
OTE1IC8qIFJlbmRlclRyZWVCdWlsZGVyQ29udGludWF0aW9uLmNwcCAqLywKKwkJCQkxMTM0MDlE
ODIwM0UwMzgwMDBDNjY5MTUgLyogUmVuZGVyVHJlZUJ1aWxkZXJDb250aW51YXRpb24uaCAqLywK
KwkJCQlFNDdDMzkyMTFGRTZFMERBMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxkZXJGaXJzdExl
dHRlci5jcHAgKi8sCisJCQkJRTQ3QzM5MjYxRkU2RTBEQzAwQkJCQzZCIC8qIFJlbmRlclRyZWVC
dWlsZGVyRmlyc3RMZXR0ZXIuaCAqLywKKwkJCQkxMTkzNDA5NDFGRUQ3MTU1MDA5MzVGMUUgLyog
UmVuZGVyVHJlZUJ1aWxkZXJGb3JtQ29udHJvbHMuY3BwICovLAorCQkJCTExOTM0MDk1MUZFRDcx
NTUwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlckZvcm1Db250cm9scy5oICovLAorCQkJCTEx
Q0IyNzg2MjAzQkE1NzAwMDRBMURDOSAvKiBSZW5kZXJUcmVlQnVpbGRlckZ1bGxTY3JlZW4uY3Bw
ICovLAorCQkJCTExQ0IyNzg3MjAzQkE1NzAwMDRBMURDOSAvKiBSZW5kZXJUcmVlQnVpbGRlckZ1
bGxTY3JlZW4uaCAqLywKKwkJCQkxMUM1RjExNjIwMDNFNzc1MDAwMUFFNjAgLyogUmVuZGVyVHJl
ZUJ1aWxkZXJJbmxpbmUuY3BwICovLAorCQkJCTExQzVGMTE4MjAwM0U3NzYwMDAxQUU2MCAvKiBS
ZW5kZXJUcmVlQnVpbGRlcklubGluZS5oICovLAorCQkJCUU0N0MzOTJCMUZFNkUwREYwMEJCQkM2
QiAvKiBSZW5kZXJUcmVlQnVpbGRlckxpc3QuY3BwICovLAorCQkJCUU0N0MzOTI4MUZFNkUwREQw
MEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlckxpc3QuaCAqLywKKwkJCQkxMUM1RjEzMjIwMDUy
N0Y4MDAwMUFFNjAgLyogUmVuZGVyVHJlZUJ1aWxkZXJNYXRoTUwuY3BwICovLAorCQkJCTExQzVG
MTM0MjAwNTI3RjkwMDAxQUU2MCAvKiBSZW5kZXJUcmVlQnVpbGRlck1hdGhNTC5oICovLAorCQkJ
CUU0N0MzOTIzMUZFNkUwREEwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlck11bHRpQ29sdW1u
LmNwcCAqLywKKwkJCQlFNDdDMzkyNzFGRTZFMERDMDBCQkJDNkIgLyogUmVuZGVyVHJlZUJ1aWxk
ZXJNdWx0aUNvbHVtbi5oICovLAorCQkJCTExOTM0MDg3MUZFQjM1NUQwMDkzNUYxRSAvKiBSZW5k
ZXJUcmVlQnVpbGRlclJ1YnkuY3BwICovLAorCQkJCTExOTM0MDg4MUZFQjM1NUQwMDkzNUYxRSAv
KiBSZW5kZXJUcmVlQnVpbGRlclJ1YnkuaCAqLywKKwkJCQkxMUM1RjEyQzIwMDQyMzFFMDAwMUFF
NjAgLyogUmVuZGVyVHJlZUJ1aWxkZXJTVkcuY3BwICovLAorCQkJCTExQzVGMTJBMjAwNDIzMUQw
MDAxQUU2MCAvKiBSZW5kZXJUcmVlQnVpbGRlclNWRy5oICovLAorCQkJCTExOTM0MDc2MUZFOEI5
MjMwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlclRhYmxlLmNwcCAqLywKKwkJCQkxMTkzNDA3
NzFGRThCOTIzMDA5MzVGMUUgLyogUmVuZGVyVHJlZUJ1aWxkZXJUYWJsZS5oICovLAorCQkJCUU0
N0MzOTI5MUZFNkUwREUwMEJCQkM2QiAvKiBSZW5kZXJUcmVlUG9zaXRpb24uY3BwICovLAorCQkJ
CUU0N0MzOTI0MUZFNkUwREIwMEJCQkM2QiAvKiBSZW5kZXJUcmVlUG9zaXRpb24uaCAqLywKKwkJ
CQlFNDdDMzkxRjFGRTZFMEQ4MDBCQkJDNkIgLyogUmVuZGVyVHJlZVVwZGF0ZXIuY3BwICovLAor
CQkJCUU0N0MzOTJDMUZFNkUwREYwMEJCQkM2QiAvKiBSZW5kZXJUcmVlVXBkYXRlci5oICovLAor
CQkJCUU0N0MzOTIyMUZFNkUwREEwMEJCQkM2QiAvKiBSZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRl
ZENvbnRlbnQuY3BwICovLAorCQkJCUU0N0MzOTI1MUZFNkUwREIwMEJCQkM2QiAvKiBSZW5kZXJU
cmVlVXBkYXRlckdlbmVyYXRlZENvbnRlbnQuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gdXBkYXRp
bmc7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlFNEZCNEIxRTIzOTUzNTZG
MDAzQzMzNkEgLyogaW50ZWdyYXRpb24gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNo
aWxkcmVuID0gKAorCQkJCUU0MTgwMjU2MjNENDU0QjUwMEZGQjA3MSAvKiBMYXlvdXRJbnRlZ3Jh
dGlvbkJveFRyZWUuY3BwICovLAorCQkJCUU0MTgwMjUzMjNENDU0OUEwMEZGQjA3MSAvKiBMYXlv
dXRJbnRlZ3JhdGlvbkJveFRyZWUuaCAqLywKKwkJCQlFNDAzQjc5RjI1MUIxMThCMDAxOUU4MDAg
LyogTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5jcHAgKi8sCisJCQkJRTQwM0I3QTEyNTFCMTE5
MzAwMTlFODAwIC8qIExheW91dEludGVncmF0aW9uQ292ZXJhZ2UuaCAqLywKKwkJCQlFNEZCNEIz
NTIzOUJFQjEwMDAzQzMzNkEgLyogTGF5b3V0SW50ZWdyYXRpb25JbmxpbmVDb250ZW50LmNwcCAq
LywKKwkJCQlFNDUxQzYzMzIzOTQwNThFMDA5OTMxOTAgLyogTGF5b3V0SW50ZWdyYXRpb25Jbmxp
bmVDb250ZW50LmggKi8sCisJCQkJNkYzRkJBOTYyNTU2RTMwODAwMzUzMEZEIC8qIExheW91dElu
dGVncmF0aW9uSW5saW5lQ29udGVudEJ1aWxkZXIuY3BwICovLAorCQkJCTZGM0ZCQTk3MjU1NkUz
MTIwMDM1MzBGRCAvKiBMYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVyLmggKi8s
CisJCQkJNkZCNDdFNjEyMjc3NDI1QTAwQzdCQ0IwIC8qIExheW91dEludGVncmF0aW9uTGluZS5o
ICovLAorCQkJCUU0RDMzRjQyMjUyQzUwQTgwMDgzN0QwNSAvKiBMYXlvdXRJbnRlZ3JhdGlvbkxp
bmVJdGVyYXRvci5jcHAgKi8sCisJCQkJRTREMzNGM0YyNTJDNEI4MjAwODM3RDA1IC8qIExheW91
dEludGVncmF0aW9uTGluZUl0ZXJhdG9yLmggKi8sCisJCQkJRTREMzNGNDMyNTJDNTBFMjAwODM3
RDA1IC8qIExheW91dEludGVncmF0aW9uTGluZUl0ZXJhdG9yTGVnYWN5UGF0aC5oICovLAorCQkJ
CUU0RDMzRjQ1MjUyQzUwRkIwMDgzN0QwNSAvKiBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRv
ck1vZGVyblBhdGguaCAqLywKKwkJCQlFNEFCQUJERTIzNjA4OTNEMDBGQTQzNDUgLyogTGF5b3V0
SW50ZWdyYXRpb25MaW5lTGF5b3V0LmNwcCAqLywKKwkJCQlFNEFCQUJEQjIzNjA4OEZEMDBGQTQz
NDUgLyogTGF5b3V0SW50ZWdyYXRpb25MaW5lTGF5b3V0LmggKi8sCisJCQkJRTQzMTJBQjUyNEIz
MjY1NjAwNjc4MzQ5IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5jcHAgKi8sCisJCQkJ
RTQzMTJBQjcyNEIzMjY1NjAwNjc4MzQ5IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5o
ICovLAorCQkJCUU0QTY2NEM3MjUyMUI3NzkwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1
bkl0ZXJhdG9yLmNwcCAqLywKKwkJCQlFNEE2NjRDNjI1MjFCNzc4MDA3MDgxREMgLyogTGF5b3V0
SW50ZWdyYXRpb25SdW5JdGVyYXRvci5oICovLAorCQkJCUU0QTY2NEM1MjUyMUI3NzgwMDcwODFE
QyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTGVnYWN5UGF0aC5oICovLAorCQkJCUU0
QTY2NEM0MjUyMUI3NzcwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9k
ZXJuUGF0aC5oICovLAorCQkJKTsKKwkJCXBhdGggPSBpbnRlZ3JhdGlvbjsKKwkJCXNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUU1OTZERDIzMjUxOTAyRDYwMEMyNzVBNyAvKiBjb250
YWN0LXBpY2tlciAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJ
CQkJRTU5NkRENUIyNTFCQjA4MjAwQzI3NUE3IC8qIENvbnRhY3RJbmZvLmggKi8sCisJCQkJRTU5
NkRENUMyNTFCQjA4MjAwQzI3NUE3IC8qIENvbnRhY3RJbmZvLmlkbCAqLywKKwkJCQlFNTk2REQ1
NjI1MUJBQzRBMDBDMjc1QTcgLyogQ29udGFjdFByb3BlcnR5LmggKi8sCisJCQkJRTU5NkRENTcy
NTFCQUM0QTAwQzI3NUE3IC8qIENvbnRhY3RQcm9wZXJ0eS5pZGwgKi8sCisJCQkJRTU5NkREMkUy
NTE5MDNFRjAwQzI3NUE3IC8qIENvbnRhY3RzTWFuYWdlci5jcHAgKi8sCisJCQkJRTU5NkREMkQy
NTE5MDNFRjAwQzI3NUE3IC8qIENvbnRhY3RzTWFuYWdlci5oICovLAorCQkJCUU1OTZERDJGMjUx
OTAzRUYwMEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuaWRsICovLAorCQkJCUU1MDYyMDgzMjU0
MDkxOUIwMEM0MzA5MSAvKiBDb250YWN0c1JlcXVlc3REYXRhLmggKi8sCisJCQkJRTU5NkREMzMy
NTE5MDQxNDAwQzI3NUE3IC8qIENvbnRhY3RzU2VsZWN0T3B0aW9ucy5oICovLAorCQkJCUU1OTZE
RDM0MjUxOTA0MTQwMEMyNzVBNyAvKiBDb250YWN0c1NlbGVjdE9wdGlvbnMuaWRsICovLAorCQkJ
CUU1OTZERDI4MjUxOTAzRDIwMEMyNzVBNyAvKiBOYXZpZ2F0b3IrQ29udGFjdHMuaWRsICovLAor
CQkJCUU1OTZERDI3MjUxOTAzRDIwMEMyNzVBNyAvKiBOYXZpZ2F0b3JDb250YWN0cy5jcHAgKi8s
CisJCQkJRTU5NkREMjYyNTE5MDNEMTAwQzI3NUE3IC8qIE5hdmlnYXRvckNvbnRhY3RzLmggKi8s
CisJCQkpOworCQkJcGF0aCA9ICJjb250YWN0LXBpY2tlciI7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OworCQlFRDUwMURDOTBCMjQ5RjM5MDBBRTE4RDkgLyogbWFjICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk5MzdGRjNENDFBMTAxMkQ2
MDA4RUJBMzEgLyogRGljdGlvbmFyeUxvb2t1cC5oICovLAorCQkJCTQ0Mjk1NkNBMjE4QTZEMzAw
MDgwREI1NCAvKiBEaWN0aW9uYXJ5TG9va3VwTGVnYWN5Lm1tICovLAorCQkJCUVENTAxREM1MEIy
NDlGMjkwMEFFMThEOSAvKiBFZGl0b3JNYWMubW0gKi8sCisJCQkJNEE4Qzk2RUEwQkU2OTAzMjAw
NEVFRkYwIC8qIEZyYW1lU2VsZWN0aW9uTWFjLm1tICovLAorCQkJCUNFN0IyREIxMTU4NkFCQUQw
MDk4QjNGQSAvKiBUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaCAqLywKKwkJCQlDRTdCMkRCMjE1
ODZBQkFEMDA5OEIzRkEgLyogVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLm1tICovLAorCQkJCTI5
RkFGNEI1MTk1QUIwODkwMEE1MjJEQyAvKiBUZXh0VW5kb0luc2VydGlvbk1hcmt1cE1hYy5oICov
LAorCQkJCTI5NDk4NjgxMTk1MzQxOTQwMDcyRDJCRCAvKiBUZXh0VW5kb0luc2VydGlvbk1hcmt1
cE1hYy5tbSAqLywKKwkJCQlDMThDQzBBMzI1ODBFRkIxMDAzRDc1RkIgLyogVW5pdmVyc2FsQWNj
ZXNzWm9vbS5oICovLAorCQkJCUMxOENDMEE2MjU4MEYwRkEwMDNENzVGQiAvKiBVbml2ZXJzYWxB
Y2Nlc3Nab29tLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBtYWM7CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQlGNDQwRTc2OTIzM0Q5MzYyMDA2M0Y5QUIgLyogQ2xpcGJvYXJk
ICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk4MzZEMDMy
RDFEQThBMTMyMDBGRkQ5NkMgLyogSlNDbGlwYm9hcmQuY3BwICovLAorCQkJCTgzNkQwMzJFMURB
OEExMzIwMEZGRDk2QyAvKiBKU0NsaXBib2FyZC5oICovLAorCQkJCTgzNkQwMzJEMURBOEExMzIw
MEZGRDk2RCAvKiBKU0NsaXBib2FyZEl0ZW0uY3BwICovLAorCQkJCTgzNkQwMzJFMURBOEExMzIw
MEZGRDk2RCAvKiBKU0NsaXBib2FyZEl0ZW0uaCAqLywKKwkJCSk7CisJCQluYW1lID0gQ2xpcGJv
YXJkOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRjQ0MEU3NkEyMzNEOTND
ODAwNjNGOUFCIC8qIGFzeW5jLWNsaXBib2FyZCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOwor
CQkJY2hpbGRyZW4gPSAoCisJCQkJRjRDNUYyMTUyNDc5RkNBRjAwRTlCNEY1IC8qIGlvcyAqLywK
KwkJCQlGNEM1RjIxMjI0NzlGQzQwMDBFOUI0RjUgLyogbWFjICovLAorCQkJCUY0NDBFNzZFMjMz
RDk0RDMwMDYzRjlBQiAvKiBDbGlwYm9hcmQuY3BwICovLAorCQkJCUY0NDBFNzcyMjMzRDk0RDUw
MDYzRjlBQiAvKiBDbGlwYm9hcmQuaCAqLywKKwkJCQlGNDQwRTc3NDIzM0Q5NEQ2MDA2M0Y5QUIg
LyogQ2xpcGJvYXJkLmlkbCAqLywKKwkJCQlGNEM1RjIwODI0NzlFOUM4MDBFOUI0RjUgLyogQ2xp
cGJvYXJkSW1hZ2VSZWFkZXIuY3BwICovLAorCQkJCUY0QzVGMjA1MjQ3OUU3RUUwMEU5QjRGNSAv
KiBDbGlwYm9hcmRJbWFnZVJlYWRlci5oICovLAorCQkJCUY0NDBFNzc1MjMzRDk0RDYwMDYzRjlB
QiAvKiBDbGlwYm9hcmRJdGVtLmNwcCAqLywKKwkJCQlGNDQwRTc3MDIzM0Q5NEQ0MDA2M0Y5QUIg
LyogQ2xpcGJvYXJkSXRlbS5oICovLAorCQkJCUY0NDBFNzc3MjMzRDk0RDcwMDYzRjlBQiAvKiBD
bGlwYm9hcmRJdGVtLmlkbCAqLywKKwkJCQlGNDZDNDQ3RDIzNDY1NDU0MDAzOUE3OUQgLyogQ2xp
cGJvYXJkSXRlbUJpbmRpbmdzRGF0YVNvdXJjZS5jcHAgKi8sCisJCQkJRjQ2QzQ0N0MyMzQ2NTQ1
NDAwMzlBNzlEIC8qIENsaXBib2FyZEl0ZW1CaW5kaW5nc0RhdGFTb3VyY2UuaCAqLywKKwkJCQlG
NDZDNDQ3QTIzNDY1MzVFMDAzOUE3OUQgLyogQ2xpcGJvYXJkSXRlbURhdGFTb3VyY2UuaCAqLywK
KwkJCQlGNDZDNDQ4MTIzNDY1NDdBMDAzOUE3OUQgLyogQ2xpcGJvYXJkSXRlbVBhc3RlYm9hcmRE
YXRhU291cmNlLmNwcCAqLywKKwkJCQlGNDZDNDQ4MDIzNDY1NDdBMDAzOUE3OUQgLyogQ2xpcGJv
YXJkSXRlbVBhc3RlYm9hcmREYXRhU291cmNlLmggKi8sCisJCQkJRjQ0MEU3NzEyMzNEOTRENDAw
NjNGOUFCIC8qIE5hdmlnYXRvcitDbGlwYm9hcmQuaWRsICovLAorCQkJCUY0NDBFNzczMjMzRDk0
RDUwMDYzRjlBQiAvKiBOYXZpZ2F0b3JDbGlwYm9hcmQuY3BwICovLAorCQkJCUY0NDBFNzZGMjMz
RDk0RDMwMDYzRjlBQiAvKiBOYXZpZ2F0b3JDbGlwYm9hcmQuaCAqLywKKwkJCSk7CisJCQlwYXRo
ID0gImFzeW5jLWNsaXBib2FyZCI7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9Owor
CQlGNDgzODk3OTFFMUREMjNBMDA3NkI3RUEgLyogRWRpdGluZ0hpc3RvcnkgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUY0ODM4OTgzMUUxRERGMkIwMDc2
QjdFQSAvKiBEdW1wRWRpdGluZ0hpc3RvcnkuanMgKi8sCisJCQkJRjQ4Mzg5ODQxRTFEREYyQjAw
NzZCN0VBIC8qIEVkaXRpbmdIaXN0b3J5VXRpbC5qcyAqLywKKwkJCSk7CisJCQluYW1lID0gRWRp
dGluZ0hpc3Rvcnk7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlGNEM1RjIx
MjI0NzlGQzQwMDBFOUI0RjUgLyogbWFjICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQlj
aGlsZHJlbiA9ICgKKwkJCQlGNEM1RjIxMzI0NzlGQzRFMDBFOUI0RjUgLyogQ2xpcGJvYXJkSW1h
Z2VSZWFkZXJNYWMubW0gKi8sCisJCQkpOworCQkJbmFtZSA9IG1hYzsKKwkJCXNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7CisJCX07CisJCUY0QzVGMjE1MjQ3OUZDQUYwMEU5QjRGNSAvKiBpb3MgKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUY0QzVGMjE2MjQ3
OUZDRDEwMEU5QjRGNSAvKiBDbGlwYm9hcmRJbWFnZVJlYWRlcklPUy5tbSAqLywKKwkJCSk7CisJ
CQluYW1lID0gaW9zOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRjUyM0Qx
ODQwMkRFNDJFODAxODYzNUNBIC8qIGNzcyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJQkNGMTY0NEQyNjYyOUY5QTAwMDJGN0VGIC8qIGNhbGMgKi8sCisJ
CQkJOTQ2RDM3MjcxRDZDQjIyNTAwNzcwODRGIC8qIHBhcnNlciAqLywKKwkJCQk0QkFGRDBEQTIx
OTIxRUFEMDBDMEFCNjQgLyogdHlwZWRvbSAqLywKKwkJCQlGQkQ2QUY4NDE1RUYyMUQ0MDA4Qjcx
MTAgLyogQmFzaWNTaGFwZUZ1bmN0aW9ucy5jcHAgKi8sCisJCQkJRkJENkFGODUxNUVGMjFENDAw
OEI3MTEwIC8qIEJhc2ljU2hhcGVGdW5jdGlvbnMuaCAqLywKKwkJCQlBODBFNkNEQTBBMTk4OUNB
MDA3RkI4QzUgLyogQ291bnRlci5oICovLAorCQkJCUNBRTlGOTBEMTQ2NDQxRjAwMEMyNDVCMCAv
KiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmNwcCAqLywKKwkJCQlDQUU5RjkwRTE0NjQ0MUYwMDBDMjQ1
QjAgLyogQ1NTQXNwZWN0UmF0aW9WYWx1ZS5oICovLAorCQkJCUZCRDZBRjg2MTVFRjIxRDQwMDhC
NzExMCAvKiBDU1NCYXNpY1NoYXBlcy5jcHAgKi8sCisJCQkJRkJENkFGODcxNUVGMjFENDAwOEI3
MTEwIC8qIENTU0Jhc2ljU2hhcGVzLmggKi8sCisJCQkJRTE2QTg0RjcxNEM4NUNDQzAwMjk3N0RG
IC8qIENTU0JvcmRlckltYWdlLmNwcCAqLywKKwkJCQlFMTZBODRGODE0Qzg1Q0NDMDAyOTc3REYg
LyogQ1NTQm9yZGVySW1hZ2UuaCAqLywKKwkJCQlCQzI3NEIzMDE0MEVCRUQ4MDBFQURGQTYgLyog
Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcCAqLywKKwkJCQlCQzI3NEIyRTE0MEVCRUIyMDBF
QURGQTYgLyogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggKi8sCisJCQkJQkM2MDRBNDIwREI1
NjM0RTAwMjA0NzM5IC8qIENTU0NhbnZhc1ZhbHVlLmNwcCAqLywKKwkJCQlCQzYwNDlDQjBEQjU2
MEMyMDAyMDQ3MzkgLyogQ1NTQ2FudmFzVmFsdWUuaCAqLywKKwkJCQlCQ0VBNDc3QzA5N0NBQUM4
MDA5NEM5RTQgLyogQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCAqLywKKwkJCQlCQ0VB
NDc3RDA5N0NBQUM4MDA5NEM5RTQgLyogQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmggKi8s
CisJCQkJOTMwQUFDOTYyNTBFQjgxNzAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuY3BwICov
LAorCQkJCTkzMEFBQzk4MjUwRUI4MTcwMDEzREE5RiAvKiBDU1NDb25kaXRpb25SdWxlLmggKi8s
CisJCQkJOTMwQUFDOTkyNTBFQjgxODAwMTNEQTlGIC8qIENTU0NvbmRpdGlvblJ1bGUuaWRsICov
LAorCQkJCTlEQUM3QzUyMUFGMkNBQTEwMDQzN0M0NCAvKiBDU1NDb250ZW50RGlzdHJpYnV0aW9u
VmFsdWUuY3BwICovLAorCQkJCTlEQUM3QzUzMUFGMkNBQTEwMDQzN0M0NCAvKiBDU1NDb250ZW50
RGlzdHJpYnV0aW9uVmFsdWUuaCAqLywKKwkJCQk5OEY5RDY2NTI1RkRERkU3MDBCRDg0MkQgLyog
Q1NTQ291bnRlclN0eWxlUnVsZS5jcHAgKi8sCisJCQkJOThGOUQ2NjgyNUZEREZFODAwQkQ4NDJE
IC8qIENTU0NvdW50ZXJTdHlsZVJ1bGUuaCAqLywKKwkJCQk5OEY5RDY2NzI1RkRERkU4MDBCRDg0
MkQgLyogQ1NTQ291bnRlclN0eWxlUnVsZS5pZGwgKi8sCisJCQkJMkQ4RkVCREExNDNFM0VGNzAw
NzI1MDJCIC8qIENTU0Nyb3NzZmFkZVZhbHVlLmNwcCAqLywKKwkJCQkyRDhGRUJEQjE0M0UzRUY3
MDA3MjUwMkIgLyogQ1NTQ3Jvc3NmYWRlVmFsdWUuaCAqLywKKwkJCQlBQTA5NzhFRDBBQkFBNkUx
MDA4NzQ0ODAgLyogQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHAgKi8sCisJCQkJQUEwOTc4RUUwQUJB
QTZFMTAwODc0NDgwIC8qIENTU0N1cnNvckltYWdlVmFsdWUuaCAqLywKKwkJCQk5NEQ0QUM2MTFE
QzI0QzgxMDA4MEYwMkQgLyogQ1NTQ3VzdG9tUHJvcGVydHlWYWx1ZS5jcHAgKi8sCisJCQkJQkM3
NzlFMTMxQkIyMTVCQjAwQ0FBOEJGIC8qIENTU0N1c3RvbVByb3BlcnR5VmFsdWUuaCAqLywKKwkJ
CQlGQjk2NUI4MjE3QkJCNjJDMDBFODM1QjkgLyogQ1NTRmlsdGVySW1hZ2VWYWx1ZS5jcHAgKi8s
CisJCQkJRkI5NjVCODExN0JCQjVGOTAwRTgzNUI5IC8qIENTU0ZpbHRlckltYWdlVmFsdWUuaCAq
LywKKwkJCQlCQzY0QjRDRDBDQjQyOThBMDA1RjJCNjIgLyogQ1NTRm9udEZhY2UuY3BwICovLAor
CQkJCUJDNjRCNENFMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZS5oICovLAorCQkJCUE4
MEU2Q0JEMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250RmFjZVJ1bGUuY3BwICovLAorCQkJCUE4
MEU2Q0QzMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NGb250RmFjZVJ1bGUuaCAqLywKKwkJCQk4NUM1
NkNBMzBBQTg5Q0E0MDBEOTU3NTUgLyogQ1NTRm9udEZhY2VSdWxlLmlkbCAqLywKKwkJCQlDMjYw
MTdBMTFDNzJEQzk5MDBGNzRBMTYgLyogQ1NTRm9udEZhY2VTZXQuY3BwICovLAorCQkJCUMyNjAx
N0EyMUM3MkRDOTkwMEY3NEExNiAvKiBDU1NGb250RmFjZVNldC5oICovLAorCQkJCUJDNjRCNENG
MENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZVNvdXJjZS5jcHAgKi8sCisJCQkJQkM2NEI0
RDAwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNlU291cmNlLmggKi8sCisJCQkJQkM2NEI0
RDEwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNlU3JjVmFsdWUuY3BwICovLAorCQkJCUJD
NjRCNEQyMENCNDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZVNyY1ZhbHVlLmggKi8sCisJCQkJ
ODM1MjBDN0QxQTcxQkZDQzAwNkJEMkFBIC8qIENTU0ZvbnRGYW1pbHkuaCAqLywKKwkJCQk0QTZF
OUZDMTEzQzE3RDFEMDA0NkE3RjggLyogQ1NTRm9udEZlYXR1cmVWYWx1ZS5jcHAgKi8sCisJCQkJ
NEE2RTlGQzIxM0MxN0QxRDAwNDZBN0Y4IC8qIENTU0ZvbnRGZWF0dXJlVmFsdWUuaCAqLywKKwkJ
CQlCQzY0QjREMzBDQjQyOThBMDA1RjJCNjIgLyogQ1NTRm9udFNlbGVjdG9yLmNwcCAqLywKKwkJ
CQlCQzY0QjRENDBDQjQyOThBMDA1RjJCNjIgLyogQ1NTRm9udFNlbGVjdG9yLmggKi8sCisJCQkJ
QzJFMzhFRkYxRTg0NTczNTAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVJhbmdlVmFsdWUuY3BwICov
LAorCQkJCUMyRTM4RjAwMUU4NDU3MzUwMENBM0FERiAvKiBDU1NGb250U3R5bGVSYW5nZVZhbHVl
LmggKi8sCisJCQkJQzJFMzhFRkIxRTgzOTZGRDAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVZhbHVl
LmNwcCAqLywKKwkJCQlDMkUzOEVGQzFFODM5NkZEMDBDQTNBREYgLyogQ1NTRm9udFN0eWxlVmFs
dWUuaCAqLywKKwkJCQlBODBFNkNDNzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTRm9udFZhbHVlLmNw
cCAqLywKKwkJCQlBODBFNkNDMzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTRm9udFZhbHVlLmggKi8s
CisJCQkJQzIxREYyRTcxRDlFNEU5OTAwRjVCMjRDIC8qIENTU0ZvbnRWYXJpYXRpb25WYWx1ZS5j
cHAgKi8sCisJCQkJQzIxREYyRTgxRDlFNEU5OTAwRjVCMjRDIC8qIENTU0ZvbnRWYXJpYXRpb25W
YWx1ZS5oICovLAorCQkJCUJDMDJBNjQ1MEUwOUFBRTkwMDRCNkQyQiAvKiBDU1NGdW5jdGlvblZh
bHVlLmNwcCAqLywKKwkJCQlCQzAyQTYzQjBFMDlBOUNGMDA0QjZEMkIgLyogQ1NTRnVuY3Rpb25W
YWx1ZS5oICovLAorCQkJCUJDMjNFNEUwMERBQUNFMEYwMDlGREM5MSAvKiBDU1NHcmFkaWVudFZh
bHVlLmNwcCAqLywKKwkJCQlCQzUzQzY5MTBEQTU5MTE0MDAyMUVCNUQgLyogQ1NTR3JhZGllbnRW
YWx1ZS5oICovLAorCQkJCUUxMTAwMzJFMUM5QUMzREUwMDQxMkREMCAvKiBDU1NHcmlkQXV0b1Jl
cGVhdFZhbHVlLmNwcCAqLywKKwkJCQlFMTEwMDMyRjFDOUFDM0RFMDA0MTJERDAgLyogQ1NTR3Jp
ZEF1dG9SZXBlYXRWYWx1ZS5oICovLAorCQkJCTM1Qzc0RkQzMjI4QTE5MTIwMDBDMjFBMCAvKiBD
U1NHcmlkSW50ZWdlclJlcGVhdFZhbHVlLmNwcCAqLywKKwkJCQkzNUM3NEZENzIyOEExOUE2MDAw
QzIxQTAgLyogQ1NTR3JpZEludGVnZXJSZXBlYXRWYWx1ZS5oICovLAorCQkJCUNEN0RCQjI2MThD
QTExRkYwMEMxMTA2NiAvKiBDU1NHcmlkTGluZU5hbWVzVmFsdWUuY3BwICovLAorCQkJCUNEN0RC
QjI3MThDQTExRkYwMEMxMTA2NiAvKiBDU1NHcmlkTGluZU5hbWVzVmFsdWUuaCAqLywKKwkJCQlD
RDNFMjUyMTE4MDQ2QkNEMDBFMjdGNTYgLyogQ1NTR3JpZFRlbXBsYXRlQXJlYXNWYWx1ZS5jcHAg
Ki8sCisJCQkJQ0QzRTI1MjIxODA0NkJDRDAwRTI3RjU2IC8qIENTU0dyaWRUZW1wbGF0ZUFyZWFz
VmFsdWUuaCAqLywKKwkJCQlGQkY4OTA0NDE2OUU5RjFGMDA1MkQ4NkUgLyogQ1NTR3JvdXBpbmdS
dWxlLmNwcCAqLywKKwkJCQlGQjMwNTZDMTE2OUU1REFDMDA5NkEyMzIgLyogQ1NTR3JvdXBpbmdS
dWxlLmggKi8sCisJCQkJOTMwQUFDOUIyNTBFQzJGMzAwMTNEQTlGIC8qIENTU0dyb3VwaW5nUnVs
ZS5pZGwgKi8sCisJCQkJQkM3NzJCMzYwQzRFQTkxRTAwODMyODVGIC8qIENTU0hlbHBlci5oICov
LAorCQkJCUJDMjNFNzZCMERBRTg4QTkwMDlGREM5MSAvKiBDU1NJbWFnZUdlbmVyYXRvclZhbHVl
LmNwcCAqLywKKwkJCQlCQzIzRUU5MTBEQUVEMkJDMDA5RkRDOTEgLyogQ1NTSW1hZ2VHZW5lcmF0
b3JWYWx1ZS5oICovLAorCQkJCTkzOTNFNUZEMTUxQTk5RjIwMDA2NkYwNiAvKiBDU1NJbWFnZVNl
dFZhbHVlLmNwcCAqLywKKwkJCQk5MzkzRTVGRTE1MUE5OUYyMDAwNjZGMDYgLyogQ1NTSW1hZ2VT
ZXRWYWx1ZS5oICovLAorCQkJCUE4MEU2Q0Q0MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbWFnZVZh
bHVlLmNwcCAqLywKKwkJCQlBODBFNkNEMDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1hZ2VWYWx1
ZS5oICovLAorCQkJCUE4MEU2Q0MxMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbXBvcnRSdWxlLmNw
cCAqLywKKwkJCQlBODBFNkNDQzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5oICov
LAorCQkJCTg1QzU2Q0E5MEFBODlFNjYwMEQ5NTc1NSAvKiBDU1NJbXBvcnRSdWxlLmlkbCAqLywK
KwkJCQlBODBFNkNDNjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW5oZXJpdGVkVmFsdWUuY3BwICov
LAorCQkJCUE4MEU2Q0Q3MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbmhlcml0ZWRWYWx1ZS5oICov
LAorCQkJCUE4MEU2Q0Q4MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbml0aWFsVmFsdWUuY3BwICov
LAorCQkJCUE4MEU2Q0RFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NJbml0aWFsVmFsdWUuaCAqLywK
KwkJCQkzMTI4OEU2RTBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVSdWxlLmNwcCAqLywK
KwkJCQkzMTI4OEU2RjBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVSdWxlLmggKi8sCisJ
CQkJMzE2RkUwOTEwRTZDQ0Q3RjAwQkY2MDg4IC8qIENTU0tleWZyYW1lUnVsZS5pZGwgKi8sCisJ
CQkJMzEyODhFNzAwRTMwMDVENjAwMzYxOUFFIC8qIENTU0tleWZyYW1lc1J1bGUuY3BwICovLAor
CQkJCTMxMjg4RTcxMEUzMDA1RDYwMDM2MTlBRSAvKiBDU1NLZXlmcmFtZXNSdWxlLmggKi8sCisJ
CQkJMzE2RkUwOTIwRTZDQ0Q3RjAwQkY2MDg4IC8qIENTU0tleWZyYW1lc1J1bGUuaWRsICovLAor
CQkJCUJDNzcyRTE1MTMzMTYyQzIwMDFFQzlDRSAvKiBDU1NMaW5lQm94Q29udGFpblZhbHVlLmNw
cCAqLywKKwkJCQlCQzc3MkUxMjEzMzE2MjBDMDAxRUM5Q0UgLyogQ1NTTGluZUJveENvbnRhaW5W
YWx1ZS5oICovLAorCQkJCTk0NkQzNzQ3MUQ2RDA2MEMwMDc3MDg0RiAvKiBDU1NNYXJrdXAuY3Bw
ICovLAorCQkJCTk0NkQzNzQ4MUQ2RDA2MEMwMDc3MDg0RiAvKiBDU1NNYXJrdXAuaCAqLywKKwkJ
CQlBODBFNkNEMjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTTWVkaWFSdWxlLmNwcCAqLywKKwkJCQlB
ODBFNkNEOTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTTWVkaWFSdWxlLmggKi8sCisJCQkJODVDNTZD
QTIwQUE4OUMxMDAwRDk1NzU1IC8qIENTU01lZGlhUnVsZS5pZGwgKi8sCisJCQkJMzE0QkUzQTIx
QjMwRjZEMTAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5jcHAgKi8sCisJCQkJMzE0QkUz
QTAxQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oICovLAorCQkJCTk0RTgz
OTRFMURGQjI3MDAwMDdCQzZBNyAvKiBDU1NOYW1lc3BhY2VSdWxlLmNwcCAqLywKKwkJCQk5NEU4
Mzk0RjFERkIyNzAwMDA3QkM2QTcgLyogQ1NTTmFtZXNwYWNlUnVsZS5oICovLAorCQkJCTk0RTgz
OTUwMURGQjI5QTQwMDdCQzZBNyAvKiBDU1NOYW1lc3BhY2VSdWxlLmlkbCAqLywKKwkJCQlBODBF
NkNDQjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUGFnZVJ1bGUuY3BwICovLAorCQkJCUE4MEU2Q0Q2
MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQYWdlUnVsZS5oICovLAorCQkJCTg1QzU2Q0E2MEFBODlE
NUYwMEQ5NTc1NSAvKiBDU1NQYWdlUnVsZS5pZGwgKi8sCisJCQkJNEI1QkREOUEyMTY1OEExNTAw
REQ0MjYyIC8qIENTU1BhaW50Q2FsbGJhY2suaCAqLywKKwkJCQk0QjVCREQ5OTIxNjU4OEU1MDBE
RDQyNjIgLyogQ1NTUGFpbnRDYWxsYmFjay5pZGwgKi8sCisJCQkJNEI2RTg3NkIyMTc2RDhBMTAw
NDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5jcHAgKi8sCisJCQkJNEI2RTg3NjgyMTc2RDY5
MjAwNDIwRTVFIC8qIENTU1BhaW50SW1hZ2VWYWx1ZS5oICovLAorCQkJCTRCQUZEMENBMjE5MEVC
RDYwMEMwQUI2NCAvKiBDU1NQYWludFNpemUuaCAqLywKKwkJCQk0QkFGRDBDRDIxOTBFQkU5MDBD
MEFCNjQgLyogQ1NTUGFpbnRTaXplLmlkbCAqLywKKwkJCQk5NDE4Mjc4RDFEOENBRTk1MDA0OTI3
NjQgLyogQ1NTUGVuZGluZ1N1YnN0aXR1dGlvblZhbHVlLmggKi8sCisJCQkJQTgwRTZDREIwQTE5
ODlDQTAwN0ZCOEM1IC8qIENTU1ByaW1pdGl2ZVZhbHVlLmNwcCAqLywKKwkJCQlBODBFNkNCQzBB
MTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJpbWl0aXZlVmFsdWUuaCAqLywKKwkJCQlFMUVEOEFDMjBD
QzQ5QkUwMDBCRkM1NTcgLyogQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oICovLAorCQkJCTBG
QTA4NTJCMUU2RkI1NUEwMDk3NUZERCAvKiBDU1NQcm9wZXJ0aWVzLmpzb24gKi8sCisJCQkJQTgw
RTZDQ0QwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1Byb3BlcnR5LmNwcCAqLywKKwkJCQlBODBFNkNE
NTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUHJvcGVydHkuaCAqLywKKwkJCQk4MkUzRDhEQzEyMkVB
MEQxMDAzQUU1QkMgLyogQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmNwcCAqLywKKwkJCQk4MkUzRDhE
RDEyMkVBMEQxMDAzQUU1QkMgLyogQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmggKi8sCisJCQkJQkM1
QTEyREQwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxlY3RWYWx1ZS5jcHAgKi8sCisJCQkJQkM1
QTEyREUwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxlY3RWYWx1ZS5oICovLAorCQkJCTRCMTcw
NjY0MjE2MkI0MkYwMEU1NzhCQiAvKiBDU1NSZWdpc3RlcmVkQ3VzdG9tUHJvcGVydHkuY3BwICov
LAorCQkJCTRCREEzRkZCMjE1MUI2RjQwMEZENjYwNCAvKiBDU1NSZWdpc3RlcmVkQ3VzdG9tUHJv
cGVydHkuaCAqLywKKwkJCQlCQzdEOEZGMTFCRDFBNDc5MDBGRkU1NDAgLyogQ1NTUmV2ZXJ0VmFs
dWUuY3BwICovLAorCQkJCUJDN0Q4RkYyMUJEMUE0NzkwMEZGRTU0MCAvKiBDU1NSZXZlcnRWYWx1
ZS5oICovLAorCQkJCUE4MEU2Q0RDMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NSdWxlLmNwcCAqLywK
KwkJCQlBODBFNkNFMzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUnVsZS5oICovLAorCQkJCTE0Q0Y3
QTcwMDlGNUNGOUEwMEVCMzY2NSAvKiBDU1NSdWxlLmlkbCAqLywKKwkJCQlBODBFNkNERjBBMTk4
OUNBMDA3RkI4QzUgLyogQ1NTUnVsZUxpc3QuY3BwICovLAorCQkJCUE4MEU2Q0M4MEExOTg5Q0Ew
MDdGQjhDNSAvKiBDU1NSdWxlTGlzdC5oICovLAorCQkJCUE4RDA2NTFCMEEyM0MxRkUwMDVFNzIw
MyAvKiBDU1NSdWxlTGlzdC5pZGwgKi8sCisJCQkJMzcxRjUxQTAwRDI2MkZBMDAwRUNFMEQ1IC8q
IENTU1NlZ21lbnRlZEZvbnRGYWNlLmNwcCAqLywKKwkJCQkzNzFGNTE5RjBEMjYyRkEwMDBFQ0Uw
RDUgLyogQ1NTU2VnbWVudGVkRm9udEZhY2UuaCAqLywKKwkJCQlBODBFNzM0ODBBMTk5Qzc3MDA3
RkI4QzUgLyogQ1NTU2VsZWN0b3IuY3BwICovLAorCQkJCUE4MEU3MzRCMEExOTlDNzcwMDdGQjhD
NSAvKiBDU1NTZWxlY3Rvci5oICovLAorCQkJCUU0QzE3ODk1MEVFNjkwMzgwMDgyNEQ2OSAvKiBD
U1NTZWxlY3Rvckxpc3QuY3BwICovLAorCQkJCUU0QzE3ODk2MEVFNjkwMzgwMDgyNEQ2OSAvKiBD
U1NTZWxlY3Rvckxpc3QuaCAqLywKKwkJCQlBODBFNkNDQTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NT
U2hhZG93VmFsdWUuY3BwICovLAorCQkJCUE4MEU2Q0JFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NT
aGFkb3dWYWx1ZS5oICovLAorCQkJCTdDREU4RUJDMUYxOTNCQzUwMDE2OEZFNyAvKiBDU1NTdHls
ZURlY2xhcmF0aW9uLmNwcCAqLywKKwkJCQlBODBFNkUwRDBBMTk5MTFDMDA3RkI4QzUgLyogQ1NT
U3R5bGVEZWNsYXJhdGlvbi5oICovLAorCQkJCTE0MjAxMUFFMEEwMDMxMTcwMDgzMDNGOSAvKiBD
U1NTdHlsZURlY2xhcmF0aW9uLmlkbCAqLywKKwkJCQlBODBFNkNDNTBBMTk4OUNBMDA3RkI4QzUg
LyogQ1NTU3R5bGVSdWxlLmNwcCAqLywKKwkJCQlBODBFNkNFMjBBMTk4OUNBMDA3RkI4QzUgLyog
Q1NTU3R5bGVSdWxlLmggKi8sCisJCQkJODVDNTZDQTEwQUE4OUFCNDAwRDk1NzU1IC8qIENTU1N0
eWxlUnVsZS5pZGwgKi8sCisJCQkJQThFQTgwMDAwQTE5NTE2RTAwQThFRjVGIC8qIENTU1N0eWxl
U2hlZXQuY3BwICovLAorCQkJCUE4RUE3RkZGMEExOTUxNkUwMEE4RUY1RiAvKiBDU1NTdHlsZVNo
ZWV0LmggKi8sCisJCQkJODU4QzM5MTAwQUE4RkYwMDAwQjE4N0E0IC8qIENTU1N0eWxlU2hlZXQu
aWRsICovLAorCQkJCUZENjc3NzM0MTk1Q0FCMjAwMDcyRTBEMyAvKiBDU1NTdXBwb3J0c1J1bGUu
Y3BwICovLAorCQkJCUZDNjNCREIxMTY3QUFCQUMwMEY5MzgwRiAvKiBDU1NTdXBwb3J0c1J1bGUu
aCAqLywKKwkJCQlGQzYzQkRCMjE2N0FBQkFDMDBGOTM4MEYgLyogQ1NTU3VwcG9ydHNSdWxlLmlk
bCAqLywKKwkJCQlCQzgwQzk4NTBDRDI5NEVFMDBBMEI3QjMgLyogQ1NTVGltaW5nRnVuY3Rpb25W
YWx1ZS5jcHAgKi8sCisJCQkJQkM4MEM5ODYwQ0QyOTRFRTAwQTBCN0IzIC8qIENTU1RpbWluZ0Z1
bmN0aW9uVmFsdWUuaCAqLywKKwkJCQk5QUIxRjM3RjE4RTI0ODlBMDA1MzQ3NDMgLyogQ1NTVG9M
ZW5ndGhDb252ZXJzaW9uRGF0YS5jcHAgKi8sCisJCQkJOUFCMUYzN0UxOEUyNDg5QTAwNTM0NzQz
IC8qIENTU1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEuaCAqLywKKwkJCQlBODgyREExRjE1OTM4NDZB
MDAwMTE1RUQgLyogQ1NTVG9TdHlsZU1hcC5jcHAgKi8sCisJCQkJQTg4MkRBMjIxNTkzODQ4RDAw
MDExNUVEIC8qIENTU1RvU3R5bGVNYXAuaCAqLywKKwkJCQkzNzFGNTNFODBEMjcwNEY5MDBFQ0Uw
RDUgLyogQ1NTVW5pY29kZVJhbmdlVmFsdWUuY3BwICovLAorCQkJCTM3MUY1M0U3MEQyNzA0Rjkw
MEVDRTBENSAvKiBDU1NVbmljb2RlUmFuZ2VWYWx1ZS5oICovLAorCQkJCTBGNkI3MDc5MjM3QkMx
MkYwMDUyQ0E0NyAvKiBDU1NVbml0cy5jcHAgKi8sCisJCQkJMEY2QjcwNzcyMzdCQzEyRjAwNTJD
QTQ3IC8qIENTU1VuaXRzLmggKi8sCisJCQkJQTgwRTZDQ0UwQTE5ODlDQTAwN0ZCOEM1IC8qIENT
U1Vua25vd25SdWxlLmggKi8sCisJCQkJODVDNTZDQUQwQUE4OUZFMDAwRDk1NzU1IC8qIENTU1Vu
a25vd25SdWxlLmlkbCAqLywKKwkJCQlCQzdEOEZFRDFCRDAzQjY0MDBGRkU1NDAgLyogQ1NTVW5z
ZXRWYWx1ZS5jcHAgKi8sCisJCQkJQkM3RDhGRUUxQkQwM0I2NDAwRkZFNTQwIC8qIENTU1Vuc2V0
VmFsdWUuaCAqLywKKwkJCQlBRDAzQUFGODE0Njg0NTM5MDBBMzlCNUIgLyogQ1NTVmFsdWUuY3Bw
ICovLAorCQkJCUE4MEU2Q0M0MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZS5oICovLAorCQkJ
CUJDRUE0NzhDMDk3Q0FBQzgwMDk0QzlFNCAvKiBDU1NWYWx1ZUtleXdvcmRzLmluICovLAorCQkJ
CUE4MEU2Q0JBMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZUxpc3QuY3BwICovLAorCQkJCUE4
MEU2Q0JGMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NWYWx1ZUxpc3QuaCAqLywKKwkJCQlFNDlCREEw
QTEzMUZEM0U1MDAzQzU2RjAgLyogQ1NTVmFsdWVQb29sLmNwcCAqLywKKwkJCQlFNDlCRDlGOTEz
MUZEMkVEMDAzQzU2RjAgLyogQ1NTVmFsdWVQb29sLmggKi8sCisJCQkJOTQ0NENCREUxRDg4NjE1
ODAwNzNBMDc0IC8qIENTU1ZhcmlhYmxlRGF0YS5jcHAgKi8sCisJCQkJOTQ0NENCREQxRDg4NjE1
ODAwNzNBMDc0IC8qIENTU1ZhcmlhYmxlRGF0YS5oICovLAorCQkJCTk0NDRDQkRDMUQ4ODYxNTgw
MDczQTA3NCAvKiBDU1NWYXJpYWJsZVJlZmVyZW5jZVZhbHVlLmNwcCAqLywKKwkJCQk5NDQ0Q0JE
QjFEODg2MTU4MDA3M0EwNzQgLyogQ1NTVmFyaWFibGVSZWZlcmVuY2VWYWx1ZS5oICovLAorCQkJ
CTk0Nzk0OTJBMUUwMzJFREIwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01Db3VudGVyLmggKi8s
CisJCQkJOTMwNzA1QzcwOUUwQzk1RjAwQjE3RkU0IC8qIERlcHJlY2F0ZWRDU1NPTUNvdW50ZXIu
aWRsICovLAorCQkJCTk0Nzk0OTNCMUUwNDVDRTEwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01Q
cmltaXRpdmVWYWx1ZS5jcHAgKi8sCisJCQkJOTQ3OTQ5MjYxRTAzMTMyMDAwMDE4RDg1IC8qIERl
cHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggKi8sCisJCQkJOTMwNzA1OTAwOUUwQzc1ODAw
QjE3RkU0IC8qIERlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmlkbCAqLywKKwkJCQk5NDc5
NDkyODFFMDMyQUU5MDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NUmVjdC5oICovLAorCQkJCUE4
MEU3OTk2MEExOUJEMjEwMDdGQjhDNSAvKiBEZXByZWNhdGVkQ1NTT01SZWN0LmlkbCAqLywKKwkJ
CQk5NDc5NDkyOTFFMDMyRDU4MDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NUkdCQ29sb3IuaCAq
LywKKwkJCQk4NThDMzhFRjBBQThGREQxMDBCMTg3QTQgLyogRGVwcmVjYXRlZENTU09NUkdCQ29s
b3IuaWRsICovLAorCQkJCTk0Nzk0OTIyMUUwMkY5MEIwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NT
T01WYWx1ZS5jcHAgKi8sCisJCQkJOTQ3OTQ5MjMxRTAyRjkwQjAwMDE4RDg1IC8qIERlcHJlY2F0
ZWRDU1NPTVZhbHVlLmggKi8sCisJCQkJMTRDRjc4NzEwOUY1ODdDQTAwRUIzNjY1IC8qIERlcHJl
Y2F0ZWRDU1NPTVZhbHVlLmlkbCAqLywKKwkJCQk5NDc5NDkyRDFFMDQ1NzhEMDAwMThEODUgLyog
RGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmNwcCAqLywKKwkJCQk5NDc5NDkyNzFFMDMxMzIwMDAw
MThEODUgLyogRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmggKi8sCisJCQkJQThEMDY1MUMwQTIz
QzFGRTAwNUU3MjAzIC8qIERlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5pZGwgKi8sCisJCQkJMEZB
MEEwRTUyM0FFQUEzNTAwMEVFQjk0IC8qIGRpYWxvZy5jc3MgKi8sCisJCQkJN0MzNjU1NjkyNTA2
RERCNzAwQTc4ODJCIC8qIERvY3VtZW50T3JTaGFkb3dSb290K0NTU09NLmlkbCAqLywKKwkJCQk0
QkRBM0ZGODIxNTFCNkYyMDBGRDY2MDQgLyogRE9NQ1NTQ3VzdG9tUHJvcGVydHlEZXNjcmlwdG9y
LmggKi8sCisJCQkJNEJEQTNGRkEyMTUxQjZGMzAwRkQ2NjA0IC8qIERPTUNTU0N1c3RvbVByb3Bl
cnR5RGVzY3JpcHRvci5pZGwgKi8sCisJCQkJMkFDQjREMkMyNkREQUI4RTAwQkVCNzUzIC8qIERP
TUNTU05hbWVzcGFjZStDU1NOdW1lcmljRmFjdG9yeS5pZGwgKi8sCisJCQkJNEI2QjVDQjYyMTYz
REMxQTAwNjAzODE3IC8qIERPTUNTU05hbWVzcGFjZStDU1NQYWludGluZy5pZGwgKi8sCisJCQkJ
NEJEQTNGRjUyMTUxQjZGMDAwRkQ2NjA0IC8qIERPTUNTU05hbWVzcGFjZStDU1NQcm9wZXJ0aWVz
YW5kVmFsdWVzLmlkbCAqLywKKwkJCQlGRDY3NzczNTE5NUNBQjIwMDA3MkUwRDMgLyogRE9NQ1NT
TmFtZXNwYWNlLmNwcCAqLywKKwkJCQlGQzlBMEY3MjE2NDA5NENGMDAzRDZCOEQgLyogRE9NQ1NT
TmFtZXNwYWNlLmggKi8sCisJCQkJRkM5QTBGNzMxNjQwOTRDRjAwM0Q2QjhEIC8qIERPTUNTU05h
bWVzcGFjZS5pZGwgKi8sCisJCQkJNEI2QjVDQjkyMTYzRUQzMjAwNjAzODE3IC8qIERPTUNTU1Bh
aW50V29ya2xldC5jcHAgKi8sCisJCQkJNEI2QjVDQjgyMTYzRUMwNzAwNjAzODE3IC8qIERPTUNT
U1BhaW50V29ya2xldC5oICovLAorCQkJCTRCREEzRkY3MjE1MUI2RjEwMEZENjYwNCAvKiBET01D
U1NSZWdpc3RlckN1c3RvbVByb3BlcnR5LmNwcCAqLywKKwkJCQk0QkRBM0ZGOTIxNTFCNkYzMDBG
RDY2MDQgLyogRE9NQ1NTUmVnaXN0ZXJDdXN0b21Qcm9wZXJ0eS5oICovLAorCQkJCTgzNkFDRUM0
MUVDQTY2NTQwMDRCRDAxMiAvKiBET01NYXRyaXguY3BwICovLAorCQkJCTgzNkFDRUM1MUVDQTY2
NTQwMDRCRDAxMiAvKiBET01NYXRyaXguaCAqLywKKwkJCQk4MzZBQ0VDNjFFQ0E2NjU0MDA0QkQw
MTIgLyogRE9NTWF0cml4LmlkbCAqLywKKwkJCQk3Q0JCQkNDNjFGNTYwNTY4MDA1RUZBQUMgLyog
RE9NTWF0cml4MkRJbml0LmggKi8sCisJCQkJN0NCQkJDQzQxRjU2MDU2NzAwNUVGQUFDIC8qIERP
TU1hdHJpeDJESW5pdC5pZGwgKi8sCisJCQkJODM2QUNFQzcxRUNBNjY1NDAwNEJEMDEyIC8qIERP
TU1hdHJpeEluaXQuaCAqLywKKwkJCQk4MzZBQ0VDODFFQ0E2NjU0MDA0QkQwMTIgLyogRE9NTWF0
cml4SW5pdC5pZGwgKi8sCisJCQkJODM2QUNFQkYxRUNBNjJCMDAwNEJEMDEyIC8qIERPTU1hdHJp
eFJlYWRPbmx5LmNwcCAqLywKKwkJCQk4MzZBQ0VDMDFFQ0E2MkIwMDA0QkQwMTIgLyogRE9NTWF0
cml4UmVhZE9ubHkuaCAqLywKKwkJCQk4MzZBQ0VDMTFFQ0E2MkIwMDA0QkQwMTIgLyogRE9NTWF0
cml4UmVhZE9ubHkuaWRsICovLAorCQkJCTgzN0RGQjM0MUVCRkVBNzAwMDYwMTM4NSAvKiBFbGVt
ZW50Q1NTSW5saW5lU3R5bGUuaWRsICovLAorCQkJCTFDNjYyNjBFMUM2RTdDQTYwMEFCNTI3QyAv
KiBGb250RmFjZS5jcHAgKi8sCisJCQkJMUM2NjI2MEYxQzZFN0NBNjAwQUI1MjdDIC8qIEZvbnRG
YWNlLmggKi8sCisJCQkJQzI4MDgzM0MxQzZEQjE5NDAwMTQ1MUI2IC8qIEZvbnRGYWNlLmlkbCAq
LywKKwkJCQkxQzI0RUVBMjFDNzI5Q0U0MDA4MEY4RkMgLyogRm9udEZhY2VTZXQuY3BwICovLAor
CQkJCTFDMjRFRUEzMUM3MjlDRTQwMDgwRjhGQyAvKiBGb250RmFjZVNldC5oICovLAorCQkJCTFD
MjRFRUExMUM3MjlCMzIwMDgwRjhGQyAvKiBGb250RmFjZVNldC5pZGwgKi8sCisJCQkJN0MzQThB
QkMyNTA5QTI1NjAwOEM0NzdGIC8qIEZvbnRGYWNlU291cmNlLmlkbCAqLywKKwkJCQlCQzRBNTMy
RTI1NjA1N0NEMDAyOEM1OTIgLyogRm9udExvYWRUaW1pbmdPdmVycmlkZS5oICovLAorCQkJCUMy
QUIwQjAzMUU2REU5MkMwMDEzNDhDNSAvKiBGb250U2VsZWN0aW9uVmFsdWVJbmxpbmVzLmggKi8s
CisJCQkJMUMzMjQ5MTAxQzZENkEzQjAwN0VEQjMyIC8qIEZvbnRWYXJpYW50QnVpbGRlci5jcHAg
Ki8sCisJCQkJQzIwMTVDMDkxQkU2RkUyQzAwODIyMzg5IC8qIEZvbnRWYXJpYW50QnVpbGRlci5o
ICovLAorCQkJCUNENEUwQUZBMTFGN0JDMjcwMDlEMzgxMSAvKiBmdWxsc2NyZWVuLmNzcyAqLywK
KwkJCQk5M0NBNEM5OTA5REY5M0ZBMDBERjg2NzcgLyogaHRtbC5jc3MgKi8sCisJCQkJRTU0Q0E2
REQyNTVERTJENTAwRjkwMUEzIC8qIGxlZ2FjeUZvcm1Db250cm9sc0lPUy5jc3MgKi8sCisJCQkJ
RTU1RjQ5NzkxNTFCODg4MDAwQkI2N0RCIC8qIExlbmd0aEZ1bmN0aW9ucy5jcHAgKi8sCisJCQkJ
RTVCQTdENjIxNTE0MzdDQTAwRkUxRTNGIC8qIExlbmd0aEZ1bmN0aW9ucy5oICovLAorCQkJCTkz
Q0E0QzlBMDlERjkzRkEwMERGODY3NyAvKiBtYWtlLWNzcy1maWxlLWFycmF5cy5wbCAqLywKKwkJ
CQk5M0NBNEM5QjA5REY5M0ZBMDBERjg2NzcgLyogbWFrZXByb3AucGwgKi8sCisJCQkJNDNCODVF
RDAxOENCRUFDRTAwRTMxQUY0IC8qIG1ha2VTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0aWJp
bGl0eUVsZW1lbnRNYXAucHkgKi8sCisJCQkJMjZBQTBGOTkxOEQyOTczRDAwNDE5MzgxIC8qIG1h
a2VTZWxlY3RvclBzZXVkb0VsZW1lbnRzTWFwLnB5ICovLAorCQkJCTkzQ0E0QzlEMDlERjkzRkEw
MERGODY3NyAvKiBtYWtldmFsdWVzLnBsICovLAorCQkJCUZBNjU0QTYzMTEwOEFCQjcwMDI2MTVF
MCAvKiBtYXRobWwuY3NzICovLAorCQkJCTA3MEREOEY1MEYwMTg2ODAwMDcyN0RFQiAvKiBtZWRp
YUNvbnRyb2xzLmNzcyAqLywKKwkJCQk0RTE5NTkxRjBBMzlEQUJBMDAyMjBGRTUgLyogTWVkaWFG
ZWF0dXJlTmFtZXMuY3BwICovLAorCQkJCTRFMTk1OTIwMEEzOURBQkEwMDIyMEZFNSAvKiBNZWRp
YUZlYXR1cmVOYW1lcy5oICovLAorCQkJCUE4RUE4MDAxMEExOTUxNkUwMEE4RUY1RiAvKiBNZWRp
YUxpc3QuY3BwICovLAorCQkJCUE4RUE4MDA2MEExOTUxNkUwMEE4RUY1RiAvKiBNZWRpYUxpc3Qu
aCAqLywKKwkJCQk4NUM1NkM1QjBBQTg3QUZEMDBEOTU3NTUgLyogTWVkaWFMaXN0LmlkbCAqLywK
KwkJCQk0RTE5NTkyMzBBMzlEQUNDMDAyMjBGRTUgLyogTWVkaWFRdWVyeS5jcHAgKi8sCisJCQkJ
NEUxOTU5MjQwQTM5REFDQzAwMjIwRkU1IC8qIE1lZGlhUXVlcnkuaCAqLywKKwkJCQk0RTE5NTky
NTBBMzlEQUNDMDAyMjBGRTUgLyogTWVkaWFRdWVyeUV2YWx1YXRvci5jcHAgKi8sCisJCQkJNEUx
OTU5MjYwQTM5REFDQzAwMjIwRkU1IC8qIE1lZGlhUXVlcnlFdmFsdWF0b3IuaCAqLywKKwkJCQk3
Q0I1Q0EzRDFFNTI1QzZDMDBGQUVGMTMgLyogTWVkaWFRdWVyeUV4cHJlc3Npb24uY3BwICovLAor
CQkJCTdDQjVDQTNFMUU1MjVDNkMwMEZBRUYxMyAvKiBNZWRpYVF1ZXJ5RXhwcmVzc2lvbi5oICov
LAorCQkJCUQzQTk0QTMxMTIyREFCQUMwMEEzN0JCQyAvKiBNZWRpYVF1ZXJ5TGlzdC5jcHAgKi8s
CisJCQkJRDNBOTRBMzIxMjJEQUJBQzAwQTM3QkJDIC8qIE1lZGlhUXVlcnlMaXN0LmggKi8sCisJ
CQkJRDNBOTRBMzMxMjJEQUJBQzAwQTM3QkJDIC8qIE1lZGlhUXVlcnlMaXN0LmlkbCAqLywKKwkJ
CQk4NDY1MEU3RjIzODdBRDhBMDA2MjY2RTIgLyogTWVkaWFRdWVyeUxpc3RFdmVudC5jcHAgKi8s
CisJCQkJODQ2NTBFN0MyMzg3QUQ3QzAwNjI2NkUyIC8qIE1lZGlhUXVlcnlMaXN0RXZlbnQuaCAq
LywKKwkJCQk4NDY1MEU4MDIzODdBRDhCMDA2MjY2RTIgLyogTWVkaWFRdWVyeUxpc3RFdmVudC5p
ZGwgKi8sCisJCQkJRDNBQTEwRjExMjNBOThBQTAwOTIxNTJCIC8qIE1lZGlhUXVlcnlNYXRjaGVy
LmNwcCAqLywKKwkJCQlEM0FBMTBGMjEyM0E5OEFBMDA5MjE1MkIgLyogTWVkaWFRdWVyeU1hdGNo
ZXIuaCAqLywKKwkJCQk0NDcxNzEwQjIwNUFGOTQ1MDAwQTExNkUgLyogTWVkaWFRdWVyeVBhcnNl
ckNvbnRleHQuY3BwICovLAorCQkJCTQ0NzE3MTBDMjA1QUY5NDUwMDBBMTE2RSAvKiBNZWRpYVF1
ZXJ5UGFyc2VyQ29udGV4dC5oICovLAorCQkJCUE4MEU2Q0QxMEExOTg5Q0EwMDdGQjhDNSAvKiBQ
YWlyLmggKi8sCisJCQkJMzE4OUU2REIxNkIyMTAzNTAwMzg2RUEzIC8qIHBsdWdJbnMuY3NzICov
LAorCQkJCUU0QkJFRDBDMTRGNDAyNUQwMDNGMEI5OCAvKiBQcm9wZXJ0eVNldENTU1N0eWxlRGVj
bGFyYXRpb24uY3BwICovLAorCQkJCUU0QkJFRDBEMTRGNDAyNUQwMDNGMEI5OCAvKiBQcm9wZXJ0
eVNldENTU1N0eWxlRGVjbGFyYXRpb24uaCAqLywKKwkJCQk5M0NBNEM5RjA5REY5M0ZBMDBERjg2
NzcgLyogcXVpcmtzLmNzcyAqLywKKwkJCQlCQzQzNjhFNzBDMjI2RTMyMDA1RUZCNUYgLyogUmVj
dC5oICovLAorCQkJCUU0NEI0QkIxMTQxNjUwRDcwMDJCMUQ4QiAvKiBTZWxlY3RvckNoZWNrZXIu
Y3BwICovLAorCQkJCUU0NEI0QkIyMTQxNjUwRDcwMDJCMUQ4QiAvKiBTZWxlY3RvckNoZWNrZXIu
aCAqLywKKwkJCQk0MzJEM0ZFNzE4QTg2NTg0MDBEN0RDMDMgLyogU2VsZWN0b3JDaGVja2VyVGVz
dEZ1bmN0aW9ucy5oICovLAorCQkJCTQxNTA3MTU1MTY4NTA2NzMwMEMzQzdCMyAvKiBTZWxlY3Rv
ckZpbHRlci5jcHAgKi8sCisJCQkJNDE1MDcxNTYxNjg1MDY3MzAwQzNDN0IzIC8qIFNlbGVjdG9y
RmlsdGVyLmggKi8sCisJCQkJNDNCODVFRDYxOENCRUM5NzAwRTMxQUY0IC8qIFNlbGVjdG9yUHNl
dWRvQ2xhc3NBbmRDb21wYXRpYmlsaXR5RWxlbWVudE1hcC5pbiAqLywKKwkJCQkyNkFBMEY5QTE4
RDI5NzNEMDA0MTkzODEgLyogU2VsZWN0b3JQc2V1ZG9FbGVtZW50VHlwZU1hcC5pbiAqLywKKwkJ
CQk0MzEwN0JFMTE4Q0MxOURFMDBDQzE4RTggLyogU2VsZWN0b3JQc2V1ZG9UeXBlTWFwLmggKi8s
CisJCQkJOTQxODI3ODgxRDhCMjQyMjAwNDkyNzY0IC8qIFN0eWxlQ29sb3IuY3BwICovLAorCQkJ
CTk0MTgyNzg5MUQ4QjI0MjIwMDQ5Mjc2NCAvKiBTdHlsZUNvbG9yLmggKi8sCisJCQkJMEZGNTAy
NkUxMDJCQTk2NjAwNjZGMzlBIC8qIFN0eWxlTWVkaWEuY3BwICovLAorCQkJCTBGRjUwMjZGMTAy
QkE5NkEwMDY2RjM5QSAvKiBTdHlsZU1lZGlhLmggKi8sCisJCQkJMEZGNTAyNzAxMDJCQTk2QTAw
NjZGMzlBIC8qIFN0eWxlTWVkaWEuaWRsICovLAorCQkJCUE4MEU2REY5MEExOTkwNjcwMDdGQjhD
NSAvKiBTdHlsZVByb3BlcnRpZXMuY3BwICovLAorCQkJCUE4MEU2REZBMEExOTkwNjcwMDdGQjhD
NSAvKiBTdHlsZVByb3BlcnRpZXMuaCAqLywKKwkJCQlFMUIyNTEwNDE1MkEwQkFGMDA2OUI3Nzkg
LyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5jcHAgKi8sCisJCQkJRTFCMjUxMDUxNTJBMEJBRjAw
NjlCNzc5IC8qIFN0eWxlUHJvcGVydHlTaG9ydGhhbmQuaCAqLywKKwkJCQlFNEJCRUQ0QTE0RkNE
QkExMDAzRjBCOTggLyogU3R5bGVSdWxlLmNwcCAqLywKKwkJCQlFNEJCRUQ0QjE0RkNEQkExMDAz
RjBCOTggLyogU3R5bGVSdWxlLmggKi8sCisJCQkJRTQ5NDZFQUMxNTZFNjRERDAwRDMyOTdGIC8q
IFN0eWxlUnVsZUltcG9ydC5jcHAgKi8sCisJCQkJRTQ5NDZFQUQxNTZFNjRERDAwRDMyOTdGIC8q
IFN0eWxlUnVsZUltcG9ydC5oICovLAorCQkJCTBGOTRGMzdDMjM2NjExMzEwMDNBQTVDNyAvKiBT
dHlsZVJ1bGVUeXBlLmggKi8sCisJCQkJQThFQTgwMDUwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxl
U2hlZXQuY3BwICovLAorCQkJCUE4RUE4MDA0MEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0
LmggKi8sCisJCQkJODUwNjU2REMwQUFCNDREOTAwMkQxNUMwIC8qIFN0eWxlU2hlZXQuaWRsICov
LAorCQkJCUU0RjlFRUYwMTU2RDg0QzQwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMuY3Bw
ICovLAorCQkJCUU0RjlFRUYxMTU2RDg0QzQwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMu
aCAqLywKKwkJCQlBOEVBODAwMzBBMTk1MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuY3Bw
ICovLAorCQkJCUE4RUE4MDAyMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5oICov
LAorCQkJCTg1MDY1NkRGMEFBQjQ1NEYwMDJEMTVDMCAvKiBTdHlsZVNoZWV0TGlzdC5pZGwgKi8s
CisJCQkJOTNDQTRDQTIwOURGOTNGQTAwREY4Njc3IC8qIHN2Zy5jc3MgKi8sCisJCQkJQjIyMjdC
MDAwRDAwQkZGMTAwNzFCNzgyIC8qIFNWR0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAg
Ki8sCisJCQkJQjIyMjdCMDQwRDAwQkZGMTAwNzFCNzgyIC8qIFNWR0NTU1ZhbHVlS2V5d29yZHMu
aW4gKi8sCisJCQkJRkI0ODRGNEExNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0aW9u
cy5jcHAgKi8sCisJCQkJRkI0ODRGNEIxNzFGODIxRTAwMDQwNzU1IC8qIFRyYW5zZm9ybUZ1bmN0
aW9ucy5oICovLAorCQkJCTMxMDU1QkI4MUU0RkUxODkwMEVCNjA0RSAvKiBXZWJLaXRGb250RmFt
aWx5TmFtZXMuaW4gKi8sCisJCQkpOworCQkJcGF0aCA9IGNzczsKKwkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1c2VzVGFicyA9IDA7CisJCX07CisJCUY1
MjNEMkYzMDJERTQ0M0IwMTg2MzVDQSAvKiByZW5kZXJpbmcgKi8gPSB7CisJCQlpc2EgPSBQQlhH
cm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUZGQjY5OEM4MTgzMkYxMEIwMDE1OEEzMSAvKiBs
aW5lICovLAorCQkJCTQzOTA0NkMyMTJEQTI1Q0UwMEFGODBBMiAvKiBtYXRobWwgKi8sCisJCQkJ
RkQwOEE4NzkxNzVEMzkyNjAwMkNEMzYwIC8qIHNoYXBlcyAqLywKKwkJCQlCQzhDOEZBQTBERENE
MkYyMDBCNTkyRjQgLyogc3R5bGUgKi8sCisJCQkJMDg4QzJGNzQxMjM5MDA4MDAwM0Q2NUNFIC8q
IHN2ZyAqLywKKwkJCQlFNDdDMzkxRTFGRTZFMDhDMDBCQkJDNkIgLyogdXBkYXRpbmcgKi8sCisJ
CQkJQThDRkYwNEIwQTE1NEYwOTAwMEE0MjM0IC8qIEF1dG9UYWJsZUxheW91dC5jcHAgKi8sCisJ
CQkJQThDRkYwNDkwQTE1NEYwOTAwMEE0MjM0IC8qIEF1dG9UYWJsZUxheW91dC5oICovLAorCQkJ
CUJDRTc4OThBMTEyMEU4MDIwMDYwRUNFNSAvKiBCaWRpUnVuLmNwcCAqLywKKwkJCQlCQ0U3ODk4
NTExMjBFN0E2MDA2MEVDRTUgLyogQmlkaVJ1bi5oICovLAorCQkJCTU4QUVFMkYzMThENEJDQ0Yw
MDIyRTdGRSAvKiBCb3JkZXJFZGdlLmNwcCAqLywKKwkJCQk1ODk1NTZFQzE4RDRBNDQwMDA3NjRC
MDMgLyogQm9yZGVyRWRnZS5oICovLAorCQkJCUJDRUE0ODE1MDk3RDkzMDIwMDk0QzlFNCAvKiBC
cmVha0xpbmVzLmNwcCAqLywKKwkJCQlCQ0VBNDgxNjA5N0Q5MzAyMDA5NEM5RTQgLyogQnJlYWtM
aW5lcy5oICovLAorCQkJCUU0RjBCRTMwMjU3MTBBNzYwMDlFNzQzMSAvKiBDYXJldFJlY3RDb21w
dXRhdGlvbi5jcHAgKi8sCisJCQkJRTRGMEJFMkUyNTcxMEE3NTAwOUU3NDMxIC8qIENhcmV0UmVj
dENvbXB1dGF0aW9uLmggKi8sCisJCQkJRkI5MkRGNDkxNUZFRDA4NzAwOTk0NDMzIC8qIENsaXBQ
YXRoT3BlcmF0aW9uLmggKi8sCisJCQkJNTgwMzcxNUYxQTY2RjAwQTAwQkFGNTE5IC8qIENsaXBS
ZWN0LmNwcCAqLywKKwkJCQk1ODAzNzE2MDFBNjZGMDBBMDBCQUY1MTkgLyogQ2xpcFJlY3QuaCAq
LywKKwkJCQlCQ0RENDU0RDEyMzZDOTVDMDA5QTc5ODUgLyogQ29sdW1uSW5mby5oICovLAorCQkJ
CUNBN0U5QjQ4MjQzNjFEQzUwMDRFODlGNiAvKiBDb250ZW50ZnVsUGFpbnRDaGVja2VyLmNwcCAq
LywKKwkJCQlDQTdFOUI0NzI0MzYxREM1MDA0RTg5RjYgLyogQ29udGVudGZ1bFBhaW50Q2hlY2tl
ci5oICovLAorCQkJCTkzOTJGMTRGMEFEMTg2MjMwMDY5MUJENCAvKiBDb3VudGVyTm9kZS5jcHAg
Ki8sCisJCQkJOTM5MkYxNEIwQUQxODYxQjAwNjkxQkQ0IC8qIENvdW50ZXJOb2RlLmggKi8sCisJ
CQkJMEY1M0ZCODEyMTNCMUJCODAwQzQwRDM0IC8qIENTU0ZpbHRlci5jcHAgKi8sCisJCQkJMEY1
M0ZCODMyMTNCMUJCODAwQzQwRDM0IC8qIENTU0ZpbHRlci5oICovLAorCQkJCUUzQkJDMjQ1MjM4
MzU1MUEwMDZFQzM5RiAvKiBDU1NWYWx1ZUtleS5oICovLAorCQkJCUU0QThEMjE1MjI1NzhEQTAw
MEE4NDYzQyAvKiBFdmVudFJlZ2lvbi5jcHAgKi8sCisJCQkJRTRBOEQyMTQyMjU3OERBMDAwQTg0
NjNDIC8qIEV2ZW50UmVnaW9uLmggKi8sCisJCQkJQThDRkYwNDgwQTE1NEYwOTAwMEE0MjM0IC8q
IEZpeGVkVGFibGVMYXlvdXQuY3BwICovLAorCQkJCUE4Q0ZGMDRBMEExNTRGMDkwMDBBNDIzNCAv
KiBGaXhlZFRhYmxlTGF5b3V0LmggKi8sCisJCQkJOTRERDc5NzIxRTU0RTNBMjAwNThGQjgwIC8q
IEZsZXhpYmxlQm94QWxnb3JpdGhtLmNwcCAqLywKKwkJCQk5NERENzk3MzFFNTRFM0EyMDA1OEZC
ODAgLyogRmxleGlibGVCb3hBbGdvcml0aG0uaCAqLywKKwkJCQk5QTUyOEU4MTE3RDdGNTJGMDBB
QTk1MTggLyogRmxvYXRpbmdPYmplY3RzLmNwcCAqLywKKwkJCQk5QTUyOEU4MjE3RDdGNTJGMDBB
QTk1MTggLyogRmxvYXRpbmdPYmplY3RzLmggKi8sCisJCQkJOTM1QzQ3NzQwOUFDNEQ4RDAwQTZB
QUI0IC8qIEdhcFJlY3RzLmggKi8sCisJCQkJNTU5N0ZDQ0IyMDc2QzA2ODAwRDM1QkIwIC8qIEds
eXBoRGlzcGxheUxpc3RDYWNoZS5oICovLAorCQkJCUUxMTJGNDcwMUUzQTg1RjIwMEQ2Q0RGRCAv
KiBHcmlkLmNwcCAqLywKKwkJCQlFMTEyRjQ2RjFFM0E4NUQ4MDBENkNERkQgLyogR3JpZC5oICov
LAorCQkJCTBGQzY5MkVBMjU4NUM5NjcwMDk4RTNGOSAvKiBHcmlkQmFzZWxpbmVBbGlnbm1lbnQu
Y3BwICovLAorCQkJCTBGQzY5MkVDMjU4NUM5NjgwMDk4RTNGOSAvKiBHcmlkQmFzZWxpbmVBbGln
bm1lbnQuaCAqLywKKwkJCQkwRkM2OTJFRDI1ODVDOTY5MDA5OEUzRjkgLyogR3JpZExheW91dEZ1
bmN0aW9ucy5jcHAgKi8sCisJCQkJMEZDNjkyRUUyNTg1Qzk2QTAwOThFM0Y5IC8qIEdyaWRMYXlv
dXRGdW5jdGlvbnMuaCAqLywKKwkJCQlFMTJERTcxNTFFNEI3NDg3MDBGOUFDQ0YgLyogR3JpZFRy
YWNrU2l6aW5nQWxnb3JpdGhtLmNwcCAqLywKKwkJCQlFMTJERTcxNjFFNEI3NDg3MDBGOUFDQ0Yg
LyogR3JpZFRyYWNrU2l6aW5nQWxnb3JpdGhtLmggKi8sCisJCQkJQ0RDRkFCQkMxOEMwQUYxOTAw
NkY4NDUwIC8qIEhpZ2hsaWdodERhdGEuY3BwICovLAorCQkJCUNEQ0ZBQkJCMThDMEFFMzEwMDZG
ODQ1MCAvKiBIaWdobGlnaHREYXRhLmggKi8sCisJCQkJNDk2OUIwRjAxM0QwQjMzRjAwREYzNTIx
IC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5jcHAgKi8sCisJCQkJNDk2OUIwRjExM0QwQjMz
RjAwREYzNTIxIC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5oICovLAorCQkJCTJEODI4N0Y0
MTZFNEEwMzgwMDg2QkQwMCAvKiBIaXRUZXN0TG9jYXRpb24uY3BwICovLAorCQkJCTJEODI4N0Y1
MTZFNEEwMzgwMDg2QkQwMCAvKiBIaXRUZXN0TG9jYXRpb24uaCAqLywKKwkJCQk5MzA5MDg5MDBB
RjdFREU0MDA4MURGMDEgLyogSGl0VGVzdFJlcXVlc3QuaCAqLywKKwkJCQk5MzA3RjFENTBBRjJE
NTkwMDBEQkEzMUEgLyogSGl0VGVzdFJlc3VsdC5jcHAgKi8sCisJCQkJOTMwN0YxRDYwQUYyRDU5
MDAwREJBMzFBIC8qIEhpdFRlc3RSZXN1bHQuaCAqLywKKwkJCQlCNTFBMkY0MDE3RDdENURBMDA3
MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHAgKi8sCisJCQkJQjUxQTJGM0UxN0Q3
RDNBNDAwNzI1MTdBIC8qIEltYWdlUXVhbGl0eUNvbnRyb2xsZXIuaCAqLywKKwkJCQk5MzBDOTBE
QzE5Q0Y5NjUzMDBENkMyMUEgLyogSW5saW5lSXRlcmF0b3IuY3BwICovLAorCQkJCUJDRTc4OTE1
MTEyMEQ2MDgwMDYwRUNFNSAvKiBJbmxpbmVJdGVyYXRvci5oICovLAorCQkJCTBGRUMxMjBCMjJC
RjJDQzcwMDRFOUQzNSAvKiBMYXllckFuY2VzdG9yQ2xpcHBpbmdTdGFjay5jcHAgKi8sCisJCQkJ
MEZFQzEyMDkyMkJGMkNDNzAwNEU5RDM1IC8qIExheWVyQW5jZXN0b3JDbGlwcGluZ1N0YWNrLmgg
Ki8sCisJCQkJNTgwMzcxNjMxQTY2RjFEMzAwQkFGNTE5IC8qIExheWVyRnJhZ21lbnQuaCAqLywK
KwkJCQkwRjY5RjJCNzIyOEI5OEZGMDA4RDM1NjUgLyogTGF5ZXJPdmVybGFwTWFwLmNwcCAqLywK
KwkJCQkwRjY5RjJCNjIyOEI5OEZGMDA4RDM1NjUgLyogTGF5ZXJPdmVybGFwTWFwLmggKi8sCisJ
CQkJOUJEMUY2ODExRjA0NjMxMDAwMUM5Q0REIC8qIExheW91dERpc2FsbG93ZWRTY29wZS5jcHAg
Ki8sCisJCQkJOUJEMUY2ODAxRjA0NjJCODAwMUM5Q0REIC8qIExheW91dERpc2FsbG93ZWRTY29w
ZS5oICovLAorCQkJCUExMjBBQ0ExMTNGOTk4NDYwMEZFNEFDNyAvKiBMYXlvdXRSZXBhaW50ZXIu
Y3BwICovLAorCQkJCUExMjBBQ0EwMTNGOTk4MzcwMEZFNEFDNyAvKiBMYXlvdXRSZXBhaW50ZXIu
aCAqLywKKwkJCQlBOENGRjZDQTBBMTU2MUNEMDAwQTQyMzQgLyogTGVnYWN5RWxsaXBzaXNCb3gu
Y3BwICovLAorCQkJCUE4Q0ZGNkJEMEExNTYxMTgwMDBBNDIzNCAvKiBMZWdhY3lFbGxpcHNpc0Jv
eC5oICovLAorCQkJCUE4Q0ZGNURGMEExNTVBMDUwMDBBNDIzNCAvKiBMZWdhY3lJbmxpbmVCb3gu
Y3BwICovLAorCQkJCUE4Q0ZGNURFMEExNTVBMDUwMDBBNDIzNCAvKiBMZWdhY3lJbmxpbmVCb3gu
aCAqLywKKwkJCQlCNTdDQjUyQzE4MkEzRUVEMDA3OUE2NDcgLyogTGVnYWN5SW5saW5lRWxlbWVu
dEJveC5jcHAgKi8sCisJCQkJQjU3Q0I1MkIxODJBMzdGNjAwNzlBNjQ3IC8qIExlZ2FjeUlubGlu
ZUVsZW1lbnRCb3guaCAqLywKKwkJCQlBOENGRjVERDBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5
SW5saW5lRmxvd0JveC5jcHAgKi8sCisJCQkJQThDRkY1REMwQTE1NUEwNTAwMEE0MjM0IC8qIExl
Z2FjeUlubGluZUZsb3dCb3guaCAqLywKKwkJCQlCQ0VBNDgxQTA5N0Q5MzAyMDA5NEM5RTQgLyog
TGVnYWN5SW5saW5lVGV4dEJveC5jcHAgKi8sCisJCQkJQkNFQTQ4MUIwOTdEOTMwMjAwOTRDOUU0
IC8qIExlZ2FjeUlubGluZVRleHRCb3guaCAqLywKKwkJCQlCQ0VBNDgxMzA5N0Q5MzAyMDA5NEM5
RTQgLyogTGVnYWN5TGluZUxheW91dC5jcHAgKi8sCisJCQkJRTRBMUFDNzgyMkZBRkQ1MDAwMTdC
NzVCIC8qIExlZ2FjeUxpbmVMYXlvdXQuaCAqLywKKwkJCQlBOENGRjVFMDBBMTU1QTA1MDAwQTQy
MzQgLyogTGVnYWN5Um9vdElubGluZUJveC5jcHAgKi8sCisJCQkJQThDRkY1REEwQTE1NUEwNTAw
MEE0MjM0IC8qIExlZ2FjeVJvb3RJbmxpbmVCb3guaCAqLywKKwkJCQk5QkEyNzNGMzE3MjIwNkJC
MDA5N0NFNDcgLyogTG9naWNhbFNlbGVjdGlvbk9mZnNldENhY2hlcy5oICovLAorCQkJCUNFMTg2
NjQyMUY3MkU1QjQwMEEwQ0FCNiAvKiBNYXJrZWRUZXh0LmNwcCAqLywKKwkJCQlDRTE4NjY0MzFG
NzJFNUI0MDBBMENBQjYgLyogTWFya2VkVGV4dC5oICovLAorCQkJCUNERTdGQzQyMTgxOTA0QjEw
MDJCQkI3NyAvKiBPcmRlckl0ZXJhdG9yLmNwcCAqLywKKwkJCQlDREU3RkM0MzE4MTkwNEIxMDAy
QkJCNzcgLyogT3JkZXJJdGVyYXRvci5oICovLAorCQkJCTM3NzRBQkEzMEZBMjFFQjQwMEFEN0RF
OSAvKiBPdmVybGFwVGVzdFJlcXVlc3RDbGllbnQuaCAqLywKKwkJCQk5Mzc3QUI5RjE1REVGRUVG
MDAzMUZEMDQgLyogUGFnaW5hdGlvbi5oICovLAorCQkJCTU1RUM5NTk3MjA2OUM5MkQwMDdERDBB
OSAvKiBQYWludEZyZXF1ZW5jeVRyYWNrZXIuaCAqLywKKwkJCQkwODg1MDY3RDExREEwNDVCMDAx
ODJCOTggLyogUGFpbnRJbmZvLmggKi8sCisJCQkJMDg4NTA2N0UxMURBMDQ1QjAwMTgyQjk4IC8q
IFBhaW50UGhhc2UuaCAqLywKKwkJCQlCMkIxRjcxNDBEMDBDQUE4MDA0QUVBNjQgLyogUG9pbnRl
ckV2ZW50c0hpdFJ1bGVzLmNwcCAqLywKKwkJCQlCMkIxRjcxNTBEMDBDQUE4MDA0QUVBNjQgLyog
UG9pbnRlckV2ZW50c0hpdFJ1bGVzLmggKi8sCisJCQkJMEZDMjc2QkEyNkRBRjlFOTAwOTNFOEVE
IC8qIFJlZmVyZW5jZWRTVkdSZXNvdXJjZXMuY3BwICovLAorCQkJCTBGQzI3NkI4MjZEQUY5Qjcw
MDkzRThFRCAvKiBSZWZlcmVuY2VkU1ZHUmVzb3VyY2VzLmggKi8sCisJCQkJQjU5RUQyM0ExODI3
MjY3OTAwNkQ1NjRDIC8qIFJlbmRlckFuY2VzdG9ySXRlcmF0b3IuaCAqLywKKwkJCQk3Q0Q0OTRD
QTFBODZFQjFEMDAwQTg3RUMgLyogUmVuZGVyQXR0YWNobWVudC5jcHAgKi8sCisJCQkJN0NENDk0
Q0IxQTg2RUIxRDAwMEE4N0VDIC8qIFJlbmRlckF0dGFjaG1lbnQuaCAqLywKKwkJCQlCQ0VBNDgy
MDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyQmxvY2suY3BwICovLAorCQkJCUJDRUE0ODIxMDk3
RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCbG9jay5oICovLAorCQkJCUJDRkI0NUY0MTdEOEU0OTQw
MDQ0NDQ0NiAvKiBSZW5kZXJCbG9ja0Zsb3cuY3BwICovLAorCQkJCUJDRkI0NUYzMTdEOEUzOTIw
MDQ0NDQ0NiAvKiBSZW5kZXJCbG9ja0Zsb3cuaCAqLywKKwkJCQlCQ0VBNDgyMjA5N0Q5MzAyMDA5
NEM5RTQgLyogUmVuZGVyQm94LmNwcCAqLywKKwkJCQlCQ0VBNDgyMzA5N0Q5MzAyMDA5NEM5RTQg
LyogUmVuZGVyQm94LmggKi8sCisJCQkJQkNFQjE3OUIxNDMzNzlGNTAwNTJFQUU5IC8qIFJlbmRl
ckJveEZyYWdtZW50SW5mby5oICovLAorCQkJCUJDOTZEQjQ1MEYzQTg4MjIwMDU3M0NCMyAvKiBS
ZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAgKi8sCisJCQkJQkM5NkRCNDIwRjNBODgwRTAwNTczQ0Iz
IC8qIFJlbmRlckJveE1vZGVsT2JqZWN0LmggKi8sCisJCQkJQkNFQTQ4MjYwOTdEOTMwMjAwOTRD
OUU0IC8qIFJlbmRlckJ1dHRvbi5jcHAgKi8sCisJCQkJQkNFQTQ4MjcwOTdEOTMwMjAwOTRDOUU0
IC8qIFJlbmRlckJ1dHRvbi5oICovLAorCQkJCUI1NjU3OUI0MTgyNEQxMkEwMEU3OUYyMyAvKiBS
ZW5kZXJDaGlsZEl0ZXJhdG9yLmggKi8sCisJCQkJQkNFNDQxMzExMkY3NDhFMjAwOUI4NEI4IC8q
IFJlbmRlckNvbWJpbmVUZXh0LmNwcCAqLywKKwkJCQlCQ0U0NDEzMjEyRjc0OEUyMDA5Qjg0Qjgg
LyogUmVuZGVyQ29tYmluZVRleHQuaCAqLywKKwkJCQk5MzkyRjE0MzBBRDE4NUZFMDA2OTFCRDQg
LyogUmVuZGVyQ291bnRlci5jcHAgKi8sCisJCQkJOTM5MkYxNDEwQUQxODVGNDAwNjkxQkQ0IC8q
IFJlbmRlckNvdW50ZXIuaCAqLywKKwkJCQlCQ0VBNDgyRTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVu
ZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmNwcCAqLywKKwkJCQlCQ0VBNDgyRjA5N0Q5MzAyMDA5
NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmggKi8sCisJCQkJODM2REFBMDUx
Q0VBQjdDRDAwQTJCNzA3IC8qIFJlbmRlckRlc2NlbmRhbnRJdGVyYXRvci5oICovLAorCQkJCUQz
MDI3NTQ1MTJBNUZFODQwMDRCRDgyOCAvKiBSZW5kZXJEZXRhaWxzTWFya2VyLmNwcCAqLywKKwkJ
CQlEMzAyNzU0NjEyQTVGRTg0MDA0QkQ4MjggLyogUmVuZGVyRGV0YWlsc01hcmtlci5oICovLAor
CQkJCUU0M0EwMjNDMTdFQjM3MTMwMDRDREQyNSAvKiBSZW5kZXJFbGVtZW50LmNwcCAqLywKKwkJ
CQlFNDNBMDIzQTE3RUIzNzBBMDA0Q0REMjUgLyogUmVuZGVyRWxlbWVudC5oICovLAorCQkJCTBG
NUI3QTUyMTBGNjVEN0EwMDM3NjMwMiAvKiBSZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAgKi8sCisJ
CQkJMEY1QjdBNTMxMEY2NUQ3QTAwMzc2MzAyIC8qIFJlbmRlckVtYmVkZGVkT2JqZWN0LmggKi8s
CisJCQkJMDY2Qzc3MkUwQUI2MDNGRDAwMjM4Q0M0IC8qIFJlbmRlckZpbGVVcGxvYWRDb250cm9s
LmNwcCAqLywKKwkJCQkwNjZDNzcyRjBBQjYwM0ZEMDAyMzhDQzQgLyogUmVuZGVyRmlsZVVwbG9h
ZENvbnRyb2wuaCAqLywKKwkJCQk1M0M4Mjk4QjEzRDhEOTI3MDBERTJERUIgLyogUmVuZGVyRmxl
eGlibGVCb3guY3BwICovLAorCQkJCTUzQzgyOThDMTNEOEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJG
bGV4aWJsZUJveC5oICovLAorCQkJCUQ3MEFENjU1MTNFMTM0MkIwMDVCNTBCNCAvKiBSZW5kZXJG
cmFnbWVudENvbnRhaW5lci5jcHAgKi8sCisJCQkJRDcwQUQ2NTYxM0UxMzQyQjAwNUI1MEI0IC8q
IFJlbmRlckZyYWdtZW50Q29udGFpbmVyLmggKi8sCisJCQkJQkNFOTNGNDYxNTE3QzZENTAwOEND
Rjc0IC8qIFJlbmRlckZyYWdtZW50Q29udGFpbmVyU2V0LmNwcCAqLywKKwkJCQlCQ0U5M0Y0NDE1
MTdDNTY3MDA4Q0NGNzQgLyogUmVuZGVyRnJhZ21lbnRDb250YWluZXJTZXQuaCAqLywKKwkJCQk1
MDhDQ0E0RTEzQ0YxMDZCMDAzMTUxRjMgLyogUmVuZGVyRnJhZ21lbnRlZEZsb3cuY3BwICovLAor
CQkJCTUwOENDQTREMTNDRjEwNkIwMDMxNTFGMyAvKiBSZW5kZXJGcmFnbWVudGVkRmxvdy5oICov
LAorCQkJCUE4NzFERUNDMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZS5jcHAgKi8sCisJ
CQkJQTg3MURFQ0IwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lLmggKi8sCisJCQkJMEZE
MzA4MEMxMTdDRjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5jcHAgKi8sCisJCQkJMEZE
MzA4MEQxMTdDRjdFNzAwQTc5MUY3IC8qIFJlbmRlckZyYW1lQmFzZS5oICovLAorCQkJCUE4NzFE
RUNBMEExNTMwQzcwMEIxMkE2OCAvKiBSZW5kZXJGcmFtZVNldC5jcHAgKi8sCisJCQkJQTg3MURF
QzkwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lU2V0LmggKi8sCisJCQkJQ0RFQTdDODMx
Mjc2MjMwNDAwQjg0NkREIC8qIFJlbmRlckZ1bGxTY3JlZW4uY3BwICovLAorCQkJCUNERUE3Qzgy
MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2NyZWVuLmggKi8sCisJCQkJMEYzRjBFNTcx
NTcwMzBDMzAwNkRBNTdGIC8qIFJlbmRlckdlb21ldHJ5TWFwLmNwcCAqLywKKwkJCQkwRjNGMEU1
ODE1NzAzMEMzMDA2REE1N0YgLyogUmVuZGVyR2VvbWV0cnlNYXAuaCAqLywKKwkJCQlCQzEyOEIw
MDEzN0M4RDQ2MDBDQUM4NDUgLyogUmVuZGVyR3JpZC5jcHAgKi8sCisJCQkJQkMxMjhBNzIxMzdD
ODY3QzAwQ0FDODQ1IC8qIFJlbmRlckdyaWQuaCAqLywKKwkJCQlCQ0VBNDgyQTA5N0Q5MzAyMDA5
NEM5RTQgLyogUmVuZGVySFRNTENhbnZhcy5jcHAgKi8sCisJCQkJQkNFQTQ4MkIwOTdEOTMwMjAw
OTRDOUU0IC8qIFJlbmRlckhUTUxDYW52YXMuaCAqLywKKwkJCQkwRkQzMDhEMzExN0QxNjg0MDBB
NzkxRjcgLyogUmVuZGVySUZyYW1lLmNwcCAqLywKKwkJCQkwRkQzMDhENDExN0QxNjg0MDBBNzkx
RjcgLyogUmVuZGVySUZyYW1lLmggKi8sCisJCQkJQkNFQTQ4MzYwOTdEOTMwMjAwOTRDOUU0IC8q
IFJlbmRlckltYWdlLmNwcCAqLywKKwkJCQlCQ0VBNDgzNzA5N0Q5MzAyMDA5NEM5RTQgLyogUmVu
ZGVySW1hZ2UuaCAqLywKKwkJCQkwOEYyRjAwNzEyMTNFNjE3MDBEQ0VDNDggLyogUmVuZGVySW1h
Z2VSZXNvdXJjZS5jcHAgKi8sCisJCQkJMDhGMkYwMDgxMjEzRTYxNzAwRENFQzQ4IC8qIFJlbmRl
ckltYWdlUmVzb3VyY2UuaCAqLywKKwkJCQkwODY0MUQ0NTEyMTQyRjdEMDA4REU5RjYgLyogUmVu
ZGVySW1hZ2VSZXNvdXJjZVN0eWxlSW1hZ2UuY3BwICovLAorCQkJCTA4NjQxRDQ2MTIxNDJGN0Qw
MDhERTlGNiAvKiBSZW5kZXJJbWFnZVJlc291cmNlU3R5bGVJbWFnZS5oICovLAorCQkJCUJDRUE0
ODM4MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJJbmxpbmUuY3BwICovLAorCQkJCUJDRUE0ODM5
MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJJbmxpbmUuaCAqLywKKwkJCQlCNTk1RkY0NjE4MjRD
RUUzMDBGRjUxQ0QgLyogUmVuZGVySXRlcmF0b3IuaCAqLywKKwkJCQlCQ0VBNDgzQTA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyTGF5ZXIuY3BwICovLAorCQkJCUJDRUE0ODNCMDk3RDkzMDIwMDk0
QzlFNCAvKiBSZW5kZXJMYXllci5oICovLAorCQkJCTBGNTgwQ0ZDMEYxMkRFOUIwMDUxRDY4OSAv
KiBSZW5kZXJMYXllckJhY2tpbmcuY3BwICovLAorCQkJCTBGNTgwQ0ZCMEYxMkRFOUIwMDUxRDY4
OSAvKiBSZW5kZXJMYXllckJhY2tpbmcuaCAqLywKKwkJCQkwRjU4MENGQTBGMTJERTlCMDA1MUQ2
ODkgLyogUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcCAqLywKKwkJCQkwRjU4MENGOTBGMTJERTlC
MDA1MUQ2ODkgLyogUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmggKi8sCisJCQkJMEY1M0ZCOEIyMTNC
NzY4NDAwQzQwRDM0IC8qIFJlbmRlckxheWVyRmlsdGVycy5jcHAgKi8sCisJCQkJMEY1M0ZCODky
MTNCNzY4NDAwQzQwRDM0IC8qIFJlbmRlckxheWVyRmlsdGVycy5oICovLAorCQkJCTNDMjQ0RkU1
QTM3NUFDNjMzRjg4QkU2RiAvKiBSZW5kZXJMYXllck1vZGVsT2JqZWN0LmNwcCAqLywKKwkJCQkz
QzI0NEZFNEEzNzVBQzYzM0Y4OEJFNkYgLyogUmVuZGVyTGF5ZXJNb2RlbE9iamVjdC5oICovLAor
CQkJCTBGNTNGQjgzMjEzQjc4NjQwMEM0MEQzNCAvKiBSZW5kZXJMYXllclNjcm9sbGFibGVBcmVh
LmNwcCAqLywKKwkJCQkwRjUzRkI4NDIxM0I3ODY0MDBDNDBEMzQgLyogUmVuZGVyTGF5ZXJTY3Jv
bGxhYmxlQXJlYS5oICovLAorCQkJCTJEOTA2NjA0MEJFMTQxRDQwMDk1Njk5OCAvKiBSZW5kZXJM
YXlvdXRTdGF0ZS5jcHAgKi8sCisJCQkJMkQ5MDY2MDUwQkUxNDFENDAwOTU2OTk4IC8qIFJlbmRl
ckxheW91dFN0YXRlLmggKi8sCisJCQkJQkMzM0ZCMUEwRjMwRUU4NTAwMkNERDdDIC8qIFJlbmRl
ckxpbmVCb3hMaXN0LmNwcCAqLywKKwkJCQkwQkUwMzBBMTBGMzExMkZCMDAzQzFBNDYgLyogUmVu
ZGVyTGluZUJveExpc3QuaCAqLywKKwkJCQlCQ0VBNDgyNDA5N0Q5MzAyMDA5NEM5RTQgLyogUmVu
ZGVyTGluZUJyZWFrLmNwcCAqLywKKwkJCQlCQ0VBNDgyNTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVu
ZGVyTGluZUJyZWFrLmggKi8sCisJCQkJQUJCNTQxOUMwQUNEREZFNDAwMjgyMEVCIC8qIFJlbmRl
ckxpc3RCb3guY3BwICovLAorCQkJCUFCQjU0MTlEMEFDRERGRTQwMDI4MjBFQiAvKiBSZW5kZXJM
aXN0Qm94LmggKi8sCisJCQkJQThFQTdBNDgwQTE5MUE1MjAwQThFRjVGIC8qIFJlbmRlckxpc3RJ
dGVtLmNwcCAqLywKKwkJCQlBOEVBN0E0QzBBMTkxQTUyMDBBOEVGNUYgLyogUmVuZGVyTGlzdEl0
ZW0uaCAqLywKKwkJCQlBOEVBN0E0QjBBMTkxQTUyMDBBOEVGNUYgLyogUmVuZGVyTGlzdE1hcmtl
ci5jcHAgKi8sCisJCQkJQThFQTdBNEEwQTE5MUE1MjAwQThFRjVGIC8qIFJlbmRlckxpc3RNYXJr
ZXIuaCAqLywKKwkJCQkwRjU2MDI4RTBFNEI3NjU4MDA2NUIwMzggLyogUmVuZGVyTWFycXVlZS5j
cHAgKi8sCisJCQkJMEY1NjAyOEQwRTRCNzY1ODAwNjVCMDM4IC8qIFJlbmRlck1hcnF1ZWUuaCAq
LywKKwkJCQlFNEMyNzk1NjBDRjk3NDE5MDBFOTdCOTggLyogUmVuZGVyTWVkaWEuY3BwICovLAor
CQkJCUU0QzI3OTU3MENGOTc0MTkwMEU5N0I5OCAvKiBSZW5kZXJNZWRpYS5oICovLAorCQkJCUFC
RERGRTczMEE1QzZFNkYwMEEzRTExRCAvKiBSZW5kZXJNZW51TGlzdC5jcHAgKi8sCisJCQkJQUJE
REZFNzQwQTVDNkU3MDAwQTNFMTFEIC8qIFJlbmRlck1lbnVMaXN0LmggKi8sCisJCQkJQTQ1NDQy
NEMxMTlCMzY4NzAwOUJFOTEyIC8qIFJlbmRlck1ldGVyLmNwcCAqLywKKwkJCQlBNDU0NDI0RDEx
OUIzNjg3MDA5QkU5MTIgLyogUmVuZGVyTWV0ZXIuaCAqLywKKwkJCQlCQ0I0Nzc5ODI1RDQ2RUZG
MDA1RUYwQzggLyogUmVuZGVyTW9kZWwuY3BwICovLAorCQkJCUJDQjQ3Nzk3MjVENDZFRkYwMDVF
RjBDOCAvKiBSZW5kZXJNb2RlbC5oICovLAorCQkJCTFBMzU4NkREMTUyNjRDNDUwMDIyQTY1OSAv
KiBSZW5kZXJNdWx0aUNvbHVtbkZsb3cuY3BwICovLAorCQkJCTFBMzU4NkRFMTUyNjRDNDUwMDIy
QTY1OSAvKiBSZW5kZXJNdWx0aUNvbHVtbkZsb3cuaCAqLywKKwkJCQlCQ0UzMkI5RDE1MTdDMjI3
MDBGNTQyRUMgLyogUmVuZGVyTXVsdGlDb2x1bW5TZXQuY3BwICovLAorCQkJCUJDRTMyQjlCMTUx
N0MwQjEwMEY1NDJFQyAvKiBSZW5kZXJNdWx0aUNvbHVtblNldC5oICovLAorCQkJCUJDMUE3RDk1
MThGQ0I1QjAwMDQyMTg3OSAvKiBSZW5kZXJNdWx0aUNvbHVtblNwYW5uZXJQbGFjZWhvbGRlci5j
cHAgKi8sCisJCQkJQkMxQTdEOTYxOEZDQjVCMDAwNDIxODc5IC8qIFJlbmRlck11bHRpQ29sdW1u
U3Bhbm5lclBsYWNlaG9sZGVyLmggKi8sCisJCQkJQkNFQTQ4NDAwOTdEOTMwMjAwOTRDOUU0IC8q
IFJlbmRlck9iamVjdC5jcHAgKi8sCisJCQkJQkNFQTQ4NDEwOTdEOTMwMjAwOTRDOUU0IC8qIFJl
bmRlck9iamVjdC5oICovLAorCQkJCTgzODg2NzM0MUQxM0JBNTkwMDM2OTdEMCAvKiBSZW5kZXJP
YmplY3RFbnVtcy5oICovLAorCQkJCUJDRkE5MzA3MTAzMzMxOTMwMDdCMjVEMSAvKiBSZW5kZXJP
dmVyZmxvdy5oICovLAorCQkJCUE0M0JGNTlBMTE0OTI5MjgwMEM2NDNDQSAvKiBSZW5kZXJQcm9n
cmVzcy5jcHAgKi8sCisJCQkJQTQzQkY1OUIxMTQ5MjkyODAwQzY0M0NBIC8qIFJlbmRlclByb2dy
ZXNzLmggKi8sCisJCQkJQURFMTY3MzYxODEwNTBDMzAwNDYzQTJFIC8qIFJlbmRlclB0ci5oICov
LAorCQkJCTVBNTc0RjIyMTMxREI5MzkwMDQ3MUI4OCAvKiBSZW5kZXJRdW90ZS5jcHAgKi8sCisJ
CQkJNUE1NzRGMjMxMzFEQjkzOTAwNDcxQjg4IC8qIFJlbmRlclF1b3RlLmggKi8sCisJCQkJQTg3
MURGREUwQTE1Mzc2QjAwQjEyQTY4IC8qIFJlbmRlclJlcGxhY2VkLmNwcCAqLywKKwkJCQlBODcx
REZERjBBMTUzNzZCMDBCMTJBNjggLyogUmVuZGVyUmVwbGFjZWQuaCAqLywKKwkJCQlCQ0E4NDZE
NDBEQzY3QTM1MDAyNkMzMDkgLyogUmVuZGVyUmVwbGljYS5jcHAgKi8sCisJCQkJQkNBODQ2RDUw
REM2N0EzNTAwMjZDMzA5IC8qIFJlbmRlclJlcGxpY2EuaCAqLywKKwkJCQkxNDc5RkFFNTEwOUFF
Mzc1MDBERUQ2NTUgLyogUmVuZGVyUnVieS5jcHAgKi8sCisJCQkJMTQ3OUZBRTYxMDlBRTM3NTAw
REVENjU1IC8qIFJlbmRlclJ1YnkuaCAqLywKKwkJCQkxNDc5RkFFNzEwOUFFMzc1MDBERUQ2NTUg
LyogUmVuZGVyUnVieUJhc2UuY3BwICovLAorCQkJCTE0NzlGQUU4MTA5QUUzNzUwMERFRDY1NSAv
KiBSZW5kZXJSdWJ5QmFzZS5oICovLAorCQkJCTE0NzlGQUU5MTA5QUUzNzUwMERFRDY1NSAvKiBS
ZW5kZXJSdWJ5UnVuLmNwcCAqLywKKwkJCQkxNDc5RkFFQTEwOUFFMzc1MDBERUQ2NTUgLyogUmVu
ZGVyUnVieVJ1bi5oICovLAorCQkJCTE0NzlGQUVCMTA5QUUzNzUwMERFRDY1NSAvKiBSZW5kZXJS
dWJ5VGV4dC5jcHAgKi8sCisJCQkJMTQ3OUZBRUMxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1
YnlUZXh0LmggKi8sCisJCQkJQkMzQkU5OTAwRTlDMUM3QzAwODM1NTg4IC8qIFJlbmRlclNjcm9s
bGJhci5jcHAgKi8sCisJCQkJQkMzQkU5OTEwRTlDMUM3QzAwODM1NTg4IC8qIFJlbmRlclNjcm9s
bGJhci5oICovLAorCQkJCUJDM0JFOUFBMEU5QzI0MjAwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxi
YXJQYXJ0LmNwcCAqLywKKwkJCQlCQzNCRTk5MjBFOUMxQzdDMDA4MzU1ODggLyogUmVuZGVyU2Ny
b2xsYmFyUGFydC5oICovLAorCQkJCUJDM0JFOUE0MEU5QzIzOTYwMDgzNTU4OCAvKiBSZW5kZXJT
Y3JvbGxiYXJUaGVtZS5jcHAgKi8sCisJCQkJQkMzQkU5OTgwRTlDMUU1RDAwODM1NTg4IC8qIFJl
bmRlclNjcm9sbGJhclRoZW1lLmggKi8sCisJCQkJNDU4RkU0MDcxNTg5REYwQjAwNTYwOUU2IC8q
IFJlbmRlclNlYXJjaEZpZWxkLmNwcCAqLywKKwkJCQk0NThGRTQwODE1ODlERjBCMDA1NjA5RTYg
LyogUmVuZGVyU2VhcmNoRmllbGQuaCAqLywKKwkJCQk1OERFRUQ4NTE5ODczRkYwMDA4ODhGRjMg
LyogUmVuZGVyU2VsZWN0aW9uSW5mby5jcHAgKi8sCisJCQkJMEYxMUE1NEUwRjM5MjMzMTAwQzM3
ODg0IC8qIFJlbmRlclNlbGVjdGlvbkluZm8uaCAqLywKKwkJCQlBQjI0N0E2QTBBRkQ2MzgzMDAz
RkE1RkQgLyogUmVuZGVyU2xpZGVyLmNwcCAqLywKKwkJCQlBQjI0N0E2QjBBRkQ2MzgzMDAzRkE1
RkQgLyogUmVuZGVyU2xpZGVyLmggKi8sCisJCQkJQThERjRBRTIwOTgwQzQyQzAwNTI5ODFCIC8q
IFJlbmRlclRhYmxlLmNwcCAqLywKKwkJCQlBOERGNEFFMTA5ODBDNDJDMDA1Mjk4MUIgLyogUmVu
ZGVyVGFibGUuaCAqLywKKwkJCQk2RUQ4NzhDMjE0NzQ5M0Y0MDA0QzM1OTcgLyogUmVuZGVyVGFi
bGVDYXB0aW9uLmNwcCAqLywKKwkJCQk2RUQ4NzhDMzE0NzQ5M0Y0MDA0QzM1OTcgLyogUmVuZGVy
VGFibGVDYXB0aW9uLmggKi8sCisJCQkJQThERjRBRTAwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRl
clRhYmxlQ2VsbC5jcHAgKi8sCisJCQkJQThERjRBREYwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRl
clRhYmxlQ2VsbC5oICovLAorCQkJCUE4REY0QURFMDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJU
YWJsZUNvbC5jcHAgKi8sCisJCQkJQThERjRBRTcwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRh
YmxlQ29sLmggKi8sCisJCQkJQThERjRBRTYwOTgwQzQyQzAwNTI5ODFCIC8qIFJlbmRlclRhYmxl
Um93LmNwcCAqLywKKwkJCQlBOERGNEFFNDA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVS
b3cuaCAqLywKKwkJCQlBOERGNEFFMzA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVTZWN0
aW9uLmNwcCAqLywKKwkJCQlBOERGNEFFNTA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGVT
ZWN0aW9uLmggKi8sCisJCQkJQkNFQTQ4NEMwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclRleHQu
Y3BwICovLAorCQkJCUJDRUE0ODREMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0LmggKi8s
CisJCQkJQUI2N0QxQTYwOTdGM0FFMzAwRjkzOTJFIC8qIFJlbmRlclRleHRDb250cm9sLmNwcCAq
LywKKwkJCQlBQjY3RDFBNzA5N0YzQUUzMDBGOTM5MkUgLyogUmVuZGVyVGV4dENvbnRyb2wuaCAq
LywKKwkJCQkwODNEQUVBMjBGMDFBN0ZCMDAzNDI3NTQgLyogUmVuZGVyVGV4dENvbnRyb2xNdWx0
aUxpbmUuY3BwICovLAorCQkJCTA4M0RBRUEzMEYwMUE3RkIwMDM0Mjc1NCAvKiBSZW5kZXJUZXh0
Q29udHJvbE11bHRpTGluZS5oICovLAorCQkJCTA4M0RBRUE0MEYwMUE3RkIwMDM0Mjc1NCAvKiBS
ZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwICovLAorCQkJCTA4M0RBRUE1MEYwMUE3RkIw
MDM0Mjc1NCAvKiBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaCAqLywKKwkJCQlCQ0VBNDg0
RTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGV4dEZyYWdtZW50LmNwcCAqLywKKwkJCQlCQ0VB
NDg0RjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGV4dEZyYWdtZW50LmggKi8sCisJCQkJRTRD
OTFBMTcxODA5OTlGQjAwQTE3RjZEIC8qIFJlbmRlclRleHRMaW5lQm94ZXMuY3BwICovLAorCQkJ
CUU0QzkxQTE1MTgwOTk5RjEwMEExN0Y2RCAvKiBSZW5kZXJUZXh0TGluZUJveGVzLmggKi8sCisJ
CQkJQkNFQTQ4NEEwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclRoZW1lLmNwcCAqLywKKwkJCQlC
Q0VBNDg0QjA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGhlbWUuaCAqLywKKwkJCQkxQTI5OUZF
NjFEN0Y1RkE2MDBBNjAwOTMgLyogUmVuZGVyVGhlbWVDb2NvYS5oICovLAorCQkJCTFBMjk5RkU1
MUQ3RjVGQTYwMEE2MDA5MyAvKiBSZW5kZXJUaGVtZUNvY29hLm1tICovLAorCQkJCUZFRDEzRDUw
MENFQTk0OTcwMEQ4OTQ2NiAvKiBSZW5kZXJUaGVtZUlPUy5oICovLAorCQkJCUM1NUM3QkEwMTcx
OEFGQkEwMDEzMjdFNCAvKiBSZW5kZXJUaGVtZUlPUy5tbSAqLywKKwkJCQlCQ0VBNDg0ODA5N0Q5
MzAyMDA5NEM5RTQgLyogUmVuZGVyVGhlbWVNYWMuaCAqLywKKwkJCQlCQ0VBNDg0OTA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVyVGhlbWVNYWMubW0gKi8sCisJCQkJOTM5NTVBNDIwM0Q3MjkzMjAw
ODYzNUNFIC8qIFJlbmRlclRyZWVBc1RleHQuY3BwICovLAorCQkJCTkzOTU1QTQxMDNENzI5MzIw
MDg2MzVDRSAvKiBSZW5kZXJUcmVlQXNUZXh0LmggKi8sCisJCQkJMTE2M0Y4MjMyNEU1RDU5QjAw
MEFCOTYwIC8qIFJlbmRlclRyZWVNdXRhdGlvbkRpc2FsbG93ZWRTY29wZS5jcHAgKi8sCisJCQkJ
MTE2M0Y4MjEyNEU1RDU5QjAwMEFCOTYwIC8qIFJlbmRlclRyZWVNdXRhdGlvbkRpc2FsbG93ZWRT
Y29wZS5oICovLAorCQkJCUU0QjQxRTMzMENCRkI2MDkwMEFGMkVDRSAvKiBSZW5kZXJWaWRlby5j
cHAgKi8sCisJCQkJRTRCNDFFMzQwQ0JGQjYwOTAwQUYyRUNFIC8qIFJlbmRlclZpZGVvLmggKi8s
CisJCQkJQkNFQTQ4MjgwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclZpZXcuY3BwICovLAorCQkJ
CUJDRUE0ODI5MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJWaWV3LmggKi8sCisJCQkJQkUyMDUw
N0IxOEE0NThCMTAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5jcHAgKi8sCisJCQkJQkUyMDUwN0Mx
OEE0NThCMTAwODA2NDdFIC8qIFJlbmRlclZUVEN1ZS5oICovLAorCQkJCUE4NzFERkUxMEExNTM3
NkIwMEIxMkE2OCAvKiBSZW5kZXJXaWRnZXQuY3BwICovLAorCQkJCUE4NzFERkUwMEExNTM3NkIw
MEIxMkE2OCAvKiBSZW5kZXJXaWRnZXQuaCAqLywKKwkJCQk1RDkyNUI2NTBGNjRENEREMDBCODQ3
RjAgLyogU2Nyb2xsQWxpZ25tZW50LmNwcCAqLywKKwkJCQk1RDkyNUI2NjBGNjRENEREMDBCODQ3
RjAgLyogU2Nyb2xsQWxpZ25tZW50LmggKi8sCisJCQkJNDRCMzhCRjkyNTM2OUE4ODAwQTQ0NThE
IC8qIFNlbGVjdGlvblJhbmdlRGF0YS5jcHAgKi8sCisJCQkJNDRCMzhCRjQyNTM2OTAxQTAwQTQ0
NThEIC8qIFNlbGVjdGlvblJhbmdlRGF0YS5oICovLAorCQkJCUU0NDBGRDU0MjVBNEFGRUUwMEY3
Qzg0OSAvKiBTdHlsZWRNYXJrZWRUZXh0LmNwcCAqLywKKwkJCQlFNDQwRkQ1MTI1QTRBRkRGMDBG
N0M4NDkgLyogU3R5bGVkTWFya2VkVGV4dC5oICovLAorCQkJCUUzMUNENzUwMjI5Rjc0OTUwMEZC
REExOSAvKiBUYWJsZUxheW91dC5jcHAgKi8sCisJCQkJQThDRkYwNEMwQTE1NEYwOTAwMEE0MjM0
IC8qIFRhYmxlTGF5b3V0LmggKi8sCisJCQkJMEY1NERDRTMxODgxMDUxRDAwM0VFREJCIC8qIFRl
eHRBdXRvU2l6aW5nLmNwcCAqLywKKwkJCQkwRjU0RENFNDE4ODEwNTFEMDAzRUVEQkIgLyogVGV4
dEF1dG9TaXppbmcuaCAqLywKKwkJCQlFNDQwREY1NzI2RUI1M0VBMDA0QUYwNkIgLyogVGV4dEJv
eFBhaW50ZXIuY3BwICovLAorCQkJCUU0NDBERjU0MjZFQjUzREYwMDRBRjA2QiAvKiBUZXh0Qm94
UGFpbnRlci5oICovLAorCQkJCUU0NDdGNUIxMjY2Q0Y2M0QwMDEzM0YwMCAvKiBUZXh0Qm94U2Vs
ZWN0YWJsZVJhbmdlLmggKi8sCisJCQkJNTgyREUzMjIxQzMwQzg1NDAwQkUwMkE4IC8qIFRleHRE
ZWNvcmF0aW9uUGFpbnRlci5jcHAgKi8sCisJCQkJNTgyREUzMjMxQzMwQzg1NDAwQkUwMkE4IC8q
IFRleHREZWNvcmF0aW9uUGFpbnRlci5oICovLAorCQkJCTFDMThEQTU2MTgxQUY2QTUwMEM0RUYy
MiAvKiBUZXh0UGFpbnRlci5jcHAgKi8sCisJCQkJMUMxOERBNTcxODFBRjZBNTAwQzRFRjIyIC8q
IFRleHRQYWludGVyLmggKi8sCisJCQkJRTRDOTFBMEYxODAyMzQzOTAwQTE3RjZEIC8qIFRleHRQ
YWludFN0eWxlLmNwcCAqLywKKwkJCQlFNEM5MUEwRDE4MDIzNDMxMDBBMTdGNkQgLyogVGV4dFBh
aW50U3R5bGUuaCAqLywKKwkJCQlCQ0EyNTcxNDEyOTNDMDEwMDA3QTI2M0QgLyogVmVydGljYWxQ
b3NpdGlvbkNhY2hlLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHJlbmRlcmluZzsKKwkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7CisJCQl1c2VzVGFicyA9IDA7CisJ
CX07CisJCUY1MjNEMzI0MDJERTQ0NzgwMTg2MzVDQSAvKiBkb20gKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNFMjYxNkE0MTg3RTY1QzEwMDc5NTVGMyAv
KiBpb3MgKi8sCisJCQkJMkQ1MDM2NjYxQkNERERDNDAwRTIwQkIzIC8qIG1hYyAqLywKKwkJCQk1
MUVDQzNFNDIwMDU4MzFGMDA0ODNFQUUgLyogbWVzc2FnZXBvcnRzICovLAorCQkJCTQxODgwN0Ux
MjRFNDU4QzMwMEREQUY5NCAvKiBBYm9ydEFsZ29yaXRobS5oICovLAorCQkJCTQxODgwN0RGMjRF
NDU1ODMwMEREQUY5NCAvKiBBYm9ydEFsZ29yaXRobS5pZGwgKi8sCisJCQkJN0NEMEUyQjYxRjgw
QTQ4MjAwMTZBNENFIC8qIEFib3J0Q29udHJvbGxlci5jcHAgKi8sCisJCQkJN0NEMEUyQjUxRjgw
QTQ4MjAwMTZBNENFIC8qIEFib3J0Q29udHJvbGxlci5oICovLAorCQkJCTdDRDBFMkI3MUY4MEE0
ODIwMDE2QTRDRSAvKiBBYm9ydENvbnRyb2xsZXIuaWRsICovLAorCQkJCTdDRDBFMkJEMUY4MEE1
NkUwMDE2QTRDRSAvKiBBYm9ydFNpZ25hbC5jcHAgKi8sCisJCQkJN0NEMEUyQkMxRjgwQTU2RTAw
MTZBNENFIC8qIEFib3J0U2lnbmFsLmggKi8sCisJCQkJN0NEMEUyQkUxRjgwQTU2RTAwMTZBNENF
IC8qIEFib3J0U2lnbmFsLmlkbCAqLywKKwkJCQk5M0QwNTAzMTI1M0ExNDhDMDAyQTMwNzIgLyog
QWJzdHJhY3RSYW5nZS5jcHAgKi8sCisJCQkJOTNEMDUwMkUyNTNBMTQ4QTAwMkEzMDcyIC8qIEFi
c3RyYWN0UmFuZ2UuaCAqLywKKwkJCQk5M0QwNTAzMDI1M0ExNDhDMDAyQTMwNzIgLyogQWJzdHJh
Y3RSYW5nZS5pZGwgKi8sCisJCQkJN0M1MjIyOTcxRTFEQUUxNjAwMkNCOEY3IC8qIEFjdGl2ZURP
TUNhbGxiYWNrLmNwcCAqLywKKwkJCQk3QzUyMjI5ODFFMURBRTE2MDAyQ0I4RjcgLyogQWN0aXZl
RE9NQ2FsbGJhY2suaCAqLywKKwkJCQlFMUM0REU2RDBFQTc1QzY1MDAyM0NDRDYgLyogQWN0aXZl
RE9NT2JqZWN0LmNwcCAqLywKKwkJCQlFMUM0REU2ODBFQTc1QzFFMDAyM0NDRDYgLyogQWN0aXZl
RE9NT2JqZWN0LmggKi8sCisJCQkJNDZCRDA1QzIyNUJCNkU0RTAwMjI1RjMwIC8qIEFkZEV2ZW50
TGlzdGVuZXJPcHRpb25zLmggKi8sCisJCQkJNDZCRDA1QzQyNUJCNkU0RjAwMjI1RjMwIC8qIEFk
ZEV2ZW50TGlzdGVuZXJPcHRpb25zLmlkbCAqLywKKwkJCQlFM0FFNkNEMTIyNTJGMjcwMDBDNzBC
NTAgLyogQWxsRGVzY2VuZGFudHNDb2xsZWN0aW9uLmNwcCAqLywKKwkJCQk4M0JCNUM4NzFENUQ2
RjNBMDA1QTcxRjQgLyogQWxsRGVzY2VuZGFudHNDb2xsZWN0aW9uLmggKi8sCisJCQkJMzE5ODQ3
RkUxQTFEODE2NzAwQTEzMzE4IC8qIEFuaW1hdGlvbkV2ZW50LmNwcCAqLywKKwkJCQkzMTk4NDdG
RjFBMUQ4MTY3MDBBMTMzMTggLyogQW5pbWF0aW9uRXZlbnQuaCAqLywKKwkJCQkzMTk4NDgwMDFB
MUQ4MTY3MDBBMTMzMTggLyogQW5pbWF0aW9uRXZlbnQuaWRsICovLAorCQkJCUE4QzRBN0ZDMDlE
NTYzMjcwMDAzQUM4RCAvKiBBdHRyLmNwcCAqLywKKwkJCQlBOEM0QTdGQjA5RDU2MzI3MDAwM0FD
OEQgLyogQXR0ci5oICovLAorCQkJCTkzRUVDMUU1MDlDMjg3NzcwMEM1MTVEMSAvKiBBdHRyLmlk
bCAqLywKKwkJCQlBOEM0QTdGOTA5RDU2MzI3MDAwM0FDOEQgLyogQXR0cmlidXRlLmggKi8sCisJ
CQkJRTNCRjE5RTUyMkFGMkZGNDAwOUM5OTI2IC8qIEJlZm9yZUxvYWRFdmVudC5jcHAgKi8sCisJ
CQkJQkM5NDYyRDcxMDdBN0I0QzAwODU3MTkzIC8qIEJlZm9yZUxvYWRFdmVudC5oICovLAorCQkJ
CUJDOTQ2MkNCMTA3QTdBMzkwMDg1NzE5MyAvKiBCZWZvcmVMb2FkRXZlbnQuaWRsICovLAorCQkJ
CUFCMjNBMzI1MDlCQkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0SW5zZXJ0ZWRFdmVudC5jcHAg
Ki8sCisJCQkJQUIyM0EzMjYwOUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2
ZW50LmggKi8sCisJCQkJODUwMzFCMjYwQTQ0RUZDNzAwRjk5MkUwIC8qIEJlZm9yZVVubG9hZEV2
ZW50LmNwcCAqLywKKwkJCQk4NTAzMUIyNzBBNDRFRkM3MDBGOTkyRTAgLyogQmVmb3JlVW5sb2Fk
RXZlbnQuaCAqLywKKwkJCQk3QzFFOENGRjFFRDBDMkJFMDBCMUQ5ODMgLyogQmVmb3JlVW5sb2Fk
RXZlbnQuaWRsICovLAorCQkJCTkzNzJCNTIwMjU1OUU1MUUwMEUwNThDRiAvKiBCb3VuZGFyeVBv
aW50LmNwcCAqLywKKwkJCQk5MzE2RERGRTI0MEM2NEY4MDA5MzQwQUEgLyogQm91bmRhcnlQb2lu
dC5oICovLAorCQkJCTQ2OUNDQ0ZBMjY5RDAyMDIwMDZFMDMxNCAvKiBCcm9hZGNhc3RDaGFubmVs
LmNwcCAqLywKKwkJCQk0NjlDQ0NGQzI2OUQwMjAyMDA2RTAzMTQgLyogQnJvYWRjYXN0Q2hhbm5l
bC5oICovLAorCQkJCTQ2OUNDQ0ZEMjY5RDAyMDMwMDZFMDMxNCAvKiBCcm9hZGNhc3RDaGFubmVs
LmlkbCAqLywKKwkJCQk0NkREOTNENTI2OURFNzRCMDAxQUZEODggLyogQnJvYWRjYXN0Q2hhbm5l
bElkZW50aWZpZXIuaCAqLywKKwkJCQk0NkRFOUJCNDI2OURGOTMyMDAyNEM1QTYgLyogQnJvYWRj
YXN0Q2hhbm5lbFJlZ2lzdHJ5LmggKi8sCisJCQkJN0MxRThEMDAxRUQwQzJCRTAwQjFEOTgzIC8q
IENhbGxiYWNrUmVzdWx0LmggKi8sCisJCQkJNjU1MEI2OTMwOTlERjAyNzAwOTBENzgxIC8qIENE
QVRBU2VjdGlvbi5jcHAgKi8sCisJCQkJNjU1MEI2OTQwOTlERjAyNzAwOTBENzgxIC8qIENEQVRB
U2VjdGlvbi5oICovLAorCQkJCTg1MDg5Q0M5MEE5OEMyQUIwMEEyNzVBQSAvKiBDREFUQVNlY3Rp
b24uaWRsICovLAorCQkJCTY1NTBCNjk1MDk5REYwMjcwMDkwRDc4MSAvKiBDaGFyYWN0ZXJEYXRh
LmNwcCAqLywKKwkJCQk2NTUwQjY5NjA5OURGMDI3MDA5MEQ3ODEgLyogQ2hhcmFjdGVyRGF0YS5o
ICovLAorCQkJCTkzRUVDMUU2MDlDMjg3NzcwMEM1MTVEMSAvKiBDaGFyYWN0ZXJEYXRhLmlkbCAq
LywKKwkJCQlENjE5QTMwNTE0NEUwMEJFMDA0QkMzMDIgLyogQ2hpbGRMaXN0TXV0YXRpb25TY29w
ZS5jcHAgKi8sCisJCQkJRDYxOUEzMDYxNDRFMDBCRTAwNEJDMzAyIC8qIENoaWxkTGlzdE11dGF0
aW9uU2NvcGUuaCAqLywKKwkJCQk4M0QyNkQzQzFBRkRDQzUwMDAxQjM4NzMgLyogQ2hpbGROb2Rl
LmlkbCAqLywKKwkJCQlBODE4NzIxQTA5NzdEM0MwMDA1ODI2RDkgLyogQ2hpbGROb2RlTGlzdC5j
cHAgKi8sCisJCQkJQTgxODcyMTUwOTc3RDNDMDAwNTgyNkQ5IC8qIENoaWxkTm9kZUxpc3QuaCAq
LywKKwkJCQk4MzQ4QkZBOTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmNwcCAq
LywKKwkJCQk4MzQ4QkZBQTFCODU3Mjk1MDA5MTJGMzYgLyogQ2xhc3NDb2xsZWN0aW9uLmggKi8s
CisJCQkJODUwMzFCMjkwQTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmNwcCAqLywK
KwkJCQk4NTAzMUIyQTBBNDRFRkM3MDBGOTkyRTAgLyogQ2xpcGJvYXJkRXZlbnQuaCAqLywKKwkJ
CQk4MzZEMDMyNzFEQTg5QjczMDBGRkQ5NkIgLyogQ2xpcGJvYXJkRXZlbnQuaWRsICovLAorCQkJ
CTlCRDhBOTU5MThCRUZDNzYwMDk4N0U5QSAvKiBDb2xsZWN0aW9uSW5kZXhDYWNoZS5jcHAgKi8s
CisJCQkJRTQyNUE0OTkxODI5MkI4NDAwMjBDRkNGIC8qIENvbGxlY3Rpb25JbmRleENhY2hlLmgg
Ki8sCisJCQkJNjU1MEI2OTcwOTlERjAyNzAwOTBENzgxIC8qIENvbW1lbnQuY3BwICovLAorCQkJ
CTY1NTBCNjk4MDk5REYwMjcwMDkwRDc4MSAvKiBDb21tZW50LmggKi8sCisJCQkJODUwODlDQzcw
QTk4QzIyNjAwQTI3NUFBIC8qIENvbW1lbnQuaWRsICovLAorCQkJCUU0QkE1MDhGMUJDRkJEOTUw
MEUzNEVGNyAvKiBDb21wb3NlZFRyZWVBbmNlc3Rvckl0ZXJhdG9yLmggKi8sCisJCQkJRTQ0RkEx
ODYxQkNBOTE1NjAwOTFCNkVGIC8qIENvbXBvc2VkVHJlZUl0ZXJhdG9yLmNwcCAqLywKKwkJCQlF
NDRGQTE4NDFCQ0E2QjVBMDA5MUI2RUYgLyogQ29tcG9zZWRUcmVlSXRlcmF0b3IuaCAqLywKKwkJ
CQk3OUYyRjU5RTEwOTE5MzlBMDAwRDg3Q0IgLyogQ29tcG9zaXRpb25FdmVudC5jcHAgKi8sCisJ
CQkJNzlGMkY1OUYxMDkxOTM5QTAwMEQ4N0NCIC8qIENvbXBvc2l0aW9uRXZlbnQuaCAqLywKKwkJ
CQk3OUYyRjVBMDEwOTE5MzlBMDAwRDg3Q0IgLyogQ29tcG9zaXRpb25FdmVudC5pZGwgKi8sCisJ
CQkJMkRBRjM0M0ExRUE3RTBGMTAwMzgyQ0QzIC8qIENvbnN0YW50UHJvcGVydHlNYXAuY3BwICov
LAorCQkJCTJEQUYzNDNCMUVBN0UwRjEwMDM4MkNEMyAvKiBDb25zdGFudFByb3BlcnR5TWFwLmgg
Ki8sCisJCQkJQTgxODcyMTQwOTc3RDNDMDAwNTgyNkQ5IC8qIENvbnRhaW5lck5vZGUuY3BwICov
LAorCQkJCUE4MTg3MjExMDk3N0QzQzAwMDU4MjZEOSAvKiBDb250YWluZXJOb2RlLmggKi8sCisJ
CQkJQTdBNzhDRDQxNTMyQkE2MjAwNkMyMUU0IC8qIENvbnRhaW5lck5vZGVBbGdvcml0aG1zLmNw
cCAqLywKKwkJCQlFMUExNDcwNzExMTAyQjE1MDBFRUMwRjMgLyogQ29udGFpbmVyTm9kZUFsZ29y
aXRobXMuaCAqLywKKwkJCQk5NzYyN0I4QjE0RkIzQ0VFMDAyQ0RDQTEgLyogQ29udGV4dERlc3Ry
dWN0aW9uT2JzZXJ2ZXIuY3BwICovLAorCQkJCTk3NjI3QjhDMTRGQjNDRUUwMDJDRENBMSAvKiBD
b250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlci5oICovLAorCQkJCTQ2ODhFRTNBMjZERDI2MEMwMDJB
RjVDNCAvKiBDcm9zc09yaWdpbk1vZGUuaCAqLywKKwkJCQk3Q0Y1NzBDNjI0OTJCRDQ5MDA4RUIz
M0MgLyogQ3VycmVudFNjcmlwdEluY3JlbWVudGVyLmggKi8sCisJCQkJOUI1NkM5QTkxQzg5MzI5
QTAwQzQ1NkRGIC8qIEN1c3RvbUVsZW1lbnRSZWFjdGlvblF1ZXVlLmNwcCAqLywKKwkJCQk5QjU2
QzlBODFDODkzMTI4MDBDNDU2REYgLyogQ3VzdG9tRWxlbWVudFJlYWN0aW9uUXVldWUuaCAqLywK
KwkJCQk5QkQ0RTkxODFDNDYyQ0ZDMDA1MDY1QkMgLyogQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmNw
cCAqLywKKwkJCQk5QkQ0RTkxOTFDNDYyQ0ZDMDA1MDY1QkMgLyogQ3VzdG9tRWxlbWVudFJlZ2lz
dHJ5LmggKi8sCisJCQkJOUJDNUY5REUxRDVBQUQ1RDAwMkI3NDlEIC8qIEN1c3RvbUVsZW1lbnRS
ZWdpc3RyeS5pZGwgKi8sCisJCQkJNjJDRDMyNTYxMTU3RTU3QzAwNjNCMEE3IC8qIEN1c3RvbUV2
ZW50LmNwcCAqLywKKwkJCQk2MkNEMzI1NzExNTdFNTdDMDA2M0IwQTcgLyogQ3VzdG9tRXZlbnQu
aCAqLywKKwkJCQk2MkNEMzI1ODExNTdFNTdDMDA2M0IwQTcgLyogQ3VzdG9tRXZlbnQuaWRsICov
LAorCQkJCUJDNjQ2NDFCMTFEN0Y0MTYwMDY0NTVCMCAvKiBEYXRhc2V0RE9NU3RyaW5nTWFwLmNw
cCAqLywKKwkJCQlCQzY0NjQxQTExRDdGNDE2MDA2NDU1QjAgLyogRGF0YXNldERPTVN0cmluZ01h
cC5oICovLAorCQkJCUE3ODQ5NDFBMEI1RkU1MDcwMDFFMjM3QSAvKiBEYXRhVHJhbnNmZXIuY3Bw
ICovLAorCQkJCTg1MDMxQjI4MEE0NEVGQzcwMEY5OTJFMCAvKiBEYXRhVHJhbnNmZXIuaCAqLywK
KwkJCQlCQ0E4M0UzNjBEN0NEQzRFMDAzNDIxQTggLyogRGF0YVRyYW5zZmVyLmlkbCAqLywKKwkJ
CQk5QjA5OEJENTFGM0Q2MDMzMDAyREQ1NjIgLyogRGF0YVRyYW5zZmVySXRlbS5jcHAgKi8sCisJ
CQkJODFBQzU5OTcxMzE2MzZFNjAwMDlBN0UwIC8qIERhdGFUcmFuc2Zlckl0ZW0uaCAqLywKKwkJ
CQk4MUFDNUFFODEzMTYzOTJFMDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbS5pZGwgKi8sCisJ
CQkJOUIxMzI1N0IxRjNEMkFCQTAwREFBQjY5IC8qIERhdGFUcmFuc2Zlckl0ZW1MaXN0LmNwcCAq
LywKKwkJCQk4MUFDNTk5ODEzMTYzNkU2MDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbUxpc3Qu
aCAqLywKKwkJCQk4MUFDNUFFOTEzMTYzOTJFMDAwOUE3RTAgLyogRGF0YVRyYW5zZmVySXRlbUxp
c3QuaWRsICovLAorCQkJCTJEOTA2NjBDMDY2NUQ5MzcwMDZCNkYxQSAvKiBEYXRhVHJhbnNmZXJN
YWMubW0gKi8sCisJCQkJQThDMjI4QTAxMUQ1NzIyRTAwRDVBN0QzIC8qIERlY29kZWREYXRhRG9j
dW1lbnRQYXJzZXIuY3BwICovLAorCQkJCUE4QzIyODlGMTFENTcyMkUwMEQ1QTdEMyAvKiBEZWNv
ZGVkRGF0YURvY3VtZW50UGFyc2VyLmggKi8sCisJCQkJMzFGQjFBNEYxMjBBNUQwNjAwREMwMkEw
IC8qIERldmljZU1vdGlvbkNsaWVudC5oICovLAorCQkJCTMxRkIxQTUwMTIwQTVEMDYwMERDMDJB
MCAvKiBEZXZpY2VNb3Rpb25Db250cm9sbGVyLmNwcCAqLywKKwkJCQkzMUZCMUE1MTEyMEE1RDA2
MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uQ29udHJvbGxlci5oICovLAorCQkJCTMxRkIxQTUyMTIw
QTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25EYXRhLmNwcCAqLywKKwkJCQkzMUZCMUE1MzEy
MEE1RDA2MDBEQzAyQTAgLyogRGV2aWNlTW90aW9uRGF0YS5oICovLAorCQkJCTMxRkIxQTU0MTIw
QTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25FdmVudC5jcHAgKi8sCisJCQkJMzFGQjFBNTUx
MjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmggKi8sCisJCQkJMzFGQjFBNTYx
MjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkV2ZW50LmlkbCAqLywKKwkJCQk0NkI5NUJG
MjIyMzFDRkI4MDA1M0E1MDQgLyogRGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250
cm9sbGVyLmNwcCAqLywKKwkJCQk0NkI5NUJGNDIyMzFDRkI4MDA1M0E1MDQgLyogRGV2aWNlT3Jp
ZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyLmggKi8sCisJCQkJNTlBOEYxRDcxMUE2
OTUyMDAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ2xpZW50LmggKi8sCisJCQkJNTlBOEYx
RDMxMUE2OTUwODAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJvbGxlci5jcHAgKi8s
CisJCQkJNTlBOEYxRDUxMUE2OTUxMzAwMUFDMzRBIC8qIERldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlci5oICovLAorCQkJCTU5RDFDMTAzMTFFQjVEQ0YwMEI2MzhDOCAvKiBEZXZpY2VPcmllbnRh
dGlvbkRhdGEuY3BwICovLAorCQkJCTU5MEUxQjQ4MTFFNEVGNEIwMDY5Rjc4NCAvKiBEZXZpY2VP
cmllbnRhdGlvbkRhdGEuaCAqLywKKwkJCQk1OUE4NUVBMTExOUQ2OEQ5MDBERUYxRUYgLyogRGV2
aWNlT3JpZW50YXRpb25FdmVudC5jcHAgKi8sCisJCQkJNTlBODVFQTMxMTlENjhFQzAwREVGMUVG
IC8qIERldmljZU9yaWVudGF0aW9uRXZlbnQuaCAqLywKKwkJCQk1OUE4NUVBQTExOUQ3QjZFMDBE
RUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5pZGwgKi8sCisJCQkJNDY1RUREOUYyMjJG
NEVDMzAwQjQ2RTE2IC8qIERldmljZU9yaWVudGF0aW9uT3JNb3Rpb25QZXJtaXNzaW9uU3RhdGUu
aCAqLywKKwkJCQk0NjVFRERBMDIyMkY0RUM0MDBCNDZFMTYgLyogRGV2aWNlT3JpZW50YXRpb25P
ck1vdGlvblBlcm1pc3Npb25TdGF0ZS5pZGwgKi8sCisJCQkJN0MzQThBQjgyNTA5QTEwRjAwOEM0
NzdGIC8qIERvY3VtZW50K0NTU09NVmlldy5pZGwgKi8sCisJCQkJQ0Q5MkY1MEYyMjYwRkZFRTAw
Rjg3QkIzIC8qIERvY3VtZW50K0Z1bGxzY3JlZW4uaWRsICovLAorCQkJCTdDM0E4QUEzMjUwOTQ2
MUYwMDhDNDc3RiAvKiBEb2N1bWVudCtIVE1MLmlkbCAqLywKKwkJCQk3QzNBOEFBNjI1MDk0ODU5
MDA4QzQ3N0YgLyogRG9jdW1lbnQrSFRNTE9ic29sZXRlLmlkbCAqLywKKwkJCQk3QzNBOEFCNDI1
MDk5RjVBMDA4QzQ3N0YgLyogRG9jdW1lbnQrUGFnZVZpc2liaWxpdHkuaWRsICovLAorCQkJCTdD
M0E4QUI2MjUwOTlGRkQwMDhDNDc3RiAvKiBEb2N1bWVudCtQb2ludGVyTG9jay5pZGwgKi8sCisJ
CQkJN0MzQThBQkEyNTA5QTE5OTAwOEM0NzdGIC8qIERvY3VtZW50K1NlbGVjdGlvbi5pZGwgKi8s
CisJCQkJNkJEQjVEQzUyMjdDQTBFQjAwOTE5NzcwIC8qIERvY3VtZW50K1N0b3JhZ2VBY2Nlc3Mu
aWRsICovLAorCQkJCTdDRTdGQTVBMUVGODgyMzAwMDYwQzlENiAvKiBEb2N1bWVudCtUb3VjaC5p
ZGwgKi8sCisJCQkJN0MzQThBQzIyNTA5QTZDRDAwOEM0NzdGIC8qIERvY3VtZW50K1VuZG9NYW5h
bmdlci5pZGwgKi8sCisJCQkJQTgxODVGMzQwOTc2NTc2NTAwNTgyNkQ5IC8qIERvY3VtZW50LmNw
cCAqLywKKwkJCQlBODE4NUYzODA5NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnQuaCAqLywKKwkJ
CQk2NTQ4RTI0ODA5RTFFMDREMDBBRjgwMjAgLyogRG9jdW1lbnQuaWRsICovLAorCQkJCTgzMjlB
NDE3MUVDMjVCMkIwMDhFRDRCRSAvKiBEb2N1bWVudEFuZEVsZW1lbnRFdmVudEhhbmRsZXJzLmlk
bCAqLywKKwkJCQk4NkQ5ODJGNjEyNUMxNTQwMDBBRDlFM0QgLyogRG9jdW1lbnRFdmVudFRpbWlu
Zy5oICovLAorCQkJCUE4MTg1RjM0NTk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1bWVudEZvbnRMb2Fk
ZXIuY3BwICovLAorCQkJCUE4MTg1RjM1NTk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1bWVudEZvbnRM
b2FkZXIuaCAqLywKKwkJCQlBODE4NUYzNzA5NzY1NzY1MDA1ODI2RDkgLyogRG9jdW1lbnRGcmFn
bWVudC5jcHAgKi8sCisJCQkJQTgxODVGMzUwOTc2NTc2NTAwNTgyNkQ5IC8qIERvY3VtZW50RnJh
Z21lbnQuaCAqLywKKwkJCQkxQTQ5NEVENTBBMTIzRjFBMDBGREFGQzEgLyogRG9jdW1lbnRGcmFn
bWVudC5pZGwgKi8sCisJCQkJQ0Q5MkY1MTAyMjYwRkZFRTAwRjg3QkIzIC8qIERvY3VtZW50RnVs
bHNjcmVlbi5oICovLAorCQkJCUVEMkJBODNCMDlBMjRCOTEwMDZDMEFDNCAvKiBEb2N1bWVudE1h
cmtlci5oICovLAorCQkJCUNFMDU3RkEzMTIyMDczMTEwMEE0NzZENSAvKiBEb2N1bWVudE1hcmtl
ckNvbnRyb2xsZXIuY3BwICovLAorCQkJCUNFMDU3RkE0MTIyMDczMTEwMEE0NzZENSAvKiBEb2N1
bWVudE1hcmtlckNvbnRyb2xsZXIuaCAqLywKKwkJCQk3QzM2NTU2QzI1MDZERTlDMDBBNzg4MkIg
LyogRG9jdW1lbnRPclNoYWRvd1Jvb3QrUG9pbnRlckxvY2suaWRsICovLAorCQkJCTlCMEZFODcz
MUQ5RTAyREYwMDRBOEFDQiAvKiBEb2N1bWVudE9yU2hhZG93Um9vdC5pZGwgKi8sCisJCQkJQThD
MjI4MEQxMUQ0QTU5NzAwRDVBN0QzIC8qIERvY3VtZW50UGFyc2VyLmNwcCAqLywKKwkJCQlCQ0NG
QkFFNzBCNTE1MkVEMDAwMUYxRDcgLyogRG9jdW1lbnRQYXJzZXIuaCAqLywKKwkJCQlBRDZFNzFB
QTE2Njg4OTlEMDAzMjBDMTMgLyogRG9jdW1lbnRTaGFyZWRPYmplY3RQb29sLmNwcCAqLywKKwkJ
CQlBRDZFNzFBQjE2Njg4OTlEMDAzMjBDMTMgLyogRG9jdW1lbnRTaGFyZWRPYmplY3RQb29sLmgg
Ki8sCisJCQkJNkJEQjVEQzEyMjdCRDNCODAwOTE5NzcwIC8qIERvY3VtZW50U3RvcmFnZUFjY2Vz
cy5jcHAgKi8sCisJCQkJNkJEQjVEQzAyMjdCRDNCODAwOTE5NzcwIC8qIERvY3VtZW50U3RvcmFn
ZUFjY2Vzcy5oICovLAorCQkJCTdDRTdGQTVCMUVGODgyMzAwMDYwQzlENiAvKiBEb2N1bWVudFRv
dWNoLmNwcCAqLywKKwkJCQk3Q0U3RkE1OTFFRjg4MjMwMDA2MEM5RDYgLyogRG9jdW1lbnRUb3Vj
aC5oICovLAorCQkJCUE4MTg1RjMyMDk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1bWVudFR5cGUuY3Bw
ICovLAorCQkJCUE4MTg1RjMxMDk3NjU3NjUwMDU4MjZEOSAvKiBEb2N1bWVudFR5cGUuaCAqLywK
KwkJCQk5M0VFQzFFODA5QzI4Nzc3MDBDNTE1RDEgLyogRG9jdW1lbnRUeXBlLmlkbCAqLywKKwkJ
CQk5NzhEMDdCRDE0NUEwRjZDMDA5NjkwOEQgLyogRE9NRXhjZXB0aW9uLmNwcCAqLywKKwkJCQlC
QzYwRDZFODBEMjhEODM0MDBCOTkxOEYgLyogRE9NRXhjZXB0aW9uLmggKi8sCisJCQkJQkM2MEQ2
RUIwRDI4RDk5OTAwQjk5MThGIC8qIERPTUV4Y2VwdGlvbi5pZGwgKi8sCisJCQkJNDZFMDE2QUQx
RjcyRDYxRTAwMjgyQjJDIC8qIERPTUhpZ2hSZXNUaW1lU3RhbXAuaCAqLywKKwkJCQlBODE4NUYz
NjA5NzY1NzY1MDA1ODI2RDkgLyogRE9NSW1wbGVtZW50YXRpb24uY3BwICovLAorCQkJCUE4MTg1
RjMzMDk3NjU3NjUwMDU4MjZEOSAvKiBET01JbXBsZW1lbnRhdGlvbi5oICovLAorCQkJCTkzRUVD
MUU5MDlDMjg3NzcwMEM1MTVEMSAvKiBET01JbXBsZW1lbnRhdGlvbi5pZGwgKi8sCisJCQkJRjRC
NDIyQzIyMjBDMDAwMDAwOUUxRTdEIC8qIERPTVBhc3RlQWNjZXNzLmggKi8sCisJCQkJMEY0OTY2
OTkxREI0MDhDMTAwQTI3NEJCIC8qIERPTVBvaW50LmggKi8sCisJCQkJMEY0OTY2OUExREI0MDhD
MTAwQTI3NEJCIC8qIERPTVBvaW50LmlkbCAqLywKKwkJCQkwRjQ5NjZBMjFEQjQwOTEwMDBBMjc0
QkIgLyogRE9NUG9pbnRJbml0LmggKi8sCisJCQkJMEY0OTY2QTExREI0MDkwMTAwQTI3NEJCIC8q
IERPTVBvaW50SW5pdC5pZGwgKi8sCisJCQkJMEZGODM1QjcxRUUzMjc0RjAwOEI0Q0M3IC8qIERP
TVBvaW50UmVhZE9ubHkuY3BwICovLAorCQkJCTBGNDk2NjlCMURCNDA4QzEwMEEyNzRCQiAvKiBE
T01Qb2ludFJlYWRPbmx5LmggKi8sCisJCQkJMEY0OTY2OUMxREI0MDhDMTAwQTI3NEJCIC8qIERP
TVBvaW50UmVhZE9ubHkuaWRsICovLAorCQkJCTBGRjgzNUJEMUVFMzU0REEwMDhCNENDNyAvKiBE
T01RdWFkLmNwcCAqLywKKwkJCQkwRkY4MzVCRTFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZC5o
ICovLAorCQkJCTBGRjgzNUJGMUVFMzU0REEwMDhCNENDNyAvKiBET01RdWFkLmlkbCAqLywKKwkJ
CQkwRkY4MzVDMDFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZEluaXQuaCAqLywKKwkJCQkwRkY4
MzVDMTFFRTM1NERBMDA4QjRDQzcgLyogRE9NUXVhZEluaXQuaWRsICovLAorCQkJCTBGNDcxMEE5
MURCNTZBRkMwMDJEQ0VDMyAvKiBET01SZWN0LmggKi8sCisJCQkJMEY0NzEwQUExREI1NkFGQzAw
MkRDRUMzIC8qIERPTVJlY3QuaWRsICovLAorCQkJCTBGNDcxMEFCMURCNTZBRkMwMDJEQ0VDMyAv
KiBET01SZWN0SW5pdC5oICovLAorCQkJCTBGNDcxMEFDMURCNTZBRkMwMDJEQ0VDMyAvKiBET01S
ZWN0SW5pdC5pZGwgKi8sCisJCQkJNDY4MzQ0REQxRURERkE1RjAwQjc3OTVCIC8qIERPTVJlY3RM
aXN0LmNwcCAqLywKKwkJCQk0NjgzNDRERTFFRERGQTVGMDBCNzc5NUIgLyogRE9NUmVjdExpc3Qu
aCAqLywKKwkJCQk0NjgzNDREQzFFRERGQTVGMDBCNzc5NUIgLyogRE9NUmVjdExpc3QuaWRsICov
LAorCQkJCUUzMjkyNzY2MjI1NDNGREUwMDMwOEE5QSAvKiBET01SZWN0UmVhZE9ubHkuY3BwICov
LAorCQkJCTBGNDcxMEFEMURCNTZBRkMwMDJEQ0VDMyAvKiBET01SZWN0UmVhZE9ubHkuaCAqLywK
KwkJCQkwRjQ3MTBBRTFEQjU2QUZDMDAyRENFQzMgLyogRE9NUmVjdFJlYWRPbmx5LmlkbCAqLywK
KwkJCQlDNTU2MTBGMDExQTcwNEVCMDBCODJEMjcgLyogRE9NU3RyaW5nTGlzdC5jcHAgKi8sCisJ
CQkJQzU0NDI3NDkxMUE1N0U3QTAwNjNBNzQ5IC8qIERPTVN0cmluZ0xpc3QuaCAqLywKKwkJCQlD
NTQ0Mjc0QTExQTU3RTdBMDA2M0E3NDkgLyogRE9NU3RyaW5nTGlzdC5pZGwgKi8sCisJCQkJQkM2
NDY0MDgxMUQ3RjMwNDAwNjQ1NUIwIC8qIERPTVN0cmluZ01hcC5oICovLAorCQkJCUJDNjQ2NDc5
MTFEODAwQ0QwMDY0NTVCMCAvKiBET01TdHJpbmdNYXAuaWRsICovLAorCQkJCTA1RkQ2OURGMTI4
NDVENDMwMEIyQkVCMyAvKiBET01UaW1lU3RhbXAuaCAqLywKKwkJCQk0NkUwQzBEQzIzQzAwNkI0
MDA1RTQ3QUUgLyogRHJhZ0V2ZW50LmNwcCAqLywKKwkJCQk0NkUwQzBEQTIzQzAwNkIzMDA1RTQ3
QUUgLyogRHJhZ0V2ZW50LmggKi8sCisJCQkJNDZFMEMwREQyM0MwMDZCNDAwNUU0N0FFIC8qIERy
YWdFdmVudC5pZGwgKi8sCisJCQkJN0M2NzcxMjYyNTI3RDIyMzAwRkRFRjAwIC8qIEVsZW1lbnQr
Q1NTT01WaWV3LmlkbCAqLywKKwkJCQk3Q0RBNzkxOTI1MEU4QzkyMDA3RDFCMzYgLyogRWxlbWVu
dCtET01QYXJzaW5nLmlkbCAqLywKKwkJCQk3QzY3NzEyNTI1MjdEMjIyMDBGREVGMDAgLyogRWxl
bWVudCtGdWxsc2NyZWVuLmlkbCAqLywKKwkJCQk3QzY3NzEyNDI1MjdEMjIyMDBGREVGMDAgLyog
RWxlbWVudCtQb2ludGVyRXZlbnRzLmlkbCAqLywKKwkJCQk3QzY3NzEyMjI1MjdEMjIxMDBGREVG
MDAgLyogRWxlbWVudCtQb2ludGVyTG9jay5pZGwgKi8sCisJCQkJQThDNEE3RjYwOUQ1NjMyNzAw
MDNBQzhEIC8qIEVsZW1lbnQuY3BwICovLAorCQkJCUE4QzRBN0Y1MDlENTYzMjcwMDAzQUM4RCAv
KiBFbGVtZW50LmggKi8sCisJCQkJOTNFRUMxRUEwOUMyODc3NzAwQzUxNUQxIC8qIEVsZW1lbnQu
aWRsICovLAorCQkJCUU0QUU3QzE5MTdEMjMyMzUwMDA5RkIzMSAvKiBFbGVtZW50QW5jZXN0b3JJ
dGVyYXRvci5oICovLAorCQkJCUU0NDBBQTk1MUM2ODQyMDgwMEEyNjVDQyAvKiBFbGVtZW50QW5k
VGV4dERlc2NlbmRhbnRJdGVyYXRvci5oICovLAorCQkJCUU0NkEyQjFEMTdDQTc2QjEwMDBEQkNE
OCAvKiBFbGVtZW50Q2hpbGRJdGVyYXRvci5oICovLAorCQkJCTdDQTU1RkNBMjUyNDE3QTcwMDMx
RjQ1MiAvKiBFbGVtZW50Q29udGVudEVkaXRhYmxlLmlkbCAqLywKKwkJCQkzMTNCQ0UxQjIzNUUz
QkRCMDBGQzM5RTUgLyogRWxlbWVudENvbnRleHQuaCAqLywKKwkJCQlCNUI3QTE2RjE3QzEwODA2
MDBFNEFBMEEgLyogRWxlbWVudERhdGEuY3BwICovLAorCQkJCUI1QjdBMTZFMTdDMTA0ODAwMEU0
QUEwQSAvKiBFbGVtZW50RGF0YS5oICovLAorCQkJCTJEMkJFQjJGMjIzNEEzMzQwMDU1NDRDQSAv
KiBFbGVtZW50SWRlbnRpZmllci5oICovLAorCQkJCUU0QUU3QzE1MTdEMUJCOTUwMDA5RkIzMSAv
KiBFbGVtZW50SXRlcmF0b3IuaCAqLywKKwkJCQlFNDAxQzI3NDE3Q0U1M0VDMDBDNDFBMzUgLyog
RWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oICovLAorCQkJCTRGQUI0ODY0MTY0M0E2NkQwMEY3
MEMwNyAvKiBFbGVtZW50UmFyZURhdGEuY3BwICovLAorCQkJCTYzN0I3QURFMEU4NzY3QjgwMEUz
MjE5NCAvKiBFbGVtZW50UmFyZURhdGEuaCAqLywKKwkJCQlFNEQ1OEVCQTE3QjhGMTI4MDBDQkRD
QTggLyogRWxlbWVudFRyYXZlcnNhbC5oICovLAorCQkJCTkzODQ5QzFFMjRCRTQwNEEwMDQ0OEQ1
QSAvKiBFbXB0eVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCAqLywKKwkJCQkyRUNGN0FERTEwMTYy
QjU4MDA0MjdERTcgLyogRXJyb3JFdmVudC5jcHAgKi8sCisJCQkJMkVDRjdBREYxMDE2MkI1ODAw
NDI3REU3IC8qIEVycm9yRXZlbnQuaCAqLywKKwkJCQkyRUNGN0FFMDEwMTYyQjU4MDA0MjdERTcg
LyogRXJyb3JFdmVudC5pZGwgKi8sCisJCQkJODUwMzFCMkIwQTQ0RUZDNzAwRjk5MkUwIC8qIEV2
ZW50LmNwcCAqLywKKwkJCQk4NTAzMUIyQzBBNDRFRkM3MDBGOTkyRTAgLyogRXZlbnQuaCAqLywK
KwkJCQkxNEU4MzZEMjA5Rjg1MTIwMDBCODVBRTQgLyogRXZlbnQuaWRsICovLAorCQkJCTQxMzhE
MzM0MTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVudENvbnRleHQuY3BwICovLAorCQkJCTQxMzhEMzMz
MTI0NDA1NDgwMDMyM0QzMyAvKiBFdmVudENvbnRleHQuaCAqLywKKwkJCQk0MThBMDZDRjEzM0Mw
NEQ1MDBDRDM3OUMgLyogRXZlbnREaXNwYXRjaGVyLmNwcCAqLywKKwkJCQk0MThBMDZDRTEzM0Mw
NEQ1MDBDRDM3OUMgLyogRXZlbnREaXNwYXRjaGVyLmggKi8sCisJCQkJODM2RDAzMjgxREE4OUI3
MzAwRkZEOTZCIC8qIEV2ZW50SW5pdC5oICovLAorCQkJCTgzNkQwMzI5MURBODlCNzMwMEZGRDk2
QiAvKiBFdmVudEluaXQuaWRsICovLAorCQkJCTkzNUZCQzQ0MDlCQTAwQjkwMEUyMzBCMSAvKiBF
dmVudExpc3RlbmVyLmggKi8sCisJCQkJODVBRkE3NDEwQUFGMjk4NDAwRTg0MzA1IC8qIEV2ZW50
TGlzdGVuZXIuaWRsICovLAorCQkJCUFENDQ5NUYxMTQxRkMwODkwMDU0MUVERiAvKiBFdmVudExp
c3RlbmVyTWFwLmNwcCAqLywKKwkJCQlBRDQ0OTVGMjE0MUZDMDg5MDA1NDFFREYgLyogRXZlbnRM
aXN0ZW5lck1hcC5oICovLAorCQkJCTQ2QkQwNUMzMjVCQjZFNEUwMDIyNUYzMCAvKiBFdmVudExp
c3RlbmVyT3B0aW9ucy5oICovLAorCQkJCTQ2QkQwNUMwMjVCQjZFNEQwMDIyNUYzMCAvKiBFdmVu
dExpc3RlbmVyT3B0aW9ucy5pZGwgKi8sCisJCQkJOUI5MURDQ0MyMzgzNzkyRDAwMEVFRTBGIC8q
IEV2ZW50TG9vcC5jcHAgKi8sCisJCQkJOUIwQUJDQTEyMzY3OUFCMzAwQjQ1MDg1IC8qIEV2ZW50
TG9vcC5oICovLAorCQkJCTgzRkU3Q0EzMURBOUYxNjUwMDM3MjM3QyAvKiBFdmVudE1vZGlmaWVy
SW5pdC5oICovLAorCQkJCTgzRkU3Q0E2MURBOUYxNjYwMDM3MjM3QyAvKiBFdmVudE1vZGlmaWVy
SW5pdC5pZGwgKi8sCisJCQkJOTM5ODg1QzEwOEI3RTNEMTAwRTcwN0M0IC8qIEV2ZW50TmFtZXMu
Y3BwICovLAorCQkJCTkzOTg4NUMyMDhCN0UzRDEwMEU3MDdDNCAvKiBFdmVudE5hbWVzLmggKi8s
CisJCQkJQkM5QTYxNDIxNDY4NTlEOTAwNjA1N0ZEIC8qIEV2ZW50TmFtZXMuaW4gKi8sCisJCQkJ
OUI3MTRFMUUxQzkxMTY2OTAwQUMwRTkyIC8qIEV2ZW50UGF0aC5jcHAgKi8sCisJCQkJOUI3MTRF
MUYxQzkxMTY2OTAwQUMwRTkyIC8qIEV2ZW50UGF0aC5oICovLAorCQkJCThGNjc1NjE5MTI4OEIx
N0IwMDQ3QUNBMyAvKiBFdmVudFF1ZXVlLmggKi8sCisJCQkJQ0U1Q0IxQjMxNEVEQUI2RjAwQkIy
Nzk1IC8qIEV2ZW50U2VuZGVyLmggKi8sCisJCQkJRTEyRURCRTkwQjMwOEUwQjAwMjcwNEI2IC8q
IEV2ZW50VGFyZ2V0LmNwcCAqLywKKwkJCQlFMTJFREI3QTBCMzA4QTc4MDAyNzA0QjYgLyogRXZl
bnRUYXJnZXQuaCAqLywKKwkJCQk4NUFGQTc0MjBBQUYyOTg0MDBFODQzMDUgLyogRXZlbnRUYXJn
ZXQuaWRsICovLAorCQkJCTg0QjM0OUEzMjJGODZFODIwMEQ0N0JDRiAvKiBFdmVudFRhcmdldENv
bmNyZXRlLmNwcCAqLywKKwkJCQk4NEIzNDlBMDIyRjg2RTc0MDBENDdCQ0YgLyogRXZlbnRUYXJn
ZXRDb25jcmV0ZS5oICovLAorCQkJCUNEQ0U1Q0QwMTQ2MzNCQzkwMEQ0N0NDQSAvKiBFdmVudFRh
cmdldEZhY3RvcnkuaW4gKi8sCisJCQkJOTNEMTk2MzIxRDZDQUI4MjAwRkM3RTQ3IC8qIEV4Y2Vw
dGlvbi5oICovLAorCQkJCTkzNUZCQ0YxMDlCQTE0M0IwMEUyMzBCMSAvKiBFeGNlcHRpb25Db2Rl
LmggKi8sCisJCQkJNTFGNjQ1QTMxRjRDMDAwQzAwQjU0REVEIC8qIEV4Y2VwdGlvbkRhdGEuY3Bw
ICovLAorCQkJCTUxRjY0NTYwMUY0NTM5OEIwMEI1NERFRCAvKiBFeGNlcHRpb25EYXRhLmggKi8s
CisJCQkJOTNEMTk2MzAxRDZDQUI3NjAwRkM3RTQ3IC8qIEV4Y2VwdGlvbk9yLmggKi8sCisJCQkJ
RTQ3RTI3NjcxNjAzNkVEQzAwRUUyQUZCIC8qIEV4dGVuc2lvblN0eWxlU2hlZXRzLmNwcCAqLywK
KwkJCQlFNDdFMjc2NDE2MDM2RUQyMDBFRTJBRkIgLyogRXh0ZW5zaW9uU3R5bGVTaGVldHMuaCAq
LywKKwkJCQlCNkQ5RDIzNDE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5jcHAgKi8sCisJ
CQkJQjZEOUQyMzMxNEVBQkQyNjAwOTBENzVFIC8qIEZvY3VzRXZlbnQuaCAqLywKKwkJCQlCNkQ5
RDI3MjE0RUFCRjAzMDA5MEQ3NUUgLyogRm9jdXNFdmVudC5pZGwgKi8sCisJCQkJQUFERUZFNDMy
NUFGNEZDQjAwNDBERDY3IC8qIEZvY3VzT3B0aW9ucy5oICovLAorCQkJCUFBMkUwRDA5MjVBRjUx
MDQwMDc2OTNCQSAvKiBGb2N1c09wdGlvbnMuaWRsICovLAorCQkJCTJBNjY0MzkxMjZBMDA2QUYw
MEMxNDdBMSAvKiBGb3JtRGF0YUV2ZW50LmNwcCAqLywKKwkJCQkyQTY2NDM5MDI2QTAwNkFGMDBD
MTQ3QTEgLyogRm9ybURhdGFFdmVudC5oICovLAorCQkJCTJBNjY0MzhFMjZBMDA2QUUwMEMxNDdB
MSAvKiBGb3JtRGF0YUV2ZW50LmlkbCAqLywKKwkJCQlBODUzMTIzQzExRDA0NzFCMDBENEQwNzcg
LyogRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uLmggKi8sCisJCQkJQ0Q5MkY1MTcyMjYxMDM4
MjAwRjg3QkIzIC8qIEZ1bGxzY3JlZW5NYW5hZ2VyLmNwcCAqLywKKwkJCQlDRDkyRjUxNjIyNjEw
MzgyMDBGODdCQjMgLyogRnVsbHNjcmVlbk1hbmFnZXIuaCAqLywKKwkJCQk5QkFBQzQ1ODIxNTFF
NzdBMDAzRDRBOTggLyogR0NSZWFjaGFibGVSZWYuY3BwICovLAorCQkJCTlCQUFDNDU2MjE1MUUz
OUUwMDNENEE5OCAvKiBHQ1JlYWNoYWJsZVJlZi5oICovLAorCQkJCTdDMkQ3MjJFMjUwODNBMzQw
MDUzOTY2MiAvKiBHbG9iYWxFdmVudEhhbmRsZXJzK1BvaW50ZXJFdmVudHMuaWRsICovLAorCQkJ
CTQ0QkQyQjM2MjUyNzc5NzgwMDU1RDk1QSAvKiBHbG9iYWxFdmVudEhhbmRsZXJzK1NlbGVjdGlv
bi5pZGwgKi8sCisJCQkJN0M0MTg5QUIxQjA3QzE3MDAwMEZBNzU3IC8qIEdsb2JhbEV2ZW50SGFu
ZGxlcnMuaWRsICovLAorCQkJCUUzQkYxOUU2MjJBRjMwMkEwMDlDOTkyNiAvKiBIYXNoQ2hhbmdl
RXZlbnQuY3BwICovLAorCQkJCTI0NDJCQkY4MTE5NEM5RDMwMEQ0OTQ2OSAvKiBIYXNoQ2hhbmdl
RXZlbnQuaCAqLywKKwkJCQk4NDgyQjc0NDExOThDMzJFMDBCRkIwMDUgLyogSGFzaENoYW5nZUV2
ZW50LmlkbCAqLywKKwkJCQk5Qjg2NEYwNzIzNEMwOEEzMDA2RDEwRUIgLyogSWRsZUNhbGxiYWNr
Q29udHJvbGxlci5jcHAgKi8sCisJCQkJOUI4NjRGMDUyMzRDMDg5MzAwNkQxMEVCIC8qIElkbGVD
YWxsYmFja0NvbnRyb2xsZXIuaCAqLywKKwkJCQk5Qjc0MjYwOTIzNEJFQTZFMDBEQjUyRTkgLyog
SWRsZURlYWRsaW5lLmNwcCAqLywKKwkJCQk5Qjc0MjYwODIzNEJFQTZFMDBEQjUyRTkgLyogSWRs
ZURlYWRsaW5lLmggKi8sCisJCQkJOUI3NDI2MEEyMzRCRUE2RTAwREI1MkU5IC8qIElkbGVEZWFk
bGluZS5pZGwgKi8sCisJCQkJOUI3NDI2MDMyMzRCRTk1NjAwREI1MkU5IC8qIElkbGVSZXF1ZXN0
Q2FsbGJhY2suaCAqLywKKwkJCQk5Qjc0MjYwNDIzNEJFOTU2MDBEQjUyRTkgLyogSWRsZVJlcXVl
c3RDYWxsYmFjay5pZGwgKi8sCisJCQkJOUI4NjRGMDAyMzRDMDI4QTAwNkQxMEVCIC8qIElkbGVS
ZXF1ZXN0T3B0aW9ucy5oICovLAorCQkJCTlCODY0RjAxMjM0QzAyOEEwMDZEMTBFQiAvKiBJZGxl
UmVxdWVzdE9wdGlvbnMuaWRsICovLAorCQkJCUMzQ0YxN0EwMTVCMDA2M0YwMDI3NkQzOSAvKiBJ
ZFRhcmdldE9ic2VydmVyLmNwcCAqLywKKwkJCQlDM0NGMTdBMTE1QjAwNjNGMDAyNzZEMzkgLyog
SWRUYXJnZXRPYnNlcnZlci5oICovLAorCQkJCUMzQ0YxN0EyMTVCMDA2M0YwMDI3NkQzOSAvKiBJ
ZFRhcmdldE9ic2VydmVyUmVnaXN0cnkuY3BwICovLAorCQkJCUMzQ0YxN0EzMTVCMDA2M0YwMDI3
NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyUmVnaXN0cnkuaCAqLywKKwkJCQk4QUI0QkM3NjEyNkZE
QjcxMDBERUI3MjcgLyogSWdub3JlRGVzdHJ1Y3RpdmVXcml0ZUNvdW50SW5jcmVtZW50ZXIuaCAq
LywKKwkJCQk0NjczMDIwMTFDNEVGRTY2MDBCQ0IzNTcgLyogSWdub3JlT3BlbnNEdXJpbmdVbmxv
YWRDb3VudEluY3JlbWVudGVyLmggKi8sCisJCQkJRTMwNTkyNjExRTI3QTM4QzAwRDU3Qzk4IC8q
IElubGluZUNsYXNzaWNTY3JpcHQuY3BwICovLAorCQkJCUUzMDU5MjYyMUUyN0EzOEMwMEQ1N0M5
OCAvKiBJbmxpbmVDbGFzc2ljU2NyaXB0LmggKi8sCisJCQkJQUE0QzNBNzQwQjJCMTY3OTAwMjMz
NEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5jcHAgKi8sCisJCQkJQUE0QzNBNzUwQjJCMTY3
OTAwMjMzNEEyIC8qIElubGluZVN0eWxlU2hlZXRPd25lci5oICovLAorCQkJCTdDREE3OTEyMjUw
RTg4RjAwMDdEMUIzNiAvKiBJbm5lckhUTUwuaWRsICovLAorCQkJCTJFQjc2NzU1MURBMTlCOTkw
MDNFMjNCNSAvKiBJbnB1dEV2ZW50LmNwcCAqLywKKwkJCQkyRUI3Njc1NDFEQTE5QjY3MDAzRTIz
QjUgLyogSW5wdXRFdmVudC5oICovLAorCQkJCTJFQjc2NzUzMURBMTkzMTMwMDNFMjNCNSAvKiBJ
bnB1dEV2ZW50LmlkbCAqLywKKwkJCQk4NTAzMUIyRDBBNDRFRkM3MDBGOTkyRTAgLyogS2V5Ym9h
cmRFdmVudC5jcHAgKi8sCisJCQkJODUwMzFCMkUwQTQ0RUZDNzAwRjk5MkUwIC8qIEtleWJvYXJk
RXZlbnQuaCAqLywKKwkJCQkxNENGN0MyMDA5RjcxMTA2MDBFQjM2NjUgLyogS2V5Ym9hcmRFdmVu
dC5pZGwgKi8sCisJCQkJQkM3RkE2MUUwRDFGMENCRDAwREIyMkE5IC8qIExpdmVOb2RlTGlzdC5j
cHAgKi8sCisJCQkJQkM3RkE2MUYwRDFGMENCRDAwREIyMkE5IC8qIExpdmVOb2RlTGlzdC5oICov
LAorCQkJCUUzQjJGMEUzMUQ3RjM1RUMwMEIwQzlEMSAvKiBMb2FkYWJsZUNsYXNzaWNTY3JpcHQu
Y3BwICovLAorCQkJCUUzQjJGMEU0MUQ3RjM1RUMwMEIwQzlEMSAvKiBMb2FkYWJsZUNsYXNzaWNT
Y3JpcHQuaCAqLywKKwkJCQlFMzA3REVEMjFEODFFNEVEMDAxNDFDQUYgLyogTG9hZGFibGVNb2R1
bGVTY3JpcHQuY3BwICovLAorCQkJCUUzMDdERUQzMUQ4MUU0RUQwMDE0MUNBRiAvKiBMb2FkYWJs
ZU1vZHVsZVNjcmlwdC5oICovLAorCQkJCUUzQjJGMEU5MUQ3RjNEM0MwMEIwQzlEMSAvKiBMb2Fk
YWJsZVNjcmlwdC5jcHAgKi8sCisJCQkJRTNCMkYwRTcxRDdGMzVFQzAwQjBDOUQxIC8qIExvYWRh
YmxlU2NyaXB0LmggKi8sCisJCQkJRTNCMkYwRTgxRDdGMzVFQzAwQjBDOUQxIC8qIExvYWRhYmxl
U2NyaXB0Q2xpZW50LmggKi8sCisJCQkJQkM5QTYxNDUxNDY4NTlEOTAwNjA1N0ZEIC8qIG1ha2Vf
ZXZlbnRfZmFjdG9yeS5wbCAqLywKKwkJCQlCQzlBNjE0NjE0Njg1OUQ5MDA2MDU3RkQgLyogbWFr
ZV9uYW1lcy5wbCAqLywKKwkJCQlFMUFERUNDRDBFNzZBRDhCMDA0QTFBNUUgLyogTWVzc2FnZUNo
YW5uZWwuY3BwICovLAorCQkJCUUxQURFQ0NDMEU3NkFEOEIwMDRBMUE1RSAvKiBNZXNzYWdlQ2hh
bm5lbC5oICovLAorCQkJCUUxQURFQ0QwMEU3NkFEQUIwMDRBMUE1RSAvKiBNZXNzYWdlQ2hhbm5l
bC5pZGwgKi8sCisJCQkJNzU3OTNFODAwRDBDRTBCMzAwN0ZDMEFDIC8qIE1lc3NhZ2VFdmVudC5j
cHAgKi8sCisJCQkJNzU3OTNFODEwRDBDRTBCMzAwN0ZDMEFDIC8qIE1lc3NhZ2VFdmVudC5oICov
LAorCQkJCTc1NzkzRTgyMEQwQ0UwQjMwMDdGQzBBQyAvKiBNZXNzYWdlRXZlbnQuaWRsICovLAor
CQkJCUUxQURFQ0JFMEU3NkFDRjEwMDRBMUE1RSAvKiBNZXNzYWdlUG9ydC5jcHAgKi8sCisJCQkJ
RTFBREVDQkQwRTc2QUNGMTAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0LmggKi8sCisJCQkJRTFBREVD
QzYwRTc2QUQxRjAwNEExQTVFIC8qIE1lc3NhZ2VQb3J0LmlkbCAqLywKKwkJCQk1MUY2NDVERTFG
RjQ1OTRCMDBCNTRERUQgLyogTWVzc2FnZVBvcnRJZGVudGlmaWVyLmggKi8sCisJCQkJQ0I4Q0Yw
MTUxQTkzNEI0MzAwMEQ1MTBCIC8qIE1pY3JvdGFza3MuY3BwICovLAorCQkJCTUzQjg5NUFEMTlE
QzdDMzcwMDlDQUE5MyAvKiBNaWNyb3Rhc2tzLmggKi8sCisJCQkJRTM4RDA2MDkxRjhFODExOTAw
NjQ5Q0YyIC8qIE1vZHVsZUZldGNoUGFyYW1ldGVycy5oICovLAorCQkJCTg1MDMxQjJGMEE0NEVG
QzcwMEY5OTJFMCAvKiBNb3VzZUV2ZW50LmNwcCAqLywKKwkJCQk4NTAzMUIzMDBBNDRFRkM3MDBG
OTkyRTAgLyogTW91c2VFdmVudC5oICovLAorCQkJCTE0MUI5NEU1MDlFQzQyMjMwMDBFOTQxMyAv
KiBNb3VzZUV2ZW50LmlkbCAqLywKKwkJCQk4Mzc2NUY5NDFEQUM1MjE4MDBDMDY1MzcgLyogTW91
c2VFdmVudEluaXQuaCAqLywKKwkJCQk4Mzc2NUY5MzFEQUM1MjE4MDBDMDY1MzcgLyogTW91c2VF
dmVudEluaXQuaWRsICovLAorCQkJCTg1MDMxQjMxMEE0NEVGQzcwMEY5OTJFMCAvKiBNb3VzZVJl
bGF0ZWRFdmVudC5jcHAgKi8sCisJCQkJODUwMzFCMzIwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNl
UmVsYXRlZEV2ZW50LmggKi8sCisJCQkJQzZGMDkwMDExNDMyN0I2MTAwNjg1ODQ5IC8qIE11dGF0
aW9uQ2FsbGJhY2suaCAqLywKKwkJCQk3Q0QzNDQwRDFGMzEwODM2MDAwRENENDkgLyogTXV0YXRp
b25DYWxsYmFjay5pZGwgKi8sCisJCQkJODUwMzFCMzMwQTQ0RUZDNzAwRjk5MkUwIC8qIE11dGF0
aW9uRXZlbnQuY3BwICovLAorCQkJCTg1MDMxQjM0MEE0NEVGQzcwMEY5OTJFMCAvKiBNdXRhdGlv
bkV2ZW50LmggKi8sCisJCQkJOTNFRUMxRjMwOUMyODc3NzAwQzUxNUQxIC8qIE11dGF0aW9uRXZl
bnQuaWRsICovLAorCQkJCUM2RjA5MDA1MTQzMjdCNjEwMDY4NTg0OSAvKiBNdXRhdGlvbk9ic2Vy
dmVyLmNwcCAqLywKKwkJCQlDNkYwOTAwNjE0MzI3QjYxMDA2ODU4NDkgLyogTXV0YXRpb25PYnNl
cnZlci5oICovLAorCQkJCUM2RjA5MDA3MTQzMjdCNjEwMDY4NTg0OSAvKiBNdXRhdGlvbk9ic2Vy
dmVyLmlkbCAqLywKKwkJCQlENkU1MjhBMTE0OUE5MjZEMDBFRkUxRjMgLyogTXV0YXRpb25PYnNl
cnZlckludGVyZXN0R3JvdXAuY3BwICovLAorCQkJCUQ2RTUyOEEyMTQ5QTkyNkQwMEVGRTFGMyAv
KiBNdXRhdGlvbk9ic2VydmVySW50ZXJlc3RHcm91cC5oICovLAorCQkJCUQ2RTI3NkFEMTQ2Mzc0
NTUwMDFEMjgwQSAvKiBNdXRhdGlvbk9ic2VydmVyUmVnaXN0cmF0aW9uLmNwcCAqLywKKwkJCQlE
NkUyNzZBRTE0NjM3NDU1MDAxRDI4MEEgLyogTXV0YXRpb25PYnNlcnZlclJlZ2lzdHJhdGlvbi5o
ICovLAorCQkJCUM2RjA4RkI5MTQzMEZFOEYwMDY4NTg0OSAvKiBNdXRhdGlvblJlY29yZC5jcHAg
Ki8sCisJCQkJQzZGMDhGQkExNDMwRkU4RjAwNjg1ODQ5IC8qIE11dGF0aW9uUmVjb3JkLmggKi8s
CisJCQkJQzZGMDhGQkIxNDMwRkU4RjAwNjg1ODQ5IC8qIE11dGF0aW9uUmVjb3JkLmlkbCAqLywK
KwkJCQlCQ0YzNEEzNjExQTIzMUNEMDBDNzE4MDQgLyogTmFtZWROb2RlTWFwLmNwcCAqLywKKwkJ
CQlBODE4NzIxODA5NzdEM0MwMDA1ODI2RDkgLyogTmFtZWROb2RlTWFwLmggKi8sCisJCQkJODVB
Q0E5RjkwQTlCNjMxMDAwNjcxRTkwIC8qIE5hbWVkTm9kZU1hcC5pZGwgKi8sCisJCQkJQTgxODcy
MTkwOTc3RDNDMDAwNTgyNkQ5IC8qIE5hbWVOb2RlTGlzdC5jcHAgKi8sCisJCQkJQTgxODcyMTMw
OTc3RDNDMDAwNTgyNkQ5IC8qIE5hbWVOb2RlTGlzdC5oICovLAorCQkJCTgzMDZFRkYwMUI4QkNF
N0MwMDMxRDAzMiAvKiBOYXRpdmVOb2RlRmlsdGVyLmNwcCAqLywKKwkJCQk4M0U5NTlFMTFCOEJD
MjJCMDA0RDkzODUgLyogTmF0aXZlTm9kZUZpbHRlci5oICovLAorCQkJCTcxRkY4NTE4MjJBM0Y4
MUYwMDVENTk1OSAvKiBOYXZpZ2F0b3JNYXhUb3VjaFBvaW50cy5pZGwgKi8sCisJCQkJQThDNEE3
RUUwOUQ1NjMyNzAwMDNBQzhEIC8qIE5vZGUuY3BwICovLAorCQkJCTE0MTE1QjUxMDlGODRCNzEw
MENBNEZDMSAvKiBOb2RlLmggKi8sCisJCQkJMTREQzBEMEIwOUZFQ0ZBNDAwN0IwMjM1IC8qIE5v
ZGUuaWRsICovLAorCQkJCUUzRDA0OTkzMURBREMwNDUwMDcxOEYzQyAvKiBOb2RlQ29uc3RhbnRz
LmggKi8sCisJCQkJODU0RkU3MjcwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXIuaCAqLywK
KwkJCQkxNDExNUFGOTA5Rjg0N0Q2MDBDQTRGQzEgLyogTm9kZUZpbHRlci5pZGwgKi8sCisJCQkJ
ODU0RkU3MjgwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXJDb25kaXRpb24uY3BwICovLAor
CQkJCTg1NEZFNzI5MEEyMjk3QkUwMDU4RDdBRCAvKiBOb2RlRmlsdGVyQ29uZGl0aW9uLmggKi8s
CisJCQkJODU0RkU3MkEwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVJdGVyYXRvci5jcHAgKi8sCisJ
CQkJODU0RkU3MkIwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVJdGVyYXRvci5oICovLAorCQkJCTFB
NzUwRDg3MEE5MEUzOTQwMDBGRjIxNSAvKiBOb2RlSXRlcmF0b3IuaWRsICovLAorCQkJCUUzQkM4
MjczMjI1MzAyMjEwMDUyNzZERSAvKiBOb2RlTGlzdC5jcHAgKi8sCisJCQkJQTgxODcyMTAwOTc3
RDNDMDAwNTgyNkQ5IC8qIE5vZGVMaXN0LmggKi8sCisJCQkJODVBQ0E5RkEwQTlCNjMxMDAwNjcx
RTkwIC8qIE5vZGVMaXN0LmlkbCAqLywKKwkJCQk0RkFCNDg2NjE2NDNBNjdFMDBGNzBDMDcgLyog
Tm9kZVJhcmVEYXRhLmNwcCAqLywKKwkJCQk2MzE4OUFFMjBFODNBMzMzMDAwMTJFNDEgLyogTm9k
ZVJhcmVEYXRhLmggKi8sCisJCQkJNjNEN0IzMkMwRTc4Q0QzRjAwRjc2MTdDIC8qIE5vZGVSZW5k
ZXJTdHlsZS5oICovLAorCQkJCUU0MzEwNUI3MTY3NTBGMEMwMERCMkZCOCAvKiBOb2RlVHJhdmVy
c2FsLmNwcCAqLywKKwkJCQlFNDMxMDVCQTE2NzUwRjE2MDBEQjJGQjggLyogTm9kZVRyYXZlcnNh
bC5oICovLAorCQkJCTkzODJBQUIxMEQ4QzM4NjEwMEYzNTdBNiAvKiBOb2RlV2l0aEluZGV4Lmgg
Ki8sCisJCQkJODM2OUU1OEYxQUZERDAzMDAwODdERjY4IC8qIE5vbkRvY3VtZW50VHlwZUNoaWxk
Tm9kZS5pZGwgKi8sCisJCQkJN0M2NzUyQkExQjA2RTgyMDAwQzI3OUNCIC8qIE5vbkVsZW1lbnRQ
YXJlbnROb2RlLmlkbCAqLywKKwkJCQkxQTBENTczNDBBNUM3N0ZFMDA3RURENEMgLyogT3ZlcmZs
b3dFdmVudC5jcHAgKi8sCisJCQkJMUEwRDU3MzUwQTVDNzdGRTAwN0VERDRDIC8qIE92ZXJmbG93
RXZlbnQuaCAqLywKKwkJCQkxQTBENTczODBBNUM3ODEyMDA3RURENEMgLyogT3ZlcmZsb3dFdmVu
dC5pZGwgKi8sCisJCQkJRTEyODRBRTkxMDQ0N0RFRTAwRUFFQjUyIC8qIFBhZ2VUcmFuc2l0aW9u
RXZlbnQuY3BwICovLAorCQkJCUUxMjg0QUUwMTA0NDdENDUwMEVBRUI1MiAvKiBQYWdlVHJhbnNp
dGlvbkV2ZW50LmggKi8sCisJCQkJRTEyODRBRDkxMDQ0N0FFQjAwRUFFQjUyIC8qIFBhZ2VUcmFu
c2l0aW9uRXZlbnQuaWRsICovLAorCQkJCTgzRDI2RDNEMUFGRENDNTAwMDFCMzg3MyAvKiBQYXJl
bnROb2RlLmlkbCAqLywKKwkJCQk4QTdDQzk2RjEyMDc2RjhBMDAxRDQ1ODggLyogUGVuZGluZ1Nj
cmlwdC5jcHAgKi8sCisJCQkJOEE3Q0M5NkExMjA3NkQ3MzAwMUQ0NTg4IC8qIFBlbmRpbmdTY3Jp
cHQuaCAqLywKKwkJCQlFM0ZBMzg2MTFENzE2RTc2MDBBQTU5NTAgLyogUGVuZGluZ1NjcmlwdENs
aWVudC5oICovLAorCQkJCTMxN0QzRkYxMjE1NTk5RTIwMDM0RTNCOSAvKiBQb2ludGVyRXZlbnQu
Y3BwICovLAorCQkJCTMxN0QzRkYyMjE1NTk5RTMwMDM0RTNCOSAvKiBQb2ludGVyRXZlbnQuaCAq
LywKKwkJCQkzMTdEM0ZFRjIxNTU5OUUxMDAzNEUzQjkgLyogUG9pbnRlckV2ZW50LmlkbCAqLywK
KwkJCQlGNDIwRjAwOTI1RTQ3NzkxMDA5MjUxRUYgLyogUG9pbnRlckV2ZW50VHlwZU5hbWVzLmNw
cCAqLywKKwkJCQlGNDIwRjAwODI1RTQ3NzkxMDA5MjUxRUYgLyogUG9pbnRlckV2ZW50VHlwZU5h
bWVzLmggKi8sCisJCQkJNTE4OUYwREQxMEI0NkIwRTAwRjNDNzM5IC8qIFBvcFN0YXRlRXZlbnQu
Y3BwICovLAorCQkJCTUxNzRFMjA4MTBBMUY0NEYwMEY5NUU2RiAvKiBQb3BTdGF0ZUV2ZW50Lmgg
Ki8sCisJCQkJNTE3NEUyMEIxMEExRjQ5QTAwRjk1RTZGIC8qIFBvcFN0YXRlRXZlbnQuaWRsICov
LAorCQkJCUJFOTFGQzhDMDYxMzM2NjYwMDVFMzc5MCAvKiBQb3NpdGlvbi5jcHAgKi8sCisJCQkJ
QkU5MUZDOEIwNjEzMzY2NjAwNUUzNzkwIC8qIFBvc2l0aW9uLmggKi8sCisJCQkJMzc5MTlDMjEw
QjdEMTg4NjAwQTU2OTk4IC8qIFBvc2l0aW9uSXRlcmF0b3IuY3BwICovLAorCQkJCTM3OTE5QzIy
MEI3RDE4ODYwMEE1Njk5OCAvKiBQb3NpdGlvbkl0ZXJhdG9yLmggKi8sCisJCQkJQThFQTdFQjUw
QTE5NDVEMDAwQThFRjVGIC8qIFByb2Nlc3NpbmdJbnN0cnVjdGlvbi5jcHAgKi8sCisJCQkJQThF
QTdFQjQwQTE5NDVEMDAwQThFRjVGIC8qIFByb2Nlc3NpbmdJbnN0cnVjdGlvbi5oICovLAorCQkJ
CTkzRUVDMUY1MDlDMjg3NzcwMEM1MTVEMSAvKiBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaWRsICov
LAorCQkJCUU0QjQxRTAxMENCRjhFQUEwMEFGMkVDRSAvKiBQcm9ncmVzc0V2ZW50LmNwcCAqLywK
KwkJCQlFNEI0MUUwMjBDQkY4RUFBMDBBRjJFQ0UgLyogUHJvZ3Jlc3NFdmVudC5oICovLAorCQkJ
CUU0QjQxRTAzMENCRjhFQUEwMEFGMkVDRSAvKiBQcm9ncmVzc0V2ZW50LmlkbCAqLywKKwkJCQlB
NTc4RjQzMjFERTAwRUQ2MDAzREZDNkEgLyogUHJvbWlzZVJlamVjdGlvbkV2ZW50LmNwcCAqLywK
KwkJCQlBNTc4RjQzMzFERTAwRUQ2MDAzREZDNkEgLyogUHJvbWlzZVJlamVjdGlvbkV2ZW50Lmgg
Ki8sCisJCQkJQTU3OEY0MzQxREUwMEVENjAwM0RGQzZBIC8qIFByb21pc2VSZWplY3Rpb25FdmVu
dC5pZGwgKi8sCisJCQkJRkY5NDVFQzkxNjFGN0YzNjAwOTcxQkM4IC8qIFBzZXVkb0VsZW1lbnQu
Y3BwICovLAorCQkJCUZGOTQ1RUNBMTYxRjdGMzYwMDk3MUJDOCAvKiBQc2V1ZG9FbGVtZW50Lmgg
Ki8sCisJCQkJNTUwQTBCQzcwODVGNjAzOTAwNzM1M0Q2IC8qIFF1YWxpZmllZE5hbWUuY3BwICov
LAorCQkJCTU1MEEwQkM4MDg1RjYwMzkwMDczNTNENiAvKiBRdWFsaWZpZWROYW1lLmggKi8sCisJ
CQkJODNDMUY1OTExRURGNjlEMzAwNDEwRDI3IC8qIFF1YWxpZmllZE5hbWVDYWNoZS5jcHAgKi8s
CisJCQkJODNDMUY1OTIxRURGNjlEMzAwNDEwRDI3IC8qIFF1YWxpZmllZE5hbWVDYWNoZS5oICov
LAorCQkJCTkzRjkyNTQyMEY3RUY1QjgwMDdFMzdDOSAvKiBSYWRpb0J1dHRvbkdyb3Vwcy5jcHAg
Ki8sCisJCQkJOTNGOTI1NDEwRjdFRjVCODAwN0UzN0M5IC8qIFJhZGlvQnV0dG9uR3JvdXBzLmgg
Ki8sCisJCQkJN0M2NzcxMjgyNTI3RDI4MTAwRkRFRjAwIC8qIFJhbmdlK0NTU09NVmlldy5pZGwg
Ki8sCisJCQkJN0M2NzcxMjcyNTI3RDI4MDAwRkRFRjAwIC8qIFJhbmdlK0RPTVBhcnNpbmcuaWRs
ICovLAorCQkJCUY1MjNEMzAzMDJERTQ0NzYwMTg2MzVDQSAvKiBSYW5nZS5jcHAgKi8sCisJCQkJ
RjUyM0QzMDQwMkRFNDQ3NjAxODYzNUNBIC8qIFJhbmdlLmggKi8sCisJCQkJOTM2REQwM0EwOUNF
QUMyNzAwNTZBRThDIC8qIFJhbmdlLmlkbCAqLywKKwkJCQk5M0Q5RDUzQjBEQTI3RTE4MDA3NzIx
NkMgLyogUmFuZ2VCb3VuZGFyeVBvaW50LmggKi8sCisJCQkJQTg0RDgyN0IxMUQzMzNFRDAwOTcy
OTkwIC8qIFJhd0RhdGFEb2N1bWVudFBhcnNlci5oICovLAorCQkJCTg1MDMxQjM2MEE0NEVGQzcw
MEY5OTJFMCAvKiBSZWdpc3RlcmVkRXZlbnRMaXN0ZW5lci5oICovLAorCQkJCUE1NzhGNDNEMURF
MEI2MkIwMDNERkM2QSAvKiBSZWplY3RlZFByb21pc2VUcmFja2VyLmNwcCAqLywKKwkJCQlBNTc4
RjQzRTFERTBCNjJCMDAzREZDNkEgLyogUmVqZWN0ZWRQcm9taXNlVHJhY2tlci5oICovLAorCQkJ
CUE3NkU1RjdFMTM1RTBEQ0YwMEE2OTgzNyAvKiBSZW5kZXJlZERvY3VtZW50TWFya2VyLmggKi8s
CisJCQkJNDk5OEFFQzQxM0Y5RDBFQTAwOTBCMUFBIC8qIFJlcXVlc3RBbmltYXRpb25GcmFtZUNh
bGxiYWNrLmggKi8sCisJCQkJNDk5OEFFQzUxM0Y5RDBFQTAwOTBCMUFBIC8qIFJlcXVlc3RBbmlt
YXRpb25GcmFtZUNhbGxiYWNrLmlkbCAqLywKKwkJCQk5QkQwQkY5MjEyQTQyQkY1MDA3MkZENDMg
LyogU2NvcGVkRXZlbnRRdWV1ZS5jcHAgKi8sCisJCQkJOUJEMEJGOTExMkE0MkJGNTAwNzJGRDQz
IC8qIFNjb3BlZEV2ZW50UXVldWUuaCAqLywKKwkJCQlBODREODJDMDExRDM0NzQ4MDA5NzI5OTAg
LyogU2NyaXB0YWJsZURvY3VtZW50UGFyc2VyLmNwcCAqLywKKwkJCQlBODREODJCRjExRDM0NzQ4
MDA5NzI5OTAgLyogU2NyaXB0YWJsZURvY3VtZW50UGFyc2VyLmggKi8sCisJCQkJRTQ2QjQxRjgx
Q0IyNEU3MDAwOEYxMURFIC8qIFNjcmlwdERpc2FsbG93ZWRTY29wZS5oICovLAorCQkJCTQ5OThB
RUNGMTNGQjIyNEQwMDkwQjFBQSAvKiBTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIuY3BwICov
LAorCQkJCTQ5OThBRUQwMTNGQjIyNEQwMDkwQjFBQSAvKiBTY3JpcHRlZEFuaW1hdGlvbkNvbnRy
b2xsZXIuaCAqLywKKwkJCQkwOEE0ODQ3NTBFNTI3MkM1MDBDM0ZFNzYgLyogU2NyaXB0RWxlbWVu
dC5jcHAgKi8sCisJCQkJMDhBNDg0NzYwRTUyNzJDNTAwQzNGRTc2IC8qIFNjcmlwdEVsZW1lbnQu
aCAqLywKKwkJCQlFM0U0RTJBNTFFM0IxNkZDMDAyM0JCOEEgLyogU2NyaXB0RWxlbWVudENhY2hl
ZFNjcmlwdEZldGNoZXIuY3BwICovLAorCQkJCUUzRTRFMkE2MUUzQjE2RkMwMDIzQkI4QSAvKiBT
Y3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICovLAorCQkJCUUxMUM5REFGMEVCMzY5
OTUwMEU0MDlEQiAvKiBTY3JpcHRFeGVjdXRpb25Db250ZXh0LmNwcCAqLywKKwkJCQlFMTFDOUQ5
QTBFQjM2ODEyMDBFNDA5REIgLyogU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oICovLAorCQkJCThB
NDEzQURGMTIwN0JCQTUwMDgyMDE2RSAvKiBTY3JpcHRSdW5uZXIuY3BwICovLAorCQkJCThBNDEz
QURFMTIwN0JCQTUwMDgyMDE2RSAvKiBTY3JpcHRSdW5uZXIuaCAqLywKKwkJCQk5NzZGMzZFODE0
Njg2MjI1MDA1RTkzQjQgLyogU2VjdXJpdHlDb250ZXh0LmNwcCAqLywKKwkJCQk5NzZGMzZFOTE0
Njg2MjI1MDA1RTkzQjQgLyogU2VjdXJpdHlDb250ZXh0LmggKi8sCisJCQkJMUFGN0FGQzUxQTQ4
QThCQzAwQzhFNEU3IC8qIFNlY3VyaXR5T3JpZ2luUG9saWN5LmNwcCAqLywKKwkJCQkxQUY3QUZD
NjFBNDhBOEJDMDBDOEU0RTcgLyogU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCAqLywKKwkJCQlFM0JG
MTlFNzIyQUYzMDlGMDA5Qzk5MjYgLyogU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudC5jcHAg
Ki8sCisJCQkJMkQ1QkM0MjUxNkY4ODJCRTAwNzA0OEQwIC8qIFNlY3VyaXR5UG9saWN5VmlvbGF0
aW9uRXZlbnQuaCAqLywKKwkJCQkyRDVCQzQyNjE2Rjg4MkJFMDA3MDQ4RDAgLyogU2VjdXJpdHlQ
b2xpY3lWaW9sYXRpb25FdmVudC5pZGwgKi8sCisJCQkJOThDQkM4MDMyNjE4RjY4QjAwMTU5M0M4
IC8qIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZS5oICovLAorCQkJCUU0NTMyMkE5MTQwQ0UyNjcw
MDVBMEY5MiAvKiBTZWxlY3RvclF1ZXJ5LmNwcCAqLywKKwkJCQlFNDUzMjJBQTE0MENFMjY3MDA1
QTBGOTIgLyogU2VsZWN0b3JRdWVyeS5oICovLAorCQkJCUE2RDE2OTYxMTM0NkI0OUIwMDBFQjc3
MCAvKiBTaGFkb3dSb290LmNwcCAqLywKKwkJCQlBNkQxNjk2MzEzNDZCNEMxMDAwRUI3NzAgLyog
U2hhZG93Um9vdC5oICovLAorCQkJCTlCMTlCNjdFMUI5NjRFNTIwMDM0ODc0NSAvKiBTaGFkb3dS
b290LmlkbCAqLywKKwkJCQkwNTRFM0EzMzI1NkMzQkQ5MDA3MkM1QjkgLyogU2hhZG93Um9vdElu
aXQuaCAqLywKKwkJCQkwNTRFM0EzNTI1NkMzQkQ5MDA3MkM1QjkgLyogU2hhZG93Um9vdEluaXQu
aWRsICovLAorCQkJCTQ2REZGNDk2MURDMjYwMTMwMEI4MEI0OCAvKiBTaGFkb3dSb290TW9kZS5o
ICovLAorCQkJCTQ2REZGNDk3MURDMjYwMTMwMEI4MEI0OCAvKiBTaGFkb3dSb290TW9kZS5pZGwg
Ki8sCisJCQkJOTMxNkRERkEyNDBDNjRCMzAwOTM0MEFBIC8qIFNpbXBsZVJhbmdlLmNwcCAqLywK
KwkJCQk5MzE2RERGODI0MEM2NEIzMDA5MzQwQUEgLyogU2ltcGxlUmFuZ2UuaCAqLywKKwkJCQk1
NzJBN0YyMjFDNkU1QTY2MDA5QzYxNDkgLyogU2ltdWxhdGVkQ2xpY2suY3BwICovLAorCQkJCTU3
MkE3RjIwMUM2RTU3MTkwMDlDNjE0OSAvKiBTaW11bGF0ZWRDbGljay5oICovLAorCQkJCTMxNzQx
QUFCMTY2MzVFNDUwMDhBNUI3RSAvKiBTaW11bGF0ZWRDbGlja09wdGlvbnMuaCAqLywKKwkJCQk4
MzVGOEIyNjFEMkQ5MEJBMDBFNDA4RUMgLyogU2xvdGFibGUuaWRsICovLAorCQkJCTlCNTMyRUEx
MUJBOTI4NTcwMDM4QTgyNyAvKiBTbG90QXNzaWdubWVudC5jcHAgKi8sCisJCQkJOUI1MzJFQTIx
QkE5Mjg1NzAwMzhBODI3IC8qIFNsb3RBc3NpZ25tZW50LmggKi8sCisJCQkJRDAxQTI3QUIxMEM5
QkZEODAwMDI2QTQyIC8qIFNwYWNlU3BsaXRTdHJpbmcuY3BwICovLAorCQkJCUQwMUEyN0FDMTBD
OUJGRDgwMDAyNkE0MiAvKiBTcGFjZVNwbGl0U3RyaW5nLmggKi8sCisJCQkJQkM3RkE2MkMwRDFG
MEVGRjAwREIyMkE5IC8qIFN0YXRpY05vZGVMaXN0LmNwcCAqLywKKwkJCQlCQzdGQTYyQjBEMUYw
RUZGMDBEQjIyQTkgLyogU3RhdGljTm9kZUxpc3QuaCAqLywKKwkJCQlGNDRFQkJEQTFEQjVERDlE
MDAyNzczMzQgLyogU3RhdGljUmFuZ2UuY3BwICovLAorCQkJCUY0NEVCQkQ4MURCNUQyMTQwMDI3
NzMzNCAvKiBTdGF0aWNSYW5nZS5oICovLAorCQkJCUY0NEVCQkQ2MURCNUQxQjYwMDI3NzMzNCAv
KiBTdGF0aWNSYW5nZS5pZGwgKi8sCisJCQkJODEwMkM1ODcxMzI1QkIxMTAwRERFNjdBIC8qIFN0
cmluZ0NhbGxiYWNrLmNwcCAqLywKKwkJCQk4MUFDNkMzNTEzMUM1N0QzMDAwOUE3RTAgLyogU3Ry
aW5nQ2FsbGJhY2suaCAqLywKKwkJCQk4MUFDNkMzNDEzMUM1N0MyMDAwOUE3RTAgLyogU3RyaW5n
Q2FsbGJhY2suaWRsICovLAorCQkJCUE4QzRBN0VDMDlENTYzMjcwMDAzQUM4RCAvKiBTdHlsZWRF
bGVtZW50LmNwcCAqLywKKwkJCQlBOEM0QTdFQjA5RDU2MzI3MDAwM0FDOEQgLyogU3R5bGVkRWxl
bWVudC5oICovLAorCQkJCTQ2M0VCNjIwMUI4Nzg5Q0IwMDk2RUQ1MSAvKiBUYWdDb2xsZWN0aW9u
LmNwcCAqLywKKwkJCQk0NjNFQjYyMTFCODc4OUNCMDA5NkVENTEgLyogVGFnQ29sbGVjdGlvbi5o
ICovLAorCQkJCTlCMEFCQ0FDMjM2QkI0MEEwMEI0NTA4NSAvKiBUYXNrU291cmNlLmggKi8sCisJ
CQkJMEYyNkE3QTcyMDU0QzIyNzAwOTBBMTQxIC8qIFRlbXBsYXRlQ29udGVudERvY3VtZW50RnJh
Z21lbnQuY3BwICovLAorCQkJCUM2NTA0NkE4MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1wbGF0ZUNv
bnRlbnREb2N1bWVudEZyYWdtZW50LmggKi8sCisJCQkJNjU1MEI2OUIwOTlERjAyNzAwOTBENzgx
IC8qIFRleHQuY3BwICovLAorCQkJCTY1NTBCNjlDMDk5REYwMjcwMDkwRDc4MSAvKiBUZXh0Lmgg
Ki8sCisJCQkJOTNFRUMxRjYwOUMyODc3NzAwQzUxNUQxIC8qIFRleHQuaWRsICovLAorCQkJCTVD
RTVEOUEwMURCODk3QzMwMENFN0E4RCAvKiBUZXh0RGVjb2Rlci5jcHAgKi8sCisJCQkJNUNFNUQ5
QTExREI4OTdDMzAwQ0U3QThEIC8qIFRleHREZWNvZGVyLmggKi8sCisJCQkJNUNFNUQ5QTIxREI4
OTdDMzAwQ0U3QThEIC8qIFRleHREZWNvZGVyLmlkbCAqLywKKwkJCQk0MUYwOTYzNjI0RjkwREVC
MDAwOUZCOTMgLyogVGV4dERlY29kZXJTdHJlYW0uaWRsICovLAorCQkJCTQxRjA5NjM3MjRGOTBE
RUIwMDA5RkI5MyAvKiBUZXh0RGVjb2RlclN0cmVhbS5qcyAqLywKKwkJCQk0MUYwOTYzOTI0Rjkw
REVDMDAwOUZCOTMgLyogVGV4dERlY29kZXJTdHJlYW1EZWNvZGVyLmNwcCAqLywKKwkJCQk0MUYw
OTYzODI0RjkwREVDMDAwOUZCOTMgLyogVGV4dERlY29kZXJTdHJlYW1EZWNvZGVyLmggKi8sCisJ
CQkJNDFGMDk2MzQyNEY5MERFQTAwMDlGQjkzIC8qIFRleHREZWNvZGVyU3RyZWFtRGVjb2Rlci5p
ZGwgKi8sCisJCQkJNUNFNUQ5QTMxREI4OTdDMzAwQ0U3QThEIC8qIFRleHRFbmNvZGVyLmNwcCAq
LywKKwkJCQk1Q0U1RDlBNDFEQjg5N0MzMDBDRTdBOEQgLyogVGV4dEVuY29kZXIuaCAqLywKKwkJ
CQk1Q0U1RDlBNTFEQjg5N0MzMDBDRTdBOEQgLyogVGV4dEVuY29kZXIuaWRsICovLAorCQkJCTQx
MEE4RUY0MjRGODIzQjkwMDRGOTA3MCAvKiBUZXh0RW5jb2RlclN0cmVhbS5pZGwgKi8sCisJCQkJ
NDEwQThFRjYyNEY4MjNCQTAwNEY5MDcwIC8qIFRleHRFbmNvZGVyU3RyZWFtLmpzICovLAorCQkJ
CTQxMEE4RUY4MjRGOEY0N0EwMDRGOTA3MCAvKiBUZXh0RW5jb2RlclN0cmVhbUVuY29kZXIuY3Bw
ICovLAorCQkJCTQxMEE4RUY5MjRGOEY0N0IwMDRGOTA3MCAvKiBUZXh0RW5jb2RlclN0cmVhbUVu
Y29kZXIuaCAqLywKKwkJCQk0MTBBOEVGNzI0RjhGM0Y2MDA0RjkwNzAgLyogVGV4dEVuY29kZXJT
dHJlYW1FbmNvZGVyLmlkbCAqLywKKwkJCQk5MzNBMTQyQjBCN0QxODg2MDBBNTNGRkQgLyogVGV4
dEV2ZW50LmNwcCAqLywKKwkJCQk5MzNBMTQyRDBCN0QxODg2MDBBNTNGRkQgLyogVGV4dEV2ZW50
LmggKi8sCisJCQkJOTMzQTE0MkMwQjdEMTg4NjAwQTUzRkZEIC8qIFRleHRFdmVudC5pZGwgKi8s
CisJCQkJQTc3QjQxOUYxMkU2NzVBOTAwNTQzNDNEIC8qIFRleHRFdmVudElucHV0VHlwZS5oICov
LAorCQkJCUU0RDk4OEI1MTdCRkVCMjEwMDg0RkI4OCAvKiBUZXh0Tm9kZVRyYXZlcnNhbC5jcHAg
Ki8sCisJCQkJRTREOTg4QjMxN0JGRDFGNjAwODRGQjg4IC8qIFRleHROb2RlVHJhdmVyc2FsLmgg
Ki8sCisJCQkJOUI0Mzc2RUYyMTE3RTg3MjAwOUQwM0EwIC8qIFRocm93T25EeW5hbWljTWFya3Vw
SW5zZXJ0aW9uQ291bnRJbmNyZW1lbnRlci5oICovLAorCQkJCTBGNTRERDA1MTg4MUQ1RjUwMDNF
RURCQiAvKiBUb3VjaC5oICovLAorCQkJCTBGNTRERDA2MTg4MUQ1RjUwMDNFRURCQiAvKiBUb3Vj
aEV2ZW50LmggKi8sCisJCQkJMEY1NEREMDcxODgxRDVGNTAwM0VFREJCIC8qIFRvdWNoTGlzdC5o
ICovLAorCQkJCTVEQjFCQzY4MTA3MTVBNjQwMEVGQUE0OSAvKiBUcmFuc2Zvcm1Tb3VyY2UuaCAq
LywKKwkJCQk1REIxQkM2OTEwNzE1QTY0MDBFRkFBNDkgLyogVHJhbnNmb3JtU291cmNlTGlieHNs
dC5jcHAgKi8sCisJCQkJRTE3QjQ5MTMxNkE5QjA5MzAwMUM4ODM5IC8qIFRyYW5zaXRpb25FdmVu
dC5jcHAgKi8sCisJCQkJRTE3QjQ5MTQxNkE5QjA5MzAwMUM4ODM5IC8qIFRyYW5zaXRpb25FdmVu
dC5oICovLAorCQkJCUUxN0I0OTBCMTZBOTcyNjkwMDFDODgzOSAvKiBUcmFuc2l0aW9uRXZlbnQu
aWRsICovLAorCQkJCTg1NEZFNzJDMEEyMjk3QkUwMDU4RDdBRCAvKiBUcmF2ZXJzYWwuY3BwICov
LAorCQkJCTg1NEZFNzJEMEEyMjk3QkUwMDU4RDdBRCAvKiBUcmF2ZXJzYWwuaCAqLywKKwkJCQkz
N0ZENDI5NzExODM2ODQ2MDA5M0MwMjkgLyogVHJlZURlcHRoTGltaXQuaCAqLywKKwkJCQkxNEQ2
NEI1QTEzNEE1QjZCMDBFNThGREEgLyogVHJlZVNjb3BlLmNwcCAqLywKKwkJCQkxNEQ2NEI1QjEz
NEE1QjZCMDBFNThGREEgLyogVHJlZVNjb3BlLmggKi8sCisJCQkJMTQ5NDdGRkIxMkY4MENEMjAw
QTBGNjMxIC8qIFRyZWVTY29wZU9yZGVyZWRNYXAuY3BwICovLAorCQkJCTE0OTQ3RkZDMTJGODBD
RDIwMEEwRjYzMSAvKiBUcmVlU2NvcGVPcmRlcmVkTWFwLmggKi8sCisJCQkJODU0RkU3MkUwQTIy
OTdCRTAwNThEN0FEIC8qIFRyZWVXYWxrZXIuY3BwICovLAorCQkJCTg1NEZFNzJGMEEyMjk3QkUw
MDU4RDdBRCAvKiBUcmVlV2Fsa2VyLmggKi8sCisJCQkJMUE3NTBEM0MwQTkwREUzNTAwMEZGMjE1
IC8qIFRyZWVXYWxrZXIuaWRsICovLAorCQkJCUU0NkEyQjFCMTdDQTY1QjkwMDBEQkNEOCAvKiBU
eXBlZEVsZW1lbnREZXNjZW5kYW50SXRlcmF0b3IuaCAqLywKKwkJCQk4NTAzMUIzNzBBNDRFRkM3
MDBGOTkyRTAgLyogVUlFdmVudC5jcHAgKi8sCisJCQkJODUwMzFCMzgwQTQ0RUZDNzAwRjk5MkUw
IC8qIFVJRXZlbnQuaCAqLywKKwkJCQkxNDFCOTRFRTA5RUM0MjVBMDAwRTk0MTMgLyogVUlFdmVu
dC5pZGwgKi8sCisJCQkJODNGRTdDQTQxREE5RjE2NjAwMzcyMzdDIC8qIFVJRXZlbnRJbml0Lmgg
Ki8sCisJCQkJODNGRTdDQTUxREE5RjE2NjAwMzcyMzdDIC8qIFVJRXZlbnRJbml0LmlkbCAqLywK
KwkJCQk5MzM1NEEzQjBCMjRGOEM5MDAzRjZERUEgLyogVUlFdmVudFdpdGhLZXlTdGF0ZS5jcHAg
Ki8sCisJCQkJODUwMzFCMzkwQTQ0RUZDNzAwRjk5MkUwIC8qIFVJRXZlbnRXaXRoS2V5U3RhdGUu
aCAqLywKKwkJCQlBNzY5RTk2OTE2Njg5RDBDMDA1RDQ1MjkgLyogVXNlckFjdGlvbkVsZW1lbnRT
ZXQuY3BwICovLAorCQkJCUE3Mjc2M0JFMTY2ODlCRkIwMDJGQ0FDQiAvKiBVc2VyQWN0aW9uRWxl
bWVudFNldC5oICovLAorCQkJCTI1NDJGNEQ4MTE2NkMyNUEwMEU4OUE4NiAvKiBVc2VyR2VzdHVy
ZUluZGljYXRvci5jcHAgKi8sCisJCQkJMjU0MkY0RDkxMTY2QzI1QTAwRTg5QTg2IC8qIFVzZXJH
ZXN0dXJlSW5kaWNhdG9yLmggKi8sCisJCQkJQkNERjMxNzkxMUY4RDY4MzAwM0M1QkY4IC8qIFVz
ZXJUeXBpbmdHZXN0dXJlSW5kaWNhdG9yLmNwcCAqLywKKwkJCQlCQ0RGMzE3QTExRjhENjgzMDAz
QzVCRjggLyogVXNlclR5cGluZ0dlc3R1cmVJbmRpY2F0b3IuaCAqLywKKwkJCQlDRUY0MThDQzEx
Nzk2NzhDMDA5RDExMkMgLyogVmlld3BvcnRBcmd1bWVudHMuY3BwICovLAorCQkJCUNFRjQxOENE
MTE3OTY3OEMwMDlEMTEyQyAvKiBWaWV3cG9ydEFyZ3VtZW50cy5oICovLAorCQkJCTgzNDA3RkMw
MUU4RDlDMTIwMEUwNDhEMyAvKiBWaXNpYmlsaXR5Q2hhbmdlQ2xpZW50LmggKi8sCisJCQkJNDZD
QTlDNDExRjk3QkJFNzAwNENGQzNBIC8qIFZpc2liaWxpdHlTdGF0ZS5oICovLAorCQkJCTQ2Q0E5
QzQyMUY5N0JCRTcwMDRDRkMzQSAvKiBWaXNpYmlsaXR5U3RhdGUuaWRsICovLAorCQkJCTQxOUJD
MkRDMTY4NTMyOTkwMEQ2NEQ2RCAvKiBWaXNpdGVkTGlua1N0YXRlLmNwcCAqLywKKwkJCQk0MTlC
QzJERDE2ODUzMjk5MDBENjRENkQgLyogVmlzaXRlZExpbmtTdGF0ZS5oICovLAorCQkJCTMxQzBG
RjFCMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5jcHAgKi8sCisJCQkJ
MzFDMEZGMUMwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdEFuaW1hdGlvbkV2ZW50LmggKi8sCisJ
CQkJMzFDMEZGMUQwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdEFuaW1hdGlvbkV2ZW50LmlkbCAq
LywKKwkJCQkzMUMwRkYxRTBFNENFQjZFMDA3RDZGRTUgLyogV2ViS2l0VHJhbnNpdGlvbkV2ZW50
LmNwcCAqLywKKwkJCQkzMUMwRkYxRjBFNENFQjZFMDA3RDZGRTUgLyogV2ViS2l0VHJhbnNpdGlv
bkV2ZW50LmggKi8sCisJCQkJMzFDMEZGMjAwRTRDRUI2RTAwN0Q2RkU1IC8qIFdlYktpdFRyYW5z
aXRpb25FdmVudC5pZGwgKi8sCisJCQkJODUwMzFCM0EwQTQ0RUZDNzAwRjk5MkUwIC8qIFdoZWVs
RXZlbnQuY3BwICovLAorCQkJCTg1MDMxQjNCMEE0NEVGQzcwMEY5OTJFMCAvKiBXaGVlbEV2ZW50
LmggKi8sCisJCQkJOTNFRUMxRjcwOUMyODc3NzAwQzUxNUQxIC8qIFdoZWVsRXZlbnQuaWRsICov
LAorCQkJCTlCMjdGQzVGMjM0RDlBREIwMDM5NEE0NiAvKiBXaW5kb3dFdmVudExvb3AuY3BwICov
LAorCQkJCTlCMjdGQzVFMjM0RDlBREEwMDM5NEE0NiAvKiBXaW5kb3dFdmVudExvb3AuaCAqLywK
KwkJCQkwRjI2QTdBQzIwNTVDOEQ3MDA5MEExNDEgLyogWE1MRG9jdW1lbnQuY3BwICovLAorCQkJ
CTgzMDc4NEIxMUM1MkVFMTkwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5oICovLAorCQkJCTgzMDc4
NEIwMUM1MkVFMTkwMDEwNEQxRCAvKiBYTUxEb2N1bWVudC5pZGwgKi8sCisJCQkpOworCQkJcGF0
aCA9IGRvbTsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCQl0YWJXaWR0aCA9IDQ7CisJ
CQl1c2VzVGFicyA9IDA7CisJCX07CisJCUZBQkU3MkVDMTA1OUMxRUIwMEQ5OTlERCAvKiBtYXRo
bWwgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUZBNjU0
QTY3MTEwOEFCRTIwMDI2MTVFMCAvKiBtYXRoYXR0cnMuaW4gKi8sCisJCQkJRkFCRTcyRUQxMDU5
QzFFQjAwRDg4OENDIC8qIE1hdGhNTEFubm90YXRpb25FbGVtZW50LmNwcCAqLywKKwkJCQlGQUJF
NzJFRTEwNTlDMUVCMDBEODg4Q0MgLyogTWF0aE1MQW5ub3RhdGlvbkVsZW1lbnQuaCAqLywKKwkJ
CQlGQUJFNzJFRDEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MRWxlbWVudC5jcHAgKi8sCisJCQkJ
RkFCRTcyRUUxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTEVsZW1lbnQuaCAqLywKKwkJCQk3QzUx
RkNDRTI1MDAyQkZCMDBCQTBGMkYgLyogTWF0aE1MRWxlbWVudC5pZGwgKi8sCisJCQkJMEJDRjgz
RUYxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTEZyYWN0aW9uRWxlbWVudC5jcHAgKi8sCisJCQkJ
MEJDRjgzRjAxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTEZyYWN0aW9uRWxlbWVudC5oICovLAor
CQkJCUZBQkU3MkYxMTA1OUMxRUIwMEQ5OTlERCAvKiBNYXRoTUxNYXRoRWxlbWVudC5jcHAgKi8s
CisJCQkJRkFCRTcyRjIxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTE1hdGhFbGVtZW50LmggKi8s
CisJCQkJQUExMUMwNEIyMzE2OTY4OTAwOUQ5ODMxIC8qIE1hdGhNTE1hdGhFbGVtZW50LmlkbCAq
LywKKwkJCQlDM0U2MUM2NTNBNjQ4MDdBODNFNzZGQjggLyogTWF0aE1MTWVuY2xvc2VFbGVtZW50
LmNwcCAqLywKKwkJCQlDRTZEODkyOTRDN0FBQ0UwQUQ4OUIzREQgLyogTWF0aE1MTWVuY2xvc2VF
bGVtZW50LmggKi8sCisJCQkJRDRGNzJDNjUzQTY0ODA3QTgzRTc2RkI4IC8qIE1hdGhNTE9wZXJh
dG9yRGljdGlvbmFyeS5jcHAgKi8sCisJCQkJREY3RTlBMjk0QzdBQUNFMEFEODlCM0REIC8qIE1h
dGhNTE9wZXJhdG9yRGljdGlvbmFyeS5oICovLAorCQkJCUZBNjU0QTY5MTEwOEFCRUQwMDI2MTZG
MSAvKiBNYXRoTUxPcGVyYXRvckVsZW1lbnQuY3BwICovLAorCQkJCUZBNjU0QTZBMTEwOEFCRUQw
MDI2MTZGMSAvKiBNYXRoTUxPcGVyYXRvckVsZW1lbnQuaCAqLywKKwkJCQlCNTlDQTU5QUYxNzBE
OEZBQTVCOENBQkUgLyogTWF0aE1MUGFkZGVkRWxlbWVudC5jcHAgKi8sCisJCQkJQjU5Q0E4NDlE
NDFFNkY2NUQ4MTE5OEJDIC8qIE1hdGhNTFBhZGRlZEVsZW1lbnQuaCAqLywKKwkJCQlGQUJFNzJF
RjEwNTlDMUVCMDBEOTk5REQgLyogTWF0aE1MUHJlc2VudGF0aW9uRWxlbWVudC5jcHAgKi8sCisJ
CQkJRkFCRTcyRjAxMDU5QzFFQjAwRDk5OUREIC8qIE1hdGhNTFByZXNlbnRhdGlvbkVsZW1lbnQu
aCAqLywKKwkJCQlGQTc2NUE2OTExMDhBQkVEMDA3ODJBNUMgLyogTWF0aE1MUm9vdEVsZW1lbnQu
Y3BwICovLAorCQkJCUZBNzY1QTZBMTEwOEFCRUQwMDc4MkE1QyAvKiBNYXRoTUxSb290RWxlbWVu
dC5oICovLAorCQkJCUZBNzY1QTY5MTEwOEFCRUQwMDI2MTVFMCAvKiBNYXRoTUxSb3dFbGVtZW50
LmNwcCAqLywKKwkJCQlGQTc2NUE2QTExMDhBQkVEMDAyNjE1RTAgLyogTWF0aE1MUm93RWxlbWVu
dC5oICovLAorCQkJCUI1OUNBNTlBRjE3MEQ4RkFBNUI4QzlBRCAvKiBNYXRoTUxTY3JpcHRzRWxl
bWVudC5jcHAgKi8sCisJCQkJQjU5Q0E4NDlENDFFNkY2NUQ4MTE5N0FCIC8qIE1hdGhNTFNjcmlw
dHNFbGVtZW50LmggKi8sCisJCQkJRjc1QTA1OUFGMTcwRDhGQUE1QjhDQUJFIC8qIE1hdGhNTFNl
bGVjdEVsZW1lbnQuY3BwICovLAorCQkJCTU5NzgwODQ5RDQxRTZGNjVEODExOThCQyAvKiBNYXRo
TUxTZWxlY3RFbGVtZW50LmggKi8sCisJCQkJNEZBNjVBNjkxMTA4QUJFRDAwMjYxNUUwIC8qIE1h
dGhNTFNwYWNlRWxlbWVudC5jcHAgKi8sCisJCQkJNEZBNjVBNkExMTA4QUJFRDAwMjYxNUUwIC8q
IE1hdGhNTFNwYWNlRWxlbWVudC5oICovLAorCQkJCUZBNjU0QTY5MTEwOEFCRUQwMDI2MTVFMCAv
KiBNYXRoTUxUb2tlbkVsZW1lbnQuY3BwICovLAorCQkJCUZBNjU0QTZBMTEwOEFCRUQwMDI2MTVF
MCAvKiBNYXRoTUxUb2tlbkVsZW1lbnQuaCAqLywKKwkJCQlGQTY1NEE2OTExMDhBQkVEMDAyNjI2
RjEgLyogTWF0aE1MVW5kZXJPdmVyRWxlbWVudC5jcHAgKi8sCisJCQkJRkE2NTRBNkExMTA4QUJF
RDAwMjYyNkYxIC8qIE1hdGhNTFVuZGVyT3ZlckVsZW1lbnQuaCAqLywKKwkJCQkwRjI2QTdBQjIw
NTRGQ0UxMDA5MEExNDEgLyogTWF0aE1MVW5rbm93bkVsZW1lbnQuY3BwICovLAorCQkJCTM3Qzcz
OEVFMUVEQkQ3MTgwMDNGMkIwQiAvKiBNYXRoTUxVbmtub3duRWxlbWVudC5oICovLAorCQkJCUZB
QkU3MkYzMTA1OUMxRUIwMEQ5OTlERCAvKiBtYXRodGFncy5pbiAqLywKKwkJCSk7CisJCQlwYXRo
ID0gbWF0aG1sOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJRkJDMjIwREQx
MjM3RkJFQjAwQkNGNzg4IC8qIG9wZW5nbCAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJ
Y2hpbGRyZW4gPSAoCisJCQkJNkUyMUM2QkYxMTI2MzM4NTAwQTdCRTAyIC8qIEdyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMLmNwcCAqLywKKwkJCQk0OUM3QjlGQjEwNDJEMzY1MDAwOUQ0NDcgLyogR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0wuaCAqLywKKwkJCQlEMDg0M0E0QzIwRkVDMTY1MDBGRTg2MEUg
LyogR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmNwcCAqLywKKwkJCQkzMTlBNzI4NzIz
QzI2N0U3MDA4NTM1M0MgLyogR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmggKi8sCisJ
CQkpOworCQkJcGF0aCA9IG9wZW5nbDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07
CisJCUZEMDhBODc5MTc1RDM5MjYwMDJDRDM2MCAvKiBzaGFwZXMgKi8gPSB7CisJCQlpc2EgPSBQ
QlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTZFRDhDMzc3MTgzQkZGOEMwMDlFNTNCRCAv
KiBCb3hTaGFwZS5jcHAgKi8sCisJCQkJNkVEOEMzNzgxODNCRkY4QzAwOUU1M0JEIC8qIEJveFNo
YXBlLmggKi8sCisJCQkJRkQwOEE4N0ExNzVEMzkyNjAwMkNEMzYwIC8qIFBvbHlnb25TaGFwZS5j
cHAgKi8sCisJCQkJRkQwOEE4N0IxNzVEMzkyNjAwMkNEMzYwIC8qIFBvbHlnb25TaGFwZS5oICov
LAorCQkJCTZFODRFOURFMTc2NjhCQUQwMDgxNUI2OCAvKiBSYXN0ZXJTaGFwZS5jcHAgKi8sCisJ
CQkJNkU4NEU5REYxNzY2OEJBRDAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggKi8sCisJCQkJRkQw
OEE4N0MxNzVEMzkyNjAwMkNEMzYwIC8qIFJlY3RhbmdsZVNoYXBlLmNwcCAqLywKKwkJCQlGRDA4
QTg3RDE3NUQzOTI2MDAyQ0QzNjAgLyogUmVjdGFuZ2xlU2hhcGUuaCAqLywKKwkJCQlGRDA4QTg3
RTE3NUQzOTI2MDAyQ0QzNjAgLyogU2hhcGUuY3BwICovLAorCQkJCUZEMDhBODdGMTc1RDM5MjYw
MDJDRDM2MCAvKiBTaGFwZS5oICovLAorCQkJCUZEMDhBODg1MTc1RDM5MjYwMDJDRDM2MCAvKiBT
aGFwZUludGVydmFsLmggKi8sCisJCQkJRkQwOEE4ODYxNzVEMzkyNjAwMkNEMzYwIC8qIFNoYXBl
T3V0c2lkZUluZm8uY3BwICovLAorCQkJCUZEMDhBODg3MTc1RDM5MjYwMDJDRDM2MCAvKiBTaGFw
ZU91dHNpZGVJbmZvLmggKi8sCisJCQkpOworCQkJcGF0aCA9IHNoYXBlczsKKwkJCXNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUZEMzE1RkEyMTJCMDI1QjEwMEMxQTM1OSAvKiB3ZWJh
dWRpbyAqLyA9IHsKKwkJCWlzYSA9IFBCWEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJRkQz
MTVGRjMxMkIwMjY3NjAwQzFBMzU5IC8qIEFuYWx5c2VyTm9kZS5jcHAgKi8sCisJCQkJRkQzMTVG
RjQxMkIwMjY3NjAwQzFBMzU5IC8qIEFuYWx5c2VyTm9kZS5oICovLAorCQkJCUZEMzE1RkY1MTJC
MDI2NzYwMEMxQTM1OSAvKiBBbmFseXNlck5vZGUuaWRsICovLAorCQkJCUU3RTAzNTcxMjRENEUx
OTEwMDhERkVGQiAvKiBBbmFseXNlck9wdGlvbnMuaCAqLywKKwkJCQlFN0UwMzU2RjI0RDRFMTkw
MDA4REZFRkIgLyogQW5hbHlzZXJPcHRpb25zLmlkbCAqLywKKwkJCQlGRDU2ODZDNzEzQUMxODAy
MDBCNjlDNjggLyogQXN5bmNBdWRpb0RlY29kZXIuY3BwICovLAorCQkJCUZENTY4NkM4MTNBQzE4
MDIwMEI2OUM2OCAvKiBBc3luY0F1ZGlvRGVjb2Rlci5oICovLAorCQkJCUZENjI5RUEyMTU0QjQ3
MTYwMDA2RDAyNiAvKiBBdWRpb0Jhc2ljSW5zcGVjdG9yTm9kZS5jcHAgKi8sCisJCQkJRkQ2MjlF
QTExNTRCNDcxNjAwMDZEMDI2IC8qIEF1ZGlvQmFzaWNJbnNwZWN0b3JOb2RlLmggKi8sCisJCQkJ
RkQzMTVGQUMxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcCAq
LywKKwkJCQlGRDMxNUZBRDEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CYXNpY1Byb2Nlc3Nvck5v
ZGUuaCAqLywKKwkJCQlGRDMxNUZBRTEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CdWZmZXIuY3Bw
ICovLAorCQkJCUZEMzE1RkFGMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlci5oICovLAor
CQkJCUZEMzE1RkIwMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlci5pZGwgKi8sCisJCQkJ
RkQ1Njg2Q0IxM0FDMTgxNDAwQjY5QzY4IC8qIEF1ZGlvQnVmZmVyQ2FsbGJhY2suaCAqLywKKwkJ
CQlGRDU2ODZDRDEzQUMxODNFMDBCNjlDNjggLyogQXVkaW9CdWZmZXJDYWxsYmFjay5pZGwgKi8s
CisJCQkJRTdFMDM1NTcyNEQzNDZERjAwOERGRUZCIC8qIEF1ZGlvQnVmZmVyT3B0aW9ucy5oICov
LAorCQkJCUU3RTAzNTU5MjREMzQ2REYwMDhERkVGQiAvKiBBdWRpb0J1ZmZlck9wdGlvbnMuaWRs
ICovLAorCQkJCUZEMzE1RkIxMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlclNvdXJjZU5v
ZGUuY3BwICovLAorCQkJCUZEMzE1RkIyMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0J1ZmZlclNv
dXJjZU5vZGUuaCAqLywKKwkJCQlGRDMxNUZCMzEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9CdWZm
ZXJTb3VyY2VOb2RlLmlkbCAqLywKKwkJCQk4Mzc4ODc3RjI0RDhBNUZDMDAwRDRBNUIgLyogQXVk
aW9CdWZmZXJTb3VyY2VPcHRpb25zLmggKi8sCisJCQkJODM3ODg3ODEyNEQ4QTVGQzAwMEQ0QTVC
IC8qIEF1ZGlvQnVmZmVyU291cmNlT3B0aW9ucy5pZGwgKi8sCisJCQkJRkQzMTVGQkExMkIwMjY3
NTAwQzFBMzU5IC8qIEF1ZGlvQ29udGV4dC5jcHAgKi8sCisJCQkJRkQzMTVGQkIxMkIwMjY3NTAw
QzFBMzU5IC8qIEF1ZGlvQ29udGV4dC5oICovLAorCQkJCUZEMzE1RkJDMTJCMDI2NzUwMEMxQTM1
OSAvKiBBdWRpb0NvbnRleHQuaWRsICovLAorCQkJCUU3ODVEOTYwMjRCN0Y3MzQwMDE0REIyMSAv
KiBBdWRpb0NvbnRleHRMYXRlbmN5Q2F0ZWdvcnkuaCAqLywKKwkJCQlFNzg1RDk1RTI0QjdGNzI3
MDAxNERCMjEgLyogQXVkaW9Db250ZXh0TGF0ZW5jeUNhdGVnb3J5LmlkbCAqLywKKwkJCQlFNzg1
RDk1RjI0QjdGNzM0MDAxNERCMjEgLyogQXVkaW9Db250ZXh0T3B0aW9ucy5oICovLAorCQkJCUU3
ODVEOTVDMjRCN0Y3MjYwMDE0REIyMSAvKiBBdWRpb0NvbnRleHRPcHRpb25zLmlkbCAqLywKKwkJ
CQk4M0JEM0NFRDI0OTk4REY2MDBCQTNFNjcgLyogQXVkaW9Db250ZXh0U3RhdGUuaCAqLywKKwkJ
CQk4M0JEM0NFQjI0OTk4Q0M1MDBCQTNFNjcgLyogQXVkaW9Db250ZXh0U3RhdGUuaWRsICovLAor
CQkJCUZEMzE1RkJEMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAg
Ki8sCisJCQkJRkQzMTVGQkUxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvRGVzdGluYXRpb25Ob2Rl
LmggKi8sCisJCQkJRkQzMTVGQkYxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvRGVzdGluYXRpb25O
b2RlLmlkbCAqLywKKwkJCQlGRDMxNUZDNTEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9MaXN0ZW5l
ci5jcHAgKi8sCisJCQkJRkQzMTVGQzYxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvTGlzdGVuZXIu
aCAqLywKKwkJCQlGRDMxNUZDNzEyQjAyNjc1MDBDMUEzNTkgLyogQXVkaW9MaXN0ZW5lci5pZGwg
Ki8sCisJCQkJRkQzMTVGQzgxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvTm9kZS5jcHAgKi8sCisJ
CQkJRkQzMTVGQzkxMkIwMjY3NTAwQzFBMzU5IC8qIEF1ZGlvTm9kZS5oICovLAorCQkJCUZEMzE1
RkNBMTJCMDI2NzUwMEMxQTM1OSAvKiBBdWRpb05vZGUuaWRsICovLAorCQkJCUZEMzE1RkNCMTJC
MDI2NzUwMEMxQTM1OSAvKiBBdWRpb05vZGVJbnB1dC5jcHAgKi8sCisJCQkJRkQzMTVGQ0MxMkIw
MjY3NTAwQzFBMzU5IC8qIEF1ZGlvTm9kZUlucHV0LmggKi8sCisJCQkJRTcxNDY3QjEyNEFCQUVG
MTAwRkIyRjUwIC8qIEF1ZGlvTm9kZU9wdGlvbnMuaCAqLywKKwkJCQlFNzE0NjdCNDI0QUJBRjBC
MDBGQjJGNTAgLyogQXVkaW9Ob2RlT3B0aW9ucy5pZGwgKi8sCisJCQkJRkQzMTVGQ0QxMkIwMjY3
NTAwQzFBMzU5IC8qIEF1ZGlvTm9kZU91dHB1dC5jcHAgKi8sCisJCQkJRkQzMTVGQ0UxMkIwMjY3
NTAwQzFBMzU5IC8qIEF1ZGlvTm9kZU91dHB1dC5oICovLAorCQkJCUZEMzE1RkQyMTJCMDI2NzUw
MEMxQTM1OSAvKiBBdWRpb1BhcmFtLmNwcCAqLywKKwkJCQlGRDMxNUZEMzEyQjAyNjc1MDBDMUEz
NTkgLyogQXVkaW9QYXJhbS5oICovLAorCQkJCUZEMzE1RkQ0MTJCMDI2NzUwMEMxQTM1OSAvKiBB
dWRpb1BhcmFtLmlkbCAqLywKKwkJCQk4Mzc1Njk5OTI1MkNGMzVFMDBFMUI5NTYgLyogQXVkaW9Q
YXJhbURlc2NyaXB0b3IuaCAqLywKKwkJCQk4Mzc1Njk5QzI1MkNGMzVGMDBFMUI5NTYgLyogQXVk
aW9QYXJhbURlc2NyaXB0b3IuaWRsICovLAorCQkJCTgzQjk4NzAyMjUyMjVGMEMwMEE5MzlGMSAv
KiBBdWRpb1BhcmFtTWFwLmNwcCAqLywKKwkJCQk4M0I5ODZGRjI1MjI1RjBCMDBBOTM5RjEgLyog
QXVkaW9QYXJhbU1hcC5oICovLAorCQkJCTgzQjk4NzA4MjUyMjVGMEUwMEE5MzlGMSAvKiBBdWRp
b1BhcmFtTWFwLmlkbCAqLywKKwkJCQlGRDM1OTE4RDEzOERCMjIwMDBFMUVCRUMgLyogQXVkaW9Q
YXJhbVRpbWVsaW5lLmNwcCAqLywKKwkJCQlGRDM1OTE4RTEzOERCMjIwMDBFMUVCRUMgLyogQXVk
aW9QYXJhbVRpbWVsaW5lLmggKi8sCisJCQkJRkQzMTVGRDUxMkIwMjY3NjAwQzFBMzU5IC8qIEF1
ZGlvUHJvY2Vzc2luZ0V2ZW50LmNwcCAqLywKKwkJCQlGRDMxNUZENjEyQjAyNjc2MDBDMUEzNTkg
LyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaCAqLywKKwkJCQlGRDMxNUZENzEyQjAyNjc2MDBDMUEz
NTkgLyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaWRsICovLAorCQkJCUU3QzhFMTE4MjREQ0FCRjMw
MDI3QTI3RiAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudEluaXQuaCAqLywKKwkJCQlFN0M4RTExQTI0
RENBQkYzMDAyN0EyN0YgLyogQXVkaW9Qcm9jZXNzaW5nRXZlbnRJbml0LmlkbCAqLywKKwkJCQlG
RDhDNDZFOTE1NDYwOEU3MDBBNTkxMEMgLyogQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcCAq
LywKKwkJCQlGRDhDNDZFQTE1NDYwOEU3MDBBNTkxMEMgLyogQXVkaW9TY2hlZHVsZWRTb3VyY2VO
b2RlLmggKi8sCisJCQkJRTdDRjg0ODkyNEMwRTA1NzAwQjA2QjkwIC8qIEF1ZGlvU2NoZWR1bGVk
U291cmNlTm9kZS5pZGwgKi8sCisJCQkJRkRCMDUyREQxNTYxQTQyQzAwQjUwMEQ2IC8qIEF1ZGlv
U3VtbWluZ0p1bmN0aW9uLmNwcCAqLywKKwkJCQlGREIwNTJERTE1NjFBNDJDMDBCNTAwRDYgLyog
QXVkaW9TdW1taW5nSnVuY3Rpb24uaCAqLywKKwkJCQk4MzAwNUY5QTI0RUIxRDI4MDA0ODBGOUIg
LyogQXVkaW9UaW1lc3RhbXAuaCAqLywKKwkJCQk4MzAwNUY5QzI0RUIxRDI5MDA0ODBGOUIgLyog
QXVkaW9UaW1lc3RhbXAuaWRsICovLAorCQkJCTgzQjk4NzA2MjUyMjVGMEUwMEE5MzlGMSAvKiBB
dWRpb1dvcmtsZXQuY3BwICovLAorCQkJCTgzQjk4NzAxMjUyMjVGMEMwMEE5MzlGMSAvKiBBdWRp
b1dvcmtsZXQuaCAqLywKKwkJCQk4M0I5ODZGRDI1MjI1RjBCMDBBOTM5RjEgLyogQXVkaW9Xb3Jr
bGV0LmlkbCAqLywKKwkJCQk4MzNCRDgxQTI1MjRENTFDMDA2RTcyQjMgLyogQXVkaW9Xb3JrbGV0
R2xvYmFsU2NvcGUuY3BwICovLAorCQkJCTgzM0JEODE5MjUyNEQ1MUIwMDZFNzJCMyAvKiBBdWRp
b1dvcmtsZXRHbG9iYWxTY29wZS5oICovLAorCQkJCTgzRkM5OTQ3MjUyNTU3RTcwMDE3NzYxOCAv
KiBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5pZGwgKi8sCisJCQkJODMzQkQ4MUMyNTI0RDUxRDAw
NkU3MkIzIC8qIEF1ZGlvV29ya2xldE1lc3NhZ2luZ1Byb3h5LmNwcCAqLywKKwkJCQk4MzNCRDgx
QjI1MjRENTFDMDA2RTcyQjMgLyogQXVkaW9Xb3JrbGV0TWVzc2FnaW5nUHJveHkuaCAqLywKKwkJ
CQk4M0I5ODcwMzI1MjI1RjBDMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0Tm9kZS5jcHAgKi8sCisJ
CQkJODNCOTg3MDcyNTIyNUYwRTAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldE5vZGUuaCAqLywKKwkJ
CQk4M0I5ODcwNDI1MjI1RjBEMDBBOTM5RjEgLyogQXVkaW9Xb3JrbGV0Tm9kZS5pZGwgKi8sCisJ
CQkJODNCOTg3MDAyNTIyNUYwQjAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldE5vZGVPcHRpb25zLmgg
Ki8sCisJCQkJODNCOTg3MDUyNTIyNUYwRDAwQTkzOUYxIC8qIEF1ZGlvV29ya2xldE5vZGVPcHRp
b25zLmlkbCAqLywKKwkJCQk4M0JCOEI1QjI1MjY3NzU1MDBEODlGMEIgLyogQXVkaW9Xb3JrbGV0
UHJvY2Vzc29yLmNwcCAqLywKKwkJCQk4M0JCOEI1RDI1MjY3NzU1MDBEODlGMEIgLyogQXVkaW9X
b3JrbGV0UHJvY2Vzc29yLmggKi8sCisJCQkJODNCQjhCNUUyNTI2Nzc1NjAwRDg5RjBCIC8qIEF1
ZGlvV29ya2xldFByb2Nlc3Nvci5pZGwgKi8sCisJCQkJODMyNzRGQ0QyNTJFMjZBODAwMUUzNURD
IC8qIEF1ZGlvV29ya2xldFByb2Nlc3NvckNvbnN0cnVjdGlvbkRhdGEuaCAqLywKKwkJCQk4Mzcy
NkVGODI1MjY3OUIyMDBDNjExNEUgLyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ29uc3RydWN0b3Iu
aCAqLywKKwkJCQk4MzcyNkVGQTI1MjY3OUIzMDBDNjExNEUgLyogQXVkaW9Xb3JrbGV0UHJvY2Vz
c29yQ29uc3RydWN0b3IuaWRsICovLAorCQkJCTgzRkM5OTRBMjUyNTU3RTgwMDE3NzYxOCAvKiBB
dWRpb1dvcmtsZXRUaHJlYWQuY3BwICovLAorCQkJCTgzRkM5OTQ5MjUyNTU3RTcwMDE3NzYxOCAv
KiBBdWRpb1dvcmtsZXRUaHJlYWQuaCAqLywKKwkJCQk4Mzc1Njk5RDI1MkNGMzVGMDBFMUI5NTYg
LyogQXV0b21hdGlvblJhdGUuaCAqLywKKwkJCQk4Mzc1Njk5QjI1MkNGMzVFMDBFMUI5NTYgLyog
QXV0b21hdGlvblJhdGUuaWRsICovLAorCQkJCTgzMTk4RkJCMjRBMTYwQzEwMDQyMEIwNSAvKiBC
YXNlQXVkaW9Db250ZXh0LmNwcCAqLywKKwkJCQk4MzE5OEZCRTI0QTE2MEMxMDA0MjBCMDUgLyog
QmFzZUF1ZGlvQ29udGV4dC5oICovLAorCQkJCTgzMTk4RkJEMjRBMTYwQzEwMDQyMEIwNSAvKiBC
YXNlQXVkaW9Db250ZXh0LmlkbCAqLywKKwkJCQlGRDMxNUZEQTEyQjAyNjc2MDBDMUEzNTkgLyog
QmlxdWFkRFNQS2VybmVsLmNwcCAqLywKKwkJCQlGRDMxNUZEQjEyQjAyNjc2MDBDMUEzNTkgLyog
QmlxdWFkRFNQS2VybmVsLmggKi8sCisJCQkJRkRDNTRGMDExMzk5QjBEQTAwOEQ5MTE3IC8qIEJp
cXVhZEZpbHRlck5vZGUuY3BwICovLAorCQkJCUZEQzU0RjAyMTM5OUIwREEwMDhEOTExNyAvKiBC
aXF1YWRGaWx0ZXJOb2RlLmggKi8sCisJCQkJRkRDNTRGMDMxMzk5QjBEQTAwOEQ5MTE3IC8qIEJp
cXVhZEZpbHRlck5vZGUuaWRsICovLAorCQkJCTgzREI5RTBFMjREQTE4QjYwMDM3QjQ2OCAvKiBC
aXF1YWRGaWx0ZXJPcHRpb25zLmggKi8sCisJCQkJODNEQjlFMEQyNERBMThCNTAwMzdCNDY4IC8q
IEJpcXVhZEZpbHRlck9wdGlvbnMuaWRsICovLAorCQkJCTgzREI5RTBDMjREQTE4QjUwMDM3QjQ2
OCAvKiBCaXF1YWRGaWx0ZXJUeXBlLmggKi8sCisJCQkJODNEQjlFMEEyNERBMThCNDAwMzdCNDY4
IC8qIEJpcXVhZEZpbHRlclR5cGUuaWRsICovLAorCQkJCUZEMzE1RkRDMTJCMDI2NzYwMEMxQTM1
OSAvKiBCaXF1YWRQcm9jZXNzb3IuY3BwICovLAorCQkJCUZEMzE1RkREMTJCMDI2NzYwMEMxQTM1
OSAvKiBCaXF1YWRQcm9jZXNzb3IuaCAqLywKKwkJCQlFNzg1RDkxMTI0QjREMUIxMDAxNERCMjEg
LyogQ2hhbm5lbENvdW50TW9kZS5oICovLAorCQkJCUU3ODVEOTEzMjRCNEQxQjEwMDE0REIyMSAv
KiBDaGFubmVsQ291bnRNb2RlLmlkbCAqLywKKwkJCQlFNzg1RDkzMTI0QjYzNkZGMDAxNERCMjEg
LyogQ2hhbm5lbEludGVycHJldGF0aW9uLmggKi8sCisJCQkJRTc4NUQ5MzMyNEI2MzZGRjAwMTRE
QjIxIC8qIENoYW5uZWxJbnRlcnByZXRhdGlvbi5pZGwgKi8sCisJCQkJRkQzMTVGQjQxMkIwMjY3
NTAwQzFBMzU5IC8qIENoYW5uZWxNZXJnZXJOb2RlLmNwcCAqLywKKwkJCQlGRDMxNUZCNTEyQjAy
Njc1MDBDMUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuaCAqLywKKwkJCQlGRDMxNUZCNjEyQjAy
Njc1MDBDMUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuaWRsICovLAorCQkJCUU3RTAzNTIwMjRD
RjYwRUQwMDhERkVGQiAvKiBDaGFubmVsTWVyZ2VyT3B0aW9ucy5oICovLAorCQkJCUU3RTAzNTIy
MjRDRjYwRUQwMDhERkVGQiAvKiBDaGFubmVsTWVyZ2VyT3B0aW9ucy5pZGwgKi8sCisJCQkJRkQz
MTVGQjcxMkIwMjY3NTAwQzFBMzU5IC8qIENoYW5uZWxTcGxpdHRlck5vZGUuY3BwICovLAorCQkJ
CUZEMzE1RkI4MTJCMDI2NzUwMEMxQTM1OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmggKi8sCisJ
CQkJRkQzMTVGQjkxMkIwMjY3NTAwQzFBMzU5IC8qIENoYW5uZWxTcGxpdHRlck5vZGUuaWRsICov
LAorCQkJCUU3RTAzNTI0MjRDRjcxNUUwMDhERkVGQiAvKiBDaGFubmVsU3BsaXR0ZXJPcHRpb25z
LmggKi8sCisJCQkJRTdFMDM1MjUyNENGNzE1RTAwOERGRUZCIC8qIENoYW5uZWxTcGxpdHRlck9w
dGlvbnMuaWRsICovLAorCQkJCUU3QzhFMTM5MjRFMkZFNjUwMDI3QTI3RiAvKiBDb25zdGFudFNv
dXJjZU5vZGUuY3BwICovLAorCQkJCUU3QzhFMTM4MjRFMkZFNjUwMDI3QTI3RiAvKiBDb25zdGFu
dFNvdXJjZU5vZGUuaCAqLywKKwkJCQlFN0M4RTEzQTI0RTJGRTY1MDAyN0EyN0YgLyogQ29uc3Rh
bnRTb3VyY2VOb2RlLmlkbCAqLywKKwkJCQlFN0M4RTEzMzI0RTJGQTdDMDAyN0EyN0YgLyogQ29u
c3RhbnRTb3VyY2VPcHRpb25zLmggKi8sCisJCQkJRTdDOEUxMzUyNEUyRkE3QzAwMjdBMjdGIC8q
IENvbnN0YW50U291cmNlT3B0aW9ucy5pZGwgKi8sCisJCQkJRkQzMTVGREUxMkIwMjY3NjAwQzFB
MzU5IC8qIENvbnZvbHZlck5vZGUuY3BwICovLAorCQkJCUZEMzE1RkRGMTJCMDI2NzYwMEMxQTM1
OSAvKiBDb252b2x2ZXJOb2RlLmggKi8sCisJCQkJRkQzMTVGRTAxMkIwMjY3NjAwQzFBMzU5IC8q
IENvbnZvbHZlck5vZGUuaWRsICovLAorCQkJCTgzRjI4QkZEMjREQjFERDMwMDVCQTZGNiAvKiBD
b252b2x2ZXJPcHRpb25zLmggKi8sCisJCQkJODNGMjhCRkYyNERCMURENDAwNUJBNkY2IC8qIENv
bnZvbHZlck9wdGlvbnMuaWRsICovLAorCQkJCUZEMDZERkEzMTM0QTRERUYwMDZGNUQ3RCAvKiBE
ZWZhdWx0QXVkaW9EZXN0aW5hdGlvbk5vZGUuY3BwICovLAorCQkJCUZEMDZERkE0MTM0QTRERUYw
MDZGNUQ3RCAvKiBEZWZhdWx0QXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLywKKwkJCQlGRDMxNUZF
MTEyQjAyNjc2MDBDMUEzNTkgLyogRGVsYXlEU1BLZXJuZWwuY3BwICovLAorCQkJCUZEMzE1RkUy
MTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheURTUEtlcm5lbC5oICovLAorCQkJCUZEMzE1RkUzMTJC
MDI2NzYwMEMxQTM1OSAvKiBEZWxheU5vZGUuY3BwICovLAorCQkJCUZEMzE1RkU0MTJCMDI2NzYw
MEMxQTM1OSAvKiBEZWxheU5vZGUuaCAqLywKKwkJCQlGRDMxNUZFNTEyQjAyNjc2MDBDMUEzNTkg
LyogRGVsYXlOb2RlLmlkbCAqLywKKwkJCQk4M0EyQUJEODI0RDg2REM2MDBFMkQ3M0QgLyogRGVs
YXlPcHRpb25zLmggKi8sCisJCQkJODNBMkFCREEyNEQ4NkRDNzAwRTJENzNEIC8qIERlbGF5T3B0
aW9ucy5pZGwgKi8sCisJCQkJRkQzMTVGRTYxMkIwMjY3NjAwQzFBMzU5IC8qIERlbGF5UHJvY2Vz
c29yLmNwcCAqLywKKwkJCQlGRDMxNUZFNzEyQjAyNjc2MDBDMUEzNTkgLyogRGVsYXlQcm9jZXNz
b3IuaCAqLywKKwkJCQk4MzA0MDI3RDI0OUE3QTVCMDBBOTBEOEQgLyogRGlzdGFuY2VNb2RlbFR5
cGUuaCAqLywKKwkJCQk4MzA0MDI3RjI0OUE3QTVDMDBBOTBEOEQgLyogRGlzdGFuY2VNb2RlbFR5
cGUuaWRsICovLAorCQkJCUZENkVEMkMxMTM2QjhFNDIwMDNDRjA3MiAvKiBEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlLmNwcCAqLywKKwkJCQlGRDZFRDJDMjEzNkI4RTQyMDAzQ0YwNzIgLyogRHluYW1p
Y3NDb21wcmVzc29yTm9kZS5oICovLAorCQkJCUZENkVEMkM5MTM2QjhFOUQwMDNDRjA3MiAvKiBE
eW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbCAqLywKKwkJCQk4MzdDMEI3MzI0REIzODQyMDA1RDU5
NTkgLyogRHluYW1pY3NDb21wcmVzc29yT3B0aW9ucy5oICovLAorCQkJCTgzN0MwQjc1MjREQjM4
NDMwMDVENTk1OSAvKiBEeW5hbWljc0NvbXByZXNzb3JPcHRpb25zLmlkbCAqLywKKwkJCQlGRDMx
NUZDMjEyQjAyNjc1MDBDMUEzNTkgLyogR2Fpbk5vZGUuY3BwICovLAorCQkJCUZEMzE1RkMzMTJC
MDI2NzUwMEMxQTM1OSAvKiBHYWluTm9kZS5oICovLAorCQkJCUZEMzE1RkM0MTJCMDI2NzUwMEMx
QTM1OSAvKiBHYWluTm9kZS5pZGwgKi8sCisJCQkJODM3NDVDRkYyNEQ4OTlDMjAwRkJEQ0M0IC8q
IEdhaW5PcHRpb25zLmggKi8sCisJCQkJODM3NDVEMDEyNEQ4OTlDMjAwRkJEQ0M0IC8qIEdhaW5P
cHRpb25zLmlkbCAqLywKKwkJCQk4MzVEQThGRjI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2Vy
bmVsLmNwcCAqLywKKwkJCQk4MzVEQTkwMTI0RjU4MjU3MDAyMkREQTQgLyogSUlSRFNQS2VybmVs
LmggKi8sCisJCQkJODM1MDUxOUUyNEY1NzNBRDAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuY3Bw
ICovLAorCQkJCTgzNTA1MUEyMjRGNTczQUYwMDk5MTFENyAvKiBJSVJGaWx0ZXJOb2RlLmggKi8s
CisJCQkJODM1MDUxQTEyNEY1NzNBRTAwOTkxMUQ3IC8qIElJUkZpbHRlck5vZGUuaWRsICovLAor
CQkJCTgzNTA1MUEwMjRGNTczQUUwMDk5MTFENyAvKiBJSVJGaWx0ZXJPcHRpb25zLmggKi8sCisJ
CQkJODM1MDUxQTMyNEY1NzNBRjAwOTkxMUQ3IC8qIElJUkZpbHRlck9wdGlvbnMuaWRsICovLAor
CQkJCTgzMEQwQjY4MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuY3BwICovLAorCQkJ
CTgzMEQwQjY2MjRGNTdENTAwMDdFRDEyMiAvKiBJSVJQcm9jZXNzb3IuaCAqLywKKwkJCQlGRDZG
MjUyOTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAq
LywKKwkJCQlGRDZGMjUyQTEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3Vy
Y2VOb2RlLmggKi8sCisJCQkJRkQ2RjI1MkIxM0Y1RUYwRTAwNjUxNjVGIC8qIE1lZGlhRWxlbWVu
dEF1ZGlvU291cmNlTm9kZS5pZGwgKi8sCisJCQkJODMwQTFDN0MyNERCNzg3MDAwMkVDQ0FEIC8q
IE1lZGlhRWxlbWVudEF1ZGlvU291cmNlT3B0aW9ucy5oICovLAorCQkJCTgzMEExQzdBMjREQjc4
NkYwMDJFQ0NBRCAvKiBNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU9wdGlvbnMuaWRsICovLAorCQkJ
CTA3OEUwOTQ4MTdEMTcwOTYwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25O
b2RlLmNwcCAqLywKKwkJCQkwNzhFMDk0OTE3RDE3MDk2MDA0MjBBQTEgLyogTWVkaWFTdHJlYW1B
dWRpb0Rlc3RpbmF0aW9uTm9kZS5oICovLAorCQkJCTA3OEUwOTRBMTdEMTcwOTYwMDQyMEFBMSAv
KiBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmlkbCAqLywKKwkJCQkwNzgzMjI4MjE4
MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgKi8sCisJCQkJMDc4
MzIyODMxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuaCAqLywKKwkJ
CQk0MTMzQ0I4OTIwRjgwRTg2MDBFODlCMTEgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZUNvY29h
LmNwcCAqLywKKwkJCQlGRDY3MUE3NDE1OUJCMDcwMDAxOTc1NTkgLyogTWVkaWFTdHJlYW1BdWRp
b1NvdXJjZU5vZGUuY3BwICovLAorCQkJCUZENjcxQTc1MTU5QkIwNzAwMDE5NzU1OSAvKiBNZWRp
YVN0cmVhbUF1ZGlvU291cmNlTm9kZS5oICovLAorCQkJCUZENjcxQTc2MTU5QkIwNzAwMDE5NzU1
OSAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlTm9kZS5pZGwgKi8sCisJCQkJODM0Q0JGQkYyNERD
Nzg1NTAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25zLmggKi8sCisJCQkJ
ODM0Q0JGQzEyNERDNzg1NjAwQzJBM0Q4IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VPcHRpb25z
LmlkbCAqLywKKwkJCQlGREEzRTk1NTEzNEE0OUVGMDA4RDRCNUEgLyogT2ZmbGluZUF1ZGlvQ29t
cGxldGlvbkV2ZW50LmNwcCAqLywKKwkJCQlGREEzRTk1NjEzNEE0OUVGMDA4RDRCNUEgLyogT2Zm
bGluZUF1ZGlvQ29tcGxldGlvbkV2ZW50LmggKi8sCisJCQkJRkRBM0U5NUQxMzRBNDlGRjAwOEQ0
QjVBIC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5pZGwgKi8sCisJCQkJODMzQUU1Mjgy
NEQzODZFMTAwMDE3QzRCIC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudEluaXQuaCAqLywK
KwkJCQk4MzNBRTUyNjI0RDM4NkUxMDAwMTdDNEIgLyogT2ZmbGluZUF1ZGlvQ29tcGxldGlvbkV2
ZW50SW5pdC5pZGwgKi8sCisJCQkJRkRBOTMyNUExNjcwM0IyQTAwODk4MkRDIC8qIE9mZmxpbmVB
dWRpb0NvbnRleHQuY3BwICovLAorCQkJCUZEQTkzMjVCMTY3MDNCMkEwMDg5ODJEQyAvKiBPZmZs
aW5lQXVkaW9Db250ZXh0LmggKi8sCisJCQkJRkRBOTMyNUMxNjcwM0IyQTAwODk4MkRDIC8qIE9m
ZmxpbmVBdWRpb0NvbnRleHQuaWRsICovLAorCQkJCUU3Q0Y4NEE1MjRDNjM1RjQwMEIwNkI5MCAv
KiBPZmZsaW5lQXVkaW9Db250ZXh0T3B0aW9ucy5oICovLAorCQkJCUU3Q0Y4NEE3MjRDNjM1RjQw
MEIwNkI5MCAvKiBPZmZsaW5lQXVkaW9Db250ZXh0T3B0aW9ucy5pZGwgKi8sCisJCQkJRkRBM0U5
NTcxMzRBNDlFRjAwOEQ0QjVBIC8qIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9uTm9kZS5jcHAgKi8s
CisJCQkJRkRBM0U5NTgxMzRBNDlFRjAwOEQ0QjVBIC8qIE9mZmxpbmVBdWRpb0Rlc3RpbmF0aW9u
Tm9kZS5oICovLAorCQkJCUZENTgxRkFCMTUyMEY5MUYwMDNBN0E3NSAvKiBPc2NpbGxhdG9yTm9k
ZS5jcHAgKi8sCisJCQkJRkQ1ODFGQUMxNTIwRjkxRjAwM0E3QTc1IC8qIE9zY2lsbGF0b3JOb2Rl
LmggKi8sCisJCQkJRkQ1ODFGQUQxNTIwRjkxRjAwM0E3QTc1IC8qIE9zY2lsbGF0b3JOb2RlLmlk
bCAqLywKKwkJCQlFNzU1RThBRjI0Q0EyNzBBMDA5RjdDMjMgLyogT3NjaWxsYXRvck9wdGlvbnMu
aCAqLywKKwkJCQlFNzU1RThCMTI0Q0EyNzBBMDA5RjdDMjMgLyogT3NjaWxsYXRvck9wdGlvbnMu
aWRsICovLAorCQkJCUU3NTVFOEI0MjRDQTI3OTYwMDlGN0MyMyAvKiBPc2NpbGxhdG9yVHlwZS5o
ICovLAorCQkJCUU3NTVFOEI2MjRDQTI3OTYwMDlGN0MyMyAvKiBPc2NpbGxhdG9yVHlwZS5pZGwg
Ki8sCisJCQkJODMyNkJGODkyNEQzNUMyMDAwMUY4QTg1IC8qIE92ZXJTYW1wbGVUeXBlLmggKi8s
CisJCQkJODMyNkJGOEIyNEQzNUMyMDAwMUY4QTg1IC8qIE92ZXJTYW1wbGVUeXBlLmlkbCAqLywK
KwkJCQlGRDMxNUZDRjEyQjAyNjc1MDBDMUEzNTkgLyogUGFubmVyTm9kZS5jcHAgKi8sCisJCQkJ
RkQzMTVGRDAxMkIwMjY3NTAwQzFBMzU5IC8qIFBhbm5lck5vZGUuaCAqLywKKwkJCQlGRDMxNUZE
MTEyQjAyNjc1MDBDMUEzNTkgLyogUGFubmVyTm9kZS5pZGwgKi8sCisJCQkJRTcxNDY3QjUyNEFC
QUYxRDAwRkIyRjUwIC8qIFBhbm5lck9wdGlvbnMuaCAqLywKKwkJCQlFNzE0NjdCNzI0QUJBRjJD
MDBGQjJGNTAgLyogUGFubmVyT3B0aW9ucy5pZGwgKi8sCisJCQkJODMwNDAyODAyNDlBN0E1QzAw
QTkwRDhEIC8qIFBhbm5pbmdNb2RlbFR5cGUuaCAqLywKKwkJCQk4MzA0MDI4MTI0OUE3QTVEMDBB
OTBEOEQgLyogUGFubmluZ01vZGVsVHlwZS5pZGwgKi8sCisJCQkJRkQ1ODFGQjExNTIwRjkzQjAw
M0E3QTc1IC8qIFBlcmlvZGljV2F2ZS5jcHAgKi8sCisJCQkJRkQ1ODFGQjIxNTIwRjkzQjAwM0E3
QTc1IC8qIFBlcmlvZGljV2F2ZS5oICovLAorCQkJCUZENTgxRkIzMTUyMEY5M0IwMDNBN0E3NSAv
KiBQZXJpb2RpY1dhdmUuaWRsICovLAorCQkJCUU3NTVFODhGMjRDNzQzNEIwMDlGN0MyMyAvKiBQ
ZXJpb2RpY1dhdmVDb25zdHJhaW50cy5oICovLAorCQkJCUU3NTVFODkxMjRDNzQzNEIwMDlGN0My
MyAvKiBQZXJpb2RpY1dhdmVDb25zdHJhaW50cy5pZGwgKi8sCisJCQkJRTc1NUU4OTYyNEM3NDYx
RDAwOUY3QzIzIC8qIFBlcmlvZGljV2F2ZU9wdGlvbnMuaCAqLywKKwkJCQlFNzU1RTg5ODI0Qzc0
NjFEMDA5RjdDMjMgLyogUGVyaW9kaWNXYXZlT3B0aW9ucy5pZGwgKi8sCisJCQkJRkQzMTVGRjEx
MkIwMjY3NjAwQzFBMzU5IC8qIFJlYWx0aW1lQW5hbHlzZXIuY3BwICovLAorCQkJCUZEMzE1RkYy
MTJCMDI2NzYwMEMxQTM1OSAvKiBSZWFsdGltZUFuYWx5c2VyLmggKi8sCisJCQkJRkQzMTVGRUIx
MkIwMjY3NjAwQzFBMzU5IC8qIFNjcmlwdFByb2Nlc3Nvck5vZGUuY3BwICovLAorCQkJCUZEMzE1
RkVDMTJCMDI2NzYwMEMxQTM1OSAvKiBTY3JpcHRQcm9jZXNzb3JOb2RlLmggKi8sCisJCQkJRkQz
MTVGRUQxMkIwMjY3NjAwQzFBMzU5IC8qIFNjcmlwdFByb2Nlc3Nvck5vZGUuaWRsICovLAorCQkJ
CUU3RkJFN0JDMjRFQjJGQTkwMEExOEU2MiAvKiBTdGVyZW9QYW5uZXJOb2RlLmNwcCAqLywKKwkJ
CQlFN0ZCRTdDMTI0RUIyRkFCMDBBMThFNjIgLyogU3RlcmVvUGFubmVyTm9kZS5oICovLAorCQkJ
CUU3RkJFN0JGMjRFQjJGQUEwMEExOEU2MiAvKiBTdGVyZW9QYW5uZXJOb2RlLmlkbCAqLywKKwkJ
CQlFN0ZCRTdDMDI0RUIyRkFCMDBBMThFNjIgLyogU3RlcmVvUGFubmVyT3B0aW9ucy5oICovLAor
CQkJCUU3RkJFN0JFMjRFQjJGQUEwMEExOEU2MiAvKiBTdGVyZW9QYW5uZXJPcHRpb25zLmlkbCAq
LywKKwkJCQlGRDdGMjk4QTEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlckRTUEtlcm5lbC5j
cHAgKi8sCisJCQkJRkQ3RjI5OEIxM0Q0QzBDQjAwQUQ5NTM1IC8qIFdhdmVTaGFwZXJEU1BLZXJu
ZWwuaCAqLywKKwkJCQlGRDdGMjk4QzEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlck5vZGUu
Y3BwICovLAorCQkJCUZEN0YyOThEMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyTm9kZS5o
ICovLAorCQkJCUZEN0YyOThFMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyTm9kZS5pZGwg
Ki8sCisJCQkJODMyNkJGOEMyNEQzNUMyMDAwMUY4QTg1IC8qIFdhdmVTaGFwZXJPcHRpb25zLmgg
Ki8sCisJCQkJODMyNkJGOEQyNEQzNUMyMTAwMUY4QTg1IC8qIFdhdmVTaGFwZXJPcHRpb25zLmlk
bCAqLywKKwkJCQlGRDdGMjk4RjEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlclByb2Nlc3Nv
ci5jcHAgKi8sCisJCQkJRkQ3RjI5OTAxM0Q0QzBDQjAwQUQ5NTM1IC8qIFdhdmVTaGFwZXJQcm9j
ZXNzb3IuaCAqLywKKwkJCSk7CisJCQlwYXRoID0gd2ViYXVkaW87CisJCQlzb3VyY2VUcmVlID0g
Ijxncm91cD4iOworCQl9OworCQlGRDMxNjA0MDEyQjAyNkEzMDBDMUEzNTkgLyogYXVkaW8gKi8g
PSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUNENjY5RDY1MUQy
MzJERjQwMDREMTg2NiAvKiBjb2NvYSAqLywKKwkJCQlDRDBFRUUwRDE0NzQzRTQ4MDAzRUFGQTIg
LyogaW9zICovLAorCQkJCUZEMzE2MEIwMTJCMDI3MDcwMEMxQTM1OSAvKiBtYWMgKi8sCisJCQkJ
RkQzMTYwNDQxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvQXJyYXkuaCAqLywKKwkJCQlGRDMxNjA0
NTEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9CdXMuY3BwICovLAorCQkJCUZEMzE2MDQ2MTJCMDI2
RjcwMEMxQTM1OSAvKiBBdWRpb0J1cy5oICovLAorCQkJCUZEMzE2MDQ3MTJCMDI2RjcwMEMxQTM1
OSAvKiBBdWRpb0NoYW5uZWwuY3BwICovLAorCQkJCUZEMzE2MDQ4MTJCMDI2RjcwMEMxQTM1OSAv
KiBBdWRpb0NoYW5uZWwuaCAqLywKKwkJCQlGRDMxNjA0OTEyQjAyNkY3MDBDMUEzNTkgLyogQXVk
aW9EZXN0aW5hdGlvbi5oICovLAorCQkJCUZEMzE2MDRBMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRp
b0RTUEtlcm5lbC5oICovLAorCQkJCUZEMzE2MDRCMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0RT
UEtlcm5lbFByb2Nlc3Nvci5jcHAgKi8sCisJCQkJRkQzMTYwNEMxMkIwMjZGNzAwQzFBMzU5IC8q
IEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmggKi8sCisJCQkJRkQzMTYwNEQxMkIwMjZGNzAwQzFB
MzU5IC8qIEF1ZGlvRmlsZVJlYWRlci5oICovLAorCQkJCUNEMkY0QTIxMThEODlGNzAwMDYzNzQ2
RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuY3BwICovLAorCQkJCUNEMkY0QTIyMThEODlGNzAw
MDYzNzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCAqLywKKwkJCQlGREUyRDU1QTE1OUU2
NkVCMDBEQ0NDRjggLyogQXVkaW9JT0NhbGxiYWNrLmggKi8sCisJCQkJRkQzMTYwNEUxMkIwMjZG
NzAwQzFBMzU5IC8qIEF1ZGlvUHJvY2Vzc29yLmggKi8sCisJCQkJRkQzMTYwNEYxMkIwMjZGNzAw
QzFBMzU5IC8qIEF1ZGlvUmVzYW1wbGVyLmNwcCAqLywKKwkJCQlGRDMxNjA1MDEyQjAyNkY3MDBD
MUEzNTkgLyogQXVkaW9SZXNhbXBsZXIuaCAqLywKKwkJCQlGRDMxNjA1MTEyQjAyNkY3MDBDMUEz
NTkgLyogQXVkaW9SZXNhbXBsZXJLZXJuZWwuY3BwICovLAorCQkJCUZEMzE2MDUyMTJCMDI2Rjcw
MEMxQTM1OSAvKiBBdWRpb1Jlc2FtcGxlcktlcm5lbC5oICovLAorCQkJCUNEQTc5ODIzMTcwQTI1
ODMwMEQ0NUM1NSAvKiBBdWRpb1Nlc3Npb24uY3BwICovLAorCQkJCUNEQTc5ODIxMTcwQTIyREMw
MEQ0NUM1NSAvKiBBdWRpb1Nlc3Npb24uaCAqLywKKwkJCQlGRDMxNjA1MzEyQjAyNkY3MDBDMUEz
NTkgLyogQXVkaW9Tb3VyY2VQcm92aWRlci5oICovLAorCQkJCUZENjJGNTJEMTQ1ODk4RDgwMDk0
QjBFRCAvKiBBdWRpb1NvdXJjZVByb3ZpZGVyQ2xpZW50LmggKi8sCisJCQkJMDczQjg3NTYxRTQw
RENFNTAwNzFDMEVDIC8qIEF1ZGlvU3RyZWFtRGVzY3JpcHRpb24uaCAqLywKKwkJCQlGRDMxNjA1
NDEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9VdGlsaXRpZXMuY3BwICovLAorCQkJCUZEMzE2MDU1
MTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb1V0aWxpdGllcy5oICovLAorCQkJCUZEMzE2MDU2MTJC
MDI2RjcwMEMxQTM1OSAvKiBCaXF1YWQuY3BwICovLAorCQkJCUZEMzE2MDU3MTJCMDI2RjcwMEMx
QTM1OSAvKiBCaXF1YWQuaCAqLywKKwkJCQlGRDMxNjA1ODEyQjAyNkY3MDBDMUEzNTkgLyogQ29u
ZS5jcHAgKi8sCisJCQkJRkQzMTYwNTkxMkIwMjZGNzAwQzFBMzU5IC8qIENvbmUuaCAqLywKKwkJ
CQlGRDE2NjBBNDEzNzg3QzZEMDAxRkZBN0IgLyogRGVub3JtYWxEaXNhYmxlci5oICovLAorCQkJ
CUZEQUYxOTk2MTUxM0QxMzEwMDhEQjBDMyAvKiBEaXJlY3RDb252b2x2ZXIuY3BwICovLAorCQkJ
CUZEQUYxOTk3MTUxM0QxMzEwMDhEQjBDMyAvKiBEaXJlY3RDb252b2x2ZXIuaCAqLywKKwkJCQlG
RDMxNjA1QTEyQjAyNkY3MDBDMUEzNTkgLyogRGlzdGFuY2UuY3BwICovLAorCQkJCUZEMzE2MDVC
MTJCMDI2RjcwMEMxQTM1OSAvKiBEaXN0YW5jZS5oICovLAorCQkJCUZEMTc2MkUxMTc2Njg2RUEw
MEQ4MzZBOCAvKiBEb3duU2FtcGxlci5jcHAgKi8sCisJCQkJRkQxNzYyRTIxNzY2ODZFQTAwRDgz
NkE4IC8qIERvd25TYW1wbGVyLmggKi8sCisJCQkJRkQ2RUQyQzUxMzZCOEU2NjAwM0NGMDcyIC8q
IER5bmFtaWNzQ29tcHJlc3Nvci5jcHAgKi8sCisJCQkJRkQ2RUQyQzYxMzZCOEU2NjAwM0NGMDcy
IC8qIER5bmFtaWNzQ29tcHJlc3Nvci5oICovLAorCQkJCUZENTM3MzU0MTM3QjY1M0IwMDAwOERD
RSAvKiBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuY3BwICovLAorCQkJCUZENTM3MzU1MTM3QjY1
M0IwMDAwOERDRSAvKiBEeW5hbWljc0NvbXByZXNzb3JLZXJuZWwuaCAqLywKKwkJCQlGRDMxNjA1
QzEyQjAyNkY3MDBDMUEzNTkgLyogRXF1YWxQb3dlclBhbm5lci5jcHAgKi8sCisJCQkJRkQzMTYw
NUQxMkIwMjZGNzAwQzFBMzU5IC8qIEVxdWFsUG93ZXJQYW5uZXIuaCAqLywKKwkJCQlGRDMxNjA1
RTEyQjAyNkY3MDBDMUEzNTkgLyogRkZUQ29udm9sdmVyLmNwcCAqLywKKwkJCQlGRDMxNjA1RjEy
QjAyNkY3MDBDMUEzNTkgLyogRkZUQ29udm9sdmVyLmggKi8sCisJCQkJRkQzMTYwNjAxMkIwMjZG
NzAwQzFBMzU5IC8qIEZGVEZyYW1lLmNwcCAqLywKKwkJCQlGRDMxNjA2MTEyQjAyNkY3MDBDMUEz
NTkgLyogRkZURnJhbWUuaCAqLywKKwkJCQlGRDMxNjA2MjEyQjAyNkY3MDBDMUEzNTkgLyogSFJU
RkRhdGFiYXNlLmNwcCAqLywKKwkJCQlGRDMxNjA2MzEyQjAyNkY3MDBDMUEzNTkgLyogSFJURkRh
dGFiYXNlLmggKi8sCisJCQkJRkQzMTYwNjQxMkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZEYXRhYmFz
ZUxvYWRlci5jcHAgKi8sCisJCQkJRkQzMTYwNjUxMkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZEYXRh
YmFzZUxvYWRlci5oICovLAorCQkJCUZEMzE2MDY2MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGRWxl
dmF0aW9uLmNwcCAqLywKKwkJCQlGRDMxNjA2NzEyQjAyNkY3MDBDMUEzNTkgLyogSFJURkVsZXZh
dGlvbi5oICovLAorCQkJCUZEMzE2MDY4MTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGS2VybmVsLmNw
cCAqLywKKwkJCQlGRDMxNjA2OTEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oICovLAor
CQkJCUZEMzE2MDZBMTJCMDI2RjcwMEMxQTM1OSAvKiBIUlRGUGFubmVyLmNwcCAqLywKKwkJCQlG
RDMxNjA2QjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURlBhbm5lci5oICovLAorCQkJCTgzOUJFNkQ0
MjRGNTg3NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuY3BwICovLAorCQkJCTgzOUJFNkQyMjRGNTg3
NTUwMDRERjUwRiAvKiBJSVJGaWx0ZXIuaCAqLywKKwkJCQlGREIxNzAwMzE0QTJCQUIyMDBBMkI1
RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmNwcCAqLywKKwkJCQlGREIxNzAwNDE0QTJCQUIy
MDBBMkI1RDkgLyogTXVsdGlDaGFubmVsUmVzYW1wbGVyLmggKi8sCisJCQkJNDE2RkQyNUQyNDBF
RTFBRTAwNjY2MUQ4IC8qIE5vd1BsYXlpbmdJbmZvLmggKi8sCisJCQkJRkQzMTYwNkMxMkIwMjZG
NzAwQzFBMzU5IC8qIFBhbm5lci5jcHAgKi8sCisJCQkJRkQzMTYwNkQxMkIwMjZGNzAwQzFBMzU5
IC8qIFBhbm5lci5oICovLAorCQkJCUNERTY2N0ExMUU0QkJBNEQwMEU4MTU0QSAvKiBQbGF0Zm9y
bUF1ZGlvRGF0YS5oICovLAorCQkJCTA3MEUwOTFBMTg3NUVGNzEwMDNBMUQzQyAvKiBQbGF0Zm9y
bU1lZGlhU2Vzc2lvbi5jcHAgKi8sCisJCQkJMDcwRTA5MTgxODc1RUQ5MzAwM0ExRDNDIC8qIFBs
YXRmb3JtTWVkaWFTZXNzaW9uLmggKi8sCisJCQkJQ0RBRThDMDcxNzQ2Qjk1NzAwNTMyRDc4IC8q
IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5jcHAgKi8sCisJCQkJQ0RBRThDMDgxNzQ2Qjk1
NzAwNTMyRDc4IC8qIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oICovLAorCQkJCTgzRDUx
MUYzMjUwQzFDQTgwMDJFREM1MSAvKiBQdXNoUHVsbEZJRk8uY3BwICovLAorCQkJCTgzRDUxMUY1
MjUwQzFDQTgwMDJFREM1MSAvKiBQdXNoUHVsbEZJRk8uaCAqLywKKwkJCQlGRDMxNjA2RTEyQjAy
NkY3MDBDMUEzNTkgLyogUmV2ZXJiLmNwcCAqLywKKwkJCQlGRDMxNjA2RjEyQjAyNkY3MDBDMUEz
NTkgLyogUmV2ZXJiLmggKi8sCisJCQkJRkQzMTYwNzAxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVy
YkFjY3VtdWxhdGlvbkJ1ZmZlci5jcHAgKi8sCisJCQkJRkQzMTYwNzExMkIwMjZGNzAwQzFBMzU5
IC8qIFJldmVyYkFjY3VtdWxhdGlvbkJ1ZmZlci5oICovLAorCQkJCUZEMzE2MDcyMTJCMDI2Rjcw
MEMxQTM1OSAvKiBSZXZlcmJDb252b2x2ZXIuY3BwICovLAorCQkJCUZEMzE2MDczMTJCMDI2Rjcw
MEMxQTM1OSAvKiBSZXZlcmJDb252b2x2ZXIuaCAqLywKKwkJCQlGRDMxNjA3NDEyQjAyNkY3MDBD
MUEzNTkgLyogUmV2ZXJiQ29udm9sdmVyU3RhZ2UuY3BwICovLAorCQkJCUZEMzE2MDc1MTJCMDI2
RjcwMEMxQTM1OSAvKiBSZXZlcmJDb252b2x2ZXJTdGFnZS5oICovLAorCQkJCUZEMzE2MDc2MTJC
MDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJJbnB1dEJ1ZmZlci5jcHAgKi8sCisJCQkJRkQzMTYwNzcx
MkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYklucHV0QnVmZmVyLmggKi8sCisJCQkJRkQwMEQ3QTIx
NEEzRjYxOTAwNzM0MDExIC8qIFNpbmNSZXNhbXBsZXIuY3BwICovLAorCQkJCUZEMDBEN0EzMTRB
M0Y2MTkwMDczNDAxMSAvKiBTaW5jUmVzYW1wbGVyLmggKi8sCisJCQkJRTdGQkU3QzUyNEVDMzZG
MzAwQTE4RTYyIC8qIFN0ZXJlb1Bhbm5lci5jcHAgKi8sCisJCQkJRTdGQkU3QzQyNEVDMzZGMzAw
QTE4RTYyIC8qIFN0ZXJlb1Bhbm5lci5oICovLAorCQkJCUZEMTc2MkREMTc2Njg2RDkwMEQ4MzZB
OCAvKiBVcFNhbXBsZXIuY3BwICovLAorCQkJCUZEMTc2MkRFMTc2Njg2RDkwMEQ4MzZBOCAvKiBV
cFNhbXBsZXIuaCAqLywKKwkJCQlGRDMxNjA3ODEyQjAyNkY3MDBDMUEzNTkgLyogVmVjdG9yTWF0
aC5jcHAgKi8sCisJCQkJRkQzMTYwNzkxMkIwMjZGNzAwQzFBMzU5IC8qIFZlY3Rvck1hdGguaCAq
LywKKwkJCQlGRDUzNzM1MDEzN0I2NTE4MDAwMDhEQ0UgLyogWmVyb1BvbGUuY3BwICovLAorCQkJ
CUZENTM3MzUxMTM3QjY1MTgwMDAwOERDRSAvKiBaZXJvUG9sZS5oICovLAorCQkJKTsKKwkJCXBh
dGggPSBhdWRpbzsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUZEMzE2MEIw
MTJCMDI3MDcwMEMxQTM1OSAvKiBtYWMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNo
aWxkcmVuID0gKAorCQkJCUZEMzE2MEI1MTJCMDI3MkEwMEMxQTM1OSAvKiBBdWRpb0J1c01hYy5t
bSAqLywKKwkJCQlDRDJGNEEyNTE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJkd2FyZUxpc3Rl
bmVyTWFjLmNwcCAqLywKKwkJCQlDRDJGNEEyNjE4RDhBMzQ5MDA2Mzc0NkQgLyogQXVkaW9IYXJk
d2FyZUxpc3RlbmVyTWFjLmggKi8sCisJCQkJRkQzMTYwQjYxMkIwMjcyQTAwQzFBMzU5IC8qIEF1
ZGlvT3V0cHV0VW5pdEFkYXB0b3JNYWMuY3BwICovLAorCQkJCUNEMzZDMTVGMjYwNjdDMUYwMEM4
QzUyOSAvKiBBdWRpb1Nlc3Npb25NYWMuaCAqLywKKwkJCQlDRDU0REU0OTE3NDY5QzZEMDA1RTVC
MzYgLyogQXVkaW9TZXNzaW9uTWFjLm1tICovLAorCQkJCUZEMzE2MEJBMTJCMDI3MkEwMEMxQTM1
OSAvKiBGRlRGcmFtZU1hYy5jcHAgKi8sCisJCQkJQ0QzNkMxNjgyNjBBNjNEMzAwQzhDNTI5IC8q
IFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLmggKi8sCisJCQkJQ0QzNkMxNjkyNjBBNjNENDAwQzhD
NTI5IC8qIFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLm1tICovLAorCQkJKTsKKwkJCXBhdGggPSBt
YWM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworCQlGREExNUU3QjEyQjAzRTA0
MDAzQTU4M0EgLyogV2ViQXVkaW8gKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCUZEQTE1RUM3MTJCMDNGNTAwMDNBNTgzQSAvKiBKU0FuYWx5c2VyTm9kZS5j
cHAgKi8sCisJCQkJRkRBMTVFQzgxMkIwM0Y1MDAwM0E1ODNBIC8qIEpTQW5hbHlzZXJOb2RlLmgg
Ki8sCisJCQkJRkRBMTVFODExMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9CdWZmZXIuY3BwICov
LAorCQkJCUZEQTE1RTgyMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVyLmggKi8sCisJ
CQkJRkRGN0U5QzExM0FDMjFEQjAwQTUxRUFDIC8qIEpTQXVkaW9CdWZmZXJDYWxsYmFjay5jcHAg
Ki8sCisJCQkJRkRGN0U5QzIxM0FDMjFEQjAwQTUxRUFDIC8qIEpTQXVkaW9CdWZmZXJDYWxsYmFj
ay5oICovLAorCQkJCUZEQTE1RTgzMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQnVmZmVyU291
cmNlTm9kZS5jcHAgKi8sCisJCQkJRkRBMTVFODQxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9C
dWZmZXJTb3VyY2VOb2RlLmggKi8sCisJCQkJRkRBMTVFODkxMkIwM0VFMTAwM0E1ODNBIC8qIEpT
QXVkaW9Db250ZXh0LmNwcCAqLywKKwkJCQlGREExNUU4QTEyQjAzRUUxMDAzQTU4M0EgLyogSlNB
dWRpb0NvbnRleHQuaCAqLywKKwkJCQlGREExNUU4QjEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRp
b0Rlc3RpbmF0aW9uTm9kZS5jcHAgKi8sCisJCQkJRkRBMTVFOEMxMkIwM0VFMTAwM0E1ODNBIC8q
IEpTQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCAqLywKKwkJCQlGREExNUU5MTEyQjAzRUUxMDAzQTU4
M0EgLyogSlNBdWRpb0xpc3RlbmVyLmNwcCAqLywKKwkJCQlGREExNUU5MjEyQjAzRUUxMDAzQTU4
M0EgLyogSlNBdWRpb0xpc3RlbmVyLmggKi8sCisJCQkJRkRBMTVFOTMxMkIwM0VFMTAwM0E1ODNB
IC8qIEpTQXVkaW9Ob2RlLmNwcCAqLywKKwkJCQlGREExNUU5NDEyQjAzRUUxMDAzQTU4M0EgLyog
SlNBdWRpb05vZGUuaCAqLywKKwkJCQlGREExNUU5NzEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRp
b1BhcmFtLmNwcCAqLywKKwkJCQlGREExNUU5ODEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRpb1Bh
cmFtLmggKi8sCisJCQkJRkRBMTVFOTkxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9Qcm9jZXNz
aW5nRXZlbnQuY3BwICovLAorCQkJCUZEQTE1RTlBMTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlv
UHJvY2Vzc2luZ0V2ZW50LmggKi8sCisJCQkJRkRGMDlEQzYxMzk5QjYyMjAwNjg4RTVCIC8qIEpT
QmlxdWFkRmlsdGVyTm9kZS5jcHAgKi8sCisJCQkJRkRGMDlEQzcxMzk5QjYyMjAwNjg4RTVCIC8q
IEpTQmlxdWFkRmlsdGVyTm9kZS5oICovLAorCQkJCUZEQTE1RTg1MTJCMDNFRTEwMDNBNTgzQSAv
KiBKU0NoYW5uZWxNZXJnZXJOb2RlLmNwcCAqLywKKwkJCQlGREExNUU4NjEyQjAzRUUxMDAzQTU4
M0EgLyogSlNDaGFubmVsTWVyZ2VyTm9kZS5oICovLAorCQkJCUZEQTE1RTg3MTJCMDNFRTEwMDNB
NTgzQSAvKiBKU0NoYW5uZWxTcGxpdHRlck5vZGUuY3BwICovLAorCQkJCUZEQTE1RTg4MTJCMDNF
RTEwMDNBNTgzQSAvKiBKU0NoYW5uZWxTcGxpdHRlck5vZGUuaCAqLywKKwkJCQlGREExNUVCQjEy
QjAzRjBCMDAzQTU4M0EgLyogSlNDb252b2x2ZXJOb2RlLmNwcCAqLywKKwkJCQlGREExNUVCQzEy
QjAzRjBCMDAzQTU4M0EgLyogSlNDb252b2x2ZXJOb2RlLmggKi8sCisJCQkJRkRBMTVFQ0YxMkIw
M0Y5NDAwM0E1ODNBIC8qIEpTRGVsYXlOb2RlLmNwcCAqLywKKwkJCQlGREExNUVEMDEyQjAzRjk0
MDAzQTU4M0EgLyogSlNEZWxheU5vZGUuaCAqLywKKwkJCQlGRDc4NjhCNzEzNkI5OTkyMDBENDAz
REYgLyogSlNEeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcCAqLywKKwkJCQlGRDc4NjhCODEzNkI5
OTkyMDBENDAzREYgLyogSlNEeW5hbWljc0NvbXByZXNzb3JOb2RlLmggKi8sCisJCQkJRkRBMTVF
OEYxMkIwM0VFMTAwM0E1ODNBIC8qIEpTR2Fpbk5vZGUuY3BwICovLAorCQkJCUZEQTE1RTkwMTJC
MDNFRTEwMDNBNTgzQSAvKiBKU0dhaW5Ob2RlLmggKi8sCisJCQkJRkQyM0ExMjMxM0Y1RkE1OTAw
RjY3MDAxIC8qIEpTTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmNwcCAqLywKKwkJCQlGRDIz
QTEyNDEzRjVGQTU5MDBGNjcwMDEgLyogSlNNZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaCAq
LywKKwkJCQlGREJENDgwQTE1OUJDNjg3MDA5M0VCNEYgLyogSlNNZWRpYVN0cmVhbUF1ZGlvU291
cmNlTm9kZS5jcHAgKi8sCisJCQkJRkRCRDQ4MEIxNTlCQzY4NzAwOTNFQjRGIC8qIEpTTWVkaWFT
dHJlYW1BdWRpb1NvdXJjZU5vZGUuaCAqLywKKwkJCQlGREY2QkFGNjEzNEE0Qzk4MDA4MjI5MjAg
LyogSlNPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQuY3BwICovLAorCQkJCUZERjZCQUY3MTM0
QTRDOTgwMDgyMjkyMCAvKiBKU09mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5oICovLAorCQkJ
CUZEQTkzMjY0MTY3MDNCQTkwMDg5ODJEQyAvKiBKU09mZmxpbmVBdWRpb0NvbnRleHQuY3BwICov
LAorCQkJCUZEQTkzMjY1MTY3MDNCQTkwMDg5ODJEQyAvKiBKU09mZmxpbmVBdWRpb0NvbnRleHQu
aCAqLywKKwkJCQlGREVBNjI0MDE1MjEwMkUyMDA0NzlERjAgLyogSlNPc2NpbGxhdG9yTm9kZS5j
cHAgKi8sCisJCQkJRkRFQTYyNDExNTIxMDJFMjAwNDc5REYwIC8qIEpTT3NjaWxsYXRvck5vZGUu
aCAqLywKKwkJCQlGREExNUU5NTEyQjAzRUUxMDAzQTU4M0EgLyogSlNQYW5uZXJOb2RlLmNwcCAq
LywKKwkJCQlGREExNUU5NjEyQjAzRUUxMDAzQTU4M0EgLyogSlNQYW5uZXJOb2RlLmggKi8sCisJ
CQkJRkRFQTYyNDQxNTIxMDJGQzAwNDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmNwcCAqLywKKwkJ
CQlGREVBNjI0NTE1MjEwMkZDMDA0NzlERjAgLyogSlNQZXJpb2RpY1dhdmUuaCAqLywKKwkJCQlG
REExNUVDQjEyQjAzRjYxMDAzQTU4M0EgLyogSlNTY3JpcHRQcm9jZXNzb3JOb2RlLmNwcCAqLywK
KwkJCQlGREExNUVDQzEyQjAzRjYxMDAzQTU4M0EgLyogSlNTY3JpcHRQcm9jZXNzb3JOb2RlLmgg
Ki8sCisJCQkJRkQ4MkQ3RjUxM0Q0QzhCRDAwNEU0MzcyIC8qIEpTV2F2ZVNoYXBlck5vZGUuY3Bw
ICovLAorCQkJCUZEODJEN0Y2MTNENEM4QkQwMDRFNDM3MiAvKiBKU1dhdmVTaGFwZXJOb2RlLmgg
Ki8sCisJCQkpOworCQkJbmFtZSA9IFdlYkF1ZGlvOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsKKwkJfTsKKwkJRkZCNjk4QzgxODMyRjEwQjAwMTU4QTMxIC8qIGxpbmUgKi8gPSB7CisJCQlp
c2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCUZGQjY5OEM5MTgzMkYxMEIwMDE1
OEEzMSAvKiBCcmVha2luZ0NvbnRleHQuaCAqLywKKwkJCQlGRkI2OThDQTE4MzNFQzM4MDAxNThB
MzEgLyogTGluZUJyZWFrZXIuY3BwICovLAorCQkJCUZGQjY5OENCMTgzM0VDMzgwMDE1OEEzMSAv
KiBMaW5lQnJlYWtlci5oICovLAorCQkJCUZGQjY5OENEMTgzM0YxNzYwMDE1OEEzMSAvKiBMaW5l
SW5mby5jcHAgKi8sCisJCQkJRkZCNjk4Q0UxODMzRjE3NjAwMTU4QTMxIC8qIExpbmVJbmZvLmgg
Ki8sCisJCQkJRkZFRkFCMkQxODNCQ0I2RjAwNTE0NTM0IC8qIExpbmVJbmxpbmVIZWFkZXJzLmgg
Ki8sCisJCQkJRkZFRkFCMjkxODM4MERBMDAwNTE0NTM0IC8qIExpbmVMYXlvdXRTdGF0ZS5oICov
LAorCQkJCUZGREJDMDQ2MTgzRDI3QjcwMDQwNzEwOSAvKiBMaW5lV2lkdGguY3BwICovLAorCQkJ
CUZGREJDMDQ1MTgzRDI3QjcwMDQwNzEwOSAvKiBMaW5lV2lkdGguaCAqLywKKwkJCQlGRkFDMzBG
RDE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdPYmplY3RzLmNwcCAqLywKKwkJCQlGRkFDMzBG
QzE4NEZCMTQ1MDA4QzRGMUUgLyogVHJhaWxpbmdPYmplY3RzLmggKi8sCisJCQkpOworCQkJcGF0
aCA9IGxpbmU7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OworLyogRW5kIFBCWEdy
b3VwIHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYSGVhZGVyc0J1aWxkUGhhc2Ugc2VjdGlvbiAq
LworCQk0MTdEQTZDQzEzNzM0RTAyMDA3QzU3RkIgLyogSGVhZGVycyAqLyA9IHsKKwkJCWlzYSA9
IFBCWEhlYWRlcnNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsK
KwkJCWZpbGVzID0gKAorCQkJCTUxNzE0RUFEMUNGNjU5NTEwMDQ3MjNDNCAvKiBHQ09ic2VydmF0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTdEQTZEQTEzNzM0RTZFMDA3QzU3RkIgLyogSW50
ZXJuYWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBN0JGN0VFMDE0QzkxNzVBMDAxNDQ4OUQgLyog
SW50ZXJuYWxTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTNFMjlFNUYxNjdBOEExOTAw
NTg2RDNEIC8qIEludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxMzZFQzBEMjM4MzhBNDcwMDBBREJDRSAvKiBJbnRlcm5hbHNTZXRMaWtlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1MTcxNEVCMTFDRjY2NUNFMDA0NzIzQzQgLyogSlNHQ09ic2VydmF0aW9uLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk0MTdEQTcxRTEzNzM1REZBMDA3QzU3RkIgLyogSlNJbnRlcm5h
bHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUE3NDBCNUE1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU0lu
dGVybmFsU2V0dGluZ3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzRUQzRkRGMTY3QTg4RTcwMDY3
NjJFNiAvKiBKU0ludGVybmFsU2V0dGluZ3NHZW5lcmF0ZWQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE3NDBCNTk1MTRDOTM1QUIwMEE3N0ZBNCAvKiBKU01hbGxvY1N0YXRpc3RpY3MuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNENTM5M0Q0MTc1RTAxODYwMEMwNzEyMyAvKiBKU01lbW9yeUluZm8uaCBp
biBIZWFkZXJzICovLAorCQkJCTUzOEVDOTMzMUY5OUI5RjcwMDREMjJBOCAvKiBKU01vY2tDRE1G
YWN0b3J5LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTlBRUEyMTFBQUE4MDg2MDBCNTJCMjUgLyog
SlNNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MzhFQzkz
NDFGOTlCOUY3MDA0RDIyQTggLyogSlNNb2NrUGFnZU92ZXJsYXkuaCBpbiBIZWFkZXJzICovLAor
CQkJCUExNDZEMzIzMUY5OUQwRUYwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50QWRkcmVzcy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTEwNEVDNUUyMjBBM0U0RTAwQ0JGNjdBIC8qIEpTTW9ja1BheW1l
bnRDb250YWN0RmllbGRzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTQ2RDMxQjFGOTlCQ0ZCMDBE
MjkxOTYgLyogSlNNb2NrUGF5bWVudENvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
MUJCODVCOTIxNTlCM0FFMDA2N0UwN0QgLyogSlNNb2NrUGF5bWVudEVycm9yLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1NzE1NjExNTIzNEM3RkRDMDA4RkM3QUIgLyogSlNNb2NrV2ViQXV0aGVudGlj
YXRpb25Db25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MjdEQTcxRTEzNzM1REZB
MDA3QzU3RkIgLyogSlNTZXJ2aWNlV29ya2VySW50ZXJuYWxzLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFQkY1MTIxRDE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVyc2lvbnMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNEQzI2QjQxMTYwQThDQ0UwMDI2NzU3QiAvKiBMZWdhY3lNb2NrQ0RNLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBMUJGNkI4MzFBQTk2QzdEMDBBRjRBOEEgLyogTW9ja0NvbnRl
bnRGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQjVCMjlGMUFBQTg0NkYwMDhCNjA0MiAv
KiBNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTU3RUJG
QjFFM0FCNjdGMDBBQzlGRTkgLyogTW9ja0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkyRDZGM0U5MTFDMUVDQjJGMDA2MURCRDQgLyogTW9ja1BhZ2VPdmVybGF5
LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDk3RjA0ODE5REQ0MTQwMDAxRUU5QzMgLyogTW9ja1Bh
Z2VPdmVybGF5Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTRCQjBBMDFGOTgxM0I4MDA2
MDVBMzUgLyogTW9ja1BheW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExNDZEMzIxMUY5OUNC
MUEwMEQyOTE5NiAvKiBNb2NrUGF5bWVudEFkZHJlc3MuaCBpbiBIZWFkZXJzICovLAorCQkJCUEx
NDZEMzI1MUY5OUQ2OTgwMEQyOTE5NiAvKiBNb2NrUGF5bWVudENvbnRhY3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUExMDRFQzVBMjIwQTNERTAwMENCRjY3QSAvKiBNb2NrUGF5bWVudENvbnRhY3RG
aWVsZHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQUZFREU2MUY4QkZGNkQwMDg3MDEzRiAvKiBN
b2NrUGF5bWVudENvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUNCRUY2NDFGOUYx
MTI5MDAyOERFN0MgLyogTW9ja1BheW1lbnRNZXRob2QuaCBpbiBIZWFkZXJzICovLAorCQkJCUEx
NDA2MThDMUUyRUNBMEEwMDMyQjM0RSAvKiBNb2NrUHJldmlld0xvYWRlckNsaWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTcxNTYxMEIyMzRDMUI0OTAwOEZDN0FCIC8qIE1vY2tXZWJBdXRoZW50
aWNhdGlvbkNvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUFBNUYzQjhEMTZDQzMz
RDEwMDQ1NUVCMCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyTW9jay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQTE3NjNGM0YxRTIwNTIzNDAwMUQ1OERFIC8qIFdlYkFyY2hpdmVEdW1wU3VwcG9y
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE4MTVDMUYxMzgzMTk4MzAwNTdBQUE0IC8qIFdlYkNv
cmVUZXN0U3VwcG9ydC5oIGluIEhlYWRlcnMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRlcGxv
eW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CisJCTkzRjE5OEE2MDgyNDVFNTkwMDFFOUFC
QyAvKiBIZWFkZXJzICovID0geworCQkJaXNhID0gUEJYSGVhZGVyc0J1aWxkUGhhc2U7CisJCQli
dWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkJN0NEMEUyQjgx
RjgwQTQ4MjAwMTZBNENFIC8qIEFib3J0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
N0NEMEUyQkYxRjgwQTU2RTAwMTZBNENFIC8qIEFib3J0U2lnbmFsLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0NkI5NTE5NTIwN0Q2MzM0MDBBN0QyREQgLyogQWJzdHJhY3RET01XaW5kb3cuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQ2Qjk1MTk2MjA3RDYzM0EwMEE3RDJERCAvKiBBYnN0cmFjdEZyYW1l
LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDgyMjMxMzFFMzg2RTI0MDA2NkZDNzkgLyogQWJzdHJh
Y3RQYXN0ZWJvYXJkLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0QwNTAzMjI1M0ExNDlBMDAyQTMw
NzIgLyogQWJzdHJhY3RSYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFFMUIxRDEwRkY1OTg2
OTAwNTc2QjNCIC8qIEFic3RyYWN0V29ya2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTIy
RTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUFSSUFHcmlkQ2VsbC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMjlBODEyMzMwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlBUklB
R3JpZFJvdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjkxNEUzMDgxQ0FCNUE0NDAwNDk5NjZGIC8q
IEFjY2Vzc2liaWxpdHlBdHRhY2htZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTIzQjBG
QkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eUltYWdlTWFwTGluay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMjlBODEyMkMwRkJCOUMxRDAwNTEwMjkzIC8qIEFjY2Vzc2liaWxpdHlMaXN0Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTI0MzBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJp
bGl0eUxpc3RCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTI5QTgxMjQyMEZCQjlDMUQwMDUxMDI5
MyAvKiBBY2Nlc3NpYmlsaXR5TGlzdEJveE9wdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdC
MEFCQ0YxMDMyMjQyMjAwRkJEQzMzIC8qIEFjY2Vzc2liaWxpdHlNYXRoTUxFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQk3NkNERDJGMzExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNzaWJpbGl0
eU1lbnVMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3NkNERDJGNzExMDNEQTY2MDA2ODA1MjEg
LyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0T3B0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk3NkNE
RDJGNTExMDNEQTY2MDA2ODA1MjEgLyogQWNjZXNzaWJpbGl0eU1lbnVMaXN0UG9wdXAuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTI5QUNCMjEyMTQzRTcxMjgwMDZCQ0E1RiAvKiBBY2Nlc3NpYmlsaXR5
TW9ja09iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjlBODEyMzYwRkJCOUMxRDAwNTEwMjkz
IC8qIEFjY2Vzc2liaWxpdHlPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5MzZCRjVDMjFE
NjlFNEIwMDRBOEZDOSAvKiBBY2Nlc3NpYmlsaXR5T2JqZWN0SW50ZXJmYWNlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBNDA5Qzk4NTExNkQwREREMDA3MTk3QkQgLyogQWNjZXNzaWJpbGl0eVByb2dy
ZXNzSW5kaWNhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTIzOTBGQkI5QzFEMDA1MTAy
OTMgLyogQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTND
NEY2RUIxMTA4RjlBNTAwOTlEMERCIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxiYXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTI5NDg5RkM3MTJDMDBGMDMwMEQ4M0YwRiAvKiBBY2Nlc3NpYmlsaXR5U2Ny
b2xsVmlldy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcwOUZDNEUxMDI1REVFMzAwNTlDREJBIC8q
IEFjY2Vzc2liaWxpdHlTbGlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5RDdCQ0ZBMTQ0NEFG
N0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNjlBNkNCQUQxQzZCRTQyQzAwQjgzNkU5IC8qIEFjY2Vzc2liaWxpdHlTVkdFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBQUMwOENGMzE1Rjk0MUZEMDBGMUUxODggLyogQWNjZXNzaWJp
bGl0eVNWR1Jvb3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5QTgxMjJCMEZCQjlDMUQwMDUxMDI5
MyAvKiBBY2Nlc3NpYmlsaXR5VGFibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5QTgxMjMyMEZC
QjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmlsaXR5VGFibGVDZWxsLmggaW4gSGVhZGVycyAqLywK
KwkJCQkyOUE4MTI0MTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRhYmxlQ29sdW1u
LmggaW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTIzRjBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNz
aWJpbGl0eVRhYmxlSGVhZGVyQ29udGFpbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyOUE4MTIz
MTBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRhYmxlUm93LmggaW4gSGVhZGVycyAq
LywKKwkJCQlBOTFDOUZCRjFCNjU4NkRFMDBBRkZENTQgLyogQWNjZXNzaWJpbGl0eVRyZWUuaCBp
biBIZWFkZXJzICovLAorCQkJCUE5MUM5RkMzMUI2NTlBNjcwMEFGRkQ1NCAvKiBBY2Nlc3NpYmls
aXR5VHJlZUl0ZW0uaCBpbiBIZWFkZXJzICovLAorCQkJCTdDNTIyMjk5MUUxREFFMUMwMDJDQjhG
NyAvKiBBY3RpdmVET01DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFDNERFNjkwRUE3
NUMxRTAwMjNDQ0Q2IC8qIEFjdGl2ZURPTU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzI0
RUU1NTAxREM4MEQ3RjAwQTkxRkZCIC8qIEFjdGl2aXR5U3RhdGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTcyNEVFNTUxMURDODBEODQwMEE5MUZGQiAvKiBBY3Rpdml0eVN0YXRlQ2hhbmdlT2JzZXJ2
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2QkQwNUM1MjVCQjZFNTkwMDIyNUYzMCAvKiBBZGRF
dmVudExpc3RlbmVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE2NzdFMEUyMTNFMDJB
MDAwQTA4QzM0IC8qIEFkZHJlc3NFcnJvcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRjdFNDkx
MTM3Q0Q3QzcwMDFEREFFNyAvKiBBZGp1c3RWaWV3U2l6ZU9yTm90LmggaW4gSGVhZGVycyAqLywK
KwkJCQk4NEQwQzQwNjExMTVGMUVBMDAxOEFBMzQgLyogQWZmaW5lVHJhbnNmb3JtLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDMUY3QjczMjI0NDhGMkFDMDAxMjQ1NTcgLyogQUdYQ29tcGlsZXJTZXJ2
aWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0JCNUM4ODFENUQ2RjQ1MDA1QTcxRjQgLyogQWxs
RGVzY2VuZGFudHNDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Mjk5QkM2NzIzRDZB
NTMyMDBDQzY4ODMgLyogQWxwaGFQcmVtdWx0aXBsaWNhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0VEQTEyRDcxNTJDQTFDQjAwRDlFMDhEIC8qIEFsdGVybmF0aXZlVGV4dENsaWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQ0U0NTk0NkYyNDEyM0M5NjAwNzgwMTlGIC8qIEFsdGVybmF0aXZl
VGV4dENvbnRleHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRTA4QzNEMjE1MkI1
OTlBMDAyMUI4QzIgLyogQWx0ZXJuYXRpdmVUZXh0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0U3QjJEQjMxNTg2QUJBRDAwOThCM0ZBIC8qIEFsdGVybmF0aXZlVGV4dFVJQ29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwM0UxMkIwMjY3NjAwQzFBMzU5IC8qIEFu
YWx5c2VyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTdFMDM1NzIyNEQ0RTE5NjAwOERGRUZC
IC8qIEFuYWx5c2VyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjdFM0M4MDgyNTdGNUU2
RTAwQzk4NkFCIC8qIEFOR0xFSGVhZGVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFBNzk1Qzcx
ODg4QkNCMjAwMzgyRjkwIC8qIEFOR0xFSW5zdGFuY2VkQXJyYXlzLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0OUU5MTJBQjBFRkFDOTA2MDA5RDBDQUYgLyogQW5pbWF0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQk3MUVGQ0VEQzIwMkIzOEE5MDBEN0M0MTEgLyogQW5pbWF0aW9uRWZmZWN0LmggaW4g
SGVhZGVycyAqLywKKwkJCQk3MUUyQzQyNjIxQzkzNTI4MDAyNEY4QzggLyogQW5pbWF0aW9uRWZm
ZWN0UGhhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxOTg0ODAxMUExRDgxN0IwMEExMzMxOCAv
KiBBbmltYXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzExQUQxMjYyMzZEODZFNTAw
NkZGMzdDIC8qIEFuaW1hdGlvbkV2ZW50QmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzJBNzNC
RUYyNDVBM0Y5MDAwMUM5RDAzIC8qIEFuaW1hdGlvbkZyYW1lUmF0ZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDlFOTEyQUQwRUZBQzkwNjAwOUQwQ0FGIC8qIEFuaW1hdGlvbkxpc3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTcxNEM3QzY2MUZEQUQyQTEwMEYyQkVFMSAvKiBBbmltYXRpb25QbGF5YmFj
a0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTRDN0M2NzFGREFEMkE5MDBGMkJFRTEgLyog
QW5pbWF0aW9uUGxheWJhY2tFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMDI1RUNE
MUY5OUYwQ0UwMDRBMjUwQyAvKiBBbmltYXRpb25UaW1lbGluZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMEY1ODBGQUYxNDk4MDBENDAwRkI1QkQ4IC8qIEFuaW1hdGlvblV0aWxpdGllcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTcxNTJCNUEyMUNCM0U4ODAwMEMzN0NBIC8qIEFwZHVDb21tYW5kLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1NzE1MkI1QzIxQ0MxOTAyMDAwQzM3Q0EgLyogQXBkdVJlc3Bv
bnNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURENzA5OUU2NDkyMDA1NkU1ODEgLyogQXBw
ZW5kTm9kZUNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0NTIxMERGMjVENjFGMDAwMDNB
MkVEOCAvKiBBcHBIaWdobGlnaHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0QUUwNDVDMjU3OUNG
RkIwMEM0MkU2NSAvKiBBcHBIaWdobGlnaHRSYW5nZURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQ0MjUwNzA5MjU4MjlBMjcwMEMwOTM2OCAvKiBBcHBIaWdobGlnaHRTdG9yYWdlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBMTEzRTAyRTIzMzFBMTM0MDA5QzMzQTAgLyogQXBwbGVQYXlDYW5jZWxF
dmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBOTQxRjdFQzQzMjAwNThBNDc3IC8qIEFw
cGxlUGF5Q29udGFjdEZpZWxkLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NUVBRDU2MzI2NkVGMkRC
MDA0QjlDRjEgLyogQXBwbGVQYXlDb3Vwb25Db2RlQ2hhbmdlZEV2ZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQk5NTY4NEQ4MzI2NTM1N0Y4MDAwMjY5MzggLyogQXBwbGVQYXlDb3Vwb25Db2RlRGV0
YWlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTU5NkI5MzMyNURFRUVBMDAwRUQyQ0ZBIC8qIEFw
cGxlUGF5Q291cG9uQ29kZVVwZGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTVFQUQ1NkQyNjZF
RjJGQTAwNEI5Q0YxIC8qIEFwcGxlUGF5RGF0ZUNvbXBvbmVudHMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTk1RUFENTZBMjY2RUYyRkEwMDRCOUNGMSAvKiBBcHBsZVBheURhdGVDb21wb25lbnRzUmFu
Z2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1MDE4M0NEMjVENjMzRDkwMEQ0MzQwRiAvKiBBcHBs
ZVBheURldGFpbHNVcGRhdGVCYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NTI3RDdBQjI1RDVG
REUyMDBBNkUxNzYgLyogQXBwbGVQYXlEZXRhaWxzVXBkYXRlRGF0YS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTEyQzU5RUUyMDM1RkM5QjAwMTIyMzZCIC8qIEFwcGxlUGF5RXJyb3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUExQkI4NTlDMjE1OUFFQTEwMDY3RTA3RCAvKiBBcHBsZVBheUVycm9yQ29k
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFCQjg1QTMyMTU5QUY1NzAwNjdFMDdEIC8qIEFwcGxl
UGF5RXJyb3JDb250YWN0RmllbGQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMTc1MDlBMjQ3NDY4
RDYwMEQ0RDI2QyAvKiBBcHBsZVBheUluc3RhbGxtZW50Q29uZmlndXJhdGlvbldlYkNvcmUuaCBp
biBIZWFkZXJzICovLAorCQkJCUExMTc1MEEwMjQ3NDY4RjMwMEQ0RDI2QyAvKiBBcHBsZVBheUlu
c3RhbGxtZW50SXRlbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTExNzUwQTEyNDc0NjhGNzAwRDRE
MjZDIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRJdGVtVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTEzQjYxNkIyNDc1RTA0ODAwQkJFNkRFIC8qIEFwcGxlUGF5SW5zdGFsbG1lbnRSZXRhaWxDaGFu
bmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzY1NzlFMzFFMDA4MjcwMDBFM0EyN0EgLyogQXBw
bGVQYXlMaW5lSXRlbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBODYxRjdFQkRGMjAwNThB
NDc3IC8qIEFwcGxlUGF5TWVyY2hhbnRDYXBhYmlsaXR5LmggaW4gSGVhZGVycyAqLywKKwkJCQlB
MUY2Q0ZGRjFGRTA5NjIxMDAxODA3OEMgLyogQXBwbGVQYXlNb2RpZmllci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJN0M2NTIzMDExRTAwRDAzNDAwNjc3RjIyIC8qIEFwcGxlUGF5UGF5bWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTEyQzU5RjAyMDM1RkNBQjAwMTIyMzZCIC8qIEFwcGxlUGF5UGF5
bWVudEF1dGhvcml6YXRpb25SZXN1bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBOEE2NDUyMUQx
OUZDRkIwMEQwRTAwRiAvKiBBcHBsZVBheVBheW1lbnRBdXRob3JpemVkRXZlbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdDNjUyMkZCMUUwMEM5MDkwMDY3N0YyMiAvKiBBcHBsZVBheVBheW1lbnRD
b250YWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMURGNUFBMjFGN0VFMTEzMDA1OEE0NzcgLyog
QXBwbGVQYXlQYXltZW50SGFuZGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M2NTIyRUYxRTAw
QTRDNzAwNjc3RjIyIC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUE4QTY0NTYxRDE5RkNGQzAwRDBFMDBGIC8qIEFwcGxlUGF5UGF5bWVudE1ldGhvZFNlbGVj
dGVkRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExRjZEMDA2MUZFMDk2RjYwMDE4MDc4QyAv
KiBBcHBsZVBheVBheW1lbnRNZXRob2RUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTJDNTlG
MTIwMzVGQ0JGMDAxMjIzNkIgLyogQXBwbGVQYXlQYXltZW50TWV0aG9kVXBkYXRlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QzY1MjJGNTFFMDBBNTE3MDA2NzdGMjIgLyogQXBwbGVQYXlQYXltZW50
UGFzcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M2NTc5RTAxRTAwNzlGOTAwRTNBMjdBIC8qIEFw
cGxlUGF5UGF5bWVudFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1RUFENTcwMjY2RUYz
ODYwMDRCOUNGMSAvKiBBcHBsZVBheVBheW1lbnRUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTk1RUFENTc0MjY2RUYzOTQwMDRCOUNGMSAvKiBBcHBsZVBheVJlY3VycmluZ1BheW1lbnREYXRl
VW5pdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBN0YxRjdFQkQwQjAwNThBNDc3IC8qIEFw
cGxlUGF5UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBQUQxRjgwNzVGMDAwNThB
NDc3IC8qIEFwcGxlUGF5UmVxdWVzdEJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBOEE2NDU5
MUQxOUZDRkMwMEQwRTAwRiAvKiBBcHBsZVBheVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUExOTU2RjIwMjMzMUE4QzcwMDU3RTlEMiAvKiBBcHBsZVBheVNlc3Npb25FcnJvci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMUE1OEU4NjUxRDE5RDRFQjAwQzBFQTczIC8qIEFwcGxlUGF5U2Vzc2lv
blBheW1lbnRSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUUwODY1RjI0ODlEMkI1MDBF
NDk2RDkgLyogQXBwbGVQYXlTZXR1cENvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUExRTA4NjYwMjQ4OUQyQkEwMEU0OTZEOSAvKiBBcHBsZVBheVNldHVwRmVhdHVyZVN0YXRlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1QzUzRENFMTI0NDY1REZDMDBBOTMxMjQgLyogQXBwbGVQYXlT
ZXR1cEZlYXR1cmVXZWJDb3JlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1QzUzRENFQTI0NDY4RkI0
MDBBOTMxMjQgLyogQXBwbGVQYXlTZXR1cFdlYkNvcmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1
RUFENTc4MjY2RUYzQTgwMDRCOUNGMSAvKiBBcHBsZVBheVNoaXBwaW5nQ29udGFjdEVkaXRpbmdN
b2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQThBNjQ1QzFEMTlGQ0ZDMDBEMEUwMEYgLyogQXBw
bGVQYXlTaGlwcGluZ0NvbnRhY3RTZWxlY3RlZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlB
MTJDNTlGMjIwMzVGQ0Q2MDAxMjIzNkIgLyogQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdDNjU3OUU4MUUwMDgzMTYwMEUzQTI3QSAvKiBBcHBsZVBh
eVNoaXBwaW5nTWV0aG9kLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQThBNjQ2MDFEMTlGQ0ZDMDBE
MEUwMEYgLyogQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUExMkM1OUYzMjAzNUZDRTIwMDEyMjM2QiAvKiBBcHBsZVBheVNoaXBwaW5nTWV0
aG9kVXBkYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQThBNjQ2MzFEMTlGQ0ZDMDBEMEUwMEYg
LyogQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
OEY2QkJEMERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlLmggaW4gSGVhZGVycyAq
LywKKwkJCQkxQThGNkJCRjBEQjU1Q0RDMDAxREI3OTQgLyogQXBwbGljYXRpb25DYWNoZUdyb3Vw
LmggaW4gSGVhZGVycyAqLywKKwkJCQkyNEY1NEVBRDEwMUZFOTE0MDAwQUU3NDEgLyogQXBwbGlj
YXRpb25DYWNoZUhvc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBOEY2QkM2MERCNTVDREMwMDFE
Qjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlTWFuaWZlc3RQYXJzZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFBOEY2QkMxMERCNTVDREMwMDFEQjc5NCAvKiBBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTFBMkFBQzU5MERDMkEzQjEwMEEyMEQ5QSAvKiBBcHBsaWNh
dGlvbkNhY2hlU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjNCRDRBNUYxRjc3OEU5RjAw
NDM4NzIyIC8qIEFwcGxpY2F0aW9uTWFuaWZlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTYzMTUy
RDE5MUY5NTMxRUUwMDdBNUU0QiAvKiBBcHBsaWNhdGlvbk1hbmlmZXN0TG9hZGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk2MzU0RjRDOTFGN0FGQzk0MDBEODlERjMgLyogQXBwbGljYXRpb25NYW5p
ZmVzdFBhcnNlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOUI0MTcwNjQxMjU2NjJCMzAwNkIyOEZD
IC8qIEFwcGx5QmxvY2tFbGVtZW50Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlE
RDkwOTlFNjQ5MjAwNTZFNTgxIC8qIEFwcGx5U3R5bGVDb21tYW5kLmggaW4gSGVhZGVycyAqLywK
KwkJCQk1MTJERDhGNjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTEyREQ4RkQwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVGYWN0b3J5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1MTJERDhGQzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTJERDhGODBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ1Njg2Q0ExM0FDMTgw
MjAwQjY5QzY4IC8qIEFzeW5jQXVkaW9EZWNvZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUNE
RTkyMjE1MDE5MTY5MDA4NjJDQzUgLyogQXN5bmNGaWxlU3RyZWFtLmggaW4gSGVhZGVycyAqLywK
KwkJCQkwRkZENEQ2MTE4NjUxRkEzMDA1MTJGNkUgLyogQXN5bmNTY3JvbGxpbmdDb29yZGluYXRv
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdEMTM1MjUyMjk0QTMzQzAwODI3NDAxIC8qIEF0dGVz
dGF0aW9uQ29udmV5YW5jZVByZWZlcmVuY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4QzRBODBE
MDlENTYzMjcwMDAzQUM4RCAvKiBBdHRyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEM0QTgwQjA5
RDU2MzI3MDAwM0FDOEQgLyogQXR0cmlidXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEE4MTRE
QTFDNzBFMTBEMDBCRjg1QUMgLyogQXR0cmlidXRlQ2hhbmdlSW52YWxpZGF0aW9uLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5M0U1QjI2NTI0NTVFOTZGMDA1QzUyRDAgLyogQXR0cmlidXRlZFN0cmlu
Zy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwN0ExMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlv
QXJyYXkuaCBpbiBIZWFkZXJzICovLAorCQkJCUZENjI5RUEzMTU0QjQ3MTYwMDA2RDAyNiAvKiBB
dWRpb0Jhc2ljSW5zcGVjdG9yTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTVGRjcxMkIw
MjY3NjAwQzFBMzU5IC8qIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGRDMxNUZGOTEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9CdWZmZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUZENTY4NkNDMTNBQzE4MTQwMEI2OUM2OCAvKiBBdWRpb0J1ZmZlckNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNUZGQzEyQjAyNjc2MDBDMUEzNTkgLyogQXVkaW9C
dWZmZXJTb3VyY2VOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4Mzc4ODc4MjI0RDhBNjA5MDAw
RDRBNUIgLyogQXVkaW9CdWZmZXJTb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
RDMxNjA3QzEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9CdXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUZEMzE2MDdFMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0NoYW5uZWwuaCBpbiBIZWFkZXJzICov
LAorCQkJCUNEM0VFRjNBMjU3OTlGODgwMDY1NjNCQiAvKiBBdWRpb0NvbmZpZ3VyYXRpb24uaCBp
biBIZWFkZXJzICovLAorCQkJCUZEMzE2MDA1MTJCMDI2NzYwMEMxQTM1OSAvKiBBdWRpb0NvbnRl
eHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU3ODVEOTYyMjRCN0Y3MzUwMDE0REIyMSAvKiBBdWRp
b0NvbnRleHRMYXRlbmN5Q2F0ZWdvcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCUU3ODVEOTYxMjRC
N0Y3MzUwMDE0REIyMSAvKiBBdWRpb0NvbnRleHRPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk4M0JEM0NFRTI0OTk4RTAxMDBCQTNFNjcgLyogQXVkaW9Db250ZXh0U3RhdGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUZEMzE2MDdGMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0Rlc3RpbmF0aW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5QjEyMjlDNDIzRkU0QkQyMDA4Q0E3NTEgLyogQXVkaW9E
ZXN0aW5hdGlvbkNvY29hLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNjAwODEyQjAyNjc2MDBD
MUEzNTkgLyogQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2
MDgwMTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb0RTUEtlcm5lbC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRkQzMTYwODIxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvRFNQS2VybmVsUHJvY2Vzc29yLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNjA4MzEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9GaWxl
UmVhZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkFBQUEzRDI1RDM2MzIwMDBCQUY0MkYgLyog
QXVkaW9GaWxlUmVhZGVyQ29jb2EuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEMkY0QTI0MThEODlG
NzAwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNEMkY0QTI4MThEOEEzNDkwMDYzNzQ2RCAvKiBBdWRpb0hhcmR3YXJlTGlzdGVuZXJNYWMuaCBp
biBIZWFkZXJzICovLAorCQkJCUZERTJENTVCMTU5RTY2RUIwMERDQ0NGOCAvKiBBdWRpb0lPQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDEwMTJCMDI2NzYwMEMxQTM1OSAvKiBB
dWRpb0xpc3RlbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTZBMDZBMTIzQ0NBRDAzMDAzNDcx
MDkgLyogQXVkaW9NZWRpYVN0cmVhbVRyYWNrUmVuZGVyZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxQzNCOEExMjY0OUIxRTAwMDRFRDRERSAvKiBBdWRpb01lZGlhU3RyZWFtVHJhY2tSZW5kZXJl
ckludGVybmFsVW5pdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFDM0I4QTIyNjQ5QjFFNTAwNEVE
NERFIC8qIEF1ZGlvTWVkaWFTdHJlYW1UcmFja1JlbmRlcmVyVW5pdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRkQzMTYwMTMxMkIwMjY3NjAwQzFBMzU5IC8qIEF1ZGlvTm9kZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRkQzMTYwMTYxMkIwMjY3NjAwQzFBMzU5IC8qIEF1ZGlvTm9kZUlucHV0LmggaW4g
SGVhZGVycyAqLywKKwkJCQlFNzE0NjdCMzI0QUJBRUYyMDBGQjJGNTAgLyogQXVkaW9Ob2RlT3B0
aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwMTgxMkIwMjY3NjAwQzFBMzU5IC8qIEF1
ZGlvTm9kZU91dHB1dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMURCNjZEM0IyNTM3QTk1NjAwQjY3
MUI5IC8qIEF1ZGlvT3V0cHV0VW5pdEFkYXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2
MDFEMTJCMDI2NzYwMEMxQTM1OSAvKiBBdWRpb1BhcmFtLmggaW4gSGVhZGVycyAqLywKKwkJCQk4
Mzc1Njk5RTI1MkNGMzYyMDBFMUI5NTYgLyogQXVkaW9QYXJhbURlc2NyaXB0b3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTgzQjk4NzBDMjUyMjVGODMwMEE5MzlGMSAvKiBBdWRpb1BhcmFtTWFwLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlGRDM1OTE5MDEzOERCMjIwMDBFMUVCRUMgLyogQXVkaW9QYXJh
bVRpbWVsaW5lLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNjAyMDEyQjAyNjc2MDBDMUEzNTkg
LyogQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU3QzhFMTFCMjRE
Q0FCRjMwMDI3QTI3RiAvKiBBdWRpb1Byb2Nlc3NpbmdFdmVudEluaXQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUZEMzE2MDg0MTJCMDI2RjcwMEMxQTM1OSAvKiBBdWRpb1Byb2Nlc3Nvci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRkQzMTYwODYxMkIwMjZGNzAwQzFBMzU5IC8qIEF1ZGlvUmVzYW1wbGVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNjA4ODEyQjAyNkY3MDBDMUEzNTkgLyogQXVkaW9S
ZXNhbXBsZXJLZXJuZWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3M0I4NzY3MUU0Mzg1QUMwMDcx
QzBFQyAvKiBBdWRpb1NhbXBsZUJ1ZmZlckxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3M0I4
NzY5MUU0Mzg1QUMwMDcxQzBFQyAvKiBBdWRpb1NhbXBsZURhdGFTb3VyY2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUZEOEM0NkVDMTU0NjA4RTcwMEE1OTEwQyAvKiBBdWRpb1NjaGVkdWxlZFNvdXJj
ZU5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEQTc5ODJBMTcwQTNEMDAwMEQ0NUM1NSAvKiBB
dWRpb1Nlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUNEMzZDMTYyMjYwN0U3ODYwMEM4QzUy
OSAvKiBBdWRpb1Nlc3Npb25JT1MuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDg5MTJCMDI2
RjcwMEMxQTM1OSAvKiBBdWRpb1NvdXJjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlD
RDhBN0JCQzE5NzczNUZFMDBDQkQ2NDMgLyogQXVkaW9Tb3VyY2VQcm92aWRlckFWRk9iakMuaCBp
biBIZWFkZXJzICovLAorCQkJCUZENjJGNTJFMTQ1ODk4RDgwMDk0QjBFRCAvKiBBdWRpb1NvdXJj
ZVByb3ZpZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0MwNDZDQjFFNDI2NDEzMDA3
MjAxRTcgLyogQXVkaW9TdHJlYW1EZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRC
MDUyRTAxNTYxQTQyQzAwQjUwMEQ2IC8qIEF1ZGlvU3VtbWluZ0p1bmN0aW9uLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4MzAwNUY5RDI0RUIxRDQwMDA0ODBGOUIgLyogQXVkaW9UaW1lc3RhbXAuaCBp
biBIZWFkZXJzICovLAorCQkJCUJFODhFMEQ5MTcxNUQyQTIwMDY1OEQ5OCAvKiBBdWRpb1RyYWNr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTg4RTBEQzE3MTVEMkEyMDA2NThEOTggLyogQXVkaW9U
cmFja0xpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEOEI1QTRDMTgwRTE3QzAwMDhCOEU2NSAv
KiBBdWRpb1RyYWNrTWVkaWFTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFRjI5RUVCMTcx
NUREMDkwMEM0QjRDOSAvKiBBdWRpb1RyYWNrUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0RFM0E4NTQxN0Y1RkNFNjAwQzVCRTIwIC8qIEF1ZGlvVHJhY2tQcml2YXRlQVZGLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDREUzQTg1ODE3RjYwMjA0MDBDNUJFMjAgLyogQXVkaW9UcmFja1ByaXZh
dGVBVkZPYmpDLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDU0QTc2MzE4MEY5RjcwMDBCMDc2Qzkg
LyogQXVkaW9UcmFja1ByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTA3RDZBNEY4MUJGMjMwN0QwMDE3NDE0NiAvKiBBdWRpb1RyYWNrUHJpdmF0ZU1lZGlhU3Ry
ZWFtLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMxNjA4QjEyQjAyNkY3MDBDMUEzNTkgLyogQXVk
aW9VdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzQjk4NzBCMjUyMjVGN0QwMEE5MzlG
MSAvKiBBdWRpb1dvcmtsZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzM0JEODFEMjUyNEQ1MzAw
MDZFNzJCMyAvKiBBdWRpb1dvcmtsZXRHbG9iYWxTY29wZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
ODMzQkQ4MUUyNTI0RDUzNDAwNkU3MkIzIC8qIEF1ZGlvV29ya2xldE1lc3NhZ2luZ1Byb3h5Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4M0I5ODcwOTI1MjI1RjcyMDBBOTM5RjEgLyogQXVkaW9Xb3Jr
bGV0Tm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODNCOTg3MEEyNTIyNUY3NjAwQTkzOUYxIC8q
IEF1ZGlvV29ya2xldE5vZGVPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0JCOEI1RjI1
MjY3NzY0MDBEODlGMEIgLyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLywK
KwkJCQk4MzI3NEZDRjI1MkUyNkI3MDAxRTM1REMgLyogQXVkaW9Xb3JrbGV0UHJvY2Vzc29yQ29u
c3RydWN0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM3MjZFRkIyNTI2NzlDNTAwQzYx
MTRFIC8qIEF1ZGlvV29ya2xldFByb2Nlc3NvckNvbnN0cnVjdG9yLmggaW4gSGVhZGVycyAqLywK
KwkJCQk4M0ZDOTk0QjI1MjU1N0VBMDAxNzc2MTggLyogQXVkaW9Xb3JrbGV0VGhyZWFkLmggaW4g
SGVhZGVycyAqLywKKwkJCQk3RUU2ODQ2MTEyRDI2RTM4MDBFNzk0MTUgLyogQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzNEY3MTNBMEQ1QTZGMTAwMDAxOEQ2
OSAvKiBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZUJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUUx
MjQ3NDg0MTBBQTE2MUQwMEI3OTQ5MyAvKiBBdXRoZW50aWNhdGlvbkNsaWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTdEQTQ3QjAyMjQwMzRFNDAwMkE0NjEyIC8qIEF1dGhlbnRpY2F0aW9uRXh0
ZW5zaW9uc0NsaWVudElucHV0cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTc1ODU5NkMyMzlGMzIx
QzAwQzc0NTcyIC8qIEF1dGhlbnRpY2F0aW9uRXh0ZW5zaW9uc0NsaWVudE91dHB1dHMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTUxNEM3NjRDMENFOTIzNEUwMDdFRjNDRCAvKiBBdXRoZW50aWNhdGlv
bk1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTczMDNDMkMyMDA5QjRBODAwMzU1OTY1IC8qIEF1
dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdGRTY4
NzEyNjA1MkUzMTAwQkY0NUU0IC8qIEF1dGhlbnRpY2F0b3JBdHRhY2htZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1NzMwM0MxRjIwMDlBQjQyMDAzNTU5NjUgLyogQXV0aGVudGljYXRvckF0dGVz
dGF0aW9uUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MzAzQzQ2MjAxMDVEMkYwMDM1
NTk2NSAvKiBBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3
NjA4MjcyMjAyMTVBNTUwMDExNjY3OCAvKiBBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JDbGllbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTU3MkI0MDQyMjE3ODExNEEwMDBBRDQzRSAvKiBBdXRoZW50
aWNhdG9yR2V0SW5mb1Jlc3BvbnNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzMwM0JEMjIwMDg3
QTgzMDAzNTU5NjUgLyogQXV0aGVudGljYXRvclJlc3BvbnNlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1N0RDRUQ3NDIxNDMwNUYwMDAxNkI4NDcgLyogQXV0aGVudGljYXRvclJlc3BvbnNlRGF0YS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTcyQjQwNDAyMTc4MDE3MTAwMEFENDNFIC8qIEF1dGhlbnRp
Y2F0b3JTdXBwb3J0ZWRPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0RDRUQ5MDIxNDg3
RkY3MDAxNkI4NDcgLyogQXV0aGVudGljYXRvclRyYW5zcG9ydC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTUwMTkyMEUxMzJFQkYyRTAwOEJGRTU1IC8qIEF1dG9jYXBpdGFsaXplLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBNUE3QUE0MzEzMkYwRUNDMDBEM0EzQzIgLyogQXV0b2NhcGl0YWxpemVUeXBl
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MxODQzRkUxQzhCNzI4MzAwMkVCOTczIC8qIEF1dG9m
aWxsLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzFFOTcyODFBOUY5ODM0MDA3QkYwRkIgLyogQXV0
b0ZpbGxCdXR0b25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1Q0NDMjcwOTIyRDU0ODNB
MDA5NjRGQTAgLyogQXV0b2ZpbGxFbGVtZW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM3NTY5
OUYyNTJDRjM2NDAwRTFCOTU2IC8qIEF1dG9tYXRpb25SYXRlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlDOUQ0NjcwNTFFNjBDNDY1MDA4MTk1RkIgLyogQXV0b3BsYXlFdmVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDU4MzBENEUxNjc5QjRGODAwQUNGOEMzIC8qIEF1dG9zY3JvbGxDb250cm9sbGVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOENGRjA0RTBBMTU0RjA5MDAwQTQyMzQgLyogQXV0b1Rh
YmxlTGF5b3V0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0Y0RTkzMzIwQjM1ODdGMDAyRTM4MDMg
LyogQVZBc3NldE1JTUVUeXBlQ2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNERUNBODlCMUVE
RjQ0N0QwMERDQjA4QiAvKiBBVkFzc2V0VHJhY2tVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUNEQzY3NTI3MUVBRUE5RDQwMDcyN0M4NCAvKiBBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEQzY3NTIzMUVBRUE5QjcwMDcyN0M4NCAvKiBBVkF1
ZGlvU2Vzc2lvbkNhcHR1cmVEZXZpY2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzAz
NjNFMjE4MUExQ0RDMDBDMDc0QTUgLyogQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQ0QzMzZGNjIxN0Y5RjY0NzAwREREQ0QwIC8qIEFWVHJhY2tQcml2YXRlQVZG
T2JqQ0ltcGwuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MDM2M0U2MTgxQTFDREMwMEMwNzRBNSAv
KiBBVlZpZGVvQ2FwdHVyZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjlBRTIxMzUyMUFC
QTQ4QTAwODY5MjgzIC8qIEFYSXNvbGF0ZWRPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5
QUUyMTJEMjFBQjlFRUIwMDg2OTI4MyAvKiBBWElzb2xhdGVkVHJlZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMjlBODEyMzgwRkJCOUMxRDAwNTEwMjkzIC8qIEFYT2JqZWN0Q2FjaGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkxQzlGMkY5MUFFM0JFQjAwMDk1QjYxQyAvKiBBWFRleHRTdGF0ZUNoYW5n
ZUludGVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQ3N0U3NzcwQkY0MTM0QTAwMTUyODcyIC8q
IEJhY2tGb3J3YXJkQ2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNzQxRDBGMEIwNzI1OUEw
MEVENDQyQyAvKiBCYWNrRm9yd2FyZENsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNBOEM4
MUUxMUUzRDM2OTAwODEyRkI3IC8qIEJhY2tGb3J3YXJkQ29udHJvbGxlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNTFBMUI4N0QyMDg3QzRDMDAwOTc5QTc1IC8qIEJhY2tGb3J3YXJkSXRlbUlkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMTI0RUU4MEMyNjQxQ0QwMDlFMjM0OSAvKiBC
YXJQcm9wLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NjBCQjYxNjFEMEExQkYwMDAyMjE4MTIgLyog
QmFzZTY0VXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzE5OEZCRjI0QTE2MEREMDA0
MjBCMDUgLyogQmFzZUF1ZGlvQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEyREVGMUYy
M0E5MThBMzAwRDg0MEY2IC8qIEJhc2VBdWRpb1NoYXJlZFVuaXQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTM3OUU2MUNBMTI2Q0E1QzQwMEI2M0U4RCAvKiBCYXNlQnV0dG9uSW5wdXRUeXBlLmggaW4g
SGVhZGVycyAqLywKKwkJCQkzNzlFNjFDQzEyNkNBNUM0MDBCNjNFOEQgLyogQmFzZUNoZWNrYWJs
ZUlucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzMzRUU1QzUxNEZCNDk2MTAwMDIwOTVB
IC8qIEJhc2VDbGlja2FibGVXaXRoS2V5SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
NTlDOTYwMDEyNTVCMjNGMDAwNjIzQzAgLyogQmFzZURhdGVBbmRUaW1lSW5wdXRUeXBlLmggaW4g
SGVhZGVycyAqLywKKwkJCQlGNTVCM0RBRTEyNTFGMTJEMDAzRUYyNjkgLyogQmFzZVRleHRJbnB1
dFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3QzdBNjhDMUU1Njk2NzUwMEM2N0Q3MSAvKiBC
YXNpY0NyZWRlbnRpYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNTZCQ0ExMjFDQTM1MEYwMDUz
NDM5NyAvKiBCYXNpY0VmZmVjdFRpbWluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkJENkFGOEEx
NUVGMjVERjAwOEI3MTEwIC8qIEJhc2ljU2hhcGVGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUZCRDZBRjhDMTVFRjI2MDQwMDhCNzExMCAvKiBCYXNpY1NoYXBlcy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM5NDYyRDgxMDdBN0I0QzAwODU3MTkzIC8qIEJlZm9yZUxvYWRFdmVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQUIyM0EzMjgwOUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJ
bnNlcnRlZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTAzMUIzRDBBNDRFRkM3MDBGOTky
RTAgLyogQmVmb3JlVW5sb2FkRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNEQTI0MEQw
MDZDMUQwMEVGNkYyNiAvKiBCaWRpQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RB
MjUwRDAwNkMxRDAwRUY2RjI2IC8qIEJpZGlSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QkNFNzg5ODYxMTIwRTdBNjAwNjBFQ0U1IC8qIEJpZGlSdW4uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE4QzQwMjkzMTM0OEIyMjIwMDYzRjFFNSAvKiBCaWRpUnVuTGlzdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMkREODcxNEIyNjVGNDM2NjAwNUY5OTdDIC8qIEJpZnVyY2F0ZWRHcmFwaGljc0NvbnRl
eHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDhEMTJCMDI2RjcwMEMxQTM1OSAvKiBCaXF1
YWQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDI1MTJCMDI2NzYwMEMxQTM1OSAvKiBCaXF1
YWREU1BLZXJuZWwuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQzU0RjA1MTM5OUIwREEwMDhEOTEx
NyAvKiBCaXF1YWRGaWx0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0RCOUUxMDI0REEx
OTU3MDAzN0I0NjggLyogQmlxdWFkRmlsdGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
ODNEQjlFMEYyNERBMTk0OTAwMzdCNDY4IC8qIEJpcXVhZEZpbHRlclR5cGUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUZEMzE2MDI3MTJCMDI2NzYwMEMxQTM1OSAvKiBCaXF1YWRQcm9jZXNzb3IuaCBp
biBIZWFkZXJzICovLAorCQkJCUE4OTk0MzI4MEI0MjMzODgwMEQ3QzgwMiAvKiBCaXRtYXBJbWFn
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc2RDZDNzkxMjJCOEEzRDAwMUZEMUY3IC8qIEJsb2Iu
aCBpbiBIZWFkZXJzICovLAorCQkJCTk3NkQ2QzdDMTIyQjhBM0QwMDFGRDFGNyAvKiBCbG9iQnVp
bGRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE1RDc1MTYxRTY4RjdDODAwQTM1RkJDIC8qIEJs
b2JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkVERUYxRjQxMjFCMEVGQzAwNzI2REIy
IC8qIEJsb2JEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUQzMUNERDE5MTk2MDIwMDAxMDA1
QTMgLyogQmxvYkRhdGFGaWxlUmVmZXJlbmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0RDNCMDBB
RjIxNUQ2QTY5MDA3NkI5ODMgLyogQmxvYkV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MUU5
RENFNzIzMTk3NEJGMDBGMzU5NDkgLyogQmxvYkxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTFDOTRBRjkxOTEzMDNGMDAwRDVBODkzIC8qIEJsb2JQYXJ0LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk3Qzc3QzNEMTFERUU0NzI0MDBBNTBCRkEgLyogQmxvYlByb3BlcnR5QmFnLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkyRURFRjFGNTEyMUIwRUZDMDA3MjZEQjIgLyogQmxvYlJlZ2lzdHJ5LmggaW4g
SGVhZGVycyAqLywKKwkJCQkyRURFRjFGNzEyMUIwRUZDMDA3MjZEQjIgLyogQmxvYlJlZ2lzdHJ5
SW1wbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkVCNEJDRDMxMjFGMDNFMzAwRUM0ODg1IC8qIEJs
b2JSZXNvdXJjZUhhbmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc2RDZDN0YxMjJCOEEzRDAw
MUZEMUY3IC8qIEJsb2JVUkwuaCBpbiBIZWFkZXJzICovLAorCQkJCTExNUNGQTZFMjA4QUZBQjcw
MDFFNjk5MSAvKiBCbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0
Nzg2MzU2NTI2NTA3QTM4MDBDNUUyRTAgLyogQmxvY2tGb3JtYXR0aW5nR2VvbWV0cnkuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQ3Rjk0N0RCMjY1MDJGMkYwMDg3OTY4QyAvKiBCbG9ja0Zvcm1hdHRp
bmdRdWlya3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTExNUNGQTdBMjA4QjhEOUQwMDFFNjk5MSAv
KiBCbG9ja0Zvcm1hdHRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkY2REYzNkYyNjQ3
MjJFQTAwOTNFODM0IC8qIEJsb2NrTWFyZ2luQ29sbGFwc2UuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDNUVCNUUxMEU4MUJFODcwMEIyNTk2NSAvKiBCb3JkZXJEYXRhLmggaW4gSGVhZGVycyAqLywK
KwkJCQk1ODk1NTZFRDE4RDRBNDQwMDA3NjRCMDMgLyogQm9yZGVyRWRnZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM1RUI1REIwRTgxQjdFQTAwQjI1OTY1IC8qIEJvcmRlclZhbHVlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5MzE2REUwMDI0MEM2NEY5MDA5MzQwQUEgLyogQm91bmRhcnlQb2ludC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNkVEOEMzN0ExODNCRkY4QzAwOUU1M0JEIC8qIEJveFNoYXBl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOUREQjA5OUU2NDkyMDA1NkU1ODEgLyogQnJlYWtC
bG9ja3F1b3RlQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzJFMUY0M0YxRDYyNTRFMTAw
OTQ2MjVDIC8qIEJyZWFrTGluZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU5OUU3NTkwMTEwNTVB
MUYwMEQ5MDRGQSAvKiBCcmlkZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTU5QjU5Nzc1MTEwODY1
NzkwMDcxNTlFOCAvKiBCcmlkZ2VKU0MuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2OUNDQ0ZFMjY5
RDAyMUMwMDZFMDMxNCAvKiBCcm9hZGNhc3RDaGFubmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NkREOTNENzI2OURFNzU2MDAxQUZEODggLyogQnJvYWRjYXN0Q2hhbm5lbElkZW50aWZpZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTQ2REU5QkI1MjY5REY5M0UwMDI0QzVBNiAvKiBCcm9hZGNhc3RD
aGFubmVsUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBNDUwMzMwMThEQjcxNzIwMDM3
N0IzNCAvKiBCdWZmZXJlZExpbmVSZWFkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTJERkE0ODhG
MURCNTQxRDAwMDM2MkI5OSAvKiBCdWZmZXJTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUY1
NUIzREIwMTI1MUYxMkQwMDNFRjI2OSAvKiBCdXR0b25JbnB1dFR5cGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTFBNTY5Q0Y4MEQ3RTJCODIwMDdDMzk4MyAvKiBjX2NsYXNzLmggaW4gSGVhZGVycyAq
LywKKwkJCQkxQTU2OUNGQTBEN0UyQjgyMDA3QzM5ODMgLyogY19pbnN0YW5jZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUE1NjlDRkMwRDdFMkI4MjAwN0MzOTgzIC8qIGNfcnVudGltZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMUE1NjlDRkUwRDdFMkI4MjAwN0MzOTgzIC8qIGNfdXRpbGl0eS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDdDMDQ2QzQxRTQyNTA4QjAwNzIwMUU3IC8qIENBQXVkaW9TdHJl
YW1EZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjM1M0UxRTYxRjkxNzQzMTAwQTM0
MjA4IC8qIENhY2hlZEFwcGxpY2F0aW9uTWFuaWZlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUJD
QjE2QzFBMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRDU1NTdHlsZVNoZWV0LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCQzY0QjRDQzBDQjQyOTVEMDA1RjJCNjIgLyogQ2FjaGVkRm9udC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMUFFRjRFNjcxNzBFMTYwMzAwQUIyNzk5IC8qIENhY2hlZEZvbnRDbGll
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzRjE5OTUwMDgyNDVFNTkwMDFFOUFCQyAvKiBDYWNo
ZWRGb250TG9hZFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxQzBBQTM5MEYyQUExMEEw
MDE2NDhDMiAvKiBDYWNoZWRGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFDQkZDOTkwRDEw
RTQ4MzAwMkRCRjUxIC8qIENhY2hlZEZyYW1lUGxhdGZvcm1EYXRhLmggaW4gSGVhZGVycyAqLywK
KwkJCQk4MzAwMzBGODFCN0QzQjc4MDBFRDNBQUMgLyogQ2FjaGVkSFRNTENvbGxlY3Rpb24uaCBp
biBIZWFkZXJzICovLAorCQkJCUJDQjE2QzFDMDk3OUMzQkQwMDQ2Nzc0MSAvKiBDYWNoZWRJbWFn
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE5RkJENUYxNUQyRjQ2NDAwOTY0MEE2IC8qIENhY2hl
ZEltYWdlQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzA3REVEMDFEODFFNEM3MDAxNDFD
QUYgLyogQ2FjaGVkTW9kdWxlU2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTAx
ODQ2OTBCMDg2MDJBMDA0QTgyNUYgLyogQ2FjaGVkUGFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RDBFREE3NzUxNDNFMzAzQzAwMjhFMzgzIC8qIENhY2hlZFJhd1Jlc291cmNlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlFMUI1MzM0OTE3MTdERUUzMDBGMjA1RjkgLyogQ2FjaGVkUmF3UmVzb3VyY2VD
bGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQjE2QzIwMDk3OUMzQkQwMDQ2Nzc0MSAvKiBD
YWNoZWRSZXNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNGQjJFNUUwOTc5RTQ2NDAwQkE3
MDNEIC8qIENhY2hlZFJlc291cmNlQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0IxNkMy
MjA5NzlDM0JEMDA0Njc3NDEgLyogQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUU0N0I0QkU4MEU3MTI0MTYwMDAzODg1NCAvKiBDYWNoZWRSZXNvdXJjZUhh
bmRsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNCMTZDMkEwOTc5QzNCRDAwNDY3NzQxIC8qIENh
Y2hlZFJlc291cmNlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MDgxRTNFMDNDRkY4MEMx
NkVGOEI0OEIgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk2
QzYzODg5NUE5NkNDRUU1MEM4Qzk0NkMgLyogQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9y
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNCMTZDMjQwOTc5QzNCRDAwNDY3NzQxIC8qIENhY2hl
ZFNjcmlwdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTMwNTkyNjgxRTI3QTNEMTAwRDU3Qzk4IC8q
IENhY2hlZFNjcmlwdEZldGNoZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRDUzMzY0MEVENjg0
ODkwMDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRDBCQzU0NDkxNDQzQUM0QTAwRTEwNURBIC8qIENhY2hlZFN0eWxlU2hlZXRDbGllbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUExMDRGMjQ0MTRDNzFGN0EwMDlFMkMyMyAvKiBDYWNoZWRT
VkdEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFRjRFNjkxNzBFMTc0ODAwQUIyNzk5
IC8qIENhY2hlZFNWR0RvY3VtZW50Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGQjJDMTVD
MzE2NUQ2NDlEMDAzOUM5RjggLyogQ2FjaGVkU1ZHRG9jdW1lbnRSZWZlcmVuY2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTFDMDkzOUVCMUExM0UxMjkwMEI3ODhFNSAvKiBDYWNoZWRTVkdGb250Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzUzODYwMzE0NDg5RTk4MDBCNzg0NTIgLyogQ2FjaGVkVGV4
dFRyYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0IxNkMyODA5NzlDM0JEMDA0Njc3NDEgLyog
Q2FjaGVkWFNMU3R5bGVTaGVldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGMTk5NTAwODI0NUU1
OTAwMUU5QUJDIC8qIENhY2hlUG9saWN5LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MUQxMjlEMDFG
M0QwRjA1MDBEMTVFNDcgLyogQ2FjaGVRdWVyeU9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxRDEyOUQzMUYzRDBGMTYwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VDb25uZWN0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0MUQxMjlENTFGM0QwRjY5MDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdl
UHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0M0FGOEU3MUFDNUI3RUMwMENBNzE3RSAv
KiBDYWNoZVZhbGlkYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRjE2NDhBMjY2MkFENTIw
MDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbkJsZW5kTGVuZ3RoLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCQ0YxNjQ4MjI2NjJBQzUxMDAwMkY3RUYgLyogQ2FsY0V4cHJlc3Npb25JbnZlcnNpb24uaCBp
biBIZWFkZXJzICovLAorCQkJCUJDRjE2NDdBMjY2MkFCODUwMDAyRjdFRiAvKiBDYWxjRXhwcmVz
c2lvbkxlbmd0aC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNGMTY0N0UyNjYyQUJFNzAwMDJGN0VG
IC8qIENhbGNFeHByZXNzaW9uTmVnYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRjE2NDcy
MjY2MkFBQzMwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk5vZGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDRjE2NDc2MjY2MkFCMzYwMDAyRjdFRiAvKiBDYWxjRXhwcmVzc2lvbk51bWJlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNGMTY0ODYyNjYyQUNBMzAwMDJGN0VGIC8qIENhbGNFeHByZXNz
aW9uT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0YxNjQ4RTI2NjJBREQ4MDAwMkY3
RUYgLyogQ2FsY09wZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0YxNjQ2RTI2NjJBQTUw
MDAwMkY3RUYgLyogQ2FsY3VsYXRpb25DYXRlZ29yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDlB
RTJEOTcxMzRFRTVGOTAwNzI5MjBBIC8qIENhbGN1bGF0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDMUU4RDAxMUVEMEMyREEwMEIxRDk4MyAvKiBDYWxsYmFja1Jlc3VsdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRUZDQzZDOEYyMEZFOTE0NDAwQTIzMjFCIC8qIENhbnZhc0FjdGl2aXR5
UmVjb3JkLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTMxNzE1NjFGQjA3OUU1MDA4RDkxRkMgLyog
Q2FudmFzQmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE1Q0RBRjUxRTZCOEY4QjAwNEYxMUVF
IC8qIENhbnZhc0NhcHR1cmVNZWRpYVN0cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk3
QzE5M0JCQjFGNUUwRUVEMDA4OEYzRTYgLyogQ2FudmFzRGlyZWN0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQk3QzE5M0JCQzFGNUUwRUVEMDA4OEYzRTYgLyogQ2FudmFzRmlsbFJ1bGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQ5NDg0RkMyMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MxOTNCQkQxRjVFMEVFRDAwODhGM0U2IC8qIENhbnZh
c0xpbmVDYXAuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDMTkzQkJFMUY1RTBFRUQwMDg4RjNFNiAv
KiBDYW52YXNMaW5lSm9pbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDY3MUUwNjYxRDY3QTU5NjAw
QzZCNDk3IC8qIENhbnZhc1BhdGguaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5NDg0RkM1MTAyQ0Yy
M0MwMDE4N0REMyAvKiBDYW52YXNQYXR0ZXJuLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUM3QjlE
RDEwNDJEMzJGMDAwOUQ0NDcgLyogQ2FudmFzUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDk0ODRGQ0IxMDJDRjIzQzAwMTg3REQzIC8qIENhbnZhc1JlbmRlcmluZ0NvbnRl
eHQyRC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE0MEM1MjQxRkRGMzE4NzAwRDJBODczIC8qIENh
bnZhc1JlbmRlcmluZ0NvbnRleHQyREJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5NDg0RkNF
MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNTdHlsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0Mx
OTNCQkYxRjVFMEVFRDAwODhGM0U2IC8qIENhbnZhc1RleHRBbGlnbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJN0MxOTNCQzAxRjVFMEVFRDAwODhGM0U2IC8qIENhbnZhc1RleHRCYXNlbGluZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTNBODZGQzMyNjk1RUI0ODAwNTkyNjREIC8qIENhcHRpb25QcmVm
ZXJlbmNlc0RlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzlEMDg2ODE2MkYyMEU4MDBE
Qjg2NTggLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc5
RDA4NkIxNjJGMjFGOTAwREI4NjU4IC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXNNZWRpYUFGLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwN0I3MTE2RDFEODk5RTYzMDA5RjBGRkIgLyogQ2FwdHVyZURl
dmljZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdCNzExNkYxRDg5OUU2MzAwOUYwRkZCIC8qIENh
cHR1cmVEZXZpY2VNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEYwQkUzMTI1NzEyRjZF
MDA5RTc0MzEgLyogQ2FyZXRSZWN0Q29tcHV0YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUNE
QzczNDE1MTk3Nzg5NkQwMDQ2QkZDNSAvKiBDQVJpbmdCdWZmZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUU0QUJBQkY1MjM2OEM2RUYwMEZBNDM0NSAvKiBDYXNjYWRlTGV2ZWwuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTU3MzAzQkJCMjAwNkM2RUUwMDM1NTk2NSAvKiBDQk9SQmluYXJ5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1NzMwM0JDMTIwMDZFMDBDMDAzNTU5NjUgLyogQ0JPUlJlYWRlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTczMDNCQjkyMDA2QzZFRTAwMzU1OTY1IC8qIENCT1JWYWx1ZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTczMDNCQkEyMDA2QzZFRTAwMzU1OTY1IC8qIENCT1JXcml0
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1NTBCNjlFMDk5REYwMjcwMDkwRDc4MSAvKiBDREFU
QVNlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUNERjRCNzE2MUUwMEI3RTUwMEUyMzVBMiAv
KiBDRE0uaCBpbiBIZWFkZXJzICovLAorCQkJCUNEOTRBNURFMUY3MkY1N0IwMEY1MjVDNSAvKiBD
RE1DbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0NFMEY4MjQwMUFBRDkwMDRCQTAxRCAv
KiBDRE1FbmNyeXB0aW9uU2NoZW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDNDRTBGOTI0MDFB
QUQ5MDA0QkEwMUQgLyogQ0RNRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RCNzA0NUEx
Rjc0NjVBMTAwMzkyM0RGIC8qIENETUZhaXJQbGF5U3RyZWFtaW5nLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDRDNDRTBGQTI0MDFBQUQ5MDA0QkEwMUQgLyogQ0RNSW5zdGFuY2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEM0NFMEZCMjQwMUFBRDkwMDRCQTAxRCAvKiBDRE1JbnN0YW5jZVNlc3Npb24u
aCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0NFMEZDMjQwMUFBRDkwMDRCQTAxRCAvKiBDRE1LZXlT
dGF0dXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0NFMEZEMjQwMUFBRDkwMDRCQTAxRCAvKiBD
RE1LZXlTeXN0ZW1Db25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDhEMzA2RjIz
QUQ0RkE4MDA2QzM5NzUgLyogQ0RNTG9nZ2luZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzQ0Uw
RkUyNDAxQUFEOTAwNEJBMDFEIC8qIENETU1lZGlhQ2FwYWJpbGl0eS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0QzQ0UwRkYyNDAxQUFEQTAwNEJBMDFEIC8qIENETU1lc3NhZ2VUeXBlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDRDNDRTEwMDI0MDFBQURBMDA0QkEwMUQgLyogQ0RNUHJpdmF0ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQ0QzMTg2MjMxOTlGMUUyQTAwMzBBMEY3IC8qIENETVByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakMuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0NFMTAxMjQwMUFBREEw
MDRCQTAxRCAvKiBDRE1Qcm94eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzQ0UxMDIyNDAxQUFE
QTAwNEJBMDFEIC8qIENETVJlcXVpcmVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDNDRTEw
MzI0MDFBQURBMDA0QkEwMUQgLyogQ0RNUmVzdHJpY3Rpb25zLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlDREU1OTU5NzFCRjI2RTIxMDBBMUNCRTggLyogQ0RNU2Vzc2lvbk1lZGlhU291cmNlQVZGT2Jq
Qy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzQ0UxMDQyNDAxQUFEQTAwNEJBMDFEIC8qIENETVNl
c3Npb25UeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREUzQUUxMjI0QjQ5MTZBMDAxMjhFN0Ug
LyogQ0RNVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1RkE5MDRDQTE3OEU2MUY1MDA0
QzhBMkQgLyogQ2VydGlmaWNhdGVJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MUI4RjBCNTIx
OTUzRDY1MDAwQzJCMDAgLyogQ2VydGlmaWNhdGVTdW1tYXJ5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGRTM2RkQxNTE2Qzc4MjY1MDBGODg3QzEgLyogQ2hhbmdlVmVyc2lvbkRhdGEuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk3QkM2OUREMTUwNUYwNzYwMDFCNzRBQyAvKiBDaGFuZ2VWZXJzaW9uV3Jh
cHBlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTc4NUQ5MTUyNEI0RDFDQTAwMTREQjIxIC8qIENo
YW5uZWxDb3VudE1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUU3ODVEOTM0MjRCNjM2RkYwMDE0
REIyMSAvKiBDaGFubmVsSW50ZXJwcmV0YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE1
RkZGMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsTWVyZ2VyTm9kZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRkQzMTYwMDIxMkIwMjY3NjAwQzFBMzU5IC8qIENoYW5uZWxTcGxpdHRlck5vZGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTY1NTBCNkEwMDk5REYwMjcwMDkwRDc4MSAvKiBDaGFyYWN0ZXJE
YXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlDNTU5MkY3ODFBOTJBQTI4MDAxRjg4NjIgLyogQ2hh
cmFjdGVyUHJvcGVydGllcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGMkNDOTMyNDI3RkI5QzAw
NTg1MUQ4IC8qIENoYXJhY3RlclJhbmdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0I4RkZEMTE2
QUU3Rjk2MDAzODM4OEQgLyogQ2hhcmFjdGVyUmVmZXJlbmNlUGFyc2VySW5saW5lcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRjU1QjNEQjIxMjUxRjEyRDAwM0VGMjY5IC8qIENoZWNrYm94SW5wdXRU
eXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlENjE5QTMwODE0NEUwMEJFMDA0QkMzMDIgLyogQ2hp
bGRMaXN0TXV0YXRpb25TY29wZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgxODcyMjAwOTc3RDND
MDAwNTgyNkQ5IC8qIENoaWxkTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0RDgyMzUy
MEFGOTJBNzkwMDA0RjA1NyAvKiBDaHJvbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0RDgyNDA4
MEFGOTNBRUIwMDA0RjA1NyAvKiBDaHJvbWVDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0
QTgxNEQ0MUM2REVDNDAwMEJGODVBQyAvKiBDbGFzc0NoYW5nZUludmFsaWRhdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODM0OEJGQUMxQjg1NzI5ODAwOTEyRjM2IC8qIENsYXNzQ29sbGVjdGlv
bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEwNzkwOEMxRkMzRjAzMzAwNjFCMjdBIC8qIENsaWVu
dE9yaWdpbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ0MEU3N0QyMzNEOTRENzAwNjNGOUFCIC8q
IENsaXBib2FyZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MzQTkxRTYxQzk2M0I4ODAwRDFBN0Uz
IC8qIENsaXBib2FyZEFjY2Vzc1BvbGljeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODUwMzFCNDAw
QTQ0RUZDNzAwRjk5MkUwIC8qIENsaXBib2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlG
NEM1RjIwNzI0NzlFODgyMDBFOUI0RjUgLyogQ2xpcGJvYXJkSW1hZ2VSZWFkZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUY0NDBFNzdCMjMzRDk0RDcwMDYzRjlBQiAvKiBDbGlwYm9hcmRJdGVtLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlGNDZDNDQ3RTIzNDY1NDU0MDAzOUE3OUQgLyogQ2xpcGJvYXJk
SXRlbUJpbmRpbmdzRGF0YVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjREMDc1NTgyMzRE
ODIyRDAwODgxRTczIC8qIENsaXBib2FyZEl0ZW1EYXRhU291cmNlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGNEQwNzU1OTIzNEQ4MjMzMDA4ODFFNzMgLyogQ2xpcGJvYXJkSXRlbVBhc3RlYm9hcmRE
YXRhU291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGQjkyREY0QjE1RkVEMDg3MDA5OTQ0MzMg
LyogQ2xpcFBhdGhPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTU4MDM3MTYyMUE2NkYw
MEEwMEJBRjUxOSAvKiBDbGlwUmVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdBQUJEMTMxNEZB
MDlENTAwNzQ1N0FFIC8qIENsb3NlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUMwQzA1NENC
MTExOEM4RTQwMENFMjYzNiAvKiBDb2RlR2VuZXJhdG9yLnBtIGluIEhlYWRlcnMgKi8sCisJCQkJ
QkM1RUI1REYwRTgxQjlBQjAwQjI1OTY1IC8qIENvbGxhcHNlZEJvcmRlclZhbHVlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFNDI1QTQ5QTE4MjkyQjg0MDAyMENGQ0YgLyogQ29sbGVjdGlvbkluZGV4
Q2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RUJFQTAyMUI3RDRENjUwMEJFNDk0MSAvKiBD
b2xsZWN0aW9uVHJhdmVyc2FsLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0M0NDIwMDBGODEzQUUx
MDBDMUE2MzQgLyogQ29sbGVjdGlvblR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyNzUzNTY3
MEIwNTM4MTQwMDJDRTY0RiAvKiBDb2xvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzMzMEEyMjMx
M0VDMTk2QjAwMDBCNDVCIC8qIENvbG9yQ2hvb3Nlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzM3
Q0RFQkQxNDlFRjIwMzAwNDIwOTBEIC8qIENvbG9yQ2hvb3NlckNsaWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRjQ4RDJBQTUyMTU5NzQwRDAwQzY3NTJCIC8qIENvbG9yQ29jb2EuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdDQUM2QUYwMjQ3RjQxMTAwMEU2MUQ1OSAvKiBDb2xvckNvbXBvbmVudHMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdDNTE0RTAzMjRBRjgwNUUwMDUwNzEwRiAvKiBDb2xvckNv
bnZlcnNpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0VFRjNDMjU3OTlGQUIwMDY1NjNCQiAv
KiBDb2xvckdhbXV0LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTAzQjdERjFEQjAxNTY3MDA4QkI4
OTAgLyogQ29sb3JIYXNoLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0RCNDEyNTFGMTJEMDAz
RUYyNjkgLyogQ29sb3JJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNFNTE2OUU3MjFG
MUI4NDcwMEVBNEY3OCAvKiBDb2xvcklPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM0QTIzRUMy
NUVDMTYwMjAwQUFDNjMwIC8qIENvbG9yTHVtaW5hbmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlF
REUzQTUwMDBDN0E0MzA2MDA5NTZBMzcgLyogQ29sb3JNYWMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTdDQUM2QUU5MjQ3RjA4MkYwMEU2MUQ1OSAvKiBDb2xvck1hdHJpeC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkMxMDEzN0MyNUMzNjI0QjAwREM3NzNDIC8qIENvbG9yTW9kZWxzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk3Q0QxRTY5MzI0QUJGNjI0MDA4OUM0MTkgLyogQ29sb3JTZXJpYWxpemF0aW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzgyREY1ODEwQThENUM5MDA5MjU2NTIgLyogQ29sb3JT
cGFjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNBRkVEQjQyNTk2OEQwQjAwMzBFNkFBIC8qIENv
bG9yU3BhY2VDRy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMxMDEzN0YyNUMzNjMxNjAwREM3NzND
IC8qIENvbG9yVHJhbnNmZXJGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDMDI5QzZF
MjQ5M0M4RjgwMDI2ODIwNCAvKiBDb2xvclR5cGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkVB
RjY2QjIzQkZDMzlFMDA0MDMwREEgLyogQ29sb3JVdGlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDREQ0NTRFMTIzNkM5NUMwMDlBNzk4NSAvKiBDb2x1bW5JbmZvLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0M0VERDY3RjFCNDg1REJGMDA2NDBFNzUgLyogQ29tYmluZWRGaWx0ZXJzQWxwaGFi
ZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTI2RTk0NEQ5MUFDNEIyREQwMDdCODVCNSAvKiBDb21i
aW5lZFVSTEZpbHRlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1ODRGRTM1MTg2NEQ1QUYwMDg0
M0IxMCAvKiBDb21tYW5kTGluZUFQSUhvc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1ODRGRTJD
MTg2Mzg3MEYwMDg0M0IxMCAvKiBDb21tYW5kTGluZUFQSU1vZHVsZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTU4NEZFMjYxODYzN0RBQjAwODQzQjEwIC8qIENvbW1hbmRMaW5lQVBJTW9kdWxlU291
cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk2NTUwQjZBMjA5OURGMDI3MDA5MEQ3ODEgLyogQ29t
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFNjY0RkMxRTczNzAzMzAwNzY1NTM2IC8qIENv
bW1vbkNyeXB0b0RFUlV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFGRTEzNzUxODQw
MkE2NzAwODkyRjEzIC8qIENvbW1vbkNyeXB0b1V0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMEY2MEYzMkIxREZCQjEwNzAwNDE2RDZDIC8qIENvbW1vblZNLmggaW4gSGVhZGVycyAqLywK
KwkJCQk3QzkzRjM0QTFBQTZCQTVFMDBBOThCQUIgLyogQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQlDMkY0RTc4QzFFNDVDM0VGMDA2RDcxMDUgLyogQ29tcGxl
eFRleHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEJBNTA5MDFCQ0ZCRDk1MDBF
MzRFRjcgLyogQ29tcG9zZWRUcmVlQW5jZXN0b3JJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTQ0RkExODUxQkNBNkI1QTAwOTFCNkVGIC8qIENvbXBvc2VkVHJlZUl0ZXJhdG9yLmggaW4g
SGVhZGVycyAqLywKKwkJCQk5MzMwOURERDA5OUU2NDkyMDA1NkU1ODEgLyogQ29tcG9zaXRlRWRp
dENvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMjQ3RTM3MUZFQTVGODYwMDhDMDhDRSAv
KiBDb21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMTEyNDNFMjE2RkE3
MTEwMEVCN0I2NyAvKiBDb21wb3NpdGVPcGVyYXRpb25PckF1dG8uaCBpbiBIZWFkZXJzICovLAor
CQkJCTc5RjJGNUEyMTA5MTkzOUEwMDBEODdDQiAvKiBDb21wb3NpdGlvbkV2ZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlGNDQyQzM1OTIzRTNBREQyMDA0OTk1ODIgLyogQ29tcG9zaXRpb25IaWdo
bGlnaHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTJERDVBNzI3MUVCRUU0N0QwMDlCQTU5NyAvKiBD
b21wb3NpdGlvblVuZGVybGluZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzExNkUyQ0MxRkVENzVE
QzAwQzA2RkRFIC8qIENvbXB1dGVkRWZmZWN0VGltaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQk1
NUFEMDk0MTI0MDg5NjRBMDBERTREMkYgLyogQ29uY3JldGVJbWFnZUJ1ZmZlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRkQzMTYwOEYxMkIwMjZGNzAwQzFBMzU5IC8qIENvbmUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTY1Qzk3QUYzMDhFQTkwODgwMEFDRDI3MyAvKiBjb25maWcuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTJEQUYzNDNEMUVBN0UwRjEwMDM4MkNEMyAvKiBDb25zdGFudFByb3BlcnR5TWFw
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFN0M4RTEzQjI0RTJGRTdFMDAyN0EyN0YgLyogQ29uc3Rh
bnRTb3VyY2VOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFN0M4RTEzNzI0RTJGQkNFMDAyN0Ey
N0YgLyogQ29uc3RhbnRTb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNTk2REQ1
RDI1MUJCMDgyMDBDMjc1QTcgLyogQ29udGFjdEluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJCUU1
OTZERDU4MjUxQkFDNEEwMEMyNzVBNyAvKiBDb250YWN0UHJvcGVydHkuaCBpbiBIZWFkZXJzICov
LAorCQkJCUU1OTZERDMwMjUxOTAzRUYwMEMyNzVBNyAvKiBDb250YWN0c01hbmFnZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUU1MDYyMDg0MjU0MDkxOUMwMEM0MzA5MSAvKiBDb250YWN0c1JlcXVl
c3REYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNTk2REQzNTI1MTkwNDE0MDBDMjc1QTcgLyog
Q29udGFjdHNTZWxlY3RPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODE4NzIxQzA5NzdE
M0MwMDA1ODI2RDkgLyogQ29udGFpbmVyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFBMTQ3
MDgxMTEwMkIxNTAwRUVDMEYzIC8qIENvbnRhaW5lck5vZGVBbGdvcml0aG1zLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk2RkI1RTIxNDIyMUYyNDUzMDAzOTg5Q0YgLyogQ29udGVudENoYW5nZU9ic2Vy
dmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVFQjk4MTBFODIwNzI1MDBCMjU5NjUgLyogQ29u
dGVudERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxQjQ1RDIxMUFCOEQxRTIwMDExN0NEMiAv
KiBDb250ZW50RXh0ZW5zaW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk1Q0RGQTZDODFBQTRGMkRB
MDBFQTg3NDYgLyogQ29udGVudEV4dGVuc2lvbkFjdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTdDOTNGMzRFMUFBNkJGMDcwMEE5OEJBQiAvKiBDb250ZW50RXh0ZW5zaW9uQ29tcGlsZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTdDRkRDNTdEMUFDMUQ4MDUwMEUyNEE1NyAvKiBDb250ZW50RXh0
ZW5zaW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTI2RjBDODk4MUEyRTcyNEIwMDI3OTRG
OCAvKiBDb250ZW50RXh0ZW5zaW9uUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNkYwQzg5
QzFBMkVDMTEwMDAyNzk0RjggLyogQ29udGVudEV4dGVuc2lvblJ1bGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTI2RjBDOEEwMUEyRUMzQkUwMDI3OTRGOCAvKiBDb250ZW50RXh0ZW5zaW9uc0JhY2tl
bmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTI2MjM5MTM2MUE2NDhDRUUwMDcyNTFBMyAvKiBDb250
ZW50RXh0ZW5zaW9uc0RlYnVnZ2luZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFGQjY3REMxQUU2
QjgyRjAwRDA2QzVBIC8qIENvbnRlbnRFeHRlbnNpb25TdHlsZVNoZWV0LmggaW4gSGVhZGVycyAq
LywKKwkJCQlBMTQ5Nzg2RjFBQkFGMzM4MDBDRUY3RTQgLyogQ29udGVudEZpbHRlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNUNEQ0REQzYyM0Q4MEExQzAwQkEzNEExIC8qIENvbnRlbnRGaWx0ZXJD
bGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExNDA5MEZEMUFBNTFFNDgwMDkxMTkxQSAvKiBD
b250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNBN0U5QjQ5
MjQzNjFEQzUwMDRFODlGNiAvKiBDb250ZW50ZnVsUGFpbnRDaGVja2VyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1QzlDMkRCNTIyNDFBNjdCMDA5OTZCMEIgLyogQ29udGVudFJ1bGVMaXN0UmVzdWx0
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdDNDcxREMxMkY5MjVCRDAwODYzNTRCIC8qIENvbnRl
bnRTZWN1cml0eVBvbGljeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0U1RkEyNTUyMDlFNDhDNTAw
NTFENzAwIC8qIENvbnRlbnRTZWN1cml0eVBvbGljeUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0U3OTlGQTQxQzZBNTAzQTAwOTdCNTE4IC8qIENvbnRlbnRTZWN1cml0eVBvbGljeURpcmVj
dGl2ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0U3OTlGOUMxQzZBNEJDRDAwOTdCNTE4IC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeURpcmVjdGl2ZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUNF
Mjg0OTg3MUNBMzYwREYwMEI0QTU3RiAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lEaXJlY3RpdmVO
YW1lcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0U3RTE3ODMxQzgzQTQ5MTAwQUQwNkFGIC8qIENv
bnRlbnRTZWN1cml0eVBvbGljeUhhc2guaCBpbiBIZWFkZXJzICovLAorCQkJCUNFNzk5RkE4MUM2
QTUwNTcwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lNZWRpYUxpc3REaXJlY3RpdmUu
aCBpbiBIZWFkZXJzICovLAorCQkJCUNFNkRBREZBMUM1OTFFNkEwMDNGNkE4OCAvKiBDb250ZW50
U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUNFNzk5
RkEwMUM2QTRDMTYwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJpdHlQb2xpY3lTb3VyY2UuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNFNzk5Rjk4MUM2QTQ2QkMwMDk3QjUxOCAvKiBDb250ZW50U2VjdXJp
dHlQb2xpY3lTb3VyY2VMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlDRTc5OUZBQzFDNkE1MDY2
MDA5N0I1MTggLyogQ29udGVudFNlY3VyaXR5UG9saWN5U291cmNlTGlzdERpcmVjdGl2ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDFEMDE1Q0EwRjRCNUM3MTAwNEE2NjJGIC8qIENvbnRlbnRUeXBl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzYyN0I4RTE0RkIzQ0VFMDAyQ0RDQTEgLyogQ29udGV4
dERlc3RydWN0aW9uT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQjZBMEU2MEIwQkNB
NUMwMEY1MDI3QSAvKiBDb250ZXh0TWVudS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDY1QUQ0RjUw
QjBDMkVEQTAwNUEyQjFEIC8qIENvbnRleHRNZW51Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1MTA2RDdCRTE4QkRCNzZGMDAwQUIxNjYgLyogQ29udGV4dE1lbnVDb250ZXh0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwNjVBRDRGNzBCMEMyRURBMDA1QTJCMUQgLyogQ29udGV4dE1lbnVDb250
cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNjAyN0NBRDBCMUNCRkMwMDA4ODRCMkQgLyog
Q29udGV4dE1lbnVJdGVtLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QURFNzIyNjEwQ0JCQjlCMDA2
QjNCM0EgLyogQ29udGV4dE1lbnVQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzU5Q0I4
MzcxOTJEQTkxOTAwMTJCQzY0IC8qIENvbnRyb2xTdGF0ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUZEMzE2MDI5MTJCMDI2NzYwMEMxQTM1OSAvKiBDb252b2x2ZXJOb2RlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4M0YyOEMwMDI0REIxREUxMDA1QkE2RjYgLyogQ29udm9sdmVyT3B0aW9ucy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRDhCNjE1MkYxMDMyNDk1MTAwQzg1NTRBIC8qIENvb2tpZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTE0MjRDOTQxNjRCNTJDODAwRjMyRDQwIC8qIENvb2tpZUphci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJN0E1Njk5NzAyMDg2QzYxOTAwMEUwNDMzIC8qIENvb2tpZVJl
cXVlc3RIZWFkZXJGaWVsZFByb3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQkzM0QwMjEyRDEzMURC
MzdCMDA0MDkxQTggLyogQ29va2llU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEyMEJC
QUYxRjFDRUNFNzAwRUZFQkYxIC8qIENvb2tpZVN0b3JhZ2VPYnNlcnZlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJM0Y4MDIwMzUxRTlFNDdCRjAwREVDNjFEIC8qIENvcmVBdWRpb0NhcHR1cmVEZXZp
Y2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTNGODAyMDM3MUU5RTQ3QzUwMERFQzYxRCAvKiBDb3Jl
QXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdBRkY0MjIx
RUZCMTQ0OTAwQjU0NUIzIC8qIENvcmVBdWRpb0NhcHR1cmVTb3VyY2VJT1MuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEN0QzMzQ4MUM3QTE2QkYwMDA0MTI5MyAvKiBDb3JlVmlkZW9Tb2Z0TGluay5o
IGluIEhlYWRlcnMgKi8sCisJCQkJODYyRjEyOUUxOEMxNTc2RjAwNUM1NEFGIC8qIENvdW50ZWRV
c2VyQWN0aXZpdHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2RDA0MEExOTg5Q0EwMDdGQjhD
NSAvKiBDb3VudGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVFQjk3OTBFODIwNjkyMDBCMjU5
NjUgLyogQ291bnRlckNvbnRlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNUVCOTUxMEU4MjA1
NkIwMEIyNTk2NSAvKiBDb3VudGVyRGlyZWN0aXZlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM5
MkYxNEMwQUQxODYxQjAwNjkxQkQ0IC8qIENvdW50ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0NkM2OTZDQjFFNzIwNUY3MDA1OTc5MzcgLyogQ1BVTW9uaXRvci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRDBCMDU1NjgwOUM2NzAwMTAwMzA3RTQzIC8qIENyZWF0ZUxpbmtDb21tYW5kLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1MTRDNzY2RTBDRTkyM0ExMDA3RUYzQ0QgLyogQ3JlZGVudGlhbC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMzc5MjkxN0ExOTg1RUYzOTAwRjRCNjYxIC8qIENyZWRlbnRp
YWxCYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkzNzkyOTE3RTE5ODc2NzhGMDBGNEI2NjEgLyog
Q3JlZGVudGlhbENvY29hLmggaW4gSGVhZGVycyAqLywKKwkJCQk3N0Q1MTAwRDFFRDVFMjk1MDBE
QTRDODcgLyogQ3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NzdENTEwMEIxRUQ1RTI4ODAwREE0Qzg3IC8qIENyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNzdENTEwMTcxRUQ2MDIyMjAwREE0Qzg3IC8qIENyZWRlbnRpYWxz
Q29udGFpbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUEwNTIzMzEwNTg3NzRGMDBDQzlFOTUg
LyogQ3JlZGVudGlhbFN0b3JhZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTJENDgxRjAyMTQ2QjVD
NTUwMEFBNzgzNCAvKiBDcm9zc2ZhZGVHZW5lcmF0ZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTFDNDE2MTIwRjY1NjJGRDAwOTJEMkZCIC8qIENyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDY3MkFBOTgyNkIwOTQzMzAwRTZFQzM4IC8qIENyb3NzT3Jp
Z2luRW1iZWRkZXJQb2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2ODhFRTNDMjZERDI2MTAw
MDJBRjVDNCAvKiBDcm9zc09yaWdpbk1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2NzJBQTk5
MjZCMDk0M0YwMEU2RUMzOCAvKiBDcm9zc09yaWdpbk9wZW5lclBvbGljeS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDFBQkU2N0IxRDA1ODBEQjAwNkQ4NjJEIC8qIENyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFDNDE1REEwRjY1NUQ2RjAwOTJEMkZCIC8q
IENyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTZC
MUY0ODExMjI5OEEzN0UwMERFOEI4MiAvKiBDcm9zc1NpdGVOYXZpZ2F0aW9uRGF0YVRyYW5zZmVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTY5ODAzRDExMzM1NDJEMDA4OTQxMTUgLyogQ1J1bnRp
bWVPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3NUNBMjhCMTMwMzY1RjgwMEU5OUFEOSAv
KiBDcnlwdG8uaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOUFDQTk4MUYzQ0NEQUQwMEYzQUEwOSAv
KiBDcnlwdG9BZXNLZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCUUxNzJBRjZFMTgw
RjI0QzYwMEZCQURCOSAvKiBDcnlwdG9BbGdvcml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCUUx
MjVGODQyMTgyNDI1M0EwMEQ4NENEOSAvKiBDcnlwdG9BbGdvcml0aG1BRVNfQ0JDLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1NzEyNTI2OTFFNTI0RUIxMDA4RkYzNjkgLyogQ3J5cHRvQWxnb3JpdGht
QUVTX0NGQi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFMUU1QTMxRThDOTFCNTAwRUUzN0M5IC8q
IENyeXB0b0FsZ29yaXRobUFFU19DVFIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3QjVGN0Y5MUU1
QkU4NDAwMEYzNEY5MCAvKiBDcnlwdG9BbGdvcml0aG1BRVNfR0NNLmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMUZFMTM3QjE4NEQyMUJCMDA4OTJGMTMgLyogQ3J5cHRvQWxnb3JpdGhtQUVTX0tXLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1NzIwOTNEMzFERENFQjlBMDAzMTBBQjAgLyogQ3J5cHRvQWxn
b3JpdGhtQWVzQ2JjQ2ZiUGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0UxRTVBNzFFOERC
RDNFMDBFRTM3QzkgLyogQ3J5cHRvQWxnb3JpdGhtQWVzQ3RyUGFyYW1zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1N0I1RjgwOTFFNUQxQTk4MDBGMzRGOTAgLyogQ3J5cHRvQWxnb3JpdGhtQWVzR2Nt
UGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1Nzc0ODMxMjFEQURDNTVEMDA3MTZFRjkgLyog
Q3J5cHRvQWxnb3JpdGhtQWVzS2V5UGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzUwQTk4
NzFFNkEyMTY4MDA3MDVDNEEgLyogQ3J5cHRvQWxnb3JpdGhtRUNESC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTc2ODE0MkExRTZGOTlDMTAwRTc3NzU0IC8qIENyeXB0b0FsZ29yaXRobUVjZGhLZXlE
ZXJpdmVQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3RUVBQTQ3MUU5RUQyREQwMDcwMTEy
NCAvKiBDcnlwdG9BbGdvcml0aG1FQ0RTQS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFRUFBNTAx
RTlGRkJGQzAwNzAxMTI0IC8qIENyeXB0b0FsZ29yaXRobUVjZHNhUGFyYW1zLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1NzUwQTk3RTFFNkExM0VGMDA3MDVDNEEgLyogQ3J5cHRvQWxnb3JpdGhtRWNL
ZXlQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3OTU3Q0E5MUU5NzFERTAwMDgwNzJBQiAv
KiBDcnlwdG9BbGdvcml0aG1IS0RGLmggaW4gSGVhZGVycyAqLywKKwkJCQk1Nzk1N0NCMjFFOTcy
NjQ1MDA4MDcyQUIgLyogQ3J5cHRvQWxnb3JpdGhtSGtkZlBhcmFtcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRTEyNUY4MzIxODIyRjExQjAwRDg0Q0Q5IC8qIENyeXB0b0FsZ29yaXRobUhNQUMuaCBp
biBIZWFkZXJzICovLAorCQkJCTU3NzQ4MzE5MURCNDQ5MUYwMDcxNkVGOSAvKiBDcnlwdG9BbGdv
cml0aG1IbWFjS2V5UGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUM2NTcyNTE4MTZFNjlE
MDAyNTZDREQgLyogQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTczNDg5MzkxREFDNkI2RTAwREMwNjY3IC8qIENyeXB0b0FsZ29yaXRobVBhcmFtZXRlcnMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTU3Nzc3RTM5MUU3MTIxN0QwMEVFMUE4RCAvKiBDcnlwdG9B
bGdvcml0aG1QQktERjIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3RTY1N0VDMUU3MTYyRUEwMEY5
NDFDQSAvKiBDcnlwdG9BbGdvcml0aG1QYmtkZjJQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUUxRkY4RjZEMTgwREI1QkUwMDEzMjY3NCAvKiBDcnlwdG9BbGdvcml0aG1SZWdpc3RyeS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTFGRTEzNkIxODNGRTFBQjAwODkyRjEzIC8qIENyeXB0b0FsZ29y
aXRobVJTQV9PQUVQLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzkwOTk2RDFFQ0QyM0RBMDBGQzA3
NjggLyogQ3J5cHRvQWxnb3JpdGhtUlNBX1BTUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEyMzNG
MEQxODVBM0UzQjAwOERGQUY1IC8qIENyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzUuaCBp
biBIZWFkZXJzICovLAorCQkJCTU3RTIzMzZFMURDRDQzRkQwMEYyOEQwMSAvKiBDcnlwdG9BbGdv
cml0aG1Sc2FIYXNoZWRJbXBvcnRQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3RkVERDNG
MURCNkQ1OTIwMEVCOTZGNSAvKiBDcnlwdG9BbGdvcml0aG1Sc2FLZXlHZW5QYXJhbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTU3MDZBNjk2MURERTVDOTUwMEEwM0IxNCAvKiBDcnlwdG9BbGdvcml0
aG1Sc2FPYWVwUGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzIxQTk4QjFFQ0U1NzA0MDA4
MTI5NUEgLyogQ3J5cHRvQWxnb3JpdGhtUnNhUHNzUGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFMUJEMzMxQTE4MkQ4REREMDBDMDVEOUYgLyogQ3J5cHRvQWxnb3JpdGhtUlNBU1NBX1BLQ1Mx
X3YxXzUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxMjVGODJDMTgyMkNGRUMwMEQ4NENEOSAvKiBD
cnlwdG9BbGdvcml0aG1TSEExLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTlBQzNFRjE4MjREQzc5
MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMjI0LmggaW4gSGVhZGVycyAqLywKKwkJCQlF
MTlBQzNGMTE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBMjU2LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMTlBQzNGMzE4MjREQzc5MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGht
U0hBMzg0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTlBQzNGNTE4MjREQzc5MDAzNDk0MjYgLyog
Q3J5cHRvQWxnb3JpdGhtU0hBNTEyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzIxQTk4NzFFQ0U1
M0IxMDA4MTI5NUEgLyogQ3J5cHRvRGlnZXN0QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk3QzlBQ0E5QzFGM0NDREYyMDBGM0FBMDkgLyogQ3J5cHRvRWNLZXlBbGdvcml0aG0uaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdDOUFDQUEwMUYzQ0NFMzAwMEYzQUEwOSAvKiBDcnlwdG9IbWFjS2V5
QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTU3QThFNTE4MTczQTNBMDA5RjgyMUQg
LyogQ3J5cHRvS2V5LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTI1Rjg0RTE4MjQyODlEMDBEODRD
RDkgLyogQ3J5cHRvS2V5QUVTLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzlBQ0E5MjFGM0NDMEFB
MDBGM0FBMDkgLyogQ3J5cHRvS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzUw
QTk3NTFFNjhEMDAwMDA3MDVDNEEgLyogQ3J5cHRvS2V5RUMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTU3MjU3NkQ2MjNBODg3MkIwMDkwOTU0MCAvKiBDcnlwdG9LZXlGb3JtYXQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUUxMjVGODM2MTgyMkYxOEEwMEQ4NENEOSAvKiBDcnlwdG9LZXlITUFDLmggaW4g
SGVhZGVycyAqLywKKwkJCQlFMUY4MEI4ODE4MzE3MjUyMDA3ODg1QzMgLyogQ3J5cHRvS2V5UGFp
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFNjU3REYxRTcxMzczQTAwRjk0MUNBIC8qIENyeXB0
b0tleVJhdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTE2NEZBQTMxODMxNUJGNDAwREI0RTYxIC8q
IENyeXB0b0tleVJTQS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFDMjY2REYxODMxOUYzMTAwM0Y4
QjMzIC8qIENyeXB0b0tleVJTQUNvbXBvbmVudHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxOTcy
NzE2MTgyMDU0OUUwMDU5MkQ1MSAvKiBDcnlwdG9LZXlUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFMTcyQUY3MDE4MEYyODk1MDBGQkFEQjkgLyogQ3J5cHRvS2V5VXNhZ2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTdDOUFDQUE4MUYzQ0NFQjQwMEYzQUEwOSAvKiBDcnlwdG9Sc2FIYXNoZWRLZXlB
bGdvcml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOUFDQUE0MUYzQ0NFNjkwMEYzQUEwOSAv
KiBDcnlwdG9Sc2FLZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCTcxQzI5RTMyMjAz
Q0U3ODEwMDhGMzZEMiAvKiBDU1NBbmltYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUNBRTlG
OTEwMTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5NERFNUM4MjFEN0YzQTE0MDAxNjRGMkEgLyogQ1NTQXRSdWxlSUQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUZCRDZBRjg4MTVFRjI1QzkwMDhCNzExMCAvKiBDU1NCYXNpY1NoYXBlcy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRTE2QTg0RkExNEM4NUNDQzAwMjk3N0RGIC8qIENTU0JvcmRl
ckltYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzI3NEIyRjE0MEVCRUIyMDBFQURGQTYgLyog
Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0YxNjQ2QTI2
NjJBOTM0MDAwMkY3RUYgLyogQ1NTQ2FsY0NhdGVnb3J5TWFwcGluZy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkNGMTY0NTEyNjYyOUZDNzAwMDJGN0VGIC8qIENTU0NhbGNFeHByZXNzaW9uTm9kZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkNGMTY0NjUyNjYyQTMxQTAwMDJGN0VGIC8qIENTU0NhbGNF
eHByZXNzaW9uTm9kZVBhcnNlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNGMTY0NUQyNjYyQTIz
NzAwMDJGN0VGIC8qIENTU0NhbGNJbnZlcnROb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0Yx
NjQ1OTI2NjJBMUU5MDAwMkY3RUYgLyogQ1NTQ2FsY05lZ2F0ZU5vZGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDRjE2NDYxMjY2MkEyOEQwMDAyRjdFRiAvKiBDU1NDYWxjT3BlcmF0aW9uTm9kZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkNGMTY0NTUyNjYyQTEyMjAwMDJGN0VGIC8qIENTU0NhbGNQ
cmltaXRpdmVWYWx1ZU5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNzA5REUwMjY2MzIzQ0Yw
MEI5QTIxQyAvKiBDU1NDYWxjU3ltYm9sVGFibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5QUUy
RDhGMTM0RUU1MEMwMDcyOTIwQSAvKiBDU1NDYWxjVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDNjA0OUNDMERCNTYwQzIwMDIwNDczOSAvKiBDU1NDYW52YXNWYWx1ZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkNFQTQ3OTAwOTdDQUFDODAwOTRDOUU0IC8qIENTU0NvbXB1dGVkU3R5bGVEZWNs
YXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMwQUFDOUEyNTBFQjg0OTAwMTNEQTlGIC8q
IENTU0NvbmRpdGlvblJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTlEQUM3QzU1MUFGMkNBQTIw
MDQzN0M0NCAvKiBDU1NDb250ZW50RGlzdHJpYnV0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTk4RjlENjY5MjVGREUwMjIwMEJEODQyRCAvKiBDU1NDb3VudGVyU3R5bGVSdWxlLmggaW4g
SGVhZGVycyAqLywKKwkJCQkyRDhGRUJERDE0M0UzRUY3MDA3MjUwMkIgLyogQ1NTQ3Jvc3NmYWRl
VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUFBMjFFQ0NEMEFCRjBGQzYwMDJCODM0QyAvKiBD
U1NDdXJzb3JJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzc3OUUxNDFCQjIxNUJC
MDBDQUE4QkYgLyogQ1NTQ3VzdG9tUHJvcGVydHlWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTQ0NzZCREIxREZDQUMwMzAwNjkwRTIzIC8qIENTU0RlZmVycmVkUGFyc2VyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlGQkIwQzVCODE3QkJENjI5MDAzRDM2NzcgLyogQ1NTRmlsdGVySW1hZ2VWYWx1
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2NEI0RDYwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0Zv
bnRGYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFNkNGRDBBMTk4OUNBMDA3RkI4QzUgLyog
Q1NTRm9udEZhY2VSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDMjYwMTdBNDFDNzJEQzk5MDBG
NzRBMTYgLyogQ1NTRm9udEZhY2VTZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNjRCNEQ4MENC
NDI5OEEwMDVGMkI2MiAvKiBDU1NGb250RmFjZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QkM2NEI0REEwQ0I0Mjk4QTAwNUYyQjYyIC8qIENTU0ZvbnRGYWNlU3JjVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTgzNTIwQzdFMUE3MUJGQ0MwMDZCRDJBQSAvKiBDU1NGb250RmFtaWx5Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk0QTZFOUZDNDEzQzE3RDFEMDA0NkE3RjggLyogQ1NTRm9udEZl
YXR1cmVWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2NEI0REMwQ0I0Mjk4QTAwNUYyQjYy
IC8qIENTU0ZvbnRTZWxlY3Rvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzJFMzhGMDIxRTg0NTcz
NTAwQ0EzQURGIC8qIENTU0ZvbnRTdHlsZVJhbmdlVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUMyRTM4RUZFMUU4Mzk2RkQwMENBM0FERiAvKiBDU1NGb250U3R5bGVWYWx1ZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTgwRTZDRUQwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0ZvbnRWYWx1ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQzIxREYyRUExRDlFNEU5OTAwRjVCMjRDIC8qIENTU0ZvbnRWYXJp
YXRpb25WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMwMkE2M0MwRTA5QTlDRjAwNEI2RDJC
IC8qIENTU0Z1bmN0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNTNDNjkyMERBNTkx
MTQwMDIxRUI1RCAvKiBDU1NHcmFkaWVudFZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTEw
MDMzMTFDOUFDM0RFMDA0MTJERDAgLyogQ1NTR3JpZEF1dG9SZXBlYXRWYWx1ZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMzVDNzRGREIyMjhBMUVGNjAwMEMyMUEwIC8qIENTU0dyaWRJbnRlZ2VyUmVw
ZWF0VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEN0RCQjI5MThDQTE5QzYwMEMxMTA2NiAv
KiBDU1NHcmlkTGluZU5hbWVzVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0UyNTI0MTgw
NDZCQ0QwMEUyN0Y1NiAvKiBDU1NHcmlkVGVtcGxhdGVBcmVhc1ZhbHVlLmggaW4gSGVhZGVycyAq
LywKKwkJCQlGQjMwNTZDMjE2OUU1REFDMDA5NkEyMzIgLyogQ1NTR3JvdXBpbmdSdWxlLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQzc3MkIzQzBDNEVBOTFFMDA4MzI4NUYgLyogQ1NTSGVscGVyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCQzIzRUU5MjBEQUVEMkJDMDA5RkRDOTEgLyogQ1NTSW1hZ2VH
ZW5lcmF0b3JWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM5M0U2MDAxNTFBOTlGMjAwMDY2
RjA2IC8qIENTU0ltYWdlU2V0VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2Q0ZBMEEx
OTg5Q0EwMDdGQjhDNSAvKiBDU1NJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBF
NkNGNjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTgwRTZEMDEwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0luaGVyaXRlZFZhbHVlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBODBFNkQwODBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW5pdGlhbFZhbHVl
LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTI4OEU3MzBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5
ZnJhbWVSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTI4OEU3NTBFMzAwNUQ2MDAzNjE5QUUg
LyogQ1NTS2V5ZnJhbWVzUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkE0MTA3QTQyNkNCNjZG
ODAwM0JGNzk3IC8qIENTU0tleXdvcmRWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM3NzJF
MTMxMzMxNjIwQzAwMUVDOUNFIC8qIENTU0xpbmVCb3hDb250YWluVmFsdWUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTk0NkQzNzRBMUQ2RDA2MjgwMDc3MDg0RiAvKiBDU1NNYXJrdXAuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTJBRUY2RkQzMjZFN0VDQTUwMDMyNkQwMiAvKiBDU1NNYXRoSW52ZXJ0Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQkyQUVGNkZENDI2RTdFQ0FBMDAzMjZEMDIgLyogQ1NTTWF0aE1h
eC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkFFRjZGRDUyNkU3RUNBRTAwMzI2RDAyIC8qIENTU01h
dGhNaW4uaCBpbiBIZWFkZXJzICovLAorCQkJCTJBRUY2RkQ2MjZFN0VDQjQwMDMyNkQwMiAvKiBD
U1NNYXRoTmVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkyQUVGNkZENzI2RTdFQ0I4MDAzMjZE
MDIgLyogQ1NTTWF0aE9wZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkyQUVGNkZEODI2RTdF
Q0JDMDAzMjZEMDIgLyogQ1NTTWF0aFByb2R1Y3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTJBRUY2
RkQ5MjZFN0VDQzAwMDMyNkQwMiAvKiBDU1NNYXRoU3VtLmggaW4gSGVhZGVycyAqLywKKwkJCQky
QUVGNkZEQTI2RTdFQ0MzMDAzMjZEMDIgLyogQ1NTTWF0aFZhbHVlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBODBFNkQwMzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTTWVkaWFSdWxlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkzMTRCRTNBMTFCMzBGNkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZhbHVl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NEU4Mzk1MTFERkIyQTBFMDA3QkM2QTcgLyogQ1NTTmFt
ZXNwYWNlUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkFFRjZGREIyNkU3RUNDNzAwMzI2RDAy
IC8qIENTU051bWVyaWNBcnJheS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkFFRjZGREMyNkU3RUND
QzAwMzI2RDAyIC8qIENTU051bWVyaWNCYXNlVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkFD
QjREMkIyNkRDNEFDRTAwQkVCNzUzIC8qIENTU051bWVyaWNGYWN0b3J5LmggaW4gSGVhZGVycyAq
LywKKwkJCQkyQUVGNkZERDI2RTdFQ0NGMDAzMjZEMDIgLyogQ1NTTnVtZXJpY1R5cGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTRCQUZEMEUwMjE5MjIwQUIwMEMwQUI2NCAvKiBDU1NOdW1lcmljVmFs
dWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTJBQkZGRkYzMjZDNTM1QzAwMDQ4ODc1QiAvKiBDU1NP
TVZhcmlhYmxlUmVmZXJlbmNlVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2RDAwMEEx
OTg5Q0EwMDdGQjhDNSAvKiBDU1NQYWdlUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEI1QkRE
OUIyMTY1OEExNTAwREQ0MjYyIC8qIENTU1BhaW50Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAor
CQkJCTRCNkU4NzY5MjE3NkQ2OTIwMDQyMEU1RSAvKiBDU1NQYWludEltYWdlVmFsdWUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTRCQUZEMENCMjE5MEVCRDYwMEMwQUI2NCAvKiBDU1NQYWludFNpemUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTk0NkQzNzJFMUQ2Q0IyOTQwMDc3MDg0RiAvKiBDU1NQYXJz
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0QTc5OTUyMjBFRTRCMTQwMEMxOTU2OCAvKiBDU1NQ
YXJzZXJDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDlDNzcwMTFENkUxRDk4MDBDMERF
NEYgLyogQ1NTUGFyc2VyRmFzdFBhdGhzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDZEMzc0NDFE
NkNGN0IyMDA3NzA4NEYgLyogQ1NTUGFyc2VySWRpb21zLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
NERFNUM5NjFEODMwMUJEMDAxNjRGMkEgLyogQ1NTUGFyc2VySW1wbC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTQ2RDM3MkYxRDZDQjI5NDAwNzcwODRGIC8qIENTU1BhcnNlck1vZGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk0OUM3NzBCMUQ2RTQ5RUQwMEMwREU0RiAvKiBDU1NQYXJzZXJPYnNlcnZl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ5Qzc3MDkxRDZFNDk4NzAwQzBERTRGIC8qIENTU1Bh
cnNlck9ic2VydmVyV3JhcHBlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ2RDM3MzExRDZDQjI5
NDAwNzcwODRGIC8qIENTU1BhcnNlclNlbGVjdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDZE
Mzc0MDFENkNFM0MyMDA3NzA4NEYgLyogQ1NTUGFyc2VyVG9rZW4uaCBpbiBIZWFkZXJzICovLAor
CQkJCTk0NkQzNzRFMUQ2RDA4QUEwMDc3MDg0RiAvKiBDU1NQYXJzZXJUb2tlblJhbmdlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk5NDE4Mjc4RjFEOENBRjkyMDA0OTI3NjQgLyogQ1NTUGVuZGluZ1N1
YnN0aXR1dGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzdCMzg2MzEyMjg4M0U5MDBC
ODFGRjggLyogQ1NTUHJlbG9hZFNjYW5uZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2Q0U2
MEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQcmltaXRpdmVWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTFFRDhBQzMwQ0M0OUJFMDAwQkZDNTU3IC8qIENTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2Q0ZGMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NQcm9w
ZXJ0eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFGMDVGODAyNTEyNDQyRTAwNzFFNjkzIC8qIENT
U1Byb3BlcnR5QW5pbWF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTMxNzEzNDFGQkU3OERC
MDBGNzU4REUgLyogQ1NTUHJvcGVydHlCbGVuZGluZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNjU2NTgwRjQwOUQxMkIyMDAwMEU2MUQ3IC8qIENTU1Byb3BlcnR5TmFtZXMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk0NkQzNzQ2MUQ2RDAxRDQwMDc3MDg0RiAvKiBDU1NQcm9wZXJ0eVBhcnNl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ5Qzc3MDUxRDZFMzlFQTAwQzBERTRGIC8qIENTU1By
b3BlcnR5UGFyc2VySGVscGVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ2RDM3NDYxRDZEMDFE
NTAwNzcwODRGIC8qIENTU1Byb3BlcnR5UGFyc2VyV29ya2VyU2FmZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJODJFM0Q4REYxMjJFQTBEMTAwM0FFNUJDIC8qIENTU1Byb3BlcnR5U291cmNlRGF0YS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkM1QTEyRTAwREMwNDE0ODAwQzlBRkFEIC8qIENTU1JlZmxl
Y3RWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEJEQTQwMDEyMTUxQjZGNTAwRkQ2NjA0IC8q
IENTU1JlZ2lzdGVyZWRDdXN0b21Qcm9wZXJ0eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM3RDhG
RjQxQkQxQTQ3OTAwRkZFNTQwIC8qIENTU1JldmVydFZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBODBFNkQwRDBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTgwRTZDRjIwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU1J1bGVMaXN0LmggaW4gSGVhZGVycyAq
LywKKwkJCQkzNzFGNTFBMTBEMjYyRkEwMDBFQ0UwRDUgLyogQ1NTU2VnbWVudGVkRm9udEZhY2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU3MzUyMEExOTlDNzcwMDdGQjhDNSAvKiBDU1NTZWxl
Y3Rvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTRDMTc4OUIwRUU2OTAzODAwODI0RDY5IC8qIENT
U1NlbGVjdG9yTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTRERTVDOEUxRDgwODAyNzAwMTY0
RjJBIC8qIENTU1NlbGVjdG9yUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFNkNFODBB
MTk4OUNBMDA3RkI4QzUgLyogQ1NTU2hhZG93VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4
MEU2RTBGMEExOTkxMUMwMDdGQjhDNSAvKiBDU1NTdHlsZURlY2xhcmF0aW9uLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0QjQzODY1MDIxOUNENTYxMDBGOEQzQzUgLyogQ1NTU3R5bGVJbWFnZVZhbHVl
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFNkQwQzBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTU3R5
bGVSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBODAwNzBBMTk1MTZFMDBBOEVGNUYgLyog
Q1NTU3R5bGVTaGVldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEJBRkQwRDYyMTkyMTQ2QjAwQzBB
QjY0IC8qIENTU1N0eWxlVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0REU1QzkyMUQ4MzAx
MUQwMDE2NEYyQSAvKiBDU1NTdXBwb3J0c1BhcnNlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkM1
NEQwNTcxNkE3NjczMTAwNTc1RTREIC8qIENTU1N1cHBvcnRzUnVsZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkM4MEM5ODgwQ0QyOTRFRTAwQTBCN0IzIC8qIENTU1RpbWluZ0Z1bmN0aW9uVmFsdWUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTk0NkQzNzNBMUQ2Q0RGQzAwMDc3MDg0RiAvKiBDU1NUb2tl
bml6ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0NkQzNzNDMUQ2Q0RGQzAwMDc3MDg0RiAvKiBD
U1NUb2tlbml6ZXJJbnB1dFN0cmVhbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOUFCMUYzODAxOEUy
NDg5QTAwNTM0NzQzIC8qIENTU1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEuaCBpbiBIZWFkZXJzICov
LAorCQkJCUE4ODJEQTIzMTU5Mzg0OEQwMDAxMTVFRCAvKiBDU1NUb1N0eWxlTWFwLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3MTVBRDcyMTIwNTA1MTNGMDBENTkyREMgLyogQ1NTVHJhbnNpdGlvbi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMzcxRjUzRTkwRDI3MDRGOTAwRUNFMEQ1IC8qIENTU1VuaWNv
ZGVSYW5nZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjZCNzA3QTIzN0JDMzZEMDA1MkNB
NDcgLyogQ1NTVW5pdHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTRCQUZEMEUxMjE5MjQyQTAwMEMw
QUI2NCAvKiBDU1NVbml0VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUREN0NERjI1MEEyM0NG
OTgwMDA2OTkyOCAvKiBDU1NVbmtub3duUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEJBRkQw
RDkyMTkyMUVBMDAwQzBBQjY0IC8qIENTU1VucGFyc2VkVmFsdWUuaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDN0Q4RkYwMUJEMDNCNjQwMEZGRTU0MCAvKiBDU1NVbnNldFZhbHVlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBODBFNkNFRTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTVmFsdWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUUzQkJDMjQ3MjM4MzU1MjYwMDZFQzM5RiAvKiBDU1NWYWx1ZUtleS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNjU2NTgxNTEwOUQxMzA0MzAwMEU2MUQ3IC8qIENTU1ZhbHVlS2V5
d29yZHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2Q0U5MEExOTg5Q0EwMDdGQjhDNSAvKiBD
U1NWYWx1ZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0OUJEOUZBMTMxRkQyRUQwMDNDNTZG
MCAvKiBDU1NWYWx1ZVBvb2wuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0NDRDQkU4MUQ4ODYxQzIw
MDczQTA3NCAvKiBDU1NWYXJpYWJsZURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0NDRDQkRB
MUQ4ODQ4M0EwMDczQTA3NCAvKiBDU1NWYXJpYWJsZVBhcnNlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTQ0NENCRUExRDg4NjFDQTAwNzNBMDc0IC8qIENTU1ZhcmlhYmxlUmVmZXJlbmNlVmFsdWUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzRjE5OTJGMDgyNDVFNTkwMDFFOUFCQyAvKiBDdXJzb3Iu
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDMjI3MkEyMEU4MkU4N0MwMEU3Rjk3NSAvKiBDdXJzb3JE
YXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzIyNzJBRDBFODJFOEYzMDBFN0Y5NzUgLyogQ3Vy
c29yTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNENDM3QTAxRDU3QjE5QTAwQUI4NUVBIC8q
IEN1c3RvbUVsZW1lbnRSZWFjdGlvblF1ZXVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5QkQ0RTkx
QjFDNDYyQ0ZDMDA1MDY1QkMgLyogQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5LmggaW4gSGVhZGVycyAq
LywKKwkJCQk2MkNEMzI1QTExNTdFNTdDMDA2M0IwQTcgLyogQ3VzdG9tRXZlbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTVDNUQyMzg1MjI3QTA2NTIwMDBCOUJEQSAvKiBDdXN0b21IZWFkZXJGaWVs
ZHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTRCMUUxM0U3MjE3OTBENjYwMDQyQ0Y5OCAvKiBDdXN0
b21QYWludENhbnZhcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDQjQxM0UwRTg2MzNGRDAwMzJD
NEYwIC8qIERhc2hBcnJheS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCQzZBMjExNTA1RjA4MTAw
MUI3NEFDIC8qIERhdGFiYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0JDNkEyNDE1MDVGMDgx
MDAxQjc0QUMgLyogRGF0YWJhc2VBdXRob3JpemVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0JD
NkEyNTE1MDVGMDgxMDAxQjc0QUMgLyogRGF0YWJhc2VDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTdCQzZBMjgxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlQ29udGV4dC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJOTdCQzZBMjkxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlRGV0YWls
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkU0NTZGMTkxNjc3RDc0RTAwNUVEREY5IC8qIERhdGFi
YXNlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCQzZBMzMxNTA1RjA4MTAwMUI3NEFD
IC8qIERhdGFiYXNlTWFuYWdlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFDQjJCMjQx
QTU3MzNGNDAwMzMzMzkyIC8qIERhdGFiYXNlUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTk3QkM2QTJFMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRhc2suaCBpbiBIZWFkZXJzICov
LAorCQkJCTk3QkM2QTMwMTUwNUYwODEwMDFCNzRBQyAvKiBEYXRhYmFzZVRocmVhZC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJOTdCQzZBMzIxNTA1RjA4MTAwMUI3NEFDIC8qIERhdGFiYXNlVHJhY2tl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkUyMzQ4MEQxOEE5ODcxNDAwRTRCNkU4IC8qIERhdGFD
dWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUM1MjI3REYxMUMzQzZERjEwMEY1RUQ1NCAvKiBEYXRh
RGV0ZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDQ2RURERjI2NURBRkUzMDAzMURBOEYg
LyogRGF0YURldGVjdGlvblJlc3VsdHNTdG9yYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDQ2
RURFODI2NUREODkwMDAzMURBOEYgLyogRGF0YURldGVjdG9yRWxlbWVudEluZm8uaCBpbiBIZWFk
ZXJzICovLAorCQkJCUY0QjJBOTA5MjY1MDMwQkEwMDlFNzI4NiAvKiBEYXRhRGV0ZWN0b3JIaWdo
bGlnaHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNEE1MzM1MjU2MDVBNTYwMDI4QzU5MiAvKiBE
YXRhRGV0ZWN0b3JUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNThCNDVCQTIwQUQwN0REMDA5
OTEwMjUgLyogRGF0YUxpc3RCdXR0b25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNTE3
NjcwMzIwQjg4QzE0MDBENDExNjcgLyogRGF0YUxpc3RTdWdnZXN0aW9uSW5mb3JtYXRpb24uaCBp
biBIZWFkZXJzICovLAorCQkJCUU1MkNGNTRGMjBBMzVBMjgwMERBREEyNyAvKiBEYXRhTGlzdFN1
Z2dlc3Rpb25QaWNrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU1MkNGNTREMjBBMjY4QUMwMERB
REEyNyAvKiBEYXRhTGlzdFN1Z2dlc3Rpb25zQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlG
NDczODQ1ODI1RERFOUZCMDA2REU4REQgLyogRGF0YU93bmVyVHlwZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkM2NDY0MUMxMUQ3RjQxNjAwNjQ1NUIwIC8qIERhdGFzZXRET01TdHJpbmdNYXAuaCBp
biBIZWFkZXJzICovLAorCQkJCTg1MDMxQjNFMEE0NEVGQzcwMEY5OTJFMCAvKiBEYXRhVHJhbnNm
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgxQUM1OTk5MTMxNjM2RTYwMDA5QTdFMCAvKiBEYXRh
VHJhbnNmZXJJdGVtLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MUFDNTk5QTEzMTYzNkU2MDAwOUE3
RTAgLyogRGF0YVRyYW5zZmVySXRlbUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTM3MkQzRTU0
MjE2NTc4QUUwMEM1RTAyMSAvKiBEYXRhVVJMRGVjb2Rlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTU3MzJCMEIxMzZBMTYxRDAwNUM4RDdDIC8qIERhdGVDb21wb25lbnRzLmggaW4gSGVhZGVycyAq
LywKKwkJCQlGNTVCM0RCNjEyNTFGMTJEMDAzRUYyNjkgLyogRGF0ZUlucHV0VHlwZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMzdDNzM4RjMxRURCREU4QTAwM0YyQjBCIC8qIERhdGVUaW1lQ2hvb3Nl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdDNzM4RjQxRURCREU4RDAwM0YyQjBCIC8qIERhdGVU
aW1lQ2hvb3NlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTVDNTlBOUEyNEQwRTFBQTAw
M0I4NkUxIC8qIERhdGVUaW1lQ2hvb3NlclBhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUU1RjA2QUY3MjRENEJCNTYwMEJCQzRGOCAvKiBEYXRlVGltZUVkaXRFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFNUYwNkFFNzI0RDQ4NDdCMDBCQkM0RjggLyogRGF0ZVRpbWVGaWVsZEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU1RjA2QUYzMjRENEFBRTQwMEJCQzRGOCAvKiBE
YXRlVGltZUZpZWxkRWxlbWVudHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUU1MUQ2QTFGMjRFMUUy
NTUwMDg5MUNGQSAvKiBEYXRlVGltZUZpZWxkc1N0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NTNFQjYzNzE1OUM1NzA0MDAwMDFCQjcgLyogRGF0ZVRpbWVGb3JtYXQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUY1NUIzREJBMTI1MUYxMkQwMDNFRjI2OSAvKiBEYXRlVGltZUxvY2FsSW5wdXRUeXBl
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNUYwNkFFQjI0RDQ5QkY3MDBCQkM0RjggLyogRGF0ZVRp
bWVOdW1lcmljRmllbGRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNUYwNkFFRjI0RDRB
NjM3MDBCQkM0RjggLyogRGF0ZVRpbWVTeW1ib2xpY0ZpZWxkRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM0QTUzMkQyNTYwNTZENTAwMjhDNTkyIC8qIERlYnVnT3ZlcmxheVJlZ2lvbnMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTBGNkExMkJFMUEwMDkyMzcwMEM2REU3MiAvKiBEZWJ1Z1Bh
Z2VPdmVybGF5cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDVGRUE1RDAxNTZEREU4QzAwNjU0MTAx
IC8qIERlY2ltYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNUFENzIwMjA1MDUxMzIwMEQ1OTJE
QyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDMjI4QTEx
MUQ1NzIyRTAwRDVBN0QzIC8qIERlY29kZWREYXRhRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNFQ0NGQzNCMTQxOTczRDUwMDJBMEFDMSAvKiBEZWNvZGVFc2NhcGVTZXF1ZW5j
ZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU1NTEzMDAxMUU3Q0NDQ0IwMEE2OUUzOCAvKiBEZWNv
ZGluZ09wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNjJBNDUxMTAxMTQ1QUUwMERGRjNF
RCAvKiBEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFB
M0Q1OEYxMDFDMTUyRDAwMzE2RDA3IC8qIERlZGljYXRlZFdvcmtlclRocmVhZC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRkQwNkRGQTYxMzRBNERFRjAwNkY1RDdEIC8qIERlZmF1bHRBdWRpb0Rlc3Rp
bmF0aW9uTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTRGMzhEMUIyNjI2RjEzQjAwN0IxMDY0
IC8qIERlZmF1bHRSZXNvdXJjZUxvYWRQcmlvcml0eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q4
M0QzNjIyMTEyMkEyMTAwNzZFMTFDIC8qIERlZmVycmFibGVUYXNrLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGRDMxNjAyQzEyQjAyNjc2MDBDMUEzNTkgLyogRGVsYXlEU1BLZXJuZWwuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUZEMzE2MDJFMTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheU5vZGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzQTJBQkRCMjREODZERTAwMEUyRDczRCAvKiBEZWxheU9wdGlvbnMu
aCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDMxMTJCMDI2NzYwMEMxQTM1OSAvKiBEZWxheVBy
b2Nlc3Nvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlEREYwOTlFNjQ5MjAwNTZFNTgxIC8q
IERlbGV0ZUZyb21UZXh0Tm9kZUNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMzA5REUx
MDk5RTY0OTIwMDU2RTU4MSAvKiBEZWxldGVTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAq
LywKKwkJCQlGRDE2NjBBNTEzNzg3QzZEMDAxRkZBN0IgLyogRGVub3JtYWxEaXNhYmxlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOTQ3OTQ5NDExRTA0NjNENDAwMDE4RDg1IC8qIERlcHJlY2F0ZWRD
U1NPTUNvdW50ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0Nzk0OTQwMUUwNDYzQ0UwMDAxOEQ4
NSAvKiBEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTQ3OTQ5M0YxRTA0NjNDNjAwMDE4RDg1IC8qIERlcHJlY2F0ZWRDU1NPTVJlY3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk0Nzk0OTNFMUUwNDYzQkUwMDAxOEQ4NSAvKiBEZXByZWNhdGVkQ1NTT01S
R0JDb2xvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ3OTQ5MjUxRTAzMDhBRjAwMDE4RDg1IC8q
IERlcHJlY2F0ZWRDU1NPTVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDc5NDkzRDFFMDQ2
M0I2MDAwMThEODUgLyogRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQk3Q0JEMTI5RTFGOThCOTBFMDAxMjdEMjkgLyogRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdz
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzJDQ0ExMDI2NTVEREIyMDBCOEMwMzUgLyogRGVzdGlu
YXRpb25Db2xvclNwYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTEyMjNDNTI2MDM1NjdEMDBC
MEEwQjYgLyogRGV0YWNoZWRSVENEYXRhQ2hhbm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdD
OUFCRjkxMzU3QTNCRjAwRjU1MDNGIC8qIERldGFpbHNNYXJrZXJDb250cm9sLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBMUVENzc4RDFCRTMyOTQwMDBEQzE3OTEgLyogRGV2aWNlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlDQ0MyQjUxNDE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ2xpZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlDQ0MyQjUxNjE1RjYxMzA2MDA0OENERDYgLyogRGV2aWNlQ29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFGQjFBNTcxMjBBNUQwNjAwREMwMkEwIC8qIERl
dmljZU1vdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFFQUY5N0UxMjE0MzVBNDAw
RTdDMUJGIC8qIERldmljZU1vdGlvbkNsaWVudElPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFG
QjFBNTkxMjBBNUQwNjAwREMwMkEwIC8qIERldmljZU1vdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTMxRkIxQTVCMTIwQTVEMDYwMERDMDJBMCAvKiBEZXZpY2VNb3Rpb25EYXRh
LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMUZCMUE1RDEyMEE1RDA2MDBEQzAyQTAgLyogRGV2aWNl
TW90aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2Qjk1QkY1MjIzMUNGRDYwMDUzQTUw
NCAvKiBEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTU5QThGMUQ4MTFBNjk1MjAwMDFBQzM0QSAvKiBEZXZpY2VPcmllbnRhdGlv
bkNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE0MDM3OUQxMjRCRUE3RjAwQUY0MEU0IC8q
IERldmljZU9yaWVudGF0aW9uQ2xpZW50SU9TLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OTMwOUEx
MzExRjRBRTZBMDAyNTA2MDMgLyogRGV2aWNlT3JpZW50YXRpb25DbGllbnRNb2NrLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1OUE4RjFENjExQTY5NTEzMDAxQUMzNEEgLyogRGV2aWNlT3JpZW50YXRp
b25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OTBFMUI0OTExRTRFRjRCMDA2OUY3
ODQgLyogRGV2aWNlT3JpZW50YXRpb25EYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OUE4NUVB
NDExOUQ2OEVDMDBERUYxRUYgLyogRGV2aWNlT3JpZW50YXRpb25FdmVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDYwRTMwNzcyMjJGNEYwMzAwOUEwNjA2IC8qIERldmljZU9yaWVudGF0aW9uT3JN
b3Rpb25QZXJtaXNzaW9uU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzOTYyOEJGMjM5NTcy
OEYwMDY1OEVDRCAvKiBEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1NzJCNDAxRjIxNzU3QTY0MDAwQUQ0M0UgLyogRGV2aWNlUmVxdWVzdENvbnZl
cnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTcyQjQwM0EyMTc3MjU4MTAwMEFENDNFIC8qIERl
dmljZVJlc3BvbnNlQ29udmVydGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNjc3MjVGRDFBNUIz
QUQ5MDAzQzI0REQgLyogREZBLmggaW4gSGVhZGVycyAqLywKKwkJCQk1Q0Q5RjU2NjFBQTBGNzND
MDBEQTQ1RkYgLyogREZBQnl0ZWNvZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTVDRDlGNTY3MUFB
MEY3NDIwMERBNDVGRiAvKiBERkFCeXRlY29kZUNvbXBpbGVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1Q0Q5RjU2ODFBQTBGNzQ2MDBEQTQ1RkYgLyogREZBQnl0ZWNvZGVJbnRlcnByZXRlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMjZBODA3ODUxQjE4Rjk3NzAwRTIxOUJFIC8qIERGQUNvbWJpbmVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQkyNkE1MTdGRTFBQjkyMjM4MDA2MzM1REYgLyogREZBTWlu
aW1pemVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNjc3MjVGRjFBNUIzQUQ5MDAzQzI0REQgLyog
REZBTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QxOUEyNjgxQTEzRTcwMDAwOEQ2NTBFIC8q
IERpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MkY2NjdFMTI2
MEMyNkFDMDBFRTM2QUQgLyogRGlhZ25vc3RpY0xvZ2dpbmdEb21haW4uaCBpbiBIZWFkZXJzICov
LAorCQkJCTQ2RkNCNjE4MUE3MDgyMEUwMEM1QTIxRSAvKiBEaWFnbm9zdGljTG9nZ2luZ0tleXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzNzJEQjMxMUE2NzgwQTgwMEM2OTdDNSAvKiBEaWFnbm9z
dGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNFQ0FERkM3MTUzNzc4
RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0VDQURGQzkxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUQwQkQ0RjVEMTQwODg1MEYwMDY4MzlCNiAvKiBEaWN0YXRpb25Db21tYW5kSU9T
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5Mzg0MzBCNDI0NzVERTQwMDAzRjk2MTcgLyogRGljdGF0
aW9uQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM3RkYzRDUxQTEwMTJENjAwOEVCQTMx
IC8qIERpY3Rpb25hcnlMb29rdXAuaCBpbiBIZWFkZXJzICovLAorCQkJCTJENTY0NkIwMUI4Rjg0
OTMwMDNDNDk5NCAvKiBEaWN0aW9uYXJ5UG9wdXBJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
REFGMTk5OTE1MTNEMTMxMDA4REIwQzMgLyogRGlyZWN0Q29udm9sdmVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzVENTRDNTFGNERFNTM4MDBFNjA2NzEgLyogRGlyZWN0b3J5RmlsZUxpc3RDcmVh
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDdBMDlEMTIwQTkzQTk3MDAyNDBGQUUgLyogRGlz
YWJsZWRBZGFwdGF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0VEQUFGQzkxOUEyQ0NEQzAw
MzRERkQxIC8qIERpc2tDYWNoZU1vbml0b3JDb2NvYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZF
NUZCRDMxQzNERDUxRTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxQ0FGNTZEQjI1MzAxQUM4MDAxN0I0NzIgLyogRGlzcGxheUxpc3REcmF3R2x5cGhzUmVjb3Jk
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTU1QUQwOTQwMjQwODk2NDAwMERFNEQyRiAvKiBEaXNw
bGF5TGlzdERyYXdpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MjQyQUM5NzI1NzU4
RkUxMDA1QTlDRjEgLyogRGlzcGxheUxpc3RGbHVzaElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTU1QUQwOTNFMjQwODk2MzUwMERFNEQyRiAvKiBEaXNwbGF5TGlzdEltYWdlQnVmZmVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNEQ0MEJDOTI1NTQ2M0JGMDA3MjEzNDkgLyogRGlzcGxh
eUxpc3RJdGVtQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQ0U4RDEyNzI2MTg1QzBFMDBG
QzNBRUYgLyogRGlzcGxheUxpc3RJdGVtQnVmZmVySWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMEZFNUZCRDUxQzNERDUxRTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0SXRlbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUY0Mzc3RDU3MjU1MUM5QzYwMDgwQUJGRSAvKiBEaXNwbGF5TGlzdEl0
ZW1UeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQ0U4RDEyRTI2MTg2MUM0MDBGQzNBRUYgLyog
RGlzcGxheUxpc3RJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZFNUZCRDcxQzNERDUx
RTAwMDdBMkNBIC8qIERpc3BsYXlMaXN0UmVjb3JkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTBG
RTVGQkQ5MUMzREQ1MUUwMDA3QTJDQSAvKiBEaXNwbGF5TGlzdFJlcGxheWVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0OUFGMkQ2OTE0NDM1RDA1MDAxNkE3ODQgLyogRGlzcGxheVJlZnJlc2hNb25p
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDI5RUNDNjE5MkVDQzgzMDA5ODRCNzggLyogRGlz
cGxheVJlZnJlc2hNb25pdG9yQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkJCNUZCRTI2
MDk5MUQyMDA1NDU3MkMgLyogRGlzcGxheVJlZnJlc2hNb25pdG9yRmFjdG9yeS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMkQyOUVDQ0ExOTJGMUYxRDAwOTg0Qjc4IC8qIERpc3BsYXlSZWZyZXNoTW9u
aXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQyOUVDQzgxOTJFQ0M4MzAwOTg0Qjc4IC8q
IERpc3BsYXlSZWZyZXNoTW9uaXRvck1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGQkI1
RkNDMjYwRTlFMDcwMDU0NTcyQyAvKiBEaXNwbGF5VXBkYXRlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkwRjc5MEY0MzI1MTdDRTZFMDA5QkEwMzQgLyogRGlzcGxheVZpZXcuaCBpbiBIZWFkZXJzICov
LAorCQkJCUZEMzE2MDkxMTJCMDI2RjcwMEMxQTM1OSAvKiBEaXN0YW5jZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJODMwNDAyODMyNDlBN0E2MjAwQTkwRDhEIC8qIERpc3RhbmNlTW9kZWxUeXBlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4NDczMEQ3NzEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExp
Z2h0U291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkYzNEZFNjBFODJGODE0MDBGNjI3Q0Qg
LyogRE5TLmggaW4gSGVhZGVycyAqLywKKwkJCQk3RUU2ODQ2RjEyRDI2RTM4MDBFNzMyMTUgLyog
RE5TUmVzb2x2ZVF1ZXVlQ0ZOZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTg1RjQwMDk3NjU3
NjYwMDU4MjZEOSAvKiBEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODZEOTgyRjcxMjVD
MTU0MDAwQUQ5RTNEIC8qIERvY3VtZW50RXZlbnRUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE4MTg1RjQ1MDk3NjU3NjYwMDU4MjZEOSAvKiBEb2N1bWVudEZvbnRMb2FkZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUE4MTg1RjNEMDk3NjU3NjYwMDU4MjZEOSAvKiBEb2N1bWVudEZyYWdtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDkyRjUxMzIyNjBGRkVFMDBGODdCQjMgLyogRG9jdW1l
bnRGdWxsc2NyZWVuLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTgyNkJGMjIzRkI1OTc3MDBCOTIy
QjEgLyogRG9jdW1lbnRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk2NTZEMzczNjBB
REJBNURFMDBBNDU1NEQgLyogRG9jdW1lbnRMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCThB
MTJFMzVEMTFGQTMzMjgwMDI1ODM2QSAvKiBEb2N1bWVudExvYWRUaW1pbmcuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUVEMkJBODNDMDlBMjRCOTEwMDZDMEFDNCAvKiBEb2N1bWVudE1hcmtlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQ0UwNTdGQTYxMjIwNzMxMTAwQTQ3NkQ1IC8qIERvY3VtZW50TWFy
a2VyQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNDRkJBRTgwQjUxNTJFRDAwMDFG
MUQ3IC8qIERvY3VtZW50UGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkxRDJGOEUwMzIzNDQ3
NEVGMDA5OTNCNjggLyogRG9jdW1lbnRQaWN0dXJlSW5QaWN0dXJlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBRDZFNzFBRDE2Njg4OTlEMDAzMjBDMTMgLyogRG9jdW1lbnRTaGFyZWRPYmplY3RQb29s
LmggaW4gSGVhZGVycyAqLywKKwkJCQk2QkRCNURDMjIyN0JEM0I4MDA5MTk3NzAgLyogRG9jdW1l
bnRTdG9yYWdlQWNjZXNzLmggaW4gSGVhZGVycyAqLywKKwkJCQkwQjkwNTYxQTBGMjU3OEJGMDA5
NUZGNkEgLyogRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3
MTAyNUVEMDFGOTlGMENFMDA0QTI1MEMgLyogRG9jdW1lbnRUaW1lbGluZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNzE3MjlGN0IyMEYzQkE0OTAwODAxQ0U2IC8qIERvY3VtZW50VGltZWxpbmVPcHRp
b25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTgxQTE2QzI0NEYwRjQwMDA3RDhBMjQgLyogRG9j
dW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODE4NUYzOTA5
NzY1NzY2MDA1ODI2RDkgLyogRG9jdW1lbnRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzM4
ODlBMTExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFBOEY2QkMzMERCNTVDREMwMDFEQjc5NCAvKiBET01BcHBsaWNhdGlvbkNhY2hlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0MTM4MEMyNzFGMzQzNkFDMDAxNTVGREEgLyogRE9NQ2FjaGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTQxRkFCRDJEMUY0REZFNEEwMDZBNkM5NyAvKiBET01DYWNoZUVu
Z2luZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEzODBDMjkxRjM0MzZBQzAwMTU1RkRBIC8qIERP
TUNhY2hlU3RvcmFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEJEQTNGRkUyMTUxQjZGNTAwRkQ2
NjA0IC8qIERPTUNTU0N1c3RvbVByb3BlcnR5RGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRkM5QTBGNzUxNjQwOTRDRjAwM0Q2QjhEIC8qIERPTUNTU05hbWVzcGFjZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNEI2QjVDQkQyMTY0MEVGRjAwNjAzODE3IC8qIERPTUNTU1BhaW50V29ya2xl
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEJEQTNGRkYyMTUxQjZGNTAwRkQ2NjA0IC8qIERPTUNT
U1JlZ2lzdGVyQ3VzdG9tUHJvcGVydHkuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBQUJBMjVBMTRC
QzYxMzMwMEFBOUExMSAvKiBET01FZGl0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNjBENkU5
MEQyOEQ4MzQwMEI5OTE4RiAvKiBET01FeGNlcHRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTgz
OTk0NzBDMUY1MEI2M0UwMEU5RDg2QiAvKiBET01GaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLywK
KwkJCQkyRUQ2MDlCRDExNDVCMDcxMDBDODY4NEUgLyogRE9NRm9ybURhdGEuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTBGOURBQTBGMUZEMUM2NkEwMDc5QzVCMiAvKiBET01HQ091dHB1dENvbnN0cmFp
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2MjE4QUNCMUY3MkQ2NEUwMDU3NEZCRSAvKiBET01I
aWdoUmVzVGltZVN0YW1wLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODE4NUYzQjA5NzY1NzY2MDA1
ODI2RDkgLyogRE9NSW1wbGVtZW50YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUUzQzk5QTA5
MURDM0Q0MUMwMDc5NEFEMyAvKiBET01KSVRDaGVja0RPTS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTMxNTBFQTcxREE3MjE5MzAwMTk0MDEyIC8qIERPTUpJVEhlbHBlcnMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUUzQTc3NjY3MURDODVEMjgwMEI2OTBEOCAvKiBET01KSVRJRExDb252ZXJ0LmggaW4g
SGVhZGVycyAqLywKKwkJCQlFM0E3NzY2ODFEQzg1RDI4MDBCNjkwRDggLyogRE9NSklUSURMVHlw
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM1ODAyQjYxREM4NDM1RDAwQTk3NzNDIC8qIERPTUpJ
VElETFR5cGVGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNkFDRUNBMUVDQTk1NjkwMDRC
RDAxMiAvKiBET01NYXRyaXguaCBpbiBIZWFkZXJzICovLAorCQkJCTdDQkJCQ0M3MUY1NjA1ODEw
MDVFRkFBQyAvKiBET01NYXRyaXgyREluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNkFDRUNC
MUVDQTk1NkQwMDRCRDAxMiAvKiBET01NYXRyaXhJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQk4
MzZBQ0VDMzFFQ0E2MkM4MDA0QkQwMTIgLyogRE9NTWF0cml4UmVhZE9ubHkuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUE5QzZFNEU0MEQ3NDVFMDUwMDY0NDJFOSAvKiBET01NaW1lVHlwZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTlDNkU0RTgwRDc0NUUxODAwNjQ0MkU5IC8qIERPTU1pbWVUeXBlQXJy
YXkuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQ0U1M0U4MEE4RDE4RTcwMDIyOTQ3RCAvKiBET01Q
YXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0QjQyMkM0MjIwQzA1NjgwMDlFMUU3RCAvKiBE
T01QYXN0ZUFjY2Vzcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0E1NDg4MTcxNEU0MzJBMTAwNkFF
MDVBIC8qIERPTVBhdGNoU3VwcG9ydC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTlDNkU0RUMwRDc0
NUUyQjAwNjQ0MkU5IC8qIERPTVBsdWdpbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTlDNkU0RjAw
RDc0NUUzODAwNjQ0MkU5IC8qIERPTVBsdWdpbkFycmF5LmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RjQ5NjY5RDFEQjQwOEMxMDBBMjc0QkIgLyogRE9NUG9pbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTBGNDk2NkEzMURCNDA5MTAwMEEyNzRCQiAvKiBET01Qb2ludEluaXQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTBGNDk2NjlGMURCNDA4QzEwMEEyNzRCQiAvKiBET01Qb2ludFJlYWRPbmx5LmggaW4g
SGVhZGVycyAqLywKKwkJCQk3QzUxNkFENDFGMzUyNTIwMDAzNEI2QkYgLyogRE9NUHJvbWlzZVBy
b3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkY4MzVDMzFFRTM1NERBMDA4QjRDQzcgLyogRE9N
UXVhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZGODM1QzUxRUUzNTREQTAwOEI0Q0M3IC8qIERP
TVF1YWRJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjQ3MTBBRjFEQjU2QUZDMDAyRENFQzMg
LyogRE9NUmVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY0NzEwQjExREI1NkFGQzAwMkRDRUMz
IC8qIERPTVJlY3RJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NjgzNDRFMDFFRERGQUFBMDBC
Nzc5NUIgLyogRE9NUmVjdExpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNDcxMEIzMURCNTZB
RkMwMDJEQ0VDMyAvKiBET01SZWN0UmVhZE9ubHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNUE4
Njg1MEMzMzY3NjAwMEVFQTY0OSAvKiBET01TZWxlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUM1NDQyNzRCMTFBNTdFN0EwMDYzQTc0OSAvKiBET01TdHJpbmdMaXN0LmggaW4gSGVhZGVycyAq
LywKKwkJCQlCQzY0NjQwQTExRDdGMzA0MDA2NDU1QjAgLyogRE9NU3RyaW5nTWFwLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkxODg2MDRCNDBGMkU2NTRBMDAwQjY0NDMgLyogRE9NVGltZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNFMUE1MDFGMjJENTM1MDkwMENCQzkyNyAvKiBET01UaW1lckhvbGRp
bmdUYW5rLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNUZENjlFMDEyODQ1RDQzMDBCMkJFQjMgLyog
RE9NVGltZVN0YW1wLmggaW4gSGVhZGVycyAqLywKKwkJCQk3NkZDMkIwQzEyMzcwREEwMDA2QTk5
MUEgLyogRE9NVG9rZW5MaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRTM3REZEQjEyREJBRkI4
MDBBNkIyMzMgLyogRE9NVVJMLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDlERTE4MjE3QUFENkE0
MDBFQTM4NkQgLyogRE9NVVJMTWVkaWFTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0MDNC
OTk3MDlFQjEzQUYwMDc5N0M3RiAvKiBET01XaW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCTUx
RkEyRDc4MTUyMTMyQjMwMEMxQkEwQiAvKiBET01XaW5kb3dFeHRlbnNpb24uaCBpbiBIZWFkZXJz
ICovLAorCQkJCTk3RDJBRDA0MTRCODIzQTYwMDkzREYzMiAvKiBET01XaW5kb3dQcm9wZXJ0eS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQUEyQTVBRDYxNkE0ODYxNjAwOTc1QTI1IC8qIERPTVdpbmRv
d1NwZWVjaFN5bnRoZXNpcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDQ0JCNDkxNTFGODMxNjAw
QUI3Q0U5IC8qIERPTVdpbmRvd1dlYkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzUz
REEyRTExNDMxMjFFMDAwRDgxN0UgLyogRE9NV3JhcHBlcldvcmxkLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5M0E4MDYxNTFFMDNCNTFDMDA4QTFGMjYgLyogRG91YmxlUmFuZ2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUZEMTc2MkU0MTc2Njg2RUEwMEQ4MzZBOCAvKiBEb3duU2FtcGxlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTcxODc2MEUwQjJBMTIwMTAwQTE2RUNFIC8qIERyYWdBY3Rpb25zLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBN0NBNTk2MzBCMjdDMUYyMDBGQTAyMUQgLyogRHJhZ0NsaWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdDQTU5NUQwQjI3QkQ5RTAwRkEwMjFEIC8qIERyYWdD
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBN0I2RTY5RjBCMjkxQTk2MDBEMDUyOUYg
LyogRHJhZ0RhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RTBDMERFMjNDMDA2RTkwMDVFNDdB
RSAvKiBEcmFnRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE3Q0ZCM0QyMEI3RUQxMEEwMDcw
QzMyRCAvKiBEcmFnSW1hZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRjVFNEQ5MUU1Njc3QTkw
MDRBMUYwMSAvKiBEcmFnSXRlbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODFGNjVGRjYxMzc4OEZB
QTAwRkY2RjJEIC8qIERyYWdTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEwQTkxRjYyNEQz
MkREQzAwQkZEODlDIC8qIER1YWxzaG9jazNISURHYW1lcGFkLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk5M0Q2QjdBODI1NTFENDFGMDA1OEREM0EgLyogRHVtbXlTcGVlY2hSZWNvZ25pdGlvblByb3Zp
ZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzA4NURGODI2RTgyMkM3MDAwRUM2QTcgLyogRHVt
bXlTdG9yYWdlUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxQkE2NkYxMTc0MkJEODYw
MEMyMDI1MSAvKiBEeW5hbWljTGlua2VySW50ZXJwb3NpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUZENkVEMkM4MTM2QjhFNjYwMDNDRjA3MiAvKiBEeW5hbWljc0NvbXByZXNzb3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUZENTM3MzU3MTM3QjY1M0IwMDAwOERDRSAvKiBEeW5hbWljc0NvbXByZXNz
b3JLZXJuZWwuaCBpbiBIZWFkZXJzICovLAorCQkJCUZENkVEMkM0MTM2QjhFNDIwMDNDRjA3MiAv
KiBEeW5hbWljc0NvbXByZXNzb3JOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzdDMEI3NjI0
REIzODUwMDA1RDU5NTkgLyogRHluYW1pY3NDb21wcmVzc29yT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM0QTUzMjMyNTYwNTI3NjAwMjhDNTkyIC8qIEVkaXRhYmxlTGlua0JlaGF2aW9y
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURFMjA5OUU2NDkyMDA1NkU1ODEgLyogRWRpdEFj
dGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlERTQwOTlFNjQ5MjAwNTZFNTgxIC8qIEVk
aXRDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURFODA5OUU2NDkyMDA1NkU1ODEg
LyogRWRpdGluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEYxNTM0REUxMUI1MzJFQzAwMjFGRDg2
IC8qIEVkaXRpbmdCZWhhdmlvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEYxNTM0RTAxMUI1MzMw
MjAwMjFGRDg2IC8qIEVkaXRpbmdCZWhhdmlvclR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTNB
QzY0OEIyMTI5RTE0NjUwMEMzRUIyNSAvKiBFZGl0aW5nQm91bmRhcnkuaCBpbiBIZWFkZXJzICov
LAorCQkJCTlCQUI2QzZDMTI1NTA2MzEwMDE2MjZENCAvKiBFZGl0aW5nU3R5bGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTRCMzA0M0NEMEFFMDM3M0IwMEE4MjY0NyAvKiBFZGl0b3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTFBRjMyNjc5MEQ3OEI5NDQwMDY4RjBDNCAvKiBFZGl0b3JDbGllbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTRCQUU5NUIxMEIyRkE5Q0UwMEFFRDhBMCAvKiBFZGl0b3JEZWxl
dGVBY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRkRBRkNBMEIxMTMwNzQwMEUyNzQ2RiAv
KiBFZGl0b3JJbnNlcnRBY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMkJFNDdEMUZFODY0
NTgwMDIwMzFDQyAvKiBFZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4QzRBODA3
MDlENTYzMjcwMDAzQUM4RCAvKiBFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEFFN0Mx
QTE3RDIzMjM1MDAwOUZCMzEgLyogRWxlbWVudEFuY2VzdG9ySXRlcmF0b3IuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUU0NDBBQTk2MUM2ODQyMDgwMEEyNjVDQyAvKiBFbGVtZW50QW5kVGV4dERlc2Nl
bmRhbnRJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzExOTQ2NTYyNDE4MUVBMTAwNDY2
QzExIC8qIEVsZW1lbnRBbmltYXRpb25SYXJlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ2
QTJCMUUxN0NBNzZCMTAwMERCQ0Q4IC8qIEVsZW1lbnRDaGlsZEl0ZXJhdG9yLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkzMTNCQ0UxQzIzNUUzQkU1MDBGQzM5RTUgLyogRWxlbWVudENvbnRleHQuaCBp
biBIZWFkZXJzICovLAorCQkJCUI1QjdBMTcxMTdDMTBBQzAwMEU0QUEwQSAvKiBFbGVtZW50RGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQyQkVCMzEyMjM0QTMzNTAwNTU0NENBIC8qIEVsZW1l
bnRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEFFN0MxNjE3RDFCQjk1MDAwOUZC
MzEgLyogRWxlbWVudEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDAxQzI3NTE3Q0U1
M0VDMDBDNDFBMzUgLyogRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNjNGNUQ0RjcwRThDNEI3MTAwQzBCRDA0IC8qIEVsZW1lbnRSYXJlRGF0YS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRkJEQjYxOUYxNkQ2MDM2NTAwQkIzMzk0IC8qIEVsZW1lbnRSdWxlQ29s
bGVjdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEQ1OEVCQjE3QjhGMTI4MDBDQkRDQTggLyog
RWxlbWVudFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjU1QjNEQkMxMjUxRjEyRDAw
M0VGMjY5IC8qIEVtYWlsSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjU1OTlBNTBE
MDBEOEJBMDBCQjgyNUMgLyogRW1wdHlDbGllbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTRE
RURFNzFGOUZFOTFFMDA0N0M0MEQgLyogRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTE1QkUxOTAxRDU0RjVGQjAwREQ3QzY4IC8qIEVtcHR5R2FtZXBhZFByb3Zp
ZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5Mzg0OUMxRjI0QkU0MDRCMDA0NDhENUEgLyogRW1w
dHlTY3JpcHRFeGVjdXRpb25Db250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQlERkM2MTBBNjI0
RkIyQTdEMDA2MjU0QzggLyogRW5jb2RpbmdUYWJsZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
NzdDM0Q3MURFRjg1MEEwMEE1MEJGQSAvKiBFbmRpbmdUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGNDAzRTc4NzIzNjNCNThDMDAwNDQ1NTAgLyogRW50ZXJLZXlIaW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQkxRDJGOEUwNDIzNDQ3NTE2MDA5OTNCNjggLyogRW50ZXJQaWN0dXJlSW5QaWN0dXJl
RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDkzMTJCMDI2RjcwMEMxQTM1OSAvKiBF
cXVhbFBvd2VyUGFubmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzcxQUMzQjFGNTA5QkU0MDBG
QkYyODQgLyogRXJyb3JDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkVDRjdBRTIxMDE2
MkI1ODAwNDI3REU3IC8qIEVycm9yRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg1MDMxQjQy
MEE0NEVGQzcwMEY5OTJFMCAvKiBFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEzOEQzMzUx
MjQ0MDU0ODAwMzIzRDMzIC8qIEV2ZW50Q29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE4
QTA2RDAxMzNDMDRENTAwQ0QzNzlDIC8qIEV2ZW50RGlzcGF0Y2hlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTNDMDlBNTMwQjA2NERCMzAwNUFCRDREIC8qIEV2ZW50SGFuZGxlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTcwQjcyQTYxNDUwMDhFQjAwRjAwQTM3IC8qIEV2ZW50SGVhZGVycy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMkExREE4OUI5MjAwRkZEOTZCIC8qIEV2ZW50SW5pdC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTcwQjcyOEExNDRGRkFDNjAwRjAwQTM3IC8qIEV2ZW50SW50
ZXJmYWNlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1RkJDNDUwOUJBMDBCOTAwRTIzMEIxIC8q
IEV2ZW50TGlzdGVuZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUFENDQ5NUY0MTQxRkMwODkwMDU0
MUVERiAvKiBFdmVudExpc3RlbmVyTWFwLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkJEMDVDNjI1
QkI2RTZDMDAyMjVGMzAgLyogRXZlbnRMaXN0ZW5lck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTQ2RjAyQTFBMjM3MzdGODMwMDEwNkE2NCAvKiBFdmVudExvb3AuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzRkU3Q0E4MURBOUYxQjYwMDM3MjM3QyAvKiBFdmVudE1vZGlmaWVySW5pdC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOTM5ODg1QzQwOEI3RTNEMTAwRTcwN0M0IC8qIEV2ZW50TmFtZXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTlCNzE0RTIxMUM5MTE2NjkwMEFDMEU5MiAvKiBFdmVudFBh
dGguaCBpbiBIZWFkZXJzICovLAorCQkJCThGNjc1NjFCMTI4OEIxN0IwMDQ3QUNBMyAvKiBFdmVu
dFF1ZXVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEE4RDIxNjIyNTc4REI3MDBBODQ2M0MgLyog
RXZlbnRSZWdpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUUwRkVGMzcyQjE3QzUzRUFDMUMxRkJF
RSAvKiBFdmVudFNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEyRURCN0IwQjMwOEE3ODAw
MjcwNEI2IC8qIEV2ZW50VGFyZ2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NEIzNDlBMjIyRjg2
RTc1MDBENDdCQ0YgLyogRXZlbnRUYXJnZXRDb25jcmV0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTdBQTNDQTUxNDUyMzdDQzAwM0UxREE2IC8qIEV2ZW50VGFyZ2V0SGVhZGVycy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTdBQTNDQTYxNDUyMzdDQzAwM0UxREE2IC8qIEV2ZW50VGFyZ2V0SW50ZXJm
YWNlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjYyRUM0MUExRDA3OEZCOTAwQkE3OEZDIC8qIEV2
ZW50VHJhY2tpbmdSZWdpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0QxOTYzMzFENkNBQjgy
MDBGQzdFNDcgLyogRXhjZXB0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzVGQkNGMjA5QkEx
NDNCMDBFMjMwQjEgLyogRXhjZXB0aW9uQ29kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFGNjQ1
NjIxRjQ1Mzk4RjAwQjU0REVEIC8qIEV4Y2VwdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTJEMjkzODZCMjM1RjZCNjkwMEM3RjNCMiAvKiBFeGNlcHRpb25EZXRhaWxzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5M0QxOTYzMTFENkNBQjc2MDBGQzdFNDcgLyogRXhjZXB0aW9uT3IuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzN0ZCMzQ1MUY5RUEwNkQwMEQwRkMzMSAvKiBFeHRlbmRhYmxlTWVz
c2FnZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTY3RDJBOTEyODBFOEJEMDA4NzU4Rjcg
LyogRXh0ZW5zaW9uc0dMLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTcyRjU1MDIyOURDRDE3MDBC
M0UxNTEgLyogRXh0ZW5zaW9uc0dMQU5HTEUuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0N0UyNzY1
MTYwMzZFRDIwMEVFMkFGQiAvKiBFeHRlbnNpb25TdHlsZVNoZWV0cy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNUM0MzA0QjExOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNoYWRlclRleHR1cmVMT0QuaCBp
biBIZWFkZXJzICovLAorCQkJCTc3Mjg2OTRGMTRGODg4MjUwMEY0ODREQyAvKiBFWFRUZXh0dXJl
RmlsdGVyQW5pc290cm9waWMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQTA4MjlDMjI5MzVGM0Qw
MDg0MjZFMCAvKiBGZWF0dXJlUG9saWN5LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNzVFOEI4OTBF
MURFMkQ2MDA3RjI0ODEgLyogRkVCbGVuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTc1RThCOEIw
RTFERTJENjAwN0YyNDgxIC8qIEZFQ29sb3JNYXRyaXguaCBpbiBIZWFkZXJzICovLAorCQkJCUE3
NUU4QjhEMEUxREUyRDYwMDdGMjQ4MSAvKiBGRUNvbXBvbmVudFRyYW5zZmVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBNzVFOEI4RjBFMURFMkQ2MDA3RjI0ODEgLyogRkVDb21wb3NpdGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTg0NzMwRDc5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRUNvbnZvbHZlTWF0
cml4LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDczMEQ3QjEyNDhGMEIzMDBEM0E5QzkgLyogRkVE
aWZmdXNlTGlnaHRpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0NzMwRDdEMTI0OEYwQjMwMEQz
QTlDOSAvKiBGRURpc3BsYWNlbWVudE1hcC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM1OEU4ODEx
MzYwQTMxNzAwRTQ3NDhDIC8qIEZFRHJvcFNoYWRvdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ3
MzBEN0YxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRmxvb2QuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0
ODAxOTU1MTA4QkFGQjMwMENCMkIxRiAvKiBGRUdhdXNzaWFuQmx1ci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJODQ3MzBEODExMjQ4RjBCMzAwRDNBOUM5IC8qIEZFTGlnaHRpbmcuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTg0NzMwRDgzMTI0OEYwQjMwMEQzQTlDOSAvKiBGRU1lcmdlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4NDczMEQ4NTEyNDhGMEIzMDBEM0E5QzkgLyogRkVNb3JwaG9sb2d5LmggaW4g
SGVhZGVycyAqLywKKwkJCQk4NDczMEQ4NzEyNDhGMEIzMDBEM0E5QzkgLyogRkVPZmZzZXQuaCBp
biBIZWFkZXJzICovLAorCQkJCTg0NzMwRDg5MTI0OEYwQjMwMEQzQTlDOSAvKiBGRVNwZWN1bGFy
TGlnaHRpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxN0E1MzVCMUY1ODhBNEMwMERDREMwQSAv
KiBGZXRjaEJvZHlDb25zdW1lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEyOUM5OTcxRjU5Qjk2
MzAwOUQ3NDAzIC8qIEZldGNoQm9keVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFEMTI5
REIxRjNEMTQzODAwRDE1RTQ3IC8qIEZldGNoSGVhZGVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDE2RTBCM0EyMDlCQzNDQjAwNEE5NUQ5IC8qIEZldGNoSWRlbnRpZmllci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQ0VCQjhDMzMyMDc4NkRDQjAwMDM5NTQ3IC8qIEZldGNoSWRpb21zLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MTYxRTJENTFGRTQ4REM1MDBFQzJFOTYgLyogRmV0Y2hMb2FkZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTUxN0E1MzU4MUY1ODg5RTgwMERDREMwQSAvKiBGZXRjaExvYWRl
ckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFBRDc1M0ExQ0VGNkJEMTAwQTMxNDg2IC8q
IEZldGNoT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NFMTkxNEQxRjJBOUFGQjAwMjcy
Rjc4IC8qIEZldGNoUmVmZXJyZXJQb2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3NTMzRTA4
MjRDNkM1OTgwMDNFRjJEMyAvKiBGZXRjaFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
RTE5MTVBMUYyQTlCMzQwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RDYWNoZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJN0NFMTkxNTUxRjJBOUIxRDAwMjcyRjc4IC8qIEZldGNoUmVxdWVzdENyZWRlbnRp
YWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0UxOTE0QTFGMkE5OEI5MDAyNzJGNzggLyogRmV0
Y2hSZXF1ZXN0SW5pdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NFMTkxNTExRjJBOUIwQTAwMjcy
Rjc4IC8qIEZldGNoUmVxdWVzdE1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDRTE5MTYwMUYy
QTlCNEYwMDI3MkY3OCAvKiBGZXRjaFJlcXVlc3RSZWRpcmVjdC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTcwOTNEMTMyNEM5N0M4RjAwODZDNTJEIC8qIEZldGNoUmVzcG9uc2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTg0NzMwRDhCMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVRpbGUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTg0NzMwRDhEMTI0OEYwQjMwMEQzQTlDOSAvKiBGRVR1cmJ1bGVuY2UuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUZEMzE2MDk1MTJCMDI2RjcwMEMxQTM1OSAvKiBGRlRDb252b2x2ZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDk3MTJCMDI2RjcwMEMxQTM1OSAvKiBGRlRGcmFt
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdCQUYyOEMyMTY3RDMxNjAwOEU5NTRFIC8qIEZpZG9D
b25zdGFudHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3M0Y1MzMyMjE2ODA2RTEwMDQ1NTg3QSAv
KiBGaWRvSGlkTWVzc2FnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdCQUYyOEUyMTY3RDMzOTAw
OEU5NTRFIC8qIEZpZG9IaWRQYWNrZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3M0Y1MzM3MjE2
ODBEMTUwMDQ1NTg3QSAvKiBGaWRvUGFyc2luZ1V0aWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
NzZENkM4MTEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM4
Rjg2REExRjUwOUU3NDAwRThDRkM1IC8qIEZpbGVDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDY2Qzc3MkIwQUI2MDNCNzAwMjM4Q0M0IC8qIEZpbGVDaG9vc2VyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1MzUxRDRCMTFERjkxNkI0MDA4MDEwQ0QgLyogRmlsZUhhbmRsZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUE4OEE5MDUxNzU1M0NENzAwMEM3NEY5IC8qIEZpbGVJY29uTG9hZGVyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0RCRTEyNTFGMTJEMDAzRUYyNjkgLyogRmlsZUlucHV0
VHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc2RDZDODYxMjJCOEEzRDAwMUZEMUY3IC8qIEZp
bGVMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QTA5Q0VGMTFGMDIwNjlCMDBFOTNCREIgLyog
RmlsZU1vbml0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3NkQ2Qzg5MTIyQjhBM0QwMDFGRDFG
NyAvKiBGaWxlUmVhZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRTc1ODQxRTEyNzc5QURBMDA2
MjYyOEIgLyogRmlsZVJlYWRlckxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU3NTg0MUYx
Mjc3OUFEQTAwNjI2MjhCIC8qIEZpbGVSZWFkZXJMb2FkZXJDbGllbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTJFREYzNjlEMTIyQzk0QjQwMDJGN0Q0RSAvKiBGaWxlUmVhZGVyU3luYy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMkVGMUJGRUIxMjFDOUY0MjAwQzI3NjI3IC8qIEZpbGVTdHJlYW0uaCBp
biBIZWFkZXJzICovLAorCQkJCTJFRjFCRkY5MTIxQ0IwQ0UwMEMyNzYyNyAvKiBGaWxlU3RyZWFt
Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0ZCMzM3MTFGNTA4QTU0MDA5ODZFNTQgLyog
RmlsZVN5c3RlbURpcmVjdG9yeUVudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQ0M0U4NjI2
RTk5NUJEMDA1ODUzOEYgLyogRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJODMwMzM1MDIxRjU0OTA1NzAwNERGNzA3IC8qIEZpbGVTeXN0ZW1EaXJlY3RvcnlS
ZWFkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzMDMzNTAzMUY1NDkwNUEwMDRERjcwNyAvKiBG
aWxlU3lzdGVtRW50cmllc0NhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0ZCMzM3MzFG
NTA4QTU4MDA5ODZFNTQgLyogRmlsZVN5c3RlbUVudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk4
MzhGODZEQjFGNTA5RTdCMDBFOENGQzUgLyogRmlsZVN5c3RlbUVudHJ5Q2FsbGJhY2suaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzRkIzMzc1MUY1MDhBNUIwMDk4NkU1NCAvKiBGaWxlU3lzdGVtRmls
ZUVudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQ0M0U4NzI2RTk5NUMwMDA1ODUzOEYgLyog
RmlsZVN5c3RlbUZpbGVIYW5kbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzNDQzRTg4MjZFOTk1
QzQwMDU4NTM4RiAvKiBGaWxlU3lzdGVtSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVF
QjY5RjBFODFEQUVCMDBCMjU5NjUgLyogRmlsbExheWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3
MTJCRTQ4MzFGRTg2NUREMDAyMDMxQ0MgLyogRmlsbE1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTg0NUU3MkY4MEZEMjYxRUUwMEE4N0Q3OSAvKiBGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTA4QzkyNTFBMEZDQzdDNEEwMDQ4MERFQyAvKiBGaWx0ZXJFZmZlY3QuaCBpbiBIZWFkZXJzICov
LAorCQkJCTJDODU2NTM0MjRDMEY3M0MwMEEzNzY3MyAvKiBGaWx0ZXJFZmZlY3RSZW5kZXJlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMkNBQTRBM0EyNEJFMThCNzAwOURFRTcwIC8qIEZpbHRlckVm
ZmVjdFJlbmRlcmVyQ29yZUltYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUVDRUI2RTE0OTk3
OTBEMDBDREQzQTQgLyogRmlsdGVyT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUVD
RUI3MDE0OTk3OTBEMDBDREQzQTQgLyogRmlsdGVyT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzcyQzAwRDkxMjk2MTlGODAwNUM5NTc1IC8qIEZpbmRPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBOENGRjA0RjBBMTU0RjA5MDAwQTQyMzQgLyogRml4ZWRUYWJsZUxheW91dC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNkZCN0QyREQyNTBGRDgyODAwMDIwN0FBIC8qIEZsZXhGb3Jt
YXR0aW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkZGOTExRjcyNjQ4N0ZDODAwMjAy
MURGIC8qIEZsZXhGb3JtYXR0aW5nR2VvbWV0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGQjdE
MkRFMjUwRkQ4MkUwMDAyMDdBQSAvKiBGbGV4Rm9ybWF0dGluZ1N0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk2RkZEQzQ0MjIxMkVGRjE3MDBBOUNBOTEgLyogRmxvYXRBdm9pZGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCQzA3M0JBQTBDMzk5QjFGMDAwRjU5NzkgLyogRmxvYXRDb252ZXJzaW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTVDRkE4NjIwOEI5MDY2MDAxRTY5OTEgLyogRmxvYXRp
bmdDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5QTUyOEU4NDE3RDdGNTJGMDBBQTk1MTgg
LyogRmxvYXRpbmdPYmplY3RzLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTY5OTg3MjE5MjA4N0U3
MDA2OTM2QkQgLyogRmxvYXRpbmdQb2ludEVudmlyb25tZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxMTVDRkE4MjIwOEI4RURBMDAxRTY5OTEgLyogRmxvYXRpbmdTdGF0ZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMkU4ODhDQUEyNUY2QTQxMTAwNTc5MTRBIC8qIEZsb2F0TGluZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjI3NTM1NjkwQjA1MzgxNDAwMkNFNjRGIC8qIEZsb2F0UG9pbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyRTI3Q0EwMEIwRjJCMDkwMEYxN0M3QiAvKiBGbG9hdFBvaW50M0Qu
aCBpbiBIZWFkZXJzICovLAorCQkJCTZFQzQ4MEEyMTZFQTYzOEEwMEE0OERDQiAvKiBGbG9hdFBv
bHlnb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTBGRDcyMzgyMEVDOEJEOTMwMENBNURENyAvKiBG
bG9hdFF1YWQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyNzUzNTZCMEIwNTM4MTQwMDJDRTY0RiAv
KiBGbG9hdFJlY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFMEU1NjlDMTgzQkZGRTYwMEUwRThE
NSAvKiBGbG9hdFJvdW5kZWRSZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjc1MzU2RDBCMDUz
ODE0MDAyQ0U2NEYgLyogRmxvYXRTaXplLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OENEMzVDQjE4
RUI0QzM5MDBCOUYzQUMgLyogRmxvYXRTaXplSGFzaC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQ5
OTNCRTYwQjJGMkIxQzAwNTA0OTdGIC8qIEZvY3VzQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDYyMjg3ODQwQjREQjMyMjAwMEMzNERGIC8qIEZvY3VzRGlyZWN0aW9uLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCNkQ5RDIzNTE0RUFCRDI2MDA5MEQ3NUUgLyogRm9jdXNFdmVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQUFERUZFNDUyNUFGNEZENjAwNDBERDY3IC8qIEZvY3VzT3B0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RBNjUwRDAwNkNENjAwRUY2RjI2IC8qIEZvbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTFBQzJEODlEMUIxRTI5MUYwMEQ1MkU4NyAvKiBGb250QW50
aWFsaWFzaW5nU3RhdGVTYXZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjRFNTdFREMyMTNGM0Y1
RjAwNEVBOThFIC8qIEZvbnRBdHRyaWJ1dGVDaGFuZ2VzLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
NDhEMkE3RTIxNTcxODI2MDBDNjc1MkIgLyogRm9udEF0dHJpYnV0ZXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDQjkyRDRGMTI5MzU1MEIwMEM4Mzg3RiAvKiBGb250QmFzZWxpbmUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIyQzNEQTYzMEQwMDZDRDYwMEVGNkYyNiAvKiBGb250Q2FjaGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUMyNDU4RTYzMUZFODk3QjAwMDU5NDc1OSAvKiBGb250Q2FjaGVDb3Jl
VGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RBNjEwRDAwNkNENjAwRUY2RjI2IC8qIEZv
bnRDYXNjYWRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEU4QjRGNTIxNkI5NTY1MDBCODgzNEQg
LyogRm9udENhc2NhZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RBNjgw
RDAwNkNENjAwRUY2RjI2IC8qIEZvbnRDYXNjYWRlRm9udHMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUIyQUZGQzdFMEQwMEE1QzEwMDMwMDc0RCAvKiBGb250Q3VzdG9tUGxhdGZvcm1EYXRhLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCMkMzREE2NjBEMDA2Q0Q2MDBFRjZGMjYgLyogRm9udERlc2NyaXB0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQzY2MjYxMTFDNkU3Q0E2MDBBQjUyN0MgLyogRm9u
dEZhY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTFDMjRFRUE1MUM3MjlDRTQwMDgwRjhGQyAvKiBG
b250RmFjZVNldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUMxMkFDMkIxRUU3NzhBRTAwNzlFMEEw
IC8qIEZvbnRGYW1pbHlTcGVjaWZpY2F0aW9uQ29yZVRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUU0MkVFM0E3MTc1NzZFNTUwMEVFRThDRiAvKiBGb250R2VuZXJpY0ZhbWlsaWVzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk2NTg0MzY4NjBBRTAxQjc0MDBFNTM3NDMgLyogRm9udExvYWRSZXF1ZXN0
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzRBNTMyRjI1NjA1N0NEMDAyOEM1OTIgLyogRm9udExv
YWRUaW1pbmdPdmVycmlkZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg0NTY4MDgxMkI5MERBNjAw
OTYwQTlGIC8qIEZvbnRNZXRyaWNzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCNTMyMEQ2QjEyMkEy
NEU5MDAyRDE0NDAgLyogRm9udFBsYXRmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzcx
RjRGRkMwRDI1RTdGMzAwRUNFMEQ1IC8qIEZvbnRSYW5nZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDNEE1MzM5MjU2MDYzOTgwMDI4QzU5MiAvKiBGb250UmVuZGVyaW5nTW9kZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQzJBQjBBRjcxRTZCM0M2QzAwMTM0OEM1IC8qIEZvbnRTZWxlY3Rpb25BbGdv
cml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNEQTZCMEQwMDZDRDYwMEVGNkYyNiAvKiBG
b250U2VsZWN0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0MTkwNDFGMUNDNjQ4NkIwMEMzNUY1
RCAvKiBGb250U2VsZWN0b3JDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0OEQyQTZDMjE1
NjIzQjQwMEM2NzUyQiAvKiBGb250U2hhZG93LmggaW4gSGVhZGVycyAqLywKKwkJCQk0QTZFOUZD
ODEzQzE3RDU3MDA0NkE3RjggLyogRm9udFRhZ2dlZFNldHRpbmdzLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDMjAxNUMwQTFCRTZGRUIyMDA4MjIzODkgLyogRm9udFZhcmlhbnRCdWlsZGVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQzRBNTMzMTI1NjA1OTAzMDAyOEM1OTIgLyogRm9yY2VkQWNjZXNz
aWJpbGl0eVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0QTBEQTJGRjEyOUIyNDE5MDBBQjYx
RTEgLyogRm9ybUFzc29jaWF0ZWRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlEMDVDRUQy
QTBBNDBCQjJDMDBDNUFGMzggLyogRm9ybWF0QmxvY2tDb21tYW5kLmggaW4gSGVhZGVycyAqLywK
KwkJCQk3Q0U2Q0JGQjE4N0YzNzA3MDBENDZCRjUgLyogRm9ybWF0Q29udmVydGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk2RjFFODNBNjI2NjU4ODhDMDAyRTlEMjggLyogRm9ybWF0dGluZ0NvbnN0
cmFpbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTVDRkE2QTIwOEFGN0QwMDAxRTY5OTEgLyog
Rm9ybWF0dGluZ0NvbnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ3NUM4OUE0MjY1MEFDM0Mw
MEYzQjQ1NiAvKiBGb3JtYXR0aW5nR2VvbWV0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGNTZC
NDQ3MjY0NzlFNjIwMEFBRTI1NyAvKiBGb3JtYXR0aW5nUXVpcmtzLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxMTVDRkE3NjIwOEFGRTMwMDAxRTY5OTEgLyogRm9ybWF0dGluZ1N0YXRlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlGNTA2NjRGODE1N0Y1MkRDMDBBQzIyNkYgLyogRm9ybUNvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxNEM3NjcwMENFOTIzQTEwMDdFRjNDRCAvKiBGb3JtRGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg1QjkyQkIwRUZERTczRDAwRTYxMjNDIC8qIEZvcm1E
YXRhQnVpbGRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0VFNjg0NjcxMkQyNkUzODAwRTc5NDE1
IC8qIEZvcm1EYXRhU3RyZWFtQ0ZOZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNEM3NjRFMENF
OTIzNEUwMDdFRjNDRCAvKiBGb3JtRGF0YVN0cmVhbU1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OUI1MEIxREUxN0NENEMwRjAwODdGNjNDIC8qIEZvcm1OYW1lZEl0ZW0uaCBpbiBIZWFkZXJzICov
LAorCQkJCTY1NkQzNzNBMEFEQkE1REUwMEE0NTU0RCAvKiBGb3JtU3RhdGUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQxODg1QjkzMTFCNkZEQTYwMDMzODNCQiAvKiBGb3JtU3VibWlzc2lvbi5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQ0Q1MjVCQTQxRUUwQjEwNzAwNzg4REY1IC8qIEZvdXJDQy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTg1MzEyM0QxMUQwNDcxQjAwRDREMDc3IC8qIEZyYWdtZW50U2Ny
aXB0aW5nUGVybWlzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjVCRjAyMkYwOTc0ODE2MzAw
QzQzMTk2IC8qIEZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzRBODYyMzE0QjdBREJCMDAz
RkRDNzYgLyogRnJhbWVEZXN0cnVjdGlvbk9ic2VydmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
QzRBNTMyQjI1NjA1NjZFMDAyOEM1OTIgLyogRnJhbWVGbGF0dGVuaW5nLmggaW4gSGVhZGVycyAq
LywKKwkJCQkwRjExNzgxODIyRTNDNDdGMDA4QkQ1NzAgLyogRnJhbWVJZGVudGlmaWVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQk2NTZEMzczQzBBREJBNURFMDBBNDU1NEQgLyogRnJhbWVMb2FkZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTY1NkQzNzNFMEFEQkE1REUwMEE0NTU0RCAvKiBGcmFtZUxv
YWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRDAwMEVCQTMxMUJEQUZENDAwQzQ3NzI2
IC8qIEZyYW1lTG9hZGVyU3RhdGVNYWNoaW5lLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0I3N0Ez
ODBBREQ3OTI1MDBFQTRCODEgLyogRnJhbWVMb2FkZXJUeXBlcy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNjU4NDM2ODYwQUUwMUI3NDAwRTUzNzUzIC8qIEZyYW1lTG9hZFJlcXVlc3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTYyOEQyMTRFMTIxMzFFRjQwMDU1RENGQyAvKiBGcmFtZU5ldHdvcmtpbmdD
b250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTkwRjNBNTI0QTBCNEVFMDA1MzFDNTcgLyog
RnJhbWVSYXRlTW9uaXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlFMEUwOTlFNjQ5MjAw
NTZFNTgxIC8qIEZyYW1lU2VsZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlDNENENjI5QjE4
MzgzNzY2MDA3RUJBRjEgLyogRnJhbWVTbmFwc2hvdHRpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTY1QTIxNDg1MDk3QTNGNTMwMEI5MDUwQSAvKiBGcmFtZVRyZWUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTY1Q0JGRUZBMDk3NEY2MDcwMDFEQUMyNSAvKiBGcmFtZVZpZXcuaCBpbiBIZWFkZXJzICov
LAorCQkJCTExM0QwQjUyMUY5RkREMkIwMEY2MTFCQiAvKiBGcmFtZVZpZXdMYXlvdXRDb250ZXh0
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzIwNUFCMDEyMzkyOENBMDBCMTczODAgLyogRlRQRGly
ZWN0b3J5RG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxQzgxQjhBMEM0NDIyRjcwMDE5
RUNFMyAvKiBGVFBEaXJlY3RvcnlQYXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEOTJGNTE4
MjI2MTAzODIwMEY4N0JCMyAvKiBGdWxsc2NyZWVuTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMjZCOTk5OTMxODAzQjlEOTAwRDAxMTIxIC8qIEZ1bmN0aW9uQ2FsbC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRkQzMTYwMEQxMkIwMjY3NjAwQzFBMzU5IC8qIEdhaW5Ob2RlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4Mzc0NUQwMjI0RDg5OUQzMDBGQkRDQzQgLyogR2Fpbk9wdGlvbnMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTUxRTM5OTAwMUQ2RTQ3NTAwMDlDODgzMSAvKiBHYW1lQ29udHJvbGxl
ckdhbWVwYWQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRTM5OTAyMUQ2RTQ3NTAwMDlDODgzMSAv
KiBHYW1lQ29udHJvbGxlckdhbWVwYWRQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEw
QTkxRkQyNEQzQzE2MjAwQkZEODlDIC8qIEdhbWVwYWRDb25zdGFudHMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxMEE5MUZFMjREM0MxNjcwMEJGRDg5QyAvKiBHYW1lcGFkQ29uc3RhbnRzTWFjLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1MTZDNjIyMTE5NTBENDg3MDAzMzdFNzUgLyogR2FtZXBhZEV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUE5RDlFQTE5NUI5MzFGMDAxQjJCNUMgLyogR2Ft
ZXBhZE1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNUJFMTkyMUQ1NEY1RkIwMEREN0M2
OCAvKiBHYW1lcGFkUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNUJFMTkzMUQ1NEY1
RkIwMEREN0M2OCAvKiBHYW1lcGFkUHJvdmlkZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CThFQzZDOTYzMjAxQTI1MTYwMEZCRkE1MyAvKiBHYXBMZW5ndGguaCBpbiBIZWFkZXJzICovLAor
CQkJCTkzNUM0Nzc1MDlBQzREOEUwMEE2QUFCNCAvKiBHYXBSZWN0cy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMTQzMkU4NDcwQzUxNDkzODAwQjE1MDBGIC8qIEdDQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOUJBQUM0NUMyMTUyMDEyODAwM0Q0QTk4IC8qIEdDUmVhY2hhYmxlUmVmLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlDMEMwNTRDQzExMThDOEU0MDBDRTI2MzYgLyogZ2VuZXJhdGUt
YmluZGluZ3MucGwgaW4gSGVhZGVycyAqLywKKwkJCQlCQzIzRjBEQjBEQUZGNEE0MDA5RkRDOTEg
LyogR2VuZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzMDAzMEY2MUI3RDMzQjUw
MEVEM0FBQyAvKiBHZW5lcmljQ2FjaGVkSFRNTENvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovLAor
CQkJCTk3NDZBRjI0MTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTc0NkFGMjUxNEY0RERFNjAwM0U3QTcxIC8qIEdlb2xvY2F0aW9uQ2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5NzQ2QUYyNzE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRp
b25Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzQ2QUYyMTE0RjREREU2MDAzRTdB
NzEgLyogR2VvbG9jYXRpb25Db29yZGluYXRlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc0NkFG
MjgxNEY0RERFNjAwM0U3QTcwIC8qIEdlb2xvY2F0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLAor
CQkJCTk3NDZBRjJBMTRGNERERTYwMDNFN0E3MCAvKiBHZW9sb2NhdGlvblBvc2l0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk5NzQ2QUYyOTE0RjREREU2MDAzRTdBNzAgLyogR2VvbG9jYXRpb25Q
b3NpdGlvbkRhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3NDZBRjJFMTRGNERERTYwMDNFN0E3
MCAvKiBHZW9sb2NhdGlvblBvc2l0aW9uRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGQjYy
NTJGMThERTFCMTUwMEEwN0MwNSAvKiBHZW9tZXRyeVV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDZDODNFRkUxQTlCQkUyOTAwQTc5QTQxIC8qIEdlb05vdGlmaWVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk3MTNGMUQ1QTIzREYxRDhEMDAzRjVFRkEgLyogR2V0QW5pbWF0aW9uc09wdGlv
bnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2Qjk1MTk4MjA3RDYzNDcwMEE3RDJERCAvKiBHbG9i
YWxGcmFtZUlkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2Qjk1MTk3MjA3RDYzNDAw
MEE3RDJERCAvKiBHbG9iYWxXaW5kb3dJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
ODZCQkQwRjEzNjAzOUMyMDA4QjE1RDggLyogR2x5cGguaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
QzNEQTZDMEQwMDZDRDYwMEVGNkYyNiAvKiBHbHlwaEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUM0RDBERDMyNEQ5RjEwRDAwM0Q3NDk4IC8qIEdseXBoQnVmZmVyTWVtYmVycy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQzVENEFBN0ExMTZCQUZCNjAwNjlDQTkzIC8qIEdseXBoTWV0cmljc01h
cC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg3M0I4NkIxMzYwNjRFQTAwQTUyMkMyIC8qIEdseXBo
UGFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzExNTE4RkMxRTc4QzE1RjAwRUM1MTRBIC8qIEdQ
VUJhc2VkQ2FudmFzUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM1M0M1
RjUwREE1NkI5MjAwMjFFQjVEIC8qIEdyYWRpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIy
Nzk2NDBEMDBCRjIyMDA3MUI3ODIgLyogR3JhZGllbnRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAq
LywKKwkJCQkyRDQ4MUYwNDE0NkI1QzZCMDBBQTc4MzQgLyogR3JhZGllbnRJbWFnZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0JCNjgwQkEyNUJBMUJFNDAwMkI4NzM4IC8qIEdyYXBoaWNzQ2hlY2tz
TWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkEwMTVBOTBBRjZDRDUzMDA2QkNFMEUgLyogR3Jh
cGhpY3NDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQ5MDdFNDEyNUJCQkM4MDA3RjIz
QTAgLyogR3JhcGhpY3NDb250ZXh0Q0cuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxM0RFODcwMjNB
OTY5NzMwMDhGQzQ3QiAvKiBHcmFwaGljc0NvbnRleHRHTC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
N0I0NUFCNTUyNUZCQTlERTAwRkQyN0Y0IC8qIEdyYXBoaWNzQ29udGV4dEdMQU5HTEVFR0xVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdCQjM0QTE3MjUzNDVDQjIwMDAyOUQwOCAvKiBH
cmFwaGljc0NvbnRleHRHTEFOR0xFVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzMz
MEEwMjFERjhGQUM2MDBEMzM5NUMgLyogR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzLmggaW4g
SGVhZGVycyAqLywKKwkJCQk3QjEwMzM5RTI1NDk3MjE3MDBDOEMxQUMgLyogR3JhcGhpY3NDb250
ZXh0R0xDVi5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0IxMDMzOUYyNTQ5NzIxRTAwQzhDMUFDIC8q
IEdyYXBoaWNzQ29udGV4dEdMQ1ZBTkdMRS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0JCMzRBNDgy
NTM3NzZDQTAwMDI5RDA4IC8qIEdyYXBoaWNzQ29udGV4dEdMSW1hZ2VFeHRyYWN0b3IuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdCNkRDODE5MjU3MTJFOTIwMDM4MEM3MCAvKiBHcmFwaGljc0NvbnRl
eHRHTElPU3VyZmFjZVN3YXBDaGFpbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDlDN0I5RkMxMDQy
RDM2NTAwMDlENDQ3IC8qIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMLmggaW4gSGVhZGVycyAqLywK
KwkJCQkzMTlBNzI4ODIzQzI2N0ZFMDA4NTM1M0MgLyogR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xN
YW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBENjcwODBFOUU5REVCMDBFNDIwRjAgLyog
R3JhcGhpY3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlQ0cuaCBpbiBIZWFkZXJzICovLAorCQkJCTBG
NTgwQjBEMEYxMkEyNjkwMDUxRDY4OSAvKiBHcmFwaGljc0xheWVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0OTlCM0VENzEyOENEMzE0MDBFNzI2QzIgLyogR3JhcGhpY3NMYXllckNBLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwRjU4MEIwRTBGMTJBMjY5MDA1MUQ2ODkgLyogR3JhcGhpY3NMYXllckNs
aWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFDNjk1OTMxNjFBMUU1MzAwMzczMkNCIC8qIEdy
YXBoaWNzTGF5ZXJGYWN0b3J5LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkEyNEQ3QTE2MkRGOTE5
MDBBM0Y0QzAgLyogR3JhcGhpY3NMYXllclVwZGF0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
QTAxNUFCMEFGNkNENTMwMDZCQ0UwRSAvKiBHcmFwaGljc1R5cGVzLmggaW4gSGVhZGVycyAqLywK
KwkJCQk3N0ExN0E3QjEyRjI4OTBCMDA0RTAyRjYgLyogR3JhcGhpY3NUeXBlc0dMLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMTEyRjQ3MjFFM0E4NjE2MDBENkNERkQgLyogR3JpZC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQ0QzRTI1MUMxODA0NkIwNjAwRTI3RjU2IC8qIEdyaWRBcmVhLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDREVGNEZENzE3RTg1QzhGMDBBRUUyNEIgLyogR3JpZExlbmd0aC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTEyNzA1QzMxNjU2QkQ2NTAwQzJFMjdDIC8qIEdyaWRQb3NpdGlv
bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RGNzQ4M0YxOEZFQkNFQzAwMDZFQ0MwIC8qIEdyaWRQ
b3NpdGlvbnNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTEyQTEwNTAxNjY0NDRGRDAw
OEZBMzExIC8qIEdyaWRUcmFja1NpemUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxMkRFNzE4MUU0
Qjc0QTYwMEY5QUNDRiAvKiBHcmlkVHJhY2tTaXppbmdBbGdvcml0aG0uaCBpbiBIZWFkZXJzICov
LAorCQkJCTI2RUE4OUE3MUI0RjJCNzUwMDhDNUZEMiAvKiBIYXNoYWJsZUFjdGlvbkxpc3QuaCBp
biBIZWFkZXJzICovLAorCQkJCTg0ODJCNzQ2MTE5OEMzNTQwMEJGQjAwNSAvKiBIYXNoQ2hhbmdl
RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NzQ4QkUwMTJDQkYyREMwMDFGQkE0MSAvKiBI
YXNoVG9vbHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0VFRjNEMjU3OTlGQjUwMDY1NjNCQiAv
KiBIZHJNZXRhZGF0YVR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEQTU5NTkzMjE0NkRFQzMw
MEE4NDE4NSAvKiBIRVZDVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREE1OTU5ODIx
NDZERjc4MDBBODQxODUgLyogSEVWQ1V0aWxpdGllc0NvY29hLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGNTVCM0RDMDEyNTFGMTJEMDAzRUYyNjkgLyogSGlkZGVuSW5wdXRUeXBlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1MTBBOTFFQjI0RDAwNEM4MDBCRkQ4OUMgLyogSElERGV2aWNlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1MTBBOTFFQTI0RDAwNEMzMDBCRkQ4OUMgLyogSElERWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTE1QkUxOUMxRDU0RjZDMTAwREQ3QzY4IC8qIEhJREdhbWVwYWQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxMEE5MURBMjRDRjNEOEMwMEJGRDg5QyAvKiBISURHYW1l
cGFkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE1QkUxOUUxRDU0RjZDMTAwREQ3QzY4
IC8qIEhJREdhbWVwYWRQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDQzMEQwMEIyNTc1
QTgzRTAwNDZENDAxIC8qIEhpZ2hsaWdodC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RDRkFCQkQx
OEMwQUY3ODAwNkY4NDUwIC8qIEhpZ2hsaWdodERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0
MzBEMDBEMjU3NUE4QTUwMDQ2RDQwMSAvKiBIaWdobGlnaHRSZWdpc3Rlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDQ5RDg2NEYyNjQwQzlDNTAwMDEyMkRFIC8qIEhpZ2hsaWdodFZpc2liaWxpdHku
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDOTREMTU0MEMyNzVDOEIwMDZCQzYxNyAvKiBIaXN0b3J5
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0RDRTIwMjEwODA3Qzc1MDA1N0QzOTQgLyogSGlzdG9y
eUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNzQxRDExMEIwNzI1OUEwMEVENDQy
QyAvKiBIaXN0b3J5SXRlbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDk2OUIwRjMxM0QwQjMzRjAw
REYzNTIxIC8qIEhpdFRlc3RpbmdUcmFuc2Zvcm1TdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MkQ4Mjg3RjcxNkU0QTAzODAwODZCRDAwIC8qIEhpdFRlc3RMb2NhdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTMwOTA4OTEwQUY3RURFNDAwODFERjAxIC8qIEhpdFRlc3RSZXF1ZXN0LmggaW4g
SGVhZGVycyAqLywKKwkJCQk5MzA3RjFEODBBRjJENTkwMDBEQkEzMUEgLyogSGl0VGVzdFJlc3Vs
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMzQkMyOUMwRTkxQUIwRjAwODM1NTg4IC8qIEhvc3RX
aW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDk5MTJCMDI2RjcwMEMxQTM1OSAvKiBI
UlRGRGF0YWJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDlCMTJCMDI2RjcwMEMxQTM1
OSAvKiBIUlRGRGF0YWJhc2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMzE2MDlEMTJC
MDI2RjcwMEMxQTM1OSAvKiBIUlRGRWxldmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDMx
NjA5RjEyQjAyNkY3MDBDMUEzNTkgLyogSFJURktlcm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RkQzMTYwQTExMkIwMjZGNzAwQzFBMzU5IC8qIEhSVEZQYW5uZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDOTdFMjNBMTA5MTQ0OTUwMDEwRDM2MSAvKiBIVE1MQWxsQ29sbGVjdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQThDRkY3QUIwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxBbmNob3JFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBN0QyRTBBMTkzODU1MDBBOEVGNUYgLyogSFRN
TEFyZWFFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNEIwMDE4OTI2RTdGMjFGMDA2RUFB
QkUgLyogSFRNTEF0b21TdHJpbmdDYWNoZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M1RjI4RkMx
QTgyN0Q4NDAwQzBGMzFGIC8qIEhUTUxBdHRhY2htZW50RWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRTQ0NjEzQTIwQ0Q2MzMxMDAwRkFEQTc1IC8qIEhUTUxBdWRpb0VsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUE4NzFEQzFGMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MQmFzZUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTlCMjRERThFMTUxOTRCOTUwMEM1OUMyNyAvKiBIVE1M
QkRJRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURFMkMwQTE1MkFDODAwQjEyQTY4
IC8qIEhUTUxCb2R5RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDRkY3QUEwQTE1Njk3
ODAwMEE0MjM0IC8qIEhUTUxCUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2OUQy
MDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MQnV0dG9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTNGMTk5RTUwODI0NUU1OTAwMUU5QUJDIC8qIEhUTUxDYW52YXNFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBOERGM0ZEMDA5N0ZBMEZDMDA1Mjk4MUIgLyogSFRNTENvbGxlY3Rpb24u
aCBpbiBIZWFkZXJzICovLAorCQkJCTk3N0IzODY1MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MQ29u
c3RydWN0aW9uU2l0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MzRTUxMEExOERGOEYzNTAwQzEx
MkY3IC8qIEhUTUxDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzMTIwQzcxMUM1NkYz
RkIwMDFDQjExMiAvKiBIVE1MRGF0YUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUY1QzA0
MURCMEZGQ0E3Q0UwMDgzOUQ0QSAvKiBIVE1MRGF0YUxpc3RFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQlEMzU5RDc4QTEyOUNBMjcxMDAwNkU1RDIgLyogSFRNTERldGFpbHNFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBOEVBNzlGQTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTERpcmVj
dG9yeUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE3Q0I3MEExOTJCOUMwMEE4RUY1
RiAvKiBIVE1MRGl2RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThFQTc5RjcwQTE5MTZE
RjAwQThFRjVGIC8qIEhUTUxETGlzdEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRjE5
OEU1MDgyNDVFNTkwMDFFOUFCQyAvKiBIVE1MRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTk3N0IzODY3MTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzRjE5OEU2MDgyNDVFNTkwMDFFOUFCQyAvKiBIVE1MRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTE3QzgxMjMwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVtZW50
RmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc3QjM3MjQxMjI4NzIxNzAwQjgxRkY4IC8q
IEhUTUxFbGVtZW50U3RhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUI1NjJEQjYwMTdEM0NENjMw
MDEwQUY5NiAvKiBIVE1MRWxlbWVudFR5cGVIZWxwZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
ODcxRDQ1QzBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTEVtYmVkRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTc3QjM4NkExMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxFbnRpdHlQYXJzZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTk3N0IzODZDMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MRW50aXR5
U2VhcmNoLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzdCMzg2RDEyMjg4M0U5MDBCODFGRjggLyog
SFRNTEVudGl0eVRhYmxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODEzNjlENDA5NzM3NEY2MDBE
NzQ0NjMgLyogSFRNTEZpZWxkU2V0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDRkY3
QTYwQTE1Njk3ODAwMEE0MjM0IC8qIEhUTUxGb250RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTc3QjM4NkYxMjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxGb3JtYXR0aW5nRWxlbWVudExpc3Qu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2OUNFMDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTRGMUM0NTE0QjVEQUM2MDBF
QTkwMDkgLyogSFRNTEZvcm1Db250cm9sRWxlbWVudFdpdGhTdGF0ZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQThERjNGQ0UwOTdGQTBGQzAwNTI5ODFCIC8qIEhUTUxGb3JtQ29udHJvbHNDb2xsZWN0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODEzNjlEMDA5NzM3NEY2MDBENzQ0NjMgLyogSFRN
TEZvcm1FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODcxREUyQjBBMTUyQUM4MDBCMTJB
NjggLyogSFRNTEZyYW1lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTRGRkUzMUQwQUUx
OTYzMzAwMTM2QkY1IC8qIEhUTUxGcmFtZUVsZW1lbnRCYXNlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk5M0UyNDFGRjBCMkI0RTQwMDBDNzMyQTEgLyogSFRNTEZyYW1lT3duZXJFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlBODcxREUyODBBMTUyQUM4MDBCMTJBNjggLyogSFRNTEZyYW1lU2V0
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURFMkQwQTE1MkFDODAwQjEyQTY4IC8q
IEhUTUxIZWFkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThFQTdDQjgwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxIZWFkaW5nRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThFQTdD
QUYwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxIUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE4NzFERTI3MEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSHRtbEVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUE4NzFERTJBMEExNTJBQzgwMEIxMkE2OCAvKiBIVE1MSUZyYW1lRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQThFQTdEMkQwQTE5Mzg1NTAwQThFRjVGIC8qIEhUTUxJbWFn
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE3RDJCMEExOTM4NTUwMEE4RUY1RiAv
KiBIVE1MSW1hZ2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2OUNDMDk3Mzc0RjYw
MEQ3NDQ2MyAvKiBIVE1MSW5wdXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzVEMkQ3
ODFGNUYxRkJEMDAxNDFERUQgLyogSFRNTElucHV0RWxlbWVudEVudHJpZXNBUEkuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk3QkM4NDlCMTIzNzBBNEIwMDBDNjE2MSAvKiBIVE1MSW5wdXRTdHJlYW0u
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzMzA5REU2MDk5RTY0OTIwMDU2RTU4MSAvKiBIVE1MSW50
ZXJjaGFuZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2OUU0MDk3Mzc0RjYwMEQ3NDQ2MyAv
KiBIVE1MS2V5Z2VuRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgxMzY5RTIwOTczNzRG
NjAwRDc0NDYzIC8qIEhUTUxMYWJlbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2
OUUwMDk3Mzc0RjYwMEQ3NDQ2MyAvKiBIVE1MTGVnZW5kRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQThFQTc5RjYwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxMSUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUE4NzFEQzIwMEExNTIwNTcwMEIxMkE2OCAvKiBIVE1MTGlua0VsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE3RDJDMEExOTM4NTUwMEE4RUY1RiAvKiBIVE1MTWFw
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThFQTdDQUIwQTE5MkI5QzAwQThFRjVGIC8q
IEhUTUxNYXJxdWVlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ0NjEzQTUwQ0Q2MzMx
MDAwRkFEQTc1IC8qIEhUTUxNZWRpYUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUNENTIw
OUU2MUIwQkQ5RTEwMDc3MTg0RSAvKiBIVE1MTWVkaWFFbGVtZW50RW51bXMuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEQzMxMkVBMjJGQ0Q3QzYwMDEyMDRFQyAvKiBIVE1MTWVkaWFFbGVtZW50UmVt
b3RlUGxheWJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE3OUY0MEExOTE2REYwMEE4RUY1
RiAvKiBIVE1MTWVudUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTJGMzFFMDc1MUZBM0I2
MkIwMEUwNTlCQSAvKiBIVE1MTWVudUl0ZW1FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQky
QkU4RTJDNzEyQTU4OUVDMDBGQUQ1NTAgLyogSFRNTE1ldGFDaGFyc2V0UGFyc2VyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBODcxREMyNDBBMTUyMDU3MDBCMTJBNjggLyogSFRNTE1ldGFFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNDU0NDI0QjExOUIzNjYxMDA5QkU5MTIgLyogSFRNTE1l
dGVyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFBM0QxODEyNTYyQjg1QjAwNjRFMkE2
IC8qIEhUTUxNb2RlbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4Q0ZGN0E3MEExNTY5
NzgwMDBBNDIzNCAvKiBIVE1MTW9kRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThERjNG
RDQwOTdGQTBGQzAwNTI5ODFCIC8qIEhUTUxOYW1lQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTg3MUQ0NUEwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxPYmplY3RFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlBOEVBNzlGMTBBMTkxNkRGMDBBOEVGNUYgLyogSFRNTE9MaXN0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgxMzY5REUwOTczNzRGNjAwRDc0NDYzIC8qIEhU
TUxPcHRHcm91cEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MTM2OURDMDk3Mzc0RjYw
MEQ3NDQ2MyAvKiBIVE1MT3B0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgxMzY5
REEwOTczNzRGNjAwRDc0NDYzIC8qIEhUTUxPcHRpb25zQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNEFEMDEwMDkxMjdFNjQyQTAwMTUwMzVGIC8qIEhUTUxPdXRwdXRFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBOEVBN0NCNTBBMTkyQjlDMDBBOEVGNUYgLyogSFRNTFBhcmFn
cmFwaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NzFENDU4MEExMjdDQkMwMEIxMkE2
OCAvKiBIVE1MUGFyYW1FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0UyQTMwNzEyM0U5
REMwMDA5RkUxMkEgLyogSFRNTFBhcnNlcklkaW9tcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTcz
RjQxOEExNjlCOTVGRjAwMDZCRjYwIC8qIEhUTUxQYXJzZXJPcHRpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5NzdCMzg3MTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFBhcnNlclNjaGVkdWxlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkM0QTUzMzMyNTYwNTk4MzAwMjhDNTkyIC8qIEhUTUxQYXJz
ZXJTY3JpcHRpbmdGbGFnUG9saWN5LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0MwRTg3NjFCRkU3
MEU5MDA4RjdGNTAgLyogSFRNTFBpY3R1cmVFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlB
ODcxRDQ1NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQ0MTUyOTJFMEUxQUU4QTAwMEM0QTJEMCAvKiBIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBN0NCMDBBMTkyQjlDMDBBOEVGNUYgLyogSFRN
TFByZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3N0IzODczMTIyODgzRTkwMEI4MUZG
OCAvKiBIVE1MUHJlbG9hZFNjYW5uZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE0M0JGNTk5MTE0
OTI5MEEwMEM2NDNDQSAvKiBIVE1MUHJvZ3Jlc3NFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBOENGRjdBMzBBMTU2OTc4MDAwQTQyMzQgLyogSFRNTFF1b3RlRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQThEMjIzRkUxNkI1MkU0RTAwMTU3Mjg4IC8qIEhUTUxSZXNvdXJjZVByZWxv
YWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURDMjUwQTE1MjA1NzAwQjEyQTY4IC8qIEhU
TUxTY3JpcHRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzdCMzg3NTEyMjg4M0U5MDBC
ODFGRjggLyogSFRNTFNjcmlwdFJ1bm5lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc3QjM4NzYx
MjI4ODNFOTAwQjgxRkY4IC8qIEhUTUxTY3JpcHRSdW5uZXJIb3N0LmggaW4gSGVhZGVycyAqLywK
KwkJCQlBODEzNjlEODA5NzM3NEY2MDBENzQ0NjMgLyogSFRNTFNlbGVjdEVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTlCNjlEM0I1MUI5OEZGRTkwMEUzNTEyQiAvKiBIVE1MU2xvdEVsZW1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDYxM0E4MENENjMzMTAwMEZBREE3NSAvKiBIVE1M
U291cmNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc3RTJEQ0UxMkYwRTI4MzAwQzEz
Mzc5IC8qIEhUTUxTb3VyY2VUcmFja2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzhBRDY3NTE0
MTMwQThEMDBDN0NBRTMgLyogSFRNTFNwYW5FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1
MzZENUEyMDE5M0UxOEU5MDBDRTRDQUIgLyogSFRNTFNyY3NldFBhcnNlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQTg3MURDMjMwQTE1MjA1NzAwQjEyQTY4IC8qIEhUTUxTdHlsZUVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUQzRDRFOTczMTMwQzdDRkUwMDdCQTU0MCAvKiBIVE1MU3VtbWFy
eUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NzFEQjJCMEExNTBCRDYwMEIxMkE2OCAv
KiBIVE1MVGFibGVDYXB0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURCMkEw
QTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUNlbGxFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlBODcxREIyRjBBMTUwQkQ2MDBCMTJBNjggLyogSFRNTFRhYmxlQ29sRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTg3MURCMjcwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NzFEQjJDMEExNTBCRDYwMEIxMkE2OCAvKiBI
VE1MVGFibGVQYXJ0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURCMzEwQTE1MEJE
NjAwQjEyQTY4IC8qIEhUTUxUYWJsZVJvd0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
NDQyQzlFMEQyQjMzNUMwMDMzOEZGOSAvKiBIVE1MVGFibGVSb3dzQ29sbGVjdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTg3MURCMjUwQTE1MEJENjAwQjEyQTY4IC8qIEhUTUxUYWJsZVNlY3Rp
b25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlENjY4MTdGQjE2NkZFNkQ3MDBGQTA3QjQg
LyogSFRNTFRlbXBsYXRlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgxMzY5RDYwOTcz
NzRGNjAwRDc0NDYzIC8qIEhUTUxUZXh0QXJlYUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTlCQzZDMjFCMTNDQ0M5N0IwMDhFMDMzNyAvKiBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJODMwNTE5OTYxQkIwRjExMDAwRjM3NzJFIC8qIEhUTUxUaW1l
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURDMjgwQTE1MjA1NzAwQjEyQTY4IC8q
IEhUTUxUaXRsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3N0IzODc4MTIyODgzRTkw
MEI4MUZGOCAvKiBIVE1MVG9rZW5pemVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzA3NTY4QzE0
MjI2MkQ2MDA0MTQxNjEgLyogSFRNTFRyYWNrRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTc3QjM3MjYxMjI4NzIxNzAwQjgxRkY4IC8qIEhUTUxUcmVlQnVpbGRlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQThFQTc5RjIwQTE5MTZERjAwQThFRjVGIC8qIEhUTUxVTGlzdEVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUFENDk5MTQzMThGMDgxNTEwMEJGMDA5MiAvKiBIVE1MVW5rbm93
bkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDYxM0FCMENENjMzMTAwMEZBREE3NSAv
KiBIVE1MVmlkZW9FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkxRDJGOEUwNTIzNDQ3NTFE
MDA5OTNCNjggLyogSFRNTFZpZGVvRWxlbWVudFBpY3R1cmVJblBpY3R1cmUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTgzOUFBRkVEMUEwQzBDOEQwMDYwNUY5OSAvKiBIVE1MV0JSRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDZDMDk2MjEyM0Q3OERENjAwNjU3QzA5IC8qIEhUVFBDb29raWVB
Y2NlcHRQb2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RTEzOUY4MjNEOEI4RUIwMDc1ODQ4
RSAvKiBIVFRQQ29va2llQWNjZXB0UG9saWN5Q29jb2EuaCBpbiBIZWFkZXJzICovLAorCQkJCTVD
QTFERUM2MUY3MUYxQzcwMEU3MUJEMyAvKiBIVFRQSGVhZGVyRmllbGQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxNEM3NjcxMENFOTIzQTEwMDdFRjNDRCAvKiBIVFRQSGVhZGVyTWFwLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkxQUI1RUJEMjE5NEE1MEYzMDA1OUFDNzAgLyogSFRUUEhlYWRlck5hbWVz
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTYxNEE3OTFEQTY0MjQxMDA0QUQwNkYgLyogSFRUUEhl
YWRlclZhbHVlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE0Qzc2NzMwQ0U5MjNBMTAwN0VGM0NE
IC8qIEhUVFBQYXJzZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQkzNzVDRDIzMjExOUQ0M0M4MDBB
MkE4NTkgLyogSHlwaGVuYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTVFQkI4OTMzMUM3Nzc4
MjkwMEM2NUQ0MSAvKiBJY2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyNzUzNTZF
MEIwNTM4MTQwMDJDRTY0RiAvKiBJY29uLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTNGMTQ1NDBB
QjYzNEM0MDAwOTREREYgLyogSWNvbkxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE3MTRF
QTgxQ0Y0RTRCMTAwNDcyM0M0IC8qIElEQkFjdGl2ZURPTU9iamVjdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTFCQTRBQ0MxQkJDNUJERDAwREYzRDZEIC8qIElEQkJhY2tpbmdTdG9yZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQzU4NUE2NjMxMUQ0RkFDNTAwNEMzRTRCIC8qIElEQkJpbmRpbmdVdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxN0IyNUFBMUNDODJCMkEwMDYxQzAxMSAvKiBJ
REJDb25uZWN0aW9uUHJveHkuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODVGQ0I5MUJCNENCRjgw
MDEyODk4RiAvKiBJREJDb25uZWN0aW9uVG9DbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUx
NkQ3RDcyMUJCNUYwQkQwMEFGN0M3NyAvKiBJREJDb25uZWN0aW9uVG9DbGllbnREZWxlZ2F0ZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTE5OEY3QzExQkM0ODU2NzAwRTJDQzVGIC8qIElEQkNvbm5l
Y3Rpb25Ub1NlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE2RDdENzAxQkI1RjBCRDAwQUY3
Qzc3IC8qIElEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1MTg1RkM3QjFCQjRDNEU4MDAxMjg5OEYgLyogSURCQ3Vyc29yLmggaW4gSGVhZGVycyAqLywK
KwkJCQk3QzNEOEVFQjFFMEIxNUE3MDAyM0IwODQgLyogSURCQ3Vyc29yRGlyZWN0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1MTcxMzhGQzFCRjNBREY0MDAwRDVGMDEgLyogSURCQ3Vyc29ySW5m
by5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTExMEZDRkMxRTAzNjQxRDAwNkY4RDBCIC8qIElEQkN1
cnNvclJlY29yZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4NUZDN0UxQkI0QzRFODAwMTI4OThG
IC8qIElEQkN1cnNvcldpdGhWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4NUZDODExQkI0
QzRFODAwMTI4OThGIC8qIElEQkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkM4
NzFCQjRDNEU4MDAxMjg5OEYgLyogSURCRGF0YWJhc2VJZGVudGlmaWVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1MUJBNEFDNDFCQkI1Q0Q4MDBERjNENkQgLyogSURCRGF0YWJhc2VJbmZvLmggaW4g
SGVhZGVycyAqLywKKwkJCQk5MDE2RUE0RDI0NTREODEzMDAyMUQ5RDEgLyogSURCRGF0YWJhc2VO
YW1lQW5kVmVyc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTBFMzUxQzIyNDdFNDZFNDAwRkJG
MjRGIC8qIElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQk1MTQ4NDUzRjFCQjlEMDdFMDA2QTcyRUQgLyogSURCRXJyb3IuaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxODVGQzhEMUJCNEM0RTgwMDEyODk4RiAvKiBJREJGYWN0b3J5LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk1MTlEQkM2RjFEQzAxMUE3MDAzMjlCRjUgLyogSURCR2V0QWxsUmVjb3Jkc0Rh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxOURCQzcyMURDMTBGNTIwMDMyOUJGNSAvKiBJREJH
ZXRBbGxSZXN1bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxMDVGMDY5MUQ0QkE5RDkwMEZCODBC
QyAvKiBJREJHZXRSZWNvcmREYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkM4RjFCQjRD
NEU4MDAxMjg5OEYgLyogSURCR2V0UmVzdWx0LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkM5
MTFCQjRDNEU4MDAxMjg5OEYgLyogSURCSW5kZXguaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjc5
OEYwMUJFODgwRTcwMDhBRTQ5MSAvKiBJREJJbmRleEluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJ
CTUxRTI2OTM3MUREM0JEOUIwMDZCNkE1OCAvKiBJREJJdGVyYXRlQ3Vyc29yRGF0YS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTE4NUZDOTUxQkI0QzRFODAwMTI4OThGIC8qIElEQktleS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTE4NUZDOTcxQkI0QzRFODAwMTI4OThGIC8qIElEQktleURhdGEuaCBp
biBIZWFkZXJzICovLAorCQkJCTUxODVGQzk5MUJCNEM0RTgwMDEyODk4RiAvKiBJREJLZXlQYXRo
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkM5QjFCQjRDNEU4MDAxMjg5OEYgLyogSURCS2V5
UmFuZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODVGQzlFMUJCNEM0RTgwMDEyODk4RiAvKiBJ
REJLZXlSYW5nZURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODVGQ0EwMUJCNEM0RTgwMDEy
ODk4RiAvKiBJREJPYmplY3RTdG9yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE2MDcxMkYxQkQ4
MzA3ODAwREJDNEYyIC8qIElEQk9iamVjdFN0b3JlSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NTE4NUZDQTQxQkI0QzRFODAwMTI4OThGIC8qIElEQk9wZW5EQlJlcXVlc3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTUxODVGQ0E5MUJCNEM0RTgwMDEyODk4RiAvKiBJREJSZXF1ZXN0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1MTQxMjk5OTFDNjk3NjkwMDA1OUU3MTQgLyogSURCUmVxdWVzdENvbXBs
ZXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEwQTU4RkExQkFDQzdGMjAwQzE5Mjgy
IC8qIElEQlJlcXVlc3REYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTQ1QjEwQTFCQzQ4RTJF
MDBFODYyMTkgLyogSURCUmVzb3VyY2VJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1
MUQ3MjM2RDFCQjYxNzQ5MDA0NzhDQTMgLyogSURCUmVzdWx0RGF0YS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTExRUMxMjgxQzUwQUFDQTAwMzJGOTgzIC8qIElEQlNlcmlhbGl6YXRpb24uaCBpbiBI
ZWFkZXJzICovLAorCQkJCTkzMjNCMDcwMjMwNjFGOTcwMDkwMUM4QiAvKiBJREJTZXJpYWxpemF0
aW9uQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4NUZDQkIxQkI0Q0JGODAwMTI4OThG
IC8qIElEQlNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4NUZDQUQxQkI0QzRFODAwMTI4
OThGIC8qIElEQlRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzY1ODNCNzI2QUI5
MkI1MDA0RTYxRjQgLyogSURCVHJhbnNhY3Rpb25EdXJhYmlsaXR5LmggaW4gSGVhZGVycyAqLywK
KwkJCQk1MTk4RjdBRDFCQkREM0VCMDBFMkNDNUYgLyogSURCVHJhbnNhY3Rpb25JbmZvLmggaW4g
SGVhZGVycyAqLywKKwkJCQk4MzhFRjUzODFEQzE0OUUyMDA4RjBDMzkgLyogSURCVHJhbnNhY3Rp
b25Nb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTYxMDNBRjFDQURCQTc3MDAxNkI0QzcgLyog
SURCVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODVGQ0IwMUJCNEM0RTgwMDEyODk4RiAv
KiBJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0QTgxNEUwMUM3
MzM4RUIwMEJGODVBQyAvKiBJZENoYW5nZUludmFsaWRhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUE3MUQ1N0MwRjMzODE5MDAwRjlDRTRFIC8qIElkZW50aWZpZXJSZXAuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQ5RTkxMUM1MEVGODZENDcwMDlEMENBRiAvKiBJZGVudGl0eVRyYW5zZm9ybU9w
ZXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NFOUExMkIxRUEyRjFEQjAwNjUxQUQxIC8q
IElETEF0dHJpYnV0ZXMuanNvbiBpbiBIZWFkZXJzICovLAorCQkJCTlCODY0RjA2MjM0QzA4OTMw
MDZEMTBFQiAvKiBJZGxlQ2FsbGJhY2tDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
Qjc0MjYwQjIzNEJFQTZFMDBEQjUyRTkgLyogSWRsZURlYWRsaW5lLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5Qjc0MjYwNTIzNEJFOTU2MDBEQjUyRTkgLyogSWRsZVJlcXVlc3RDYWxsYmFjay5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOUI4NjRGMDIyMzRDMDI4QTAwNkQxMEVCIC8qIElkbGVSZXF1ZXN0
T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzBDMDU0Q0QxMTE4QzhFNDAwQ0UyNjM2IC8q
IElETFBhcnNlci5wbSBpbiBIZWFkZXJzICovLAorCQkJCTdDNTIyMjk2MUUxREFFMDMwMDJDQjhG
NyAvKiBJRExUeXBlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzNDRjE3QTUxNUIwMDYzRjAwMjc2
RDM5IC8qIElkVGFyZ2V0T2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUMzQ0YxN0E3MTVC
MDA2M0YwMDI3NkQzOSAvKiBJZFRhcmdldE9ic2VydmVyUmVnaXN0cnkuaCBpbiBIZWFkZXJzICov
LAorCQkJCThBQjRCQzc3MTI2RkRCNzEwMERFQjcyNyAvKiBJZ25vcmVEZXN0cnVjdGl2ZVdyaXRl
Q291bnRJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDY3MzAyMDIxQzRFRkU3ODAw
QkNCMzU3IC8qIElnbm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291bnRJbmNyZW1lbnRlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODM1REE5MDIyNEY1ODI2NTAwMjJEREE0IC8qIElJUkRTUEtlcm5lbC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJODM5QkU2RDUyNEY1ODc2MjAwNERGNTBGIC8qIElJUkZpbHRl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM1MDUxQTQyNEY1NzNDNDAwOTkxMUQ3IC8qIElJUkZp
bHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNTA1MUE1MjRGNTczQzgwMDk5MTFENyAv
KiBJSVJGaWx0ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzBEMEI2OTI0RjU3RDY3
MDA3RUQxMjIgLyogSUlSUHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjc1MzU3MDBC
MDUzODE0MDAyQ0U2NEYgLyogSW1hZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTU1QTMzNkY5MUQ4
MjFFM0MwMDIyQzRDNyAvKiBJbWFnZUJhY2tpbmdTdG9yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MzE4MTVBMzExRjlBNkM4RjAwRkNCRjg5IC8qIEltYWdlQml0bWFwLmggaW4gSGVhZGVycyAqLywK
KwkJCQk3MjFCNDk3NDI1MTJCQTNCMDBGRTlEM0IgLyogSW1hZ2VCaXRtYXBCYWNraW5nLmggaW4g
SGVhZGVycyAqLywKKwkJCQk3Qzc5MDNCMzFGODZGOTVDMDA0NjNBNzAgLyogSW1hZ2VCaXRtYXBS
ZW5kZXJpbmdDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMThFQUQ0RDFGQTkxMzgwMDA4
Q0VGODYgLyogSW1hZ2VCaXRtYXBSZW5kZXJpbmdDb250ZXh0U2V0dGluZ3MuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUIyQTEwQjkyMEIzODE4QkQwMDA5OUFBNCAvKiBJbWFnZUJ1ZmZlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNzJCQUMzQUUyM0UxRjBCMDAwOEQ3NDFDIC8qIEltYWdlQnVmZmVyQmFj
a2VuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTUwNjQwQjAyNDA3NTg3RTAwQUFFMDQ1IC8qIElt
YWdlQnVmZmVyQ0dCYWNrZW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDc3MDVDOTI1NTI4RDM0
MDAxRDBDOTQgLyogSW1hZ2VCdWZmZXJDR0JpdG1hcEJhY2tlbmQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTcyN0E3RjNBMjQwNzhCODQwMDREMjkzMSAvKiBJbWFnZUJ1ZmZlcklPU3VyZmFjZUJhY2tl
bmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQTEwRDkxMEIzODE4QkQwMDA5OUFBNCAvKiBJbWFn
ZUJ1ZmZlclBpcGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0UyMUREMjE4MzQ0NEEwMEU2NkY1
NSAvKiBJbWFnZUJ1ZmZlclV0aWxpdGllc0NHLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNzc5Nzkx
QTBENkI5RDBDMDAzODUxQjkgLyogSW1hZ2VEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0Ew
ODhGNTI2NEUxQzA4MDAzRTJBNkMgLyogSW1hZ2VEYXRhU2V0dGluZ3MuaCBpbiBIZWFkZXJzICov
LAorCQkJCUNEMTlGRUE4MUY1NzM5NzIwMDBDNDJGQiAvKiBJbWFnZURlY29kZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNEMTlGRUFFMUY1NzRCNkQwMDBDNDJGQiAvKiBJbWFnZURlY29kZXJBVkZP
YmpDLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NTVCODdFRDFDQUFGMEFCMDAzNDk0MjUgLyogSW1h
Z2VEZWNvZGVyQ0cuaCBpbiBIZWFkZXJzICovLAorCQkJCTFENDc2NThFMjVDQ0E3NzgwMDdBRjMx
MiAvKiBJbWFnZURlY29kZXJJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzIwNUFC
NjEyMzkyOTEwMDBCMTczODAgLyogSW1hZ2VEb2N1bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NTU3NkE1NjUxRDg4QTcwODAwQ0NDMDRDIC8qIEltYWdlRnJhbWUuaCBpbiBIZWFkZXJzICovLAor
CQkJCUY1NUIzREMyMTI1MUYxMkQwMDNFRjI2OSAvKiBJbWFnZUlucHV0VHlwZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMDg5NTgyNTYwRTg1N0E3RTAwRjgyQzgzIC8qIEltYWdlTG9hZGVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQzdGNDRBODBCOUUzMjRFMDBBOUQwODEgLyogSW1hZ2VPYnNlcnZl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ1QTU5MzExNTI1MjVEMDAwMzZFRTUxIC8qIEltYWdl
T3JpZW50YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUY0ODI0MzRCMjYwQzMzMDYwMDIyNDk3
QyAvKiBJbWFnZU92ZXJsYXlDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDQ2RURF
MTI2NURCMUU1MDAzMURBOEYgLyogSW1hZ2VPdmVybGF5RGF0YURldGVjdGlvblJlc3VsdElkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTcyMjgzRjBFMjMwQjI2OEMwMEY1RDgyOCAvKiBJ
bWFnZVBhaW50aW5nT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjUxQTJGM0YxN0Q3RDNB
RTAwNzI1MTdBIC8qIEltYWdlUXVhbGl0eUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNBM0E0QUFGMjU0MTZFNDAwMDZDREFFMiAvKiBJbWFnZVJlc29sdXRpb24uaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEMjdBRTUwMjJBOTg2ODcwMDk0N0ZGOSAvKiBJbWFnZVJvdGF0aW9uU2Vzc2lv
blZULmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzE5M0JDMTFGNUUwRUVEMDA4OEYzRTYgLyogSW1h
Z2VTbW9vdGhpbmdRdWFsaXR5LmggaW4gSGVhZGVycyAqLywKKwkJCQk1NTQ2NzU3QjFGRDIxMkE5
MDAzQjEwQjAgLyogSW1hZ2VTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTRCMzQ4MDk0MEVF
RjUwRDQwMEFDMUI0MSAvKiBJbWFnZVNvdXJjZUNHLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzhF
RDE5MzIxNkQwNzk1MDA3NzVCMzMgLyogSW1hZ2VUcmFuc2ZlclNlc3Npb25WVC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTU1MENCNDIxRTk1NUUzQzAwMTExQUEwIC8qIEltYWdlVHlwZXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTU1QkJENDI5MjREQjU2MDQwMEJCNkUwQyAvKiBJbWFnZVV0aWxpdGll
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjZGNzU2QjMxQjNCNjZGNzAwMDVERDc5IC8qIEltbXV0
YWJsZU5GQS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjZGNzU2QjUxQjNCNjhGMjAwMDVERDc5IC8q
IEltbXV0YWJsZU5GQU5vZGVCdWlsZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTk2MUM1NTE4
QUQzMzhDMDBEMDdEQzUgLyogSW5iYW5kRGF0YVRleHRUcmFjay5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDc4NjMzRTkyM0ZGMzQ3QjAwODdBRTIxIC8qIEluYmFuZEdlbmVyaWNDdWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTA3MDZBMEQ5MjQwODMwQTcwMEU5MzgxOCAvKiBJbmJhbmRHZW5lcmljQ3Vl
SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkUxNkM1OTMxN0NGRTE3MjAwODUyQzA0
IC8qIEluYmFuZEdlbmVyaWNUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTA3RTlFMTJF
MThGNUUyNzYwMDExQTNBNCAvKiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVBVkYuaCBp
biBIZWFkZXJzICovLAorCQkJCTA3OTQxNzkyMTY2RTg1NUYwMDk0MTZDMiAvKiBJbmJhbmRUZXh0
VHJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTQxNzk0MTY2RUEwNEUwMDk0MTZDMiAvKiBJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0I0NDJENzE2NkM3
MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDdBQTZCNkMxNjZEMkMxMzAwRDQ1NjcxIC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGVB
VkZPYmpDLmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0NFNzdENTE2NzEyQTZBMDBDNTVBNDcgLyog
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkUxNkM1
OTUxN0NGRTE3MjAwODUyQzA0IC8qIEluYmFuZFdlYlZUVFRleHRUcmFjay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJREIyM0MyQ0MwQTUwOEQyOTAwMjQ4OUVCIC8qIEluZGVudE91dGRlbnRDb21tYW5k
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkNCMjFCQjRDNEU4MDAxMjg5OEYgLyogSW5kZXhl
ZERCLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTcxMzhGMDFCRUQxRDFBMDAwRDVGMDEgLyogSW5k
ZXhLZXkuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRUVBQTc0MUJFRkZBQjEwMDIxODAwOCAvKiBJ
bmRleFZhbHVlRW50cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNzEzOEY4MUJGMTI4QkIwMDBE
NUYwMSAvKiBJbmRleFZhbHVlU3RvcmUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEMDYzRjgzMUUy
M0ZBODkwMDgxMkJFMyAvKiBJbml0RGF0YVJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQlF
MzA1OTI2NDFFMjdBM0FEMDBENTdDOTggLyogSW5saW5lQ2xhc3NpY1NjcmlwdC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNkZFMTk4MTcyMTc4Mzk3QzAwNDQ2RjA4IC8qIElubGluZUNvbnRlbnRCcmVh
a2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTFGQTFDODI2RjBGMzBGMDAzQjhGMTYgLyogSW5s
aW5lRGFtYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTUxM0QwMzI2RDk4MUU4MDA0RDNGQUEg
LyogSW5saW5lRGlzcGxheUNvbnRlbnRCdWlsZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RjdD
QTNDQTIwOEMyQjJFMDAyRjI5QUIgLyogSW5saW5lRm9ybWF0dGluZ0NvbnRleHQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQ3QzRENTdEMjY1MDhCQ0IwMEM3QUIxRiAvKiBJbmxpbmVGb3JtYXR0aW5n
R2VvbWV0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGRTYzNkU4MjY0Nzk2MjkwMEYwOTUxRSAv
KiBJbmxpbmVGb3JtYXR0aW5nUXVpcmtzLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTVDRkE3RTIw
OEI4RTEwMDAxRTY5OTEgLyogSW5saW5lRm9ybWF0dGluZ1N0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxMTFGQTFDNzI2RjBGMzBGMDAzQjhGMTYgLyogSW5saW5lSW52YWxpZGF0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk2RkU3Q0ZBMjIxNzdFRUYyMDA1QjE1NzMgLyogSW5saW5lSXRlbS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkNFNzg5MTYxMTIwRDYwODAwNjBFQ0U1IC8qIElubGluZUl0
ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RkFBRTcxMzI2QTI4MTRCMDBFMDc1MDIgLyog
SW5saW5lTGV2ZWxCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTZGMENENjk1MjI5RUQzMjcwMEM1
OTk0RSAvKiBJbmxpbmVMaW5lLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RkIyNDAwNTIzREZGMTI4
MDA3OTY0NTggLyogSW5saW5lTGluZUJveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTFDMzIyN0Qy
NkQ5NThDRTAwMzI4RjREIC8qIElubGluZUxpbmVCb3hCdWlsZGVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQk2RjZFRTc0MzI2RDQ0RUUzMDAzNzRDREEgLyogSW5saW5lTGluZUJveFZlcnRpY2FsQWxp
Z25lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkYyNkVCNDgyMzQwMDRBNTAwNjkwNkUyIC8qIElu
bGluZUxpbmVCdWlsZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RjkxNDIxMTI1MTUyMTM4MDA0
RTRGRUEgLyogSW5saW5lTGluZUdlb21ldHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RkMzRjk0
NzI1MTY3NTY3MDBBNDlCRUEgLyogSW5saW5lTGluZVJ1bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RjQ1Nzc1Q0UyNDE0MzdENTAwMkRGMUEwIC8qIElubGluZVBhdGhEYXRhLmggaW4gSGVhZGVycyAq
LywKKwkJCQk2RjQwREE4MjI1MTMwMzNBMDBFQzA0QjcgLyogSW5saW5lUmVjdC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRTREMzNGM0IyNTJBRUVDRDAwODM3RDA1IC8qIElubGluZVJ1bkFuZE9mZnNl
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkYzNjBFNTAyMzk5OTQyMTAwMTUxMkE3IC8qIElubGlu
ZVNvZnRMaW5lQnJlYWtJdGVtLmggaW4gSGVhZGVycyAqLywKKwkJCQlBQTRDM0E3NzBCMkIxNjc5
MDAyMzM0QTIgLyogSW5saW5lU3R5bGVTaGVldE93bmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
QzAxMDcwMTE5MjU5NERGMDA4QTQyMDEgLyogSW5saW5lVGV4dEJveFN0eWxlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk2RjFDQzFERTIyNUY4QjQ5MDA3MjBBRDIgLyogSW5saW5lVGV4dEl0ZW0uaCBp
biBIZWFkZXJzICovLAorCQkJCTFDRTg4NjQxMjYxMDVCRjIwMDBDODE2QyAvKiBJbk1lbW9yeURp
c3BsYXlMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRUI3Njc1NzFEQTE5QkRGMDAzRTIzQjUg
LyogSW5wdXRFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTUyRUZERjQyMTEyODc1QTAwQUQy
ODJBIC8qIElucHV0TW9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdFMzUyNEQxMjQ1MEM2NjAw
QkFGNUQ5IC8qIElucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzM0ODYxMjQxNUZERTIx
RTAwN0ExQ0M5IC8qIElucHV0VHlwZU5hbWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURF
QTA5OUU2NDkyMDA1NkU1ODEgLyogSW5zZXJ0SW50b1RleHROb2RlQ29tbWFuZC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTMzMDlERUMwOTlFNjQ5MjAwNTZFNTgxIC8qIEluc2VydExpbmVCcmVha0Nv
bW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUQwN0RFQUJBMEEzNjU1NEEwMENBMzBGOCAvKiBJ
bnNlcnRMaXN0Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ3QUQyM0IyMTkzNEZGNDAw
NTFERDBCIC8qIEluc2VydE5lc3RlZExpc3RDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
MzMwOURFRTA5OUU2NDkyMDA1NkU1ODEgLyogSW5zZXJ0Tm9kZUJlZm9yZUNvbW1hbmQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTkzMzA5REYwMDk5RTY0OTIwMDU2RTU4MSAvKiBJbnNlcnRQYXJhZ3Jh
cGhTZXBhcmF0b3JDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURGMjA5OUU2NDky
MDA1NkU1ODEgLyogSW5zZXJ0VGV4dENvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkxM0ZF
NTlDMjM2Mjc5OUEwMEY5NDQ2QSAvKiBJbnNwZWN0b3JBbmltYXRpb25BZ2VudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTVCODFDQTcxRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3BlY3RvckFwcGxpY2F0
aW9uQ2FjaGVBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTE3NUNFNUUyMUUyODFFRDAwREYy
QzI3IC8qIEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTE3NUNFNUMyMUUyODFFRDAwREYyQzI3IC8qIEluc3BlY3RvckF1ZGl0RE9NT2JqZWN0
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MTA5RTlDODIyMkNBQkNBMDBCQjYyNjQgLyogSW5zcGVj
dG9yQXVkaXRSZXNvdXJjZXNPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTZBMjJFODcwMUYx
MDQxODYwMEY1NDZDMyAvKiBJbnNwZWN0b3JDYW52YXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1
QjgxQ0E4MUZBQTQ0NjIwMDM3RDFFNiAvKiBJbnNwZWN0b3JDYW52YXNBZ2VudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTVBQTU3MTAyNUVFRUQzMjAwNEU5MjgzIC8qIEluc3BlY3RvckNhbnZhc0Nh
bGxUcmFjZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFDODFCOTVDMEU5NzMzMDgwMDI2NkUwNyAv
KiBJbnNwZWN0b3JDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFDODFCOTVBMEU5NzMzMDgw
MDI2NkUwNyAvKiBJbnNwZWN0b3JDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNTlD
MjMwQTIxRjI5MjA2MDA0RUM5MzkgLyogSW5zcGVjdG9yQ1BVUHJvZmlsZXJBZ2VudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTVCODFDQTkxRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3BlY3RvckNTU0Fn
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0QTlDQzgyMTE2QkY5QkI0MDBFQzY0NUEgLyogSW5z
cGVjdG9yQ1NTT01XcmFwcGVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQUExRkFBNDQ2
MjAwMzdEMUU2IC8qIEluc3BlY3RvckRhdGFiYXNlQWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxRjA2MjE0MEY1RjE5MjYwMEEwN0VBQyAvKiBJbnNwZWN0b3JEYXRhYmFzZVJlc291cmNlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5OUQxQjJEMzIzQUMxNDMxMDA4MTFDRjAgLyogSW5zcGVjdG9y
RGVidWdnYWJsZVR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QjgxQ0FCMUZBQTQ0NjIwMDM3
RDFFNiAvKiBJbnNwZWN0b3JET01BZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQUMx
RkFBNDQ2MjAwMzdEMUU2IC8qIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUE1QjgxQ0FEMUZBQTQ0NjIwMDM3RDFFNiAvKiBJbnNwZWN0b3JET01TdG9yYWdl
QWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk5NEM2MDNBMjUzQTI3NzMwMEJERjA2MCAvKiBJ
bnNwZWN0b3JGcm9udGVuZEFQSURpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUYzNDRD
NzE0MTEyNUI4MkMwMEYyNkVFRSAvKiBJbnNwZWN0b3JGcm9udGVuZENsaWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRjM0NEM3NTMxMTI5NEQ5RDAwRjI2RUVFIC8qIEluc3BlY3RvckZyb250ZW5k
Q2xpZW50TG9jYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBMEU3NzBGMTBDMDBBODgwMEEwMjc2
RSAvKiBJbnNwZWN0b3JGcm9udGVuZEhvc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBNTQ4NTgw
MTRFMDJENTEwMDZBRTA1QSAvKiBJbnNwZWN0b3JIaXN0b3J5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBNUI4MUNBRTFGQUE0NDYyMDAzN0QxRTYgLyogSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTIwRDYyOTI3MTI1MzY5MEIwMDA4MTU0MyAvKiBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUE1ODYwRTZEMjMwREUzMDMwMDQ2
MUFBRSAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25QdWJsaWMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUE1ODYwRTZFMjMwREUzMEEwMDQ2MUFBRSAvKiBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25X
ZWJLaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QjgxQ0FGMUZBQTQ0NjIwMDM3RDFFNiAvKiBJ
bnNwZWN0b3JMYXllclRyZWVBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQjAxRkFB
NDQ2MjAwMzdEMUU2IC8qIEluc3BlY3Rvck1lbW9yeUFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBNUI4MUNCMTFGQUE0NDYyMDAzN0QxRTYgLyogSW5zcGVjdG9yTmV0d29ya0FnZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQk1MDRBQUNDRTE4MzQ0NTU5MDBFM0Q5QkMgLyogSW5zcGVjdG9yTm9k
ZUZpbmRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEYwM0MwNzUxODg0ODA1NTAwQTVGOENBIC8q
IEluc3BlY3Rvck92ZXJsYXkuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QjgxQ0IyMUZBQTQ0NjIw
MDM3RDFFNiAvKiBJbnNwZWN0b3JQYWdlQWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTZBNzI3
OThCMUYxNkMyOUMwMDNGMzlCOCAvKiBJbnNwZWN0b3JTaGFkZXJQcm9ncmFtLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4MkFCMTc3NDEyNUM4MjY3MDBDNTA2OUQgLyogSW5zcGVjdG9yU3R5bGVTaGVl
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQjMxRkFBNDQ2MjAwMzdEMUU2IC8qIEluc3Bl
Y3RvclRpbWVsaW5lQWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1OTNDRjhCMTg0MDUzNTIw
MEJGQ0UyNyAvKiBJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1
QjgxQ0I0MUZBQTQ0NjIwMDM3RDFFNiAvKiBJbnNwZWN0b3JXb3JrZXJBZ2VudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRjNBQkZFMEMxMzBFOURBMDAwRTdGN0QxIC8qIEluc3RydW1lbnRpbmdBZ2Vu
dHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNDcxMERDMURCNkZFMjIwMDJEQ0VDMyAvKiBJbnRl
cnNlY3Rpb25PYnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY4QjQ1NzIxREMzRkJBMzAw
NDQzQzNGIC8qIEludGVyc2VjdGlvbk9ic2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAor
CQkJCTBGNDcxMERGMURCNkZFMjIwMDJEQ0VDMyAvKiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjc1MzU3MjBCMDUzODE0MDAyQ0U2NEYgLyogSW50UG9p
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NjJBNEExMTEzRTcxQkUwMDRBNDIyMCAvKiBJbnRQ
b2ludEhhc2guaCBpbiBIZWFkZXJzICovLAorCQkJCUIyNzUzNTc0MEIwNTM4MTQwMDJDRTY0RiAv
KiBJbnRSZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMkI5MjE3MzE2QzVDQzQyMDA0MURDRDkg
LyogSW50UmVjdEV4dGVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEzNEY1QUIxMkVFMzQzRjAw
NEVDNThEIC8qIEludFJlY3RIYXNoLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjc1MzU3NTBCMDUz
ODE0MDAyQ0U2NEYgLyogSW50U2l6ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjI3NTM1NzYwQjA1
MzgxNDAwMkNFNjRGIC8qIEludFNpemVIYXNoLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDBCNEFB
QjE4REExQ0NEMDA0MzRERTEgLyogSU9TdXJmYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQzIx
RTU3RDE4M0VEMUZGMDAxQzI4OUQgLyogSU9TdXJmYWNlUG9vbC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0Q1RkY0OTkyMTYyRTJCRTAwNEJEODZGIC8qIElTT0JveC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0Q3MjBCNEYyMjY4QjUxMzAwMDQ3RkRFIC8qIElTT0ZhaXJQbGF5U3RyZWFtaW5nUHNzaEJv
eC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q1RkY0OUUyMTYyRTRFODAwNEJEODZGIC8qIElTT09y
aWdpbmFsRm9ybWF0Qm94LmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDVGRjQ5RDIxNjJFNERCMDA0
QkQ4NkYgLyogSVNPUHJvdGVjdGlvblNjaGVtZUluZm9Cb3guaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNENUZGNDlDMjE2MkU0Q0YwMDRCRDg2RiAvKiBJU09Qcm90ZWN0aW9uU3lzdGVtU3BlY2lmaWNI
ZWFkZXJCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCUNENUZGNDlBMjE2MkU0QTYwMDRCRDg2RiAv
KiBJU09TY2hlbWVJbmZvcm1hdGlvbkJveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q1RkY0OUIy
MTYyRTRCNzAwNEJEODZGIC8qIElTT1NjaGVtZVR5cGVCb3guaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNENUZGNDk3MjE2MkUyQjcwMDRCRDg2RiAvKiBJU09UcmFja0VuY3J5cHRpb25Cb3guaCBpbiBI
ZWFkZXJzICovLAorCQkJCTA3RDEyRjVDMjNERTU0M0YwMDgwOTk3RCAvKiBJU09WVFRDdWUuaCBp
biBIZWFkZXJzICovLAorCQkJCTcxMjQ3RTM4MUZFQTVGODYwMDhDMDhDRSAvKiBJdGVyYXRpb25D
b21wb3NpdGVPcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTdDMzBEOTg0MUY4MTVBRUMw
MDI2ODM1NiAvKiBKU0Fib3J0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MzMEQ5
ODYxRjgxNUFFQzAwMjY4MzU2IC8qIEpTQWJvcnRTaWduYWwuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTkzNTVFRjUxMjUzQTQyNzkwMDZGRjRBNCAvKiBKU0Fic3RyYWN0UmFuZ2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQxOEY4ODA1MEZGOTU3QUYwMDgwRjA0NSAvKiBKU0Fic3RyYWN0V29ya2VyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBMTY3N0UxMzIxM0UwM0M2MDBBMDhDMzQgLyogSlNBZGRyZXNz
RXJyb3JzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzA0NDA1QTFFNTM5MzYyMDAzNTY2MDEgLyog
SlNBZXNDYmNDZmJQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3RTFFNUFEMUU4REQwOUIw
MEVFMzdDOSAvKiBKU0Flc0N0clBhcmFtcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdCNUY4MTAx
RTVFMkE0RTAwRjM0RjkwIC8qIEpTQWVzR2NtUGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1
NzY4MTQ0NTFFNzBDQjFGMDBFNzc3NTQgLyogSlNBZXNLZXlQYXJhbXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUZEQTE1RUNBMTJCMDNGNTAwMDNBNTgzQSAvKiBKU0FuYWx5c2VyTm9kZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMzE5ODQ4MEMxQTFFNkNFODAwQTEzMzE4IC8qIEpTQW5pbWF0aW9uRXZl
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNEM3QzZDMUZEQURBRjMwMEYyQkVFMSAvKiBKU0Fu
aW1hdGlvblBsYXliYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNEM3QzZEMUZEQURB
RjYwMEYyQkVFMSAvKiBKU0FuaW1hdGlvblBsYXliYWNrRXZlbnRJbml0LmggaW4gSGVhZGVycyAq
LywKKwkJCQk3MTAyNUVERTFGOTlGMUVDMDA0QTI1MEMgLyogSlNBbmltYXRpb25UaW1lbGluZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTE5NTZGMUMyMzMxQTY3NzAwNTdFOUQyIC8qIEpTQXBwbGVQ
YXlDYW5jZWxFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBOTkxRjdFQzhDMDAwNThB
NDc3IC8qIEpTQXBwbGVQYXlDb250YWN0RmllbGQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1OTZC
OTM4MjVERUVGMDMwMEVEMkNGQSAvKiBKU0FwcGxlUGF5Q291cG9uQ29kZUNoYW5nZWRFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTVFQUQ1ODMyNjZFRjUzQjAwNEI5Q0YxIC8qIEpTQXBwbGVQ
YXlDb3Vwb25Db2RlRGV0YWlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTVFQUQ1ODIyNjZFRjUz
OTAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlDb3Vwb25Db2RlVXBkYXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5NUVBRDU4NzI2NkVGNTZBMDA0QjlDRjEgLyogSlNBcHBsZVBheURhdGVDb21wb25lbnRz
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NUVBRDU4QjI2NkVGNTdBMDA0QjlDRjEgLyogSlNBcHBs
ZVBheURhdGVDb21wb25lbnRzUmFuZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1M0JDRUIyMjVE
NjI4M0QwMEE0QTJBMSAvKiBKU0FwcGxlUGF5RGV0YWlsc1VwZGF0ZUJhc2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTk1MjdEN0FGMjVENUZFNkMwMEE2RTE3NiAvKiBKU0FwcGxlUGF5RGV0YWlsc1Vw
ZGF0ZURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMkM1OUY5MjAzNjBBQ0IwMDEyMjM2QiAv
KiBKU0FwcGxlUGF5RXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQkI4NUIyMjE1OUIxQTEw
MDY3RTA3RCAvKiBKU0FwcGxlUGF5RXJyb3JDb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUJC
ODVCMzIxNTlCMUExMDA2N0UwN0QgLyogSlNBcHBsZVBheUVycm9yQ29udGFjdEZpZWxkLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMTNCNjE3NDI0NzVFMzQyMDBCQkU2REUgLyogSlNBcHBsZVBheUlu
c3RhbGxtZW50Q29uZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTEzQjYxNzUyNDc1
RTM1RjAwQkJFNkRFIC8qIEpTQXBwbGVQYXlJbnN0YWxsbWVudEl0ZW0uaCBpbiBIZWFkZXJzICov
LAorCQkJCUExM0I2MTc2MjQ3NUUzN0EwMEJCRTZERSAvKiBKU0FwcGxlUGF5SW5zdGFsbG1lbnRJ
dGVtVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTEzQjYxNzcyNDc1RTNBMzAwQkJFNkRFIC8q
IEpTQXBwbGVQYXlJbnN0YWxsbWVudFJldGFpbENoYW5uZWwuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTdDNjU3OUYwMUUwMDg1NjYwMEUzQTI3QSAvKiBKU0FwcGxlUGF5TGluZUl0ZW0uaCBpbiBIZWFk
ZXJzICovLAorCQkJCUExREY1QThFMUY3RUMwMDIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5TWVyY2hh
bnRDYXBhYmlsaXR5LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUY2RDAxMjFGRTA5OUI0MDAxODA3
OEMgLyogSlNBcHBsZVBheU1vZGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzY1MjMxNDFF
MDBEQkI0MDA2NzdGMjIgLyogSlNBcHBsZVBheVBheW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUExMkM1OUZCMjAzNjBCMDAwMDEyMjM2QiAvKiBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6YXRp
b25SZXN1bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTk2QThCMUQxQTBEREQwMEI4Njc2OCAv
KiBKU0FwcGxlUGF5UGF5bWVudEF1dGhvcml6ZWRFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
N0M2NTIzMTYxRTAwREJCNTAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQYXltZW50Q29udGFjdC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJN0M2NTIzMTgxRTAwREJCNTAwNjc3RjIyIC8qIEpTQXBwbGVQYXlQ
YXltZW50TWV0aG9kLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUU5NkE4RDFEMUEwREREMDBCODY3
NjggLyogSlNBcHBsZVBheVBheW1lbnRNZXRob2RTZWxlY3RlZEV2ZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQlBMUY2RDAwRjFGRTA5OTk0MDAxODA3OEMgLyogSlNBcHBsZVBheVBheW1lbnRNZXRo
b2RUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTJDNTlGQzIwMzYwQjI3MDAxMjIzNkIgLyog
SlNBcHBsZVBheVBheW1lbnRNZXRob2RVcGRhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDNjUy
MzFBMUUwMERCQjUwMDY3N0YyMiAvKiBKU0FwcGxlUGF5UGF5bWVudFBhc3MuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTk1RUFENTk0MjY2RUY1RDQwMDRCOUNGMSAvKiBKU0FwcGxlUGF5UGF5bWVudFJl
cXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1RUFENThFMjY2RUY1OUMwMDRCOUNGMSAvKiBK
U0FwcGxlUGF5UGF5bWVudFRpbWluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTVFQUQ1OTMyNjZF
RjVDRDAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlSZWN1cnJpbmdQYXltZW50RGF0ZVVuaXQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUExREY1QThGMUY3RUMwMDIwMDU4QTQ3NyAvKiBKU0FwcGxlUGF5UmVx
dWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBQjMxRjgwNzc1MzAwNThBNDc3IC8qIEpT
QXBwbGVQYXlSZXF1ZXN0QmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFOTZBOEYxRDFBMERE
RDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlTZXNzaW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUQ1
MDYxNDIzMzFFREQ0MDAxNEVFNEUgLyogSlNBcHBsZVBheVNlc3Npb25FcnJvci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTVFQUQ1OTcyNjZFRjYwQjAwNEI5Q0YxIC8qIEpTQXBwbGVQYXlTaGlwcGlu
Z0NvbnRhY3RFZGl0aW5nTW9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFOTZBOTExRDFBMERE
RDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RTZWxlY3RlZEV2ZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMTJDNTlGRDIwMzYwQjNFMDAxMjIzNkIgLyogSlNBcHBsZVBheVNo
aXBwaW5nQ29udGFjdFVwZGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M2NTc5RjQxRTAwODU2
NjAwRTNBMjdBIC8qIEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUFFOTZBOTMxRDFBMERERDAwQjg2NzY4IC8qIEpTQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNl
bGVjdGVkRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMkM1OUZFMjAzNjBCNEEwMDEyMjM2
QiAvKiBKU0FwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTU3RDEzNTJDMjI5NEFBM0QwMDgyNzQwMSAvKiBKU0F0dGVzdGF0aW9uQ29udmV5YW5jZVByZWZl
cmVuY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMURCMDlEMUMxMjMwMDBCRTMyNSAvKiBK
U0F0dHIuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQTE1RTlFMTJCMDNFRTEwMDNBNTgzQSAvKiBK
U0F1ZGlvQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGREY3RTlDNDEzQUMyMURCMDBBNTFF
QUMgLyogSlNBdWRpb0J1ZmZlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlGREExNUVB
MDEyQjAzRUUxMDAzQTU4M0EgLyogSlNBdWRpb0J1ZmZlclNvdXJjZU5vZGUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUZEQTE1RUE2MTJCMDNFRTEwMDNBNTgzQSAvKiBKU0F1ZGlvQ29udGV4dC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkRBMTVFQTgxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9EZXN0
aW5hdGlvbk5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQTE1RUFFMTJCMDNFRTEwMDNBNTgz
QSAvKiBKU0F1ZGlvTGlzdGVuZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQTE1RUIwMTJCMDNF
RTEwMDNBNTgzQSAvKiBKU0F1ZGlvTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRBMTVFQjQx
MkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9QYXJhbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRB
MTVFQjYxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQXVkaW9Qcm9jZXNzaW5nRXZlbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUJFOEVGMDQzMTcxQzhGRjkwMDlCNDhDMyAvKiBKU0F1ZGlvVHJhY2suaCBp
biBIZWFkZXJzICovLAorCQkJCUJFOEVGMDQ1MTcxQzhGRjkwMDlCNDhDMyAvKiBKU0F1ZGlvVHJh
Y2tMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0QxMzUyQTIyOTRBQTM5MDA4Mjc0MDEgLyog
SlNBdXRoZW50aWNhdGlvbkV4dGVuc2lvbnNDbGllbnRJbnB1dHMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTU3NTg1OTYxMjM5RjEyNEQwMEM3NDU3MiAvKiBKU0F1dGhlbnRpY2F0aW9uRXh0ZW5zaW9u
c0NsaWVudE91dHB1dHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MzAzQzJGMjAwOUI3RTEwMDM1
NTk2NSAvKiBKU0F1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTdGRTY4NzYyNjA1NTY4NTAwQkY0NUU0IC8qIEpTQXV0aGVudGljYXRvckF0dGFjaG1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MzAzQzIyMjAwOUFGMDMwMDM1NTk2NSAvKiBKU0F1
dGhlbnRpY2F0b3JBdHRlc3RhdGlvblJlc3BvbnNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzMw
M0JFMTIwMDk1RDYxMDAzNTU5NjUgLyogSlNBdXRoZW50aWNhdG9yUmVzcG9uc2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTU3RENFRDk4MjE0ODgyMTYwMDE2Qjg0NyAvKiBKU0F1dGhlbnRpY2F0b3JU
cmFuc3BvcnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMTI0RjAwMEMyNjQ0N0EwMDlFMjM0OSAv
KiBKU0JhclByb3AuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3QzdBNjlGMUU1NzkxNzgwMEM2N0Q3
MSAvKiBKU0Jhc2ljQ3JlZGVudGlhbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM5NDYzNDgxMDdB
OTM2NjAwODU3MTkzIC8qIEpTQmVmb3JlTG9hZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk2
RkE0NDU0RTg5OEYyRkMxNjhCQzM4QzEgLyogSlNCZWZvcmVVbmxvYWRFdmVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRkRGMDlEQzkxMzk5QjYyMjAwNjg4RTVCIC8qIEpTQmlxdWFkRmlsdGVyTm9k
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkUyRDk5Q0UxMEUyQkJEQTAwNDk2MzM3IC8qIEpTQmxv
Yi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE1RDc1MUIxRTY4RjhBMzAwQTM1RkJDIC8qIEpTQmxv
YkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Qzc3QzNENTFERUYxNzhFMDBBNTBCRkEg
LyogSlNCbG9iUHJvcGVydHlCYWcuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0RENGM0IzMUI2QkUy
MDgwMDYyRDRDMyAvKiBKU0J5dGVMZW5ndGhRdWV1aW5nU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICov
LAorCQkJCTE0NDlFMjRDMTA3RDRBODQwMEI1NzkzRiAvKiBKU0NhbGxiYWNrRGF0YS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMDcyNzdFNEQxN0QwMThDQzAwMTU1MzRFIC8qIEpTQ2FudmFzQ2FwdHVy
ZU1lZGlhU3RyZWFtVHJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTdDMTkzQkYwMUY1RTEwOTkw
MDg4RjNFNiAvKiBKU0NhbnZhc0RpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MxOTNC
RjIxRjVFMTA5OTAwODhGM0U2IC8qIEpTQ2FudmFzRmlsbFJ1bGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTY1REYzMjNBMDlEMURFNjUwMDBCRTMyNSAvKiBKU0NhbnZhc0dyYWRpZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QzE5M0JGNDFGNUUxMDk5MDA4OEYzRTYgLyogSlNDYW52YXNMaW5lQ2Fw
LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzE5M0JGNjFGNUUxMDk5MDA4OEYzRTYgLyogSlNDYW52
YXNMaW5lSm9pbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjVERjMyM0MwOUQxREU2NTAwMEJFMzI1
IC8qIEpTQ2FudmFzUGF0dGVybi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDlFRUQxNDUxMDUxOTY5
NDAwMDk5RkFCIC8qIEpTQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggaW4gSGVhZGVycyAqLywK
KwkJCQk3QzE5M0JGODFGNUUxMDk5MDA4OEYzRTYgLyogSlNDYW52YXNUZXh0QWxpZ24uaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdDMTkzQkZBMUY1RTEwOTkwMDg4RjNFNiAvKiBKU0NhbnZhc1RleHRC
YXNlbGluZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGOUI3QTEwQkE2MDMyNjAwODU0MDY0IC8q
IEpTQ0RBVEFTZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlGREExNUVBMjEyQjAzRUUxMDAz
QTU4M0EgLyogSlNDaGFubmVsTWVyZ2VyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRBMTVF
QTQxMkIwM0VFMTAwM0E1ODNBIC8qIEpTQ2hhbm5lbFNwbGl0dGVyTm9kZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNjVERjMxRjQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTQ2hhcmFjdGVyRGF0YS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJODM2RDAzMzIxREE4QTE0MjAwRkZEOTZCIC8qIEpTQ2xpcGJvYXJk
RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRkI1NTA0MTEzRTNFOTEwMDgyMTE3NiAvKiBK
U0Nsb3NlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1ODRGRTNDMTg2NEUyRDgwMDg0M0Ix
MCAvKiBKU0NvbW1hbmRMaW5lQVBJSG9zdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGOUI2RTEw
QkEwRkI3MjAwODU0MDY0IC8qIEpTQ29tbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzEyNDdF
M0IxRkVBNUY5MDAwOEMwOENFIC8qIEpTQ29tcG9zaXRlT3BlcmF0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQk3MTExMjQ0MTIxNkZBN0NEMDBFQjdCNjcgLyogSlNDb21wb3NpdGVPcGVyYXRpb25P
ckF1dG8uaCBpbiBIZWFkZXJzICovLAorCQkJCTc5QUM5MjE5MTA5OTQ1QzgwMDIxMjY2RSAvKiBK
U0NvbXBvc2l0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMTZFMkNGMUZFRDc2NUIw
MEMwNkZERSAvKiBKU0NvbXB1dGVkRWZmZWN0VGltaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
REExNUVCRTEyQjAzRjBCMDAzQTU4M0EgLyogSlNDb252b2x2ZXJOb2RlLmggaW4gSGVhZGVycyAq
LywKKwkJCQlGRTZGRDQ4RTBGNjc2RTkzMDAwOTI4NzMgLyogSlNDb29yZGluYXRlcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMTREQ0YzQjMxQjZCRTIwODAwNjJENEMyIC8qIEpTQ291bnRRdWV1aW5n
U3RyYXRlZ3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTc3RDUxMDA2MUVENEY3MjUwMERBNEM4NyAv
KiBKU0NyZWRlbnRpYWxDcmVhdGlvbk9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTc3RDUx
MDA0MUVENEY3MUUwMERBNEM4NyAvKiBKU0NyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNzdENTEwMUMxRUQ3MjJCRjAwREE0Qzg3IC8qIEpTQ3JlZGVudGlhbHND
b250YWluZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3NUNBMkEyMTMwMzY3OUQwMEU5OUFEOSAv
KiBKU0NyeXB0by5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M5QUNBQjgxRjNDRjFBRTAwRjNBQTA5
IC8qIEpTQ3J5cHRvQWVzS2V5QWxnb3JpdGhtLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzM5RTEy
RjFEQUM3Rjc4MDBFMTQzODMgLyogSlNDcnlwdG9BbGdvcml0aG1QYXJhbWV0ZXJzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QzlBQ0FCQTFGM0NGMUFFMDBGM0FBMDkgLyogSlNDcnlwdG9FY0tleUFs
Z29yaXRobS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M5QUNBQkMxRjNDRjFBRTAwRjNBQTA5IC8q
IEpTQ3J5cHRvSG1hY0tleUFsZ29yaXRobS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTE1N0E4RTEx
ODE3MzMxQzAwOUY4MjFEIC8qIEpTQ3J5cHRvS2V5LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzlB
Q0FCRTFGM0NGMUFGMDBGM0FBMDkgLyogSlNDcnlwdG9LZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJz
ICovLAorCQkJCUUxRjgwQjhFMTgzMTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTU3RDAwMThEMURENTQxMzIwMEVEMTlEOSAvKiBKU0NyeXB0b0tl
eVVzYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzlBQ0FDMDFGM0NGMUFGMDBGM0FBMDkgLyog
SlNDcnlwdG9Sc2FIYXNoZWRLZXlBbGdvcml0aG0uaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOUFD
QUMyMUYzQ0YxQUYwMEYzQUEwOSAvKiBKU0NyeXB0b1JzYUtleUFsZ29yaXRobS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNzFCMjg0MjcyMDNDRUM0QzAwMzZBQTVEIC8qIEpTQ1NTQW5pbWF0aW9uLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5MzBBQUM5RjI1MEVENDA5MDAxM0RBOUYgLyogSlNDU1NDb25k
aXRpb25SdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzQ2QzFGRDBDMEREQzhGMDAyMENGQzMg
LyogSlNDU1NGb250RmFjZVJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMEFBQ0EyMjUwRUQ0
MTEwMDEzREE5RiAvKiBKU0NTU0dyb3VwaW5nUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM0
NkMxRkYwQzBEREM4RjAwMjBDRkMzIC8qIEpTQ1NTSW1wb3J0UnVsZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2RkUwNzIwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVSdWxlLmggaW4g
SGVhZGVycyAqLywKKwkJCQkzMTZGRTA3NDBFNkNDQkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFt
ZXNSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzQ2QzIwMTBDMEREQzhGMDAyMENGQzMgLyog
SlNDU1NNZWRpYVJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0RTgzOTU2MURGQjJCQzQwMDdC
QzZBNyAvKiBKU0NTU05hbWVzcGFjZVJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNDZDMjAz
MEMwRERDOEYwMDIwQ0ZDMyAvKiBKU0NTU1BhZ2VSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
NENGN0IzNDA5RjZFQ0Q3MDBFQjM2NjUgLyogSlNDU1NSdWxlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBRDcyNkZFRjE2REExMUY1MDAzQTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBOEQwNUZBODBBMjNCMzAxMDA1RTcyMDMgLyogSlNDU1NSdWxlTGlzdC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMTQyMDExQjcwQTAwMzEzMzAwODMwM0Y5IC8qIEpTQ1NTU3R5bGVE
ZWNsYXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUQ3MjZGRUQxNkRBMTE3MTAwM0E0RTZE
IC8qIEpTQ1NTU3R5bGVEZWNsYXJhdGlvbkN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM0
NkMyMDcwQzBERENBMTAwMjBDRkMzIC8qIEpTQ1NTU3R5bGVSdWxlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlCQ0M1QkUwMTBDMEU5MzExMDAxMUMyREIgLyogSlNDU1NTdHlsZVNoZWV0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlGQzU0RDA1ODE2QTc2NzZFMDA1NzVFNEQgLyogSlNDU1NTdXBwb3J0c1J1
bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTlCRDRFOTE3MUM0NjI4NzIwMDUwNjVCQyAvKiBKU0N1
c3RvbUVsZW1lbnRJbnRlcmZhY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTlCRTY3MTBDMUQ1QUVC
MjUwMDM0NTUxNCAvKiBKU0N1c3RvbUVsZW1lbnRSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTQ3NzhCODAxMTVBNTgxQTAwQjVEMzcyIC8qIEpTQ3VzdG9tRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTFBRTgyRjkwMENBQUZBOUQwMDIyMzdBRSAvKiBKU0RhdGFiYXNlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCNTlERDY5OTExOTAyOUU1MDA3RTk2ODQgLyogSlNEYXRhYmFzZUNhbGxi
YWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTYxMDM5RTE4QTlENjVBMDBERDUwRDcgLyogSlNE
YXRhQ3VlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0E4M0U1MDBEN0NFMUU5MDAzNDIxQTggLyog
SlNEYXRhVHJhbnNmZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNjJBNDU4MTAxMTQ2NDcwMERG
RjNFRCAvKiBKU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGREExNUVEMjEyQjAzRjk0MDAzQTU4M0EgLyogSlNEZWxheU5vZGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTk0Nzk0OTMxMUUwNDU5RkEwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTUNvdW50
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0Nzk0OTMyMUUwNDU5RkEwMDAxOEQ4NSAvKiBKU0Rl
cHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDc5NDkz
NDFFMDQ1OUZBMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01SZWN0LmggaW4gSGVhZGVycyAq
LywKKwkJCQk5NDc5NDkzNjFFMDQ1OUZBMDAwMThEODUgLyogSlNEZXByZWNhdGVkQ1NTT01SR0JD
b2xvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ3OTQ5MzgxRTA0NTlGQTAwMDE4RDg1IC8qIEpT
RGVwcmVjYXRlZENTU09NVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk0Nzk0OTNBMUUwNDU5
RkEwMDAxOEQ4NSAvKiBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzFGQjFBNjYxMjBBNUQzRjAwREMwMkEwIC8qIEpTRGV2aWNlTW90aW9uRXZlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTU5QTg2MDA4MTE5REFGQTEwMERFRjFFRiAvKiBKU0RldmljZU9y
aWVudGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1OUREQzgzMDlFMTk4QkEwMDFC
RjNDNiAvKiBKU0RvY3VtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBRERBOTRDMjE5Njg3QUE1
MDA0NTMwMjkgLyogSlNEb2N1bWVudEN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE0OTRF
REYwQTEyM0Y0QzAwRkRBRkMxIC8qIEpTRG9jdW1lbnRGcmFnbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNzEwMjVFRTAxRjk5RjFFQzAwNEEyNTBDIC8qIEpTRG9jdW1lbnRUaW1lbGluZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNzE3MjlGN0UyMEYzQkI0NzAwODAxQ0U2IC8qIEpTRG9jdW1lbnRU
aW1lbGluZU9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMUY2MDlEMUNDNjAwMDBC
RTMyNSAvKiBKU0RvY3VtZW50VHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M1N0JGRTcxRURF
MkY2MTAwNTM0QTQ4IC8qIEpTRE9NQWJzdHJhY3RPcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxQUMyMjYwRDBEQjY5RjE5MDA4OUI2NjkgLyogSlNET01BcHBsaWNhdGlvbkNhY2hlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk3QzgxMzlBNjFFRDYyODZBMDBDRTI2RTggLyogSlNET01BdHRy
aWJ1dGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQjcwRDY0MDlFQjBDN0MwMDlEODQ2OCAvKiBK
U0RPTUJpbmRpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNkU2RkU4MUJCRDEyREYwMDBBM0Y2
NSAvKiBKU0RPTUJpbmRpbmdJbnRlcm5hbHNCdWlsdGlucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
N0M0NUM5RDQxRTNGQ0JERjAwQUFCNTU4IC8qIEpTRE9NQmluZGluZ1NlY3VyaXR5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFM0NBMEJGQzI2NzNGNDdDMDA5RkRENjcgLyogSlNET01CaW5kaW5nU2Vj
dXJpdHlJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0UxOTE3MzFGMkFCRTcxMDAyNzJG
NzkgLyogSlNET01DYWNoZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NFMTkxNzMxRjJBQkU3MTAw
MjcyRjdBIC8qIEpTRE9NQ2FjaGVTdG9yYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDFDNDQx
NjI2MEMzOEZEMDBGRjY2NzMgLyogSlNET01DYXN0VGhpc1ZhbHVlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0MTNDMkMzNDFCQzI5QThGMDA3NTIwNEMgLyogSlNET01Db25zdHJ1Y3Rvci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJOTMwODQxMzQxQ0REQjE1NTAwQjA5NThDIC8qIEpTRE9NQ29udmVydC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJN0M4RTM0QUQxRTRBMzNBRjAwNTRDRTIzIC8qIEpTRE9NQ29u
dmVydEFueS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M4RTM0QUUxRTRBMzNBRjAwNTRDRTIzIC8q
IEpTRE9NQ29udmVydEJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOEUzNEFGMUU0QTMzQUYw
MDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRCb29sZWFuLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzhF
MzRCMDFFNEEzM0FGMDA1NENFMjMgLyogSlNET01Db252ZXJ0QnVmZmVyU291cmNlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QzhFMzRCMTFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0Q2Fs
bGJhY2tzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzhFMzRCMzFFNEEzM0IwMDA1NENFMjMgLyog
SlNET01Db252ZXJ0RGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M4RTM0QjQxRTRBMzNCMDAw
NTRDRTIzIC8qIEpTRE9NQ29udmVydERpY3Rpb25hcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
OEUzNEI1MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRFbnVtZXJhdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0M4RTM0QjYxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydEV2
ZW50TGlzdGVuZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOEUzNEI3MUU0QTMzQjAwMDU0Q0Uy
MyAvKiBKU0RPTUNvbnZlcnRJbmRleGVkREIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOEUzNEI4
MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRJbnRlcmZhY2UuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDOEUzNEI5MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRKU09OLmggaW4g
SGVhZGVycyAqLywKKwkJCQk3QzhFMzRCQTFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0
TnVsbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M4RTM0QkIxRTRBMzNCMDAwNTRDRTIzIC8qIEpT
RE9NQ29udmVydE51bGxhYmxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzhFMzRCRDFFNEEzM0Iw
MDA1NENFMjMgLyogSlNET01Db252ZXJ0TnVtYmVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M4
RTM0QkUxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29udmVydE9iamVjdC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRTMyM0NGRkExRTVBRjZBRjAwRjBCNEEwIC8qIEpTRE9NQ29udmVydFByb21pc2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdDOEUzNEJGMUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNv
bnZlcnRSZWNvcmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDMUY1RDU5MUYyMkZGNzMwMEE4ODc0
RiAvKiBKU0RPTUNvbnZlcnRTY2hlZHVsZWRBY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
OEUzNEMwMUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRTZXF1ZW5jZXMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdDOEUzNEMxMUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRTZXJp
YWxpemVkU2NyaXB0VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDOEUzNEMzMUU0QTMzQjAw
MDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRTdHJpbmdzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzhF
MzRDNDFFNEEzM0IwMDA1NENFMjMgLyogSlNET01Db252ZXJ0VW5pb24uaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDOEUzNEM1MUU0QTMzQjAwMDU0Q0UyMyAvKiBKU0RPTUNvbnZlcnRWYXJpYWRpYy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJN0M4RTM0QzYxRTRBMzNCMDAwNTRDRTIzIC8qIEpTRE9NQ29u
dmVydFdlYkdMLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzhFMzRDNzFFNEEzM0IwMDA1NENFMjMg
LyogSlNET01Db252ZXJ0WFBhdGhOU1Jlc29sdmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGQzlF
MEU0RDE2NDE5QzFFMDAzOTJCRTMgLyogSlNET01DU1NOYW1lc3BhY2UuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDNjBEN0MxMEQyOUE0NjMwMEI5OTE4RiAvKiBKU0RPTUV4Y2VwdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0M0NUM5RDYxRTNGQ0JGODAwQUFCNTU4IC8qIEpTRE9NRXhjZXB0aW9u
SGFuZGxpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzOTk0NzEwMUY1MEI2RkEwMEU5RDg2QiAv
KiBKU0RPTUZpbGVTeXN0ZW0uaCBpbiBIZWFkZXJzICovLAorCQkJCTJFMDg4OEQ1MTE0ODg0OEEw
MEFGNDI2NSAvKiBKU0RPTUZvcm1EYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUMzNkMwMzBF
QjA3NkQ2MDA3NDEwQkMgLyogSlNET01HbG9iYWxPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUUzM0QwQ0JFMjY3MkUxQjYwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBp
biBIZWFkZXJzICovLAorCQkJCTdDMkJERDNFMTdDN0Y5OEMwMDM4RkYxNSAvKiBKU0RPTUdsb2Jh
bE9iamVjdFRhc2suaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQTFCMDFDMUU1NDIzOUIwMDdGMzc2
OSAvKiBKU0RPTUd1YXJkZWRPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMUY4MDlE
MUNDNjAwMDBCRTMyNSAvKiBKU0RPTUltcGxlbWVudGF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0MTM4Rjg1ODFEMjUzRjBFMDAxQ0I2MUUgLyogSlNET01JdGVyYXRvci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNDFERUZDQjYxRTU2QzFCRDAwMEQ5RTVGIC8qIEpTRE9NTWFwTGlrZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODM2QUNFRDMxRUNBQUIxOTAwNEJEMDEyIC8qIEpTRE9NTWF0cml4Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk3Q0JCQkNDQTFGNTYxN0M1MDA1RUZBQUMgLyogSlNET01NYXRy
aXgyREluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNkFDRUQ0MUVDQUFCMTkwMDRCRDAxMiAv
KiBKU0RPTU1hdHJpeEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNkFDRUQ2MUVDQUFCMTkw
MDRCRDAxMiAvKiBKU0RPTU1hdHJpeFJlYWRPbmx5LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOUQy
NDgwNzBENzU3RTdEMDBGREY5NTkgLyogSlNET01NaW1lVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTlEMjQ4MDkwRDc1N0U3RDAwRkRGOTU5IC8qIEpTRE9NTWltZVR5cGVBcnJheS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0M4MTM5QTcxRUQ2Mjg3NDAwQ0UyNkU4IC8qIEpTRE9NT3BlcmF0aW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzgxMzlBODFFRDYyODc0MDBDRTI2RTggLyogSlNET01P
cGVyYXRpb25SZXR1cm5pbmdQcm9taXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUNFNTNFMDBB
OEQxODgxMDAyMjk0N0QgLyogSlNET01QYXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE5RDI0
N0ZGMEQ3NTdFNjkwMEZERjk1OSAvKiBKU0RPTVBsdWdpbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTlEMjQ4MDEwRDc1N0U2OTAwRkRGOTU5IC8qIEpTRE9NUGx1Z2luQXJyYXkuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTBGNDk2NkFCMURCNDBDNDMwMEEyNzRCQiAvKiBKU0RPTVBvaW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwRjQ5NjZBRDFEQjQwQzQzMDBBMjc0QkIgLyogSlNET01Qb2ludEluaXQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTBGNDk2NkFGMURCNDBDNDMwMEEyNzRCQiAvKiBKU0RPTVBv
aW50UmVhZE9ubHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzN0M4NjUwMUVCNjNFM0YwMDg3QzZD
QSAvKiBKU0RPTVByb21pc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxNzJBRjkwMTgxMUJDMzcw
MEZCQURCOSAvKiBKU0RPTVByb21pc2VEZWZlcnJlZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZG
M0I5MjkxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MEZGM0I5MkIxRUUzQjZERTAwQjg0MTQ0IC8qIEpTRE9NUXVhZEluaXQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTBGNDcxMEJDMURCNTZCRTgwMDJEQ0VDMyAvKiBKU0RPTVJlY3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTBGNDcxMEJFMURCNTZCRTgwMDJEQ0VDMyAvKiBKU0RPTVJlY3RJbml0LmggaW4g
SGVhZGVycyAqLywKKwkJCQk0NjZFRDhEMzFFREUwMTQ0MDA1RTQzRjYgLyogSlNET01SZWN0TGlz
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY0NzEwQzAxREI1NkJFODAwMkRDRUMzIC8qIEpTRE9N
UmVjdFJlYWRPbmx5LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVBODZCNjBDMzM2N0U4MDBFRUE2
NDkgLyogSlNET01TZWxlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTQxM0ExQUEyMjM3MUE4
QjQwMDdFRjNBNSAvKiBKU0RPTVNldExpa2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUM1MTM3Q0Yz
MTFBNTgzNzgwMDRBREI5OSAvKiBKU0RPTVN0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDNjQ2NDk4MTFEODIzNDkwMDY0NTVCMCAvKiBKU0RPTVN0cmluZ01hcC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNzY5NDU2M0QxMjE0RDk3QzAwMDdDQkFFIC8qIEpTRE9NVG9rZW5MaXN0LmggaW4g
SGVhZGVycyAqLywKKwkJCQkyRTM3RTAwNjEyREJDNUE0MDBBNkIyMzMgLyogSlNET01VUkwuaCBp
biBIZWFkZXJzICovLAorCQkJCUJDNjkzMjc0MEQ3RTI5MzkwMEFFNDREMSAvKiBKU0RPTVdpbmRv
d0Jhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1MkZCQkJDMERFMjdDQjYwMDAxRDM4NiAvKiBK
U0RPTVdpbmRvd0N1c3RvbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDYwQ0JGMzYxRDRCQ0QwRTAw
OTJFODhFIC8qIEpTRE9NV2luZG93UHJvcGVydGllcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEw
QkNGNTYyNkYwQ0Q4QzAwNDBCMTI0IC8qIFJUQ0xvY2FsU2Vzc2lvbkRlc2NyaXB0aW9uSW5pdC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNjVFMEU5NDQxMTMzQzg5RjAwQjRDQjEwIC8qIEpTRE9NV3Jh
cHBlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M0NUM5RDMxRTNGQ0JENzAwQUFCNTU4IC8qIEpT
RE9NV3JhcHBlckNhY2hlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0E4MDYxRTFFMDNCNTg1MDA4
QTFGMjYgLyogSlNEb3VibGVSYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ3ODY4QkExMzZC
OTk5MjAwRDQwM0RGIC8qIEpTRHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTc2ODE0NDExRTcwOUZBNDAwRTc3NzU0IC8qIEpTRWNkaEtleURlcml2ZVBhcmFtcy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTdFRUFBNTUxRUEwMDFCMTAwNzAxMTI0IC8qIEpTRWNkc2FQ
YXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3NTBBOTgyMUU2QTE1MDgwMDcwNUM0QSAvKiBK
U0VjS2V5UGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTQ5NUREQjIwMkIwNkYxMDBBREZE
MzQgLyogSlNFZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMUZBMDlEMUND
NjAwMDBCRTMyNSAvKiBKU0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUFERUM3OEY4MThF
RTUzMDgwMDEzMTVDMiAvKiBKU0VsZW1lbnRDdXN0b20uaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
NzdDM0RDMURFRjg2RDcwMEE1MEJGQSAvKiBKU0VuZGluZ1R5cGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFEMDAyNkFBMjM3NEY5RUEwMENBNkNERiAvKiBKU0VudGVyUGljdHVyZUluUGljdHVyZUV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0VFNTk4RjFGNTA5NThFMDAzRThCMzAgLyogSlNF
cnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRUNGN0FERDEwMTYyQjM4MDA0MjdE
RTcgLyogSlNFcnJvckV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGM0Q0NjE0OTExNjFENTMy
MDBDQTBEMDkgLyogSlNFcnJvckhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0RTgzNzhF
MDlGODVENEYwMEI4NUFFNCAvKiBKU0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzU2NUI3
QjFEQzJENkM5MDAyMTdEQkQgLyogSlNFdmVudEN1c3RvbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
ODM2RDAzMzAxREE4QTEzRDAwRkZEOTZCIC8qIEpTRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLywK
KwkJCQk5M0I3MEQ2QTA5RUIwQzdDMDA5RDg0NjggLyogSlNFdmVudExpc3RlbmVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMEZFRjM3MkIzN0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNUZDN0RDMjZDRkUyNTYzMjAwQjg1QUU0IC8qIEpTRXZlbnRU
YXJnZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2QjYzRjZDMUM2RThEMTkwMDJFOTE0QiAvKiBK
U0V2ZW50VGFyZ2V0Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0Q0Mzc5RjFENTdCMTUz
MDBBQjg1RUEgLyogSlNFeGVjU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTcyNEVEMzMyMUEz
QThCMjMwMEY1RjEzQyAvKiBKU0VYVEJsZW5kTWluTWF4LmggaW4gSGVhZGVycyAqLywKKwkJCQk3
RTRDOTZERDFBRDQ0ODM1MDAzNjVBNTMgLyogSlNFeHRlbmRhYmxlRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTgzMTAyQjI3MUY5RUFERDkwMEU0MDRCOSAvKiBKU0V4dGVuZGFibGVNZXNzYWdl
RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTVDNDMwNEI2MTkxQUVGNDYwMDBFMkJDMCAvKiBK
U0VYVFNoYWRlclRleHR1cmVMT0QuaCBpbiBIZWFkZXJzICovLAorCQkJCTc3Mjg2OTg0MTRGRDlB
REEwMEY0ODREQyAvKiBKU0VYVFRleHR1cmVGaWx0ZXJBbmlzb3Ryb3BpYy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJN0Y0Qzk2REQxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hCb2R5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3RTRDOTZERDFBRDQ0ODM1MDAzNjVBNTIgLyogSlNGZXRjaEV2ZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk3RDRDOTZERDFBRDQ0ODM1MDAzNjVBNTAgLyogSlNGZXRjaEhl
YWRlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDRTE5MTcxMUYyQUJFNzEwMDI3MkY3OCAvKiBK
U0ZldGNoUmVmZXJyZXJQb2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTdFNEM5NkREMUFENDQ4
MzUwMDM2NUE1MCAvKiBKU0ZldGNoUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NFMTkx
NzMxRjJBQkU3MTAwMjcyRjc4IC8qIEpTRmV0Y2hSZXF1ZXN0Q2FjaGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDRTE5MTc1MUYyQUJFNzEwMDI3MkY3OCAvKiBKU0ZldGNoUmVxdWVzdENyZWRlbnRp
YWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0UxOTE3NzFGMkFCRTcxMDAyNzJGNzggLyogSlNG
ZXRjaFJlcXVlc3RJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0UxOTE3OTFGMkFCRTcxMDAy
NzJGNzggLyogSlNGZXRjaFJlcXVlc3RNb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0UxOTE3
QjFGMkFCRTcxMDAyNzJGNzggLyogSlNGZXRjaFJlcXVlc3RSZWRpcmVjdC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOEU0Qzk2REQxQUQ0NDgzNTAwMzY1QTUwIC8qIEpTRmV0Y2hSZXNwb25zZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkMwMEYwMTUwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJODM3MDU2OEUxRjUwOTE1NzAwRDkzNDI1IC8qIEpTRmlsZUNhbGxi
YWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzAwRjAxNzBFMEExODk1MDBGRDA0RTMgLyogSlNG
aWxlTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU5NEY0M0MxMTkyMDdEQTAwQjdGNzVEIC8q
IEpTRmlsZVJlYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODk4Nzg1RjUxMjJFMUVBQzAwM0FB
QkRBIC8qIEpTRmlsZVJlYWRlclN5bmMuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzM0I5RTMyMUY1
MDhEODUwMEUwRTQyOCAvKiBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlFbnRyeS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJODM2NTg5REUxRjU0QTc2OTAwREMzMUY0IC8qIEpTRmlsZVN5c3RlbURpcmVjdG9y
eVJlYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2NTg5RTAxRjU0QTc2RTAwREMzMUY0IC8q
IEpTRmlsZVN5c3RlbUVudHJpZXNDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMzQjlF
MzQxRjUwOEQ4NTAwRTBFNDI4IC8qIEpTRmlsZVN5c3RlbUVudHJ5LmggaW4gSGVhZGVycyAqLywK
KwkJCQk4MzcwNTY5MDFGNTA5MTVDMDBEOTM0MjUgLyogSlNGaWxlU3lzdGVtRW50cnlDYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMzQjlFMzYxRjUwOEQ4NTAwRTBFNDI4IC8qIEpTRmls
ZVN5c3RlbUZpbGVFbnRyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzEyQkU0ODgxRkU4Njg2QTAw
MjAzMUNDIC8qIEpTRmlsbE1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUI2RDlEMjdCMTRFQUMw
ODYwMDkwRDc1RSAvKiBKU0ZvY3VzRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUMyODA4MzNG
MUM2REMyNkYwMDE0NTFCNiAvKiBKU0ZvbnRGYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQzI0
RUVBOTFDNzJBN0I0MDA4MEY4RkMgLyogSlNGb250RmFjZVNldC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRkRBMTVFQUMxMkIwM0VFMTAwM0E1ODNBIC8qIEpTR2Fpbk5vZGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxOEY1MDAyMTk0Q0FDM0EwMDgxQkFBRSAvKiBKU0dhbWVwYWQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTUxOEY1MDA0MTk0Q0FDM0EwMDgxQkFBRSAvKiBKU0dhbWVwYWRCdXR0b24uaCBp
biBIZWFkZXJzICovLAorCQkJCUZFODBEQTY0MEU5QzQ3MDMwMDBENkY3NSAvKiBKU0dlb2xvY2F0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTgwREE2NjBFOUM0NzAzMDAwRDZGNzUgLyogSlNH
ZW9wb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZEQTdDMUYxODgzMjJGQzAwQzk1NEI1
IC8qIEpTR2VzdHVyZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTNGMUQ1RDIzREYyNTgy
MDAzRjVFRkEgLyogSlNHZXRBbmltYXRpb25zT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
ODQ4MkI3NTIxMTk4Q0I2QjAwQkZCMDA1IC8qIEpTSGFzaENoYW5nZUV2ZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCQzk0RDE0RjBDMjc1QzY4MDA2QkM2MTcgLyogSlNIaXN0b3J5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1Nzk1N0NCNzFFOTcyQzc4MDA4MDcyQUIgLyogSlNIa2RmUGFyYW1zLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1N0UyMzM2NzFEQ0FCMjFDMDBGMjhEMDEgLyogSlNIbWFjS2V5
UGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzk3RTQxMzEwOTE1NEZBMDAxMEQzNjEgLyog
SlNIVE1MQWxsQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE0QTJERjAwQTFCODUy
QTAwQzgwN0Y4IC8qIEpTSFRNTEFuY2hvckVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
RTJBQTFGMEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxBcmVhRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJN0M5REJGRUUxQTlDNDlCMTAwMEQ2QjI1IC8qIEpTSFRNTEF0dGFjaG1lbnRFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDQ2MTQzODBDRDY4OUM1MDBGQURBNzUgLyogSlNI
VE1MQXVkaW9FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFN0IxMTBBMTlENjA2MDA3
RkI4QzUgLyogSlNIVE1MQmFzZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTJBQTIz
MEExQ0RBQjQwMEI0MkIyNSAvKiBKU0hUTUxCb2R5RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUFFMkFBMjUwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEJSRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTgwRTdFOUYwQTFBODNFMzAwN0ZCOEM1IC8qIEpTSFRNTEJ1dHRvbkVsZW1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzOEU2NjYyMDlGMDlCODcwMDhBNDhFQyAvKiBKU0hU
TUxDYW52YXNFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0NCQUQ0MTBDMThDMTQyMDBD
RTg5MEYgLyogSlNIVE1MQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2NzU4N0Yx
QzU2RTk5QjAwOEExMDg3IC8qIEpTSFRNTERhdGFFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGNUMwNDFFNzBGRkNBOTZEMDA4MzlENEEgLyogSlNIVE1MRGF0YUxpc3RFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlEMzU5RDhCRjEyOUNBNTVDMDAwNkU1RDIgLyogSlNIVE1MRGV0YWls
c0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBODVCMUU3MEExQjI0MDUwMEQ4Qzg3QyAv
KiBKU0hUTUxEaXJlY3RvcnlFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQTg1QjJCNzBB
MUIyQUM3MDBEOEM4N0MgLyogSlNIVE1MRGl2RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MUE4NUIxRTkwQTFCMjQwNTAwRDhDODdDIC8qIEpTSFRNTERMaXN0RWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUE0OTRFMzUwQTEyMzU4QjAwRkRBRkMxIC8qIEpTSFRNTERvY3VtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQkxQTQ5NEJGQjBBMTIyRjQ0MDBGREFGQzEgLyogSlNIVE1MRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM4RTY1RjEwOUYwOTg0MDAwOEE0OEVDIC8qIEpT
SFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2RDQ0RUQw
QzA3RjJFRDAwNzJEMkM5IC8qIEpTSFRNTEVtYmVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUFFMkFBMjcwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEZpZWxkU2V0RWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMUFFMkFBMjkwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEZvbnRF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5QkY5QTg4MTE2NDhERDJGMDAxQzZCMjMgLyog
SlNIVE1MRm9ybUNvbnRyb2xzQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThEMDY0
RkMwQTIzQzBDQzAwNUU3MjAzIC8qIEpTSFRNTEZvcm1FbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCQzQ5MThDNzBCRkVBMDUwMDA5RDYzMTYgLyogSlNIVE1MRnJhbWVFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQzkyNkY4MTBDMDU1MjQ3MDA4Mjc3NkIgLyogSlNIVE1MRnJhbWVT
ZXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFN0IxNTBBMTlENjA2MDA3RkI4QzUg
LyogSlNIVE1MSGVhZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTJBQTJGMEExQ0RB
QjQwMEI0MkIyNSAvKiBKU0hUTUxIZWFkaW5nRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MUFFMkFBMzEwQTFDREFCNDAwQjQyQjI1IC8qIEpTSFRNTEhSRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMUE4NUIxOTAwQTFCMThBMjAwRDhDODdDIC8qIEpTSFRNTEh0bWxFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCQzQ5MThDOTBCRkVBMDUwMDA5RDYzMTYgLyogSlNIVE1MSUZy
YW1lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFMkFBOTgwQTFDREQyRDAwQjQyQjI1
IC8qIEpTSFRNTEltYWdlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgwRTdFOTcwQTFB
ODNFMzAwN0ZCOEM1IC8qIEpTSFRNTElucHV0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
ODM2QjA5NTYxRjVGMzREOTAwM0MzNzAyIC8qIEpTSFRNTElucHV0RWxlbWVudEVudHJpZXNBUEku
aCBpbiBIZWFkZXJzICovLAorCQkJCUE2MTQ4QTc5MTJFNDFFM0IwMDQ0QTc4NCAvKiBKU0hUTUxL
ZXlnZW5FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUUyQUIyMjBBMUNFNjNCMDBCNDJC
MjUgLyogSlNIVE1MTGFiZWxFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUUyQUIyNDBB
MUNFNjNCMDBCNDJCMjUgLyogSlNIVE1MTGVnZW5kRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUFFMkFCMjYwQTFDRTYzQjAwQjQyQjI1IC8qIEpTSFRNTExJRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTgwRTdCMEQwQTE5RDYwNjAwN0ZCOEM1IC8qIEpTSFRNTExpbmtFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUUyQUIyODBBMUNFNjNCMDBCNDJCMjUgLyogSlNIVE1M
TWFwRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM0OTFCNzkwQzAyM0VGRDAwOUQ2MzE2
IC8qIEpTSFRNTE1hcnF1ZWVFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDQ2MTQzQTBD
RDY4OUM4MDBGQURBNzUgLyogSlNIVE1MTWVkaWFFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxQUUyQUU1QzBBMUQyNkYyMDBCNDJCMjUgLyogSlNIVE1MTWVudUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUE4MEU3QTE4MEExOUMzRDYwMDdGQjhDNSAvKiBKU0hUTUxNZXRhRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdCQkUyNjcxMUFGQjNGMjAwMDVFQTAzIC8qIEpTSFRN
TE1ldGVyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFBM0QxODQyNTYyQkUwQjAwNjRF
MkE2IC8qIEpTSFRNTE1vZGVsRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFMkFCMkEw
QTFDRTYzQjAwQjQyQjI1IC8qIEpTSFRNTE1vZEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDMzA1QzdBMEMwNzZCQjMwMENEMjBGMCAvKiBKU0hUTUxPYmplY3RFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkxQTg1QjFFQjBBMUIyNDA1MDBEOEM4N0MgLyogSlNIVE1MT0xpc3RFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFN0U5QjBBMUE4M0UzMDA3RkI4QzUgLyogSlNI
VE1MT3B0R3JvdXBFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBFN0U5OTBBMUE4M0Uz
MDA3RkI4QzUgLyogSlNIVE1MT3B0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDQ4
QTI5QkYwQTQ2RDlDQjAwMzA3NTlGIC8qIEpTSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0QUQwMTczRDEyN0U4Mjg2MDAxNTAzNUYgLyogSlNIVE1MT3V0cHV0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFFMkFCQTcwQTFDRTkwNTAwQjQyQjI1IC8qIEpT
SFRNTFBhcmFncmFwaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTJBQkE5MEExQ0U5
MDUwMEI0MkIyNSAvKiBKU0hUTUxQYXJhbUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJD
M0Q4NUJDMUMwRTJFN0EwMEQzQjYxMCAvKiBKU0hUTUxQaWN0dXJlRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUFFMkFCQUIwQTFDRTkwNTAwQjQyQjI1IC8qIEpTSFRNTFByZUVsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE0MjI2RTVDMTE2M0Q2OTUwMDhCODM5NyAvKiBKU0hUTUxQ
cm9ncmVzc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTJBRUM4MEExRDI5N0IwMEI0
MkIyNSAvKiBKU0hUTUxRdW90ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTJBQkFE
MEExQ0U5MDUwMEI0MkIyNSAvKiBKU0hUTUxTY3JpcHRFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMUU2RUVBODBCNjI4REIzMDA1RjJGNzAgLyogSlNIVE1MU2VsZWN0RWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOUI2OUQzQjkxQjk5MTAwNzAwRTM1MTJCIC8qIEpTSFRNTFNsb3RF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDQ2MTQzQzBDRDY4OUNDMDBGQURBNzUgLyog
SlNIVE1MU291cmNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc1MkQzOEUxNDEzMTA0
QjAwMzMwNUJEIC8qIEpTSFRNTFNwYW5FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODBF
N0IwRTBBMTlENjA2MDA3RkI4QzUgLyogSlNIVE1MU3R5bGVFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQlCQ0ExNjlBMzBCRkQ1NUI0MDAxOUNBNzYgLyogSlNIVE1MVGFibGVDYXB0aW9uRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMwNkVERTQwQkZENkQwRDAwODU2RTlEIC8qIEpT
SFRNTFRhYmxlQ2VsbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMDZFRDlFMEJGRDY2
MDYwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUNvbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDMDZFRTA1MEJGRDcxQUEwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUJDMDZFREEwMEJGRDY2MDYwMDg1NkU5RCAvKiBKU0hUTUxUYWJsZVJvd0Vs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMDZFRDA3MEJGRDVCQUUwMDg1NkU5RCAvKiBK
U0hUTUxUYWJsZVNlY3Rpb25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlENjQ4OUQyNjE2
NkZGQ0YxMDA3QzAzMUIgLyogSlNIVE1MVGVtcGxhdGVFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlBODBFN0U5RDBBMUE4M0UzMDA3RkI4QzUgLyogSlNIVE1MVGV4dEFyZWFFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4M0UzNTlBMjFCQjEwMzFEMDAyQ0VCOTggLyogSlNIVE1MVGlt
ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU3QjBDMEExOUQ2MDYwMDdGQjhDNSAv
KiBKU0hUTUxUaXRsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MDc1NkQ0MTQyMzlB
NEYwMDQxNDE2MSAvKiBKU0hUTUxUcmFja0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
ODVCMjExMEExQjI1ODcwMEQ4Qzg3QyAvKiBKU0hUTUxVTGlzdEVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTZFNEFCQ0Q1MTM4RUEwQjcwMDcxRDI5MSAvKiBKU0hUTUxVbmtub3duRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ0NjE0MTcwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTSFRN
TFZpZGVvRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODFCRTIwRDMxMUY0QkMzMjAwOTE1
REZBIC8qIEpTSURCQ3Vyc29yLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzNEOEVGMDFFMEIyMTQz
MDAyM0IwODQgLyogSlNJREJDdXJzb3JEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUM1
ODVBNjgzMTFENEZCMDgwMDRDM0U0QiAvKiBKU0lEQkRhdGFiYXNlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDNTg1QTY5NzExRDRGQjEzMDA0QzNFNEIgLyogSlNJREJGYWN0b3J5LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlDNTcyRUUxRjEyMDFDOUJDMDA3RDhGODIgLyogSlNJREJJbmRleC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQzU4NUE2OEQxMUQ0RkIwODAwNEMzRTRCIC8qIEpTSURCS2V5UmFuZ2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCUM1ODVBNjhGMTFENEZCMDgwMDRDM0U0QiAvKiBKU0lEQk9i
amVjdFN0b3JlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDNTg1QTY5MTExRDRGQjA4MDA0QzNFNEIg
LyogSlNJREJSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5Mzg0OUMyMzI0QkVERDg5MDA0
NDhENUEgLyogSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCNjU2NjI3MDEyMEIxMjI3MDA2RUE4NUMgLyogSlNJREJUcmFuc2FjdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODM4RUY1M0MxREMxNEE3QzAwOEYwQzM5IC8qIEpTSURCVHJhbnNhY3Rp
b25Nb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNjkyMzk5NjE1MDVFMUFBMDA5RTU3RkMgLyog
SlNJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDNzc2MUFBMUY4
NzhBQTUwMEY4NjlGQyAvKiBKU0ltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJN0M3NzYxQUExRjg3OEFBNTAwRjg2OUZEIC8qIEpTSW1hZ2VCaXRtYXBSZW5k
ZXJpbmdDb250ZXh0U2V0dGluZ3MuaCBpbiBIZWFkZXJzICovLAorCQkJCUE3Nzk3OTI5MEQ2QjlF
NjQwMDM4NTFCOSAvKiBKU0ltYWdlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0MxOTNDMDEx
RjVFMTEwNTAwODhGM0U2IC8qIEpTSW1hZ2VTbW9vdGhpbmdRdWFsaXR5LmggaW4gSGVhZGVycyAq
LywKKwkJCQlBODY2MjlEMzA5REEyQjQ4MDA5NjMzQTYgLyogSlNJbnB1dEV2ZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5MTc1Q0U1RTIxRTI4MUVEMDBERjJDMjggLyogSlNJbnNwZWN0b3JBdWRp
dEFjY2Vzc2liaWxpdHlPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTkxNzVDRTVDMjFFMjgx
RUQwMERGMkMyOCAvKiBKU0luc3BlY3RvckF1ZGl0RE9NT2JqZWN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQk5MTA5RTlDODIyMkNBQkNBMDBCQjYyNjUgLyogSlNJbnNwZWN0b3JBdWRpdFJlc291cmNl
c09iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0EwRTc3MUYxMEMwMERCMTAwQTAyNzZFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjQ3MTBFNjFE
QjcwMEM3MDAyRENFQzMgLyogSlNJbnRlcnNlY3Rpb25PYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMEY4QjQ1NzYxREM0MURCQTAwNDQzQzNGIC8qIEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJD
YWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY0NzEwRTgxREI3MDBDNzAwMkRDRUMzIC8q
IEpTSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzEyNDdF
M0MxRkVBNUY5MDAwOEMwOENFIC8qIEpTSXRlcmF0aW9uQ29tcG9zaXRlT3BlcmF0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1N0UyMzM1QjFEQzdENUU1MDBGMjhEMDEgLyogSlNKc29uV2ViS2V5
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBODY2MjlEMzA5REEyQjQ4MDA5NjMzQTUgLyogSlNLZXli
b2FyZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTI0N0UzRDFGRUE1RjkwMDA4QzA4Q0Ug
LyogSlNLZXlmcmFtZUFuaW1hdGlvbk9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNTU2
Q0JFMUY5RjBBNDkwMEU3OEQwOCAvKiBKU0tleWZyYW1lRWZmZWN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQk3MTI0N0UzRTFGRUE1RjkwMDA4QzA4Q0UgLyogSlNLZXlmcmFtZUVmZmVjdE9wdGlvbnMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzNUY0NTQzMEY3QzNCNUYwMEQ3QzFGQiAvKiBKU0xhenlF
dmVudExpc3RlbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0UxQzQzQzBEOTgzMEQzMDAzQjAy
RjIgLyogSlNMb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNBODA2MjAxRTAzQjU4NTAw
OEExRjI2IC8qIEpTTG9uZ1JhbmdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREFCNkQyRTE3Qzgx
NEVFMDBDNjBCMzQgLyogSlNNZWRpYUNvbnRyb2xzSG9zdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MTU5NzQxREIxQjdEMTQwMTAwMjAxQzkyIC8qIEpTTWVkaWFEZXZpY2VJbmZvLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkxNTczOUJCQjFCNDIwMTJEMDBEMjU4QzEgLyogSlNNZWRpYURldmljZXMuaCBp
biBIZWFkZXJzICovLAorCQkJCUZEMjNBMTI2MTNGNUZBNTkwMEY2NzAwMSAvKiBKU01lZGlhRWxl
bWVudEF1ZGlvU291cmNlTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ5QkY3MTIxREJGRDkx
NDAwN0E3RDk5IC8qIEpTTWVkaWFFbmNyeXB0ZWRFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTQ0NjE0MTkwQ0Q2ODI2OTAwRkFEQTc1IC8qIEpTTWVkaWFFcnJvci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0RGNzU2QTMyMTVDMjlFOTAwRUZDQjUwIC8qIEpTTWVkaWFLZXlFbmNyeXB0aW9uU2No
ZW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDlCRjcyODFEQkZEQjBEMDA3QTdEOTkgLyogSlNN
ZWRpYUtleU1lc3NhZ2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ5QkY3MjkxREJGREIx
MDAwN0E3RDk5IC8qIEpTTWVkaWFLZXlzLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDlCRjcyQTFE
QkZEQjEzMDA3QTdEOTkgLyogSlNNZWRpYUtleVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUNERjRCNzFFMUUwMUUxMUEwMEUyMzVBMiAvKiBKU01lZGlhS2V5U2Vzc2lvblR5cGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNERjRCNzJDMUUwM0M2M0UwMEUyMzVBMiAvKiBKU01lZGlhS2V5c1Jl
cXVpcmVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDlCRjcyQjFEQkZEQjE1MDA3QTdEOTkg
LyogSlNNZWRpYUtleVN0YXR1c01hcC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ5QkY3MkMxREJG
REIxNzAwN0E3RDk5IC8qIEpTTWVkaWFLZXlTeXN0ZW1BY2Nlc3MuaCBpbiBIZWFkZXJzICovLAor
CQkJCTJEOUJGNzJEMURCRkRCMTkwMDdBN0Q5OSAvKiBKU01lZGlhS2V5U3lzdGVtQ29uZmlndXJh
dGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ5QkY3MkUxREJGREIxQzAwN0E3RDk5IC8qIEpT
TWVkaWFLZXlTeXN0ZW1NZWRpYUNhcGFiaWxpdHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDM0Mz
OUI3MEMwRDNEOEQwMDVGNEQ3QSAvKiBKU01lZGlhTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTNENDM3QTMxRDU3QjdFMjAwQUI4NUVBIC8qIEpTTWVkaWFMaXN0Q3VzdG9tLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlEM0E5NEE0NzEyMkRDNDBGMDBBMzdCQkMgLyogSlNNZWRpYVF1ZXJ5TGlzdC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q5REUxNzUxN0FBQzc0QzAwRUEzODZEIC8qIEpTTWVkaWFT
b3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3Mjc3RTREMTdEMDE4Q0MwMDE1NTM0RCAvKiBK
U01lZGlhU3RyZWFtLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzI3N0U0RjE3RDAxOENDMDAxNTUz
NEQgLyogSlNNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGREJENDgwRDE1OUJDNjg3MDA5M0VCNEYgLyogSlNNZWRpYVN0cmVhbUF1ZGlvU291cmNl
Tm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcyNzdFNTMxN0QwMThDQzAwMTU1MzREIC8qIEpT
TWVkaWFTdHJlYW1UcmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcyNzdFNTUxN0QwMThDQzAw
MTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5
MzJDQzBENTFERkZENjY3MDA0QzBGOUYgLyogSlNNZWRpYVRyYWNrQ29uc3RyYWludHMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTA3ODdDNDZBMUJGQkRGNkYwMDZEQ0Q3RiAvKiBKU01lZGlhVHJhY2tT
dXBwb3J0ZWRDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTExQUUwRDMxRkZENjFE
RjAwNDczNDhCIC8qIEpTTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCUUxMDc0MDBFMEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3NTc5M0VDOTBEMENFNzJEMDA3RkMwQUMgLyogSlNNZXNzYWdlRXZlbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUUxQURFRERBMEU3NkJEOTMwMDRBMUE1RSAvKiBKU01lc3Nh
Z2VQb3J0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFM0M5QUVDQjIxMTMxNDk5MDA0MTlCOTIgLyog
SlNNaWNyb3Rhc2tDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg2NjI5RDEwOURBMkI0
ODAwOTYzM0E1IC8qIEpTTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwQTM2QkQx
REFDNUZBRDAwNkQ3RDA5IC8qIEpTTW91c2VFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTY1REYzMUZDMDlEMUNDNjAwMDBCRTMyNSAvKiBKU011dGF0aW9uRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUM2RjA5MDJEMTQzMjdENEYwMDY4NTg0OSAvKiBKU011dGF0aW9uT2JzZXJ2ZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCUM2RjA4RkNBMTQzMTAwMEQwMDY4NTg0OSAvKiBKU011dGF0
aW9uUmVjb3JkLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0Q5QzJDMTBDMTdCNjlFMDA1QzkwQTIg
LyogSlNOYW1lZE5vZGVNYXAuaCBpbiBIZWFkZXJzICovLAorCQkJCUE5RDI0N0Y4MEQ3NTdFMzQw
MEZERjk1OSAvKiBKU05hdmlnYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzdENTEwMjUxRUQ3
NEI1ODAwREE0Qzg3IC8qIEpTTmF2aWdhdG9yQ3JlZGVudGlhbHMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTUxRjg4NkMwMUYzMjkyMzEwMEMxOTNFRiAvKiBKU05hdmlnYXRvclNlcnZpY2VXb3JrZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDOTQzOUMzMTE2Q0Y0OTQwMDQ4Qzc1MCAvKiBKU05vZGVD
dXN0b20uaCBpbiBIZWFkZXJzICovLAorCQkJCTE0MTE1QjczMDlGODRDRDYwMENBNEZDMSAvKiBK
U05vZGVGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNzUwRDhFMEE5MEU1MjEwMDBGRjIx
NSAvKiBKU05vZGVJdGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNEOUMyQzMwQzE3QjY5
RTAwNUM5MEEyIC8qIEpTTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUFEMjBCMThEMThF
OUQyMzcwMDVBODA4MyAvKiBKU05vZGVMaXN0Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKKwkJCQkz
MzUwM0NBNDEwMTc5QUQ3MDAzQjQ3RTEgLyogSlNOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDQzJERTAxMUVDOTVBNDQwMDI3Qjc3NCAvKiBKU05vdGlmaWNhdGlvblBlcm1pc3Np
b24uaCBpbiBIZWFkZXJzICovLAorCQkJCTMxRUMxRTI5MTRGRjYwRUUwMEM5NDY2MiAvKiBKU05v
dGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0U0NkY2
RkIxNjI3QTJDQTAwMDYyMjIzIC8qIEpTT0VTRWxlbWVudEluZGV4VWludC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTAwMTc4ODExMkUwMzcwNzAwNjQ4NDYyIC8qIEpTT0VTU3RhbmRhcmREZXJpdmF0
aXZlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkVCRjBFNzcxMkE5ODY4ODAwREIxNzA5IC8qIEpT
T0VTVGV4dHVyZUZsb2F0LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTQ2RkU3NTE4NDQyMzcwMDAx
QTkzN0MgLyogSlNPRVNUZXh0dXJlRmxvYXRMaW5lYXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUEz
MUM0RTU0MTZFMDJCNDAwMDJGNzk1NyAvKiBKU09FU1RleHR1cmVIYWxmRmxvYXQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTMxMDc4Q0NBMTg4MEFBQ0UwMDgwOTlEQyAvKiBKU09FU1RleHR1cmVIYWxm
RmxvYXRMaW5lYXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTc3QTE3QUE3MTJGMjhCMkEwMDRFMDJG
NiAvKiBKU09FU1ZlcnRleEFycmF5T2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlGREY2QkFG
OTEzNEE0Qzk4MDA4MjI5MjAgLyogSlNPZmZsaW5lQXVkaW9Db21wbGV0aW9uRXZlbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUZEQTkzMjY3MTY3MDNCQTkwMDg5ODJEQyAvKiBKU09mZmxpbmVBdWRp
b0NvbnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNDg3N0U2MUZBQUIwMjUwMEMwNTc1OSAv
KiBKU09mZnNjcmVlbkNhbnZhcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE0MEM1MjcxRkRGNTU4
MjAwRDJBODczIC8qIEpTT2Zmc2NyZWVuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1N0UyMzM2NTFEQzdEQjFGMDBGMjhEMDEgLyogSnNvbldlYktleS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNzEyMDczNDMyMTZERkI0MTAwQzc4MzI5IC8qIEpTT3B0aW9uYWxF
ZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCUZERUE2MjQzMTUyMTAyRTIwMDQ3OURG
MCAvKiBKU09zY2lsbGF0b3JOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzA0QTQwQzFENkRG
QzY5MDA4NkRDREIgLyogSlNPdmVyY29uc3RyYWluZWRFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDcwNEE0MTYxRDZGMzlGQjAwODZEQ0RCIC8qIEpTT3ZlcmNvbnN0cmFpbmVkRXJyb3JFdmVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUEwRDU3NDEwQTVDNzg2NzAwN0VERDRDIC8qIEpTT3Zl
cmZsb3dFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEyODRCQjExMDQ0OUZGQTAwRUFFQjUy
IC8qIEpTUGFnZVRyYW5zaXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRBMTVFQjIx
MkIwM0VFMTAwM0E1ODNBIC8qIEpTUGFubmVyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0Mx
OTNDMDMxRjVFMTEwNTAwODhGM0U2IC8qIEpTUGF0aDJELmggaW4gSGVhZGVycyAqLywKKwkJCQlB
MTY3N0UxNzIxM0UwM0YxMDBBMDhDMzQgLyogSlNQYXllckVycm9yRmllbGRzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBMUNDNTY2NzFGNDYxNDdBMDBBNDU1NUIgLyogSlNQYXltZW50QWRkcmVzcy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTFDQzU2NjkxRjQ2MTQ4MDAwQTQ1NTVCIC8qIEpTUGF5bWVu
dENvbXBsZXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUNDNTY2QjFGNDYxNDg1MDBBNDU1NUIg
LyogSlNQYXltZW50Q3VycmVuY3lBbW91bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQ0M1NjZE
MUY0NjE0OEEwMEE0NTU1QiAvKiBKU1BheW1lbnREZXRhaWxzQmFzZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTFDQzU2NkYxRjQ2MTQ4RTAwQTQ1NTVCIC8qIEpTUGF5bWVudERldGFpbHNJbml0Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBMUNDNTY3MTFGNDYxNDkzMDBBNDU1NUIgLyogSlNQYXltZW50
RGV0YWlsc01vZGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUY2MDA1QTFGNDc2NTA1MDA3
N0U4M0YgLyogSlNQYXltZW50RGV0YWlsc1VwZGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFD
QzU2NzMxRjQ2MTQ5ODAwQTQ1NTVCIC8qIEpTUGF5bWVudEl0ZW0uaCBpbiBIZWFkZXJzICovLAor
CQkJCUExNjRBMjU1MjEzNEMxQ0MwMDUwOTE1NiAvKiBKU1BheW1lbnRNZXRob2RDaGFuZ2VFdmVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFDQzU2NzUxRjQ2MTQ5RDAwQTQ1NTVCIC8qIEpTUGF5
bWVudE1ldGhvZERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQ0M1Njc3MUY0NjE0QTIwMEE0
NTU1QiAvKiBKU1BheW1lbnRPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUNDNTY3OTFG
NDYxNEE3MDBBNDU1NUIgLyogSlNQYXltZW50UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTFGNjAwNTgxRjQ3NjUwNTAwNzdFODNGIC8qIEpTUGF5bWVudFJlcXVlc3RVcGRhdGVFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTFGNjAwNTYxRjQ3NjUwNTAwNzdFODNGIC8qIEpTUGF5bWVu
dFJlcXVlc3RVcGRhdGVFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQ0M1NjdCMUY0
NjE0QUQwMEE0NTU1QiAvKiBKU1BheW1lbnRSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTFDQzU2N0QxRjQ2MTRCMjAwQTQ1NTVCIC8qIEpTUGF5bWVudFNoaXBwaW5nT3B0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMUNDNTY3RjFGNDYxNEI3MDBBNDU1NUIgLyogSlNQYXltZW50U2hp
cHBpbmdUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTY3N0UwMzIxM0UwMUM3MDBBMDhDMzQg
LyogSlNQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFNjU3
RjAxRTcxNjY1NDAwRjk0MUNBIC8qIEpTUGJrZGYyUGFyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk4QTlBNTg3NTExRTg0QzgxMDA4QUNGRDEgLyogSlNQZXJmb3JtYW5jZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQ0IzOEZENTIxQ0NGOTM5NDAwNTkyQTNGIC8qIEpTUGVyZm9ybWFuY2VFbnRyeS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTU4QzU5RDExRTM4MkVBRTAwNDc4NTlDIC8qIEpTUGVyZm9y
bWFuY2VNYXJrLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNThDNTlEMzFFMzgyRUIyMDA0Nzg1OUMg
LyogSlNQZXJmb3JtYW5jZU1lYXN1cmUuaCBpbiBIZWFkZXJzICovLAorCQkJCThBOUE1ODcxMTFF
ODRDMzYwMDhBQ0ZEMSAvKiBKU1BlcmZvcm1hbmNlTmF2aWdhdGlvbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTVBOTkzNDgxRTM4MDlDNjAwNUI1RTREIC8qIEpTUGVyZm9ybWFuY2VPYnNlcnZlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTVBOTkzNEExRTM4MDlDQjAwNUI1RTREIC8qIEpTUGVyZm9y
bWFuY2VPYnNlcnZlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUE5OTM0QzFFMzgw
OUNGMDA1QjVFNEQgLyogSlNQZXJmb3JtYW5jZU9ic2VydmVyRW50cnlMaXN0LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlDQjM4RkQ1QjFDRDIzMjVCMDA1OTJBM0YgLyogSlNQZXJmb3JtYW5jZVJlc291
cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQk4QTlBNTg4ODExRTg0RjM3MDA4QUNGRDEg
LyogSlNQZXJmb3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRFQTYyNDcxNTIx
MDJGQzAwNDc5REYwIC8qIEpTUGVyaW9kaWNXYXZlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxRDAw
MjZBNDIzNzRENjI0MDBDQTZDREYgLyogSlNQaWN0dXJlSW5QaWN0dXJlV2luZG93LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3MTJCRTQ4OTFGRTg2ODc1MDAyMDMxQ0MgLyogSlNQbGF5YmFja0RpcmVj
dGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNCNzBENkMwOUVCMEM3QzAwOUQ4NDY4IC8qIEpT
UGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4OUYwMUUxMEIz
N0JEOTAwRjNDNzM5IC8qIEpTUG9wU3RhdGVFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTk4
MzY1REQxMzU1RjU1NzAwMUIxODVEIC8qIEpTUG9zaXRpb25DYWxsYmFjay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRkU4MERBNzIwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTk4MzY1REYxMzU1RjU2MjAwMUIxODVEIC8qIEpTUG9zaXRpb25F
cnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzMzMEEwODFERjlGOTUxMDBEMzM5
NUMgLyogSlNQb3NpdGlvbk9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMjAwMDlE
MUNDNjAwMDBCRTMyNSAvKiBKU1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRTQ0NjEzRUUwQ0Q2ODFCQjAwRkFEQTc1IC8qIEpTUHJvZ3Jlc3NFdmVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTU3OEY0M0MxREUwMTQyMzAwM0RGQzZBIC8qIEpTUHJvbWlzZVJlamVj
dGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0Q4NDYzNTFGRUFGQ0QzMDBDQTM2ODIg
LyogSlNQdWJsaWNLZXlDcmVkZW50aWFsLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzMwM0MxOTIw
MDlBMkYzMDAzNTU5NjUgLyogSlNQdWJsaWNLZXlDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1NzMwM0JGNDIwMDk5MDQ2MDAzNTU5NjUgLyogSlNQdWJsaWNL
ZXlDcmVkZW50aWFsRGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTczMDNDMTEyMDA5
OUNCMTAwMzU1OTY1IC8qIEpTUHVibGljS2V5Q3JlZGVudGlhbFJlcXVlc3RPcHRpb25zLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1NzMwM0MwMDIwMDk5NTFDMDAzNTU5NjUgLyogSlNQdWJsaWNLZXlD
cmVkZW50aWFsVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3NjY0RkQxODNFNkI1QzAwMTMz
QjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUI2NThGRkEyMTUyMkVGM0EwMERENTU5NSAvKiBKU1JhZGlvTm9kZUxpc3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTY1REYzMjAyMDlEMUNDNjAwMDBCRTMyNSAvKiBKU1JhbmdlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk2QzRDOTZERjFBRDQ0ODM1MDAzNjNGNjQgLyogSlNSZWFkYWJsZUJ5dGVTdHJl
YW1Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzRDOTZERDFBRDQ0ODM1MDAzNjVB
NTAgLyogSlNSZWFkYWJsZVN0cmVhbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M0Qzk2REYxQUQ0
NDgzNTAwMzYzNTcyIC8qIEpTUmVhZGFibGVTdHJlYW1CWU9CUmVhZGVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQk2QzRDOTZERjFBRDQ0ODM1MDAzNjU2NzIgLyogSlNSZWFkYWJsZVN0cmVhbUJZT0JS
ZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk2QzRDOTZERjFBRDQ0ODM1MDAzNjVBNTAgLyog
SlNSZWFkYWJsZVN0cmVhbURlZmF1bHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3
QzRDOTZERjFBRDQ0ODM1MDAzNjVBNTAgLyogSlNSZWFkYWJsZVN0cmVhbURlZmF1bHRSZWFkZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdGNEM5NkREMUFENDQ4MzUwMDM2NUE1MSAvKiBKU1JlYWRh
YmxlU3RyZWFtU2luay5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0U0Qzk2REQxQUQ0NDgzNTAwMzY1
QTUxIC8qIEpTUmVhZGFibGVTdHJlYW1Tb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2QzM3
NjYyMjA4NTE3N0QwMEM3MzgyOSAvKiBKU1JlbW90ZURPTVdpbmRvdy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDZCQ0JCQzIyMDg1MDA4RjAwNzEwNjM4IC8qIEpTUmVtb3RlRE9NV2luZG93QmFzZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDk5OEFFQ0UxM0Y5RDZDOTAwOTBCMUFBIC8qIEpTUmVxdWVz
dEFuaW1hdGlvbkZyYW1lQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTU4QjJGQTA0MjIz
MkQ5QkUwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RkQ2QTY4ODI2RUVDMjJCMDA3QjIyMzEgLyogSlNSZXNpemVPYnNlcnZlckJveE9wdGlvbnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTU4QjJGQTA2MjIzMkRDNTUwMDkzOEQ2MyAvKiBKU1Jlc2l6ZU9i
c2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTU4QjJGQTA1MjIzMkRDNEYwMDkz
OEQ2MyAvKiBKU1Jlc2l6ZU9ic2VydmVyRW50cnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGRDZB
Njg1MjZFRUMyMjEwMDdCMjIzMSAvKiBKU1Jlc2l6ZU9ic2VydmVyT3B0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMEZENkE2ODcyNkVFQzIyNjAwN0IyMjMxIC8qIEpTUmVzaXplT2JzZXJ2ZXJT
aXplLmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0UyMzM3MTFEQ0Q0NjhGMDBGMjhEMDEgLyogSlNS
c2FIYXNoZWRJbXBvcnRQYXJhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3NjhFNDM0MURCNzUy
NDUwMEQwQTRGNyAvKiBKU1JzYUhhc2hlZEtleUdlblBhcmFtcy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTdGRURENDExREI2RDczQTAwRUI5NkY1IC8qIEpTUnNhS2V5R2VuUGFyYW1zLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1NzA2QTY5ODFEREU1RTQ2MDBBMDNCMTQgLyogSlNSc2FPYWVwUGFyYW1z
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1N0UyMzM1RDFEQzdENjA4MDBGMjhEMDEgLyogSlNSc2FP
dGhlclByaW1lc0luZm8uaCBpbiBIZWFkZXJzICovLAorCQkJCTU3NTQ3MTlGMUVDRTYyODMwMERE
NjNCMiAvKiBKU1JzYVBzc1BhcmFtcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDczNzk0RTYxOUVF
MkZGMjAwRTVBMDQ1IC8qIEpTUlRDQ29uZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MDc5NjlEQUMxN0QxNDE1MTAwN0ZGODQyIC8qIEpTUlRDRGF0YUNoYW5uZWwuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTA3OTY5REFFMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0RhdGFDaGFubmVsRXZl
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTY5REIwMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JU
Q0RUTUZTZW5kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTY5REIyMTdEMTQxNTEwMDdGRjg0
MiAvKiBKU1JUQ0RUTUZUb25lQ2hhbmdlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTY5
REI2MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ0ljZUNhbmRpZGF0ZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2RENCNEMxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRl
LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTZEQ0I0RTFFNzkxMEE2MDAxQjVGODcgLyogSlNSVENJ
Y2VHYXRoZXJpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDczNzk0RUMxOUVFMzQxRTAw
RTVBMDQ1IC8qIEpTUlRDSWNlU2VydmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTZEQ0IyMDFF
NzhDQTU1MDAxQjVGODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTA3OTY5REJBMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1BlZXJDb25uZWN0aW9uLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzk2OURCODE3RDE0MTUxMDA3RkY4NDIgLyogSlNSVENQZWVy
Q29ubmVjdGlvbkljZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1RTJDNDM3NDFCQ0YwRDc1
MDAwMUUyQkUgLyogSlNSVENSdHBQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1RTJD
NDM3MjFCQ0YwRDc1MDAwMUUyQkMgLyogSlNSVENSdHBSZWNlaXZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNUUyQzQzNzQxQkNGMEQ3NTAwMDFFMkJDIC8qIEpTUlRDUnRwU2VuZGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1RTJDNDM3MjFCQ0YwRDc1MDAwMUUyQkQgLyogSlNSVENSdHBUcmFuc2Nl
aXZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2RENCMjIxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpT
UlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTY5REJD
MTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1Nlc3Npb25EZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMzE2RENCNTAxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDU2lnbmFsaW5nU3RhdGUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTA3OTY5REMyMTdEMTQxNTEwMDdGRjg0MiAvKiBKU1JUQ1N0
YXRzUmVwb3J0LmggaW4gSGVhZGVycyAqLywKKwkJCQk1RTJDNDM2QzFCQ0YwNzFFMDAwMUUyQkMg
LyogSlNSVENUcmFja0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VDMDFDMzBDMjc0RERE
MDA5RjRFQzkgLyogSlNTY3JlZW4uaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQTE1RUNFMTJCMDNG
NjEwMDNBNTgzQSAvKiBKU1NjcmlwdFByb2Nlc3Nvck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTgzNDQ3NkVGMURBNUJDNUUwMDJCNkVCMCAvKiBKU1Njcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4MzQ0NzZFRjFEQTVCQzVFMDAyQjVFQzEgLyogSlNTY3JvbGxJbnRvVmlld09w
dGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNDQ3NkVGMURBNUJDNUUwMDJCNUVCMCAvKiBK
U1Njcm9sbExvZ2ljYWxQb3NpdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM0NDc2RUYxREE1
QkM1RTAwMkI2RUMxIC8qIEpTU2Nyb2xsT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM0
NDc2RUYxREE1QkM1RTAwMkI2RUQyIC8qIEpTU2Nyb2xsVG9PcHRpb25zLmggaW4gSGVhZGVycyAq
LywKKwkJCQlDRUQwNkFEMTFDNzc3NTQ4MDBGREZBRjEgLyogSlNTZWN1cml0eVBvbGljeVZpb2xh
dGlvbkV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTgyQzI1NjFGMzE0M0NEMDA1OUJBN0Mg
LyogSlNTZXJ2aWNlV29ya2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkVCMzdDQTFGOTdDQ0Qy
MDBCNjU1MjMgLyogSlNTZXJ2aWNlV29ya2VyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NkVCMzdDQzFGOTdDQ0QyMDBCNjU1MjMgLyogSlNTZXJ2aWNlV29ya2VyQ2xpZW50cy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTE4MkMyNTgxRjMxNDNDRDAwNTlCQTdDIC8qIEpTU2VydmljZVdvcmtl
ckNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE4MkMyNUExRjMxNDNDRDAwNTlCQTdD
IC8qIEpTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTgy
QzI1QzFGMzE0M0NEMDA1OUJBN0MgLyogSlNTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1MUYxNzUwMzFGMzU4QjNCMDBDNzQ5NTAgLyogSlNTZXJ2aWNlV29y
a2VyVXBkYXRlVmlhQ2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RUIzN0NFMUY5N0NDRDIw
MEI2NTUyMyAvKiBKU1NlcnZpY2VXb3JrZXJXaW5kb3dDbGllbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTlCREE2NEQ4MUI5NzVDRjIwMDlDNDM4NyAvKiBKU1NoYWRvd1Jvb3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQ2REZGNDlDMURDMjYyMEIwMEI4MEI0OCAvKiBKU1NoYWRvd1Jvb3RNb2RlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlDRDlERTE3QjE3QUFDNzVCMDBFQTM4NkQgLyogSlNTb3VyY2VC
dWZmZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEOURFMTdEMTdBQUM3NUIwMEVBMzg2RCAvKiBK
U1NvdXJjZUJ1ZmZlckxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUFBN0ZFRUFEMTZBNEU3NEIw
MDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUEyQTVB
RDIxNkE0ODYwQTAwOTc2QTI1IC8qIEpTU3BlZWNoU3ludGhlc2lzRXZlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUFBN0ZFRUE3MTZBNEU2RjMwMDRDMEMzMyAvKiBKU1NwZWVjaFN5bnRoZXNpc1V0
dGVyYW5jZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUE3RkVFQTkxNkE0RTZGMzAwNEMwQzMzIC8q
IEpTU3BlZWNoU3ludGhlc2lzVm9pY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDODI0MzI5MEQw
Q0U4QTIwMDQ2MEM4RiAvKiBKU1NRTEVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUU4MkZF
RDBDQUIwN0VFMDAyMjM3QUUgLyogSlNTUUxSZXN1bHRTZXQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTFBRkUxMTlBMENCRkZDQzQwMDMwMTdGQSAvKiBKU1NRTFJlc3VsdFNldFJvd0xpc3QuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUI1OURENkE1MTE5MDJBNjIwMDdFOTY4NCAvKiBKU1NRTFN0YXRlbWVu
dENhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCNTlERDZBOTExOTAyQTcxMDA3RTk2ODQg
LyogSlNTUUxTdGF0ZW1lbnRFcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzgy
NDMyQTBEMENFOEEyMDA0NjBDOEYgLyogSlNTUUxUcmFuc2FjdGlvbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjU5REQ2OUQxMTkwMkE0MjAwN0U5Njg0IC8qIEpTU1FMVHJhbnNhY3Rpb25DYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjU5REQ2QTExMTkwMkE1MjAwN0U5Njg0IC8qIEpTU1FM
VHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODY2MjlEMzA5
REEyQjQ4MDA5NjMzQTcgLyogSlNTdGF0aWNSYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFF
MEJBRUIwREE1NUQ0QTAwQTlFNDE3IC8qIEpTU3RvcmFnZUV2ZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQkwRkY1MDI2QTEwMkJBOTQzMDA2NkYzOUEgLyogSlNTdHlsZU1lZGlhLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCQ0UwMTM5QjBDMEJFRjE4MDA0Mzg2MEEgLyogSlNTdHlsZVNoZWV0LmggaW4g
SGVhZGVycyAqLywKKwkJCQlBRDcyNkZFRTE2REExMUJDMDAzQTRFNkQgLyogSlNTdHlsZVNoZWV0
Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODRFQkQ4MzBDQjhDOTc3MDAwNzk2MDkgLyog
SlNTdHlsZVNoZWV0TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTcxRjIxODkxREE1N0M1NDAw
NUM5RUZEIC8qIEpTU3VidGxlQ3J5cHRvLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjAxMTEwODBB
Qjc3NDA1MDBEQjBFNjggLyogSlNTVkdBRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjRE
OTEyOTIxM0NBOTUxRTAwRDIxOTE1IC8qIEpTU1ZHQWx0R2x5cGhEZWZFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk2NTE1RUM5MjBEOTcyM0ZGMDA2M0Q0OUEgLyogSlNTVkdBbHRHbHlwaEVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTI0RDkxMjk2MTNDQTk1NjEwMEQyMTkxNSAvKiBK
U1NWR0FsdEdseXBoSXRlbUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjJGNjk5MEFC
NzcxOTUwMDIyRUZBRCAvKiBKU1NWR0FuZ2xlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Qz
NzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlQ29sb3JFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMkZBM0QzOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZEFuZ2xl
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0QzQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdB
bmltYXRlZEJvb2xlYW4uaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDNEMEFCNzVBNkYwMDBF
NUFDNCAvKiBKU1NWR0FuaW1hdGVkRW51bWVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
RkEzRDNGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkSW50ZWdlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjJGQTNENDEwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRMZW5n
dGguaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDQzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R0FuaW1hdGVkTGVuZ3RoTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNENDUwQUI3NUE2
RjAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWROdW1iZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
RkEzRDQ3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkTnVtYmVyTGlzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjJGQTNENEIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZWRQ
cmVzZXJ2ZUFzcGVjdFJhdGlvLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q0RDBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFJlY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEz
RDRGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0FuaW1hdGVkU3RyaW5nLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMkZBM0Q1MTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdBbmltYXRlZFRyYW5zZm9y
bUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDUzMEFCNzVBNkYwMDBFNUFDNCAvKiBK
U1NWR0FuaW1hdGVFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NDk2RTM5RTEzOTgxMzZD
MDAzRUUzMkEgLyogSlNTVkdBbmltYXRlTW90aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQjJGQTNENTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQW5pbWF0ZVRyYW5zZm9ybUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDU3MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R0FuaW1hdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDU5MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR0NpcmNsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEz
RDVCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0NsaXBQYXRoRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQjJGQTNENUYwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHQ29tcG9uZW50VHJhbnNm
ZXJGdW5jdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDYxMEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR0N1cnNvckVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEz
RDYzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0RlZnNFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMkZBM0Q2NTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdEZXNjRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjJGQTNENjcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRG9jdW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjJGNjlEMEFCNzcxQjgwMDIyRUZBRCAvKiBKU1NWR0Vs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg1NDJBNzk5MEFFNUM5NDQwMERGNThERiAvKiBK
U1NWR0VsZW1lbnRXcmFwcGVyRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNENjkw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRWxsaXBzZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyRkEzRDZCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFQmxlbmRFbGVtZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlCMkZBM0Q2RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRUNvbG9y
TWF0cml4RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNENkYwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHRkVDb21wb25lbnRUcmFuc2ZlckVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyRkEzRDcxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFQ29tcG9zaXRlRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMTlCRkY2NEYxMUMwRjJBQzAwQjhDMDREIC8qIEpTU1ZHRkVD
b252b2x2ZU1hdHJpeEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDczMEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR0ZFRGlmZnVzZUxpZ2h0aW5nRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQjJGQTNENzUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVEaXNwbGFjZW1lbnRN
YXBFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q3NzBBQjc1QTZGMDAwRTVBQzQg
LyogSlNTVkdGRURpc3RhbnRMaWdodEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzNThF
ODdEMTM2MEEyRUUwMEU0NzQ4QyAvKiBKU1NWR0ZFRHJvcFNoYWRvd0VsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIyRkEzRDc5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRmxvb2RFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q3QjBBQjc1QTZGMDAwRTVBQzQgLyogSlNT
VkdGRUZ1bmNBRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEN0QwQUI3NUE2RjAw
MEU1QUM0IC8qIEpTU1ZHRkVGdW5jQkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEz
RDdGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFRnVuY0dFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMkZBM0Q4MTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRUZ1bmNSRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEODMwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVH
YXVzc2lhbkJsdXJFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q4NTBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdGRUltYWdlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJG
QTNEODcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVNZXJnZUVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUIyRkEzRDg5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFTWVyZ2VOb2RlRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQyMjQxODQxMDdFNzdGNDAwNzY2QTg3IC8qIEpT
U1ZHRkVNb3JwaG9sb2d5RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEOEIwQUI3
NUE2RjAwMEU1QUM0IC8qIEpTU1ZHRkVPZmZzZXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMkZBM0Q4RDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVBvaW50TGlnaHRFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q4RjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdGRVNw
ZWN1bGFyTGlnaHRpbmdFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q5MTBBQjc1
QTZGMDAwRTVBQzQgLyogSlNTVkdGRVNwb3RMaWdodEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyRkEzRDkzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFVGlsZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyRkEzRDk1MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0ZFVHVyYnVs
ZW5jZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDk3MEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR0ZpbHRlckVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyN0IyODI2MENF
RjBDMDcwMEQzOUQ1NCAvKiBKU1NWR0ZvbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlB
ODNCNzkwNTBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUE4M0I3OTAwMENDQUZGMTUwMDBCMDgyNSAvKiBKU1NWR0ZvbnRGYWNlRm9y
bWF0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgzQjc5MDIwQ0NBRkYxNTAwMEIwODI1
IC8qIEpTU1ZHRm9udEZhY2VOYW1lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgzQjc4
RkUwQ0NBRkYxNTAwMEIwODI1IC8qIEpTU1ZHRm9udEZhY2VTcmNFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBODNCNzhGQzBDQ0FGRjE1MDAwQjA4MjUgLyogSlNTVkdGb250RmFjZVVyaUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRDk5MEFCNzVBNkYwMDBFNUFDNCAvKiBK
U1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0Q5QjBB
Qjc1QTZGMDAwRTVBQzQgLyogSlNTVkdHRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkIy
NzNFODUyMDg2RTc0RDAwQTU0RTg3IC8qIEpTU1ZHR2VvbWV0cnlFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMjdCMjgyODBDRUYwQzA3MDBEMzlENTQgLyogSlNTVkdHbHlwaEVsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTI0RDkxMjlBMTNDQTk3MTQwMEQyMTkxNSAvKiBKU1NWR0ds
eXBoUmVmRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEOUQwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHR3JhZGllbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QkU3NDI3
MzgxRkE5MDZGQkI0RjBGMkMgLyogSlNTVkdHcmFwaGljc0VsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTg0ODUyMjdDMTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEOUYwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RBMTBBQjc1QTZGMDAwRTVBQzQgLyog
SlNTVkdMZW5ndGguaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREEzMEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR0xlbmd0aExpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREE1MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjJGQTNEQTcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHTGluZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyRkEzREE5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR01hcmtlckVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREFCMEFCNzVBNkYwMDBFNUFDNCAvKiBK
U1NWR01hc2tFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RBRDBBQjc1QTZGMDAw
RTVBQzQgLyogSlNTVkdNYXRyaXguaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREFGMEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR01ldGFkYXRhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjI3QjI4MkEwQ0VGMEMwNzAwRDM5RDU0IC8qIEpTU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDQ5NkUzQTAxMzk4MTNBNTAwM0VFMzJBIC8qIEpTU1ZHTVBhdGhF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTQyQTc5NzBBRTVDOTQzMDBERjU4REYgLyog
SlNTVkdOdW1iZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREIxMEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR051bWJlckxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREI1MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZB
M0RCNzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMkZBM0RCOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQXJjQWJzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCMkZBM0RCQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQXJj
UmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RCRDBBQjc1QTZGMDAwRTVBQzQgLyogSlNT
VkdQYXRoU2VnQ2xvc2VQYXRoLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RCRjBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljQWJzLmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMkZBM0RDMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1Ymlj
UmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RDMzBBQjc1QTZGMDAwRTVBQzQgLyogSlNT
VkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoQWJzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZB
M0RDNTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b0N1YmljU21vb3RoUmVs
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RDNzBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQ
YXRoU2VnQ3VydmV0b1F1YWRyYXRpY0Ficy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEQzkw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNSZWwuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyRkEzRENCMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdD
dXJ2ZXRvUXVhZHJhdGljU21vb3RoQWJzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RDRDBB
Qjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnQ3VydmV0b1F1YWRyYXRpY1Ntb290aFJlbC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEQ0YwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUGF0
aFNlZ0xpbmV0b0Ficy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNERDEwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyRkEzREQzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9Ib3Jpem9u
dGFsUmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RENTBBQjc1QTZGMDAwRTVBQzQgLyog
SlNTVkdQYXRoU2VnTGluZXRvUmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RENzBBQjc1
QTZGMDAwRTVBQzQgLyogSlNTVkdQYXRoU2VnTGluZXRvVmVydGljYWxBYnMuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUIyRkEzREQ5MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdMaW5ldG9W
ZXJ0aWNhbFJlbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNEREIwQUI3NUE2RjAwMEU1QUM0
IC8qIEpTU1ZHUGF0aFNlZ0xpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREREMEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdNb3ZldG9BYnMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUIyRkEzRERGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdGhTZWdNb3ZldG9SZWwuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyRkEzREUxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1BhdHRlcm5F
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTQyQTc5NTBBRTVDOTQxMDBERjU4REYgLyog
SlNTVkdQb2ludC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNERTMwQUI3NUE2RjAwMEU1QUM0
IC8qIEpTU1ZHUG9pbnRMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RFNjBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdQb2x5Z29uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJG
QTNERTgwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHUG9seWxpbmVFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMkZBM0RFQTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdQcmVzZXJ2ZUFzcGVj
dFJhdGlvLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RFQzBBQjc1QTZGMDAwRTVBQzQgLyog
SlNTVkdSYWRpYWxHcmFkaWVudEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg1NDJBNzkz
MEFFNUM5M0YwMERGNThERiAvKiBKU1NWR1JlY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEz
REVFMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1JlY3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMkZBM0RGMTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdSZW5kZXJpbmdJbnRlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUIyRkEzREYzMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1Njcmlw
dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREY1MEFCNzVBNkYwMDBFNUFDNCAv
KiBKU1NWR1NldEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREY3MEFCNzVBNkYw
MDBFNUFDNCAvKiBKU1NWR1N0b3BFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0RG
OTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTdHJpbmdMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMkZBM0RGQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdTdHlsZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIyRkEzREZEMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1NWR0VsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzREZGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1N3
aXRjaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRTAxMEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR1N5bWJvbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRTAzMEFC
NzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RleHRDb250ZW50RWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjJGQTNFMDUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGV4dEVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyMjM2MjI5MEMzQUYwNEEwMDA4Q0E5QiAvKiBKU1NWR1RleHRQYXRo
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNFMDcwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJGQTNF
MDkwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVGl0bGVFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMkZBM0UwQjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdUcmFuc2Zvcm0uaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIyRkEzRTBEMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1RyYW5zZm9ybUxp
c3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRTBGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R1RSZWZFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMkZBM0UxMTBBQjc1QTZGMDAwRTVB
QzQgLyogSlNTVkdUU3BhbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRTEzMEFC
NzVBNkYwMDBFNUFDNCAvKiBKU1NWR1VuaXRUeXBlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJG
QTNFMTUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVXNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjJGQTNFMTcwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVmlld0VsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTcxMThGRUQ1MTU2ODVDQzYwMDMwQjc5QSAvKiBKU1NWR1ZpZXdTcGVj
LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDg1MjI3RTExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdW
S2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxRENCNzAyMTU2ODE5NzYwMDg2MjI3
MSAvKiBKU1NWR1pvb21BbmRQYW4uaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRkEzRTE5MEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1pvb21FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjVERjMy
MDQwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTVGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzQTE0
QjkwQjdEMUQ1MjAwQTUzRkZEIC8qIEpTVGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlC
Q0VGNDVGNjBFNjg3QjVDMDAxQzEyODcgLyogSlNUZXh0TWV0cmljcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDcwNzU2OTUxNDIyNjY4RDAwNDE0MTYxIC8qIEpTVGV4dFRyYWNrLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwNzA3NTZERTE0MjM5QjRFMDA0MTQxNjEgLyogSlNUZXh0VHJhY2tDdWUuaCBp
biBIZWFkZXJzICovLAorCQkJCTA3MDc1NkUwMTQyMzlCNEUwMDQxNDE2MSAvKiBKU1RleHRUcmFj
a0N1ZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3QjVBMkRDMTQ2NDMyMEEwMEE4MUVDRSAv
KiBKU1RleHRUcmFja0xpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDYxNDFCMENENjgyNjkw
MEZBREE3NSAvKiBKU1RpbWVSYW5nZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGREE3QzE3MTg4
MzIyRUIwMEM5NTRCNSAvKiBKU1RvdWNoLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkRBN0MxOTE4
ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkRB
N0MxQjE4ODMyMkVCMDBDOTU0QjUgLyogSlNUb3VjaExpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTA3ODQ2Mzg1MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmggaW4gSGVhZGVycyAq
LywKKwkJCQkwNzg0NjM0MzE0NUIxNTFBMDBBNThERjEgLyogSlNUcmFja0V2ZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMTdCNDkyMTE2QTlCOEZGMDAxQzg4MzkgLyogSlNUcmFuc2l0aW9uRXZl
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNzUwRDVEMEE5MERFRTEwMDBGRjIxNSAvKiBKU1Ry
ZWVXYWxrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NjYyOUNGMDlEQTJCNDcwMDk2MzNBNSAv
KiBKU1VJRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2NTMwN0QwMURCNkVFNDgwMEU0MTM3
QyAvKiBKU1VJRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzczRkIxMjE5MUVGNkY0
MDA3REUwNjEgLyogSlNVc2VyTWVzc2FnZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdD
NzNGQjBEMTkxRUY1QTgwMDdERTA2MSAvKiBKU1VzZXJNZXNzYWdlSGFuZGxlcnNOYW1lc3BhY2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTU3MkI0MDJDMjE3NjkwMjAwMDBBRDQzRSAvKiBKU1VzZXJW
ZXJpZmljYXRpb25SZXF1aXJlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTVDNzcwOTMxMDBE
M0NBODAwNUJBMjY3IC8qIEpTVmFsaWRpdHlTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0E2
QzE1MzAyMjBCOThDQzAwNTVDQkZDIC8qIEpTVmFsdWVJbldyYXBwZWRPYmplY3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUJFOEVGMDRCMTcxQzkwMTQwMDlCNDhDMyAvKiBKU1ZpZGVvVHJhY2suaCBp
biBIZWFkZXJzICovLAorCQkJCUJFOEVGMDREMTcxQzkwMTQwMDlCNDhDMyAvKiBKU1ZpZGVvVHJh
Y2tMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkU3OTE0OTFGOTdFMDFBMDAxOTk3MzkgLyog
SlNWaXNpYmlsaXR5U3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTc3NzlCRDk2MUYzMjI0NkEw
MEMyMTQxNyAvKiBKU1Zpc3VhbFZpZXdwb3J0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTIwNTA4
MjE4QTQ2MEMzMDA4MDY0N0UgLyogSlNWVFRDdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBRjlC
MjBEMThDRkI1RjQwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
N0FGOUIyMEYxOENGQjVGNDAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRkQ4MkQ3RjgxM0Q0QzhCRDAwNEU0MzcyIC8qIEpTV2F2ZVNoYXBlck5vZGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTcxMDI1RUUyMUY5OUYxRUMwMDRBMjUwQyAvKiBKU1dlYkFuaW1h
dGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRDNGM0QzNjQxQTY5QjE5MDAwNTlGQzJCIC8qIEpT
V2ViR0wyUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdEMjBGNjMxMDdG
NDA2OTAwQTgwMzkyIC8qIEpTV2ViR0xBY3RpdmVJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
OUM3Qjk5NDEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJN0VBMzBGNkExNkRGRkU3NTAwMjU3RDBCIC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVy
ZUFUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkUyNDJCMkMyMzM1OTQwOTAwMkNBREQ0IC8qIEpT
V2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkUyNDJCMkIy
MzM1OTQwNTAwMkNBREQ0IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZUVUQzEuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdFQTMwRjZBMTdFRkZFNzUwMDI1N0QwQiAvKiBKU1dlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVQVlJUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkUzRkFEMzkxNDczM0Y0MDAwRTQy
MzA2IC8qIEpTV2ViR0xDb21wcmVzc2VkVGV4dHVyZVMzVEMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTZFRThBNzczMTBGODAzRjMwMDVBNEEyNCAvKiBKU1dlYkdMQ29udGV4dEF0dHJpYnV0ZXMuaCBp
biBIZWFkZXJzICovLAorCQkJCUJDMkNCRjRFMTQwRjFBQkQwMDM4NzlCRSAvKiBKU1dlYkdMQ29u
dGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTNGQUQzOTE0NzMzRjQwMTFFNDIzMDcg
LyogSlNXZWJHTERlYnVnUmVuZGVyZXJJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTNGQUQz
OTE0NzMzRjQwMjJFNDIzMDcgLyogSlNXZWJHTERlYnVnU2hhZGVycy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNkUzRkFEMzkxNDczM0Y0MDAwRTQyMzA3IC8qIEpTV2ViR0xEZXB0aFRleHR1cmUuaCBp
biBIZWFkZXJzICovLAorCQkJCTZFQkYwRTc3MTJBOTg2ODgwMERCMTcwQSAvKiBKU1dlYkdMRHJh
d0J1ZmZlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5QzdCOTk4MTA0MkQyRDMwMDA5RDQ0NyAv
KiBKU1dlYkdMRnJhbWVidWZmZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRjFENUMxMTJENTMz
NTYwMDgzMkJFQyAvKiBKU1dlYkdMTG9zZUNvbnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5
QzdCOTlDMTA0MkQyRDMwMDA5RDQ0NyAvKiBKU1dlYkdMUHJvZ3JhbS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNkY5OTVBMzIxQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xRdWVyeS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDlDN0I5OUUxMDQyRDJEMzAwMDlENDQ3IC8qIEpTV2ViR0xSZW5kZXJidWZm
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5RUVEMTQ3MTA1MTk2OTQwMDA5OUZBQiAvKiBKU1dl
YkdMUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkY5OTVBMzQxQTcwODMz
NzAwQTczNUY0IC8qIEpTV2ViR0xTYW1wbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUM3QjlB
MzEwNDJEMkQzMDAwOUQ0NDcgLyogSlNXZWJHTFNoYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTA3RDMzNTYxNTJCNjMwRTAwMUI2MzkzIC8qIEpTV2ViR0xTaGFkZXJQcmVjaXNpb25Gb3JtYXQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTZGOTk1QTM2MUE3MDgzMzcwMEE3MzVGNCAvKiBKU1dlYkdM
U3luYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDlDN0I5QTUxMDQyRDJEMzAwMDlENDQ3IC8qIEpT
V2ViR0xUZXh0dXJlLmggaW4gSGVhZGVycyAqLywKKwkJCQk2Rjk5NUEzODFBNzA4MzM3MDBBNzM1
RjQgLyogSlNXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQkwQzQ1
MzQyODEwQ0RCQkZBMDA4NjkxNTcgLyogSlNXZWJHTFVuaWZvcm1Mb2NhdGlvbi5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNkY5OTVBM0ExQTcwODMzNzAwQTczNUY0IC8qIEpTV2ViR0xWZXJ0ZXhBcnJh
eU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzdFRjYyRjQxMkY5REI3NDAwQzc3QkQyIC8q
IEpTV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFBMDg5
NTYxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkzMUEwODk1OTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVDb21tYW5kQnVmZmVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQkzMUEwODk1QzFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVDb21t
YW5kUXVldWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTM4RjIzQUIzMUU4RTgzRDAwMENFNDZGNSAv
KiBKU1dlYkdQVUNvbXB1dGVDb21tYW5kRW5jb2Rlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzhG
MjNBQjUxRThFODNEMDAwQ0U0NkY1IC8qIEpTV2ViR1BVQ29tcHV0ZVBpcGVsaW5lU3RhdGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTMxQTA4OTVGMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dlYkdQVURl
cHRoU3RlbmNpbERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQTA4OTYyMUU3MzhE
NTkwMDNCNjYwOSAvKiBKU1dlYkdQVURlcHRoU3RlbmNpbFN0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkzMUEwODk2NTFFNzM4RDU5MDAzQjY2MDkgLyogSlNXZWJHUFVEcmF3YWJsZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMzFBMDg5NjgxRTczOEQ1OTAwM0I2NjA5IC8qIEpTV2ViR1BVRnVuY3Rp
b24uaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQTA4OTZCMUU3MzhENTkwMDNCNjYwOSAvKiBKU1dl
YkdQVUxpYnJhcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQTA4OTZFMUU3MzhENUEwMDNCNjYw
OSAvKiBKU1dlYkdQVVJlbmRlckNvbW1hbmRFbmNvZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkz
MUEwODk3MTFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJpbmdDb250ZXh0LmggaW4g
SGVhZGVycyAqLywKKwkJCQkzMUEwODk3NDFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVSZW5k
ZXJQYXNzQXR0YWNobWVudERlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQTA4OTc3
MUU3MzhENUEwMDNCNjYwOSAvKiBKU1dlYkdQVVJlbmRlclBhc3NDb2xvckF0dGFjaG1lbnREZXNj
cmlwdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMUEwODk3QTFFNzM4RDVBMDAzQjY2MDkgLyog
SlNXZWJHUFVSZW5kZXJQYXNzRGVwdGhBdHRhY2htZW50RGVzY3JpcHRvci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMzFBMDg5N0QxRTczOEQ1QTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVyUGFzc0Rl
c2NyaXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQTA4OTgwMUU3MzhENUEwMDNCNjYwOSAv
KiBKU1dlYkdQVVJlbmRlclBpcGVsaW5lQ29sb3JBdHRhY2htZW50RGVzY3JpcHRvci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMzFBMDg5ODMxRTczOEQ1QTAwM0I2NjA5IC8qIEpTV2ViR1BVUmVuZGVy
UGlwZWxpbmVEZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMUEwODk4NjFFNzM4RDVB
MDAzQjY2MDkgLyogSlNXZWJHUFVSZW5kZXJQaXBlbGluZVN0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkzODdBRTk1QjFFOEU5MkVGMDAwMERFOTYgLyogSlNXZWJHUFVTaXplLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkzMUEwODk4OTFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVUZXh0dXJlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkzMUEwODk4QzFFNzM4RDVBMDAzQjY2MDkgLyogSlNXZWJHUFVU
ZXh0dXJlRGVzY3JpcHRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFDMEZGM0UwRTRDRUZBQzAw
N0Q2RkU1IC8qIEpTV2ViS2l0QW5pbWF0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTNG
MkIzM0VGMTY1QUYxNTYwMEUzOTg3QyAvKiBKU1dlYktpdENTU1ZpZXdwb3J0UnVsZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0NDNjk5NDExOTFFQzVGNTAwQUYyMjcwIC8qIEpTV2ViS2l0TmFtZXNw
YWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkRBN0MyNzE4ODMzMzMyMDBDOTU0QjUgLyogSlNX
ZWJLaXRQbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0OTRCRDc5RTBGNTVDOTRDMDA3NDc4MjggLyogSlNXZWJLaXRQb2ludC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMzFDMEZGNDAwRTRDRUZBQzAwN0Q2RkU1IC8qIEpTV2ViS2l0VHJhbnNpdGlvbkV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1REE1RTBGRDEwMkI5NTM4MDAwODhDRjkgLyogSlNX
ZWJTb2NrZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1REYzMjA2MDlEMUNDNjAwMDBCRTMyNSAv
KiBKU1doZWVsRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQkZCNTNEMERDRDI5Q0YwMDE5
QjNFNSAvKiBKU1dpbmRvd1Byb3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUNBQTVDNjBFOEJE
MjM2MDBBNzNFQ0EgLyogSlNXb3JrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxODI1NjkwMEVG
MkIwMkQwMDkzMzI0MiAvKiBKU1dvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFMUMzNkQzNTBFQjBBMDk0MDA3NDEwQkMgLyogSlNXb3JrZXJHbG9iYWxTY29wZUJhc2UuaCBp
biBIZWFkZXJzICovLAorCQkJCUUxQzM2MkVGMEVBRjJBQTkwMDc0MTBCQyAvKiBKU1dvcmtlckxv
Y2F0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTI3MUE1ODBFRUVDREU0MDBGNjEyMTMgLyog
SlNXb3JrZXJOYXZpZ2F0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjE3NTA2MUYzNThCRjcw
MEM3NDk1MCAvKiBKU1dvcmtlclR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTRCREVBMzJDMjE4
MDMzRUIwMDUyREZDRCAvKiBKU1dvcmtsZXRHbG9iYWxTY29wZUJhc2UuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDNEM5NkREMUFENDQ4MzUwMDM2NUE2MCAvKiBKU1dyaXRhYmxlU3RyZWFtLmggaW4g
SGVhZGVycyAqLywKKwkJCQk4MzU4Q0I3MDFDNTMyNzc1MDBFMEMyRDggLyogSlNYTUxEb2N1bWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMzNDhCRDQwREI3RjgwNDAwNEFCQUI5IC8qIEpTWE1M
SHR0cFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzRDM1QUYyMUM3MThEOTAwMEY3MEQ1
QSAvKiBKU1hNTEh0dHBSZXF1ZXN0RXZlbnRUYXJnZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUY5
MTZDNDhFMERCNTEwRjgwMDc2Q0Q4MyAvKiBKU1hNTEh0dHBSZXF1ZXN0UHJvZ3Jlc3NFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkNERkQ0OTYwRTMwNTkyRjAwOUQxMEFEIC8qIEpTWE1MSHR0
cFJlcXVlc3RVcGxvYWQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQ0U1M0Y3MEE4RDE5NDcwMDIy
OTQ3RCAvKiBKU1hNTFNlcmlhbGl6ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNzYyQzc0MEEw
NzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoRXZhbHVhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
QTc2MkM3NjBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0aEV4cHJlc3Npb24uaCBpbiBIZWFkZXJz
ICovLAorCQkJCTFBNzYyQzc4MEEwNzRGMjYwMDk4OUY1QiAvKiBKU1hQYXRoTlNSZXNvbHZlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMUE3NjJDN0EwQTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhS
ZXN1bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUZFMUVCMERDQTVGNjQwMDczOTIxOSAvKiBK
U1hTTFRQcm9jZXNzb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzQjc0RUY2MUYzRTBCRjIwMDk5
NkJDNyAvKiBLZWVwYWxpdmVSZXF1ZXN0VHJhY2tlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODUw
MzFCNDQwQTQ0RUZDNzAwRjk5MkUwIC8qIEtleWJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFGMDIwQUVGMjY3ODBGQ0UwMDAwODA5QSAvKiBLZXlib2FyZFNjcm9sbC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUZEOTkyRjgyNkFBMjRGOTAwODhFNTk2IC8qIEtleWJvYXJkU2Nyb2xsaW5n
QW5pbWF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRTAwRDU5MTgyREFDOEQwMDA4N0RENyAv
KiBLZXllZENvZGluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE3QTYzQzUxQjc0MzE4RjAwRTdE
Q0RDIC8qIEtleWVkRGVjb2RlckNGLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTdBNjNDNjFCNzQz
MTkyMDBFN0RDREMgLyogS2V5ZWRFbmNvZGVyQ0YuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1MTNC
M0Q3MTE0QjE2NjYwMDFDNDI5QiAvKiBLZXlFdmVudENvY29hLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkyNjU1NDEzOTE0ODk4MTFDMDAwREZDNUQgLyogS2V5RXZlbnRDb2Rlc0lPUy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNzEyNDdFMzkxRkVBNUY4NjAwOEMwOENFIC8qIEtleWZyYW1lQW5pbWF0aW9u
T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzE1NTZDQjQxRjlGMDlCQTAwRTc4RDA4IC8q
IEtleWZyYW1lRWZmZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTI0N0UzQTFGRUE1Rjg2MDA4
QzA4Q0UgLyogS2V5ZnJhbWVFZmZlY3RPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MUE1
ODE5NjIzNkY0Njc2MDBEODFBMjQgLyogS2V5ZnJhbWVFZmZlY3RTdGFjay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM1RUJBMTEwRTgyM0U0NzAwQjI1OTY1IC8qIEtleWZyYW1lTGlzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTE1RkY3RDUxOEM5NTUzODAwRkU0Qzg3IC8qIEtleXByZXNzQ29tbWFu
ZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDUwQ0VCRjExNTA3M0JCRTAwMkJCMTQ5IC8qIExhYmVs
YWJsZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE0NTZGQTI3MTFBRDRBODMwMDIwQjQy
MCAvKiBMYWJlbHNOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZFQzEyMEMyMkJGMkNE
MjAwNEU5RDM1IC8qIExheWVyQW5jZXN0b3JDbGlwcGluZ1N0YWNrLmggaW4gSGVhZGVycyAqLywK
KwkJCQk1ODAzNzE2NDFBNjZGMUQzMDBCQUY1MTkgLyogTGF5ZXJGcmFnbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJN0FBM0E2QTAxOTRCNTlCNjAwMUNCRDI0IC8qIExheWVyUG9vbC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMEY0RDVEMTgyNkNDQzRBRTAwQTlERkMxIC8qIExheWVyVHJlZUFzVGV4
dE9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTExNUNGQTk3MjA4Qjk1MkIwMDFFNjk5MSAv
KiBMYXlvdXRCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTExMzEwQ0Y2MjBCQTRBNTYwMDY1QThE
MCAvKiBMYXlvdXRDaGlsZEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMTk5RkE0NjIw
OEUzNUEzMDAyMzU4Q0MgLyogTGF5b3V0Q29udGFpbmVyQm94LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk2RkNCREI5NzI2NURGMkM4MDAyMUVBN0IgLyogTGF5b3V0Q29udGFpbmluZ0Jsb2NrQ2hhaW5J
dGVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkYyNkJCNkMyMzM0M0U2RjAwMkYyQkVBIC8q
IExheW91dENvbnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTExMzEwQ0Y1MjBCQTRBNEMwMDY1
QThEMCAvKiBMYXlvdXREZXNjZW5kYW50SXRlcmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTZG
RDA5NTQzMjUxMTE1MjIwMDk4ODc3RCAvKiBMYXlvdXRHZW9tZXRyeVJlY3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTZGNjM4M0Y2MjQyN0FGNEEwMERBQkE1MyAvKiBMYXlvdXRJbml0aWFsQ29udGFp
bmluZ0Jsb2NrLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RjBCOThCNTIzRjI2OEVDMDBFRUMyRjIg
LyogTGF5b3V0SW5saW5lVGV4dEJveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQxODAyNTUyM0Q0
NTQ5QjAwRkZCMDcxIC8qIExheW91dEludGVncmF0aW9uQm94VHJlZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJRTQwM0I3QTIyNTFCMTE5MzAwMTlFODAwIC8qIExheW91dEludGVncmF0aW9uQ292ZXJh
Z2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NTFDNjM0MjM5NDA1OEYwMDk5MzE5MCAvKiBMYXlv
dXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGM0ZCQTk4
MjU1NkUzMTMwMDM1MzBGRCAvKiBMYXlvdXRJbnRlZ3JhdGlvbklubGluZUNvbnRlbnRCdWlsZGVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RkI0N0U2MzIyNzc0MjVBMDBDN0JDQjAgLyogTGF5b3V0
SW50ZWdyYXRpb25MaW5lLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEQzM0Y0MTI1MkM0QjgzMDA4
MzdEMDUgLyogTGF5b3V0SW50ZWdyYXRpb25MaW5lSXRlcmF0b3IuaCBpbiBIZWFkZXJzICovLAor
CQkJCUU0RDMzRjQ0MjUyQzUwRTIwMDgzN0QwNSAvKiBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVy
YXRvckxlZ2FjeVBhdGguaCBpbiBIZWFkZXJzICovLAorCQkJCUU0RDMzRjQ2MjUyQzUwRkMwMDgz
N0QwNSAvKiBMYXlvdXRJbnRlZ3JhdGlvbkxpbmVJdGVyYXRvck1vZGVyblBhdGguaCBpbiBIZWFk
ZXJzICovLAorCQkJCUU0QUJBQkREMjM2MDg4RkUwMEZBNDM0NSAvKiBMYXlvdXRJbnRlZ3JhdGlv
bkxpbmVMYXlvdXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0MDNCN0EzMjUxQjExQzEwMDE5RTgw
MCAvKiBMYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUU0
QTY2NENDMjUyMUQ0QUYwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlFNEE2NjRDRjI1MjFENEUyMDA3MDgxREMgLyogTGF5b3V0SW50
ZWdyYXRpb25SdW5JdGVyYXRvckxlZ2FjeVBhdGguaCBpbiBIZWFkZXJzICovLAorCQkJCUU0QTY2
NENFMjUyMUQ0QzkwMDcwODFEQyAvKiBMYXlvdXRJbnRlZ3JhdGlvblJ1bkl0ZXJhdG9yTW9kZXJu
UGF0aC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTEzMTBDRjQyMEJBNEEzRDAwNjVBOEQwIC8qIExh
eW91dEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RkZBNEMwMTIzRjJGRUQ5MDA3RTRF
QkMgLyogTGF5b3V0TGluZUJyZWFrQm94LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFENzJGNjE1
RkU2OTUzMDBDNEMwN0UgLyogTGF5b3V0TWlsZXN0b25lLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
NDFEQzA1MTE2NDgzNEI5MDAzNzFFNUEgLyogTGF5b3V0UG9pbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTE0MURDMDUzMTY0ODM0QjkwMDM3MUU1QSAvKiBMYXlvdXRSZWN0LmggaW4gSGVhZGVycyAq
LywKKwkJCQlBMTI1MzhENDEzRjlCNjBBMDAwMjQ3NTQgLyogTGF5b3V0UmVwYWludGVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQkxMTMxMENGMzIwQkE0QTM3MDA2NUE4RDAgLyogTGF5b3V0UmVwbGFj
ZWRCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTE0MURDMDU0MTY0ODM0QjkwMDM3MUU1QSAvKiBM
YXlvdXRTaXplLmggaW4gSGVhZGVycyAqLywKKwkJCQk2RjdDQTNDNjIwOEMyOTU3MDAyRjI5QUIg
LyogTGF5b3V0U3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTExMzEwQ0YyMjBCQTRBMzIwMDY1
QThEMCAvKiBMYXlvdXRUcmVlQnVpbGRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQxREMwNDgx
NjQ4MzQ4RjAwMzcxRTVBIC8qIExheW91dFVuaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NTFD
NjMxMjM5NDAyNzkwMDk5MzE5MCAvKiBMYXlvdXRVbml0cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0RFNTU1MjQyNDA1Q0NGMjAwOEEzRERCIC8qIExlZ2FjeUNETS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0RFNTU1MjUyNDA1Q0NGMjAwOEEzRERCIC8qIExlZ2FjeUNETVByaXZhdGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNERThCNUVEMUE2OTc3NzMwMEI0QjY2QSAvKiBMZWdhY3lDRE1Qcml2YXRl
Q2xlYXJLZXkuaCBpbiBIZWFkZXJzICovLAorCQkJCUNERjRCNzEyMUUwMDg3QUUwMEUyMzVBMiAv
KiBMZWdhY3lDRE1TZXNzaW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREU4QjVGMTFBNjk3NzhC
MDBCNEI2NkEgLyogTGVnYWN5Q0RNU2Vzc2lvbkNsZWFyS2V5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkyREU3MDAyMzE5MkZFODJBMDBCMDk3NUMgLyogTGVnYWN5RGlzcGxheVJlZnJlc2hNb25pdG9y
TWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOENGRjZCRTBBMTU2MTE4MDAwQTQyMzQgLyogTGVn
YWN5RWxsaXBzaXNCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCUE4Q0ZGNUU1MEExNTVBMDUwMDBB
NDIzNCAvKiBMZWdhY3lJbmxpbmVCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCUI1N0NCNTJFMTgy
QTNFRkMwMDc5QTY0NyAvKiBMZWdhY3lJbmxpbmVFbGVtZW50Qm94LmggaW4gSGVhZGVycyAqLywK
KwkJCQlBOENGRjVFMzBBMTU1QTA1MDAwQTQyMzQgLyogTGVnYWN5SW5saW5lRmxvd0JveC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNFQTQ4NUEwOTdEOTMwMjAwOTRDOUU0IC8qIExlZ2FjeUlubGlu
ZVRleHRCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCUU0RTk0RDYxMjJGRjE1OEEwMEREMTkxRiAv
KiBMZWdhY3lMaW5lTGF5b3V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDRBNUY1OTFGRUQzOEYy
MDA3RjU5NDQgLyogTGVnYWN5TlNQYXN0ZWJvYXJkVHlwZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUExODVCNDJBMUU4MjExQTEwMERDOTExOCAvKiBMZWdhY3lQcmV2aWV3TG9hZGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBMTBEQkY0NzE4RjkyMzE3MDAwRDcwQzYgLyogTGVnYWN5UHJldmlld0xv
YWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThDRkY1RTEwQTE1NUEwNTAwMEE0MjM0
IC8qIExlZ2FjeVJvb3RJbmxpbmVCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNjJDN0Y1MTFG
NzdFRkIwMDYxMkVGRSAvKiBMZWdhY3lTY2hlbWVSZWdpc3RyeS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTRDM0IxRkEwRjBFNDE2MTAwOTY5M0Y2IC8qIExlZ2FjeVRpbGVDYWNoZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRTRCNjVBNTgxMzJGQThFNzAwNzBFN0JFIC8qIExlZ2FjeVRpbGVHcmlkLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlFNDI0QTM5RTEzMzBERjAxMDBDRjZEQzkgLyogTGVnYWN5VGls
ZUdyaWRUaWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEI2NUE1QzEzMkZBQ0IwMDA3MEU3QkUg
LyogTGVnYWN5VGlsZUxheWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEUzOUFGQjEzMzBFRkE4
MDAzQUIyNzQgLyogTGVnYWN5VGlsZUxheWVyUG9vbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEy
REQ4RjUwRDkxRTZBRjAwMEY4OUVFIC8qIExlZ2FjeVdlYkFyY2hpdmUuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDRTY1QkVCMEVBQ0RGMTYwMDdFNDUzMyAvKiBMZW5ndGguaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDRkY2NDkxMEVBRDE1QzIwMEMxRDZGNyAvKiBMZW5ndGhCb3guaCBpbiBIZWFkZXJz
ICovLAorCQkJCUU1QkE3RDYzMTUxNDM3Q0EwMEZFMUUzRiAvKiBMZW5ndGhGdW5jdGlvbnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTBGODcxNjcwMUM4NjlEODMwMDRGRjBERSAvKiBMZW5ndGhQb2lu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNGRjY0OTIwRUFEMTVDMjAwQzFENkY3IC8qIExlbmd0
aFNpemUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNTA4MDM3MUUzRjAwQjAwMDUxRDc1RCAvKiBM
aWJXZWJSVENBdWRpb01vZHVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDRFMzQ5RjkyNDZGNEUx
OTAwNjg0NzlDIC8qIExpYldlYlJUQ0VudW1UcmFpdHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQx
NTc0NzQ3MUUzODY5QTQwMEU5MTREOCAvKiBMaWJXZWJSVENNYWNyb3MuaCBpbiBIZWFkZXJzICov
LAorCQkJCTQxNzYxMkIwMUUzQTk5NDAwMEMzRDgxRCAvKiBMaWJXZWJSVENNZWRpYUVuZHBvaW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTc2MTJCMjFFM0E5OTQwMDBDM0Q4MUQgLyogTGliV2Vi
UlRDUGVlckNvbm5lY3Rpb25CYWNrZW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTU3NDc0ODFF
Mzg2OUE3MDBFOTE0RDggLyogTGliV2ViUlRDUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxQjI4QjNEMUY4NjBFRjMwMEZCNTJBQyAvKiBMaWJXZWJSVENQcm92aWRlckNvY29hLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0MTgxQzVDRDI1NTU4MzY5MDBBRUIwRkYgLyogTGliV2ViUlRDUnRw
VHJhbnNmb3JtYWJsZUZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTgxQzVEMTI1NTU4OTU2
MDBBRUIwRkYgLyogTGliV2ViUlRDUnRwVHJhbnNmb3JtQmFja2VuZC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDEwRTQ0NjEyMzQzNzNFOTAwMDE3M0Q0IC8qIExpYldlYlJUQ1NvY2tldElkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQzE0QkM3MjZERTg1ODQwMDY4NUJGNSAvKiBMaWJX
ZWJSVENVdGlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ3MzBEOTExMjQ4RjBCMzAwRDNBOUM5
IC8qIExpZ2h0U291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzk2NTBEMDBCRjIyMDA3
MUI3ODIgLyogTGluZWFyR3JhZGllbnRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
QjMxQzkxRTEwQUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCBpbiBIZWFkZXJzICov
LAorCQkJCUZGRUZBQjJBMTgzODBEQTAwMDUxNDUzNCAvKiBMaW5lTGF5b3V0U3RhdGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUZGREJDMDQ3MTgzRDI3QjcwMDQwNzEwOSAvKiBMaW5lV2lkdGguaCBp
biBIZWFkZXJzICovLAorCQkJCUNCQTlEQzBCMURGNDRERjQwMDA1Njc1QyAvKiBMaW5rSGVhZGVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTQzQjI2MzFEREQxNTIwMDAxNEZBQzYgLyogTGlua0lj
b24uaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNERBNDIyMUNERDNBODMwMEY0NDczQyAvKiBMaW5r
SWNvbkNvbGxlY3Rvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUEyNTBFMEQxQ0RENjMyMDAwRDBC
RTYzIC8qIExpbmtJY29uVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOThDRTQzMkExMjlFMDBF
NTAwNTgyMURDIC8qIExpbmtMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTk4NDI2NEYxMTJE
NTI4MEEwMDBEODhBNCAvKiBMaW5rTG9hZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlD
QkI2QjJENDFDQjdBRTUxMDA5RURFMUEgLyogTGlua1ByZWxvYWRSZXNvdXJjZUNsaWVudHMuaCBp
biBIZWFkZXJzICovLAorCQkJCTk4NUJCOTZFMTNBOTQwNTgwMDdBMEI2OSAvKiBMaW5rUmVsQXR0
cmlidXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzdGQTYyMTBEMUYwQ0JEMDBEQjIyQTkgLyog
TGl2ZU5vZGVMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFM0IyRjBGMDFEN0Y0Q0I1MDBCMEM5
RDEgLyogTG9hZGFibGVDbGFzc2ljU2NyaXB0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzA3REVE
NTFEODFFNEYyMDAxNDFDQUYgLyogTG9hZGFibGVNb2R1bGVTY3JpcHQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUUzQjJGMEVEMUQ3RjRDQTMwMEIwQzlEMSAvKiBMb2FkYWJsZVNjcmlwdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTNCMkYwRUUxRDdGNENBOTAwQjBDOUQxIC8qIExvYWRhYmxlU2NyaXB0
Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzU5RTk0OTE0RUYxRDQ5MDAyNkEyREQgLyog
TG9hZGFibGVUZXh0VHJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTY1NkQzNzMyMEFEQkE1REUw
MEE0NTU0RCAvKiBMb2FkZXJOU1VSTEV4dHJhcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFFNjgy
MTAxNjM4NzMwMjAwM0JCRjNDIC8qIExvYWRlclN0cmF0ZWd5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFNDdGQzhBMzI1Qjg0RDcyMDA1NDk1RkMgLyogTG9hZFNjaGVkdWxpbmdNb2RlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwNkU4MUVENzBBQjVENUU5MDBDODc4MzcgLyogTG9jYWxDdXJyZW50R3Jh
cGhpY3NDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQzQzREU2QjIyQUI0QjhBMDAxNTI3
RDkgLyogTG9jYWxDdXJyZW50VHJhaXRDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NDU3NzVFNTIwNDcyRjczMDA4RENFNUQgLyogTG9jYWxEZWZhdWx0U3lzdGVtQXBwZWFyYW5jZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRjU5NzNERTAxNUNGQjIwMzAwMjdGODA0IC8qIExvY2FsZUNv
Y29hLmggaW4gSGVhZGVycyAqLywKKwkJCQk3NjMzQTcyNjEzRDhCMzNBMDA4NTAxQjYgLyogTG9j
YWxlVG9TY3JpcHRNYXBwaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzVCOTA3RjIzRjYwQTUw
MDAwMDExRkYgLyogTG9jYWxpemVkRGV2aWNlTW9kZWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
NTIwN0JFMDlCRDQxMEEwMEYyMDM4RCAvKiBMb2NhbGl6ZWRTdHJpbmdzLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MUZDRDZCQjIzQ0UwMjc3MDBDNjI1NjcgLyogTG9jYWxTYW1wbGVCdWZmZXJEaXNw
bGF5TGF5ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRTFDNDFCMEQ5ODI5ODAwMDNCMDJGMiAv
KiBMb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkI0RDQxMkQyMzk4M0Y4ODAwMjQ5NEMy
IC8qIExvZ2dlZEluU3RhdHVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODIzOUUwMTA5QjNDRjhB
MDBCNjA2NDEgLyogTG9nZ2luZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOUJBMjczRjQxNzIyMDZC
QjAwOTdDRTQ3IC8qIExvZ2ljYWxTZWxlY3Rpb25PZmZzZXRDYWNoZXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTBGRENEN0YzMUQ0N0U2NTUwMDlGMDhCQyAvKiBMb2dJbml0aWFsaXphdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTEwQTkyMDgyNEQ0RjQ5OTAwQkZEODlDIC8qIExvZ2l0ZWNoR2Ft
ZXBhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNBODA2MTcxRTAzQjUxQzAwOEExRjI2IC8qIExv
bmdSYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDZFRkFGMTIxRTVGQjlGMTAwRTdGMzRCIC8q
IExvd1Bvd2VyTW9kZU5vdGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QUU2QzkzQzFCRTBD
NjAxMDBFMTlFMDMgLyogTWFpblRocmVhZFNoYXJlZFRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFNDUxQzYzMjIzOTQwMzFBMDA5OTMxOTAgLyogTWFyZ2luVHlwZXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUNFMTg2NjQ1MUY3MkU1QjQwMEEwQ0FCNiAvKiBNYXJrZWRUZXh0LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5MzMwOURGODA5OUU2NDkyMDA1NkU1ODEgLyogbWFya3VwLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5NzI4QzMxNDEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNjdW11bGF0b3Iu
aCBpbiBIZWFkZXJzICovLAorCQkJCTAwQzYwRTNGMTNENzZEN0UwMDkyQTI3NSAvKiBNYXJrdXBU
b2tlbml6ZXJJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDVCQTZBQTIzNzQ5MjZDMDA0
REZDMDcgLyogTWF0Y2hlZERlY2xhcmF0aW9uc0NhY2hlLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
QUJFNzJGNTEwNTlDMUVCMDBEODg4Q0MgLyogTWF0aE1MQW5ub3RhdGlvbkVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUZBQkU3MkY1MTA1OUMxRUIwMEQ5OTlERCAvKiBNYXRoTUxFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NEEyOEFBQzEyREZCOEFDMDBBRTkyM0IgLyogTWF0aE1M
RWxlbWVudEZhY3RvcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTBCQ0Y4M0Y3MTA1OUMxRUIwMEQ5
OTlERCAvKiBNYXRoTUxGcmFjdGlvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZBQkU3
MkY5MTA1OUMxRUIwMEQ5OTlERCAvKiBNYXRoTUxNYXRoRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDRBMjhBQUYxMkRGQjhCRjAwQUU5MjNCIC8qIE1hdGhNTE5hbWVzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlGQTY1NEE2QzExMDhBQkVEMDAyNjE2RjEgLyogTWF0aE1MT3BlcmF0b3JFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGQUJFNzJGNzEwNTlDMUVCMDBEOTk5REQgLyogTWF0
aE1MUHJlc2VudGF0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkE3NjVBNkMxMTA4
QUJFRDAwNzgyQTVDIC8qIE1hdGhNTFJvb3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlG
QTc2NUE2QzExMDhBQkVEMDAyNjE1RTAgLyogTWF0aE1MUm93RWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNEZBNjVBNkMxMTA4QUJFRDAwMjYxNUUwIC8qIE1hdGhNTFNwYWNlRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDM5MTc2RTAxMkRBMjVFMTdCQUY4MEEyIC8qIE1hdGhNTFN0
eWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGQTY1NEE2QzExMDhBQkVEMDAyNjE1RTAgLyogTWF0
aE1MVG9rZW5FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGQTY1NEE2QzExMDhBQkVEMDAy
NjI2RjEgLyogTWF0aE1MVW5kZXJPdmVyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdD
NzM4RUYxRURCRDcxQjAwM0YyQjBCIC8qIE1hdGhNTFVua25vd25FbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MzkwNDZFQTEyREEyNUU4MTJBRjgwQUMgLyogTWF0aE9wZXJhdG9yLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0OUQ1REMyQzBGNDIzQTczMDA4RjIwRkQgLyogTWF0cml4M0RUcmFu
c2Zvcm1PcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5RTkxMUM3MEVGODZENDcwMDlE
MENBRiAvKiBNYXRyaXhUcmFuc2Zvcm1PcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTQx
QzE0QkM5MjZERjc5RDcwMDY4NUJGNSAvKiBNRE5TUmVnaXN0ZXJFcnJvci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNUNCQzhEQUQxQUFBMzAyMjAwRTFDODAzIC8qIE1lZGlhQWNjZXNzaWJpbGl0eVNv
ZnRMaW5rLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFCQ0M2MTExMjRERkNCMDBCRTcwREQgLyog
TWVkaWFDYW5TdGFydExpc3RlbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRENDOUJDRjIyMzg3
RTlBMDBGRkI1MUMgLyogTWVkaWFDYXBhYmlsaXRpZXNEZWNvZGluZ0luZm8uaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEQ0M5QkQxMjIzODdFQUEwMEZGQjUxQyAvKiBNZWRpYUNhcGFiaWxpdGllc0Vu
Y29kaW5nSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzRUVGMzcyNTc5OUVGRTAwNjU2M0JC
IC8qIE1lZGlhQ2FwYWJpbGl0aWVzSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzRUVGMzky
NTc5OUY3RjAwNjU2M0JCIC8qIE1lZGlhQ29uZmlndXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDc4RTA5M0ExN0QxNkUxQzAwNDIwQUExIC8qIE1lZGlhQ29uc3RyYWludHMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNERjY1Q0M4MTQ1QjFFNzUwMEM0QzdBQSAvKiBNZWRpYUNvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCUNERjY1Q0NBMTQ1QjQ0ODgwMEM0QzdBQSAvKiBNZWRpYUNv
bnRyb2xsZXJJbnRlcmZhY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1QTFFMkU5MjVDQzc1QTkw
MDI2OEM4RSAvKiBNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDREFCNkQyOTE3QzdERTZDMDBDNjBCMzQgLyogTWVkaWFDb250cm9sc0hvc3QuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQxNzI1M0FCMTM1NEJCQkMwMDM2MEYyQSAvKiBNZWRpYUNvbnRyb2xU
ZXh0VHJhY2tDb250YWluZXJFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDNFRUYzODI1
Nzk5RjczMDA2NTYzQkIgLyogTWVkaWFEZWNvZGluZ0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEM0VFRjNFMjU3OTlGQzcwMDY1NjNCQiAvKiBNZWRpYURlY29kaW5nVHlwZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0RGMkIwMDQxODFGMDU5QzAwRjJCNDI0IC8qIE1lZGlhRGVz
Y3JpcHRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTE1MTQ1QjkwMUIzQTFDRTAwMDY2MkJGNyAv
KiBNZWRpYURldmljZUluZm8uaCBpbiBIZWFkZXJzICovLAorCQkJCTVFQTcyNUQzMUFDQUJENDcw
MEVBRDE3QiAvKiBNZWRpYURldmljZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3MjA1QUI4MTIz
OTI5MTAwMEIxNzM4MCAvKiBNZWRpYURvY3VtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDZG
MjUyRDEzRjVFRjBFMDA2NTE2NUYgLyogTWVkaWFFbGVtZW50QXVkaW9Tb3VyY2VOb2RlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk4MzBBMUM3RDI0REI3ODhCMDAyRUNDQUQgLyogTWVkaWFFbGVtZW50
QXVkaW9Tb3VyY2VPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0ZFOTlERDE4ODA3QTdE
MDAyNTY2NDggLyogTWVkaWFFbGVtZW50U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Qz
RUVGM0YyNTc5OUZDQzAwNjU2M0JCIC8qIE1lZGlhRW5jb2RpbmdDb25maWd1cmF0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQlDRDNFRUY0MDI1Nzk5RkQwMDA2NTYzQkIgLyogTWVkaWFFbmNvZGlu
Z1R5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTJEOUJGNzA2MURCRkJCMjQwMDdBN0Q5OSAvKiBN
ZWRpYUVuY3J5cHRlZEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDlCRjcwODFEQkZCQjI0
MDA3QTdEOTkgLyogTWVkaWFFbmNyeXB0ZWRFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxQjI4QjE1MUY4NTAxRDMwMEZCNTJBQyAvKiBNZWRpYUVuZHBvaW50Q29uZmlndXJhdGlvbi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0QzRUVGNDIyNTc5QjQ0QTAwNjU2M0JCIC8qIE1lZGlhRW5n
aW5lQ29uZmlndXJhdGlvbkZhY3RvcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEQzQ4QUM5MjE0
OUNGMkEwMDI0RkQ1OSAvKiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29jb2EuaCBp
biBIZWFkZXJzICovLAorCQkJCUU0NDYxM0FEMENENjMzMTAwMEZBREE3NSAvKiBNZWRpYUVycm9y
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0RTE5NTkyMjBBMzlEQUJBMDAyMjBGRTUgLyogTWVkaWFG
ZWF0dXJlTmFtZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3QTZEMUVDMTQ5MTEzNzcwMDA1MUQw
QyAvKiBNZWRpYUZyYWdtZW50VVJJUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzgyODk0
QjI1QzM2RkVEMDBBN0JBMDMgLyogTWVkaWFJbWFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RG
NEI3MUExRTAxRDNEMDAwRTIzNUEyIC8qIE1lZGlhS2V5U2Vzc2lvblR5cGUuaWRsIGluIEhlYWRl
cnMgKi8sCisJCQkJQ0RGNEI3MjgxRTAzQzU3MzAwRTIzNUEyIC8qIE1lZGlhS2V5c1JlcXVpcmVt
ZW50LmlkbCBpbiBIZWFkZXJzICovLAorCQkJCUNERjRCNzE4MUUwMUNCOTEwMEUyMzVBMiAvKiBN
ZWRpYUtleXNSZXN0cmljdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTlBQ0MwN0E4MjVDODEx
MEQwMERDNjM4NiAvKiBNZWRpYUtleVN5c3RlbUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OUFDQzA3QUYyNUM4MTQxRDAwREM2Mzg2IC8qIE1lZGlhS2V5U3lzdGVtQ29udHJvbGxlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJOUFDQzA3QTYyNUM4MTBERjAwREM2Mzg2IC8qIE1lZGlhS2V5U3lz
dGVtUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY3NjhDMzUyNkQwQUIzOTAwOERCRTBC
IC8qIE1lZGlhS2V5U3lzdGVtUmVxdWVzdElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE4RUE4MDBFMEExOTUxNkUwMEE4RUY1RiAvKiBNZWRpYUxpc3QuaCBpbiBIZWFkZXJzICovLAor
CQkJCTA3ODI4OTQ4MjVDMjNGRTUwMEE3QkEwMyAvKiBNZWRpYU1ldGFkYXRhLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwNzgyODk0QzI1QzM3MDBCMDBBN0JBMDMgLyogTWVkaWFNZXRhZGF0YUluaXQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTVFQkI4OTMxMUM3Nzc3RkYwMEM2NUQ0MSAvKiBNZWRpYVBh
eWxvYWQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3RTNERkQxMUE5RTc4NjUwMDc2NENBOCAvKiBN
ZWRpYVBsYXliYWNrVGFyZ2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzkyMTY1NTFBQTU2MEFB
MDBBM0MwNDkgLyogTWVkaWFQbGF5YmFja1RhcmdldENsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDcxRTQ5NzAxQUQ1QUI1RTAwOEE1MEI0IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDb2NvYS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMDdGODc2ODQxQUQ1ODBGOTAwOTA1ODQ5IC8qIE1lZGlhUGxh
eWJhY2tUYXJnZXRDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzdCNjQxNzFCOTVGNzAz
MDAzRTlBRDUgLyogTWVkaWFQbGF5YmFja1RhcmdldE1vY2suaCBpbiBIZWFkZXJzICovLAorCQkJ
CTA3OEU0M0RBMUFCQjZDN0UwMDFDMkZBNiAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzhFNDNERDFBQkI2RjZGMDAxQzJGQTYgLyogTWVkaWFQbGF5
YmFja1RhcmdldFBpY2tlck1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3QjY0MTMxQjk0RjEy
RTAwM0U5QUQ1IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJNb2NrLmggaW4gSGVhZGVycyAq
LywKKwkJCQlFNDQ2MTNFNDBDRDY4MUEyMDBGQURBNzUgLyogTWVkaWFQbGF5ZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUNENTIwOUU0MUIwQkQ4MzgwMDc3MTg0RSAvKiBNZWRpYVBsYXllckVudW1z
LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDI5MjYxODI1MjY0RDQ0MDAwMDc4OTggLyogTWVkaWFQ
bGF5ZXJJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzI1RUZBOTIzOUFENzkzMDBB
NTM4QTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzZGMEQw
RTEyQjgxOTI3MDBDMjZBQTQgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQlERjlBRkQ3MjEzRkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RDOEI1QTMxODA0
NjM0NzAwMTZFNjg1IC8qIE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMTUwNTI0RjQxQjcxMkZGNjAwNjk2QUE5IC8qIE1lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2JqQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3QkE1NzYy
NjBGQURGNjAwNzJGMTlGIC8qIE1lZGlhUG9zaXRpb25TdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTJFMkNBRkMxOUZGMDIwNzAwMUVFQjRGIC8qIE1lZGlhUHJvZHVjZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTRFMTk1OTJBMEEzOURBQ0MwMDIyMEZFNSAvKiBNZWRpYVF1ZXJ5LmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5NDkzQjZCRjFENzRCNDEyMDA4OEU3ODAgLyogTWVkaWFRdWVyeUJsb2Nr
V2F0Y2hlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEUxOTU5MkMwQTM5REFDQzAwMjIwRkU1IC8q
IE1lZGlhUXVlcnlFdmFsdWF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDQjVDQTQwMUU1MjVD
NzMwMEZBRUYxMyAvKiBNZWRpYVF1ZXJ5RXhwcmVzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RDNBOTRBMzkxMjJEQUJBQzAwQTM3QkJDIC8qIE1lZGlhUXVlcnlMaXN0LmggaW4gSGVhZGVycyAq
LywKKwkJCQk4NDY1MEU3RTIzODdBRDdEMDA2MjY2RTIgLyogTWVkaWFRdWVyeUxpc3RFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRDNBQTEwRjQxMjNBOThBQTAwOTIxNTJCIC8qIE1lZGlhUXVl
cnlNYXRjaGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDkzQjZDMTFENzRCNDEyMDA4OEU3ODAg
LyogTWVkaWFRdWVyeVBhcnNlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDQ3MTcxMEUyMDVBRjk0
NTAwMEExMTZFIC8qIE1lZGlhUXVlcnlQYXJzZXJDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0RDNCMDBBQjIxNUQ2OUE3MDA3NkI5ODMgLyogTWVkaWFSZWNvcmRlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNERCNzEzMEQyMTZFQ0I0RDAwOTZBNEREIC8qIE1lZGlhUmVjb3JkZXJFcnJvckV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0RDNCNTAxNjIxN0U1OEI3MDA2NjVEQjEgLyogTWVk
aWFSZWNvcmRlclByaXZhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTRENzNGOTQ2MjE4QkM1RkEw
MDNBM0VENiAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZUFWRkltcGwuaCBpbiBIZWFkZXJzICovLAor
CQkJCTQxNEI3RkFEMjREODFDQzEwMDMzRDQ0MiAvKiBNZWRpYVJlY29yZGVyUHJpdmF0ZU9wdGlv
bnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTRENzNGOTRFMjE4QzRBODcwMDNBM0VENiAvKiBNZWRp
YVJlY29yZGVyUHJpdmF0ZVdyaXRlckNvY29hLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTc2RTg5
NjIzQzM1MzdCMDAzRTgzRkUgLyogTWVkaWFSZWNvcmRlclByb3ZpZGVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQlDRDhBQ0E4RjFEMjM5NzE5MDBFQ0M1OUUgLyogTWVkaWFSZW1vdGVTb2Z0TGluay5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0VFRkNEN0ExOURCMzFGNzAwMzg3NkQ3IC8qIE1lZGlhUmVz
b3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFCRjlEQjNDMUQzOTczQUQwMDI2QUVC
NyAvKiBNZWRpYVNhbXBsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUIxMjREOEQxRDM4MEI3MDAw
RUNERkIwIC8qIE1lZGlhU2FtcGxlQVZGT2JqQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RCRUFF
QUQxOUQ5MkI2QzAwQkVCQTg4IC8qIE1lZGlhU2VsZWN0aW9uR3JvdXBBVkZPYmpDLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlBMTdEMjc1RTFFQUM1Nzk4MDBCRjAxRTcgLyogTWVkaWFTZWxlY3Rpb25P
cHRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTA3N0JBNTc1MjYwRkE1RkUwMDcyRjE5RiAvKiBN
ZWRpYVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTA3N0JBNTc3MjYwRkFFQzgwMDcyRjE5
RiAvKiBNZWRpYVNlc3Npb25BY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTA3N0JBNTdCMjYw
RkIxMDIwMDcyRjE5RiAvKiBNZWRpYVNlc3Npb25BY3Rpb25EZXRhaWxzLmggaW4gSGVhZGVycyAq
LywKKwkJCQkwNzdCQTU3ODI2MEZBRURCMDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uQWN0aW9uSGFu
ZGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3QkE1NzEyNjBGOUY3NjAwNzJGMTlGIC8qIE1l
ZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzdCQTU3RTI2MEZF
RjM2MDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcml2YXRlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwN0MxNDgyRTI2MTJBMjFGMDA3NzU4MjggLyogTWVkaWFTZXNzaW9uQ29vcmRp
bmF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE2RUNBRTUyNUI1OENDNDAwQjM0REE1
IC8qIE1lZGlhU2Vzc2lvbkdyb3VwSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RB
OTU5M0YyNDEyQkFFMDAwOTEwRUVGIC8qIE1lZGlhU2Vzc2lvbkhlbHBlcklPUy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDE0NDYwQTIyNDEyOTk0NTAwODE0QkU3IC8qIE1lZGlhU2Vzc2lvbklkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxN0Y3QUVGMjEzOUJGNkYwMEZCQTdFQyAvKiBN
ZWRpYVNlc3Npb25NYW5hZ2VyQ29jb2EuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3NjM4QTk5MTg4
NDQ4NzIwMEUxNUExQiAvKiBNZWRpYVNlc3Npb25NYW5hZ2VySU9TLmggaW4gSGVhZGVycyAqLywK
KwkJCQkwNzdCQTU3OTI2MEZBRUU4MDA3MkYxOUYgLyogTWVkaWFTZXNzaW9uUGxheWJhY2tTdGF0
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3QkE1N0EyNjBGQUVGODAwNzJGMTlGIC8qIE1lZGlh
U2Vzc2lvblJlYWR5U3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0E0OTVGMTdBOUQwMUIw
MDI3NEU0MiAvKiBNZWRpYVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q2NDFFQjMxODE4
RjVFRDAwRUU0QzQxIC8qIE1lZGlhU291cmNlUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0RDOEI1QTcxODA0NzRGNzAwMTZFNjg1IC8qIE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCBp
biBIZWFkZXJzICovLAorCQkJCUNEREMxRTdBMThBOTUyRjMwMDI3QTlENCAvKiBNZWRpYVNvdXJj
ZVByaXZhdGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTlCMTIyOUM3MjNGRTRENkEwMDhD
QTc1MSAvKiBNZWRpYVN0cmF0ZWd5LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzhFMDkxNTE3RDE0
RDFDMDA0MjBBQTEgLyogTWVkaWFTdHJlYW0uaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTRD
MTdEMTcwOTYwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbUF1ZGlvRGVzdGluYXRpb25Ob2RlLmggaW4g
SGVhZGVycyAqLywKKwkJCQkwNzgzMjI4NTE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1B
dWRpb1NvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ2NzFBNzgxNTlCQjA3MDAwMTk3NTU5
IC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzRD
QkZDMjI0REM3ODY3MDBDMkEzRDggLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZU9wdGlvbnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTA3MEY1NDk4MTdGMTJGNkIwMDE2OUUwNCAvKiBNZWRpYVN0cmVh
bUNvbnN0cmFpbnRzVmFsaWRhdGlvbkNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5
MzcxN0QxNkIyQzAwNDIwQUExIC8qIE1lZGlhU3RyZWFtUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDc4RTNDQzAxRkUxQzczQzAwNDgzQzFEIC8qIE1lZGlhU3RyZWFtUmVxdWVzdC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5MTgxN0QxNEQxQzAwNDIwQUExIC8qIE1lZGlhU3RyZWFt
VHJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTE5MTdEMTREMUMwMDQyMEFBMSAvKiBN
ZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3RkZERTY5MTgxQUVE
NDIwMDcyRDQwOSAvKiBNZWRpYVN0cmVhbVRyYWNrUHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTMyQ0MwQjcxREZGRDE1ODAwNEMwRjlGIC8qIE1lZGlhVHJhY2tDb25zdHJhaW50cy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDdDMUMwRTIxQkZCNjAwMTAwQkQyMjU2IC8qIE1lZGlhVHJhY2tT
dXBwb3J0ZWRDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE1MUYwN0UyNjE1NDM1
QTAwRkRCMkI0IC8qIE1lZGlhVW5pcXVlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MDc2MTFEQzEyNDQwRTU5QjAwRDgwNzA0IC8qIE1lZGlhVXNhZ2VJbmZvLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5MzlDMEQyQjI1NjRFN0YzMDBCMzIxMUIgLyogTWVkaWFVdGlsaXRpZXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTUxRTFCQUMzMUJEODA2NEUwMDU1RDgxRiAvKiBNZW1vcnlCYWNraW5n
U3RvcmVUcmFuc2FjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNCMTZDMTgwOTc5QzNCRDAw
NDY3NzQxIC8qIE1lbW9yeUNhY2hlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTcxMzkwODFCRjY0
REVGMDAwRDVGMDEgLyogTWVtb3J5Q3Vyc29yLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUJBNEFD
QjFCQkM1QkQ5MDBERjNENkQgLyogTWVtb3J5SURCQmFja2luZ1N0b3JlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1MThGOTcwMzFCRTk0QzYzMDAyMzE4N0MgLyogTWVtb3J5SW5kZXguaCBpbiBIZWFk
ZXJzICovLAorCQkJCTUxOTc1NUZBMUJGRDdEQzMwMDNERTk4MCAvKiBNZW1vcnlJbmRleEN1cnNv
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE3NzFERkYxQkRCNDg1MDAwQ0FFOEU0IC8qIE1lbW9y
eU9iamVjdFN0b3JlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTcxMzkwNjFCRjY0REVDMDAwRDVG
MDEgLyogTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxM0Uw
MDc5MURCMEU0RjIwMDIzNDFEMiAvKiBNZW1vcnlSZWxlYXNlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBMTFBRTBDQzFGRkQ2MDUzMDA0NzM0OEIgLyogTWVyY2hhbnRWYWxpZGF0aW9uRXZlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzMzA5REZBMDk5RTY0OTIwMDU2RTU4MSAvKiBNZXJnZUlkZW50
aWNhbEVsZW1lbnRzQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFBREVDQ0UwRTc2QUQ4
QjAwNEExQTVFIC8qIE1lc3NhZ2VDaGFubmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk3NTc5M0U4
NDBEMENFMEIzMDA3RkMwQUMgLyogTWVzc2FnZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlF
MUFERUNCRjBFNzZBQ0YxMDA0QTFBNUUgLyogTWVzc2FnZVBvcnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTUxRUNDM0Y2MjAwNTg3QkYwMDQ4M0VBRSAvKiBNZXNzYWdlUG9ydENoYW5uZWwuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTUxRUNDM0ZEMjAwNTkzMEQwMDQ4M0VBRSAvKiBNZXNzYWdlUG9ydENo
YW5uZWxQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFBNzQ4RTYyMDA2MDA0RjAwNzVC
QTY4IC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVySW1wbC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTFFQ0MzRjgyMDA1ODdCRjAwNDgzRUFFIC8qIE1lc3NhZ2VQb3J0Q2hhbm5lbFJlZ2lzdHJ5
LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUY2NDVFMDFGRjQ1OTRFMDBCNTRERUQgLyogTWVzc2Fn
ZVBvcnRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUE3NDhFMzIwMDVEMEU4MDA3
NUJBNjggLyogTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTUz
Qjg5NUFGMTlEQzdFRDkwMDlDQUE5MyAvKiBNaWNyb3Rhc2tzLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkwN0I5M0ZGQzIzQjk0RUM3MDAzNkY4RUEgLyogTUlNRVR5cGVDYWNoZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM3NzJDNEYwQzRFQjMwNDAwODMyODVGIC8qIE1JTUVUeXBlUmVnaXN0cnkuaCBp
biBIZWFkZXJzICovLAorCQkJCTUyRjEwODY2MTYyQjZEQTgwMDlBQzgxRSAvKiBNaXhlZENvbnRl
bnRDaGVja2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUUwODY2NDI0ODlEMzUzMDBFNDk2RDkg
LyogTW9ja0FwcGxlUGF5U2V0dXBGZWF0dXJlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTJERUYx
RDIzQTkxODY2MDBEODQwRjYgLyogTW9ja0F1ZGlvU2hhcmVkVW5pdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0RGMkIwMTExODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tCb3guaCBpbiBIZWFkZXJzICov
LAorCQkJCUNERjRCNzI0MUUwM0JGODEwMEUyMzVBMiAvKiBNb2NrQ0RNRmFjdG9yeS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0RGNEI3MjAxRTAzQkY2RjAwRTIzNUEyIC8qIE1vY2tDRE1GYWN0b3J5
LmlkbCBpbiBIZWFkZXJzICovLAorCQkJCTUxMDU4QUUwMUQ2N0MyMjkwMDlBNTM4QyAvKiBNb2Nr
R2FtZXBhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEwNThBRTIxRDY3QzIyOTAwOUE1MzhDIC8q
IE1vY2tHYW1lcGFkUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxM0NDRDRBMjBERTAz
NEYwMDY1QTIxQSAvKiBNb2NrTWVkaWFEZXZpY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUNERjJC
MDEzMTgyMDU0MDYwMEYyQjQyNCAvKiBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0RGMkIwMTUxODIwNTQwNjAwRjJCNDI0IC8qIE1vY2tNZWRpYVNvdXJj
ZVByaXZhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUExQkI4NUE5MjE1OUIwMkMwMDY3RTA3RCAv
KiBNb2NrUGF5bWVudEVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0Q2QTRGNDFCRUQ1Rjg4
MDAxNzQxNDYgLyogTW9ja1JlYWx0aW1lQXVkaW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTRBMEZGQTlFMUFBRjVFN0UwMDYyODAzQiAvKiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdFRTc2RUMxQkU5NkRCMDAwRjg5MTMzIC8qIE1vY2tS
ZWFsdGltZVZpZGVvU291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwN0VFNzZFRjFCRUE2MTk4
MDBGODkxMzMgLyogTW9ja1JlYWx0aW1lVmlkZW9Tb3VyY2VNYWMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUNERjJCMDE3MTgyMDU0MDcwMEYyQjQyNCAvKiBNb2NrU291cmNlQnVmZmVyUHJpdmF0ZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0RGMkIwMTkxODIwNTQwNzAwRjJCNDI0IC8qIE1vY2tUcmFj
a3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MTU2MTBDMjM0QzFDQTEwMDhGQzdBQiAvKiBNb2Nr
V2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkyREM4
RDM5ODI1RjJGRTk3MDBDRkNCQUIgLyogTW9kZWwuaCBpbiBIZWFkZXJzICovLAorCQkJCUM2RDc0
QUQ1MDlBQTI4MkUwMDBCMEE1MiAvKiBNb2RpZnlTZWxlY3Rpb25MaXN0TGV2ZWwuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTcwOUEwMUZFMUUzRDBCREQwMDZCMEQ0QyAvKiBNb2R1bGVGZXRjaEZhaWx1
cmVLaW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzIwMUMxQTFGOEU4MjEzMDA3NkEwMzIgLyog
TW9kdWxlRmV0Y2hQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMzY0MzIxQzI1RDM3
QTY3MDBGOTBFMkEgLyogTW9kdWxlU2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlF
MzUxODhCNDI1RDM4N0NGMDBBNzdBRjMgLyogTW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlGNTVCM0RDNjEyNTFGMTJEMDAzRUYyNjkgLyogTW9udGhJbnB1dFR5
cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzOTYyOEMxMjM5NTc0MzEwMDY1OEVDRCAvKiBNb3Rp
b25NYW5hZ2VyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTAzMUI0NjBBNDRFRkM3MDBG
OTkyRTAgLyogTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM3NjVGOTUxREFDNTIy
RjAwQzA2NTM3IC8qIE1vdXNlRXZlbnRJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzVDNDc2
MzA5QUM0Q0U2MDBBNkFBQjQgLyogTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODUwMzFCNDgwQTQ0RUZDNzAwRjk5MkUwIC8qIE1vdXNlUmVsYXRlZEV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOURGQzA5OUU2NDkyMDA1NkU1ODEgLyogTW92
ZVNlbGVjdGlvbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEQjE3MDA2MTRBMkJBQjIw
MEEyQjVEOSAvKiBNdWx0aUNoYW5uZWxSZXNhbXBsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUx
N0UwM0Y3MjRCNkQ5ODQwMDU0ODk1QSAvKiBNdWx0aUdhbWVwYWRQcm92aWRlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMjZGNzU2QjAxQjNCNjVBQzAwMDVERDc5IC8qIE11dGFibGVSYW5nZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMjZGNzU2QjExQjNCNjVBQzAwMDVERDc5IC8qIE11dGFibGVSYW5n
ZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUM2RjA5MDBBMTQzMjdCNjEwMDY4NTg0OSAvKiBN
dXRhdGlvbkNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTAzMUI0QTBBNDRFRkM3MDBG
OTkyRTAgLyogTXV0YXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzZGMDkwMEYxNDMy
N0I2MTAwNjg1ODQ5IC8qIE11dGF0aW9uT2JzZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUQ2
RTUyOEE0MTQ5QTkyNkQwMEVGRTFGMyAvKiBNdXRhdGlvbk9ic2VydmVySW50ZXJlc3RHcm91cC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRDZFMjc2QjAxNDYzNzQ1NTAwMUQyODBBIC8qIE11dGF0aW9u
T2JzZXJ2ZXJSZWdpc3RyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUM2RjA4RkJEMTQzMEZF
OEYwMDY4NTg0OSAvKiBNdXRhdGlvblJlY29yZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE0QkUz
QTcxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTgxODcyMjMwOTc3RDNDMDAwNTgyNkQ5IC8qIE5hbWVkTm9kZU1hcC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTgxODcyMUUwOTc3RDNDMDAwNTgyNkQ5IC8qIE5hbWVOb2RlTGlz
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzI2RDU2RTMyNTNBRTM2NjAwMDJFRjkwIC8qIE5hdGl2
ZUltYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0IyRDE3NTFCOEJDRDZBMDBBMDJFNDcgLyog
TmF0aXZlTm9kZUZpbHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEwQjlCNkMwQjc0NzU5OTAw
M0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTND
Q0YwMjcwQUY2QzUyOTAwMDE4RTg5IC8qIE5hdmlnYXRpb25BY3Rpb24uaCBpbiBIZWFkZXJzICov
LAorCQkJCTk3OUY0M0Q0MTA3NUU0NEEwMDAwRjgzQiAvKiBOYXZpZ2F0aW9uU2NoZWR1bGVyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBOUM2RTVBNjBENzQ2NDU4MDA2NDQyRTkgLyogTmF2aWdhdG9y
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTI3MTlDNzBFRUVDMTY4MDBGNjEyMTMgLyogTmF2aWdh
dG9yQmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMyMTUwN0UxRjI3RUExQjAwOTVCMTM2IC8q
IE5hdmlnYXRvckJlYWNvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ0MEU3N0EyMzNEOTRENzAw
NjNGOUFCIC8qIE5hdmlnYXRvckNsaXBib2FyZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTU5NkRE
MjkyNTE5MDNEMjAwQzI3NUE3IC8qIE5hdmlnYXRvckNvbnRhY3RzLmggaW4gSGVhZGVycyAqLywK
KwkJCQkzNzJEM0U1NzIxNjU3OEFFMDBDNUUwMjEgLyogTmF2aWdhdG9yQ3JlZGVudGlhbHMuaCBp
biBIZWFkZXJzICovLAorCQkJCTk3MTE0NjA0MTRFRjAwOUEwMDY3NEZEOSAvKiBOYXZpZ2F0b3JH
ZW9sb2NhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkI1MDdBMjQyMzRCRjM0MTAwQkU3QzYy
IC8qIE5hdmlnYXRvcklzTG9nZ2VkSW4uaCBpbiBIZWFkZXJzICovLAorCQkJCTVFQTcyNUQ2MUFD
QUJENTcwMEVBRDE3QiAvKiBOYXZpZ2F0b3JNZWRpYURldmljZXMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTA3N0JBNTcyMjYwRkEwMTQwMDcyRjE5RiAvKiBOYXZpZ2F0b3JNZWRpYVNlc3Npb24uaCBp
biBIZWFkZXJzICovLAorCQkJCTkzQjBBNjUzMjZDREQxNDEwMEFBMjFFNCAvKiBOYXZpZ2F0b3JQ
ZXJtaXNzaW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTk2RTU5REYxREYwMTI4RDAwNjYxMkI5
IC8qIE5hdmlnYXRvcldlYkRyaXZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCNzgyNDEz
MTkxRjAwRTc5NEQ2IC8qIE5hdmlnYXRvcldlYlhSLmggaW4gSGVhZGVycyAqLywKKwkJCQk4QTMw
OUM5RjEyMzk1MEJFMDBDQjkyMDQgLyogTmVzdGluZ0xldmVsSW5jcmVtZW50ZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTY1NkQzNzQzMEFEQkE1REUwMEE0NTU0RCAvKiBOZXRzY2FwZVBsdWdJblN0
cmVhbUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE5RDkzNEIxQUExMUIxRTAwQjQ2QzI0
IC8qIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk2
MjhEMjE0QzEyMTMxRUQxMDA1NURDRkMgLyogTmV0d29ya2luZ0NvbnRleHQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQxNkQ3NUEyMjBDNjUxQTUwMEQwMkQyQyAvKiBOZXR3b3JrTG9hZEluZm9ybWF0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk4QTgxQkY4NTExRENGRDkwMDBEQTJCOTggLyogTmV0
d29ya0xvYWRNZXRyaWNzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OUMyN0YwNzEzOEQyOENGMDA3
OUI3RTIgLyogTmV0d29ya1Jlc291cmNlc0RhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxRTlE
Q0U5MjMxOUNBNzYwMEYzNTk0OSAvKiBOZXR3b3JrU2VuZFF1ZXVlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxQTdGQTYxOTBEREEzQjNBMDAyOEY4QTUgLyogTmV0d29ya1N0YXRlTm90aWZpZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCUUxM0VGMzQ0MTY4NEVDRjQwMDM0QzgzRiAvKiBOZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTI2OTM5NzI0MUE0QTVCNjQwMEU4MzQ5
RCAvKiBORkEuaCBpbiBIZWFkZXJzICovLAorCQkJCTI2OTM5NzIyMUE0QTQxMkYwMEU4MzQ5RCAv
KiBORkFOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNjc3MjYwMTFBNUIzQUQ5MDAzQzI0REQg
LyogTkZBVG9ERkEuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUY0M0REMEU2NzQwMTIwMDFDMTI4
NyAvKiBOaW5lUGllY2VJbWFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQxMTVCNTIwOUY4NEI3
MTAwQ0E0RkMxIC8qIE5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzNzdGRTREMURBREUxNjUw
MENERDAyNSAvKiBOb2RlQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQk4NTRGRTczMTBB
MjI5N0JFMDA1OEQ3QUQgLyogTm9kZUZpbHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODU0RkU3
MzMwQTIyOTdCRTAwNThEN0FEIC8qIE5vZGVGaWx0ZXJDb25kaXRpb24uaCBpbiBIZWFkZXJzICov
LAorCQkJCTg1NEZFNzM1MEEyMjk3QkUwMDU4RDdBRCAvKiBOb2RlSXRlcmF0b3IuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUE4MTg3MjFCMDk3N0QzQzAwMDU4MjZEOSAvKiBOb2RlTGlzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNjMxODlBRTMwRTgzQTMzMzAwMDEyRTQxIC8qIE5vZGVSYXJlRGF0YS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNjNEN0IzMkQwRTc4Q0QzRjAwRjc2MTdDIC8qIE5vZGVSZW5k
ZXJTdHlsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQzMTA1QkIxNjc1MEYxNjAwREIyRkI4IC8q
IE5vZGVUcmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzODJBQUI0MEQ4QzM4NjEwMEYz
NTdBNiAvKiBOb2RlV2l0aEluZGV4LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTJDMEM0MTE0NkRD
NkNDMDAxNkM5MTEgLyogTm90aWZpY2F0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMzUwM0M5
QTEwMTc5QTc0MDAzQjQ3RTEgLyogTm90aWZpY2F0aW9uQ2xpZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQkzMTI4Q0E2QjE0NzMzMTYzMDA3NEM3MkEgLyogTm90aWZpY2F0aW9uQ29udHJvbGxlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJN0NDMkRFMDMxRUNBMDRBNTAwMjdCNzc0IC8qIE5vdGlmaWNh
dGlvbkRpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0NDMkRERkIxRUM5NDE1QTAwMjdC
Nzc0IC8qIE5vdGlmaWNhdGlvblBlcm1pc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTMxRkU2
REZBMTUwMDRDMkEwMDA0RUJDNCAvKiBOb3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovLAorCQkJCTk4RUIxRjk1MTMxM0ZFMDUwMEQwRTFFQSAvKiBOb3RJbXBsZW1l
bnRlZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE2RkQyNUYyNDBGQTRFNTAwNjY2MUQ4IC8qIE5v
d1BsYXlpbmdJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTc4RUYxNzI0MTI2MDg0MDAxOTND
NzQgLyogTm93UGxheWluZ01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNTY5RDBCMEQ3
RTJCODIwMDdDMzk4MyAvKiBOUF9qc29iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE5MjdG
RDIxNDE2QTE1QjAwM0E4M0M4IC8qIG5wYXBpLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQTIxOUIz
QjBEQ0E4N0FCMDA0MEUzQTAgLyogbnBmdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
OTI3RkQzMTQxNkExNUIwMDNBODNDOCAvKiBucHJ1bnRpbWUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTFBNTY5RDBGMEQ3RTJCODIwMDdDMzk4MyAvKiBucHJ1bnRpbWVfaW1wbC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMUE1NjlEMTAwRDdFMkI4MjAwN0MzOTgzIC8qIG5wcnVudGltZV9pbnRlcm5hbC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMUE1NjlEMTEwRDdFMkI4MjAwN0MzOTgzIC8qIG5wcnVudGlt
ZV9wcml2LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQTkyN0ZENDE0MTZBMTVCMDAzQTgzQzggLyog
bnB0eXBlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1MDBGMzIxM0ZERTNCRTAwOTlFQzI0IC8q
IE5TU2Nyb2xsZXJJbXBEZXRhaWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQkyREEzOTdFNTI2NUM3
Mzc1MDA0NjhGMzMgLyogTnVsbEdyYXBoaWNzQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RjU1QjNEQzgxMjUxRjEyRDAwM0VGMjY5IC8qIE51bWJlcklucHV0VHlwZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMUE1NjlEMTIwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfY2xhc3MuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTFBNTY5RDE0MEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjX2hlYWRlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMUE1NjlEMTUwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfaW5zdGFu
Y2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNTY5RDE3MEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpj
X3J1bnRpbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBNTY5RDE5MEQ3RTJCODIwMDdDMzk4MyAv
KiBvYmpjX3V0aWxpdHkuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxNjk4MjU1MTEzNDYyOUQwMDg5
NDExNSAvKiBPYmpDUnVudGltZU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0U1RDdBNzcx
NjFEM0Y4RjAwODk2QzM0IC8qIE9FU0VsZW1lbnRJbmRleFVpbnQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTkwMDE3NzQxMTJFMDM0NzgwMDY0ODQ2MiAvKiBPRVNTdGFuZGFyZERlcml2YXRpdmVzLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk2RUJGMEU0OTEyQTg5MjYxMDBEQjE3MDkgLyogT0VTVGV4dHVy
ZUZsb2F0LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTQ2RkU2RTE4NDQyMEE4MDAxQTkzN0MgLyog
T0VTVGV4dHVyZUZsb2F0TGluZWFyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMzFDNEU0RjE2RTAy
QUI0MDAyRjc5NTcgLyogT0VTVGV4dHVyZUhhbGZGbG9hdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MzEwNzhDQzgxODgwQUFCQjAwODA5OURDIC8qIE9FU1RleHR1cmVIYWxmRmxvYXRMaW5lYXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTc3QTE3QTcyMTJGMjgxODIwMDRFMDJGNiAvKiBPRVNWZXJ0ZXhB
cnJheU9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkRBM0U5NUExMzRBNDlFRjAwOEQ0QjVB
IC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMz
QUU1MjkyNEQzODZGMjAwMDE3QzRCIC8qIE9mZmxpbmVBdWRpb0NvbXBsZXRpb25FdmVudEluaXQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUZEQTkzMjVFMTY3MDNCMkEwMDg5ODJEQyAvKiBPZmZsaW5l
QXVkaW9Db250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFN0NGODRBOTI0QzY0NjFDMDBCMDZC
OTAgLyogT2ZmbGluZUF1ZGlvQ29udGV4dE9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUZE
QTNFOTVDMTM0QTQ5RUYwMDhENEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTMxNDg3N0UzMUZBQThGRTkwMEMwNTc1OSAvKiBPZmZzY3JlZW5D
YW52YXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNDBDNTIwMUZERjE1MUEwMEQyQTg3MyAvKiBP
ZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCBpbiBIZWFkZXJzICovLAorCQkJCTMx
NjQ3RkFCMjUxNjE4RTIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCMkQzREE2NTBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVDRy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjJEM0RBNjUwRDAwNkNENjAwRUY2RjI3IC8qIE9wZW5UeXBlTWF0aERh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyRDNFQTY1MEQwMDZDRDYwMEVGNkYyOCAvKiBPcGVu
VHlwZVR5cGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQkxMThCMDY4QzI1RTQxRTUzMDA3MEJFNEIg
LyogT3BlblhSRXh0ZW5zaW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTE4QjA2OEUyNUU0MUU1
MzAwNzBCRTRCIC8qIE9wZW5YUlV0aWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTIwNzM0MDIx
NkRGQjAwMDBDNzgzMjkgLyogT3B0aW9uYWxFZmZlY3RUaW1pbmcuaCBpbiBIZWFkZXJzICovLAor
CQkJCUNERTdGQzQ1MTgxOTA0QjEwMDJCQkI3NyAvKiBPcmRlckl0ZXJhdG9yLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MTg0RjUxNjFFQUYwNUE4MDBGMThCRjAgLyogT3JpZW50YXRpb25Ob3RpZmll
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDAxNDYyOEIxMDNDRDFERTAwMEIyMERCIC8qIE9yaWdp
bkFjY2Vzc0VudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQlGRTlFODlGQzE2RTJEQzA1MDBBOTA4
RjggLyogT3JpZ2luTG9jay5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ1ODFGQUYxNTIwRjkxRjAw
M0E3QTc1IC8qIE9zY2lsbGF0b3JOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNzU1RThCMzI0
Q0EyNzFFMDA5RjdDMjMgLyogT3NjaWxsYXRvck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDNUVCNUREMEU4MUI4REQwMEIyNTk2NSAvKiBPdXRsaW5lVmFsdWUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdBMjlGNTcyMThDNjk1MTQwMDREMEY4MSAvKiBPdXRPZkJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzA0QTQwODFENkRFOUYxMDA4NkRDREIgLyog
T3ZlcmNvbnN0cmFpbmVkRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MkE3MDQwMUQ2RThG
NjIwMERGMEFGQyAvKiBPdmVyY29uc3RyYWluZWRFcnJvckV2ZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQkxQTBENTczNzBBNUM3N0ZFMDA3RURENEMgLyogT3ZlcmZsb3dFdmVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMzc3NEFCQTUwRkEyMUVCNDAwQUQ3REU5IC8qIE92ZXJsYXBUZXN0UmVxdWVz
dENsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMyNkJGOEUyNEQzNUMzMzAwMUY4QTg1IC8q
IE92ZXJTYW1wbGVUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk2NUEyMTQ2ODA5N0EzMjkxMDBC
OTA1MEEgLyogUGFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTEyNzhENUUyMURFREFENjAwQjU3
MTg0IC8qIFBhZ2VBdWRpdEFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NUY0NUQyNzI2NERG
QkYxMDBEMEI4QjggLyogUGFnZUNvbG9yU2FtcGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q1
RTVCNUYxQTE1Q0U1NDAwMEM2MDlFIC8qIFBhZ2VDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQlBNUI4MUNDMjFGQUE0NEJDMDAzN0QxRTYgLyogUGFnZUNvbnNvbGVBZ2VudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJREFFRDIwMzExNkYyNDQ0ODAwNzBFQzBGIC8qIFBhZ2VDb25zb2xl
Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUEyQUYwQzE4Mjk3MzQzMDBERTE3MjkgLyog
UGFnZURlYnVnZ2FibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1RjM2RDNCMThGNzU4NzIwMDU0
QzAyNCAvKiBQYWdlRGVidWdnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QjgxQ0MzMUZBQTQ0
QkMwMDM3RDFFNiAvKiBQYWdlRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTFF
MEREQzEyMzBCNDFFNTAwMTlFMUUzIC8qIFBhZ2VET01EZWJ1Z2dlckFnZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5MzAyQjBCRjBENzlGODJDMDBDN0VFODMgLyogUGFnZUdyb3VwLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QTY3NEJEQzBGOUVCRjRFMDA2Q0YwOTkgLyogUGFnZUdyb3VwTG9hZERl
ZmVycmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUI4MUNDNDFGQUE0NEJDMDAzN0QxRTYgLyog
UGFnZUhlYXBBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDZCNjUwREQyMjk2MjYyNzAwRkQ4
QUE0IC8qIFBhZ2VJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUNCMDUyNDFGQjUx
RjMzMDAwODlCOTcgLyogUGFnZU5ldHdvcmtBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ1
QzlEMDAxOUM3QjUyRTAwQjNDNUMxIC8qIFBhZ2VPdmVybGF5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkyRDVDOUQwMjE5QzdCNTJFMDBCM0M1QzEgLyogUGFnZU92ZXJsYXlDb250cm9sbGVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQlGNDBEQUFFRjI1RDlGM0JGMDAxMUI0RkEgLyogUGFnZVBhc3RlYm9h
cmRDb250ZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQlGQkRCNjFBMTE2RDYwMzdFMDBCQjMzOTQg
LyogUGFnZVJ1bGVDb2xsZWN0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QjgxQ0M1MUZBQTQ0
QkMwMDM3RDFFNiAvKiBQYWdlUnVudGltZUFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkzNzFF
NjVDQzEzNjYxRURDMDBCRUVEQjAgLyogUGFnZVNlcmlhbGl6ZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUUxMjg0QUUxMTA0NDdENDUwMEVBRUI1MiAvKiBQYWdlVHJhbnNpdGlvbkV2ZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQk5Mzc3QUJBMDE1REVGRUVGMDAzMUZEMDQgLyogUGFnaW5hdGlvbi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTVFQzk1OTkyMDZBQTdBMDAwN0REMEE5IC8qIFBhaW50RnJl
cXVlbmN5VHJhY2tlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg4NTA2N0YxMURBMDQ1QjAwMTgy
Qjk4IC8qIFBhaW50SW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg4NTA2ODAxMURBMDQ1QjAw
MTgyQjk4IC8qIFBhaW50UGhhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTRCMUUxM0VCMjE3OTM3
QjMwMDQyQ0Y5OCAvKiBQYWludFJlbmRlcmluZ0NvbnRleHQyRC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNEI2QjVDQzAyMTY0Mzg2NDAwNjAzODE3IC8qIFBhaW50V29ya2xldEdsb2JhbFNjb3BlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBODBFNkNGQjBBMTk4OUNBMDA3RkI4QzUgLyogUGFpci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwQTMxMkIwMjZGNzAwQzFBMzU5IC8qIFBhbm5lci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwMUExMkIwMjY3NjAwQzFBMzU5IC8qIFBhbm5lck5vZGUu
aCBpbiBIZWFkZXJzICovLAorCQkJCUU3MTQ2N0I2MjRBQkFGMUQwMEZCMkY1MCAvKiBQYW5uZXJP
cHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzA0MDI4MjI0OUE3QTVGMDBBOTBEOEQgLyog
UGFubmluZ01vZGVsVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE4ODkwQUYxQUExM0YyNTAw
MjZDMzAxIC8qIFBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDRENENDFFODFDM0REQjBBMDA5NjVEOTkgLyogUGFyc2VkQ29udGVudFJhbmdlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0NDc5NTgwNDE2NDNCNDlBMDAxRTBBN0YgLyogUGFyc2VkQ29udGVu
dFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTVDNEEwRkRBMjVDMzQ0OUEwMEQ5RUU5NyAvKiBQ
YXJzZWRSZXF1ZXN0UmFuZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzNkQ1QTIzMTkzRThFMEMw
MENFNENBQiAvKiBQYXJzaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0RD
QTEyNTFGMTJEMDAzRUYyNjkgLyogUGFzc3dvcmRJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCTRCMjcwOEM3MEFGMTlFRTQwMDY1MTI3RiAvKiBQYXN0ZWJvYXJkLmggaW4gSGVhZGVycyAq
LywKKwkJCQlGNDBEQUFFQzI1RDlGMjVFMDAxMUI0RkEgLyogUGFzdGVib2FyZENvbnRleHQuaCBp
biBIZWFkZXJzICovLAorCQkJCUY0RkIzNEZDMjM1MEM4NUQwMEYwMDk0QSAvKiBQYXN0ZWJvYXJk
Q3VzdG9tRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ5Nzg2ODgxRkY0NUZBNTAwRTA2MEFC
IC8qIFBhc3RlYm9hcmRJdGVtSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzU5ODkwNTcxNEU5
QzI4MDAwRThEMThCIC8qIFBhc3RlYm9hcmRTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MUFGNUU0RTMxRTU3NzlCMTAwNEExRjAxIC8qIFBhc3RlYm9hcmRXcml0ZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTFBRjVFNEQ1MUU1NjczNUIwMDRBMUYwMSAvKiBQYXN0ZWJvYXJkV3JpdGVyRGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjI3NTM1ODAwQjA1MzgxNDAwMkNFNjRGIC8qIFBhdGgu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdDMTkzQkMyMUY1RTBFRUQwMDg4RjNFNiAvKiBQYXRoMkQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE4OERENDg3MEI0NjI5QTMwMEMwMjk5MCAvKiBQYXRoVHJh
dmVyc2FsU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTJENTAwMkZDMUI1NkQ3OTkwMDIwQUFG
NyAvKiBQYXRoVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEZBNkU1RDBFNENGREVE
MDBENUNGNDkgLyogUGF0dGVybi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5NzEwRDAwQkYy
MjAwNzFCNzgyIC8qIFBhdHRlcm5BdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTY3
N0UwODIxM0UwMjRDMDBBMDhDMzQgLyogUGF5ZXJFcnJvckZpZWxkcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMUE4QTY0M0ExRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUExRjc2QjQzMUY0NENGN0YwMDE0QzMxOCAvKiBQYXltZW50QWRkcmVzcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTE2OUIwNDMyNDhGMDM3QjAwRUU4QjdCIC8qIFBheW1lbnRBUElWZXJz
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUU5NkE4ODFEMUEwQ0VCMDBCODY3NjggLyogUGF5
bWVudEF1dGhvcml6YXRpb25TdGF0dXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUExRjc2QjVCMUY0
NEQzQjIwMDE0QzMxOCAvKiBQYXltZW50Q29tcGxldGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
OEE2NDNCMUQxOUZDNTMwMEQwRTAwRiAvKiBQYXltZW50Q29udGFjdC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMUE1OEU4NkUxRDE5RTQyRDAwQzBFQTczIC8qIFBheW1lbnRDb29yZGluYXRvci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMUE1OEU4NjYxRDE5RDRGMDAwQzBFQTczIC8qIFBheW1lbnRDb29y
ZGluYXRvckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFGNzZCMzcxRjQ0QzYwRjAwMTRD
MzE4IC8qIFBheW1lbnRDdXJyZW5jeUFtb3VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFGNzZC
MUYxRjQ0QzNGRTAwMTRDMzE4IC8qIFBheW1lbnREZXRhaWxzQmFzZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTFGNzZCMjUxRjQ0QzQ5MTAwMTRDMzE4IC8qIFBheW1lbnREZXRhaWxzSW5pdC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTFGNzZCNEYxRjQ0RDI0MjAwMTRDMzE4IC8qIFBheW1lbnREZXRh
aWxzTW9kaWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUExRjYwMDQ5MUY0NzU5NEUwMDc3RTgz
RiAvKiBQYXltZW50RGV0YWlsc1VwZGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERjVBQTYx
RjdGNjRCQjAwNThBNDc3IC8qIFBheW1lbnRIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk3
Q0Y5MzBFNzFFMDFGOUI0MDBCQUZGQkUgLyogUGF5bWVudEhlYWRlcnMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTVDNTNEQ0U3MjQ0NjhBRDIwMEE5MzEyNCAvKiBQYXltZW50SW5zdGFsbG1lbnRDb25m
aWd1cmF0aW9uV2ViQ29yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFGNzZCMzExRjQ0QzU1QTAw
MTRDMzE4IC8qIFBheW1lbnRJdGVtLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUU5NkE4OTFEMUEw
Q0VCMDBCODY3NjggLyogUGF5bWVudE1lcmNoYW50U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUE4QTY0M0MxRDE5RkM1MzAwRDBFMDBGIC8qIFBheW1lbnRNZXRob2QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUExNjRBMjQ3MjEzNEJDNzEwMDUwOTE1NiAvKiBQYXltZW50TWV0aG9kQ2hhbmdl
RXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUExRjc2QjE5MUY0NEMzOTAwMDE0QzMxOCAvKiBQ
YXltZW50TWV0aG9kRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFGNzZCMkIxRjQ0QzRFRjAw
MTRDMzE4IC8qIFBheW1lbnRPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMUY3NkIxMzFG
NDRDMjQ1MDAxNEMzMTggLyogUGF5bWVudFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUEx
RjYwMDQ0MUY0NzU3QTkwMDc3RTgzRiAvKiBQYXltZW50UmVxdWVzdFVwZGF0ZUV2ZW50LmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMUY2MDA0RDFGNDc1QTVFMDA3N0U4M0YgLyogUGF5bWVudFJlcXVl
c3RVcGRhdGVFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk1NjJFRUREMjVGMThERTcw
MDMzNDQ0MiAvKiBQYXltZW50UmVxdWVzdFV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MUE4QTY0NjgxRDE5RkRGRjAwRDBFMDBGIC8qIFBheW1lbnRSZXF1ZXN0VmFsaWRhdG9yLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMUY3NkIzRDFGNDRDRjI0MDAxNEMzMTggLyogUGF5bWVudFJlc3Bv
bnNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTQ5MURBMzFGODU5RDg3MDA5NUY1RDQgLyogUGF5
bWVudFNlc3Npb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUExN0ZFRTY0MUY4ODkzMjIwMDIxRTgx
MSAvKiBQYXltZW50U2Vzc2lvbkJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMTNFMDI4MjMz
MTgyOTMwMDlDMzNBMCAvKiBQYXltZW50U2Vzc2lvbkVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBMUY3NkI1NTFGNDREMkM3MDAxNEMzMTggLyogUGF5bWVudFNoaXBwaW5nT3B0aW9uLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMUY3NkI0OTFGNDREMDdBMDAxNEMzMTggLyogUGF5bWVudFNoaXBw
aW5nVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTFERkQ1MjYyMzM0NTk0ODAwNDJGQ0RCIC8q
IFBheW1lbnRTdW1tYXJ5SXRlbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUExNjc3REZEMjEzRTAw
NjYwMEEwOEMzNCAvKiBQYXltZW50VmFsaWRhdGlvbkVycm9ycy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQjI3NTM1NjUwQjA1MzgxNDAwMkNFNjRGIC8qIFBERkRvY3VtZW50SW1hZ2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUJDNEE1MzI5MjU2MDU2M0IwMDI4QzU5MiAvKiBQREZJbWFnZUNhY2hpbmdQ
b2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJCTVFMkM0MzUxMUJDRUUyRjYwMDAxRTJCQyAvKiBQ
ZWVyQ29ubmVjdGlvbkJhY2tlbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTVFQkI4OTM5MUM3N0Mz
OTkwMEM2NUQ0MSAvKiBQZWVyTWVkaWFEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OEE3Q0M5NkIxMjA3NkQ3MzAwMUQ0NTg4IC8qIFBlbmRpbmdTY3JpcHQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUUzRkEzODY0MUQ3MTgxMkQwMEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4QTg0NEQwNTExRDNDMThFMDAxNDA2NUMgLyogUGVyZm9ybWFu
Y2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTg2QkUzNDAxMTUwNThDQjIwMENFMEZEOCAvKiBQZXJm
b3JtYW5jZUVudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQlBRDVBMEMyNTFERUNBQ0NDMDA3MDcw
NTQgLyogUGVyZm9ybWFuY2VMb2dnaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjg1MEZFMzFF
RDdDMTgzMDBGQjc3QTcgLyogUGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQkzN0M3MzhFOTFFREJEMkZBMDAzRjJCMEIgLyogUGVyZm9ybWFuY2VNYXJrLmggaW4g
SGVhZGVycyAqLywKKwkJCQk3QzdCRjk0MjI1MTZDOTBDMDA4MDg2ODIgLyogUGVyZm9ybWFuY2VN
YXJrT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdDNzM4RUIxRURCRDM4NDAwM0YyQjBC
IC8qIFBlcmZvcm1hbmNlTWVhc3VyZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M3QkY5NEMyNTE2
RkE1NDAwODA4NjgyIC8qIFBlcmZvcm1hbmNlTWVhc3VyZU9wdGlvbnMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzRkU5MDI3MUUzMDdDMzAwMDNFOTE5OSAvKiBQZXJmb3JtYW5jZU1vbml0b3IuaCBp
biBIZWFkZXJzICovLAorCQkJCThBRjRFNTU2MTFEQzVBMzYwMDBFRDNERSAvKiBQZXJmb3JtYW5j
ZU5hdmlnYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUE1QTk5MzNEMUUzN0ZCMTkwMDVCNUU0
RCAvKiBQZXJmb3JtYW5jZU9ic2VydmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUE5OTMzRjFF
MzdGQjFGMDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZlckNhbGxiYWNrLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlBNUE5OTM0MTFFMzdGQjI4MDA1QjVFNEQgLyogUGVyZm9ybWFuY2VPYnNlcnZl
ckVudHJ5TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODY1MTJFREYxNTRBMkFFRjAwQTkwNDI2
IC8qIFBlcmZvcm1hbmNlUmVzb3VyY2VUaW1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCThBRjRF
NTVDMTFEQzVBNjMwMDBFRDNERSAvKiBQZXJmb3JtYW5jZVRpbWluZy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTU1NEI1RjMxRTM4MzkzQTAwMUQ0RTAzIC8qIFBlcmZvcm1hbmNlVXNlclRpbWluZy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRkQ1ODFGQjUxNTIwRjkzQjAwM0E3QTc1IC8qIFBlcmlvZGlj
V2F2ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTc1NUU4OTIyNEM3NDM0QjAwOUY3QzIzIC8qIFBl
cmlvZGljV2F2ZUNvbnN0cmFpbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNzU1RTg5OTI0Qzc0
NjFEMDA5RjdDMjMgLyogUGVyaW9kaWNXYXZlT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
OTNCMEE2NzAyNkQ0QjUzOTAwQUEyMUU0IC8qIFBlcm1pc3Npb25Db250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5M0IwQTY1NzI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvbkRlc2Ny
aXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQjBBNjU5MjZDREQxNDEwMEFBMjFFNCAvKiBQ
ZXJtaXNzaW9uTmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNCMEE2N0EyNkQ2QTRFOTAwQUEy
MUU0IC8qIFBlcm1pc3Npb25PYnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNCMEE2NTQy
NkNERDE0MTAwQUEyMUU0IC8qIFBlcm1pc3Npb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0Iw
QTY1QjI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvblN0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5M0IwQTY1NjI2Q0REMTQxMDBBQTIxRTQgLyogUGVybWlzc2lvblN0YXR1cy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNDlENURDMkUwRjQyM0E3MzAwOEYyMEZEIC8qIFBlcnNwZWN0aXZlVHJh
bnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkxREJDMUI1NjIzNDdCM0QyMDBC
OTAxQUYgLyogUGljdHVyZUluUGljdHVyZU9ic2VydmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
RDJDODJCNzIzNkEzRjZBMDA1NUQ2QzUgLyogUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTFEMkY4RTA2MjM0NDc1MjMwMDk5M0I2OCAvKiBQaWN0dXJlSW5QaWN0
dXJlV2luZG93LmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzU4NTk3QzIzQTFGQ0YzMDBDNzQ1NzIg
LyogUGluLmggaW4gSGVhZGVycyAqLywKKwkJCQlEMEZGMkE1RTExRjhDNDVBMDA3RTc0RTAgLyog
UGluZ0xvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNFNjkxRTUyNjQ2MzdGQzAwRUJEQzNB
IC8qIFBpeGVsQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDdEMzM0NDFDN0ExMjNGMDAw
NDEyOTMgLyogUGl4ZWxCdWZmZXJDb25mb3JtZXJDVi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2
MzVFOEUyNjRDMkNFNzAwMEVGMzNBIC8qIFBpeGVsQnVmZmVyQ29udmVyc2lvbi5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQkM2MzVFOEMyNjRDMkNBRTAwMEVGMzNBIC8qIFBpeGVsQnVmZmVyRm9ybWF0
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0E1NTkxNDI2M0RCRDc5MDA3RjE5QjMgLyogUGl4ZWxG
b3JtYXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUNERUZBMjI4MUU3NjY5RTgwMDBBRTk5QyAvKiBQ
bGF0Zm9ybUF1ZGlvRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDk5QjNFREQxMjhEQjUwMjAw
RTcyNkMyIC8qIFBsYXRmb3JtQ0FBbmltYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNUUy
MDA2MThFNzcxRkMwMDNFQzNFNSAvKiBQbGF0Zm9ybUNBQW5pbWF0aW9uQ29jb2EuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTBGMTMxNjNFMTZFRDBDQzgwMDM1Q0MwNCAvKiBQbGF0Zm9ybUNBRmlsdGVy
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDk5QjNFQzUxMjhDQ0M0NzAwRTcyNkMyIC8qIFBsYXRm
b3JtQ0FMYXllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDkzRTVFMDkxMkQ2NDIwNTAwMDIwMDgx
IC8qIFBsYXRmb3JtQ0FMYXllckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ3MEJBMTMx
ODA3NERERjAwMDE5MDhBIC8qIFBsYXRmb3JtQ0FMYXllckNvY29hLmggaW4gSGVhZGVycyAqLywK
KwkJCQlCQzNFNjI0MzI2NTk3OTE4MDA1NDhBQ0QgLyogUGxhdGZvcm1Db2xvclNwYWNlLmggaW4g
SGVhZGVycyAqLywKKwkJCQlBMTQ5Nzg3MTFBQkFGM0E1MDBDRUY3RTQgLyogUGxhdGZvcm1Db250
ZW50RmlsdGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVDNzYyQjE0OTdGRTE0MDBCQzQ3NzUg
LyogUGxhdGZvcm1FdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjY2MDFFQkYxNEIzQjlBRDAw
MTJDMEZFIC8qIFBsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
Q0FBNDg3MDE0QTA1MjUzMDA4OEZBQzQgLyogUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUE3MjNGNzdCMTQ4NENBNEMwMDhDNkRCRSAvKiBQbGF0Zm9ybUV4cG9y
dE1hY3Jvcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE1QkUxOTUxRDU0RjVGQjAwREQ3QzY4IC8q
IFBsYXRmb3JtR2FtZXBhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzI2RDU2RTIyNTNBRTI4RDAw
MDJFRjkwIC8qIFBsYXRmb3JtSW1hZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTJENzcwNUM3MjU1
Mjc2Q0QwMDFEMEM5NCAvKiBQbGF0Zm9ybUltYWdlQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1NTA2NDBBRjI0MDc1ODJEMDBBQUUwNDUgLyogUGxhdGZvcm1JbWFnZUJ1ZmZlckJhY2tlbmQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzNUM0NzY4MDlBQzRENDMwMEE2QUFCNCAvKiBQbGF0Zm9y
bUtleWJvYXJkRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA1NjJGOTYxMTU3M0Y4OEYwMDMx
Q0ExNiAvKiBQbGF0Zm9ybUxheWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTQ0Rjc4OTE1Q0ZC
MkE4MDBBRjMzQTggLyogUGxhdGZvcm1Mb2NhbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNFRUZD
RDdDMTlEQjMzREMwMDM4NzZENyAvKiBQbGF0Zm9ybU1lZGlhUmVzb3VyY2VMb2FkZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTA3MEUwOTE5MTg3NUVFRkMwMDNBMUQzQyAvKiBQbGF0Zm9ybU1lZGlh
U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdGOTQ0MTYxODY0RDA0NjAwNUQzMUNCIC8q
IFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM1QzQ3
NjkwOUFDNEQ0MzAwQTZBQUI0IC8qIFBsYXRmb3JtTW91c2VFdmVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQzU5ODkwNTgxNEU5QzI5OTAwRThEMThCIC8qIFBsYXRmb3JtUGFzdGVib2FyZC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNFQzAxRDcwQzI3NEVCNDAwOUY0RUM5IC8qIFBsYXRmb3JtU2Ny
ZWVuLmggaW4gSGVhZGVycyAqLywKKwkJCQkyOTdCRTNENTE2QzAzQzA4MDAzMzE2QkQgLyogUGxh
dGZvcm1TcGVlY2hTeW50aGVzaXNVdHRlcmFuY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5N0JF
M0Q2MTZDMDNDMEIwMDMzMTZCRCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNlLmggaW4g
SGVhZGVycyAqLywKKwkJCQkyOTdCRTNENzE2QzAzQzBFMDAzMzE2QkQgLyogUGxhdGZvcm1TcGVl
Y2hTeW50aGVzaXplci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFEOEY4MUIxMUNBQjlFOTAwRTkz
RTU0IC8qIFBsYXRmb3JtU3RyYXRlZ2llcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY3RDA3MzMx
ODg0QzU2QzAwQjRBRjg2IC8qIFBsYXRmb3JtVGV4dFRyYWNrLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkwNzRFODJCQjE4QTY5RjBFMDA3RUY1NEMgLyogUGxhdGZvcm1UaW1lUmFuZ2VzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1MkIwRDRCRTFDNTdGRDFFMDA3N0NFNTMgLyogUGxhdGZvcm1WaWV3Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5MzVDNDc2QjA5QUM0RDRGMDBBNkFBQjQgLyogUGxhdGZvcm1X
aGVlbEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUVFOEI3MjI0MTJCMkE4MDBFNzk0RDYg
LyogUGxhdGZvcm1YUi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTI3M0NDNzcyNTYxMDNDRjAwODUw
MDA3IC8qIFBsYXRmb3JtWFJDb2NvYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFDMUEzOUUyNDgw
MDgwODAwRTBBRjY2IC8qIFBsYXRmb3JtWFJPcGVuWFIuaCBpbiBIZWFkZXJzICovLAorCQkJCTcx
MkJFNDgwMUZFODY0QTcwMDIwMzFDQyAvKiBQbGF5YmFja0RpcmVjdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQ0RBMjlBMzIxQ0MwMUE5NTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbkludGVy
ZmFjZUFWS2l0LmggaW4gSGVhZGVycyAqLywKKwkJCQlDREEyOUExNzFDQkRBNTZDMDA5MDFDQ0Yg
LyogUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlTWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREEy
OUEwQjFDQkQ5QTc0MDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTW9kZWwuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUNEQTI5QTBGMUNCRDlDRkUwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25Nb2Rl
bE1lZGlhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDQ2REM2NDgyNEEyOURBQjAwNjFG
MzkwIC8qIFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4dElkZW50aWZpZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTFBRkZDNDU5MUQ1RTg2NjEwMDI2N0E2NiAvKiBQbHVnaW5CbG9ja2xpc3QuaCBp
biBIZWFkZXJzICovLAorCQkJCUE5QzZFNEY0MEQ3NDVFNDgwMDY0NDJFOSAvKiBQbHVnaW5EYXRh
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzIwNUFCQzEyMzkyOTI3MDBCMTczODAgLyogUGx1Z2lu
RG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBMDhGRUREMUQ1OTJCOEIwMDhCQThDQiAv
KiBQbHVnaW5JbmZvUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MkFFMUU1MTgzQzA3
NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFF
MjE4M0ExNzM1OUZCODAwNkU2RTREIC8qIFBsdWdJbnNSZXNvdXJjZXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTBBRkRBQzNEMTBGNTQ0OEMwMEUxRjNEMiAvKiBQbHVnaW5WaWV3QmFzZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQkNCQjhBQjkxM0YxQUZCMDAwNzM0REYwIC8qIFBPREludGVydmFsLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCQ0JCOEFCQTEzRjFBRkIwMDA3MzRERjAgLyogUE9ESW50ZXJ2
YWxUcmVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0JCOEFCQjEzRjFBRkIwMDA3MzRERjAgLyog
UE9EUmVkQmxhY2tUcmVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MUI1QUIyNjIxRjFEOUY0MDAz
NzZFNUMgLyogUG9pbnRlckNhcHR1cmVDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
NURGOUQyNTI1MkJFREIyMDAwRDdGNDYgLyogUG9pbnRlckNoYXJhY3RlcmlzdGljcy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMzE3RDNGRjMyMTU1OTlGNDAwMzRFM0I5IC8qIFBvaW50ZXJFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjJCMUY3MTcwRDAwQ0FBODAwNEFFQTY0IC8qIFBvaW50ZXJF
dmVudHNIaXRSdWxlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQyMEYwMEEyNUU0Nzc5MTAwOTI1
MUVGIC8qIFBvaW50ZXJFdmVudFR5cGVOYW1lcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzFFQURD
RDgyMjA4N0U3MjAwNjVBNDVGIC8qIFBvaW50ZXJJRC5oIGluIEhlYWRlcnMgKi8sCisJCQkJM0ZG
ODEzQTcxREJBODY0MDAwOUJGMDAxIC8qIFBvaW50ZXJMb2NrQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJODQ3MzBEOTIxMjQ4RjBCMzAwRDNBOUM5IC8qIFBvaW50TGlnaHRTb3VyY2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTk3MDU5OTdBMTA3RDk3NTIwMEE1MEE3QyAvKiBQb2xpY3lD
aGVja2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NjZDMkRBRDI2QzczQUZDMDA2NTE5MzEgLyog
UG9saWN5Q29udGFpbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDQ1QTk1NzE3NUQ0MTRDMDBD
MjFFQzggLyogUG9seWdvblNoYXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTc0RTIwQTEwQTFG
NDRGMDBGOTVFNkYgLyogUG9wU3RhdGVFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDY2OEUx
OEIwQUREOTYyNDAwNDEyOEUwIC8qIFBvcHVwTWVudS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUJD
MTI4NzcwQjMzQUE2RDAwQzY5M0Q1IC8qIFBvcHVwTWVudUNsaWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkMzQkUxMkIwRTk4MDkyRjAwODM1NTg4IC8qIFBvcHVwTWVudVN0eWxlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkzN0Y1NjdDRTE2NTM1OEY0MDBEREU5MkIgLyogUG9wdXBPcGVuaW5nT2Jz
ZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRjE5OURFMDgyNDVFNTkwMDFFOUFCQyAvKiBQ
b3NpdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc0NkFGMkMxNEY0RERFNjAwM0U3QTcwIC8q
IFBvc2l0aW9uQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTk3NDZBRjMwMTRGNERERTYw
MDNFN0E3MCAvKiBQb3NpdGlvbkVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTM3
OTE5QzI0MEI3RDE4ODYwMEE1Njk5OCAvKiBQb3NpdGlvbkl0ZXJhdG9yLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5NzQ2QUYzMjE0RjREREU2MDAzRTdBNzAgLyogUG9zaXRpb25PcHRpb25zLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0NkRCQjY1MDFBQjhDOTZGMDBEOUE4MTMgLyogUG93ZXJPYnNlcnZl
ck1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RDNzQ3MDQyNEJFMkZDNzAwQzE4NjhCIC8qIFBv
d2VyU291cmNlTm90aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUMwRjJBNDQxMTM4NjlBQUIw
MDY2QzUzNCAvKiBwcmVwcm9jZXNzb3IucG0gaW4gSGVhZGVycyAqLywKKwkJCQlBMUMxNTA3QTFF
M0YyQjNFMDAzMkM5OEMgLyogUHJldmlld0NvbnZlcnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QTFBREFGN0QyMzYwRkQzRTAwOUNCNzc2IC8qIFByZXZpZXdDb252ZXJ0ZXJDbGllbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUExQURBRjdFMjM2MEZEM0UwMDlDQjc3NiAvKiBQcmV2aWV3Q29udmVy
dGVyUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NjA1RkVDMjE2NjQ4MDkwMEU1MzA0
NiAvKiBQcmV3YXJtSW5mb3JtYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUI3MUZFNkRGMTEw
OTFDQjMwMERBRUY3NyAvKiBQcmludENvbnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTZCMEEw
N0YyMjFGQTRCNUMwMEQ1NzM5MSAvKiBQcml2YXRlQ2xpY2tNZWFzdXJlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTFGNjQ1RDUxRkVDREJDRTAwQjU0REVEIC8qIFByb2Nlc3NJZGVudGlmaWVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBN0VCQzBBMTk0NUQwMDBBOEVGNUYgLyogUHJvY2Vz
c2luZ0luc3RydWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDIwNTAxNzIxNDE5MDFCMDA2
NkVGM0IgLyogUHJvY2Vzc1dhcm1pbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDYxM0VDMENE
NjgxQjUwMEZBREE3NSAvKiBQcm9ncmVzc0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNzE1
RTY1MzEzNEJCQkVDMDBEOEU3MTMgLyogUHJvZ3Jlc3NTaGFkb3dFbGVtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQkxQTJBNjgyNDBCNUJFREU3MDAwMkE0ODAgLyogUHJvZ3Jlc3NUcmFja2VyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkxQUNBREQ3OTE4ODBEOTFDMDBEOEI3MUQgLyogUHJvZ3Jlc3NU
cmFja2VyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlGNDdBNjMzRDFGRjZGRDUwMDA4MUIz
Q0MgLyogUHJvbWlzZWRBdHRhY2htZW50SW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU3OEY0
MzUxREUwMEVFQjAwM0RGQzZBIC8qIFByb21pc2VSZWplY3Rpb25FdmVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRTRBQkFCRTQyMzYxQTMyOTAwRkE0MzQ1IC8qIFByb3BlcnR5Q2FzY2FkZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTRCQkVEMEYxNEY0MDI1RDAwM0YwQjk4IC8qIFByb3BlcnR5U2V0
Q1NTU3R5bGVEZWNsYXJhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdCQUFFNTgxOTgwRDFE
RDAwNURGRTcxIC8qIFByb3RlY3Rpb25TcGFjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE0Qzc2
NzUwQ0U5MjNBMTAwN0VGM0NEIC8qIFByb3RlY3Rpb25TcGFjZUJhc2UuaCBpbiBIZWFkZXJzICov
LAorCQkJCTM3MkFEQTM4MTk3RjQ3QjkwMEZDNTAxRSAvKiBQcm90ZWN0aW9uU3BhY2VDb2NvYS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTFBMDUyNTYxMDU4ODc0MDAwQ0M5RTk1IC8qIFByb3RlY3Rp
b25TcGFjZUhhc2guaCBpbiBIZWFkZXJzICovLAorCQkJCTFBRjhFMTFBMTI1NjU5MjYwMDIzMEZG
NyAvKiBQcm94eVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ1QTZDNzcyNDE3QkE1OTAw
NkU0Q0Q1IC8qIFBzZXVkb0NsYXNzQ2hhbmdlSW52YWxpZGF0aW9uLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGRjk0NUVDQzE2MUY3RjM2MDA5NzFCQzggLyogUHNldWRvRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTdEODQ2MkUxRkVBRjY5OTAwQ0EzNjgyIC8qIFB1YmxpY0tleUNyZWRlbnRp
YWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MzAzQkU5MjAwOTc0OEQwMDM1NTk2NSAvKiBQdWJs
aWNLZXlDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzMw
M0JFRjIwMDk4MEM2MDAzNTU5NjUgLyogUHVibGljS2V5Q3JlZGVudGlhbERlc2NyaXB0b3IuaCBp
biBIZWFkZXJzICovLAorCQkJCTU3MzAzQzBBMjAwOTlCQUQwMDM1NTk2NSAvKiBQdWJsaWNLZXlD
cmVkZW50aWFsUmVxdWVzdE9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTU3MzAzQkVCMjAw
OTdGNDAwMDM1NTk2NSAvKiBQdWJsaWNLZXlDcmVkZW50aWFsVHlwZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDA4MUZGMDAxNkIwQTJEMzAwOEFBQTdBIC8qIFB1YmxpY1N1ZmZpeC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMTBGQjA4NEIxNEUxNUM3RTAwQTNEQjk4IC8qIFB1YmxpY1VSTE1hbmFnZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzRDUxMUY2MjUwQzFDQkYwMDJFREM1MSAvKiBQdXNoUHVs
bEZJRk8uaCBpbiBIZWFkZXJzICovLAorCQkJCTU1MEEwQkNBMDg1RjYwMzkwMDczNTNENiAvKiBR
dWFsaWZpZWROYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0MxRjU5NDFFREY2OUQzMDA0MTBE
MjcgLyogUXVhbGlmaWVkTmFtZUNhY2hlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTVFMzFGNDFF
MENCMEI1MDA0QjM3MUMgLyogUXVpY2tMb29rLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFF
ODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTlCQUVFOTJDMjIzODhBN0QwMDQxNTdBOSAvKiBRdWlya3MuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTM3OUUzNzE3MTM3MzZBNjYwMEI5RTkxOSAvKiBRdW90ZWRQcmludGFibGUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTVBNTc0RjI5MTMxREI5NkQwMDQ3MUI4OCAvKiBRdW90ZXNE
YXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzk3MjBEMDBCRjIyMDA3MUI3ODIgLyogUmFk
aWFsR3JhZGllbnRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0Y5MjU0MzBGN0VG
NUI4MDA3RTM3QzkgLyogUmFkaW9CdXR0b25Hcm91cHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUY1
NUIzRENDMTI1MUYxMkQwMDNFRjI2OSAvKiBSYWRpb0lucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjY1OEZGQTYxNTIyRUZBQTAwREQ1NTk1IC8qIFJhZGlvTm9kZUxpc3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzRjE5OTE4MDgyNDVFNTkwMDFFOUFCQyAvKiBSYW5nZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJOTNEOUQ1M0MwREEyN0UxODAwNzcyMTZDIC8qIFJhbmdlQm91bmRhcnlQb2lu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjU1QjNEQ0UxMjUxRjEyRDAwM0VGMjY5IC8qIFJhbmdl
SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1QzRBMEZENzI1QzM0MzUwMDBEOUVFOTcg
LyogUmFuZ2VSZXNwb25zZUdlbmVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkU4NEU5RTEx
NzY2OEJGMTAwODE1QjY4IC8qIFJhc3RlclNoYXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODRE
ODI3QzExRDMzM0VEMDA5NzI5OTAgLyogUmF3RGF0YURvY3VtZW50UGFyc2VyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MTZFNkZFODFCQkQxMkRGMDAwQTYwNDMgLyogUmVhZGFibGVCeXRlU3RyZWFt
SW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNkU2RkU5MUJCRDEyRTUw
MDBBNjA0MyAvKiBSZWFkYWJsZVN0cmVhbUJ1aWx0aW5zLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
MTI5QzlBOTFGNTlDNTZCMDA5RDc0MDMgLyogUmVhZGFibGVTdHJlYW1EZWZhdWx0Q29udHJvbGxl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE2RTZGRTgxQkJEMTJERjAwMEEzRjY0IC8qIFJlYWRh
YmxlU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMjlDOUFG
MUY1OUNGNUIwMDlENzQwMyAvKiBSZWFkYWJsZVN0cmVhbVNpbmsuaCBpbiBIZWFkZXJzICovLAor
CQkJCTQxMjlDOUFCMUY1OUM1NzMwMDlENzQwMyAvKiBSZWFkYWJsZVN0cmVhbVNvdXJjZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwM0MxMkIwMjY3NjAwQzFBMzU5IC8qIFJlYWx0aW1lQW5h
bHlzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMTAzQUFEMUUzOTc5MTAwMDc2OUYwMyAvKiBS
ZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMTAzQUFE
MUUzOTc5MTAwMDc2OUYxNCAvKiBSZWFsdGltZUluY29taW5nQXVkaW9Tb3VyY2VDb2NvYS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDFDQjg0MDIyNUNBQjgxRTAwMTBFMkIxIC8qIFJlYWx0aW1lSW5j
b21pbmdWaWRlb1NvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFDQjg0MDEyNUNBQjdCMzAw
MTBFMkIxIC8qIFJlYWx0aW1lSW5jb21pbmdWaWRlb1NvdXJjZUNvY29hLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0QTRGNjU3MTFBQTk5N0YxMDBFMzhDREQgLyogUmVhbHRpbWVNZWRpYVNvdXJjZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNEE0RjY1NzIxQUE5OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1l
TWVkaWFTb3VyY2VDYXBhYmlsaXRpZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTRBMEZGQUEyMUFB
RjVFQTIwMDYyODAzQiAvKiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmggaW4gSGVhZGVycyAq
LywKKwkJCQkwNzU0QTVFQTIxNUVBM0I4MDAyRDNBOTkgLyogUmVhbHRpbWVNZWRpYVNvdXJjZUZh
Y3RvcnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQjg3NzYyMjNERTEwNDUwMDM2MzhCOCAvKiBS
ZWFsdGltZU1lZGlhU291cmNlSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNEE0RjY1
NzQxQUE5OTdGMTAwRTM4Q0REIC8qIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMDdDMUMwRTUxQkZCNjBFRDAwQkQyMjU2IC8qIFJlYWx0aW1lTWVkaWFT
b3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDExMDNBQUMx
RTM5NzkxMDAwNzY5RjAzIC8qIFJlYWx0aW1lT3V0Z29pbmdBdWRpb1NvdXJjZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDExMDNBQUMxRTM5NzkxMDAwNzY5RjE0IC8qIFJlYWx0aW1lT3V0Z29pbmdB
dWRpb1NvdXJjZUNvY29hLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzI4ODBEMTIwMTBGMUY2MDA3
MUIyNTUgLyogUmVhbHRpbWVWaWRlb0NhcHR1cmVTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTQxQkYyMDQ5MjJCQTdCRTgwMDA0RjgxMiAvKiBSZWFsdGltZVZpZGVvU291cmNlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MTU4NjRBMDIzQkY3Q0JGMDBBMEE2MUUgLyogUmVhbHRpbWVWaWRlb1V0
aWxpdGllcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTFCOTUyMjQxRjU4QTU4RjAwOTMxREMyIC8q
IFJlY29yZGluZ1N3aXp6bGVUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzQzNjhFODBDMjI2
RTMyMDA1RUZCNUYgLyogUmVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ0NUE5NTgxNzVENDE0
QzAwQzIxRUM4IC8qIFJlY3RhbmdsZVNoYXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1Q0VFRTQz
NjFGNUY4RjIxMDAxNEE1RjUgLyogUmVjdEVkZ2VzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NTg0
NzY1QTI0NTNGMzM0MDA5RjU1MEMgLyogUmVkdWNlZFJlc29sdXRpb25TZWNvbmRzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5ODMxQUU0QTE1NDIyNUM5MDBGRTI2NDQgLyogUmVmZXJyZXJQb2xpY3ku
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDQUI0MTgyMTNFMzU2RTgwMEQ4QUFGMyAvKiBSZWdpb24u
aCBpbiBIZWFkZXJzICovLAorCQkJCTI2Qjk5OThGMTgwM0FFNzIwMEQwMTEyMSAvKiBSZWdpc3Rl
ckFsbG9jYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODUwMzFCNEMwQTQ0RUZDNzAwRjk5MkUw
IC8qIFJlZ2lzdGVyZWRFdmVudExpc3RlbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk2QjRFODYx
MzIyMUI3MTNGMDAyMkYzODkgLyogUmVnaXN0cmFibGVEb21haW4uaCBpbiBIZWFkZXJzICovLAor
CQkJCTUxQjkxNDEwMUZEMjc4MkQwMEVFMjg1OSAvKiBSZWdpc3RyYXRpb25EYXRhYmFzZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTFCOTE0MTExRkQyNzgyRDAwRUUyODU5IC8qIFJlZ2lzdHJhdGlv
blN0b3JlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNTc4RjQzRjFERTBCNjMwMDAzREZDNkEgLyog
UmVqZWN0ZWRQcm9taXNlVHJhY2tlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RGQzM2MDYxOENB
NjFDMjAwMjZFNTZGIC8qIFJlbW90ZUNvbW1hbmRMaXN0ZW5lci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTExN0YzMEUyNUU2MTAyMDAwMkE5RjFFIC8qIFJlbW90ZUNvbW1hbmRMaXN0ZW5lckNvY29h
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkI5NTE5OTIwN0Q2MzREMDBBN0QyREQgLyogUmVtb3Rl
RE9NV2luZG93LmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkI5NTE5QTIwN0Q2MzU0MDBBN0QyREQg
LyogUmVtb3RlRnJhbWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTdCOTA0MTcwMjU1MDExNDIwMDZF
RUI4QyAvKiBSZW1vdGVHcmFwaGljc0NvbnRleHRHTFByb3h5QmFzZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0RDMzEyRTkyMkZDRDdDMDAwMTIwNEVDIC8qIFJlbW90ZVBsYXliYWNrLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDREMzMTJFQjIyRkNEN0M5MDAxMjA0RUMgLyogUmVtb3RlUGxheWJhY2tB
dmFpbGFiaWxpdHlDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDczQTE1NTQyMTc3QTQy
NjAwRUEwOEYyIC8qIFJlbW90ZVZpZGVvU2FtcGxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlEMDZD
MEQ4RjBDRkQxMTQ2MDA2NUY0M0YgLyogUmVtb3ZlRm9ybWF0Q29tbWFuZC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTMzMDlFMDUwOTlFNjQ5MjAwNTZFNTgxIC8qIFJlbW92ZU5vZGVDb21tYW5kLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOUUwNzA5OUU2NDkyMDA1NkU1ODEgLyogUmVtb3ZlTm9k
ZVByZXNlcnZpbmdDaGlsZHJlbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUI1OUVEMjNC
MTgyNzI2NzkwMDZENTY0QyAvKiBSZW5kZXJBbmNlc3Rvckl0ZXJhdG9yLmggaW4gSGVhZGVycyAq
LywKKwkJCQk3Q0Q0OTRDRDFBODZFQjFEMDAwQTg3RUMgLyogUmVuZGVyQXR0YWNobWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNFQTQ4NjAwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckJsb2Nr
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzEwRDc2ODE3RDhFRTcxMDA1RTI2MjYgLyogUmVuZGVy
QmxvY2tGbG93LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VBNDg2MjA5N0Q5MzAyMDA5NEM5RTQg
LyogUmVuZGVyQm94LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VCMTc5QzE0MzM3OUY1MDA1MkVB
RTkgLyogUmVuZGVyQm94RnJhZ21lbnRJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzk2REI0
MzBGM0E4ODBFMDA1NzNDQjMgLyogUmVuZGVyQm94TW9kZWxPYmplY3QuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDRUE0ODY2MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJCdXR0b24uaCBpbiBIZWFk
ZXJzICovLAorCQkJCUI1NjU3OUI1MTgyNEQxMkEwMEU3OUYyMyAvKiBSZW5kZXJDaGlsZEl0ZXJh
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0U0NDEzNDEyRjc0OEUyMDA5Qjg0QjggLyogUmVu
ZGVyQ29tYmluZVRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzOTJGMTQyMEFEMTg1RjQwMDY5
MUJENCAvKiBSZW5kZXJDb3VudGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VBNDg2RTA5N0Q5
MzAyMDA5NEM5RTQgLyogUmVuZGVyRGVwcmVjYXRlZEZsZXhpYmxlQm94LmggaW4gSGVhZGVycyAq
LywKKwkJCQk4MzZEQUEwNjFDRUFCODBEMDBBMkI3MDcgLyogUmVuZGVyRGVzY2VuZGFudEl0ZXJh
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlEMzAyNzU0QTEyQTVGRTg0MDA0QkQ4MjggLyogUmVu
ZGVyRGV0YWlsc01hcmtlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTc2RTVGN0YxMzVFMERDRjAw
QTY5ODM3IC8qIFJlbmRlcmVkRG9jdW1lbnRNYXJrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTlC
MzJDREE5MTNERjdGQTkwMEYzNEQxMyAvKiBSZW5kZXJlZFBvc2l0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQlFNDNBMDIzQjE3RUIzNzBBMDA0Q0REMjUgLyogUmVuZGVyRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMEY1QjdBNTUxMEY2NUQ3QTAwMzc2MzAyIC8qIFJlbmRlckVtYmVkZGVk
T2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNjZDNzczMTBBQjYwM0ZEMDAyMzhDQzQgLyog
UmVuZGVyRmlsZVVwbG9hZENvbnRyb2wuaCBpbiBIZWFkZXJzICovLAorCQkJCTUzQzgyOThFMTNE
OEQ5MjcwMERFMkRFQiAvKiBSZW5kZXJGbGV4aWJsZUJveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RDcwQUQ2NTgxM0UxMzQyQjAwNUI1MEI0IC8qIFJlbmRlckZyYWdtZW50Q29udGFpbmVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQ0U5M0Y0NTE1MTdDNTY3MDA4Q0NGNzQgLyogUmVuZGVyRnJhZ21l
bnRDb250YWluZXJTZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUwOENDQTRGMTNDRjEwNkIwMDMx
NTFGMyAvKiBSZW5kZXJGcmFnbWVudGVkRmxvdy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURF
RDMwQTE1MzBDNzAwQjEyQTY4IC8qIFJlbmRlckZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RkQzMDgwRjExN0NGN0U3MDBBNzkxRjcgLyogUmVuZGVyRnJhbWVCYXNlLmggaW4gSGVhZGVycyAq
LywKKwkJCQlBODcxREVEMTBBMTUzMEM3MDBCMTJBNjggLyogUmVuZGVyRnJhbWVTZXQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUNERUE3Qzg0MTI3NjIzMDQwMEI4NDZERCAvKiBSZW5kZXJGdWxsU2Ny
ZWVuLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjNGMEU1QTE1NzAzMEMzMDA2REE1N0YgLyogUmVu
ZGVyR2VvbWV0cnlNYXAuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDMTI4QTczMTM3Qzg2N0MwMENB
Qzg0NSAvKiBSZW5kZXJHcmlkLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VBNDg2QTA5N0Q5MzAy
MDA5NEM5RTQgLyogUmVuZGVySFRNTENhbnZhcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZEMzA4
RDYxMTdEMTY4NTAwQTc5MUY3IC8qIFJlbmRlcklGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QkNFQTQ4NzYwOTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlckltYWdlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkwOEYyRjAwQTEyMTNFNjE3MDBEQ0VDNDggLyogUmVuZGVySW1hZ2VSZXNvdXJjZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDg2NDFENDgxMjE0MkY3RDAwOERFOUY2IC8qIFJlbmRlckltYWdl
UmVzb3VyY2VTdHlsZUltYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Mjk5QkM2ODIzRDZBNTNF
MDBDQzY4ODMgLyogUmVuZGVyaW5nTW9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzI5RDA1MzAy
NTMxNDI0MzAwNDIyMDk4IC8qIFJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNTU2QzdDNEIyMjEyMzk5NzAwOUIwNkNBIC8qIFJlbmRlcmluZ1VwZGF0ZVNj
aGVkdWxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNFQTQ4NzgwOTdEOTMwMjAwOTRDOUU0IC8q
IFJlbmRlcklubGluZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjU5NUZGNDcxODI0Q0VFMzAwRkY1
MUNEIC8qIFJlbmRlckl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VBNDg3QTA5N0Q5
MzAyMDA5NEM5RTQgLyogUmVuZGVyTGF5ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNTgwQ0ZG
MEYxMkRFOUIwMDUxRDY4OSAvKiBSZW5kZXJMYXllckJhY2tpbmcuaCBpbiBIZWFkZXJzICovLAor
CQkJCTBGNTgwQ0ZEMEYxMkRFOUIwMDUxRDY4OSAvKiBSZW5kZXJMYXllckNvbXBvc2l0b3IuaCBp
biBIZWFkZXJzICovLAorCQkJCTNDMjQ0RkVBQTM3NUFDNjMzRjg4QkU2RiAvKiBSZW5kZXJMYXll
ck1vZGVsT2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjUzRkI4NDIxM0I3QTY0MDBDNDBE
MzQgLyogUmVuZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ5
MDY2MDcwQkUxNDFENDAwOTU2OTk4IC8qIFJlbmRlckxheW91dFN0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQkwQkUwMzBBMjBGMzExMkZCMDAzQzFBNDYgLyogUmVuZGVyTGluZUJveExpc3QuaCBp
biBIZWFkZXJzICovLAorCQkJCUJDRUE0ODY0MDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJMaW5l
QnJlYWsuaCBpbiBIZWFkZXJzICovLAorCQkJCUFCQjU0MTlGMEFDRERGRTQwMDI4MjBFQiAvKiBS
ZW5kZXJMaXN0Qm94LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBN0E1MjBBMTkxQTUyMDBBOEVG
NUYgLyogUmVuZGVyTGlzdEl0ZW0uaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE3QTUwMEExOTFB
NTIwMEE4RUY1RiAvKiBSZW5kZXJMaXN0TWFya2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjU2
MDI4RjBFNEI3NjU4MDA2NUIwMzggLyogUmVuZGVyTWFycXVlZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDM5MDQ2RDgxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTEJsb2NrLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MzkwNDZEQTEyREEyNUU4MDBBRjgwQTIgLyogUmVuZGVyTWF0aE1MRmVu
Y2VkLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzkwNDZEQTEyREEyNUU4MDBBRjgxQjMgLyogUmVu
ZGVyTWF0aE1MRmVuY2VkT3BlcmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzOTA0NkRDMTJE
QTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxGcmFjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDM5MDQ2REUxMkRBMjVFODAwQUY4MEEyIC8qIFJlbmRlck1hdGhNTE1hdGguaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQzOTA0NkUwMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxPcGVy
YXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM5MDQ2RTIxMkRBMjVFODAwQUY4MEEyIC8qIFJl
bmRlck1hdGhNTFJvb3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzOTA0NkU0MTJEQTI1RTgwMEFG
ODBBMiAvKiBSZW5kZXJNYXRoTUxSb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzOTA0NkU4MTJE
QTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxTY3JpcHRzLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0MzkwNDZFQzEyREEyNUU4MDBBRjgwQTkgLyogUmVuZGVyTWF0aE1MVG9rZW4uaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQzOTA0NkVBMTJEQTI1RTgwMEFGODBBMiAvKiBSZW5kZXJNYXRoTUxVbmRl
ck92ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0QzI3OTU5MENGOTc0MTkwMEU5N0I5OCAvKiBS
ZW5kZXJNZWRpYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUJEREZFN0EwQTVDNkU3MDAwQTNFMTFE
IC8qIFJlbmRlck1lbnVMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNDU0NDI0RjExOUIzNjg3
MDA5QkU5MTIgLyogUmVuZGVyTWV0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQjQ3Nzk5MjVE
NDZFRkYwMDVFRjBDOCAvKiBSZW5kZXJNb2RlbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUEzNTg2
RTAxNTI2NEM0NTAwMjJBNjU5IC8qIFJlbmRlck11bHRpQ29sdW1uRmxvdy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkNFMzJCOUMxNTE3QzBCMjAwRjU0MkVDIC8qIFJlbmRlck11bHRpQ29sdW1uU2V0
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzFBN0Q5ODE4RkNCNUIwMDA0MjE4NzkgLyogUmVuZGVy
TXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUE0
ODgwMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTgzODg2NzM1MUQxM0JBNUYwMDM2OTdEMCAvKiBSZW5kZXJPYmplY3RFbnVtcy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQkNGQTkzMDgxMDMzMzE5MzAwN0IyNUQxIC8qIFJlbmRlck92ZXJmbG93Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBNDNCRjU5RDExNDkyOTI4MDBDNjQzQ0EgLyogUmVuZGVyUHJv
Z3Jlc3MuaCBpbiBIZWFkZXJzICovLAorCQkJCUI1QjY1ODc0MTg2RkRFNEMwMDlDMjZFOCAvKiBS
ZW5kZXJQdHIuaCBpbiBIZWFkZXJzICovLAorCQkJCTVBNTc0RjI1MTMxREI5MzkwMDQ3MUI4OCAv
KiBSZW5kZXJRdW90ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTg3MURGRTMwQTE1Mzc2QjAwQjEy
QTY4IC8qIFJlbmRlclJlcGxhY2VkLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0E4NDZENzBEQzY3
QTM1MDAyNkMzMDkgLyogUmVuZGVyUmVwbGljYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQ3OUZB
RUUxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTE0
NzlGQUYwMTA5QUUzNzUwMERFRDY1NSAvKiBSZW5kZXJSdWJ5QmFzZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMTQ3OUZBRjIxMDlBRTM3NTAwREVENjU1IC8qIFJlbmRlclJ1YnlSdW4uaCBpbiBIZWFk
ZXJzICovLAorCQkJCTE0NzlGQUY0MTA5QUUzNzUwMERFRDY1NSAvKiBSZW5kZXJSdWJ5VGV4dC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQkMzQkU5OTQwRTlDMUM3QzAwODM1NTg4IC8qIFJlbmRlclNj
cm9sbGJhci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMzQkU5OTUwRTlDMUM3QzAwODM1NTg4IC8q
IFJlbmRlclNjcm9sbGJhclBhcnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDM0JFOTk5MEU5QzFF
NUQwMDgzNTU4OCAvKiBSZW5kZXJTY3JvbGxiYXJUaGVtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDU4RkU0MEExNTg5REYwQjAwNTYwOUU2IC8qIFJlbmRlclNlYXJjaEZpZWxkLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwRjExQTU0RjBGMzkyMzMxMDBDMzc4ODQgLyogUmVuZGVyU2VsZWN0aW9uSW5m
by5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUIyNDdBNkQwQUZENjM4MzAwM0ZBNUZEIC8qIFJlbmRl
clNsaWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM4QzhGQUUwRERDRDMxQjAwQjU5MkY0IC8q
IFJlbmRlclN0eWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVFQjY2ODBFODFDQjcxMDBCMjU5
NjUgLyogUmVuZGVyU3R5bGVDb25zdGFudHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzNjcwOEMx
MTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdCbG9jay5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDM2NzA4QzMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR0NvbnRhaW5lci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMkIzNjVDODQxNTI1MTE5RTAwOTFEMjdCIC8qIFJlbmRlclNWR0VsbGlwc2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTQzQzA5MkJDMTJEOUU0RUUwMEE5ODlDMyAvKiBSZW5kZXJT
VkdGb3JlaWduT2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhDNTEyRDlDQTRCMDAw
NDQyMzQgLyogUmVuZGVyU1ZHR3JhZGllbnRTdG9wLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3
MDhDNzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHSGlkZGVuQ29udGFpbmVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MzY3MDhDOTEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHSW1hZ2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTA4NTRCMDE1MTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJT
VkdJbmxpbmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTA4NTRCMDE3MTI1NUU0RTYwMEI5Q0REMCAv
KiBSZW5kZXJTVkdJbmxpbmVUZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhDQjEyRDlD
QTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHTW9kZWxPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUFEREYxQUQ3MTI1N0NEOUEwMDAzQTc1OSAvKiBSZW5kZXJTVkdQYXRoLmggaW4gSGVhZGVycyAq
LywKKwkJCQlBMTBCQjU4NTE0ODRFM0E3MDBCMkU4N0EgLyogUmVuZGVyU1ZHUmVjdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNDM2NzA4Q0QxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291
cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhDRjEyRDlDQTRCMDAwNDQyMzQgLyogUmVu
ZGVyU1ZHUmVzb3VyY2VDbGlwcGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhEMTEyRDlD
QTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTQzNjcwOEQzMTJEOUNBNEIwMDA0NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZUZpbHRl
ci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM2NzA4RDUxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRl
clNWR1Jlc291cmNlRmlsdGVyUHJpbWl0aXZlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhE
NzEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDM2NzA4RDkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNl
TGluZWFyR3JhZGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzNjcwOERCMTJEOUNBNEIwMDA0
NDIzNCAvKiBSZW5kZXJTVkdSZXNvdXJjZU1hcmtlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM2
NzA4REQxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlTWFza2VyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0MzY3MDhERjEyRDlDQTRCMDAwNDQyMzQgLyogUmVuZGVyU1ZHUmVzb3Vy
Y2VQYXR0ZXJuLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzY3MDhFMTEyRDlDQTRCMDAwNDQyMzQg
LyogUmVuZGVyU1ZHUmVzb3VyY2VSYWRpYWxHcmFkaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDM2NzA4RTMxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1Jlc291cmNlU29saWRDb2xvci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDM2NzA4RTUxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNW
R1Jvb3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMEJCNThCMTQ4NEUzQjMwMEIyRTg3QSAvKiBS
ZW5kZXJTVkdTaGFwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg1NEIwMTkxMjU1RTRFNjAwQjlD
REQwIC8qIFJlbmRlclNWR1RleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA4NTRCMDFCMTI1NUU0
RTYwMEI5Q0REMCAvKiBSZW5kZXJTVkdUZXh0UGF0aC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM2
NzA4RTkxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFJlbmRlclNWR1RyYW5zZm9ybWFibGVDb250YWluZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTA4NTRCMDFEMTI1NUU0RTYwMEI5Q0REMCAvKiBSZW5kZXJT
VkdUU3Bhbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM2NzA4RUIxMkQ5Q0E0QjAwMDQ0MjM0IC8q
IFJlbmRlclNWR1ZpZXdwb3J0Q29udGFpbmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOERGNEFF
QjA5ODBDNDJDMDA1Mjk4MUIgLyogUmVuZGVyVGFibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTZF
RDg3OEM1MTQ3NDkzRjQwMDRDMzU5NyAvKiBSZW5kZXJUYWJsZUNhcHRpb24uaCBpbiBIZWFkZXJz
ICovLAorCQkJCUE4REY0QUU5MDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJsZUNlbGwuaCBp
biBIZWFkZXJzICovLAorCQkJCUE4REY0QUYxMDk4MEM0MkMwMDUyOTgxQiAvKiBSZW5kZXJUYWJs
ZUNvbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQThERjRBRUUwOTgwQzQyQzAwNTI5ODFCIC8qIFJl
bmRlclRhYmxlUm93LmggaW4gSGVhZGVycyAqLywKKwkJCQlBOERGNEFFRjA5ODBDNDJDMDA1Mjk4
MUIgLyogUmVuZGVyVGFibGVTZWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VBNDg4QzA5
N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUI2N0Qx
QTkwOTdGM0FFMzAwRjkzOTJFIC8qIFJlbmRlclRleHRDb250cm9sLmggaW4gSGVhZGVycyAqLywK
KwkJCQkwODNEQUVBNzBGMDFBN0ZCMDAzNDI3NTQgLyogUmVuZGVyVGV4dENvbnRyb2xNdWx0aUxp
bmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTA4M0RBRUE5MEYwMUE3RkIwMDM0Mjc1NCAvKiBSZW5k
ZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUE0ODhFMDk3
RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUU0QzkxQTE2MTgwOTk5RjEwMEExN0Y2RCAvKiBSZW5kZXJUZXh0TGluZUJveGVzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCQ0VBNDg4QTA5N0Q5MzAyMDA5NEM5RTQgLyogUmVuZGVyVGhlbWUuaCBp
biBIZWFkZXJzICovLAorCQkJCTFBMjk5RkU4MUQ3RjVGQTYwMEE2MDA5MyAvKiBSZW5kZXJUaGVt
ZUNvY29hLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRUQxM0Q1MjBDRUE5NDk3MDBEODk0NjYgLyog
UmVuZGVyVGhlbWVJT1MuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUE0ODg3MDk3RDkzMDIwMDk0
QzlFNCAvKiBSZW5kZXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGMTk5OEMwODI0
NUU1OTAwMUU5QUJDIC8qIFJlbmRlclRyZWVBc1RleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0
N0MzOTJEMUZFNkUwRjMwMEJCQkM2QiAvKiBSZW5kZXJUcmVlQnVpbGRlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMTE5MzQwQTMxRkVFMDI0MDAwOTM1RjFFIC8qIFJlbmRlclRyZWVCdWlsZGVyQmxv
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCTExMzQwOURBMjAzRTAzODAwMEM2NjkxNSAvKiBSZW5k
ZXJUcmVlQnVpbGRlckNvbnRpbnVhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ3QzM5MzAx
RkU2RTBGRDAwQkJCQzZCIC8qIFJlbmRlclRyZWVCdWlsZGVyRmlyc3RMZXR0ZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTExOTM0MDk3MUZFRDcxNTUwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRl
ckZvcm1Db250cm9scy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTFDQjI3ODkyMDNCQTU3MDAwNEEx
REM5IC8qIFJlbmRlclRyZWVCdWlsZGVyRnVsbFNjcmVlbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTQ3QzM5MzIxRkU2RTEwNTAwQkJCQzZCIC8qIFJlbmRlclRyZWVCdWlsZGVyTGlzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTQ3QzM5MzMxRkU2RTEwODAwQkJCQzZCIC8qIFJlbmRlclRyZWVCdWls
ZGVyTXVsdGlDb2x1bW4uaCBpbiBIZWFkZXJzICovLAorCQkJCTExOTM0MDhBMUZFQjM1NUQwMDkz
NUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlclJ1YnkuaCBpbiBIZWFkZXJzICovLAorCQkJCTExOTM0
MDc5MUZFOEI5MjMwMDkzNUYxRSAvKiBSZW5kZXJUcmVlQnVpbGRlclRhYmxlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkxMTYzRjgyNDI0RTVENUFFMDAwQUI5NjAgLyogUmVuZGVyVHJlZU11dGF0aW9u
RGlzYWxsb3dlZFNjb3BlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDdDMzkyRTFGRTZFMEY3MDBC
QkJDNkIgLyogUmVuZGVyVHJlZVBvc2l0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDdDMzky
RjFGRTZFMEY5MDBCQkJDNkIgLyogUmVuZGVyVHJlZVVwZGF0ZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUU0N0MzOTMxMUZFNkUxMDIwMEJCQkM2QiAvKiBSZW5kZXJUcmVlVXBkYXRlckdlbmVyYXRl
ZENvbnRlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDYxNDUyMENENjhBMzUwMEZBREE3NSAv
KiBSZW5kZXJWaWRlby5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNFQTQ4NjgwOTdEOTMwMjAwOTRD
OUU0IC8qIFJlbmRlclZpZXcuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFMjA1MDdFMThBNDU4QzIw
MDgwNjQ3RSAvKiBSZW5kZXJWVFRDdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4NzFERkU0MEEx
NTM3NkIwMEIxMkE2OCAvKiBSZW5kZXJXaWRnZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4OUND
QzUzMEY0NEU5ODEwMEI1REExMCAvKiBSZXBsYWNlTm9kZVdpdGhTcGFuQ29tbWFuZC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMkRGNTEyQ0UxRDg3M0U0NzAwMUQ2NzgwIC8qIFJlcGxhY2VSYW5nZVdp
dGhUZXh0Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlFMEEwOTlFNjQ5MjAwNTZF
NTgxIC8qIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk0NkRE
NkUxRjI2RTdEQkU3MDA4QzFGNEMgLyogUmVwb3J0aW5nRW5kcG9pbnRzQ2FjaGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQ5OThBRUM2MTNGOUQwRUEwMDkwQjFBQSAvKiBSZXF1ZXN0QW5pbWF0aW9u
RnJhbWVDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjU1QjNERDAxMjUxRjEyRDAwM0VG
MjY5IC8qIFJlc2V0SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1OEIyRjlGNDIyMzJE
NDUzMDA5MzhENjMgLyogUmVzaXplT2JzZXJ2YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTU4
QjJGOUY1MjIzMkQ0NTgwMDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMEZENkE2OEMyNkVFQzM3RjAwN0IyMjMxIC8qIFJlc2l6ZU9ic2VydmVyQm94T3B0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNThCMkY5RjYyMjMyRDQ1QzAwOTM4RDYzIC8qIFJlc2l6
ZU9ic2VydmVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTU4QjJGOUY3MjIzMkQ0NjEw
MDkzOEQ2MyAvKiBSZXNpemVPYnNlcnZlckVudHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkQ2
QTY4QTI2RUVDMzJCMDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwRkQ2QTY4RTI2RUVDNUU5MDA3QjIyMzEgLyogUmVzaXplT2JzZXJ2ZXJTaXpl
LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzJGQTYxMjFFQTk1QTNDMDBBMDMxMDggLyogUmVzb3Vy
Y2VDcnlwdG9ncmFwaGljRGlnZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3RUU2ODQ2QTEyRDI2
RTM4MDBFNzk0MTUgLyogUmVzb3VyY2VFcnJvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM0Rjcx
M0MwRDVBNkYxOTAwMDE4RDY5IC8qIFJlc291cmNlRXJyb3JCYXNlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk1MTRDNzY3OTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTUxNEM3NjdBMENFOTIzQTEwMDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUNs
aWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE0Qzc2N0IwQ0U5MjNBMTAwN0VGM0NEIC8qIFJl
c291cmNlSGFuZGxlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1NkQzNzNGMEFEQkE1
REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRDBBM0E3
MzExNDA1QTM5ODAwRkI4RUQzIC8qIFJlc291cmNlTG9hZGVyT3B0aW9ucy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNTFBRjUwMzYxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxRUU3QjM4MUFBNTBCMDUwMEY5MkIyMSAvKiBSZXNvdXJj
ZUxvYWRJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzNFMzI1NzEwODgzQjdDMDA1QkM0OTMg
LyogUmVzb3VyY2VMb2FkTm90aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTZCNjkzQTJFMUM1
MUE4MkUwMEIwM0JFRiAvKiBSZXNvdXJjZUxvYWRPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTQyOTVGQTQxMkIwNjE0RTAwRDFBQ0UwIC8qIFJlc291cmNlTG9hZFByaW9yaXR5LmggaW4g
SGVhZGVycyAqLywKKwkJCQk3QTkyOUNBNzFDNTk4QUE5MDA0REYyMjYgLyogUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUM2RDAzMDEyNjVDMjExQjAwMkI2NEZF
IC8qIFJlc291cmNlTG9hZFRpbWluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0VFNjg0NkQxMkQy
NkUzODAwRTc5NDE1IC8qIFJlc291cmNlUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE0
Qzc2N0QwQ0U5MjNBMTAwN0VGM0NEIC8qIFJlc291cmNlUmVxdWVzdEJhc2UuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTdFRTY4NDZGMTJEMjZFMzgwMEU3OTQxNSAvKiBSZXNvdXJjZVJlcXVlc3RDRk5l
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0VFNjg0NzAxMkQyNkUzODAwRTc5NDE1IC8qIFJlc291
cmNlUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNEM3NjdGMENFOTIzQTEwMDdFRjND
RCAvKiBSZXNvdXJjZVJlc3BvbnNlQmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVDRTlGM0Yx
RTRDNDE3NDAwMUJCRTdDIC8qIFJlc291cmNlVGltaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQlD
QkMyRDIzMDFDRTVCOEExMDBEMTg4MEIgLyogUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTUwNzFFODUxQzU2RDBEQzAwOTk1MUJFIC8qIFJlc291cmNlVXNh
Z2VEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlBREJBRDZFRjFCQ0REOTU3MDAzODEzMjUgLyog
UmVzb3VyY2VVc2FnZU92ZXJsYXkuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1MDcxRTg3MUM1NkQw
RTEwMDk5NTFCRSAvKiBSZXNvdXJjZVVzYWdlVGhyZWFkLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
MTg5MzhCMjI0MjlGOUI0MDA3RkRDNDEgLyogUmV0cmlldmVSZWNvcmRzT3B0aW9ucy5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRkQzMTYwQTUxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRkQzMTYwQTcxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYkFjY3VtdWxh
dGlvbkJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwQTkxMkIwMjZGNzAwQzFBMzU5
IC8qIFJldmVyYkNvbnZvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQzMTYwQUIxMkIwMjZG
NzAwQzFBMzU5IC8qIFJldmVyYkNvbnZvbHZlclN0YWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
RDMxNjBBRDEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJiSW5wdXRCdWZmZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQ5RTkxMUM5MEVGODZENDcwMDlEMENBRiAvKiBSb3RhdGVUcmFuc2Zvcm1PcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUE3M0Y5NUZGMTJDOTdCRkUwMDMxQUFGOSAvKiBS
b3VuZGVkUmVjdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTdFMjMzNjMxREM3REEyNDAwRjI4RDAx
IC8qIFJzYU90aGVyUHJpbWVzSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdBQjk5NjkxOERB
M0MwMTAwMTg3NzFFIC8qIFJUQ0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTQx
ODIwNTQ3MUU1M0U5OEMwMEQ2MjIwNyAvKiBSVENDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQkwNzhFMDkxRTE3RDE0RDFDMDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWwuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTA3OEUwOTFGMTdEMTREMUMwMDQyMEFBMSAvKiBSVENEYXRhQ2hhbm5lbEV2
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzhFMDkzQzE3RDE2RTFDMDA0MjBBQTEgLyogUlRD
RGF0YUNoYW5uZWxIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzhFMDkzRDE3RDE2RTFD
MDA0MjBBQTEgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQkwNzM3OTRGQTE5RjU4NjRFMDBFNUEwNDUgLyogUlRDRGF0YUNoYW5uZWxIYW5kbGVyTW9j
ay5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE2RURDMDAyNjAwRTc4ODAwMDkyNjc1IC8qIFJUQ0Rh
dGFDaGFubmVsSWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE2RURCRjYyNjAwRDY3
OTAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlSGFuZGxlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNDE2RURDMDIyNjAwRTdCMDAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlSGFu
ZGxlckNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMTIyM0JFMjYwMjVCQzEwMEIw
QTBCNiAvKiBSVENEYXRhQ2hhbm5lbFJlbW90ZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDE2RURDMDQyNjAwRTgxMDAwMDkyNjc1IC8qIFJUQ0RhdGFDaGFubmVsUmVtb3RlU291cmNlQ29u
bmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2REU3MDIxRTgzQUUxRDAwODRDMjYxIC8q
IFJUQ0RhdGFDaGFubmVsU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxODhENTVDMjZDNTRE
NkYwMDQ4NThDOCAvKiBSVENEdGxzVHJhbnNwb3J0QmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDE4OEQ1NjMyNkM1NTFCMTAwNDg1OEM4IC8qIFJUQ0R0bHNUcmFuc3BvcnRTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5MjAxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ0RUTUZTZW5k
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTIxMTdEMTREMUMwMDQyMEFBMSAvKiBSVENE
VE1GVG9uZUNoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MUU2RDcxQjI2RUExQTQ2
MDBCNzY1RDYgLyogUlRDRXJyb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQUI5Nzk1MjZFNzVB
MkUwMDdDMEZFNiAvKiBSVENFcnJvckRldGFpbFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3
OEUwOTIzMTdEMTREMUMwMDQyMEFBMSAvKiBSVENJY2VDYW5kaWRhdGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTA3OEUwOTQwMTdEMTZFMUMwMDQyMEFBMSAvKiBSVENJY2VDYW5kaWRhdGVEZXNjcmlw
dG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTM1OTEwNjFFN0REQzczMDBGMzA2MzAgLyogUlRD
SWNlQ29ubmVjdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTM1OTEwNzFFN0REQzcz
MDBGMzA2MzAgLyogUlRDSWNlR2F0aGVyaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3
QUI5OTZCMThEQTNDMDEwMDE4NzcxRSAvKiBSVENJY2VTZXJ2ZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTMxMzU5MTA4MUU3RERDNzMwMEYzMDYzMCAvKiBSVENJY2VUcmFuc3BvcnRQb2xpY3kuaCBp
biBIZWFkZXJzICovLAorCQkJCTMxMzU5MTA5MUU3RERDNzMwMEYzMDYzMCAvKiBSVENJY2VUcmFu
c3BvcnRTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDFDMTRCQzYyNkRFNkRFODAwNjg1QkY1
IC8qIFJUQ05ldHdvcmtNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzM3OTRGRTE5RjU4
NjRFMDBFNUEwNDUgLyogUlRDTm90aWZpZXJzTW9jay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcz
Nzk0REUxOUVFMkM1MjAwRTVBMDQ1IC8qIFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMDc4RTA5MjUxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ1BlZXJDb25uZWN0aW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzhFMDk0MjE3RDE2RTFDMDA0MjBBQTEgLyogUlRDUGVl
ckNvbm5lY3Rpb25IYW5kbGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTlFNkVDOTI1
NjZEMjc4MDAyQjUwMTAgLyogUlRDUGVlckNvbm5lY3Rpb25JY2VFcnJvckV2ZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwNzhFMDkyNDE3RDE0RDFDMDA0MjBBQTEgLyogUlRDUGVlckNvbm5lY3Rp
b25JY2VFdmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDEzQ0MxMUQyNUU3RDk4RTAwRDU5QzRC
IC8qIFJUQ1ByaW9yaXR5VHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDExNEZFMzIyNUJFQkQx
OTAwOUQ5RjIwIC8qIFJUQ1J0Y3BQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTJE
RTRCODIxOTI4NUMwMDA3NUYzQTcgLyogUlRDUnRwQ2FwYWJpbGl0aWVzLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1RTJDNDM2MzFCQ0VFMzJCMDAwMUUyQkMgLyogUlRDUnRwUmVjZWl2ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQxM0M4QjM1MjU1MkYyN0QwMEU2NTA1NSAvKiBSVENSdHBSZWNlaXZl
cldpdGhUcmFuc2Zvcm0uaCBpbiBIZWFkZXJzICovLAorCQkJCTVFMkM0MzYxMUJDRUUzMjMwMDAx
RTJCQyAvKiBSVENSdHBTZW5kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxM0M4QjMzMjU1MkYy
N0QwMEU2NTA1NSAvKiBSVENSdHBTZW5kZXJXaXRoVHJhbnNmb3JtLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0MTgxQzY0QTI1NUI0QzI4MDBBRUIwRkYgLyogUlRDUnRwU0ZyYW1lVHJhbnNmb3JtLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk0MTgxQzY0ODI1NUI0QzI4MDBBRUIwRkYgLyogUlRDUnRwU0Zy
YW1lVHJhbnNmb3JtZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTVFNUUyQjE0MUNGQzNFNzUwMDBD
MEQ4NSAvKiBSVENSdHBUcmFuc2NlaXZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzFFQjU0REYx
RTdEQzc0NDAwQzE2MjNCIC8qIFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MTNDOEIzNDI1NTJGMjdEMDBFNjUwNTUgLyogUlRDUnRwVHJhbnNmb3JtLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk0MTgxQzVDQjI1NTU4MkU0MDBBRUIwRkYgLyogUlRDUnRwVHJh
bnNmb3JtYWJsZUZyYW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTgxQzVDOTI1NTU3M0RGMDBB
RUIwRkYgLyogUlRDUnRwVHJhbnNmb3JtQmFja2VuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE0
NTE2RUMyNkNFNTI2NjAwQUFBQkUwIC8qIFJUQ1NjdHBUcmFuc3BvcnRCYWNrZW5kLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkzMTM1OTEwQTFFN0REQzczMDBGMzA2MzAgLyogUlRDU2RwVHlwZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5MjYxN0QxNEQxQzAwNDIwQUExIC8qIFJUQ1Nlc3Npb25E
ZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5NDMxN0QxNkUxQzAwNDIwQUEx
IC8qIFJUQ1Nlc3Npb25EZXNjcmlwdGlvbkRlc2NyaXB0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTA3OEUwOTQ0MTdEMTZFMUMwMDQyMEFBMSAvKiBSVENTZXNzaW9uRGVzY3JpcHRpb25SZXF1ZXN0
LmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTM1OTEwQjFFN0REQzczMDBGMzA2MzAgLyogUlRDU2ln
bmFsaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTJBMTdEMTREMUMwMDQyMEFB
MSAvKiBSVENTdGF0c1JlcG9ydC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUUyQzQzNjgxQkNFRTM3
NzAwMDFFMkJDIC8qIFJUQ1RyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTQ3
MTdEMTZFMUMwMDQyMEFBMSAvKiBSVENWb2lkUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NTgyNEFCQTMxQUU4MTExNjAwOTA3NEI3IC8qIFJ1YnlFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQk1ODI0QUJBNzFBRTgxMzg0MDA5MDc0QjcgLyogUnVieVRleHRFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFNDg2M0NGRTIzODQyRTlFMDA5NzIxNTggLyogUnVsZURhdGEuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUE3OUJBREEyMTYxRTdGM0YwMEMyRTY1MiAvKiBSdWxlRmVhdHVyZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTc5QkFEQTQxNjFFN0YzRjAwQzJFNjUyIC8qIFJ1bGVTZXQu
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxQkE5NDcxMjNBQzMwNTMwMDQ0NDg0NiAvKiBSdW5KYXZh
U2NyaXB0UGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ3NkJCODIxOTQ1NjMyNDAw
Q0ZEMjlBIC8qIFJ1bkxvb3BPYnNlcnZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE1NjlEMUYw
RDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfYXJyYXkuaCBpbiBIZWFkZXJzICovLAorCQkJCTFB
NTY5RDIxMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1lX21ldGhvZC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMUE1NjlEMjMwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfb2JqZWN0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkxQTU2OUQyNTBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9yb290Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQkyOTNFQUUxRjEzNTZCMkZFMDA2N0FDRjkgLyogUnVudGltZUFw
cGxpY2F0aW9uQ2hlY2tzLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzUyMjI5RTFFMURBRTQ3MDAy
Q0I4RjcgLyogUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0U3
QTZDMjgyMDg1MzdFMjAwRkEyQjQ2IC8qIFNhbWVTaXRlSW5mby5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDFGQ0Q2QjkyM0NFMDE1NTAwQzYyNTY3IC8qIFNhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0RENzA4OTcxODM1OUY2RjAwMkIzREM2IC8qIFNhbXBsZU1h
cC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDlFOTExQ0IwRUY4NkQ0NzAwOUQwQ0FGIC8qIFNjYWxl
VHJhbnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk1REZFOEY1NzBEMTY0NzdD
MDA3NkU5MzcgLyogU2NoZWR1bGVkQWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk5QkQwQkY5
MzEyQTQyQkY1MDA3MkZENDMgLyogU2NvcGVkRXZlbnRRdWV1ZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJN0I3MzExRkIyNUMwOTJCNzAwM0IyNzk2IC8qIFNjb3BlZEhpZ2hQZXJmb3JtYW5jZUdQVVJl
cXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUMwMUJFMEMyNzREQUMwMDlGNEVDOSAvKiBT
Y3JlZW4uaCBpbiBIZWFkZXJzICovLAorCQkJCUMxRTFEMjM2MjAzREYxNTQwMDU4NDY2NSAvKiBT
Y3JlZW5Qcm9wZXJ0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBODREODJDMTExRDM0NzQ4MDA5
NzI5OTAgLyogU2NyaXB0YWJsZURvY3VtZW50UGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NjJFNEM1MDI2MTZBODExMDAzQTJDNjcgLyogU2NyaXB0QnVmZmVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0NkI4NTkzQzI2MTY3MjI3MDAxOUVEQzYgLyogU2NyaXB0QnVmZmVyU291cmNlUHJvdmlk
ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxRjFEMjFGMEVGMzVDMkEwMERBODc1MyAvKiBTY3Jp
cHRDYWNoZWRGcmFtZURhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQjcwRDcwMDlFQjBDN0Mw
MDlEODQ2OCAvKiBTY3JpcHRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDZCNDFG
OTFDQjI0RTcwMDA4RjExREUgLyogU2NyaXB0RGlzYWxsb3dlZFNjb3BlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0OTk4QUVEMjEzRkIyMjREMDA5MEIxQUEgLyogU2NyaXB0ZWRBbmltYXRpb25Db250
cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwOEE0ODQ3ODBFNTI3MkM1MDBDM0ZFNzYgLyog
U2NyaXB0RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTNFNEUyQTgxRTNCMTcxMDAwMjNC
QjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMTFDOUQ5QjBFQjM2ODEyMDBFNDA5REIgLyogU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDExMjIzQkEyNjAyNDRGRTAwQjBBMEI2IC8qIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzNzJEM0U1NTIx
NjU3OEFFMDBDNUUwMjEgLyogU2NyaXB0TW9kdWxlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlGRDMxNjAzNjEyQjAyNjc2MDBDMUEzNTkgLyogU2NyaXB0UHJvY2Vzc29yTm9kZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJOEE0MTNBRTAxMjA3QkJBNTAwODIwMTZFIC8qIFNjcmlwdFJ1bm5lci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJOTM0Q0MxMEEwRURCMjIzOTAwQTY1OEYyIC8qIFNjcmlwdFNv
dXJjZUNvZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQzc2MEIxMEVERTAzRDMwMEMxNjU1RiAv
KiBTY3JpcHRTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjI4QzI4NDUxMEQ4MjUwMDAwOUQw
RDBFIC8qIFNjcmlwdFdyYXBwYWJsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQwMEQ3QTgxNzEz
NkVBNzAwNzdDRTA1IC8qIFNjcmlwdFdyYXBwYWJsZUlubGluZXMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUJDOEFFMzRGMTJFQTA5NkEwMEVCM0FFNiAvKiBTY3JvbGxhYmxlQXJlYS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNUQ5MjVCNjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEFsaWdubWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0EzQkY2N0UxMEQ5OUJBRTAwRTZDRTUzIC8qIFNjcm9sbEFu
aW1hdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjE3NzQ4MDEzNzhCNzcyMDA5REE3NkEgLyog
U2Nyb2xsQW5pbWF0b3JJT1MuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQUUxRkE3MTI5MzlEQjcw
MDRDQjAyNiAvKiBTY3JvbGxBbmltYXRvck1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUNCMzdG
RkYxQzYyRDJBMTAwRjIwMTg4IC8qIFNjcm9sbEFuaW1hdG9yTW9jay5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTNGMTk5QjgwODI0NUU1OTAwMUU5QUJDIC8qIFNjcm9sbGJhci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM4Qjg1NEIwRTdDN0Y1NjAwQUI2OTg0IC8qIFNjcm9sbGJhclRoZW1lLmggaW4g
SGVhZGVycyAqLywKKwkJCQlCQzE0MDI4QjBFODM2ODA4MDAzMTk3MTcgLyogU2Nyb2xsYmFyVGhl
bWVDb21wb3NpdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0Qzk5MTg2MEYzRDFFQkUwMDU4NjY3
MCAvKiBTY3JvbGxiYXJUaGVtZUlPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM4Qjg1M0UwRTdD
N0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJhclRoZW1lTWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RkU3MTQwNjE0MjE3MEI4MDBEQjMzQkEgLyogU2Nyb2xsYmFyVGhlbWVNb2NrLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk4M0M1Nzk1RDFEQTVDMzAxMDA2RkFDODYgLyogU2Nyb2xsQmVoYXZpb3IuaCBp
biBIZWFkZXJzICovLAorCQkJCTBGNjA1QUVEMTVGOTQ4NDgwMDRERjBDMCAvKiBTY3JvbGxpbmdD
b25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFGNjJFRTgxNERBMjJBNzAwNDE1NTZD
IC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzkxQTk5MTE2
Mjc0NkNCMDAyOTczMzAgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3JNYWMuaCBpbiBIZWFkZXJzICov
LAorCQkJCTcxMkRCQTQ5MjFGOEFEODMwMDhGMzZCMiAvKiBTY3JvbGxpbmdDb29yZGluYXRvclR5
cGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1QjQ2NjU2MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Ny
b2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxQzYxQjBCMURF
NTM2RTcwMDhBMjEyRCAvKiBTY3JvbGxpbmdNb21lbnR1bUNhbGN1bGF0b3IuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTUxN0RFRUU4MURFOTRCMDgwMEI5MTY0NCAvKiBTY3JvbGxpbmdNb21lbnR1bUNh
bGN1bGF0b3JNYWMuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQzM4QkZGMTY0NDczQzcwMDA5MUVC
MiAvKiBTY3JvbGxpbmdTdGF0ZUZpeGVkTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZENDFF
NjkyMUY4MEQxNDAwMEMwMDZEIC8qIFNjcm9sbGluZ1N0YXRlRnJhbWVIb3N0aW5nTm9kZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMEZFQTNFN0IxOTFCMkZDNTAwMEYxQjU1IC8qIFNjcm9sbGluZ1N0
YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzFDQkQwRDE2MUE0
NEU5MDBFNEM4NzQgLyogU2Nyb2xsaW5nU3RhdGVOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RkVBM0U4NDE5MUIzMUJGMDAwRjFCNTUgLyogU2Nyb2xsaW5nU3RhdGVPdmVyZmxvd1Njcm9sbGlu
Z05vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNURBOEIxMjJCODU2MzkwMEMyNjZGQSAvKiBT
Y3JvbGxpbmdTdGF0ZU92ZXJmbG93U2Nyb2xsUHJveHlOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkwRjk0QjY1MjIyMDkxNTA2MDAxNTcwMTQgLyogU2Nyb2xsaW5nU3RhdGVQb3NpdGlvbmVkTm9k
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMxQ0JEMEYxNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9s
bGluZ1N0YXRlU2Nyb2xsaW5nTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEZCODg5MEYxNjdE
MzAxNjAwMTBDREE1IC8qIFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJOTMxQ0JEMTExNjFBNDRFOTAwRTRDODc0IC8qIFNjcm9sbGluZ1N0YXRlVHJlZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMUFGNjJGMjYxNERBRkVBMTAwNDE1NTZDIC8qIFNjcm9sbGluZ1Ro
cmVhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFBQUREQTQxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGOTRCNjQ3MjIwOEZFMzYwMDE1NzAx
NCAvKiBTY3JvbGxpbmdUcmVlRml4ZWROb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRkQ0MUU2
ODIxRjgwQzBFMDAwQzAwNkQgLyogU2Nyb2xsaW5nVHJlZUZyYW1lSG9zdGluZ05vZGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTBGRUEzRTg4MTkxQjNCRDcwMDBGMUI1NSAvKiBTY3JvbGxpbmdUcmVl
RnJhbWVTY3JvbGxpbmdOb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0M0QTQxNTE2MjlERjVB
MDBDM0VCNkUgLyogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMEZEOTc1RDUyNDVDQ0I0NzAwQzQyMjk5IC8qIFNjcm9sbGluZ1RyZWVHZXN0
dXJlU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGRkQ0NUFBMjQzQzMwMjcwMDBENEJFQSAv
KiBTY3JvbGxpbmdUcmVlTGF0Y2hpbmdDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RkU1ODA2NDE5MzI3QTYyMDBERTMyRUIgLyogU2Nyb2xsaW5nVHJlZU1hYy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMUFBQURERTQxNERDOEM4RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2RlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwRkVBM0U4MDE5MUIzMTY5MDAwRjFCNTUgLyogU2Nyb2xsaW5n
VHJlZU92ZXJmbG93U2Nyb2xsaW5nTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEY3M0I3Njky
MjJCM0EwQzAwODA1MzE2IC8qIFNjcm9sbGluZ1RyZWVPdmVyZmxvd1Njcm9sbGluZ05vZGVNYWMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTBGQzRCMDA2MjJCOUEwMkQwMENGM0IxRSAvKiBTY3JvbGxp
bmdUcmVlT3ZlcmZsb3dTY3JvbGxQcm94eU5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGOTRC
NjU1MjIwOTMxRTQwMDE1NzAxNCAvKiBTY3JvbGxpbmdUcmVlUG9zaXRpb25lZE5vZGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTkzOTFBOTlEMTYyOUQ3MDAwMDI5NzMzMCAvKiBTY3JvbGxpbmdUcmVl
U2Nyb2xsaW5nTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTZENUE5OUQxNjI5RDcwMDAwMjk3
MzMwIC8qIFNjcm9sbGluZ1RyZWVTY3JvbGxpbmdOb2RlRGVsZWdhdGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTBGMzdGMDg1MjIwMkJGOTgwMEE4OUMwQiAvKiBTY3JvbGxpbmdUcmVlU2Nyb2xsaW5n
Tm9kZURlbGVnYXRlTWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQkwRjk0QjY0OTIyMDhGRTNCMDAx
NTcwMTQgLyogU2Nyb2xsaW5nVHJlZVN0aWNreU5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgz
QzU3OTVEMURBNUMzMDEwMDZGOUM5NyAvKiBTY3JvbGxJbnRvVmlld09wdGlvbnMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTgzQzU3OTVEMURBNUMzMDEwMDZGOUM4NiAvKiBTY3JvbGxMb2dpY2FsUG9z
aXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTgzQzU3OTVEMURBNUMzMDEwMDZGQUM5NyAvKiBT
Y3JvbGxPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk1QjQ2NjU2NDI1RDE0QzBBMDAwQ0ZF
MTQgLyogU2Nyb2xsU25hcEFuaW1hdG9yU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0Njcy
OTI4MUUwREU2ODUwMEFDQzNEOCAvKiBTY3JvbGxTbmFwT2Zmc2V0c0luZm8uaCBpbiBIZWFkZXJz
ICovLAorCQkJCTgzQzU3OTVEMURBNUMzMDEwMDZGQUNBOCAvKiBTY3JvbGxUb09wdGlvbnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTkzQzA5Qzg2MEIwNjU3QUEwMDVBQkQ0RCAvKiBTY3JvbGxUeXBl
cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM2RDZFMjYwOUFGOTQzNTAwRjU5NzU5IC8qIFNjcm9s
bFZpZXcuaCBpbiBIZWFkZXJzICovLAorCQkJCUY1NUIzREQyMTI1MUYxMkQwMDNFRjI2OSAvKiBT
ZWFyY2hJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUFCNzE3MDg5MEIzMTE4MDgwMDE3
MTIzRSAvKiBTZWFyY2hQb3B1cE1lbnUuaCBpbiBIZWFkZXJzICovLAorCQkJCTBFNzA1OEY0MUJD
NUNFREEwMDQ1QTUwNyAvKiBTZWFyY2hQb3B1cE1lbnVDb2NvYS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTc2RjM2RUIxNDY4NjIyNTAwNUU5M0I0IC8qIFNlY3VyaXR5Q29udGV4dC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQkNEMEUwRkIwRTk3MkMzNTAwMjY1REVBIC8qIFNlY3VyaXR5T3JpZ2luLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1MUUzQUEwQjFCOThCQ0FCMDAzNkFEODEgLyogU2VjdXJpdHlP
cmlnaW5EYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0QwRTBGQzBFOTcyQzM1MDAyNjVERUEg
LyogU2VjdXJpdHlPcmlnaW5IYXNoLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUY3QUZDODFBNDhB
OEJDMDBDOEU0RTcgLyogU2VjdXJpdHlPcmlnaW5Qb2xpY3kuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTk3NEQyREE1MTQ2QTUzNUQwMEQ1MUY4QiAvKiBTZWN1cml0eVBvbGljeS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMkQ1QkM0MjcxNkY4ODJFRTAwNzA0OEQwIC8qIFNlY3VyaXR5UG9saWN5VmlvbGF0
aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNEQTJGMEQwMDZDMUQwMEVGNkYyNiAv
KiBTZWdtZW50ZWRTdHJpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFQTgwN0M5MEY3MTRBMDMw
MDUyNDE5OSAvKiBTZWxlY3Rpb25HZW9tZXRyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE0MDVD
ODkxOTBCMDE0NDAwNzU0Rjk0IC8qIFNlbGVjdGlvbkdlb21ldHJ5R2F0aGVyZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQ0NjVEN0JEMjUzNkQwNUUwMDE2NjY2RCAvKiBTZWxlY3Rpb25SYW5nZURh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTk4Q0JDODA1MjYxOEY2OEMwMDE1OTNDOCAvKiBTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NEI0QkI0MTQxNjUw
RDcwMDJCMUQ4QiAvKiBTZWxlY3RvckNoZWNrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzMkQz
RkU4MThBODY1ODQwMEQ3REMwMyAvKiBTZWxlY3RvckNoZWNrZXJUZXN0RnVuY3Rpb25zLmggaW4g
SGVhZGVycyAqLywKKwkJCQkyNkI5OTk5NzE4MDRENTQyMDBEMDExMjEgLyogU2VsZWN0b3JDb21w
aWxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE1MDcxNTgxNjg1MDY3MzAwQzNDN0IzIC8qIFNl
bGVjdG9yRmlsdGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzEwN0JFMjE4Q0MxOURFMDBDQzE4
RTggLyogU2VsZWN0b3JQc2V1ZG9UeXBlTWFwLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDUzMjJB
QzE0MENFMjY3MDA1QTBGOTIgLyogU2VsZWN0b3JRdWVyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RjRENDNENjYyMTg4MDM4QjAwRUNFQ0FDIC8qIFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTE4REYzMzUxOEFBRjEyQzAwNzczRTU5IC8qIFNlcmlhbGl6ZWRD
cnlwdG9LZXlXcmFwLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzdBRjE0MDE4RjRBRTQwMDAwMUVE
NjEgLyogU2VyaWFsaXplZFBsYXRmb3JtRGF0YUN1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3
QUYxNDMxOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybURhdGFDdWVNYWMuaCBp
biBIZWFkZXJzICovLAorCQkJCTA3NkQxQzFGMjNGNkVCNUIwMEQ5NUIwNiAvKiBTZXJpYWxpemVk
UGxhdGZvcm1EYXRhQ3VlVmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE3NUU0OTc2MTA3NTJB
Q0IwMEM5Qjg5NiAvKiBTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTUxNkY3RjZEMUMzMUUzOUEwMEYxMTFEQyAvKiBTZXJ2ZXJPcGVuREJSZXF1ZXN0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkyRDkzQUVFMzE5REY1NjQxMDAyQTg2QzMgLyogU2VydmljZXNPdmVybGF5
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFGMTc1NUQxRjNFQkM4MzAwQzc0OTUw
IC8qIFNlcnZpY2VXb3JrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1ODFFRDEzMUZCMjg4Q0Yw
MENFRDRFQyAvKiBTZXJ2aWNlV29ya2VyQWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RUYx
NDJEMUY5N0I3RDgwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyQ2xpZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQk4Mzc5MzYzRjFGQkJCMEI0MDBDODAyM0MgLyogU2VydmljZVdvcmtlckNsaWVudERh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzN0Q0NjI3MUZBMkE4Q0UwMDU0RTFGQSAvKiBTZXJ2
aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDE1MTlDQjgx
RkQxRjAyRTAwN0Y2MjNDIC8qIFNlcnZpY2VXb3JrZXJDbGllbnRRdWVyeU9wdGlvbnMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTQ2RUYxNDJDMUY5N0I3RDgwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2Vy
Q2xpZW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODM2OUZERkMxRkExMDJFMzAwQzFGRjFGIC8q
IFNlcnZpY2VXb3JrZXJDbGllbnRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUYxNzU1RjFG
M0VCQzgzMDBDNzQ5NTAgLyogU2VydmljZVdvcmtlckNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTFDQTdFRTkxRjg4MzM5MDAwM0QzMTMxIC8qIFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODNFODY2ODAxRkJBNTY1QjAwODg1NUM1IC8qIFNlcnZp
Y2VXb3JrZXJEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNTJCMzQ4RjFGQTNCREE2MDA4QjYy
NDYgLyogU2VydmljZVdvcmtlckRlYnVnZ2FibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxOUFD
RjkyMUY5N0U3REEwMDlGMUE4MyAvKiBTZXJ2aWNlV29ya2VyRmV0Y2guaCBpbiBIZWFkZXJzICov
LAorCQkJCTUxN0E1MzVEMUY1ODk5RkUwMERDREMwQSAvKiBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1
bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjE3NTYxMUYzRUJDODMwMEM3NDk1MCAvKiBTZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzQThBQzQwMUZBQkJG
RTUwMDIwNjRBQyAvKiBTZXJ2aWNlV29ya2VySWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTUyQjM0OTYxRkEzRTI5MDAwOEI2MjQ2IC8qIFNlcnZpY2VXb3JrZXJJbnNwZWN0b3JQcm94
eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFGMTc1NjMxRjNFQkM4MzAwQzc0OTUwIC8qIFNlcnZp
Y2VXb3JrZXJKb2IuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjE3NTY0MUYzRUJDODMwMEM3NDk1
MCAvKiBTZXJ2aWNlV29ya2VySm9iQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUY2NDU2
OTFGNDUzOUI5MDBCNTRERUQgLyogU2VydmljZVdvcmtlckpvYkRhdGEuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzOENBNkJEMUZDMERGRTkwMDVEOUZBNSAvKiBTZXJ2aWNlV29ya2VySm9iRGF0YUlk
ZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjY0NTZBMUY0NTM5QzAwMEI1NERFRCAv
KiBTZXJ2aWNlV29ya2VySm9iVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFGMTc1NjYxRjNF
QkM4MzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNTFGMTc1NjgxRjNFQkM4MzAwQzc0OTUwIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24u
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxN0E1MzRGMUY1NEE4QkEwMERDREMwQSAvKiBTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE3QTUzMjkxRjRC
OTBCOTAwRENEQzBBIC8qIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTUxRjE3NTY5MUYzRUJDODMwMEM3NDk1MCAvKiBTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTFCQ0NFMzAxRjhGMTc5RTAwNkJB
MEVEIC8qIFNlcnZpY2VXb3JrZXJUaHJlYWQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxMTJCNTQz
MUY5RjlDQTAwMEU2Nzg3NSAvKiBTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTUxNUUzN0Y2MUZBQTk0MDIwMEQ3RjIyQSAvKiBTZXJ2aWNlV29ya2VyVHlwZXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTUxRjE3NTZDMUYzRUJDODMwMEM3NDk1MCAvKiBTZXJ2aWNl
V29ya2VyVXBkYXRlVmlhQ2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ2RUYxNDJBMUY5N0I3
RDgwMEMyQTUyNCAvKiBTZXJ2aWNlV29ya2VyV2luZG93Q2xpZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQk5MzMwOUUxMDA5OUU2NDkyMDA1NkU1ODEgLyogU2V0Tm9kZUF0dHJpYnV0ZUNvbW1hbmQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUI4REJEQjRDMTMwQjBGOEEwMEY1Q0RCMSAvKiBTZXRTZWxl
Y3Rpb25Db21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0Q1OERGQjFGOTU2NUE1MDAxMTI3
OTEgLyogU2V0dGluZ3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDQzk3MjJFMUY5M0UzMzYwMDA0
RDRDRiAvKiBTZXR0aW5nc0Jhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxQkJBODY2MjU3RTM3
M0IwMEFDN0Y2RCAvKiBTRnJhbWVVdGlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEYzREQ0NTAx
MkY1RUExQjAwMEQ5MTkwIC8qIFNoYWRvd0JsdXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNUVC
OEM0MEU4MjAzMUIwMEIyNTk2NSAvKiBTaGFkb3dEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
NkQxNjk2NDEzNDZCNEMxMDAwRUI3NzAgLyogU2hhZG93Um9vdC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMDU2QTdBQzgyNTZDNEY0ODAwMkY5RERDIC8qIFNoYWRvd1Jvb3RJbml0LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0NkRGRjQ5ODFEQzI2MDMxMDBCODBCNDggLyogU2hhZG93Um9vdE1vZGUuaCBp
biBIZWFkZXJzICovLAorCQkJCUZENDVBOTRGMTc1RDNGM0UwMEMyMUVDOCAvKiBTaGFwZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRkQ0NUE5NUIxNzVENDFFRTAwQzIxRUM4IC8qIFNoYXBlSW50ZXJ2
YWwuaCBpbiBIZWFkZXJzICovLAorCQkJCUZENDVBOTUyMTc1RDNGM0UwMEMyMUVDOCAvKiBTaGFw
ZU91dHNpZGVJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDFBRjE1MDE2NTZGMTUxMDBDNkQ0
RjcgLyogU2hhcGVWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUQ5RjBGQzEyMTIyMDI5QjAw
NUQ4RkQ0IC8qIFNoYXJlRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE0QTk1NEUwQjRFREND
QjAwMkQ4QzNDIC8qIFNoYXJlZEJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEwQTkxREMy
NENGNDZGRTAwQkZEODlDIC8qIFNoYXJlZEdhbWVwYWRWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0QzNkMxNkIyNjBBNjVDQzAwQzhDNTI5IC8qIFNoYXJlZFJvdXRpbmdBcmJpdHJhdG9yLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4MzRERkFEMDFGN0RBRTVEMDBDMjcyNUIgLyogU2hhcmVkU3Ry
aW5nSGFzaC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlFQTMwOTlFQjc4QzAwNTZFNTgxIC8q
IFNoYXJlZFRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlERjE5RTJBQzI0NzcyQkMxMDA3QkRB
Q0IgLyogU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzNjJFOEMxMjBDRUY5Q0IwMDI0NTg4NiAvKiBTaG91bGRUcmVhdEFzQ29udGludWlu
Z0xvYWQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMTZEREZCMjQwQzY0QjQwMDkzNDBBQSAvKiBT
aW1wbGVSYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzVBMUVBN0QxNTJCQ0YwODAwNEQwMEI2
IC8qIFNpbXBsaWZ5TWFya3VwQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTcyQTdGMjEx
QzZFNTcxOTAwOUM2MTQ5IC8qIFNpbXVsYXRlZENsaWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQkz
MTc0MUFBRDE2NjM2NjA5MDA4QTVCN0UgLyogU2ltdWxhdGVkQ2xpY2tPcHRpb25zLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlGRDAwRDdBNTE0QTNGNjE5MDA3MzQwMTEgLyogU2luY1Jlc2FtcGxlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTEzMjdENjAxMUEzM0EyQjAwNEY5RDY1IC8qIFNpbmtEb2N1
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQ0NENCRDYxRDg2MEM4QjAwNzNBMDc0IC8qIFNp
emVzQXR0cmlidXRlUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NDQ0Q0JENDFEODYwQzhC
MDA3M0EwNzQgLyogU2l6ZXNDYWxjUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUU5MTFD
RDBFRjg2RDQ3MDA5RDBDQUYgLyogU2tld1RyYW5zZm9ybU9wZXJhdGlvbi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQzE0OUQ1NUQyNDJFQTZCOTAwM0VCQjEyIC8qIFNsZWVwRGlzYWJsZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUMxNDlENTVGMjQyRUE3QjgwMDNFQkIxMiAvKiBTbGVlcERpc2FibGVy
Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlDMTQ5RDU2NzI0MkVCODRBMDAzRUJCMTIgLyog
U2xlZXBEaXNhYmxlcklkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNTBGOUYxMTJC
NkUwRTcwMDA4Qzg2MCAvKiBTbGlkZXJUaHVtYkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTlCNTMyRUE0MUJBOTI4NTcwMDM4QTgyNyAvKiBTbG90QXNzaWdubWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNEI2RkE2RjQwQzM5RTQ4QzAwMDg3MDExIC8qIFNtYXJ0UmVwbGFjZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTRBRkQwMEMwREFGMzM1NDAwRjVGNTVDIC8qIFNNSUxUaW1lLmggaW4g
SGVhZGVycyAqLywKKwkJCQlFNEFGRDAwRTBEQUYzMzU1MDBGNUY1NUMgLyogU01JTFRpbWVDb250
YWluZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTVDN0M4OEQ4MUQwRjFGNEEwMDlEMkY2RCAvKiBT
b2NrZXRQcm92aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTEwRDRBMzQxMDMxNjVFRTAwNDlF
QTU0IC8qIFNvY2tldFN0cmVhbUVycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTBENEEzNzEw
MzE2NUVFMDA0OUVBNTQgLyogU29ja2V0U3RyZWFtSGFuZGxlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1MTBENEEzODEwMzE2NUVFMDA0OUVBNTQgLyogU29ja2V0U3RyZWFtSGFuZGxlQ2xpZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQk1MUFCQUUxRTEwM0MxOTEzMDA4QzUyNjAgLyogU29ja2V0U3Ry
ZWFtSGFuZGxlSW1wbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODRBODFGM0UwRkM3REZGMDAwOTU1
MzAwIC8qIFNvdXJjZUFscGhhLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDNBNDk2MjE3QTlEMDFC
MDAyNzRFNDIgLyogU291cmNlQnVmZmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDNBNDk2NTE3
QTlEMDFCMDAyNzRFNDIgLyogU291cmNlQnVmZmVyTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
Q0RGMTM1MDkyNEM5RkNBMzAwNDMyRTFFIC8qIFNvdXJjZUJ1ZmZlclBhcnNlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQ0RGMTM1MDgyNEM5RkE0NDAwNDMyRTFFIC8qIFNvdXJjZUJ1ZmZlclBhcnNl
cldlYk0uaCBpbiBIZWFkZXJzICovLAorCQkJCUNENjQxRUI0MTgxOEY1RUQwMEVFNEM0MSAvKiBT
b3VyY2VCdWZmZXJQcml2YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDREM4QjVBQjE4MDQ3RkYx
MDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBpbiBIZWFkZXJzICovLAor
CQkJCUNEQzhCNUFEMTgwNEFFNUQwMDE2RTY4NSAvKiBTb3VyY2VCdWZmZXJQcml2YXRlQ2xpZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NEE4MUY0MjBGQzdFMDI3MDA5NTUzMDAgLyogU291cmNl
R3JhcGhpYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRDAxQTI3QUUxMEM5QkZEODAwMDI2QTQyIC8q
IFNwYWNlU3BsaXRTdHJpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJCTYyNkNERTBGMTE0MDQyNEMw
MDFFNUE2OCAvKiBTcGF0aWFsTmF2aWdhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM0OTUw
Q0QyNTM5NDM2MTAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5MzQ5NTBDRTI1Mzk0MzY1MDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25BbHRlcm5h
dGl2ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGNkI4MjIyNTY3QTY1NjAwQTA4NDg4IC8qIFNw
ZWVjaFJlY29nbml0aW9uQ2FwdHVyZVNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGNkI4
MUYyNTY3QTA4QzAwQTA4NDg4IC8qIFNwZWVjaFJlY29nbml0aW9uQ2FwdHVyZVNvdXJjZUltcGwu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzQTA0ODJDMjU0OTU1MTkwMDBBQzQ2MiAvKiBTcGVlY2hS
ZWNvZ25pdGlvbkNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQTA0ODJFMjU0OTU1
MUUwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlvbkNvbm5lY3Rpb25DbGllbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzQTA0ODJEMjU0OTU1MUIwMDBBQzQ2MiAvKiBTcGVlY2hSZWNvZ25pdGlv
bkNvbm5lY3Rpb25DbGllbnRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0EwNDgy
QjI1NDk1NTE2MDAwQUM0NjIgLyogU3BlZWNoUmVjb2duaXRpb25FcnJvci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTM0OTUwRDAyNTM5NDM2QzAwOTlGMTcxIC8qIFNwZWVjaFJlY29nbml0aW9uRXJy
b3JDb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQ5NTBEMTI1Mzk0MzcwMDA5OUYxNzEgLyog
U3BlZWNoUmVjb2duaXRpb25FcnJvckV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQ5NTBE
MjI1Mzk0MzczMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25FdmVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTNBMDQ4MjgyNTQ5NTUwNjAwMEFDNDYyIC8qIFNwZWVjaFJlY29nbml0aW9uUHJv
dmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQTA0ODJBMjU0OTU1MTQwMDBBQzQ2MiAvKiBT
cGVlY2hSZWNvZ25pdGlvblJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRDZCNzcwMjU0
Qjk4QTAwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlvblJlcXVlc3RJbmZvLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5MzQ5NTBENDI1Mzk0MzdDMDA5OUYxNzEgLyogU3BlZWNoUmVjb2duaXRpb25S
ZXN1bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzQTA0ODI5MjU0OTU1MTEwMDBBQzQ2MiAvKiBT
cGVlY2hSZWNvZ25pdGlvblJlc3VsdERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzNDk1MEQ2
MjUzOTQzODEwMDk5RjE3MSAvKiBTcGVlY2hSZWNvZ25pdGlvblJlc3VsdExpc3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzRDZCNzcxMjU0QkFCNDUwMDU4REQzQSAvKiBTcGVlY2hSZWNvZ25pdGlv
blVwZGF0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM5QzBEMjcyNTY0RTQ3RjAwQjMyMTFCIC8q
IFNwZWVjaFJlY29nbml6ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUFBMkE1QUQ0MTZBNDg2MTEw
MDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUMxNDkzODA3
MjIzNDU1MUEwMDBDRDcwNyAvKiBTcGVlY2hTeW50aGVzaXNDbGllbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUFBMkE1QUQyMTZBNDg2MEEwMDk3NUEyNSAvKiBTcGVlY2hTeW50aGVzaXNFdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQUEyQTVBRDAxNkE0ODYwNDAwOTc1QTI1IC8qIFNwZWVjaFN5
bnRoZXNpc1V0dGVyYW5jZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQUEyQTVBQ0UxNkE0ODVGRDAw
OTc1QTI1IC8qIFNwZWVjaFN5bnRoZXNpc1ZvaWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNzhG
RTEzQzEyMzY2QjEwMDBBQ0U4RDAgLyogU3BlbGxDaGVja2VyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCOERCREI0RTEzMEIwRjhBMDBGNUNEQjEgLyogU3BlbGxpbmdDb3JyZWN0aW9uQ29tbWFuZC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDUxMjUwMjMxNURDRTM3RDAwMkY4NEUyIC8qIFNwaW5CdXR0
b25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzMwOUUxMjA5OUU2NDkyMDA1NkU1ODEg
LyogU3BsaXRFbGVtZW50Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMzMDlFMTQwOTlF
NjQ5MjAwNTZFNTgxIC8qIFNwbGl0VGV4dE5vZGVDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk5MzMwOUUxNjA5OUU2NDkyMDA1NkU1ODEgLyogU3BsaXRUZXh0Tm9kZUNvbnRhaW5pbmdFbGVt
ZW50Q29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ3MzBEOTMxMjQ4RjBCMzAwRDNBOUM5
IC8qIFNwb3RMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M4M0RFODYxRDA0Q0M1
RDAwRkVCQ0YzIC8qIFNwcmluZ1NvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCQzZBM0Ix
NTA1RjA4MTAwMUI3NEFDIC8qIFNRTENhbGxiYWNrV3JhcHBlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTdCQzZBM0MxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTEVycm9yLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxQTIyNDY0QTBDQzk4RERCMDBDMDUyNDAgLyogU1FMaXRlRGF0YWJhc2UuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdFNDc0RTFGMTI0OTREQzkwMDIzNTM2NCAvKiBTUUxpdGVEYXRhYmFzZVRy
YWNrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdFNDc0RTFFMTI0OTREQzkwMDIzNTM2NCAvKiBT
UUxpdGVEYXRhYmFzZVRyYWNrZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUI1QTY4NDIy
MEZGQUJFOTgwMEQyNDY4OSAvKiBTUUxpdGVGaWxlU3lzdGVtLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1MTJCREI0QjFDNDU2RkZBMDA2NDk0REYgLyogU1FMaXRlSURCQmFja2luZ1N0b3JlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1MTFFQzEzMDFDNTBBQkY1MDAzMkY5ODMgLyogU1FMaXRlSURCQ3Vy
c29yLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTFFQzEyQzFDNTBBQkJGMDAzMkY5ODMgLyogU1FM
aXRlSURCVHJhbnNhY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTFBMjI0NjRDMENDOThEREIw
MEMwNTI0MCAvKiBTUUxpdGVTdGF0ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUVCRTVCMjI2
MjQ1QTI2RUYwMDNBNUE4OCAvKiBTUUxpdGVTdGF0ZW1lbnRBdXRvUmVzZXRTY29wZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMUEyMjQ2NEUwQ0M5OEREQjAwQzA1MjQwIC8qIFNRTGl0ZVRyYW5zYWN0
aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0JDNkE0MjE1MDVGMDgxMDAxQjc0QUMgLyogU1FM
UmVzdWx0U2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0JDNkE0NTE1MDVGMDgxMDAxQjc0QUMg
LyogU1FMUmVzdWx0U2V0Um93TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkU4QTY3NDgxNkNE
RDE5RTAwOTMwQkY4IC8qIFNRTFN0YXRlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCQzZB
NDkxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFN0YXRlbWVudENhbGxiYWNrLmggaW4gSGVhZGVycyAq
LywKKwkJCQk5N0JDNkE0QjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMU3RhdGVtZW50RXJyb3JDYWxs
YmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdCQzZBNTAxNTA1RjA4MTAwMUI3NEFDIC8qIFNR
TFRyYW5zYWN0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRUUxODExNDE2QzMxOUU4MDAwODQ4
NDkgLyogU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0JDNkE1
MjE1MDVGMDgxMDAxQjc0QUMgLyogU1FMVHJhbnNhY3Rpb25DYWxsYmFjay5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTdCQzZBNTcxNTA1RjA4MTAwMUI3NEFDIC8qIFNRTFRyYW5zYWN0aW9uQ29vcmRp
bmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3QkM2QTU4MTUwNUYwODEwMDFCNzRBQyAvKiBT
UUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCUZFMzZGRDE4
MTZDNzgyNjUwMEY4ODdDMSAvKiBTUUxUcmFuc2FjdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGRTM2RkQxNzE2Qzc4MjY1MDBGODg3QzEgLyogU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hp
bmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBMkU2RTVBMENDNTUyMTMwMDRBMjA2MiAvKiBTUUxW
YWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGMTk5NjMwODI0NUU1OTAwMUU5QUJDIC8qIFNT
TEtleUdlbmVyYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjZCOTk5OTExODAzQjNDOTAwRDAx
MTIxIC8qIFN0YWNrQWxsb2NhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTBBOTIxMjI0RDVF
NjBFMDBCRkQ4OUMgLyogU3RhZGlhSElER2FtZXBhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM3
RkE2MkQwRDFGMEVGRjAwREIyMkE5IC8qIFN0YXRpY05vZGVMaXN0LmggaW4gSGVhZGVycyAqLywK
KwkJCQlGNDMzRTkwMzFEQkJEQkEyMDBFRjBEMTQgLyogU3RhdGljUGFzdGVib2FyZC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRjQ0RUJCRDkxREI1RDIxNDAwMjc3MzM0IC8qIFN0YXRpY1JhbmdlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlBNUFGQjM1MDExNTE1MUE3MDBCMDQ1Q0IgLyogU3RlcFJhbmdl
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFN0ZCRTdDMjI0RUIyRkIwMDBBMThFNjIgLyogU3RlcmVv
UGFubmVyTm9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTdGQkU3QzMyNEVCMkZCNjAwQTE4RTYy
IC8qIFN0ZXJlb1Bhbm5lck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQzJEODQ1MTcx
NzM0QTEwMDY1MkZDMCAvKiBTdG9yYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUJFMzdFMDBE
QUVFMDBFMDAxMDg1RkMgLyogU3RvcmFnZUFyZWEuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNEE1
MzM3MjU2MDVBRTEwMDI4QzU5MiAvKiBTdG9yYWdlQmxvY2tpbmdQb2xpY3kuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTkzMDg1REJEMjZFMThFRDkwMDBFQzZBNyAvKiBTdG9yYWdlQ29ubmVjdGlvbi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTFFMEJBQkIwREE1NTQ3MTAwQTlFNDE3IC8qIFN0b3JhZ2VF
dmVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQzVFQkREODQxMDVFRERFQzAwNTY4MTZGIC8qIFN0
b3JhZ2VFdmVudERpc3BhdGNoZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMDg1REI3MjZFMDJB
RkUwMDBFQzZBNyAvKiBTdG9yYWdlTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTM0NDNF
ODUyNkU5OTVCQjAwNTg1MzhGIC8qIFN0b3JhZ2VNYW5hZ2VyRmlsZVN5c3RlbUFjY2Vzcy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNTFFMEJCMzgwREE1QUNCNjAwQTlFNDE3IC8qIFN0b3JhZ2VNYXAu
aCBpbiBIZWFkZXJzICovLAorCQkJCUM1MEQwRTgzMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdl
TmFtZXNwYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQTM3NjM2QzFBMkU2OEJCMDA5QTdFRTIg
LyogU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzA4NURC
RTI2RTE4RUU0MDAwRUM2QTcgLyogU3RvcmFnZVByb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0MURFN0M3QzIyMkRBMTQzMDA1MzJCNjUgLyogU3RvcmFnZVF1b3RhTWFuYWdlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNUM5RUYyRjMyMUYwNjE5MDAwM0JEQzU2IC8qIFN0b3JhZ2VTZXNzaW9u
UHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNjZEM0NEMUU4RUQ0OEYwMEFENjJFMyAv
KiBTdG9yYWdlVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDY4MkQyMDAxRjc5NzgzMDAwQzg2
M0RCIC8qIFN0b3JlZENyZWRlbnRpYWxzUG9saWN5LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTZF
NkZFODFCQkQxMkRGMDAwQTYwMzMgLyogU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTdDNTI2Njk4MUYxQjAzMDIwMDBGMDY4QiAvKiBTdHJpbmdBZGFwdG9ycy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJODFBQzZDMzYxMzFDNTdEMzAwMDlBN0UwIC8qIFN0cmluZ0Nh
bGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjM1NDBGMzBEMDA3ODJFMDAyMzgyRkEgLyog
U3RyaW5nVHJ1bmNhdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlFQ0E2ODBDNzFFNjc3MjQ1MDA3
MzFEMjAgLyogU3RyaW5nVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk5QjZDNDE1MzEz
NDQ5NDkwMDAwODVCNjIgLyogU3RyaW5nV2l0aERpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDE0QjgyMDUxRDZERjBFNTAwNzdFQkUzIC8qIFN0cnVjdHVyZWRDbG9uZS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDZGRUZCQzgyNkRENjdBMjAwQjBDNDg4IC8qIFN0cnVjdHVyZWRTZXJpYWxp
emVPcHRpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MUU2N0E4MzI1RDE2ODQ3MDA3QjBBNEMg
LyogU1RVTk1lc3NhZ2VQYXJzaW5nLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTM5MjJCRTI1MThB
Qjc3MDA1REIzQzIgLyogU3R5bGVhYmxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDVCQTZCNjIz
NzYyMkEzMDA0REZDMDcgLyogU3R5bGVBZGp1c3Rlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM1
RUI2QTMwRTgxREM0RjAwQjI1OTY1IC8qIFN0eWxlQmFja2dyb3VuZERhdGEuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUJDNUVCNjdCMEU4MUQzQkUwMEIyNTk2NSAvKiBTdHlsZUJveERhdGEuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUU0QUJBQzA2MjM2QjAxNkQwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTgzQjk2ODdCMTlGOEFCODMwMDRFRjdBRiAvKiBTdHlsZUJ1
aWxkZXJDb252ZXJ0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzNUQzNjM3MTlGRjYxOTMwMDRD
OTNBQiAvKiBTdHlsZUJ1aWxkZXJDdXN0b20uaCBpbiBIZWFkZXJzICovLAorCQkJCUU0QUJBQzA0
MjM2QUU5NTkwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXJHZW5lcmF0ZWQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUU0QUJBQkYzMjM2OEI5NTkwMEZBNDM0NSAvKiBTdHlsZUJ1aWxkZXJTdGF0ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNFRjQ0NEQwRTY3NDYyODAwMUMxMjg3IC8qIFN0eWxlQ2FjaGVk
SW1hZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0MDFFMEE0MUMzQzBCODMwMEYzNEQxMCAvKiBT
dHlsZUNoYW5nZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTQxODI3OEIxRDhCMjQ0MDAwNDkyNzY0
IC8qIFN0eWxlQ29sb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTFDMEFBMTZEMjE5NDBEQzgwMDg5
NjgyOSAvKiBTdHlsZUNvbG9yU2NoZW1lLmggaW4gSGVhZGVycyAqLywKKwkJCQk5REFDN0M1NzFB
RjJDQjY0MDA0MzdDNDQgLyogU3R5bGVDb250ZW50QWxpZ25tZW50RGF0YS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM3NzlFMTcxQkIyMjdDQTAwQ0FBOEJGIC8qIFN0eWxlQ3VzdG9tUHJvcGVydHlE
YXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEM0QTdGRDA5RDU2MzI3MDAwM0FDOEQgLyogU3R5
bGVkRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkM1RUI4QjkwRTgyMDFCRDAwQjI1OTY1
IC8qIFN0eWxlRGVwcmVjYXRlZEZsZXhpYmxlQm94RGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTQ0MEZENTMyNUE0QUZERjAwRjdDODQ5IC8qIFN0eWxlZE1hcmtlZFRleHQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTMxOUFFMDY0MTQyRDZCMjQwMDY1NjNBMSAvKiBTdHlsZUZpbHRlckRhdGEuaCBp
biBIZWFkZXJzICovLAorCQkJCTUzMTc2MTIzMTNDNTE2NjkwMDI2RTQ1NCAvKiBTdHlsZUZsZXhp
YmxlQm94RGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTRENThFQjkxN0I0RUQ4OTAwQ0JEQ0E4
IC8qIFN0eWxlRm9udFNpemVGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDRUY0NDRB
MEU2NzQ1RTAwMDFDMTI4NyAvKiBTdHlsZUdlbmVyYXRlZEltYWdlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBMTBEQzc2QjE0NzQ3QkFCMDA1RTI0NzEgLyogU3R5bGVHcmlkRGF0YS5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTExMERCOUIxNEY1REY3NzAwQTAzQjkzIC8qIFN0eWxlR3JpZEl0ZW1EYXRh
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0VGNDNDRjBFNjczREExMDAxQzEyODcgLyogU3R5bGVJ
bWFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMyMjczMDQwRTgyRjFFNjAwRTdGOTc1IC8qIFN0
eWxlSW5oZXJpdGVkRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ2Qzc5NEIxRjEzRTgyQjAw
RjM3MUUxIC8qIFN0eWxlSW52YWxpZGF0aW9uRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlFNDcxMjdDQjE2MzQzOEFFMDBFRDZGNUEgLyogU3R5bGVJbnZhbGlkYXRvci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQkM1RUI3MkEwRTgxREU4MTAwQjI1OTY1IC8qIFN0eWxlTWFycXVlZURhdGEu
aCBpbiBIZWFkZXJzICovLAorCQkJCTBGRjUwMjcyMTAyQkE5NkEwMDY2RjM5QSAvKiBTdHlsZU1l
ZGlhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVFQjc0RTBFODFFMDY3MDBCMjU5NjUgLyogU3R5
bGVNdWx0aUNvbERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0REFDRTZBMUQxMkUxMEIwMDc1
OTgwRiAvKiBTdHlsZVBlbmRpbmdSZXNvdXJjZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4MEU2
REZDMEExOTkwNjcwMDdGQjhDNSAvKiBTdHlsZVByb3BlcnRpZXMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTRCRDc4MUJGMjFDMTk2NUYwMEQ5NzAzRSAvKiBTdHlsZVByb3BlcnR5TWFwLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0QkFGRDBDRjIxOTBGOUI1MDBDMEFCNjQgLyogU3R5bGVQcm9wZXJ0eU1h
cFJlYWRPbmx5LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUIyNTEwNzE1MkEwQkIwMDA2OUI3Nzkg
LyogU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODNDMDVBNUIx
QTY4NjIxMjAwN0U1REVBIC8qIFN0eWxlUHJvcGVydHlTaG9ydGhhbmRGdW5jdGlvbnMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUJDMjI3MkU0MEU4MkVFOUIwMEU3Rjk3NSAvKiBTdHlsZVJhcmVJbmhl
cml0ZWREYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzIyNzJCRDBFODJFQUFFMDBFN0Y5NzUg
LyogU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMyMjcy
ODcwRTgyRTcwNzAwRTdGOTc1IC8qIFN0eWxlUmVmbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTQ2MTgwMkQxQzhERDI5MDAwMjZDMDJDIC8qIFN0eWxlUmVsYXRpb25zLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlFNEQ1OEVCNTE3QjREQkRDMDBDQkRDQTggLyogU3R5bGVSZXNvbHZlRm9yRG9j
dW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0RDY4RUI1MTdCNERCREMwMENCRENBOCAvKiBT
dHlsZVJlc29sdmVGb3JGb250UmF3LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTM5ODY2NDE1NDc4
NDc0MDAxRTNGNjUgLyogU3R5bGVSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTRCQkVE
NEQxNEZDREJBMTAwM0YwQjk4IC8qIFN0eWxlUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ5
NDZFQUYxNTZFNjRERDAwRDMyOTdGIC8qIFN0eWxlUnVsZUltcG9ydC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMEY5NEYzN0UyMzY2MTYyNjAwM0FBNUM3IC8qIFN0eWxlUnVsZVR5cGUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUU0NjFENjVGMUJCMEM4MEQwMENCNTY0NSAvKiBTdHlsZVNjb3BlLmggaW4g
SGVhZGVycyAqLywKKwkJCQlFNEQ4NkU2RDI2NDAzOTRDMDBCNjI0MjUgLyogU3R5bGVTY29wZU9y
ZGluYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTRBNEY0OEFBMTZCMERGQzAwMEVEQkIyOSAvKiBT
dHlsZVNjb3BlUnVsZVNldHMuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0N0E1RTNFMTk1QjhDOEEw
MDQ4MzEwMCAvKiBTdHlsZVNjcm9sbFNuYXBQb2ludHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTlE
NjM4MDEwMUFGMTczMjIwMDMxQTE1QyAvKiBTdHlsZVNlbGZBbGlnbm1lbnREYXRhLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFNDdBM0FDNjFDNUVBQzlEMDBDQ0JGQTcgLyogU3R5bGVTaGFyaW5nUmVz
b2x2ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4RUE4MDBDMEExOTUxNkUwMEE4RUY1RiAvKiBT
dHlsZVNoZWV0LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEY5RUVGMzE1NkRBMDA3MDBEMjNFN0Ug
LyogU3R5bGVTaGVldENvbnRlbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOEVBODAwQTBBMTk1
MTZFMDBBOEVGNUYgLyogU3R5bGVTaGVldExpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNUVC
NUU1MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTRERUFBMTgxN0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJl
c29sdmVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDJFNzZEQzFDN0FGNzc2MDBFMzYxNEQgLyog
U3R5bGVVcGRhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0ODEzN0I5MURCM0I1MjYwMDVDNTlC
RiAvKiBTdHlsZVZhbGlkaXR5LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzVFQjY5QTBFODFEQTYz
MDBCMjU5NjUgLyogU3R5bGVWaXN1YWxEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlEMDAwRUQy
ODExQzFCOUNEMDBDNDc3MjYgLyogU3ViZnJhbWVMb2FkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTFGQzQwRkJBMTY1NUNDQjkwMDQwRjI5RSAvKiBTdWJpbWFnZUNhY2hlV2l0aFRpbWVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0NkQwMDA0MDI2QTBGRUIzMDBEMUJGMUUgLyogU3VibWl0RXZlbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUY1NUIzREQ0MTI1MUYxMkQwMDNFRjI2OSAvKiBTdWJtaXRJ
bnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1NkQzNzQ4MEFEQkE1REUwMEE0NTU0RCAv
KiBTdWJyZXNvdXJjZUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjU5QTdEMTMwQjZEQjRE
OTAwMTE1NUIzIC8qIFN1YnN0aXR1dGVEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQThGNkIw
MjBEQjUzMDA2MDAxREI3OTQgLyogU3Vic3RpdHV0ZVJlc291cmNlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk1Nzc4QkQ4MjFEQTQ4MDZDMDA5RTMwMDkgLyogU3VidGxlQ3J5cHRvLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5M0IyRDgxNjBGOTkyMEQyMDA2QUU2QjIgLyogU3VkZGVuVGVybWluYXRpb24u
aCBpbiBIZWFkZXJzICovLAorCQkJCTk3QzA3ODUwMTE2NUQ1QkUwMDNBMzJFRiAvKiBTdWZmaXhU
cmVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzYyN0I5ODE0RkI1NDI0MDAyQ0RDQTEgLyogU3Vw
cGxlbWVudGFibGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTYyQzEyMTdEMTFBQjlFNzcwMDNDNDYy
QyAvKiBTdXNwZW5kYWJsZVRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzk3NDBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHQUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTI0RDkxMkIx
MTNDQTlBMUYwMEQyMTkxNSAvKiBTVkdBbHRHbHlwaERlZkVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTY1NjUzRjJFMEQ5NzI3RDIwMENBOTcyMyAvKiBTVkdBbHRHbHlwaEVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTI0RDkxMkI4MTNDQTlBNjkwMEQyMTkxNSAvKiBTVkdBbHRHbHlw
aEl0ZW1FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzk3NzBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHQW5nbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OTdBMEQwMEJGMjIwMDcx
Qjc4MiAvKiBTVkdBbmltYXRlQ29sb3JFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIy
Nzk5MDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHQW5pbWF0ZUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTgzMkI4NDM0MTlEOEU1NTEwMEIyNjA1NSAvKiBTVkdBbmltYXRlRWxlbWVudEJhc2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OTkzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdBbmlt
YXRlTW90aW9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5OTUwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR0FuaW1hdGVUcmFuc2Zvcm1FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMjIyNzk5ODBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHQW5pbWF0aW9uRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjIyMjc5OUMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0NpcmNsZUVsZW1l
bnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OTlGMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdD
bGlwUGF0aEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OUE1MEQwMEJGMjIwMDcx
Qjc4MiAvKiBTVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQjIyMjc5QTgwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0N1cnNvckVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUIyMjI3OUFFMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdEZWZzRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5QjEwRDAwQkYyMjAwNzFCNzgyIC8qIFNW
R0Rlc2NFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzlCNDBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyOEM2QTI4MEQwMEM0NDgw
MDMzNEFBNCAvKiBTVkdEb2N1bWVudEV4dGVuc2lvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
MjI3OUI3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk2NTY1ODFGRTA5RDE1MDhEMDAwRTYxRDcgLyogU1ZHRWxlbWVudEZhY3RvcnkuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTA4MUFBOERBMTExMTIzN0UwMDJBQjA2RSAvKiBTVkdFbGVtZW50UmFyZURh
dGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUI1NjJEQjYxMTdEM0NENjYwMDEwQUY5NiAvKiBTVkdF
bGVtZW50VHlwZUhlbHBlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OUMwMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdFbGxpcHNlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5
QzgwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFQmxlbmRFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMjIyNzlDQjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVDb2xvck1hdHJpeEVsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OUNFMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRUNv
bXBvbmVudFRyYW5zZmVyRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5RDEwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR0ZFQ29tcG9zaXRlRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMTkyMTMyNzUxMUMwRTZCQjAwNDU2MjM4IC8qIFNWR0ZFQ29udm9sdmVNYXRyaXhFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzlENDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVE
aWZmdXNlTGlnaHRpbmdFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzlENzBEMDBC
RjIyMDA3MUI3ODIgLyogU1ZHRkVEaXNwbGFjZW1lbnRNYXBFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMjIyNzlEQTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVEaXN0YW50TGlnaHRFbGVt
ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MzU4RTg4NjEzNjBBMzNCMDBFNDc0OEMgLyogU1ZH
RkVEcm9wU2hhZG93RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5REQwRDAwQkYy
MjAwNzFCNzgyIC8qIFNWR0ZFRmxvb2RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIy
NzlFMDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVGdW5jQUVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUIyMjI3OUUzMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRUZ1bmNCRWxlbWVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5RTYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFRnVuY0dF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzlFOTBEMDBCRjIyMDA3MUI3ODIgLyog
U1ZHRkVGdW5jUkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3OUVDMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdGRUdhdXNzaWFuQmx1ckVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUIyNTU5OTg1MEQwMEQ4QkEwMEJCODI1QyAvKiBTVkdGRUltYWdlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMjIyNzlFRjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVJbWFnZUVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyMjI3OUYyMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdGRUxpZ2h0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5RjQwRDAwQkYyMjAwNzFCNzgyIC8qIFNW
R0ZFTWVyZ2VFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyNzlGNzBEMDBCRjIyMDA3
MUI3ODIgLyogU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDIy
NDE5NDEwN0U3OEE3MDA3NjZBODcgLyogU1ZHRkVNb3JwaG9sb2d5RWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjIyMjc5RkEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZFT2Zmc2V0RWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjc5RkQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZF
UG9pbnRMaWdodEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QTAwMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlCMjIyN0EwMzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVTcG90TGlnaHRFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0EwNjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRkVUaWxl
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBMDkwRDAwQkYyMjAwNzFCNzgyIC8q
IFNWR0ZFVHVyYnVsZW5jZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0NUU3MkZDMEZE
MjYyMzkwMEE4N0Q3OSAvKiBTVkdGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTA4MUVCRjNC
MEZEMzRGNDEwMERBNzU1OSAvKiBTVkdGaWx0ZXJCdWlsZGVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMjIyN0EwQzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRmlsdGVyRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQjIyMjdBMEYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZpbHRlclByaW1pdGl2
ZVN0YW5kYXJkQXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBMTIwRDAwQkYy
MjAwNzFCNzgyIC8qIFNWR0ZpdFRvVmlld0JveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJBMUYy
QUIwQ0VGMEFCRjAwNDQyRjZBIC8qIFNWR0ZvbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMjIyN0ExNTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlCMjIyN0ExODBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHRm9udEZhY2VGb3Jt
YXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0ExQjBEMDBCRjIyMDA3MUI3ODIg
LyogU1ZHRm9udEZhY2VOYW1lRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBMUUw
RDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlU3JjRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjIyMjdBMjEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZvbnRGYWNlVXJpRWxlbWVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBMjQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR0ZvcmVp
Z25PYmplY3RFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0EyNzBEMDBCRjIyMDA3
MUI3ODIgLyogU1ZHR0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZCMjczRTgyMjA4NkU2
QzcwMEE1NEU4NyAvKiBTVkdHZW9tZXRyeUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
QTFGMkFFMENFRjBBQkYwMDQ0MkY2QSAvKiBTVkdHbHlwaEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTI0RDkxMkJFMTNDQTlBOTcwMEQyMTkxNSAvKiBTVkdHbHlwaFJlZkVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUIyMjI3QTJBMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdHcmFkaWVu
dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUI2MEQwMEJGMjIwMDcxQjc4MiAv
KiBTVkdHcmFwaGljc0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTY1MEZCRjJCMEQ5QUYw
NDcwMDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyNTU5
OUE0MEQwMEQ4QkEwMEJCODI1QyAvKiBTVkdJbWFnZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDhG
ODU5RDUxNDYzRjlDRDAwNjdEOTMzIC8qIFNWR0ltYWdlQ2FjaGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyMjI3QTJEMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdJbWFnZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTA4Rjg1OUQ1MTQ2M0Y5Q0QwMDY3RDkzNCAvKiBTVkdJbWFnZUZvckNvbnRh
aW5lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjI4QzZBMkEwRDAwQzQ0ODAwMzM0QUE0IC8qIFNW
R0ltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkwODU0QjAxRjEyNTVFNEU2MDBCOUNE
RDAgLyogU1ZHSW5saW5lRmxvd0JveC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg1NEIwMjExMjU1
RTRFNjAwQjlDREQwIC8qIFNWR0lubGluZVRleHRCb3guaCBpbiBIZWFkZXJzICovLAorCQkJCTcx
MzQ0OTZFMTQ2OTQxQjMwMDcyMDMxMiAvKiBTVkdMZW5ndGhDb250ZXh0LmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMjIyN0EzNjBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHTGVuZ3RoTGlzdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJN0NDRUJGQzAxREQ4RjZBQjAwMkM0MEI4IC8qIFNWR0xlbmd0aFZhbHVl
LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0EzOTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHTGlu
ZWFyR3JhZGllbnRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0EzQzBEMDBCRjIy
MDA3MUI3ODIgLyogU1ZHTGluZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTU1RENDNTI5
MjI0MDdCMkEwMEMyNkUzMiAvKiBTVkdMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0E0
MTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHTG9jYXRhYmxlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
MzY3MDhFRTEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHTWFya2VyRGF0YS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjIyMjdBNDQwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR01hcmtlckVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyMjI3QTQ3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdNYXNrRWxlbWVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDgwNkU1N0ExMjg5MzA0NTAwN0NFRDMyIC8qIFNWR01h
dHJpeC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBNEIwRDAwQkYyMjAwNzFCNzgyIC8qIFNW
R01ldGFkYXRhRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJBMUYyQjEwQ0VGMEFCRjAw
NDQyRjZBIC8qIFNWR01pc3NpbmdHbHlwaEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIy
MjI3QTRFMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdNUGF0aEVsZW1lbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTdDRTU4RDUwMURENjlBMUUwMDEyODU1MiAvKiBTVkdOdW1iZXIuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUIyMjI3QTUxMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdOdW1iZXJMaXN0LmggaW4g
SGVhZGVycyAqLywKKwkJCQlCMjIyN0E1NzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUGFyc2VyVXRp
bGl0aWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDNBMEUzNjEzQTdENzYxMDBFODVBRjAgLyog
U1ZHUGFyc2luZ0Vycm9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk4NEM2Nzg0RDEyMTQ4MTQ3MDBB
OTI5MDIgLyogU1ZHUGF0aEJsZW5kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0NzZDOUVCMTFE
RjZBMjkwMDU1NUIwMiAvKiBTVkdQYXRoQnVpbGRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQx
OUQyQTcxMjBEOTJEMDAwMTQxRjhGIC8qIFNWR1BhdGhCeXRlU3RyZWFtLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4NDE5RDJBOTEyMEQ5MkQwMDAxNDFGOEYgLyogU1ZHUGF0aEJ5dGVTdHJlYW1CdWls
ZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk4NDE5RDJBRDEyMEQ5MkZDMDAxNDFGOEYgLyogU1ZH
UGF0aEJ5dGVTdHJlYW1Tb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTg0NzZDOUVDMTFERjZB
MjkwMDU1NUIwMiAvKiBTVkdQYXRoQ29uc3VtZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxNTM3
QTAxMTQ2QkQ5RDcwMDhCRDYxNSAvKiBTVkdQYXRoRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QjIyMjdBNTkwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BhdGhFbGVtZW50LmggaW4gSGVhZGVycyAq
LywKKwkJCQk4NDc2QzlGMDExREY2QTU4MDA1NTVCMDIgLyogU1ZHUGF0aFBhcnNlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjIyMjdBNUIwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BhdGhTZWcuaCBp
biBIZWFkZXJzICovLAorCQkJCUIyMjI3QTgxMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQYXRoU2Vn
TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ3NkM5RTYxMURGNkEwQjAwNTU1QjAyIC8qIFNW
R1BhdGhTZWdMaXN0QnVpbGRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJODRCNkI5NzgxMjBGMTNF
NTAwQjhFRkFGIC8qIFNWR1BhdGhTZWdMaXN0U291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk4
NDMwMEJEODEyMEM5QUQ0MDAyMTk1NEEgLyogU1ZHUGF0aFNvdXJjZS5oIGluIEhlYWRlcnMgKi8s
CisJCQkJODQxOUQyQkExMjBFMEM3NjAwMTQxRjhGIC8qIFNWR1BhdGhTdHJpbmdCdWlsZGVyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk4NDMwMEJENjEyMEM5QUFDMDAyMTk1NEEgLyogU1ZHUGF0aFN0
cmluZ1NvdXJjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODRDNUIyRkIxMjE2REM4MTAwODhCNTNB
IC8qIFNWR1BhdGhUcmF2ZXJzYWxTdGF0ZUJ1aWxkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTcx
QTU3REYyMTU0QkUyNUMwMDA5RDEyMCAvKiBTVkdQYXRoVXRpbGl0aWVzLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMjIyN0E4ODBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUGF0dGVybkVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTdDRTU4RDRBMURENjRBNUIwMDEyODU1MiAvKiBTVkdQb2ludC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBOEMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1BvaW50
TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBOEYwRDAwQkYyMjAwNzFCNzgyIC8qIFNW
R1BvbHlFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0E5MTBEMDBCRjIyMDA3MUI3
ODIgLyogU1ZHUG9seWdvbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QTk0MEQw
MEJGMjIwMDcxQjc4MiAvKiBTVkdQb2x5bGluZUVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUIyMjI3QTk3MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdQcmVzZXJ2ZUFzcGVjdFJhdGlvLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1NURDQzUyODIyNDA3QjIwMDBDMjZFMzIgLyogU1ZHUHJpbWl0aXZl
TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNzIxNDQzMzMyMjNFQzhCMDAwRjEyRkY3IC8qIFNW
R1Byb3BlcnR5LmggaW4gSGVhZGVycyAqLywKKwkJCQk3MjE0NDMzNDIyM0VDOTE2MDBGMTJGRjcg
LyogU1ZHUHJvcGVydHlPd25lci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg4QTBFMEMxMjZFRjFE
QjAwOTc4RjdBIC8qIFNWR1Byb3BlcnR5VHJhaXRzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIy
N0E5QTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHUmFkaWFsR3JhZGllbnRFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwOEVERTE5RjEyQTUwQjhFMDBCOTU3OTcgLyogU1ZHUmVjdC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjIyMjdBOUUwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1JlY3RFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKKwkJCQkxOTdCMTgwQzE1MDYzNTMyMDBFNEFEQTggLyogU1ZHUmVu
ZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBQTAwRDAwQkYyMjAwNzFC
NzgyIC8qIFNWR1JlbmRlcmluZ0ludGVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMyMjc0Nzkw
RTgzNjZFMjAwRTdGOTc1IC8qIFNWR1JlbmRlclN0eWxlLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
QzIyNzQ3QjBFODM2NkUyMDBFN0Y5NzUgLyogU1ZHUmVuZGVyU3R5bGVEZWZzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQk0MzY3MDhGMjEyRDlDQTRCMDAwNDQyMzQgLyogU1ZHUmVuZGVyU3VwcG9ydC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDM2NzA4RjQxMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1JlbmRl
clRyZWVBc1RleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzNjcwOEY2MTJEOUNBNEIwMDA0NDIz
NCAvKiBTVkdSZXNvdXJjZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQzNjcwOEY4MTJEOUNBNEIw
MDA0NDIzNCAvKiBTVkdSZXNvdXJjZXNDYWNoZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDM2NzA4
RkExMkQ5Q0E0QjAwMDQ0MjM0IC8qIFNWR1Jlc291cmNlc0N5Y2xlU29sdmVyLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwODU0QjAyMzEyNTVFNEU2MDBCOUNERDAgLyogU1ZHUm9vdElubGluZUJveC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBQTMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1Njcmlw
dEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUE2MEQwMEJGMjIwMDcxQjc4MiAv
KiBTVkdTZXRFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEFGRDAxMDBEQUYzMzU1MDBG
NUY1NUMgLyogU1ZHU01JTEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUE5MEQw
MEJGMjIwMDcxQjc4MiAvKiBTVkdTdG9wRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIy
MjdBQUMwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1N0cmluZ0xpc3QuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyMjI3QUI4MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdTdHlsZUVsZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUIyMjI3QUJCMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdTVkdFbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0FCRTBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHU3dpdGNo
RWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBQzEwRDAwQkYyMjAwNzFCNzgyIC8q
IFNWR1N5bWJvbEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUM1MEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdUZXN0cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDhGMEJGQzMxMjU1QzUz
QzAwMDc1MTg1IC8qIFNWR1RleHRDaHVuay5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDgxNjY4RDQx
MjU2MDNCRjAwNkYyNURFIC8qIFNWR1RleHRDaHVua0J1aWxkZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyMjI3QUM4MEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUZXh0Q29udGVudEVsZW1lbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCUIyMjI3QUNCMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUZXh0RWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDhGMEJGQzQxMjU1QzUzQzAwMDc1MTg1IC8qIFNW
R1RleHRGcmFnbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDg4QzJGN0ExMjM5MDA4MTAwM0Q2
NUNFIC8qIFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQkwODEw
OTNEQzEyNTVGMEU3MDBFRDlEMjkgLyogU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwODE2NjhEQTEyNTYwM0Q1MDA2RjI1REUgLyogU1ZHVGV4dExh
eW91dEVuZ2luZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDgwRTQ5MjYxMjU1RjNCRDAwRUZDQTI3
IC8qIFNWR1RleHRMYXlvdXRFbmdpbmVCYXNlbGluZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDgw
RTQ5MjgxMjU1RjNCRDAwRUZDQTI3IC8qIFNWR1RleHRMYXlvdXRFbmdpbmVTcGFjaW5nLmggaW4g
SGVhZGVycyAqLywKKwkJCQkwOEYwQkZDNjEyNTVDNTNDMDAwNzUxODUgLyogU1ZHVGV4dE1ldHJp
Y3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTcxMTc0NDU5MTRCQzM0RUMwMEVFNUZDOCAvKiBTVkdU
ZXh0TWV0cmljc0J1aWxkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUNFMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdUZXh0UGF0aEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3
QUQxMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwODU0QjAyNTEyNTVFNEU2MDBCOUNERDAgLyogU1ZHVGV4dFF1ZXJ5Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0FENDBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHVGl0bGVF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQ0NERjVCRTE5OTAzMzI0MDBCQ0VCQUQgLyog
U1ZHVG9PVEZGb250Q29udmVyc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBRDcwRDAw
QkYyMjAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdB
REEwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1RyYW5zZm9ybWFibGUuaCBpbiBIZWFkZXJzICovLAor
CQkJCUIyMjI3QUREMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdUcmFuc2Zvcm1EaXN0YW5jZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBREYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1RyYW5zZm9y
bUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDRTU4RDU4MUREN0Q5NkQwMDEyODU1MiAvKiBT
VkdUcmFuc2Zvcm1WYWx1ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIyMjdBRTIwRDAwQkYyMjAw
NzFCNzgyIC8qIFNWR1RSZWZFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0FFNTBE
MDBCRjIyMDA3MUI3ODIgLyogU1ZHVFNwYW5FbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlC
MjIyN0FFNzBEMDBCRjIyMDA3MUI3ODIgLyogU1ZHVW5pdFR5cGVzLmggaW4gSGVhZGVycyAqLywK
KwkJCQkzN0M3MzhFRDFFREJENUJDMDAzRjJCMEIgLyogU1ZHVW5rbm93bkVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUIyMjI3QUVBMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdVUklSZWZlcmVu
Y2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUVEMEQwMEJGMjIwMDcxQjc4MiAvKiBTVkdV
c2VFbGVtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMjIyN0FGMDBEMDBCRjIyMDA3MUI3ODIg
LyogU1ZHVmlld0VsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyMjI3QUYzMEQwMEJGMjIw
MDcxQjc4MiAvKiBTVkdWaWV3U3BlYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODQ4NTIyOEIxMTkw
MTczQzAwNkVEQzdGIC8qIFNWR1ZLZXJuRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjIy
MjdBRjYwRDAwQkYyMjAwNzFCNzgyIC8qIFNWR1pvb21BbmRQYW4uaCBpbiBIZWFkZXJzICovLAor
CQkJCTU1RkE3RkZCMjExMEVDRDcwMDVBRUZFNyAvKiBTVkdab29tQW5kUGFuVHlwZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjJFNEVDOTgwRDAwQzIyQjAwNDMyNjQzIC8qIFNWR1pvb21FdmVudC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDZFQ0I2MzgxRkQwQTNDODAwODhFNUFEIC8qIFNXQ2xpZW50
Q29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDY2NThEQzkxRkEyNEI4NzAwRjdERDU0
IC8qIFNXQ29udGV4dE1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUMxMUE5RUNFMjE0MDNB
NUMwMENGQjIwQSAvKiBTd2l0Y2hpbmdHUFVDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQx
NTFFNUJCMUZCQTRDN0EwMEU0N0UyRCAvKiBTV09yaWdpblN0b3JlLmggaW4gSGVhZGVycyAqLywK
KwkJCQk0NjI3M0NBRjI2MEU1OUVGMDA2RkFBOTEgLyogU1dTY3JpcHRTdG9yYWdlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1MTdBNTJGMDFGNDc1MzVCMDBEQ0RDMEEgLyogU1dTZXJ2ZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTgzMTFDMDAzMUZBQTJFOTUwMEUzQzhFNSAvKiBTV1NlcnZlckpvYlF1
ZXVlLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MUY2NDU5NzFGNEE2ODZGMDBCNTRERUQgLyogU1dT
ZXJ2ZXJSZWdpc3RyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTUxODU0MzBCMUZCNjc4NDUw
MDQ3OEY5NSAvKiBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovLAor
CQkJCTUxN0E1MzQ2MUY1MEMxN0YwMERDREMwQSAvKiBTV1NlcnZlcldvcmtlci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVy
Q2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlDMTY5MkRENTIzRDIzRTA4MDA2RTg4RjcgLyog
U3lzdGVtQmF0dGVyeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTRFOEI0RUMyMTZCNzlFNTAwQjg4
MzREIC8qIFN5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmggaW4gSGVhZGVycyAqLywKKwkJCQkw
RjAzQzA3NDE4ODQ2OTVFMDBBNUY4Q0EgLyogU3lzdGVtTWVtb3J5LmggaW4gSGVhZGVycyAqLywK
KwkJCQlFM0MwNDEzODI1NENCMzBEMDAyMUQwRTYgLyogU3lzdGVtU291bmREZWxlZ2F0ZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRTNDMDQxMkYyNTRDQTI5QjAwMjFEMEU2IC8qIFN5c3RlbVNvdW5k
TWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUQ1OTc1QjMxOTYzNUYxMTAwRDAwODc4IC8q
IFN5c3RlbVZlcnNpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTZGMUU4M0EyMjY2NTg4NEMwMDJF
OUQyOCAvKiBUYWJsZUZvcm1hdHRpbmdDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDdGQTk3MDAyNjUwOTgyQjAwODQxNDE2IC8qIFRhYmxlRm9ybWF0dGluZ0dlb21ldHJ5LmggaW4g
SGVhZGVycyAqLywKKwkJCQk2RjQ5QzNFNzI2NDc5QjNDMDA1MTk1M0QgLyogVGFibGVGb3JtYXR0
aW5nUXVpcmtzLmggaW4gSGVhZGVycyAqLywKKwkJCQlBOENGRjA1MTBBMTU0RjA5MDAwQTQyMzQg
LyogVGFibGVMYXlvdXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGMTcyNjRGMjQ3MEM2MEIwMDUx
OEM5NiAvKiBUYWJsZVdyYXBwZXJCbG9ja0Zvcm1hdHRpbmdDb250ZXh0LmggaW4gSGVhZGVycyAq
LywKKwkJCQk2RjE1NTIyMTI2NDc2QjVDMDBFMzUzQzYgLyogVGFibGVXcmFwcGVyQmxvY2tGb3Jt
YXR0aW5nUXVpcmtzLmggaW4gSGVhZGVycyAqLywKKwkJCQkzQkI2QjgxMTIyQTdEMzEzMDAzQTJB
NjkgLyogVGFiU2l6ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDYzRUI2MjMxQjg3ODlFMDAwOTZF
RDUxIC8qIFRhZ0NvbGxlY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTlCMEFCQ0FFMjM2QkI0
MzEwMEI0NTA4NSAvKiBUYXNrU291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0RENjEy
NTFGMTJEMDAzRUYyNjkgLyogVGVsZXBob25lSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk3Q0M1NjRCODE4QkFCRUE2MDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3IuaCBp
biBIZWFkZXJzICovLAorCQkJCUM2NTA0NkE5MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1wbGF0ZUNv
bnRlbnREb2N1bWVudEZyYWdtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk2RTcyRjU1MTIyOURD
RDFBMDBCM0UxNTEgLyogVGVtcG9yYXJ5QU5HTEVTZXR0aW5nLmggaW4gSGVhZGVycyAqLywKKwkJ
CQkyNkU5NDRERDFBQzRCNEVBMDA3Qjg1QjUgLyogVGVybS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NjU1MEI2QTYwOTlERjAyNzAwOTBENzgxIC8qIFRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
MzA5RTE3MDk5RTY0OTIwMDU2RTU4MSAvKiBUZXh0QWZmaW5pdHkuaCBpbiBIZWFkZXJzICovLAor
CQkJCUNFN0IyREI1MTU4NkFCQUQwMDk4QjNGQSAvKiBUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCTBGNTREQ0U2MTg4MTA1MUQwMDNFRURCQiAvKiBUZXh0QXV0
b1NpemluZy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RBMzQwRDAwNkMxRDAwRUY2RjI2IC8q
IFRleHRCb3VuZGFyaWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDQwREY1NjI2RUI1M0UwMDA0
QUYwNkIgLyogVGV4dEJveFBhaW50ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NDdGNUIzMjY2
Q0Y2M0QwMDEzM0YwMCAvKiBUZXh0Qm94U2VsZWN0YWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBNzE1MUJEODEyRjE1NThGMDA1QTBGNjQgLyogVGV4dENoZWNrZXJDbGllbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUE3N0QwMDEyMTMzQjBBRUIwMEQ2NjU4QyAvKiBUZXh0Q2hlY2tpbmcu
aCBpbiBIZWFkZXJzICovLAorCQkJCUE3REJGOERFMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hl
Y2tpbmdIZWxwZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNEQTNBMEQwMDZDMUQwMEVGNkYy
NiAvKiBUZXh0Q29kZWMuaCBpbiBIZWFkZXJzICovLAorCQkJCTI2RTk4QTEwMTMwQTlGQ0EwMDhF
QjdCMiAvKiBUZXh0Q29kZWNBU0NJSUZhc3RQYXRoLmggaW4gSGVhZGVycyAqLywKKwkJCQlERjk1
QjE0QTI0RkRBRkQzMDBCMUY0RDcgLyogVGV4dENvZGVjQ0pLLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlCMkMzREEzQzBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjSUNVLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCMkMzREEzRTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dENvZGVjTGF0aW4xLmggaW4g
SGVhZGVycyAqLywKKwkJCQk1N0VGNUU2MDFEMjBDODM5MDAxNzFFNjAgLyogVGV4dENvZGVjUmVw
bGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNEQTQwMEQwMDZDMUQwMEVGNkYyNiAv
KiBUZXh0Q29kZWNVc2VyRGVmaW5lZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQjJDM0RBNDIwRDAw
NkMxRDAwRUY2RjI2IC8qIFRleHRDb2RlY1VURjE2LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzQz
Q0I4MjEyRjI1RTUxMDAzM0M1RUUgLyogVGV4dENvZGVjVVRGOC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMTQyQjk3Q0ExMzEzODk0MzAwOEJFRjRCIC8qIFRleHRDb250cm9sSW5uZXJFbGVtZW50cy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNTgyREUzMjUxQzMwQzg1NDAwQkUwMkE4IC8qIFRleHREZWNv
cmF0aW9uUGFpbnRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUM3M0E3MTUyMTg1NzU4NzAwNEND
RUE1IC8qIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzLmggaW4gSGVhZGVycyAqLywKKwkJCQlCQzRB
NTMzQjI1NjA2NEUxMDAyOEM1OTIgLyogVGV4dERpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQkM0QTUzMjUyNTYwNTU1RjAwMjhDNTkyIC8qIFRleHREaXJlY3Rpb25TdWJtZW51SW5jbHVz
aW9uQmVoYXZpb3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3QkM4NEI0MTIzNzExODAwMDBDNjE2
MSAvKiBUZXh0RG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3QkM4NDg0MTIzNkZEOTMw
MDBDNjE2MSAvKiBUZXh0RG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUIyQzNE
QTQ3MEQwMDZDMUQwMEVGNkYyNiAvKiBUZXh0RW5jb2RpbmcuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUMxMDVEQTY0MEYzQUE2QjgwMDFERDQ0RiAvKiBUZXh0RW5jb2RpbmdEZXRlY3Rvci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQjJDM0RBNDkwRDAwNkMxRDAwRUY2RjI2IC8qIFRleHRFbmNvZGluZ1Jl
Z2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MzNBMTQzMDBCN0QxODg2MDBBNTNGRkQgLyog
VGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlBNzdCNDFBMDEyRTY3NUE5MDA1NDM0M0Qg
LyogVGV4dEV2ZW50SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0REODEyNTFG
MTJEMDAzRUYyNjkgLyogVGV4dEZpZWxkSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlC
MkMzREE0NTBEMDA2QzFEMDBFRjZGMjYgLyogVGV4dEZsYWdzLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk5MzMwOUUxODA5OUU2NDkyMDA1NkU1ODEgLyogVGV4dEdyYW51bGFyaXR5LmggaW4gSGVhZGVy
cyAqLywKKwkJCQkyRDRGOTZGNjFBMUVDQzI0MDA5OEJGODggLyogVGV4dEluZGljYXRvci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMkQ0Rjk2RjcxQTFFQ0MyNDAwOThCRjg4IC8qIFRleHRJbmRpY2F0
b3JXaW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCUY1NUIzRERBMTI1MUYxMkQwMDNFRjI2OSAv
KiBUZXh0SW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRUNBREZDRTE1Mzc3OTFEMDBF
MzcwNjggLyogVGV4dEluc2VydGlvbkJhc2VDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk5
MzMwOUUxQzA5OUU2NDkyMDA1NkU1ODEgLyogVGV4dEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5MzkyMTQ2OTE4QTZENzkxMDAwRUU2ODggLyogVGV4dEl0ZXJhdG9yQmVoYXZpb3IuaCBp
biBIZWFkZXJzICovLAorCQkJCTlCMDJFMEM4MjM1RUFEMkEwMDQwNDRCMiAvKiBUZXh0TWFuaXB1
bGF0aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNFRjQ1RTkwRTY4Nzc2NzAw
MUMxMjg3IC8qIFRleHRNZXRyaWNzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNEQ5ODhCNDE3QkZE
MUY2MDA4NEZCODggLyogVGV4dE5vZGVUcmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTFD
MThEQTU5MTgxQUY2QTUwMEM0RUYyMiAvKiBUZXh0UGFpbnRlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJRTRDOTFBMEUxODAyMzQzMTAwQTE3RjZEIC8qIFRleHRQYWludFN0eWxlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlDRTIxMjE1ODI0MERCRUI5MDA2RUQ0NDMgLyogVGV4dFBsYWNlaG9sZGVyRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ4QjdENTMyNUMzNDFFNjAwOUU3NUREIC8qIFRl
eHRSZWNvZ25pdGlvblJlc3VsdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGMTk4RjYwODI0NUU1
OTAwMUU5QUJDIC8qIFRleHRSZXNvdXJjZURlY29kZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE4
MjRCNDY1MEUyRUYyRUEwMDgxQTdCNyAvKiBUZXh0UnVuLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
NDhCMUI3QTBGM0EyRjlCMDA0N0E5RTIgLyogVGV4dFNpemVBZGp1c3RtZW50LmggaW4gSGVhZGVy
cyAqLywKKwkJCQk5NzU5RTk0MDE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4dFRyYWNrLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5NzU5RTk0MzE0RUYxQ0Y4MDAyNkEyREQgLyogVGV4dFRyYWNrQ3VlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzFBOUVDMzE2OEZCQzU1MDAyNjI5RjkgLyogVGV4dFRyYWNr
Q3VlR2VuZXJpYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc1OUU5NDYxNEVGMUNGODAwMjZBMkRE
IC8qIFRleHRUcmFja0N1ZUxpc3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3Njk3MDg3MTQ2M0FE
ODcwMEY1MDJDRiAvKiBUZXh0VHJhY2tMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQlCMUFENEU3
NDEzQTEyQTQ2MDA4NDZCMjcgLyogVGV4dFRyYWNrTG9hZGVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlDRDhCNUE0OTE4MEUxMzhCMDA4QjhFNjUgLyogVGV4dFRyYWNrTWVkaWFTb3VyY2UuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTFERjdFODFGMjUxQTlFMDYwMERCOEY2MSAvKiBUZXh0VHJhY2tSZXBy
ZXNlbnRhdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUM3M0E3MTMyMTg1NzU3RTAwNENDRUE1
IC8qIFRleHRVbmRlcmxpbmVPZmZzZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTI5RkFGNEI2MTk1
QUIwODkwMEE1MjJEQyAvKiBUZXh0VW5kb0luc2VydGlvbk1hcmt1cE1hYy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJNkZCMTFCNUMyMTc4M0ZEMDAwRTJBNTc0IC8qIFRleHRVdGlsLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCQ0U2NThGRjBFQTkyNDhBMDA3RTQ1MzMgLyogVGhlbWUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTMxMEQ3MTk2MUIzMzVDOUUwMDlDN0I3MyAvKiBUaGVtZUNvY29hLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk0NEM5OTE5RjBGM0QyMTBFMDA1ODY2NzAgLyogVGhlbWVJT1MuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUJDRTY1OUU2MEVBOTJGQjIwMDdFNDUzMyAvKiBUaGVtZU1hYy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkNFNjU5QTkwRUE5MjdCOTAwN0U0NTMzIC8qIFRoZW1lVHlwZXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCTk3NkQ2Qzk1MTIyQjhBM0QwMDFGRDFGNyAvKiBUaHJlYWRh
YmxlQmxvYlJlZ2lzdHJ5LmggaW4gSGVhZGVycyAqLywKKwkJCQkwQjkwNTYxQjBGMjU3OEJGMDA5
NUZGNkEgLyogVGhyZWFkYWJsZUxvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEI5MDU2MUMw
RjI1NzhCRjAwOTVGRjZBIC8qIFRocmVhZGFibGVMb2FkZXJDbGllbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTFBN0UzQzI5MTcxMDk5NzMwMDM2NzkzNSAvKiBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTdBQUJEMTcxNEZBMDlENTAwNzQ1N0FFIC8q
IFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0FBQkQx
OTE0RkEwOUQ1MDA3NDU3QUUgLyogVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWxDbGllbnRXcmFw
cGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MURGNkQ3RTBCOTJBMTZEMDBDMkRDODUgLyogVGhy
ZWFkQ2hlY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTBGNjM4M0RFMTg2MTVCMjkwMDNFNURCNSAv
KiBUaHJlYWRlZFNjcm9sbGluZ1RyZWUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRkY1N0EzMEYw
MTI1NUIwMDg5MUVCQiAvKiBUaHJlYWRHbG9iYWxEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQk1
MUQ3RUZFQTFCREU4RjhDMDBFOTNFMTAgLyogVGhyZWFkU2FmZURhdGFCdWZmZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTE4NUJDRjI5MEYzMjc5Q0UwMDBFQTI2MiAvKiBUaHJlYWRUaW1lcnMuaCBp
biBIZWFkZXJzICovLAorCQkJCTdBQTNBNjlBMTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUY3MkJGMEIxODdGRDQ1QzAwMDlCQ0IzIC8qIFRp
bGVDb250cm9sbGVyTWVtb3J5SGFuZGxlcklPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0FBM0E2
QTQxOTRCNUMyMjAwMUNCRDI0IC8qIFRpbGVDb3ZlcmFnZU1hcC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUFGODlBNDIxNTE4RkRFQTAwRTU0N0I1IC8qIFRpbGVkQmFja2luZy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJN0FBM0E2OUMxOTRBNjRFNzAwMUNCRDI0IC8qIFRpbGVHcmlkLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlGNTVCM0REQzEyNTFGMTJEMDAzRUYyNjkgLyogVGltZUlucHV0VHlwZS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNzU1M0NGRTgxMDhGNDczRjAwRUEyODFFIC8qIFRpbWVsaW5lUmVj
b3JkRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTMwNUIyNEQwOThGMUI2QjAwQzI4ODU1
IC8qIFRpbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDQ2MTNCMDBDRDYzMzEwMDBGQURBNzUg
LyogVGltZVJhbmdlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQ3RUQwQUIxQkFFOTkxNzAwNDNC
M0U1IC8qIFRpbWVyRXZlbnRCYXNlZE1vY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTVDQzc5MDBF
MjY2QUZBODkwMDY5MjRGRSAvKiBUaW1pbmdBbGxvd09yaWdpbi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDlFOTEyQUUwRUZBQzkwNjAwOUQwQ0FGIC8qIFRpbWluZ0Z1bmN0aW9uLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwRjU0REQwODE4ODFENUY1MDAzRUVEQkIgLyogVG91Y2guaCBpbiBIZWFkZXJz
ICovLAorCQkJCTcxQjdFRTBEMjFCNUM2ODcwMDMxQzFFRiAvKiBUb3VjaEFjdGlvbi5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMEY1NEREMDkxODgxRDVGNTAwM0VFREJCIC8qIFRvdWNoRXZlbnQuaCBp
biBIZWFkZXJzICovLAorCQkJCTBGNTRERDBBMTg4MUQ1RjUwMDNFRURCQiAvKiBUb3VjaExpc3Qu
aCBpbiBIZWFkZXJzICovLAorCQkJCTA3MDMzNEQ3MTQ1OUZGRDUwMDhEOEQ0NSAvKiBUcmFja0Jh
c2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUJFODhFMEMyMTcxNUNFMjYwMDY1OEQ5OCAvKiBUcmFj
a0xpc3RCYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCRTkxM0Q4MDE4MUVGOTI0MDBEQ0IwOUUg
LyogVHJhY2tQcml2YXRlQmFzZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkZBQzMwRkUxODRGQjE0
NTAwOEM0RjFFIC8qIFRyYWlsaW5nT2JqZWN0cy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE2MDcx
MzIxQkQ4MzA4QjAwREJDNEYyIC8qIFRyYW5zYWN0aW9uT3BlcmF0aW9uLmggaW4gSGVhZGVycyAq
LywKKwkJCQlDRDNFRUY0MTI1Nzk5RkQ5MDA2NTYzQkIgLyogVHJhbnNmZXJGdW5jdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNDlFOTExQzQwRUY4NkQ0NzAwOUQwQ0FGIC8qIFRyYW5zZm9ybWF0
aW9uTWF0cml4LmggaW4gSGVhZGVycyAqLywKKwkJCQlGQjQ4NEY0RDE3MUY4MjFFMDAwNDA3NTUg
LyogVHJhbnNmb3JtRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUU5MTFDRTBFRjg2
RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk0
OUU5MTFEMDBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtT3BlcmF0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNURCMUJDNkExMDcxNUE2NDAwRUZBQTQ5IC8qIFRyYW5zZm9ybVNvdXJjZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJNDk0NUJGRDQxM0NGODA5MDAwQ0MzQjM4IC8qIFRyYW5zZm9y
bVN0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTZFNkZFODFCQkQxMkRGMDAwQTNGNzQgLyog
VHJhbnNmb3JtU3RyZWFtSW50ZXJuYWxzQnVpbHRpbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUUx
N0I0OTE2MTZBOUIwOTQwMDFDODgzOSAvKiBUcmFuc2l0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTQ5RTkxMUQyMEVGODZENDcwMDlEMENBRiAvKiBUcmFuc2xhdGVUcmFuc2Zvcm1PcGVy
YXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCUY0ODU3MEE1MjY0NEM3NkQwMEMwNUY3MSAvKiBU
cmFuc2xhdGlvbkNvbnRleHRNZW51SW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJODU0RkU3Mzcw
QTIyOTdCRTAwNThEN0FEIC8qIFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzdGRDQy
OTgxMTgzNjg0NjAwOTNDMDI5IC8qIFRyZWVEZXB0aExpbWl0LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxNEQ2NEI1RDEzNEE1QjZCMDBFNThGREEgLyogVHJlZVNjb3BlLmggaW4gSGVhZGVycyAqLywK
KwkJCQkxNDk0N0ZGRTEyRjgwQ0QyMDBBMEY2MzEgLyogVHJlZVNjb3BlT3JkZXJlZE1hcC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJODU0RkU3MzkwQTIyOTdCRTAwNThEN0FEIC8qIFRyZWVXYWxrZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCUMzNzVEN0ZFMTY2Mzk1MTkwMDYxODRBQiAvKiBUeXBlQWhl
YWQuaCBpbiBIZWFkZXJzICovLAorCQkJCUU0NkEyQjFDMTdDQTY1QjkwMDBEQkNEOCAvKiBUeXBl
ZEVsZW1lbnREZXNjZW5kYW50SXRlcmF0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMzA5RTFB
MDk5RTY0OTIwMDU2RTU4MSAvKiBUeXBpbmdDb21tYW5kLmggaW4gSGVhZGVycyAqLywKKwkJCQk1
NzE1MkI2RTIxQ0Q5OTVEMDAwQzM3Q0EgLyogVTJmQ29tbWFuZENvbnN0cnVjdG9yLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1NzE1MkI3QzIxREQ4QkExMDAwQzM3Q0EgLyogVTJmUmVzcG9uc2VDb252
ZXJ0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTg1MDMxQjRFMEE0NEVGQzcwMEY5OTJFMCAvKiBV
SUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0ZFN0NBNzFEQTlGMUE3MDAzNzIzN0MgLyog
VUlFdmVudEluaXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTg1MDMxQjRGMEE0NEVGQzcwMEY5OTJF
MCAvKiBVSUV2ZW50V2l0aEtleVN0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRUNEQkFEODIx
RDg5MDYzMDBGMDBFQ0QgLyogVW5kb0l0ZW0uaCBpbiBIZWFkZXJzICovLAorCQkJCTJFQ0RCQUQx
MjFEODkwMzQwMEYwMEVDRCAvKiBVbmRvTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOUIy
RDhBNzkxNDk5N0NDRjAwRUNFRjNFIC8qIFVuZG9TdGVwLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
ODYzRTIwMTEzNDM0MTIwMDAyNzQ5MjYgLyogVW5pY29kZUJpZGkuaCBpbiBIZWFkZXJzICovLAor
CQkJCTUxODg2NEUxMUJCQUY1NzQwMEU1NDBDOSAvKiBVbmlxdWVJREJEYXRhYmFzZS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNTE5OEY3QTUxQkJEQjc5MzAwRTJDQzVGIC8qIFVuaXF1ZUlEQkRhdGFi
YXNlQ29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTE5OEY3QTkxQkJERDM4NTAwRTJD
QzVGIC8qIFVuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJ
CUU0QUZDRkE1MERBRjI5QTMwMEY1RjU1QyAvKiBVbml0QmV6aWVyLmggaW4gSGVhZGVycyAqLywK
KwkJCQlDMThDQzBBNDI1ODBFRkIxMDAzRDc1RkIgLyogVW5pdmVyc2FsQWNjZXNzWm9vbS5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJRDA4NkZFOTgwOUQ1M0FBQjAwNUJDNzREIC8qIFVubGlua0NvbW1h
bmQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZEMTc2MkUwMTc2Njg2RDkwMEQ4MzZBOCAvKiBVcFNh
bXBsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRDQzN0EyMUQ1N0IzRkUwMEFCODVFQSAvKiBV
UkxEZWNvbXBvc2l0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNjc3MjYwNTFBNURGNkYyMDAz
QzI0REQgLyogVVJMRmlsdGVyUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTVCM0RERTEy
NTFGMTJEMDAzRUYyNjkgLyogVVJMSW5wdXRUeXBlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0My
ODlERjFBQTBGRTVEMDA5QTlDRTMgLyogVVJMUmVnaXN0cnkuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE3Mjc2M0JGMTY2ODlCRkIwMDJGQ0FDQiAvKiBVc2VyQWN0aW9uRWxlbWVudFNldC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJODY4MTYwRDYxODc2NkExMzAwMjFFNzlEIC8qIFVzZXJBY3Rpdml0eS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTNBRjlEODYyMDMyNjg2MTAwNkNBRDA2IC8qIFVzZXJBZ2Vu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RBQjZEMzExN0M5MjU5NTAwQzYwQjM0IC8qIFVzZXJB
Z2VudFNjcmlwdHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTRBOUNDODE4MTZCQjlBQzYwMEVDNjQ1
QSAvKiBVc2VyQWdlbnRTdHlsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNjU2NTgxQjIwOUQxNEVF
NjAwMEU2MUQ3IC8qIFVzZXJBZ2VudFN0eWxlU2hlZXRzLmggaW4gSGVhZGVycyAqLywKKwkJCQkx
QUU3OUQ0MzE4OERCNjFGMDAyMjM5QzIgLyogVXNlckNvbnRlbnRDb250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk3QzNGMDFDMTFDOEU1QUJBMDBBREQ5NjIgLyogVXNlckNvbnRlbnRQcm92
aWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDAzRjFGRUExMUU2QUI0MzAwODI1OEQ5IC8qIFVz
ZXJDb250ZW50VHlwZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQUNGM0JEMTA3MjkyMUEwMEMw
QzhBMyAvKiBVc2VyQ29udGVudFVSTFBhdHRlcm4uaCBpbiBIZWFkZXJzICovLAorCQkJCUYzMkJE
Q0Q5MjM2M0FBQ0EwMDczQjZBRSAvKiBVc2VyR2VzdHVyZUVtdWxhdGlvblNjb3BlLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkyNTQyRjREQjExNjZDMjVBMDBFODlBODYgLyogVXNlckdlc3R1cmVJbmRp
Y2F0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTk5MjAzOTgzMThCOTVCQzYwMEIzOUFGOSAvKiBV
c2VySW5wdXRCcmlkZ2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDNEE1MzI3MjU2MDU1RDMwMDI4
QzU5MiAvKiBVc2VySW50ZXJmYWNlRGlyZWN0aW9uUG9saWN5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk3MUM5MTYwODFEMTQ4M0EzMDBBQ0E0N0QgLyogVXNlckludGVyZmFjZUxheW91dERpcmVjdGlv
bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5MkUxN0QxNEQxQzAwNDIwQUExIC8qIFVzZXJN
ZWRpYUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc4RTA5MkYxN0QxNEQxQzAwNDIwQUEx
IC8qIFVzZXJNZWRpYUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3OEUwOTMwMTdE
MTREMUMwMDQyMEFBMSAvKiBVc2VyTWVkaWFSZXF1ZXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQkw
Rjc2OEMyRDI2RDAzODQxMDA4REJFMEIgLyogVXNlck1lZGlhUmVxdWVzdElkZW50aWZpZXIuaCBp
biBIZWFkZXJzICovLAorCQkJCTdDM0I3OTcyMTkwODc1N0IwMEI0N0EyRCAvKiBVc2VyTWVzc2Fn
ZUhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTdDRTY4MzQ1MTkyMTQzQTgwMEY0RDkyOCAv
KiBVc2VyTWVzc2FnZUhhbmRsZXJEZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQk3Q0U2
ODM0NzE5MjE4MjE1MDBGNEQ5MjggLyogVXNlck1lc3NhZ2VIYW5kbGVyRGVzY3JpcHRvclR5cGVz
LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QzczRkIwODE5MUVGNDE3MDA3REUwNjEgLyogVXNlck1l
c3NhZ2VIYW5kbGVyc05hbWVzcGFjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkNBMkIwNjExMDUw
NDc2MDAwNDNCRDFDIC8qIFVzZXJTY3JpcHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDQTJCMDhC
MTA1MDVCQ0QwMDQzQkQxQyAvKiBVc2VyU2NyaXB0VHlwZXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUJDOEJGMTUxMTA1ODEzQkYwMEE0MEEwNyAvKiBVc2VyU3R5bGVTaGVldC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkM4QkYxNUExMDU4MTQxODAwQTQwQTA3IC8qIFVzZXJTdHlsZVNoZWV0VHlwZXMu
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDREYzMTdDMTFGOEQ2ODMwMDNDNUJGOCAvKiBVc2VyVHlw
aW5nR2VzdHVyZUluZGljYXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTcyQjQwMzYyMTc2QTky
MjAwMEFENDNFIC8qIFVzZXJWZXJpZmljYXRpb25SZXF1aXJlbWVudC5oIGluIEhlYWRlcnMgKi8s
CisJCQkJNTVBRjE0RTYxRUFBQzU5QjAwMjZFRUFBIC8qIFVUSVJlZ2lzdHJ5LmggaW4gSGVhZGVy
cyAqLywKKwkJCQkxRkFGQkYxOTE1QTVGQTc0MDAwODNBMjAgLyogVVRJVXRpbGl0aWVzLmggaW4g
SGVhZGVycyAqLywKKwkJCQk4M0M0NUI4RTFEQzJCNjhBMDA4ODcxQkEgLyogVmFsaWRhdGlvbkJ1
YmJsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjVBMTU0MjgxMjc5NTM0RDAwRDBCMEMwIC8qIFZh
bGlkYXRpb25NZXNzYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNTEzQTNFQTE1RkY0ODQxMDAx
NTI2REIgLyogVmFsaWRhdGlvbk1lc3NhZ2VDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTE1
Qzc3MDhEMTAwRDNDNkIwMDVCQTI2NyAvKiBWYWxpZGl0eVN0YXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlGRDMxNjBBRjEyQjAyNkY3MDBDMUEzNTkgLyogVmVjdG9yTWF0aC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMEYxQTBDMzgyMjlBNDgxODAwRDM3QURCIC8qIFZlbG9jaXR5RGF0YS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJREY0RTM4RTAyNTI3OTU5NTAwMkE3NDgxIC8qIFZlcnNpb25DaGVja3Mu
aCBpbiBIZWFkZXJzICovLAorCQkJCUJDQTI1NzE1MTI5M0MwMTAwMDdBMjYzRCAvKiBWZXJ0aWNh
bFBvc2l0aW9uQ2FjaGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEM0VFRjNCMjU3OTlGQTEwMDY1
NjNCQiAvKiBWaWRlb0NvbmZpZ3VyYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTUyQjBENEMw
MUM1N0ZENjYwMDc3Q0U1MyAvKiBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJM0ZCQzRBRjQxODk4ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0LmggaW4gSGVhZGVycyAqLywKKwkJCQk1MkIwRDRDMjFDNTdGRjkxMDA3
N0NFNTMgLyogVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlTWFjLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk1MkQ1QTFBNzFDNTc0ODlEMDBERTM0QTMgLyogVmlkZW9GdWxsc2NyZWVuTW9kZWwuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTUyRDVBMUE4MUM1NzQ4QTMwMERFMzRBMyAvKiBWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbFZpZGVvRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMURBQjMxMTQyNTFENzI1
QzAwRkM5NDg1IC8qIFZpZGVvTGF5ZXJNYW5hZ2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQkxREFC
MzExNTI1MUQ3NERCMDBGQzk0ODUgLyogVmlkZW9MYXllck1hbmFnZXJPYmpDLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlDREU4M0RCMjE4M0M0NDA2MDAzMUVBQTMgLyogVmlkZW9QbGF5YmFja1F1YWxp
dHkuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3NTAzM0E4MjUyQkQzNjgwMEY3MENFMyAvKiBWaWRl
b1BsYXliYWNrUXVhbGl0eU1ldHJpY3MuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3NTdCMTNFMjE0
QUU3OTkwMDc5NEIwRCAvKiBWaWRlb1ByZXNldC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQ0RDOTM5
QTgxRTlCREZCMTAwQkI3NjhEIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmggaW4gSGVhZGVycyAq
LywKKwkJCQlCRTg4RTBERjE3MTVEMkEyMDA2NThEOTggLyogVmlkZW9UcmFjay5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQkU4OEUwRTIxNzE1RDJBMjAwNjU4RDk4IC8qIFZpZGVvVHJhY2tMaXN0Lmgg
aW4gSGVhZGVycyAqLywKKwkJCQlDRDhCNUE0NjE4MERGRjRFMDA4QjhFNjUgLyogVmlkZW9UcmFj
a01lZGlhU291cmNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlCRUYyOUVFQzE3MTVERDA5MDBDNEI0
QzkgLyogVmlkZW9UcmFja1ByaXZhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEMzM2RjY0MTdG
QTBBNEQwMERERENEMCAvKiBWaWRlb1RyYWNrUHJpdmF0ZUFWRi5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0QzMzZGNjgxN0ZBMEFDNjAwREREQ0QwIC8qIFZpZGVvVHJhY2tQcml2YXRlQVZGT2JqQy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQ0Q4QjVBNDMxODBEMTQ5QTAwOEI4RTY1IC8qIFZpZGVvVHJh
Y2tQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzBFODFE
MTFCRjI3NjU2MDAxRkRBNDggLyogVmlkZW9UcmFja1ByaXZhdGVNZWRpYVN0cmVhbS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQ0VGNDE4Q0YxMTc5Njc4QzAwOUQxMTJDIC8qIFZpZXdwb3J0QXJndW1l
bnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQkyNkY5QTgzOTE4QTA0NkFDMDBBRUI4OEEgLyogVmll
d3BvcnRDb25maWd1cmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzQwN0ZDMTFFOEQ5QzE3
MDBFMDQ4RDMgLyogVmlzaWJpbGl0eUNoYW5nZUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NDZDQTlDNDQxRjk3QkJFOTAwNENGQzNBIC8qIFZpc2liaWxpdHlTdGF0ZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJOTMzMDlFMjAwOTlFNjQ5MjAwNTZFNTgxIC8qIFZpc2libGVQb3NpdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTg4M0RGMjgwRjNEMDQ1RDAwRjE5QkY2IC8qIFZpc2libGVTZWxl
Y3Rpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTkzMzA5RTFFMDk5RTY0OTIwMDU2RTU4MSAvKiBW
aXNpYmxlVW5pdHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxOUJDMkRGMTY4NTMyOTkwMEQ2NEQ2
RCAvKiBWaXNpdGVkTGlua1N0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUJBODAwMDE4OTcz
NDEyMDBEQ0U5RDYgLyogVmlzaXRlZExpbmtTdG9yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQ0
NjEzQjYwQ0Q2MzQ0RTAwRkFEQTc1IC8qIFZvaWRDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0Q5Q0M1ODUyNEM2QkJFQjAwQ0QzQzY0IC8qIFZQOVV0aWxpdGllcy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQ0RBQzA2ODMyNEM2QTk1QTAwMkY3MjdGIC8qIFZQOVV0aWxpdGllc0NvY29hLmgg
aW4gSGVhZGVycyAqLywKKwkJCQlCRTIwNTA3QTE4QTQ1ODZCMDA4MDY0N0UgLyogVlRUQ3VlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk3QUY5QjIwMzE4Q0ZCMkRGMDBDNjRCRUYgLyogVlRUUmVnaW9u
LmggaW4gSGVhZGVycyAqLywKKwkJCQk3QUY5QjIwNjE4Q0ZCMkRGMDBDNjRCRUYgLyogVlRUUmVn
aW9uTGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8q
IFZUVFNjYW5uZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUExNDgzMkIwMTg3RjYxOEQwMERBNjNB
NiAvKiBXQUtBcHBLaXRTdHVicy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE0ODMyQjIxODdGNjFF
RDAwREE2M0E2IC8qIFdBS0NsaXBWaWV3LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTQ4MzJCNDE4
N0Y2MjlBMDBEQTYzQTYgLyogV0FLUmVzcG9uZGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTQ4
MzJCNjE4N0Y2MzFGMDBEQTYzQTYgLyogV0FLU2Nyb2xsVmlldy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTE0ODMyQjgxODdGNjM4NjAwREE2M0E2IC8qIFdBS1ZpZXcuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFBODc0QURGMTkwODVFOTEwMEIwMzE3MSAvKiBXQUtWaWV3SW50ZXJuYWwuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUExNDgzMkJCMTg3RjY0MzIwMERBNjNBNiAvKiBXQUtXaW5kb3cuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUZEN0YyOTkyMTNENEMwQ0IwMEFEOTUzNSAvKiBXYXZlU2hhcGVyRFNQ
S2VybmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQlGRDdGMjk5NDEzRDRDMENCMDBBRDk1MzUgLyog
V2F2ZVNoYXBlck5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzMjZCRjhGMjREMzVDMzkwMDFG
OEE4NSAvKiBXYXZlU2hhcGVyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRkQ3RjI5OTcx
M0Q0QzBDQjAwQUQ5NTM1IC8qIFdhdmVTaGFwZXJQcm9jZXNzb3IuaCBpbiBIZWFkZXJzICovLAor
CQkJCTI5QTgxMjQ5MEZCQjlDQTkwMDUxMDI5MyAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlckJhc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUFBQTcyOEY3MTZEMUQ4QkMwMEQzQkJDNiAv
KiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
QUE0NzhBN0YxNkNENzBDMzAwN0QxQkI0IC8qIFdlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
TWFjLmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDNFRjQ0ODE5MTc5MTVDMDAwMzQxODQgLyogV2Vi
QWN0aW9uRGlzYWJsaW5nQ0FMYXllckRlbGVnYXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQk3MTAy
NUVEMzFGOTlGMENFMDA0QTI1MEMgLyogV2ViQW5pbWF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk3MTA4RUVFNjI0MThFRDVBMDA1QzNEQTcgLyogV2ViQW5pbWF0aW9uVHlwZXMuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTcxMzI0NDUxMjAxMDlEQTUwMEFFN0ZCMiAvKiBXZWJBbmltYXRpb25VdGls
aXRpZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxODUzNjg0MUY0RTQ4MTQwMEZFMDkxQiAvKiBX
ZWJBcmNoaXZlUmVzb3VyY2VGcm9tTlNBdHRyaWJ1dGVkU3RyaW5nLmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMThDMzU0NDFGNzE5NzBDMDBGRjYzMkQgLyogV2ViQXJjaGl2ZVJlc291cmNlV2ViUmVz
b3VyY2VIYW5kbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTdGN0FFRTIxMzlCRjY4MDBGQkE3
RUMgLyogV2ViQXVkaW9CdWZmZXJMaXN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk0MUIyQTYyNjFF
RjFCRjZEMDAyQjlEN0EgLyogV2ViQXVkaW9Tb3VyY2VQcm92aWRlci5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMDdENjM3NDAxQkIwQjExMzAwMjU2Q0U5IC8qIFdlYkF1ZGlvU291cmNlUHJvdmlkZXJD
b2NvYS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNTc0RjU1RTEyMDRGM0IyMzAwMjk0OEM2IC8qIFdl
YkF1dGhlbnRpY2F0aW9uQ29uc3RhbnRzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1NzE1MkI4MDIx
RERBNTgxMDAwQzM3Q0EgLyogV2ViQXV0aGVudGljYXRpb25VdGlscy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQ0RCNjM1NDkyM0Y2MDIzQTAwQzBGOURFIC8qIFdlYkFWUGxheWVyQ29udHJvbGxlci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMUYzNkVBOUMxRTIxQkExNzAwNjIxRTI1IC8qIFdlYkJhY2tn
cm91bmRUYXNrQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQjUxRkFBNDQ2
MjAwMzdEMUU2IC8qIFdlYkNvbnNvbGVBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOUJCQTJD
QUIxRjY3OUUwQzAwRkQxQzFFIC8qIFdlYkNvbnRlbnRSZWFkZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTQxOUJFNzU5MUJDN0Y0MkIwMEUxQzg1QiAvKiBXZWJDb3JlQnVpbHRpbk5hbWVzLmggaW4g
SGVhZGVycyAqLywKKwkJCQkyRDNFRjQ0QTE5MTc5MTVDMDAwMzQxODQgLyogV2ViQ29yZUNBTGF5
ZXJFeHRyYXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTUxNUY3OTU0MUNGQ0EzRDUwMENDRUQ5MyAv
KiBXZWJDb3JlQ3Jvc3NUaHJlYWRDb3BpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUNENUQyNzc4
MUU4MzE4RTAwMEQ4MEEzRCAvKiBXZWJDb3JlRGVjb21wcmVzc2lvblNlc3Npb24uaCBpbiBIZWFk
ZXJzICovLAorCQkJCTkzRjE5OUE4MDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlRnJhbWVWaWV3
LmggaW4gSGVhZGVycyAqLywKKwkJCQlDREM2OUREQTE2MzcxRkQ0MDA3QzM4REYgLyogV2ViQ29y
ZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEQzY5REQ2
MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3NzkgLyogV2ViQ29yZUZ1bGxTY3Jl
ZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAorCQkJCUUzNTgyQzI4MjUyN0Y2NjkwMEQxQjc5MCAv
KiBXZWJDb3JlSklUT3BlcmF0aW9ucy5oIGluIEhlYWRlcnMgKi8sCisJCQkJQkMzNDhCRDQwREI3
RjgwNDAwNEFCQUJCIC8qIFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUJDMzQ4QkQ0MERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJDb3JlSlNCdWlsdGlucy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQkM1M0Q5MTExMTQzMTBDQzAwMEQ4MTdFIC8qIFdlYkNvcmVKU0Ns
aWVudERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCTkzRjE5OUJCMDgyNDVFNTkwMDFFOUFCQyAv
KiBXZWJDb3JlS2V5Ym9hcmRVSU1vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNDAzNzlCMTI0
QkVBN0YwMEFGNDBFNCAvKiBXZWJDb3JlTW90aW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQ0RDOTc5RjUxQzQ5OEMwOTAwREI1MEQ0IC8qIFdlYkNvcmVOU0Vycm9yRXh0cmFzLmggaW4g
SGVhZGVycyAqLywKKwkJCQlGNEU1N0VFMTIxM0Y0MzRBMDA0RUE5OEUgLyogV2ViQ29yZU5TRm9u
dE1hbmFnZXJFeHRyYXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUM1QjRDMjREMTUwOTIzNkMwMEE2
RUYzNyAvKiBXZWJDb3JlTlNVUkxFeHRyYXMuaCBpbiBIZWFkZXJzICovLAorCQkJCUNEMjI1QzBD
MUM0NkZCRjQwMDE0MDc2MSAvKiBXZWJDb3JlTlNVUkxTZXNzaW9uLmggaW4gSGVhZGVycyAqLywK
KwkJCQlERDA1RkUwRDBCOEJBM0M2MDA5QUNERkUgLyogV2ViQ29yZU9iakNFeHRyYXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUVERUM5ODAzMEFFRDdFMTcwMDU5MTM3RiAvKiBXZWJDb3JlUHJlZml4
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTUyNTUxNTE2RkQyMzUwMDAzRDdBREIgLyogV2ViQ29y
ZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLmggaW4gSGVhZGVycyAqLywK
KwkJCQlBMTQ4MzJDNzE4N0Y2NkM4MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTE0ODMyQzkxODdGNjc2QjAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRJbnRl
cm5hbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE0ODMyQ0ExODdGNjc4MDAwREE2M0E2IC8qIFdl
YkNvcmVUaHJlYWRNZXNzYWdlLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTQ4MzJDQzE4N0Y2N0M0
MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZFJ1bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE0ODMy
Q0YxODdGNjg0NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTBGMDk5RDA5MTdCOTY4QTEwMEZGODRCOSAvKiBXZWJDb3JlVHlwZWRB
cnJheUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTM3RjgxOEZEMEQ2NTc2MDYwMDVF
MUYwNSAvKiBXZWJDb3JlVVJMUmVzcG9uc2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ0QTIwREI5
MEY4NDE2NkMwMEIzRTFGRSAvKiBXZWJDb3JlVVJMUmVzcG9uc2VJT1MuaCBpbiBIZWFkZXJzICov
LAorCQkJCTkzRjE5OUYwMDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlVmlldy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTVCODFDQjYxRkFBNDQ2MjAwMzdEMUU2IC8qIFdlYkRlYnVnZ2VyQWdlbnQu
aCBpbiBIZWFkZXJzICovLAorCQkJCUZFMEQ4NEU5MTA0ODQzNDgwMDFBMTc5RSAvKiBXZWJFdmVu
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMjI1QTE2QjUwRDVDMTFFOTAwMDkwMjk1IC8qIFdlYkV2
ZW50UmVnaW9uLmggaW4gSGVhZGVycyAqLywKKwkJCQlEM0YzRDM2RTFBNjlCN0UwMDA1OUZDMkIg
LyogV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdEMjBGNkQx
MDdGNDM4QjAwQTgwMzkyIC8qIFdlYkdMQWN0aXZlSW5mby5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NkU0N0U2NjExMEI3OTQ0QjAwQjE4NkM4IC8qIFdlYkdMQW55LmggaW4gSGVhZGVycyAqLywKKwkJ
CQkxQUZGQzQ1ODFENUU4NjU1MDAyNjdBNjYgLyogV2ViR0xCbG9ja2xpc3QuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTQ5QzdCOUM5MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTEJ1ZmZlci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRDA4QjAwRTQyMEEyODI1OTAwMDRCQzBBIC8qIFdlYkdMQ29tcHJlc3Nl
ZFRleHR1cmVBU1RDLmggaW4gSGVhZGVycyAqLywKKwkJCQk3RTY2RTIzNDE2RDZFQjZDMDBGN0U3
RkYgLyogV2ViR0xDb21wcmVzc2VkVGV4dHVyZUFUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkU4
QUNERUQyMzM0NUNCQzAwMjRBQUY1IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVFVEMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTZFMEI5MDY5MjMyMUE2OEQwMDYyMjNCMiAvKiBXZWJHTENvbXByZXNz
ZWRUZXh0dXJlRVRDMS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0U2NkUyMzQxN0U2RUI2QzAwRjdF
N0ZGIC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVQVlJUQy5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
NkUzRkFFOEYxNDczM0ZEQjAwRTQyMzA2IC8qIFdlYkdMQ29tcHJlc3NlZFRleHR1cmVTM1RDLmgg
aW4gSGVhZGVycyAqLywKKwkJCQk2RTRFOTFBRjEwRjdGQjMxMDBBMjc3OUMgLyogV2ViR0xDb250
ZXh0QXR0cmlidXRlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTNGNkYxRUUxMjdGNzBCMTAwNTVD
QjA2IC8qIFdlYkdMQ29udGV4dEV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwMUQzQ0Y4MzE0
QkQwQTMwMDBGRTk5NzAgLyogV2ViR0xDb250ZXh0R3JvdXAuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTAxRDNDRjg1MTRCRDBBMzAwMEZFOTk3MCAvKiBXZWJHTENvbnRleHRPYmplY3QuaCBpbiBIZWFk
ZXJzICovLAorCQkJCUEwRUUwREY2MTQ0RjgyNTUwMEY4MEIwRCAvKiBXZWJHTERlYnVnUmVuZGVy
ZXJJbmZvLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMEVFMERGODE0NEY4MjU1MDBGODBCMEQgLyog
V2ViR0xEZWJ1Z1NoYWRlcnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTZFM0ZBRThGMTQ3MzNGREIw
MEU0MjMwNyAvKiBXZWJHTERlcHRoVGV4dHVyZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUIzMDY5
NUUxOEIzRDM0NTAwOTlENUU4IC8qIFdlYkdMRHJhd0J1ZmZlcnMuaCBpbiBIZWFkZXJzICovLAor
CQkJCTZFQkYwRTU1MTJBODkyOTgwMERCMTcwOSAvKiBXZWJHTEV4dGVuc2lvbi5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDlDN0I5Q0YxMDQyRDMyRjAwMDlENDQ3IC8qIFdlYkdMRnJhbWVidWZmZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTQ5RkZCRjNGMTFDOTNFRTMwMDZBNzExOCAvKiBXZWJHTExh
eWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0YxRDVCQjEyRDUzMkM0MDA4MzJCRUMgLyogV2Vi
R0xMb3NlQ29udGV4dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNkVDMzYyRDkyNUI0QzU0NTAwOTM3
Rjg1IC8qIFdlYkdMTXVsdGlEcmF3LmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUM3QjlENTEwNDJE
MzJGMDAwOUQ0NDcgLyogV2ViR0xPYmplY3QuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5QzdCOUQ3
MTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFByb2dyYW0uaCBpbiBIZWFkZXJzICovLAorCQkJCTZG
OTk1QTIwMUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFF1ZXJ5LmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0OUM3QjlEQTEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xSZW5kZXJidWZmZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTQ5QzdCOUUwMTA0MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFJlbmRlcmluZ0Nv
bnRleHQuaCBpbiBIZWFkZXJzICovLAorCQkJCUQzRjNEMzZBMUE2OUI3QjkwMDU5RkMyQiAvKiBX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmggaW4gSGVhZGVycyAqLywKKwkJCQk2Rjk5NUEyMjFB
NzA3OEIxMDBBNzM1RjQgLyogV2ViR0xTYW1wbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk0OUM3
QjlFMzEwNDJEMzJGMDAwOUQ0NDcgLyogV2ViR0xTaGFkZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUEwN0QzMzU4MTUyQjYzMkQwMDFCNjM5MyAvKiBXZWJHTFNoYWRlclByZWNpc2lvbkZvcm1hdC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMDFEM0NGODcxNEJEMEEzMDAwRkU5OTcwIC8qIFdlYkdMU2hh
cmVkT2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk4MzlBMkYyRTFFMjA0QTcxMDAzOTA1N0Ug
LyogV2ViR0xTdGF0ZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGOTk1QTE2MUE3MDc1
NjIwMEE3MzVGNCAvKiBXZWJHTFN5bmMuaCBpbiBIZWFkZXJzICovLAorCQkJCTQ5QzdCOUU2MTA0
MkQzMkYwMDA5RDQ0NyAvKiBXZWJHTFRleHR1cmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTZGOTk1
QTI0MUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJHTFRyYW5zZm9ybUZlZWRiYWNrLmggaW4gSGVhZGVy
cyAqLywKKwkJCQkwQzNGMUY1QjEwQzg4NzEyMDBENzJDRTEgLyogV2ViR0xVbmlmb3JtTG9jYXRp
b24uaCBpbiBIZWFkZXJzICovLAorCQkJCTZGOTk1QTI2MUE3MDc4QjEwMEE3MzVGNCAvKiBXZWJH
TFZlcnRleEFycmF5T2JqZWN0LmggaW4gSGVhZGVycyAqLywKKwkJCQk3N0ExN0E3ODEyRjI4NjQy
MDA0RTAyRjYgLyogV2ViR0xWZXJ0ZXhBcnJheU9iamVjdE9FUy5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTVCODFDQjcxRkFBNDQ2MjAwMzdEMUU2IC8qIFdlYkhlYXBBZ2VudC5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQTU4NDBFMjUxODdCOEFDMjAwODQzQjEwIC8qIFdlYkluamVjdGVkU2NyaXB0SG9z
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU4NEZFMzAxODY0Q0I4NDAwODQzQjEwIC8qIFdlYklu
amVjdGVkU2NyaXB0TWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjQ4MjIzMTExRTM4NjlC
ODAwNjZGQzc5IC8qIFdlYkl0ZW1Qcm92aWRlclBhc3RlYm9hcmQuaCBpbiBIZWFkZXJzICovLAor
CQkJCTMxQzBGRjIyMEU0Q0VCNkUwMDdENkZFNSAvKiBXZWJLaXRBbmltYXRpb25FdmVudC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNURGRUJBQjcxODU5MkI2RDAwQzc1QkVCIC8qIFdlYktpdEF2YWls
YWJpbGl0eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkQwNjIxNDUxREE2MzlCQTAwQTdGQjI2IC8q
IFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkyRDA2MjE1
MTFEQTYzQTlGMDBBN0ZCMjYgLyogV2ViS2l0TWVkaWFLZXlOZWVkZWRFdmVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMkQwNjIxNEUxREE2M0E4RTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5cy5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMkQwNjIxNTAxREE2M0E5NDAwQTdGQjI2IC8qIFdlYktpdE1l
ZGlhS2V5U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0M0OEE2RDExOTFDOUQ2NTAwMDI2
Njc0IC8qIFdlYktpdE5hbWVzcGFjZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0EyMjczMjEyMEM5
RkFGRTAwREIxREVGIC8qIFdlYktpdE5TSW1hZ2VFeHRyYXMuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE1REVCREE0MTZGQjkwODcwMDgzNkZFMCAvKiBXZWJLaXRQbGF5YmFja1RhcmdldEF2YWlsYWJp
bGl0eUV2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0OTRCRDc5NTBGNTVDOEVFMDA3NDc4Mjgg
LyogV2ViS2l0UG9pbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxQzBGRjI1MEU0Q0VCNkUwMDdE
NkZFNSAvKiBXZWJLaXRUcmFuc2l0aW9uRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTBGQ0Yz
MzJGMEYyQjlBMjUwMDRCNjc5NSAvKiBXZWJMYXllci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDdG
NUNGRjUyNTgyQTUxRDAwNjYyRUY1IC8qIFdlYk1BdWRpb1V0aWxpdGllc0NvY29hLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwNzA5RDc4RjFBRTU1NTU0MDA0RTQyRjggLyogV2ViTWVkaWFTZXNzaW9u
TWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcwOUQ3OTUxQUU1NUEyOTAwNEU0MkY4IC8q
IFdlYk1lZGlhU2Vzc2lvbk1hbmFnZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MDlE
NzkzMUFFNTU1N0UwMDRFNDJGOCAvKiBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMUEzMTYyRDEzNEJDMzJEMDA3QzlBNEYgLyogV2ViTlNBdHRyaWJ1dGVk
U3RyaW5nRXh0cmFzLmggaW4gSGVhZGVycyAqLywKKwkJCQlDRDU4OTZFMjFDRDJCMTUxMDBCM0JD
QzggLyogV2ViUGxheWJhY2tDb250cm9sc01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFD
QUYzNDgxMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QuaCBpbiBIZWFkZXJzICov
LAorCQkJCTFDQUYzNDgzMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3RQcml2YXRl
LmggaW4gSGVhZGVycyAqLywKKwkJCQkxQTU2OUQxQjBEN0UyQjgyMDA3QzM5ODMgLyogV2ViU2Ny
aXB0T2JqZWN0UHJvdG9jb2wuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3QUFCRDFCMTRGQTA5RDUw
MDc0NTdBRSAvKiBXZWJTb2NrZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3QUFCRDFFMTRGQTA5
RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRDaGFubmVsLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0FB
QkQxRjE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0Q2hhbm5lbENsaWVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJNDExMDBDODAyM0Y3NDU4MzAwMUJDMzNCIC8qIFdlYlNvY2tldENoYW5uZWxJ
bnNwZWN0b3IuaCBpbiBIZWFkZXJzICovLAorCQkJCTRBMzhCRjUxMTRGRTFDMDkwMDYxMjUxMiAv
KiBXZWJTb2NrZXREZWZsYXRlRnJhbWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0FBQkQyMTE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RGVmbGF0ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTk3QUFCRDIzMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRFeHRlbnNpb25EaXNwYXRjaGVy
LmggaW4gSGVhZGVycyAqLywKKwkJCQk0QTVBMkFEQzE2MUU3RTAwMDA1ODg5REQgLyogV2ViU29j
a2V0RXh0ZW5zaW9uUGFyc2VyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5N0FBQkQyNDE0RkEwOUQ1
MDA3NDU3QUUgLyogV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29yLmggaW4gSGVhZGVycyAqLywK
KwkJCQk5N0FBQkQyNTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0RnJhbWUuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk3QUFCRDI3MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hh
a2UuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxRTEyRTlGMjRGRTc0RTIwMDkzRkZCNCAvKiBXZWJT
b2NrZXRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQk5M0IzOEVDMzI1ODIxREI0MDAx
OThFNjMgLyogV2ViU3BlZWNoUmVjb2duaXplclRhc2suaCBpbiBIZWFkZXJzICovLAorCQkJCTkz
QjM4RUM0MjU4MjFEQjcwMDE5OEU2MyAvKiBXZWJTcGVlY2hSZWNvZ25pemVyVGFza01vY2suaCBp
biBIZWFkZXJzICovLAorCQkJCTFGODc1NkIyMUUyMkMzMzUwMDQyQzQwRCAvKiBXZWJTUUxpdGVE
YXRhYmFzZVRyYWNrZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxREVBNDU2MUIzOUY0
RDkwMEY3NzE3OCAvKiBXZWJTeXN0ZW1CYWNrZHJvcExheWVyLmggaW4gSGVhZGVycyAqLywKKwkJ
CQk0NENFMkJCRjI2NDM3OUFGMDA3QUUxMTAgLyogV2ViVGV4dEluZGljYXRvckxheWVyLmggaW4g
SGVhZGVycyAqLywKKwkJCQkwRjU4MEZBMzE0OTY5MzkxMDBGQjVCRDggLyogV2ViVGlsZWRCYWNr
aW5nTGF5ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTFEQUIzMTEyMjUxRDZCRjMwMEZDOTQ4NSAv
KiBXZWJWaWRlb0NvbnRhaW5lckxheWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzRjQyQjMxRDE4
ODExOTFCMDAyNzhBQUMgLyogV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0LmggaW4g
SGVhZGVycyAqLywKKwkJCQkyRDdEQTBGMjI0MzVFQjE5MDBGMDQ4RDEgLyogV2ViVmlld1Zpc3Vh
bElkZW50aWZpY2F0aW9uT3ZlcmxheS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjEyMTcxRjYxNkE4
Q0YwQjAwMDA1M0NBIC8qIFdlYlZUVEVsZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTVEMjFB
ODAzMTNFQ0U1REYwMEJCNzA2NCAvKiBXZWJWVFRQYXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUIxMEI2OTgwMTQwQzE3NDAwMEJDMUMyNiAvKiBXZWJWVFRUb2tlbi5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQjEwQjY5ODIxNDBDMTc0MDAwQkMxQzI2IC8qIFdlYlZUVFRva2VuaXplci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRTFFRThCN0UyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSQm91bmRlZFJl
ZmVyZW5jZVNwYWNlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUVFOEI4QTI0MTMxOTFGMDBFNzk0
RDYgLyogV2ViWFJGcmFtZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTFFNTE2M0MyNjFFMUExNTAw
RTY5RjI1IC8qIFdlYlhSR2FtZXBhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCQTgyNDEz
MTk2MzAwRTc5NEQ2IC8qIFdlYlhSSW5wdXRTb3VyY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUUx
RUU4Qjg2MjQxMzE5MUYwMEU3OTRENiAvKiBXZWJYUklucHV0U291cmNlQXJyYXkuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTExRTUxNjM4MjYxRTFBMDYwMEU2OUYyNSAvKiBXZWJYUklucHV0U3BhY2Uu
aCBpbiBIZWFkZXJzICovLAorCQkJCUUxMkZEQjAwMjRBMEZEMjAwMDcwMjM2RSAvKiBXZWJYUkxh
eWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTRGMTY5RjI2NDBCQzQxMDA2NjNFQ0UgLyogV2Vi
WFJPcGFxdWVGcmFtZWJ1ZmZlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCODgyNDEzMTkx
RjAwRTc5NEQ2IC8qIFdlYlhSUG9zZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCQTYyNDEz
MTk2MzAwRTc5NEQ2IC8qIFdlYlhSUmVmZXJlbmNlU3BhY2UuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUUxRUU4QjgxMjQxMzE5MUYwMEU3OTRENiAvKiBXZWJYUlJlbmRlclN0YXRlLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlFMUVFOEI5RDI0MTMxOTUwMDBFNzk0RDYgLyogV2ViWFJSaWdpZFRyYW5zZm9y
bS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCQTMyNDEzMTk2MzAwRTc5NEQ2IC8qIFdlYlhS
U2Vzc2lvbi5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCN0QyNDEzMTkxRjAwRTc5NEQ2IC8q
IFdlYlhSU3BhY2UuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUU4Qjg5MjQxMzE5MUYwMEU3OTRE
NiAvKiBXZWJYUlN5c3RlbS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCODcyNDEzMTkxRjAw
RTc5NEQ2IC8qIFdlYlhSVmlldy5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCNzYyNDEzMTkx
RjAwRTc5NEQ2IC8qIFdlYlhSVmlld2VyUG9zZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThC
OTYyNDEzMTk1MDAwRTc5NEQ2IC8qIFdlYlhSVmlld3BvcnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUY1NUIzREUwMTI1MUYxMkQwMDNFRjI2OSAvKiBXZWVrSW5wdXRUeXBlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk4NTAzMUI1MTBBNDRFRkM3MDBGOTkyRTAgLyogV2hlZWxFdmVudC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMkVCQkMzRDgxQjY1OTg4MzAwRjUyNTNEIC8qIFdoZWVsRXZlbnREZWx0YUZp
bHRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU5QjVEOEYxQjY2QTk0RTAwOEM2QTI0IC8qIFdo
ZWVsRXZlbnREZWx0YUZpbHRlck1hYy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0FFMzM1RjIxQUNC
MDlFMjAwRTQwMUVGIC8qIFdoZWVsRXZlbnRUZXN0TW9uaXRvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJOTM4MEY0NzQwOUExMUFCNDAwMUZEQjM0IC8qIFdpZGdldC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMTQxMURDQjExNjRDMzlBODAwRDQ5QkMxIC8qIFdpZHRoQ2FjaGUuaCBpbiBIZWFkZXJzICov
LAorCQkJCTkzOUIwMkVGMEVBMkRCQzQwMEM1NDU3MCAvKiBXaWR0aEl0ZXJhdG9yLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkwRjE1RUQ1QzFCN0VDN0M1MDBFRERGRUIgLyogV2lsbENoYW5nZURhdGEu
aCBpbiBIZWFkZXJzICovLAorCQkJCTlCMjdGQzYwMjM0RDlBREIwMDM5NEE0NiAvKiBXaW5kb3dF
dmVudExvb3AuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDODI0M0U5MEQwQ0ZENzUwMDQ2MEM4RiAv
KiBXaW5kb3dGZWF0dXJlcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJN0U5OUFGNTMwQjEzODQ2NDY4
RkIwMUE1IC8qIFdpbmRvd0ZvY3VzQWxsb3dlZEluZGljYXRvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJNDYwQzc0NTkyNkRENjlCQjAwNDI3RDNFIC8qIFdpbmRvd09yV29ya2VyR2xvYmFsU2NvcGUu
aCBpbiBIZWFkZXJzICovLAorCQkJCTQxRDEyOUNFMUYzRDBFRjYwMEQxNUU0NyAvKiBXaW5kb3dP
cldvcmtlckdsb2JhbFNjb3BlQ2FjaGVzLmggaW4gSGVhZGVycyAqLywKKwkJCQk1MTg1RkNCNDFC
QjRDNEU4MDAxMjg5OEYgLyogV2luZG93T3JXb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFz
ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDYzNTIxQUQyMDgxMDkyQTAwQzI4OTIyIC8qIFdpbmRv
d1Byb3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUUxQkYwMDExNUZGNkZCMDA2RjUyQ0EgLyog
V2luZG93c0tleWJvYXJkQ29kZXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTUwMUJBQUE5MTM5NTBF
MkMwMEY3QUNFQiAvKiBXaW5kUnVsZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTE0ODMyQkUxODdG
NjRDQzAwREE2M0E2IC8qIFdLQ29udGVudE9ic2VydmF0aW9uLmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBMTQ4MzJCRjE4N0Y2NTJDMDBEQTYzQTYgLyogV0tHcmFwaGljcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJQTE0ODMyQzExODdGNjU3QTAwREE2M0E2IC8qIFdLVHlwZXMuaCBpbiBIZWFkZXJzICov
LAorCQkJCUExNDgzMkMzMTg3RjY1REYwMERBNjNBNiAvKiBXS1V0aWxpdGllcy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTE0ODMyQzQxODdGNjYzQzAwREE2M0E2IC8qIFdLVmlldy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJQTE0ODMyQzYxODdGNjY4RjAwREE2M0E2IC8qIFdLVmlld1ByaXZhdGUuaCBp
biBIZWFkZXJzICovLAorCQkJCTM3OTkxOTk3MTIwMERERjQwMEVBMDQxQyAvKiBXT0ZGRmlsZUZv
cm1hdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU0MzQ2NDYwRjU0NkE4MjAwQjBGMUJBIC8qIFdv
cmtlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTQ1NzM0Q0YxRDNBRkQ1OTAxOTA2MDhGIC8qIFdv
cmtlckFuaW1hdGlvbkNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTkxMjc4RDYyMjFE
RURBRjAwMEI1NzE4NCAvKiBXb3JrZXJBdWRpdEFnZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQk0
MUE3RDM1MzFGNDM4RDE2MDA4OTg4REUgLyogV29ya2VyQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbi5o
IGluIEhlYWRlcnMgKi8sCisJCQkJQTVCODFDQ0QxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtlckNv
bnNvbGVBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU1NjM5RDExQzZGMDlFMzAwODA2RDhF
IC8qIFdvcmtlckNvbnNvbGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1NEEwQzY2MURC
ODA1MzYwMDE3QTkwQiAvKiBXb3JrZXJEZWJ1Z2dlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTVC
ODFDQ0UxRkFBNDRERTAwMzdEMUU2IC8qIFdvcmtlckRlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUE1MkIzNDlFMUZBNDE3MDMwMDhCNjI0NiAvKiBXb3JrZXJEZWJ1Z2dlclByb3h5
LmggaW4gSGVhZGVycyAqLywKKwkJCQk5MUUwRERDNDIzMEI0MUYxMDAxOUUxRTMgLyogV29ya2Vy
RE9NRGVidWdnZXJBZ2VudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTdENkIzNDkwRjYxMTA0NTAw
RkY5RkQxIC8qIFdvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU0
MzQ2NDkwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlckdsb2JhbFNjb3BlLmggaW4gSGVhZGVycyAq
LywKKwkJCQkyRTQzNDY0QjBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyR2xvYmFsU2NvcGVQcm94
eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU0QTBDNjIxREI3RjhDMTAwMTdBOTBCIC8qIFdvcmtl
ckluc3BlY3RvckNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1NEEwQzZDMURCODMx
RjkwMDE3QTkwQiAvKiBXb3JrZXJJbnNwZWN0b3JQcm94eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
MThGODMxQjgwRkQ0OEM3ODAwRDhDNTZCIC8qIFdvcmtlckxvYWRlclByb3h5LmggaW4gSGVhZGVy
cyAqLywKKwkJCQkyRTQzNDY0RDBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyTG9jYXRpb24uaCBp
biBIZWFkZXJzICovLAorCQkJCTJFNDM0NjUwMEY1NDZBODIwMEIwRjFCQSAvKiBXb3JrZXJNZXNz
YWdpbmdQcm94eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTM0MzJERTQyNUQzNzdFMzAwNThFNjEy
IC8qIFdvcmtlck1vZHVsZVNjcmlwdExvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTEyNzFB
MEIwRUVFQzc3QTAwRjYxMjEzIC8qIFdvcmtlck5hdmlnYXRvci5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJQTVDQjA1MjUxRkI1MUYzQTAwMDg5Qjk3IC8qIFdvcmtlck5ldHdvcmtBZ2VudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJMkU0MzQ2NTEwRjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlck9iamVjdFBy
b3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0Q2QUFFNjI1MjRFRTFDMDA0MjhCNEIgLyogV29y
a2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTgzOUEwOTVEMjUy
NEYzN0YwMEVFRjMyOCAvKiBXb3JrZXJPcldvcmtsZXRTY3JpcHRDb250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk4M0Y2QUVCRjI1MjdCQjBDMDAzNEJDRDMgLyogV29ya2VyT3JXb3JrbGV0
VGhyZWFkLmggaW4gSGVhZGVycyAqLywKKwkJCQk0MTZFMjlBNjEwMkZBOTYyMDA3RkMxNEUgLyog
V29ya2VyUmVwb3J0aW5nUHJveHkuaCBpbiBIZWFkZXJzICovLAorCQkJCTJFNDM0NjUzMEY1NDZB
ODIwMEIwRjFCQSAvKiBXb3JrZXJSdW5Mb29wLmggaW4gSGVhZGVycyAqLywKKwkJCQlBNUI4MUND
RjFGQUE0NERFMDAzN0QxRTYgLyogV29ya2VyUnVudGltZUFnZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMzQ3RTVGQTI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2NyaXB0RmV0Y2hlci5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJQTdENkIzNDkwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlw
dExvYWRlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkVBNzY4MDQwRkU3MTI2NDAwQUI5QzhBIC8q
IFdvcmtlclNjcmlwdExvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMkU0MzQ2NTUw
RjU0NkE4MjAwQjBGMUJBIC8qIFdvcmtlclRocmVhZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMEI5
MDU2RjkwRjI2ODVGMzAwOTVGRjZBIC8qIFdvcmtlclRocmVhZGFibGVMb2FkZXIuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTk3QUFCRDJEMTRGQTA5RDUwMDc0NTdBRSAvKiBXb3JrZXJUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTNBRkQ3QUQyNTVGNTBFQjAw
RTVFMzBFIC8qIFdvcmtlclRocmVhZFR5cGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUE1NEEwQzY4
MURCODA3RDkwMDE3QTkwQiAvKiBXb3JrZXJUb1BhZ2VGcm9udGVuZENoYW5uZWwuaCBpbiBIZWFk
ZXJzICovLAorCQkJCTUxRjE3NEZFMUYzNTg5OTIwMEM3NDk1MCAvKiBXb3JrZXJUeXBlLmggaW4g
SGVhZGVycyAqLywKKwkJCQk0QkRFQTMyMDIxN0VDNTVGMDA1MkRGQ0QgLyogV29ya2xldC5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJNEJERUEzMjUyMTdGRTJFNDAwNTJERkNEIC8qIFdvcmtsZXRHbG9i
YWxTY29wZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMzQkQ4MTgyNTI0RDRGNTAwNkU3MkIzIC8q
IFdvcmtsZXRHbG9iYWxTY29wZVByb3h5LmggaW4gSGVhZGVycyAqLywKKwkJCQk4M0FDRDAxMzI1
MjI5RTEwMDAwRDEyNEUgLyogV29ya2xldE9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCTgz
NEE2QTNBMjUyNjg0NEEwMDc0N0Y1RCAvKiBXb3JrbGV0UGFyYW1ldGVycy5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJODMzQkQ4MTcyNTI0RDRGMjAwNkU3MkIzIC8qIFdvcmtsZXRQZW5kaW5nVGFza3Mu
aCBpbiBIZWFkZXJzICovLAorCQkJCTkzMzA5RTI0MDk5RTY0OTIwMDU2RTU4MSAvKiBXcmFwQ29u
dGVudHNJbkR1bW15U3BhbkNvbW1hbmQuaCBpbiBIZWFkZXJzICovLAorCQkJCTQxNkU2RkU4MUJC
RDEyREYwMDBBNjA1MyAvKiBXcml0YWJsZVN0cmVhbUludGVybmFsc0J1aWx0aW5zLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk5QkFGM0IyNDEyQzFBMzk4MDAwMTRCRjEgLyogV3JpdGluZ0RpcmVjdGlv
bi5oIGluIEhlYWRlcnMgKi8sCisJCQkJMTQ0NzZBQTgxNURDNEJCMTAwMzA1REIyIC8qIFdyaXRp
bmdNb2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQk2NTY1ODIwMjA5RDE1MDhEMDAwRTYxRDcgLyog
WExpbmtOYW1lcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJODMwNzg0QjIxQzUyRUUyQzAwMTA0RDFE
IC8qIFhNTERvY3VtZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQkwMEI5MzE4ODEzQkE4REJBMDAz
NUE5NDggLyogWE1MRG9jdW1lbnRQYXJzZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCTAwQjkzMThD
MTNCQThEQ0MwMDM1QTk0OCAvKiBYTUxEb2N1bWVudFBhcnNlclNjb3BlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk1OUMyODA0NjEzOERDMjQxMDA3OUI3RTIgLyogWE1MRXJyb3JzLmggaW4gSGVhZGVy
cyAqLywKKwkJCQlCQzc3MkM0NzBDNEVCMkM2MDA4MzI4NUYgLyogWE1MSHR0cFJlcXVlc3QuaCBp
biBIZWFkZXJzICovLAorCQkJCTgzRDM1QUVDMUM3MTg3RkEwMEY3MEQ1QSAvKiBYTUxIdHRwUmVx
dWVzdEV2ZW50VGFyZ2V0LmggaW4gSGVhZGVycyAqLywKKwkJCQlGOUYwRUQ3QTBEQjUwQ0EyMDBE
MTZEQjkgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50LmggaW4gSGVhZGVycyAqLywKKwkJ
CQlBMTM2QTAwRDExMzREQkQyMDBDQzhENTAgLyogWE1MSHR0cFJlcXVlc3RQcm9ncmVzc0V2ZW50
VGhyb3R0bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUJDREZENDhFMEUzMDUyOTAwMDlEMTBBRCAv
KiBYTUxIdHRwUmVxdWVzdFVwbG9hZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTgzM0M4MEQwQTJD
RjI1NjAwRDU3NjY0IC8qIFhNTE5hbWVzLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMTVBMzZENzEx
MDQ1NzIwMDBCN0I2MzkgLyogWE1MTlNOYW1lcy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUFDRTUz
RUIwQThEMThFNzAwMjI5NDdEIC8qIFhNTFNlcmlhbGl6ZXIuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTU5MDVBREMwMTMwMkYzQ0UwMEYxMTZERiAvKiBYTUxUcmVlVmlld2VyLmggaW4gSGVhZGVycyAq
LywKKwkJCQkxQUI3RkM2OTBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0b3IuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTFBQjdGQzZDMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aEV4cHJlc3Np
b24uaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQjdGQzZGMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0
aEV4cHJlc3Npb25Ob2RlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUI3RkM3MTBBOEI5MkVDMDBE
OUQzN0IgLyogWFBhdGhGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUMyOUEwMEJC
MDRDNkIwMEVBMTg3QiAvKiBYUGF0aE5vZGVTZXQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQjdG
Qzc2MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aE5TUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCTFBQjdGQzc5MEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0aFBhcnNlci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJMUFCN0ZDN0IwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoUGF0aC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMUFCN0ZDN0QwQThCOTJFQzAwRDlEMzdCIC8qIFhQYXRoUHJlZGljYXRlLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkxQUI3RkM3RjBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhSZXN1
bHQuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQjdGQzgyMEE4QjkyRUMwMEQ5RDM3QiAvKiBYUGF0
aFN0ZXAuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQjdGQzg0MEE4QjkyRUMwMEQ5RDM3QiAvKiBY
UGF0aFV0aWwuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBQjdGQzg2MEE4QjkyRUMwMEQ5RDM3QiAv
KiBYUGF0aFZhbHVlLmggaW4gSGVhZGVycyAqLywKKwkJCQkxQUI3RkM4ODBBOEI5MkVDMDBEOUQz
N0IgLyogWFBhdGhWYXJpYWJsZVJlZmVyZW5jZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThC
OUMyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSRW52aXJvbm1lbnRCbGVuZE1vZGUuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUUxRUU4Qjk3MjQxMzE5NTAwMEU3OTRENiAvKiBYUkV5ZS5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJRTFFRThCOEYyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSRnJhbWVSZXF1ZXN0Q2FsbGJh
Y2suaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUU4QjkyMjQxMzE5NTAwMEU3OTRENiAvKiBYUkhh
bmRlZG5lc3MuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUU4QjlGMjQxMzE5NTAwMEU3OTRENiAv
KiBYUklucHV0U291cmNlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUU4Qjk5MjQxMzE5
NTAwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2ZW50LmggaW4gSGVhZGVycyAqLywK
KwkJCQlFMTJBOUY0QTI0OEE5OUUyMDAzRjA2QzggLyogWFJJbnRlcmFjdGlvbk1vZGUuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUUxRUU4Qjg0MjQxMzE5MUYwMEU3OTRENiAvKiBYUlJlZmVyZW5jZVNw
YWNlRXZlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRUU4Qjc3MjQxMzE5MUYwMEU3OTRENiAv
KiBYUlJlZmVyZW5jZVNwYWNlVHlwZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCNzkyNDEz
MTkxRjAwRTc5NEQ2IC8qIFhSUmVuZGVyU3RhdGVJbml0LmggaW4gSGVhZGVycyAqLywKKwkJCQlF
MUVFOEI4RDI0MTMxOTUwMDBFNzk0RDYgLyogWFJTZXNzaW9uRXZlbnQuaCBpbiBIZWFkZXJzICov
LAorCQkJCUUxRUU4QkE1MjQxMzE5NjMwMEU3OTRENiAvKiBYUlNlc3Npb25Jbml0LmggaW4gSGVh
ZGVycyAqLywKKwkJCQlFMUVFOEI5QTI0MTMxOTUwMDBFNzk0RDYgLyogWFJTZXNzaW9uTW9kZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCOTAyNDEzMTk1MDAwRTc5NEQ2IC8qIFhSVGFyZ2V0
UmF5TW9kZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTFFRThCODIyNDEzMTkxRjAwRTc5NEQ2IC8q
IFhSVmlzaWJpbGl0eVN0YXRlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUVFOEI5RTI0MTMxOTUw
MDBFNzk0RDYgLyogWFJXZWJHTExheWVySW5pdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODUyMTdF
MDMwQTVFQ0Q0NzAwREI4RDAwIC8qIFhTTEltcG9ydFJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJ
CTkzRjE5OUVDMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xTdHlsZVNoZWV0LmggaW4gSGVhZGVycyAq
LywKKwkJCQlFMUYxRTgzMDBDM0MyQkI5MDA2REIzOTEgLyogWFNMVEV4dGVuc2lvbnMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTkzRjE5OUVEMDgyNDVFNTkwMDFFOUFCQyAvKiBYU0xUUHJvY2Vzc29y
LmggaW4gSGVhZGVycyAqLywKKwkJCQlFMUJFNTEyRTBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVu
aWNvZGVTb3J0LmggaW4gSGVhZGVycyAqLywKKwkJCQk5NzdFMkUwRjEyRjBGQzlDMDBDMTMzNzkg
LyogWFNTQXVkaXRvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTc3RTJFMEYxMkYwRkM5QzAwQzEz
MzgwIC8qIFhTU0F1ZGl0b3JEZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU0MTZGRTYx
ODgxMEVGODAwMDlGQzVGIC8qIFlvdVR1YmVFbWJlZFNoYWRvd0VsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAorCQkJCTdBNTUxNUY1MTkxODMwQTMwMDk2ODdEMiAvKiBZb3VUdWJlUGx1Z2luUmVwbGFj
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCUZENTM3MzUzMTM3QjY1MTgwMDAwOERDRSAvKiBa
ZXJvUG9sZS5oIGluIEhlYWRlcnMgKi8sCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQ
b3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CisJCUUxQkE2NkY2MTc0MkJERTAwMEMyMDI1MSAvKiBI
ZWFkZXJzICovID0geworCQkJaXNhID0gUEJYSGVhZGVyc0J1aWxkUGhhc2U7CisJCQlidWlsZEFj
dGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJcnVuT25seUZv
ckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCX07CisvKiBFbmQgUEJYSGVhZGVyc0J1
aWxkUGhhc2Ugc2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhOYXRpdmVUYXJnZXQgc2VjdGlvbiAq
LworCQk0MTdEQTZDRjEzNzM0RTAyMDA3QzU3RkIgLyogV2ViQ29yZVRlc3RTdXBwb3J0ICovID0g
eworCQkJaXNhID0gUEJYTmF0aXZlVGFyZ2V0OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9
IDQxN0RBNkQ4MTM3MzRFNDcwMDdDNTdGQiAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9y
IFBCWE5hdGl2ZVRhcmdldCAiV2ViQ29yZVRlc3RTdXBwb3J0IiAqLzsKKwkJCWJ1aWxkUGhhc2Vz
ID0gKAorCQkJCTQxN0RBNkNDMTM3MzRFMDIwMDdDNTdGQiAvKiBIZWFkZXJzICovLAorCQkJCTQx
N0RBNkNEMTM3MzRFMDIwMDdDNTdGQiAvKiBTb3VyY2VzICovLAorCQkJCTQxN0RBNkNFMTM3MzRF
MDIwMDdDNTdGQiAvKiBGcmFtZXdvcmtzICovLAorCQkJKTsKKwkJCWJ1aWxkUnVsZXMgPSAoCisJ
CQkpOworCQkJZGVwZW5kZW5jaWVzID0gKAorCQkJCTQxN0RBNkQ1MTM3MzRFMEQwMDdDNTdGQiAv
KiBQQlhUYXJnZXREZXBlbmRlbmN5ICovLAorCQkJKTsKKwkJCW5hbWUgPSBXZWJDb3JlVGVzdFN1
cHBvcnQ7CisJCQlwcm9kdWN0TmFtZSA9IFdlYkNvcmVUZXN0U3VwcG9ydDsKKwkJCXByb2R1Y3RS
ZWZlcmVuY2UgPSA0MTdEQTZEMDEzNzM0RTAyMDA3QzU3RkIgLyogbGliV2ViQ29yZVRlc3RTdXBw
b3J0LmR5bGliICovOworCQkJcHJvZHVjdFR5cGUgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5s
aWJyYXJ5LmR5bmFtaWMiOworCQl9OworCQk5M0YxOThBNTA4MjQ1RTU5MDAxRTlBQkMgLyogV2Vi
Q29yZSAqLyA9IHsKKwkJCWlzYSA9IFBCWE5hdGl2ZVRhcmdldDsKKwkJCWJ1aWxkQ29uZmlndXJh
dGlvbkxpc3QgPSAxNDlDMjgzOTA4OTAyQjExMDA4QTlFRkMgLyogQnVpbGQgY29uZmlndXJhdGlv
biBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIldlYkNvcmUiICovOworCQkJYnVpbGRQaGFzZXMg
PSAoCisJCQkJNUQyRjdEQTAwQzY4NzlDNjAwQjVCNzJCIC8qIFVwZGF0ZSBJbmZvLnBsaXN0IHdp
dGggdmVyc2lvbiBpbmZvcm1hdGlvbiAqLywKKwkJCQlBNUU3OUNFQzFFNjdGMkNGMDBGQjgxNTMg
LyogTWFrZSBGcmFtZXdvcmtzIFN5bWJvbGljIExpbmsgKi8sCisJCQkJOTNGMTk4QTYwODI0NUU1
OTAwMUU5QUJDIC8qIEhlYWRlcnMgKi8sCisJCQkJMUMxMUNDQjQwQUE2MDkzNzAwREFEQjIwIC8q
IENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJMzcxN0Q3RTcxN0VDQzU3MzAwM0MyNzZE
IC8qIENvcHkgU2NyaXB0cyAqLywKKwkJCQk0NDZFRTRFNzI1NURGMDBEMDA0NTQ0NjMgLyogQ29u
Y2F0ZW5hdGUgYW5kIENvcHkgTG9jYWxpemFibGUuc3RyaW5ncyAqLywKKwkJCQk5M0YxOTlGRDA4
MjQ1RTU5MDAxRTlBQkMgLyogUmVzb3VyY2VzICovLAorCQkJCUNEMERCRjAwMTQyMjc2NTcwMDI4
MDI2MyAvKiBDb3B5IEF1ZGlvIFJlc291cmNlcyAqLywKKwkJCQk5M0YxOUEwQzA4MjQ1RTU5MDAx
RTlBQkMgLyogU291cmNlcyAqLywKKwkJCQk5M0YxOUIxMjA4MjQ1RTU5MDAxRTlBQkMgLyogRnJh
bWV3b3JrcyAqLywKKwkJCQk1RDBENTQwRDBFOTg2MkY2MDAyOUUyMjMgLyogQ2hlY2sgRm9yIFdl
YWsgVlRhYmxlcyBhbmQgRXh0ZXJuYWxzICovLAorCQkJCTM3QTFFQUEzMTQyNjk5QkMwMDg3RjQy
NSAvKiBDaGVjayBGb3IgSW5hcHByb3ByaWF0ZSBPYmplY3RpdmUtQyBDbGFzcyBOYW1lcyAqLywK
KwkJCQk1REY1MDg4NzExNkYzMDc3MDA1MjAyQUIgLyogQ2hlY2sgRm9yIEluYXBwcm9wcmlhdGUg
RmlsZXMgSW4gRnJhbWV3b3JrICovLAorCQkJCTcxRDZBQTM4MURBNEU2OTQwMEIyMzk2OSAvKiBD
b3B5IG1vZGVybiBtZWRpYSBjb250cm9scyBjb2RlIGFuZCBhc3NldHMgKi8sCisJCQkJNTM3OUM3
QUEyMUU1Mjg3MTAwRTRBOEY2IC8qIENoZWNrIC54Y2ZpbGVsaXN0cyAqLywKKwkJCSk7CisJCQli
dWlsZFJ1bGVzID0gKAorCQkJKTsKKwkJCWRlcGVuZGVuY2llcyA9ICgKKwkJCQkxQzA5RDA2ODFF
MzIwNzlEMDA3MjVGMTggLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCQlERDA0MUZGMTA5
RDlFMzI1MDAxMEFGMkEgLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCQk1MzU1RThEQjFG
OTY3RUQzMDAzMUUwOEMgLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLywKKwkJCSk7CisJCQluYW1l
ID0gV2ViQ29yZTsKKwkJCXByb2R1Y3RJbnN0YWxsUGF0aCA9IC9TeXN0ZW0vTGlicmFyeS9GcmFt
ZXdvcmtzL1dlYktpdC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9GcmFtZXdvcmtzOworCQkJcHJvZHVj
dE5hbWUgPSBXZWJLaXQ7CisJCQlwcm9kdWN0UmVmZXJlbmNlID0gOTNGMTlCMUEwODI0NUU1QTAw
MUU5QUJDIC8qIFdlYkNvcmUuZnJhbWV3b3JrICovOworCQkJcHJvZHVjdFR5cGUgPSAiY29tLmFw
cGxlLnByb2R1Y3QtdHlwZS5mcmFtZXdvcmsiOworCQl9OworCQlFMUJBNjZGMzE3NDJCREUwMDBD
MjAyNTEgLyogV2ViQ29yZVRlc3RTaGltICovID0geworCQkJaXNhID0gUEJYTmF0aXZlVGFyZ2V0
OworCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEUxQkE2NzEyMTc0MkJERTAwMEMyMDI1MSAv
KiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAiV2ViQ29yZVRl
c3RTaGltIiAqLzsKKwkJCWJ1aWxkUGhhc2VzID0gKAorCQkJCUUxQkE2NkY2MTc0MkJERTAwMEMy
MDI1MSAvKiBIZWFkZXJzICovLAorCQkJCUUxQkE2NzAyMTc0MkJERTAwMEMyMDI1MSAvKiBTb3Vy
Y2VzICovLAorCQkJCUUxQkE2NzBFMTc0MkJERTAwMEMyMDI1MSAvKiBGcmFtZXdvcmtzICovLAor
CQkJKTsKKwkJCWJ1aWxkUnVsZXMgPSAoCisJCQkpOworCQkJZGVwZW5kZW5jaWVzID0gKAorCQkJ
CUUxQkE2NkY0MTc0MkJERTAwMEMyMDI1MSAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovLAorCQkJ
KTsKKwkJCW5hbWUgPSBXZWJDb3JlVGVzdFNoaW07CisJCQlwcm9kdWN0TmFtZSA9IFdlYkNvcmVU
ZXN0U3VwcG9ydDsKKwkJCXByb2R1Y3RSZWZlcmVuY2UgPSBFMUJBNjcxNjE3NDJCREUwMDBDMjAy
NTEgLyogbGliV2ViQ29yZVRlc3RTaGltLmR5bGliICovOworCQkJcHJvZHVjdFR5cGUgPSAiY29t
LmFwcGxlLnByb2R1Y3QtdHlwZS5saWJyYXJ5LmR5bmFtaWMiOworCQl9OworLyogRW5kIFBCWE5h
dGl2ZVRhcmdldCBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWFByb2plY3Qgc2VjdGlvbiAqLwor
CQkwODY3RDY5MEZFODQwMjhGQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi8gPSB7CisJCQlp
c2EgPSBQQlhQcm9qZWN0OworCQkJYXR0cmlidXRlcyA9IHsKKwkJCQlEZWZhdWx0QnVpbGRTeXN0
ZW1UeXBlRm9yV29ya3NwYWNlID0gT3JpZ2luYWw7CisJCQkJTGFzdFN3aWZ0VXBkYXRlQ2hlY2sg
PSAwNzAwOworCQkJCUxhc3RVcGdyYWRlQ2hlY2sgPSAxMTQwOworCQkJCVRhcmdldEF0dHJpYnV0
ZXMgPSB7CisJCQkJCTUzMjVCREM2MjFERkYzMzcwMEEwREVFMSA9IHsKKwkJCQkJCUNyZWF0ZWRP
blRvb2xzVmVyc2lvbiA9IDEwLjE7CisJCQkJCQlQcm92aXNpb25pbmdTdHlsZSA9IEF1dG9tYXRp
YzsKKwkJCQkJfTsKKwkJCQl9OworCQkJfTsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAx
NDlDMjg0MzA4OTAyQjExMDA4QTlFRkMgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQ
QlhQcm9qZWN0ICJXZWJDb3JlIiAqLzsKKwkJCWNvbXBhdGliaWxpdHlWZXJzaW9uID0gIlhjb2Rl
IDMuMiI7CisJCQlkZXZlbG9wbWVudFJlZ2lvbiA9IGVuOworCQkJaGFzU2Nhbm5lZEZvckVuY29k
aW5ncyA9IDE7CisJCQlrbm93blJlZ2lvbnMgPSAoCisJCQkJRW5nbGlzaCwKKwkJCQlKYXBhbmVz
ZSwKKwkJCQlGcmVuY2gsCisJCQkJR2VybWFuLAorCQkJCVNwYW5pc2gsCisJCQkJRHV0Y2gsCisJ
CQkJSXRhbGlhbiwKKwkJCQllbiwKKwkJCSk7CisJCQltYWluR3JvdXAgPSAwODY3RDY5MUZFODQw
MjhGQzAyQUFDMDcgLyogV2ViQ29yZSAqLzsKKwkJCXByb2R1Y3RSZWZHcm91cCA9IDAzNDc2OERG
RkYzOEE1MDQxMURCOUM4QiAvKiBQcm9kdWN0cyAqLzsKKwkJCXByb2plY3REaXJQYXRoID0gIiI7
CisJCQlwcm9qZWN0UmVmZXJlbmNlcyA9ICgKKwkJCQl7CisJCQkJCVByb2R1Y3RHcm91cCA9IDFD
MDlEMDRDMUUzMUMzMjgwMDcyNUYxOCAvKiBQcm9kdWN0cyAqLzsKKwkJCQkJUHJvamVjdFJlZiA9
IDFDMDlEMDRCMUUzMUMzMjgwMDcyNUYxOCAvKiBQQUwueGNvZGVwcm9qICovOworCQkJCX0sCisJ
CQkpOworCQkJcHJvamVjdFJvb3QgPSAiIjsKKwkJCXRhcmdldHMgPSAoCisJCQkJNDE4MTZGNzkx
Mzg1OUM1NTAwNTdBQUE0IC8qIEFsbCAqLywKKwkJCQk5M0YxOThBNTA4MjQ1RTU5MDAxRTlBQkMg
LyogV2ViQ29yZSAqLywKKwkJCQk1MzU1RThEMTFGOTY3RTlEMDAzMUUwOEMgLyogR2VuZXJhdGUg
VW5pZmllZCBTb3VyY2VzICovLAorCQkJCUREMDQxRkJFMDlEOUREQkUwMDEwQUYyQSAvKiBEZXJp
dmVkIFNvdXJjZXMgKi8sCisJCQkJNDE3REE2Q0YxMzczNEUwMjAwN0M1N0ZCIC8qIFdlYkNvcmVU
ZXN0U3VwcG9ydCAqLywKKwkJCQlFMUJBNjZGMzE3NDJCREUwMDBDMjAyNTEgLyogV2ViQ29yZVRl
c3RTaGltICovLAorCQkJCTUzMjVCREM2MjFERkYzMzcwMEEwREVFMSAvKiBBcHBseSBDb25maWd1
cmF0aW9uIHRvIFhDRmlsZUxpc3RzICovLAorCQkJKTsKKwkJfTsKKy8qIEVuZCBQQlhQcm9qZWN0
IHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYUmVmZXJlbmNlUHJveHkgc2VjdGlvbiAqLworCQkx
QzA5RDA1MDFFMzFDMzI5MDA3MjVGMTggLyogbGliUEFMLmEgKi8gPSB7CisJCQlpc2EgPSBQQlhS
ZWZlcmVuY2VQcm94eTsKKwkJCWZpbGVUeXBlID0gYXJjaGl2ZS5hcjsKKwkJCXBhdGggPSBsaWJQ
QUwuYTsKKwkJCXJlbW90ZVJlZiA9IDFDMDlEMDRGMUUzMUMzMjkwMDcyNUYxOCAvKiBQQlhDb250
YWluZXJJdGVtUHJveHkgKi87CisJCQlzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOwor
CQl9OworLyogRW5kIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJY
UmVzb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovCisJCTkzRjE5OUZEMDgyNDVFNTkwMDFFOUFC
QyAvKiBSZXNvdXJjZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhSZXNvdXJjZXNCdWlsZFBoYXNlOwor
CQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCTJENTBB
NEI3MUNFMTBFMDAwMDE5ODA0OSAvKiBBdHRhY2htZW50UGxhY2Vob2xkZXIucG5nIGluIFJlc291
cmNlcyAqLywKKwkJCQkyRDUwQTRCODFDRTEwRTAwMDAxOTgwNDkgLyogQXR0YWNobWVudFBsYWNl
aG9sZGVyQDJ4LnBuZyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJQTFBQTlBQjkxRDIzOTExNTAwRkVB
REIzIC8qIENvbnRlbnRGaWx0ZXJCbG9ja2VkUGFnZS5odG1sIGluIFJlc291cmNlcyAqLywKKwkJ
CQlBMTFFOEMwNTFCMUUyOEY0MDAwM0E3QzcgLyogY29weUN1cnNvci5wbmcgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCTJEOUYwRTEzMTRGRjFDQkYwMEJBMEZGNyAvKiBsaW5lYXJTUkdCLmljYyBpbiBS
ZXNvdXJjZXMgKi8sCisJCQkJRTU5REQ0QjgyMTA5ODI4NzAwM0M4QjQ3IC8qIExpc3RCdXR0b25B
cnJvdy5wbmcgaW4gUmVzb3VyY2VzICovLAorCQkJCUU1MTY2OTkxMjBGRjk5MTgwMDlEMkMyNyAv
KiBMaXN0QnV0dG9uQXJyb3dAMngucG5nIGluIFJlc291cmNlcyAqLywKKwkJCQk4MzdBODAxMzFF
MUUxMjczMDAwMjZCOUYgLyogTG9jYWxpemFibGUuc3RyaW5nc2RpY3QgaW4gUmVzb3VyY2VzICov
LAorCQkJCTkzMTUzQkUyMTQxOTVBNTcwMEZDRjVCRSAvKiBtaXNzaW5nSW1hZ2UucG5nIGluIFJl
c291cmNlcyAqLywKKwkJCQk5MzE1M0JEQTE0MTgxRjdBMDBGQ0Y1QkUgLyogbWlzc2luZ0ltYWdl
QDJ4LnBuZyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJMzE4ODkxNjExQUI3RUVBMTAwRUE2MjdCIC8q
IG1pc3NpbmdJbWFnZUAzeC5wbmcgaW4gUmVzb3VyY2VzICovLAorCQkJCTcxQTFCNjA4MURFRTVB
RDcwMDczQkNGQiAvKiBtb2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanMg
aW4gUmVzb3VyY2VzICovLAorCQkJCUExMUU4QzA2MUIxRTI4RkEwMDAzQTdDNyAvKiBtb3ZlQ3Vy
c29yLnBuZyBpbiBSZXNvdXJjZXMgKi8sCisJCQkJQTExRThDMDcxQjFFMjhGRTAwMDNBN0M3IC8q
IG5vcnRoRWFzdFNvdXRoV2VzdFJlc2l6ZUN1cnNvci5wbmcgaW4gUmVzb3VyY2VzICovLAorCQkJ
CUExMUU4QzA4MUIxRTI5MDIwMDAzQTdDNyAvKiBub3J0aFNvdXRoUmVzaXplQ3Vyc29yLnBuZyBp
biBSZXNvdXJjZXMgKi8sCisJCQkJQTExRThDMDkxQjFFMjkwNzAwMDNBN0M3IC8qIG5vcnRoV2Vz
dFNvdXRoRWFzdFJlc2l6ZUN1cnNvci5wbmcgaW4gUmVzb3VyY2VzICovLAorCQkJCTkzMTUzQkRD
MTQxOTU5QkMwMEZDRjVCRSAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5lci5wbmcgaW4gUmVzb3VyY2Vz
ICovLAorCQkJCTkzNzA5MThEMTQxNkQ4NkIwMDQ3NzMzMyAvKiB0ZXh0QXJlYVJlc2l6ZUNvcm5l
ckAyeC5wbmcgaW4gUmVzb3VyY2VzICovLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50
UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OworLyogRW5kIFBCWFJlc291cmNlc0J1aWxkUGhhc2Ug
c2VjdGlvbiAqLworCisvKiBCZWdpbiBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2Ugc2VjdGlvbiAq
LworCQkzN0ExRUFBMzE0MjY5OUJDMDA4N0Y0MjUgLyogQ2hlY2sgRm9yIEluYXBwcm9wcmlhdGUg
T2JqZWN0aXZlLUMgQ2xhc3MgTmFtZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1
aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAo
CisJCQkpOworCQkJaW5wdXRQYXRocyA9ICgKKwkJCQkiJChUQVJHRVRfQlVJTERfRElSKS8kKEVY
RUNVVEFCTEVfUEFUSCkiLAorCQkJKTsKKwkJCW5hbWUgPSAiQ2hlY2sgRm9yIEluYXBwcm9wcmlh
dGUgT2JqZWN0aXZlLUMgQ2xhc3MgTmFtZXMiOworCQkJb3V0cHV0UGF0aHMgPSAoCisJCQkpOwor
CQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCQlzaGVsbFBhdGgg
PSAvYmluL3NoOworCQkJc2hlbGxTY3JpcHQgPSAiaWYgWyBcIiR7QUNUSU9OfVwiID0gXCJpbnN0
YWxsaGRyc1wiIC1vIFwiJHtBQ1RJT059XCIgPSBcImluc3RhbGxhcGlcIiBdOyB0aGVuXG4gICAg
ZXhpdCAwO1xuZmlcblxuaWYgWyAtZiAuLi8uLi9Ub29scy9TY3JpcHRzL2NoZWNrLWZvci1pbmFw
cHJvcHJpYXRlLW9iamMtY2xhc3MtbmFtZXMgXTsgdGhlblxuICAgIC4uLy4uL1Rvb2xzL1Njcmlw
dHMvY2hlY2stZm9yLWluYXBwcm9wcmlhdGUtb2JqYy1jbGFzcy1uYW1lcyBXZWIgfHwgZXhpdCAk
P1xuZmlcbiI7CisJCX07CisJCTQ0NkVFNEU3MjU1REYwMEQwMDQ1NDQ2MyAvKiBDb25jYXRlbmF0
ZSBhbmQgQ29weSBMb2NhbGl6YWJsZS5zdHJpbmdzICovID0geworCQkJaXNhID0gUEJYU2hlbGxT
Y3JpcHRCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZp
bGVzID0gKAorCQkJKTsKKwkJCWlucHV0RmlsZUxpc3RQYXRocyA9ICgKKwkJCSk7CisJCQlpbnB1
dFBhdGhzID0gKAorCQkJCSRTUkNST09UL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MsCisJ
CQkJJEJVSUxUX1BST0RVQ1RTX0RJUi9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0xvY2FsaXphYmxl
QWRkaXRpb25zLnN0cmluZ3Mub3V0LAorCQkJKTsKKwkJCW5hbWUgPSAiQ29uY2F0ZW5hdGUgYW5k
IENvcHkgTG9jYWxpemFibGUuc3RyaW5ncyI7CisJCQlvdXRwdXRGaWxlTGlzdFBhdGhzID0gKAor
CQkJKTsKKwkJCW91dHB1dFBhdGhzID0gKAorCQkJCSRCVUlMVF9QUk9EVUNUU19ESVIvJFVOTE9D
QUxJWkVEX1JFU09VUkNFU19GT0xERVJfUEFUSC9Mb2NhbGl6YWJsZS5zdHJpbmdzLAorCQkJKTsK
KwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQkJc2hlbGxQYXRo
ID0gL2Jpbi9zaDsKKwkJCXNoZWxsU2NyaXB0ID0gImlmIFsgXCIke0FDVElPTn1cIiA9IFwiaW5z
dGFsbGhkcnNcIiAtbyBcIiR7QUNUSU9OfVwiID0gXCJpbnN0YWxsYXBpXCIgXTsgdGhlblxuICAg
IGV4aXQgMDtcbmZpXG5cbkRTVF9ESVI9XCIkQlVJTFRfUFJPRFVDVFNfRElSLyRVTkxPQ0FMSVpF
RF9SRVNPVVJDRVNfRk9MREVSX1BBVEgvZW4ubHByb2pcIlxubWtkaXIgLXAgXCIkRFNUX0RJUlwi
XG5cbmlmIFsgLWUgJEJVSUxUX1BST0RVQ1RTX0RJUi9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0xv
Y2FsaXphYmxlQWRkaXRpb25zLnN0cmluZ3Mub3V0ICBdIDsgdGhlblxuICAgIGNhdCAkU1JDUk9P
VC9lbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzICRCVUlMVF9QUk9EVUNUU19ESVIvRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9Mb2NhbGl6YWJsZUFkZGl0aW9ucy5zdHJpbmdzLm91dCA+ICREU1Rf
RElSL0xvY2FsaXphYmxlLnN0cmluZ3NcbmVsc2VcbiAgICBjcCAkU1JDUk9PVC9lbi5scHJvai9M
b2NhbGl6YWJsZS5zdHJpbmdzICREU1RfRElSL0xvY2FsaXphYmxlLnN0cmluZ3NcbmZpXG4iOwor
CQl9OworCQk1MzI1QkRDQzIxREZGMzNFMDBBMERFRTEgLyogU2hlbGxTY3JpcHQgKi8gPSB7CisJ
CQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAy
MTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJaW5wdXRGaWxlTGlzdFBhdGhzID0g
KAorCQkJKTsKKwkJCWlucHV0UGF0aHMgPSAoCisJCQkpOworCQkJb3V0cHV0RmlsZUxpc3RQYXRo
cyA9ICgKKwkJCSk7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVw
bG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7CisJCQlz
aGVsbFNjcmlwdCA9ICJldmFsIFwiJHtXS19TVUJMQVVOQ0hfU0NSSVBUX1BBUkFNRVRFUlNbQF19
XCJcbiI7CisJCX07CisJCTUzNTVFOEQyMUY5NjdFOUQwMDMxRTA4QyAvKiBHZW5lcmF0ZSBVbmlm
aWVkIFNvdXJjZXMgKi8gPSB7CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJ
CQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJ
aW5wdXRGaWxlTGlzdFBhdGhzID0gKAorCQkJKTsKKwkJCWlucHV0UGF0aHMgPSAoCisJCQkJIiQo
U1JDUk9PVCkvU2NyaXB0cy9nZW5lcmF0ZS11bmlmaWVkLXNvdXJjZXMuc2giLAorCQkJCSIkKFNS
Q1JPT1QpL1NvdXJjZXMudHh0IiwKKwkJCQkiJChTUkNST09UKS9Tb3VyY2VzQ29jb2EudHh0IiwK
KwkJCSk7CisJCQluYW1lID0gIkdlbmVyYXRlIFVuaWZpZWQgU291cmNlcyI7CisJCQlvdXRwdXRG
aWxlTGlzdFBhdGhzID0gKAorCQkJCSIkKFNSQ1JPT1QpL1VuaWZpZWRTb3VyY2VzLW91dHB1dC54
Y2ZpbGVsaXN0IiwKKwkJCSk7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCSk7CisJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7
CisJCQlzaGVsbFNjcmlwdCA9ICJTY3JpcHRzL2dlbmVyYXRlLXVuaWZpZWQtc291cmNlcy5zaFxu
IjsKKwkJfTsKKwkJNTM3OUM3QUEyMUU1Mjg3MTAwRTRBOEY2IC8qIENoZWNrIC54Y2ZpbGVsaXN0
cyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNoZWxsU2NyaXB0QnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0
aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCSk7CisJCQlpbnB1dEZpbGVM
aXN0UGF0aHMgPSAoCisJCQkpOworCQkJaW5wdXRQYXRocyA9ICgKKwkJCSk7CisJCQluYW1lID0g
IkNoZWNrIC54Y2ZpbGVsaXN0cyI7CisJCQlvdXRwdXRGaWxlTGlzdFBhdGhzID0gKAorCQkJKTsK
KwkJCW91dHB1dFBhdGhzID0gKAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHBy
b2Nlc3NpbmcgPSAwOworCQkJc2hlbGxQYXRoID0gL2Jpbi9zaDsKKwkJCXNoZWxsU2NyaXB0ID0g
IlNjcmlwdHMvY2hlY2steGNmaWxlbGlzdHMuc2hcbiI7CisJCX07CisJCTVEMEQ1NDBEMEU5ODYy
RjYwMDI5RTIyMyAvKiBDaGVjayBGb3IgV2VhayBWVGFibGVzIGFuZCBFeHRlcm5hbHMgKi8gPSB7
CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sg
PSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJaW5wdXRQYXRocyA9ICgKKwkJ
CQkiJChUQVJHRVRfQlVJTERfRElSKS8kKEVYRUNVVEFCTEVfUEFUSCkiLAorCQkJKTsKKwkJCW5h
bWUgPSAiQ2hlY2sgRm9yIFdlYWsgVlRhYmxlcyBhbmQgRXh0ZXJuYWxzIjsKKwkJCW91dHB1dFBh
dGhzID0gKAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAw
OworCQkJc2hlbGxQYXRoID0gL2Jpbi9zaDsKKwkJCXNoZWxsU2NyaXB0ID0gImlmIFsgXCIke0FD
VElPTn1cIiA9IFwiaW5zdGFsbGhkcnNcIiAtbyBcIiR7QUNUSU9OfVwiID0gXCJpbnN0YWxsYXBp
XCIgXTsgdGhlblxuICAgIGV4aXQgMDtcbmZpXG5cbmlmIFsgLWYgLi4vLi4vVG9vbHMvU2NyaXB0
cy9jaGVjay1mb3Itd2Vhay12dGFibGVzLWFuZC1leHRlcm5hbHMgXTsgdGhlblxuICAgIC4uLy4u
L1Rvb2xzL1NjcmlwdHMvY2hlY2stZm9yLXdlYWstdnRhYmxlcy1hbmQtZXh0ZXJuYWxzIHx8IGV4
aXQgJD9cbmZpXG4iOworCQl9OworCQk1RDJGN0RBMDBDNjg3OUM2MDBCNUI3MkIgLyogVXBkYXRl
IEluZm8ucGxpc3Qgd2l0aCB2ZXJzaW9uIGluZm9ybWF0aW9uICovID0geworCQkJaXNhID0gUEJY
U2hlbGxTY3JpcHRCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsK
KwkJCWZpbGVzID0gKAorCQkJKTsKKwkJCWlucHV0UGF0aHMgPSAoCisJCQkJIiQoU1JDUk9PVCkv
Q29uZmlndXJhdGlvbnMvVmVyc2lvbi54Y2NvbmZpZyIsCisJCQkpOworCQkJbmFtZSA9ICJVcGRh
dGUgSW5mby5wbGlzdCB3aXRoIHZlcnNpb24gaW5mb3JtYXRpb24iOworCQkJb3V0cHV0UGF0aHMg
PSAoCisJCQkJIiQoU1JDUk9PVCkvSW5mby5wbGlzdCIsCisJCQkpOworCQkJcnVuT25seUZvckRl
cGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJ
c2hlbGxTY3JpcHQgPSAiIyBUb3VjaCBJbmZvLnBsaXN0IHRvIGxldCBYY29kZSBrbm93IGl0IG5l
ZWRzIHRvIGNvcHkgaXQgaW50byB0aGUgYnVpbHQgcHJvZHVjdFxuaWYgW1sgXCIke0NPTkZJR1VS
QVRJT059XCIgIT0gXCJQcm9kdWN0aW9uXCIgXV07IHRoZW5cbiAgICB0b3VjaCBcIiRTUkNST09U
L0luZm8ucGxpc3RcIjtcbmZpO1xuIjsKKwkJfTsKKwkJNURGNTA4ODcxMTZGMzA3NzAwNTIwMkFC
IC8qIENoZWNrIEZvciBJbmFwcHJvcHJpYXRlIEZpbGVzIEluIEZyYW1ld29yayAqLyA9IHsKKwkJ
CWlzYSA9IFBCWFNoZWxsU2NyaXB0QnVpbGRQaGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9IDIx
NDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJCSk7CisJCQlpbnB1dFBhdGhzID0gKAorCQkJCSIk
KFRBUkdFVF9CVUlMRF9ESVIpLyQoRVhFQ1VUQUJMRV9QQVRIKSIsCisJCQkpOworCQkJbmFtZSA9
ICJDaGVjayBGb3IgSW5hcHByb3ByaWF0ZSBGaWxlcyBJbiBGcmFtZXdvcmsiOworCQkJb3V0cHV0
UGF0aHMgPSAoCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9
IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJc2hlbGxTY3JpcHQgPSAiaWYgWyBcIiR7
QUNUSU9OfVwiID0gXCJpbnN0YWxsaGRyc1wiIC1vIFwiJHtBQ1RJT059XCIgPSBcImluc3RhbGxh
cGlcIiBdOyB0aGVuXG4gICAgZXhpdCAwO1xuZmlcblxuaWYgWyAtZiAuLi8uLi9Ub29scy9TY3Jp
cHRzL2NoZWNrLWZvci1pbmFwcHJvcHJpYXRlLWZpbGVzLWluLWZyYW1ld29yayBdOyB0aGVuXG4g
ICAgLi4vLi4vVG9vbHMvU2NyaXB0cy9jaGVjay1mb3ItaW5hcHByb3ByaWF0ZS1maWxlcy1pbi1m
cmFtZXdvcmsgfHwgZXhpdCAkP1xuZmlcbiI7CisJCX07CisJCTcxRDZBQTM4MURBNEU2OTQwMEIy
Mzk2OSAvKiBDb3B5IG1vZGVybiBtZWRpYSBjb250cm9scyBjb2RlIGFuZCBhc3NldHMgKi8gPSB7
CisJCQlpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sg
PSAyMTQ3NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJaW5wdXRQYXRocyA9ICgKKwkJ
CSk7CisJCQluYW1lID0gIkNvcHkgbW9kZXJuIG1lZGlhIGNvbnRyb2xzIGNvZGUgYW5kIGFzc2V0
cyI7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCSk7CisJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBv
c3Rwcm9jZXNzaW5nID0gMDsKKwkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7CisJCQlzaGVsbFNjcmlw
dCA9ICJTUkNfRElSPVwiJFNSQ1JPT1QvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHNcIlxu
RFNUX0RJUj1cIiRCVUlMVF9QUk9EVUNUU19ESVIvJFVOTE9DQUxJWkVEX1JFU09VUkNFU19GT0xE
RVJfUEFUSC9tb2Rlcm4tbWVkaWEtY29udHJvbHNcIlxuXG5ta2RpciAtcCBcIiREU1RfRElSXCJc
blxuaWYgWyBcIiR7V0tfUExBVEZPUk1fTkFNRX1cIiA9PSBcIm1hY29zeFwiIF07IHRoZW5cbiAg
ICBJTUdfT1NfUFJFRklYPVwibWFjT1NcIlxuZWxzZVxuICAgIGlmIFtbIFwiJHtXS19QTEFURk9S
TV9OQU1FfVwiID09ICpcIndhdGNoXCIqIF1dOyB0aGVuXG4gICAgICAgIElNR19PU19QUkVGSVg9
XCJ3YXRjaE9TXCJcbiAgICBlbHNlXG4gICAgICAgIElNR19PU19QUkVGSVg9XCJpT1NcIlxuICAg
IGZpXG5maVxuXG5pZiBbIC1uIFwiJElNR19PU19QUkVGSVhcIiBdOyB0aGVuXG5yc3luYyAtYXEg
LS1leGNsdWRlIFwiLnN2blwiIC0tZXhjbHVkZSBcIi5EU19TdG9yZVwiIFwiJFNSQ19ESVIvaW1h
Z2VzLyRJTUdfT1NfUFJFRklYL1wiIFwiJERTVF9ESVIvaW1hZ2VzXCJcbmZpXG5cbmNkIFwiJFNS
Q19ESVJcIlxuIjsKKwkJfTsKKwkJQTVFNzlDRUMxRTY3RjJDRjAwRkI4MTUzIC8qIE1ha2UgRnJh
bWV3b3JrcyBTeW1ib2xpYyBMaW5rICovID0geworCQkJaXNhID0gUEJYU2hlbGxTY3JpcHRCdWls
ZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAor
CQkJKTsKKwkJCWlucHV0UGF0aHMgPSAoCisJCQkpOworCQkJbmFtZSA9ICJNYWtlIEZyYW1ld29y
a3MgU3ltYm9saWMgTGluayI7CisJCQlvdXRwdXRQYXRocyA9ICgKKwkJCSk7CisJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKKwkJCXNoZWxsUGF0aCA9IC9iaW4vc2g7
CisJCQlzaGVsbFNjcmlwdCA9ICJpZiBbWyAke1dLX1BMQVRGT1JNX05BTUV9ICE9IFwibWFjb3N4
XCIgXV07IHRoZW5cbiAgICBleGl0IDBcbmZpXG5cbmlmIFtbICR7V0tfVVNFX09WRVJSSURFX0ZS
QU1FV09SS1NfRElSfSA9PSBcIllFU1wiIF1dOyB0aGVuXG4gICAgZXhpdCAwXG5maVxuXG4jIEVO
QUJMRV9XRUJfUlRDIGNhbm5vdCBiZSByZWxpZWQgb24gYmVjYXVzZSBvZiBpdHMgY29uZGl0aW9u
YWxzLlxuaWYgW1sgJHtDT05GSUdVUkFUSU9OfSA9PSBcIlByb2R1Y3Rpb25cIiAmJiAke1RBUkdF
VF9NQUNfT1NfWF9WRVJTSU9OX01BSk9SfSA8IDEwMTMwMCBdXTsgdGhlblxuICAgIGV4aXQgMFxu
ZmlcblxubG4gLXNoZiBWZXJzaW9ucy9DdXJyZW50L0ZyYW1ld29ya3MgXCIkVEFSR0VUX0JVSUxE
X0RJUi9XZWJDb3JlLmZyYW1ld29yay9GcmFtZXdvcmtzXCJcbiI7CisJCX07CisJCUREMDQxRkJE
MDlEOUREQkUwMDEwQUYyQSAvKiBHZW5lcmF0ZSBEZXJpdmVkIFNvdXJjZXMgKi8gPSB7CisJCQlp
c2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7CisJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3
NDgzNjQ3OworCQkJZmlsZXMgPSAoCisJCQkpOworCQkJaW5wdXRGaWxlTGlzdFBhdGhzID0gKAor
CQkJCSIkKFNSQ1JPT1QpL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QiLAorCQkJCSIk
KFdLX1dFQkNPUkVfREVSSVZFRFNPVVJDRVNfSU5QVVRfWENGSUxFTElTVF9BRERJVElPTlMpIiwK
KwkJCSk7CisJCQlpbnB1dFBhdGhzID0gKAorCQkJKTsKKwkJCW5hbWUgPSAiR2VuZXJhdGUgRGVy
aXZlZCBTb3VyY2VzIjsKKwkJCW91dHB1dEZpbGVMaXN0UGF0aHMgPSAoCisJCQkJIiQoU1JDUk9P
VCkvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QiLAorCQkJCSIkKFdLX1dFQkNPUkVf
REVSSVZFRFNPVVJDRVNfT1VUUFVUX1hDRklMRUxJU1RfQURESVRJT05TKSIsCisJCQkpOworCQkJ
b3V0cHV0UGF0aHMgPSAoCisJCQkpOworCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vz
c2luZyA9IDA7CisJCQlzaGVsbFBhdGggPSAvYmluL3NoOworCQkJc2hlbGxTY3JpcHQgPSAiU2Ny
aXB0cy9nZW5lcmF0ZS1kZXJpdmVkLXNvdXJjZXMuc2hcbiI7CisJCX07CisvKiBFbmQgUEJYU2hl
bGxTY3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8KKworLyogQmVnaW4gUEJYU291cmNlc0J1aWxk
UGhhc2Ugc2VjdGlvbiAqLworCQk0MTdEQTZDRDEzNzM0RTAyMDA3QzU3RkIgLyogU291cmNlcyAq
LyA9IHsKKwkJCWlzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNr
ID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVzID0gKAorCQkJCTUxNzE0RUFDMUNGNjU5NTEwMDQ3MjND
NCAvKiBHQ09ic2VydmF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQxN0RBNkQ5MTM3MzRF
NkUwMDdDNTdGQiAvKiBJbnRlcm5hbHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJRTE3OUYwREEx
Qjk3NzRGRTAwRUQwQTI3IC8qIEludGVybmFscy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUE3QkY3
RURGMTRDOTE3NUEwMDE0NDg5RCAvKiBJbnRlcm5hbFNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NjExMUZBMjM5REEwMDZEQjYzQSAvKiBJbnRlcm5hbFNldHRpbmdzR2VuZXJh
dGVkLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQxMzZDNTdBMjM5OEU1QkUwMDI0OTdEMyAvKiBJ
bnRlcm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQxMzZFQzBDMjM4Mzg4NzAw
MDBBREJDRSAvKiBJbnRlcm5hbHNTZXRMaWtlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUyNzND
Q0IxMjU2NDU3NkYwMDg1MDAwNyAvKiBKU0Zha2VYUkJvdW5kc1BvaW50LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTUyNzNDQ0IyMjU2NDU3NkYwMDg1MDAwNyAvKiBKU0Zha2VYUkJ1dHRvblN0YXRl
SW5pdC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MjczQ0NCMDI1NjQ1NzZGMDA4NTAwMDcgLyog
SlNGYWtlWFJJbnB1dFNvdXJjZUluaXQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTI3M0NDQjMy
NTY0NTc2RjAwODUwMDA3IC8qIEpTRmFrZVhSUmlnaWRUcmFuc2Zvcm1Jbml0LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTUyNzNDQ0I0MjU2NDU3NkYwMDg1MDAwNyAvKiBKU0Zha2VYUlZpZXdJbml0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjEyMUZBMjM5RTcwMDZEQjYzQSAvKiBKU0dD
T2JzZXJ2YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDE3REE3MUQxMzczNURGQTAwN0M1
N0ZCIC8qIEpTSW50ZXJuYWxzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUE3NDBCNUE3MTRDOTM1
QUYwMEE3N0ZBNCAvKiBKU0ludGVybmFsU2V0dGluZ3MuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTNFRDNGREUxNjdBODhFNzAwNjc2MkU2IC8qIEpTSW50ZXJuYWxTZXR0aW5nc0dlbmVyYXRlZC5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQk0MTM2QzU3QzIzOThFQ0NGMDAyNDk3RDMgLyogSlNJbnRl
cm5hbHNNYXBMaWtlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJENDE1MERFMUMxRjg2OEMwMDBB
M0JBMyAvKiBKU0ludGVybmFsc1NldExpa2UuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM5
MzIxRjk5QjlGNzAwNEQyMkE4IC8qIEpTTWFsbG9jU3RhdGlzdGljcy5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlDRDUzOTNEMzE3NUUwMTg2MDBDMDcxMjMgLyogSlNNZW1vcnlJbmZvLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCUNERjRCNzMyMUUwM0QwNjAwMEUyMzVBMiAvKiBKU01vY2tDRE1GYWN0
b3J5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUExOUFFQTIyMUFBQTgwOEEwMEI1MkIyNSAvKiBK
U01vY2tDb250ZW50RmlsdGVyU2V0dGluZ3MuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMkQ0MTUw
REUxQzFGODY4QzAwMEEzQkEyIC8qIEpTTW9ja1BhZ2VPdmVybGF5LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCUExNDZEMzIyMUY5OUQwRUMwMEQyOTE5NiAvKiBKU01vY2tQYXltZW50QWRkcmVzcy5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlBMTA0RUM1RDIyMEEzRTRCMDBDQkY2N0EgLyogSlNNb2Nr
UGF5bWVudENvbnRhY3RGaWVsZHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTE0NkQzMUExRjk5
QkNGODAwRDI5MTk2IC8qIEpTTW9ja1BheW1lbnRDb29yZGluYXRvci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlBMUJCODVCODIxNTlCM0E0MDA2N0UwN0QgLyogSlNNb2NrUGF5bWVudEVycm9yLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTU3MTU2MTE0MjM0QzdGRDYwMDhGQzdBQiAvKiBKU01vY2tX
ZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDI3
REE3MUQxMzczNURGQTAwN0M1N0ZCIC8qIEpTU2VydmljZVdvcmtlckludGVybmFscy5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlFQkY1MTIxQzE2OTY0OTZDMDA1NkJEMjUgLyogSlNUeXBlQ29udmVy
c2lvbnMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTI3M0NDQTAyNTYzQjM3NzAwODUwMDA3IC8q
IEpTV2ViRmFrZVhSRGV2aWNlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUyNzNDQ0E4MjU2M0I1
Q0EwMDg1MDAwNyAvKiBKU1dlYkZha2VYUklucHV0Q29udHJvbGxlci5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQk1MjczQ0M5QzI1NjNCMjVBMDA4NTAwMDcgLyogSlNXZWJYUlRlc3QuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJNTI3M0NDQTQyNTYzQjRGODAwODUwMDA3IC8qIEpTWFJTaW11bGF0ZVVz
ZXJBY3RpdmF0aW9uRnVuY3Rpb24uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0RDMjZCNDAxNjBB
OENDNjAwMjY3NTdCIC8qIExlZ2FjeU1vY2tDRE0uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTFF
MDg2NjMyNDg5RDM0RTAwRTQ5NkQ5IC8qIE1vY2tBcHBsZVBheVNldHVwRmVhdHVyZS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlDREY0QjczMTFFMDNEMDA3MDBFMjM1QTIgLyogTW9ja0NETUZhY3Rv
cnkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQTFCRjZCODIxQUE5NkM3RDAwQUY0QThBIC8qIE1v
Y2tDb250ZW50RmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUExQjVCMjlFMUFBQTg0NkUw
MDhCNjA0MiAvKiBNb2NrQ29udGVudEZpbHRlclNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTUxMDU4QURCMUQ2NzkyQzEwMDlBNTM4QyAvKiBNb2NrR2FtZXBhZC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQk1MTA1OEFERDFENjc5MkMxMDA5QTUzOEMgLyogTW9ja0dhbWVwYWRQcm92aWRl
ci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0MTU3RUJGQTFFM0FCNjc5MDBBQzlGRTkgLyogTW9j
a0xpYldlYlJUQ1BlZXJDb25uZWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTA3NDBCMTQ0
MjVERTMxRjgwMEUzOERCQSAvKiBNb2NrTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJMkQ2RjNFOTAxQzFFQ0IyNzAwNjFEQkQ0IC8qIE1vY2tQYWdlT3Zlcmxh
eS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkyRDk3RjA0NzE5REQ0MTNDMDAxRUU5QzMgLyogTW9j
a1BhZ2VPdmVybGF5Q2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUExQUZFREU3MUY4QkZG
NkQwMDg3MDEzRiAvKiBNb2NrUGF5bWVudENvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCUExNDA2MThCMUUyRUNBMEEwMDMyQjM0RSAvKiBNb2NrUHJldmlld0xvYWRlckNsaWVudC5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQk0MTdGMEQ4MjFGRkVFOTc5MDA4RUYzMDMgLyogU2Vydmlj
ZVdvcmtlckludGVybmFscy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0MUQ0MUM2NzIyNTY4NzRG
MDA2OTc5NDIgLyogU2VydmljZVdvcmtlckludGVybmFscy5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CURFNzcxMDg2MUZBMkYwRDYwMDQ2MDAxNiAvKiBXZWJBcmNoaXZlRHVtcFN1cHBvcnQubW0gaW4g
U291cmNlcyAqLywKKwkJCQk0MTgxNUMxRTEzODMxOTgzMDA1N0FBQTQgLyogV2ViQ29yZVRlc3RT
dXBwb3J0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUyNzNDQzkwMjU2MzdGNjcwMDg1MDAwNyAv
KiBXZWJGYWtlWFJEZXZpY2UuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTI3M0NDOTEyNTYzN0Y3
NTAwODUwMDA3IC8qIFdlYkZha2VYUklucHV0Q29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQk1MjczQ0M4RTI1NjM3RUI1MDA4NTAwMDcgLyogV2ViWFJUZXN0LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwor
CQl9OworCQk5M0YxOUEwQzA4MjQ1RTU5MDAxRTlBQkMgLyogU291cmNlcyAqLyA9IHsKKwkJCWlz
YSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0
NzsKKwkJCWZpbGVzID0gKAorCQkJCUE5Nzg3Q0I0MUY1RjVDNjYwMEM1NTFDNiAvKiBBY2Nlc3Np
YmlsaXR5TWVkaWFPYmplY3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQzFGN0I3MzEyNDQ4RjJB
QzAwMTI0NTU3IC8qIEFHWENvbXBpbGVyU2VydmljZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlD
RDBFRUUwRTE0NzQzRjM5MDAzRUFGQTIgLyogQXVkaW9PdXRwdXRVbml0QWRhcHRvcklPUy5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlDREE3OTgyNzE3MEEyNzkxMDBENDVDNTUgLyogQXVkaW9TZXNz
aW9uSU9TLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQ0Q4QTdCQkIxOTc3MzVGRTAwQ0JENjQzIC8q
IEF1ZGlvU291cmNlUHJvdmlkZXJBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQ0RFM0E4
NTcxN0Y2MDIwNDAwQzVCRTIwIC8qIEF1ZGlvVHJhY2tQcml2YXRlQVZGT2JqQy5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCUNENTRBNzYyMTgwRjlGNzAwMEIwNzZDOSAvKiBBdWRpb1RyYWNrUHJpdmF0
ZU1lZGlhU291cmNlQVZGT2JqQy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkwNzE5NDI3RjFEMDg4
RjIxMDAyQUE1MUQgLyogQVZBc3NldE1JTUVUeXBlQ2FjaGUubW0gaW4gU291cmNlcyAqLywKKwkJ
CQlDREVDQTg5QTFFREY0NDdEMDBEQ0IwOEIgLyogQVZBc3NldFRyYWNrVXRpbGl0aWVzLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0RDNjc1MjIxRUFFQTlCNzAwNzI3Qzg0IC8qIEFWQXVkaW9TZXNz
aW9uQ2FwdHVyZURldmljZU1hbmFnZXIubW0gaW4gU291cmNlcyAqLywKKwkJCQkwNzAzNjNFMzE4
MUExQ0RDMDBDMDc0QTUgLyogQVZDYXB0dXJlRGV2aWNlTWFuYWdlci5tbSBpbiBTb3VyY2VzICov
LAorCQkJCTA3MzhFNUVDMjQ5OTgzOTAwMERBMTAxQyAvKiBBVk91dHB1dERldmljZU1lbnVDb250
cm9sbGVyVGFyZ2V0UGlja2VyLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMDdDQjlFNzIyNDlDMzZC
MjAwQTY5NDg5IC8qIEFWUm91dGVQaWNrZXJWaWV3VGFyZ2V0UGlja2VyLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJQ0QxMUIzRTEyMjdDRTZGMzAwMjNBRkM3IC8qIEFWU3RyZWFtRGF0YVBhcnNlck1J
TUVUeXBlQ2FjaGUubW0gaW4gU291cmNlcyAqLywKKwkJCQlDRDMzNkY2MTE3RjlGNjQ3MDBERERD
RDAgLyogQVZUcmFja1ByaXZhdGVBVkZPYmpDSW1wbC5tbSBpbiBTb3VyY2VzICovLAorCQkJCTA3
MDM2M0U3MTgxQTFDREMwMEMwNzRBNSAvKiBBVlZpZGVvQ2FwdHVyZVNvdXJjZS5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCUNERjRCNzE1MUUwMEI3RTUwMEUyMzVBMiAvKiBDRE0uY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJQ0RCNzA0NUIxRjc0NjVBMTAwMzkyM0RGIC8qIENETUZhaXJQbGF5U3RyZWFt
aW5nLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNEQzIyNDI4MUY3NTY5NjYwMDVGMDc3QiAvKiBD
RE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CUNEMzE4NjIyMTk5RjFFMkEwMDMwQTBGNyAvKiBDRE1Qcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpD
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQ0RFNTk1OTUxQkYxNkRGMzAwQTFDQkU4IC8qIENETVNl
c3Npb25BVkNvbnRlbnRLZXlTZXNzaW9uLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQ0RERTAyRUQx
OEIzRUQ2RDAwQ0Y3RkYxIC8qIENETVNlc3Npb25BVkZvdW5kYXRpb25PYmpDLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJQ0RERTAyRjAxOEI1NjUxMzAwQ0Y3RkYxIC8qIENETVNlc3Npb25BVlN0cmVh
bVNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKKwkJCQlDREU1OTU5RDFCRjI3NTcxMDBBMUNCRTgg
LyogQ0RNU2Vzc2lvbk1lZGlhU291cmNlQVZGT2JqQy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUEx
NDA5MEZCMUFBNTFFMUQwMDkxMTkxQSAvKiBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXJDb2Nv
YS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTA3QUZGNDIzMUVGQjE0NDkwMEI1NDVCMyAvKiBDb3Jl
QXVkaW9DYXB0dXJlU291cmNlSU9TLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNDZDNjk2Q0MxRTcy
MDVGQzAwNTk3OTM3IC8qIENQVU1vbml0b3IuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMUFCQTc2
Q0ExMUQyMEU1MDAwNEMyMDFDIC8qIENTU1Byb3BlcnR5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJMkQyMjgzMDMyM0E4NDcwNzAwMzY0QjdFIC8qIEN1cnNvck1hYy5tbSBpbiBTb3VyY2Vz
ICovLAorCQkJCTVDQkQ1OTU5MjI4MEU5MjYwMDJCMjJBQSAvKiBDdXN0b21IZWFkZXJGaWVsZHMu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNkU3MkY1NEMyMjlEQ0QwQzAwQjNFMTUxIC8qIEV4dGVu
c2lvbnNHTEFOR0xFLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTdDRTZDQkZEMTg3RjM5NDkwMEQ0
NkJGNSAvKiBGb3JtYXRDb252ZXJ0ZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTEzMEYyRjYy
NEFFQTYwQTAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsubW0gaW4gU291cmNlcyAq
LywKKwkJCQk1MUE0QkIwQTE5NTRENjE2MDBGQTVDMkUgLyogR2FtZXBhZC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQk1MThGNEZGNjE5NENBNEU2MDA4MUJBQUUgLyogR2FtZXBhZEJ1dHRvbi5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQk1MTZDNjIyMDE5NTBENDg3MDAzMzdFNzUgLyogR2FtZXBhZEV2
ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUxQTlEOUU5MTk1QjkzMUYwMDFCMkI1QyAvKiBH
YW1lcGFkTWFuYWdlci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk4Mzc5NjRDRjFGOERCNjlEMDAy
MThFQTAgLyogR2VvbG9jYXRpb25Qb3NpdGlvbkRhdGFJT1MubW0gaW4gU291cmNlcyAqLywKKwkJ
CQk2RTcyRjU0RTIyOURDRDEwMDBCM0UxNTEgLyogR3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQk3QjQ1QUI1MDI1RkI5M0JFMDBGRDI3RjQgLyogR3JhcGhpY3ND
b250ZXh0R0xBTkdMRUVHTFV0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk3QzNFNTEw
QjE4REY4RjM1MDBDMTEyRjcgLyogSFRNTENvbnZlcnRlci5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CUE4RDA2QjNBMEEyNjVEQ0QwMDVFNzIwMyAvKiBIVE1MTmFtZXMuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJMUFDOTAwQzMxOTQzQzBGQzAwODYyNUI1IC8qIEhUVFBIZWFkZXJOYW1lcy5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlDRDE5RkVBRjFGNTc0QjZEMDAwQzQyRkIgLyogSW1hZ2VEZWNvZGVy
QVZGT2JqQy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUNEMjdBRTUxMjJBOTg2ODcwMDk0N0ZGOSAv
KiBJbWFnZVJvdGF0aW9uU2Vzc2lvblZULm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMDdFOUUxMzAx
OEY2MkIzNzAwMTFBM0E0IC8qIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQkwN0I0NDJENjE2NkM3MEIwMDA1NTZDQUQgLyogSW5iYW5kVGV4
dFRyYWNrUHJpdmF0ZUFWRi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkwN0FBNkI2QjE2NkQyQzA3
MDBENDU2NzEgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRk9iakMubW0gaW4gU291cmNlcyAq
LywKKwkJCQlDRDA2M0Y4MjFFMjNGQTg5MDA4MTJCRTMgLyogSW5pdERhdGFSZWdpc3RyeS5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzkzRTFGOTlCRjVBMDA0RDIyQTggLyogSlNRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk5MzVDNDc3MDA5QUM0
RDczMDBBNkFBQjQgLyogS2V5RXZlbnRNYWMubW0gaW4gU291cmNlcyAqLywKKwkJCQlDREE5OEUw
QjE2MDNDRDYwMDBGRUEzQjEgLyogTGVnYWN5Q0RNLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNE
RThCNUVDMUE2OTc3NzMwMEI0QjY2QSAvKiBMZWdhY3lDRE1Qcml2YXRlQ2xlYXJLZXkuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0RDQTk4RUIxOEIyQzhFQjAwQzEyRkY5IC8qIExlZ2FjeUNETVBy
aXZhdGVNZWRpYVBsYXllci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlDREU4QjVGMDFBNjk3NzhC
MDBCNEI2NkEgLyogTGVnYWN5Q0RNU2Vzc2lvbkNsZWFyS2V5LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTQxNTA4MDM2MUUzRjAwQUQwMDUxRDc1RCAvKiBMaWJXZWJSVENBdWRpb01vZHVsZS5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQk1Q0REODM2NDFFNDMyNUEwMDA2MjFFOTIgLyogTGliV2ViUlRD
RGF0YUNoYW5uZWxIYW5kbGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQxNzYxMkFGMUUzQTk5
NDAwMEMzRDgxRCAvKiBMaWJXZWJSVENNZWRpYUVuZHBvaW50LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTQxNzYxMkIxMUUzQTk5NDAwMEMzRDgxRCAvKiBMaWJXZWJSVENQZWVyQ29ubmVjdGlvbkJh
Y2tlbmQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNDE4NkJENDAyMTNFRTM0NTAwMDE4MjZGIC8q
IExpYldlYlJUQ1J0cFJlY2VpdmVyQmFja2VuZC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk0MTg2
QkQzRjIxM0VFMzQzMDAwMTgyNkYgLyogTGliV2ViUlRDUnRwU2VuZGVyQmFja2VuZC5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQk0MTg2QkQ0RTIxNDBCOUU4MDAwMTgyNkYgLyogTGliV2ViUlRDUnRw
VHJhbnNjZWl2ZXJCYWNrZW5kLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTQxRDI4RDBEMjEzOUUw
NTgwMEY0MjA2RiAvKiBMaWJXZWJSVENTdGF0c0NvbGxlY3Rvci5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQk0MTg2QkQzRTIxM0VFMzQwMDAwMTgyNkYgLyogTGliV2ViUlRDVXRpbHMuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJNDE0NTk4QzIyM0M4RDE3NzAwMkI5Q0M4IC8qIExvY2FsU2FtcGxlQnVm
ZmVyRGlzcGxheUxheWVyLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJRkFCRTcyRkUxMDU5QzIxMTAw
RDk5OUREIC8qIE1hdGhNTE5hbWVzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOUJGNzA1MURC
RkJCMjQwMDdBN0Q5OSAvKiBNZWRpYUVuY3J5cHRlZEV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTJEOUJGNzQ3MURCRkRDNDkwMDdBN0Q5OSAvKiBNZWRpYUtleU1lc3NhZ2VFdmVudC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQkyRDlCRjc0NjFEQkZEQzQ3MDA3QTdEOTkgLyogTWVkaWFLZXlz
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOUJGNzQ1MURCRkRDNDQwMDdBN0Q5OSAvKiBNZWRp
YUtleVNlc3Npb24uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMkQ5QkY3NDQxREJGREM0MTAwN0E3
RDk5IC8qIE1lZGlhS2V5U3RhdHVzTWFwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOUJGNzQz
MURCRkRDM0UwMDdBN0Q5OSAvKiBNZWRpYUtleVN5c3RlbUFjY2Vzcy5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQk5QUNDMDc5ODI1QzcyNjc3MDBEQzYzODYgLyogTWVkaWFLZXlTeXN0ZW1Db250cm9s
bGVyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTlBQ0MwNzk2MjVDNzI1RUUwMERDNjM4NiAvKiBN
ZWRpYUtleVN5c3RlbVJlcXVlc3QuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMDcxRTQ5NkUxQUQ1
QUEwRDAwOEE1MEI0IC8qIE1lZGlhUGxheWJhY2tUYXJnZXRDb2NvYS5tbSBpbiBTb3VyY2VzICov
LAorCQkJCTA3OEU0M0RFMUFCQjZGNkYwMDFDMkZBNiAvKiBNZWRpYVBsYXliYWNrVGFyZ2V0UGlj
a2VyTWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMDcyQzhCMTExMzFDNTE4NjAwQTRGQ0U5IC8q
IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlE
RjlBRkQ3MzEzRkMzMUQ4MDAxNUZFQjcgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
T2JqQy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUNEQzhCNUEyMTgwNDYzNDcwMDE2RTY4NSAvKiBN
ZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0gaW4gU291cmNlcyAqLywKKwkJ
CQkxNTA1MjRGNTFCNzEyRkY5MDA2OTZBQTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJl
YW1BVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUIxMjREOEYxRDM4MEJCNjAwRUNERkIw
IC8qIE1lZGlhU2FtcGxlQVZGT2JqQy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUNEQkVBRUFDMTlE
OTJCNkMwMEJFQkE4OCAvKiBNZWRpYVNlbGVjdGlvbkdyb3VwQVZGT2JqQy5tbSBpbiBTb3VyY2Vz
ICovLAorCQkJCUNEQTk1OTM1MjQxMjNDQjgwMDkxMEVFRiAvKiBNZWRpYVNlc3Npb25IZWxwZXJJ
T1MubW0gaW4gU291cmNlcyAqLywKKwkJCQkwNzYzOEE5QTE4ODQ0ODcyMDBFMTVBMUIgLyogTWVk
aWFTZXNzaW9uTWFuYWdlcklPUy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUNEQzhCNUE2MTgwNDc0
RjcwMDE2RTY4NSAvKiBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8s
CisJCQkJNDEzM0NCOEIyMEY4MEU5OTAwRTg5QjExIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2VD
b2NvYS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkyRDlCRjc0MjFEQkZEQzI3MDA3QTdEOTkgLyog
TmF2aWdhdG9yRU1FLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUxQTRCQjEwMTk1NEQ2MjcwMEZB
NUMyRSAvKiBOYXZpZ2F0b3JHYW1lcGFkLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUxRUU4Qjk0
MjQxMzE5NTAwMEU3OTRENiAvKiBOYXZpZ2F0b3JXZWJYUi5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQkxQTU2OUQxMzBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY19jbGFzcy5tbSBpbiBTb3VyY2VzICov
LAorCQkJCTFBNTY5RDE2MEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjX2luc3RhbmNlLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJMUE1NjlEMTgwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCTFBNTY5RDFBMEQ3RTJCODIwMDdDMzk4MyAvKiBvYmpjX3V0
aWxpdHkubW0gaW4gU291cmNlcyAqLywKKwkJCQlFMTY5ODI2MDExMzQ2MzZBMDA4OTQxMTUgLyog
T2JqQ1J1bnRpbWVPYmplY3QubW0gaW4gU291cmNlcyAqLywKKwkJCQkxMThCMDY4QjI1RTQxRTUz
MDA3MEJFNEIgLyogT3BlblhSRXh0ZW5zaW9ucy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkxMThC
MDY4RDI1RTQxRTUzMDA3MEJFNEIgLyogT3BlblhSSW5zdGFuY2UuY3BwIGluIFNvdXJjZXMgKi8s
CisJCQkJQ0VBMjg0NjYyMTQxRTg0OTAwRTQwN0U4IC8qIFBsYXRmb3JtRXZlbnRGYWN0b3J5SU9T
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQUExMkRGNDkxNzQzREY4MzAwNERBRkRGIC8qIFBsYXRm
b3JtU3BlZWNoU3ludGhlc2l6ZXJJT1MubW0gaW4gU291cmNlcyAqLywKKwkJCQlFMUMxQTM5RDI0
ODAwODA4MDBFMEFGNjYgLyogUGxhdGZvcm1YUk9wZW5YUi5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlDREEyOUEzMDFDQkY3NEQ0MDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlQVZL
aXQubW0gaW4gU291cmNlcyAqLywKKwkJCQlDREEyOUExNjFDQkRBNTZDMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uSW50ZXJmYWNlTWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNDE5MjQyNDky
MTI3QjkzRTAwNjM0RkNGIC8qIFJlYWx0aW1lT3V0Z29pbmdWaWRlb1NvdXJjZUNvY29hLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJNUMyQjFBRUMyMjM5N0VCQzAwQjkxQ0Y3IC8qIFJlc291cmNlUmVz
cG9uc2VDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCUJDNTExNTZFMTJCMTc0OUMwMEM5Njc1
NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUJDRUY4NjlGMEU4
NDRFOUQwMEE4NUNENSAvKiBTY3JvbGxiYXJUaGVtZU1hYy5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CTQzQjg1RUQ0MThDQkVDNTIwMEUzMUFGNCAvKiBTZWxlY3RvclBzZXVkb0NsYXNzQW5kQ29tcGF0
aWJpbGl0eUVsZW1lbnRNYXAuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMjZBQTBGOUUxOEQyQTE4
QjAwNDE5MzgxIC8qIFNlbGVjdG9yUHNldWRvRWxlbWVudFR5cGVNYXAuY3BwIGluIFNvdXJjZXMg
Ki8sCisJCQkJN0NENThERkQxRjk1NjVBODAwMTEyNzkxIC8qIFNldHRpbmdzLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTUzOEYxMEE4MUY5MDIyQTQwMDUxMDJDRSAvKiBTb2Z0TGlua0xpYnhzbHQu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0RGOTk0RkQyNEMxNUZFMzAwMkVBMDYyIC8qIFNvdXJj
ZUJ1ZmZlclBhcnNlckFWRk9iakMubW0gaW4gU291cmNlcyAqLywKKwkJCQlDREM4QjVBQTE4MDQ3
RkYxMDAxNkU2ODUgLyogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0gaW4gU291cmNlcyAq
LywKKwkJCQlBODMzQzdDQTBBMkNGMDZCMDBENTc2NjQgLyogU1ZHTmFtZXMuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJQzE2OTJERDIyM0QyM0FCRDAwNkU4OEY3IC8qIFN5c3RlbUJhdHRlcnkubW0g
aW4gU291cmNlcyAqLywKKwkJCQk2RTcyRjU0RjIyOURDRDEzMDBCM0UxNTEgLyogVGVtcG9yYXJ5
QU5HTEVTZXR0aW5nLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNFODhFRTI2MjQxNDQ2N0IwMDdG
MjlDMiAvKiBUZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UubW0gaW4gU291cmNlcyAqLywKKwkJCQk1
MURGNkQ4MDBCOTJBMThFMDBDMkRDODUgLyogVGhyZWFkQ2hlY2subW0gaW4gU291cmNlcyAqLywK
KwkJCQk1MzhFQzgwMzFGOTZBRjgxMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTEtbW0ubW0gaW4g
U291cmNlcyAqLywKKwkJCQk1MzhFQzgwMjFGOTZBRjgxMDA0RDIyQTggLyogVW5pZmllZFNvdXJj
ZTEuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MDUxRjk2QUY4MTAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UyLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MDQxRjk2QUY4MTAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDODA3
MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMy1tbS5tbSBpbiBTb3VyY2VzICovLAor
CQkJCTUzOEVDODA2MUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlERTVGODU2QzFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQt
bW0ubW0gaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzgwODFGOTZBRjgxMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJREU1Rjg1NkQxRkExQUJGMzAwNkRC
NjNBIC8qIFVuaWZpZWRTb3VyY2U1LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MDkx
Rjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NTZFMUZBMUFCRjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNi1tbS5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCTUzOEVDODBBMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNi5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU2RjFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTctbW0ubW0gaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzgwQjFGOTZBRjgxMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTcuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJREU1Rjg1NzAxRkEx
QUJGMzAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2U4LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTM4RUM4MEMxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NTcxMUZBMUFCRjMwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlOS1tbS5t
bSBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDODBEMUY5NkFGODEwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlOS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3MjFGQTFBQkYzMDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTEwLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MEUxRjk2
QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlE
RTVGODU3MzFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTExLW1tLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJNTM4RUM4MEYxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMS5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3NDFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTEyLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MTAxRjk2QUY4MTAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UxMi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3NTFG
QTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTEzLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJ
CQkJNTM4RUM4MTExRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxMy5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlERTVGODU3NjFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTE0
LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MTIxRjk2QUY4MTAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UxNC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3NzFGQTFBQkYzMDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTE1LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4
MTMxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxNS5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQlERTVGODU3ODFGQTFBQkYzMDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTE2LW1tLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MTQxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UxNi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3OTFGQTFBQkY0MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTE3LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MTUxRjk2QUY4
MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxNy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVG
ODU3QTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTE4LW1tLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJNTM4RUM4MTYxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UxOC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3QjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTE5LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4MTcxRjk2QUY4MTAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UxOS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3QzFGQTFB
QkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIwLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTM4RUM4MTgxRjk2QUY4MTAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyMC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQlERTVGODU3RDFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIxLW1t
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4ODYxRjk5M0Y5QzAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2UyMS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU3RTFGQTFBQkY0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTIyLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4ODcx
Rjk5M0Y5QzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyMi5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlERTVGODU3RjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTIzLW1tLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJNTM4RUM4ODgxRjk5M0Y5QzAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2Uy
My5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4MDFGQTFBQkY0MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTI0LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4ODkxRjk5M0Y5RDAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4
MTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI1LW1tLm1tIGluIFNvdXJjZXMgKi8s
CisJCQkJNTM4RUM4OEExRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlERTVGODU4MjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTI2LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OEIxRjk5M0Y5RDAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2UyNi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4MzFGQTFBQkY0
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI3LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4
RUM4OEMxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyNy5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlERTVGODU4NDFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTI4LW1tLm1t
IGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OEQxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2UyOC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4NTFGQTFBQkY0MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTI5LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OEUxRjk5
M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UyOS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlE
RTVGODU4NjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMwLW1tLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJNTM4RUM4OEYxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMC5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4NzFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTMxLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTAxRjk5M0Y5RDAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2UzMS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4ODFG
QTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMyLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJ
CQkJNTM4RUM4OTExRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzMi5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlERTVGODU4OTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMz
LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2UzMy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4QTFGQTFBQkY0MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTM0LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4
OTMxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNC5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQlERTVGODU4QjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM1LW1tLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTQxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2UzNS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4QzFGQTFBQkY0MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTM2LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTUxRjk5M0Y5
RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVG
ODU4RDFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM3LW1tLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJNTM4RUM4OTYxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzNy5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4RTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTM4LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTcxRjk5M0Y5RDAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2UzOC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU4RjFGQTFB
QkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTM5LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTM4RUM4OTgxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2UzOS5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQlERTVGODU5MDFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQwLW1t
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OTkxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U0MC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5MTFGQTFBQkY0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTQxLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OUEx
Rjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0MS5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlERTVGODU5MjFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQyLW1tLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJNTM4RUM4OUIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0
Mi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5MzFGQTFBQkY0MDA2REI2M0EgLyogVW5p
ZmllZFNvdXJjZTQzLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OUMxRjk5M0Y5RDAw
NEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0My5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5
NDFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ0LW1tLm1tIGluIFNvdXJjZXMgKi8s
CisJCQkJNTM4RUM4OUQxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0NC5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQlERTVGODU5NTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJj
ZTQ1LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4OUUxRjk5M0Y5RDAwNEQyMkE4IC8q
IFVuaWZpZWRTb3VyY2U0NS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5NjFGQTFBQkY0
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ2LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4
RUM4OUYxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0Ni5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQlERTVGODU5NzFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ3LW1tLm1t
IGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTAxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRT
b3VyY2U0Ny5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5ODFGQTFBQkY0MDA2REI2M0Eg
LyogVW5pZmllZFNvdXJjZTQ4LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTExRjk5
M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0OC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlE
RTVGODU5OTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTQ5LW1tLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJNTM4RUM4QTIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U0OS5j
cHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODU5QTFGQTFBQkY0MDA2REI2M0EgLyogVW5pZmll
ZFNvdXJjZTUwLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTMxRjk5M0Y5RDAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U1MC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1MDFG
QTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUxLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJ
CQkJNTM4RUM4QTQxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1MS5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlERTVGODY1MTFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTUy
LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTUxRjk5M0Y5RDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U1Mi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1MjFGQTJBRjI0MDA2
REI2M0EgLyogVW5pZmllZFNvdXJjZTUzLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4
QTYxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1My5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQlERTVGODY1MzFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU0LW1tLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTcxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U1NC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1NDFGQTJBRjI0MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTU1LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QTgxRjk5M0Y5
RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1NS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVG
ODY1NTFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU2LW1tLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJNTM4RUM4QTkxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1Ni5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1NjFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNv
dXJjZTU3LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QUExRjk5M0Y5RDAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U1Ny5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1NzFGQTJB
RjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU4LW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTM4RUM4QUIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U1OC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQlERTVGODY1ODFGQTJBRjI0MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTU5LW1t
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QUMxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U1OS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlERTVGODY1OTFGQTJBRjI0MDA2REI2
M0EgLyogVW5pZmllZFNvdXJjZTYwLW1tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QUQx
Rjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2MC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlERTVGODY1OTFGQTJBRjI0MDA2REI2M0IgLyogVW5pZmllZFNvdXJjZTYxLW1tLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJNTM4RUM4QUUxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2
MS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhBRjFGOTkzRjlEMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTYyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNEMTdBNDVEMjEzNzQwODEwMDc5
RUM3QiAvKiBVbmlmaWVkU291cmNlNjItbW0ubW0gaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhC
MDFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTYzLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTUzOEVDOEIxMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNjQuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJNTM4RUM4QjIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2
NS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhCMzFGOTkzRjlEMDA0RDIyQTggLyogVW5p
ZmllZFNvdXJjZTY2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEI0MUY5OTNGOUQwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlNjcuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QjUx
Rjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U2OC5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQk1MzhFQzhCNjFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTY5LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTUzOEVDOEI3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzAu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QjgxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZp
ZWRTb3VyY2U3MS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhCOTFGOTkzRjlEMDA0RDIy
QTggLyogVW5pZmllZFNvdXJjZTcyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEJBMUY5
OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTM4RUM4QkIxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U3NC5jcHAgaW4gU291cmNl
cyAqLywKKwkJCQk1MzhFQzhCQzFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTc1LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEJEMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlNzYuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QkUxRjk5M0Y5RDAwNEQyMkE4
IC8qIFVuaWZpZWRTb3VyY2U3Ny5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhCRjFGOTkz
RjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTc4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUz
OEVDOEMwMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlNzkuY3BwIGluIFNvdXJjZXMg
Ki8sCisJCQkJNTM4RUM4QzExRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4MC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhDMjFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNv
dXJjZTgxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEMzMUY5OTNGOUQwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlODIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QzQxRjk5M0Y5
RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4My5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhF
QzhDNTFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTg0LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTUzOEVDOEM2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlODUuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4QzcxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3Vy
Y2U4Ni5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhDODFGOTkzRjlEMDA0RDIyQTggLyog
VW5pZmllZFNvdXJjZTg3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEM5MUY5OTNGOUQw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlODguY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4
Q0ExRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U4OS5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQk1MzhFQzhDQjFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTkwLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTUzOEVDOENDMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
OTEuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4Q0QxRjk5M0Y5RDAwNEQyMkE4IC8qIFVu
aWZpZWRTb3VyY2U5Mi5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhDRTFGOTkzRjlEMDA0
RDIyQTggLyogVW5pZmllZFNvdXJjZTkzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOENG
MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlOTQuY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJNTM4RUM4RDAxRjk5M0Y5RDAwNEQyMkE4IC8qIFVuaWZpZWRTb3VyY2U5NS5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQk1MzhFQzhEMTFGOTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTk2
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEQyMUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlOTcuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJNTM4RUM4RDMxRjk5M0Y5RDAwNEQy
MkE4IC8qIFVuaWZpZWRTb3VyY2U5OC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQk1MzhFQzhENDFG
OTkzRjlEMDA0RDIyQTggLyogVW5pZmllZFNvdXJjZTk5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTUzOEVDOEQ1MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTAwLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTUzOEVDOEQ2MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTAx
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEQ3MUY5OTNGOUQwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMTAyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEQ4MUY5OTNGOUUwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTAzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEQ5
MUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA0LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTUzOEVDOERBMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA1LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTUzOEVDOERCMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTA2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOERDMUY5OTNGOUUwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTA3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEREMUY5OTNGOUUw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVD
OERFMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTA5LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTUzOEVDOERGMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTEwLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTUzOEVDOEUwMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTExLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEUxMUY5OTNGOUUwMDREMjJBOCAv
KiBVbmlmaWVkU291cmNlMTEyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEUyMUY5OTNG
OUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTEzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUz
OEVDOEUzMUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE0LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTUzOEVDOEU0MUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE1LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOEU1MUY5OTNGOUUwMDREMjJBOCAvKiBVbmlmaWVk
U291cmNlMTE2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTExMUY5OUI2OTgwMDREMjJB
OCAvKiBVbmlmaWVkU291cmNlMTE3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTEyMUY5
OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTUzOEVDOTEzMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTE5LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTUzOEVDOTE0MUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTIw
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTE1MUY5OUI2OTgwMDREMjJBOCAvKiBVbmlm
aWVkU291cmNlMTIxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTE2MUY5OUI2OTgwMDRE
MjJBOCAvKiBVbmlmaWVkU291cmNlMTIyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTE3
MUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTIzLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTUzOEVDOTE4MUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI0LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTUzOEVDOTE5MUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNl
MTI1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTFBMUY5OUI2OTgwMDREMjJBOCAvKiBV
bmlmaWVkU291cmNlMTI2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVDOTFCMUY5OUI2OTgw
MDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTUzOEVD
OTFDMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI4LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTUzOEVDOTFEMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291cmNlMTI5LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTUzOEVDOTFFMUY5OUI2OTgwMDREMjJBOCAvKiBVbmlmaWVkU291
cmNlMTMwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDkzMUY5RTY3QjUwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTMxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDk0MUY5RTY3
QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTMyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3RDk1MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTMzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3RDk2MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM0LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDk3MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTM1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDk4MUY5RTY3QjUwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTM2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDk5MUY5
RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3RDlBMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM4LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3RDlCMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTM5
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDlDMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTQwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDlEMUY5RTY3QjUwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTQxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RDlF
MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQyLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3RDlGMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQzLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3REEwMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTQ0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REExMUY5RTY3QjUwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTQ1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REEyMUY5RTY3QjUw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3
REEzMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ3LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E3REE0MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTQ4LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E3REE1MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTQ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REE2MUY5RTY3QjUwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTUwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REE3MUY5RTY3
QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTUxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3REE4MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTUyLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3REE5MUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTUzLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REFBMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTU0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REFCMUY5RTY3QjUwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTU1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REFDMUY5
RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3REFEMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU3LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3REFFMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTU4
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REFGMUY5RTY3QjUwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTU5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REIwMUY5RTY3QjYwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTYwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REIx
MUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTYxLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3REIyMUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTYyLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3REIzMUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTYzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REI0MUY5RTY3QjYwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTY0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REI1MUY5RTY3QjYw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTY1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3
REI2MUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTY2LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E3REI3MUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTY3LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E3REI4MUY5RTY3QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTY4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REI5MUY5RTY3QjYwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTY5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REJBMUY5RTY3
QjYwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3REZCMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcxLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3REZDMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTcyLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REZEMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTczLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REZFMUY5RUIzNjQwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTc0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3REZGMUY5
RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3RTAwMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc2LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3RTAxMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTc3
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTAyMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTc4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTAzMUY5RUIzNjQwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTc5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTA0
MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgwLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3RTA1MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTgxLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3RTA2MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MTgyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTA3MUY5RUIzNjQwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMTgzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTA4MUY5RUIzNjQw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3
RTA5MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg1LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E3RTBBMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg2LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E3RTBCMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMTg3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTBDMUY5RUIzNjQwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMTg4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTBEMUY5RUIz
NjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTg5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3RTBFMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkwLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3RTBGMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTkxLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTEwMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMTkyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTExMUY5RUIzNjQwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMTkzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTEyMUY5
RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3RTEzMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk1LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3RTE0MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk2
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTE1MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMTk3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTE2MUY5RUIzNjQwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMTk4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTE3
MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMTk5LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3RTE4MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjAwLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3RTE5MUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjAxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTFBMUY5RUIzNjQwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjAyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTFCMUY5RUIzNjQw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjAzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3
RTFDMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA0LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E3RTFEMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA1LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E3RTFFMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjA2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTFGMUY5RUIzNjQwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjA3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTIwMUY5RUIz
NjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3RTIxMUY5RUIzNjQwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjA5LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3RTIyMUY5RUIzNjUwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjEwLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTRFMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjExLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTRGMUY5RUJEODMwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjEyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTUwMUY5
RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjEzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3RTUxMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE0LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3RTUyMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE1
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTUzMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjE2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTU0MUY5RUJEODMwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjE3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTU1
MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE4LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3RTU2MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjE5LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3RTU3MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjIwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTU4MUY5RUJEODMwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjIxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTU5MUY5RUJEODMw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjIyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3
RTVBMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjIzLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E3RTVCMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI0LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E3RTVDMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjI1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTVEMUY5RUJEODMwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjI2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTVFMUY5RUJE
ODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E3RTVGMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI4LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E3RTYwMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjI5LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTYxMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjMwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTYyMUY5RUJEODMwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjMxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTYzMUY5
RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjMyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E3RTY0MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjMzLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E3RTY1MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTY2MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjM1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTY3MUY5RUJEODMwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjM2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTY4
MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM3LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E3RTY5MUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjM4LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E3RTZBMUY5RUJEODMwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjM5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E3RTZCMUY5RUJEODMwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjQwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDMyMUY5RkVENjkw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4
MDMzMUY5RkVENjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQyLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E4MDM0MUY5RkVENjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQzLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E4MDM1MUY5RkVENjkwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjQ0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDM2MUY5RkVENjkwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjQ1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDM3MUY5RkVE
NjkwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E4MDM4MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ3LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E4MDM5MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjQ4LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDNBMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjQ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDNCMUY5RkVENkEwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjUwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDNDMUY5
RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E4MDNEMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUyLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E4MDNFMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjUz
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDNGMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjU0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQwMUY5RkVENkEwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjU1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQx
MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU2LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E4MDQyMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjU3LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E4MDQzMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
MjU4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQ0MUY5RkVENkEwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjU5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQ1MUY5RkVENkEw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4
MDQ2MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYxLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E4MDQ3MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjYyLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQ4MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjYzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDQ5MUY5RkVENkEwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjY0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDRBMUY5RkVE
NkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E4MDRCMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY2LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E4MDRDMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjY3LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDREMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjY4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDRFMUY5RkVENkEwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjY5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDRGMUY5
RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjcwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E4MDUwMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjcxLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E4MDUxMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjcy
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDUyMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjczLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDUzMUY5RkVENkEwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjc0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDU0
MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc1LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E4MDU1MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc2LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E4MDU2MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
Mjc3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDU3MUY5RkVENkEwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjc4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDU4MUY5RkVENkEw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjc5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4
MDU5MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjgwLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E4MDVBMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjgxLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFQ0E4MDVCMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291
cmNlMjgyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDVDMUY5RkVENkEwMEUzQjY2MSAv
KiBVbmlmaWVkU291cmNlMjgzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDVEMUY5RkVE
NkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
Q0E4MDVFMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg1LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFQ0E4MDVGMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg2LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDYwMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVk
U291cmNlMjg3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDYxMUY5RkVENkEwMEUzQjY2
MSAvKiBVbmlmaWVkU291cmNlMjg4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDYyMUY5
RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjg5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFQ0E4MDYzMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjkwLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFQ0E4MDY0MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjkx
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDY1MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlm
aWVkU291cmNlMjkyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDY2MUY5RkVENkEwMEUz
QjY2MSAvKiBVbmlmaWVkU291cmNlMjkzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDY3
MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk0LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFQ0E4MDY4MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk1LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFQ0E4MDY5MUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNl
Mjk2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDZBMUY5RkVENkEwMEUzQjY2MSAvKiBV
bmlmaWVkU291cmNlMjk3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4MDZCMUY5RkVENkEw
MEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFQ0E4
MDZDMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMjk5LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFQ0E4MDZEMUY5RkVENkEwMEUzQjY2MSAvKiBVbmlmaWVkU291cmNlMzAwLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDE2MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzAxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDE3MUZBMTg2RTkwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzAyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDE4MUZBMTg2
RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzAzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDE5MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA0LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDFBMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA1LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDFCMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzA2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDFDMUZBMTg2RTkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzA3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDFEMUZB
MTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NDFFMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzA5LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NDFGMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEw
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDIwMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzExLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDIxMUZBMTg2RTkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzEyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDIy
MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzEzLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NDIzMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE0LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NDI0MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzE1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDI1MUZBMTg2RTkwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzE2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDI2MUZBMTg2RTkw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NDI3MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE4LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NDI4MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzE5LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDI5MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzIwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDJBMUZBMTg2RTkwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzIxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDJCMUZBMTg2
RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzIyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDJDMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzIzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDJEMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI0LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDJFMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzI1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDJGMUZBMTg2RTkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzI2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDMwMUZB
MTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NDMxMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI4LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NDMyMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzI5
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDMzMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzMwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDM0MUZBMTg2RTkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzMxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDM1
MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzMyLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NDM2MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzMzLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NDM3MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzM0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDM4MUZBMTg2RTkwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzM1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDM5MUZBMTg2RTkw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NDNBMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM3LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NDNCMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM4LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDNDMUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzM5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDNEMUZBMTg2RTkwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzQwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDNFMUZBMTg2
RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDNGMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQyLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDQwMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQzLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQxMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzQ0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQyMUZBMTg2RUEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzQ1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQzMUZB
MTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NDQ0MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ3LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NDQ1MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzQ4
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQ2MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzQ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQ3MUZBMTg2RUEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzUwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDQ4
MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzUxLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NDQ5MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzUyLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NDRBMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzUzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDRCMUZBMTg2RUEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzU0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDRDMUZBMTg2RUEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NDREMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU2LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NDRFMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzU3LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDRGMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzU4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDUwMUZBMTg2RUEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzU5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDUxMUZBMTg2
RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDUyMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYxLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDUzMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzYyLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDU0MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzYzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDU1MUZBMTg2RUEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzY0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDU2MUZB
MTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NDU3MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY2LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NDU4MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzY3
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDU5MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzY4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDVBMUZBMTg2RUEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzY5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDVC
MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcwLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NDVDMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzcxLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NDVEMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzcyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDVFMUZBMTg2RUEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzczLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDVGMUZBMTg2RUEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NDYwMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc1LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NDYxMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc2LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDYyMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzc3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDYzMUZBMTg2RUEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzc4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDY0MUZBMTg2
RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzc5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDY1MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzgwLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDY2MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzgxLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDY3MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlMzgyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDY4MUZBMTg2RUEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlMzgzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDY5MUZB
MTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NDZBMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg1LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NDZCMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg2
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDZDMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzg3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDZEMUZBMTg2RUEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzg4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDZF
MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzg5LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NDZGMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzkwLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NDcwMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
MzkxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDcxMUZBMTg2RUEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlMzkyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDcyMUZBMTg2RUEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzkzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NDczMUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk0LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NDc0MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk1LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NDc1MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlMzk2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDc2MUZBMTg2RUEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlMzk3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NDc3MUZBMTg2
RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NDc4MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzk5LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NDc5MUZBMTg2RUEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAwLmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTAzMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDAxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTA0MUZBMUE0RjgwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDAyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTA1MUZB
MUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDAzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NTA2MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA0LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NTA3MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA1
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTA4MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDA2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTA5MUZBMUE0RjgwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDA3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTBB
MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA4LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NTBCMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDA5LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NTBDMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDEwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTBEMUZBMUE0RjgwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDExLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTBFMUZBMUE0Rjgw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDEyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NTBGMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDEzLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NTEwMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE0LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NTExMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDE1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTEyMUZBMUE0RjgwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDE2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTEzMUZBMUE0
RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NTE0MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE4LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NTE1MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDE5LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTE2MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDIwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTE3MUZBMUE0RjgwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDIxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTE4MUZB
MUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NTE5MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDIzLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NTFBMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTFCMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDI1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTFDMUZBMUE0RjgwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDI2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTFE
MUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI3LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NTFFMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDI4LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NTFGMUZBMUE0RjgwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDI5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTIwMUZBMUE0RjgwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDMwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTIxMUZBMUE0Rjkw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NTIyMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMyLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NTIzMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDMzLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NTI0MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDM0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTI1MUZBMUE0RjkwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDM1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTI2MUZBMUE0
RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NTI3MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM3LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NTI4MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDM4LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTI5MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDM5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTJBMUZBMUE0RjkwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDQwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTJCMUZB
MUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NTJDMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQyLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NTJEMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQz
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTJFMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDQ0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTJGMUZBMUE0RjkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDQ1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTMw
MUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQ2LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NTMxMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDQ3LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NTMyMUZBMUE0RjkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDQ4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTMzMUZBMUE0RjkwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDQ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NTM0MUZBMUE0Rjkw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NUYyMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUxLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NUYzMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDUyLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NUY0MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDUzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUY1MUZBMjM4NkEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDU0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUY2MUZBMjM4
NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NUY3MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU2LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NUY4MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDU3LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUY5MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDU4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUZBMUZBMjM4NkEwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDU5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUZCMUZB
MjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NUZDMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYxLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCURFNUY4NUZEMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDYy
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUZFMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlNDYzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NUZGMUZBMjM4NkEwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlNDY0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjAw
MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY1LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCURFNUY4NjAxMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY2LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCURFNUY4NjAyMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNl
NDY3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjAzMUZBMjM4NkEwMDZEQjYzQSAvKiBV
bmlmaWVkU291cmNlNDY4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjA0MUZBMjM4NkEw
MDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDY5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4
NjA1MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDcwLmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCURFNUY4NjA2MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDcxLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCURFNUY4NjA3MUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291
cmNlNDcyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjA4MUZBMjM4NkEwMDZEQjYzQSAv
KiBVbmlmaWVkU291cmNlNDczLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjA5MUZBMjM4
NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURF
NUY4NjBBMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc1LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCURFNUY4NjBCMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc2LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjBDMUZBMjM4NkEwMDZEQjYzQSAvKiBVbmlmaWVk
U291cmNlNDc3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjBEMUZBMjM4NkIwMDZEQjYz
QSAvKiBVbmlmaWVkU291cmNlNDc4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCURFNUY4NjBFMUZB
MjM4NkIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDc5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CURFNUY4NjBGMUZBMjM4NkIwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlNDgwLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTJEOEI5MkNFMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDgx
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkNGMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlm
aWVkU291cmNlNDgyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQwMjAzRDEzRTEwMDlD
ODY4RiAvKiBVbmlmaWVkU291cmNlNDgzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQx
MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg0LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTJEOEI5MkQyMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg1LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTJEOEI5MkQzMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNl
NDg2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQ0MjAzRDEzRTEwMDlDODY4RiAvKiBV
bmlmaWVkU291cmNlNDg3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQ1MjAzRDEzRTEw
MDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5
MkQ2MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDg5LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTJEOEI5MkQ3MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDkwLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQ4MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291
cmNlNDkxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkQ5MjAzRDEzRTEwMDlDODY4RiAv
KiBVbmlmaWVkU291cmNlNDkyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkRBMjAzRDEz
RTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDkzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJE
OEI5MkRCMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDk0LmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTJEOEI5MkRDMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDk1LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkREMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVk
U291cmNlNDk2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkRFMjAzRDEzRTEwMDlDODY4
RiAvKiBVbmlmaWVkU291cmNlNDk3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkRGMjAz
RDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDk4LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTJEOEI5MkUwMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNDk5LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTJEOEI5MkUxMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTAw
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkUyMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlm
aWVkU291cmNlNTAxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkUzMjAzRDEzRTEwMDlD
ODY4RiAvKiBVbmlmaWVkU291cmNlNTAyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkU0
MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTAzLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTJEOEI5MkU1MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA0LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTJEOEI5MkU2MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNl
NTA1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkU3MjAzRDEzRTEwMDlDODY4RiAvKiBV
bmlmaWVkU291cmNlNTA2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkU4MjAzRDEzRTEw
MDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5
MkU5MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA4LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTJEOEI5MkVBMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTA5LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTJEOEI5MkVCMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291
cmNlNTEwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkVDMjAzRDEzRTEwMDlDODY4RiAv
KiBVbmlmaWVkU291cmNlNTExLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkVEMjAzRDEz
RTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTEyLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJE
OEI5MkVFMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTEzLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTJEOEI5MkVGMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTE0LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkYwMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVk
U291cmNlNTE1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkYxMjAzRDEzRTEwMDlDODY4
RiAvKiBVbmlmaWVkU291cmNlNTE2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkYyMjAz
RDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTE3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTJEOEI5MkYzMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTE4LmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTJEOEI5MkY0MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTE5
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkY1MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlm
aWVkU291cmNlNTIwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkY2MjAzRDEzRTEwMDlD
ODY4RiAvKiBVbmlmaWVkU291cmNlNTIxLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkY3
MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTIyLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTJEOEI5MkY4MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTIzLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTJEOEI5MkY5MjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNl
NTI0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkZBMjAzRDEzRTEwMDlDODY4RiAvKiBV
bmlmaWVkU291cmNlNTI1LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkZCMjAzRDEzRTEw
MDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTI2LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5
MkZDMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTI3LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCTJEOEI5MkZEMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291cmNlNTI4LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTJEOEI5MkZFMjAzRDEzRTEwMDlDODY4RiAvKiBVbmlmaWVkU291
cmNlNTI5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEOEI5MkZGMjAzRDEzRTEwMDlDODY4RiAv
KiBVbmlmaWVkU291cmNlNTMwLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUMxOENDMEE3MjU4MEYw
RkEwMDNENzVGQiAvKiBVbml2ZXJzYWxBY2Nlc3Nab29tLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
NTMyMDQyMDIxRjlBOUYxMDAwQjgxQjJBIC8qIFVzZXJBZ2VudFNjcmlwdHNEYXRhLmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTdDM0I3OTcxMTkwODc1N0IwMEI0N0EyRCAvKiBVc2VyTWVzc2FnZUhh
bmRsZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJN0NFNjgzNDQxOTIxNDNBODAwRjREOTI4IC8q
IFVzZXJNZXNzYWdlSGFuZGxlckRlc2NyaXB0b3IuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJN0M3
M0ZCMDcxOTFFRjQxNzAwN0RFMDYxIC8qIFVzZXJNZXNzYWdlSGFuZGxlcnNOYW1lc3BhY2UuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJM0ZCQzRBRjMxODk4ODE1NjAwNDZFRTM4IC8qIFZpZGVvRnVs
bHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUREM0I0QzYyNTFE
QTBCODAwNjlCMjRBIC8qIFZpZGVvTGF5ZXJNYW5hZ2VyT2JqQy5tbSBpbiBTb3VyY2VzICovLAor
CQkJCUNEMzM2RjY3MTdGQTBBQzYwMERERENEMCAvKiBWaWRlb1RyYWNrUHJpdmF0ZUFWRk9iakMu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQ0Q4QjVBNDIxODBEMTQ5QTAwOEI4RTY1IC8qIFZpZGVv
VHJhY2tQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMjZG
OUE4MzgxOEEwNDZBQzAwQUVCODhBIC8qIFZpZXdwb3J0Q29uZmlndXJhdGlvbi5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlDREVEMUMzQzI0Q0QzMDU3MDA5MzRFMTIgLyogVlA5VXRpbGl0aWVzQ29j
b2EubW0gaW4gU291cmNlcyAqLywKKwkJCQlBMTQ4MzJCMTE4N0Y2MUUxMDBEQTYzQTYgLyogV0FL
QXBwS2l0U3R1YnMubSBpbiBTb3VyY2VzICovLAorCQkJCUExNDgzMkIzMTg3RjYyOTEwMERBNjNB
NiAvKiBXQUtDbGlwVmlldy5tIGluIFNvdXJjZXMgKi8sCisJCQkJQTE0ODMyQjUxODdGNjJGQzAw
REE2M0E2IC8qIFdBS1Jlc3BvbmRlci5tIGluIFNvdXJjZXMgKi8sCisJCQkJQTE0ODMyQjkxODdG
NjNENTAwREE2M0E2IC8qIFdBS1ZpZXcubW0gaW4gU291cmNlcyAqLywKKwkJCQlERTVGODYxRTFG
QTI4MUZEMDA2REI2M0EgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJCYXNlLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJREU1Rjg2MUQxRkEyODE1QjAwNkRCNjNBIC8qIFdlYkFjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJQTE4MEFENUIyMTlG
ODFCMDAwREMwMzlBIC8qIFdlYkNvcmVBZGRpdGlvbnMubW0gaW4gU291cmNlcyAqLywKKwkJCQlD
RDdFMDUyMjE2NTFDMjgyMDBDMTIwMUYgLyogV2ViQ29yZUFWRlJlc291cmNlTG9hZGVyLm1tIGlu
IFNvdXJjZXMgKi8sCisJCQkJQ0QyMjVDMEIxQzQ2RkJGNDAwMTQwNzYxIC8qIFdlYkNvcmVOU1VS
TFNlc3Npb24ubW0gaW4gU291cmNlcyAqLywKKwkJCQkxQ0NEODE1MDIyMzFGODNFMDA2NUZDMkIg
LyogV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJOTNGMTlCMDcwODI0NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmVWaWV3Lm0g
aW4gU291cmNlcyAqLywKKwkJCQlDRUNEQzkzRDIxRjI5NzMyMDA5NzZCRDEgLyogV2ViRXZlbnQu
bW0gaW4gU291cmNlcyAqLywKKwkJCQlGNDgyMjMxMDFFMzg2OUI4MDA2NkZDNzkgLyogV2ViSXRl
bVByb3ZpZGVyUGFzdGVib2FyZC5tbSBpbiBTb3VyY2VzICovLAorCQkJCTFBMTQxNEI1MTNBMEYw
NTAwMDE5OTk2QyAvKiBXZWJLaXRGb250RmFtaWx5TmFtZXMuY3BwIGluIFNvdXJjZXMgKi8sCisJ
CQkJMkQwNjIxNDQxREE2MzlCNjAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5TWVzc2FnZUV2ZW50
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEMDYyMTUyMURBNjNBQTIwMEE3RkIyNiAvKiBXZWJL
aXRNZWRpYUtleU5lZWRlZEV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTJEMDYyMTREMURB
NjNBOEIwMEE3RkIyNiAvKiBXZWJLaXRNZWRpYUtleXMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
MkQwNjIxNEYxREE2M0E5MTAwQTdGQjI2IC8qIFdlYktpdE1lZGlhS2V5U2Vzc2lvbi5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQk3QzQ4QTZEMDE5MUM5RDY1MDAwMjY2NzQgLyogV2ViS2l0TmFtZXNw
YWNlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTA3RjVDRkY2MjU4MkE1MjkwMDY2MkVGNSAvKiBX
ZWJNQXVkaW9VdGlsaXRpZXNDb2NvYS5tbSBpbiBTb3VyY2VzICovLAorCQkJCTA3MDlENzkyMUFF
NTU1N0UwMDRFNDJGOCAvKiBXZWJNZWRpYVNlc3Npb25NYW5hZ2VyTWFjLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCTFDQUYzNDgyMEE2QzQwNTIwMEFCRTA2RSAvKiBXZWJTY3JpcHRPYmplY3QubW0g
aW4gU291cmNlcyAqLywKKwkJCQk5MzhDRjI0MjI2QkI3MjhDMDBDMDkyNDAgLyogV2ViU29ja2V0
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUNFQ0RDOTNDMjFGMjk3MjkwMDk3NkJEMSAvKiBXZWJW
aWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0gaW4gU291cmNlcyAqLywKKwkJCQlFMUVF
OEI4MDI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJCb3VuZGVkUmVmZXJlbmNlU3BhY2UuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJRTFFRThCOTMyNDEzMTk1MDAwRTc5NEQ2IC8qIFdlYlhSRnJhbWUu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMTFFNTE2M0QyNjFFMUExNTAwRTY5RjI1IC8qIFdlYlhS
R2FtZXBhZC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEJBMTI0MTMxOTYzMDBFNzk0RDYg
LyogV2ViWFJJbnB1dFNvdXJjZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEI4QzI0MTMx
OTFGMDBFNzk0RDYgLyogV2ViWFJJbnB1dFNvdXJjZUFycmF5LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTExRTUxNjM5MjYxRTFBMDYwMEU2OUYyNSAvKiBXZWJYUklucHV0U3BhY2UuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJRTEyRkRBRkYyNEEwRkQyMDAwNzAyMzZFIC8qIFdlYlhSTGF5ZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJMzE0RjE2OUUyNjQwQkMzQjAwNjYzRUNFIC8qIFdlYlhST3Bh
cXVlRnJhbWVidWZmZXIuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJRTFFRThCOEIyNDEzMTkxRjAw
RTc5NEQ2IC8qIFdlYlhSUG9zZS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEI3RjI0MTMx
OTFGMDBFNzk0RDYgLyogV2ViWFJSZWZlcmVuY2VTcGFjZS5jcHAgaW4gU291cmNlcyAqLywKKwkJ
CQlFMUVFOEI3QzI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJSZW5kZXJTdGF0ZS5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQlFMUVFOEI3QjI0MTMxOTFGMDBFNzk0RDYgLyogV2ViWFJSaWdpZFRyYW5z
Zm9ybS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEJBMjI0MTMxOTYzMDBFNzk0RDYgLyog
V2ViWFJTZXNzaW9uLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUxRUU4Qjk4MjQxMzE5NTAwMEU3
OTRENiAvKiBXZWJYUlNwYWNlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUxRUU4QjhFMjQxMzE5
NTAwMEU3OTRENiAvKiBXZWJYUlN5c3RlbS5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEJB
NDI0MTMxOTYzMDBFNzk0RDYgLyogV2ViWFJWaWV3LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUx
RUU4QkEwMjQxMzE5NTAwMEU3OTRENiAvKiBXZWJYUlZpZXdlclBvc2UuY3BwIGluIFNvdXJjZXMg
Ki8sCisJCQkJRTFFRThCOTEyNDEzMTk1MDAwRTc5NEQ2IC8qIFdlYlhSVmlld3BvcnQuY3BwIGlu
IFNvdXJjZXMgKi8sCisJCQkJRTFFRThCODMyNDEzMTkxRjAwRTc5NEQ2IC8qIFdlYlhSV2ViR0xM
YXllci5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlBMTQ4MzJDMjE4N0Y2NUM3MDBEQTYzQTYgLyog
V0tVdGlsaXRpZXMuYyBpbiBTb3VyY2VzICovLAorCQkJCUE4MzNDN0NDMEEyQ0YwNzQwMEQ1NzY2
NCAvKiBYTGlua05hbWVzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUE4MzNDODBDMEEyQ0YyNTYw
MEQ1NzY2NCAvKiBYTUxOYW1lcy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMTVBMzZEOTExMDQ1
NzI3MDBCN0I2MzkgLyogWE1MTlNOYW1lcy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUVFOEI3
QTI0MTMxOTFGMDBFNzk0RDYgLyogWFJJbnB1dFNvdXJjZUV2ZW50LmNwcCBpbiBTb3VyY2VzICov
LAorCQkJCUUxRUU4QkE3MjQxMzE5NjMwMEU3OTRENiAvKiBYUklucHV0U291cmNlc0NoYW5nZUV2
ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUxRUU4Qjk1MjQxMzE5NTAwMEU3OTRENiAvKiBY
UlJlZmVyZW5jZVNwYWNlRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJRTFFRThCODUyNDEz
MTkxRjAwRTc5NEQ2IC8qIFhSU2Vzc2lvbkV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJKTsK
KwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOworCQl9OworCQlFMUJB
NjcwMjE3NDJCREUwMDBDMjAyNTEgLyogU291cmNlcyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNvdXJj
ZXNCdWlsZFBoYXNlOworCQkJYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKKwkJCWZpbGVz
ID0gKAorCQkJCUUxQkE2NzFBMTc0MkJFRjQwMEMyMDI1MSAvKiBXZWJDb3JlVGVzdFNoaW1MaWJy
YXJ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9z
dHByb2Nlc3NpbmcgPSAwOworCQl9OworLyogRW5kIFBCWFNvdXJjZXNCdWlsZFBoYXNlIHNlY3Rp
b24gKi8KKworLyogQmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovCisJCTFDMDlE
MDY4MUUzMjA3OUQwMDcyNUYxOCAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geworCQkJaXNh
ID0gUEJYVGFyZ2V0RGVwZW5kZW5jeTsKKwkJCW5hbWUgPSBQQUw7CisJCQl0YXJnZXRQcm94eSA9
IDFDMDlEMDY3MUUzMjA3OUQwMDcyNUYxOCAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJ
CX07CisJCTQxN0RBNkQ1MTM3MzRFMEQwMDdDNTdGQiAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICov
ID0geworCQkJaXNhID0gUEJYVGFyZ2V0RGVwZW5kZW5jeTsKKwkJCXRhcmdldCA9IDkzRjE5OEE1
MDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlICovOworCQkJdGFyZ2V0UHJveHkgPSA0MTdEQTZE
NDEzNzM0RTBEMDA3QzU3RkIgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOworCQl9OworCQk0
MTgxNkY4MzEzODU5QzdBMDA1N0FBQTQgLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLyA9IHsKKwkJ
CWlzYSA9IFBCWFRhcmdldERlcGVuZGVuY3k7CisJCQl0YXJnZXQgPSA5M0YxOThBNTA4MjQ1RTU5
MDAxRTlBQkMgLyogV2ViQ29yZSAqLzsKKwkJCXRhcmdldFByb3h5ID0gNDE4MTZGODIxMzg1OUM3
QTAwNTdBQUE0IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJfTsKKwkJNDE4MTZGODUx
Mzg1OUM3RDAwNTdBQUE0IC8qIFBCWFRhcmdldERlcGVuZGVuY3kgKi8gPSB7CisJCQlpc2EgPSBQ
QlhUYXJnZXREZXBlbmRlbmN5OworCQkJdGFyZ2V0ID0gNDE3REE2Q0YxMzczNEUwMjAwN0M1N0ZC
IC8qIFdlYkNvcmVUZXN0U3VwcG9ydCAqLzsKKwkJCXRhcmdldFByb3h5ID0gNDE4MTZGODQxMzg1
OUM3RDAwNTdBQUE0IC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJfTsKKwkJNTM1NUU4
REIxRjk2N0VEMzAwMzFFMDhDIC8qIFBCWFRhcmdldERlcGVuZGVuY3kgKi8gPSB7CisJCQlpc2Eg
PSBQQlhUYXJnZXREZXBlbmRlbmN5OworCQkJdGFyZ2V0ID0gNTM1NUU4RDExRjk2N0U5RDAwMzFF
MDhDIC8qIEdlbmVyYXRlIFVuaWZpZWQgU291cmNlcyAqLzsKKwkJCXRhcmdldFByb3h5ID0gNTM1
NUU4REExRjk2N0VEMzAwMzFFMDhDIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJfTsK
KwkJREQwNDFGRjEwOUQ5RTMyNTAwMTBBRjJBIC8qIFBCWFRhcmdldERlcGVuZGVuY3kgKi8gPSB7
CisJCQlpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OworCQkJdGFyZ2V0ID0gREQwNDFGQkUwOUQ5
RERCRTAwMTBBRjJBIC8qIERlcml2ZWQgU291cmNlcyAqLzsKKwkJCXRhcmdldFByb3h5ID0gREQw
NDFGRjAwOUQ5RTMyNTAwMTBBRjJBIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsKKwkJfTsK
KwkJRTFCQTY2RjQxNzQyQkRFMDAwQzIwMjUxIC8qIFBCWFRhcmdldERlcGVuZGVuY3kgKi8gPSB7
CisJCQlpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OworCQkJdGFyZ2V0ID0gOTNGMTk4QTUwODI0
NUU1OTAwMUU5QUJDIC8qIFdlYkNvcmUgKi87CisJCQl0YXJnZXRQcm94eSA9IEUxQkE2NkY1MTc0
MkJERTAwMEMyMDI1MSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCX07CisJCUUxQkE2
NzFDMTc0MkNCRjgwMEMyMDI1MSAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geworCQkJaXNh
ID0gUEJYVGFyZ2V0RGVwZW5kZW5jeTsKKwkJCXRhcmdldCA9IEUxQkE2NkYzMTc0MkJERTAwMEMy
MDI1MSAvKiBXZWJDb3JlVGVzdFNoaW0gKi87CisJCQl0YXJnZXRQcm94eSA9IEUxQkE2NzFCMTc0
MkNCRjgwMEMyMDI1MSAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87CisJCX07CisvKiBFbmQg
UEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovCisKKy8qIEJlZ2luIFBCWFZhcmlhbnRHcm91
cCBzZWN0aW9uICovCisJCTcxQTFCNjA2MURFRTVBODIwMDczQkNGQiAvKiBtb2Rlcm4tbWVkaWEt
Y29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanMgKi8gPSB7CisJCQlpc2EgPSBQQlhWYXJpYW50
R3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQk3MUExQjYwNzFERUU1QTgyMDA3M0JDRkIgLyog
ZW4gKi8sCisJCQkpOworCQkJbmFtZSA9ICJtb2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVk
LXN0cmluZ3MuanMiOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKwkJODM3QTgw
MTExRTFFMTI3MzAwMDI2QjlGIC8qIExvY2FsaXphYmxlLnN0cmluZ3NkaWN0ICovID0geworCQkJ
aXNhID0gUEJYVmFyaWFudEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJODM3QTgwMTIxRTFF
MTI3MzAwMDI2QjlGIC8qIGVuICovLAorCQkJKTsKKwkJCW5hbWUgPSBMb2NhbGl6YWJsZS5zdHJp
bmdzZGljdDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CisJCUJDQUQxODA4MTMx
QzdBMEQwMDk5MDQwNiAvKiBMb2NhbGl6YWJsZS5zdHJpbmdzICovID0geworCQkJaXNhID0gUEJY
VmFyaWFudEdyb3VwOworCQkJY2hpbGRyZW4gPSAoCisJCQkJQkNBRDE4MDkxMzFDN0EwRDAwOTkw
NDA2IC8qIGVuICovLAorCQkJKTsKKwkJCW5hbWUgPSBMb2NhbGl6YWJsZS5zdHJpbmdzOworCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKKy8qIEVuZCBQQlhWYXJpYW50R3JvdXAgc2Vj
dGlvbiAqLworCisvKiBCZWdpbiBYQ0J1aWxkQ29uZmlndXJhdGlvbiBzZWN0aW9uICovCisJCTE0
OUMyODNBMDg5MDJCMTEwMDhBOUVGQyAvKiBEZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRD
b25maWd1cmF0aW9uOworCQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSAxQ0RENDVFNTBC
QTlDODQ2MDBGOTAxNDcgLyogV2ViQ29yZS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3Mg
PSB7CisJCQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQkxNDlDMjgzQjA4OTAyQjExMDA4
QTlFRkMgLyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOwor
CQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSAxQ0RENDVFNTBCQTlDODQ2MDBGOTAxNDcg
LyogV2ViQ29yZS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQl9OworCQkJ
bmFtZSA9IFJlbGVhc2U7CisJCX07CisJCTE0OUMyODNEMDg5MDJCMTEwMDhBOUVGQyAvKiBQcm9k
dWN0aW9uICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29u
ZmlndXJhdGlvblJlZmVyZW5jZSA9IDFDREQ0NUU1MEJBOUM4NDYwMEY5MDE0NyAvKiBXZWJDb3Jl
LnhjY29uZmlnICovOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlCVUlMRF9WQVJJQU5UUyA9
IG5vcm1hbDsKKwkJCX07CisJCQluYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKKwkJMTQ5QzI4NDQw
ODkwMkIxMTAwOEE5RUZDIC8qIERlYnVnICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3Vy
YXRpb247CisJCQliYXNlQ29uZmlndXJhdGlvblJlZmVyZW5jZSA9IDFDREQ0NUU0MEJBOUM4NDYw
MEY5MDE0NyAvKiBEZWJ1Z1JlbGVhc2UueGNjb25maWcgKi87CisJCQlidWlsZFNldHRpbmdzID0g
eworCQkJfTsKKwkJCW5hbWUgPSBEZWJ1ZzsKKwkJfTsKKwkJMTQ5QzI4NDUwODkwMkIxMTAwOEE5
RUZDIC8qIFJlbGVhc2UgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJ
CWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gMUNERDQ1RTQwQkE5Qzg0NjAwRjkwMTQ3IC8q
IERlYnVnUmVsZWFzZS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJU1RS
SVBfSU5TVEFMTEVEX1BST0RVQ1QgPSBOTzsKKwkJCX07CisJCQluYW1lID0gUmVsZWFzZTsKKwkJ
fTsKKwkJMTQ5QzI4NDcwODkwMkIxMTAwOEE5RUZDIC8qIFByb2R1Y3Rpb24gKi8gPSB7CisJCQlp
c2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNl
ID0gMUNERDQ1RTYwQkE5Qzg0NjAwRjkwMTQ3IC8qIEJhc2UueGNjb25maWcgKi87CisJCQlidWls
ZFNldHRpbmdzID0geworCQkJfTsKKwkJCW5hbWUgPSBQcm9kdWN0aW9uOworCQl9OworCQk0MTdE
QTZEMTEzNzM0RTAyMDA3QzU3RkIgLyogRGVidWcgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29u
ZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gNDE4MTcwN0QxMzg2
RURGMjAwNTdBQUE0IC8qIFdlYkNvcmVUZXN0U3VwcG9ydC54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxk
U2V0dGluZ3MgPSB7CisJCQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQk0MTdEQTZEMjEz
NzM0RTAyMDA3QzU3RkIgLyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1
cmF0aW9uOworCQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSA0MTgxNzA3RDEzODZFREYy
MDA1N0FBQTQgLyogV2ViQ29yZVRlc3RTdXBwb3J0LnhjY29uZmlnICovOworCQkJYnVpbGRTZXR0
aW5ncyA9IHsKKwkJCX07CisJCQluYW1lID0gUmVsZWFzZTsKKwkJfTsKKwkJNDE3REE2RDMxMzcz
NEUwMjAwN0M1N0ZCIC8qIFByb2R1Y3Rpb24gKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmln
dXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gNDE4MTcwN0QxMzg2RURG
MjAwNTdBQUE0IC8qIFdlYkNvcmVUZXN0U3VwcG9ydC54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0
dGluZ3MgPSB7CisJCQl9OworCQkJbmFtZSA9IFByb2R1Y3Rpb247CisJCX07CisJCTQxODE2RjdB
MTM4NTlDNTYwMDU3QUFBNCAvKiBEZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1
cmF0aW9uOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlQUk9EVUNUX05BTUUgPSBBbGw7CisJ
CQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQk0MTgxNkY3QjEzODU5QzU2MDA1N0FBQTQg
LyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYnVp
bGRTZXR0aW5ncyA9IHsKKwkJCQlQUk9EVUNUX05BTUUgPSBBbGw7CisJCQl9OworCQkJbmFtZSA9
IFJlbGVhc2U7CisJCX07CisJCTQxODE2RjdDMTM4NTlDNTYwMDU3QUFBNCAvKiBQcm9kdWN0aW9u
ICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQlidWlsZFNldHRpbmdz
ID0geworCQkJCVBST0RVQ1RfTkFNRSA9IEFsbDsKKwkJCX07CisJCQluYW1lID0gUHJvZHVjdGlv
bjsKKwkJfTsKKwkJNTMyNUJEQzcyMURGRjMzOTAwQTBERUUxIC8qIERlYnVnICovID0geworCQkJ
aXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29uZmlndXJhdGlvblJlZmVyZW5j
ZSA9IDFDREQ0NUU1MEJBOUM4NDYwMEY5MDE0NyAvKiBXZWJDb3JlLnhjY29uZmlnICovOworCQkJ
YnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlDT0RFX1NJR05fU1RZTEUgPSBBdXRvbWF0aWM7CisJCQkJ
UFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05BTUUpIjsKKwkJCX07CisJCQluYW1lID0gRGVidWc7
CisJCX07CisJCTUzMjVCREM4MjFERkYzMzkwMEEwREVFMSAvKiBSZWxlYXNlICovID0geworCQkJ
aXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29uZmlndXJhdGlvblJlZmVyZW5j
ZSA9IDFDREQ0NUU1MEJBOUM4NDYwMEY5MDE0NyAvKiBXZWJDb3JlLnhjY29uZmlnICovOworCQkJ
YnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlDT0RFX1NJR05fU1RZTEUgPSBBdXRvbWF0aWM7CisJCQkJ
UFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05BTUUpIjsKKwkJCX07CisJCQluYW1lID0gUmVsZWFz
ZTsKKwkJfTsKKwkJNTMyNUJEQzkyMURGRjMzOTAwQTBERUUxIC8qIFByb2R1Y3Rpb24gKi8gPSB7
CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVm
ZXJlbmNlID0gMUNERDQ1RTUwQkE5Qzg0NjAwRjkwMTQ3IC8qIFdlYkNvcmUueGNjb25maWcgKi87
CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCUNPREVfU0lHTl9TVFlMRSA9IEF1dG9tYXRpYzsK
KwkJCQlQUk9EVUNUX05BTUUgPSAiJChUQVJHRVRfTkFNRSkiOworCQkJfTsKKwkJCW5hbWUgPSBQ
cm9kdWN0aW9uOworCQl9OworCQk1MzU1RThENTFGOTY3RTlEMDAzMUUwOEMgLyogRGVidWcgKi8g
PSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsKKwkJCWJhc2VDb25maWd1cmF0aW9u
UmVmZXJlbmNlID0gNTM1NUU4REQxRjk2ODA0MjAwMzFFMDhDIC8qIEdlbmVyYXRlVW5pZmllZFNv
dXJjZXMueGNjb25maWcgKi87CisJCQlidWlsZFNldHRpbmdzID0geworCQkJCVBST0RVQ1RfTkFN
RSA9ICIkKFRBUkdFVF9OQU1FKSI7CisJCQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQk1
MzU1RThENjFGOTY3RTlEMDAzMUUwOEMgLyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVp
bGRDb25maWd1cmF0aW9uOworCQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSA1MzU1RThE
RDFGOTY4MDQyMDAzMUUwOEMgLyogR2VuZXJhdGVVbmlmaWVkU291cmNlcy54Y2NvbmZpZyAqLzsK
KwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJUFJPRFVDVF9OQU1FID0gIiQoVEFSR0VUX05BTUUp
IjsKKwkJCX07CisJCQluYW1lID0gUmVsZWFzZTsKKwkJfTsKKwkJNTM1NUU4RDcxRjk2N0U5RDAw
MzFFMDhDIC8qIFByb2R1Y3Rpb24gKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlv
bjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gNTM1NUU4REQxRjk2ODA0MjAwMzFF
MDhDIC8qIEdlbmVyYXRlVW5pZmllZFNvdXJjZXMueGNjb25maWcgKi87CisJCQlidWlsZFNldHRp
bmdzID0geworCQkJCVBST0RVQ1RfTkFNRSA9ICIkKFRBUkdFVF9OQU1FKSI7CisJCQl9OworCQkJ
bmFtZSA9IFByb2R1Y3Rpb247CisJCX07CisJCUREMDQxRkMyMDlEOUREREMwMDEwQUYyQSAvKiBE
ZWJ1ZyAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOworCQkJYmFzZUNvbmZp
Z3VyYXRpb25SZWZlcmVuY2UgPSAxQ0RENDVFNTBCQTlDODQ2MDBGOTAxNDcgLyogV2ViQ29yZS54
Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7CisJCQkJUFJPRFVDVF9OQU1FID0gIkRl
cml2ZWQgU291cmNlcyI7CisJCQl9OworCQkJbmFtZSA9IERlYnVnOworCQl9OworCQlERDA0MUZD
MzA5RDlERERDMDAxMEFGMkEgLyogUmVsZWFzZSAqLyA9IHsKKwkJCWlzYSA9IFhDQnVpbGRDb25m
aWd1cmF0aW9uOworCQkJYmFzZUNvbmZpZ3VyYXRpb25SZWZlcmVuY2UgPSAxQ0RENDVFNTBCQTlD
ODQ2MDBGOTAxNDcgLyogV2ViQ29yZS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7
CisJCQkJUFJPRFVDVF9OQU1FID0gIkRlcml2ZWQgU291cmNlcyI7CisJCQl9OworCQkJbmFtZSA9
IFJlbGVhc2U7CisJCX07CisJCUREMDQxRkM0MDlEOUREREMwMDEwQUYyQSAvKiBQcm9kdWN0aW9u
ICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247CisJCQliYXNlQ29uZmlndXJh
dGlvblJlZmVyZW5jZSA9IDFDREQ0NUU1MEJBOUM4NDYwMEY5MDE0NyAvKiBXZWJDb3JlLnhjY29u
ZmlnICovOworCQkJYnVpbGRTZXR0aW5ncyA9IHsKKwkJCQlQUk9EVUNUX05BTUUgPSAiRGVyaXZl
ZCBTb3VyY2VzIjsKKwkJCX07CisJCQluYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKKwkJRTFCQTY3
MTMxNzQyQkRFMDAwQzIwMjUxIC8qIERlYnVnICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZp
Z3VyYXRpb247CisJCQliYXNlQ29uZmlndXJhdGlvblJlZmVyZW5jZSA9IEUxQkE2NkYyMTc0MkJE
Q0MwMEMyMDI1MSAvKiBXZWJDb3JlVGVzdFNoaW0ueGNjb25maWcgKi87CisJCQlidWlsZFNldHRp
bmdzID0geworCQkJfTsKKwkJCW5hbWUgPSBEZWJ1ZzsKKwkJfTsKKwkJRTFCQTY3MTQxNzQyQkRF
MDAwQzIwMjUxIC8qIFJlbGVhc2UgKi8gPSB7CisJCQlpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlv
bjsKKwkJCWJhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gRTFCQTY2RjIxNzQyQkRDQzAwQzIw
MjUxIC8qIFdlYkNvcmVUZXN0U2hpbS54Y2NvbmZpZyAqLzsKKwkJCWJ1aWxkU2V0dGluZ3MgPSB7
CisJCQl9OworCQkJbmFtZSA9IFJlbGVhc2U7CisJCX07CisJCUUxQkE2NzE1MTc0MkJERTAwMEMy
MDI1MSAvKiBQcm9kdWN0aW9uICovID0geworCQkJaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247
CisJCQliYXNlQ29uZmlndXJhdGlvblJlZmVyZW5jZSA9IEUxQkE2NkYyMTc0MkJEQ0MwMEMyMDI1
MSAvKiBXZWJDb3JlVGVzdFNoaW0ueGNjb25maWcgKi87CisJCQlidWlsZFNldHRpbmdzID0gewor
CQkJfTsKKwkJCW5hbWUgPSBQcm9kdWN0aW9uOworCQl9OworLyogRW5kIFhDQnVpbGRDb25maWd1
cmF0aW9uIHNlY3Rpb24gKi8KKworLyogQmVnaW4gWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9u
ICovCisJCTE0OUMyODM5MDg5MDJCMTEwMDhBOUVGQyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxp
c3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAiV2ViQ29yZSIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZp
Z3VyYXRpb25MaXN0OworCQkJYnVpbGRDb25maWd1cmF0aW9ucyA9ICgKKwkJCQkxNDlDMjgzQTA4
OTAyQjExMDA4QTlFRkMgLyogRGVidWcgKi8sCisJCQkJMTQ5QzI4M0IwODkwMkIxMTAwOEE5RUZD
IC8qIFJlbGVhc2UgKi8sCisJCQkJMTQ5QzI4M0QwODkwMkIxMTAwOEE5RUZDIC8qIFByb2R1Y3Rp
b24gKi8sCisJCQkpOworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJ
ZGVmYXVsdENvbmZpZ3VyYXRpb25OYW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKKwkJMTQ5QzI4NDMw
ODkwMkIxMTAwOEE5RUZDIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVj
dCAiV2ViQ29yZSIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OworCQkJYnVp
bGRDb25maWd1cmF0aW9ucyA9ICgKKwkJCQkxNDlDMjg0NDA4OTAyQjExMDA4QTlFRkMgLyogRGVi
dWcgKi8sCisJCQkJMTQ5QzI4NDUwODkwMkIxMTAwOEE5RUZDIC8qIFJlbGVhc2UgKi8sCisJCQkJ
MTQ5QzI4NDcwODkwMkIxMTAwOEE5RUZDIC8qIFByb2R1Y3Rpb24gKi8sCisJCQkpOworCQkJZGVm
YXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25O
YW1lID0gUHJvZHVjdGlvbjsKKwkJfTsKKwkJNDE3REE2RDgxMzczNEU0NzAwN0M1N0ZCIC8qIEJ1
aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJXZWJDb3JlVGVzdFN1
cHBvcnQiICovID0geworCQkJaXNhID0gWENDb25maWd1cmF0aW9uTGlzdDsKKwkJCWJ1aWxkQ29u
ZmlndXJhdGlvbnMgPSAoCisJCQkJNDE3REE2RDExMzczNEUwMjAwN0M1N0ZCIC8qIERlYnVnICov
LAorCQkJCTQxN0RBNkQyMTM3MzRFMDIwMDdDNTdGQiAvKiBSZWxlYXNlICovLAorCQkJCTQxN0RB
NkQzMTM3MzRFMDIwMDdDNTdGQiAvKiBQcm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRD
b25maWd1cmF0aW9uSXNWaXNpYmxlID0gMDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9
IFByb2R1Y3Rpb247CisJCX07CisJCTQxODE2RjgxMTM4NTlDNjQwMDU3QUFBNCAvKiBCdWlsZCBj
b25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWEFnZ3JlZ2F0ZVRhcmdldCAiQWxsIiAqLyA9IHsKKwkJ
CWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQlidWlsZENvbmZpZ3VyYXRpb25zID0gKAor
CQkJCTQxODE2RjdBMTM4NTlDNTYwMDU3QUFBNCAvKiBEZWJ1ZyAqLywKKwkJCQk0MTgxNkY3QjEz
ODU5QzU2MDA1N0FBQTQgLyogUmVsZWFzZSAqLywKKwkJCQk0MTgxNkY3QzEzODU5QzU2MDA1N0FB
QTQgLyogUHJvZHVjdGlvbiAqLywKKwkJCSk7CisJCQlkZWZhdWx0Q29uZmlndXJhdGlvbklzVmlz
aWJsZSA9IDA7CisJCQlkZWZhdWx0Q29uZmlndXJhdGlvbk5hbWUgPSBQcm9kdWN0aW9uOworCQl9
OworCQk1MzI1QkRDQjIxREZGMzNBMDBBMERFRTEgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0
IGZvciBQQlhBZ2dyZWdhdGVUYXJnZXQgIkFwcGx5IENvbmZpZ3VyYXRpb24gdG8gWENGaWxlTGlz
dHMiICovID0geworCQkJaXNhID0gWENDb25maWd1cmF0aW9uTGlzdDsKKwkJCWJ1aWxkQ29uZmln
dXJhdGlvbnMgPSAoCisJCQkJNTMyNUJEQzcyMURGRjMzOTAwQTBERUUxIC8qIERlYnVnICovLAor
CQkJCTUzMjVCREM4MjFERkYzMzkwMEEwREVFMSAvKiBSZWxlYXNlICovLAorCQkJCTUzMjVCREM5
MjFERkYzMzkwMEEwREVFMSAvKiBQcm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRDb25m
aWd1cmF0aW9uSXNWaXNpYmxlID0gMDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFBy
b2R1Y3Rpb247CisJCX07CisJCTUzNTVFOEQ0MUY5NjdFOUQwMDMxRTA4QyAvKiBCdWlsZCBjb25m
aWd1cmF0aW9uIGxpc3QgZm9yIFBCWEFnZ3JlZ2F0ZVRhcmdldCAiR2VuZXJhdGUgVW5pZmllZCBT
b3VyY2VzIiAqLyA9IHsKKwkJCWlzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7CisJCQlidWlsZENv
bmZpZ3VyYXRpb25zID0gKAorCQkJCTUzNTVFOEQ1MUY5NjdFOUQwMDMxRTA4QyAvKiBEZWJ1ZyAq
LywKKwkJCQk1MzU1RThENjFGOTY3RTlEMDAzMUUwOEMgLyogUmVsZWFzZSAqLywKKwkJCQk1MzU1
RThENzFGOTY3RTlEMDAzMUUwOEMgLyogUHJvZHVjdGlvbiAqLywKKwkJCSk7CisJCQlkZWZhdWx0
Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7CisJCQlkZWZhdWx0Q29uZmlndXJhdGlvbk5hbWUg
PSBQcm9kdWN0aW9uOworCQl9OworCQlERDA0MUZDMTA5RDlERERDMDAxMEFGMkEgLyogQnVpbGQg
Y29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhBZ2dyZWdhdGVUYXJnZXQgIkRlcml2ZWQgU291cmNl
cyIgKi8gPSB7CisJCQlpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OworCQkJYnVpbGRDb25maWd1
cmF0aW9ucyA9ICgKKwkJCQlERDA0MUZDMjA5RDlERERDMDAxMEFGMkEgLyogRGVidWcgKi8sCisJ
CQkJREQwNDFGQzMwOUQ5REREQzAwMTBBRjJBIC8qIFJlbGVhc2UgKi8sCisJCQkJREQwNDFGQzQw
OUQ5REREQzAwMTBBRjJBIC8qIFByb2R1Y3Rpb24gKi8sCisJCQkpOworCQkJZGVmYXVsdENvbmZp
Z3VyYXRpb25Jc1Zpc2libGUgPSAwOworCQkJZGVmYXVsdENvbmZpZ3VyYXRpb25OYW1lID0gUHJv
ZHVjdGlvbjsKKwkJfTsKKwkJRTFCQTY3MTIxNzQyQkRFMDAwQzIwMjUxIC8qIEJ1aWxkIGNvbmZp
Z3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICJXZWJDb3JlVGVzdFNoaW0iICovID0g
eworCQkJaXNhID0gWENDb25maWd1cmF0aW9uTGlzdDsKKwkJCWJ1aWxkQ29uZmlndXJhdGlvbnMg
PSAoCisJCQkJRTFCQTY3MTMxNzQyQkRFMDAwQzIwMjUxIC8qIERlYnVnICovLAorCQkJCUUxQkE2
NzE0MTc0MkJERTAwMEMyMDI1MSAvKiBSZWxlYXNlICovLAorCQkJCUUxQkE2NzE1MTc0MkJERTAw
MEMyMDI1MSAvKiBQcm9kdWN0aW9uICovLAorCQkJKTsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9u
SXNWaXNpYmxlID0gMDsKKwkJCWRlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9IFByb2R1Y3Rpb247
CisJCX07CisvKiBFbmQgWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovCisJfTsKKwlyb290
T2JqZWN0ID0gMDg2N0Q2OTBGRTg0MDI4RkMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovOwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2Ny
aXB0TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3Jp
cHRMb2FkZXIuaAppbmRleCA3NmQxNGRhZmFhYWQxMjI5YmVlMDNlYjcxMjk2MmIwYWI2M2EwNWI1
Li45NjM5MGEwODBlNjExNDlkYzE2Y2I4NmViOWE5MDhlYWIwZTE5NmI2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaApA
QCAtNjUsNyArNjUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFdvcmtlck1vZHVsZVNjcmlw
dExvYWRlcihNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQmLCBEZWZlcnJlZFByb21pc2UmLCBXb3Jr
ZXJTY3JpcHRGZXRjaGVyJiwgUmVmUHRyPE1vZHVsZUZldGNoUGFyYW1ldGVycz4mJik7CiAKLSAg
ICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWwgeyB9CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWwgeyB9CiAgICAg
dm9pZCBub3RpZnlGaW5pc2hlZCgpIGZpbmFsOwogCiAgICAgdm9pZCBub3RpZnlDbGllbnRGaW5p
c2hlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggODU1MzQxMjA1ZjNhN2I5NDI2ZmE3
ODhjM2I1YTE3OWE4MTZhYWVkZi4uNmYxZTk5ZWFiNGRlZWYxMTIxZjAzYjkzZjZlZjEyZjI2ODEz
ZTcyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0zODMzLDEyICszODMzLDEyIEBAIHZv
aWQgRG9jdW1lbnQ6OnByb2Nlc3NNZXRhSHR0cEVxdWl2KGNvbnN0IFN0cmluZyYgZXF1aXYsIGNv
bnN0IFN0cmluZyYgY29udGVudCwKICAgICBjYXNlIEhUVFBIZWFkZXJOYW1lOjpYRnJhbWVPcHRp
b25zOgogICAgICAgICBpZiAoZnJhbWUpIHsKICAgICAgICAgICAgIEZyYW1lTG9hZGVyJiBmcmFt
ZUxvYWRlciA9IGZyYW1lLT5sb2FkZXIoKTsKLSAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgcmVx
dWVzdElkZW50aWZpZXIgPSAwOworICAgICAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlcXVlc3RJZGVudGlmaWVyOwogICAgICAgICAgICAgaWYgKGZyYW1lTG9hZGVyLmFjdGl2ZURv
Y3VtZW50TG9hZGVyKCkgJiYgZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+bWFp
blJlc291cmNlTG9hZGVyKCkpCiAgICAgICAgICAgICAgICAgcmVxdWVzdElkZW50aWZpZXIgPSBm
cmFtZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VMb2FkZXIoKS0+
aWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9ICJUaGUgWC1GcmFt
ZS1PcHRpb24gJyIgKyBjb250ZW50ICsgIicgc3VwcGxpZWQgaW4gYSA8bWV0YT4gZWxlbWVudCB3
YXMgaWdub3JlZC4gWC1GcmFtZS1PcHRpb25zIG1heSBvbmx5IGJlIHByb3ZpZGVkIGJ5IGFuIEhU
VFAgaGVhZGVyIHNlbnQgd2l0aCB0aGUgZG9jdW1lbnQuIjsKLSAgICAgICAgICAgIGFkZENvbnNv
bGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBt
ZXNzYWdlLCByZXF1ZXN0SWRlbnRpZmllcik7CisgICAgICAgICAgICBhZGRDb25zb2xlTWVzc2Fn
ZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwg
cmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAub3JpZyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAub3JpZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NTUzNDEyMDVm
M2E3Yjk0MjZmYTc4OGMzYjVhMTc5YTgxNmFhZWRmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcC5vcmlnCkBAIC0wLDAgKzEsODk3OSBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBrZGUub3JnKQorICogICAgICAg
ICAgIChDKSAxOTk5IEFudHRpIEtvaXZpc3RvIChrb2l2aXN0b0BrZGUub3JnKQorICogICAgICAg
ICAgIChDKSAyMDAxIERpcmsgTXVlbGxlciAobXVlbGxlckBrZGUub3JnKQorICogICAgICAgICAg
IChDKSAyMDA2IEFsZXhleSBQcm9za3VyeWFrb3YgKGFwQHdlYmtpdC5vcmcpCisgKiBDb3B5cmln
aHQgKEMpIDIwMDQtMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMDgsIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4gKGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLykKKyAqIENvcHlyaWdodCAoQykgMjAwOCwg
MjAwOSwgMjAxMSwgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDEwIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgt
aWVzKQorICogQ29weXJpZ2h0IChDKSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRlZCAyMDEwLTIw
MTEuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29m
dHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVy
IHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2Ug
YXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICog
dmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2
ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJ
TkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
biwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEg
MDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJE
b2N1bWVudC5oIgorCisjaW5jbHVkZSAiQVhPYmplY3RDYWNoZS5oIgorI2luY2x1ZGUgIkFwcGxp
Y2F0aW9uTWFuaWZlc3QuaCIKKyNpbmNsdWRlICJBdHRyLmgiCisjaW5jbHVkZSAiQmVmb3JlVW5s
b2FkRXZlbnQuaCIKKyNpbmNsdWRlICJDREFUQVNlY3Rpb24uaCIKKyNpbmNsdWRlICJDU1NGb250
U2VsZWN0b3IuaCIKKyNpbmNsdWRlICJDU1NQYXJzZXIuaCIKKyNpbmNsdWRlICJDU1NTdHlsZURl
Y2xhcmF0aW9uLmgiCisjaW5jbHVkZSAiQ1NTU3R5bGVTaGVldC5oIgorI2luY2x1ZGUgIkNhY2hl
ZENTU1N0eWxlU2hlZXQuaCIKKyNpbmNsdWRlICJDYWNoZWRGb250TG9hZFJlcXVlc3QuaCIKKyNp
bmNsdWRlICJDYWNoZWRGcmFtZS5oIgorI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgi
CisjaW5jbHVkZSAiQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmgiCisjaW5jbHVkZSAiQ2hyb21l
LmgiCisjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCisjaW5jbHVkZSAiQ29tbWVudC5oIgorI2lu
Y2x1ZGUgIkNvbW1vblZNLmgiCisjaW5jbHVkZSAiQ29tcG9zZWRUcmVlSXRlcmF0b3IuaCIKKyNp
bmNsdWRlICJDb21wb3NpdGlvbkV2ZW50LmgiCisjaW5jbHVkZSAiQ29uc3RhbnRQcm9wZXJ0eU1h
cC5oIgorI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgorI2luY2x1ZGUgIkNvbnRl
bnRmdWxQYWludENoZWNrZXIuaCIKKyNpbmNsdWRlICJDb29raWVKYXIuaCIKKyNpbmNsdWRlICJD
dXN0b21FbGVtZW50UmVhY3Rpb25RdWV1ZS5oIgorI2luY2x1ZGUgIkN1c3RvbUVsZW1lbnRSZWdp
c3RyeS5oIgorI2luY2x1ZGUgIkN1c3RvbUV2ZW50LmgiCisjaW5jbHVkZSAiRE9NQ1NTUGFpbnRX
b3JrbGV0LmgiCisjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIKKyNpbmNsdWRlICJET01X
aW5kb3cuaCIKKyNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5oIgorI2luY2x1ZGUgIkRlYnVnUGFn
ZU92ZXJsYXlzLmgiCisjaW5jbHVkZSAiRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzLmgiCisjaW5j
bHVkZSAiRG9jdW1lbnRGb250TG9hZGVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRMb2FkZXIuaCIK
KyNpbmNsdWRlICJEb2N1bWVudE1hcmtlckNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEb2N1bWVu
dFNoYXJlZE9iamVjdFBvb2wuaCIKKyNpbmNsdWRlICJEb2N1bWVudFRpbWVsaW5lLmgiCisjaW5j
bHVkZSAiRG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRU
eXBlLmgiCisjaW5jbHVkZSAiRHJhZ0V2ZW50LmgiCisjaW5jbHVkZSAiRWRpdGluZy5oIgorI2lu
Y2x1ZGUgIkVkaXRvci5oIgorI2luY2x1ZGUgIkVsZW1lbnRJdGVyYXRvci5oIgorI2luY2x1ZGUg
IkV2ZW50SGFuZGxlci5oIgorI2luY2x1ZGUgIkV4dGVuc2lvblN0eWxlU2hlZXRzLmgiCisjaW5j
bHVkZSAiRm9jdXNDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiRm9jdXNFdmVudC5oIgorI2luY2x1
ZGUgIkZvY3VzT3B0aW9ucy5oIgorI2luY2x1ZGUgIkZvbnRGYWNlU2V0LmgiCisjaW5jbHVkZSAi
Rm9ybUNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkZyYW1lTG9h
ZGVyLmgiCisjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnQuaCIKKyNpbmNsdWRlICJGcmFtZVZp
ZXcuaCIKKyNpbmNsdWRlICJGdWxsc2NyZWVuTWFuYWdlci5oIgorI2luY2x1ZGUgIkdDUmVhY2hh
YmxlUmVmLmgiCisjaW5jbHVkZSAiR2VuZXJpY0NhY2hlZEhUTUxDb2xsZWN0aW9uLmgiCisjaW5j
bHVkZSAiSFRNTEFsbENvbGxlY3Rpb24uaCIKKyNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5o
IgorI2luY2x1ZGUgIkhUTUxBdHRhY2htZW50RWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxCYXNl
RWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxCb2R5RWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxD
YW52YXNFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTENvbnN0cnVjdGlvblNpdGUuaCIKKyNpbmNs
dWRlICJIVE1MRGlhbG9nRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxEb2N1bWVudC5oIgorI2lu
Y2x1ZGUgIkhUTUxFbGVtZW50RmFjdG9yeS5oIgorI2luY2x1ZGUgIkhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MRnJhbWVFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEZy
YW1lT3duZXJFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEZyYW1lU2V0RWxlbWVudC5oIgorI2lu
Y2x1ZGUgIkhUTUxIZWFkRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxIdG1sRWxlbWVudC5oIgor
I2luY2x1ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVu
dC5oIgorI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MTGlua0Vs
ZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTE1l
dGFFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTE5hbWVDb2xsZWN0aW9uLmgiCisjaW5jbHVkZSAi
SFRNTFBhcnNlcklkaW9tcy5oIgorI2luY2x1ZGUgIkhUTUxQaWN0dXJlRWxlbWVudC5oIgorI2lu
Y2x1ZGUgIkhUTUxQbHVnSW5FbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFNjcmlwdEVsZW1lbnQu
aCIKKyNpbmNsdWRlICJIVE1MU3R5bGVFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFRpdGxlRWxl
bWVudC5oIgorI2luY2x1ZGUgIkhUTUxVbmtub3duRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUVFBI
ZWFkZXJOYW1lcy5oIgorI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCisjaW5jbHVkZSAiSGFzaENo
YW5nZUV2ZW50LmgiCisjaW5jbHVkZSAiSGlnaGxpZ2h0UmVnaXN0ZXIuaCIKKyNpbmNsdWRlICJI
aXN0b3J5LmgiCisjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2luY2x1ZGUgIklEQkNvbm5l
Y3Rpb25Qcm94eS5oIgorI2luY2x1ZGUgIklEQk9wZW5EQlJlcXVlc3QuaCIKKyNpbmNsdWRlICJJ
ZGxlQ2FsbGJhY2tDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiSW1hZ2VCaXRtYXBSZW5kZXJpbmdD
b250ZXh0LmgiCisjaW5jbHVkZSAiSW1hZ2VMb2FkZXIuaCIKKyNpbmNsdWRlICJJbWFnZU92ZXJs
YXlDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCisj
aW5jbHVkZSAiSW50ZXJzZWN0aW9uT2JzZXJ2ZXIuaCIKKyNpbmNsdWRlICJKU0N1c3RvbUVsZW1l
bnRJbnRlcmZhY2UuaCIKKyNpbmNsdWRlICJKU0xhenlFdmVudExpc3RlbmVyLmgiCisjaW5jbHVk
ZSAiS2V5Ym9hcmRFdmVudC5oIgorI2luY2x1ZGUgIktleWZyYW1lRWZmZWN0LmgiCisjaW5jbHVk
ZSAiTGF5b3V0RGlzYWxsb3dlZFNjb3BlLmgiCisjaW5jbHVkZSAiTGF6eUxvYWRJbWFnZU9ic2Vy
dmVyLmgiCisjaW5jbHVkZSAiTGVnYWN5U2NoZW1lUmVnaXN0cnkuaCIKKyNpbmNsdWRlICJMaWJX
ZWJSVENQcm92aWRlci5oIgorI2luY2x1ZGUgIkxvYWRlclN0cmF0ZWd5LmgiCisjaW5jbHVkZSAi
TG9nZ2luZy5oIgorI2luY2x1ZGUgIk1lZGlhQ2FuU3RhcnRMaXN0ZW5lci5oIgorI2luY2x1ZGUg
Ik1lZGlhUHJvZHVjZXIuaCIKKyNpbmNsdWRlICJNZWRpYVF1ZXJ5TGlzdC5oIgorI2luY2x1ZGUg
Ik1lZGlhUXVlcnlNYXRjaGVyLmgiCisjaW5jbHVkZSAiTWVkaWFTdHJlYW0uaCIKKyNpbmNsdWRl
ICJNZXNzYWdlRXZlbnQuaCIKKyNpbmNsdWRlICJNb3VzZUV2ZW50V2l0aEhpdFRlc3RSZXN1bHRz
LmgiCisjaW5jbHVkZSAiTXV0YXRpb25FdmVudC5oIgorI2luY2x1ZGUgIk5hbWVOb2RlTGlzdC5o
IgorI2luY2x1ZGUgIk5hdmlnYXRpb25EaXNhYmxlci5oIgorI2luY2x1ZGUgIk5hdmlnYXRpb25T
Y2hlZHVsZXIuaCIKKyNpbmNsdWRlICJOZXN0aW5nTGV2ZWxJbmNyZW1lbnRlci5oIgorI2luY2x1
ZGUgIk5vZGVJdGVyYXRvci5oIgorI2luY2x1ZGUgIk5vZGVSYXJlRGF0YS5oIgorI2luY2x1ZGUg
Ik5vZGVXaXRoSW5kZXguaCIKKyNpbmNsdWRlICJPdmVyZmxvd0V2ZW50LmgiCisjaW5jbHVkZSAi
UGFnZUNvbnNvbGVDbGllbnQuaCIKKyNpbmNsdWRlICJQYWdlR3JvdXAuaCIKKyNpbmNsdWRlICJQ
YWdlVHJhbnNpdGlvbkV2ZW50LmgiCisjaW5jbHVkZSAiUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUu
aCIKKyNpbmNsdWRlICJQZXJmb3JtYW5jZS5oIgorI2luY2x1ZGUgIlBlcmZvcm1hbmNlTmF2aWdh
dGlvblRpbWluZy5oIgorI2luY2x1ZGUgIlBsYXRmb3JtTG9jYWxlLmgiCisjaW5jbHVkZSAiUGxh
dGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmgiCisjaW5jbHVkZSAiUGxhdGZvcm1TY3JlZW4uaCIK
KyNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKKyNpbmNsdWRlICJQbHVnSW5zUmVzb3Vy
Y2VzLmgiCisjaW5jbHVkZSAiUGx1Z2luRG9jdW1lbnQuaCIKKyNpbmNsdWRlICJQb2ludGVyQ2Fw
dHVyZUNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJQb2ludGVyTG9ja0NvbnRyb2xsZXIuaCIKKyNp
bmNsdWRlICJQb2xpY3lDaGVja2VyLmgiCisjaW5jbHVkZSAiUG9wU3RhdGVFdmVudC5oIgorI2lu
Y2x1ZGUgIlByb2Nlc3NpbmdJbnN0cnVjdGlvbi5oIgorI2luY2x1ZGUgIlBzZXVkb0NsYXNzQ2hh
bmdlSW52YWxpZGF0aW9uLmgiCisjaW5jbHVkZSAiUHVibGljU3VmZml4LmgiCisjaW5jbHVkZSAi
UXVpcmtzLmgiCisjaW5jbHVkZSAiUmFuZ2UuaCIKKyNpbmNsdWRlICJSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyLmgiCisjaW5jbHVkZSAiUmVuZGVyQ2hpbGRJdGVyYXRvci5oIgorI2luY2x1ZGUg
IlJlbmRlcklubGluZS5oIgorI2luY2x1ZGUgIlJlbmRlckxheWVyQ29tcG9zaXRvci5oIgorI2lu
Y2x1ZGUgIlJlbmRlckxpbmVCcmVhay5oIgorI2luY2x1ZGUgIlJlbmRlclRyZWVVcGRhdGVyLmgi
CisjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgorI2luY2x1ZGUgIlJlbmRlcldpZGdldC5oIgorI2lu
Y2x1ZGUgIlJlcXVlc3RBbmltYXRpb25GcmFtZUNhbGxiYWNrLmgiCisjaW5jbHVkZSAiUmVzaXpl
T2JzZXJ2ZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRPYnNlcnZlci5oIgorI2luY2x1ZGUg
IlJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaCIKKyNpbmNsdWRlICJTVkdEb2N1bWVudEV4dGVuc2lvbnMuaCIKKyNpbmNsdWRlICJT
VkdFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHRWxlbWVudEZhY3RvcnkuaCIKKyNpbmNsdWRlICJT
VkdOYW1lcy5oIgorI2luY2x1ZGUgIlNWR1NWR0VsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdUaXRs
ZUVsZW1lbnQuaCIKKyNpbmNsdWRlICJTVkdVc2VFbGVtZW50LmgiCisjaW5jbHVkZSAiU1ZHWm9v
bUV2ZW50LmgiCisjaW5jbHVkZSAiU1dDbGllbnRDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiU2Nv
cGVkRXZlbnRRdWV1ZS5oIgorI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRl
ICJTY3JpcHREaXNhbGxvd2VkU2NvcGUuaCIKKyNpbmNsdWRlICJTY3JpcHRNb2R1bGVMb2FkZXIu
aCIKKyNpbmNsdWRlICJTY3JpcHRSdW5uZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRTb3VyY2VDb2Rl
LmgiCisjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKKyNpbmNsdWRlICJTY3JpcHRlZEFuaW1hdGlv
bkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJTY3JvbGxiYXJUaGVtZS5oIgorI2luY2x1ZGUgIlNj
cm9sbGluZ0Nvb3JkaW5hdG9yLmgiCisjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKKyNpbmNs
dWRlICJTZWN1cml0eU9yaWdpbkRhdGEuaCIKKyNpbmNsdWRlICJTZWN1cml0eU9yaWdpblBvbGlj
eS5oIgorI2luY2x1ZGUgIlNlY3VyaXR5UG9saWN5LmgiCisjaW5jbHVkZSAiU2VnbWVudGVkU3Ry
aW5nLmgiCisjaW5jbHVkZSAiU2VsZWN0b3JRdWVyeS5oIgorI2luY2x1ZGUgIlNlcnZpY2VXb3Jr
ZXJDbGllbnREYXRhLmgiCisjaW5jbHVkZSAiU2VydmljZVdvcmtlckNvbnRhaW5lci5oIgorI2lu
Y2x1ZGUgIlNlcnZpY2VXb3JrZXJQcm92aWRlci5oIgorI2luY2x1ZGUgIlNldHRpbmdzLmgiCisj
aW5jbHVkZSAiU2hhZG93Um9vdC5oIgorI2luY2x1ZGUgIlNvY2tldFByb3ZpZGVyLmgiCisjaW5j
bHVkZSAiU3BlZWNoUmVjb2duaXRpb24uaCIKKyNpbmNsdWRlICJTdG9yYWdlRXZlbnQuaCIKKyNp
bmNsdWRlICJTdHJpbmdDYWxsYmFjay5oIgorI2luY2x1ZGUgIlN0eWxlQWRqdXN0ZXIuaCIKKyNp
bmNsdWRlICJTdHlsZUNvbG9yLmgiCisjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0aWVzLmgiCisjaW5j
bHVkZSAiU3R5bGVSZXNvbHZlRm9yRG9jdW1lbnQuaCIKKyNpbmNsdWRlICJTdHlsZVJlc29sdmVy
LmgiCisjaW5jbHVkZSAiU3R5bGVTY29wZS5oIgorI2luY2x1ZGUgIlN0eWxlU2hlZXRDb250ZW50
cy5oIgorI2luY2x1ZGUgIlN0eWxlU2hlZXRMaXN0LmgiCisjaW5jbHVkZSAiU3R5bGVUcmVlUmVz
b2x2ZXIuaCIKKyNpbmNsdWRlICJTdWJyZXNvdXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlRleHRB
dXRvU2l6aW5nLmgiCisjaW5jbHVkZSAiVGV4dEV2ZW50LmgiCisjaW5jbHVkZSAiVGV4dE1hbmlw
dWxhdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJUZXh0Tm9kZVRyYXZlcnNhbC5oIgorI2lu
Y2x1ZGUgIlRvdWNoQWN0aW9uLmgiCisjaW5jbHVkZSAiVHJhbnNmb3JtU291cmNlLmgiCisjaW5j
bHVkZSAiVHJlZVdhbGtlci5oIgorI2luY2x1ZGUgIlVuZG9NYW5hZ2VyLmgiCisjaW5jbHVkZSAi
VXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKKyNpbmNsdWRlICJWYWxpZGF0aW9uTWVzc2FnZUNsaWVu
dC5oIgorI2luY2x1ZGUgIlZpc2liaWxpdHlDaGFuZ2VDbGllbnQuaCIKKyNpbmNsdWRlICJWaXNp
dGVkTGlua1N0YXRlLmgiCisjaW5jbHVkZSAiVmlzdWFsVmlld3BvcnQuaCIKKyNpbmNsdWRlICJX
ZWJBbmltYXRpb24uaCIKKyNpbmNsdWRlICJXZWJBbmltYXRpb25VdGlsaXRpZXMuaCIKKyNpbmNs
dWRlICJXaGVlbEV2ZW50LmgiCisjaW5jbHVkZSAiV2luZG93RXZlbnRMb29wLmgiCisjaW5jbHVk
ZSAiV2luZG93RmVhdHVyZXMuaCIKKyNpbmNsdWRlICJYTUxEb2N1bWVudC5oIgorI2luY2x1ZGUg
IlhNTERvY3VtZW50UGFyc2VyLmgiCisjaW5jbHVkZSAiWE1MTlNOYW1lcy5oIgorI2luY2x1ZGUg
IlhNTE5hbWVzLmgiCisjaW5jbHVkZSAiWFBhdGhFdmFsdWF0b3IuaCIKKyNpbmNsdWRlICJYUGF0
aEV4cHJlc3Npb24uaCIKKyNpbmNsdWRlICJYUGF0aE5TUmVzb2x2ZXIuaCIKKyNpbmNsdWRlICJY
UGF0aFJlc3VsdC5oIgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NvbnNvbGVNZXNzYWdlLmg+
CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvUmVndWxhckV4cHJlc3Npb24uaD4KKyNpbmNsdWRl
IDxKYXZhU2NyaXB0Q29yZS9TY3JpcHRDYWxsU3RhY2suaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9WTS5oPgorI2luY2x1ZGUgPGN0aW1lPgorI2luY2x1ZGUgPHd0Zi9IZXhOdW1iZXIuaD4K
KyNpbmNsdWRlIDx3dGYvSXNvTWFsbG9jSW5saW5lcy5oPgorI2luY2x1ZGUgPHd0Zi9MYW5ndWFn
ZS5oPgorI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9TZXRG
b3JTY29wZS5oPgorI2luY2x1ZGUgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+CisjaW5jbHVkZSA8d3Rm
L1VVSUQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWZmZXIuaD4KKyNpbmNsdWRlIDx3
dGYvdGV4dC9UZXh0U3RyZWFtLmg+CisKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMpCisjaW5j
bHVkZSAiQXBwSGlnaGxpZ2h0U3RvcmFnZS5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUoREVWSUNF
X09SSUVOVEFUSU9OKQorI2luY2x1ZGUgIkRldmljZU1vdGlvbkV2ZW50LmgiCisjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyLmgiCisjaW5jbHVkZSAi
RGV2aWNlT3JpZW50YXRpb25FdmVudC5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUoRlVMTFNDUkVF
Tl9BUEkpCisjaW5jbHVkZSAiUmVuZGVyRnVsbFNjcmVlbi5oIgorI2VuZGlmCisKKyNpZiBFTkFC
TEUoQ09OVEVOVF9DSEFOR0VfT0JTRVJWRVIpCisjaW5jbHVkZSAiQ29udGVudENoYW5nZU9ic2Vy
dmVyLmgiCisjaW5jbHVkZSAiRE9NVGltZXJIb2xkaW5nVGFuay5oIgorI2VuZGlmCisKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQorI2luY2x1ZGUgIkRldmljZU1vdGlvbkNsaWVudElPUy5oIgor
I2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJEZXZpY2VPcmll
bnRhdGlvbkNsaWVudElPUy5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ29udHJvbGxl
ci5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uLmgiCisjaW5jbHVkZSAiTmF2aWdhdG9yLmgiCisj
aW5jbHVkZSAiTmF2aWdhdG9yR2VvbG9jYXRpb24uaCIKKyNlbmRpZgorCisjaWYgRU5BQkxFKElP
U19HRVNUVVJFX0VWRU5UUykKKyNpbmNsdWRlICJHZXN0dXJlRXZlbnQuaCIKKyNlbmRpZgorCisj
aWYgRU5BQkxFKE1BVEhNTCkKKyNpbmNsdWRlICJNYXRoTUxFbGVtZW50LmgiCisjaW5jbHVkZSAi
TWF0aE1MRWxlbWVudEZhY3RvcnkuaCIKKyNpbmNsdWRlICJNYXRoTUxOYW1lcy5oIgorI2VuZGlm
CisKKyNpZiBVU0UoUVVJQ0tfTE9PSykKKyNpbmNsdWRlICJRdWlja0xvb2suaCIKKyNlbmRpZgor
CisjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyNpbmNsdWRlICJUb3VjaEV2ZW50LmgiCisjZW5k
aWYKKworI2lmIEVOQUJMRShWSURFTykKKyNpbmNsdWRlICJDYXB0aW9uVXNlclByZWZlcmVuY2Vz
LmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCisjaW5j
bHVkZSAiTWVkaWFQbGF5YmFja1RhcmdldENsaWVudC5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUo
WFNMVCkKKyNpbmNsdWRlICJYU0xUUHJvY2Vzc29yLmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShX
RUJHTCkKKyNpbmNsdWRlICJXZWJHTFJlbmRlcmluZ0NvbnRleHQuaCIKKyNlbmRpZgorI2lmIEVO
QUJMRShXRUJHTDIpCisjaW5jbHVkZSAiV2ViR0wyUmVuZGVyaW5nQ29udGV4dC5oIgorI2VuZGlm
CisKKyNpZiBFTkFCTEUoUElDVFVSRV9JTl9QSUNUVVJFX0FQSSkKKyNpbmNsdWRlICJIVE1MVmlk
ZW9FbGVtZW50LmgiCisjZW5kaWYKKworI2RlZmluZSBET0NVTUVOVF9SRUxFQVNFX0xPRyhjaGFu
bmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0coY2hhbm5lbCwgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1
NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgbWFpbj0lZF0gRG9jdW1lbnQ6OiIgZm10LCB0aGlz
LCBwYWdlSUQoKS52YWx1ZV9vcihQYWdlSWRlbnRpZmllciB7IH0pLnRvVUludDY0KCksIGZyYW1l
SUQoKS52YWx1ZV9vcihGcmFtZUlkZW50aWZpZXIgeyB9KS50b1VJbnQ2NCgpLCB0aGlzID09ICZ0
b3BEb2N1bWVudCgpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBET0NVTUVOVF9SRUxFQVNFX0xP
R19FUlJPUihjaGFubmVsLCBmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgIiVw
IC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgbWFpbj0lZF0gRG9j
dW1lbnQ6OiIgZm10LCB0aGlzLCBwYWdlSUQoKS52YWx1ZV9vcihQYWdlSWRlbnRpZmllciB7IH0p
LnRvVUludDY0KCksIGZyYW1lSUQoKS52YWx1ZV9vcihGcmFtZUlkZW50aWZpZXIgeyB9KS50b1VJ
bnQ2NCgpLCB0aGlzID09ICZ0b3BEb2N1bWVudCgpLCAjI19fVkFfQVJHU19fKQorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK1dURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChEb2N1bWVudCk7CisK
K3VzaW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7Cit1c2luZyBuYW1lc3BhY2UgV1RGOjpVbmljb2Rl
OworCitzdGF0aWMgY29uc3QgdW5zaWduZWQgY01heFdyaXRlUmVjdXJzaW9uRGVwdGggPSAyMTsK
K2Jvb2wgRG9jdW1lbnQ6Omhhc0V2ZXJDcmVhdGVkQW5BWE9iamVjdENhY2hlID0gZmFsc2U7Citz
dGF0aWMgY29uc3QgU2Vjb25kcyBtYXhJbnRlcnZhbEZvclVzZXJHZXN0dXJlRm9yd2FyZGluZ0Fm
dGVyTWVkaWFGaW5pc2hlc1BsYXlpbmcgeyAxX3MgfTsKKworc3RydWN0IEZyYW1lRmxhdHRlbmlu
Z0xheW91dERpc2FsbG93ZXIgeworICAgIEZyYW1lRmxhdHRlbmluZ0xheW91dERpc2FsbG93ZXIo
RnJhbWVWaWV3JiBmcmFtZVZpZXcpCisgICAgICAgIDogbV9mcmFtZVZpZXcoZnJhbWVWaWV3KQor
ICAgICAgICAsIG1fZGlzYWxsb3dMYXlvdXQoZnJhbWVWaWV3LmVmZmVjdGl2ZUZyYW1lRmxhdHRl
bmluZygpICE9IEZyYW1lRmxhdHRlbmluZzo6RGlzYWJsZWQpCisgICAgeworICAgICAgICBpZiAo
bV9kaXNhbGxvd0xheW91dCkKKyAgICAgICAgICAgIG1fZnJhbWVWaWV3LnN0YXJ0RGlzYWxsb3dp
bmdMYXlvdXQoKTsKKyAgICB9CisKKyAgICB+RnJhbWVGbGF0dGVuaW5nTGF5b3V0RGlzYWxsb3dl
cigpCisgICAgeworICAgICAgICBpZiAobV9kaXNhbGxvd0xheW91dCkKKyAgICAgICAgICAgIG1f
ZnJhbWVWaWV3LmVuZERpc2FsbG93aW5nTGF5b3V0KCk7CisgICAgfQorCitwcml2YXRlOgorICAg
IEZyYW1lVmlldyYgbV9mcmFtZVZpZXc7CisgICAgYm9vbCBtX2Rpc2FsbG93TGF5b3V0IHsgZmFs
c2UgfTsKK307CisKKy8vIERlZmluZWQgaGVyZSB0byBhdm9pZCBpbmNsdWRpbmcgR0NSZWFjaGFi
bGVSZWYuaCBpbiBEb2N1bWVudC5oCitzdHJ1Y3QgRG9jdW1lbnQ6OlBlbmRpbmdTY3JvbGxFdmVu
dFRhcmdldExpc3QgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworCitwdWJsaWM6Cisg
ICAgVmVjdG9yPEdDUmVhY2hhYmxlUmVmPENvbnRhaW5lck5vZGU+PiB0YXJnZXRzOworfTsKKwor
c3RhdGljIGNvbnN0IFNlY29uZHMgaW50ZXJzZWN0aW9uT2JzZXJ2ZXJzSW5pdGlhbFVwZGF0ZURl
bGF5IHsgMjAwMF9tcyB9OworCisvLyBET00gTGV2ZWwgMiBzYXlzIChsZXR0ZXJzIGFkZGVkKToK
Ky8vCisvLyBhKSBOYW1lIHN0YXJ0IGNoYXJhY3RlcnMgbXVzdCBoYXZlIG9uZSBvZiB0aGUgY2F0
ZWdvcmllcyBMbCwgTHUsIExvLCBMdCwgTmwuCisvLyBiKSBOYW1lIGNoYXJhY3RlcnMgb3RoZXIg
dGhhbiBOYW1lLXN0YXJ0IGNoYXJhY3RlcnMgbXVzdCBoYXZlIG9uZSBvZiB0aGUgY2F0ZWdvcmll
cyBNYywgTWUsIE1uLCBMbSwgb3IgTmQuCisvLyBjKSBDaGFyYWN0ZXJzIGluIHRoZSBjb21wYXRp
YmlsaXR5IGFyZWEgKGkuZS4gd2l0aCBjaGFyYWN0ZXIgY29kZSBncmVhdGVyIHRoYW4gI3hGOTAw
IGFuZCBsZXNzIHRoYW4gI3hGRkZFKSBhcmUgbm90IGFsbG93ZWQgaW4gWE1MIG5hbWVzLgorLy8g
ZCkgQ2hhcmFjdGVycyB3aGljaCBoYXZlIGEgZm9udCBvciBjb21wYXRpYmlsaXR5IGRlY29tcG9z
aXRpb24gKGkuZS4gdGhvc2Ugd2l0aCBhICJjb21wYXRpYmlsaXR5IGZvcm1hdHRpbmcgdGFnIiBp
biBmaWVsZCA1IG9mIHRoZSBkYXRhYmFzZSAtLSBtYXJrZWQgYnkgZmllbGQgNSBiZWdpbm5pbmcg
d2l0aCBhICI8IikgYXJlIG5vdCBhbGxvd2VkLgorLy8gZSkgVGhlIGZvbGxvd2luZyBjaGFyYWN0
ZXJzIGFyZSB0cmVhdGVkIGFzIG5hbWUtc3RhcnQgY2hhcmFjdGVycyByYXRoZXIgdGhhbiBuYW1l
IGNoYXJhY3RlcnMsIGJlY2F1c2UgdGhlIHByb3BlcnR5IGZpbGUgY2xhc3NpZmllcyB0aGVtIGFz
IEFscGhhYmV0aWM6IFsjeDAyQkItI3gwMkMxXSwgI3gwNTU5LCAjeDA2RTUsICN4MDZFNi4KKy8v
IGYpIENoYXJhY3RlcnMgI3gyMERELSN4MjBFMCBhcmUgZXhjbHVkZWQgKGluIGFjY29yZGFuY2Ug
d2l0aCBVbmljb2RlLCBzZWN0aW9uIDUuMTQpLgorLy8gZykgQ2hhcmFjdGVyICN4MDBCNyBpcyBj
bGFzc2lmaWVkIGFzIGFuIGV4dGVuZGVyLCBiZWNhdXNlIHRoZSBwcm9wZXJ0eSBsaXN0IHNvIGlk
ZW50aWZpZXMgaXQuCisvLyBoKSBDaGFyYWN0ZXIgI3gwMzg3IGlzIGFkZGVkIGFzIGEgbmFtZSBj
aGFyYWN0ZXIsIGJlY2F1c2UgI3gwMEI3IGlzIGl0cyBjYW5vbmljYWwgZXF1aXZhbGVudC4KKy8v
IGkpIENoYXJhY3RlcnMgJzonIGFuZCAnXycgYXJlIGFsbG93ZWQgYXMgbmFtZS1zdGFydCBjaGFy
YWN0ZXJzLgorLy8gaikgQ2hhcmFjdGVycyAnLScgYW5kICcuJyBhcmUgYWxsb3dlZCBhcyBuYW1l
IGNoYXJhY3RlcnMuCisvLworLy8gSXQgYWxzbyBjb250YWlucyBjb21wbGV0ZSB0YWJsZXMuIElm
IHdlIGRlY2lkZSBpdCdzIGJldHRlciwgd2UgY291bGQgaW5jbHVkZSB0aG9zZSBpbnN0ZWFkIG9m
IHRoZSBmb2xsb3dpbmcgY29kZS4KKworc3RhdGljIGlubGluZSBib29sIGlzVmFsaWROYW1lU3Rh
cnQoVUNoYXIzMiBjKQoreworICAgIC8vIHJ1bGUgKGUpIGFib3ZlCisgICAgaWYgKChjID49IDB4
MDJCQiAmJiBjIDw9IDB4MDJDMSkgfHwgYyA9PSAweDU1OSB8fCBjID09IDB4NkU1IHx8IGMgPT0g
MHg2RTYpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gcnVsZSAoaSkgYWJvdmUKKyAg
ICBpZiAoYyA9PSAnOicgfHwgYyA9PSAnXycpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAg
Ly8gcnVsZXMgKGEpIGFuZCAoZikgYWJvdmUKKyAgICBpZiAoIShVX0dFVF9HQ19NQVNLKGMpICYg
KFVfR0NfTExfTUFTSyB8IFVfR0NfTFVfTUFTSyB8IFVfR0NfTE9fTUFTSyB8IFVfR0NfTFRfTUFT
SyB8IFVfR0NfTkxfTUFTSykpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBydWxl
IChjKSBhYm92ZQorICAgIGlmIChjID49IDB4RjkwMCAmJiBjIDwgMHhGRkZFKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisKKyAgICAvLyBydWxlIChkKSBhYm92ZQorICAgIGludCB0eXBlID0gdV9n
ZXRJbnRQcm9wZXJ0eVZhbHVlKGMsIFVDSEFSX0RFQ09NUE9TSVRJT05fVFlQRSk7CisgICAgaWYg
KHR5cGUgPT0gVV9EVF9GT05UIHx8IHR5cGUgPT0gVV9EVF9DT01QQVQpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIHJldHVybiB0cnVlOworfQorCitzdGF0aWMgaW5saW5lIGJvb2wgaXNW
YWxpZE5hbWVQYXJ0KFVDaGFyMzIgYykKK3sKKyAgICAvLyBydWxlcyAoYSksIChlKSwgYW5kIChp
KSBhYm92ZQorICAgIGlmIChpc1ZhbGlkTmFtZVN0YXJ0KGMpKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIC8vIHJ1bGVzIChnKSBhbmQgKGgpIGFib3ZlCisgICAgaWYgKGMgPT0gMHgwMEI3
IHx8IGMgPT0gMHgwMzg3KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIC8vIHJ1bGUgKGop
IGFib3ZlCisgICAgaWYgKGMgPT0gJy0nIHx8IGMgPT0gJy4nKQorICAgICAgICByZXR1cm4gdHJ1
ZTsKKworICAgIC8vIHJ1bGVzIChiKSBhbmQgKGYpIGFib3ZlCisgICAgaWYgKCEoVV9HRVRfR0Nf
TUFTSyhjKSAmIChVX0dDX01fTUFTSyB8IFVfR0NfTE1fTUFTSyB8IFVfR0NfTkRfTUFTSykpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBydWxlIChjKSBhYm92ZQorICAgIGlmIChj
ID49IDB4RjkwMCAmJiBjIDwgMHhGRkZFKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAv
LyBydWxlIChkKSBhYm92ZQorICAgIGludCB0eXBlID0gdV9nZXRJbnRQcm9wZXJ0eVZhbHVlKGMs
IFVDSEFSX0RFQ09NUE9TSVRJT05fVFlQRSk7CisgICAgaWYgKHR5cGUgPT0gVV9EVF9GT05UIHx8
IHR5cGUgPT0gVV9EVF9DT01QQVQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVy
biB0cnVlOworfQorCitzdGF0aWMgV2lkZ2V0KiB3aWRnZXRGb3JFbGVtZW50KEVsZW1lbnQqIGZv
Y3VzZWRFbGVtZW50KQoreworICAgIGlmICghZm9jdXNlZEVsZW1lbnQpCisgICAgICAgIHJldHVy
biBudWxscHRyOworICAgIGF1dG8qIHJlbmRlcmVyID0gZm9jdXNlZEVsZW1lbnQtPnJlbmRlcmVy
KCk7CisgICAgaWYgKCFpczxSZW5kZXJXaWRnZXQ+KHJlbmRlcmVyKSkKKyAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisgICAgcmV0dXJuIGRvd25jYXN0PFJlbmRlcldpZGdldD4oKnJlbmRlcmVyKS53
aWRnZXQoKTsKK30KKworc3RhdGljIGJvb2wgYWNjZXB0c0VkaXRpbmdGb2N1cyhjb25zdCBFbGVt
ZW50JiBlbGVtZW50KQoreworICAgIEFTU0VSVChlbGVtZW50Lmhhc0VkaXRhYmxlU3R5bGUoKSk7
CisKKyAgICBSZWZQdHIgcm9vdCA9IGVsZW1lbnQucm9vdEVkaXRhYmxlRWxlbWVudCgpOworICAg
IFJlZlB0ciBmcmFtZSA9IGVsZW1lbnQuZG9jdW1lbnQoKS5mcmFtZSgpOworICAgIGlmICghZnJh
bWUgfHwgIXJvb3QpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBmcmFtZS0+
ZWRpdG9yKCkuc2hvdWxkQmVnaW5FZGl0aW5nKG1ha2VSYW5nZVNlbGVjdGluZ05vZGVDb250ZW50
cygqcm9vdCkpOworfQorCitzdGF0aWMgYm9vbCBjYW5BY2Nlc3NBbmNlc3Rvcihjb25zdCBTZWN1
cml0eU9yaWdpbiYgYWN0aXZlU2VjdXJpdHlPcmlnaW4sIEZyYW1lKiB0YXJnZXRGcmFtZSkKK3sK
KyAgICAvLyB0YXJnZXRGcmFtZSBjYW4gYmUgMCB3aGVuIHdlJ3JlIHRyeWluZyB0byBuYXZpZ2F0
ZSBhIHRvcC1sZXZlbCBmcmFtZQorICAgIC8vIHRoYXQgaGFzIGEgMCBvcGVuZXIuCisgICAgaWYg
KCF0YXJnZXRGcmFtZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgY29uc3QgYm9vbCBp
c0xvY2FsQWN0aXZlT3JpZ2luID0gYWN0aXZlU2VjdXJpdHlPcmlnaW4uaXNMb2NhbCgpOworICAg
IGZvciAoUmVmUHRyIGFuY2VzdG9yRnJhbWUgPSB0YXJnZXRGcmFtZTsgYW5jZXN0b3JGcmFtZTsg
YW5jZXN0b3JGcmFtZSA9IGFuY2VzdG9yRnJhbWUtPnRyZWUoKS5wYXJlbnQoKSkgeworICAgICAg
ICBSZWZQdHIgYW5jZXN0b3JEb2N1bWVudCA9IGFuY2VzdG9yRnJhbWUtPmRvY3VtZW50KCk7Cisg
ICAgICAgIC8vIEZJWE1FOiBTaG91bGQgYmUgYW4gQVNTRVJUPyBGcmFtZXMgc2hvdWxkIGFsd2F5
IGhhdmUgZG9jdW1lbnRzLgorICAgICAgICBpZiAoIWFuY2VzdG9yRG9jdW1lbnQpCisgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBjb25zdCBTZWN1cml0eU9yaWdpbiYgYW5jZXN0
b3JTZWN1cml0eU9yaWdpbiA9IGFuY2VzdG9yRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCk7Cisg
ICAgICAgIGlmIChhY3RpdmVTZWN1cml0eU9yaWdpbi5pc1NhbWVPcmlnaW5Eb21haW4oYW5jZXN0
b3JTZWN1cml0eU9yaWdpbikpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgCisg
ICAgICAgIC8vIEFsbG93IGZpbGUgVVJMIGRlc2NlbmRhbnQgbmF2aWdhdGlvbiBldmVuIHdoZW4g
YWxsb3dGaWxlQWNjZXNzRnJvbUZpbGVVUkxzIGlzIGZhbHNlLgorICAgICAgICAvLyBGSVhNRTog
SXQncyBhIGJpdCBzdHJhbmdlIHRvIHNwZWNpYWwtY2FzZSBsb2NhbCBvcmlnaW5zIGhlcmUuIFNo
b3VsZCB3ZSBiZSBkb2luZworICAgICAgICAvLyBzb21ldGhpbmcgbW9yZSBnZW5lcmFsIGluc3Rl
YWQ/CisgICAgICAgIGlmIChpc0xvY2FsQWN0aXZlT3JpZ2luICYmIGFuY2VzdG9yU2VjdXJpdHlP
cmlnaW4uaXNMb2NhbCgpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAg
cmV0dXJuIGZhbHNlOworfQorCitzdGF0aWMgdm9pZCBwcmludE5hdmlnYXRpb25FcnJvck1lc3Nh
Z2UoRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIGFjdGl2ZVVSTCwgY29uc3QgY2hhciogcmVhc29u
KQoreworICAgIFN0cmluZyBtZXNzYWdlID0gIlVuc2FmZSBKYXZhU2NyaXB0IGF0dGVtcHQgdG8g
aW5pdGlhdGUgbmF2aWdhdGlvbiBmb3IgZnJhbWUgd2l0aCBVUkwgJyIgKyBmcmFtZS5kb2N1bWVu
dCgpLT51cmwoKS5zdHJpbmcoKSArICInIGZyb20gZnJhbWUgd2l0aCBVUkwgJyIgKyBhY3RpdmVV
Ukwuc3RyaW5nKCkgKyAiJy4gIiArIHJlYXNvbiArICJcbiI7CisKKyAgICAvLyBGSVhNRTogc2hv
dWxkIHdlIHByaW50IHRvIHRoZSBjb25zb2xlIG9mIHRoZSBkb2N1bWVudCBwZXJmb3JtaW5nIHRo
ZSBuYXZpZ2F0aW9uIGluc3RlYWQ/CisgICAgZnJhbWUuZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkt
PnByaW50RXJyb3JNZXNzYWdlKG1lc3NhZ2UpOworfQorCit1aW50NjRfdCBEb2N1bWVudDo6c19n
bG9iYWxUcmVlVmVyc2lvbiA9IDA7CisKK3N0YXRpYyBjb25zdCB2b2lkKiBzaGFyZWRMb2dnZXJP
d25lcigpCit7CisgICAgc3RhdGljIHVpbnQ2NF90IG93bmVyID0gY3J5cHRvZ3JhcGhpY2FsbHlS
YW5kb21OdW1iZXIoKTsKKyAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkKj4o
b3duZXIpOworfQorCitzdGF0aWMgTG9nZ2VyKiYgc3RhdGljU2hhcmVkTG9nZ2VyKCkKK3sKKyAg
ICBzdGF0aWMgTG9nZ2VyKiBsb2dnZXI7CisgICAgcmV0dXJuIGxvZ2dlcjsKK30KKworY29uc3Qg
TG9nZ2VyJiBEb2N1bWVudDo6c2hhcmVkTG9nZ2VyKCkKK3sKKyAgICBpZiAoIXN0YXRpY1NoYXJl
ZExvZ2dlcigpKSB7CisgICAgICAgIHN0YXRpY1NoYXJlZExvZ2dlcigpID0gJkxvZ2dlcjo6Y3Jl
YXRlKHNoYXJlZExvZ2dlck93bmVyKCkpLmxlYWtSZWYoKTsKKyAgICAgICAgY29uZmlndXJlU2hh
cmVkTG9nZ2VyKCk7CisgICAgfQorICAgIAorICAgIHJldHVybiAqc3RhdGljU2hhcmVkTG9nZ2Vy
KCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmNvbmZpZ3VyZVNoYXJlZExvZ2dlcigpCit7CisgICAg
YXV0byBsb2dnZXIgPSBzdGF0aWNTaGFyZWRMb2dnZXIoKTsKKyAgICBpZiAoIWxvZ2dlcikKKyAg
ICAgICAgcmV0dXJuOworCisgICAgYm9vbCBhbHdheXNPbkxvZ2dpbmdBbGxvd2VkID0gIWFsbERv
Y3VtZW50c01hcCgpLmlzRW1wdHkoKSAmJiBXVEY6OmFsbE9mKGFsbERvY3VtZW50c01hcCgpLnZh
bHVlcygpLCBbXShhdXRvKiBkb2N1bWVudCkgeworICAgICAgICBhdXRvKiBwYWdlID0gZG9jdW1l
bnQtPnBhZ2UoKTsKKyAgICAgICAgcmV0dXJuICFwYWdlIHx8IHBhZ2UtPnNlc3Npb25JRCgpLmlz
QWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpOworICAgIH0pOworICAgIGxvZ2dlci0+c2V0RW5hYmxl
ZChzaGFyZWRMb2dnZXJPd25lcigpLCBhbHdheXNPbkxvZ2dpbmdBbGxvd2VkKTsKK30KKwordm9p
ZCBEb2N1bWVudDo6YWRkVG9Eb2N1bWVudHNNYXAoKQoreworICAgIGF1dG8gYWRkUmVzdWx0ID0g
YWxsRG9jdW1lbnRzTWFwKCkuYWRkKG1faWRlbnRpZmllciwgdGhpcyk7CisgICAgQVNTRVJUX1VO
VVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKKworICAgIGNvbmZpZ3VyZVNo
YXJlZExvZ2dlcigpOworfQorCit2b2lkIERvY3VtZW50OjpyZW1vdmVGcm9tRG9jdW1lbnRzTWFw
KCkKK3sKKyAgICBBU1NFUlQoYWxsRG9jdW1lbnRzTWFwKCkuY29udGFpbnMobV9pZGVudGlmaWVy
KSk7CisgICAgYWxsRG9jdW1lbnRzTWFwKCkucmVtb3ZlKG1faWRlbnRpZmllcik7CisgICAgY29u
ZmlndXJlU2hhcmVkTG9nZ2VyKCk7Cit9CisKK2F1dG8gRG9jdW1lbnQ6OmFsbERvY3VtZW50c01h
cCgpIC0+IERvY3VtZW50c01hcCYKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8RG9jdW1l
bnRzTWFwPiBkb2N1bWVudHM7CisgICAgcmV0dXJuIGRvY3VtZW50czsKK30KKworYXV0byBEb2N1
bWVudDo6YWxsRG9jdW1lbnRzKCkgLT4gRG9jdW1lbnRzTWFwOjpWYWx1ZXNJdGVyYXRvclJhbmdl
Cit7CisgICAgcmV0dXJuIGFsbERvY3VtZW50c01hcCgpLnZhbHVlcygpOworfQorCitzdGF0aWMg
aW5saW5lIGludCBjdXJyZW50T3JpZW50YXRpb24oRnJhbWUqIGZyYW1lKQoreworI2lmIEVOQUJM
RShPUklFTlRBVElPTl9FVkVOVFMpCisgICAgaWYgKGZyYW1lKQorICAgICAgICByZXR1cm4gZnJh
bWUtPm9yaWVudGF0aW9uKCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShmcmFtZSk7CisjZW5k
aWYKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFJlZjxDYWNoZWRSZXNvdXJjZUxvYWRlcj4g
Y3JlYXRlQ2FjaGVkUmVzb3VyY2VMb2FkZXIoRnJhbWUqIGZyYW1lKQoreworICAgIGlmIChmcmFt
ZSkgeworICAgICAgICBpZiAoYXV0byBsb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCkuYWN0aXZlRG9j
dW1lbnRMb2FkZXIoKSkKKyAgICAgICAgICAgIHJldHVybiBsb2FkZXItPmNhY2hlZFJlc291cmNl
TG9hZGVyKCk7CisgICAgfQorICAgIHJldHVybiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y3JlYXRl
KG51bGxwdHIpOworfQorCitEb2N1bWVudDo6RG9jdW1lbnQoRnJhbWUqIGZyYW1lLCBjb25zdCBT
ZXR0aW5ncyYgc2V0dGluZ3MsIGNvbnN0IFVSTCYgdXJsLCBEb2N1bWVudENsYXNzRmxhZ3MgZG9j
dW1lbnRDbGFzc2VzLCB1bnNpZ25lZCBjb25zdHJ1Y3Rpb25GbGFncykKKyAgICA6IENvbnRhaW5l
ck5vZGUoKnRoaXMsIENyZWF0ZURvY3VtZW50KQorICAgICwgVHJlZVNjb3BlKCp0aGlzKQorICAg
ICwgRnJhbWVEZXN0cnVjdGlvbk9ic2VydmVyKGZyYW1lKQorICAgICwgbV9zZXR0aW5ncyhzZXR0
aW5ncykKKyAgICAsIG1fcXVpcmtzKG1ha2VVbmlxdWVSZWY8UXVpcmtzPigqdGhpcykpCisgICAg
LCBtX2NhY2hlZFJlc291cmNlTG9hZGVyKGNyZWF0ZUNhY2hlZFJlc291cmNlTG9hZGVyKGZyYW1l
KSkKKyAgICAsIG1fZG9tVHJlZVZlcnNpb24oKytzX2dsb2JhbFRyZWVWZXJzaW9uKQorICAgICwg
bV9zdHlsZVNjb3BlKG1ha2VVbmlxdWU8U3R5bGU6OlNjb3BlPigqdGhpcykpCisgICAgLCBtX2V4
dGVuc2lvblN0eWxlU2hlZXRzKG1ha2VVbmlxdWU8RXh0ZW5zaW9uU3R5bGVTaGVldHM+KCp0aGlz
KSkKKyAgICAsIG1fdmlzaXRlZExpbmtTdGF0ZShtYWtlVW5pcXVlPFZpc2l0ZWRMaW5rU3RhdGU+
KCp0aGlzKSkKKyAgICAsIG1fbWFya2VycyhtYWtlVW5pcXVlPERvY3VtZW50TWFya2VyQ29udHJv
bGxlcj4oKnRoaXMpKQorICAgICwgbV9zdHlsZVJlY2FsY1RpbWVyKFt0aGlzXSB7IHVwZGF0ZVN0
eWxlSWZOZWVkZWQoKTsgfSkKKyNpZiAhTE9HX0RJU0FCTEVECisgICAgLCBtX2RvY3VtZW50Q3Jl
YXRpb25UaW1lKE1vbm90b25pY1RpbWU6Om5vdygpKQorI2VuZGlmCisgICAgLCBtX3NjcmlwdFJ1
bm5lcihtYWtlVW5pcXVlPFNjcmlwdFJ1bm5lcj4oKnRoaXMpKQorICAgICwgbV9tb2R1bGVMb2Fk
ZXIobWFrZVVuaXF1ZTxTY3JpcHRNb2R1bGVMb2FkZXI+KCp0aGlzLCBTY3JpcHRNb2R1bGVMb2Fk
ZXI6Ok93bmVyVHlwZTo6RG9jdW1lbnQpKQorI2lmIEVOQUJMRShYU0xUKQorICAgICwgbV9hcHBs
eVBlbmRpbmdYU0xUcmFuc2Zvcm1zVGltZXIoKnRoaXMsICZEb2N1bWVudDo6YXBwbHlQZW5kaW5n
WFNMVHJhbnNmb3Jtc1RpbWVyRmlyZWQpCisjZW5kaWYKKyAgICAsIG1feG1sVmVyc2lvbigiMS4w
Il9zKQorICAgICwgbV9jb25zdGFudFByb3BlcnR5TWFwKG1ha2VVbmlxdWU8Q29uc3RhbnRQcm9w
ZXJ0eU1hcD4oKnRoaXMpKQorICAgICwgbV9kb2N1bWVudENsYXNzZXMoZG9jdW1lbnRDbGFzc2Vz
KQorI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKKyAgICAsIG1fZnVsbHNjcmVlbk1hbmFnZXIg
eyBtYWtlVW5pcXVlUmVmPEZ1bGxzY3JlZW5NYW5hZ2VyPigqdGhpcykgfQorI2VuZGlmCisgICAg
LCBtX2ludGVyc2VjdGlvbk9ic2VydmVyc0luaXRpYWxVcGRhdGVUaW1lcigqdGhpcywgJkRvY3Vt
ZW50OjppbnRlcnNlY3Rpb25PYnNlcnZlcnNJbml0aWFsVXBkYXRlVGltZXJGaXJlZCkKKyAgICAs
IG1fbG9hZEV2ZW50RGVsYXlUaW1lcigqdGhpcywgJkRvY3VtZW50Ojpsb2FkRXZlbnREZWxheVRp
bWVyRmlyZWQpCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKERFVklDRV9PUklF
TlRBVElPTikKKyAgICAsIG1fZGV2aWNlTW90aW9uQ2xpZW50KG1ha2VVbmlxdWU8RGV2aWNlTW90
aW9uQ2xpZW50SU9TPihwYWdlKCkgPyBwYWdlKCktPmRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJv
dmlkZXIoKSA6IG51bGxwdHIpKQorICAgICwgbV9kZXZpY2VNb3Rpb25Db250cm9sbGVyKG1ha2VV
bmlxdWU8RGV2aWNlTW90aW9uQ29udHJvbGxlcj4oKm1fZGV2aWNlTW90aW9uQ2xpZW50KSkKKyAg
ICAsIG1fZGV2aWNlT3JpZW50YXRpb25DbGllbnQobWFrZVVuaXF1ZTxEZXZpY2VPcmllbnRhdGlv
bkNsaWVudElPUz4ocGFnZSgpID8gcGFnZSgpLT5kZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3Zp
ZGVyKCkgOiBudWxscHRyKSkKKyAgICAsIG1fZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyKG1h
a2VVbmlxdWU8RGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyPigqbV9kZXZpY2VPcmllbnRhdGlv
bkNsaWVudCkpCisjZW5kaWYKKyAgICAsIG1fcGVuZGluZ1Rhc2tzVGltZXIoKnRoaXMsICZEb2N1
bWVudDo6cGVuZGluZ1Rhc2tzVGltZXJGaXJlZCkKKyAgICAsIG1fdmlzdWFsVXBkYXRlc1N1cHBy
ZXNzaW9uVGltZXIoKnRoaXMsICZEb2N1bWVudDo6dmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGlt
ZXJGaXJlZCkKKyAgICAsIG1fc2hhcmVkT2JqZWN0UG9vbENsZWFyVGltZXIoKnRoaXMsICZEb2N1
bWVudDo6Y2xlYXJTaGFyZWRPYmplY3RQb29sKQorICAgICwgbV9mb250U2VsZWN0b3IoQ1NTRm9u
dFNlbGVjdG9yOjpjcmVhdGUoKnRoaXMpKQorICAgICwgbV9mb250TG9hZGVyKG1ha2VVbmlxdWVS
ZWY8RG9jdW1lbnRGb250TG9hZGVyPigqdGhpcykpCisgICAgLCBtX2RpZEFzc29jaWF0ZUZvcm1D
b250cm9sc1RpbWVyKCp0aGlzLCAmRG9jdW1lbnQ6OmRpZEFzc29jaWF0ZUZvcm1Db250cm9sc1Rp
bWVyRmlyZWQpCisgICAgLCBtX2Nvb2tpZUNhY2hlRXhwaXJ5VGltZXIoKnRoaXMsICZEb2N1bWVu
dDo6aW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKQorICAgICwgbV9zb2NrZXRQcm92aWRlcihwYWdl
KCkgPyAmcGFnZSgpLT5zb2NrZXRQcm92aWRlcigpIDogbnVsbHB0cikKKyAgICAsIG1faXNTeW50
aGVzaXplZChjb25zdHJ1Y3Rpb25GbGFncyAmIFN5bnRoZXNpemVkKQorICAgICwgbV9pc05vblJl
bmRlcmVkUGxhY2Vob2xkZXIoY29uc3RydWN0aW9uRmxhZ3MgJiBOb25SZW5kZXJlZFBsYWNlaG9s
ZGVyKQorICAgICwgbV9vcmllbnRhdGlvbk5vdGlmaWVyKGN1cnJlbnRPcmllbnRhdGlvbihmcmFt
ZSkpCisgICAgLCBtX2lkZW50aWZpZXIoRG9jdW1lbnRJZGVudGlmaWVyOjpnZW5lcmF0ZSgpKQor
ICAgICwgbV91bmRvTWFuYWdlcihVbmRvTWFuYWdlcjo6Y3JlYXRlKCp0aGlzKSkKKyAgICAsIG1f
ZWRpdG9yKG1ha2VVbmlxdWVSZWY8RWRpdG9yPigqdGhpcykpCisgICAgLCBtX3NlbGVjdGlvbiht
YWtlVW5pcXVlUmVmPEZyYW1lU2VsZWN0aW9uPih0aGlzKSkKKyAgICAsIG1fd2hpdGVzcGFjZUNh
Y2hlKG1ha2VVbmlxdWVSZWY8V2hpdGVzcGFjZUNhY2hlPigpKQoreworICAgIGFkZFRvRG9jdW1l
bnRzTWFwKCk7CisKKyAgICAvLyBXZSBkZXBlbmQgb24gdGhlIHVybCBnZXR0aW5nIGltbWVkaWF0
ZWx5IHNldCBpbiBzdWJmcmFtZXMsIGJ1dCB3ZQorICAgIC8vIGFsc28gZGVwZW5kIG9uIHRoZSB1
cmwgTk9UIGdldHRpbmcgaW1tZWRpYXRlbHkgc2V0IGluIG9wZW5lZCB3aW5kb3dzLgorICAgIC8v
IFNlZSBmYXN0L2RvbS9lYXJseS1mcmFtZS11cmwuaHRtbAorICAgIC8vIGFuZCBmYXN0L2RvbS9s
b2NhdGlvbi1uZXctd2luZG93LW5vLWNyYXNoLmh0bWwsIHJlc3BlY3RpdmVseS4KKyAgICAvLyBG
SVhNRTogQ2FuL3Nob3VsZCB3ZSB1bmlmeSB0aGlzIGJlaGF2aW9yPworICAgIGlmICgoZnJhbWUg
JiYgZnJhbWUtPm93bmVyRWxlbWVudCgpKSB8fCAhdXJsLmlzRW1wdHkoKSkKKyAgICAgICAgc2V0
VVJMKHVybCk7CisKKyAgICBtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5zZXREb2N1bWVudCh0aGlz
KTsKKworICAgIHJlc2V0TGlua0NvbG9yKCk7CisgICAgcmVzZXRWaXNpdGVkTGlua0NvbG9yKCk7
CisgICAgcmVzZXRBY3RpdmVMaW5rQ29sb3IoKTsKKworICAgIGluaXRTZWN1cml0eUNvbnRleHQo
KTsKKyAgICBpbml0RE5TUHJlZmV0Y2goKTsKKworICAgIG1fZm9udFNlbGVjdG9yLT5yZWdpc3Rl
ckZvckludmFsaWRhdGlvbkNhbGxiYWNrcygqdGhpcyk7CisKKyAgICBmb3IgKGF1dG8mIG5vZGVM
aXN0QW5kQ29sbGVjdGlvbkNvdW50IDogbV9ub2RlTGlzdEFuZENvbGxlY3Rpb25Db3VudHMpCisg
ICAgICAgIG5vZGVMaXN0QW5kQ29sbGVjdGlvbkNvdW50ID0gMDsKKworICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6YWRkRXZlbnRMaXN0ZW5lcnNUb05vZGUoKnRoaXMpOworfQorCitSZWY8
RG9jdW1lbnQ+IERvY3VtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGNvbnRleHREb2N1bWVudCkKK3sK
KyAgICBhdXRvIGRvY3VtZW50ID0gYWRvcHRSZWYoKm5ldyBEb2N1bWVudChudWxscHRyLCBjb250
ZXh0RG9jdW1lbnQubV9zZXR0aW5ncywgVVJMKCkpKTsKKyAgICBkb2N1bWVudC0+c2V0Q29udGV4
dERvY3VtZW50KGNvbnRleHREb2N1bWVudCk7CisgICAgZG9jdW1lbnQtPnNldFNlY3VyaXR5T3Jp
Z2luUG9saWN5KGNvbnRleHREb2N1bWVudC5zZWN1cml0eU9yaWdpblBvbGljeSgpKTsKKyAgICBy
ZXR1cm4gZG9jdW1lbnQ7Cit9CisKK1JlZjxEb2N1bWVudD4gRG9jdW1lbnQ6OmNyZWF0ZU5vblJl
bmRlcmVkUGxhY2Vob2xkZXIoRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHVybCkKK3sKKyAgICBy
ZXR1cm4gYWRvcHRSZWYoKm5ldyBEb2N1bWVudCgmZnJhbWUsIGZyYW1lLnNldHRpbmdzKCksIHVy
bCwgRGVmYXVsdERvY3VtZW50Q2xhc3MsIE5vblJlbmRlcmVkUGxhY2Vob2xkZXIpKTsKK30KKwor
RG9jdW1lbnQ6On5Eb2N1bWVudCgpCit7CisgICAgQVNTRVJUKGFjdGl2ZURPTU9iamVjdHNBcmVT
dG9wcGVkKCkpOworCisgICAgaWYgKG1fbG9nZ2VyKQorICAgICAgICBtX2xvZ2dlci0+cmVtb3Zl
T2JzZXJ2ZXIoKnRoaXMpOworCisgICAgaWYgKG1faW50ZXJzZWN0aW9uT2JzZXJ2ZXJEYXRhKSB7
CisgICAgICAgIGZvciAoY29uc3QgYXV0byYgb2JzZXJ2ZXIgOiBtX2ludGVyc2VjdGlvbk9ic2Vy
dmVyRGF0YS0+b2JzZXJ2ZXJzKSB7CisgICAgICAgICAgICBpZiAob2JzZXJ2ZXIpCisgICAgICAg
ICAgICAgICAgb2JzZXJ2ZXItPnJvb3REZXN0cm95ZWQoKTsKKyAgICAgICAgfQorICAgICAgICBt
X2ludGVyc2VjdGlvbk9ic2VydmVyRGF0YS0+b2JzZXJ2ZXJzLmNsZWFyKCk7CisgICAgICAgIC8v
IERvY3VtZW50IGNhbm5vdCBiZSBhIHRhcmdldC4KKyAgICAgICAgQVNTRVJUKG1faW50ZXJzZWN0
aW9uT2JzZXJ2ZXJEYXRhLT5yZWdpc3RyYXRpb25zLmlzRW1wdHkoKSk7CisgICAgfQorCisgICAg
cmVtb3ZlRnJvbURvY3VtZW50c01hcCgpOworCisgICAgLy8gV2UgbmVlZCB0byByZW1vdmUgZnJv
bSB0aGUgY29udGV4dHMgbWFwIHZlcnkgZWFybHkgaW4gdGhlIGRlc3RydWN0b3Igc28gdGhhdCBj
YWxsaW5nIHBvc3RUYXNrKCkgb24gdGhpcyBEb2N1bWVudCBmcm9tIGFub3RoZXIgdGhyZWFkIGlz
IHNhZmUuCisgICAgcmVtb3ZlRnJvbUNvbnRleHRzTWFwKCk7CisKKyAgICBBU1NFUlQoIXJlbmRl
clZpZXcoKSk7CisgICAgQVNTRVJUKG1fYmFja0ZvcndhcmRDYWNoZVN0YXRlICE9IEluQmFja0Zv
cndhcmRDYWNoZSk7CisgICAgQVNTRVJUKG1fcmFuZ2VzLmlzRW1wdHkoKSk7CisgICAgQVNTRVJU
KCFtX3BhcmVudFRyZWVTY29wZSk7CisgICAgQVNTRVJUKCFtX2Rpc2FibGVkRmllbGRzZXRFbGVt
ZW50c0NvdW50KTsKKyAgICBBU1NFUlQobV9pbkRvY3VtZW50U2hhZG93Um9vdHMuaXNFbXB0eSgp
KTsKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pICYmIFBMQVRGT1JNKElPU19GQU1J
TFkpCisgICAgbV9kZXZpY2VNb3Rpb25DbGllbnQtPmRldmljZU1vdGlvbkNvbnRyb2xsZXJEZXN0
cm95ZWQoKTsKKyAgICBtX2RldmljZU9yaWVudGF0aW9uQ2xpZW50LT5kZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKKyNlbmRpZgorCisgICAgaWYgKG1fdGVtcGxhdGVEb2N1
bWVudCkKKyAgICAgICAgbV90ZW1wbGF0ZURvY3VtZW50LT5zZXRUZW1wbGF0ZURvY3VtZW50SG9z
dChudWxscHRyKTsgLy8gYmFsYW5jZWQgaW4gdGVtcGxhdGVEb2N1bWVudCgpLgorCisgICAgLy8g
RklYTUU6IFNob3VsZCB3ZSByZXNldCBtX2RvbVdpbmRvdyB3aGVuIHdlIGRldGFjaCBmcm9tIHRo
ZSBGcmFtZT8KKyAgICBpZiAobV9kb21XaW5kb3cpCisgICAgICAgIG1fZG9tV2luZG93LT5yZXNl
dFVubGVzc1N1c3BlbmRlZEZvckRvY3VtZW50U3VzcGVuc2lvbigpOworCisgICAgbV9zY3JpcHRS
dW5uZXIgPSBudWxscHRyOworICAgIG1fbW9kdWxlTG9hZGVyID0gbnVsbHB0cjsKKworICAgIHJl
bW92ZUFsbEV2ZW50TGlzdGVuZXJzKCk7CisKKyAgICAvLyBDdXJyZW50bHkgd2UgYmVsaWV2ZSB0
aGF0IERvY3VtZW50IGNhbiBuZXZlciBvdXRsaXZlIHRoZSBwYXJzZXIuCisgICAgLy8gQWx0aG91
Z2ggdGhlIERvY3VtZW50IG1heSBiZSByZXBsYWNlZCBzeW5jaHJvbm91c2x5LCBEb2N1bWVudFBh
cnNlcnMKKyAgICAvLyBnZW5lcmFsbHkga2VlcCBhdCBsZWFzdCBvbmUgcmVmZXJlbmNlIHRvIGFu
IEVsZW1lbnQgd2hpY2ggd291bGQgaW4gdHVybgorICAgIC8vIGhhcyBhIHJlZmVyZW5jZSB0byB0
aGUgRG9jdW1lbnQuICBJZiB5b3UgaGl0IHRoaXMgQVNTRVJULCB0aGVuIHRoYXQKKyAgICAvLyBh
c3N1bXB0aW9uIGlzIHdyb25nLiAgRG9jdW1lbnRQYXJzZXI6OmRldGFjaCgpIHNob3VsZCBlbnN1
cmUgdGhhdCBldmVuCisgICAgLy8gaWYgdGhlIERvY3VtZW50UGFyc2VyIG91dGxpdmVzIHRoZSBE
b2N1bWVudCBpdCB3b24ndCBjYXVzZSBiYWRuZXNzLgorICAgIEFTU0VSVCghbV9wYXJzZXIgfHwg
bV9wYXJzZXItPnJlZkNvdW50KCkgPT0gMSk7CisgICAgZGV0YWNoUGFyc2VyKCk7CisKKyAgICBp
ZiAodGhpcyA9PSAmdG9wRG9jdW1lbnQoKSkKKyAgICAgICAgY2xlYXJBWE9iamVjdENhY2hlKCk7
CisKKyAgICBtX2RlY29kZXIgPSBudWxscHRyOworCisgICAgaWYgKG1fc3R5bGVTaGVldExpc3Qp
CisgICAgICAgIG1fc3R5bGVTaGVldExpc3QtPmRldGFjaCgpOworCisgICAgZXh0ZW5zaW9uU3R5
bGVTaGVldHMoKS5kZXRhY2hGcm9tRG9jdW1lbnQoKTsKKworICAgIHN0eWxlU2NvcGUoKS5jbGVh
clJlc29sdmVyKCk7IC8vIFdlIG5lZWQgdG8gZGVzdHJveSBDU1NGb250U2VsZWN0b3IgYmVmb3Jl
IGRlc3Ryb3lpbmcgbV9jYWNoZWRSZXNvdXJjZUxvYWRlci4KKyAgICBtX2ZvbnRMb2FkZXItPnN0
b3BMb2FkaW5nQW5kQ2xlYXJGb250cygpOworCisgICAgLy8gSXQncyBwb3NzaWJsZSBmb3IgbXVs
dGlwbGUgRG9jdW1lbnRzIHRvIGVuZCB1cCByZWZlcmVuY2luZyB0aGUgc2FtZSBDYWNoZWRSZXNv
dXJjZUxvYWRlciAoZS5nLiwgU1ZHSW1hZ2VzCisgICAgLy8gbG9hZCB0aGUgaW5pdGlhbCBlbXB0
eSBkb2N1bWVudCBhbmQgdGhlIFNWR0RvY3VtZW50IHdpdGggdGhlIHNhbWUgRG9jdW1lbnRMb2Fk
ZXIpLgorICAgIGlmIChtX2NhY2hlZFJlc291cmNlTG9hZGVyLT5kb2N1bWVudCgpID09IHRoaXMp
CisgICAgICAgIG1fY2FjaGVkUmVzb3VyY2VMb2FkZXItPnNldERvY3VtZW50KG51bGxwdHIpOwor
CisgICAgLy8gV2UgbXVzdCBjYWxsIGNsZWFyUmFyZURhdGEoKSBoZXJlIHNpbmNlIGEgRG9jdW1l
bnQgY2xhc3MgaW5oZXJpdHMgVHJlZVNjb3BlCisgICAgLy8gYXMgd2VsbCBhcyBOb2RlLiBTZWUg
YSBjb21tZW50IG9uIFRyZWVTY29wZS5oIGZvciB0aGUgcmVhc29uLgorICAgIGlmIChoYXNSYXJl
RGF0YSgpKQorICAgICAgICBjbGVhclJhcmVEYXRhKCk7CisKKyAgICBSRUxFQVNFX0FTU0VSVF9X
SVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKG1fbGlzdHNJbnZhbGlkYXRlZEF0RG9jdW1lbnQuaXNF
bXB0eSgpKTsKKyAgICBSRUxFQVNFX0FTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKG1f
Y29sbGVjdGlvbnNJbnZhbGlkYXRlZEF0RG9jdW1lbnQuaXNFbXB0eSgpKTsKKworICAgIGZvciAo
dW5zaWduZWQgY291bnQgOiBtX25vZGVMaXN0QW5kQ29sbGVjdGlvbkNvdW50cykKKyAgICAgICAg
QVNTRVJUX1VOVVNFRChjb3VudCwgIWNvdW50KTsKK30KKwordm9pZCBEb2N1bWVudDo6cmVtb3Zl
ZExhc3RSZWYoKQoreworICAgIFNjcmlwdERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFkIHNj
cmlwdERpc2FsbG93ZWRTY29wZTsKKyAgICBBU1NFUlQoIW1fZGVsZXRpb25IYXNCZWd1bik7Cisg
ICAgaWYgKG1fcmVmZXJlbmNpbmdOb2RlQ291bnQpIHsKKyAgICAgICAgLy8gTm9kZTo6cmVtb3Zl
ZExhc3RSZWYgZG9lc24ndCBzZXQgcmVmQ291bnQoKSB0byB6ZXJvIGJlY2F1c2UgaXQncyBub3Qg
b2JzZXJ2YWJsZS4KKyAgICAgICAgLy8gQnV0IHdlIG5lZWQgdG8gcmVtZW1iZXIgdGhhdCBvdXIg
cmVmQ291bnQgcmVhY2hlZCB6ZXJvIGluIHN1YnNlcXVlbnQgY2FsbHMgdG8gZGVjcmVtZW50UmVm
ZXJlbmNpbmdOb2RlQ291bnQoKS4KKyAgICAgICAgbV9yZWZDb3VudEFuZFBhcmVudEJpdCA9IDA7
CisKKyAgICAgICAgLy8gSWYgcmVtb3ZpbmcgYSBjaGlsZCByZW1vdmVzIHRoZSBsYXN0IG5vZGUg
cmVmZXJlbmNlLCB3ZSBkb24ndCB3YW50IHRoZSBzY29wZSB0byBiZSBkZXN0cm95ZWQKKyAgICAg
ICAgLy8gdW50aWwgYWZ0ZXIgcmVtb3ZlRGV0YWNoZWRDaGlsZHJlbiByZXR1cm5zLCBzbyB3ZSBw
cm90ZWN0IG91cnNlbHZlcy4KKyAgICAgICAgaW5jcmVtZW50UmVmZXJlbmNpbmdOb2RlQ291bnQo
KTsKKworICAgICAgICBSRUxFQVNFX0FTU0VSVCghaGFzTGl2aW5nUmVuZGVyVHJlZSgpKTsKKyAg
ICAgICAgLy8gV2UgbXVzdCBtYWtlIHN1cmUgbm90IHRvIGJlIHJldGFpbmluZyBhbnkgb2Ygb3Vy
IGNoaWxkcmVuIHRocm91Z2gKKyAgICAgICAgLy8gdGhlc2UgZXh0cmEgcG9pbnRlcnMgb3Igd2Ug
d2lsbCBjcmVhdGUgYSByZWZlcmVuY2UgY3ljbGUuCisgICAgICAgIG1fZm9jdXNlZEVsZW1lbnQg
PSBudWxscHRyOworICAgICAgICBtX2hvdmVyZWRFbGVtZW50ID0gbnVsbHB0cjsKKyAgICAgICAg
bV9hY3RpdmVFbGVtZW50ID0gbnVsbHB0cjsKKyAgICAgICAgbV90aXRsZUVsZW1lbnQgPSBudWxs
cHRyOworICAgICAgICBtX2RvY3VtZW50RWxlbWVudCA9IG51bGxwdHI7CisgICAgICAgIG1fZm9j
dXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlID0gbnVsbHB0cjsKKyAgICAgICAgbV91c2VyQWN0aW9u
RWxlbWVudHMuY2xlYXIoKTsKKyNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisgICAgICAgIG1f
ZnVsbHNjcmVlbk1hbmFnZXItPmNsZWFyKCk7CisjZW5kaWYKKyAgICAgICAgbV9hc3NvY2lhdGVk
Rm9ybUNvbnRyb2xzLmNsZWFyKCk7CisgICAgICAgIG1fcGVuZGluZ1JlbmRlclRyZWVUZXh0VXBk
YXRlID0geyB9OworCisgICAgICAgIG1fZm9udExvYWRlci0+c3RvcExvYWRpbmdBbmRDbGVhckZv
bnRzKCk7CisKKyAgICAgICAgZGV0YWNoUGFyc2VyKCk7CisKKyAgICAgICAgUkVMRUFTRV9BU1NF
UlQobV9zZWxlY3Rpb24tPmlzTm9uZSgpKTsKKworICAgICAgICAvLyByZW1vdmVEZXRhY2hlZENo
aWxkcmVuKCkgZG9lc24ndCBhbHdheXMgdW5yZWdpc3RlciBJRHMsCisgICAgICAgIC8vIHNvIHRl
YXIgZG93biBzY29wZSBpbmZvcm1hdGlvbiB1cCBmcm9udCB0byBhdm9pZCBoYXZpbmcKKyAgICAg
ICAgLy8gc3RhbGUgcmVmZXJlbmNlcyBpbiB0aGUgbWFwLgorCisgICAgICAgIGRlc3Ryb3lUcmVl
U2NvcGVEYXRhKCk7CisgICAgICAgIHJlbW92ZURldGFjaGVkQ2hpbGRyZW4oKTsKKyAgICAgICAg
UkVMRUFTRV9BU1NFUlQobV90b3BMYXllckVsZW1lbnRzLmlzRW1wdHkoKSk7CisgICAgICAgIG1f
Zm9ybUNvbnRyb2xsZXIgPSBudWxscHRyOworICAgICAgICAKKyAgICAgICAgbV9tYXJrZXJzLT5k
ZXRhY2goKTsKKyAgICAgICAgCisgICAgICAgIG1fY3NzQ2FudmFzRWxlbWVudHMuY2xlYXIoKTsK
KyAgICAgICAgCisgICAgICAgIGNvbW1vblRlYXJkb3duKCk7CisKKyNpZm5kZWYgTkRFQlVHCisg
ICAgICAgIC8vIFdlIG5lZWQgdG8gZG8gdGhpcyByaWdodCBub3cgc2luY2Ugc2VsZk9ubHlEZXJl
ZigpIGNhbiBkZWxldGUgdGhpcy4KKyAgICAgICAgbV9pblJlbW92ZWRMYXN0UmVmRnVuY3Rpb24g
PSBmYWxzZTsKKyNlbmRpZgorICAgICAgICBkZWNyZW1lbnRSZWZlcmVuY2luZ05vZGVDb3VudCgp
OworICAgIH0gZWxzZSB7CisgICAgICAgIGNvbW1vblRlYXJkb3duKCk7CisjaWZuZGVmIE5ERUJV
RworICAgICAgICBtX2luUmVtb3ZlZExhc3RSZWZGdW5jdGlvbiA9IGZhbHNlOworICAgICAgICBt
X2RlbGV0aW9uSGFzQmVndW4gPSB0cnVlOworI2VuZGlmCisgICAgICAgIGRlbGV0ZSB0aGlzOwor
ICAgIH0KK30KKwordm9pZCBEb2N1bWVudDo6Y29tbW9uVGVhcmRvd24oKQoreworICAgIHN0b3BB
Y3RpdmVET01PYmplY3RzKCk7CisKKyNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisgICAgbV9m
dWxsc2NyZWVuTWFuYWdlci0+ZW1wdHlFdmVudFF1ZXVlKCk7CisjZW5kaWYKKworICAgIGlmIChz
dmdFeHRlbnNpb25zKCkpCisgICAgICAgIGFjY2Vzc1NWR0V4dGVuc2lvbnMoKS5wYXVzZUFuaW1h
dGlvbnMoKTsKKworICAgIGNsZWFyU2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyKCk7CisKKyAg
ICBtX2RvY3VtZW50RnJhZ21lbnRGb3JJbm5lck91dGVySFRNTCA9IG51bGxwdHI7CisKKyAgICBp
ZiAobV9oaWdobGlnaHRSZWdpc3RlcikKKyAgICAgICAgbV9oaWdobGlnaHRSZWdpc3Rlci0+Y2xl
YXIoKTsKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMpCisgICAgaWYgKG1fYXBwSGlnaGxpZ2h0
UmVnaXN0ZXIpCisgICAgICAgIG1fYXBwSGlnaGxpZ2h0UmVnaXN0ZXItPmNsZWFyKCk7CisjZW5k
aWYKKyAgICBtX3BlbmRpbmdTY3JvbGxFdmVudFRhcmdldExpc3QgPSBudWxscHRyOworCisgICAg
aWYgKG1fdGltZWxpbmVzQ29udHJvbGxlcikKKyAgICAgICAgbV90aW1lbGluZXNDb250cm9sbGVy
LT5kZXRhY2hGcm9tRG9jdW1lbnQoKTsKKworICAgIG1fdGltZWxpbmUgPSBudWxscHRyOworICAg
IG1fYXNzb2NpYXRlZEZvcm1Db250cm9scy5jbGVhcigpOworICAgIG1fZGlkQXNzb2NpYXRlRm9y
bUNvbnRyb2xzVGltZXIuc3RvcCgpOworfQorCitFbGVtZW50KiBEb2N1bWVudDo6ZWxlbWVudEZv
ckFjY2Vzc0tleShjb25zdCBTdHJpbmcmIGtleSkKK3sKKyAgICBpZiAoa2V5LmlzRW1wdHkoKSkK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgaWYgKCFtX2FjY2Vzc0tleUNhY2hlKQorICAg
ICAgICBidWlsZEFjY2Vzc0tleUNhY2hlKCk7CisgICAgcmV0dXJuIG1fYWNjZXNzS2V5Q2FjaGUt
PmdldChrZXkpLmdldCgpOworfQorCit2b2lkIERvY3VtZW50OjpidWlsZEFjY2Vzc0tleUNhY2hl
KCkKK3sKKyAgICBtX2FjY2Vzc0tleUNhY2hlID0gbWFrZVVuaXF1ZTxIYXNoTWFwPFN0cmluZywg
V2Vha1B0cjxFbGVtZW50PiwgQVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPj4oW3RoaXNdIHsKKyAg
ICAgICAgSGFzaE1hcDxTdHJpbmcsIFdlYWtQdHI8RWxlbWVudD4sIEFTQ0lJQ2FzZUluc2Vuc2l0
aXZlSGFzaD4gbWFwOworICAgICAgICBmb3IgKGF1dG8mIG5vZGUgOiBjb21wb3NlZFRyZWVEZXNj
ZW5kYW50cygqdGhpcykpIHsKKyAgICAgICAgICAgIGlmICghaXM8RWxlbWVudD4obm9kZSkpCisg
ICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBhdXRvJiBlbGVtZW50ID0gZG93
bmNhc3Q8RWxlbWVudD4obm9kZSk7CisgICAgICAgICAgICBhdXRvJiBrZXkgPSBlbGVtZW50LmF0
dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYWNjZXNza2V5QXR0cik7CisgICAgICAgICAg
ICBpZiAoa2V5LmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAg
ICAgIG1hcC5hZGQoa2V5LCBtYWtlV2Vha1B0cihlbGVtZW50KSk7CisgICAgICAgIH0KKyAgICAg
ICAgcmV0dXJuIG1hcDsKKyAgICB9KCkpOworfQorCit2b2lkIERvY3VtZW50OjppbnZhbGlkYXRl
QWNjZXNzS2V5Q2FjaGVTbG93Q2FzZSgpCit7CisgICAgbV9hY2Nlc3NLZXlDYWNoZSA9IG51bGxw
dHI7Cit9CisKK0V4Y2VwdGlvbk9yPFNlbGVjdG9yUXVlcnkmPiBEb2N1bWVudDo6c2VsZWN0b3JR
dWVyeUZvclN0cmluZyhjb25zdCBTdHJpbmcmIHNlbGVjdG9yU3RyaW5nKQoreworICAgIGlmIChz
ZWxlY3RvclN0cmluZy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBTeW50
YXhFcnJvciB9OworICAgIGlmICghbV9zZWxlY3RvclF1ZXJ5Q2FjaGUpCisgICAgICAgIG1fc2Vs
ZWN0b3JRdWVyeUNhY2hlID0gbWFrZVVuaXF1ZTxTZWxlY3RvclF1ZXJ5Q2FjaGU+KCk7CisgICAg
cmV0dXJuIG1fc2VsZWN0b3JRdWVyeUNhY2hlLT5hZGQoc2VsZWN0b3JTdHJpbmcsICp0aGlzKTsK
K30KKwordm9pZCBEb2N1bWVudDo6Y2xlYXJTZWxlY3RvclF1ZXJ5Q2FjaGUoKQoreworICAgIG1f
c2VsZWN0b3JRdWVyeUNhY2hlID0gbnVsbHB0cjsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0UmVm
ZXJyZXJQb2xpY3koUmVmZXJyZXJQb2xpY3kgcmVmZXJyZXJQb2xpY3kpCit7CisgICAgLy8gRG8g
bm90IG92ZXJyaWRlIGV4aXN0aW5nIHJlZmVycmVyIHBvbGljeSB3aXRoIHRoZSAiZW1wdHkgc3Ry
aW5nIiBvbmUgYXMgdGhlICJlbXB0eSBzdHJpbmciIG1lYW5zIHdlIHNob3VsZCB1c2UKKyAgICAv
LyB0aGUgcG9saWN5IGRlZmluZWQgZWxzZXdoZXJlLgorICAgIGlmIChtX3JlZmVycmVyUG9saWN5
ICYmIHJlZmVycmVyUG9saWN5ID09IFJlZmVycmVyUG9saWN5OjpFbXB0eVN0cmluZykKKyAgICAg
ICAgcmV0dXJuOworCisgICAgbV9yZWZlcnJlclBvbGljeSA9IHJlZmVycmVyUG9saWN5OworfQor
CitNZWRpYVF1ZXJ5TWF0Y2hlciYgRG9jdW1lbnQ6Om1lZGlhUXVlcnlNYXRjaGVyKCkKK3sKKyAg
ICBpZiAoIW1fbWVkaWFRdWVyeU1hdGNoZXIpCisgICAgICAgIG1fbWVkaWFRdWVyeU1hdGNoZXIg
PSBNZWRpYVF1ZXJ5TWF0Y2hlcjo6Y3JlYXRlKCp0aGlzKTsKKyAgICByZXR1cm4gKm1fbWVkaWFR
dWVyeU1hdGNoZXI7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldENvbXBhdGliaWxpdHlNb2RlKERv
Y3VtZW50Q29tcGF0aWJpbGl0eU1vZGUgbW9kZSkKK3sKKyAgICBpZiAobV9jb21wYXRpYmlsaXR5
TW9kZUxvY2tlZCB8fCBtb2RlID09IG1fY29tcGF0aWJpbGl0eU1vZGUpCisgICAgICAgIHJldHVy
bjsKKyAgICBib29sIHdhc0luUXVpcmtzTW9kZSA9IGluUXVpcmtzTW9kZSgpOworICAgIG1fY29t
cGF0aWJpbGl0eU1vZGUgPSBtb2RlOworCisgICAgY2xlYXJTZWxlY3RvclF1ZXJ5Q2FjaGUoKTsK
KworICAgIGlmIChpblF1aXJrc01vZGUoKSAhPSB3YXNJblF1aXJrc01vZGUpIHsKKyAgICAgICAg
Ly8gQWxsIHVzZXIgc3R5bGVzaGVldHMgaGF2ZSB0byByZXBhcnNlIHVzaW5nIHRoZSBkaWZmZXJl
bnQgbW9kZS4KKyAgICAgICAgZXh0ZW5zaW9uU3R5bGVTaGVldHMoKS5jbGVhclBhZ2VVc2VyU2hl
ZXQoKTsKKyAgICAgICAgZXh0ZW5zaW9uU3R5bGVTaGVldHMoKS5pbnZhbGlkYXRlSW5qZWN0ZWRT
dHlsZVNoZWV0Q2FjaGUoKTsKKyAgICB9Cit9CisKK1N0cmluZyBEb2N1bWVudDo6Y29tcGF0TW9k
ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGluUXVpcmtzTW9kZSgpID8gIkJhY2tDb21wYXQiIDog
IkNTUzFDb21wYXQiOworfQorCitjb25zdCBDb2xvciYgRG9jdW1lbnQ6OnRoZW1lQ29sb3IoKQor
eworICAgIGlmICghbV9jYWNoZWRUaGVtZUNvbG9yLmlzVmFsaWQoKSkgeworICAgICAgICBpZiAo
IW1fYWN0aXZlVGhlbWVDb2xvck1ldGFFbGVtZW50KQorICAgICAgICAgICAgbV9hY3RpdmVUaGVt
ZUNvbG9yTWV0YUVsZW1lbnQgPSBkZXRlcm1pbmVBY3RpdmVUaGVtZUNvbG9yTWV0YUVsZW1lbnQo
KTsKKyAgICAgICAgaWYgKG1fYWN0aXZlVGhlbWVDb2xvck1ldGFFbGVtZW50KQorICAgICAgICAg
ICAgbV9jYWNoZWRUaGVtZUNvbG9yID0gbV9hY3RpdmVUaGVtZUNvbG9yTWV0YUVsZW1lbnQtPmNv
bnRlbnRDb2xvcigpOworCisgICAgICAgIGlmICghbV9jYWNoZWRUaGVtZUNvbG9yLmlzVmFsaWQo
KSkKKyAgICAgICAgICAgIG1fY2FjaGVkVGhlbWVDb2xvciA9IG1fYXBwbGljYXRpb25NYW5pZmVz
dFRoZW1lQ29sb3I7CisgICAgfQorICAgIHJldHVybiBtX2NhY2hlZFRoZW1lQ29sb3I7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnJlc2V0TGlua0NvbG9yKCkKK3sKKyAgICBtX2xpbmtDb2xvciA9IFN0
eWxlQ29sb3I6OmNvbG9yRnJvbUtleXdvcmQoQ1NTVmFsdWVXZWJraXRMaW5rLCBzdHlsZUNvbG9y
T3B0aW9ucyhudWxscHRyKSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc2V0VmlzaXRlZExpbmtD
b2xvcigpCit7CisgICAgbV92aXNpdGVkTGlua0NvbG9yID0gU3R5bGVDb2xvcjo6Y29sb3JGcm9t
S2V5d29yZChDU1NWYWx1ZVdlYmtpdExpbmssIHN0eWxlQ29sb3JPcHRpb25zKG51bGxwdHIpIHwg
U3R5bGVDb2xvcjo6T3B0aW9uczo6Rm9yVmlzaXRlZExpbmspOworfQorCit2b2lkIERvY3VtZW50
OjpyZXNldEFjdGl2ZUxpbmtDb2xvcigpCit7CisgICAgbV9hY3RpdmVMaW5rQ29sb3IgPSBTdHls
ZUNvbG9yOjpjb2xvckZyb21LZXl3b3JkKENTU1ZhbHVlV2Via2l0QWN0aXZlbGluaywgc3R5bGVD
b2xvck9wdGlvbnMobnVsbHB0cikpOworfQorCitET01JbXBsZW1lbnRhdGlvbiYgRG9jdW1lbnQ6
OmltcGxlbWVudGF0aW9uKCkKK3sKKyAgICBpZiAoIW1faW1wbGVtZW50YXRpb24pCisgICAgICAg
IG1faW1wbGVtZW50YXRpb24gPSBtYWtlVW5pcXVlPERPTUltcGxlbWVudGF0aW9uPigqdGhpcyk7
CisgICAgcmV0dXJuICptX2ltcGxlbWVudGF0aW9uOworfQorCitib29sIERvY3VtZW50OjpoYXNN
YW5pZmVzdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGRvY3VtZW50RWxlbWVudCgpICYmIGRvY3Vt
ZW50RWxlbWVudCgpLT5oYXNUYWdOYW1lKGh0bWxUYWcpICYmIGRvY3VtZW50RWxlbWVudCgpLT5o
YXNBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9uKG1hbmlmZXN0QXR0cik7Cit9CisKK0Rv
Y3VtZW50VHlwZSogRG9jdW1lbnQ6OmRvY3R5cGUoKSBjb25zdAoreworICAgIGZvciAoTm9kZSog
bm9kZSA9IGZpcnN0Q2hpbGQoKTsgbm9kZTsgbm9kZSA9IG5vZGUtPm5leHRTaWJsaW5nKCkpIHsK
KyAgICAgICAgaWYgKGlzPERvY3VtZW50VHlwZT4obm9kZSkpCisgICAgICAgICAgICByZXR1cm4g
ZG93bmNhc3Q8RG9jdW1lbnRUeXBlPihub2RlKTsKKyAgICB9CisgICAgcmV0dXJuIG51bGxwdHI7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjb25zdCBDaGlsZENoYW5nZSYg
Y2hhbmdlKQoreworICAgIENvbnRhaW5lck5vZGU6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2UpOwor
CisgICAgLy8gRklYTUU6IENocm9tZTo6ZGlkUmVjZWl2ZURvY1R5cGUoKSB1c2VkIHRvIGJlIGNh
bGxlZCBvbmx5IHdoZW4gdGhlIGRvY3R5cGUgY2hhbmdlZC4gV2UgbmVlZCB0byBjaGVjayB0aGUK
KyAgICAvLyBpbXBhY3Qgb2YgY2FsbGluZyB0aGlzIHN5c3RlbWF0aWNhbGx5LiBJZiB0aGUgb3Zl
cmhlYWQgaXMgbmVnbGlnaWJsZSwgd2UgbmVlZCB0byByZW5hbWUgZGlkUmVjZWl2ZURvY1R5cGUs
CisgICAgLy8gb3RoZXJ3aXNlLCB3ZSBuZWVkIHRvIGRldGVjdCB0aGUgZG9jIHR5cGUgY2hhbmdl
cyBiZWZvcmUgdXBkYXRpbmcgdGhlIHZpZXdwb3J0LgorICAgIGlmIChQYWdlKiBwYWdlID0gdGhp
cy0+cGFnZSgpKQorICAgICAgICBwYWdlLT5jaHJvbWUoKS5kaWRSZWNlaXZlRG9jVHlwZSgqZnJh
bWUoKSk7CisKKyAgICBFbGVtZW50KiBuZXdEb2N1bWVudEVsZW1lbnQgPSBjaGlsZHJlbk9mVHlw
ZTxFbGVtZW50PigqdGhpcykuZmlyc3QoKTsKKyAgICBpZiAobmV3RG9jdW1lbnRFbGVtZW50ID09
IG1fZG9jdW1lbnRFbGVtZW50KQorICAgICAgICByZXR1cm47CisgICAgbV9kb2N1bWVudEVsZW1l
bnQgPSBuZXdEb2N1bWVudEVsZW1lbnQ7CisgICAgLy8gVGhlIHJvb3Qgc3R5bGUgdXNlZCBmb3Ig
bWVkaWEgcXVlcnkgbWF0Y2hpbmcgZGVwZW5kcyBvbiB0aGUgZG9jdW1lbnQgZWxlbWVudC4KKyAg
ICBzdHlsZVNjb3BlKCkuY2xlYXJSZXNvbHZlcigpOworfQorCitzdGF0aWMgQUxXQVlTX0lOTElO
RSBSZWY8SFRNTEVsZW1lbnQ+IGNyZWF0ZVVwZ3JhZGVDYW5kaWRhdGVFbGVtZW50KERvY3VtZW50
JiBkb2N1bWVudCwgY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKK3sKKyAgICBpZiAoRG9jdW1l
bnQ6OnZhbGlkYXRlQ3VzdG9tRWxlbWVudE5hbWUobmFtZS5sb2NhbE5hbWUoKSkgIT0gQ3VzdG9t
RWxlbWVudE5hbWVWYWxpZGF0aW9uU3RhdHVzOjpWYWxpZCkKKyAgICAgICAgcmV0dXJuIEhUTUxV
bmtub3duRWxlbWVudDo6Y3JlYXRlKG5hbWUsIGRvY3VtZW50KTsKKworICAgIGF1dG8gZWxlbWVu
dCA9IEhUTUxFbGVtZW50OjpjcmVhdGUobmFtZSwgZG9jdW1lbnQpOworICAgIGVsZW1lbnQtPnNl
dElzQ3VzdG9tRWxlbWVudFVwZ3JhZGVDYW5kaWRhdGUoKTsKKyAgICByZXR1cm4gZWxlbWVudDsK
K30KKworc3RhdGljIEFMV0FZU19JTkxJTkUgUmVmPEhUTUxFbGVtZW50PiBjcmVhdGVVcGdyYWRl
Q2FuZGlkYXRlRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IEF0b21TdHJpbmcmIGxv
Y2FsTmFtZSkKK3sKKyAgICByZXR1cm4gY3JlYXRlVXBncmFkZUNhbmRpZGF0ZUVsZW1lbnQoZG9j
dW1lbnQsIFF1YWxpZmllZE5hbWUgeyBudWxsQXRvbSgpLCBsb2NhbE5hbWUsIHhodG1sTmFtZXNw
YWNlVVJJIH0pOworfQorCitzdGF0aWMgaW5saW5lIGJvb2wgaXNWYWxpZEhUTUxFbGVtZW50TmFt
ZShjb25zdCBBdG9tU3RyaW5nJiBsb2NhbE5hbWUpCit7CisgICAgcmV0dXJuIERvY3VtZW50Ojpp
c1ZhbGlkTmFtZShsb2NhbE5hbWUpOworfQorCitzdGF0aWMgaW5saW5lIGJvb2wgaXNWYWxpZEhU
TUxFbGVtZW50TmFtZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKQoreworICAgIHJldHVybiBE
b2N1bWVudDo6aXNWYWxpZE5hbWUobmFtZS5sb2NhbE5hbWUoKSk7Cit9CisKK3RlbXBsYXRlPHR5
cGVuYW1lIE5hbWVUeXBlPgorc3RhdGljIEV4Y2VwdGlvbk9yPFJlZjxFbGVtZW50Pj4gY3JlYXRl
SFRNTEVsZW1lbnRXaXRoTmFtZVZhbGlkYXRpb24oRG9jdW1lbnQmIGRvY3VtZW50LCBjb25zdCBO
YW1lVHlwZSYgbmFtZSkKK3sKKyAgICBhdXRvIGVsZW1lbnQgPSBIVE1MRWxlbWVudEZhY3Rvcnk6
OmNyZWF0ZUtub3duRWxlbWVudChuYW1lLCBkb2N1bWVudCk7CisgICAgaWYgKExJS0VMWShlbGVt
ZW50KSkKKyAgICAgICAgcmV0dXJuIFJlZjxFbGVtZW50PiB7IGVsZW1lbnQucmVsZWFzZU5vbk51
bGwoKSB9OworCisgICAgaWYgKGF1dG8qIHdpbmRvdyA9IGRvY3VtZW50LmRvbVdpbmRvdygpKSB7
CisgICAgICAgIGF1dG8qIHJlZ2lzdHJ5ID0gd2luZG93LT5jdXN0b21FbGVtZW50UmVnaXN0cnko
KTsKKyAgICAgICAgaWYgKFVOTElLRUxZKHJlZ2lzdHJ5KSkgeworICAgICAgICAgICAgaWYgKFJl
ZlB0ciBlbGVtZW50SW50ZXJmYWNlID0gcmVnaXN0cnktPmZpbmRJbnRlcmZhY2UobmFtZSkpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnRJbnRlcmZhY2UtPmNvbnN0cnVjdEVsZW1lbnRX
aXRoRmFsbGJhY2soZG9jdW1lbnQsIG5hbWUpOworICAgICAgICB9CisgICAgfQorCisgICAgaWYg
KFVOTElLRUxZKCFpc1ZhbGlkSFRNTEVsZW1lbnROYW1lKG5hbWUpKSkKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRDaGFyYWN0ZXJFcnJvciB9OworCisgICAgcmV0dXJuIFJlZjxF
bGVtZW50PiB7IGNyZWF0ZVVwZ3JhZGVDYW5kaWRhdGVFbGVtZW50KGRvY3VtZW50LCBuYW1lKSB9
OworfQorCitFeGNlcHRpb25PcjxSZWY8RWxlbWVudD4+IERvY3VtZW50OjpjcmVhdGVFbGVtZW50
Rm9yQmluZGluZ3MoY29uc3QgQXRvbVN0cmluZyYgbmFtZSkKK3sKKyAgICBpZiAoaXNIVE1MRG9j
dW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIGNyZWF0ZUhUTUxFbGVtZW50V2l0aE5hbWVWYWxpZGF0
aW9uKCp0aGlzLCBuYW1lLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCkpOworCisgICAgaWYgKGlz
WEhUTUxEb2N1bWVudCgpKQorICAgICAgICByZXR1cm4gY3JlYXRlSFRNTEVsZW1lbnRXaXRoTmFt
ZVZhbGlkYXRpb24oKnRoaXMsIG5hbWUpOworCisgICAgaWYgKCFpc1ZhbGlkTmFtZShuYW1lKSkK
KyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRDaGFyYWN0ZXJFcnJvciB9OworCisg
ICAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoUXVhbGlmaWVkTmFtZShudWxsQXRvbSgpLCBuYW1lLCBu
dWxsQXRvbSgpKSwgZmFsc2UpOworfQorCitSZWY8RG9jdW1lbnRGcmFnbWVudD4gRG9jdW1lbnQ6
OmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKQoreworICAgIHJldHVybiBEb2N1bWVudEZyYWdtZW50
OjpjcmVhdGUoZG9jdW1lbnQoKSk7Cit9CisKK1JlZjxUZXh0PiBEb2N1bWVudDo6Y3JlYXRlVGV4
dE5vZGUoY29uc3QgU3RyaW5nJiBkYXRhKQoreworICAgIHJldHVybiBUZXh0OjpjcmVhdGUoKnRo
aXMsIGRhdGEpOworfQorCitSZWY8Q29tbWVudD4gRG9jdW1lbnQ6OmNyZWF0ZUNvbW1lbnQoY29u
c3QgU3RyaW5nJiBkYXRhKQoreworICAgIHJldHVybiBDb21tZW50OjpjcmVhdGUoKnRoaXMsIGRh
dGEpOworfQorCitFeGNlcHRpb25PcjxSZWY8Q0RBVEFTZWN0aW9uPj4gRG9jdW1lbnQ6OmNyZWF0
ZUNEQVRBU2VjdGlvbihjb25zdCBTdHJpbmcmIGRhdGEpCit7CisgICAgaWYgKGlzSFRNTERvY3Vt
ZW50KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RTdXBwb3J0ZWRFcnJvciB9Owor
CisgICAgaWYgKGRhdGEuY29udGFpbnMoIl1dPiIpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgSW52YWxpZENoYXJhY3RlckVycm9yIH07CisKKyAgICByZXR1cm4gQ0RBVEFTZWN0aW9uOjpj
cmVhdGUoKnRoaXMsIGRhdGEpOworfQorCitFeGNlcHRpb25PcjxSZWY8UHJvY2Vzc2luZ0luc3Ry
dWN0aW9uPj4gRG9jdW1lbnQ6OmNyZWF0ZVByb2Nlc3NpbmdJbnN0cnVjdGlvbihjb25zdCBTdHJp
bmcmIHRhcmdldCwgY29uc3QgU3RyaW5nJiBkYXRhKQoreworICAgIGlmICghaXNWYWxpZE5hbWUo
dGFyZ2V0KSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRDaGFyYWN0ZXJFcnJv
ciB9OworCisgICAgaWYgKGRhdGEuY29udGFpbnMoIj8+IikpCisgICAgICAgIHJldHVybiBFeGNl
cHRpb24geyBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgfTsKKworICAgIHJldHVybiBQcm9jZXNzaW5n
SW5zdHJ1Y3Rpb246OmNyZWF0ZSgqdGhpcywgdGFyZ2V0LCBkYXRhKTsKK30KKworUmVmPFRleHQ+
IERvY3VtZW50OjpjcmVhdGVFZGl0aW5nVGV4dE5vZGUoY29uc3QgU3RyaW5nJiB0ZXh0KQorewor
ICAgIHJldHVybiBUZXh0OjpjcmVhdGVFZGl0aW5nVGV4dCgqdGhpcywgdGV4dCk7Cit9CisKK1Jl
ZjxDU1NTdHlsZURlY2xhcmF0aW9uPiBEb2N1bWVudDo6Y3JlYXRlQ1NTU3R5bGVEZWNsYXJhdGlv
bigpCit7CisgICAgUmVmPE11dGFibGVTdHlsZVByb3BlcnRpZXM+IHByb3BlcnR5U2V0KE11dGFi
bGVTdHlsZVByb3BlcnRpZXM6OmNyZWF0ZSgpKTsKKyAgICByZXR1cm4gcHJvcGVydHlTZXQtPmVu
c3VyZUNTU1N0eWxlRGVjbGFyYXRpb24oKTsKK30KKworRXhjZXB0aW9uT3I8UmVmPE5vZGU+PiBE
b2N1bWVudDo6aW1wb3J0Tm9kZShOb2RlJiBub2RlVG9JbXBvcnQsIGJvb2wgZGVlcCkKK3sKKyAg
ICBzd2l0Y2ggKG5vZGVUb0ltcG9ydC5ub2RlVHlwZSgpKSB7CisgICAgY2FzZSBET0NVTUVOVF9G
UkFHTUVOVF9OT0RFOgorICAgICAgICBpZiAobm9kZVRvSW1wb3J0LmlzU2hhZG93Um9vdCgpKQor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIEZBTExUSFJPVUdIOworICAgIGNhc2UgRUxFTUVO
VF9OT0RFOgorICAgIGNhc2UgVEVYVF9OT0RFOgorICAgIGNhc2UgQ0RBVEFfU0VDVElPTl9OT0RF
OgorICAgIGNhc2UgUFJPQ0VTU0lOR19JTlNUUlVDVElPTl9OT0RFOgorICAgIGNhc2UgQ09NTUVO
VF9OT0RFOgorICAgICAgICByZXR1cm4gbm9kZVRvSW1wb3J0LmNsb25lTm9kZUludGVybmFsKGRv
Y3VtZW50KCksIGRlZXAgPyBDbG9uaW5nT3BlcmF0aW9uOjpFdmVyeXRoaW5nIDogQ2xvbmluZ09w
ZXJhdGlvbjo6T25seVNlbGYpOworCisgICAgY2FzZSBBVFRSSUJVVEVfTk9ERTogeworICAgICAg
ICBhdXRvJiBhdHRyaWJ1dGUgPSBkb3duY2FzdDxBdHRyPihub2RlVG9JbXBvcnQpOworICAgICAg
ICByZXR1cm4gUmVmPE5vZGU+IHsgQXR0cjo6Y3JlYXRlKCp0aGlzLCBhdHRyaWJ1dGUucXVhbGlm
aWVkTmFtZSgpLCBhdHRyaWJ1dGUudmFsdWUoKSkgfTsKKyAgICB9CisgICAgY2FzZSBET0NVTUVO
VF9OT0RFOiAvLyBDYW4ndCBpbXBvcnQgYSBkb2N1bWVudCBpbnRvIGFub3RoZXIgZG9jdW1lbnQu
CisgICAgY2FzZSBET0NVTUVOVF9UWVBFX05PREU6IC8vIEZJWE1FOiBTdXBwb3J0IGNsb25pbmcg
YSBEb2N1bWVudFR5cGUgbm9kZSBwZXIgRE9NNC4KKyAgICAgICAgYnJlYWs7CisgICAgfQorCisg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5vdFN1cHBvcnRlZEVycm9yIH07Cit9CisKKworRXhjZXB0
aW9uT3I8UmVmPE5vZGU+PiBEb2N1bWVudDo6YWRvcHROb2RlKE5vZGUmIHNvdXJjZSkKK3sKKyAg
ICBFdmVudFF1ZXVlU2NvcGUgc2NvcGU7CisKKyAgICBzd2l0Y2ggKHNvdXJjZS5ub2RlVHlwZSgp
KSB7CisgICAgY2FzZSBET0NVTUVOVF9OT0RFOgorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
Tm90U3VwcG9ydGVkRXJyb3IgfTsKKyAgICBjYXNlIEFUVFJJQlVURV9OT0RFOiB7CisgICAgICAg
IGF1dG8mIGF0dHIgPSBkb3duY2FzdDxBdHRyPihzb3VyY2UpOworICAgICAgICBpZiAoUmVmUHRy
IGVsZW1lbnQgPSBhdHRyLm93bmVyRWxlbWVudCgpKSB7CisgICAgICAgICAgICBhdXRvIHJlc3Vs
dCA9IGVsZW1lbnQtPnJlbW92ZUF0dHJpYnV0ZU5vZGUoYXR0cik7CisgICAgICAgICAgICBpZiAo
cmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQucmVs
ZWFzZUV4Y2VwdGlvbigpOworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgIH0gICAgICAg
CisgICAgZGVmYXVsdDoKKyAgICAgICAgaWYgKHNvdXJjZS5pc1NoYWRvd1Jvb3QoKSkgeworICAg
ICAgICAgICAgLy8gU2hhZG93Um9vdCBjYW5ub3QgZGlzY29ubmVjdCBpdHNlbGYgZnJvbSB0aGUg
aG9zdCBub2RlLgorICAgICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEhpZXJhcmNoeVJlcXVl
c3RFcnJvciB9OworICAgICAgICB9CisgICAgICAgIGlmIChpczxIVE1MRnJhbWVPd25lckVsZW1l
bnQ+KHNvdXJjZSkpIHsKKyAgICAgICAgICAgIGF1dG8mIGZyYW1lT3duZXJFbGVtZW50ID0gZG93
bmNhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Pihzb3VyY2UpOworICAgICAgICAgICAgaWYgKGZy
YW1lKCkgJiYgZnJhbWUoKS0+dHJlZSgpLmlzRGVzY2VuZGFudE9mKGZyYW1lT3duZXJFbGVtZW50
LmNvbnRlbnRGcmFtZSgpKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSGll
cmFyY2h5UmVxdWVzdEVycm9yIH07CisgICAgICAgIH0KKyAgICAgICAgYXV0byByZXN1bHQgPSBz
b3VyY2UucmVtb3ZlKCk7CisgICAgICAgIGlmIChyZXN1bHQuaGFzRXhjZXB0aW9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gcmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKTsKKyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoIXNvdXJjZS5pc0Nvbm5lY3RlZCgpKTsKKyAgICAgICAgUkVMRUFTRV9BU1NFUlQo
IXNvdXJjZS5wYXJlbnROb2RlKCkpOworICAgIH0KKworICAgIHNvdXJjZS5zZXRUcmVlU2NvcGVS
ZWN1cnNpdmVseSgqdGhpcyk7CisKKyAgICByZXR1cm4gUmVmPE5vZGU+IHsgc291cmNlIH07Cit9
CisKK2Jvb2wgRG9jdW1lbnQ6Omhhc1ZhbGlkTmFtZXNwYWNlRm9yRWxlbWVudHMoY29uc3QgUXVh
bGlmaWVkTmFtZSYgcU5hbWUpCit7CisgICAgLy8gVGhlc2UgY2hlY2tzIGFyZSBmcm9tIERPTSBD
b3JlIExldmVsIDIsIGNyZWF0ZUVsZW1lbnROUworICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RS
L0RPTS1MZXZlbC0yLUNvcmUvY29yZS5odG1sI0lELURvY0NyRWxOUworICAgIGlmICghcU5hbWUu
cHJlZml4KCkuaXNFbXB0eSgpICYmIHFOYW1lLm5hbWVzcGFjZVVSSSgpLmlzTnVsbCgpKSAvLyBj
cmVhdGVFbGVtZW50TlMobnVsbCwgImh0bWw6ZGl2IikKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgIGlmIChxTmFtZS5wcmVmaXgoKSA9PSB4bWxBdG9tKCkgJiYgcU5hbWUubmFtZXNwYWNlVVJJ
KCkgIT0gWE1MTmFtZXM6OnhtbE5hbWVzcGFjZVVSSSkgLy8gY3JlYXRlRWxlbWVudE5TKCJodHRw
Oi8vd3d3LmV4YW1wbGUuY29tIiwgInhtbDpsYW5nIikKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgLy8gUmVxdWlyZWQgYnkgRE9NIExldmVsIDMgQ29yZSBhbmQgdW5zcGVjaWZpZWQgYnkg
RE9NIExldmVsIDIgQ29yZToKKyAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy1E
T00tTGV2ZWwtMy1Db3JlLTIwMDQwNDA3L2NvcmUuaHRtbCNJRC1Eb2NDckVsTlMKKyAgICAvLyBj
cmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvIiwgImZvbzpiYXIi
KSwgY3JlYXRlRWxlbWVudE5TKG51bGwsICJ4bWxuczpiYXIiKSwgY3JlYXRlRWxlbWVudE5TKG51
bGwsICJ4bWxucyIpCisgICAgaWYgKHFOYW1lLnByZWZpeCgpID09IHhtbG5zQXRvbSgpIHx8IChx
TmFtZS5wcmVmaXgoKS5pc0VtcHR5KCkgJiYgcU5hbWUubG9jYWxOYW1lKCkgPT0geG1sbnNBdG9t
KCkpKQorICAgICAgICByZXR1cm4gcU5hbWUubmFtZXNwYWNlVVJJKCkgPT0gWE1MTlNOYW1lczo6
eG1sbnNOYW1lc3BhY2VVUkk7CisgICAgcmV0dXJuIHFOYW1lLm5hbWVzcGFjZVVSSSgpICE9IFhN
TE5TTmFtZXM6OnhtbG5zTmFtZXNwYWNlVVJJOworfQorCitib29sIERvY3VtZW50OjpoYXNWYWxp
ZE5hbWVzcGFjZUZvckF0dHJpYnV0ZXMoY29uc3QgUXVhbGlmaWVkTmFtZSYgcU5hbWUpCit7Cisg
ICAgcmV0dXJuIGhhc1ZhbGlkTmFtZXNwYWNlRm9yRWxlbWVudHMocU5hbWUpOworfQorCitzdGF0
aWMgUmVmPEhUTUxFbGVtZW50PiBjcmVhdGVGYWxsYmFja0hUTUxFbGVtZW50KERvY3VtZW50JiBk
b2N1bWVudCwgY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSkKK3sKKyAgICBpZiAoYXV0byogd2lu
ZG93ID0gZG9jdW1lbnQuZG9tV2luZG93KCkpIHsKKyAgICAgICAgYXV0byogcmVnaXN0cnkgPSB3
aW5kb3ctPmN1c3RvbUVsZW1lbnRSZWdpc3RyeSgpOworICAgICAgICBpZiAoVU5MSUtFTFkocmVn
aXN0cnkpKSB7CisgICAgICAgICAgICBpZiAoUmVmUHRyIGVsZW1lbnRJbnRlcmZhY2UgPSByZWdp
c3RyeS0+ZmluZEludGVyZmFjZShuYW1lKSkgeworICAgICAgICAgICAgICAgIGF1dG8gZWxlbWVu
dCA9IEhUTUxFbGVtZW50OjpjcmVhdGUobmFtZSwgZG9jdW1lbnQpOworICAgICAgICAgICAgICAg
IGVsZW1lbnQtPnNldElzQ3VzdG9tRWxlbWVudFVwZ3JhZGVDYW5kaWRhdGUoKTsKKyAgICAgICAg
ICAgICAgICBlbGVtZW50LT5lbnF1ZXVlVG9VcGdyYWRlKCplbGVtZW50SW50ZXJmYWNlKTsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgIH0KKyAgICAvLyBGSVhNRTogU2hvdWxkIHdlIGFsc28gY2hlY2sgdGhlIGVxdWFsaXR5IG9m
IHByZWZpeCBiZXR3ZWVuIHRoZSBjdXN0b20gZWxlbWVudCBhbmQgbmFtZT8KKyAgICByZXR1cm4g
Y3JlYXRlVXBncmFkZUNhbmRpZGF0ZUVsZW1lbnQoZG9jdW1lbnQsIG5hbWUpOworfQorCisvLyBG
SVhNRTogVGhpcyBzaG91bGQgcmVhbGx5IGJlIGluIGEgcG9zc2libGUgRWxlbWVudEZhY3Rvcnkg
Y2xhc3MuCitSZWY8RWxlbWVudD4gRG9jdW1lbnQ6OmNyZWF0ZUVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwgYm9vbCBjcmVhdGVkQnlQYXJzZXIpCit7CisgICAgUmVmUHRyPEVsZW1l
bnQ+IGVsZW1lbnQ7CisKKyAgICAvLyBGSVhNRTogVXNlIHJlZ2lzdGVyZWQgbmFtZXNwYWNlcyBh
bmQgbG9vayB1cCBpbiBhIGhhc2ggdG8gZmluZCB0aGUgcmlnaHQgZmFjdG9yeS4KKyAgICBpZiAo
bmFtZS5uYW1lc3BhY2VVUkkoKSA9PSB4aHRtbE5hbWVzcGFjZVVSSSkgeworICAgICAgICBlbGVt
ZW50ID0gSFRNTEVsZW1lbnRGYWN0b3J5OjpjcmVhdGVLbm93bkVsZW1lbnQobmFtZSwgKnRoaXMs
IG51bGxwdHIsIGNyZWF0ZWRCeVBhcnNlcik7CisgICAgICAgIGlmIChVTkxJS0VMWSghZWxlbWVu
dCkpCisgICAgICAgICAgICBlbGVtZW50ID0gY3JlYXRlRmFsbGJhY2tIVE1MRWxlbWVudCgqdGhp
cywgbmFtZSk7CisgICAgfSBlbHNlIGlmIChuYW1lLm5hbWVzcGFjZVVSSSgpID09IFNWR05hbWVz
OjpzdmdOYW1lc3BhY2VVUkkpCisgICAgICAgIGVsZW1lbnQgPSBTVkdFbGVtZW50RmFjdG9yeTo6
Y3JlYXRlRWxlbWVudChuYW1lLCAqdGhpcywgY3JlYXRlZEJ5UGFyc2VyKTsKKyNpZiBFTkFCTEUo
TUFUSE1MKQorICAgIGVsc2UgaWYgKG5hbWUubmFtZXNwYWNlVVJJKCkgPT0gTWF0aE1MTmFtZXM6
Om1hdGhtbE5hbWVzcGFjZVVSSSkKKyAgICAgICAgZWxlbWVudCA9IE1hdGhNTEVsZW1lbnRGYWN0
b3J5OjpjcmVhdGVFbGVtZW50KG5hbWUsICp0aGlzLCBjcmVhdGVkQnlQYXJzZXIpOworI2VuZGlm
CisKKyAgICBpZiAoZWxlbWVudCkKKyAgICAgICAgbV9zYXdFbGVtZW50c0luS25vd25OYW1lc3Bh
Y2VzID0gdHJ1ZTsKKyAgICBlbHNlCisgICAgICAgIGVsZW1lbnQgPSBFbGVtZW50OjpjcmVhdGUo
bmFtZSwgZG9jdW1lbnQoKSk7CisKKyAgICAvLyA8aW1hZ2U+IHVzZXMgaW1nVGFnIHNvIHdlIG5l
ZWQgYSBzcGVjaWFsIHJ1bGUuCisgICAgQVNTRVJUKChuYW1lLm1hdGNoZXMoaW1hZ2VUYWcpICYm
IGVsZW1lbnQtPnRhZ1FOYW1lKCkubWF0Y2hlcyhpbWdUYWcpICYmIGVsZW1lbnQtPnRhZ1FOYW1l
KCkucHJlZml4KCkgPT0gbmFtZS5wcmVmaXgoKSkgfHwgbmFtZSA9PSBlbGVtZW50LT50YWdRTmFt
ZSgpKTsKKworICAgIHJldHVybiBlbGVtZW50LnJlbGVhc2VOb25OdWxsKCk7Cit9CisKKy8vIGh0
dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvI3ZhbGlkLWN1c3RvbS1lbGVtZW50LW5hbWUKKwor
c3RydWN0IFVuaWNvZGVDb2RlUG9pbnRSYW5nZSB7CisgICAgVUNoYXIzMiBtaW5pbXVtOworICAg
IFVDaGFyMzIgbWF4aW11bTsKK307CisKKyNpZiBBU1NFUlRfRU5BQkxFRAorCitzdGF0aWMgaW5s
aW5lIGJvb2wgb3BlcmF0b3I8KGNvbnN0IFVuaWNvZGVDb2RlUG9pbnRSYW5nZSYgYSwgY29uc3Qg
VW5pY29kZUNvZGVQb2ludFJhbmdlJiBiKQoreworICAgIEFTU0VSVChhLm1pbmltdW0gPD0gYS5t
YXhpbXVtKTsKKyAgICBBU1NFUlQoYi5taW5pbXVtIDw9IGIubWF4aW11bSk7CisgICAgcmV0dXJu
IGEubWF4aW11bSA8IGIubWluaW11bTsKK30KKworI2VuZGlmIC8vIEFTU0VSVF9FTkFCTEVECisK
K3N0YXRpYyBpbmxpbmUgYm9vbCBvcGVyYXRvcjwoY29uc3QgVW5pY29kZUNvZGVQb2ludFJhbmdl
JiBhLCBVQ2hhcjMyIGIpCit7CisgICAgQVNTRVJUKGEubWluaW11bSA8PSBhLm1heGltdW0pOwor
ICAgIHJldHVybiBhLm1heGltdW0gPCBiOworfQorCitzdGF0aWMgaW5saW5lIGJvb2wgb3BlcmF0
b3I8KFVDaGFyMzIgYSwgY29uc3QgVW5pY29kZUNvZGVQb2ludFJhbmdlJiBiKQoreworICAgIEFT
U0VSVChiLm1pbmltdW0gPD0gYi5tYXhpbXVtKTsKKyAgICByZXR1cm4gYSA8IGIubWluaW11bTsK
K30KKworc3RhdGljIGlubGluZSBib29sIGlzUG90ZW50aWFsQ3VzdG9tRWxlbWVudE5hbWVDaGFy
YWN0ZXIoVUNoYXIzMiBjaGFyYWN0ZXIpCit7CisgICAgc3RhdGljIGNvbnN0IFVuaWNvZGVDb2Rl
UG9pbnRSYW5nZSByYW5nZXNbXSA9IHsKKyAgICAgICAgeyAnLScsICcuJyB9LAorICAgICAgICB7
ICcwJywgJzknIH0sCisgICAgICAgIHsgJ18nLCAnXycgfSwKKyAgICAgICAgeyAnYScsICd6JyB9
LAorICAgICAgICB7IDB4QjcsIDB4QjcgfSwKKyAgICAgICAgeyAweEMwLCAweEQ2IH0sCisgICAg
ICAgIHsgMHhEOCwgMHhGNiB9LAorICAgICAgICB7IDB4RjgsIDB4MzdEIH0sCisgICAgICAgIHsg
MHgzN0YsIDB4MUZGRiB9LAorICAgICAgICB7IDB4MjAwQywgMHgyMDBEIH0sCisgICAgICAgIHsg
MHgyMDNGLCAweDIwNDAgfSwKKyAgICAgICAgeyAweDIwNzAsIDB4MjE4RiB9LAorICAgICAgICB7
IDB4MkMwMCwgMHgyRkVGIH0sCisgICAgICAgIHsgMHgzMDAxLCAweEQ3RkYgfSwKKyAgICAgICAg
eyAweEY5MDAsIDB4RkRDRiB9LAorICAgICAgICB7IDB4RkRGMCwgMHhGRkZEIH0sCisgICAgICAg
IHsgMHgxMDAwMCwgMHhFRkZGRiB9LAorICAgIH07CisKKyAgICBBU1NFUlQoc3RkOjppc19zb3J0
ZWQoc3RkOjpiZWdpbihyYW5nZXMpLCBzdGQ6OmVuZChyYW5nZXMpKSk7CisgICAgcmV0dXJuIHN0
ZDo6YmluYXJ5X3NlYXJjaChzdGQ6OmJlZ2luKHJhbmdlcyksIHN0ZDo6ZW5kKHJhbmdlcyksIGNo
YXJhY3Rlcik7Cit9CisKK0N1c3RvbUVsZW1lbnROYW1lVmFsaWRhdGlvblN0YXR1cyBEb2N1bWVu
dDo6dmFsaWRhdGVDdXN0b21FbGVtZW50TmFtZShjb25zdCBBdG9tU3RyaW5nJiBsb2NhbE5hbWUp
Cit7CisgICAgaWYgKCFpc0FTQ0lJTG93ZXIobG9jYWxOYW1lWzBdKSkKKyAgICAgICAgcmV0dXJu
IEN1c3RvbUVsZW1lbnROYW1lVmFsaWRhdGlvblN0YXR1czo6Rmlyc3RDaGFyYWN0ZXJJc05vdExv
d2VyY2FzZUFTQ0lJTGV0dGVyOworCisgICAgYm9vbCBjb250YWluc0h5cGhlbiA9IGZhbHNlOwor
ICAgIGZvciAoYXV0byBjaGFyYWN0ZXIgOiBTdHJpbmdWaWV3KGxvY2FsTmFtZSkuY29kZVBvaW50
cygpKSB7CisgICAgICAgIGlmIChpc0FTQ0lJVXBwZXIoY2hhcmFjdGVyKSkKKyAgICAgICAgICAg
IHJldHVybiBDdXN0b21FbGVtZW50TmFtZVZhbGlkYXRpb25TdGF0dXM6OkNvbnRhaW5zVXBwZXJj
YXNlQVNDSUlMZXR0ZXI7CisgICAgICAgIGlmICghaXNQb3RlbnRpYWxDdXN0b21FbGVtZW50TmFt
ZUNoYXJhY3RlcihjaGFyYWN0ZXIpKQorICAgICAgICAgICAgcmV0dXJuIEN1c3RvbUVsZW1lbnRO
YW1lVmFsaWRhdGlvblN0YXR1czo6Q29udGFpbnNEaXNhbGxvd2VkQ2hhcmFjdGVyOworICAgICAg
ICBpZiAoY2hhcmFjdGVyID09ICctJykKKyAgICAgICAgICAgIGNvbnRhaW5zSHlwaGVuID0gdHJ1
ZTsKKyAgICB9CisKKyAgICBpZiAoIWNvbnRhaW5zSHlwaGVuKQorICAgICAgICByZXR1cm4gQ3Vz
dG9tRWxlbWVudE5hbWVWYWxpZGF0aW9uU3RhdHVzOjpDb250YWluc05vSHlwaGVuOworCisjaWYg
RU5BQkxFKE1BVEhNTCkKKyAgICBjb25zdCBhdXRvJiBhbm5vdGF0aW9uWG1sTG9jYWxOYW1lID0g
TWF0aE1MTmFtZXM6OmFubm90YXRpb25feG1sVGFnLT5sb2NhbE5hbWUoKTsKKyNlbHNlCisgICAg
c3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBhbm5vdGF0
aW9uWG1sTG9jYWxOYW1lKCJhbm5vdGF0aW9uLXhtbCIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKTsKKyNlbmRpZgorICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8
Y29uc3QgQXRvbVN0cmluZz4gY29sb3JQcm9maWxlTG9jYWxOYW1lKCJjb2xvci1wcm9maWxlIiwg
QXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOworCisgICAgaWYgKGxvY2FsTmFtZSA9
PSBTVkdOYW1lczo6Zm9udF9mYWNlVGFnLT5sb2NhbE5hbWUoKQorICAgICAgICB8fCBsb2NhbE5h
bWUgPT0gU1ZHTmFtZXM6OmZvbnRfZmFjZV9mb3JtYXRUYWctPmxvY2FsTmFtZSgpCisgICAgICAg
IHx8IGxvY2FsTmFtZSA9PSBTVkdOYW1lczo6Zm9udF9mYWNlX25hbWVUYWctPmxvY2FsTmFtZSgp
CisgICAgICAgIHx8IGxvY2FsTmFtZSA9PSBTVkdOYW1lczo6Zm9udF9mYWNlX3NyY1RhZy0+bG9j
YWxOYW1lKCkKKyAgICAgICAgfHwgbG9jYWxOYW1lID09IFNWR05hbWVzOjpmb250X2ZhY2VfdXJp
VGFnLT5sb2NhbE5hbWUoKQorICAgICAgICB8fCBsb2NhbE5hbWUgPT0gU1ZHTmFtZXM6Om1pc3Np
bmdfZ2x5cGhUYWctPmxvY2FsTmFtZSgpCisgICAgICAgIHx8IGxvY2FsTmFtZSA9PSBhbm5vdGF0
aW9uWG1sTG9jYWxOYW1lCisgICAgICAgIHx8IGxvY2FsTmFtZSA9PSBjb2xvclByb2ZpbGVMb2Nh
bE5hbWUpCisgICAgICAgIHJldHVybiBDdXN0b21FbGVtZW50TmFtZVZhbGlkYXRpb25TdGF0dXM6
OkNvbmZsaWN0c1dpdGhTdGFuZGFyZEVsZW1lbnROYW1lOworCisgICAgcmV0dXJuIEN1c3RvbUVs
ZW1lbnROYW1lVmFsaWRhdGlvblN0YXR1czo6VmFsaWQ7Cit9CisKK0V4Y2VwdGlvbk9yPFJlZjxF
bGVtZW50Pj4gRG9jdW1lbnQ6OmNyZWF0ZUVsZW1lbnROUyhjb25zdCBBdG9tU3RyaW5nJiBuYW1l
c3BhY2VVUkksIGNvbnN0IFN0cmluZyYgcXVhbGlmaWVkTmFtZSkKK3sKKyAgICBhdXRvIHBhcnNl
UmVzdWx0ID0gcGFyc2VRdWFsaWZpZWROYW1lKG5hbWVzcGFjZVVSSSwgcXVhbGlmaWVkTmFtZSk7
CisgICAgaWYgKHBhcnNlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAgICByZXR1cm4gcGFy
c2VSZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpOworICAgIFF1YWxpZmllZE5hbWUgcGFyc2VkTmFt
ZSB7IHBhcnNlUmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpIH07CisgICAgaWYgKCFoYXNWYWxp
ZE5hbWVzcGFjZUZvckVsZW1lbnRzKHBhcnNlZE5hbWUpKQorICAgICAgICByZXR1cm4gRXhjZXB0
aW9uIHsgTmFtZXNwYWNlRXJyb3IgfTsKKworICAgIGlmIChwYXJzZWROYW1lLm5hbWVzcGFjZVVS
SSgpID09IHhodG1sTmFtZXNwYWNlVVJJKQorICAgICAgICByZXR1cm4gY3JlYXRlSFRNTEVsZW1l
bnRXaXRoTmFtZVZhbGlkYXRpb24oKnRoaXMsIHBhcnNlZE5hbWUpOworCisgICAgcmV0dXJuIGNy
ZWF0ZUVsZW1lbnQocGFyc2VkTmFtZSwgZmFsc2UpOworfQorCitEb2N1bWVudEV2ZW50VGltaW5n
KiBEb2N1bWVudDo6ZG9jdW1lbnRFdmVudFRpbWluZ0Zyb21OYXZpZ2F0aW9uVGltaW5nKCkKK3sK
KyAgICBhdXRvKiB3aW5kb3cgPSBkb21XaW5kb3coKTsKKyAgICBpZiAoIXdpbmRvdykKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgYXV0byogbmF2aWdhdGlvblRpbWluZyA9IHdpbmRvdy0+
cGVyZm9ybWFuY2UoKS5uYXZpZ2F0aW9uVGltaW5nKCk7CisgICAgaWYgKCFuYXZpZ2F0aW9uVGlt
aW5nKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gJm5hdmlnYXRpb25UaW1p
bmctPmRvY3VtZW50RXZlbnRUaW1pbmcoKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0UmVhZHlT
dGF0ZShSZWFkeVN0YXRlIHJlYWR5U3RhdGUpCit7CisgICAgaWYgKHJlYWR5U3RhdGUgPT0gbV9y
ZWFkeVN0YXRlKQorICAgICAgICByZXR1cm47CisKKyAgICBzd2l0Y2ggKHJlYWR5U3RhdGUpIHsK
KyAgICBjYXNlIExvYWRpbmc6CisgICAgICAgIGlmICghbV9ldmVudFRpbWluZy5kb21Mb2FkaW5n
KSB7CisgICAgICAgICAgICBhdXRvIG5vdyA9IE1vbm90b25pY1RpbWU6Om5vdygpOworICAgICAg
ICAgICAgbV9ldmVudFRpbWluZy5kb21Mb2FkaW5nID0gbm93OworICAgICAgICAgICAgaWYgKGF1
dG8qIGV2ZW50VGltaW5nID0gZG9jdW1lbnRFdmVudFRpbWluZ0Zyb21OYXZpZ2F0aW9uVGltaW5n
KCkpCisgICAgICAgICAgICAgICAgZXZlbnRUaW1pbmctPmRvbUxvYWRpbmcgPSBub3c7CisgICAg
ICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDb21wbGV0ZToKKyAgICAgICAgaWYgKCFt
X2V2ZW50VGltaW5nLmRvbUNvbXBsZXRlKSB7CisgICAgICAgICAgICBhdXRvIG5vdyA9IE1vbm90
b25pY1RpbWU6Om5vdygpOworICAgICAgICAgICAgbV9ldmVudFRpbWluZy5kb21Db21wbGV0ZSA9
IG5vdzsKKyAgICAgICAgICAgIGlmIChhdXRvKiBldmVudFRpbWluZyA9IGRvY3VtZW50RXZlbnRU
aW1pbmdGcm9tTmF2aWdhdGlvblRpbWluZygpKQorICAgICAgICAgICAgICAgIGV2ZW50VGltaW5n
LT5kb21Db21wbGV0ZSA9IG5vdzsKKyAgICAgICAgfQorICAgICAgICBGQUxMVEhST1VHSDsKKyAg
ICBjYXNlIEludGVyYWN0aXZlOgorICAgICAgICBpZiAoIW1fZXZlbnRUaW1pbmcuZG9tSW50ZXJh
Y3RpdmUpIHsKKyAgICAgICAgICAgIGF1dG8gbm93ID0gTW9ub3RvbmljVGltZTo6bm93KCk7Cisg
ICAgICAgICAgICBtX2V2ZW50VGltaW5nLmRvbUludGVyYWN0aXZlID0gbm93OworICAgICAgICAg
ICAgaWYgKGF1dG8qIGV2ZW50VGltaW5nID0gZG9jdW1lbnRFdmVudFRpbWluZ0Zyb21OYXZpZ2F0
aW9uVGltaW5nKCkpCisgICAgICAgICAgICAgICAgZXZlbnRUaW1pbmctPmRvbUludGVyYWN0aXZl
ID0gbm93OworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIG1fcmVhZHlT
dGF0ZSA9IHJlYWR5U3RhdGU7CisKKyAgICBpZiAobV9mcmFtZSkKKyAgICAgICAgZGlzcGF0Y2hF
dmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5yZWFkeXN0YXRlY2hhbmdlRXZlbnQsIEV2
ZW50OjpDYW5CdWJibGU6Ok5vLCBFdmVudDo6SXNDYW5jZWxhYmxlOjpObykpOworCisgICAgaWYg
KHNldHRpbmdzKCkuc3VwcHJlc3Nlc0luY3JlbWVudGFsUmVuZGVyaW5nKCkpCisgICAgICAgIHNl
dFZpc3VhbFVwZGF0ZXNBbGxvd2VkKHJlYWR5U3RhdGUpOworfQorCit2b2lkIERvY3VtZW50Ojpz
ZXRWaXN1YWxVcGRhdGVzQWxsb3dlZChSZWFkeVN0YXRlIHJlYWR5U3RhdGUpCit7CisgICAgQVNT
RVJUKHNldHRpbmdzKCkuc3VwcHJlc3Nlc0luY3JlbWVudGFsUmVuZGVyaW5nKCkpOworICAgIHN3
aXRjaCAocmVhZHlTdGF0ZSkgeworICAgIGNhc2UgTG9hZGluZzoKKyAgICAgICAgQVNTRVJUKCFt
X3Zpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyLmlzQWN0aXZlKCkpOworICAgICAgICBBU1NF
UlQobV92aXN1YWxVcGRhdGVzQWxsb3dlZCk7CisgICAgICAgIHNldFZpc3VhbFVwZGF0ZXNBbGxv
d2VkKGZhbHNlKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBJbnRlcmFjdGl2ZToKKyAgICAg
ICAgQVNTRVJUKG1fdmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGltZXIuaXNBY3RpdmUoKSB8fCBt
X3Zpc3VhbFVwZGF0ZXNBbGxvd2VkKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBDb21wbGV0
ZToKKyAgICAgICAgaWYgKG1fdmlzdWFsVXBkYXRlc1N1cHByZXNzaW9uVGltZXIuaXNBY3RpdmUo
KSkgeworICAgICAgICAgICAgQVNTRVJUKCFtX3Zpc3VhbFVwZGF0ZXNBbGxvd2VkKTsKKworICAg
ICAgICAgICAgaWYgKHZpZXcoKSAmJiAhdmlldygpLT52aXN1YWxVcGRhdGVzQWxsb3dlZEJ5Q2xp
ZW50KCkpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICBzZXRWaXN1YWxV
cGRhdGVzQWxsb3dlZCh0cnVlKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBBU1NFUlQo
bV92aXN1YWxVcGRhdGVzQWxsb3dlZCk7CisgICAgICAgIGJyZWFrOworICAgIH0KK30KKyAgICAK
K3ZvaWQgRG9jdW1lbnQ6OnNldFZpc3VhbFVwZGF0ZXNBbGxvd2VkKGJvb2wgdmlzdWFsVXBkYXRl
c0FsbG93ZWQpCit7CisgICAgaWYgKG1fdmlzdWFsVXBkYXRlc0FsbG93ZWQgPT0gdmlzdWFsVXBk
YXRlc0FsbG93ZWQpCisgICAgICAgIHJldHVybjsKKworICAgIG1fdmlzdWFsVXBkYXRlc0FsbG93
ZWQgPSB2aXN1YWxVcGRhdGVzQWxsb3dlZDsKKworICAgIGlmICh2aXN1YWxVcGRhdGVzQWxsb3dl
ZCkKKyAgICAgICAgbV92aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25UaW1lci5zdG9wKCk7CisgICAg
ZWxzZQorICAgICAgICBtX3Zpc3VhbFVwZGF0ZXNTdXBwcmVzc2lvblRpbWVyLnN0YXJ0T25lU2hv
dCgxX3MgKiBzZXR0aW5ncygpLmluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0
SW5TZWNvbmRzKCkpOworCisgICAgaWYgKCF2aXN1YWxVcGRhdGVzQWxsb3dlZCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgUmVmUHRyPEZyYW1lVmlldz4gZnJhbWVWaWV3ID0gdmlldygpOworICAg
IGJvb2wgbmVlZHNMYXlvdXQgPSBmcmFtZVZpZXcgJiYgcmVuZGVyVmlldygpICYmIChmcmFtZVZp
ZXctPmxheW91dENvbnRleHQoKS5pc0xheW91dFBlbmRpbmcoKSB8fCByZW5kZXJWaWV3KCktPm5l
ZWRzTGF5b3V0KCkpOworICAgIGlmIChuZWVkc0xheW91dCkKKyAgICAgICAgdXBkYXRlTGF5b3V0
KCk7CisKKyAgICBpZiAoUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKSkgeworICAgICAgICBpZiAo
ZnJhbWUoKS0+aXNNYWluRnJhbWUoKSkgeworICAgICAgICAgICAgZnJhbWVWaWV3LT5hZGRQYWlu
dFBlbmRpbmdNaWxlc3RvbmVzKERpZEZpcnN0UGFpbnRBZnRlclN1cHByZXNzZWRJbmNyZW1lbnRh
bFJlbmRlcmluZyk7CisgICAgICAgICAgICBpZiAocGFnZS0+cmVxdWVzdGVkTGF5b3V0TWlsZXN0
b25lcygpICYgRGlkRmlyc3RMYXlvdXRBZnRlclN1cHByZXNzZWRJbmNyZW1lbnRhbFJlbmRlcmlu
ZykKKyAgICAgICAgICAgICAgICBmcmFtZSgpLT5sb2FkZXIoKS5kaWRSZWFjaExheW91dE1pbGVz
dG9uZShEaWRGaXJzdExheW91dEFmdGVyU3VwcHJlc3NlZEluY3JlbWVudGFsUmVuZGVyaW5nKTsK
KyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChmcmFtZVZpZXcpCisgICAgICAgIGZyYW1lVmll
dy0+dXBkYXRlQ29tcG9zaXRpbmdMYXllcnNBZnRlckxheW91dCgpOworCisgICAgaWYgKFJlbmRl
clZpZXcqIHJlbmRlclZpZXcgPSB0aGlzLT5yZW5kZXJWaWV3KCkpCisgICAgICAgIHJlbmRlclZp
ZXctPnJlcGFpbnRWaWV3QW5kQ29tcG9zaXRlZExheWVycygpOworCisgICAgaWYgKFJlZlB0ciBm
cmFtZSA9IHRoaXMtPmZyYW1lKCkpCisgICAgICAgIGZyYW1lLT5sb2FkZXIoKS5jb21wbGV0ZVBh
Z2VUcmFuc2l0aW9uSWZOZWVkZWQoKTsKK30KKwordm9pZCBEb2N1bWVudDo6dmlzdWFsVXBkYXRl
c1N1cHByZXNzaW9uVGltZXJGaXJlZCgpCit7CisgICAgQVNTRVJUKCFtX3Zpc3VhbFVwZGF0ZXNB
bGxvd2VkKTsKKworICAgIC8vIElmIHRoZSBjbGllbnQgaXMgZXh0ZW5kaW5nIHRoZSB2aXN1YWwg
dXBkYXRlIHN1cHByZXNzaW9uIHBlcmlvZCBleHBsaWNpdGx5LCB0aGUKKyAgICAvLyB3YXRjaGRv
ZyBzaG91bGQgbm90IHJlLWVuYWJsZSB2aXN1YWwgdXBkYXRlcyBpdHNlbGYsIGJ1dCBzaG91bGQg
d2FpdCBmb3IgdGhlIGNsaWVudC4KKyAgICBpZiAodmlldygpICYmICF2aWV3KCktPnZpc3VhbFVw
ZGF0ZXNBbGxvd2VkQnlDbGllbnQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2V0VmlzdWFs
VXBkYXRlc0FsbG93ZWQodHJ1ZSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldFZpc3VhbFVwZGF0
ZXNBbGxvd2VkQnlDbGllbnQoYm9vbCB2aXN1YWxVcGRhdGVzQWxsb3dlZEJ5Q2xpZW50KQorewor
ICAgIC8vIFdlIHNob3VsZCBvbmx5IHJlLWVuYWJsZSB2aXN1YWwgdXBkYXRlcyBpZiBSZWFkeVN0
YXRlIGlzIENvbXBsZXRlZCBvciB0aGUgd2F0Y2hkb2cgdGltZXIgaGFzIGZpcmVkLAorICAgIC8v
IGJvdGggb2Ygd2hpY2ggd2UgY2FuIGRldGVybWluZSBieSBsb29raW5nIGF0IHRoZSB0aW1lci4K
KworICAgIGlmICh2aXN1YWxVcGRhdGVzQWxsb3dlZEJ5Q2xpZW50ICYmICFtX3Zpc3VhbFVwZGF0
ZXNTdXBwcmVzc2lvblRpbWVyLmlzQWN0aXZlKCkgJiYgIXZpc3VhbFVwZGF0ZXNBbGxvd2VkKCkp
CisgICAgICAgIHNldFZpc3VhbFVwZGF0ZXNBbGxvd2VkKHRydWUpOworfQorCitTdHJpbmcgRG9j
dW1lbnQ6OmNoYXJhY3RlclNldFdpdGhVVEY4RmFsbGJhY2soKSBjb25zdAoreworICAgIEF0b21T
dHJpbmcgbmFtZSA9IGVuY29kaW5nKCk7CisgICAgaWYgKCFuYW1lLmlzTnVsbCgpKQorICAgICAg
ICByZXR1cm4gbmFtZTsKKyAgICByZXR1cm4gVVRGOEVuY29kaW5nKCkuZG9tTmFtZSgpOworfQor
CitTdHJpbmcgRG9jdW1lbnQ6OmRlZmF1bHRDaGFyc2V0Rm9yTGVnYWN5QmluZGluZ3MoKSBjb25z
dAoreworICAgIGlmICghZnJhbWUoKSkKKyAgICAgICAgVVRGOEVuY29kaW5nKCkuZG9tTmFtZSgp
OworICAgIHJldHVybiBzZXR0aW5ncygpLmRlZmF1bHRUZXh0RW5jb2RpbmdOYW1lKCk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnNldENoYXJzZXQoY29uc3QgU3RyaW5nJiBjaGFyc2V0KQoreworICAg
IGlmICghZGVjb2RlcigpKQorICAgICAgICByZXR1cm47CisgICAgZGVjb2RlcigpLT5zZXRFbmNv
ZGluZyhjaGFyc2V0LCBUZXh0UmVzb3VyY2VEZWNvZGVyOjpVc2VyQ2hvc2VuRW5jb2RpbmcpOwor
fQorCit2b2lkIERvY3VtZW50OjpzZXRDb250ZW50TGFuZ3VhZ2UoY29uc3QgU3RyaW5nJiBsYW5n
dWFnZSkKK3sKKyAgICBpZiAobV9jb250ZW50TGFuZ3VhZ2UgPT0gbGFuZ3VhZ2UpCisgICAgICAg
IHJldHVybjsKKyAgICBtX2NvbnRlbnRMYW5ndWFnZSA9IGxhbmd1YWdlOworCisgICAgLy8gUmVj
YWxjdWxhdGUgc3R5bGUgc28gbGFuZ3VhZ2UgaXMgdXNlZCB3aGVuIHNlbGVjdGluZyB0aGUgaW5p
dGlhbCBmb250LgorICAgIG1fc3R5bGVTY29wZS0+ZGlkQ2hhbmdlU3R5bGVTaGVldEVudmlyb25t
ZW50KCk7Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IERvY3VtZW50OjpzZXRYTUxWZXJzaW9uKGNv
bnN0IFN0cmluZyYgdmVyc2lvbikKK3sKKyAgICBpZiAoIVhNTERvY3VtZW50UGFyc2VyOjpzdXBw
b3J0c1hNTFZlcnNpb24odmVyc2lvbikpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBOb3RT
dXBwb3J0ZWRFcnJvciB9OworCisgICAgbV94bWxWZXJzaW9uID0gdmVyc2lvbjsKKyAgICByZXR1
cm4geyB9OworfQorCit2b2lkIERvY3VtZW50OjpzZXRYTUxTdGFuZGFsb25lKGJvb2wgc3RhbmRh
bG9uZSkKK3sKKyAgICBtX3htbFN0YW5kYWxvbmUgPSBzdGFuZGFsb25lID8gU3RhbmRhbG9uZVN0
YXR1czo6U3RhbmRhbG9uZSA6IFN0YW5kYWxvbmVTdGF0dXM6Ok5vdFN0YW5kYWxvbmU7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnNldERvY3VtZW50VVJJKGNvbnN0IFN0cmluZyYgdXJpKQoreworICAg
IC8vIFRoaXMgcHJvcGVydHkgaXMgcmVhZC1vbmx5IGZyb20gSmF2YVNjcmlwdCwgYnV0IHdyaXRh
YmxlIGZyb20gT2JqZWN0aXZlLUMuCisgICAgbV9kb2N1bWVudFVSSSA9IHVyaTsKKyAgICB1cGRh
dGVCYXNlVVJMKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldENvbnRlbnQoY29uc3QgU3RyaW5n
JiBjb250ZW50KQoreworICAgIG9wZW4oKTsKKyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgcHJv
YmFibHkgdXNlIGluc2VydCgpLCBidXQgdGhhdCdzIChpbnRlbnRpb25hbGx5KQorICAgIC8vIG5v
dCBpbXBsZW1lbnRlZCBmb3IgdGhlIFhNTCBwYXJzZXIgYXMgaXQncyBub3JtYWxseSBzeW5vbnlt
b3VzIHdpdGgKKyAgICAvLyBkb2N1bWVudC53cml0ZSgpLiBhcHBlbmQoKSB3aWxsIGVuZCB1cCB5
aWVsZGluZywgYnV0IGNsb3NlKCkgd2lsbAorICAgIC8vIHB1bXAgdGhlIHRva2VuaXplciBzeW5j
cmhvbm91c2x5IGFuZCBmaW5pc2ggdGhlIHBhcnNlLgorICAgIG1fcGFyc2VyLT5hcHBlbmQoY29u
dGVudC5pbXBsKCkpOworICAgIGNsb3NlKCk7Cit9CisKK1N0cmluZyBEb2N1bWVudDo6c3VnZ2Vz
dGVkTUlNRVR5cGUoKSBjb25zdAoreworICAgIGlmIChpc1hIVE1MRG9jdW1lbnQoKSkKKyAgICAg
ICAgcmV0dXJuICJhcHBsaWNhdGlvbi94aHRtbCt4bWwiX3M7CisgICAgaWYgKGlzU1ZHRG9jdW1l
bnQoKSkKKyAgICAgICAgcmV0dXJuICJpbWFnZS9zdmcreG1sIl9zOworICAgIGlmICh4bWxTdGFu
ZGFsb25lKCkpCisgICAgICAgIHJldHVybiAidGV4dC94bWwiX3M7CisgICAgaWYgKGlzSFRNTERv
Y3VtZW50KCkpCisgICAgICAgIHJldHVybiAidGV4dC9odG1sIl9zOworICAgIGlmIChEb2N1bWVu
dExvYWRlciogbG9hZGVyID0gdGhpcy0+bG9hZGVyKCkpCisgICAgICAgIHJldHVybiBsb2FkZXIt
PnJlc3BvbnNlTUlNRVR5cGUoKTsKKyAgICByZXR1cm4gU3RyaW5nKCk7Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6Om92ZXJyaWRlTUlNRVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sKKyAgICBt
X292ZXJyaWRkZW5NSU1FVHlwZSA9IG1pbWVUeXBlOworfQorCitTdHJpbmcgRG9jdW1lbnQ6OmNv
bnRlbnRUeXBlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fb3ZlcnJpZGRlbk1JTUVUeXBlLmlzTnVs
bCgpKQorICAgICAgICByZXR1cm4gbV9vdmVycmlkZGVuTUlNRVR5cGU7CisKKyAgICBpZiAoRG9j
dW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gbG9hZGVyKCkpCisgICAgICAgIHJldHVybiBk
b2N1bWVudExvYWRlci0+Y3VycmVudENvbnRlbnRUeXBlKCk7CisKKyAgICBTdHJpbmcgbWltZVR5
cGUgPSBzdWdnZXN0ZWRNSU1FVHlwZSgpOworICAgIGlmICghbWltZVR5cGUuaXNOdWxsKCkpCisg
ICAgICAgIHJldHVybiBtaW1lVHlwZTsKKworICAgIHJldHVybiAiYXBwbGljYXRpb24veG1sIl9z
OworfQorCitSZWZQdHI8UmFuZ2U+IERvY3VtZW50OjpjYXJldFJhbmdlRnJvbVBvaW50KGludCB4
LCBpbnQgeSkKK3sKKyAgICBhdXRvIGJvdW5kYXJ5ID0gY2FyZXRQb3NpdGlvbkZyb21Qb2ludChM
YXlvdXRQb2ludCh4LCB5KSk7CisgICAgaWYgKCFib3VuZGFyeSkKKyAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgcmV0dXJuIGNyZWF0ZUxpdmVSYW5nZSh7ICpib3VuZGFyeSwgKmJvdW5kYXJ5
IH0pOworfQorCitzdGQ6Om9wdGlvbmFsPEJvdW5kYXJ5UG9pbnQ+IERvY3VtZW50OjpjYXJldFBv
c2l0aW9uRnJvbVBvaW50KGNvbnN0IExheW91dFBvaW50JiBjbGllbnRQb2ludCkKK3sKKyAgICBp
ZiAoIWhhc0xpdmluZ1JlbmRlclRyZWUoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KworICAgIExheW91dFBvaW50IGxvY2FsUG9pbnQ7CisgICAgYXV0byBub2RlID0gbm9kZUZyb21Q
b2ludChjbGllbnRQb2ludCwgJmxvY2FsUG9pbnQpOworICAgIGlmICghbm9kZSkKKyAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIGF1dG8qIHJlbmRlcmVyID0gbm9kZS0+cmVuZGVy
ZXIoKTsKKyAgICBpZiAoIXJlbmRlcmVyKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owor
ICAgIGF1dG8gcmFuZ2VDb21wbGlhbnRQb3NpdGlvbiA9IHJlbmRlcmVyLT5wb3NpdGlvbkZvclBv
aW50KGxvY2FsUG9pbnQpLnBhcmVudEFuY2hvcmVkRXF1aXZhbGVudCgpOworICAgIGlmIChyYW5n
ZUNvbXBsaWFudFBvc2l0aW9uLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OworCisgICAgdW5zaWduZWQgb2Zmc2V0ID0gcmFuZ2VDb21wbGlhbnRQb3NpdGlvbi5vZmZzZXRJ
bkNvbnRhaW5lck5vZGUoKTsKKyAgICBub2RlID0gcmV0YXJnZXRUb1Njb3BlKCpyYW5nZUNvbXBs
aWFudFBvc2l0aW9uLmNvbnRhaW5lck5vZGUoKSk7CisgICAgaWYgKG5vZGUgIT0gcmFuZ2VDb21w
bGlhbnRQb3NpdGlvbi5jb250YWluZXJOb2RlKCkpCisgICAgICAgIG9mZnNldCA9IDA7CisKKyAg
ICByZXR1cm4geyB7ICpub2RlLCBvZmZzZXQgfSB9OworfQorCitib29sIERvY3VtZW50Ojppc0Jv
ZHlQb3RlbnRpYWxseVNjcm9sbGFibGUoSFRNTEJvZHlFbGVtZW50JiBib2R5KQoreworICAgIC8v
IFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3Nzb20tdmlldy0xLyNwb3RlbnRpYWxseS1zY3Jv
bGxhYmxlLgorICAgIC8vIEFuIGVsZW1lbnQgaXMgcG90ZW50aWFsbHkgc2Nyb2xsYWJsZSBpZiBh
bGwgb2YgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSB0cnVlOgorICAgIC8vIC0gVGhlIGVs
ZW1lbnQgaGFzIGFuIGFzc29jaWF0ZWQgQ1NTIGxheW91dCBib3guCisgICAgLy8gLSBUaGUgZWxl
bWVudCBpcyBub3QgdGhlIEhUTUwgYm9keSBlbGVtZW50LCBvciBpdCBpcyBhbmQgdGhlIHJvb3Qg
ZWxlbWVudCdzIHVzZWQgdmFsdWUgb2YgdGhlCisgICAgLy8gICBvdmVyZmxvdy14IG9yIG92ZXJm
bG93LXkgcHJvcGVydGllcyBpcyBub3QgdmlzaWJsZS4KKyAgICAvLyAtIFRoZSBlbGVtZW50J3Mg
dXNlZCB2YWx1ZSBvZiB0aGUgb3ZlcmZsb3cteCBvciBvdmVyZmxvdy15IHByb3BlcnRpZXMgaXMg
bm90IHZpc2libGUuCisgICAgLy8KKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHVzZSBSZW5kZXJP
YmplY3Q6Omhhc05vblZpc2libGVPdmVyZmxvdygpIGluc3RlYWQgb2YgRWxlbWVudDo6Y29tcHV0
ZWRTdHlsZSgpIGJ1dAorICAgIC8vIHRoZSB1c2VkIHZhbHVlcyBhcmUgY3VycmVudGx5IG5vdCBj
b3JyZWN0bHkgdXBkYXRlZC4gU2VlIGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4MjI5Mi4KKyAgICBy
ZXR1cm4gYm9keS5yZW5kZXJlcigpCisgICAgICAgICYmIGRvY3VtZW50RWxlbWVudCgpLT5jb21w
dXRlZFN0eWxlKCkKKyAgICAgICAgJiYgIWRvY3VtZW50RWxlbWVudCgpLT5jb21wdXRlZFN0eWxl
KCktPmlzT3ZlcmZsb3dWaXNpYmxlKCkKKyAgICAgICAgJiYgYm9keS5jb21wdXRlZFN0eWxlKCkK
KyAgICAgICAgJiYgIWJvZHkuY29tcHV0ZWRTdHlsZSgpLT5pc092ZXJmbG93VmlzaWJsZSgpOwor
fQorCitFbGVtZW50KiBEb2N1bWVudDo6c2Nyb2xsaW5nRWxlbWVudEZvckFQSSgpCit7CisgICAg
aWYgKGluUXVpcmtzTW9kZSgpICYmIHNldHRpbmdzKCkuQ1NTT01WaWV3U2Nyb2xsaW5nQVBJRW5h
YmxlZCgpKQorICAgICAgICB1cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsK
KyAgICByZXR1cm4gc2Nyb2xsaW5nRWxlbWVudCgpOworfQorCitFbGVtZW50KiBEb2N1bWVudDo6
c2Nyb2xsaW5nRWxlbWVudCgpCit7CisgICAgaWYgKHNldHRpbmdzKCkuQ1NTT01WaWV3U2Nyb2xs
aW5nQVBJRW5hYmxlZCgpKSB7CisgICAgICAgIC8vIFNlZSBodHRwczovL2RyYWZ0cy5jc3N3Zy5v
cmcvY3Nzb20tdmlldy8jZG9tLWRvY3VtZW50LXNjcm9sbGluZ2VsZW1lbnQuCisgICAgICAgIC8v
IFRoZSBzY3JvbGxpbmdFbGVtZW50IGF0dHJpYnV0ZSwgb24gZ2V0dGluZywgbXVzdCBydW4gdGhl
c2Ugc3RlcHM6CisgICAgICAgIC8vIDEuIElmIHRoZSBEb2N1bWVudCBpcyBpbiBxdWlya3MgbW9k
ZSwgZm9sbG93IHRoZXNlIHN1YnN0ZXBzOgorICAgICAgICBpZiAoaW5RdWlya3NNb2RlKCkpIHsK
KyAgICAgICAgICAgIGF1dG8qIGZpcnN0Qm9keSA9IGJvZHkoKTsKKyAgICAgICAgICAgIC8vIDEu
IElmIHRoZSBIVE1MIGJvZHkgZWxlbWVudCBleGlzdHMsIGFuZCBpdCBpcyBub3QgcG90ZW50aWFs
bHkgc2Nyb2xsYWJsZSwgcmV0dXJuIHRoZQorICAgICAgICAgICAgLy8gSFRNTCBib2R5IGVsZW1l
bnQgYW5kIGFib3J0IHRoZXNlIHN0ZXBzLgorICAgICAgICAgICAgaWYgKGZpcnN0Qm9keSAmJiAh
aXNCb2R5UG90ZW50aWFsbHlTY3JvbGxhYmxlKCpmaXJzdEJvZHkpKQorICAgICAgICAgICAgICAg
IHJldHVybiBmaXJzdEJvZHk7CisKKyAgICAgICAgICAgIC8vIDIuIFJldHVybiBudWxsIGFuZCBh
Ym9ydCB0aGVzZSBzdGVwcy4KKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB9
CisKKyAgICAgICAgLy8gMi4gSWYgdGhlcmUgaXMgYSByb290IGVsZW1lbnQsIHJldHVybiB0aGUg
cm9vdCBlbGVtZW50IGFuZCBhYm9ydCB0aGVzZSBzdGVwcy4KKyAgICAgICAgLy8gMy4gUmV0dXJu
IG51bGwuCisgICAgICAgIHJldHVybiBkb2N1bWVudEVsZW1lbnQoKTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gYm9keSgpOworfQorCitzdGF0aWMgU3RyaW5nIGNhbm9uaWNhbGl6ZWRUaXRsZShEb2N1
bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0cmluZyYgdGl0bGUpCit7CisgICAgLy8gQ29sbGFwc2Ug
cnVucyBvZiBIVE1MIHNwYWNlcyBpbnRvIHNpbmdsZSBzcGFjZSBjaGFyYWN0ZXJzLgorICAgIC8v
IFN0cmlwIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcy4KKyAgICAvLyBSZXBsYWNlIGJhY2tz
bGFzaGVzIHdpdGggY3VycmVuY3kgc3ltYm9scy4KKworICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRl
cjsKKworICAgIGF1dG8qIGRlY29kZXIgPSBkb2N1bWVudC5kZWNvZGVyKCk7CisgICAgYXV0byBi
YWNrc2xhc2hBc0N1cnJlbmN5U3ltYm9sID0gZGVjb2RlciA/IGRlY29kZXItPmVuY29kaW5nKCku
YmFja3NsYXNoQXNDdXJyZW5jeVN5bWJvbCgpIDogJ1xcJzsKKworICAgIGJvb2wgcHJldmlvdXND
aGFyYWN0ZXJXYXNIVE1MU3BhY2UgPSBmYWxzZTsKKyAgICBmb3IgKGF1dG8gY2hhcmFjdGVyIDog
U3RyaW5nVmlldyB7IHRpdGxlIH0uY29kZVVuaXRzKCkpIHsKKyAgICAgICAgaWYgKGlzSFRNTFNw
YWNlKGNoYXJhY3RlcikpCisgICAgICAgICAgICBwcmV2aW91c0NoYXJhY3Rlcldhc0hUTUxTcGFj
ZSA9IHRydWU7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgaWYgKGNoYXJhY3RlciA9PSAn
XFwnKQorICAgICAgICAgICAgICAgIGNoYXJhY3RlciA9IGJhY2tzbGFzaEFzQ3VycmVuY3lTeW1i
b2w7CisgICAgICAgICAgICBpZiAocHJldmlvdXNDaGFyYWN0ZXJXYXNIVE1MU3BhY2UgJiYgIWJ1
aWxkZXIuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKCcgJyk7Cisg
ICAgICAgICAgICBidWlsZGVyLmFwcGVuZChjaGFyYWN0ZXIpOworICAgICAgICAgICAgcHJldmlv
dXNDaGFyYWN0ZXJXYXNIVE1MU3BhY2UgPSBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KKworICAg
IHJldHVybiBidWlsZGVyID09IHRpdGxlID8gdGl0bGUgOiBidWlsZGVyLnRvU3RyaW5nKCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZVRpdGxlKGNvbnN0IFN0cmluZ1dpdGhEaXJlY3Rpb24m
IHRpdGxlKQoreworICAgIGlmIChtX3Jhd1RpdGxlID09IHRpdGxlKQorICAgICAgICByZXR1cm47
CisKKyAgICBtX3Jhd1RpdGxlID0gdGl0bGU7CisKKyAgICBtX3RpdGxlLnN0cmluZyA9IGNhbm9u
aWNhbGl6ZWRUaXRsZSgqdGhpcywgdGl0bGUuc3RyaW5nKTsKKyAgICBtX3RpdGxlLmRpcmVjdGlv
biA9IHRpdGxlLmRpcmVjdGlvbjsKKworICAgIGlmICghbV91cGRhdGVUaXRsZVRhc2tTY2hlZHVs
ZWQpIHsKKyAgICAgICAgZXZlbnRMb29wKCkucXVldWVUYXNrKFRhc2tTb3VyY2U6OkRPTU1hbmlw
dWxhdGlvbiwgW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgdGhpc10oKSBtdXRhYmxl
IHsKKyAgICAgICAgICAgIG1fdXBkYXRlVGl0bGVUYXNrU2NoZWR1bGVkID0gZmFsc2U7CisgICAg
ICAgICAgICBpZiAoYXV0byBkb2N1bWVudExvYWRlciA9IG1ha2VSZWZQdHIobG9hZGVyKCkpKQor
ICAgICAgICAgICAgICAgIGRvY3VtZW50TG9hZGVyLT5zZXRUaXRsZShtX3RpdGxlKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIG1fdXBkYXRlVGl0bGVUYXNrU2NoZWR1bGVkID0gdHJ1ZTsKKyAgICB9
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZVRpdGxlRnJvbVRpdGxlRWxlbWVudCgpCit7Cisg
ICAgaWYgKCFtX3RpdGxlRWxlbWVudCkgeworICAgICAgICB1cGRhdGVUaXRsZSh7IH0pOworICAg
ICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKGlzPEhUTUxUaXRsZUVsZW1lbnQ+KCptX3Rp
dGxlRWxlbWVudCkpCisgICAgICAgIHVwZGF0ZVRpdGxlKGRvd25jYXN0PEhUTUxUaXRsZUVsZW1l
bnQ+KCptX3RpdGxlRWxlbWVudCkudGV4dFdpdGhEaXJlY3Rpb24oKSk7CisgICAgZWxzZSBpZiAo
aXM8U1ZHVGl0bGVFbGVtZW50PigqbV90aXRsZUVsZW1lbnQpKSB7CisgICAgICAgIC8vIEZJWE1F
OiBEb2VzIHRoZSBTVkcgdGl0bGUgZWxlbWVudCBoYXZlIGEgdGV4dCBkaXJlY3Rpb24/CisgICAg
ICAgIHVwZGF0ZVRpdGxlKHsgZG93bmNhc3Q8U1ZHVGl0bGVFbGVtZW50PigqbV90aXRsZUVsZW1l
bnQpLnRleHRDb250ZW50KCksIFRleHREaXJlY3Rpb246OkxUUiB9KTsKKyAgICB9Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OnNldFRpdGxlKGNvbnN0IFN0cmluZyYgdGl0bGUpCit7CisgICAgUmVmUHRy
IGVsZW1lbnQgPSBkb2N1bWVudEVsZW1lbnQoKTsKKyAgICBpZiAoaXM8U1ZHU1ZHRWxlbWVudD4o
ZWxlbWVudCkpIHsKKyAgICAgICAgaWYgKCFtX3RpdGxlRWxlbWVudCkgeworICAgICAgICAgICAg
bV90aXRsZUVsZW1lbnQgPSBTVkdUaXRsZUVsZW1lbnQ6OmNyZWF0ZShTVkdOYW1lczo6dGl0bGVU
YWcsICp0aGlzKTsKKyAgICAgICAgICAgIGVsZW1lbnQtPmluc2VydEJlZm9yZSgqbV90aXRsZUVs
ZW1lbnQsIGVsZW1lbnQtPmZpcnN0Q2hpbGQoKSk7CisgICAgICAgIH0KKyAgICAgICAgLy8gaW5z
ZXJ0QmVmb3JlIGFib3ZlIG1heSBoYXZlIHJhbiBzY3JpcHRzIHdoaWNoIHJlbW92ZWQgbV90aXRs
ZUVsZW1lbnQuCisgICAgICAgIGlmIChtX3RpdGxlRWxlbWVudCkKKyAgICAgICAgICAgIG1fdGl0
bGVFbGVtZW50LT5zZXRUZXh0Q29udGVudCh0aXRsZSk7CisgICAgfSBlbHNlIGlmIChpczxIVE1M
RWxlbWVudD4oZWxlbWVudCkpIHsKKyAgICAgICAgaWYgKCFtX3RpdGxlRWxlbWVudCkgeworICAg
ICAgICAgICAgUmVmUHRyIGhlYWRFbGVtZW50ID0gaGVhZCgpOworICAgICAgICAgICAgaWYgKCFo
ZWFkRWxlbWVudCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICBtX3RpdGxl
RWxlbWVudCA9IEhUTUxUaXRsZUVsZW1lbnQ6OmNyZWF0ZShIVE1MTmFtZXM6OnRpdGxlVGFnLCAq
dGhpcyk7CisgICAgICAgICAgICBoZWFkRWxlbWVudC0+YXBwZW5kQ2hpbGQoKm1fdGl0bGVFbGVt
ZW50KTsKKyAgICAgICAgfQorICAgICAgICAvLyBhcHBlbmRDaGlsZCBhYm92ZSBtYXkgaGF2ZSBy
YW4gc2NyaXB0cyB3aGljaCByZW1vdmVkIG1fdGl0bGVFbGVtZW50LgorICAgICAgICBpZiAobV90
aXRsZUVsZW1lbnQpCisgICAgICAgICAgICBtX3RpdGxlRWxlbWVudC0+c2V0VGV4dENvbnRlbnQo
dGl0bGUpOworICAgIH0KK30KKwordGVtcGxhdGU8dHlwZW5hbWU+IHN0cnVjdCBUaXRsZVRyYWl0
czsKKwordGVtcGxhdGU8PiBzdHJ1Y3QgVGl0bGVUcmFpdHM8SFRNTFRpdGxlRWxlbWVudD4gewor
ICAgIHN0YXRpYyBib29sIGlzSW5FbGlnaWJsZUxvY2F0aW9uKEhUTUxUaXRsZUVsZW1lbnQmIGVs
ZW1lbnQpIHsgcmV0dXJuIGVsZW1lbnQuaXNDb25uZWN0ZWQoKSAmJiAhZWxlbWVudC5pc0luU2hh
ZG93VHJlZSgpOyB9CisgICAgc3RhdGljIEhUTUxUaXRsZUVsZW1lbnQqIGZpbmRUaXRsZUVsZW1l
bnQoRG9jdW1lbnQmIGRvY3VtZW50KSB7IHJldHVybiBkZXNjZW5kYW50c09mVHlwZTxIVE1MVGl0
bGVFbGVtZW50Pihkb2N1bWVudCkuZmlyc3QoKTsgfQorfTsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
VGl0bGVUcmFpdHM8U1ZHVGl0bGVFbGVtZW50PiB7CisgICAgc3RhdGljIGJvb2wgaXNJbkVsaWdp
YmxlTG9jYXRpb24oU1ZHVGl0bGVFbGVtZW50JiBlbGVtZW50KSB7IHJldHVybiBlbGVtZW50LnBh
cmVudE5vZGUoKSA9PSBlbGVtZW50LmRvY3VtZW50KCkuZG9jdW1lbnRFbGVtZW50KCk7IH0KKyAg
ICBzdGF0aWMgU1ZHVGl0bGVFbGVtZW50KiBmaW5kVGl0bGVFbGVtZW50KERvY3VtZW50JiBkb2N1
bWVudCkgeyByZXR1cm4gY2hpbGRyZW5PZlR5cGU8U1ZHVGl0bGVFbGVtZW50PigqZG9jdW1lbnQu
ZG9jdW1lbnRFbGVtZW50KCkpLmZpcnN0KCk7IH0KK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFRp
dGxlRWxlbWVudD4gRWxlbWVudCogc2VsZWN0TmV3VGl0bGVFbGVtZW50KERvY3VtZW50JiBkb2N1
bWVudCwgRWxlbWVudCogb2xkVGl0bGVFbGVtZW50LCBFbGVtZW50JiBjaGFuZ2luZ1RpdGxlRWxl
bWVudCkKK3sKKyAgICB1c2luZyBUcmFpdHMgPSBUaXRsZVRyYWl0czxUaXRsZUVsZW1lbnQ+Owor
CisgICAgaWYgKCFpczxUaXRsZUVsZW1lbnQ+KGNoYW5naW5nVGl0bGVFbGVtZW50KSkgeworICAg
ICAgICBBU1NFUlQob2xkVGl0bGVFbGVtZW50ID09IFRyYWl0czo6ZmluZFRpdGxlRWxlbWVudChk
b2N1bWVudCkpOworICAgICAgICByZXR1cm4gb2xkVGl0bGVFbGVtZW50OworICAgIH0KKworICAg
IGlmIChvbGRUaXRsZUVsZW1lbnQpCisgICAgICAgIHJldHVybiBUcmFpdHM6OmZpbmRUaXRsZUVs
ZW1lbnQoZG9jdW1lbnQpOworCisgICAgLy8gT3B0aW1pemVkIGNvbW1vbiBjYXNlOiBXZSBoYXZl
IG5vIHRpdGxlIGVsZW1lbnQgeWV0LgorICAgIC8vIFdlIGNhbiBmaWd1cmUgb3V0IHdoaWNoIHRp
dGxlIGVsZW1lbnQgc2hvdWxkIGJlIHVzZWQgd2l0aG91dCBzZWFyY2hpbmcuCisgICAgYm9vbCBp
c0VsaWdpYmxlID0gVHJhaXRzOjppc0luRWxpZ2libGVMb2NhdGlvbihkb3duY2FzdDxUaXRsZUVs
ZW1lbnQ+KGNoYW5naW5nVGl0bGVFbGVtZW50KSk7CisgICAgYXV0byogbmV3VGl0bGVFbGVtZW50
ID0gaXNFbGlnaWJsZSA/ICZjaGFuZ2luZ1RpdGxlRWxlbWVudCA6IG51bGxwdHI7CisgICAgQVNT
RVJUKG5ld1RpdGxlRWxlbWVudCA9PSBUcmFpdHM6OmZpbmRUaXRsZUVsZW1lbnQoZG9jdW1lbnQp
KTsKKyAgICByZXR1cm4gbmV3VGl0bGVFbGVtZW50OworfQorCit2b2lkIERvY3VtZW50Ojp1cGRh
dGVUaXRsZUVsZW1lbnQoRWxlbWVudCYgY2hhbmdpbmdUaXRsZUVsZW1lbnQpCit7CisgICAgLy8g
TW9zdCBkb2N1bWVudHMgdXNlIEhUTUwgdGl0bGUgcnVsZXMuCisgICAgLy8gRG9jdW1lbnRzIHdp
dGggU1ZHIGRvY3VtZW50IGVsZW1lbnRzIHVzZSBTVkcgdGl0bGUgcnVsZXMuCisgICAgYXV0byBz
ZWxlY3RUaXRsZUVsZW1lbnQgPSBpczxTVkdTVkdFbGVtZW50Pihkb2N1bWVudEVsZW1lbnQoKSkK
KyAgICAgICAgPyBzZWxlY3ROZXdUaXRsZUVsZW1lbnQ8U1ZHVGl0bGVFbGVtZW50PiA6IHNlbGVj
dE5ld1RpdGxlRWxlbWVudDxIVE1MVGl0bGVFbGVtZW50PjsKKyAgICBhdXRvIG5ld1RpdGxlRWxl
bWVudCA9IHNlbGVjdFRpdGxlRWxlbWVudCgqdGhpcywgbV90aXRsZUVsZW1lbnQuZ2V0KCksIGNo
YW5naW5nVGl0bGVFbGVtZW50KTsKKyAgICBpZiAobV90aXRsZUVsZW1lbnQgPT0gbmV3VGl0bGVF
bGVtZW50KQorICAgICAgICByZXR1cm47CisgICAgbV90aXRsZUVsZW1lbnQgPSBuZXdUaXRsZUVs
ZW1lbnQ7CisgICAgdXBkYXRlVGl0bGVGcm9tVGl0bGVFbGVtZW50KCk7Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6OnRpdGxlRWxlbWVudEFkZGVkKEVsZW1lbnQmIHRpdGxlRWxlbWVudCkKK3sKKyAgICBp
ZiAobV90aXRsZUVsZW1lbnQgPT0gJnRpdGxlRWxlbWVudCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgdXBkYXRlVGl0bGVFbGVtZW50KHRpdGxlRWxlbWVudCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6
OnRpdGxlRWxlbWVudFJlbW92ZWQoRWxlbWVudCYgdGl0bGVFbGVtZW50KQoreworICAgIGlmICht
X3RpdGxlRWxlbWVudCAhPSAmdGl0bGVFbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICB1
cGRhdGVUaXRsZUVsZW1lbnQodGl0bGVFbGVtZW50KTsKK30KKwordm9pZCBEb2N1bWVudDo6dGl0
bGVFbGVtZW50VGV4dENoYW5nZWQoRWxlbWVudCYgdGl0bGVFbGVtZW50KQoreworICAgIGlmICht
X3RpdGxlRWxlbWVudCAhPSAmdGl0bGVFbGVtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICB1
cGRhdGVUaXRsZUZyb21UaXRsZUVsZW1lbnQoKTsKK30KKwordm9pZCBEb2N1bWVudDo6cmVnaXN0
ZXJGb3JWaXNpYmlsaXR5U3RhdGVDaGFuZ2VkQ2FsbGJhY2tzKFZpc2liaWxpdHlDaGFuZ2VDbGll
bnQmIGNsaWVudCkKK3sKKyAgICBtX3Zpc2liaWxpdHlTdGF0ZUNhbGxiYWNrQ2xpZW50cy5hZGQo
Y2xpZW50KTsKK30KKwordm9pZCBEb2N1bWVudDo6dW5yZWdpc3RlckZvclZpc2liaWxpdHlTdGF0
ZUNoYW5nZWRDYWxsYmFja3MoVmlzaWJpbGl0eUNoYW5nZUNsaWVudCYgY2xpZW50KQoreworICAg
IG1fdmlzaWJpbGl0eVN0YXRlQ2FsbGJhY2tDbGllbnRzLnJlbW92ZShjbGllbnQpOworfQorCit2
b2lkIERvY3VtZW50Ojp2aXNpYmlsaXR5U3RhdGVDaGFuZ2VkKCkKK3sKKyAgICAvLyBodHRwczov
L3czYy5naXRodWIuaW8vcGFnZS12aXNpYmlsaXR5LyNyZWFjdGluZy10by12aXNpYmlsaXR5Y2hh
bmdlLWNoYW5nZXMKKyAgICBxdWV1ZVRhc2tUb0Rpc3BhdGNoRXZlbnQoVGFza1NvdXJjZTo6VXNl
ckludGVyYWN0aW9uLCBFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS52aXNpYmlsaXR5Y2hhbmdl
RXZlbnQsIEV2ZW50OjpDYW5CdWJibGU6OlllcywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6Tm8pKTsK
KyAgICBmb3IgKGF1dG8mIGNsaWVudCA6IG1fdmlzaWJpbGl0eVN0YXRlQ2FsbGJhY2tDbGllbnRz
KQorICAgICAgICBjbGllbnQudmlzaWJpbGl0eVN0YXRlQ2hhbmdlZCgpOworCisjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkgJiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBpZiAoYXV0byBtZWRp
YVNlc3Npb25NYW5hZ2VyID0gUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyOjpzaGFyZWRNYW5h
Z2VySWZFeGlzdHMoKSkgeworICAgICAgICBpZiAoIW1lZGlhU2Vzc2lvbk1hbmFnZXItPmlzSW50
ZXJydXB0ZWQoKSkKKyAgICAgICAgICAgIE1lZGlhU3RyZWFtVHJhY2s6OnVwZGF0ZUNhcHR1cmVB
Y2NvcmRpbmdUb011dGVkU3RhdGUoKnRoaXMpOworICAgIH0KKyNlbmRpZgorfQorCitWaXNpYmls
aXR5U3RhdGUgRG9jdW1lbnQ6OnZpc2liaWxpdHlTdGF0ZSgpIGNvbnN0Cit7CisgICAgLy8gVGhl
IHZpc2liaWxpdHkgb2YgdGhlIGRvY3VtZW50IGlzIGluaGVyaXRlZCBmcm9tIHRoZSB2aXNpYmls
aXR5IG9mIHRoZQorICAgIC8vIHBhZ2UuIElmIHRoZXJlIGlzIG5vIHBhZ2UgYXNzb2NpYXRlZCB3
aXRoIHRoZSBkb2N1bWVudCwgd2Ugd2lsbCBhc3N1bWUKKyAgICAvLyB0aGF0IHRoZSBwYWdlIGlz
IGhpZGRlbiwgYXMgc3BlY2lmaWVkIGJ5IHRoZSBzcGVjOgorICAgIC8vIGh0dHBzOi8vdzNjLmdp
dGh1Yi5pby9wYWdlLXZpc2liaWxpdHkvI3Zpc2liaWxpdHlzdGF0ZS1hdHRyaWJ1dGUKKyAgICBp
ZiAoIW1fZnJhbWUgfHwgIW1fZnJhbWUtPnBhZ2UoKSB8fCBtX3Zpc2liaWxpdHlIaWRkZW5EdWVU
b0Rpc21pc3NhbCkKKyAgICAgICAgcmV0dXJuIFZpc2liaWxpdHlTdGF0ZTo6SGlkZGVuOworICAg
IHJldHVybiBtX2ZyYW1lLT5wYWdlKCktPnZpc2liaWxpdHlTdGF0ZSgpOworfQorCitib29sIERv
Y3VtZW50OjpoaWRkZW4oKSBjb25zdAoreworICAgIHJldHVybiB2aXNpYmlsaXR5U3RhdGUoKSAh
PSBWaXNpYmlsaXR5U3RhdGU6OlZpc2libGU7Cit9CisKKyNpZiBFTkFCTEUoVklERU8pCisKK3Zv
aWQgRG9jdW1lbnQ6OnJlZ2lzdGVyTWVkaWFFbGVtZW50KEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1l
bnQpCit7CisgICAgbV9tZWRpYUVsZW1lbnRzLmFkZChlbGVtZW50KTsKK30KKwordm9pZCBEb2N1
bWVudDo6dW5yZWdpc3Rlck1lZGlhRWxlbWVudChIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KQor
eworICAgIG1fbWVkaWFFbGVtZW50cy5yZW1vdmUoZWxlbWVudCk7Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OmZvckVhY2hNZWRpYUVsZW1lbnQoY29uc3QgRnVuY3Rpb248dm9pZChIVE1MTWVkaWFFbGVt
ZW50Jik+JiBmdW5jdGlvbikKK3sKKyAgICBBU1NFUlQoIW1fbWVkaWFFbGVtZW50cy5oYXNOdWxs
UmVmZXJlbmNlcygpKTsKKyAgICBtX21lZGlhRWxlbWVudHMuZm9yRWFjaChbJl0oYXV0byYgZWxl
bWVudCkgeworICAgICAgICBmdW5jdGlvbihtYWtlUmVmKGVsZW1lbnQpKTsKKyAgICB9KTsKK30K
KworI2VuZGlmCisKK1N0cmluZyBEb2N1bWVudDo6bm9kZU5hbWUoKSBjb25zdAoreworICAgIHJl
dHVybiAiI2RvY3VtZW50Il9zOworfQorCitOb2RlOjpOb2RlVHlwZSBEb2N1bWVudDo6bm9kZVR5
cGUoKSBjb25zdAoreworICAgIHJldHVybiBET0NVTUVOVF9OT0RFOworfQorCitGb3JtQ29udHJv
bGxlciYgRG9jdW1lbnQ6OmZvcm1Db250cm9sbGVyKCkKK3sKKyAgICBpZiAoIW1fZm9ybUNvbnRy
b2xsZXIpCisgICAgICAgIG1fZm9ybUNvbnRyb2xsZXIgPSBtYWtlVW5pcXVlPEZvcm1Db250cm9s
bGVyPigpOworICAgIHJldHVybiAqbV9mb3JtQ29udHJvbGxlcjsKK30KKworVmVjdG9yPFN0cmlu
Zz4gRG9jdW1lbnQ6OmZvcm1FbGVtZW50c1N0YXRlKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fZm9y
bUNvbnRyb2xsZXIpCisgICAgICAgIHJldHVybiBWZWN0b3I8U3RyaW5nPigpOworICAgIHJldHVy
biBtX2Zvcm1Db250cm9sbGVyLT5mb3JtRWxlbWVudHNTdGF0ZSgqdGhpcyk7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6OnNldFN0YXRlRm9yTmV3Rm9ybUVsZW1lbnRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBzdGF0ZVZlY3RvcikKK3sKKyAgICBpZiAoIXN0YXRlVmVjdG9yLnNpemUoKSAmJiAhbV9mb3Jt
Q29udHJvbGxlcikKKyAgICAgICAgcmV0dXJuOworICAgIGZvcm1Db250cm9sbGVyKCkuc2V0U3Rh
dGVGb3JOZXdGb3JtRWxlbWVudHMoc3RhdGVWZWN0b3IpOworfQorCitGcmFtZVZpZXcqIERvY3Vt
ZW50Ojp2aWV3KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9mcmFtZSA/IG1fZnJhbWUtPnZpZXco
KSA6IG51bGxwdHI7Cit9CisKK1BhZ2UqIERvY3VtZW50OjpwYWdlKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9mcmFtZSA/IG1fZnJhbWUtPnBhZ2UoKSA6IG51bGxwdHI7Cit9CisKK1JlZjxSYW5n
ZT4gRG9jdW1lbnQ6OmNyZWF0ZVJhbmdlKCkKK3sKKyAgICByZXR1cm4gUmFuZ2U6OmNyZWF0ZSgq
dGhpcyk7Cit9CisKK1JlZjxOb2RlSXRlcmF0b3I+IERvY3VtZW50OjpjcmVhdGVOb2RlSXRlcmF0
b3IoTm9kZSYgcm9vdCwgdW5zaWduZWQgbG9uZyB3aGF0VG9TaG93LCBSZWZQdHI8Tm9kZUZpbHRl
cj4mJiBmaWx0ZXIsIGJvb2wpCit7CisgICAgcmV0dXJuIE5vZGVJdGVyYXRvcjo6Y3JlYXRlKHJv
b3QsIHdoYXRUb1Nob3csIFdURk1vdmUoZmlsdGVyKSk7Cit9CisKK1JlZjxUcmVlV2Fsa2VyPiBE
b2N1bWVudDo6Y3JlYXRlVHJlZVdhbGtlcihOb2RlJiByb290LCB1bnNpZ25lZCBsb25nIHdoYXRU
b1Nob3csIFJlZlB0cjxOb2RlRmlsdGVyPiYmIGZpbHRlciwgYm9vbCkKK3sKKyAgICByZXR1cm4g
VHJlZVdhbGtlcjo6Y3JlYXRlKHJvb3QsIHdoYXRUb1Nob3csIFdURk1vdmUoZmlsdGVyKSk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OnNjaGVkdWxlRnVsbFN0eWxlUmVidWlsZCgpCit7CisgICAgbV9u
ZWVkc0Z1bGxTdHlsZVJlYnVpbGQgPSB0cnVlOworICAgIHNjaGVkdWxlU3R5bGVSZWNhbGMoKTsK
K30KKwordm9pZCBEb2N1bWVudDo6c2NoZWR1bGVTdHlsZVJlY2FsYygpCit7CisgICAgQVNTRVJU
KCFtX3JlbmRlclZpZXcgfHwgIWluSGl0VGVzdGluZygpKTsKKworICAgIGlmIChtX3N0eWxlUmVj
YWxjVGltZXIuaXNBY3RpdmUoKSB8fCBiYWNrRm9yd2FyZENhY2hlU3RhdGUoKSAhPSBOb3RJbkJh
Y2tGb3J3YXJkQ2FjaGUpCisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChjaGlsZE5lZWRz
U3R5bGVSZWNhbGMoKSB8fCBtX25lZWRzRnVsbFN0eWxlUmVidWlsZCk7CisKKyAgICBtX3N0eWxl
UmVjYWxjVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CisKKyAgICBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmRpZFNjaGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uKCp0aGlzKTsKK30KKwordm9pZCBE
b2N1bWVudDo6dW5zY2hlZHVsZVN0eWxlUmVjYWxjKCkKK3sKKyAgICBBU1NFUlQoIWNoaWxkTmVl
ZHNTdHlsZVJlY2FsYygpKTsKKworICAgIG1fc3R5bGVSZWNhbGNUaW1lci5zdG9wKCk7CisgICAg
bV9uZWVkc0Z1bGxTdHlsZVJlYnVpbGQgPSBmYWxzZTsKK30KKworYm9vbCBEb2N1bWVudDo6aGFz
UGVuZGluZ1N0eWxlUmVjYWxjKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbmVlZHNTdHlsZVJlY2Fs
YygpICYmICFtX2luU3R5bGVSZWNhbGM7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6Omhhc1BlbmRpbmdG
dWxsU3R5bGVSZWJ1aWxkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gaGFzUGVuZGluZ1N0eWxlUmVj
YWxjKCkgJiYgbV9uZWVkc0Z1bGxTdHlsZVJlYnVpbGQ7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVw
ZGF0ZVJlbmRlclRyZWUoc3RkOjp1bmlxdWVfcHRyPGNvbnN0IFN0eWxlOjpVcGRhdGU+IHN0eWxl
VXBkYXRlKQoreworICAgIEFTU0VSVCghaW5SZW5kZXJUcmVlVXBkYXRlKCkpOworCisgICAgU3R5
bGU6OlBvc3RSZXNvbHV0aW9uQ2FsbGJhY2tEaXNhYmxlciBjYWxsYmFja0Rpc2FibGVyKCp0aGlz
KTsKKyAgICB7CisgICAgICAgIFNldEZvclNjb3BlPGJvb2w+IGluUmVuZGVyVHJlZVVwZGF0ZSht
X2luUmVuZGVyVHJlZVVwZGF0ZSwgdHJ1ZSk7CisgICAgICAgIHsKKyAgICAgICAgICAgIFJlbmRl
clRyZWVVcGRhdGVyIHVwZGF0ZXIoKnRoaXMsIGNhbGxiYWNrRGlzYWJsZXIpOworICAgICAgICAg
ICAgdXBkYXRlci5jb21taXQoV1RGTW92ZShzdHlsZVVwZGF0ZSkpOworICAgICAgICB9CisgICAg
fQorfQorCit2b2lkIERvY3VtZW50OjpyZXNvbHZlU3R5bGUoUmVzb2x2ZVN0eWxlVHlwZSB0eXBl
KQoreworICAgIEFTU0VSVCghdmlldygpIHx8ICF2aWV3KCktPmlzUGFpbnRpbmcoKSk7CisKKyAg
ICAvLyBOT1RFOiBYU0wgY29kZSBzZWVtcyB0byBiZSB0aGUgb25seSBjbGllbnQgc3R1bWJsaW5n
IGluIGhlcmUgd2l0aG91dCBhIFJlbmRlclZpZXcuCisgICAgaWYgKCFtX3JlbmRlclZpZXcpCisg
ICAgICAgIHJldHVybjsKKworICAgIEZyYW1lVmlldyYgZnJhbWVWaWV3ID0gbV9yZW5kZXJWaWV3
LT5mcmFtZVZpZXcoKTsKKyAgICBSZWY8RnJhbWVWaWV3PiBwcm90ZWN0KGZyYW1lVmlldyk7Cisg
ICAgaWYgKGZyYW1lVmlldy5pc1BhaW50aW5nKCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAg
ICBpZiAobV9pblN0eWxlUmVjYWxjKQorICAgICAgICByZXR1cm47IC8vIEd1YXJkIGFnYWluc3Qg
cmUtZW50cmFuY3kuIC1kd2gKKworICAgIFRyYWNlU2NvcGUgdHJhY2luZ1Njb3BlKFN0eWxlUmVj
YWxjU3RhcnQsIFN0eWxlUmVjYWxjRW5kKTsKKworICAgIFJlbmRlclZpZXc6OlJlcGFpbnRSZWdp
b25BY2N1bXVsYXRvciByZXBhaW50UmVnaW9uQWNjdW11bGF0b3IocmVuZGVyVmlldygpKTsKKwor
ICAgIC8vIEZJWE1FOiBEbyB0aGlzIHVwZGF0ZSBwZXIgdHJlZSBzY29wZS4KKyAgICBpZiAoYXV0
byogZXh0ZW5zaW9ucyA9IG1fc3ZnRXh0ZW5zaW9ucy5nZXQoKSkgeworICAgICAgICBhdXRvIGVs
ZW1lbnRzID0gY29weVRvVmVjdG9yT2Y8UmVmPFNWR1VzZUVsZW1lbnQ+PihleHRlbnNpb25zLT51
c2VFbGVtZW50c1dpdGhQZW5kaW5nU2hhZG93VHJlZVVwZGF0ZSgpKTsKKyAgICAgICAgLy8gV2Ug
Y2FuJ3QgY2xlYXIgbV9zdmdVc2VFbGVtZW50cyBoZXJlIGJlY2F1c2UgdXBkYXRlU2hhZG93VHJl
ZSBtYXkgZW5kIHVwIGV4ZWN1dGluZyBhcmJpdHJhcnkgc2NyaXB0cworICAgICAgICAvLyB3aGlj
aCBtYXkgaW5zZXJ0IG5ldyBTVkcgdXNlIGVsZW1lbnRzIG9yIHJlbW92ZSBleGlzdGluZyBvbmVz
IGluc2lkZSBzeW5jIElQQyB2aWEgSW1hZ2VMb2FkZXI6OnVwZGF0ZUZyb21FbGVtZW50LgorICAg
ICAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBlbGVtZW50cykKKyAgICAgICAgICAgIGVsZW1lbnQt
PnVwZGF0ZVNoYWRvd1RyZWUoKTsKKyAgICB9CisKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHVw
ZGF0ZSBzdHlsZSBvbiBvdXIgYW5jZXN0b3IgY2hhaW4gYmVmb3JlIHByb2NlZWRpbmcsIGhvd2V2
ZXIgZG9pbmcgc28gYXQKKyAgICAvLyB0aGUgdGltZSB0aGlzIGNvbW1lbnQgd2FzIG9yaWdpbmFs
bHkgd3JpdHRlbiBjYXVzZWQgc2V2ZXJhbCB0ZXN0cyB0byBjcmFzaC4KKworICAgIHsKKyAgICAg
ICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpJbk1haW5UaHJlYWQgc2NyaXB0RGlzYWxsb3dlZFNj
b3BlOworICAgICAgICBzdHlsZVNjb3BlKCkuZmx1c2hQZW5kaW5nVXBkYXRlKCk7CisgICAgICAg
IGZyYW1lVmlldy53aWxsUmVjYWxjU3R5bGUoKTsKKyAgICB9CisKKyAgICBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxSZWNhbGN1bGF0ZVN0eWxlKCp0aGlzKTsKKworICAgIGJvb2wgdXBk
YXRlZENvbXBvc2l0aW5nTGF5ZXJzID0gZmFsc2U7CisgICAgeworICAgICAgICBTdHlsZTo6UG9z
dFJlc29sdXRpb25DYWxsYmFja0Rpc2FibGVyIGRpc2FibGVyKCp0aGlzKTsKKyAgICAgICAgV2lk
Z2V0SGllcmFyY2h5VXBkYXRlc1N1c3BlbnNpb25TY29wZSBzdXNwZW5kV2lkZ2V0SGllcmFyY2h5
VXBkYXRlczsKKyAgICAgICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpJbk1haW5UaHJlYWQgc2Ny
aXB0RGlzYWxsb3dlZFNjb3BlOworCisgICAgICAgIG1faW5TdHlsZVJlY2FsYyA9IHRydWU7CisK
KyAgICAgICAgaWYgKG1fbmVlZHNGdWxsU3R5bGVSZWJ1aWxkKQorICAgICAgICAgICAgdHlwZSA9
IFJlc29sdmVTdHlsZVR5cGU6OlJlYnVpbGQ7CisKKyAgICAgICAgaWYgKHR5cGUgPT0gUmVzb2x2
ZVN0eWxlVHlwZTo6UmVidWlsZCkgeworICAgICAgICAgICAgLy8gVGhpcyBtYXkgZ2V0IHNldCBh
Z2FpbiBkdXJpbmcgc3R5bGUgcmVzb2x2ZS4KKyAgICAgICAgICAgIG1faGFzTm9kZXNXaXRoTm9u
RmluYWxTdHlsZSA9IGZhbHNlOworICAgICAgICAgICAgbV9oYXNOb2Rlc1dpdGhNaXNzaW5nU3R5
bGUgPSBmYWxzZTsKKworICAgICAgICAgICAgYXV0byBkb2N1bWVudFN0eWxlID0gU3R5bGU6OnJl
c29sdmVGb3JEb2N1bWVudCgqdGhpcyk7CisKKyAgICAgICAgICAgIC8vIEluc2VydGluZyB0aGUg
cGljdG9ncmFwaCBmb250IGF0IHRoZSBlbmQgb2YgdGhlIGZvbnQgZmFsbGJhY2sgbGlzdCBpcyBk
b25lIGJ5IHRoZQorICAgICAgICAgICAgLy8gZm9udCBzZWxlY3Rvciwgc28gc2V0IGEgZm9udCBz
ZWxlY3RvciBpZiBuZWVkZWQuCisgICAgICAgICAgICBpZiAoc2V0dGluZ3MoKS5mb250RmFsbGJh
Y2tQcmVmZXJzUGljdG9ncmFwaHMoKSkKKyAgICAgICAgICAgICAgICBkb2N1bWVudFN0eWxlLmZv
bnRDYXNjYWRlKCkudXBkYXRlKCZmb250U2VsZWN0b3IoKSk7CisKKyAgICAgICAgICAgIGF1dG8g
ZG9jdW1lbnRDaGFuZ2UgPSBTdHlsZTo6ZGV0ZXJtaW5lQ2hhbmdlKGRvY3VtZW50U3R5bGUsIG1f
cmVuZGVyVmlldy0+c3R5bGUoKSk7CisgICAgICAgICAgICBpZiAoZG9jdW1lbnRDaGFuZ2UgIT0g
U3R5bGU6OkNoYW5nZTo6Tm9uZSkKKyAgICAgICAgICAgICAgICByZW5kZXJWaWV3KCktPnNldFN0
eWxlKFdURk1vdmUoZG9jdW1lbnRTdHlsZSkpOworCisgICAgICAgICAgICBpZiAoUmVmUHRyIGRv
Y3VtZW50RWxlbWVudCA9IHRoaXMtPmRvY3VtZW50RWxlbWVudCgpKQorICAgICAgICAgICAgICAg
IGRvY3VtZW50RWxlbWVudC0+aW52YWxpZGF0ZVN0eWxlRm9yU3VidHJlZSgpOworICAgICAgICB9
CisKKyAgICAgICAgU3R5bGU6OlRyZWVSZXNvbHZlciByZXNvbHZlcigqdGhpcywgV1RGTW92ZSht
X3BlbmRpbmdSZW5kZXJUcmVlVGV4dFVwZGF0ZSkpOworICAgICAgICBhdXRvIHN0eWxlVXBkYXRl
ID0gcmVzb2x2ZXIucmVzb2x2ZSgpOworCisgICAgICAgIG1fbGFzdFN0eWxlVXBkYXRlU2l6ZUZv
clRlc3RpbmcgPSBzdHlsZVVwZGF0ZSA/IHN0eWxlVXBkYXRlLT5zaXplKCkgOiAwOworCisgICAg
ICAgIHNldEhhc1ZhbGlkU3R5bGUoKTsKKyAgICAgICAgY2xlYXJDaGlsZE5lZWRzU3R5bGVSZWNh
bGMoKTsKKyAgICAgICAgdW5zY2hlZHVsZVN0eWxlUmVjYWxjKCk7CisKKyAgICAgICAgbV9pblN0
eWxlUmVjYWxjID0gZmFsc2U7CisKKyAgICAgICAgbV9mb250TG9hZGVyLT5sb2FkUGVuZGluZ0Zv
bnRzKCk7CisKKyAgICAgICAgaWYgKHN0eWxlVXBkYXRlKSB7CisgICAgICAgICAgICB1cGRhdGVS
ZW5kZXJUcmVlKFdURk1vdmUoc3R5bGVVcGRhdGUpKTsKKyAgICAgICAgICAgIGZyYW1lVmlldy5z
dHlsZUFuZFJlbmRlclRyZWVEaWRDaGFuZ2UoKTsKKyAgICAgICAgfQorCisgICAgICAgIHVwZGF0
ZWRDb21wb3NpdGluZ0xheWVycyA9IGZyYW1lVmlldy51cGRhdGVDb21wb3NpdGluZ0xheWVyc0Fm
dGVyU3R5bGVDaGFuZ2UoKTsKKworICAgICAgICBpZiAobV9yZW5kZXJWaWV3LT5uZWVkc0xheW91
dCgpKQorICAgICAgICAgICAgZnJhbWVWaWV3LmxheW91dENvbnRleHQoKS5zY2hlZHVsZUxheW91
dCgpOworCisgICAgICAgIC8vIFVzdWFsbHkgdGhpcyBpcyBoYW5kbGVkIGJ5IHBvc3QtbGF5b3V0
LgorICAgICAgICBpZiAoIWZyYW1lVmlldy5uZWVkc0xheW91dCgpKQorICAgICAgICAgICAgZnJh
bWVWaWV3LmZyYW1lKCkuc2VsZWN0aW9uKCkuc2NoZWR1bGVBcHBlYXJhbmNlVXBkYXRlQWZ0ZXJT
dHlsZUNoYW5nZSgpOworCisgICAgICAgIC8vIEFzIGEgcmVzdWx0IG9mIHRoZSBzdHlsZSByZWNh
bGN1bGF0aW9uLCB0aGUgY3VycmVudGx5IGhvdmVyZWQgZWxlbWVudCBtaWdodCBoYXZlIGJlZW4K
KyAgICAgICAgLy8gZGV0YWNoZWQgKGZvciBleGFtcGxlLCBieSBzZXR0aW5nIGRpc3BsYXk6bm9u
ZSBpbiB0aGUgOmhvdmVyIHN0eWxlKSwgc2NoZWR1bGUgYW5vdGhlciBtb3VzZU1vdmUgZXZlbnQK
KyAgICAgICAgLy8gdG8gY2hlY2sgaWYgYW55IG90aGVyIGVsZW1lbnRzIGVuZGVkIHVwIHVuZGVy
IHRoZSBtb3VzZSBwb2ludGVyIGR1ZSB0byByZS1sYXlvdXQuCisgICAgICAgIGlmIChtX2hvdmVy
ZWRFbGVtZW50ICYmICFtX2hvdmVyZWRFbGVtZW50LT5yZW5kZXJlcigpKQorICAgICAgICAgICAg
ZnJhbWVWaWV3LmZyYW1lKCkubWFpbkZyYW1lKCkuZXZlbnRIYW5kbGVyKCkuZGlzcGF0Y2hGYWtl
TW91c2VNb3ZlRXZlbnRTb29uKCk7CisKKyAgICAgICAgKyttX3N0eWxlUmVjYWxjQ291bnQ7Cisg
ICAgICAgIC8vIEZJWE1FOiBBc3NlcnQgQVNTRVJUKCFuZWVkc1N0eWxlUmVjYWxjKCkpIGhlcmUu
IERvIHdlIHN0aWxsIGhhdmUgc29tZSBjYXNlcyB3aGVyZSBpdCdzIG5vdCB0cnVlPworICAgIH0K
KworICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjYWxjdWxhdGVTdHlsZSgqdGhp
cyk7CisKKyAgICAvLyBTb21lIGFuaW1hdGVkIGltYWdlcyBtYXkgbm93IGJlIGluc2lkZSB0aGUg
dmlld3BvcnQgZHVlIHRvIHN0eWxlIHJlY2FsYywKKyAgICAvLyByZXN1bWUgdGhlbSBpZiBuZWNl
c3NhcnkgaWYgdGhlcmUgaXMgbm8gbGF5b3V0IHBlbmRpbmcuIE90aGVyd2lzZSwgd2UnbGwKKyAg
ICAvLyBjaGVjayBpZiB0aGV5IG5lZWQgdG8gYmUgcmVzdW1lZCBhZnRlciBsYXlvdXQuCisgICAg
aWYgKHVwZGF0ZWRDb21wb3NpdGluZ0xheWVycyAmJiAhZnJhbWVWaWV3Lm5lZWRzTGF5b3V0KCkp
CisgICAgICAgIGZyYW1lVmlldy52aWV3cG9ydENvbnRlbnRzQ2hhbmdlZCgpOworfQorCit2b2lk
IERvY3VtZW50Ojp1cGRhdGVUZXh0UmVuZGVyZXIoVGV4dCYgdGV4dCwgdW5zaWduZWQgb2Zmc2V0
T2ZSZXBsYWNlZFRleHQsIHVuc2lnbmVkIGxlbmd0aE9mUmVwbGFjZWRUZXh0KQoreworICAgIGlm
ICghaGFzTGl2aW5nUmVuZGVyVHJlZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIW1f
cGVuZGluZ1JlbmRlclRyZWVUZXh0VXBkYXRlKQorICAgICAgICBtX3BlbmRpbmdSZW5kZXJUcmVl
VGV4dFVwZGF0ZSA9IG1ha2VVbmlxdWU8U3R5bGU6OlVwZGF0ZT4oKnRoaXMpOworCisgICAgbV9w
ZW5kaW5nUmVuZGVyVHJlZVRleHRVcGRhdGUtPmFkZFRleHQodGV4dCwgeyBvZmZzZXRPZlJlcGxh
Y2VkVGV4dCwgbGVuZ3RoT2ZSZXBsYWNlZFRleHQsIHN0ZDo6bnVsbG9wdCB9KTsKKworICAgIHNj
aGVkdWxlUmVuZGVyaW5nVXBkYXRlKHsgfSk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6Om5lZWRzU3R5
bGVSZWNhbGMoKSBjb25zdAoreworICAgIGlmIChiYWNrRm9yd2FyZENhY2hlU3RhdGUoKSAhPSBO
b3RJbkJhY2tGb3J3YXJkQ2FjaGUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmICht
X25lZWRzRnVsbFN0eWxlUmVidWlsZCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBpZiAo
Y2hpbGROZWVkc1N0eWxlUmVjYWxjKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgaWYg
KG1fcGVuZGluZ1JlbmRlclRyZWVUZXh0VXBkYXRlKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKwor
ICAgIGlmIChzdHlsZVNjb3BlKCkuaGFzUGVuZGluZ1VwZGF0ZSgpKQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKworICAgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIGJvb2wgaXNTYWZlVG9VcGRh
dGVTdHlsZU9yTGF5b3V0KGNvbnN0IERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBib29sIGlz
U2FmZVRvRXhlY3V0ZVNjcmlwdCA9IFNjcmlwdERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFk
Ojppc1NjcmlwdEFsbG93ZWQoKTsKKyAgICBhdXRvKiBmcmFtZVZpZXcgPSBkb2N1bWVudC52aWV3
KCk7CisgICAgYm9vbCBpc0luRnJhbWVGbGF0dGVuaW5nID0gZnJhbWVWaWV3ICYmIGZyYW1lVmll
dy0+aXNJbkNoaWxkRnJhbWVXaXRoRnJhbWVGbGF0dGVuaW5nKCk7CisgICAgcmV0dXJuIGlzU2Fm
ZVRvRXhlY3V0ZVNjcmlwdCB8fCBpc0luRnJhbWVGbGF0dGVuaW5nIHx8ICFpc0luV2ViUHJvY2Vz
cygpOworfQorCitib29sIERvY3VtZW50Ojp1cGRhdGVTdHlsZUlmTmVlZGVkKCkKK3sKKyAgICBS
ZWZQdHI8RnJhbWVWaWV3PiBmcmFtZVZpZXcgPSB2aWV3KCk7CisgICAgeworICAgICAgICBTY3Jp
cHREaXNhbGxvd2VkU2NvcGU6OkluTWFpblRocmVhZCBzY3JpcHREaXNhbGxvd2VkU2NvcGU7Cisg
ICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgICAgIEFTU0VSVCghZnJhbWVWaWV3
IHx8ICFmcmFtZVZpZXctPmlzUGFpbnRpbmcoKSk7CisKKyAgICAgICAgaWYgKCFmcmFtZVZpZXcg
fHwgZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJblJlbmRlclRyZWVMYXlvdXQoKSkKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBzdHlsZVNjb3BlKCkuZmx1c2hQZW5k
aW5nVXBkYXRlKCk7CisKKyAgICAgICAgaWYgKCFuZWVkc1N0eWxlUmVjYWxjKCkpCisgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisjaWYgRU5BQkxFKENPTlRFTlRfQ0hBTkdFX09C
U0VSVkVSKQorICAgIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6U3R5bGVSZWNhbGNTY29wZSBvYnNl
cnZpbmdTY29wZSgqdGhpcyk7CisjZW5kaWYKKyAgICAvLyBUaGUgZWFybHkgZXhpdCBhYm92ZSBm
b3IgIW5lZWRzU3R5bGVSZWNhbGMoKSBpcyBuZWVkZWQgd2hlbiB1cGRhdGVXaWRnZXRQb3NpdGlv
bnMoKSBpcyBjYWxsZWQgaW4gcnVuT3JTY2hlZHVsZUFzeW5jaHJvbm91c1Rhc2tzKCkuCisgICAg
UkVMRUFTRV9BU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihpc1NhZmVUb1VwZGF0ZVN0
eWxlT3JMYXlvdXQoKnRoaXMpKTsKKyAgICByZXNvbHZlU3R5bGUoKTsKKyAgICByZXR1cm4gdHJ1
ZTsKK30KKwordm9pZCBEb2N1bWVudDo6dXBkYXRlTGF5b3V0KCkKK3sKKyAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOworCisgICAgUmVmUHRyPEZyYW1lVmlldz4gZnJhbWVWaWV3ID0gdmlldygp
OworICAgIGlmIChmcmFtZVZpZXcgJiYgZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJblJl
bmRlclRyZWVMYXlvdXQoKSkgeworICAgICAgICAvLyBWaWV3IGxheW91dCBzaG91bGQgbm90IGJl
IHJlLWVudHJhbnQuCisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1
cm47CisgICAgfQorICAgIFJFTEVBU0VfQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04o
aXNTYWZlVG9VcGRhdGVTdHlsZU9yTGF5b3V0KCp0aGlzKSk7CisKKyAgICBSZW5kZXJWaWV3OjpS
ZXBhaW50UmVnaW9uQWNjdW11bGF0b3IgcmVwYWludFJlZ2lvbkFjY3VtdWxhdG9yKHJlbmRlclZp
ZXcoKSk7CisKKyAgICBpZiAoUmVmUHRyIG93bmVyID0gb3duZXJFbGVtZW50KCkpCisgICAgICAg
IG93bmVyLT5kb2N1bWVudCgpLnVwZGF0ZUxheW91dCgpOworCisgICAgdXBkYXRlU3R5bGVJZk5l
ZWRlZCgpOworCisgICAgU3RhY2tTdGF0czo6TGF5b3V0Q2hlY2tQb2ludCBsYXlvdXRDaGVja1Bv
aW50OworCisgICAgLy8gT25seSBkbyBhIGxheW91dCBpZiBjaGFuZ2VzIGhhdmUgb2NjdXJyZWQg
dGhhdCBtYWtlIGl0IG5lY2Vzc2FyeS4gICAgICAKKyAgICBpZiAoZnJhbWVWaWV3ICYmIHJlbmRl
clZpZXcoKSAmJiAoZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNMYXlvdXRQZW5kaW5nKCkg
fHwgcmVuZGVyVmlldygpLT5uZWVkc0xheW91dCgpKSkKKyAgICAgICAgZnJhbWVWaWV3LT5sYXlv
dXRDb250ZXh0KCkubGF5b3V0KCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZUxheW91dEln
bm9yZVBlbmRpbmdTdHlsZXNoZWV0cyhEb2N1bWVudDo6UnVuUG9zdExheW91dFRhc2tzIHJ1blBv
c3RMYXlvdXRUYXNrcykKK3sKKyAgICBib29sIG9sZElnbm9yZSA9IG1faWdub3JlUGVuZGluZ1N0
eWxlc2hlZXRzOworCisgICAgaWYgKCFoYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkgeworICAgICAg
ICBtX2lnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cyA9IHRydWU7CisgICAgICAgIC8vIEZJWE1FOiBU
aGlzIHNob3VsZCBqdXN0IGludmFsaWRhdGUgZWxlbWVudHMgd2l0aCBtaXNzaW5nIHN0eWxlcy4K
KyAgICAgICAgaWYgKG1faGFzTm9kZXNXaXRoTWlzc2luZ1N0eWxlKQorICAgICAgICAgICAgc2No
ZWR1bGVGdWxsU3R5bGVSZWJ1aWxkKCk7CisgICAgfQorCisgICAgdXBkYXRlTGF5b3V0KCk7CisK
KyAgICBpZiAocnVuUG9zdExheW91dFRhc2tzID09IFJ1blBvc3RMYXlvdXRUYXNrczo6U3luY2hy
b25vdXNseSAmJiB2aWV3KCkpCisgICAgICAgIHZpZXcoKS0+Zmx1c2hBbnlQZW5kaW5nUG9zdExh
eW91dFRhc2tzKCk7CisKKyAgICBtX2lnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cyA9IG9sZElnbm9y
ZTsKK30KKworc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBEb2N1bWVudDo6c3R5bGVGb3JF
bGVtZW50SWdub3JpbmdQZW5kaW5nU3R5bGVzaGVldHMoRWxlbWVudCYgZWxlbWVudCwgY29uc3Qg
UmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBQc2V1ZG9JZCBwc2V1ZG9FbGVtZW50U3BlY2lmaWVy
KQoreworICAgIEFTU0VSVCgmZWxlbWVudC5kb2N1bWVudCgpID09IHRoaXMpOworICAgIEFTU0VS
VCghZWxlbWVudC5pc1BzZXVkb0VsZW1lbnQoKSB8fCBwc2V1ZG9FbGVtZW50U3BlY2lmaWVyID09
IFBzZXVkb0lkOjpOb25lKTsKKyAgICBBU1NFUlQocHNldWRvRWxlbWVudFNwZWNpZmllciA9PSBQ
c2V1ZG9JZDo6Tm9uZSB8fCBwYXJlbnRTdHlsZSk7CisgICAgQVNTRVJUKFN0eWxlOjpwb3N0UmVz
b2x1dGlvbkNhbGxiYWNrc0FyZVN1c3BlbmRlZCgpKTsKKworICAgIFNldEZvclNjb3BlPGJvb2w+
IGNoYW5nZShtX2lnbm9yZVBlbmRpbmdTdHlsZXNoZWV0cywgdHJ1ZSk7CisgICAgYXV0byYgcmVz
b2x2ZXIgPSBlbGVtZW50LnN0eWxlUmVzb2x2ZXIoKTsKKworICAgIGlmIChwc2V1ZG9FbGVtZW50
U3BlY2lmaWVyICE9IFBzZXVkb0lkOjpOb25lKQorICAgICAgICByZXR1cm4gcmVzb2x2ZXIucHNl
dWRvU3R5bGVGb3JFbGVtZW50KGVsZW1lbnQsIHsgcHNldWRvRWxlbWVudFNwZWNpZmllciB9LCAq
cGFyZW50U3R5bGUpOworCisgICAgYXV0byBlbGVtZW50U3R5bGUgPSByZXNvbHZlci5zdHlsZUZv
ckVsZW1lbnQoZWxlbWVudCwgcGFyZW50U3R5bGUpOworICAgIGlmIChlbGVtZW50U3R5bGUucmVs
YXRpb25zKSB7CisgICAgICAgIFN0eWxlOjpVcGRhdGUgZW1wdHlVcGRhdGUoKnRoaXMpOworICAg
ICAgICBTdHlsZTo6Y29tbWl0UmVsYXRpb25zKFdURk1vdmUoZWxlbWVudFN0eWxlLnJlbGF0aW9u
cyksIGVtcHR5VXBkYXRlKTsKKyAgICB9CisKKyAgICByZXR1cm4gV1RGTW92ZShlbGVtZW50U3R5
bGUucmVuZGVyU3R5bGUpOworfQorCitib29sIERvY3VtZW50Ojp1cGRhdGVMYXlvdXRJZkRpbWVu
c2lvbnNPdXRPZkRhdGUoRWxlbWVudCYgZWxlbWVudCwgRGltZW5zaW9uc0NoZWNrIGRpbWVuc2lv
bnNDaGVjaykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIAorICAgIC8vIElm
IHRoZSBzdHlsZXNoZWV0cyBoYXZlbid0IGxvYWRlZCwganVzdCBnaXZlIHVwIGFuZCBkbyBhIGZ1
bGwgbGF5b3V0IGlnbm9yaW5nIHBlbmRpbmcgc3R5bGVzaGVldHMuCisgICAgaWYgKCFoYXZlU3R5
bGVzaGVldHNMb2FkZWQoKSkgeworICAgICAgICB1cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5
bGVzaGVldHMoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIAorICAgIC8vIENo
ZWNrIGZvciByZS1lbnRyYW5jeSBhbmQgYXNzZXJ0IChzYW1lIGNvZGUgdGhhdCBpcyBpbiB1cGRh
dGVMYXlvdXQoKSkuCisgICAgUmVmUHRyPEZyYW1lVmlldz4gZnJhbWVWaWV3ID0gdmlldygpOwor
ICAgIGlmIChmcmFtZVZpZXcgJiYgZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJblJlbmRl
clRyZWVMYXlvdXQoKSkgeworICAgICAgICAvLyBWaWV3IGxheW91dCBzaG91bGQgbm90IGJlIHJl
LWVudHJhbnQuCisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4g
dHJ1ZTsKKyAgICB9CisgICAgCisgICAgUmVuZGVyVmlldzo6UmVwYWludFJlZ2lvbkFjY3VtdWxh
dG9yIHJlcGFpbnRSZWdpb25BY2N1bXVsYXRvcihyZW5kZXJWaWV3KCkpOworICAgIAorICAgIC8v
IE1pbWljIHRoZSBzdHJ1Y3R1cmUgb2YgdXBkYXRlTGF5b3V0KCksIGJ1dCBhdCBlYWNoIHN0ZXAs
IHNlZSBpZiB3ZSBoYXZlIGJlZW4gZm9yY2VkIGludG8gZG9pbmcgYSBmdWxsCisgICAgLy8gbGF5
b3V0LgorICAgIGJvb2wgcmVxdWlyZUZ1bGxMYXlvdXQgPSBmYWxzZTsKKyAgICBpZiAoUmVmUHRy
IG93bmVyID0gb3duZXJFbGVtZW50KCkpIHsKKyAgICAgICAgaWYgKG93bmVyLT5kb2N1bWVudCgp
LnVwZGF0ZUxheW91dElmRGltZW5zaW9uc091dE9mRGF0ZSgqb3duZXIpKQorICAgICAgICAgICAg
cmVxdWlyZUZ1bGxMYXlvdXQgPSB0cnVlOworICAgIH0KKyAgICAKKyAgICB1cGRhdGVTdHlsZUlm
TmVlZGVkKCk7CisKKyAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gZWxlbWVudC5yZW5kZXJl
cigpOworICAgIGlmICghcmVuZGVyZXIgfHwgcmVuZGVyZXItPm5lZWRzTGF5b3V0KCkpIHsKKyAg
ICAgICAgLy8gSWYgd2UgZG9uJ3QgaGF2ZSBhIHJlbmRlcmVyIG9yIGlmIHRoZSByZW5kZXJlciBu
ZWVkcyBsYXlvdXQgZm9yIGFueSByZWFzb24sIGdpdmUgdXAuCisgICAgICAgIHJlcXVpcmVGdWxs
TGF5b3V0ID0gdHJ1ZTsKKyAgICB9CisKKyAgICAvLyBUdXJuIG9mZiB0aGlzIG9wdGltaXphdGlv
biBmb3IgaW5wdXQgZWxlbWVudHMgd2l0aCBzaGFkb3cgY29udGVudC4KKyAgICBpZiAoaXM8SFRN
TElucHV0RWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJlcXVpcmVGdWxsTGF5b3V0ID0gdHJ1
ZTsKKworICAgIGJvb2wgaXNWZXJ0aWNhbCA9IHJlbmRlcmVyICYmICFyZW5kZXJlci0+aXNIb3Jp
em9udGFsV3JpdGluZ01vZGUoKTsKKyAgICBib29sIGNoZWNraW5nTG9naWNhbFdpZHRoID0gKChk
aW1lbnNpb25zQ2hlY2sgJiBXaWR0aERpbWVuc2lvbnNDaGVjaykgJiYgIWlzVmVydGljYWwpIHx8
ICgoZGltZW5zaW9uc0NoZWNrICYgSGVpZ2h0RGltZW5zaW9uc0NoZWNrKSAmJiBpc1ZlcnRpY2Fs
KTsKKyAgICBib29sIGNoZWNraW5nTG9naWNhbEhlaWdodCA9ICgoZGltZW5zaW9uc0NoZWNrICYg
SGVpZ2h0RGltZW5zaW9uc0NoZWNrKSAmJiAhaXNWZXJ0aWNhbCkgfHwgKChkaW1lbnNpb25zQ2hl
Y2sgJiBXaWR0aERpbWVuc2lvbnNDaGVjaykgJiYgaXNWZXJ0aWNhbCk7CisgICAgYm9vbCBoYXNT
cGVjaWZpZWRMb2dpY2FsSGVpZ2h0ID0gcmVuZGVyZXIgJiYgcmVuZGVyZXItPnN0eWxlKCkubG9n
aWNhbE1pbkhlaWdodCgpID09IExlbmd0aCgwLCBMZW5ndGhUeXBlOjpGaXhlZCkgJiYgcmVuZGVy
ZXItPnN0eWxlKCkubG9naWNhbEhlaWdodCgpLmlzRml4ZWQoKSAmJiByZW5kZXJlci0+c3R5bGUo
KS5sb2dpY2FsTWF4SGVpZ2h0KCkuaXNBdXRvKCk7CisgICAgCisgICAgaWYgKCFyZXF1aXJlRnVs
bExheW91dCkgeworICAgICAgICBSZW5kZXJCb3gqIHByZXZpb3VzQm94ID0gbnVsbHB0cjsKKyAg
ICAgICAgUmVuZGVyQm94KiBjdXJyZW50Qm94ID0gbnVsbHB0cjsKKyAgICAgICAgCisgICAgICAg
IC8vIENoZWNrIG91ciBjb250YWluaW5nIGJsb2NrIGNoYWluLiBJZiBhbnl0aGluZyBpbiB0aGUg
Y2hhaW4gbmVlZHMgYSBsYXlvdXQsIHRoZW4gcmVxdWlyZSBhIGZ1bGwgbGF5b3V0LgorICAgICAg
ICBmb3IgKFJlbmRlck9iamVjdCogY3VyclJlbmRlcmVyID0gZWxlbWVudC5yZW5kZXJlcigpOyBj
dXJyUmVuZGVyZXIgJiYgIWN1cnJSZW5kZXJlci0+aXNSZW5kZXJWaWV3KCk7IGN1cnJSZW5kZXJl
ciA9IGN1cnJSZW5kZXJlci0+Y29udGFpbmVyKCkpIHsKKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgLy8gUmVxdWlyZSB0aGUgZW50aXJlIGNvbnRhaW5lciBjaGFpbiB0byBiZSBib3hlcy4KKyAg
ICAgICAgICAgIGlmICghaXM8UmVuZGVyQm94PihjdXJyUmVuZGVyZXIpKSB7CisgICAgICAgICAg
ICAgICAgcmVxdWlyZUZ1bGxMYXlvdXQgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBwcmV2aW91c0JveCA9IGN1
cnJlbnRCb3g7CisgICAgICAgICAgICBjdXJyZW50Qm94ID0gZG93bmNhc3Q8UmVuZGVyQm94Pihj
dXJyUmVuZGVyZXIpOworICAgICAgICAgICAgCisgICAgICAgICAgICAvLyBJZiBhIGJveCBuZWVk
cyBsYXlvdXQgZm9yIGl0c2VsZiBvciBpZiBhIGJveCBoYXMgY2hhbmdlZCBjaGlsZHJlbiBhbmQg
c2l6ZXMgaXRzIHdpZHRoIHRvCisgICAgICAgICAgICAvLyBpdHMgY29udGVudCwgdGhlbiByZXF1
aXJlIGEgZnVsbCBsYXlvdXQuCisgICAgICAgICAgICBpZiAoY3VycmVudEJveC0+c2VsZk5lZWRz
TGF5b3V0KCkgfHwKKyAgICAgICAgICAgICAgICAoY2hlY2tpbmdMb2dpY2FsV2lkdGggJiYgY3Vy
clJlbmRlcmVyLT5uZWVkc0xheW91dCgpICYmIGN1cnJlbnRCb3gtPnNpemVzTG9naWNhbFdpZHRo
VG9GaXRDb250ZW50KE1haW5PclByZWZlcnJlZFNpemUpKSkgeworICAgICAgICAgICAgICAgIHJl
cXVpcmVGdWxsTGF5b3V0ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgLy8gSWYgYSBibG9jayBjb250YWlucyBm
bG9hdHMgYW5kIHRoZSBjaGlsZCdzIGhlaWdodCBpc24ndCBzcGVjaWZpZWQsIHRoZW4KKyAgICAg
ICAgICAgIC8vIGdpdmUgdXAgYWxzbywgc2luY2Ugb3VyIGhlaWdodCBjb3VsZCBlbmQgdXAgYmVp
bmcgaW5mbHVlbmNlZCBieSB0aGUgZmxvYXRzLgorICAgICAgICAgICAgaWYgKGNoZWNraW5nTG9n
aWNhbEhlaWdodCAmJiAhaGFzU3BlY2lmaWVkTG9naWNhbEhlaWdodCAmJiBjdXJyZW50Qm94LT5p
c1JlbmRlckJsb2NrRmxvdygpKSB7CisgICAgICAgICAgICAgICAgUmVuZGVyQmxvY2tGbG93KiBj
dXJyZW50QmxvY2tGbG93ID0gZG93bmNhc3Q8UmVuZGVyQmxvY2tGbG93PihjdXJyZW50Qm94KTsK
KyAgICAgICAgICAgICAgICBpZiAoY3VycmVudEJsb2NrRmxvdy0+Y29udGFpbnNGbG9hdHMoKSAm
JiBwcmV2aW91c0JveCAmJiAhcHJldmlvdXNCb3gtPmlzRmxvYXRpbmdPck91dE9mRmxvd1Bvc2l0
aW9uZWQoKSkgeworICAgICAgICAgICAgICAgICAgICByZXF1aXJlRnVsbExheW91dCA9IHRydWU7
CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgaWYgKCFjdXJyZW50Qm94LT5pc1JlbmRl
ckJsb2NrRmxvdygpIHx8IGN1cnJlbnRCb3gtPmVuY2xvc2luZ0ZyYWdtZW50ZWRGbG93KCkgfHwg
Y3VycmVudEJveC0+aXNXcml0aW5nTW9kZVJvb3QoKSkgeworICAgICAgICAgICAgICAgIC8vIEZJ
WE1FOiBGb3Igbm93IHJlcXVpcmUgb25seSBibG9jayBmbG93cyBhbGwgdGhlIHdheSBiYWNrIHRv
IHRoZSByb290LiBUaGlzIGxpbWl0cyB0aGUgb3B0aW1pemF0aW9uCisgICAgICAgICAgICAgICAg
Ly8gZm9yIG5vdywgYW5kIHdlJ2xsIGV4cGFuZCBpdCBpbiBmdXR1cmUgcGF0Y2hlcyB0byBhcHBs
eSB0byBtb3JlIGFuZCBtb3JlIHNjZW5hcmlvcy4KKyAgICAgICAgICAgICAgICAvLyBEaXNhbGxv
dyBjb2x1bW5zIGZyb20gaGF2aW5nIHRoZSBvcHRpbWl6YXRpb24uCisgICAgICAgICAgICAgICAg
Ly8gR2l2ZSB1cCBpZiB0aGUgd3JpdGluZyBtb2RlIGNoYW5nZXMgYXQgYWxsIGluIHRoZSBjb250
YWluaW5nIGJsb2NrIGNoYWluLgorICAgICAgICAgICAgICAgIHJlcXVpcmVGdWxsTGF5b3V0ID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IAorICAgICAgICAgICAgaWYgKGN1cnJSZW5kZXJlciA9PSBmcmFtZVZpZXctPmxheW91dENvbnRl
eHQoKS5zdWJ0cmVlTGF5b3V0Um9vdCgpKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CisgICAgfQorICAgIAorICAgIFN0YWNrU3RhdHM6OkxheW91dENoZWNrUG9pbnQgbGF5b3V0
Q2hlY2tQb2ludDsKKworICAgIC8vIE9ubHkgZG8gYSBsYXlvdXQgaWYgY2hhbmdlcyBoYXZlIG9j
Y3VycmVkIHRoYXQgbWFrZSBpdCBuZWNlc3NhcnkuICAgICAgCisgICAgaWYgKHJlcXVpcmVGdWxs
TGF5b3V0ICYmIGZyYW1lVmlldyAmJiByZW5kZXJWaWV3KCkgJiYgKGZyYW1lVmlldy0+bGF5b3V0
Q29udGV4dCgpLmlzTGF5b3V0UGVuZGluZygpIHx8IHJlbmRlclZpZXcoKS0+bmVlZHNMYXlvdXQo
KSkpCisgICAgICAgIGZyYW1lVmlldy0+bGF5b3V0Q29udGV4dCgpLmxheW91dCgpOworICAgIAor
ICAgIHJldHVybiByZXF1aXJlRnVsbExheW91dDsKK30KKworYm9vbCBEb2N1bWVudDo6aXNQYWdl
Qm94VmlzaWJsZShpbnQgcGFnZUluZGV4KQoreworICAgIHVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsK
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+IHBhZ2VTdHlsZShzdHlsZVNjb3BlKCku
cmVzb2x2ZXIoKS5zdHlsZUZvclBhZ2UocGFnZUluZGV4KSk7CisgICAgcmV0dXJuIHBhZ2VTdHls
ZS0+dmlzaWJpbGl0eSgpICE9IFZpc2liaWxpdHk6OkhpZGRlbjsgLy8gZGlzcGxheSBwcm9wZXJ0
eSBkb2Vzbid0IGFwcGx5IHRvIEBwYWdlLgorfQorCit2b2lkIERvY3VtZW50OjpwYWdlU2l6ZUFu
ZE1hcmdpbnNJblBpeGVscyhpbnQgcGFnZUluZGV4LCBJbnRTaXplJiBwYWdlU2l6ZSwgaW50JiBt
YXJnaW5Ub3AsIGludCYgbWFyZ2luUmlnaHQsIGludCYgbWFyZ2luQm90dG9tLCBpbnQmIG1hcmdp
bkxlZnQpCit7CisgICAgdXBkYXRlU3R5bGVJZk5lZWRlZCgpOworICAgIGF1dG8gc3R5bGUgPSBz
dHlsZVNjb3BlKCkucmVzb2x2ZXIoKS5zdHlsZUZvclBhZ2UocGFnZUluZGV4KTsKKworICAgIGlu
dCB3aWR0aCA9IHBhZ2VTaXplLndpZHRoKCk7CisgICAgaW50IGhlaWdodCA9IHBhZ2VTaXplLmhl
aWdodCgpOworICAgIHN3aXRjaCAoc3R5bGUtPnBhZ2VTaXplVHlwZSgpKSB7CisgICAgY2FzZSBQ
QUdFX1NJWkVfQVVUTzoKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQQUdFX1NJWkVfQVVUT19M
QU5EU0NBUEU6CisgICAgICAgIGlmICh3aWR0aCA8IGhlaWdodCkKKyAgICAgICAgICAgIHN0ZDo6
c3dhcCh3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQQUdFX1NJWkVf
QVVUT19QT1JUUkFJVDoKKyAgICAgICAgaWYgKHdpZHRoID4gaGVpZ2h0KQorICAgICAgICAgICAg
c3RkOjpzd2FwKHdpZHRoLCBoZWlnaHQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFBBR0Vf
U0laRV9SRVNPTFZFRDogeworICAgICAgICBhdXRvJiBzaXplID0gc3R5bGUtPnBhZ2VTaXplKCk7
CisgICAgICAgIEFTU0VSVChzaXplLndpZHRoLmlzRml4ZWQoKSk7CisgICAgICAgIEFTU0VSVChz
aXplLmhlaWdodC5pc0ZpeGVkKCkpOworICAgICAgICB3aWR0aCA9IHZhbHVlRm9yTGVuZ3RoKHNp
emUud2lkdGgsIDApOworICAgICAgICBoZWlnaHQgPSB2YWx1ZUZvckxlbmd0aChzaXplLmhlaWdo
dCwgMCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9CisgICAgcGFnZVNpemUgPSBJbnRTaXplKHdpZHRoLCBo
ZWlnaHQpOworCisgICAgLy8gVGhlIHBlcmNlbnRhZ2UgaXMgY2FsY3VsYXRlZCB3aXRoIHJlc3Bl
Y3QgdG8gdGhlIHdpZHRoIGV2ZW4gZm9yIG1hcmdpbiB0b3AgYW5kIGJvdHRvbS4KKyAgICAvLyBo
dHRwOi8vd3d3LnczLm9yZy9UUi9DU1MyL2JveC5odG1sI21hcmdpbi1wcm9wZXJ0aWVzCisgICAg
bWFyZ2luVG9wID0gc3R5bGUtPm1hcmdpblRvcCgpLmlzQXV0bygpID8gbWFyZ2luVG9wIDogaW50
VmFsdWVGb3JMZW5ndGgoc3R5bGUtPm1hcmdpblRvcCgpLCB3aWR0aCk7CisgICAgbWFyZ2luUmln
aHQgPSBzdHlsZS0+bWFyZ2luUmlnaHQoKS5pc0F1dG8oKSA/IG1hcmdpblJpZ2h0IDogaW50VmFs
dWVGb3JMZW5ndGgoc3R5bGUtPm1hcmdpblJpZ2h0KCksIHdpZHRoKTsKKyAgICBtYXJnaW5Cb3R0
b20gPSBzdHlsZS0+bWFyZ2luQm90dG9tKCkuaXNBdXRvKCkgPyBtYXJnaW5Cb3R0b20gOiBpbnRW
YWx1ZUZvckxlbmd0aChzdHlsZS0+bWFyZ2luQm90dG9tKCksIHdpZHRoKTsKKyAgICBtYXJnaW5M
ZWZ0ID0gc3R5bGUtPm1hcmdpbkxlZnQoKS5pc0F1dG8oKSA/IG1hcmdpbkxlZnQgOiBpbnRWYWx1
ZUZvckxlbmd0aChzdHlsZS0+bWFyZ2luTGVmdCgpLCB3aWR0aCk7Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OmZvbnRzTmVlZFVwZGF0ZShGb250U2VsZWN0b3ImKQoreworICAgIGludmFsaWRhdGVNYXRj
aGVkUHJvcGVydGllc0NhY2hlQW5kRm9yY2VTdHlsZVJlY2FsYygpOworfQorCit2b2lkIERvY3Vt
ZW50OjppbnZhbGlkYXRlTWF0Y2hlZFByb3BlcnRpZXNDYWNoZUFuZEZvcmNlU3R5bGVSZWNhbGMo
KQoreworICAgIHN0eWxlU2NvcGUoKS5pbnZhbGlkYXRlTWF0Y2hlZERlY2xhcmF0aW9uc0NhY2hl
KCk7CisKKyAgICBpZiAoYmFja0ZvcndhcmRDYWNoZVN0YXRlKCkgIT0gTm90SW5CYWNrRm9yd2Fy
ZENhY2hlIHx8ICFyZW5kZXJWaWV3KCkpCisgICAgICAgIHJldHVybjsKKyAgICBzY2hlZHVsZUZ1
bGxTdHlsZVJlYnVpbGQoKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0SXNSZXNvbHZpbmdUcmVl
U3R5bGUoYm9vbCB2YWx1ZSkKK3sKKyAgICBSRUxFQVNFX0FTU0VSVCh2YWx1ZSAhPSBtX2lzUmVz
b2x2aW5nVHJlZVN0eWxlKTsKKyAgICBtX2lzUmVzb2x2aW5nVHJlZVN0eWxlID0gdmFsdWU7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OmNyZWF0ZVJlbmRlclRyZWUoKQoreworICAgIEFTU0VSVCghcmVu
ZGVyVmlldygpKTsKKyAgICBBU1NFUlQobV9iYWNrRm9yd2FyZENhY2hlU3RhdGUgIT0gSW5CYWNr
Rm9yd2FyZENhY2hlKTsKKyAgICBBU1NFUlQoIW1fYXhPYmplY3RDYWNoZSB8fCB0aGlzICE9ICZ0
b3BEb2N1bWVudCgpKTsKKworICAgIGlmIChtX2lzTm9uUmVuZGVyZWRQbGFjZWhvbGRlcikKKyAg
ICAgICAgcmV0dXJuOworCisgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJlIGJldHRlciBpZiB3ZSBj
b3VsZCBwYXNzIHRoZSByZXNvbHZlZCBkb2N1bWVudCBzdHlsZSBkaXJlY3RseSBoZXJlLgorICAg
IG1fcmVuZGVyVmlldyA9IGNyZWF0ZVJlbmRlcmVyPFJlbmRlclZpZXc+KCp0aGlzLCBSZW5kZXJT
dHlsZTo6Y3JlYXRlKCkpOworICAgIE5vZGU6OnNldFJlbmRlcmVyKG1fcmVuZGVyVmlldy5nZXQo
KSk7CisKKyAgICByZW5kZXJWaWV3KCktPnNldElzSW5XaW5kb3codHJ1ZSk7CisKKyAgICByZXNv
bHZlU3R5bGUoUmVzb2x2ZVN0eWxlVHlwZTo6UmVidWlsZCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6
OmRpZEJlY29tZUN1cnJlbnREb2N1bWVudEluRnJhbWUoKQoreworICAgIG1fZnJhbWUtPnNjcmlw
dCgpLnVwZGF0ZURvY3VtZW50KCk7CisKKyAgICAvLyBNYW55IG9mIHRoZXNlIGZ1bmN0aW9ucyBo
YXZlIGV2ZW50IGhhbmRsZXJzIHdoaWNoIGNhbiBkZXRhY2ggdGhlIGZyYW1lIHN5bmNocm9ub3Vz
bHksIHNvIHdlIG11c3QgY2hlY2sgcmVwZWF0ZWRseSBpbiB0aGlzIGZ1bmN0aW9uLgorICAgIGlm
ICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFoYXNMaXZpbmdSZW5kZXJU
cmVlKCkpCisgICAgICAgIGNyZWF0ZVJlbmRlclRyZWUoKTsKKyAgICBpZiAoIW1fZnJhbWUpCisg
ICAgICAgIHJldHVybjsKKworICAgIGRpc3BhdGNoRGlzYWJsZWRBZGFwdGF0aW9uc0RpZENoYW5n
ZUZvck1haW5GcmFtZSgpOworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgdXBkYXRlVmlld3BvcnRBcmd1bWVudHMoKTsKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAg
IHJldHVybjsKKworICAgIC8vIEZJWE1FOiBEb2luZyB0aGlzIG9ubHkgZm9yIHRoZSBtYWluIGZy
YW1lIGlzIGluc3VmZmljaWVudC4KKyAgICAvLyBDaGFuZ2luZyBhIHN1YmZyYW1lIGNhbiBhbHNv
IGNoYW5nZSB0aGUgd2hlZWwgZXZlbnQgaGFuZGxlciBjb3VudC4KKyAgICAvLyBGSVhNRTogRG9p
bmcgdGhpcyBvbmx5IHdoZW4gYSBkb2N1bWVudCBnb2VzIGludG8gdGhlIGZyYW1lIGlzIGluc3Vm
ZmljaWVudC4KKyAgICAvLyBSZW1vdmluZyBhIGRvY3VtZW50IGNhbiBhbHNvIGNoYW5nZSB0aGUg
d2hlZWwgZXZlbnQgaGFuZGxlciBjb3VudC4KKyAgICAvLyBGSVhNRTogRG9pbmcgdGhpcyBldmVy
eSB0aW1lIGlzIGEgd2FzdGUuIElmIHRoZSBjdXJyZW50IGRvY3VtZW50IGFuZCBpdHMKKyAgICAv
LyBzdWJmcmFtZXMnIGRvY3VtZW50cyBoYXZlIG5vIHdoZWVsIGV2ZW50IGhhbmRsZXJzLCB0aGVu
IHRoZSBjb3VudCBkaWQgbm90IGNoYW5nZSwKKyAgICAvLyB1bmxlc3MgdGhlIGRvY3VtZW50cyB0
aGV5IGFyZSByZXBsYWNpbmcgaGFkIHdoZWVsIGV2ZW50IGhhbmRsZXJzLgorICAgIGlmIChwYWdl
KCkgJiYgbV9mcmFtZS0+aXNNYWluRnJhbWUoKSkKKyAgICAgICAgd2hlZWxFdmVudEhhbmRsZXJz
Q2hhbmdlZCgpOworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8g
RW5zdXJlIHRoYXQgdGhlIHNjaGVkdWxlZCB0YXNrIHN0YXRlIG9mIHRoZSBkb2N1bWVudCBtYXRj
aGVzIHRoZSBET00gc3VzcGVuc2lvbiBzdGF0ZSBvZiB0aGUgZnJhbWUuIEl0IGNhbgorICAgIC8v
IGJlIG91dCBvZiBzeW5jIGlmIHRoZSBET00gc3VzcGVuc2lvbiBzdGF0ZSBjaGFuZ2VkIHdoaWxl
IHRoZSBkb2N1bWVudCB3YXMgbm90IGluIHRoZSBmcmFtZSAocG9zc2libHkgaW4gdGhlCisgICAg
Ly8gYmFjay9mb3J3YXJkIGNhY2hlLCBvciBzaW1wbHkgbmV3bHkgY3JlYXRlZCkuCisgICAgaWYg
KG1fZnJhbWUtPmFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zU3VzcGVuZGVkKCkpIHsKKyAg
ICAgICAgaWYgKG1fdGltZWxpbmVzQ29udHJvbGxlcikKKyAgICAgICAgICAgIG1fdGltZWxpbmVz
Q29udHJvbGxlci0+c3VzcGVuZEFuaW1hdGlvbnMoKTsKKyAgICAgICAgc3VzcGVuZFNjaGVkdWxl
ZFRhc2tzKFJlYXNvbkZvclN1c3BlbnNpb246OlBhZ2VXaWxsQmVTdXNwZW5kZWQpOworICAgIH0g
ZWxzZSB7CisgICAgICAgIHJlc3VtZVNjaGVkdWxlZFRhc2tzKFJlYXNvbkZvclN1c3BlbnNpb246
OlBhZ2VXaWxsQmVTdXNwZW5kZWQpOworICAgICAgICBpZiAobV90aW1lbGluZXNDb250cm9sbGVy
KQorICAgICAgICAgICAgbV90aW1lbGluZXNDb250cm9sbGVyLT5yZXN1bWVBbmltYXRpb25zKCk7
CisgICAgfQorfQorCit2b2lkIERvY3VtZW50OjpmcmFtZURlc3Ryb3llZCgpCit7CisgICAgLy8g
ZGV0YWNoRnJvbUZyYW1lKCkgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGRlc3Ryb3lpbmcgdGhlIEZy
YW1lLgorICAgIFJFTEVBU0VfQVNTRVJUKCFtX2ZyYW1lKTsKKworICAgIGlmIChSZWZQdHIgd2lu
ZG93ID0gZG9tV2luZG93KCkpCisgICAgICAgIHdpbmRvdy0+ZnJhbWVEZXN0cm95ZWQoKTsKKwor
ICAgIEZyYW1lRGVzdHJ1Y3Rpb25PYnNlcnZlcjo6ZnJhbWVEZXN0cm95ZWQoKTsKK30KKwordm9p
ZCBEb2N1bWVudDo6d2lsbERldGFjaFBhZ2UoKQoreworICAgIEZyYW1lRGVzdHJ1Y3Rpb25PYnNl
cnZlcjo6d2lsbERldGFjaFBhZ2UoKTsKKyNpZiBFTkFCTEUoQ09OVEVOVF9DSEFOR0VfT0JTRVJW
RVIpCisgICAgY29udGVudENoYW5nZU9ic2VydmVyKCkud2lsbERldGFjaFBhZ2UoKTsKKyNlbmRp
ZgorICAgIGlmIChkb21XaW5kb3coKSAmJiBmcmFtZSgpKQorICAgICAgICBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmZyYW1lV2luZG93RGlzY2FyZGVkKCpmcmFtZSgpLCBkb21XaW5kb3coKSk7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmF0dGFjaFRvQ2FjaGVkRnJhbWUoQ2FjaGVkRnJhbWVCYXNl
JiBjYWNoZWRGcmFtZSkKK3sKKyAgICBSRUxFQVNFX0FTU0VSVChjYWNoZWRGcmFtZS5kb2N1bWVu
dCgpID09IHRoaXMpOworICAgIEFTU0VSVChjYWNoZWRGcmFtZS52aWV3KCkpOworICAgIEFTU0VS
VChtX2JhY2tGb3J3YXJkQ2FjaGVTdGF0ZSA9PSBEb2N1bWVudDo6SW5CYWNrRm9yd2FyZENhY2hl
KTsKKyAgICBvYnNlcnZlRnJhbWUoJmNhY2hlZEZyYW1lLnZpZXcoKS0+ZnJhbWUoKSk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OmRldGFjaEZyb21DYWNoZWRGcmFtZShDYWNoZWRGcmFtZUJhc2UmIGNh
Y2hlZEZyYW1lKQoreworICAgIEFTU0VSVF9VTlVTRUQoY2FjaGVkRnJhbWUsIGNhY2hlZEZyYW1l
LnZpZXcoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQoY2FjaGVkRnJhbWUuZG9jdW1lbnQoKSA9PSB0
aGlzKTsKKyAgICBBU1NFUlQobV9mcmFtZSA9PSAmY2FjaGVkRnJhbWUudmlldygpLT5mcmFtZSgp
KTsKKyAgICBBU1NFUlQobV9iYWNrRm9yd2FyZENhY2hlU3RhdGUgPT0gRG9jdW1lbnQ6OkluQmFj
a0ZvcndhcmRDYWNoZSk7CisgICAgZGV0YWNoRnJvbUZyYW1lKCk7Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OmRlc3Ryb3lSZW5kZXJUcmVlKCkKK3sKKyAgICBBU1NFUlQoaGFzTGl2aW5nUmVuZGVyVHJl
ZSgpKTsKKyAgICBBU1NFUlQoZnJhbWUoKSk7CisgICAgQVNTRVJUKGZyYW1lKCktPmRvY3VtZW50
KCkgPT0gdGhpcyk7CisgICAgQVNTRVJUKHBhZ2UoKSk7CisKKyAgICAvLyBQcmV2ZW50IFdpZGdl
dCB0cmVlIGNoYW5nZXMgZnJvbSBjb21taXR0aW5nIHVudGlsIHRoZSBSZW5kZXJWaWV3IGlzIGRl
YWQgYW5kIGdvbmUuCisgICAgV2lkZ2V0SGllcmFyY2h5VXBkYXRlc1N1c3BlbnNpb25TY29wZSBz
dXNwZW5kV2lkZ2V0SGllcmFyY2h5VXBkYXRlczsKKworICAgIFNldEZvclNjb3BlPGJvb2w+IGNo
YW5nZShtX3JlbmRlclRyZWVCZWluZ0Rlc3Ryb3llZCwgdHJ1ZSk7CisKKyAgICBpZiAodGhpcyA9
PSAmdG9wRG9jdW1lbnQoKSkKKyAgICAgICAgY2xlYXJBWE9iamVjdENhY2hlKCk7CisKKyAgICBk
b2N1bWVudFdpbGxCZWNvbWVJbmFjdGl2ZSgpOworCisgICAgaWYgKHZpZXcoKSkKKyAgICAgICAg
dmlldygpLT53aWxsRGVzdHJveVJlbmRlclRyZWUoKTsKKworICAgIGlmIChtX2RvY3VtZW50RWxl
bWVudCkKKyAgICAgICAgUmVuZGVyVHJlZVVwZGF0ZXI6OnRlYXJEb3duUmVuZGVyZXJzKCptX2Rv
Y3VtZW50RWxlbWVudCk7CisKKyAgICBjbGVhckNoaWxkTmVlZHNTdHlsZVJlY2FsYygpOworCisg
ICAgdW5zY2hlZHVsZVN0eWxlUmVjYWxjKCk7CisKKyAgICAvLyBGSVhNRTogUmVuZGVyT2JqZWN0
Ojp2aWV3KCkgdXNlcyBtX3JlbmRlclZpZXcgYW5kIHdlIGNhbid0IG51bGwgaXQgYmVmb3JlIGRl
c3RydWN0aW9uIGlzIGNvbXBsZXRlZAorICAgIHsKKyAgICAgICAgUmVuZGVyVHJlZUJ1aWxkZXIg
YnVpbGRlcigqbV9yZW5kZXJWaWV3KTsKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgaXMgYSB3b3Jr
YXJvdW5kIGZvciBsZWZ0b3ZlciBjb250ZW50IChzZWUgd2Via2l0Lm9yZy9iLzE4MjU0NykuCisg
ICAgICAgIHdoaWxlIChtX3JlbmRlclZpZXctPmZpcnN0Q2hpbGQoKSkKKyAgICAgICAgICAgIGJ1
aWxkZXIuZGVzdHJveSgqbV9yZW5kZXJWaWV3LT5maXJzdENoaWxkKCkpOworICAgICAgICBtX3Jl
bmRlclZpZXctPmRlc3Ryb3koKTsKKyAgICB9CisgICAgbV9yZW5kZXJWaWV3LnJlbGVhc2UoKTsK
KworICAgIE5vZGU6OnNldFJlbmRlcmVyKG51bGxwdHIpOworCisjaWYgRU5BQkxFKFRFWFRfQVVU
T1NJWklORykKKyAgICBtX3RleHRBdXRvU2l6aW5nID0gbnVsbHB0cjsKKyNlbmRpZgorCisgICAg
aWYgKHZpZXcoKSkKKyAgICAgICAgdmlldygpLT5kaWREZXN0cm95UmVuZGVyVHJlZSgpOworfQor
Cit2b2lkIERvY3VtZW50Ojp3aWxsQmVSZW1vdmVkRnJvbUZyYW1lKCkKK3sKKyAgICBpZiAobV9o
YXNQcmVwYXJlZEZvckRlc3RydWN0aW9uKQorICAgICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUo
V0VCX1JUQykKKyAgICBpZiAobV9ydGNOZXR3b3JrTWFuYWdlcikKKyAgICAgICAgbV9ydGNOZXR3
b3JrTWFuYWdlci0+dW5yZWdpc3Rlck1ETlNOYW1lcygpOworI2VuZGlmCisKKyNpZiBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCisgICAgc2V0QWN0aXZlU2VydmljZVdvcmtlcihudWxscHRyKTsKKyAg
ICBzZXRTZXJ2aWNlV29ya2VyQ29ubmVjdGlvbihudWxscHRyKTsKKyNlbmRpZgorCisjaWYgRU5B
QkxFKElPU19UT1VDSF9FVkVOVFMpCisgICAgY2xlYXJUb3VjaEV2ZW50SGFuZGxlcnNBbmRMaXN0
ZW5lcnMoKTsKKyNlbmRpZgorCisgICAgbV91bmRvTWFuYWdlci0+cmVtb3ZlQWxsSXRlbXMoKTsK
KworICAgIG1fdGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIgPSBudWxscHRyOyAvLyBGcmVlIG5v
ZGVzIGtlcHQgYWxpdmUgYnkgVGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIuCisKKyNpZiBFTkFC
TEUoQUNDRVNTSUJJTElUWSkKKyAgICBpZiAodGhpcyAhPSAmdG9wRG9jdW1lbnQoKSkgeworICAg
ICAgICAvLyBMZXQgdGhlIGF4IGNhY2hlIGtub3cgdGhhdCB0aGlzIHN1YmZyYW1lIGdvZXMgb3V0
IG9mIHNjb3BlLgorICAgICAgICBpZiAoYXV0byogY2FjaGUgPSBleGlzdGluZ0FYT2JqZWN0Q2Fj
aGUoKSkKKyAgICAgICAgICAgIGNhY2hlLT5wcmVwYXJlRm9yRG9jdW1lbnREZXN0cnVjdGlvbigq
dGhpcyk7CisgICAgfQorI2VuZGlmCisKKyAgICB7CisgICAgICAgIE5hdmlnYXRpb25EaXNhYmxl
ciBuYXZpZ2F0aW9uRGlzYWJsZXIobV9mcmFtZS5nZXQoKSk7CisgICAgICAgIGRpc2Nvbm5lY3RE
ZXNjZW5kYW50RnJhbWVzKCk7CisgICAgfQorICAgIFJFTEVBU0VfQVNTRVJUX1dJVEhfU0VDVVJJ
VFlfSU1QTElDQVRJT04oIW1fZnJhbWUgfHwgIW1fZnJhbWUtPnRyZWUoKS5jaGlsZENvdW50KCkp
OworCisgICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpJbk1haW5UaHJlYWQgc2NyaXB0RGlzYWxs
b3dlZFNjb3BlOworCisgICAgaWYgKG1fZG9tV2luZG93ICYmIG1fZnJhbWUpCisgICAgICAgIG1f
ZG9tV2luZG93LT53aWxsRGV0YWNoRG9jdW1lbnRGcm9tRnJhbWUoKTsKKworICAgIHN0eWxlU2Nv
cGUoKS5jbGVhclJlc29sdmVyKCk7CisKKyAgICBpZiAoaGFzTGl2aW5nUmVuZGVyVHJlZSgpKQor
ICAgICAgICBkZXN0cm95UmVuZGVyVHJlZSgpOworCisgICAgaWYgKGlzPFBsdWdpbkRvY3VtZW50
PigqdGhpcykpCisgICAgICAgIGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqdGhpcykuZGV0YWNo
RnJvbVBsdWdpbkVsZW1lbnQoKTsKKworICAgIGlmIChhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgp
KSB7CisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICAgICAgcGFnZS0+cG9pbnRlckxvY2tD
b250cm9sbGVyKCkuZG9jdW1lbnREZXRhY2hlZCgqdGhpcyk7CisjZW5kaWYKKyAgICAgICAgaWYg
KGF1dG8qIGltYWdlT3ZlcmxheUNvbnRyb2xsZXIgPSBwYWdlLT5pbWFnZU92ZXJsYXlDb250cm9s
bGVySWZFeGlzdHMoKSkKKyAgICAgICAgICAgIGltYWdlT3ZlcmxheUNvbnRyb2xsZXItPmRvY3Vt
ZW50RGV0YWNoZWQoKnRoaXMpOworICAgICAgICBpZiAoYXV0byogdmFsaWRhdGlvbk1lc3NhZ2VD
bGllbnQgPSBwYWdlLT52YWxpZGF0aW9uTWVzc2FnZUNsaWVudCgpKQorICAgICAgICAgICAgdmFs
aWRhdGlvbk1lc3NhZ2VDbGllbnQtPmRvY3VtZW50RGV0YWNoZWQoKnRoaXMpOworICAgIH0KKwor
ICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZG9jdW1lbnREZXRhY2hlZCgqdGhpcyk7CisK
KyAgICBjb21tb25UZWFyZG93bigpOworCisjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyAgICBp
ZiAobV90b3VjaEV2ZW50VGFyZ2V0cyAmJiBtX3RvdWNoRXZlbnRUYXJnZXRzLT5zaXplKCkgJiYg
cGFyZW50RG9jdW1lbnQoKSkKKyAgICAgICAgcGFyZW50RG9jdW1lbnQoKS0+ZGlkUmVtb3ZlRXZl
bnRUYXJnZXROb2RlKCp0aGlzKTsKKyNlbmRpZgorCisgICAgaWYgKG1fd2hlZWxFdmVudFRhcmdl
dHMgJiYgbV93aGVlbEV2ZW50VGFyZ2V0cy0+c2l6ZSgpICYmIHBhcmVudERvY3VtZW50KCkpCisg
ICAgICAgIHBhcmVudERvY3VtZW50KCktPmRpZFJlbW92ZUV2ZW50VGFyZ2V0Tm9kZSgqdGhpcyk7
CisKKyAgICBpZiAobV9tZWRpYVF1ZXJ5TWF0Y2hlcikKKyAgICAgICAgbV9tZWRpYVF1ZXJ5TWF0
Y2hlci0+ZG9jdW1lbnREZXN0cm95ZWQoKTsKKworI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFD
S19UQVJHRVQpCisgICAgaWYgKCFtX2NsaWVudFRvSURNYXAuaXNFbXB0eSgpICYmIHBhZ2UoKSkg
eworICAgICAgICBmb3IgKGF1dG8qIGNsaWVudCA6IGNvcHlUb1ZlY3RvcihtX2NsaWVudFRvSURN
YXAua2V5cygpKSkKKyAgICAgICAgICAgIHJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50
KCpjbGllbnQpOworICAgIH0KKyNlbmRpZgorCisgICAgbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+
c3RvcFVudXNlZFByZWxvYWRzVGltZXIoKTsKKworICAgIGlmIChwYWdlKCkgJiYgIW1fbWVkaWFT
dGF0ZS5pc0VtcHR5KCkpIHsKKyAgICAgICAgbV9tZWRpYVN0YXRlID0gTWVkaWFQcm9kdWNlcjo6
SXNOb3RQbGF5aW5nOworICAgICAgICBwYWdlKCktPnVwZGF0ZUlzUGxheWluZ01lZGlhKCk7Cisg
ICAgfQorCisgICAgc2VsZWN0aW9uKCkud2lsbEJlUmVtb3ZlZEZyb21GcmFtZSgpOworICAgIGVk
aXRvcigpLmNsZWFyKCk7CisgICAgZGV0YWNoRnJvbUZyYW1lKCk7CisKKyNpZiBFTkFCTEUoQ1NT
X1BBSU5USU5HX0FQSSkKKyAgICBmb3IgKGF1dG8mIHNjb3BlIDogbV9wYWludFdvcmtsZXRHbG9i
YWxTY29wZXMudmFsdWVzKCkpCisgICAgICAgIHNjb3BlLT5wcmVwYXJlRm9yRGVzdHJ1Y3Rpb24o
KTsKKyAgICBtX3BhaW50V29ya2xldEdsb2JhbFNjb3Blcy5jbGVhcigpOworI2VuZGlmCisKKyAg
ICBtX2hhc1ByZXBhcmVkRm9yRGVzdHJ1Y3Rpb24gPSB0cnVlOworCisgICAgLy8gTm90ZSB0aGF0
IG1fYmFja0ZvcndhcmRDYWNoZVN0YXRlIGNhbiBiZSBEb2N1bWVudDo6QWJvdXRUb0VudGVyQmFj
a0ZvcndhcmRDYWNoZSBpZiBvdXIgZnJhbWUKKyAgICAvLyB3YXMgcmVtb3ZlZCBpbiBhbiBvbnBh
Z2VoaWRlIGV2ZW50IGhhbmRsZXIgZmlyZWQgd2hlbiB0aGUgdG9wLWxldmVsIGZyYW1lIGlzCisg
ICAgLy8gYWJvdXQgdG8gZW50ZXIgdGhlIGJhY2svZm9yd2FyZCBjYWNoZS4KKyAgICBSRUxFQVNF
X0FTU0VSVChtX2JhY2tGb3J3YXJkQ2FjaGVTdGF0ZSAhPSBEb2N1bWVudDo6SW5CYWNrRm9yd2Fy
ZENhY2hlKTsKK30KKwordm9pZCBEb2N1bWVudDo6cmVtb3ZlQWxsRXZlbnRMaXN0ZW5lcnMoKQor
eworICAgIEV2ZW50VGFyZ2V0OjpyZW1vdmVBbGxFdmVudExpc3RlbmVycygpOworCisgICAgaWYg
KG1fZG9tV2luZG93KQorICAgICAgICBtX2RvbVdpbmRvdy0+cmVtb3ZlQWxsRXZlbnRMaXN0ZW5l
cnMoKTsKKworI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorICAgIGNsZWFyVG91Y2hFdmVu
dEhhbmRsZXJzQW5kTGlzdGVuZXJzKCk7CisjZW5kaWYKKyAgICBmb3IgKFJlZlB0ciBub2RlID0g
Zmlyc3RDaGlsZCgpOyBub2RlOyBub2RlID0gTm9kZVRyYXZlcnNhbDo6bmV4dCgqbm9kZSkpCisg
ICAgICAgIG5vZGUtPnJlbW92ZUFsbEV2ZW50TGlzdGVuZXJzKCk7CisKKyNpZiBFTkFCTEUoVE9V
Q0hfRVZFTlRTKQorICAgIG1fdG91Y2hFdmVudFRhcmdldHMgPSBudWxscHRyOworI2VuZGlmCisg
ICAgbV93aGVlbEV2ZW50VGFyZ2V0cyA9IG51bGxwdHI7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnN1
c3BlbmREZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMoKQoreworICAgIGlmIChtX2Fy
ZURldmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRlc1N1c3BlbmRlZCkKKyAgICAgICAgcmV0
dXJuOworICAgIG1fYXJlRGV2aWNlTW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzU3VzcGVuZGVk
ID0gdHJ1ZTsKKyNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKSAmJiBQTEFURk9STShJT1Nf
RkFNSUxZKQorICAgIGlmIChtX2RldmljZU1vdGlvbkNvbnRyb2xsZXIpCisgICAgICAgIG1fZGV2
aWNlTW90aW9uQ29udHJvbGxlci0+c3VzcGVuZFVwZGF0ZXMoKTsKKyAgICBpZiAobV9kZXZpY2VP
cmllbnRhdGlvbkNvbnRyb2xsZXIpCisgICAgICAgIG1fZGV2aWNlT3JpZW50YXRpb25Db250cm9s
bGVyLT5zdXNwZW5kVXBkYXRlcygpOworI2VuZGlmCit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc3Vt
ZURldmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRlcygpCit7CisgICAgaWYgKCFtX2FyZURl
dmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRlc1N1c3BlbmRlZCkKKyAgICAgICAgcmV0dXJu
OworICAgIG1fYXJlRGV2aWNlTW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzU3VzcGVuZGVkID0g
ZmFsc2U7CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikgJiYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyAgICBpZiAobV9kZXZpY2VNb3Rpb25Db250cm9sbGVyKQorICAgICAgICBtX2Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXItPnJlc3VtZVVwZGF0ZXMoKTsKKyAgICBpZiAobV9kZXZpY2VPcmll
bnRhdGlvbkNvbnRyb2xsZXIpCisgICAgICAgIG1fZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVy
LT5yZXN1bWVVcGRhdGVzKCk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6c3VzcGVuZEZv
bnRMb2FkaW5nKCkKK3sKKyAgICBtX2ZvbnRMb2FkZXItPnN1c3BlbmRGb250TG9hZGluZygpOwor
fQorCitib29sIERvY3VtZW50OjpzaG91bGRCeXBhc3NNYWluV29ybGRDb250ZW50U2VjdXJpdHlQ
b2xpY3koKSBjb25zdAoreworICAgIC8vIEJ5cGFzcyB0aGlzIHBvbGljeSB3aGVuIHRoZSB3b3Js
ZCBpcyBrbm93biwgYW5kIGl0IG5vdCB0aGUgbm9ybWFsIHdvcmxkLgorICAgIEpTQzo6Vk0mIHZt
ID0gY29tbW9uVk0oKTsKKyAgICBhdXRvKiBjYWxsRnJhbWUgPSB2bS50b3BDYWxsRnJhbWU7Cisg
ICAgcmV0dXJuIGNhbGxGcmFtZSAmJiBjYWxsRnJhbWUgIT0gSlNDOjpDYWxsRnJhbWU6Om5vQ2Fs
bGVyKCkgJiYgIWN1cnJlbnRXb3JsZCgqY2FsbEZyYW1lLT5sZXhpY2FsR2xvYmFsT2JqZWN0KHZt
KSkuaXNOb3JtYWwoKTsKK30KKwordm9pZCBEb2N1bWVudDo6cGxhdGZvcm1TdXNwZW5kT3JTdG9w
QWN0aXZlRE9NT2JqZWN0cygpCit7CisjaWYgRU5BQkxFKENPTlRFTlRfQ0hBTkdFX09CU0VSVkVS
KQorICAgIGNvbnRlbnRDaGFuZ2VPYnNlcnZlcigpLmRpZFN1c3BlbmRBY3RpdmVET01PYmplY3Rz
KCk7CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMo
UmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCit7CisgICAgaWYgKG1fZG9jdW1lbnRUYXNrR3JvdXAp
CisgICAgICAgIG1fZG9jdW1lbnRUYXNrR3JvdXAtPnN1c3BlbmQoKTsKKyAgICBTY3JpcHRFeGVj
dXRpb25Db250ZXh0OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyh3aHkpOworICAgIHN1c3BlbmRE
ZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMoKTsKKyAgICBwbGF0Zm9ybVN1c3BlbmRP
clN0b3BBY3RpdmVET01PYmplY3RzKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc3VtZUFjdGl2
ZURPTU9iamVjdHMoUmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCit7CisgICAgaWYgKG1fZG9jdW1l
bnRUYXNrR3JvdXApCisgICAgICAgIG1fZG9jdW1lbnRUYXNrR3JvdXAtPnJlc3VtZSgpOworICAg
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnJlc3VtZUFjdGl2ZURPTU9iamVjdHMod2h5KTsKKyAg
ICByZXN1bWVEZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMoKTsKKyAgICAvLyBGSVhN
RTogRm9yIGlPUywgZG8gd2UgbmVlZCB0byBhZGQgY29udGVudCBjaGFuZ2Ugb2JzZXJ2ZXJzIHRo
YXQgd2VyZSByZW1vdmVkIGluIERvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cygpPwor
fQorCit2b2lkIERvY3VtZW50OjpzdG9wQWN0aXZlRE9NT2JqZWN0cygpCit7CisgICAgaWYgKG1f
ZG9jdW1lbnRUYXNrR3JvdXApCisgICAgICAgIG1fZG9jdW1lbnRUYXNrR3JvdXAtPm1hcmtBc1Jl
YWR5VG9TdG9wKCk7CisgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6c3RvcEFjdGl2ZURPTU9i
amVjdHMoKTsKKyAgICBwbGF0Zm9ybVN1c3BlbmRPclN0b3BBY3RpdmVET01PYmplY3RzKCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OmNsZWFyQVhPYmplY3RDYWNoZSgpCit7CisgICAgQVNTRVJUKCZ0
b3BEb2N1bWVudCgpID09IHRoaXMpOworICAgIC8vIENsZWFyIHRoZSBjYWNoZSBtZW1iZXIgdmFy
aWFibGUgYmVmb3JlIGNhbGxpbmcgZGVsZXRlIGJlY2F1c2UgYXR0ZW1wdHMKKyAgICAvLyBhcmUg
bWFkZSB0byBhY2Nlc3MgaXQgZHVyaW5nIGRlc3RydWN0aW9uLgorICAgIG1fYXhPYmplY3RDYWNo
ZSA9IG51bGxwdHI7Cit9CisKK0FYT2JqZWN0Q2FjaGUqIERvY3VtZW50OjpleGlzdGluZ0FYT2Jq
ZWN0Q2FjaGVTbG93KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzRXZlckNyZWF0ZWRBbkFYT2Jq
ZWN0Q2FjaGUpOworICAgIHJldHVybiB0b3BEb2N1bWVudCgpLm1fYXhPYmplY3RDYWNoZS5nZXQo
KTsKK30KKworQVhPYmplY3RDYWNoZSogRG9jdW1lbnQ6OmF4T2JqZWN0Q2FjaGUoKSBjb25zdAor
eworICAgIGlmICghQVhPYmplY3RDYWNoZTo6YWNjZXNzaWJpbGl0eUVuYWJsZWQoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisgICAgCisgICAgLy8gVGhlIG9ubHkgZG9jdW1lbnQgdGhhdCBh
Y3R1YWxseSBoYXMgYSBBWE9iamVjdENhY2hlIGlzIHRoZSB0b3AtbGV2ZWwKKyAgICAvLyBkb2N1
bWVudC4gIFRoaXMgaXMgYmVjYXVzZSB3ZSBuZWVkIHRvIGJlIGFibGUgdG8gZ2V0IGZyb20gYW55
IFdlYkNvcmVBWE9iamVjdAorICAgIC8vIHRvIGFueSBvdGhlciBXZWJDb3JlQVhPYmplY3Qgb24g
dGhlIHNhbWUgcGFnZS4gIFVzaW5nIGEgc2luZ2xlIGNhY2hlIGFsbG93cworICAgIC8vIGxvb2t1
cHMgYWNyb3NzIG5lc3RlZCB3ZWJhcmVhcyAoaS5lLiBtdWx0aXBsZSBkb2N1bWVudHMpLgorICAg
IERvY3VtZW50JiB0b3BEb2N1bWVudCA9IHRoaXMtPnRvcERvY3VtZW50KCk7CisKKyAgICAvLyBJ
ZiB0aGUgZG9jdW1lbnQgaGFzIGFscmVhZHkgYmVlbiBkZXRhY2hlZCwgZG8gbm90IG1ha2UgYSBu
ZXcgYXhPYmplY3RDYWNoZS4KKyAgICBpZiAoIXRvcERvY3VtZW50Lmhhc0xpdmluZ1JlbmRlclRy
ZWUoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBBU1NFUlQoJnRvcERvY3VtZW50
ID09IHRoaXMgfHwgIW1fYXhPYmplY3RDYWNoZSk7CisgICAgaWYgKCF0b3BEb2N1bWVudC5tX2F4
T2JqZWN0Q2FjaGUpIHsKKyAgICAgICAgdG9wRG9jdW1lbnQubV9heE9iamVjdENhY2hlID0gbWFr
ZVVuaXF1ZTxBWE9iamVjdENhY2hlPih0b3BEb2N1bWVudCk7CisgICAgICAgIGhhc0V2ZXJDcmVh
dGVkQW5BWE9iamVjdENhY2hlID0gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIHRvcERvY3VtZW50
Lm1fYXhPYmplY3RDYWNoZS5nZXQoKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0VmlzdWFsbHlP
cmRlcmVkKCkKK3sKKyAgICBtX3Zpc3VhbGx5T3JkZXJlZCA9IHRydWU7CisgICAgaWYgKHJlbmRl
clZpZXcoKSkKKyAgICAgICAgcmVuZGVyVmlldygpLT5tdXRhYmxlU3R5bGUoKS5zZXRSVExPcmRl
cmluZyhPcmRlcjo6VmlzdWFsKTsKK30KKworUmVmPERvY3VtZW50UGFyc2VyPiBEb2N1bWVudDo6
Y3JlYXRlUGFyc2VyKCkKK3sKKyAgICAvLyBGSVhNRTogdGhpcyBzaG91bGQgcHJvYmFibHkgcGFz
cyB0aGUgZnJhbWUgaW5zdGVhZAorICAgIHJldHVybiBYTUxEb2N1bWVudFBhcnNlcjo6Y3JlYXRl
KCp0aGlzLCB2aWV3KCkpOworfQorCitIaWdobGlnaHRSZWdpc3RlciYgRG9jdW1lbnQ6OmhpZ2hs
aWdodFJlZ2lzdGVyKCkKK3sKKyAgICBpZiAoIW1faGlnaGxpZ2h0UmVnaXN0ZXIpCisgICAgICAg
IG1faGlnaGxpZ2h0UmVnaXN0ZXIgPSBIaWdobGlnaHRSZWdpc3Rlcjo6Y3JlYXRlKCk7CisgICAg
cmV0dXJuICptX2hpZ2hsaWdodFJlZ2lzdGVyOworfQorI2lmIEVOQUJMRShBUFBfSElHSExJR0hU
UykKK0hpZ2hsaWdodFJlZ2lzdGVyJiBEb2N1bWVudDo6YXBwSGlnaGxpZ2h0UmVnaXN0ZXIoKQor
eworICAgIGlmICghbV9hcHBIaWdobGlnaHRSZWdpc3RlcikgeworICAgICAgICBtX2FwcEhpZ2hs
aWdodFJlZ2lzdGVyID0gSGlnaGxpZ2h0UmVnaXN0ZXI6OmNyZWF0ZSgpOworICAgICAgICBpZiAo
YXV0byogY3VycmVudFBhZ2UgPSBwYWdlKCkpCisgICAgICAgICAgICBtX2FwcEhpZ2hsaWdodFJl
Z2lzdGVyLT5zZXRIaWdobGlnaHRWaXNpYmlsaXR5KGN1cnJlbnRQYWdlLT5jaHJvbWUoKS5jbGll
bnQoKS5hcHBIaWdobGlnaHRzVmlzaWJsaWxpdHkoKSk7CisgICAgfQorICAgIHJldHVybiAqbV9h
cHBIaWdobGlnaHRSZWdpc3RlcjsKK30KKworQXBwSGlnaGxpZ2h0U3RvcmFnZSYgRG9jdW1lbnQ6
OmFwcEhpZ2hsaWdodFN0b3JhZ2UoKQoreworICAgIGlmICghbV9hcHBIaWdobGlnaHRTdG9yYWdl
KQorICAgICAgICBtX2FwcEhpZ2hsaWdodFN0b3JhZ2UgPSBtYWtlVW5pcXVlPEFwcEhpZ2hsaWdo
dFN0b3JhZ2U+KCp0aGlzKTsKKyAgICByZXR1cm4gKm1fYXBwSGlnaGxpZ2h0U3RvcmFnZTsKK30K
KyNlbmRpZgordm9pZCBEb2N1bWVudDo6Y29sbGVjdFJhbmdlRGF0YUZyb21SZWdpc3RlcihWZWN0
b3I8V2Vha1B0cjxIaWdobGlnaHRSYW5nZURhdGE+PiYgcmFuZ2VzRGF0YSwgY29uc3QgSGlnaGxp
Z2h0UmVnaXN0ZXImIGhpZ2hsaWdodFJlZ2lzdGVyKQoreworICAgIGZvciAoYXV0byYgaGlnaGxp
Z2h0IDogaGlnaGxpZ2h0UmVnaXN0ZXIubWFwKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiByYW5n
ZURhdGEgOiBoaWdobGlnaHQudmFsdWUtPnJhbmdlc0RhdGEoKSkgeworICAgICAgICAgICAgaWYg
KHJhbmdlRGF0YS0+c3RhcnRQb3NpdGlvbiAmJiByYW5nZURhdGEtPmVuZFBvc2l0aW9uKQorICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgaWYgKCZyYW5nZURhdGEtPnJhbmdl
LT5zdGFydENvbnRhaW5lcigpLnRyZWVTY29wZSgpICE9ICZyYW5nZURhdGEtPnJhbmdlLT5lbmRD
b250YWluZXIoKS50cmVlU2NvcGUoKSkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAg
ICAgICAgIHJhbmdlc0RhdGEuYXBwZW5kKG1ha2VXZWFrUHRyKHJhbmdlRGF0YS5wdHIoKSkpOwor
ICAgICAgICB9CisgICAgfQorfQorCit2b2lkIERvY3VtZW50Ojp1cGRhdGVIaWdobGlnaHRQb3Np
dGlvbnMoKQoreworICAgIFZlY3RvcjxXZWFrUHRyPEhpZ2hsaWdodFJhbmdlRGF0YT4+IHJhbmdl
c0RhdGE7CisgICAgaWYgKG1faGlnaGxpZ2h0UmVnaXN0ZXIpCisgICAgICAgIGNvbGxlY3RSYW5n
ZURhdGFGcm9tUmVnaXN0ZXIocmFuZ2VzRGF0YSwgKm1faGlnaGxpZ2h0UmVnaXN0ZXIuZ2V0KCkp
OworI2lmIEVOQUJMRShBUFBfSElHSExJR0hUUykKKyAgICBpZiAobV9hcHBIaWdobGlnaHRSZWdp
c3RlcikKKyAgICAgICAgY29sbGVjdFJhbmdlRGF0YUZyb21SZWdpc3RlcihyYW5nZXNEYXRhLCAq
bV9hcHBIaWdobGlnaHRSZWdpc3Rlci5nZXQoKSk7CisjZW5kaWYKKworICAgIGZvciAoYXV0byYg
d2Vha1JhbmdlRGF0YSA6IHJhbmdlc0RhdGEpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJhbmdlRGF0
YSA9IHdlYWtSYW5nZURhdGEuZ2V0KCkpIHsKKyAgICAgICAgICAgIFZpc2libGVTZWxlY3Rpb24g
dmlzaWJsZVNlbGVjdGlvbihyYW5nZURhdGEtPnJhbmdlKTsKKyAgICAgICAgICAgIFBvc2l0aW9u
IHN0YXJ0UG9zaXRpb247CisgICAgICAgICAgICBQb3NpdGlvbiBlbmRQb3NpdGlvbjsKKyAgICAg
ICAgICAgIGlmICghcmFuZ2VEYXRhLT5zdGFydFBvc2l0aW9uLmhhc192YWx1ZSgpKQorICAgICAg
ICAgICAgICAgIHN0YXJ0UG9zaXRpb24gPSB2aXNpYmxlU2VsZWN0aW9uLnZpc2libGVTdGFydCgp
LmRlZXBFcXVpdmFsZW50KCk7CisgICAgICAgICAgICBpZiAoIXJhbmdlRGF0YS0+ZW5kUG9zaXRp
b24uaGFzX3ZhbHVlKCkpCisgICAgICAgICAgICAgICAgZW5kUG9zaXRpb24gPSB2aXNpYmxlU2Vs
ZWN0aW9uLnZpc2libGVFbmQoKS5kZWVwRXF1aXZhbGVudCgpOworICAgICAgICAgICAgaWYgKCF3
ZWFrUmFuZ2VEYXRhLmdldCgpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAg
ICAgCisgICAgICAgICAgICByYW5nZURhdGEtPnN0YXJ0UG9zaXRpb24gPSBzdGFydFBvc2l0aW9u
OworICAgICAgICAgICAgcmFuZ2VEYXRhLT5lbmRQb3NpdGlvbiA9IGVuZFBvc2l0aW9uOworICAg
ICAgICB9CisgICAgfQorfQorCitTY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIqIERvY3VtZW50Ojpz
Y3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSBjb25zdAoreworICAgIHJldHVybiBwYXJzZXIoKSA/
IHBhcnNlcigpLT5hc1NjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpIDogbnVsbHB0cjsKK30KKwor
RXhjZXB0aW9uT3I8UmVmUHRyPFdpbmRvd1Byb3h5Pj4gRG9jdW1lbnQ6Om9wZW5Gb3JCaW5kaW5n
cyhET01XaW5kb3cmIGFjdGl2ZVdpbmRvdywgRE9NV2luZG93JiBmaXJzdFdpbmRvdywgY29uc3Qg
U3RyaW5nJiB1cmwsIGNvbnN0IEF0b21TdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgZmVhdHVy
ZXMpCit7CisgICAgaWYgKCFtX2RvbVdpbmRvdykKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRBY2Nlc3NFcnJvciB9OworCisgICAgcmV0dXJuIG1fZG9tV2luZG93LT5vcGVuKGFj
dGl2ZVdpbmRvdywgZmlyc3RXaW5kb3csIHVybCwgbmFtZSwgZmVhdHVyZXMpOworfQorCitFeGNl
cHRpb25PcjxEb2N1bWVudCY+IERvY3VtZW50OjpvcGVuRm9yQmluZGluZ3MoRG9jdW1lbnQqIHJl
c3BvbnNpYmxlRG9jdW1lbnQsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYpCit7CisgICAg
aWYgKCFpc0hUTUxEb2N1bWVudCgpIHx8IG1fdGhyb3dPbkR5bmFtaWNNYXJrdXBJbnNlcnRpb25D
b3VudCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yIH07CisK
KyAgICBhdXRvIHJlc3VsdCA9IG9wZW4ocmVzcG9uc2libGVEb2N1bWVudCk7CisgICAgaWYgKFVO
TElLRUxZKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkpCisgICAgICAgIHJldHVybiByZXN1bHQucmVs
ZWFzZUV4Y2VwdGlvbigpOworCisgICAgcmV0dXJuICp0aGlzOworfQorCitFeGNlcHRpb25Pcjx2
b2lkPiBEb2N1bWVudDo6b3BlbihEb2N1bWVudCogcmVzcG9uc2libGVEb2N1bWVudCkKK3sKKyAg
ICBpZiAocmVzcG9uc2libGVEb2N1bWVudCAmJiAhcmVzcG9uc2libGVEb2N1bWVudC0+c2VjdXJp
dHlPcmlnaW4oKS5pc1NhbWVPcmlnaW5BcyhzZWN1cml0eU9yaWdpbigpKSkKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IFNlY3VyaXR5RXJyb3IgfTsKKworICAgIGlmIChtX2lnbm9yZU9wZW5z
RHVyaW5nVW5sb2FkQ291bnQpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBpZiAobV9hY3Rp
dmVQYXJzZXJXYXNBYm9ydGVkKQorICAgICAgICByZXR1cm4geyB9OworCisgICAgaWYgKG1fZnJh
bWUpIHsKKyAgICAgICAgaWYgKFNjcmlwdGFibGVEb2N1bWVudFBhcnNlciogcGFyc2VyID0gc2Ny
aXB0YWJsZURvY3VtZW50UGFyc2VyKCkpIHsKKyAgICAgICAgICAgIGlmIChwYXJzZXItPmlzUGFy
c2luZygpKSB7CisgICAgICAgICAgICAgICAgLy8gRklYTUU6IEhUTUw1IGRvZXNuJ3QgdGVsbCB1
cyB0byBjaGVjayB0aGlzLCBpdCBtaWdodCBub3QgYmUgY29ycmVjdC4KKyAgICAgICAgICAgICAg
ICBpZiAocGFyc2VyLT5pc0V4ZWN1dGluZ1NjcmlwdCgpKQorICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4geyB9OworCisgICAgICAgICAgICAgICAgaWYgKCFwYXJzZXItPndhc0NyZWF0ZWRCeVNj
cmlwdCgpICYmIHBhcnNlci0+aGFzSW5zZXJ0aW9uUG9pbnQoKSkKKyAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHsgfTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmICht
X2ZyYW1lLT5sb2FkZXIoKS5wb2xpY3lDaGVja2VyKCkuZGVsZWdhdGVJc0RlY2lkaW5nTmF2aWdh
dGlvblBvbGljeSgpKQorICAgICAgICAgICAgbV9mcmFtZS0+bG9hZGVyKCkucG9saWN5Q2hlY2tl
cigpLnN0b3BDaGVjaygpOworICAgICAgICBpZiAobV9mcmFtZSAmJiBtX2ZyYW1lLT5sb2FkZXIo
KS5zdGF0ZSgpID09IEZyYW1lU3RhdGU6OlByb3Zpc2lvbmFsKQorICAgICAgICAgICAgbV9mcmFt
ZS0+bG9hZGVyKCkuc3RvcEFsbExvYWRlcnMoKTsKKyAgICB9CisKKyAgICByZW1vdmVBbGxFdmVu
dExpc3RlbmVycygpOworCisgICAgaWYgKHJlc3BvbnNpYmxlRG9jdW1lbnQgJiYgaXNGdWxseUFj
dGl2ZSgpKSB7CisgICAgICAgIGF1dG8gbmV3VVJMID0gcmVzcG9uc2libGVEb2N1bWVudC0+dXJs
KCk7CisgICAgICAgIGlmIChyZXNwb25zaWJsZURvY3VtZW50ICE9IHRoaXMpCisgICAgICAgICAg
ICBuZXdVUkwucmVtb3ZlRnJhZ21lbnRJZGVudGlmaWVyKCk7CisgICAgICAgIHNldFVSTChuZXdV
UkwpOworICAgICAgICBhdXRvIG5ld0Nvb2tpZVVSTCA9IHJlc3BvbnNpYmxlRG9jdW1lbnQtPmNv
b2tpZVVSTCgpOworICAgICAgICBpZiAocmVzcG9uc2libGVEb2N1bWVudCAhPSB0aGlzKQorICAg
ICAgICAgICAgbmV3Q29va2llVVJMLnJlbW92ZUZyYWdtZW50SWRlbnRpZmllcigpOworICAgICAg
ICBzZXRDb29raWVVUkwobmV3Q29va2llVVJMKTsKKyAgICAgICAgc2V0U2VjdXJpdHlPcmlnaW5Q
b2xpY3kocmVzcG9uc2libGVEb2N1bWVudC0+c2VjdXJpdHlPcmlnaW5Qb2xpY3koKSk7CisgICAg
fQorCisgICAgaW1wbGljaXRPcGVuKCk7CisgICAgaWYgKFNjcmlwdGFibGVEb2N1bWVudFBhcnNl
ciogcGFyc2VyID0gc2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkpCisgICAgICAgIHBhcnNlci0+
c2V0V2FzQ3JlYXRlZEJ5U2NyaXB0KHRydWUpOworCisgICAgaWYgKG1fZnJhbWUpCisgICAgICAg
IG1fZnJhbWUtPmxvYWRlcigpLmRpZEV4cGxpY2l0T3BlbigpOworCisgICAgcmV0dXJuIHsgfTsK
K30KKworLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy8jZnVsbHktYWN0aXZlCitib29s
IERvY3VtZW50Ojppc0Z1bGx5QWN0aXZlKCkgY29uc3QKK3sKKyAgICBhdXRvKiBmcmFtZSA9IHRo
aXMtPmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSB8fCBmcmFtZS0+ZG9jdW1lbnQoKSAhPSB0aGlz
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgYXV0byogcGFyZW50RnJhbWUgPSBmcmFtZS0+
dHJlZSgpLnBhcmVudCgpOworICAgIHJldHVybiBwYXJlbnRGcmFtZSAmJiBwYXJlbnRGcmFtZS0+
ZG9jdW1lbnQoKSAmJiBwYXJlbnRGcmFtZS0+ZG9jdW1lbnQoKS0+aXNGdWxseUFjdGl2ZSgpOwor
fQorCit2b2lkIERvY3VtZW50OjpkZXRhY2hQYXJzZXIoKQoreworICAgIGlmICghbV9wYXJzZXIp
CisgICAgICAgIHJldHVybjsKKyAgICBtX3BhcnNlci0+ZGV0YWNoKCk7CisgICAgbV9wYXJzZXIg
PSBudWxscHRyOworfQorCit2b2lkIERvY3VtZW50OjpjYW5jZWxQYXJzaW5nKCkKK3sKKyAgICBp
ZiAoIW1fcGFyc2VyKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAobV9wYXJzZXItPnByb2Nl
c3NpbmdEYXRhKCkpCisgICAgICAgIG1fYWN0aXZlUGFyc2VyV2FzQWJvcnRlZCA9IHRydWU7CisK
KyAgICAvLyBXZSBoYXZlIHRvIGNsZWFyIHRoZSBwYXJzZXIgdG8gYXZvaWQgcG9zc2libHkgdHJp
Z2dlcmluZworICAgIC8vIHRoZSBvbmxvYWQgaGFuZGxlciB3aGVuIGNsb3NpbmcgYXMgYSBzaWRl
IGVmZmVjdCBvZiBhIGNhbmNlbC1zdHlsZQorICAgIC8vIGNoYW5nZSwgc3VjaCBhcyBvcGVuaW5n
IGEgbmV3IGRvY3VtZW50IG9yIGNsb3NpbmcgdGhlIHdpbmRvdyB3aGlsZQorICAgIC8vIHN0aWxs
IHBhcnNpbmcKKyAgICBkZXRhY2hQYXJzZXIoKTsKKyAgICBleHBsaWNpdENsb3NlKCk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OmltcGxpY2l0T3BlbigpCit7CisgICAgcmVtb3ZlQ2hpbGRyZW4oKTsK
KworICAgIHNldENvbXBhdGliaWxpdHlNb2RlKERvY3VtZW50Q29tcGF0aWJpbGl0eU1vZGU6Ok5v
UXVpcmtzTW9kZSk7CisKKyAgICBkZXRhY2hQYXJzZXIoKTsKKyAgICBtX3BhcnNlciA9IGNyZWF0
ZVBhcnNlcigpOworCisgICAgaWYgKGhhc0FjdGl2ZVBhcnNlcllpZWxkVG9rZW4oKSkKKyAgICAg
ICAgbV9wYXJzZXItPmRpZEJlZ2luWWllbGRpbmdQYXJzZXIoKTsKKworICAgIHNldFBhcnNpbmco
dHJ1ZSk7CisgICAgc2V0UmVhZHlTdGF0ZShMb2FkaW5nKTsKK30KKworc3RkOjp1bmlxdWVfcHRy
PEZvbnRMb2FkUmVxdWVzdD4gRG9jdW1lbnQ6OmZvbnRMb2FkUmVxdWVzdChTdHJpbmcmIHVybCwg
Ym9vbCBpc1NWRywgYm9vbCBpc0luaXRpYXRpbmdFbGVtZW50SW5Vc2VyQWdlbnRTaGFkb3dUcmVl
LCBMb2FkZWRGcm9tT3BhcXVlU291cmNlIGxvYWRlZEZyb21PcGFxdWVTb3VyY2UpCit7CisgICAg
YXV0byogY2FjaGVkRm9udCA9IG1fZm9udExvYWRlci0+Y2FjaGVkRm9udChjb21wbGV0ZVVSTCh1
cmwpLCBpc1NWRywgaXNJbml0aWF0aW5nRWxlbWVudEluVXNlckFnZW50U2hhZG93VHJlZSwgbG9h
ZGVkRnJvbU9wYXF1ZVNvdXJjZSk7CisgICAgcmV0dXJuIGNhY2hlZEZvbnQgPyBtYWtlVW5pcXVl
PENhY2hlZEZvbnRMb2FkUmVxdWVzdD4oKmNhY2hlZEZvbnQpIDogbnVsbHB0cjsKK30KKwordm9p
ZCBEb2N1bWVudDo6YmVnaW5Mb2FkaW5nRm9udFNvb24oRm9udExvYWRSZXF1ZXN0JiByZXF1ZXN0
KQoreworICAgIEFTU0VSVChpczxDYWNoZWRGb250TG9hZFJlcXVlc3Q+KHJlcXVlc3QpKTsKKyAg
ICBhdXRvJiBmb250ID0gZG93bmNhc3Q8Q2FjaGVkRm9udExvYWRSZXF1ZXN0PihyZXF1ZXN0KS5j
YWNoZWRGb250KCk7CisgICAgbV9mb250TG9hZGVyLT5iZWdpbkxvYWRpbmdGb250U29vbihmb250
KTsKK30KKworSFRNTEJvZHlFbGVtZW50KiBEb2N1bWVudDo6Ym9keSgpIGNvbnN0Cit7CisgICAg
YXV0byogZWxlbWVudCA9IGRvY3VtZW50RWxlbWVudCgpOworICAgIGlmICghaXM8SFRNTEh0bWxF
bGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIGNo
aWxkcmVuT2ZUeXBlPEhUTUxCb2R5RWxlbWVudD4oKmVsZW1lbnQpLmZpcnN0KCk7Cit9CisKK0hU
TUxFbGVtZW50KiBEb2N1bWVudDo6Ym9keU9yRnJhbWVzZXQoKSBjb25zdAoreworICAgIC8vIFJl
dHVybiB0aGUgZmlyc3QgYm9keSBvciBmcmFtZXNldCBjaGlsZCBvZiB0aGUgaHRtbCBlbGVtZW50
LgorICAgIGF1dG8qIGVsZW1lbnQgPSBkb2N1bWVudEVsZW1lbnQoKTsKKyAgICBpZiAoIWlzPEhU
TUxIdG1sRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIGZv
ciAoYXV0byYgY2hpbGQgOiBjaGlsZHJlbk9mVHlwZTxIVE1MRWxlbWVudD4oKmVsZW1lbnQpKSB7
CisgICAgICAgIGlmIChpczxIVE1MQm9keUVsZW1lbnQ+KGNoaWxkKSB8fCBpczxIVE1MRnJhbWVT
ZXRFbGVtZW50PihjaGlsZCkpCisgICAgICAgICAgICByZXR1cm4gJmNoaWxkOworICAgIH0KKyAg
ICByZXR1cm4gbnVsbHB0cjsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gRG9jdW1lbnQ6OnNldEJv
ZHlPckZyYW1lc2V0KFJlZlB0cjxIVE1MRWxlbWVudD4mJiBuZXdCb2R5KQoreworICAgIGlmICgh
aXM8SFRNTEJvZHlFbGVtZW50PihuZXdCb2R5KSAmJiAhaXM8SFRNTEZyYW1lU2V0RWxlbWVudD4o
bmV3Qm9keSkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBIaWVyYXJjaHlSZXF1ZXN0RXJy
b3IgfTsKKworICAgIFJlZlB0ciBjdXJyZW50Qm9keSA9IGJvZHlPckZyYW1lc2V0KCk7CisgICAg
aWYgKG5ld0JvZHkgPT0gY3VycmVudEJvZHkpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBp
ZiAoIW1fZG9jdW1lbnRFbGVtZW50KQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSGllcmFy
Y2h5UmVxdWVzdEVycm9yIH07CisKKyAgICBpZiAoY3VycmVudEJvZHkpCisgICAgICAgIHJldHVy
biBtX2RvY3VtZW50RWxlbWVudC0+cmVwbGFjZUNoaWxkKCpuZXdCb2R5LCAqY3VycmVudEJvZHkp
OworICAgIHJldHVybiBtX2RvY3VtZW50RWxlbWVudC0+YXBwZW5kQ2hpbGQoKm5ld0JvZHkpOwor
fQorCitMb2NhdGlvbiogRG9jdW1lbnQ6OmxvY2F0aW9uKCkgY29uc3QKK3sKKyAgICBhdXRvKiB3
aW5kb3cgPSBkb21XaW5kb3coKTsKKyAgICByZXR1cm4gd2luZG93ID8gJndpbmRvdy0+bG9jYXRp
b24oKSA6IG51bGxwdHI7Cit9CisKK0hUTUxIZWFkRWxlbWVudCogRG9jdW1lbnQ6OmhlYWQoKQor
eworICAgIGlmIChhdXRvIGVsZW1lbnQgPSBkb2N1bWVudEVsZW1lbnQoKSkKKyAgICAgICAgcmV0
dXJuIGNoaWxkcmVuT2ZUeXBlPEhUTUxIZWFkRWxlbWVudD4oKmVsZW1lbnQpLmZpcnN0KCk7Cisg
ICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IERvY3VtZW50OjpjbG9z
ZUZvckJpbmRpbmdzKCkKK3sKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGZvbGxvdyB0aGUgc3Bl
Y2lmaWNhdGlvbiBtb3JlIGNsb3NlbHk6CisgICAgLy8gICAgICAgIGh0dHA6Ly93d3cud2hhdHdn
Lm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvI2RvbS1kb2N1bWVudC1jbG9zZQorCisg
ICAgaWYgKCFpc0hUTUxEb2N1bWVudCgpIHx8IG1fdGhyb3dPbkR5bmFtaWNNYXJrdXBJbnNlcnRp
b25Db3VudCkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yIH07
CisKKyAgICBjbG9zZSgpOworICAgIHJldHVybiB7IH07Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmNs
b3NlKCkKK3sKKyAgICBpZiAoIXNjcmlwdGFibGVEb2N1bWVudFBhcnNlcigpIHx8ICFzY3JpcHRh
YmxlRG9jdW1lbnRQYXJzZXIoKS0+d2FzQ3JlYXRlZEJ5U2NyaXB0KCkgfHwgIXNjcmlwdGFibGVE
b2N1bWVudFBhcnNlcigpLT5pc1BhcnNpbmcoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZXhw
bGljaXRDbG9zZSgpOworfQorCit2b2lkIERvY3VtZW50OjpleHBsaWNpdENsb3NlKCkKK3sKKyAg
ICBpZiAoUmVmUHRyPERvY3VtZW50UGFyc2VyPiBwYXJzZXIgPSBtX3BhcnNlcikKKyAgICAgICAg
cGFyc2VyLT5maW5pc2goKTsKKworICAgIGlmICghbV9mcmFtZSkgeworICAgICAgICAvLyBCZWNh
dXNlIHdlIGhhdmUgbm8gZnJhbWUsIHdlIGRvbid0IGtub3cgaWYgYWxsIGxvYWRpbmcgaGFzIGNv
bXBsZXRlZCwKKyAgICAgICAgLy8gc28gd2UganVzdCBjYWxsIGltcGxpY2l0Q2xvc2UoKSBpbW1l
ZGlhdGVseS4gRklYTUU6IFRoaXMgbWlnaHQgZmlyZQorICAgICAgICAvLyB0aGUgbG9hZCBldmVu
dCBwcmVtYXR1cmVseSA8aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ1
Njg+LgorICAgICAgICBzZXRSZWFkeVN0YXRlKENvbXBsZXRlKTsKKyAgICAgICAgaW1wbGljaXRD
bG9zZSgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY2hlY2tDb21wbGV0ZWQoKTsK
K30KKwordm9pZCBEb2N1bWVudDo6aW1wbGljaXRDbG9zZSgpCit7CisgICAgUkVMRUFTRV9BU1NF
UlQoIW1faW5TdHlsZVJlY2FsYyk7CisgICAgYm9vbCB3YXNMb2NhdGlvbkNoYW5nZVBlbmRpbmcg
PSBmcmFtZSgpICYmIGZyYW1lKCktPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5sb2NhdGlvbkNoYW5n
ZVBlbmRpbmcoKTsKKyAgICBib29sIGRvbG9hZCA9ICFwYXJzaW5nKCkgJiYgbV9wYXJzZXIgJiYg
IW1fcHJvY2Vzc2luZ0xvYWRFdmVudCAmJiAhd2FzTG9jYXRpb25DaGFuZ2VQZW5kaW5nOworICAg
IAorICAgIGlmICghZG9sb2FkKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBDYWxsIHRvIGRp
c3BhdGNoV2luZG93TG9hZEV2ZW50IGNhbiBibG93IHVzIGZyb20gdW5kZXJuZWF0aC4KKyAgICBS
ZWY8RG9jdW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworCisgICAgbV9wcm9jZXNzaW5nTG9h
ZEV2ZW50ID0gdHJ1ZTsKKworICAgIFNjcmlwdGFibGVEb2N1bWVudFBhcnNlciogcGFyc2VyID0g
c2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCk7CisgICAgbV93ZWxsRm9ybWVkID0gcGFyc2VyICYm
IHBhcnNlci0+d2VsbEZvcm1lZCgpOworCisgICAgLy8gV2UgaGF2ZSB0byBjbGVhciB0aGUgcGFy
c2VyLCBpbiBjYXNlIHNvbWVvbmUgZG9jdW1lbnQud3JpdGUoKXMgZnJvbSB0aGUKKyAgICAvLyBv
bkxvYWQgZXZlbnQgaGFuZGxlciwgYXMgaW4gUmFkYXIgMzIwNjUyNC4KKyAgICBkZXRhY2hQYXJz
ZXIoKTsKKworICAgIC8vIEZJWE1FOiBXZSBraWNrIG9mZiB0aGUgaWNvbiBsb2FkZXIgd2hlbiB0
aGUgRG9jdW1lbnQgaXMgZG9uZSBwYXJzaW5nLgorICAgIC8vIFRoZXJlIGFyZSBlYXJsaWVyIG9w
cG9ydHVuaXRpZXMgd2UgY291bGQgc3RhcnQgaXQ6CisgICAgLy8gIC1XaGVuIHRoZSA8aGVhZD4g
ZmluaXNoZXMgcGFyc2luZworICAgIC8vICAtV2hlbiBhbnkgbmV3IEhUTUxMaW5rRWxlbWVudCBp
cyBpbnNlcnRlZCBpbnRvIHRoZSBkb2N1bWVudAorICAgIC8vIEJ1dCB0aG9zZSBhZGQgYSBkeW5h
bWljIGNvbXBvbmVudCB0byB0aGUgZmF2aWNvbiB0aGF0IGhhcyBVSSAKKyAgICAvLyByYW1pZmlj
YXRpb25zLCBhbmQgd2UgbmVlZCB0byBkZWNpZGUgd2hhdCBpcyB0aGUgUmlnaHQgVGhpbmcgVG8g
RG8odG0pCisgICAgUmVmUHRyPEZyYW1lPiBmID0gZnJhbWUoKTsKKyAgICBpZiAoZikgeworI2lm
IEVOQUJMRShYU0xUKQorICAgICAgICAvLyBBcHBseSBYU0wgdHJhbnNmb3JtcyBiZWZvcmUgbG9h
ZCBldmVudHMgc28gdGhhdCBldmVudCBoYW5kbGVycyBjYW4gYWNjZXNzIHRoZSB0cmFuc2Zvcm1l
ZCBET00gdHJlZS4KKyAgICAgICAgYXBwbHlQZW5kaW5nWFNMVHJhbnNmb3Jtc05vd0lmU2NoZWR1
bGVkKCk7CisjZW5kaWYKKworICAgICAgICBpZiAoUmVmUHRyIGRvY3VtZW50TG9hZGVyID0gbG9h
ZGVyKCkpCisgICAgICAgICAgICBkb2N1bWVudExvYWRlci0+c3RhcnRJY29uTG9hZGluZygpOwor
CisgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGRuJ3QgYmUgZGlzcGF0Y2hpbmcgcGVuZGluZyBl
dmVudHMgZ2xvYmFsbHkgb24gYWxsIERvY3VtZW50cyBoZXJlLgorICAgICAgICAvLyBGb3Igbm93
LCBvbmx5IGRvIHRoaXMgd2hlbiB0aGVyZSBpcyBhIEZyYW1lLCBvdGhlcndpc2UgdGhpcyBjb3Vs
ZCBjYXVzZSBKUyByZWVudHJhbmN5CisgICAgICAgIC8vIGJlbG93IFNWRyBmb250IHBhcnNpbmcs
IGZvciBleGFtcGxlLiA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTM2MjY5PgorICAgICAgICBpZiAo
YXV0byogY3VycmVudFBhZ2UgPSBwYWdlKCkpIHsKKyAgICAgICAgICAgIEltYWdlTG9hZGVyOjpk
aXNwYXRjaFBlbmRpbmdCZWZvcmVMb2FkRXZlbnRzKGN1cnJlbnRQYWdlKTsKKyAgICAgICAgICAg
IEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdMb2FkRXZlbnRzKGN1cnJlbnRQYWdlKTsKKyAg
ICAgICAgICAgIEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdFcnJvckV2ZW50cyhjdXJyZW50
UGFnZSk7CisgICAgICAgICAgICBIVE1MTGlua0VsZW1lbnQ6OmRpc3BhdGNoUGVuZGluZ0xvYWRF
dmVudHMoY3VycmVudFBhZ2UpOworICAgICAgICAgICAgSFRNTFN0eWxlRWxlbWVudDo6ZGlzcGF0
Y2hQZW5kaW5nTG9hZEV2ZW50cyhjdXJyZW50UGFnZSk7CisgICAgICAgIH0KKworICAgICAgICBp
ZiAoc3ZnRXh0ZW5zaW9ucygpKQorICAgICAgICAgICAgYWNjZXNzU1ZHRXh0ZW5zaW9ucygpLmRp
c3BhdGNoTG9hZEV2ZW50VG9PdXRlcm1vc3RTVkdFbGVtZW50cygpOworICAgIH0KKworICAgIGRp
c3BhdGNoV2luZG93TG9hZEV2ZW50KCk7CisgICAgZGlzcGF0Y2hQYWdlc2hvd0V2ZW50KFBhZ2Vz
aG93RXZlbnROb3RQZXJzaXN0ZWQpOworICAgIGlmIChtX3BlbmRpbmdTdGF0ZU9iamVjdCkKKyAg
ICAgICAgZGlzcGF0Y2hQb3BzdGF0ZUV2ZW50KFdURk1vdmUobV9wZW5kaW5nU3RhdGVPYmplY3Qp
KTsKKworICAgIGlmIChmKQorICAgICAgICBmLT5sb2FkZXIoKS5kaXNwYXRjaE9ubG9hZEV2ZW50
cygpOworCisgICAgLy8gQW4gZXZlbnQgaGFuZGxlciBtYXkgaGF2ZSByZW1vdmVkIHRoZSBmcmFt
ZQorICAgIGlmICghZnJhbWUoKSkgeworICAgICAgICBtX3Byb2Nlc3NpbmdMb2FkRXZlbnQgPSBm
YWxzZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGZyYW1lKCktPmxvYWRlcigpLmNo
ZWNrQ2FsbEltcGxpY2l0Q2xvc2UoKTsKKyAgICAKKyAgICAvLyBXZSB1c2VkIHRvIGZvcmNlIGEg
c3luY2hyb25vdXMgZGlzcGxheSBhbmQgZmx1c2ggaGVyZS4gVGhpcyByZWFsbHkgaXNuJ3QKKyAg
ICAvLyBuZWNlc3NhcnkgYW5kIGNhbiBpbiBmYWN0IGJlIGFjdGl2ZWx5IGhhcm1mdWwgaWYgcGFn
ZXMgYXJlIGxvYWRpbmcgYXQgYSByYXRlIG9mID4gNjBmcHMKKyAgICAvLyAoaWYgeW91ciBwbGF0
Zm9ybSBpcyBzeW5jaW5nIGZsdXNoZXMgYW5kIGxpbWl0aW5nIHRoZW0gdG8gNjBmcHMpLgorICAg
IGlmICghb3duZXJFbGVtZW50KCkgfHwgKG93bmVyRWxlbWVudCgpLT5yZW5kZXJlcigpICYmICFv
d25lckVsZW1lbnQoKS0+cmVuZGVyZXIoKS0+bmVlZHNMYXlvdXQoKSkpIHsKKyAgICAgICAgdXBk
YXRlU3R5bGVJZk5lZWRlZCgpOworICAgICAgICAKKyAgICAgICAgLy8gQWx3YXlzIGRvIGEgbGF5
b3V0IGFmdGVyIGxvYWRpbmcgaWYgbmVlZGVkLgorICAgICAgICBpZiAodmlldygpICYmIHJlbmRl
clZpZXcoKSAmJiAoIXJlbmRlclZpZXcoKS0+Zmlyc3RDaGlsZCgpIHx8IHJlbmRlclZpZXcoKS0+
bmVlZHNMYXlvdXQoKSkpCisgICAgICAgICAgICB2aWV3KCktPmxheW91dENvbnRleHQoKS5sYXlv
dXQoKTsKKyAgICB9CisKKyAgICBtX3Byb2Nlc3NpbmdMb2FkRXZlbnQgPSBmYWxzZTsKKworICAg
IGlmIChhdXRvIGZvbnRGYWNlU2V0ID0gbWFrZVJlZlB0cihmb250U2VsZWN0b3IoKS5mb250RmFj
ZVNldElmRXhpc3RzKCkpKQorICAgICAgICBmb250RmFjZVNldC0+ZG9jdW1lbnREaWRGaW5pc2hM
b2FkaW5nKCk7CisKKyNpZiBQTEFURk9STShDT0NPQSkgfHwgUExBVEZPUk0oV0lOKSB8fCBQTEFU
Rk9STShHVEspCisgICAgaWYgKGYgJiYgaGFzTGl2aW5nUmVuZGVyVHJlZSgpICYmIEFYT2JqZWN0
Q2FjaGU6OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpIHsKKyAgICAgICAgLy8gVGhlIEFYIGNhY2hl
IG1heSBoYXZlIGJlZW4gY2xlYXJlZCBhdCB0aGlzIHBvaW50LCBidXQgd2UgbmVlZCB0byBtYWtl
IHN1cmUgaXQgY29udGFpbnMgYW4KKyAgICAgICAgLy8gQVggb2JqZWN0IHRvIHNlbmQgdGhlIG5v
dGlmaWNhdGlvbiB0by4gZ2V0T3JDcmVhdGUgd2lsbCBtYWtlIHN1cmUgdGhhdCBhbiB2YWxpZCBB
WCBvYmplY3QKKyAgICAgICAgLy8gZXhpc3RzIGluIHRoZSBjYWNoZSAod2UgaWdub3JlIHRoZSBy
ZXR1cm4gdmFsdWUgYmVjYXVzZSB3ZSBkb24ndCBuZWVkIGl0IGhlcmUpLiBUaGlzIGlzIAorICAg
ICAgICAvLyBvbmx5IHNhZmUgdG8gY2FsbCB3aGVuIGEgbGF5b3V0IGlzIG5vdCBpbiBwcm9ncmVz
cywgc28gaXQgY2FuIG5vdCBiZSB1c2VkIGluIHBvc3ROb3RpZmljYXRpb24uCisgICAgICAgIC8v
CisgICAgICAgIC8vIFRoaXMgbm90aWZpY2F0aW9uIGlzIG5vdyBjYWxsZWQgQVhOZXdEb2N1bWVu
dExvYWRDb21wbGV0ZSBiZWNhdXNlIHRoZXJlIGFyZSBvdGhlciBoYW5kbGVycyB0aGF0IHdpbGwK
KyAgICAgICAgLy8gY2F0Y2ggbmV3IEFORCBwYWdlIGhpc3RvcnkgbG9hZHMsIGFuZCB0aGF0IHVz
ZXMgQVhMb2FkQ29tcGxldGUKKyAgICAgICAgCisgICAgICAgIGF4T2JqZWN0Q2FjaGUoKS0+Z2V0
T3JDcmVhdGUocmVuZGVyVmlldygpKTsKKyAgICAgICAgaWYgKHRoaXMgPT0gJnRvcERvY3VtZW50
KCkpCisgICAgICAgICAgICBheE9iamVjdENhY2hlKCktPnBvc3ROb3RpZmljYXRpb24ocmVuZGVy
VmlldygpLCBBWE9iamVjdENhY2hlOjpBWE5ld0RvY3VtZW50TG9hZENvbXBsZXRlKTsKKyAgICAg
ICAgZWxzZSB7CisgICAgICAgICAgICAvLyBBWExvYWRDb21wbGV0ZSBjYW4gb25seSBiZSBwb3N0
ZWQgb24gdGhlIHRvcCBkb2N1bWVudCwgc28gaWYgaXQncyBhIGRvY3VtZW50CisgICAgICAgICAg
ICAvLyBpbiBhbiBpZnJhbWUgdGhhdCBqdXN0IGZpbmlzaGVkIGxvYWRpbmcsIHBvc3QgQVhMYXlv
dXRDb21wbGV0ZSBpbnN0ZWFkLgorICAgICAgICAgICAgYXhPYmplY3RDYWNoZSgpLT5wb3N0Tm90
aWZpY2F0aW9uKHJlbmRlclZpZXcoKSwgQVhPYmplY3RDYWNoZTo6QVhMYXlvdXRDb21wbGV0ZSk7
CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKworICAgIGlmIChzdmdFeHRlbnNpb25zKCkpCisg
ICAgICAgIGFjY2Vzc1NWR0V4dGVuc2lvbnMoKS5zdGFydEFuaW1hdGlvbnMoKTsKK30KKwordm9p
ZCBEb2N1bWVudDo6c2V0UGFyc2luZyhib29sIGIpCit7CisgICAgbV9iUGFyc2luZyA9IGI7CisK
KyAgICBpZiAobV9iUGFyc2luZyAmJiAhbV9zaGFyZWRPYmplY3RQb29sKQorICAgICAgICBtX3No
YXJlZE9iamVjdFBvb2wgPSBtYWtlVW5pcXVlPERvY3VtZW50U2hhcmVkT2JqZWN0UG9vbD4oKTsK
KworICAgIGlmICghbV9iUGFyc2luZyAmJiB2aWV3KCkgJiYgIXZpZXcoKS0+bmVlZHNMYXlvdXQo
KSkKKyAgICAgICAgdmlldygpLT5maXJlTGF5b3V0UmVsYXRlZE1pbGVzdG9uZXNJZk5lZWRlZCgp
OworfQorCitib29sIERvY3VtZW50OjpzaG91bGRTY2hlZHVsZUxheW91dCgpIGNvbnN0Cit7Cisg
ICAgaWYgKCFkb2N1bWVudEVsZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlm
ICghaXM8SFRNTEh0bWxFbGVtZW50PigqZG9jdW1lbnRFbGVtZW50KCkpKQorICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICBpZiAoIWJvZHlPckZyYW1lc2V0KCkpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICBpZiAoc3R5bGVTY29wZSgpLmhhc1BlbmRpbmdTaGVldHNCZWZvcmVCb2R5KCkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAodmlldygpICYmICF2aWV3KCktPmlzVmlzdWFs
bHlOb25FbXB0eSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIHRydWU7Cit9
CisgICAgCitib29sIERvY3VtZW50Ojppc0xheW91dFBlbmRpbmcoKSBjb25zdAoreworICAgIHJl
dHVybiB2aWV3KCkgJiYgdmlldygpLT5sYXlvdXRDb250ZXh0KCkuaXNMYXlvdXRQZW5kaW5nKCk7
Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OnN1cHBvcnRzUGFpbnRUaW1pbmcoKSBjb25zdAoreworICAg
IHJldHVybiBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBhaW50VGlt
aW5nRW5hYmxlZCgpICYmIHNlY3VyaXR5T3JpZ2luKCkuaXNTYW1lT3JpZ2luRG9tYWluKHRvcE9y
aWdpbigpKTsKK30KKworLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3BhaW50LXRpbWluZy8jcmVm
LWZvci1tYXJrLXBhaW50LXRpbWluZwordm9pZCBEb2N1bWVudDo6ZW5xdWV1ZVBhaW50VGltaW5n
RW50cnlJZk5lZWRlZCgpCit7CisgICAgaWYgKG1fZGlkRW5xdWV1ZUZpcnN0Q29udGVudGZ1bFBh
aW50KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIXN1cHBvcnRzUGFpbnRUaW1pbmcoKSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFkb21XaW5kb3coKSB8fCAhdmlldygpKQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBUbyBtYWtlIHN1cmUgd2UgZG9uJ3QgcmVwb3J0IHBhaW50
IHdoaWxlIHRoZSBsYXllciB0cmVlIGlzIHN0aWxsIGZyb3plbi4KKyAgICBpZiAoIXZpZXcoKS0+
aXNWaXN1YWxseU5vbkVtcHR5KCkgfHwgdmlldygpLT5uZWVkc0xheW91dCgpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBpZiAoIXZpZXcoKS0+aGFzQ29udGVudGZ1bERlc2NlbmRhbnRzKCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIGlmICghQ29udGVudGZ1bFBhaW50Q2hlY2tlcjo6cXVhbGlm
aWVzRm9yQ29udGVudGZ1bFBhaW50KCp2aWV3KCkpKQorICAgICAgICByZXR1cm47CisKKyAgICBk
b21XaW5kb3coKS0+cGVyZm9ybWFuY2UoKS5yZXBvcnRGaXJzdENvbnRlbnRmdWxQYWludCgpOwor
ICAgIG1fZGlkRW5xdWV1ZUZpcnN0Q29udGVudGZ1bFBhaW50ID0gdHJ1ZTsKK30KKworRXhjZXB0
aW9uT3I8dm9pZD4gRG9jdW1lbnQ6OndyaXRlKERvY3VtZW50KiByZXNwb25zaWJsZURvY3VtZW50
LCBTZWdtZW50ZWRTdHJpbmcmJiB0ZXh0KQoreworICAgIGlmIChtX2FjdGl2ZVBhcnNlcldhc0Fi
b3J0ZWQpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBOZXN0aW5nTGV2ZWxJbmNyZW1lbnRl
ciBuZXN0aW5nTGV2ZWxJbmNyZW1lbnRlcihtX3dyaXRlUmVjdXJzaW9uRGVwdGgpOworCisgICAg
bV93cml0ZVJlY3Vyc2lvbklzVG9vRGVlcCA9IChtX3dyaXRlUmVjdXJzaW9uRGVwdGggPiAxKSAm
JiBtX3dyaXRlUmVjdXJzaW9uSXNUb29EZWVwOworICAgIG1fd3JpdGVSZWN1cnNpb25Jc1Rvb0Rl
ZXAgPSAobV93cml0ZVJlY3Vyc2lvbkRlcHRoID4gY01heFdyaXRlUmVjdXJzaW9uRGVwdGgpIHx8
IG1fd3JpdGVSZWN1cnNpb25Jc1Rvb0RlZXA7CisKKyAgICBpZiAobV93cml0ZVJlY3Vyc2lvbklz
VG9vRGVlcCkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIGJvb2wgaGFzSW5zZXJ0aW9uUG9p
bnQgPSBtX3BhcnNlciAmJiBtX3BhcnNlci0+aGFzSW5zZXJ0aW9uUG9pbnQoKTsKKyAgICBpZiAo
IWhhc0luc2VydGlvblBvaW50ICYmIChtX2lnbm9yZU9wZW5zRHVyaW5nVW5sb2FkQ291bnQgfHwg
bV9pZ25vcmVEZXN0cnVjdGl2ZVdyaXRlQ291bnQpKQorICAgICAgICByZXR1cm4geyB9OworCisg
ICAgaWYgKCFoYXNJbnNlcnRpb25Qb2ludCkgeworICAgICAgICBhdXRvIHJlc3VsdCA9IG9wZW4o
cmVzcG9uc2libGVEb2N1bWVudCk7CisgICAgICAgIGlmIChVTkxJS0VMWShyZXN1bHQuaGFzRXhj
ZXB0aW9uKCkpKQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCk7
CisgICAgfQorCisgICAgQVNTRVJUKG1fcGFyc2VyKTsKKyAgICBtX3BhcnNlci0+aW5zZXJ0KFdU
Rk1vdmUodGV4dCkpOworICAgIHJldHVybiB7IH07Cit9CisKK0V4Y2VwdGlvbk9yPHZvaWQ+IERv
Y3VtZW50Ojp3cml0ZShEb2N1bWVudCogcmVzcG9uc2libGVEb2N1bWVudCwgVmVjdG9yPFN0cmlu
Zz4mJiBzdHJpbmdzKQoreworICAgIGlmICghaXNIVE1MRG9jdW1lbnQoKSB8fCBtX3Rocm93T25E
eW5hbWljTWFya3VwSW5zZXJ0aW9uQ291bnQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJ
bnZhbGlkU3RhdGVFcnJvciB9OworCisgICAgU2VnbWVudGVkU3RyaW5nIHRleHQ7CisgICAgZm9y
IChhdXRvJiBzdHJpbmcgOiBzdHJpbmdzKQorICAgICAgICB0ZXh0LmFwcGVuZChXVEZNb3ZlKHN0
cmluZykpOworCisgICAgcmV0dXJuIHdyaXRlKHJlc3BvbnNpYmxlRG9jdW1lbnQsIFdURk1vdmUo
dGV4dCkpOworfQorCitFeGNlcHRpb25Pcjx2b2lkPiBEb2N1bWVudDo6d3JpdGVsbihEb2N1bWVu
dCogcmVzcG9uc2libGVEb2N1bWVudCwgVmVjdG9yPFN0cmluZz4mJiBzdHJpbmdzKQoreworICAg
IGlmICghaXNIVE1MRG9jdW1lbnQoKSB8fCBtX3Rocm93T25EeW5hbWljTWFya3VwSW5zZXJ0aW9u
Q291bnQpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciB9Owor
CisgICAgU2VnbWVudGVkU3RyaW5nIHRleHQ7CisgICAgZm9yIChhdXRvJiBzdHJpbmcgOiBzdHJp
bmdzKQorICAgICAgICB0ZXh0LmFwcGVuZChXVEZNb3ZlKHN0cmluZykpOworCisgICAgdGV4dC5h
cHBlbmQoIlxuIl9zKTsKKyAgICByZXR1cm4gd3JpdGUocmVzcG9uc2libGVEb2N1bWVudCwgV1RG
TW92ZSh0ZXh0KSk7Cit9CisKK1NlY29uZHMgRG9jdW1lbnQ6Om1pbmltdW1ET01UaW1lckludGVy
dmFsKCkgY29uc3QKK3sKKyAgICBhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgIGlmICgh
cGFnZSkKKyAgICAgICAgcmV0dXJuIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6Om1pbmltdW1ET01U
aW1lckludGVydmFsKCk7CisgICAgcmV0dXJuIHBhZ2UtPnNldHRpbmdzKCkubWluaW11bURPTVRp
bWVySW50ZXJ2YWwoKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0VGltZXJUaHJvdHRsaW5nRW5h
YmxlZChib29sIHNob3VsZFRocm90dGxlKQoreworICAgIGlmIChtX2lzVGltZXJUaHJvdHRsaW5n
RW5hYmxlZCA9PSBzaG91bGRUaHJvdHRsZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9pc1Rp
bWVyVGhyb3R0bGluZ0VuYWJsZWQgPSBzaG91bGRUaHJvdHRsZTsKKyAgICBkaWRDaGFuZ2VUaW1l
ckFsaWdubWVudEludGVydmFsKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldFZpc2liaWxpdHlI
aWRkZW5EdWVUb0Rpc21pc3NhbChib29sIGhpZGRlbkR1ZVRvRGlzbWlzc2FsKQoreworICAgIGlm
IChtX3Zpc2liaWxpdHlIaWRkZW5EdWVUb0Rpc21pc3NhbCA9PSBoaWRkZW5EdWVUb0Rpc21pc3Nh
bCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV92aXNpYmlsaXR5SGlkZGVuRHVlVG9EaXNtaXNz
YWwgPSBoaWRkZW5EdWVUb0Rpc21pc3NhbDsKKyAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVh
dGUoZXZlbnROYW1lcygpLnZpc2liaWxpdHljaGFuZ2VFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6
WWVzLCBFdmVudDo6SXNDYW5jZWxhYmxlOjpObykpOworfQorCitTZWNvbmRzIERvY3VtZW50Ojpk
b21UaW1lckFsaWdubWVudEludGVydmFsKGJvb2wgaGFzUmVhY2hlZE1heE5lc3RpbmdMZXZlbCkg
Y29uc3QKK3sKKyAgICBhdXRvIGFsaWdubWVudEludGVydmFsID0gU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dDo6ZG9tVGltZXJBbGlnbm1lbnRJbnRlcnZhbChoYXNSZWFjaGVkTWF4TmVzdGluZ0xldmVs
KTsKKyAgICBpZiAoIWhhc1JlYWNoZWRNYXhOZXN0aW5nTGV2ZWwpCisgICAgICAgIHJldHVybiBh
bGlnbm1lbnRJbnRlcnZhbDsKKworICAgIC8vIEFwcGx5IERvY3VtZW50LWxldmVsIERPTVRpbWVy
IHRocm90dGxpbmcgb25seSBpZiB0aW1lcnMgaGF2ZSByZWFjaGVkIHRoZWlyIG1heGltdW0gbmVz
dGluZyBsZXZlbCBhcyB0aGUgUGFnZSBtYXkgc3RpbGwgYmUgdmlzaWJsZS4KKyAgICBpZiAobV9p
c1RpbWVyVGhyb3R0bGluZ0VuYWJsZWQpCisgICAgICAgIGFsaWdubWVudEludGVydmFsID0gc3Rk
OjptYXgoYWxpZ25tZW50SW50ZXJ2YWwsIERPTVRpbWVyOjpoaWRkZW5QYWdlQWxpZ25tZW50SW50
ZXJ2YWwoKSk7CisKKyAgICBpZiAoUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAgICAg
YWxpZ25tZW50SW50ZXJ2YWwgPSBzdGQ6Om1heChhbGlnbm1lbnRJbnRlcnZhbCwgcGFnZS0+ZG9t
VGltZXJBbGlnbm1lbnRJbnRlcnZhbCgpKTsKKworICAgIGlmICghdG9wT3JpZ2luKCkuaXNTYW1l
T3JpZ2luRG9tYWluKHNlY3VyaXR5T3JpZ2luKCkpICYmICFoYXNIYWRVc2VySW50ZXJhY3Rpb24o
KSkKKyAgICAgICAgYWxpZ25tZW50SW50ZXJ2YWwgPSBzdGQ6Om1heChhbGlnbm1lbnRJbnRlcnZh
bCwgRE9NVGltZXI6Om5vbkludGVyYWN0ZWRDcm9zc09yaWdpbkZyYW1lQWxpZ25tZW50SW50ZXJ2
YWwoKSk7CisKKyAgICByZXR1cm4gYWxpZ25tZW50SW50ZXJ2YWw7Cit9CisKK0V2ZW50VGFyZ2V0
KiBEb2N1bWVudDo6ZXJyb3JFdmVudFRhcmdldCgpCit7CisgICAgcmV0dXJuIG1fZG9tV2luZG93
LmdldCgpOworfQorCit2b2lkIERvY3VtZW50Ojpsb2dFeGNlcHRpb25Ub0NvbnNvbGUoY29uc3Qg
U3RyaW5nJiBlcnJvck1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCBpbnQgbGluZU51
bWJlciwgaW50IGNvbHVtbk51bWJlciwgUmVmUHRyPEluc3BlY3Rvcjo6U2NyaXB0Q2FsbFN0YWNr
PiYmIGNhbGxTdGFjaykKK3sKKyAgICBhZGRNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6OkVycm9yLCBlcnJvck1lc3NhZ2UsIHNvdXJjZVVSTCwgbGluZU51bWJlciwgY29s
dW1uTnVtYmVyLCBXVEZNb3ZlKGNhbGxTdGFjaykpOworfQorCit2b2lkIERvY3VtZW50OjpzZXRV
UkwoY29uc3QgVVJMJiB1cmwpCit7CisgICAgY29uc3QgVVJMJiBuZXdVUkwgPSB1cmwuaXNFbXB0
eSgpID8gYWJvdXRCbGFua1VSTCgpIDogdXJsOworICAgIGlmIChuZXdVUkwgPT0gbV91cmwpCisg
ICAgICAgIHJldHVybjsKKworICAgIG1fdXJsID0gbmV3VVJMOworICAgIGlmIChTZWN1cml0eU9y
aWdpbjo6c2hvdWxkSWdub3JlSG9zdChtX3VybCkpCisgICAgICAgIG1fdXJsLnNldEhvc3RBbmRQ
b3J0KHsgfSk7CisKKyAgICBtX2RvY3VtZW50VVJJID0gbV91cmwuc3RyaW5nKCk7CisgICAgdXBk
YXRlQmFzZVVSTCgpOworfQorCisvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnLyNmYWxs
YmFjay1iYXNlLXVybAorVVJMIERvY3VtZW50OjpmYWxsYmFja0Jhc2VVUkwoKSBjb25zdAorewor
ICAgIC8vIFRoZSBkb2N1bWVudFVSSSBhdHRyaWJ1dGUgaXMgcmVhZC1vbmx5IGZyb20gSmF2YVNj
cmlwdCwgYnV0IHdyaXRhYmxlIGZyb20gT2JqZWN0aXZlIEMsIHNvIHdlIG5lZWQgdG8gcmV0YWlu
CisgICAgLy8gdGhpcyBmYWxsYmFjayBiZWhhdmlvci4gV2UgdXNlIGEgbnVsbCBiYXNlIFVSTCwg
c2luY2UgdGhlIGRvY3VtZW50VVJJIGF0dHJpYnV0ZSBpcyBhbiBhcmJpdHJhcnkgc3RyaW5nCisg
ICAgLy8gYW5kIERPTSAzIENvcmUgZG9lcyBub3Qgc3BlY2lmeSBob3cgaXQgc2hvdWxkIGJlIHJl
c29sdmVkLgorICAgIGF1dG8gZG9jdW1lbnRVUkwgPSBVUkwoeyB9LCBkb2N1bWVudFVSSSgpKTsK
KworICAgIGlmIChkb2N1bWVudFVSTC5pc0Fib3V0U3JjRG9jKCkpIHsKKyAgICAgICAgaWYgKGF1
dG8qIHBhcmVudCA9IHBhcmVudERvY3VtZW50KCkpCisgICAgICAgICAgICByZXR1cm4gcGFyZW50
LT5iYXNlVVJMKCk7CisgICAgfQorCisgICAgaWYgKGRvY3VtZW50VVJMLmlzQWJvdXRCbGFuaygp
KSB7CisgICAgICAgIGF1dG8qIGNyZWF0b3IgPSBwYXJlbnREb2N1bWVudCgpOworICAgICAgICBp
ZiAoIWNyZWF0b3IgJiYgZnJhbWUoKSAmJiBmcmFtZSgpLT5sb2FkZXIoKS5vcGVuZXIoKSkKKyAg
ICAgICAgICAgIGNyZWF0b3IgPSBmcmFtZSgpLT5sb2FkZXIoKS5vcGVuZXIoKS0+ZG9jdW1lbnQo
KTsKKyAgICAgICAgaWYgKGNyZWF0b3IpCisgICAgICAgICAgICByZXR1cm4gY3JlYXRvci0+YmFz
ZVVSTCgpOworICAgIH0KKworICAgIHJldHVybiBkb2N1bWVudFVSTDsKK30KKwordm9pZCBEb2N1
bWVudDo6dXBkYXRlQmFzZVVSTCgpCit7CisgICAgLy8gRE9NIDMgQ29yZTogV2hlbiB0aGUgRG9j
dW1lbnQgc3VwcG9ydHMgdGhlIGZlYXR1cmUgIkhUTUwiIFtET00gTGV2ZWwgMiBIVE1MXSwgdGhl
IGJhc2UgVVJJIGlzIGNvbXB1dGVkIHVzaW5nCisgICAgLy8gZmlyc3QgdGhlIHZhbHVlIG9mIHRo
ZSBocmVmIGF0dHJpYnV0ZSBvZiB0aGUgSFRNTCBCQVNFIGVsZW1lbnQgaWYgYW55LCBhbmQgdGhl
IHZhbHVlIG9mIHRoZSBkb2N1bWVudFVSSSBhdHRyaWJ1dGUKKyAgICAvLyBmcm9tIHRoZSBEb2N1
bWVudCBpbnRlcmZhY2Ugb3RoZXJ3aXNlLgorICAgIGlmICghbV9iYXNlRWxlbWVudFVSTC5pc0Vt
cHR5KCkpCisgICAgICAgIG1fYmFzZVVSTCA9IG1fYmFzZUVsZW1lbnRVUkw7CisgICAgZWxzZSBp
ZiAoIW1fYmFzZVVSTE92ZXJyaWRlLmlzRW1wdHkoKSkKKyAgICAgICAgbV9iYXNlVVJMID0gbV9i
YXNlVVJMT3ZlcnJpZGU7CisgICAgZWxzZQorICAgICAgICBtX2Jhc2VVUkwgPSBmYWxsYmFja0Jh
c2VVUkwoKTsKKworICAgIGNsZWFyU2VsZWN0b3JRdWVyeUNhY2hlKCk7CisKKyAgICBpZiAoIW1f
YmFzZVVSTC5pc1ZhbGlkKCkpCisgICAgICAgIG1fYmFzZVVSTCA9IFVSTCgpOworfQorCit2b2lk
IERvY3VtZW50OjpzZXRCYXNlVVJMT3ZlcnJpZGUoY29uc3QgVVJMJiB1cmwpCit7CisgICAgbV9i
YXNlVVJMT3ZlcnJpZGUgPSB1cmw7CisgICAgdXBkYXRlQmFzZVVSTCgpOworfQorCit2b2lkIERv
Y3VtZW50Ojpwcm9jZXNzQmFzZUVsZW1lbnQoKQoreworICAgIC8vIEZpbmQgdGhlIGZpcnN0IGhy
ZWYgYXR0cmlidXRlIGluIGEgYmFzZSBlbGVtZW50IGFuZCB0aGUgZmlyc3QgdGFyZ2V0IGF0dHJp
YnV0ZSBpbiBhIGJhc2UgZWxlbWVudC4KKyAgICBjb25zdCBBdG9tU3RyaW5nKiBocmVmID0gbnVs
bHB0cjsKKyAgICBjb25zdCBBdG9tU3RyaW5nKiB0YXJnZXQgPSBudWxscHRyOworICAgIGF1dG8g
YmFzZURlc2NlbmRhbnRzID0gZGVzY2VuZGFudHNPZlR5cGU8SFRNTEJhc2VFbGVtZW50PigqdGhp
cyk7CisgICAgZm9yIChhdXRvJiBiYXNlIDogYmFzZURlc2NlbmRhbnRzKSB7CisgICAgICAgIGlm
ICghaHJlZikgeworICAgICAgICAgICAgY29uc3QgQXRvbVN0cmluZyYgdmFsdWUgPSBiYXNlLmF0
dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oaHJlZkF0dHIpOworICAgICAgICAgICAgaWYg
KCF2YWx1ZS5pc051bGwoKSkgeworICAgICAgICAgICAgICAgIGhyZWYgPSAmdmFsdWU7CisgICAg
ICAgICAgICAgICAgaWYgKHRhcmdldCkKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgaWYgKCF0YXJnZXQpIHsKKyAgICAgICAgICAg
IGNvbnN0IEF0b21TdHJpbmcmIHZhbHVlID0gYmFzZS5hdHRyaWJ1dGVXaXRob3V0U3luY2hyb25p
emF0aW9uKHRhcmdldEF0dHIpOworICAgICAgICAgICAgaWYgKCF2YWx1ZS5pc051bGwoKSkgewor
ICAgICAgICAgICAgICAgIHRhcmdldCA9ICZ2YWx1ZTsKKyAgICAgICAgICAgICAgICBpZiAoaHJl
ZikKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KyAgICB9CisKKyAgICAvLyBGSVhNRTogU2luY2UgdGhpcyBkb2Vzbid0IHNoYXJlIGNvZGUgd2l0
aCBjb21wbGV0ZVVSTCBpdCBtYXkgbm90IGhhbmRsZSBlbmNvZGluZ3MgY29ycmVjdGx5LgorICAg
IFVSTCBiYXNlRWxlbWVudFVSTDsKKyAgICBpZiAoaHJlZikgeworICAgICAgICBTdHJpbmcgc3Ry
aXBwZWRIcmVmID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3BhY2VzKCpocmVmKTsKKyAg
ICAgICAgaWYgKCFzdHJpcHBlZEhyZWYuaXNFbXB0eSgpKQorICAgICAgICAgICAgYmFzZUVsZW1l
bnRVUkwgPSBVUkwoZmFsbGJhY2tCYXNlVVJMKCksIHN0cmlwcGVkSHJlZik7CisgICAgfQorICAg
IGlmIChtX2Jhc2VFbGVtZW50VVJMICE9IGJhc2VFbGVtZW50VVJMICYmIGNvbnRlbnRTZWN1cml0
eVBvbGljeSgpLT5hbGxvd0Jhc2VVUkkoYmFzZUVsZW1lbnRVUkwpKSB7CisgICAgICAgIGlmIChz
ZXR0aW5ncygpLnNob3VsZFJlc3RyaWN0QmFzZVVSTFNjaGVtZXMoKSAmJiAhU2VjdXJpdHlQb2xp
Y3k6OmlzQmFzZVVSTFNjaGVtZUFsbG93ZWQoYmFzZUVsZW1lbnRVUkwpKQorICAgICAgICAgICAg
YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6
RXJyb3IsICJCbG9ja2VkIHNldHRpbmcgIiArIGJhc2VFbGVtZW50VVJMLnN0cmluZ0NlbnRlckVs
bGlwc2l6ZWRUb0xlbmd0aCgpICsgIiBhcyB0aGUgYmFzZSBVUkwgYmVjYXVzZSBpdCBkb2VzIG5v
dCBoYXZlIGFuIGFsbG93ZWQgc2NoZW1lLiIpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
IG1fYmFzZUVsZW1lbnRVUkwgPSBiYXNlRWxlbWVudFVSTDsKKyAgICAgICAgICAgIHVwZGF0ZUJh
c2VVUkwoKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIG1fYmFzZVRhcmdldCA9IHRhcmdldCA/
ICp0YXJnZXQgOiBudWxsQXRvbSgpOworfQorCitTdHJpbmcgRG9jdW1lbnQ6OnVzZXJBZ2VudChj
b25zdCBVUkwmIHVybCkgY29uc3QKK3sKKyAgICByZXR1cm4gZnJhbWUoKSA/IGZyYW1lKCktPmxv
YWRlcigpLnVzZXJBZ2VudCh1cmwpIDogU3RyaW5nKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmRp
c2FibGVFdmFsKGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKQoreworICAgIGlmICghZnJhbWUo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZnJhbWUoKS0+c2NyaXB0KCkuZGlzYWJsZUV2YWwo
ZXJyb3JNZXNzYWdlKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlzYWJsZVdlYkFzc2VtYmx5KGNv
bnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKQoreworICAgIGlmICghZnJhbWUoKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgZnJhbWUoKS0+c2NyaXB0KCkuZGlzYWJsZVdlYkFzc2VtYmx5KGVycm9y
TWVzc2FnZSk7Cit9CisKK0lEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBEb2N1bWVudDo6
aWRiQ29ubmVjdGlvblByb3h5KCkKK3sKKyAgICBpZiAoIW1faWRiQ29ubmVjdGlvblByb3h5KSB7
CisgICAgICAgIFBhZ2UqIGN1cnJlbnRQYWdlID0gcGFnZSgpOworICAgICAgICBpZiAoIWN1cnJl
bnRQYWdlKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIG1faWRiQ29ubmVj
dGlvblByb3h5ID0gJmN1cnJlbnRQYWdlLT5pZGJDb25uZWN0aW9uKCkucHJveHkoKTsKKyAgICB9
CisgICAgcmV0dXJuIG1faWRiQ29ubmVjdGlvblByb3h5LmdldCgpOworfQorCitSZWZQdHI8UGVy
bWlzc2lvbkNvbnRyb2xsZXI+IERvY3VtZW50OjpwZXJtaXNzaW9uQ29udHJvbGxlcigpCit7Cisg
ICAgcmV0dXJuIHBhZ2UoKSA/ICZwYWdlKCktPnBlcm1pc3Npb25Db250cm9sbGVyKCkgOiBudWxs
cHRyOworfQorCitTdG9yYWdlQ29ubmVjdGlvbiogRG9jdW1lbnQ6OnN0b3JhZ2VDb25uZWN0aW9u
KCkKK3sKKyAgICByZXR1cm4gcGFnZSgpID8gJnBhZ2UoKS0+c3RvcmFnZUNvbm5lY3Rpb24oKSA6
IG51bGxwdHI7Cit9CisKK1NvY2tldFByb3ZpZGVyKiBEb2N1bWVudDo6c29ja2V0UHJvdmlkZXIo
KQoreworICAgIHJldHVybiBtX3NvY2tldFByb3ZpZGVyLmdldCgpOworfQorCitSZWZQdHI8UlRD
RGF0YUNoYW5uZWxSZW1vdGVIYW5kbGVyQ29ubmVjdGlvbj4gRG9jdW1lbnQ6OmNyZWF0ZVJUQ0Rh
dGFDaGFubmVsUmVtb3RlSGFuZGxlckNvbm5lY3Rpb24oKQoreworICAgIEFTU0VSVChpc01haW5U
aHJlYWQoKSk7CisgICAgYXV0byogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2Up
CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBwYWdlLT5saWJXZWJSVENQcm92
aWRlcigpLmNyZWF0ZVJUQ0RhdGFDaGFubmVsUmVtb3RlSGFuZGxlckNvbm5lY3Rpb24oKTsKK30K
KworYm9vbCBEb2N1bWVudDo6Y2FuTmF2aWdhdGUoRnJhbWUqIHRhcmdldEZyYW1lLCBjb25zdCBV
UkwmIGRlc3RpbmF0aW9uVVJMKQoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgLy8gRklYTUU6IFdlIHNob3VsZG4ndCBjYWxsIHRoaXMgZnVuY3Rpb24g
d2l0aG91dCBhIHRhcmdldCBmcmFtZSwgYnV0CisgICAgLy8gZmFzdC9mb3Jtcy9zdWJtaXQtdG8t
YmxhbmstbXVsdGlwbGUtdGltZXMuaHRtbCBkZXBlbmRzIG9uIHRoaXMgZnVuY3Rpb24KKyAgICAv
LyByZXR1cm5pbmcgdHJ1ZSB3aGVuIHN1cHBsaWVkIHdpdGggYSAwIHRhcmdldEZyYW1lLgorICAg
IGlmICghdGFyZ2V0RnJhbWUpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKCFjYW5O
YXZpZ2F0ZUludGVybmFsKCp0YXJnZXRGcmFtZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor
ICAgIGlmIChpc05hdmlnYXRpb25CbG9ja2VkQnlUaGlyZFBhcnR5SUZyYW1lUmVkaXJlY3RCbG9j
a2luZygqdGFyZ2V0RnJhbWUsIGRlc3RpbmF0aW9uVVJMKSkgeworICAgICAgICBwcmludE5hdmln
YXRpb25FcnJvck1lc3NhZ2UoKnRhcmdldEZyYW1lLCB1cmwoKSwgIlRoZSBmcmFtZSBhdHRlbXB0
aW5nIG5hdmlnYXRpb24gb2YgdGhlIHRvcC1sZXZlbCB3aW5kb3cgaXMgY3Jvc3Mtb3JpZ2luIG9y
IHVudHJ1c3RlZCBhbmQgdGhlIHVzZXIgaGFzIG5ldmVyIGludGVyYWN0ZWQgd2l0aCB0aGUgZnJh
bWUuIl9zKTsKKyAgICAgICAgRE9DVU1FTlRfUkVMRUFTRV9MT0dfRVJST1IoTG9hZGluZywgIk5h
dmlnYXRpb24gd2FzIHByZXZlbnRlZCBiZWNhdXNlIGl0IHdhcyB0cmlnZ2VyZWQgYnkgYSBjcm9z
cy1vcmlnaW4gb3IgdW50cnVzdGVkIGlmcmFtZSIpOworICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OmNhbk5hdmlnYXRl
SW50ZXJuYWwoRnJhbWUmIHRhcmdldEZyYW1lKQoreworICAgIEFTU0VSVChtX2ZyYW1lKTsKKwor
ICAgIC8vIENhc2VzIChpKSwgKGlpKSBhbmQgKGlpaSkgcGFzcyB0aGUgdGVzdHMgZnJvbSB0aGUg
c3BlY2lmaWNhdGlvbnMgYnV0IG1pZ2h0IG5vdCBwYXNzIHRoZSAic2VjdXJpdHkgb3JpZ2luIiB0
ZXN0cy4KKworICAgIC8vIGkuIEEgZnJhbWUgY2FuIG5hdmlnYXRlIGl0cyB0b3AgYW5jZXN0b3Ig
d2hlbiBpdHMgJ2FsbG93LXRvcC1uYXZpZ2F0aW9uJyBmbGFnIGlzIHNldCAoc29tZXRpbWVzIGtu
b3duIGFzICdmcmFtZS1idXN0aW5nJykuCisgICAgaWYgKCFpc1NhbmRib3hlZChTYW5kYm94VG9w
TmF2aWdhdGlvbikgJiYgJnRhcmdldEZyYW1lID09ICZtX2ZyYW1lLT50cmVlKCkudG9wKCkpCisg
ICAgICAgIHJldHVybiB0cnVlOworCisgICAgLy8gVGhlIHVzZXIgZ2VzdHVyZSBvbmx5IHJlbGF4
ZXMgcGVybWlzc2lvbnMgZm9yIHRoZSBwdXJwb3NlIG9mIG5hdmlnYXRpbmcgaWYgaXRzIGltcGFj
dHMgdGhlIGN1cnJlbnQgZG9jdW1lbnQuCisgICAgYm9vbCBpc1Byb2Nlc3NpbmdVc2VyR2VzdHVy
ZUZvckRvY3VtZW50ID0gVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZShtX2ZyYW1lLT5kb2N1bWVudCgpKTsKKworICAgIC8vIGlpLiBBIGZyYW1lIGNhbiBuYXZpZ2F0
ZSBpdHMgdG9wIGFuY2VzdG9yIHdoZW4gaXRzICdhbGxvdy10b3AtbmF2aWdhdGlvbi1ieS11c2Vy
LWFjdGl2YXRpb24nIGZsYWcgaXMgc2V0IGFuZCBuYXZpZ2F0aW9uIGlzIHRyaWdnZXJlZCBieSB1
c2VyIGFjdGl2YXRpb24uCisgICAgaWYgKCFpc1NhbmRib3hlZChTYW5kYm94VG9wTmF2aWdhdGlv
bkJ5VXNlckFjdGl2YXRpb24pICYmIGlzUHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9yRG9jdW1lbnQg
JiYgJnRhcmdldEZyYW1lID09ICZtX2ZyYW1lLT50cmVlKCkudG9wKCkpCisgICAgICAgIHJldHVy
biB0cnVlOworCisgICAgLy8gaWlpLiBBIHNhbmRib3hlZCBmcmFtZSBjYW4gYWx3YXlzIG5hdmln
YXRlIGl0cyBkZXNjZW5kYW50cy4KKyAgICBpZiAoaXNTYW5kYm94ZWQoU2FuZGJveE5hdmlnYXRp
b24pICYmIHRhcmdldEZyYW1lLnRyZWUoKS5pc0Rlc2NlbmRhbnRPZihtX2ZyYW1lLmdldCgpKSkK
KyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBGcm9tIGh0dHBzOi8vaHRtbC5zcGVjLndo
YXR3Zy5vcmcvbXVsdGlwYWdlL2Jyb3dzZXJzLmh0bWwjYWxsb3dlZC10by1uYXZpZ2F0ZS4KKyAg
ICAvLyAxLiBJZiBBIGlzIG5vdCB0aGUgc2FtZSBicm93c2luZyBjb250ZXh0IGFzIEIsIGFuZCBB
IGlzIG5vdCBvbmUgb2YgdGhlIGFuY2VzdG9yIGJyb3dzaW5nIGNvbnRleHRzIG9mIEIsIGFuZCBC
IGlzIG5vdCBhIHRvcC1sZXZlbCBicm93c2luZyBjb250ZXh0LCBhbmQgQSdzIGFjdGl2ZSBkb2N1
bWVudCdzIGFjdGl2ZSBzYW5kYm94aW5nCisgICAgLy8gZmxhZyBzZXQgaGFzIGl0cyBzYW5kYm94
ZWQgbmF2aWdhdGlvbiBicm93c2luZyBjb250ZXh0IGZsYWcgc2V0LCB0aGVuIGFib3J0IHRoZXNl
IHN0ZXBzIG5lZ2F0aXZlbHkuCisgICAgaWYgKG1fZnJhbWUgIT0gJnRhcmdldEZyYW1lICYmIGlz
U2FuZGJveGVkKFNhbmRib3hOYXZpZ2F0aW9uKSAmJiB0YXJnZXRGcmFtZS50cmVlKCkucGFyZW50
KCkgJiYgIXRhcmdldEZyYW1lLnRyZWUoKS5pc0Rlc2NlbmRhbnRPZihtX2ZyYW1lLmdldCgpKSkg
eworICAgICAgICBwcmludE5hdmlnYXRpb25FcnJvck1lc3NhZ2UodGFyZ2V0RnJhbWUsIHVybCgp
LCAiVGhlIGZyYW1lIGF0dGVtcHRpbmcgbmF2aWdhdGlvbiBpcyBzYW5kYm94ZWQsIGFuZCBpcyB0
aGVyZWZvcmUgZGlzYWxsb3dlZCBmcm9tIG5hdmlnYXRpbmcgaXRzIGFuY2VzdG9ycy4iX3MpOwor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgLy8gMi4gT3RoZXJ3aXNlLCBpZiBC
IGlzIGEgdG9wLWxldmVsIGJyb3dzaW5nIGNvbnRleHQsIGFuZCBpcyBvbmUgb2YgdGhlIGFuY2Vz
dG9yIGJyb3dzaW5nIGNvbnRleHRzIG9mIEEsIHRoZW46CisgICAgaWYgKG1fZnJhbWUgIT0gJnRh
cmdldEZyYW1lICYmICZ0YXJnZXRGcmFtZSA9PSAmbV9mcmFtZS0+dHJlZSgpLnRvcCgpKSB7Cisg
ICAgICAgIC8vIDEuIElmIHRoaXMgYWxnb3JpdGhtIGlzIHRyaWdnZXJlZCBieSB1c2VyIGFjdGl2
YXRpb24gYW5kIEEncyBhY3RpdmUgZG9jdW1lbnQncyBhY3RpdmUgc2FuZGJveGluZyBmbGFnIHNl
dCBoYXMgaXRzIHNhbmRib3hlZCB0b3AtbGV2ZWwgbmF2aWdhdGlvbiB3aXRoIHVzZXIgYWN0aXZh
dGlvbiBicm93c2luZyBjb250ZXh0IGZsYWcgc2V0LCB0aGVuIGFib3J0IHRoZXNlIHN0ZXBzIG5l
Z2F0aXZlbHkuCisgICAgICAgIGlmIChpc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZUZvckRvY3VtZW50
ICYmIGlzU2FuZGJveGVkKFNhbmRib3hUb3BOYXZpZ2F0aW9uQnlVc2VyQWN0aXZhdGlvbikpIHsK
KyAgICAgICAgICAgIHByaW50TmF2aWdhdGlvbkVycm9yTWVzc2FnZSh0YXJnZXRGcmFtZSwgdXJs
KCksICJUaGUgZnJhbWUgYXR0ZW1wdGluZyBuYXZpZ2F0aW9uIG9mIHRoZSB0b3AtbGV2ZWwgd2lu
ZG93IGlzIHNhbmRib3hlZCwgYnV0IHRoZSAnYWxsb3ctdG9wLW5hdmlnYXRpb24tYnktdXNlci1h
Y3RpdmF0aW9uJyBmbGFnIGlzIG5vdCBzZXQgYW5kIG5hdmlnYXRpb24gaXMgbm90IHRyaWdnZXJl
ZCBieSB1c2VyIGFjdGl2YXRpb24uIl9zKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICAgICAgfQorICAgICAgICAvLyAyLiBPdGhlcndpc2UsIElmIHRoaXMgYWxnb3JpdGhtIGlzIG5v
dCB0cmlnZ2VyZWQgYnkgdXNlciBhY3RpdmF0aW9uIGFuZCBBJ3MgYWN0aXZlIGRvY3VtZW50J3Mg
YWN0aXZlIHNhbmRib3hpbmcgZmxhZyBzZXQgaGFzIGl0cyBzYW5kYm94ZWQgdG9wLWxldmVsIG5h
dmlnYXRpb24gd2l0aG91dCB1c2VyIGFjdGl2YXRpb24gYnJvd3NpbmcgY29udGV4dCBmbGFnIHNl
dCwgdGhlbiBhYm9ydCB0aGVzZSBzdGVwcyBuZWdhdGl2ZWx5LgorICAgICAgICBpZiAoIWlzUHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlRm9yRG9jdW1lbnQgJiYgaXNTYW5kYm94ZWQoU2FuZGJveFRvcE5h
dmlnYXRpb24pKSB7CisgICAgICAgICAgICBwcmludE5hdmlnYXRpb25FcnJvck1lc3NhZ2UodGFy
Z2V0RnJhbWUsIHVybCgpLCAiVGhlIGZyYW1lIGF0dGVtcHRpbmcgbmF2aWdhdGlvbiBvZiB0aGUg
dG9wLWxldmVsIHdpbmRvdyBpcyBzYW5kYm94ZWQsIGJ1dCB0aGUgJ2FsbG93LXRvcC1uYXZpZ2F0
aW9uJyBmbGFnIGlzIG5vdCBzZXQuIl9zKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICAgICAgfQorICAgIH0KKworICAgIC8vIDMuIE90aGVyd2lzZSwgaWYgQiBpcyBhIHRvcC1sZXZl
bCBicm93c2luZyBjb250ZXh0LCBhbmQgaXMgbmVpdGhlciBBIG5vciBvbmUgb2YgdGhlIGFuY2Vz
dG9yIGJyb3dzaW5nIGNvbnRleHRzIG9mIEEsIGFuZCBBJ3MgRG9jdW1lbnQncyBhY3RpdmUgc2Fu
ZGJveGluZyBmbGFnIHNldCBoYXMgaXRzCisgICAgLy8gc2FuZGJveGVkIG5hdmlnYXRpb24gYnJv
d3NpbmcgY29udGV4dCBmbGFnIHNldCwgYW5kIEEgaXMgbm90IHRoZSBvbmUgcGVybWl0dGVkIHNh
bmRib3hlZCBuYXZpZ2F0b3Igb2YgQiwgdGhlbiBhYm9ydCB0aGVzZSBzdGVwcyBuZWdhdGl2ZWx5
LgorICAgIGlmICghdGFyZ2V0RnJhbWUudHJlZSgpLnBhcmVudCgpICYmIG1fZnJhbWUgIT0gJnRh
cmdldEZyYW1lICYmICZ0YXJnZXRGcmFtZSAhPSAmbV9mcmFtZS0+dHJlZSgpLnRvcCgpICYmIGlz
U2FuZGJveGVkKFNhbmRib3hOYXZpZ2F0aW9uKSAmJiB0YXJnZXRGcmFtZS5sb2FkZXIoKS5vcGVu
ZXIoKSAhPSBtX2ZyYW1lKSB7CisgICAgICAgIHByaW50TmF2aWdhdGlvbkVycm9yTWVzc2FnZSh0
YXJnZXRGcmFtZSwgdXJsKCksICJUaGUgZnJhbWUgYXR0ZW1wdGluZyBuYXZpZ2F0aW9uIGlzIHNh
bmRib3hlZCwgYW5kIGlzIG5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRoaXMgcG9wdXAuIl9zKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIC8vIDQuIE90aGVyd2lzZSwgdGVy
bWluYXRlIHBvc2l0aXZlbHkhCisKKyAgICAvLyBUaGlzIGlzIHRoZSBub3JtYWwgY2FzZS4gQSBk
b2N1bWVudCBjYW4gbmF2aWdhdGUgaXRzIGRlc2NlbmRhbnQgZnJhbWVzLAorICAgIC8vIG9yLCBt
b3JlIGdlbmVyYWxseSwgYSBkb2N1bWVudCBjYW4gbmF2aWdhdGUgYSBmcmFtZSBpZiB0aGUgZG9j
dW1lbnQgaXMKKyAgICAvLyBpbiB0aGUgc2FtZSBvcmlnaW4gYXMgYW55IG9mIHRoYXQgZnJhbWUn
cyBhbmNlc3RvcnMgKGluIHRoZSBmcmFtZQorICAgIC8vIGhpZXJhcmNoeSkuCisgICAgLy8KKyAg
ICAvLyBTZWUgaHR0cDovL3d3dy5hZGFtYmFydGguY29tL3BhcGVycy8yMDA4L2JhcnRoLWphY2tz
b24tbWl0Y2hlbGwucGRmIGZvcgorICAgIC8vIGhpc3RvcmljYWwgaW5mb3JtYXRpb24gYWJvdXQg
dGhpcyBzZWN1cml0eSBjaGVjay4KKyAgICBpZiAoY2FuQWNjZXNzQW5jZXN0b3Ioc2VjdXJpdHlP
cmlnaW4oKSwgJnRhcmdldEZyYW1lKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBU
b3AtbGV2ZWwgZnJhbWVzIGFyZSBlYXNpZXIgdG8gbmF2aWdhdGUgdGhhbiBvdGhlciBmcmFtZXMg
YmVjYXVzZSB0aGV5CisgICAgLy8gZGlzcGxheSB0aGVpciBVUkxzIGluIHRoZSBhZGRyZXNzIGJh
ciAoaW4gbW9zdCBicm93c2VycykuIEhvd2V2ZXIsIHRoZXJlCisgICAgLy8gYXJlIHN0aWxsIHNv
bWUgcmVzdHJpY3Rpb25zIG9uIG5hdmlnYXRpb24gdG8gYXZvaWQgbnVpc2FuY2UgYXR0YWNrcy4K
KyAgICAvLyBTcGVjaWZpY2FsbHksIGEgZG9jdW1lbnQgY2FuIG5hdmlnYXRlIGEgdG9wLWxldmVs
IGZyYW1lIGlmIHRoYXQgZnJhbWUKKyAgICAvLyBvcGVuZWQgdGhlIGRvY3VtZW50IG9yIGlmIHRo
ZSBkb2N1bWVudCBpcyB0aGUgc2FtZS1vcmlnaW4gd2l0aCBhbnkgb2YKKyAgICAvLyB0aGUgdG9w
LWxldmVsIGZyYW1lJ3Mgb3BlbmVyJ3MgYW5jZXN0b3JzIChpbiB0aGUgZnJhbWUgaGllcmFyY2h5
KS4KKyAgICAvLworICAgIC8vIEluIGJvdGggb2YgdGhlc2UgY2FzZXMsIHRoZSBkb2N1bWVudCBw
ZXJmb3JtaW5nIHRoZSBuYXZpZ2F0aW9uIGlzIGluCisgICAgLy8gc29tZSB3YXkgcmVsYXRlZCB0
byB0aGUgZnJhbWUgYmVpbmcgbmF2aWdhdGUgKGUuZy4sIGJ5IHRoZSAib3BlbmVyIgorICAgIC8v
IGFuZC9vciAicGFyZW50IiByZWxhdGlvbikuIFJlcXVpcmluZyBzb21lIHNvcnQgb2YgcmVsYXRp
b24gcHJldmVudHMgYQorICAgIC8vIGRvY3VtZW50IGZyb20gbmF2aWdhdGluZyBhcmJpdHJhcnks
IHVucmVsYXRlZCB0b3AtbGV2ZWwgZnJhbWVzLgorICAgIGlmICghdGFyZ2V0RnJhbWUudHJlZSgp
LnBhcmVudCgpKSB7CisgICAgICAgIGlmICgmdGFyZ2V0RnJhbWUgPT0gbV9mcmFtZS0+bG9hZGVy
KCkub3BlbmVyKCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgICAgICBpZiAoY2Fu
QWNjZXNzQW5jZXN0b3Ioc2VjdXJpdHlPcmlnaW4oKSwgdGFyZ2V0RnJhbWUubG9hZGVyKCkub3Bl
bmVyKCkpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgcHJpbnROYXZp
Z2F0aW9uRXJyb3JNZXNzYWdlKHRhcmdldEZyYW1lLCB1cmwoKSwgIlRoZSBmcmFtZSBhdHRlbXB0
aW5nIG5hdmlnYXRpb24gaXMgbmVpdGhlciBzYW1lLW9yaWdpbiB3aXRoIHRoZSB0YXJnZXQsIG5v
ciBpcyBpdCB0aGUgdGFyZ2V0J3MgcGFyZW50IG9yIG9wZW5lci4iKTsKKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OndpbGxMb2FkU2NyaXB0RWxlbWVudChjb25zdCBVUkwm
IHNjcmlwdFVSTCkKK3sKKyAgICBtX2hhc0xvYWRlZFRoaXJkUGFydHlTY3JpcHQgPSBtX2hhc0xv
YWRlZFRoaXJkUGFydHlTY3JpcHQgfHwgIXNlY3VyaXR5T3JpZ2luKCkuaXNTYW1lT3JpZ2luQXMo
U2VjdXJpdHlPcmlnaW46OmNyZWF0ZShzY3JpcHRVUkwpKTsKK30KKwordm9pZCBEb2N1bWVudDo6
d2lsbExvYWRGcmFtZUVsZW1lbnQoY29uc3QgVVJMJiBmcmFtZVVSTCkKK3sKKyAgICBtX2hhc0xv
YWRlZFRoaXJkUGFydHlGcmFtZSA9IG1faGFzTG9hZGVkVGhpcmRQYXJ0eUZyYW1lIHx8ICFzZWN1
cml0eU9yaWdpbigpLmlzU2FtZU9yaWdpbkFzKFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoZnJhbWVV
UkwpKTsKK30KKworLy8gUHJldmVudCBjcm9zcy1zaXRlIHRvcC1sZXZlbCByZWRpcmVjdHMgZnJv
bSB0aGlyZC1wYXJ0eSBpZnJhbWVzIHVubGVzcyB0aGUgdXNlciBoYXMgZXZlciBpbnRlcmFjdGVk
IHdpdGggdGhlIGZyYW1lLgorYm9vbCBEb2N1bWVudDo6aXNOYXZpZ2F0aW9uQmxvY2tlZEJ5VGhp
cmRQYXJ0eUlGcmFtZVJlZGlyZWN0QmxvY2tpbmcoRnJhbWUmIHRhcmdldEZyYW1lLCBjb25zdCBV
UkwmIGRlc3RpbmF0aW9uVVJMKQoreworICAgIGlmICghc2V0dGluZ3MoKS50aGlyZFBhcnR5SWZy
YW1lUmVkaXJlY3RCbG9ja2luZ0VuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgLy8gT25seSBwcmV2ZW50IHRvcCBmcmFtZSBuYXZpZ2F0aW9ucyBieSBzdWJmcmFtZXMuCisg
ICAgaWYgKG1fZnJhbWUgPT0gJnRhcmdldEZyYW1lIHx8ICZ0YXJnZXRGcmFtZSAhPSAmbV9mcmFt
ZS0+dHJlZSgpLnRvcCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBPbmx5IHBy
ZXZlbnQgbmF2aWdhdGlvbnMgYnkgc3ViZnJhbWVzIHRoYXQgdGhlIHVzZXIgaGFzIG5vdCBpbnRl
cmFjdGVkIHdpdGguCisgICAgaWYgKG1fZnJhbWUtPmhhc0hhZFVzZXJJbnRlcmFjdGlvbigpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAvLyBPbmx5IHByZXZlbnQgbmF2aWdhdGlvbnMg
YnkgdW5zYW5kYm94ZWQgaWZyYW1lcy4gU3VjaCBuYXZpZ2F0aW9ucyBieSB1bnNhbmRib3hlZCBp
ZnJhbWVzIHdvdWxkIGhhdmUgYWxyZWFkeSBiZWVuIGJsb2NrZWQgdW5sZXNzCisgICAgLy8gImFs
bG93LXRvcC1uYXZpZ2F0aW9uIiAvICJhbGxvdy10b3AtbmF2aWdhdGlvbi1ieS11c2VyLWFjdGl2
YXRpb24iIHdhcyBleHBsaWNpdGx5IHNwZWNpZmllZC4KKyAgICBpZiAoc2FuZGJveEZsYWdzKCkg
IT0gU2FuZGJveE5vbmUpIHsKKyAgICAgICAgLy8gTmF2aWdhdGlvbiBpcyBvbmx5IGFsbG93ZWQg
aWYgdGhlIHBhcmVudCBvZiB0aGUgc2FuZGJveGVkIGlmcmFtZSBpcyBmaXJzdC1wYXJ0eS4KKyAg
ICAgICAgUmVmUHRyIHBhcmVudERvY3VtZW50ID0gbV9mcmFtZS0+dHJlZSgpLnBhcmVudCgpID8g
bV9mcmFtZS0+dHJlZSgpLnBhcmVudCgpLT5kb2N1bWVudCgpIDogbnVsbHB0cjsKKyAgICAgICAg
aWYgKHBhcmVudERvY3VtZW50ICYmIGNhbkFjY2Vzc0FuY2VzdG9yKHBhcmVudERvY3VtZW50LT5z
ZWN1cml0eU9yaWdpbigpLCAmdGFyZ2V0RnJhbWUpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KKworICAgIC8vIE9ubHkgcHJldmVudCBuYXZpZ2F0aW9ucyBieSB0aGlyZC1wYXJ0
eSBpZnJhbWVzIG9yIHVudHJ1c3RlZCBmaXJzdC1wYXJ0eSBpZnJhbWVzLgorICAgIGJvb2wgaXNV
bnRydXN0ZWRJZnJhbWUgPSBtX2hhc0xvYWRlZFRoaXJkUGFydHlTY3JpcHQgJiYgbV9oYXNMb2Fk
ZWRUaGlyZFBhcnR5RnJhbWU7CisgICAgaWYgKGNhbkFjY2Vzc0FuY2VzdG9yKHNlY3VyaXR5T3Jp
Z2luKCksICZ0YXJnZXRGcmFtZSkgJiYgIWlzVW50cnVzdGVkSWZyYW1lKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICAvLyBPbmx5IHByZXZlbnQgY3Jvc3Mtc2l0ZSBuYXZpZ2F0aW9ucy4K
KyAgICBSZWZQdHIgdGFyZ2V0RG9jdW1lbnQgPSB0YXJnZXRGcmFtZS5kb2N1bWVudCgpOworICAg
IGlmICh0YXJnZXREb2N1bWVudCAmJiAodGFyZ2V0RG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCku
aXNTYW1lT3JpZ2luRG9tYWluKFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoZGVzdGluYXRpb25VUkwp
KSB8fCBhcmVSZWdpc3RyYWJsZURvbWFpbnNFcXVhbCh0YXJnZXREb2N1bWVudC0+dXJsKCksIGRl
c3RpbmF0aW9uVVJMKSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiB0cnVl
OworfQorCit2b2lkIERvY3VtZW50OjpkaWRSZW1vdmVBbGxQZW5kaW5nU3R5bGVzaGVldCgpCit7
CisgICAgaWYgKFJlZlB0ciBwYXJzZXIgPSBzY3JpcHRhYmxlRG9jdW1lbnRQYXJzZXIoKSkKKyAg
ICAgICAgcGFyc2VyLT5leGVjdXRlU2NyaXB0c1dhaXRpbmdGb3JTdHlsZXNoZWV0c1Nvb24oKTsK
KworICAgIGlmIChtX2dvdG9BbmNob3JOZWVkZWRBZnRlclN0eWxlc2hlZXRzTG9hZCkgeworICAg
ICAgICAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9icm93c2luZy10
aGUtd2ViLmh0bWwjdHJ5LXRvLXNjcm9sbC10by10aGUtZnJhZ21lbnQKKyAgICAgICAgZXZlbnRM
b29wKCkucXVldWVUYXNrKFRhc2tTb3VyY2U6Ok5ldHdvcmtpbmcsIFtwcm90ZWN0ZWRUaGlzID0g
bWFrZVJlZigqdGhpcyksIHRoaXNdIHsKKyAgICAgICAgICAgIGF1dG8gZnJhbWVWaWV3ID0gbWFr
ZVJlZlB0cih2aWV3KCkpOworICAgICAgICAgICAgaWYgKCFmcmFtZVZpZXcpCisgICAgICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICAgICAgaWYgKCFoYXZlU3R5bGVzaGVldHNMb2FkZWQoKSkg
eworICAgICAgICAgICAgICAgIG1fZ290b0FuY2hvck5lZWRlZEFmdGVyU3R5bGVzaGVldHNMb2Fk
ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICBmcmFtZVZpZXctPnNjcm9sbFRvRnJhZ21lbnQobV91cmwpOworICAgICAgICB9KTsKKyAg
ICB9Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OnVzZXNTdHlsZUJhc2VkRWRpdGFiaWxpdHkoKSBjb25z
dAoreworICAgIGlmIChtX2hhc0VsZW1lbnRVc2luZ1N0eWxlQmFzZWRFZGl0YWJpbGl0eSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBBU1NFUlQoIW1fcmVuZGVyVmlldyB8fCAhbV9yZW5k
ZXJWaWV3LT5mcmFtZVZpZXcoKS5pc1BhaW50aW5nKCkpOworICAgIEFTU0VSVCghbV9pblN0eWxl
UmVjYWxjKTsKKworICAgIGF1dG8mIHN0eWxlU2NvcGUgPSBjb25zdF9jYXN0PFN0eWxlOjpTY29w
ZSY+KHRoaXMtPnN0eWxlU2NvcGUoKSk7CisgICAgc3R5bGVTY29wZS5mbHVzaFBlbmRpbmdVcGRh
dGUoKTsKKyAgICByZXR1cm4gc3R5bGVTY29wZS51c2VzU3R5bGVCYXNlZEVkaXRhYmlsaXR5KCk7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldEhhc0VsZW1lbnRVc2luZ1N0eWxlQmFzZWRFZGl0YWJp
bGl0eSgpCit7CisgICAgbV9oYXNFbGVtZW50VXNpbmdTdHlsZUJhc2VkRWRpdGFiaWxpdHkgPSB0
cnVlOworfQorCit2b2lkIERvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdihjb25zdCBTdHJp
bmcmIGVxdWl2LCBjb25zdCBTdHJpbmcmIGNvbnRlbnQsIGJvb2wgaXNJbkRvY3VtZW50SGVhZCkK
K3sKKyAgICBBU1NFUlQoIWVxdWl2LmlzTnVsbCgpKTsKKyAgICBBU1NFUlQoIWNvbnRlbnQuaXNO
dWxsKCkpOworCisgICAgSHR0cEVxdWl2UG9saWN5IHBvbGljeSA9IGh0dHBFcXVpdlBvbGljeSgp
OworICAgIGlmIChwb2xpY3kgIT0gSHR0cEVxdWl2UG9saWN5OjpFbmFibGVkKSB7CisgICAgICAg
IFN0cmluZyByZWFzb247CisgICAgICAgIHN3aXRjaCAocG9saWN5KSB7CisgICAgICAgIGNhc2Ug
SHR0cEVxdWl2UG9saWN5OjpFbmFibGVkOgorICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBIdHRwRXF1aXZQb2xpY3k6OkRp
c2FibGVkQnlTZXR0aW5nczoKKyAgICAgICAgICAgIHJlYXNvbiA9ICJieSB0aGUgZW1iZWRkZXIu
IjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEh0dHBFcXVpdlBvbGljeTo6RGlz
YWJsZWRCeUNvbnRlbnREaXNwb3NpdGlvbkF0dGFjaG1lbnRTYW5kYm94OgorICAgICAgICAgICAg
cmVhc29uID0gImZvciBkb2N1bWVudHMgd2l0aCBDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2ht
ZW50LiI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBTdHJpbmcgbWVz
c2FnZSA9ICJodHRwLWVxdWl2ICciICsgZXF1aXYgKyAiJyBpcyBkaXNhYmxlZCAiICsgcmVhc29u
OworICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVz
c2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBSZWZQdHIgZnJhbWUgPSB0aGlzLT5mcmFtZSgpOworICAgIFJlZlB0ciBkb2N1bWVudExvYWRl
ciA9IGZyYW1lID8gZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCkgOiBudWxscHRyOwor
ICAgIGF1dG8gaHR0cFN0YXR1c0NvZGUgPSBkb2N1bWVudExvYWRlciA/IGRvY3VtZW50TG9hZGVy
LT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkgOiAwOworCisgICAgSFRUUEhlYWRlck5hbWUg
aGVhZGVyTmFtZTsKKyAgICBpZiAoIWZpbmRIVFRQSGVhZGVyTmFtZShlcXVpdiwgaGVhZGVyTmFt
ZSkpCisgICAgICAgIHJldHVybjsKKworICAgIHN3aXRjaCAoaGVhZGVyTmFtZSkgeworICAgIGNh
c2UgSFRUUEhlYWRlck5hbWU6OkRlZmF1bHRTdHlsZToKKyAgICAgICAgLy8gVGhlIHByZWZlcnJl
ZCBzdHlsZSBzZXQgaGFzIGJlZW4gb3ZlcnJpZGRlbiBhcyBwZXIgc2VjdGlvbgorICAgICAgICAv
LyAxNC4zLjIgb2YgdGhlIEhUTUw0LjAgc3BlY2lmaWNhdGlvbi4gIFdlIG5lZWQgdG8gdXBkYXRl
IHRoZQorICAgICAgICAvLyBzaGVldCB1c2VkIHZhcmlhYmxlIGFuZCB0aGVuIHVwZGF0ZSBvdXIg
c3R5bGUgc2VsZWN0b3IuCisgICAgICAgIC8vIEZvciBtb3JlIGluZm8sIHNlZSB0aGUgdGVzdCBh
dDoKKyAgICAgICAgLy8gaHR0cDovL3d3dy5oaXhpZS5jaC90ZXN0cy9ldmlsL2Nzcy9pbXBvcnQv
bWFpbi9wcmVmZXJyZWQuaHRtbAorICAgICAgICAvLyAtZHdoCisgICAgICAgIHN0eWxlU2NvcGUo
KS5zZXRQcmVmZXJyZWRTdHlsZXNoZWV0U2V0TmFtZShjb250ZW50KTsKKyAgICAgICAgYnJlYWs7
CisKKyAgICBjYXNlIEhUVFBIZWFkZXJOYW1lOjpSZWZyZXNoOgorICAgICAgICBpZiAoZnJhbWUp
CisgICAgICAgICAgICBmcmFtZS0+bG9hZGVyKCkuc2NoZWR1bGVSZWZyZXNoSWZOZWVkZWQoKnRo
aXMsIGNvbnRlbnQsIElzTWV0YVJlZnJlc2g6Olllcyk7CisgICAgICAgIGJyZWFrOworCisgICAg
Y2FzZSBIVFRQSGVhZGVyTmFtZTo6U2V0Q29va2llOgorICAgICAgICBpZiAoaXNIVE1MRG9jdW1l
bnQoKSkKKyAgICAgICAgICAgIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3Vy
aXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiVGhlIFNldC1Db29raWUgbWV0YSB0YWcgaXMgb2Jz
b2xldGUgYW5kIHdhcyBpZ25vcmVkLiBVc2UgdGhlIEhUVFAgaGVhZGVyIFNldC1Db29raWUgb3Ig
ZG9jdW1lbnQuY29va2llIGluc3RlYWQuIl9zKTsKKyAgICAgICAgYnJlYWs7CisKKyAgICBjYXNl
IEhUVFBIZWFkZXJOYW1lOjpDb250ZW50TGFuZ3VhZ2U6CisgICAgICAgIHNldENvbnRlbnRMYW5n
dWFnZShjb250ZW50KTsKKyAgICAgICAgYnJlYWs7CisKKyAgICBjYXNlIEhUVFBIZWFkZXJOYW1l
OjpYRE5TUHJlZmV0Y2hDb250cm9sOgorICAgICAgICBwYXJzZUROU1ByZWZldGNoQ29udHJvbEhl
YWRlcihjb250ZW50KTsKKyAgICAgICAgYnJlYWs7CisKKyAgICBjYXNlIEhUVFBIZWFkZXJOYW1l
OjpYRnJhbWVPcHRpb25zOgorICAgICAgICBpZiAoZnJhbWUpIHsKKyAgICAgICAgICAgIEZyYW1l
TG9hZGVyJiBmcmFtZUxvYWRlciA9IGZyYW1lLT5sb2FkZXIoKTsKKyAgICAgICAgICAgIHVuc2ln
bmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIgPSAwOworICAgICAgICAgICAgaWYgKGZyYW1lTG9h
ZGVyLmFjdGl2ZURvY3VtZW50TG9hZGVyKCkgJiYgZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRM
b2FkZXIoKS0+bWFpblJlc291cmNlTG9hZGVyKCkpCisgICAgICAgICAgICAgICAgcmVxdWVzdElk
ZW50aWZpZXIgPSBmcmFtZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3Vy
Y2VMb2FkZXIoKS0+aWRlbnRpZmllcigpOworCisgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9
ICJUaGUgWC1GcmFtZS1PcHRpb24gJyIgKyBjb250ZW50ICsgIicgc3VwcGxpZWQgaW4gYSA8bWV0
YT4gZWxlbWVudCB3YXMgaWdub3JlZC4gWC1GcmFtZS1PcHRpb25zIG1heSBvbmx5IGJlIHByb3Zp
ZGVkIGJ5IGFuIEhUVFAgaGVhZGVyIHNlbnQgd2l0aCB0aGUgZG9jdW1lbnQuIjsKKyAgICAgICAg
ICAgIGFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtZXNzYWdlLCByZXF1ZXN0SWRlbnRpZmllcik7CisgICAgICAgIH0KKyAgICAg
ICAgYnJlYWs7CisKKyAgICBjYXNlIEhUVFBIZWFkZXJOYW1lOjpDb250ZW50U2VjdXJpdHlQb2xp
Y3k6CisgICAgICAgIGlmIChpc0luRG9jdW1lbnRIZWFkKQorICAgICAgICAgICAgY29udGVudFNl
Y3VyaXR5UG9saWN5KCktPmRpZFJlY2VpdmVIZWFkZXIoY29udGVudCwgQ29udGVudFNlY3VyaXR5
UG9saWN5SGVhZGVyVHlwZTo6RW5mb3JjZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpQb2xpY3lG
cm9tOjpIVFRQRXF1aXZNZXRhLCByZWZlcnJlcigpLCBodHRwU3RhdHVzQ29kZSk7CisgICAgICAg
IGJyZWFrOworCisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorfQorCit2b2lk
IERvY3VtZW50Ojpwcm9jZXNzRGlzYWJsZWRBZGFwdGF0aW9ucyhjb25zdCBTdHJpbmcmIGRpc2Fi
bGVkQWRhcHRhdGlvbnNTdHJpbmcpCit7CisgICAgYXV0byBkaXNhYmxlZEFkYXB0YXRpb25zID0g
cGFyc2VEaXNhYmxlZEFkYXB0YXRpb25zKGRpc2FibGVkQWRhcHRhdGlvbnNTdHJpbmcpOworICAg
IGlmIChtX2Rpc2FibGVkQWRhcHRhdGlvbnMgPT0gZGlzYWJsZWRBZGFwdGF0aW9ucykKKyAgICAg
ICAgcmV0dXJuOworCisgICAgbV9kaXNhYmxlZEFkYXB0YXRpb25zID0gZGlzYWJsZWRBZGFwdGF0
aW9uczsKKyAgICBkaXNwYXRjaERpc2FibGVkQWRhcHRhdGlvbnNEaWRDaGFuZ2VGb3JNYWluRnJh
bWUoKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlzcGF0Y2hEaXNhYmxlZEFkYXB0YXRpb25zRGlk
Q2hhbmdlRm9yTWFpbkZyYW1lKCkKK3sKKyAgICBpZiAoIWZyYW1lKCktPmlzTWFpbkZyYW1lKCkp
CisgICAgICAgIHJldHVybjsKKworICAgIGlmICghcGFnZSgpKQorICAgICAgICByZXR1cm47CisK
KyAgICBwYWdlKCktPmNocm9tZSgpLmRpc3BhdGNoRGlzYWJsZWRBZGFwdGF0aW9uc0RpZENoYW5n
ZShtX2Rpc2FibGVkQWRhcHRhdGlvbnMpOworfQorCit2b2lkIERvY3VtZW50Ojpwcm9jZXNzVmll
d3BvcnQoY29uc3QgU3RyaW5nJiBmZWF0dXJlcywgVmlld3BvcnRBcmd1bWVudHM6OlR5cGUgb3Jp
Z2luKQoreworICAgIEFTU0VSVCghZmVhdHVyZXMuaXNOdWxsKCkpOworCisgICAgTE9HX1dJVEhf
U1RSRUFNKFZpZXdwb3J0cywgc3RyZWFtIDw8ICJEb2N1bWVudDo6cHJvY2Vzc1ZpZXdwb3J0ICIg
PDwgZmVhdHVyZXMpOworCisgICAgaWYgKG9yaWdpbiA8IG1fdmlld3BvcnRBcmd1bWVudHMudHlw
ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV92aWV3cG9ydEFyZ3VtZW50cyA9IFZpZXdwb3J0
QXJndW1lbnRzKG9yaWdpbik7CisKKyAgICBMT0dfV0lUSF9TVFJFQU0oVmlld3BvcnRzLCBzdHJl
YW0gIDw8ICIgcmVzb2x2ZWQgdG8gIiA8PCBtX3ZpZXdwb3J0QXJndW1lbnRzKTsKKworICAgIHBy
b2Nlc3NGZWF0dXJlc1N0cmluZyhmZWF0dXJlcywgRmVhdHVyZU1vZGU6OlZpZXdwb3J0LCBbdGhp
c10oU3RyaW5nVmlldyBrZXksIFN0cmluZ1ZpZXcgdmFsdWUpIHsKKyAgICAgICAgc2V0Vmlld3Bv
cnRGZWF0dXJlKG1fdmlld3BvcnRBcmd1bWVudHMsICp0aGlzLCBrZXksIHZhbHVlKTsKKyAgICB9
KTsKKworICAgIHVwZGF0ZVZpZXdwb3J0QXJndW1lbnRzKCk7Cit9CisKK1ZpZXdwb3J0QXJndW1l
bnRzIERvY3VtZW50Ojp2aWV3cG9ydEFyZ3VtZW50cygpIGNvbnN0Cit7CisgICAgYXV0byogcGFn
ZSA9IHRoaXMtPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybiBtX3ZpZXdw
b3J0QXJndW1lbnRzOworICAgIHJldHVybiBwYWdlLT5vdmVycmlkZVZpZXdwb3J0QXJndW1lbnRz
KCkudmFsdWVfb3IobV92aWV3cG9ydEFyZ3VtZW50cyk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVw
ZGF0ZVZpZXdwb3J0QXJndW1lbnRzKCkKK3sKKyAgICBpZiAocGFnZSgpICYmIGZyYW1lKCktPmlz
TWFpbkZyYW1lKCkpIHsKKyNpZiBBU1NFUlRfRU5BQkxFRAorICAgICAgICBtX2RpZERpc3BhdGNo
Vmlld3BvcnRQcm9wZXJ0aWVzQ2hhbmdlZCA9IHRydWU7CisjZW5kaWYKKyAgICAgICAgcGFnZSgp
LT5jaHJvbWUoKS5kaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5nZSh2aWV3cG9ydEFy
Z3VtZW50cygpKTsKKyAgICAgICAgcGFnZSgpLT5jaHJvbWUoKS5kaWRSZWNlaXZlRG9jVHlwZSgq
ZnJhbWUoKSk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50OjptZXRhRWxlbWVudFRoZW1lQ29s
b3JDaGFuZ2VkKEhUTUxNZXRhRWxlbWVudCYgbWV0YUVsZW1lbnQpCit7CisgICAgLy8gSWYgdGhl
IGN1cnJlbnQgY29udGVudCBjb2xvciBpc24ndCB2YWxpZCBhbmQgaXQgd2Fzbid0IHByZXZpb3Vz
bHkgaW4gdGhlIGxpc3Qgb2YgZWxlbWVudHMKKyAgICAvLyB3aXRoIGEgdmFsaWQgY29udGVudCBj
b2xvciwgZG9uJ3QgYm90aGVyIHJlY2FsY3VsYXRpbmcgYG1fbWV0YVRoZW1lQ29sb3JFbGVtZW50
c2AuCisgICAgaWYgKCFtZXRhRWxlbWVudC5jb250ZW50Q29sb3IoKS5pc1ZhbGlkKCkgJiYgbV9t
ZXRhVGhlbWVDb2xvckVsZW1lbnRzICYmICFtX21ldGFUaGVtZUNvbG9yRWxlbWVudHMtPmNvbnRh
aW5zKCZtZXRhRWxlbWVudCkpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gb2xkVGhlbWVD
b2xvciA9IHN0ZDo6ZXhjaGFuZ2UobV9jYWNoZWRUaGVtZUNvbG9yLCBDb2xvcigpKTsKKyAgICBt
X21ldGFUaGVtZUNvbG9yRWxlbWVudHMgPSBzdGQ6Om51bGxvcHQ7CisgICAgbV9hY3RpdmVUaGVt
ZUNvbG9yTWV0YUVsZW1lbnQgPSBudWxscHRyOworICAgIGlmICh0aGVtZUNvbG9yKCkgPT0gb2xk
VGhlbWVDb2xvcikKKyAgICAgICAgcmV0dXJuOworCisgICAgdGhlbWVDb2xvckNoYW5nZWQoKTsK
K30KKworV2Vha1B0cjxIVE1MTWV0YUVsZW1lbnQ+IERvY3VtZW50OjpkZXRlcm1pbmVBY3RpdmVU
aGVtZUNvbG9yTWV0YUVsZW1lbnQoKQoreworICAgIGlmICghbV9tZXRhVGhlbWVDb2xvckVsZW1l
bnRzKSB7CisgICAgICAgIFZlY3RvcjxXZWFrUHRyPEhUTUxNZXRhRWxlbWVudD4+IG1ldGFUaGVt
ZUNvbG9yRWxlbWVudHM7CisgICAgICAgIGZvciAoYXV0byYgbWV0YUVsZW1lbnQgOiBkZXNjZW5k
YW50c09mVHlwZTxIVE1MTWV0YUVsZW1lbnQ+KCp0aGlzKSkgeworICAgICAgICAgICAgaWYgKGVx
dWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKG1ldGFFbGVtZW50Lm5hbWUoKSwgInRoZW1lLWNv
bG9yIikgJiYgbWV0YUVsZW1lbnQuY29udGVudENvbG9yKCkuaXNWYWxpZCgpKQorICAgICAgICAg
ICAgICAgIG1ldGFUaGVtZUNvbG9yRWxlbWVudHMuYXBwZW5kKG1ha2VXZWFrUHRyKG1ldGFFbGVt
ZW50KSk7CisgICAgICAgIH0KKyAgICAgICAgbV9tZXRhVGhlbWVDb2xvckVsZW1lbnRzID0gV1RG
TW92ZShtZXRhVGhlbWVDb2xvckVsZW1lbnRzKTsKKyAgICB9CisKKyAgICBmb3IgKGF1dG8mIG1l
dGFFbGVtZW50IDogKm1fbWV0YVRoZW1lQ29sb3JFbGVtZW50cykgeworICAgICAgICBpZiAobWV0
YUVsZW1lbnQgJiYgbWV0YUVsZW1lbnQtPmNvbnRlbnRDb2xvcigpLmlzVmFsaWQoKSAmJiBtZXRh
RWxlbWVudC0+bWVkaWFBdHRyaWJ1dGVNYXRjaGVzKCkpCisgICAgICAgICAgICByZXR1cm4gbWV0
YUVsZW1lbnQ7CisgICAgfQorICAgIHJldHVybiBudWxscHRyOworfQorCit2b2lkIERvY3VtZW50
Ojp0aGVtZUNvbG9yQ2hhbmdlZCgpCit7CisgICAgc2NoZWR1bGVSZW5kZXJpbmdVcGRhdGUoeyB9
KTsKKworICAgIGlmIChhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpKQorICAgICAgICBwYWdlLT5j
aHJvbWUoKS5jbGllbnQoKS50aGVtZUNvbG9yQ2hhbmdlZCgpOworfQorCisjaWYgRU5BQkxFKERB
UktfTU9ERV9DU1MpCitzdGF0aWMgdm9pZCBwcm9jZXNzQ29sb3JTY2hlbWVTdHJpbmcoU3RyaW5n
VmlldyBjb2xvclNjaGVtZSwgY29uc3QgV1RGOjpGdW5jdGlvbjx2b2lkKFN0cmluZ1ZpZXcga2V5
KT4mIGNhbGxiYWNrKQoreworICAgIHVuc2lnbmVkIGxlbmd0aCA9IGNvbG9yU2NoZW1lLmxlbmd0
aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBsZW5ndGg7ICkgeworICAgICAgICAv
LyBTa2lwIHRvIGZpcnN0IG5vbi1zZXBhcmF0b3IuCisgICAgICAgIHdoaWxlIChpIDwgbGVuZ3Ro
ICYmIGlzSFRNTFNwYWNlKGNvbG9yU2NoZW1lW2ldKSkKKyAgICAgICAgICAgICsraTsKKyAgICAg
ICAgdW5zaWduZWQga2V5QmVnaW4gPSBpOworCisgICAgICAgIC8vIFNraXAgdG8gZmlyc3Qgc2Vw
YXJhdG9yLgorICAgICAgICB3aGlsZSAoaSA8IGxlbmd0aCAmJiAhaXNIVE1MU3BhY2UoY29sb3JT
Y2hlbWVbaV0pKQorICAgICAgICAgICAgKytpOworICAgICAgICB1bnNpZ25lZCBrZXlFbmQgPSBp
OworCisgICAgICAgIGlmIChrZXlCZWdpbiA9PSBrZXlFbmQpCisgICAgICAgICAgICBjb250aW51
ZTsKKworICAgICAgICBjYWxsYmFjayhjb2xvclNjaGVtZS5zdWJzdHJpbmcoa2V5QmVnaW4sIGtl
eUVuZCAtIGtleUJlZ2luKSk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50Ojpwcm9jZXNzQ29s
b3JTY2hlbWUoY29uc3QgU3RyaW5nJiBjb2xvclNjaGVtZVN0cmluZykKK3sKKyAgICBPcHRpb25T
ZXQ8Q29sb3JTY2hlbWU+IGNvbG9yU2NoZW1lOworICAgIGJvb2wgYWxsb3dzVHJhbnNmb3JtYXRp
b25zID0gdHJ1ZTsKKyAgICBib29sIGF1dG9FbmNvdW50ZXJlZCA9IGZhbHNlOworCisgICAgcHJv
Y2Vzc0NvbG9yU2NoZW1lU3RyaW5nKGNvbG9yU2NoZW1lU3RyaW5nLCBbJl0gKFN0cmluZ1ZpZXcg
a2V5KSB7CisgICAgICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShrZXksICJh
dXRvIikpIHsKKyAgICAgICAgICAgIGNvbG9yU2NoZW1lID0geyB9OworICAgICAgICAgICAgYWxs
b3dzVHJhbnNmb3JtYXRpb25zID0gdHJ1ZTsKKyAgICAgICAgICAgIGF1dG9FbmNvdW50ZXJlZCA9
IHRydWU7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBpZiAoYXV0
b0VuY291bnRlcmVkKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShrZXksICJsaWdodCIpKQorICAgICAgICAgICAgY29sb3JT
Y2hlbWUuYWRkKENvbG9yU2NoZW1lOjpMaWdodCk7CisgICAgICAgIGVsc2UgaWYgKGVxdWFsTGV0
dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGtleSwgImRhcmsiKSkKKyAgICAgICAgICAgIGNvbG9yU2No
ZW1lLmFkZChDb2xvclNjaGVtZTo6RGFyayk7CisgICAgICAgIGVsc2UgaWYgKGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKGtleSwgIm9ubHkiKSkKKyAgICAgICAgICAgIGFsbG93c1RyYW5z
Zm9ybWF0aW9ucyA9IGZhbHNlOworICAgIH0pOworCisgICAgLy8gSWYgdGhlIHZhbHVlIHdhcyBq
dXN0ICJvbmx5IiwgdGhhdCBpcyBzeW5vbnltb3VzIGZvciAib25seSBsaWdodCIuCisgICAgaWYg
KGNvbG9yU2NoZW1lLmlzRW1wdHkoKSAmJiAhYWxsb3dzVHJhbnNmb3JtYXRpb25zKQorICAgICAg
ICBjb2xvclNjaGVtZS5hZGQoQ29sb3JTY2hlbWU6OkxpZ2h0KTsKKworICAgIG1fY29sb3JTY2hl
bWUgPSBjb2xvclNjaGVtZTsKKyAgICBtX2FsbG93c0NvbG9yU2NoZW1lVHJhbnNmb3JtYXRpb25z
ID0gYWxsb3dzVHJhbnNmb3JtYXRpb25zOworCisgICAgaWYgKFJlZlB0ciBmcmFtZVZpZXcgPSB2
aWV3KCkpCisgICAgICAgIGZyYW1lVmlldy0+cmVjYWxjdWxhdGVCYXNlQmFja2dyb3VuZENvbG9y
KCk7CisKKyAgICBpZiAoYXV0byogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAgICAgcGFnZS0+
dXBkYXRlU3R5bGVBZnRlckNoYW5nZUluRW52aXJvbm1lbnQoKTsKK30KKyNlbmRpZgorCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKwordm9pZCBEb2N1bWVudDo6cHJvY2Vzc0Zvcm1hdERldGVj
dGlvbihjb25zdCBTdHJpbmcmIGZlYXR1cmVzKQoreworICAgIC8vIEZJWE1FOiBGaW5kIGEgYmV0
dGVyIHBsYWNlIGZvciB0aGlzIGZ1bmN0aW9uLgorICAgIHByb2Nlc3NGZWF0dXJlc1N0cmluZyhm
ZWF0dXJlcywgRmVhdHVyZU1vZGU6OlZpZXdwb3J0LCBbdGhpc10oU3RyaW5nVmlldyBrZXksIFN0
cmluZ1ZpZXcgdmFsdWUpIHsKKyAgICAgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlD
YXNlKGtleSwgInRlbGVwaG9uZSIpICYmIGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHZh
bHVlLCAibm8iKSkKKyAgICAgICAgICAgIG1faXNUZWxlcGhvbmVOdW1iZXJQYXJzaW5nQWxsb3dl
ZCA9IGZhbHNlOworICAgIH0pOworfQorCit2b2lkIERvY3VtZW50Ojpwcm9jZXNzV2ViQXBwT3Jp
ZW50YXRpb25zKCkKK3sKKyAgICBpZiAoUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAg
ICAgcGFnZS0+Y2hyb21lKCkuY2xpZW50KCkud2ViQXBwT3JpZW50YXRpb25zVXBkYXRlZCgpOwor
fQorCisjZW5kaWYKKwordm9pZCBEb2N1bWVudDo6cHJvY2Vzc1JlZmVycmVyUG9saWN5KGNvbnN0
IFN0cmluZyYgcG9saWN5LCBSZWZlcnJlclBvbGljeVNvdXJjZSBzb3VyY2UpCit7CisgICAgQVNT
RVJUKCFwb2xpY3kuaXNOdWxsKCkpOworCisgICAgLy8gRG9jdW1lbnRzIGluIGEgQ29udGVudC1E
aXNwb3NpdGlvbjogYXR0YWNobWVudCBzYW5kYm94IHNob3VsZCBuZXZlciBzZW5kIGEgUmVmZXJl
ciBoZWFkZXIsCisgICAgLy8gZXZlbiBpZiB0aGUgZG9jdW1lbnQgaGFzIGEgbWV0YSB0YWcgc2F5
aW5nIG90aGVyd2lzZS4KKyAgICBpZiAoc2hvdWxkRW5mb3JjZUNvbnRlbnREaXNwb3NpdGlvbkF0
dGFjaG1lbnRTYW5kYm94KCkpCisgICAgICAgIHJldHVybjsKKworI2lmIFVTRShRVUlDS19MT09L
KQorICAgIGlmIChzaG91bGRFbmZvcmNlUXVpY2tMb29rU2FuZGJveCgpKQorICAgICAgICByZXR1
cm47CisjZW5kaWYKKyAgICAKKyAgICBhdXRvIHJlZmVycmVyUG9saWN5ID0gcGFyc2VSZWZlcnJl
clBvbGljeShwb2xpY3ksIHNvdXJjZSk7CisgICAgaWYgKCFyZWZlcnJlclBvbGljeSkgeworICAg
ICAgICAvLyBVbmtub3duIHBvbGljeSB2YWx1ZXMgYXJlIGlnbm9yZWQgKGh0dHBzOi8vdzNjLmdp
dGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyN1bmtub3duLXBvbGljeS12YWx1ZXMp
LgorICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpSZW5kZXJpbmcsIE1l
c3NhZ2VMZXZlbDo6RXJyb3IsICJGYWlsZWQgdG8gc2V0IHJlZmVycmVyIHBvbGljeTogVGhlIHZh
bHVlICciICsgcG9saWN5ICsgIicgaXMgbm90IG9uZSBvZiAnbm8tcmVmZXJyZXInLCAnbm8tcmVm
ZXJyZXItd2hlbi1kb3duZ3JhZGUnLCAnc2FtZS1vcmlnaW4nLCAnb3JpZ2luJywgJ3N0cmljdC1v
cmlnaW4nLCAnb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJywgJ3N0cmljdC1vcmlnaW4td2hlbi1j
cm9zcy1vcmlnaW4nIG9yICd1bnNhZmUtdXJsJy4iKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KyAgICBzZXRSZWZlcnJlclBvbGljeShyZWZlcnJlclBvbGljeS52YWx1ZSgpKTsKK30KKworI2lm
IEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKKwordm9pZCBEb2N1bWVudDo6cHJvY2Vzc0Fw
cGxpY2F0aW9uTWFuaWZlc3QoY29uc3QgQXBwbGljYXRpb25NYW5pZmVzdCYgYXBwbGljYXRpb25N
YW5pZmVzdCkKK3sKKyAgICBhdXRvIG9sZFRoZW1lQ29sb3IgPSBzdGQ6OmV4Y2hhbmdlKG1fY2Fj
aGVkVGhlbWVDb2xvciwgQ29sb3IoKSk7CisgICAgbV9hcHBsaWNhdGlvbk1hbmlmZXN0VGhlbWVD
b2xvciA9IGFwcGxpY2F0aW9uTWFuaWZlc3QudGhlbWVDb2xvcjsKKyAgICBpZiAodGhlbWVDb2xv
cigpID09IG9sZFRoZW1lQ29sb3IpCisgICAgICAgIHJldHVybjsKKworICAgIHRoZW1lQ29sb3JD
aGFuZ2VkKCk7Cit9CisKKyNlbmRpZiAvLyBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCisK
K01vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMgRG9jdW1lbnQ6OnByZXBhcmVNb3VzZUV2ZW50
KGNvbnN0IEhpdFRlc3RSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBMYXlvdXRQb2ludCYgZG9jdW1l
bnRQb2ludCwgY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAoIWhh
c0xpdmluZ1JlbmRlclRyZWUoKSkKKyAgICAgICAgcmV0dXJuIE1vdXNlRXZlbnRXaXRoSGl0VGVz
dFJlc3VsdHMoZXZlbnQsIEhpdFRlc3RSZXN1bHQoTGF5b3V0UG9pbnQoKSkpOworCisgICAgSGl0
VGVzdFJlc3VsdCByZXN1bHQoZG9jdW1lbnRQb2ludCk7CisgICAgaGl0VGVzdChyZXF1ZXN0LCBy
ZXN1bHQpOworCisgICAgYXV0byBjYXB0dXJlRWxlbWVudENoYW5nZWQgPSBDYXB0dXJlQ2hhbmdl
OjpObzsKKyAgICBpZiAoIXJlcXVlc3QucmVhZE9ubHkoKSkgeworICAgICAgICBhdXRvIHRhcmdl
dEVsZW1lbnQgPSBtYWtlUmVmUHRyKHJlc3VsdC50YXJnZXRFbGVtZW50KCkpOworICAgICAgICBp
ZiAoYXV0byogcGFnZSA9IHRoaXMtPnBhZ2UoKSkgeworICAgICAgICAgICAgLy8gQmVmb3JlIHdl
IGRpc3BhdGNoIGEgbmV3IG1vdXNlIGV2ZW50LCB3ZSBtdXN0IHJ1biB0aGUgUHJvY2VzcyBQZW5k
aW5nIENhcHR1cmUgRWxlbWVudCBzdGVwcyBhcyBkZWZpbmVkCisgICAgICAgICAgICAvLyBpbiBo
dHRwczovL3czYy5naXRodWIuaW8vcG9pbnRlcmV2ZW50cy8jcHJvY2Vzcy1wZW5kaW5nLXBvaW50
ZXItY2FwdHVyZS4KKyAgICAgICAgICAgIGF1dG8mIHBvaW50ZXJDYXB0dXJlQ29udHJvbGxlciA9
IHBhZ2UtPnBvaW50ZXJDYXB0dXJlQ29udHJvbGxlcigpOworICAgICAgICAgICAgUmVmUHRyIHBy
ZXZpb3VzQ2FwdHVyZUVsZW1lbnQgPSBwb2ludGVyQ2FwdHVyZUNvbnRyb2xsZXIucG9pbnRlckNh
cHR1cmVFbGVtZW50KHRoaXMsIGV2ZW50LnBvaW50ZXJJZCgpKTsKKyAgICAgICAgICAgIHBvaW50
ZXJDYXB0dXJlQ29udHJvbGxlci5wcm9jZXNzUGVuZGluZ1BvaW50ZXJDYXB0dXJlKGV2ZW50LnBv
aW50ZXJJZCgpKTsKKyAgICAgICAgICAgIFJlZlB0ciBjYXB0dXJlRWxlbWVudCA9IHBvaW50ZXJD
YXB0dXJlQ29udHJvbGxlci5wb2ludGVyQ2FwdHVyZUVsZW1lbnQodGhpcywgZXZlbnQucG9pbnRl
cklkKCkpOworICAgICAgICAgICAgLy8gSWYgdGhlIGNhcHR1cmUgZWxlbWVudCBoYXMgY2hhbmdl
ZCB3aGlsZSBydW5uaW5nIHRoZSBQcm9jZXNzIFBlbmRpbmcgQ2FwdHVyZSBFbGVtZW50IHN0ZXBz
IHRoZW4KKyAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8gaW5kaWNhdGUgdGhhdCB3aGVuIGNhbGxp
bmcgdXBkYXRlSG92ZXJBY3RpdmVTdGF0ZSB0byBiZSBzdXJlIHRoYXQgdGhlIDphY3RpdmUgYW5k
IDpob3ZlcgorICAgICAgICAgICAgLy8gZWxlbWVudCBjaGFpbnMgYXJlIHVwZGF0ZWQuCisgICAg
ICAgICAgICBpZiAocHJldmlvdXNDYXB0dXJlRWxlbWVudCAhPSBjYXB0dXJlRWxlbWVudCkKKyAg
ICAgICAgICAgICAgICBjYXB0dXJlRWxlbWVudENoYW5nZWQgPSBDYXB0dXJlQ2hhbmdlOjpZZXM7
CisgICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGEgY2FwdHVyZSBlbGVtZW50LCB3ZSBtdXN0IHRh
cmdldCBpdCBpbnN0ZWFkIG9mIHdoYXQgd291bGQgbm9ybWFsbHkgaGl0LXRlc3QgZm9yIHRoaXMg
ZXZlbnQuCisgICAgICAgICAgICBpZiAoY2FwdHVyZUVsZW1lbnQpCisgICAgICAgICAgICAgICAg
dGFyZ2V0RWxlbWVudCA9IGNhcHR1cmVFbGVtZW50OworICAgICAgICB9CisgICAgICAgIHVwZGF0
ZUhvdmVyQWN0aXZlU3RhdGUocmVxdWVzdCwgdGFyZ2V0RWxlbWVudC5nZXQoKSwgY2FwdHVyZUVs
ZW1lbnRDaGFuZ2VkKTsKKyAgICB9CisKKyAgICByZXR1cm4gTW91c2VFdmVudFdpdGhIaXRUZXN0
UmVzdWx0cyhldmVudCwgcmVzdWx0KTsKK30KKworLy8gRE9NIFNlY3Rpb24gMS4xLjEKK2Jvb2wg
RG9jdW1lbnQ6OmNoaWxkVHlwZUFsbG93ZWQoTm9kZVR5cGUgdHlwZSkgY29uc3QKK3sKKyAgICBz
d2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIEFUVFJJQlVURV9OT0RFOgorICAgIGNhc2UgQ0RBVEFf
U0VDVElPTl9OT0RFOgorICAgIGNhc2UgRE9DVU1FTlRfRlJBR01FTlRfTk9ERToKKyAgICBjYXNl
IERPQ1VNRU5UX05PREU6CisgICAgY2FzZSBURVhUX05PREU6CisgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICBjYXNlIENPTU1FTlRfTk9ERToKKyAgICBjYXNlIFBST0NFU1NJTkdfSU5TVFJVQ1RJ
T05fTk9ERToKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgY2FzZSBET0NVTUVOVF9UWVBFX05P
REU6CisgICAgY2FzZSBFTEVNRU5UX05PREU6CisgICAgICAgIC8vIERvY3VtZW50cyBtYXkgY29u
dGFpbiBubyBtb3JlIHRoYW4gb25lIG9mIGVhY2ggb2YgdGhlc2UuCisgICAgICAgIC8vIChPbmUg
RWxlbWVudCBhbmQgb25lIERvY3VtZW50VHlwZS4pCisgICAgICAgIGZvciAoTm9kZSogYyA9IGZp
cnN0Q2hpbGQoKTsgYzsgYyA9IGMtPm5leHRTaWJsaW5nKCkpCisgICAgICAgICAgICBpZiAoYy0+
bm9kZVR5cGUoKSA9PSB0eXBlKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBEb2N1
bWVudDo6Y2FuQWNjZXB0Q2hpbGQoY29uc3QgTm9kZSYgbmV3Q2hpbGQsIGNvbnN0IE5vZGUqIHJl
ZkNoaWxkLCBBY2NlcHRDaGlsZE9wZXJhdGlvbiBvcGVyYXRpb24pIGNvbnN0Cit7CisgICAgaWYg
KG9wZXJhdGlvbiA9PSBBY2NlcHRDaGlsZE9wZXJhdGlvbjo6UmVwbGFjZSAmJiByZWZDaGlsZC0+
cGFyZW50Tm9kZSgpID09IHRoaXMgJiYgcmVmQ2hpbGQtPm5vZGVUeXBlKCkgPT0gbmV3Q2hpbGQu
bm9kZVR5cGUoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBzd2l0Y2ggKG5ld0NoaWxk
Lm5vZGVUeXBlKCkpIHsKKyAgICBjYXNlIEFUVFJJQlVURV9OT0RFOgorICAgIGNhc2UgQ0RBVEFf
U0VDVElPTl9OT0RFOgorICAgIGNhc2UgRE9DVU1FTlRfTk9ERToKKyAgICBjYXNlIFRFWFRfTk9E
RToKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGNhc2UgQ09NTUVOVF9OT0RFOgorICAgIGNh
c2UgUFJPQ0VTU0lOR19JTlNUUlVDVElPTl9OT0RFOgorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICBjYXNlIERPQ1VNRU5UX0ZSQUdNRU5UX05PREU6IHsKKyAgICAgICAgYm9vbCBoYXNTZWVuRWxl
bWVudENoaWxkID0gZmFsc2U7CisgICAgICAgIGZvciAoYXV0byogbm9kZSA9IGRvd25jYXN0PERv
Y3VtZW50RnJhZ21lbnQ+KG5ld0NoaWxkKS5maXJzdENoaWxkKCk7IG5vZGU7IG5vZGUgPSBub2Rl
LT5uZXh0U2libGluZygpKSB7CisgICAgICAgICAgICBpZiAoaXM8RWxlbWVudD4oKm5vZGUpKSB7
CisgICAgICAgICAgICAgICAgaWYgKGhhc1NlZW5FbGVtZW50Q2hpbGQpCisgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgICAgICBoYXNTZWVuRWxlbWVudENoaWxk
ID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICghY2FuQWNjZXB0Q2hpbGQo
Km5vZGUsIHJlZkNoaWxkLCBvcGVyYXRpb24pKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICB9CisgICAgY2FzZSBET0NVTUVOVF9U
WVBFX05PREU6IHsKKyAgICAgICAgYXV0byogZXhpc3RpbmdEb2NUeXBlID0gY2hpbGRyZW5PZlR5
cGU8RG9jdW1lbnRUeXBlPigqdGhpcykuZmlyc3QoKTsKKyAgICAgICAgaWYgKG9wZXJhdGlvbiA9
PSBBY2NlcHRDaGlsZE9wZXJhdGlvbjo6UmVwbGFjZSkgeworICAgICAgICAgICAgLy8gIHBhcmVu
dCBoYXMgYSBkb2N0eXBlIGNoaWxkIHRoYXQgaXMgbm90IGNoaWxkLCBvciBhbiBlbGVtZW50IGlz
IHByZWNlZGluZyBjaGlsZC4KKyAgICAgICAgICAgIGlmIChleGlzdGluZ0RvY1R5cGUgJiYgZXhp
c3RpbmdEb2NUeXBlICE9IHJlZkNoaWxkKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
KyAgICAgICAgICAgIGlmIChyZWZDaGlsZC0+cHJldmlvdXNFbGVtZW50U2libGluZygpKQorICAg
ICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
IEFTU0VSVChvcGVyYXRpb24gPT0gQWNjZXB0Q2hpbGRPcGVyYXRpb246Okluc2VydE9yQWRkKTsK
KyAgICAgICAgICAgIGlmIChleGlzdGluZ0RvY1R5cGUpCisgICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgICAgICAgICAgaWYgKChyZWZDaGlsZCAmJiByZWZDaGlsZC0+cHJldmlvdXNF
bGVtZW50U2libGluZygpKSB8fCAoIXJlZkNoaWxkICYmIGZpcnN0RWxlbWVudENoaWxkKCkpKQor
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsK
KyAgICB9CisgICAgY2FzZSBFTEVNRU5UX05PREU6IHsKKyAgICAgICAgYXV0byogZXhpc3RpbmdF
bGVtZW50Q2hpbGQgPSBmaXJzdEVsZW1lbnRDaGlsZCgpOworICAgICAgICBpZiAob3BlcmF0aW9u
ID09IEFjY2VwdENoaWxkT3BlcmF0aW9uOjpSZXBsYWNlKSB7CisgICAgICAgICAgICBpZiAoZXhp
c3RpbmdFbGVtZW50Q2hpbGQgJiYgZXhpc3RpbmdFbGVtZW50Q2hpbGQgIT0gcmVmQ2hpbGQpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgZm9yIChhdXRvKiBjaGls
ZCA9IHJlZkNoaWxkLT5uZXh0U2libGluZygpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNp
YmxpbmcoKSkgeworICAgICAgICAgICAgICAgIGlmIChpczxEb2N1bWVudFR5cGU+KCpjaGlsZCkp
CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgIEFTU0VSVChvcGVyYXRpb24gPT0gQWNjZXB0Q2hpbGRP
cGVyYXRpb246Okluc2VydE9yQWRkKTsKKyAgICAgICAgICAgIGlmIChleGlzdGluZ0VsZW1lbnRD
aGlsZCkKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICBmb3IgKGF1
dG8qIGNoaWxkID0gcmVmQ2hpbGQ7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygp
KSB7CisgICAgICAgICAgICAgICAgaWYgKGlzPERvY3VtZW50VHlwZT4oKmNoaWxkKSkKKyAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgICAgIGJyZWFrOworICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisKK1JlZjxO
b2RlPiBEb2N1bWVudDo6Y2xvbmVOb2RlSW50ZXJuYWwoRG9jdW1lbnQmLCBDbG9uaW5nT3BlcmF0
aW9uIHR5cGUpCit7CisgICAgUmVmPERvY3VtZW50PiBjbG9uZSA9IGNsb25lRG9jdW1lbnRXaXRo
b3V0Q2hpbGRyZW4oKTsKKyAgICBjbG9uZS0+Y2xvbmVEYXRhRnJvbURvY3VtZW50KCp0aGlzKTsK
KyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIENsb25pbmdPcGVyYXRpb246Ok9ubHlTZWxm
OgorICAgIGNhc2UgQ2xvbmluZ09wZXJhdGlvbjo6U2VsZldpdGhUZW1wbGF0ZUNvbnRlbnQ6Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgQ2xvbmluZ09wZXJhdGlvbjo6RXZlcnl0aGluZzoKKyAg
ICAgICAgY2xvbmVDaGlsZE5vZGVzKGNsb25lKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAg
IHJldHVybiBjbG9uZTsKK30KKworUmVmPERvY3VtZW50PiBEb2N1bWVudDo6Y2xvbmVEb2N1bWVu
dFdpdGhvdXRDaGlsZHJlbigpIGNvbnN0Cit7CisgICAgaWYgKGlzWE1MRG9jdW1lbnQoKSkgewor
ICAgICAgICBpZiAoaXNYSFRNTERvY3VtZW50KCkpCisgICAgICAgICAgICByZXR1cm4gWE1MRG9j
dW1lbnQ6OmNyZWF0ZVhIVE1MKG51bGxwdHIsIG1fc2V0dGluZ3MsIHVybCgpKTsKKyAgICAgICAg
cmV0dXJuIFhNTERvY3VtZW50OjpjcmVhdGUobnVsbHB0ciwgbV9zZXR0aW5ncywgdXJsKCkpOwor
ICAgIH0KKyAgICByZXR1cm4gY3JlYXRlKG1fc2V0dGluZ3MsIHVybCgpKTsKK30KKwordm9pZCBE
b2N1bWVudDo6Y2xvbmVEYXRhRnJvbURvY3VtZW50KGNvbnN0IERvY3VtZW50JiBvdGhlcikKK3sK
KyAgICBBU1NFUlQobV91cmwgPT0gb3RoZXIudXJsKCkpOworICAgIG1fYmFzZVVSTCA9IG90aGVy
LmJhc2VVUkwoKTsKKyAgICBtX2Jhc2VVUkxPdmVycmlkZSA9IG90aGVyLmJhc2VVUkxPdmVycmlk
ZSgpOworICAgIG1fZG9jdW1lbnRVUkkgPSBvdGhlci5kb2N1bWVudFVSSSgpOworCisgICAgc2V0
Q29tcGF0aWJpbGl0eU1vZGUob3RoZXIubV9jb21wYXRpYmlsaXR5TW9kZSk7CisgICAgc2V0Q29u
dGV4dERvY3VtZW50KG90aGVyLmNvbnRleHREb2N1bWVudCgpKTsKKyAgICBzZXRTZWN1cml0eU9y
aWdpblBvbGljeShvdGhlci5zZWN1cml0eU9yaWdpblBvbGljeSgpKTsKKyAgICBvdmVycmlkZU1J
TUVUeXBlKG90aGVyLmNvbnRlbnRUeXBlKCkpOworICAgIHNldERlY29kZXIob3RoZXIuZGVjb2Rl
cigpKTsKK30KKworU3R5bGVTaGVldExpc3QmIERvY3VtZW50OjpzdHlsZVNoZWV0cygpCit7Cisg
ICAgaWYgKCFtX3N0eWxlU2hlZXRMaXN0KQorICAgICAgICBtX3N0eWxlU2hlZXRMaXN0ID0gU3R5
bGVTaGVldExpc3Q6OmNyZWF0ZSgqdGhpcyk7CisgICAgcmV0dXJuICptX3N0eWxlU2hlZXRMaXN0
OworfQorCit2b2lkIERvY3VtZW50Ojp1cGRhdGVFbGVtZW50c0FmZmVjdGVkQnlNZWRpYVF1ZXJp
ZXMoKQoreworICAgIFNjcmlwdERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFkIHNjcmlwdERp
c2FsbG93ZWRTY29wZTsKKworICAgIGlmIChhdXRvIGFjdGl2ZVRoZW1lQ29sb3JFbGVtZW50ID0g
ZGV0ZXJtaW5lQWN0aXZlVGhlbWVDb2xvck1ldGFFbGVtZW50KCk7IG1fYWN0aXZlVGhlbWVDb2xv
ck1ldGFFbGVtZW50ICE9IGFjdGl2ZVRoZW1lQ29sb3JFbGVtZW50KSB7CisgICAgICAgIGF1dG8g
b2xkVGhlbWVDb2xvciA9IHN0ZDo6ZXhjaGFuZ2UobV9jYWNoZWRUaGVtZUNvbG9yLCBDb2xvcigp
KTsKKyAgICAgICAgbV9hY3RpdmVUaGVtZUNvbG9yTWV0YUVsZW1lbnQgPSBXVEZNb3ZlKGFjdGl2
ZVRoZW1lQ29sb3JFbGVtZW50KTsKKyAgICAgICAgaWYgKHRoZW1lQ29sb3IoKSAhPSBvbGRUaGVt
ZUNvbG9yKQorICAgICAgICAgICAgdGhlbWVDb2xvckNoYW5nZWQoKTsKKyAgICB9CisKKyAgICAv
LyBGSVhNRTogY29weVRvVmVjdG9yIGRvZXNuJ3Qgd29yayB3aXRoIFdlYWtIYXNoU2V0CisgICAg
VmVjdG9yPFJlZjxIVE1MSW1hZ2VFbGVtZW50Pj4gaW1hZ2VzOworICAgIGltYWdlcy5yZXNlcnZl
SW5pdGlhbENhcGFjaXR5KG1fZHluYW1pY01lZGlhUXVlcnlEZXBlbmRlbnRJbWFnZXMuY29tcHV0
ZVNpemUoKSk7CisgICAgZm9yIChhdXRvJiBpbWFnZSA6IG1fZHluYW1pY01lZGlhUXVlcnlEZXBl
bmRlbnRJbWFnZXMpCisgICAgICAgIGltYWdlcy5hcHBlbmQoaW1hZ2UpOworCisgICAgZm9yIChh
dXRvJiBpbWFnZSA6IGltYWdlcykKKyAgICAgICAgaW1hZ2UtPmV2YWx1YXRlRHluYW1pY01lZGlh
UXVlcnlEZXBlbmRlbmNpZXMoKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZXZhbHVhdGVNZWRpYVF1
ZXJpZXNBbmRSZXBvcnRDaGFuZ2VzKCkKK3sKKyAgICBpZiAoIW1fbWVkaWFRdWVyeU1hdGNoZXIp
CisgICAgICAgIHJldHVybjsKKworICAgIG1fbWVkaWFRdWVyeU1hdGNoZXItPmV2YWx1YXRlQWxs
KCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZVZpZXdwb3J0VW5pdHNPblJlc2l6ZSgpCit7
CisgICAgaWYgKCFoYXNTdHlsZVdpdGhWaWV3cG9ydFVuaXRzKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIHN0eWxlU2NvcGUoKS5yZXNvbHZlcigpLmNsZWFyQ2FjaGVkRGVjbGFyYXRpb25zQWZm
ZWN0ZWRCeVZpZXdwb3J0VW5pdHMoKTsKKworICAgIC8vIEZJWE1FOiBJZGVhbGx5LCB3ZSBzaG91
bGQgc2F2ZSB0aGUgbGlzdCBvZiBlbGVtZW50cyB0aGF0IGhhdmUgdmlld3BvcnQgdW5pdHMgYW5k
IG9ubHkgaXRlcmF0ZSBvdmVyIHRob3NlLgorICAgIGZvciAoUmVmUHRyIGVsZW1lbnQgPSBFbGVt
ZW50VHJhdmVyc2FsOjpmaXJzdFdpdGhpbihyb290Tm9kZSgpKTsgZWxlbWVudDsgZWxlbWVudCA9
IEVsZW1lbnRUcmF2ZXJzYWw6Om5leHRJbmNsdWRpbmdQc2V1ZG8oKmVsZW1lbnQpKSB7CisgICAg
ICAgIGF1dG8qIHJlbmRlcmVyID0gZWxlbWVudC0+cmVuZGVyZXIoKTsKKyAgICAgICAgaWYgKHJl
bmRlcmVyICYmIHJlbmRlcmVyLT5zdHlsZSgpLmhhc1ZpZXdwb3J0VW5pdHMoKSkKKyAgICAgICAg
ICAgIGVsZW1lbnQtPmludmFsaWRhdGVTdHlsZSgpOworICAgIH0KK30KKwordm9pZCBEb2N1bWVu
dDo6c2V0TmVlZHNET01XaW5kb3dSZXNpemVFdmVudCgpCit7CisgICAgbV9uZWVkc0RPTVdpbmRv
d1Jlc2l6ZUV2ZW50ID0gdHJ1ZTsKKyAgICBzY2hlZHVsZVJlbmRlcmluZ1VwZGF0ZShSZW5kZXJp
bmdVcGRhdGVTdGVwOjpSZXNpemUpOworfQorCit2b2lkIERvY3VtZW50OjpzZXROZWVkc1Zpc3Vh
bFZpZXdwb3J0UmVzaXplKCkKK3sKKyAgICBtX25lZWRzVmlzdWFsVmlld3BvcnRSZXNpemVFdmVu
dCA9IHRydWU7CisgICAgc2NoZWR1bGVSZW5kZXJpbmdVcGRhdGUoUmVuZGVyaW5nVXBkYXRlU3Rl
cDo6UmVzaXplKTsKK30KKworLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzc29tLXZpZXcv
I3J1bi10aGUtcmVzaXplLXN0ZXBzCit2b2lkIERvY3VtZW50OjpydW5SZXNpemVTdGVwcygpCit7
CisgICAgLy8gRklYTUU6IFRoZSBvcmRlciBvZiBkaXNwYXRjaGluZyBpcyBub3Qgc3BlY2lmaWVk
OiBodHRwczovL2dpdGh1Yi5jb20vV0lDRy92aXN1YWwtdmlld3BvcnQvaXNzdWVzLzY1LgorICAg
IGlmIChtX25lZWRzRE9NV2luZG93UmVzaXplRXZlbnQpIHsKKyAgICAgICAgTE9HX1dJVEhfU1RS
RUFNKEV2ZW50cywgc3RyZWFtIDw8ICJEb2N1bWVudCAiIDw8IHRoaXMgPDwgIiBzZW5kaW5nIHJl
c2l6ZSBldmVudHMgdG8gd2luZG93Iik7CisgICAgICAgIG1fbmVlZHNET01XaW5kb3dSZXNpemVF
dmVudCA9IGZhbHNlOworICAgICAgICBkaXNwYXRjaFdpbmRvd0V2ZW50KEV2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lcygpLnJlc2l6ZUV2ZW50LCBFdmVudDo6Q2FuQnViYmxlOjpObywgRXZlbnQ6Oklz
Q2FuY2VsYWJsZTo6Tm8pKTsKKyAgICB9CisgICAgaWYgKG1fbmVlZHNWaXN1YWxWaWV3cG9ydFJl
c2l6ZUV2ZW50KSB7CisgICAgICAgIExPR19XSVRIX1NUUkVBTShFdmVudHMsIHN0cmVhbSA8PCAi
RG9jdW1lbnQgIiA8PCB0aGlzIDw8ICIgc2VuZGluZyByZXNpemUgZXZlbnRzIHRvIHZpc3VhbFZp
ZXdwb3J0Iik7CisgICAgICAgIG1fbmVlZHNWaXN1YWxWaWV3cG9ydFJlc2l6ZUV2ZW50ID0gZmFs
c2U7CisgICAgICAgIGlmIChSZWZQdHIgd2luZG93ID0gZG9tV2luZG93KCkpCisgICAgICAgICAg
ICB3aW5kb3ctPnZpc3VhbFZpZXdwb3J0KCkuZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2
ZW50TmFtZXMoKS5yZXNpemVFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8sIEV2ZW50OjpJc0Nh
bmNlbGFibGU6Ok5vKSk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50OjphZGRQZW5kaW5nU2Ny
b2xsRXZlbnRUYXJnZXQoQ29udGFpbmVyTm9kZSYgdGFyZ2V0KQoreworICAgIGlmICghbV9wZW5k
aW5nU2Nyb2xsRXZlbnRUYXJnZXRMaXN0KQorICAgICAgICBtX3BlbmRpbmdTY3JvbGxFdmVudFRh
cmdldExpc3QgPSBtYWtlVW5pcXVlPFBlbmRpbmdTY3JvbGxFdmVudFRhcmdldExpc3Q+KCk7CisK
KyAgICBhdXRvJiB0YXJnZXRzID0gbV9wZW5kaW5nU2Nyb2xsRXZlbnRUYXJnZXRMaXN0LT50YXJn
ZXRzOworICAgIGlmICh0YXJnZXRzLmZpbmRNYXRjaGluZyhbJl0gKGF1dG8mIGVudHJ5KSB7IHJl
dHVybiBlbnRyeS5wdHIoKSA9PSAmdGFyZ2V0OyB9KSAhPSBub3RGb3VuZCkKKyAgICAgICAgcmV0
dXJuOworCisgICAgaWYgKHRhcmdldHMuaXNFbXB0eSgpKQorICAgICAgICBzY2hlZHVsZVJlbmRl
cmluZ1VwZGF0ZShSZW5kZXJpbmdVcGRhdGVTdGVwOjpTY3JvbGwpOworCisgICAgdGFyZ2V0cy5h
cHBlbmQodGFyZ2V0KTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0TmVlZHNWaXN1YWxWaWV3cG9y
dFNjcm9sbEV2ZW50KCkKK3sKKyAgICBpZiAoIW1fbmVlZHNWaXN1YWxWaWV3cG9ydFNjcm9sbEV2
ZW50KQorICAgICAgICBzY2hlZHVsZVJlbmRlcmluZ1VwZGF0ZShSZW5kZXJpbmdVcGRhdGVTdGVw
OjpTY3JvbGwpOworICAgIG1fbmVlZHNWaXN1YWxWaWV3cG9ydFNjcm9sbEV2ZW50ID0gdHJ1ZTsK
K30KKworLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzc29tLXZpZXcvI3J1bi10aGUtc2Ny
b2xsLXN0ZXBzCit2b2lkIERvY3VtZW50OjpydW5TY3JvbGxTdGVwcygpCit7CisgICAgLy8gRklY
TUU6IFRoZSBvcmRlciBvZiBkaXNwYXRjaGluZyBpcyBub3Qgc3BlY2lmaWVkOiBodHRwczovL2dp
dGh1Yi5jb20vV0lDRy92aXN1YWwtdmlld3BvcnQvaXNzdWVzLzY2LgorICAgIGlmIChtX3BlbmRp
bmdTY3JvbGxFdmVudFRhcmdldExpc3QgJiYgIW1fcGVuZGluZ1Njcm9sbEV2ZW50VGFyZ2V0TGlz
dC0+dGFyZ2V0cy5pc0VtcHR5KCkpIHsKKyAgICAgICAgTE9HX1dJVEhfU1RSRUFNKEV2ZW50cywg
c3RyZWFtIDw8ICJEb2N1bWVudCAiIDw8IHRoaXMgPDwgIiBzZW5kaW5nIHNjcm9sbCBldmVudHMg
dG8gcGVuZGluZyBzY3JvbGwgZXZlbnQgdGFyZ2V0cyIpOworICAgICAgICBhdXRvIGN1cnJlbnRU
YXJnZXRzID0gV1RGTW92ZShtX3BlbmRpbmdTY3JvbGxFdmVudFRhcmdldExpc3QtPnRhcmdldHMp
OworICAgICAgICBmb3IgKGF1dG8mIHRhcmdldCA6IGN1cnJlbnRUYXJnZXRzKSB7CisgICAgICAg
ICAgICBhdXRvIGJ1YmJsZXMgPSB0YXJnZXQtPmlzRG9jdW1lbnROb2RlKCkgPyBFdmVudDo6Q2Fu
QnViYmxlOjpZZXMgOiBFdmVudDo6Q2FuQnViYmxlOjpObzsKKyAgICAgICAgICAgIHRhcmdldC0+
ZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5zY3JvbGxFdmVudCwgYnVi
YmxlcywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6Tm8pKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBp
ZiAobV9uZWVkc1Zpc3VhbFZpZXdwb3J0U2Nyb2xsRXZlbnQpIHsKKyAgICAgICAgTE9HX1dJVEhf
U1RSRUFNKEV2ZW50cywgc3RyZWFtIDw8ICJEb2N1bWVudCAiIDw8IHRoaXMgPDwgIiBzZW5kaW5n
IHNjcm9sbCBldmVudHMgdG8gdmlzdWFsVmlld3BvcnQiKTsKKyAgICAgICAgbV9uZWVkc1Zpc3Vh
bFZpZXdwb3J0U2Nyb2xsRXZlbnQgPSBmYWxzZTsKKyAgICAgICAgaWYgKFJlZlB0ciB3aW5kb3cg
PSBkb21XaW5kb3coKSkKKyAgICAgICAgICAgIHdpbmRvdy0+dmlzdWFsVmlld3BvcnQoKS5kaXNw
YXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLnNjcm9sbEV2ZW50LCBFdmVudDo6
Q2FuQnViYmxlOjpObywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6Tm8pKTsKKyAgICB9Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OmludmFsaWRhdGVTY3JvbGxiYXJzKCkKK3sKKyAgICBpZiAoUmVmUHRyIGZy
YW1lVmlldyA9IHZpZXcoKSkKKyAgICAgICAgZnJhbWVWaWV3LT5pbnZhbGlkYXRlU2Nyb2xsYmFy
c0ZvckFsbFNjcm9sbGFibGVBcmVhcygpOworfQorCit2b2lkIERvY3VtZW50OjphZGRBdWRpb1By
b2R1Y2VyKE1lZGlhUHJvZHVjZXImIGF1ZGlvUHJvZHVjZXIpCit7CisgICAgbV9hdWRpb1Byb2R1
Y2Vycy5hZGQoYXVkaW9Qcm9kdWNlcik7CisgICAgdXBkYXRlSXNQbGF5aW5nTWVkaWEoKTsKK30K
Kwordm9pZCBEb2N1bWVudDo6cmVtb3ZlQXVkaW9Qcm9kdWNlcihNZWRpYVByb2R1Y2VyJiBhdWRp
b1Byb2R1Y2VyKQoreworICAgIFJFTEVBU0VfQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKyAgICBt
X2F1ZGlvUHJvZHVjZXJzLnJlbW92ZShhdWRpb1Byb2R1Y2VyKTsKKyAgICB1cGRhdGVJc1BsYXlp
bmdNZWRpYSgpOworfQorCit2b2lkIERvY3VtZW50OjpzZXRBY3RpdmVTcGVlY2hSZWNvZ25pdGlv
bihTcGVlY2hSZWNvZ25pdGlvbiogc3BlZWNoUmVjb2duaXRpb24pCit7CisgICAgaWYgKG1fYWN0
aXZlU3BlZWNoUmVjb2duaXRpb24gPT0gc3BlZWNoUmVjb2duaXRpb24pCisgICAgICAgIHJldHVy
bjsKKworICAgIG1fYWN0aXZlU3BlZWNoUmVjb2duaXRpb24gPSBtYWtlV2Vha1B0cihzcGVlY2hS
ZWNvZ25pdGlvbik7CisgICAgdXBkYXRlSXNQbGF5aW5nTWVkaWEoKTsKK30KKwordm9pZCBEb2N1
bWVudDo6bm90ZVVzZXJJbnRlcmFjdGlvbldpdGhNZWRpYUVsZW1lbnQoKQoreworICAgIGlmICht
X3VzZXJIYXNJbnRlcmFjdGVkV2l0aE1lZGlhRWxlbWVudCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgaWYgKCF0b3BEb2N1bWVudCgpLnVzZXJEaWRJbnRlcmFjdFdpdGhQYWdlKCkpCisgICAgICAg
IHJldHVybjsKKworICAgIG1fdXNlckhhc0ludGVyYWN0ZWRXaXRoTWVkaWFFbGVtZW50ID0gdHJ1
ZTsKKyAgICB1cGRhdGVJc1BsYXlpbmdNZWRpYSgpOworfQorCit2b2lkIERvY3VtZW50Ojp1cGRh
dGVJc1BsYXlpbmdNZWRpYSgpCit7CisgICAgQVNTRVJUKCFtX2F1ZGlvUHJvZHVjZXJzLmhhc051
bGxSZWZlcmVuY2VzKCkpOworICAgIE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncyBzdGF0
ZTsKKyAgICBmb3IgKGF1dG8mIGF1ZGlvUHJvZHVjZXIgOiBtX2F1ZGlvUHJvZHVjZXJzKQorICAg
ICAgICBzdGF0ZS5hZGQoYXVkaW9Qcm9kdWNlci5tZWRpYVN0YXRlKCkpOworCisjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKKyAgICBzdGF0ZS5hZGQoTWVkaWFTdHJlYW1UcmFjazo6Y2FwdHVyZVN0
YXRlKCp0aGlzKSk7CisgICAgaWYgKG1fYWN0aXZlU3BlZWNoUmVjb2duaXRpb24pCisgICAgICAg
IHN0YXRlLmFkZChNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlOjpIYXNBY3RpdmVBdWRpb0NhcHR1
cmVEZXZpY2UpOworI2VuZGlmCisKKyAgICBpZiAobV91c2VySGFzSW50ZXJhY3RlZFdpdGhNZWRp
YUVsZW1lbnQpCisgICAgICAgIHN0YXRlLmFkZChNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlOjpI
YXNVc2VySW50ZXJhY3RlZFdpdGhNZWRpYUVsZW1lbnQpOworCisgICAgaWYgKHN0YXRlID09IG1f
bWVkaWFTdGF0ZSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
KyAgICBib29sIGNhcHR1cmVTdGF0ZUNoYW5nZWQgPSBNZWRpYVByb2R1Y2VyOjppc0NhcHR1cmlu
ZyhtX21lZGlhU3RhdGUpICE9IE1lZGlhUHJvZHVjZXI6OmlzQ2FwdHVyaW5nKHN0YXRlKTsKKyNl
bmRpZgorICAgIAorICAgIG1fbWVkaWFTdGF0ZSA9IHN0YXRlOworCisgICAgaWYgKGF1dG8qIHBh
Z2UgPSB0aGlzLT5wYWdlKCkpCisgICAgICAgIHBhZ2UtPnVwZGF0ZUlzUGxheWluZ01lZGlhKCk7
CisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIGlmIChjYXB0dXJlU3RhdGVDaGFuZ2Vk
KQorICAgICAgICBtZWRpYVN0cmVhbUNhcHR1cmVTdGF0ZUNoYW5nZWQoKTsKKyNlbmRpZgorfQor
Cit2b2lkIERvY3VtZW50OjpwYWdlTXV0ZWRTdGF0ZURpZENoYW5nZSgpCit7CisgICAgZm9yIChh
dXRvJiBhdWRpb1Byb2R1Y2VyIDogbV9hdWRpb1Byb2R1Y2VycykKKyAgICAgICAgYXVkaW9Qcm9k
dWNlci5wYWdlTXV0ZWRTdGF0ZURpZENoYW5nZSgpOworCisjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKKyAgICBNZWRpYVN0cmVhbVRyYWNrOjp1cGRhdGVDYXB0dXJlQWNjb3JkaW5nVG9NdXRlZFN0
YXRlKCp0aGlzKTsKKyNlbmRpZgorfQorCitzdGF0aWMgYm9vbCBpc05vZGVJblN1YnRyZWUoTm9k
ZSYgbm9kZSwgTm9kZSYgY29udGFpbmVyLCBEb2N1bWVudDo6Tm9kZVJlbW92YWwgbm9kZVJlbW92
YWwpCit7CisgICAgaWYgKG5vZGVSZW1vdmFsID09IERvY3VtZW50OjpOb2RlUmVtb3ZhbDo6Q2hp
bGRyZW5PZk5vZGUpCisgICAgICAgIHJldHVybiBub2RlLmlzRGVzY2VuZGFudE9mKGNvbnRhaW5l
cik7CisKKyAgICByZXR1cm4gJm5vZGUgPT0gJmNvbnRhaW5lciB8fCBub2RlLmlzRGVzY2VuZGFu
dE9mKGNvbnRhaW5lcik7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFkanVzdEZvY3VzZWROb2RlT25O
b2RlUmVtb3ZhbChOb2RlJiBub2RlLCBOb2RlUmVtb3ZhbCBub2RlUmVtb3ZhbCkKK3sKKyAgICBp
ZiAoIW1fZm9jdXNlZEVsZW1lbnQgfHwgYmFja0ZvcndhcmRDYWNoZVN0YXRlKCkgIT0gTm90SW5C
YWNrRm9yd2FyZENhY2hlKSAvLyBJZiB0aGUgZG9jdW1lbnQgaXMgaW4gdGhlIGJhY2svZm9yd2Fy
ZCBjYWNoZSwgdGhlbiB3ZSBkb24ndCBuZWVkIHRvIGNsZWFyIG91dCB0aGUgZm9jdXNlZCBub2Rl
LgorICAgICAgICByZXR1cm47CisKKyAgICBSZWZQdHIgZm9jdXNlZEVsZW1lbnQgPSBub2RlLnRy
ZWVTY29wZSgpLmZvY3VzZWRFbGVtZW50SW5TY29wZSgpOworICAgIGlmICghZm9jdXNlZEVsZW1l
bnQpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChpc05vZGVJblN1YnRyZWUoKmZvY3VzZWRF
bGVtZW50LCBub2RlLCBub2RlUmVtb3ZhbCkpIHsKKyAgICAgICAgLy8gRklYTUU6IFdlIHNob3Vs
ZCBhdm9pZCBzeW5jaHJvbm91c2x5IHVwZGF0aW5nIHRoZSBzdHlsZSBpbnNpZGUgc2V0Rm9jdXNl
ZEVsZW1lbnQuCisgICAgICAgIC8vIEZJWE1FOiBPYmplY3QgZWxlbWVudHMgc2hvdWxkIGF2b2lk
IGxvYWRpbmcgYSBmcmFtZSBzeW5jaHJvbm91c2x5IGluIGEgcG9zdCBzdHlsZSByZWNhbGMgY2Fs
bGJhY2suCisgICAgICAgIFN1YmZyYW1lTG9hZGluZ0Rpc2FibGVyIGRpc2FibGVyKGlzPENvbnRh
aW5lck5vZGU+KG5vZGUpID8gJmRvd25jYXN0PENvbnRhaW5lck5vZGU+KG5vZGUpIDogbnVsbHB0
cik7CisgICAgICAgIHNldEZvY3VzZWRFbGVtZW50KG51bGxwdHIsIHsgeyB9LCB7IH0sIEZvY3Vz
UmVtb3ZhbEV2ZW50c01vZGU6OkRvTm90RGlzcGF0Y2gsIHsgfSwgeyB9IH0pOworICAgICAgICAv
LyBTZXQgdGhlIGZvY3VzIG5hdmlnYXRpb24gc3RhcnRpbmcgbm9kZSB0byB0aGUgcHJldmlvdXMg
Zm9jdXNlZCBlbGVtZW50IHNvIHRoYXQKKyAgICAgICAgLy8gd2UgY2FuIGZhbGxiYWNrIHRvIHRo
ZSBzaWJsaW5ncyBvciBwYXJlbnQgbm9kZSBmb3IgdGhlIG5leHQgc2VhcmNoLgorICAgICAgICAv
LyBBbHNvIHdlIG5lZWQgdG8gY2FsbCByZW1vdmVGb2N1c05hdmlnYXRpb25Ob2RlT2ZTdWJ0cmVl
IGFmdGVyIHRoaXMgZnVuY3Rpb24gYmVjYXVzZQorICAgICAgICAvLyBzZXRGb2N1c2VkRWxlbWVu
dChudWxscHRyKSB3aWxsIHJlc2V0IG1fZm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlLgorICAg
ICAgICBzZXRGb2N1c05hdmlnYXRpb25TdGFydGluZ05vZGUoZm9jdXNlZEVsZW1lbnQuZ2V0KCkp
OworICAgIH0KK30KKwordm9pZCBEb2N1bWVudDo6aG92ZXJlZEVsZW1lbnREaWREZXRhY2goRWxl
bWVudCYgZWxlbWVudCkKK3sKKyAgICBpZiAoIW1faG92ZXJlZEVsZW1lbnQgfHwgJmVsZW1lbnQg
IT0gbV9ob3ZlcmVkRWxlbWVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9ob3ZlcmVkRWxl
bWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudCgpOworICAgIHdoaWxlIChtX2hvdmVyZWRFbGVt
ZW50ICYmICFtX2hvdmVyZWRFbGVtZW50LT5yZW5kZXJlcigpKQorICAgICAgICBtX2hvdmVyZWRF
bGVtZW50ID0gbV9ob3ZlcmVkRWxlbWVudC0+cGFyZW50RWxlbWVudCgpOworICAgIGlmIChmcmFt
ZSgpKQorICAgICAgICBmcmFtZSgpLT5ldmVudEhhbmRsZXIoKS5zY2hlZHVsZUhvdmVyU3RhdGVV
cGRhdGUoKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZWxlbWVudEluQWN0aXZlQ2hhaW5EaWREZXRh
Y2goRWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICBpZiAoIW1fYWN0aXZlRWxlbWVudCB8fCAmZWxl
bWVudCAhPSBtX2FjdGl2ZUVsZW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAgIG1fYWN0aXZl
RWxlbWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudCgpOworICAgIHdoaWxlIChtX2FjdGl2ZUVs
ZW1lbnQgJiYgIW1fYWN0aXZlRWxlbWVudC0+cmVuZGVyZXIoKSkKKyAgICAgICAgbV9hY3RpdmVF
bGVtZW50ID0gbV9hY3RpdmVFbGVtZW50LT5wYXJlbnRFbGVtZW50KCk7Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6OnVwZGF0ZUV2ZW50UmVnaW9ucygpCit7CisgICAgLy8gRklYTUU6IE1vdmUgdXBkYXRl
VG91Y2hFdmVudFJlZ2lvbnMoKSBoZXJlLCBidXQgaXQgc2hvdWxkIG9ubHkgaGFwcGVuIGZvciB0
aGUgdG9wIGRvY3VtZW50LgorICAgIGlmIChhdXRvKiB2aWV3ID0gcmVuZGVyVmlldygpKSB7Cisg
ICAgICAgIGlmICh2aWV3LT51c2VzQ29tcG9zaXRpbmcoKSkKKyAgICAgICAgICAgIHZpZXctPmNv
bXBvc2l0b3IoKS51cGRhdGVFdmVudFJlZ2lvbnMoKTsKKyAgICB9Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OmludmFsaWRhdGVFdmVudFJlZ2lvbnNGb3JGcmFtZShIVE1MRnJhbWVPd25lckVsZW1lbnQm
IGVsZW1lbnQpCit7CisgICAgYXV0byogcmVuZGVyZXIgPSBlbGVtZW50LnJlbmRlcmVyKCk7Cisg
ICAgaWYgKCFyZW5kZXJlcikKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChhdXRvKiBsYXllciA9
IHJlbmRlcmVyLT5lbmNsb3NpbmdMYXllcigpKSB7CisgICAgICAgIGlmIChsYXllci0+aW52YWxp
ZGF0ZUV2ZW50UmVnaW9uKFJlbmRlckxheWVyOjpFdmVudFJlZ2lvbkludmFsaWRhdGlvblJlYXNv
bjo6Tm9uQ29tcG9zaXRlZEZyYW1lKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAg
aWYgKFJlZlB0ciBvd25lckVsZW1lbnQgPSB0aGlzLT5vd25lckVsZW1lbnQoKSkKKyAgICAgICAg
b3duZXJFbGVtZW50LT5kb2N1bWVudCgpLmludmFsaWRhdGVFdmVudFJlZ2lvbnNGb3JGcmFtZSgq
b3duZXJFbGVtZW50KTsKK30KKwordm9pZCBEb2N1bWVudDo6aW52YWxpZGF0ZUV2ZW50TGlzdGVu
ZXJSZWdpb25zKCkKK3sKKyAgICBpZiAoIXJlbmRlclZpZXcoKSB8fCAhZG9jdW1lbnRFbGVtZW50
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFdlIGRvbid0IHRyYWNrIHN0eWxlIHZhbGlk
aXR5IGZvciBEb2N1bWVudCBhbmQgZnVsbCByZWJ1aWxkIGlzIHRvbyBiaWcgb2YgYSBoYW1tZXIu
CisgICAgLy8gSW5zdGVhZCBqdXN0IG11dGF0ZSB0aGUgc3R5bGUgZGlyZWN0bHkgYW5kIHRyaWdn
ZXIgYSBtaW5pbWFsIHN0eWxlIHVwZGF0ZS4KKyAgICBhdXRvJiByb290U3R5bGUgPSByZW5kZXJW
aWV3KCktPm11dGFibGVTdHlsZSgpOworICAgIFN0eWxlOjpBZGp1c3Rlcjo6YWRqdXN0RXZlbnRM
aXN0ZW5lclJlZ2lvblR5cGVzRm9yUm9vdFN0eWxlKHJvb3RTdHlsZSwgKnRoaXMpOworCisgICAg
ZG9jdW1lbnRFbGVtZW50KCktPmludmFsaWRhdGVTdHlsZUludGVybmFsKCk7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6OmludmFsaWRhdGVSZW5kZXJpbmdEZXBlbmRlbnRSZWdpb25zKCkKK3sKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQorICAgIHNldFRvdWNo
RXZlbnRSZWdpb25zTmVlZFVwZGF0ZSgpOworI2VuZGlmCisKKyNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQorICAgIGlmIChhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpKSB7CisgICAgICAgIGlmIChS
ZWZQdHIgZnJhbWVWaWV3ID0gdmlldygpKSB7CisgICAgICAgICAgICBpZiAoUmVmUHRyIHNjcm9s
bGluZ0Nvb3JkaW5hdG9yID0gcGFnZS0+c2Nyb2xsaW5nQ29vcmRpbmF0b3IoKSkKKyAgICAgICAg
ICAgICAgICBzY3JvbGxpbmdDb29yZGluYXRvci0+ZnJhbWVWaWV3RXZlbnRUcmFja2luZ1JlZ2lv
bnNDaGFuZ2VkKCpmcmFtZVZpZXcpOworICAgICAgICB9CisgICAgfQorI2VuZGlmCit9CisKK2Jv
b2wgRG9jdW1lbnQ6OnNldEZvY3VzZWRFbGVtZW50KEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IEZv
Y3VzT3B0aW9ucyYgb3B0aW9ucykKK3sKKyAgICBSZWZQdHI8RWxlbWVudD4gbmV3Rm9jdXNlZEVs
ZW1lbnQgPSBlbGVtZW50OworICAgIC8vIE1ha2Ugc3VyZSBuZXdGb2N1c2VkRWxlbWVudCBpcyBh
Y3R1YWxseSBpbiB0aGlzIGRvY3VtZW50CisgICAgaWYgKG5ld0ZvY3VzZWRFbGVtZW50ICYmICgm
bmV3Rm9jdXNlZEVsZW1lbnQtPmRvY3VtZW50KCkgIT0gdGhpcykpCisgICAgICAgIHJldHVybiB0
cnVlOworCisgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQgPT0gbmV3Rm9jdXNlZEVsZW1lbnQpCisg
ICAgICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKGJhY2tGb3J3YXJkQ2FjaGVTdGF0ZSgpICE9
IE5vdEluQmFja0ZvcndhcmRDYWNoZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgUmVm
UHRyPEVsZW1lbnQ+IG9sZEZvY3VzZWRFbGVtZW50ID0gV1RGTW92ZShtX2ZvY3VzZWRFbGVtZW50
KTsKKworICAgIC8vIFJlbW92ZSBmb2N1cyBmcm9tIHRoZSBleGlzdGluZyBmb2N1cyBub2RlIChp
ZiBhbnkpCisgICAgaWYgKG9sZEZvY3VzZWRFbGVtZW50KSB7CisgICAgICAgIGJvb2wgZm9jdXND
aGFuZ2VCbG9ja2VkID0gZmFsc2U7CisKKyAgICAgICAgb2xkRm9jdXNlZEVsZW1lbnQtPnNldEZv
Y3VzKGZhbHNlKTsKKyAgICAgICAgc2V0Rm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlKG51bGxw
dHIpOworCisgICAgICAgIGlmIChvcHRpb25zLnJlbW92YWxFdmVudHNNb2RlID09IEZvY3VzUmVt
b3ZhbEV2ZW50c01vZGU6OkRpc3BhdGNoKSB7CisgICAgICAgICAgICAvLyBEaXNwYXRjaCBhIGNo
YW5nZSBldmVudCBmb3IgZm9ybSBjb250cm9sIGVsZW1lbnRzIHRoYXQgaGF2ZSBiZWVuIGVkaXRl
ZC4KKyAgICAgICAgICAgIGlmIChpczxIVE1MRm9ybUNvbnRyb2xFbGVtZW50Pigqb2xkRm9jdXNl
ZEVsZW1lbnQpKSB7CisgICAgICAgICAgICAgICAgSFRNTEZvcm1Db250cm9sRWxlbWVudCYgZm9y
bUNvbnRyb2xFbGVtZW50ID0gZG93bmNhc3Q8SFRNTEZvcm1Db250cm9sRWxlbWVudD4oKm9sZEZv
Y3VzZWRFbGVtZW50KTsKKyAgICAgICAgICAgICAgICBpZiAoZm9ybUNvbnRyb2xFbGVtZW50Lndh
c0NoYW5nZWRTaW5jZUxhc3RGb3JtQ29udHJvbENoYW5nZUV2ZW50KCkpCisgICAgICAgICAgICAg
ICAgICAgIGZvcm1Db250cm9sRWxlbWVudC5kaXNwYXRjaEZvcm1Db250cm9sQ2hhbmdlRXZlbnQo
KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gRGlzcGF0Y2ggdGhlIGJsdXIgZXZl
bnQgYW5kIGxldCB0aGUgbm9kZSBkbyBhbnkgb3RoZXIgYmx1ciByZWxhdGVkIGFjdGl2aXRpZXMg
KGltcG9ydGFudCBmb3IgdGV4dCBmaWVsZHMpCisgICAgICAgICAgICBvbGRGb2N1c2VkRWxlbWVu
dC0+ZGlzcGF0Y2hCbHVyRXZlbnQobmV3Rm9jdXNlZEVsZW1lbnQuY29weVJlZigpKTsKKworICAg
ICAgICAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQpIHsKKyAgICAgICAgICAgICAgICAvLyBoYW5k
bGVyIHNoaWZ0ZWQgZm9jdXMKKyAgICAgICAgICAgICAgICBmb2N1c0NoYW5nZUJsb2NrZWQgPSB0
cnVlOworICAgICAgICAgICAgICAgIG5ld0ZvY3VzZWRFbGVtZW50ID0gbnVsbHB0cjsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgb2xkRm9jdXNlZEVsZW1lbnQtPmRpc3BhdGNoRm9jdXNP
dXRFdmVudChldmVudE5hbWVzKCkuZm9jdXNvdXRFdmVudCwgbmV3Rm9jdXNlZEVsZW1lbnQuY29w
eVJlZigpKTsgLy8gRE9NIGxldmVsIDMgbmFtZSBmb3IgdGhlIGJ1YmJsaW5nIGJsdXIgZXZlbnQu
CisgICAgICAgICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJlbW92ZSBmaXJpbmcgRE9NRm9jdXNP
dXRFdmVudCBldmVudCB3aGVuIHdlIGFyZSBzdXJlIG5vIGNvbnRlbnQgZGVwZW5kcworICAgICAg
ICAgICAgLy8gb24gaXQsIHByb2JhYmx5IHdoZW4gPHJkYXI6Ly9wcm9ibGVtLzg1MDM5NTg+IGlz
IHJlc29sdmVkLgorICAgICAgICAgICAgb2xkRm9jdXNlZEVsZW1lbnQtPmRpc3BhdGNoRm9jdXNP
dXRFdmVudChldmVudE5hbWVzKCkuRE9NRm9jdXNPdXRFdmVudCwgbmV3Rm9jdXNlZEVsZW1lbnQu
Y29weVJlZigpKTsgLy8gRE9NIGxldmVsIDIgbmFtZSBmb3IgY29tcGF0aWJpbGl0eS4KKworICAg
ICAgICAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQpIHsKKyAgICAgICAgICAgICAgICAvLyBoYW5k
bGVyIHNoaWZ0ZWQgZm9jdXMKKyAgICAgICAgICAgICAgICBmb2N1c0NoYW5nZUJsb2NrZWQgPSB0
cnVlOworICAgICAgICAgICAgICAgIG5ld0ZvY3VzZWRFbGVtZW50ID0gbnVsbHB0cjsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIE1hdGNoIHRoZSBvcmRl
ciBpbiBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudDo6ZGlzcGF0Y2hCbHVyRXZlbnQuCisgICAg
ICAgICAgICBpZiAoaXM8SFRNTElucHV0RWxlbWVudD4oKm9sZEZvY3VzZWRFbGVtZW50KSkKKyAg
ICAgICAgICAgICAgICBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50Pigqb2xkRm9jdXNlZEVsZW1l
bnQpLmVuZEVkaXRpbmcoKTsKKyAgICAgICAgICAgIGlmIChwYWdlKCkpCisgICAgICAgICAgICAg
ICAgcGFnZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5lbGVtZW50RGlkQmx1cigqb2xkRm9jdXNlZEVs
ZW1lbnQpOworICAgICAgICAgICAgQVNTRVJUKCFtX2ZvY3VzZWRFbGVtZW50KTsKKyAgICAgICAg
fQorCisgICAgICAgIGlmIChvbGRGb2N1c2VkRWxlbWVudC0+aXNSb290RWRpdGFibGVFbGVtZW50
KCkpCisgICAgICAgICAgICBlZGl0b3IoKS5kaWRFbmRFZGl0aW5nKCk7CisKKyAgICAgICAgaWYg
KHZpZXcoKSkgeworICAgICAgICAgICAgaWYgKFJlZlB0ciBvbGRXaWRnZXQgPSB3aWRnZXRGb3JF
bGVtZW50KG9sZEZvY3VzZWRFbGVtZW50LmdldCgpKSkKKyAgICAgICAgICAgICAgICBvbGRXaWRn
ZXQtPnNldEZvY3VzKGZhbHNlKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB2
aWV3KCktPnNldEZvY3VzKGZhbHNlKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpczxIVE1M
SW5wdXRFbGVtZW50PihvbGRGb2N1c2VkRWxlbWVudCkpIHsKKyAgICAgICAgICAgIC8vIEhUTUxJ
bnB1dEVsZW1lbnQ6OmRpZEJsdXIganVzdCBzY3JvbGxzIHRleHQgZmllbGRzIGJhY2sgdG8gdGhl
IGJlZ2lubmluZy4KKyAgICAgICAgICAgIC8vIEZJWE1FOiBUaGlzIGNvdWxkIGJlIGRvbmUgYXN5
bmNocm9udXNseS4KKyAgICAgICAgICAgIGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KCpvbGRG
b2N1c2VkRWxlbWVudCkuZGlkQmx1cigpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGZvY3Vz
Q2hhbmdlQmxvY2tlZCkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBp
ZiAobmV3Rm9jdXNlZEVsZW1lbnQgJiYgbmV3Rm9jdXNlZEVsZW1lbnQtPmlzRm9jdXNhYmxlKCkp
IHsKKyAgICAgICAgaWYgKCZuZXdGb2N1c2VkRWxlbWVudC0+ZG9jdW1lbnQoKSAhPSB0aGlzKSB7
CisgICAgICAgICAgICAvLyBCbHVyaW5nIG9sZEZvY3VzZWRFbGVtZW50IG1heSBoYXZlIG1vdmVk
IG5ld0ZvY3VzZWRFbGVtZW50IGFjcm9zcyBkb2N1bWVudHMuCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG5ld0ZvY3VzZWRFbGVtZW50LT5pc1Jvb3RF
ZGl0YWJsZUVsZW1lbnQoKSAmJiAhYWNjZXB0c0VkaXRpbmdGb2N1cygqbmV3Rm9jdXNlZEVsZW1l
bnQpKSB7CisgICAgICAgICAgICAvLyBkZWxlZ2F0ZSBibG9ja3MgZm9jdXMgY2hhbmdlCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAgLy8gU2V0IGZvY3VzIG9u
IHRoZSBuZXcgbm9kZQorICAgICAgICBtX2ZvY3VzZWRFbGVtZW50ID0gbmV3Rm9jdXNlZEVsZW1l
bnQ7CisgICAgICAgIHNldEZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZShtX2ZvY3VzZWRFbGVt
ZW50LmdldCgpKTsKKyAgICAgICAgbV9mb2N1c2VkRWxlbWVudC0+c2V0Rm9jdXModHJ1ZSwgb3B0
aW9ucy52aXNpYmlsaXR5KTsKKyAgICAgICAgbV9sYXRlc3RGb2N1c1RyaWdnZXIgPSBvcHRpb25z
LnRyaWdnZXI7CisKKyAgICAgICAgLy8gVGhlIHNldEZvY3VzIGNhbGwgdHJpZ2dlcnMgYSBibHVy
IGFuZCBhIGZvY3VzIGV2ZW50LiBFdmVudCBoYW5kbGVycyBjb3VsZCBjYXVzZSB0aGUgZm9jdXNl
ZCBlbGVtZW50IHRvIGJlIGNsZWFyZWQuCisgICAgICAgIGlmIChtX2ZvY3VzZWRFbGVtZW50ICE9
IG5ld0ZvY3VzZWRFbGVtZW50KSB7CisgICAgICAgICAgICAvLyBoYW5kbGVyIHNoaWZ0ZWQgZm9j
dXMKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIERp
c3BhdGNoIHRoZSBmb2N1cyBldmVudCBhbmQgbGV0IHRoZSBub2RlIGRvIGFueSBvdGhlciBmb2N1
cyByZWxhdGVkIGFjdGl2aXRpZXMgKGltcG9ydGFudCBmb3IgdGV4dCBmaWVsZHMpCisgICAgICAg
IG1fZm9jdXNlZEVsZW1lbnQtPmRpc3BhdGNoRm9jdXNFdmVudChvbGRGb2N1c2VkRWxlbWVudC5j
b3B5UmVmKCksIG9wdGlvbnMuZGlyZWN0aW9uKTsKKworICAgICAgICBpZiAobV9mb2N1c2VkRWxl
bWVudCAhPSBuZXdGb2N1c2VkRWxlbWVudCkgeworICAgICAgICAgICAgLy8gaGFuZGxlciBzaGlm
dGVkIGZvY3VzCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKworICAgICAg
ICBtX2ZvY3VzZWRFbGVtZW50LT5kaXNwYXRjaEZvY3VzSW5FdmVudChldmVudE5hbWVzKCkuZm9j
dXNpbkV2ZW50LCBvbGRGb2N1c2VkRWxlbWVudC5jb3B5UmVmKCkpOyAvLyBET00gbGV2ZWwgMyBi
dWJibGluZyBmb2N1cyBldmVudC4KKworICAgICAgICBpZiAobV9mb2N1c2VkRWxlbWVudCAhPSBu
ZXdGb2N1c2VkRWxlbWVudCkgeworICAgICAgICAgICAgLy8gaGFuZGxlciBzaGlmdGVkIGZvY3Vz
CisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKworICAgICAgICAvLyBGSVhN
RTogV2Ugc2hvdWxkIHJlbW92ZSBmaXJpbmcgRE9NRm9jdXNJbkV2ZW50IGV2ZW50IHdoZW4gd2Ug
YXJlIHN1cmUgbm8gY29udGVudCBkZXBlbmRzCisgICAgICAgIC8vIG9uIGl0LCBwcm9iYWJseSB3
aGVuIDxyZGFyOi8vcHJvYmxlbS84NTAzOTU4PiBpcyBtLgorICAgICAgICBtX2ZvY3VzZWRFbGVt
ZW50LT5kaXNwYXRjaEZvY3VzSW5FdmVudChldmVudE5hbWVzKCkuRE9NRm9jdXNJbkV2ZW50LCBv
bGRGb2N1c2VkRWxlbWVudC5jb3B5UmVmKCkpOyAvLyBET00gbGV2ZWwgMiBmb3IgY29tcGF0aWJp
bGl0eS4KKworICAgICAgICBpZiAobV9mb2N1c2VkRWxlbWVudCAhPSBuZXdGb2N1c2VkRWxlbWVu
dCkgeworICAgICAgICAgICAgLy8gaGFuZGxlciBzaGlmdGVkIGZvY3VzCisgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgICAgIH0KKworICAgICAgICBpZiAobV9mb2N1c2VkRWxlbWVudC0+
aXNSb290RWRpdGFibGVFbGVtZW50KCkpCisgICAgICAgICAgICBlZGl0b3IoKS5kaWRCZWdpbkVk
aXRpbmcoKTsKKworICAgICAgICAvLyBld3csIEkgc3Vjay4gc2V0IHRoZSBxdCBmb2N1cyBjb3Jy
ZWN0bHkKKyAgICAgICAgLy8gIyMjIGZpbmQgYSBiZXR0ZXIgcGxhY2UgaW4gdGhlIGNvZGUgZm9y
IHRoaXMKKyAgICAgICAgaWYgKHZpZXcoKSkgeworICAgICAgICAgICAgUmVmUHRyIGZvY3VzV2lk
Z2V0ID0gd2lkZ2V0Rm9yRWxlbWVudChtX2ZvY3VzZWRFbGVtZW50LmdldCgpKTsKKyAgICAgICAg
ICAgIGlmIChmb2N1c1dpZGdldCkgeworICAgICAgICAgICAgICAgIC8vIE1ha2Ugc3VyZSBhIHdp
ZGdldCBoYXMgdGhlIHJpZ2h0IHNpemUgYmVmb3JlIGdpdmluZyBpdCBmb2N1cy4KKyAgICAgICAg
ICAgICAgICAvLyBPdGhlcndpc2UsIHdlIGFyZSB0ZXN0aW5nIGVkZ2UgY2FzZXMgb2YgdGhlIFdp
ZGdldCBjb2RlLgorICAgICAgICAgICAgICAgIC8vIFNwZWNpZmljYWxseSwgaW4gV2ViQ29yZSB0
aGlzIGRvZXMgbm90IHdvcmsgd2VsbCBmb3IgdGV4dCBmaWVsZHMuCisgICAgICAgICAgICAgICAg
dXBkYXRlTGF5b3V0KCk7CisgICAgICAgICAgICAgICAgLy8gUmUtZ2V0IHRoZSB3aWRnZXQgaW4g
Y2FzZSB1cGRhdGluZyB0aGUgbGF5b3V0IGNoYW5nZWQgdGhpbmdzLgorICAgICAgICAgICAgICAg
IGZvY3VzV2lkZ2V0ID0gd2lkZ2V0Rm9yRWxlbWVudChtX2ZvY3VzZWRFbGVtZW50LmdldCgpKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChmb2N1c1dpZGdldCkKKyAgICAgICAgICAg
ICAgICBmb2N1c1dpZGdldC0+c2V0Rm9jdXModHJ1ZSk7CisgICAgICAgICAgICBlbHNlIGlmIChS
ZWZQdHIgZnJhbWVWaWV3ID0gdmlldygpKQorICAgICAgICAgICAgICAgIGZyYW1lVmlldy0+c2V0
Rm9jdXModHJ1ZSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAobV9mb2N1c2VkRWxlbWVu
dCkgeworICAgICAgICAvLyBDcmVhdGUgdGhlIEFYT2JqZWN0IGNhY2hlIGluIGEgZm9jdXMgY2hh
bmdlIGJlY2F1c2UgR1RLIHJlbGllcyBvbiBpdC4KKyAgICAgICAgaWYgKEFYT2JqZWN0Q2FjaGUq
IGNhY2hlID0gYXhPYmplY3RDYWNoZSgpKQorICAgICAgICAgICAgY2FjaGUtPmRlZmVyRm9jdXNl
ZFVJRWxlbWVudENoYW5nZUlmTmVlZGVkKG9sZEZvY3VzZWRFbGVtZW50LmdldCgpLCBuZXdGb2N1
c2VkRWxlbWVudC5nZXQoKSk7CisgICAgfQorCisgICAgaWYgKHBhZ2UoKSkKKyAgICAgICAgcGFn
ZSgpLT5jaHJvbWUoKS5mb2N1c2VkRWxlbWVudENoYW5nZWQobV9mb2N1c2VkRWxlbWVudC5nZXQo
KSk7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGJvb2wgc2hvdWxkUmVzZXRGb2N1
c05hdmlnYXRpb25TdGFydGluZ05vZGUoTm9kZSYgbm9kZSkKK3sKKyAgICAvLyBTZXR0aW5nIGZv
Y3VzIG5hdmlnYXRpb24gc3RhcnRpbmcgbm9kZSB0byB0aGUgZm9sbG93aW5nIG5vZGVzIG1lYW5z
IHRoYXQgd2Ugc2hvdWxkIHN0YXJ0CisgICAgLy8gdGhlIHNlYXJjaCBmcm9tIHRoZSBiZWdpbm5p
bmcgb2YgdGhlIGRvY3VtZW50LgorICAgIHJldHVybiBpczxIVE1MSHRtbEVsZW1lbnQ+KG5vZGUp
IHx8IGlzPEhUTUxEb2N1bWVudD4obm9kZSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldEZvY3Vz
TmF2aWdhdGlvblN0YXJ0aW5nTm9kZShOb2RlKiBub2RlKQoreworICAgIGlmICghbV9mcmFtZSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgbV9mb2N1c05hdmlnYXRpb25TdGFydGluZ05vZGVJc1Jl
bW92ZWQgPSBmYWxzZTsKKyAgICBpZiAoIW5vZGUgfHwgc2hvdWxkUmVzZXRGb2N1c05hdmlnYXRp
b25TdGFydGluZ05vZGUoKm5vZGUpKSB7CisgICAgICAgIG1fZm9jdXNOYXZpZ2F0aW9uU3RhcnRp
bmdOb2RlID0gbnVsbHB0cjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIEFTU0VSVCgh
bm9kZSB8fCBub2RlICE9IHRoaXMpOworICAgIG1fZm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2Rl
ID0gbm9kZTsKK30KKworRWxlbWVudCogRG9jdW1lbnQ6OmZvY3VzTmF2aWdhdGlvblN0YXJ0aW5n
Tm9kZShGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pIGNvbnN0Cit7CisgICAgaWYgKG1fZm9jdXNl
ZEVsZW1lbnQpIHsKKyAgICAgICAgaWYgKCFtX2ZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZSB8
fCAhbV9mb2N1c05hdmlnYXRpb25TdGFydGluZ05vZGUtPmlzRGVzY2VuZGFudE9mKG1fZm9jdXNl
ZEVsZW1lbnQuZ2V0KCkpKQorICAgICAgICAgICAgcmV0dXJuIG1fZm9jdXNlZEVsZW1lbnQuZ2V0
KCk7CisgICAgfQorCisgICAgaWYgKCFtX2ZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZSkKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBOb2RlKiBub2RlID0gbV9mb2N1c05hdmlnYXRp
b25TdGFydGluZ05vZGUuZ2V0KCk7CisgICAgCisgICAgLy8gV2hlbiB0aGUgbm9kZSB3YXMgcmVt
b3ZlZCBmcm9tIHRoZSBkb2N1bWVudCB0cmVlLiBUaGlzIGNhc2UgaXMgbm90IHNwZWNpZmllZCBp
biB0aGUgc3BlYzoKKyAgICAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFn
ZS9pbnRlcmFjdGlvbi5odG1sI3NlcXVlbnRpYWwtZm9jdXMtbmF2aWdhdGlvbi1zdGFydGluZy1w
b2ludAorICAgIC8vIEN1cnJlbnQgYmVoYWl2b3IgaXMgdG8gbW92ZSB0aGUgc2VxdWVudGlhbCBu
YXZpZ2F0aW9uIG5vZGUgdG8gLyBhZnRlciAoYmFzZWQgb24gdGhlIGZvY3VzIGRpcmVjdGlvbikK
KyAgICAvLyB0aGUgcHJldmlvdXMgc2libGluZyBvZiB0aGUgcmVtb3ZlZCBub2RlLgorICAgIGlm
IChtX2ZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZUlzUmVtb3ZlZCkgeworICAgICAgICBOb2Rl
KiBuZXh0Tm9kZSA9IE5vZGVUcmF2ZXJzYWw6Om5leHQoKm5vZGUpOworICAgICAgICBpZiAoIW5l
eHROb2RlKQorICAgICAgICAgICAgbmV4dE5vZGUgPSBub2RlOworICAgICAgICBpZiAoZGlyZWN0
aW9uID09IEZvY3VzRGlyZWN0aW9uOjpGb3J3YXJkKQorICAgICAgICAgICAgcmV0dXJuIEVsZW1l
bnRUcmF2ZXJzYWw6OnByZXZpb3VzKCpuZXh0Tm9kZSk7CisgICAgICAgIGlmIChpczxFbGVtZW50
PigqbmV4dE5vZGUpKQorICAgICAgICAgICAgcmV0dXJuIGRvd25jYXN0PEVsZW1lbnQ+KG5leHRO
b2RlKTsKKyAgICAgICAgcmV0dXJuIEVsZW1lbnRUcmF2ZXJzYWw6Om5leHQoKm5leHROb2RlKTsK
KyAgICB9CisKKyAgICBpZiAoaXM8RWxlbWVudD4oKm5vZGUpKQorICAgICAgICByZXR1cm4gZG93
bmNhc3Q8RWxlbWVudD4obm9kZSk7CisgICAgaWYgKEVsZW1lbnQqIGVsZW1lbnRCZWZvcmVOZXh0
Rm9jdXNhYmxlRWxlbWVudCA9IGRpcmVjdGlvbiA9PSBGb2N1c0RpcmVjdGlvbjo6Rm9yd2FyZCA/
IEVsZW1lbnRUcmF2ZXJzYWw6OnByZXZpb3VzKCpub2RlKSA6IEVsZW1lbnRUcmF2ZXJzYWw6Om5l
eHQoKm5vZGUpKQorICAgICAgICByZXR1cm4gZWxlbWVudEJlZm9yZU5leHRGb2N1c2FibGVFbGVt
ZW50OworICAgIHJldHVybiBub2RlLT5wYXJlbnRPclNoYWRvd0hvc3RFbGVtZW50KCk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnNldENTU1RhcmdldChFbGVtZW50KiB0YXJnZXROb2RlKQoreworICAg
IGlmIChtX2Nzc1RhcmdldCkKKyAgICAgICAgbV9jc3NUYXJnZXQtPmludmFsaWRhdGVTdHlsZUZv
clN1YnRyZWUoKTsKKyAgICBtX2Nzc1RhcmdldCA9IHRhcmdldE5vZGU7CisgICAgaWYgKHRhcmdl
dE5vZGUpCisgICAgICAgIHRhcmdldE5vZGUtPmludmFsaWRhdGVTdHlsZUZvclN1YnRyZWUoKTsK
K30KKwordm9pZCBEb2N1bWVudDo6cmVnaXN0ZXJOb2RlTGlzdEZvckludmFsaWRhdGlvbihMaXZl
Tm9kZUxpc3QmIGxpc3QpCit7CisgICAgbV9ub2RlTGlzdEFuZENvbGxlY3Rpb25Db3VudHNbbGlz
dC5pbnZhbGlkYXRpb25UeXBlKCldKys7CisgICAgaWYgKCFsaXN0LmlzUm9vdGVkQXREb2N1bWVu
dCgpKQorICAgICAgICByZXR1cm47CisgICAgQVNTRVJUKCFsaXN0LmlzUmVnaXN0ZXJlZEZvcklu
dmFsaWRhdGlvbkF0RG9jdW1lbnQoKSk7CisgICAgbGlzdC5zZXRSZWdpc3RlcmVkRm9ySW52YWxp
ZGF0aW9uQXREb2N1bWVudCh0cnVlKTsKKyAgICBtX2xpc3RzSW52YWxpZGF0ZWRBdERvY3VtZW50
LmFkZCgmbGlzdCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVucmVnaXN0ZXJOb2RlTGlzdEZvcklu
dmFsaWRhdGlvbihMaXZlTm9kZUxpc3QmIGxpc3QpCit7CisgICAgbV9ub2RlTGlzdEFuZENvbGxl
Y3Rpb25Db3VudHNbbGlzdC5pbnZhbGlkYXRpb25UeXBlKCldLS07CisgICAgaWYgKCFsaXN0Lmlz
UmVnaXN0ZXJlZEZvckludmFsaWRhdGlvbkF0RG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbGlzdC5zZXRSZWdpc3RlcmVkRm9ySW52YWxpZGF0aW9uQXREb2N1bWVudChmYWxzZSk7
CisgICAgQVNTRVJUKG1fbGlzdHNJbnZhbGlkYXRlZEF0RG9jdW1lbnQuY29udGFpbnMoJmxpc3Qp
KTsKKyAgICBtX2xpc3RzSW52YWxpZGF0ZWRBdERvY3VtZW50LnJlbW92ZSgmbGlzdCk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnJlZ2lzdGVyQ29sbGVjdGlvbihIVE1MQ29sbGVjdGlvbiYgY29sbGVj
dGlvbikKK3sKKyAgICBtX25vZGVMaXN0QW5kQ29sbGVjdGlvbkNvdW50c1tjb2xsZWN0aW9uLmlu
dmFsaWRhdGlvblR5cGUoKV0rKzsKKyAgICBpZiAoY29sbGVjdGlvbi5pc1Jvb3RlZEF0RG9jdW1l
bnQoKSkKKyAgICAgICAgbV9jb2xsZWN0aW9uc0ludmFsaWRhdGVkQXREb2N1bWVudC5hZGQoJmNv
bGxlY3Rpb24pOworfQorCit2b2lkIERvY3VtZW50Ojp1bnJlZ2lzdGVyQ29sbGVjdGlvbihIVE1M
Q29sbGVjdGlvbiYgY29sbGVjdGlvbikKK3sKKyAgICBBU1NFUlQobV9ub2RlTGlzdEFuZENvbGxl
Y3Rpb25Db3VudHNbY29sbGVjdGlvbi5pbnZhbGlkYXRpb25UeXBlKCldKTsKKyAgICBtX25vZGVM
aXN0QW5kQ29sbGVjdGlvbkNvdW50c1tjb2xsZWN0aW9uLmludmFsaWRhdGlvblR5cGUoKV0tLTsK
KyAgICBpZiAoIWNvbGxlY3Rpb24uaXNSb290ZWRBdERvY3VtZW50KCkpCisgICAgICAgIHJldHVy
bjsKKworICAgIG1fY29sbGVjdGlvbnNJbnZhbGlkYXRlZEF0RG9jdW1lbnQucmVtb3ZlKCZjb2xs
ZWN0aW9uKTsKK30KKwordm9pZCBEb2N1bWVudDo6Y29sbGVjdGlvbkNhY2hlZElkTmFtZU1hcChj
b25zdCBIVE1MQ29sbGVjdGlvbiYgY29sbGVjdGlvbikKK3sKKyAgICBBU1NFUlRfVU5VU0VEKGNv
bGxlY3Rpb24sIGNvbGxlY3Rpb24uaGFzTmFtZWRFbGVtZW50Q2FjaGUoKSk7CisgICAgbV9ub2Rl
TGlzdEFuZENvbGxlY3Rpb25Db3VudHNbSW52YWxpZGF0ZU9uSWROYW1lQXR0ckNoYW5nZV0rKzsK
K30KKwordm9pZCBEb2N1bWVudDo6Y29sbGVjdGlvbldpbGxDbGVhcklkTmFtZU1hcChjb25zdCBI
VE1MQ29sbGVjdGlvbiYgY29sbGVjdGlvbikKK3sKKyAgICBBU1NFUlRfVU5VU0VEKGNvbGxlY3Rp
b24sIGNvbGxlY3Rpb24uaGFzTmFtZWRFbGVtZW50Q2FjaGUoKSk7CisgICAgQVNTRVJUKG1fbm9k
ZUxpc3RBbmRDb2xsZWN0aW9uQ291bnRzW0ludmFsaWRhdGVPbklkTmFtZUF0dHJDaGFuZ2VdKTsK
KyAgICBtX25vZGVMaXN0QW5kQ29sbGVjdGlvbkNvdW50c1tJbnZhbGlkYXRlT25JZE5hbWVBdHRy
Q2hhbmdlXS0tOworfQorCit2b2lkIERvY3VtZW50OjphdHRhY2hOb2RlSXRlcmF0b3IoTm9kZUl0
ZXJhdG9yJiBpdGVyYXRvcikKK3sKKyAgICBtX25vZGVJdGVyYXRvcnMuYWRkKCZpdGVyYXRvcik7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmRldGFjaE5vZGVJdGVyYXRvcihOb2RlSXRlcmF0b3ImIGl0
ZXJhdG9yKQoreworICAgIC8vIFRoZSBub2RlIGl0ZXJhdG9yIGNhbiBiZSBkZXRhY2hlZCB3aXRo
b3V0IGhhdmluZyBiZWVuIGF0dGFjaGVkIGlmIGl0cyByb290IG5vZGUgZGlkbid0IGhhdmUgYSBk
b2N1bWVudAorICAgIC8vIHdoZW4gdGhlIGl0ZXJhdG9yIHdhcyBjcmVhdGVkLCBidXQgaGFzIGl0
IG5vdy4KKyAgICBtX25vZGVJdGVyYXRvcnMucmVtb3ZlKCZpdGVyYXRvcik7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6Om1vdmVOb2RlSXRlcmF0b3JzVG9OZXdEb2N1bWVudFNsb3dDYXNlKE5vZGUmIG5v
ZGUsIERvY3VtZW50JiBuZXdEb2N1bWVudCkKK3sKKyAgICBBU1NFUlQoIW1fbm9kZUl0ZXJhdG9y
cy5pc0VtcHR5KCkpOworICAgIGZvciAoYXV0byogaXRlcmF0b3IgOiBjb3B5VG9WZWN0b3IobV9u
b2RlSXRlcmF0b3JzKSkgeworICAgICAgICBpZiAoJml0ZXJhdG9yLT5yb290KCkgPT0gJm5vZGUp
IHsKKyAgICAgICAgICAgIGRldGFjaE5vZGVJdGVyYXRvcigqaXRlcmF0b3IpOworICAgICAgICAg
ICAgbmV3RG9jdW1lbnQuYXR0YWNoTm9kZUl0ZXJhdG9yKCppdGVyYXRvcik7CisgICAgICAgIH0K
KyAgICB9Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZVJhbmdlc0FmdGVyQ2hpbGRyZW5DaGFu
Z2VkKENvbnRhaW5lck5vZGUmIGNvbnRhaW5lcikKK3sKKyAgICBmb3IgKGF1dG8qIHJhbmdlIDog
bV9yYW5nZXMpCisgICAgICAgIHJhbmdlLT5ub2RlQ2hpbGRyZW5DaGFuZ2VkKGNvbnRhaW5lcik7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6Om5vZGVDaGlsZHJlbldpbGxCZVJlbW92ZWQoQ29udGFpbmVy
Tm9kZSYgY29udGFpbmVyKQoreworICAgIEFTU0VSVChTY3JpcHREaXNhbGxvd2VkU2NvcGU6Oklu
TWFpblRocmVhZDo6aGFzRGlzYWxsb3dlZFNjb3BlKCkpOworCisgICAgYWRqdXN0Rm9jdXNlZE5v
ZGVPbk5vZGVSZW1vdmFsKGNvbnRhaW5lciwgTm9kZVJlbW92YWw6OkNoaWxkcmVuT2ZOb2RlKTsK
KyAgICBhZGp1c3RGb2N1c05hdmlnYXRpb25Ob2RlT25Ob2RlUmVtb3ZhbChjb250YWluZXIsIE5v
ZGVSZW1vdmFsOjpDaGlsZHJlbk9mTm9kZSk7CisKKyNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkp
CisgICAgbV9mdWxsc2NyZWVuTWFuYWdlci0+YWRqdXN0RnVsbHNjcmVlbkVsZW1lbnRPbk5vZGVS
ZW1vdmFsKGNvbnRhaW5lciwgTm9kZVJlbW92YWw6OkNoaWxkcmVuT2ZOb2RlKTsKKyNlbmRpZgor
CisgICAgZm9yIChhdXRvKiByYW5nZSA6IG1fcmFuZ2VzKQorICAgICAgICByYW5nZS0+bm9kZUNo
aWxkcmVuV2lsbEJlUmVtb3ZlZChjb250YWluZXIpOworCisgICAgZm9yIChhdXRvKiBpdCA6IG1f
bm9kZUl0ZXJhdG9ycykgeworICAgICAgICBmb3IgKE5vZGUqIG4gPSBjb250YWluZXIuZmlyc3RD
aGlsZCgpOyBuOyBuID0gbi0+bmV4dFNpYmxpbmcoKSkKKyAgICAgICAgICAgIGl0LT5ub2RlV2ls
bEJlUmVtb3ZlZCgqbik7CisgICAgfQorCisgICAgaWYgKFJlZlB0cjxGcmFtZT4gZnJhbWUgPSB0
aGlzLT5mcmFtZSgpKSB7CisgICAgICAgIGZvciAoTm9kZSogbiA9IGNvbnRhaW5lci5maXJzdENo
aWxkKCk7IG47IG4gPSBuLT5uZXh0U2libGluZygpKSB7CisgICAgICAgICAgICBmcmFtZS0+ZXZl
bnRIYW5kbGVyKCkubm9kZVdpbGxCZVJlbW92ZWQoKm4pOworICAgICAgICAgICAgZnJhbWUtPnNl
bGVjdGlvbigpLm5vZGVXaWxsQmVSZW1vdmVkKCpuKTsKKyAgICAgICAgICAgIGZyYW1lLT5wYWdl
KCktPmRyYWdDYXJldENvbnRyb2xsZXIoKS5ub2RlV2lsbEJlUmVtb3ZlZCgqbik7CisgICAgICAg
IH0KKyAgICB9CisKKyAgICBpZiAobV9tYXJrZXJzLT5oYXNNYXJrZXJzKCkpIHsKKyAgICAgICAg
Zm9yIChUZXh0KiB0ZXh0Tm9kZSA9IFRleHROb2RlVHJhdmVyc2FsOjpmaXJzdENoaWxkKGNvbnRh
aW5lcik7IHRleHROb2RlOyB0ZXh0Tm9kZSA9IFRleHROb2RlVHJhdmVyc2FsOjpuZXh0U2libGlu
ZygqdGV4dE5vZGUpKQorICAgICAgICAgICAgbV9tYXJrZXJzLT5yZW1vdmVNYXJrZXJzKCp0ZXh0
Tm9kZSk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50Ojpub2RlV2lsbEJlUmVtb3ZlZChOb2Rl
JiBub2RlKQoreworICAgIEFTU0VSVChTY3JpcHREaXNhbGxvd2VkU2NvcGU6OkluTWFpblRocmVh
ZDo6aGFzRGlzYWxsb3dlZFNjb3BlKCkpOworCisgICAgYWRqdXN0Rm9jdXNlZE5vZGVPbk5vZGVS
ZW1vdmFsKG5vZGUpOworICAgIGFkanVzdEZvY3VzTmF2aWdhdGlvbk5vZGVPbk5vZGVSZW1vdmFs
KG5vZGUpOworCisjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQorICAgIG1fZnVsbHNjcmVlbk1h
bmFnZXItPmFkanVzdEZ1bGxzY3JlZW5FbGVtZW50T25Ob2RlUmVtb3ZhbChub2RlLCBOb2RlUmVt
b3ZhbDo6Tm9kZSk7CisjZW5kaWYKKworICAgIGZvciAoYXV0byogaXQgOiBtX25vZGVJdGVyYXRv
cnMpCisgICAgICAgIGl0LT5ub2RlV2lsbEJlUmVtb3ZlZChub2RlKTsKKworICAgIGZvciAoYXV0
byogcmFuZ2UgOiBtX3JhbmdlcykKKyAgICAgICAgcmFuZ2UtPm5vZGVXaWxsQmVSZW1vdmVkKG5v
ZGUpOworCisgICAgaWYgKFJlZlB0cjxGcmFtZT4gZnJhbWUgPSB0aGlzLT5mcmFtZSgpKSB7Cisg
ICAgICAgIGZyYW1lLT5ldmVudEhhbmRsZXIoKS5ub2RlV2lsbEJlUmVtb3ZlZChub2RlKTsKKyAg
ICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLm5vZGVXaWxsQmVSZW1vdmVkKG5vZGUpOworICAgICAg
ICBmcmFtZS0+cGFnZSgpLT5kcmFnQ2FyZXRDb250cm9sbGVyKCkubm9kZVdpbGxCZVJlbW92ZWQo
bm9kZSk7CisgICAgfQorCisgICAgaWYgKGlzPFRleHQ+KG5vZGUpKQorICAgICAgICBtX21hcmtl
cnMtPnJlbW92ZU1hcmtlcnMobm9kZSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnBhcmVudGxlc3NO
b2RlTW92ZWRUb05ld0RvY3VtZW50KE5vZGUmIG5vZGUpCit7CisgICAgVmVjdG9yPFJhbmdlKiwg
NT4gcmFuZ2VzQWZmZWN0ZWQ7CisKKyAgICBmb3IgKGF1dG8qIHJhbmdlIDogbV9yYW5nZXMpIHsK
KyAgICAgICAgaWYgKHJhbmdlLT5wYXJlbnRsZXNzTm9kZU1vdmVkVG9OZXdEb2N1bWVudEFmZmVj
dHNSYW5nZShub2RlKSkKKyAgICAgICAgICAgIHJhbmdlc0FmZmVjdGVkLmFwcGVuZChyYW5nZSk7
CisgICAgfQorCisgICAgZm9yIChhdXRvKiByYW5nZSA6IHJhbmdlc0FmZmVjdGVkKQorICAgICAg
ICByYW5nZS0+dXBkYXRlUmFuZ2VGb3JQYXJlbnRsZXNzTm9kZU1vdmVkVG9OZXdEb2N1bWVudChu
b2RlKTsKK30KKworc3RhdGljIE5vZGUqIGZhbGxiYWNrRm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdO
b2RlQWZ0ZXJSZW1vdmFsKE5vZGUmIG5vZGUpCit7CisgICAgcmV0dXJuIG5vZGUucHJldmlvdXNT
aWJsaW5nKCkgPyBub2RlLnByZXZpb3VzU2libGluZygpIDogbm9kZS5wYXJlbnROb2RlKCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OmFkanVzdEZvY3VzTmF2aWdhdGlvbk5vZGVPbk5vZGVSZW1vdmFs
KE5vZGUmIG5vZGUsIE5vZGVSZW1vdmFsIG5vZGVSZW1vdmFsKQoreworICAgIGlmICghbV9mb2N1
c05hdmlnYXRpb25TdGFydGluZ05vZGUpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChpc05v
ZGVJblN1YnRyZWUoKm1fZm9jdXNOYXZpZ2F0aW9uU3RhcnRpbmdOb2RlLCBub2RlLCBub2RlUmVt
b3ZhbCkpIHsKKyAgICAgICAgYXV0byogbmV3Tm9kZSA9IChub2RlUmVtb3ZhbCA9PSBOb2RlUmVt
b3ZhbDo6Q2hpbGRyZW5PZk5vZGUpID8gJm5vZGUgOiBmYWxsYmFja0ZvY3VzTmF2aWdhdGlvblN0
YXJ0aW5nTm9kZUFmdGVyUmVtb3ZhbChub2RlKTsKKyAgICAgICAgbV9mb2N1c05hdmlnYXRpb25T
dGFydGluZ05vZGUgPSAobmV3Tm9kZSAhPSB0aGlzKSA/IG5ld05vZGUgOiBudWxscHRyOworICAg
ICAgICBtX2ZvY3VzTmF2aWdhdGlvblN0YXJ0aW5nTm9kZUlzUmVtb3ZlZCA9IHRydWU7CisgICAg
fQorfQorCit2b2lkIERvY3VtZW50Ojp0ZXh0SW5zZXJ0ZWQoTm9kZSYgdGV4dCwgdW5zaWduZWQg
b2Zmc2V0LCB1bnNpZ25lZCBsZW5ndGgpCit7CisgICAgaWYgKCFtX3Jhbmdlcy5pc0VtcHR5KCkp
IHsKKyAgICAgICAgZm9yIChhdXRvKiByYW5nZSA6IG1fcmFuZ2VzKQorICAgICAgICAgICAgcmFu
Z2UtPnRleHRJbnNlcnRlZCh0ZXh0LCBvZmZzZXQsIGxlbmd0aCk7CisgICAgfQorCisgICAgLy8g
VXBkYXRlIHRoZSBtYXJrZXJzIGZvciBzcGVsbGluZyBhbmQgZ3JhbW1hciBjaGVja2luZy4KKyAg
ICBtX21hcmtlcnMtPnNoaWZ0TWFya2Vycyh0ZXh0LCBvZmZzZXQsIGxlbmd0aCk7CisKKyNpZiBF
TkFCTEUoUExBVEZPUk1fRFJJVkVOX1RFWFRfQ0hFQ0tJTkcpCisgICAgLy8gRnJlc2hseSBpbnNl
cnRlZCB0ZXh0IGlzIGV4cGVjdGVkIHRvIG5vdCBpbmhlcml0IFBsYXRmb3JtVGV4dENoZWNraW5n
IG1hcmtlcnMuCisgICAgbV9tYXJrZXJzLT5yZW1vdmVNYXJrZXJzKHRleHQsIHsgb2Zmc2V0LCBv
ZmZzZXQgKyBsZW5ndGggfSwgRG9jdW1lbnRNYXJrZXI6OlBsYXRmb3JtVGV4dENoZWNraW5nKTsK
KyNlbmRpZgorfQorCit2b2lkIERvY3VtZW50Ojp0ZXh0UmVtb3ZlZChOb2RlJiB0ZXh0LCB1bnNp
Z25lZCBvZmZzZXQsIHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICBpZiAoIW1fcmFuZ2VzLmlzRW1w
dHkoKSkgeworICAgICAgICBmb3IgKGF1dG8qIHJhbmdlIDogbV9yYW5nZXMpCisgICAgICAgICAg
ICByYW5nZS0+dGV4dFJlbW92ZWQodGV4dCwgb2Zmc2V0LCBsZW5ndGgpOworICAgIH0KKworICAg
IC8vIFVwZGF0ZSB0aGUgbWFya2VycyBmb3Igc3BlbGxpbmcgYW5kIGdyYW1tYXIgY2hlY2tpbmcu
CisgICAgbV9tYXJrZXJzLT5yZW1vdmVNYXJrZXJzKHRleHQsIHsgb2Zmc2V0LCBvZmZzZXQgKyBs
ZW5ndGggfSk7CisgICAgbV9tYXJrZXJzLT5zaGlmdE1hcmtlcnModGV4dCwgb2Zmc2V0ICsgbGVu
Z3RoLCAwIC0gbGVuZ3RoKTsKK30KKwordm9pZCBEb2N1bWVudDo6dGV4dE5vZGVzTWVyZ2VkKFRl
eHQmIG9sZE5vZGUsIHVuc2lnbmVkIG9mZnNldCkKK3sKKyAgICBpZiAoIW1fcmFuZ2VzLmlzRW1w
dHkoKSkgeworICAgICAgICBOb2RlV2l0aEluZGV4IG9sZE5vZGVXaXRoSW5kZXgoJm9sZE5vZGUp
OworICAgICAgICBmb3IgKGF1dG8qIHJhbmdlIDogbV9yYW5nZXMpCisgICAgICAgICAgICByYW5n
ZS0+dGV4dE5vZGVzTWVyZ2VkKG9sZE5vZGVXaXRoSW5kZXgsIG9mZnNldCk7CisgICAgfQorCisg
ICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIHVwZGF0ZSBtYXJrZXJzIGZvciBzcGVsbGluZyBhbmQg
Z3JhbW1hciBjaGVja2luZy4KK30KKwordm9pZCBEb2N1bWVudDo6dGV4dE5vZGVTcGxpdChUZXh0
JiBvbGROb2RlKQoreworICAgIGZvciAoYXV0byogcmFuZ2UgOiBtX3JhbmdlcykKKyAgICAgICAg
cmFuZ2UtPnRleHROb2RlU3BsaXQob2xkTm9kZSk7CisKKyAgICAvLyBGSVhNRTogVGhpcyBzaG91
bGQgdXBkYXRlIG1hcmtlcnMgZm9yIHNwZWxsaW5nIGFuZCBncmFtbWFyIGNoZWNraW5nLgorfQor
Cit2b2lkIERvY3VtZW50OjpjcmVhdGVET01XaW5kb3coKQoreworICAgIEFTU0VSVChtX2ZyYW1l
KTsKKyAgICBBU1NFUlQoIW1fZG9tV2luZG93KTsKKworICAgIG1fZG9tV2luZG93ID0gRE9NV2lu
ZG93OjpjcmVhdGUoKnRoaXMpOworCisgICAgQVNTRVJUKG1fZG9tV2luZG93LT5kb2N1bWVudCgp
ID09IHRoaXMpOworICAgIEFTU0VSVChtX2RvbVdpbmRvdy0+ZnJhbWUoKSA9PSBtX2ZyYW1lKTsK
KworICAgIG1fZnJhbWUtPmxvYWRlcigpLmNsaWVudCgpLmRpZENyZWF0ZVdpbmRvdygqbV9kb21X
aW5kb3cpOworfQorCit2b2lkIERvY3VtZW50Ojp0YWtlRE9NV2luZG93RnJvbShEb2N1bWVudCYg
ZG9jdW1lbnQpCit7CisgICAgQVNTRVJUKG1fZnJhbWUpOworICAgIEFTU0VSVCghbV9kb21XaW5k
b3cpOworICAgIEFTU0VSVChkb2N1bWVudC5tX2RvbVdpbmRvdyk7CisgICAgLy8gQSB2YWxpZCBE
T01XaW5kb3cgaXMgbmVlZGVkIGJ5IENhY2hlZEZyYW1lIGZvciBpdHMgZG9jdW1lbnRzLgorICAg
IEFTU0VSVChiYWNrRm9yd2FyZENhY2hlU3RhdGUoKSA9PSBOb3RJbkJhY2tGb3J3YXJkQ2FjaGUp
OworCisgICAgbV9kb21XaW5kb3cgPSBXVEZNb3ZlKGRvY3VtZW50Lm1fZG9tV2luZG93KTsKKyAg
ICBtX2RvbVdpbmRvdy0+ZGlkU2VjdXJlVHJhbnNpdGlvblRvKCp0aGlzKTsKKworICAgIEFTU0VS
VChtX2RvbVdpbmRvdy0+ZG9jdW1lbnQoKSA9PSB0aGlzKTsKKyAgICBBU1NFUlQobV9kb21XaW5k
b3ctPmZyYW1lKCkgPT0gbV9mcmFtZSk7Cit9CisKK1dpbmRvd1Byb3h5KiBEb2N1bWVudDo6d2lu
ZG93UHJveHkoKSBjb25zdAoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgcmV0dXJuICZtX2ZyYW1lLT53aW5kb3dQcm94eSgpOworfQorCitEb2N1bWVu
dCYgRG9jdW1lbnQ6OmNvbnRleHREb2N1bWVudCgpIGNvbnN0Cit7CisgICAgaWYgKG1fY29udGV4
dERvY3VtZW50KQorICAgICAgICByZXR1cm4gKm1fY29udGV4dERvY3VtZW50LmdldCgpOworICAg
IHJldHVybiBjb25zdF9jYXN0PERvY3VtZW50Jj4oKnRoaXMpOworfQorCit2b2lkIERvY3VtZW50
OjpzZXRBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGNvbnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwg
Y29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0cmlidXRlTmFtZSwgY29uc3QgQXRvbVN0cmluZyYgYXR0
cmlidXRlVmFsdWUsIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0ZWRXb3JsZCkKK3sKKyAgICBzZXRB
dHRyaWJ1dGVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgSlNMYXp5RXZlbnRMaXN0ZW5lcjo6Y3Jl
YXRlKCp0aGlzLCBhdHRyaWJ1dGVOYW1lLCBhdHRyaWJ1dGVWYWx1ZSksIGlzb2xhdGVkV29ybGQp
OworfQorCit2b2lkIERvY3VtZW50OjpzZXRXaW5kb3dBdHRyaWJ1dGVFdmVudExpc3RlbmVyKGNv
bnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgUmVmUHRyPEV2ZW50TGlzdGVuZXI+JiYgbGlzdGVu
ZXIsIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0ZWRXb3JsZCkKK3sKKyAgICBpZiAoIW1fZG9tV2lu
ZG93KQorICAgICAgICByZXR1cm47CisgICAgbV9kb21XaW5kb3ctPnNldEF0dHJpYnV0ZUV2ZW50
TGlzdGVuZXIoZXZlbnRUeXBlLCBXVEZNb3ZlKGxpc3RlbmVyKSwgaXNvbGF0ZWRXb3JsZCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OnNldFdpbmRvd0F0dHJpYnV0ZUV2ZW50TGlzdGVuZXIoY29uc3Qg
QXRvbVN0cmluZyYgZXZlbnRUeXBlLCBjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyaWJ1dGVOYW1l
LCBjb25zdCBBdG9tU3RyaW5nJiBhdHRyaWJ1dGVWYWx1ZSwgRE9NV3JhcHBlcldvcmxkJiBpc29s
YXRlZFdvcmxkKQoreworICAgIGlmICghbV9kb21XaW5kb3cpCisgICAgICAgIHJldHVybjsKKyAg
ICBpZiAoIW1fZG9tV2luZG93LT5mcmFtZSgpKQorICAgICAgICByZXR1cm47CisgICAgc2V0V2lu
ZG93QXR0cmlidXRlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIEpTTGF6eUV2ZW50TGlzdGVuZXI6
OmNyZWF0ZSgqbV9kb21XaW5kb3csIGF0dHJpYnV0ZU5hbWUsIGF0dHJpYnV0ZVZhbHVlKSwgaXNv
bGF0ZWRXb3JsZCk7Cit9CisKK0V2ZW50TGlzdGVuZXIqIERvY3VtZW50OjpnZXRXaW5kb3dBdHRy
aWJ1dGVFdmVudExpc3RlbmVyKGNvbnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgRE9NV3JhcHBl
cldvcmxkJiBpc29sYXRlZFdvcmxkKQoreworICAgIGlmICghbV9kb21XaW5kb3cpCisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIHJldHVybiBtX2RvbVdpbmRvdy0+YXR0cmlidXRlRXZlbnRM
aXN0ZW5lcihldmVudFR5cGUsIGlzb2xhdGVkV29ybGQpOworfQorCit2b2lkIERvY3VtZW50Ojpk
aXNwYXRjaFdpbmRvd0V2ZW50KEV2ZW50JiBldmVudCwgRXZlbnRUYXJnZXQqIHRhcmdldCkKK3sK
KyAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTihTY3JpcHREaXNhbGxvd2VkU2Nv
cGU6OkluTWFpblRocmVhZDo6aXNTY3JpcHRBbGxvd2VkKCkpOworICAgIGlmICghbV9kb21XaW5k
b3cpCisgICAgICAgIHJldHVybjsKKyAgICBtX2RvbVdpbmRvdy0+ZGlzcGF0Y2hFdmVudChldmVu
dCwgdGFyZ2V0KTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlzcGF0Y2hXaW5kb3dMb2FkRXZlbnQo
KQoreworICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKFNjcmlwdERpc2FsbG93
ZWRTY29wZTo6SW5NYWluVGhyZWFkOjppc1NjcmlwdEFsbG93ZWQoKSk7CisgICAgaWYgKCFtX2Rv
bVdpbmRvdykKKyAgICAgICAgcmV0dXJuOworICAgIG1fZG9tV2luZG93LT5kaXNwYXRjaExvYWRF
dmVudCgpOworICAgIG1fbG9hZEV2ZW50RmluaXNoZWQgPSB0cnVlOworICAgIG1fY2FjaGVkUmVz
b3VyY2VMb2FkZXItPmRvY3VtZW50RGlkRmluaXNoTG9hZEV2ZW50KCk7Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6OnF1ZXVlVGFza1RvRGlzcGF0Y2hFdmVudChUYXNrU291cmNlIHNvdXJjZSwgUmVmPEV2
ZW50PiYmIGV2ZW50KQoreworICAgIGV2ZW50TG9vcCgpLnF1ZXVlVGFzayhzb3VyY2UsIFtkb2N1
bWVudCA9IG1ha2VSZWYoKnRoaXMpLCBldmVudCA9IFdURk1vdmUoZXZlbnQpXSB7CisgICAgICAg
IGRvY3VtZW50LT5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKKyAgICB9KTsKK30KKwordm9pZCBEb2N1
bWVudDo6cXVldWVUYXNrVG9EaXNwYXRjaEV2ZW50T25XaW5kb3coVGFza1NvdXJjZSBzb3VyY2Us
IFJlZjxFdmVudD4mJiBldmVudCkKK3sKKyAgICBldmVudExvb3AoKS5xdWV1ZVRhc2soc291cmNl
LCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBldmVudCA9IFdURk1vdmUo
ZXZlbnQpXSB7CisgICAgICAgIGlmICghbV9kb21XaW5kb3cpCisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIG1fZG9tV2luZG93LT5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKKyAgICB9KTsKK30K
Kwordm9pZCBEb2N1bWVudDo6ZW5xdWV1ZU92ZXJmbG93RXZlbnQoUmVmPEV2ZW50PiYmIGV2ZW50
KQoreworICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2Vi
L0FQSS9FbGVtZW50L292ZXJmbG93X2V2ZW50CisgICAgLy8gRklYTUU6IFRoaXMgZXZlbnQgaXMg
dG90YWxseSB1bnNwZWNpZmllZC4KKyAgICBhdXRvKiB0YXJnZXQgPSBldmVudC0+dGFyZ2V0KCk7
CisgICAgUkVMRUFTRV9BU1NFUlQodGFyZ2V0KTsKKyAgICBSRUxFQVNFX0FTU0VSVChpczxOb2Rl
Pih0YXJnZXQpKTsKKyAgICBldmVudExvb3AoKS5xdWV1ZVRhc2soVGFza1NvdXJjZTo6RE9NTWFu
aXB1bGF0aW9uLCBbcHJvdGVjdGVkVGFyZ2V0ID0gR0NSZWFjaGFibGVSZWY8Tm9kZT4oZG93bmNh
c3Q8Tm9kZT4oKnRhcmdldCkpLCBldmVudCA9IFdURk1vdmUoZXZlbnQpXSB7CisgICAgICAgIHBy
b3RlY3RlZFRhcmdldC0+ZGlzcGF0Y2hFdmVudChldmVudCk7CisgICAgfSk7Cit9CisKK0V4Y2Vw
dGlvbk9yPFJlZjxFdmVudD4+IERvY3VtZW50OjpjcmVhdGVFdmVudChjb25zdCBTdHJpbmcmIHR5
cGUpCit7CisgICAgLy8gUGxlYXNlIGRvICpub3QqIGFkZCBuZXcgZXZlbnQgY2xhc3NlcyB0byB0
aGlzIGZ1bmN0aW9uIHVubGVzcyB0aGV5IGFyZSByZXF1aXJlZAorICAgIC8vIGZvciBjb21wYXRp
YmlsaXR5IHdpdGggdGhlIERPTSBzcGVjaWZpY2F0aW9uIG9yIHNvbWUgYWN0dWFsIGxlZ2FjeSB3
ZWIgY29udGVudC4KKworICAgIC8vIFRoaXMgbWVjaGFuaXNtIGlzIHN1cGVyc2VkZWQgYnkgdXNl
IG9mIGV2ZW50IGNvbnN0cnVjdG9ycy4KKyAgICAvLyBUaGF0IGlzIHdoYXQgd2Ugc2hvdWxkIHVz
ZSBmb3IgYW55IG5ldyBldmVudCBjbGFzc2VzLgorCisgICAgLy8gVGhlIGZvbGxvd2luZyBzdHJp
bmdzIGFyZSB0aGUgb25lcyBmcm9tIHRoZSBET00gc3BlY2lmaWNhdGlvbgorICAgIC8vIDxodHRw
czovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2RvbS1kb2N1bWVudC1jcmVhdGVldmVudD4uCisKKyAg
ICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgImJlZm9yZXVubG9hZGV2
ZW50IikpCisgICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsgQmVmb3JlVW5sb2FkRXZlbnQ6OmNy
ZWF0ZUZvckJpbmRpbmdzKCkgfTsKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNh
c2UodHlwZSwgImNvbXBvc2l0aW9uZXZlbnQiKSkKKyAgICAgICAgcmV0dXJuIFJlZjxFdmVudD4g
eyBDb21wb3NpdGlvbkV2ZW50OjpjcmVhdGVGb3JCaW5kaW5ncygpIH07CisgICAgaWYgKGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJjdXN0b21ldmVudCIpKQorICAgICAgICBy
ZXR1cm4gUmVmPEV2ZW50PiB7IEN1c3RvbUV2ZW50OjpjcmVhdGUoKSB9OworICAgIGlmIChlcXVh
bExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAiZHJhZ2V2ZW50IikpCisgICAgICAgIHJl
dHVybiBSZWY8RXZlbnQ+IHsgRHJhZ0V2ZW50OjpjcmVhdGVGb3JCaW5kaW5ncygpIH07CisgICAg
aWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJldmVudCIpIHx8IGVxdWFs
TGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJldmVudHMiKSB8fCBlcXVhbExldHRlcnNJ
Z25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAiaHRtbGV2ZW50cyIpIHx8IGVxdWFsTGV0dGVyc0lnbm9y
aW5nQVNDSUlDYXNlKHR5cGUsICJzdmdldmVudHMiKSkKKyAgICAgICAgcmV0dXJuIEV2ZW50Ojpj
cmVhdGVGb3JCaW5kaW5ncygpOworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2Fz
ZSh0eXBlLCAiZm9jdXNldmVudCIpKQorICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IEZvY3Vz
RXZlbnQ6OmNyZWF0ZUZvckJpbmRpbmdzKCkgfTsKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3Jp
bmdBU0NJSUNhc2UodHlwZSwgImhhc2hjaGFuZ2VldmVudCIpKQorICAgICAgICByZXR1cm4gUmVm
PEV2ZW50PiB7IEhhc2hDaGFuZ2VFdmVudDo6Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworICAgIGlm
IChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAia2V5Ym9hcmRldmVudCIpKQor
ICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IEtleWJvYXJkRXZlbnQ6OmNyZWF0ZUZvckJpbmRp
bmdzKCkgfTsKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgIm1l
c3NhZ2VldmVudCIpKQorICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IE1lc3NhZ2VFdmVudDo6
Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJ
Q2FzZSh0eXBlLCAic3RvcmFnZWV2ZW50IikpCisgICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsg
U3RvcmFnZUV2ZW50OjpjcmVhdGVGb3JCaW5kaW5ncygpIH07CisgICAgaWYgKGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJtb3VzZWV2ZW50IikgfHwgZXF1YWxMZXR0ZXJzSWdu
b3JpbmdBU0NJSUNhc2UodHlwZSwgIm1vdXNlZXZlbnRzIikpCisgICAgICAgIHJldHVybiBSZWY8
RXZlbnQ+IHsgTW91c2VFdmVudDo6Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworICAgIGlmIChlcXVh
bExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAidGV4dGV2ZW50IikpCisgICAgICAgIHJl
dHVybiBSZWY8RXZlbnQ+IHsgVGV4dEV2ZW50OjpjcmVhdGVGb3JCaW5kaW5ncygpIH07IC8vIEZJ
WE1FOiBIVE1MIHNwZWNpZmljYXRpb24gc2F5cyB0aGlzIHNob3VsZCBjcmVhdGUgYSBDb21wb3Np
dGlvbkV2ZW50LCBub3QgYSBUZXh0RXZlbnQuCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5n
QVNDSUlDYXNlKHR5cGUsICJ1aWV2ZW50IikgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNh
c2UodHlwZSwgInVpZXZlbnRzIikpCisgICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsgVUlFdmVu
dDo6Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworCisgICAgLy8gRklYTUU6IENvbnNpZGVyIGluY2x1
ZGluZyBzdXBwb3J0IGZvciB0aGVzZSBldmVudCBjbGFzc2VzIGV2ZW4gd2hlbiBkZXZpY2Ugb3Jp
ZW50YXRpb24KKyAgICAvLyBzdXBwb3J0IGlzIG5vdCBlbmFibGVkLgorI2lmIEVOQUJMRShERVZJ
Q0VfT1JJRU5UQVRJT04pCisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5
cGUsICJkZXZpY2Vtb3Rpb25ldmVudCIpKQorICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IERl
dmljZU1vdGlvbkV2ZW50OjpjcmVhdGVGb3JCaW5kaW5ncygpIH07CisgICAgaWYgKGVxdWFsTGV0
dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJkZXZpY2VvcmllbnRhdGlvbmV2ZW50IikpCisg
ICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsgRGV2aWNlT3JpZW50YXRpb25FdmVudDo6Y3JlYXRl
Rm9yQmluZGluZ3MoKSB9OworI2VuZGlmCisKKyNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQorICAg
IGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAidG91Y2hldmVudCIpKQor
ICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IFRvdWNoRXZlbnQ6OmNyZWF0ZUZvckJpbmRpbmdz
KCkgfTsKKyNlbmRpZgorCisgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciAiZHJhZ2V2ZW50
Iiwgd2hpY2ggdGhlIERPTSBzcGVjaWZpY2F0aW9uIGNhbGxzIGZvci4KKworICAgIC8vIFRoZSBm
b2xsb3dpbmcgc3RyaW5nIGNvbWVzIGZyb20gdGhlIFNWRyBzcGVjaWZpY2F0aW9uCisgICAgLy8g
PGh0dHA6Ly93d3cudzMub3JnL1RSL1NWRy9zY3JpcHQuaHRtbCNJbnRlcmZhY2VTVkdab29tRXZl
bnQ+CisgICAgLy8gSG93ZXZlciwgc2luY2UgdGhlcmUgaXMgbm8gcHJvdmlzaW9uIGZvciBpbml0
aWFsaXppbmcgdGhlIGV2ZW50IG9uY2UgaXQgaXMgY3JlYXRlZCwKKyAgICAvLyB0aGVyZSBpcyBu
byBwcmFjdGljYWwgdmFsdWUgaW4gdGhpcyBmZWF0dXJlLgorICAgIC8vIEZJWE1FOiBDb25maXJt
IHRoZXJlIGlzIG5vIGNvbnRlbnQgZGVwZW5kaW5nIG9uIHRoaXMgYW5kIHJlbW92ZSBpdC4KKwor
ICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSh0eXBlLCAic3Znem9vbWV2ZW50
cyIpKQorICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IFNWR1pvb21FdmVudDo6Y3JlYXRlRm9y
QmluZGluZ3MoKSB9OworCisgICAgLy8gVGhlIGZvbGxvd2luZyBzdHJpbmdzIGFyZSBub3QgcGFy
dCBvZiB0aGUgRE9NIHNwZWNpZmljYXRpb24gYW5kIHdlIHdvdWxkIGxpa2UgdG8gZWxpbWluYXRl
IHRoZW0uCisgICAgLy8gSG93ZXZlciwgd2UgY3VycmVudGx5IGluY2x1ZGUgdGhlbSB1bnRpbCB3
ZSByZXNvbHZlIGFueSBpc3N1ZXMgd2l0aCBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorICAgIC8v
IEZJWE1FOiBGb3IgZWFjaCBvZiB0aGUgc3RyaW5ncyBiZWxvdywgY29uZmlybSB0aGF0IHRoZXJl
IGlzIG5vIGNvbnRlbnQgZGVwZW5kaW5nIG9uIGl0IGFuZCByZW1vdmUKKyAgICAvLyB0aGUgc3Ry
aW5nLCByZW1vdmUgdGhlIGNyZWF0ZUZvckJpbmRpbmdzIGZ1bmN0aW9uLCBhbmQgYWxzbyBjb25z
aWRlciByZW1vdmluZyB0aGUgY29ycmVzcG9uZGluZworICAgIC8vIGluaXQgZnVuY3Rpb24gZm9y
IHRoYXQgY2xhc3MuCisKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlw
ZSwgImtleWJvYXJkZXZlbnRzIikpCisgICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsgS2V5Ym9h
cmRFdmVudDo6Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworICAgIGlmIChlcXVhbExldHRlcnNJZ25v
cmluZ0FTQ0lJQ2FzZSh0eXBlLCAibXV0YXRpb25ldmVudCIpIHx8IGVxdWFsTGV0dGVyc0lnbm9y
aW5nQVNDSUlDYXNlKHR5cGUsICJtdXRhdGlvbmV2ZW50cyIpKQorICAgICAgICByZXR1cm4gUmVm
PEV2ZW50PiB7IE11dGF0aW9uRXZlbnQ6OmNyZWF0ZUZvckJpbmRpbmdzKCkgfTsKKyAgICBpZiAo
ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodHlwZSwgIm92ZXJmbG93ZXZlbnQiKSkKKyAg
ICAgICAgcmV0dXJuIFJlZjxFdmVudD4geyBPdmVyZmxvd0V2ZW50OjpjcmVhdGVGb3JCaW5kaW5n
cygpIH07CisgICAgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHR5cGUsICJwb3Bz
dGF0ZWV2ZW50IikpCisgICAgICAgIHJldHVybiBSZWY8RXZlbnQ+IHsgUG9wU3RhdGVFdmVudDo6
Y3JlYXRlRm9yQmluZGluZ3MoKSB9OworICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJ
Q2FzZSh0eXBlLCAid2hlZWxldmVudCIpKQorICAgICAgICByZXR1cm4gUmVmPEV2ZW50PiB7IFdo
ZWVsRXZlbnQ6OmNyZWF0ZUZvckJpbmRpbmdzKCkgfTsKKworICAgIHJldHVybiBFeGNlcHRpb24g
eyBOb3RTdXBwb3J0ZWRFcnJvciB9OworfQorCitib29sIERvY3VtZW50OjpoYXNMaXN0ZW5lclR5
cGVGb3JFdmVudFR5cGUoUGxhdGZvcm1FdmVudDo6VHlwZSBldmVudFR5cGUpIGNvbnN0Cit7Cisg
ICAgc3dpdGNoIChldmVudFR5cGUpIHsKKyAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9y
Y2VDaGFuZ2VkOgorICAgICAgICByZXR1cm4gbV9saXN0ZW5lclR5cGVzICYgRG9jdW1lbnQ6OkZP
UkNFQ0hBTkdFRF9MSVNURU5FUjsKKyAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VE
b3duOgorICAgICAgICByZXR1cm4gbV9saXN0ZW5lclR5cGVzICYgRG9jdW1lbnQ6OkZPUkNFRE9X
Tl9MSVNURU5FUjsKKyAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VVcDoKKyAgICAg
ICAgcmV0dXJuIG1fbGlzdGVuZXJUeXBlcyAmIERvY3VtZW50OjpGT1JDRVVQX0xJU1RFTkVSOwor
ICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6TW91c2VTY3JvbGw6CisgICAgICAgIHJldHVybiBtX2xp
c3RlbmVyVHlwZXMgJiBEb2N1bWVudDo6U0NST0xMX0xJU1RFTkVSOworICAgIGRlZmF1bHQ6Cisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFkZExpc3Rl
bmVyVHlwZUlmTmVlZGVkKGNvbnN0IEF0b21TdHJpbmcmIGV2ZW50VHlwZSkKK3sKKyAgICBpZiAo
ZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5ET01TdWJ0cmVlTW9kaWZpZWRFdmVudCkKKyAgICAg
ICAgYWRkTGlzdGVuZXJUeXBlKERPTVNVQlRSRUVNT0RJRklFRF9MSVNURU5FUik7CisgICAgZWxz
ZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5ET01Ob2RlSW5zZXJ0ZWRFdmVudCkKKyAg
ICAgICAgYWRkTGlzdGVuZXJUeXBlKERPTU5PREVJTlNFUlRFRF9MSVNURU5FUik7CisgICAgZWxz
ZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5ET01Ob2RlUmVtb3ZlZEV2ZW50KQorICAg
ICAgICBhZGRMaXN0ZW5lclR5cGUoRE9NTk9ERVJFTU9WRURfTElTVEVORVIpOworICAgIGVsc2Ug
aWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuRE9NTm9kZVJlbW92ZWRGcm9tRG9jdW1lbnRF
dmVudCkKKyAgICAgICAgYWRkTGlzdGVuZXJUeXBlKERPTU5PREVSRU1PVkVERlJPTURPQ1VNRU5U
X0xJU1RFTkVSKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLkRPTU5v
ZGVJbnNlcnRlZEludG9Eb2N1bWVudEV2ZW50KQorICAgICAgICBhZGRMaXN0ZW5lclR5cGUoRE9N
Tk9ERUlOU0VSVEVESU5UT0RPQ1VNRU5UX0xJU1RFTkVSKTsKKyAgICBlbHNlIGlmIChldmVudFR5
cGUgPT0gZXZlbnROYW1lcygpLkRPTUNoYXJhY3RlckRhdGFNb2RpZmllZEV2ZW50KQorICAgICAg
ICBhZGRMaXN0ZW5lclR5cGUoRE9NQ0hBUkFDVEVSREFUQU1PRElGSUVEX0xJU1RFTkVSKTsKKyAg
ICBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLm92ZXJmbG93Y2hhbmdlZEV2ZW50
KQorICAgICAgICBhZGRMaXN0ZW5lclR5cGUoT1ZFUkZMT1dDSEFOR0VEX0xJU1RFTkVSKTsKKyAg
ICBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLndlYmtpdEFuaW1hdGlvblN0YXJ0
RXZlbnQgfHwgZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5hbmltYXRpb25zdGFydEV2ZW50KQor
ICAgICAgICBhZGRMaXN0ZW5lclR5cGUoQU5JTUFUSU9OU1RBUlRfTElTVEVORVIpOworICAgIGVs
c2UgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkud2Via2l0QW5pbWF0aW9uRW5kRXZlbnQg
fHwgZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5hbmltYXRpb25lbmRFdmVudCkKKyAgICAgICAg
YWRkTGlzdGVuZXJUeXBlKEFOSU1BVElPTkVORF9MSVNURU5FUik7CisgICAgZWxzZSBpZiAoZXZl
bnRUeXBlID09IGV2ZW50TmFtZXMoKS53ZWJraXRBbmltYXRpb25JdGVyYXRpb25FdmVudCB8fCBl
dmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmFuaW1hdGlvbml0ZXJhdGlvbkV2ZW50KQorICAgICAg
ICBhZGRMaXN0ZW5lclR5cGUoQU5JTUFUSU9OSVRFUkFUSU9OX0xJU1RFTkVSKTsKKyAgICBlbHNl
IGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLndlYmtpdFRyYW5zaXRpb25FbmRFdmVudCB8
fCBldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnRyYW5zaXRpb25lbmRFdmVudCkKKyAgICAgICAg
YWRkTGlzdGVuZXJUeXBlKFRSQU5TSVRJT05FTkRfTElTVEVORVIpOworICAgIGVsc2UgaWYgKGV2
ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuYmVmb3JlbG9hZEV2ZW50KQorICAgICAgICBhZGRMaXN0
ZW5lclR5cGUoQkVGT1JFTE9BRF9MSVNURU5FUik7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09
IGV2ZW50TmFtZXMoKS5zY3JvbGxFdmVudCkKKyAgICAgICAgYWRkTGlzdGVuZXJUeXBlKFNDUk9M
TF9MSVNURU5FUik7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS53ZWJr
aXRtb3VzZWZvcmNld2lsbGJlZ2luRXZlbnQpCisgICAgICAgIGFkZExpc3RlbmVyVHlwZShGT1JD
RVdJTExCRUdJTl9MSVNURU5FUik7CisgICAgZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFt
ZXMoKS53ZWJraXRtb3VzZWZvcmNlY2hhbmdlZEV2ZW50KQorICAgICAgICBhZGRMaXN0ZW5lclR5
cGUoRk9SQ0VDSEFOR0VEX0xJU1RFTkVSKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZl
bnROYW1lcygpLndlYmtpdG1vdXNlZm9yY2Vkb3duRXZlbnQpCisgICAgICAgIGFkZExpc3RlbmVy
VHlwZShGT1JDRURPV05fTElTVEVORVIpOworICAgIGVsc2UgaWYgKGV2ZW50VHlwZSA9PSBldmVu
dE5hbWVzKCkud2Via2l0bW91c2Vmb3JjZXVwRXZlbnQpCisgICAgICAgIGFkZExpc3RlbmVyVHlw
ZShGT1JDRVVQX0xJU1RFTkVSKTsKKyAgICBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1l
cygpLnJlc2l6ZUV2ZW50KQorICAgICAgICBhZGRMaXN0ZW5lclR5cGUoUkVTSVpFX0xJU1RFTkVS
KTsKK30KKworSFRNTEZyYW1lT3duZXJFbGVtZW50KiBEb2N1bWVudDo6b3duZXJFbGVtZW50KCkg
Y29uc3QKK3sKKyAgICBpZiAoIWZyYW1lKCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAg
IHJldHVybiBmcmFtZSgpLT5vd25lckVsZW1lbnQoKTsKK30KKworLy8gaHR0cHM6Ly9odG1sLnNw
ZWMud2hhdHdnLm9yZy8jY29va2llLWF2ZXJzZS1kb2N1bWVudC1vYmplY3QKK2Jvb2wgRG9jdW1l
bnQ6OmlzQ29va2llQXZlcnNlKCkgY29uc3QKK3sKKyAgICAvLyBBIERvY3VtZW50IHRoYXQgaGFz
IG5vIGJyb3dzaW5nIGNvbnRleHQgaXMgY29va2llLWF2ZXJzZS4KKyAgICBpZiAoIWZyYW1lKCkp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgVVJMIGNvb2tpZVVSTCA9IHRoaXMtPmNvb2tp
ZVVSTCgpOworCisgICAgLy8gVGhpcyBpcyBub3QgcGFydCBvZiB0aGUgc3BlY2lmaWNhdGlvbiBi
dXQgd2UgaGF2ZSBoaXN0b3JpY2FsbHkgYWxsb3dlZCBjb29raWVzIG92ZXIgZmlsZSBwcm90b2Nv
bAorICAgIC8vIGFuZCBzb21lIGRldmVsb3BlcnMgcmVseSBvbiB0aGlzIGZvciB0ZXN0aW5nLgor
ICAgIGlmIChjb29raWVVUkwuaXNMb2NhbEZpbGUoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgLy8gQSBEb2N1bWVudCB3aG9zZSBVUkwncyBzY2hlbWUgaXMgbm90IGEgbmV0d29yayBz
Y2hlbWUgaXMgY29va2llLWF2ZXJzZSAoaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI25l
dHdvcmstc2NoZW1lKS4KKyAgICByZXR1cm4gIWNvb2tpZVVSTC5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkgJiYgIWNvb2tpZVVSTC5wcm90b2NvbElzKCJmdHAiKTsKK30KKworRXhjZXB0aW9uT3I8
U3RyaW5nPiBEb2N1bWVudDo6Y29va2llKCkKK3sKKyAgICBpZiAocGFnZSgpICYmICFwYWdlKCkt
PnNldHRpbmdzKCkuY29va2llRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisK
KyAgICBpZiAoaXNDb29raWVBdmVyc2UoKSkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisg
ICAgaWYgKCFzZWN1cml0eU9yaWdpbigpLmNhbkFjY2Vzc0Nvb2tpZXMoKSkKKyAgICAgICAgcmV0
dXJuIEV4Y2VwdGlvbiB7IFNlY3VyaXR5RXJyb3IgfTsKKworICAgIFVSTCBjb29raWVVUkwgPSB0
aGlzLT5jb29raWVVUkwoKTsKKyAgICBpZiAoY29va2llVVJMLmlzRW1wdHkoKSkKKyAgICAgICAg
cmV0dXJuIFN0cmluZygpOworCisgICAgaWYgKCFpc0RPTUNvb2tpZUNhY2hlVmFsaWQoKSAmJiBw
YWdlKCkpCisgICAgICAgIHNldENhY2hlZERPTUNvb2tpZXMocGFnZSgpLT5jb29raWVKYXIoKS5j
b29raWVzKCp0aGlzLCBjb29raWVVUkwpKTsKKworICAgIHJldHVybiBTdHJpbmcgeyBjYWNoZWRE
T01Db29raWVzKCkgfTsKK30KKworRXhjZXB0aW9uT3I8dm9pZD4gRG9jdW1lbnQ6OnNldENvb2tp
ZShjb25zdCBTdHJpbmcmIHZhbHVlKQoreworICAgIGlmIChwYWdlKCkgJiYgIXBhZ2UoKS0+c2V0
dGluZ3MoKS5jb29raWVFbmFibGVkKCkpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBpZiAo
aXNDb29raWVBdmVyc2UoKSkKKyAgICAgICAgcmV0dXJuIHsgfTsKKworICAgIGlmICghc2VjdXJp
dHlPcmlnaW4oKS5jYW5BY2Nlc3NDb29raWVzKCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBTZWN1cml0eUVycm9yIH07CisKKyAgICBVUkwgY29va2llVVJMID0gdGhpcy0+Y29va2llVVJM
KCk7CisgICAgaWYgKGNvb2tpZVVSTC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiB7IH07CisK
KyAgICBpbnZhbGlkYXRlRE9NQ29va2llQ2FjaGUoKTsKKyAgICBpZiAocGFnZSgpKQorICAgICAg
ICBwYWdlKCktPmNvb2tpZUphcigpLnNldENvb2tpZXMoKnRoaXMsIGNvb2tpZVVSTCwgdmFsdWUp
OworICAgIHJldHVybiB7IH07Cit9CisKK1N0cmluZyBEb2N1bWVudDo6cmVmZXJyZXIoKQorewor
I2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKQorICAgIGlmICghbV9y
ZWZlcnJlck92ZXJyaWRlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG1fcmVmZXJyZXJPdmVy
cmlkZTsKKyAgICBpZiAoRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzOjpyZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRW5hYmxlZCgpICYmIGZyYW1lKCkpIHsKKyAgICAgICAgYXV0byByZWZlcnJlclN0ciA9
IGZyYW1lKCktPmxvYWRlcigpLnJlZmVycmVyKCk7CisgICAgICAgIGlmICghcmVmZXJyZXJTdHIu
aXNFbXB0eSgpKSB7CisgICAgICAgICAgICBVUkwgcmVmZXJyZXJVUkwgeyBVUkwoKSwgcmVmZXJy
ZXJTdHIgfTsKKyAgICAgICAgICAgIFJlZ2lzdHJhYmxlRG9tYWluIHJlZmVycmVyUmVnaXN0cmFi
bGVEb21haW4geyByZWZlcnJlclVSTCB9OworICAgICAgICAgICAgaWYgKCFyZWZlcnJlclJlZ2lz
dHJhYmxlRG9tYWluLm1hdGNoZXMoc2VjdXJpdHlPcmlnaW4oKS5kYXRhKCkpKSB7CisgICAgICAg
ICAgICAgICAgbV9yZWZlcnJlck92ZXJyaWRlID0gVVJMKFVSTCgpLCByZWZlcnJlclVSTC5wcm90
b2NvbEhvc3RBbmRQb3J0KCkpLnN0cmluZygpOworICAgICAgICAgICAgICAgIHJldHVybiBtX3Jl
ZmVycmVyT3ZlcnJpZGU7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYK
KyAgICBpZiAoZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIGZyYW1lKCktPmxvYWRlcigpLnJlZmVy
cmVyKCk7CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitTdHJpbmcgRG9jdW1lbnQ6OmRvbWFp
bigpIGNvbnN0Cit7CisgICAgcmV0dXJuIHNlY3VyaXR5T3JpZ2luKCkuZG9tYWluKCk7Cit9CisK
K0V4Y2VwdGlvbk9yPHZvaWQ+IERvY3VtZW50OjpzZXREb21haW4oY29uc3QgU3RyaW5nJiBuZXdE
b21haW4pCit7CisgICAgaWYgKCFmcmFtZSgpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsg
U2VjdXJpdHlFcnJvciwgIkEgYnJvd3NpbmcgY29udGV4dCBpcyByZXF1aXJlZCB0byBzZXQgYSBk
b21haW4uIiB9OworCisgICAgaWYgKGlzU2FuZGJveGVkKFNhbmRib3hEb2N1bWVudERvbWFpbikp
CisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBTZWN1cml0eUVycm9yLCAiQXNzaWdubWVudCBp
cyBmb3JiaWRkZW4gZm9yIHNhbmRib3hlZCBpZnJhbWVzLiIgfTsKKworICAgIGlmIChMZWdhY3lT
Y2hlbWVSZWdpc3RyeTo6aXNEb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lKHNl
Y3VyaXR5T3JpZ2luKCkucHJvdG9jb2woKSkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBT
ZWN1cml0eUVycm9yIH07CisKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGFkZCBsb2dnaW5nIGlu
ZGljYXRpbmcgd2h5IGEgZG9tYWluIHdhcyBub3QgYWxsb3dlZC4KKworICAgIGNvbnN0IFN0cmlu
ZyYgZWZmZWN0aXZlRG9tYWluID0gZG9tYWluKCk7CisgICAgaWYgKGVmZmVjdGl2ZURvbWFpbi5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBTZWN1cml0eUVycm9yLCAiVGhl
IGRvY3VtZW50IGhhcyBhIG51bGwgZWZmZWN0aXZlRG9tYWluLiIgfTsKKworICAgIGlmICghc2Vj
dXJpdHlPcmlnaW4oKS5pc01hdGNoaW5nUmVnaXN0cmFibGVEb21haW5TdWZmaXgobmV3RG9tYWlu
LCBzZXR0aW5ncygpLnRyZWF0SVBBZGRyZXNzQXNEb21haW4oKSkpCisgICAgICAgIHJldHVybiBF
eGNlcHRpb24geyBTZWN1cml0eUVycm9yLCAiQXR0ZW1wdGVkIHRvIHVzZSBhIG5vbi1yZWdpc3Ry
YWJsZSBkb21haW4uIiB9OworCisgICAgc2VjdXJpdHlPcmlnaW4oKS5zZXREb21haW5Gcm9tRE9N
KG5ld0RvbWFpbik7CisgICAgcmV0dXJuIHsgfTsKK30KKwordm9pZCBEb2N1bWVudDo6b3ZlcnJp
ZGVMYXN0TW9kaWZpZWQoY29uc3Qgc3RkOjpvcHRpb25hbDxXYWxsVGltZT4mIGxhc3RNb2RpZmll
ZCkKK3sKKyAgICBtX292ZXJyaWRlTGFzdE1vZGlmaWVkID0gbGFzdE1vZGlmaWVkOworfQorCisv
LyBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMvY3VycmVudC13b3JrLyNkb20t
ZG9jdW1lbnQtbGFzdG1vZGlmaWVkCitTdHJpbmcgRG9jdW1lbnQ6Omxhc3RNb2RpZmllZCgpIGNv
bnN0Cit7CisgICAgc3RkOjpvcHRpb25hbDxXYWxsVGltZT4gZGF0ZVRpbWU7CisgICAgaWYgKG1f
b3ZlcnJpZGVMYXN0TW9kaWZpZWQpCisgICAgICAgIGRhdGVUaW1lID0gbV9vdmVycmlkZUxhc3RN
b2RpZmllZDsKKyAgICBlbHNlIGlmIChsb2FkZXIoKSkKKyAgICAgICAgZGF0ZVRpbWUgPSBsb2Fk
ZXIoKS0+cmVzcG9uc2UoKS5sYXN0TW9kaWZpZWQoKTsKKworICAgIC8vIEZJWE1FOiBJZiB0aGlz
IGRvY3VtZW50IGNhbWUgZnJvbSB0aGUgZmlsZSBzeXN0ZW0sIHRoZSBIVE1MIHNwZWNpZmljYXRp
b24gdGVsbHMKKyAgICAvLyB1cyB0byByZWFkIHRoZSBsYXN0IG1vZGlmaWNhdGlvbiBkYXRlIGZy
b20gdGhlIGZpbGUgc3lzdGVtLgorICAgIGlmICghZGF0ZVRpbWUpCisgICAgICAgIGRhdGVUaW1l
ID0gV2FsbFRpbWU6Om5vdygpOworCisgICAgYXV0byBjdGltZSA9IGRhdGVUaW1lLnZhbHVlKCku
c2Vjb25kc1NpbmNlRXBvY2goKS5zZWNvbmRzQXM8dGltZV90PigpOworICAgIGF1dG8gbG9jYWxE
YXRlVGltZSA9IHN0ZDo6bG9jYWx0aW1lKCZjdGltZSk7CisgICAgcmV0dXJuIG1ha2VTdHJpbmco
cGFkKCcwJywgMiwgbG9jYWxEYXRlVGltZS0+dG1fbW9uICsgMSksICcvJywKKyAgICAgICAgcGFk
KCcwJywgMiwgbG9jYWxEYXRlVGltZS0+dG1fbWRheSksICcvJywKKyAgICAgICAgcGFkKCcwJywg
NCwgMTkwMCArIGxvY2FsRGF0ZVRpbWUtPnRtX3llYXIpLCAnICcsCisgICAgICAgIHBhZCgnMCcs
IDIsIGxvY2FsRGF0ZVRpbWUtPnRtX2hvdXIpLCAnOicsCisgICAgICAgIHBhZCgnMCcsIDIsIGxv
Y2FsRGF0ZVRpbWUtPnRtX21pbiksICc6JywKKyAgICAgICAgcGFkKCcwJywgMiwgbG9jYWxEYXRl
VGltZS0+dG1fc2VjKSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldENvb2tpZVVSTChjb25zdCBV
UkwmIHVybCkKK3sKKyAgICBpZiAobV9jb29raWVVUkwgPT0gdXJsKQorICAgICAgICByZXR1cm47
CisgICAgbV9jb29raWVVUkwgPSB1cmw7CisgICAgaW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKCk7
Cit9CisKK3N0YXRpYyBib29sIGlzVmFsaWROYW1lTm9uQVNDSUkoY29uc3QgTENoYXIqIGNoYXJh
Y3RlcnMsIHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICBpZiAoIWlzVmFsaWROYW1lU3RhcnQoY2hh
cmFjdGVyc1swXSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGZvciAodW5zaWduZWQg
aSA9IDE7IGkgPCBsZW5ndGg7ICsraSkgeworICAgICAgICBpZiAoIWlzVmFsaWROYW1lUGFydChj
aGFyYWN0ZXJzW2ldKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGJvb2wgaXNWYWxpZE5hbWVOb25BU0NJSShjb25zdCBV
Q2hhciogY2hhcmFjdGVycywgdW5zaWduZWQgbGVuZ3RoKQoreworICAgIHVuc2lnbmVkIGkgPSAw
OworCisgICAgVUNoYXIzMiBjOworICAgIFUxNl9ORVhUKGNoYXJhY3RlcnMsIGksIGxlbmd0aCwg
Yyk7CisgICAgaWYgKCFpc1ZhbGlkTmFtZVN0YXJ0KGMpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisKKyAgICB3aGlsZSAoaSA8IGxlbmd0aCkgeworICAgICAgICBVMTZfTkVYVChjaGFyYWN0ZXJz
LCBpLCBsZW5ndGgsIGMpOworICAgICAgICBpZiAoIWlzVmFsaWROYW1lUGFydChjKSkKKyAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwordGVt
cGxhdGU8dHlwZW5hbWUgQ2hhclR5cGU+CitzdGF0aWMgaW5saW5lIGJvb2wgaXNWYWxpZE5hbWVB
U0NJSShjb25zdCBDaGFyVHlwZSogY2hhcmFjdGVycywgdW5zaWduZWQgbGVuZ3RoKQoreworICAg
IENoYXJUeXBlIGMgPSBjaGFyYWN0ZXJzWzBdOworICAgIGlmICghKGlzQVNDSUlBbHBoYShjKSB8
fCBjID09ICc6JyB8fCBjID09ICdfJykpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGZv
ciAodW5zaWduZWQgaSA9IDE7IGkgPCBsZW5ndGg7ICsraSkgeworICAgICAgICBjID0gY2hhcmFj
dGVyc1tpXTsKKyAgICAgICAgaWYgKCEoaXNBU0NJSUFscGhhbnVtZXJpYyhjKSB8fCBjID09ICc6
JyB8fCBjID09ICdfJyB8fCBjID09ICctJyB8fCBjID09ICcuJykpCisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6
OmlzVmFsaWROYW1lKGNvbnN0IFN0cmluZyYgbmFtZSkKK3sKKyAgICB1bnNpZ25lZCBsZW5ndGgg
PSBuYW1lLmxlbmd0aCgpOworICAgIGlmICghbGVuZ3RoKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisKKyAgICBpZiAobmFtZS5pczhCaXQoKSkgeworICAgICAgICBjb25zdCBMQ2hhciogY2hhcmFj
dGVycyA9IG5hbWUuY2hhcmFjdGVyczgoKTsKKworICAgICAgICBpZiAoaXNWYWxpZE5hbWVBU0NJ
SShjaGFyYWN0ZXJzLCBsZW5ndGgpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAg
ICAgcmV0dXJuIGlzVmFsaWROYW1lTm9uQVNDSUkoY2hhcmFjdGVycywgbGVuZ3RoKTsKKyAgICB9
CisKKyAgICBjb25zdCBVQ2hhciogY2hhcmFjdGVycyA9IG5hbWUuY2hhcmFjdGVyczE2KCk7CisK
KyAgICBpZiAoaXNWYWxpZE5hbWVBU0NJSShjaGFyYWN0ZXJzLCBsZW5ndGgpKQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBpc1ZhbGlkTmFtZU5vbkFTQ0lJKGNoYXJhY3RlcnMs
IGxlbmd0aCk7Cit9CisKK0V4Y2VwdGlvbk9yPHN0ZDo6cGFpcjxBdG9tU3RyaW5nLCBBdG9tU3Ry
aW5nPj4gRG9jdW1lbnQ6OnBhcnNlUXVhbGlmaWVkTmFtZShjb25zdCBTdHJpbmcmIHF1YWxpZmll
ZE5hbWUpCit7CisgICAgdW5zaWduZWQgbGVuZ3RoID0gcXVhbGlmaWVkTmFtZS5sZW5ndGgoKTsK
KworICAgIGlmICghbGVuZ3RoKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZENo
YXJhY3RlckVycm9yIH07CisKKyAgICBib29sIG5hbWVTdGFydCA9IHRydWU7CisgICAgYm9vbCBz
YXdDb2xvbiA9IGZhbHNlOworICAgIHVuc2lnbmVkIGNvbG9uUG9zaXRpb24gPSAwOworCisgICAg
Zm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGxlbmd0aDsgKSB7CisgICAgICAgIFVDaGFyMzIgYzsK
KyAgICAgICAgVTE2X05FWFQocXVhbGlmaWVkTmFtZSwgaSwgbGVuZ3RoLCBjKTsKKyAgICAgICAg
aWYgKGMgPT0gJzonKSB7CisgICAgICAgICAgICBpZiAoc2F3Q29sb24pCisgICAgICAgICAgICAg
ICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRDaGFyYWN0ZXJFcnJvciB9OworICAgICAgICAg
ICAgbmFtZVN0YXJ0ID0gdHJ1ZTsKKyAgICAgICAgICAgIHNhd0NvbG9uID0gdHJ1ZTsKKyAgICAg
ICAgICAgIGNvbG9uUG9zaXRpb24gPSBpIC0gMTsKKyAgICAgICAgfSBlbHNlIGlmIChuYW1lU3Rh
cnQpIHsKKyAgICAgICAgICAgIGlmICghaXNWYWxpZE5hbWVTdGFydChjKSkKKyAgICAgICAgICAg
ICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZENoYXJhY3RlckVycm9yIH07CisgICAgICAg
ICAgICBuYW1lU3RhcnQgPSBmYWxzZTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlm
ICghaXNWYWxpZE5hbWVQYXJ0KGMpKQorICAgICAgICAgICAgICAgIHJldHVybiBFeGNlcHRpb24g
eyBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgfTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICgh
c2F3Q29sb24pCisgICAgICAgIHJldHVybiBzdGQ6OnBhaXI8QXRvbVN0cmluZywgQXRvbVN0cmlu
Zz4geyB7IH0sIHsgcXVhbGlmaWVkTmFtZSB9IH07CisKKyAgICBpZiAoIWNvbG9uUG9zaXRpb24g
fHwgbGVuZ3RoIC0gY29sb25Qb3NpdGlvbiA8PSAxKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9u
IHsgSW52YWxpZENoYXJhY3RlckVycm9yIH07CisKKyAgICByZXR1cm4gc3RkOjpwYWlyPEF0b21T
dHJpbmcsIEF0b21TdHJpbmc+IHsgU3RyaW5nVmlldyB7IHF1YWxpZmllZE5hbWUgfS5zdWJzdHJp
bmcoMCwgY29sb25Qb3NpdGlvbikudG9BdG9tU3RyaW5nKCksIFN0cmluZ1ZpZXcgeyBxdWFsaWZp
ZWROYW1lIH0uc3Vic3RyaW5nKGNvbG9uUG9zaXRpb24gKyAxKS50b0F0b21TdHJpbmcoKSB9Owor
fQorCitFeGNlcHRpb25PcjxRdWFsaWZpZWROYW1lPiBEb2N1bWVudDo6cGFyc2VRdWFsaWZpZWRO
YW1lKGNvbnN0IEF0b21TdHJpbmcmIG5hbWVzcGFjZVVSSSwgY29uc3QgU3RyaW5nJiBxdWFsaWZp
ZWROYW1lKQoreworICAgIGF1dG8gcGFyc2VSZXN1bHQgPSBwYXJzZVF1YWxpZmllZE5hbWUocXVh
bGlmaWVkTmFtZSk7CisgICAgaWYgKHBhcnNlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gcGFyc2VSZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpOworICAgIGF1dG8gcGFyc2Vk
UGllY2VzID0gcGFyc2VSZXN1bHQucmVsZWFzZVJldHVyblZhbHVlKCk7CisgICAgcmV0dXJuIFF1
YWxpZmllZE5hbWUgeyBwYXJzZWRQaWVjZXMuZmlyc3QsIHBhcnNlZFBpZWNlcy5zZWNvbmQsIG5h
bWVzcGFjZVVSSSB9OworfQorCit2b2lkIERvY3VtZW50OjpzZXREZWNvZGVyKFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiYmIGRlY29kZXIpCit7CisgICAgbV9kZWNvZGVyID0gV1RGTW92ZShk
ZWNvZGVyKTsKK30KKworVVJMIERvY3VtZW50Ojpjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmIHVy
bCwgY29uc3QgVVJMJiBiYXNlVVJMT3ZlcnJpZGUsIEZvcmNlVVRGOCBmb3JjZVVURjgpIGNvbnN0
Cit7CisgICAgLy8gQWx3YXlzIHJldHVybiBhIG51bGwgVVJMIHdoZW4gcGFzc2VkIGEgbnVsbCBz
dHJpbmcuCisgICAgLy8gRklYTUU6IFNob3VsZCB3ZSBjaGFuZ2UgdGhlIFVSTCBjb25zdHJ1Y3Rv
ciB0byBoYXZlIHRoaXMgYmVoYXZpb3I/CisgICAgLy8gU2VlIGFsc28gW0NTU11TdHlsZVNoZWV0
Ojpjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmKQorICAgIGlmICh1cmwuaXNOdWxsKCkpCisgICAg
ICAgIHJldHVybiBVUkwoKTsKKyAgICBjb25zdCBVUkwmIGJhc2VVUkwgPSAoKGJhc2VVUkxPdmVy
cmlkZS5pc0VtcHR5KCkgfHwgYmFzZVVSTE92ZXJyaWRlID09IGFib3V0QmxhbmtVUkwoKSkgJiYg
cGFyZW50RG9jdW1lbnQoKSkgPyBwYXJlbnREb2N1bWVudCgpLT5iYXNlVVJMKCkgOiBiYXNlVVJM
T3ZlcnJpZGU7CisgICAgaWYgKCFtX2RlY29kZXIgfHwgZm9yY2VVVEY4ID09IEZvcmNlVVRGODo6
WWVzKQorICAgICAgICByZXR1cm4gVVJMKGJhc2VVUkwsIHVybCk7CisgICAgcmV0dXJuIFVSTChi
YXNlVVJMLCB1cmwsIG1fZGVjb2Rlci0+ZW5jb2RpbmdGb3JVUkxQYXJzaW5nKCkpOworfQorCitV
UkwgRG9jdW1lbnQ6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsLCBGb3JjZVVURjggZm9y
Y2VVVEY4KSBjb25zdAoreworICAgIHJldHVybiBjb21wbGV0ZVVSTCh1cmwsIG1fYmFzZVVSTCwg
Zm9yY2VVVEY4KTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0QmFja0ZvcndhcmRDYWNoZVN0YXRl
KEJhY2tGb3J3YXJkQ2FjaGVTdGF0ZSBzdGF0ZSkKK3sKKyAgICBpZiAobV9iYWNrRm9yd2FyZENh
Y2hlU3RhdGUgPT0gc3RhdGUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fYmFja0ZvcndhcmRD
YWNoZVN0YXRlID0gc3RhdGU7CisKKyAgICBGcmFtZVZpZXcqIHYgPSB2aWV3KCk7CisgICAgUGFn
ZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKKworICAgIHN3aXRjaCAoc3RhdGUpIHsKKyAgICBjYXNl
IEluQmFja0ZvcndhcmRDYWNoZToKKyAgICAgICAgaWYgKHYpIHsKKyAgICAgICAgICAgIC8vIEZJ
WE1FOiBUaGVyZSBpcyBzb21lIHNjcm9sbGluZyByZWxhdGVkIHdvcmsgdGhhdCBuZWVkcyB0byBo
YXBwZW4gd2hlbmV2ZXIgYSBwYWdlIGdvZXMgaW50byB0aGUKKyAgICAgICAgICAgIC8vIGJhY2sv
Zm9yd2FyZCBjYWNoZSBhbmQgc2ltaWxhciB3b3JrIHRoYXQgbmVlZHMgdG8gb2NjdXIgd2hlbiBp
dCBjb21lcyBvdXQuIFRoaXMgaXMgd2hlcmUgd2UgZG8gdGhlIHdvcmsKKyAgICAgICAgICAgIC8v
IHRoYXQgbmVlZHMgdG8gaGFwcGVuIHdoZW4gd2UgZW50ZXIsIGFuZCB0aGUgd29yayB0aGF0IG5l
ZWRzIHRvIGhhcHBlbiB3aGVuIHdlIGV4aXQgaXMgaW4KKyAgICAgICAgICAgIC8vIEhpc3RvcnlD
b250cm9sbGVyOjpyZXN0b3JlU2Nyb2xsUG9zaXRpb25BbmRWaWV3U3RhdGUoKS4gSXQgY2FuJ3Qg
YmUgaGVyZSBiZWNhdXNlIHRoaXMgZnVuY3Rpb24gaXMKKyAgICAgICAgICAgIC8vIGNhbGxlZCB0
b28gZWFybHkgb24gaW4gdGhlIHByb2Nlc3Mgb2YgYSBwYWdlIGV4aXRpbmcgdGhlIGNhY2hlIGZv
ciB0aGF0IHdvcmsgdG8gYmUgcG9zc2libGUgaW4gdGhpcworICAgICAgICAgICAgLy8gZnVuY3Rp
b24uIEl0IHdvdWxkIGJlIG5pY2UgaWYgdGhlcmUgd2FzIG1vcmUgc3ltbWV0cnkgaGVyZS4KKyAg
ICAgICAgICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODY5
OAorICAgICAgICAgICAgdi0+Y2FjaGVDdXJyZW50U2Nyb2xsUG9zaXRpb24oKTsKKyAgICAgICAg
ICAgIGlmIChwYWdlICYmIG1fZnJhbWUtPmlzTWFpbkZyYW1lKCkpIHsKKyAgICAgICAgICAgICAg
ICB2LT5yZXNldFNjcm9sbGJhcnNBbmRDbGVhckNvbnRlbnRzU2l6ZSgpOworICAgICAgICAgICAg
ICAgIGlmIChSZWZQdHIgc2Nyb2xsaW5nQ29vcmRpbmF0b3IgPSBwYWdlLT5zY3JvbGxpbmdDb29y
ZGluYXRvcigpKQorICAgICAgICAgICAgICAgICAgICBzY3JvbGxpbmdDb29yZGluYXRvci0+Y2xl
YXJBbGxOb2RlcygpOworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQorICAgICAgICBleGl0UG9pbnRlckxvY2soKTsKKyNlbmRpZgorCisgICAgICAg
IHN0eWxlU2NvcGUoKS5jbGVhclJlc29sdmVyKCk7CisgICAgICAgIGNsZWFyU2VsZWN0b3JRdWVy
eUNhY2hlKCk7CisgICAgICAgIG1fc3R5bGVSZWNhbGNUaW1lci5zdG9wKCk7CisKKyAgICAgICAg
Y2xlYXJTaGFyZWRPYmplY3RQb29sKCk7CisKKyAgICAgICAgaWYgKG1faWRiQ29ubmVjdGlvblBy
b3h5KQorICAgICAgICAgICAgbV9pZGJDb25uZWN0aW9uUHJveHktPnNldENvbnRleHRTdXNwZW5k
ZWQoKnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgdHJ1ZSk7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgTm90SW5CYWNrRm9yd2FyZENhY2hlOgorICAgICAgICBpZiAoY2hpbGROZWVkc1N0eWxl
UmVjYWxjKCkpCisgICAgICAgICAgICBzY2hlZHVsZVN0eWxlUmVjYWxjKCk7CisgICAgICAgIGlm
IChtX2lkYkNvbm5lY3Rpb25Qcm94eSkKKyAgICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5
LT5zZXRDb250ZXh0U3VzcGVuZGVkKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIGZhbHNlKTsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBBYm91dFRvRW50ZXJCYWNrRm9yd2FyZENhY2hlOgor
ICAgICAgICBicmVhazsKKyAgICB9Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmRvY3VtZW50V2lsbEJl
Y29tZUluYWN0aXZlKCkKK3sKKyAgICBBU1NFUlRfSU1QTElFUyhyZW5kZXJWaWV3KCksIHZpZXco
KSk7CisgICAgaWYgKFJlZlB0ciBmcmFtZVZpZXcgPSB2aWV3KCkpCisgICAgICAgIGZyYW1lVmll
dy0+c2V0SXNJbldpbmRvdyhmYWxzZSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnN1c3BlbmQoUmVh
c29uRm9yU3VzcGVuc2lvbiByZWFzb24pCit7CisgICAgaWYgKG1faXNTdXNwZW5kZWQpCisgICAg
ICAgIHJldHVybjsKKworICAgIGRvY3VtZW50V2lsbEJlY29tZUluYWN0aXZlKCk7CisKKyAgICBm
b3IgKGF1dG8mIGVsZW1lbnQgOiBtX2RvY3VtZW50U3VzcGVuc2lvbkNhbGxiYWNrRWxlbWVudHMp
CisgICAgICAgIGVsZW1lbnQucHJlcGFyZUZvckRvY3VtZW50U3VzcGVuc2lvbigpOworCisjaWYg
QVNTRVJUX0VOQUJMRUQKKyAgICAvLyBDbGVhciB0aGUgdXBkYXRlIGZsYWcgdG8gYmUgYWJsZSB0
byBjaGVjayBpZiB0aGUgdmlld3BvcnQgYXJndW1lbnRzIHVwZGF0ZQorICAgIC8vIGlzIGRpc3Bh
dGNoZWQsIGFmdGVyIHRoZSBkb2N1bWVudCBpcyByZXN0b3JlZCBmcm9tIHRoZSBiYWNrL2Zvcndh
cmQgY2FjaGUuCisgICAgbV9kaWREaXNwYXRjaFZpZXdwb3J0UHJvcGVydGllc0NoYW5nZWQgPSBm
YWxzZTsKKyNlbmRpZgorCisgICAgaWYgKGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdlKCkpCisgICAg
ICAgIHBhZ2UtPmxvY2tBbGxPdmVybGF5U2Nyb2xsYmFyc1RvSGlkZGVuKHRydWUpOworCisgICAg
aWYgKGF1dG8qIHZpZXcgPSByZW5kZXJWaWV3KCkpIHsKKyAgICAgICAgaWYgKHZpZXctPnVzZXND
b21wb3NpdGluZygpKQorICAgICAgICAgICAgdmlldy0+Y29tcG9zaXRvcigpLmNhbmNlbENvbXBv
c2l0aW5nTGF5ZXJVcGRhdGUoKTsKKyAgICB9CisKKyNpZiBFTkFCTEUoV0VCX1JUQykKKyAgICBp
ZiAobV9ydGNOZXR3b3JrTWFuYWdlcikKKyAgICAgICAgbV9ydGNOZXR3b3JrTWFuYWdlci0+dW5y
ZWdpc3Rlck1ETlNOYW1lcygpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIp
CisgICAgaWYgKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2Vydmlj
ZVdvcmtlckVuYWJsZWQoKSAmJiByZWFzb24gPT0gUmVhc29uRm9yU3VzcGVuc2lvbjo6QmFja0Zv
cndhcmRDYWNoZSkKKyAgICAgICAgc2V0U2VydmljZVdvcmtlckNvbm5lY3Rpb24obnVsbHB0cik7
CisjZW5kaWYKKworICAgIHN1c3BlbmRTY2hlZHVsZWRUYXNrcyhyZWFzb24pOworCisgICAgQVNT
RVJUKG1fZnJhbWUpOworICAgIG1fZnJhbWUtPmNsZWFyVGltZXJzKCk7CisKKyAgICBtX3Zpc3Vh
bFVwZGF0ZXNBbGxvd2VkID0gZmFsc2U7CisgICAgbV92aXN1YWxVcGRhdGVzU3VwcHJlc3Npb25U
aW1lci5zdG9wKCk7CisKKyAgICBtX2ZvbnRMb2FkZXItPnN1c3BlbmRGb250TG9hZGluZygpOwor
CisgICAgbV9pc1N1c3BlbmRlZCA9IHRydWU7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc3VtZShS
ZWFzb25Gb3JTdXNwZW5zaW9uIHJlYXNvbikKK3sKKyAgICBpZiAoIW1faXNTdXNwZW5kZWQpCisg
ICAgICAgIHJldHVybjsKKworICAgIGZvciAoYXV0byBlbGVtZW50IDogY29weVRvVmVjdG9yT2Y8
UmVmPEVsZW1lbnQ+PihtX2RvY3VtZW50U3VzcGVuc2lvbkNhbGxiYWNrRWxlbWVudHMpKQorICAg
ICAgICBlbGVtZW50LT5yZXN1bWVGcm9tRG9jdW1lbnRTdXNwZW5zaW9uKCk7CisKKyAgICBpZiAo
cmVuZGVyVmlldygpKQorICAgICAgICByZW5kZXJWaWV3KCktPnNldElzSW5XaW5kb3codHJ1ZSk7
CisKKyAgICBpZiAoYXV0byogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAgICAgcGFnZS0+bG9j
a0FsbE92ZXJsYXlTY3JvbGxiYXJzVG9IaWRkZW4oZmFsc2UpOworCisgICAgQVNTRVJUKG1fZnJh
bWUpOworCisgICAgaWYgKG1fdGltZWxpbmVzQ29udHJvbGxlcikKKyAgICAgICAgbV90aW1lbGlu
ZXNDb250cm9sbGVyLT5yZXN1bWVBbmltYXRpb25zKCk7CisKKyAgICByZXN1bWVTY2hlZHVsZWRU
YXNrcyhyZWFzb24pOworCisgICAgbV92aXN1YWxVcGRhdGVzQWxsb3dlZCA9IHRydWU7CisKKyAg
ICBtX2ZvbnRMb2FkZXItPnJlc3VtZUZvbnRMb2FkaW5nKCk7CisKKyAgICBtX2lzU3VzcGVuZGVk
ID0gZmFsc2U7CisKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYgKFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2VydmljZVdvcmtlckVuYWJsZWQoKSAm
JiByZWFzb24gPT0gUmVhc29uRm9yU3VzcGVuc2lvbjo6QmFja0ZvcndhcmRDYWNoZSkKKyAgICAg
ICAgc2V0U2VydmljZVdvcmtlckNvbm5lY3Rpb24oJlNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2lu
Z2xldG9uKCkuc2VydmljZVdvcmtlckNvbm5lY3Rpb24oKSk7CisjZW5kaWYKK30KKwordm9pZCBE
b2N1bWVudDo6cmVnaXN0ZXJGb3JEb2N1bWVudFN1c3BlbnNpb25DYWxsYmFja3MoRWxlbWVudCYg
ZWxlbWVudCkKK3sKKyAgICBtX2RvY3VtZW50U3VzcGVuc2lvbkNhbGxiYWNrRWxlbWVudHMuYWRk
KGVsZW1lbnQpOworfQorCit2b2lkIERvY3VtZW50Ojp1bnJlZ2lzdGVyRm9yRG9jdW1lbnRTdXNw
ZW5zaW9uQ2FsbGJhY2tzKEVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgbV9kb2N1bWVudFN1c3Bl
bnNpb25DYWxsYmFja0VsZW1lbnRzLnJlbW92ZShlbGVtZW50KTsKK30KKworYm9vbCBEb2N1bWVu
dDo6YXVkaW9QbGF5YmFja1JlcXVpcmVzVXNlckdlc3R1cmUoKSBjb25zdAoreworICAgIGlmIChE
b2N1bWVudExvYWRlciogbG9hZGVyID0gdGhpcy0+bG9hZGVyKCkpIHsKKyAgICAgICAgLy8gSWYg
YW4gYXVkaW8gcGxheWJhY2sgcG9saWN5IHdhcyBzZXQgZHVyaW5nIG5hdmlnYXRpb24sIHVzZSBp
dC4gSWYgbm90LCB1c2UgdGhlIGdsb2JhbCBzZXR0aW5ncy4KKyAgICAgICAgQXV0b3BsYXlQb2xp
Y3kgcG9saWN5ID0gbG9hZGVyLT5hdXRvcGxheVBvbGljeSgpOworICAgICAgICBpZiAocG9saWN5
ICE9IEF1dG9wbGF5UG9saWN5OjpEZWZhdWx0KQorICAgICAgICAgICAgcmV0dXJuIHBvbGljeSA9
PSBBdXRvcGxheVBvbGljeTo6QWxsb3dXaXRob3V0U291bmQgfHwgcG9saWN5ID09IEF1dG9wbGF5
UG9saWN5OjpEZW55OworICAgIH0KKworICAgIHJldHVybiBzZXR0aW5ncygpLmF1ZGlvUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlKCk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OnZpZGVvUGxheWJh
Y2tSZXF1aXJlc1VzZXJHZXN0dXJlKCkgY29uc3QKK3sKKyAgICBpZiAoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciA9IHRoaXMtPmxvYWRlcigpKSB7CisgICAgICAgIC8vIElmIGEgdmlkZW8gcGxheWJh
Y2sgcG9saWN5IHdhcyBzZXQgZHVyaW5nIG5hdmlnYXRpb24sIHVzZSBpdC4gSWYgbm90LCB1c2Ug
dGhlIGdsb2JhbCBzZXR0aW5ncy4KKyAgICAgICAgQXV0b3BsYXlQb2xpY3kgcG9saWN5ID0gbG9h
ZGVyLT5hdXRvcGxheVBvbGljeSgpOworICAgICAgICBpZiAocG9saWN5ICE9IEF1dG9wbGF5UG9s
aWN5OjpEZWZhdWx0KQorICAgICAgICAgICAgcmV0dXJuIHBvbGljeSA9PSBBdXRvcGxheVBvbGlj
eTo6RGVueTsKKyAgICB9CisKKyAgICByZXR1cm4gc2V0dGluZ3MoKS52aWRlb1BsYXliYWNrUmVx
dWlyZXNVc2VyR2VzdHVyZSgpOworfQorCitib29sIERvY3VtZW50OjptZWRpYURhdGFMb2Fkc0F1
dG9tYXRpY2FsbHkoKSBjb25zdAoreworICAgIGlmIChhdXRvKiBsb2FkZXIgPSB0aGlzLT5sb2Fk
ZXIoKSkgeworICAgICAgICBBdXRvcGxheVBvbGljeSBwb2xpY3kgPSBsb2FkZXItPmF1dG9wbGF5
UG9saWN5KCk7CisgICAgICAgIGlmIChwb2xpY3kgIT0gQXV0b3BsYXlQb2xpY3k6OkRlZmF1bHQp
CisgICAgICAgICAgICByZXR1cm4gcG9saWN5ICE9IEF1dG9wbGF5UG9saWN5OjpEZW55OworICAg
IH0KKworICAgIHJldHVybiBzZXR0aW5ncygpLm1lZGlhRGF0YUxvYWRzQXV0b21hdGljYWxseSgp
OworfQorCit2b2lkIERvY3VtZW50OjpzdG9yYWdlQmxvY2tpbmdTdGF0ZURpZENoYW5nZSgpCit7
CisgICAgc2VjdXJpdHlPcmlnaW4oKS5zZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koc2V0dGluZ3Mo
KS5zdG9yYWdlQmxvY2tpbmdQb2xpY3koKSk7Cit9CisKKy8vIFVzZWQgb25seSBieSBXZWJLaXRM
ZWdhY3kuCit2b2lkIERvY3VtZW50Ojpwcml2YXRlQnJvd3NpbmdTdGF0ZURpZENoYW5nZShQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQpCit7CisgICAgaWYgKG1fbG9nZ2VyKQorICAgICAgICBtX2xv
Z2dlci0+c2V0RW5hYmxlZCh0aGlzLCBzZXNzaW9uSUQuaXNBbHdheXNPbkxvZ2dpbmdBbGxvd2Vk
KCkpOworCisjaWYgRU5BQkxFKFZJREVPKQorICAgIGZvckVhY2hNZWRpYUVsZW1lbnQoW3Nlc3Np
b25JRF0gKEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1lbnQpIHsKKyAgICAgICAgZWxlbWVudC5wcml2
YXRlQnJvd3NpbmdTdGF0ZURpZENoYW5nZShzZXNzaW9uSUQpOworICAgIH0pOworI2VuZGlmCit9
CisKKyNpZiBFTkFCTEUoVklERU8pCisKK3ZvaWQgRG9jdW1lbnQ6OnJlZ2lzdGVyRm9yQ2FwdGlv
blByZWZlcmVuY2VzQ2hhbmdlZENhbGxiYWNrcyhIVE1MTWVkaWFFbGVtZW50JiBlbGVtZW50KQor
eworICAgIGlmIChwYWdlKCkpCisgICAgICAgIHBhZ2UoKS0+Z3JvdXAoKS5lbnN1cmVDYXB0aW9u
UHJlZmVyZW5jZXMoKS5zZXRJbnRlcmVzdGVkSW5DYXB0aW9uUHJlZmVyZW5jZUNoYW5nZXMoKTsK
KworICAgIG1fY2FwdGlvblByZWZlcmVuY2VzQ2hhbmdlZEVsZW1lbnRzLmFkZChlbGVtZW50KTsK
K30KKwordm9pZCBEb2N1bWVudDo6dW5yZWdpc3RlckZvckNhcHRpb25QcmVmZXJlbmNlc0NoYW5n
ZWRDYWxsYmFja3MoSFRNTE1lZGlhRWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICBtX2NhcHRpb25Q
cmVmZXJlbmNlc0NoYW5nZWRFbGVtZW50cy5yZW1vdmUoZWxlbWVudCk7Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6OmNhcHRpb25QcmVmZXJlbmNlc0NoYW5nZWQoKQoreworICAgIEFTU0VSVCghbV9jYXB0
aW9uUHJlZmVyZW5jZXNDaGFuZ2VkRWxlbWVudHMuaGFzTnVsbFJlZmVyZW5jZXMoKSk7CisgICAg
bV9jYXB0aW9uUHJlZmVyZW5jZXNDaGFuZ2VkRWxlbWVudHMuZm9yRWFjaChbXShIVE1MTWVkaWFF
bGVtZW50JiBlbGVtZW50KSB7CisgICAgICAgIGVsZW1lbnQuY2FwdGlvblByZWZlcmVuY2VzQ2hh
bmdlZCgpOworICAgIH0pOworfQorCit2b2lkIERvY3VtZW50OjpzZXRNZWRpYUVsZW1lbnRTaG93
aW5nVGV4dFRyYWNrKGNvbnN0IEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgbV9t
ZWRpYUVsZW1lbnRTaG93aW5nVGV4dFRyYWNrID0gbWFrZVdlYWtQdHIoZWxlbWVudCk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OmNsZWFyTWVkaWFFbGVtZW50U2hvd2luZ1RleHRUcmFjaygpCit7Cisg
ICAgbV9tZWRpYUVsZW1lbnRTaG93aW5nVGV4dFRyYWNrID0gbnVsbHB0cjsKK30KKwordm9pZCBE
b2N1bWVudDo6dXBkYXRlVGV4dFRyYWNrUmVwcmVzZW50YXRpb25JbWFnZUlmTmVlZGVkKCkKK3sK
KyAgICBpZiAobV9tZWRpYUVsZW1lbnRTaG93aW5nVGV4dFRyYWNrKQorICAgICAgICBtX21lZGlh
RWxlbWVudFNob3dpbmdUZXh0VHJhY2stPnVwZGF0ZVRleHRUcmFja1JlcHJlc2VudGF0aW9uSW1h
Z2VJZk5lZWRlZCgpOworfQorCisjZW5kaWYKKwordm9pZCBEb2N1bWVudDo6c2V0U2hvdWxkQ3Jl
YXRlUmVuZGVyZXJzKGJvb2wgZikKK3sKKyAgICBtX2NyZWF0ZVJlbmRlcmVycyA9IGY7Cit9CisK
K2Jvb2wgRG9jdW1lbnQ6OnNob3VsZENyZWF0ZVJlbmRlcmVycygpCit7CisgICAgcmV0dXJuIG1f
Y3JlYXRlUmVuZGVyZXJzOworfQorCisvLyBTdXBwb3J0IGZvciBKYXZhc2NyaXB0IGV4ZWNDb21t
YW5kLCBhbmQgcmVsYXRlZCBtZXRob2RzCisKK3N0YXRpYyBFZGl0b3I6OkNvbW1hbmQgY29tbWFu
ZChEb2N1bWVudCogZG9jdW1lbnQsIGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUsIGJvb2wgdXNl
ckludGVyZmFjZSA9IGZhbHNlKQoreworICAgIGF1dG8gcHJvdGVjdGVkRG9jdW1lbnQgPSBtYWtl
UmVmKCpkb2N1bWVudCk7CisKKyAgICBkb2N1bWVudC0+dXBkYXRlU3R5bGVJZk5lZWRlZCgpOwor
CisgICAgYXV0byBmcmFtZSA9IG1ha2VSZWZQdHIoZG9jdW1lbnQtPmZyYW1lKCkpOworCisgICAg
aWYgKCFmcmFtZSB8fCBmcmFtZS0+ZG9jdW1lbnQoKSAhPSBkb2N1bWVudCkKKyAgICAgICAgcmV0
dXJuIEVkaXRvcjo6Q29tbWFuZCgpOworCisgICAgcmV0dXJuIGZyYW1lLT5lZGl0b3IoKS5jb21t
YW5kKGNvbW1hbmROYW1lLAorICAgICAgICB1c2VySW50ZXJmYWNlID8gQ29tbWFuZEZyb21ET01X
aXRoVXNlckludGVyZmFjZSA6IENvbW1hbmRGcm9tRE9NKTsKK30KKworRXhjZXB0aW9uT3I8Ym9v
bD4gRG9jdW1lbnQ6OmV4ZWNDb21tYW5kKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUsIGJvb2wg
dXNlckludGVyZmFjZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKK3sKKyAgICBpZiAoVU5MSUtFTFko
IWlzSFRNTERvY3VtZW50KCkgJiYgIWlzWEhUTUxEb2N1bWVudCgpKSkKKyAgICAgICAgcmV0dXJu
IEV4Y2VwdGlvbiB7IEludmFsaWRTdGF0ZUVycm9yLCAiZXhlY0NvbW1hbmQgaXMgb25seSBzdXBw
b3J0ZWQgb24gSFRNTCBkb2N1bWVudHMuIiB9OworCisgICAgRXZlbnRRdWV1ZVNjb3BlIGV2ZW50
UXVldWVTY29wZTsKKyAgICByZXR1cm4gY29tbWFuZCh0aGlzLCBjb21tYW5kTmFtZSwgdXNlcklu
dGVyZmFjZSkuZXhlY3V0ZSh2YWx1ZSk7Cit9CisKK0V4Y2VwdGlvbk9yPGJvb2w+IERvY3VtZW50
OjpxdWVyeUNvbW1hbmRFbmFibGVkKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUpCit7CisgICAg
aWYgKFVOTElLRUxZKCFpc0hUTUxEb2N1bWVudCgpICYmICFpc1hIVE1MRG9jdW1lbnQoKSkpCisg
ICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgInF1ZXJ5Q29tbWFu
ZEVuYWJsZWQgaXMgb25seSBzdXBwb3J0ZWQgb24gSFRNTCBkb2N1bWVudHMuIiB9OworICAgIHJl
dHVybiBjb21tYW5kKHRoaXMsIGNvbW1hbmROYW1lKS5pc0VuYWJsZWQoKTsKK30KKworRXhjZXB0
aW9uT3I8Ym9vbD4gRG9jdW1lbnQ6OnF1ZXJ5Q29tbWFuZEluZGV0ZXJtKGNvbnN0IFN0cmluZyYg
Y29tbWFuZE5hbWUpCit7CisgICAgaWYgKFVOTElLRUxZKCFpc0hUTUxEb2N1bWVudCgpICYmICFp
c1hIVE1MRG9jdW1lbnQoKSkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciwgInF1ZXJ5Q29tbWFuZEluZGV0ZXJtIGlzIG9ubHkgc3VwcG9ydGVkIG9uIEhUTUwg
ZG9jdW1lbnRzLiIgfTsKKyAgICByZXR1cm4gY29tbWFuZCh0aGlzLCBjb21tYW5kTmFtZSkuc3Rh
dGUoKSA9PSBUcmlTdGF0ZTo6SW5kZXRlcm1pbmF0ZTsKK30KKworRXhjZXB0aW9uT3I8Ym9vbD4g
RG9jdW1lbnQ6OnF1ZXJ5Q29tbWFuZFN0YXRlKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUpCit7
CisgICAgaWYgKFVOTElLRUxZKCFpc0hUTUxEb2N1bWVudCgpICYmICFpc1hIVE1MRG9jdW1lbnQo
KSkpCisgICAgICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkU3RhdGVFcnJvciwgInF1ZXJ5
Q29tbWFuZFN0YXRlIGlzIG9ubHkgc3VwcG9ydGVkIG9uIEhUTUwgZG9jdW1lbnRzLiIgfTsKKyAg
ICByZXR1cm4gY29tbWFuZCh0aGlzLCBjb21tYW5kTmFtZSkuc3RhdGUoKSA9PSBUcmlTdGF0ZTo6
VHJ1ZTsKK30KKworRXhjZXB0aW9uT3I8Ym9vbD4gRG9jdW1lbnQ6OnF1ZXJ5Q29tbWFuZFN1cHBv
cnRlZChjb25zdCBTdHJpbmcmIGNvbW1hbmROYW1lKQoreworICAgIGlmIChVTkxJS0VMWSghaXNI
VE1MRG9jdW1lbnQoKSAmJiAhaXNYSFRNTERvY3VtZW50KCkpKQorICAgICAgICByZXR1cm4gRXhj
ZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJxdWVyeUNvbW1hbmRTdXBwb3J0ZWQgaXMgb25s
eSBzdXBwb3J0ZWQgb24gSFRNTCBkb2N1bWVudHMuIiB9OworICAgIHJldHVybiBjb21tYW5kKHRo
aXMsIGNvbW1hbmROYW1lKS5pc1N1cHBvcnRlZCgpOworfQorCitFeGNlcHRpb25PcjxTdHJpbmc+
IERvY3VtZW50OjpxdWVyeUNvbW1hbmRWYWx1ZShjb25zdCBTdHJpbmcmIGNvbW1hbmROYW1lKQor
eworICAgIGlmIChVTkxJS0VMWSghaXNIVE1MRG9jdW1lbnQoKSAmJiAhaXNYSFRNTERvY3VtZW50
KCkpKQorICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZFN0YXRlRXJyb3IsICJxdWVy
eUNvbW1hbmRWYWx1ZSBpcyBvbmx5IHN1cHBvcnRlZCBvbiBIVE1MIGRvY3VtZW50cy4iIH07Cisg
ICAgcmV0dXJuIGNvbW1hbmQodGhpcywgY29tbWFuZE5hbWUpLnZhbHVlKCk7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6OnB1c2hDdXJyZW50U2NyaXB0KEVsZW1lbnQqIG5ld0N1cnJlbnRTY3JpcHQpCit7
CisgICAgbV9jdXJyZW50U2NyaXB0U3RhY2suYXBwZW5kKG5ld0N1cnJlbnRTY3JpcHQpOworfQor
Cit2b2lkIERvY3VtZW50Ojpwb3BDdXJyZW50U2NyaXB0KCkKK3sKKyAgICBBU1NFUlQoIW1fY3Vy
cmVudFNjcmlwdFN0YWNrLmlzRW1wdHkoKSk7CisgICAgbV9jdXJyZW50U2NyaXB0U3RhY2sucmVt
b3ZlTGFzdCgpOworfQorCitib29sIERvY3VtZW50OjpzaG91bGREZWZlckFzeW5jaHJvbm91c1Nj
cmlwdHNVbnRpbFBhcnNpbmdGaW5pc2hlcygpIGNvbnN0Cit7CisgICAgaWYgKCFzZXR0aW5ncygp
LnNob3VsZERlZmVyQXN5bmNocm9ub3VzU2NyaXB0c1VudGlsQWZ0ZXJEb2N1bWVudExvYWRPckZp
cnN0UGFpbnQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKHF1aXJrcygpLnNo
b3VsZEJ5cGFzc0FzeW5jU2NyaXB0RGVmZXJyaW5nKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KworICAgIHJldHVybiBwYXJzaW5nKCkgJiYgISh2aWV3KCkgJiYgdmlldygpLT5oYXNFdmVyUGFp
bnRlZCgpKTsKK30KKworI2lmIEVOQUJMRShYU0xUKQorCit2b2lkIERvY3VtZW50OjpzY2hlZHVs
ZVRvQXBwbHlYU0xUcmFuc2Zvcm1zKCkKK3sKKyAgICBtX2hhc1BlbmRpbmdYU0xUcmFuc2Zvcm1z
ID0gdHJ1ZTsKKyAgICBpZiAoIW1fYXBwbHlQZW5kaW5nWFNMVHJhbnNmb3Jtc1RpbWVyLmlzQWN0
aXZlKCkpCisgICAgICAgIG1fYXBwbHlQZW5kaW5nWFNMVHJhbnNmb3Jtc1RpbWVyLnN0YXJ0T25l
U2hvdCgwX3MpOworfQorCit2b2lkIERvY3VtZW50OjphcHBseVBlbmRpbmdYU0xUcmFuc2Zvcm1z
Tm93SWZTY2hlZHVsZWQoKQoreworICAgIGlmICghbV9oYXNQZW5kaW5nWFNMVHJhbnNmb3JtcykK
KyAgICAgICAgcmV0dXJuOworICAgIG1fYXBwbHlQZW5kaW5nWFNMVHJhbnNmb3Jtc1RpbWVyLnN0
b3AoKTsKKyAgICBhcHBseVBlbmRpbmdYU0xUcmFuc2Zvcm1zVGltZXJGaXJlZCgpOworfQorCit2
b2lkIERvY3VtZW50OjphcHBseVBlbmRpbmdYU0xUcmFuc2Zvcm1zVGltZXJGaXJlZCgpCit7Cisg
ICAgaWYgKHBhcnNpbmcoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9oYXNQZW5kaW5nWFNM
VHJhbnNmb3JtcyA9IGZhbHNlOworICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9O
KFNjcmlwdERpc2FsbG93ZWRTY29wZTo6SW5NYWluVGhyZWFkOjppc1NjcmlwdEFsbG93ZWQoKSk7
CisgICAgZm9yIChhdXRvJiBwcm9jZXNzaW5nSW5zdHJ1Y3Rpb24gOiBzdHlsZVNjb3BlKCkuY29s
bGVjdFhTTFRyYW5zZm9ybXMoKSkgeworICAgICAgICBBU1NFUlQocHJvY2Vzc2luZ0luc3RydWN0
aW9uLT5pc1hTTCgpKTsKKworICAgICAgICAvLyBEb24ndCBhcHBseSBYU0wgdHJhbnNmb3JtcyB0
byBhbHJlYWR5IHRyYW5zZm9ybWVkIGRvY3VtZW50cyAtLSA8cmRhcjovL3Byb2JsZW0vNDEzMjgw
Nj4KKyAgICAgICAgaWYgKHRyYW5zZm9ybVNvdXJjZURvY3VtZW50KCkgfHwgIXByb2Nlc3NpbmdJ
bnN0cnVjdGlvbi0+c2hlZXQoKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAvLyBJ
ZiB0aGUgRG9jdW1lbnQgaGFzIGFscmVhZHkgYmVlbiBkZXRhY2hlZCBmcm9tIHRoZSBmcmFtZSwg
b3IgdGhlIGZyYW1lIGlzIGN1cnJlbnRseSBpbiB0aGUgcHJvY2VzcyBvZgorICAgICAgICAvLyBj
aGFuZ2luZyB0byBhIG5ldyBkb2N1bWVudCwgZG9uJ3QgYXR0ZW1wdCB0byBjcmVhdGUgYSBuZXcg
RG9jdW1lbnQgZnJvbSB0aGUgWFNMVC4KKyAgICAgICAgaWYgKCFmcmFtZSgpIHx8IGZyYW1lKCkt
PmRvY3VtZW50SXNCZWluZ1JlcGxhY2VkKCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgYXV0byBwcm9jZXNzb3IgPSBYU0xUUHJvY2Vzc29yOjpjcmVhdGUoKTsKKyAgICAgICAgcHJv
Y2Vzc29yLT5zZXRYU0xTdHlsZVNoZWV0KGRvd25jYXN0PFhTTFN0eWxlU2hlZXQ+KHByb2Nlc3Np
bmdJbnN0cnVjdGlvbi0+c2hlZXQoKSkpOworICAgICAgICBTdHJpbmcgcmVzdWx0TUlNRVR5cGU7
CisgICAgICAgIFN0cmluZyBuZXdTb3VyY2U7CisgICAgICAgIFN0cmluZyByZXN1bHRFbmNvZGlu
ZzsKKyAgICAgICAgaWYgKCFwcm9jZXNzb3ItPnRyYW5zZm9ybVRvU3RyaW5nKCp0aGlzLCByZXN1
bHRNSU1FVHlwZSwgbmV3U291cmNlLCByZXN1bHRFbmNvZGluZykpCisgICAgICAgICAgICBjb250
aW51ZTsKKyAgICAgICAgLy8gRklYTUU6IElmIHRoZSB0cmFuc2Zvcm0gZmFpbGVkIHdlIHNob3Vs
ZCBwcm9iYWJseSByZXBvcnQgYW4gZXJyb3IgKGxpa2UgTW96aWxsYSBkb2VzKS4KKyAgICAgICAg
cHJvY2Vzc29yLT5jcmVhdGVEb2N1bWVudEZyb21Tb3VyY2UobmV3U291cmNlLCByZXN1bHRFbmNv
ZGluZywgcmVzdWx0TUlNRVR5cGUsIHRoaXMsIGZyYW1lKCkpOworICAgIH0KK30KKwordm9pZCBE
b2N1bWVudDo6c2V0VHJhbnNmb3JtU291cmNlKHN0ZDo6dW5pcXVlX3B0cjxUcmFuc2Zvcm1Tb3Vy
Y2U+IHNvdXJjZSkKK3sKKyAgICBtX3RyYW5zZm9ybVNvdXJjZSA9IFdURk1vdmUoc291cmNlKTsK
K30KKworI2VuZGlmCisKK3ZvaWQgRG9jdW1lbnQ6OnNldERlc2lnbk1vZGUoSW5oZXJpdGVkQm9v
bCB2YWx1ZSkKK3sKKyAgICBtX2Rlc2lnbk1vZGUgPSB2YWx1ZTsKKyAgICBmb3IgKFJlZlB0ciBm
cmFtZSA9IG1fZnJhbWUuZ2V0KCk7IGZyYW1lICYmIGZyYW1lLT5kb2N1bWVudCgpOyBmcmFtZSA9
IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KG1fZnJhbWUuZ2V0KCkpKQorICAgICAgICBmcmFt
ZS0+ZG9jdW1lbnQoKS0+c2NoZWR1bGVGdWxsU3R5bGVSZWJ1aWxkKCk7Cit9CisKK1N0cmluZyBE
b2N1bWVudDo6ZGVzaWduTW9kZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGluRGVzaWduTW9kZSgp
ID8gIm9uIl9zIDogIm9mZiJfczsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0RGVzaWduTW9kZShj
b25zdCBTdHJpbmcmIHZhbHVlKQoreworICAgIEluaGVyaXRlZEJvb2wgbW9kZTsKKyAgICBpZiAo
ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodmFsdWUsICJvbiIpKQorICAgICAgICBtb2Rl
ID0gb247CisgICAgZWxzZSBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodmFsdWUs
ICJvZmYiKSkKKyAgICAgICAgbW9kZSA9IG9mZjsKKyAgICBlbHNlCisgICAgICAgIG1vZGUgPSBp
bmhlcml0OworICAgIHNldERlc2lnbk1vZGUobW9kZSk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6Omlu
RGVzaWduTW9kZSgpIGNvbnN0Cit7CisgICAgZm9yIChjb25zdCBEb2N1bWVudCogZCA9IHRoaXM7
IGQ7IGQgPSBkLT5wYXJlbnREb2N1bWVudCgpKSB7CisgICAgICAgIGlmIChkLT5tX2Rlc2lnbk1v
ZGUgIT0gaW5oZXJpdCkKKyAgICAgICAgICAgIHJldHVybiBkLT5tX2Rlc2lnbk1vZGU7CisgICAg
fQorICAgIHJldHVybiBmYWxzZTsKK30KKworRG9jdW1lbnQqIERvY3VtZW50OjpwYXJlbnREb2N1
bWVudCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX2ZyYW1lKQorICAgICAgICByZXR1cm4gbnVsbHB0
cjsKKyAgICBGcmFtZSogcGFyZW50ID0gbV9mcmFtZS0+dHJlZSgpLnBhcmVudCgpOworICAgIGlm
ICghcGFyZW50KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gcGFyZW50LT5k
b2N1bWVudCgpOworfQorCitEb2N1bWVudCYgRG9jdW1lbnQ6OnRvcERvY3VtZW50KCkgY29uc3QK
K3sKKyAgICAvLyBGSVhNRTogVGhpcyBzcGVjaWFsLWNhc2luZyBhdm9pZHMgaW5jb3JyZWN0bHkg
ZGV0ZXJtaW5lZCB0b3AgZG9jdW1lbnRzIGR1cmluZyB0aGUgcHJvY2VzcworICAgIC8vIG9mIEFY
T2JqZWN0Q2FjaGUgdGVhcmRvd24gb3Igbm90aWZpY2F0aW9uIHBvc3RpbmcgZm9yIGNhY2hlZCBv
ciBiZWluZy1kZXN0cm95ZWQgZG9jdW1lbnRzLgorICAgIGlmIChiYWNrRm9yd2FyZENhY2hlU3Rh
dGUoKSA9PSBOb3RJbkJhY2tGb3J3YXJkQ2FjaGUgJiYgIW1fcmVuZGVyVHJlZUJlaW5nRGVzdHJv
eWVkKSB7CisgICAgICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgICAgIHJldHVybiBjb25zdF9j
YXN0PERvY3VtZW50Jj4oKnRoaXMpOworICAgICAgICAvLyBUaGlzIHNob3VsZCBhbHdheXMgYmUg
bm9uLW51bGwuCisgICAgICAgIERvY3VtZW50KiBtYWluRnJhbWVEb2N1bWVudCA9IG1fZnJhbWUt
Pm1haW5GcmFtZSgpLmRvY3VtZW50KCk7CisgICAgICAgIHJldHVybiBtYWluRnJhbWVEb2N1bWVu
dCA/ICptYWluRnJhbWVEb2N1bWVudCA6IGNvbnN0X2Nhc3Q8RG9jdW1lbnQmPigqdGhpcyk7Cisg
ICAgfQorCisgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gY29uc3RfY2FzdDxEb2N1bWVudCo+KHRo
aXMpOworICAgIHdoaWxlIChIVE1MRnJhbWVPd25lckVsZW1lbnQqIGVsZW1lbnQgPSBkb2N1bWVu
dC0+b3duZXJFbGVtZW50KCkpCisgICAgICAgIGRvY3VtZW50ID0gJmVsZW1lbnQtPmRvY3VtZW50
KCk7CisgICAgcmV0dXJuICpkb2N1bWVudDsKK30KKworRXhjZXB0aW9uT3I8UmVmPEF0dHI+PiBE
b2N1bWVudDo6Y3JlYXRlQXR0cmlidXRlKGNvbnN0IFN0cmluZyYgbG9jYWxOYW1lKQoreworICAg
IGlmICghaXNWYWxpZE5hbWUobG9jYWxOYW1lKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7
IEludmFsaWRDaGFyYWN0ZXJFcnJvciB9OworICAgIHJldHVybiBBdHRyOjpjcmVhdGUoKnRoaXMs
IFF1YWxpZmllZE5hbWUgeyBudWxsQXRvbSgpLCBpc0hUTUxEb2N1bWVudCgpID8gbG9jYWxOYW1l
LmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCkgOiBsb2NhbE5hbWUsIG51bGxBdG9tKCkgfSwgZW1w
dHlTdHJpbmcoKSk7Cit9CisKK0V4Y2VwdGlvbk9yPFJlZjxBdHRyPj4gRG9jdW1lbnQ6OmNyZWF0
ZUF0dHJpYnV0ZU5TKGNvbnN0IEF0b21TdHJpbmcmIG5hbWVzcGFjZVVSSSwgY29uc3QgU3RyaW5n
JiBxdWFsaWZpZWROYW1lLCBib29sIHNob3VsZElnbm9yZU5hbWVzcGFjZUNoZWNrcykKK3sKKyAg
ICBhdXRvIHBhcnNlUmVzdWx0ID0gcGFyc2VRdWFsaWZpZWROYW1lKG5hbWVzcGFjZVVSSSwgcXVh
bGlmaWVkTmFtZSk7CisgICAgaWYgKHBhcnNlUmVzdWx0Lmhhc0V4Y2VwdGlvbigpKQorICAgICAg
ICByZXR1cm4gcGFyc2VSZXN1bHQucmVsZWFzZUV4Y2VwdGlvbigpOworICAgIFF1YWxpZmllZE5h
bWUgcGFyc2VkTmFtZSB7IHBhcnNlUmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpIH07CisgICAg
aWYgKCFzaG91bGRJZ25vcmVOYW1lc3BhY2VDaGVja3MgJiYgIWhhc1ZhbGlkTmFtZXNwYWNlRm9y
QXR0cmlidXRlcyhwYXJzZWROYW1lKSkKKyAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IE5hbWVz
cGFjZUVycm9yIH07CisgICAgcmV0dXJuIEF0dHI6OmNyZWF0ZSgqdGhpcywgcGFyc2VkTmFtZSwg
ZW1wdHlTdHJpbmcoKSk7Cit9CisKK2NvbnN0IFNWR0RvY3VtZW50RXh0ZW5zaW9ucyogRG9jdW1l
bnQ6OnN2Z0V4dGVuc2lvbnMoKQoreworICAgIHJldHVybiBtX3N2Z0V4dGVuc2lvbnMuZ2V0KCk7
Cit9CisKK1NWR0RvY3VtZW50RXh0ZW5zaW9ucyYgRG9jdW1lbnQ6OmFjY2Vzc1NWR0V4dGVuc2lv
bnMoKQoreworICAgIGlmICghbV9zdmdFeHRlbnNpb25zKQorICAgICAgICBtX3N2Z0V4dGVuc2lv
bnMgPSBtYWtlVW5pcXVlPFNWR0RvY3VtZW50RXh0ZW5zaW9ucz4oKnRoaXMpOworICAgIHJldHVy
biAqbV9zdmdFeHRlbnNpb25zOworfQorCitib29sIERvY3VtZW50OjpoYXNTVkdSb290Tm9kZSgp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGRvY3VtZW50RWxlbWVudCgpICYmIGRvY3VtZW50RWxlbWVu
dCgpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjpzdmdUYWcpOworfQorCit0ZW1wbGF0ZSA8Q29sbGVj
dGlvblR5cGUgY29sbGVjdGlvblR5cGU+CitSZWY8SFRNTENvbGxlY3Rpb24+IERvY3VtZW50Ojpl
bnN1cmVDYWNoZWRDb2xsZWN0aW9uKCkKK3sKKyAgICByZXR1cm4gZW5zdXJlUmFyZURhdGEoKS5l
bnN1cmVOb2RlTGlzdHMoKS5hZGRDYWNoZWRDb2xsZWN0aW9uPEdlbmVyaWNDYWNoZWRIVE1MQ29s
bGVjdGlvbjxDb2xsZWN0aW9uVHlwZVRyYWl0czxjb2xsZWN0aW9uVHlwZT46OnRyYXZlcnNhbFR5
cGU+PigqdGhpcywgY29sbGVjdGlvblR5cGUpOworfQorCitSZWY8SFRNTENvbGxlY3Rpb24+IERv
Y3VtZW50OjppbWFnZXMoKQoreworICAgIHJldHVybiBlbnN1cmVDYWNoZWRDb2xsZWN0aW9uPERv
Y0ltYWdlcz4oKTsKK30KKworUmVmPEhUTUxDb2xsZWN0aW9uPiBEb2N1bWVudDo6YXBwbGV0cygp
Cit7CisgICAgcmV0dXJuIGVuc3VyZUNhY2hlZENvbGxlY3Rpb248RG9jQXBwbGV0cz4oKTsKK30K
KworUmVmPEhUTUxDb2xsZWN0aW9uPiBEb2N1bWVudDo6ZW1iZWRzKCkKK3sKKyAgICByZXR1cm4g
ZW5zdXJlQ2FjaGVkQ29sbGVjdGlvbjxEb2NFbWJlZHM+KCk7Cit9CisKK1JlZjxIVE1MQ29sbGVj
dGlvbj4gRG9jdW1lbnQ6OnBsdWdpbnMoKQoreworICAgIC8vIFRoaXMgaXMgYW4gYWxpYXMgZm9y
IGVtYmVkcygpIHJlcXVpcmVkIGZvciB0aGUgSlMgRE9NIGJpbmRpbmdzLgorICAgIHJldHVybiBl
bnN1cmVDYWNoZWRDb2xsZWN0aW9uPERvY0VtYmVkcz4oKTsKK30KKworUmVmPEhUTUxDb2xsZWN0
aW9uPiBEb2N1bWVudDo6c2NyaXB0cygpCit7CisgICAgcmV0dXJuIGVuc3VyZUNhY2hlZENvbGxl
Y3Rpb248RG9jU2NyaXB0cz4oKTsKK30KKworUmVmPEhUTUxDb2xsZWN0aW9uPiBEb2N1bWVudDo6
bGlua3MoKQoreworICAgIHJldHVybiBlbnN1cmVDYWNoZWRDb2xsZWN0aW9uPERvY0xpbmtzPigp
OworfQorCitSZWY8SFRNTENvbGxlY3Rpb24+IERvY3VtZW50Ojpmb3JtcygpCit7CisgICAgcmV0
dXJuIGVuc3VyZUNhY2hlZENvbGxlY3Rpb248RG9jRm9ybXM+KCk7Cit9CisKK1JlZjxIVE1MQ29s
bGVjdGlvbj4gRG9jdW1lbnQ6OmFuY2hvcnMoKQoreworICAgIHJldHVybiBlbnN1cmVDYWNoZWRD
b2xsZWN0aW9uPERvY0FuY2hvcnM+KCk7Cit9CisKK1JlZjxIVE1MQ29sbGVjdGlvbj4gRG9jdW1l
bnQ6OmFsbCgpCit7CisgICAgcmV0dXJuIGVuc3VyZVJhcmVEYXRhKCkuZW5zdXJlTm9kZUxpc3Rz
KCkuYWRkQ2FjaGVkQ29sbGVjdGlvbjxIVE1MQWxsQ29sbGVjdGlvbj4oKnRoaXMsIERvY0FsbCk7
Cit9CisKK1JlZjxIVE1MQ29sbGVjdGlvbj4gRG9jdW1lbnQ6OmFsbEZpbHRlcmVkQnlOYW1lKGNv
bnN0IEF0b21TdHJpbmcmIG5hbWUpCit7CisgICAgcmV0dXJuIGVuc3VyZVJhcmVEYXRhKCkuZW5z
dXJlTm9kZUxpc3RzKCkuYWRkQ2FjaGVkQ29sbGVjdGlvbjxIVE1MQWxsTmFtZWRTdWJDb2xsZWN0
aW9uPigqdGhpcywgRG9jdW1lbnRBbGxOYW1lZEl0ZW1zLCBuYW1lKTsKK30KKworUmVmPEhUTUxD
b2xsZWN0aW9uPiBEb2N1bWVudDo6d2luZG93TmFtZWRJdGVtcyhjb25zdCBBdG9tU3RyaW5nJiBu
YW1lKQoreworICAgIHJldHVybiBlbnN1cmVSYXJlRGF0YSgpLmVuc3VyZU5vZGVMaXN0cygpLmFk
ZENhY2hlZENvbGxlY3Rpb248V2luZG93TmFtZUNvbGxlY3Rpb24+KCp0aGlzLCBXaW5kb3dOYW1l
ZEl0ZW1zLCBuYW1lKTsKK30KKworUmVmPEhUTUxDb2xsZWN0aW9uPiBEb2N1bWVudDo6ZG9jdW1l
bnROYW1lZEl0ZW1zKGNvbnN0IEF0b21TdHJpbmcmIG5hbWUpCit7CisgICAgcmV0dXJuIGVuc3Vy
ZVJhcmVEYXRhKCkuZW5zdXJlTm9kZUxpc3RzKCkuYWRkQ2FjaGVkQ29sbGVjdGlvbjxEb2N1bWVu
dE5hbWVDb2xsZWN0aW9uPigqdGhpcywgRG9jdW1lbnROYW1lZEl0ZW1zLCBuYW1lKTsKK30KKwor
dm9pZCBEb2N1bWVudDo6ZmluaXNoZWRQYXJzaW5nKCkKK3sKKyAgICBBU1NFUlQoIXNjcmlwdGFi
bGVEb2N1bWVudFBhcnNlcigpIHx8ICFtX3BhcnNlci0+aXNQYXJzaW5nKCkpOworICAgIEFTU0VS
VCghc2NyaXB0YWJsZURvY3VtZW50UGFyc2VyKCkgfHwgbV9yZWFkeVN0YXRlICE9IExvYWRpbmcp
OworICAgIHNldFBhcnNpbmcoZmFsc2UpOworCisgICAgUmVmPERvY3VtZW50PiBwcm90ZWN0ZWRU
aGlzKCp0aGlzKTsKKworICAgIHNjcmlwdFJ1bm5lcigpLmRvY3VtZW50RmluaXNoZWRQYXJzaW5n
KCk7CisKKyAgICBpZiAoIW1fZXZlbnRUaW1pbmcuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQp
IHsKKyAgICAgICAgYXV0byBub3cgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKKyAgICAgICAgbV9l
dmVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRTdGFydCA9IG5vdzsKKyAgICAgICAgaWYg
KGF1dG8qIGV2ZW50VGltaW5nID0gZG9jdW1lbnRFdmVudFRpbWluZ0Zyb21OYXZpZ2F0aW9uVGlt
aW5nKCkpCisgICAgICAgICAgICBldmVudFRpbWluZy0+ZG9tQ29udGVudExvYWRlZEV2ZW50U3Rh
cnQgPSBub3c7CisgICAgfQorCisgICAgLy8gRklYTUU6IFNjaGVkdWxlIGEgdGFzayB0byBmaXJl
IERPTUNvbnRlbnRMb2FkZWQgZXZlbnQgaW5zdGVhZC4gU2VlIHdlYmtpdC5vcmcvYi84MjkzMQor
ICAgIGV2ZW50TG9vcCgpLnBlcmZvcm1NaWNyb3Rhc2tDaGVja3BvaW50KCk7CisgICAgZGlzcGF0
Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5ET01Db250ZW50TG9hZGVkRXZlbnQs
IEV2ZW50OjpDYW5CdWJibGU6OlllcywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6Tm8pKTsKKworICAg
IGlmICghbV9ldmVudFRpbWluZy5kb21Db250ZW50TG9hZGVkRXZlbnRFbmQpIHsKKyAgICAgICAg
YXV0byBub3cgPSBNb25vdG9uaWNUaW1lOjpub3coKTsKKyAgICAgICAgbV9ldmVudFRpbWluZy5k
b21Db250ZW50TG9hZGVkRXZlbnRFbmQgPSBub3c7CisgICAgICAgIGlmIChhdXRvKiBldmVudFRp
bWluZyA9IGRvY3VtZW50RXZlbnRUaW1pbmdGcm9tTmF2aWdhdGlvblRpbWluZygpKQorICAgICAg
ICAgICAgZXZlbnRUaW1pbmctPmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCA9IG5vdzsKKyAgICB9
CisKKyAgICBpZiAoUmVmUHRyPEZyYW1lPiBmcmFtZSA9IHRoaXMtPmZyYW1lKCkpIHsKKyNpZiBF
TkFCTEUoWFNMVCkKKyAgICAgICAgYXBwbHlQZW5kaW5nWFNMVHJhbnNmb3Jtc05vd0lmU2NoZWR1
bGVkKCk7CisjZW5kaWYKKworICAgICAgICAvLyBGcmFtZUxvYWRlcjo6ZmluaXNoZWRQYXJzaW5n
KCkgbWlnaHQgZW5kIHVwIGNhbGxpbmcgRG9jdW1lbnQ6OmltcGxpY2l0Q2xvc2UoKSBpZiBhbGwK
KyAgICAgICAgLy8gcmVzb3VyY2UgbG9hZHMgYXJlIGNvbXBsZXRlLiBIVE1MT2JqZWN0RWxlbWVu
dHMgY2FuIHN0YXJ0IGxvYWRpbmcgdGhlaXIgcmVzb3VyY2VzIGZyb20KKyAgICAgICAgLy8gcG9z
dCBhdHRhY2ggY2FsbGJhY2tzIHRyaWdnZXJlZCBieSByZXNvbHZlU3R5bGUoKS4gVGhpcyBtZWFu
cyBpZiB3ZSBwYXJzZSBvdXQgYW4gPG9iamVjdD4KKyAgICAgICAgLy8gdGFnIGFuZCB0aGVuIHJl
YWNoIHRoZSBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhvdXQgdXBkYXRpbmcgc3R5bGVzLCB3ZSBt
aWdodCBub3QgaGF2ZSB5ZXQKKyAgICAgICAgLy8gc3RhcnRlZCB0aGUgcmVzb3VyY2UgbG9hZCBh
bmQgbWlnaHQgZmlyZSB0aGUgd2luZG93IGxvYWQgZXZlbnQgdG9vIGVhcmx5LiBUbyBhdm9pZCB0
aGlzCisgICAgICAgIC8vIHdlIGZvcmNlIHRoZSBzdHlsZXMgdG8gYmUgdXAgdG8gZGF0ZSBiZWZv
cmUgY2FsbGluZyBGcmFtZUxvYWRlcjo6ZmluaXNoZWRQYXJzaW5nKCkuCisgICAgICAgIC8vIFNl
ZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY4NjQgc3RhcnRpbmcg
YXJvdW5kIGNvbW1lbnQgMzUuCisgICAgICAgIHVwZGF0ZVN0eWxlSWZOZWVkZWQoKTsKKworICAg
ICAgICBmcmFtZS0+bG9hZGVyKCkuZmluaXNoZWRQYXJzaW5nKCk7CisgICAgICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZG9tQ29udGVudExvYWRlZEV2ZW50RmlyZWQoKmZyYW1lKTsKKyAg
ICB9CisKKyAgICAvLyBTY2hlZHVsZSBkcm9wcGluZyBvZiB0aGUgRG9jdW1lbnRTaGFyZWRPYmpl
Y3RQb29sLiBXZSBrZWVwIGl0IGFsaXZlIGZvciBhIHdoaWxlIGFmdGVyIHBhcnNpbmcgZmluaXNo
ZXMKKyAgICAvLyBzbyB0aGF0IGR5bmFtaWNhbGx5IGluc2VydGVkIGNvbnRlbnQgY2FuIGFsc28g
YmVuZWZpdCBmcm9tIHNoYXJpbmcgb3B0aW1pemF0aW9ucy4KKyAgICAvLyBOb3RlIHRoYXQgd2Ug
ZG9uJ3QgcmVmcmVzaCB0aGUgdGltZXIgb24gcG9vbCBhY2Nlc3Mgc2luY2UgdGhhdCBjb3VsZCBs
ZWFkIHRvIGh1Z2UgY2FjaGVzIGJlaW5nIGtlcHQKKyAgICAvLyBhbGl2ZSBpbmRlZmluaXRlbHkg
Ynkgc29tZXRoaW5nIGlubm9jdW91cyBsaWtlIEpTIHNldHRpbmcgLmlubmVySFRNTCByZXBlYXRl
ZGx5IG9uIGEgdGltZXIuCisgICAgc3RhdGljIGNvbnN0IFNlY29uZHMgdGltZVRvS2VlcFNoYXJl
ZE9iamVjdFBvb2xBbGl2ZUFmdGVyUGFyc2luZ0ZpbmlzaGVkIHsgMTBfcyB9OworICAgIG1fc2hh
cmVkT2JqZWN0UG9vbENsZWFyVGltZXIuc3RhcnRPbmVTaG90KHRpbWVUb0tlZXBTaGFyZWRPYmpl
Y3RQb29sQWxpdmVBZnRlclBhcnNpbmdGaW5pc2hlZCk7CisKKyAgICAvLyBQYXJzZXIgc2hvdWxk
IGhhdmUgcGlja2VkIHVwIGFsbCBzcGVjdWxhdGl2ZSBwcmVsb2FkcyBieSBub3cKKyAgICBtX2Nh
Y2hlZFJlc291cmNlTG9hZGVyLT5jbGVhclByZWxvYWRzKENhY2hlZFJlc291cmNlTG9hZGVyOjpD
bGVhclByZWxvYWRzTW9kZTo6Q2xlYXJTcGVjdWxhdGl2ZVByZWxvYWRzKTsKKworI2lmIEVOQUJM
RShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5zZXJ2aWNlV29ya2VyRW5hYmxlZCgpKSB7CisgICAgICAgIC8vIFN0b3AgcXVl
dWluZyBzZXJ2aWNlIHdvcmtlciBjbGllbnQgbWVzc2FnZXMgbm93IHRoYXQgdGhlIERPTUNvbnRl
bnRMb2FkZWQgZXZlbnQgaGFzIGJlZW4gZmlyZWQuCisgICAgICAgIGlmIChSZWZQdHIgc2Vydmlj
ZVdvcmtlckNvbnRhaW5lciA9IHRoaXMtPnNlcnZpY2VXb3JrZXJDb250YWluZXIoKSkKKyAgICAg
ICAgICAgIHNlcnZpY2VXb3JrZXJDb250YWluZXItPnN0YXJ0TWVzc2FnZXMoKTsKKyAgICB9Cisj
ZW5kaWYKKyAgICAKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMpCisgICAgaWYgKGF1dG8qIGFw
cEhpZ2hsaWdodFN0b3JhZ2UgPSBhcHBIaWdobGlnaHRTdG9yYWdlSWZFeGlzdHMoKSkKKyAgICAg
ICAgYXBwSGlnaGxpZ2h0U3RvcmFnZS0+cmVzdG9yZVVucmVzdG9yZWRBcHBIaWdobGlnaHRzKCk7
CisjZW5kaWYKK30KKwordm9pZCBEb2N1bWVudDo6Y2xlYXJTaGFyZWRPYmplY3RQb29sKCkKK3sK
KyAgICBtX3NoYXJlZE9iamVjdFBvb2wgPSBudWxscHRyOworICAgIG1fc2hhcmVkT2JqZWN0UG9v
bENsZWFyVGltZXIuc3RvcCgpOworfQorCisjaWYgRU5BQkxFKFRFTEVQSE9ORV9OVU1CRVJfREVU
RUNUSU9OKQorCisvLyBGSVhNRTogRmluZCBhIGJldHRlciBwbGFjZSBmb3IgdGhpcyBjb2RlLgor
Citib29sIERvY3VtZW50Ojppc1RlbGVwaG9uZU51bWJlclBhcnNpbmdFbmFibGVkKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gc2V0dGluZ3MoKS50ZWxlcGhvbmVOdW1iZXJQYXJzaW5nRW5hYmxlZCgp
ICYmIG1faXNUZWxlcGhvbmVOdW1iZXJQYXJzaW5nQWxsb3dlZDsKK30KKworYm9vbCBEb2N1bWVu
dDo6aXNUZWxlcGhvbmVOdW1iZXJQYXJzaW5nQWxsb3dlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1faXNUZWxlcGhvbmVOdW1iZXJQYXJzaW5nQWxsb3dlZDsKK30KKworI2VuZGlmCisKK1N0cmlu
ZyBEb2N1bWVudDo6b3JpZ2luSWRlbnRpZmllckZvclBhc3RlYm9hcmQoKSBjb25zdAoreworICAg
IGF1dG8gb3JpZ2luID0gc2VjdXJpdHlPcmlnaW4oKS50b1N0cmluZygpOworICAgIGlmIChvcmln
aW4gIT0gIm51bGwiKQorICAgICAgICByZXR1cm4gb3JpZ2luOworICAgIGlmICghbV91bmlxdWVJ
ZGVudGlmaWVyKQorICAgICAgICBtX3VuaXF1ZUlkZW50aWZpZXIgPSAibnVsbDoiICsgY3JlYXRl
Q2Fub25pY2FsVVVJRFN0cmluZygpOworICAgIHJldHVybiBtX3VuaXF1ZUlkZW50aWZpZXI7Cit9
CisKK0V4Y2VwdGlvbk9yPFJlZjxYUGF0aEV4cHJlc3Npb24+PiBEb2N1bWVudDo6Y3JlYXRlRXhw
cmVzc2lvbihjb25zdCBTdHJpbmcmIGV4cHJlc3Npb24sIFJlZlB0cjxYUGF0aE5TUmVzb2x2ZXI+
JiYgcmVzb2x2ZXIpCit7CisgICAgaWYgKCFtX3hwYXRoRXZhbHVhdG9yKQorICAgICAgICBtX3hw
YXRoRXZhbHVhdG9yID0gWFBhdGhFdmFsdWF0b3I6OmNyZWF0ZSgpOworICAgIHJldHVybiBtX3hw
YXRoRXZhbHVhdG9yLT5jcmVhdGVFeHByZXNzaW9uKGV4cHJlc3Npb24sIFdURk1vdmUocmVzb2x2
ZXIpKTsKK30KKworUmVmPFhQYXRoTlNSZXNvbHZlcj4gRG9jdW1lbnQ6OmNyZWF0ZU5TUmVzb2x2
ZXIoTm9kZSYgbm9kZVJlc29sdmVyKQoreworICAgIGlmICghbV94cGF0aEV2YWx1YXRvcikKKyAg
ICAgICAgbV94cGF0aEV2YWx1YXRvciA9IFhQYXRoRXZhbHVhdG9yOjpjcmVhdGUoKTsKKyAgICBy
ZXR1cm4gbV94cGF0aEV2YWx1YXRvci0+Y3JlYXRlTlNSZXNvbHZlcihub2RlUmVzb2x2ZXIpOwor
fQorCitFeGNlcHRpb25PcjxSZWY8WFBhdGhSZXN1bHQ+PiBEb2N1bWVudDo6ZXZhbHVhdGUoY29u
c3QgU3RyaW5nJiBleHByZXNzaW9uLCBOb2RlJiBjb250ZXh0Tm9kZSwgUmVmUHRyPFhQYXRoTlNS
ZXNvbHZlcj4mJiByZXNvbHZlciwgdW5zaWduZWQgc2hvcnQgdHlwZSwgWFBhdGhSZXN1bHQqIHJl
c3VsdCkKK3sKKyAgICBpZiAoIW1feHBhdGhFdmFsdWF0b3IpCisgICAgICAgIG1feHBhdGhFdmFs
dWF0b3IgPSBYUGF0aEV2YWx1YXRvcjo6Y3JlYXRlKCk7CisgICAgcmV0dXJuIG1feHBhdGhFdmFs
dWF0b3ItPmV2YWx1YXRlKGV4cHJlc3Npb24sIGNvbnRleHROb2RlLCBXVEZNb3ZlKHJlc29sdmVy
KSwgdHlwZSwgcmVzdWx0KTsKK30KKwordm9pZCBEb2N1bWVudDo6aW5pdFNlY3VyaXR5Q29udGV4
dCgpCit7CisgICAgaWYgKGhhdmVJbml0aWFsaXplZFNlY3VyaXR5T3JpZ2luKCkpIHsKKyAgICAg
ICAgQVNTRVJUKFNlY3VyaXR5Q29udGV4dDo6c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBpZiAoIW1fZnJhbWUpIHsKKyAgICAgICAgLy8gTm8gc291cmNl
IGZvciBhIHNlY3VyaXR5IGNvbnRleHQuCisgICAgICAgIC8vIFRoaXMgY2FuIG9jY3VyIHZpYSBk
b2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgpLgorICAgICAgICBzZXRDb29r
aWVVUkwoVVJMKHsgfSwgZW1wdHlTdHJpbmcoKSkpOworICAgICAgICBzZXRTZWN1cml0eU9yaWdp
blBvbGljeShTZWN1cml0eU9yaWdpblBvbGljeTo6Y3JlYXRlKFNlY3VyaXR5T3JpZ2luOjpjcmVh
dGVVbmlxdWUoKSkpOworICAgICAgICBzZXRDb250ZW50U2VjdXJpdHlQb2xpY3kobWFrZVVuaXF1
ZTxDb250ZW50U2VjdXJpdHlQb2xpY3k+KFVSTCB7IHsgfSwgZW1wdHlTdHJpbmcoKSB9LCAqdGhp
cykpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gSW4gdGhlIGNvbW1vbiBjYXNl
LCBjcmVhdGUgdGhlIHNlY3VyaXR5IGNvbnRleHQgZnJvbSB0aGUgY3VycmVudGx5CisgICAgLy8g
bG9hZGluZyBVUkwgd2l0aCBhIGZyZXNoIGNvbnRlbnQgc2VjdXJpdHkgcG9saWN5LgorICAgIHNl
dENvb2tpZVVSTChtX3VybCk7CisgICAgZW5mb3JjZVNhbmRib3hGbGFncyhtX2ZyYW1lLT5sb2Fk
ZXIoKS5lZmZlY3RpdmVTYW5kYm94RmxhZ3MoKSk7CisgICAgc2V0UmVmZXJyZXJQb2xpY3kobV9m
cmFtZS0+bG9hZGVyKCkuZWZmZWN0aXZlUmVmZXJyZXJQb2xpY3koKSk7CisKKyAgICBpZiAoc2hv
dWxkRW5mb3JjZUNvbnRlbnREaXNwb3NpdGlvbkF0dGFjaG1lbnRTYW5kYm94KCkpCisgICAgICAg
IGFwcGx5Q29udGVudERpc3Bvc2l0aW9uQXR0YWNobWVudFNhbmRib3goKTsKKworICAgIFJlZlB0
ciBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7Cisg
ICAgYm9vbCBpc1NlY3VyaXR5T3JpZ2luVW5pcXVlID0gaXNTYW5kYm94ZWQoU2FuZGJveE9yaWdp
bik7CisgICAgaWYgKCFpc1NlY3VyaXR5T3JpZ2luVW5pcXVlKQorICAgICAgICBpc1NlY3VyaXR5
T3JpZ2luVW5pcXVlID0gZG9jdW1lbnRMb2FkZXIgJiYgZG9jdW1lbnRMb2FkZXItPnJlc3BvbnNl
KCkudGFpbnRpbmcoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpUYWludGluZzo6T3BhcXVlOworCisg
ICAgc2V0U2VjdXJpdHlPcmlnaW5Qb2xpY3koU2VjdXJpdHlPcmlnaW5Qb2xpY3k6OmNyZWF0ZShp
c1NlY3VyaXR5T3JpZ2luVW5pcXVlID8gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZVVuaXF1ZSgpIDog
U2VjdXJpdHlPcmlnaW46OmNyZWF0ZShtX3VybCkpKTsKKyAgICBzZXRDb250ZW50U2VjdXJpdHlQ
b2xpY3kobWFrZVVuaXF1ZTxDb250ZW50U2VjdXJpdHlQb2xpY3k+KFVSTCB7IG1fdXJsIH0sICp0
aGlzKSk7CisKKyAgICBTdHJpbmcgb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kgPSBtX2Zy
YW1lLT5sb2FkZXIoKS5jbGllbnQoKS5vdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSgpOwor
ICAgIGlmICghb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3kuaXNOdWxsKCkpCisgICAgICAg
IGNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5kaWRSZWNlaXZlSGVhZGVyKG92ZXJyaWRlQ29udGVu
dFNlY3VyaXR5UG9saWN5LCBDb250ZW50U2VjdXJpdHlQb2xpY3lIZWFkZXJUeXBlOjpFbmZvcmNl
LCBDb250ZW50U2VjdXJpdHlQb2xpY3k6OlBvbGljeUZyb206OkFQSSwgcmVmZXJyZXIoKSwgZG9j
dW1lbnRMb2FkZXIgPyBkb2N1bWVudExvYWRlci0+cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgp
IDogMCk7CisKKyNpZiBVU0UoUVVJQ0tfTE9PSykKKyAgICBpZiAoc2hvdWxkRW5mb3JjZVF1aWNr
TG9va1NhbmRib3goKSkKKyAgICAgICAgYXBwbHlRdWlja0xvb2tTYW5kYm94KCk7CisjZW5kaWYK
KworICAgIGlmIChzaG91bGRFbmZvcmNlSFRUUDA5U2FuZGJveCgpKSB7CisgICAgICAgIGF1dG8g
bWVzc2FnZSA9IG1ha2VTdHJpbmcoIlNhbmRib3hpbmcgJyIsIG1fdXJsLnN0cmluZ0NlbnRlckVs
bGlwc2l6ZWRUb0xlbmd0aCgpLCAiJyBiZWNhdXNlIGl0IGlzIHVzaW5nIEhUVFAvMC45LiIpOwor
ICAgICAgICBhZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2Fn
ZUxldmVsOjpFcnJvciwgbWVzc2FnZSk7CisgICAgICAgIGVuZm9yY2VTYW5kYm94RmxhZ3MoU2Fu
ZGJveFNjcmlwdHMgfCBTYW5kYm94UGx1Z2lucyk7CisgICAgfQorCisgICAgaWYgKHNldHRpbmdz
KCkubmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmsoKSkKKyAgICAgICAgc2VjdXJp
dHlPcmlnaW4oKS5ncmFudFN0b3JhZ2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyaygpOworICAgIGlm
ICghc2V0dGluZ3MoKS53ZWJTZWN1cml0eUVuYWJsZWQoKSkgeworICAgICAgICAvLyBXZWIgc2Vj
dXJpdHkgaXMgdHVybmVkIG9mZi4gV2Ugc2hvdWxkIGxldCB0aGlzIGRvY3VtZW50IGFjY2VzcyBl
dmVyeSBvdGhlciBkb2N1bWVudC4gVGhpcyBpcyB1c2VkIHByaW1hcnkgYnkgdGVzdGluZworICAg
ICAgICAvLyBoYXJuZXNzZXMgZm9yIHdlYiBzaXRlcy4KKyAgICAgICAgc2VjdXJpdHlPcmlnaW4o
KS5ncmFudFVuaXZlcnNhbEFjY2VzcygpOworICAgIH0gZWxzZSBpZiAoc2VjdXJpdHlPcmlnaW4o
KS5pc0xvY2FsKCkpIHsKKyAgICAgICAgaWYgKHNldHRpbmdzKCkuYWxsb3dVbml2ZXJzYWxBY2Nl
c3NGcm9tRmlsZVVSTHMoKSB8fCBtX2ZyYW1lLT5sb2FkZXIoKS5jbGllbnQoKS5zaG91bGRGb3Jj
ZVVuaXZlcnNhbEFjY2Vzc0Zyb21Mb2NhbFVSTChtX3VybCkpIHsKKyAgICAgICAgICAgIC8vIFNv
bWUgY2xpZW50cyB3YW50IGxvY2FsIFVSTHMgdG8gaGF2ZSB1bml2ZXJzYWwgYWNjZXNzLCBidXQg
dGhhdCBzZXR0aW5nIGlzIGRhbmdlcm91cyBmb3Igb3RoZXIgY2xpZW50cy4KKyAgICAgICAgICAg
IHNlY3VyaXR5T3JpZ2luKCkuZ3JhbnRVbml2ZXJzYWxBY2Nlc3MoKTsKKyAgICAgICAgfSBlbHNl
IGlmICghc2V0dGluZ3MoKS5hbGxvd0ZpbGVBY2Nlc3NGcm9tRmlsZVVSTHMoKSkgeworICAgICAg
ICAgICAgLy8gU29tZSBjbGllbnRzIHdhbnQgbG9jYWwgVVJMcyB0byBoYXZlIGV2ZW4gdGlnaHRl
ciByZXN0cmljdGlvbnMgYnkgZGVmYXVsdCwgYW5kIG5vdCBiZSBhYmxlIHRvIGFjY2VzcyBvdGhl
ciBsb2NhbCBmaWxlcy4KKyAgICAgICAgICAgIC8vIEZJWE1FIDgxNTc4OiBUaGUgbmFtaW5nIG9m
IHRoaXMgaXMgY29uZnVzaW5nLiBGaWxlcyB3aXRoIHJlc3RyaWN0ZWQgYWNjZXNzIHRvIG90aGVy
IGxvY2FsIGZpbGVzCisgICAgICAgICAgICAvLyBzdGlsbCBjYW4gaGF2ZSBvdGhlciBwcml2aWxl
Z2VzIHRoYXQgY2FuIGJlIHJlbWVtYmVyZWQsIHRoZXJlYnkgbm90IG1ha2luZyB0aGVtIHVuaXF1
ZSBvcmlnaW5zLgorICAgICAgICAgICAgc2VjdXJpdHlPcmlnaW4oKS5zZXRFbmZvcmNlc0ZpbGVQ
YXRoU2VwYXJhdGlvbigpOworICAgICAgICB9CisgICAgfQorICAgIHNlY3VyaXR5T3JpZ2luKCku
c2V0U3RvcmFnZUJsb2NraW5nUG9saWN5KHNldHRpbmdzKCkuc3RvcmFnZUJsb2NraW5nUG9saWN5
KCkpOworCisgICAgUmVmUHRyIHBhcmVudERvY3VtZW50ID0gb3duZXJFbGVtZW50KCkgPyAmb3du
ZXJFbGVtZW50KCktPmRvY3VtZW50KCkgOiBudWxscHRyOworICAgIGlmIChwYXJlbnREb2N1bWVu
dCAmJiBtX2ZyYW1lLT5sb2FkZXIoKS5zaG91bGRUcmVhdFVSTEFzU3JjZG9jRG9jdW1lbnQodXJs
KCkpKSB7CisgICAgICAgIG1faXNTcmNkb2NEb2N1bWVudCA9IHRydWU7CisgICAgICAgIHNldEJh
c2VVUkxPdmVycmlkZShwYXJlbnREb2N1bWVudC0+YmFzZVVSTCgpKTsKKyAgICB9CisgICAgaWYg
KHBhcmVudERvY3VtZW50KQorICAgICAgICBzZXRTdHJpY3RNaXhlZENvbnRlbnRNb2RlKHBhcmVu
dERvY3VtZW50LT5pc1N0cmljdE1peGVkQ29udGVudE1vZGUoKSk7CisKKyAgICBpZiAoIVNlY3Vy
aXR5UG9saWN5OjpzaG91bGRJbmhlcml0U2VjdXJpdHlPcmlnaW5Gcm9tT3duZXIobV91cmwpKQor
ICAgICAgICByZXR1cm47CisKKyAgICAvLyBJZiB3ZSBkbyBub3Qgb2J0YWluIGEgbWVhbmluZ2Z1
bCBvcmlnaW4gZnJvbSB0aGUgVVJMLCB0aGVuIHdlIHRyeSB0bworICAgIC8vIGZpbmQgb25lIHZp
YSB0aGUgZnJhbWUgaGllcmFyY2h5LgorICAgIFJlZlB0ciBwYXJlbnRGcmFtZSA9IG1fZnJhbWUt
PnRyZWUoKS5wYXJlbnQoKTsKKyAgICBSZWZQdHIgb3BlbmVyRnJhbWUgPSBtX2ZyYW1lLT5sb2Fk
ZXIoKS5vcGVuZXIoKTsKKworICAgIFJlZlB0ciBvd25lckZyYW1lID0gcGFyZW50RnJhbWU7Cisg
ICAgaWYgKCFvd25lckZyYW1lKQorICAgICAgICBvd25lckZyYW1lID0gb3BlbmVyRnJhbWU7CisK
KyAgICBpZiAoIW93bmVyRnJhbWUpIHsKKyAgICAgICAgZGlkRmFpbFRvSW5pdGlhbGl6ZVNlY3Vy
aXR5T3JpZ2luKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjb250ZW50U2VjdXJp
dHlQb2xpY3koKS0+Y29weVN0YXRlRnJvbShvd25lckZyYW1lLT5kb2N1bWVudCgpLT5jb250ZW50
U2VjdXJpdHlQb2xpY3koKSk7CisgICAgY29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZGF0ZVNv
dXJjZVNlbGYob3duZXJGcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSk7CisKKyAg
ICBzZXRDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5KG93bmVyRnJhbWUtPmRvY3VtZW50KCktPmNy
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3koKSk7CisKKyAgICAvLyBodHRwczovL2h0bWwuc3BlYy53
aGF0d2cub3JnL211bHRpcGFnZS9icm93c2Vycy5odG1sI2NyZWF0aW5nLWEtbmV3LWJyb3dzaW5n
LWNvbnRleHQgKFN0ZXAgMTIpCisgICAgLy8gSWYgY3JlYXRvciBpcyBub24tbnVsbCBhbmQgY3Jl
YXRvcidzIG9yaWdpbiBpcyBzYW1lIG9yaWdpbiB3aXRoIGNyZWF0b3IncyByZWxldmFudCBzZXR0
aW5ncyBvYmplY3QncyB0b3AtbGV2ZWwgb3JpZ2luLCB0aGVuIHNldCBjb29wCisgICAgLy8gdG8g
Y3JlYXRvcidzIGJyb3dzaW5nIGNvbnRleHQncyB0b3AtbGV2ZWwgYnJvd3NpbmcgY29udGV4dCdz
IGFjdGl2ZSBkb2N1bWVudCdzIGNyb3NzLW9yaWdpbiBvcGVuZXIgcG9saWN5LgorICAgIGlmICht
X2ZyYW1lLT5pc01haW5GcmFtZSgpICYmIG9wZW5lckZyYW1lICYmIG9wZW5lckZyYW1lLT5kb2N1
bWVudCgpICYmIG9wZW5lckZyYW1lLT5kb2N1bWVudCgpLT5pc1NhbWVPcmlnaW5Bc1RvcERvY3Vt
ZW50KCkpCisgICAgICAgIHNldENyb3NzT3JpZ2luT3BlbmVyUG9saWN5KG9wZW5lckZyYW1lLT5k
b2N1bWVudCgpLT5jcm9zc09yaWdpbk9wZW5lclBvbGljeSgpKTsKKworICAgIC8vIFBlciA8aHR0
cDovL3d3dy53My5vcmcvVFIvdXBncmFkZS1pbnNlY3VyZS1yZXF1ZXN0cy8+LCBuZXcgYnJvd3Np
bmcgY29udGV4dHMgbXVzdCBpbmhlcml0IGZyb20gYW4KKyAgICAvLyBvbmdvaW5nIHNldCBvZiB1
cGdyYWRlZCByZXF1ZXN0cy4gV2hlbiBvcGVuaW5nIGEgbmV3IGJyb3dzaW5nIGNvbnRleHQsIHdl
IG5lZWQgdG8gY2FwdHVyZSBpdHMKKyAgICAvLyBleGlzdGluZyB1cGdyYWRlIHJlcXVlc3QuIE5l
c3RlZCBicm93c2luZyBjb250ZXh0cyBhcmUgaGFuZGxlZCBkdXJpbmcgRG9jdW1lbnRXcml0ZXI6
OmJlZ2luLgorICAgIGlmIChSZWZQdHIgb3BlbmVyRG9jdW1lbnQgPSBvcGVuZXJGcmFtZSA/IG9w
ZW5lckZyYW1lLT5kb2N1bWVudCgpIDogbnVsbHB0cikKKyAgICAgICAgY29udGVudFNlY3VyaXR5
UG9saWN5KCktPmluaGVyaXRJbnNlY3VyZU5hdmlnYXRpb25SZXF1ZXN0c1RvVXBncmFkZUZyb21P
cGVuZXIoKm9wZW5lckRvY3VtZW50LT5jb250ZW50U2VjdXJpdHlQb2xpY3koKSk7CisKKyAgICBp
ZiAoaXNTYW5kYm94ZWQoU2FuZGJveE9yaWdpbikpIHsKKyAgICAgICAgLy8gSWYgd2UncmUgc3Vw
cG9zZWQgdG8gaW5oZXJpdCBvdXIgc2VjdXJpdHkgb3JpZ2luIGZyb20gb3VyIG93bmVyLAorICAg
ICAgICAvLyBidXQgd2UncmUgYWxzbyBzYW5kYm94ZWQsIHRoZSBvbmx5IHRoaW5nIHdlIGluaGVy
aXQgaXMgdGhlIGFiaWxpdHkKKyAgICAgICAgLy8gdG8gbG9hZCBsb2NhbCByZXNvdXJjZXMuIFRo
aXMgbGV0cyBhYm91dDpibGFuayBpZnJhbWVzIGluIGZpbGU6Ly8KKyAgICAgICAgLy8gVVJMIGRv
Y3VtZW50cyBsb2FkIGltYWdlcyBhbmQgb3RoZXIgcmVzb3VyY2VzIGZyb20gdGhlIGZpbGUgc3lz
dGVtLgorICAgICAgICBpZiAob3duZXJGcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4o
KS5jYW5Mb2FkTG9jYWxSZXNvdXJjZXMoKSkKKyAgICAgICAgICAgIHNlY3VyaXR5T3JpZ2luKCku
Z3JhbnRMb2FkTG9jYWxSZXNvdXJjZXMoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IHNldENvb2tpZVVSTChvd25lckZyYW1lLT5kb2N1bWVudCgpLT5jb29raWVVUkwoKSk7CisgICAg
Ly8gV2UgYWxpYXMgdGhlIFNlY3VyaXR5T3JpZ2lucyB0byBtYXRjaCBGaXJlZm94LCBzZWUgQnVn
IDE1MzEzCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1
MzEzCisgICAgc2V0U2VjdXJpdHlPcmlnaW5Qb2xpY3kob3duZXJGcmFtZS0+ZG9jdW1lbnQoKS0+
c2VjdXJpdHlPcmlnaW5Qb2xpY3koKSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmluaXRDb250ZW50
U2VjdXJpdHlQb2xpY3koKQoreworICAgIGlmICghbV9mcmFtZSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIFJlZlB0ciBwYXJlbnRGcmFtZSA9IG1fZnJhbWUtPnRyZWUoKS5wYXJlbnQoKTsKKyAgICBp
ZiAocGFyZW50RnJhbWUpCisgICAgICAgIGNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5jb3B5VXBn
cmFkZUluc2VjdXJlUmVxdWVzdFN0YXRlRnJvbSgqcGFyZW50RnJhbWUtPmRvY3VtZW50KCktPmNv
bnRlbnRTZWN1cml0eVBvbGljeSgpKTsKKworICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBzcGVj
aWFsIHBsdWdpbiBkb2N1bWVudCBsb2dpYy4gV2UgYXJlIHN0cmljdGVyIHRoYW4gdGhlIENTUCAz
IHNwZWMuIHdpdGggcmVnYXJkcyB0byBwbHVnaW5zOiB3ZSBwcmVmZXIgdG8KKyAgICAvLyBpbmhl
cml0IHRoZSBmdWxsIHBvbGljeSB1bmxlc3MgdGhlIHBsdWdpbiBkb2N1bWVudCBpcyBvcGVuZWQg
aW4gYSBuZXcgd2luZG93LiBUaGUgQ1NQIDMgc3BlYy4gaW1wbGllcyB0aGF0IG9ubHkgcGx1Z2lu
IGRvY3VtZW50cworICAgIC8vIGRlbGl2ZXJlZCB3aXRoIGEgbG9jYWwgc2NoZW1lIChlLmcuIGJs
b2IsIGZpbGUsIGRhdGEpIHNob3VsZCBpbmhlcml0IGEgcG9saWN5LgorICAgIGlmICghaXNQbHVn
aW5Eb2N1bWVudCgpKQorICAgICAgICByZXR1cm47CisgICAgUmVmUHRyIG9wZW5lckZyYW1lID0g
bV9mcmFtZS0+bG9hZGVyKCkub3BlbmVyKCk7CisgICAgYm9vbCBzaG91bGRJbmhlcnQgPSBwYXJl
bnRGcmFtZSB8fCAob3BlbmVyRnJhbWUgJiYgb3BlbmVyRnJhbWUtPmRvY3VtZW50KCktPnNlY3Vy
aXR5T3JpZ2luKCkuaXNTYW1lT3JpZ2luRG9tYWluKHNlY3VyaXR5T3JpZ2luKCkpKTsKKyAgICBp
ZiAoIXNob3VsZEluaGVydCkKKyAgICAgICAgcmV0dXJuOworICAgIHNldENvbnRlbnRTZWN1cml0
eVBvbGljeShtYWtlVW5pcXVlPENvbnRlbnRTZWN1cml0eVBvbGljeT4oVVJMIHsgbV91cmwgfSwg
KnRoaXMpKTsKKyAgICBpZiAob3BlbmVyRnJhbWUpCisgICAgICAgIGNvbnRlbnRTZWN1cml0eVBv
bGljeSgpLT5jcmVhdGVQb2xpY3lGb3JQbHVnaW5Eb2N1bWVudEZyb20oKm9wZW5lckZyYW1lLT5k
b2N1bWVudCgpLT5jb250ZW50U2VjdXJpdHlQb2xpY3koKSk7CisgICAgZWxzZQorICAgICAgICBj
b250ZW50U2VjdXJpdHlQb2xpY3koKS0+Y29weVN0YXRlRnJvbShwYXJlbnRGcmFtZS0+ZG9jdW1l
bnQoKS0+Y29udGVudFNlY3VyaXR5UG9saWN5KCkpOworfQorCisvLyBodHRwczovL2h0bWwuc3Bl
Yy53aGF0d2cub3JnLyN0aGUtcnVsZXMtZm9yLWNob29zaW5nLWEtYnJvd3NpbmctY29udGV4dC1n
aXZlbi1hLWJyb3dzaW5nLWNvbnRleHQtbmFtZSAoU3RlcCA4LjIpCitib29sIERvY3VtZW50Ojpz
aG91bGRGb3JjZU5vT3BlbmVyQmFzZWRPbkNPT1AoKSBjb25zdAoreworICAgIGlmICghc2V0dGlu
Z3MoKS5jcm9zc09yaWdpbk9wZW5lclBvbGljeUVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgYXV0byBDT09QVmFsdWUgPSB0b3BEb2N1bWVudCgpLmNyb3NzT3JpZ2luT3Bl
bmVyUG9saWN5KCkudmFsdWU7CisgICAgcmV0dXJuIChDT09QVmFsdWUgPT0gQ3Jvc3NPcmlnaW5P
cGVuZXJQb2xpY3lWYWx1ZTo6U2FtZU9yaWdpbiB8fCBDT09QVmFsdWUgPT0gQ3Jvc3NPcmlnaW5P
cGVuZXJQb2xpY3lWYWx1ZTo6U2FtZU9yaWdpblBsdXNDT0VQKSAmJiAhaXNTYW1lT3JpZ2luQXNU
b3BEb2N1bWVudCgpOworfQorCitib29sIERvY3VtZW50Ojppc0NvbnRleHRUaHJlYWQoKSBjb25z
dAoreworICAgIHJldHVybiBpc01haW5UaHJlYWQoKTsKK30KKworLy8gaHR0cHM6Ly93M2MuZ2l0
aHViLmlvL3dlYmFwcHNlYy1zZWN1cmUtY29udGV4dHMvI2lzLXVybC10cnVzdHdvcnRoeQorc3Rh
dGljIGJvb2wgaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KGNvbnN0IFVSTCYgdXJsKQorewor
ICAgIGlmICh1cmwucHJvdG9jb2xJc0Fib3V0KCkpCisgICAgICAgIHJldHVybiB1cmwuaXNBYm91
dEJsYW5rKCkgfHwgdXJsLmlzQWJvdXRTcmNEb2MoKTsKKyAgICBpZiAodXJsLnByb3RvY29sSXNE
YXRhKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBTZWN1cml0eU9yaWdpbjo6
Y3JlYXRlKHVybCktPmlzUG90ZW50aWFsbHlUcnVzdHdvcnRoeSgpOworfQorCisvLyBodHRwczov
L3czYy5naXRodWIuaW8vd2ViYXBwc2VjLXNlY3VyZS1jb250ZXh0cy8jaXMtc2V0dGluZ3Mtb2Jq
ZWN0LWNvbnRleHR1YWxseS1zZWN1cmUgc3RlcCA1LjMgYW5kIDUuNAorc3RhdGljIGlubGluZSBi
b29sIGlzRG9jdW1lbnRTZWN1cmUoY29uc3QgRG9jdW1lbnQmIGRvY3VtZW50KQoreworICAgIGlm
IChkb2N1bWVudC5pc1NhbmRib3hlZChTYW5kYm94T3JpZ2luKSkKKyAgICAgICAgcmV0dXJuIGlz
VVJMUG90ZW50aWFsbHlUcnVzdHdvcnRoeShkb2N1bWVudC51cmwoKSk7CisgICAgcmV0dXJuIGRv
Y3VtZW50LnNlY3VyaXR5T3JpZ2luKCkuaXNQb3RlbnRpYWxseVRydXN0d29ydGh5KCk7Cit9CisK
Ky8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtc2VjdXJlLWNvbnRleHRzLyNpcy1z
ZXR0aW5ncy1vYmplY3QtY29udGV4dHVhbGx5LXNlY3VyZQorYm9vbCBEb2N1bWVudDo6aXNTZWN1
cmVDb250ZXh0KCkgY29uc3QKK3sKKyAgICBpZiAoIW1fZnJhbWUpCisgICAgICAgIHJldHVybiB0
cnVlOworICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5z
ZWN1cmVDb250ZXh0Q2hlY2tzRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGZvciAoYXV0byogZnJhbWUgPSBtX2ZyYW1lLT50cmVlKCkucGFyZW50KCk7IGZyYW1lOyBmcmFt
ZSA9IGZyYW1lLT50cmVlKCkucGFyZW50KCkpIHsKKyAgICAgICAgaWYgKCFpc0RvY3VtZW50U2Vj
dXJlKCpmcmFtZS0+ZG9jdW1lbnQoKSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
fQorCisgICAgcmV0dXJuIGlzRG9jdW1lbnRTZWN1cmUoKnRoaXMpOworfQorCit2b2lkIERvY3Vt
ZW50Ojp1cGRhdGVVUkxGb3JQdXNoT3JSZXBsYWNlU3RhdGUoY29uc3QgVVJMJiB1cmwpCit7Cisg
ICAgUmVmUHRyIGYgPSBmcmFtZSgpOworICAgIGlmICghZikKKyAgICAgICAgcmV0dXJuOworCisg
ICAgc2V0VVJMKHVybCk7CisgICAgZi0+bG9hZGVyKCkuc2V0T3V0Z29pbmdSZWZlcnJlcih1cmwp
OworCisgICAgaWYgKFJlZlB0ciBkb2N1bWVudExvYWRlciA9IGxvYWRlcigpKQorICAgICAgICBk
b2N1bWVudExvYWRlci0+cmVwbGFjZVJlcXVlc3RVUkxGb3JTYW1lRG9jdW1lbnROYXZpZ2F0aW9u
KHVybCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnN0YXRlUG9wcGVkKFJlZjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+JiYgc3RhdGVPYmplY3QpCit7CisgICAgaWYgKCFmcmFtZSgpKQorICAgICAgICBy
ZXR1cm47CisgICAgCisgICAgLy8gUGVyIHN0ZXAgMTEgb2Ygc2VjdGlvbiA2LjUuOSAoaGlzdG9y
eSB0cmF2ZXJzYWwpIG9mIHRoZSBIVE1MNSBzcGVjLCB3ZSAKKyAgICAvLyBkZWZlciBmaXJpbmcg
b2YgcG9wc3RhdGUgdW50aWwgd2UncmUgaW4gdGhlIGNvbXBsZXRlIHN0YXRlLgorICAgIGlmICht
X3JlYWR5U3RhdGUgPT0gQ29tcGxldGUpCisgICAgICAgIGRpc3BhdGNoUG9wc3RhdGVFdmVudChX
VEZNb3ZlKHN0YXRlT2JqZWN0KSk7CisgICAgZWxzZQorICAgICAgICBtX3BlbmRpbmdTdGF0ZU9i
amVjdCA9IFdURk1vdmUoc3RhdGVPYmplY3QpOworfQorCit2b2lkIERvY3VtZW50OjphdHRhY2hS
YW5nZShSYW5nZSYgcmFuZ2UpCit7CisgICAgQVNTRVJUKCFtX3Jhbmdlcy5jb250YWlucygmcmFu
Z2UpKTsKKyAgICBtX3Jhbmdlcy5hZGQoJnJhbmdlKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGV0
YWNoUmFuZ2UoUmFuZ2UmIHJhbmdlKQoreworICAgIC8vIFdlIGRvbid0IEFTU0VSVCBtX3Jhbmdl
cy5jb250YWlucygmcmFuZ2UpIHRvIGFsbG93IHVzIHRvIGNhbGwgdGhpcworICAgIC8vIHVuY29u
ZGl0aW9uYWxseSB0byBmaXg6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yNjA0NAorICAgIG1fcmFuZ2VzLnJlbW92ZSgmcmFuZ2UpOworfQorCitzdGQ6Om9wdGlvbmFs
PFJlbmRlcmluZ0NvbnRleHQ+IERvY3VtZW50OjpnZXRDU1NDYW52YXNDb250ZXh0KGNvbnN0IFN0
cmluZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCit7
CisgICAgUmVmUHRyIGVsZW1lbnQgPSBnZXRDU1NDYW52YXNFbGVtZW50KG5hbWUpOworICAgIGlm
ICghZWxlbWVudCkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICBlbGVtZW50LT5z
ZXRTaXplKHsgd2lkdGgsIGhlaWdodCB9KTsKKyAgICBhdXRvIGNvbnRleHQgPSBlbGVtZW50LT5n
ZXRDb250ZXh0KHR5cGUpOworICAgIGlmICghY29udGV4dCkKKyAgICAgICAgcmV0dXJuIHN0ZDo6
bnVsbG9wdDsKKworI2lmIEVOQUJMRShXRUJHTCkKKyAgICBpZiAoaXM8V2ViR0xSZW5kZXJpbmdD
b250ZXh0PigqY29udGV4dCkpCisgICAgICAgIHJldHVybiBSZW5kZXJpbmdDb250ZXh0IHsgUmVm
UHRyPFdlYkdMUmVuZGVyaW5nQ29udGV4dD4geyAmZG93bmNhc3Q8V2ViR0xSZW5kZXJpbmdDb250
ZXh0PigqY29udGV4dCkgfSB9OworI2VuZGlmCisjaWYgRU5BQkxFKFdFQkdMMikKKyAgICBpZiAo
aXM8V2ViR0wyUmVuZGVyaW5nQ29udGV4dD4oKmNvbnRleHQpKQorICAgICAgICByZXR1cm4gUmVu
ZGVyaW5nQ29udGV4dCB7IFJlZlB0cjxXZWJHTDJSZW5kZXJpbmdDb250ZXh0PiB7ICZkb3duY2Fz
dDxXZWJHTDJSZW5kZXJpbmdDb250ZXh0PigqY29udGV4dCkgfSB9OworI2VuZGlmCisKKyAgICBy
ZXR1cm4gUmVuZGVyaW5nQ29udGV4dCB7IFJlZlB0cjxDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ+
IHsgJmRvd25jYXN0PENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRD4oKmNvbnRleHQpIH0gfTsKK30K
KworSFRNTENhbnZhc0VsZW1lbnQqIERvY3VtZW50OjpnZXRDU1NDYW52YXNFbGVtZW50KGNvbnN0
IFN0cmluZyYgbmFtZSkKK3sKKyAgICBSZWZQdHI8SFRNTENhbnZhc0VsZW1lbnQ+JiBlbGVtZW50
ID0gbV9jc3NDYW52YXNFbGVtZW50cy5hZGQobmFtZSwgbnVsbHB0cikuaXRlcmF0b3ItPnZhbHVl
OworICAgIGlmICghZWxlbWVudCkKKyAgICAgICAgZWxlbWVudCA9IEhUTUxDYW52YXNFbGVtZW50
OjpjcmVhdGUoKnRoaXMpOworICAgIHJldHVybiBlbGVtZW50LmdldCgpOworfQorCitTdHJpbmcg
RG9jdW1lbnQ6Om5hbWVGb3JDU1NDYW52YXNFbGVtZW50KGNvbnN0IEhUTUxDYW52YXNFbGVtZW50
JiBjYW52YXNFbGVtZW50KSBjb25zdAoreworICAgIGZvciAoY29uc3QgYXV0byYgZW50cnkgOiBt
X2Nzc0NhbnZhc0VsZW1lbnRzKSB7CisgICAgICAgIGlmIChlbnRyeS52YWx1ZS5nZXQoKSA9PSAm
Y2FudmFzRWxlbWVudCkKKyAgICAgICAgICAgIHJldHVybiBlbnRyeS5rZXk7CisgICAgfQorICAg
IHJldHVybiBTdHJpbmcoKTsKK30KKworI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCitUZXh0
QXV0b1NpemluZyYgRG9jdW1lbnQ6OnRleHRBdXRvU2l6aW5nKCkKK3sKKyAgICBpZiAoIW1fdGV4
dEF1dG9TaXppbmcpCisgICAgICAgIG1fdGV4dEF1dG9TaXppbmcgPSBtYWtlVW5pcXVlPFRleHRB
dXRvU2l6aW5nPigpOworICAgIHJldHVybiAqbV90ZXh0QXV0b1NpemluZzsKK30KKyNlbmRpZiAv
LyBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorCit2b2lkIERvY3VtZW50Ojppbml0RE5TUHJlZmV0
Y2goKQoreworICAgIG1faGF2ZUV4cGxpY2l0bHlEaXNhYmxlZEROU1ByZWZldGNoID0gZmFsc2U7
CisgICAgbV9pc0ROU1ByZWZldGNoRW5hYmxlZCA9IHNldHRpbmdzKCkuZG5zUHJlZmV0Y2hpbmdF
bmFibGVkKCkgJiYgc2VjdXJpdHlPcmlnaW4oKS5wcm90b2NvbCgpID09ICJodHRwIjsKKworICAg
IC8vIEluaGVyaXQgRE5TIHByZWZldGNoIG9wdC1vdXQgZnJvbSBwYXJlbnQgZnJhbWUgICAgCisg
ICAgaWYgKERvY3VtZW50KiBwYXJlbnQgPSBwYXJlbnREb2N1bWVudCgpKSB7CisgICAgICAgIGlm
ICghcGFyZW50LT5pc0ROU1ByZWZldGNoRW5hYmxlZCgpKQorICAgICAgICAgICAgbV9pc0ROU1By
ZWZldGNoRW5hYmxlZCA9IGZhbHNlOworICAgIH0KK30KKwordm9pZCBEb2N1bWVudDo6cGFyc2VE
TlNQcmVmZXRjaENvbnRyb2xIZWFkZXIoY29uc3QgU3RyaW5nJiBkbnNQcmVmZXRjaENvbnRyb2wp
Cit7CisgICAgaWYgKCFzZXR0aW5ncygpLmRuc1ByZWZldGNoaW5nRW5hYmxlZCgpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZG5zUHJl
ZmV0Y2hDb250cm9sLCAib24iKSAmJiAhbV9oYXZlRXhwbGljaXRseURpc2FibGVkRE5TUHJlZmV0
Y2gpIHsKKyAgICAgICAgbV9pc0ROU1ByZWZldGNoRW5hYmxlZCA9IHRydWU7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisKKyAgICBtX2lzRE5TUHJlZmV0Y2hFbmFibGVkID0gZmFsc2U7CisgICAg
bV9oYXZlRXhwbGljaXRseURpc2FibGVkRE5TUHJlZmV0Y2ggPSB0cnVlOworfQorCit2b2lkIERv
Y3VtZW50OjpnZXRQYXJzZXJMb2NhdGlvbihTdHJpbmcmIGNvbXBsZXRlZFVSTCwgdW5zaWduZWQm
IGxpbmUsIHVuc2lnbmVkJiBjb2x1bW4pIGNvbnN0Cit7CisgICAgLy8gV2UgZGVmaW5pdGVseSBj
YW5ub3QgYXNzb2NpYXRlIHRoZSBtZXNzYWdlIHdpdGggYSBsb2NhdGlvbiBiZWluZyBwYXJzZWQg
aWYgd2UgYXJlIG5vdCBldmVuIHBhcnNpbmcuCisgICAgaWYgKCFwYXJzaW5nKCkpCisgICAgICAg
IHJldHVybjsKKworICAgIFNjcmlwdGFibGVEb2N1bWVudFBhcnNlciogcGFyc2VyID0gc2NyaXB0
YWJsZURvY3VtZW50UGFyc2VyKCk7CisgICAgaWYgKCFwYXJzZXIpCisgICAgICAgIHJldHVybjsK
KworICAgIC8vIFdoZW4gdGhlIHBhcnNlciB3YWl0cyBmb3Igc2NyaXB0cywgYW55IG1lc3NhZ2Vz
IG11c3QgYmUgY29taW5nIGZyb20gc29tZSBvdGhlciBzb3VyY2UsIGFuZCBhcmUgbm90IHJlbGF0
ZWQgdG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBzY3JpcHQgZWxlbWVudCB0aGF0IG1hZGUgdGhlIHBh
cnNlciB3YWl0LgorICAgIGlmICghcGFyc2VyLT5zaG91bGRBc3NvY2lhdGVDb25zb2xlTWVzc2Fn
ZXNXaXRoVGV4dFBvc2l0aW9uKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGNvbXBsZXRlZFVS
TCA9IHVybCgpLnN0cmluZygpOworICAgIFRleHRQb3NpdGlvbiBwb3NpdGlvbiA9IHBhcnNlci0+
dGV4dFBvc2l0aW9uKCk7CisgICAgbGluZSA9IHBvc2l0aW9uLm1fbGluZS5vbmVCYXNlZEludCgp
OworICAgIGNvbHVtbiA9IHBvc2l0aW9uLm1fY29sdW1uLm9uZUJhc2VkSW50KCk7Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OmFkZENvbnNvbGVNZXNzYWdlKHN0ZDo6dW5pcXVlX3B0cjxJbnNwZWN0b3I6
OkNvbnNvbGVNZXNzYWdlPiYmIGNvbnNvbGVNZXNzYWdlKQoreworICAgIGlmICghaXNDb250ZXh0
VGhyZWFkKCkpIHsKKyAgICAgICAgcG9zdFRhc2soQWRkQ29uc29sZU1lc3NhZ2VUYXNrKFdURk1v
dmUoY29uc29sZU1lc3NhZ2UpKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAo
UGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAgICAgcGFnZS0+Y29uc29sZSgpLmFkZE1l
c3NhZ2UoV1RGTW92ZShjb25zb2xlTWVzc2FnZSkpOworfQorCit2b2lkIERvY3VtZW50OjphZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlIHNvdXJjZSwgTWVzc2FnZUxldmVsIGxldmVsLCBj
b25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCit7
CisgICAgaWYgKCFpc0NvbnRleHRUaHJlYWQoKSkgeworICAgICAgICBwb3N0VGFzayhBZGRDb25z
b2xlTWVzc2FnZVRhc2soc291cmNlLCBsZXZlbCwgbWVzc2FnZSkpOworICAgICAgICByZXR1cm47
CisgICAgfQorCisgICAgaWYgKFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCkpCisgICAgICAgIHBh
Z2UtPmNvbnNvbGUoKS5hZGRNZXNzYWdlKHNvdXJjZSwgbGV2ZWwsIG1lc3NhZ2UsIHJlcXVlc3RJ
ZGVudGlmaWVyLCB0aGlzKTsKKworICAgIGlmIChtX2NvbnNvbGVNZXNzYWdlTGlzdGVuZXIpCisg
ICAgICAgIG1fY29uc29sZU1lc3NhZ2VMaXN0ZW5lci0+c2NoZWR1bGVDYWxsYmFjaygqdGhpcywg
bWVzc2FnZSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFkZE1lc3NhZ2UoTWVzc2FnZVNvdXJjZSBz
b3VyY2UsIE1lc3NhZ2VMZXZlbCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBT
dHJpbmcmIHNvdXJjZVVSTCwgdW5zaWduZWQgbGluZU51bWJlciwgdW5zaWduZWQgY29sdW1uTnVt
YmVyLCBSZWZQdHI8SW5zcGVjdG9yOjpTY3JpcHRDYWxsU3RhY2s+JiYgY2FsbFN0YWNrLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBzdGF0ZSwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikK
K3sKKyAgICBpZiAoIWlzQ29udGV4dFRocmVhZCgpKSB7CisgICAgICAgIHBvc3RUYXNrKEFkZENv
bnNvbGVNZXNzYWdlVGFzayhzb3VyY2UsIGxldmVsLCBtZXNzYWdlKSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBpZiAoUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKSkKKyAgICAgICAg
cGFnZS0+Y29uc29sZSgpLmFkZE1lc3NhZ2Uoc291cmNlLCBsZXZlbCwgbWVzc2FnZSwgc291cmNl
VVJMLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIFdURk1vdmUoY2FsbFN0YWNrKSwgc3RhdGUs
IHJlcXVlc3RJZGVudGlmaWVyKTsKK30KKwordm9pZCBEb2N1bWVudDo6cG9zdFRhc2soVGFzayYm
IHRhc2spCit7CisgICAgY2FsbE9uTWFpblRocmVhZChbZG9jdW1lbnRJRCA9IGlkZW50aWZpZXIo
KSwgdGFzayA9IFdURk1vdmUodGFzayldKCkgbXV0YWJsZSB7CisgICAgICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CisKKyAgICAgICAgYXV0byogZG9jdW1lbnQgPSBhbGxEb2N1bWVudHNNYXAo
KS5nZXQoZG9jdW1lbnRJRCk7CisgICAgICAgIGlmICghZG9jdW1lbnQpCisgICAgICAgICAgICBy
ZXR1cm47CisKKyAgICAgICAgUGFnZSogcGFnZSA9IGRvY3VtZW50LT5wYWdlKCk7CisgICAgICAg
IGlmICgocGFnZSAmJiBwYWdlLT5kZWZlcnNMb2FkaW5nKCkgJiYgZG9jdW1lbnQtPmFjdGl2ZURP
TU9iamVjdHNBcmVTdXNwZW5kZWQoKSkgfHwgIWRvY3VtZW50LT5tX3BlbmRpbmdUYXNrcy5pc0Vt
cHR5KCkpCisgICAgICAgICAgICBkb2N1bWVudC0+bV9wZW5kaW5nVGFza3MuYXBwZW5kKFdURk1v
dmUodGFzaykpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0YXNrLnBlcmZvcm1UYXNrKCpk
b2N1bWVudCk7CisgICAgfSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnBlbmRpbmdUYXNrc1RpbWVy
RmlyZWQoKQoreworICAgIFZlY3RvcjxUYXNrPiBwZW5kaW5nVGFza3MgPSBXVEZNb3ZlKG1fcGVu
ZGluZ1Rhc2tzKTsKKyAgICBmb3IgKGF1dG8mIHRhc2sgOiBwZW5kaW5nVGFza3MpCisgICAgICAg
IHRhc2sucGVyZm9ybVRhc2soKnRoaXMpOworfQorCitFdmVudExvb3BUYXNrR3JvdXAmIERvY3Vt
ZW50OjpldmVudExvb3AoKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgaWYg
KFVOTElLRUxZKCFtX2RvY3VtZW50VGFza0dyb3VwKSkgeworICAgICAgICBtX2RvY3VtZW50VGFz
a0dyb3VwID0gbWFrZVVuaXF1ZTxFdmVudExvb3BUYXNrR3JvdXA+KHdpbmRvd0V2ZW50TG9vcCgp
KTsKKyAgICAgICAgaWYgKGFjdGl2ZURPTU9iamVjdHNBcmVTdG9wcGVkKCkpCisgICAgICAgICAg
ICBtX2RvY3VtZW50VGFza0dyb3VwLT5tYXJrQXNSZWFkeVRvU3RvcCgpOworICAgICAgICBlbHNl
IGlmIChhY3RpdmVET01PYmplY3RzQXJlU3VzcGVuZGVkKCkpCisgICAgICAgICAgICBtX2RvY3Vt
ZW50VGFza0dyb3VwLT5zdXNwZW5kKCk7CisgICAgfQorICAgIHJldHVybiAqbV9kb2N1bWVudFRh
c2tHcm91cDsKK30KKworV2luZG93RXZlbnRMb29wJiBEb2N1bWVudDo6d2luZG93RXZlbnRMb29w
KCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIGlmIChVTkxJS0VMWSghbV9l
dmVudExvb3ApKQorICAgICAgICBtX2V2ZW50TG9vcCA9IFdpbmRvd0V2ZW50TG9vcDo6ZXZlbnRM
b29wRm9yU2VjdXJpdHlPcmlnaW4oc2VjdXJpdHlPcmlnaW4oKSk7CisgICAgcmV0dXJuICptX2V2
ZW50TG9vcDsKK30KKwordm9pZCBEb2N1bWVudDo6c3VzcGVuZFNjaGVkdWxlZFRhc2tzKFJlYXNv
bkZvclN1c3BlbnNpb24gcmVhc29uKQoreworICAgIGlmIChtX3NjaGVkdWxlZFRhc2tzQXJlU3Vz
cGVuZGVkKSB7CisgICAgICAgIC8vIEEgcGFnZSBtYXkgc3Vic2VxdWVudGx5IHN1c3BlbmQgRE9N
IG9iamVjdHMsIHNheSBhcyBwYXJ0IG9mIGhhbmRsaW5nIGEgc2Nyb2xsIG9yIHpvb20gZ2VzdHVy
ZSwgYWZ0ZXIgdGhlCisgICAgICAgIC8vIGVtYmVkZGluZyBjbGllbnQgcmVxdWVzdGVkIHRoZSBw
YWdlIGJlIHN1c3BlbmRlZC4gV2UgaWdub3JlIHN1Y2ggcmVxdWVzdHMgc28gbG9uZyBhcyB0aGUg
ZW1iZWRkaW5nIGNsaWVudAorICAgICAgICAvLyByZXF1ZXN0ZWQgdGhlIHN1c3BlbnNpb24gZmly
c3QuIFNlZSA8cmRhcjovL3Byb2JsZW0vMTM3NTQ4OTY+IGZvciBtb3JlIGRldGFpbHMuCisgICAg
ICAgIEFTU0VSVChyZWFzb25Gb3JTdXNwZW5kaW5nQWN0aXZlRE9NT2JqZWN0cygpID09IFJlYXNv
bkZvclN1c3BlbnNpb246OlBhZ2VXaWxsQmVTdXNwZW5kZWQpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgc3VzcGVuZFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlckNhbGxiYWNrcygp
OworICAgIHN1c3BlbmRBY3RpdmVET01PYmplY3RzKHJlYXNvbik7CisgICAgc2NyaXB0UnVubmVy
KCkuc3VzcGVuZCgpOworICAgIG1fcGVuZGluZ1Rhc2tzVGltZXIuc3RvcCgpOworCisjaWYgRU5B
QkxFKFhTTFQpCisgICAgbV9hcHBseVBlbmRpbmdYU0xUcmFuc2Zvcm1zVGltZXIuc3RvcCgpOwor
I2VuZGlmCisKKyAgICAvLyBEZWZlcnJpbmcgbG9hZGluZyBhbmQgc3VzcGVuZGluZyBwYXJzZXIg
aXMgbmVjZXNzYXJ5IHdoZW4gd2UgbmVlZCB0byBwcmV2ZW50IHJlLWVudHJhbnQgSmF2YVNjcmlw
dCBleGVjdXRpb24KKyAgICAvLyAoZS5nLiB3aGlsZSBkaXNwbGF5aW5nIGFuIGFsZXJ0KS4KKyAg
ICAvLyBJdCBpcyBub3QgY3VycmVudGx5IHBvc3NpYmxlIHRvIHN1c3BlbmQgcGFyc2VyIHVubGVz
cyBsb2FkaW5nIGlzIGRlZmVycmVkLCBiZWNhdXNlIG5ldyBkYXRhIGFycml2aW5nIGZyb20gbmV0
d29yaworICAgIC8vIHdpbGwgdHJpZ2dlciBwYXJzaW5nLCBhbmQgbGVhdmUgdGhlIHNjaGVkdWxl
ciBpbiBhbiBpbmNvbnNpc3RlbnQgc3RhdGUgd2hlcmUgaXQgZG9lc24ndCBrbm93IHdoZXRoZXIg
aXQncyBzdXNwZW5kZWQgb3Igbm90LgorICAgIGlmIChyZWFzb24gPT0gUmVhc29uRm9yU3VzcGVu
c2lvbjo6V2lsbERlZmVyTG9hZGluZyAmJiBtX3BhcnNlcikKKyAgICAgICAgbV9wYXJzZXItPnN1
c3BlbmRTY2hlZHVsZWRUYXNrcygpOworCisgICAgbV9zY2hlZHVsZWRUYXNrc0FyZVN1c3BlbmRl
ZCA9IHRydWU7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc3VtZVNjaGVkdWxlZFRhc2tzKFJlYXNv
bkZvclN1c3BlbnNpb24gcmVhc29uKQoreworICAgIGlmIChyZWFzb25Gb3JTdXNwZW5kaW5nQWN0
aXZlRE9NT2JqZWN0cygpICE9IHJlYXNvbikKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJU
KG1fc2NoZWR1bGVkVGFza3NBcmVTdXNwZW5kZWQpOworCisgICAgaWYgKHJlYXNvbiA9PSBSZWFz
b25Gb3JTdXNwZW5zaW9uOjpXaWxsRGVmZXJMb2FkaW5nICYmIG1fcGFyc2VyKQorICAgICAgICBt
X3BhcnNlci0+cmVzdW1lU2NoZWR1bGVkVGFza3MoKTsKKworI2lmIEVOQUJMRShYU0xUKQorICAg
IGlmIChtX2hhc1BlbmRpbmdYU0xUcmFuc2Zvcm1zKQorICAgICAgICBtX2FwcGx5UGVuZGluZ1hT
TFRyYW5zZm9ybXNUaW1lci5zdGFydE9uZVNob3QoMF9zKTsKKyNlbmRpZgorCisgICAgaWYgKCFt
X3BlbmRpbmdUYXNrcy5pc0VtcHR5KCkpCisgICAgICAgIG1fcGVuZGluZ1Rhc2tzVGltZXIuc3Rh
cnRPbmVTaG90KDBfcyk7CisgICAgc2NyaXB0UnVubmVyKCkucmVzdW1lKCk7CisgICAgcmVzdW1l
QWN0aXZlRE9NT2JqZWN0cyhyZWFzb24pOworICAgIHJlc3VtZVNjcmlwdGVkQW5pbWF0aW9uQ29u
dHJvbGxlckNhbGxiYWNrcygpOworICAgIAorICAgIG1fc2NoZWR1bGVkVGFza3NBcmVTdXNwZW5k
ZWQgPSBmYWxzZTsKK30KKwordm9pZCBEb2N1bWVudDo6c3VzcGVuZFNjcmlwdGVkQW5pbWF0aW9u
Q29udHJvbGxlckNhbGxiYWNrcygpCit7CisgICAgaWYgKG1fc2NyaXB0ZWRBbmltYXRpb25Db250
cm9sbGVyKQorICAgICAgICBtX3NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci0+c3VzcGVuZCgp
OworfQorCit2b2lkIERvY3VtZW50OjpyZXN1bWVTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXJD
YWxsYmFja3MoKQoreworICAgIGlmIChtX3NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlcikKKyAg
ICAgICAgbV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXItPnJlc3VtZSgpOworfQorCit2b2lk
IERvY3VtZW50OjpzZXJ2aWNlUmVxdWVzdEFuaW1hdGlvbkZyYW1lQ2FsbGJhY2tzKCkKK3sKKyAg
ICBpZiAobV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIgJiYgZG9tV2luZG93KCkpCisgICAg
ICAgIG1fc2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLT5zZXJ2aWNlUmVxdWVzdEFuaW1hdGlv
bkZyYW1lQ2FsbGJhY2tzKGRvbVdpbmRvdygpLT5mcm96ZW5Ob3dUaW1lc3RhbXAoKSk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OndpbmRvd1NjcmVlbkRpZENoYW5nZShQbGF0Zm9ybURpc3BsYXlJRCBk
aXNwbGF5SUQpCit7CisgICAgaWYgKFJlbmRlclZpZXcqIHZpZXcgPSByZW5kZXJWaWV3KCkpIHsK
KyAgICAgICAgaWYgKHZpZXctPnVzZXNDb21wb3NpdGluZygpKQorICAgICAgICAgICAgdmlldy0+
Y29tcG9zaXRvcigpLndpbmRvd1NjcmVlbkRpZENoYW5nZShkaXNwbGF5SUQpOworICAgIH0KKwor
ICAgIGZvciAoYXV0byYgb2JzZXJ2ZXIgOiBjb3B5VG9WZWN0b3IobV9kaXNwbGF5Q2hhbmdlZE9i
c2VydmVycykpIHsKKyAgICAgICAgaWYgKG9ic2VydmVyKQorICAgICAgICAgICAgKCpvYnNlcnZl
cikoZGlzcGxheUlEKTsKKyAgICB9Cit9CisKK1N0cmluZyBEb2N1bWVudDo6ZGlzcGxheVN0cmlu
Z01vZGlmaWVkQnlFbmNvZGluZyhjb25zdCBTdHJpbmcmIHN0cmluZykgY29uc3QKK3sKKyAgICBp
ZiAoIW1fZGVjb2RlcikKKyAgICAgICAgcmV0dXJuIHN0cmluZzsKKyAgICByZXR1cm4gU3RyaW5n
IHsgc3RyaW5nIH0ucmVwbGFjZSgnXFwnLCBtX2RlY29kZXItPmVuY29kaW5nKCkuYmFja3NsYXNo
QXNDdXJyZW5jeVN5bWJvbCgpKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlzcGF0Y2hQYWdlc2hv
d0V2ZW50KFBhZ2VzaG93RXZlbnRQZXJzaXN0ZW5jZSBwZXJzaXN0ZWQpCit7CisgICAgLy8gRklY
TUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjMzNCBQYWdlc2hv
dyBldmVudCBuZWVkcyB0byBmaXJlIGFzeW5jaHJvbm91c2x5LgorICAgIGRpc3BhdGNoV2luZG93
RXZlbnQoUGFnZVRyYW5zaXRpb25FdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5wYWdlc2hvd0V2
ZW50LCBwZXJzaXN0ZWQpLCB0aGlzKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZW5xdWV1ZVNlY3Vy
aXR5UG9saWN5VmlvbGF0aW9uRXZlbnQoU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudDo6SW5p
dCYmIGV2ZW50SW5pdCkKK3sKKyAgICBxdWV1ZVRhc2tUb0Rpc3BhdGNoRXZlbnQoVGFza1NvdXJj
ZTo6RE9NTWFuaXB1bGF0aW9uLCBTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lcygpLnNlY3VyaXR5cG9saWN5dmlvbGF0aW9uRXZlbnQsIFdURk1vdmUoZXZlbnRJ
bml0KSwgRXZlbnQ6OklzVHJ1c3RlZDo6WWVzKSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmVucXVl
dWVIYXNoY2hhbmdlRXZlbnQoY29uc3QgU3RyaW5nJiBvbGRVUkwsIGNvbnN0IFN0cmluZyYgbmV3
VVJMKQoreworICAgIC8vIEZJWE1FOiBwb3BzdGF0ZSBldmVudCBhbmQgaGFzaGNoYW5nZSBldmVu
dCBhcmUgc3VwcG9zZWQgdG8gZmlyZSBpbiBhIHNpbmdsZSB0YXNrLgorICAgIHF1ZXVlVGFza1Rv
RGlzcGF0Y2hFdmVudE9uV2luZG93KFRhc2tTb3VyY2U6OkRPTU1hbmlwdWxhdGlvbiwgSGFzaENo
YW5nZUV2ZW50OjpjcmVhdGUob2xkVVJMLCBuZXdVUkwpKTsKK30KKwordm9pZCBEb2N1bWVudDo6
ZGlzcGF0Y2hQb3BzdGF0ZUV2ZW50KFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYgc3Rh
dGVPYmplY3QpCit7CisgICAgZGlzcGF0Y2hXaW5kb3dFdmVudChQb3BTdGF0ZUV2ZW50OjpjcmVh
dGUoV1RGTW92ZShzdGF0ZU9iamVjdCksIG1fZG9tV2luZG93ID8gJm1fZG9tV2luZG93LT5oaXN0
b3J5KCkgOiBudWxscHRyKSk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFkZE1lZGlhQ2FuU3RhcnRM
aXN0ZW5lcihNZWRpYUNhblN0YXJ0TGlzdGVuZXImIGxpc3RlbmVyKQoreworICAgIG1fbWVkaWFD
YW5TdGFydExpc3RlbmVycy5hZGQobGlzdGVuZXIpOworfQorCit2b2lkIERvY3VtZW50OjpyZW1v
dmVNZWRpYUNhblN0YXJ0TGlzdGVuZXIoTWVkaWFDYW5TdGFydExpc3RlbmVyJiBsaXN0ZW5lcikK
K3sKKyAgICBBU1NFUlQobV9tZWRpYUNhblN0YXJ0TGlzdGVuZXJzLmNvbnRhaW5zKGxpc3RlbmVy
KSk7CisgICAgbV9tZWRpYUNhblN0YXJ0TGlzdGVuZXJzLnJlbW92ZShsaXN0ZW5lcik7Cit9CisK
K01lZGlhQ2FuU3RhcnRMaXN0ZW5lciogRG9jdW1lbnQ6OnRha2VBbnlNZWRpYUNhblN0YXJ0TGlz
dGVuZXIoKQoreworICAgIGlmIChtX21lZGlhQ2FuU3RhcnRMaXN0ZW5lcnMuY29tcHV0ZXNFbXB0
eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIE1lZGlhQ2FuU3RhcnRMaXN0ZW5l
ciogbGlzdGVuZXIgPSBtX21lZGlhQ2FuU3RhcnRMaXN0ZW5lcnMuYmVnaW4oKS5nZXQoKTsKKyAg
ICBtX21lZGlhQ2FuU3RhcnRMaXN0ZW5lcnMucmVtb3ZlKCpsaXN0ZW5lcik7CisKKyAgICByZXR1
cm4gbGlzdGVuZXI7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFkZERpc3BsYXlDaGFuZ2VkT2JzZXJ2
ZXIoY29uc3QgRGlzcGxheUNoYW5nZWRPYnNlcnZlciYgb2JzZXJ2ZXIpCit7CisgICAgQVNTRVJU
KCFtX2Rpc3BsYXlDaGFuZ2VkT2JzZXJ2ZXJzLmNvbnRhaW5zKG9ic2VydmVyKSk7CisgICAgbV9k
aXNwbGF5Q2hhbmdlZE9ic2VydmVycy5hZGQob2JzZXJ2ZXIpOworfQorCisjaWYgRU5BQkxFKERF
VklDRV9PUklFTlRBVElPTikgJiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKworRGV2aWNlTW90aW9u
Q29udHJvbGxlciYgRG9jdW1lbnQ6OmRldmljZU1vdGlvbkNvbnRyb2xsZXIoKSBjb25zdAorewor
ICAgIHJldHVybiAqbV9kZXZpY2VNb3Rpb25Db250cm9sbGVyOworfQorCitEZXZpY2VPcmllbnRh
dGlvbkNvbnRyb2xsZXImIERvY3VtZW50OjpkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIoKSBj
b25zdAoreworICAgIHJldHVybiAqbV9kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXI7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OnNpbXVsYXRlRGV2aWNlT3JpZW50YXRpb25DaGFuZ2UoZG91YmxlIGFs
cGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdhbW1hKQoreworICAgIGF1dG8gb3JpZW50YXRpb24g
PSBEZXZpY2VPcmllbnRhdGlvbkRhdGE6OmNyZWF0ZShhbHBoYSwgYmV0YSwgZ2FtbWEsIHN0ZDo6
bnVsbG9wdCwgc3RkOjpudWxsb3B0KTsKKyAgICBkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIo
KS5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihvcmllbnRhdGlvbi5wdHIoKSk7Cit9CisKKyNl
bmRpZgorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKwordm9pZCBEb2N1bWVudDo6ZXhpdFBv
aW50ZXJMb2NrKCkKK3sKKyAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgIGlmICgh
cGFnZSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChhdXRvKiB0YXJnZXQgPSBwYWdlLT5wb2lu
dGVyTG9ja0NvbnRyb2xsZXIoKS5lbGVtZW50KCkpIHsKKyAgICAgICAgaWYgKCZ0YXJnZXQtPmRv
Y3VtZW50KCkgIT0gdGhpcykKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgcGFnZS0+
cG9pbnRlckxvY2tDb250cm9sbGVyKCkucmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKK30KKworI2Vu
ZGlmCisKK3ZvaWQgRG9jdW1lbnQ6OmRlY3JlbWVudExvYWRFdmVudERlbGF5Q291bnQoKQorewor
ICAgIEFTU0VSVChtX2xvYWRFdmVudERlbGF5Q291bnQpOworICAgIC0tbV9sb2FkRXZlbnREZWxh
eUNvdW50OworCisgICAgaWYgKGZyYW1lKCkgJiYgIW1fbG9hZEV2ZW50RGVsYXlDb3VudCAmJiAh
bV9sb2FkRXZlbnREZWxheVRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fbG9hZEV2ZW50RGVs
YXlUaW1lci5zdGFydE9uZVNob3QoMF9zKTsKK30KKwordm9pZCBEb2N1bWVudDo6bG9hZEV2ZW50
RGVsYXlUaW1lckZpcmVkKCkKK3sKKyAgICAvLyBGSVhNRTogU2hvdWxkIHRoZSBjYWxsIHRvIEZy
YW1lTG9hZGVyOjpjaGVja0xvYWRDb21wbGV0ZSBiZSBtb3ZlZCBpbnNpZGUgRG9jdW1lbnQ6OmNo
ZWNrQ29tcGxldGVkPworICAgIC8vIEZJWE1FOiBTaG91bGQgdGhpcyBhbHNvIGNhbGwgRG9jdW1l
bnRMb2FkZXI6OmNoZWNrTG9hZENvbXBsZXRlPworICAgIC8vIEZJWE1FOiBOb3Qgb2J2aW91cyB3
aHkgY2hlY2tDb21wbGV0ZWQgbmVlZHMgdG8gZ28gZmlyc3QuIFRoZSBvcmRlciB0aGVzZSBhcmUg
Y2FsbGVkIGlzCisgICAgLy8gdmlzaWJsZSB0byBXZWJLaXQgY2xpZW50cywgYnV0IGl0J3MgbW9y
ZSBsaWtlIGEgcmFjZSB0aGFuIGEgd2VsbC1kZWZpbmVkIHJlbGF0aW9uc2hpcC4KKyAgICBSZWY8
RG9jdW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOworICAgIGNoZWNrQ29tcGxldGVkKCk7Cisg
ICAgaWYgKFJlZlB0ciBmcmFtZSA9IHRoaXMtPmZyYW1lKCkpCisgICAgICAgIGZyYW1lLT5sb2Fk
ZXIoKS5jaGVja0xvYWRDb21wbGV0ZSgpOworfQorCit2b2lkIERvY3VtZW50OjpjaGVja0NvbXBs
ZXRlZCgpCit7CisgICAgaWYgKFJlZlB0ciBmcmFtZSA9IHRoaXMtPmZyYW1lKCkpCisgICAgICAg
IGZyYW1lLT5sb2FkZXIoKS5jaGVja0NvbXBsZXRlZCgpOworfQorCitkb3VibGUgRG9jdW1lbnQ6
Om1vbm90b25pY1RpbWVzdGFtcCgpIGNvbnN0Cit7CisgICAgYXV0byogbG9hZGVyID0gdGhpcy0+
bG9hZGVyKCk7CisgICAgaWYgKCFsb2FkZXIpCisgICAgICAgIHJldHVybiAwLjA7CisgICAgcmV0
dXJuIChNb25vdG9uaWNUaW1lOjpub3coKSAtIGxvYWRlci0+dGltaW5nKCkuc3RhcnRUaW1lKCkp
LnNlY29uZHMoKTsKK30KKworaW50IERvY3VtZW50OjpyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoUmVm
PFJlcXVlc3RBbmltYXRpb25GcmFtZUNhbGxiYWNrPiYmIGNhbGxiYWNrKQoreworICAgIGlmICgh
bV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIpIHsKKyAgICAgICAgbV9zY3JpcHRlZEFuaW1h
dGlvbkNvbnRyb2xsZXIgPSBTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXI6OmNyZWF0ZSgqdGhp
cyk7CisKKyAgICAgICAgLy8gSXQncyBwb3NzaWJsZSB0aGF0IHRoZSBQYWdlIG1heSBoYXZlIHN1
c3BlbmRlZCBzY3JpcHRlZCBhbmltYXRpb25zIGJlZm9yZQorICAgICAgICAvLyB3ZSB3ZXJlIGNy
ZWF0ZWQuIFdlIG5lZWQgdG8gbWFrZSBzdXJlIHRoYXQgd2UgZG9uJ3Qgc3RhcnQgdXAgdGhlIGFu
aW1hdGlvbgorICAgICAgICAvLyBjb250cm9sbGVyIG9uIGEgYmFja2dyb3VuZCB0YWIsIGZvciBl
eGFtcGxlLgorICAgICAgICBpZiAoIXBhZ2UoKSB8fCBwYWdlKCktPnNjcmlwdGVkQW5pbWF0aW9u
c1N1c3BlbmRlZCgpKQorICAgICAgICAgICAgbV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIt
PnN1c3BlbmQoKTsKKworICAgICAgICBpZiAoIXRvcE9yaWdpbigpLmlzU2FtZU9yaWdpbkRvbWFp
bihzZWN1cml0eU9yaWdpbigpKSAmJiAhaGFzSGFkVXNlckludGVyYWN0aW9uKCkpCisgICAgICAg
ICAgICBtX3NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci0+YWRkVGhyb3R0bGluZ1JlYXNvbihU
aHJvdHRsaW5nUmVhc29uOjpOb25JbnRlcmFjdGVkQ3Jvc3NPcmlnaW5GcmFtZSk7CisgICAgfQor
CisgICAgcmV0dXJuIG1fc2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLT5yZWdpc3RlckNhbGxi
YWNrKFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwordm9pZCBEb2N1bWVudDo6Y2FuY2VsQW5pbWF0
aW9uRnJhbWUoaW50IGlkKQoreworICAgIGlmICghbV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xs
ZXIpCisgICAgICAgIHJldHVybjsKKyAgICBtX3NjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlci0+
Y2FuY2VsQ2FsbGJhY2soaWQpOworfQorCit2b2lkIERvY3VtZW50OjpjbGVhclNjcmlwdGVkQW5p
bWF0aW9uQ29udHJvbGxlcigpCit7CisgICAgLy8gRklYTUU6IGNvbnNpZGVyIHVzaW5nIEFjdGl2
ZURPTU9iamVjdC4KKyAgICBpZiAobV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXIpCisgICAg
ICAgIG1fc2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyLT5jbGVhckRvY3VtZW50UG9pbnRlcigp
OworICAgIG1fc2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyID0gbnVsbHB0cjsKK30KKworaW50
IERvY3VtZW50OjpyZXF1ZXN0SWRsZUNhbGxiYWNrKFJlZjxJZGxlUmVxdWVzdENhbGxiYWNrPiYm
IGNhbGxiYWNrLCBTZWNvbmRzIHRpbWVvdXQpCit7CisgICAgaWYgKCFtX2lkbGVDYWxsYmFja0Nv
bnRyb2xsZXIpCisgICAgICAgIG1faWRsZUNhbGxiYWNrQ29udHJvbGxlciA9IG1ha2VVbmlxdWU8
SWRsZUNhbGxiYWNrQ29udHJvbGxlcj4oKnRoaXMpOworICAgIHJldHVybiBtX2lkbGVDYWxsYmFj
a0NvbnRyb2xsZXItPnF1ZXVlSWRsZUNhbGxiYWNrKFdURk1vdmUoY2FsbGJhY2spLCB0aW1lb3V0
KTsKK30KKwordm9pZCBEb2N1bWVudDo6Y2FuY2VsSWRsZUNhbGxiYWNrKGludCBpZCkKK3sKKyAg
ICBpZiAoIW1faWRsZUNhbGxiYWNrQ29udHJvbGxlcikKKyAgICAgICAgcmV0dXJuOworICAgIG1f
aWRsZUNhbGxiYWNrQ29udHJvbGxlci0+cmVtb3ZlSWRsZUNhbGxiYWNrKGlkKTsKK30KKwordm9p
ZCBEb2N1bWVudDo6d2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdlZChOb2RlKiBub2RlKQoreworICAg
IFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoUmVmUHRyIGZyYW1lVmlldyA9IHZpZXcoKSkgeworICAgICAgICBpZiAo
U2Nyb2xsaW5nQ29vcmRpbmF0b3IqIHNjcm9sbGluZ0Nvb3JkaW5hdG9yID0gcGFnZS0+c2Nyb2xs
aW5nQ29vcmRpbmF0b3IoKSkKKyAgICAgICAgICAgIHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5mcmFt
ZVZpZXdFdmVudFRyYWNraW5nUmVnaW9uc0NoYW5nZWQoKmZyYW1lVmlldyk7CisgICAgfQorCisj
aWYgRU5BQkxFKFdIRUVMX0VWRU5UX1JFR0lPTlMpCisgICAgaWYgKGlzPEVsZW1lbnQ+KG5vZGUp
KSB7CisgICAgICAgIC8vIFN0eWxlIGlzIGFmZmVjdGVkIHZpYSBldmVudExpc3RlbmVyUmVnaW9u
VHlwZXMoKS4KKyAgICAgICAgZG93bmNhc3Q8RWxlbWVudD4oKm5vZGUpLmludmFsaWRhdGVTdHls
ZSgpOworICAgIH0KKworICAgIG1fZnJhbWUtPmludmFsaWRhdGVDb250ZW50RXZlbnRSZWdpb25z
SWZOZWVkZWQoRnJhbWU6OkludmFsaWRhdGVDb250ZW50RXZlbnRSZWdpb25zUmVhc29uOjpFdmVu
dEhhbmRsZXJDaGFuZ2UpOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0obm9kZSk7CisjZW5kaWYK
KworICAgIGJvb2wgaGF2ZUhhbmRsZXJzID0gbV93aGVlbEV2ZW50VGFyZ2V0cyAmJiAhbV93aGVl
bEV2ZW50VGFyZ2V0cy0+aXNFbXB0eSgpOworICAgIHBhZ2UtPmNocm9tZSgpLmNsaWVudCgpLndo
ZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoaGF2ZUhhbmRsZXJzKTsKK30KKwordm9pZCBEb2N1bWVu
dDo6ZGlkQWRkV2hlZWxFdmVudEhhbmRsZXIoTm9kZSYgbm9kZSkKK3sKKyAgICBpZiAoIW1fd2hl
ZWxFdmVudFRhcmdldHMpCisgICAgICAgIG1fd2hlZWxFdmVudFRhcmdldHMgPSBtYWtlVW5pcXVl
PEV2ZW50VGFyZ2V0U2V0PigpOworCisgICAgbV93aGVlbEV2ZW50VGFyZ2V0cy0+YWRkKCZub2Rl
KTsKKyAgICB3aGVlbEV2ZW50SGFuZGxlcnNDaGFuZ2VkKCZub2RlKTsKKworICAgIGlmIChSZWZQ
dHIgZnJhbWUgPSB0aGlzLT5mcmFtZSgpKQorICAgICAgICBEZWJ1Z1BhZ2VPdmVybGF5czo6ZGlk
Q2hhbmdlRXZlbnRIYW5kbGVycygqZnJhbWUpOworfQorCitIdHRwRXF1aXZQb2xpY3kgRG9jdW1l
bnQ6Omh0dHBFcXVpdlBvbGljeSgpIGNvbnN0Cit7CisgICAgaWYgKHNob3VsZEVuZm9yY2VDb250
ZW50RGlzcG9zaXRpb25BdHRhY2htZW50U2FuZGJveCgpKQorICAgICAgICByZXR1cm4gSHR0cEVx
dWl2UG9saWN5OjpEaXNhYmxlZEJ5Q29udGVudERpc3Bvc2l0aW9uQXR0YWNobWVudFNhbmRib3g7
CisgICAgaWYgKHBhZ2UoKSAmJiAhcGFnZSgpLT5zZXR0aW5ncygpLmh0dHBFcXVpdkVuYWJsZWQo
KSkKKyAgICAgICAgcmV0dXJuIEh0dHBFcXVpdlBvbGljeTo6RGlzYWJsZWRCeVNldHRpbmdzOwor
ICAgIHJldHVybiBIdHRwRXF1aXZQb2xpY3k6OkVuYWJsZWQ7Cit9CisKK3N0YXRpYyBib29sIHJl
bW92ZUhhbmRsZXJGcm9tU2V0KEV2ZW50VGFyZ2V0U2V0JiBoYW5kbGVyU2V0LCBOb2RlJiBub2Rl
LCBFdmVudEhhbmRsZXJSZW1vdmFsIHJlbW92YWwpCit7CisgICAgc3dpdGNoIChyZW1vdmFsKSB7
CisgICAgY2FzZSBFdmVudEhhbmRsZXJSZW1vdmFsOjpPbmU6CisgICAgICAgIHJldHVybiBoYW5k
bGVyU2V0LnJlbW92ZSgmbm9kZSk7CisgICAgY2FzZSBFdmVudEhhbmRsZXJSZW1vdmFsOjpBbGw6
CisgICAgICAgIHJldHVybiBoYW5kbGVyU2V0LnJlbW92ZUFsbCgmbm9kZSk7CisgICAgfQorICAg
IHJldHVybiBmYWxzZTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlkUmVtb3ZlV2hlZWxFdmVudEhh
bmRsZXIoTm9kZSYgbm9kZSwgRXZlbnRIYW5kbGVyUmVtb3ZhbCByZW1vdmFsKQoreworICAgIGlm
ICghbV93aGVlbEV2ZW50VGFyZ2V0cykKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFyZW1v
dmVIYW5kbGVyRnJvbVNldCgqbV93aGVlbEV2ZW50VGFyZ2V0cywgbm9kZSwgcmVtb3ZhbCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIHdoZWVsRXZlbnRIYW5kbGVyc0NoYW5nZWQoJm5vZGUpOwor
CisgICAgaWYgKFJlZlB0ciBmcmFtZSA9IHRoaXMtPmZyYW1lKCkpCisgICAgICAgIERlYnVnUGFn
ZU92ZXJsYXlzOjpkaWRDaGFuZ2VFdmVudEhhbmRsZXJzKCpmcmFtZSk7Cit9CisKK3Vuc2lnbmVk
IERvY3VtZW50Ojp3aGVlbEV2ZW50SGFuZGxlckNvdW50KCkgY29uc3QKK3sKKyAgICBpZiAoIW1f
d2hlZWxFdmVudFRhcmdldHMpCisgICAgICAgIHJldHVybiAwOworCisgICAgdW5zaWduZWQgY291
bnQgPSAwOworICAgIGZvciAoYXV0byYgaGFuZGxlciA6ICptX3doZWVsRXZlbnRUYXJnZXRzKQor
ICAgICAgICBjb3VudCArPSBoYW5kbGVyLnZhbHVlOworCisgICAgcmV0dXJuIGNvdW50OworfQor
Cit2b2lkIERvY3VtZW50OjpkaWRBZGRUb3VjaEV2ZW50SGFuZGxlcihOb2RlJiBoYW5kbGVyKQor
eworI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCisgICAgaWYgKCFtX3RvdWNoRXZlbnRUYXJnZXRz
KQorICAgICAgICBtX3RvdWNoRXZlbnRUYXJnZXRzID0gbWFrZVVuaXF1ZTxFdmVudFRhcmdldFNl
dD4oKTsKKworICAgIG1fdG91Y2hFdmVudFRhcmdldHMtPmFkZCgmaGFuZGxlcik7CisKKyAgICBp
ZiAoUmVmUHRyIHBhcmVudCA9IHBhcmVudERvY3VtZW50KCkpIHsKKyAgICAgICAgcGFyZW50LT5k
aWRBZGRUb3VjaEV2ZW50SGFuZGxlcigqdGhpcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9Cisj
ZWxzZQorICAgIFVOVVNFRF9QQVJBTShoYW5kbGVyKTsKKyNlbmRpZgorfQorCit2b2lkIERvY3Vt
ZW50OjpkaWRSZW1vdmVUb3VjaEV2ZW50SGFuZGxlcihOb2RlJiBoYW5kbGVyLCBFdmVudEhhbmRs
ZXJSZW1vdmFsIHJlbW92YWwpCit7CisjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyAgICBpZiAo
IW1fdG91Y2hFdmVudFRhcmdldHMpCisgICAgICAgIHJldHVybjsKKworICAgIHJlbW92ZUhhbmRs
ZXJGcm9tU2V0KCptX3RvdWNoRXZlbnRUYXJnZXRzLCBoYW5kbGVyLCByZW1vdmFsKTsKKworICAg
IGlmIChSZWZQdHIgcGFyZW50ID0gcGFyZW50RG9jdW1lbnQoKSkKKyAgICAgICAgcGFyZW50LT5k
aWRSZW1vdmVUb3VjaEV2ZW50SGFuZGxlcigqdGhpcyk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJB
TShoYW5kbGVyKTsKKyAgICBVTlVTRURfUEFSQU0ocmVtb3ZhbCk7CisjZW5kaWYKK30KKwordm9p
ZCBEb2N1bWVudDo6ZGlkUmVtb3ZlRXZlbnRUYXJnZXROb2RlKE5vZGUmIGhhbmRsZXIpCit7Cisj
aWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyAgICBpZiAobV90b3VjaEV2ZW50VGFyZ2V0cykgewor
ICAgICAgICBtX3RvdWNoRXZlbnRUYXJnZXRzLT5yZW1vdmVBbGwoJmhhbmRsZXIpOworICAgICAg
ICBpZiAoKCZoYW5kbGVyID09IHRoaXMgfHwgbV90b3VjaEV2ZW50VGFyZ2V0cy0+aXNFbXB0eSgp
KSAmJiBwYXJlbnREb2N1bWVudCgpKQorICAgICAgICAgICAgcGFyZW50RG9jdW1lbnQoKS0+ZGlk
UmVtb3ZlRXZlbnRUYXJnZXROb2RlKCp0aGlzKTsKKyAgICB9CisjZW5kaWYKKworICAgIGlmICht
X3doZWVsRXZlbnRUYXJnZXRzKSB7CisgICAgICAgIG1fd2hlZWxFdmVudFRhcmdldHMtPnJlbW92
ZUFsbCgmaGFuZGxlcik7CisgICAgICAgIGlmICgoJmhhbmRsZXIgPT0gdGhpcyB8fCBtX3doZWVs
RXZlbnRUYXJnZXRzLT5pc0VtcHR5KCkpICYmIHBhcmVudERvY3VtZW50KCkpCisgICAgICAgICAg
ICBwYXJlbnREb2N1bWVudCgpLT5kaWRSZW1vdmVFdmVudFRhcmdldE5vZGUoKnRoaXMpOworICAg
IH0KK30KKwordW5zaWduZWQgRG9jdW1lbnQ6OnRvdWNoRXZlbnRIYW5kbGVyQ291bnQoKSBjb25z
dAoreworI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCisgICAgaWYgKCFtX3RvdWNoRXZlbnRUYXJn
ZXRzKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHVuc2lnbmVkIGNvdW50ID0gMDsKKyAgICBm
b3IgKGF1dG8mIGhhbmRsZXIgOiAqbV90b3VjaEV2ZW50VGFyZ2V0cykKKyAgICAgICAgY291bnQg
Kz0gaGFuZGxlci52YWx1ZTsKKworICAgIHJldHVybiBjb3VudDsKKyNlbHNlCisgICAgcmV0dXJu
IDA7CisjZW5kaWYKK30KKworTGF5b3V0UmVjdCBEb2N1bWVudDo6YWJzb2x1dGVFdmVudEhhbmRs
ZXJCb3VuZHMoYm9vbCYgaW5jbHVkZXNGaXhlZFBvc2l0aW9uRWxlbWVudHMpCit7CisgICAgaW5j
bHVkZXNGaXhlZFBvc2l0aW9uRWxlbWVudHMgPSBmYWxzZTsKKyAgICBpZiAoUmVuZGVyVmlldyog
cmVuZGVyVmlldyA9IHRoaXMtPnJlbmRlclZpZXcoKSkKKyAgICAgICAgcmV0dXJuIHJlbmRlclZp
ZXctPmRvY3VtZW50UmVjdCgpOworICAgIAorICAgIHJldHVybiBMYXlvdXRSZWN0KCk7Cit9CisK
K0RvY3VtZW50OjpSZWdpb25GaXhlZFBhaXIgRG9jdW1lbnQ6OmFic29sdXRlRXZlbnRSZWdpb25G
b3JOb2RlKE5vZGUmIG5vZGUpCit7CisgICAgUmVnaW9uIHJlZ2lvbjsKKyAgICBMYXlvdXRSZWN0
IHJvb3RSZWxhdGl2ZUJvdW5kczsKKyAgICBib29sIGluc2lkZUZpeGVkUG9zaXRpb24gPSBmYWxz
ZTsKKworICAgIGlmIChpczxEb2N1bWVudD4obm9kZSkpIHsKKyAgICAgICAgYXV0byYgZG9jdW1l
bnQgPSBkb3duY2FzdDxEb2N1bWVudD4obm9kZSk7CisgICAgICAgIGlmICgmZG9jdW1lbnQgPT0g
dGhpcykKKyAgICAgICAgICAgIHJvb3RSZWxhdGl2ZUJvdW5kcyA9IGFic29sdXRlRXZlbnRIYW5k
bGVyQm91bmRzKGluc2lkZUZpeGVkUG9zaXRpb24pOworICAgICAgICBlbHNlIGlmIChSZWZQdHIg
ZWxlbWVudCA9IGRvY3VtZW50Lm93bmVyRWxlbWVudCgpKQorICAgICAgICAgICAgcm9vdFJlbGF0
aXZlQm91bmRzID0gZWxlbWVudC0+YWJzb2x1dGVFdmVudEhhbmRsZXJCb3VuZHMoaW5zaWRlRml4
ZWRQb3NpdGlvbik7CisgICAgfSBlbHNlIGlmIChpczxFbGVtZW50Pihub2RlKSkgeworICAgICAg
ICBhdXRvJiBlbGVtZW50ID0gZG93bmNhc3Q8RWxlbWVudD4obm9kZSk7CisgICAgICAgIGlmIChp
czxIVE1MQm9keUVsZW1lbnQ+KGVsZW1lbnQpKSB7CisgICAgICAgICAgICAvLyBGb3IgdGhlIGJv
ZHksIGp1c3QgdXNlIHRoZSBkb2N1bWVudCBib3VuZHMuCisgICAgICAgICAgICAvLyBUaGUgYm9k
eSBtYXkgbm90IGNvdmVyIHRoaXMgd2hvbGUgYXJlYSwgYnV0IGl0J3MgT0sgZm9yIHRoaXMgcmVn
aW9uIHRvIGJlIGFuIG92ZXJlc3RpbWF0ZS4KKyAgICAgICAgICAgIHJvb3RSZWxhdGl2ZUJvdW5k
cyA9IGFic29sdXRlRXZlbnRIYW5kbGVyQm91bmRzKGluc2lkZUZpeGVkUG9zaXRpb24pOworICAg
ICAgICB9IGVsc2UKKyAgICAgICAgICAgIHJvb3RSZWxhdGl2ZUJvdW5kcyA9IGVsZW1lbnQuYWJz
b2x1dGVFdmVudEhhbmRsZXJCb3VuZHMoaW5zaWRlRml4ZWRQb3NpdGlvbik7CisgICAgfQorCisg
ICAgaWYgKCFyb290UmVsYXRpdmVCb3VuZHMuaXNFbXB0eSgpKQorICAgICAgICByZWdpb24udW5p
dGUoUmVnaW9uKGVuY2xvc2luZ0ludFJlY3Qocm9vdFJlbGF0aXZlQm91bmRzKSkpOworCisgICAg
cmV0dXJuIFJlZ2lvbkZpeGVkUGFpcihyZWdpb24sIGluc2lkZUZpeGVkUG9zaXRpb24pOworfQor
CitEb2N1bWVudDo6UmVnaW9uRml4ZWRQYWlyIERvY3VtZW50OjphYnNvbHV0ZVJlZ2lvbkZvckV2
ZW50VGFyZ2V0cyhjb25zdCBFdmVudFRhcmdldFNldCogdGFyZ2V0cykKK3sKKyAgICBMYXlvdXRE
aXNhbGxvd2VkU2NvcGUgbGF5b3V0RGlzYWxsb3dlZFNjb3BlKExheW91dERpc2FsbG93ZWRTY29w
ZTo6UmVhc29uOjpSZWVudHJhbmN5QXZvaWRhbmNlKTsKKworICAgIGlmICghdGFyZ2V0cykKKyAg
ICAgICAgcmV0dXJuIFJlZ2lvbkZpeGVkUGFpcihSZWdpb24oKSwgZmFsc2UpOworCisgICAgUmVn
aW9uIHRhcmdldFJlZ2lvbjsKKyAgICBib29sIGluc2lkZUZpeGVkUG9zaXRpb24gPSBmYWxzZTsK
KworICAgIGZvciAoYXV0byYga2V5VmFsdWVQYWlyIDogKnRhcmdldHMpIHsKKyAgICAgICAgaWYg
KFJlZlB0ciBub2RlID0ga2V5VmFsdWVQYWlyLmtleSkgeworICAgICAgICAgICAgYXV0byB0YXJn
ZXRSZWdpb25GaXhlZFBhaXIgPSBhYnNvbHV0ZUV2ZW50UmVnaW9uRm9yTm9kZSgqbm9kZSk7Cisg
ICAgICAgICAgICB0YXJnZXRSZWdpb24udW5pdGUodGFyZ2V0UmVnaW9uRml4ZWRQYWlyLmZpcnN0
KTsKKyAgICAgICAgICAgIGluc2lkZUZpeGVkUG9zaXRpb24gfD0gdGFyZ2V0UmVnaW9uRml4ZWRQ
YWlyLnNlY29uZDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBSZWdpb25GaXhlZFBh
aXIodGFyZ2V0UmVnaW9uLCBpbnNpZGVGaXhlZFBvc2l0aW9uKTsKK30KKwordm9pZCBEb2N1bWVu
dDo6dXBkYXRlTGFzdEhhbmRsZWRVc2VyR2VzdHVyZVRpbWVzdGFtcChNb25vdG9uaWNUaW1lIHRp
bWUpCit7CisgICAgbV9sYXN0SGFuZGxlZFVzZXJHZXN0dXJlVGltZXN0YW1wID0gdGltZTsKKwor
ICAgIGlmIChzdGF0aWNfY2FzdDxib29sPih0aW1lKSAmJiBtX3NjcmlwdGVkQW5pbWF0aW9uQ29u
dHJvbGxlcikgeworICAgICAgICAvLyBJdCdzIE9LIHRvIGFsd2F5cyByZW1vdmUgTm9uSW50ZXJh
Y3RlZENyb3NzT3JpZ2luRnJhbWUgZXZlbiBpZiB0aGlzIGZyYW1lIGlzbid0IGNyb3NzLW9yaWdp
bi4KKyAgICAgICAgbV9zY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXItPnJlbW92ZVRocm90dGxp
bmdSZWFzb24oVGhyb3R0bGluZ1JlYXNvbjo6Tm9uSW50ZXJhY3RlZENyb3NzT3JpZ2luRnJhbWUp
OworICAgIH0KKworICAgIC8vIERPTSBUaW1lciBhbGlnbm1lbnQgbWF5IGRlcGVuZCBvbiB0aGUg
dXNlciBoYXZpbmcgaW50ZXJhY3RlZCB3aXRoIHRoZSBkb2N1bWVudC4KKyAgICBkaWRDaGFuZ2VU
aW1lckFsaWdubWVudEludGVydmFsKCk7CisgICAgCisgICAgaWYgKFJlZlB0ciBlbGVtZW50ID0g
b3duZXJFbGVtZW50KCkpCisgICAgICAgIGVsZW1lbnQtPmRvY3VtZW50KCkudXBkYXRlTGFzdEhh
bmRsZWRVc2VyR2VzdHVyZVRpbWVzdGFtcCh0aW1lKTsKK30KKworYm9vbCBEb2N1bWVudDo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlRm9yTWVkaWEoKSBjb25zdAoreworICAgIGlmIChVc2VyR2VzdHVy
ZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9yTWVkaWEoKSkKKyAgICAgICAgcmV0
dXJuIHRydWU7CisKKyAgICBpZiAobV91c2VyQWN0aXZhdGVkTWVkaWFGaW5pc2hlZFBsYXlpbmdU
aW1lc3RhbXAgKyBtYXhJbnRlcnZhbEZvclVzZXJHZXN0dXJlRm9yd2FyZGluZ0FmdGVyTWVkaWFG
aW5pc2hlc1BsYXlpbmcgPj0gTW9ub3RvbmljVGltZTo6bm93KCkpCisgICAgICAgIHJldHVybiB0
cnVlOworCisgICAgaWYgKHNldHRpbmdzKCkubWVkaWFVc2VyR2VzdHVyZUluaGVyaXRzRnJvbURv
Y3VtZW50KCkpCisgICAgICAgIHJldHVybiB0b3BEb2N1bWVudCgpLmhhc0hhZFVzZXJJbnRlcmFj
dGlvbigpOworCisgICAgYXV0byogbG9hZGVyID0gdGhpcy0+bG9hZGVyKCk7CisgICAgaWYgKGxv
YWRlciAmJiBsb2FkZXItPmFsbG93ZWRBdXRvcGxheVF1aXJrcygpLmNvbnRhaW5zKEF1dG9wbGF5
UXVpcms6OkluaGVyaXRlZFVzZXJHZXN0dXJlcykpCisgICAgICAgIHJldHVybiB0b3BEb2N1bWVu
dCgpLmhhc0hhZFVzZXJJbnRlcmFjdGlvbigpOworCisgICAgcmV0dXJuIGZhbHNlOworfQorCit2
b2lkIERvY3VtZW50OjpzdGFydFRyYWNraW5nU3R5bGVSZWNhbGNzKCkKK3sKKyAgICBtX3N0eWxl
UmVjYWxjQ291bnQgPSAwOworfQorCit1bnNpZ25lZCBEb2N1bWVudDo6c3R5bGVSZWNhbGNDb3Vu
dCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3R5bGVSZWNhbGNDb3VudDsKK30KKworRG9jdW1l
bnRMb2FkZXIqIERvY3VtZW50Ojpsb2FkZXIoKSBjb25zdAoreworICAgIGlmICghbV9mcmFtZSkK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgCisgICAgRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciA9IG1fZnJhbWUtPmxvYWRlcigpLmRvY3VtZW50TG9hZGVyKCk7CisgICAgaWYgKCFsb2FkZXIp
CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIAorICAgIGlmIChtX2ZyYW1lLT5kb2N1bWVu
dCgpICE9IHRoaXMpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIAorICAgIHJldHVybiBs
b2FkZXI7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OmFsbG93c0NvbnRlbnRKYXZhU2NyaXB0KCkgY29u
c3QKK3sKKyAgICAvLyBGSVhNRTogR2V0IGFsbCBTUEkgY2xpZW50cyBvZmYgb2YgdGhpcyBwb3Rl
bnRpYWxseSBkYW5nZXJvdXMgU2V0dGluZy4KKyAgICBpZiAoIXNldHRpbmdzKCkuc2NyaXB0TWFy
a3VwRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoIW1fZnJhbWUg
fHwgbV9mcmFtZS0+ZG9jdW1lbnQoKSAhPSB0aGlzKSB7CisgICAgICAgIC8vIElmIHRoaXMgRG9j
dW1lbnQgaXMgZnJhbWVsZXNzIG9yIGluIHRoZSB3cm9uZyBmcmFtZSwgaXRzIGNvbnRleHQgZG9j
dW1lbnQKKyAgICAgICAgLy8gbXVzdCBhbGxvdyBmb3IgaXQgdG8gcnVuIGNvbnRlbnQgSmF2YVNj
cmlwdC4KKyAgICAgICAgcmV0dXJuICFtX2NvbnRleHREb2N1bWVudCB8fCBtX2NvbnRleHREb2N1
bWVudC0+YWxsb3dzQ29udGVudEphdmFTY3JpcHQoKTsKKyAgICB9CisKKyAgICByZXR1cm4gbV9m
cmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuYWxsb3dzQ29udGVudEphdmFTY3JpcHRGcm9tTW9zdFJl
Y2VudE5hdmlnYXRpb24oKSA9PSBBbGxvd3NDb250ZW50SmF2YVNjcmlwdDo6WWVzOworfQorCitF
bGVtZW50KiBldmVudFRhcmdldEVsZW1lbnRGb3JEb2N1bWVudChEb2N1bWVudCogZG9jdW1lbnQp
Cit7CisgICAgaWYgKCFkb2N1bWVudCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgRWxl
bWVudCogZWxlbWVudCA9IGRvY3VtZW50LT5mb2N1c2VkRWxlbWVudCgpOworICAgIGlmICghZWxl
bWVudCAmJiBpczxQbHVnaW5Eb2N1bWVudD4oKmRvY3VtZW50KSkKKyAgICAgICAgZWxlbWVudCA9
IGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqZG9jdW1lbnQpLnBsdWdpbkVsZW1lbnQoKTsKKyAg
ICBpZiAoIWVsZW1lbnQgJiYgZG9jdW1lbnQtPmlzSFRNTERvY3VtZW50KCkpCisgICAgICAgIGVs
ZW1lbnQgPSBkb2N1bWVudC0+Ym9keU9yRnJhbWVzZXQoKTsKKyAgICBpZiAoIWVsZW1lbnQpCisg
ICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50KCk7CisgICAgcmV0dXJu
IGVsZW1lbnQ7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmNvbnZlcnRBYnNvbHV0ZVRvQ2xpZW50UXVh
ZHMoVmVjdG9yPEZsb2F0UXVhZD4mIHF1YWRzLCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCit7
CisgICAgaWYgKCF2aWV3KCkpCisgICAgICAgIHJldHVybjsKKworICAgIGNvbnN0IGF1dG8mIGZy
YW1lVmlldyA9ICp2aWV3KCk7CisgICAgZmxvYXQgaW52ZXJzZUZyYW1lU2NhbGUgPSBmcmFtZVZp
ZXcuYWJzb2x1dGVUb0RvY3VtZW50U2NhbGVGYWN0b3Ioc3R5bGUuZWZmZWN0aXZlWm9vbSgpKTsK
KyAgICBhdXRvIGRvY3VtZW50VG9DbGllbnRPZmZzZXQgPSBmcmFtZVZpZXcuZG9jdW1lbnRUb0Ns
aWVudE9mZnNldCgpOworCisgICAgZm9yIChhdXRvJiBxdWFkIDogcXVhZHMpIHsKKyAgICAgICAg
aWYgKGludmVyc2VGcmFtZVNjYWxlICE9IDEpCisgICAgICAgICAgICBxdWFkLnNjYWxlKGludmVy
c2VGcmFtZVNjYWxlKTsKKworICAgICAgICBxdWFkLm1vdmUoZG9jdW1lbnRUb0NsaWVudE9mZnNl
dCk7CisgICAgfQorfQorICAgIAordm9pZCBEb2N1bWVudDo6Y29udmVydEFic29sdXRlVG9DbGll
bnRSZWN0cyhWZWN0b3I8RmxvYXRSZWN0PiYgcmVjdHMsIGNvbnN0IFJlbmRlclN0eWxlJiBzdHls
ZSkKK3sKKyAgICBpZiAoIXZpZXcoKSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIGF1dG8m
IGZyYW1lVmlldyA9ICp2aWV3KCk7CisgICAgZmxvYXQgaW52ZXJzZUZyYW1lU2NhbGUgPSBmcmFt
ZVZpZXcuYWJzb2x1dGVUb0RvY3VtZW50U2NhbGVGYWN0b3Ioc3R5bGUuZWZmZWN0aXZlWm9vbSgp
KTsKKyAgICBhdXRvIGRvY3VtZW50VG9DbGllbnRPZmZzZXQgPSBmcmFtZVZpZXcuZG9jdW1lbnRU
b0NsaWVudE9mZnNldCgpOworICAgIAorICAgIGZvciAoYXV0byYgcmVjdCA6IHJlY3RzKSB7Cisg
ICAgICAgIGlmIChpbnZlcnNlRnJhbWVTY2FsZSAhPSAxKQorICAgICAgICAgICAgcmVjdC5zY2Fs
ZShpbnZlcnNlRnJhbWVTY2FsZSk7CisgICAgICAgIAorICAgICAgICByZWN0Lm1vdmUoZG9jdW1l
bnRUb0NsaWVudE9mZnNldCk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50Ojpjb252ZXJ0QWJz
b2x1dGVUb0NsaWVudFJlY3QoRmxvYXRSZWN0JiByZWN0LCBjb25zdCBSZW5kZXJTdHlsZSYgc3R5
bGUpCit7CisgICAgaWYgKCF2aWV3KCkpCisgICAgICAgIHJldHVybjsKKworICAgIGNvbnN0IGF1
dG8mIGZyYW1lVmlldyA9ICp2aWV3KCk7CisgICAgcmVjdCA9IGZyYW1lVmlldy5hYnNvbHV0ZVRv
RG9jdW1lbnRSZWN0KHJlY3QsIHN0eWxlLmVmZmVjdGl2ZVpvb20oKSk7IAorICAgIHJlY3QgPSBm
cmFtZVZpZXcuZG9jdW1lbnRUb0NsaWVudFJlY3QocmVjdCk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6
Omhhc0FjdGl2ZVBhcnNlcigpCit7CisgICAgcmV0dXJuIG1fYWN0aXZlUGFyc2VyQ291bnQgfHwg
KG1fcGFyc2VyICYmIG1fcGFyc2VyLT5wcm9jZXNzaW5nRGF0YSgpKTsKK30KKwordm9pZCBEb2N1
bWVudDo6ZGVjcmVtZW50QWN0aXZlUGFyc2VyQ291bnQoKQoreworICAgIC0tbV9hY3RpdmVQYXJz
ZXJDb3VudDsKKyAgICBpZiAoIWZyYW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEZJ
WE1FOiBXZSBzaG91bGQgY2FsbCBEb2N1bWVudExvYWRlcjo6Y2hlY2tMb2FkQ29tcGxldGUgYXMg
d2VsbCBoZXJlLAorICAgIC8vIGJ1dCBpdCBzZWVtcyB0byBjYXVzZSBodHRwL3Rlc3RzL3NlY3Vy
aXR5L2ZlZWQtdXJscy1mcm9tLXJlbW90ZS5odG1sCisgICAgLy8gdG8gdGltZW91dCBvbiBNYWMg
V0sxOyBzZWUgaHR0cDovL3dlYmtpdC5vcmcvYi8xMTA1NTQgYW5kIGh0dHA6Ly93ZWJraXQub3Jn
L2IvMTEwNDAxLgorICAgIGZyYW1lKCktPmxvYWRlcigpLmNoZWNrTG9hZENvbXBsZXRlKCk7Cit9
CisKK0RvY3VtZW50UGFyc2VyWWllbGRUb2tlbjo6RG9jdW1lbnRQYXJzZXJZaWVsZFRva2VuKERv
Y3VtZW50JiBkb2N1bWVudCkKKyAgICA6IG1fZG9jdW1lbnQobWFrZVdlYWtQdHIoZG9jdW1lbnQp
KQoreworICAgIGlmICgrK2RvY3VtZW50Lm1fcGFyc2VyWWllbGRUb2tlbkNvdW50ICE9IDEpCisg
ICAgICAgIHJldHVybjsKKworICAgIGRvY3VtZW50LnNjcmlwdFJ1bm5lcigpLmRpZEJlZ2luWWll
bGRpbmdQYXJzZXIoKTsKKyAgICBpZiAoUmVmUHRyIHBhcnNlciA9IGRvY3VtZW50LnBhcnNlcigp
KQorICAgICAgICBwYXJzZXItPmRpZEJlZ2luWWllbGRpbmdQYXJzZXIoKTsKK30KKworRG9jdW1l
bnRQYXJzZXJZaWVsZFRva2VuOjp+RG9jdW1lbnRQYXJzZXJZaWVsZFRva2VuKCkKK3sKKyAgICBp
ZiAoIW1fZG9jdW1lbnQpCisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChtX2RvY3VtZW50
LT5tX3BhcnNlcllpZWxkVG9rZW5Db3VudCk7CisgICAgaWYgKC0tbV9kb2N1bWVudC0+bV9wYXJz
ZXJZaWVsZFRva2VuQ291bnQpCisgICAgICAgIHJldHVybjsKKworICAgIG1fZG9jdW1lbnQtPnNj
cmlwdFJ1bm5lcigpLmRpZEVuZFlpZWxkaW5nUGFyc2VyKCk7CisgICAgaWYgKFJlZlB0ciBwYXJz
ZXIgPSBtX2RvY3VtZW50LT5wYXJzZXIoKSkKKyAgICAgICAgcGFyc2VyLT5kaWRFbmRZaWVsZGlu
Z1BhcnNlcigpOworfQorCitzdGF0aWMgRWxlbWVudCogZmluZE5lYXJlc3RDb21tb25Db21wb3Nl
ZEFuY2VzdG9yKEVsZW1lbnQqIGVsZW1lbnRBLCBFbGVtZW50KiBlbGVtZW50QikKK3sKKyAgICBp
ZiAoIWVsZW1lbnRBIHx8ICFlbGVtZW50QikKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBpZiAoZWxlbWVudEEgPT0gZWxlbWVudEIpCisgICAgICAgIHJldHVybiBlbGVtZW50QTsKKwor
ICAgIEhhc2hTZXQ8RWxlbWVudCo+IGFuY2VzdG9yQ2hhaW47CisgICAgZm9yIChhdXRvKiBlbGVt
ZW50ID0gZWxlbWVudEE7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50LT5wYXJlbnRFbGVtZW50
SW5Db21wb3NlZFRyZWUoKSkKKyAgICAgICAgYW5jZXN0b3JDaGFpbi5hZGQoZWxlbWVudCk7CisK
KyAgICBmb3IgKGF1dG8qIGVsZW1lbnQgPSBlbGVtZW50QjsgZWxlbWVudDsgZWxlbWVudCA9IGVs
ZW1lbnQtPnBhcmVudEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpKSB7CisgICAgICAgIGlmIChhbmNl
c3RvckNoYWluLmNvbnRhaW5zKGVsZW1lbnQpKQorICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7
CisgICAgfQorICAgIHJldHVybiBudWxscHRyOworfQorCit2b2lkIERvY3VtZW50Ojp1cGRhdGVI
b3ZlckFjdGl2ZVN0YXRlKGNvbnN0IEhpdFRlc3RSZXF1ZXN0JiByZXF1ZXN0LCBFbGVtZW50KiBp
bm5lckVsZW1lbnQsIENhcHR1cmVDaGFuZ2UgY2FwdHVyZUVsZW1lbnRDaGFuZ2VkKQoreworICAg
IEFTU0VSVCghcmVxdWVzdC5yZWFkT25seSgpKTsKKworICAgIFZlY3RvcjxSZWZQdHI8RWxlbWVu
dD4sIDMyPiBlbGVtZW50c1RvQ2xlYXJBY3RpdmU7CisgICAgVmVjdG9yPFJlZlB0cjxFbGVtZW50
PiwgMzI+IGVsZW1lbnRzVG9TZXRBY3RpdmU7CisgICAgVmVjdG9yPFJlZlB0cjxFbGVtZW50Piwg
MzI+IGVsZW1lbnRzVG9DbGVhckhvdmVyOworICAgIFZlY3RvcjxSZWZQdHI8RWxlbWVudD4sIDMy
PiBlbGVtZW50c1RvU2V0SG92ZXI7CisKKyAgICBSZWZQdHIgaW5uZXJFbGVtZW50SW5Eb2N1bWVu
dCA9IGlubmVyRWxlbWVudDsKKyAgICB3aGlsZSAoaW5uZXJFbGVtZW50SW5Eb2N1bWVudCAmJiAm
aW5uZXJFbGVtZW50SW5Eb2N1bWVudC0+ZG9jdW1lbnQoKSAhPSB0aGlzKSB7CisgICAgICAgIGlu
bmVyRWxlbWVudEluRG9jdW1lbnQtPmRvY3VtZW50KCkudXBkYXRlSG92ZXJBY3RpdmVTdGF0ZShy
ZXF1ZXN0LCBpbm5lckVsZW1lbnRJbkRvY3VtZW50LmdldCgpKTsKKyAgICAgICAgaW5uZXJFbGVt
ZW50SW5Eb2N1bWVudCA9IGlubmVyRWxlbWVudEluRG9jdW1lbnQtPmRvY3VtZW50KCkub3duZXJF
bGVtZW50KCk7CisgICAgfQorCisgICAgUmVmUHRyIG9sZEFjdGl2ZUVsZW1lbnQgPSBtX2FjdGl2
ZUVsZW1lbnQuZ2V0KCk7CisgICAgaWYgKG9sZEFjdGl2ZUVsZW1lbnQgJiYgIXJlcXVlc3QuYWN0
aXZlKCkpIHsKKyAgICAgICAgLy8gV2UgYXJlIGNsZWFyaW5nIHRoZSA6YWN0aXZlIGNoYWluIGJl
Y2F1c2UgdGhlIG1vdXNlIGhhcyBiZWVuIHJlbGVhc2VkLgorICAgICAgICBmb3IgKFJlZlB0ciBj
dXJyZW50RWxlbWVudCA9IG9sZEFjdGl2ZUVsZW1lbnQ7IGN1cnJlbnRFbGVtZW50OyBjdXJyZW50
RWxlbWVudCA9IGN1cnJlbnRFbGVtZW50LT5wYXJlbnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkg
eworICAgICAgICAgICAgZWxlbWVudHNUb0NsZWFyQWN0aXZlLmFwcGVuZChjdXJyZW50RWxlbWVu
dCk7CisgICAgICAgICAgICBtX3VzZXJBY3Rpb25FbGVtZW50cy5zZXRJbkFjdGl2ZUNoYWluKCpj
dXJyZW50RWxlbWVudCwgZmFsc2UpOworICAgICAgICB9CisgICAgICAgIG1fYWN0aXZlRWxlbWVu
dCA9IG51bGxwdHI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgUmVmUHRyIG5ld0FjdGl2ZUVsZW1l
bnQgPSBpbm5lckVsZW1lbnRJbkRvY3VtZW50OworICAgICAgICBpZiAoIW9sZEFjdGl2ZUVsZW1l
bnQgJiYgbmV3QWN0aXZlRWxlbWVudCAmJiByZXF1ZXN0LmFjdGl2ZSgpICYmICFyZXF1ZXN0LnRv
dWNoTW92ZSgpKSB7CisgICAgICAgICAgICAvLyBXZSBhcmUgc2V0dGluZyB0aGUgOmFjdGl2ZSBj
aGFpbiBhbmQgZnJlZXppbmcgaXQuIElmIGZ1dHVyZSBtb3ZlcyBoYXBwZW4sIHRoZXkKKyAgICAg
ICAgICAgIC8vIHdpbGwgbmVlZCB0byByZWZlcmVuY2UgdGhpcyBjaGFpbi4KKyAgICAgICAgICAg
IGZvciAoUmVuZGVyRWxlbWVudCogY3VyciA9IG5ld0FjdGl2ZUVsZW1lbnQtPnJlbmRlcmVyKCk7
IGN1cnI7IGN1cnIgPSBjdXJyLT5wYXJlbnQoKSkgeworICAgICAgICAgICAgICAgIFJlZlB0ciBl
bGVtZW50ID0gY3Vyci0+ZWxlbWVudCgpOworICAgICAgICAgICAgICAgIGlmICghZWxlbWVudCB8
fCBjdXJyLT5pc1RleHRPckxpbmVCcmVhaygpKQorICAgICAgICAgICAgICAgICAgICBjb250aW51
ZTsKKyAgICAgICAgICAgICAgICBtX3VzZXJBY3Rpb25FbGVtZW50cy5zZXRJbkFjdGl2ZUNoYWlu
KCplbGVtZW50LCB0cnVlKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgbV9hY3RpdmVF
bGVtZW50ID0gbmV3QWN0aXZlRWxlbWVudDsKKyAgICAgICAgfQorICAgIH0KKyAgICAvLyBJZiB0
aGUgbW91c2UgaGFzIGp1c3QgYmVlbiBwcmVzc2VkLCBzZXQgOmFjdGl2ZSBvbiB0aGUgY2hhaW4u
IFRob3NlIChhbmQgb25seSB0aG9zZSkKKyAgICAvLyBub2RlcyBzaG91bGQgcmVtYWluIDphY3Rp
dmUgdW50aWwgdGhlIG1vdXNlIGlzIHJlbGVhc2VkLgorICAgIGJvb2wgYWxsb3dBY3RpdmVDaGFu
Z2VzID0gIW9sZEFjdGl2ZUVsZW1lbnQgJiYgbV9hY3RpdmVFbGVtZW50OworCisgICAgLy8gSWYg
dGhlIG1vdXNlIGlzIGRvd24gYW5kIGlmIHRoaXMgaXMgYSBtb3VzZSBtb3ZlIGV2ZW50LCB3ZSB3
YW50IHRvIHJlc3RyaWN0IGNoYW5nZXMgaW4KKyAgICAvLyA6aG92ZXIvOmFjdGl2ZSB0byBvbmx5
IGFwcGx5IHRvIGVsZW1lbnRzIHRoYXQgYXJlIGluIHRoZSA6YWN0aXZlIGNoYWluIHRoYXQgd2Ug
ZnJvemUKKyAgICAvLyBhdCB0aGUgdGltZSB0aGUgbW91c2Ugd2VudCBkb3duLCB1bmxlc3MgdGhl
IGNhcHR1cmUgZWxlbWVudCBjaGFuZ2VkLgorICAgIGJvb2wgbXVzdEJlSW5BY3RpdmVDaGFpbiA9
IHJlcXVlc3QuYWN0aXZlKCkgJiYgcmVxdWVzdC5tb3ZlKCkgJiYgY2FwdHVyZUVsZW1lbnRDaGFu
Z2VkID09IENhcHR1cmVDaGFuZ2U6Ok5vOworCisgICAgUmVmUHRyPEVsZW1lbnQ+IG9sZEhvdmVy
ZWRFbGVtZW50ID0gV1RGTW92ZShtX2hvdmVyZWRFbGVtZW50KTsKKworICAgIC8vIEEgdG91Y2gg
cmVsZWFzZSBkb2VzIG5vdCBzZXQgYSBuZXcgaG92ZXIgdGFyZ2V0OyBjbGVhcmluZyB0aGUgZWxl
bWVudCB3ZSdyZSB3b3JraW5nIHdpdGgKKyAgICAvLyB3aWxsIGNsZWFyIHRoZSBjaGFpbiBvZiBo
b3ZlcmVkIGVsZW1lbnRzIGFsbCB0aGUgd2F5IHRvIHRoZSB0b3Agb2YgdGhlIHRyZWUuCisgICAg
aWYgKHJlcXVlc3QudG91Y2hSZWxlYXNlKCkpCisgICAgICAgIGlubmVyRWxlbWVudEluRG9jdW1l
bnQgPSBudWxscHRyOworCisgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHRoZSBob3ZlcmVkIEVsZW1l
bnQgaGFzIGNoYW5nZWQuCisgICAgLy8gSWYgaXQgaGFzbid0LCB3ZSBkbyBub3QgbmVlZCB0byBk
byBhbnl0aGluZy4KKyAgICBSZWZQdHIgbmV3SG92ZXJlZEVsZW1lbnQgPSBpbm5lckVsZW1lbnRJ
bkRvY3VtZW50OworICAgIHdoaWxlIChuZXdIb3ZlcmVkRWxlbWVudCAmJiAhbmV3SG92ZXJlZEVs
ZW1lbnQtPnJlbmRlcmVyKCkpCisgICAgICAgIG5ld0hvdmVyZWRFbGVtZW50ID0gbmV3SG92ZXJl
ZEVsZW1lbnQtPnBhcmVudEVsZW1lbnRJbkNvbXBvc2VkVHJlZSgpOworCisgICAgbV9ob3ZlcmVk
RWxlbWVudCA9IG5ld0hvdmVyZWRFbGVtZW50OworCisgICAgUmVmUHRyIGNvbW1vbkFuY2VzdG9y
ID0gZmluZE5lYXJlc3RDb21tb25Db21wb3NlZEFuY2VzdG9yKG9sZEhvdmVyZWRFbGVtZW50Lmdl
dCgpLCBuZXdIb3ZlcmVkRWxlbWVudC5nZXQoKSk7CisKKyAgICBpZiAob2xkSG92ZXJlZEVsZW1l
bnQgIT0gbmV3SG92ZXJlZEVsZW1lbnQpIHsKKyAgICAgICAgZm9yIChhdXRvKiBlbGVtZW50ID0g
b2xkSG92ZXJlZEVsZW1lbnQuZ2V0KCk7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50LT5wYXJl
bnRFbGVtZW50SW5Db21wb3NlZFRyZWUoKSkgeworICAgICAgICAgICAgaWYgKGVsZW1lbnQgPT0g
Y29tbW9uQW5jZXN0b3IpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAo
bXVzdEJlSW5BY3RpdmVDaGFpbiAmJiAhZWxlbWVudC0+aXNJbkFjdGl2ZUNoYWluKCkpCisgICAg
ICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBlbGVtZW50c1RvQ2xlYXJIb3Zlci5h
cHBlbmQoZWxlbWVudCk7CisgICAgICAgIH0KKyAgICAgICAgLy8gVW5zZXQgaG92ZXJlZCBub2Rl
cyBpbiBzdWIgZnJhbWUgZG9jdW1lbnRzIGlmIHRoZSBvbGQgaG92ZXJlZCBub2RlIHdhcyBhIGZy
YW1lIG93bmVyLgorICAgICAgICBpZiAoaXM8SFRNTEZyYW1lT3duZXJFbGVtZW50PihvbGRIb3Zl
cmVkRWxlbWVudCkpIHsKKyAgICAgICAgICAgIGlmIChSZWZQdHIgY29udGVudERvY3VtZW50ID0g
ZG93bmNhc3Q8SFRNTEZyYW1lT3duZXJFbGVtZW50Pigqb2xkSG92ZXJlZEVsZW1lbnQpLmNvbnRl
bnREb2N1bWVudCgpKQorICAgICAgICAgICAgICAgIGNvbnRlbnREb2N1bWVudC0+dXBkYXRlSG92
ZXJBY3RpdmVTdGF0ZShyZXF1ZXN0LCBudWxscHRyKTsKKyAgICAgICAgfQorICAgIH0KKworICAg
IGJvb2wgc2F3Q29tbW9uQW5jZXN0b3IgPSBmYWxzZTsKKyAgICBmb3IgKFJlZlB0ciBlbGVtZW50
ID0gbmV3SG92ZXJlZEVsZW1lbnQ7IGVsZW1lbnQ7IGVsZW1lbnQgPSBlbGVtZW50LT5wYXJlbnRF
bGVtZW50SW5Db21wb3NlZFRyZWUoKSkgeworICAgICAgICBpZiAobXVzdEJlSW5BY3RpdmVDaGFp
biAmJiAhZWxlbWVudC0+aXNJbkFjdGl2ZUNoYWluKCkpCisgICAgICAgICAgICBjb250aW51ZTsK
KyAgICAgICAgaWYgKGFsbG93QWN0aXZlQ2hhbmdlcykKKyAgICAgICAgICAgIGVsZW1lbnRzVG9T
ZXRBY3RpdmUuYXBwZW5kKGVsZW1lbnQpOworICAgICAgICBpZiAoZWxlbWVudCA9PSBjb21tb25B
bmNlc3RvcikKKyAgICAgICAgICAgIHNhd0NvbW1vbkFuY2VzdG9yID0gdHJ1ZTsKKyAgICAgICAg
aWYgKCFzYXdDb21tb25BbmNlc3RvcikKKyAgICAgICAgICAgIGVsZW1lbnRzVG9TZXRIb3Zlci5h
cHBlbmQoZWxlbWVudCk7CisgICAgfQorCisgICAgYXV0byBjaGFuZ2VTdGF0ZSA9IFtdKGF1dG8m
IGVsZW1lbnRzLCBhdXRvIHBzZXVkb0NsYXNzVHlwZSwgYXV0byYmIHNldHRlcikgeworICAgICAg
ICBpZiAoZWxlbWVudHMuaXNFbXB0eSgpKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBT
dHlsZTo6UHNldWRvQ2xhc3NDaGFuZ2VJbnZhbGlkYXRpb24gc3R5bGVJbnZhbGlkYXRpb24geyAq
ZWxlbWVudHMubGFzdCgpLCBwc2V1ZG9DbGFzc1R5cGUsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29w
ZTo6RGVzY2VuZGFudHMgfTsKKyAgICAgICAgZm9yIChhdXRvJiBlbGVtZW50IDogZWxlbWVudHMp
CisgICAgICAgICAgICBzZXR0ZXIoKmVsZW1lbnQpOworICAgIH07CisKKyAgICBjaGFuZ2VTdGF0
ZShlbGVtZW50c1RvQ2xlYXJBY3RpdmUsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0FjdGl2ZSwg
W10oYXV0byYgZWxlbWVudCkgeworICAgICAgICBlbGVtZW50LnNldEFjdGl2ZShmYWxzZSwgZmFs
c2UsIFN0eWxlOjpJbnZhbGlkYXRpb25TY29wZTo6U2VsZkNoaWxkcmVuQW5kU2libGluZ3MpOwor
ICAgIH0pOworICAgIGNoYW5nZVN0YXRlKGVsZW1lbnRzVG9TZXRBY3RpdmUsIENTU1NlbGVjdG9y
OjpQc2V1ZG9DbGFzc0FjdGl2ZSwgW10oYXV0byYgZWxlbWVudCkgeworICAgICAgICBlbGVtZW50
LnNldEFjdGl2ZSh0cnVlLCBmYWxzZSwgU3R5bGU6OkludmFsaWRhdGlvblNjb3BlOjpTZWxmQ2hp
bGRyZW5BbmRTaWJsaW5ncyk7CisgICAgfSk7CisgICAgY2hhbmdlU3RhdGUoZWxlbWVudHNUb0Ns
ZWFySG92ZXIsIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvdmVyLCBbXShhdXRvJiBlbGVtZW50
KSB7CisgICAgICAgIGVsZW1lbnQuc2V0SG92ZXJlZChmYWxzZSwgU3R5bGU6OkludmFsaWRhdGlv
blNjb3BlOjpTZWxmQ2hpbGRyZW5BbmRTaWJsaW5ncyk7CisgICAgfSk7CisgICAgY2hhbmdlU3Rh
dGUoZWxlbWVudHNUb1NldEhvdmVyLCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NIb3ZlciwgW10o
YXV0byYgZWxlbWVudCkgeworICAgICAgICBlbGVtZW50LnNldEhvdmVyZWQodHJ1ZSwgU3R5bGU6
OkludmFsaWRhdGlvblNjb3BlOjpTZWxmQ2hpbGRyZW5BbmRTaWJsaW5ncyk7CisgICAgfSk7Cit9
CisKK2Jvb2wgRG9jdW1lbnQ6OmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpIGNvbnN0Cit7CisgICAg
cmV0dXJuICFzdHlsZVNjb3BlKCkuaGFzUGVuZGluZ1NoZWV0cygpIHx8IG1faWdub3JlUGVuZGlu
Z1N0eWxlc2hlZXRzOworfQorCitMb2NhbGUmIERvY3VtZW50OjpnZXRDYWNoZWRMb2NhbGUoY29u
c3QgQXRvbVN0cmluZyYgbG9jYWxlKQoreworICAgIEF0b21TdHJpbmcgbG9jYWxlS2V5ID0gbG9j
YWxlOworICAgIGlmIChsb2NhbGUuaXNFbXB0eSgpIHx8ICFzZXR0aW5ncygpLmxhbmdBdHRyaWJ1
dGVBd2FyZUZvcm1Db250cm9sVUlFbmFibGVkKCkpCisgICAgICAgIGxvY2FsZUtleSA9IGRlZmF1
bHRMYW5ndWFnZSgpOworICAgIExvY2FsZUlkZW50aWZpZXJUb0xvY2FsZU1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fbG9jYWxlQ2FjaGUuYWRkKGxvY2FsZUtleSwgbnVsbHB0cik7CisgICAgaWYg
KHJlc3VsdC5pc05ld0VudHJ5KQorICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gTG9j
YWxlOjpjcmVhdGUobG9jYWxlS2V5KTsKKyAgICByZXR1cm4gKihyZXN1bHQuaXRlcmF0b3ItPnZh
bHVlKTsKK30KKworRG9jdW1lbnQmIERvY3VtZW50OjplbnN1cmVUZW1wbGF0ZURvY3VtZW50KCkK
K3sKKyAgICBpZiAoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50ID0gdGVtcGxhdGVEb2N1bWVudCgp
KQorICAgICAgICByZXR1cm4gY29uc3RfY2FzdDxEb2N1bWVudCY+KCpkb2N1bWVudCk7CisKKyAg
ICBpZiAoaXNIVE1MRG9jdW1lbnQoKSkKKyAgICAgICAgbV90ZW1wbGF0ZURvY3VtZW50ID0gSFRN
TERvY3VtZW50OjpjcmVhdGUobnVsbHB0ciwgbV9zZXR0aW5ncywgYWJvdXRCbGFua1VSTCgpKTsK
KyAgICBlbHNlCisgICAgICAgIG1fdGVtcGxhdGVEb2N1bWVudCA9IGNyZWF0ZShtX3NldHRpbmdz
LCBhYm91dEJsYW5rVVJMKCkpOworCisgICAgbV90ZW1wbGF0ZURvY3VtZW50LT5zZXRDb250ZXh0
RG9jdW1lbnQoY29udGV4dERvY3VtZW50KCkpOworICAgIG1fdGVtcGxhdGVEb2N1bWVudC0+c2V0
VGVtcGxhdGVEb2N1bWVudEhvc3QodGhpcyk7IC8vIGJhbGFuY2VkIGluIGR0b3IuCisKKyAgICBy
ZXR1cm4gKm1fdGVtcGxhdGVEb2N1bWVudDsKK30KKworUmVmPERvY3VtZW50RnJhZ21lbnQ+IERv
Y3VtZW50Ojpkb2N1bWVudEZyYWdtZW50Rm9ySW5uZXJPdXRlckhUTUwoKQoreworICAgIGlmIChV
TkxJS0VMWSghbV9kb2N1bWVudEZyYWdtZW50Rm9ySW5uZXJPdXRlckhUTUwpKSB7CisgICAgICAg
IG1fZG9jdW1lbnRGcmFnbWVudEZvcklubmVyT3V0ZXJIVE1MID0gRG9jdW1lbnRGcmFnbWVudDo6
Y3JlYXRlKCp0aGlzKTsKKyAgICAgICAgbV9kb2N1bWVudEZyYWdtZW50Rm9ySW5uZXJPdXRlckhU
TUwtPnNldElzRG9jdW1lbnRGcmFnbWVudEZvcklubmVyT3V0ZXJIVE1MKCk7CisgICAgfSBlbHNl
IGlmIChVTkxJS0VMWShtX2RvY3VtZW50RnJhZ21lbnRGb3JJbm5lck91dGVySFRNTC0+aGFzQ2hp
bGROb2RlcygpKSkKKyAgICAgICAgbV9kb2N1bWVudEZyYWdtZW50Rm9ySW5uZXJPdXRlckhUTUwt
PnJlbW92ZUNoaWxkcmVuKCk7CisgICAgcmV0dXJuICptX2RvY3VtZW50RnJhZ21lbnRGb3JJbm5l
ck91dGVySFRNTDsKK30KKworUmVmPEZvbnRGYWNlU2V0PiBEb2N1bWVudDo6Zm9udHMoKQorewor
ICAgIHJldHVybiBmb250U2VsZWN0b3IoKS5mb250RmFjZVNldCgpOworfQorICAgIAorRWRpdGlu
Z0JlaGF2aW9yIERvY3VtZW50OjplZGl0aW5nQmVoYXZpb3IoKSBjb25zdAoreworICAgIHJldHVy
biBFZGl0aW5nQmVoYXZpb3IgeyBzZXR0aW5ncygpLmVkaXRpbmdCZWhhdmlvclR5cGUoKSB9Owor
fQorCitmbG9hdCBEb2N1bWVudDo6ZGV2aWNlU2NhbGVGYWN0b3IoKSBjb25zdAoreworICAgIGZs
b2F0IGRldmljZVNjYWxlRmFjdG9yID0gMS4wOworICAgIGlmIChQYWdlKiBkb2N1bWVudFBhZ2Ug
PSBwYWdlKCkpCisgICAgICAgIGRldmljZVNjYWxlRmFjdG9yID0gZG9jdW1lbnRQYWdlLT5kZXZp
Y2VTY2FsZUZhY3RvcigpOworICAgIHJldHVybiBkZXZpY2VTY2FsZUZhY3RvcjsKK30KKworYm9v
bCBEb2N1bWVudDo6dXNlU3lzdGVtQXBwZWFyYW5jZSgpIGNvbnN0Cit7CisgICAgaWYgKGF1dG8q
IGRvY3VtZW50UGFnZSA9IHBhZ2UoKSkKKyAgICAgICAgcmV0dXJuIGRvY3VtZW50UGFnZS0+dXNl
U3lzdGVtQXBwZWFyYW5jZSgpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBEb2N1bWVu
dDo6dXNlRGFya0FwcGVhcmFuY2UoY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlKSBjb25zdAorewor
I2lmIEVOQUJMRShEQVJLX01PREVfQ1NTKQorICAgIE9wdGlvblNldDxDb2xvclNjaGVtZT4gY29s
b3JTY2hlbWU7CisKKyAgICAvLyBVc2UgdGhlIHN0eWxlJ3Mgc3VwcG9ydGVkIGNvbG9yIHNjaGVt
ZXMsIGlmIHN1cHBsaWVkLgorICAgIGlmIChzdHlsZSkKKyAgICAgICAgY29sb3JTY2hlbWUgPSBz
dHlsZS0+Y29sb3JTY2hlbWUoKS5jb2xvclNjaGVtZSgpOworCisgICAgLy8gRmFsbGJhY2sgdG8g
dGhlIGRvY3VtZW50J3Mgc3VwcG9ydGVkIGNvbG9yIHNjaGVtZXMgaWYgc3R5bGUgd2FzIGVtcHR5
IChhdXRvKS4KKyAgICBpZiAoY29sb3JTY2hlbWUuaXNFbXB0eSgpKQorICAgICAgICBjb2xvclNj
aGVtZSA9IG1fY29sb3JTY2hlbWU7CisKKyAgICBpZiAoY29sb3JTY2hlbWUuY29udGFpbnMoQ29s
b3JTY2hlbWU6OkRhcmspICYmICFjb2xvclNjaGVtZS5jb250YWlucyhDb2xvclNjaGVtZTo6TGln
aHQpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKHN0eWxl
KTsKKyNlbmRpZgorCisgICAgYm9vbCBwYWdlVXNlc0RhcmtBcHBlYXJhbmNlID0gZmFsc2U7Cisg
ICAgaWYgKFBhZ2UqIGRvY3VtZW50UGFnZSA9IHBhZ2UoKSkKKyAgICAgICAgcGFnZVVzZXNEYXJr
QXBwZWFyYW5jZSA9IGRvY3VtZW50UGFnZS0+dXNlRGFya0FwcGVhcmFuY2UoKTsKKworICAgIGlm
ICh1c2VTeXN0ZW1BcHBlYXJhbmNlKCkpCisgICAgICAgIHJldHVybiBwYWdlVXNlc0RhcmtBcHBl
YXJhbmNlOworCisjaWYgRU5BQkxFKERBUktfTU9ERV9DU1MpCisgICAgaWYgKGNvbG9yU2NoZW1l
LmNvbnRhaW5zKENvbG9yU2NoZW1lOjpEYXJrKSkKKyAgICAgICAgcmV0dXJuIHBhZ2VVc2VzRGFy
a0FwcGVhcmFuY2U7CisjZW5kaWYKKworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBEb2N1
bWVudDo6dXNlRWxldmF0ZWRVc2VySW50ZXJmYWNlTGV2ZWwoKSBjb25zdAoreworICAgIGlmIChh
dXRvKiBkb2N1bWVudFBhZ2UgPSBwYWdlKCkpCisgICAgICAgIHJldHVybiBkb2N1bWVudFBhZ2Ut
PnVzZUVsZXZhdGVkVXNlckludGVyZmFjZUxldmVsKCk7CisgICAgcmV0dXJuIGZhbHNlOworfQor
CitPcHRpb25TZXQ8U3R5bGVDb2xvcjo6T3B0aW9ucz4gRG9jdW1lbnQ6OnN0eWxlQ29sb3JPcHRp
b25zKGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QKK3sKKyAgICBPcHRpb25TZXQ8U3R5
bGVDb2xvcjo6T3B0aW9ucz4gb3B0aW9uczsKKyAgICBpZiAodXNlU3lzdGVtQXBwZWFyYW5jZSgp
KQorICAgICAgICBvcHRpb25zLmFkZChTdHlsZUNvbG9yOjpPcHRpb25zOjpVc2VTeXN0ZW1BcHBl
YXJhbmNlKTsKKyAgICBpZiAodXNlRGFya0FwcGVhcmFuY2Uoc3R5bGUpKQorICAgICAgICBvcHRp
b25zLmFkZChTdHlsZUNvbG9yOjpPcHRpb25zOjpVc2VEYXJrQXBwZWFyYW5jZSk7CisgICAgaWYg
KHVzZUVsZXZhdGVkVXNlckludGVyZmFjZUxldmVsKCkpCisgICAgICAgIG9wdGlvbnMuYWRkKFN0
eWxlQ29sb3I6Ok9wdGlvbnM6OlVzZUVsZXZhdGVkVXNlckludGVyZmFjZUxldmVsKTsKKyAgICBy
ZXR1cm4gb3B0aW9uczsKK30KKworQ29tcG9zaXRlT3BlcmF0b3IgRG9jdW1lbnQ6OmNvbXBvc2l0
ZU9wZXJhdG9yRm9yQmFja2dyb3VuZENvbG9yKGNvbnN0IENvbG9yJiBjb2xvciwgY29uc3QgUmVu
ZGVyT2JqZWN0JiByZW5kZXJlcikgY29uc3QKK3sKKyAgICBpZiAoTElLRUxZKCFzZXR0aW5ncygp
LnB1bmNoT3V0V2hpdGVCYWNrZ3JvdW5kc0luRGFya01vZGUoKSB8fCAhQ29sb3I6OmlzV2hpdGVD
b2xvcihjb2xvcikgfHwgIXJlbmRlcmVyLnVzZURhcmtBcHBlYXJhbmNlKCkpKQorICAgICAgICBy
ZXR1cm4gQ29tcG9zaXRlT3BlcmF0b3I6OlNvdXJjZU92ZXI7CisKKyAgICBhdXRvKiBmcmFtZVZp
ZXcgPSB2aWV3KCk7CisgICAgaWYgKCFmcmFtZVZpZXcpCisgICAgICAgIHJldHVybiBDb21wb3Np
dGVPcGVyYXRvcjo6U291cmNlT3ZlcjsKKworICAgIC8vIE1haWwgb24gbWFjT1MgdXNlcyBhIHRy
YW5zcGFyZW50IHZpZXcsIGFuZCBvbiBpT1MgaXQgaXMgYW4gb3BhcXVlIHZpZXcuIFdlIG5lZWQg
dG8KKyAgICAvLyB1c2UgZGlmZmVyZW50IGNvbXBvc2l0ZSBtb2RlcyB0byBnZXQgdGhlIHJpZ2h0
IHJlc3VsdHMgaW4gdGhpcyBjYXNlLgorICAgIHJldHVybiBmcmFtZVZpZXctPmlzVHJhbnNwYXJl
bnQoKSA/IENvbXBvc2l0ZU9wZXJhdG9yOjpEZXN0aW5hdGlvbk91dCA6IENvbXBvc2l0ZU9wZXJh
dG9yOjpEZXN0aW5hdGlvbkluOworfQorCit2b2lkIERvY3VtZW50OjpkaWRBc3NvY2lhdGVGb3Jt
Q29udHJvbChFbGVtZW50JiBlbGVtZW50KQoreworICAgIGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdl
KCk7CisgICAgaWYgKCFwYWdlIHx8ICFwYWdlLT5jaHJvbWUoKS5jbGllbnQoKS5zaG91bGROb3Rp
ZnlPbkZvcm1DaGFuZ2VzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gaXNOZXdFbnRy
eSA9IG1fYXNzb2NpYXRlZEZvcm1Db250cm9scy5hZGQoJmVsZW1lbnQpLmlzTmV3RW50cnk7Cisg
ICAgaWYgKGlzTmV3RW50cnkgJiYgIW1fZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXIuaXNB
Y3RpdmUoKSkKKyAgICAgICAgbV9kaWRBc3NvY2lhdGVGb3JtQ29udHJvbHNUaW1lci5zdGFydE9u
ZVNob3QoaXNUb3BEb2N1bWVudCgpIHx8IGhhc0hhZFVzZXJJbnRlcmFjdGlvbigpID8gMF9zIDog
MV9zKTsKK30KKwordm9pZCBEb2N1bWVudDo6ZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzVGltZXJG
aXJlZCgpCit7CisgICAgVmVjdG9yPFJlZlB0cjxFbGVtZW50Pj4gY29udHJvbHM7CisgICAgY29u
dHJvbHMucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2Fzc29jaWF0ZWRGb3JtQ29udHJvbHMuY29t
cHV0ZVNpemUoKSk7CisgICAgZm9yIChhdXRvJiBlbGVtZW50IDogc3RkOjpleGNoYW5nZShtX2Fz
c29jaWF0ZWRGb3JtQ29udHJvbHMsIHsgfSkpIHsKKyAgICAgICAgaWYgKGVsZW1lbnQuaXNDb25u
ZWN0ZWQoKSkKKyAgICAgICAgICAgIGNvbnRyb2xzLnVuY2hlY2tlZEFwcGVuZCgmZWxlbWVudCk7
CisgICAgfQorCisgICAgaWYgKGF1dG8gcGFnZSA9IHRoaXMtPnBhZ2UoKTsgcGFnZSAmJiAhY29u
dHJvbHMuaXNFbXB0eSgpKSB7CisgICAgICAgIEFTU0VSVChtX2ZyYW1lKTsKKyAgICAgICAgcGFn
ZS0+Y2hyb21lKCkuY2xpZW50KCkuZGlkQXNzb2NpYXRlRm9ybUNvbnRyb2xzKGNvbnRyb2xzLCAq
bV9mcmFtZSk7CisgICAgfQorfQorCit2b2lkIERvY3VtZW50OjpzZXRDYWNoZWRET01Db29raWVz
KGNvbnN0IFN0cmluZyYgY29va2llcykKK3sKKyAgICBBU1NFUlQoIWlzRE9NQ29va2llQ2FjaGVW
YWxpZCgpKTsKKyAgICBtX2NhY2hlZERPTUNvb2tpZXMgPSBjb29raWVzOworICAgIC8vIFRoZSBj
b29raWUgY2FjaGUgaXMgdmFsaWQgYXQgbW9zdCB1bnRpbCB3ZSBnbyBiYWNrIHRvIHRoZSBldmVu
dCBsb29wLgorICAgIG1fY29va2llQ2FjaGVFeHBpcnlUaW1lci5zdGFydE9uZVNob3QoMF9zKTsK
K30KKwordm9pZCBEb2N1bWVudDo6aW52YWxpZGF0ZURPTUNvb2tpZUNhY2hlKCkKK3sKKyAgICBt
X2Nvb2tpZUNhY2hlRXhwaXJ5VGltZXIuc3RvcCgpOworICAgIG1fY2FjaGVkRE9NQ29va2llcyA9
IFN0cmluZygpOworfQorCit2b2lkIERvY3VtZW50OjpkaWRMb2FkUmVzb3VyY2VTeW5jaHJvbm91
c2x5KGNvbnN0IFVSTCYgdXJsKQoreworICAgIC8vIFN5bmNocm9ub3VzIHJlc291cmNlcyBsb2Fk
aW5nIGNhbiBzZXQgY29va2llcyBzbyB3ZSBpbnZhbGlkYXRlIHRoZSBjb29raWVzIGNhY2hlCisg
ICAgLy8gaW4gdGhpcyBjYXNlLCB0byBiZSBzYWZlLgorICAgIGludmFsaWRhdGVET01Db29raWVD
YWNoZSgpOworCisgICAgaWYgKGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdlKCkpCisgICAgICAgIHBh
Z2UtPmNvb2tpZUphcigpLmNsZWFyQ2FjaGVGb3JIb3N0KHVybC5ob3N0KCkudG9TdHJpbmcoKSk7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmVuc3VyZVBsdWdJbnNJbmplY3RlZFNjcmlwdChET01XcmFw
cGVyV29ybGQmIHdvcmxkKQoreworICAgIGlmIChtX2hhc0luamVjdGVkUGx1Z0luc1NjcmlwdCkK
KyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byYgc2NyaXB0Q29udHJvbGxlciA9IGZyYW1lKCkt
PnNjcmlwdCgpOworCisgICAgLy8gVXNlIHRoZSBKUyBmaWxlIHByb3ZpZGVkIGJ5IHRoZSBDaHJv
bWUgY2xpZW50LCBvciBmYWxsYmFjayB0byB0aGUgZGVmYXVsdCBvbmUuCisgICAgU3RyaW5nIGpz
U3RyaW5nID0gcGFnZSgpLT5jaHJvbWUoKS5jbGllbnQoKS5wbHVnSW5FeHRyYVNjcmlwdCgpOwor
ICAgIGlmICghanNTdHJpbmcgfHwgIXNjcmlwdENvbnRyb2xsZXIuc2hvdWxkQWxsb3dVc2VyQWdl
bnRTY3JpcHRzKCp0aGlzKSkKKyAgICAgICAganNTdHJpbmcgPSBTdHJpbmdJbXBsOjpjcmVhdGVX
aXRob3V0Q29weWluZyhwbHVnSW5zSmF2YVNjcmlwdCwgc2l6ZW9mKHBsdWdJbnNKYXZhU2NyaXB0
KSk7CisKKyAgICBzZXRIYXNFdmFsdWF0ZWRVc2VyQWdlbnRTY3JpcHRzKCk7CisgICAgc2NyaXB0
Q29udHJvbGxlci5ldmFsdWF0ZUluV29ybGRJZ25vcmluZ0V4Y2VwdGlvbihTY3JpcHRTb3VyY2VD
b2RlKGpzU3RyaW5nKSwgd29ybGQpOworCisgICAgbV9oYXNJbmplY3RlZFBsdWdJbnNTY3JpcHQg
PSB0cnVlOworfQorCisjaWYgRU5BQkxFKFdFQl9DUllQVE8pCisKK2Jvb2wgRG9jdW1lbnQ6Ondy
YXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiBrZXksIFZlY3Rvcjx1aW50OF90PiYg
d3JhcHBlZEtleSkKK3sKKyAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgIGlmICgh
cGFnZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiBwYWdlLT5jaHJvbWUoKS5j
bGllbnQoKS53cmFwQ3J5cHRvS2V5KGtleSwgd3JhcHBlZEtleSk7Cit9CisKK2Jvb2wgRG9jdW1l
bnQ6OnVud3JhcENyeXB0b0tleShjb25zdCBWZWN0b3I8dWludDhfdD4mIHdyYXBwZWRLZXksIFZl
Y3Rvcjx1aW50OF90PiYga2V5KQoreworICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7Cisg
ICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgcmV0dXJuIHBhZ2UtPmNo
cm9tZSgpLmNsaWVudCgpLnVud3JhcENyeXB0b0tleSh3cmFwcGVkS2V5LCBrZXkpOworfQorCisj
ZW5kaWYgLy8gRU5BQkxFKFdFQl9DUllQVE8pCisKK0VsZW1lbnQqIERvY3VtZW50OjphY3RpdmVF
bGVtZW50KCkKK3sKKyAgICBpZiAoRWxlbWVudCogZWxlbWVudCA9IHRyZWVTY29wZSgpLmZvY3Vz
ZWRFbGVtZW50SW5TY29wZSgpKQorICAgICAgICByZXR1cm4gZWxlbWVudDsKKyAgICByZXR1cm4g
Ym9keU9yRnJhbWVzZXQoKTsKK30KKworYm9vbCBEb2N1bWVudDo6aGFzRm9jdXMoKSBjb25zdAor
eworICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlIHx8ICFwYWdl
LT5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpIHx8ICFwYWdlLT5mb2N1c0NvbnRyb2xsZXIo
KS5pc0ZvY3VzZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmIChGcmFtZSogZm9j
dXNlZEZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuZm9jdXNlZEZyYW1lKCkpIHsKKyAg
ICAgICAgaWYgKGZvY3VzZWRGcmFtZS0+dHJlZSgpLmlzRGVzY2VuZGFudE9mKGZyYW1lKCkpKQor
ICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30KKwor
I2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCisKK3ZvaWQgRG9jdW1lbnQ6OmFk
ZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KE1lZGlhUGxheWJhY2tUYXJnZXRDbGllbnQmIGNs
aWVudCkKK3sKKyAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgIGlmICghcGFnZSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRklYTUU6IGNoYW5nZSB0aGlzIGJhY2sgdG8gYW4g
QVNTRVJUIG9uY2UgaHR0cHM6Ly93ZWJraXQub3JnL2IvMTQ0OTcwIGlzIGZpeGVkLgorICAgIGlm
IChtX2NsaWVudFRvSURNYXAuY29udGFpbnMoJmNsaWVudCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGF1dG8gY29udGV4dElkID0gUGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmll
cjo6Z2VuZXJhdGUoKTsKKyAgICBtX2NsaWVudFRvSURNYXAuYWRkKCZjbGllbnQsIGNvbnRleHRJ
ZCk7CisgICAgbV9pZFRvQ2xpZW50TWFwLmFkZChjb250ZXh0SWQsICZjbGllbnQpOworICAgIHBh
Z2UtPmFkZFBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KGNvbnRleHRJZCk7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6OnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KE1lZGlhUGxheWJhY2tU
YXJnZXRDbGllbnQmIGNsaWVudCkKK3sKKyAgICBhdXRvIGl0ID0gbV9jbGllbnRUb0lETWFwLmZp
bmQoJmNsaWVudCk7CisgICAgaWYgKGl0ID09IG1fY2xpZW50VG9JRE1hcC5lbmQoKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgYXV0byBjbGllbnRJZCA9IGl0LT52YWx1ZTsKKyAgICBtX2lkVG9D
bGllbnRNYXAucmVtb3ZlKGNsaWVudElkKTsKKyAgICBtX2NsaWVudFRvSURNYXAucmVtb3ZlKGl0
KTsKKworICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAg
ICAgICByZXR1cm47CisgICAgcGFnZS0+cmVtb3ZlUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnQo
Y2xpZW50SWQpOworfQorCit2b2lkIERvY3VtZW50OjpzaG93UGxheWJhY2tUYXJnZXRQaWNrZXIo
TWVkaWFQbGF5YmFja1RhcmdldENsaWVudCYgY2xpZW50LCBib29sIGlzVmlkZW8sIFJvdXRlU2hh
cmluZ1BvbGljeSByb3V0ZVNoYXJpbmdQb2xpY3ksIGNvbnN0IFN0cmluZyYgcm91dGluZ0NvbnRl
eHRVSUQpCit7CisgICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2Up
CisgICAgICAgIHJldHVybjsKKworICAgIGlmICghZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgYXV0byBpdCA9IG1fY2xpZW50VG9JRE1hcC5maW5kKCZjbGllbnQpOworICAgIGlmIChp
dCA9PSBtX2NsaWVudFRvSURNYXAuZW5kKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEZJ
WE1FOiBUaGlzIGlzIHByb2JhYmx5IHdyb25nIGZvciBzdWJmcmFtZXMuCisgICAgYXV0byBwb3Np
dGlvbiA9IGZyYW1lKCktPmV2ZW50SGFuZGxlcigpLmxhc3RLbm93bk1vdXNlUG9zaXRpb24oKTsK
KyAgICBwYWdlLT5zaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoaXQtPnZhbHVlLCBwb3NpdGlvbiwg
aXNWaWRlbywgcm91dGVTaGFyaW5nUG9saWN5LCByb3V0aW5nQ29udGV4dFVJRCk7Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoTWVk
aWFQbGF5YmFja1RhcmdldENsaWVudCYgY2xpZW50LCBNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRl
RmxhZ3Mgc3RhdGUpCit7CisgICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKKyAgICBpZiAo
IXBhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gaXQgPSBtX2NsaWVudFRvSURNYXAu
ZmluZCgmY2xpZW50KTsKKyAgICBpZiAoaXQgPT0gbV9jbGllbnRUb0lETWFwLmVuZCgpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBwYWdlLT5wbGF5YmFja1RhcmdldFBpY2tlckNsaWVudFN0YXRl
RGlkQ2hhbmdlKGl0LT52YWx1ZSwgc3RhdGUpOworfQorCit2b2lkIERvY3VtZW50OjpwbGF5YmFj
a1RhcmdldEF2YWlsYWJpbGl0eURpZENoYW5nZShQbGF5YmFja1RhcmdldENsaWVudENvbnRleHRJ
ZGVudGlmaWVyIGNvbnRleHRJZCwgYm9vbCBhdmFpbGFibGUpCit7CisgICAgYXV0byBpdCA9IG1f
aWRUb0NsaWVudE1hcC5maW5kKGNvbnRleHRJZCk7CisgICAgaWYgKGl0ID09IG1faWRUb0NsaWVu
dE1hcC5lbmQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaXQtPnZhbHVlLT5leHRlcm5hbE91
dHB1dERldmljZUF2YWlsYWJsZURpZENoYW5nZShhdmFpbGFibGUpOworfQorCit2b2lkIERvY3Vt
ZW50OjpzZXRQbGF5YmFja1RhcmdldChQbGF5YmFja1RhcmdldENsaWVudENvbnRleHRJZGVudGlm
aWVyIGNvbnRleHRJZCwgUmVmPE1lZGlhUGxheWJhY2tUYXJnZXQ+JiYgdGFyZ2V0KQoreworICAg
IGF1dG8gaXQgPSBtX2lkVG9DbGllbnRNYXAuZmluZChjb250ZXh0SWQpOworICAgIGlmIChpdCA9
PSBtX2lkVG9DbGllbnRNYXAuZW5kKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGl0LT52YWx1
ZS0+c2V0UGxheWJhY2tUYXJnZXQodGFyZ2V0LmNvcHlSZWYoKSk7Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OnNldFNob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29u
dGV4dElkZW50aWZpZXIgY29udGV4dElkLCBib29sIHNob3VsZFBsYXkpCit7CisgICAgYXV0byBp
dCA9IG1faWRUb0NsaWVudE1hcC5maW5kKGNvbnRleHRJZCk7CisgICAgaWYgKGl0ID09IG1faWRU
b0NsaWVudE1hcC5lbmQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaXQtPnZhbHVlLT5zZXRT
aG91bGRQbGF5VG9QbGF5YmFja1RhcmdldChzaG91bGRQbGF5KTsKK30KKwordm9pZCBEb2N1bWVu
dDo6cGxheWJhY2tUYXJnZXRQaWNrZXJXYXNEaXNtaXNzZWQoUGxheWJhY2tUYXJnZXRDbGllbnRD
b250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQpCit7CisgICAgYXV0byBpdCA9IG1faWRUb0NsaWVu
dE1hcC5maW5kKGNvbnRleHRJZCk7CisgICAgaWYgKGl0ID09IG1faWRUb0NsaWVudE1hcC5lbmQo
KSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaXQtPnZhbHVlLT5wbGF5YmFja1RhcmdldFBpY2tl
cldhc0Rpc21pc3NlZCgpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNL
X1RBUkdFVCkKKworU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBEb2N1bWVudDo6c2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCkgY29uc3QKK3sKKyAgICBpZiAoRG9j
dW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gbG9hZGVyKCkpCisgICAgICAgIHJldHVybiBk
b2N1bWVudExvYWRlci0+c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRvUHJvcGFnYXRlKCk7
CisKKyAgICByZXR1cm4gU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxs
b3c7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OnNob3VsZEVuZm9yY2VIVFRQMDlTYW5kYm94KCkgY29u
c3QKK3sKKyAgICBpZiAobV9pc1N5bnRoZXNpemVkIHx8ICFtX2ZyYW1lKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0gbV9mcmFtZS0+
bG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKTsKKyAgICByZXR1cm4gZG9jdW1lbnRMb2Fk
ZXIgJiYgZG9jdW1lbnRMb2FkZXItPnJlc3BvbnNlKCkuaXNIVFRQMDkoKTsKK30KKworI2lmIFVT
RShRVUlDS19MT09LKQorCitib29sIERvY3VtZW50OjpzaG91bGRFbmZvcmNlUXVpY2tMb29rU2Fu
ZGJveCgpIGNvbnN0Cit7CisgICAgaWYgKG1faXNTeW50aGVzaXplZCB8fCAhbV9mcmFtZSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciA9
IG1fZnJhbWUtPmxvYWRlcigpLmFjdGl2ZURvY3VtZW50TG9hZGVyKCk7CisgICAgcmV0dXJuIGRv
Y3VtZW50TG9hZGVyICYmIGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmlzUXVpY2tMb29rKCk7
Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFwcGx5UXVpY2tMb29rU2FuZGJveCgpCit7CisgICAgYXV0
byYgZG9jdW1lbnRMb2FkZXIgPSAqbV9mcmFtZS0+bG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRMb2Fk
ZXIoKTsKKyAgICBhdXRvIGRvY3VtZW50VVJMID0gZG9jdW1lbnRMb2FkZXIuZG9jdW1lbnRVUkwo
KTsKKyAgICBhdXRvJiByZXNwb25zZVVSTCA9IGRvY3VtZW50TG9hZGVyLnJlc3BvbnNlVVJMKCk7
CisgICAgQVNTRVJUKCFkb2N1bWVudFVSTC5wcm90b2NvbElzKFFMUHJldmlld1Byb3RvY29sKSk7
CisgICAgQVNTRVJUKHJlc3BvbnNlVVJMLnByb3RvY29sSXMoUUxQcmV2aWV3UHJvdG9jb2wpKTsK
KworICAgIGF1dG8gc2VjdXJpdHlPcmlnaW4gPSBTZWN1cml0eU9yaWdpbjo6Y3JlYXRlTm9uTG9j
YWxXaXRoQWxsb3dlZEZpbGVQYXRoKHJlc3BvbnNlVVJMLCBkb2N1bWVudFVSTC5maWxlU3lzdGVt
UGF0aCgpKTsKKyAgICBzZWN1cml0eU9yaWdpbi0+c2V0U3RvcmFnZUJsb2NraW5nUG9saWN5KFN0
b3JhZ2VCbG9ja2luZ1BvbGljeTo6QmxvY2tBbGwpOworICAgIHNldFNlY3VyaXR5T3JpZ2luUG9s
aWN5KFNlY3VyaXR5T3JpZ2luUG9saWN5OjpjcmVhdGUoV1RGTW92ZShzZWN1cml0eU9yaWdpbikp
KTsKKworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxTdHJpbmc+IHF1aWNrTG9va0NTUCA9IG1h
a2VTdHJpbmcoImRlZmF1bHQtc3JjICIsIFFMUHJldmlld1Byb3RvY29sLCAiOiAndW5zYWZlLWlu
bGluZSc7IGJhc2UtdXJpICdub25lJzsgc2FuZGJveCBhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1z
Y3JpcHRzIik7CisgICAgUkVMRUFTRV9BU1NFUlQoY29udGVudFNlY3VyaXR5UG9saWN5KCkpOwor
ICAgIC8vIFRoZSBzYW5kYm94IGRpcmVjdGl2ZSBpcyBvbmx5IGFsbG93ZWQgaWYgdGhlIHBvbGlj
eSBpcyBmcm9tIGFuIEhUVFAgaGVhZGVyLgorICAgIGNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT5k
aWRSZWNlaXZlSGVhZGVyKHF1aWNrTG9va0NTUCwgQ29udGVudFNlY3VyaXR5UG9saWN5SGVhZGVy
VHlwZTo6RW5mb3JjZSwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpQb2xpY3lGcm9tOjpIVFRQSGVh
ZGVyLCByZWZlcnJlcigpKTsKKworICAgIGRpc2FibGVTYW5kYm94RmxhZ3MoU2FuZGJveE5hdmln
YXRpb24pOworCisgICAgc2V0UmVmZXJyZXJQb2xpY3koUmVmZXJyZXJQb2xpY3k6Ok5vUmVmZXJy
ZXIpOworfQorCisjZW5kaWYKKworYm9vbCBEb2N1bWVudDo6c2hvdWxkRW5mb3JjZUNvbnRlbnRE
aXNwb3NpdGlvbkF0dGFjaG1lbnRTYW5kYm94KCkgY29uc3QKK3sKKyAgICBpZiAoIXNldHRpbmdz
KCkuY29udGVudERpc3Bvc2l0aW9uQXR0YWNobWVudFNhbmRib3hFbmFibGVkKCkpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgIGlmIChtX2lzU3ludGhlc2l6ZWQpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIGlmIChhdXRvKiBkb2N1bWVudExvYWRlciA9IG1fZnJhbWUgPyBtX2Zy
YW1lLT5sb2FkZXIoKS5hY3RpdmVEb2N1bWVudExvYWRlcigpIDogbnVsbHB0cikKKyAgICAgICAg
cmV0dXJuIGRvY3VtZW50TG9hZGVyLT5yZXNwb25zZSgpLmlzQXR0YWNobWVudCgpOworICAgIHJl
dHVybiBmYWxzZTsKK30KKwordm9pZCBEb2N1bWVudDo6YXBwbHlDb250ZW50RGlzcG9zaXRpb25B
dHRhY2htZW50U2FuZGJveCgpCit7CisgICAgQVNTRVJUKHNob3VsZEVuZm9yY2VDb250ZW50RGlz
cG9zaXRpb25BdHRhY2htZW50U2FuZGJveCgpKTsKKworICAgIHNldFJlZmVycmVyUG9saWN5KFJl
ZmVycmVyUG9saWN5OjpOb1JlZmVycmVyKTsKKyAgICBpZiAoIWlzTWVkaWFEb2N1bWVudCgpKQor
ICAgICAgICBlbmZvcmNlU2FuZGJveEZsYWdzKFNhbmRib3hBbGwpOworICAgIGVsc2UKKyAgICAg
ICAgZW5mb3JjZVNhbmRib3hGbGFncyhTYW5kYm94T3JpZ2luKTsKK30KKwordm9pZCBEb2N1bWVu
dDo6YWRkRHluYW1pY01lZGlhUXVlcnlEZXBlbmRlbnRJbWFnZShIVE1MSW1hZ2VFbGVtZW50JiBl
bGVtZW50KQoreworICAgIG1fZHluYW1pY01lZGlhUXVlcnlEZXBlbmRlbnRJbWFnZXMuYWRkKGVs
ZW1lbnQpOworfQorCit2b2lkIERvY3VtZW50OjpyZW1vdmVEeW5hbWljTWVkaWFRdWVyeURlcGVu
ZGVudEltYWdlKEhUTUxJbWFnZUVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgbV9keW5hbWljTWVk
aWFRdWVyeURlcGVuZGVudEltYWdlcy5yZW1vdmUoZWxlbWVudCk7Cit9CisKK3ZvaWQgRG9jdW1l
bnQ6OmludGVyc2VjdGlvbk9ic2VydmVyc0luaXRpYWxVcGRhdGVUaW1lckZpcmVkKCkKK3sKKyAg
ICBzY2hlZHVsZVJlbmRlcmluZ1VwZGF0ZShSZW5kZXJpbmdVcGRhdGVTdGVwOjpJbnRlcnNlY3Rp
b25PYnNlcnZhdGlvbnMpOworfQorCit2b2lkIERvY3VtZW50OjpzY2hlZHVsZVJlbmRlcmluZ1Vw
ZGF0ZShPcHRpb25TZXQ8UmVuZGVyaW5nVXBkYXRlU3RlcD4gcmVxdWVzdGVkU3RlcHMpCit7Cisg
ICAgaWYgKG1faW50ZXJzZWN0aW9uT2JzZXJ2ZXJzSW5pdGlhbFVwZGF0ZVRpbWVyLmlzQWN0aXZl
KCkpIHsKKyAgICAgICAgbV9pbnRlcnNlY3Rpb25PYnNlcnZlcnNJbml0aWFsVXBkYXRlVGltZXIu
c3RvcCgpOworICAgICAgICByZXF1ZXN0ZWRTdGVwcy5hZGQoUmVuZGVyaW5nVXBkYXRlU3RlcDo6
SW50ZXJzZWN0aW9uT2JzZXJ2YXRpb25zKTsKKyAgICB9CisgICAgaWYgKGF1dG8gcGFnZSA9IHRo
aXMtPnBhZ2UoKSkKKyAgICAgICAgcGFnZS0+c2NoZWR1bGVSZW5kZXJpbmdVcGRhdGUocmVxdWVz
dGVkU3RlcHMpOworfQorCit2b2lkIERvY3VtZW50OjphZGRJbnRlcnNlY3Rpb25PYnNlcnZlcihJ
bnRlcnNlY3Rpb25PYnNlcnZlciYgb2JzZXJ2ZXIpCit7CisgICAgQVNTRVJUKG1faW50ZXJzZWN0
aW9uT2JzZXJ2ZXJzLmZpbmQoJm9ic2VydmVyKSA9PSBub3RGb3VuZCk7CisgICAgbV9pbnRlcnNl
Y3Rpb25PYnNlcnZlcnMuYXBwZW5kKG1ha2VXZWFrUHRyKCZvYnNlcnZlcikpOworfQorCit2b2lk
IERvY3VtZW50OjpyZW1vdmVJbnRlcnNlY3Rpb25PYnNlcnZlcihJbnRlcnNlY3Rpb25PYnNlcnZl
ciYgb2JzZXJ2ZXIpCit7CisgICAgbV9pbnRlcnNlY3Rpb25PYnNlcnZlcnMucmVtb3ZlRmlyc3Qo
Jm9ic2VydmVyKTsKK30KKworc3RhdGljIHZvaWQgZXhwYW5kUm9vdEJvdW5kc1dpdGhSb290TWFy
Z2luKEZsb2F0UmVjdCYgbG9jYWxSb290Qm91bmRzLCBjb25zdCBMZW5ndGhCb3gmIHJvb3RNYXJn
aW4sIGZsb2F0IHpvb21GYWN0b3IpCit7CisgICAgRmxvYXRCb3hFeHRlbnQgcm9vdE1hcmdpbkZs
b2F0Qm94KAorICAgICAgICBmbG9hdFZhbHVlRm9yTGVuZ3RoKHJvb3RNYXJnaW4udG9wKCksIGxv
Y2FsUm9vdEJvdW5kcy5oZWlnaHQoKSkgKiB6b29tRmFjdG9yLAorICAgICAgICBmbG9hdFZhbHVl
Rm9yTGVuZ3RoKHJvb3RNYXJnaW4ucmlnaHQoKSwgbG9jYWxSb290Qm91bmRzLndpZHRoKCkpICog
em9vbUZhY3RvciwKKyAgICAgICAgZmxvYXRWYWx1ZUZvckxlbmd0aChyb290TWFyZ2luLmJvdHRv
bSgpLCBsb2NhbFJvb3RCb3VuZHMuaGVpZ2h0KCkpICogem9vbUZhY3RvciwKKyAgICAgICAgZmxv
YXRWYWx1ZUZvckxlbmd0aChyb290TWFyZ2luLmxlZnQoKSwgbG9jYWxSb290Qm91bmRzLndpZHRo
KCkpICogem9vbUZhY3RvcgorICAgICk7CisKKyAgICBsb2NhbFJvb3RCb3VuZHMuZXhwYW5kKHJv
b3RNYXJnaW5GbG9hdEJveCk7Cit9CisKK3N0YXRpYyBzdGQ6Om9wdGlvbmFsPExheW91dFJlY3Q+
IGNvbXB1dGVDbGlwcGVkUmVjdEluUm9vdENvbnRlbnRzU3BhY2UoY29uc3QgTGF5b3V0UmVjdCYg
cmVjdCwgY29uc3QgUmVuZGVyRWxlbWVudCogcmVuZGVyZXIpCit7CisgICAgT3B0aW9uU2V0PFJl
bmRlck9iamVjdDo6VmlzaWJsZVJlY3RDb250ZXh0T3B0aW9uPiB2aXNpYmxlUmVjdE9wdGlvbnMg
PSB7IFJlbmRlck9iamVjdDo6VmlzaWJsZVJlY3RDb250ZXh0T3B0aW9uOjpVc2VFZGdlSW5jbHVz
aXZlSW50ZXJzZWN0aW9uLCBSZW5kZXJPYmplY3Q6OlZpc2libGVSZWN0Q29udGV4dE9wdGlvbjo6
QXBwbHlDb21wb3NpdGVkQ2xpcHMsIFJlbmRlck9iamVjdDo6VmlzaWJsZVJlY3RDb250ZXh0T3B0
aW9uOjpBcHBseUNvbXBvc2l0ZWRDb250YWluZXJTY3JvbGxzIH07CisgICAgc3RkOjpvcHRpb25h
bDxMYXlvdXRSZWN0PiByZWN0SW5GcmFtZUFic29sdXRlU3BhY2UgPSByZW5kZXJlci0+Y29tcHV0
ZVZpc2libGVSZWN0SW5Db250YWluZXIocmVjdCwgJnJlbmRlcmVyLT52aWV3KCksICB7ZmFsc2Ug
LyogaGFzUG9zaXRpb25GaXhlZERlc2NlbmRhbnQgKi8sIGZhbHNlIC8qIGRpcnR5UmVjdElzRmxp
cHBlZCAqLywgdmlzaWJsZVJlY3RPcHRpb25zIH0pOworICAgIGlmICghcmVjdEluRnJhbWVBYnNv
bHV0ZVNwYWNlIHx8IHJlbmRlcmVyLT5mcmFtZSgpLmlzTWFpbkZyYW1lKCkpCisgICAgICAgIHJl
dHVybiByZWN0SW5GcmFtZUFic29sdXRlU3BhY2U7CisKKyAgICBib29sIGludGVyc2VjdHMgPSBy
ZWN0SW5GcmFtZUFic29sdXRlU3BhY2UtPmVkZ2VJbmNsdXNpdmVJbnRlcnNlY3QocmVuZGVyZXIt
PnZpZXcoKS5mcmFtZVZpZXcoKS5sYXlvdXRWaWV3cG9ydFJlY3QoKSk7CisgICAgaWYgKCFpbnRl
cnNlY3RzKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgTGF5b3V0UmVjdCBy
ZWN0SW5GcmFtZVZpZXdTcGFjZShyZW5kZXJlci0+dmlldygpLmZyYW1lVmlldygpLmNvbnRlbnRz
VG9WaWV3KHNuYXBwZWRJbnRSZWN0KCpyZWN0SW5GcmFtZUFic29sdXRlU3BhY2UpKSk7CisgICAg
YXV0byogb3duZXJSZW5kZXJlciA9IHJlbmRlcmVyLT5mcmFtZSgpLm93bmVyUmVuZGVyZXIoKTsK
KyAgICBpZiAoIW93bmVyUmVuZGVyZXIpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisK
KyAgICByZWN0SW5GcmFtZVZpZXdTcGFjZS5tb3ZlQnkob3duZXJSZW5kZXJlci0+Y29udGVudEJv
eExvY2F0aW9uKCkpOworICAgIHJldHVybiBjb21wdXRlQ2xpcHBlZFJlY3RJblJvb3RDb250ZW50
c1NwYWNlKHJlY3RJbkZyYW1lVmlld1NwYWNlLCBvd25lclJlbmRlcmVyKTsKK30KKworc3RydWN0
IEludGVyc2VjdGlvbk9ic2VydmF0aW9uU3RhdGUgeworICAgIEZsb2F0UmVjdCBhYnNvbHV0ZVRh
cmdldFJlY3Q7CisgICAgRmxvYXRSZWN0IGFic29sdXRlUm9vdEJvdW5kczsKKyAgICBGbG9hdFJl
Y3QgYWJzb2x1dGVJbnRlcnNlY3Rpb25SZWN0OworICAgIGJvb2wgaXNJbnRlcnNlY3RpbmcgeyBm
YWxzZSB9OworfTsKKworc3RhdGljIHN0ZDo6b3B0aW9uYWw8SW50ZXJzZWN0aW9uT2JzZXJ2YXRp
b25TdGF0ZT4gY29tcHV0ZUludGVyc2VjdGlvblN0YXRlKEZyYW1lVmlldyYgZnJhbWVWaWV3LCBj
b25zdCBJbnRlcnNlY3Rpb25PYnNlcnZlciYgb2JzZXJ2ZXIsIEVsZW1lbnQmIHRhcmdldCwgYm9v
bCBhcHBseVJvb3RNYXJnaW4pCit7CisgICAgYXV0byogdGFyZ2V0UmVuZGVyZXIgPSB0YXJnZXQu
cmVuZGVyZXIoKTsKKyAgICBpZiAoIXRhcmdldFJlbmRlcmVyKQorICAgICAgICByZXR1cm4gc3Rk
OjpudWxsb3B0OworCisgICAgRmxvYXRSZWN0IGxvY2FsUm9vdEJvdW5kczsKKyAgICBSZW5kZXJC
bG9jayogcm9vdFJlbmRlcmVyOworICAgIGlmIChvYnNlcnZlci5yb290KCkpIHsKKyAgICAgICAg
aWYgKG9ic2VydmVyLnRyYWNraW5nRG9jdW1lbnQoKSAhPSAmdGFyZ2V0LmRvY3VtZW50KCkpCisg
ICAgICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgICAgIGlmICghb2JzZXJ2ZXIu
cm9vdCgpLT5yZW5kZXJlcigpIHx8ICFpczxSZW5kZXJCbG9jaz4ob2JzZXJ2ZXIucm9vdCgpLT5y
ZW5kZXJlcigpKSkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICAgICAg
cm9vdFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyQmxvY2s+KG9ic2VydmVyLnJvb3QoKS0+cmVu
ZGVyZXIoKSk7CisgICAgICAgIGlmICghcm9vdFJlbmRlcmVyLT5pc0NvbnRhaW5pbmdCbG9ja0Fu
Y2VzdG9yRm9yKCp0YXJnZXRSZW5kZXJlcikpCisgICAgICAgICAgICByZXR1cm4gc3RkOjpudWxs
b3B0OworCisgICAgICAgIGlmIChvYnNlcnZlci5yb290KCkgPT0gJnRhcmdldC5kb2N1bWVudCgp
KQorICAgICAgICAgICAgbG9jYWxSb290Qm91bmRzID0gZnJhbWVWaWV3LmxheW91dFZpZXdwb3J0
UmVjdCgpOworICAgICAgICBlbHNlIGlmIChyb290UmVuZGVyZXItPmhhc05vblZpc2libGVPdmVy
ZmxvdygpKQorICAgICAgICAgICAgbG9jYWxSb290Qm91bmRzID0gcm9vdFJlbmRlcmVyLT5jb250
ZW50Qm94UmVjdCgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBsb2NhbFJvb3RCb3VuZHMg
PSB7IEZsb2F0UG9pbnQoKSwgcm9vdFJlbmRlcmVyLT5zaXplKCkgfTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBBU1NFUlQoZnJhbWVWaWV3LmZyYW1lKCkuaXNNYWluRnJhbWUoKSk7CisgICAgICAg
IC8vIEZJWE1FOiBIYW5kbGUgdGhlIGNhc2Ugb2YgYW4gaW1wbGljaXQtcm9vdCBvYnNlcnZlciB0
aGF0IGhhcyBhIHRhcmdldCBpbiBhIGRpZmZlcmVudCBmcmFtZSB0cmVlLgorICAgICAgICBpZiAo
JnRhcmdldFJlbmRlcmVyLT5mcmFtZSgpLm1haW5GcmFtZSgpICE9ICZmcmFtZVZpZXcuZnJhbWUo
KSkKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJvb3RSZW5kZXJl
ciA9IGZyYW1lVmlldy5yZW5kZXJWaWV3KCk7CisgICAgICAgIGxvY2FsUm9vdEJvdW5kcyA9IGZy
YW1lVmlldy5sYXlvdXRWaWV3cG9ydFJlY3QoKTsKKyAgICB9CisKKyAgICBpZiAoYXBwbHlSb290
TWFyZ2luKQorICAgICAgICBleHBhbmRSb290Qm91bmRzV2l0aFJvb3RNYXJnaW4obG9jYWxSb290
Qm91bmRzLCBvYnNlcnZlci5yb290TWFyZ2luQm94KCksIHJvb3RSZW5kZXJlci0+c3R5bGUoKS5l
ZmZlY3RpdmVab29tKCkpOworCisgICAgTGF5b3V0UmVjdCBsb2NhbFRhcmdldEJvdW5kczsKKyAg
ICBpZiAoaXM8UmVuZGVyQm94PigqdGFyZ2V0UmVuZGVyZXIpKQorICAgICAgICBsb2NhbFRhcmdl
dEJvdW5kcyA9IGRvd25jYXN0PFJlbmRlckJveD4odGFyZ2V0UmVuZGVyZXIpLT5ib3JkZXJCb3Vu
ZGluZ0JveCgpOworICAgIGVsc2UgaWYgKGlzPFJlbmRlcklubGluZT4odGFyZ2V0UmVuZGVyZXIp
KSB7CisgICAgICAgIGF1dG8gcGFpciA9IHRhcmdldC5ib3VuZGluZ0Fic29sdXRlUmVjdFdpdGhv
dXRMYXlvdXQoKTsKKyAgICAgICAgaWYgKHBhaXIpIHsKKyAgICAgICAgICAgIEZsb2F0UmVjdCBh
YnNvbHV0ZVRhcmdldEJvdW5kcyA9IHBhaXItPnNlY29uZDsKKyAgICAgICAgICAgIGxvY2FsVGFy
Z2V0Qm91bmRzID0gZW5jbG9zaW5nTGF5b3V0UmVjdCh0YXJnZXRSZW5kZXJlci0+YWJzb2x1dGVU
b0xvY2FsUXVhZChhYnNvbHV0ZVRhcmdldEJvdW5kcykuYm91bmRpbmdCb3goKSk7CisgICAgICAg
IH0KKyAgICB9IGVsc2UgaWYgKGlzPFJlbmRlckxpbmVCcmVhaz4odGFyZ2V0UmVuZGVyZXIpKQor
ICAgICAgICBsb2NhbFRhcmdldEJvdW5kcyA9IGRvd25jYXN0PFJlbmRlckxpbmVCcmVhaz4odGFy
Z2V0UmVuZGVyZXIpLT5saW5lc0JvdW5kaW5nQm94KCk7CisKKyAgICBzdGQ6Om9wdGlvbmFsPExh
eW91dFJlY3Q+IHJvb3RMb2NhbFRhcmdldFJlY3Q7CisgICAgaWYgKG9ic2VydmVyLnJvb3QoKSkg
eworICAgICAgICBPcHRpb25TZXQ8UmVuZGVyT2JqZWN0OjpWaXNpYmxlUmVjdENvbnRleHRPcHRp
b24+IHZpc2libGVSZWN0T3B0aW9ucyA9IHsgUmVuZGVyT2JqZWN0OjpWaXNpYmxlUmVjdENvbnRl
eHRPcHRpb246OlVzZUVkZ2VJbmNsdXNpdmVJbnRlcnNlY3Rpb24sIFJlbmRlck9iamVjdDo6Vmlz
aWJsZVJlY3RDb250ZXh0T3B0aW9uOjpBcHBseUNvbXBvc2l0ZWRDbGlwcywgUmVuZGVyT2JqZWN0
OjpWaXNpYmxlUmVjdENvbnRleHRPcHRpb246OkFwcGx5Q29tcG9zaXRlZENvbnRhaW5lclNjcm9s
bHMgfTsKKyAgICAgICAgcm9vdExvY2FsVGFyZ2V0UmVjdCA9IHRhcmdldFJlbmRlcmVyLT5jb21w
dXRlVmlzaWJsZVJlY3RJbkNvbnRhaW5lcihsb2NhbFRhcmdldEJvdW5kcywgcm9vdFJlbmRlcmVy
LCB7IGZhbHNlIC8qIGhhc1Bvc2l0aW9uRml4ZWREZXNjZW5kYW50ICovLCBmYWxzZSAvKiBkaXJ0
eVJlY3RJc0ZsaXBwZWQgKi8sIHZpc2libGVSZWN0T3B0aW9ucyB9KTsKKyAgICB9IGVsc2UKKyAg
ICAgICAgcm9vdExvY2FsVGFyZ2V0UmVjdCA9IGNvbXB1dGVDbGlwcGVkUmVjdEluUm9vdENvbnRl
bnRzU3BhY2UobG9jYWxUYXJnZXRCb3VuZHMsIHRhcmdldFJlbmRlcmVyKTsKKworICAgIEZsb2F0
UmVjdCByb290TG9jYWxJbnRlcnNlY3Rpb25SZWN0ID0gbG9jYWxSb290Qm91bmRzOworCisgICAg
SW50ZXJzZWN0aW9uT2JzZXJ2YXRpb25TdGF0ZSBpbnRlcnNlY3Rpb25TdGF0ZTsKKyAgICBpbnRl
cnNlY3Rpb25TdGF0ZS5pc0ludGVyc2VjdGluZyA9IHJvb3RMb2NhbFRhcmdldFJlY3QgJiYgcm9v
dExvY2FsSW50ZXJzZWN0aW9uUmVjdC5lZGdlSW5jbHVzaXZlSW50ZXJzZWN0KCpyb290TG9jYWxU
YXJnZXRSZWN0KTsKKyAgICBpbnRlcnNlY3Rpb25TdGF0ZS5hYnNvbHV0ZVRhcmdldFJlY3QgPSB0
YXJnZXRSZW5kZXJlci0+bG9jYWxUb0Fic29sdXRlUXVhZChGbG9hdFJlY3QobG9jYWxUYXJnZXRC
b3VuZHMpKS5ib3VuZGluZ0JveCgpOworICAgIGludGVyc2VjdGlvblN0YXRlLmFic29sdXRlUm9v
dEJvdW5kcyA9IHJvb3RSZW5kZXJlci0+bG9jYWxUb0Fic29sdXRlUXVhZChsb2NhbFJvb3RCb3Vu
ZHMpLmJvdW5kaW5nQm94KCk7CisKKyAgICBpZiAoaW50ZXJzZWN0aW9uU3RhdGUuaXNJbnRlcnNl
Y3RpbmcpIHsKKyAgICAgICAgRmxvYXRSZWN0IHJvb3RBYnNvbHV0ZUludGVyc2VjdGlvblJlY3Qg
PSByb290UmVuZGVyZXItPmxvY2FsVG9BYnNvbHV0ZVF1YWQocm9vdExvY2FsSW50ZXJzZWN0aW9u
UmVjdCkuYm91bmRpbmdCb3goKTsKKyAgICAgICAgaWYgKCZ0YXJnZXRSZW5kZXJlci0+ZnJhbWUo
KSA9PSAmcm9vdFJlbmRlcmVyLT5mcmFtZSgpKQorICAgICAgICAgICAgaW50ZXJzZWN0aW9uU3Rh
dGUuYWJzb2x1dGVJbnRlcnNlY3Rpb25SZWN0ID0gcm9vdEFic29sdXRlSW50ZXJzZWN0aW9uUmVj
dDsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBGbG9hdFJlY3Qgcm9vdFZpZXdJbnRlcnNl
Y3Rpb25SZWN0ID0gZnJhbWVWaWV3LmNvbnRlbnRzVG9WaWV3KHJvb3RBYnNvbHV0ZUludGVyc2Vj
dGlvblJlY3QpOworICAgICAgICAgICAgaW50ZXJzZWN0aW9uU3RhdGUuYWJzb2x1dGVJbnRlcnNl
Y3Rpb25SZWN0ID0gdGFyZ2V0UmVuZGVyZXItPnZpZXcoKS5mcmFtZVZpZXcoKS5yb290Vmlld1Rv
Q29udGVudHMocm9vdFZpZXdJbnRlcnNlY3Rpb25SZWN0KTsKKyAgICAgICAgfQorICAgICAgICBp
bnRlcnNlY3Rpb25TdGF0ZS5pc0ludGVyc2VjdGluZyA9IGludGVyc2VjdGlvblN0YXRlLmFic29s
dXRlSW50ZXJzZWN0aW9uUmVjdC5lZGdlSW5jbHVzaXZlSW50ZXJzZWN0KGludGVyc2VjdGlvblN0
YXRlLmFic29sdXRlVGFyZ2V0UmVjdCk7CisgICAgfQorCisgICAgcmV0dXJuIGludGVyc2VjdGlv
blN0YXRlOworfQorCit2b2lkIERvY3VtZW50Ojp1cGRhdGVJbnRlcnNlY3Rpb25PYnNlcnZhdGlv
bnMoKQoreworICAgIFJlZlB0ciBmcmFtZVZpZXcgPSB2aWV3KCk7CisgICAgaWYgKCFmcmFtZVZp
ZXcpCisgICAgICAgIHJldHVybjsKKworICAgIGJvb2wgbmVlZHNMYXlvdXQgPSBmcmFtZVZpZXct
PmxheW91dENvbnRleHQoKS5pc0xheW91dFBlbmRpbmcoKSB8fCAocmVuZGVyVmlldygpICYmIHJl
bmRlclZpZXcoKS0+bmVlZHNMYXlvdXQoKSk7CisgICAgaWYgKG5lZWRzTGF5b3V0IHx8IGhhc1Bl
bmRpbmdTdHlsZVJlY2FsYygpKQorICAgICAgICByZXR1cm47CisKKyAgICBWZWN0b3I8V2Vha1B0
cjxJbnRlcnNlY3Rpb25PYnNlcnZlcj4+IGludGVyc2VjdGlvbk9ic2VydmVyc1dpdGhQZW5kaW5n
Tm90aWZpY2F0aW9uczsKKworICAgIGZvciAoY29uc3QgYXV0byYgb2JzZXJ2ZXIgOiBtX2ludGVy
c2VjdGlvbk9ic2VydmVycykgeworICAgICAgICBib29sIG5lZWROb3RpZnkgPSBmYWxzZTsKKyAg
ICAgICAgYXV0byB0aW1lc3RhbXAgPSBvYnNlcnZlci0+bm93VGltZXN0YW1wKCk7CisgICAgICAg
IGlmICghdGltZXN0YW1wKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIGZvciAoYXV0
byYgdGFyZ2V0IDogb2JzZXJ2ZXItPm9ic2VydmF0aW9uVGFyZ2V0cygpKSB7CisgICAgICAgICAg
ICBhdXRvJiB0YXJnZXRSZWdpc3RyYXRpb25zID0gdGFyZ2V0LT5pbnRlcnNlY3Rpb25PYnNlcnZl
ckRhdGFJZkV4aXN0cygpLT5yZWdpc3RyYXRpb25zOworICAgICAgICAgICAgYXV0byBpbmRleCA9
IHRhcmdldFJlZ2lzdHJhdGlvbnMuZmluZE1hdGNoaW5nKFtvYnNlcnZlcl0oYXV0byYgcmVnaXN0
cmF0aW9uKSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIHJlZ2lzdHJhdGlvbi5vYnNlcnZlci5n
ZXQoKSA9PSBvYnNlcnZlcjsKKyAgICAgICAgICAgIH0pOworICAgICAgICAgICAgQVNTRVJUKGlu
ZGV4ICE9IG5vdEZvdW5kKTsKKyAgICAgICAgICAgIGF1dG8mIHJlZ2lzdHJhdGlvbiA9IHRhcmdl
dFJlZ2lzdHJhdGlvbnNbaW5kZXhdOworCisgICAgICAgICAgICBib29sIGlzU2FtZU9yaWdpbk9i
c2VydmF0aW9uID0gJnRhcmdldC0+ZG9jdW1lbnQoKSA9PSB0aGlzIHx8IHRhcmdldC0+ZG9jdW1l
bnQoKS5zZWN1cml0eU9yaWdpbigpLmlzU2FtZU9yaWdpbkRvbWFpbihzZWN1cml0eU9yaWdpbigp
KTsKKyAgICAgICAgICAgIGF1dG8gaW50ZXJzZWN0aW9uU3RhdGUgPSBjb21wdXRlSW50ZXJzZWN0
aW9uU3RhdGUoKmZyYW1lVmlldywgKm9ic2VydmVyLCAqdGFyZ2V0LCBpc1NhbWVPcmlnaW5PYnNl
cnZhdGlvbik7CisKKyAgICAgICAgICAgIGZsb2F0IGludGVyc2VjdGlvblJhdGlvID0gMDsKKyAg
ICAgICAgICAgIHNpemVfdCB0aHJlc2hvbGRJbmRleCA9IDA7CisgICAgICAgICAgICBpZiAoaW50
ZXJzZWN0aW9uU3RhdGUpIHsKKyAgICAgICAgICAgICAgICBpZiAoaW50ZXJzZWN0aW9uU3RhdGUt
PmlzSW50ZXJzZWN0aW5nKSB7CisgICAgICAgICAgICAgICAgICAgIGZsb2F0IGFic1RhcmdldEFy
ZWEgPSBpbnRlcnNlY3Rpb25TdGF0ZS0+YWJzb2x1dGVUYXJnZXRSZWN0LmFyZWEoKTsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKGFic1RhcmdldEFyZWEpCisgICAgICAgICAgICAgICAgICAgICAg
ICBpbnRlcnNlY3Rpb25SYXRpbyA9IGludGVyc2VjdGlvblN0YXRlLT5hYnNvbHV0ZUludGVyc2Vj
dGlvblJlY3QuYXJlYSgpIC8gYWJzVGFyZ2V0QXJlYTsKKyAgICAgICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJzZWN0aW9uUmF0aW8gPSAxOworCisgICAg
ICAgICAgICAgICAgICAgIGZvciAoYXV0byB0aHJlc2hvbGQgOiBvYnNlcnZlci0+dGhyZXNob2xk
cygpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoISh0aHJlc2hvbGQgPD0gaW50ZXJz
ZWN0aW9uUmF0aW8gfHwgV1RGOjphcmVFc3NlbnRpYWxseUVxdWFsPGZsb2F0Pih0aHJlc2hvbGQs
IGludGVyc2VjdGlvblJhdGlvKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgICAgICAgICAgICAgICAgICArK3RocmVzaG9sZEluZGV4OworICAgICAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICBpZiAoIXJlZ2lzdHJhdGlvbi5wcmV2aW91c1RocmVzaG9sZEluZGV4IHx8IHRocmVzaG9sZElu
ZGV4ICE9IHJlZ2lzdHJhdGlvbi5wcmV2aW91c1RocmVzaG9sZEluZGV4KSB7CisgICAgICAgICAg
ICAgICAgRmxvYXRSZWN0IHRhcmdldEJvdW5kaW5nQ2xpZW50UmVjdDsKKyAgICAgICAgICAgICAg
ICBGbG9hdFJlY3QgY2xpZW50SW50ZXJzZWN0aW9uUmVjdDsKKyAgICAgICAgICAgICAgICBGbG9h
dFJlY3QgY2xpZW50Um9vdEJvdW5kczsKKyAgICAgICAgICAgICAgICBpZiAoaW50ZXJzZWN0aW9u
U3RhdGUpIHsKKyAgICAgICAgICAgICAgICAgICAgUmVmUHRyIHRhcmdldEZyYW1lVmlldyA9IHRh
cmdldC0+ZG9jdW1lbnQoKS52aWV3KCk7CisgICAgICAgICAgICAgICAgICAgIHRhcmdldEJvdW5k
aW5nQ2xpZW50UmVjdCA9IHRhcmdldEZyYW1lVmlldy0+YWJzb2x1dGVUb0NsaWVudFJlY3QoaW50
ZXJzZWN0aW9uU3RhdGUtPmFic29sdXRlVGFyZ2V0UmVjdCwgdGFyZ2V0LT5yZW5kZXJlcigpLT5z
dHlsZSgpLmVmZmVjdGl2ZVpvb20oKSk7CisgICAgICAgICAgICAgICAgICAgIGNsaWVudFJvb3RC
b3VuZHMgPSBmcmFtZVZpZXctPmFic29sdXRlVG9MYXlvdXRWaWV3cG9ydFJlY3QoaW50ZXJzZWN0
aW9uU3RhdGUtPmFic29sdXRlUm9vdEJvdW5kcyk7CisgICAgICAgICAgICAgICAgICAgIGlmIChp
bnRlcnNlY3Rpb25TdGF0ZS0+aXNJbnRlcnNlY3RpbmcpCisgICAgICAgICAgICAgICAgICAgICAg
ICBjbGllbnRJbnRlcnNlY3Rpb25SZWN0ID0gdGFyZ2V0RnJhbWVWaWV3LT5hYnNvbHV0ZVRvQ2xp
ZW50UmVjdChpbnRlcnNlY3Rpb25TdGF0ZS0+YWJzb2x1dGVJbnRlcnNlY3Rpb25SZWN0LCB0YXJn
ZXQtPnJlbmRlcmVyKCktPnN0eWxlKCkuZWZmZWN0aXZlWm9vbSgpKTsKKyAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICBzdGQ6Om9wdGlvbmFsPERPTVJlY3RJbml0PiByZXBvcnRl
ZFJvb3RCb3VuZHM7CisgICAgICAgICAgICAgICAgaWYgKGlzU2FtZU9yaWdpbk9ic2VydmF0aW9u
KSB7CisgICAgICAgICAgICAgICAgICAgIHJlcG9ydGVkUm9vdEJvdW5kcyA9IERPTVJlY3RJbml0
KHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudFJvb3RCb3VuZHMueCgpLAorICAgICAg
ICAgICAgICAgICAgICAgICAgY2xpZW50Um9vdEJvdW5kcy55KCksCisgICAgICAgICAgICAgICAg
ICAgICAgICBjbGllbnRSb290Qm91bmRzLndpZHRoKCksCisgICAgICAgICAgICAgICAgICAgICAg
ICBjbGllbnRSb290Qm91bmRzLmhlaWdodCgpCisgICAgICAgICAgICAgICAgICAgIH0pOworICAg
ICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIG9ic2VydmVyLT5hcHBlbmRRdWV1ZWRF
bnRyeShJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5OjpjcmVhdGUoeworICAgICAgICAgICAgICAg
ICAgICB0aW1lc3RhbXAtPm1pbGxpc2Vjb25kcygpLAorICAgICAgICAgICAgICAgICAgICByZXBv
cnRlZFJvb3RCb3VuZHMsCisgICAgICAgICAgICAgICAgICAgIHsgdGFyZ2V0Qm91bmRpbmdDbGll
bnRSZWN0LngoKSwgdGFyZ2V0Qm91bmRpbmdDbGllbnRSZWN0LnkoKSwgdGFyZ2V0Qm91bmRpbmdD
bGllbnRSZWN0LndpZHRoKCksIHRhcmdldEJvdW5kaW5nQ2xpZW50UmVjdC5oZWlnaHQoKSB9LAor
ICAgICAgICAgICAgICAgICAgICB7IGNsaWVudEludGVyc2VjdGlvblJlY3QueCgpLCBjbGllbnRJ
bnRlcnNlY3Rpb25SZWN0LnkoKSwgY2xpZW50SW50ZXJzZWN0aW9uUmVjdC53aWR0aCgpLCBjbGll
bnRJbnRlcnNlY3Rpb25SZWN0LmhlaWdodCgpIH0sCisgICAgICAgICAgICAgICAgICAgIGludGVy
c2VjdGlvblJhdGlvLAorICAgICAgICAgICAgICAgICAgICB0YXJnZXQuZ2V0KCksCisgICAgICAg
ICAgICAgICAgICAgIHRocmVzaG9sZEluZGV4ID4gMCwKKyAgICAgICAgICAgICAgICB9KSk7Cisg
ICAgICAgICAgICAgICAgbmVlZE5vdGlmeSA9IHRydWU7CisgICAgICAgICAgICAgICAgcmVnaXN0
cmF0aW9uLnByZXZpb3VzVGhyZXNob2xkSW5kZXggPSB0aHJlc2hvbGRJbmRleDsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAobmVlZE5vdGlmeSkKKyAgICAgICAgICAgIGlu
dGVyc2VjdGlvbk9ic2VydmVyc1dpdGhQZW5kaW5nTm90aWZpY2F0aW9ucy5hcHBlbmQobWFrZVdl
YWtQdHIob2JzZXJ2ZXIuZ2V0KCkpKTsKKyAgICB9CisKKyAgICBmb3IgKGNvbnN0IGF1dG8mIG9i
c2VydmVyIDogaW50ZXJzZWN0aW9uT2JzZXJ2ZXJzV2l0aFBlbmRpbmdOb3RpZmljYXRpb25zKSB7
CisgICAgICAgIGlmIChvYnNlcnZlcikKKyAgICAgICAgICAgIG9ic2VydmVyLT5ub3RpZnkoKTsK
KyAgICB9Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNjaGVkdWxlSW5pdGlhbEludGVyc2VjdGlvbk9i
c2VydmF0aW9uVXBkYXRlKCkKK3sKKyAgICBpZiAobV9yZWFkeVN0YXRlID09IENvbXBsZXRlKQor
ICAgICAgICBzY2hlZHVsZVJlbmRlcmluZ1VwZGF0ZShSZW5kZXJpbmdVcGRhdGVTdGVwOjpJbnRl
cnNlY3Rpb25PYnNlcnZhdGlvbnMpOworICAgIGVsc2UgaWYgKCFtX2ludGVyc2VjdGlvbk9ic2Vy
dmVyc0luaXRpYWxVcGRhdGVUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX2ludGVyc2VjdGlv
bk9ic2VydmVyc0luaXRpYWxVcGRhdGVUaW1lci5zdGFydE9uZVNob3QoaW50ZXJzZWN0aW9uT2Jz
ZXJ2ZXJzSW5pdGlhbFVwZGF0ZURlbGF5KTsKK30KKworSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEYXRh
JiBEb2N1bWVudDo6ZW5zdXJlSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEYXRhKCkKK3sKKyAgICBpZiAo
IW1faW50ZXJzZWN0aW9uT2JzZXJ2ZXJEYXRhKQorICAgICAgICBtX2ludGVyc2VjdGlvbk9ic2Vy
dmVyRGF0YSA9IG1ha2VVbmlxdWU8SW50ZXJzZWN0aW9uT2JzZXJ2ZXJEYXRhPigpOworICAgIHJl
dHVybiAqbV9pbnRlcnNlY3Rpb25PYnNlcnZlckRhdGE7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmFk
ZFJlc2l6ZU9ic2VydmVyKFJlc2l6ZU9ic2VydmVyJiBvYnNlcnZlcikKK3sKKyAgICBpZiAoIW1f
cmVzaXplT2JzZXJ2ZXJzLmNvbnRhaW5zKCZvYnNlcnZlcikpCisgICAgICAgIG1fcmVzaXplT2Jz
ZXJ2ZXJzLmFwcGVuZChtYWtlV2Vha1B0cigmb2JzZXJ2ZXIpKTsKK30KKwordm9pZCBEb2N1bWVu
dDo6cmVtb3ZlUmVzaXplT2JzZXJ2ZXIoUmVzaXplT2JzZXJ2ZXImIG9ic2VydmVyKQoreworICAg
IG1fcmVzaXplT2JzZXJ2ZXJzLnJlbW92ZUZpcnN0KCZvYnNlcnZlcik7Cit9CisKK2Jvb2wgRG9j
dW1lbnQ6Omhhc1Jlc2l6ZU9ic2VydmVycygpCit7CisgICAgcmV0dXJuICFtX3Jlc2l6ZU9ic2Vy
dmVycy5pc0VtcHR5KCk7Cit9CisKK3NpemVfdCBEb2N1bWVudDo6Z2F0aGVyUmVzaXplT2JzZXJ2
YXRpb25zKHNpemVfdCBkZWVwZXJUaGFuKQoreworICAgIHNpemVfdCBtaW5EZXB0aCA9IFJlc2l6
ZU9ic2VydmVyOjptYXhFbGVtZW50RGVwdGgoKTsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIG9ic2Vy
dmVyIDogbV9yZXNpemVPYnNlcnZlcnMpIHsKKyAgICAgICAgaWYgKCFvYnNlcnZlci0+aGFzT2Jz
ZXJ2YXRpb25zKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgYXV0byBkZXB0aCA9
IG9ic2VydmVyLT5nYXRoZXJPYnNlcnZhdGlvbnMoZGVlcGVyVGhhbik7CisgICAgICAgIG1pbkRl
cHRoID0gc3RkOjptaW4obWluRGVwdGgsIGRlcHRoKTsKKyAgICB9CisgICAgcmV0dXJuIG1pbkRl
cHRoOworfQorCit2b2lkIERvY3VtZW50OjpkZWxpdmVyUmVzaXplT2JzZXJ2YXRpb25zKCkKK3sK
KyAgICBhdXRvIG9ic2VydmVyc1RvTm90aWZ5ID0gbV9yZXNpemVPYnNlcnZlcnM7CisgICAgZm9y
IChjb25zdCBhdXRvJiBvYnNlcnZlciA6IG9ic2VydmVyc1RvTm90aWZ5KSB7CisgICAgICAgIGlm
ICghb2JzZXJ2ZXIgfHwgIW9ic2VydmVyLT5oYXNBY3RpdmVPYnNlcnZhdGlvbnMoKSkKKyAgICAg
ICAgICAgIGNvbnRpbnVlOworICAgICAgICBvYnNlcnZlci0+ZGVsaXZlck9ic2VydmF0aW9ucygp
OworICAgIH0KK30KKworYm9vbCBEb2N1bWVudDo6aGFzU2tpcHBlZFJlc2l6ZU9ic2VydmF0aW9u
cygpIGNvbnN0Cit7CisgICAgZm9yIChjb25zdCBhdXRvJiBvYnNlcnZlciA6IG1fcmVzaXplT2Jz
ZXJ2ZXJzKSB7CisgICAgICAgIGlmIChvYnNlcnZlci0+aGFzU2tpcHBlZE9ic2VydmF0aW9ucygp
KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIHJldHVybiBmYWxzZTsKK30K
Kwordm9pZCBEb2N1bWVudDo6c2V0SGFzU2tpcHBlZFJlc2l6ZU9ic2VydmF0aW9ucyhib29sIHNr
aXBwZWQpCit7CisgICAgZm9yIChjb25zdCBhdXRvJiBvYnNlcnZlciA6IG1fcmVzaXplT2JzZXJ2
ZXJzKQorICAgICAgICBvYnNlcnZlci0+c2V0SGFzU2tpcHBlZE9ic2VydmF0aW9ucyhza2lwcGVk
KTsKK30KKwordm9pZCBEb2N1bWVudDo6dXBkYXRlUmVzaXplT2JzZXJ2YXRpb25zKFBhZ2UmIHBh
Z2UpCit7CisgICAgaWYgKCFoYXNSZXNpemVPYnNlcnZlcnMoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgLy8gV2UgbmVlZCBsYXlvdXQgdGhlIHdob2xlIGZyYW1lIHRyZWUgaGVyZS4gQmVjYXVz
ZSBSZXNpemVPYnNlcnZlciBjb3VsZCBvYnNlcnZlIGVsZW1lbnQgaW4gb3RoZXIgZnJhbWUsCisg
ICAgLy8gYW5kIGl0IGNvdWxkIGNoYW5nZSBvdGhlciBmcmFtZSBpbiBkZWxpdmVyUmVzaXplT2Jz
ZXJ2YXRpb25zKCkuCisgICAgcGFnZS5sYXlvdXRJZk5lZWRlZCgpOworCisgICAgLy8gU3RhcnQg
Y2hlY2sgcmVzaXplIG9iZXJ2ZXJzOworICAgIGZvciAoc2l6ZV90IGRlcHRoID0gZ2F0aGVyUmVz
aXplT2JzZXJ2YXRpb25zKDApOyBkZXB0aCAhPSBSZXNpemVPYnNlcnZlcjo6bWF4RWxlbWVudERl
cHRoKCk7IGRlcHRoID0gZ2F0aGVyUmVzaXplT2JzZXJ2YXRpb25zKGRlcHRoKSkgeworICAgICAg
ICBkZWxpdmVyUmVzaXplT2JzZXJ2YXRpb25zKCk7CisgICAgICAgIHBhZ2UubGF5b3V0SWZOZWVk
ZWQoKTsKKyAgICB9CisKKyAgICBpZiAoaGFzU2tpcHBlZFJlc2l6ZU9ic2VydmF0aW9ucygpKSB7
CisgICAgICAgIHNldEhhc1NraXBwZWRSZXNpemVPYnNlcnZhdGlvbnMoZmFsc2UpOworICAgICAg
ICBTdHJpbmcgdXJsOworICAgICAgICB1bnNpZ25lZCBsaW5lID0gMDsKKyAgICAgICAgdW5zaWdu
ZWQgY29sdW1uID0gMDsKKyAgICAgICAgZ2V0UGFyc2VyTG9jYXRpb24odXJsLCBsaW5lLCBjb2x1
bW4pOworICAgICAgICByZXBvcnRFeGNlcHRpb24oIlJlc2l6ZU9ic2VydmVyIGxvb3AgY29tcGxl
dGVkIHdpdGggdW5kZWxpdmVyZWQgbm90aWZpY2F0aW9ucy4iLCBsaW5lLCBjb2x1bW4sIHVybCwg
bnVsbHB0ciwgbnVsbHB0cik7CisgICAgICAgIC8vIFN0YXJ0aW5nIGEgbmV3IHNjaGVkdWxlIHRo
ZSBuZXh0IHJvdW5kIG9mIG5vdGlmeS4KKyAgICAgICAgc2NoZWR1bGVSZW5kZXJpbmdVcGRhdGUo
UmVuZGVyaW5nVXBkYXRlU3RlcDo6UmVzaXplT2JzZXJ2YXRpb25zKTsKKyAgICB9Cit9CisKK2Nv
bnN0IEF0b21TdHJpbmcmIERvY3VtZW50OjpkaXIoKSBjb25zdAoreworICAgIGF1dG8qIGRvY3Vt
ZW50RWxlbWVudCA9IHRoaXMtPmRvY3VtZW50RWxlbWVudCgpOworICAgIGlmICghaXM8SFRNTEh0
bWxFbGVtZW50Pihkb2N1bWVudEVsZW1lbnQpKQorICAgICAgICByZXR1cm4gbnVsbEF0b20oKTsK
KyAgICByZXR1cm4gZG93bmNhc3Q8SFRNTEh0bWxFbGVtZW50PigqZG9jdW1lbnRFbGVtZW50KS5k
aXIoKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0RGlyKGNvbnN0IEF0b21TdHJpbmcmIHZhbHVl
KQoreworICAgIGF1dG8qIGRvY3VtZW50RWxlbWVudCA9IHRoaXMtPmRvY3VtZW50RWxlbWVudCgp
OworICAgIGlmIChpczxIVE1MSHRtbEVsZW1lbnQ+KGRvY3VtZW50RWxlbWVudCkpCisgICAgICAg
IGRvd25jYXN0PEhUTUxIdG1sRWxlbWVudD4oKmRvY3VtZW50RWxlbWVudCkuc2V0RGlyKHZhbHVl
KTsKK30KKworRE9NU2VsZWN0aW9uKiBEb2N1bWVudDo6Z2V0U2VsZWN0aW9uKCkKK3sKKyAgICBy
ZXR1cm4gbV9kb21XaW5kb3cgPyBtX2RvbVdpbmRvdy0+Z2V0U2VsZWN0aW9uKCkgOiBudWxscHRy
OworfQorCit2b2lkIERvY3VtZW50OjpkaWRJbnNlcnRJbkRvY3VtZW50U2hhZG93Um9vdChTaGFk
b3dSb290JiBzaGFkb3dSb290KQoreworICAgIEFTU0VSVChzaGFkb3dSb290LmlzQ29ubmVjdGVk
KCkpOworICAgIEFTU0VSVCghbV9pbkRvY3VtZW50U2hhZG93Um9vdHMuY29udGFpbnMoJnNoYWRv
d1Jvb3QpKTsKKyAgICBtX2luRG9jdW1lbnRTaGFkb3dSb290cy5hZGQoJnNoYWRvd1Jvb3QpOwor
fQorCit2b2lkIERvY3VtZW50OjpkaWRSZW1vdmVJbkRvY3VtZW50U2hhZG93Um9vdChTaGFkb3dS
b290JiBzaGFkb3dSb290KQoreworICAgIEFTU0VSVChtX2luRG9jdW1lbnRTaGFkb3dSb290cy5j
b250YWlucygmc2hhZG93Um9vdCkpOworICAgIG1faW5Eb2N1bWVudFNoYWRvd1Jvb3RzLnJlbW92
ZSgmc2hhZG93Um9vdCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6Om9yaWVudGF0aW9uQ2hhbmdlZChp
bnQgb3JpZW50YXRpb24pCit7CisgICAgTE9HKEV2ZW50cywgIkRvY3VtZW50ICVwIG9yaWVudGF0
aW9uQ2hhbmdlZCAtIG9yaWVudGF0aW9uICVkIiwgdGhpcywgb3JpZW50YXRpb24pOworICAgIGRp
c3BhdGNoV2luZG93RXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkub3JpZW50YXRpb25j
aGFuZ2VFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8sIEV2ZW50OjpJc0NhbmNlbGFibGU6Ok5v
KSk7CisgICAgbV9vcmllbnRhdGlvbk5vdGlmaWVyLm9yaWVudGF0aW9uQ2hhbmdlZChvcmllbnRh
dGlvbik7Cit9CisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorCit2b2lkIERvY3VtZW50Ojpz
dG9wTWVkaWFDYXB0dXJlKE1lZGlhUHJvZHVjZXI6Ok1lZGlhQ2FwdHVyZUtpbmQga2luZCkKK3sK
KyAgICBNZWRpYVN0cmVhbVRyYWNrOjplbmRDYXB0dXJlKCp0aGlzLCBraW5kKTsKK30KKwordm9p
ZCBEb2N1bWVudDo6bWVkaWFTdHJlYW1DYXB0dXJlU3RhdGVDaGFuZ2VkKCkKK3sKKyAgICBpZiAo
IU1lZGlhUHJvZHVjZXI6OmlzQ2FwdHVyaW5nKG1fbWVkaWFTdGF0ZSkpCisgICAgICAgIHJldHVy
bjsKKworICAgIGZvckVhY2hNZWRpYUVsZW1lbnQoW10gKEhUTUxNZWRpYUVsZW1lbnQmIGVsZW1l
bnQpIHsKKyAgICAgICAgZWxlbWVudC5tZWRpYVN0cmVhbUNhcHR1cmVTdGFydGVkKCk7CisgICAg
fSk7Cit9CisKKyNlbmRpZgorCitjb25zdCBBdG9tU3RyaW5nJiBEb2N1bWVudDo6YmdDb2xvcigp
IGNvbnN0Cit7CisgICAgUmVmUHRyIGJvZHlFbGVtZW50ID0gYm9keSgpOworICAgIGlmICghYm9k
eUVsZW1lbnQpCisgICAgICAgIHJldHVybiBlbXB0eUF0b20oKTsKKyAgICByZXR1cm4gYm9keUVs
ZW1lbnQtPmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYmdjb2xvckF0dHIpOworfQor
Cit2b2lkIERvY3VtZW50OjpzZXRCZ0NvbG9yKGNvbnN0IFN0cmluZyYgdmFsdWUpCit7CisgICAg
aWYgKFJlZlB0ciBib2R5RWxlbWVudCA9IGJvZHkoKSkKKyAgICAgICAgYm9keUVsZW1lbnQtPnNl
dEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYmdjb2xvckF0dHIsIHZhbHVlKTsKK30K
KworY29uc3QgQXRvbVN0cmluZyYgRG9jdW1lbnQ6OmZnQ29sb3IoKSBjb25zdAoreworICAgIFJl
ZlB0ciBib2R5RWxlbWVudCA9IGJvZHkoKTsKKyAgICBpZiAoIWJvZHlFbGVtZW50KQorICAgICAg
ICByZXR1cm4gZW1wdHlBdG9tKCk7CisgICAgcmV0dXJuIGJvZHlFbGVtZW50LT5hdHRyaWJ1dGVX
aXRob3V0U3luY2hyb25pemF0aW9uKHRleHRBdHRyKTsKK30KKwordm9pZCBEb2N1bWVudDo6c2V0
RmdDb2xvcihjb25zdCBTdHJpbmcmIHZhbHVlKQoreworICAgIGlmIChSZWZQdHIgYm9keUVsZW1l
bnQgPSBib2R5KCkpCisgICAgICAgIGJvZHlFbGVtZW50LT5zZXRBdHRyaWJ1dGVXaXRob3V0U3lu
Y2hyb25pemF0aW9uKHRleHRBdHRyLCB2YWx1ZSk7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIERv
Y3VtZW50OjphbGlua0NvbG9yKCkgY29uc3QKK3sKKyAgICBSZWZQdHIgYm9keUVsZW1lbnQgPSBi
b2R5KCk7CisgICAgaWYgKCFib2R5RWxlbWVudCkKKyAgICAgICAgcmV0dXJuIGVtcHR5QXRvbSgp
OworICAgIHJldHVybiBib2R5RWxlbWVudC0+YXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlv
bihhbGlua0F0dHIpOworfQorCit2b2lkIERvY3VtZW50OjpzZXRBbGlua0NvbG9yKGNvbnN0IFN0
cmluZyYgdmFsdWUpCit7CisgICAgaWYgKFJlZlB0ciBib2R5RWxlbWVudCA9IGJvZHkoKSkKKyAg
ICAgICAgYm9keUVsZW1lbnQtPnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYWxp
bmtBdHRyLCB2YWx1ZSk7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIERvY3VtZW50OjpsaW5rQ29s
b3JGb3JCaW5kaW5ncygpIGNvbnN0Cit7CisgICAgUmVmUHRyIGJvZHlFbGVtZW50ID0gYm9keSgp
OworICAgIGlmICghYm9keUVsZW1lbnQpCisgICAgICAgIHJldHVybiBlbXB0eUF0b20oKTsKKyAg
ICByZXR1cm4gYm9keUVsZW1lbnQtPmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24obGlu
a0F0dHIpOworfQorCit2b2lkIERvY3VtZW50OjpzZXRMaW5rQ29sb3JGb3JCaW5kaW5ncyhjb25z
dCBTdHJpbmcmIHZhbHVlKQoreworICAgIGlmIChSZWZQdHIgYm9keUVsZW1lbnQgPSBib2R5KCkp
CisgICAgICAgIGJvZHlFbGVtZW50LT5zZXRBdHRyaWJ1dGVXaXRob3V0U3luY2hyb25pemF0aW9u
KGxpbmtBdHRyLCB2YWx1ZSk7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIERvY3VtZW50Ojp2bGlu
a0NvbG9yKCkgY29uc3QKK3sKKyAgICBSZWZQdHIgYm9keUVsZW1lbnQgPSBib2R5KCk7CisgICAg
aWYgKCFib2R5RWxlbWVudCkKKyAgICAgICAgcmV0dXJuIGVtcHR5QXRvbSgpOworICAgIHJldHVy
biBib2R5RWxlbWVudC0+YXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXphdGlvbih2bGlua0F0dHIp
OworfQorCit2b2lkIERvY3VtZW50OjpzZXRWbGlua0NvbG9yKGNvbnN0IFN0cmluZyYgdmFsdWUp
Cit7CisgICAgaWYgKFJlZlB0ciBib2R5RWxlbWVudCA9IGJvZHkoKSkKKyAgICAgICAgYm9keUVs
ZW1lbnQtPnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24odmxpbmtBdHRyLCB2YWx1
ZSk7Cit9CisKK0xvZ2dlciYgRG9jdW1lbnQ6OmxvZ2dlcigpCit7CisgICAgaWYgKCFtX2xvZ2dl
cikgeworICAgICAgICBtX2xvZ2dlciA9IExvZ2dlcjo6Y3JlYXRlKHRoaXMpOworICAgICAgICBh
dXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgICAgICBtX2xvZ2dlci0+c2V0RW5hYmxlZCh0
aGlzLCBwYWdlICYmIHBhZ2UtPnNlc3Npb25JRCgpLmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgp
KTsKKyAgICAgICAgbV9sb2dnZXItPmFkZE9ic2VydmVyKCp0aGlzKTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gKm1fbG9nZ2VyOworfQorICAgIAorc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4g
RG9jdW1lbnQ6OnBhZ2VJRCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZnJhbWUtPmxvYWRlcigp
LnBhZ2VJRCgpOworfQorCitzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gRG9jdW1lbnQ6
OmZyYW1lSUQoKSBjb25zdAoreworICAgIHJldHVybiBtX2ZyYW1lLT5sb2FkZXIoKS5mcmFtZUlE
KCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlZ2lzdGVyQXJ0aWNsZUVsZW1lbnQoRWxlbWVudCYg
YXJ0aWNsZSkKK3sKKyAgICBtX2FydGljbGVFbGVtZW50cy5hZGQoYXJ0aWNsZSk7Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OnVucmVnaXN0ZXJBcnRpY2xlRWxlbWVudChFbGVtZW50JiBhcnRpY2xlKQor
eworICAgIG1fYXJ0aWNsZUVsZW1lbnRzLnJlbW92ZShhcnRpY2xlKTsKKyAgICBpZiAobV9tYWlu
QXJ0aWNsZUVsZW1lbnQgPT0gJmFydGljbGUpCisgICAgICAgIG1fbWFpbkFydGljbGVFbGVtZW50
ID0gbnVsbHB0cjsKK30KKwordm9pZCBEb2N1bWVudDo6dXBkYXRlTWFpbkFydGljbGVFbGVtZW50
QWZ0ZXJMYXlvdXQoKQoreworICAgIEFTU0VSVChwYWdlKCkgJiYgcGFnZSgpLT5yZXF1ZXN0ZWRM
YXlvdXRNaWxlc3RvbmVzKCkuY29udGFpbnMoRGlkUmVuZGVyU2lnbmlmaWNhbnRBbW91bnRPZlRl
eHQpKTsKKworICAgIC8vIElmIHRoZXJlIGFyZSB0b28gbWFueSBhcnRpY2xlIGVsZW1lbnRzIG9u
IHRoZSBwYWdlLCBkb24ndCBjb25zaWRlciBhbnkgb25lIG9mIHRoZW0gdG8gYmUgIm1haW4gY29u
dGVudCIuCisgICAgY29uc3QgdW5zaWduZWQgbWF4TnVtYmVyT2ZBcnRpY2xlc0JlZm9yZUlnbm9y
aW5nTWFpbkNvbnRlbnRBcnRpY2xlID0gMTA7CisKKyAgICAvLyBXZSBjb25zaWRlciBhbiBhcnRp
Y2xlIHRvIGJlIG1haW4gY29udGVudCBpZiBpdCBpcyBlaXRoZXI6CisgICAgLy8gMS4gVGhlIG9u
bHkgYXJ0aWNsZSBlbGVtZW50IGluIHRoZSBkb2N1bWVudC4KKyAgICAvLyAyLiBNdWNoIHRhbGxl
ciB0aGFuIHRoZSBuZXh0IHRhbGxlc3QgYXJ0aWNsZSwgYW5kIGFsc28gbXVjaCBsYXJnZXIgdGhh
biB0aGUgdmlld3BvcnQuCisgICAgY29uc3QgZmxvYXQgbWluaW11bVNlY29uZFRhbGxlc3RBcnRp
Y2xlSGVpZ2h0RmFjdG9yID0gNDsKKyAgICBjb25zdCBmbG9hdCBtaW5pbXVtVmlld3BvcnRBcmVh
RmFjdG9yID0gNTsKKworICAgIG1fbWFpbkFydGljbGVFbGVtZW50ID0gbnVsbHB0cjsKKworICAg
IGF1dG8gbnVtYmVyT2ZBcnRpY2xlcyA9IG1fYXJ0aWNsZUVsZW1lbnRzLmNvbXB1dGVTaXplKCk7
CisgICAgaWYgKCFudW1iZXJPZkFydGljbGVzIHx8IG51bWJlck9mQXJ0aWNsZXMgPiBtYXhOdW1i
ZXJPZkFydGljbGVzQmVmb3JlSWdub3JpbmdNYWluQ29udGVudEFydGljbGUpCisgICAgICAgIHJl
dHVybjsKKworICAgIFJlZlB0cjxFbGVtZW50PiB0YWxsZXN0QXJ0aWNsZTsKKyAgICBmbG9hdCB0
YWxsZXN0QXJ0aWNsZUhlaWdodCA9IDA7CisgICAgZmxvYXQgdGFsbGVzdEFydGljbGVXaWR0aCA9
IDA7CisgICAgZmxvYXQgc2Vjb25kVGFsbGVzdEFydGljbGVIZWlnaHQgPSAwOworCisgICAgZm9y
IChhdXRvJiBhcnRpY2xlIDogbV9hcnRpY2xlRWxlbWVudHMpIHsKKyAgICAgICAgYXV0byogYm94
ID0gYXJ0aWNsZS5yZW5kZXJCb3goKTsKKyAgICAgICAgZmxvYXQgaGVpZ2h0ID0gYm94ID8gYm94
LT5oZWlnaHQoKS50b0Zsb2F0KCkgOiAwOworICAgICAgICBpZiAoaGVpZ2h0ID49IHRhbGxlc3RB
cnRpY2xlSGVpZ2h0KSB7CisgICAgICAgICAgICBzZWNvbmRUYWxsZXN0QXJ0aWNsZUhlaWdodCA9
IHRhbGxlc3RBcnRpY2xlSGVpZ2h0OworICAgICAgICAgICAgdGFsbGVzdEFydGljbGVIZWlnaHQg
PSBoZWlnaHQ7CisgICAgICAgICAgICB0YWxsZXN0QXJ0aWNsZVdpZHRoID0gYm94ID8gYm94LT53
aWR0aCgpLnRvRmxvYXQoKSA6IDA7CisgICAgICAgICAgICB0YWxsZXN0QXJ0aWNsZSA9ICZhcnRp
Y2xlOworICAgICAgICB9IGVsc2UgaWYgKGhlaWdodCA+PSBzZWNvbmRUYWxsZXN0QXJ0aWNsZUhl
aWdodCkKKyAgICAgICAgICAgIHNlY29uZFRhbGxlc3RBcnRpY2xlSGVpZ2h0ID0gaGVpZ2h0Owor
ICAgIH0KKworICAgIGlmIChudW1iZXJPZkFydGljbGVzID09IDEpIHsKKyAgICAgICAgbV9tYWlu
QXJ0aWNsZUVsZW1lbnQgPSBtYWtlV2Vha1B0cih0YWxsZXN0QXJ0aWNsZS5nZXQoKSk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAodGFsbGVzdEFydGljbGVIZWlnaHQgPCBtaW5p
bXVtU2Vjb25kVGFsbGVzdEFydGljbGVIZWlnaHRGYWN0b3IgKiBzZWNvbmRUYWxsZXN0QXJ0aWNs
ZUhlaWdodCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCF2aWV3KCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIGF1dG8gdmlld3BvcnRTaXplID0gdmlldygpLT5sYXlvdXRWaWV3cG9ydFJl
Y3QoKS5zaXplKCk7CisgICAgaWYgKHRhbGxlc3RBcnRpY2xlV2lkdGggKiB0YWxsZXN0QXJ0aWNs
ZUhlaWdodCA8IG1pbmltdW1WaWV3cG9ydEFyZWFGYWN0b3IgKiAodmlld3BvcnRTaXplLndpZHRo
KCkgKiB2aWV3cG9ydFNpemUuaGVpZ2h0KCkpLnRvRmxvYXQoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbV9tYWluQXJ0aWNsZUVsZW1lbnQgPSBtYWtlV2Vha1B0cih0YWxsZXN0QXJ0aWNsZS5n
ZXQoKSk7Cit9CisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikK
KworYm9vbCBEb2N1bWVudDo6aGFzUmVxdWVzdGVkUGFnZVNwZWNpZmljU3RvcmFnZUFjY2Vzc1dp
dGhVc2VySW50ZXJhY3Rpb24oY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbikKK3sKKyAg
ICByZXR1cm4gbV9yZWdpc3RyYWJsZURvbWFpblJlcXVlc3RlZFBhZ2VTcGVjaWZpY1N0b3JhZ2VB
Y2Nlc3NXaXRoVXNlckludGVyYWN0aW9uID09IGRvbWFpbjsKK30KKwordm9pZCBEb2N1bWVudDo6
c2V0SGFzUmVxdWVzdGVkUGFnZVNwZWNpZmljU3RvcmFnZUFjY2Vzc1dpdGhVc2VySW50ZXJhY3Rp
b24oY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbikKK3sKKyAgICBtX3JlZ2lzdHJhYmxl
RG9tYWluUmVxdWVzdGVkUGFnZVNwZWNpZmljU3RvcmFnZUFjY2Vzc1dpdGhVc2VySW50ZXJhY3Rp
b24gPSBkb21haW47Cit9CisKK3ZvaWQgRG9jdW1lbnQ6Ondhc0xvYWRlZFdpdGhEYXRhVHJhbnNm
ZXJGcm9tUHJldmFsZW50UmVzb3VyY2UoKQoreworICAgIGRvd25ncmFkZVJlZmVycmVyVG9SZWdp
c3RyYWJsZURvbWFpbigpOworfQorCit2b2lkIERvY3VtZW50Ojpkb3duZ3JhZGVSZWZlcnJlclRv
UmVnaXN0cmFibGVEb21haW4oKQoreworICAgIFVSTCByZWZlcnJlclVSTCB7IHsgfSwgcmVmZXJy
ZXIoKSB9OworICAgIGlmIChyZWZlcnJlclVSTC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsK
KworICAgIGF1dG8gZG9tYWluU3RyaW5nID0gUmVnaXN0cmFibGVEb21haW4geyByZWZlcnJlclVS
TCB9LnN0cmluZygpOworICAgIGlmIChkb21haW5TdHJpbmcuaXNFbXB0eSgpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBpZiAoYXV0byBwb3J0ID0gcmVmZXJyZXJVUkwucG9ydCgpKQorICAgICAg
ICBtX3JlZmVycmVyT3ZlcnJpZGUgPSBtYWtlU3RyaW5nKHJlZmVycmVyVVJMLnByb3RvY29sKCks
ICI6Ly8iLCBkb21haW5TdHJpbmcsICc6JywgKnBvcnQsICcvJyk7CisgICAgZWxzZQorICAgICAg
ICBtX3JlZmVycmVyT3ZlcnJpZGUgPSBtYWtlU3RyaW5nKHJlZmVycmVyVVJMLnByb3RvY29sKCks
ICI6Ly8iLCBkb21haW5TdHJpbmcsICcvJyk7Cit9CisKKyNlbmRpZgorCit2b2lkIERvY3VtZW50
OjpzZXRDb25zb2xlTWVzc2FnZUxpc3RlbmVyKFJlZlB0cjxTdHJpbmdDYWxsYmFjaz4mJiBsaXN0
ZW5lcikKK3sKKyAgICBtX2NvbnNvbGVNZXNzYWdlTGlzdGVuZXIgPSBsaXN0ZW5lcjsKK30KKwor
RG9jdW1lbnRUaW1lbGluZXNDb250cm9sbGVyJiBEb2N1bWVudDo6ZW5zdXJlVGltZWxpbmVzQ29u
dHJvbGxlcigpCit7CisgICAgaWYgKCFtX3RpbWVsaW5lc0NvbnRyb2xsZXIpCisgICAgICAgIG1f
dGltZWxpbmVzQ29udHJvbGxlciA9IG1ha2VVbmlxdWU8RG9jdW1lbnRUaW1lbGluZXNDb250cm9s
bGVyPigqdGhpcyk7CisgICAgcmV0dXJuICptX3RpbWVsaW5lc0NvbnRyb2xsZXIuZ2V0KCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OnVwZGF0ZUFuaW1hdGlvbnNBbmRTZW5kRXZlbnRzKCkKK3sKKyAg
ICBhdXRvIGRvbVdpbmRvdyA9IHRoaXMtPmRvbVdpbmRvdygpOworICAgIGlmICghZG9tV2luZG93
KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoYXV0byogdGltZWxpbmVzQ29udHJvbGxlciA9
IHRoaXMtPnRpbWVsaW5lc0NvbnRyb2xsZXIoKSkKKyAgICAgICAgdGltZWxpbmVzQ29udHJvbGxl
ci0+dXBkYXRlQW5pbWF0aW9uc0FuZFNlbmRFdmVudHMoZG9tV2luZG93LT5mcm96ZW5Ob3dUaW1l
c3RhbXAoKSk7Cit9CisKK0RvY3VtZW50VGltZWxpbmUmIERvY3VtZW50Ojp0aW1lbGluZSgpCit7
CisgICAgaWYgKCFtX3RpbWVsaW5lKQorICAgICAgICBtX3RpbWVsaW5lID0gRG9jdW1lbnRUaW1l
bGluZTo6Y3JlYXRlKCp0aGlzKTsKKworICAgIHJldHVybiAqbV90aW1lbGluZTsKK30KKworVmVj
dG9yPFJlZlB0cjxXZWJBbmltYXRpb24+PiBEb2N1bWVudDo6Z2V0QW5pbWF0aW9ucygpCit7Cisg
ICAgcmV0dXJuIG1hdGNoaW5nQW5pbWF0aW9ucyhbXSAoRWxlbWVudCYgdGFyZ2V0KSAtPiBib29s
IHsKKyAgICAgICAgcmV0dXJuICF0YXJnZXQuY29udGFpbmluZ1NoYWRvd1Jvb3QoKTsKKyAgICB9
KTsKK30KKworVmVjdG9yPFJlZlB0cjxXZWJBbmltYXRpb24+PiBEb2N1bWVudDo6bWF0Y2hpbmdB
bmltYXRpb25zKGNvbnN0IFdURjo6RnVuY3Rpb248Ym9vbChFbGVtZW50Jik+JiBmdW5jdGlvbikK
K3sKKyAgICAvLyBGb3IgdGhlIGxpc3Qgb2YgYW5pbWF0aW9ucyB0byBiZSBjdXJyZW50LCB3ZSBu
ZWVkIHRvIGFjY291bnQgZm9yIGFueSBwZW5kaW5nIENTUyBjaGFuZ2VzLAorICAgIC8vIHN1Y2gg
YXMgdXBkYXRlcyB0byBDU1MgQW5pbWF0aW9ucyBhbmQgQ1NTIFRyYW5zaXRpb25zLgorICAgIHVw
ZGF0ZVN0eWxlSWZOZWVkZWQoKTsKKworICAgIFZlY3RvcjxSZWZQdHI8V2ViQW5pbWF0aW9uPj4g
YW5pbWF0aW9uczsKKyAgICBmb3IgKGF1dG8qIGFuaW1hdGlvbiA6IFdlYkFuaW1hdGlvbjo6aW5z
dGFuY2VzKCkpIHsKKyAgICAgICAgaWYgKCFhbmltYXRpb24gfHwgIWFuaW1hdGlvbi0+aXNSZWxl
dmFudCgpIHx8ICFpczxLZXlmcmFtZUVmZmVjdD4oYW5pbWF0aW9uLT5lZmZlY3QoKSkpCisgICAg
ICAgICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvKiB0YXJnZXQgPSBkb3duY2FzdDxLZXlm
cmFtZUVmZmVjdD4oKmFuaW1hdGlvbi0+ZWZmZWN0KCkpLnRhcmdldEVsZW1lbnRPclBzZXVkb0Vs
ZW1lbnQoKTsKKyAgICAgICAgaWYgKHRhcmdldCAmJiB0YXJnZXQtPmlzQ29ubmVjdGVkKCkgJiYg
JnRhcmdldC0+ZG9jdW1lbnQoKSA9PSB0aGlzICYmIGZ1bmN0aW9uKCp0YXJnZXQpKQorICAgICAg
ICAgICAgYW5pbWF0aW9ucy5hcHBlbmQoYW5pbWF0aW9uKTsKKyAgICB9CisKKyAgICBzdGQ6OnN0
YWJsZV9zb3J0KGFuaW1hdGlvbnMuYmVnaW4oKSwgYW5pbWF0aW9ucy5lbmQoKSwgW10oYXV0byYg
bGhzLCBhdXRvJiByaHMpIHsKKyAgICAgICAgcmV0dXJuIGNvbXBhcmVBbmltYXRpb25zQnlDb21w
b3NpdGVPcmRlcigqbGhzLCAqcmhzKTsKKyAgICB9KTsKKworICAgIHJldHVybiBhbmltYXRpb25z
OworfQorCit2b2lkIERvY3VtZW50OjphZGRUb3BMYXllckVsZW1lbnQoRWxlbWVudCYgZWxlbWVu
dCkKK3sKKyAgICBSRUxFQVNFX0FTU0VSVCgmZWxlbWVudC5kb2N1bWVudCgpID09IHRoaXMgJiYg
ZWxlbWVudC5pc0Nvbm5lY3RlZCgpICYmICFlbGVtZW50LmlzSW5Ub3BMYXllcigpKTsKKyAgICAv
LyBUbyBhZGQgYW4gZWxlbWVudCB0byBhIHRvcCBsYXllciwgcmVtb3ZlIGl0IGZyb20gdG9wIGxh
eWVyIGFuZCB0aGVuIGFwcGVuZCBpdCB0byB0b3AgbGF5ZXIuCisgICAgYXV0byByZXN1bHQgPSBt
X3RvcExheWVyRWxlbWVudHMuYWRkKGVsZW1lbnQpOworICAgIFJFTEVBU0VfQVNTRVJUKHJlc3Vs
dC5pc05ld0VudHJ5KTsKK30KKwordm9pZCBEb2N1bWVudDo6cmVtb3ZlVG9wTGF5ZXJFbGVtZW50
KEVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgUkVMRUFTRV9BU1NFUlQoJmVsZW1lbnQuZG9jdW1l
bnQoKSA9PSB0aGlzICYmIGVsZW1lbnQuaXNJblRvcExheWVyKCkpOworICAgIGF1dG8gZGlkUmVt
b3ZlID0gbV90b3BMYXllckVsZW1lbnRzLnJlbW92ZShlbGVtZW50KTsKKyAgICBSRUxFQVNFX0FT
U0VSVChkaWRSZW1vdmUpOworfQorCitIVE1MRGlhbG9nRWxlbWVudCogRG9jdW1lbnQ6OmFjdGl2
ZU1vZGFsRGlhbG9nKCkgY29uc3QKK3sKKyAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBtYWtlUmV2
ZXJzZWRSYW5nZShtX3RvcExheWVyRWxlbWVudHMpKSB7CisgICAgICAgIGlmIChpczxIVE1MRGlh
bG9nRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgICAgICByZXR1cm4gZG93bmNhc3Q8SFRNTERp
YWxvZ0VsZW1lbnQ+KGVsZW1lbnQucHRyKCkpOworICAgIH0KKworICAgIHJldHVybiBudWxscHRy
OworfQorCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKwordm9pZCBEb2N1bWVudDo6
cmVnaXN0ZXJBdHRhY2htZW50SWRlbnRpZmllcihjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIpCit7
CisgICAgLy8gRklYTUU6IENhbiB0aGlzIG51bGwgY2hlY2sgZm9yIEZyYW1lIGJlIHJlbW92ZWQ/
CisgICAgaWYgKGZyYW1lKCkpCisgICAgICAgIGVkaXRvcigpLnJlZ2lzdGVyQXR0YWNobWVudElk
ZW50aWZpZXIoaWRlbnRpZmllcik7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmRpZEluc2VydEF0dGFj
aG1lbnRFbGVtZW50KEhUTUxBdHRhY2htZW50RWxlbWVudCYgYXR0YWNobWVudCkKK3sKKyAgICBh
dXRvIGlkZW50aWZpZXIgPSBhdHRhY2htZW50LnVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICBhdXRv
IHByZXZpb3VzSWRlbnRpZmllciA9IGlkZW50aWZpZXI7CisgICAgYm9vbCBwcmV2aW91c0lkZW50
aWZpZXJJc05vdFVuaXF1ZSA9ICFwcmV2aW91c0lkZW50aWZpZXIuaXNFbXB0eSgpICYmIG1fYXR0
YWNobWVudElkZW50aWZpZXJUb0VsZW1lbnRNYXAuY29udGFpbnMocHJldmlvdXNJZGVudGlmaWVy
KTsKKyAgICBpZiAoaWRlbnRpZmllci5pc0VtcHR5KCkgfHwgcHJldmlvdXNJZGVudGlmaWVySXNO
b3RVbmlxdWUpIHsKKyAgICAgICAgcHJldmlvdXNJZGVudGlmaWVyID0gaWRlbnRpZmllcjsKKyAg
ICAgICAgaWRlbnRpZmllciA9IGNyZWF0ZUNhbm9uaWNhbFVVSURTdHJpbmcoKTsKKyAgICAgICAg
YXR0YWNobWVudC5zZXRVbmlxdWVJZGVudGlmaWVyKGlkZW50aWZpZXIpOworICAgIH0KKworICAg
IG1fYXR0YWNobWVudElkZW50aWZpZXJUb0VsZW1lbnRNYXAuc2V0KGlkZW50aWZpZXIsIGF0dGFj
aG1lbnQpOworCisgICAgLy8gRklYTUU6IENhbiB0aGlzIG51bGwgY2hlY2sgZm9yIEZyYW1lIGJl
IHJlbW92ZWQ/CisgICAgaWYgKGZyYW1lKCkpIHsKKyAgICAgICAgaWYgKHByZXZpb3VzSWRlbnRp
ZmllcklzTm90VW5pcXVlKQorICAgICAgICAgICAgZWRpdG9yKCkuY2xvbmVBdHRhY2htZW50RGF0
YShwcmV2aW91c0lkZW50aWZpZXIsIGlkZW50aWZpZXIpOworICAgICAgICBlZGl0b3IoKS5kaWRJ
bnNlcnRBdHRhY2htZW50RWxlbWVudChhdHRhY2htZW50KTsKKyAgICB9Cit9CisKK3ZvaWQgRG9j
dW1lbnQ6OmRpZFJlbW92ZUF0dGFjaG1lbnRFbGVtZW50KEhUTUxBdHRhY2htZW50RWxlbWVudCYg
YXR0YWNobWVudCkKK3sKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBhdHRhY2htZW50LnVuaXF1ZUlk
ZW50aWZpZXIoKTsKKyAgICBpZiAoIWlkZW50aWZpZXIpCisgICAgICAgIHJldHVybjsKKworICAg
IG1fYXR0YWNobWVudElkZW50aWZpZXJUb0VsZW1lbnRNYXAucmVtb3ZlKGlkZW50aWZpZXIpOwor
CisgICAgLy8gRklYTUU6IENhbiB0aGlzIG51bGwgY2hlY2sgZm9yIEZyYW1lIGJlIHJlbW92ZWQ/
CisgICAgaWYgKGZyYW1lKCkpCisgICAgICAgIGVkaXRvcigpLmRpZFJlbW92ZUF0dGFjaG1lbnRF
bGVtZW50KGF0dGFjaG1lbnQpOworfQorCitSZWZQdHI8SFRNTEF0dGFjaG1lbnRFbGVtZW50PiBE
b2N1bWVudDo6YXR0YWNobWVudEZvcklkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBpZGVudGlmaWVy
KSBjb25zdAoreworICAgIHJldHVybiBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9FbGVtZW50TWFw
LmdldChpZGVudGlmaWVyKTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1F
TlQpCisKK3N0YXRpYyBNZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2VGb3JXVEZMb2dDaGFubmVs
KGNvbnN0IFdURkxvZ0NoYW5uZWwmIGNoYW5uZWwpCit7CisgICAgc3RhdGljIGNvbnN0IE5ldmVy
RGVzdHJveWVkPFN0cmluZz4gbWVkaWFDaGFubmVsID0gTUFLRV9TVEFUSUNfU1RSSU5HX0lNUEwo
Im1lZGlhIik7CisgICAgc3RhdGljIGNvbnN0IE5ldmVyRGVzdHJveWVkPFN0cmluZz4gd2VicnRj
Q2hhbm5lbCA9IE1BS0VfU1RBVElDX1NUUklOR19JTVBMKCJ3ZWJydGMiKTsKKyAgICBzdGF0aWMg
Y29uc3QgTmV2ZXJEZXN0cm95ZWQ8U3RyaW5nPiBtZWRpYVNvdXJjZUNoYW5uZWwgPSBNQUtFX1NU
QVRJQ19TVFJJTkdfSU1QTCgibWVkaWFzb3VyY2UiKTsKKworICAgIGlmIChlcXVhbElnbm9yaW5n
QVNDSUlDYXNlKG1lZGlhQ2hhbm5lbCwgY2hhbm5lbC5uYW1lKSkKKyAgICAgICAgcmV0dXJuIE1l
c3NhZ2VTb3VyY2U6Ok1lZGlhOworCisgICAgaWYgKGVxdWFsSWdub3JpbmdBU0NJSUNhc2Uod2Vi
cnRjQ2hhbm5lbCwgY2hhbm5lbC5uYW1lKSkKKyAgICAgICAgcmV0dXJuIE1lc3NhZ2VTb3VyY2U6
OldlYlJUQzsKKworICAgIGlmIChlcXVhbElnbm9yaW5nQVNDSUlDYXNlKG1lZGlhU291cmNlQ2hh
bm5lbCwgY2hhbm5lbC5uYW1lKSkKKyAgICAgICAgcmV0dXJuIE1lc3NhZ2VTb3VyY2U6Ok1lZGlh
U291cmNlOworCisgICAgcmV0dXJuIE1lc3NhZ2VTb3VyY2U6Ok90aGVyOworfQorCitzdGF0aWMg
TWVzc2FnZUxldmVsIG1lc3NhZ2VMZXZlbEZyb21XVEZMb2dMZXZlbChXVEZMb2dMZXZlbCBsZXZl
bCkKK3sKKyAgICBzd2l0Y2ggKGxldmVsKSB7CisgICAgY2FzZSBXVEZMb2dMZXZlbDo6QWx3YXlz
OgorICAgICAgICByZXR1cm4gTWVzc2FnZUxldmVsOjpMb2c7CisgICAgY2FzZSBXVEZMb2dMZXZl
bDo6RXJyb3I6CisgICAgICAgIHJldHVybiBNZXNzYWdlTGV2ZWw6OkVycm9yOworICAgICAgICBi
cmVhazsKKyAgICBjYXNlIFdURkxvZ0xldmVsOjpXYXJuaW5nOgorICAgICAgICByZXR1cm4gTWVz
c2FnZUxldmVsOjpXYXJuaW5nOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFdURkxvZ0xldmVs
OjpJbmZvOgorICAgICAgICByZXR1cm4gTWVzc2FnZUxldmVsOjpJbmZvOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIFdURkxvZ0xldmVsOjpEZWJ1ZzoKKyAgICAgICAgcmV0dXJuIE1lc3NhZ2VM
ZXZlbDo6RGVidWc7CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgIHJldHVybiBNZXNzYWdlTGV2ZWw6OkxvZzsKK30KKworc3RhdGljIGlubGlu
ZSBWZWN0b3I8SlNPTkxvZ1ZhbHVlPiBjcm9zc1RocmVhZENvcHkoVmVjdG9yPEpTT05Mb2dWYWx1
ZT4mJiBzb3VyY2UpCit7CisgICAgYXV0byB2YWx1ZXMgPSBXVEZNb3ZlKHNvdXJjZSk7CisgICAg
Zm9yIChhdXRvJiB2YWx1ZSA6IHZhbHVlcykKKyAgICAgICAgdmFsdWUudmFsdWUgPSBjcm9zc1Ro
cmVhZENvcHkoV1RGTW92ZSh2YWx1ZS52YWx1ZSkpOworICAgIHJldHVybiB2YWx1ZXM7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OmRpZExvZ01lc3NhZ2UoY29uc3QgV1RGTG9nQ2hhbm5lbCYgY2hhbm5l
bCwgV1RGTG9nTGV2ZWwgbGV2ZWwsIFZlY3RvcjxKU09OTG9nVmFsdWU+JiYgbG9nTWVzc2FnZXMp
Cit7CisgICAgaWYgKCFpc01haW5UaHJlYWQoKSkgeworICAgICAgICBwb3N0VGFzayhbdGhpcywg
Y2hhbm5lbCwgbGV2ZWwsIGxvZ01lc3NhZ2VzID0gY3Jvc3NUaHJlYWRDb3B5KFdURk1vdmUobG9n
TWVzc2FnZXMpKV0oYXV0byYpIG11dGFibGUgeworICAgICAgICAgICAgZGlkTG9nTWVzc2FnZShj
aGFubmVsLCBsZXZlbCwgV1RGTW92ZShsb2dNZXNzYWdlcykpOworICAgICAgICB9KTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKyAgICBhdXRvKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAgIGlm
ICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKHBhZ2UtPnNlc3Npb25JRCgp
LmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpKTsKKworICAgIGF1dG8gbWVzc2FnZVNvdXJjZSA9
IG1lc3NhZ2VTb3VyY2VGb3JXVEZMb2dDaGFubmVsKGNoYW5uZWwpOworICAgIGlmIChtZXNzYWdl
U291cmNlID09IE1lc3NhZ2VTb3VyY2U6Ok90aGVyKQorICAgICAgICByZXR1cm47CisKKyAgICBl
dmVudExvb3AoKS5xdWV1ZVRhc2soVGFza1NvdXJjZTo6SW50ZXJuYWxBc3luY1Rhc2ssIFt3ZWFr
VGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgbGV2ZWwsIG1lc3NhZ2VTb3VyY2UsIGxvZ01lc3Nh
Z2VzID0gV1RGTW92ZShsb2dNZXNzYWdlcyldKCkgbXV0YWJsZSB7CisgICAgICAgIGlmICghd2Vh
a1RoaXMgfHwgIXdlYWtUaGlzLT5wYWdlKCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgYXV0byBtZXNzYWdlTGV2ZWwgPSBtZXNzYWdlTGV2ZWxGcm9tV1RGTG9nTGV2ZWwobGV2ZWwp
OworICAgICAgICBhdXRvIG1lc3NhZ2UgPSBtYWtlVW5pcXVlPEluc3BlY3Rvcjo6Q29uc29sZU1l
c3NhZ2U+KG1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlOjpMb2csIG1lc3NhZ2VMZXZlbCwgV1RG
TW92ZShsb2dNZXNzYWdlcyksIG1haW5Xb3JsZEV4ZWNTdGF0ZSh3ZWFrVGhpcy0+ZnJhbWUoKSkp
OworCisgICAgICAgIHdlYWtUaGlzLT5hZGRDb25zb2xlTWVzc2FnZShXVEZNb3ZlKG1lc3NhZ2Up
KTsKKyAgICB9KTsKK30KKworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKK3ZvaWQgRG9jdW1l
bnQ6OnNldFNlcnZpY2VXb3JrZXJDb25uZWN0aW9uKFNXQ2xpZW50Q29ubmVjdGlvbiogc2Vydmlj
ZVdvcmtlckNvbm5lY3Rpb24pCit7CisgICAgaWYgKG1fc2VydmljZVdvcmtlckNvbm5lY3Rpb24g
PT0gc2VydmljZVdvcmtlckNvbm5lY3Rpb24gfHwgbV9oYXNQcmVwYXJlZEZvckRlc3RydWN0aW9u
IHx8IG1faXNTdXNwZW5kZWQpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChtX3NlcnZpY2VX
b3JrZXJDb25uZWN0aW9uKQorICAgICAgICBtX3NlcnZpY2VXb3JrZXJDb25uZWN0aW9uLT51bnJl
Z2lzdGVyU2VydmljZVdvcmtlckNsaWVudChpZGVudGlmaWVyKCkpOworCisgICAgbV9zZXJ2aWNl
V29ya2VyQ29ubmVjdGlvbiA9IHNlcnZpY2VXb3JrZXJDb25uZWN0aW9uOworCisgICAgaWYgKCFt
X3NlcnZpY2VXb3JrZXJDb25uZWN0aW9uKQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIGNv
bnRyb2xsaW5nU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXIgPSBhY3RpdmVTZXJ2
aWNlV29ya2VyKCkgPyBzdGQ6Om1ha2Vfb3B0aW9uYWw8U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bklkZW50aWZpZXI+KGFjdGl2ZVNlcnZpY2VXb3JrZXIoKS0+cmVnaXN0cmF0aW9uSWRlbnRpZmll
cigpKSA6IHN0ZDo6bnVsbG9wdDsKKyAgICBtX3NlcnZpY2VXb3JrZXJDb25uZWN0aW9uLT5yZWdp
c3RlclNlcnZpY2VXb3JrZXJDbGllbnQodG9wT3JpZ2luKCksIFNlcnZpY2VXb3JrZXJDbGllbnRE
YXRhOjpmcm9tKCp0aGlzLCAqc2VydmljZVdvcmtlckNvbm5lY3Rpb24pLCBjb250cm9sbGluZ1Nl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyLCB1c2VyQWdlbnQodXJsKCkpKTsKK30K
KyNlbmRpZgorCitTdHJpbmcgRG9jdW1lbnQ6OnNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0
cmluZyh1bnNpZ25lZCBrZXlTaXplSW5kZXgsIGNvbnN0IFN0cmluZyYgY2hhbGxlbmdlU3RyaW5n
LCBjb25zdCBVUkwmIHVybCkKK3sKKyAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOworICAg
IGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuIGVtcHR5U3RyaW5nKCk7CisgICAgcmV0dXJuIHBh
Z2UtPmNocm9tZSgpLmNsaWVudCgpLnNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyhr
ZXlTaXplSW5kZXgsIGNoYWxsZW5nZVN0cmluZywgdXJsKTsKK30KKworYm9vbCBEb2N1bWVudDo6
cmVnaXN0ZXJDU1NQcm9wZXJ0eShDU1NSZWdpc3RlcmVkQ3VzdG9tUHJvcGVydHkmJiBwcm9wKQor
eworICAgIHJldHVybiBtX0NTU1JlZ2lzdGVyZWRQcm9wZXJ0eVNldC5hZGQocHJvcC5uYW1lLCBt
YWtlVW5pcXVlPENTU1JlZ2lzdGVyZWRDdXN0b21Qcm9wZXJ0eT4oV1RGTW92ZShwcm9wKSkpLmlz
TmV3RW50cnk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OmRldGFjaEZyb21GcmFtZSgpCit7CisgICAg
Ly8gQXNzZXJ0aW9uIHRvIGhlbHAgcGlucGludCByZGFyOi8vcHJvYmxlbS80OTg3Nzg2Ny4gSWYg
dGhpcyBoaXRzLCB0aGUgY3Jhc2ggdHJhY2Ugc2hvdWxkIHRlbGwgdXMKKyAgICAvLyB3aGljaCBw
aWVjZSBvZiBjb2RlIGlzIGRldGFjaGluZyB0aGUgZG9jdW1lbnQgZnJvbSBpdHMgZnJhbWUgd2hp
bGUgY29uc3RydWN0aW5nIHRoZSBDYWNoZWRGcmFtZXMuCisgICAgUkVMRUFTRV9BU1NFUlQobV9t
YXlCZURldGFjaGVkRnJvbUZyYW1lKTsKKworICAgIG9ic2VydmVGcmFtZShudWxscHRyKTsKK30K
Kwordm9pZCBEb2N1bWVudDo6ZnJhbWVXYXNEaXNjb25uZWN0ZWRGcm9tT3duZXIoKQoreworICAg
IGlmICghZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGF1dG8qIHdpbmRvdyA9
IGRvbVdpbmRvdygpKQorICAgICAgICB3aW5kb3ctPndpbGxEZXRhY2hEb2N1bWVudEZyb21GcmFt
ZSgpOworCisgICAgZGV0YWNoRnJvbUZyYW1lKCk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OmhpdFRl
c3QoY29uc3QgSGl0VGVzdFJlcXVlc3QmIHJlcXVlc3QsIEhpdFRlc3RSZXN1bHQmIHJlc3VsdCkK
K3sKKyAgICByZXR1cm4gaGl0VGVzdChyZXF1ZXN0LCByZXN1bHQuaGl0VGVzdExvY2F0aW9uKCks
IHJlc3VsdCk7Cit9CisKK2Jvb2wgRG9jdW1lbnQ6OmhpdFRlc3QoY29uc3QgSGl0VGVzdFJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IEhpdFRlc3RMb2NhdGlvbiYgbG9jYXRpb24sIEhpdFRlc3RSZXN1
bHQmIHJlc3VsdCkKK3sKKyAgICBSZWY8RG9jdW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMpOwor
ICAgIHVwZGF0ZUxheW91dCgpOworICAgIGlmICghcmVuZGVyVmlldygpKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyNpZiBBU1NFUlRfRU5BQkxFRAorICAgIFNldEZvclNjb3BlPGJvb2w+IGhp
dFRlc3RSZXN0b3JlciB7IG1faW5IaXRUZXN0aW5nLCB0cnVlIH07CisjZW5kaWYKKworICAgIGF1
dG8mIGZyYW1lVmlldyA9IHJlbmRlclZpZXcoKS0+ZnJhbWVWaWV3KCk7CisgICAgUmVmPEZyYW1l
Vmlldz4gcHJvdGVjdG9yKGZyYW1lVmlldyk7CisKKyAgICBGcmFtZUZsYXR0ZW5pbmdMYXlvdXRE
aXNhbGxvd2VyIGRpc2FsbG93ZXIoZnJhbWVWaWV3KTsKKworICAgIGJvb2wgcmVzdWx0TGF5ZXIg
PSByZW5kZXJWaWV3KCktPmxheWVyKCktPmhpdFRlc3QocmVxdWVzdCwgbG9jYXRpb24sIHJlc3Vs
dCk7CisKKyAgICAvLyBTY3JvbGxWaWV3IHNjcm9sbGJhcnMgYXJlIG5vdCB0aGUgc2FtZSBhcyBS
ZW5kZXJMYXllciBzY3JvbGxiYXJzIHRlc3RlZCBieSBSZW5kZXJMYXllcjo6aGl0VGVzdE92ZXJm
bG93Q29udHJvbHMsCisgICAgLy8gc28gd2UgbmVlZCB0byB0ZXN0IFNjcm9sbFZpZXcgc2Nyb2xs
YmFycyBzZXBhcmF0ZWx5IGhlcmUuIEluIGNhc2Ugb2YgdXNpbmcgb3ZlcmxheSBzY3JvbGxiYXJz
LCB0aGUgbGF5ZXIgaGl0IHRlc3QKKyAgICAvLyB3aWxsIGFsd2F5cyB3b3JrIHNvIHdlIG5lZWQg
dG8gY2hlY2sgdGhlIFNjcm9sbFZpZXcgc2Nyb2xsYmFycyBpbiB0aGF0IGNhc2UgdG9vLgorICAg
IGlmICghcmVzdWx0TGF5ZXIgfHwgU2Nyb2xsYmFyVGhlbWU6OnRoZW1lKCkudXNlc092ZXJsYXlT
Y3JvbGxiYXJzKCkpIHsKKyAgICAgICAgLy8gRklYTUU6IENvbnNpZGVyIGlmIHRoaXMgdGVzdCBz
aG91bGQgYmUgZG9uZSB1bmNvbmRpdGlvbmFsbHkuCisgICAgICAgIGlmIChyZXF1ZXN0LmFsbG93
c0ZyYW1lU2Nyb2xsYmFycygpKSB7CisgICAgICAgICAgICBJbnRQb2ludCB3aW5kb3dQb2ludCA9
IGZyYW1lVmlldy5jb250ZW50c1RvV2luZG93KGxvY2F0aW9uLnJvdW5kZWRQb2ludCgpKTsKKyAg
ICAgICAgICAgIGlmIChhdXRvKiBmcmFtZVNjcm9sbGJhciA9IGZyYW1lVmlldy5zY3JvbGxiYXJB
dFBvaW50KHdpbmRvd1BvaW50KSkgeworICAgICAgICAgICAgICAgIHJlc3VsdC5zZXRTY3JvbGxi
YXIoZnJhbWVTY3JvbGxiYXIpOworICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfQorICAgIHJldHVybiByZXN1bHRMYXllcjsKK30KKwor
RWxlbWVudElkZW50aWZpZXIgRG9jdW1lbnQ6OmlkZW50aWZpZXJGb3JFbGVtZW50KEVsZW1lbnQm
IGVsZW1lbnQpCit7CisgICAgQVNTRVJUKCZlbGVtZW50LmRvY3VtZW50KCkgPT0gdGhpcyk7Cisg
ICAgYXV0byByZXN1bHQgPSBtX2lkZW50aWZpZWRFbGVtZW50c01hcC5lbnN1cmUoJmVsZW1lbnQs
IFsmXSB7CisgICAgICAgIHJldHVybiBlbGVtZW50LmNyZWF0ZUVsZW1lbnRJZGVudGlmaWVyKCk7
CisgICAgfSk7CisgICAgcmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWU7Cit9CisKK0VsZW1l
bnQqIERvY3VtZW50OjpzZWFyY2hGb3JFbGVtZW50QnlJZGVudGlmaWVyKGNvbnN0IEVsZW1lbnRJ
ZGVudGlmaWVyJiBpZGVudGlmaWVyKQoreworICAgIGZvciAoYXV0byBpdCA9IG1faWRlbnRpZmll
ZEVsZW1lbnRzTWFwLmJlZ2luKCk7IGl0ICE9IG1faWRlbnRpZmllZEVsZW1lbnRzTWFwLmVuZCgp
OyArK2l0KSB7CisgICAgICAgIGlmIChpdC0+dmFsdWUgPT0gaWRlbnRpZmllcikKKyAgICAgICAg
ICAgIHJldHVybiBpdC0+a2V5OworICAgIH0KKworICAgIHJldHVybiBudWxscHRyOworfQorCit2
b2lkIERvY3VtZW50OjppZGVudGlmaWVkRWxlbWVudFdhc1JlbW92ZWRGcm9tRG9jdW1lbnQoRWxl
bWVudCYgZWxlbWVudCkKK3sKKyAgICBtX2lkZW50aWZpZWRFbGVtZW50c01hcC5yZW1vdmUoJmVs
ZW1lbnQpOworfQorCisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKworRGV2aWNlT3Jp
ZW50YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyJiBEb2N1bWVudDo6ZGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyKCkKK3sKKyAgICBpZiAoJnRvcERvY3VtZW50
KCkgIT0gdGhpcykKKyAgICAgICAgcmV0dXJuIHRvcERvY3VtZW50KCkuZGV2aWNlT3JpZW50YXRp
b25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyKCk7CisKKyAgICBpZiAoIW1fZGV2aWNlT3JpZW50
YXRpb25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyKQorICAgICAgICBtX2RldmljZU9yaWVudGF0
aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlciA9IG1ha2VVbmlxdWU8RGV2aWNlT3JpZW50YXRp
b25BbmRNb3Rpb25BY2Nlc3NDb250cm9sbGVyPigqdGhpcyk7CisgICAgcmV0dXJuICptX2Rldmlj
ZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcjsKK30KKworI2VuZGlmCisKKyNp
ZiBFTkFCTEUoQ1NTX1BBSU5USU5HX0FQSSkKK1BhaW50V29ya2xldCYgRG9jdW1lbnQ6OmVuc3Vy
ZVBhaW50V29ya2xldCgpCit7CisgICAgaWYgKCFtX3BhaW50V29ya2xldCkKKyAgICAgICAgbV9w
YWludFdvcmtsZXQgPSBQYWludFdvcmtsZXQ6OmNyZWF0ZSgqdGhpcyk7CisgICAgcmV0dXJuICpt
X3BhaW50V29ya2xldDsKK30KKworUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUqIERvY3VtZW50Ojpw
YWludFdvcmtsZXRHbG9iYWxTY29wZUZvck5hbWUoY29uc3QgU3RyaW5nJiBuYW1lKQoreworICAg
IHJldHVybiBtX3BhaW50V29ya2xldEdsb2JhbFNjb3Blcy5nZXQobmFtZSk7Cit9CisKK3ZvaWQg
RG9jdW1lbnQ6OnNldFBhaW50V29ya2xldEdsb2JhbFNjb3BlRm9yTmFtZShjb25zdCBTdHJpbmcm
IG5hbWUsIFJlZjxQYWludFdvcmtsZXRHbG9iYWxTY29wZT4mJiBzY29wZSkKK3sKKyAgICBhdXRv
IGFkZFJlc3VsdCA9IG1fcGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVzLmFkZChuYW1lLCBXVEZNb3Zl
KHNjb3BlKSk7CisgICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdCk7Cit9Cisj
ZW5kaWYKKworI2lmIEVOQUJMRShDT05URU5UX0NIQU5HRV9PQlNFUlZFUikKKworQ29udGVudENo
YW5nZU9ic2VydmVyJiBEb2N1bWVudDo6Y29udGVudENoYW5nZU9ic2VydmVyKCkKK3sKKyAgICBp
ZiAoIW1fY29udGVudENoYW5nZU9ic2VydmVyKQorICAgICAgICBtX2NvbnRlbnRDaGFuZ2VPYnNl
cnZlciA9IG1ha2VVbmlxdWU8Q29udGVudENoYW5nZU9ic2VydmVyPigqdGhpcyk7CisgICAgcmV0
dXJuICptX2NvbnRlbnRDaGFuZ2VPYnNlcnZlcjsgCit9CisKK0RPTVRpbWVySG9sZGluZ1Rhbmsm
IERvY3VtZW50Ojpkb21UaW1lckhvbGRpbmdUYW5rKCkKK3sKKyAgICBpZiAobV9kb21UaW1lckhv
bGRpbmdUYW5rKQorICAgICAgICByZXR1cm4gKm1fZG9tVGltZXJIb2xkaW5nVGFuazsKKyAgICBt
X2RvbVRpbWVySG9sZGluZ1RhbmsgPSBtYWtlVW5pcXVlPERPTVRpbWVySG9sZGluZ1Rhbms+KCk7
CisgICAgcmV0dXJuICptX2RvbVRpbWVySG9sZGluZ1Rhbms7Cit9CisKKyNlbmRpZgorCitib29s
IERvY3VtZW50OjpoYXNFdmFsdWF0ZWRVc2VyQWdlbnRTY3JpcHRzKCkgY29uc3QKK3sKKyAgICBh
dXRvJiB0b3AgPSB0b3BEb2N1bWVudCgpOworICAgIHJldHVybiB0aGlzID09ICZ0b3AgPyBtX2hh
c0V2YWx1YXRlZFVzZXJBZ2VudFNjcmlwdHMgOiB0b3AuaGFzRXZhbHVhdGVkVXNlckFnZW50U2Ny
aXB0cygpOworfQorCitib29sIERvY3VtZW50Ojppc1J1bm5pbmdVc2VyU2NyaXB0cygpIGNvbnN0
Cit7CisgICAgYXV0byYgdG9wID0gdG9wRG9jdW1lbnQoKTsKKyAgICByZXR1cm4gdGhpcyA9PSAm
dG9wID8gbV9pc1J1bm5pbmdVc2VyU2NyaXB0cyA6IHRvcC5pc1J1bm5pbmdVc2VyU2NyaXB0cygp
OworfQorCit2b2lkIERvY3VtZW50OjpzZXRBc1J1bm5pbmdVc2VyU2NyaXB0cygpCit7CisgICAg
YXV0byYgdG9wID0gdG9wRG9jdW1lbnQoKTsKKyAgICBpZiAodGhpcyA9PSAmdG9wKQorICAgICAg
ICBtX2lzUnVubmluZ1VzZXJTY3JpcHRzID0gdHJ1ZTsKKyAgICBlbHNlCisgICAgICAgIHRvcC5z
ZXRBc1J1bm5pbmdVc2VyU2NyaXB0cygpOworfQorCit2b2lkIERvY3VtZW50OjpzZXRIYXNFdmFs
dWF0ZWRVc2VyQWdlbnRTY3JpcHRzKCkKK3sKKyAgICBhdXRvJiB0b3AgPSB0b3BEb2N1bWVudCgp
OworICAgIGlmICh0aGlzID09ICZ0b3ApCisgICAgICAgIG1faGFzRXZhbHVhdGVkVXNlckFnZW50
U2NyaXB0cyA9IHRydWU7CisgICAgZWxzZQorICAgICAgICB0b3Auc2V0SGFzRXZhbHVhdGVkVXNl
ckFnZW50U2NyaXB0cygpOworfQorCit2b2lkIERvY3VtZW50OjpkaWRSZWplY3RTeW5jWEhSRHVy
aW5nUGFnZURpc21pc3NhbCgpCit7CisgICAgKyttX251bWJlck9mUmVqZWN0ZWRTeW5jWEhSczsK
KyAgICBpZiAobV9udW1iZXJPZlJlamVjdGVkU3luY1hIUnMgPiAxKQorICAgICAgICByZXR1cm47
CisKKyAgICBwb3N0VGFzayhbdGhpcywgd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyldKGF1
dG8mKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKHdlYWtUaGlzKQorICAgICAgICAgICAgbV9udW1i
ZXJPZlJlamVjdGVkU3luY1hIUnMgPSAwOworICAgIH0pOworfQorCitib29sIERvY3VtZW50Ojpz
aG91bGRJZ25vcmVTeW5jWEhScygpIGNvbnN0Cit7CisgICAgY29uc3QgdW5zaWduZWQgbWF4UmVq
ZWN0ZWRTeW5jWEhSc1BlckV2ZW50TG9vcEl0ZXJhdGlvbiA9IDU7CisgICAgcmV0dXJuIG1fbnVt
YmVyT2ZSZWplY3RlZFN5bmNYSFJzID4gbWF4UmVqZWN0ZWRTeW5jWEhSc1BlckV2ZW50TG9vcEl0
ZXJhdGlvbjsKK30KKworI2lmIEVOQUJMRShBUFBMRV9QQVkpCisKK2Jvb2wgRG9jdW1lbnQ6Omlz
QXBwbGVQYXlBY3RpdmUoKSBjb25zdAoreworICAgIGF1dG8mIHRvcCA9IHRvcERvY3VtZW50KCk7
CisgICAgcmV0dXJuIHRoaXMgPT0gJnRvcCA/IG1faGFzU3RhcnRlZEFwcGxlUGF5U2Vzc2lvbiA6
IHRvcC5pc0FwcGxlUGF5QWN0aXZlKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnQ6OnNldEFwcGxlUGF5
SXNBY3RpdmUoKQoreworICAgIGF1dG8mIHRvcCA9IHRvcERvY3VtZW50KCk7CisgICAgaWYgKHRo
aXMgPT0gJnRvcCkKKyAgICAgICAgbV9oYXNTdGFydGVkQXBwbGVQYXlTZXNzaW9uID0gdHJ1ZTsK
KyAgICBlbHNlCisgICAgICAgIHRvcC5zZXRBcHBsZVBheUlzQWN0aXZlKCk7Cit9CisKKyNlbmRp
ZgorCitNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlciYgRG9jdW1lbnQ6Om1lc3NhZ2VQb3J0Q2hh
bm5lbFByb3ZpZGVyKCkKK3sKKyAgICByZXR1cm4gTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXI6
OnNpbmdsZXRvbigpOworfQorCisjaWYgVVNFKFNZU1RFTV9QUkVWSUVXKQordm9pZCBEb2N1bWVu
dDo6ZGlzcGF0Y2hTeXN0ZW1QcmV2aWV3QWN0aW9uRXZlbnQoY29uc3QgU3lzdGVtUHJldmlld0lu
Zm8mIHN5c3RlbVByZXZpZXdJbmZvLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCit7CisgICAgUmVm
UHRyIGVsZW1lbnQgPSBzZWFyY2hGb3JFbGVtZW50QnlJZGVudGlmaWVyKHN5c3RlbVByZXZpZXdJ
bmZvLmVsZW1lbnQuZWxlbWVudElkZW50aWZpZXIpOworICAgIGlmICghZWxlbWVudCkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKCFpczxIVE1MQW5jaG9yRWxlbWVudD4oZWxlbWVudCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIGF1dG8gZXZlbnQgPSBNZXNzYWdlRXZlbnQ6OmNyZWF0ZSht
ZXNzYWdlLCBzZWN1cml0eU9yaWdpbigpLnRvU3RyaW5nKCkpOworICAgIFVzZXJHZXN0dXJlSW5k
aWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IoUHJvY2Vzc2luZ1VzZXJHZXN0dXJlLCB0aGlzKTsKKyAg
ICBlbGVtZW50LT5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKK30KKyNlbmRpZgorCisjaWYgRU5BQkxF
KFBJQ1RVUkVfSU5fUElDVFVSRV9BUEkpCitIVE1MVmlkZW9FbGVtZW50KiBEb2N1bWVudDo6cGlj
dHVyZUluUGljdHVyZUVsZW1lbnQoKSBjb25zdAoreworICAgIHJldHVybiBtX3BpY3R1cmVJblBp
Y3R1cmVFbGVtZW50LmdldCgpOworfTsKKwordm9pZCBEb2N1bWVudDo6c2V0UGljdHVyZUluUGlj
dHVyZUVsZW1lbnQoSFRNTFZpZGVvRWxlbWVudCogZWxlbWVudCkKK3sKKyAgICBtX3BpY3R1cmVJ
blBpY3R1cmVFbGVtZW50ID0gbWFrZVdlYWtQdHIoZWxlbWVudCk7Cit9CisjZW5kaWYKKworVGV4
dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXImIERvY3VtZW50Ojp0ZXh0TWFuaXB1bGF0aW9uQ29udHJv
bGxlcigpCit7CisgICAgaWYgKCFtX3RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyKQorICAgICAg
ICBtX3RleHRNYW5pcHVsYXRpb25Db250cm9sbGVyID0gbWFrZVVuaXF1ZTxUZXh0TWFuaXB1bGF0
aW9uQ29udHJvbGxlcj4oKnRoaXMpOworICAgIHJldHVybiAqbV90ZXh0TWFuaXB1bGF0aW9uQ29u
dHJvbGxlcjsKK30KKworTGF6eUxvYWRJbWFnZU9ic2VydmVyJiBEb2N1bWVudDo6bGF6eUxvYWRJ
bWFnZU9ic2VydmVyKCkKK3sKKyAgICBpZiAoIW1fbGF6eUxvYWRJbWFnZU9ic2VydmVyKQorICAg
ICAgICBtX2xhenlMb2FkSW1hZ2VPYnNlcnZlciA9IG1ha2VVbmlxdWU8TGF6eUxvYWRJbWFnZU9i
c2VydmVyPigpOworICAgIHJldHVybiAqbV9sYXp5TG9hZEltYWdlT2JzZXJ2ZXI7Cit9CisKK2Nv
bnN0IENyb3NzT3JpZ2luT3BlbmVyUG9saWN5JiBEb2N1bWVudDo6Y3Jvc3NPcmlnaW5PcGVuZXJQ
b2xpY3koKSBjb25zdAoreworICAgIGlmICh0aGlzICE9ICZ0b3BEb2N1bWVudCgpKQorICAgICAg
ICByZXR1cm4gdG9wRG9jdW1lbnQoKS5jcm9zc09yaWdpbk9wZW5lclBvbGljeSgpOworICAgIHJl
dHVybiBtX2Nyb3NzT3JpZ2luT3BlbmVyUG9saWN5OworfQorCit2b2lkIERvY3VtZW50OjpzZXRD
cm9zc09yaWdpbk9wZW5lclBvbGljeShjb25zdCBDcm9zc09yaWdpbk9wZW5lclBvbGljeSYgcG9s
aWN5KQoreworICAgIG1fY3Jvc3NPcmlnaW5PcGVuZXJQb2xpY3kgPSBwb2xpY3k7Cit9CisKK3Zv
aWQgRG9jdW1lbnQ6OnByZXBhcmVDYW52YXNlc0ZvckRpc3BsYXlJZk5lZWRlZCgpCit7CisgICAg
Ly8gU29tZSBjYW52YXMgY29udGV4dHMgbmVlZCB0byBkbyB3b3JrIHdoZW4gcmVuZGVyaW5nIGhh
cyBmaW5pc2hlZCBidXQKKyAgICAvLyBiZWZvcmUgdGhlaXIgY29udGVudCBpcyBjb21wb3NpdGVk
LgorCisgICAgLy8gRklYTUU6IENhbGxpbmcgcHJlcGFyZUZvckRpc3BsYXkgc2hvdWxkIG5vdCBj
YWxsIGJhY2sgaW50byBhIG1ldGhvZAorICAgIC8vIHRoYXQgd291bGQgbXV0YXRlIG91ciBtX2Nh
bnZhc2VzTmVlZGluZ0Rpc3BsYXlQcmVwYXJhdGlvbiBsaXN0LiBJdAorICAgIC8vIHdvdWxkIGJl
IG5pY2UgaWYgdGhpcyBjb3VsZCBiZSBlbmZvcmNlZCB0byByZW1vdmUgdGhlIGNvcHlUb1ZlY3Rv
ci4KKworICAgIGF1dG8gY2FudmFzZXMgPSBjb3B5VG9WZWN0b3JPZjxSZWY8SFRNTENhbnZhc0Vs
ZW1lbnQ+PihtX2NhbnZhc2VzTmVlZGluZ0Rpc3BsYXlQcmVwYXJhdGlvbik7CisgICAgbV9jYW52
YXNlc05lZWRpbmdEaXNwbGF5UHJlcGFyYXRpb24uY2xlYXIoKTsKKyAgICBmb3IgKGF1dG8mIGNh
bnZhcyA6IGNhbnZhc2VzKQorICAgICAgICBjYW52YXMtPnByZXBhcmVGb3JEaXNwbGF5KCk7Cit9
CisKK3ZvaWQgRG9jdW1lbnQ6OmNsZWFyQ2FudmFzUHJlcGFyYXRpb24oSFRNTENhbnZhc0VsZW1l
bnQmIGNhbnZhcykKK3sKKyAgICBtX2NhbnZhc2VzTmVlZGluZ0Rpc3BsYXlQcmVwYXJhdGlvbi5y
ZW1vdmUoY2FudmFzKTsKK30KKwordm9pZCBEb2N1bWVudDo6Y2FudmFzQ2hhbmdlZChDYW52YXNC
YXNlJiBjYW52YXNCYXNlLCBjb25zdCBzdGQ6Om9wdGlvbmFsPEZsb2F0UmVjdD4mKQoreworICAg
IGlmICghaXM8SFRNTENhbnZhc0VsZW1lbnQ+KGNhbnZhc0Jhc2UpKQorICAgICAgICByZXR1cm47
CisgICAgYXV0byYgY2FudmFzID0gZG93bmNhc3Q8SFRNTENhbnZhc0VsZW1lbnQ+KGNhbnZhc0Jh
c2UpOworICAgIGlmIChjYW52YXMubmVlZHNQcmVwYXJhdGlvbkZvckRpc3BsYXkoKSkKKyAgICAg
ICAgbV9jYW52YXNlc05lZWRpbmdEaXNwbGF5UHJlcGFyYXRpb24uYWRkKGNhbnZhcyk7Cit9CisK
K3ZvaWQgRG9jdW1lbnQ6OmNhbnZhc0Rlc3Ryb3llZChDYW52YXNCYXNlJiBjYW52YXNCYXNlKQor
eworICAgIGlmICghaXM8SFRNTENhbnZhc0VsZW1lbnQ+KGNhbnZhc0Jhc2UpKQorICAgICAgICBy
ZXR1cm47CisgICAgYXV0byYgY2FudmFzID0gZG93bmNhc3Q8SFRNTENhbnZhc0VsZW1lbnQ+KGNh
bnZhc0Jhc2UpOworICAgIG1fY2FudmFzZXNOZWVkaW5nRGlzcGxheVByZXBhcmF0aW9uLnJlbW92
ZShjYW52YXMpOworfQorCitKU0M6OlZNJiBEb2N1bWVudDo6dm0oKQoreworICAgIHJldHVybiBj
b21tb25WTSgpOworfQorCitTdHJpbmcgRG9jdW1lbnQ6OmRlYnVnRGVzY3JpcHRpb24oKSBjb25z
dAoreworICAgIFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKKworICAgIGJ1aWxkZXIuYXBwZW5kKCJE
b2N1bWVudCAweCJfcywgaGV4KHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90Pih0aGlzKSwgTG93
ZXJjYXNlKSk7CisgICAgaWYgKGZyYW1lKCkgJiYgZnJhbWUoKS0+aXNNYWluRnJhbWUoKSkKKyAg
ICAgICAgYnVpbGRlci5hcHBlbmQoIiAobWFpbiBmcmFtZSkiX3MpOworCisgICAgYnVpbGRlci5h
cHBlbmQoJyAnLCBkb2N1bWVudFVSSSgpKTsKKyAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygp
OworfQorCitUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mIHRzLCBjb25zdCBEb2N1
bWVudCYgZG9jdW1lbnQpCit7CisgICAgdHMgPDwgZG9jdW1lbnQuZGVidWdEZXNjcmlwdGlvbigp
OworICAgIHJldHVybiB0czsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjdW5kZWYg
RE9DVU1FTlRfUkVMRUFTRV9MT0cKKyN1bmRlZiBET0NVTUVOVF9SRUxFQVNFX0xPR19FUlJPUgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5jcHAKaW5kZXggNDQzYzU0
OWMxNWE1NzFlYjNiNWU0ODY0YWI3OTUzYjM0MzI4NjVhMi4uZGNjNjEzYjg1ZDhiMWVmYzRjODhh
ZTcwYTU4ZDI2MTVjN2ViOTQ5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9G
aWxlUmVhZGVyTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFk
ZXJMb2FkZXIuY3BwCkBAIC0xMjYsNyArMTI2LDcgQEAgdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpj
bGVhbnVwKCkKICAgICB9CiB9CiAKLXZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkUmVjZWl2ZVJl
c3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQor
dm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBpZiAo
cmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSAhPSAyMDApIHsKICAgICAgICAgZmFpbGVkKGh0dHBT
dGF0dXNDb2RlVG9FcnJvckNvZGUocmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSkpOwpAQCAtMjE1
LDcgKzIxNSw3IEBAIHZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEoY29uc3Qg
dWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCiAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNl
aXZlRGF0YSgpOwogfQogCi12b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZykKK3ZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgaWYgKG1fdmFyaWFibGVMZW5ndGggJiYg
bV90b3RhbEJ5dGVzID4gbV9ieXRlc0xvYWRlZCkgewogICAgICAgICBtX3Jhd0RhdGEgPSBtX3Jh
d0RhdGEtPnNsaWNlKDAsIG1fYnl0ZXNMb2FkZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Zp
bGVSZWFkZXJMb2FkZXIuaAppbmRleCA5Y2JiOWI2MTExYTcxNjI3MTNkZDVkY2NlN2YwNTNlZWMw
ODU2OGRkLi45Njg0Mjc5MDNiZGU5NTA3NTVlNzhiN2VmNTA2YzFjODNjZjhiYWY5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaApAQCAtNjksOSArNjksOSBAQCBw
dWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjYW5jZWwoKTsKIAogICAgIC8vIFRocmVh
ZGFibGVMb2FkZXJDbGllbnQKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90Kiwg
aW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
Zmllcikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBv
dmVycmlkZTsKIAogICAgIFN0cmluZyBzdHJpbmdSZXN1bHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKaW5kZXggZmUy
MDZhZWEzNWU2NzkzM2UyMDE5ZmM1YWYxZTkzYWZkYTBlMzgzNy4uZjkxZDU1MWIzZjEwMzYwMDU3
OTU1NzY0ODJjMjY4ODQwZjg4YTYwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTU3NSwxMyArNTc1LDEzIEBA
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphcHBseUVtdWxhdGVkTWVkaWFJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmIGluc3RyCiAgICAgICAgIHBhZ2VBZ2VudC0+YXBwbHlFbXVsYXRl
ZE1lZGlhKG1lZGlhKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxT
ZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9u
c2UsIGNvbnN0IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKK3ZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
IGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
KiBjYWNoZWRSZXNvdXJjZSkKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1
bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2Vu
dC0+d2lsbFNlbmRSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RS
ZXNwb25zZSwgY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCit2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2FkVHlwZSkKIHsKICAgICBpZiAoYXV0byogbmV0d29y
a0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAg
ICAgIG5ldHdvcmtBZ2VudC0+d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKGlkZW50aWZpZXIsIGxvYWRl
ciwgcmVxdWVzdCwgbG9hZFR5cGUpOwpAQCAtNTk2LDcgKzU5Niw3IEBAIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGVJbXBsKEluc3Ry
dW1lbnRpbmdBCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9y
eUNhY2hlKGxvYWRlciwgKmNhY2hlZFJlc291cmNlKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBS
ZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
IGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChMSUtFTFkoIWlu
c3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yRW52aXJvbm1lbnQoKS5kZXZlbG9wZXJFeHRyYXNF
bmFibGVkKCkpKQogICAgICAgICByZXR1cm47CkBAIC02MDcsMjUgKzYwNywyNSBAQCB2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKElu
c3RydW1lbnRpbmdBZ2VudAogICAgICAgICBjb25zb2xlQWdlbnQtPmRpZFJlY2VpdmVSZXNwb25z
ZShpZGVudGlmaWVyLCByZXNwb25zZSk7IC8vIFRoaXMgc2hvdWxkIGNvbWUgQUZURVIgcmVzb3Vy
Y2Ugbm90aWZpY2F0aW9uLCBmcm9udC1lbmQgcmVsaWVzIG9uIHRoaXMuCiB9CiAKLXZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBEb2N1bWVudFRo
cmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlciwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJl
YWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRp
bmdBZ2VudHMsIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAoYXV0
byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50
KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNw
b25zZShpZGVudGlmaWVyLCBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIpOwogfQogCi12b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURhdGFJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
K3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3Ry
dW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdl
bnQtPmRpZFJlY2VpdmVEYXRhKGlkZW50aWZpZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGVuY29kZWRE
YXRhTGVuZ3RoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlz
aExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKiByZXNv
dXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2Fk
aW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVy
KiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1
bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2Vu
dC0+ZGlkRmluaXNoTG9hZGluZyhpZGVudGlmaWVyLCBsb2FkZXIsIG5ldHdvcmtMb2FkTWV0cmlj
cywgcmVzb3VyY2VMb2FkZXIpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2Vu
dHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2Vu
dHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoTElLRUxZKCFp
bnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckVudmlyb25tZW50KCkuZGV2ZWxvcGVyRXh0cmFz
RW5hYmxlZCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjQ4LDcgKzY0OCw3IEBAIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRMb2FkWEhSU3luY2hyb25v
dXNseSgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0
ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpCit2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKIHsKICAgICBpZiAoYXV0byogbmV0d29y
a0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAg
ICAgIG5ldHdvcmtBZ2VudC0+c2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoaWRlbnRpZmllciwgc291
cmNlU3RyaW5nKTsKQEAgLTY2MCw3ICs2NjAsNyBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6c2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5Q1NQSW1wbChJbnN0cnVtZW50aW5nQWdlbgog
ICAgICAgICB3ZWJEZWJ1Z2dlckFnZW50LT5zY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1AoZGly
ZWN0aXZlVGV4dCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNl
aXZlU2NyaXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdB
Z2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
IGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVu
YWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRSZWNlaXZlU2Ny
aXB0UmVzcG9uc2UoaWRlbnRpZmllcik7CkBAIC04NTAsNyArODUwLDcgQEAgdm9pZCBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW0KICAgICAgICAgbmV0d29ya0FnZW50LT5pbnRlcmNlcHRSZXF1ZXN0KGxvYWRl
ciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjppbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGlu
Z0FnZW50cywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGlu
c3RydW1lbnRpbmdBZ2VudHMsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIp
CiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5h
YmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPmludGVyY2VwdFJlc3Bv
bnNlKHJlc3BvbnNlLCBpZGVudGlmaWVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCAz
MWYwNWM1MGY4MDVkYjU3OWI4YzkzMGJjOTBiOWY2MWE5MmZhYzY4Li5jNjQ2ZTMxMzFjOTFhYTky
NDI2MTBiYWNjODZmNWJjMzkwODJmODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCkBAIC00NSw2ICs0NSw3IEBACiAjaW5j
bHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uUHVibGljLmgiCiAjaW5jbHVkZSAiUGFnZS5o
IgogI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiU3RvcmFnZUFyZWEuaCIKICNpbmNsdWRlICJXZWJBbmlt
YXRpb24uaCIKICNpbmNsdWRlICJXb3JrZXJJbnNwZWN0b3JQcm94eS5oIgpAQCAtMTg0LDM0ICsx
ODUsMzQgQEAgcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGFwcGx5VXNlckFnZW50T3ZlcnJpZGUo
RnJhbWUmLCBTdHJpbmcmKTsKICAgICBzdGF0aWMgdm9pZCBhcHBseUVtdWxhdGVkTWVkaWEoRnJh
bWUmLCBTdHJpbmcmKTsKIAotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdChGcmFtZSos
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNo
ZWRSZXNvdXJjZSopOworICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdChGcmFtZSosIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRS
ZXNvdXJjZSopOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNo
ZShQYWdlJiwgRG9jdW1lbnRMb2FkZXIqLCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHN0YXRpYyB2
b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJj
ZUxvYWRlciopOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVz
cG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlRGF0YShGcmFtZSosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNv
ZGVkRGF0YUxlbmd0aCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhGcmFtZSos
IERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3Jr
TG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOwotICAgIHN0YXRpYyB2b2lkIGRpZEZhaWxM
b2FkaW5nKEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLQotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVz
dChXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVz
cG9uc2UoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZl
RGF0YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpOwotICAgIHN0YXRpYyB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpOwotICAgIHN0YXRpYyB2
b2lkIGRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgc3RhdGljIHZvaWQg
ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoRnJhbWUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9h
ZGVyKik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25z
ZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwor
ICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhKEZyYW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKEZyYW1lKiwgRG9j
dW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRp
bmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VFcnJvciYpOworCisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNv
dXJjZVJlcXVlc3QmKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRh
KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7CisgICAgc3RhdGljIHZvaWQgZGlk
RmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7CisgICAgc3RhdGljIHZvaWQg
ZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKIAogICAgIC8vIFNvbWUgbmV0d29y
ayByZXF1ZXN0cyBkbyBub3QgZ28gdGhyb3VnaCB0aGUgbm9ybWFsIG5ldHdvcmsgbG9hZGluZyBw
YXRoLgogICAgIC8vIFRoZXNlIG5ldHdvcmsgcmVxdWVzdHMgaGF2ZSB0byBpc3N1ZSB0aGVpciBv
d24gd2lsbFNlbmRSZXF1ZXN0IC8gZGlkUmVjZWl2ZVJlc3BvbnNlIC8gZGlkRmluaXNoTG9hZGlu
ZyAvIGRpZEZhaWxMb2FkaW5nCiAgICAgLy8gaW5zdHJ1bWVudGF0aW9uIGNhbGxzLiBTb21lIG9m
IHRoZXNlIGxvYWRzIGFyZSBmb3IgcmVzb3VyY2VzIHRoYXQgbGFjayBhIENhY2hlZFJlc291cmNl
OjpUeXBlLgogICAgIGVudW0gY2xhc3MgTG9hZFR5cGUgeyBQaW5nLCBCZWFjb24gfTsKLSAgICBz
dGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgTG9hZFR5cGUpOwor
ICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2FkVHlw
ZSk7CiAKLSAgICBzdGF0aWMgdm9pZCBjb250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZChG
cmFtZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5RG93
bmxvYWQoRnJhbWUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlV2l0aFBv
bGljeUlnbm9yZShGcmFtZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgY29udGludWVB
ZnRlclhGcmFtZU9wdGlvbnNEZW5pZWQoRnJhbWUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIHN0YXRpYyB2
b2lkIGNvbnRpbnVlV2l0aFBvbGljeURvd25sb2FkKEZyYW1lJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBz
dGF0aWMgdm9pZCBjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUoRnJhbWUmLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwog
ICAgIHN0YXRpYyB2b2lkIHdpbGxMb2FkWEhSU3luY2hyb25vdXNseShTY3JpcHRFeGVjdXRpb25D
b250ZXh0Kik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFhIUlN5bmNocm9ub3VzbHkoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopOwotICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVkKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgc291cmNlU3RyaW5nKTsKKyAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZChTY3JpcHRF
eGVjdXRpb25Db250ZXh0JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcm
IHNvdXJjZVN0cmluZyk7CiAgICAgc3RhdGljIHZvaWQgc2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5
Q1NQKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQp
OwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICBzdGF0aWMgdm9pZCBk
aWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CiAgICAgc3RhdGljIHZvaWQgZG9tQ29udGVudExvYWRlZEV2ZW50
RmlyZWQoRnJhbWUmKTsKICAgICBzdGF0aWMgdm9pZCBsb2FkRXZlbnRGaXJlZChGcmFtZSopOwog
ICAgIHN0YXRpYyB2b2lkIGZyYW1lRGV0YWNoZWRGcm9tUGFyZW50KEZyYW1lJik7CkBAIC0yMzEs
NyArMjMyLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlcXVl
c3QoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBzdGF0aWMgYm9v
bCBzaG91bGRJbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKICAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVy
JiwgRnVuY3Rpb248dm9pZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4mJik7Ci0gICAgc3RhdGlj
IHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHN0
YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKIAog
ICAgIHN0YXRpYyB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoUGFnZSYsIHN0ZDo6dW5pcXVlX3B0
cjxJbnNwZWN0b3I6OkNvbnNvbGVNZXNzYWdlPik7CiAgICAgc3RhdGljIHZvaWQgYWRkTWVzc2Fn
ZVRvQ29uc29sZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHN0ZDo6dW5pcXVlX3B0cjxJ
bnNwZWN0b3I6OkNvbnNvbGVNZXNzYWdlPik7CkBAIC00MDMsMjAgKzQwNCwyMCBAQCBwcml2YXRl
OgogICAgIHN0YXRpYyB2b2lkIGFwcGx5VXNlckFnZW50T3ZlcnJpZGVJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMmLCBTdHJpbmcmKTsKICAgICBzdGF0aWMgdm9pZCBhcHBseUVtdWxhdGVkTWVkaWFJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBTdHJpbmcmKTsKIAotICAgIHN0YXRpYyB2b2lkIHdp
bGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwotICAg
IHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50
cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJl
cXVlc3QmLCBMb2FkVHlwZSk7Ci0gICAgc3RhdGljIHZvaWQgbWFya1Jlc291cmNlQXNDYWNoZWRJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAg
IHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRS
ZXNvdXJjZSopOworICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2FkVHlwZSk7CisgICAgc3RhdGljIHZvaWQgbWFya1Jl
c291cmNlQXNDYWNoZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNo
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIERvY3VtZW50TG9hZGVyKiwgQ2FjaGVkUmVzb3Vy
Y2UqKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBzdGF0
aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwg
aW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBS
ZXNvdXJjZUxvYWRlciopOwotICAgIHN0YXRpYyB2b2lkIGRpZEZhaWxMb2FkaW5nSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRl
ciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3Vy
Y2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJl
c3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZl
RGF0YUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
Y29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0
aCk7CisgICAgc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRp
ZEZhaWxMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKICAgICBzdGF0
aWMgdm9pZCB3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHlJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMm
KTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYpOwotICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVkSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVN0cmluZyk7CisgICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWRJbXBsKEluc3RydW1l
bnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291
cmNlU3RyaW5nKTsKICAgICBzdGF0aWMgdm9pZCBzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1BJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBTdHJpbmcmIGRpcmVjdGl2ZVRleHQpOwot
ICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgc3RhdGljIHZvaWQgZGlk
UmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgdm9pZCBkb21Db250ZW50TG9hZGVkRXZlbnRG
aXJlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIEZyYW1lJik7CiAgICAgc3RhdGljIHZvaWQg
bG9hZEV2ZW50RmlyZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSopOwogICAgIHN0
YXRpYyB2b2lkIGZyYW1lRGV0YWNoZWRGcm9tUGFyZW50SW1wbChJbnN0cnVtZW50aW5nQWdlbnRz
JiwgRnJhbWUmKTsKQEAgLTQzNiw3ICs0MzcsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBib29s
IHNob3VsZEludGVyY2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmKTsKICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXNwb25z
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKICAg
ICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwg
UmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYm
KTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxT
aGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2VJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogCiAgICAgc3RhdGljIHZvaWQgYWRk
TWVzc2FnZVRvQ29uc29sZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHN0ZDo6dW5pcXVlX3B0
cjxJbnNwZWN0b3I6OkNvbnNvbGVNZXNzYWdlPik7CiAKQEAgLTEwMzMsMjAgKzEwMzQsMjAgQEAg
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphcHBseUVtdWxhdGVkTWVkaWEo
RnJhbWUmIGZyYW1lLCBTdHJpbmcmIG0KICAgICAgICAgYXBwbHlFbXVsYXRlZE1lZGlhSW1wbCgq
YWdlbnRzLCBtZWRpYSk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbFNlbmRSZXF1ZXN0KEZyYW1lKiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
KiBjYWNoZWRSZXNvdXJjZSkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
d2lsbFNlbmRSZXF1ZXN0KEZyYW1lKiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05U
RU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRz
KGZyYW1lKSkKICAgICAgICAgd2lsbFNlbmRSZXF1ZXN0SW1wbCgqYWdlbnRzLCBpZGVudGlmaWVy
LCBsb2FkZXIsIHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNlKTsKIH0K
IAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3Qo
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK2lubGluZSB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEdsb2JhbFNj
b3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVO
RFModm9pZCgpKTsKICAgICB3aWxsU2VuZFJlcXVlc3RJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMo
Z2xvYmFsU2NvcGUpLCBpZGVudGlmaWVyLCBudWxscHRyLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3Bv
bnNlIHsgfSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiBmcmFtZSwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIExvYWRUeXBlIGxvYWRUeXBlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2FkVHlwZSkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9O
T19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGlu
Z0FnZW50cyhmcmFtZSkpCkBAIC0xMDU5LDc2ICsxMDYwLDc2IEBAIGlubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFBhZ2Um
IHBhZ2UsCiAgICAgZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlSW1wbChpbnN0cnVtZW50
aW5nQWdlbnRzKHBhZ2UpLCBsb2FkZXIsIHJlc291cmNlKTsKIH0KIAotaW5saW5lIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYg
ZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJj
ZUxvYWRlcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVJlc291cmNlUmVzcG9uc2UoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAo
YXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJl
Y2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCBsb2FkZXIsIHJl
c3BvbnNlLCByZXNvdXJjZUxvYWRlcik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoV29ya2VyT3JXb3JrbGV0R2xv
YmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmtsZXRHbG9iYWxT
Y29wZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBkaWRSZWNlaXZlUmVzb3Vy
Y2VSZXNwb25zZUltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZp
ZXIsIG51bGxwdHIsIHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwog
ICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGRvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5kb2N1bWVudCgpKSkKICAgICAgICAgZGlkUmVjZWl2ZVRocmVhZGFibGVMb2Fk
ZXJSZXNwb25zZUltcGwoKmFnZW50cywgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCBpZGVudGlm
aWVyKTsKIH0KICAgICAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
UmVjZWl2ZURhdGEoRnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpCitp
bmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhKEZyYW1l
KiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4
X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpCiB7CiAgICAg
RkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50
cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAgICAgICBkaWRSZWNlaXZlRGF0YUlt
cGwoKmFnZW50cywgaWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5n
dGgpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVEYXRhKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKK2lu
bGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURhdGEoV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCiB7CiAg
ICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgZGlkUmVjZWl2ZURh
dGFJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMoZ2xvYmFsU2NvcGUpLCBpZGVudGlmaWVyLCBkYXRh
LCBkYXRhTGVuZ3RoLCBkYXRhTGVuZ3RoKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5nKEZyYW1lKiBmcmFtZSwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5n
KEZyYW1lKiBmcmFtZSwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRN
ZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgRkFTVF9SRVRV
Uk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3Ry
dW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAgICAgICBkaWRGaW5pc2hMb2FkaW5nSW1wbCgqYWdl
bnRzLCBpZGVudGlmaWVyLCBsb2FkZXIsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3VyY2VMb2Fk
ZXIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlz
aExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRN
ZXRyaWNzKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hM
b2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0
d29ya0xvYWRNZXRyaWNzKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lk
KCkpOwogICAgIGRpZEZpbmlzaExvYWRpbmdJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMoZ2xvYmFs
U2NvcGUpLCBpZGVudGlmaWVyLCBudWxscHRyLCBuZXR3b3JrTG9hZE1ldHJpY3MsIG51bGxwdHIp
OwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZhaWxMb2Fk
aW5nKEZyYW1lKiBmcmFtZSwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3Ry
dW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAgICAgICBkaWRGYWlsTG9hZGluZ0ltcGwoKmFnZW50
cywgaWRlbnRpZmllciwgbG9hZGVyLCBlcnJvcik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGUmIGdsb2JhbFNjb3BlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGVycm9yKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRG
YWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJv
cikKIHsKICAgICBkaWRGYWlsTG9hZGluZ0ltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxT
Y29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIGVycm9yKTsKIH0KIAotaW5saW5lIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZChG
cmFtZSYgZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxv
YWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25zRGVuaWVkKEZy
YW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAg
IC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byog
YWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2VpdmVS
ZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCAmbG9hZGVyLCByZXNwb25z
ZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQoRnJhbWUmIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51
ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKIHsKICAgICAvLyBUcmVhdCB0aGUgc2FtZSBhcyBkaWRSZWNlaXZlUmVz
cG9uc2UuCiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUp
KQogICAgICAgICBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoKmFnZW50cywgaWRlbnRp
ZmllciwgJmxvYWRlciwgcmVzcG9uc2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlV2l0aFBvbGljeUlnbm9yZShGcmFtZSYgZnJh
bWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OmNvbnRpbnVlV2l0aFBvbGljeUlnbm9yZShGcmFtZSYgZnJhbWUsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICAvLyBUcmVhdCB0aGUgc2Ft
ZSBhcyBkaWRSZWNlaXZlUmVzcG9uc2UuCiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1l
bnRpbmdBZ2VudHMoZnJhbWUpKQpAQCAtMTE0OSw3ICsxMTUwLDcgQEAgaW5saW5lIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkWEhSU3luY2hyb25vdXNseShTY3JpcHRFeGVj
dXRpb25Db24KICAgICAgICAgZGlkTG9hZFhIUlN5bmNocm9ub3VzbHlJbXBsKCphZ2VudHMpOwog
fQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNjcmlwdEltcG9ydGVk
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OnNjcmlwdEltcG9ydGVkKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRl
eHQsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVN0cmluZykKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsK
ICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhjb250ZXh0KSkKQEAg
LTExNjMsNyArMTE2NCw3IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
c2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5Q1NQKFNjcmlwdEV4ZWN1dGlvCiAgICAgICAgIHNjcmlw
dEV4ZWN1dGlvbkJsb2NrZWRCeUNTUEltcGwoKmFnZW50cywgZGlyZWN0aXZlVGV4dCk7CiB9CiAK
LWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVNjcmlwdFJl
c3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZS
T05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdl
bnRzKGNvbnRleHQpKQpAQCAtMTI4NCw3ICsxMjg1LDcgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBsb2FkZXIs
IEYKICAgICAgICAgaW50ZXJjZXB0UmVxdWVzdEltcGwoKmFnZW50cywgbG9hZGVyLCBXVEZNb3Zl
KGhhbmRsZXIpKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpp
bnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBo
YW5kbGVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRS
ZXNwb25zZShjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYm
IGhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2hvdWxk
SW50ZXJjZXB0UmVzcG9uc2UoZnJhbWUsIHJlc3BvbnNlKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50
cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcAppbmRl
eCA3MzE2MzI3OGNjYTM5OThmNGYwMTIyZDVjYjA1NzdkYTQ2YTUwNzQ3Li42MWU0YmMzYmEwMTll
ZTI1ZTVjOGJjMjIxZGZmNjA3N2VkZGI4NjNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcApAQCAt
NDUsNyArNDUsNyBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJj
ZXB0UmVxdWVzdEludGVybmFsKFJlc291cmNlTG9hZGVyJiBsbwogICAgIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVxdWVzdChsb2FkZXIsIFdURk1vdmUoaGFuZGxlcikpOwog
fQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9u
c2VJbnRlcm5hbChjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVy
KQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVyY2VwdFJlc3BvbnNl
SW50ZXJuYWwoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4m
JiBoYW5kbGVyKQogewogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVz
cG9uc2UoZnJhbWUsIHJlc3BvbnNlLCBpZGVudGlmaWVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb25XZWJLaXQuaAppbmRleCBiZmZjODcwODA2NDc2NTM4MTE1ZTgwZjIwZGRjYTRlODIy
MmU2MjliLi5mNzYxMTRjZTk4ZjQyYTdmZjkwNmE0OGQwNDIwYjk2MzA1ZDM2OTE0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2Vi
S2l0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRh
dGlvbldlYktpdC5oCkBAIC00MywxMyArNDMsMTMgQEAgcHVibGljOgogICAgIHN0YXRpYyBib29s
IHNob3VsZEludGVyY2VwdFJlcXVlc3QoY29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmKTsKICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFt
ZSosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKICAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRS
ZXF1ZXN0KFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9pZChjb25zdCBSZXNvdXJjZVJlcXVl
c3QmKT4mJik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUq
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPik+JiYpOworICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZy
YW1lKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4pPiYmKTsKIAogcHJpdmF0ZToKICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRl
cmNlcHRSZXF1ZXN0SW50ZXJuYWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
KTsKICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXNwb25zZUludGVybmFsKGNvbnN0
IEZyYW1lJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVy
Y2VwdFJlcXVlc3RJbnRlcm5hbChSZXNvdXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNl
SW50ZXJuYWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHN0YXRpYyB2b2lkIGludGVy
Y2VwdFJlc3BvbnNlSW50ZXJuYWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogfTsKIAogaW5s
aW5lIGJvb2wgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjpzaG91bGRJbnRlcmNlcHRS
ZXF1ZXN0KGNvbnN0IEZyYW1lKiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
KQpAQCAtNzYsNyArNzYsNyBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25X
ZWJLaXQ6OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImIGxvYQogICAgIGludGVyY2Vw
dFJlcXVlc3RJbnRlcm5hbChsb2FkZXIsIFdURk1vdmUoaGFuZGxlcikpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lKiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCitpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0
IEZyYW1lKiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKIHsK
ICAgICBBU1NFUlQoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjpzaG91bGRJbnRlcmNl
cHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UpKTsKICAgICBpbnRlcmNlcHRSZXNwb25zZUludGVy
bmFsKCpmcmFtZSwgcmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3Jr
QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3
b3JrQWdlbnQuY3BwCmluZGV4IDc5NDg4NTJkZDlhNmJjNDJiNDAxMTY5NDFjZTAzNDZjMzJlMTZm
MmQuLjMzNzU3YjllM2NlN2UzMDRjYjcxZmI2NGYzM2UyZWVmMDZhYWIzY2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtB
Z2VudC5jcHAKQEAgLTEwOCw3ICsxMDgsNyBAQCBwdWJsaWM6CiAKICAgICB+SW5zcGVjdG9yVGhy
ZWFkYWJsZUxvYWRlckNsaWVudCgpIG92ZXJyaWRlID0gZGVmYXVsdDsKIAotICAgIHZvaWQgZGlk
UmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKSBvdmVycmlkZQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIG92ZXJyaWRl
CiAgICAgewogICAgICAgICBtX21pbWVUeXBlID0gcmVzcG9uc2UubWltZVR5cGUoKTsKICAgICAg
ICAgbV9zdGF0dXNDb2RlID0gcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKTsKQEAgLTEzNSw3ICsx
MzUsNyBAQCBwdWJsaWM6CiAgICAgICAgIG1fcmVzcG9uc2VUZXh0LmFwcGVuZChtX2RlY29kZXIt
PmRlY29kZShkYXRhLCBkYXRhTGVuZ3RoKSk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKHVuc2lnbmVkIGxvbmcpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIGlmICht
X2RlY29kZXIpCiAgICAgICAgICAgICBtX3Jlc3BvbnNlVGV4dC5hcHBlbmQobV9kZWNvZGVyLT5m
bHVzaCgpKTsKQEAgLTQxNiw3ICs0MTYsNyBAQCBkb3VibGUgSW5zcGVjdG9yTmV0d29ya0FnZW50
Ojp0aW1lc3RhbXAoKQogICAgIHJldHVybiBtX2Vudmlyb25tZW50LmV4ZWN1dGlvblN0b3B3YXRj
aCgpLmVsYXBzZWRUaW1lKCkuc2Vjb25kcygpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtB
Z2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlw
ZSB0eXBlKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OndpbGxTZW5kUmVxdWVzdChSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVj
dFJlc3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSB0eXBlKQogewogICAg
IGlmIChyZXF1ZXN0LmhpZGRlbkZyb21JbnNwZWN0b3IoKSkgewogICAgICAgICBtX2hpZGRlblJl
cXVlc3RJZGVudGlmaWVycy5hZGQoaWRlbnRpZmllcik7CkBAIC00MjYsNyArNDI2LDcgQEAgdm9p
ZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OndpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG8KICAgICBkb3VibGUgc2VuZFRpbWVzdGFtcCA9IHRpbWVzdGFt
cCgpOwogICAgIFdhbGxUaW1lIHdhbGx0aW1lID0gV2FsbFRpbWU6Om5vdygpOwogCi0gICAgYXV0
byByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKTsK
KyAgICBhdXRvIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50
aWZpZXIudG9VSW50NjQoKSk7CiAgICAgYXV0byBmcmFtZUlkID0gZnJhbWVJZGVudGlmaWVyKGxv
YWRlcik7CiAgICAgYXV0byBsb2FkZXJJZCA9IGxvYWRlcklkZW50aWZpZXIobG9hZGVyKTsKICAg
ICBTdHJpbmcgdGFyZ2V0SWQgPSByZXF1ZXN0LmluaXRpYXRvcklkZW50aWZpZXIoKTsKQEAgLTQ4
NiwyNCArNDg2LDI0IEBAIHN0YXRpYyBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSBy
ZXNvdXJjZVR5cGVGb3JMb2FkVHlwZShJbnNwZWN0b3JJbnN0cnVtCiAgICAgcmV0dXJuIEluc3Bl
Y3RvclBhZ2VBZ2VudDo6T3RoZXJSZXNvdXJjZTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OndpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJl
c291cmNlKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OndpbGxTZW5kUmVxdWVzdChSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVj
dFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAg
aWYgKCFjYWNoZWRSZXNvdXJjZSAmJiBsb2FkZXIpCiAgICAgICAgIGNhY2hlZFJlc291cmNlID0g
SW5zcGVjdG9yUGFnZUFnZW50OjpjYWNoZWRSZXNvdXJjZShsb2FkZXItPmZyYW1lKCksIHJlcXVl
c3QudXJsKCkpOwogICAgIHdpbGxTZW5kUmVxdWVzdChpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVl
c3QsIHJlZGlyZWN0UmVzcG9uc2UsIHJlc291cmNlVHlwZUZvckNhY2hlZFJlc291cmNlKGNhY2hl
ZFJlc291cmNlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJl
cXVlc3RPZlR5cGUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
TG9hZFR5cGUgbG9hZFR5cGUpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRS
ZXF1ZXN0T2ZUeXBlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbjo6TG9hZFR5cGUgbG9hZFR5cGUpCiB7CiAgICAgd2lsbFNlbmRSZXF1ZXN0KGlk
ZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSgpLCByZXNvdXJjZVR5
cGVGb3JMb2FkVHlwZShsb2FkVHlwZSkpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2Vu
dDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNl
TG9hZGVyKiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRS
ZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKG1faGlkZGVuUmVxdWVzdElk
ZW50aWZpZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CiAKLSAgICBT
dHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmll
cik7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBzdGQ6Om9wdGlvbmFsPFJlc291cmNlUmVz
cG9uc2U+IHJlYWxSZXNwb25zZTsKICAgICBpZiAocGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRl
clN0cmF0ZWd5KCktPmhhdmVQZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhyZXNwb25zZSkpIHsKQEAg
LTU3NSwxMiArNTc1LDEyIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZl
UmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVuCiAgICAgICAgIGRpZFJl
Y2VpdmVEYXRhKGlkZW50aWZpZXIsIG51bGxwdHIsIGNhY2hlZFJlc291cmNlLT5lbmNvZGVkU2l6
ZSgpLCAwKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRh
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFM
ZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50
OjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
IHsKICAgICBpZiAobV9oaWRkZW5SZXF1ZXN0SWRlbnRpZmllcnMuY29udGFpbnMoaWRlbnRpZmll
cikpCiAgICAgICAgIHJldHVybjsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVy
c0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0g
SWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAog
ICAgIGlmIChkYXRhKSB7CiAgICAgICAgIE5ldHdvcmtSZXNvdXJjZXNEYXRhOjpSZXNvdXJjZURh
dGEgY29uc3QqIHJlc291cmNlRGF0YSA9IG1fcmVzb3VyY2VzRGF0YS0+bWF5YmVBZGRSZXNvdXJj
ZURhdGEocmVxdWVzdElkLCBkYXRhLCBkYXRhTGVuZ3RoKTsKQEAgLTU5NSw3ICs1OTUsNyBAQCB2
b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCB1aW50OAogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5kYXRhUmVj
ZWl2ZWQocmVxdWVzdElkLCB0aW1lc3RhbXAoKSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5n
dGgpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciopCit2
b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKikKIHsK
ICAgICBpZiAobV9oaWRkZW5SZXF1ZXN0SWRlbnRpZmllcnMucmVtb3ZlKGlkZW50aWZpZXIpKQog
ICAgICAgICByZXR1cm47CkBAIC02MDYsNyArNjA2LDcgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dEwKICAgICBlbHNlCiAgICAgICAgIGVsYXBzZWRGaW5pc2hUaW1lID0gdGltZXN0YW1wKCk7CiAK
LSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRl
bnRpZmllcik7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVx
dWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgaWYgKGxvYWRlciAmJiBtX3Jlc291
cmNlc0RhdGEtPnJlc291cmNlVHlwZShyZXF1ZXN0SWQpID09IEluc3BlY3RvclBhZ2VBZ2VudDo6
RG9jdW1lbnRSZXNvdXJjZSkKICAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5hZGRSZXNvdXJjZVNo
YXJlZEJ1ZmZlcihyZXF1ZXN0SWQsIGxvYWRlci0+ZnJhbWVMb2FkZXIoKS0+ZG9jdW1lbnRMb2Fk
ZXIoKS0+bWFpblJlc291cmNlRGF0YSgpLCBsb2FkZXItPmZyYW1lKCktPmRvY3VtZW50KCktPmVu
Y29kaW5nKCkpOwogCkBAIC02MjgsMTIgKzYyOCwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtB
Z2VudDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TAogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5sb2FkaW5nRmluaXNoZWQocmVxdWVzdElkLCBl
bGFwc2VkRmluaXNoVGltZSwgc291cmNlTWFwcGluZ1VSTCwgV1RGTW92ZShtZXRyaWNzKSk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGYWlsTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAobV9oaWRkZW5SZXF1ZXN0
SWRlbnRpZmllcnMucmVtb3ZlKGlkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CiAKLSAgICBT
dHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmll
cik7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBpZiAobG9hZGVyICYmIG1fcmVzb3VyY2Vz
RGF0YS0+cmVzb3VyY2VUeXBlKHJlcXVlc3RJZCkgPT0gSW5zcGVjdG9yUGFnZUFnZW50OjpEb2N1
bWVudFJlc291cmNlKSB7CiAgICAgICAgIEZyYW1lKiBmcmFtZSA9IGxvYWRlci0+ZnJhbWUoKTsK
QEAgLTY1Myw4ICs2NTMsOCBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkTG9hZFJl
c291cmNlRnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVyKiBsb2FkZQogICAgIGlmICghbG9h
ZGVyKQogICAgICAgICByZXR1cm47CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBs
b2FkZXItPmZyYW1lKCktPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVy
KCk7Ci0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIpOworICAgIGF1dG8gaWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRlbnRp
Zmllcjo6Z2VuZXJhdGUoKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0
b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBQcm90b2NvbDo6TmV0
d29yazo6TG9hZGVySWQgbG9hZGVySWQgPSBsb2FkZXJJZGVudGlmaWVyKGxvYWRlcik7CiAgICAg
UHJvdG9jb2w6Ok5ldHdvcms6OkZyYW1lSWQgZnJhbWVJZCA9IGZyYW1lSWRlbnRpZmllcihsb2Fk
ZXIpOwogCkBAIC02NjksMjMgKzY2OSwyMyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6
ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVyKiBsb2FkZQogICAg
IG1fZnJvbnRlbmREaXNwYXRjaGVyLT5yZXF1ZXN0U2VydmVkRnJvbU1lbW9yeUNhY2hlKHJlcXVl
c3RJZCwgZnJhbWVJZCwgbG9hZGVySWQsIGxvYWRlci0+dXJsKCkuc3RyaW5nKCksIHRpbWVzdGFt
cCgpLCBXVEZNb3ZlKGluaXRpYXRvck9iamVjdCksIGJ1aWxkT2JqZWN0Rm9yQ2FjaGVkUmVzb3Vy
Y2UoJnJlc291cmNlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpzZXRJbml0
aWFsU2NyaXB0Q29udGVudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYg
c291cmNlU3RyaW5nKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3Jp
cHRDb250ZW50KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBTdHJp
bmcmIHNvdXJjZVN0cmluZykKIHsKLSAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlQ29u
dGVudChJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgc291cmNlU3Ry
aW5nKTsKKyAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlQ29udGVudChJZGVudGlmaWVy
c0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpLCBzb3VyY2VTdHJpbmcp
OwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3Bv
bnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50
OjpkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIpCiB7Ci0gICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRlbnRpZmll
cnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllciksIEluc3BlY3RvclBhZ2VBZ2VudDo6U2Ny
aXB0UmVzb3VyY2UpOworICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIEluc3BlY3Rv
clBhZ2VBZ2VudDo6U2NyaXB0UmVzb3VyY2UpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtB
Z2VudDo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9h
ZGVyUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyKQogewogICAgIFN0cmlu
ZyBpbml0aWF0b3IgPSBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIub3B0aW9ucygpLmluaXRpYXRv
cjsKICAgICBpZiAoaW5pdGlhdG9yID09IGNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMo
KS5mZXRjaCkKLSAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRlbnRp
ZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllciksIEluc3BlY3RvclBhZ2VBZ2VudDo6
RmV0Y2hSZXNvdXJjZSk7CisgICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBl
KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIElu
c3BlY3RvclBhZ2VBZ2VudDo6RmV0Y2hSZXNvdXJjZSk7CiAgICAgZWxzZSBpZiAoaW5pdGlhdG9y
ID09IGNhY2hlZFJlc291cmNlUmVxdWVzdEluaXRpYXRvcnMoKS54bWxodHRwcmVxdWVzdCkKLSAg
ICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5
OjpyZXF1ZXN0SWQoaWRlbnRpZmllciksIEluc3BlY3RvclBhZ2VBZ2VudDo6WEhSUmVzb3VyY2Up
OworICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVyc0Zh
Y3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpLCBJbnNwZWN0b3JQYWdlQWdl
bnQ6OlhIUlJlc291cmNlKTsKIH0KIAogdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OndpbGxM
b2FkWEhSU3luY2hyb25vdXNseSgpCkBAIC0xMTI5LDcgKzExMjksNyBAQCB2b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBG
dW5jdGlvbjx2bwogICAgIEFTU0VSVChtX2VuYWJsZWQpOwogICAgIEFTU0VSVChtX2ludGVyY2Vw
dGlvbkVuYWJsZWQpOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9y
eTo6cmVxdWVzdElkKGxvYWRlci5pZGVudGlmaWVyKCkpOworICAgIFN0cmluZyByZXF1ZXN0SWQg
PSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChsb2FkZXIuaWRlbnRpZmllcigpLnRvVUlu
dDY0KCkpOwogICAgIGlmIChtX3BlbmRpbmdJbnRlcmNlcHRSZXF1ZXN0cy5jb250YWlucyhyZXF1
ZXN0SWQpKSB7CiAgICAgICAgIGhhbmRsZXIobG9hZGVyLnJlcXVlc3QoKSk7CiAgICAgICAgIHJl
dHVybjsKQEAgLTExMzgsMTIgKzExMzgsMTIgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgRnVuY3Rpb248dm8KICAg
ICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+cmVxdWVzdEludGVyY2VwdGVkKHJlcXVlc3RJZCwgYnVp
bGRPYmplY3RGb3JSZXNvdXJjZVJlcXVlc3QobG9hZGVyLnJlcXVlc3QoKSkpOwogfQogCi12b2lk
IEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6aW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4p
PiYmIGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6aW50ZXJjZXB0UmVzcG9u
c2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBBU1NFUlQo
bV9lbmFibGVkKTsKICAgICBBU1NFUlQobV9pbnRlcmNlcHRpb25FbmFibGVkKTsKIAotICAgIFN0
cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVy
KTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQo
aWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBpZiAobV9wZW5kaW5nSW50ZXJjZXB0UmVzcG9u
c2VzLmNvbnRhaW5zKHJlcXVlc3RJZCkpIHsKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CiAgICAgICAgIGhhbmRsZXIocmVzcG9uc2UsIG51bGxwdHIpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKaW5kZXgg
N2NkYzU4NjVlNThlOWE5YTMwZWEyNTIwMjY5MmQ0YjlhYTc3YjJkNi4uNGMyNWIzYjJhY2YwOTAy
ZThiYjk2NzY0ZDBiZjliYWQzNzg5YjE4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5oCkBAIC05OCwxNyArOTgs
MTcgQEAgcHVibGljOgogICAgIC8vIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbgogICAgIHZvaWQg
d2lsbFJlY2FsY3VsYXRlU3R5bGUoKTsKICAgICB2b2lkIGRpZFJlY2FsY3VsYXRlU3R5bGUoKTsK
LSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKLSAgICB2b2lkIHdpbGxTZW5k
UmVxdWVzdE9mVHlwZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VSZXF1ZXN0JiwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSk7Ci0g
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOwot
ICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAg
ICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0g
ICAgdm9pZCBkaWRGYWlsTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0
KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNo
ZWRSZXNvdXJjZSopOworICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OkxvYWRUeXBlKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25z
ZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0d29ya0xv
YWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVy
cm9yJik7CiAgICAgdm9pZCBkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRM
b2FkZXIqLCBDYWNoZWRSZXNvdXJjZSYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVM
b2FkZXJSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlciYpOworICAgIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYpOwogICAg
IHZvaWQgd2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KCk7CiAgICAgdm9pZCBkaWRMb2FkWEhSU3lu
Y2hyb25vdXNseSgpOwotICAgIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICB2b2lkIHdpbGxEZXN0cm95Q2FjaGVkUmVzb3Vy
Y2UoQ2FjaGVkUmVzb3VyY2UmKTsKICAgICB2b2lkIGRpZENyZWF0ZVdlYlNvY2tldCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFVSTCYgcmVxdWVzdFVSTCk7CiAgICAgdm9pZCB3aWxs
U2VuZFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKQEAgLTExOCwxMiArMTE4LDEyIEBAIHB1YmxpYzoKICAg
ICB2b2lkIGRpZFNlbmRXZWJTb2NrZXRGcmFtZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFdlYlNvY2tldEZyYW1lJik7CiAgICAgdm9pZCBkaWRSZWNlaXZlV2ViU29ja2V0RnJhbWVF
cnJvcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYpOwogICAgIHZvaWQg
bWFpbkZyYW1lTmF2aWdhdGVkKERvY3VtZW50TG9hZGVyJik7Ci0gICAgdm9pZCBzZXRJbml0aWFs
U2NyaXB0Q29udGVudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291
cmNlU3RyaW5nKTsKKyAgICB2b2lkIHNldEluaXRpYWxTY3JpcHRDb250ZW50KFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHZvaWQgZGlk
U2NoZWR1bGVTdHlsZVJlY2FsY3VsYXRpb24oRG9jdW1lbnQmKTsKICAgICBib29sIHdpbGxJbnRl
cmNlcHQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgYm9vbCBzaG91bGRJbnRlcmNlcHRS
ZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIGJvb2wgc2hvdWxkSW50ZXJjZXB0
UmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgaW50ZXJjZXB0UmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICB2b2lkIGludGVyY2VwdFJlc3BvbnNlKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7
CiAgICAgdm9pZCBpbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9p
ZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4mJik7CiAKICAgICB2b2lkIHNlYXJjaE90aGVyUmVx
dWVzdHMoY29uc3QgSlNDOjpZYXJyOjpSZWd1bGFyRXhwcmVzc2lvbiYsIFJlZjxKU09OOjpBcnJh
eU9mPEluc3BlY3Rvcjo6UHJvdG9jb2w6OlBhZ2U6OlNlYXJjaFJlc3VsdD4+Jik7CkBAIC0xNDAs
NyArMTQwLDcgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRGb3JjZUJ1ZmZl
cmluZ05ldHdvcmtSZXNvdXJjZURhdGEoKSBjb25zdCA9IDA7CiAKIHByaXZhdGU6Ci0gICAgdm9p
ZCB3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRl
ciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVz
cG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlKTsKKyAgICB2b2lkIHdpbGxT
ZW5kUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwg
SW5zcGVjdG9yUGFnZUFnZW50OjpSZXNvdXJjZVR5cGUpOwogCiAgICAgYm9vbCBzaG91bGRJbnRl
cmNlcHQoVVJMLCBJbnNwZWN0b3I6OlByb3RvY29sOjpOZXR3b3JrOjpOZXR3b3JrU3RhZ2UpOwog
ICAgIHZvaWQgY29udGludWVQZW5kaW5nUmVxdWVzdHMoKTsKQEAgLTIyNiw3ICsyMjYsNyBAQCBw
cml2YXRlOgogICAgIHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrUmVzb3VyY2VzRGF0YT4gbV9yZXNv
dXJjZXNEYXRhOwogCiAgICAgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gbV9leHRyYVJlcXVlc3RI
ZWFkZXJzOwotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV9oaWRkZW5SZXF1ZXN0SWRlbnRp
ZmllcnM7CisgICAgSGFzaFNldDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1faGlkZGVuUmVx
dWVzdElkZW50aWZpZXJzOwogCiAgICAgc3RydWN0IEludGVyY2VwdCB7CiAgICAgICAgIFN0cmlu
ZyB1cmw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNv
bnNvbGVBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNv
bGVBZ2VudC5jcHAKaW5kZXggNDhiOWE3MTg1M2Y0NDk0ZmJmNDdlMzgzOGE4NjM2NDc5ZTY3ZGVi
My4uYmRmZjg0MzRkYmVmOGM1NDg1YjE1MDZlZDIwOGEwMWM5ZWNhZDIyNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmNwcApAQCAt
NjUsMjIgKzY1LDIyIEBAIHZvaWQgV2ViQ29uc29sZUFnZW50OjpmcmFtZVdpbmRvd0Rpc2NhcmRl
ZChET01XaW5kb3cqIHdpbmRvdykKICAgICBzdGF0aWNfY2FzdDxXZWJJbmplY3RlZFNjcmlwdE1h
bmFnZXImPihtX2luamVjdGVkU2NyaXB0TWFuYWdlcikuZGlzY2FyZEluamVjdGVkU2NyaXB0c0Zv
cih3aW5kb3cpOwogfQogCi12b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZGlkUmVjZWl2ZVJlc3BvbnNl
KHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQordm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID49
IDQwMCkgewogICAgICAgICBhdXRvIG1lc3NhZ2UgPSBtYWtlU3RyaW5nKCJGYWlsZWQgdG8gbG9h
ZCByZXNvdXJjZTogdGhlIHNlcnZlciByZXNwb25kZWQgd2l0aCBhIHN0YXR1cyBvZiAiLCByZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpLCAiICgiLCBTY3JpcHRBcmd1bWVudHM6OnRydW5jYXRlU3Ry
aW5nRm9yQ29uc29sZU1lc3NhZ2UocmVzcG9uc2UuaHR0cFN0YXR1c1RleHQoKSksICcpJyk7Ci0g
ICAgICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4oTWVz
c2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWVzc2FnZSwgcmVzcG9uc2UudXJsKCkuc3RyaW5nKCksIDAsIDAsIG51bGxwdHIsIHJlcXVl
c3RJZGVudGlmaWVyKSk7CisgICAgICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxD
b25zb2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywg
TWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgcmVzcG9uc2UudXJsKCkuc3RyaW5nKCksIDAs
IDAsIG51bGxwdHIsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpKTsKICAgICB9CiB9CiAK
LXZvaWQgV2ViQ29uc29sZUFnZW50OjpkaWRGYWlsTG9hZGluZyh1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViQ29uc29s
ZUFnZW50OjpkaWRGYWlsTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVxdWVzdElk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIC8vIFJlcG9ydCBm
YWlsdXJlcyBvbmx5LgogICAgIGlmIChlcnJvci5pc0NhbmNlbGxhdGlvbigpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBhdXRvIG1lc3NhZ2UgPSBtYWtlU3RyaW5nKCJGYWlsZWQgdG8gbG9hZCBy
ZXNvdXJjZSIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uKCkuaXNFbXB0eSgpID8gIiIgOiAi
OiAiLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbigpKTsKLSAgICBhZGRNZXNzYWdlVG9Db25z
b2xlKG1ha2VVbmlxdWU8Q29uc29sZU1lc3NhZ2U+KE1lc3NhZ2VTb3VyY2U6Ok5ldHdvcmssIE1l
c3NhZ2VUeXBlOjpMb2csIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGVycm9yLmZhaWxp
bmdVUkwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVzdElkZW50aWZpZXIpKTsKKyAg
ICBhZGRNZXNzYWdlVG9Db25zb2xlKG1ha2VVbmlxdWU8Q29uc29sZU1lc3NhZ2U+KE1lc3NhZ2VT
b3VyY2U6Ok5ldHdvcmssIE1lc3NhZ2VUeXBlOjpMb2csIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1l
c3NhZ2UsIGVycm9yLmZhaWxpbmdVUkwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVz
dElkZW50aWZpZXIudG9VSW50NjQoKSkpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuaApp
bmRleCAwYjhmMjBlYWMzNDNiNjY4MTdhYzlmMGYwYzZjOGNiMjBjOWJhYzdiLi45MGM3MDhlOWI4
MDE3MTJiNjU5NDA3YWUwYzFkNjY4NjhhZWE5NGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmgKQEAgLTI2LDYgKzI2LDcgQEAKICNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSAiSW5zcGVjdG9yV2ViQWdlbnRCYXNlLmgiCisjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
SW5zcGVjdG9yQ29uc29sZUFnZW50Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQzLDgg
KzQ0LDggQEAgcHVibGljOgogCiAgICAgLy8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uCiAgICAg
dm9pZCBmcmFtZVdpbmRvd0Rpc2NhcmRlZChET01XaW5kb3cqKTsKLSAgICB2b2lkIGRpZFJlY2Vp
dmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBkaWRGYWlsTG9hZGluZyh1bnNpZ25lZCBsb25nIHJlcXVl
c3RJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCBkaWRSZWNlaXZl
UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
Jik7CisgICAgdm9pZCBkaWRGYWlsTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlRXJyb3ImKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5j
cHAKaW5kZXggMGFkY2E3MGNmYTE2Mjk4YTdhNmM5YjNmMjg2ZmFhM2RiMmNkYmU5NS4uOGIzMWUx
NzM5MmE5N2JiOTZkMzQ5N2I5MjhlZGRhMmU2N2NjZDZkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAKQEAgLTU4LDcg
KzU4LDcgQEAgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp+Q3Jvc3NPcmlnaW5QcmVmbGln
aHRDaGVja2VyKCkKICAgICAgICAgbV9yZXNvdXJjZS0+cmVtb3ZlQ2xpZW50KCp0aGlzKTsKIH0K
IAotdm9pZCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6OnZhbGlkYXRlUHJlZmxpZ2h0UmVz
cG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCit2b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6dmFsaWRhdGVQ
cmVmbGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGxvYWRlciwgUmVzb3Vy
Y2VSZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGF1dG8qIGZyYW1lID0g
bG9hZGVyLmRvY3VtZW50KCkuZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKSB7CkBAIC0xNDEsNyAr
MTQxLDcgQEAgdm9pZCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6OmRvUHJlZmxpZ2h0KERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVyLAogICAgIFJlc291cmNlUmVzcG9uc2UgcmVz
cG9uc2U7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YTsKIAotICAgIHVuc2lnbmVkIGlk
ZW50aWZpZXIgPSBsb2FkZXIuZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5sb2FkUmVzb3Vy
Y2VTeW5jaHJvbm91c2x5KHByZWZsaWdodFJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3k6
OkNhbm5vdEFza0NsaWVudEZvckNyZWRlbnRpYWxzLCBGZXRjaE9wdGlvbnMgeyB9LCB7IH0sIGVy
cm9yLCByZXNwb25zZSwgZGF0YSk7CisgICAgYXV0byBpZGVudGlmaWVyID0gbG9hZGVyLmRvY3Vt
ZW50KCkuZnJhbWUoKS0+bG9hZGVyKCkubG9hZFJlc291cmNlU3luY2hyb25vdXNseShwcmVmbGln
aHRSZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5OjpDYW5ub3RBc2tDbGllbnRGb3JDcmVk
ZW50aWFscywgRmV0Y2hPcHRpb25zIHsgfSwgeyB9LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwog
CiAgICAgaWYgKCFlcnJvci5pc051bGwoKSkgewogICAgICAgICAvLyBJZiB0aGUgcHJlZmxpZ2h0
IHdhcyBjYW5jZWxsZWQgYnkgdW5kZXJseWluZyBjb2RlLCBpdCBwcm9iYWJseSBtZWFucyB0aGUg
cmVxdWVzdCB3YXMgYmxvY2tlZCBkdWUgdG8gc29tZSBhY2Nlc3MgY29udHJvbCBwb2xpY3kuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVj
a2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2Vy
LmgKaW5kZXggMmEwMzdjYzRiNjFlODFmYmUyZjAzYzczODZjOWI4YzNkYWUwOTVjYS4uNTMyOTgw
ZDM1OWQ1ZGU3ZTczZWJjYTdiYWIxMDE2ZmIyZTA3MGFhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaApAQCAtMzIsNiArMzIs
NyBAQAogCiAjaW5jbHVkZSAiQ2FjaGVkUmF3UmVzb3VyY2VDbGllbnQuaCIKICNpbmNsdWRlICJD
YWNoZWRSZXNvdXJjZUhhbmRsZS5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CkBAIC01Nyw3ICs1OCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZWRpcmVjdFJlY2VpdmVkKENh
Y2hlZFJlc291cmNlJiwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlc291cmNlUmVxdWVzdCYmKT4mJikgZmluYWw7CiAK
ICAgICBzdGF0aWMgdm9pZCBoYW5kbGVMb2FkaW5nRmFpbHVyZShEb2N1bWVudFRocmVhZGFibGVM
b2FkZXImLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJik7Ci0gICAgc3RhdGlj
IHZvaWQgdmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXIm
LCBSZXNvdXJjZVJlcXVlc3QmJiwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpOworICAgIHN0YXRpYyB2b2lkIHZhbGlkYXRlUHJlZmxpZ2h0UmVzcG9uc2UoRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogCiAgICAgRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyJiBtX2xvYWRlcjsKICAgICBDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSYXdSZXNv
dXJjZT4gbV9yZXNvdXJjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3Bw
CmluZGV4IDBkMmQxNDEyMjJkZTc2ZmRhYmFkNmUwNGRmNzI0NjY3NGY3MGE2NGQuLmQzZTljZWFk
OWNiN2M4MmUyZDkwMjcwOTFhYmVlNDhkNjVjNGU0OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50TG9hZGVyLmNwcApAQCAtNDY0LDggKzQ2NCw4IEBAIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OmZpbmlzaGVkTG9hZGluZygpCiAgICAgICAgIC8vIGJlZm9yZSBjYWxsaW5nIGRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyBzbyB0aGF0IHdlIGRvbid0IGxhdGVyIHRyeSB0bwogICAgICAgICAv
LyBjYW5jZWwgdGhlIGFscmVhZHktZmluaXNoZWQgc3Vic3RpdHV0ZSBsb2FkLgogICAgICAgICBO
ZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAgICAgICB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIgPSBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOwotICAg
ICAgICBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyID0gMDsKKyAgICAg
ICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIgPSBtX2lkZW50aWZpZXJGb3JM
b2FkV2l0aG91dFJlc291cmNlTG9hZGVyOworICAgICAgICBtX2lkZW50aWZpZXJGb3JMb2FkV2l0
aG91dFJlc291cmNlTG9hZGVyID0geyB9OwogICAgICAgICBmcmFtZUxvYWRlcigpLT5ub3RpZmll
cigpLmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyh0aGlzLCBpZGVudGlmaWVyLCBlbXB0eU1ldHJp
Y3MsIG51bGxwdHIpOwogICAgIH0KIApAQCAtODg2LDcgKzg4Niw3IEBAIGJvb2wgRG9jdW1lbnRM
b2FkZXI6OnRyeUxvYWRpbmdTdWJzdGl0dXRlRGF0YSgpCiAgICAgICAgIHJldHVybiBmYWxzZTsK
IAogICAgIERPQ1VNRU5UTE9BREVSX1JFTEVBU0VfTE9HKCJzdGFydExvYWRpbmdNYWluUmVzb3Vy
Y2U6IFJldHVybmluZyBzdWJzdGl0dXRlIGRhdGEiKTsKLSAgICBtX2lkZW50aWZpZXJGb3JMb2Fk
V2l0aG91dFJlc291cmNlTG9hZGVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0
ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291
cmNlTG9hZGVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIGZy
YW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3Qo
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwgdGhpcywgbV9yZXF1ZXN0
KTsKICAgICBmcmFtZUxvYWRlcigpLT5ub3RpZmllcigpLmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KHRoaXMsIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIsIG1fcmVxdWVz
dCwgUmVzb3VyY2VSZXNwb25zZSgpLCBudWxscHRyKTsKIApAQCAtOTM5LDcgKzkzOSw3IEBAIGJv
b2wgRG9jdW1lbnRMb2FkZXI6OnRyeUxvYWRpbmdSZWRpcmVjdFJlcXVlc3RGcm9tQXBwbGljYXRp
b25DYWNoZShjb25zdCBSZXNvdXJjCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgRG9jdW1l
bnRMb2FkZXI6OnN0b3BMb2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQ
b2xpY3lEZW5pZWQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0b3BMb2FkaW5nQWZ0ZXJYRnJh
bWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIFJlZjxEb2N1bWVudExvYWRlcj4gcHJvdGVjdGVkVGhpcyB7ICp0aGlzIH07CiAgICAgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZCgq
bV9mcmFtZSwgaWRlbnRpZmllciwgKnRoaXMsIHJlc3BvbnNlKTsKQEAgLTEwMzcsNyArMTAzNyw3
IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UsIENvbXBsZXRpCiAgICAgfQogCiAgICAgQVNTRVJUKG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgfHwgbV9tYWluUmVzb3VyY2UpOwotICAg
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVz
b3VyY2VMb2FkZXIgPyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDog
bV9tYWluUmVzb3VyY2UtPmlkZW50aWZpZXIoKTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIg
PyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDogbV9tYWluUmVzb3Vy
Y2UtPmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKICAgICBpZiAobV9z
dWJzdGl0dXRlRGF0YS5pc1ZhbGlkKCkgfHwgIXBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJT
dHJhdGVneSgpLT5oYXZlUGVyZm9ybWVkU2VjdXJpdHlDaGVja3MocmVzcG9uc2UpKSB7CkBAIC0x
MDU0LDcgKzEwNTQsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBDb21wbGV0aQogICAgICAgICAgICAgaWYg
KCFmcmFtZU9wdGlvbnMuaXNOdWxsKCkpIHsKICAgICAgICAgICAgICAgICBpZiAoZnJhbWVMb2Fk
ZXIoKS0+c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMoZnJhbWVPcHRpb25zLCB1
cmwsIGlkZW50aWZpZXIpKSB7CiAgICAgICAgICAgICAgICAgICAgIFN0cmluZyBtZXNzYWdlID0g
IlJlZnVzZWQgdG8gZGlzcGxheSAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5n
dGgoKSArICInIGluIGEgZnJhbWUgYmVjYXVzZSBpdCBzZXQgJ1gtRnJhbWUtT3B0aW9ucycgdG8g
JyIgKyBmcmFtZU9wdGlvbnMgKyAiJy4iOwotICAgICAgICAgICAgICAgICAgICBtX2ZyYW1lLT5k
b2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVz
c2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgaWRlbnRpZmllcik7CisgICAgICAgICAgICAgICAg
ICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6
OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCBpZGVudGlmaWVyLnRvVUlu
dDY0KCkpOwogICAgICAgICAgICAgICAgICAgICBzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9u
c09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgIH0KQEAgLTExODAsMTAg
KzExODAsMTAgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6ZGlzYWxsb3dEYXRhUmVxdWVzdCgpIGNv
bnN0CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGlmIChhdXRvKiBjdXJyZW50RG9jdW1l
bnQgPSBmcmFtZSgpLT5kb2N1bWVudCgpKSB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPyBtX2lkZW50
aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDogbV9tYWluUmVzb3VyY2UtPmlkZW50
aWZpZXIoKTsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIgPSBt
X2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyID8gbV9pZGVudGlmaWVyRm9y
TG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA6IG1fbWFpblJlc291cmNlLT5pZGVudGlmaWVyKCk7
CiAgICAgICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAotICAgICAgICBjdXJyZW50RG9jdW1lbnQt
PmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6
OkVycm9yLCBtYWtlU3RyaW5nKCJOb3QgYWxsb3dlZCB0byBuYXZpZ2F0ZSB0b3AgZnJhbWUgdG8g
ZGF0YSBVUkwgJyIsIG1fcmVzcG9uc2UudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCksICInLiIpLCBpZGVudGlmaWVyKTsKKyAgICAgICAgY3VycmVudERvY3VtZW50LT5hZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWFrZVN0cmluZygiTm90IGFsbG93ZWQgdG8gbmF2aWdhdGUgdG9wIGZyYW1lIHRvIGRhdGEg
VVJMICciLCBtX3Jlc3BvbnNlLnVybCgpLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgp
LCAiJy4iKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICB9CiAgICAgRE9DVU1FTlRMT0FE
RVJfUkVMRUFTRV9MT0coImNvbnRpbnVlQWZ0ZXJDb250ZW50UG9saWN5OiBjYW5ub3Qgc2hvdyBV
UkwiKTsKIApAQCAtMjAxNiw3ICsyMDE2LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExv
YWRpbmdTdWJyZXNvdXJjZXMoKQogICAgIEFTU0VSVChtX3N1YnJlc291cmNlTG9hZGVycy5pc0Vt
cHR5KCkpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihS
ZXNvdXJjZUxvYWRlciogbG9hZGVyKQordm9pZCBEb2N1bWVudExvYWRlcjo6YWRkU3VicmVzb3Vy
Y2VMb2FkZXIoUmVzb3VyY2VMb2FkZXImIGxvYWRlcikKIHsKICAgICAvLyBUaGUgbWFpbiByZXNv
dXJjZSdzIHVuZGVybHlpbmcgUmVzb3VyY2VMb2FkZXIgd2lsbCBhc2sgdG8gYmUgYWRkZWQgaGVy
ZS4KICAgICAvLyBJdCBpcyBtdWNoIHNpbXBsZXIgdG8gaGFuZGxlIHNwZWNpYWwgY2FzaW5nIG9m
IG1haW4gcmVzb3VyY2UgbG9hZHMgaWYgd2UgZG9uJ3QKQEAgLTIwMjUsMTIgKzIwMjUsMTIgQEAg
dm9pZCBEb2N1bWVudExvYWRlcjo6YWRkU3VicmVzb3VyY2VMb2FkZXIoUmVzb3VyY2VMb2FkZXIq
IGxvYWRlcikKICAgICAvLyBpZiB3ZSBhcmUganVzdCBzdGFydGluZyB0aGUgbWFpbiByZXNvdXJj
ZSBsb2FkLgogICAgIGlmICghbV9nb3RGaXJzdEJ5dGUpCiAgICAgICAgIHJldHVybjsKLSAgICBB
U1NFUlQobG9hZGVyLT5pZGVudGlmaWVyKCkpOwotICAgIEFTU0VSVCghbV9zdWJyZXNvdXJjZUxv
YWRlcnMuY29udGFpbnMobG9hZGVyLT5pZGVudGlmaWVyKCkpKTsKLSAgICBBU1NFUlQoIW1haW5S
ZXNvdXJjZUxvYWRlcigpIHx8IG1haW5SZXNvdXJjZUxvYWRlcigpICE9IGxvYWRlcik7CisgICAg
QVNTRVJUKGxvYWRlci5pZGVudGlmaWVyKCkpOworICAgIEFTU0VSVCghbV9zdWJyZXNvdXJjZUxv
YWRlcnMuY29udGFpbnMobG9hZGVyLmlkZW50aWZpZXIoKSkpOworICAgIEFTU0VSVCghbWFpblJl
c291cmNlTG9hZGVyKCkgfHwgbWFpblJlc291cmNlTG9hZGVyKCkgIT0gJmxvYWRlcik7CiAKICAg
ICAvLyBBcHBsaWNhdGlvbiBDYWNoZSBsb2FkZXJzIGFyZSBoYW5kbGVkIGJ5IHRoZWlyIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cCBkaXJlY3RseS4KLSAgICBpZiAobG9hZGVyLT5vcHRpb25zKCkuYXBw
bGljYXRpb25DYWNoZU1vZGUgPT0gQXBwbGljYXRpb25DYWNoZU1vZGU6OkJ5cGFzcykKKyAgICBp
ZiAobG9hZGVyLm9wdGlvbnMoKS5hcHBsaWNhdGlvbkNhY2hlTW9kZSA9PSBBcHBsaWNhdGlvbkNh
Y2hlTW9kZTo6QnlwYXNzKQogICAgICAgICByZXR1cm47CiAKICNpZiBBU1NFUlRfRU5BQkxFRApA
QCAtMjA0MCw3ICsyMDQwLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkU3VicmVzb3VyY2VM
b2FkZXIoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICBjYXNlIERvY3VtZW50OjpBYm91dFRvRW50ZXJCYWNrRm9yd2FyZENhY2hlOiB7CiAgICAgICAg
ICAgICAvLyBBIHBhZ2UgYWJvdXQgdG8gZW50ZXIgdGhlIEJhY2tGb3J3YXJkQ2FjaGUgc2hvdWxk
IG9ubHkgYmUgYWJsZSB0byBzdGFydCBwaW5nIGxvYWRzLgotICAgICAgICAgICAgYXV0byogY2Fj
aGVkUmVzb3VyY2UgPSBkb3duY2FzdDxTdWJyZXNvdXJjZUxvYWRlcj4obG9hZGVyKS0+Y2FjaGVk
UmVzb3VyY2UoKTsKKyAgICAgICAgICAgIGF1dG8qIGNhY2hlZFJlc291cmNlID0gZG93bmNhc3Q8
U3VicmVzb3VyY2VMb2FkZXI+KGxvYWRlcikuY2FjaGVkUmVzb3VyY2UoKTsKICAgICAgICAgICAg
IEFTU0VSVChjYWNoZWRSZXNvdXJjZSAmJiAoQ2FjaGVkUmVzb3VyY2U6OnNob3VsZFVzZVBpbmdM
b2FkKGNhY2hlZFJlc291cmNlLT50eXBlKCkpIHx8IGNhY2hlZFJlc291cmNlLT5vcHRpb25zKCku
a2VlcEFsaXZlKSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQpAQCAtMjA1Miw3ICsy
MDUyLDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkU3VicmVzb3VyY2VMb2FkZXIoUmVzb3Vy
Y2VMb2FkZXIqIGxvYWRlcikKICAgICB9CiAjZW5kaWYKIAotICAgIG1fc3VicmVzb3VyY2VMb2Fk
ZXJzLmFkZChsb2FkZXItPmlkZW50aWZpZXIoKSwgbG9hZGVyKTsKKyAgICBtX3N1YnJlc291cmNl
TG9hZGVycy5hZGQobG9hZGVyLmlkZW50aWZpZXIoKSwgJmxvYWRlcik7CiB9CiAKIHZvaWQgRG9j
dW1lbnRMb2FkZXI6OnJlbW92ZVN1YnJlc291cmNlTG9hZGVyKExvYWRDb21wbGV0aW9uVHlwZSB0
eXBlLCBSZXNvdXJjZUxvYWRlciogbG9hZGVyKQpAQCAtMjI3OCw3ICsyMjc4LDcgQEAgdm9pZCBE
b2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0
KQogI2VuZGlmCiAKICAgICBpZiAoIW1haW5SZXNvdXJjZUxvYWRlcigpKSB7Ci0gICAgICAgIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBtX2ZyYW1lLT5wYWdlKCkt
PnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgICAgICBtX2lkZW50aWZp
ZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
OjpnZW5lcmF0ZSgpOwogICAgICAgICBmcmFtZUxvYWRlcigpLT5ub3RpZmllcigpLmFzc2lnbklk
ZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3Vy
Y2VMb2FkZXIsIHRoaXMsIG1haW5SZXNvdXJjZVJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkpOwog
ICAgICAgICBmcmFtZUxvYWRlcigpLT5ub3RpZmllcigpLmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KHRoaXMsIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIsIG1haW5SZXNv
dXJjZVJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIFJlc291cmNlUmVzcG9uc2UoKSwgbnVsbHB0
cik7CiAgICAgfQpAQCAtMjM0NCwxMyArMjM0NCwxMyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpj
bGVhck1haW5SZXNvdXJjZSgpCiAgICAgdW5yZWdpc3RlclRlbXBvcmFyeVNlcnZpY2VXb3JrZXJD
bGllbnQoKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5p
c2hlZExvYWRpbmdPbmVQYXJ0KFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCit2b2lkIERvY3VtZW50
TG9hZGVyOjpzdWJyZXNvdXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VM
b2FkZXImIGxvYWRlcikKIHsKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBsb2FkZXIt
PmlkZW50aWZpZXIoKTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciA9
IGxvYWRlci5pZGVudGlmaWVyKCk7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCi0gICAgaWYg
KCFtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVycy5hZGQoaWRlbnRpZmllciwgbG9hZGVyKS5p
c05ld0VudHJ5KSB7Ci0gICAgICAgIEFTU0VSVChtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVy
cy5nZXQoaWRlbnRpZmllcikgPT0gbG9hZGVyKTsKKyAgICBpZiAoIW1fbXVsdGlwYXJ0U3VicmVz
b3VyY2VMb2FkZXJzLmFkZChpZGVudGlmaWVyLCAmbG9hZGVyKS5pc05ld0VudHJ5KSB7CisgICAg
ICAgIEFTU0VSVChtX211bHRpcGFydFN1YnJlc291cmNlTG9hZGVycy5nZXQoaWRlbnRpZmllcikg
PT0gJmxvYWRlcik7CiAgICAgICAgIEFTU0VSVCghbV9zdWJyZXNvdXJjZUxvYWRlcnMuY29udGFp
bnMoaWRlbnRpZmllcikpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIEFTU0VSVChtX3N1YnJlc291
cmNlTG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudExvYWRlci5oCmluZGV4IGE3MzEzOTI2YWNkYTU5MjE4YjAyMTUxMTBiOTczYTUzZmE0YmIy
ZjkuLjhlZTE0YTI0ZDU3YjM0Y2M3Y2JlYTRjZGM3NzMxMDI3MjZkMmU1ZDYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oCkBAIC00Miw2ICs0Miw3IEBACiAjaW5jbHVkZSAi
TGlua0ljb24uaCIKICNpbmNsdWRlICJOYXZpZ2F0aW9uQWN0aW9uLmgiCiAjaW5jbHVkZSAiUmVz
b3VyY2VFcnJvci5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVz
dC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAgLTg5LDcgKzkwLDcgQEAgY2xh
c3MgU3Vic3RpdHV0ZVJlc291cmNlOwogCiBlbnVtIGNsYXNzIFNob3VsZENvbnRpbnVlOwogCi11
c2luZyBSZXNvdXJjZUxvYWRlck1hcCA9IEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUmVmUHRyPFJl
c291cmNlTG9hZGVyPj47Cit1c2luZyBSZXNvdXJjZUxvYWRlck1hcCA9IEhhc2hNYXA8UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBSZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKIAogZW51bSBjbGFz
cyBBdXRvcGxheVBvbGljeSA6IHVpbnQ4X3QgewogICAgIERlZmF1bHQsIC8vIFVzZXMgcG9saWNp
ZXMgc3BlY2lmaWVkIGluIGRvY3VtZW50IHNldHRpbmdzLgpAQCAtMjk1LDcgKzI5Niw3IEBAIHB1
YmxpYzoKIAogICAgIHZvaWQgc3RvcExvYWRpbmdQbHVnSW5zKCk7CiAgICAgdm9pZCBzdG9wTG9h
ZGluZ1N1YnJlc291cmNlcygpOwotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc3RvcExvYWRpbmdB
ZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZCh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIHN0b3BMb2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQ
b2xpY3lEZW5pZWQoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CiAKICAgICBib29sIHVzZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJsZWQoKSBjb25zdCB7
IHJldHVybiBtX3VzZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJsZWQ7IH0KICAgICB2b2lkIHNldFVz
ZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fdXNlckNvbnRlbnRF
eHRlbnNpb25zRW5hYmxlZCA9IGVuYWJsZWQ7IH0KQEAgLTMzOCwxMiArMzM5LDEyIEBAIHB1Ymxp
YzoKICAgICBXRUJDT1JFX0VYUE9SVCBNb3VzZUV2ZW50UG9saWN5IG1vdXNlRXZlbnRQb2xpY3ko
KSBjb25zdDsKICAgICB2b2lkIHNldE1vdXNlRXZlbnRQb2xpY3koTW91c2VFdmVudFBvbGljeSBw
b2xpY3kpIHsgbV9tb3VzZUV2ZW50UG9saWN5ID0gcG9saWN5OyB9CiAKLSAgICB2b2lkIGFkZFN1
YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBhZGRTdWJyZXNvdXJj
ZUxvYWRlcihSZXNvdXJjZUxvYWRlciYpOwogICAgIHZvaWQgcmVtb3ZlU3VicmVzb3VyY2VMb2Fk
ZXIoTG9hZENvbXBsZXRpb25UeXBlLCBSZXNvdXJjZUxvYWRlciopOwogICAgIHZvaWQgYWRkUGx1
Z0luU3RyZWFtTG9hZGVyKFJlc291cmNlTG9hZGVyJik7CiAgICAgdm9pZCByZW1vdmVQbHVnSW5T
dHJlYW1Mb2FkZXIoUmVzb3VyY2VMb2FkZXImKTsKIAotICAgIHZvaWQgc3VicmVzb3VyY2VMb2Fk
ZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBzdWJy
ZXNvdXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXImKTsKIAog
ICAgIHZvaWQgc2V0RGVmZXJNYWluUmVzb3VyY2VEYXRhTG9hZChib29sIGRlZmVyKSB7IG1fZGVm
ZXJNYWluUmVzb3VyY2VEYXRhTG9hZCA9IGRlZmVyOyB9CiAgICAgCkBAIC02MTAsNyArNjExLDcg
QEAgcHJpdmF0ZToKICAgICBib29sIG1fbG9hZGluZ01haW5SZXNvdXJjZSB7IGZhbHNlIH07CiAg
ICAgRG9jdW1lbnRMb2FkVGltaW5nIG1fbG9hZFRpbWluZzsKIAotICAgIHVuc2lnbmVkIGxvbmcg
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciB7IDAgfTsKKyAgICBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxv
YWRlcjsKIAogICAgIERhdGFMb2FkVG9rZW4gbV9kYXRhTG9hZFRva2VuOwogICAgIGJvb2wgbV93
YWl0aW5nRm9yQ29udGVudFBvbGljeSB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IDVhOWE1N2U5MzkwNTI4
ZmQzNTk5YjA3ZGI2MGFjMTViMDA2NmM5NzAuLjA4YTQzOWM5MGVhNTYyZGU2ZTk4ODVjMDc4MTM0
ZjNkYWE0OGEwYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwCkBAIC0zOTksNyArMzk5LDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OnJlc3BvbnNlUmVjZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBj
b25zdAogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogfQogCi12b2lkIERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIERvY3VtZW50VGhyZWFk
YWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBBU1NF
UlQobV9jbGllbnQpOwogICAgIEFTU0VSVChyZXNwb25zZS50eXBlKCkgIT0gUmVzb3VyY2VSZXNw
b25zZTo6VHlwZTo6RXJyb3IpOwpAQCAtNDMzLDcgKzQzMyw3IEBAIHZvaWQgRG9jdW1lbnRUaHJl
YWRhYmxlTG9hZGVyOjpkYXRhUmVjZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBjb25z
dCB1aW50CiAgICAgZGlkUmVjZWl2ZURhdGEobV9yZXNvdXJjZS0+aWRlbnRpZmllcigpLCBkYXRh
LCBkYXRhTGVuZ3RoKTsKIH0KIAotdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZFJl
Y2VpdmVEYXRhKHVuc2lnbmVkIGxvbmcsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoKQordm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVEYXRhKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgp
CiB7CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKIApAQCAtNDY5LDcgKzQ2OSw3IEBAIHZvaWQgRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0IE5lCiAgICAgICAgIGRpZEZpbmlzaExvYWRpbmcobV9yZXNvdXJjZS0+aWRl
bnRpZmllcigpKTsKIH0KIAotdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlz
aExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIpCiB7CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKIApAQCAtNTAzLDcgKzUwMyw3IEBAIHZv
aWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikKICAgICBtX2NsaWVudC0+ZGlkRmluaXNoTG9hZGluZyhpZGVudGlmaWVy
KTsKIH0KIAotdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZhaWwodW5zaWduZWQg
bG9uZywgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlcjo6ZGlkRmFpbChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGVycm9yKQogewogICAgIEFTU0VSVChtX2NsaWVudCk7CiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQpAQCAtNTM1LDcgKzUzNSw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpwcmVmbGlnaHRTdWNjZXNzKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiAgICAgbG9h
ZFJlcXVlc3QoV1RGTW92ZShhY3R1YWxSZXF1ZXN0KSwgU2VjdXJpdHlDaGVja1BvbGljeTo6U2tp
cFNlY3VyaXR5Q2hlY2spOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cHJl
ZmxpZ2h0RmFpbHVyZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQordm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1
cmUoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIG1fcHJlZmxpZ2h0Q2hlY2tlciA9IHN0ZDo6bnVsbG9wdDsKIApA
QCAtNTk4LDcgKzU5OCw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVx
dWVzdChSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBTZWN1cml0eUNoCiAgICAgUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gZGF0YTsKICAgICBSZXNvdXJjZUVycm9yIGVycm9yOwogICAgIFJlc291cmNl
UmVzcG9uc2UgcmVzcG9uc2U7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gc3RkOjpu
dW1lcmljX2xpbWl0czx1bnNpZ25lZCBsb25nPjo6bWF4KCk7CisgICAgYXV0byBpZGVudGlmaWVy
ID0gbWFrZU9iamVjdElkZW50aWZpZXI8UmVzb3VyY2VMb2FkZXI+KHN0ZDo6bnVtZXJpY19saW1p
dHM8dWludDY0X3Q+OjptYXgoKSk7CiAgICAgaWYgKGF1dG8qIGZyYW1lID0gbV9kb2N1bWVudC5m
cmFtZSgpKSB7CiAgICAgICAgIGlmICghTWl4ZWRDb250ZW50Q2hlY2tlcjo6Y2FuUnVuSW5zZWN1
cmVDb250ZW50KCpmcmFtZSwgbV9kb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCByZXF1ZXN0VVJM
KSkKICAgICAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1
bWVudFRocmVhZGFibGVMb2FkZXIuaAppbmRleCBmMWJmMGVmODQ2YmVmYjViMDUzNWU4MDRkNTAz
NDAwMzI4NzExODAwLi44M2ZhOTA5MWYxNDdlMzhkNzRjYWE2ZDgxYzUwYWM5NTdhMjM0MjE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5o
CkBAIC0zMyw2ICszMyw3IEBACiAKICNpbmNsdWRlICJDb250ZW50U2VjdXJpdHlQb2xpY3kuaCIK
ICNpbmNsdWRlICJDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaCIKKyNpbmNsdWRlICJSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCiAj
aW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJUaHJlYWRhYmxlTG9hZGVyLmgi
CkBAIC05MSwxNSArOTIsMTUgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGZp
bmlzaGVkVGltaW5nRm9yV29ya2VyTG9hZChjb25zdCBSZXNvdXJjZVRpbWluZyYpOwogICAgICAg
ICB2b2lkIG5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlJiwgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJikgb3ZlcnJpZGU7CiAKLSAgICAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgICAg
IHZvaWQgZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50
OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7Ci0gICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOwotICAgICAgICB2b2lkIGRpZEZhaWwodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpOworICAgICAg
ICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICAg
ICAgdm9pZCBkaWRGYWlsKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VF
cnJvciYpOwogICAgICAgICB2b2lkIG1ha2VDcm9zc09yaWdpbkFjY2Vzc1JlcXVlc3QoUmVzb3Vy
Y2VSZXF1ZXN0JiYpOwogICAgICAgICB2b2lkIG1ha2VTaW1wbGVDcm9zc09yaWdpbkFjY2Vzc1Jl
cXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYpOwogICAgICAgICB2b2lkIG1ha2VDcm9zc09yaWdpbkFj
Y2Vzc1JlcXVlc3RXaXRoUHJlZmxpZ2h0KFJlc291cmNlUmVxdWVzdCYmKTsKICAgICAgICAgdm9p
ZCBwcmVmbGlnaHRTdWNjZXNzKFJlc291cmNlUmVxdWVzdCYmKTsKLSAgICAgICAgdm9pZCBwcmVm
bGlnaHRGYWlsdXJlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOworICAgICAgICB2b2lkIHByZWZsaWdodEZhaWx1cmUoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKICAgICAgICAgdm9pZCBsb2FkUmVxdWVzdChS
ZXNvdXJjZVJlcXVlc3QmJiwgU2VjdXJpdHlDaGVja1BvbGljeSk7CiAgICAgICAgIGJvb2wgaXNB
bGxvd2VkUmVkaXJlY3QoY29uc3QgVVJMJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRW1wdHlDbGllbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVu
dHMuY3BwCmluZGV4IGRiY2UxNzcxNzY2YjFmYzE5ODI5ODUzMTM1OTQ5YWY1MTliMmJiYmYuLjli
ZWRlYzYzNmIyYjRmZTYxODRhNDE5YTlhYjY1MzM0NWMxNWJkNzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9FbXB0eUNsaWVudHMuY3BwCkBAIC02NzMsMjYgKzY3MywyNiBAQCB2b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVu
dExvYWRlciosCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRl
bnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZywgRG9jdW1lbnRMb2FkZXIqLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojphc3Np
Z25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikKIHsKIH0KIAotYm9vbCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcpCitib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3Vs
ZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKQogewogICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExv
YWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpCit2b2lkIEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpCiB7CiB9CiAKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFD
RV9BVVRIX0NBTExCQUNLKQogCi1ib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhl
bnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKQorYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKQogewogICAg
IHJldHVybiBmYWxzZTsKIH0KQEAgLTcwMSwyMiArNzAxLDIyIEBAIGJvb2wgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVu
dExvYWRlCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCi1SZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcpCitSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRl
ciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4gbnVsbHB0cjsKIH0K
IAogI2VuZGlmCiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nLCBpbnQpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGludCkKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKQordm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiB9CiAKQEAgLTcyOCw3ICs3Mjgs
NyBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoRGF0YURl
dGVjdGlvbihOU0FycmF5ICopCiAKICNlbmRpZgogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
LCBjb25zdCBSZXNvdXJjZUVycm9yJikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpCiB7CiB9CiAKQEAgLTEwNjcsNyArMTA2Nyw3IEBA
IFJlbW90ZUFYT2JqZWN0UmVmIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmFjY2Vzc2liaWxpdHlS
ZW1vdGVPYmplY3QoKQogICAgIHJldHVybiBudWxscHRyOwogfQogCi12b2lkIEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZywgTlNDYWNoZWRVUkxSZXNwb25zZSAqcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKK3Zv
aWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UgKnJlc3Bv
bnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29t
cGxldGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgY29tcGxldGlvbkhhbmRsZXIocmVzcG9uc2Up
OwogfQpAQCAtMTA3Niw3ICsxMDc2LDcgQEAgdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojp3
aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIE4KIAogI2lm
IFVTRShDRlVSTENPTk5FQ1RJT04pCiAKLWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hv
dWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25n
KQorYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVkIGxvbmcgbG9uZykKIHsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZy
YW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlGcmFtZUxvYWRl
ckNsaWVudC5oCmluZGV4IDAxN2UzN2UxNTRjZTJmZmE2NGMxODJmMWU1YmViZTM3YzA0YWNlNjAu
LjAyOTRkYzQzNDIwNGI2ZjliZmYyOTI2MWEwNzc5YjY4YTA0ZmViZDUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaApAQCAtNTMsMjUgKzUzLDI1
IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9h
ZChEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QodW5zaWduZWQgbG9uZywgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmKSBmaW5hbDsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZykgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZywgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKKyAgICB2b2lkIGFz
c2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICBib29s
IHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsK
ICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0
aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0aGVu
dGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNlJikgZmluYWw7CiAjZW5kaWYKIAog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4g
Y29ubmVjdGlvblByb3BlcnRpZXMoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBmaW5h
bDsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjZW5kaWYK
IAotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZywgaW50KSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGludCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1l
bnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOwogI2lmIEVOQUJMRShE
QVRBX0RFVEVDVElPTikKICAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihO
U0FycmF5ICopIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VFcnJvciYpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwogICAg
IGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgaW50
KSBmaW5hbDsKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpIGZp
bmFsOwpAQCAtMTgyLDExICsxODIsMTEgQEAgcHJpdmF0ZToKIAogI2lmIFBMQVRGT1JNKENPQ09B
KQogICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBmaW5h
bDsKLSAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZywgTlNDYWNoZWRVUkxSZXNwb25zZSAqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2Fj
aGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgd2lsbENhY2hlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVk
VVJMUmVzcG9uc2UgKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNl
ICopPiYmKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikK
LSAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2ln
bmVkIGxvbmcgbG9uZykgZmluYWw7CisgICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVkIGxvbmcgbG9uZykgZmluYWw7CiAj
ZW5kaWYKIAogICAgIFJlZjxGcmFtZU5ldHdvcmtpbmdDb250ZXh0PiBjcmVhdGVOZXR3b3JraW5n
Q29udGV4dCgpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1l
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXgg
MmE2ZTE2NmViMjI3ZTU2NGI4ODFlZDMxODliOGMxMTI1MTE0ZDFhNy4uMzMyNjNjODE1MDNmYjUz
NDljOWViYTQzZjdkZjIxMjc3ZDY2MjBiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXIuY3BwCkBAIC0xNjg5LDcgKzE2ODksNyBAQCBib29sIEZyYW1lTG9hZGVyOjp3aWxsTG9hZE1l
ZGlhRWxlbWVudFVSTChVUkwmIHVybCwgTm9kZSYgaW5pdGlhdG9yTm9kZSkKICAgICBSZXNvdXJj
ZVJlcXVlc3QgcmVxdWVzdCh1cmwpOwogICAgIHJlcXVlc3Quc2V0SW5zcGVjdG9ySW5pdGlhdG9y
Tm9kZUlkZW50aWZpZXIoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppZGVudGlmaWVyRm9yTm9k
ZShpbml0aWF0b3JOb2RlKSk7CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXI7CisgICAg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7CiAgICAgUmVzb3VyY2VFcnJvciBl
cnJvcjsKICAgICByZXF1ZXN0RnJvbURlbGVnYXRlKHJlcXVlc3QsIGlkZW50aWZpZXIsIGVycm9y
KTsKICAgICBub3RpZmllcigpLnNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2VzKG1fZG9jdW1l
bnRMb2FkZXIuZ2V0KCksIGlkZW50aWZpZXIsIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UodXJs
LCBTdHJpbmcoKSwgLTEsIFN0cmluZygpKSwgMCwgLTEsIC0xLCBlcnJvcik7CkBAIC0yMDY4LDcg
KzIwNjgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb21taXRQcm92aXNpb25hbExvYWQoKQogICAg
ICAgICAvLyBTdGFydCByZXF1ZXN0IGZvciB0aGUgbWFpbiByZXNvdXJjZSBhbmQgZGlzcGF0Y2gg
ZGlkUmVjZWl2ZVJlc3BvbnNlIGJlZm9yZSB0aGUgbG9hZCBpcyBjb21taXR0ZWQgZm9yCiAgICAg
ICAgIC8vIGNvbnNpc3RlbmN5IHdpdGggYWxsIG90aGVyIGxvYWRzLiBTZWUgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MDkyNy4KICAgICAgICAgUmVzb3VyY2VFcnJv
ciBtYWluUmVzb3VjZUVycm9yOwotICAgICAgICB1bnNpZ25lZCBsb25nIG1haW5SZXNvdXJjZUlk
ZW50aWZpZXI7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtYWluUmVzb3VyY2VJ
ZGVudGlmaWVyOwogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgbWFpblJlc291cmNlUmVxdWVzdChj
YWNoZWRQYWdlLT5kb2N1bWVudExvYWRlcigpLT5yZXF1ZXN0KCkpOwogICAgICAgICByZXF1ZXN0
RnJvbURlbGVnYXRlKG1haW5SZXNvdXJjZVJlcXVlc3QsIG1haW5SZXNvdXJjZUlkZW50aWZpZXIs
IG1haW5SZXNvdWNlRXJyb3IpOwogICAgICAgICBub3RpZmllcigpLmRpc3BhdGNoRGlkUmVjZWl2
ZVJlc3BvbnNlKGNhY2hlZFBhZ2UtPmRvY3VtZW50TG9hZGVyKCksIG1haW5SZXNvdXJjZUlkZW50
aWZpZXIsIGNhY2hlZFBhZ2UtPmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkpOwpAQCAtMjEz
Myw3ICsyMTMzLDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxMb2FkKCkK
ICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHJlc3BvbnNlID0gbV9kb2N1bWVudExvYWRlci0+cmVz
cG9uc2VzKClbaV07CiAgICAgICAgICAgICAvLyBGSVhNRTogSWYgdGhlIFdlYktpdCBjbGllbnQg
Y2hhbmdlcyBvciBjYW5jZWxzIHRoZSByZXF1ZXN0LCB0aGlzIGlzIG5vdCByZXNwZWN0ZWQuCiAg
ICAgICAgICAgICBSZXNvdXJjZUVycm9yIGVycm9yOwotICAgICAgICAgICAgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyOworICAgICAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXI7CiAgICAgICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChyZXNwb25zZS51cmwo
KSk7CiAgICAgICAgICAgICByZXF1ZXN0RnJvbURlbGVnYXRlKHJlcXVlc3QsIGlkZW50aWZpZXIs
IGVycm9yKTsKICAgICAgICAgICAgIC8vIEZJWE1FOiBJZiB3ZSBnZXQgYSByZXNvdXJjZSB3aXRo
IG1vcmUgdGhhbiAyQiBieXRlcywgdGhpcyBjb2RlIHdvbid0IGRvIHRoZSByaWdodCB0aGluZy4K
QEAgLTMxMDYsNyArMzEwNiw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRQb3N0UmVxdWVzdChG
cmFtZUxvYWRSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3QgU3RyaW5nJiByZWZlCiAgICAgfSk7CiB9
CiAKLXVuc2lnbmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHko
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNs
aWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29uc3Qg
SFRUUEhlYWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVycywgUmVzb3VyY2VFcnJvciYgZXJy
b3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZWZQdHI8U2hhcmVkQnVmZmVyPiYgZGF0
YSkKK1Jlc291cmNlTG9hZGVySWRlbnRpZmllciBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRp
YWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRp
b25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJj
ZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRC
dWZmZXI+JiBkYXRhKQogewogICAgIEFTU0VSVChtX2ZyYW1lLmRvY3VtZW50KCkpOwogICAgIFN0
cmluZyByZWZlcnJlciA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKG1f
ZnJhbWUuZG9jdW1lbnQoKS0+cmVmZXJyZXJQb2xpY3koKSwgcmVxdWVzdC51cmwoKSwgb3V0Z29p
bmdSZWZlcnJlcigpKTsKQEAgLTMxMjQsNyArMzEyNCw3IEBAIHVuc2lnbmVkIGxvbmcgRnJhbWVM
b2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1CiAKICAgICBhcHBseVVzZXJBZ2VudElmTmVlZGVkKGluaXRpYWxSZXF1ZXN0KTsKIAotICAg
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IDA7ICAgIAorICAgIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyOyAgICAKICAgICBSZXNvdXJjZVJlcXVlc3QgbmV3UmVxdWVzdChp
bml0aWFsUmVxdWVzdCk7CiAgICAgcmVxdWVzdEZyb21EZWxlZ2F0ZShuZXdSZXF1ZXN0LCBpZGVu
dGlmaWVyLCBlcnJvcik7CiAKQEAgLTM1ODcsMTMgKzM1ODcsMTMgQEAgdm9pZCBGcmFtZUxvYWRl
cjo6Y29udGludWVMb2FkQWZ0ZXJOZXdXaW5kb3dQb2xpY3koY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXMKICAgICBtYWluRnJhbWUtPmxvYWRlcigpLmxvYWRXaXRoTmF2aWdhdGlvbkFjdGlv
bihyZXF1ZXN0LCBXVEZNb3ZlKG5ld0FjdGlvbiksIEZyYW1lTG9hZFR5cGU6OlN0YW5kYXJkLCBm
b3JtU3RhdGUsIGFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTCk7CiB9CiAKLXZvaWQgRnJhbWVM
b2FkZXI6OnJlcXVlc3RGcm9tRGVsZWdhdGUoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCB1bnNp
Z25lZCBsb25nJiBpZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgRnJhbWVM
b2FkZXI6OnJlcXVlc3RGcm9tRGVsZWdhdGUoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXImIGlkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImIGVycm9yKQog
ewogICAgIEFTU0VSVCghcmVxdWVzdC5pc051bGwoKSk7CiAKLSAgICBpZGVudGlmaWVyID0gMDsK
KyAgICBpZGVudGlmaWVyID0geyB9OwogICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS5wYWdl
KCkpIHsKLSAgICAgICAgaWRlbnRpZmllciA9IHBhZ2UtPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVl
SWRlbnRpZmllcigpOworICAgICAgICBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyOjpnZW5lcmF0ZSgpOwogICAgICAgICBub3RpZmllcigpLmFzc2lnbklkZW50aWZpZXJUb0lu
aXRpYWxSZXF1ZXN0KGlkZW50aWZpZXIsIG1fZG9jdW1lbnRMb2FkZXIuZ2V0KCksIHJlcXVlc3Qp
OwogICAgIH0KIApAQCAtMzYzNCw3ICszNjM0LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZGVk
UmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoQ2FjaGVkUmVzb3VyY2UmIHJlc291cmNlLCBSZXNvdXIK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcjsK
KyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICByZXF1ZXN0RnJv
bURlbGVnYXRlKG5ld1JlcXVlc3QsIGlkZW50aWZpZXIsIGVycm9yKTsKIAogICAgIFJlc291cmNl
UmVzcG9uc2UgcmVzcG9uc2UgPSByZXNvdXJjZS5yZXNwb25zZSgpOwpAQCAtMzY1MSw3ICszNjUx
LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6YXBwbHlVc2VyQWdlbnRJZk5lZWRlZChSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QpCiAgICAgfQogfQogCi1ib29sIEZyYW1lTG9hZGVyOjpzaG91bGRJbnRl
cnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmIGNvbnRlbnQsIGNvbnN0IFVS
TCYgdXJsLCB1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyKQorYm9vbCBGcmFtZUxvYWRl
cjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiBjb250
ZW50LCBjb25zdCBVUkwmIHVybCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlcXVlc3RJZGVu
dGlmaWVyKQogewogICAgIEZyYW1lJiB0b3BGcmFtZSA9IG1fZnJhbWUudHJlZSgpLnRvcCgpOwog
ICAgIGlmICgmbV9mcmFtZSA9PSAmdG9wRnJhbWUpCkBAIC0zNjc1LDEwICszNjc1LDEwIEBAIGJv
b2wgRnJhbWVMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0
IFN0cmluZyYgY29udGVudCwgY29uCiAgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246
OkFsbG93QWxsOgogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgY2FzZSBYRnJhbWVPcHRpb25z
RGlzcG9zaXRpb246OkNvbmZsaWN0OgotICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENv
bnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiTXVs
dGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5nIHZhbHVlcyAo
JyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJp
bmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJhY2sgdG8gJ0RFTlkn
LiIsIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIk11
bHRpcGxlICdYLUZyYW1lLU9wdGlvbnMnIGhlYWRlcnMgd2l0aCBjb25mbGljdGluZyB2YWx1ZXMg
KCciICsgY29udGVudCArICInKSBlbmNvdW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIgKyB1cmwuc3Ry
aW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiJy4gRmFsbGluZyBiYWNrIHRvICdERU5Z
Jy4iLCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkludmFsaWQ6Ci0gICAgICAgIG1f
ZnJhbWUuZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1l
c3NhZ2VMZXZlbDo6RXJyb3IsICJJbnZhbGlkICdYLUZyYW1lLU9wdGlvbnMnIGhlYWRlciBlbmNv
dW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIgKyB1cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCkgKyAiJzogJyIgKyBjb250ZW50ICsgIicgaXMgbm90IGEgcmVjb2duaXplZCBkaXJlY3Rp
dmUuIFRoZSBoZWFkZXIgd2lsbCBiZSBpZ25vcmVkLiIsIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAg
ICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVh
ZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICInOiAnIiArIGNvbnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVk
IGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZp
ZXIudG9VSW50NjQoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBjYXNlIFhGcmFtZU9w
dGlvbnNEaXNwb3NpdGlvbjo6Tm9uZToKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCBmNzUyNDEwYTg5ZjU5MjcwMWM4NDFhNDJkNGFiZTQ0
YWQ3ODkyMzExLi5lNzQ3NWE0MjQ3ZTk5ZTZjNGI4NzgxYTk0MzIxNzViZWZiMmY0YjQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaApAQCAtMTI3LDcgKzEyNyw3IEBAIHB1YmxpYzoK
ICNpZiBFTkFCTEUoV0VCX0FSQ0hJVkUpIHx8IEVOQUJMRShNSFRNTCkKICAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIGxvYWRBcmNoaXZlKFJlZjxBcmNoaXZlPiYmKTsKICNlbmRpZgotICAgIHVuc2ln
bmVkIGxvbmcgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
LCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQ
SGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hh
cmVkQnVmZmVyPiYgZGF0YSk7CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGxvYWRSZXNv
dXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiwgY29uc3QgSFRUUEhlYWRlck1hcCYsIFJlc291
cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGRhdGEp
OwogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjaGFuZ2VMb2NhdGlvbihjb25zdCBVUkwmLCBj
b25zdCBTdHJpbmcmIHRhcmdldCwgRXZlbnQqLCBjb25zdCBSZWZlcnJlclBvbGljeSYsIFNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3ksIHN0ZDo6b3B0aW9uYWw8TmV3RnJhbWVPcGVuZXJQb2xp
Y3k+ID0gc3RkOjpudWxsb3B0LCBjb25zdCBBdG9tU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSA9
IG51bGxBdG9tKCksIGNvbnN0IFN5c3RlbVByZXZpZXdJbmZvJiA9IHsgfSwgc3RkOjpvcHRpb25h
bDxQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJiA9IHN0ZDo6bnVsbG9wdCk7CiAgICAgdm9pZCBj
aGFuZ2VMb2NhdGlvbihGcmFtZUxvYWRSZXF1ZXN0JiYsIEV2ZW50KiA9IG51bGxwdHIsIHN0ZDo6
b3B0aW9uYWw8UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ+JiYgPSBzdGQ6Om51bGxvcHQpOwpAQCAt
Mjc1LDcgKzI3NSw3IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHlVc2VyQWdlbnRJZk5lZWRl
ZChSZXNvdXJjZVJlcXVlc3QmKTsKIAotICAgIGJvb2wgc2hvdWxkSW50ZXJydXB0TG9hZEZvclhG
cmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiwgY29uc3QgVVJMJiwgdW5zaWduZWQgbG9uZyByZXF1
ZXN0SWRlbnRpZmllcik7CisgICAgYm9vbCBzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0
aW9ucyhjb25zdCBTdHJpbmcmLCBjb25zdCBVUkwmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
OwogCiAgICAgdm9pZCBjb21wbGV0ZWQoKTsKICAgICBib29sIGFsbEFuY2VzdG9yc0FyZUNvbXBs
ZXRlKCkgY29uc3Q7IC8vIGluY2x1ZGluZyB0aGlzCkBAIC0zODYsNyArMzg2LDcgQEAgcHJpdmF0
ZToKIAogICAgIGJvb2wgc2hvdWxkUmVsb2FkKGNvbnN0IFVSTCYgY3VycmVudFVSTCwgY29uc3Qg
VVJMJiBkZXN0aW5hdGlvblVSTCk7CiAKLSAgICB2b2lkIHJlcXVlc3RGcm9tRGVsZWdhdGUoUmVz
b3VyY2VSZXF1ZXN0JiwgdW5zaWduZWQgbG9uZyYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYp
OworICAgIHZvaWQgcmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXImLCBSZXNvdXJjZUVycm9yJik7CiAKICAgICBXRUJDT1JFX0VYUE9S
VCB2b2lkIGRldGFjaENoaWxkcmVuKCk7CiAgICAgdm9pZCBjbG9zZUFuZFJlbW92ZUNoaWxkKEZy
YW1lJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGll
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IDA0
YTEyZjdhOTMwMTVjY2Y0ZWUwNzNhZWUwNDA4MmNhODEyNjA3ZDAuLjRhNzA2Yzg3ZjU4YzhiMDgy
NGU4Y2ViMzYzYzYxNDdjMjdjZGMzNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSAiTGlua0ljb24uaCIKICNp
bmNsdWRlICJQYWdlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlZ2lzdHJhYmxlRG9tYWluLmgi
CisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL0V4
cGVjdGVkLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvV2FsbFRp
bWUuaD4KQEAgLTEzOCwyMyArMTM5LDIzIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZGV0
YWNoZWRGcm9tUGFyZW50MigpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoZWRGcm9tUGFy
ZW50MygpID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBhc3NpZ25JZGVudGlmaWVy
VG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGRpc3Bh
dGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpID0gMDsKKyAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIq
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgPSAw
OwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgdmlydHVhbCBi
b29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpID0gMDsK
KyAgICB2aXJ0dWFsIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlv
blNwYWNlJikgPSAwOwogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIHZp
cnR1YWwgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoRG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsKKyAgICB2aXJ0dWFs
IFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50
TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSA9IDA7CiAjZW5kaWYKIAotICAgIHZp
cnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNo
RGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlRXJyb3ImKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRj
aERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYp
ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5
Q2FjaGUoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0aCkgPSAwOwogCiAgICAgdmlydHVhbCB2b2lkIGRpc3Bh
dGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSA9IDA7CkBAIC0yOTgsMTMgKzI5OSwxMyBAQCBw
dWJsaWM6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgLy8gQWxsb3cgYW4gYWNjZXNzaWJpbGl0
eSBvYmplY3QgdG8gcmV0cmlldmUgYSBGcmFtZSBwYXJlbnQgaWYgdGhlcmUncyBubyBQbGF0Zm9y
bVdpZGdldC4KICAgICB2aXJ0dWFsIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1v
dGVPYmplY3QoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNl
KiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBjb25z
dCA9IDA7CisgICAgdmlydHVhbCB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVy
KiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBjb25zdCA9IDA7CiAg
ICAgdmlydHVhbCBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25Db250ZXh0KCkgeyByZXR1cm4g
bnVsbHB0cjsgfQogI2VuZGlmCiAKICNpZiBVU0UoQ0ZVUkxDT05ORUNUSU9OKQogICAgIC8vIEZJ
WE1FOiBXaW5kb3dzIHNob3VsZCB1c2Ugd2lsbENhY2hlUmVzcG9uc2UgLSA8aHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3MjU3Pi4KLSAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEsIHVu
c2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2Fj
aGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEsIHVuc2lnbmVk
IGxvbmcgbG9uZyBsZW5ndGgpID0gMDsKICNlbmRpZgogCiAgICAgdmlydHVhbCBib29sIHNob3Vs
ZEFsd2F5c1VzZVBsdWdpbkRvY3VtZW50KGNvbnN0IFN0cmluZyYgLyptaW1lVHlwZSovKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xv
YWRlclN0cmF0ZWd5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5j
cHAKaW5kZXggOGI1NTgxZGI0ZjI2NTkzMjRhN2I3ZWNlZWI3MjY0MTNiZmE0OTFlNC4uM2JjMTJl
YjBlMTc1Y2NmM2Y1OWU0MDBkOWVjOGMwMjFjZjUyODFkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvTG9hZGVyU3RyYXRlZ3kuY3BwCkBAIC00MSwxNyArNDEsMTcgQEAgdm9pZCBMb2FkZXJTdHJh
dGVneTo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFN1YnJlc291cmNlTG9h
ZGVyKj4mKQogewogfQogCi1SZXNvdXJjZVJlc3BvbnNlIExvYWRlclN0cmF0ZWd5OjpyZXNwb25z
ZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IC8qIHJlc291cmNlTG9hZElkZW50
aWZpZXIgKi8pCitSZXNvdXJjZVJlc3BvbnNlIExvYWRlclN0cmF0ZWd5OjpyZXNwb25zZUZyb21S
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBy
ZXR1cm4geyB9OwogfQogCi1OZXR3b3JrTG9hZE1ldHJpY3MgTG9hZGVyU3RyYXRlZ3k6Om5ldHdv
cmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VM
b2FkSWRlbnRpZmllciAqLykKK05ldHdvcmtMb2FkTWV0cmljcyBMb2FkZXJTdHJhdGVneTo6bmV0
d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpCiB7CiAgICAgcmV0dXJuIHsgfTsKIH0KIAotVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlv
bkluZm9ybWF0aW9uPiBMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9u
RnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VMb2FkSWRlbnRp
ZmllciAqLykKK1ZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gTG9hZGVyU3Ry
YXRlZ3k6OmludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlm
aWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4geyB9OwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaAppbmRleCBiMDE4YWYwNGQwNWNlM2FjMzhi
YjU3ZDhlNTBhN2IwNjNlZTUxNzMzLi5lMmVjZDFhZmMzNWJhNmQzMTIzODhjODI4ZWE0Y2UxZGRj
MjNhY2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3ku
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaApAQCAtMjksNiAr
MjksNyBAQAogI2luY2x1ZGUgIkxvYWRTY2hlZHVsaW5nTW9kZS5oIgogI2luY2x1ZGUgIlBhZ2VJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkUHJpb3JpdHkuaCIKKyNpbmNsdWRl
ICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9w
dGlvbnMuaCIKICNpbmNsdWRlICJTdG9yZWRDcmVkZW50aWFsc1BvbGljeS5oIgogI2luY2x1ZGUg
PHd0Zi9Gb3J3YXJkLmg+CkBAIC01OCw3ICs1OSw3IEBAIHN0cnVjdCBGZXRjaE9wdGlvbnM7CiBj
bGFzcyBXRUJDT1JFX0VYUE9SVCBMb2FkZXJTdHJhdGVneSB7CiBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIGxvYWRSZXNvdXJjZShGcmFtZSYsIENhY2hlZFJlc291cmNlJiwgUmVzb3VyY2VSZXF1
ZXN0JiYsIGNvbnN0IFJlc291cmNlTG9hZGVyT3B0aW9ucyYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoUmVmUHRyPFN1YnJlc291cmNlTG9hZGVyPiYmKT4mJikgPSAwOwotICAgIHZpcnR1YWwgdm9p
ZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRDcmVkZW50aWFsUG9saWN5
LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJv
ciYsIFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQ2xpZW50Q3JlZGVu
dGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiwgY29uc3QgSFRUUEhlYWRlck1hcCYsIFJl
c291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKSA9
IDA7CiAgICAgdmlydHVhbCB2b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFBhZ2UmKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQoRnJhbWUmKSA9IDA7CiAKQEAgLTg4
LDE0ICs4OSwxNCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNob3VsZFBlcmZvcm1TZWN1
cml0eUNoZWNrcygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIGhh
dmVQZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KIAotICAgIHZpcnR1YWwgUmVzb3VyY2VSZXNwb25zZSByZXNwb25z
ZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZp
ZXIpOwotICAgIHZpcnR1YWwgVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBp
bnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50
NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKLSAgICB2aXJ0dWFsIE5ldHdvcmtMb2FkTWV0
cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJl
c291cmNlTG9hZElkZW50aWZpZXIpOworICAgIHZpcnR1YWwgUmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7
CisgICAgdmlydHVhbCBWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGludGVy
bWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CisgICAgdmlydHVhbCBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29y
a01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpOwogCiAgICAgdmlydHVhbCB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQoQ2FjaGVkUmVz
b3VyY2UmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSA9IDA7CiAK
ICAgICAvLyBVc2VkIGZvciB0ZXN0aW5nIG9ubHkuCi0gICAgdmlydHVhbCBWZWN0b3I8dWludDY0
X3Q+IG9uZ29pbmdMb2FkcygpIGNvbnN0IHsgcmV0dXJuIHsgfTsgfQorICAgIHZpcnR1YWwgVmVj
dG9yPFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gb25nb2luZ0xvYWRzKCkgY29uc3QgeyByZXR1
cm4geyB9OyB9CiAKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIH5Mb2FkZXJTdHJhdGVneSgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwCmluZGV4IDNlYzNjNTE4Yzc4OGU1Y2MxZjVm
MTg4ZThjNzE1MzFmOTFkYjAzY2IuLjc5OGE1NGI1MGJjYzE2NTJjY2Y3YWU1OTJlMWJjNGNiZDYz
MzljODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKQEAgLTIwMCw3ICsyMDAs
NyBAQCB2b2lkIFBpbmdMb2FkZXI6OnNlbmRWaW9sYXRpb25SZXBvcnQoRnJhbWUmIGZyYW1lLCBj
b25zdCBVUkwmIHJlcG9ydFVSTCwgUmVmPEZvcgogCiB2b2lkIFBpbmdMb2FkZXI6OnN0YXJ0UGlu
Z0xvYWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEhUVFBIZWFkZXJN
YXAmJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBTaG91bGRGb2xsb3dSZWRpcmVjdHMgc2hvdWxk
Rm9sbG93UmVkaXJlY3RzLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uIHBvbGljeUNo
ZWNrLCBSZWZlcnJlclBvbGljeSByZWZlcnJlclBvbGljeSwgc3RkOjpvcHRpb25hbDxWaW9sYXRp
b25SZXBvcnRUeXBlPiB2aW9sYXRpb25SZXBvcnRUeXBlKQogewotICAgIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciA9IGZyYW1lLnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlm
aWVyKCk7CisgICAgYXV0byBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpn
ZW5lcmF0ZSgpOwogICAgIC8vIEZJWE1FOiBXaHkgYWN0aXZlRG9jdW1lbnRMb2FkZXI/IEkgd291
bGQgaGF2ZSBleHBlY3RlZCBkb2N1bWVudExvYWRlcigpLgogICAgIC8vIEl0IHNlZW1zIGxpa2Ug
dGhlIFBpbmdMb2FkZXIgc2hvdWxkIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgY3VycmVudAogICAg
IC8vIERvY3VtZW50IGluIHRoZSBGcmFtZSwgYnV0IHRoZSBhY3RpdmVEb2N1bWVudExvYWRlciB3
aWxsIGJlIGFzc29jaWF0ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5n
TG9hZGVyLmNwcC5vcmlnIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwLm9y
aWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uM2VjM2M1MThjNzg4ZTVjYzFmNWYxODhlOGM3MTUzMWY5MWRiMDNjYgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcC5v
cmlnCkBAIC0wLDAgKzEsMjg1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgUm9vcGVzaCBD
aGFuZGVyIChyb29wQHJvb3BjLm5ldCkKKyAqIENvcHlyaWdodCAoQykgMjAxNS0yMDE3IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICog
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IlBpbmdMb2FkZXIuaCIKKworI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlTG9hZGVyLmgiCisjaW5j
bHVkZSAiQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0LmgiCisjaW5jbHVkZSAiQ29udGVudFJ1bGVMaXN0
UmVzdWx0cy5oIgorI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgorI2luY2x1ZGUg
IkRvY3VtZW50LmgiCisjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNsdWRlICJGcmFtZUxvYWRlci5o
IgorI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSAiSFRUUEhlYWRlclZh
bHVlcy5oIgorI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgorI2luY2x1ZGUg
IkxvYWRlclN0cmF0ZWd5LmgiCisjaW5jbHVkZSAiTmV0d29ya0xvYWRNZXRyaWNzLmgiCisjaW5j
bHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlBsYXRmb3JtU3RyYXRlZ2llcy5oIgorI2luY2x1ZGUg
IlByb2dyZXNzVHJhY2tlci5oIgorI2luY2x1ZGUgIlJlcG9ydGluZ0VuZHBvaW50c0NhY2hlLmgi
CisjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgorI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlLmgi
CisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlJlc291cmNlUmVxdWVz
dC5oIgorI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKKyNpbmNsdWRlICJTZWN1cml0eU9y
aWdpbi5oIgorI2luY2x1ZGUgIlNlY3VyaXR5UG9saWN5LmgiCisjaW5jbHVkZSAiVXNlckNvbnRl
bnRDb250cm9sbGVyLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKKyNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQorCisvLyBSZXR1
cm5zIHRydWUgaWYgd2Ugc2hvdWxkIGJsb2NrIHRoZSBsb2FkLgorc3RhdGljIGJvb2wgcHJvY2Vz
c0NvbnRlbnRSdWxlTGlzdHNGb3JMb2FkKGNvbnN0IEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBPcHRpb25TZXQ8Q29udGVudEV4dGVuc2lvbnM6OlJlc291cmNlVHlwZT4g
cmVzb3VyY2VUeXBlKQoreworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gZnJhbWUubG9hZGVy
KCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgYXV0byogcGFnZSA9IGZyYW1lLnBhZ2UoKTsKKyAgICBpZiAoIXBh
Z2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBhdXRvIHJlc3VsdHMgPSBwYWdlLT51c2Vy
Q29udGVudFByb3ZpZGVyKCkucHJvY2Vzc0NvbnRlbnRSdWxlTGlzdHNGb3JMb2FkKCpwYWdlLCBy
ZXF1ZXN0LnVybCgpLCByZXNvdXJjZVR5cGUsICpkb2N1bWVudExvYWRlcik7CisgICAgYm9vbCBy
ZXN1bHQgPSByZXN1bHRzLnN1bW1hcnkuYmxvY2tlZExvYWQ7CisgICAgQ29udGVudEV4dGVuc2lv
bnM6OmFwcGx5UmVzdWx0c1RvUmVxdWVzdChXVEZNb3ZlKHJlc3VsdHMpLCBwYWdlLCByZXF1ZXN0
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisjZW5kaWYKKwordm9pZCBQaW5nTG9hZGVyOjps
b2FkSW1hZ2UoRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHVybCkKK3sKKyAgICBBU1NFUlQoZnJh
bWUuZG9jdW1lbnQoKSk7CisgICAgYXV0byYgZG9jdW1lbnQgPSAqZnJhbWUuZG9jdW1lbnQoKTsK
KworICAgIGlmICghZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKS5jYW5EaXNwbGF5KHVybCkpIHsK
KyAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZCgmZnJhbWUsIHVybC5z
dHJpbmcoKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIXBvcnRBbGxvd2Vk
KHVybCkpIHsKKyAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydEJsb2NrZWRMb2FkRmFpbGVkKGZy
YW1lLCB1cmwpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgUmVzb3VyY2VSZXF1ZXN0
IHJlcXVlc3QodXJsKTsKKyNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQorICAgIGlmIChw
cm9jZXNzQ29udGVudFJ1bGVMaXN0c0ZvckxvYWQoZnJhbWUsIHJlcXVlc3QsIENvbnRlbnRFeHRl
bnNpb25zOjpSZXNvdXJjZVR5cGU6OkltYWdlKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisK
KyAgICBkb2N1bWVudC5jb250ZW50U2VjdXJpdHlQb2xpY3koKS0+dXBncmFkZUluc2VjdXJlUmVx
dWVzdElmTmVlZGVkKHJlcXVlc3QsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1
ZXN0VHlwZTo6TG9hZCk7CisKKyAgICByZXF1ZXN0LnNldEhUVFBIZWFkZXJGaWVsZChIVFRQSGVh
ZGVyTmFtZTo6Q2FjaGVDb250cm9sLCBIVFRQSGVhZGVyVmFsdWVzOjptYXhBZ2UwKCkpOworCisg
ICAgSFRUUEhlYWRlck1hcCBvcmlnaW5hbFJlcXVlc3RIZWFkZXIgPSByZXF1ZXN0Lmh0dHBIZWFk
ZXJGaWVsZHMoKTsKKworICAgIFN0cmluZyByZWZlcnJlciA9IFNlY3VyaXR5UG9saWN5OjpnZW5l
cmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LnJlZmVycmVyUG9saWN5KCksIHJlcXVlc3QudXJs
KCksIGZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSk7CisgICAgaWYgKCFyZWZlcnJl
ci5pc0VtcHR5KCkpCisgICAgICAgIHJlcXVlc3Quc2V0SFRUUFJlZmVycmVyKHJlZmVycmVyKTsK
KyAgICBmcmFtZS5sb2FkZXIoKS51cGRhdGVSZXF1ZXN0QW5kQWRkRXh0cmFGaWVsZHMocmVxdWVz
dCwgSXNNYWluUmVzb3VyY2U6Ok5vKTsKKworICAgIHN0YXJ0UGluZ0xvYWQoZnJhbWUsIHJlcXVl
c3QsIFdURk1vdmUob3JpZ2luYWxSZXF1ZXN0SGVhZGVyKSwgU2hvdWxkRm9sbG93UmVkaXJlY3Rz
OjpZZXMsIENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hlY2ssIFJl
ZmVycmVyUG9saWN5OjpFbXB0eVN0cmluZyk7Cit9CisKKy8vIGh0dHA6Ly93d3cud2hhdHdnLm9y
Zy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL2xpbmtzLmh0bWwjaHlwZXJs
aW5rLWF1ZGl0aW5nCit2b2lkIFBpbmdMb2FkZXI6OnNlbmRQaW5nKEZyYW1lJiBmcmFtZSwgY29u
c3QgVVJMJiBwaW5nVVJMLCBjb25zdCBVUkwmIGRlc3RpbmF0aW9uVVJMKQoreworICAgIEFTU0VS
VChmcmFtZS5kb2N1bWVudCgpKTsKKworICAgIGlmICghcGluZ1VSTC5wcm90b2NvbElzSW5IVFRQ
RmFtaWx5KCkpCisgICAgICAgIHJldHVybjsKKworICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0
KHBpbmdVUkwpOworICAgIHJlcXVlc3Quc2V0UmVxdWVzdGVyKFJlc291cmNlUmVxdWVzdDo6UmVx
dWVzdGVyOjpQaW5nKTsKKworI2lmIEVOQUJMRShDT05URU5UX0VYVEVOU0lPTlMpCisgICAgaWYg
KHByb2Nlc3NDb250ZW50UnVsZUxpc3RzRm9yTG9hZChmcmFtZSwgcmVxdWVzdCwgQ29udGVudEV4
dGVuc2lvbnM6OlJlc291cmNlVHlwZTo6UGluZykpCisgICAgICAgIHJldHVybjsKKyNlbmRpZgor
CisgICAgYXV0byYgZG9jdW1lbnQgPSAqZnJhbWUuZG9jdW1lbnQoKTsKKyAgICBkb2N1bWVudC5j
b250ZW50U2VjdXJpdHlQb2xpY3koKS0+dXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKHJl
cXVlc3QsIENvbnRlbnRTZWN1cml0eVBvbGljeTo6SW5zZWN1cmVSZXF1ZXN0VHlwZTo6TG9hZCk7
CisKKyAgICByZXF1ZXN0LnNldEhUVFBNZXRob2QoIlBPU1QiKTsKKyAgICByZXF1ZXN0LnNldEhU
VFBDb250ZW50VHlwZSgidGV4dC9waW5nIik7CisgICAgcmVxdWVzdC5zZXRIVFRQQm9keShGb3Jt
RGF0YTo6Y3JlYXRlKCJQSU5HIikpOworICAgIHJlcXVlc3Quc2V0SFRUUEhlYWRlckZpZWxkKEhU
VFBIZWFkZXJOYW1lOjpDYWNoZUNvbnRyb2wsIEhUVFBIZWFkZXJWYWx1ZXM6Om1heEFnZTAoKSk7
CisKKyAgICBIVFRQSGVhZGVyTWFwIG9yaWdpbmFsUmVxdWVzdEhlYWRlciA9IHJlcXVlc3QuaHR0
cEhlYWRlckZpZWxkcygpOworCisgICAgYXV0byYgc291cmNlT3JpZ2luID0gZG9jdW1lbnQuc2Vj
dXJpdHlPcmlnaW4oKTsKKyAgICBGcmFtZUxvYWRlcjo6YWRkSFRUUE9yaWdpbklmTmVlZGVkKHJl
cXVlc3QsIFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZU9yaWdpbkhlYWRlcihkb2N1bWVudC5yZWZl
cnJlclBvbGljeSgpLCByZXF1ZXN0LnVybCgpLCBzb3VyY2VPcmlnaW4pKTsKKworICAgIGZyYW1l
LmxvYWRlcigpLnVwZGF0ZVJlcXVlc3RBbmRBZGRFeHRyYUZpZWxkcyhyZXF1ZXN0LCBJc01haW5S
ZXNvdXJjZTo6Tm8pOworICAgIHJlcXVlc3Quc2V0SFRUUEhlYWRlckZpZWxkKEhUVFBIZWFkZXJO
YW1lOjpQaW5nVG8sIGRlc3RpbmF0aW9uVVJMLnN0cmluZygpKTsKKyAgICBpZiAoIVNlY3VyaXR5
UG9saWN5OjpzaG91bGRIaWRlUmVmZXJyZXIocGluZ1VSTCwgZnJhbWUubG9hZGVyKCkub3V0Z29p
bmdSZWZlcnJlcigpKSkKKyAgICAgICAgcmVxdWVzdC5zZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhl
YWRlck5hbWU6OlBpbmdGcm9tLCBkb2N1bWVudC51cmwoKS5zdHJpbmcoKSk7CisKKyAgICBzdGFy
dFBpbmdMb2FkKGZyYW1lLCByZXF1ZXN0LCBXVEZNb3ZlKG9yaWdpbmFsUmVxdWVzdEhlYWRlciks
IFNob3VsZEZvbGxvd1JlZGlyZWN0czo6WWVzLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0
aW9uOjpEb1BvbGljeUNoZWNrLCBSZWZlcnJlclBvbGljeTo6Tm9SZWZlcnJlcik7Cit9CisKK3Zv
aWQgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYgZnJhbWUsIGNvbnN0IFVS
TCYgcmVwb3J0VVJMLCBSZWY8Rm9ybURhdGE+JiYgcmVwb3J0LCBWaW9sYXRpb25SZXBvcnRUeXBl
IHJlcG9ydFR5cGUpCit7CisgICAgQVNTRVJUKGZyYW1lLmRvY3VtZW50KCkpOworCisgICAgUmVz
b3VyY2VSZXF1ZXN0IHJlcXVlc3QocmVwb3J0VVJMKTsKKyNpZiBFTkFCTEUoQ09OVEVOVF9FWFRF
TlNJT05TKQorICAgIGlmIChwcm9jZXNzQ29udGVudFJ1bGVMaXN0c0ZvckxvYWQoZnJhbWUsIHJl
cXVlc3QsIENvbnRlbnRFeHRlbnNpb25zOjpSZXNvdXJjZVR5cGU6Ok90aGVyKSkKKyAgICAgICAg
cmV0dXJuOworI2VuZGlmCisKKyAgICBhdXRvJiBkb2N1bWVudCA9ICpmcmFtZS5kb2N1bWVudCgp
OworICAgIGRvY3VtZW50LmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51cGdyYWRlSW5zZWN1cmVS
ZXF1ZXN0SWZOZWVkZWQocmVxdWVzdCwgQ29udGVudFNlY3VyaXR5UG9saWN5OjpJbnNlY3VyZVJl
cXVlc3RUeXBlOjpMb2FkKTsKKworICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgiUE9TVCJfcyk7
CisgICAgcmVxdWVzdC5zZXRIVFRQQm9keShXVEZNb3ZlKHJlcG9ydCkpOworICAgIHN3aXRjaCAo
cmVwb3J0VHlwZSkgeworICAgIGNhc2UgVmlvbGF0aW9uUmVwb3J0VHlwZTo6Q29udGVudFNlY3Vy
aXR5UG9saWN5OgorICAgICAgICByZXF1ZXN0LnNldEhUVFBDb250ZW50VHlwZSgiYXBwbGljYXRp
b24vY3NwLXJlcG9ydCJfcyk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVmlvbGF0aW9uUmVw
b3J0VHlwZTo6WFNTQXVkaXRvcjoKKyAgICAgICAgcmVxdWVzdC5zZXRIVFRQQ29udGVudFR5cGUo
ImFwcGxpY2F0aW9uL2pzb24iX3MpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFZpb2xhdGlv
blJlcG9ydFR5cGU6OlN0YW5kYXJkUmVwb3J0aW5nQVBJVmlvbGF0aW9uOgorICAgICAgICByZXF1
ZXN0LnNldEhUVFBDb250ZW50VHlwZSgiYXBwbGljYXRpb24vcmVwb3J0cytqc29uIl9zKTsKKyAg
ICAgICAgYnJlYWs7CisgICAgfQorCisgICAgYm9vbCByZW1vdmVDb29raWVzID0gdHJ1ZTsKKyAg
ICBpZiAoZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKS5pc1NhbWVTY2hlbWVIb3N0UG9ydChTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKHJlcG9ydFVSTCkuZ2V0KCkpKQorICAgICAgICByZW1vdmVDb29r
aWVzID0gZmFsc2U7CisgICAgaWYgKHJlbW92ZUNvb2tpZXMpCisgICAgICAgIHJlcXVlc3Quc2V0
QWxsb3dDb29raWVzKGZhbHNlKTsKKworICAgIEhUVFBIZWFkZXJNYXAgb3JpZ2luYWxSZXF1ZXN0
SGVhZGVyID0gcmVxdWVzdC5odHRwSGVhZGVyRmllbGRzKCk7CisKKyAgICBpZiAocmVwb3J0VHlw
ZSAhPSBWaW9sYXRpb25SZXBvcnRUeXBlOjpTdGFuZGFyZFJlcG9ydGluZ0FQSVZpb2xhdGlvbikK
KyAgICAgICAgZnJhbWUubG9hZGVyKCkudXBkYXRlUmVxdWVzdEFuZEFkZEV4dHJhRmllbGRzKHJl
cXVlc3QsIElzTWFpblJlc291cmNlOjpObyk7CisKKyAgICBTdHJpbmcgcmVmZXJyZXIgPSBTZWN1
cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJlckhlYWRlcihkb2N1bWVudC5yZWZlcnJlclBvbGlj
eSgpLCByZXBvcnRVUkwsIGZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSk7CisgICAg
aWYgKCFyZWZlcnJlci5pc0VtcHR5KCkpCisgICAgICAgIHJlcXVlc3Quc2V0SFRUUFJlZmVycmVy
KHJlZmVycmVyKTsKKworICAgIHN0YXJ0UGluZ0xvYWQoZnJhbWUsIHJlcXVlc3QsIFdURk1vdmUo
b3JpZ2luYWxSZXF1ZXN0SGVhZGVyKSwgU2hvdWxkRm9sbG93UmVkaXJlY3RzOjpObywgQ29udGVu
dFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbjo6U2tpcFBvbGljeUNoZWNrLCBSZWZlcnJlclBvbGlj
eTo6RW1wdHlTdHJpbmcsIHJlcG9ydFR5cGUpOworfQorCit2b2lkIFBpbmdMb2FkZXI6OnN0YXJ0
UGluZ0xvYWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEhUVFBIZWFk
ZXJNYXAmJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBTaG91bGRGb2xsb3dSZWRpcmVjdHMgc2hv
dWxkRm9sbG93UmVkaXJlY3RzLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uIHBvbGlj
eUNoZWNrLCBSZWZlcnJlclBvbGljeSByZWZlcnJlclBvbGljeSwgc3RkOjpvcHRpb25hbDxWaW9s
YXRpb25SZXBvcnRUeXBlPiB2aW9sYXRpb25SZXBvcnRUeXBlKQoreworICAgIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciA9IGZyYW1lLnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVu
dGlmaWVyKCk7CisgICAgLy8gRklYTUU6IFdoeSBhY3RpdmVEb2N1bWVudExvYWRlcj8gSSB3b3Vs
ZCBoYXZlIGV4cGVjdGVkIGRvY3VtZW50TG9hZGVyKCkuCisgICAgLy8gSXQgc2VlbXMgbGlrZSB0
aGUgUGluZ0xvYWRlciBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50CisgICAg
Ly8gRG9jdW1lbnQgaW4gdGhlIEZyYW1lLCBidXQgdGhlIGFjdGl2ZURvY3VtZW50TG9hZGVyIHdp
bGwgYmUgYXNzb2NpYXRlZAorICAgIC8vIHdpdGggdGhlIHByb3Zpc2lvbmFsIERvY3VtZW50TG9h
ZGVyIGlmIHRoZXJlIGlzIGEgcHJvdmlzaW9uYWwKKyAgICAvLyBEb2N1bWVudExvYWRlci4KKyAg
ICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlID0gZnJhbWUubG9hZGVyKCkuY2xpZW50
KCkuc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoZnJhbWUubG9hZGVyKCkuYWN0aXZlRG9jdW1l
bnRMb2FkZXIoKSwgaWRlbnRpZmllcik7CisgICAgUmVzb3VyY2VMb2FkZXJPcHRpb25zIG9wdGlv
bnM7CisgICAgb3B0aW9ucy5jcmVkZW50aWFscyA9IHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
ID8gRmV0Y2hPcHRpb25zOjpDcmVkZW50aWFsczo6SW5jbHVkZSA6IEZldGNoT3B0aW9uczo6Q3Jl
ZGVudGlhbHM6Ok9taXQ7CisgICAgb3B0aW9ucy5yZWRpcmVjdCA9IHNob3VsZEZvbGxvd1JlZGly
ZWN0cyA9PSBTaG91bGRGb2xsb3dSZWRpcmVjdHM6OlllcyA/IEZldGNoT3B0aW9uczo6UmVkaXJl
Y3Q6OkZvbGxvdyA6IEZldGNoT3B0aW9uczo6UmVkaXJlY3Q6OkVycm9yOworICAgIG9wdGlvbnMu
a2VlcEFsaXZlID0gdHJ1ZTsKKyAgICBvcHRpb25zLmNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9z
aXRpb24gPSBwb2xpY3lDaGVjazsKKyAgICBvcHRpb25zLnJlZmVycmVyUG9saWN5ID0gcmVmZXJy
ZXJQb2xpY3k7CisgICAgb3B0aW9ucy5zZW5kTG9hZENhbGxiYWNrcyA9IFNlbmRDYWxsYmFja1Bv
bGljeTo6U2VuZENhbGxiYWNrczsKKyAgICBvcHRpb25zLmNhY2hlID0gRmV0Y2hPcHRpb25zOjpD
YWNoZTo6Tm9DYWNoZTsKKworICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9yZXBvcnRpbmcv
I3RyeS1kZWxpdmVyeQorICAgIGlmICh2aW9sYXRpb25SZXBvcnRUeXBlID09IFZpb2xhdGlvblJl
cG9ydFR5cGU6OlN0YW5kYXJkUmVwb3J0aW5nQVBJVmlvbGF0aW9uKSB7CisgICAgICAgIG9wdGlv
bnMuY3JlZGVudGlhbHMgPSBGZXRjaE9wdGlvbnM6OkNyZWRlbnRpYWxzOjpTYW1lT3JpZ2luOwor
ICAgICAgICBvcHRpb25zLm1vZGUgPSBGZXRjaE9wdGlvbnM6Ok1vZGU6OkNvcnM7CisgICAgICAg
IG9wdGlvbnMuc2VydmljZVdvcmtlcnNNb2RlID0gU2VydmljZVdvcmtlcnNNb2RlOjpOb25lOwor
ICAgICAgICBvcHRpb25zLmRlc3RpbmF0aW9uID0gRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6
UmVwb3J0OworICAgIH0KKworICAgIC8vIEZJWE1FOiBEZXByZWNhdGUgdGhlIHBpbmcgbG9hZCBj
b2RlIHBhdGguCisgICAgaWYgKHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgp
LT51c2VQaW5nTG9hZCgpKSB7CisgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2ls
bFNlbmRSZXF1ZXN0T2ZUeXBlKCZmcmFtZSwgaWRlbnRpZmllciwgZnJhbWUubG9hZGVyKCkuYWN0
aXZlRG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpM
b2FkVHlwZTo6UGluZyk7CisKKyAgICAgICAgcGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0
cmF0ZWd5KCktPnN0YXJ0UGluZ0xvYWQoZnJhbWUsIHJlcXVlc3QsIFdURk1vdmUob3JpZ2luYWxS
ZXF1ZXN0SGVhZGVycyksIG9wdGlvbnMsIHBvbGljeUNoZWNrLCBbcHJvdGVjdGVkRnJhbWUgPSBt
YWtlUmVmKGZyYW1lKSwgaWRlbnRpZmllcl0gKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgeworICAgICAgICAgICAgaWYgKCFyZXNw
b25zZS5pc051bGwoKSkKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKHByb3RlY3RlZEZyYW1lLCBpZGVudGlmaWVyLCBw
cm90ZWN0ZWRGcmFtZS0+bG9hZGVyKCkuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKSwgcmVzcG9uc2Us
IG51bGxwdHIpOworICAgICAgICAgICAgaWYgKCFlcnJvci5pc051bGwoKSkgeworICAgICAgICAg
ICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcocHJvdGVjdGVk
RnJhbWUucHRyKCksIHByb3RlY3RlZEZyYW1lLT5sb2FkZXIoKS5hY3RpdmVEb2N1bWVudExvYWRl
cigpLCBpZGVudGlmaWVyLCBlcnJvcik7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hM
b2FkaW5nKHByb3RlY3RlZEZyYW1lLnB0cigpLCBwcm90ZWN0ZWRGcmFtZS0+bG9hZGVyKCkuYWN0
aXZlRG9jdW1lbnRMb2FkZXIoKSwgaWRlbnRpZmllciwgeyB9LCBudWxscHRyKTsKKyAgICAgICAg
fSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3Qg
Y2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHsgUmVzb3VyY2VSZXF1ZXN0IHsgcmVxdWVzdCB9LCBvcHRp
b25zIH07CisgICAgZnJhbWUuZG9jdW1lbnQoKS0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1
ZXN0UGluZ1Jlc291cmNlKFdURk1vdmUoY2FjaGVkUmVzb3VyY2VSZXF1ZXN0KSk7Cit9CisKKy8v
IC8vIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL29yaWdpbi5odG1sI3Nh
bml0aXplLXVybC1yZXBvcnQKK1N0cmluZyBQaW5nTG9hZGVyOjpzYW5pdGl6ZVVSTEZvclJlcG9y
dChjb25zdCBVUkwmIHVybCkKK3sKKyAgICBVUkwgc2FuaXRpemVkVVJMID0gdXJsOworICAgIHNh
bml0aXplZFVSTC5yZW1vdmVDcmVkZW50aWFscygpOworICAgIHNhbml0aXplZFVSTC5yZW1vdmVG
cmFnbWVudElkZW50aWZpZXIoKTsKKyAgICByZXR1cm4gc2FuaXRpemVkVVJMLnN0cmluZygpOwor
fQorCisvLyBodHRwczovL3d3dy53My5vcmcvVFIvcmVwb3J0aW5nLyN0cnktZGVsaXZlcnkKK3Zv
aWQgUGluZ0xvYWRlcjo6c2VuZFJlcG9ydFRvRW5kcG9pbnQoRnJhbWUmIGZyYW1lLCBjb25zdCBT
ZWN1cml0eU9yaWdpbkRhdGEmIG9yaWdpbiwgY29uc3QgU3RyaW5nJiBlbmRwb2ludCwgY29uc3Qg
U3RyaW5nJiB0eXBlLCBjb25zdCBVUkwmIHJlcG9ydFVSTCwgY29uc3QgU3RyaW5nJiB1c2VyQWdl
bnQsIGNvbnN0IEZ1bmN0aW9uPHZvaWQoSlNPTjo6T2JqZWN0Jik+JiBwb3B1bGF0ZVJlcG9ydEJv
ZHkpCit7CisgICAgQVNTRVJUKCFlbmRwb2ludC5pc0VtcHR5KCkpOworICAgIGF1dG8gcmVwb3J0
aW5nRW5kcG9pbnRzQ2FjaGUgPSBmcmFtZS5wYWdlKCkgPyBmcmFtZS5wYWdlKCktPnJlcG9ydGlu
Z0VuZHBvaW50c0NhY2hlKCkgOiBudWxscHRyOworICAgIGlmICghcmVwb3J0aW5nRW5kcG9pbnRz
Q2FjaGUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvIGVuZHBvaW50VVJMID0gcmVwb3J0aW5n
RW5kcG9pbnRzQ2FjaGUtPmVuZHBvaW50VVJMKG9yaWdpbiwgZW5kcG9pbnQpOworICAgIGlmICgh
ZW5kcG9pbnRVUkwuaXNWYWxpZCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIGJvZHkg
PSBKU09OOjpPYmplY3Q6OmNyZWF0ZSgpOworICAgIHBvcHVsYXRlUmVwb3J0Qm9keShib2R5KTsK
KworICAgIGF1dG8gcmVwb3J0T2JqZWN0ID0gSlNPTjo6T2JqZWN0OjpjcmVhdGUoKTsKKyAgICBy
ZXBvcnRPYmplY3QtPnNldFN0cmluZygidHlwZSJfcywgdHlwZSk7CisgICAgaWYgKHJlcG9ydFVS
TC5pc1ZhbGlkKCkpCisgICAgICAgIHJlcG9ydE9iamVjdC0+c2V0U3RyaW5nKCJ1cmwiX3MsIHJl
cG9ydFVSTC5zdHJpbmcoKSk7CisgICAgcmVwb3J0T2JqZWN0LT5zZXRTdHJpbmcoInVzZXJfYWdl
bnQiLCB1c2VyQWdlbnQpOworICAgIHJlcG9ydE9iamVjdC0+c2V0SW50ZWdlcigiYWdlIiwgMCk7
IC8vIFdlIGN1cnJlbnRseSBkbyBub3QgZGVsYXkgc2VuZGluZyB0aGUgcmVwb3J0cy4KKyAgICBy
ZXBvcnRPYmplY3QtPnNldE9iamVjdCgiYm9keSJfcywgV1RGTW92ZShib2R5KSk7CisKKyAgICBh
dXRvIHJlcG9ydExpc3QgPSBKU09OOjpBcnJheTo6Y3JlYXRlKCk7CisgICAgcmVwb3J0TGlzdC0+
cHVzaE9iamVjdChyZXBvcnRPYmplY3QpOworCisgICAgYXV0byByZXBvcnQgPSBGb3JtRGF0YTo6
Y3JlYXRlKHJlcG9ydExpc3QtPnRvSlNPTlN0cmluZygpLnV0ZjgoKSk7CisgICAgc2VuZFZpb2xh
dGlvblJlcG9ydChmcmFtZSwgZW5kcG9pbnRVUkwsIFdURk1vdmUocmVwb3J0KSwgVmlvbGF0aW9u
UmVwb3J0VHlwZTo6U3RhbmRhcmRSZXBvcnRpbmdBUElWaW9sYXRpb24pOworfQorCit9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jl
c3NUcmFja2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3Bw
CmluZGV4IDBkY2I0NzU1NmQwNDg3NDg3ODY1NmU0NTljOWJhYzlhZjY0ZGNmYmYuLmEyMTVkNmE5
YjQwMjJjOWU3NzU4OGU1ZmIwN2FmZjA0MmNjNDlhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Qcm9ncmVzc1RyYWNrZXIuY3BwCkBAIC0xODMsNyArMTgzLDcgQEAgdm9pZCBQcm9ncmVzc1Ry
YWNrZXI6OmZpbmFsUHJvZ3Jlc3NDb21wbGV0ZSgpCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpmcmFtZVN0b3BwZWRMb2FkaW5nKCpmcmFtZSk7CiB9CiAKLXZvaWQgUHJvZ3Jlc3NUcmFj
a2VyOjppbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVu
dFByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBMT0coUHJvZ3Jlc3MsICJQcm9ncmVzcyBp
bmNyZW1lbnRlZCAoJXApIC0gdmFsdWUgJWYsIHRyYWNrZWQgZnJhbWVzICVkLCBvcmlnaW5hdGlu
ZyBmcmFtZSAlcCIsIHRoaXMsIG1fcHJvZ3Jlc3NWYWx1ZSwgbV9udW1Qcm9ncmVzc1RyYWNrZWRG
cmFtZXMsIG1fb3JpZ2luYXRpbmdQcm9ncmVzc0ZyYW1lLmdldCgpKTsKIApAQCAtMjA2LDcgKzIw
Niw3IEBAIHZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlCiAgICAgaXRlbS0+ZXN0aW1hdGVkTGVuZ3Ro
ID0gZXN0aW1hdGVkTGVuZ3RoOwogfQogCi12b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50
UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVk
KQordm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVkKQogewogICAgIFBy
b2dyZXNzSXRlbSogaXRlbSA9IG1fcHJvZ3Jlc3NJdGVtcy5nZXQoaWRlbnRpZmllcik7CiAKQEAg
LTI2Niw3ICsyNjYsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3Mo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlcwogICAgIG1fY2xpZW50LT5k
aWRDaGFuZ2VFc3RpbWF0ZWRQcm9ncmVzcygpOwogfQogCi12b2lkIFByb2dyZXNzVHJhY2tlcjo6
Y29tcGxldGVQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFByb2dyZXNz
VHJhY2tlcjo6Y29tcGxldGVQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcikKIHsKICAgICBhdXRvIGl0ID0gbV9wcm9ncmVzc0l0ZW1zLmZpbmQoaWRlbnRpZmllcik7
CiAKQEAgLTI4NSw2ICsyODUsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6Y29tcGxldGVQcm9n
cmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiAKIHVuc2lnbmVkIGxvbmcgUHJvZ3Jlc3NU
cmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKCkKIHsKKyAgICAvLyBGSVhNRTogVXNlIGEg
c3Ryb25nbHkgdHlwZWQgaWRlbnRpZmllciBmb3Igd2Vic29ja2V0cyBhbmQgcmVtb3ZlIHRoaXMu
CiAgICAgcmV0dXJuICsrc191bmlxdWVJZGVudGlmaWVyOwogfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUHJvZ3Jlc3NUcmFja2VyLmgKaW5kZXggMzE5YjBjYzgxYjk5NDYxZDhkNWU4ZjUxOTI1ZjRl
YTcwNGMwNWVlZS4uOTNhNjhhOTlkZmE4N2U0YWQ3MTkzYjg4ZWMwODY2MjNlNmYwMjJhMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuaApAQCAtMjUsNiArMjUsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgog
I2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3
dGYvSGFzaE1hcC5oPgpAQCAtNTUsOSArNTYsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBwcm9ncmVz
c1N0YXJ0ZWQoRnJhbWUmKTsKICAgICB2b2lkIHByb2dyZXNzQ29tcGxldGVkKEZyYW1lJik7CiAK
LSAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgaW5jcmVtZW50UHJvZ3Jlc3ModW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVkKTsKLSAgICB2b2lkIGNv
bXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGluY3Jl
bWVudFByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYpOworICAgIHZvaWQgaW5jcmVtZW50UHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVkKTsKKyAgICB2b2lkIGNvbXBsZXRlUHJvZ3Jlc3Mo
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIGxvbmcgbG9uZyB0b3RhbFBhZ2VBbmRS
ZXNvdXJjZUJ5dGVzVG9Mb2FkKCkgY29uc3QgeyByZXR1cm4gbV90b3RhbFBhZ2VBbmRSZXNvdXJj
ZUJ5dGVzVG9Mb2FkOyB9CiAgICAgbG9uZyBsb25nIHRvdGFsQnl0ZXNSZWNlaXZlZCgpIGNvbnN0
IHsgcmV0dXJuIG1fdG90YWxCeXRlc1JlY2VpdmVkOyB9CkBAIC03NCw3ICs3NSw3IEBAIHByaXZh
dGU6CiAKICAgICBVbmlxdWVSZWY8UHJvZ3Jlc3NUcmFja2VyQ2xpZW50PiBtX2NsaWVudDsKICAg
ICBSZWZQdHI8RnJhbWU+IG1fb3JpZ2luYXRpbmdQcm9ncmVzc0ZyYW1lOwotICAgIEhhc2hNYXA8
dW5zaWduZWQgbG9uZywgc3RkOjp1bmlxdWVfcHRyPFByb2dyZXNzSXRlbT4+IG1fcHJvZ3Jlc3NJ
dGVtczsKKyAgICBIYXNoTWFwPFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgc3RkOjp1bmlxdWVf
cHRyPFByb2dyZXNzSXRlbT4+IG1fcHJvZ3Jlc3NJdGVtczsKICAgICBUaW1lciBtX3Byb2dyZXNz
SGVhcnRiZWF0VGltZXI7CiAKICAgICBsb25nIGxvbmcgbV90b3RhbFBhZ2VBbmRSZXNvdXJjZUJ5
dGVzVG9Mb2FkIHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZE5vdGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRO
b3RpZmllci5jcHAKaW5kZXggOWI3NmMwNTkwMmYzYzlmMjY0YzAwNzQyOGUzNmI5OGJlZjc0OTMy
ZS4uMTQ3YjQ1ZTA2NDM4MTIyN2IwNTIyMDY0NDE4NTIzYzA3OWY2NGQxNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBAIC01Niw3ICs1Niw3
IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShSZXNvdXJjZUxvYWRlciogbG9hCiAgICAgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKGxvYWRlci0+aWRlbnRpZmllcigpLCBsb2FkZXItPmRvY3VtZW50TG9hZGVyKCks
IGN1cnJlbnRXZWJDaGFsbGVuZ2UpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpk
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYg
Y3VycmVudFdlYkNoYWxsZW5nZSkKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UmIGN1cnJlbnRXZWJDaGFsbGVuZ2UpCiB7CiAgICAgbV9mcmFtZS5sb2FkZXIoKS5jbGllbnQo
KS5kaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShsb2FkZXIsIGlkZW50
aWZpZXIsIGN1cnJlbnRXZWJDaGFsbGVuZ2UpOwogfQpAQCAtMTA3LDcgKzEwNyw3IEBAIHZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpZEZhaWxUb0xvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRl
ciwgY29uc3QgUmVzb3VyY2VFCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWls
TG9hZGluZygmbV9mcmFtZSwgbG9hZGVyLT5kb2N1bWVudExvYWRlcigpLCBsb2FkZXItPmlkZW50
aWZpZXIoKSwgZXJyb3IpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjphc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgYm9vbCBwYWdlSXNQcm92
aXNpb25hbGx5TG9hZGluZyA9IGZhbHNlOwogICAgIGlmIChhdXRvKiBmcmFtZUxvYWRlciA9IGxv
YWRlciA/IGxvYWRlci0+ZnJhbWVMb2FkZXIoKSA6IG51bGxwdHIpCkBAIC0xMTksNyArMTE5LDcg
QEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJl
cXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICBtX2ZyYW1lLmxvYWRlcigpLmNsaWVudCgp
LmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRlciwgcmVx
dWVzdCk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoV2lsbFNlbmRS
ZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVj
dFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCit2b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRl
ciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNl
LCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAjaWYgVVNFKFFVSUNL
X0xPT0spCiAgICAgLy8gQWx3YXlzIGFsbG93IFF1aWNrTG9vay1nZW5lcmF0ZWQgVVJMcyBiYXNl
ZCBvbiB0aGUgcHJvdG9jb2wgc2NoZW1lLgpAQCAtMTUwLDcgKzE1MCw3IEBAIHZvaWQgUmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIHVuc2lnCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVl
c3QoJm1fZnJhbWUsIGlkZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25z
ZSwgY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHIsIFJlc291cmNlTG9hZGVy
KiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlk
UmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNvdXJjZUxv
YWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgLy8gTm90aWZ5aW5nIHRoZSBGcmFtZUxvYWRl
ckNsaWVudCBtYXkgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlc3Ryb3llZC4KICAgICBSZWY8RnJh
bWU+IHByb3RlY3QobV9mcmFtZSk7CkBAIC0xNTksNyArMTU5LDcgQEAgdm9pZCBSZXNvdXJjZUxv
YWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW4KICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJj
ZVJlc3BvbnNlKG1fZnJhbWUsIGlkZW50aWZpZXIsIGxvYWRlciwgciwgcmVzb3VyY2VMb2FkZXIp
OwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVEYXRh
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
dWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKK3Zv
aWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpCiB7
CiAgICAgLy8gTm90aWZ5aW5nIHRoZSBGcmFtZUxvYWRlckNsaWVudCBtYXkgY2F1c2UgdGhlIGZy
YW1lIHRvIGJlIGRlc3Ryb3llZC4KICAgICBSZWY8RnJhbWU+IHByb3RlY3QobV9mcmFtZSk7CkBA
IC0xNjgsNyArMTY4LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ24KICAgICBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhKCZtX2ZyYW1lLCBpZGVudGlmaWVyLCBkYXRh
LCBkYXRhTGVuZ3RoLCBlbmNvZGVkRGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVy
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0
d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVz
b3VyY2VMb2FkZXIpCiB7CiAgICAgLy8gTm90aWZ5aW5nIHRoZSBGcmFtZUxvYWRlckNsaWVudCBt
YXkgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlc3Ryb3llZC4KICAgICBSZWY8RnJhbWU+IHByb3Rl
Y3QobV9mcmFtZSk7CkBAIC0xNzcsNyArMTc3LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2kK
ICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoJm1fZnJhbWUs
IGxvYWRlciwgaWRlbnRpZmllciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7
CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmco
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNo
RGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIC8v
IE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBi
ZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTg2LDcg
KzE4Niw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmFpbExvYWRp
bmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZygmbV9mcmFtZSwgbG9hZGVyLCBpZGVudGlmaWVyLCBlcnJv
cik7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OnNlbmRSZW1haW5pbmdEZWxlZ2F0
ZU1lc3NhZ2VzKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNv
ZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFJlc291cmNl
TG9hZE5vdGlmaWVyOjpzZW5kUmVtYWluaW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRl
ciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
Y29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0
aCwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8gSWYgdGhlIHJlcXVlc3Qg
aXMgbnVsbCwgd2lsbFNlbmRSZXF1ZXN0IGNhbmNlbGxlZCB0aGUgbG9hZC4gV2Ugc2hvdWxkCiAg
ICAgLy8gb25seSBkaXNwYXRjaCBkaWRGYWlsTG9hZGluZyBpbiB0aGlzIGNhc2UuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oCmluZGV4IDFjYzQ2MzE5MmQ1
MjMyMTVmYzhmZTJmYWJhYzE4ODcyYTI5ZGYxMWIuLjRkYmQ0Y2M0OWQ2NTA0MjExODRlNjBjMjRk
ZDcxNGRjYmUwYmRiMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJj
ZUxvYWROb3RpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRO
b3RpZmllci5oCkBAIC0yOSw2ICsyOSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8b3B0aW9uYWw+CiAjaW5jbHVk
ZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKQEAgLTUwLDcgKzUxLDcgQEAgcHVibGljOgogICAgIGV4
cGxpY2l0IFJlc291cmNlTG9hZE5vdGlmaWVyKEZyYW1lJik7CiAKICAgICB2b2lkIGRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IEF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IEF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CisgICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNv
bnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CiAKICAgICB2b2lkIHdpbGxTZW5kUmVxdWVz
dChSZXNvdXJjZUxvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpOwogICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwpAQCAtNTgsMTggKzU5LDE4IEBA
IHB1YmxpYzoKICAgICB2b2lkIGRpZEZpbmlzaExvYWQoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2b2lkIGRpZEZhaWxUb0xvYWQoUmVzb3VyY2VMb2Fk
ZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1
ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBD
YWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmLCBSZXNvdXJjZUxvYWRlciogPSBudWxscHRyKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
UmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgp
OwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJj
ZUxvYWRlciopOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOworICAgIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CisgICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVyKiA9IG51bGxwdHIp
OworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciosIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgs
IGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRp
bmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZUVycm9yJik7CiAKLSAgICB2b2lkIHNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3Nh
Z2VzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdWludDhfdCogZGF0
YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VF
cnJvciYpOworICAgIHZvaWQgc2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxl
bmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKIHBy
aXZhdGU6CiAgICAgRnJhbWUmIG1fZnJhbWU7Ci0gICAgc3RkOjpvcHRpb25hbDx1bnNpZ25lZCBs
b25nPiBtX2luaXRpYWxSZXF1ZXN0SWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFJlc291
cmNlTG9hZGVySWRlbnRpZmllcj4gbV9pbml0aWFsUmVxdWVzdElkZW50aWZpZXI7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
UmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVy
LmNwcAppbmRleCAzMGM2NTQ4NjVlZWZmODkwMjJiODA1OWVhNmY2MDdkM2I5MDYwNWUzLi4wYTBk
NDNlZDU3NTA0Y2Q4MTA1YWM4NmUwZjAzNWY2ODNjZDMyOTI4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTY3LDcgKzY3LDcgQEAKICN1bmRlZiBSRVNPVVJD
RUxPQURFUl9SRUxFQVNFX0xPRwogI2RlZmluZSBQQUdFX0lEICgoZnJhbWUoKSA/IGZyYW1lKCkt
PnBhZ2VJRCgpLnZhbHVlX29yKFBhZ2VJZGVudGlmaWVyKCkpIDogUGFnZUlkZW50aWZpZXIoKSku
dG9VSW50NjQoKSkKICNkZWZpbmUgRlJBTUVfSUQgKChmcmFtZSgpID8gZnJhbWUoKS0+ZnJhbWVJ
RCgpLnZhbHVlX29yKEZyYW1lSWRlbnRpZmllcigpKSA6IEZyYW1lSWRlbnRpZmllcigpKS50b1VJ
bnQ2NCgpKQotI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVM
RUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JWx1XSBSZXNvdXJjZUxvYWRlcjo6
IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlmaWVy
KCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZt
dCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbcGFnZUlEPSUiIFBSSXU2NCAiLCBm
cmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0lIiBQUkl1NjQg
Il0gUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwgZnJhbWVM
b2FkZXIoKSwgaWRlbnRpZmllcigpLnRvVUludDY0KCksICMjX19WQV9BUkdTX18pCiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIApAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6
OnJlbGVhc2VSZXNvdXJjZXMoKQogCiAgICAgZmluaXNoTmV0d29ya0xvYWQoKTsKIAotICAgIG1f
aWRlbnRpZmllciA9IDA7CisgICAgbV9pZGVudGlmaWVyID0geyB9OwogCiAgICAgbV9yZXNvdXJj
ZURhdGEgPSBudWxscHRyOwogICAgIG1fZGVmZXJyZWRSZXF1ZXN0ID0gUmVzb3VyY2VSZXF1ZXN0
KCk7CkBAIC0zNzMsNyArMzczLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6d2lsbFNlbmRSZXF1
ZXN0SW50ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3QgUmUKICAgICAvLyBX
ZSBuZWVkIGEgcmVzb3VyY2UgaWRlbnRpZmllciBmb3IgYWxsIHJlcXVlc3RzLCBldmVuIGlmIEZy
YW1lTG9hZGVyIGlzIG5ldmVyIGdvaW5nIHRvIHNlZSBpdCAoc3VjaCBhcyB3aXRoIENPUlMgcHJl
ZmxpZ2h0IHJlcXVlc3RzKS4KICAgICBib29sIGNyZWF0ZWRSZXNvdXJjZUlkZW50aWZpZXIgPSBm
YWxzZTsKICAgICBpZiAoIW1faWRlbnRpZmllcikgewotICAgICAgICBtX2lkZW50aWZpZXIgPSBt
X2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAg
ICAgICBtX2lkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7
CiAgICAgICAgIGNyZWF0ZWRSZXNvdXJjZUlkZW50aWZpZXIgPSB0cnVlOwogICAgIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaAppbmRleCA3YTRhMGQ3ZDdmNDY0NTM2YzJj
Njg4NWFmODM2OWRmMDY5NzViYjk1Li40ZmQyYmYwYmJiM2IxYmQyMTU0NWRiNTJjMmUxY2E2NGVl
NDJiOTE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaApAQCAtMzAsNiAr
MzAsNyBAQAogCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVDbGllbnQuaCIKICNpbmNsdWRlICJS
ZXNvdXJjZUxvYWRUaW1pbmcuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKICNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlclR5cGVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCkBAIC05MCw3ICs5
MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0RGVmZXJzTG9hZGluZyhib29sKTsK
ICAgICBib29sIGRlZmVyc0xvYWRpbmcoKSBjb25zdCB7IHJldHVybiBtX2RlZmVyc0xvYWRpbmc7
IH0KIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICBib29sIHdhc0F1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlQmxvY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fd2FzQXV0aGVudGljYXRpb25DaGFs
bGVuZ2VCbG9ja2VkOyB9CiAKQEAgLTIyOCw3ICsyMjksNyBAQCBwcml2YXRlOgogICAgIFJlc291
cmNlUmVxdWVzdCBtX29yaWdpbmFsUmVxdWVzdDsgLy8gQmVmb3JlIHJlZGlyZWN0cy4KICAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBtX3Jlc291cmNlRGF0YTsKICAgICAKLSAgICB1bnNpZ25lZCBs
b25nIG1faWRlbnRpZmllciB7IDAgfTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9p
ZGVudGlmaWVyOwogCiAgICAgYm9vbCBtX3JlYWNoZWRUZXJtaW5hbFN0YXRlIHsgZmFsc2UgfTsK
ICAgICBib29sIG1fbm90aWZpZWRMb2FkQ29tcGxldGUgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgy
N2UxNjA4OWI1ZjY1YzYyYjVkNmQxZmIwZjM0NzYzZTY3ZjYyYjcKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgKQEAgLTAs
MCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09i
amVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBSZXNvdXJj
ZUxvYWRlcjsKKwordXNpbmcgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRp
ZmllcjxSZXNvdXJjZUxvYWRlcj47CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDFhZDg0MGJjZGY3ZTFm
NjdkMjAyOGVlMGNlNzE4ZGMyMWNkYjQwZTEuLjYzYWFkM2NhNzNlZTkwMmVkYmJjNGUwZTYxY2Zh
ZjA4NTRmNDA0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJj
ZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVy
LmNwcApAQCAtNzUsOCArNzUsOCBAQAogI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNF
X0xPRyhmbXQsIC4uLikgVU5VU0VEX1ZBUklBQkxFKHRoaXMpCiAjZGVmaW5lIFNVQlJFU09VUkNF
TE9BREVSX1JFTEVBU0VfTE9HX0VSUk9SKGZtdCwgLi4uKSBVTlVTRURfVkFSSUFCTEUodGhpcykK
ICNlbHNlCi0jZGVmaW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBS
RUxFQVNFX0xPRyhSZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlEPSVsdV0gU3VicmVz
b3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIo
KSwgaWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19fKQotI2RlZmluZSBTVUJSRVNPVVJDRUxPQURF
Ul9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoUmVzb3VyY2VM
b2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBm
cmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0lbHVdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwg
dGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKSwgIyNf
X1ZBX0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAu
Li4pIFJFTEVBU0VfTE9HKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQg
IiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JSIgUFJJ
dTY0ICJdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQs
IGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19fKQor
I2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVM
RUFTRV9MT0dfRVJST1IoUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBSSXU2NCAi
LCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0lIiBQUkl1
NjQgIl0gU3VicmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwg
ZnJhbWVMb2FkZXIoKSwgaWRlbnRpZmllcigpLnRvVUludDY0KCksICMjX19WQV9BUkdTX18pCiAj
ZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTcyLDcgKzE3Miw3IEBAIHZvaWQgU3Vi
cmVzb3VyY2VMb2FkZXI6OmluaXQoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChiCiAgICAgICAgIH0KICAgICAgICAgQVNTRVJUKCFyZWFjaGVkVGVybWlu
YWxTdGF0ZSgpKTsKICAgICAgICAgbV9zdGF0ZSA9IEluaXRpYWxpemVkOwotICAgICAgICBtX2Rv
Y3VtZW50TG9hZGVyLT5hZGRTdWJyZXNvdXJjZUxvYWRlcih0aGlzKTsKKyAgICAgICAgbV9kb2N1
bWVudExvYWRlci0+YWRkU3VicmVzb3VyY2VMb2FkZXIoKnRoaXMpOwogICAgICAgICBtX29yaWdp
biA9IG1fcmVzb3VyY2UtPm9yaWdpbigpOwogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVl
KTsKICAgICB9KTsKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjp3
aWxsU2VuZFJlcXVlc3RJbnRlcm5hbChSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBjbwog
ICAgICAgICB9CiAKICAgICAgICAgUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVy
bmFsKFdURk1vdmUobmV3UmVxdWVzdCksIHJlZGlyZWN0UmVzcG9uc2UsIFt0aGlzLCBwcm90ZWN0
ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgcmVkaXJlY3RSZXNwb25zZV0gKFJlc291cmNlUmVxdWVz
dCYmIHJlcXVlc3QpIG11dGFibGUgewotICAgICAgICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJj
ZUxvYWRXaWxsU3RhcnQsIGlkZW50aWZpZXIoKSwgUEFHRV9JRCwgRlJBTUVfSUQpOworICAgICAg
ICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWRXaWxsU3RhcnQsIGlkZW50aWZpZXIoKS50
b1VJbnQ2NCgpLCBQQUdFX0lELCBGUkFNRV9JRCk7CiAKICAgICAgICAgICAgIGlmIChyZWFjaGVk
VGVybWluYWxTdGF0ZSgpKSB7CiAgICAgICAgICAgICAgICAgU1VCUkVTT1VSQ0VMT0FERVJfUkVM
RUFTRV9MT0coIndpbGxTZW5kUmVxdWVzdEludGVybmFsOiByZWFjaGVkIHRlcm1pbmFsIHN0YXRl
OyBjYWxsaW5nIGNvbXBsZXRpb24gaGFuZGxlciIpOwpAQCAtNDkxLDcgKzQ5MSw3IEBAIHZvaWQg
U3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgQ29tCiAgICAgICAgICAgICAvLyBTaW5jZSBhIHN1YnJlc291cmNlIGxv
YWRlciBkb2VzIG5vdCBsb2FkIG11bHRpcGFydCBzZWN0aW9ucyBwcm9ncmVzc2l2ZWx5LCBkYXRh
IHdhcyBkZWxpdmVyZWQgdG8gdGhlIGxvYWRlciBhbGwgYXQgb25jZS4KICAgICAgICAgICAgIC8v
IEFmdGVyIHRoZSBmaXJzdCBtdWx0aXBhcnQgc2VjdGlvbiBpcyBjb21wbGV0ZSwgc2lnbmFsIHRv
IGRlbGVnYXRlcyB0aGF0IHRoaXMgbG9hZCBpcyAiZmluaXNoZWQiCiAgICAgICAgICAgICBOZXR3
b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAgICAgICAgICAgbV9kb2N1bWVudExvYWRl
ci0+c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KHRoaXMpOworICAgICAg
ICAgICAgbV9kb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdP
bmVQYXJ0KCp0aGlzKTsKICAgICAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdPbmVQYXJ0KGVtcHR5
TWV0cmljcyk7CiAgICAgICAgIH0KIApAQCAtNzQ1LDcgKzc0NSw3IEBAIHZvaWQgU3VicmVzb3Vy
Y2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1lCiAgICAgfQogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAhPSBDYWNoZWRS
ZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50KFN1YnJlc291
cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2ludChTdWJyZXNv
dXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAgIG1fc3RhdGUg
PSBGaW5pc2hpbmc7CiAgICAgbV9yZXNvdXJjZS0+ZmluaXNoTG9hZGluZyhyZXNvdXJjZURhdGEo
KSwgbmV0d29ya0xvYWRNZXRyaWNzKTsKQEAgLTc5MSw3ICs3OTEsNyBAQCB2b2lkIFN1YnJlc291
cmNlTG9hZGVyOjpkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogICAgIG1fc3Rh
dGUgPSBGaW5pc2hpbmc7CiAKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgpICE9IENhY2hlZFJl
c291cmNlOjpUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3Vy
Y2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkpOworICAgICAgICB0cmFjZVBvaW50KFN1YnJlc291
cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpLnRvVUludDY0KCkpOwogCiAgICAgaWYgKG1fcmVz
b3VyY2UtPnJlc291cmNlVG9SZXZhbGlkYXRlKCkpCiAgICAgICAgIE1lbW9yeUNhY2hlOjpzaW5n
bGV0b24oKS5yZXZhbGlkYXRpb25GYWlsZWQoKm1fcmVzb3VyY2UpOwpAQCAtODQ0LDcgKzg0NCw3
IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZENhbmNlbChjb25zdCBSZXNvdXJjZUVycm9y
JikKICAgICBBU1NFUlQobV9yZXNvdXJjZSk7CiAKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgp
ICE9IENhY2hlZFJlc291cmNlOjpUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAgICAgIHRyYWNlUG9p
bnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkpOworICAgICAgICB0cmFjZVBv
aW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpLnRvVUludDY0KCkpOwogCiAg
ICAgbV9yZXNvdXJjZS0+Y2FuY2VsTG9hZCgpOwogICAgIG5vdGlmeURvbmUoTG9hZENvbXBsZXRp
b25UeXBlOjpDYW5jZWwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVh
ZGFibGVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50LmgKaW5kZXggNjI1YmI3ZWIyZTdiNTA3MWMxZDEyYzA3NTIzNmUxZmJlNmJlZWJh
Ny4uODRkNzliMGM5OWRmMTBkOTkzODBiODQ4MzE3MzcxYmMxZTg1NzNiZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxvYWRlckNsaWVudC5oCkBAIC0zMCwyNyArMzAs
MjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCIKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgUmVzb3VyY2VFcnJvcjsK
LSAgICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwotICAgIGNsYXNzIFJlc291cmNlVGltaW5nOwot
Ci0gICAgY2xhc3MgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7Ci0gICAgICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKFRocmVhZGFibGVMb2FkZXJDbGllbnQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRF
RDsKLSAgICBwdWJsaWM6Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25l
ZCBsb25nIGxvbmcgLypieXRlc1NlbnQqLywgdW5zaWduZWQgbG9uZyBsb25nIC8qdG90YWxCeXRl
c1RvQmVTZW50Ki8pIHsgfQotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9u
c2UodW5zaWduZWQgbG9uZyAvKmlkZW50aWZpZXIqLywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
IHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCos
IGludCAvKmRhdGFMZW5ndGgqLykgeyB9Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKHVuc2lnbmVkIGxvbmcgLyppZGVudGlmaWVyKi8pIHsgfQotICAgICAgICB2aXJ0dWFs
IHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikgeyB9Ci0gICAgICAgIHZpcnR1YWwg
dm9pZCBkaWRGaW5pc2hUaW1pbmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSB7IH0KLSAgICAgICAg
dmlydHVhbCB2b2lkIG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9
Ci0KLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIFRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRl
ZmF1bHQ7Ci0gICAgICAgIHZpcnR1YWwgflRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1
bHQ7Ci0gICAgfTsKK2NsYXNzIFJlc291cmNlRXJyb3I7CitjbGFzcyBSZXNvdXJjZVJlc3BvbnNl
OworY2xhc3MgUmVzb3VyY2VUaW1pbmc7CisKK2NsYXNzIFRocmVhZGFibGVMb2FkZXJDbGllbnQg
eworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFRocmVhZGFibGVMb2FkZXJDbGllbnQpOyBXVEZf
TUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZvaWQgZGlkU2VuZERh
dGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0ZXNTZW50Ki8sIHVuc2lnbmVkIGxvbmcgbG9uZyAv
KnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0KKworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZl
UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBp
bnQgLypkYXRhTGVuZ3RoKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEZhaWwo
Y29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hUaW1p
bmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5SXNE
b25lKGJvb2wpIHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IH0KKworcHJvdGVjdGVkOgorICAgIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1bHQ7CisgICAgdmlydHVhbCB+VGhyZWFkYWJs
ZUxvYWRlckNsaWVudCgpID0gZGVmYXVsdDsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyLmgKaW5kZXggOGVmZTM5Y2Y3Yjg1ZGQ5ZGQ0ZjhiNDA4YjRlYmM0OTEwMTkwMmFhNC4u
NDJhZTY0OTA5YTVlMGZlNDRjNmE1ZTAwNjBkNThjOTY0ZWM1NjA1MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmgKQEAg
LTYwLDcgKzYwLDcgQEAgcHVibGljOgogICAgICAgICAgICAgbV9jbGllbnQtPmRpZFNlbmREYXRh
KGJ5dGVzU2VudCwgdG90YWxCeXRlc1RvQmVTZW50KTsKICAgICB9CiAKLSAgICB2b2lkIGRpZFJl
Y2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlKQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkKICAgICB7CiAgICAgICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgICAgIG1fY2xpZW50LT5k
aWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgcmVzcG9uc2UpOwpAQCAtNzIsNyArNzIsNyBA
QCBwdWJsaWM6CiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZURhdGEoZGF0YSwgZGF0
YUxlbmd0aCk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgewogICAgICAgICBtX2RvbmUgPSB0cnVlOwogICAg
ICAgICBpZiAobV9jbGllbnQpCkBAIC05Miw3ICs5Miw3IEBAIHB1YmxpYzoKICAgICAgICAgICAg
IG1fY2xpZW50LT5kaWRGYWlsKGVycm9yKTsKICAgICB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVB
dXRoZW50aWNhdGlvbkNhbmNlbGxhdGlvbih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQorICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2FuY2VsbGF0aW9uKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAgICB7CiAgICAgICAgIGlmIChtX2Ns
aWVudCkKICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmll
ciwgcmVzcG9uc2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRo
cmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFi
bGVMb2FkZXIuY3BwCmluZGV4IDQ1OGI2ODliNzRiOTg0NTQzMmRiNGIwNWQ1NWM4NmU4YjBkMmI4
YjAuLjkzMTYxYzljYzU5ODQyNDU2NTM1MDNiZWQ1NjFkYzllYzFkYzc2YmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTExMyw3
ICsxMTMsNyBAQCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpNYWlu
VGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbgogICAgIDogbV93b3JrZXJDbGllbnRX
cmFwcGVyKCZ3b3JrZXJDbGllbnRXcmFwcGVyKQogICAgICwgbV9sb2FkZXJQcm94eShsb2FkZXJQ
cm94eSkKICAgICAsIG1fdGFza01vZGUodGFza01vZGUuaXNvbGF0ZWRDb3B5KCkpCi0gICAgLCBt
X3dvcmtlclJlcXVlc3RJZGVudGlmaWVyKGdsb2JhbFNjb3BlLmNyZWF0ZVVuaXF1ZUlkZW50aWZp
ZXIoKSkKKyAgICAsIG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIgeyBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI6OmdlbmVyYXRlKCkgfQogewogICAgIGF1dG8qIHNlY3VyaXR5T3JpZ2luID0gZ2xv
YmFsU2NvcGUuc2VjdXJpdHlPcmlnaW4oKTsKICAgICBhdXRvKiBjb250ZW50U2VjdXJpdHlQb2xp
Y3kgPSBnbG9iYWxTY29wZS5jb250ZW50U2VjdXJpdHlQb2xpY3koKTsKQEAgLTIyMCw3ICsyMjAs
NyBAQCB2b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZFNl
bmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieQogICAgIH0sIG1fdGFza01vZGUpOwogfQogCi12
b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQordm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdl
OjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIG1fbG9hZGVyUHJveHku
cG9zdFRhc2tGb3JNb2RlVG9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZShbcHJvdGVjdGVkV29y
a2VyQ2xpZW50V3JhcHBlciA9IG1ha2VSZWYoKm1fd29ya2VyQ2xpZW50V3JhcHBlciksIHdvcmtl
clJlcXVlc3RJZGVudGlmaWVyID0gbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllciwgaWRlbnRpZmll
ciwgcmVzcG9uc2VEYXRhID0gcmVzcG9uc2UuY3Jvc3NUaHJlYWREYXRhKCldIChTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBjb250ZXh0KSBtdXRhYmxlIHsKICAgICAgICAgQVNTRVJUKGNvbnRleHQu
aXNXb3JrZXJHbG9iYWxTY29wZSgpIHx8IGNvbnRleHQuaXNXb3JrbGV0R2xvYmFsU2NvcGUoKSk7
CkBAIC0yNDIsNyArMjQyLDcgQEAgdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhy
ZWFkQnJpZGdlOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXQKICAgICB9LCBtX3Rh
c2tNb2RlKTsKIH0KIAotdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJp
ZGdlOjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV29y
a2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkRmluaXNoTG9hZGluZyhS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX2xvYWRpbmdGaW5p
c2hlZCA9IHRydWU7CiAgICAgbV9sb2FkZXJQcm94eS5wb3N0VGFza0Zvck1vZGVUb1dvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlKFtwcm90ZWN0ZWRXb3JrZXJDbGllbnRXcmFwcGVyID0gbWFrZVJl
ZigqbV93b3JrZXJDbGllbnRXcmFwcGVyKSwgd29ya2VyUmVxdWVzdElkZW50aWZpZXIgPSBtX3dv
cmtlclJlcXVlc3RJZGVudGlmaWVyLCBuZXR3b3JrTG9hZE1ldHJpY3MgPSBtX25ldHdvcmtMb2Fk
TWV0cmljcy5pc29sYXRlZENvcHkoKSwgaWRlbnRpZmllcl0gKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQmIGNvbnRleHQpIG11dGFibGUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L1dvcmtlclRocmVhZGFibGVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJU
aHJlYWRhYmxlTG9hZGVyLmgKaW5kZXggNTc2MjYwZWE3ZjkzZWZmMjNiNGI0N2QxZWE4ZTA5MGNj
ZDViNDQ1Zi4uNzIzYjQ1NmVjOGU5ZTMwNmZjMThjYzhmMzZkZTZkY2Q4YWUzMDQ3MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5oCkBAIC0zMSw2
ICszMSw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk5ldHdvcmtMb2FkTWV0cmljcy5o
IgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlRocmVh
ZGFibGVMb2FkZXIuaCIKICNpbmNsdWRlICJUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCiAjaW5j
bHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIuaCIKQEAgLTM4LDEwMiArMzksMTAy
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIENvbnRlbnRTZWN1cml0eVBv
bGljeTsKLSAgICBjbGFzcyBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI7Ci0gICAgY2xhc3MgUmVz
b3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgU2VjdXJp
dHlPcmlnaW47Ci0gICAgY2xhc3MgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Ci0gICAgY2xh
c3MgV29ya2VyTG9hZGVyUHJveHk7Ci0KLSAgICBjbGFzcyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
IDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4sIHB1YmxpYyBUaHJl
YWRhYmxlTG9hZGVyIHsKLSAgICAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitjbGFzcyBD
b250ZW50U2VjdXJpdHlQb2xpY3k7CitjbGFzcyBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI7Citj
bGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OworY2xhc3MgU2VjdXJp
dHlPcmlnaW47CitjbGFzcyBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZTsKK2NsYXNzIFdvcmtl
ckxvYWRlclByb3h5OworCitjbGFzcyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIDogcHVibGljIFJl
ZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4sIHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVy
IHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBzdGF0aWMgdm9p
ZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwg
UmVzb3VyY2VSZXF1ZXN0JiYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmLCBjb25zdCBUaHJlYWRh
YmxlTG9hZGVyT3B0aW9ucyYpOworICAgIHN0YXRpYyBSZWY8V29ya2VyVGhyZWFkYWJsZUxvYWRl
cj4gY3JlYXRlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSwgVGhyZWFkYWJsZUxvYWRlckNsaWVudCYgY2xpZW50LCBjb25zdCBTdHJpbmcmIHRh
c2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBUaHJlYWRhYmxlTG9hZGVy
T3B0aW9ucyYgb3B0aW9ucywgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKKyAgICB7CisgICAgICAg
IHJldHVybiBhZG9wdFJlZigqbmV3IFdvcmtlclRocmVhZGFibGVMb2FkZXIoV29ya2VyT3JXb3Jr
bGV0R2xvYmFsU2NvcGUsIGNsaWVudCwgdGFza01vZGUsIFdURk1vdmUocmVxdWVzdCksIG9wdGlv
bnMsIHJlZmVycmVyKSk7CisgICAgfQorCisgICAgfldvcmtlclRocmVhZGFibGVMb2FkZXIoKTsK
KworICAgIHZvaWQgY2FuY2VsKCkgb3ZlcnJpZGU7CisKKyAgICBib29sIGRvbmUoKSBjb25zdCB7
IHJldHVybiBtX3dvcmtlckNsaWVudFdyYXBwZXItPmRvbmUoKTsgfQorCisgICAgdm9pZCBub3Rp
ZnlJc0RvbmUoYm9vbCBpc0RvbmUpOworCisgICAgdXNpbmcgUmVmQ291bnRlZDxXb3JrZXJUaHJl
YWRhYmxlTG9hZGVyPjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJs
ZUxvYWRlcj46OmRlcmVmOworCitwcm90ZWN0ZWQ6CisgICAgdm9pZCByZWZUaHJlYWRhYmxlTG9h
ZGVyKCkgb3ZlcnJpZGUgeyByZWYoKTsgfQorICAgIHZvaWQgZGVyZWZUaHJlYWRhYmxlTG9hZGVy
KCkgb3ZlcnJpZGUgeyBkZXJlZigpOyB9CisKK3ByaXZhdGU6CisgICAgLy8gQ3JlYXRlcyBhIGxv
YWRlciBvbiB0aGUgbWFpbiB0aHJlYWQgYW5kIGJyaWRnZXMgY29tbXVuaWNhdGlvbiBiZXR3ZWVu
CisgICAgLy8gdGhlIG1haW4gdGhyZWFkIGFuZCB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQg
d2hlcmUgV29ya2VyVGhyZWFkYWJsZUxvYWRlciBydW5zLgorICAgIC8vCisgICAgLy8gUmVnYXJk
aW5nIHRoZSBicmlkZ2UgYW5kIGxpZmV0aW1lcyBvZiBpdGVtcyB1c2VkIGluIGNhbGxiYWNrcywg
dGhlcmUgYXJlIGEgZmV3IGNhc2VzOgorICAgIC8vCisgICAgLy8gYWxsIGNhc2VzLiBBbGwgdGFz
a3MgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIGFyZSBvayBiZWNhdXNl
CisgICAgLy8gICAgdGhlIGxhc3QgdGFzayBwb3N0ZWQgYWx3YXlzIGlzICJtYWluVGhyZWFkRGVz
dHJveSIsIHNvIE1haW5UaHJlYWRCcmlkZ2UgaXMKKyAgICAvLyAgICBhcm91bmQgZm9yIGFsbCB0
YXNrcyB0aGF0IHVzZSBpdCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgLy8KKyAgICAvLyBjYXNl
IDEuIHdvcmtlci50ZXJtaW5hdGUgaXMgY2FsbGVkLgorICAgIC8vICAgIEluIHRoaXMgY2FzZSwg
bm8gbW9yZSB0YXNrcyBhcmUgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQg
dG8gdGhlIHdvcmtlcgorICAgIC8vICAgIGNvbnRleHQncyB0aHJlYWQgLS0gV29ya2VyT3JXb3Jr
bGV0R2xvYmFsU2NvcGVQcm94eSBpbXBsZW1lbnRhdGlvbiBlbmZvcmNlcyB0aGlzLgorICAgIC8v
CisgICAgLy8gY2FzZSAyLiB4aHIgZ2V0cyBhYm9ydGVkIGFuZCB0aGUgd29ya2VyIGNvbnRleHQg
Y29udGludWVzIHJ1bm5pbmcuCisgICAgLy8gICAgVGhlIFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyIGhhcyB0aGUgdW5kZXJseWluZyBjbGllbnQgY2xlYXJlZCwgc28gbm8gbW9yZSBjYWxs
cworICAgIC8vICAgIGdvIHRocm91Z2ggaXQuIEFsbCB0YXNrcyBwb3N0ZWQgZnJvbSB0aGUgd29y
a2VyIG9iamVjdCdzIHRocmVhZCB0byB0aGUgd29ya2VyIGNvbnRleHQncworICAgIC8vICAgIHRo
cmVhZCBjb250YWluIHRoZSBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG9i
amVjdCwgc28gdGhlCisgICAgLy8gICAgVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaW5z
dGFuY2UgaXMgdGhlcmUgdW50aWwgYWxsIHRhc2tzIGFyZSBleGVjdXRlZC4KKyAgICBjbGFzcyBN
YWluVGhyZWFkQnJpZGdlIDogcHVibGljIFRocmVhZGFibGVMb2FkZXJDbGllbnQgewogICAgIHB1
YmxpYzoKLSAgICAgICAgc3RhdGljIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXb3Jr
ZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlUmVxdWVzdCYmLCBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50JiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmKTsKLSAgICAgICAgc3Rh
dGljIFJlZjxXb3JrZXJUaHJlYWRhYmxlTG9hZGVyPiBjcmVhdGUoV29ya2VyT3JXb3JrbGV0R2xv
YmFsU2NvcGUmIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50JiBjbGllbnQsIGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVzdCYmIHJl
cXVlc3QsIGNvbnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJiBvcHRpb25zLCBjb25zdCBTdHJp
bmcmIHJlZmVycmVyKQotICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBjbGll
bnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zLCByZWZlcnJlcikpOwotICAg
ICAgICB9Ci0KLSAgICAgICAgfldvcmtlclRocmVhZGFibGVMb2FkZXIoKTsKLQotICAgICAgICB2
b2lkIGNhbmNlbCgpIG92ZXJyaWRlOwotCi0gICAgICAgIGJvb2wgZG9uZSgpIGNvbnN0IHsgcmV0
dXJuIG1fd29ya2VyQ2xpZW50V3JhcHBlci0+ZG9uZSgpOyB9CisgICAgICAgIC8vIEFsbCBleGVj
dXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCisgICAgICAgIE1haW5UaHJlYWRC
cmlkZ2UoVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXImLCBXb3JrZXJMb2FkZXJQcm94eSYs
IGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBUaHJlYWRh
YmxlTG9hZGVyT3B0aW9ucyYsIGNvbnN0IFN0cmluZyYgb3V0Z29pbmdSZWZlcnJlciwgV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGUmKTsKKyAgICAgICAgdm9pZCBjYW5jZWwoKTsKKyAgICAgICAg
dm9pZCBkZXN0cm95KCk7CisgICAgICAgIHZvaWQgY29tcHV0ZUlzRG9uZSgpOwogCi0gICAgICAg
IHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKTsKKyAgICBwcml2YXRlOgorICAgICAgICAv
LyBFeGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCisgICAgICAgIHZvaWQg
Y2xlYXJDbGllbnRXcmFwcGVyKCk7CisKKyAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRoZSBt
YWluIHRocmVhZC4KKyAgICAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcg
Ynl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVycmlk
ZTsKKyAgICAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlk
UmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCosIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKKyAg
ICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3Zl
cnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikgb3ZlcnJp
ZGU7CisgICAgICAgIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikg
b3ZlcnJpZGU7CisgICAgICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKSBmaW5hbDsK
KworICAgICAgICAvLyBPbmx5IHRvIGJlIHVzZWQgb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAg
ICBSZWZQdHI8RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyPiBtX21haW5UaHJlYWRMb2FkZXI7Cisg
ICAgICAgIGJvb2wgbV9sb2FkaW5nRmluaXNoZWQgeyBmYWxzZSB9OworCisgICAgICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGlzIHRvIGJlIHVzZWQgb24gdGhlIHdvcmtlciBj
b250ZXh0IHRocmVhZC4KKyAgICAgICAgLy8gVGhlIHJlZiBjb3VudGluZyBpcyBkb25lIG9uIGVp
dGhlciB0aHJlYWQuCisgICAgICAgIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBl
cj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOworCisgICAgICAgIC8vIE1heSBiZSB1c2VkIG9uIGVp
dGhlciB0aHJlYWQuCisgICAgICAgIFdvcmtlckxvYWRlclByb3h5JiBtX2xvYWRlclByb3h5Owor
CisgICAgICAgIC8vIEZvciB1c2Ugb24gdGhlIG1haW4gdGhyZWFkLgorICAgICAgICBTdHJpbmcg
bV90YXNrTW9kZTsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1fd29ya2VyUmVx
dWVzdElkZW50aWZpZXI7CisgICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBtX25ldHdvcmtMb2Fk
TWV0cmljczsKKyAgICB9OwogCi0gICAgICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFk
YWJsZUxvYWRlcj46OnJlZjsKLSAgICAgICAgdXNpbmcgUmVmQ291bnRlZDxXb3JrZXJUaHJlYWRh
YmxlTG9hZGVyPjo6ZGVyZWY7CisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldv
cmtsZXRHbG9iYWxTY29wZSYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmLCBjb25zdCBTdHJpbmcm
IHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlv
bnMmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKTsKIAotICAgIHByb3RlY3RlZDoKLSAgICAgICAg
dm9pZCByZWZUaHJlYWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyByZWYoKTsgfQotICAgICAgICB2
b2lkIGRlcmVmVGhyZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorICAgIHZv
aWQgY29tcHV0ZUlzRG9uZSgpIGZpbmFsOwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgLy8gQ3Jl
YXRlcyBhIGxvYWRlciBvbiB0aGUgbWFpbiB0aHJlYWQgYW5kIGJyaWRnZXMgY29tbXVuaWNhdGlv
biBiZXR3ZWVuCi0gICAgICAgIC8vIHRoZSBtYWluIHRocmVhZCBhbmQgdGhlIHdvcmtlciBjb250
ZXh0J3MgdGhyZWFkIHdoZXJlIFdvcmtlclRocmVhZGFibGVMb2FkZXIgcnVucy4KLSAgICAgICAg
Ly8KLSAgICAgICAgLy8gUmVnYXJkaW5nIHRoZSBicmlkZ2UgYW5kIGxpZmV0aW1lcyBvZiBpdGVt
cyB1c2VkIGluIGNhbGxiYWNrcywgdGhlcmUgYXJlIGEgZmV3IGNhc2VzOgotICAgICAgICAvLwot
ICAgICAgICAvLyBhbGwgY2FzZXMuIEFsbCB0YXNrcyBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIGNv
bnRleHQncyB0aHJlYWQgYXJlIG9rIGJlY2F1c2UKLSAgICAgICAgLy8gICAgdGhlIGxhc3QgdGFz
ayBwb3N0ZWQgYWx3YXlzIGlzICJtYWluVGhyZWFkRGVzdHJveSIsIHNvIE1haW5UaHJlYWRCcmlk
Z2UgaXMKLSAgICAgICAgLy8gICAgYXJvdW5kIGZvciBhbGwgdGFza3MgdGhhdCB1c2UgaXQgb24g
dGhlIG1haW4gdGhyZWFkLgotICAgICAgICAvLwotICAgICAgICAvLyBjYXNlIDEuIHdvcmtlci50
ZXJtaW5hdGUgaXMgY2FsbGVkLgotICAgICAgICAvLyAgICBJbiB0aGlzIGNhc2UsIG5vIG1vcmUg
dGFza3MgYXJlIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0J3MgdGhyZWFkIHRvIHRoZSB3
b3JrZXIKLSAgICAgICAgLy8gICAgY29udGV4dCdzIHRocmVhZCAtLSBXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZVByb3h5IGltcGxlbWVudGF0aW9uIGVuZm9yY2VzIHRoaXMuCi0gICAgICAgIC8v
Ci0gICAgICAgIC8vIGNhc2UgMi4geGhyIGdldHMgYWJvcnRlZCBhbmQgdGhlIHdvcmtlciBjb250
ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgotICAgICAgICAvLyAgICBUaGUgVGhyZWFkYWJsZUxvYWRl
ckNsaWVudFdyYXBwZXIgaGFzIHRoZSB1bmRlcmx5aW5nIGNsaWVudCBjbGVhcmVkLCBzbyBubyBt
b3JlIGNhbGxzCi0gICAgICAgIC8vICAgIGdvIHRocm91Z2ggaXQuICBBbGwgdGFza3MgcG9zdGVk
IGZyb20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlciBjb250ZXh0J3MK
LSAgICAgICAgLy8gICAgdGhyZWFkIGNvbnRhaW4gdGhlIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVy
Q2xpZW50V3JhcHBlcj4gb2JqZWN0LCBzbyB0aGUKLSAgICAgICAgLy8gICAgVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIgaW5zdGFuY2UgaXMgdGhlcmUgdW50aWwgYWxsIHRhc2tzIGFyZSBl
eGVjdXRlZC4KLSAgICAgICAgY2xhc3MgTWFpblRocmVhZEJyaWRnZSA6IHB1YmxpYyBUaHJlYWRh
YmxlTG9hZGVyQ2xpZW50IHsKLSAgICAgICAgcHVibGljOgotICAgICAgICAgICAgLy8gQWxsIGV4
ZWN1dGVkIG9uIHRoZSB3b3JrZXIgY29udGV4dCdzIHRocmVhZC4KLSAgICAgICAgICAgIE1haW5U
aHJlYWRCcmlkZ2UoVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXImLCBXb3JrZXJMb2FkZXJQ
cm94eSYsIGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBU
aHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYsIGNvbnN0IFN0cmluZyYgb3V0Z29pbmdSZWZlcnJlciwg
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmKTsKLSAgICAgICAgICAgIHZvaWQgY2FuY2VsKCk7
Ci0gICAgICAgICAgICB2b2lkIGRlc3Ryb3koKTsKLSAgICAgICAgICAgIHZvaWQgY29tcHV0ZUlz
RG9uZSgpOwotCi0gICAgICAgIHByaXZhdGU6Ci0gICAgICAgICAgICAvLyBFeGVjdXRlZCBvbiB0
aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCi0gICAgICAgICAgICB2b2lkIGNsZWFyQ2xpZW50
V3JhcHBlcigpOwotCi0gICAgICAgICAgICAvLyBBbGwgZXhlY3V0ZWQgb24gdGhlIG1haW4gdGhy
ZWFkLgotICAgICAgICAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0
ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVycmlkZTsK
LSAgICAgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9p
ZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRl
OwotICAgICAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRp
Zmllcikgb3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGaW5pc2hUaW1pbmcoY29uc3Qg
UmVzb3VyY2VUaW1pbmcmKSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgbm90aWZ5SXNEb25l
KGJvb2wgaXNEb25lKSBmaW5hbDsKLQotICAgICAgICAgICAgLy8gT25seSB0byBiZSB1c2VkIG9u
IHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgICAgIFJlZlB0cjxEb2N1bWVudFRocmVhZGFibGVM
b2FkZXI+IG1fbWFpblRocmVhZExvYWRlcjsKLSAgICAgICAgICAgIGJvb2wgbV9sb2FkaW5nRmlu
aXNoZWQgeyBmYWxzZSB9OwotCi0gICAgICAgICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlciBpcyB0byBiZSB1c2VkIG9uIHRoZSB3b3JrZXIgY29udGV4dCB0aHJlYWQuCi0gICAg
ICAgICAgICAvLyBUaGUgcmVmIGNvdW50aW5nIGlzIGRvbmUgb24gZWl0aGVyIHRocmVhZC4KLSAg
ICAgICAgICAgIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gbV93b3JrZXJD
bGllbnRXcmFwcGVyOwotCi0gICAgICAgICAgICAvLyBNYXkgYmUgdXNlZCBvbiBlaXRoZXIgdGhy
ZWFkLgotICAgICAgICAgICAgV29ya2VyTG9hZGVyUHJveHkmIG1fbG9hZGVyUHJveHk7Ci0KLSAg
ICAgICAgICAgIC8vIEZvciB1c2Ugb24gdGhlIG1haW4gdGhyZWFkLgotICAgICAgICAgICAgU3Ry
aW5nIG1fdGFza01vZGU7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1fd29ya2VyUmVxdWVz
dElkZW50aWZpZXIgeyAwIH07Ci0gICAgICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbV9uZXR3
b3JrTG9hZE1ldHJpY3M7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgV29ya2VyVGhyZWFkYWJsZUxv
YWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQm
LCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgVGhyZWFk
YWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKTsKLQotICAgICAgICB2
b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5hbDsKLQotICAgICAgICBSZWY8V29ya2VyT3JXb3JrbGV0
R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Ci0gICAgICAgIFJlZjxU
aHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOwotICAg
ICAgICBNYWluVGhyZWFkQnJpZGdlJiBtX2JyaWRnZTsKLSAgICB9OworICAgIFJlZjxXb3JrZXJP
cldvcmtsZXRHbG9iYWxTY29wZT4gbV9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZTsKKyAgICBS
ZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsK
KyAgICBNYWluVGhyZWFkQnJpZGdlJiBtX2JyaWRnZTsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggNjhmMjI0MzExMmY4Njk1ZGI2ZmQ2OWY1ZjgzMjU3
ZDc2Mjc5NjA5OS4uNGJjMmIwOTI3NWYxMzgyMDM2OWE5NGJlMDhmZmNiOGQxMmZiOGI5OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVH
cm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9u
Q2FjaGVHcm91cC5jcHAKQEAgLTQzNyw3ICs0MzcsNyBAQCB2b2lkIEFwcGxpY2F0aW9uQ2FjaGVH
cm91cDo6dXBkYXRlKEZyYW1lJiBmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVwZGF0ZU9wdGlvbiB1
cAogCiAgICAgYXV0byByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChVUkwgeyBtX21hbmlmZXN0VVJM
IH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5tYW5pZmVzdFJlc291cmNlKCkgOiBu
dWxscHRyKTsKIAotICAgIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciA9IG1fZnJhbWUtPnBh
Z2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgbV9jdXJyZW50
UmVzb3VyY2VJZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgp
OwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0KG1fZnJhbWUu
Z2V0KCksIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbV9mcmFtZS0+bG9hZGVyKCkuZG9j
dW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSB7IH0sIG51bGxwdHIpOwog
CiAgICAgbV9tYW5pZmVzdExvYWRlciA9IEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlcjo6
Y3JlYXRlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6VHlwZTo6TWFuaWZlc3QsIGRvY3VtZW50
TG9hZGVyLmNhY2hlZFJlc291cmNlTG9hZGVyKCksIFdURk1vdmUocmVxdWVzdCksIFt0aGlzXSAo
YXV0byYmIHJlc291cmNlT3JFcnJvcikgewpAQCAtODk4LDcgKzg5OCw3IEBAIHZvaWQgQXBwbGlj
YXRpb25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSgpCiAKICAgICBhdXRvIHJlcXVlc3Qg
PSBjcmVhdGVSZXF1ZXN0KFVSTCB7IHsgfSwgZmlyc3RQZW5kaW5nRW50cnlVUkwgfSwgbV9uZXdl
c3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKGZpcnN0UGVuZGluZ0VudHJ5
VVJMKSA6IG51bGxwdHIpOwogCi0gICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gbV9m
cmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICBt
X2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6Omdl
bmVyYXRlKCk7CiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3Qo
bV9mcmFtZS5nZXQoKSwgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyLCBtX2ZyYW1lLT5sb2Fk
ZXIoKS5kb2N1bWVudExvYWRlcigpLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlIHsgfSwgbnVs
bHB0cik7CiAKICAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICptX2ZyYW1lLT5sb2FkZXIoKS5k
b2N1bWVudExvYWRlcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCmluZGV4IDYzNzFmYTU4ZWJjNjU0MDk1MDEyZTAz
YTRlN2Q0ZTY0YjQwYjFiOWEuLmI5YmY4NzYzOGYzMDNhZWE5Yzg2YTY0NWVlOGMxZjkyOTI1NjM4
ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlv
bkNhY2hlR3JvdXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGlj
YXRpb25DYWNoZUdyb3VwLmgKQEAgLTE4MSw3ICsxODEsNyBAQCBwcml2YXRlOgogICAgIAogICAg
IFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fY3VycmVudFJlc291cmNlOwogICAg
IFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VMb2FkZXI+IG1fZW50cnlMb2FkZXI7Ci0g
ICAgdW5zaWduZWQgbG9uZyBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXI7CisgICAgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllcjsKIAogICAgIFJl
ZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fbWFuaWZlc3RSZXNvdXJjZTsKICAgICBS
ZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyPiBtX21hbmlmZXN0TG9hZGVyOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAK
aW5kZXggOTAwOWEzOWI3NWM3NWExMjE2YTdlYmE3ZDZjZmFiOWY5Njc3ZWVmZS4uOTJiMDgzNjk3
NTg4ODQ0MDkxOTM5ZTNlZWQ3OWQ3N2YxODM5NTYyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2UuY3BwCkBAIC00Myw3ICs0Myw2IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogQ2FjaGVkUmF3UmVzb3VyY2U6OkNhY2hlZFJhd1Jlc291cmNl
KENhY2hlZFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFR5cGUgdHlwZSwgUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBDb29raWVKYXIqIGNvb2tpZUphcikKICAgICA6IENhY2hlZFJl
c291cmNlKFdURk1vdmUocmVxdWVzdCksIHR5cGUsIHNlc3Npb25JRCwgY29va2llSmFyKQotICAg
ICwgbV9pZGVudGlmaWVyKDApCiAgICAgLCBtX2FsbG93RW5jb2RlZERhdGFSZXBsYWNlbWVudCh0
cnVlKQogewogICAgIEFTU0VSVChpc01haW5Pck1lZGlhT3JJY29uT3JSYXdSZXNvdXJjZSgpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJj
ZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKaW5k
ZXggZmQ0YTI2OWJkNWEyYmI2MDQ5ODVjNDdkNmIzOGE3OTMwNzZmZjk0Yi4uODRlMGQ4NDRkNTcx
MDk5NTNhZTZiZmY2NTU2NTk5NTNlMjhiYTY5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKQEAgLTM5LDcgKzM5LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0RGF0YUJ1ZmZlcmluZ1BvbGljeShEYXRhQnVmZmVyaW5nUG9saWN5KTsKIAog
ICAgIC8vIEZJWE1FOiBUaGlzIGlzIGV4cG9zZWQgZm9yIHRoZSBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb24gZm9yIHByZWZsaWdodHMgaW4gRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLiBJdCdzIGFs
c28gcmVhbGx5IGxhbWUuCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKCkgY29uc3QgeyBy
ZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgY2xlYXIo
KTsKIApAQCAtNzMsNyArNzMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcHJldmlld1Jlc3BvbnNl
UmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB1
bnNpZ25lZCBsb25nIG1faWRlbnRpZmllcjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV9hbGxvd0VuY29kZWREYXRhUmVwbGFjZW1lbnQ7CiAg
ICAgYm9vbCBtX2luSW5jcmVtZW50YWxEYXRhTm90aWZ5IHsgZmFsc2UgfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggODZmNzcyMGI4
M2ViMDNlMTE4Y2VlZDZmMjM0MThiOGIyNjVkZjQyNi4uNWFiNGE0OGQyZmNiNjBlM2M5NzMyZWZj
MDBkNWNkZmI3ZjllNzUyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2UuY3BwCkBAIC0yNjUsNyArMjY1LDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZTo6
bG9hZChDYWNoZWRSZXNvdXJjZUxvYWRlciYgY2FjaGVkUmVzb3VyY2VMb2FkZXIpCiAgICAgICAg
IEFTU0VSVChtX29yaWdpbmFsUmVxdWVzdCk7CiAgICAgICAgIENhY2hlZFJlc291cmNlSGFuZGxl
PENhY2hlZFJlc291cmNlPiBwcm90ZWN0ZWRUaGlzKHRoaXMpOwogCi0gICAgICAgIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciA9IGZyYW1lLnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJ
ZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8gaWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRl
bnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3
aWxsU2VuZFJlcXVlc3RPZlR5cGUoJmZyYW1lLCBpZGVudGlmaWVyLCBmcmFtZUxvYWRlci5hY3Rp
dmVEb2N1bWVudExvYWRlcigpLCByZXF1ZXN0LCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Okxv
YWRUeXBlOjpCZWFjb24pOwogCiAgICAgICAgIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJT
dHJhdGVneSgpLT5zdGFydFBpbmdMb2FkKGZyYW1lLCByZXF1ZXN0LCBtX29yaWdpbmFsUmVxdWVz
dC0+aHR0cEhlYWRlckZpZWxkcygpLCBtX29wdGlvbnMsIG1fb3B0aW9ucy5jb250ZW50U2VjdXJp
dHlQb2xpY3lJbXBvc2l0aW9uLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVj
dGVkVGhpcyksIHByb3RlY3RlZEZyYW1lID0gbWFrZVJlZihmcmFtZSksIGlkZW50aWZpZXJdIChj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKaW5k
ZXggNWY5NTY5ZWNhYjEzY2ZjMmZmYWNlN2ZmMTFlNzg2MTcyZWVlNzMwMC4uMzk2MDAyODMyY2Mx
NTNjNTkwNDc4Y2EyNTE4MTNlNmMwMzViYzI3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJGcmFt
ZUxvYWRlclR5cGVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlJl
c291cmNlTG9hZFByaW9yaXR5LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtMjg2LDcgKzI4
Nyw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHRyeVJlcGxhY2VFbmNvZGVk
RGF0YShTaGFyZWRCdWZmZXImKTsKICNlbmRpZgogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7IH0KKyAgICBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIoKSBjb25zdCB7
IHJldHVybiBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOyB9CiAKICAg
ICB2b2lkIHNldE9yaWdpbmFsUmVxdWVzdChzdGQ6OnVuaXF1ZV9wdHI8UmVzb3VyY2VSZXF1ZXN0
PiYmIG9yaWdpbmFsUmVxdWVzdCkgeyBtX29yaWdpbmFsUmVxdWVzdCA9IFdURk1vdmUob3JpZ2lu
YWxSZXF1ZXN0KTsgfQogICAgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxSZXNvdXJjZVJlcXVlc3Q+
JiBvcmlnaW5hbFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBtX29yaWdpbmFsUmVxdWVzdDsgfQpA
QCAtMzQyLDcgKzM0Myw3IEBAIHByaXZhdGU6CiAgICAgUEFMOjpTZXNzaW9uSUQgbV9zZXNzaW9u
SUQ7CiAgICAgUmVmUHRyPGNvbnN0IENvb2tpZUphcj4gbV9jb29raWVKYXI7CiAgICAgV2FsbFRp
bWUgbV9yZXNwb25zZVRpbWVzdGFtcDsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllckZv
ckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CiAKICAgICBI
YXNoTWFwPENhY2hlZFJlc291cmNlQ2xpZW50Kiwgc3RkOjp1bmlxdWVfcHRyPENhbGxiYWNrPj4g
bV9jbGllbnRzQXdhaXRpbmdDYWxsYmFjazsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNw
cAppbmRleCA3Yjc3ZTQwN2VlNWQwOGFiMzc4NGQwODk5Y2ZhMzNmMDE3N2YwNjQ4Li42MDI2MzFi
YjdjZDEwODYwYjFhMzEyMTA0M2M5N2Q4ZWZlNDQ3NjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50U291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
U291cmNlLmNwcApAQCAtMTg4LDcgKzE4OCw3IEBAIGJvb2wgRXZlbnRTb3VyY2U6OnJlc3BvbnNl
SXNWYWxpZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgY29uc3QKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAotdm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBFdmVudFNv
dXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgQVNTRVJUKG1fc3RhdGUgPT0gQ09O
TkVDVElORyk7CiAgICAgQVNTRVJUKG1fcmVxdWVzdEluRmxpZ2h0KTsKQEAgLTIyMCw3ICsyMjAs
NyBAQCB2b2lkIEV2ZW50U291cmNlOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRh
LCBpbnQgbGVuZ3RoKQogICAgIHBhcnNlRXZlbnRTdHJlYW0oKTsKIH0KIAotdm9pZCBFdmVudFNv
dXJjZTo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBFdmVudFNvdXJjZTo6
ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJU
KG1fc3RhdGUgPT0gT1BFTik7CiAgICAgQVNTRVJUKG1fcmVxdWVzdEluRmxpZ2h0KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRXZlbnRTb3VyY2UuaAppbmRleCBlMTBkOGQ5MTZmYjBmMjVmYmVhM2Y3YWMyYWY1NWY1
NzBiMjBkY2E2Li5kMDEyZDM3N2QxOTc2NzVmMGZlMTE0NWYxNzE5ZjE3ZmRkYmZlYTNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCkBAIC04Myw5ICs4Myw5IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBkb0V4cGxpY2l0TG9hZENhbmNlbGxhdGlvbigpOwogCiAgICAgLy8gVGhyZWFkYWJsZUxv
YWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25z
ZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQpIGZpbmFsOwot
ICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBmaW5hbDsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICAgICB2
b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCiAgICAgLy8gQWN0aXZl
RE9NT2JqZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKaW5kZXggYzQ4YTI5NmNjYzAyZTU3
YmMyZGJkNjAxNzQ0NDU5N2NjOWFhMzBkNy4uZTk3YTA1OGRmNmM4YmQyZmFkM2MxYTNiMjgzZGY3
ZTY2OTc5NTE1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmNwcApAQCAtMTk2LDcgKzE5Niw3
IEBAIHZvaWQgV29ya2VyOjpub3RpZnlOZXR3b3JrU3RhdGVDaGFuZ2UoYm9vbCBpc09uTGluZSkK
ICAgICBtX2NvbnRleHRQcm94eS5ub3RpZnlOZXR3b3JrU3RhdGVDaGFuZ2UoaXNPbkxpbmUpOwog
fQogCi12b2lkIFdvcmtlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlcjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBjb25zdCBVUkwmIHJlc3BvbnNl
VVJMID0gcmVzcG9uc2UudXJsKCk7CiAgICAgaWYgKCFyZXNwb25zZVVSTC5wcm90b2NvbElzQmxv
YigpICYmICFyZXNwb25zZVVSTC5wcm90b2NvbElzKCJmaWxlIikgJiYgIVNlY3VyaXR5T3JpZ2lu
OjpjcmVhdGUocmVzcG9uc2VVUkwpLT5pc1VuaXF1ZSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgK
aW5kZXggYzMxZTc5YmQ1NWZmODIwOGZjN2I0MmQ3ZTk4MmJjM2Q1MWFjYjEyMy4uYmQyOWU1N2Zl
NGYyYTI2NzgzNThmZWQxZTE3M2FmYzJiZDY4N2ViNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5o
CkBAIC04Nyw3ICs4Nyw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIG5vdGlmeU5ldHdvcmtTdGF0
ZUNoYW5nZShib29sIGlzT25saW5lKTsKIAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwor
ICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBm
aW5hbDsKIAogICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcAppbmRleCBmYWJiZDAzZWIwYWRjMTIwNGUx
MDQxYTEwOGUwNWI3NmU0NTQ1NTA3Li5mMTU3ZDMwOTdkZjY5ODdhNGI2MzRiN2ZkNjMzMzllOTA5
ZDg2ZTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2Fk
UmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6
OnNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqIGNsaWVudCkKICAgICB9CiB9CiAKLXZv
aWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlckZvbnRMb2Fk
UmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBT
dGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKQogICAg
ICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOwpAQCAtMTIyLDcgKzEyMiw3IEBAIHZvaWQgV29y
a2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCkKICAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBkYXRhTGVuZ3RoKTsKIH0K
IAotdm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQg
bG9uZykKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBtX2lzTG9hZGluZyA9IGZhbHNlOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAppbmRleCAxNWM0
NTEzODAwNTA0YWIwM2Q0OTE3OWJiNTRlODIwMGUyZDQ5OThkLi5hZjY5MjA2MzAyZGMxYmFlZDU5
OTA0NGU3Yjc2NWU3YmM1MDI4ZjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0LmgKQEAgLTYwLDkgKzYwLDkgQEAgcHJpdmF0ZToKIAogICAgIGJv
b2wgaXNXb3JrZXJGb250TG9hZFJlcXVlc3QoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9
CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYpIGZpbmFsOwogCiAgICAgVVJMIG1fdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oCmluZGV4IGU0NzlkZGVhMDRlYTVl
MWUyNjZlNTE1YWY5MmNlZDNmOTk1N2VjNTYuLmI5NzBjZGU0MWU3YzU0MTEyMTAyNTJlNjVhMThl
NDFjNmI5MzlkNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JX
b3JrbGV0R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlLmgKQEAgLTU0LDggKzU0LDYgQEAgcHVibGljOgogICAgIEpTQzo6
Vk0mIHZtKCkgZmluYWw7CiAgICAgV29ya2VySW5zcGVjdG9yQ29udHJvbGxlciYgaW5zcGVjdG9y
Q29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuICptX2luc3BlY3RvckNvbnRyb2xsZXI7IH0KIAot
ICAgIHVuc2lnbmVkIGxvbmcgY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpIHsgcmV0dXJuIG1fdW5p
cXVlSWRlbnRpZmllcisrOyB9Ci0KICAgICBTY3JpcHRNb2R1bGVMb2FkZXImIG1vZHVsZUxvYWRl
cigpIHsgcmV0dXJuICptX21vZHVsZUxvYWRlcjsgfQogCiAgICAgLy8gU2NyaXB0RXhlY3V0aW9u
Q29udGV4dC4KQEAgLTk5LDcgKzk3LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V29ya2VyRXZl
bnRMb29wPiBtX2V2ZW50TG9vcDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RXZlbnRMb29wVGFza0dy
b3VwPiBtX2RlZmF1bHRUYXNrR3JvdXA7CiAgICAgc3RkOjp1bmlxdWVfcHRyPFdvcmtlckluc3Bl
Y3RvckNvbnRyb2xsZXI+IG1faW5zcGVjdG9yQ29udHJvbGxlcjsKLSAgICB1bnNpZ25lZCBsb25n
IG1fdW5pcXVlSWRlbnRpZmllciB7IDEgfTsKICAgICBib29sIG1faXNDbG9zaW5nIHsgZmFsc2Ug
fTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNw
cAppbmRleCA3M2FlN2FiYjcxM2M2YWY2OTQ1YjhkNTFlMGEwZTdmOTc5YjExNWYxLi5iZjVhNDRm
ZTM0OGQyZmZjZTkxNmZiMTk0OTE1ZTY3YmZkYTlhZWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwCkBAIC0xNzgsNyArMTc4LDcgQEAgUmVzb3Vy
Y2VFcnJvciBXb3JrZXJTY3JpcHRMb2FkZXI6OnZhbGlkYXRlV29ya2VyUmVzcG9uc2UoY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYKICAgICByZXR1cm4geyB9OwogfQogCi12b2lkIFdvcmtlclNjcmlw
dExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBtX2Vycm9yID0gdmFsaWRh
dGVXb3JrZXJSZXNwb25zZShyZXNwb25zZSwgbV9kZXN0aW5hdGlvbik7CiAgICAgaWYgKCFtX2Vy
cm9yLmlzTnVsbCgpKSB7CkBAIC0yMjEsNyArMjIxLDcgQEAgdm9pZCBXb3JrZXJTY3JpcHRMb2Fk
ZXI6OmRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBsZW4pCiAgICAgbV9z
Y3JpcHQuYXBwZW5kKG1fZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGxlbikpOwogfQogCi12b2lkIFdv
cmtlclNjcmlwdExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIpCit2b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAobV9mYWlsZWQpIHsKICAgICAg
ICAgbm90aWZ5RXJyb3IoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExv
YWRlci5oCmluZGV4IDNlZTRkYTZjNTA2Y2JmZDZlYjg3NWQ5YzI3NDk4ZjEzZjNjN2ExMTkuLmVh
NTM4MGZiZWVmODc1NDAzMTZhNmZhOTI3OGNjMjE3Yzg5MzE0ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuaApAQCAtNzUsMTIgKzc1LDEyIEBAIHB1Ymxp
YzoKICAgICBjb25zdCBDZXJ0aWZpY2F0ZUluZm8mIGNlcnRpZmljYXRlSW5mbygpIGNvbnN0IHsg
cmV0dXJuIG1fY2VydGlmaWNhdGVJbmZvOyB9CiAgICAgY29uc3QgU3RyaW5nJiByZXNwb25zZU1J
TUVUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZU1JTUVUeXBlOyB9CiAgICAgYm9vbCBm
YWlsZWQoKSBjb25zdCB7IHJldHVybiBtX2ZhaWxlZDsgfQotICAgIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9
CiAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IoKSBjb25zdCB7IHJldHVybiBtX2Vycm9y
OyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2Vp
dmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRh
dGEsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZh
aWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjYW5jZWwoKTsK
QEAgLTExMCw3ICsxMTAsNyBAQCBwcml2YXRlOgogICAgIENvbnRlbnRTZWN1cml0eVBvbGljeVJl
c3BvbnNlSGVhZGVycyBtX2NvbnRlbnRTZWN1cml0eVBvbGljeTsKICAgICBTdHJpbmcgbV9yZWZl
cnJlclBvbGljeTsKICAgICBDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5IG1fY3Jvc3NPcmlnaW5F
bWJlZGRlclBvbGljeTsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllciB7IDAgfTsKKyAg
ICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV9mYWls
ZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9maW5pc2hpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wg
bV9pc1JlZGlyZWN0ZWQgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmgKaW5kZXggMjc0Y2U0OGUxZDZmM2ZiMDY5NGQyMjU2
ZDE2ZjM1ZWFhMzU5NzY1Zi4uMTViMzI1ZTQ3NWY0YzliYmI0ZjI5ODI4ODFlNDU3ZjZjNGNmZjc2
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXJD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlckNs
aWVudC5oCkBAIC0zMiw3ICszMiw3IEBAIGNsYXNzIFJlc291cmNlUmVzcG9uc2U7CiAKIGNsYXNz
IFdvcmtlclNjcmlwdExvYWRlckNsaWVudCB7CiBwdWJsaWM6Ci0gICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKCkgPSAwOwogCiBwcm90ZWN0ZWQ6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAKaW5k
ZXggODY3Yjg2OTQ3NTM0NGZjZTMzY2NkYTk5ZjdlYzkwY2Y0NzcxM2Q1Yi4uNjllZjlkNzA3ZmM0
M2Q0N2MyZTIyNjVhYTE0OTYzNGUzYmIwMThkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmNwcApAQCAtMTQwLDcgKzE0MCw3IEBA
IFJlc291cmNlRXJyb3IgU2VydmljZVdvcmtlckpvYjo6dmFsaWRhdGVTZXJ2aWNlV29ya2VyUmVz
cG9uc2UoY29uc3QgU2VydmljZVdvcmtlCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBTZXJ2
aWNlV29ya2VySm9iOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFNlcnZpY2VXb3JrZXJKb2I6OmRpZFJlY2Vp
dmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX2NyZWF0aW9uVGhyZWFkLnB0cigpID09ICZU
aHJlYWQ6OmN1cnJlbnQoKSk7CiAgICAgQVNTRVJUKCFtX2NvbXBsZXRlZCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaAppbmRleCAwN2Nj
Yjc0NzAyZTU0MDA2NTBhNjYyODU0M2U4MzNjNTQ2NGY5YmJiLi43YzU4YTQ2YzI0MjA1ODIwYWIw
MTA5YzFlNTNjYzZkZWFkYmViZjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
c2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKQEAgLTc0LDcgKzc0LDcgQEAgcHVibGljOgogCiBw
cml2YXRlOgogICAgIC8vIFdvcmtlclNjcmlwdExvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogICAgIHZvaWQgbm90
aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIFNlcnZpY2VXb3JrZXJKb2JDbGllbnQmIG1fY2xp
ZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKaW5kZXggMjViZjgyMDA5ZTNh
YTgyYzEzOGMxNzU3MDJiNjQwYTQ3YWIzZjk5YS4uNjJmNzBlZWI4MDFkODQ4NGUxYTQ4OTVmN2Qz
NDZjMWI0ZTRjNzhlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1
ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCkBAIC05
MjYsNyArOTI2LDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmFpbChjb25zdCBSZXNvdXJj
ZUVycm9yJiBlcnJvcikKICAgICBuZXR3b3JrRXJyb3IoKTsKIH0KIAotdm9pZCBYTUxIdHRwUmVx
dWVzdDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBYTUxIdHRwUmVxdWVz
dDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgYXV0
byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7CiAKQEAgLTk3MCw3ICs5NzAsNyBAQCB2
b2lkIFhNTEh0dHBSZXF1ZXN0OjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnl0ZXNT
ZW50LCB1bnNpZ25lZCBsb25nIGxvbgogICAgIH0KIH0KIAotdm9pZCBYTUxIdHRwUmVxdWVzdDo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQordm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7
CiAgICAgbV9yZXNwb25zZSA9IHJlc3BvbnNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUveG1sL1hNTEh0dHBSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVl
c3QuaAppbmRleCBjMDRhMTY4OTYwOWI2ZmI5MWE2ODBjOThmN2UwNzMyYTc0OGY5ZWYyLi44ZjZl
ODkyNjBkZWMxNjc1ZWRmY2VmNTg0YjAzMGQ4NmM3NjY4ODM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1M
SHR0cFJlcXVlc3QuaApAQCAtMTYxLDkgKzE2MSw5IEBAIHByaXZhdGU6CiAKICAgICAvLyBUaHJl
YWRhYmxlTG9hZGVyQ2xpZW50CiAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxv
bmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50KSBvdmVy
cmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2Vp
dmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRh
dGEsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZh
aWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogICAgIHZvaWQgbm90aWZ5SXNEb25l
KGJvb2wpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCmluZGV4IDVkZDhiMzU2
ODNkNTg4ZjFlN2Q3MmNiMTgxMjNjMjY2NzY1ZGU2MjMuLmJiMDVmMGVlNTI0ZjU1NDcyMmUzZWFh
N2VlNWRkMWIwZTFhNGU1ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCkBAIC0yMDYs
NyArMjA2LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2
ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW8KICAgICBpZiAoZGVjb2Rlci5tZXNz
YWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6bWVz
c2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsKICAgICAgICAgUkVMRUFTRV9BU1NFUlQoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkp
OwotICAgICAgICBpZiAoYXV0byogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdl
dChkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRvKiBsb2FkZXIgPSBt
X25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuZ2V0KG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYkNvcmU6
OlJlc291cmNlTG9hZGVyPihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpKQogICAgICAgICAgICAg
bG9hZGVyLT5kaWRSZWNlaXZlTmV0d29ya1Jlc291cmNlTG9hZGVyTWVzc2FnZShjb25uZWN0aW9u
LCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ1OSw3ICs0NTksNyBAQCBO
ZXR3b3JrU2Vzc2lvbiogTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Om5ldHdvcmtTZXNz
aW9uKCkKIAogVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiBO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JSZWZlcmVuY2VzKGNvbnN0
IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiBsb2FkUGFyYW1ldGVycykKIHsKLSAgICBD
T05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZXNvbHZlQmxvYlJlZmVyZW5jZXM6IChw
YXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0
ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBh
cmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBD
T05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZXNvbHZlQmxvYlJlZmVyZW5jZXM6IChw
YXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0
ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBh
cmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0
KCkpOwogCiAgICAgYXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uKCk7CiAgICAgaWYgKCFz
ZXNzaW9uKQpAQCAtNDg4LDcgKzQ4OCw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxTZXJ2aWNlV29ya2Vy
RmV0Y2hUYXNrPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3JlYXRlRmV0CiAKIHZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKE5l
dHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIHN0ZDo6b3B0aW9u
YWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IGV4aXN0aW5nTG9hZGVyVG9SZXN1bWUp
CiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic2NoZWR1bGVSZXNvdXJj
ZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIs
IGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFy
ZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFy
YW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50
b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLCBleGlzdGluZ0xvYWRlclRvUmVz
dW1lLnZhbHVlX29yKE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHsgfSkudG9VSW50NjQo
KSk7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic2NoZWR1bGVSZXNvdXJj
ZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIs
IGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFy
ZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFy
YW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50
b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCksIGV4aXN0aW5n
TG9hZGVyVG9SZXN1bWUudmFsdWVfb3IoTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXIgeyB9
KS50b1VJbnQ2NCgpKTsKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBhdXRvJiBz
ZXJ2ZXIgPSBtX25ldHdvcmtQcm9jZXNzLT5zd1NlcnZlckZvclNlc3Npb24obV9zZXNzaW9uSUQp
OwpAQCAtNTMyLDcgKzUzMiw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnNjaGVkdWxlUmVzb3VyY2VMb2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhCiAKIHZvaWQgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQoTmV0d29y
a1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycywgTWVzc2FnZXM6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpQZXJmb3JtU3luY2hyb25vdXNMb2FkOjpEZWxheWVk
UmVwbHkmJiByZXBseSkKIHsKLSAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJw
ZXJmb3JtU3luY2hyb25vdXNMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1
NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRl
cnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRv
VUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFt
ZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAi
cGVyZm9ybVN5bmNocm9ub3VzTG9hZDogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5SUQ9JSIgUFJJ
dTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3Vy
Y2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxvYWRQYXJhbWV0
ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VJRC50
b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIGxvYWRQYXJh
bWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBhdXRvIGlkZW50aWZpZXIgPSBs
b2FkUGFyYW1ldGVycy5pZGVudGlmaWVyOwogICAgIFJFTEVBU0VfQVNTRVJUKGlkZW50aWZpZXIp
OwpAQCAtNTU0LDcgKzU1NCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnRlc3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvCiAKIHZvaWQgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmxvYWRQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQ
YXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xP
RyhMb2FkaW5nLCAibG9hZFBpbmc6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2
NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNl
SUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVy
cy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9V
SW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1l
dGVycy5pZGVudGlmaWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJs
b2FkUGluZzogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJ
RD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQg
IikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94
eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2Fk
UGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZp
ZXIudG9VSW50NjQoKSk7CiAKICAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gW2Nvbm5lY3Rp
b24gPSBtX2Nvbm5lY3Rpb24sIGlkZW50aWZpZXIgPSBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVy
XSAoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKSB7CiAgICAgICAgIGNvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbjo6RGlkRmluaXNoUGluZ0xvYWQoaWRlbnRpZmllciwgZXJyb3IsIHJlc3Bv
bnNlKSwgMCk7CkBAIC01NzQsNyArNTc0LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6Y29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChIVFRQQ29va2llQWNjZXB0UG8KICAg
ICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6
Q29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChuZXdQb2xpY3kpLCAwKTsKIH0KIAotdm9pZCBOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VM
b2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6cmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoaWRlbnRpZmllcik7CiAgICAg
UkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwpAQCAtNTg3LDcgKzU4Nyw3IEBAIHZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVyKFJl
c291cmNlTG9hZElkZW50aWZpZXIKIAogICAgIC8vIEFib3J0IHRoZSBsb2FkIG5vdywgYXMgdGhl
IFdlYlByb2Nlc3Mgd29uJ3QgYmUgYWJsZSB0byByZXNwb25kIHRvIG1lc3NhZ2VzIGFueSBtb3Jl
IHdoaWNoIG1pZ2h0IGxlYWQKICAgICAvLyB0byBsZWFrZWQgbG9hZGVyIHJlc291cmNlcyAoY29u
bmVjdGlvbnMsIHRocmVhZHMsIGV0YykuCi0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2Fk
aW5nLCAicmVtb3ZlTG9hZElkZW50aWZpZXI6IFJlbW92aW5nIGlkZW50aWZpZXIgJSIgUFJJdTY0
ICIgYW5kIGFib3J0aW5nIGNvcnJlc3BvbmRpbmcgbG9hZGVyIiwgaWRlbnRpZmllcik7CisgICAg
Q09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVtb3ZlTG9hZElkZW50aWZpZXI6IFJl
bW92aW5nIGlkZW50aWZpZXIgJSIgUFJJdTY0ICIgYW5kIGFib3J0aW5nIGNvcnJlc3BvbmRpbmcg
bG9hZGVyIiwgaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBsb2FkZXItPmFib3J0KCk7CiAg
ICAgQVNTRVJUKCFtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoaWRlbnRpZmllcikp
OwogfQpAQCAtNjI3LDkgKzYyNyw5IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNlbmRIMlBpbmcoTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBwCiAjZW5kaWYK
IH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQordm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgTmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycykKIHsKLSAgICBDT05ORUNUSU9O
X1JFTEVBU0VfTE9HKExvYWRpbmcsICJwcmVjb25uZWN0VG86IChwYXJlbnRQSUQ9JWQsIHBhZ2VQ
cm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJ
dTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElE
LCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0Vf
TE9HKExvYWRpbmcsICJwcmVjb25uZWN0VG86IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUi
IFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJl
c291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFy
YW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdl
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2Fk
UGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgQVNTRVJUKCFsb2FkUGFy
YW1ldGVycy5yZXF1ZXN0Lmh0dHBCb2R5KCkpOwogCkBAIC02NTcsMTIgKzY1NywxMiBAQCB2b2lk
IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25h
bDx1aW50NjRfdD4gcHJlY29ubgogICAgIGNvbXBsZXRpb25IYW5kbGVyKGludGVybmFsRXJyb3Io
bG9hZFBhcmFtZXRlcnMucmVxdWVzdC51cmwoKSkpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjppc1Jlc291cmNlTG9hZEZpbmlzaGVkKHVpbnQ2NF90IGxvYWRJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQordm9pZCBO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZChXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spCiB7CiAgICAgY2FsbGJhY2soIW1fbmV0d29y
a1Jlc291cmNlTG9hZGVycy5jb250YWlucyhsb2FkSWRlbnRpZmllcikpOwogfQogCi12b2lkIE5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2
NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
K3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpZEZpbmlzaFByZWNvbm5lY3Rp
b24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoIW1fY29ubmVjdGlv
bi0+aXNWYWxpZCgpKQogICAgICAgICByZXR1cm47CkBAIC02ODMsNyArNjgzLDcgQEAgdm9pZCBO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RhcnREb3dubG9hZChEb3dubG9hZElEIGRv
d25sb2FkSUQsIGNvbnN0IFIKICAgICBtX25ldHdvcmtQcm9jZXNzLT5kb3dubG9hZE1hbmFnZXIo
KS5zdGFydERvd25sb2FkKG1fc2Vzc2lvbklELCBkb3dubG9hZElELCByZXF1ZXN0LCBpc05hdmln
YXRpbmdUb0FwcEJvdW5kRG9tYWluLCBzdWdnZXN0ZWROYW1lKTsKIH0KIAotdm9pZCBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElEIGRvd25sb2Fk
SUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlm
aWVyLCBEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHN0ZDo6b3B0aW9uYWw8TmF2aWdh
dGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCiB7CiAg
ICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCkBAIC02OTMsNyArNjkzLDcg
QEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJj
ZUxvYWRUb0Rvd25sb2FkKHVpbnQ2NF90IG0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IE5ldHdvcmtSZXNvdXJjZUxvYWRlciogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJz
LmdldChtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgTmV0d29ya1Jlc291cmNlTG9h
ZGVyKiBsb2FkZXIgPSBtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuZ2V0KCptYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpIHsKICAgICAgICAgLy8gSWYgd2UncmUg
dHJ5aW5nIHRvIGRvd25sb2FkIGEgYmxvYiBoZXJlIGxvYWRlciBjYW4gYmUgbnVsbC4KICAgICAg
ICAgcmV0dXJuOwpAQCAtMTAyOSw3ICsxMDI5LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6cmVzZXRPcmlnaW5BY2Nlc3NBbGxvd0xpc3RzKCkKICAgICBTZWN1cml0eVBv
bGljeTo6cmVzZXRPcmlnaW5BY2Nlc3NBbGxvd2xpc3RzKCk7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8
TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0
YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQoUGFnZUlkZW50aWZpZXIgcGFnZUlELCBSZXNvdXJjZUxv
YWRJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSkKK3N0ZDo6b3B0aW9u
YWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQoUGFnZUlkZW50aWZpZXIgcGFnZUlELCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgYm9vbCBpc1RvcFJlc291cmNl
KQogewogICAgIGlmIChtX3Nlc3Npb25JRC5pc0VwaGVtZXJhbCgpKQogICAgICAgICByZXR1cm4g
c3RkOjpudWxsb3B0OwpAQCAtMTA4MCw3ICsxMDgwLDcgQEAgc3RkOjpvcHRpb25hbDxOZXR3b3Jr
QWN0aXZpdHlUcmFja2VyPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RhcnRUcmFj
a2kKICAgICByZXR1cm4gbmV3QWN0aXZpdHlUcmFja2VyLm5ldHdvcmtBY3Rpdml0eTsKIH0KIAot
dm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RvcFRyYWNraW5nUmVzb3VyY2VM
b2FkKFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJh
Y2tlcjo6Q29tcGxldGlvbkNvZGUgY29kZSkKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OnN0b3BUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNv
ZGUgY29kZSkKIHsKICAgICBhdXRvIGl0ZW1JbmRleCA9IGZpbmROZXR3b3JrQWN0aXZpdHlUcmFj
a2VyKHJlc291cmNlSUQpOwogICAgIGlmIChpdGVtSW5kZXggPT0gbm90Rm91bmQpCkBAIC0xMTE3
LDcgKzExMTcsNyBAQCBzaXplX3QgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmRS
b290TmV0d29ya0FjdGl2aXR5KFBhZ2VJZGVudGlmaWVyIHBhZwogICAgIH0pOwogfQogCi1zaXpl
X3QgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmROZXR3b3JrQWN0aXZpdHlUcmFj
a2VyKFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCkKK3NpemVfdCBOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQpCiB7CiAgICAgcmV0dXJuIG1fbmV0
d29ya0FjdGl2aXR5VHJhY2tlcnMuZmluZE1hdGNoaW5nKFsmXShjb25zdCBhdXRvJiBpdGVtKSB7
CiAgICAgICAgIHJldHVybiBpdGVtLnJlc291cmNlSUQgPT0gcmVzb3VyY2VJRDsKQEAgLTEyNjgs
NyArMTI2OCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNldFJlc291
cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2VJCiAgICAgc2Vzc2lvbi0+bmV0d29y
a0xvYWRTY2hlZHVsZXIoKS5zZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShwYWdlSWRlbnRp
ZmllciwgbW9kZSk7CiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnBy
aW9yaXRpemVSZXNvdXJjZUxvYWRzKFZlY3RvcjxSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBsb2Fk
SWRlbnRpZmllcnMpCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0
aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPiYgbG9hZElkZW50aWZpZXJzKQogewogICAgIGF1dG8qIHNlc3Npb24gPSBuZXR3b3Jr
U2Vzc2lvbigpOwogICAgIGlmICghc2Vzc2lvbikKQEAgLTEyODUsNyArMTI4NSw3IEBAIHZvaWQg
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKFZl
Y3RvcjxSZXNvdXJjZUxvYWRJCiAgICAgc2Vzc2lvbi0+bmV0d29ya0xvYWRTY2hlZHVsZXIoKS5w
cmlvcml0aXplTG9hZHMobG9hZHMpOwogfQogCi1SZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVy
PiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRl
cih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorUmVmUHRyPE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKCFOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpp
c1ZhbGlkS2V5KHJlc291cmNlTG9hZElkZW50aWZpZXIpKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAppbmRleCBlOThhMmU1ZGExNWY2YjA4ZGQyNTBiZTk4
YjZmOGZhYjUzMzQxYTRjLi5kMTYxY2Y5NmM0YzVkOWFkMTMwOTQ5NjJlMTk5MWE1ZjRlZmQ4MGI0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCkBAIC04Nyw3ICs4Nyw2IEBAIGNsYXNzIE5ldHdv
cmtTb2NrZXRTdHJlYW07CiBjbGFzcyBTZXJ2aWNlV29ya2VyRmV0Y2hUYXNrOwogY2xhc3MgV2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uOwogY2xhc3MgV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9u
OwotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwogCiBuYW1lc3BhY2Ug
TmV0d29ya0NhY2hlIHsKIHN0cnVjdCBEYXRhS2V5OwpAQCAtMTI1LDM0ICsxMjQsMzQgQEAgcHVi
bGljOgogICAgIHZvaWQgY2xlYW51cEZvclN1c3BlbnNpb24oRnVuY3Rpb248dm9pZCgpPiYmKTsK
ICAgICB2b2lkIGVuZFN1c3BlbnNpb24oKTsKIAotICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbmZv
cm1hdGlvblJlc3BvbnNlKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCisgICAgdm9pZCBnZXROZXR3b3JrTG9hZEluZm9ybWF0aW9uUmVzcG9u
c2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogICAgIHsKICAgICAgICAgaWYgKGF1dG8qIGluZm8gPSBtX25ldHdvcmtM
b2FkSW5mb3JtYXRpb25CeUlELmdldChpZGVudGlmaWVyKSkKICAgICAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihpbmZvLT5yZXNwb25zZSk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKHsgfSk7CiAgICAgfQogCi0gICAgdm9pZCBnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUlu
Zm9ybWF0aW9uKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3Jt
YXRpb24+Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgdm9pZCBnZXROZXR3b3JrTG9hZElu
dGVybWVkaWF0ZUluZm9ybWF0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpO
ZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4mKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAg
ICB7CiAgICAgICAgIGlmIChhdXRvKiBpbmZvID0gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJ
RC5nZXQoaWRlbnRpZmllcikpCiAgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIo
aW5mby0+dHJhbnNhY3Rpb25zKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKICAg
ICB9CiAKLSAgICB2b2lkIHRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
V2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAg
dm9pZCB0YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
V2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiAgICAg
ewogICAgICAgICBpZiAoYXV0byBpbmZvID0gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC50
YWtlKGlkZW50aWZpZXIpKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGlu
Zm8tPm1ldHJpY3MpOwogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0pOwogICAgIH0KIAot
ICAgIHZvaWQgYWRkTmV0d29ya0xvYWRJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVy
IGlkZW50aWZpZXIsIFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24mJiBpbmZvcm1hdGlv
bikKKyAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb24oV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRp
b24mJiBpbmZvcm1hdGlvbikKICAgICB7CiAgICAgICAgIEFTU0VSVCghbV9uZXR3b3JrTG9hZElu
Zm9ybWF0aW9uQnlJRC5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgICAgIG1fbmV0d29ya0xv
YWRJbmZvcm1hdGlvbkJ5SUQuYWRkKGlkZW50aWZpZXIsIG1ha2VVbmlxdWU8V2ViQ29yZTo6TmV0
d29ya0xvYWRJbmZvcm1hdGlvbj4oV1RGTW92ZShpbmZvcm1hdGlvbikpKTsKICAgICB9CiAKLSAg
ICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKFJlc291cmNlTG9hZElkZW50
aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJiBtZXRy
aWNzKQorICAgIHZvaWQgYWRkTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok5ldHdv
cmtMb2FkTWV0cmljcyYgbWV0cmljcykKICAgICB7CiAgICAgICAgIEFTU0VSVChtX25ldHdvcmtM
b2FkSW5mb3JtYXRpb25CeUlELmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKICAgICAgICAgbV9uZXR3
b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5lbnN1cmUoaWRlbnRpZmllciwgW10gewpAQCAtMTYwLDEz
ICsxNTksMTMgQEAgcHVibGljOgogICAgICAgICB9KS5pdGVyYXRvci0+dmFsdWUtPm1ldHJpY3Mg
PSBtZXRyaWNzOwogICAgIH0KIAotICAgIHZvaWQgcmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlv
bihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpCisgICAgdm9pZCByZW1vdmVOZXR3
b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKQogICAgIHsKICAgICAgICAgbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5yZW1v
dmUoaWRlbnRpZmllcik7CiAgICAgfQogCi0gICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrQWN0aXZp
dHlUcmFja2VyPiBzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFdlYkNvcmU6OlBhZ2VJZGVudGlm
aWVyLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJj
ZSk7Ci0gICAgdm9pZCBzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciByZXNvdXJjZUlELCBOZXR3b3JrQWN0aXZpdHlUcmFja2VyOjpDb21wbGV0aW9uQ29kZSk7
CisgICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBzdGFydFRyYWNraW5n
UmVzb3VyY2VMb2FkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgYm9vbCBpc1RvcFJlc291cmNlKTsKKyAgICB2b2lk
IHN0b3BUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUpOwog
CiAgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZlcmVuY2U+PiByZXNv
bHZlQmxvYlJlZmVyZW5jZXMoY29uc3QgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmKTsK
IApAQCAtMTg3LDEyICsxODYsMTIgQEAgcHVibGljOgogICAgIHZvaWQgY29va2llQWNjZXB0UG9s
aWN5Q2hhbmdlZChXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KTsKIAogICAgIHZvaWQg
YnJvYWRjYXN0Q29uc29sZU1lc3NhZ2UoSlNDOjpNZXNzYWdlU291cmNlLCBKU0M6Ok1lc3NhZ2VM
ZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKLSAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNl
TG9hZGVyPiB0YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElk
ZW50aWZpZXIpOworICAgIFJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+IHRha2VOZXR3b3Jr
UmVzb3VyY2VMb2FkZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogcHJp
dmF0ZToKICAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyhOZXR3b3JrUHJvY2VzcyYs
IFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCwgSVBDOjpDb25uZWN0
aW9uOjpJZGVudGlmaWVyKTsKIAotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50
NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpOworICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKTsKICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24qIHN0b3Jh
Z2VTZXNzaW9uKCk7CiAKICAgICAvLyBJUEM6OkNvbm5lY3Rpb246OkNsaWVudApAQCAtMjExLDE1
ICsyMTAsMTUgQEAgcHJpdmF0ZToKICAgICB2b2lkIGxvYWRQaW5nKE5ldHdvcmtSZXNvdXJjZUxv
YWRQYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCBzZW5kSDJQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8V1RGOjpTZWNvbmRzLCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yPiYmKT4mJik7Ci0gICAgdm9pZCBwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDx1aW50
NjRfdD4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzJiYpOwotICAgIHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZCh1aW50NjRfdCBsb2FkSWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBwcmVj
b25uZWN0VG8oc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYm
KTsKKyAgICB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKIAotICAgIHZv
aWQgcmVtb3ZlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdm9p
ZCByZW1vdmVMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
OwogICAgIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIpOwog
ICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBX
ZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyKTsKLSAgICB2
b2lkIGNyb3NzT3JpZ2luUmVkaXJlY3RSZWNlaXZlZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBj
b25zdCBVUkwmIHJlZGlyZWN0VVJMKTsKKyAgICB2b2lkIGNyb3NzT3JpZ2luUmVkaXJlY3RSZWNl
aXZlZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFVSTCYgcmVkaXJl
Y3RVUkwpOwogICAgIHZvaWQgc3RhcnREb3dubG9hZChEb3dubG9hZElELCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluPiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0geyB9KTsKLSAgICB2b2lkIGNvbnZl
cnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgRG93bmxvYWRJRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1Rv
QXBwQm91bmREb21haW4+KTsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIsIERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBzdGQ6Om9wdGlv
bmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPik7CiAKICAgICB2b2lkIHJlZ2lzdGVyVVJM
U2NoZW1lc0FzQ09SU0VuYWJsZWQoVmVjdG9yPFN0cmluZz4mJiBzY2hlbWVzKTsKIApAQCAtMzI3
LDcgKzMyNiw3IEBAIHByaXZhdGU6CiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFJl
c291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdl
SUQsIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCkKKyAgICAgICAgUmVzb3VyY2VO
ZXR3b3JrQWN0aXZpdHlUcmFja2VyKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQpCiAgICAgICAgICAgICA6
IHBhZ2VJRCB7IHBhZ2VJRCB9CiAgICAgICAgICAgICAsIHJlc291cmNlSUQgeyByZXNvdXJjZUlE
IH0KICAgICAgICAgICAgICwgbmV0d29ya0FjdGl2aXR5IHsgTmV0d29ya0FjdGl2aXR5VHJhY2tl
cjo6TGFiZWw6OkxvYWRSZXNvdXJjZSB9CkBAIC0zMzUsNyArMzM0LDcgQEAgcHJpdmF0ZToKICAg
ICAgICAgfQogCiAgICAgICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRDsKLSAgICAg
ICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlEIHsgMCB9OworICAgICAgICBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRDsKICAgICAgICAgYm9vbCBp
c1Jvb3RBY3Rpdml0eSB7IGZhbHNlIH07CiAgICAgICAgIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIg
bmV0d29ya0FjdGl2aXR5OwogICAgIH07CkBAIC0zNDMsMTIgKzM0MiwxMiBAQCBwcml2YXRlOgog
ICAgIHZvaWQgc3RvcEFsbE5ldHdvcmtBY3Rpdml0eVRyYWNraW5nKCk7CiAgICAgdm9pZCBzdG9w
QWxsTmV0d29ya0FjdGl2aXR5VHJhY2tpbmdGb3JQYWdlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVy
KTsKICAgICBzaXplX3QgZmluZFJvb3ROZXR3b3JrQWN0aXZpdHkoV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIpOwotICAgIHNpemVfdCBmaW5kTmV0d29ya0FjdGl2aXR5VHJhY2tlcihSZXNvdXJjZUxv
YWRJZGVudGlmaWVyIHJlc291cmNlSUQpOworICAgIHNpemVfdCBmaW5kTmV0d29ya0FjdGl2aXR5
VHJhY2tlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCk7CiAK
ICAgICB2b2lkIGhhc1VwbG9hZFN0YXRlQ2hhbmdlZChib29sKTsKIAogICAgIHZvaWQgc2V0UmVz
b3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6
OkxvYWRTY2hlZHVsaW5nTW9kZSk7Ci0gICAgdm9pZCBwcmlvcml0aXplUmVzb3VyY2VMb2FkcyhW
ZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pOworICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291
cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4m
KTsKIAogI2lmIEVOQUJMRShBUFBMRV9QQVlfUkVNT1RFX1VJKQogICAgIFdlYlBheW1lbnRDb29y
ZGluYXRvclByb3h5JiBwYXltZW50Q29vcmRpbmF0b3IoKTsKQEAgLTM3NSw3ICszNzQsNyBAQCBw
cml2YXRlOgogICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxl
UmVmZXJlbmNlPj4gbV9ibG9iRGF0YUZpbGVSZWZlcmVuY2VzOwogICAgIFZlY3RvcjxSZXNvdXJj
ZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IG1fbmV0d29ya0FjdGl2aXR5VHJhY2tlcnM7CiAKLSAg
ICBIYXNoTWFwPFJlc291cmNlTG9hZElkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3Jl
OjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uPj4gbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRDsK
KyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgc3RkOjp1bmlx
dWVfcHRyPFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24+PiBtX25ldHdvcmtMb2FkSW5m
b3JtYXRpb25CeUlEOwogCiAKICNpZiBVU0UoTElCV0VCUlRDKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNz
YWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggMTVkYTZhYmZjNTM4NjlmZDQzODYyNDc2OTZm
ZWE1MTFiNmE5ZGI5Mi4uNzY4MmJhOWJiMjlmZjZmMDhlYmViYjk0M2ZjODk0NTQ2NzM0YzJlNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0yNiwxNiAr
MjYsMTYgQEAgbWVzc2FnZXMgLT4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgTGVnYWN5
UmVjZWl2ZXIgewogICAgIFBlcmZvcm1TeW5jaHJvbm91c0xvYWQoV2ViS2l0OjpOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyByZXNvdXJjZUxvYWRQYXJhbWV0ZXJzKSAtPiAoV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciBlcnJvciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwg
VmVjdG9yPHVpbnQ4X3Q+IGRhdGEpIFN5bmNocm9ub3VzCiAgICAgVGVzdFByb2Nlc3NJbmNvbWlu
Z1N5bmNNZXNzYWdlc1doZW5XYWl0aW5nRm9yU3luY1JlcGx5KFdlYktpdDo6V2ViUGFnZVByb3h5
SWRlbnRpZmllciBwYWdlSUQpIC0+IChib29sIGhhbmRsZWQpIFN5bmNocm9ub3VzCiAgICAgTG9h
ZFBpbmcoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyByZXNvdXJjZUxvYWRQ
YXJhbWV0ZXJzKQotICAgIFJlbW92ZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9h
ZElkZW50aWZpZXIpCisgICAgUmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIpCiAgICAgUGFnZUxvYWRDb21w
bGV0ZWQoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlEKQogICAgIEJyb3dzaW5nQ29u
dGV4dFJlbW92ZWQoV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHdlYlBhZ2VQcm94eUlE
LCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIFdlYkNvcmU6OkZyYW1lSWRlbnRp
ZmllciB3ZWJGcmFtZUlEKQogICAgIFByZWZldGNoRE5TKFN0cmluZyBob3N0bmFtZSkKICAgICBT
ZW5kSDJQaW5nKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcGFyYW1ldGVy
cykgLT4gKEV4cGVjdGVkPFNlY29uZHMsIFdlYkNvcmU6OlJlc291cmNlRXJyb3I+IHJlc3VsdCkg
QXN5bmMKLSAgICBQcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVj
dGlvbklkZW50aWZpZXIsIFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgbG9h
ZFBhcmFtZXRlcnMpOwotICAgIElzUmVzb3VyY2VMb2FkRmluaXNoZWQodWludDY0X3QgcmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcikgLT4gKGJvb2wgaXNGaW5pc2hlZCkgQXN5bmMKKyAgICBQcmVjb25u
ZWN0VG8oc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHBy
ZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKKyAgICBJc1Jlc291cmNlTG9hZEZpbmlzaGVkKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoYm9v
bCBpc0ZpbmlzaGVkKSBBc3luYwogCiAgICAgU3RhcnREb3dubG9hZChXZWJLaXQ6OkRvd25sb2Fk
SUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIGVudW06Ym9v
bCBzdGQ6Om9wdGlvbmFsPFdlYktpdDo6TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2
aWdhdGluZ1RvQXBwQm91bmREb21haW4sIFN0cmluZyBzdWdnZXN0ZWROYW1lKQotICAgIENvbnZl
cnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgV2ViS2l0OjpEb3dubG9hZElEIGRvd25sb2FkSUQsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCByZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBlbnVt
OmJvb2wgc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBp
c05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKQorICAgIENvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIFdlYktpdDo6RG93bmxvYWRJRCBkb3dubG9h
ZElELCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSwgZW51bTpib29sIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikKIAogICAg
IENvb2tpZXNGb3JET00oVVJMIGZpcnN0UGFydHksIHN0cnVjdCBXZWJDb3JlOjpTYW1lU2l0ZUlu
Zm8gc2FtZVNpdGVJbmZvLCBVUkwgdXJsLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlELCBlbnVtOmJvb2wgV2ViQ29yZTo6SW5j
bHVkZVNlY3VyZUNvb2tpZXMgaW5jbHVkZVNlY3VyZUNvb2tpZXMsIGVudW06Ym9vbCBXZWJDb3Jl
OjpTaG91bGRBc2tJVFAgc2hvdWxkQXNrSVRQLCBlbnVtOmJvb2wgV2ViQ29yZTo6U2hvdWxkUmVs
YXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxv
Y2tpbmcpIC0+IChTdHJpbmcgY29va2llU3RyaW5nLCBib29sIGRpZEFjY2Vzc1NlY3VyZUNvb2tp
ZXMpIFN5bmNocm9ub3VzCiAgICAgU2V0Q29va2llc0Zyb21ET00oVVJMIGZpcnN0UGFydHksIHN0
cnVjdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8gc2FtZVNpdGVJbmZvLCBVUkwgdXJsLCBXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlE
LCBlbnVtOmJvb2wgV2ViQ29yZTo6U2hvdWxkQXNrSVRQIHNob3VsZEFza0lUUCwgU3RyaW5nIGNv
b2tpZVN0cmluZywgZW51bTpib29sIFdlYkNvcmU6OlNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tp
ZUJsb2NraW5nIHNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKQpAQCAtNzksOSAr
NzksOSBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyBMZWdhY3lS
ZWNlaXZlciB7CiAgICAgUmVtb3ZlT3JpZ2luQWNjZXNzQWxsb3dMaXN0RW50cnkoU3RyaW5nIHNv
dXJjZU9yaWdpbiwgU3RyaW5nIGRlc3RpbmF0aW9uUHJvdG9jb2wsIFN0cmluZyBkZXN0aW5hdGlv
bkhvc3QsIGJvb2wgYWxsb3dEZXN0aW5hdGlvblN1YmRvbWFpbnMpOwogICAgIFJlc2V0T3JpZ2lu
QWNjZXNzQWxsb3dMaXN0cygpOwogCi0gICAgR2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3Bv
bnNlKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlIHJlc3BvbnNlKSBTeW5jaHJvbm91cwotICAgIEdldE5ldHdvcmtMb2FkSW50ZXJt
ZWRpYXRlSW5mb3JtYXRpb24odWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFZl
Y3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gdHJhbnNhY3Rpb25z
KSBTeW5jaHJvbm91cwotICAgIFRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyh1aW50
NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRy
aWNzIG5ldHdvcmtNZXRyaWNzKSBTeW5jaHJvbm91cworICAgIEdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VM
b2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpIFN5
bmNocm9ub3VzCisgICAgR2V0TmV0d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbihXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4g
KFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gdHJhbnNhY3Rp
b25zKSBTeW5jaHJvbm91cworICAgIFRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikg
LT4gKFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljcykgU3luY2hyb25v
dXMKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBFc3RhYmxpc2hTV0NvbnRleHRD
b25uZWN0aW9uKFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJveHlJRCwg
V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gZG9tYWluKSAtPiAoKSBBc3luYwpAQCAtMTA4LDUg
KzEwOCw1IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzIExlZ2Fj
eVJlY2VpdmVyIHsKICAgICBVcGRhdGVBY3RpdmVQYWdlcyhTdHJpbmcgbmFtZSwgVmVjdG9yPFN0
cmluZz4gYWN0aXZlUGFnZXNPcmlnaW5zLCBhdWRpdF90b2tlbl90IGF1ZGl0VG9rZW4pCiAjZW5k
aWYKICAgICBTZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciB3ZWJQYWdlSUQsIGVudW06dWludDhfdCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUg
bW9kZSkKLSAgICBQcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8dWludDY0X3Q+IGxvYWRJ
ZGVudGlmaWVycykKKyAgICBQcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8V2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBsb2FkSWRlbnRpZmllcnMpCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCmluZGV4IDRkY2IzMmNk
Yjc1NzU2NGJmYjAyMzQ1NWY5ZmZjYmFhYjNkZjYxZmMuLmMzMzMyMDdhNzY2NWIxYjNlNzQ2Yzk2
OTI5MjY0YmFmZGY4Y2NjNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Byb2Nlc3MuY3BwCkBAIC0yODQxLDkgKzI4NDEsMTIgQEAgUlRDRGF0YUNoYW5uZWxS
ZW1vdGVNYW5hZ2VyUHJveHkmIE5ldHdvcmtQcm9jZXNzOjpydGNEYXRhQ2hhbm5lbFByb3h5KCkK
IH0KICNlbmRpZgogCi12b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlTG9hZEZvcldlYlByb2Nl
c3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRp
ZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlTG9hZEZvcldlYlBy
b2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRl
bnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+
IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRp
b25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQogewotICAgIEFTU0VSVChyZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBpZiAoIXJlc291
cmNlTG9hZElkZW50aWZpZXIpIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOworICAgIH0KICAgICBh
dXRvKiBjb25uZWN0aW9uID0gd2ViUHJvY2Vzc0Nvbm5lY3Rpb24oc291cmNlUHJvY2Vzc0lkZW50
aWZpZXIpOwogICAgIGlmICghY29ubmVjdGlvbikKICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKHN0ZDo6bnVsbG9wdCk7CkBAIC0yODUyLDcgKzI4NTUsNyBAQCB2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNz
SWRlbnRpZmllcgogICAgIGlmICghc2Vzc2lvbikKICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKHN0ZDo6bnVsbG9wdCk7CiAKLSAgICBhdXRvIGxvYWRlciA9IGNvbm5lY3Rpb24tPnRh
a2VOZXR3b3JrUmVzb3VyY2VMb2FkZXIocmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgYXV0
byBsb2FkZXIgPSBjb25uZWN0aW9uLT50YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKCpyZXNvdXJj
ZUxvYWRJZGVudGlmaWVyKTsKICAgICBpZiAoIWxvYWRlcikKICAgICAgICAgcmV0dXJuIGNvbXBs
ZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwLm9yaWcgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcC5vcmlnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRkY2IzMmNk
Yjc1NzU2NGJmYjAyMzQ1NWY5ZmZjYmFhYjNkZjYxZmMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcC5vcmlnCkBAIC0wLDAg
KzEsMjg5MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMi0yMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxOCBTb255IEludGVyYWN0aXZl
IEVudGVydGFpbm1lbnQgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5j
bHVkZSAiTmV0d29ya1Byb2Nlc3MuaCIKKworI2luY2x1ZGUgIkFyZ3VtZW50Q29kZXJzLmgiCisj
aW5jbHVkZSAiQXR0YWNobWVudC5oIgorI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5o
IgorI2luY2x1ZGUgIkF1eGlsaWFyeVByb2Nlc3NNZXNzYWdlcy5oIgorI2luY2x1ZGUgIkRhdGFS
ZWZlcmVuY2UuaCIKKyNpbmNsdWRlICJEb3dubG9hZC5oIgorI2luY2x1ZGUgIkRvd25sb2FkUHJv
eHlNZXNzYWdlcy5oIgorI2lmIEVOQUJMRShMRUdBQ1lfQ1VTVE9NX1BST1RPQ09MX01BTkFHRVIp
CisjaW5jbHVkZSAiTGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyLmgiCisjZW5kaWYKKyNpbmNs
dWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aCIKKyNpbmNsdWRlICJOZXR3b3JrQ29udGVudFJ1bGVMaXN0TWFuYWdlck1lc3NhZ2VzLmgiCisj
aW5jbHVkZSAiTmV0d29ya0xvYWQuaCIKKyNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oIgorI2luY2x1ZGUgIk5ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVz
LmgiCisjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3NQcm94eU1lc3NhZ2VzLmgiCisjaW5jbHVkZSAi
TmV0d29ya1Jlc291cmNlTG9hZGVyLmgiCisjaW5jbHVkZSAiTmV0d29ya1Nlc3Npb24uaCIKKyNp
bmNsdWRlICJOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5oIgorI2luY2x1ZGUgIk5l
dHdvcmtTdG9yYWdlTWFuYWdlci5oIgorI2luY2x1ZGUgIlByZWNvbm5lY3RUYXNrLmgiCisjaW5j
bHVkZSAiUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRTdG9yZS5oIgorI2luY2x1ZGUgIlJlbW90ZU5l
dHdvcmtpbmdDb250ZXh0LmgiCisjaW5jbHVkZSAiU2hvdWxkR3JhbmRmYXRoZXJTdGF0aXN0aWNz
LmgiCisjaW5jbHVkZSAiU3RvcmFnZUFjY2Vzc1N0YXR1cy5oIgorI2luY2x1ZGUgIlN0b3JhZ2VN
YW5hZ2VyU2V0LmgiCisjaW5jbHVkZSAiV2ViQ29va2llTWFuYWdlci5oIgorI2luY2x1ZGUgIldl
YlBhZ2VQcm94eU1lc3NhZ2VzLmgiCisjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2xNZXNzYWdlcy5o
IgorI2luY2x1ZGUgIldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIgorI2luY2x1ZGUg
IldlYlNXT3JpZ2luU3RvcmUuaCIKKyNpbmNsdWRlICJXZWJTV1NlcnZlckNvbm5lY3Rpb24uaCIK
KyNpbmNsdWRlICJXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaCIKKyNpbmNsdWRlICJX
ZWJzaXRlRGF0YUZldGNoT3B0aW9uLmgiCisjaW5jbHVkZSAiV2Vic2l0ZURhdGFTdG9yZS5oIgor
I2luY2x1ZGUgIldlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzLmgiCisjaW5jbHVkZSAiV2Vic2l0
ZURhdGFUeXBlLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KKyNpbmNsdWRl
IDxXZWJDb3JlL0Nvb2tpZUphci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRE5TLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9EZXByZWNhdGVkR2xvYmFsU2V0dGluZ3MuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L0RpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9IVFRQQ29va2ll
QWNjZXB0UG9saWN5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9MZWdhY3lTY2hlbWVSZWdpc3RyeS5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvTG9nSW5pdGlhbGl6YXRpb24uaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL01JTUVUeXBlUmVnaXN0cnkuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL05ldHdvcmtTdGF0ZU5v
dGlmaWVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUnVu
dGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgorI2luY2x1
ZGUgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW5EYXRhLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TdG9y
YWdlUXVvdGFNYW5hZ2VyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudFVSTFBhdHRl
cm4uaD4KKyNpbmNsdWRlIDx3dGYvQWxnb3JpdGhtcy5oPgorI2luY2x1ZGUgPHd0Zi9DYWxsYmFj
a0FnZ3JlZ2F0b3IuaD4KKyNpbmNsdWRlIDx3dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1i
ZXIuaD4KKyNpbmNsdWRlIDx3dGYvT3B0aW9uU2V0Lmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NQ
cml2aWxlZ2UuaD4KKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgorI2luY2x1ZGUgPHd0Zi9VVUlE
Lmg+CisjaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21T
dHJpbmcuaD4KKworI2lmIEVOQUJMRShTRUNfSVRFTV9TSElNKQorI2luY2x1ZGUgIlNlY0l0ZW1T
aGltLmgiCisjZW5kaWYKKworI2luY2x1ZGUgIk5ldHdvcmtDYWNoZS5oIgorI2luY2x1ZGUgIk5l
dHdvcmtDYWNoZUNvZGVycy5oIgorCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiTGF1
bmNoU2VydmljZXNEYXRhYmFzZU9ic2VydmVyLmgiCisjaW5jbHVkZSAiTmV0d29ya1Nlc3Npb25D
b2NvYS5oIgorI2VuZGlmCisKKyNpZiBVU0UoU09VUCkKKyNpbmNsdWRlICJOZXR3b3JrU2Vzc2lv
blNvdXAuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1NvdXBOZXR3b3JrU2Vzc2lvbi5oPgorI2VuZGlm
CisKKyNpZiBVU0UoQ1VSTCkKKyNpbmNsdWRlIDxXZWJDb3JlL0N1cmxDb250ZXh0Lmg+CisjZW5k
aWYKKworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyNpbmNsdWRlICJXZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb25NZXNzYWdlcy5oIgorI2VuZGlmCisKK25hbWVzcGFjZSBXZWJLaXQg
ewordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CisKK3N0YXRpYyB2b2lkIGNhbGxFeGl0U29vbihJ
UEM6OkNvbm5lY3Rpb24qKQoreworICAgIC8vIElmIHRoZSBjb25uZWN0aW9uIGhhcyBiZWVuIGNs
b3NlZCBhbmQgd2UgaGF2ZW4ndCByZXNwb25kZWQgaW4gdGhlIG1haW4gdGhyZWFkIGZvciAxMCBz
ZWNvbmRzCisgICAgLy8gdGhlIHByb2Nlc3Mgd2lsbCBleGl0IGZvcmNpYmx5LgorICAgIGF1dG8g
d2F0Y2hkb2dEZWxheSA9IDEwX3M7CisKKyAgICBXb3JrUXVldWU6OmNyZWF0ZSgiY29tLmFwcGxl
LldlYktpdC5OZXR3b3JrUHJvY2Vzcy5XYXRjaERvZ1F1ZXVlIiktPmRpc3BhdGNoQWZ0ZXIod2F0
Y2hkb2dEZWxheSwgW10geworICAgICAgICAvLyBXZSB1c2UgX2V4aXQgaGVyZSBzaW5jZSB0aGUg
d2F0Y2hkb2cgY2FsbGJhY2sgaXMgY2FsbGVkIGZyb20gYW5vdGhlciB0aHJlYWQgYW5kIHdlIGRv
bid0IHdhbnQKKyAgICAgICAgLy8gZ2xvYmFsIGRlc3RydWN0b3JzIG9yIGF0ZXhpdCBoYW5kbGVy
cyB0byBiZSBjYWxsZWQgZnJvbSB0aGlzIHRocmVhZCB3aGlsZSB0aGUgbWFpbiB0aHJlYWQgaXMg
YnVzeQorICAgICAgICAvLyBkb2luZyBpdHMgdGhpbmcuCisgICAgICAgIFJFTEVBU0VfTE9HX0VS
Uk9SKElQQywgIkV4aXRpbmcgcHJvY2VzcyBlYXJseSBkdWUgdG8gdW5hY2tub3dsZWRnZWQgY2xv
c2VkLWNvbm5lY3Rpb24iKTsKKyNpZiBPUyhXSU5ET1dTKQorICAgICAgICAvLyBDYWxsaW5nIF9l
eGl0IGluIG5vbi1tYWluIHRocmVhZHMgbWF5IGNhdXNlIGEgZGVhZGxvY2sgaW4gV1RGOjpUaHJl
YWQ6OlRocmVhZEhvbGRlcjo6flRocmVhZEhvbGRlci4KKyAgICAgICAgVGVybWluYXRlUHJvY2Vz
cyhHZXRDdXJyZW50UHJvY2VzcygpLCBFWElUX0ZBSUxVUkUpOworI2Vsc2UKKyAgICAgICAgX2V4
aXQoRVhJVF9GQUlMVVJFKTsKKyNlbmRpZgorICAgIH0pOworfQorCitzdGF0aWMgaW5saW5lIE1l
c3NhZ2VQb3J0Q2hhbm5lbFJlZ2lzdHJ5IGNyZWF0ZU1lc3NhZ2VQb3J0Q2hhbm5lbFJlZ2lzdHJ5
KE5ldHdvcmtQcm9jZXNzJiBuZXR3b3JrUHJvY2VzcykKK3sKKyAgICByZXR1cm4gTWVzc2FnZVBv
cnRDaGFubmVsUmVnaXN0cnkgeyBbJm5ldHdvcmtQcm9jZXNzXShhdXRvJiBtZXNzYWdlUG9ydElk
ZW50aWZpZXIsIGF1dG8gcHJvY2Vzc0lkZW50aWZpZXIsIGF1dG8mJiBjb21wbGV0aW9uSGFuZGxl
cikgeworICAgICAgICBhdXRvKiBjb25uZWN0aW9uID0gbmV0d29ya1Byb2Nlc3Mud2ViUHJvY2Vz
c0Nvbm5lY3Rpb24ocHJvY2Vzc0lkZW50aWZpZXIpOworICAgICAgICBpZiAoIWNvbm5lY3Rpb24p
IHsKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3Zp
ZGVyOjpIYXNBY3Rpdml0eTo6Tm8pOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisK
KyAgICAgICAgY29ubmVjdGlvbi0+Y2hlY2tQcm9jZXNzTG9jYWxQb3J0Rm9yQWN0aXZpdHkobWVz
c2FnZVBvcnRJZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgfSB9
OworfQorCitOZXR3b3JrUHJvY2Vzczo6TmV0d29ya1Byb2Nlc3MoQXV4aWxpYXJ5UHJvY2Vzc0lu
aXRpYWxpemF0aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCisgICAgOiBtX2Rvd25sb2FkTWFu
YWdlcigqdGhpcykKKyAgICAsIG1fc3RvcmFnZU1hbmFnZXJTZXQoU3RvcmFnZU1hbmFnZXJTZXQ6
OmNyZWF0ZSgpKQorI2lmIEVOQUJMRShDT05URU5UX0VYVEVOU0lPTlMpCisgICAgLCBtX25ldHdv
cmtDb250ZW50UnVsZUxpc3RNYW5hZ2VyKCp0aGlzKQorI2VuZGlmCisjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKyAgICAsIG1fd2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyKFt0aGlzXShib29sIGlz
SG9sZGluZ0xvY2tlZEZpbGVzKSB7IHNldElzSG9sZGluZ0xvY2tlZEZpbGVzKGlzSG9sZGluZ0xv
Y2tlZEZpbGVzKTsgfSkKKyNlbmRpZgorICAgICwgbV9tZXNzYWdlUG9ydENoYW5uZWxSZWdpc3Ry
eShjcmVhdGVNZXNzYWdlUG9ydENoYW5uZWxSZWdpc3RyeSgqdGhpcykpCit7CisgICAgTmV0d29y
a1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXM6OmluaXRpYWxpemUoKTsKKworICAgIGFkZFN1cHBs
ZW1lbnQ8QXV0aGVudGljYXRpb25NYW5hZ2VyPigpOworICAgIGFkZFN1cHBsZW1lbnQ8V2ViQ29v
a2llTWFuYWdlcj4oKTsKKyNpZiBFTkFCTEUoTEVHQUNZX0NVU1RPTV9QUk9UT0NPTF9NQU5BR0VS
KQorICAgIGFkZFN1cHBsZW1lbnQ8TGVnYWN5Q3VzdG9tUHJvdG9jb2xNYW5hZ2VyPigpOworI2Vu
ZGlmCisjaWYgSEFWRShMU0RBVEFCQVNFQ09OVEVYVCkKKyAgICBhZGRTdXBwbGVtZW50PExhdW5j
aFNlcnZpY2VzRGF0YWJhc2VPYnNlcnZlcj4oKTsKKyNlbmRpZgorI2lmIFBMQVRGT1JNKENPQ09B
KSAmJiBFTkFCTEUoTEVHQUNZX0NVU1RPTV9QUk9UT0NPTF9NQU5BR0VSKQorICAgIExlZ2FjeUN1
c3RvbVByb3RvY29sTWFuYWdlcjo6bmV0d29ya1Byb2Nlc3NDcmVhdGVkKCp0aGlzKTsKKyNlbmRp
ZgorCisgICAgTmV0d29ya1N0YXRlTm90aWZpZXI6OnNpbmdsZXRvbigpLmFkZExpc3RlbmVyKFt3
ZWFrVGhpcyA9IG1ha2VXZWFrUHRyKCp0aGlzKV0oYm9vbCBpc09uTGluZSkgeworICAgICAgICBp
ZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKGF1dG8mIHdl
YlByb2Nlc3NDb25uZWN0aW9uIDogd2Vha1RoaXMtPm1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb25zLnZh
bHVlcygpKQorICAgICAgICAgICAgd2ViUHJvY2Vzc0Nvbm5lY3Rpb24tPnNldE9uTGluZVN0YXRl
KGlzT25MaW5lKTsKKyAgICB9KTsKKworICAgIGluaXRpYWxpemUoV1RGTW92ZShwYXJhbWV0ZXJz
KSk7Cit9CisKK05ldHdvcmtQcm9jZXNzOjp+TmV0d29ya1Byb2Nlc3MoKQoreworICAgIGZvciAo
YXV0byYgY2FsbGJhY2tzIDogbV9jYWNoZVN0b3JhZ2VQYXJhbWV0ZXJzQ2FsbGJhY2tzLnZhbHVl
cygpKSB7CisgICAgICAgIGZvciAoYXV0byYgY2FsbGJhY2sgOiBjYWxsYmFja3MpCisgICAgICAg
ICAgICBjYWxsYmFjayhTdHJpbmcgeyB9KTsKKyAgICB9Cit9CisKK0F1dGhlbnRpY2F0aW9uTWFu
YWdlciYgTmV0d29ya1Byb2Nlc3M6OmF1dGhlbnRpY2F0aW9uTWFuYWdlcigpCit7CisgICAgcmV0
dXJuICpzdXBwbGVtZW50PEF1dGhlbnRpY2F0aW9uTWFuYWdlcj4oKTsKK30KKworRG93bmxvYWRN
YW5hZ2VyJiBOZXR3b3JrUHJvY2Vzczo6ZG93bmxvYWRNYW5hZ2VyKCkKK3sKKyAgICByZXR1cm4g
bV9kb3dubG9hZE1hbmFnZXI7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZU5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBj
b25uZWN0aW9uKQoreworICAgIEFTU0VSVChtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy5jb250YWlu
cyhjb25uZWN0aW9uLndlYlByb2Nlc3NJZGVudGlmaWVyKCkpKTsKKyAgICBtX3dlYlByb2Nlc3ND
b25uZWN0aW9ucy5yZW1vdmUoY29ubmVjdGlvbi53ZWJQcm9jZXNzSWRlbnRpZmllcigpKTsKK30K
KworYm9vbCBOZXR3b3JrUHJvY2Vzczo6c2hvdWxkVGVybWluYXRlKCkKK3sKKyAgICAvLyBOZXR3
b3JrIHByb2Nlc3Mga2VlcHMgc2Vzc2lvbiBjb29raWVzIGFuZCBjcmVkZW50aWFscywgc28gaXQg
c2hvdWxkIG5ldmVyIHRlcm1pbmF0ZSAoYXMgbG9uZyBhcyBVSSBwcm9jZXNzIGNvbm5lY3Rpb24g
aXMgYWxpdmUpLgorICAgIHJldHVybiBmYWxzZTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6
ZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRlY29k
ZXImIGRlY29kZXIpCit7CisgICAgQVNTRVJUKHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkgPT0g
JmNvbm5lY3Rpb24pOworICAgIGlmIChwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpICE9ICZjb25u
ZWN0aW9uKSB7CisgICAgICAgIFdURkxvZ0Fsd2F5cygiSWdub3JlZCBtZXNzYWdlICclcycgYmVj
YXVzZSBpdCBkaWQgbm90IGNvbWUgZnJvbSB0aGUgVUlQcm9jZXNzIChkZXN0aW5hdGlvbj0lIiBQ
Ukl1NjQgIikiLCBkZXNjcmlwdGlvbihkZWNvZGVyLm1lc3NhZ2VOYW1lKCkpLCBkZWNvZGVyLmRl
c3RpbmF0aW9uSUQoKSk7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgaWYgKG1lc3NhZ2VSZWNlaXZlck1hcCgpLmRpc3BhdGNoTWVz
c2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpBdXhpbGlhcnlQcm9jZXNz
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKKyAgICAgICAgQXV4aWxpYXJ5UHJvY2Vzczo6ZGlk
UmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQorICAgIGlmIChkZWNvZGVyLm1l
c3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6TmV0d29ya0NvbnRlbnRSdWxlTGlzdE1h
bmFnZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgeworICAgICAgICBtX25ldHdvcmtDb250ZW50
UnVsZUxpc3RNYW5hZ2VyLmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwor
ICAgICAgICByZXR1cm47CisgICAgfQorI2VuZGlmCisKKyAgICBkaWRSZWNlaXZlTmV0d29ya1By
b2Nlc3NNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOworfQorCitib29sIE5ldHdvcmtQcm9j
ZXNzOjpkaWRSZWNlaXZlU3luY01lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJ
UEM6OkRlY29kZXImIGRlY29kZXIsIFVuaXF1ZVJlZjxJUEM6OkVuY29kZXI+JiByZXBseUVuY29k
ZXIpCit7CisgICAgQVNTRVJUKHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkgPT0gJmNvbm5lY3Rp
b24pOworICAgIGlmIChwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpICE9ICZjb25uZWN0aW9uKSB7
CisgICAgICAgIFdURkxvZ0Fsd2F5cygiSWdub3JlZCBtZXNzYWdlICclcycgYmVjYXVzZSBpdCBk
aWQgbm90IGNvbWUgZnJvbSB0aGUgVUlQcm9jZXNzIChkZXN0aW5hdGlvbj0lIiBQUkl1NjQgIiki
LCBkZXNjcmlwdGlvbihkZWNvZGVyLm1lc3NhZ2VOYW1lKCkpLCBkZWNvZGVyLmRlc3RpbmF0aW9u
SUQoKSk7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgfQorCisgICAgaWYgKG1lc3NhZ2VSZWNlaXZlck1hcCgpLmRpc3BhdGNoU3luY01l
c3NhZ2UoY29ubmVjdGlvbiwgZGVjb2RlciwgcmVwbHlFbmNvZGVyKSkKKyAgICAgICAgcmV0dXJu
IHRydWU7CisKKyAgICByZXR1cm4gZGlkUmVjZWl2ZVN5bmNOZXR3b3JrUHJvY2Vzc01lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2RlciwgcmVwbHlFbmNvZGVyKTsKK30KKwordm9pZCBOZXR3b3JrUHJv
Y2Vzczo6ZGlkQ2xvc2UoSVBDOjpDb25uZWN0aW9uJikKK3sKKyAgICBBU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOworCisgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBDYWxsYmFja0FnZ3Jl
Z2F0b3I6OmNyZWF0ZShbdGhpc10geworICAgICAgICBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OworICAgICAgICBzdG9wUnVuTG9vcCgpOworICAgIH0pOworCisgICAgLy8gTWFrZSBzdXJlIHdl
IGZsdXNoIGFsbCBjb29raWVzIHRvIGRpc2sgYmVmb3JlIGV4aXRpbmcuCisgICAgZm9yRWFjaE5l
dHdvcmtTZXNzaW9uKFsmXSAoYXV0byYgbmV0d29ya1Nlc3Npb24pIHsKKyAgICAgICAgcGxhdGZv
cm1GbHVzaENvb2tpZXMobmV0d29ya1Nlc3Npb24uc2Vzc2lvbklEKCksIFtjYWxsYmFja0FnZ3Jl
Z2F0b3JdIHsgfSk7CisgICAgfSk7CisKKyAgICAvLyBNYWtlIHN1cmUgcmVmZXJlbmNlIHRvIE5l
dHdvcmtQcm9jZXNzIGluIHNwYWNlUmVxdWVzdGVyIGlzIHJlbW92ZWQuCisgICAgYXV0byBzZXJ2
ZXJzID0gc3RkOjpleGNoYW5nZShtX3dlYklEQlNlcnZlcnMsIHsgfSk7CisgICAgZm9yIChhdXRv
JiBzZXJ2ZXIgOiBzZXJ2ZXJzLnZhbHVlcygpKQorICAgICAgICBzZXJ2ZXItPmNsb3NlKFtjYWxs
YmFja0FnZ3JlZ2F0b3JdIHsgfSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmRpZENyZWF0
ZURvd25sb2FkKCkKK3sKKyAgICBkaXNhYmxlVGVybWluYXRpb24oKTsKK30KKwordm9pZCBOZXR3
b3JrUHJvY2Vzczo6ZGlkRGVzdHJveURvd25sb2FkKCkKK3sKKyAgICBlbmFibGVUZXJtaW5hdGlv
bigpOworfQorCitJUEM6OkNvbm5lY3Rpb24qIE5ldHdvcmtQcm9jZXNzOjpkb3dubG9hZFByb3h5
Q29ubmVjdGlvbigpCit7CisgICAgcmV0dXJuIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCk7Cit9
CisKK0F1dGhlbnRpY2F0aW9uTWFuYWdlciYgTmV0d29ya1Byb2Nlc3M6OmRvd25sb2Fkc0F1dGhl
bnRpY2F0aW9uTWFuYWdlcigpCit7CisgICAgcmV0dXJuIGF1dGhlbnRpY2F0aW9uTWFuYWdlcigp
OworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpsb3dNZW1vcnlIYW5kbGVyKENyaXRpY2FsIGNy
aXRpY2FsKQoreworICAgIGlmIChtX3N1cHByZXNzTWVtb3J5UHJlc3N1cmVIYW5kbGVyKQorICAg
ICAgICByZXR1cm47CisKKyAgICBXVEY6OnJlbGVhc2VGYXN0TWFsbG9jRnJlZU1lbW9yeSgpOwor
CisgICAgZm9yRWFjaE5ldHdvcmtTZXNzaW9uKFtdKGF1dG8mIG5ldHdvcmtTZXNzaW9uKSB7Cisg
ICAgICAgIG5ldHdvcmtTZXNzaW9uLmNsZWFyUHJlZmV0Y2hDYWNoZSgpOworICAgIH0pOworCisg
ICAgbV9zdG9yYWdlTWFuYWdlclNldC0+aGFuZGxlTG93TWVtb3J5V2FybmluZygpOworCisjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGZvciAoYXV0byYgc3dTZXJ2ZXIgOiBtX3N3U2Vy
dmVycy52YWx1ZXMoKSkKKyAgICAgICAgc3dTZXJ2ZXItPmhhbmRsZUxvd01lbW9yeVdhcm5pbmco
KTsKKyNlbmRpZgorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjppbml0aWFsaXplTmV0d29ya1By
b2Nlc3MoTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQorewor
I2lmIEhBVkUoU0VDX0tFWV9QUk9YWSkKKyAgICBXVEY6OnNldFByb2Nlc3NQcml2aWxlZ2VzKHsg
UHJvY2Vzc1ByaXZpbGVnZTo6Q2FuQWNjZXNzUmF3Q29va2llcyB9KTsKKyNlbHNlCisgICAgV1RG
OjpzZXRQcm9jZXNzUHJpdmlsZWdlcyh7IFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc1Jhd0Nv
b2tpZXMsIFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc0NyZWRlbnRpYWxzIH0pOworI2VuZGlm
CisgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpwZXJtaXRQcm9jZXNzVG9Vc2VD
b29raWVBUEkodHJ1ZSk7CisgICAgcGxhdGZvcm1Jbml0aWFsaXplTmV0d29ya1Byb2Nlc3MocGFy
YW1ldGVycyk7CisKKyAgICBXVEY6OlRocmVhZDo6c2V0Q3VycmVudFRocmVhZElzVXNlckluaXRp
YXRlZCgpOworICAgIEF0b21TdHJpbmc6OmluaXQoKTsKKworICAgIG1fc3VwcHJlc3NNZW1vcnlQ
cmVzc3VyZUhhbmRsZXIgPSBwYXJhbWV0ZXJzLnNob3VsZFN1cHByZXNzTWVtb3J5UHJlc3N1cmVI
YW5kbGVyOworICAgIGlmICghbV9zdXBwcmVzc01lbW9yeVByZXNzdXJlSGFuZGxlcikgeworICAg
ICAgICBhdXRvJiBtZW1vcnlQcmVzc3VyZUhhbmRsZXIgPSBNZW1vcnlQcmVzc3VyZUhhbmRsZXI6
OnNpbmdsZXRvbigpOworICAgICAgICBtZW1vcnlQcmVzc3VyZUhhbmRsZXIuc2V0TG93TWVtb3J5
SGFuZGxlcihbdGhpc10gKENyaXRpY2FsIGNyaXRpY2FsLCBTeW5jaHJvbm91cykgeworICAgICAg
ICAgICAgbG93TWVtb3J5SGFuZGxlcihjcml0aWNhbCk7CisgICAgICAgIH0pOworICAgICAgICBt
ZW1vcnlQcmVzc3VyZUhhbmRsZXIuaW5zdGFsbCgpOworICAgIH0KKworICAgIHNldENhY2hlTW9k
ZWwocGFyYW1ldGVycy5jYWNoZU1vZGVsKTsKKworICAgIHNldFByaXZhdGVDbGlja01lYXN1cmVt
ZW50RW5hYmxlZChwYXJhbWV0ZXJzLmVuYWJsZVByaXZhdGVDbGlja01lYXN1cmVtZW50KTsKKyAg
ICBzZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudERlYnVnTW9kZShwYXJhbWV0ZXJzLmVuYWJsZVBy
aXZhdGVDbGlja01lYXN1cmVtZW50RGVidWdNb2RlKTsKKworICAgIGZvciAoYXV0byYgc3VwcGxl
bWVudCA6IG1fc3VwcGxlbWVudHMudmFsdWVzKCkpCisgICAgICAgIHN1cHBsZW1lbnQtPmluaXRp
YWxpemUocGFyYW1ldGVycyk7CisKKyAgICBmb3IgKGF1dG8mIHNjaGVtZSA6IHBhcmFtZXRlcnMu
dXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZSkKKyAgICAgICAgcmVnaXN0ZXJVUkxTY2hlbWVB
c1NlY3VyZShzY2hlbWUpOworCisgICAgZm9yIChhdXRvJiBzY2hlbWUgOiBwYXJhbWV0ZXJzLnVy
bFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpCisgICAg
ICAgIHJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koc2No
ZW1lKTsKKworICAgIGZvciAoYXV0byYgc2NoZW1lIDogcGFyYW1ldGVycy51cmxTY2hlbWVzUmVn
aXN0ZXJlZEFzTG9jYWwpCisgICAgICAgIHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbChzY2hlbWUp
OworCisgICAgZm9yIChhdXRvJiBzY2hlbWUgOiBwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3Rl
cmVkQXNOb0FjY2VzcykKKyAgICAgICAgcmVnaXN0ZXJVUkxTY2hlbWVBc05vQWNjZXNzKHNjaGVt
ZSk7CisgICAgCisgICAgZm9yIChhdXRvJiYgd2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgOiBX
VEZNb3ZlKHBhcmFtZXRlcnMud2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMpKQorICAgICAgICBh
ZGRXZWJzaXRlRGF0YVN0b3JlKFdURk1vdmUod2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMpKTsK
KworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3MsICIlcCAtIE5ldHdvcmtQcm9jZXNzOjppbml0aWFs
aXplTmV0d29ya1Byb2Nlc3M6IFByZXNlbnRpbmcgcHJvY2Vzc1BJRD0lZCIsIHRoaXMsIFdlYkNv
cmU6OnByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCgpKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6aW5pdGlhbGl6ZUNvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uKiBjb25uZWN0aW9uKQorewor
ICAgIEF1eGlsaWFyeVByb2Nlc3M6OmluaXRpYWxpemVDb25uZWN0aW9uKGNvbm5lY3Rpb24pOwor
CisgICAgLy8gV2UgZ2l2ZSBhIGNoYW5jZSBmb3IgZGlkQ2xvc2UoKSB0byBnZXQgY2FsbGVkIG9u
IHRoZSBtYWluIHRocmVhZCBidXQgZm9yY2VmdWxseSBjYWxsIF9leGl0KCkgYWZ0ZXIgYSBkZWxh
eQorICAgIC8vIGluIGNhc2UgdGhlIG1haW4gdGhyZWFkIGlzIHVucmVzcG9uc2l2ZSBvciBkaWRD
bG9zZSgpIHRha2VzIHRvbyBsb25nLgorICAgIGNvbm5lY3Rpb24tPnNldERpZENsb3NlT25Db25u
ZWN0aW9uV29ya1F1ZXVlQ2FsbGJhY2soY2FsbEV4aXRTb29uKTsKKworICAgIGZvciAoYXV0byYg
c3VwcGxlbWVudCA6IG1fc3VwcGxlbWVudHMudmFsdWVzKCkpCisgICAgICAgIHN1cHBsZW1lbnQt
PmluaXRpYWxpemVDb25uZWN0aW9uKGNvbm5lY3Rpb24pOworfQorCit2b2lkIE5ldHdvcmtQcm9j
ZXNzOjpjcmVhdGVOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyhQcm9jZXNzSWRlbnRpZmll
ciBpZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoc3RkOjpvcHRpb25hbDxJUEM6OkF0dGFjaG1lbnQ+JiYsIEhUVFBDb29raWVBY2NlcHRQ
b2xpY3kpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gaXBjQ29ubmVjdGlvbiA9
IGNyZWF0ZUlQQ0Nvbm5lY3Rpb25QYWlyKCk7CisgICAgaWYgKCFpcGNDb25uZWN0aW9uKSB7Cisg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSwgSFRUUENvb2tpZUFjY2VwdFBvbGljeTo6TmV2
ZXIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBuZXdDb25uZWN0aW9uID0g
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0ZSgqdGhpcywgaWRlbnRpZmllciwg
c2Vzc2lvbklELCBpcGNDb25uZWN0aW9uLT5maXJzdCk7CisgICAgYXV0byYgY29ubmVjdGlvbiA9
IG5ld0Nvbm5lY3Rpb24uZ2V0KCk7CisKKyAgICBBU1NFUlQoIW1fd2ViUHJvY2Vzc0Nvbm5lY3Rp
b25zLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKyAgICBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy5h
ZGQoaWRlbnRpZmllciwgV1RGTW92ZShuZXdDb25uZWN0aW9uKSk7CisKKyAgICBhdXRvKiBzdG9y
YWdlID0gc3RvcmFnZVNlc3Npb24oc2Vzc2lvbklEKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihX
VEZNb3ZlKGlwY0Nvbm5lY3Rpb24tPnNlY29uZCksIHN0b3JhZ2UgPyBzdG9yYWdlLT5jb29raWVB
Y2NlcHRQb2xpY3koKSA6IEhUVFBDb29raWVBY2NlcHRQb2xpY3k6Ok5ldmVyKTsKKworICAgIGNv
bm5lY3Rpb24uc2V0T25MaW5lU3RhdGUoTmV0d29ya1N0YXRlTm90aWZpZXI6OnNpbmdsZXRvbigp
Lm9uTGluZSgpKTsKKworICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPmFkZENvbm5lY3Rpb24oY29u
bmVjdGlvbi5jb25uZWN0aW9uKCkpOworICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmFkZENv
bm5lY3Rpb24oY29ubmVjdGlvbi5jb25uZWN0aW9uKCksIGlkZW50aWZpZXIpOworICAgIGlmIChh
dXRvIG1hbmFnZXIgPSBtX3N0b3JhZ2VNYW5hZ2Vycy5nZXQoc2Vzc2lvbklEKSkKKyAgICAgICAg
bWFuYWdlci0+c3RhcnRSZWNlaXZpbmdNZXNzYWdlRnJvbUNvbm5lY3Rpb24oY29ubmVjdGlvbi5j
b25uZWN0aW9uKCkpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpjbGVhckNhY2hlZENyZWRl
bnRpYWxzKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK3sKKyAgICBpZiAoYXV0byogbmV0d29y
a1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlm
IChhdXRvKiBzdG9yYWdlU2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uLT5uZXR3b3JrU3RvcmFnZVNl
c3Npb24oKSkKKyAgICAgICAgICAgIHN0b3JhZ2VTZXNzaW9uLT5jcmVkZW50aWFsU3RvcmFnZSgp
LmNsZWFyQ3JlZGVudGlhbHMoKTsKKyAgICAgICAgbmV0d29ya1Nlc3Npb24tPmNsZWFyQ3JlZGVu
dGlhbHMoKTsKKyAgICB9Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmFkZFdlYnNpdGVEYXRh
U3RvcmUoV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQoreworICAgIGF1
dG8gc2Vzc2lvbklEID0gcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuc2Vzc2lv
bklEOworCisgICAgYWRkU3RvcmFnZU1hbmFnZXJGb3JTZXNzaW9uKHNlc3Npb25JRCwgcGFyYW1l
dGVycy5nZW5lcmFsU3RvcmFnZURpcmVjdG9yeSwgcGFyYW1ldGVycy5nZW5lcmFsU3RvcmFnZURp
cmVjdG9yeUhhbmRsZSk7CisgICAgYWRkU2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXIoc2Vzc2lv
bklELCBwYXJhbWV0ZXJzLnBlck9yaWdpblN0b3JhZ2VRdW90YSwgcGFyYW1ldGVycy5wZXJUaGly
ZFBhcnR5T3JpZ2luU3RvcmFnZVF1b3RhLCBwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9y
eSwgcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOworCisg
ICAgYWRkSW5kZXhlZERhdGFiYXNlU2Vzc2lvbihzZXNzaW9uSUQsIHBhcmFtZXRlcnMuaW5kZXhl
ZERhdGFiYXNlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmluZGV4ZWREYXRhYmFzZURpcmVjdG9yeUV4
dGVuc2lvbkhhbmRsZSk7CisKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgYWRkU2Vy
dmljZVdvcmtlclNlc3Npb24oc2Vzc2lvbklELCBwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJQcm9j
ZXNzVGVybWluYXRpb25EZWxheUVuYWJsZWQsIFdURk1vdmUocGFyYW1ldGVycy5zZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5KSwgcGFyYW1ldGVycy5zZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKKyNlbmRpZgorCisgICAgbV9zdG9yYWdl
TWFuYWdlclNldC0+YWRkKHNlc3Npb25JRCwgcGFyYW1ldGVycy5sb2NhbFN0b3JhZ2VEaXJlY3Rv
cnksIHBhcmFtZXRlcnMubG9jYWxTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKKwor
ICAgIFJlbW90ZU5ldHdvcmtpbmdDb250ZXh0OjplbnN1cmVXZWJzaXRlRGF0YVN0b3JlU2Vzc2lv
bigqdGhpcywgV1RGTW92ZShwYXJhbWV0ZXJzKSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6
OmFkZFNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwg
dWludDY0X3QgZGVmYXVsdFF1b3RhLCB1aW50NjRfdCBkZWZhdWx0VGhpcmRQYXJ0eVF1b3RhLCBj
b25zdCBTdHJpbmcmIGNhY2hlUm9vdFBhdGgsIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgY2Fj
aGVSb290UGF0aEhhbmRsZSkKK3sKKyAgICBMb2NrZXIgbG9ja2VyIHsgbV9zZXNzaW9uU3RvcmFn
ZVF1b3RhTWFuYWdlcnNMb2NrIH07CisgICAgYXV0byBpc05ld0VudHJ5ID0gbV9zZXNzaW9uU3Rv
cmFnZVF1b3RhTWFuYWdlcnMuZW5zdXJlKHNlc3Npb25JRCwgW2RlZmF1bHRRdW90YSwgZGVmYXVs
dFRoaXJkUGFydHlRdW90YSwgJmNhY2hlUm9vdFBhdGhdIHsKKyAgICAgICAgcmV0dXJuIG1ha2VV
bmlxdWU8U2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXI+KGNhY2hlUm9vdFBhdGgsIGRlZmF1bHRR
dW90YSwgZGVmYXVsdFRoaXJkUGFydHlRdW90YSk7CisgICAgfSkuaXNOZXdFbnRyeTsKKyAgICBp
ZiAoaXNOZXdFbnRyeSkKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVu
dGx5KGNhY2hlUm9vdFBhdGhIYW5kbGUpOworICAgIGVsc2UKKyAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZVNlc3Npb25TdG9yYWdl
UXVvdGFNYW5hZ2VyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK3sKKyAgICBMb2NrZXIgbG9j
a2VyIHsgbV9zZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcnNMb2NrIH07CisgICAgQVNTRVJUKG1f
c2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXJzLmNvbnRhaW5zKHNlc3Npb25JRCkpOworICAgIG1f
c2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXJzLnJlbW92ZShzZXNzaW9uSUQpOworfQorCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjphZGRTdG9yYWdlTWFuYWdlckZvclNlc3Npb24oUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIGdlbmVyYWxTdG9yYWdlUGF0aCwgU2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlJiBnZW5lcmFsU3RvcmFnZVBhdGhIYW5kbGUpCit7CisgICAgbV9zdG9y
YWdlTWFuYWdlcnMuZW5zdXJlKHNlc3Npb25JRCwgWyZdIHsKKyAgICAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGdlbmVyYWxTdG9yYWdlUGF0aEhhbmRsZSk7CisgICAg
ICAgIHJldHVybiBOZXR3b3JrU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZShzZXNzaW9uSUQsIGdlbmVy
YWxTdG9yYWdlUGF0aCk7CisgICAgfSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92
ZVN0b3JhZ2VNYW5hZ2VyRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCit7Cisg
ICAgbV9zdG9yYWdlTWFuYWdlcnMucmVtb3ZlKHNlc3Npb25JRCk7Cit9CisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OmZvckVhY2hOZXR3b3JrU2Vzc2lvbihjb25zdCBGdW5jdGlvbjx2b2lkKE5ldHdv
cmtTZXNzaW9uJik+JiBmdW5jdG9yKQoreworICAgIGZvciAoYXV0byYgc2Vzc2lvbiA6IG1fbmV0
d29ya1Nlc3Npb25zLnZhbHVlcygpKQorICAgICAgICBmdW5jdG9yKCpzZXNzaW9uKTsKK30KKwor
c3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4gTmV0d29ya1By
b2Nlc3M6Om5ld1Rlc3RpbmdTZXNzaW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK3sKKyNp
ZiBQTEFURk9STShDT0NPQSkKKyAgICAvLyBTZXNzaW9uIG5hbWUgc2hvdWxkIGJlIHNob3J0IGVu
b3VnaCBmb3Igc2hhcmVkIG1lbW9yeSByZWdpb24gbmFtZSB0byBiZSB1bmRlciB0aGUgbGltaXQs
IG90aGVyd2lzZSBzYW5kYm94IHJ1bGVzIHdvbid0IHdvcmsgKHNlZSA8cmRhcjovL3Byb2JsZW0v
MTM2NDI4NTI+KS4KKyAgICBhdXRvIHNlc3Npb24gPSBXZWJDb3JlOjpjcmVhdGVQcml2YXRlU3Rv
cmFnZVNlc3Npb24obWFrZVN0cmluZygiV2ViS2l0IFRlc3QtIiwgZ2V0Q3VycmVudFByb2Nlc3NJ
RCgpKS5jcmVhdGVDRlN0cmluZygpLmdldCgpKTsKKyAgICBSZXRhaW5QdHI8Q0ZIVFRQQ29va2ll
U3RvcmFnZVJlZj4gY29va2llU3RvcmFnZTsKKyAgICBpZiAoV2ViQ29yZTo6TmV0d29ya1N0b3Jh
Z2VTZXNzaW9uOjpwcm9jZXNzTWF5VXNlQ29va2llQVBJKCkpIHsKKyAgICAgICAgQVNTRVJUKGhh
c1Byb2Nlc3NQcml2aWxlZ2UoUHJvY2Vzc1ByaXZpbGVnZTo6Q2FuQWNjZXNzUmF3Q29va2llcykp
OworICAgICAgICBpZiAoc2Vzc2lvbikKKyAgICAgICAgICAgIGNvb2tpZVN0b3JhZ2UgPSBhZG9w
dENGKF9DRlVSTFN0b3JhZ2VTZXNzaW9uQ29weUNvb2tpZVN0b3JhZ2Uoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgc2Vzc2lvbi5nZXQoKSkpOworICAgIH0KKyAgICByZXR1cm4gbWFrZVVuaXF1ZTxXZWJD
b3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24+KHNlc3Npb25JRCwgV1RGTW92ZShzZXNzaW9uKSwg
V1RGTW92ZShjb29raWVTdG9yYWdlKSk7CisjZWxpZiBVU0UoQ1VSTCkgfHwgVVNFKFNPVVApCisg
ICAgcmV0dXJuIG1ha2VVbmlxdWU8V2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uPihzZXNz
aW9uSUQpOworI2VuZGlmCit9CisKKyNpZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgTmV0d29ya1By
b2Nlc3M6OmVuc3VyZVNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBib29sIHNob3Vs
ZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbiwgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyQmFzZSwg
UmV0YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+JiYgY29va2llU3RvcmFnZSkKKyNlbHNl
Cit2b2lkIE5ldHdvcmtQcm9jZXNzOjplbnN1cmVTZXNzaW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Np
b25JRCwgYm9vbCBzaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb24sIGNvbnN0IFN0cmluZyYg
aWRlbnRpZmllckJhc2UpCisjZW5kaWYKK3sKKyAgICBhdXRvIGFkZFJlc3VsdCA9IG1fbmV0d29y
a1N0b3JhZ2VTZXNzaW9ucy5hZGQoc2Vzc2lvbklELCBudWxscHRyKTsKKyAgICBpZiAoIWFkZFJl
c3VsdC5pc05ld0VudHJ5KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoc2hvdWxkVXNlVGVz
dGluZ05ldHdvcmtTZXNzaW9uKSB7CisgICAgICAgIGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUg
PSBuZXdUZXN0aW5nU2Vzc2lvbihzZXNzaW9uSUQpOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIAorI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIFJldGFpblB0cjxDRlVSTFN0b3JhZ2VTZXNz
aW9uUmVmPiBzdG9yYWdlU2Vzc2lvbjsKKyAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGNmSWRl
bnRpZmllciA9IG1ha2VTdHJpbmcoaWRlbnRpZmllckJhc2UsICIuUHJpdmF0ZUJyb3dzaW5nLiIs
IGNyZWF0ZUNhbm9uaWNhbFVVSURTdHJpbmcoKSkuY3JlYXRlQ0ZTdHJpbmcoKTsKKyAgICBpZiAo
c2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCisgICAgICAgIHN0b3JhZ2VTZXNzaW9uID0gY3JlYXRl
UHJpdmF0ZVN0b3JhZ2VTZXNzaW9uKGNmSWRlbnRpZmllci5nZXQoKSk7CisgICAgZWxzZSBpZiAo
c2Vzc2lvbklEICE9IFBBTDo6U2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkpCisgICAgICAg
IHN0b3JhZ2VTZXNzaW9uID0gV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjcmVhdGVD
RlN0b3JhZ2VTZXNzaW9uRm9ySWRlbnRpZmllcihjZklkZW50aWZpZXIuZ2V0KCkpOworCisgICAg
aWYgKE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6cHJvY2Vzc01heVVzZUNvb2tpZUFQSSgpKSB7Cisg
ICAgICAgIEFTU0VSVChoYXNQcm9jZXNzUHJpdmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFj
Y2Vzc1Jhd0Nvb2tpZXMpKTsKKyAgICAgICAgaWYgKCFjb29raWVTdG9yYWdlICYmIHN0b3JhZ2VT
ZXNzaW9uKQorICAgICAgICAgICAgY29va2llU3RvcmFnZSA9IGFkb3B0Q0YoX0NGVVJMU3RvcmFn
ZVNlc3Npb25Db3B5Q29va2llU3RvcmFnZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBzdG9yYWdlU2Vz
c2lvbi5nZXQoKSkpOworICAgIH0KKworICAgIGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBt
YWtlVW5pcXVlPE5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4oc2Vzc2lvbklELCBXVEZNb3ZlKHN0b3Jh
Z2VTZXNzaW9uKSwgV1RGTW92ZShjb29raWVTdG9yYWdlKSk7CisjZWxpZiBVU0UoQ1VSTCkgfHwg
VVNFKFNPVVApCisgICAgYWRkUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IG1ha2VVbmlxdWU8TmV0
d29ya1N0b3JhZ2VTZXNzaW9uPihzZXNzaW9uSUQpOworI2VuZGlmCit9CisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OmNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoSFRUUENvb2tpZUFjY2VwdFBvbGlj
eSBuZXdQb2xpY3kpCit7CisgICAgZm9yIChhdXRvJiBjb25uZWN0aW9uIDogbV93ZWJQcm9jZXNz
Q29ubmVjdGlvbnMudmFsdWVzKCkpCisgICAgICAgIGNvbm5lY3Rpb24tPmNvb2tpZUFjY2VwdFBv
bGljeUNoYW5nZWQobmV3UG9saWN5KTsKK30KKworV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uKiBOZXR3b3JrUHJvY2Vzczo6c3RvcmFnZVNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lv
bklEKSBjb25zdAoreworICAgIHJldHVybiBtX25ldHdvcmtTdG9yYWdlU2Vzc2lvbnMuZ2V0KHNl
c3Npb25JRCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmZvckVhY2hOZXR3b3JrU3RvcmFn
ZVNlc3Npb24oY29uc3QgRnVuY3Rpb248dm9pZChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Np
b24mKT4mIGZ1bmN0b3IpCit7CisgICAgZm9yIChhdXRvJiBzdG9yYWdlU2Vzc2lvbiA6IG1fbmV0
d29ya1N0b3JhZ2VTZXNzaW9ucy52YWx1ZXMoKSkKKyAgICAgICAgZnVuY3Rvcigqc3RvcmFnZVNl
c3Npb24pOworfQorCitOZXR3b3JrU2Vzc2lvbiogTmV0d29ya1Byb2Nlc3M6Om5ldHdvcmtTZXNz
aW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkgY29uc3QKK3sKKyAgICBBU1NFUlQoUnVuTG9v
cDo6aXNNYWluKCkpOworICAgIHJldHVybiBtX25ldHdvcmtTZXNzaW9ucy5nZXQoc2Vzc2lvbklE
KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0U2Vzc2lvbihQQUw6OlNlc3Npb25JRCBz
ZXNzaW9uSUQsIHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrU2Vzc2lvbj4mJiBzZXNzaW9uKQorewor
ICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgbV9uZXR3b3JrU2Vzc2lvbnMuc2V0
KHNlc3Npb25JRCwgV1RGTW92ZShzZXNzaW9uKSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6
OmRlc3Ryb3lTZXNzaW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKK3sKKyAgICBBU1NFUlQo
UnVuTG9vcDo6aXNNYWluKCkpOworI2lmICFVU0UoU09VUCkgJiYgIVVTRShDVVJMKQorICAgIC8v
IGNVUkwgYW5kIFNvdXAgYmFzZWQgcG9ydHMgZGVzdHJveSB0aGUgZGVmYXVsdCBzZXNzaW9uIHJp
Z2h0IGJlZm9yZSB0aGUgcHJvY2VzcyBleGl0cyB0byBhdm9pZCBsZWFraW5nCisgICAgLy8gbmV0
d29yayByZXNvdXJjZXMgbGlrZSB0aGUgY29va2llcyBkYXRhYmFzZS4KKyAgICBBU1NFUlQoc2Vz
c2lvbklEICE9IFBBTDo6U2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkpOworI2VuZGlmCisK
KyAgICBpZiAoYXV0byBzZXNzaW9uID0gbV9uZXR3b3JrU2Vzc2lvbnMudGFrZShzZXNzaW9uSUQp
KQorICAgICAgICBzZXNzaW9uLT5pbnZhbGlkYXRlQW5kQ2FuY2VsKCk7CisgICAgbV9uZXR3b3Jr
U3RvcmFnZVNlc3Npb25zLnJlbW92ZShzZXNzaW9uSUQpOworICAgIG1fc2Vzc2lvbnNDb250cm9s
bGVkQnlBdXRvbWF0aW9uLnJlbW92ZShzZXNzaW9uSUQpOworICAgIENhY2hlU3RvcmFnZTo6RW5n
aW5lOjpkZXN0cm95RW5naW5lKCp0aGlzLCBzZXNzaW9uSUQpOworCisjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQorICAgIG1fc3dTZXJ2ZXJzLnJlbW92ZShzZXNzaW9uSUQpOworICAgIG1fc2Vy
dmljZVdvcmtlckluZm8ucmVtb3ZlKHNlc3Npb25JRCk7CisjZW5kaWYKKworICAgIG1fc3RvcmFn
ZU1hbmFnZXJTZXQtPnJlbW92ZShzZXNzaW9uSUQpOworICAgIGlmIChhdXRvIHNlcnZlciA9IG1f
d2ViSURCU2VydmVycy50YWtlKHNlc3Npb25JRCkpCisgICAgICAgIHNlcnZlci0+Y2xvc2UoKTsK
KyAgICByZW1vdmVTdG9yYWdlTWFuYWdlckZvclNlc3Npb24oc2Vzc2lvbklEKTsKK30KKworI2lm
IEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKQordm9pZCBOZXR3b3JrUHJv
Y2Vzczo6ZHVtcFJlc291cmNlTG9hZFN0YXRpc3RpY3MoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vz
c2lvbklEKSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5l
dHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNv
dXJjZUxvYWRTdGF0aXN0aWNzLT5kdW1wUmVzb3VyY2VMb2FkU3RhdGlzdGljcyhXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKHsgfSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisgICAgfQorfQorCit2b2lkIE5ldHdv
cmtQcm9jZXNzOjp1cGRhdGVQcmV2YWxlbnREb21haW5zVG9CbG9ja0Nvb2tpZXNGb3IoUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBWZWN0b3I8UmVnaXN0cmFibGVEb21haW4+JiBkb21h
aW5zVG9CbG9jaywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU3RvcmFnZVNlc3Npb24gPSBzdG9yYWdlU2Vzc2lv
bihzZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPnNldFByZXZhbGVu
dERvbWFpbnNUb0Jsb2NrQW5kRGVsZXRlQ29va2llc0Zvcihkb21haW5zVG9CbG9jayk7CisgICAg
Y29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aXNHcmFuZGZh
dGhlcmVkKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4m
IGRvbWFpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lv
bihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNz
ID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAg
IHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmlzR3JhbmRmYXRoZXJlZChkb21haW4sIFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIoZmFsc2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAgfQorfQorCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjppc1ByZXZhbGVudFJlc291cmNlKFBBTDo6U2Vzc2lvbklEIHNlc3Np
b25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29y
a1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlm
IChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNl
TG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmlz
UHJldmFsZW50UmVzb3VyY2UoZG9tYWluLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKyAgICB9
IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIoZmFsc2UpOworICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aXNWZXJ5
UHJldmFsZW50UmVzb3VyY2UoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3Ry
YWJsZURvbWFpbiYgZG9tYWluLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5l
dHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9h
ZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQor
ICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+aXNWZXJ5UHJldmFsZW50UmVzb3Vy
Y2UoZG9tYWluLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKyAgICB9IGVsc2UgeworICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2Up
OworICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0QWdlQ2FwRm9yQ2xpZW50U2lk
ZUNvb2tpZXMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBzdGQ6Om9wdGlvbmFsPFNlY29uZHM+
IHNlY29uZHMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNlc3Npb24o
c2Vzc2lvbklEKSkKKyAgICAgICAgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5zZXRBZ2VDYXBGb3JD
bGllbnRTaWRlQ29va2llcyhzZWNvbmRzKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQor
Cit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRHcmFuZGZhdGhlcmVkKFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwgYm9vbCBpc0dyYW5kZmF0
aGVyZWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNz
aW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0
d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291
cmNlTG9hZFN0YXRpc3RpY3MtPnNldEdyYW5kZmF0aGVyZWQoZG9tYWluLCBpc0dyYW5kZmF0aGVy
ZWQsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9CisKK3Zv
aWQgTmV0d29ya1Byb2Nlc3M6OnNldFByZXZhbGVudFJlc291cmNlKFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3Jr
U2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYg
KGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VM
b2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0
UHJldmFsZW50UmVzb3VyY2UoZG9tYWluLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRQcmV2YWxlbnRSZXNv
dXJjZUZvckRlYnVnTW9kZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFJlZ2lzdHJh
YmxlRG9tYWluJiBkb21haW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3Jr
U2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0
aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAg
ICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNldFByZXZhbGVudFJlc291cmNlRm9yRGVi
dWdNb2RlKGRvbWFpbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAg
IH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0VmVyeVByZXZhbGVudFJlc291cmNlKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlm
IChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkp
IHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vz
c2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy0+c2V0VmVyeVByZXZhbGVudFJlc291cmNlKGRvbWFpbiwgV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBjb21wbGV0aW9uSGFu
ZGxlcigpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6Y2xlYXJQcmV2YWxlbnRSZXNvdXJjZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0
IFJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlz
LT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3Mo
KSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmNsZWFyUHJldmFsZW50UmVz
b3VyY2UoZG9tYWluLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAg
fQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzY2hlZHVsZUNvb2tpZUJsb2NraW5nVXBkYXRl
KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMt
Pm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNl
TG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygp
KQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2NoZWR1bGVDb29raWVCbG9j
a2luZ1VwZGF0ZShXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQor
fQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzY2hlZHVsZUNsZWFySW5NZW1vcnlBbmRQZXJzaXN0
ZW50KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgc3RkOjpvcHRpb25hbDxXYWxsVGltZT4gbW9k
aWZpZWRTaW5jZSwgU2hvdWxkR3JhbmRmYXRoZXJTdGF0aXN0aWNzIHNob3VsZEdyYW5kZmF0aGVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklE
KSkgeworICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+Y2xlYXJJc29sYXRlZFNlc3Npb25zKCk7Cisg
ICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24t
PnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkgeworICAgICAgICAgICAgaWYgKG1vZGlmaWVkU2lu
Y2UpCisgICAgICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2NoZWR1bGVDbGVh
ckluTWVtb3J5QW5kUGVyc2lzdGVudChtb2RpZmllZFNpbmNlLnZhbHVlKCksIHNob3VsZEdyYW5k
ZmF0aGVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2NoZWR1bGVDbGVhckluTWVt
b3J5QW5kUGVyc2lzdGVudChzaG91bGRHcmFuZGZhdGhlciwgV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7
CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpnZXRS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YVN1bW1hcnkoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
U3RvcmU6OlRoaXJkUGFydHlEYXRhPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBp
ZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQp
KSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nl
c3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9h
ZFN0YXRpc3RpY3MtPmFnZ3JlZ2F0ZWRUaGlyZFBhcnR5RGF0YShXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsg
fSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNz
OjpyZXNldFBhcmFtZXRlcnNUb0RlZmF1bHRWYWx1ZXMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklE
KSkgeworICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+cmVzZXRDTkFNRURvbWFpbkRhdGEoKTsKKyAg
ICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+
cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlz
dGljcy0+cmVzZXRQYXJhbWV0ZXJzVG9EZWZhdWx0VmFsdWVzKFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsK
KyAgICB9IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNjaGVk
dWxlU3RhdGlzdGljc0FuZERhdGFSZWNvcmRzUHJvY2Vzc2luZyhQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNz
aW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0
d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291
cmNlTG9hZFN0YXRpc3RpY3MtPnNjaGVkdWxlU3RhdGlzdGljc0FuZERhdGFSZWNvcmRzUHJvY2Vz
c2luZyhXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQorfQorCit2
b2lkIE5ldHdvcmtQcm9jZXNzOjpzdGF0aXN0aWNzRGF0YWJhc2VIYXNBbGxUYWJsZXMoUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5l
dHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9h
ZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQor
ICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c3RhdGlzdGljc0RhdGFiYXNlSGFz
QWxsVGFibGVzKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworICAgIH0gZWxzZSB7CisgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7
CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXROb3RpZnlQYWdlc1doZW5EYXRh
UmVjb3Jkc1dlcmVTY2FubmVkKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgYm9vbCB2YWx1ZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlm
IChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkp
IHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vz
c2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy0+c2V0Tm90aWZ5UGFnZXNXaGVuRGF0YVJlY29yZHNXZXJlU2Nhbm5lZCh2YWx1
ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBlbHNlCisgICAgICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0KK30KKwordm9p
ZCBOZXR3b3JrUHJvY2Vzczo6c2V0SXNSdW5uaW5nUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Rlc3Qo
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBib29sIHZhbHVlLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNz
aW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICBpZiAoYXV0
byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRJc1J1
bm5pbmdUZXN0KHZhbHVlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cisg
ICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRTdWJmcmFtZVVuZGVyVG9wRnJhbWVE
b21haW4oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYg
c3ViRnJhbWVEb21haW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiB0b3BGcmFtZURvbWFpbiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlm
IChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkp
IHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vz
c2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2Fk
U3RhdGlzdGljcy0+c2V0U3ViZnJhbWVVbmRlclRvcEZyYW1lRG9tYWluKHN1YkZyYW1lRG9tYWlu
LCB0b3BGcmFtZURvbWFpbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwor
ICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aXNSZWdpc3RlcmVkQXNSZWRpcmVjdGlu
Z1RvKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRv
bWFpblJlZGlyZWN0ZWRGcm9tLCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluUmVkaXJl
Y3RlZFRvLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9u
KHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3Mg
PSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAg
cmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+aXNSZWdpc3RlcmVkQXNSZWRpcmVjdGluZ1RvKGRvbWFp
blJlZGlyZWN0ZWRGcm9tLCBkb21haW5SZWRpcmVjdGVkVG8sIFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFs
c2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9j
ZXNzOjppc1JlZ2lzdGVyZWRBc1N1YkZyYW1lVW5kZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgc3ViRnJhbWVEb21haW4sIGNvbnN0IFJlZ2lzdHJh
YmxlRG9tYWluJiB0b3BGcmFtZURvbWFpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0
aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNv
dXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3Rp
Y3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmlzUmVnaXN0ZXJlZEFz
U3ViRnJhbWVVbmRlcihzdWJGcmFtZURvbWFpbiwgdG9wRnJhbWVEb21haW4sIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoZmFsc2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAgfQorfQorCit2b2lkIE5l
dHdvcmtQcm9jZXNzOjpzZXRTdWJyZXNvdXJjZVVuZGVyVG9wRnJhbWVEb21haW4oUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgc3VicmVzb3VyY2VEb21h
aW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiB0b3BGcmFtZURvbWFpbiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3
b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAg
aWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+
c2V0U3VicmVzb3VyY2VVbmRlclRvcEZyYW1lRG9tYWluKHN1YnJlc291cmNlRG9tYWluLCB0b3BG
cmFtZURvbWFpbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBlbHNlCisg
ICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0K
K30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0U3VicmVzb3VyY2VVbmlxdWVSZWRpcmVjdFRv
KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIHN1YnJl
c291cmNlRG9tYWluLCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluUmVkaXJlY3RlZFRv
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklE
KSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtT
ZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLT5zZXRTdWJyZXNvdXJjZVVuaXF1ZVJlZGlyZWN0VG8oc3VicmVzb3VyY2VE
b21haW4sIGRvbWFpblJlZGlyZWN0ZWRUbywgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwor
ICAgICAgICBlbHNlCisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxz
ZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFu
ZGxlcigpOworICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0U3VicmVzb3VyY2VV
bmlxdWVSZWRpcmVjdEZyb20oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3Ry
YWJsZURvbWFpbiYgc3VicmVzb3VyY2VEb21haW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBk
b21haW5SZWRpcmVjdGVkRnJvbSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdv
cmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0
YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAg
ICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0U3VicmVzb3VyY2VVbmlxdWVSZWRp
cmVjdEZyb20oc3VicmVzb3VyY2VEb21haW4sIGRvbWFpblJlZGlyZWN0ZWRGcm9tLCBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjppc1JlZ2lzdGVyZWRBc1N1YnJlc291cmNlVW5kZXIoUEFMOjpTZXNzaW9uSUQgc2Vz
c2lvbklELCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgc3VicmVzb3VyY2VEb21haW4sIGNvbnN0
IFJlZ2lzdHJhYmxlRG9tYWluJiB0b3BGcmFtZURvbWFpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nl
c3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChh
dXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9h
ZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmlzUmVn
aXN0ZXJlZEFzU3VicmVzb3VyY2VVbmRlcihzdWJyZXNvdXJjZURvbWFpbiwgdG9wRnJhbWVEb21h
aW4sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAg
fQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0VG8o
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgdG9wRnJh
bWVEb21haW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW5SZWRpcmVjdGVkVG8sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAo
YXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7
CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Np
b24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0
YXRpc3RpY3MtPnNldFRvcEZyYW1lVW5pcXVlUmVkaXJlY3RUbyh0b3BGcmFtZURvbWFpbiwgZG9t
YWluUmVkaXJlY3RlZFRvLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cisg
ICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0
RnJvbShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiB0
b3BGcmFtZURvbWFpbiwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpblJlZGlyZWN0ZWRG
cm9tLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lv
bklEKSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdv
cmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzLT5zZXRUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0RnJvbSh0b3BGcmFtZURv
bWFpbiwgZG9tYWluUmVkaXJlY3RlZEZyb20sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoKTsKKyAgICB9Cit9CisgICAgCisgICAgCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRM
YXN0U2VlbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWlu
JiBkb21haW4sIFNlY29uZHMgc2Vjb25kcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMt
Pm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNl
TG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygp
KQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0TGFzdFNlZW4oZG9tYWlu
LCBzZWNvbmRzLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQor
fQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpkb21haW5JREV4aXN0c0luRGF0YWJhc2UoUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklELCBpbnQgZG9tYWluSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNz
aW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICBpZiAoYXV0
byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5kb21haW5J
REV4aXN0c0luRGF0YWJhc2UoZG9tYWluSUQsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworICAg
IH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0
aW9uSGFuZGxlcihmYWxzZSk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjptZXJn
ZVN0YXRpc3RpY0ZvclRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBSZWdp
c3RyYWJsZURvbWFpbiYgZG9tYWluLCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgdG9wRnJhbWVE
b21haW4xLCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgdG9wRnJhbWVEb21haW4yLCBTZWNvbmRz
IGxhc3RTZWVuLCBib29sIGhhZFVzZXJJbnRlcmFjdGlvbiwgU2Vjb25kcyBtb3N0UmVjZW50VXNl
ckludGVyYWN0aW9uLCBib29sIGlzR3JhbmRmYXRoZXJlZCwgYm9vbCBpc1ByZXZhbGVudCwgYm9v
bCBpc1ZlcnlQcmV2YWxlbnQsIHVuc2lnbmVkIGRhdGFSZWNvcmRzUmVtb3ZlZCwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBu
ZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAg
ICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVz
b3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy0+bWVyZ2VTdGF0aXN0aWNGb3JUZXN0aW5nKGRvbWFpbiwgdG9wRnJhbWVEb21haW4xLCB0b3BG
cmFtZURvbWFpbjIsIGxhc3RTZWVuLCBoYWRVc2VySW50ZXJhY3Rpb24sIG1vc3RSZWNlbnRVc2Vy
SW50ZXJhY3Rpb24sIGlzR3JhbmRmYXRoZXJlZCwgaXNQcmV2YWxlbnQsIGlzVmVyeVByZXZhbGVu
dCwgZGF0YVJlY29yZHNSZW1vdmVkLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsK
KyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjppbnNlcnRFeHBpcmVkU3RhdGlz
dGljRm9yVGVzdGluZyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFJlZ2lzdHJhYmxl
RG9tYWluJiBkb21haW4sIHVuc2lnbmVkIG51bWJlck9mT3BlcmF0aW5nRGF5c1Bhc3NlZCwgYm9v
bCBoYWRVc2VySW50ZXJhY3Rpb24sIGJvb2wgaXNTY2hlZHVsZWRGb3JBbGxCdXRDb29raWVEYXRh
UmVtb3ZhbCwgYm9vbCBpc1ByZXZhbGVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMt
Pm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNl
TG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygp
KQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+aW5zZXJ0RXhwaXJlZFN0YXRp
c3RpY0ZvclRlc3RpbmcoZG9tYWluLCBudW1iZXJPZk9wZXJhdGluZ0RheXNQYXNzZWQsIGhhZFVz
ZXJJbnRlcmFjdGlvbiwgaXNTY2hlZHVsZWRGb3JBbGxCdXRDb29raWVEYXRhUmVtb3ZhbCwgaXNQ
cmV2YWxlbnQsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9
CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmdldEFsbFN0b3JhZ2VBY2Nlc3NFbnRyaWVzKFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8U3RyaW5n
PiBkb21haW5zKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29y
a1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIobmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5nZXRBbGxTdG9yYWdlQWNjZXNz
RW50cmllcygpKTsKKyAgICBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpsb2dGcmFtZU5hdmlnYXRpb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25z
dCBSZWdpc3RyYWJsZURvbWFpbiYgdGFyZ2V0RG9tYWluLCBjb25zdCBSZWdpc3RyYWJsZURvbWFp
biYgdG9wRnJhbWVEb21haW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBzb3VyY2VEb21haW4s
IGJvb2wgaXNSZWRpcmVjdCwgYm9vbCBpc01haW5GcmFtZSwgU2Vjb25kcyBkZWxheUFmdGVyTWFp
bkZyYW1lRG9jdW1lbnRMb2FkLCBib29sIHdhc1BvdGVudGlhbGx5SW5pdGlhdGVkQnlVc2VyKQor
eworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNl
c3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBu
ZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgcmVz
b3VyY2VMb2FkU3RhdGlzdGljcy0+bG9nRnJhbWVOYXZpZ2F0aW9uKHRhcmdldERvbWFpbiwgdG9w
RnJhbWVEb21haW4sIHNvdXJjZURvbWFpbiwgaXNSZWRpcmVjdCwgaXNNYWluRnJhbWUsIGRlbGF5
QWZ0ZXJNYWluRnJhbWVEb2N1bWVudExvYWQsIHdhc1BvdGVudGlhbGx5SW5pdGlhdGVkQnlVc2Vy
KTsKKyAgICB9IGVsc2UKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cit9CisKK3ZvaWQg
TmV0d29ya1Byb2Nlc3M6OmxvZ1VzZXJJbnRlcmFjdGlvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQsIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Np
b24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRv
KiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0
YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmxvZ1VzZXJJ
bnRlcmFjdGlvbihkb21haW4sIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVsc2UgeworICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsK
KyAgICB9Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmhhZFVzZXJJbnRlcmFjdGlvbihQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
aWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklE
KSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtT
ZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLT5oYXNIYWRVc2VySW50ZXJhY3Rpb24oZG9tYWluLCBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKGZhbHNlKTsKKyAgICB9IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
KyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworICAgIH0KK30KKwordm9pZCBOZXR3
b3JrUHJvY2Vzczo6aXNSZWxhdGlvbnNoaXBPbmx5SW5EYXRhYmFzZU9uY2UoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgc3ViRG9tYWluLCBjb25zdCBS
ZWdpc3RyYWJsZURvbWFpbiYgdG9wRG9tYWluLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9
IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJl
c291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlz
dGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+aXNSZWxhdGlvbnNo
aXBPbmx5SW5EYXRhYmFzZU9uY2Uoc3ViRG9tYWluLCB0b3BEb21haW4sIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoZmFsc2UpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwor
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAgfQorfQorCit2b2lkIE5ldHdv
cmtQcm9jZXNzOjpjbGVhclVzZXJJbnRlcmFjdGlvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQs
IGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24g
PSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiBy
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRp
c3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmNsZWFyVXNlcklu
dGVyYWN0aW9uKGRvbWFpbiwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwor
ICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aGFzTG9jYWxTdG9yYWdlKFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAo
bV9zdG9yYWdlTWFuYWdlclNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkgeworICAgICAgICBtX3N0
b3JhZ2VNYW5hZ2VyU2V0LT5nZXRMb2NhbFN0b3JhZ2VPcmlnaW5zKHNlc3Npb25JRCwgW2RvbWFp
biwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYXV0byYm
IG9yaWdpbnMpIG11dGFibGUgeworICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGOjph
bnlPZihvcmlnaW5zLCBbJmRvbWFpbl0oYXV0byYgb3JpZ2luKSB7CisgICAgICAgICAgICAgICAg
cmV0dXJuIGRvbWFpbi5tYXRjaGVzKG9yaWdpbik7CisgICAgICAgICAgICB9KSk7CisgICAgICAg
IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNl
KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0Q2FjaGVNYXhBZ2VDYXBGb3JQcmV2YWxl
bnRSZXNvdXJjZXMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBTZWNvbmRzIHNlY29uZHMsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAo
YXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNlc3Npb24oc2Vzc2lvbklEKSkK
KyAgICAgICAgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5zZXRDYWNoZU1heEFnZUNhcEZvclByZXZh
bGVudFJlc291cmNlcyhTZWNvbmRzIHsgc2Vjb25kcyB9KTsKKyAgICBlbHNlCisgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQg
TmV0d29ya1Byb2Nlc3M6OnNldEdyYW5kZmF0aGVyaW5nVGltZShQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIFNlY29uZHMgc2Vjb25kcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5l
dHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9h
ZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQor
ICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0R3JhbmRmYXRoZXJpbmdUaW1l
KHNlY29uZHMsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9
CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldE1heFN0YXRpc3RpY3NFbnRyaWVzKFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCwgdWludDY0X3QgbWF4aW11bUVudHJ5Q291bnQsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0
d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAg
IGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291
cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3Mt
PnNldE1heFN0YXRpc3RpY3NFbnRyaWVzKG1heGltdW1FbnRyeUNvdW50LCBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNz
OjpzZXRNaW5pbXVtVGltZUJldHdlZW5EYXRhUmVjb3Jkc1JlbW92YWwoUEFMOjpTZXNzaW9uSUQg
c2Vzc2lvbklELCBTZWNvbmRzIHNlY29uZHMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlz
LT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3Mo
KSkKKyAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNldE1pbmltdW1UaW1lQmV0
d2VlbkRhdGFSZWNvcmRzUmVtb3ZhbChzZWNvbmRzLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAg
fSBlbHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRQcnVuZUVu
dHJpZXNEb3duVG8oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCB1aW50NjRfdCBwcnVuZVRhcmdl
dENvdW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vz
c2lvbklEKSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5l
dHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAgICAgICByZXNv
dXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRQcnVuZUVudHJpZXNEb3duVG8ocHJ1bmVUYXJnZXRDb3Vu
dCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBlbHNlCisgICAgICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0KK30KKwordm9p
ZCBOZXR3b3JrUHJvY2Vzczo6c2V0VGltZVRvTGl2ZVVzZXJJbnRlcmFjdGlvbihQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQsIFNlY29uZHMgc2Vjb25kcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9
IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHJl
c291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3VyY2VMb2FkU3RhdGlz
dGljcygpKQorICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0VGltZVRvTGl2
ZVVzZXJJbnRlcmFjdGlvbihzZWNvbmRzLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRTaG91bGRDbGFzc2lm
eVJlc291cmNlc0JlZm9yZURhdGFSZWNvcmRzUmVtb3ZhbChQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQsIGJvb2wgdmFsdWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vz
c2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0
aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAgICAgICAg
ICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNldFNob3VsZENsYXNzaWZ5UmVzb3VyY2VzQmVm
b3JlRGF0YVJlY29yZHNSZW1vdmFsKHZhbHVlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBl
bHNlIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRSZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRW5hYmxlZChQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGJvb2wgZW5hYmxl
ZCkKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lv
bihzZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+c2V0UmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0VuYWJsZWQoZW5hYmxlZCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldFJl
c291cmNlTG9hZFN0YXRpc3RpY3NMb2dUZXN0aW5nRXZlbnQoYm9vbCBlbmFibGVkKQoreworICAg
IGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbZW5hYmxlZF0oYXV0byYgbmV0d29ya1Nlc3Npb24pIHsK
KyAgICAgICAgbmV0d29ya1Nlc3Npb24uc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0xvZ1Rlc3Rp
bmdFdmVudChlbmFibGVkKTsKKyAgICB9KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQs
IGJvb2wgZGVidWdNb2RlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nl
c3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlz
dGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCisgICAgICAg
ICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVi
dWdNb2RlKGRlYnVnTW9kZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0gZWxzZSB7CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwor
ICAgIH0KK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRTdGF0aXN0aWNz
RXBoZW1lcmFsKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKK3sKKyAgICBpZiAoYXV0byogbmV0
d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAg
IGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291
cmNlTG9hZFN0YXRpc3RpY3MoKSkgeworICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIocmVz
b3VyY2VMb2FkU3RhdGlzdGljcy0+aXNFcGhlbWVyYWwoKSk7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgY29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpy
ZXNldENhY2hlTWF4QWdlQ2FwRm9yUHJldmFsZW50UmVzb3VyY2VzKFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmIChhdXRvKiBuZXR3b3JrU3RvcmFnZVNlc3Npb24gPSBzdG9yYWdlU2Vzc2lvbihz
ZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPnJlc2V0Q2FjaGVNYXhB
Z2VDYXBGb3JQcmV2YWxlbnRSZXNvdXJjZXMoKTsKKyAgICBlbHNlCisgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OmRpZENvbW1pdENyb3NzU2l0ZUxvYWRXaXRoRGF0YVRyYW5zZmVyKFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCwgY29uc3QgUmVnaXN0cmFibGVEb21haW4mIGZyb21Eb21haW4sIGNv
bnN0IFJlZ2lzdHJhYmxlRG9tYWluJiB0b0RvbWFpbiwgT3B0aW9uU2V0PFdlYkNvcmU6OkNyb3Nz
U2l0ZU5hdmlnYXRpb25EYXRhVHJhbnNmZXI6OkZsYWc+IG5hdmlnYXRpb25EYXRhVHJhbnNmZXIs
IFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFnZVByb3h5SUQsIFdlYkNvcmU6OlBhZ2VJZGVu
dGlmaWVyIHdlYlBhZ2VJRCkKK3sKKyAgICBBU1NFUlQoIW5hdmlnYXRpb25EYXRhVHJhbnNmZXIu
aXNFbXB0eSgpKTsKKworICAgIGlmIChhdXRvKiBuZXR3b3JrU3RvcmFnZVNlc3Npb24gPSBzdG9y
YWdlU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmICghbmV0d29ya1N0b3JhZ2VTZXNz
aW9uLT5zaG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKGZyb21Eb21haW4pKQorICAgICAgICAg
ICAgcmV0dXJuOworCisgICAgICAgIGlmIChuYXZpZ2F0aW9uRGF0YVRyYW5zZmVyLmNvbnRhaW5z
KENyb3NzU2l0ZU5hdmlnYXRpb25EYXRhVHJhbnNmZXI6OkZsYWc6OkRlc3RpbmF0aW9uTGlua0Rl
Y29yYXRpb24pKQorICAgICAgICAgICAgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5kaWRDb21taXRD
cm9zc1NpdGVMb2FkV2l0aERhdGFUcmFuc2ZlckZyb21QcmV2YWxlbnRSZXNvdXJjZSh0b0RvbWFp
biwgd2ViUGFnZUlEKTsKKworICAgICAgICBpZiAobmF2aWdhdGlvbkRhdGFUcmFuc2Zlci5jb250
YWlucyhDcm9zc1NpdGVOYXZpZ2F0aW9uRGF0YVRyYW5zZmVyOjpGbGFnOjpSZWZlcnJlckxpbmtE
ZWNvcmF0aW9uKSkKKyAgICAgICAgICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQo
TWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OkRpZENvbW1pdENyb3NzU2l0ZUxvYWRXaXRo
RGF0YVRyYW5zZmVyRnJvbVByZXZhbGVudFJlc291cmNlKHdlYlBhZ2VQcm94eUlEKSwgMCk7Cisg
ICAgfSBlbHNlCisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworCisgICAgaWYgKG5hdmln
YXRpb25EYXRhVHJhbnNmZXIuY29udGFpbnMoQ3Jvc3NTaXRlTmF2aWdhdGlvbkRhdGFUcmFuc2Zl
cjo6RmxhZzo6RGVzdGluYXRpb25MaW5rRGVjb3JhdGlvbikpIHsKKyAgICAgICAgaWYgKGF1dG8q
IG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAg
ICAgICAgICAgaWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lv
bi0+cmVzb3VyY2VMb2FkU3RhdGlzdGljcygpKQorICAgICAgICAgICAgICAgIHJlc291cmNlTG9h
ZFN0YXRpc3RpY3MtPmxvZ0Nyb3NzU2l0ZUxvYWRXaXRoTGlua0RlY29yYXRpb24oZnJvbURvbWFp
biwgdG9Eb21haW4sIFtdIHsgfSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRDcm9z
c1NpdGVMb2FkV2l0aExpbmtEZWNvcmF0aW9uRm9yVGVzdGluZyhQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBmcm9tRG9tYWluLCBjb25zdCBSZWdpc3Ry
YWJsZURvbWFpbiYgdG9Eb21haW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3
b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRT
dGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKKyAg
ICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPmxvZ0Nyb3NzU2l0ZUxvYWRXaXRoTGlu
a0RlY29yYXRpb24oZnJvbURvbWFpbiwgdG9Eb21haW4sIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAg
ICB9IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlc2V0Q3Jv
c3NTaXRlTG9hZHNXaXRoTGlua0RlY29yYXRpb25Gb3JUZXN0aW5nKFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmIChhdXRvKiBuZXR3b3JrU3RvcmFnZVNlc3Npb24gPSBzdG9yYWdlU2Vzc2lvbihz
ZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPnJlc2V0Q3Jvc3NTaXRl
TG9hZHNXaXRoTGlua0RlY29yYXRpb25Gb3JUZXN0aW5nKCk7CisgICAgZWxzZQorICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjpoYXNJc29sYXRlZFNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lv
bklELCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAoreworICAgIGJv
b2wgcmVzdWx0ID0gZmFsc2U7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+
bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgcmVzdWx0ID0gbmV0d29ya1Nlc3Np
b24tPmhhc0lzb2xhdGVkU2Vzc2lvbihkb21haW4pOworICAgIGNvbXBsZXRpb25IYW5kbGVyKHJl
c3VsdCk7Cit9CisKKyNpZiBFTkFCTEUoQVBQX0JPVU5EX0RPTUFJTlMpCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpzZXRBcHBCb3VuZERvbWFpbnNGb3JSZXNvdXJjZUxvYWRTdGF0aXN0aWNzKFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCwgSGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4m
JiBhcHBCb3VuZERvbWFpbnMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3Jr
U2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0
aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkgeworICAg
ICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+c2V0QXBwQm91bmREb21haW5zKFdURk1v
dmUoYXBwQm91bmREb21haW5zKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisjZW5kaWYKKwordm9pZCBOZXR3b3JrUHJv
Y2Vzczo6c2V0U2hvdWxkRG93bmdyYWRlUmVmZXJyZXJGb3JUZXN0aW5nKGJvb2wgZW5hYmxlZCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGZv
ckVhY2hOZXR3b3JrU2Vzc2lvbihbZW5hYmxlZF0oYXV0byYgbmV0d29ya1Nlc3Npb24pIHsKKyAg
ICAgICAgbmV0d29ya1Nlc3Npb24uc2V0U2hvdWxkRG93bmdyYWRlUmVmZXJyZXJGb3JUZXN0aW5n
KGVuYWJsZWQpOworICAgIH0pOworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQg
TmV0d29ya1Byb2Nlc3M6OnNldFRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUoUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBXZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlIGJs
b2NraW5nTW9kZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9u
KHNlc3Npb25JRCkpCisgICAgICAgIG5ldHdvcmtTZXNzaW9uLT5zZXRUaGlyZFBhcnR5Q29va2ll
QmxvY2tpbmdNb2RlKGJsb2NraW5nTW9kZSk7CisgICAgZWxzZQorICAgICAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpzZXRTaG91bGRFbmJsZVNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRGb3JUZXN0aW5n
KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2ViQ29yZTo6U2FtZVNpdGVTdHJpY3RFbmZvcmNl
bWVudEVuYWJsZWQgZW5hYmxlZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdv
cmtTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIG5ldHdvcmtTZXNzaW9uLT5zZXRTaG91bGRF
bmJsZVNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnQoZW5hYmxlZCk7CisgICAgZWxzZQorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2
b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZUZv
clRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vi
c2l0ZURhdGFSZW1vdmFsTW9kZSBtb2RlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+
bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VM
b2FkU3RhdGlzdGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkp
CisgICAgICAgICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRGaXJzdFBhcnR5V2Vic2l0
ZURhdGFSZW1vdmFsTW9kZShtb2RlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSBlbHNlIHsK
KyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KCk7CisgICAgfQorfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRUb1NhbWVTaXRlU3RyaWN0
Q29va2llc0ZvclRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIG5ldHdvcmtTdG9yYWdlU2Vzc2lv
biA9IHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIG5ldHdvcmtTdG9yYWdlU2Vz
c2lvbi0+c2V0QWxsQ29va2llc1RvU2FtZVNpdGVTdHJpY3QoZG9tYWluLCBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CisgICAgZWxzZSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIH0KK30KKwordm9pZCBOZXR3b3Jr
UHJvY2Vzczo6c2V0Rmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbkZvclRlc3RpbmcoUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBTdHJpbmcmJiBmaXJzdFBhcnR5SG9zdCwgV2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4mJiBjbmFtZURvbWFpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMt
Pm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIG5ldHdvcmtTZXNzaW9uLT5zZXRG
aXJzdFBhcnR5SG9zdENOQU1FRG9tYWluKFdURk1vdmUoZmlyc3RQYXJ0eUhvc3QpLCBXVEZNb3Zl
KGNuYW1lRG9tYWluKSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3
b3JrUHJvY2Vzczo6c2V0VGhpcmRQYXJ0eUNOQU1FRG9tYWluRm9yVGVzdGluZyhQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYgZG9tYWluLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1
dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkKKyAg
ICAgICAgbmV0d29ya1Nlc3Npb24tPnNldFRoaXJkUGFydHlDTkFNRURvbWFpbkZvclRlc3Rpbmco
V1RGTW92ZShkb21haW4pKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorI2VuZGlmIC8v
IEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKQorCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpzZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudEVuYWJsZWQoYm9vbCBlbmFibGVkKQor
eworICAgIG1fcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRFbmFibGVkID0gZW5hYmxlZDsKK30KKwor
Ym9vbCBOZXR3b3JrUHJvY2Vzczo6cHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRFbmFibGVkKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9wcml2YXRlQ2xpY2tNZWFzdXJlbWVudEVuYWJsZWQ7Cit9CisK
K3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldFByaXZhdGVDbGlja01lYXN1cmVtZW50RGVidWdNb2Rl
KGJvb2wgZW5hYmxlZCkKK3sKKyAgICBpZiAobV9wcml2YXRlQ2xpY2tNZWFzdXJlbWVudERlYnVn
TW9kZUVuYWJsZWQgPT0gZW5hYmxlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9wcml2YXRl
Q2xpY2tNZWFzdXJlbWVudERlYnVnTW9kZUVuYWJsZWQgPSBlbmFibGVkOworCisgICAgU3RyaW5n
IG1lc3NhZ2UgPSBlbmFibGVkID8gIltQcml2YXRlIENsaWNrIE1lYXN1cmVtZW50XSBUdXJuZWQg
RGVidWcgTW9kZSBvbi4iX3MgOiAiW1ByaXZhdGUgQ2xpY2sgTWVhc3VyZW1lbnRdIFR1cm5lZCBE
ZWJ1ZyBNb2RlIG9mZi4iX3M7CisgICAgZm9yIChhdXRvJiBuZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyA6IG1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb25zLnZhbHVlcygpKSB7CisgICAgICAgIGlm
IChuZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy0+c2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwo
KSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBuZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy0+YnJvYWRjYXN0Q29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6UHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnQsIE1lc3NhZ2VMZXZlbDo6SW5mbywgbWVzc2FnZSk7CisgICAgfQorfQor
Citib29sIE5ldHdvcmtQcm9jZXNzOjpwcml2YXRlQ2xpY2tNZWFzdXJlbWVudERlYnVnTW9kZUVu
YWJsZWQoKSBjb25zdAoreworICAgIHJldHVybiBtX3ByaXZhdGVDbGlja01lYXN1cmVtZW50RGVi
dWdNb2RlRW5hYmxlZDsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlY29ubmVjdFRvKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJv
eHlJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiB1c2VyQWdlbnQsIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5
IHN0b3JlZENyZWRlbnRpYWxzUG9saWN5LCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBMYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKK3sKKyAgICBMT0co
TmV0d29yaywgIihOZXR3b3JrUHJvY2VzcykgUHJlY29ubmVjdGluZyB0byBVUkwgJXMgKHN0b3Jl
ZENyZWRlbnRpYWxzUG9saWN5ICVpKSIsIHVybC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpLCAoaW50
KXN0b3JlZENyZWRlbnRpYWxzUG9saWN5KTsKKworI2lmIEVOQUJMRShTRVJWRVJfUFJFQ09OTkVD
VCkKKyNpZiBFTkFCTEUoTEVHQUNZX0NVU1RPTV9QUk9UT0NPTF9NQU5BR0VSKQorICAgIGlmIChz
dXBwbGVtZW50PExlZ2FjeUN1c3RvbVByb3RvY29sTWFuYWdlcj4oKS0+c3VwcG9ydHNTY2hlbWUo
dXJsLnByb3RvY29sKCkudG9TdHJpbmcoKSkpCisgICAgICAgIHJldHVybjsKKyNlbmRpZgorCisg
ICAgYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQp
OworICAgIGlmICghbmV0d29ya1Nlc3Npb24pCisgICAgICAgIHJldHVybjsKKworICAgIE5ldHdv
cmtMb2FkUGFyYW1ldGVycyBwYXJhbWV0ZXJzOworICAgIHBhcmFtZXRlcnMucmVxdWVzdCA9IFJl
c291cmNlUmVxdWVzdCB7IHVybCB9OworICAgIHBhcmFtZXRlcnMucmVxdWVzdC5zZXRJc0FwcElu
aXRpYXRlZChsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCA9PSBMYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZDo6WWVzKTsKKyAgICBwYXJhbWV0ZXJzLnJlcXVlc3Quc2V0Rmlyc3RQYXJ0
eUZvckNvb2tpZXModXJsKTsKKyAgICBwYXJhbWV0ZXJzLnJlcXVlc3Quc2V0UHJpb3JpdHkoV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkUHJpb3JpdHk6OlZlcnlIaWdoKTsKKyAgICBwYXJhbWV0ZXJzLndl
YlBhZ2VQcm94eUlEID0gd2ViUGFnZVByb3h5SUQ7CisgICAgcGFyYW1ldGVycy53ZWJQYWdlSUQg
PSB3ZWJQYWdlSUQ7CisgICAgcGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWlu
ID0gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjsKKyAgICBpZiAoIXVzZXJBZ2VudC5pc0Vt
cHR5KCkpIHsKKyAgICAgICAgLy8gRklYTUU6IHdlIGFkZCB1c2VyLWFnZW50IHRvIHRoZSBwcmVj
b25uZWN0IHJlcXVlc3QgYmVjYXVzZSBvdGhlcndpc2UgdGhlIHByZWNvbm5lY3QKKyAgICAgICAg
Ly8gZ2V0cyB0aHJvd24gYXdheSBieSBDRk5ldHdvcmsgd2hlbiB1c2luZyBhbiBIVFRQUyBwcm94
eSAoPHJkYXI6Ly9wcm9ibGVtLzU5NDM0MTY2PikuCisgICAgICAgIHBhcmFtZXRlcnMucmVxdWVz
dC5zZXRIVFRQVXNlckFnZW50KHVzZXJBZ2VudCk7CisgICAgfQorICAgIHBhcmFtZXRlcnMuc3Rv
cmVkQ3JlZGVudGlhbHNQb2xpY3kgPSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeTsKKyAgICBwYXJh
bWV0ZXJzLnNob3VsZFByZWNvbm5lY3RPbmx5ID0gUHJlY29ubmVjdE9ubHk6OlllczsKKworICAg
IG5ldHdvcmtTZXNzaW9uLT5uZXR3b3JrTG9hZFNjaGVkdWxlcigpLnN0YXJ0ZWRQcmVjb25uZWN0
Rm9yTWFpblJlc291cmNlKHVybCk7CisgICAgYXV0byB0YXNrID0gbmV3IFByZWNvbm5lY3RUYXNr
KCpuZXR3b3JrU2Vzc2lvbiwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgW25ldHdvcmtTZXNzaW9uLCB1
cmxdKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yKSB7CisgICAgICAgIG5ldHdv
cmtTZXNzaW9uLT5uZXR3b3JrTG9hZFNjaGVkdWxlcigpLmZpbmlzaGVkUHJlY29ubmVjdEZvck1h
aW5SZXNvdXJjZSh1cmwsIGVycm9yKTsKKyAgICB9KTsKKyAgICB0YXNrLT5zZXRUaW1lb3V0KDEw
X3MpOworICAgIHRhc2stPnN0YXJ0KCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTSh1cmwpOwor
ICAgIFVOVVNFRF9QQVJBTSh1c2VyQWdlbnQpOworICAgIFVOVVNFRF9QQVJBTShzdG9yZWRDcmVk
ZW50aWFsc1BvbGljeSk7CisjZW5kaWYKK30KKworYm9vbCBOZXR3b3JrUHJvY2Vzczo6c2Vzc2lv
bklzQ29udHJvbGxlZEJ5QXV0b21hdGlvbihQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fc2Vzc2lvbnNDb250cm9sbGVkQnlBdXRvbWF0aW9uLmNvbnRhaW5z
KHNlc3Npb25JRCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldFNlc3Npb25Jc0NvbnRy
b2xsZWRCeUF1dG9tYXRpb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBib29sIGNvbnRyb2xs
ZWQpCit7CisgICAgaWYgKGNvbnRyb2xsZWQpCisgICAgICAgIG1fc2Vzc2lvbnNDb250cm9sbGVk
QnlBdXRvbWF0aW9uLmFkZChzZXNzaW9uSUQpOworICAgIGVsc2UKKyAgICAgICAgbV9zZXNzaW9u
c0NvbnRyb2xsZWRCeUF1dG9tYXRpb24ucmVtb3ZlKHNlc3Npb25JRCk7Cit9CisKK3N0YXRpYyB2
b2lkIGZldGNoRGlza0NhY2hlRW50cmllcyhOZXR3b3JrQ2FjaGU6OkNhY2hlKiBjYWNoZSwgUEFM
OjpTZXNzaW9uSUQgc2Vzc2lvbklELCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4g
ZmV0Y2hPcHRpb25zLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxXZWJzaXRlRGF0YTo6
RW50cnk+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIWNhY2hlKSB7CisgICAg
ICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKV0gKCkgbXV0YWJsZSB7CisgICAgICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcih7IH0pOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICAK
KyAgICBIYXNoTWFwPFNlY3VyaXR5T3JpZ2luRGF0YSwgdWludDY0X3Q+IG9yaWdpbnNBbmRTaXpl
czsKKyAgICBjYWNoZS0+dHJhdmVyc2UoW2ZldGNoT3B0aW9ucywgY29tcGxldGlvbkhhbmRsZXIg
PSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgb3JpZ2luc0FuZFNpemVzID0gV1RGTW92ZShv
cmlnaW5zQW5kU2l6ZXMpXShhdXRvKiB0cmF2ZXJzYWxFbnRyeSkgbXV0YWJsZSB7CisgICAgICAg
IGlmICghdHJhdmVyc2FsRW50cnkpIHsKKyAgICAgICAgICAgIFZlY3RvcjxXZWJzaXRlRGF0YTo6
RW50cnk+IGVudHJpZXM7CisKKyAgICAgICAgICAgIGZvciAoYXV0byYgb3JpZ2luQW5kU2l6ZSA6
IG9yaWdpbnNBbmRTaXplcykKKyAgICAgICAgICAgICAgICBlbnRyaWVzLmFwcGVuZChXZWJzaXRl
RGF0YTo6RW50cnkgeyBvcmlnaW5BbmRTaXplLmtleSwgV2Vic2l0ZURhdGFUeXBlOjpEaXNrQ2Fj
aGUsIG9yaWdpbkFuZFNpemUudmFsdWUgfSk7CisKKyAgICAgICAgICAgIFJ1bkxvb3A6Om1haW4o
KS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSwgZW50cmllcyA9IFdURk1vdmUoZW50cmllcyldICgpIG11dGFibGUgeworICAgICAgICAgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKGVudHJpZXMpOworICAgICAgICAgICAgfSk7CisKKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGF1dG8gdXJsID0gdHJhdmVyc2Fs
RW50cnktPmVudHJ5LnJlc3BvbnNlKCkudXJsKCk7CisgICAgICAgIGF1dG8gcmVzdWx0ID0gb3Jp
Z2luc0FuZFNpemVzLmFkZCh7dXJsLnByb3RvY29sKCkudG9TdHJpbmcoKSwgdXJsLmhvc3QoKS50
b1N0cmluZygpLCB1cmwucG9ydCgpfSwgMCk7CisKKyAgICAgICAgaWYgKGZldGNoT3B0aW9ucy5j
b250YWlucyhXZWJzaXRlRGF0YUZldGNoT3B0aW9uOjpDb21wdXRlU2l6ZXMpKQorICAgICAgICAg
ICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSArPSB0cmF2ZXJzYWxFbnRyeS0+ZW50cnkuc291cmNl
U3RvcmFnZVJlY29yZCgpLmhlYWRlci5zaXplKCkgKyB0cmF2ZXJzYWxFbnRyeS0+cmVjb3JkSW5m
by5ib2R5U2l6ZTsKKyAgICB9KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6ZmV0Y2hXZWJz
aXRlRGF0YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5
cGU+IHdlYnNpdGVEYXRhVHlwZXMsIE9wdGlvblNldDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiBm
ZXRjaE9wdGlvbnMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vic2l0ZURhdGEmJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgc3RydWN0IENhbGxiYWNrQWdncmVnYXRvciBmaW5hbCA6
IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxDYWxsYmFja0FnZ3JlZ2F0b3I+IHsKKyAgICAg
ICAgZXhwbGljaXQgQ2FsbGJhY2tBZ2dyZWdhdG9yKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
c2l0ZURhdGEmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgICAgICA6IG1fY29tcGxl
dGlvbkhhbmRsZXIoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIHsKKyAgICAg
ICAgfQorCisgICAgICAgIH5DYWxsYmFja0FnZ3JlZ2F0b3IoKQorICAgICAgICB7CisgICAgICAg
ICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShtX2NvbXBsZXRpb25IYW5kbGVyKSwgd2Vic2l0ZURhdGEgPSBXVEZNb3ZlKG1fd2Vic2l0ZURh
dGEpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZN
b3ZlKHdlYnNpdGVEYXRhKSk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAg
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vic2l0ZURhdGEmJik+IG1fY29tcGxldGlvbkhhbmRs
ZXI7CisgICAgICAgIFdlYnNpdGVEYXRhIG1fd2Vic2l0ZURhdGE7CisgICAgfTsKKworICAgIGF1
dG8gY2FsbGJhY2tBZ2dyZWdhdG9yID0gYWRvcHRSZWYoKm5ldyBDYWxsYmFja0FnZ3JlZ2F0b3Io
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpKTsKKworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVz
LmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6Q29va2llcykpIHsKKyAgICAgICAgaWYgKGF1dG8q
IG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiA9IHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkpCisgICAg
ICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPmdldEhvc3RuYW1lc1dpdGhDb29raWVzKGNh
bGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YS5ob3N0TmFtZXNXaXRoQ29va2llcyk7Cisg
ICAgfQorCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBl
OjpDcmVkZW50aWFscykpIHsKKyAgICAgICAgaWYgKHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkp
IHsKKyAgICAgICAgICAgIGF1dG8gc2VjdXJpdHlPcmlnaW5zID0gc3RvcmFnZVNlc3Npb24oc2Vz
c2lvbklEKS0+Y3JlZGVudGlhbFN0b3JhZ2UoKS5vcmlnaW5zV2l0aENyZWRlbnRpYWxzKCk7Cisg
ICAgICAgICAgICBmb3IgKGF1dG8mIHNlY3VyaXR5T3JpZ2luIDogc2VjdXJpdHlPcmlnaW5zKQor
ICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVz
LmFwcGVuZCh7IHNlY3VyaXR5T3JpZ2luLCBXZWJzaXRlRGF0YVR5cGU6OkNyZWRlbnRpYWxzLCAw
IH0pOworICAgICAgICB9CisgICAgICAgIGF1dG8gc2VjdXJpdHlPcmlnaW5zID0gV2ViQ29yZTo6
Q3JlZGVudGlhbFN0b3JhZ2U6Om9yaWdpbnNXaXRoU2Vzc2lvbkNyZWRlbnRpYWxzKCk7CisgICAg
ICAgIGZvciAoYXV0byYgc2VjdXJpdHlPcmlnaW4gOiBzZWN1cml0eU9yaWdpbnMpCisgICAgICAg
ICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0ZURhdGEuZW50cmllcy5hcHBlbmQoeyBz
ZWN1cml0eU9yaWdpbiwgV2Vic2l0ZURhdGFUeXBlOjpDcmVkZW50aWFscywgMCB9KTsKKyAgICB9
CisKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRP
TUNhY2hlKSkgeworICAgICAgICBDYWNoZVN0b3JhZ2U6OkVuZ2luZTo6ZmV0Y2hFbnRyaWVzKCp0
aGlzLCBzZXNzaW9uSUQsIGZldGNoT3B0aW9ucy5jb250YWlucyhXZWJzaXRlRGF0YUZldGNoT3B0
aW9uOjpDb21wdXRlU2l6ZXMpLCBbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvIGVudHJpZXMpIG11
dGFibGUgeworICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX3dlYnNpdGVEYXRhLmVu
dHJpZXMuYXBwZW5kVmVjdG9yKGVudHJpZXMpOworICAgICAgICB9KTsKKyAgICB9CisKKyAgICBp
ZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlc3Npb25TdG9y
YWdlKSAmJiBtX3N0b3JhZ2VNYW5hZ2VyU2V0LT5jb250YWlucyhzZXNzaW9uSUQpKSB7CisgICAg
ICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPmdldFNlc3Npb25TdG9yYWdlT3JpZ2lucyhzZXNzaW9u
SUQsIFtjYWxsYmFja0FnZ3JlZ2F0b3JdKGF1dG8mJiBvcmlnaW5zKSB7CisgICAgICAgICAgICB3
aGlsZSAoIW9yaWdpbnMuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVn
YXRvci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVuZChXZWJzaXRlRGF0YTo6RW50cnkgeyBv
cmlnaW5zLnRha2VBbnkoKSwgV2Vic2l0ZURhdGFUeXBlOjpTZXNzaW9uU3RvcmFnZSwgMCB9KTsK
KyAgICAgICAgfSk7CisgICAgfQorCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMo
V2Vic2l0ZURhdGFUeXBlOjpMb2NhbFN0b3JhZ2UpICYmIG1fc3RvcmFnZU1hbmFnZXJTZXQtPmNv
bnRhaW5zKHNlc3Npb25JRCkpIHsKKyAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNldC0+Z2V0TG9j
YWxTdG9yYWdlT3JpZ2lucyhzZXNzaW9uSUQsIFtjYWxsYmFja0FnZ3JlZ2F0b3JdKGF1dG8mJiBv
cmlnaW5zKSB7CisgICAgICAgICAgICB3aGlsZSAoIW9yaWdpbnMuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVu
ZChXZWJzaXRlRGF0YTo6RW50cnkgeyBvcmlnaW5zLnRha2VBbnkoKSwgV2Vic2l0ZURhdGFUeXBl
OjpMb2NhbFN0b3JhZ2UsIDAgfSk7CisgICAgICAgIH0pOworICAgIH0KKworI2lmIFBMQVRGT1JN
KENPQ09BKSB8fCBVU0UoU09VUCkKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhX
ZWJzaXRlRGF0YVR5cGU6OkhTVFNDYWNoZSkpCisgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+
bV93ZWJzaXRlRGF0YS5ob3N0TmFtZXNXaXRoSFNUU0NhY2hlID0gaG9zdE5hbWVzV2l0aEhTVFND
YWNoZShzZXNzaW9uSUQpOworI2VuZGlmCisKKyAgICBhdXRvIHBhdGggPSBtX2lkYkRhdGFiYXNl
UGF0aHMuZ2V0KHNlc3Npb25JRCk7CisgICAgaWYgKCFwYXRoLmlzRW1wdHkoKSAmJiB3ZWJzaXRl
RGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzKSkg
eworICAgICAgICB3ZWJJREJTZXJ2ZXIoc2Vzc2lvbklEKS5nZXRPcmlnaW5zKFtjYWxsYmFja0Fn
Z3JlZ2F0b3JdKGF1dG8mJiBvcmlnaW5zKSB7CisgICAgICAgICAgICB3aGlsZSAoIW9yaWdpbnMu
aXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRl
RGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbnMudGFrZUFueSgpLCBXZWJzaXRlRGF0YVR5cGU6
OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKKyAgICAgICAgfSk7CisgICAgfQorCisjaWYgRU5B
QkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIHBhdGggPSBtX3NlcnZpY2VXb3JrZXJJbmZvLmdldChz
ZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKKyAgICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNp
dGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9ucykpIHsKKyAgICAgICAgc3dTZXJ2ZXJGb3JTZXNzaW9uKHNlc3Npb25JRCkuZ2V0T3Jp
Z2luc1dpdGhSZWdpc3RyYXRpb25zKFtjYWxsYmFja0FnZ3JlZ2F0b3JdKGNvbnN0IEhhc2hTZXQ8
U2VjdXJpdHlPcmlnaW5EYXRhPiYgc2VjdXJpdHlPcmlnaW5zKSBtdXRhYmxlIHsKKyAgICAgICAg
ICAgIGZvciAoYXV0byYgb3JpZ2luIDogc2VjdXJpdHlPcmlnaW5zKQorICAgICAgICAgICAgICAg
IGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdp
biwgV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9ucywgMCB9KTsKKyAg
ICAgICAgfSk7CisgICAgfQorI2VuZGlmCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFp
bnMoV2Vic2l0ZURhdGFUeXBlOjpEaXNrQ2FjaGUpKSB7CisgICAgICAgIGZvckVhY2hOZXR3b3Jr
U2Vzc2lvbihbc2Vzc2lvbklELCBmZXRjaE9wdGlvbnMsICZjYWxsYmFja0FnZ3JlZ2F0b3JdKGF1
dG8mIHNlc3Npb24pIHsKKyAgICAgICAgICAgIGZldGNoRGlza0NhY2hlRW50cmllcyhzZXNzaW9u
LmNhY2hlKCksIHNlc3Npb25JRCwgZmV0Y2hPcHRpb25zLCBbY2FsbGJhY2tBZ2dyZWdhdG9yXShh
dXRvIGVudHJpZXMpIG11dGFibGUgeworICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRv
ci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVuZFZlY3RvcihlbnRyaWVzKTsKKyAgICAgICAg
ICAgIH0pOworICAgICAgICB9KTsKKyAgICB9CisKKyNpZiBIQVZFKENGTkVUV09SS19BTFRFUk5B
VElWRV9TRVJWSUNFKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6QWx0ZXJuYXRpdmVTZXJ2aWNlcykpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Np
b24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgICAgICBmb3IgKGF1dG8m
IG9yaWdpbiA6IHNlc3Npb24tPmhvc3ROYW1lc1dpdGhBbHRlcm5hdGl2ZVNlcnZpY2VzKCkpCisg
ICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX3dlYnNpdGVEYXRhLmVudHJpZXMu
YXBwZW5kKHsgb3JpZ2luLCBXZWJzaXRlRGF0YVR5cGU6OkFsdGVybmF0aXZlU2VydmljZXMsIDAg
fSk7CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9U
UkFDS0lOR19QUkVWRU5USU9OKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdl
YnNpdGVEYXRhVHlwZTo6UmVzb3VyY2VMb2FkU3RhdGlzdGljcykpIHsKKyAgICAgICAgaWYgKGF1
dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAgICAgICBp
ZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IHNlc3Npb24tPnJlc291cmNlTG9hZFN0
YXRpc3RpY3MoKSkgeworICAgICAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnJl
Z2lzdHJhYmxlRG9tYWlucyhbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiYgZG9tYWlucykgbXV0
YWJsZSB7CisgICAgICAgICAgICAgICAgICAgIHdoaWxlICghZG9tYWlucy5pc0VtcHR5KCkpCisg
ICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0ZURhdGEu
cmVnaXN0cmFibGVEb21haW5zV2l0aFJlc291cmNlTG9hZFN0YXRpc3RpY3MuYWRkKGRvbWFpbnMu
dGFrZUxhc3QoKSk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAg
IH0KKyAgICB9CisjZW5kaWYKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0
ZURhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFUeXBl
PiB3ZWJzaXRlRGF0YVR5cGVzLCBXYWxsVGltZSBtb2RpZmllZFNpbmNlLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisjaWYgUExBVEZPUk0oQ09DT0Ep
IHx8IFVTRShTT1VQKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6SFNUU0NhY2hlKSkKKyAgICAgICAgY2xlYXJIU1RTQ2FjaGUoc2Vzc2lvbklELCBt
b2RpZmllZFNpbmNlKTsKKyNlbmRpZgorCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFp
bnMoV2Vic2l0ZURhdGFUeXBlOjpDb29raWVzKSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29y
a1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgICAg
IG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi0+ZGVsZXRlQWxsQ29va2llc01vZGlmaWVkU2luY2UobW9k
aWZpZWRTaW5jZSk7CisgICAgfQorCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMo
V2Vic2l0ZURhdGFUeXBlOjpDcmVkZW50aWFscykpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Np
b24gPSBzdG9yYWdlU2Vzc2lvbihzZXNzaW9uSUQpKQorICAgICAgICAgICAgc2Vzc2lvbi0+Y3Jl
ZGVudGlhbFN0b3JhZ2UoKS5jbGVhckNyZWRlbnRpYWxzKCk7CisgICAgICAgIFdlYkNvcmU6OkNy
ZWRlbnRpYWxTdG9yYWdlOjpjbGVhclNlc3Npb25DcmVkZW50aWFscygpOworICAgIH0KKworICAg
IGF1dG8gY2xlYXJUYXNrc0hhbmRsZXIgPSBXVEY6OkNhbGxiYWNrQWdncmVnYXRvcjo6Y3JlYXRl
KFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVz
LmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9NQ2FjaGUpKQorICAgICAgICBDYWNoZVN0b3Jh
Z2U6OkVuZ2luZTo6Y2xlYXJBbGxDYWNoZXMoKnRoaXMsIHNlc3Npb25JRCwgW2NsZWFyVGFza3NI
YW5kbGVyXSB7IH0pOworCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0
ZURhdGFUeXBlOjpTZXNzaW9uU3RvcmFnZSkgJiYgbV9zdG9yYWdlTWFuYWdlclNldC0+Y29udGFp
bnMoc2Vzc2lvbklEKSkKKyAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNldC0+ZGVsZXRlU2Vzc2lv
blN0b3JhZ2Uoc2Vzc2lvbklELCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7CisKKyAgICBpZiAo
d2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkxvY2FsU3RvcmFnZSkg
JiYgbV9zdG9yYWdlTWFuYWdlclNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKKyAgICAgICAgbV9z
dG9yYWdlTWFuYWdlclNldC0+ZGVsZXRlTG9jYWxTdG9yYWdlTW9kaWZpZWRTaW5jZShzZXNzaW9u
SUQsIG1vZGlmaWVkU2luY2UsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKKworICAgIGlmICh3
ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJh
c2VzKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCisgICAgICAgIHdlYklEQlNlcnZlcihz
ZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2VzTW9kaWZpZWRTaW5jZShtb2RpZmllZFNp
bmNlLCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7CisKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JL
RVIpCisgICAgYm9vbCBjbGVhclNlcnZpY2VXb3JrZXJzID0gd2Vic2l0ZURhdGFUeXBlcy5jb250
YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRPTUNhY2hlKSB8fCB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRh
aW5zKFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMpOworICAgIGlm
IChjbGVhclNlcnZpY2VXb3JrZXJzICYmICFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKKyAgICAg
ICAgc3dTZXJ2ZXJGb3JTZXNzaW9uKHNlc3Npb25JRCkuY2xlYXJBbGwoW2NsZWFyVGFza3NIYW5k
bGVyXSB7IH0pOworI2VuZGlmCisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJF
VkVOVElPTikKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5
cGU6OlJlc291cmNlTG9hZFN0YXRpc3RpY3MpKSB7CisgICAgICAgIGlmIChhdXRvKiBuZXR3b3Jr
U2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgICAg
IGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0gbmV0d29ya1Nlc3Npb24tPnJlc291
cmNlTG9hZFN0YXRpc3RpY3MoKSkgeworICAgICAgICAgICAgICAgIGF1dG8gZGVsZXRlZFR5cGVz
UmF3ID0gd2Vic2l0ZURhdGFUeXBlcy50b1JhdygpOworICAgICAgICAgICAgICAgIGF1dG8gbW9u
aXRvcmVkVHlwZXNSYXcgPSBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6Om1vbml0b3Jl
ZERhdGFUeXBlcygpLnRvUmF3KCk7CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAg
Ly8gSWYgd2UgYXJlIGRlbGV0aW5nIGFsbCBvZiB0aGUgZGF0YSB0eXBlcyB0aGF0IHRoZSByZXNv
dXJjZSBsb2FkIHN0YXRpc3RpY3Mgc3RvcmUgbW9uaXRvcnMKKyAgICAgICAgICAgICAgICAvLyB3
ZSBkbyBub3QgbmVlZCB0byByZS1ncmFuZGZhdGhlciBvbGQgZGF0YS4KKyAgICAgICAgICAgICAg
ICBhdXRvIHNob3VsZEdyYW5kZmF0aGVyID0gKChtb25pdG9yZWRUeXBlc1JhdyAmIGRlbGV0ZWRU
eXBlc1JhdykgPT0gbW9uaXRvcmVkVHlwZXNSYXcpID8gU2hvdWxkR3JhbmRmYXRoZXJTdGF0aXN0
aWNzOjpObyA6IFNob3VsZEdyYW5kZmF0aGVyU3RhdGlzdGljczo6WWVzOworICAgICAgICAgICAg
ICAgIAorICAgICAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnNjaGVkdWxlQ2xl
YXJJbk1lbW9yeUFuZFBlcnNpc3RlbnQobW9kaWZpZWRTaW5jZSwgc2hvdWxkR3JhbmRmYXRoZXIs
IFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAg
IH0KKyNlbmRpZgorCisgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29y
a1Nlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgbmV0d29ya1Nlc3Npb24tPnJlbW92ZU5ldHdv
cmtXZWJzaXRlRGF0YShtb2RpZmllZFNpbmNlLCBzdGQ6Om51bGxvcHQsIFtjbGVhclRhc2tzSGFu
ZGxlcl0geyB9KTsKKworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6RGlza0NhY2hlKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCisgICAgICAg
IGNsZWFyRGlza0NhY2hlKG1vZGlmaWVkU2luY2UsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsK
KworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6UHJp
dmF0ZUNsaWNrTWVhc3VyZW1lbnRzKSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Np
b24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQorICAgICAgICAgICAgbmV0d29y
a1Nlc3Npb24tPmNsZWFyUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQoW2NsZWFyVGFza3NIYW5kbGVy
XSB7IH0pOworICAgIH0KKworI2lmIEhBVkUoQ0ZORVRXT1JLX0FMVEVSTkFUSVZFX1NFUlZJQ0Up
CisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpBbHRl
cm5hdGl2ZVNlcnZpY2VzKSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0
aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQorICAgICAgICAgICAgbmV0d29ya1Nlc3Np
b24tPmNsZWFyQWx0ZXJuYXRpdmVTZXJ2aWNlcyhtb2RpZmllZFNpbmNlKTsKKyAgICB9CisjZW5k
aWYKK30KKworc3RhdGljIHZvaWQgY2xlYXJEaXNrQ2FjaGVFbnRyaWVzKE5ldHdvcmtDYWNoZTo6
Q2FjaGUqIGNhY2hlLCBjb25zdCBWZWN0b3I8U2VjdXJpdHlPcmlnaW5EYXRhPiYgb3JpZ2lucywg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlm
ICghY2FjaGUpIHsKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIEhhc2hTZXQ8
UmVmUHRyPFNlY3VyaXR5T3JpZ2luPj4gb3JpZ2luc1RvRGVsZXRlOworICAgIGZvciAoYXV0byYg
b3JpZ2luIDogb3JpZ2lucykKKyAgICAgICAgb3JpZ2luc1RvRGVsZXRlLmFkZChvcmlnaW4uc2Vj
dXJpdHlPcmlnaW4oKSk7CisKKyAgICBWZWN0b3I8TmV0d29ya0NhY2hlOjpLZXk+IGNhY2hlS2V5
c1RvRGVsZXRlOworICAgIGNhY2hlLT50cmF2ZXJzZShbY2FjaGUsIGNvbXBsZXRpb25IYW5kbGVy
ID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIG9yaWdpbnNUb0RlbGV0ZSA9IFdURk1vdmUo
b3JpZ2luc1RvRGVsZXRlKSwgY2FjaGVLZXlzVG9EZWxldGUgPSBXVEZNb3ZlKGNhY2hlS2V5c1Rv
RGVsZXRlKV0oYXV0byogdHJhdmVyc2FsRW50cnkpIG11dGFibGUgeworICAgICAgICBpZiAodHJh
dmVyc2FsRW50cnkpIHsKKyAgICAgICAgICAgIGlmIChvcmlnaW5zVG9EZWxldGUuY29udGFpbnMo
U2VjdXJpdHlPcmlnaW46OmNyZWF0ZSh0cmF2ZXJzYWxFbnRyeS0+ZW50cnkucmVzcG9uc2UoKS51
cmwoKSkpKQorICAgICAgICAgICAgICAgIGNhY2hlS2V5c1RvRGVsZXRlLmFwcGVuZCh0cmF2ZXJz
YWxFbnRyeS0+ZW50cnkua2V5KCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisK
KyAgICAgICAgY2FjaGUtPnJlbW92ZShjYWNoZUtleXNUb0RlbGV0ZSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworICAgICAgICByZXR1cm47CisgICAgfSk7Cit9CisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRhRm9yT3JpZ2lucyhQQUw6OlNlc3Npb25JRCBzZXNz
aW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+IHdlYnNpdGVEYXRhVHlwZXMsIGNvbnN0
IFZlY3RvcjxTZWN1cml0eU9yaWdpbkRhdGE+JiBvcmlnaW5EYXRhcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIGNvb2tpZUhvc3ROYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIEhTVFNDYWNoZUhv
c3ROYW1lcywgY29uc3QgVmVjdG9yPFJlZ2lzdHJhYmxlRG9tYWluPiYgcmVnaXN0cmFibGVEb21h
aW5zLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpDb29raWVz
KSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gc3RvcmFnZVNl
c3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgICAgIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi0+ZGVs
ZXRlQ29va2llc0Zvckhvc3RuYW1lcyhjb29raWVIb3N0TmFtZXMpOworICAgIH0KKworI2lmIFBM
QVRGT1JNKENPQ09BKSB8fCBVU0UoU09VUCkKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250
YWlucyhXZWJzaXRlRGF0YVR5cGU6OkhTVFNDYWNoZSkpCisgICAgICAgIGRlbGV0ZUhTVFNDYWNo
ZUZvckhvc3ROYW1lcyhzZXNzaW9uSUQsIEhTVFNDYWNoZUhvc3ROYW1lcyk7CisjZW5kaWYKKwor
I2lmIEhBVkUoQ0ZORVRXT1JLX0FMVEVSTkFUSVZFX1NFUlZJQ0UpCisgICAgaWYgKHdlYnNpdGVE
YXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpBbHRlcm5hdGl2ZVNlcnZpY2VzKSkg
eworICAgICAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lv
bihzZXNzaW9uSUQpKSB7CisgICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBob3N0czsKKyAgICAg
ICAgICAgIGhvc3RzLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkob3JpZ2luRGF0YXMuc2l6ZSgpKTsK
KyAgICAgICAgICAgIGZvciAoYXV0byYgb3JpZ2luIDogb3JpZ2luRGF0YXMpCisgICAgICAgICAg
ICAgICAgaG9zdHMudW5jaGVja2VkQXBwZW5kKG9yaWdpbi5ob3N0KTsKKyAgICAgICAgICAgIG5l
dHdvcmtTZXNzaW9uLT5kZWxldGVBbHRlcm5hdGl2ZVNlcnZpY2VzRm9ySG9zdE5hbWVzKGhvc3Rz
KTsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorCisgICAgYXV0byBjbGVhclRhc2tzSGFuZGxl
ciA9IFdURjo6Q2FsbGJhY2tBZ2dyZWdhdG9yOjpjcmVhdGUoV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworCisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFU
eXBlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHMpKSB7CisgICAgICAgIGlmIChhdXRvKiBuZXR3
b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAg
ICAgIGZvciAoYXV0byYgb3JpZ2luRGF0YSA6IG9yaWdpbkRhdGFzKQorICAgICAgICAgICAgICAg
IG5ldHdvcmtTZXNzaW9uLT5jbGVhclByaXZhdGVDbGlja01lYXN1cmVtZW50Rm9yUmVnaXN0cmFi
bGVEb21haW4oUmVnaXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KG9yaWdp
bkRhdGEuaG9zdCksIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKKyAgICAgICAgfQorICAgIH0K
KworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9N
Q2FjaGUpKSB7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luRGF0YSA6IG9yaWdpbkRhdGFzKQor
ICAgICAgICAgICAgQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQ2FjaGVzRm9yT3JpZ2luKCp0
aGlzLCBzZXNzaW9uSUQsIFNlY3VyaXR5T3JpZ2luRGF0YSB7IG9yaWdpbkRhdGEgfSwgW2NsZWFy
VGFza3NIYW5kbGVyXSB7IH0pOworICAgIH0KKworICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNv
bnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6U2Vzc2lvblN0b3JhZ2UpICYmIG1fc3RvcmFnZU1hbmFn
ZXJTZXQtPmNvbnRhaW5zKHNlc3Npb25JRCkpCisgICAgICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQt
PmRlbGV0ZVNlc3Npb25TdG9yYWdlRm9yT3JpZ2lucyhzZXNzaW9uSUQsIG9yaWdpbkRhdGFzLCBb
Y2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7CisKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250
YWlucyhXZWJzaXRlRGF0YVR5cGU6OkxvY2FsU3RvcmFnZSkgJiYgbV9zdG9yYWdlTWFuYWdlclNl
dC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKKyAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNldC0+ZGVs
ZXRlTG9jYWxTdG9yYWdlRm9yT3JpZ2lucyhzZXNzaW9uSUQsIG9yaWdpbkRhdGFzLCBbY2xlYXJU
YXNrc0hhbmRsZXJdIHsgfSk7CisKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhX
ZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykgJiYgIXNlc3Npb25JRC5pc0VwaGVt
ZXJhbCgpKQorICAgICAgICB3ZWJJREJTZXJ2ZXIoc2Vzc2lvbklEKS5jbG9zZUFuZERlbGV0ZURh
dGFiYXNlc0Zvck9yaWdpbnMob3JpZ2luRGF0YXMsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsK
KworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBib29sIGNsZWFyU2VydmljZVdvcmtl
cnMgPSB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9NQ2FjaGUp
IHx8IHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9ucyk7CisgICAgaWYgKGNsZWFyU2VydmljZVdvcmtlcnMgJiYgIXNlc3Np
b25JRC5pc0VwaGVtZXJhbCgpKSB7CisgICAgICAgIGF1dG8mIHNlcnZlciA9IHN3U2VydmVyRm9y
U2Vzc2lvbihzZXNzaW9uSUQpOworICAgICAgICBmb3IgKGF1dG8mIG9yaWdpbkRhdGEgOiBvcmln
aW5EYXRhcykKKyAgICAgICAgICAgIHNlcnZlci5jbGVhcihvcmlnaW5EYXRhLCBbY2xlYXJUYXNr
c0hhbmRsZXJdIHsgfSk7CisgICAgfQorI2VuZGlmCisKKyAgICBpZiAod2Vic2l0ZURhdGFUeXBl
cy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRpc2tDYWNoZSkgJiYgIXNlc3Npb25JRC5pc0Vw
aGVtZXJhbCgpKSB7CisgICAgICAgIGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbb3JpZ2luRGF0YXMs
ICZjbGVhclRhc2tzSGFuZGxlcl0oYXV0byYgc2Vzc2lvbikgeworICAgICAgICAgICAgY2xlYXJE
aXNrQ2FjaGVFbnRyaWVzKHNlc3Npb24uY2FjaGUoKSwgb3JpZ2luRGF0YXMsIFtjbGVhclRhc2tz
SGFuZGxlcl0geyB9KTsKKyAgICAgICAgfSk7CisgICAgfQorCisgICAgaWYgKHdlYnNpdGVEYXRh
VHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpDcmVkZW50aWFscykpIHsKKyAgICAgICAg
aWYgKGF1dG8qIHNlc3Npb24gPSBzdG9yYWdlU2Vzc2lvbihzZXNzaW9uSUQpKSB7CisgICAgICAg
ICAgICBmb3IgKGF1dG8mIG9yaWdpbkRhdGEgOiBvcmlnaW5EYXRhcykKKyAgICAgICAgICAgICAg
ICBzZXNzaW9uLT5jcmVkZW50aWFsU3RvcmFnZSgpLnJlbW92ZUNyZWRlbnRpYWxzV2l0aE9yaWdp
bihvcmlnaW5EYXRhKTsKKyAgICAgICAgfQorICAgICAgICBXZWJDb3JlOjpDcmVkZW50aWFsU3Rv
cmFnZTo6cmVtb3ZlU2Vzc2lvbkNyZWRlbnRpYWxzV2l0aE9yaWdpbnMob3JpZ2luRGF0YXMpOwor
ICAgIH0KKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKQorICAg
IGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6UmVzb3VyY2VM
b2FkU3RhdGlzdGljcykpIHsKKyAgICAgICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhp
cy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICAgICAgZm9yIChhdXRvJiBk
b21haW4gOiByZWdpc3RyYWJsZURvbWFpbnMpIHsKKyAgICAgICAgICAgICAgICBpZiAoYXV0byog
cmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzKCkpCisgICAgICAgICAgICAgICAgICAgIHJlc291cmNlTG9hZFN0YXRpc3RpY3MtPnJl
bW92ZURhdGFGb3JEb21haW4oZG9tYWluLCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKworICAgIGlmIChhdXRvKiBuZXR3
b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAg
SGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4gZG9tYWluc1RvRGVsZXRlTmV0d29y
a0RhdGFGb3I7CisgICAgICAgIGZvciAoYXV0byYgb3JpZ2luRGF0YSA6IG9yaWdpbkRhdGFzKQor
ICAgICAgICAgICAgZG9tYWluc1RvRGVsZXRlTmV0d29ya0RhdGFGb3IuYWRkKFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChvcmlnaW5EYXRhLmhvc3Qp
KTsKKyAgICAgICAgZm9yIChhdXRvJiBjb29raWVIb3N0TmFtZSA6IGNvb2tpZUhvc3ROYW1lcykK
KyAgICAgICAgICAgIGRvbWFpbnNUb0RlbGV0ZU5ldHdvcmtEYXRhRm9yLmFkZChXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoY29va2llSG9zdE5hbWUp
KTsKKyAgICAgICAgZm9yIChhdXRvJiBjYWNoZUhvc3ROYW1lIDogSFNUU0NhY2hlSG9zdE5hbWVz
KQorICAgICAgICAgICAgZG9tYWluc1RvRGVsZXRlTmV0d29ya0RhdGFGb3IuYWRkKFdlYkNvcmU6
OlJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChjYWNoZUhvc3ROYW1l
KSk7CisgICAgICAgIGZvciAoYXV0byYgZG9tYWluIDogcmVnaXN0cmFibGVEb21haW5zKQorICAg
ICAgICAgICAgZG9tYWluc1RvRGVsZXRlTmV0d29ya0RhdGFGb3IuYWRkKGRvbWFpbik7CisKKyAg
ICAgICAgbmV0d29ya1Nlc3Npb24tPnJlbW92ZU5ldHdvcmtXZWJzaXRlRGF0YShzdGQ6Om51bGxv
cHQsIFdURk1vdmUoZG9tYWluc1RvRGVsZXRlTmV0d29ya0RhdGFGb3IpLCBbY2xlYXJUYXNrc0hh
bmRsZXJdIHsgfSk7CisgICAgfQorfQorCisjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5H
X1BSRVZFTlRJT04pCitzdGF0aWMgVmVjdG9yPFN0cmluZz4gZmlsdGVyRm9yUmVnaXN0cmFibGVE
b21haW5zKGNvbnN0IFZlY3RvcjxSZWdpc3RyYWJsZURvbWFpbj4mIHJlZ2lzdHJhYmxlRG9tYWlu
cywgY29uc3QgSGFzaFNldDxTdHJpbmc+JiBmb3VuZFZhbHVlcykKK3sKKyAgICBWZWN0b3I8U3Ry
aW5nPiByZXN1bHQ7CisgICAgZm9yIChjb25zdCBhdXRvJiB2YWx1ZSA6IGZvdW5kVmFsdWVzKSB7
CisgICAgICAgIGlmIChyZWdpc3RyYWJsZURvbWFpbnMuY29udGFpbnMoUmVnaXN0cmFibGVEb21h
aW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KHZhbHVlKSkpCisgICAgICAgICAgICByZXN1bHQu
YXBwZW5kKHZhbHVlKTsKKyAgICB9CisgICAgCisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3Rh
dGljIFZlY3RvcjxXZWJzaXRlRGF0YTo6RW50cnk+IGZpbHRlckZvclJlZ2lzdHJhYmxlRG9tYWlu
cyhjb25zdCBWZWN0b3I8UmVnaXN0cmFibGVEb21haW4+JiByZWdpc3RyYWJsZURvbWFpbnMsIGNv
bnN0IFZlY3RvcjxXZWJzaXRlRGF0YTo6RW50cnk+JiBmb3VuZFZhbHVlcykKK3sKKyAgICBWZWN0
b3I8V2Vic2l0ZURhdGE6OkVudHJ5PiByZXN1bHQ7CisgICAgZm9yIChjb25zdCBhdXRvJiB2YWx1
ZSA6IGZvdW5kVmFsdWVzKSB7CisgICAgICAgIGlmIChyZWdpc3RyYWJsZURvbWFpbnMuY29udGFp
bnMoUmVnaXN0cmFibGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KHZhbHVlLm9yaWdp
bi5ob3N0KSkpCisgICAgICAgICAgICByZXN1bHQuYXBwZW5kKHZhbHVlKTsKKyAgICB9CisgICAg
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIFZlY3RvcjxXZWJDb3JlOjpTZWN1cml0
eU9yaWdpbkRhdGE+IGZpbHRlckZvclJlZ2lzdHJhYmxlRG9tYWlucyhjb25zdCBIYXNoU2V0PFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YT4mIG9yaWdpbnMsIGNvbnN0IFZlY3RvcjxSZWdpc3Ry
YWJsZURvbWFpbj4mIGRvbWFpbnNUb0RlbGV0ZSwgSGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4m
IGRvbWFpbnNEZWxldGVkKQoreworICAgIFZlY3RvcjxTZWN1cml0eU9yaWdpbkRhdGE+IG9yaWdp
bnNEZWxldGVkOworICAgIGZvciAoY29uc3QgYXV0byYgb3JpZ2luIDogb3JpZ2lucykgeworICAg
ICAgICBhdXRvIGRvbWFpbiA9IFJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9t
SG9zdChvcmlnaW4uaG9zdCk7CisgICAgICAgIGlmICghZG9tYWluc1RvRGVsZXRlLmNvbnRhaW5z
KGRvbWFpbikpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgb3JpZ2luc0RlbGV0ZWQu
YXBwZW5kKG9yaWdpbik7CisgICAgICAgIGRvbWFpbnNEZWxldGVkLmFkZChkb21haW4pOworICAg
IH0KKworICAgIHJldHVybiBvcmlnaW5zRGVsZXRlZDsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6ZGVsZXRlQW5kUmVzdHJpY3RXZWJzaXRlRGF0YUZvclJlZ2lzdHJhYmxlRG9tYWlucyhQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+IHdlYnNpdGVE
YXRhVHlwZXMsIFJlZ2lzdHJhYmxlRG9tYWluc1RvRGVsZXRlT3JSZXN0cmljdFdlYnNpdGVEYXRh
Rm9yJiYgZG9tYWlucywgYm9vbCBzaG91bGROb3RpZnlQYWdlLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IEhhc2hTZXQ8UmVnaXN0cmFibGVEb21haW4+Jik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgT3B0aW9uU2V0PFdlYnNpdGVEYXRhRmV0Y2hPcHRpb24+IGZldGNoT3B0aW9u
cyA9IFdlYnNpdGVEYXRhRmV0Y2hPcHRpb246OkRvTm90Q3JlYXRlUHJvY2Vzc2VzOworCisgICAg
c3RydWN0IENhbGxiYWNrQWdncmVnYXRvciBmaW5hbCA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291
bnRlZDxDYWxsYmFja0FnZ3JlZ2F0b3I+IHsKKyAgICAgICAgZXhwbGljaXQgQ2FsbGJhY2tBZ2dy
ZWdhdG9yKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNldDxSZWdpc3RyYWJsZURv
bWFpbj4mKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgICAgIDogbV9jb21wbGV0aW9u
SGFuZGxlcihXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSkKKyAgICAgICAgeworICAgICAgICB9
CisgICAgICAgIAorICAgICAgICB+Q2FsbGJhY2tBZ2dyZWdhdG9yKCkKKyAgICAgICAgeworICAg
ICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjb21wbGV0aW9uSGFuZGxlciA9IFdU
Rk1vdmUobV9jb21wbGV0aW9uSGFuZGxlciksIGRvbWFpbnMgPSBXVEZNb3ZlKG1fZG9tYWlucyld
ICgpIG11dGFibGUgeworICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKGRvbWFpbnMp
OworICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgSGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4mKT4gbV9jb21w
bGV0aW9uSGFuZGxlcjsKKyAgICAgICAgSGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4gbV9kb21h
aW5zOworICAgIH07CisgICAgCisgICAgYXV0byBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBhZG9wdFJl
ZigqbmV3IENhbGxiYWNrQWdncmVnYXRvcihbdGhpcywgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgc2hvdWxkTm90aWZ5UGFnZV0gKGNvbnN0IEhhc2hTZXQ8
UmVnaXN0cmFibGVEb21haW4+JiBkb21haW5zV2l0aERhdGEpIG11dGFibGUgeworICAgICAgICBp
ZiAoc2hvdWxkTm90aWZ5UGFnZSkKKyAgICAgICAgICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9u
KCktPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6Ok5vdGlmeVdlYnNpdGVEYXRh
RGVsZXRpb25Gb3JSZWdpc3RyYWJsZURvbWFpbnNGaW5pc2hlZCgpLCAwKTsKKyAgICAgICAgCisg
ICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgZG9tYWluc1dpdGhEYXRhID0gY3Jvc3NUaHJlYWRDb3B5
KGRvbWFpbnNXaXRoRGF0YSldICgpIG11dGFibGUgeworICAgICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIoZG9tYWluc1dpdGhEYXRhKTsKKyAgICAgICAgfSk7CisgICAgfSkpOworCisgICAgSGFz
aFNldDxTdHJpbmc+IGhvc3ROYW1lc1dpdGhDb29raWVzOworICAgIEhhc2hTZXQ8U3RyaW5nPiBo
b3N0TmFtZXNXaXRoSFNUU0NhY2hlOworICAgIFZlY3RvcjxTdHJpbmc+IGhvc3RuYW1lc1dpdGhD
b29raWVzVG9EZWxldGU7CisgICAgYXV0byBkb21haW5zVG9EZWxldGVBbGxOb25Db29raWVXZWJz
aXRlRGF0YUZvciA9IGRvbWFpbnMuZG9tYWluc1RvRGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURh
dGFGb3I7CisgICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBl
OjpDb29raWVzKSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0g
c3RvcmFnZVNlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICAgICAgbmV0d29ya1N0b3JhZ2VT
ZXNzaW9uLT5nZXRIb3N0bmFtZXNXaXRoQ29va2llcyhob3N0TmFtZXNXaXRoQ29va2llcyk7CisK
KyAgICAgICAgICAgIGhvc3RuYW1lc1dpdGhDb29raWVzVG9EZWxldGUgPSBmaWx0ZXJGb3JSZWdp
c3RyYWJsZURvbWFpbnMoZG9tYWlucy5kb21haW5zVG9EZWxldGVBbGxDb29raWVzRm9yLCBob3N0
TmFtZXNXaXRoQ29va2llcyk7CisgICAgICAgICAgICBuZXR3b3JrU3RvcmFnZVNlc3Npb24tPmRl
bGV0ZUNvb2tpZXNGb3JIb3N0bmFtZXMoaG9zdG5hbWVzV2l0aENvb2tpZXNUb0RlbGV0ZSwgV2Vi
Q29yZTo6SW5jbHVkZUh0dHBPbmx5Q29va2llczo6WWVzKTsKKworICAgICAgICAgICAgZm9yIChj
b25zdCBhdXRvJiBob3N0IDogaG9zdG5hbWVzV2l0aENvb2tpZXNUb0RlbGV0ZSkKKyAgICAgICAg
ICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fZG9tYWlucy5hZGQoUmVnaXN0cmFibGVEb21h
aW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KGhvc3QpKTsKKworICAgICAgICAgICAgaG9zdG5h
bWVzV2l0aENvb2tpZXNUb0RlbGV0ZSA9IGZpbHRlckZvclJlZ2lzdHJhYmxlRG9tYWlucyhkb21h
aW5zLmRvbWFpbnNUb0RlbGV0ZUFsbEJ1dEh0dHBPbmx5Q29va2llc0ZvciwgaG9zdE5hbWVzV2l0
aENvb2tpZXMpOworICAgICAgICAgICAgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5kZWxldGVDb29r
aWVzRm9ySG9zdG5hbWVzKGhvc3RuYW1lc1dpdGhDb29raWVzVG9EZWxldGUsIFdlYkNvcmU6Oklu
Y2x1ZGVIdHRwT25seUNvb2tpZXM6Ok5vKTsKKworICAgICAgICAgICAgZm9yIChjb25zdCBhdXRv
JiBob3N0IDogaG9zdG5hbWVzV2l0aENvb2tpZXNUb0RlbGV0ZSkKKyAgICAgICAgICAgICAgICBj
YWxsYmFja0FnZ3JlZ2F0b3ItPm1fZG9tYWlucy5hZGQoUmVnaXN0cmFibGVEb21haW46OnVuY2hl
Y2tlZENyZWF0ZUZyb21Ib3N0KGhvc3QpKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFZlY3Rv
cjxTdHJpbmc+IGhvc3RuYW1lc1dpdGhIU1RTVG9EZWxldGU7CisjaWYgUExBVEZPUk0oQ09DT0Ep
IHx8IFVTRShTT1VQKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6SFNUU0NhY2hlKSkgeworICAgICAgICBob3N0TmFtZXNXaXRoSFNUU0NhY2hlID0g
dGhpcy0+aG9zdE5hbWVzV2l0aEhTVFNDYWNoZShzZXNzaW9uSUQpOworICAgICAgICBob3N0bmFt
ZXNXaXRoSFNUU1RvRGVsZXRlID0gZmlsdGVyRm9yUmVnaXN0cmFibGVEb21haW5zKGRvbWFpbnNU
b0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLCBob3N0TmFtZXNXaXRoSFNUU0NhY2hl
KTsKKworICAgICAgICBmb3IgKGNvbnN0IGF1dG8mIGhvc3QgOiBob3N0bmFtZXNXaXRoSFNUU1Rv
RGVsZXRlKQorICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX2RvbWFpbnMuYWRkKFJl
Z2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChob3N0KSk7CisKKyAgICAg
ICAgZGVsZXRlSFNUU0NhY2hlRm9ySG9zdE5hbWVzKHNlc3Npb25JRCwgaG9zdG5hbWVzV2l0aEhT
VFNUb0RlbGV0ZSk7CisgICAgfQorI2VuZGlmCisKKyNpZiBIQVZFKENGTkVUV09SS19BTFRFUk5B
VElWRV9TRVJWSUNFKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6QWx0ZXJuYXRpdmVTZXJ2aWNlcykpIHsKKyAgICAgICAgaWYgKGF1dG8qIG5ldHdv
cmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICAg
ICAgVmVjdG9yPFN0cmluZz4gcmVnaXN0cmFibGVEb21haW5zVG9EZWxldGU7CisgICAgICAgICAg
ICByZWdpc3RyYWJsZURvbWFpbnNUb0RlbGV0ZS5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KGRvbWFp
bnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLnNpemUoKSk7CisgICAgICAgICAg
ICBmb3IgKGF1dG8mIGRvbWFpbiA6IGRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVE
YXRhRm9yKQorICAgICAgICAgICAgICAgIHJlZ2lzdHJhYmxlRG9tYWluc1RvRGVsZXRlLnVuY2hl
Y2tlZEFwcGVuZChkb21haW4uc3RyaW5nKCkpOworICAgICAgICAgICAgbmV0d29ya1Nlc3Npb24t
PmRlbGV0ZUFsdGVybmF0aXZlU2VydmljZXNGb3JIb3N0TmFtZXMocmVnaXN0cmFibGVEb21haW5z
VG9EZWxldGUpOworICAgICAgICB9CisgICAgfQorI2VuZGlmCisKKyAgICBpZiAod2Vic2l0ZURh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkNyZWRlbnRpYWxzKSkgeworICAgICAg
ICBpZiAoYXV0byogc2Vzc2lvbiA9IHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAg
ICAgICAgIGF1dG8gb3JpZ2lucyA9IHNlc3Npb24tPmNyZWRlbnRpYWxTdG9yYWdlKCkub3JpZ2lu
c1dpdGhDcmVkZW50aWFscygpOworICAgICAgICAgICAgYXV0byBvcmlnaW5zVG9EZWxldGUgPSBm
aWx0ZXJGb3JSZWdpc3RyYWJsZURvbWFpbnMob3JpZ2lucywgZG9tYWluc1RvRGVsZXRlQWxsTm9u
Q29va2llV2Vic2l0ZURhdGFGb3IsIGNhbGxiYWNrQWdncmVnYXRvci0+bV9kb21haW5zKTsKKyAg
ICAgICAgICAgIGZvciAoYXV0byYgb3JpZ2luIDogb3JpZ2luc1RvRGVsZXRlKQorICAgICAgICAg
ICAgICAgIHNlc3Npb24tPmNyZWRlbnRpYWxTdG9yYWdlKCkucmVtb3ZlQ3JlZGVudGlhbHNXaXRo
T3JpZ2luKG9yaWdpbik7CisgICAgICAgIH0KKworICAgICAgICBhdXRvIG9yaWdpbnMgPSBXZWJD
b3JlOjpDcmVkZW50aWFsU3RvcmFnZTo6b3JpZ2luc1dpdGhTZXNzaW9uQ3JlZGVudGlhbHMoKTsK
KyAgICAgICAgYXV0byBvcmlnaW5zVG9EZWxldGUgPSBmaWx0ZXJGb3JSZWdpc3RyYWJsZURvbWFp
bnMob3JpZ2lucywgZG9tYWluc1RvRGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURhdGFGb3IsIGNh
bGxiYWNrQWdncmVnYXRvci0+bV9kb21haW5zKTsKKyAgICAgICAgV2ViQ29yZTo6Q3JlZGVudGlh
bFN0b3JhZ2U6OnJlbW92ZVNlc3Npb25DcmVkZW50aWFsc1dpdGhPcmlnaW5zKG9yaWdpbnNUb0Rl
bGV0ZSk7CisgICAgfQorICAgIAorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdl
YnNpdGVEYXRhVHlwZTo6RE9NQ2FjaGUpKSB7CisgICAgICAgIENhY2hlU3RvcmFnZTo6RW5naW5l
OjpmZXRjaEVudHJpZXMoKnRoaXMsIHNlc3Npb25JRCwgZmV0Y2hPcHRpb25zLmNvbnRhaW5zKFdl
YnNpdGVEYXRhRmV0Y2hPcHRpb246OkNvbXB1dGVTaXplcyksIFt0aGlzLCBkb21haW5zVG9EZWxl
dGVBbGxOb25Db29raWVXZWJzaXRlRGF0YUZvciwgc2Vzc2lvbklELCBjYWxsYmFja0FnZ3JlZ2F0
b3JdKGF1dG8gZW50cmllcykgbXV0YWJsZSB7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGF1
dG8gZW50cmllc1RvRGVsZXRlID0gZmlsdGVyRm9yUmVnaXN0cmFibGVEb21haW5zKGRvbWFpbnNU
b0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLCBlbnRyaWVzKTsKKworICAgICAgICAg
ICAgZm9yIChjb25zdCBhdXRvJiBlbnRyeSA6IGVudHJpZXNUb0RlbGV0ZSkKKyAgICAgICAgICAg
ICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fZG9tYWlucy5hZGQoUmVnaXN0cmFibGVEb21haW46
OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KGVudHJ5Lm9yaWdpbi5ob3N0KSk7CisKKyAgICAgICAg
ICAgIGZvciAoYXV0byYgZW50cnkgOiBlbnRyaWVzVG9EZWxldGUpCisgICAgICAgICAgICAgICAg
Q2FjaGVTdG9yYWdlOjpFbmdpbmU6OmNsZWFyQ2FjaGVzRm9yT3JpZ2luKCp0aGlzLCBzZXNzaW9u
SUQsIFNlY3VyaXR5T3JpZ2luRGF0YSB7IGVudHJ5Lm9yaWdpbiB9LCBbY2FsbGJhY2tBZ2dyZWdh
dG9yXSB7IH0pOworICAgICAgICB9KTsKKyAgICB9CisKKyAgICBpZiAobV9zdG9yYWdlTWFuYWdl
clNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkgeworICAgICAgICBpZiAod2Vic2l0ZURhdGFUeXBl
cy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlc3Npb25TdG9yYWdlKSkgeworICAgICAgICAg
ICAgbV9zdG9yYWdlTWFuYWdlclNldC0+Z2V0U2Vzc2lvblN0b3JhZ2VPcmlnaW5zKHNlc3Npb25J
RCwgW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgdGhpcywgc2Vzc2lvbklELCBjYWxs
YmFja0FnZ3JlZ2F0b3IsIGRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9y
XShhdXRvJiYgb3JpZ2lucykgeworICAgICAgICAgICAgICAgIGlmICghbV9zdG9yYWdlTWFuYWdl
clNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwor
CisgICAgICAgICAgICAgICAgYXV0byBvcmlnaW5zVG9EZWxldGUgPSBmaWx0ZXJGb3JSZWdpc3Ry
YWJsZURvbWFpbnMob3JpZ2lucywgZG9tYWluc1RvRGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURh
dGFGb3IsIGNhbGxiYWNrQWdncmVnYXRvci0+bV9kb21haW5zKTsKKyAgICAgICAgICAgICAgICBt
X3N0b3JhZ2VNYW5hZ2VyU2V0LT5kZWxldGVTZXNzaW9uU3RvcmFnZUZvck9yaWdpbnMoc2Vzc2lv
bklELCBvcmlnaW5zVG9EZWxldGUsIFtjYWxsYmFja0FnZ3JlZ2F0b3JdIHsgfSk7CisgICAgICAg
ICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRh
aW5zKFdlYnNpdGVEYXRhVHlwZTo6TG9jYWxTdG9yYWdlKSkgeworICAgICAgICAgICAgbV9zdG9y
YWdlTWFuYWdlclNldC0+Z2V0TG9jYWxTdG9yYWdlT3JpZ2lucyhzZXNzaW9uSUQsIFtwcm90ZWN0
ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHRoaXMsIHNlc3Npb25JRCwgY2FsbGJhY2tBZ2dyZWdh
dG9yLCBkb21haW5zVG9EZWxldGVBbGxOb25Db29raWVXZWJzaXRlRGF0YUZvcl0oYXV0byYmIG9y
aWdpbnMpIHsKKyAgICAgICAgICAgICAgICBpZiAoIW1fc3RvcmFnZU1hbmFnZXJTZXQtPmNvbnRh
aW5zKHNlc3Npb25JRCkpCisgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAg
ICAgICAgIGF1dG8gb3JpZ2luc1RvRGVsZXRlID0gZmlsdGVyRm9yUmVnaXN0cmFibGVEb21haW5z
KG9yaWdpbnMsIGRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLCBjYWxs
YmFja0FnZ3JlZ2F0b3ItPm1fZG9tYWlucyk7CisgICAgICAgICAgICAgICAgbV9zdG9yYWdlTWFu
YWdlclNldC0+ZGVsZXRlTG9jYWxTdG9yYWdlRm9yT3JpZ2lucyhzZXNzaW9uSUQsIG9yaWdpbnNU
b0RlbGV0ZSwgW2NhbGxiYWNrQWdncmVnYXRvcl0geyB9KTsKKyAgICAgICAgICAgIH0pOworICAg
ICAgICB9CisgICAgfQorCisgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChz
ZXNzaW9uSUQpOworICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5j
b250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKKyAgICAgICAg
d2ViSURCU2VydmVyKHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbdGhpcywgcHJvdGVjdGVkVGhpcyA9
IG1ha2VSZWYoKnRoaXMpLCBzZXNzaW9uSUQsIGNhbGxiYWNrQWdncmVnYXRvciwgZG9tYWluc1Rv
RGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURhdGFGb3JdKGF1dG8mJiBvcmlnaW5zKSB7CisgICAg
ICAgICAgICBpZiAoIW1fd2ViSURCU2VydmVycy5jb250YWlucyhzZXNzaW9uSUQpKQorICAgICAg
ICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgICAgYXV0byBvcmlnaW5zVG9EZWxldGUgPSBm
aWx0ZXJGb3JSZWdpc3RyYWJsZURvbWFpbnMob3JpZ2lucywgZG9tYWluc1RvRGVsZXRlQWxsTm9u
Q29va2llV2Vic2l0ZURhdGFGb3IsIGNhbGxiYWNrQWdncmVnYXRvci0+bV9kb21haW5zKTsKKyAg
ICAgICAgICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2Vz
Rm9yT3JpZ2lucyhvcmlnaW5zVG9EZWxldGUsIFtjYWxsYmFja0FnZ3JlZ2F0b3JdIHsgfSk7Cisg
ICAgICAgIH0pOworICAgIH0KKyAgICAKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAg
cGF0aCA9IG1fc2VydmljZVdvcmtlckluZm8uZ2V0KHNlc3Npb25JRCkuZGF0YWJhc2VQYXRoOwor
ICAgIGJvb2wgY2xlYXJTZXJ2aWNlV29ya2VycyA9IHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMo
V2Vic2l0ZURhdGFUeXBlOjpET01DYWNoZSkgfHwgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhX
ZWJzaXRlRGF0YVR5cGU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25zKTsKKyAgICBpZiAoY2xl
YXJTZXJ2aWNlV29ya2VycyAmJiAhcGF0aC5pc0VtcHR5KCkpIHsKKyAgICAgICAgc3dTZXJ2ZXJG
b3JTZXNzaW9uKHNlc3Npb25JRCkuZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKFt0aGlzLCBz
ZXNzaW9uSUQsIGRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLCBjYWxs
YmFja0FnZ3JlZ2F0b3JdKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYgc2VjdXJp
dHlPcmlnaW5zKSBtdXRhYmxlIHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgc2VjdXJpdHlPcmln
aW4gOiBzZWN1cml0eU9yaWdpbnMpIHsKKyAgICAgICAgICAgICAgICBpZiAoIWRvbWFpbnNUb0Rl
bGV0ZUFsbE5vbkNvb2tpZVdlYnNpdGVEYXRhRm9yLmNvbnRhaW5zKFJlZ2lzdHJhYmxlRG9tYWlu
Ojp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChzZWN1cml0eU9yaWdpbi5ob3N0KSkpCisgICAgICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRv
ci0+bV9kb21haW5zLmFkZChSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2VkQ3JlYXRlRnJvbUhv
c3Qoc2VjdXJpdHlPcmlnaW4uaG9zdCkpOworICAgICAgICAgICAgICAgIHN3U2VydmVyRm9yU2Vz
c2lvbihzZXNzaW9uSUQpLmNsZWFyKHNlY3VyaXR5T3JpZ2luLCBbY2FsbGJhY2tBZ2dyZWdhdG9y
XSB7IH0pOworICAgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICB9CisjZW5kaWYKKworICAg
IGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RGlza0NhY2hl
KSkgeworICAgICAgICBmb3JFYWNoTmV0d29ya1Nlc3Npb24oW3Nlc3Npb25JRCwgZmV0Y2hPcHRp
b25zLCAmZG9tYWluc1RvRGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURhdGFGb3IsICZjYWxsYmFj
a0FnZ3JlZ2F0b3JdKGF1dG8mIHNlc3Npb24pIHsKKyAgICAgICAgICAgIGZldGNoRGlza0NhY2hl
RW50cmllcyhzZXNzaW9uLmNhY2hlKCksIHNlc3Npb25JRCwgZmV0Y2hPcHRpb25zLCBbZG9tYWlu
c1RvRGVsZXRlQWxsTm9uQ29va2llV2Vic2l0ZURhdGFGb3IsIGNhbGxiYWNrQWdncmVnYXRvciwg
c2Vzc2lvbiA9IG1ha2VXZWFrUHRyKCZzZXNzaW9uKV0oYXV0byBlbnRyaWVzKSBtdXRhYmxlIHsK
KyAgICAgICAgICAgICAgICBpZiAoIXNlc3Npb24pCisgICAgICAgICAgICAgICAgICAgIHJldHVy
bjsKKworICAgICAgICAgICAgICAgIFZlY3RvcjxTZWN1cml0eU9yaWdpbkRhdGE+IGVudHJpZXNU
b0RlbGV0ZTsKKyAgICAgICAgICAgICAgICBmb3IgKGF1dG8mIGVudHJ5IDogZW50cmllcykgewor
ICAgICAgICAgICAgICAgICAgICBpZiAoIWRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNvb2tpZVdlYnNp
dGVEYXRhRm9yLmNvbnRhaW5zKFJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9t
SG9zdChlbnRyeS5vcmlnaW4uaG9zdCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgY29udGlu
dWU7CisgICAgICAgICAgICAgICAgICAgIGVudHJpZXNUb0RlbGV0ZS5hcHBlbmQoZW50cnkub3Jp
Z2luKTsKKyAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX2RvbWFpbnMu
YWRkKFJlZ2lzdHJhYmxlRG9tYWluOjp1bmNoZWNrZWRDcmVhdGVGcm9tSG9zdChlbnRyeS5vcmln
aW4uaG9zdCkpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjbGVhckRpc2tD
YWNoZUVudHJpZXMoc2Vzc2lvbi0+Y2FjaGUoKSwgZW50cmllc1RvRGVsZXRlLCBbY2FsbGJhY2tB
Z2dyZWdhdG9yXSB7IH0pOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0pOworICAgIH0KKwor
ICAgIGF1dG8gZGF0YVR5cGVzRm9yVUlQcm9jZXNzID0gV2Vic2l0ZURhdGE6OmZpbHRlcih3ZWJz
aXRlRGF0YVR5cGVzLCBXZWJzaXRlRGF0YVByb2Nlc3NUeXBlOjpVSSk7CisgICAgaWYgKCFkYXRh
VHlwZXNGb3JVSVByb2Nlc3MuaXNFbXB0eSgpICYmICFkb21haW5zVG9EZWxldGVBbGxOb25Db29r
aWVXZWJzaXRlRGF0YUZvci5pc0VtcHR5KCkpIHsKKyAgICAgICAgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBIYXNoU2V0PFJlZ2lzdHJhYmxlRG9tYWluPiYpPiBjb21wbGV0aW9uSGFuZGxl
ciA9IFtjYWxsYmFja0FnZ3JlZ2F0b3JdIChjb25zdCBIYXNoU2V0PFJlZ2lzdHJhYmxlRG9tYWlu
PiYgZG9tYWlucykgeworICAgICAgICAgICAgZm9yIChhdXRvJiBkb21haW4gOiBkb21haW5zKQor
ICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV9kb21haW5zLmFkZChkb21haW4p
OworICAgICAgICB9OworICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OkRlbGV0ZVdlYnNpdGVE
YXRhSW5VSVByb2Nlc3NGb3JSZWdpc3RyYWJsZURvbWFpbnMoc2Vzc2lvbklELCBkYXRhVHlwZXNG
b3JVSVByb2Nlc3MsIGZldGNoT3B0aW9ucywgZG9tYWluc1RvRGVsZXRlQWxsTm9uQ29va2llV2Vi
c2l0ZURhdGFGb3IpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgfQorfQorCit2
b2lkIE5ldHdvcmtQcm9jZXNzOjpkZWxldGVDb29raWVzRm9yVGVzdGluZyhQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQsIFJlZ2lzdHJhYmxlRG9tYWluIGRvbWFpbiwgYm9vbCBpbmNsdWRlSHR0cE9u
bHlDb29raWVzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIp
Cit7CisgICAgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4gY29va2llVHlwZSA9IFdlYnNpdGVE
YXRhVHlwZTo6Q29va2llczsKKyAgICBSZWdpc3RyYWJsZURvbWFpbnNUb0RlbGV0ZU9yUmVzdHJp
Y3RXZWJzaXRlRGF0YUZvciB0b0RlbGV0ZUZvcjsKKyAgICBpZiAoaW5jbHVkZUh0dHBPbmx5Q29v
a2llcykKKyAgICAgICAgdG9EZWxldGVGb3IuZG9tYWluc1RvRGVsZXRlQWxsQ29va2llc0Zvci5h
cHBlbmQoZG9tYWluKTsKKyAgICBlbHNlCisgICAgICAgIHRvRGVsZXRlRm9yLmRvbWFpbnNUb0Rl
bGV0ZUFsbEJ1dEh0dHBPbmx5Q29va2llc0Zvci5hcHBlbmQoZG9tYWluKTsKKworICAgIGRlbGV0
ZUFuZFJlc3RyaWN0V2Vic2l0ZURhdGFGb3JSZWdpc3RyYWJsZURvbWFpbnMoc2Vzc2lvbklELCBj
b29raWVUeXBlLCBXVEZNb3ZlKHRvRGVsZXRlRm9yKSwgdHJ1ZSwgW2NvbXBsZXRpb25IYW5kbGVy
ID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIChjb25zdCBIYXNoU2V0PFJlZ2lzdHJhYmxl
RG9tYWluPiYgZG9tYWluc0RlbGV0ZWRGb3IpIG11dGFibGUgeworICAgICAgICBVTlVTRURfUEFS
QU0oZG9tYWluc0RlbGV0ZWRGb3IpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAg
IH0pOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpyZWdpc3RyYWJsZURvbWFpbnNXaXRoV2Vi
c2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFU
eXBlPiB3ZWJzaXRlRGF0YVR5cGVzLCBib29sIHNob3VsZE5vdGlmeVBhZ2UsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoSGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4mJik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgT3B0aW9uU2V0PFdlYnNpdGVEYXRhRmV0Y2hPcHRpb24+IGZldGNoT3B0
aW9ucyA9IFdlYnNpdGVEYXRhRmV0Y2hPcHRpb246OkRvTm90Q3JlYXRlUHJvY2Vzc2VzOworICAg
IAorICAgIHN0cnVjdCBDYWxsYmFja0FnZ3JlZ2F0b3IgZmluYWwgOiBwdWJsaWMgVGhyZWFkU2Fm
ZVJlZkNvdW50ZWQ8Q2FsbGJhY2tBZ2dyZWdhdG9yPiB7CisgICAgICAgIGV4cGxpY2l0IENhbGxi
YWNrQWdncmVnYXRvcihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEhhc2hTZXQ8UmVnaXN0cmFibGVE
b21haW4+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICAgICAgOiBtX2NvbXBsZXRp
b25IYW5kbGVyKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKQorICAgICAgICB7CisgICAgICAg
IH0KKyAgICAgICAgCisgICAgICAgIH5DYWxsYmFja0FnZ3JlZ2F0b3IoKQorICAgICAgICB7Cisg
ICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25IYW5kbGVyID0g
V1RGTW92ZShtX2NvbXBsZXRpb25IYW5kbGVyKSwgd2Vic2l0ZURhdGEgPSBXVEZNb3ZlKG1fd2Vi
c2l0ZURhdGEpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgICAgICAgICBIYXNoU2V0PFJlZ2lzdHJh
YmxlRG9tYWluPiBkb21haW5zOworICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgaG9z
dG5hbWVXaXRoQ29va2llcyA6IHdlYnNpdGVEYXRhLmhvc3ROYW1lc1dpdGhDb29raWVzKQorICAg
ICAgICAgICAgICAgICAgICBkb21haW5zLmFkZChSZWdpc3RyYWJsZURvbWFpbjo6dW5jaGVja2Vk
Q3JlYXRlRnJvbUhvc3QoaG9zdG5hbWVXaXRoQ29va2llcykpOworCisgICAgICAgICAgICAgICAg
Zm9yIChjb25zdCBhdXRvJiBob3N0bmFtZVdpdGhIU1RTIDogd2Vic2l0ZURhdGEuaG9zdE5hbWVz
V2l0aEhTVFNDYWNoZSkKKyAgICAgICAgICAgICAgICAgICAgZG9tYWlucy5hZGQoUmVnaXN0cmFi
bGVEb21haW46OnVuY2hlY2tlZENyZWF0ZUZyb21Ib3N0KGhvc3RuYW1lV2l0aEhTVFMpKTsKKwor
ICAgICAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgZW50cnkgOiB3ZWJzaXRlRGF0YS5lbnRy
aWVzKQorICAgICAgICAgICAgICAgICAgICBkb21haW5zLmFkZChSZWdpc3RyYWJsZURvbWFpbjo6
dW5jaGVja2VkQ3JlYXRlRnJvbUhvc3QoZW50cnkub3JpZ2luLmhvc3QpKTsKKworICAgICAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoZG9tYWlucykpOworICAgICAgICAgICAg
fSk7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
SGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4mJik+IG1fY29tcGxldGlvbkhhbmRsZXI7CisgICAg
ICAgIFdlYnNpdGVEYXRhIG1fd2Vic2l0ZURhdGE7CisgICAgfTsKKyAgICAKKyAgICBhdXRvIGNh
bGxiYWNrQWdncmVnYXRvciA9IGFkb3B0UmVmKCpuZXcgQ2FsbGJhY2tBZ2dyZWdhdG9yKFt0aGlz
LCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCBzaG91bGRO
b3RpZnlQYWdlXSAoSGFzaFNldDxSZWdpc3RyYWJsZURvbWFpbj4mJiBkb21haW5zV2l0aERhdGEp
IG11dGFibGUgeworICAgICAgICBpZiAoc2hvdWxkTm90aWZ5UGFnZSkKKyAgICAgICAgICAgIHBh
cmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJv
eHk6Ok5vdGlmeVdlYnNpdGVEYXRhU2NhbkZvclJlZ2lzdHJhYmxlRG9tYWluc0ZpbmlzaGVkKCks
IDApOworCisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlvbkhhbmRs
ZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgZG9tYWluc1dpdGhEYXRhID0gY3Jvc3NU
aHJlYWRDb3B5KGRvbWFpbnNXaXRoRGF0YSldICgpIG11dGFibGUgeworICAgICAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIoV1RGTW92ZShkb21haW5zV2l0aERhdGEpKTsKKyAgICAgICAgfSk7Cisg
ICAgfSkpOworICAgIAorICAgIGF1dG8mIHdlYnNpdGVEYXRhID0gY2FsbGJhY2tBZ2dyZWdhdG9y
LT5tX3dlYnNpdGVEYXRhOworICAgIAorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5z
KFdlYnNpdGVEYXRhVHlwZTo6Q29va2llcykpIHsKKyAgICAgICAgaWYgKGF1dG8qIG5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiA9IHN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgICAgICBu
ZXR3b3JrU3RvcmFnZVNlc3Npb24tPmdldEhvc3RuYW1lc1dpdGhDb29raWVzKHdlYnNpdGVEYXRh
Lmhvc3ROYW1lc1dpdGhDb29raWVzKTsKKyAgICB9CisgICAgCisjaWYgUExBVEZPUk0oQ09DT0Ep
IHx8IFVTRShTT1VQKQorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6SFNUU0NhY2hlKSkKKyAgICAgICAgd2Vic2l0ZURhdGEuaG9zdE5hbWVzV2l0aEhT
VFNDYWNoZSA9IGhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUoc2Vzc2lvbklEKTsKKyNlbmRpZgorCisg
ICAgaWYgKHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpDcmVkZW50
aWFscykpIHsKKyAgICAgICAgaWYgKGF1dG8qIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiA9IHN0b3Jh
Z2VTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgICAgIGF1dG8gc2VjdXJpdHlPcmlnaW5z
ID0gbmV0d29ya1N0b3JhZ2VTZXNzaW9uLT5jcmVkZW50aWFsU3RvcmFnZSgpLm9yaWdpbnNXaXRo
Q3JlZGVudGlhbHMoKTsKKyAgICAgICAgICAgIGZvciAoYXV0byYgc2VjdXJpdHlPcmlnaW4gOiBz
ZWN1cml0eU9yaWdpbnMpCisgICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX3dl
YnNpdGVEYXRhLmVudHJpZXMuYXBwZW5kKHsgc2VjdXJpdHlPcmlnaW4sIFdlYnNpdGVEYXRhVHlw
ZTo6Q3JlZGVudGlhbHMsIDAgfSk7CisgICAgICAgIH0KKyAgICB9CisgICAgCisgICAgaWYgKHdl
YnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpET01DYWNoZSkpIHsKKyAg
ICAgICAgQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmZldGNoRW50cmllcygqdGhpcywgc2Vzc2lvbklE
LCBmZXRjaE9wdGlvbnMuY29udGFpbnMoV2Vic2l0ZURhdGFGZXRjaE9wdGlvbjo6Q29tcHV0ZVNp
emVzKSwgW2NhbGxiYWNrQWdncmVnYXRvcl0oYXV0byBlbnRyaWVzKSBtdXRhYmxlIHsKKyAgICAg
ICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVuZFZl
Y3RvcihlbnRyaWVzKTsKKyAgICAgICAgfSk7CisgICAgfQorICAgIAorICAgIGF1dG8gcGF0aCA9
IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKKyAgICBpZiAoIXBhdGguaXNFbXB0
eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpJbmRleGVk
REJEYXRhYmFzZXMpKSB7CisgICAgICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmdldE9yaWdp
bnMoW2NhbGxiYWNrQWdncmVnYXRvcl0oYXV0byYmIG9yaWdpbnMpIHsKKyAgICAgICAgICAgIHdo
aWxlICghb3JpZ2lucy5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdh
dG9yLT5tX3dlYnNpdGVEYXRhLmVudHJpZXMuYXBwZW5kKHsgb3JpZ2lucy50YWtlQW55KCksIFdl
YnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzLCAwIH0pOworICAgICAgICB9KTsKKyAg
ICB9CisgICAgCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIHBhdGggPSBtX3NlcnZp
Y2VXb3JrZXJJbmZvLmdldChzZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKKyAgICBpZiAoIXBhdGgu
aXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpT
ZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9ucykpIHsKKyAgICAgICAgc3dTZXJ2ZXJGb3JTZXNzaW9u
KHNlc3Npb25JRCkuZ2V0T3JpZ2luc1dpdGhSZWdpc3RyYXRpb25zKFtjYWxsYmFja0FnZ3JlZ2F0
b3JdKGNvbnN0IEhhc2hTZXQ8U2VjdXJpdHlPcmlnaW5EYXRhPiYgc2VjdXJpdHlPcmlnaW5zKSBt
dXRhYmxlIHsKKyAgICAgICAgICAgIGZvciAoYXV0byYgc2VjdXJpdHlPcmlnaW4gOiBzZWN1cml0
eU9yaWdpbnMpCisgICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5tX3dlYnNpdGVE
YXRhLmVudHJpZXMuYXBwZW5kKHsgc2VjdXJpdHlPcmlnaW4sIFdlYnNpdGVEYXRhVHlwZTo6U2Vy
dmljZVdvcmtlclJlZ2lzdHJhdGlvbnMsIDAgfSk7CisgICAgICAgIH0pOworICAgIH0KKyNlbmRp
ZgorICAgIAorICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlw
ZTo6RGlza0NhY2hlKSkgeworICAgICAgICBmb3JFYWNoTmV0d29ya1Nlc3Npb24oW3Nlc3Npb25J
RCwgZmV0Y2hPcHRpb25zLCAmY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiBzZXNzaW9uKSB7Cisg
ICAgICAgICAgICBmZXRjaERpc2tDYWNoZUVudHJpZXMoc2Vzc2lvbi5jYWNoZSgpLCBzZXNzaW9u
SUQsIGZldGNoT3B0aW9ucywgW2NhbGxiYWNrQWdncmVnYXRvcl0oYXV0byBlbnRyaWVzKSBtdXRh
YmxlIHsKKyAgICAgICAgICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0ZURhdGEu
ZW50cmllcy5hcHBlbmRWZWN0b3IoZW50cmllcyk7CisgICAgICAgICAgICB9KTsKKyAgICAgICAg
fSk7CisgICAgfQorfQorI2VuZGlmIC8vIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVW
RU5USU9OKQorCitDYWNoZVN0b3JhZ2U6OkVuZ2luZSogTmV0d29ya1Byb2Nlc3M6OmZpbmRDYWNo
ZUVuZ2luZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCit7CisgICAgcmV0dXJuIG1fY2FjaGVF
bmdpbmVzLmdldChzZXNzaW9uSUQpOworfQorCitDYWNoZVN0b3JhZ2U6OkVuZ2luZSYgTmV0d29y
a1Byb2Nlc3M6OmVuc3VyZUNhY2hlRW5naW5lKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgRnVu
Y3Rpb248UmVmPENhY2hlU3RvcmFnZTo6RW5naW5lPigpPiYmIGZ1bmN0b3IpCit7CisgICAgcmV0
dXJuIG1fY2FjaGVFbmdpbmVzLmVuc3VyZShzZXNzaW9uSUQsIFdURk1vdmUoZnVuY3RvcikpLml0
ZXJhdG9yLT52YWx1ZTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVtb3ZlQ2FjaGVFbmdp
bmUoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQoreworICAgIG1fY2FjaGVFbmdpbmVzLnJlbW92
ZShzZXNzaW9uSUQpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpkb3dubG9hZFJlcXVlc3Qo
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiwgY29uc3QgU3RyaW5nJiBzdWdn
ZXN0ZWRGaWxlbmFtZSkKK3sKKyAgICBkb3dubG9hZE1hbmFnZXIoKS5zdGFydERvd25sb2FkKHNl
c3Npb25JRCwgZG93bmxvYWRJRCwgcmVxdWVzdCwgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
biwgc3VnZ2VzdGVkRmlsZW5hbWUpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpyZXN1bWVE
b3dubG9hZChQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIERvd25sb2FkSUQgZG93bmxvYWRJRCwg
Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiByZXN1bWVEYXRhLCBjb25zdCBTdHJpbmcmIHBhdGgs
IFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYgc2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSwgQ2FsbERvd25sb2FkRGlkU3RhcnQgY2FsbERvd25sb2FkRGlkU3RhcnQpCit7CisgICAgZG93
bmxvYWRNYW5hZ2VyKCkucmVzdW1lRG93bmxvYWQoc2Vzc2lvbklELCBkb3dubG9hZElELCByZXN1
bWVEYXRhLCBwYXRoLCBXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpLCBjYWxsRG93bmxv
YWREaWRTdGFydCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmNhbmNlbERvd25sb2FkKERv
d25sb2FkSUQgZG93bmxvYWRJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBJUEM6OkRh
dGFSZWZlcmVuY2UmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBkb3dubG9hZE1hbmFn
ZXIoKS5jYW5jZWxEb3dubG9hZChkb3dubG9hZElELCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7Cit9CisKKyNpZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnB1Ymxp
c2hEb3dubG9hZFByb2dyZXNzKERvd25sb2FkSUQgZG93bmxvYWRJRCwgY29uc3QgVVJMJiB1cmws
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYmIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpCit7Cisg
ICAgZG93bmxvYWRNYW5hZ2VyKCkucHVibGlzaERvd25sb2FkUHJvZ3Jlc3MoZG93bmxvYWRJRCwg
dXJsLCBXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKK30KKyNlbmRpZgorCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjpjb250aW51ZVdpbGxTZW5kUmVxdWVzdChEb3dubG9hZElEIGRvd25s
b2FkSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCit7CisgICAgZG93bmxv
YWRNYW5hZ2VyKCkuY29udGludWVXaWxsU2VuZFJlcXVlc3QoZG93bmxvYWRJRCwgV1RGTW92ZShy
ZXF1ZXN0KSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmZpbmRQZW5kaW5nRG93bmxvYWRM
b2NhdGlvbihOZXR3b3JrRGF0YVRhc2smIG5ldHdvcmtEYXRhVGFzaywgUmVzcG9uc2VDb21wbGV0
aW9uSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKK3sKKyAgICB1aW50NjRfdCBkZXN0aW5hdGlvbklEID0gbmV0d29ya0RhdGFUYXNr
LnBlbmRpbmdEb3dubG9hZElEKCkudG9VSW50NjQoKTsKKworICAgIFN0cmluZyBzdWdnZXN0ZWRG
aWxlbmFtZSA9IG5ldHdvcmtEYXRhVGFzay5zdWdnZXN0ZWRGaWxlbmFtZSgpOworCisgICAgZG93
bmxvYWRQcm94eUNvbm5lY3Rpb24oKS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpEb3du
bG9hZFByb3h5OjpEZWNpZGVEZXN0aW5hdGlvbldpdGhTdWdnZXN0ZWRGaWxlbmFtZShyZXNwb25z
ZSwgc3VnZ2VzdGVkRmlsZW5hbWUpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRo
aXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCBuZXR3
b3JrRGF0YVRhc2sgPSBtYWtlUmVmKG5ldHdvcmtEYXRhVGFzayldIChTdHJpbmcmJiBkZXN0aW5h
dGlvbiwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSwg
QWxsb3dPdmVyd3JpdGUgYWxsb3dPdmVyd3JpdGUpIG11dGFibGUgeworICAgICAgICBhdXRvIGRv
d25sb2FkSUQgPSBuZXR3b3JrRGF0YVRhc2stPnBlbmRpbmdEb3dubG9hZElEKCk7CisgICAgICAg
IGlmIChkZXN0aW5hdGlvbi5pc0VtcHR5KCkpCisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlv
bkhhbmRsZXIoUG9saWN5QWN0aW9uOjpJZ25vcmUpOworICAgICAgICBuZXR3b3JrRGF0YVRhc2st
PnNldFBlbmRpbmdEb3dubG9hZExvY2F0aW9uKGRlc3RpbmF0aW9uLCBXVEZNb3ZlKHNhbmRib3hF
eHRlbnNpb25IYW5kbGUpLCBhbGxvd092ZXJ3cml0ZSA9PSBBbGxvd092ZXJ3cml0ZTo6WWVzKTsK
KyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpEb3dubG9hZCk7CisgICAg
ICAgIGlmIChuZXR3b3JrRGF0YVRhc2stPnN0YXRlKCkgPT0gTmV0d29ya0RhdGFUYXNrOjpTdGF0
ZTo6Q2FuY2VsaW5nIHx8IG5ldHdvcmtEYXRhVGFzay0+c3RhdGUoKSA9PSBOZXR3b3JrRGF0YVRh
c2s6OlN0YXRlOjpDb21wbGV0ZWQpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgaWYg
KGRvd25sb2FkTWFuYWdlcigpLmRvd25sb2FkKGRvd25sb2FkSUQpKSB7CisgICAgICAgICAgICAv
LyBUaGUgY29tcGxldGlvbiBoYW5kbGVyIGFscmVhZHkgY2FsbGVkIGRhdGFUYXNrQmVjYW1lRG93
bmxvYWRUYXNrKCkuCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBk
b3dubG9hZE1hbmFnZXIoKS5kb3dubG9hZERlc3RpbmF0aW9uRGVjaWRlZChkb3dubG9hZElELCBX
VEZNb3ZlKG5ldHdvcmtEYXRhVGFzaykpOworICAgIH0sIGRlc3RpbmF0aW9uSUQpOworfQorCit2
b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZU1vZGVsU3luY2hyb25vdXNseUZvclRlc3Rpbmco
Q2FjaGVNb2RlbCBjYWNoZU1vZGVsLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgc2V0Q2FjaGVNb2RlbChjYWNoZU1vZGVsKTsKKyAgICBjb21w
bGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZU1vZGVs
KENhY2hlTW9kZWwgY2FjaGVNb2RlbCkKK3sKKyAgICBpZiAobV9oYXNTZXRDYWNoZU1vZGVsICYm
IChjYWNoZU1vZGVsID09IG1fY2FjaGVNb2RlbCkpCisgICAgICAgIHJldHVybjsKKworICAgIG1f
aGFzU2V0Q2FjaGVNb2RlbCA9IHRydWU7CisgICAgbV9jYWNoZU1vZGVsID0gY2FjaGVNb2RlbDsK
KworICAgIGZvckVhY2hOZXR3b3JrU2Vzc2lvbihbXShhdXRvJiBzZXNzaW9uKSB7CisgICAgICAg
IGlmIChhdXRvKiBjYWNoZSA9IHNlc3Npb24uY2FjaGUoKSkKKyAgICAgICAgICAgIGNhY2hlLT51
cGRhdGVDYXBhY2l0eSgpOworICAgIH0pOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRB
bGxvd3NBbnlTU0xDZXJ0aWZpY2F0ZUZvcldlYlNvY2tldChib29sIGFsbG93cywgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIC8vIEZJWE1FOiBT
dG9wIHVzaW5nIHRoaXMgd2hlbiBIQVZFKE5TVVJMU0VTU0lPTl9XRUJTT0NLRVQpIGlzIHRydWUu
CisgICAgRGVwcmVjYXRlZEdsb2JhbFNldHRpbmdzOjpzZXRBbGxvd3NBbnlTU0xDZXJ0aWZpY2F0
ZShhbGxvd3MpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQgTmV0d29ya1By
b2Nlc3M6OmFsbG93VExTQ2VydGlmaWNhdGVDaGFpbkZvckxvY2FsUENNVGVzdGluZyhQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFdlYkNvcmU6OkNlcnRpZmljYXRlSW5mbyYgY2VydGlm
aWNhdGVJbmZvKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IG1fbmV0d29ya1Nl
c3Npb25zLmdldChzZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+YWxsb3dUTFND
ZXJ0aWZpY2F0ZUNoYWluRm9yTG9jYWxQQ01UZXN0aW5nKGNlcnRpZmljYXRlSW5mbyk7Cit9CisK
K3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmxvZ0RpYWdub3N0aWNNZXNzYWdlKFdlYlBhZ2VQcm94eUlk
ZW50aWZpZXIgd2ViUGFnZVByb3h5SUQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3Ry
aW5nJiBkZXNjcmlwdGlvbiwgU2hvdWxkU2FtcGxlIHNob3VsZFNhbXBsZSkKK3sKKyAgICBpZiAo
IURpYWdub3N0aWNMb2dnaW5nQ2xpZW50OjpzaG91bGRMb2dBZnRlclNhbXBsaW5nKHNob3VsZFNh
bXBsZSkpCisgICAgICAgIHJldHVybjsKKworICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OkxvZ0RpYWdub3N0aWNNZXNzYWdl
KHdlYlBhZ2VQcm94eUlELCBtZXNzYWdlLCBkZXNjcmlwdGlvbiwgU2hvdWxkU2FtcGxlOjpObyks
IDApOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhS
ZXN1bHQoV2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJveHlJRCwgY29uc3QgU3RyaW5n
JiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBEaWFnbm9zdGljTG9nZ2luZ1Jl
c3VsdFR5cGUgcmVzdWx0LCBTaG91bGRTYW1wbGUgc2hvdWxkU2FtcGxlKQoreworICAgIGlmICgh
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OnNob3VsZExvZ0FmdGVyU2FtcGxpbmcoc2hvdWxkU2Ft
cGxlKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+
c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3NQcm94eTo6TG9nRGlhZ25vc3RpY01lc3NhZ2VX
aXRoUmVzdWx0KHdlYlBhZ2VQcm94eUlELCBtZXNzYWdlLCBkZXNjcmlwdGlvbiwgcmVzdWx0LCBT
aG91bGRTYW1wbGU6Ok5vKSwgMCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmxvZ0RpYWdu
b3N0aWNNZXNzYWdlV2l0aFZhbHVlKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFnZVByb3h5
SUQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgZG91
YmxlIHZhbHVlLCB1bnNpZ25lZCBzaWduaWZpY2FudEZpZ3VyZXMsIFNob3VsZFNhbXBsZSBzaG91
bGRTYW1wbGUpCit7CisgICAgaWYgKCFEaWFnbm9zdGljTG9nZ2luZ0NsaWVudDo6c2hvdWxkTG9n
QWZ0ZXJTYW1wbGluZyhzaG91bGRTYW1wbGUpKQorICAgICAgICByZXR1cm47CisKKyAgICBwYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc1Byb3h5
OjpMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZSh3ZWJQYWdlUHJveHlJRCwgbWVzc2FnZSwg
ZGVzY3JpcHRpb24sIHZhbHVlLCBzaWduaWZpY2FudEZpZ3VyZXMsIFNob3VsZFNhbXBsZTo6Tm8p
LCAwKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6dGVybWluYXRlKCkKK3sKKyAgICBwbGF0
Zm9ybVRlcm1pbmF0ZSgpOworICAgIEF1eGlsaWFyeVByb2Nlc3M6OnRlcm1pbmF0ZSgpOworfQor
Cit2b2lkIE5ldHdvcmtQcm9jZXNzOjpwcm9jZXNzV2lsbFN1c3BlbmRJbW1pbmVudGx5Rm9yVGVz
dGluZ1N5bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIHByZXBhcmVUb1N1c3BlbmQodHJ1ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpzdXNwZW5kSURCU2VydmVycyhib29sIGlzU3Vz
cGVuc2lvbkltbWluZW50KQoreworICAgIG1fc2hvdWxkU3VzcGVuZElEQlNlcnZlcnMgPSB0cnVl
OworICAgICsrbV9zdXNwZW5zaW9uSWRlbnRpZmllcjsKKworICAgIGJvb2wgYWxsU3VzcGVuZGVk
ID0gdHJ1ZTsKKyAgICBhdXRvIGNvbmRpdGlvbiA9IGlzU3VzcGVuc2lvbkltbWluZW50ID8gV2Vi
SURCU2VydmVyOjpTdXNwZW5zaW9uQ29uZGl0aW9uOjpBbHdheXMgOiBXZWJJREJTZXJ2ZXI6OlN1
c3BlbnNpb25Db25kaXRpb246OklmSWRsZTsKKyAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1fd2Vi
SURCU2VydmVycy52YWx1ZXMoKSkKKyAgICAgICAgYWxsU3VzcGVuZGVkICY9IHNlcnZlci0+c3Vz
cGVuZChjb25kaXRpb24pOworCisgICAgaWYgKGFsbFN1c3BlbmRlZCkKKyAgICAgICAgcmV0dXJu
OworCisgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoQWZ0ZXIoNV9zLCBbdGhpcywgd2Vha1Ro
aXMgPSBtYWtlV2Vha1B0cigqdGhpcyksIHN1c3BlbnNpb25JZGVudGlmaWVyID0gbV9zdXNwZW5z
aW9uSWRlbnRpZmllcl0geworICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0
dXJuOworCisgICAgICAgIGlmICghbV9zaG91bGRTdXNwZW5kSURCU2VydmVycyB8fCBzdXNwZW5z
aW9uSWRlbnRpZmllciAhPSBtX3N1c3BlbnNpb25JZGVudGlmaWVyKQorICAgICAgICAgICAgcmV0
dXJuOworCisgICAgICAgIGZvciAoYXV0byYgc2VydmVyIDogbV93ZWJJREJTZXJ2ZXJzLnZhbHVl
cygpKQorICAgICAgICAgICAgc2VydmVyLT5zdXNwZW5kKFdlYklEQlNlcnZlcjo6U3VzcGVuc2lv
bkNvbmRpdGlvbjo6QWx3YXlzKTsKKyAgICB9KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6
cHJlcGFyZVRvU3VzcGVuZChib29sIGlzU3VzcGVuc2lvbkltbWluZW50LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgUkVMRUFTRV9MT0coUHJv
Y2Vzc1N1c3BlbnNpb24sICIlcCAtIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlVG9TdXNwZW5kKCks
IGlzU3VzcGVuc2lvbkltbWluZW50PSVkIiwgdGhpcywgaXNTdXNwZW5zaW9uSW1taW5lbnQpOwor
CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBzdXNwZW5kSURCU2VydmVycyhpc1N1c3Bl
bnNpb25JbW1pbmVudCk7CisjZW5kaWYKKworICAgIGxvd01lbW9yeUhhbmRsZXIoQ3JpdGljYWw6
Olllcyk7CisKKyAgICBSZWZQdHI8Q2FsbGJhY2tBZ2dyZWdhdG9yPiBjYWxsYmFja0FnZ3JlZ2F0
b3IgPSBDYWxsYmFja0FnZ3JlZ2F0b3I6OmNyZWF0ZShbdGhpcywgY29tcGxldGlvbkhhbmRsZXIg
PSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBtdXRhYmxlIHsKKyAgICAgICAgUkVMRUFT
RV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlVG9T
dXNwZW5kKCkgUHJvY2VzcyBpcyByZWFkeSB0byBzdXNwZW5kIiwgdGhpcyk7CisgICAgICAgIFVO
VVNFRF9WQVJJQUJMRSh0aGlzKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9
KTsKKyAgICAKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikKKyAg
ICBXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OnN1c3BlbmQoW2NhbGxiYWNrQWdncmVn
YXRvcl0geyB9KTsKKyNlbmRpZgorICAgIFBDTTo6U3RvcmU6OnByZXBhcmVGb3JQcm9jZXNzVG9T
dXNwZW5kKFtjYWxsYmFja0FnZ3JlZ2F0b3JdIHsgfSk7CisKKyAgICBmb3JFYWNoTmV0d29ya1Nl
c3Npb24oWyZdIChhdXRvJiBuZXR3b3JrU2Vzc2lvbikgeworICAgICAgICBwbGF0Zm9ybUZsdXNo
Q29va2llcyhuZXR3b3JrU2Vzc2lvbi5zZXNzaW9uSUQoKSwgW2NhbGxiYWNrQWdncmVnYXRvcl0g
eyB9KTsKKyAgICB9KTsKKworICAgIGZvciAoYXV0byYgY29ubmVjdGlvbiA6IG1fd2ViUHJvY2Vz
c0Nvbm5lY3Rpb25zLnZhbHVlcygpKQorICAgICAgICBjb25uZWN0aW9uLT5jbGVhbnVwRm9yU3Vz
cGVuc2lvbihbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7IH0pOworCisjaWYgRU5BQkxFKFNFUlZJQ0Vf
V09SS0VSKQorICAgIGZvciAoYXV0byYgc2VydmVyIDogbV9zd1NlcnZlcnMudmFsdWVzKCkpIHsK
KyAgICAgICAgQVNTRVJUKG1fc3dTZXJ2ZXJzLmdldChzZXJ2ZXItPnNlc3Npb25JRCgpKSA9PSBz
ZXJ2ZXIuZ2V0KCkpOworICAgICAgICBzZXJ2ZXItPnN0YXJ0U3VzcGVuc2lvbihbY2FsbGJhY2tB
Z2dyZWdhdG9yXSB7IH0pOworICAgIH0KKyNlbmRpZgorCisgICAgbV9zdG9yYWdlTWFuYWdlclNl
dC0+c3VzcGVuZChbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7IH0pOworfQorCit2b2lkIE5ldHdvcmtQ
cm9jZXNzOjphcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZCgpCit7CisgICAgbV9kb3dubG9h
ZE1hbmFnZXIuYXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91bmQoKTsKK30KKwordm9pZCBOZXR3
b3JrUHJvY2Vzczo6YXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5kKCkKK3sKKyAgICBtX2Rv
d25sb2FkTWFuYWdlci5hcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmQoKTsKK30KKwordm9p
ZCBOZXR3b3JrUHJvY2Vzczo6cHJvY2Vzc0RpZFJlc3VtZSgpCit7CisgICAgUkVMRUFTRV9MT0co
UHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIE5ldHdvcmtQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1l
KCkiLCB0aGlzKTsKKyAgICByZXN1bWUoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVz
dW1lKCkKK3sKKyAgICBmb3IgKGF1dG8mIGNvbm5lY3Rpb24gOiBtX3dlYlByb2Nlc3NDb25uZWN0
aW9ucy52YWx1ZXMoKSkKKyAgICAgICAgY29ubmVjdGlvbi0+ZW5kU3VzcGVuc2lvbigpOworCisj
aWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZFTlRJT04pCisgICAgV2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjpyZXN1bWUoKTsKKyNlbmRpZgorICAgIFBDTTo6U3RvcmU6
OnByb2Nlc3NEaWRSZXN1bWUoKTsKKworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBm
b3IgKGF1dG8mIHNlcnZlciA6IG1fc3dTZXJ2ZXJzLnZhbHVlcygpKQorICAgICAgICBzZXJ2ZXIt
PmVuZFN1c3BlbnNpb24oKTsKKyNlbmRpZgorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAg
Zm9yIChhdXRvJiBzZXJ2ZXIgOiBtX3dlYklEQlNlcnZlcnMudmFsdWVzKCkpCisgICAgICAgIHNl
cnZlci0+cmVzdW1lKCk7CisgICAgbV9zaG91bGRTdXNwZW5kSURCU2VydmVycyA9IGZhbHNlOwor
I2VuZGlmCisKKyAgICBtX3N0b3JhZ2VNYW5hZ2VyU2V0LT5yZXN1bWUoKTsKK30KKwordm9pZCBO
ZXR3b3JrUHJvY2Vzczo6cHJlZmV0Y2hETlMoY29uc3QgU3RyaW5nJiBob3N0bmFtZSkKK3sKKyAg
ICBXZWJDb3JlOjpwcmVmZXRjaEROUyhob3N0bmFtZSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nl
c3M6OmNhY2hlU3RvcmFnZVJvb3RQYXRoKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ2FjaGVT
dG9yYWdlUm9vdFBhdGhDYWxsYmFjayYmIGNhbGxiYWNrKQoreworICAgIG1fY2FjaGVTdG9yYWdl
UGFyYW1ldGVyc0NhbGxiYWNrcy5lbnN1cmUoc2Vzc2lvbklELCBbJl0geworICAgICAgICBwYXJl
bnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc1Byb3h5
OjpSZXRyaWV2ZUNhY2hlU3RvcmFnZVBhcmFtZXRlcnMgeyBzZXNzaW9uSUQgfSwgMCk7CisgICAg
ICAgIHJldHVybiBWZWN0b3I8Q2FjaGVTdG9yYWdlUm9vdFBhdGhDYWxsYmFjaz4geyB9OworICAg
IH0pLml0ZXJhdG9yLT52YWx1ZS5hcHBlbmQoV1RGTW92ZShjYWxsYmFjaykpOworfQorCit2b2lk
IE5ldHdvcmtQcm9jZXNzOjpzZXRDYWNoZVN0b3JhZ2VQYXJhbWV0ZXJzKFBBTDo6U2Vzc2lvbklE
IHNlc3Npb25JRCwgU3RyaW5nJiYgY2FjaGVTdG9yYWdlRGlyZWN0b3J5LCBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUmJiBoYW5kbGUpCit7CisgICAgYXV0byBpdGVyYXRvciA9IG1fY2FjaGVTdG9y
YWdlUGFyYW1ldGVyc0NhbGxiYWNrcy5maW5kKHNlc3Npb25JRCk7CisgICAgaWYgKGl0ZXJhdG9y
ID09IG1fY2FjaGVTdG9yYWdlUGFyYW1ldGVyc0NhbGxiYWNrcy5lbmQoKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7
CisgICAgYXV0byBjYWxsYmFja3MgPSBXVEZNb3ZlKGl0ZXJhdG9yLT52YWx1ZSk7CisgICAgbV9j
YWNoZVN0b3JhZ2VQYXJhbWV0ZXJzQ2FsbGJhY2tzLnJlbW92ZShpdGVyYXRvcik7CisgICAgZm9y
IChhdXRvJiBjYWxsYmFjayA6IGNhbGxiYWNrcykKKyAgICAgICAgY2FsbGJhY2soU3RyaW5nIHsg
Y2FjaGVTdG9yYWdlRGlyZWN0b3J5IH0pOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpyZWdp
c3RlclVSTFNjaGVtZUFzU2VjdXJlKGNvbnN0IFN0cmluZyYgc2NoZW1lKSBjb25zdAoreworICAg
IExlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKHNjaGVtZSk7
Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdD
b250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiBzY2hlbWUpIGNvbnN0Cit7CisgICAg
TGVnYWN5U2NoZW1lUmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50
U2VjdXJpdHlQb2xpY3koc2NoZW1lKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0
ZXJVUkxTY2hlbWVBc0xvY2FsKGNvbnN0IFN0cmluZyYgc2NoZW1lKSBjb25zdAoreworICAgIExl
Z2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzTG9jYWwoc2NoZW1lKTsKK30K
Kwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0ZXJVUkxTY2hlbWVBc05vQWNjZXNzKGNvbnN0
IFN0cmluZyYgc2NoZW1lKSBjb25zdAoreworICAgIExlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdp
c3RlclVSTFNjaGVtZUFzTm9BY2Nlc3Moc2NoZW1lKTsKK30KKworUmVmPFdlYklEQlNlcnZlcj4g
TmV0d29ya1Byb2Nlc3M6OmNyZWF0ZVdlYklEQlNlcnZlcihQQUw6OlNlc3Npb25JRCBzZXNzaW9u
SUQpCit7CisgICAgU3RyaW5nIHBhdGg7CisgICAgaWYgKCFzZXNzaW9uSUQuaXNFcGhlbWVyYWwo
KSkgeworICAgICAgICBBU1NFUlQobV9pZGJEYXRhYmFzZVBhdGhzLmNvbnRhaW5zKHNlc3Npb25J
RCkpOworICAgICAgICBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwor
ICAgIH0KKworICAgIGF1dG8gc3BhY2VSZXF1ZXN0ZXIgPSBbcHJvdGVjdGVkVGhpcyA9IG1ha2VS
ZWYoKnRoaXMpLCBzZXNzaW9uSURdKGNvbnN0IGF1dG8mIG9yaWdpbiwgdWludDY0X3Qgc3BhY2VS
ZXF1ZXN0ZWQpIHsKKyAgICAgICAgcmV0dXJuIHByb3RlY3RlZFRoaXMtPnN0b3JhZ2VRdW90YU1h
bmFnZXIoc2Vzc2lvbklELCBvcmlnaW4pLT5yZXF1ZXN0U3BhY2VPbkJhY2tncm91bmRUaHJlYWQo
c3BhY2VSZXF1ZXN0ZWQpOworICAgIH07CisKKyAgICBhdXRvIHJlc3VsdCA9IFdlYklEQlNlcnZl
cjo6Y3JlYXRlKHNlc3Npb25JRCwgcGF0aCwgV1RGTW92ZShzcGFjZVJlcXVlc3RlcikpOworICAg
IGlmIChtX3Nob3VsZFN1c3BlbmRJREJTZXJ2ZXJzKQorICAgICAgICByZXN1bHQtPnN1c3BlbmQo
V2ViSURCU2VydmVyOjpTdXNwZW5zaW9uQ29uZGl0aW9uOjpBbHdheXMpOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CisKK1dlYklEQlNlcnZlciYgTmV0d29ya1Byb2Nlc3M6OndlYklEQlNlcnZlcihQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCit7CisgICAgcmV0dXJuICptX3dlYklEQlNlcnZlcnMu
ZW5zdXJlKHNlc3Npb25JRCwgW3RoaXMsIHNlc3Npb25JRF0geworICAgICAgICByZXR1cm4gdGhp
cy0+Y3JlYXRlV2ViSURCU2VydmVyKHNlc3Npb25JRCk7CisgICAgfSkuaXRlcmF0b3ItPnZhbHVl
OworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjphZGRJbmRleGVkRGF0YWJhc2VTZXNzaW9uKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgU3RyaW5nJiBpbmRleGVkRGF0YWJhc2VEaXJlY3Rvcnks
IFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSYgaGFuZGxlKQoreworICAgIC8vICoqKioqKioqKgor
ICAgIC8vIElNUE9SVEFOVDogRG8gbm90IGNoYW5nZSB0aGUgZGlyZWN0b3J5IHN0cnVjdHVyZSBm
b3IgaW5kZXhlZCBkYXRhYmFzZXMgb24gZGlzayB3aXRob3V0IGZpcnN0IGNvbnN1bHRpbmcgYSBy
ZXZpZXdlciBmcm9tIEFwcGxlICg8cmRhcjovL3Byb2JsZW0vMTc0NTQ3MTI+KQorICAgIC8vICoq
KioqKioqKgorICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9pZGJEYXRhYmFzZVBhdGhzLmFkZChzZXNz
aW9uSUQsIGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSk7CisgICAgaWYgKGFkZFJlc3VsdC5pc05l
d0VudHJ5KSB7CisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseSho
YW5kbGUpOworICAgICAgICBzZXRTZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcklEQlJvb3RQYXRo
KHNlc3Npb25JRCwgaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5KTsKKyAgICB9Cit9CisKK3ZvaWQg
TmV0d29ya1Byb2Nlc3M6OnNldFNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VySURCUm9vdFBhdGgo
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIGlkYlJvb3RQYXRoKQorewor
ICAgIExvY2tlciBsb2NrZXIgeyBtX3Nlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2Vyc0xvY2sgfTsK
KyAgICBhdXRvKiBzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlciA9IG1fc2Vzc2lvblN0b3JhZ2VR
dW90YU1hbmFnZXJzLmdldChzZXNzaW9uSUQpOworICAgIEFTU0VSVChzZXNzaW9uU3RvcmFnZVF1
b3RhTWFuYWdlcik7CisgICAgc2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXItPnNldElEQlJvb3RQ
YXRoKGlkYlJvb3RQYXRoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c3luY0xvY2FsU3Rv
cmFnZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgbV9zdG9yYWdlTWFuYWdlclNldC0+d2FpdFVudGlsU3luY2luZ0xvY2FsU3RvcmFnZUZpbmlz
aGVkKCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6cmVzZXRRdW90YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBMb2NrZXIgbG9ja2VyIHsgbV9z
ZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcnNMb2NrIH07CisgICAgaWYgKGF1dG8qIHNlc3Npb25T
dG9yYWdlUXVvdGFNYW5hZ2VyID0gbV9zZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcnMuZ2V0KHNl
c3Npb25JRCkpIHsKKyAgICAgICAgZm9yIChhdXRvIHN0b3JhZ2VRdW90YU1hbmFnZXIgOiBzZXNz
aW9uU3RvcmFnZVF1b3RhTWFuYWdlci0+ZXhpc3RpbmdTdG9yYWdlUXVvdGFNYW5hZ2VycygpKQor
ICAgICAgICAgICAgc3RvcmFnZVF1b3RhTWFuYWdlci0+cmVzZXRRdW90YUZvclRlc3RpbmcoKTsK
KyAgICB9CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6Y2xlYXJTdG9yYWdlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvIG1hbmFnZXIg
PSBtX3N0b3JhZ2VNYW5hZ2Vycy5nZXQoc2Vzc2lvbklEKSkKKyAgICAgICAgbWFuYWdlci0+Y2xl
YXJTdG9yYWdlRm9yVGVzdGluZyhXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgZWxz
ZQorICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNz
OjpyZW5hbWVPcmlnaW5JbldlYnNpdGVEYXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29u
c3QgVVJMJiBvbGROYW1lLCBjb25zdCBVUkwmIG5ld05hbWUsIE9wdGlvblNldDxXZWJzaXRlRGF0
YVR5cGU+IGRhdGFUeXBlcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIGF1dG8gYWdncmVnYXRvciA9IENhbGxiYWNrQWdncmVnYXRvcjo6Y3Jl
YXRlKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBhdXRvIG9sZE9yaWdpbiA9IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVVSTChvbGROYW1lKTsKKyAgICBhdXRvIG5l
d09yaWdpbiA9IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVVSTChuZXdOYW1lKTsK
KworICAgIGlmIChvbGRPcmlnaW4uaXNFbXB0eSgpIHx8IG5ld09yaWdpbi5pc0VtcHR5KCkpCisg
ICAgICAgIHJldHVybjsKKworICAgIGlmIChkYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFU
eXBlOjpMb2NhbFN0b3JhZ2UpKSB7CisgICAgICAgIGlmIChtX3N0b3JhZ2VNYW5hZ2VyU2V0LT5j
b250YWlucyhzZXNzaW9uSUQpKQorICAgICAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNldC0+cmVu
YW1lT3JpZ2luKHNlc3Npb25JRCwgb2xkTmFtZSwgbmV3TmFtZSwgW2FnZ3JlZ2F0b3JdIHsgfSk7
CisgICAgfQorCisgICAgaWYgKGRhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6Oklu
ZGV4ZWREQkRhdGFiYXNlcykpIHsKKyAgICAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBh
dGhzLmdldChzZXNzaW9uSUQpOworICAgICAgICBpZiAoIXBhdGguaXNFbXB0eSgpKQorICAgICAg
ICAgICAgd2ViSURCU2VydmVyKHNlc3Npb25JRCkucmVuYW1lT3JpZ2luKG9sZE9yaWdpbiwgbmV3
T3JpZ2luLCBbYWdncmVnYXRvcl0geyB9KTsKKyAgICB9Cit9CisKKyNpZiBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpmb3JFYWNoU1dTZXJ2ZXIoY29uc3QgRnVu
Y3Rpb248dm9pZChTV1NlcnZlciYpPiYgY2FsbGJhY2spCit7CisgICAgZm9yIChhdXRvJiBzZXJ2
ZXIgOiBtX3N3U2VydmVycy52YWx1ZXMoKSkKKyAgICAgICAgY2FsbGJhY2soKnNlcnZlcik7Cit9
CisKK1NXU2VydmVyJiBOZXR3b3JrUHJvY2Vzczo6c3dTZXJ2ZXJGb3JTZXNzaW9uKFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCkKK3sKKyAgICBhdXRvIHJlc3VsdCA9IG1fc3dTZXJ2ZXJzLmVuc3Vy
ZShzZXNzaW9uSUQsIFsmXSB7CisgICAgICAgIGF1dG8gaW5mbyA9IG1fc2VydmljZVdvcmtlcklu
Zm8uZ2V0KHNlc3Npb25JRCk7CisgICAgICAgIGF1dG8gcGF0aCA9IGluZm8uZGF0YWJhc2VQYXRo
OworICAgICAgICAvLyBUaGVyZSBzaG91bGQgYWxyZWFkeSBiZSBhIHJlZ2lzdGVyZWQgcGF0aCBm
b3IgdGhpcyBQQUw6OlNlc3Npb25JRC4KKyAgICAgICAgLy8gSWYgdGhlcmUncyBub3QsIHRoZW4g
d2hlcmUgZGlkIHRoaXMgUEFMOjpTZXNzaW9uSUQgY29tZSBmcm9tPworICAgICAgICBBU1NFUlQo
c2Vzc2lvbklELmlzRXBoZW1lcmFsKCkgfHwgIXBhdGguaXNFbXB0eSgpKTsKKyAgICAgICAgCisj
aWYgRU5BQkxFKEFQUF9CT1VORF9ET01BSU5TKQorICAgICAgICBhdXRvIGFwcEJvdW5kRG9tYWlu
c0NhbGxiYWNrID0gW3RoaXMsIHNlc3Npb25JRF0oYXV0byYmIGNvbXBsZXRpb25IYW5kbGVyKSB7
CisgICAgICAgICAgICBwYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OkdldEFwcEJvdW5kRG9tYWlucyB7IHNl
c3Npb25JRCB9LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgMCk7CisgICAgICAgIH07Cisj
ZWxzZQorICAgICAgICBhdXRvIGFwcEJvdW5kRG9tYWluc0NhbGxiYWNrID0gW10gKGF1dG8mJiBj
b21wbGV0aW9uSGFuZGxlcikgeworICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsK
KyAgICAgICAgfTsKKyNlbmRpZgorICAgICAgICByZXR1cm4gbWFrZVVuaXF1ZTxTV1NlcnZlcj4o
bWFrZVVuaXF1ZVJlZjxXZWJTV09yaWdpblN0b3JlPigpLCBpbmZvLnByb2Nlc3NUZXJtaW5hdGlv
bkRlbGF5RW5hYmxlZCwgV1RGTW92ZShwYXRoKSwgc2Vzc2lvbklELCBwYXJlbnRQcm9jZXNzSGFz
U2VydmljZVdvcmtlckVudGl0bGVtZW50KCksIFt0aGlzLCBzZXNzaW9uSURdKGF1dG8mJiBqb2JE
YXRhLCBib29sIHNob3VsZFJlZnJlc2hDYWNoZSwgYXV0byYmIHJlcXVlc3QsIGF1dG8mJiBjb21w
bGV0aW9uSGFuZGxlcikgbXV0YWJsZSB7CisgICAgICAgICAgICBTZXJ2aWNlV29ya2VyU29mdFVw
ZGF0ZUxvYWRlcjo6c3RhcnQobmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSwgV1RGTW92ZShqb2JE
YXRhKSwgc2hvdWxkUmVmcmVzaENhY2hlLCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7CisgICAgICAgIH0sIFt0aGlzLCBzZXNzaW9uSURdKGF1dG8mIHJlZ2lz
dHJhYmxlRG9tYWluLCBhdXRvJiYgY29tcGxldGlvbkhhbmRsZXIpIHsKKyAgICAgICAgICAgIEFT
U0VSVCghcmVnaXN0cmFibGVEb21haW4uaXNFbXB0eSgpKTsKKyAgICAgICAgICAgIHBhcmVudFBy
b2Nlc3NDb25uZWN0aW9uKCktPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1By
b2Nlc3NQcm94eTo6RXN0YWJsaXNoV29ya2VyQ29udGV4dENvbm5lY3Rpb25Ub05ldHdvcmtQcm9j
ZXNzIHsgcmVnaXN0cmFibGVEb21haW4sIHNlc3Npb25JRCB9LCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSwgMCk7CisgICAgICAgIH0sIFdURk1vdmUoYXBwQm91bmREb21haW5zQ2FsbGJhY2sp
KTsKKyAgICB9KTsKKyAgICByZXR1cm4gKnJlc3VsdC5pdGVyYXRvci0+dmFsdWU7Cit9CisKK1dl
YlNXT3JpZ2luU3RvcmUqIE5ldHdvcmtQcm9jZXNzOjpleGlzdGluZ1NXT3JpZ2luU3RvcmVGb3JT
ZXNzaW9uKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkgY29uc3QKK3sKKyAgICBhdXRvKiBzd1Nl
cnZlciA9IG1fc3dTZXJ2ZXJzLmdldChzZXNzaW9uSUQpOworICAgIGlmICghc3dTZXJ2ZXIpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiAmc3RhdGljX2Nhc3Q8V2ViU1dPcmln
aW5TdG9yZSY+KHN3U2VydmVyLT5vcmlnaW5TdG9yZSgpKTsKK30KKwordm9pZCBOZXR3b3JrUHJv
Y2Vzczo6cmVnaXN0ZXJTV1NlcnZlckNvbm5lY3Rpb24oV2ViU1dTZXJ2ZXJDb25uZWN0aW9uJiBj
b25uZWN0aW9uKQoreworICAgIGF1dG8qIHN0b3JlID0gZXhpc3RpbmdTV09yaWdpblN0b3JlRm9y
U2Vzc2lvbihjb25uZWN0aW9uLnNlc3Npb25JRCgpKTsKKyAgICBBU1NFUlQoc3RvcmUpOworICAg
IGlmIChzdG9yZSkKKyAgICAgICAgc3RvcmUtPnJlZ2lzdGVyU1dTZXJ2ZXJDb25uZWN0aW9uKGNv
bm5lY3Rpb24pOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjp1bnJlZ2lzdGVyU1dTZXJ2ZXJD
b25uZWN0aW9uKFdlYlNXU2VydmVyQ29ubmVjdGlvbiYgY29ubmVjdGlvbikKK3sKKyAgICBpZiAo
YXV0byogc3RvcmUgPSBleGlzdGluZ1NXT3JpZ2luU3RvcmVGb3JTZXNzaW9uKGNvbm5lY3Rpb24u
c2Vzc2lvbklEKCkpKQorICAgICAgICBzdG9yZS0+dW5yZWdpc3RlclNXU2VydmVyQ29ubmVjdGlv
bihjb25uZWN0aW9uKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6YWRkU2VydmljZVdvcmtl
clNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBib29sIHByb2Nlc3NUZXJtaW5hdGlv
bkRlbGF5RW5hYmxlZCwgU3RyaW5nJiYgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9y
eSwgY29uc3QgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBoYW5kbGUpCit7CisgICAgU2Vydmlj
ZVdvcmtlckluZm8gaW5mbyB7CisgICAgICAgIFdURk1vdmUoc2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbkRpcmVjdG9yeSksCisgICAgICAgIHByb2Nlc3NUZXJtaW5hdGlvbkRlbGF5RW5hYmxlZAor
ICAgIH07CisgICAgYXV0byBhZGRSZXN1bHQgPSBtX3NlcnZpY2VXb3JrZXJJbmZvLmFkZChzZXNz
aW9uSUQsIFdURk1vdmUoaW5mbykpOworICAgIGlmIChhZGRSZXN1bHQuaXNOZXdFbnRyeSkKKyAg
ICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7Cit9Cisj
ZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpy
ZXF1ZXN0U3RvcmFnZVNwYWNlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgQ2xpZW50
T3JpZ2luJiBvcmlnaW4sIHVpbnQ2NF90IHF1b3RhLCB1aW50NjRfdCBjdXJyZW50U2l6ZSwgdWlu
dDY0X3Qgc3BhY2VSZXF1aXJlZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFs
PHVpbnQ2NF90Pik+JiYgY2FsbGJhY2spCit7CisgICAgcGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24o
KS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpSZXF1
ZXN0U3RvcmFnZVNwYWNlIHsgc2Vzc2lvbklELCBvcmlnaW4sIHF1b3RhLCBjdXJyZW50U2l6ZSwg
c3BhY2VSZXF1aXJlZCB9LCBXVEZNb3ZlKGNhbGxiYWNrKSwgMCk7Cit9CisKK1JlZlB0cjxTdG9y
YWdlUXVvdGFNYW5hZ2VyPiBOZXR3b3JrUHJvY2Vzczo6c3RvcmFnZVF1b3RhTWFuYWdlcihQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IENsaWVudE9yaWdpbiYgb3JpZ2luKQoreworICAg
IExvY2tlciBsb2NrZXIgeyBtX3Nlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2Vyc0xvY2sgfTsKKyAg
ICBhdXRvKiBzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlciA9IG1fc2Vzc2lvblN0b3JhZ2VRdW90
YU1hbmFnZXJzLmdldChzZXNzaW9uSUQpOworICAgIGlmICghc2Vzc2lvblN0b3JhZ2VRdW90YU1h
bmFnZXIpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgU3RyaW5nIGlkYlJvb3RQYXRo
ID0gc2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXItPmlkYlJvb3RQYXRoKCk7CisgICAgU3RvcmFn
ZVF1b3RhTWFuYWdlcjo6VXNhZ2VHZXR0ZXIgdXNhZ2VHZXR0ZXIgPSBbY2FjaGVSb290UGF0aCA9
IHNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VyLT5jYWNoZVJvb3RQYXRoKCkuaXNvbGF0ZWRDb3B5
KCksIGlkYlJvb3RQYXRoID0gaWRiUm9vdFBhdGguaXNvbGF0ZWRDb3B5KCksIG9yaWdpbiA9IG9y
aWdpbi5pc29sYXRlZENvcHkoKV0oKSB7CisgICAgICAgIEFTU0VSVCghaXNNYWluUnVuTG9vcCgp
KTsKKworICAgICAgICByZXR1cm4gQ2FjaGVTdG9yYWdlOjpFbmdpbmU6OmRpc2tVc2FnZShjYWNo
ZVJvb3RQYXRoLCBvcmlnaW4pICsgSURCU2VydmVyOjpJREJTZXJ2ZXI6OmRpc2tVc2FnZShpZGJS
b290UGF0aCwgb3JpZ2luKTsKKyAgICB9OworICAgIFN0b3JhZ2VRdW90YU1hbmFnZXI6OlF1b3Rh
SW5jcmVhc2VSZXF1ZXN0ZXIgcXVvdGFJbmNyZWFzZVJlcXVlc3RlciA9IFt0aGlzLCB3ZWFrVGhp
cyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgc2Vzc2lvbklELCBvcmlnaW5dICh1aW50NjRfdCBjdXJy
ZW50UXVvdGEsIHVpbnQ2NF90IGN1cnJlbnRTcGFjZSwgdWludDY0X3QgcmVxdWVzdGVkSW5jcmVh
c2UsIGF1dG8mJiBjYWxsYmFjaykgeworICAgICAgICBBU1NFUlQoaXNNYWluUnVuTG9vcCgpKTsK
KyAgICAgICAgaWYgKCF3ZWFrVGhpcykKKyAgICAgICAgICAgIGNhbGxiYWNrKHsgfSk7CisgICAg
ICAgIHJlcXVlc3RTdG9yYWdlU3BhY2Uoc2Vzc2lvbklELCBvcmlnaW4sIGN1cnJlbnRRdW90YSwg
Y3VycmVudFNwYWNlLCByZXF1ZXN0ZWRJbmNyZWFzZSwgV1RGTW92ZShjYWxsYmFjaykpOworICAg
IH07CisKKyAgICBhdXRvIG9yaWdpblN0b3JhZ2VRdW90YU1hbmFnZXIgPSBzZXNzaW9uU3RvcmFn
ZVF1b3RhTWFuYWdlci0+ZW5zdXJlT3JpZ2luU3RvcmFnZVF1b3RhTWFuYWdlcihvcmlnaW4sIHNl
c3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VyLT5kZWZhdWx0UXVvdGEob3JpZ2luKSwgV1RGTW92ZSh1
c2FnZUdldHRlciksIFdURk1vdmUocXVvdGFJbmNyZWFzZVJlcXVlc3RlcikpLnB0cigpOworICAg
IHJldHVybiBvcmlnaW5TdG9yYWdlUXVvdGFNYW5hZ2VyOworfQorCisjaWYgIVBMQVRGT1JNKENP
Q09BKQordm9pZCBOZXR3b3JrUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3MoY29uc3QgQXV4aWxp
YXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCit7Cit9CisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZShjb25zdCBBdXhpbGlhcnlQcm9jZXNzSW5p
dGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKK3sKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6aW5p
dGlhbGl6ZVNhbmRib3goY29uc3QgQXV4aWxpYXJ5UHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1l
dGVycyYsIFNhbmRib3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQoreworfQorCit2b2lkIE5l
dHdvcmtQcm9jZXNzOjpmbHVzaENvb2tpZXMoUEFMOjpTZXNzaW9uSUQsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21wbGV0aW9uSGFuZGxl
cigpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUZsdXNoQ29va2llcyhQQUw6
OlNlc3Npb25JRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKKyNlbmRpZgorCit2b2lkIE5ldHdv
cmtQcm9jZXNzOjpzdG9yZVByaXZhdGVDbGlja01lYXN1cmVtZW50KFBBTDo6U2Vzc2lvbklEIHNl
c3Npb25JRCwgV2ViQ29yZTo6UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQmJiBwcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudCkKK3sKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uKHNl
c3Npb25JRCkpCisgICAgICAgIHNlc3Npb24tPnN0b3JlUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQo
V1RGTW92ZShwcml2YXRlQ2xpY2tNZWFzdXJlbWVudCkpOworfQorCit2b2lkIE5ldHdvcmtQcm9j
ZXNzOjpkdW1wUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQorICAg
ICAgICByZXR1cm4gc2Vzc2lvbi0+ZHVtcFByaXZhdGVDbGlja01lYXN1cmVtZW50KFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpKTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7Cit9CisK
K3ZvaWQgTmV0d29ya1Byb2Nlc3M6OmNsZWFyUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQoUEFMOjpT
ZXNzaW9uSUQgc2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNz
aW9uSUQpKQorICAgICAgICBzZXNzaW9uLT5jbGVhclByaXZhdGVDbGlja01lYXN1cmVtZW50KFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBlbHNlCisgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldFByaXZhdGVDbGlja01lYXN1
cmVtZW50T3ZlcnJpZGVUaW1lckZvclRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBi
b29sIHZhbHVlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIp
Cit7CisgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQor
ICAgICAgICBzZXNzaW9uLT5zZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE92ZXJyaWRlVGltZXJG
b3JUZXN0aW5nKHZhbHVlKTsKKyAgICAKKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2
b2lkIE5ldHdvcmtQcm9jZXNzOjpzaW11bGF0ZVJlc291cmNlTG9hZFN0YXRpc3RpY3NTZXNzaW9u
UmVzdGFydChQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICAvLyBGSVhNRTogUmVuYW1lIHRoaXMgdG8g
c2ltdWxhdGVQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFNlc3Npb25SZXN0YXJ0LgorICAgIGlmIChh
dXRvKiBzZXNzaW9uID0gbmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAgICAgICBzZXNz
aW9uLT5yZWNyZWF0ZVByaXZhdGVDbGlja01lYXN1cmVtZW50U3RvcmUoW3Nlc3Npb24gPSBtYWtl
V2Vha1B0cigqc2Vzc2lvbiksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcildICgpIG11dGFibGUgeworICAgICAgICAgICAgaWYgKHNlc3Npb24pCisgICAgICAg
ICAgICAgICAgc2Vzc2lvbi0+ZmlyZVByaXZhdGVDbGlja01lYXN1cmVtZW50VGltZXJJbW1lZGlh
dGVseUZvclRlc3RpbmcoKTsKKyAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAg
ICAgIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7
Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6Om1hcmtBdHRyaWJ1dGVkUHJpdmF0ZUNsaWNrTWVh
c3VyZW1lbnRzQXNFeHBpcmVkRm9yVGVzdGluZyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAo
YXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgc2Vz
c2lvbi0+bWFya0F0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JU
ZXN0aW5nKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpz
ZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudEVwaGVtZXJhbE1lYXN1cmVtZW50Rm9yVGVzdGluZyhQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGJvb2wgdmFsdWUsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9IG5l
dHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIHNlc3Npb24tPnNldFByaXZhdGVDbGlj
a01lYXN1cmVtZW50RXBoZW1lcmFsTWVhc3VyZW1lbnRGb3JUZXN0aW5nKHZhbHVlKTsKKyAgICAK
KyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNl
dFByaXZhdGVDbGlja01lYXN1cmVtZW50VG9rZW5QdWJsaWNLZXlVUkxGb3JUZXN0aW5nKFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCwgVVJMJiYgdXJsLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBuZXR3b3Jr
U2Vzc2lvbihzZXNzaW9uSUQpKQorICAgICAgICBzZXNzaW9uLT5zZXRQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudFRva2VuUHVibGljS2V5VVJMRm9yVGVzdGluZyhXVEZNb3ZlKHVybCkpOworCisgICAg
Y29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0UHJpdmF0
ZUNsaWNrTWVhc3VyZW1lbnRUb2tlblNpZ25hdHVyZVVSTEZvclRlc3RpbmcoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBVUkwmJiB1cmwsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9u
KHNlc3Npb25JRCkpCisgICAgICAgIHNlc3Npb24tPnNldFByaXZhdGVDbGlja01lYXN1cmVtZW50
VG9rZW5TaWduYXR1cmVVUkxGb3JUZXN0aW5nKFdURk1vdmUodXJsKSk7CisgICAgCisgICAgY29t
cGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0UHJpdmF0ZUNs
aWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblJlcG9ydFVSTHNGb3JUZXN0aW5nKFBBTDo6U2Vzc2lv
bklEIHNlc3Npb25JRCwgVVJMJiYgc291cmNlVVJMLCBVUkwmJiBkZXN0aW5hdGlvblVSTCwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChh
dXRvKiBzZXNzaW9uID0gbmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkKKyAgICAgICAgc2Vzc2lv
bi0+c2V0UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblJlcG9ydFVSTHNGb3JUZXN0
aW5nKFdURk1vdmUoc291cmNlVVJMKSwgV1RGTW92ZShkZXN0aW5hdGlvblVSTCkpOworCisgICAg
Y29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6bWFya1ByaXZh
dGVDbGlja01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoUEFMOjpTZXNzaW9uSUQgc2Vz
c2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQorICAg
ICAgICBzZXNzaW9uLT5tYXJrUHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRzQXNFeHBpcmVkRm9yVGVz
dGluZygpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJv
Y2Vzczo6c2V0UENNRnJhdWRQcmV2ZW50aW9uVmFsdWVzRm9yVGVzdGluZyhQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQsIFN0cmluZyYmIHVubGlua2FibGVUb2tlbiwgU3RyaW5nJiYgc2VjcmV0VG9r
ZW4sIFN0cmluZyYmIHNpZ25hdHVyZSwgU3RyaW5nJiYga2V5SUQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9
IG5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIHNlc3Npb24tPnNldFBDTUZyYXVk
UHJldmVudGlvblZhbHVlc0ZvclRlc3RpbmcoV1RGTW92ZSh1bmxpbmthYmxlVG9rZW4pLCBXVEZN
b3ZlKHNlY3JldFRva2VuKSwgV1RGTW92ZShzaWduYXR1cmUpLCBXVEZNb3ZlKGtleUlEKSk7CisK
KyAgICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjphZGRL
ZXB0QWxpdmVMb2FkKFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+JiYgbG9hZGVyKQoreworICAg
IGlmIChhdXRvKiBzZXNzaW9uID0gbmV0d29ya1Nlc3Npb24obG9hZGVyLT5zZXNzaW9uSUQoKSkp
CisgICAgICAgIHNlc3Npb24tPmFkZEtlcHRBbGl2ZUxvYWQoV1RGTW92ZShsb2FkZXIpKTsKK30K
Kwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVtb3ZlS2VwdEFsaXZlTG9hZChOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXImIGxvYWRlcikKK3sKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNz
aW9uKGxvYWRlci5zZXNzaW9uSUQoKSkpCisgICAgICAgIHNlc3Npb24tPnJlbW92ZUtlcHRBbGl2
ZUxvYWQobG9hZGVyKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6Z2V0TG9jYWxTdG9yYWdl
T3JpZ2luRGV0YWlscyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoVmVjdG9yPExvY2FsU3RvcmFnZURhdGFiYXNlVHJhY2tlcjo6T3JpZ2luRGV0YWlscz4m
Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX3N0b3JhZ2VNYW5hZ2VyU2V0
LT5jb250YWlucyhzZXNzaW9uSUQpKSB7CisgICAgICAgIExPR19FUlJPUigiQ2Fubm90IGdldCBs
b2NhbCBzdG9yYWdlIGluZm9ybWF0aW9uIGZvciBhbiB1bmtub3duIHNlc3Npb24iKTsKKyAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IG1fc3RvcmFnZU1hbmFnZXJTZXQtPmdldExvY2FsU3RvcmFnZU9yaWdpbkRldGFpbHMoc2Vzc2lv
bklELCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nl
c3M6OmNvbm5lY3Rpb25Ub1dlYlByb2Nlc3NDbG9zZWQoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0
aW9uLCBQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpCit7CisgICAgbV9zdG9yYWdlTWFuYWdlclNl
dC0+cmVtb3ZlQ29ubmVjdGlvbihjb25uZWN0aW9uKTsKKworICAgIGlmIChhdXRvKiBzZXJ2ZXIg
PSBtX3dlYklEQlNlcnZlcnMuZ2V0KHNlc3Npb25JRCkpCisgICAgICAgIHNlcnZlci0+cmVtb3Zl
Q29ubmVjdGlvbihjb25uZWN0aW9uKTsKKworICAgIGlmIChhdXRvIG1hbmFnZXIgPSBtX3N0b3Jh
Z2VNYW5hZ2Vycy5nZXQoc2Vzc2lvbklEKSkKKyAgICAgICAgbWFuYWdlci0+c3RvcFJlY2Vpdmlu
Z01lc3NhZ2VGcm9tQ29ubmVjdGlvbihjb25uZWN0aW9uKTsKK30KKworTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3MqIE5ldHdvcmtQcm9jZXNzOjp3ZWJQcm9jZXNzQ29ubmVjdGlvbihQcm9j
ZXNzSWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAoreworICAgIHJldHVybiBtX3dlYlByb2Nl
c3NDb25uZWN0aW9ucy5nZXQoaWRlbnRpZmllcik7Cit9CisKK2NvbnN0IFNlY29uZHMgTmV0d29y
a1Byb2Nlc3M6OmRlZmF1bHRTZXJ2aWNlV29ya2VyRmV0Y2hUaW1lb3V0ID0gNzBfczsKK3ZvaWQg
TmV0d29ya1Byb2Nlc3M6OnNldFNlcnZpY2VXb3JrZXJGZXRjaFRpbWVvdXRGb3JUZXN0aW5nKFNl
Y29uZHMgdGltZW91dCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIG1fc2VydmljZVdvcmtlckZldGNoVGltZW91dCA9IHRpbWVvdXQ7CisgICAg
Y29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVzZXRTZXJ2
aWNlV29ya2VyRmV0Y2hUaW1lb3V0Rm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgbV9zZXJ2aWNlV29ya2VyRmV0Y2hUaW1lb3V0
ID0gZGVmYXVsdFNlcnZpY2VXb3JrZXJGZXRjaFRpbWVvdXQ7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIoKTsKK30KKworc3RhdGljIGNvbnN0ZXhwciBhdXRvIGRlbGF5TWF4ID0gMTAwX21zOworc3Rh
dGljIGNvbnN0ZXhwciBhdXRvIGRlbGF5TWluID0gMTBfbXM7CitTZWNvbmRzIE5ldHdvcmtQcm9j
ZXNzOjpyYW5kb21DbG9zZWRQb3J0RGVsYXkoKQoreworICAgIHJldHVybiBkZWxheU1pbiArIFNl
Y29uZHM6OmZyb21NaWxsaXNlY29uZHMoc3RhdGljX2Nhc3Q8ZG91YmxlPihjcnlwdG9ncmFwaGlj
YWxseVJhbmRvbU51bWJlcigpKSkgJSBkZWxheU1heDsKK30KKworI2lmIEVOQUJMRShBUFBfQk9V
TkRfRE9NQUlOUykKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6Omhhc0FwcEJvdW5kU2Vzc2lvbihQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29t
cGxldGlvbkhhbmRsZXIpIGNvbnN0Cit7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICBp
ZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQp
KQorICAgICAgICByZXN1bHQgPSBuZXR3b3JrU2Vzc2lvbi0+aGFzQXBwQm91bmRTZXNzaW9uKCk7
CisgICAgY29tcGxldGlvbkhhbmRsZXIocmVzdWx0KTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6Y2xlYXJBcHBCb3VuZFNlc3Npb24oUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGF1dG8q
IG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKSkgeworICAg
ICAgICBuZXR3b3JrU2Vzc2lvbi0+Y2xlYXJBcHBCb3VuZFNlc3Npb24oKTsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9Cit9CisjZW5kaWYKKwor
dm9pZCBOZXR3b3JrUHJvY2Vzczo6YnJvYWRjYXN0Q29uc29sZU1lc3NhZ2UoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCBKU0M6Ok1lc3NhZ2VTb3VyY2Ugc291cmNlLCBKU0M6Ok1lc3NhZ2VMZXZl
bCBsZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQoreworICAgIGZvciAoYXV0byYgbmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MgOiBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy52YWx1ZXMo
KSkgeworICAgICAgICBpZiAobmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MtPnNlc3Npb25J
RCgpID09IHNlc3Npb25JRCkKKyAgICAgICAgICAgIG5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzLT5icm9hZGNhc3RDb25zb2xlTWVzc2FnZShzb3VyY2UsIGxldmVsLCBtZXNzYWdlKTsKKyAg
ICB9Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnVwZGF0ZUJ1bmRsZUlkZW50aWZpZXIoU3Ry
aW5nJiYgYnVuZGxlSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQoreworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIFdlYkNvcmU6OmNsZWFy
QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyVGVzdGluZ092ZXJyaWRlKCk7CisgICAgV2ViQ29y
ZTo6c2V0QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKGJ1bmRsZUlkZW50aWZpZXIpOworI2Vu
ZGlmCisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzczo6
Y2xlYXJCdW5kbGVJZGVudGlmaWVyKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBXZWJDb3JlOjpjbGVhckFw
cGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllclRlc3RpbmdPdmVycmlkZSgpOworI2VuZGlmCisgICAg
Y29tcGxldGlvbkhhbmRsZXIoKTsKK30KKworYm9vbCBOZXR3b3JrUHJvY2Vzczo6c2hvdWxkRGlz
YWJsZUNPUlNGb3JSZXF1ZXN0VG8oUGFnZUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGNvbnN0
IFVSTCYgdXJsKSBjb25zdAoreworICAgIHJldHVybiBXVEY6OmFueU9mKG1fZXh0ZW5zaW9uQ09S
U0Rpc2FibGluZ1BhdHRlcm5zLmdldChwYWdlSWRlbnRpZmllciksIFsmXSAoY29uc3QgYXV0byYg
cGF0dGVybikgeworICAgICAgICByZXR1cm4gcGF0dGVybi5tYXRjaGVzKHVybCk7CisgICAgfSk7
Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6OnNldENPUlNEaXNhYmxpbmdQYXR0ZXJucyhQYWdl
SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgVmVjdG9yPFN0cmluZz4mJiBwYXR0ZXJucykKK3sK
KyAgICBWZWN0b3I8VXNlckNvbnRlbnRVUkxQYXR0ZXJuPiBwYXJzZWRQYXR0ZXJuczsKKyAgICBw
YXJzZWRQYXR0ZXJucy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHBhdHRlcm5zLnNpemUoKSk7Cisg
ICAgZm9yIChhdXRvJiYgcGF0dGVybiA6IFdURk1vdmUocGF0dGVybnMpKSB7CisgICAgICAgIFVz
ZXJDb250ZW50VVJMUGF0dGVybiBwYXJzZWRQYXR0ZXJuKFdURk1vdmUocGF0dGVybikpOworICAg
ICAgICBpZiAocGFyc2VkUGF0dGVybi5pc1ZhbGlkKCkpCisgICAgICAgICAgICBwYXJzZWRQYXR0
ZXJucy51bmNoZWNrZWRBcHBlbmQoV1RGTW92ZShwYXJzZWRQYXR0ZXJuKSk7CisgICAgfQorICAg
IHBhcnNlZFBhdHRlcm5zLnNocmlua1RvRml0KCk7CisgICAgaWYgKHBhcnNlZFBhdHRlcm5zLmlz
RW1wdHkoKSkgeworICAgICAgICBtX2V4dGVuc2lvbkNPUlNEaXNhYmxpbmdQYXR0ZXJucy5yZW1v
dmUocGFnZUlkZW50aWZpZXIpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIG1fZXh0ZW5z
aW9uQ09SU0Rpc2FibGluZ1BhdHRlcm5zLnNldChwYWdlSWRlbnRpZmllciwgV1RGTW92ZShwYXJz
ZWRQYXR0ZXJucykpOworfQorCisjaWYgUExBVEZPUk0oQ09DT0EpCit2b2lkIE5ldHdvcmtQcm9j
ZXNzOjphcHBQcml2YWN5UmVwb3J0VGVzdGluZ0RhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEFwcFByaXZhY3lSZXBvcnRUZXN0aW5nRGF0
YSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lv
biA9IHRoaXMtPm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCkpIHsKKyAgICAgICAgY29tcGxldGlv
bkhhbmRsZXIobmV0d29ya1Nlc3Npb24tPmFwcFByaXZhY3lSZXBvcnRUZXN0aW5nRGF0YSgpKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0pOworfQor
Cit2b2lkIE5ldHdvcmtQcm9jZXNzOjpjbGVhckFwcFByaXZhY3lSZXBvcnRUZXN0aW5nRGF0YShQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24gPSB0aGlzLT5u
ZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKQorICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+YXBwUHJp
dmFjeVJlcG9ydFRlc3RpbmdEYXRhKCkuY2xlYXJBcHBQcml2YWN5UmVwb3J0VGVzdGluZ0RhdGEo
KTsKKworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShX
RUJfUlRDKQorUlRDRGF0YUNoYW5uZWxSZW1vdGVNYW5hZ2VyUHJveHkmIE5ldHdvcmtQcm9jZXNz
OjpydGNEYXRhQ2hhbm5lbFByb3h5KCkKK3sKKyAgICBBU1NFUlQoaXNNYWluUnVuTG9vcCgpKTsK
KyAgICBpZiAoIW1fcnRjRGF0YUNoYW5uZWxQcm94eSkKKyAgICAgICAgbV9ydGNEYXRhQ2hhbm5l
bFByb3h5ID0gUlRDRGF0YUNoYW5uZWxSZW1vdGVNYW5hZ2VyUHJveHk6OmNyZWF0ZSgpOworICAg
IHJldHVybiAqbV9ydGNEYXRhQ2hhbm5lbFByb3h5OworfQorI2VuZGlmCisKK3ZvaWQgTmV0d29y
a1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nl
c3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBB
U1NFUlQocmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgYXV0byogY29ubmVjdGlvbiA9IHdl
YlByb2Nlc3NDb25uZWN0aW9uKHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyKTsKKyAgICBpZiAoIWNv
bm5lY3Rpb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQp
OworCisgICAgYXV0byBzZXNzaW9uID0gY29ubmVjdGlvbi0+bmV0d29ya1Nlc3Npb24oKTsKKyAg
ICBpZiAoIXNlc3Npb24pCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51
bGxvcHQpOworCisgICAgYXV0byBsb2FkZXIgPSBjb25uZWN0aW9uLT50YWtlTmV0d29ya1Jlc291
cmNlTG9hZGVyKHJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIGlmICghbG9hZGVyKQorICAg
ICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0KTsKKworICAgIGF1dG8g
aWRlbnRpZmllciA9IGxvYWRlci0+aWRlbnRpZmllcigpOworICAgIHNlc3Npb24tPmFkZExvYWRl
ckF3YWl0aW5nV2ViUHJvY2Vzc1RyYW5zZmVyKGxvYWRlci5yZWxlYXNlTm9uTnVsbCgpKTsKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcihpZGVudGlmaWVyKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vz
czo6YWRkV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwg
V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIFdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyYm
IHBhcmFtZXRlcnMpCit7CisgICAgYXV0byBzZXNzaW9uID0gbmV0d29ya1Nlc3Npb24oc2Vzc2lv
bklEKTsKKyAgICBpZiAoIXNlc3Npb24pCisgICAgICAgIHJldHVybjsKKworICAgIHNlc3Npb24t
PmFkZFdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyhwYWdlSUQsIFdURk1vdmUocGFyYW1ldGVycykp
OworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpyZW1vdmVXZWJQYWdlTmV0d29ya1BhcmFtZXRl
cnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJ
RCkKK3sKKyAgICBhdXRvIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpOworICAg
IGlmICghc2Vzc2lvbikKKyAgICAgICAgcmV0dXJuOworCisgICAgc2Vzc2lvbi0+cmVtb3ZlV2Vi
UGFnZU5ldHdvcmtQYXJhbWV0ZXJzKHBhZ2VJRCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3M6
OmNvdW50Tm9uRGVmYXVsdFNlc3Npb25TZXRzKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChzaXplX3QpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGF1dG8gc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCk7CisgICAgaWYgKCFzZXNz
aW9uKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoMCk7CisKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihzZXNzaW9uLT5jb3VudE5vbkRlZmF1bHRTZXNzaW9uU2V0cygpKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmgKaW5kZXggMTA2MDIyY2U2ODUxOTc4MzBmMjY1YWFiNjUzZDg0ZTAwZjg1
MWNkOS4uYTY0YTAxZmY0ZmJkMmFlZTM2OWNlM2QxMzVkZTg3OGI5NzQ0NTlkMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaApAQCAtNDIzLDcgKzQy
Myw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBkaWRSZWNlaXZlU3luY05ldHdvcmtQcm9jZXNzTWVz
c2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImLCBVbmlxdWVSZWY8SVBDOjpFbmNv
ZGVyPiYpOwogICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzKE5ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgY3JlYXRlTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3MoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIsIFBBTDo6U2Vzc2lvbklELCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8SVBDOjpBdHRhY2htZW50PiYmLCBX
ZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KT4mJik7Ci0gICAgdm9pZCBwcmVwYXJlTG9h
ZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQ
cm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlm
aWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2Vi
Q29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiByZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291
cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CiAKICAgICB2b2lkIGZldGNoV2Vic2l0ZURhdGEoUEFM
OjpTZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBPcHRpb25TZXQ8V2Vic2l0
ZURhdGFGZXRjaE9wdGlvbj4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vic2l0ZURhdGEmJik+
JiYpOwogICAgIHZvaWQgZGVsZXRlV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNl
dDxXZWJzaXRlRGF0YVR5cGU+LCBXYWxsVGltZSBtb2RpZmllZFNpbmNlLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUHJvY2Vzcy5oLnJlaiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3MuaC5yZWoKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWEwNDVlODhhZDEzODk5OGE2NzVjM2YzY2U5
NWY2NzdlZGFiOWFhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Byb2Nlc3MuaC5yZWoKQEAgLTAsMCArMSwzNSBAQAorKioqKioqKioqKioq
KioqCisqKiogMTA5LDExNCAqKioqCisgIGNsYXNzIE5ldHdvcmtQcm94aW1pdHlNYW5hZ2VyOwor
ICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyU2V0
OworICBjbGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb247CisgIGNsYXNzIFdlYlNXU2VydmVyVG9D
b250ZXh0Q29ubmVjdGlvbjsKKyAgZW51bSBjbGFzcyBDYWxsRG93bmxvYWREaWRTdGFydCA6IGJv
b2w7CistLS0gMTA5LDExNSAtLS0tCisgIGNsYXNzIE5ldHdvcmtQcm94aW1pdHlNYW5hZ2VyOwor
ICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNzIFN0b3JhZ2VNYW5hZ2VyU2V0
OworKyBjbGFzcyBXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnM7CisgIGNsYXNzIFdlYlNXU2VydmVy
Q29ubmVjdGlvbjsKKyAgY2xhc3MgV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uOworICBl
bnVtIGNsYXNzIENhbGxEb3dubG9hZERpZFN0YXJ0IDogYm9vbDsKKyoqKioqKioqKioqKioqKgor
KioqIDQ1NSw0NjAgKioqKgorICAgICAgCisgICAgICB2b2lkIGZsdXNoQ29va2llcyhjb25zdCBQ
QUw6OlNlc3Npb25JRCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgIAorICAjaWYg
VVNFKFNPVVApCisgICAgICB2b2lkIHNldElnbm9yZVRMU0Vycm9ycyhQQUw6OlNlc3Npb25JRCwg
Ym9vbCk7CisgICAgICB2b2lkIHVzZXJQcmVmZXJyZWRMYW5ndWFnZXNDaGFuZ2VkKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+Jik7CistLS0gNDU2LDQ2NSAtLS0tCisgICAgICAKKyAgICAgIHZvaWQgZmx1
c2hDb29raWVzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmKTsKKyAgCisrICAgICB2b2lkIGFkZFdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyhjb25zdCBQ
QUw6OlNlc3Npb25JRCYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIFdlYlBhZ2VOZXR3b3JrUGFy
YW1ldGVycyYmKTsKKysgICAgIHZvaWQgcmVtb3ZlV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKGNv
bnN0IFBBTDo6U2Vzc2lvbklEJiwgV2ViUGFnZVByb3h5SWRlbnRpZmllcik7CisrICAgICB2b2lk
IGNvdW50Tm9uRGVmYXVsdFNlc3Npb25TZXRzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzaXplX3QpPiYmKTsKKysgCisgICNpZiBVU0UoU09VUCkKKyAgICAg
IHZvaWQgc2V0SWdub3JlVExTRXJyb3JzKFBBTDo6U2Vzc2lvbklELCBib29sKTsKKyAgICAgIHZv
aWQgdXNlclByZWZlcnJlZExhbmd1YWdlc0NoYW5nZWQoY29uc3QgVmVjdG9yPFN0cmluZz4mKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
bWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Lm1lc3NhZ2VzLmluCmluZGV4IGQ1OTU4OTM2ZmFlMTFlZDhiYjJhMzczYTdkNGZmMGJkN2ZiMzRm
NTEuLjlhYTllYWE5ZjEzMWIwMWY2NjliNTM4ODUwMDIyNmU0MzUyYTFkMGEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4K
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdl
cy5pbgpAQCAtMTk2LDcgKzE5Niw3IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtQcm9jZXNzIExlZ2Fj
eVJlY2VpdmVyIHsKICAgICBDbGVhckFwcFByaXZhY3lSZXBvcnRUZXN0aW5nRGF0YShQQUw6OlNl
c3Npb25JRCBzZXNzaW9uSUQpIC0+ICgpIEFzeW5jCiAjZW5kaWYKIAotICAgIFByZXBhcmVMb2Fk
Rm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVBy
b2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoc3Rk
OjpvcHRpb25hbDxXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBuZXR3b3Jr
UmVzb3VyY2VMb2FkSWRlbnRpZmllcikgQXN5bmMKKyAgICBQcmVwYXJlTG9hZEZvcldlYlByb2Nl
c3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRp
Zmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHJl
c291cmNlTG9hZElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6TmV0d29ya1Jl
c291cmNlTG9hZElkZW50aWZpZXI+IG5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyKSBBc3lu
YwogCiAgICAgQWRkV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKFBBTDo6U2Vzc2lvbklEIHNlc3Np
b25JRCwgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJRCwgV2ViS2l0OjpXZWJQ
YWdlTmV0d29ya1BhcmFtZXRlcnMgcGFyYW1ldGVycykKICAgICBSZW1vdmVXZWJQYWdlTmV0d29y
a1BhcmFtZXRlcnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJLaXQ6OldlYlBhZ2VQcm94
eUlkZW50aWZpZXIgcGFnZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5jcHAKaW5kZXggZGI5N2Y1NTJmZWU3YTM4OTE2
NTFmM2JkZDZlNGFkZWU2MjQ3YTJlOS4uZjlhMmFhMjBkYjQzOTA3NmM0NGYyMDFhNmRiZGRhYmIz
ZDdjOGNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwCkBAIC0zOSw3ICszOSw3IEBAIE5ldHdvcmtSZXNvdXJj
ZUxvYWRNYXA6On5OZXR3b3JrUmVzb3VyY2VMb2FkTWFwKCkKICAgICBjbGVhcigpOwogfQogCi1O
ZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNl
TG9hZE1hcDo6YWRkKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgUmVmPE5ldHdv
cmtSZXNvdXJjZUxvYWRlcj4mJiBsb2FkZXIpCitOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBU
eXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRkKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVy
PiYmIGxvYWRlcikKIHsKICAgICBBU1NFUlQoIW1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVy
KSk7CiAgICAgYm9vbCBoYXNVcGxvYWQgPSBsb2FkZXItPm9yaWdpbmFsUmVxdWVzdCgpLmhhc1Vw
bG9hZCgpOwpAQCAtNDksNyArNDksNyBAQCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBl
OjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRkKFJlc291cmNlTAogICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKLWJvb2wgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6cmVtb3ZlKFJl
c291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK2Jvb2wgTmV0d29ya1Jlc291cmNlTG9h
ZE1hcDo6cmVtb3ZlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogewogICAgIHJldHVybiAhIXRha2UoaWRlbnRpZmllcik7CiB9CkBAIC02MCw3ICs2MCw3IEBA
IHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Y2xlYXIoKQogICAgIHNldEhhc1VwbG9hZChm
YWxzZSk7CiB9CiAKLVJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtSZXNvdXJj
ZUxvYWRNYXA6OnRha2UoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQorUmVmUHRy
PE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6dGFrZShXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIGxv
YWRlciA9IG1fbG9hZGVycy50YWtlKGlkZW50aWZpZXIpOwogICAgIGlmICghbG9hZGVyKQpAQCAt
NzIsNyArNzIsNyBAQCBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiBOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjp0YWtlKFJlc291cmNlTG9hZElkZW50aWZpZQogICAgIHJldHVybiBsb2FkZXI7
CiB9CiAKLU5ldHdvcmtSZXNvdXJjZUxvYWRlciogTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Z2V0
KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QKK05ldHdvcmtSZXNvdXJj
ZUxvYWRlciogTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Z2V0KFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAogewogICAgIHJldHVybiBtX2xvYWRlcnMu
Z2V0KGlkZW50aWZpZXIpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaAppbmRleCAwZWYyNzhjMzQwNWNkZGU2YTgzZmJm
MGFiNzJmZmM0N2MxNGQzMTE3Li43MTYwZGRlMWQ1N2MwMGYxNWZiNGFjMzVlNDE4MmUzZWNjOTg1
YjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNv
dXJjZUxvYWRNYXAuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtS
ZXNvdXJjZUxvYWRNYXAuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3Rm
L0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KIApAQCAtMzcsMjQgKzM4LDIy
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgTmV0d29ya1Jlc291cmNlTG9hZGVyOwogY2xh
c3MgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CiAKLXR5cGVkZWYgdWludDY0X3QgUmVz
b3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0d29ya1Jlc291cmNlTG9hZE1hcCB7CiBw
dWJsaWM6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPFJlc291cmNlTG9hZElkZW50aWZpZXIsIFJlZjxO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI+PiBNYXBUeXBlOworICAgIHVzaW5nIE1hcFR5cGUgPSBIYXNo
TWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcj4+OwogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXAoRnVuY3Rpb248dm9pZChib29s
IGhhc1VwbG9hZCk+JiYpOwogICAgIH5OZXR3b3JrUmVzb3VyY2VMb2FkTWFwKCk7CiAKICAgICBi
b29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBtX2xvYWRlcnMuaXNFbXB0eSgpOyB9Ci0gICAg
Ym9vbCBjb250YWlucyhSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsg
cmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsgfQorICAgIGJvb2wgY29udGFp
bnMoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsg
cmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsgfQogICAgIE1hcFR5cGU6Oml0
ZXJhdG9yIGJlZ2luKCkgeyByZXR1cm4gbV9sb2FkZXJzLmJlZ2luKCk7IH0KICAgICBNYXBUeXBl
OjpWYWx1ZXNJdGVyYXRvclJhbmdlIHZhbHVlcygpIHsgcmV0dXJuIG1fbG9hZGVycy52YWx1ZXMo
KTsgfQogICAgIHZvaWQgY2xlYXIoKTsKIAotICAgIE1hcFR5cGU6OkFkZFJlc3VsdCBhZGQoUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJik7Ci0gICAg
TmV0d29ya1Jlc291cmNlTG9hZGVyKiBnZXQoUmVzb3VyY2VMb2FkSWRlbnRpZmllcikgY29uc3Q7
Ci0gICAgYm9vbCByZW1vdmUoUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7Ci0gICAgUmVmUHRyPE5l
dHdvcmtSZXNvdXJjZUxvYWRlcj4gdGFrZShSZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBN
YXBUeXBlOjpBZGRSZXN1bHQgYWRkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
UmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJik7CisgICAgTmV0d29ya1Jlc291cmNlTG9hZGVy
KiBnZXQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBjb25zdDsKKyAgICBib29s
IHJlbW92ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIFJlZlB0cjxO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI+IHRha2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyKTsKIAogICAgIGJvb2wgaGFzVXBsb2FkKCkgY29uc3QgeyByZXR1cm4gbV9oYXNVcGxvYWQ7
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oCmluZGV4IGNjYzhiNTNjZjhkZWI4YzBjNWFjMWRm
NjIxMjkyZjRjOWRmNjVlZGMuLjRjYjg1Y2JhMjA2YjgwMjg3ZDQyYjViZTU2YmNjOGU5MzI2MTI1
NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291
cmNlTG9hZFBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRl
IDxXZWJDb3JlL0Nyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRmV0Y2hPcHRp
b25zLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNp
bmNsdWRlIDx3dGYvU2Vjb25kcy5oPgogCiBuYW1lc3BhY2UgSVBDIHsKQEAgLTQyLDggKzQzLDYg
QEAgY2xhc3MgRW5jb2RlcjsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLXR5cGVkZWYgdWludDY0
X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMgOiBwdWJsaWMgTmV0d29ya0xvYWRQYXJhbWV0ZXJzIHsKIHB1YmxpYzoKICAgICB2
b2lkIGVuY29kZShJUEM6OkVuY29kZXImKSBjb25zdDsKQEAgLTUxLDcgKzUwLDcgQEAgcHVibGlj
OgogCiAgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBwYXJlbnRPcmlnaW4oKSBj
b25zdDsKIAotICAgIG11dGFibGUgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyIHsg
MCB9OworICAgIG11dGFibGUgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXI7CiAgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPj4gcmVxdWVzdEJvZHlT
YW5kYm94RXh0ZW5zaW9uczsgLy8gQ3JlYXRlZCBhdXRvbWF0aWNhbGx5IGZvciB0aGUgc2VuZGVy
LgogICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiByZXNvdXJjZVNhbmRib3hFeHRlbnNpb247
IC8vIENyZWF0ZWQgYXV0b21hdGljYWxseSBmb3IgdGhlIHNlbmRlci4KICAgICBtdXRhYmxlIFNl
Y29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggODNlODNiY2U4NGU3
ZjQ5ODM4OGU2OTI4NGU5MDgxMzIyZWJiOGM0OC4uMjM4NjNiZjdlZjM3N2I0YWE0ZjljNzYxMzI4
MDExODJmMTg2YmI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNjYsOCArNjYsOCBAQAogI2luY2x1ZGUg
PFdlYkNvcmUvUHJldmlld0NvbnZlcnRlci5oPgogI2VuZGlmCiAKLSNkZWZpbmUgTE9BREVSX1JF
TEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbcGFnZVByb3h5
SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQg
IiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3VyY2U9JWQsIGRlc3RpbmF0aW9u
PSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlz
LCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLndl
YlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBt
X3BhcmFtZXRlcnMuaWRlbnRpZmllciwgaXNNYWluUmVzb3VyY2UoKSwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9uKSwgaXNTeW5jaHJvbm91cygp
LCAjI19fVkFfQVJHU19fKQotI2RlZmluZSBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAu
Li4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1
NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3lu
Y2hyb25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1l
dGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRv
VUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVy
cy5pZGVudGlmaWVyLCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9w
YXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNocm9ub3VzKCksICMjX19WQV9B
UkdTX18pCisjZGVmaW5lIExPQURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0co
TmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJ
dTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGlzTWFp
blJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJvbm91cz0lZF0gTmV0d29ya1Jl
c291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRv
VUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJz
LndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQo
KSwgaXNNYWluUmVzb3VyY2UoKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5v
cHRpb25zLmRlc3RpbmF0aW9uKSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQorI2Rl
ZmluZSBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9S
KE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBS
SXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiLCBpc01h
aW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRdIE5ldHdvcmtS
ZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50
b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVy
cy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0
KCksIGlzTWFpblJlc291cmNlKCksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3BhcmFtZXRlcnMu
b3B0aW9ucy5kZXN0aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwgIyNfX1ZBX0FSR1NfXykKIAog
bmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTUyNCw3ICs1
MjQsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6YWJvcnQoKQogICAgIGNsZWFudXAo
TG9hZFJlc3VsdDo6Q2FuY2VsKTsKIH0KIAotdm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnRy
YW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBuZXdD
b25uZWN0aW9uLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIG5ld0NvcmVJZGVudGlmaWVyKQordm9p
ZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnRyYW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiBuZXdDb25uZWN0aW9uLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgbmV3Q29yZUlkZW50aWZpZXIpCiB7CiAgICAgbV9jb25uZWN0aW9uID0g
bmV3Q29ubmVjdGlvbjsKICAgICBtX3BhcmFtZXRlcnMuaWRlbnRpZmllciA9IG5ld0NvcmVJZGVu
dGlmaWVyOwpAQCAtMTM5NiwxNyArMTM5Niw4IEBAIHN0YXRpYyBTdHJpbmcgZXNjYXBlRm9ySlNP
TihTdHJpbmcgcykKICAgICByZXR1cm4gcy5yZXBsYWNlKCdcXCcsICJcXFxcIikucmVwbGFjZSgn
IicsICJcXFwiIik7CiB9CiAKLXN0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+JiB2YWx1ZSkKLXsKLSAgICByZXR1cm4gdmFsdWUgPyBTdHJp
bmc6Om51bWJlcih2YWx1ZS52YWx1ZSgpKSA6IFN0cmluZygiTm9uZSJfcyk7Ci19Ci0KLXN0YXRp
YyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlm
aWVyPiYgdmFsdWUpCi17Ci0gICAgcmV0dXJuIHZhbHVlID8gU3RyaW5nOjpudW1iZXIodmFsdWUt
PnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKLX0KLQotc3RhdGljIFN0cmluZyBlc2Nh
cGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4mIHZhbHVlKQor
dGVtcGxhdGU8dHlwZW5hbWUgSWRlbnRpZmllclR5cGU+CitzdGF0aWMgU3RyaW5nIGVzY2FwZUlE
Rm9ySlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPE9iamVjdElkZW50aWZpZXI8SWRlbnRpZmllclR5
cGU+PiYgdmFsdWUpCiB7CiAgICAgcmV0dXJuIHZhbHVlID8gU3RyaW5nOjpudW1iZXIodmFsdWUt
PnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKIH0KQEAgLTE0MjEsNyArMTQxMiw3IEBA
IHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbigpIGNvbnN0
CiAgICAgbG9nQ29va2llSW5mb3JtYXRpb24obV9jb25uZWN0aW9uLCAiTmV0d29ya1Jlc291cmNl
TG9hZGVyIiwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkKj4odGhpcyksICpuZXR3b3JrU3Rv
cmFnZVNlc3Npb24sIG9yaWdpbmFsUmVxdWVzdCgpLmZpcnN0UGFydHlGb3JDb29raWVzKCksIFNh
bWVTaXRlSW5mbzo6Y3JlYXRlKG9yaWdpbmFsUmVxdWVzdCgpKSwgb3JpZ2luYWxSZXF1ZXN0KCku
dXJsKCksIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBSZWZlcnJlcigpLCBmcmFtZUlEKCksIHBhZ2VJ
RCgpLCBjb3JlSWRlbnRpZmllcigpKTsKIH0KIAotc3RhdGljIHZvaWQgbG9nQmxvY2tlZENvb2tp
ZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBj
b25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNv
cmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBV
UkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50
aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3Rk
OjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3N0YXRpYyB2b2lkIGxvZ0Jsb2NrZWRD
b29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlv
biwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBX
ZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29u
c3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJ
ZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQs
IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBpZGVudGlm
aWVyKQogewogICAgIEFTU0VSVChOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZExvZ0Nvb2tp
ZUluZm9ybWF0aW9uKGNvbm5lY3Rpb24sIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5zZXNzaW9uSUQo
KSkpOwogCkBAIC0xNDQ4LDcgKzE0MzksNyBAQCBzdGF0aWMgdm9pZCBsb2dCbG9ja2VkQ29va2ll
SW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3RpbwogI3Vu
ZGVmIExPQ0FMX0xPR19JRl9BTExPV0VECiB9CiAKLXN0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9y
bWF0aW9uSW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24s
IGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2Vi
Q29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0
IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUlu
Zm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFs
PEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4g
cGFnZUlELCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlmaWVyKQorc3RhdGljIHZvaWQg
bG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2Jq
ZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBXZWJDb3JlOjpTYW1lU2l0ZUlu
Zm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIs
IHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBh
Z2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyPiBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OnNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5lY3Rpb24sIG5ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCkBAIC0xNTA5LDcgKzE1MDAsNyBAQCBzdGF0aWMg
dm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzJiBjb25uZWN0aQogI3VuZGVmIExPQ0FMX0xPR19JRl9BTExPV0VECiB9CiAKLXZvaWQg
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qg
dm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8m
IHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0
ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJ
ZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGlkZW50aWZpZXIpCit2
b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6bG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNv
bnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3
b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgU2FtZVNpdGVJ
bmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVy
LCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25hbDxQ
YWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcj4gaWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQoc2hvdWxkTG9nQ29va2ll
SW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgp
KSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcC5vcmlnIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUmVzb3VyY2VMb2FkZXIuY3BwLm9yaWcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODNlODNiY2U4NGU3ZjQ5ODM4
OGU2OTI4NGU5MDgxMzIyZWJiOGM0OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcC5vcmlnCkBAIC0wLDAgKzEs
MTYyNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMi0yMDIxIEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
Ik5ldHdvcmtSZXNvdXJjZUxvYWRlci5oIgorCisjaW5jbHVkZSAiRm9ybURhdGFSZWZlcmVuY2Uu
aCIKKyNpbmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmV0d29ya0NhY2hlLmgiCisjaW5j
bHVkZSAiTmV0d29ya0NhY2hlU3BlY3VsYXRpdmVMb2FkTWFuYWdlci5oIgorI2luY2x1ZGUgIk5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgiCisjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3NNZXNzYWdlcy5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkLmgiCisjaW5j
bHVkZSAiTmV0d29ya0xvYWRDaGVja2VyLmgiCisjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3MuaCIK
KyNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25NZXNzYWdlcy5oIgorI2luY2x1ZGUg
Ik5ldHdvcmtQcm9jZXNzUHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgIk5ldHdvcmtTZXNzaW9u
LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkSW5mby5oIgorI2luY2x1ZGUgIlNlcnZpY2VXb3Jr
ZXJGZXRjaFRhc2suaCIKKyNpbmNsdWRlICJTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlLmgiCisj
aW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCisjaW5jbHVkZSAiV2ViRXJyb3JzLmgi
CisjaW5jbHVkZSAiV2ViTG9hZGVyU3RyYXRlZ3kuaCIKKyNpbmNsdWRlICJXZWJQYWdlTWVzc2Fn
ZXMuaCIKKyNpbmNsdWRlICJXZWJSZXNvdXJjZUxvYWRlck1lc3NhZ2VzLmgiCisjaW5jbHVkZSAi
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiV2Vic2l0ZURhdGFTdG9yZVBhcmFt
ZXRlcnMuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0Jsb2JEYXRhRmlsZVJlZmVyZW5jZS5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvQ2VydGlmaWNhdGVJbmZvLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Db250
ZW50U2VjdXJpdHlQb2xpY3kuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0RpYWdub3N0aWNMb2dnaW5n
S2V5cy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSFRUUFBhcnNlcnMuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL05ldHdvcmtMb2FkTWV0cmljcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZWdpc3RyYWJsZURvbWFpbi5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvU2FtZVNpdGVJbmZvLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TZWN1cml0
eU9yaWdpbi5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVkQnVmZmVyLmg+CisjaW5jbHVkZSA8
d3RmL0V4cGVjdGVkLmg+CisjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKworI2lmIFVTRShRVUlD
S19MT09LKQorI2luY2x1ZGUgPFdlYkNvcmUvUHJldmlld0NvbnZlcnRlci5oPgorI2VuZGlmCisK
KyNkZWZpbmUgTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3Jr
LCAiJXAgLSBbcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwg
ZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3Vy
Y2U9JWQsIGRlc3RpbmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OiIgZm10LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbV9wYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJh
bWVJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllciwgaXNNYWluUmVzb3VyY2Uo
KSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9u
KSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBMT0FERVJfUkVMRUFT
RV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtw
YWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVz
dGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBm
bXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFt
ZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUlu
dDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNo
cm9ub3VzKCksICMjX19WQV9BUkdTX18pCisKK25hbWVzcGFjZSBXZWJLaXQgewordXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CisKK3N0cnVjdCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OlN5bmNocm9u
b3VzTG9hZERhdGEgeworICAgIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRDsKKworICAg
IFN5bmNocm9ub3VzTG9hZERhdGEoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpQZXJmb3JtU3luY2hyb25vdXNMb2FkOjpEZWxheWVkUmVwbHkmJiByZXBseSkKKyAgICAg
ICAgOiBkZWxheWVkUmVwbHkoV1RGTW92ZShyZXBseSkpCisgICAgeworICAgICAgICBBU1NFUlQo
ZGVsYXllZFJlcGx5KTsKKyAgICB9CisgICAgUmVzb3VyY2VSZXF1ZXN0IGN1cnJlbnRSZXF1ZXN0
OworICAgIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UGVyZm9ybVN5
bmNocm9ub3VzTG9hZDo6RGVsYXllZFJlcGx5IGRlbGF5ZWRSZXBseTsKKyAgICBSZXNvdXJjZVJl
c3BvbnNlIHJlc3BvbnNlOworICAgIFJlc291cmNlRXJyb3IgZXJyb3I7Cit9OworCitzdGF0aWMg
dm9pZCBzZW5kUmVwbHlUb1N5bmNocm9ub3VzUmVxdWVzdChOZXR3b3JrUmVzb3VyY2VMb2FkZXI6
OlN5bmNocm9ub3VzTG9hZERhdGEmIGRhdGEsIGNvbnN0IFNoYXJlZEJ1ZmZlciogYnVmZmVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCit7CisgICAgQVNTRVJUKGRhdGEuZGVs
YXllZFJlcGx5KTsKKyAgICBBU1NFUlQoIWRhdGEucmVzcG9uc2UuaXNOdWxsKCkgfHwgIWRhdGEu
ZXJyb3IuaXNOdWxsKCkpOworCisgICAgVmVjdG9yPHVpbnQ4X3Q+IHJlc3BvbnNlQnVmZmVyOwor
ICAgIGlmIChidWZmZXIgJiYgYnVmZmVyLT5zaXplKCkpCisgICAgICAgIHJlc3BvbnNlQnVmZmVy
LmFwcGVuZChidWZmZXItPmRhdGEoKSwgYnVmZmVyLT5zaXplKCkpOworCisgICAgZGF0YS5yZXNw
b25zZS5zZXREZXByZWNhdGVkTmV0d29ya0xvYWRNZXRyaWNzKEJveDxOZXR3b3JrTG9hZE1ldHJp
Y3M+OjpjcmVhdGUobWV0cmljcykpOworCisgICAgZGF0YS5kZWxheWVkUmVwbHkoZGF0YS5lcnJv
ciwgZGF0YS5yZXNwb25zZSwgcmVzcG9uc2VCdWZmZXIpOworICAgIGRhdGEuZGVsYXllZFJlcGx5
ID0gbnVsbHB0cjsKK30KKworTmV0d29ya1Jlc291cmNlTG9hZGVyOjpOZXR3b3JrUmVzb3VyY2VM
b2FkZXIoTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzLCBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgTWVzc2FnZXM6Ok5ldHdvcmtDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzOjpQZXJmb3JtU3luY2hyb25vdXNMb2FkOjpEZWxheWVkUmVwbHkm
JiBzeW5jaHJvbm91c1JlcGx5KQorICAgIDogbV9wYXJhbWV0ZXJzIHsgV1RGTW92ZShwYXJhbWV0
ZXJzKSB9CisgICAgLCBtX2Nvbm5lY3Rpb24geyBjb25uZWN0aW9uIH0KKyAgICAsIG1fZmlsZVJl
ZmVyZW5jZXMoY29ubmVjdGlvbi5yZXNvbHZlQmxvYlJlZmVyZW5jZXMobV9wYXJhbWV0ZXJzKSkK
KyAgICAsIG1faXNBbGxvd2VkVG9Bc2tVc2VyRm9yQ3JlZGVudGlhbHMgeyBtX3BhcmFtZXRlcnMu
Y2xpZW50Q3JlZGVudGlhbFBvbGljeSA9PSBDbGllbnRDcmVkZW50aWFsUG9saWN5OjpNYXlBc2tD
bGllbnRGb3JDcmVkZW50aWFscyB9CisgICAgLCBtX2J1ZmZlcmluZ1RpbWVyIHsgKnRoaXMsICZO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmJ1ZmZlcmluZ1RpbWVyRmlyZWQgfQorICAgICwgbV9zaG91
bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MobV9jb25uZWN0aW9uLT5jYXB0dXJlRXh0
cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKCkpCisgICAgLCBtX3Jlc291cmNlTG9hZElEIHsg
TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI6OmdlbmVyYXRlKCkgfQoreworICAgIEFTU0VS
VChSdW5Mb29wOjppc01haW4oKSk7CisKKyAgICBpZiAoYXV0byogc2Vzc2lvbiA9IGNvbm5lY3Rp
b24ubmV0d29ya1Byb2Nlc3MoKS5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQoKSkpCisgICAgICAg
IG1fY2FjaGUgPSBzZXNzaW9uLT5jYWNoZSgpOworCisgICAgLy8gRklYTUU6IFRoaXMgaXMgbmVj
ZXNzYXJ5IGJlY2F1c2Ugb2YgdGhlIGV4aXN0ZW5jZSBvZiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
IGluIFdlYkNvcmUuCisgICAgLy8gICAgICAgIE9uY2UgYnVnIDExNjIzMyBpcyByZXNvbHZlZCwg
dGhpcyBBU1NFUlQgY2FuIGp1c3QgYmUgIm1fd2ViUGFnZUlEICYmIG1fd2ViRnJhbWVJRCIKKyAg
ICBBU1NFUlQoKG1fcGFyYW1ldGVycy53ZWJQYWdlSUQgJiYgbV9wYXJhbWV0ZXJzLndlYkZyYW1l
SUQpIHx8IG1fcGFyYW1ldGVycy5jbGllbnRDcmVkZW50aWFsUG9saWN5ID09IENsaWVudENyZWRl
bnRpYWxQb2xpY3k6OkNhbm5vdEFza0NsaWVudEZvckNyZWRlbnRpYWxzKTsKKworICAgIGlmIChz
eW5jaHJvbm91c1JlcGx5IHx8IHBhcmFtZXRlcnMuc2hvdWxkUmVzdHJpY3RIVFRQUmVzcG9uc2VB
Y2Nlc3MgfHwgcGFyYW1ldGVycy5vcHRpb25zLmtlZXBBbGl2ZSkgeworICAgICAgICBOZXR3b3Jr
TG9hZENoZWNrZXI6OkxvYWRUeXBlIHJlcXVlc3RMb2FkVHlwZSA9IGlzTWFpbkZyYW1lTG9hZCgp
ID8gTmV0d29ya0xvYWRDaGVja2VyOjpMb2FkVHlwZTo6TWFpbkZyYW1lIDogTmV0d29ya0xvYWRD
aGVja2VyOjpMb2FkVHlwZTo6T3RoZXI7CisgICAgICAgIG1fbmV0d29ya0xvYWRDaGVja2VyID0g
bWFrZVVuaXF1ZTxOZXR3b3JrTG9hZENoZWNrZXI+KGNvbm5lY3Rpb24ubmV0d29ya1Byb2Nlc3Mo
KSwgdGhpcywgICZjb25uZWN0aW9uLnNjaGVtZVJlZ2lzdHJ5KCksIEZldGNoT3B0aW9ucyB7IG1f
cGFyYW1ldGVycy5vcHRpb25zIH0sIHNlc3Npb25JRCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZVBy
b3h5SUQsIEhUVFBIZWFkZXJNYXAgeyBtX3BhcmFtZXRlcnMub3JpZ2luYWxSZXF1ZXN0SGVhZGVy
cyB9LCBVUkwgeyBtX3BhcmFtZXRlcnMucmVxdWVzdC51cmwoKSB9LCBVUkwgeyBtX3BhcmFtZXRl
cnMuZG9jdW1lbnRVUkwgfSwgbV9wYXJhbWV0ZXJzLnNvdXJjZU9yaWdpbi5jb3B5UmVmKCksIG1f
cGFyYW1ldGVycy50b3BPcmlnaW4uY29weVJlZigpLCBtX3BhcmFtZXRlcnMucGFyZW50T3JpZ2lu
KCksIG1fcGFyYW1ldGVycy5wcmVmbGlnaHRQb2xpY3ksIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBS
ZWZlcnJlcigpLCBzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSwgcmVxdWVz
dExvYWRUeXBlKTsKKyAgICAgICAgaWYgKG1fcGFyYW1ldGVycy5jc3BSZXNwb25zZUhlYWRlcnMp
CisgICAgICAgICAgICBtX25ldHdvcmtMb2FkQ2hlY2tlci0+c2V0Q1NQUmVzcG9uc2VIZWFkZXJz
KENvbnRlbnRTZWN1cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyB7IG1fcGFyYW1ldGVycy5jc3BS
ZXNwb25zZUhlYWRlcnMudmFsdWUoKSB9KTsKKyAgICAgICAgbV9uZXR3b3JrTG9hZENoZWNrZXIt
PnNldFBhcmVudENyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kobV9wYXJhbWV0ZXJzLnBhcmVudENy
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kpOworICAgICAgICBtX25ldHdvcmtMb2FkQ2hlY2tlci0+
c2V0Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeShtX3BhcmFtZXRlcnMuY3Jvc3NPcmlnaW5FbWJl
ZGRlclBvbGljeSk7CisjaWYgRU5BQkxFKENPTlRFTlRfRVhURU5TSU9OUykKKyAgICAgICAgbV9u
ZXR3b3JrTG9hZENoZWNrZXItPnNldENvbnRlbnRFeHRlbnNpb25Db250cm9sbGVyKFVSTCB7IG1f
cGFyYW1ldGVycy5tYWluRG9jdW1lbnRVUkwgfSwgbV9wYXJhbWV0ZXJzLnVzZXJDb250ZW50Q29u
dHJvbGxlcklkZW50aWZpZXIpOworI2VuZGlmCisgICAgfQorICAgIGlmIChzeW5jaHJvbm91c1Jl
cGx5KQorICAgICAgICBtX3N5bmNocm9ub3VzTG9hZERhdGEgPSBtYWtlVW5pcXVlPFN5bmNocm9u
b3VzTG9hZERhdGE+KFdURk1vdmUoc3luY2hyb25vdXNSZXBseSkpOworfQorCitOZXR3b3JrUmVz
b3VyY2VMb2FkZXI6On5OZXR3b3JrUmVzb3VyY2VMb2FkZXIoKQoreworICAgIEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7CisgICAgQVNTRVJUKCFtX25ldHdvcmtMb2FkKTsKKyAgICBBU1NFUlQo
IWlzU3luY2hyb25vdXMoKSB8fCAhbV9zeW5jaHJvbm91c0xvYWREYXRhLT5kZWxheWVkUmVwbHkp
OworICAgIEFTU0VSVChtX2ZpbGVSZWZlcmVuY2VzLmlzRW1wdHkoKSk7CisgICAgaWYgKG1fcmVz
cG9uc2VDb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgbV9yZXNwb25zZUNvbXBsZXRpb25IYW5k
bGVyKFBvbGljeUFjdGlvbjo6SWdub3JlKTsKK30KKworYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OmNhblVzZUNhY2hlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkgY29uc3QKK3sK
KyAgICBpZiAoIW1fY2FjaGUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBBU1NFUlQoIXNl
c3Npb25JRCgpLmlzRXBoZW1lcmFsKCkpOworCisgICAgaWYgKCFyZXF1ZXN0LnVybCgpLnByb3Rv
Y29sSXNJbkhUVFBGYW1pbHkoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmIChvcmln
aW5hbFJlcXVlc3QoKS5jYWNoZVBvbGljeSgpID09IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdENh
Y2hlUG9saWN5OjpEb05vdFVzZUFueUNhY2hlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAg
ICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmNhblVzZUNh
Y2hlZFJlZGlyZWN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkgY29uc3QKK3sKKyAg
ICBpZiAoIWNhblVzZUNhY2hlKHJlcXVlc3QpIHx8IG1fY2FjaGVFbnRyeUZvck1heEFnZUNhcFZh
bGlkYXRpb24pCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAvLyBMaW1pdCBjYWNoZWQgcmVk
aXJlY3RzIHRvIGF2b2lkIGN5Y2xlcyBhbmQgb3RoZXIgdHJvdWJsZS4KKyAgICAvLyBOZXR3b3Jr
aW5nIGxheWVyIGZvbGxvd3Mgb3ZlciAzMCByZWRpcmVjdHMgYnV0IGNhY2hpbmcgdGhhdCBtYW55
IHNlZW1zIHVubmVjZXNzYXJ5LgorICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBtYXhpbXVtQ2Fj
aGVkUmVkaXJlY3RDb3VudCB7IDUgfTsKKyAgICBpZiAobV9yZWRpcmVjdENvdW50ID4gbWF4aW11
bUNhY2hlZFJlZGlyZWN0Q291bnQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVy
biB0cnVlOworfQorCitib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6aXNTeW5jaHJvbm91cygp
IGNvbnN0Cit7CisgICAgcmV0dXJuICEhbV9zeW5jaHJvbm91c0xvYWREYXRhOworfQorCit2b2lk
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c3RhcnQoKQoreworICAgIEFTU0VSVChSdW5Mb29wOjpp
c01haW4oKSk7CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJzdGFydDogaGFzTmV0d29ya0xvYWRD
aGVja2VyPSVkIiwgISFtX25ldHdvcmtMb2FkQ2hlY2tlcik7CisKKyAgICBtX25ldHdvcmtBY3Rp
dml0eVRyYWNrZXIgPSBtX2Nvbm5lY3Rpb24tPnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQobV9w
YXJhbWV0ZXJzLndlYlBhZ2VJRCwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIsIGlzTWFpbkZyYW1l
TG9hZCgpKTsKKworICAgIEFTU0VSVCghbV93YXNTdGFydGVkKTsKKyAgICBtX3dhc1N0YXJ0ZWQg
PSB0cnVlOworCisgICAgaWYgKG1fbmV0d29ya0xvYWRDaGVja2VyKSB7CisgICAgICAgIG1fbmV0
d29ya0xvYWRDaGVja2VyLT5jaGVjayhSZXNvdXJjZVJlcXVlc3QgeyBvcmlnaW5hbFJlcXVlc3Qo
KSB9LCB0aGlzLCBbdGhpcywgd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyldIChhdXRvJiYg
cmVzdWx0KSB7CisgICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJl
dHVybjsKKworICAgICAgICAgICAgV1RGOjpzd2l0Y2hPbihyZXN1bHQsCisgICAgICAgICAgICAg
ICAgW3RoaXNdIChSZXNvdXJjZUVycm9yJiBlcnJvcikgeworICAgICAgICAgICAgICAgICAgICBM
T0FERVJfUkVMRUFTRV9MT0coInN0YXJ0OiBOZXR3b3JrTG9hZENoZWNrZXI6OmNoZWNrIHJldHVy
bmVkIGFuIGVycm9yIChlcnJvci5kb21haW49JSIgUFVCTElDX0xPR19TVFJJTkcgIiwgZXJyb3Iu
Y29kZT0lZCwgaXNDYW5jZWxsYXRpb249JWQpIiwgZXJyb3IuZG9tYWluKCkudXRmOCgpLmRhdGEo
KSwgZXJyb3IuZXJyb3JDb2RlKCksIGVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpOworICAgICAgICAg
ICAgICAgICAgICBpZiAoIWVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpCisgICAgICAgICAgICAgICAg
ICAgICAgICB0aGlzLT5kaWRGYWlsTG9hZGluZyhlcnJvcik7CisgICAgICAgICAgICAgICAgfSwK
KyAgICAgICAgICAgICAgICBbdGhpc10gKE5ldHdvcmtMb2FkQ2hlY2tlcjo6UmVkaXJlY3Rpb25U
cmlwbGV0JiB0cmlwbGV0KSB7CisgICAgICAgICAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xP
Rygic3RhcnQ6IE5ldHdvcmtMb2FkQ2hlY2tlcjo6Y2hlY2sgcmV0dXJuZWQgYSBzeW50aGV0aWMg
cmVkaXJlY3QiKTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy0+bV9pc1dhaXRpbmdDb250aW51
ZVdpbGxTZW5kUmVxdWVzdEZvckNhY2hlZFJlZGlyZWN0ID0gdHJ1ZTsKKyAgICAgICAgICAgICAg
ICAgICAgdGhpcy0+d2lsbFNlbmRSZWRpcmVjdGVkUmVxdWVzdChXVEZNb3ZlKHRyaXBsZXQucmVx
dWVzdCksIFdURk1vdmUodHJpcGxldC5yZWRpcmVjdFJlcXVlc3QpLCBXVEZNb3ZlKHRyaXBsZXQu
cmVkaXJlY3RSZXNwb25zZSkpOworICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgICAg
W3RoaXNdIChSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpIHsKKyAgICAgICAgICAgICAgICAgICAg
TE9BREVSX1JFTEVBU0VfTE9HKCJzdGFydDogTmV0d29ya0xvYWRDaGVja2VyOjpjaGVjayBpcyBk
b25lIik7CisgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLT5jYW5Vc2VDYWNoZShyZXF1ZXN0
KSkgeworICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy0+cmV0cmlldmVDYWNoZUVudHJ5KHJl
cXVlc3QpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgdGhpcy0+c3RhcnROZXR3b3JrTG9hZChXVEZN
b3ZlKHJlcXVlc3QpLCBGaXJzdExvYWQ6Olllcyk7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgKTsKKyAgICAgICAgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgLy8gRklY
TUU6IFJlbW92ZSB0aGF0IGNvZGUgcGF0aCBvbmNlIG1fbmV0d29ya0xvYWRDaGVja2VyIGlzIHVz
ZWQgZm9yIGFsbCBuZXR3b3JrIGxvYWRzLgorICAgIGlmIChjYW5Vc2VDYWNoZShvcmlnaW5hbFJl
cXVlc3QoKSkpIHsKKyAgICAgICAgcmV0cmlldmVDYWNoZUVudHJ5KG9yaWdpbmFsUmVxdWVzdCgp
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHN0YXJ0TmV0d29ya0xvYWQoUmVzb3Vy
Y2VSZXF1ZXN0IHsgb3JpZ2luYWxSZXF1ZXN0KCkgfSwgRmlyc3RMb2FkOjpZZXMpOworfQorCit2
b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6cmV0cmlldmVDYWNoZUVudHJ5KGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coInJldHJpZXZl
Q2FjaGVFbnRyeTogaXNNYWluRnJhbWVMb2FkPSVkIiwgaXNNYWluRnJhbWVMb2FkKCkpOworICAg
IEFTU0VSVChjYW5Vc2VDYWNoZShyZXF1ZXN0KSk7CisKKyAgICBhdXRvIHByb3RlY3RlZFRoaXMg
PSBtYWtlUmVmKCp0aGlzKTsKKyAgICBpZiAoaXNNYWluRnJhbWVMb2FkKCkpIHsKKyAgICAgICAg
QVNTRVJUKG1fcGFyYW1ldGVycy5vcHRpb25zLm1vZGUgPT0gRmV0Y2hPcHRpb25zOjpNb2RlOjpO
YXZpZ2F0ZSk7CisgICAgICAgIGlmIChhdXRvKiBzZXNzaW9uID0gbV9jb25uZWN0aW9uLT5uZXR3
b3JrUHJvY2VzcygpLm5ldHdvcmtTZXNzaW9uKHNlc3Npb25JRCgpKSkgeworICAgICAgICAgICAg
aWYgKGF1dG8gZW50cnkgPSBzZXNzaW9uLT5wcmVmZXRjaENhY2hlKCkudGFrZShyZXF1ZXN0LnVy
bCgpKSkgeworICAgICAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygicmV0cmlldmVDYWNo
ZUVudHJ5OiByZXRyaWV2ZWQgYW4gZW50cnkgZnJvbSB0aGUgcHJlZmV0Y2ggY2FjaGUgKGlzUmVk
aXJlY3Q9JWQpIiwgIWVudHJ5LT5yZWRpcmVjdFJlcXVlc3QuaXNOdWxsKCkpOworICAgICAgICAg
ICAgICAgIGlmICghZW50cnktPnJlZGlyZWN0UmVxdWVzdC5pc051bGwoKSkgeworICAgICAgICAg
ICAgICAgICAgICBhdXRvIGNhY2hlRW50cnkgPSBtX2NhY2hlLT5tYWtlUmVkaXJlY3RFbnRyeShy
ZXF1ZXN0LCBlbnRyeS0+cmVzcG9uc2UsIGVudHJ5LT5yZWRpcmVjdFJlcXVlc3QpOworICAgICAg
ICAgICAgICAgICAgICByZXRyaWV2ZUNhY2hlRW50cnlJbnRlcm5hbChXVEZNb3ZlKGNhY2hlRW50
cnkpLCBSZXNvdXJjZVJlcXVlc3QgeyByZXF1ZXN0IH0pOworICAgICAgICAgICAgICAgICAgICBh
dXRvIG1heEFnZUNhcCA9IHZhbGlkYXRlQ2FjaGVFbnRyeUZvck1heEFnZUNhcFZhbGlkYXRpb24o
cmVxdWVzdCwgZW50cnktPnJlZGlyZWN0UmVxdWVzdCwgZW50cnktPnJlc3BvbnNlKTsKKyAgICAg
ICAgICAgICAgICAgICAgbV9jYWNoZS0+c3RvcmVSZWRpcmVjdChyZXF1ZXN0LCBlbnRyeS0+cmVz
cG9uc2UsIGVudHJ5LT5yZWRpcmVjdFJlcXVlc3QsIG1heEFnZUNhcCk7CisgICAgICAgICAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgYXV0byBi
dWZmZXIgPSBlbnRyeS0+cmVsZWFzZUJ1ZmZlcigpOworICAgICAgICAgICAgICAgIGF1dG8gY2Fj
aGVFbnRyeSA9IG1fY2FjaGUtPm1ha2VFbnRyeShyZXF1ZXN0LCBlbnRyeS0+cmVzcG9uc2UsIGJ1
ZmZlci5jb3B5UmVmKCkpOworICAgICAgICAgICAgICAgIHJldHJpZXZlQ2FjaGVFbnRyeUludGVy
bmFsKFdURk1vdmUoY2FjaGVFbnRyeSksIFJlc291cmNlUmVxdWVzdCB7IHJlcXVlc3QgfSk7Cisg
ICAgICAgICAgICAgICAgbV9jYWNoZS0+c3RvcmUocmVxdWVzdCwgZW50cnktPnJlc3BvbnNlLCBX
VEZNb3ZlKGJ1ZmZlcikpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgfQorICAgIH0KKworICAgIExPQURFUl9SRUxFQVNFX0xPRygicmV0cmlldmVDYWNo
ZUVudHJ5OiBDaGVja2luZyB0aGUgSFRUUCBkaXNrIGNhY2hlIik7CisgICAgbV9jYWNoZS0+cmV0
cmlldmUocmVxdWVzdCwgZ2xvYmFsRnJhbWVJRCgpLCBtX3BhcmFtZXRlcnMuaXNOYXZpZ2F0aW5n
VG9BcHBCb3VuZERvbWFpbiwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpLCBy
ZXF1ZXN0ID0gUmVzb3VyY2VSZXF1ZXN0IHsgcmVxdWVzdCB9XShhdXRvIGVudHJ5LCBhdXRvIGlu
Zm8pIG11dGFibGUgeworICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0dXJu
OworCisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygicmV0cmlldmVDYWNoZUVudHJ5OiBEb25l
IGNoZWNraW5nIHRoZSBIVFRQIGRpc2sgY2FjaGUgKGZvdW5kQ2FjaGVkRW50cnk9JWQpIiwgISFl
bnRyeSk7CisgICAgICAgIGxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZOZWVkZWQoaW5mbyk7CisKKyAg
ICAgICAgaWYgKCFlbnRyeSkgeworICAgICAgICAgICAgc3RhcnROZXR3b3JrTG9hZChXVEZNb3Zl
KHJlcXVlc3QpLCBGaXJzdExvYWQ6Olllcyk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgcmV0cmlldmVDYWNoZUVudHJ5SW50ZXJuYWwoV1RGTW92ZShlbnRyeSksIFdU
Rk1vdmUocmVxdWVzdCkpOworICAgIH0pOworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRl
cjo6cmV0cmlldmVDYWNoZUVudHJ5SW50ZXJuYWwoc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNo
ZTo6RW50cnk+JiYgZW50cnksIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCit7
CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJyZXRyaWV2ZUNhY2hlRW50cnlJbnRlcm5hbDoiKTsK
KyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikKKyAgICBpZiAoZW50
cnktPmhhc1JlYWNoZWRQcmV2YWxlbnRSZXNvdXJjZUFnZUNhcCgpKSB7CisgICAgICAgIExPQURF
Ul9SRUxFQVNFX0xPRygicmV0cmlldmVDYWNoZUVudHJ5SW50ZXJuYWw6IFJldmFsaWRhdGluZyBj
YWNoZWQgZW50cnkgYmVjYXVzZSBpdCByZWFjaGVkIHRoZSBwcmV2YWxlbnQgcmVzb3VyY2UgYWdl
IGNhcCIpOworICAgICAgICBtX2NhY2hlRW50cnlGb3JNYXhBZ2VDYXBWYWxpZGF0aW9uID0gV1RG
TW92ZShlbnRyeSk7CisgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXZhbGlkYXRpb25SZXF1ZXN0
ID0gb3JpZ2luYWxSZXF1ZXN0KCk7CisgICAgICAgIHN0YXJ0TmV0d29ya0xvYWQoV1RGTW92ZShy
ZXZhbGlkYXRpb25SZXF1ZXN0KSwgRmlyc3RMb2FkOjpZZXMpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorI2VuZGlmCisgICAgaWYgKGVudHJ5LT5yZWRpcmVjdFJlcXVlc3QoKSkgeworICAgICAg
ICBMT0FERVJfUkVMRUFTRV9MT0coInJldHJpZXZlQ2FjaGVFbnRyeUludGVybmFsOiBDYWNoZWQg
ZW50cnkgaXMgYSByZWRpcmVjdCIpOworICAgICAgICBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdEZv
ckNhY2hlRW50cnkoV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShlbnRyeSkpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorICAgIGlmIChtX3BhcmFtZXRlcnMubmVlZHNDZXJ0aWZpY2F0ZUluZm8g
JiYgIWVudHJ5LT5yZXNwb25zZSgpLmNlcnRpZmljYXRlSW5mbygpKSB7CisgICAgICAgIExPQURF
Ul9SRUxFQVNFX0xPRygicmV0cmlldmVDYWNoZUVudHJ5SW50ZXJuYWw6IENhY2hlZCBlbnRyeSBp
cyBtaXNzaW5nIGNlcnRpZmljYXRlIGluZm9ybWF0aW9uIHNvIHdlIGFyZSBub3QgdXNpbmcgaXQi
KTsKKyAgICAgICAgc3RhcnROZXR3b3JrTG9hZChXVEZNb3ZlKHJlcXVlc3QpLCBGaXJzdExvYWQ6
Olllcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgaWYgKGVudHJ5LT5uZWVkc1ZhbGlk
YXRpb24oKSB8fCByZXF1ZXN0LmNhY2hlUG9saWN5KCkgPT0gV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0Q2FjaGVQb2xpY3k6OlJlZnJlc2hBbnlDYWNoZURhdGEpIHsKKyAgICAgICAgTE9BREVSX1JF
TEVBU0VfTE9HKCJyZXRyaWV2ZUNhY2hlRW50cnlJbnRlcm5hbDogQ2FjaGVkIGVudHJ5IG5lZWRz
IHJldmFsaWRhdGlvbiIpOworICAgICAgICB2YWxpZGF0ZUNhY2hlRW50cnkoV1RGTW92ZShlbnRy
eSkpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIExPQURFUl9SRUxFQVNFX0xPRygicmV0
cmlldmVDYWNoZUVudHJ5SW50ZXJuYWw6IENhY2hlZCBlbnRyeSBpcyBkaXJlY3RseSB1c2FibGUi
KTsKKyAgICBkaWRSZXRyaWV2ZUNhY2hlRW50cnkoV1RGTW92ZShlbnRyeSkpOworfQorCit2b2lk
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c3RhcnROZXR3b3JrTG9hZChSZXNvdXJjZVJlcXVlc3Qm
JiByZXF1ZXN0LCBGaXJzdExvYWQgbG9hZCkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coInN0
YXJ0TmV0d29ya0xvYWQ6IChpc0ZpcnN0TG9hZD0lZCwgdGltZW91dD0lZikiLCBsb2FkID09IEZp
cnN0TG9hZDo6WWVzLCByZXF1ZXN0LnRpbWVvdXRJbnRlcnZhbCgpKTsKKyAgICBpZiAobG9hZCA9
PSBGaXJzdExvYWQ6OlllcykgeworICAgICAgICBjb25zdW1lU2FuZGJveEV4dGVuc2lvbnMoKTsK
KworICAgICAgICBpZiAoaXNTeW5jaHJvbm91cygpIHx8IG1fcGFyYW1ldGVycy5tYXhpbXVtQnVm
ZmVyaW5nVGltZSA+IDBfcykKKyAgICAgICAgICAgIG1fYnVmZmVyZWREYXRhID0gU2hhcmVkQnVm
ZmVyOjpjcmVhdGUoKTsKKworICAgICAgICBpZiAoY2FuVXNlQ2FjaGUocmVxdWVzdCkpCisgICAg
ICAgICAgICBtX2J1ZmZlcmVkRGF0YUZvckNhY2hlID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoKTsK
KyAgICB9CisKKyAgICBOZXR3b3JrTG9hZFBhcmFtZXRlcnMgcGFyYW1ldGVycyA9IG1fcGFyYW1l
dGVyczsKKyAgICBwYXJhbWV0ZXJzLm5ldHdvcmtBY3Rpdml0eVRyYWNrZXIgPSBtX25ldHdvcmtB
Y3Rpdml0eVRyYWNrZXI7CisgICAgaWYgKHBhcmFtZXRlcnMuc3RvcmVkQ3JlZGVudGlhbHNQb2xp
Y3kgPT0gV2ViQ29yZTo6U3RvcmVkQ3JlZGVudGlhbHNQb2xpY3k6OlVzZSAmJiBtX25ldHdvcmtM
b2FkQ2hlY2tlcikKKyAgICAgICAgcGFyYW1ldGVycy5zdG9yZWRDcmVkZW50aWFsc1BvbGljeSA9
IG1fbmV0d29ya0xvYWRDaGVja2VyLT5zdG9yZWRDcmVkZW50aWFsc1BvbGljeSgpOworCisgICAg
YXV0byogbmV0d29ya1Nlc3Npb24gPSBtX2Nvbm5lY3Rpb24tPm5ldHdvcmtTZXNzaW9uKCk7Cisg
ICAgaWYgKCFuZXR3b3JrU2Vzc2lvbikgeworICAgICAgICBXVEZMb2dBbHdheXMoIkF0dGVtcHRl
ZCB0byBjcmVhdGUgYSBOZXR3b3JrTG9hZCB3aXRoIGEgc2Vzc2lvbiAoaWQ9JSIgUFJJdTY0ICIp
IHRoYXQgZG9lcyBub3QgZXhpc3QuIiwgc2Vzc2lvbklEKCkudG9VSW50NjQoKSk7CisgICAgICAg
IExPQURFUl9SRUxFQVNFX0xPR19FUlJPUigic3RhcnROZXR3b3JrTG9hZDogQXR0ZW1wdGVkIHRv
IGNyZWF0ZSBhIE5ldHdvcmtMb2FkIGZvciBhIHNlc3Npb24gdGhhdCBkb2VzIG5vdCBleGlzdCAo
c2Vzc2lvbklEPSUiIFBSSXU2NCAiKSIsIHNlc3Npb25JRCgpLnRvVUludDY0KCkpOworICAgICAg
ICBtX2Nvbm5lY3Rpb24tPm5ldHdvcmtQcm9jZXNzKCkubG9nRGlhZ25vc3RpY01lc3NhZ2UobV9w
YXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELCBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ0tleXM6
OmludGVybmFsRXJyb3JLZXkoKSwgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjppbnZh
bGlkU2Vzc2lvbklES2V5KCksIFdlYkNvcmU6OlNob3VsZFNhbXBsZTo6Tm8pOworICAgICAgICBk
aWRGYWlsTG9hZGluZyhpbnRlcm5hbEVycm9yKHJlcXVlc3QudXJsKCkpKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIGlmIChyZXF1ZXN0LnVybCgpLnByb3RvY29sSXNCbG9iKCkpCisg
ICAgICAgIHBhcmFtZXRlcnMuYmxvYkZpbGVSZWZlcmVuY2VzID0gbmV0d29ya1Nlc3Npb24tPmJs
b2JSZWdpc3RyeSgpLmZpbGVzSW5CbG9iKG9yaWdpbmFsUmVxdWVzdCgpLnVybCgpKTsKKworICAg
IGlmIChtX3BhcmFtZXRlcnMucGFnZUhhc1Jlc291cmNlTG9hZENsaWVudCkgeworICAgICAgICBz
dGQ6Om9wdGlvbmFsPElQQzo6Rm9ybURhdGFSZWZlcmVuY2U+IGh0dHBCb2R5OworICAgICAgICBp
ZiAoYXV0byogZm9ybURhdGEgPSByZXF1ZXN0Lmh0dHBCb2R5KCkpIHsKKyAgICAgICAgICAgIHN0
YXRpYyBjb25zdGV4cHIgYXV0byBtYXhTZXJpYWxpemVkUmVxdWVzdFNpemUgPSAxMDI0ICogMTAy
NDsKKyAgICAgICAgICAgIGlmIChmb3JtRGF0YS0+bGVuZ3RoSW5CeXRlcygpIDw9IG1heFNlcmlh
bGl6ZWRSZXF1ZXN0U2l6ZSkKKyAgICAgICAgICAgICAgICBodHRwQm9keSA9IElQQzo6Rm9ybURh
dGFSZWZlcmVuY2UgeyBmb3JtRGF0YSB9OworICAgICAgICB9CisgICAgICAgIG1fY29ubmVjdGlv
bi0+bmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3Nh
Z2VzOjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpSZXNvdXJjZUxvYWREaWRTZW5kUmVxdWVzdChtX3Bh
cmFtZXRlcnMud2ViUGFnZVByb3h5SUQsIHJlc291cmNlTG9hZEluZm8oKSwgcmVxdWVzdCwgaHR0
cEJvZHkpLCAwKTsKKyAgICB9CisKKyAgICBwYXJhbWV0ZXJzLnJlcXVlc3QgPSBXVEZNb3ZlKHJl
cXVlc3QpOworICAgIHBhcmFtZXRlcnMuaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9IG1f
cGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOworICAgIG1fbmV0d29ya0xv
YWQgPSBtYWtlVW5pcXVlPE5ldHdvcmtMb2FkPigqdGhpcywgJm5ldHdvcmtTZXNzaW9uLT5ibG9i
UmVnaXN0cnkoKSwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgKm5ldHdvcmtTZXNzaW9uKTsKKyAgICAK
KyAgICBpZiAoaXNTeW5jaHJvbm91cygpKQorICAgICAgICBtX25ldHdvcmtMb2FkLT5zdGFydCgp
OworICAgIGVsc2UKKyAgICAgICAgbV9uZXR3b3JrTG9hZC0+c3RhcnRXaXRoU2NoZWR1bGluZygp
OworCisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJzdGFydE5ldHdvcmtMb2FkOiBHb2luZyB0byB0
aGUgbmV0d29yayAoZGVzY3JpcHRpb249JSIgUFVCTElDX0xPR19TVFJJTkcgIikiLCBtX25ldHdv
cmtMb2FkLT5kZXNjcmlwdGlvbigpLnV0ZjgoKS5kYXRhKCkpOworfQorCitSZXNvdXJjZUxvYWRJ
bmZvIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6cmVzb3VyY2VMb2FkSW5mbygpCit7CisgICAgYXV0
byBsb2FkZWRGcm9tQ2FjaGUgPSBbXSAoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
IHsKKyAgICAgICAgc3dpdGNoIChyZXNwb25zZS5zb3VyY2UoKSkgeworICAgICAgICBjYXNlIFJl
c291cmNlUmVzcG9uc2U6OlNvdXJjZTo6RGlza0NhY2hlOgorICAgICAgICBjYXNlIFJlc291cmNl
UmVzcG9uc2U6OlNvdXJjZTo6RGlza0NhY2hlQWZ0ZXJWYWxpZGF0aW9uOgorICAgICAgICBjYXNl
IFJlc291cmNlUmVzcG9uc2U6OlNvdXJjZTo6TWVtb3J5Q2FjaGU6CisgICAgICAgIGNhc2UgUmVz
b3VyY2VSZXNwb25zZTo6U291cmNlOjpNZW1vcnlDYWNoZUFmdGVyVmFsaWRhdGlvbjoKKyAgICAg
ICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpTb3VyY2U6OkFwcGxpY2F0aW9uQ2FjaGU6CisgICAg
ICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6U291cmNlOjpET01DYWNoZToKKyAgICAgICAgICAg
IHJldHVybiB0cnVlOworICAgICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlNvdXJjZTo6VW5r
bm93bjoKKyAgICAgICAgY2FzZSBSZXNvdXJjZVJlc3BvbnNlOjpTb3VyY2U6Ok5ldHdvcms6Cisg
ICAgICAgIGNhc2UgUmVzb3VyY2VSZXNwb25zZTo6U291cmNlOjpTZXJ2aWNlV29ya2VyOgorICAg
ICAgICBjYXNlIFJlc291cmNlUmVzcG9uc2U6OlNvdXJjZTo6SW5zcGVjdG9yT3ZlcnJpZGU6Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
fTsKKworICAgIGF1dG8gcmVzb3VyY2VUeXBlID0gW10gKFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dEJhc2U6OlJlcXVlc3RlciByZXF1ZXN0ZXIsIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGlu
YXRpb24gZGVzdGluYXRpb24pIHsKKyAgICAgICAgc3dpdGNoIChyZXF1ZXN0ZXIpIHsKKyAgICAg
ICAgY2FzZSBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RCYXNlOjpSZXF1ZXN0ZXI6OlhIUjoKKyAg
ICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpYTUxIVFRQUmVxdWVzdDsK
KyAgICAgICAgY2FzZSBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RCYXNlOjpSZXF1ZXN0ZXI6OkZl
dGNoOgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6OkZldGNoOwor
ICAgICAgICBjYXNlIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJhc2U6OlJlcXVlc3Rlcjo6UGlu
ZzoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpQaW5nOworICAg
ICAgICBjYXNlIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJhc2U6OlJlcXVlc3Rlcjo6QmVhY29u
OgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6OkJlYWNvbjsKKyAg
ICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAg
c3dpdGNoIChkZXN0aW5hdGlvbikgeworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9u
czo6RGVzdGluYXRpb246OkVtcHR5U3RyaW5nOgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNl
TG9hZEluZm86OlR5cGU6Ok90aGVyOworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9u
czo6RGVzdGluYXRpb246OkF1ZGlvOgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZElu
Zm86OlR5cGU6Ok1lZGlhOworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVz
dGluYXRpb246OkF1ZGlvd29ya2xldDoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJ
bmZvOjpUeXBlOjpPdGhlcjsKKyAgICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRl
c3RpbmF0aW9uOjpEb2N1bWVudDoKKyAgICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6
OkRlc3RpbmF0aW9uOjpJZnJhbWU6CisgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VMb2FkSW5m
bzo6VHlwZTo6RG9jdW1lbnQ7CisgICAgICAgIGNhc2UgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpE
ZXN0aW5hdGlvbjo6RW1iZWQ6CisgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VMb2FkSW5mbzo6
VHlwZTo6T2JqZWN0OworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGlu
YXRpb246OkZvbnQ6CisgICAgICAgICAgICByZXR1cm4gUmVzb3VyY2VMb2FkSW5mbzo6VHlwZTo6
Rm9udDsKKyAgICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpJ
bWFnZToKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpJbWFnZTsK
KyAgICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpNYW5pZmVz
dDoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpBcHBsaWNhdGlv
bk1hbmlmZXN0OworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRp
b246Ok1vZGVsOgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6Ok1l
ZGlhOworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246Ok9i
amVjdDoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpPYmplY3Q7
CisgICAgICAgIGNhc2UgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6UGFpbnR3
b3JrbGV0OgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6Ok90aGVy
OworICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OlJlcG9y
dDoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpDU1BSZXBvcnQ7
CisgICAgICAgIGNhc2UgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6U2NyaXB0
OgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6OlNjcmlwdDsKKyAg
ICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpTZXJ2aWNld29y
a2VyOgorICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6Ok90aGVyOwor
ICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OlNoYXJlZHdv
cmtlcjoKKyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpPdGhlcjsK
KyAgICAgICAgY2FzZSBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpTdHlsZToK
KyAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpTdHlsZXNoZWV0Owor
ICAgICAgICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OlRyYWNrOgor
ICAgICAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6Ok1lZGlhOworICAgICAg
ICBjYXNlIFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OlZpZGVvOgorICAgICAg
ICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6Ok1lZGlhOworICAgICAgICBjYXNl
IFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OldvcmtlcjoKKyAgICAgICAgICAg
IHJldHVybiBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpPdGhlcjsKKyAgICAgICAgY2FzZSBXZWJD
b3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpYc2x0OgorICAgICAgICAgICAgcmV0dXJu
IFJlc291cmNlTG9hZEluZm86OlR5cGU6OlhTTFQ7CisgICAgICAgIH0KKworICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIFJlc291cmNlTG9hZEluZm86OlR5cGU6
Ok90aGVyOworICAgIH07CisKKyAgICByZXR1cm4gUmVzb3VyY2VMb2FkSW5mbyB7CisgICAgICAg
IG1fcmVzb3VyY2VMb2FkSUQsCisgICAgICAgIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELAorICAg
ICAgICBtX3BhcmFtZXRlcnMucGFyZW50RnJhbWVJRCwKKyAgICAgICAgb3JpZ2luYWxSZXF1ZXN0
KCkudXJsKCksCisgICAgICAgIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBNZXRob2QoKSwKKyAgICAg
ICAgV2FsbFRpbWU6Om5vdygpLAorICAgICAgICBsb2FkZWRGcm9tQ2FjaGUobV9yZXNwb25zZSks
CisgICAgICAgIHJlc291cmNlVHlwZShvcmlnaW5hbFJlcXVlc3QoKS5yZXF1ZXN0ZXIoKSwgbV9w
YXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pCisgICAgfTsKK30KKwordm9pZCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OmNsZWFudXAoTG9hZFJlc3VsdCByZXN1bHQpCit7CisgICAgQVNTRVJU
KFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coImNsZWFudXA6IChy
ZXN1bHQ9JXUpIiwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHJlc3VsdCkpOworCisgICAgTmV0d29y
a0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUgY29kZSB7IH07CisgICAgc3dpdGNoIChy
ZXN1bHQpIHsKKyAgICBjYXNlIExvYWRSZXN1bHQ6OlVua25vd246CisgICAgICAgIGNvZGUgPSBO
ZXR3b3JrQWN0aXZpdHlUcmFja2VyOjpDb21wbGV0aW9uQ29kZTo6VW5kZWZpbmVkOworICAgICAg
ICBicmVhazsKKyAgICBjYXNlIExvYWRSZXN1bHQ6OlN1Y2Nlc3M6CisgICAgICAgIGNvZGUgPSBO
ZXR3b3JrQWN0aXZpdHlUcmFja2VyOjpDb21wbGV0aW9uQ29kZTo6U3VjY2VzczsKKyAgICAgICAg
YnJlYWs7CisgICAgY2FzZSBMb2FkUmVzdWx0OjpGYWlsdXJlOgorICAgICAgICBjb2RlID0gTmV0
d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGU6OkZhaWx1cmU7CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgTG9hZFJlc3VsdDo6Q2FuY2VsOgorICAgICAgICBjb2RlID0gTmV0d29y
a0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGU6OkNhbmNlbDsKKyAgICAgICAgYnJlYWs7
CisgICAgfQorCisgICAgbV9jb25uZWN0aW9uLT5zdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQobV9w
YXJhbWV0ZXJzLmlkZW50aWZpZXIsIGNvZGUpOworCisgICAgbV9idWZmZXJpbmdUaW1lci5zdG9w
KCk7CisKKyAgICBpbnZhbGlkYXRlU2FuZGJveEV4dGVuc2lvbnMoKTsKKworICAgIG1fbmV0d29y
a0xvYWQgPSBudWxscHRyOworCisgICAgLy8gVGhpcyB3aWxsIGNhdXNlIE5ldHdvcmtSZXNvdXJj
ZUxvYWRlciB0byBiZSBkZXN0cm95ZWQgYW5kIHRoZXJlZm9yZSB3ZSBkbyBpdCBsYXN0LgorICAg
IG1fY29ubmVjdGlvbi0+ZGlkQ2xlYW51cFJlc291cmNlTG9hZGVyKCp0aGlzKTsKK30KKwordm9p
ZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmNvbnZlcnRUb0Rvd25sb2FkKERvd25sb2FkSUQgZG93
bmxvYWRJRCwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coImNvbnZlcnRUb0Rv
d25sb2FkOiAoZG93bmxvYWRJRD0lIiBQUkl1NjQgIiwgaGFzTmV0d29ya0xvYWQ9JWQsIGhhc1Jl
c3BvbnNlQ29tcGxldGlvbkhhbmRsZXI9JWQpIiwgZG93bmxvYWRJRC50b1VJbnQ2NCgpLCAhIW1f
bmV0d29ya0xvYWQsICEhbV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKTsKKworICAgIC8vIFRo
aXMgY2FuIGhhcHBlbiBpZiB0aGUgcmVzb3VyY2UgY2FtZSBmcm9tIHRoZSBkaXNrIGNhY2hlLgor
ICAgIGlmICghbV9uZXR3b3JrTG9hZCkgeworICAgICAgICBtX2Nvbm5lY3Rpb24tPm5ldHdvcmtQ
cm9jZXNzKCkuZG93bmxvYWRNYW5hZ2VyKCkuc3RhcnREb3dubG9hZChzZXNzaW9uSUQoKSwgZG93
bmxvYWRJRCwgcmVxdWVzdCwgbV9wYXJhbWV0ZXJzLmlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4pOworICAgICAgICBhYm9ydCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYg
KG1fcmVzcG9uc2VDb21wbGV0aW9uSGFuZGxlcikKKyAgICAgICAgbV9jb25uZWN0aW9uLT5uZXR3
b3JrUHJvY2VzcygpLmRvd25sb2FkTWFuYWdlcigpLmNvbnZlcnROZXR3b3JrTG9hZFRvRG93bmxv
YWQoZG93bmxvYWRJRCwgc3RkOjpleGNoYW5nZShtX25ldHdvcmtMb2FkLCBudWxscHRyKSwgV1RG
TW92ZShtX3Jlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIpLCBXVEZNb3ZlKG1fZmlsZVJlZmVyZW5j
ZXMpLCByZXF1ZXN0LCByZXNwb25zZSk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVy
OjphYm9ydCgpCit7CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJhYm9ydDogKGhhc05ldHdvcmtM
b2FkPSVkKSIsICEhbV9uZXR3b3JrTG9hZCk7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigp
KTsKKworICAgIGlmIChtX3BhcmFtZXRlcnMub3B0aW9ucy5rZWVwQWxpdmUgJiYgbV9yZXNwb25z
ZS5pc051bGwoKSAmJiAhbV9pc0tlcHRBbGl2ZSkgeworICAgICAgICBtX2lzS2VwdEFsaXZlID0g
dHJ1ZTsKKyAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJhYm9ydDogS2VlcGluZyBuZXR3b3Jr
IGxvYWQgYWxpdmUgZHVlIHRvIGtlZXBhbGl2ZSBvcHRpb24iKTsKKyAgICAgICAgbV9jb25uZWN0
aW9uLT50cmFuc2ZlcktlcHRBbGl2ZUxvYWQoKnRoaXMpOworICAgICAgICByZXR1cm47CisgICAg
fQorCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGlmIChhdXRvIHRhc2sgPSBXVEZN
b3ZlKG1fc2VydmljZVdvcmtlckZldGNoVGFzaykpIHsKKyAgICAgICAgTE9BREVSX1JFTEVBU0Vf
TE9HKCJhYm9ydDogQ2FuY2VsbGluZyBwZW5kaW5nIHNlcnZpY2Ugd29ya2VyIGZldGNoIHRhc2sg
KGZldGNoSWRlbnRpZmllcj0lIiBQUkl1NjQgIikiLCB0YXNrLT5mZXRjaElkZW50aWZpZXIoKS50
b1VJbnQ2NCgpKTsKKyAgICAgICAgdGFzay0+Y2FuY2VsRnJvbUNsaWVudCgpOworICAgIH0KKyNl
bmRpZgorCisgICAgaWYgKG1fbmV0d29ya0xvYWQpIHsKKyAgICAgICAgaWYgKGNhblVzZUNhY2hl
KG1fbmV0d29ya0xvYWQtPmN1cnJlbnRSZXF1ZXN0KCkpKSB7CisgICAgICAgICAgICAvLyBXZSBt
aWdodCBhbHJlYWR5IGhhdmUgdXNlZCBkYXRhIGZyb20gdGhpcyBpbmNvbXBsZXRlIGxvYWQuIEVu
c3VyZSBvbGRlciB2ZXJzaW9ucyBkb24ndCByZW1haW4gaW4gdGhlIGNhY2hlIGFmdGVyIGNhbmNl
bC4KKyAgICAgICAgICAgIGlmICghbV9yZXNwb25zZS5pc051bGwoKSkKKyAgICAgICAgICAgICAg
ICBtX2NhY2hlLT5yZW1vdmUobV9uZXR3b3JrTG9hZC0+Y3VycmVudFJlcXVlc3QoKSk7CisgICAg
ICAgIH0KKyAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJhYm9ydDogQ2FuY2VsbGluZyBuZXR3
b3JrIGxvYWQiKTsKKyAgICAgICAgbV9uZXR3b3JrTG9hZC0+Y2FuY2VsKCk7CisgICAgfQorCisg
ICAgY2xlYW51cChMb2FkUmVzdWx0OjpDYW5jZWwpOworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcjo6dHJhbnNmZXJUb05ld1dlYlByb2Nlc3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmIG5ld0Nvbm5lY3Rpb24sIFJlc291cmNlTG9hZElkZW50aWZpZXIgbmV3Q29yZUlkZW50
aWZpZXIpCit7CisgICAgbV9jb25uZWN0aW9uID0gbmV3Q29ubmVjdGlvbjsKKyAgICBtX3BhcmFt
ZXRlcnMuaWRlbnRpZmllciA9IG5ld0NvcmVJZGVudGlmaWVyOworCisjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQorICAgIEFTU0VSVChtX3Jlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXIgfHwgbV9j
YWNoZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlIHx8IG1fc2Vydmlj
ZVdvcmtlckZldGNoVGFzayk7CisjZWxzZQorICAgIEFTU0VSVChtX3Jlc3BvbnNlQ29tcGxldGlv
bkhhbmRsZXIgfHwgbV9jYWNoZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVjZWl2ZVJlc3Bv
bnNlKTsKKyNlbmRpZgorICAgIGJvb2wgd2lsbFdhaXRGb3JDb250aW51ZURpZFJlY2VpdmVSZXNw
b25zZSA9IHRydWU7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OkRpZFJl
Y2VpdmVSZXNwb25zZSB7IG1fcmVzcG9uc2UsIHdpbGxXYWl0Rm9yQ29udGludWVEaWRSZWNlaXZl
UmVzcG9uc2UgfSk7Cit9CisKK2Jvb2wgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpzaG91bGRJbnRl
cnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmIHhGcmFtZU9wdGlvbnMsIGNv
bnN0IFVSTCYgdXJsKQoreworICAgIGlmIChpc01haW5GcmFtZUxvYWQoKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgc3dpdGNoIChwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIoeEZyYW1l
T3B0aW9ucykpIHsKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6Tm9uZToKKyAg
ICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6QWxsb3dBbGw6CisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6RGVueToKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OlNhbWVP
cmlnaW46IHsKKyAgICAgICAgYXV0byBvcmlnaW4gPSBTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHVy
bCk7CisgICAgICAgIGF1dG8gdG9wRnJhbWVPcmlnaW4gPSBtX3BhcmFtZXRlcnMuZnJhbWVBbmNl
c3Rvck9yaWdpbnMubGFzdCgpOworICAgICAgICBpZiAoIW9yaWdpbi0+aXNTYW1lU2NoZW1lSG9z
dFBvcnQoKnRvcEZyYW1lT3JpZ2luKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAg
ICBmb3IgKGF1dG8mIGFuY2VzdG9yT3JpZ2luIDogbV9wYXJhbWV0ZXJzLmZyYW1lQW5jZXN0b3JP
cmlnaW5zKSB7CisgICAgICAgICAgICBpZiAoIW9yaWdpbi0+aXNTYW1lU2NoZW1lSG9zdFBvcnQo
KmFuY2VzdG9yT3JpZ2luKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAg
fQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rp
c3Bvc2l0aW9uOjpDb25mbGljdDogeworICAgICAgICBTdHJpbmcgZXJyb3JNZXNzYWdlID0gIk11
bHRpcGxlICdYLUZyYW1lLU9wdGlvbnMnIGhlYWRlcnMgd2l0aCBjb25mbGljdGluZyB2YWx1ZXMg
KCciICsgeEZyYW1lT3B0aW9ucyArICInKSBlbmNvdW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIgKyB1
cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiJy4gRmFsbGluZyBiYWNrIHRv
ICdERU5ZJy4iOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpBZGRDb25zb2xlTWVz
c2FnZSB7IG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELCAgTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3Nh
Z2VMZXZlbDo6RXJyb3IsIGVycm9yTWVzc2FnZSwgY29yZUlkZW50aWZpZXIoKSB9LCBtX3BhcmFt
ZXRlcnMud2ViUGFnZUlEKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICAgIGNhc2Ug
WEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpJbnZhbGlkOiB7CisgICAgICAgIFN0cmluZyBlcnJv
ck1lc3NhZ2UgPSAiSW52YWxpZCAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXIgZW5jb3VudGVyZWQg
d2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsg
Iic6ICciICsgeEZyYW1lT3B0aW9ucyArICInIGlzIG5vdCBhIHJlY29nbml6ZWQgZGlyZWN0aXZl
LiBUaGUgaGVhZGVyIHdpbGwgYmUgaWdub3JlZC4iOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpBZGRDb25zb2xlTWVzc2FnZSB7IG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELCAgTWVz
c2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIGVycm9yTWVzc2FnZSwgY29yZUlk
ZW50aWZpZXIoKSB9LCBtX3BhcmFtZXRlcnMud2ViUGFnZUlEKTsKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIH0KKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJu
IGZhbHNlOworfQorCitib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0
TG9hZEZvckNTUEZyYW1lQW5jZXN0b3JzT3JYRnJhbWVPcHRpb25zKGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlKQoreworICAgIEFTU0VSVChpc01haW5SZXNvdXJjZSgpKTsKKworI2lm
IFVTRShRVUlDS19MT09LKQorICAgIGlmIChQcmV2aWV3Q29udmVydGVyOjpzdXBwb3J0c01JTUVU
eXBlKHJlc3BvbnNlLm1pbWVUeXBlKCkpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYK
KworICAgIGF1dG8gdXJsID0gcmVzcG9uc2UudXJsKCk7CisgICAgQ29udGVudFNlY3VyaXR5UG9s
aWN5IGNvbnRlbnRTZWN1cml0eVBvbGljeSB7IFVSTCB7IHVybCB9LCB0aGlzIH07CisgICAgY29u
dGVudFNlY3VyaXR5UG9saWN5LmRpZFJlY2VpdmVIZWFkZXJzKENvbnRlbnRTZWN1cml0eVBvbGlj
eVJlc3BvbnNlSGVhZGVycyB7IHJlc3BvbnNlIH0sIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBSZWZl
cnJlcigpKTsKKyAgICBpZiAoIWNvbnRlbnRTZWN1cml0eVBvbGljeS5hbGxvd0ZyYW1lQW5jZXN0
b3JzKG1fcGFyYW1ldGVycy5mcmFtZUFuY2VzdG9yT3JpZ2lucywgdXJsKSkKKyAgICAgICAgcmV0
dXJuIHRydWU7CisKKyAgICBpZiAoIWNvbnRlbnRTZWN1cml0eVBvbGljeS5vdmVycmlkZXNYRnJh
bWVPcHRpb25zKCkpIHsKKyAgICAgICAgU3RyaW5nIHhGcmFtZU9wdGlvbnMgPSBtX3Jlc3BvbnNl
Lmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6WEZyYW1lT3B0aW9ucyk7CisgICAgICAg
IGlmICgheEZyYW1lT3B0aW9ucy5pc051bGwoKSAmJiBzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZy
YW1lT3B0aW9ucyh4RnJhbWVPcHRpb25zLCByZXNwb25zZS51cmwoKSkpIHsKKyAgICAgICAgICAg
IFN0cmluZyBlcnJvck1lc3NhZ2UgPSBtYWtlU3RyaW5nKCJSZWZ1c2VkIHRvIGRpc3BsYXkgJyIs
IHJlc3BvbnNlLnVybCgpLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpLCAiJyBpbiBh
IGZyYW1lIGJlY2F1c2UgaXQgc2V0ICdYLUZyYW1lLU9wdGlvbnMnIHRvICciLCB4RnJhbWVPcHRp
b25zLCAiJy4iKTsKKyAgICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkFkZENvbnNv
bGVNZXNzYWdlIHsgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQsICBNZXNzYWdlU291cmNlOjpTZWN1
cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgZXJyb3JNZXNzYWdlLCBjb3JlSWRlbnRpZmllcigp
IH0sIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQpOworICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gc2hvdWxkSW50ZXJydXB0TmF2aWdhdGlvbkZv
ckNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kobV9yZXNwb25zZSk7Cit9CisKK2Jvb2wgTmV0d29y
a1Jlc291cmNlTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHROYXZpZ2F0aW9uRm9yQ3Jvc3NPcmlnaW5F
bWJlZGRlclBvbGljeShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBB
U1NFUlQoaXNNYWluUmVzb3VyY2UoKSk7CisKKyAgICAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0
d2cub3JnL211bHRpcGFnZS9vcmlnaW4uaHRtbCNjaGVjay1hLW5hdmlnYXRpb24tcmVzcG9uc2Un
cy1hZGhlcmVuY2UtdG8taXRzLWVtYmVkZGVyLXBvbGljeQorICAgIGlmIChtX3BhcmFtZXRlcnMu
cGFyZW50Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS52YWx1ZSA9PSBXZWJDb3JlOjpDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5VmFsdWU6OlJlcXVpcmVDT1JQIHx8IG1fcGFyYW1ldGVycy5wYXJl
bnRDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LnJlcG9ydE9ubHlWYWx1ZSA9PSBXZWJDb3JlOjpD
cm9zc09yaWdpbkVtYmVkZGVyUG9saWN5VmFsdWU6OlJlcXVpcmVDT1JQKSB7CisgICAgICAgIGF1
dG8gcmVzcG9uc2VDT0VQID0gV2ViQ29yZTo6b2J0YWluQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGlj
eShyZXNwb25zZSwgbnVsbHB0cik7CisgICAgICAgIGlmIChtX3BhcmFtZXRlcnMucGFyZW50Q3Jv
c3NPcmlnaW5FbWJlZGRlclBvbGljeS5yZXBvcnRPbmx5VmFsdWUgPT0gV2ViQ29yZTo6Q3Jvc3NP
cmlnaW5FbWJlZGRlclBvbGljeVZhbHVlOjpSZXF1aXJlQ09SUCAmJiByZXNwb25zZUNPRVAudmFs
dWUgIT0gV2ViQ29yZTo6Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeVZhbHVlOjpSZXF1aXJlQ09S
UCkgeworICAgICAgICAgICAgaWYgKGF1dG8gcGFyZW50T3JpZ2luID0gbV9wYXJhbWV0ZXJzLnBh
cmVudE9yaWdpbigpOyBwYXJlbnRPcmlnaW4gJiYgIW1fcGFyYW1ldGVycy5wYXJlbnRDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5LnJlcG9ydE9ubHlSZXBvcnRpbmdFbmRwb2ludC5pc0VtcHR5KCkp
CisgICAgICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2VuZENPRVBQb2xpY3lJ
bmhlcml0ZW5jZVZpb2xhdGlvbiB7IG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELCBwYXJlbnRPcmln
aW4tPmRhdGEoKSwgbV9wYXJhbWV0ZXJzLnBhcmVudENyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3ku
cmVwb3J0T25seVJlcG9ydGluZ0VuZHBvaW50LCBDT0VQRGlzcG9zaXRpb246OlJlcG9ydGluZywg
Im5hdmlnYXRpb24iX3MsIG1fZmlyc3RSZXNwb25zZVVSTCB9LCBtX3BhcmFtZXRlcnMud2ViUGFn
ZUlEKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChtX3BhcmFtZXRlcnMucGFyZW50Q3Jvc3NP
cmlnaW5FbWJlZGRlclBvbGljeS52YWx1ZSAhPSBXZWJDb3JlOjpDcm9zc09yaWdpbkVtYmVkZGVy
UG9saWN5VmFsdWU6OlVuc2FmZU5vbmUgJiYgcmVzcG9uc2VDT0VQLnZhbHVlICE9IFdlYkNvcmU6
OkNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3lWYWx1ZTo6UmVxdWlyZUNPUlApIHsKKyAgICAgICAg
ICAgIFN0cmluZyBlcnJvck1lc3NhZ2UgPSBtYWtlU3RyaW5nKCJSZWZ1c2VkIHRvIGRpc3BsYXkg
JyIsIHJlc3BvbnNlLnVybCgpLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpLCAiJyBp
biBhIGZyYW1lIGJlY2F1c2Ugb2YgQ3Jvc3MtT3JpZ2luLUVtYmVkZGVyLVBvbGljeS4iKTsKKyAg
ICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkFkZENvbnNvbGVNZXNzYWdlIHsgbV9w
YXJhbWV0ZXJzLndlYkZyYW1lSUQsICBNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxl
dmVsOjpFcnJvciwgZXJyb3JNZXNzYWdlLCBjb3JlSWRlbnRpZmllcigpIH0sIG1fcGFyYW1ldGVy
cy53ZWJQYWdlSUQpOworICAgICAgICAgICAgaWYgKGF1dG8gcGFyZW50T3JpZ2luID0gbV9wYXJh
bWV0ZXJzLnBhcmVudE9yaWdpbigpOyBwYXJlbnRPcmlnaW4gJiYgIW1fcGFyYW1ldGVycy5wYXJl
bnRDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LnJlcG9ydGluZ0VuZHBvaW50LmlzRW1wdHkoKSkK
KyAgICAgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZW5kQ09FUFBvbGljeUlu
aGVyaXRlbmNlVmlvbGF0aW9uIHsgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQsIHBhcmVudE9yaWdp
bi0+ZGF0YSgpLCBtX3BhcmFtZXRlcnMucGFyZW50Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5y
ZXBvcnRpbmdFbmRwb2ludCwgQ09FUERpc3Bvc2l0aW9uOjpFbmZvcmNlLCAibmF2aWdhdGlvbiJf
cywgbV9maXJzdFJlc3BvbnNlVVJMIH0sIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQpOworICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gZmFsc2U7
Cit9CisKKy8vIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL29yaWdpbi5o
dG1sI2NoZWNrLWEtZ2xvYmFsLW9iamVjdCdzLWVtYmVkZGVyLXBvbGljeQorYm9vbCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdFdvcmtlckxvYWRGb3JDcm9zc09yaWdpbkVt
YmVkZGVyUG9saWN5KGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoreworICAgIGlm
IChtX3BhcmFtZXRlcnMub3B0aW9ucy5kZXN0aW5hdGlvbiAhPSBGZXRjaE9wdGlvbnM6OkRlc3Rp
bmF0aW9uOjpXb3JrZXIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChtX3BhcmFt
ZXRlcnMuY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS52YWx1ZSA9PSBXZWJDb3JlOjpDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5VmFsdWU6OlJlcXVpcmVDT1JQIHx8IG1fcGFyYW1ldGVycy5jcm9z
c09yaWdpbkVtYmVkZGVyUG9saWN5LnJlcG9ydE9ubHlWYWx1ZSA9PSBXZWJDb3JlOjpDcm9zc09y
aWdpbkVtYmVkZGVyUG9saWN5VmFsdWU6OlJlcXVpcmVDT1JQKSB7CisgICAgICAgIGF1dG8gcmVz
cG9uc2VDT0VQID0gV2ViQ29yZTo6b2J0YWluQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeShyZXNw
b25zZSwgbnVsbHB0cik7CisgICAgICAgIGlmIChtX3BhcmFtZXRlcnMuY3Jvc3NPcmlnaW5FbWJl
ZGRlclBvbGljeS5yZXBvcnRPbmx5VmFsdWUgPT0gV2ViQ29yZTo6Q3Jvc3NPcmlnaW5FbWJlZGRl
clBvbGljeVZhbHVlOjpSZXF1aXJlQ09SUCAmJiByZXNwb25zZUNPRVAudmFsdWUgPT0gV2ViQ29y
ZTo6Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeVZhbHVlOjpVbnNhZmVOb25lKSB7CisgICAgICAg
ICAgICBpZiAobV9wYXJhbWV0ZXJzLnNvdXJjZU9yaWdpbiAmJiAhbV9wYXJhbWV0ZXJzLmNyb3Nz
T3JpZ2luRW1iZWRkZXJQb2xpY3kucmVwb3J0T25seVJlcG9ydGluZ0VuZHBvaW50LmlzRW1wdHko
KSkKKyAgICAgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZW5kQ09FUFBvbGlj
eUluaGVyaXRlbmNlVmlvbGF0aW9uIHsgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQsIG1fcGFyYW1l
dGVycy5zb3VyY2VPcmlnaW4tPmRhdGEoKSwgbV9wYXJhbWV0ZXJzLmNyb3NzT3JpZ2luRW1iZWRk
ZXJQb2xpY3kucmVwb3J0T25seVJlcG9ydGluZ0VuZHBvaW50LCBDT0VQRGlzcG9zaXRpb246OlJl
cG9ydGluZywgIndvcmtlciBpbml0aWFsaXphdGlvbiJfcywgbV9maXJzdFJlc3BvbnNlVVJMIH0s
IG1fcGFyYW1ldGVycy53ZWJQYWdlSUQpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG1fcGFy
YW1ldGVycy5jcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LnZhbHVlID09IFdlYkNvcmU6OkNyb3Nz
T3JpZ2luRW1iZWRkZXJQb2xpY3lWYWx1ZTo6UmVxdWlyZUNPUlAgJiYgcmVzcG9uc2VDT0VQLnZh
bHVlID09IFdlYkNvcmU6OkNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3lWYWx1ZTo6VW5zYWZlTm9u
ZSkgeworICAgICAgICAgICAgU3RyaW5nIGVycm9yTWVzc2FnZSA9IG1ha2VTdHJpbmcoIlJlZnVz
ZWQgdG8gbG9hZCAnIiwgcmVzcG9uc2UudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVu
Z3RoKCksICInIHdvcmtlciBiZWNhdXNlIG9mIENyb3NzLU9yaWdpbi1FbWJlZGRlci1Qb2xpY3ku
Iik7CisgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpBZGRDb25zb2xlTWVzc2Fn
ZSB7IG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELCAgTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1l
c3NhZ2VMZXZlbDo6RXJyb3IsIGVycm9yTWVzc2FnZSwgY29yZUlkZW50aWZpZXIoKSB9LCBtX3Bh
cmFtZXRlcnMud2ViUGFnZUlEKTsKKyAgICAgICAgICAgIGlmIChtX3BhcmFtZXRlcnMuc291cmNl
T3JpZ2luICYmICFtX3BhcmFtZXRlcnMuY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5yZXBvcnRp
bmdFbmRwb2ludC5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6U2VuZENPRVBQb2xpY3lJbmhlcml0ZW5jZVZpb2xhdGlvbiB7IG1fcGFyYW1ldGVycy53
ZWJGcmFtZUlELCBtX3BhcmFtZXRlcnMuc291cmNlT3JpZ2luLT5kYXRhKCksIG1fcGFyYW1ldGVy
cy5jcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LnJlcG9ydGluZ0VuZHBvaW50LCBDT0VQRGlzcG9z
aXRpb246OkVuZm9yY2UsICJ3b3JrZXIgaW5pdGlhbGl6YXRpb24iX3MsIG1fZmlyc3RSZXNwb25z
ZVVSTCB9LCBtX3BhcmFtZXRlcnMud2ViUGFnZUlEKTsKKyAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIGZhbHNlOworfQorCit2b2lkIE5ldHdv
cmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlUmVzcG9uc2UmJiBy
ZWNlaXZlZFJlc3BvbnNlLCBSZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJkaWRSZWNlaXZlUmVzcG9uc2U6ICho
dHRwU3RhdHVzQ29kZT0lZCwgTUlNRVR5cGU9JSIgUFVCTElDX0xPR19TVFJJTkcgIiwgZXhwZWN0
ZWRDb250ZW50TGVuZ3RoPSUiIFBSSWQ2NCAiLCBoYXNDYWNoZWRFbnRyeUZvclZhbGlkYXRpb249
JWQsIGhhc05ldHdvcmtMb2FkQ2hlY2tlcj0lZCkiLCByZWNlaXZlZFJlc3BvbnNlLmh0dHBTdGF0
dXNDb2RlKCksIHJlY2VpdmVkUmVzcG9uc2UubWltZVR5cGUoKS51dGY4KCkuZGF0YSgpLCByZWNl
aXZlZFJlc3BvbnNlLmV4cGVjdGVkQ29udGVudExlbmd0aCgpLCAhIW1fY2FjaGVFbnRyeUZvclZh
bGlkYXRpb24sICEhbV9uZXR3b3JrTG9hZENoZWNrZXIpOworCisgICAgaWYgKGlzTWFpblJlc291
cmNlKCkpCisgICAgICAgIGRpZFJlY2VpdmVNYWluUmVzb3VyY2VSZXNwb25zZShyZWNlaXZlZFJl
c3BvbnNlKTsKKworICAgIG1fcmVzcG9uc2UgPSBXVEZNb3ZlKHJlY2VpdmVkUmVzcG9uc2UpOwor
ICAgIGlmICghbV9maXJzdFJlc3BvbnNlVVJMLmlzVmFsaWQoKSkKKyAgICAgICAgbV9maXJzdFJl
c3BvbnNlVVJMID0gbV9yZXNwb25zZS51cmwoKTsKKworICAgIGlmIChzaG91bGRDYXB0dXJlRXh0
cmFOZXR3b3JrTG9hZE1ldHJpY3MoKSAmJiBtX25ldHdvcmtMb2FkQ2hlY2tlcikgeworICAgICAg
ICBhdXRvIGluZm9ybWF0aW9uID0gbV9uZXR3b3JrTG9hZENoZWNrZXItPnRha2VOZXR3b3JrTG9h
ZEluZm9ybWF0aW9uKCk7CisgICAgICAgIGluZm9ybWF0aW9uLnJlc3BvbnNlID0gbV9yZXNwb25z
ZTsKKyAgICAgICAgbV9jb25uZWN0aW9uLT5hZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKGNvcmVJ
ZGVudGlmaWVyKCksIFdURk1vdmUoaW5mb3JtYXRpb24pKTsKKyAgICB9CisKKyAgICBhdXRvIHJl
c291cmNlTG9hZEluZm8gPSB0aGlzLT5yZXNvdXJjZUxvYWRJbmZvKCk7CisKKyAgICBhdXRvIGlz
RmV0Y2hPclhIUiA9IFtdIChjb25zdCBSZXNvdXJjZUxvYWRJbmZvJiBpbmZvKSB7CisgICAgICAg
IHJldHVybiBpbmZvLnR5cGUgPT0gUmVzb3VyY2VMb2FkSW5mbzo6VHlwZTo6RmV0Y2gKKyAgICAg
ICAgICAgIHx8IGluZm8udHlwZSA9PSBSZXNvdXJjZUxvYWRJbmZvOjpUeXBlOjpYTUxIVFRQUmVx
dWVzdDsKKyAgICB9OworCisgICAgYXV0byBpc01lZGlhTUlNRVR5cGUgPSBbXSAoY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSkgeworICAgICAgICByZXR1cm4gbWltZVR5cGUuc3RhcnRzV2l0aElnbm9y
aW5nQVNDSUlDYXNlKCJhdWRpby8iKQorICAgICAgICAgICAgfHwgbWltZVR5cGUuc3RhcnRzV2l0
aElnbm9yaW5nQVNDSUlDYXNlKCJ2aWRlby8iKQorICAgICAgICAgICAgfHwgZXF1YWxMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2UobWltZVR5cGUsICJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iKTsK
KyAgICB9OworCisgICAgaWYgKCFtX2J1ZmZlcmVkRGF0YQorICAgICAgICAmJiBtX3Jlc3BvbnNl
LmV4cGVjdGVkQ29udGVudExlbmd0aCgpID4gc3RhdGljX2Nhc3Q8bG9uZyBsb25nPigxICogTUIp
CisgICAgICAgICYmIGlzRmV0Y2hPclhIUihyZXNvdXJjZUxvYWRJbmZvKQorICAgICAgICAmJiBp
c01lZGlhTUlNRVR5cGUobV9yZXNwb25zZS5taW1lVHlwZSgpKSkgeworICAgICAgICBtX2J1ZmZl
cmVkRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisgICAgICAgIG1fcGFyYW1ldGVycy5t
YXhpbXVtQnVmZmVyaW5nVGltZSA9IFdlYkxvYWRlclN0cmF0ZWd5OjptZWRpYU1heGltdW1CdWZm
ZXJpbmdUaW1lOworICAgIH0KKworICAgIC8vIEZvciBtdWx0aXBhcnQveC1taXhlZC1yZXBsYWNl
IGRpZFJlY2VpdmVSZXNwb25zZUFzeW5jIGdldHMgY2FsbGVkIG11bHRpcGxlIHRpbWVzIGFuZCBi
dWZmZXJpbmcgd291bGQgcmVxdWlyZSBzcGVjaWFsIGhhbmRsaW5nLgorICAgIGlmICghaXNTeW5j
aHJvbm91cygpICYmIG1fcmVzcG9uc2UuaXNNdWx0aXBhcnQoKSkKKyAgICAgICAgbV9idWZmZXJl
ZERhdGEgPSBudWxscHRyOworCisgICAgaWYgKG1fcmVzcG9uc2UuaXNNdWx0aXBhcnQoKSkKKyAg
ICAgICAgbV9idWZmZXJlZERhdGFGb3JDYWNoZSA9IG51bGxwdHI7CisKKyAgICBpZiAobV9jYWNo
ZUVudHJ5Rm9yVmFsaWRhdGlvbikgeworICAgICAgICBib29sIHZhbGlkYXRpb25TdWNjZWVkZWQg
PSBtX3Jlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA0OyAvLyAzMDQgTm90IE1vZGlmaWVk
CisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygiZGlkUmVjZWl2ZVJlc3BvbnNlOiBSZWNlaXZl
ZCByZXZhbGlkYXRpb24gcmVzcG9uc2UgKHZhbGlkYXRpb25TdWNjZWVkZWQ9JWQsIHdhc09yaWdp
bmFsUmVxdWVzdENvbmRpdGlvbmFsPSVkKSIsIHZhbGlkYXRpb25TdWNjZWVkZWQsIG9yaWdpbmFs
UmVxdWVzdCgpLmlzQ29uZGl0aW9uYWwoKSk7CisgICAgICAgIGlmICh2YWxpZGF0aW9uU3VjY2Vl
ZGVkKSB7CisgICAgICAgICAgICBtX2NhY2hlRW50cnlGb3JWYWxpZGF0aW9uID0gbV9jYWNoZS0+
dXBkYXRlKG9yaWdpbmFsUmVxdWVzdCgpLCAqbV9jYWNoZUVudHJ5Rm9yVmFsaWRhdGlvbiwgbV9y
ZXNwb25zZSk7CisgICAgICAgICAgICAvLyBJZiB0aGUgcmVxdWVzdCB3YXMgY29uZGl0aW9uYWwg
dGhlbiB0aGlzIHJldmFsaWRhdGlvbiB3YXMgbm90IHRyaWdnZXJlZCBieSB0aGUgbmV0d29yayBj
YWNoZSBhbmQgd2UgcGFzcyB0aGUgMzA0IHJlc3BvbnNlIHRvIFdlYkNvcmUuCisgICAgICAgICAg
ICBpZiAob3JpZ2luYWxSZXF1ZXN0KCkuaXNDb25kaXRpb25hbCgpKQorICAgICAgICAgICAgICAg
IG1fY2FjaGVFbnRyeUZvclZhbGlkYXRpb24gPSBudWxscHRyOworICAgICAgICB9IGVsc2UKKyAg
ICAgICAgICAgIG1fY2FjaGVFbnRyeUZvclZhbGlkYXRpb24gPSBudWxscHRyOworICAgIH0KKyAg
ICBpZiAobV9jYWNoZUVudHJ5Rm9yVmFsaWRhdGlvbikKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKFBvbGljeUFjdGlvbjo6VXNlKTsKKworICAgIGlmIChtX25ldHdvcmtMb2FkQ2hl
Y2tlcikgeworICAgICAgICBhdXRvIGVycm9yID0gbV9uZXR3b3JrTG9hZENoZWNrZXItPnZhbGlk
YXRlUmVzcG9uc2UobV9uZXR3b3JrTG9hZCA/IG1fbmV0d29ya0xvYWQtPmN1cnJlbnRSZXF1ZXN0
KCkgOiBvcmlnaW5hbFJlcXVlc3QoKSwgbV9yZXNwb25zZSk7CisgICAgICAgIGlmICghZXJyb3Iu
aXNOdWxsKCkpIHsKKyAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xPR19FUlJPUigiZGlkUmVj
ZWl2ZVJlc3BvbnNlOiBOZXR3b3JrTG9hZENoZWNrZXI6OnZhbGlkYXRlUmVzcG9uc2UgcmV0dXJu
ZWQgYW4gZXJyb3IgKGVycm9yLmRvbWFpbj0lIiBQVUJMSUNfTE9HX1NUUklORyAiLCBlcnJvci5j
b2RlPSVkKSIsIGVycm9yLmRvbWFpbigpLnV0ZjgoKS5kYXRhKCksIGVycm9yLmVycm9yQ29kZSgp
KTsKKyAgICAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbcHJvdGVjdGVkVGhpcyA9
IG1ha2VSZWYoKnRoaXMpLCBlcnJvciA9IFdURk1vdmUoZXJyb3IpXSB7CisgICAgICAgICAgICAg
ICAgaWYgKHByb3RlY3RlZFRoaXMtPm1fbmV0d29ya0xvYWQpCisgICAgICAgICAgICAgICAgICAg
IHByb3RlY3RlZFRoaXMtPmRpZEZhaWxMb2FkaW5nKGVycm9yKTsKKyAgICAgICAgICAgIH0pOwor
ICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKFBvbGljeUFjdGlvbjo6SWdub3Jl
KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChpc01haW5SZXNvdXJjZSgpICYmIHNob3Vs
ZEludGVycnVwdExvYWRGb3JDU1BGcmFtZUFuY2VzdG9yc09yWEZyYW1lT3B0aW9ucyhtX3Jlc3Bv
bnNlKSkgeworICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoImRpZFJlY2VpdmVSZXNw
b25zZTogSW50ZXJydXB0aW5nIG1haW4gcmVzb3VyY2UgbG9hZCBkdWUgdG8gQ1NQIGZyYW1lLWFu
Y2VzdG9ycyBvciBYLUZyYW1lLU9wdGlvbnMiKTsKKyAgICAgICAgYXV0byByZXNwb25zZSA9IHNh
bml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291cmNlUmVzcG9uc2UgeyBtX3Jlc3BvbnNlIH0s
IFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2FmZSk7Cisg
ICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjpTdG9wTG9hZGluZ0FmdGVy
WEZyYW1lT3B0aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkIHsgcmVzcG9uc2UgfSk7
CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihQb2xpY3lBY3Rpb246Oklnbm9yZSk7
CisgICAgfQorCisgICAgLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uv
b3JpZ2luLmh0bWwjY2hlY2stYS1nbG9iYWwtb2JqZWN0J3MtZW1iZWRkZXItcG9saWN5CisgICAg
aWYgKHNob3VsZEludGVycnVwdFdvcmtlckxvYWRGb3JDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5
KG1fcmVzcG9uc2UpKSB7CisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPR19FUlJPUigiZGlkUmVj
ZWl2ZVJlc3BvbnNlOiBJbnRlcnJ1cHRpbmcgd29ya2VyIGxvYWQgZHVlIHRvIENyb3NzLU9yaWdp
bi1PcGVuZXItUG9saWN5Iik7CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB1cmwgPSBtX3Jlc3BvbnNlLnVybCgpXSB7Cisg
ICAgICAgICAgICBpZiAocHJvdGVjdGVkVGhpcy0+bV9uZXR3b3JrTG9hZCkKKyAgICAgICAgICAg
ICAgICBwcm90ZWN0ZWRUaGlzLT5kaWRGYWlsTG9hZGluZyhSZXNvdXJjZUVycm9yIHsgZXJyb3JE
b21haW5XZWJLaXRJbnRlcm5hbCwgMCwgdXJsLCAiV29ya2VyIGxvYWQgd2FzIGJsb2NrZWQgYnkg
Q3Jvc3MtT3JpZ2luLUVtYmVkZGVyLVBvbGljeSJfcywgUmVzb3VyY2VFcnJvcjo6VHlwZTo6QWNj
ZXNzQ29udHJvbCB9KTsKKyAgICAgICAgfSk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFu
ZGxlcihQb2xpY3lBY3Rpb246Oklnbm9yZSk7CisgICAgfQorCisgICAgYXV0byByZXNwb25zZSA9
IHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFJlc291cmNlUmVzcG9uc2UgeyBtX3Jlc3BvbnNl
IH0sIFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGU6OkNyb3NzT3JpZ2luU2FmZSk7
CisgICAgaWYgKGlzU3luY2hyb25vdXMoKSkgeworICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0co
ImRpZFJlY2VpdmVSZXNwb25zZTogVXNpbmcgcmVzcG9uc2UgZm9yIHN5bmNocm9ub3VzIGxvYWQi
KTsKKyAgICAgICAgbV9zeW5jaHJvbm91c0xvYWREYXRhLT5yZXNwb25zZSA9IFdURk1vdmUocmVz
cG9uc2UpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpV
c2UpOworICAgIH0KKworICAgIGlmIChpc0Nyb3NzT3JpZ2luUHJlZmV0Y2goKSkgeworICAgICAg
ICBMT0FERVJfUkVMRUFTRV9MT0coImRpZFJlY2VpdmVSZXNwb25zZTogVXNpbmcgcmVzcG9uc2Ug
Zm9yIGNyb3NzLW9yaWdpbiBwcmVmZXRjaCIpOworICAgICAgICBpZiAocmVzcG9uc2UuaHR0cEhl
YWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpWYXJ5KS5jb250YWlucygiQ29va2llIikpIHsKKyAg
ICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygiZGlkUmVjZWl2ZVJlc3BvbnNlOiBDYW5jZWxp
bmcgY3Jvc3Mtb3JpZ2luIHByZWZldGNoIGZvciBWYXJ5OiBDb29raWUiKTsKKyAgICAgICAgICAg
IGFib3J0KCk7CisgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0
aW9uOjpJZ25vcmUpOworICAgICAgICB9CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxl
cihQb2xpY3lBY3Rpb246OlVzZSk7CisgICAgfQorCisgICAgLy8gV2Ugd2FpdCB0byByZWNlaXZl
IG1lc3NhZ2UgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpDb250aW51ZURpZFJlY2VpdmVSZXNwb25z
ZSBiZWZvcmUgY29udGludWluZyBhIGxvYWQgZm9yCisgICAgLy8gYSBtYWluIHJlc291cmNlIGJl
Y2F1c2UgdGhlIGVtYmVkZGluZyBjbGllbnQgbXVzdCBkZWNpZGUgd2hldGhlciB0byBhbGxvdyB0
aGUgbG9hZC4KKyAgICBib29sIHdpbGxXYWl0Rm9yQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2Ug
PSBpc01haW5SZXNvdXJjZSgpOworICAgIExPQURFUl9SRUxFQVNFX0xPRygiZGlkUmVjZWl2ZVJl
c3BvbnNlOiBTZW5kaW5nIFdlYlJlc291cmNlTG9hZGVyOjpEaWRSZWNlaXZlUmVzcG9uc2UgSVBD
ICh3aWxsV2FpdEZvckNvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlPSVkKSIsIHdpbGxXYWl0Rm9y
Q29udGludWVEaWRSZWNlaXZlUmVzcG9uc2UpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlJlc291
cmNlTG9hZGVyOjpEaWRSZWNlaXZlUmVzcG9uc2UgeyByZXNwb25zZSwgd2lsbFdhaXRGb3JDb250
aW51ZURpZFJlY2VpdmVSZXNwb25zZSB9KTsKKworICAgIGlmIChtX3BhcmFtZXRlcnMucGFnZUhh
c1Jlc291cmNlTG9hZENsaWVudCkKKyAgICAgICAgbV9jb25uZWN0aW9uLT5uZXR3b3JrUHJvY2Vz
cygpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9j
ZXNzUHJveHk6OlJlc291cmNlTG9hZERpZFJlY2VpdmVSZXNwb25zZShtX3BhcmFtZXRlcnMud2Vi
UGFnZVByb3h5SUQsIHJlc291cmNlTG9hZEluZm8sIHJlc3BvbnNlKSwgMCk7CisKKyAgICBpZiAo
d2lsbFdhaXRGb3JDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSkgeworICAgICAgICBtX3Jlc3Bv
bnNlQ29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX2lzS2VwdEFsaXZlKSB7CisgICAgICAgIExP
QURFUl9SRUxFQVNFX0xPRygiZGlkUmVjZWl2ZVJlc3BvbnNlOiBJZ25vcmluZyByZXNwb25zZSBi
ZWNhdXNlIG9mIGtlZXBhbGl2ZSBvcHRpb24iKTsKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25I
YW5kbGVyKFBvbGljeUFjdGlvbjo6SWdub3JlKTsKKyAgICB9CisKKyAgICBMT0FERVJfUkVMRUFT
RV9MT0coImRpZFJlY2VpdmVSZXNwb25zZTogVXNpbmcgcmVzcG9uc2UiKTsKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihQb2xpY3lBY3Rpb246OlVzZSk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlQnVmZmVyKFJlZjxTaGFyZWRCdWZmZXI+JiYgYnVmZmVyLCBpbnQg
cmVwb3J0ZWRFbmNvZGVkRGF0YUxlbmd0aCkKK3sKKyAgICBpZiAoIW1fbnVtQnl0ZXNSZWNlaXZl
ZCkKKyAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJkaWRSZWNlaXZlQnVmZmVyOiBTdGFydGVk
IHJlY2VpdmluZyBkYXRhIChyZXBvcnRlZEVuY29kZWREYXRhTGVuZ3RoPSVkKSIsIHJlcG9ydGVk
RW5jb2RlZERhdGFMZW5ndGgpOworICAgIG1fbnVtQnl0ZXNSZWNlaXZlZCArPSBidWZmZXItPnNp
emUoKTsKKworICAgIEFTU0VSVCghbV9jYWNoZUVudHJ5Rm9yVmFsaWRhdGlvbik7CisKKyAgICBp
ZiAobV9idWZmZXJlZERhdGFGb3JDYWNoZSkgeworICAgICAgICAvLyBQcmV2ZW50IG1lbW9yeSBn
cm93dGggaW4gY2FzZSBvZiBzdHJlYW1pbmcgZGF0YSBhbmQgbGltaXQgc2l6ZSBvZiBlbnRyaWVz
IGluIHRoZSBjYWNoZS4KKyAgICAgICAgY29uc3Qgc2l6ZV90IG1heGltdW1DYWNoZUJ1ZmZlclNp
emUgPSBtX2NhY2hlLT5jYXBhY2l0eSgpIC8gODsKKyAgICAgICAgaWYgKG1fYnVmZmVyZWREYXRh
Rm9yQ2FjaGUtPnNpemUoKSArIGJ1ZmZlci0+c2l6ZSgpIDw9IG1heGltdW1DYWNoZUJ1ZmZlclNp
emUpCisgICAgICAgICAgICBtX2J1ZmZlcmVkRGF0YUZvckNhY2hlLT5hcHBlbmQoYnVmZmVyLmdl
dCgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9idWZmZXJlZERhdGFGb3JDYWNoZSA9
IG51bGxwdHI7CisgICAgfQorICAgIGlmIChpc0Nyb3NzT3JpZ2luUHJlZmV0Y2goKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIC8vIEZJWE1FOiBBdCBsZWFzdCBvbiBPUyBYIFlvc2VtaXRlIHdlIGFs
d2F5cyBnZXQgLTEgZnJvbSB0aGUgcmVzb3VyY2UgaGFuZGxlLgorICAgIHVuc2lnbmVkIGVuY29k
ZWREYXRhTGVuZ3RoID0gcmVwb3J0ZWRFbmNvZGVkRGF0YUxlbmd0aCA+PSAwID8gcmVwb3J0ZWRF
bmNvZGVkRGF0YUxlbmd0aCA6IGJ1ZmZlci0+c2l6ZSgpOworCisgICAgaWYgKG1fYnVmZmVyZWRE
YXRhKSB7CisgICAgICAgIG1fYnVmZmVyZWREYXRhLT5hcHBlbmQoYnVmZmVyLmdldCgpKTsKKyAg
ICAgICAgbV9idWZmZXJlZERhdGFFbmNvZGVkRGF0YUxlbmd0aCArPSBlbmNvZGVkRGF0YUxlbmd0
aDsKKyAgICAgICAgc3RhcnRCdWZmZXJpbmdUaW1lcklmTmVlZGVkKCk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisgICAgc2VuZEJ1ZmZlcihidWZmZXIsIGVuY29kZWREYXRhTGVuZ3RoKTsKK30K
Kwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCit7CisgICAgTE9BREVSX1JFTEVB
U0VfTE9HKCJkaWRGaW5pc2hMb2FkaW5nOiAobnVtQnl0ZXNSZWNlaXZlZD0lemQsIGhhc0NhY2hl
RW50cnlGb3JWYWxpZGF0aW9uPSVkKSIsIG1fbnVtQnl0ZXNSZWNlaXZlZCwgISFtX2NhY2hlRW50
cnlGb3JWYWxpZGF0aW9uKTsKKworICAgIGlmIChzaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9h
ZE1ldHJpY3MoKSkKKyAgICAgICAgbV9jb25uZWN0aW9uLT5hZGROZXR3b3JrTG9hZEluZm9ybWF0
aW9uTWV0cmljcyhjb3JlSWRlbnRpZmllcigpLCBuZXR3b3JrTG9hZE1ldHJpY3MpOworCisgICAg
aWYgKG1fY2FjaGVFbnRyeUZvclZhbGlkYXRpb24pIHsKKyAgICAgICAgLy8gMzA0IE5vdCBNb2Rp
ZmllZAorICAgICAgICBBU1NFUlQobV9yZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCk7
CisgICAgICAgIExPRyhOZXR3b3JrQ2FjaGUsICIoTmV0d29ya1Byb2Nlc3MpIHJldmFsaWRhdGVk
Iik7CisgICAgICAgIGRpZFJldHJpZXZlQ2FjaGVFbnRyeShXVEZNb3ZlKG1fY2FjaGVFbnRyeUZv
clZhbGlkYXRpb24pKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworI2lmIEVOQUJMRShJTlRF
TExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKSAmJiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKKyAg
ICBpZiAoc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24obV9jb25uZWN0aW9uLCBzZXNzaW9uSUQo
KSkpCisgICAgICAgIGxvZ0Nvb2tpZUluZm9ybWF0aW9uKCk7CisjZW5kaWYKKworICAgIGlmIChp
c1N5bmNocm9ub3VzKCkpCisgICAgICAgIHNlbmRSZXBseVRvU3luY2hyb25vdXNSZXF1ZXN0KCpt
X3N5bmNocm9ub3VzTG9hZERhdGEsIG1fYnVmZmVyZWREYXRhLmdldCgpLCBuZXR3b3JrTG9hZE1l
dHJpY3MpOworICAgIGVsc2UgeworICAgICAgICBpZiAobV9idWZmZXJlZERhdGEgJiYgIW1fYnVm
ZmVyZWREYXRhLT5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAgIC8vIEZJWE1FOiBQYXNzIGEgcmVh
bCB2YWx1ZSBvciByZW1vdmUgdGhlIGVuY29kZWQgZGF0YSBzaXplIGZlYXR1cmUuCisgICAgICAg
ICAgICBzZW5kQnVmZmVyKCptX2J1ZmZlcmVkRGF0YSwgLTEpOworICAgICAgICB9CisgICAgICAg
IHNlbmQoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjpEaWRGaW5pc2hSZXNvdXJjZUxvYWQo
bmV0d29ya0xvYWRNZXRyaWNzKSk7CisgICAgfQorCisgICAgdHJ5U3RvcmVBc0NhY2hlRW50cnko
KTsKKworICAgIGlmIChtX3BhcmFtZXRlcnMucGFnZUhhc1Jlc291cmNlTG9hZENsaWVudCkKKyAg
ICAgICAgbV9jb25uZWN0aW9uLT5uZXR3b3JrUHJvY2VzcygpLnBhcmVudFByb2Nlc3NDb25uZWN0
aW9uKCktPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OlJlc291cmNlTG9hZERp
ZENvbXBsZXRlV2l0aEVycm9yKG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRCwgcmVzb3VyY2VM
b2FkSW5mbygpLCBtX3Jlc3BvbnNlLCB7IH0pLCAwKTsKKworICAgIGNsZWFudXAoTG9hZFJlc3Vs
dDo6U3VjY2Vzcyk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpkaWRGYWlsTG9h
ZGluZyhjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3sKKyAgICBib29sIHdhc1NlcnZpY2VX
b3JrZXJMb2FkID0gZmFsc2U7CisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIHdhc1Nl
cnZpY2VXb3JrZXJMb2FkID0gISFtX3NlcnZpY2VXb3JrZXJGZXRjaFRhc2s7CisjZW5kaWYKKyAg
ICBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoImRpZEZhaWxMb2FkaW5nOiAod2FzU2VydmljZVdv
cmtlckxvYWQ9JWQsIGlzVGltZW91dD0lZCwgaXNDYW5jZWxsYXRpb249JWQsIGlzQWNjZXNzQ29u
dHJvbD0lZCwgZXJyb3JDb2RlPSVkKSIsIHdhc1NlcnZpY2VXb3JrZXJMb2FkLCBlcnJvci5pc1Rp
bWVvdXQoKSwgZXJyb3IuaXNDYW5jZWxsYXRpb24oKSwgZXJyb3IuaXNBY2Nlc3NDb250cm9sKCks
IGVycm9yLmVycm9yQ29kZSgpKTsKKyAgICBVTlVTRURfVkFSSUFCTEUod2FzU2VydmljZVdvcmtl
ckxvYWQpOworCisgICAgaWYgKHNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygp
KQorICAgICAgICBtX2Nvbm5lY3Rpb24tPnJlbW92ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb24oY29y
ZUlkZW50aWZpZXIoKSk7CisKKyAgICBBU1NFUlQoIWVycm9yLmlzTnVsbCgpKTsKKworICAgIG1f
Y2FjaGVFbnRyeUZvclZhbGlkYXRpb24gPSBudWxscHRyOworCisgICAgaWYgKGlzU3luY2hyb25v
dXMoKSkgeworICAgICAgICBtX3N5bmNocm9ub3VzTG9hZERhdGEtPmVycm9yID0gZXJyb3I7Cisg
ICAgICAgIHNlbmRSZXBseVRvU3luY2hyb25vdXNSZXF1ZXN0KCptX3N5bmNocm9ub3VzTG9hZERh
dGEsIG51bGxwdHIsIHsgfSk7CisgICAgfSBlbHNlIGlmIChhdXRvKiBjb25uZWN0aW9uID0gbWVz
c2FnZVNlbmRlckNvbm5lY3Rpb24oKSkgeworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAg
ICAgICAgaWYgKG1fc2VydmljZVdvcmtlckZldGNoVGFzaykKKyAgICAgICAgICAgIGNvbm5lY3Rp
b24tPnNlbmQoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjpEaWRGYWlsU2VydmljZVdvcmtl
ckxvYWQoZXJyb3IpLCBtZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCgpKTsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgY29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2Fk
ZXI6OkRpZEZhaWxSZXNvdXJjZUxvYWQoZXJyb3IpLCBtZXNzYWdlU2VuZGVyRGVzdGluYXRpb25J
RCgpKTsKKyNlbHNlCisgICAgICAgIGNvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OldlYlJlc291
cmNlTG9hZGVyOjpEaWRGYWlsUmVzb3VyY2VMb2FkKGVycm9yKSwgbWVzc2FnZVNlbmRlckRlc3Rp
bmF0aW9uSUQoKSk7CisjZW5kaWYKKyAgICB9CisKKyAgICBpZiAobV9wYXJhbWV0ZXJzLnBhZ2VI
YXNSZXNvdXJjZUxvYWRDbGllbnQpCisgICAgICAgIG1fY29ubmVjdGlvbi0+bmV0d29ya1Byb2Nl
c3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJv
Y2Vzc1Byb3h5OjpSZXNvdXJjZUxvYWREaWRDb21wbGV0ZVdpdGhFcnJvcihtX3BhcmFtZXRlcnMu
d2ViUGFnZVByb3h5SUQsIHJlc291cmNlTG9hZEluZm8oKSwgeyB9LCBlcnJvciksIDApOworCisg
ICAgY2xlYW51cChMb2FkUmVzdWx0OjpGYWlsdXJlKTsKK30KKwordm9pZCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXI6OmRpZEJsb2NrQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoKQoreworICAgIExPQURF
Ul9SRUxFQVNFX0xPRygiZGlkQmxvY2tBdXRoZW50aWNhdGlvbkNoYWxsZW5nZToiKTsKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRlcjo6RGlkQmxvY2tBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZSgpKTsKK30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVD
aGFsbGVuZ2UoY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKK3sKKyAg
ICBpZiAobV9wYXJhbWV0ZXJzLnBhZ2VIYXNSZXNvdXJjZUxvYWRDbGllbnQpCisgICAgICAgIG1f
Y29ubmVjdGlvbi0+bmV0d29ya1Byb2Nlc3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5z
ZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpSZXNvdXJjZUxvYWREaWRSZWNlaXZl
Q2hhbGxlbmdlKG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRCwgcmVzb3VyY2VMb2FkSW5mbygp
LCBjaGFsbGVuZ2UpLCAwKTsKK30KKworc3RkOjpvcHRpb25hbDxTZWNvbmRzPiBOZXR3b3JrUmVz
b3VyY2VMb2FkZXI6OnZhbGlkYXRlQ2FjaGVFbnRyeUZvck1heEFnZUNhcFZhbGlkYXRpb24oY29u
c3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlZGly
ZWN0UmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKK3sK
KyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikKKyAgICBib29sIGV4
aXN0aW5nQ2FjaGVFbnRyeU1hdGNoZXNOZXdSZXNwb25zZSA9IGZhbHNlOworICAgIGlmIChtX2Nh
Y2hlRW50cnlGb3JNYXhBZ2VDYXBWYWxpZGF0aW9uKSB7CisgICAgICAgIEFTU0VSVChyZWRpcmVj
dFJlc3BvbnNlLnNvdXJjZSgpID09IFJlc291cmNlUmVzcG9uc2U6OlNvdXJjZTo6TmV0d29yayk7
CisgICAgICAgIEFTU0VSVChyZWRpcmVjdFJlc3BvbnNlLmlzUmVkaXJlY3Rpb24oKSk7CisgICAg
ICAgIGlmIChyZWRpcmVjdFJlc3BvbnNlLmh0dHBIZWFkZXJGaWVsZChXZWJDb3JlOjpIVFRQSGVh
ZGVyTmFtZTo6TG9jYXRpb24pID09IG1fY2FjaGVFbnRyeUZvck1heEFnZUNhcFZhbGlkYXRpb24t
PnJlc3BvbnNlKCkuaHR0cEhlYWRlckZpZWxkKFdlYkNvcmU6OkhUVFBIZWFkZXJOYW1lOjpMb2Nh
dGlvbikpCisgICAgICAgICAgICBleGlzdGluZ0NhY2hlRW50cnlNYXRjaGVzTmV3UmVzcG9uc2Ug
PSB0cnVlOworCisgICAgICAgIG1fY2FjaGUtPnJlbW92ZShtX2NhY2hlRW50cnlGb3JNYXhBZ2VD
YXBWYWxpZGF0aW9uLT5rZXkoKSk7CisgICAgICAgIG1fY2FjaGVFbnRyeUZvck1heEFnZUNhcFZh
bGlkYXRpb24gPSBudWxscHRyOworICAgIH0KKyAgICAKKyAgICBpZiAoIWV4aXN0aW5nQ2FjaGVF
bnRyeU1hdGNoZXNOZXdSZXNwb25zZSkgeworICAgICAgICBpZiAoYXV0byogbmV0d29ya1N0b3Jh
Z2VTZXNzaW9uID0gbV9jb25uZWN0aW9uLT5uZXR3b3JrUHJvY2VzcygpLnN0b3JhZ2VTZXNzaW9u
KHNlc3Npb25JRCgpKSkKKyAgICAgICAgICAgIHJldHVybiBuZXR3b3JrU3RvcmFnZVNlc3Npb24t
Pm1heEFnZUNhY2hlQ2FwKHJlcXVlc3QpOworICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBzdGQ6
Om51bGxvcHQ7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJlZGly
ZWN0ZWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlc291cmNlUmVxdWVzdCYm
IHJlZGlyZWN0UmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UpCit7
CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2VuZFJlZGlyZWN0ZWRSZXF1ZXN0OiIpOwor
ICAgICsrbV9yZWRpcmVjdENvdW50OworICAgIG1fcmVkaXJlY3RSZXNwb25zZSA9IHJlZGlyZWN0
UmVzcG9uc2U7CisgICAgaWYgKCFtX2ZpcnN0UmVzcG9uc2VVUkwuaXNWYWxpZCgpKQorICAgICAg
ICBtX2ZpcnN0UmVzcG9uc2VVUkwgPSByZWRpcmVjdFJlc3BvbnNlLnVybCgpOworCisgICAgc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudDo6QXR0cmlidXRpb25U
cmlnZ2VyRGF0YT4gcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblRyaWdnZXJEYXRh
OworICAgIGlmICghc2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkgeworICAgICAgICBpZiAoYXV0
byByZXN1bHQgPSBXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudDo6cGFyc2VBdHRyaWJ1
dGlvblJlcXVlc3QocmVkaXJlY3RSZXF1ZXN0LnVybCgpKSkKKyAgICAgICAgICAgIHByaXZhdGVD
bGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UcmlnZ2VyRGF0YSA9IHJlc3VsdC52YWx1ZSgpOwor
ICAgICAgICBlbHNlIGlmICghcmVzdWx0LmVycm9yKCkuaXNFbXB0eSgpKQorICAgICAgICAgICAg
YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQs
IE1lc3NhZ2VMZXZlbDo6RXJyb3IsIHJlc3VsdC5lcnJvcigpKTsKKyAgICB9CisKKyAgICBhdXRv
IG1heEFnZUNhcCA9IHZhbGlkYXRlQ2FjaGVFbnRyeUZvck1heEFnZUNhcFZhbGlkYXRpb24ocmVx
dWVzdCwgcmVkaXJlY3RSZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlKTsKKyAgICBpZiAocmVkaXJl
Y3RSZXNwb25zZS5zb3VyY2UoKSA9PSBSZXNvdXJjZVJlc3BvbnNlOjpTb3VyY2U6Ok5ldHdvcmsg
JiYgY2FuVXNlQ2FjaGVkUmVkaXJlY3QocmVxdWVzdCkpCisgICAgICAgIG1fY2FjaGUtPnN0b3Jl
UmVkaXJlY3QocmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgcmVkaXJlY3RSZXF1ZXN0LCBtYXhB
Z2VDYXApOworCisgICAgaWYgKGlzTWFpblJlc291cmNlKCkgJiYgc2hvdWxkSW50ZXJydXB0TmF2
aWdhdGlvbkZvckNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kocmVkaXJlY3RSZXNwb25zZSkpIHsK
KyAgICAgICAgdGhpcy0+ZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VFcnJvciB7IGVycm9yRG9tYWlu
V2ViS2l0SW50ZXJuYWwsIDAsIHJlZGlyZWN0UmVxdWVzdC51cmwoKSwgIlJlZGlyZWN0aW9uIHdh
cyBibG9ja2VkIGJ5IENyb3NzLU9yaWdpbi1FbWJlZGRlci1Qb2xpY3kiX3MsIFJlc291cmNlRXJy
b3I6OlR5cGU6OkFjY2Vzc0NvbnRyb2wgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBpZiAobV9uZXR3b3JrTG9hZENoZWNrZXIpIHsKKyAgICAgICAgaWYgKHByaXZhdGVDbGlja01l
YXN1cmVtZW50QXR0cmlidXRpb25UcmlnZ2VyRGF0YSkKKyAgICAgICAgICAgIG1fbmV0d29ya0xv
YWRDaGVja2VyLT5lbmFibGVDb250ZW50RXh0ZW5zaW9uc0NoZWNrKCk7CisgICAgICAgIG1fbmV0
d29ya0xvYWRDaGVja2VyLT5zdG9yZVJlZGlyZWN0aW9uSWZOZWVkZWQocmVxdWVzdCwgcmVkaXJl
Y3RSZXNwb25zZSk7CisKKyAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2VuZFJlZGly
ZWN0ZWRSZXF1ZXN0OiBDaGVja2luZyByZWRpcmVjdCB1c2luZyBOZXR3b3JrTG9hZENoZWNrZXIi
KTsKKyAgICAgICAgbV9uZXR3b3JrTG9hZENoZWNrZXItPmNoZWNrUmVkaXJlY3Rpb24oV1RGTW92
ZShyZXF1ZXN0KSwgV1RGTW92ZShyZWRpcmVjdFJlcXVlc3QpLCBXVEZNb3ZlKHJlZGlyZWN0UmVz
cG9uc2UpLCB0aGlzLCBbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCB0aGlzLCBzdG9y
ZWRDcmVkZW50aWFsc1BvbGljeSA9IG1fbmV0d29ya0xvYWRDaGVja2VyLT5zdG9yZWRDcmVkZW50
aWFsc1BvbGljeSgpLCBwcml2YXRlQ2xpY2tNZWFzdXJlbWVudEF0dHJpYnV0aW9uVHJpZ2dlckRh
dGEgPSBXVEZNb3ZlKHByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25UcmlnZ2VyRGF0
YSldKGF1dG8mJiByZXN1bHQpIG11dGFibGUgeworICAgICAgICAgICAgaWYgKCFyZXN1bHQuaGFz
X3ZhbHVlKCkpIHsKKyAgICAgICAgICAgICAgICBpZiAocmVzdWx0LmVycm9yKCkuaXNDYW5jZWxs
YXRpb24oKSkgeworICAgICAgICAgICAgICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coIndpbGxT
ZW5kUmVkaXJlY3RlZFJlcXVlc3Q6IE5ldHdvcmtMb2FkQ2hlY2tlcjo6Y2hlY2tSZWRpcmVjdGlv
biByZXR1cm5lZCB3aXRoIGEgY2FuY2VsbGF0aW9uIik7CisgICAgICAgICAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBMT0FERVJfUkVMRUFT
RV9MT0dfRVJST1IoIndpbGxTZW5kUmVkaXJlY3RlZFJlcXVlc3Q6IE5ldHdvcmtMb2FkQ2hlY2tl
cjo6Y2hlY2tSZWRpcmVjdGlvbiByZXR1cm5lZCBhbiBlcnJvciIpOworICAgICAgICAgICAgICAg
IHRoaXMtPmRpZEZhaWxMb2FkaW5nKHJlc3VsdC5lcnJvcigpKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygi
d2lsbFNlbmRSZWRpcmVjdGVkUmVxdWVzdDogTmV0d29ya0xvYWRDaGVja2VyOjpjaGVja1JlZGly
ZWN0aW9uIGlzIGRvbmUiKTsKKyAgICAgICAgICAgIGlmIChtX3BhcmFtZXRlcnMub3B0aW9ucy5y
ZWRpcmVjdCA9PSBGZXRjaE9wdGlvbnM6OlJlZGlyZWN0OjpNYW51YWwpIHsKKyAgICAgICAgICAg
ICAgICB0aGlzLT5kaWRGaW5pc2hXaXRoUmVkaXJlY3RSZXNwb25zZShXVEZNb3ZlKHJlc3VsdC0+
cmVxdWVzdCksIFdURk1vdmUocmVzdWx0LT5yZWRpcmVjdFJlcXVlc3QpLCBXVEZNb3ZlKHJlc3Vs
dC0+cmVkaXJlY3RSZXNwb25zZSkpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgaWYgKHRoaXMtPmlzU3luY2hyb25vdXMoKSkgeworICAgICAg
ICAgICAgICAgIGlmIChzdG9yZWRDcmVkZW50aWFsc1BvbGljeSAhPSBtX25ldHdvcmtMb2FkQ2hl
Y2tlci0+c3RvcmVkQ3JlZGVudGlhbHNQb2xpY3koKSkgeworICAgICAgICAgICAgICAgICAgICAv
LyBXZSBuZWVkIHRvIHJlc3RhcnQgdGhlIGxvYWQgdG8gdXBkYXRlIHRoZSBzZXNzaW9uIGFjY29y
ZGluZyB0aGUgbmV3IGNyZWRlbnRpYWwgcG9saWN5LgorICAgICAgICAgICAgICAgICAgICBMT0FE
RVJfUkVMRUFTRV9MT0coIndpbGxTZW5kUmVkaXJlY3RlZFJlcXVlc3Q6IFJlc3RhcnRpbmcgbmV0
d29yayBsb2FkIGR1ZSB0byBjcmVkZW50aWFsIHBvbGljeSBjaGFuZ2UgZm9yIHN5bmNocm9ub3Vz
IGxvYWQiKTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy0+cmVzdGFydE5ldHdvcmtMb2FkKFdU
Rk1vdmUocmVzdWx0LT5yZWRpcmVjdFJlcXVlc3QpKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIC8vIFdlIGRvIG5vdCBz
dXBwb3J0IHByb21wdGluZyBmb3IgY3JlZGVudGlhbHMgZm9yIHN5bmNocm9ub3VzIGxvYWRzLiBJ
ZiB3ZSBldmVyIGNoYW5nZSB0aGlzIHBvbGljeSB0aGVuCisgICAgICAgICAgICAgICAgLy8gd2Ug
bmVlZCB0byB0YWtlIGNhcmUgdG8gcHJvbXB0IGlmIGFuZCBvbmx5IGlmIHJlcXVlc3QgYW5kIHJl
ZGlyZWN0UmVxdWVzdCBhcmUgbm90IG1peGVkIGNvbnRlbnQuCisgICAgICAgICAgICAgICAgdGhp
cy0+Y29udGludWVXaWxsU2VuZFJlcXVlc3QoV1RGTW92ZShyZXN1bHQtPnJlZGlyZWN0UmVxdWVz
dCksIGZhbHNlKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIG1fc2hvdWxkUmVzdGFydExvYWQgPSBzdG9yZWRDcmVkZW50aWFsc1BvbGljeSAh
PSBtX25ldHdvcmtMb2FkQ2hlY2tlci0+c3RvcmVkQ3JlZGVudGlhbHNQb2xpY3koKTsKKyAgICAg
ICAgICAgIHRoaXMtPmNvbnRpbnVlV2lsbFNlbmRSZWRpcmVjdGVkUmVxdWVzdChXVEZNb3ZlKHJl
c3VsdC0+cmVxdWVzdCksIFdURk1vdmUocmVzdWx0LT5yZWRpcmVjdFJlcXVlc3QpLCBXVEZNb3Zl
KHJlc3VsdC0+cmVkaXJlY3RSZXNwb25zZSksIFdURk1vdmUocHJpdmF0ZUNsaWNrTWVhc3VyZW1l
bnRBdHRyaWJ1dGlvblRyaWdnZXJEYXRhKSk7CisgICAgICAgIH0pOworICAgICAgICByZXR1cm47
CisgICAgfQorICAgIGNvbnRpbnVlV2lsbFNlbmRSZWRpcmVjdGVkUmVxdWVzdChXVEZNb3ZlKHJl
cXVlc3QpLCBXVEZNb3ZlKHJlZGlyZWN0UmVxdWVzdCksIFdURk1vdmUocmVkaXJlY3RSZXNwb25z
ZSksIFdURk1vdmUocHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1dGlvblRyaWdnZXJEYXRh
KSk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpjb250aW51ZVdpbGxTZW5kUmVk
aXJlY3RlZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgUmVzb3VyY2VSZXF1ZXN0
JiYgcmVkaXJlY3RSZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwg
c3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudDo6QXR0cmlidXRp
b25UcmlnZ2VyRGF0YT4mJiBwcml2YXRlQ2xpY2tNZWFzdXJlbWVudEF0dHJpYnV0aW9uVHJpZ2dl
ckRhdGEpCit7CisgICAgcmVkaXJlY3RSZXF1ZXN0LnNldElzQXBwSW5pdGlhdGVkKHJlcXVlc3Qu
aXNBcHBJbml0aWF0ZWQoKSk7CisKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coImNvbnRpbnVlV2ls
bFNlbmRSZWRpcmVjdGVkUmVxdWVzdDogKG1faXNLZXB0QWxpdmU9JWQsIGhhc0FkQ2xpY2tDb252
ZXJzaW9uPSVkKSIsIG1faXNLZXB0QWxpdmUsICEhcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRy
aWJ1dGlvblRyaWdnZXJEYXRhKTsKKyAgICBBU1NFUlQoIWlzU3luY2hyb25vdXMoKSk7CisKKyAg
ICBOZXR3b3JrU2Vzc2lvbiogbmV0d29ya1Nlc3Npb24gPSBudWxscHRyOworICAgIGlmIChwcml2
YXRlQ2xpY2tNZWFzdXJlbWVudEF0dHJpYnV0aW9uVHJpZ2dlckRhdGEgJiYgKG5ldHdvcmtTZXNz
aW9uID0gbV9jb25uZWN0aW9uLT5uZXR3b3JrUHJvY2VzcygpLm5ldHdvcmtTZXNzaW9uKHNlc3Np
b25JRCgpKSkpCisgICAgICAgIG5ldHdvcmtTZXNzaW9uLT5oYW5kbGVQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudENvbnZlcnNpb24oV1RGTW92ZSgqcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRBdHRyaWJ1
dGlvblRyaWdnZXJEYXRhKSwgcmVxdWVzdC51cmwoKSwgcmVkaXJlY3RSZXF1ZXN0KTsKKworICAg
IGlmIChtX2lzS2VwdEFsaXZlKSB7CisgICAgICAgIGNvbnRpbnVlV2lsbFNlbmRSZXF1ZXN0KFdU
Rk1vdmUocmVkaXJlY3RSZXF1ZXN0KSwgZmFsc2UpOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgLy8gV2Ugc2VuZCB0aGUgcmVxdWVzdCBib2R5IHNlcGFyYXRlbHkgYmVjYXVzZSB0aGUg
UmVzb3VyY2VSZXF1ZXN0IGJvZHkgbm9ybWFsbHkgZG9lcyBub3QgZ2V0IGVuY29kZWQgd2hlbiBz
ZW50IG92ZXIgSVBDLCBhcyBhbiBvcHRpbWl6YXRpb24uCisgICAgLy8gSG93ZXZlciwgd2UgcmVh
bGx5IG5lZWQgdGhlIGJvZHkgaGVyZSBiZWNhdXNlIGEgcmVkaXJlY3QgY3Jvc3Mtc2l0ZSBtYXkg
Y2F1c2UgYSBwcm9jZXNzLXN3YXAgYW5kIHRoZSByZXF1ZXN0IHRvIHN0YXJ0IGFnYWluIGluIGEg
bmV3IFdlYkNvbnRlbnQgcHJvY2Vzcy4KKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJSZXNvdXJjZUxv
YWRlcjo6V2lsbFNlbmRSZXF1ZXN0KHJlZGlyZWN0UmVxdWVzdCwgSVBDOjpGb3JtRGF0YVJlZmVy
ZW5jZSB7IHJlZGlyZWN0UmVxdWVzdC5odHRwQm9keSgpIH0sIHNhbml0aXplUmVzcG9uc2VJZlBv
c3NpYmxlKFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSksIFJlc291cmNlUmVzcG9uc2U6OlNhbml0
aXphdGlvblR5cGU6OlJlZGlyZWN0aW9uKSkpOworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxv
YWRlcjo6ZGlkRmluaXNoV2l0aFJlZGlyZWN0UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVkaXJlY3RSZXF1ZXN0
LCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSkKK3sKKyAgICBMT0FERVJfUkVM
RUFTRV9MT0coImRpZEZpbmlzaFdpdGhSZWRpcmVjdFJlc3BvbnNlOiIpOworICAgIHJlZGlyZWN0
UmVzcG9uc2Uuc2V0VHlwZShSZXNvdXJjZVJlc3BvbnNlOjpUeXBlOjpPcGFxdWVyZWRpcmVjdCk7
CisgICAgaWYgKCFpc0Nyb3NzT3JpZ2luUHJlZmV0Y2goKSkKKyAgICAgICAgZGlkUmVjZWl2ZVJl
c3BvbnNlKFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSksIFtdIChhdXRvKSB7IH0pOworICAgIGVs
c2UgaWYgKGF1dG8qIHNlc3Npb24gPSBtX2Nvbm5lY3Rpb24tPm5ldHdvcmtQcm9jZXNzKCkubmV0
d29ya1Nlc3Npb24oc2Vzc2lvbklEKCkpKQorICAgICAgICBzZXNzaW9uLT5wcmVmZXRjaENhY2hl
KCkuc3RvcmVSZWRpcmVjdChyZXF1ZXN0LnVybCgpLCBXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2Up
LCBXVEZNb3ZlKHJlZGlyZWN0UmVxdWVzdCkpOworCisgICAgV2ViQ29yZTo6TmV0d29ya0xvYWRN
ZXRyaWNzIG5ldHdvcmtMb2FkTWV0cmljczsKKyAgICBuZXR3b3JrTG9hZE1ldHJpY3MubWFya0Nv
bXBsZXRlKCk7CisgICAgbmV0d29ya0xvYWRNZXRyaWNzLnJlc3BvbnNlQm9keUJ5dGVzUmVjZWl2
ZWQgPSAwOworICAgIG5ldHdvcmtMb2FkTWV0cmljcy5yZXNwb25zZUJvZHlEZWNvZGVkU2l6ZSA9
IDA7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OkRpZEZpbmlzaFJlc291
cmNlTG9hZCB7IG5ldHdvcmtMb2FkTWV0cmljcyB9KTsKKworICAgIGNsZWFudXAoTG9hZFJlc3Vs
dDo6U3VjY2Vzcyk7Cit9CisKK3N0YXRpYyBib29sIHNob3VsZFNhbml0aXplUmVzcG9uc2UoY29u
c3QgTmV0d29ya1Byb2Nlc3MmIHByb2Nlc3MsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+
IHBhZ2VJZGVudGlmaWVyLCBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IFVSTCYg
dXJsKQoreworICAgIGlmICghcGFnZUlkZW50aWZpZXIgfHwgb3B0aW9ucy5kZXN0aW5hdGlvbiAh
PSBGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpFbXB0eVN0cmluZyB8fCBvcHRpb25zLm1vZGUg
IT0gRmV0Y2hPcHRpb25zOjpNb2RlOjpOb0NvcnMpCisgICAgICAgIHJldHVybiB0cnVlOworICAg
IHJldHVybiAhcHJvY2Vzcy5zaG91bGREaXNhYmxlQ09SU0ZvclJlcXVlc3RUbygqcGFnZUlkZW50
aWZpZXIsIHVybCk7Cit9CisKK1Jlc291cmNlUmVzcG9uc2UgTmV0d29ya1Jlc291cmNlTG9hZGVy
OjpzYW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJsZShSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2Us
IFJlc291cmNlUmVzcG9uc2U6OlNhbml0aXphdGlvblR5cGUgdHlwZSkKK3sKKyAgICBpZiAoIW1f
cGFyYW1ldGVycy5zaG91bGRSZXN0cmljdEhUVFBSZXNwb25zZUFjY2VzcykKKyAgICAgICAgcmV0
dXJuIFdURk1vdmUocmVzcG9uc2UpOworCisgICAgaWYgKHNob3VsZFNhbml0aXplUmVzcG9uc2Uo
bV9jb25uZWN0aW9uLT5uZXR3b3JrUHJvY2VzcygpLCBwYWdlSUQoKSwgcGFyYW1ldGVycygpLm9w
dGlvbnMsIG9yaWdpbmFsUmVxdWVzdCgpLnVybCgpKSkKKyAgICAgICAgcmVzcG9uc2Uuc2FuaXRp
emVIVFRQSGVhZGVyRmllbGRzKHR5cGUpOworCisgICAgcmV0dXJuIFdURk1vdmUocmVzcG9uc2Up
OworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6cmVzdGFydE5ldHdvcmtMb2FkKFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QpCit7CisgICAgTE9BREVSX1JFTEVB
U0VfTE9HKCJyZXN0YXJ0TmV0d29ya0xvYWQ6IChoYXNOZXR3b3JrTG9hZD0lZCkiLCAhIW1fbmV0
d29ya0xvYWQpOworCisgICAgaWYgKG1fbmV0d29ya0xvYWQpIHsKKyAgICAgICAgTE9BREVSX1JF
TEVBU0VfTE9HKCJyZXN0YXJ0TmV0d29ya0xvYWQ6IENhbmNlbGxpbmcgZXhpc3RpbmcgbmV0d29y
ayBsb2FkIHNvIHdlIGNhbiByZXN0YXJ0IHRoZSBsb2FkLiIpOworICAgICAgICBtX25ldHdvcmtM
b2FkLT5jYW5jZWwoKTsKKyAgICB9CisKKyAgICBzdGFydE5ldHdvcmtMb2FkKFdURk1vdmUobmV3
UmVxdWVzdCksIEZpcnN0TG9hZDo6Tm8pOworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRl
cjo6Y29udGludWVXaWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwg
Ym9vbCBpc0FsbG93ZWRUb0Fza1VzZXJGb3JDcmVkZW50aWFscykKK3sKKyAgICBMT0FERVJfUkVM
RUFTRV9MT0coImNvbnRpbnVlV2lsbFNlbmRSZXF1ZXN0OiAoaXNBbGxvd2VkVG9Bc2tVc2VyRm9y
Q3JlZGVudGlhbHM9JWQpIiwgaXNBbGxvd2VkVG9Bc2tVc2VyRm9yQ3JlZGVudGlhbHMpOworCisj
aWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQorICAgIGlmIChwYXJhbWV0ZXJzKCkub3B0aW9ucy5t
b2RlID09IEZldGNoT3B0aW9uczo6TW9kZTo6TmF2aWdhdGUpIHsKKyAgICAgICAgaWYgKGF1dG8g
c2VydmljZVdvcmtlckZldGNoVGFzayA9IG1fY29ubmVjdGlvbi0+Y3JlYXRlRmV0Y2hUYXNrKCp0
aGlzLCBuZXdSZXF1ZXN0KSkgeworICAgICAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJjb250
aW51ZVdpbGxTZW5kUmVxdWVzdDogQ3JlYXRlZCBhIFNlcnZpY2VXb3JrZXJGZXRjaFRhc2sgdG8g
aGFuZGxlIHRoZSByZWRpcmVjdCAoZmV0Y2hJZGVudGlmaWVyPSUiIFBSSXU2NCAiKSIsIHNlcnZp
Y2VXb3JrZXJGZXRjaFRhc2stPmZldGNoSWRlbnRpZmllcigpLnRvVUludDY0KCkpOworICAgICAg
ICAgICAgbV9uZXR3b3JrTG9hZCA9IG51bGxwdHI7CisgICAgICAgICAgICBtX3NlcnZpY2VXb3Jr
ZXJGZXRjaFRhc2sgPSBXVEZNb3ZlKHNlcnZpY2VXb3JrZXJGZXRjaFRhc2spOworICAgICAgICAg
ICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygiY29udGlu
dWVXaWxsU2VuZFJlcXVlc3Q6IE5hdmlnYXRpb24gaXMgbm90IHVzaW5nIHNlcnZpY2Ugd29ya2Vy
cyIpOworICAgICAgICBtX3Nob3VsZFJlc3RhcnRMb2FkID0gISFtX3NlcnZpY2VXb3JrZXJGZXRj
aFRhc2s7CisgICAgICAgIG1fc2VydmljZVdvcmtlckZldGNoVGFzayA9IG51bGxwdHI7CisgICAg
fQorICAgIGlmIChtX3NlcnZpY2VXb3JrZXJGZXRjaFRhc2spIHsKKyAgICAgICAgTE9BREVSX1JF
TEVBU0VfTE9HKCJjb250aW51ZVdpbGxTZW5kUmVxdWVzdDogQ29udGludWluZyBmZXRjaCB0YXNr
IHdpdGggcmVkaXJlY3QgKGZldGNoSWRlbnRpZmllcj0lIiBQUkl1NjQgIikiLCBtX3NlcnZpY2VX
b3JrZXJGZXRjaFRhc2stPmZldGNoSWRlbnRpZmllcigpLnRvVUludDY0KCkpOworICAgICAgICBt
X3NlcnZpY2VXb3JrZXJGZXRjaFRhc2stPmNvbnRpbnVlRmV0Y2hUYXNrV2l0aChXVEZNb3ZlKG5l
d1JlcXVlc3QpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgorCisgICAgaWYgKG1f
c2hvdWxkUmVzdGFydExvYWQpIHsKKyAgICAgICAgbV9zaG91bGRSZXN0YXJ0TG9hZCA9IGZhbHNl
OworCisgICAgICAgIGlmIChtX25ldHdvcmtMb2FkKQorICAgICAgICAgICAgbV9uZXR3b3JrTG9h
ZC0+dXBkYXRlUmVxdWVzdEFmdGVyUmVkaXJlY3Rpb24obmV3UmVxdWVzdCk7CisKKyAgICAgICAg
TE9BREVSX1JFTEVBU0VfTE9HKCJjb250aW51ZVdpbGxTZW5kUmVxdWVzdDogUmVzdGFydGluZyBu
ZXR3b3JrIGxvYWQiKTsKKyAgICAgICAgcmVzdGFydE5ldHdvcmtMb2FkKFdURk1vdmUobmV3UmVx
dWVzdCkpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKG1fbmV0d29ya0xvYWRD
aGVja2VyKSB7CisgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgZG9pbmcgdGhpcyBjaGVj
ayB3aGVuIHJlY2VpdmluZyB0aGUgcmVkaXJlY3Rpb24gYW5kIG5vdCBhbGxvdyBhYm91dCBwcm90
b2NvbCBhcyBwZXIgZmV0Y2ggc3BlYy4KKyAgICAgICAgaWYgKCFuZXdSZXF1ZXN0LnVybCgpLnBy
b3RvY29sSXNJbkhUVFBGYW1pbHkoKSAmJiAhbmV3UmVxdWVzdC51cmwoKS5wcm90b2NvbElzQWJv
dXQoKSAmJiBtX3JlZGlyZWN0Q291bnQpIHsKKyAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xP
R19FUlJPUigiY29udGludWVXaWxsU2VuZFJlcXVlc3Q6IEZhaWxpbmcgbG9hZCBiZWNhdXNlIGl0
IHJlZGlyZWN0ZWQgdG8gYSBzY2hlbWUgdGhhdCBpcyBub3QgSFRUUChTKSIpOworICAgICAgICAg
ICAgZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VFcnJvciB7IFN0cmluZyB7IH0sIDAsIG5ld1JlcXVl
c3QudXJsKCksICJSZWRpcmVjdGlvbiB0byBVUkwgd2l0aCBhIHNjaGVtZSB0aGF0IGlzIG5vdCBI
VFRQKFMpIl9zLCBSZXNvdXJjZUVycm9yOjpUeXBlOjpBY2Nlc3NDb250cm9sIH0pOworICAgICAg
ICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgbV9pc0FsbG93ZWRUb0Fza1Vz
ZXJGb3JDcmVkZW50aWFscyA9IGlzQWxsb3dlZFRvQXNrVXNlckZvckNyZWRlbnRpYWxzOworCisg
ICAgLy8gSWYgdGhlcmUgaXMgYSBtYXRjaCBpbiB0aGUgbmV0d29yayBjYWNoZSwgd2UgbmVlZCB0
byByZXVzZSB0aGUgb3JpZ2luYWwgY2FjaGUgcG9saWN5IGFuZCBwYXJ0aXRpb24uCisgICAgbmV3
UmVxdWVzdC5zZXRDYWNoZVBvbGljeShvcmlnaW5hbFJlcXVlc3QoKS5jYWNoZVBvbGljeSgpKTsK
KyAgICBuZXdSZXF1ZXN0LnNldENhY2hlUGFydGl0aW9uKG9yaWdpbmFsUmVxdWVzdCgpLmNhY2hl
UGFydGl0aW9uKCkpOworCisgICAgaWYgKG1faXNXYWl0aW5nQ29udGludWVXaWxsU2VuZFJlcXVl
c3RGb3JDYWNoZWRSZWRpcmVjdCkgeworICAgICAgICBtX2lzV2FpdGluZ0NvbnRpbnVlV2lsbFNl
bmRSZXF1ZXN0Rm9yQ2FjaGVkUmVkaXJlY3QgPSBmYWxzZTsKKworICAgICAgICBMT0coTmV0d29y
a0NhY2hlLCAiKE5ldHdvcmtQcm9jZXNzKSBSZXRyaWV2aW5nIGNhY2hlZCByZWRpcmVjdCIpOwor
ICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coImNvbnRpbnVlV2lsbFNlbmRSZXF1ZXN0OiBtX2lz
V2FpdGluZ0NvbnRpbnVlV2lsbFNlbmRSZXF1ZXN0Rm9yQ2FjaGVkUmVkaXJlY3Qgd2FzIHNldCIp
OworCisgICAgICAgIGlmIChjYW5Vc2VDYWNoZWRSZWRpcmVjdChuZXdSZXF1ZXN0KSkKKyAgICAg
ICAgICAgIHJldHJpZXZlQ2FjaGVFbnRyeShuZXdSZXF1ZXN0KTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgc3RhcnROZXR3b3JrTG9hZChXVEZNb3ZlKG5ld1JlcXVlc3QpLCBGaXJzdExvYWQ6
Olllcyk7CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChtX25ldHdvcmtMb2Fk
KSB7CisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygiY29udGludWVXaWxsU2VuZFJlcXVlc3Q6
IFRlbGxpbmcgTmV0d29ya0xvYWQgdG8gcHJvY2VlZCB3aXRoIHRoZSByZWRpcmVjdCIpOworCisg
ICAgICAgIGlmIChtX3BhcmFtZXRlcnMucGFnZUhhc1Jlc291cmNlTG9hZENsaWVudCAmJiAhbmV3
UmVxdWVzdC5pc051bGwoKSkKKyAgICAgICAgICAgIG1fY29ubmVjdGlvbi0+bmV0d29ya1Byb2Nl
c3MoKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJv
Y2Vzc1Byb3h5OjpSZXNvdXJjZUxvYWREaWRQZXJmb3JtSFRUUFJlZGlyZWN0aW9uKG1fcGFyYW1l
dGVycy53ZWJQYWdlUHJveHlJRCwgcmVzb3VyY2VMb2FkSW5mbygpLCBtX3JlZGlyZWN0UmVzcG9u
c2UsIG5ld1JlcXVlc3QpLCAwKTsKKworICAgICAgICBtX25ldHdvcmtMb2FkLT5jb250aW51ZVdp
bGxTZW5kUmVxdWVzdChXVEZNb3ZlKG5ld1JlcXVlc3QpKTsKKyAgICB9Cit9CisKK3ZvaWQgTmV0
d29ya1Jlc291cmNlTG9hZGVyOjpjb250aW51ZURpZFJlY2VpdmVSZXNwb25zZSgpCit7CisgICAg
TE9BREVSX1JFTEVBU0VfTE9HKCJjb250aW51ZURpZFJlY2VpdmVSZXNwb25zZTogKGhhc0NhY2hl
RW50cnlXYWl0aW5nRm9yQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2U9JWQsIGhhc1Jlc3BvbnNl
Q29tcGxldGlvbkhhbmRsZXI9JWQpIiwgISFtX2NhY2hlRW50cnlXYWl0aW5nRm9yQ29udGludWVE
aWRSZWNlaXZlUmVzcG9uc2UsICEhbV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKTsKKyNpZiBF
TkFCTEUoU0VSVklDRV9XT1JLRVIpCisgICAgaWYgKG1fc2VydmljZVdvcmtlckZldGNoVGFzaykg
eworICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coImNvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNl
OiBjb250aW51aW5nIHdpdGggU2VydmljZVdvcmtlckZldGNoVGFzayAoZmV0Y2hJZGVudGlmaWVy
PSUiIFBSSXU2NCAiKSIsIG1fc2VydmljZVdvcmtlckZldGNoVGFzay0+ZmV0Y2hJZGVudGlmaWVy
KCkudG9VSW50NjQoKSk7CisgICAgICAgIG1fc2VydmljZVdvcmtlckZldGNoVGFzay0+Y29udGlu
dWVEaWRSZWNlaXZlRmV0Y2hSZXNwb25zZSgpOworICAgICAgICByZXR1cm47CisgICAgfQorI2Vu
ZGlmCisKKyAgICBpZiAobV9jYWNoZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVjZWl2ZVJl
c3BvbnNlKSB7CisgICAgICAgIHNlbmRSZXN1bHRGb3JDYWNoZUVudHJ5KFdURk1vdmUobV9jYWNo
ZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlKSk7CisgICAgICAgIGNs
ZWFudXAoTG9hZFJlc3VsdDo6U3VjY2Vzcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBpZiAobV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICBtX3Jlc3BvbnNlQ29t
cGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9uOjpVc2UpOworfQorCit2b2lkIE5ldHdvcmtSZXNv
dXJjZUxvYWRlcjo6ZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwgdW5z
aWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2VudCkKK3sKKyAgICBpZiAoIWlzU3luY2hy
b25vdXMoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OkRpZFNl
bmREYXRhKGJ5dGVzU2VudCwgdG90YWxCeXRlc1RvQmVTZW50KSk7Cit9CisKK3ZvaWQgTmV0d29y
a1Jlc291cmNlTG9hZGVyOjpzdGFydEJ1ZmZlcmluZ1RpbWVySWZOZWVkZWQoKQoreworICAgIGlm
IChpc1N5bmNocm9ub3VzKCkpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAobV9idWZmZXJpbmdU
aW1lci5pc0FjdGl2ZSgpKQorICAgICAgICByZXR1cm47CisgICAgbV9idWZmZXJpbmdUaW1lci5z
dGFydE9uZVNob3QobV9wYXJhbWV0ZXJzLm1heGltdW1CdWZmZXJpbmdUaW1lKTsKK30KKwordm9p
ZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmJ1ZmZlcmluZ1RpbWVyRmlyZWQoKQoreworICAgIEFT
U0VSVChtX2J1ZmZlcmVkRGF0YSk7CisgICAgQVNTRVJUKG1fbmV0d29ya0xvYWQpOworCisgICAg
aWYgKG1fYnVmZmVyZWREYXRhLT5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjpEaWRSZWNlaXZlRGF0YSh7ICptX2J1ZmZl
cmVkRGF0YSB9LCBtX2J1ZmZlcmVkRGF0YUVuY29kZWREYXRhTGVuZ3RoKSk7CisKKyAgICBtX2J1
ZmZlcmVkRGF0YSA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKCk7CisgICAgbV9idWZmZXJlZERhdGFF
bmNvZGVkRGF0YUxlbmd0aCA9IDA7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpz
ZW5kQnVmZmVyKFNoYXJlZEJ1ZmZlciYgYnVmZmVyLCBzaXplX3QgZW5jb2RlZERhdGFMZW5ndGgp
Cit7CisgICAgQVNTRVJUKCFpc1N5bmNocm9ub3VzKCkpOworCisgICAgc2VuZChNZXNzYWdlczo6
V2ViUmVzb3VyY2VMb2FkZXI6OkRpZFJlY2VpdmVEYXRhKHsgYnVmZmVyIH0sIGVuY29kZWREYXRh
TGVuZ3RoKSk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjp0cnlTdG9yZUFzQ2Fj
aGVFbnRyeSgpCit7CisgICAgaWYgKCFjYW5Vc2VDYWNoZShtX25ldHdvcmtMb2FkLT5jdXJyZW50
UmVxdWVzdCgpKSkgeworICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coInRyeVN0b3JlQXNDYWNo
ZUVudHJ5OiBOb3Qgc3RvcmluZyBjYWNoZSBlbnRyeSBiZWNhdXNlIHJlcXVlc3QgaXMgbm90IGVs
aWdpYmxlIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgaWYgKCFtX2J1ZmZlcmVkRGF0
YUZvckNhY2hlKSB7CisgICAgICAgIExPQURFUl9SRUxFQVNFX0xPRygidHJ5U3RvcmVBc0NhY2hl
RW50cnk6IE5vdCBzdG9yaW5nIGNhY2hlIGVudHJ5IGJlY2F1c2UgbV9idWZmZXJlZERhdGFGb3JD
YWNoZSBpcyBudWxsIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoaXNDcm9z
c09yaWdpblByZWZldGNoKCkpIHsKKyAgICAgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBtX2Nvbm5l
Y3Rpb24tPm5ldHdvcmtQcm9jZXNzKCkubmV0d29ya1Nlc3Npb24oc2Vzc2lvbklEKCkpKSB7Cisg
ICAgICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coInRyeVN0b3JlQXNDYWNoZUVudHJ5OiBTdG9y
aW5nIGVudHJ5IGluIHByZWZldGNoIGNhY2hlIik7CisgICAgICAgICAgICBzZXNzaW9uLT5wcmVm
ZXRjaENhY2hlKCkuc3RvcmUobV9uZXR3b3JrTG9hZC0+Y3VycmVudFJlcXVlc3QoKS51cmwoKSwg
V1RGTW92ZShtX3Jlc3BvbnNlKSwgV1RGTW92ZShtX2J1ZmZlcmVkRGF0YUZvckNhY2hlKSk7Cisg
ICAgICAgIH0KKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBMT0FERVJfUkVMRUFTRV9MT0co
InRyeVN0b3JlQXNDYWNoZUVudHJ5OiBTdG9yaW5nIGVudHJ5IGluIEhUVFAgZGlzayBjYWNoZSIp
OworICAgIG1fY2FjaGUtPnN0b3JlKG1fbmV0d29ya0xvYWQtPmN1cnJlbnRSZXF1ZXN0KCksIG1f
cmVzcG9uc2UsIFdURk1vdmUobV9idWZmZXJlZERhdGFGb3JDYWNoZSksIFtsb2FkZXIgPSBtYWtl
UmVmKCp0aGlzKV0oYXV0byYgbWFwcGVkQm9keSkgbXV0YWJsZSB7CisjaWYgRU5BQkxFKFNIQVJF
QUJMRV9SRVNPVVJDRSkKKyAgICAgICAgaWYgKG1hcHBlZEJvZHkuc2hhcmVhYmxlUmVzb3VyY2VI
YW5kbGUuaXNOdWxsKCkpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIExPRyhOZXR3b3Jr
Q2FjaGUsICIoTmV0d29ya1Byb2Nlc3MpIHNlbmRpbmcgRGlkQ2FjaGVSZXNvdXJjZSIpOworICAg
ICAgICBsb2FkZXItPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6RGlk
Q2FjaGVSZXNvdXJjZShsb2FkZXItPm9yaWdpbmFsUmVxdWVzdCgpLCBtYXBwZWRCb2R5LnNoYXJl
YWJsZVJlc291cmNlSGFuZGxlKSk7CisjZW5kaWYKKyAgICB9KTsKK30KKwordm9pZCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVNYWluUmVzb3VyY2VSZXNwb25zZShjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9M
T0coImRpZFJlY2VpdmVNYWluUmVzb3VyY2VSZXNwb25zZToiKTsKKyNpZiBFTkFCTEUoTkVUV09S
S19DQUNIRV9TUEVDVUxBVElWRV9SRVZBTElEQVRJT04pCisgICAgaWYgKGF1dG8qIHNwZWN1bGF0
aXZlTG9hZE1hbmFnZXIgPSBtX2NhY2hlID8gbV9jYWNoZS0+c3BlY3VsYXRpdmVMb2FkTWFuYWdl
cigpIDogbnVsbHB0cikKKyAgICAgICAgc3BlY3VsYXRpdmVMb2FkTWFuYWdlci0+cmVnaXN0ZXJN
YWluUmVzb3VyY2VMb2FkUmVzcG9uc2UoZ2xvYmFsRnJhbWVJRCgpLCBvcmlnaW5hbFJlcXVlc3Qo
KSwgcmVzcG9uc2UpOworI2VuZGlmCit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpk
aWRSZXRyaWV2ZUNhY2hlRW50cnkoc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6RW50cnk+
IGVudHJ5KQoreworICAgIExPQURFUl9SRUxFQVNFX0xPRygiZGlkUmV0cmlldmVDYWNoZUVudHJ5
OiIpOworICAgIGF1dG8gcmVzcG9uc2UgPSBlbnRyeS0+cmVzcG9uc2UoKTsKKworICAgIGlmIChp
c01haW5SZXNvdXJjZSgpKQorICAgICAgICBkaWRSZWNlaXZlTWFpblJlc291cmNlUmVzcG9uc2Uo
cmVzcG9uc2UpOworCisgICAgaWYgKGlzTWFpblJlc291cmNlKCkgJiYgc2hvdWxkSW50ZXJydXB0
TG9hZEZvckNTUEZyYW1lQW5jZXN0b3JzT3JYRnJhbWVPcHRpb25zKHJlc3BvbnNlKSkgeworICAg
ICAgICBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoImRpZFJldHJpZXZlQ2FjaGVFbnRyeTogU3Rv
cHBpbmcgbG9hZCBkdWUgdG8gQ1NQIEZyYW1lLUFuY2VzdG9ycyBvciBYLUZyYW1lLU9wdGlvbnMi
KTsKKyAgICAgICAgcmVzcG9uc2UgPSBzYW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJsZShXVEZNb3Zl
KHJlc3BvbnNlKSwgUmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZTo6Q3Jvc3NPcmln
aW5TYWZlKTsKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6OlN0b3BM
b2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQgeyBy
ZXNwb25zZSB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBpZiAobV9uZXR3b3JrTG9h
ZENoZWNrZXIpIHsKKyAgICAgICAgYXV0byBlcnJvciA9IG1fbmV0d29ya0xvYWRDaGVja2VyLT52
YWxpZGF0ZVJlc3BvbnNlKG9yaWdpbmFsUmVxdWVzdCgpLCByZXNwb25zZSk7CisgICAgICAgIGlm
ICghZXJyb3IuaXNOdWxsKCkpIHsKKyAgICAgICAgICAgIExPQURFUl9SRUxFQVNFX0xPR19FUlJP
UigiZGlkUmV0cmlldmVDYWNoZUVudHJ5OiBGYWlsaW5nIGxvYWQgZHVlIHRvIE5ldHdvcmtMb2Fk
Q2hlY2tlcjo6dmFsaWRhdGVSZXNwb25zZSIpOworICAgICAgICAgICAgZGlkRmFpbExvYWRpbmco
ZXJyb3IpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgcmVz
cG9uc2UgPSBzYW5pdGl6ZVJlc3BvbnNlSWZQb3NzaWJsZShXVEZNb3ZlKHJlc3BvbnNlKSwgUmVz
b3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlwZTo6Q3Jvc3NPcmlnaW5TYWZlKTsKKyAgICBp
ZiAoaXNTeW5jaHJvbm91cygpKSB7CisgICAgICAgIG1fc3luY2hyb25vdXNMb2FkRGF0YS0+cmVz
cG9uc2UgPSBXVEZNb3ZlKHJlc3BvbnNlKTsKKyAgICAgICAgc2VuZFJlcGx5VG9TeW5jaHJvbm91
c1JlcXVlc3QoKm1fc3luY2hyb25vdXNMb2FkRGF0YSwgZW50cnktPmJ1ZmZlcigpLCB7IH0pOwor
ICAgICAgICBjbGVhbnVwKExvYWRSZXN1bHQ6OlN1Y2Nlc3MpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgYm9vbCBuZWVkc0NvbnRpbnVlRGlkUmVjZWl2ZVJlc3BvbnNlTWVzc2FnZSA9
IGlzTWFpblJlc291cmNlKCk7CisgICAgTE9BREVSX1JFTEVBU0VfTE9HKCJkaWRSZXRyaWV2ZUNh
Y2hlRW50cnk6IFNlbmRpbmcgV2ViUmVzb3VyY2VMb2FkZXI6OkRpZFJlY2VpdmVSZXNwb25zZSBJ
UEMgKG5lZWRzQ29udGludWVEaWRSZWNlaXZlUmVzcG9uc2VNZXNzYWdlPSVkKSIsIG5lZWRzQ29u
dGludWVEaWRSZWNlaXZlUmVzcG9uc2VNZXNzYWdlKTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJS
ZXNvdXJjZUxvYWRlcjo6RGlkUmVjZWl2ZVJlc3BvbnNlIHsgcmVzcG9uc2UsIG5lZWRzQ29udGlu
dWVEaWRSZWNlaXZlUmVzcG9uc2VNZXNzYWdlIH0pOworCisgICAgaWYgKG5lZWRzQ29udGludWVE
aWRSZWNlaXZlUmVzcG9uc2VNZXNzYWdlKSB7CisgICAgICAgIG1fcmVzcG9uc2UgPSBXVEZNb3Zl
KHJlc3BvbnNlKTsKKyAgICAgICAgbV9jYWNoZUVudHJ5V2FpdGluZ0ZvckNvbnRpbnVlRGlkUmVj
ZWl2ZVJlc3BvbnNlID0gV1RGTW92ZShlbnRyeSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc2Vu
ZFJlc3VsdEZvckNhY2hlRW50cnkoV1RGTW92ZShlbnRyeSkpOworICAgICAgICBjbGVhbnVwKExv
YWRSZXN1bHQ6OlN1Y2Nlc3MpOworICAgIH0KK30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OnNlbmRSZXN1bHRGb3JDYWNoZUVudHJ5KHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrQ2FjaGU6
OkVudHJ5PiBlbnRyeSkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coInNlbmRSZXN1bHRGb3JD
YWNoZUVudHJ5OiIpOworI2lmIEVOQUJMRShTSEFSRUFCTEVfUkVTT1VSQ0UpCisgICAgaWYgKCFl
bnRyeS0+c2hhcmVhYmxlUmVzb3VyY2VIYW5kbGUoKS5pc051bGwoKSkgeworICAgICAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRlcjo6RGlkUmVjZWl2ZVJlc291cmNlKGVudHJ5LT5z
aGFyZWFibGVSZXNvdXJjZUhhbmRsZSgpKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5k
aWYKKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKSAmJiAhUkVM
RUFTRV9MT0dfRElTQUJMRUQKKyAgICBpZiAoc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24obV9j
b25uZWN0aW9uLCBzZXNzaW9uSUQoKSkpCisgICAgICAgIGxvZ0Nvb2tpZUluZm9ybWF0aW9uKCk7
CisjZW5kaWYKKworICAgIFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTG9hZE1l
dHJpY3M7CisgICAgbmV0d29ya0xvYWRNZXRyaWNzLm1hcmtDb21wbGV0ZSgpOworICAgIG5ldHdv
cmtMb2FkTWV0cmljcy5yZXF1ZXN0SGVhZGVyQnl0ZXNTZW50ID0gMDsKKyAgICBuZXR3b3JrTG9h
ZE1ldHJpY3MucmVxdWVzdEJvZHlCeXRlc1NlbnQgPSAwOworICAgIG5ldHdvcmtMb2FkTWV0cmlj
cy5yZXNwb25zZUhlYWRlckJ5dGVzUmVjZWl2ZWQgPSAwOworICAgIG5ldHdvcmtMb2FkTWV0cmlj
cy5yZXNwb25zZUJvZHlCeXRlc1JlY2VpdmVkID0gMDsKKyAgICBuZXR3b3JrTG9hZE1ldHJpY3Mu
cmVzcG9uc2VCb2R5RGVjb2RlZFNpemUgPSAwOworCisgICAgc2VuZEJ1ZmZlcigqZW50cnktPmJ1
ZmZlcigpLCBlbnRyeS0+YnVmZmVyKCktPnNpemUoKSk7CisgICAgc2VuZChNZXNzYWdlczo6V2Vi
UmVzb3VyY2VMb2FkZXI6OkRpZEZpbmlzaFJlc291cmNlTG9hZChuZXR3b3JrTG9hZE1ldHJpY3Mp
KTsKK30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnZhbGlkYXRlQ2FjaGVFbnRyeShz
dGQ6OnVuaXF1ZV9wdHI8TmV0d29ya0NhY2hlOjpFbnRyeT4gZW50cnkpCit7CisgICAgTE9BREVS
X1JFTEVBU0VfTE9HKCJ2YWxpZGF0ZUNhY2hlRW50cnk6Iik7CisgICAgQVNTRVJUKCFtX25ldHdv
cmtMb2FkKTsKKworICAgIC8vIElmIHRoZSByZXF1ZXN0IGlzIGFscmVhZHkgY29uZGl0aW9uYWwg
dGhlbiB0aGUgcmV2YWxpZGF0aW9uIHdhcyBub3QgdHJpZ2dlcmVkIGJ5IHRoZSBkaXNrIGNhY2hl
CisgICAgLy8gYW5kIHdlIHNob3VsZCBub3Qgb3ZlcndyaXRlIHRoZSBleGlzdGluZyBjb25kaXRp
b25hbCBoZWFkZXJzLgorICAgIFJlc291cmNlUmVxdWVzdCByZXZhbGlkYXRpb25SZXF1ZXN0ID0g
b3JpZ2luYWxSZXF1ZXN0KCk7CisgICAgaWYgKCFyZXZhbGlkYXRpb25SZXF1ZXN0LmlzQ29uZGl0
aW9uYWwoKSkgeworICAgICAgICBTdHJpbmcgZVRhZyA9IGVudHJ5LT5yZXNwb25zZSgpLmh0dHBI
ZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6RVRhZyk7CisgICAgICAgIFN0cmluZyBsYXN0TW9k
aWZpZWQgPSBlbnRyeS0+cmVzcG9uc2UoKS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6
Okxhc3RNb2RpZmllZCk7CisgICAgICAgIGlmICghZVRhZy5pc0VtcHR5KCkpCisgICAgICAgICAg
ICByZXZhbGlkYXRpb25SZXF1ZXN0LnNldEhUVFBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6
SWZOb25lTWF0Y2gsIGVUYWcpOworICAgICAgICBpZiAoIWxhc3RNb2RpZmllZC5pc0VtcHR5KCkp
CisgICAgICAgICAgICByZXZhbGlkYXRpb25SZXF1ZXN0LnNldEhUVFBIZWFkZXJGaWVsZChIVFRQ
SGVhZGVyTmFtZTo6SWZNb2RpZmllZFNpbmNlLCBsYXN0TW9kaWZpZWQpOworICAgIH0KKworICAg
IG1fY2FjaGVFbnRyeUZvclZhbGlkYXRpb24gPSBXVEZNb3ZlKGVudHJ5KTsKKworICAgIHN0YXJ0
TmV0d29ya0xvYWQoV1RGTW92ZShyZXZhbGlkYXRpb25SZXF1ZXN0KSwgRmlyc3RMb2FkOjpZZXMp
OworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3RGb3JDYWNoZUVudHJ5KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIHN0ZDo6dW5pcXVlX3B0
cjxOZXR3b3JrQ2FjaGU6OkVudHJ5PiYmIGVudHJ5KQoreworICAgIExPQURFUl9SRUxFQVNFX0xP
RygiZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3RGb3JDYWNoZUVudHJ5OiIpOworICAgIEFTU0VSVChl
bnRyeS0+cmVkaXJlY3RSZXF1ZXN0KCkpOworICAgIEFTU0VSVCghbV9pc1dhaXRpbmdDb250aW51
ZVdpbGxTZW5kUmVxdWVzdEZvckNhY2hlZFJlZGlyZWN0KTsKKworICAgIExPRyhOZXR3b3JrQ2Fj
aGUsICIoTmV0d29ya1Byb2Nlc3MpIEV4ZWN1dGluZyBjYWNoZWQgcmVkaXJlY3QiKTsKKworICAg
IG1faXNXYWl0aW5nQ29udGludWVXaWxsU2VuZFJlcXVlc3RGb3JDYWNoZWRSZWRpcmVjdCA9IHRy
dWU7CisgICAgd2lsbFNlbmRSZWRpcmVjdGVkUmVxdWVzdChXVEZNb3ZlKHJlcXVlc3QpLCBSZXNv
dXJjZVJlcXVlc3QgeyAqZW50cnktPnJlZGlyZWN0UmVxdWVzdCgpIH0sIFJlc291cmNlUmVzcG9u
c2UgeyBlbnRyeS0+cmVzcG9uc2UoKSB9KTsKK30KKworSVBDOjpDb25uZWN0aW9uKiBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gJmNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoKS5jb25uZWN0aW9uKCk7Cit9CisKK3ZvaWQg
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpjb25zdW1lU2FuZGJveEV4dGVuc2lvbnNJZk5lZWRlZCgp
Cit7CisgICAgaWYgKCFtX2RpZENvbnN1bWVTYW5kYm94RXh0ZW5zaW9ucykKKyAgICAgICAgY29u
c3VtZVNhbmRib3hFeHRlbnNpb25zKCk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVy
Ojpjb25zdW1lU2FuZGJveEV4dGVuc2lvbnMoKQoreworICAgIEFTU0VSVCghbV9kaWRDb25zdW1l
U2FuZGJveEV4dGVuc2lvbnMpOworCisgICAgZm9yIChhdXRvJiBleHRlbnNpb24gOiBtX3BhcmFt
ZXRlcnMucmVxdWVzdEJvZHlTYW5kYm94RXh0ZW5zaW9ucykKKyAgICAgICAgZXh0ZW5zaW9uLT5j
b25zdW1lKCk7CisKKyAgICBpZiAoYXV0byYgZXh0ZW5zaW9uID0gbV9wYXJhbWV0ZXJzLnJlc291
cmNlU2FuZGJveEV4dGVuc2lvbikKKyAgICAgICAgZXh0ZW5zaW9uLT5jb25zdW1lKCk7CisKKyAg
ICBmb3IgKGF1dG8mIGZpbGVSZWZlcmVuY2UgOiBtX2ZpbGVSZWZlcmVuY2VzKQorICAgICAgICBm
aWxlUmVmZXJlbmNlLT5wcmVwYXJlRm9yRmlsZUFjY2VzcygpOworCisgICAgbV9kaWRDb25zdW1l
U2FuZGJveEV4dGVuc2lvbnMgPSB0cnVlOworfQorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRl
cjo6aW52YWxpZGF0ZVNhbmRib3hFeHRlbnNpb25zKCkKK3sKKyAgICBpZiAobV9kaWRDb25zdW1l
U2FuZGJveEV4dGVuc2lvbnMpIHsKKyAgICAgICAgZm9yIChhdXRvJiBleHRlbnNpb24gOiBtX3Bh
cmFtZXRlcnMucmVxdWVzdEJvZHlTYW5kYm94RXh0ZW5zaW9ucykKKyAgICAgICAgICAgIGV4dGVu
c2lvbi0+cmV2b2tlKCk7CisgICAgICAgIGlmIChhdXRvJiBleHRlbnNpb24gPSBtX3BhcmFtZXRl
cnMucmVzb3VyY2VTYW5kYm94RXh0ZW5zaW9uKQorICAgICAgICAgICAgZXh0ZW5zaW9uLT5yZXZv
a2UoKTsKKyAgICAgICAgZm9yIChhdXRvJiBmaWxlUmVmZXJlbmNlIDogbV9maWxlUmVmZXJlbmNl
cykKKyAgICAgICAgICAgIGZpbGVSZWZlcmVuY2UtPnJldm9rZUZpbGVBY2Nlc3MoKTsKKworICAg
ICAgICBtX2RpZENvbnN1bWVTYW5kYm94RXh0ZW5zaW9ucyA9IGZhbHNlOworICAgIH0KKworICAg
IG1fZmlsZVJlZmVyZW5jZXMuY2xlYXIoKTsKK30KKworYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OnNob3VsZENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljcygpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fc2hvdWxkQ2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzOworfQorCitib29s
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6Y3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sQ2hlY2tFbmFi
bGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wYXJhbWV0ZXJzLmNyb3NzT3JpZ2luQWNjZXNz
Q29udHJvbENoZWNrRW5hYmxlZDsKK30KKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lO
R19QUkVWRU5USU9OKSAmJiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKK2Jvb2wgTmV0d29ya1Jlc291
cmNlTG9hZGVyOjpzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQoreworICAg
IGlmIChhdXRvKiBzZXNzaW9uID0gY29ubmVjdGlvbi5uZXR3b3JrUHJvY2VzcygpLm5ldHdvcmtT
ZXNzaW9uKHNlc3Npb25JRCkpCisgICAgICAgIHJldHVybiBzZXNzaW9uLT5zaG91bGRMb2dDb29r
aWVJbmZvcm1hdGlvbigpOworICAgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIFN0cmluZyBl
c2NhcGVGb3JKU09OKFN0cmluZyBzKQoreworICAgIHJldHVybiBzLnJlcGxhY2UoJ1xcJywgIlxc
XFwiKS5yZXBsYWNlKCciJywgIlxcXCIiKTsKK30KKworc3RhdGljIFN0cmluZyBlc2NhcGVJREZv
ckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4mIHZhbHVlKQoreworICAgIHJldHVy
biB2YWx1ZSA/IFN0cmluZzo6bnVtYmVyKHZhbHVlLnZhbHVlKCkpIDogU3RyaW5nKCJOb25lIl9z
KTsKK30KKworc3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25h
bDxGcmFtZUlkZW50aWZpZXI+JiB2YWx1ZSkKK3sKKyAgICByZXR1cm4gdmFsdWUgPyBTdHJpbmc6
Om51bWJlcih2YWx1ZS0+dG9VSW50NjQoKSkgOiBTdHJpbmcoIk5vbmUiX3MpOworfQorCitzdGF0
aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlm
aWVyPiYgdmFsdWUpCit7CisgICAgcmV0dXJuIHZhbHVlID8gU3RyaW5nOjpudW1iZXIodmFsdWUt
PnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKK30KKwordm9pZCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKCkgY29uc3QKK3sKKyAgICBBU1NFUlQoc2hv
dWxkTG9nQ29va2llSW5mb3JtYXRpb24obV9jb25uZWN0aW9uLCBzZXNzaW9uSUQoKSkpOworCisg
ICAgYXV0byogbmV0d29ya1N0b3JhZ2VTZXNzaW9uID0gbV9jb25uZWN0aW9uLT5uZXR3b3JrUHJv
Y2VzcygpLnN0b3JhZ2VTZXNzaW9uKHNlc3Npb25JRCgpKTsKKyAgICBBU1NFUlQobmV0d29ya1N0
b3JhZ2VTZXNzaW9uKTsKKworICAgIGxvZ0Nvb2tpZUluZm9ybWF0aW9uKG1fY29ubmVjdGlvbiwg
Ik5ldHdvcmtSZXNvdXJjZUxvYWRlciIsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgdm9pZCo+KHRo
aXMpLCAqbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBvcmlnaW5hbFJlcXVlc3QoKS5maXJzdFBhcnR5
Rm9yQ29va2llcygpLCBTYW1lU2l0ZUluZm86OmNyZWF0ZShvcmlnaW5hbFJlcXVlc3QoKSksIG9y
aWdpbmFsUmVxdWVzdCgpLnVybCgpLCBvcmlnaW5hbFJlcXVlc3QoKS5odHRwUmVmZXJyZXIoKSwg
ZnJhbWVJRCgpLCBwYWdlSUQoKSwgY29yZUlkZW50aWZpZXIoKSk7Cit9CisKK3N0YXRpYyB2b2lk
IGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2Jq
ZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVT
aXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0
aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlm
aWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGlkZW50aWZpZXIpCit7CisgICAg
QVNTRVJUKE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24o
Y29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7CisKKyAgICBh
dXRvIGVzY2FwZWRVUkwgPSBlc2NhcGVGb3JKU09OKHVybC5zdHJpbmcoKSk7CisgICAgYXV0byBl
c2NhcGVkRmlyc3RQYXJ0eSA9IGVzY2FwZUZvckpTT04oZmlyc3RQYXJ0eS5zdHJpbmcoKSk7Cisg
ICAgYXV0byBlc2NhcGVkRnJhbWVJRCA9IGVzY2FwZUlERm9ySlNPTihmcmFtZUlEKTsKKyAgICBh
dXRvIGVzY2FwZWRQYWdlSUQgPSBlc2NhcGVJREZvckpTT04ocGFnZUlEKTsKKyAgICBhdXRvIGVz
Y2FwZWRJZGVudGlmaWVyID0gZXNjYXBlSURGb3JKU09OKGlkZW50aWZpZXIpOworICAgIGF1dG8g
ZXNjYXBlZFJlZmVycmVyID0gZXNjYXBlRm9ySlNPTihyZWZlcnJlcik7CisKKyNkZWZpbmUgTE9D
QUxfTE9HX0lGX0FMTE9XRUQoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0lGKG5ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5zZXNzaW9uSUQoKS5pc0Fsd2F5c09uTG9nZ2luZ0FsbG93ZWQoKSwgTmV0d29yaywg
IiVwIC0gJXM6OiIgZm10LCBsb2dnZWRPYmplY3QsIGxhYmVsLnV0ZjgoKS5kYXRhKCksICMjX19W
QV9BUkdTX18pCisjZGVmaW5lIExPQ0FMX0xPRyhzdHIsIC4uLikgXAorICAgIExPQ0FMX0xPR19J
Rl9BTExPV0VEKCJsb2dDb29raWVJbmZvcm1hdGlvbjogQkxPQ0tFRCBjb29raWUgYWNjZXNzIGZv
ciB3ZWJQYWdlSUQ9JXMsIGZyYW1lSUQ9JXMsIHJlc291cmNlSUQ9JXMsIGZpcnN0UGFydHk9JXM6
ICIgc3RyLCBlc2NhcGVkUGFnZUlELnV0ZjgoKS5kYXRhKCksIGVzY2FwZWRGcmFtZUlELnV0Zjgo
KS5kYXRhKCksIGVzY2FwZWRJZGVudGlmaWVyLnV0ZjgoKS5kYXRhKCksIGVzY2FwZWRGaXJzdFBh
cnR5LnV0ZjgoKS5kYXRhKCksICMjX19WQV9BUkdTX18pCisKKyAgICBMT0NBTF9MT0coUiIoeyAi
dXJsIjogIiV7cHVibGljfXMiLCkiLCBlc2NhcGVkVVJMLnV0ZjgoKS5kYXRhKCkpOworICAgIExP
Q0FMX0xPRyhSIiggICJwYXJ0aXRpb24iOiAiJXtwdWJsaWN9cyIsKSIsICJCTE9DS0VEIik7Cisg
ICAgTE9DQUxfTE9HKFIiKCAgImhhc1N0b3JhZ2VBY2Nlc3MiOiAle3B1YmxpY31zLCkiLCAiZmFs
c2UiKTsKKyAgICBMT0NBTF9MT0coUiIoICAicmVmZXJlciI6ICIle3B1YmxpY31zIiwpIiwgZXNj
YXBlZFJlZmVycmVyLnV0ZjgoKS5kYXRhKCkpOworICAgIExPQ0FMX0xPRyhSIiggICJpc1NhbWVT
aXRlIjogIiV7cHVibGljfXMiLCkiLCBzYW1lU2l0ZUluZm8uaXNTYW1lU2l0ZSA/ICJ0cnVlIiA6
ICJmYWxzZSIpOworICAgIExPQ0FMX0xPRyhSIiggICJpc1RvcFNpdGUiOiAiJXtwdWJsaWN9cyIs
KSIsIHNhbWVTaXRlSW5mby5pc1RvcFNpdGUgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKyAgICBMT0NB
TF9MT0coUiIoICAiY29va2llcyI6IFtdKSIpOworICAgIExPQ0FMX0xPRyhSIiggIH0pIik7Cisj
dW5kZWYgTE9DQUxfTE9HCisjdW5kZWYgTE9DQUxfTE9HX0lGX0FMTE9XRUQKK30KKworc3RhdGlj
IHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9n
Z2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBXZWJDb3JlOjpTYW1l
U2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlv
bmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IGlkZW50
aWZpZXIpCit7CisgICAgQVNTRVJUKE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29v
a2llSW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25J
RCgpKSk7CisKKyAgICBWZWN0b3I8V2ViQ29yZTo6Q29va2llPiBjb29raWVzOworICAgIGlmICgh
bmV0d29ya1N0b3JhZ2VTZXNzaW9uLmdldFJhd0Nvb2tpZXMoZmlyc3RQYXJ0eSwgc2FtZVNpdGVJ
bmZvLCB1cmwsIGZyYW1lSUQsIHBhZ2VJRCwgU2hvdWxkQXNrSVRQOjpZZXMsIFNob3VsZFJlbGF4
VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nOjpObywgY29va2llcykpCisgICAgICAgIHJldHVybjsK
KworICAgIGF1dG8gZXNjYXBlZFVSTCA9IGVzY2FwZUZvckpTT04odXJsLnN0cmluZygpKTsKKyAg
ICBhdXRvIGVzY2FwZWRQYXJ0aXRpb24gPSBlc2NhcGVGb3JKU09OKGVtcHR5U3RyaW5nKCkpOwor
ICAgIGF1dG8gZXNjYXBlZFJlZmVycmVyID0gZXNjYXBlRm9ySlNPTihyZWZlcnJlcik7CisgICAg
YXV0byBlc2NhcGVkRnJhbWVJRCA9IGVzY2FwZUlERm9ySlNPTihmcmFtZUlEKTsKKyAgICBhdXRv
IGVzY2FwZWRQYWdlSUQgPSBlc2NhcGVJREZvckpTT04ocGFnZUlEKTsKKyAgICBhdXRvIGVzY2Fw
ZWRJZGVudGlmaWVyID0gZXNjYXBlSURGb3JKU09OKGlkZW50aWZpZXIpOworICAgIGJvb2wgaGFz
U3RvcmFnZUFjY2VzcyA9IChmcmFtZUlEICYmIHBhZ2VJRCkgPyBuZXR3b3JrU3RvcmFnZVNlc3Np
b24uaGFzU3RvcmFnZUFjY2VzcyhXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiB7IHVybCB9LCBX
ZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiB7IGZpcnN0UGFydHkgfSwgZnJhbWVJRC52YWx1ZSgp
LCBwYWdlSUQudmFsdWUoKSkgOiBmYWxzZTsKKworI2RlZmluZSBMT0NBTF9MT0dfSUZfQUxMT1dF
RChmbXQsIC4uLikgUkVMRUFTRV9MT0dfSUYobmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25J
RCgpLmlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpLCBOZXR3b3JrLCAiJXAgLSAlczo6IiBmbXQs
IGxvZ2dlZE9iamVjdCwgbGFiZWwudXRmOCgpLmRhdGEoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZp
bmUgTE9DQUxfTE9HKHN0ciwgLi4uKSBcCisgICAgTE9DQUxfTE9HX0lGX0FMTE9XRUQoImxvZ0Nv
b2tpZUluZm9ybWF0aW9uOiB3ZWJQYWdlSUQ9JXMsIGZyYW1lSUQ9JXMsIHJlc291cmNlSUQ9JXM6
ICIgc3RyLCBlc2NhcGVkUGFnZUlELnV0ZjgoKS5kYXRhKCksIGVzY2FwZWRGcmFtZUlELnV0Zjgo
KS5kYXRhKCksIGVzY2FwZWRJZGVudGlmaWVyLnV0ZjgoKS5kYXRhKCksICMjX19WQV9BUkdTX18p
CisKKyAgICBMT0NBTF9MT0coUiIoeyAidXJsIjogIiV7cHVibGljfXMiLCkiLCBlc2NhcGVkVVJM
LnV0ZjgoKS5kYXRhKCkpOworICAgIExPQ0FMX0xPRyhSIiggICJwYXJ0aXRpb24iOiAiJXtwdWJs
aWN9cyIsKSIsIGVzY2FwZWRQYXJ0aXRpb24udXRmOCgpLmRhdGEoKSk7CisgICAgTE9DQUxfTE9H
KFIiKCAgImhhc1N0b3JhZ2VBY2Nlc3MiOiAle3B1YmxpY31zLCkiLCBoYXNTdG9yYWdlQWNjZXNz
ID8gInRydWUiIDogImZhbHNlIik7CisgICAgTE9DQUxfTE9HKFIiKCAgInJlZmVyZXIiOiAiJXtw
dWJsaWN9cyIsKSIsIGVzY2FwZWRSZWZlcnJlci51dGY4KCkuZGF0YSgpKTsKKyAgICBMT0NBTF9M
T0coUiIoICAiaXNTYW1lU2l0ZSI6ICIle3B1YmxpY31zIiwpIiwgc2FtZVNpdGVJbmZvLmlzU2Ft
ZVNpdGUgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKyAgICBMT0NBTF9MT0coUiIoICAiaXNUb3BTaXRl
IjogIiV7cHVibGljfXMiLCkiLCBzYW1lU2l0ZUluZm8uaXNUb3BTaXRlID8gInRydWUiIDogImZh
bHNlIik7CisgICAgTE9DQUxfTE9HKFIiKCAgImNvb2tpZXMiOiBbKSIpOworCisgICAgYXV0byBz
aXplID0gY29va2llcy5zaXplKCk7CisgICAgZGVjbHR5cGUoc2l6ZSkgY291bnQgPSAwOworICAg
IGZvciAoY29uc3QgYXV0byYgY29va2llIDogY29va2llcykgeworICAgICAgICBjb25zdCBjaGFy
KiB0cmFpbGluZ0NvbW1hID0gIiwiOworICAgICAgICBpZiAoKytjb3VudCA9PSBzaXplKQorICAg
ICAgICAgICAgdHJhaWxpbmdDb21tYSA9ICIiOworCisgICAgICAgIGF1dG8gZXNjYXBlZE5hbWUg
PSBlc2NhcGVGb3JKU09OKGNvb2tpZS5uYW1lKTsKKyAgICAgICAgYXV0byBlc2NhcGVkVmFsdWUg
PSBlc2NhcGVGb3JKU09OKGNvb2tpZS52YWx1ZSk7CisgICAgICAgIGF1dG8gZXNjYXBlZERvbWFp
biA9IGVzY2FwZUZvckpTT04oY29va2llLmRvbWFpbik7CisgICAgICAgIGF1dG8gZXNjYXBlZFBh
dGggPSBlc2NhcGVGb3JKU09OKGNvb2tpZS5wYXRoKTsKKyAgICAgICAgYXV0byBlc2NhcGVkQ29t
bWVudCA9IGVzY2FwZUZvckpTT04oY29va2llLmNvbW1lbnQpOworICAgICAgICBhdXRvIGVzY2Fw
ZWRDb21tZW50VVJMID0gZXNjYXBlRm9ySlNPTihjb29raWUuY29tbWVudFVSTC5zdHJpbmcoKSk7
CisgICAgICAgIC8vIEZJWE1FOiBMb2cgU2FtZS1TaXRlIHBvbGljeSBmb3IgZWFjaCBjb29raWUu
IFNlZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDg5ND4uCisK
KyAgICAgICAgTE9DQUxfTE9HKFIiKCAgeyAibmFtZSI6ICIle3B1YmxpY31zIiwpIiwgZXNjYXBl
ZE5hbWUudXRmOCgpLmRhdGEoKSk7CisgICAgICAgIExPQ0FMX0xPRyhSIiggICAgInZhbHVlIjog
IiV7cHVibGljfXMiLCkiLCBlc2NhcGVkVmFsdWUudXRmOCgpLmRhdGEoKSk7CisgICAgICAgIExP
Q0FMX0xPRyhSIiggICAgImRvbWFpbiI6ICIle3B1YmxpY31zIiwpIiwgZXNjYXBlZERvbWFpbi51
dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgTE9DQUxfTE9HKFIiKCAgICAicGF0aCI6ICIle3B1Ymxp
Y31zIiwpIiwgZXNjYXBlZFBhdGgudXRmOCgpLmRhdGEoKSk7CisgICAgICAgIExPQ0FMX0xPRyhS
IiggICAgImNyZWF0ZWQiOiAlZiwpIiwgY29va2llLmNyZWF0ZWQpOworICAgICAgICBMT0NBTF9M
T0coUiIoICAgICJleHBpcmVzIjogJWYsKSIsIGNvb2tpZS5leHBpcmVzLnZhbHVlX29yKDApKTsK
KyAgICAgICAgTE9DQUxfTE9HKFIiKCAgICAiaHR0cE9ubHkiOiAle3B1YmxpY31zLCkiLCBjb29r
aWUuaHR0cE9ubHkgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKyAgICAgICAgTE9DQUxfTE9HKFIiKCAg
ICAic2VjdXJlIjogJXtwdWJsaWN9cywpIiwgY29va2llLnNlY3VyZSA/ICJ0cnVlIiA6ICJmYWxz
ZSIpOworICAgICAgICBMT0NBTF9MT0coUiIoICAgICJzZXNzaW9uIjogJXtwdWJsaWN9cywpIiwg
Y29va2llLnNlc3Npb24gPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKyAgICAgICAgTE9DQUxfTE9HKFIi
KCAgICAiY29tbWVudCI6ICIle3B1YmxpY31zIiwpIiwgZXNjYXBlZENvbW1lbnQudXRmOCgpLmRh
dGEoKSk7CisgICAgICAgIExPQ0FMX0xPRyhSIiggICAgImNvbW1lbnRVUkwiOiAiJXtwdWJsaWN9
cyIpIiwgZXNjYXBlZENvbW1lbnRVUkwudXRmOCgpLmRhdGEoKSk7CisgICAgICAgIExPQ0FMX0xP
RyhSIiggIH0le3B1YmxpY31zKSIsIHRyYWlsaW5nQ29tbWEpOworICAgIH0KKyAgICBMT0NBTF9M
T0coUiIoXX0pIik7CisjdW5kZWYgTE9DQUxfTE9HCisjdW5kZWYgTE9DQUxfTE9HX0lGX0FMTE9X
RUQKK30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9u
KE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcm
IGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IE5ldHdvcmtTdG9yYWdlU2Vz
c2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0
IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6
b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4g
aWRlbnRpZmllcikKK3sKKyAgICBBU1NFUlQoc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oY29u
bmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7CisKKyAgICBpZiAo
bmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNob3VsZEJsb2NrQ29va2llcyhmaXJzdFBhcnR5LCB1cmws
IGZyYW1lSUQsIHBhZ2VJRCwgU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmc6Ok5v
KSkKKyAgICAgICAgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKGNvbm5lY3Rpb24sIGxhYmVs
LCBsb2dnZWRPYmplY3QsIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgZmlyc3RQYXJ0eSwgc2FtZVNp
dGVJbmZvLCB1cmwsIHJlZmVycmVyLCBmcmFtZUlELCBwYWdlSUQsIGlkZW50aWZpZXIpOworICAg
IGVsc2UKKyAgICAgICAgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChjb25uZWN0aW9uLCBs
YWJlbCwgbG9nZ2VkT2JqZWN0LCBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGZpcnN0UGFydHksIHNh
bWVTaXRlSW5mbywgdXJsLCByZWZlcnJlciwgZnJhbWVJRCwgcGFnZUlELCBpZGVudGlmaWVyKTsK
K30KKyNlbmRpZgorCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6YWRkQ29uc29sZU1lc3Nh
Z2UoTWVzc2FnZVNvdXJjZSBtZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVs
LCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVuc2lnbmVkIGxvbmcpCit7CisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6QWRkQ29uc29sZU1lc3NhZ2UgeyBtX3BhcmFtZXRlcnMud2ViRnJhbWVJ
RCwgIG1lc3NhZ2VTb3VyY2UsIG1lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgY29yZUlkZW50aWZpZXIo
KSB9LCBtX3BhcmFtZXRlcnMud2ViUGFnZUlEKTsKK30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OnNlbmRDU1BWaW9sYXRpb25SZXBvcnQoVVJMJiYgcmVwb3J0VVJMLCBSZWY8Rm9ybURh
dGE+JiYgcmVwb3J0KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNlbmRDU1BWaW9s
YXRpb25SZXBvcnQgeyBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRCwgV1RGTW92ZShyZXBvcnRVUkwp
LCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlIHsgV1RGTW92ZShyZXBvcnQpIH0gfSwgbV9wYXJhbWV0
ZXJzLndlYlBhZ2VJRCk7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjplbnF1ZXVl
U2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChXZWJDb3JlOjpTZWN1cml0eVBvbGljeVZpb2xh
dGlvbkV2ZW50OjpJbml0JiYgZXZlbnRJbml0KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OkVucXVldWVTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50IHsgbV9wYXJhbWV0ZXJzLndl
YkZyYW1lSUQsIFdURk1vdmUoZXZlbnRJbml0KSB9LCBtX3BhcmFtZXRlcnMud2ViUGFnZUlEKTsK
K30KKwordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZO
ZWVkZWQoY29uc3QgTmV0d29ya0NhY2hlOjpDYWNoZTo6UmV0cmlldmVJbmZvJiBpbmZvKQorewor
I2lmIFJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgVU5VU0VEX1BBUkFNKGluZm8pOworI2Vsc2UK
KyAgICBhdXRvIGR1cmF0aW9uID0gaW5mby5jb21wbGV0aW9uVGltZSAtIGluZm8uc3RhcnRUaW1l
OworICAgIGlmIChkdXJhdGlvbiA8IDFfcykKKyAgICAgICAgcmV0dXJuOworICAgIExPQURFUl9S
RUxFQVNFX0xPRygibG9nU2xvd0NhY2hlUmV0cmlldmVJZk5lZWRlZDogVG9vayAlLjBmbXMsIHBy
aW9yaXR5ICVkIiwgZHVyYXRpb24ubWlsbGlzZWNvbmRzKCksIGluZm8ucHJpb3JpdHkpOworICAg
IGlmIChpbmZvLndhc1NwZWN1bGF0aXZlTG9hZCkKKyAgICAgICAgTE9BREVSX1JFTEVBU0VfTE9H
KCJsb2dTbG93Q2FjaGVSZXRyaWV2ZUlmTmVlZGVkOiBXYXMgc3BlY3VsYXRpdmUgbG9hZCIpOwor
ICAgIGlmICghaW5mby5zdG9yYWdlVGltaW5ncy5zdGFydFRpbWUpCisgICAgICAgIHJldHVybjsK
KyAgICBMT0FERVJfUkVMRUFTRV9MT0coImxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZOZWVkZWQ6IFN0
b3JhZ2UgcmV0cmlldmUgdGltZSAlLjBmbXMiLCAoaW5mby5zdG9yYWdlVGltaW5ncy5jb21wbGV0
aW9uVGltZSAtIGluZm8uc3RvcmFnZVRpbWluZ3Muc3RhcnRUaW1lKS5taWxsaXNlY29uZHMoKSk7
CisgICAgaWYgKGluZm8uc3RvcmFnZVRpbWluZ3MuZGlzcGF0Y2hUaW1lKSB7CisgICAgICAgIGF1
dG8gdGltZSA9IChpbmZvLnN0b3JhZ2VUaW1pbmdzLmRpc3BhdGNoVGltZSAtIGluZm8uc3RvcmFn
ZVRpbWluZ3Muc3RhcnRUaW1lKS5taWxsaXNlY29uZHMoKTsKKyAgICAgICAgYXV0byBjb3VudCA9
IGluZm8uc3RvcmFnZVRpbWluZ3MuZGlzcGF0Y2hDb3VudEF0RGlzcGF0Y2ggLSBpbmZvLnN0b3Jh
Z2VUaW1pbmdzLmRpc3BhdGNoQ291bnRBdFN0YXJ0OworICAgICAgICBMT0FERVJfUkVMRUFTRV9M
T0coImxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZOZWVkZWQ6IERpc3BhdGNoIGRlbGF5ICUuMGZtcywg
ZGlzcGF0Y2hlZCAlbHUgcmVzb3VyY2VzIGZpcnN0IiwgdGltZSwgY291bnQpOworICAgIH0KKyAg
ICBpZiAoaW5mby5zdG9yYWdlVGltaW5ncy5yZWNvcmRJT1N0YXJ0VGltZSkKKyAgICAgICAgTE9B
REVSX1JFTEVBU0VfTE9HKCJsb2dTbG93Q2FjaGVSZXRyaWV2ZUlmTmVlZGVkOiBSZWNvcmQgSS9P
IHRpbWUgJS4wZm1zIiwgKGluZm8uc3RvcmFnZVRpbWluZ3MucmVjb3JkSU9FbmRUaW1lIC0gaW5m
by5zdG9yYWdlVGltaW5ncy5yZWNvcmRJT1N0YXJ0VGltZSkubWlsbGlzZWNvbmRzKCkpOworICAg
IGlmIChpbmZvLnN0b3JhZ2VUaW1pbmdzLmJsb2JJT1N0YXJ0VGltZSkKKyAgICAgICAgTE9BREVS
X1JFTEVBU0VfTE9HKCJsb2dTbG93Q2FjaGVSZXRyaWV2ZUlmTmVlZGVkOiBCbG9iIEkvTyB0aW1l
ICUuMGZtcyIsIChpbmZvLnN0b3JhZ2VUaW1pbmdzLmJsb2JJT0VuZFRpbWUgLSBpbmZvLnN0b3Jh
Z2VUaW1pbmdzLmJsb2JJT1N0YXJ0VGltZSkubWlsbGlzZWNvbmRzKCkpOworICAgIGlmIChpbmZv
LnN0b3JhZ2VUaW1pbmdzLnN5bmNocm9uaXphdGlvbkluUHJvZ3Jlc3NBdERpc3BhdGNoKQorICAg
ICAgICBMT0FERVJfUkVMRUFTRV9MT0coImxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZOZWVkZWQ6IFN5
bmNocm9uaXphdGlvbiB3YXMgaW4gcHJvZ3Jlc3MiKTsKKyAgICBpZiAoaW5mby5zdG9yYWdlVGlt
aW5ncy5zaHJpbmtJblByb2dyZXNzQXREaXNwYXRjaCkKKyAgICAgICAgTE9BREVSX1JFTEVBU0Vf
TE9HKCJsb2dTbG93Q2FjaGVSZXRyaWV2ZUlmTmVlZGVkOiBTaHJpbmsgd2FzIGluIHByb2dyZXNz
Iik7CisgICAgaWYgKGluZm8uc3RvcmFnZVRpbWluZ3Mud2FzQ2FuY2VsZWQpCisgICAgICAgIExP
QURFUl9SRUxFQVNFX0xPRygibG9nU2xvd0NhY2hlUmV0cmlldmVJZk5lZWRlZDogUmV0cmlldmUg
d2FzIGNhbmNlbGVkIik7CisjZW5kaWYKK30KKworYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6
OmlzQ3Jvc3NPcmlnaW5QcmVmZXRjaCgpIGNvbnN0Cit7CisgICAgYXV0byYgcmVxdWVzdCA9IG9y
aWdpbmFsUmVxdWVzdCgpOworICAgIHJldHVybiByZXF1ZXN0Lmh0dHBIZWFkZXJGaWVsZChIVFRQ
SGVhZGVyTmFtZTo6UHVycG9zZSkgPT0gInByZWZldGNoIiAmJiAhbV9wYXJhbWV0ZXJzLnNvdXJj
ZU9yaWdpbi0+Y2FuUmVxdWVzdChyZXF1ZXN0LnVybCgpKTsKK30KKworI2lmIEVOQUJMRShTRVJW
SUNFX1dPUktFUikKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpzdGFydFdpdGhTZXJ2aWNl
V29ya2VyKCkKK3sKKyAgICBMT0FERVJfUkVMRUFTRV9MT0coInN0YXJ0V2l0aFNlcnZpY2VXb3Jr
ZXI6Iik7CisgICAgQVNTRVJUKCFtX3NlcnZpY2VXb3JrZXJGZXRjaFRhc2spOworICAgIG1fc2Vy
dmljZVdvcmtlckZldGNoVGFzayA9IG1fY29ubmVjdGlvbi0+Y3JlYXRlRmV0Y2hUYXNrKCp0aGlz
LCBvcmlnaW5hbFJlcXVlc3QoKSk7CisgICAgaWYgKG1fc2VydmljZVdvcmtlckZldGNoVGFzaykg
eworICAgICAgICBMT0FERVJfUkVMRUFTRV9MT0coInN0YXJ0V2l0aFNlcnZpY2VXb3JrZXI6IENy
ZWF0ZWQgYSBTZXJ2aWNlV29ya2VyRmV0Y2hUYXNrIChmZXRjaElkZW50aWZpZXI9JSIgUFJJdTY0
ICIpIiwgbV9zZXJ2aWNlV29ya2VyRmV0Y2hUYXNrLT5mZXRjaElkZW50aWZpZXIoKS50b1VJbnQ2
NCgpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNlcnZpY2VXb3JrZXJEaWROb3RI
YW5kbGUobnVsbHB0cik7Cit9CisKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpzZXJ2aWNl
V29ya2VyRGlkTm90SGFuZGxlKFNlcnZpY2VXb3JrZXJGZXRjaFRhc2sqIGZldGNoVGFzaykKK3sK
KyAgICBMT0FERVJfUkVMRUFTRV9MT0coInNlcnZpY2VXb3JrZXJEaWROb3RIYW5kbGU6IChmZXRj
aElkZW50aWZpZXI9JSIgUFJJdTY0ICIpIiwgZmV0Y2hUYXNrID8gZmV0Y2hUYXNrLT5mZXRjaElk
ZW50aWZpZXIoKS50b1VJbnQ2NCgpIDogMCk7CisgICAgUkVMRUFTRV9BU1NFUlQobV9zZXJ2aWNl
V29ya2VyRmV0Y2hUYXNrLmdldCgpID09IGZldGNoVGFzayk7CisgICAgaWYgKG1fcGFyYW1ldGVy
cy5zZXJ2aWNlV29ya2Vyc01vZGUgPT0gU2VydmljZVdvcmtlcnNNb2RlOjpPbmx5KSB7CisgICAg
ICAgIExPQURFUl9SRUxFQVNFX0xPR19FUlJPUigic2VydmljZVdvcmtlckRpZE5vdEhhbmRsZTog
QWJvcnRpbmcgbG9hZCBiZWNhdXNlIHRoZSBzZXJ2aWNlIHdvcmtlciBkaWQgbm90IGhhbmRsZSB0
aGUgbG9hZCBhbmQgc2VydmljZVdvcmtlck1vZGUgb25seSBhbGxvd3Mgc2VydmljZSB3b3JrZXJz
Iik7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjpTZXJ2aWNlV29y
a2VyRGlkTm90SGFuZGxlIHsgfSwgY29yZUlkZW50aWZpZXIoKSk7CisgICAgICAgIGFib3J0KCk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAobV9zZXJ2aWNlV29ya2VyRmV0Y2hU
YXNrKSB7CisgICAgICAgIGF1dG8gbmV3UmVxdWVzdCA9IG1fc2VydmljZVdvcmtlckZldGNoVGFz
ay0+dGFrZVJlcXVlc3QoKTsKKyAgICAgICAgbV9zZXJ2aWNlV29ya2VyRmV0Y2hUYXNrID0gbnVs
bHB0cjsKKworICAgICAgICBpZiAobV9uZXR3b3JrTG9hZCkKKyAgICAgICAgICAgIG1fbmV0d29y
a0xvYWQtPnVwZGF0ZVJlcXVlc3RBZnRlclJlZGlyZWN0aW9uKG5ld1JlcXVlc3QpOworCisgICAg
ICAgIExPQURFUl9SRUxFQVNFX0xPRygic2VydmljZVdvcmtlckRpZE5vdEhhbmRsZTogUmVzdGFy
dGluZyBuZXR3b3JrIGxvYWQgZm9yIHJlZGlyZWN0Iik7CisgICAgICAgIHJlc3RhcnROZXR3b3Jr
TG9hZChXVEZNb3ZlKG5ld1JlcXVlc3QpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBz
dGFydCgpOworfQorI2VuZGlmCisKK2Jvb2wgTmV0d29ya1Jlc291cmNlTG9hZGVyOjppc0FwcElu
aXRpYXRlZCgpCit7CisgICAgcmV0dXJuIG1fcGFyYW1ldGVycy5yZXF1ZXN0LmlzQXBwSW5pdGlh
dGVkKCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjdW5kZWYgTE9BREVSX1JFTEVB
U0VfTE9HCisjdW5kZWYgTE9BREVSX1JFTEVBU0VfTE9HX0VSUk9SCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRleCBmYjFi
ZjBlNWMxYWRiNDQxNzMwNWY4NjNhMGZiMWM1NmM4YzEyNDYwLi5mMjJiNGNjMzA3NGNiZDY4MTUy
Y2Y0OTUzNmMwZjBlOGIzYTA0Y2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKQEAgLTg1LDcgKzg1LDcgQEAgcHVibGlj
OgogICAgIHZvaWQgc3RhcnQoKTsKICAgICB2b2lkIGFib3J0KCk7CiAKLSAgICB2b2lkIHRyYW5z
ZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcik7CisgICAgdm9pZCB0cmFuc2ZlclRvTmV3V2ViUHJvY2VzcyhOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
Zmllcik7CiAKICAgICAvLyBNZXNzYWdlIGhhbmRsZXJzLgogICAgIHZvaWQgZGlkUmVjZWl2ZU5l
dHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVy
Jik7CkBAIC05Nyw3ICs5Nyw3IEBAIHB1YmxpYzoKIAogICAgIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzJiBjb25uZWN0aW9uVG9XZWJQcm9jZXNzKCkgY29uc3QgeyByZXR1cm4gbV9jb25u
ZWN0aW9uOyB9CiAgICAgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1cm4g
bV9jb25uZWN0aW9uLT5zZXNzaW9uSUQoKTsgfQotICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIg
Y29yZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllcjsg
fQorICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBjb3JlSWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyOyB9CiAgICAgV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMud2Vi
RnJhbWVJRDsgfQogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCgpIGNvbnN0IHsg
cmV0dXJuIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQ7IH0KICAgICBjb25zdCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkUGFyYW1ldGVycyYgcGFyYW1ldGVycygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVy
czsgfQpAQCAtMTMyLDcgKzEzMiw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShJTlRFTExJR0VO
VF9UUkFDS0lOR19QUkVWRU5USU9OKSAmJiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAgICBzdGF0
aWMgYm9vbCBzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyYsIFBBTDo6U2Vzc2lvbklEKTsKLSAgICBzdGF0aWMgdm9pZCBsb2dDb29raWVJbmZv
cm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIGNvbnN0IFN0cmluZyYgbGFi
ZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3Jh
Z2VTZXNzaW9uJiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBXZWJDb3JlOjpTYW1lU2l0
ZUluZm8mLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlmaWVyKTsKKyAgICBzdGF0
aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3Qg
V2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBj
b25zdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8mLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4sIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6UGFnZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcj4pOwogI2VuZGlmCiAKICAgICB2b2lkIGRpc2FibGVFeHRy
YU5ldHdvcmtMb2FkTWV0cmljc0NhcHR1cmUoKSB7IG1fc2hvdWxkQ2FwdHVyZUV4dHJhTmV0d29y
a0xvYWRNZXRyaWNzID0gZmFsc2U7IH0KQEAgLTE1Myw3ICsxNTMsNyBAQCBwcml2YXRlOgogCiAg
ICAgLy8gSVBDOjpNZXNzYWdlU2VuZGVyCiAgICAgSVBDOjpDb25uZWN0aW9uKiBtZXNzYWdlU2Vu
ZGVyQ29ubmVjdGlvbigpIGNvbnN0IG92ZXJyaWRlOwotICAgIHVpbnQ2NF90IG1lc3NhZ2VTZW5k
ZXJEZXN0aW5hdGlvbklEKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLmlk
ZW50aWZpZXI7IH0KKyAgICB1aW50NjRfdCBtZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCgpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCk7
IH0KIAogICAgIGJvb2wgY2FuVXNlQ2FjaGUoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JikgY29uc3Q7CiAgICAgYm9vbCBjYW5Vc2VDYWNoZWRSZWRpcmVjdChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgub3JpZyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgub3JpZwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYjFi
ZjBlNWMxYWRiNDQxNzMwNWY4NjNhMGZiMWM1NmM4YzEyNDYwCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaC5vcmln
CkBAIC0wLDAgKzEsMjYyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyLTIwMTUgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgIkRvd25sb2FkSUQuaCIKKyNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCisjaW5jbHVk
ZSAiTmV0d29ya0NhY2hlLmgiCisjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MuaCIKKyNpbmNsdWRlICJOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzc01lc3NhZ2VzUmVw
bGllcy5oIgorI2luY2x1ZGUgIk5ldHdvcmtMb2FkQ2xpZW50LmgiCisjaW5jbHVkZSAiTmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXIuaCIKKyNpbmNsdWRlICJOZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvQ29udGVudFNlY3VyaXR5UG9saWN5Q2xp
ZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Dcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2wuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL1ByaXZhdGVDbGlja01lYXN1cmVtZW50Lmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9SZXNvdXJjZVJlc3BvbnNlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TZWN1cml0eVBvbGlj
eVZpb2xhdGlvbkV2ZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9UaW1lci5oPgorI2luY2x1ZGUg
PHd0Zi9XZWFrUHRyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIEJsb2JEYXRhRmls
ZVJlZmVyZW5jZTsKK2NsYXNzIEZvcm1EYXRhOworY2xhc3MgTmV0d29ya1N0b3JhZ2VTZXNzaW9u
OworY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OworfQorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xh
c3MgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CitjbGFzcyBOZXR3b3JrTG9hZDsKK2Ns
YXNzIE5ldHdvcmtMb2FkQ2hlY2tlcjsKK2NsYXNzIFNlcnZpY2VXb3JrZXJGZXRjaFRhc2s7Citj
bGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb247CisKK2VudW0gY2xhc3MgTmVnb3RpYXRlZExlZ2Fj
eVRMUyA6IGJvb2w7CisKK3N0cnVjdCBSZXNvdXJjZUxvYWRJbmZvOworCituYW1lc3BhY2UgTmV0
d29ya0NhY2hlIHsKK2NsYXNzIEVudHJ5OworfQorCitjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXIgZmluYWwKKyAgICA6IHB1YmxpYyBSZWZDb3VudGVkPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4K
KyAgICAsIHB1YmxpYyBOZXR3b3JrTG9hZENsaWVudAorICAgICwgcHVibGljIElQQzo6TWVzc2Fn
ZVNlbmRlcgorICAgICwgcHVibGljIFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeUNsaWVu
dAorICAgICwgcHVibGljIFdlYkNvcmU6OkNyb3NzT3JpZ2luQWNjZXNzQ29udHJvbENoZWNrRGlz
YWJsZXIKKyAgICAsIHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+
IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gY3JlYXRl
KE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgcGFyYW1ldGVycywgTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6UGVyZm9ybVN5bmNocm9ub3VzTG9hZERlbGF5ZWRSZXBseSYmIHJlcGx5
ID0gbnVsbHB0cikKKyAgICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IE5ldHdvcmtS
ZXNvdXJjZUxvYWRlcihXVEZNb3ZlKHBhcmFtZXRlcnMpLCBjb25uZWN0aW9uLCBXVEZNb3ZlKHJl
cGx5KSkpOworICAgIH0KKyAgICB2aXJ0dWFsIH5OZXR3b3JrUmVzb3VyY2VMb2FkZXIoKTsKKwor
ICAgIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0KCkgY29u
c3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLnJlcXVlc3Q7IH0KKworICAgIE5ldHdvcmtMb2FkKiBu
ZXR3b3JrTG9hZCgpIGNvbnN0IHsgcmV0dXJuIG1fbmV0d29ya0xvYWQuZ2V0KCk7IH0KKworICAg
IHZvaWQgc3RhcnQoKTsKKyAgICB2b2lkIGFib3J0KCk7CisKKyAgICB2b2lkIHRyYW5zZmVyVG9O
ZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUmVzb3VyY2VMb2Fk
SWRlbnRpZmllcik7CisKKyAgICAvLyBNZXNzYWdlIGhhbmRsZXJzLgorICAgIHZvaWQgZGlkUmVj
ZWl2ZU5ldHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpE
ZWNvZGVyJik7CisKKyAgICB2b2lkIGNvbnRpbnVlV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QsIGJvb2wgaXNBbGxvd2VkVG9Bc2tVc2VyRm9yQ3Jl
ZGVudGlhbHMpOworCisgICAgdm9pZCBzZXRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiYgcmVzcG9uc2UpIHsgbV9yZXNwb25zZSA9IFdURk1vdmUocmVzcG9uc2UpOyB9CisgICAg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UoKSBjb25zdCB7IHJldHVy
biBtX3Jlc3BvbnNlOyB9CisKKyAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29u
bmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0IHsgcmV0dXJuIG1fY29ubmVjdGlvbjsgfQorICAg
IFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJuIG1fY29ubmVjdGlvbi0+
c2Vzc2lvbklEKCk7IH0KKyAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGNvcmVJZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXI7IH0KKyAgICBXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy53
ZWJGcmFtZUlEOyB9CisgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEKCkgY29uc3Qg
eyByZXR1cm4gbV9wYXJhbWV0ZXJzLndlYlBhZ2VJRDsgfQorICAgIGNvbnN0IE5ldHdvcmtSZXNv
dXJjZUxvYWRQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0
ZXJzOyB9CisgICAgTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1fcmVzb3VyY2VMb2FkSUQ7IH0KKyAgICBjb25zdCBVUkwmIGZpcnN0UmVz
cG9uc2VVUkwoKSBjb25zdCB7IHJldHVybiBtX2ZpcnN0UmVzcG9uc2VVUkw7IH0KKworICAgIE5l
dHdvcmtDYWNoZTo6R2xvYmFsRnJhbWVJRCBnbG9iYWxGcmFtZUlEKCkgeyByZXR1cm4geyBtX3Bh
cmFtZXRlcnMud2ViUGFnZVByb3h5SUQsIHBhZ2VJRCgpLCBmcmFtZUlEKCkgfTsgfQorCisgICAg
c3RydWN0IFN5bmNocm9ub3VzTG9hZERhdGE7CisKKyAgICAvLyBOZXR3b3JrTG9hZENsaWVudC4K
KyAgICB2b2lkIGRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieXRlc1NlbnQsIHVuc2ln
bmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVzVG9CZVNlbnQpIGZpbmFsOworICAgIGJvb2wgaXNTeW5j
aHJvbm91cygpIGNvbnN0IGZpbmFsOworICAgIGJvb2wgaXNBbGxvd2VkVG9Bc2tVc2VyRm9yQ3Jl
ZGVudGlhbHMoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2lzQWxsb3dlZFRvQXNrVXNlckZvckNy
ZWRlbnRpYWxzOyB9CisgICAgdm9pZCB3aWxsU2VuZFJlZGlyZWN0ZWRSZXF1ZXN0KFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZWRpcmVjdFJl
cXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJikgZmluYWw7CisgICAgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBSZXNwb25zZUNvbXBs
ZXRpb25IYW5kbGVyJiYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZUJ1ZmZlcihSZWY8V2Vi
Q29yZTo6U2hhcmVkQnVmZmVyPiYmLCBpbnQgcmVwb3J0ZWRFbmNvZGVkRGF0YUxlbmd0aCkgZmlu
YWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2Fk
TWV0cmljcyYpIGZpbmFsOworICAgIHZvaWQgZGlkRmFpbExvYWRpbmcoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlkQmxvY2tBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZSgpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZUNoYWxsZW5nZShjb25zdCBXZWJD
b3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkQ2Fw
dHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzKCkgY29uc3QgZmluYWw7CisKKyAgICAvLyBDcm9z
c09yaWdpbkFjY2Vzc0NvbnRyb2xDaGVja0Rpc2FibGVyCisgICAgYm9vbCBjcm9zc09yaWdpbkFj
Y2Vzc0NvbnRyb2xDaGVja0VuYWJsZWQoKSBjb25zdCBvdmVycmlkZTsKKyAgICAgICAgCisgICAg
dm9pZCBjb252ZXJ0VG9Eb3dubG9hZChEb3dubG9hZElELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisKKyAgICBib29s
IGlzTWFpblJlc291cmNlKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLnJlcXVlc3QucmVx
dWVzdGVyKCkgPT0gV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0OjpSZXF1ZXN0ZXI6Ok1haW47IH0K
KyAgICBib29sIGlzTWFpbkZyYW1lTG9hZCgpIGNvbnN0IHsgcmV0dXJuIGlzTWFpblJlc291cmNl
KCkgJiYgbV9wYXJhbWV0ZXJzLmZyYW1lQW5jZXN0b3JPcmlnaW5zLmlzRW1wdHkoKTsgfQorICAg
IGJvb2wgaXNDcm9zc09yaWdpblByZWZldGNoKCkgY29uc3Q7CisKKyNpZiBFTkFCTEUoSU5URUxM
SUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikgJiYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAg
c3RhdGljIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3MmLCBQQUw6OlNlc3Npb25JRCk7CisgICAgc3RhdGljIHZvaWQgbG9nQ29va2ll
SW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBjb25zdCBTdHJpbmcm
IGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiYsIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2Ft
ZVNpdGVJbmZvJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcik7CisjZW5k
aWYKKworICAgIHZvaWQgZGlzYWJsZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzQ2FwdHVyZSgpIHsg
bV9zaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MgPSBmYWxzZTsgfQorCisgICAg
Ym9vbCBpc0tlcHRBbGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNLZXB0QWxpdmU7IH0KKworICAg
IHZvaWQgY29uc3VtZVNhbmRib3hFeHRlbnNpb25zSWZOZWVkZWQoKTsKKworI2lmIEVOQUJMRShT
RVJWSUNFX1dPUktFUikKKyAgICB2b2lkIHN0YXJ0V2l0aFNlcnZpY2VXb3JrZXIoKTsKKyAgICB2
b2lkIHNlcnZpY2VXb3JrZXJEaWROb3RIYW5kbGUoU2VydmljZVdvcmtlckZldGNoVGFzayopOwor
I2VuZGlmCisKKyAgICBib29sIGlzQXBwSW5pdGlhdGVkKCk7CisKK3ByaXZhdGU6CisgICAgTmV0
d29ya1Jlc291cmNlTG9hZGVyKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYsIE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpQZXJmb3JtU3luY2hyb25vdXNMb2FkRGVsYXllZFJlcGx5JiYpOworCisgICAg
Ly8gSVBDOjpNZXNzYWdlU2VuZGVyCisgICAgSVBDOjpDb25uZWN0aW9uKiBtZXNzYWdlU2VuZGVy
Q29ubmVjdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIHVpbnQ2NF90IG1lc3NhZ2VTZW5kZXJE
ZXN0aW5hdGlvbklEKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50
aWZpZXI7IH0KKworICAgIGJvb2wgY2FuVXNlQ2FjaGUoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JikgY29uc3Q7CisgICAgYm9vbCBjYW5Vc2VDYWNoZWRSZWRpcmVjdChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsKKworICAgIHZvaWQgdHJ5U3RvcmVBc0NhY2hl
RW50cnkoKTsKKyAgICB2b2lkIHJldHJpZXZlQ2FjaGVFbnRyeShjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKTsKKyAgICB2b2lkIHJldHJpZXZlQ2FjaGVFbnRyeUludGVybmFsKHN0ZDo6
dW5pcXVlX3B0cjxOZXR3b3JrQ2FjaGU6OkVudHJ5PiYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmJik7CisgICAgdm9pZCBkaWRSZXRyaWV2ZUNhY2hlRW50cnkoc3RkOjp1bmlxdWVfcHRyPE5l
dHdvcmtDYWNoZTo6RW50cnk+KTsKKyAgICB2b2lkIHNlbmRSZXN1bHRGb3JDYWNoZUVudHJ5KHN0
ZDo6dW5pcXVlX3B0cjxOZXR3b3JrQ2FjaGU6OkVudHJ5Pik7CisgICAgdm9pZCB2YWxpZGF0ZUNh
Y2hlRW50cnkoc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6RW50cnk+KTsKKyAgICB2b2lk
IGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0Rm9yQ2FjaGVFbnRyeShXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmJiwgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6RW50cnk+JiYpOworCisgICAg
Ym9vbCBzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmLCBj
b25zdCBVUkwmKTsKKyAgICBib29sIHNob3VsZEludGVycnVwdExvYWRGb3JDU1BGcmFtZUFuY2Vz
dG9yc09yWEZyYW1lT3B0aW9ucyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7Cisg
ICAgYm9vbCBzaG91bGRJbnRlcnJ1cHROYXZpZ2F0aW9uRm9yQ3Jvc3NPcmlnaW5FbWJlZGRlclBv
bGljeShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgYm9vbCBzaG91bGRJ
bnRlcnJ1cHRXb3JrZXJMb2FkRm9yQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeShjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisKKyAgICBlbnVtIGNsYXNzIEZpcnN0TG9hZCB7IE5v
LCBZZXMgfTsKKyAgICB2b2lkIHN0YXJ0TmV0d29ya0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYsIEZpcnN0TG9hZCk7CisgICAgdm9pZCByZXN0YXJ0TmV0d29ya0xvYWQoV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiYpOworICAgIHZvaWQgY29udGludWVEaWRSZWNlaXZlUmVzcG9uc2Uo
KTsKKyAgICB2b2lkIGRpZFJlY2VpdmVNYWluUmVzb3VyY2VSZXNwb25zZShjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJik7CisKKyAgICBlbnVtIGNsYXNzIExvYWRSZXN1bHQgeworICAg
ICAgICBVbmtub3duLAorICAgICAgICBTdWNjZXNzLAorICAgICAgICBGYWlsdXJlLAorICAgICAg
ICBDYW5jZWwKKyAgICB9OworICAgIHZvaWQgY2xlYW51cChMb2FkUmVzdWx0KTsKKyAgICAKKyAg
ICB2b2lkIHBsYXRmb3JtRGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKTsKKworICAgIHZvaWQgc3RhcnRCdWZmZXJpbmdUaW1lcklmTmVlZGVkKCk7Cisg
ICAgdm9pZCBidWZmZXJpbmdUaW1lckZpcmVkKCk7CisgICAgdm9pZCBzZW5kQnVmZmVyKFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlciYsIHNpemVfdCBlbmNvZGVkRGF0YUxlbmd0aCk7CisKKyAgICB2b2lk
IGNvbnN1bWVTYW5kYm94RXh0ZW5zaW9ucygpOworICAgIHZvaWQgaW52YWxpZGF0ZVNhbmRib3hF
eHRlbnNpb25zKCk7CisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElP
TikgJiYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlv
bigpIGNvbnN0OworI2VuZGlmCisKKyAgICB2b2lkIGNvbnRpbnVlV2lsbFNlbmRSZWRpcmVjdGVk
UmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYgcmVkaXJlY3RSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ6OkF0dHJpYnV0aW9uVHJp
Z2dlckRhdGE+JiYpOworICAgIHZvaWQgZGlkRmluaXNoV2l0aFJlZGlyZWN0UmVzcG9uc2UoV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlZGly
ZWN0UmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKKyAgICBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlIHNhbml0aXplUmVzcG9uc2VJZlBvc3NpYmxlKFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6U2FuaXRpemF0aW9uVHlw
ZSk7CisKKyAgICAvLyBDb250ZW50U2VjdXJpdHlQb2xpY3lDbGllbnQKKyAgICB2b2lkIGFkZENv
bnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiwg
dW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciA9IDApIGZpbmFsOworICAgIHZvaWQgc2Vu
ZENTUFZpb2xhdGlvblJlcG9ydChVUkwmJiwgUmVmPFdlYkNvcmU6OkZvcm1EYXRhPiYmKSBmaW5h
bDsKKyAgICB2b2lkIGVucXVldWVTZWN1cml0eVBvbGljeVZpb2xhdGlvbkV2ZW50KFdlYkNvcmU6
OlNlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQ6OkluaXQmJikgZmluYWw7CisKKyAgICB2b2lk
IGxvZ1Nsb3dDYWNoZVJldHJpZXZlSWZOZWVkZWQoY29uc3QgTmV0d29ya0NhY2hlOjpDYWNoZTo6
UmV0cmlldmVJbmZvJik7CisKKyAgICB2b2lkIGhhbmRsZVByaXZhdGVDbGlja01lYXN1cmVtZW50
Q29udmVyc2lvbihXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudDo6QXR0cmlidXRpb25U
cmlnZ2VyRGF0YSYmLCBjb25zdCBVUkwmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
KTsKKworICAgIHN0ZDo6b3B0aW9uYWw8U2Vjb25kcz4gdmFsaWRhdGVDYWNoZUVudHJ5Rm9yTWF4
QWdlQ2FwVmFsaWRhdGlvbihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlZGlyZWN0UmVxdWVzdCwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYpOworCisgICAgUmVzb3VyY2VMb2FkSW5mbyByZXNvdXJjZUxvYWRJ
bmZvKCk7CisKKyAgICBjb25zdCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyBtX3BhcmFt
ZXRlcnM7CisKKyAgICBSZWY8TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M+IG1fY29ubmVj
dGlvbjsKKworICAgIHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrTG9hZD4gbV9uZXR3b3JrTG9hZDsK
KworICAgIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgbV9yZXNwb25zZTsKKworICAgIHNpemVf
dCBtX2J1ZmZlcmVkRGF0YUVuY29kZWREYXRhTGVuZ3RoIHsgMCB9OworICAgIFJlZlB0cjxXZWJD
b3JlOjpTaGFyZWRCdWZmZXI+IG1fYnVmZmVyZWREYXRhOworICAgIHVuc2lnbmVkIG1fcmVkaXJl
Y3RDb3VudCB7IDAgfTsKKworICAgIHN0ZDo6dW5pcXVlX3B0cjxTeW5jaHJvbm91c0xvYWREYXRh
PiBtX3N5bmNocm9ub3VzTG9hZERhdGE7CisgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9i
RGF0YUZpbGVSZWZlcmVuY2U+PiBtX2ZpbGVSZWZlcmVuY2VzOworCisgICAgYm9vbCBtX3dhc1N0
YXJ0ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9kaWRDb25zdW1lU2FuZGJveEV4dGVuc2lvbnMg
eyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0FsbG93ZWRUb0Fza1VzZXJGb3JDcmVkZW50aWFscyB7
IGZhbHNlIH07CisgICAgc2l6ZV90IG1fbnVtQnl0ZXNSZWNlaXZlZCB7IDAgfTsKKworICAgIHVu
c2lnbmVkIG1fcmV0cmlldmVkRGVyaXZlZERhdGFDb3VudCB7IDAgfTsKKworICAgIFdlYkNvcmU6
OlRpbWVyIG1fYnVmZmVyaW5nVGltZXI7CisgICAgUmVmUHRyPE5ldHdvcmtDYWNoZTo6Q2FjaGU+
IG1fY2FjaGU7CisgICAgUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4gbV9idWZmZXJlZERh
dGFGb3JDYWNoZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya0NhY2hlOjpFbnRyeT4gbV9j
YWNoZUVudHJ5Rm9yVmFsaWRhdGlvbjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya0NhY2hl
OjpFbnRyeT4gbV9jYWNoZUVudHJ5Rm9yTWF4QWdlQ2FwVmFsaWRhdGlvbjsKKyAgICBib29sIG1f
aXNXYWl0aW5nQ29udGludWVXaWxsU2VuZFJlcXVlc3RGb3JDYWNoZWRSZWRpcmVjdCB7IGZhbHNl
IH07CisgICAgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtDYWNoZTo6RW50cnk+IG1fY2FjaGVFbnRy
eVdhaXRpbmdGb3JDb250aW51ZURpZFJlY2VpdmVSZXNwb25zZTsKKyAgICBzdGQ6OnVuaXF1ZV9w
dHI8TmV0d29ya0xvYWRDaGVja2VyPiBtX25ldHdvcmtMb2FkQ2hlY2tlcjsKKyAgICBib29sIG1f
c2hvdWxkUmVzdGFydExvYWQgeyBmYWxzZSB9OworICAgIFJlc3BvbnNlQ29tcGxldGlvbkhhbmRs
ZXIgbV9yZXNwb25zZUNvbXBsZXRpb25IYW5kbGVyOworICAgIGJvb2wgbV9zaG91bGRDYXB0dXJl
RXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0tlcHRBbGl2
ZSB7IGZhbHNlIH07CisKKyAgICBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+
IG1fbmV0d29ya0FjdGl2aXR5VHJhY2tlcjsKKyNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCisg
ICAgc3RkOjp1bmlxdWVfcHRyPFNlcnZpY2VXb3JrZXJGZXRjaFRhc2s+IG1fc2VydmljZVdvcmtl
ckZldGNoVGFzazsKKyNlbmRpZgorICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyIG1f
cmVzb3VyY2VMb2FkSUQ7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSBtX3JlZGlyZWN0
UmVzcG9uc2U7CisgICAgVVJMIG1fZmlyc3RSZXNwb25zZVVSTDsgLy8gRmlyc3QgVVJMIGluIHJl
c3BvbnNlJ3MgVVJMIGxpc3QgKGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0
LXJlc3BvbnNlLXVybC1saXN0KS4KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJjZS9X
ZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggZGM3NjNiZjFlODM0NGJiNWYz
ZDE3ZTY0NDk5NzlmOTYxZmZlYjZlOS4uZTVjZmUwZGE3MWMxMjk5MmM5NjY4NjAwZmM3NzlkZWVi
ZjcyYjE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdl
cy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBAIC0y
OTcsNiArMjk3LDcgQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2JlX2ZvcndhcmRfZGVjbGFyZWQo
KToKICAgICAgICAgJ1dlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VJZGVudGlmaWVyJywKICAg
ICAgICAgJ1dlYkNvcmU6OlJlbmRlcmluZ01vZGUnLAogICAgICAgICAnV2ViQ29yZTo6UmVuZGVy
aW5nUmVzb3VyY2VJZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlm
aWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyJywKICAgICAg
ICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJKb2JJZGVudGlmaWVyJywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAppbmRleCBkNWNhM2JiZmUw
ODBiZTdlODcwMmM1MjI1NWI5NWI5YjhlYjk5ZWI2Li41NzM3ZDljODNjMTUxYjhlODQ2MjFhNzJi
MTNmZWFkZTk4YWU5ZTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hl
bWVUYXNrUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHN0ZDo6b3B0aW9uYWw8VVJMU2No
ZW1lVGFza1BhcmFtZXRlcnM+IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpE
ZWNvCiAgICAgaWYgKCFoYW5kbGVySWRlbnRpZmllcikKICAgICAgICAgcmV0dXJuIHN0ZDo6bnVs
bG9wdDsKICAgICAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB0YXNrSWRlbnRpZmllcjsK
KyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gdGFz
a0lkZW50aWZpZXI7CiAgICAgZGVjb2RlciA+PiB0YXNrSWRlbnRpZmllcjsKICAgICBpZiAoIXRh
c2tJZGVudGlmaWVyKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKaW5kZXggNjc4MjM5NmIwZjlk
MDliM2JlZDJlZjQ5YmNiZDVjYzk1M2M2ZDU5NS4uMWI0ZDllYjI3ZGQwYjFlODYwNDdmN2FjM2Fk
MDY3MDNjNTNmMzNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNr
UGFyYW1ldGVycy5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
IkZyYW1lSW5mb0RhdGEuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAKIG5hbWVzcGFj
ZSBJUEMgewpAQCAtMzcsNyArMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RydWN0IFVS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsKICAgICB1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciB7
IDAgfTsKLSAgICB1aW50NjRfdCB0YXNrSWRlbnRpZmllciB7IDAgfTsKKyAgICBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXI7CiAgICAgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CiAgICAgRnJhbWVJbmZvRGF0YSBmcmFtZUluZm87CiAgICAg
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJv
Y2Vzc1Byb3h5LmNwcAppbmRleCAxY2RjZmNlMDZmOTVlNmI1MzEyNzVhODNlM2VmN2YwOTY4ZmU4
YTc3Li4zZjFlMmI5ZGVhNjRmY2I5NWZjNWE3YTE5YTgxMTcyYTIzZjUwMDBmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94
eS5jcHAKQEAgLTQ3Niw5ICs0NzYsOSBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnRlcm1p
bmF0ZVVucmVzcG9uc2l2ZVNlcnZpY2VXb3JrZXJQcm9jZXNzZXMoV2ViQ29yZTo6UAogICAgIH0K
IH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NU
cmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRpZmll
ciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2Vi
UHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJ
ZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cj4gcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9w
dGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCiB7Ci0gICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N3YXBwaW5nLCAiJXAgLSBOZXR3b3JrUHJv
Y2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zlcjogc291cmNlUHJvY2Vz
c0lkZW50aWZpZXI6ICUiIFBSSXU2NCAiLCByZXNvdXJjZUxvYWRJZGVudGlmaWVyOiAlIiBQUkl1
NjQsIHRoaXMsIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLnRvVUludDY0KCksIHJlc291cmNlTG9h
ZElkZW50aWZpZXIpOworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTd2FwcGluZywgIiVwIC0gTmV0
d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXI6IHNvdXJj
ZVByb2Nlc3NJZGVudGlmaWVyOiAlIiBQUkl1NjQgIiwgcmVzb3VyY2VMb2FkSWRlbnRpZmllcjog
JSIgUFJJdTY0LCB0aGlzLCBzb3VyY2VQcm9jZXNzSWRlbnRpZmllci50b1VJbnQ2NCgpLCByZXNv
dXJjZUxvYWRJZGVudGlmaWVyID8gcmVzb3VyY2VMb2FkSWRlbnRpZmllci0+dG9VSW50NjQoKSA6
IDApOwogICAgIGlmICghcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgewogICAgICAgICBjb21wbGV0
aW9uSGFuZGxlcih7IH0pOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCmluZGV4IDY5OWE4MjU5
ZWZhZGExMmJhZWZmMWNkZThiZTEwZDEzNjg0NWVkNjIuLjQ2MGZiMzJlODEwZTJmZmIyYzQ5Yjg1
ODk3OTI2MzZiN2JlYTBkOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05l
dHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCkBAIC0yMTQsNyArMjE0LDcgQEAgcHVibGlj
OgogICAgIHZvaWQgdGVzdFByb2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0aW5nRm9y
U3luY1JlcGx5KFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vz
c1Byb3h5OjpUZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGb3JTeW5j
UmVwbHlEZWxheWVkUmVwbHkmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVVbnJlc3BvbnNpdmVTZXJ2
aWNlV29ya2VyUHJvY2Vzc2VzKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyKTsKIAotICAgIHZv
aWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50
aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcj4pPiYmKTsKKyAgICB2b2lkIHByZXBhcmVMb2FkRm9yV2ViUHJvY2Vz
c1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlm
aWVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4sIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRl
bnRpZmllcj4pPiYmKTsKIAogICAgIFByb2Nlc3NUaHJvdHRsZXImIHRocm90dGxlcigpIGZpbmFs
IHsgcmV0dXJuIG1fdGhyb3R0bGVyOyB9CiAgICAgdm9pZCB1cGRhdGVQcm9jZXNzQXNzZXJ0aW9u
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5j
cHAKaW5kZXggZjY1YjhhNDg3YzJlNmMwMWNiMzA5YTNjZDg1MGE1YzNlMzNjYjZmMC4uYjA5MTli
OGNiNGE1YTQzMzJlZjg4MmRiNWE0NGEyYzM0MDkyNGJlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcApAQCAtMzMzLDcgKzMzMyw3IEBA
IHZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b25Bc3luYyhGcmFtZUlkZW50aWZpZXIKICAgICBtX3BhZ2UuZGVjaWRlUG9saWN5Rm9yTmF2aWdh
dGlvbkFjdGlvbkFzeW5jU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlELCBm
cmFtZUlELCBXVEZNb3ZlKGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwgV1RG
TW92ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIFdURk1vdmUob3JpZ2luYXRpbmdGcmFtZUluZm8p
LCBvcmlnaW5hdGluZ1BhZ2VJRCwgb3JpZ2luYWxSZXF1ZXN0LCBXVEZNb3ZlKHJlcXVlc3QpLCBX
VEZNb3ZlKHJlcXVlc3RCb2R5KSwgV1RGTW92ZShyZWRpcmVjdFJlc3BvbnNlKSwgdXNlckRhdGEs
IGxpc3RlbmVySUQpOwogfQogCi12b2lkIFByb3Zpc2lvbmFsUGFnZVByb3h5OjpkZWNpZGVQb2xp
Y3lGb3JSZXNwb25zZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZy
YW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2
NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBjYW5TaG93
TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dl
ZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJv
d3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9h
ZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0
YSkKK3ZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlKEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBXZWJDb3Jl
OjpQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklE
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3Qg
U3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRs
ZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91
cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQs
IGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKIHsKICAgICBpZiAoIXZhbGlkYXRlSW5wdXQoZnJh
bWVJRCwgbmF2aWdhdGlvbklEKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmgKaW5kZXggZDc4YzM4ZTAwNTIwZDhjODQw
ZTM3MTEyOWIyZTQ1NGViODlhYTYwNy4uYTVkZWNmZjJmN2U5MjEzZDdkM2JlZGEwZGJjMzZkNmQ5
OTU0YzNkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQ
YWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQ
cm94eS5oCkBAIC0xMjUsNyArMTI1LDcgQEAgcHJpdmF0ZToKICAgICBib29sIHNlbmRNZXNzYWdl
KFVuaXF1ZVJlZjxJUEM6OkVuY29kZXI+JiYsIE9wdGlvblNldDxJUEM6OlNlbmRPcHRpb24+LCBz
dGQ6Om9wdGlvbmFsPHN0ZDo6cGFpcjxDb21wbGV0aW9uSGFuZGxlcjx2b2lkKElQQzo6RGVjb2Rl
ciopPiwgdWludDY0X3Q+PiYmKSBmaW5hbDsKIAogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbkFzeW5jKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0
YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25J
RCwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwgRnJhbWVJbmZvRGF0YSYmIG9yaWdpbmF0aW5nRnJh
bWVJbmZvLCBzdGQ6Om9wdGlvbmFsPFdlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdpbmF0aW5n
UGFnZUlELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVzdCwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiByZXF1
ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IFVzZXJEYXRhJiwgdWludDY0X3QgbGlzdGVuZXJJRCk7Ci0gICAgdm9pZCBkZWNpZGVQb2xp
Y3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5mb0RhdGEmJiwg
V2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJp
YnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29yZTo6QnJvd3NpbmdD
b250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbGlzdGVuZXJJRCwgdWludDY0X3Qg
bWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFVzZXJEYXRhJik7CisgICAgdm9pZCBk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5m
b0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3du
bG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29yZTo6
QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25hbDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1
aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgZGlkQ2hhbmdl
UHJvdmlzaW9uYWxVUkxGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIHVpbnQ2NF90
IG5hdmlnYXRpb25JRCwgVVJMJiYpOwogICAgIHZvaWQgZGlkUGVyZm9ybVNlcnZlclJlZGlyZWN0
KGNvbnN0IFN0cmluZyYgc291cmNlVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIGRlc3RpbmF0aW9u
VVJMU3RyaW5nLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIpOwogICAgIHZvaWQgZGlkUmVjZWl2
ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUoV2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmLCBjb25zdCBVc2VyRGF0YSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAKaW5kZXggYzExMTcxNDczZTI0ODYwOGFlOTdmMzU5NGYzOTUyNTUyY2FhNjAxYi4uN2Vh
Zjc5OTRkODAwNjliYTlmMTQxZjFhZjI0Y2Q3Njk0MjY0ZGZmMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01NjMwLDEyICs1NjMwLDEyIEBAIHZvaWQgV2Vi
UGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oRnJhbWVJZGVudGlmaWVy
IGZyYW1lSUQsIEZyYW1lCiAKIHZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JSZXNw
b25zZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywg
UG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsCiAgICAgdWludDY0X3QgbmF2aWdhdGlv
bklELCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9h
ZEF0dHJpYnV0ZSwKLSAgICBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVj
aXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0
ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCisgICAgYm9vbCB3YXNBbGxvd2VkQnlJ
bmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKIHsKICAgICBkZWNpZGVQb2xp
Y3lGb3JSZXNwb25zZVNoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dlYlBhZ2VJRCwgZnJh
bWVJRCwgV1RGTW92ZShmcmFtZUluZm8pLCBpZGVudGlmaWVyLCBuYXZpZ2F0aW9uSUQsIHJlc3Bv
bnNlLCByZXF1ZXN0LCBjYW5TaG93TUlNRVR5cGUsIGRvd25sb2FkQXR0cmlidXRlLCB3YXNBbGxv
d2VkQnlJbmplY3RlZEJ1bmRsZSwgYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwg
bWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIGxpc3RlbmVySUQsIHVzZXJEYXRhKTsKIH0KIAot
dm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJlZjxXZWJQ
cm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgUG9saWN5Q2hlY2tJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9v
bCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wg
d2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVj
aXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJl
c291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRh
JiB1c2VyRGF0YSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNo
YXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2VJZGVudGlmaWVyIHdlYlBh
Z2VJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8s
IFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93c2luZ0NvbnRleHRH
cm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0
ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVz
ZXJEYXRhKQogewogICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQo
KSk7CiAKQEAgLTEwMDAyLDcgKzEwMDAyLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnN0YXJ0VVJM
U2NoZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2UKICAg
ICBpdGVyYXRvci0+dmFsdWUtPnN0YXJ0VGFzaygqdGhpcywgcHJvY2Vzcywgd2ViUGFnZUlELCBX
VEZNb3ZlKHBhcmFtZXRlcnMpLCBudWxscHRyKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OnN0
b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNr
SWRlbnRpZmllcikKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRf
dCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRh
c2tJZGVudGlmaWVyKQogewogICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBkZWNsdHlwZSht
X3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6aXNWYWxpZEtleShoYW5kbGVySWRlbnRp
ZmllcikpOwogICAgIGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlm
aWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcC5vcmlnIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcC5vcmlnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMxMTE3MTQ3M2UyNDg2MDhhZTk3ZjM1
OTRmMzk1MjU1MmNhYTYwMWIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwLm9yaWcKQEAgLTAsMCArMSwxMDkyOSBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMC0yMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMiBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYlBhZ2VQcm94
eS5oIgorCisjaW5jbHVkZSAiQVBJQXJyYXkuaCIKKyNpbmNsdWRlICJBUElBdHRhY2htZW50Lmgi
CisjaW5jbHVkZSAiQVBJQ29udGVudFdvcmxkLmgiCisjaW5jbHVkZSAiQVBJQ29udGV4dE1lbnVD
bGllbnQuaCIKKyNpbmNsdWRlICJBUElEaWN0aW9uYXJ5LmgiCisjaW5jbHVkZSAiQVBJRmluZENs
aWVudC5oIgorI2luY2x1ZGUgIkFQSUZpbmRNYXRjaGVzQ2xpZW50LmgiCisjaW5jbHVkZSAiQVBJ
Rm9ybUNsaWVudC5oIgorI2luY2x1ZGUgIkFQSUZyYW1lSW5mby5oIgorI2luY2x1ZGUgIkFQSUZ1
bGxzY3JlZW5DbGllbnQuaCIKKyNpbmNsdWRlICJBUElHZW9tZXRyeS5oIgorI2luY2x1ZGUgIkFQ
SUhpc3RvcnlDbGllbnQuaCIKKyNpbmNsdWRlICJBUElIaXRUZXN0UmVzdWx0LmgiCisjaW5jbHVk
ZSAiQVBJSWNvbkxvYWRpbmdDbGllbnQuaCIKKyNpbmNsdWRlICJBUElMZWdhY3lDb250ZXh0SGlz
dG9yeUNsaWVudC5oIgorI2luY2x1ZGUgIkFQSUxvYWRlckNsaWVudC5oIgorI2luY2x1ZGUgIkFQ
SU5hdmlnYXRpb24uaCIKKyNpbmNsdWRlICJBUElOYXZpZ2F0aW9uQWN0aW9uLmgiCisjaW5jbHVk
ZSAiQVBJTmF2aWdhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIkFQSU5hdmlnYXRpb25SZXNwb25z
ZS5oIgorI2luY2x1ZGUgIkFQSU9wZW5QYW5lbFBhcmFtZXRlcnMuaCIKKyNpbmNsdWRlICJBUElQ
YWdlQ29uZmlndXJhdGlvbi5oIgorI2luY2x1ZGUgIkFQSVBvbGljeUNsaWVudC5oIgorI2luY2x1
ZGUgIkFQSVJlc291cmNlTG9hZENsaWVudC5oIgorI2luY2x1ZGUgIkFQSVNlY3VyaXR5T3JpZ2lu
LmgiCisjaW5jbHVkZSAiQVBJVUlDbGllbnQuaCIKKyNpbmNsdWRlICJBUElVUkxSZXF1ZXN0Lmgi
CisjaW5jbHVkZSAiQVBJV2Vic2l0ZVBvbGljaWVzLmgiCisjaW5jbHVkZSAiQXV0aGVudGljYXRp
b25DaGFsbGVuZ2VQcm94eS5oIgorI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uRGVjaXNpb25MaXN0
ZW5lci5oIgorI2luY2x1ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgorI2luY2x1ZGUgIkF1
dGhlbnRpY2F0b3JNYW5hZ2VyLmgiCisjaW5jbHVkZSAiRG93bmxvYWRNYW5hZ2VyLmgiCisjaW5j
bHVkZSAiRG93bmxvYWRQcm94eS5oIgorI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZXMuaCIK
KyNpbmNsdWRlICJEcmF3aW5nQXJlYVByb3h5LmgiCisjaW5jbHVkZSAiRXZlbnREaXNwYXRjaGVy
TWVzc2FnZXMuaCIKKyNpbmNsdWRlICJGb3JtRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1ZGUgIkZy
YW1lSW5mb0RhdGEuaCIKKyNpbmNsdWRlICJMZWdhY3lHbG9iYWxTZXR0aW5ncy5oIgorI2luY2x1
ZGUgIkxvYWRQYXJhbWV0ZXJzLmgiCisjaW5jbHVkZSAiTG9nSW5pdGlhbGl6YXRpb24uaCIKKyNp
bmNsdWRlICJMb2dnaW5nLmgiCisjaW5jbHVkZSAiTmF0aXZlV2ViR2VzdHVyZUV2ZW50LmgiCisj
aW5jbHVkZSAiTmF0aXZlV2ViS2V5Ym9hcmRFdmVudC5oIgorI2luY2x1ZGUgIk5hdGl2ZVdlYk1v
dXNlRXZlbnQuaCIKKyNpbmNsdWRlICJOYXRpdmVXZWJXaGVlbEV2ZW50LmgiCisjaW5jbHVkZSAi
TmF2aWdhdGlvbkFjdGlvbkRhdGEuaCIKKyNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc01lc3NhZ2Vz
LmgiCisjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3NQcm94eS5oIgorI2luY2x1ZGUgIk5vdGlmaWNh
dGlvblBlcm1pc3Npb25SZXF1ZXN0LmgiCisjaW5jbHVkZSAiTm90aWZpY2F0aW9uUGVybWlzc2lv
blJlcXVlc3RNYW5hZ2VyLmgiCisjaW5jbHVkZSAiUGFnZUNsaWVudC5oIgorI2luY2x1ZGUgIlBs
dWdpbkluZm9ybWF0aW9uLmgiCisjaW5jbHVkZSAiUGx1Z2luUHJvY2Vzc01hbmFnZXIuaCIKKyNp
bmNsdWRlICJQcmludEluZm8uaCIKKyNpbmNsdWRlICJQcm9jZXNzVGhyb3R0bGVyLmgiCisjaW5j
bHVkZSAiUHJvdmlzaW9uYWxQYWdlUHJveHkuaCIKKyNpbmNsdWRlICJTYWZlQnJvd3NpbmdXYXJu
aW5nLmgiCisjaW5jbHVkZSAiU2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1ZGUg
IlNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXIuaCIKKyNpbmNsdWRlICJTcGVlY2hS
ZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2UuaCIKKyNpbmNsdWRlICJTcGVlY2hS
ZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAi
U3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlLmgiCisjaW5jbHVkZSAiVGV4dENoZWNrZXIuaCIK
KyNpbmNsdWRlICJUZXh0Q2hlY2tlclN0YXRlLmgiCisjaW5jbHVkZSAiVGV4dFJlY29nbml0aW9u
VXBkYXRlUmVzdWx0LmgiCisjaW5jbHVkZSAiVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaCIKKyNp
bmNsdWRlICJVbmRvT3JSZWRvLmgiCisjaW5jbHVkZSAiVXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RQcm94eS5oIgorI2luY2x1ZGUgIlVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyLmgiCisjaW5jbHVk
ZSAiV0tDb250ZXh0UHJpdmF0ZS5oIgorI2luY2x1ZGUgIldlYkF1dG9tYXRpb25TZXNzaW9uLmgi
CisjaW5jbHVkZSAiV2ViQmFja0ZvcndhcmRDYWNoZS5oIgorI2luY2x1ZGUgIldlYkJhY2tGb3J3
YXJkTGlzdC5oIgorI2luY2x1ZGUgIldlYkJhY2tGb3J3YXJkTGlzdENvdW50cy5oIgorI2luY2x1
ZGUgIldlYkJhY2tGb3J3YXJkTGlzdEl0ZW0uaCIKKyNpbmNsdWRlICJXZWJDZXJ0aWZpY2F0ZUlu
Zm8uaCIKKyNpbmNsdWRlICJXZWJDb250ZXh0TWVudUl0ZW0uaCIKKyNpbmNsdWRlICJXZWJDb250
ZXh0TWVudVByb3h5LmgiCisjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCisjaW5j
bHVkZSAiV2ViRWRpdENvbW1hbmRQcm94eS5oIgorI2luY2x1ZGUgIldlYkV2ZW50Q29udmVyc2lv
bi5oIgorI2luY2x1ZGUgIldlYkZyYW1lLmgiCisjaW5jbHVkZSAiV2ViRnJhbWVQb2xpY3lMaXN0
ZW5lclByb3h5LmgiCisjaW5jbHVkZSAiV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eS5oIgorI2lu
Y2x1ZGUgIldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHlNZXNzYWdlcy5oIgorI2luY2x1ZGUgIldl
YkltYWdlLmgiCisjaW5jbHVkZSAiV2ViSW5zcGVjdG9yVUlQcm94eS5oIgorI2luY2x1ZGUgIldl
Ykluc3BlY3RvclV0aWxpdGllcy5oIgorI2luY2x1ZGUgIldlYktleWJvYXJkRXZlbnQuaCIKKyNp
bmNsdWRlICJXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlLmgiCisjaW5jbHVkZSAiV2ViTmF2aWdhdGlv
blN0YXRlLmgiCisjaW5jbHVkZSAiV2ViTm90aWZpY2F0aW9uTWFuYWdlclByb3h5LmgiCisjaW5j
bHVkZSAiV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXJQcm94eS5oIgorI2luY2x1ZGUgIldlYlBh
Z2UuaCIKKyNpbmNsdWRlICJXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCisjaW5jbHVkZSAi
V2ViUGFnZURlYnVnZ2FibGUuaCIKKyNpbmNsdWRlICJXZWJQYWdlR3JvdXAuaCIKKyNpbmNsdWRl
ICJXZWJQYWdlR3JvdXBEYXRhLmgiCisjaW5jbHVkZSAiV2ViUGFnZUluc3BlY3RvckNvbnRyb2xs
ZXIuaCIKKyNpbmNsdWRlICJXZWJQYWdlTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJQYWdlTmV0
d29ya1BhcmFtZXRlcnMuaCIKKyNpbmNsdWRlICJXZWJQYWdlUHJveHlNZXNzYWdlcy5oIgorI2lu
Y2x1ZGUgIldlYlBhc3RlYm9hcmRQcm94eS5oIgorI2luY2x1ZGUgIldlYlBheW1lbnRDb29yZGlu
YXRvclByb3h5LmgiCisjaW5jbHVkZSAiV2ViUG9wdXBJdGVtLmgiCisjaW5jbHVkZSAiV2ViUG9w
dXBNZW51UHJveHkuaCIKKyNpbmNsdWRlICJXZWJQcmVmZXJlbmNlcy5oIgorI2luY2x1ZGUgIldl
YlByZWZlcmVuY2VzS2V5cy5oIgorI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKKyNpbmNsdWRlICJX
ZWJQcm9jZXNzTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJQcm9jZXNzUG9vbC5oIgorI2luY2x1
ZGUgIldlYlByb2Nlc3NQcm94eS5oIgorI2luY2x1ZGUgIldlYlByb3RlY3Rpb25TcGFjZS5oIgor
I2luY2x1ZGUgIldlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5oIgorI2luY2x1ZGUgIldl
YlVSTFNjaGVtZUhhbmRsZXIuaCIKKyNpbmNsdWRlICJXZWJVc2VyQ29udGVudENvbnRyb2xsZXJQ
cm94eS5oIgorI2luY2x1ZGUgIldlYlZpZXdEaWRNb3ZlVG9XaW5kb3dPYnNlcnZlci5oIgorI2lu
Y2x1ZGUgIldlYldoZWVsRXZlbnRDb2FsZXNjZXIuaCIKKyNpbmNsdWRlICJXZWJzaXRlRGF0YVN0
b3JlLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9BcHBIaWdobGlnaHQuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL0JpdG1hcEltYWdlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Db21wb3NpdGlvbkhpZ2hsaWdo
dC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvQ3Jvc3NTaXRlTmF2aWdhdGlvbkRhdGFUcmFuc2Zlci5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvRE9NUGFzdGVBY2Nlc3MuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L0RlcHJlY2F0ZWRHbG9iYWxTZXR0aW5ncy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRGlhZ25vc3Rp
Y0xvZ2dpbmdDbGllbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0RpYWdub3N0aWNMb2dnaW5nS2V5
cy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRHJhZ0NvbnRyb2xsZXIuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL0RyYWdEYXRhLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9FbGVtZW50Q29udGV4dC5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvRXZlbnROYW1lcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRXhjZXB0aW9u
RGV0YWlscy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRmxvYXRSZWN0Lmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9Gb2N1c0RpcmVjdGlvbi5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRm9udEF0dHJpYnV0ZUNo
YW5nZXMuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9HbG9iYWxGcmFtZUlkZW50aWZpZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0dsb2JhbFdp
bmRvd0lkZW50aWZpZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0xlbmd0aEJveC5oPgorI2luY2x1
ZGUgPFdlYkNvcmUvTUlNRVR5cGVSZWdpc3RyeS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFT
dHJlYW1SZXF1ZXN0Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9QZXJmb3JtYW5jZUxvZ2dpbmdDbGll
bnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Blcm1pc3Npb25TdGF0ZS5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvUGxhdGZvcm1FdmVudC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUHJpdmF0ZUNsaWNrTWVh
c3VyZW1lbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1B1YmxpY1N1ZmZpeC5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvUmVuZGVyRW1iZWRkZWRPYmplY3QuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZFN0YXRpc3RpY3MuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVBcHBsaWNhdGlv
bkNoZWNrcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oPgor
I2luY2x1ZGUgPFdlYkNvcmUvU1NMS2V5R2VuZXJhdG9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9T
ZXJpYWxpemVkQ3J5cHRvS2V5V3JhcC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVEYXRhLmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1No
b3VsZFRyZWF0QXNDb250aW51aW5nTG9hZC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU3RvcmVkQ3Jl
ZGVudGlhbHNQb2xpY3kuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1RleHRDaGVja2VyQ2xpZW50Lmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9W
YWxpZGF0aW9uQnViYmxlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9XaW5kb3dGZWF0dXJlcy5oPgor
I2luY2x1ZGUgPFdlYkNvcmUvV3JpdGluZ0RpcmVjdGlvbi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+
CisjaW5jbHVkZSA8d3RmL0NhbGxiYWNrQWdncmVnYXRvci5oPgorI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9TY29wZS5oPgorI2luY2x1ZGUgPHd0Zi9TeXN0
ZW1UcmFjaW5nLmg+CisjaW5jbHVkZSA8d3RmL1VSTC5oPgorI2luY2x1ZGUgPHd0Zi9VUkxQYXJz
ZXIuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z1ZpZXcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CisKKyNpZiBFTkFCTEUo
QVBQTElDQVRJT05fTUFOSUZFU1QpCisjaW5jbHVkZSAiQVBJQXBwbGljYXRpb25NYW5pZmVzdC5o
IgorI2VuZGlmCisKKyNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBQTEFURk9STShDT0NP
QSkKKyNpbmNsdWRlICJSZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclByb3h5LmgiCisjZW5kaWYK
KworI2lmbmRlZiBOREVCVUcKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+
CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUgIkluc2VydFRleHRPcHRp
b25zLmgiCisjaW5jbHVkZSAiUXVpY2tMb29rUHJldmlld0FjdGl2aXR5LmgiCisjaW5jbHVkZSAi
UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eS5oIgorI2luY2x1ZGUgIlJlbW90ZUxheWVy
VHJlZVNjcm9sbGluZ1BlcmZvcm1hbmNlRGF0YS5oIgorI2luY2x1ZGUgIlVzZXJNZWRpYUNhcHR1
cmVNYW5hZ2VyUHJveHkuaCIKKyNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHku
aCIKKyNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHlNZXNzYWdlcy5oIgorI2lu
Y2x1ZGUgPFdlYkNvcmUvQXR0cmlidXRlZFN0cmluZy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUnVu
TG9vcE9ic2VydmVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TeXN0ZW1CYXR0ZXJ5Lmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9WZXJzaW9uQ2hlY2tzLmg+CisjaW5jbHVkZSA8d3RmL01hY2hTZW5kUmln
aHQuaD4KKyNpbmNsdWRlIDx3dGYvY29jb2EvRW50aXRsZW1lbnRzLmg+CisjZW5kaWYKKworI2lm
IFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJEaXNwbGF5TGluay5oIgorI2luY2x1ZGUgPFdlYkNv
cmUvSW1hZ2VVdGlsaXRpZXMuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VUSVV0aWxpdGllcy5oPgor
I2VuZGlmCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKKyNpbmNsdWRlICJUb3VjaEJhck1lbnVEYXRh
LmgiCisjaW5jbHVkZSAiVG91Y2hCYXJNZW51SXRlbURhdGEuaCIKKyNlbmRpZgorCisjaWYgUExB
VEZPUk0oQ09DT0EpIHx8IFBMQVRGT1JNKEdUSykKKyNpbmNsdWRlICJWaWV3U25hcHNob3RTdG9y
ZS5oIgorI2VuZGlmCisKKyNpZiBQTEFURk9STShHVEspCisjaW5jbHVkZSAiR3RrU2V0dGluZ3NN
YW5hZ2VyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9TZWxlY3Rpb25EYXRhLmg+CisjZW5kaWYKKwor
I2lmIFVTRShDQUlSTykKKyNpbmNsdWRlIDxXZWJDb3JlL0NhaXJvVXRpbGl0aWVzLmg+CisjZW5k
aWYKKworI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9STShJ
T1NfRkFNSUxZKQorI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFQbGF5YmFja1RhcmdldC5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvV2ViTWVkaWFTZXNzaW9uTWFuYWdlci5oPgorI2VuZGlmCisKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpKQorI2luY2x1ZGUgIlBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5o
IgorI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCX0FVVEhOKQorI2luY2x1ZGUgIldlYkF1dGhlbnRp
Y2F0b3JDb29yZGluYXRvclByb3h5LmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShSRU1PVEVfSU5T
UEVDVE9SKQorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1JlbW90ZUluc3BlY3Rvci5oPgorI2Vu
ZGlmCisKKyNpZiBIQVZFKFNFQ19LRVlfUFJPWFkpCisjaW5jbHVkZSAiU2VjS2V5UHJveHlTdG9y
ZS5oIgorI2VuZGlmCisKKyNpZiBIQVZFKEFQUF9TU08pCisjaW5jbHVkZSAiU09BdXRob3JpemF0
aW9uQ29vcmRpbmF0b3IuaCIKKyNlbmRpZgorCisjaWYgVVNFKERJUkVDVDJEKQorI2luY2x1ZGUg
PGQzZDExXzEuaD4KKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxF
KERFVklDRV9PUklFTlRBVElPTikKKyNpbmNsdWRlICJXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0
ZVByb3ZpZGVyUHJveHkuaCIKKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQor
I2luY2x1ZGUgIkRhdGFEZXRlY3Rpb25SZXN1bHQuaCIKKyNlbmRpZgorCisjaWYgRU5BQkxFKE1F
RElBX1VTQUdFKQorI2luY2x1ZGUgIk1lZGlhVXNhZ2VNYW5hZ2VyLmgiCisjZW5kaWYKKworI2lm
IFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUgIkRlZmF1bHRXZWJCcm93c2VyQ2hlY2tzLmgiCisj
ZW5kaWYKKworI2lmIEVOQUJMRShEQVRFX0FORF9USU1FX0lOUFVUX1RZUEVTKQorI2luY2x1ZGUg
IldlYkRhdGVUaW1lUGlja2VyLmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShNRURJQV9TRVNTSU9O
X0NPT1JESU5BVE9SKQorI2luY2x1ZGUgIk1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yUHJveHlQcml2
YXRlLmgiCisjaW5jbHVkZSAiUmVtb3RlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcm94eS5oIgor
I2VuZGlmCisKKyNpZiBIQVZFKEdST1VQX0FDVElWSVRJRVMpCisjaW5jbHVkZSAiR3JvdXBBY3Rp
dml0aWVzU2Vzc2lvbk5vdGlmaWVyLmgiCisjZW5kaWYKKworI2lmIEVOQUJMRShBUFBfSElHSExJ
R0hUUykKKyNpbmNsdWRlIDxXZWJDb3JlL0hpZ2hsaWdodFZpc2liaWxpdHkuaD4KKyNlbmRpZgor
CisvLyBUaGlzIGNvbnRyb2xzIHdoYXQgc3RyYXRlZ3kgd2UgdXNlIGZvciBtb3VzZSB3aGVlbCBj
b2FsZXNjaW5nLgorI2RlZmluZSBNRVJHRV9XSEVFTF9FVkVOVFMgMQorCisjZGVmaW5lIE1FU1NB
R0VfQ0hFQ0socHJvY2VzcywgYXNzZXJ0aW9uKSBNRVNTQUdFX0NIRUNLX0JBU0UoYXNzZXJ0aW9u
LCBwcm9jZXNzLT5jb25uZWN0aW9uKCkpCisjZGVmaW5lIE1FU1NBR0VfQ0hFQ0tfVVJMKHByb2Nl
c3MsIHVybCkgTUVTU0FHRV9DSEVDS19CQVNFKGNoZWNrVVJMUmVjZWl2ZWRGcm9tQ3VycmVudE9y
UHJldmlvdXNXZWJQcm9jZXNzKHByb2Nlc3MsIHVybCksIHByb2Nlc3MtPmNvbm5lY3Rpb24oKSkK
KyNkZWZpbmUgTUVTU0FHRV9DSEVDS19DT01QTEVUSU9OKHByb2Nlc3MsIGFzc2VydGlvbiwgY29t
cGxldGlvbikgTUVTU0FHRV9DSEVDS19DT01QTEVUSU9OX0JBU0UoYXNzZXJ0aW9uLCBwcm9jZXNz
LT5jb25uZWN0aW9uKCksIGNvbXBsZXRpb24pCisKKyNkZWZpbmUgV0VCUEFHRVBST1hZX1JFTEVB
U0VfTE9HKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhjaGFubmVsLCAiJXAgLSBbcGFn
ZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgUElEPSVpXSBXZWJQ
YWdlUHJveHk6OiIgZm10LCB0aGlzLCBtX2lkZW50aWZpZXIudG9VSW50NjQoKSwgbV93ZWJQYWdl
SUQudG9VSW50NjQoKSwgbV9wcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpLCAjI19fVkFfQVJH
U19fKQorI2RlZmluZSBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgZm10
LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQ
Ukl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBQSUQ9JWldIFdlYlBhZ2VQcm94eTo6IiBm
bXQsIHRoaXMsIG1faWRlbnRpZmllci50b1VJbnQ2NCgpLCBtX3dlYlBhZ2VJRC50b1VJbnQ2NCgp
LCBtX3Byb2Nlc3MtPnByb2Nlc3NJZGVudGlmaWVyKCksICMjX19WQV9BUkdTX18pCisKKy8vIFJl
cHJlc2VudHMgdGhlIG51bWJlciBvZiB3aGVlbCBldmVudHMgd2UgY2FuIGhvbGQgaW4gdGhlIHF1
ZXVlIGJlZm9yZSB3ZSBzdGFydCBwdXNoaW5nIHRoZW0gcHJlZW1wdGl2ZWx5Lgorc3RhdGljIGNv
bnN0IHVuc2lnbmVkIHdoZWVsRXZlbnRRdWV1ZVNpemVUaHJlc2hvbGQgPSAxMDsKKworc3RhdGlj
IGNvbnN0IFNlY29uZHMgcmVzZXRSZWNlbnRDcmFzaENvdW50RGVsYXkgPSAzMF9zOworc3RhdGlj
IHVuc2lnbmVkIG1heGltdW1XZWJQcm9jZXNzUmVsYXVuY2hBdHRlbXB0cyA9IDE7CitzdGF0aWMg
Y29uc3QgU2Vjb25kcyBhdWRpYmxlQWN0aXZpdHlDbGVhckRlbGF5ID0gMTBfczsKK3N0YXRpYyBj
b25zdCBTZWNvbmRzIHRyeUNsb3NlVGltZW91dERlbGF5ID0gNTBfbXM7CisKK25hbWVzcGFjZSBX
ZWJLaXQgewordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CisKK0RFRklORV9ERUJVR19PTkxZX0dM
T0JBTChXVEY6OlJlZkNvdW50ZWRMZWFrQ291bnRlciwgd2ViUGFnZVByb3h5Q291bnRlciwgKCJX
ZWJQYWdlUHJveHkiKSk7CisKK2NsYXNzIFN0b3JhZ2VSZXF1ZXN0cyB7CisgICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoU3RvcmFnZVJlcXVlc3RzKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Cisg
ICAgZnJpZW5kIE5ldmVyRGVzdHJveWVkPFN0b3JhZ2VSZXF1ZXN0cz47CitwdWJsaWM6CisgICAg
c3RhdGljIFN0b3JhZ2VSZXF1ZXN0cyYgc2luZ2xldG9uKCk7CisKKyAgICB2b2lkIHByb2Nlc3NP
ckFwcGVuZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCisg
ICAgeworICAgICAgICBpZiAobV9yZXF1ZXN0c0FyZUJlaW5nUHJvY2Vzc2VkKSB7CisgICAgICAg
ICAgICBtX3JlcXVlc3RzLmFwcGVuZChXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgbV9yZXF1ZXN0c0FyZUJlaW5nUHJv
Y2Vzc2VkID0gdHJ1ZTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB9CisKKyAg
ICB2b2lkIHByb2Nlc3NOZXh0SWZBbnkoKQorICAgIHsKKyAgICAgICAgaWYgKG1fcmVxdWVzdHMu
aXNFbXB0eSgpKSB7CisgICAgICAgICAgICBtX3JlcXVlc3RzQXJlQmVpbmdQcm9jZXNzZWQgPSBm
YWxzZTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBtX3JlcXVlc3Rz
LnRha2VGaXJzdCgpKCk7CisgICAgfQorCitwcml2YXRlOgorICAgIFN0b3JhZ2VSZXF1ZXN0cygp
IHsgfQorICAgIH5TdG9yYWdlUmVxdWVzdHMoKSB7IH0KKworICAgIERlcXVlPENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4+IG1fcmVxdWVzdHM7CisgICAgYm9vbCBtX3JlcXVlc3RzQXJlQmVpbmdQ
cm9jZXNzZWQgeyBmYWxzZSB9OworfTsKKworU3RvcmFnZVJlcXVlc3RzJiBTdG9yYWdlUmVxdWVz
dHM6OnNpbmdsZXRvbigpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFN0b3JhZ2VSZXF1
ZXN0cz4gcmVxdWVzdHM7CisgICAgcmV0dXJuIHJlcXVlc3RzOworfQorCisjaWYgIUxPR19ESVNB
QkxFRAorc3RhdGljIGNvbnN0IGNoYXIqIHdlYk1vdXNlRXZlbnRUeXBlU3RyaW5nKFdlYkV2ZW50
OjpUeXBlIHR5cGUpCit7CisgICAgc3dpdGNoICh0eXBlKSB7CisgICAgY2FzZSBXZWJFdmVudDo6
TW91c2VEb3duOgorICAgICAgICByZXR1cm4gIk1vdXNlRG93biI7CisgICAgY2FzZSBXZWJFdmVu
dDo6TW91c2VVcDoKKyAgICAgICAgcmV0dXJuICJNb3VzZVVwIjsKKyAgICBjYXNlIFdlYkV2ZW50
OjpNb3VzZU1vdmU6CisgICAgICAgIHJldHVybiAiTW91c2VNb3ZlIjsKKyAgICBjYXNlIFdlYkV2
ZW50OjpNb3VzZUZvcmNlQ2hhbmdlZDoKKyAgICAgICAgcmV0dXJuICJNb3VzZUZvcmNlQ2hhbmdl
ZCI7CisgICAgY2FzZSBXZWJFdmVudDo6TW91c2VGb3JjZURvd246CisgICAgICAgIHJldHVybiAi
TW91c2VGb3JjZURvd24iOworICAgIGNhc2UgV2ViRXZlbnQ6Ok1vdXNlRm9yY2VVcDoKKyAgICAg
ICAgcmV0dXJuICJNb3VzZUZvcmNlVXAiOworICAgIGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gIjx1bmtub3duPiI7CisgICAgfQorfQorCitz
dGF0aWMgY29uc3QgY2hhciogd2ViS2V5Ym9hcmRFdmVudFR5cGVTdHJpbmcoV2ViRXZlbnQ6OlR5
cGUgdHlwZSkKK3sKKyAgICBzd2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIFdlYkV2ZW50OjpLZXlE
b3duOgorICAgICAgICByZXR1cm4gIktleURvd24iOworICAgIGNhc2UgV2ViRXZlbnQ6OktleVVw
OgorICAgICAgICByZXR1cm4gIktleVVwIjsKKyAgICBjYXNlIFdlYkV2ZW50OjpSYXdLZXlEb3du
OgorICAgICAgICByZXR1cm4gIlJhd0tleURvd24iOworICAgIGNhc2UgV2ViRXZlbnQ6OkNoYXI6
CisgICAgICAgIHJldHVybiAiQ2hhciI7CisgICAgZGVmYXVsdDoKKyAgICAgICAgQVNTRVJUX05P
VF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybiAiPHVua25vd24+IjsKKyAgICB9Cit9CisjZW5k
aWYgLy8gIUxPR19ESVNBQkxFRAorCitjbGFzcyBQYWdlQ2xpZW50UHJvdGVjdG9yIHsKKyAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShQYWdlQ2xpZW50UHJvdGVjdG9yKTsKK3B1YmxpYzoKKyAgICBQ
YWdlQ2xpZW50UHJvdGVjdG9yKFBhZ2VDbGllbnQmIHBhZ2VDbGllbnQpCisgICAgICAgIDogbV9w
YWdlQ2xpZW50KG1ha2VXZWFrUHRyKHBhZ2VDbGllbnQpKQorICAgIHsKKyAgICAgICAgbV9wYWdl
Q2xpZW50LT5yZWZWaWV3KCk7CisgICAgfQorCisgICAgflBhZ2VDbGllbnRQcm90ZWN0b3IoKQor
ICAgIHsKKyAgICAgICAgQVNTRVJUKG1fcGFnZUNsaWVudCk7CisgICAgICAgIG1fcGFnZUNsaWVu
dC0+ZGVyZWZWaWV3KCk7CisgICAgfQorCitwcml2YXRlOgorICAgIFdlYWtQdHI8UGFnZUNsaWVu
dD4gbV9wYWdlQ2xpZW50OworfTsKKwordm9pZCBXZWJQYWdlUHJveHk6OmZvck1vc3RWaXNpYmxl
V2ViUGFnZUlmQW55KFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU2VjdXJpdHlPcmln
aW5EYXRhJiBvcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViUGFnZVByb3h5Kik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgLy8gRklYTUU6IElmIG5vdCBmaW5kaW5nIHJpZ2h0
IGF3YXkgYSB2aXNpYmxlIHBhZ2UsIHdlIG1pZ2h0IHdhbnQgdG8gdHJ5IGFnYWluIGZvciBhIGdp
dmVuIHBlcmlvZCBvZiB0aW1lIHdoZW4gdGhlcmUgaXMgYSBjaGFuZ2Ugb2YgdmlzaWJpbGl0eS4K
KyAgICBXZWJQYWdlUHJveHkqIHNlbGVjdGVkUGFnZSA9IG51bGxwdHI7CisgICAgV2ViUHJvY2Vz
c1Byb3h5Ojpmb3JXZWJQYWdlc1dpdGhPcmlnaW4oc2Vzc2lvbklELCBvcmlnaW4sIFsmXShhdXRv
JiBwYWdlKSB7CisgICAgICAgIGlmICghcGFnZS5tYWluRnJhbWUoKSkKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgaWYgKHBhZ2UuaXNWaWV3VmlzaWJsZSgpICYmICghc2VsZWN0ZWRQYWdl
IHx8ICFzZWxlY3RlZFBhZ2UtPmlzVmlld1Zpc2libGUoKSkpIHsKKyAgICAgICAgICAgIHNlbGVj
dGVkUGFnZSA9ICZwYWdlOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAg
IGlmIChwYWdlLmlzVmlld0ZvY3VzZWQoKSAmJiAoIXNlbGVjdGVkUGFnZSB8fCAhc2VsZWN0ZWRQ
YWdlLT5pc1ZpZXdGb2N1c2VkKCkpKSB7CisgICAgICAgICAgICBzZWxlY3RlZFBhZ2UgPSAmcGFn
ZTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0pOworICAgIGNvbXBsZXRp
b25IYW5kbGVyKHNlbGVjdGVkUGFnZSk7Cit9CisKK1JlZjxXZWJQYWdlUHJveHk+IFdlYlBhZ2VQ
cm94eTo6Y3JlYXRlKFBhZ2VDbGllbnQmIHBhZ2VDbGllbnQsIFdlYlByb2Nlc3NQcm94eSYgcHJv
Y2VzcywgUmVmPEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24+JiYgY29uZmlndXJhdGlvbikKK3sKKyAg
ICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJQYWdlUHJveHkocGFnZUNsaWVudCwgcHJvY2Vzcywg
V1RGTW92ZShjb25maWd1cmF0aW9uKSkpOworfQorCitXZWJQYWdlUHJveHk6OldlYlBhZ2VQcm94
eShQYWdlQ2xpZW50JiBwYWdlQ2xpZW50LCBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIFJlZjxB
UEk6OlBhZ2VDb25maWd1cmF0aW9uPiYmIGNvbmZpZ3VyYXRpb24pCisgICAgOiBtX2lkZW50aWZp
ZXIoSWRlbnRpZmllcjo6Z2VuZXJhdGUoKSkKKyAgICAsIG1fd2ViUGFnZUlEKFBhZ2VJZGVudGlm
aWVyOjpnZW5lcmF0ZSgpKQorICAgICwgbV9wYWdlQ2xpZW50KG1ha2VXZWFrUHRyKHBhZ2VDbGll
bnQpKQorICAgICwgbV9jb25maWd1cmF0aW9uKFdURk1vdmUoY29uZmlndXJhdGlvbikpCisgICAg
LCBtX25hdmlnYXRpb25DbGllbnQobWFrZVVuaXF1ZVJlZjxBUEk6Ok5hdmlnYXRpb25DbGllbnQ+
KCkpCisgICAgLCBtX2hpc3RvcnlDbGllbnQobWFrZVVuaXF1ZVJlZjxBUEk6Okhpc3RvcnlDbGll
bnQ+KCkpCisgICAgLCBtX2ljb25Mb2FkaW5nQ2xpZW50KG1ha2VVbmlxdWU8QVBJOjpJY29uTG9h
ZGluZ0NsaWVudD4oKSkKKyAgICAsIG1fZm9ybUNsaWVudChtYWtlVW5pcXVlPEFQSTo6Rm9ybUNs
aWVudD4oKSkKKyAgICAsIG1fdWlDbGllbnQobWFrZVVuaXF1ZTxBUEk6OlVJQ2xpZW50PigpKQor
ICAgICwgbV9maW5kQ2xpZW50KG1ha2VVbmlxdWU8QVBJOjpGaW5kQ2xpZW50PigpKQorICAgICwg
bV9maW5kTWF0Y2hlc0NsaWVudChtYWtlVW5pcXVlPEFQSTo6RmluZE1hdGNoZXNDbGllbnQ+KCkp
CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgLCBtX2NvbnRleHRNZW51Q2xpZW50KG1h
a2VVbmlxdWU8QVBJOjpDb250ZXh0TWVudUNsaWVudD4oKSkKKyNlbmRpZgorICAgICwgbV9uYXZp
Z2F0aW9uU3RhdGUobWFrZVVuaXF1ZTxXZWJOYXZpZ2F0aW9uU3RhdGU+KCkpCisgICAgLCBtX3By
b2Nlc3MocHJvY2VzcykKKyAgICAsIG1fcGFnZUdyb3VwKCptX2NvbmZpZ3VyYXRpb24tPnBhZ2VH
cm91cCgpKQorICAgICwgbV9wcmVmZXJlbmNlcygqbV9jb25maWd1cmF0aW9uLT5wcmVmZXJlbmNl
cygpKQorICAgICwgbV91c2VyQ29udGVudENvbnRyb2xsZXIoKm1fY29uZmlndXJhdGlvbi0+dXNl
ckNvbnRlbnRDb250cm9sbGVyKCkpCisgICAgLCBtX3Zpc2l0ZWRMaW5rU3RvcmUoKm1fY29uZmln
dXJhdGlvbi0+dmlzaXRlZExpbmtTdG9yZSgpKQorICAgICwgbV93ZWJzaXRlRGF0YVN0b3JlKCpt
X2NvbmZpZ3VyYXRpb24tPndlYnNpdGVEYXRhU3RvcmUoKSkKKyAgICAsIG1fdXNlckFnZW50KHN0
YW5kYXJkVXNlckFnZW50KCkpCisgICAgLCBtX292ZXJyaWRlQ29udGVudFNlY3VyaXR5UG9saWN5
IHsgbV9jb25maWd1cmF0aW9uLT5vdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSgpIH0KKyNp
ZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCisgICAgLCBtX2Z1bGxzY3JlZW5DbGllbnQobWFrZVVu
aXF1ZTxBUEk6OkZ1bGxzY3JlZW5DbGllbnQ+KCkpCisjZW5kaWYKKyAgICAsIG1fZ2VvbG9jYXRp
b25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIoKnRoaXMpCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKKyAgICAsIG1fYXVkaWJsZUFjdGl2aXR5VGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAm
V2ViUGFnZVByb3h5OjpjbGVhckF1ZGlibGVBY3Rpdml0eSkKKyNlbmRpZgorICAgICwgbV9pbml0
aWFsQ2FwaXRhbGl6YXRpb25FbmFibGVkKG1fY29uZmlndXJhdGlvbi0+aW5pdGlhbENhcGl0YWxp
emF0aW9uRW5hYmxlZCgpKQorICAgICwgbV9jcHVMaW1pdChtX2NvbmZpZ3VyYXRpb24tPmNwdUxp
bWl0KCkpCisgICAgLCBtX2JhY2tGb3J3YXJkTGlzdChXZWJCYWNrRm9yd2FyZExpc3Q6OmNyZWF0
ZSgqdGhpcykpCisgICAgLCBtX3dhaXRzRm9yUGFpbnRBZnRlclZpZXdEaWRNb3ZlVG9XaW5kb3co
bV9jb25maWd1cmF0aW9uLT53YWl0c0ZvclBhaW50QWZ0ZXJWaWV3RGlkTW92ZVRvV2luZG93KCkp
CisgICAgLCBtX2hhc1J1bm5pbmdQcm9jZXNzKHByb2Nlc3Muc3RhdGUoKSAhPSBXZWJQcm9jZXNz
UHJveHk6OlN0YXRlOjpUZXJtaW5hdGVkKQorI2lmIEhBVkUoQ1ZESVNQTEFZTElOSykKKyAgICAs
IG1fd2hlZWxFdmVudEFjdGl2aXR5SHlzdGVyZXNpcyhbdGhpc10oUEFMOjpIeXN0ZXJlc2lzU3Rh
dGUgc3RhdGUpIHsgd2hlZWxFdmVudEh5c3RlcmVzaXNVcGRhdGVkKHN0YXRlKTsgfSkKKyNlbmRp
ZgorICAgICwgbV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKG1fY29uZmlndXJhdGlvbi0+aXNDb250
cm9sbGVkQnlBdXRvbWF0aW9uKCkpCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgLCBtX2lzU21h
cnRJbnNlcnREZWxldGVFbmFibGVkKFRleHRDaGVja2VyOjppc1NtYXJ0SW5zZXJ0RGVsZXRlRW5h
YmxlZCgpKQorI2VuZGlmCisgICAgLCBtX3BhZ2VMb2FkU3RhdGUoKnRoaXMpCisgICAgLCBtX3Vw
ZGF0ZVJlcG9ydGVkTWVkaWFDYXB0dXJlU3RhdGVUaW1lcihSdW5Mb29wOjptYWluKCksIHRoaXMs
ICZXZWJQYWdlUHJveHk6OnVwZGF0ZVJlcG9ydGVkTWVkaWFDYXB0dXJlU3RhdGUpCisgICAgLCBt
X2luc3BlY3RvckNvbnRyb2xsZXIobWFrZVVuaXF1ZTxXZWJQYWdlSW5zcGVjdG9yQ29udHJvbGxl
cj4oKnRoaXMpKQorI2lmIEVOQUJMRShSRU1PVEVfSU5TUEVDVE9SKQorICAgICwgbV9pbnNwZWN0
b3JEZWJ1Z2dhYmxlKG1ha2VVbmlxdWU8V2ViUGFnZURlYnVnZ2FibGU+KCp0aGlzKSkKKyNlbmRp
ZgorICAgICwgbV9yZXNldFJlY2VudENyYXNoQ291bnRUaW1lcihSdW5Mb29wOjptYWluKCksIHRo
aXMsICZXZWJQYWdlUHJveHk6OnJlc2V0UmVjZW50Q3Jhc2hDb3VudCkKKyAgICAsIG1fdHJ5Q2xv
c2VUaW1lb3V0VGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmV2ViUGFnZVByb3h5Ojp0cnlD
bG9zZVRpbWVkT3V0KQorICAgICwgbV9jb3JzRGlzYWJsaW5nUGF0dGVybnMobV9jb25maWd1cmF0
aW9uLT5jb3JzRGlzYWJsaW5nUGF0dGVybnMoKSkKKyNpZiBFTkFCTEUoQVBQX0JPVU5EX0RPTUFJ
TlMpCisgICAgLCBtX2lnbm9yZXNBcHBCb3VuZERvbWFpbnMobV9jb25maWd1cmF0aW9uLT5pZ25v
cmVzQXBwQm91bmREb21haW5zKCkpCisgICAgLCBtX2xpbWl0c05hdmlnYXRpb25zVG9BcHBCb3Vu
ZERvbWFpbnMobV9jb25maWd1cmF0aW9uLT5saW1pdHNOYXZpZ2F0aW9uc1RvQXBwQm91bmREb21h
aW5zKCkpCisjZW5kaWYKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywg
ImNvbnN0cnVjdG9yOiIpOworCisgICAgaWYgKCFtX2NvbmZpZ3VyYXRpb24tPmRyYXdzQmFja2dy
b3VuZCgpKQorICAgICAgICBtX2JhY2tncm91bmRDb2xvciA9IENvbG9yKENvbG9yOjp0cmFuc3Bh
cmVudEJsYWNrKTsKKworICAgIHVwZGF0ZUFjdGl2aXR5U3RhdGUoKTsKKyAgICB1cGRhdGVUaHJv
dHRsZVN0YXRlKCk7CisgICAgdXBkYXRlSGlkZGVuUGFnZVRocm90dGxpbmdBdXRvSW5jcmVhc2Vz
KCk7CisgICAgCisjaWYgSEFWRShPVVRfT0ZfUFJPQ0VTU19MQVlFUl9IT1NUSU5HKQorICAgIG1f
bGF5ZXJIb3N0aW5nTW9kZSA9IG1fYWN0aXZpdHlTdGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzSW5X
aW5kb3cgPyBXZWJQYWdlUHJveHk6OnBhZ2VDbGllbnQoKS52aWV3TGF5ZXJIb3N0aW5nTW9kZSgp
IDogTGF5ZXJIb3N0aW5nTW9kZTo6T3V0T2ZQcm9jZXNzOworI2VuZGlmCisKKyAgICBwbGF0Zm9y
bUluaXRpYWxpemUoKTsKKworI2lmbmRlZiBOREVCVUcKKyAgICB3ZWJQYWdlUHJveHlDb3VudGVy
LmluY3JlbWVudCgpOworI2VuZGlmCisKKyAgICBXZWJQcm9jZXNzUG9vbDo6c3RhdGlzdGljcygp
LndrUGFnZUNvdW50Kys7CisKKyAgICBtX3ByZWZlcmVuY2VzLT5hZGRQYWdlKCp0aGlzKTsKKyAg
ICBtX3BhZ2VHcm91cC0+YWRkUGFnZSgqdGhpcyk7CisKKyAgICBtX2luc3BlY3RvciA9IFdlYklu
c3BlY3RvclVJUHJveHk6OmNyZWF0ZSgqdGhpcyk7CisKKyAgICBpZiAoaGFzUnVubmluZ1Byb2Nl
c3MoKSkKKyAgICAgICAgZGlkQXR0YWNoVG9SdW5uaW5nUHJvY2VzcygpOworCisgICAgbV9wcm9j
ZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJl
Y2VpdmVyTmFtZSgpLCBtX3dlYlBhZ2VJRCwgKnRoaXMpOworCisjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyAgICBEZXByZWNhdGVkR2xvYmFsU2V0dGluZ3M6OnNldERpc2FibGVTY3JlZW5TaXpl
T3ZlcnJpZGUobV9wcmVmZXJlbmNlcy0+ZGlzYWJsZVNjcmVlblNpemVPdmVycmlkZSgpKTsKKyAg
ICAKKyAgICBpZiAobV9jb25maWd1cmF0aW9uLT5wcmVmZXJlbmNlcygpLT5zZXJ2aWNlV29ya2Vy
RW50aXRsZW1lbnREaXNhYmxlZEZvclRlc3RpbmcoKSkKKyAgICAgICAgZGlzYWJsZVNlcnZpY2VX
b3JrZXJFbnRpdGxlbWVudEluTmV0d29ya1Byb2Nlc3MoKTsKKyNlbmRpZgorCisjaWYgUExBVEZP
Uk0oQ09DT0EpCisgICAgbV9hY3Rpdml0eVN0YXRlQ2hhbmdlRGlzcGF0Y2hlciA9IG1ha2VVbmlx
dWU8UnVuTG9vcE9ic2VydmVyPihzdGF0aWNfY2FzdDxDRkluZGV4PihSdW5Mb29wT2JzZXJ2ZXI6
OldlbGxLbm93blJ1bkxvb3BPcmRlcnM6OkFjdGl2aXR5U3RhdGVDaGFuZ2UpLCBbdGhpc10gewor
ICAgICAgICB0aGlzLT5kaXNwYXRjaEFjdGl2aXR5U3RhdGVDaGFuZ2UoKTsKKyAgICB9KTsKKyNl
bmRpZgorCisjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCisgICAgbV9pbnNwZWN0b3JEZWJ1
Z2dhYmxlLT5zZXRSZW1vdGVEZWJ1Z2dpbmdBbGxvd2VkKHRydWUpOworICAgIG1faW5zcGVjdG9y
RGVidWdnYWJsZS0+aW5pdCgpOworI2VuZGlmCisgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5p
bml0KCk7CisKKyNpZiBFTkFCTEUoSVBDX1RFU1RJTkdfQVBJKQorICAgIGlmIChtX3ByZWZlcmVu
Y2VzLT5pcGNUZXN0aW5nQVBJRW5hYmxlZCgpKQorICAgICAgICBwcm9jZXNzLnNldElnbm9yZUlu
dmFsaWRNZXNzYWdlRm9yVGVzdGluZygpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoTUVESUFfU0VT
U0lPTl9DT09SRElOQVRPUikgJiYgSEFWRShHUk9VUF9BQ1RJVklUSUVTKQorICAgIGlmIChtX3By
ZWZlcmVuY2VzLT5tZWRpYVNlc3Npb25Db29yZGluYXRvckVuYWJsZWQoKSkKKyAgICAgICAgR3Jv
dXBBY3Rpdml0aWVzU2Vzc2lvbk5vdGlmaWVyOjpzaGFyZWROb3RpZmllcigpLmFkZFdlYlBhZ2Uo
KnRoaXMpOworI2VuZGlmCit9CisKK1dlYlBhZ2VQcm94eTo6fldlYlBhZ2VQcm94eSgpCit7Cisg
ICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJkZXN0cnVjdG9yOiIpOworCisg
ICAgQVNTRVJUKG1fcHJvY2Vzcy0+d2ViUGFnZShtX2lkZW50aWZpZXIpICE9IHRoaXMpOworI2lm
IEFTU0VSVF9FTkFCTEVECisgICAgZm9yIChXZWJQYWdlUHJveHkqIHBhZ2UgOiBtX3Byb2Nlc3Mt
PnBhZ2VzKCkpCisgICAgICAgIEFTU0VSVChwYWdlICE9IHRoaXMpOworI2VuZGlmCisKKyAgICBz
ZXRQYWdlTG9hZFN0YXRlT2JzZXJ2ZXIobnVsbHB0cik7CisKKyAgICBpZiAoIW1faXNDbG9zZWQp
CisgICAgICAgIGNsb3NlKCk7CisKKyAgICBXZWJQcm9jZXNzUG9vbDo6c3RhdGlzdGljcygpLndr
UGFnZUNvdW50LS07CisKKyAgICBpZiAobV9zcGVsbERvY3VtZW50VGFnKQorICAgICAgICBUZXh0
Q2hlY2tlcjo6Y2xvc2VTcGVsbERvY3VtZW50V2l0aFRhZyhtX3NwZWxsRG9jdW1lbnRUYWcudmFs
dWUoKSk7CisKKyAgICBtX3ByZWZlcmVuY2VzLT5yZW1vdmVQYWdlKCp0aGlzKTsKKyAgICBtX3Bh
Z2VHcm91cC0+cmVtb3ZlUGFnZSgqdGhpcyk7CisKKyNpZm5kZWYgTkRFQlVHCisgICAgd2ViUGFn
ZVByb3h5Q291bnRlci5kZWNyZW1lbnQoKTsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oTUFDQ0FU
QUxZU1QpCisgICAgRW5kb3dtZW50U3RhdGVUcmFja2VyOjpzaW5nbGV0b24oKS5yZW1vdmVDbGll
bnQoKnRoaXMpOworI2VuZGlmCisgICAgCisgICAgZm9yIChhdXRvJiBjYWxsYmFjayA6IG1fbmV4
dEFjdGl2aXR5U3RhdGVDaGFuZ2VDYWxsYmFja3MpCisgICAgICAgIGNhbGxiYWNrKCk7CisKKyAg
ICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kKE1lc3NhZ2VzOjpOZXR3
b3JrUHJvY2Vzczo6UmVtb3ZlV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKHNlc3Npb25JRCgpLCBt
X2lkZW50aWZpZXIpLCAwKTsKKworI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OX0NPT1JESU5BVE9S
KSAmJiBIQVZFKEdST1VQX0FDVElWSVRJRVMpCisgICAgaWYgKG1fcHJlZmVyZW5jZXMtPm1lZGlh
U2Vzc2lvbkNvb3JkaW5hdG9yRW5hYmxlZCgpKQorICAgICAgICBHcm91cEFjdGl2aXRpZXNTZXNz
aW9uTm90aWZpZXI6OnNoYXJlZE5vdGlmaWVyKCkucmVtb3ZlV2ViUGFnZSgqdGhpcyk7CisjZW5k
aWYKK30KKworLy8gRklYTUU6IFNob3VsZCByZXR1cm4gYSBjb25zdCBQYWdlQ2xpZW50JiBhbmQg
YWRkIGEgc2VwYXJhdGUgbm9uLWNvbnN0CisvLyB2ZXJzaW9uIG9mIHRoaXMgZnVuY3Rpb24sIGJ1
dCBzZXZlcmFsIFBhZ2VDbGllbnQgbWV0aG9kcyB3aWxsIG5lZWQgdG8gYmVjb21lCisvLyBjb25z
dCBmb3IgdGhpcyB0byBiZSBwb3NzaWJsZS4KK1BhZ2VDbGllbnQmIFdlYlBhZ2VQcm94eTo6cGFn
ZUNsaWVudCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKG1fcGFnZUNsaWVudCk7CisgICAgcmV0dXJu
ICptX3BhZ2VDbGllbnQ7Cit9CisKK1BBTDo6U2Vzc2lvbklEIFdlYlBhZ2VQcm94eTo6c2Vzc2lv
bklEKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93ZWJzaXRlRGF0YVN0b3JlLT5zZXNzaW9uSUQo
KTsKK30KKworRHJhd2luZ0FyZWFQcm94eSogV2ViUGFnZVByb3h5Ojpwcm92aXNpb25hbERyYXdp
bmdBcmVhKCkgY29uc3QKK3sKKyAgICBpZiAobV9wcm92aXNpb25hbFBhZ2UgJiYgbV9wcm92aXNp
b25hbFBhZ2UtPmRyYXdpbmdBcmVhKCkpCisgICAgICAgIHJldHVybiBtX3Byb3Zpc2lvbmFsUGFn
ZS0+ZHJhd2luZ0FyZWEoKTsKKyAgICByZXR1cm4gZHJhd2luZ0FyZWEoKTsKK30KKworY29uc3Qg
QVBJOjpQYWdlQ29uZmlndXJhdGlvbiYgV2ViUGFnZVByb3h5Ojpjb25maWd1cmF0aW9uKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9jb25maWd1cmF0aW9uLmdldCgpOworfQorCitQcm9jZXNzSUQg
V2ViUGFnZVByb3h5Ojpwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0Cit7CisgICAgaWYgKG1faXND
bG9zZWQpCisgICAgICAgIHJldHVybiAwOworCisgICAgcmV0dXJuIG1fcHJvY2Vzcy0+cHJvY2Vz
c0lkZW50aWZpZXIoKTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6Omhhc1J1bm5pbmdQcm9jZXNz
KCkgY29uc3QKK3sKKyAgICAvLyBBIHBhZ2UgdGhhdCBoYXMgYmVlbiBleHBsaWNpdGx5IGNsb3Nl
ZCBpcyBuZXZlciB2YWxpZC4KKyAgICBpZiAobV9pc0Nsb3NlZCkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgcmV0dXJuIG1faGFzUnVubmluZ1Byb2Nlc3M7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5Ojpub3RpZnlQcm9jZXNzUG9vbFRvUHJld2FybSgpCit7CisgICAgbV9wcm9jZXNzLT5w
cm9jZXNzUG9vbCgpLmRpZFJlYWNoR29vZFRpbWVUb1ByZXdhcm0oKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldFByZWZlcmVuY2VzKFdlYlByZWZlcmVuY2VzJiBwcmVmZXJlbmNlcykKK3sK
KyAgICBpZiAoJnByZWZlcmVuY2VzID09IG1fcHJlZmVyZW5jZXMucHRyKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIG1fcHJlZmVyZW5jZXMtPnJlbW92ZVBhZ2UoKnRoaXMpOworICAgIG1fcHJl
ZmVyZW5jZXMgPSBwcmVmZXJlbmNlczsKKyAgICBtX3ByZWZlcmVuY2VzLT5hZGRQYWdlKCp0aGlz
KTsKKworICAgIHByZWZlcmVuY2VzRGlkQ2hhbmdlKCk7Cit9CisgICAgCit2b2lkIFdlYlBhZ2VQ
cm94eTo6c2V0SGlzdG9yeUNsaWVudChVbmlxdWVSZWY8QVBJOjpIaXN0b3J5Q2xpZW50PiYmIGhp
c3RvcnlDbGllbnQpCit7CisgICAgbV9oaXN0b3J5Q2xpZW50ID0gV1RGTW92ZShoaXN0b3J5Q2xp
ZW50KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldE5hdmlnYXRpb25DbGllbnQoVW5pcXVl
UmVmPEFQSTo6TmF2aWdhdGlvbkNsaWVudD4mJiBuYXZpZ2F0aW9uQ2xpZW50KQoreworICAgIG1f
bmF2aWdhdGlvbkNsaWVudCA9IFdURk1vdmUobmF2aWdhdGlvbkNsaWVudCk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpzZXRMb2FkZXJDbGllbnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6TG9hZGVy
Q2xpZW50PiYmIGxvYWRlckNsaWVudCkKK3sKKyAgICBtX2xvYWRlckNsaWVudCA9IFdURk1vdmUo
bG9hZGVyQ2xpZW50KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFBvbGljeUNsaWVudChz
dGQ6OnVuaXF1ZV9wdHI8QVBJOjpQb2xpY3lDbGllbnQ+JiYgcG9saWN5Q2xpZW50KQoreworICAg
IG1fcG9saWN5Q2xpZW50ID0gV1RGTW92ZShwb2xpY3lDbGllbnQpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6c2V0Rm9ybUNsaWVudChzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpGb3JtQ2xpZW50PiYm
IGZvcm1DbGllbnQpCit7CisgICAgaWYgKCFmb3JtQ2xpZW50KSB7CisgICAgICAgIG1fZm9ybUNs
aWVudCA9IG1ha2VVbmlxdWU8QVBJOjpGb3JtQ2xpZW50PigpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgbV9mb3JtQ2xpZW50ID0gV1RGTW92ZShmb3JtQ2xpZW50KTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OnNldFVJQ2xpZW50KHN0ZDo6dW5pcXVlX3B0cjxBUEk6OlVJQ2xpZW50
PiYmIHVpQ2xpZW50KQoreworICAgIGlmICghdWlDbGllbnQpIHsKKyAgICAgICAgbV91aUNsaWVu
dCA9IG1ha2VVbmlxdWU8QVBJOjpVSUNsaWVudD4oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIG1fdWlDbGllbnQgPSBXVEZNb3ZlKHVpQ2xpZW50KTsKKworICAgIGlmIChoYXNSdW5u
aW5nUHJvY2VzcygpKQorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRDYW5SdW5C
ZWZvcmVVbmxvYWRDb25maXJtUGFuZWwobV91aUNsaWVudC0+Y2FuUnVuQmVmb3JlVW5sb2FkQ29u
ZmlybVBhbmVsKCkpKTsKKworICAgIHNldENhblJ1bk1vZGFsKG1fdWlDbGllbnQtPmNhblJ1bk1v
ZGFsKCkpOworICAgIHNldE5lZWRzRm9udEF0dHJpYnV0ZXMobV91aUNsaWVudC0+bmVlZHNGb250
QXR0cmlidXRlcygpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldEljb25Mb2FkaW5nQ2xp
ZW50KHN0ZDo6dW5pcXVlX3B0cjxBUEk6Okljb25Mb2FkaW5nQ2xpZW50PiYmIGljb25Mb2FkaW5n
Q2xpZW50KQoreworICAgIGJvb2wgaGFzQ2xpZW50ID0gaWNvbkxvYWRpbmdDbGllbnQuZ2V0KCk7
CisgICAgaWYgKCFpY29uTG9hZGluZ0NsaWVudCkKKyAgICAgICAgbV9pY29uTG9hZGluZ0NsaWVu
dCA9IG1ha2VVbmlxdWU8QVBJOjpJY29uTG9hZGluZ0NsaWVudD4oKTsKKyAgICBlbHNlCisgICAg
ICAgIG1faWNvbkxvYWRpbmdDbGllbnQgPSBXVEZNb3ZlKGljb25Mb2FkaW5nQ2xpZW50KTsKKwor
ICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0VXNlSWNvbkxvYWRpbmdDbGllbnQoaGFzQ2xpZW50KSk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRQYWdlTG9hZFN0YXRlT2JzZXJ2ZXIoc3RkOjp1
bmlxdWVfcHRyPFBhZ2VMb2FkU3RhdGU6Ok9ic2VydmVyPiYmIG9ic2VydmVyKQoreworICAgIGlm
IChtX3BhZ2VMb2FkU3RhdGVPYnNlcnZlcikKKyAgICAgICAgcGFnZUxvYWRTdGF0ZSgpLnJlbW92
ZU9ic2VydmVyKCptX3BhZ2VMb2FkU3RhdGVPYnNlcnZlcik7CisgICAgbV9wYWdlTG9hZFN0YXRl
T2JzZXJ2ZXIgPSBXVEZNb3ZlKG9ic2VydmVyKTsKKyAgICBpZiAobV9wYWdlTG9hZFN0YXRlT2Jz
ZXJ2ZXIpCisgICAgICAgIHBhZ2VMb2FkU3RhdGUoKS5hZGRPYnNlcnZlcigqbV9wYWdlTG9hZFN0
YXRlT2JzZXJ2ZXIpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0RmluZENsaWVudChzdGQ6
OnVuaXF1ZV9wdHI8QVBJOjpGaW5kQ2xpZW50PiYmIGZpbmRDbGllbnQpCit7CisgICAgaWYgKCFm
aW5kQ2xpZW50KSB7CisgICAgICAgIG1fZmluZENsaWVudCA9IG1ha2VVbmlxdWU8QVBJOjpGaW5k
Q2xpZW50PigpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIAorICAgIG1fZmluZENsaWVu
dCA9IFdURk1vdmUoZmluZENsaWVudCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRGaW5k
TWF0Y2hlc0NsaWVudChzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpGaW5kTWF0Y2hlc0NsaWVudD4mJiBm
aW5kTWF0Y2hlc0NsaWVudCkKK3sKKyAgICBpZiAoIWZpbmRNYXRjaGVzQ2xpZW50KSB7CisgICAg
ICAgIG1fZmluZE1hdGNoZXNDbGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6RmluZE1hdGNoZXNDbGll
bnQ+KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2ZpbmRNYXRjaGVzQ2xpZW50
ID0gV1RGTW92ZShmaW5kTWF0Y2hlc0NsaWVudCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXREaWFnbm9zdGljTG9nZ2luZ0NsaWVudChzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpEaWFnbm9zdGlj
TG9nZ2luZ0NsaWVudD4mJiBkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCkKK3sKKyAgICBtX2RpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50ID0gV1RGTW92ZShkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCk7Cit9
CisKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRDb250
ZXh0TWVudUNsaWVudChzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpDb250ZXh0TWVudUNsaWVudD4mJiBj
b250ZXh0TWVudUNsaWVudCkKK3sKKyAgICBpZiAoIWNvbnRleHRNZW51Q2xpZW50KSB7CisgICAg
ICAgIG1fY29udGV4dE1lbnVDbGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6Q29udGV4dE1lbnVDbGll
bnQ+KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2NvbnRleHRNZW51Q2xpZW50
ID0gV1RGTW92ZShjb250ZXh0TWVudUNsaWVudCk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdl
UHJveHk6OnNldEluamVjdGVkQnVuZGxlQ2xpZW50KGNvbnN0IFdLUGFnZUluamVjdGVkQnVuZGxl
Q2xpZW50QmFzZSogY2xpZW50KQoreworICAgIGlmICghY2xpZW50KSB7CisgICAgICAgIG1faW5q
ZWN0ZWRCdW5kbGVDbGllbnQgPSBudWxscHRyOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgbV9pbmplY3RlZEJ1bmRsZUNsaWVudCA9IG1ha2VVbmlxdWU8V2ViUGFnZUluamVjdGVkQnVu
ZGxlQ2xpZW50PigpOworICAgIG1faW5qZWN0ZWRCdW5kbGVDbGllbnQtPmluaXRpYWxpemUoY2xp
ZW50KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFJlc291cmNlTG9hZENsaWVudChzdGQ6
OnVuaXF1ZV9wdHI8QVBJOjpSZXNvdXJjZUxvYWRDbGllbnQ+JiYgY2xpZW50KQoreworICAgIGJv
b2wgaGFkUmVzb3VyY2VMb2FkQ2xpZW50ID0gISFtX3Jlc291cmNlTG9hZENsaWVudDsKKyAgICBt
X3Jlc291cmNlTG9hZENsaWVudCA9IFdURk1vdmUoY2xpZW50KTsKKyAgICBib29sIGhhc1Jlc291
cmNlTG9hZENsaWVudCA9ICEhbV9yZXNvdXJjZUxvYWRDbGllbnQ7CisgICAgaWYgKGhhZFJlc291
cmNlTG9hZENsaWVudCAhPSBoYXNSZXNvdXJjZUxvYWRDbGllbnQpCisgICAgICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlNldEhhc1Jlc291cmNlTG9hZENsaWVudChoYXNSZXNvdXJjZUxvYWRD
bGllbnQpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmhhbmRsZU1lc3NhZ2UoSVBDOjpDb25u
ZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2VOYW1lLCBjb25zdCBXZWJL
aXQ6OlVzZXJEYXRhJiBtZXNzYWdlQm9keSkKK3sKKyAgICBBU1NFUlQobV9wcm9jZXNzLT5jb25u
ZWN0aW9uKCkgPT0gJmNvbm5lY3Rpb24pOworCisgICAgaWYgKCFtX2luamVjdGVkQnVuZGxlQ2xp
ZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2luamVjdGVkQnVuZGxlQ2xpZW50LT5kaWRS
ZWNlaXZlTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSh0aGlzLCBtZXNzYWdlTmFtZSwgbV9wcm9j
ZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKG1lc3NhZ2VCb2R5Lm9iamVjdCgpKS5nZXQo
KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVTeW5jaHJvbm91c01lc3NhZ2UoSVBD
OjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2VOYW1lLCBjb25z
dCBVc2VyRGF0YSYgbWVzc2FnZUJvZHksIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVXNlckRhdGEm
Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKG1fcHJvY2Vzcy0+Y29ubmVj
dGlvbigpID09ICZjb25uZWN0aW9uKTsKKworICAgIGlmICghbV9pbmplY3RlZEJ1bmRsZUNsaWVu
dCkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHsgfSk7CisKKyAgICBSZWZQdHI8
QVBJOjpPYmplY3Q+IHJldHVybkRhdGE7CisgICAgbV9pbmplY3RlZEJ1bmRsZUNsaWVudC0+ZGlk
UmVjZWl2ZVN5bmNocm9ub3VzTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSh0aGlzLCBtZXNzYWdl
TmFtZSwgbV9wcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKG1lc3NhZ2VCb2R5Lm9i
amVjdCgpKS5nZXQoKSwgW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlciksIHByb2Nlc3MgPSBtX3Byb2Nlc3NdIChSZWZQdHI8QVBJOjpPYmplY3Q+JiYgcmV0dXJu
RGF0YSkgbXV0YWJsZSB7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFVzZXJEYXRhKHByb2Nl
c3MtPnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXMocmV0dXJuRGF0YS5nZXQoKSkpKTsKKyAgICB9
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmxhdW5jaFByb2Nlc3MoY29uc3QgUmVnaXN0cmFi
bGVEb21haW4mIHJlZ2lzdHJhYmxlRG9tYWluLCBQcm9jZXNzTGF1bmNoUmVhc29uIHJlYXNvbikK
K3sKKyAgICBBU1NFUlQoIW1faXNDbG9zZWQpOworICAgIEFTU0VSVCghaGFzUnVubmluZ1Byb2Nl
c3MoKSk7CisKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxhdW5jaFBy
b2Nlc3M6Iik7CisKKyAgICAvLyBJbiBjYXNlIHdlIGFyZSBjdXJyZW50bHkgY29ubmVjdGVkIHRv
IHRoZSBkdW1teSBwcm9jZXNzLCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgaW5zcGVjdG9yIHBy
b3h5CisgICAgLy8gZGlzY29ubmVjdHMgZnJvbSB0aGUgZHVtbXkgcHJvY2VzcyBmaXJzdC4KKyAg
ICBtX2luc3BlY3Rvci0+cmVzZXQoKTsKKworICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgq
dGhpcywgV2ViUHJvY2Vzc1Byb3h5OjpFbmRzVXNpbmdEYXRhU3RvcmU6Olllcyk7CisgICAgbV9w
cm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6bWVz
c2FnZVJlY2VpdmVyTmFtZSgpLCBtX3dlYlBhZ2VJRCk7CisKKyAgICBhdXRvJiBwcm9jZXNzUG9v
bCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKTsKKworICAgIGF1dG8qIHJlbGF0ZWRQYWdlID0g
bV9jb25maWd1cmF0aW9uLT5yZWxhdGVkUGFnZSgpOworICAgIGlmIChyZWxhdGVkUGFnZSAmJiAh
cmVsYXRlZFBhZ2UtPmlzQ2xvc2VkKCkpCisgICAgICAgIG1fcHJvY2VzcyA9IHJlbGF0ZWRQYWdl
LT5lbnN1cmVSdW5uaW5nUHJvY2VzcygpOworICAgIGVsc2UKKyAgICAgICAgbV9wcm9jZXNzID0g
cHJvY2Vzc1Bvb2wucHJvY2Vzc0ZvclJlZ2lzdHJhYmxlRG9tYWluKG1fd2Vic2l0ZURhdGFTdG9y
ZS5nZXQoKSwgdGhpcywgcmVnaXN0cmFibGVEb21haW4pOworICAgIG1faGFzUnVubmluZ1Byb2Nl
c3MgPSB0cnVlOworCisgICAgbV9wcm9jZXNzLT5hZGRFeGlzdGluZ1dlYlBhZ2UoKnRoaXMsIFdl
YlByb2Nlc3NQcm94eTo6QmVnaW5zVXNpbmdEYXRhU3RvcmU6Olllcyk7CisgICAgbV9wcm9jZXNz
LT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2Vp
dmVyTmFtZSgpLCBtX3dlYlBhZ2VJRCwgKnRoaXMpOworCisjaWYgRU5BQkxFKElQQ19URVNUSU5H
X0FQSSkKKyAgICBpZiAobV9wcmVmZXJlbmNlcy0+c3RvcmUoKS5nZXRCb29sVmFsdWVGb3JLZXko
V2ViUHJlZmVyZW5jZXNLZXk6OmlwY1Rlc3RpbmdBUElFbmFibGVkS2V5KCkpKQorICAgICAgICBt
X3Byb2Nlc3MtPnNldElnbm9yZUludmFsaWRNZXNzYWdlRm9yVGVzdGluZygpOworI2VuZGlmCisK
KyAgICBmaW5pc2hBdHRhY2hpbmdUb1dlYlByb2Nlc3MocmVhc29uKTsKKworICAgIGF1dG8gcGVu
ZGluZ0luamVjdGVkQnVuZGxlTWVzc2FnZSA9IFdURk1vdmUobV9wZW5kaW5nSW5qZWN0ZWRCdW5k
bGVNZXNzYWdlcyk7CisgICAgZm9yIChhdXRvJiBtZXNzYWdlIDogcGVuZGluZ0luamVjdGVkQnVu
ZGxlTWVzc2FnZSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6UG9zdEluamVjdGVk
QnVuZGxlTWVzc2FnZShtZXNzYWdlLm1lc3NhZ2VOYW1lLCBVc2VyRGF0YShwcm9jZXNzKCkudHJh
bnNmb3JtT2JqZWN0c1RvSGFuZGxlcyhtZXNzYWdlLm1lc3NhZ2VCb2R5LmdldCgpKS5nZXQoKSkp
KTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OnN1c3BlbmRDdXJyZW50UGFnZUlmUG9zc2libGUo
QVBJOjpOYXZpZ2F0aW9uJiBuYXZpZ2F0aW9uLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmll
cj4gbWFpbkZyYW1lSUQsIFByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQgcHJvY2Vzc1N3YXBS
ZXF1ZXN0ZWRCeUNsaWVudCwgU2hvdWxkRGVsYXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1c2gg
c2hvdWxkRGVsYXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1c2gpCit7CisgICAgbV9zdXNwZW5k
ZWRQYWdlS2VwdFRvUHJldmVudEZsYXNoaW5nID0gbnVsbHB0cjsKKyAgICBtX2xhc3RTdXNwZW5k
ZWRQYWdlID0gbnVsbHB0cjsKKworICAgIGlmICghbWFpbkZyYW1lSUQpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIGlmICghaGFzQ29tbWl0dGVkQW55UHJvdmlzaW9uYWxMb2FkcygpKSB7
CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJzdXNw
ZW5kQ3VycmVudFBhZ2VJZlBvc3NpYmxlOiBOb3Qgc3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9y
IHByb2Nlc3MgcGlkICVpIGJlY2F1c2UgaGFzIG5vdCBjb21taXR0ZWQgYW55IGxvYWQgeWV0Iiwg
bV9wcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgIH0KKworICAgIGlmIChpc1BhZ2VPcGVuZWRCeURPTVNob3dpbmdJbml0aWFsRW1wdHlEb2N1
bWVudCgpKSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBp
bmcsICJzdXNwZW5kQ3VycmVudFBhZ2VJZlBvc3NpYmxlOiBOb3Qgc3VzcGVuZGluZyBjdXJyZW50
IHBhZ2UgZm9yIHByb2Nlc3MgcGlkICVpIGJlY2F1c2UgaXQgaXMgc2hvd2luZyB0aGUgaW5pdGlh
bCBlbXB0eSBkb2N1bWVudCIsIG1fcHJvY2Vzcy0+cHJvY2Vzc0lkZW50aWZpZXIoKSk7CisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBhdXRvKiBmcm9tSXRlbSA9IG5hdmlnYXRp
b24uZnJvbUl0ZW0oKTsKKworICAgIC8vIElmIHRoZSBzb3VyY2UgYW5kIHRoZSBkZXN0aW5hdGlv
biBiYWNrIC8gZm9yd2FyZCBsaXN0IGl0ZW1zIGFyZSB0aGUgc2FtZSwgdGhlbiB0aGlzIGlzIGEg
Y2xpZW50LXNpZGUgcmVkaXJlY3QuIEluIHRoaXMgY2FzZSwKKyAgICAvLyB0aGVyZSBpcyBubyBu
ZWVkIHRvIHN1c3BlbmQgdGhlIHByZXZpb3VzIHBhZ2UgYXMgdGhlcmUgd2lsbCBiZSBubyB3YXkg
dG8gZ2V0IGJhY2sgdG8gaXQuCisgICAgaWYgKGZyb21JdGVtICYmIGZyb21JdGVtID09IG1fYmFj
a0ZvcndhcmRMaXN0LT5jdXJyZW50SXRlbSgpKSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxF
QVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJzdXNwZW5kQ3VycmVudFBhZ2VJZlBvc3NpYmxlOiBO
b3Qgc3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9yIHByb2Nlc3MgcGlkICVpIGJlY2F1c2UgdGhp
cyBpcyBhIGNsaWVudC1zaWRlIHJlZGlyZWN0IiwgbV9wcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmll
cigpKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChmcm9tSXRlbSAm
JiBmcm9tSXRlbS0+dXJsKCkgIT0gcGFnZUxvYWRTdGF0ZSgpLnVybCgpKSB7CisgICAgICAgIFdF
QlBBR0VQUk9YWV9SRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzU3dhcHBpbmcsICJzdXNwZW5kQ3Vy
cmVudFBhZ2VJZlBvc3NpYmxlOiBOb3Qgc3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9yIHByb2Nl
c3MgcGlkICVpIGJlY2F1c2UgZnJvbUl0ZW0ncyBVUkwgZG9lcyBub3QgbWF0Y2ggdGhlIHBhZ2Ug
VVJMLiIsIG1fcHJvY2Vzcy0+cHJvY2Vzc0lkZW50aWZpZXIoKSk7CisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICB9CisKKyAgICBib29sIG5lZWRzU3VzcGVuZGVkUGFnZVRvUHJldmVudEZsYXNo
aW5nID0gc2hvdWxkRGVsYXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1c2ggPT0gU2hvdWxkRGVs
YXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1c2g6OlllczsKKyAgICBpZiAoIW5lZWRzU3VzcGVu
ZGVkUGFnZVRvUHJldmVudEZsYXNoaW5nICYmICghZnJvbUl0ZW0gfHwgIXNob3VsZFVzZUJhY2tG
b3J3YXJkQ2FjaGUoKSkpIHsKKyAgICAgICAgaWYgKCFmcm9tSXRlbSkKKyAgICAgICAgICAgIFdF
QlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJzdXNwZW5kQ3VycmVudFBh
Z2VJZlBvc3NpYmxlOiBOb3Qgc3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9yIHByb2Nlc3MgcGlk
ICVpIHRoZXJlIGlzIG5vIGFzc29jaWF0ZWQgV2ViQmFja0ZvcndhcmRMaXN0SXRlbSIsIG1fcHJv
Y2Vzcy0+cHJvY2Vzc0lkZW50aWZpZXIoKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFdF
QlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJzdXNwZW5kQ3VycmVudFBh
Z2VJZlBvc3NpYmxlOiBOb3Qgc3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9yIHByb2Nlc3MgcGlk
ICVpIHRoZSBiYWNrIC8gZm9yd2FyZCBjYWNoZSBpcyBkaXNhYmxlZCIsIG1fcHJvY2Vzcy0+cHJv
Y2Vzc0lkZW50aWZpZXIoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBX
RUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coUHJvY2Vzc1N3YXBwaW5nLCAic3VzcGVuZEN1cnJlbnRQ
YWdlSWZQb3NzaWJsZTogU3VzcGVuZGluZyBjdXJyZW50IHBhZ2UgZm9yIHByb2Nlc3MgcGlkICVp
IiwgbV9wcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpKTsKKyAgICBhdXRvIHN1c3BlbmRlZFBh
Z2UgPSBtYWtlVW5pcXVlPFN1c3BlbmRlZFBhZ2VQcm94eT4oKnRoaXMsIG1fcHJvY2Vzcy5jb3B5
UmVmKCksICptYWluRnJhbWVJRCwgc2hvdWxkRGVsYXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1
c2gpOworCisgICAgTE9HKFByb2Nlc3NTd2FwcGluZywgIldlYlBhZ2VQcm94eSAlIiBQUkl1NjQg
IiBjcmVhdGVkIHN1c3BlbmRlZCBwYWdlICVzIGZvciBwcm9jZXNzIHBpZCAlaSwgYmFjay9mb3J3
YXJkIGl0ZW0gJXMiIFBSSXU2NCwgaWRlbnRpZmllcigpLnRvVUludDY0KCksIHN1c3BlbmRlZFBh
Z2UtPmxvZ2dpbmdTdHJpbmcoKSwgbV9wcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpLCBmcm9t
SXRlbSA/IGZyb21JdGVtLT5pdGVtSUQoKS5sb2dTdHJpbmcoKSA6IDApOworCisgICAgbV9sYXN0
U3VzcGVuZGVkUGFnZSA9IG1ha2VXZWFrUHRyKCpzdXNwZW5kZWRQYWdlKTsKKworICAgIGlmIChm
cm9tSXRlbSAmJiBzaG91bGRVc2VCYWNrRm9yd2FyZENhY2hlKCkpCisgICAgICAgIGJhY2tGb3J3
YXJkQ2FjaGUoKS5hZGRFbnRyeSgqZnJvbUl0ZW0sIFdURk1vdmUoc3VzcGVuZGVkUGFnZSkpOwor
ICAgIGVsc2UgeworICAgICAgICBBU1NFUlQobmVlZHNTdXNwZW5kZWRQYWdlVG9QcmV2ZW50Rmxh
c2hpbmcpOworICAgICAgICBtX3N1c3BlbmRlZFBhZ2VLZXB0VG9QcmV2ZW50Rmxhc2hpbmcgPSBX
VEZNb3ZlKHN1c3BlbmRlZFBhZ2UpOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCitX
ZWJCYWNrRm9yd2FyZENhY2hlJiBXZWJQYWdlUHJveHk6OmJhY2tGb3J3YXJkQ2FjaGUoKSBjb25z
dAoreworICAgIHJldHVybiBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5iYWNrRm9yd2FyZENhY2hl
KCk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpzaG91bGRVc2VCYWNrRm9yd2FyZENhY2hlKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9wcmVmZXJlbmNlcy0+dXNlc0JhY2tGb3J3YXJkQ2FjaGUo
KSAmJiBiYWNrRm9yd2FyZENhY2hlKCkuY2FwYWNpdHkoKSA+IDA7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5Ojpzd2FwVG9Qcm92aXNpb25hbFBhZ2Uoc3RkOjp1bmlxdWVfcHRyPFByb3Zpc2lvbmFs
UGFnZVByb3h5PiBwcm92aXNpb25hbFBhZ2UpCit7CisgICAgQVNTRVJUKCFtX2lzQ2xvc2VkKTsK
KyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgInN3YXBUb1Byb3Zpc2lvbmFs
UGFnZTogbmV3V2ViUGFnZUlEPSUiIFBSSXU2NCwgcHJvdmlzaW9uYWxQYWdlLT53ZWJQYWdlSUQo
KS50b1VJbnQ2NCgpKTsKKworICAgIG1fcHJvY2VzcyA9IHByb3Zpc2lvbmFsUGFnZS0+cHJvY2Vz
cygpOworICAgIG1fd2ViUGFnZUlEID0gcHJvdmlzaW9uYWxQYWdlLT53ZWJQYWdlSUQoKTsKKyAg
ICBwYWdlQ2xpZW50KCkuZGlkQ2hhbmdlV2ViUGFnZUlEKCk7CisgICAgbV93ZWJzaXRlRGF0YVN0
b3JlID0gbV9wcm9jZXNzLT53ZWJzaXRlRGF0YVN0b3JlKCk7CisKKyNpZiBIQVZFKFZJU0lCSUxJ
VFlfUFJPUEFHQVRJT05fVklFVykKKyAgICBtX2NvbnRleHRJREZvclZpc2liaWxpdHlQcm9wYWdh
dGlvbkluV2ViUHJvY2VzcyA9IHByb3Zpc2lvbmFsUGFnZS0+Y29udGV4dElERm9yVmlzaWJpbGl0
eVByb3BhZ2F0aW9uSW5XZWJQcm9jZXNzKCk7CisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorICAg
IG1fY29udGV4dElERm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uSW5HUFVQcm9jZXNzID0gcHJvdmlz
aW9uYWxQYWdlLT5jb250ZXh0SURGb3JWaXNpYmlsaXR5UHJvcGFnYXRpb25JbkdQVVByb2Nlc3Mo
KTsKKyNlbmRpZgorI2VuZGlmCisKKyAgICAvLyBGSVhNRTogRG8gd2UgcmVhbGx5IG5lZWQgdG8g
ZGlzYWJsZSB0aGlzIGxvZ2dpbmcgaW4gZXBoZW1lcmFsIHNlc3Npb25zPworICAgIGlmIChtX2xv
Z2dlcikKKyAgICAgICAgbV9sb2dnZXItPnNldEVuYWJsZWQodGhpcywgIXNlc3Npb25JRCgpLmlz
RXBoZW1lcmFsKCkpOworCisgICAgbV9oYXNSdW5uaW5nUHJvY2VzcyA9IHRydWU7CisKKyAgICBB
U1NFUlQoIW1fZHJhd2luZ0FyZWEpOworICAgIHNldERyYXdpbmdBcmVhKHByb3Zpc2lvbmFsUGFn
ZS0+dGFrZURyYXdpbmdBcmVhKCkpOworICAgIEFTU0VSVCghbV9tYWluRnJhbWUpOworICAgIG1f
bWFpbkZyYW1lID0gcHJvdmlzaW9uYWxQYWdlLT5tYWluRnJhbWUoKTsKKworICAgIG1fcHJvY2Vz
cy0+YWRkRXhpc3RpbmdXZWJQYWdlKCp0aGlzLCBXZWJQcm9jZXNzUHJveHk6OkJlZ2luc1VzaW5n
RGF0YVN0b3JlOjpObyk7CisgICAgbV9wcm9jZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3dlYlBhZ2VJRCwgKnRo
aXMpOworCisgICAgZmluaXNoQXR0YWNoaW5nVG9XZWJQcm9jZXNzKFByb2Nlc3NMYXVuY2hSZWFz
b246OlByb2Nlc3NTd2FwKTsKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGF1dG8gYWNjZXNz
aWJpbGl0eVRva2VuID0gcHJvdmlzaW9uYWxQYWdlLT50YWtlQWNjZXNzaWJpbGl0eVRva2VuKCk7
CisgICAgaWYgKCFhY2Nlc3NpYmlsaXR5VG9rZW4uaXNFbXB0eSgpKQorICAgICAgICByZWdpc3Rl
cldlYlByb2Nlc3NBY2Nlc3NpYmlsaXR5VG9rZW4oeyBhY2Nlc3NpYmlsaXR5VG9rZW4uZGF0YSgp
LCBhY2Nlc3NpYmlsaXR5VG9rZW4uc2l6ZSgpIH0pOworI2VuZGlmCisjaWYgUExBVEZPUk0oR1RL
KSB8fCBQTEFURk9STShXUEUpCisgICAgYXV0byBhY2Nlc3NpYmlsaXR5UGx1Z0lEID0gcHJvdmlz
aW9uYWxQYWdlLT5hY2Nlc3NpYmlsaXR5UGx1Z0lEKCk7CisgICAgaWYgKCFhY2Nlc3NpYmlsaXR5
UGx1Z0lELmlzRW1wdHkoKSkKKyAgICAgICAgYmluZEFjY2Vzc2liaWxpdHlUcmVlKGFjY2Vzc2li
aWxpdHlQbHVnSUQpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpmaW5pc2hBdHRh
Y2hpbmdUb1dlYlByb2Nlc3MoUHJvY2Vzc0xhdW5jaFJlYXNvbiByZWFzb24pCit7CisgICAgQVNT
RVJUKG1fcHJvY2Vzcy0+c3RhdGUoKSAhPSBBdXhpbGlhcnlQcm9jZXNzUHJveHk6OlN0YXRlOjpU
ZXJtaW5hdGVkKTsKKworICAgIHVwZGF0ZUFjdGl2aXR5U3RhdGUoKTsKKyAgICB1cGRhdGVUaHJv
dHRsZVN0YXRlKCk7CisKKyAgICBkaWRBdHRhY2hUb1J1bm5pbmdQcm9jZXNzKCk7CisKKyAgICAv
LyBJbiB0aGUgcHJvY2Vzcy1zd2FwIGNhc2UsIHRoZSBQcm92aXNpb25hbFBhZ2VQcm94eSBhbHJl
YWR5IHRvb2sgY2FyZSBvZiBpbml0aWFsaXppbmcgdGhlIFdlYlBhZ2UgaW4gdGhlIFdlYlByb2Nl
c3MuCisgICAgaWYgKHJlYXNvbiAhPSBQcm9jZXNzTGF1bmNoUmVhc29uOjpQcm9jZXNzU3dhcCkK
KyAgICAgICAgaW5pdGlhbGl6ZVdlYlBhZ2UoKTsKKworICAgIG1faW5zcGVjdG9yLT51cGRhdGVG
b3JOZXdQYWdlUHJvY2VzcygqdGhpcyk7CisKKyNpZiBFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikK
KyAgICByZW1vdGVJbnNwZWN0b3JJbmZvcm1hdGlvbkRpZENoYW5nZSgpOworI2VuZGlmCisKKyAg
ICB1cGRhdGVXaGVlbEV2ZW50QWN0aXZpdHlBZnRlclByb2Nlc3NTd2FwKCk7CisKKyAgICBwYWdl
Q2xpZW50KCkuZGlkUmVsYXVuY2hQcm9jZXNzKCk7CisgICAgbV9wYWdlTG9hZFN0YXRlLmRpZFN3
YXBXZWJQcm9jZXNzZXMoKTsKKyAgICBpZiAocmVhc29uICE9IFByb2Nlc3NMYXVuY2hSZWFzb246
OkluaXRpYWxQcm9jZXNzKQorICAgICAgICBtX2RyYXdpbmdBcmVhLT53YWl0Rm9yQmFja2luZ1N0
b3JlVXBkYXRlT25OZXh0UGFpbnQoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEF0dGFj
aFRvUnVubmluZ1Byb2Nlc3MoKQoreworICAgIEFTU0VSVChoYXNSdW5uaW5nUHJvY2VzcygpKTsK
KworI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKKyAgICBBU1NFUlQoIW1fZnVsbFNjcmVlbk1h
bmFnZXIpOworICAgIG1fZnVsbFNjcmVlbk1hbmFnZXIgPSBtYWtlVW5pcXVlPFdlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyUHJveHk+KCp0aGlzLCBwYWdlQ2xpZW50KCkuZnVsbFNjcmVlbk1hbmFnZXJQcm94
eUNsaWVudCgpKTsKKyNlbmRpZgorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkK
KyAgICBBU1NFUlQoIW1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcik7CisgICAgbV9wbGF5YmFja1Nl
c3Npb25NYW5hZ2VyID0gUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpjcmVhdGUoKnRoaXMp
OworICAgIEFTU0VSVCghbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKTsKKyAgICBtX3ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXIgPSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmNyZWF0ZSgqdGhp
cywgKm1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcik7CisgICAgaWYgKG1fdmlkZW9GdWxsc2NyZWVu
TWFuYWdlcikKKyAgICAgICAgbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT5zZXRNb2NrVmlkZW9Q
cmVzZW50YXRpb25Nb2RlRW5hYmxlZChtX21vY2tWaWRlb1ByZXNlbnRhdGlvbk1vZGVFbmFibGVk
KTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFQUExFX1BBWSkKKyAgICBBU1NFUlQoIW1fcGF5bWVu
dENvb3JkaW5hdG9yKTsKKyAgICBtX3BheW1lbnRDb29yZGluYXRvciA9IG1ha2VVbmlxdWU8V2Vi
UGF5bWVudENvb3JkaW5hdG9yUHJveHk+KCp0aGlzKTsKKyNlbmRpZgorCisjaWYgVVNFKFNZU1RF
TV9QUkVWSUVXKQorICAgIEFTU0VSVCghbV9zeXN0ZW1QcmV2aWV3Q29udHJvbGxlcik7CisgICAg
bV9zeXN0ZW1QcmV2aWV3Q29udHJvbGxlciA9IG1ha2VVbmlxdWU8U3lzdGVtUHJldmlld0NvbnRy
b2xsZXI+KCp0aGlzKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFSS0lUX0lOTElORV9QUkVWSUVX
KQorICAgIGlmIChtX3ByZWZlcmVuY2VzLT5tb2RlbEVsZW1lbnRFbmFibGVkKCkpIHsKKyAgICAg
ICAgQVNTRVJUKCFtX21vZGVsRWxlbWVudENvbnRyb2xsZXIpOworICAgICAgICBtX21vZGVsRWxl
bWVudENvbnRyb2xsZXIgPSBtYWtlVW5pcXVlPE1vZGVsRWxlbWVudENvbnRyb2xsZXI+KCp0aGlz
KTsKKyAgICB9CisjZW5kaWYKKworI2lmIEVOQUJMRShXRUJfQVVUSE4pCisgICAgQVNTRVJUKCFt
X2NyZWRlbnRpYWxzTWVzc2VuZ2VyKTsKKyAgICBtX2NyZWRlbnRpYWxzTWVzc2VuZ2VyID0gbWFr
ZVVuaXF1ZTxXZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JQcm94eT4oKnRoaXMpOworI2VuZGlm
CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9O
KQorICAgIEFTU0VSVCghbV93ZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkp
OworICAgIG1fd2ViRGV2aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlclByb3h5ID0gbWFrZVVu
aXF1ZTxXZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHk+KCp0aGlzKTsKKyNl
bmRpZgorCisjaWYgRU5BQkxFKFdFQlhSKSAmJiAhVVNFKE9QRU5YUikKKyAgICBBU1NFUlQoIW1f
eHJTeXN0ZW0pOworICAgIG1feHJTeXN0ZW0gPSBtYWtlVW5pcXVlPFBsYXRmb3JtWFJTeXN0ZW0+
KCp0aGlzKTsKKyNlbmRpZgorfQorCitSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBXZWJQYWdlUHJv
eHk6OmxhdW5jaFByb2Nlc3NGb3JSZWxvYWQoKQoreworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNF
X0xPRyhMb2FkaW5nLCAibGF1bmNoUHJvY2Vzc0ZvclJlbG9hZDoiKTsKKworICAgIGlmIChtX2lz
Q2xvc2VkKSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibGF1
bmNoUHJvY2Vzc0ZvclJlbG9hZDogcGFnZSBpcyBjbG9zZWQiKTsKKyAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisgICAgfQorICAgIAorICAgIEFTU0VSVCghaGFzUnVubmluZ1Byb2Nlc3MoKSk7Cisg
ICAgYXV0byByZWdpc3RyYWJsZURvbWFpbiA9IG1fYmFja0ZvcndhcmRMaXN0LT5jdXJyZW50SXRl
bSgpID8gUmVnaXN0cmFibGVEb21haW4geyBVUkwoVVJMKCksIG1fYmFja0ZvcndhcmRMaXN0LT5j
dXJyZW50SXRlbSgpLT51cmwoKSkgfSA6IFJlZ2lzdHJhYmxlRG9tYWluIHsgfTsKKyAgICBsYXVu
Y2hQcm9jZXNzKHJlZ2lzdHJhYmxlRG9tYWluLCBQcm9jZXNzTGF1bmNoUmVhc29uOjpDcmFzaCk7
CisKKyAgICBpZiAoIW1fYmFja0ZvcndhcmRMaXN0LT5jdXJyZW50SXRlbSgpKSB7CisgICAgICAg
IFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibGF1bmNoUHJvY2Vzc0ZvclJlbG9h
ZDogbm8gY3VycmVudCBpdGVtIHRvIHJlbG9hZCIpOworICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KyAgICB9CisKKyAgICBhdXRvIG5hdmlnYXRpb24gPSBtX25hdmlnYXRpb25TdGF0ZS0+Y3JlYXRl
UmVsb2FkTmF2aWdhdGlvbihtX2JhY2tGb3J3YXJkTGlzdC0+Y3VycmVudEl0ZW0oKSk7CisKKyAg
ICBTdHJpbmcgdXJsID0gY3VycmVudFVSTCgpOworICAgIGlmICghdXJsLmlzRW1wdHkoKSkgewor
ICAgICAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7
CisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRQZW5kaW5nQVBJUmVxdWVzdCh0cmFuc2FjdGlv
biwgeyBuYXZpZ2F0aW9uLT5uYXZpZ2F0aW9uSUQoKSwgdXJsIH0pOworICAgIH0KKworICAgIC8v
IFdlIGFsbG93IHN0YWxlIGNvbnRlbnQgd2hlbiByZWxvYWRpbmcgYSBXZWJQcm9jZXNzIHRoYXQn
cyBiZWVuIGtpbGxlZCBvciBjcmFzaGVkLgorICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6Okdv
VG9CYWNrRm9yd2FyZEl0ZW0obmF2aWdhdGlvbi0+bmF2aWdhdGlvbklEKCksIG1fYmFja0Zvcndh
cmRMaXN0LT5jdXJyZW50SXRlbSgpLT5pdGVtSUQoKSwgRnJhbWVMb2FkVHlwZTo6SW5kZXhlZEJh
Y2tGb3J3YXJkLCBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQ6Ok5vLCBzdGQ6Om51bGxvcHQs
IG1fbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpKTsKKyAgICBtX3Byb2Nlc3MtPnN0YXJ0
UmVzcG9uc2l2ZW5lc3NUaW1lcigpOworCisgICAgcmV0dXJuIG5hdmlnYXRpb247Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpzZXREcmF3aW5nQXJlYShzdGQ6OnVuaXF1ZV9wdHI8RHJhd2luZ0Fy
ZWFQcm94eT4mJiBkcmF3aW5nQXJlYSkKK3sKKyAgICBtX2RyYXdpbmdBcmVhID0gV1RGTW92ZShk
cmF3aW5nQXJlYSk7CisgICAgaWYgKCFtX2RyYXdpbmdBcmVhKQorICAgICAgICByZXR1cm47CisK
KyAgICBtX2RyYXdpbmdBcmVhLT5zdGFydFJlY2VpdmluZ01lc3NhZ2VzKCk7CisgICAgbV9kcmF3
aW5nQXJlYS0+c2V0U2l6ZSh2aWV3U2l6ZSgpKTsKKworI2lmIEVOQUJMRShBU1lOQ19TQ1JPTExJ
TkcpICYmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmIChtX2RyYXdpbmdBcmVhLT50eXBlKCkgPT0g
RHJhd2luZ0FyZWFUeXBlUmVtb3RlTGF5ZXJUcmVlKSB7CisgICAgICAgIG1fc2Nyb2xsaW5nQ29v
cmRpbmF0b3JQcm94eSA9IG1ha2VVbmlxdWU8UmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94
eT4oKnRoaXMpOworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgIC8vIE9uIGlPUywg
bWFpbiBmcmFtZSBzY3JvbGxzIGFyZSBzZW50IGluIHRlcm1zIG9mIHZpc2libGUgcmVjdCB1cGRh
dGVzLgorICAgICAgICBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHktPnNldFByb3BhZ2F0ZXNN
YWluRnJhbWVTY3JvbGxzKGZhbHNlKTsKKyNlbmRpZgorICAgIH0KKyNlbmRpZgorfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6aW5pdGlhbGl6ZVdlYlBhZ2UoKQoreworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2V0RHJhd2luZ0FyZWEocGFnZUNs
aWVudCgpLmNyZWF0ZURyYXdpbmdBcmVhUHJveHkobV9wcm9jZXNzKSk7CisgICAgQVNTRVJUKG1f
ZHJhd2luZ0FyZWEpOworCisjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCisgICAgLy8gSW5p
dGlhbGl6ZSByZW1vdGUgaW5zcGVjdG9yIGNvbm5lY3Rpb24gbm93IHRoYXQgd2UgaGF2ZSBhIHN1
Yi1wcm9jZXNzIHRoYXQgaXMgaG9zdGluZyBvbmUgb2Ygb3VyIHdlYiB2aWV3cy4KKyAgICBJbnNw
ZWN0b3I6OlJlbW90ZUluc3BlY3Rvcjo6c2luZ2xldG9uKCk7CisjZW5kaWYKKworICAgIGlmIChh
dXRvJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciA9IG1fY29uZmlndXJhdGlvbi0+YXR0cmli
dXRlZEJ1bmRsZUlkZW50aWZpZXIoKTsgISFhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllcikgewor
ICAgICAgICBXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnMgcGFyYW1ldGVycyB7IGF0dHJpYnV0ZWRC
dW5kbGVJZGVudGlmaWVyIH07CisgICAgICAgIHdlYnNpdGVEYXRhU3RvcmUoKS5uZXR3b3JrUHJv
Y2VzcygpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpBZGRXZWJQYWdlTmV0d29ya1Bh
cmFtZXRlcnMoc2Vzc2lvbklEKCksIG1faWRlbnRpZmllciwgV1RGTW92ZShwYXJhbWV0ZXJzKSks
IDApOworICAgIH0KKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkNyZWF0ZVdlYlBh
Z2UobV93ZWJQYWdlSUQsIGNyZWF0aW9uUGFyYW1ldGVycyhtX3Byb2Nlc3MsICptX2RyYXdpbmdB
cmVhKSksIDApOworCisgICAgbV9wcm9jZXNzLT5hZGRWaXNpdGVkTGlua1N0b3JlVXNlcih2aXNp
dGVkTGlua1N0b3JlKCksIG1faWRlbnRpZmllcik7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpj
bG9zZSgpCit7CisgICAgaWYgKG1faXNDbG9zZWQpCisgICAgICAgIHJldHVybjsKKworICAgIFdF
QlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiY2xvc2U6Iik7CisKKyAgICBtX2lzQ2xv
c2VkID0gdHJ1ZTsKKworICAgIHJlcG9ydFBhZ2VMb2FkUmVzdWx0KFJlc291cmNlRXJyb3IgeyBS
ZXNvdXJjZUVycm9yOjpUeXBlOjpDYW5jZWxsYXRpb24gfSk7CisKKyAgICBpZiAobV9hY3RpdmVQ
b3B1cE1lbnUpCisgICAgICAgIG1fYWN0aXZlUG9wdXBNZW51LT5jYW5jZWxUcmFja2luZygpOwor
CisgICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbikgeworICAgICAgICBpZiAoYXV0byog
YXV0b21hdGlvblNlc3Npb24gPSBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5hdXRvbWF0aW9uU2Vz
c2lvbigpKQorICAgICAgICAgICAgYXV0b21hdGlvblNlc3Npb24tPndpbGxDbG9zZVBhZ2UoKnRo
aXMpOworICAgIH0KKworI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQorICAgIG1fYWN0aXZlQ29u
dGV4dE1lbnUgPSBudWxscHRyOworI2VuZGlmCisKKyAgICBtX3Byb3Zpc2lvbmFsUGFnZSA9IG51
bGxwdHI7CisKKyAgICBtX2luc3BlY3Rvci0+aW52YWxpZGF0ZSgpOworCisgICAgbV9iYWNrRm9y
d2FyZExpc3QtPnBhZ2VDbG9zZWQoKTsKKyAgICBtX2luc3BlY3RvckNvbnRyb2xsZXItPnBhZ2VD
bG9zZWQoKTsKKyNpZiBFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikKKyAgICBtX2luc3BlY3RvckRl
YnVnZ2FibGUgPSBudWxscHRyOworI2VuZGlmCisgICAgcGFnZUNsaWVudCgpLnBhZ2VDbG9zZWQo
KTsKKworICAgIG1fcHJvY2Vzcy0+ZGlzY29ubmVjdEZyYW1lc0Zyb21QYWdlKHRoaXMpOworCisg
ICAgbV9sb2FkZXJDbGllbnQgPSBudWxscHRyOworICAgIG1fbmF2aWdhdGlvbkNsaWVudCA9IG1h
a2VVbmlxdWVSZWY8QVBJOjpOYXZpZ2F0aW9uQ2xpZW50PigpOworICAgIG1fcG9saWN5Q2xpZW50
ID0gbnVsbHB0cjsKKyAgICBtX2ljb25Mb2FkaW5nQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6Oklj
b25Mb2FkaW5nQ2xpZW50PigpOworICAgIG1fZm9ybUNsaWVudCA9IG1ha2VVbmlxdWU8QVBJOjpG
b3JtQ2xpZW50PigpOworICAgIG1fdWlDbGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6VUlDbGllbnQ+
KCk7CisgICAgbV9maW5kQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6OkZpbmRDbGllbnQ+KCk7Cisg
ICAgbV9maW5kTWF0Y2hlc0NsaWVudCA9IG1ha2VVbmlxdWU8QVBJOjpGaW5kTWF0Y2hlc0NsaWVu
dD4oKTsKKyAgICBtX2RpYWdub3N0aWNMb2dnaW5nQ2xpZW50ID0gbnVsbHB0cjsKKyNpZiBFTkFC
TEUoQ09OVEVYVF9NRU5VUykKKyAgICBtX2NvbnRleHRNZW51Q2xpZW50ID0gbWFrZVVuaXF1ZTxB
UEk6OkNvbnRleHRNZW51Q2xpZW50PigpOworI2VuZGlmCisjaWYgRU5BQkxFKEZVTExTQ1JFRU5f
QVBJKQorICAgIG1fZnVsbHNjcmVlbkNsaWVudCA9IG1ha2VVbmlxdWU8QVBJOjpGdWxsc2NyZWVu
Q2xpZW50PigpOworI2VuZGlmCisKKyAgICByZXNldFN0YXRlKFJlc2V0U3RhdGVSZWFzb246OlBh
Z2VJbnZhbGlkYXRlZCk7CisKKyAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkuYmFja0Zvcndh
cmRDYWNoZSgpLnJlbW92ZUVudHJpZXNGb3JQYWdlKCp0aGlzKTsKKworICAgIFJ1bkxvb3A6OmN1
cnJlbnQoKS5kaXNwYXRjaChbZGVzdGluYXRpb25JRCA9IG1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlv
bklEKCksIHByb3RlY3RlZFByb2Nlc3MgPSBtX3Byb2Nlc3MuY29weVJlZigpLCBwcmV2ZW50UHJv
Y2Vzc1NodXRkb3duU2NvcGUgPSBtX3Byb2Nlc3MtPnNodXRkb3duUHJldmVudGluZ1Njb3BlKCld
IHsKKyAgICAgICAgcHJvdGVjdGVkUHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6Q2xv
c2UoKSwgZGVzdGluYXRpb25JRCk7CisgICAgfSk7CisgICAgbV9wcm9jZXNzLT5yZW1vdmVXZWJQ
YWdlKCp0aGlzLCBXZWJQcm9jZXNzUHJveHk6OkVuZHNVc2luZ0RhdGFTdG9yZTo6WWVzKTsKKyAg
ICBtX3Byb2Nlc3MtPnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fd2ViUGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnBy
b2Nlc3NQb29sKCkuc3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyUHJveHk+KCktPmNs
ZWFyTm90aWZpY2F0aW9ucyh0aGlzKTsKKworICAgIC8vIE51bGwgb3V0IHJlbGF0ZWQgV2ViUGFn
ZVByb3h5IHRvIGF2b2lkIGxlYWtzLgorICAgIG1fY29uZmlndXJhdGlvbi0+c2V0UmVsYXRlZFBh
Z2UobnVsbHB0cik7CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIC8vIE1ha2Ugc3Vy
ZSB3ZSBkb24ndCBob2xkIGEgcHJvY2VzcyBhc3NlcnRpb24gYWZ0ZXIgZ2V0dGluZyBjbG9zZWQu
CisgICAgbV9pc1Zpc2libGVBY3Rpdml0eSA9IG51bGxwdHI7CisgICAgbV9pc0F1ZGlibGVBY3Rp
dml0eSA9IG51bGxwdHI7CisgICAgbV9pc0NhcHR1cmluZ0FjdGl2aXR5ID0gbnVsbHB0cjsKKyAg
ICBtX29wZW5pbmdBcHBMaW5rQWN0aXZpdHkgPSBudWxscHRyOworICAgIG1fYXVkaWJsZUFjdGl2
aXR5VGltZXIuc3RvcCgpOworI2VuZGlmCisKKyAgICBzdG9wQWxsVVJMU2NoZW1lVGFza3MoKTsK
KyAgICB1cGRhdGVQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoTWVkaWFQcm9kdWNlcjo6SXNOb3RQbGF5
aW5nKTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OnRyeUNsb3NlKCkKK3sKKyAgICBpZiAoIWhh
c1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgV0VCUEFHRVBS
T1hZX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJ0cnlDbG9zZToiKTsKKworICAgIC8vIENsb3NlIHdp
dGhvdXQgZGVsYXkgaWYgdGhlIHByb2Nlc3MgYWxsb3dzIGl0LiBPdXIgZ29hbCBpcyB0byB0ZXJt
aW5hdGUKKyAgICAvLyB0aGUgcHJvY2Vzcywgc28gd2UgY2hlY2sgYSBwZXItcHJvY2VzcyBzdGF0
dXMgYml0LgorICAgIGlmIChtX3Byb2Nlc3MtPmlzU3VkZGVuVGVybWluYXRpb25FbmFibGVkKCkp
CisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgbV90cnlDbG9zZVRpbWVvdXRUaW1lci5zdGFy
dE9uZVNob3QodHJ5Q2xvc2VUaW1lb3V0RGVsYXkpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShN
ZXNzYWdlczo6V2ViUGFnZTo6VHJ5Q2xvc2UoKSwgW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQ
dHIoKnRoaXMpXShib29sIHNob3VsZENsb3NlKSB7CisgICAgICAgIGlmICghd2Vha1RoaXMpCisg
ICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgLy8gSWYgd2UgdGltZWQgb3V0LCBkb24ndCBh
c2sgdGhlIGNsaWVudCB0byBjbG9zZSBhZ2Fpbi4KKyAgICAgICAgaWYgKCFtX3RyeUNsb3NlVGlt
ZW91dFRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgbV90
cnlDbG9zZVRpbWVvdXRUaW1lci5zdG9wKCk7CisgICAgICAgIGlmIChzaG91bGRDbG9zZSkKKyAg
ICAgICAgICAgIGNsb3NlUGFnZSgpOworICAgIH0pOworICAgIHJldHVybiBmYWxzZTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnRyeUNsb3NlVGltZWRPdXQoKQoreworICAgIFdFQlBBR0VQUk9Y
WV9SRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzLCAidHJ5Q2xvc2VUaW1lZE91dDogVGltZWQgb3V0
IHdhaXRpbmcgZm9yIHRoZSBwcm9jZXNzIHRvIHJlc3BvbmQgdG8gdGhlIFdlYlBhZ2U6OlRyeUNs
b3NlIElQQywgY2xvc2luZyB0aGUgcGFnZSBub3ciKTsKKyAgICBjbG9zZVBhZ2UoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6Om1heWJlSW5pdGlhbGl6ZVNhbmRib3hFeHRlbnNpb25IYW5kbGUo
V2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBjb25zdCBVUkwmIHVybCwgY29uc3QgVVJMJiByZXNv
dXJjZURpcmVjdG9yeVVSTCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiBzYW5kYm94RXh0ZW5z
aW9uSGFuZGxlLCBib29sIGNoZWNrQXNzdW1lZFJlYWRBY2Nlc3NUb1Jlc291cmNlVVJMKQorewor
ICAgIGlmICghdXJsLmlzTG9jYWxGaWxlKCkpCisgICAgICAgIHJldHVybjsKKworI2lmIEhBVkUo
QVVESVRfVE9LRU4pCisgICAgLy8gSWYgdGhlIHByb2Nlc3MgaXMgc3RpbGwgbGF1bmNoaW5nIHRo
ZW4gaXQgZG9lcyBub3QgaGF2ZSBhIFBJRCB5ZXQuIFdlIHdpbGwgdGFrZSBjYXJlIG9mIGNyZWF0
aW5nIHRoZSBzYW5kYm94IGV4dGVuc2lvbgorICAgIC8vIG9uY2UgdGhlIHByb2Nlc3MgaGFzIGZp
bmlzaGVkIGxhdW5jaGluZy4KKyAgICBpZiAocHJvY2Vzcy5pc0xhdW5jaGluZygpIHx8IHByb2Nl
c3Mud2FzVGVybWluYXRlZCgpKQorICAgICAgICByZXR1cm47CisjZW5kaWYKKworICAgIGlmICgh
cmVzb3VyY2VEaXJlY3RvcnlVUkwuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChjaGVja0Fzc3Vt
ZWRSZWFkQWNjZXNzVG9SZXNvdXJjZVVSTCAmJiBwcm9jZXNzLmhhc0Fzc3VtZWRSZWFkQWNjZXNz
VG9VUkwocmVzb3VyY2VEaXJlY3RvcnlVUkwpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAg
ICAgIGJvb2wgY3JlYXRlZEV4dGVuc2lvbiA9IGZhbHNlOworI2lmIEhBVkUoQVVESVRfVE9LRU4p
CisgICAgICAgIEFTU0VSVChwcm9jZXNzLmNvbm5lY3Rpb24oKSAmJiBwcm9jZXNzLmNvbm5lY3Rp
b24oKS0+Z2V0QXVkaXRUb2tlbigpKTsKKyAgICAgICAgaWYgKHByb2Nlc3MuY29ubmVjdGlvbigp
ICYmIHByb2Nlc3MuY29ubmVjdGlvbigpLT5nZXRBdWRpdFRva2VuKCkpIHsKKyAgICAgICAgICAg
IGlmIChhdXRvIGhhbmRsZSA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRC
eUF1ZGl0VG9rZW4ocmVzb3VyY2VEaXJlY3RvcnlVUkwuZmlsZVN5c3RlbVBhdGgoKSwgKihwcm9j
ZXNzLmNvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkpIHsKKyAgICAgICAgICAgICAgICBz
YW5kYm94RXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZSgqaGFuZGxlKTsKKyAgICAgICAgICAgICAg
ICBjcmVhdGVkRXh0ZW5zaW9uID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNl
CisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKGF1dG8gaGFuZGxlID0gU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlKHJlc291cmNlRGlyZWN0b3J5VVJMLmZpbGVTeXN0ZW1Q
YXRoKCksIFNhbmRib3hFeHRlbnNpb246OlR5cGU6OlJlYWRPbmx5KSkgeworICAgICAgICAgICAg
ICAgIHNhbmRib3hFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKCpoYW5kbGUpOworICAgICAgICAg
ICAgICAgIGNyZWF0ZWRFeHRlbnNpb24gPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9
CisKKyAgICAgICAgaWYgKGNyZWF0ZWRFeHRlbnNpb24pIHsKKyAgICAgICAgICAgIHByb2Nlc3Mu
YXNzdW1lUmVhZEFjY2Vzc1RvQmFzZVVSTCgqdGhpcywgcmVzb3VyY2VEaXJlY3RvcnlVUkwuc3Ry
aW5nKCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgaWYg
KHByb2Nlc3MuaGFzQXNzdW1lZFJlYWRBY2Nlc3NUb1VSTCh1cmwpKQorICAgICAgICByZXR1cm47
CisKKyAgICAvLyBJbnNwZWN0b3IgcmVzb3VyY2VzIGFyZSBpbiBhIGRpcmVjdG9yeSB3aXRoIGFz
c3VtZWQgYWNjZXNzLgorICAgIFJFTEVBU0VfQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJ
T04oIVdlYktpdDo6aXNJbnNwZWN0b3JQYWdlKCp0aGlzKSk7CisKKyAgICBib29sIGNyZWF0ZWRF
eHRlbnNpb24gPSBmYWxzZTsKKyNpZiBIQVZFKEFVRElUX1RPS0VOKQorICAgIEFTU0VSVChwcm9j
ZXNzLmNvbm5lY3Rpb24oKSAmJiBwcm9jZXNzLmNvbm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigp
KTsKKyAgICBpZiAocHJvY2Vzcy5jb25uZWN0aW9uKCkgJiYgcHJvY2Vzcy5jb25uZWN0aW9uKCkt
PmdldEF1ZGl0VG9rZW4oKSkgeworICAgICAgICBpZiAoYXV0byBoYW5kbGUgPSBTYW5kYm94RXh0
ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkQnlBdWRpdFRva2VuKCIvIiwgKihwcm9jZXNzLmNv
bm5lY3Rpb24oKS0+Z2V0QXVkaXRUb2tlbigpKSkpIHsKKyAgICAgICAgICAgIGNyZWF0ZWRFeHRl
bnNpb24gPSB0cnVlOworICAgICAgICAgICAgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSA9IFdURk1v
dmUoKmhhbmRsZSk7CisgICAgICAgIH0KKyAgICB9IGVsc2UKKyNlbmRpZgorICAgIHsKKyAgICAg
ICAgaWYgKGF1dG8gaGFuZGxlID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlKCIvIiwg
U2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHkpKSB7CisgICAgICAgICAgICBjcmVhdGVk
RXh0ZW5zaW9uID0gdHJ1ZTsKKyAgICAgICAgICAgIHNhbmRib3hFeHRlbnNpb25IYW5kbGUgPSBX
VEZNb3ZlKCpoYW5kbGUpOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGNyZWF0ZWRFeHRl
bnNpb24pIHsKKyAgICAgICAgd2lsbEFjcXVpcmVVbml2ZXJzYWxGaWxlUmVhZFNhbmRib3hFeHRl
bnNpb24ocHJvY2Vzcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyNpZiBQTEFURk9STShD
T0NPQSkKKyAgICBpZiAoIWxpbmtlZE9uT3JBZnRlcihXZWJDb3JlOjpTREtWZXJzaW9uOjpGaXJz
dFdpdGhvdXRVbmNvbmRpdGlvbmFsVW5pdmVyc2FsU2FuZGJveEV4dGVuc2lvbikpCisgICAgICAg
IHdpbGxBY3F1aXJlVW5pdmVyc2FsRmlsZVJlYWRTYW5kYm94RXh0ZW5zaW9uKHByb2Nlc3MpOwor
I2VuZGlmCisKKyAgICAvLyBXZSBmYWlsZWQgdG8gaXNzdWUgYW4gdW5pdmVyc2FsIGZpbGUgcmVh
ZCBhY2Nlc3Mgc2FuZGJveCwgZmFsbCBiYWNrIHRvIGlzc3Vpbmcgb25lIGZvciB0aGUgYmFzZSBV
UkwgaW5zdGVhZC4KKyAgICBhdXRvIGJhc2VVUkwgPSB1cmwudHJ1bmNhdGVkRm9yVXNlQXNCYXNl
KCk7CisgICAgYXV0byBiYXNlUGF0aCA9IGJhc2VVUkwuZmlsZVN5c3RlbVBhdGgoKTsKKyAgICBp
ZiAoYmFzZVBhdGguaXNOdWxsKCkpCisgICAgICAgIHJldHVybjsKKyNpZiBIQVZFKEFVRElUX1RP
S0VOKQorICAgIGlmIChwcm9jZXNzLmNvbm5lY3Rpb24oKSAmJiBwcm9jZXNzLmNvbm5lY3Rpb24o
KS0+Z2V0QXVkaXRUb2tlbigpKSB7CisgICAgICAgIGlmIChhdXRvIGhhbmRsZSA9IFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRCeUF1ZGl0VG9rZW4oYmFzZVBhdGgsICoocHJv
Y2Vzcy5jb25uZWN0aW9uKCktPmdldEF1ZGl0VG9rZW4oKSkpKSB7CisgICAgICAgICAgICBzYW5k
Ym94RXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZSgqaGFuZGxlKTsKKyAgICAgICAgICAgIGNyZWF0
ZWRFeHRlbnNpb24gPSB0cnVlOworICAgICAgICB9CisgICAgfSBlbHNlCisjZW5kaWYKKyAgICB7
CisgICAgICAgIGlmIChhdXRvIGhhbmRsZSA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRs
ZShiYXNlUGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6VHlwZTo6UmVhZE9ubHkpKSB7CisgICAgICAg
ICAgICBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZSgqaGFuZGxlKTsKKyAgICAgICAg
ICAgIGNyZWF0ZWRFeHRlbnNpb24gPSB0cnVlOworICAgICAgICB9CisgICAgfQorCisgICAgaWYg
KGNyZWF0ZWRFeHRlbnNpb24pCisgICAgICAgIHByb2Nlc3MuYXNzdW1lUmVhZEFjY2Vzc1RvQmFz
ZVVSTCgqdGhpcywgYmFzZVVSTC5zdHJpbmcoKSk7Cit9CisKKyNpZiAhUExBVEZPUk0oQ09DT0Ep
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjphZGRQbGF0Zm9ybUxvYWRQYXJhbWV0ZXJzKFdlYlByb2Nl
c3NQcm94eSYsIExvYWRQYXJhbWV0ZXJzJikKK3sKK30KKworI2VuZGlmCisKK1dlYlByb2Nlc3NQ
cm94eSYgV2ViUGFnZVByb3h5OjplbnN1cmVSdW5uaW5nUHJvY2VzcygpCit7CisgICAgaWYgKCFo
YXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICBsYXVuY2hQcm9jZXNzKHsgfSwgUHJvY2Vzc0xh
dW5jaFJlYXNvbjo6SW5pdGlhbFByb2Nlc3MpOworCisgICAgcmV0dXJuIG1fcHJvY2VzczsKK30K
KworUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpsb2FkUmVxdWVzdChSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3Vs
ZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3ksIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSkKK3sKKyAgICBp
ZiAobV9pc0Nsb3NlZCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBXRUJQQUdFUFJP
WFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRSZXF1ZXN0OiIpOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICBsYXVuY2hQcm9jZXNzKFJlZ2lzdHJhYmxlRG9tYWlu
IHsgcmVxdWVzdC51cmwoKSB9LCBQcm9jZXNzTGF1bmNoUmVhc29uOjpJbml0aWFsUHJvY2Vzcyk7
CisKKyAgICBhdXRvIG5hdmlnYXRpb24gPSBtX25hdmlnYXRpb25TdGF0ZS0+Y3JlYXRlTG9hZFJl
cXVlc3ROYXZpZ2F0aW9uKFJlc291cmNlUmVxdWVzdChyZXF1ZXN0KSwgbV9iYWNrRm9yd2FyZExp
c3QtPmN1cnJlbnRJdGVtKCkpOworCisgICAgaWYgKHNob3VsZEZvcmNlRm9yZWdyb3VuZFByaW9y
aXR5Rm9yQ2xpZW50TmF2aWdhdGlvbigpKQorICAgICAgICBuYXZpZ2F0aW9uLT5zZXRDbGllbnRO
YXZpZ2F0aW9uQWN0aXZpdHkocHJvY2VzcygpLnRocm90dGxlcigpLmZvcmVncm91bmRBY3Rpdml0
eSgiQ2xpZW50IG5hdmlnYXRpb24iX3MpKTsKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIHNl
dExhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKHJlcXVlc3QpOworI2VuZGlmCisKKyAgICBs
b2FkUmVxdWVzdFdpdGhOYXZpZ2F0aW9uU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2Vi
UGFnZUlELCBuYXZpZ2F0aW9uLmdldCgpLCBXVEZNb3ZlKHJlcXVlc3QpLCBzaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5LCB1c2VyRGF0YSwgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkOjpO
bywgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbigpKTsKKyAgICByZXR1cm4gbmF2aWdhdGlv
bjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmxvYWRSZXF1ZXN0V2l0aE5hdmlnYXRpb25TaGFy
ZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmll
ciB3ZWJQYWdlSUQsIEFQSTo6TmF2aWdhdGlvbiYgbmF2aWdhdGlvbiwgUmVzb3VyY2VSZXF1ZXN0
JiYgcmVxdWVzdCwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5LCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIHN0ZDo6b3B0aW9uYWw8TmF2aWdh
dGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4sIHN0ZDo6
b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiB3ZWJzaXRlUG9saWNpZXMsIHN0ZDo6b3B0
aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IGV4aXN0aW5nTmV0d29ya1Jlc291
cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSkKK3sKKyAgICBBU1NFUlQoIW1faXNDbG9zZWQpOwor
CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJsb2FkUmVxdWVzdFdpdGhO
YXZpZ2F0aW9uU2hhcmVkOiIpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRT
dGF0ZS50cmFuc2FjdGlvbigpOworCisgICAgYXV0byB1cmwgPSByZXF1ZXN0LnVybCgpOworICAg
IGlmIChzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgPT0gU2hvdWxkVHJlYXRBc0NvbnRpbnVp
bmdMb2FkOjpObykKKyAgICAgICAgbV9wYWdlTG9hZFN0YXRlLnNldFBlbmRpbmdBUElSZXF1ZXN0
KHRyYW5zYWN0aW9uLCB7IG5hdmlnYXRpb24ubmF2aWdhdGlvbklEKCksIHVybC5zdHJpbmcoKSB9
KTsKKworICAgIExvYWRQYXJhbWV0ZXJzIGxvYWRQYXJhbWV0ZXJzOworICAgIGxvYWRQYXJhbWV0
ZXJzLm5hdmlnYXRpb25JRCA9IG5hdmlnYXRpb24ubmF2aWdhdGlvbklEKCk7CisgICAgbG9hZFBh
cmFtZXRlcnMucmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCk7CisgICAgbG9hZFBhcmFtZXRlcnMu
c2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSA9IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3k7CisgICAgbG9hZFBhcmFtZXRlcnMudXNlckRhdGEgPSBVc2VyRGF0YShwcm9jZXNzLT50cmFu
c2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhKS5nZXQoKSk7CisgICAgbG9hZFBhcmFtZXRl
cnMuc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkID0gc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdM
b2FkOworICAgIGxvYWRQYXJhbWV0ZXJzLndlYnNpdGVQb2xpY2llcyA9IFdURk1vdmUod2Vic2l0
ZVBvbGljaWVzKTsKKyAgICBsb2FkUGFyYW1ldGVycy5sb2NrSGlzdG9yeSA9IG5hdmlnYXRpb24u
bG9ja0hpc3RvcnkoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5sb2NrQmFja0ZvcndhcmRMaXN0ID0g
bmF2aWdhdGlvbi5sb2NrQmFja0ZvcndhcmRMaXN0KCk7CisgICAgbG9hZFBhcmFtZXRlcnMuY2xp
ZW50UmVkaXJlY3RTb3VyY2VGb3JIaXN0b3J5ID0gbmF2aWdhdGlvbi5jbGllbnRSZWRpcmVjdFNv
dXJjZUZvckhpc3RvcnkoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluID0gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjsKKyAgICBsb2FkUGFyYW1l
dGVycy5leGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUgPSBleGlz
dGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWU7CisgICAgbWF5YmVJbml0
aWFsaXplU2FuZGJveEV4dGVuc2lvbkhhbmRsZShwcm9jZXNzLCB1cmwsIG1fcGFnZUxvYWRTdGF0
ZS5yZXNvdXJjZURpcmVjdG9yeVVSTCgpLCBsb2FkUGFyYW1ldGVycy5zYW5kYm94RXh0ZW5zaW9u
SGFuZGxlKTsKKworICAgIGFkZFBsYXRmb3JtTG9hZFBhcmFtZXRlcnMocHJvY2VzcywgbG9hZFBh
cmFtZXRlcnMpOworCisgICAgcHJlY29ubmVjdFRvKHVybCk7CisKKyAgICBuYXZpZ2F0aW9uLnNl
dElzTG9hZGVkV2l0aE5hdmlnYXRpb25TaGFyZWQodHJ1ZSk7CisKKyAgICBwcm9jZXNzLT5tYXJr
UHJvY2Vzc0FzUmVjZW50bHlVc2VkKCk7CisKKyAgICBpZiAoIXByb2Nlc3MtPmlzTGF1bmNoaW5n
KCkgfHwgIXVybC5pc0xvY2FsRmlsZSgpKQorICAgICAgICBwcm9jZXNzLT5zZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlOjpMb2FkUmVxdWVzdChsb2FkUGFyYW1ldGVycyksIHdlYlBhZ2VJRCk7CisgICAg
ZWxzZQorICAgICAgICBwcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpMb2FkUmVxdWVz
dFdhaXRpbmdGb3JQcm9jZXNzTGF1bmNoKGxvYWRQYXJhbWV0ZXJzLCBtX3BhZ2VMb2FkU3RhdGUu
cmVzb3VyY2VEaXJlY3RvcnlVUkwoKSwgbV9pZGVudGlmaWVyLCB0cnVlKSwgd2ViUGFnZUlEKTsK
KyAgICBwcm9jZXNzLT5zdGFydFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKK30KKworUmVmUHRyPEFQ
STo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpsb2FkRmlsZShjb25zdCBTdHJpbmcmIGZpbGVV
UkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVzb3VyY2VEaXJlY3RvcnlVUkxTdHJpbmcsIEFQSTo6
T2JqZWN0KiB1c2VyRGF0YSkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGlu
ZywgImxvYWRGaWxlOiIpOworCisgICAgaWYgKG1faXNDbG9zZWQpIHsKKyAgICAgICAgV0VCUEFH
RVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJsb2FkRmlsZTogcGFnZSBpcyBjbG9zZWQiKTsK
KyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisjaWYgUExBVEZPUk0oTUFDKQorICAg
IGlmIChpc1F1YXJhbnRpbmVkQW5kTm90VXNlckFwcHJvdmVkKGZpbGVVUkxTdHJpbmcpKSB7Cisg
ICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZEZpbGU6IGZpbGUg
Y2Fubm90IGJlIG9wZW5lZCBiZWNhdXNlIGl0IGlzIGZyb20gYW4gdW5pZGVudGlmaWVkIGRldmVs
b3Blci4iKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorI2VuZGlmCisKKyAgICBp
ZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIGxhdW5jaFByb2Nlc3MoeyB9LCBQcm9j
ZXNzTGF1bmNoUmVhc29uOjpJbml0aWFsUHJvY2Vzcyk7CisKKyAgICBVUkwgZmlsZVVSTCA9IFVS
TChVUkwoKSwgZmlsZVVSTFN0cmluZyk7CisgICAgaWYgKCFmaWxlVVJMLmlzTG9jYWxGaWxlKCkp
IHsKKyAgICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJsb2FkRmlsZTog
ZmlsZSBpcyBub3QgbG9jYWwiKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisg
ICAgVVJMIHJlc291cmNlRGlyZWN0b3J5VVJMOworICAgIGlmIChyZXNvdXJjZURpcmVjdG9yeVVS
TFN0cmluZy5pc051bGwoKSkKKyAgICAgICAgcmVzb3VyY2VEaXJlY3RvcnlVUkwgPSBVUkwoeyB9
LCAiZmlsZTovLy8iX3MpOworICAgIGVsc2UgeworICAgICAgICByZXNvdXJjZURpcmVjdG9yeVVS
TCA9IFVSTChVUkwoKSwgcmVzb3VyY2VEaXJlY3RvcnlVUkxTdHJpbmcpOworICAgICAgICBpZiAo
IXJlc291cmNlRGlyZWN0b3J5VVJMLmlzTG9jYWxGaWxlKCkpIHsKKyAgICAgICAgICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZEZpbGU6IHJlc291cmNlIFVSTCBpcyBu
b3QgbG9jYWwiKTsKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB9CisgICAg
fQorCisgICAgYXV0byBuYXZpZ2F0aW9uID0gbV9uYXZpZ2F0aW9uU3RhdGUtPmNyZWF0ZUxvYWRS
ZXF1ZXN0TmF2aWdhdGlvbihSZXNvdXJjZVJlcXVlc3QoZmlsZVVSTCksIG1fYmFja0ZvcndhcmRM
aXN0LT5jdXJyZW50SXRlbSgpKTsKKworICAgIGlmIChzaG91bGRGb3JjZUZvcmVncm91bmRQcmlv
cml0eUZvckNsaWVudE5hdmlnYXRpb24oKSkKKyAgICAgICAgbmF2aWdhdGlvbi0+c2V0Q2xpZW50
TmF2aWdhdGlvbkFjdGl2aXR5KHByb2Nlc3MoKS50aHJvdHRsZXIoKS5mb3JlZ3JvdW5kQWN0aXZp
dHkoIkNsaWVudCBuYXZpZ2F0aW9uIl9zKSk7CisKKyAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9w
YWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisKKyAgICBtX3BhZ2VMb2FkU3RhdGUuc2V0UGVu
ZGluZ0FQSVJlcXVlc3QodHJhbnNhY3Rpb24sIHsgbmF2aWdhdGlvbi0+bmF2aWdhdGlvbklEKCks
IGZpbGVVUkxTdHJpbmcgfSwgcmVzb3VyY2VEaXJlY3RvcnlVUkwpOworCisgICAgTG9hZFBhcmFt
ZXRlcnMgbG9hZFBhcmFtZXRlcnM7CisgICAgbG9hZFBhcmFtZXRlcnMubmF2aWdhdGlvbklEID0g
bmF2aWdhdGlvbi0+bmF2aWdhdGlvbklEKCk7CisgICAgbG9hZFBhcmFtZXRlcnMucmVxdWVzdCA9
IGZpbGVVUkw7CisgICAgbG9hZFBhcmFtZXRlcnMuc2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGlj
eSA9IFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3k6OlNob3VsZE5vdEFsbG93OworICAgIGxv
YWRQYXJhbWV0ZXJzLnVzZXJEYXRhID0gVXNlckRhdGEocHJvY2VzcygpLnRyYW5zZm9ybU9iamVj
dHNUb0hhbmRsZXModXNlckRhdGEpLmdldCgpKTsKKyAgICBjb25zdCBib29sIGNoZWNrQXNzdW1l
ZFJlYWRBY2Nlc3NUb1Jlc291cmNlVVJMID0gZmFsc2U7CisgICAgbWF5YmVJbml0aWFsaXplU2Fu
ZGJveEV4dGVuc2lvbkhhbmRsZShtX3Byb2Nlc3MsIGZpbGVVUkwsIHJlc291cmNlRGlyZWN0b3J5
VVJMLCBsb2FkUGFyYW1ldGVycy5zYW5kYm94RXh0ZW5zaW9uSGFuZGxlLCBjaGVja0Fzc3VtZWRS
ZWFkQWNjZXNzVG9SZXNvdXJjZVVSTCk7CisgICAgYWRkUGxhdGZvcm1Mb2FkUGFyYW1ldGVycyht
X3Byb2Nlc3MsIGxvYWRQYXJhbWV0ZXJzKTsKKworICAgIG1fcHJvY2Vzcy0+bWFya1Byb2Nlc3NB
c1JlY2VudGx5VXNlZCgpOworICAgIGlmIChtX3Byb2Nlc3MtPmlzTGF1bmNoaW5nKCkpCisgICAg
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkxvYWRSZXF1ZXN0V2FpdGluZ0ZvclByb2Nlc3NM
YXVuY2gobG9hZFBhcmFtZXRlcnMsIHJlc291cmNlRGlyZWN0b3J5VVJMLCBtX2lkZW50aWZpZXIs
IGNoZWNrQXNzdW1lZFJlYWRBY2Nlc3NUb1Jlc291cmNlVVJMKSk7CisgICAgZWxzZQorICAgICAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpMb2FkUmVxdWVzdChsb2FkUGFyYW1ldGVycykpOwor
ICAgIG1fcHJvY2Vzcy0+c3RhcnRSZXNwb25zaXZlbmVzc1RpbWVyKCk7CisKKyAgICByZXR1cm4g
bmF2aWdhdGlvbjsKK30KKworUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojps
b2FkRGF0YShjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEsIGNvbnN0IFN0cmluZyYgTUlN
RVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2RpbmcsIGNvbnN0IFN0cmluZyYgYmFzZVVSTCwgQVBJ
OjpPYmplY3QqIHVzZXJEYXRhLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExv
YWRpbmcsICJsb2FkRGF0YToiKTsKKworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKKyAg
ICBpZiAoTUlNRVR5cGUgPT0gInRleHQvaHRtbCJfcyAmJiAhaXNGdWxsV2ViQnJvd3NlcigpKQor
ICAgICAgICBtX2xpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMgPSB0cnVlOworI2Vu
ZGlmCisKKyAgICBpZiAobV9pc0Nsb3NlZCkgeworICAgICAgICBXRUJQQUdFUFJPWFlfUkVMRUFT
RV9MT0coTG9hZGluZywgImxvYWREYXRhOiBwYWdlIGlzIGNsb3NlZCIpOworICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICB9CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAg
ICAgIGxhdW5jaFByb2Nlc3MoeyB9LCBQcm9jZXNzTGF1bmNoUmVhc29uOjpJbml0aWFsUHJvY2Vz
cyk7CisKKyAgICBhdXRvIG5hdmlnYXRpb24gPSBtX25hdmlnYXRpb25TdGF0ZS0+Y3JlYXRlTG9h
ZERhdGFOYXZpZ2F0aW9uKG1ha2VVbmlxdWU8QVBJOjpTdWJzdGl0dXRlRGF0YT4oZGF0YS52ZWN0
b3IoKSwgTUlNRVR5cGUsIGVuY29kaW5nLCBiYXNlVVJMLCB1c2VyRGF0YSkpOworCisgICAgaWYg
KHNob3VsZEZvcmNlRm9yZWdyb3VuZFByaW9yaXR5Rm9yQ2xpZW50TmF2aWdhdGlvbigpKQorICAg
ICAgICBuYXZpZ2F0aW9uLT5zZXRDbGllbnROYXZpZ2F0aW9uQWN0aXZpdHkocHJvY2VzcygpLnRo
cm90dGxlcigpLmZvcmVncm91bmRBY3Rpdml0eSgiQ2xpZW50IG5hdmlnYXRpb24iX3MpKTsKKwor
ICAgIGxvYWREYXRhV2l0aE5hdmlnYXRpb25TaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93
ZWJQYWdlSUQsIG5hdmlnYXRpb24sIGRhdGEsIE1JTUVUeXBlLCBlbmNvZGluZywgYmFzZVVSTCwg
dXNlckRhdGEsIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDo6Tm8sIGlzTmF2aWdhdGluZ1Rv
QXBwQm91bmREb21haW4oKSwgc3RkOjpudWxsb3B0LCBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5LCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4pOwor
ICAgIHJldHVybiBuYXZpZ2F0aW9uOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9hZERhdGFX
aXRoTmF2aWdhdGlvblNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFdlYkNv
cmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCwgQVBJOjpOYXZpZ2F0aW9uJiBuYXZpZ2F0aW9u
LCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEsIGNvbnN0IFN0cmluZyYgTUlNRVR5cGUs
IGNvbnN0IFN0cmluZyYgZW5jb2RpbmcsIGNvbnN0IFN0cmluZyYgYmFzZVVSTCwgQVBJOjpPYmpl
Y3QqIHVzZXJEYXRhLCBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgc2hvdWxkVHJlYXRBc0Nv
bnRpbnVpbmdMb2FkLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBp
c05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBzdGQ6Om9wdGlvbmFsPFdlYnNpdGVQb2xpY2ll
c0RhdGE+JiYgd2Vic2l0ZVBvbGljaWVzLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHNo
b3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3ksIFN1YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9y
eVZpc2liaWxpdHkgc2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5KQoreworICAgIFdFQlBBR0VQUk9Y
WV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZERhdGFXaXRoTmF2aWdhdGlvbiIpOworCisgICAg
QVNTRVJUKCFtX2lzQ2xvc2VkKTsKKworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2Fk
U3RhdGUudHJhbnNhY3Rpb24oKTsKKworICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRQZW5kaW5nQVBJ
UmVxdWVzdCh0cmFuc2FjdGlvbiwgeyBuYXZpZ2F0aW9uLm5hdmlnYXRpb25JRCgpLCAhYmFzZVVS
TC5pc0VtcHR5KCkgPyBiYXNlVVJMIDogYWJvdXRCbGFua1VSTCgpLnN0cmluZygpIH0pOworCisg
ICAgTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFtZXRlcnM7CisgICAgbG9hZFBhcmFtZXRlcnMuc2Vz
c2lvbkhpc3RvcnlWaXNpYmlsaXR5ID0gc2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5OworICAgIGxv
YWRQYXJhbWV0ZXJzLm5hdmlnYXRpb25JRCA9IG5hdmlnYXRpb24ubmF2aWdhdGlvbklEKCk7Cisg
ICAgbG9hZFBhcmFtZXRlcnMuZGF0YSA9IGRhdGE7CisgICAgbG9hZFBhcmFtZXRlcnMuTUlNRVR5
cGUgPSBNSU1FVHlwZTsKKyAgICBsb2FkUGFyYW1ldGVycy5lbmNvZGluZ05hbWUgPSBlbmNvZGlu
ZzsKKyAgICBsb2FkUGFyYW1ldGVycy5iYXNlVVJMU3RyaW5nID0gYmFzZVVSTDsKKyAgICBsb2Fk
UGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgPSBzaG91bGRUcmVhdEFzQ29u
dGludWluZ0xvYWQ7CisgICAgbG9hZFBhcmFtZXRlcnMudXNlckRhdGEgPSBVc2VyRGF0YShwcm9j
ZXNzLT50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhKS5nZXQoKSk7CisgICAgbG9h
ZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzID0gV1RGTW92ZSh3ZWJzaXRlUG9saWNpZXMpOwor
ICAgIGxvYWRQYXJhbWV0ZXJzLnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBzaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5OworICAgIGxvYWRQYXJhbWV0ZXJzLmlzTmF2aWdhdGluZ1Rv
QXBwQm91bmREb21haW4gPSBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOworICAgIGFkZFBs
YXRmb3JtTG9hZFBhcmFtZXRlcnMocHJvY2VzcywgbG9hZFBhcmFtZXRlcnMpOworCisgICAgcHJv
Y2Vzcy0+bWFya1Byb2Nlc3NBc1JlY2VudGx5VXNlZCgpOworICAgIHByb2Nlc3MtPmFzc3VtZVJl
YWRBY2Nlc3NUb0Jhc2VVUkwoKnRoaXMsIGJhc2VVUkwpOworICAgIHByb2Nlc3MtPnNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OkxvYWREYXRhKGxvYWRQYXJhbWV0ZXJzKSwgd2ViUGFnZUlEKTsKKyAg
ICBwcm9jZXNzLT5zdGFydFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKK30KKworUmVmUHRyPEFQSTo6
TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpsb2FkU2ltdWxhdGVkUmVxdWVzdChXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmJiBzaW11bGF0ZWRSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiYgc2ltdWxhdGVkUmVzcG9uc2UsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSkK
K3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRTaW11bGF0ZWRS
ZXF1ZXN0OiIpOworCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgc2V0TGFzdE5hdmlnYXRpb25X
YXNBcHBJbml0aWF0ZWQoc2ltdWxhdGVkUmVxdWVzdCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShB
UFBfQk9VTkRfRE9NQUlOUykKKyAgICBpZiAoc2ltdWxhdGVkUmVzcG9uc2UubWltZVR5cGUoKSA9
PSAidGV4dC9odG1sIl9zICYmICFpc0Z1bGxXZWJCcm93c2VyKCkpCisgICAgICAgIG1fbGltaXRz
TmF2aWdhdGlvbnNUb0FwcEJvdW5kRG9tYWlucyA9IHRydWU7CisjZW5kaWYKKworICAgIGlmICht
X2lzQ2xvc2VkKSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAi
bG9hZFNpbXVsYXRlZFJlcXVlc3Q6IHBhZ2UgaXMgY2xvc2VkIik7CisgICAgICAgIHJldHVybiBu
dWxscHRyOworICAgIH0KKworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAg
bGF1bmNoUHJvY2VzcyhSZWdpc3RyYWJsZURvbWFpbiB7IHNpbXVsYXRlZFJlcXVlc3QudXJsKCkg
fSwgUHJvY2Vzc0xhdW5jaFJlYXNvbjo6SW5pdGlhbFByb2Nlc3MpOworCisgICAgYXV0byBuYXZp
Z2F0aW9uID0gbV9uYXZpZ2F0aW9uU3RhdGUtPmNyZWF0ZVNpbXVsYXRlZExvYWRXaXRoRGF0YU5h
dmlnYXRpb24oUmVzb3VyY2VSZXF1ZXN0KHNpbXVsYXRlZFJlcXVlc3QpLCBtYWtlVW5pcXVlPEFQ
STo6U3Vic3RpdHV0ZURhdGE+KGRhdGEudmVjdG9yKCksIFJlc291cmNlUmVzcG9uc2Uoc2ltdWxh
dGVkUmVzcG9uc2UpLCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNp
YmlsaXR5OjpWaXNpYmxlKSwgbV9iYWNrRm9yd2FyZExpc3QtPmN1cnJlbnRJdGVtKCkpOworCisg
ICAgaWYgKHNob3VsZEZvcmNlRm9yZWdyb3VuZFByaW9yaXR5Rm9yQ2xpZW50TmF2aWdhdGlvbigp
KQorICAgICAgICBuYXZpZ2F0aW9uLT5zZXRDbGllbnROYXZpZ2F0aW9uQWN0aXZpdHkocHJvY2Vz
cygpLnRocm90dGxlcigpLmZvcmVncm91bmRBY3Rpdml0eSgiQ2xpZW50IG5hdmlnYXRpb24iX3Mp
KTsKKworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rpb24o
KTsKKworICAgIGF1dG8gYmFzZVVSTCA9IHNpbXVsYXRlZFJlcXVlc3QudXJsKCkuc3RyaW5nKCk7
CisgICAgc2ltdWxhdGVkUmVzcG9uc2Uuc2V0VVJMKHNpbXVsYXRlZFJlcXVlc3QudXJsKCkpOyAv
LyBUaGVzZSBzaG91bGQgYWx3YXlzIG1hdGNoIGZvciBzaW11bGF0ZWQgbG9hZAorCisgICAgbV9w
YWdlTG9hZFN0YXRlLnNldFBlbmRpbmdBUElSZXF1ZXN0KHRyYW5zYWN0aW9uLCB7IG5hdmlnYXRp
b24tPm5hdmlnYXRpb25JRCgpLCAhYmFzZVVSTC5pc0VtcHR5KCkgPyBiYXNlVVJMIDogYWJvdXRC
bGFua1VSTCgpLnN0cmluZygpIH0pOworCisgICAgTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFtZXRl
cnM7CisgICAgbG9hZFBhcmFtZXRlcnMubmF2aWdhdGlvbklEID0gbmF2aWdhdGlvbi0+bmF2aWdh
dGlvbklEKCk7CisgICAgbG9hZFBhcmFtZXRlcnMucmVxdWVzdCA9IFdURk1vdmUoc2ltdWxhdGVk
UmVxdWVzdCk7CisgICAgbG9hZFBhcmFtZXRlcnMuZGF0YSA9IGRhdGE7CisgICAgbG9hZFBhcmFt
ZXRlcnMuTUlNRVR5cGUgPSBzaW11bGF0ZWRSZXNwb25zZS5taW1lVHlwZSgpOworICAgIGxvYWRQ
YXJhbWV0ZXJzLmVuY29kaW5nTmFtZSA9IHNpbXVsYXRlZFJlc3BvbnNlLnRleHRFbmNvZGluZ05h
bWUoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5iYXNlVVJMU3RyaW5nID0gYmFzZVVSTDsKKyAgICBs
b2FkUGFyYW1ldGVycy5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5ID0gV2ViQ29yZTo6U2hv
dWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxkTm90QWxsb3c7CisgICAgbG9hZFBhcmFt
ZXRlcnMuc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkID0gU2hvdWxkVHJlYXRBc0NvbnRpbnVp
bmdMb2FkOjpObzsKKyAgICBsb2FkUGFyYW1ldGVycy5sb2NrSGlzdG9yeSA9IG5hdmlnYXRpb24t
PmxvY2tIaXN0b3J5KCk7CisgICAgbG9hZFBhcmFtZXRlcnMubG9ja0JhY2tGb3J3YXJkTGlzdCA9
IG5hdmlnYXRpb24tPmxvY2tCYWNrRm9yd2FyZExpc3QoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5j
bGllbnRSZWRpcmVjdFNvdXJjZUZvckhpc3RvcnkgPSBuYXZpZ2F0aW9uLT5jbGllbnRSZWRpcmVj
dFNvdXJjZUZvckhpc3RvcnkoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0Fw
cEJvdW5kRG9tYWluID0gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbigpOworCisgICAgc2lt
dWxhdGVkUmVzcG9uc2Uuc2V0RXhwZWN0ZWRDb250ZW50TGVuZ3RoKGRhdGEuc2l6ZSgpKTsKKyAg
ICBzaW11bGF0ZWRSZXNwb25zZS5pbmNsdWRlQ2VydGlmaWNhdGVJbmZvKCk7CisKKyAgICBhZGRQ
bGF0Zm9ybUxvYWRQYXJhbWV0ZXJzKG1fcHJvY2VzcywgbG9hZFBhcmFtZXRlcnMpOworCisgICAg
bV9wcm9jZXNzLT5tYXJrUHJvY2Vzc0FzUmVjZW50bHlVc2VkKCk7CisgICAgbV9wcm9jZXNzLT5h
c3N1bWVSZWFkQWNjZXNzVG9CYXNlVVJMKCp0aGlzLCBiYXNlVVJMKTsKKyAgICBtX3Byb2Nlc3Mt
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkxvYWRTaW11bGF0ZWRSZXF1ZXN0QW5kUmVzcG9uc2Uo
bG9hZFBhcmFtZXRlcnMsIHNpbXVsYXRlZFJlc3BvbnNlKSwgbV93ZWJQYWdlSUQpOworICAgIG1f
cHJvY2Vzcy0+c3RhcnRSZXNwb25zaXZlbmVzc1RpbWVyKCk7CisgICAgcmV0dXJuIG5hdmlnYXRp
b247Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpsb2FkQWx0ZXJuYXRlSFRNTChjb25zdCBJUEM6
OkRhdGFSZWZlcmVuY2UmIGh0bWxEYXRhLCBjb25zdCBTdHJpbmcmIGVuY29kaW5nLCBjb25zdCBV
UkwmIGJhc2VVUkwsIGNvbnN0IFVSTCYgdW5yZWFjaGFibGVVUkwsIEFQSTo6T2JqZWN0KiB1c2Vy
RGF0YSkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRBbHRl
cm5hdGVIVE1MIik7CisKKyAgICAvLyBXaGVuIHRoZSBVSVByb2Nlc3MgaXMgaW4gdGhlIHByb2Nl
c3Mgb2YgaGFuZGxpbmcgYSBmYWlsaW5nIHByb3Zpc2lvbmFsIGxvYWQsIGRvIG5vdCBhdHRlbXB0
IHRvCisgICAgLy8gc3RhcnQgYSBzZWNvbmQgYWx0ZXJuYXRpdmUgSFRNTCBsb2FkIGFzIHRoaXMg
d2lsbCBwcmV2ZW50IHRoZSBwYWdlIGxvYWQgc3RhdGUgZnJvbSBiZWluZworICAgIC8vIGhhbmRs
ZWQgcHJvcGVybHkuCisgICAgaWYgKG1faXNDbG9zZWQgfHwgbV9pc0xvYWRpbmdBbHRlcm5hdGVI
VE1MU3RyaW5nRm9yRmFpbGluZ1Byb3Zpc2lvbmFsTG9hZCkgeworICAgICAgICBXRUJQQUdFUFJP
WFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRBbHRlcm5hdGVIVE1MOiBwYWdlIGlzIGNsb3Nl
ZCAob3Igb3RoZXIpIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIW1fZmFp
bGluZ1Byb3Zpc2lvbmFsTG9hZFVSTC5pc0VtcHR5KCkpCisgICAgICAgIG1faXNMb2FkaW5nQWx0
ZXJuYXRlSFRNTFN0cmluZ0ZvckZhaWxpbmdQcm92aXNpb25hbExvYWQgPSB0cnVlOworCisgICAg
aWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICBsYXVuY2hQcm9jZXNzKFJlZ2lzdHJh
YmxlRG9tYWluIHsgYmFzZVVSTCB9LCBQcm9jZXNzTGF1bmNoUmVhc29uOjpJbml0aWFsUHJvY2Vz
cyk7CisKKyAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9u
KCk7CisKKyAgICBtX3BhZ2VMb2FkU3RhdGUuc2V0UGVuZGluZ0FQSVJlcXVlc3QodHJhbnNhY3Rp
b24sIHsgMCwgdW5yZWFjaGFibGVVUkwuc3RyaW5nKCkgfSk7CisgICAgbV9wYWdlTG9hZFN0YXRl
LnNldFVucmVhY2hhYmxlVVJMKHRyYW5zYWN0aW9uLCB1bnJlYWNoYWJsZVVSTC5zdHJpbmcoKSk7
CisKKyAgICBpZiAobV9tYWluRnJhbWUpCisgICAgICAgIG1fbWFpbkZyYW1lLT5zZXRVbnJlYWNo
YWJsZVVSTCh1bnJlYWNoYWJsZVVSTCk7CisKKyAgICBMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1l
dGVyczsKKyAgICBsb2FkUGFyYW1ldGVycy5uYXZpZ2F0aW9uSUQgPSAwOworICAgIGxvYWRQYXJh
bWV0ZXJzLmRhdGEgPSBodG1sRGF0YTsKKyAgICBsb2FkUGFyYW1ldGVycy5NSU1FVHlwZSA9ICJ0
ZXh0L2h0bWwiX3M7CisgICAgbG9hZFBhcmFtZXRlcnMuZW5jb2RpbmdOYW1lID0gZW5jb2Rpbmc7
CisgICAgbG9hZFBhcmFtZXRlcnMuYmFzZVVSTFN0cmluZyA9IGJhc2VVUkwuc3RyaW5nKCk7Cisg
ICAgbG9hZFBhcmFtZXRlcnMudW5yZWFjaGFibGVVUkxTdHJpbmcgPSB1bnJlYWNoYWJsZVVSTC5z
dHJpbmcoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5wcm92aXNpb25hbExvYWRFcnJvclVSTFN0cmlu
ZyA9IG1fZmFpbGluZ1Byb3Zpc2lvbmFsTG9hZFVSTDsKKyAgICBsb2FkUGFyYW1ldGVycy51c2Vy
RGF0YSA9IFVzZXJEYXRhKHByb2Nlc3MoKS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJE
YXRhKS5nZXQoKSk7CisgICAgYWRkUGxhdGZvcm1Mb2FkUGFyYW1ldGVycyhwcm9jZXNzKCksIGxv
YWRQYXJhbWV0ZXJzKTsKKworICAgIG1fcHJvY2Vzcy0+bWFya1Byb2Nlc3NBc1JlY2VudGx5VXNl
ZCgpOworICAgIG1fcHJvY2Vzcy0+YXNzdW1lUmVhZEFjY2Vzc1RvQmFzZVVSTCgqdGhpcywgYmFz
ZVVSTC5zdHJpbmcoKSk7CisgICAgbV9wcm9jZXNzLT5hc3N1bWVSZWFkQWNjZXNzVG9CYXNlVVJM
KCp0aGlzLCB1bnJlYWNoYWJsZVVSTC5zdHJpbmcoKSk7CisgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6TG9hZEFsdGVybmF0ZUhUTUwobG9hZFBhcmFtZXRlcnMpKTsKKyAgICBtX3Byb2Nlc3Mt
PnN0YXJ0UmVzcG9uc2l2ZW5lc3NUaW1lcigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9h
ZFdlYkFyY2hpdmVEYXRhKEFQSTo6RGF0YSogd2ViQXJjaGl2ZURhdGEsIEFQSTo6T2JqZWN0KiB1
c2VyRGF0YSkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRX
ZWJBcmNoaXZlRGF0YToiKTsKKworICAgIGlmIChtX2lzQ2xvc2VkKSB7CisgICAgICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZFdlYkFyY2hpdmVEYXRhOiBwYWdlIGlz
IGNsb3NlZCIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCFoYXNSdW5uaW5n
UHJvY2VzcygpKQorICAgICAgICBsYXVuY2hQcm9jZXNzKHsgfSwgUHJvY2Vzc0xhdW5jaFJlYXNv
bjo6SW5pdGlhbFByb2Nlc3MpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRT
dGF0ZS50cmFuc2FjdGlvbigpOworICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRQZW5kaW5nQVBJUmVx
dWVzdCh0cmFuc2FjdGlvbiwgeyAwLCBhYm91dEJsYW5rVVJMKCkuc3RyaW5nKCkgfSk7CisKKyAg
ICBMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVyczsKKyAgICBsb2FkUGFyYW1ldGVycy5uYXZp
Z2F0aW9uSUQgPSAwOworICAgIGxvYWRQYXJhbWV0ZXJzLmRhdGEgPSB3ZWJBcmNoaXZlRGF0YS0+
ZGF0YVJlZmVyZW5jZSgpOworICAgIGxvYWRQYXJhbWV0ZXJzLk1JTUVUeXBlID0gImFwcGxpY2F0
aW9uL3gtd2ViYXJjaGl2ZSJfczsKKyAgICBsb2FkUGFyYW1ldGVycy5lbmNvZGluZ05hbWUgPSAi
dXRmLTE2Il9zOworICAgIGxvYWRQYXJhbWV0ZXJzLnVzZXJEYXRhID0gVXNlckRhdGEocHJvY2Vz
cygpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXModXNlckRhdGEpLmdldCgpKTsKKyAgICBhZGRQ
bGF0Zm9ybUxvYWRQYXJhbWV0ZXJzKHByb2Nlc3MoKSwgbG9hZFBhcmFtZXRlcnMpOworCisgICAg
bV9wcm9jZXNzLT5tYXJrUHJvY2Vzc0FzUmVjZW50bHlVc2VkKCk7CisgICAgc2VuZChNZXNzYWdl
czo6V2ViUGFnZTo6TG9hZERhdGEobG9hZFBhcmFtZXRlcnMpKTsKKyAgICBtX3Byb2Nlc3MtPnN0
YXJ0UmVzcG9uc2l2ZW5lc3NUaW1lcigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bmF2aWdh
dGVUb1BERkxpbmtXaXRoU2ltdWxhdGVkQ2xpY2soY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIElu
dFBvaW50IGRvY3VtZW50UG9pbnQsIEludFBvaW50IHNjcmVlblBvaW50KQoreworICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibmF2aWdhdGVUb1BERkxpbmtXaXRoU2ltdWxh
dGVkQ2xpY2s6Iik7CisKKyAgICBpZiAobV9pc0Nsb3NlZCkgeworICAgICAgICBXRUJQQUdFUFJP
WFlfUkVMRUFTRV9MT0coTG9hZGluZywgIm5hdmlnYXRlVG9QREZMaW5rV2l0aFNpbXVsYXRlZENs
aWNrOiBwYWdlIGlzIGNsb3NlZDoiKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlm
IChXVEY6OnByb3RvY29sSXNKYXZhU2NyaXB0KHVybFN0cmluZykpCisgICAgICAgIHJldHVybjsK
KworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgbGF1bmNoUHJvY2VzcyhS
ZWdpc3RyYWJsZURvbWFpbiB7IFVSTChVUkwoKSwgdXJsU3RyaW5nKSB9LCBQcm9jZXNzTGF1bmNo
UmVhc29uOjpJbml0aWFsUHJvY2Vzcyk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpO
YXZpZ2F0ZVRvUERGTGlua1dpdGhTaW11bGF0ZWRDbGljayh1cmxTdHJpbmcsIGRvY3VtZW50UG9p
bnQsIHNjcmVlblBvaW50KSk7CisgICAgbV9wcm9jZXNzLT5zdGFydFJlc3BvbnNpdmVuZXNzVGlt
ZXIoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BMb2FkaW5nKCkKK3sKKyAgICBXRUJQ
QUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgInN0b3BMb2FkaW5nOiIpOworCisgICAgaWYg
KCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xP
RyhMb2FkaW5nLCAibmF2aWdhdGVUb1BERkxpbmtXaXRoU2ltdWxhdGVkQ2xpY2s6IHBhZ2UgaXMg
bm90IHZhbGlkIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBzZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlOjpTdG9wTG9hZGluZygpKTsKKyAgICBpZiAobV9wcm92aXNpb25hbFBhZ2UpIHsK
KyAgICAgICAgbV9wcm92aXNpb25hbFBhZ2UtPmNhbmNlbCgpOworICAgICAgICBtX3Byb3Zpc2lv
bmFsUGFnZSA9IG51bGxwdHI7CisgICAgfQorICAgIG1fcHJvY2Vzcy0+c3RhcnRSZXNwb25zaXZl
bmVzc1RpbWVyKCk7Cit9CisKK1JlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IFdlYlBhZ2VQcm94eTo6
cmVsb2FkKE9wdGlvblNldDxXZWJDb3JlOjpSZWxvYWRPcHRpb24+IG9wdGlvbnMpCit7CisgICAg
V0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZWxvYWQ6Iik7CisKKyAgICAvLyBN
YWtlIHN1cmUgdGhlIE5ldHdvcmsgJiBHUFUgcHJvY2Vzc2VzIGFyZSBzdGlsbCByZXNwb25zaXZl
LiBUaGlzIGlzIHNvIHRoYXQgcmVsb2FkKCkgZ2V0cyB1cyBvdXQgb2YgdGhlIGJhZCBzdGF0ZSBp
ZiBvbmUgb2YgdGhlc2UKKyAgICAvLyBwcm9jZXNzZXMgaXMgaHVuZy4KKyAgICB3ZWJzaXRlRGF0
YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5jaGVja0ZvclJlc3BvbnNpdmVuZXNzKCk7CisjaWYg
RU5BQkxFKEdQVV9QUk9DRVNTKQorICAgIGlmIChhdXRvKiBncHVQcm9jZXNzID0gcHJvY2Vzcygp
LnByb2Nlc3NQb29sKCkuZ3B1UHJvY2VzcygpKQorICAgICAgICBncHVQcm9jZXNzLT5jaGVja0Zv
clJlc3BvbnNpdmVuZXNzKCk7CisjZW5kaWYKKworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZSBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlOworCisgICAgU3RyaW5nIHVybCA9IGN1cnJlbnRVUkwo
KTsKKyAgICBpZiAoIXVybC5pc0VtcHR5KCkpIHsKKyAgICAgICAgLy8gV2UgbWF5IG5vdCBoYXZl
IGFuIGV4dGVuc2lvbiB5ZXQgaWYgYmFjay9mb3J3YXJkIGxpc3Qgd2FzIHJlaW5zdGF0ZWQgYWZ0
ZXIgYSBXZWJQcm9jZXNzIGNyYXNoIG9yIGEgYnJvd3NlciByZWxhdW5jaAorICAgICAgICBtYXli
ZUluaXRpYWxpemVTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKG1fcHJvY2VzcywgVVJMKFVSTCgpLCB1
cmwpLCBjdXJyZW50UmVzb3VyY2VEaXJlY3RvcnlVUkwoKSwgc2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSk7CisgICAgfQorCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1
cm4gbGF1bmNoUHJvY2Vzc0ZvclJlbG9hZCgpOworICAgIAorICAgIGF1dG8gbmF2aWdhdGlvbiA9
IG1fbmF2aWdhdGlvblN0YXRlLT5jcmVhdGVSZWxvYWROYXZpZ2F0aW9uKG1fYmFja0ZvcndhcmRM
aXN0LT5jdXJyZW50SXRlbSgpKTsKKworICAgIGlmICghdXJsLmlzRW1wdHkoKSkgeworICAgICAg
ICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAg
ICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRQZW5kaW5nQVBJUmVxdWVzdCh0cmFuc2FjdGlvbiwgeyBu
YXZpZ2F0aW9uLT5uYXZpZ2F0aW9uSUQoKSwgdXJsIH0pOworICAgIH0KKworICAgIC8vIFN0b3Jl
IGRlY2lzaW9uIHRvIHJlbG9hZCB3aXRob3V0IGNvbnRlbnQgYmxvY2tlcnMgb24gdGhlIG5hdmln
YXRpb24gc28gdGhhdCB3ZSBjYW4gbGF0ZXIgc2V0IHRoZSBjb3JyZXNwb25kaW5nCisgICAgLy8g
V2Vic2l0ZVBvbGljaWVzIGZsYWcgaW4gV2ViUGFnZVByb3h5OjpyZWNlaXZlZE5hdmlnYXRpb25Q
b2xpY3lEZWNpc2lvbigpLgorICAgIGlmIChvcHRpb25zLmNvbnRhaW5zKFdlYkNvcmU6OlJlbG9h
ZE9wdGlvbjo6RGlzYWJsZUNvbnRlbnRCbG9ja2VycykpCisgICAgICAgIG5hdmlnYXRpb24tPnNl
dFVzZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJsZWQoZmFsc2UpOworCisgICAgbV9wcm9jZXNzLT5t
YXJrUHJvY2Vzc0FzUmVjZW50bHlVc2VkKCk7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
UmVsb2FkKG5hdmlnYXRpb24tPm5hdmlnYXRpb25JRCgpLCBvcHRpb25zLnRvUmF3KCksIHNhbmRi
b3hFeHRlbnNpb25IYW5kbGUpKTsKKyAgICBtX3Byb2Nlc3MtPnN0YXJ0UmVzcG9uc2l2ZW5lc3NU
aW1lcigpOworCisjaWYgRU5BQkxFKFNQRUVDSF9TWU5USEVTSVMpCisgICAgcmVzZXRTcGVlY2hT
eW50aGVzaXplcigpOworI2VuZGlmCisKKyAgICByZXR1cm4gbmF2aWdhdGlvbjsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OnJlY29yZEF1dG9tYXRpY05hdmlnYXRpb25TbmFwc2hvdCgpCit7Cisg
ICAgaWYgKG1fc2hvdWxkU3VwcHJlc3NOZXh0QXV0b21hdGljTmF2aWdhdGlvblNuYXBzaG90KQor
ICAgICAgICByZXR1cm47CisKKyAgICBpZiAoV2ViQmFja0ZvcndhcmRMaXN0SXRlbSogaXRlbSA9
IG1fYmFja0ZvcndhcmRMaXN0LT5jdXJyZW50SXRlbSgpKQorICAgICAgICByZWNvcmROYXZpZ2F0
aW9uU25hcHNob3QoKml0ZW0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVjb3JkTmF2aWdh
dGlvblNuYXBzaG90KFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0mIGl0ZW0pCit7CisgICAgaWYgKCFt
X3Nob3VsZFJlY29yZE5hdmlnYXRpb25TbmFwc2hvdHMpCisgICAgICAgIHJldHVybjsKKworI2lm
IFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShHVEspCisgICAgVmlld1NuYXBzaG90U3RvcmU6
OnNpbmdsZXRvbigpLnJlY29yZFNuYXBzaG90KCp0aGlzLCBpdGVtKTsKKyNlbHNlCisgICAgVU5V
U0VEX1BBUkFNKGl0ZW0pOworI2VuZGlmCit9CisKK1JlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IFdl
YlBhZ2VQcm94eTo6Z29Gb3J3YXJkKCkKK3sKKyAgICBXZWJCYWNrRm9yd2FyZExpc3RJdGVtKiBm
b3J3YXJkSXRlbSA9IG1fYmFja0ZvcndhcmRMaXN0LT5mb3J3YXJkSXRlbSgpOworICAgIGlmICgh
Zm9yd2FyZEl0ZW0pCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgcmV0dXJuIGdvVG9C
YWNrRm9yd2FyZEl0ZW0oKmZvcndhcmRJdGVtLCBGcmFtZUxvYWRUeXBlOjpGb3J3YXJkKTsKK30K
KworUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gV2ViUGFnZVByb3h5Ojpnb0JhY2soKQoreworICAg
IFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0qIGJhY2tJdGVtID0gbV9iYWNrRm9yd2FyZExpc3QtPmJh
Y2tJdGVtKCk7CisgICAgaWYgKCFiYWNrSXRlbSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisK
KyAgICByZXR1cm4gZ29Ub0JhY2tGb3J3YXJkSXRlbSgqYmFja0l0ZW0sIEZyYW1lTG9hZFR5cGU6
OkJhY2spOworfQorCitSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBXZWJQYWdlUHJveHk6OmdvVG9C
YWNrRm9yd2FyZEl0ZW0oV2ViQmFja0ZvcndhcmRMaXN0SXRlbSYgaXRlbSkKK3sKKyAgICByZXR1
cm4gZ29Ub0JhY2tGb3J3YXJkSXRlbShpdGVtLCBGcmFtZUxvYWRUeXBlOjpJbmRleGVkQmFja0Zv
cndhcmQpOworfQorCitSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBXZWJQYWdlUHJveHk6OmdvVG9C
YWNrRm9yd2FyZEl0ZW0oV2ViQmFja0ZvcndhcmRMaXN0SXRlbSYgaXRlbSwgRnJhbWVMb2FkVHlw
ZSBmcmFtZUxvYWRUeXBlKQoreworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5n
LCAiZ29Ub0JhY2tGb3J3YXJkSXRlbToiKTsKKyAgICBMT0coTG9hZGluZywgIldlYlBhZ2VQcm94
eSAlcCBnb1RvQmFja0ZvcndhcmRJdGVtIHRvIGl0ZW0gVVJMICVzIiwgdGhpcywgaXRlbS51cmwo
KS51dGY4KCkuZGF0YSgpKTsKKworICAgIGlmIChtX2lzQ2xvc2VkKSB7CisgICAgICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiZ29Ub0JhY2tGb3J3YXJkSXRlbTogcGFnZSBp
cyBjbG9zZWQiKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgfQorCisgICAgaWYgKCFo
YXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAgICAgIGxhdW5jaFByb2Nlc3MoUmVnaXN0cmFibGVE
b21haW4geyBVUkwoVVJMKCksIGl0ZW0udXJsKCkpIH0sIFByb2Nlc3NMYXVuY2hSZWFzb246Oklu
aXRpYWxQcm9jZXNzKTsKKworICAgICAgICBpZiAoJml0ZW0gIT0gbV9iYWNrRm9yd2FyZExpc3Qt
PmN1cnJlbnRJdGVtKCkpCisgICAgICAgICAgICBtX2JhY2tGb3J3YXJkTGlzdC0+Z29Ub0l0ZW0o
aXRlbSk7CisgICAgfQorCisgICAgUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gbmF2aWdhdGlvbjsK
KyAgICBpZiAoIW1fYmFja0ZvcndhcmRMaXN0LT5jdXJyZW50SXRlbSgpLT5pdGVtSXNJblNhbWVE
b2N1bWVudChpdGVtKSkKKyAgICAgICAgbmF2aWdhdGlvbiA9IG1fbmF2aWdhdGlvblN0YXRlLT5j
cmVhdGVCYWNrRm9yd2FyZE5hdmlnYXRpb24oaXRlbSwgbV9iYWNrRm9yd2FyZExpc3QtPmN1cnJl
bnRJdGVtKCksIGZyYW1lTG9hZFR5cGUpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFn
ZUxvYWRTdGF0ZS50cmFuc2FjdGlvbigpOworICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRQZW5kaW5n
QVBJUmVxdWVzdCh0cmFuc2FjdGlvbiwgeyBuYXZpZ2F0aW9uID8gbmF2aWdhdGlvbi0+bmF2aWdh
dGlvbklEKCkgOiAwLCBpdGVtLnVybCgpIH0pOworCisgICAgbV9wcm9jZXNzLT5tYXJrUHJvY2Vz
c0FzUmVjZW50bHlVc2VkKCk7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6R29Ub0JhY2tG
b3J3YXJkSXRlbShuYXZpZ2F0aW9uID8gbmF2aWdhdGlvbi0+bmF2aWdhdGlvbklEKCkgOiAwLCBp
dGVtLml0ZW1JRCgpLCBmcmFtZUxvYWRUeXBlLCBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQ6
Ok5vLCBzdGQ6Om51bGxvcHQsIG1fbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpKTsKKyAg
ICBtX3Byb2Nlc3MtPnN0YXJ0UmVzcG9uc2l2ZW5lc3NUaW1lcigpOworCisgICAgcmV0dXJuIG5h
dmlnYXRpb247Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp0cnlSZXN0b3JlU2Nyb2xsUG9zaXRp
b24oKQoreworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAidHJ5UmVzdG9y
ZVNjcm9sbFBvc2l0aW9uOiIpOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7Cisg
ICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAidHJ5UmVzdG9yZVNjcm9s
bFBvc2l0aW9uOiBwYWdlIGlzIG5vdCB2YWxpZCIpOworICAgICAgICByZXR1cm47CisgICAgfQor
CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6VHJ5UmVzdG9yZVNjcm9sbFBvc2l0aW9uKCkp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KFdlYkJh
Y2tGb3J3YXJkTGlzdEl0ZW0qIGFkZGVkLCBWZWN0b3I8UmVmPFdlYkJhY2tGb3J3YXJkTGlzdEl0
ZW0+PiYmIHJlbW92ZWQpCit7CisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFn
ZUNsaWVudCgpKTsKKworICAgIGlmICghbV9uYXZpZ2F0aW9uQ2xpZW50LT5kaWRDaGFuZ2VCYWNr
Rm9yd2FyZExpc3QoKnRoaXMsIGFkZGVkLCByZW1vdmVkKSAmJiBtX2xvYWRlckNsaWVudCkKKyAg
ICAgICAgbV9sb2FkZXJDbGllbnQtPmRpZENoYW5nZUJhY2tGb3J3YXJkTGlzdCgqdGhpcywgYWRk
ZWQsIFdURk1vdmUocmVtb3ZlZCkpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxv
YWRTdGF0ZS50cmFuc2FjdGlvbigpOworCisgICAgbV9wYWdlTG9hZFN0YXRlLnNldENhbkdvQmFj
ayh0cmFuc2FjdGlvbiwgbV9iYWNrRm9yd2FyZExpc3QtPmJhY2tJdGVtKCkpOworICAgIG1fcGFn
ZUxvYWRTdGF0ZS5zZXRDYW5Hb0ZvcndhcmQodHJhbnNhY3Rpb24sIG1fYmFja0ZvcndhcmRMaXN0
LT5mb3J3YXJkSXRlbSgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OndpbGxHb1RvQmFja0Zv
cndhcmRMaXN0SXRlbShjb25zdCBCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyJiBpdGVtSUQsIGJv
b2wgaW5CYWNrRm9yd2FyZENhY2hlKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVj
dG9yKHBhZ2VDbGllbnQoKSk7CisKKyAgICBpZiAoYXV0byogaXRlbSA9IG1fYmFja0ZvcndhcmRM
aXN0LT5pdGVtRm9ySUQoaXRlbUlEKSkKKyAgICAgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT53aWxs
R29Ub0JhY2tGb3J3YXJkTGlzdEl0ZW0oKnRoaXMsICppdGVtLCBpbkJhY2tGb3J3YXJkQ2FjaGUp
OworfQorCitib29sIFdlYlBhZ2VQcm94eTo6c2hvdWxkS2VlcEN1cnJlbnRCYWNrRm9yd2FyZExp
c3RJdGVtSW5MaXN0KFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0mIGl0ZW0pCit7CisgICAgUGFnZUNs
aWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIHJldHVybiAhbV9s
b2FkZXJDbGllbnQgfHwgbV9sb2FkZXJDbGllbnQtPnNob3VsZEtlZXBDdXJyZW50QmFja0Zvcndh
cmRMaXN0SXRlbUluTGlzdCgqdGhpcywgaXRlbSk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5Ojpj
YW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sKKyAgICBpZiAoTUlNRVR5
cGVSZWdpc3RyeTo6Y2FuU2hvd01JTUVUeXBlKG1pbWVUeXBlKSkKKyAgICAgICAgcmV0dXJuIHRy
dWU7CisKKyNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKKyAgICBTdHJpbmcgbmV3TWlt
ZVR5cGUgPSBtaW1lVHlwZTsKKyAgICBQbHVnaW5Nb2R1bGVJbmZvIHBsdWdpbiA9IG1fcHJvY2Vz
cy0+cHJvY2Vzc1Bvb2woKS5wbHVnaW5JbmZvU3RvcmUoKS5maW5kUGx1Z2luKG5ld01pbWVUeXBl
LCBVUkwoKSk7CisgICAgaWYgKCFwbHVnaW4ucGF0aC5pc051bGwoKSAmJiBtX3ByZWZlcmVuY2Vz
LT5wbHVnaW5zRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyNlbmRpZiAvLyBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIC8vIE9u
IE1hYywgd2UgY2FuIHNob3cgUERGcy4KKyAgICBpZiAoTUlNRVR5cGVSZWdpc3RyeTo6aXNQREZP
clBvc3RTY3JpcHRNSU1FVHlwZShtaW1lVHlwZSkgJiYgIVdlYlByb2Nlc3NQb29sOjpvbWl0UERG
U3VwcG9ydCgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyNlbmRpZiAvLyBQTEFURk9STShDT0NP
QSkKKworICAgIHJldHVybiBmYWxzZTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldENvbnRy
b2xsZWRCeUF1dG9tYXRpb24oYm9vbCBjb250cm9sbGVkKQoreworICAgIGlmIChtX2NvbnRyb2xs
ZWRCeUF1dG9tYXRpb24gPT0gY29udHJvbGxlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9j
b250cm9sbGVkQnlBdXRvbWF0aW9uID0gY29udHJvbGxlZDsKKworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6U2V0Q29udHJvbGxlZEJ5QXV0b21hdGlvbihjb250cm9sbGVkKSk7CisgICAgd2Vic2l0ZURh
dGFTdG9yZSgpLm5ldHdvcmtQcm9jZXNzKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6
OlNldFNlc3Npb25Jc0NvbnRyb2xsZWRCeUF1dG9tYXRpb24obV93ZWJzaXRlRGF0YVN0b3JlLT5z
ZXNzaW9uSUQoKSwgbV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSwgMCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpjcmVhdGVJbnNwZWN0b3JUYXJnZXQoY29uc3QgU3RyaW5nJiB0YXJnZXRJZCwg
SW5zcGVjdG9yOjpJbnNwZWN0b3JUYXJnZXRUeXBlIHR5cGUpCit7CisgICAgTUVTU0FHRV9DSEVD
SyhtX3Byb2Nlc3MsICF0YXJnZXRJZC5pc0VtcHR5KCkpOworICAgIG1faW5zcGVjdG9yQ29udHJv
bGxlci0+Y3JlYXRlSW5zcGVjdG9yVGFyZ2V0KHRhcmdldElkLCB0eXBlKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmRlc3Ryb3lJbnNwZWN0b3JUYXJnZXQoY29uc3QgU3RyaW5nJiB0YXJnZXRJ
ZCkKK3sKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgIXRhcmdldElkLmlzRW1wdHkoKSk7
CisgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5kZXN0cm95SW5zcGVjdG9yVGFyZ2V0KHRhcmdl
dElkKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNlbmRNZXNzYWdlVG9JbnNwZWN0b3JGcm9u
dGVuZChjb25zdCBTdHJpbmcmIHRhcmdldElkLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpCit7Cisg
ICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5zZW5kTWVzc2FnZVRvSW5zcGVjdG9yRnJvbnRlbmQo
dGFyZ2V0SWQsIG1lc3NhZ2UpOworfQorCisjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCit2
b2lkIFdlYlBhZ2VQcm94eTo6c2V0SW5kaWNhdGluZyhib29sIGluZGljYXRpbmcpCit7CisgICAg
aWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlOjpTZXRJbmRpY2F0aW5nKGluZGljYXRpbmcpKTsKK30KKworYm9vbCBX
ZWJQYWdlUHJveHk6OmFsbG93c1JlbW90ZUluc3BlY3Rpb24oKSBjb25zdAoreworICAgIHJldHVy
biBtX2luc3BlY3RvckRlYnVnZ2FibGUtPnJlbW90ZURlYnVnZ2luZ0FsbG93ZWQoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnNldEFsbG93c1JlbW90ZUluc3BlY3Rpb24oYm9vbCBhbGxvdykK
K3sKKyAgICBtX2luc3BlY3RvckRlYnVnZ2FibGUtPnNldFJlbW90ZURlYnVnZ2luZ0FsbG93ZWQo
YWxsb3cpOworfQorCitTdHJpbmcgV2ViUGFnZVByb3h5OjpyZW1vdGVJbnNwZWN0aW9uTmFtZU92
ZXJyaWRlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9pbnNwZWN0b3JEZWJ1Z2dhYmxlLT5uYW1l
T3ZlcnJpZGUoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFJlbW90ZUluc3BlY3Rpb25O
YW1lT3ZlcnJpZGUoY29uc3QgU3RyaW5nJiBuYW1lKQoreworICAgIG1faW5zcGVjdG9yRGVidWdn
YWJsZS0+c2V0TmFtZU92ZXJyaWRlKG5hbWUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVt
b3RlSW5zcGVjdG9ySW5mb3JtYXRpb25EaWRDaGFuZ2UoKQoreworICAgIG1faW5zcGVjdG9yRGVi
dWdnYWJsZS0+dXBkYXRlKCk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OnNldEJh
Y2tncm91bmRDb2xvcihjb25zdCBzdGQ6Om9wdGlvbmFsPENvbG9yPiYgY29sb3IpCit7CisgICAg
aWYgKG1fYmFja2dyb3VuZENvbG9yID09IGNvbG9yKQorICAgICAgICByZXR1cm47CisKKyAgICBt
X2JhY2tncm91bmRDb2xvciA9IGNvbG9yOworICAgIGlmIChoYXNSdW5uaW5nUHJvY2VzcygpKQor
ICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRCYWNrZ3JvdW5kQ29sb3IoY29sb3Ip
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFRvcENvbnRlbnRJbnNldChmbG9hdCBjb250
ZW50SW5zZXQpCit7CisgICAgaWYgKG1fdG9wQ29udGVudEluc2V0ID09IGNvbnRlbnRJbnNldCkK
KyAgICAgICAgcmV0dXJuOworCisgICAgbV90b3BDb250ZW50SW5zZXQgPSBjb250ZW50SW5zZXQ7
CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKyNpZiBQ
TEFURk9STShDT0NPQSkKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRUb3BDb250ZW50
SW5zZXRGZW5jZWQoY29udGVudEluc2V0LCBtX2RyYXdpbmdBcmVhLT5jcmVhdGVGZW5jZSgpKSk7
CisjZWxzZQorICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFRvcENvbnRlbnRJbnNldChj
b250ZW50SW5zZXQpKTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VW5kZXJs
YXlDb2xvcihjb25zdCBDb2xvciYgY29sb3IpCit7CisgICAgaWYgKG1fdW5kZXJsYXlDb2xvciA9
PSBjb2xvcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV91bmRlcmxheUNvbG9yID0gY29sb3I7
CisKKyAgICBpZiAoaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZTo6U2V0VW5kZXJsYXlDb2xvcihjb2xvcikpOworfQorCitDb2xvciBXZWJQYWdlUHJv
eHk6OnVuZGVyUGFnZUJhY2tncm91bmRDb2xvcigpIGNvbnN0Cit7CisgICAgaWYgKG1fdW5kZXJQ
YWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUuaXNWYWxpZCgpKQorICAgICAgICByZXR1cm4gbV91
bmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZTsKKworICAgIGlmIChtX3BhZ2VFeHRlbmRl
ZEJhY2tncm91bmRDb2xvci5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBtX3BhZ2VFeHRlbmRl
ZEJhY2tncm91bmRDb2xvcjsKKworICAgIHJldHVybiBwbGF0Zm9ybVVuZGVyUGFnZUJhY2tncm91
bmRDb2xvcigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VW5kZXJQYWdlQmFja2dyb3Vu
ZENvbG9yT3ZlcnJpZGUoQ29sb3ImJiBuZXdVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlk
ZSkKK3sKKyAgICBpZiAobmV3VW5kZXJQYWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUgPT0gbV91
bmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
YXV0byBvbGRVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IgPSB1bmRlclBhZ2VCYWNrZ3JvdW5kQ29s
b3IoKTsKKyAgICBhdXRvIG9sZFVuZGVyUGFnZUJhY2tncm91bmRDb2xvck92ZXJyaWRlID0gc3Rk
OjpleGNoYW5nZShtX3VuZGVyUGFnZUJhY2tncm91bmRDb2xvck92ZXJyaWRlLCBuZXdVbmRlclBh
Z2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZSk7CisgICAgYm9vbCBjaGFuZ2VzVW5kZXJQYWdlQmFj
a2dyb3VuZENvbG9yID0gIWVxdWFsSWdub3JpbmdTZW1hbnRpY0NvbG9yKG9sZFVuZGVyUGFnZUJh
Y2tncm91bmRDb2xvciwgdW5kZXJQYWdlQmFja2dyb3VuZENvbG9yKCkpOworICAgIG1fdW5kZXJQ
YWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUgPSBXVEZNb3ZlKG9sZFVuZGVyUGFnZUJhY2tncm91
bmRDb2xvck92ZXJyaWRlKTsKKworICAgIGlmIChjaGFuZ2VzVW5kZXJQYWdlQmFja2dyb3VuZENv
bG9yKQorICAgICAgICBwYWdlQ2xpZW50KCkudW5kZXJQYWdlQmFja2dyb3VuZENvbG9yV2lsbENo
YW5nZSgpOworCisgICAgbV91bmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZSA9IFdURk1v
dmUobmV3VW5kZXJQYWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUpOworCisgICAgaWYgKGNoYW5n
ZXNVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IpCisgICAgICAgIHBhZ2VDbGllbnQoKS51bmRlclBh
Z2VCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UoKTsKKworICAgIGlmIChtX2hhc1BlbmRpbmdVbmRl
clBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZVRvRGlzcGF0Y2gpCisgICAgICAgIHJldHVybjsK
KworICAgIG1faGFzUGVuZGluZ1VuZGVyUGFnZUJhY2tncm91bmRDb2xvck92ZXJyaWRlVG9EaXNw
YXRjaCA9IHRydWU7CisKKyAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW3RoaXMsIHdlYWtU
aGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpXSB7CisgICAgICAgIGlmICghd2Vha1RoaXMpCisgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgaWYgKCFtX2hhc1BlbmRpbmdVbmRlclBhZ2VCYWNr
Z3JvdW5kQ29sb3JPdmVycmlkZVRvRGlzcGF0Y2gpCisgICAgICAgICAgICByZXR1cm47CisKKyAg
ICAgICAgbV9oYXNQZW5kaW5nVW5kZXJQYWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGVUb0Rpc3Bh
dGNoID0gZmFsc2U7CisKKyAgICAgICAgaWYgKG1fcGFnZUNsaWVudCkKKyAgICAgICAgICAgIG1f
cGFnZUNsaWVudC0+ZGlkQ2hhbmdlQmFja2dyb3VuZENvbG9yKCk7CisKKyAgICAgICAgaWYgKGhh
c1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpT
ZXRVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZShtX3VuZGVyUGFnZUJhY2tncm91bmRD
b2xvck92ZXJyaWRlKSk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp2aWV3V2ls
bFN0YXJ0TGl2ZVJlc2l6ZSgpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBjbG9zZU92ZXJsYXllZFZpZXdzKCk7CisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6Vmlld1dpbGxTdGFydExpdmVSZXNpemUoKSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojp2aWV3V2lsbEVuZExpdmVSZXNpemUoKQoreworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OlZpZXdXaWxsRW5kTGl2ZVJlc2l6ZSgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFZp
ZXdOZWVkc0Rpc3BsYXkoY29uc3QgUmVnaW9uJiByZWdpb24pCit7CisgICAgcGFnZUNsaWVudCgp
LnNldFZpZXdOZWVkc0Rpc3BsYXkocmVnaW9uKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJl
cXVlc3RTY3JvbGwoY29uc3QgRmxvYXRQb2ludCYgc2Nyb2xsUG9zaXRpb24sIGNvbnN0IEludFBv
aW50JiBzY3JvbGxPcmlnaW4pCit7CisgICAgcGFnZUNsaWVudCgpLnJlcXVlc3RTY3JvbGwoc2Ny
b2xsUG9zaXRpb24sIHNjcm9sbE9yaWdpbik7Cit9CisKK1dlYkNvcmU6OkZsb2F0UG9pbnQgV2Vi
UGFnZVByb3h5Ojp2aWV3U2Nyb2xsUG9zaXRpb24oKSBjb25zdAoreworICAgIHJldHVybiBwYWdl
Q2xpZW50KCkudmlld1Njcm9sbFBvc2l0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXRTdXBwcmVzc1Zpc2liaWxpdHlVcGRhdGVzKGJvb2wgZmxhZykKK3sKKyAgICBpZiAobV9zdXBw
cmVzc1Zpc2liaWxpdHlVcGRhdGVzID09IGZsYWcpCisgICAgICAgIHJldHVybjsKKyAgICBtX3N1
cHByZXNzVmlzaWJpbGl0eVVwZGF0ZXMgPSBmbGFnOworCisgICAgaWYgKCFtX3N1cHByZXNzVmlz
aWJpbGl0eVVwZGF0ZXMpIHsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAgICAgc2NoZWR1bGVB
Y3Rpdml0eVN0YXRlVXBkYXRlKCk7CisjZWxzZQorICAgICAgICBkaXNwYXRjaEFjdGl2aXR5U3Rh
dGVDaGFuZ2UoKTsKKyNlbmRpZgorICAgIH0KK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0
ZUFjdGl2aXR5U3RhdGUoT3B0aW9uU2V0PEFjdGl2aXR5U3RhdGU6OkZsYWc+IGZsYWdzVG9VcGRh
dGUpCit7CisgICAgYm9vbCB3YXNWaXNpYmxlID0gaXNWaWV3VmlzaWJsZSgpOworICAgIG1fYWN0
aXZpdHlTdGF0ZS5yZW1vdmUoZmxhZ3NUb1VwZGF0ZSk7CisgICAgaWYgKGZsYWdzVG9VcGRhdGUg
JiBBY3Rpdml0eVN0YXRlOjpJc0ZvY3VzZWQgJiYgcGFnZUNsaWVudCgpLmlzVmlld0ZvY3VzZWQo
KSkKKyAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJc0ZvY3VzZWQp
OworICAgIGlmIChmbGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6V2luZG93SXNBY3RpdmUg
JiYgcGFnZUNsaWVudCgpLmlzVmlld1dpbmRvd0FjdGl2ZSgpKQorICAgICAgICBtX2FjdGl2aXR5
U3RhdGUuYWRkKEFjdGl2aXR5U3RhdGU6OldpbmRvd0lzQWN0aXZlKTsKKyAgICBpZiAoZmxhZ3NU
b1VwZGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzVmlzaWJsZSkgeworICAgICAgICBib29sIGlzTm93
VmlzaWJsZSA9IHBhZ2VDbGllbnQoKS5pc1ZpZXdWaXNpYmxlKCk7CisgICAgICAgIGlmIChpc05v
d1Zpc2libGUpCisgICAgICAgICAgICBtX2FjdGl2aXR5U3RhdGUuYWRkKEFjdGl2aXR5U3RhdGU6
OklzVmlzaWJsZSk7CisgICAgICAgIGlmICh3YXNWaXNpYmxlICE9IGlzTm93VmlzaWJsZSkKKyAg
ICAgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhWaWV3U3RhdGUsICJ1cGRhdGVBY3Rp
dml0eVN0YXRlOiB2aWV3IHZpc2liaWxpdHkgc3RhdGUgY2hhbmdlZCAlZCAtPiAlZCIsIHdhc1Zp
c2libGUsIGlzTm93VmlzaWJsZSk7CisgICAgfQorICAgIGlmIChmbGFnc1RvVXBkYXRlICYgQWN0
aXZpdHlTdGF0ZTo6SXNWaXNpYmxlT3JPY2NsdWRlZCAmJiBwYWdlQ2xpZW50KCkuaXNWaWV3Vmlz
aWJsZU9yT2NjbHVkZWQoKSkKKyAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0
YXRlOjpJc1Zpc2libGVPck9jY2x1ZGVkKTsKKyAgICBpZiAoZmxhZ3NUb1VwZGF0ZSAmIEFjdGl2
aXR5U3RhdGU6OklzSW5XaW5kb3cgJiYgcGFnZUNsaWVudCgpLmlzVmlld0luV2luZG93KCkpCisg
ICAgICAgIG1fYWN0aXZpdHlTdGF0ZS5hZGQoQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdyk7Cisg
ICAgaWYgKGZsYWdzVG9VcGRhdGUgJiBBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSAmJiBw
YWdlQ2xpZW50KCkuaXNWaXN1YWxseUlkbGUoKSkKKyAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFk
ZChBY3Rpdml0eVN0YXRlOjpJc1Zpc3VhbGx5SWRsZSk7CisgICAgaWYgKGZsYWdzVG9VcGRhdGUg
JiBBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUgJiYgbV9tZWRpYVN0YXRlLmNvbnRhaW5zKE1lZGlh
UHJvZHVjZXI6Ok1lZGlhU3RhdGU6OklzUGxheWluZ0F1ZGlvKSAmJiAhKG1fbXV0ZWRTdGF0ZS5j
b250YWlucyhNZWRpYVByb2R1Y2VyOjpNdXRlZFN0YXRlOjpBdWRpb0lzTXV0ZWQpKSkKKyAgICAg
ICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUpOworICAgIGlm
IChmbGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNMb2FkaW5nICYmIG1fcGFnZUxvYWRT
dGF0ZS5pc0xvYWRpbmcoKSkKKyAgICAgICAgbV9hY3Rpdml0eVN0YXRlLmFkZChBY3Rpdml0eVN0
YXRlOjpJc0xvYWRpbmcpOworICAgIGlmIChmbGFnc1RvVXBkYXRlICYgQWN0aXZpdHlTdGF0ZTo6
SXNDYXB0dXJpbmdNZWRpYSAmJiBtX21lZGlhU3RhdGUuY29udGFpbnNBbnkoeyBNZWRpYVByb2R1
Y2VyOjpNZWRpYVN0YXRlOjpIYXNBY3RpdmVBdWRpb0NhcHR1cmVEZXZpY2UsICBNZWRpYVByb2R1
Y2VyOjpNZWRpYVN0YXRlOjpIYXNBY3RpdmVWaWRlb0NhcHR1cmVEZXZpY2UgfSkpCisgICAgICAg
IG1fYWN0aXZpdHlTdGF0ZS5hZGQoQWN0aXZpdHlTdGF0ZTo6SXNDYXB0dXJpbmdNZWRpYSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjphY3Rpdml0eVN0YXRlRGlkQ2hhbmdlKE9wdGlvblNldDxB
Y3Rpdml0eVN0YXRlOjpGbGFnPiBtYXlIYXZlQ2hhbmdlZCwgQWN0aXZpdHlTdGF0ZUNoYW5nZURp
c3BhdGNoTW9kZSBkaXNwYXRjaE1vZGUsIEFjdGl2aXR5U3RhdGVDaGFuZ2VSZXBseU1vZGUgcmVw
bHlNb2RlKQoreworICAgIExPR19XSVRIX1NUUkVBTShBY3Rpdml0eVN0YXRlLCBzdHJlYW0gPDwg
IldlYlBhZ2VQcm94eSAiIDw8IGlkZW50aWZpZXIoKSA8PCAiIGFjdGl2aXR5U3RhdGVEaWRDaGFu
Z2UgLSBtYXlIYXZlQ2hhbmdlZCAiIDw8IG1heUhhdmVDaGFuZ2VkKTsKKworICAgIG1fcG90ZW50
aWFsbHlDaGFuZ2VkQWN0aXZpdHlTdGF0ZUZsYWdzLmFkZChtYXlIYXZlQ2hhbmdlZCk7CisgICAg
bV9hY3Rpdml0eVN0YXRlQ2hhbmdlV2FudHNTeW5jaHJvbm91c1JlcGx5ID0gbV9hY3Rpdml0eVN0
YXRlQ2hhbmdlV2FudHNTeW5jaHJvbm91c1JlcGx5IHx8IHJlcGx5TW9kZSA9PSBBY3Rpdml0eVN0
YXRlQ2hhbmdlUmVwbHlNb2RlOjpTeW5jaHJvbm91czsKKworICAgIGlmIChtX3N1cHByZXNzVmlz
aWJpbGl0eVVwZGF0ZXMgJiYgZGlzcGF0Y2hNb2RlICE9IEFjdGl2aXR5U3RhdGVDaGFuZ2VEaXNw
YXRjaE1vZGU6OkltbWVkaWF0ZSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgUExBVEZPUk0oQ09D
T0EpCisgICAgYm9vbCBpc05ld2x5SW5XaW5kb3cgPSAhaXNJbldpbmRvdygpICYmIChtYXlIYXZl
Q2hhbmdlZCAmIEFjdGl2aXR5U3RhdGU6OklzSW5XaW5kb3cpICYmIHBhZ2VDbGllbnQoKS5pc1Zp
ZXdJbldpbmRvdygpOworICAgIGlmIChkaXNwYXRjaE1vZGUgPT0gQWN0aXZpdHlTdGF0ZUNoYW5n
ZURpc3BhdGNoTW9kZTo6SW1tZWRpYXRlIHx8IGlzTmV3bHlJbldpbmRvdykgeworICAgICAgICBk
aXNwYXRjaEFjdGl2aXR5U3RhdGVDaGFuZ2UoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAg
ICBzY2hlZHVsZUFjdGl2aXR5U3RhdGVVcGRhdGUoKTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFN
KGRpc3BhdGNoTW9kZSk7CisgICAgZGlzcGF0Y2hBY3Rpdml0eVN0YXRlQ2hhbmdlKCk7CisjZW5k
aWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnZpZXdEaWRMZWF2ZVdpbmRvdygpCit7CisgICAg
Y2xvc2VPdmVybGF5ZWRWaWV3cygpOworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkKKyAgICAvLyBXaGVuIGxlYXZpbmcgdGhlIGN1cnJlbnQgcGFnZSwgY2xvc2UgdGhlIHZpZGVv
IGZ1bGxzY3JlZW4uCisgICAgaWYgKG1fdmlkZW9GdWxsc2NyZWVuTWFuYWdlciAmJiBtX3ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXItPmhhc01vZGUoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlU3RhbmRhcmQpKQorICAgICAgICBtX3ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXItPnJlcXVlc3RIaWRlQW5kRXhpdEZ1bGxzY3JlZW4oKTsKKyNlbmRpZgorfQorCit2
b2lkIFdlYlBhZ2VQcm94eTo6dmlld0RpZEVudGVyV2luZG93KCkKK3sKKyAgICBMYXllckhvc3Rp
bmdNb2RlIGxheWVySG9zdGluZ01vZGUgPSBwYWdlQ2xpZW50KCkudmlld0xheWVySG9zdGluZ01v
ZGUoKTsKKyAgICBpZiAobV9sYXllckhvc3RpbmdNb2RlICE9IGxheWVySG9zdGluZ01vZGUpIHsK
KyAgICAgICAgbV9sYXllckhvc3RpbmdNb2RlID0gbGF5ZXJIb3N0aW5nTW9kZTsKKyAgICAgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0TGF5ZXJIb3N0aW5nTW9kZShsYXllckhvc3RpbmdN
b2RlKSk7CisgICAgfQorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlzcGF0Y2hBY3Rpdml0eVN0
YXRlQ2hhbmdlKCkKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBpZiAobV9hY3Rpdml0eVN0
YXRlQ2hhbmdlRGlzcGF0Y2hlci0+aXNTY2hlZHVsZWQoKSkKKyAgICAgICAgbV9hY3Rpdml0eVN0
YXRlQ2hhbmdlRGlzcGF0Y2hlci0+aW52YWxpZGF0ZSgpOworICAgIG1faGFzU2NoZWR1bGVkQWN0
aXZpdHlTdGF0ZVVwZGF0ZSA9IGZhbHNlOworI2VuZGlmCisKKyAgICBpZiAoIWhhc1J1bm5pbmdQ
cm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIExPR19XSVRIX1NUUkVBTShBY3Rpdml0
eVN0YXRlLCBzdHJlYW0gPDwgIldlYlBhZ2VQcm94eSAiIDw8IGlkZW50aWZpZXIoKSA8PCAiIGRp
c3BhdGNoQWN0aXZpdHlTdGF0ZUNoYW5nZSAtIHBvdGVudGlhbGx5Q2hhbmdlZEFjdGl2aXR5U3Rh
dGVGbGFncyAiIDw8IG1fcG90ZW50aWFsbHlDaGFuZ2VkQWN0aXZpdHlTdGF0ZUZsYWdzKTsKKwor
ICAgIC8vIElmIHRoZSB2aXNpYmlsaXR5IHN0YXRlIG1heSBoYXZlIGNoYW5nZWQsIHRoZW4gc28g
bWF5IHRoZSB2aXN1YWxseSBpZGxlICYgb2NjbHVkZWQgYWdub3N0aWMgc3RhdGUuCisgICAgaWYg
KG1fcG90ZW50aWFsbHlDaGFuZ2VkQWN0aXZpdHlTdGF0ZUZsYWdzICYgQWN0aXZpdHlTdGF0ZTo6
SXNWaXNpYmxlKQorICAgICAgICBtX3BvdGVudGlhbGx5Q2hhbmdlZEFjdGl2aXR5U3RhdGVGbGFn
cy5hZGQoeyBBY3Rpdml0eVN0YXRlOjpJc1Zpc2libGVPck9jY2x1ZGVkLCBBY3Rpdml0eVN0YXRl
OjpJc1Zpc3VhbGx5SWRsZSB9KTsKKworICAgIC8vIFJlY29yZCB0aGUgcHJpb3IgdmlldyBzdGF0
ZSwgdXBkYXRlIHRoZSBmbGFncyB0aGF0IG1heSBoYXZlIGNoYW5nZWQsCisgICAgLy8gYW5kIGNo
ZWNrIHdoaWNoIGZsYWdzIGhhdmUgYWN0dWFsbHkgY2hhbmdlZC4KKyAgICBhdXRvIHByZXZpb3Vz
QWN0aXZpdHlTdGF0ZSA9IG1fYWN0aXZpdHlTdGF0ZTsKKyAgICB1cGRhdGVBY3Rpdml0eVN0YXRl
KG1fcG90ZW50aWFsbHlDaGFuZ2VkQWN0aXZpdHlTdGF0ZUZsYWdzKTsKKyAgICBhdXRvIGNoYW5n
ZWQgPSBtX2FjdGl2aXR5U3RhdGUgXiBwcmV2aW91c0FjdGl2aXR5U3RhdGU7CisKKyAgICBpZiAo
Y2hhbmdlZCkKKyAgICAgICAgTE9HX1dJVEhfU1RSRUFNKEFjdGl2aXR5U3RhdGUsIHN0cmVhbSA8
PCAiV2ViUGFnZVByb3h5ICIgPDwgaWRlbnRpZmllcigpIDw8ICIgZGlzcGF0Y2hBY3Rpdml0eVN0
YXRlQ2hhbmdlOiBzdGF0ZSBjaGFuZ2VkIGZyb20gIiA8PCBwcmV2aW91c0FjdGl2aXR5U3RhdGUg
PDwgIiB0byAiIDw8IG1fYWN0aXZpdHlTdGF0ZSk7CisKKyAgICBpZiAoKGNoYW5nZWQgJiBBY3Rp
dml0eVN0YXRlOjpXaW5kb3dJc0FjdGl2ZSkgJiYgaXNWaWV3V2luZG93QWN0aXZlKCkpCisgICAg
ICAgIHVwZGF0ZUN1cnJlbnRNb2RpZmllclN0YXRlKCk7CisKKyAgICBpZiAoKG1fcG90ZW50aWFs
bHlDaGFuZ2VkQWN0aXZpdHlTdGF0ZUZsYWdzICYgQWN0aXZpdHlTdGF0ZTo6SXNWaXNpYmxlKSkg
eworICAgICAgICBpZiAoaXNWaWV3VmlzaWJsZSgpKQorICAgICAgICAgICAgdmlld0lzQmVjb21p
bmdWaXNpYmxlKCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fcHJvY2Vzcy0+cGFnZUlz
QmVjb21pbmdJbnZpc2libGUobV93ZWJQYWdlSUQpOworICAgIH0KKworICAgIGJvb2wgaXNOb3dJ
bldpbmRvdyA9IChjaGFuZ2VkICYgQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdykgJiYgaXNJbldp
bmRvdygpOworICAgIC8vIFdlIGFsd2F5cyB3YW50IHRvIHdhaXQgZm9yIHRoZSBXZWIgcHJvY2Vz
cyB0byByZXBseSBpZiB3ZSd2ZSBiZWVuIGluLXdpbmRvdyBiZWZvcmUgYW5kIGFyZSBjb21pbmcg
YmFjayBpbi13aW5kb3cuCisgICAgaWYgKG1fdmlld1dhc0V2ZXJJbldpbmRvdyAmJiBpc05vd0lu
V2luZG93KSB7CisgICAgICAgIGlmIChtX2RyYXdpbmdBcmVhLT5oYXNWaXNpYmxlQ29udGVudCgp
ICYmIG1fd2FpdHNGb3JQYWludEFmdGVyVmlld0RpZE1vdmVUb1dpbmRvdyAmJiAhbV9zaG91bGRT
a2lwV2FpdGluZ0ZvclBhaW50QWZ0ZXJOZXh0Vmlld0RpZE1vdmVUb1dpbmRvdykKKyAgICAgICAg
ICAgIG1fYWN0aXZpdHlTdGF0ZUNoYW5nZVdhbnRzU3luY2hyb25vdXNSZXBseSA9IHRydWU7Cisg
ICAgICAgIG1fc2hvdWxkU2tpcFdhaXRpbmdGb3JQYWludEFmdGVyTmV4dFZpZXdEaWRNb3ZlVG9X
aW5kb3cgPSBmYWxzZTsKKyAgICB9CisKKyAgICAvLyBEb24ndCB3YWl0IHN5bmNocm9ub3VzbHkg
aWYgdGhlIHZpZXcgc3RhdGUgaXMgbm90IHZpc2libGUuIChUaGlzIG1hdHRlcnMgaW4gcGFydGlj
dWxhciBvbiBpT1MsIHdoZXJlIGEgaGlkZGVuIHBhZ2UgbWF5IGJlIHN1c3BlbmRlZC4pCisgICAg
aWYgKCEobV9hY3Rpdml0eVN0YXRlICYgQWN0aXZpdHlTdGF0ZTo6SXNWaXNpYmxlKSkKKyAgICAg
ICAgbV9hY3Rpdml0eVN0YXRlQ2hhbmdlV2FudHNTeW5jaHJvbm91c1JlcGx5ID0gZmFsc2U7CisK
KyAgICBhdXRvIGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCA9IG1fYWN0aXZpdHlTdGF0ZUNoYW5nZVdh
bnRzU3luY2hyb25vdXNSZXBseSA/IHRha2VOZXh0QWN0aXZpdHlTdGF0ZUNoYW5nZUlEKCkgOiBz
dGF0aWNfY2FzdDxBY3Rpdml0eVN0YXRlQ2hhbmdlSUQ+KEFjdGl2aXR5U3RhdGVDaGFuZ2VBc3lu
Y2hyb25vdXMpOworCisgICAgaWYgKGNoYW5nZWQgfHwgYWN0aXZpdHlTdGF0ZUNoYW5nZUlEICE9
IEFjdGl2aXR5U3RhdGVDaGFuZ2VBc3luY2hyb25vdXMgfHwgIW1fbmV4dEFjdGl2aXR5U3RhdGVD
aGFuZ2VDYWxsYmFja3MuaXNFbXB0eSgpKSB7CisgICAgICAgIHNlbmRXaXRoQXN5bmNSZXBseShN
ZXNzYWdlczo6V2ViUGFnZTo6U2V0QWN0aXZpdHlTdGF0ZShtX2FjdGl2aXR5U3RhdGUsIGFjdGl2
aXR5U3RhdGVDaGFuZ2VJRCksIFtjYWxsYmFja3MgPSBzdGQ6OmV4Y2hhbmdlKG1fbmV4dEFjdGl2
aXR5U3RhdGVDaGFuZ2VDYWxsYmFja3MsIHsgfSldICgpIG11dGFibGUgeworICAgICAgICAgICAg
Zm9yIChhdXRvJiBjYWxsYmFjayA6IGNhbGxiYWNrcykKKyAgICAgICAgICAgICAgICBjYWxsYmFj
aygpOworICAgICAgICB9KTsKKyAgICB9CisKKyAgICAvLyBUaGlzIG11c3QgaGFwcGVuIGFmdGVy
IHRoZSBTZXRBY3Rpdml0eVN0YXRlIG1lc3NhZ2UgaXMgc2VudCwgdG8gZW5zdXJlIHRoZSBwYWdl
IHZpc2liaWxpdHkgZXZlbnQgY2FuIGZpcmUuCisgICAgdXBkYXRlVGhyb3R0bGVTdGF0ZSgpOwor
CisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAoKChjaGFuZ2VkICYgQWN0aXZpdHlT
dGF0ZTo6SXNWaXNpYmxlKSAmJiAhaXNWaWV3VmlzaWJsZSgpKSB8fCAoKGNoYW5nZWQgJiBBY3Rp
dml0eVN0YXRlOjpXaW5kb3dJc0FjdGl2ZSkgJiYgIXBhZ2VDbGllbnQoKS5pc1ZpZXdXaW5kb3dB
Y3RpdmUoKSkKKyAgICAgICAgfHwgKChjaGFuZ2VkICYgQWN0aXZpdHlTdGF0ZTo6SXNGb2N1c2Vk
KSAmJiAhKG1fYWN0aXZpdHlTdGF0ZSAmIEFjdGl2aXR5U3RhdGU6OklzRm9jdXNlZCkpKQorICAg
ICAgICByZXF1ZXN0UG9pbnRlclVubG9jaygpOworI2VuZGlmCisKKyAgICBpZiAoY2hhbmdlZCAm
IEFjdGl2aXR5U3RhdGU6OklzVmlzaWJsZSkgeworICAgICAgICBpZiAoaXNWaWV3VmlzaWJsZSgp
KQorICAgICAgICAgICAgbV92aXNpYmxlUGFnZVRva2VuID0gbV9wcm9jZXNzLT52aXNpYmxlUGFn
ZVRva2VuKCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgbV92aXNpYmxlUGFnZVRva2Vu
ID0gbnVsbHB0cjsKKworICAgICAgICAgICAgLy8gSWYgd2UndmUgc3RhcnRlZCB0aGUgcmVzcG9u
c2l2ZW5lc3MgdGltZXIgYXMgcGFydCBvZiB0ZWxsaW5nIHRoZSB3ZWIgcHJvY2VzcyB0byB1cGRh
dGUgdGhlIGJhY2tpbmcgc3RvcmUKKyAgICAgICAgICAgIC8vIHN0YXRlLCBpdCBtaWdodCBub3Qg
c2VuZCBiYWNrIGEgcmVwbHkgKHNpbmNlIGl0IHdvbid0IHBhaW50IGFueXRoaW5nIGlmIHRoZSB3
ZWIgcGFnZSBpcyBoaWRkZW4pIHNvIHdlCisgICAgICAgICAgICAvLyBzdG9wIHRoZSB1bnJlc3Bv
bnNpdmVuZXNzIHRpbWVyIGhlcmUuCisgICAgICAgICAgICBtX3Byb2Nlc3MtPnN0b3BSZXNwb25z
aXZlbmVzc1RpbWVyKCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoY2hhbmdlZCAmIEFj
dGl2aXR5U3RhdGU6OklzSW5XaW5kb3cpIHsKKyAgICAgICAgaWYgKGlzSW5XaW5kb3coKSkKKyAg
ICAgICAgICAgIHZpZXdEaWRFbnRlcldpbmRvdygpOworICAgICAgICBlbHNlCisgICAgICAgICAg
ICB2aWV3RGlkTGVhdmVXaW5kb3coKTsKKyAgICB9CisKKyAgICB1cGRhdGVCYWNraW5nU3RvcmVE
aXNjYXJkYWJsZVN0YXRlKCk7CisKKyAgICBpZiAoYWN0aXZpdHlTdGF0ZUNoYW5nZUlEICE9IEFj
dGl2aXR5U3RhdGVDaGFuZ2VBc3luY2hyb25vdXMpCisgICAgICAgIHdhaXRGb3JEaWRVcGRhdGVB
Y3Rpdml0eVN0YXRlKGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCk7CisKKyAgICBtX3BvdGVudGlhbGx5
Q2hhbmdlZEFjdGl2aXR5U3RhdGVGbGFncyA9IHsgfTsKKyAgICBtX2FjdGl2aXR5U3RhdGVDaGFu
Z2VXYW50c1N5bmNocm9ub3VzUmVwbHkgPSBmYWxzZTsKKyAgICBtX3ZpZXdXYXNFdmVySW5XaW5k
b3cgfD0gaXNOb3dJbldpbmRvdzsKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGZvciAoYXV0
byYgY2FsbGJhY2sgOiBtX2FjdGl2aXR5U3RhdGVVcGRhdGVDYWxsYmFja3MpCisgICAgICAgIGNh
bGxiYWNrKCk7CisgICAgbV9hY3Rpdml0eVN0YXRlVXBkYXRlQ2FsbGJhY2tzLmNsZWFyKCk7Cisj
ZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZVRocm90dGxlU3RhdGUoKQorewor
ICAgIGJvb2wgcHJvY2Vzc1N1cHByZXNzaW9uRW5hYmxlZCA9IG1fcHJlZmVyZW5jZXMtPnBhZ2VW
aXNpYmlsaXR5QmFzZWRQcm9jZXNzU3VwcHJlc3Npb25FbmFibGVkKCk7CisKKyAgICAvLyBJZiBw
cm9jZXNzIHN1cHByZXNzaW9uIGlzIG5vdCBlbmFibGVkIHRha2UgYSB0b2tlbiBvbiB0aGUgcHJv
Y2VzcyBwb29sIHRvIGRpc2FibGUgc3VwcHJlc3Npb24gb2Ygc3VwcG9ydCBwcm9jZXNzZXMuCisg
ICAgaWYgKCFwcm9jZXNzU3VwcHJlc3Npb25FbmFibGVkKQorICAgICAgICBtX3ByZXZlbnRQcm9j
ZXNzU3VwcHJlc3Npb25Db3VudCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5wcm9jZXNzU3Vw
cHJlc3Npb25EaXNhYmxlZEZvclBhZ2VDb3VudCgpOworICAgIGVsc2UgaWYgKCFtX3ByZXZlbnRQ
cm9jZXNzU3VwcHJlc3Npb25Db3VudCkKKyAgICAgICAgbV9wcmV2ZW50UHJvY2Vzc1N1cHByZXNz
aW9uQ291bnQgPSBudWxscHRyOworCisgICAgaWYgKG1fYWN0aXZpdHlTdGF0ZSAmIEFjdGl2aXR5
U3RhdGU6OklzVmlzdWFsbHlJZGxlKQorICAgICAgICBtX3BhZ2VJc1VzZXJPYnNlcnZhYmxlQ291
bnQgPSBudWxscHRyOworICAgIGVsc2UgaWYgKCFtX3BhZ2VJc1VzZXJPYnNlcnZhYmxlQ291bnQp
CisgICAgICAgIG1fcGFnZUlzVXNlck9ic2VydmFibGVDb3VudCA9IG1fcHJvY2Vzcy0+cHJvY2Vz
c1Bvb2woKS51c2VyT2JzZXJ2YWJsZVBhZ2VDb3VudCgpOworCisjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKKyAgICBpZiAoaXNWaWV3VmlzaWJsZSgpKSB7CisgICAgICAgIGlmICghbV9pc1Zpc2li
bGVBY3Rpdml0eSB8fCAhbV9pc1Zpc2libGVBY3Rpdml0eS0+aXNWYWxpZCgpKSB7CisgICAgICAg
ICAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICJ1cGRhdGVU
aHJvdHRsZVN0YXRlOiBVSVByb2Nlc3MgaXMgdGFraW5nIGEgZm9yZWdyb3VuZCBhc3NlcnRpb24g
YmVjYXVzZSB0aGUgdmlldyBpcyB2aXNpYmxlIik7CisgICAgICAgICAgICBtX2lzVmlzaWJsZUFj
dGl2aXR5ID0gbV9wcm9jZXNzLT50aHJvdHRsZXIoKS5mb3JlZ3JvdW5kQWN0aXZpdHkoIlZpZXcg
aXMgdmlzaWJsZSJfcykubW92ZVRvVW5pcXVlUHRyKCk7CisgICAgICAgIH0KKyAgICB9IGVsc2Ug
aWYgKG1faXNWaXNpYmxlQWN0aXZpdHkpIHsKKyAgICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0Vf
TE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAidXBkYXRlVGhyb3R0bGVTdGF0ZTogVUlQcm9jZXNzIGlz
IHJlbGVhc2luZyBhIGZvcmVncm91bmQgYXNzZXJ0aW9uIGJlY2F1c2UgdGhlIHZpZXcgaXMgbm8g
bG9uZ2VyIHZpc2libGUiKTsKKyAgICAgICAgbV9pc1Zpc2libGVBY3Rpdml0eSA9IG51bGxwdHI7
CisgICAgfQorCisgICAgYm9vbCBpc0F1ZGlibGUgPSBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMo
QWN0aXZpdHlTdGF0ZTo6SXNBdWRpYmxlKTsKKyAgICBpZiAoaXNBdWRpYmxlKSB7CisgICAgICAg
IGlmICghbV9pc0F1ZGlibGVBY3Rpdml0eSB8fCAhbV9pc0F1ZGlibGVBY3Rpdml0eS0+aXNWYWxp
ZCgpKSB7CisgICAgICAgICAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3Bl
bnNpb24sICJ1cGRhdGVUaHJvdHRsZVN0YXRlOiBVSVByb2Nlc3MgaXMgdGFraW5nIGEgZm9yZWdy
b3VuZCBhc3NlcnRpb24gYmVjYXVzZSB3ZSBhcmUgcGxheWluZyBhdWRpbyIpOworICAgICAgICAg
ICAgbV9pc0F1ZGlibGVBY3Rpdml0eSA9IG1fcHJvY2Vzcy0+dGhyb3R0bGVyKCkuZm9yZWdyb3Vu
ZEFjdGl2aXR5KCJWaWV3IGlzIHBsYXlpbmcgYXVkaW8iX3MpLm1vdmVUb1VuaXF1ZVB0cigpOwor
ICAgICAgICB9CisgICAgICAgIG1fYXVkaWJsZUFjdGl2aXR5VGltZXIuc3RvcCgpOworICAgIH0g
ZWxzZSBpZiAobV9pc0F1ZGlibGVBY3Rpdml0eSkgeworICAgICAgICBXRUJQQUdFUFJPWFlfUkVM
RUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICJ1cGRhdGVUaHJvdHRsZVN0YXRlOiBVSVByb2Nl
c3Mgd2lsbCByZWxlYXNlIGEgZm9yZWdyb3VuZCBhc3NlcnRpb24gaW4gJWcgc2Vjb25kcyBiZWNh
dXNlIHdlIGFyZSBubyBsb25nZXIgcGxheWluZyBhdWRpbyIsIGF1ZGlibGVBY3Rpdml0eUNsZWFy
RGVsYXkuc2Vjb25kcygpKTsKKyAgICAgICAgaWYgKCFtX2F1ZGlibGVBY3Rpdml0eVRpbWVyLmlz
QWN0aXZlKCkpCisgICAgICAgICAgICBtX2F1ZGlibGVBY3Rpdml0eVRpbWVyLnN0YXJ0T25lU2hv
dChhdWRpYmxlQWN0aXZpdHlDbGVhckRlbGF5KTsKKyAgICB9CisKKyAgICBib29sIGlzQ2FwdHVy
aW5nTWVkaWEgPSBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6SXNDYXB0
dXJpbmdNZWRpYSk7CisgICAgaWYgKGlzQ2FwdHVyaW5nTWVkaWEpIHsKKyAgICAgICAgaWYgKCFt
X2lzQ2FwdHVyaW5nQWN0aXZpdHkgfHwgIW1faXNDYXB0dXJpbmdBY3Rpdml0eS0+aXNWYWxpZCgp
KSB7CisgICAgICAgICAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNp
b24sICJ1cGRhdGVUaHJvdHRsZVN0YXRlOiBVSVByb2Nlc3MgaXMgdGFraW5nIGEgZm9yZWdyb3Vu
ZCBhc3NlcnRpb24gYmVjYXVzZSBtZWRpYSBjYXB0dXJlIGlzIGFjdGl2ZSIpOworICAgICAgICAg
ICAgbV9pc0NhcHR1cmluZ0FjdGl2aXR5ID0gbV9wcm9jZXNzLT50aHJvdHRsZXIoKS5mb3JlZ3Jv
dW5kQWN0aXZpdHkoIlZpZXcgaXMgY2FwdHVyaW5nIG1lZGlhIl9zKS5tb3ZlVG9VbmlxdWVQdHIo
KTsKKyAgICAgICAgfQorICAgIH0gZWxzZSBpZiAobV9pc0NhcHR1cmluZ0FjdGl2aXR5KSB7Cisg
ICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgInVwZGF0
ZVRocm90dGxlU3RhdGU6IFVJUHJvY2VzcyBpcyByZWxlYXNpbmcgYSBmb3JlZ3JvdW5kIGFzc2Vy
dGlvbiBiZWNhdXNlIG1lZGlhIGNhcHR1cmUgaXMgbm8gbG9uZ2VyIGFjdGl2ZSIpOworICAgICAg
ICBtX2lzQ2FwdHVyaW5nQWN0aXZpdHkgPSBudWxscHRyOworICAgIH0KKyNlbmRpZgorfQorCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpjbGVhckF1ZGlibGVB
Y3Rpdml0eSgpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5z
aW9uLCAidXBkYXRlVGhyb3R0bGVTdGF0ZTogVUlQcm9jZXNzIGlzIHJlbGVhc2luZyBhIGZvcmVn
cm91bmQgYXNzZXJ0aW9uIGJlY2F1c2Ugd2UgYXJlIG5vIGxvbmdlciBwbGF5aW5nIGF1ZGlvIik7
CisgICAgbV9pc0F1ZGlibGVBY3Rpdml0eSA9IG51bGxwdHI7Cit9CisjZW5kaWYKKwordm9pZCBX
ZWJQYWdlUHJveHk6OnVwZGF0ZUhpZGRlblBhZ2VUaHJvdHRsaW5nQXV0b0luY3JlYXNlcygpCit7
CisgICAgaWYgKCFtX3ByZWZlcmVuY2VzLT5oaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nQXV0
b0luY3JlYXNlcygpKQorICAgICAgICBtX2hpZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdBdXRv
SW5jcmVhc2VzQ291bnQgPSBudWxscHRyOworICAgIGVsc2UgaWYgKCFtX2hpZGRlblBhZ2VET01U
aW1lclRocm90dGxpbmdBdXRvSW5jcmVhc2VzQ291bnQpCisgICAgICAgIG1faGlkZGVuUGFnZURP
TVRpbWVyVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXNDb3VudCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bv
b2woKS5oaWRkZW5QYWdlVGhyb3R0bGluZ0F1dG9JbmNyZWFzZXNDb3VudCgpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6bGF5ZXJIb3N0aW5nTW9kZURpZENoYW5nZSgpCit7CisgICAgTGF5ZXJI
b3N0aW5nTW9kZSBsYXllckhvc3RpbmdNb2RlID0gcGFnZUNsaWVudCgpLnZpZXdMYXllckhvc3Rp
bmdNb2RlKCk7CisgICAgaWYgKG1fbGF5ZXJIb3N0aW5nTW9kZSA9PSBsYXllckhvc3RpbmdNb2Rl
KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2xheWVySG9zdGluZ01vZGUgPSBsYXllckhvc3Rp
bmdNb2RlOworCisgICAgaWYgKGhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlNldExheWVySG9zdGluZ01vZGUobGF5ZXJIb3N0aW5nTW9kZSkpOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6d2FpdEZvckRpZFVwZGF0ZUFjdGl2aXR5U3RhdGUoQWN0
aXZpdHlTdGF0ZUNoYW5nZUlEIGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCkKK3sKKyAgICBpZiAoIWhh
c1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChtX3Byb2Nlc3Mt
PnN0YXRlKCkgIT0gV2ViUHJvY2Vzc1Byb3h5OjpTdGF0ZTo6UnVubmluZykKKyAgICAgICAgcmV0
dXJuOworCisgICAgLy8gSWYgd2UgaGF2ZSBwcmV2aW91c2x5IHRpbWVkIG91dCB3aXRoIG5vIHJl
c3BvbnNlIGZyb20gdGhlIFdlYlByb2Nlc3MsIGRvbid0IGJsb2NrIHRoZSBVSVByb2Nlc3MgYWdh
aW4gdW50aWwgaXQgc3RhcnRzIHJlc3BvbmRpbmcuCisgICAgaWYgKG1fd2FpdGluZ0ZvckRpZFVw
ZGF0ZUFjdGl2aXR5U3RhdGUpCisgICAgICAgIHJldHVybjsKKworI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpCisgICAgLy8gSGFpbCBNYXJ5IGNoZWNrLiBTaG91bGQgbm90IGJlIHBvc3NpYmxlIChk
aXNwYXRjaEFjdGl2aXR5U3RhdGVDaGFuZ2Ugc2hvdWxkIGZvcmNlIGFzeW5jIGlmIG5vdCB2aXNp
YmxlLAorICAgIC8vIGFuZCBpZiB2aXNpYmxlIHdlIHNob3VsZCBiZSBob2xkaW5nIGFuIGFzc2Vy
dGlvbikgLSBidXQgd2Ugc2hvdWxkIG5ldmVyIGJsb2NrIG9uIGEgc3VzcGVuZGVkIHByb2Nlc3Mu
CisgICAgaWYgKCFtX2lzVmlzaWJsZUFjdGl2aXR5KSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgICAgICByZXR1cm47CisgICAgfQorI2VuZGlmCisKKyAgICBtX3dhaXRpbmdG
b3JEaWRVcGRhdGVBY3Rpdml0eVN0YXRlID0gdHJ1ZTsKKworICAgIG1fZHJhd2luZ0FyZWEtPndh
aXRGb3JEaWRVcGRhdGVBY3Rpdml0eVN0YXRlKGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCk7Cit9CisK
K0ludFNpemUgV2ViUGFnZVByb3h5Ojp2aWV3U2l6ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHBh
Z2VDbGllbnQoKS52aWV3U2l6ZSgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0SW5pdGlh
bEZvY3VzKGJvb2wgZm9yd2FyZCwgYm9vbCBpc0tleWJvYXJkRXZlbnRWYWxpZCwgY29uc3QgV2Vi
S2V5Ym9hcmRFdmVudCYga2V5Ym9hcmRFdmVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
IGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7Cisg
ICAgICAgIGNhbGxiYWNrRnVuY3Rpb24oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6U2V0SW5pdGlhbEZvY3VzKGZv
cndhcmQsIGlzS2V5Ym9hcmRFdmVudFZhbGlkLCBrZXlib2FyZEV2ZW50KSwgW2NhbGxiYWNrRnVu
Y3Rpb24gPSBXVEZNb3ZlKGNhbGxiYWNrRnVuY3Rpb24pLCBiYWNrZ3JvdW5kQWN0aXZpdHkgPSBt
X3Byb2Nlc3MtPnRocm90dGxlcigpLmJhY2tncm91bmRBY3Rpdml0eSgiV2ViUGFnZVByb3h5Ojpz
ZXRJbml0aWFsRm9jdXMiX3MpXSAoKSBtdXRhYmxlIHsKKyAgICAgICAgY2FsbGJhY2tGdW5jdGlv
bigpOworICAgIH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y2xlYXJTZWxlY3Rpb24oKQor
eworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNsZWFyU2VsZWN0aW9uKCkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6cmVzdG9yZVNlbGVjdGlvbkluRm9jdXNlZEVkaXRhYmxlRWxlbWVudCgpCit7Cisg
ICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6UmVzdG9yZVNlbGVjdGlvbkluRm9jdXNlZEVkaXRhYmxlRWxlbWVu
dCgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnZhbGlkYXRlQ29tbWFuZChjb25zdCBTdHJp
bmcmIGNvbW1hbmROYW1lLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIGludDMyX3QpPiYm
IGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAg
ICAgICByZXR1cm4gY2FsbGJhY2tGdW5jdGlvbihmYWxzZSwgMCk7CisKKyAgICBzZW5kV2l0aEFz
eW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlZhbGlkYXRlQ29tbWFuZChjb21tYW5kTmFtZSks
IFdURk1vdmUoY2FsbGJhY2tGdW5jdGlvbikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aW5j
cmVhc2VMaXN0TGV2ZWwoKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6SW5jcmVhc2VMaXN0TGV2
ZWwoKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNyZWFzZUxpc3RMZXZlbCgpCit7Cisg
ICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlOjpEZWNyZWFzZUxpc3RMZXZlbCgpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OmNoYW5nZUxpc3RUeXBlKCkKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNz
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNoYW5n
ZUxpc3RUeXBlKCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0QmFzZVdyaXRpbmdEaXJl
Y3Rpb24oV3JpdGluZ0RpcmVjdGlvbiBkaXJlY3Rpb24pCit7CisgICAgaWYgKCFoYXNSdW5uaW5n
UHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
OjpTZXRCYXNlV3JpdGluZ0RpcmVjdGlvbihkaXJlY3Rpb24pKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OnVwZGF0ZUZvbnRBdHRyaWJ1dGVzQWZ0ZXJFZGl0b3JTdGF0ZUNoYW5nZSgpCit7Cisg
ICAgbV9jYWNoZWRGb250QXR0cmlidXRlc0F0U2VsZWN0aW9uU3RhcnQucmVzZXQoKTsKKworICAg
IGlmIChtX2VkaXRvclN0YXRlLmlzTWlzc2luZ1Bvc3RMYXlvdXREYXRhKQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoYXV0byBmb250QXR0cmlidXRlcyA9IG1fZWRpdG9yU3RhdGUucG9zdExh
eW91dERhdGEoKS5mb250QXR0cmlidXRlcykgeworICAgICAgICBtX3VpQ2xpZW50LT5kaWRDaGFu
Z2VGb250QXR0cmlidXRlcygqZm9udEF0dHJpYnV0ZXMpOworICAgICAgICBtX2NhY2hlZEZvbnRB
dHRyaWJ1dGVzQXRTZWxlY3Rpb25TdGFydCA9IFdURk1vdmUoZm9udEF0dHJpYnV0ZXMpOworICAg
IH0KK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldE5lZWRzRm9udEF0dHJpYnV0ZXMoYm9vbCBu
ZWVkc0ZvbnRBdHRyaWJ1dGVzKQoreworICAgIGlmIChtX25lZWRzRm9udEF0dHJpYnV0ZXMgPT0g
bmVlZHNGb250QXR0cmlidXRlcykKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9uZWVkc0ZvbnRB
dHRyaWJ1dGVzID0gbmVlZHNGb250QXR0cmlidXRlczsKKworICAgIGlmIChoYXNSdW5uaW5nUHJv
Y2VzcygpKQorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXROZWVkc0ZvbnRBdHRy
aWJ1dGVzKG5lZWRzRm9udEF0dHJpYnV0ZXMpKTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6Om1h
aW50YWluc0luYWN0aXZlU2VsZWN0aW9uKCkgY29uc3QKK3sKKyAgICAvLyBSZWdhcmRsZXNzIG9m
IHdoYXQgdGhlIGNsaWVudCB3YW50cyB0byBkbywga2VlcCBzZWxlY3Rpb25zIGlmIGEgbG9jYWwg
SW5zcGVjdG9yIGlzIG9wZW4uCisgICAgLy8gT3RoZXJ3aXNlLCB0aGVyZSBpcyBubyB3YXkgdG8g
dXNlIHRoZSBjb25zb2xlIHRvIGluc3BlY3QgdGhlIHN0YXRlIG9mIGEgc2VsZWN0aW9uLgorICAg
IGlmIChpbnNwZWN0b3IoKSAmJiBpbnNwZWN0b3IoKS0+aXNWaXNpYmxlKCkpCisgICAgICAgIHJl
dHVybiB0cnVlOworCisgICAgcmV0dXJuIG1fbWFpbnRhaW5zSW5hY3RpdmVTZWxlY3Rpb247Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNYWludGFpbnNJbmFjdGl2ZVNlbGVjdGlvbihib29s
IG5ld1ZhbHVlKQoreworICAgIG1fbWFpbnRhaW5zSW5hY3RpdmVTZWxlY3Rpb24gPSBuZXdWYWx1
ZTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNjaGVkdWxlRnVsbEVkaXRvclN0YXRlVXBkYXRl
KCkKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNjaGVkdWxlRnVsbEVkaXRvclN0YXRlVXBkYXRl
KCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2VsZWN0QWxsKCkKK3sKKyAgICBpZiAoIWhh
c1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlNlbGVjdEFsbCgpKTsKK30KKworc3RhdGljIGJvb2wgaXNQYXN0ZUNvbW1hbmRO
YW1lKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPEhhc2hTZXQ8U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+PiBwYXN0ZUNvbW1h
bmROYW1lcyA9IEhhc2hTZXQ8U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+IHsKKyAg
ICAgICAgIlBhc3RlIiwKKyAgICAgICAgIlBhc3RlQW5kTWF0Y2hTdHlsZSIsCisgICAgICAgICJQ
YXN0ZUFzUXVvdGF0aW9uIiwKKyAgICAgICAgIlBhc3RlQXNQbGFpblRleHQiCisgICAgfTsKKyAg
ICByZXR1cm4gcGFzdGVDb21tYW5kTmFtZXMtPmNvbnRhaW5zKGNvbW1hbmROYW1lKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmV4ZWN1dGVFZGl0Q29tbWFuZChjb25zdCBTdHJpbmcmIGNvbW1h
bmROYW1lLCBjb25zdCBTdHJpbmcmIGFyZ3VtZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2tGdW5jdGlvbikKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpIHsK
KyAgICAgICAgY2FsbGJhY2tGdW5jdGlvbigpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgaWYgKGlzUGFzdGVDb21tYW5kTmFtZShjb21tYW5kTmFtZSkpCisgICAgICAgIHdpbGxQZXJm
b3JtUGFzdGVDb21tYW5kKCk7CisKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Oldl
YlBhZ2U6OkV4ZWN1dGVFZGl0Q29tbWFuZFdpdGhDYWxsYmFjayhjb21tYW5kTmFtZSwgYXJndW1l
bnQpLCBbY2FsbGJhY2tGdW5jdGlvbiA9IFdURk1vdmUoY2FsbGJhY2tGdW5jdGlvbiksIGJhY2tn
cm91bmRBY3Rpdml0eSA9IG1fcHJvY2Vzcy0+dGhyb3R0bGVyKCkuYmFja2dyb3VuZEFjdGl2aXR5
KCJXZWJQYWdlUHJveHk6OmV4ZWN1dGVFZGl0Q29tbWFuZCJfcyldICgpIG11dGFibGUgeworICAg
ICAgICBjYWxsYmFja0Z1bmN0aW9uKCk7CisgICAgfSk7Cit9CisgICAgCit2b2lkIFdlYlBhZ2VQ
cm94eTo6ZXhlY3V0ZUVkaXRDb21tYW5kKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUsIGNvbnN0
IFN0cmluZyYgYXJndW1lbnQpCit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFN0cmluZz4g
aWdub3JlU3BlbGxpbmdDb21tYW5kTmFtZShNQUtFX1NUQVRJQ19TVFJJTkdfSU1QTCgiaWdub3Jl
U3BlbGxpbmciKSk7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIGlmIChpc1Bhc3RlQ29tbWFuZE5hbWUoY29tbWFuZE5hbWUpKQorICAgICAg
ICB3aWxsUGVyZm9ybVBhc3RlQ29tbWFuZCgpOworCisgICAgaWYgKGNvbW1hbmROYW1lID09IGln
bm9yZVNwZWxsaW5nQ29tbWFuZE5hbWUpCisgICAgICAgICsrbV9wZW5kaW5nTGVhcm5Pcklnbm9y
ZVdvcmRNZXNzYWdlQ291bnQ7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpFeGVjdXRl
RWRpdENvbW1hbmQoY29tbWFuZE5hbWUsIGFyZ3VtZW50KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpyZXF1ZXN0Rm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0KENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6Rm9udEF0dHJpYnV0ZXMmKT4mJiBjYWxsYmFjaykKK3sK
KyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybiBjYWxsYmFjayh7
IH0pOworCisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpSZXF1ZXN0
Rm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0KCksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0g
bWFrZVJlZigqdGhpcyksIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldIChjb25zdCBXZWJD
b3JlOjpGb250QXR0cmlidXRlcyYgYXR0cmlidXRlcykgbXV0YWJsZSB7CisgICAgICAgIG1fY2Fj
aGVkRm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0ID0gYXR0cmlidXRlczsKKyAgICAgICAg
Y2FsbGJhY2soYXR0cmlidXRlcyk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXRFZGl0YWJsZShib29sIGVkaXRhYmxlKQoreworICAgIGlmIChlZGl0YWJsZSA9PSBtX2lzRWRp
dGFibGUpCisgICAgICAgIHJldHVybjsKKworICAgIG1faXNFZGl0YWJsZSA9IGVkaXRhYmxlOwor
CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRFZGl0YWJsZShlZGl0YWJsZSkpOworfQorICAgIAor
dm9pZCBXZWJQYWdlUHJveHk6OnNldE1lZGlhU3RyZWFtQ2FwdHVyZU11dGVkKGJvb2wgbXV0ZWQp
Cit7CisgICAgYXV0byBzdGF0ZSA9IG1fbXV0ZWRTdGF0ZTsKKyAgICBpZiAobXV0ZWQpCisgICAg
ICAgIHN0YXRlLmFkZChXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0cmVhbUNhcHR1cmVJ
c011dGVkKTsKKyAgICBlbHNlCisgICAgICAgIHN0YXRlLnJlbW92ZShXZWJDb3JlOjpNZWRpYVBy
b2R1Y2VyOjpNZWRpYVN0cmVhbUNhcHR1cmVJc011dGVkKTsKKyAgICBzZXRNdXRlZChzdGF0ZSk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjphY3RpdmF0ZU1lZGlhU3RyZWFtQ2FwdHVyZUluUGFn
ZSgpCit7CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBXZWJQcm9jZXNzUHJveHk6Om11
dGVDYXB0dXJlSW5QYWdlc0V4Y2VwdChtX3dlYlBhZ2VJRCk7CisjZW5kaWYKKyAgICBzZXRNZWRp
YVN0cmVhbUNhcHR1cmVNdXRlZChmYWxzZSk7Cit9CisKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlM
WSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDb21taXRMYXllclRyZWUoY29uc3QgUmVtb3RlTGF5
ZXJUcmVlVHJhbnNhY3Rpb24mKQoreworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bGF5ZXJUcmVl
Q29tbWl0Q29tcGxldGUoKQoreworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRV
cGRhdGVSZW5kZXJpbmdBZnRlckNvbW1pdHRpbmdMb2FkKCkKK3sKKyAgICBpZiAobV9oYXNVcGRh
dGVkUmVuZGVyaW5nQWZ0ZXJEaWRDb21taXRMb2FkKQorICAgICAgICByZXR1cm47CisKKyAgICBt
X2hhc1VwZGF0ZWRSZW5kZXJpbmdBZnRlckRpZENvbW1pdExvYWQgPSB0cnVlOworICAgIHN0b3BN
YWtpbmdWaWV3QmxhbmtEdWVUb0xhY2tPZlJlbmRlcmluZ1VwZGF0ZUlmTmVjZXNzYXJ5KCk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdG9wTWFraW5nVmlld0JsYW5rRHVlVG9MYWNrT2ZSZW5k
ZXJpbmdVcGRhdGVJZk5lY2Vzc2FyeSgpCit7CisgICAgaWYgKCFtX21hZGVWaWV3QmxhbmtEdWVU
b0xhY2tPZlJlbmRlcmluZ1VwZGF0ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKG1f
aGFzVXBkYXRlZFJlbmRlcmluZ0FmdGVyRGlkQ29tbWl0TG9hZCk7CisgICAgV0VCUEFHRVBST1hZ
X1JFTEVBU0VfTE9HKFByb2Nlc3MsICJzdG9wTWFraW5nVmlld0JsYW5rRHVlVG9MYWNrT2ZSZW5k
ZXJpbmdVcGRhdGVJZk5lY2Vzc2FyeToiKTsKKyAgICBwYWdlQ2xpZW50KCkubWFrZVZpZXdCbGFu
ayhmYWxzZSk7CisgICAgbV9tYWRlVmlld0JsYW5rRHVlVG9MYWNrT2ZSZW5kZXJpbmdVcGRhdGUg
PSBmYWxzZTsKK30KKworLy8gSWYgd2UgaGF2ZSBub3QgcGFpbnRlZCB5ZXQgc2luY2UgdGhlIGxh
c3QgbG9hZCBjb21taXQsIHRoZW4gd2UgYXJlIGxpa2VseSBzdGlsbCBkaXNwbGF5aW5nIHRoZSBw
cmV2aW91cyBwYWdlLgorLy8gRGlzcGxheWluZyBhIEpTIHByb21wdCBmb3IgdGhlIG5ldyBwYWdl
IHdpdGggdGhlIG9sZCBwYWdlIGJlaGluZCB3b3VsZCBiZSBjb25mdXNpbmcgc28gd2UgbWFrZSB0
aGUgdmlldyBibGFuaworLy8gdW50aWwgdGhlIG5leHQgcGFpbnQgaW4gc3VjaCBjYXNlLgordm9p
ZCBXZWJQYWdlUHJveHk6Om1ha2VWaWV3QmxhbmtJZlVucGFpbnRlZFNpbmNlTGFzdExvYWRDb21t
aXQoKQoreworICAgIGlmICghbV9oYXNVcGRhdGVkUmVuZGVyaW5nQWZ0ZXJEaWRDb21taXRMb2Fk
KSB7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgICAgIHN0YXRpYyBib29sIHNob3VsZE1ha2VW
aWV3QmxhbmsgPSBsaW5rZWRPbk9yQWZ0ZXIoV2ViQ29yZTo6U0RLVmVyc2lvbjo6Rmlyc3RXaXRo
QmxhbmtWaWV3T25KU1Byb21wdCk7CisjZWxzZQorICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRN
YWtlVmlld0JsYW5rID0gdHJ1ZTsKKyNlbmRpZgorICAgICAgICBpZiAoc2hvdWxkTWFrZVZpZXdC
bGFuaykgeworICAgICAgICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJt
YWtlVmlld0JsYW5rSWZVbnBhaW50ZWRTaW5jZUxhc3RMb2FkQ29tbWl0OiBNYWtpbmcgdGhlIHZp
ZXcgYmxhbmsgYmVjYXVzZSBvZiBhIEpTIHByb21wdCBiZWZvcmUgdGhlIGZpcnN0IHBhaW50IGZv
ciBpdHMgcGFnZSIpOworICAgICAgICAgICAgcGFnZUNsaWVudCgpLm1ha2VWaWV3QmxhbmsodHJ1
ZSk7CisgICAgICAgICAgICBtX21hZGVWaWV3QmxhbmtEdWVUb0xhY2tPZlJlbmRlcmluZ1VwZGF0
ZSA9IHRydWU7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaXNj
YXJkUXVldWVkTW91c2VFdmVudHMoKQoreworICAgIHdoaWxlIChtX21vdXNlRXZlbnRRdWV1ZS5z
aXplKCkgPiAxKQorICAgICAgICBtX21vdXNlRXZlbnRRdWV1ZS5yZW1vdmVMYXN0KCk7Cit9CisK
KyNpZiBFTkFCTEUoRFJBR19TVVBQT1JUKQordm9pZCBXZWJQYWdlUHJveHk6OmRyYWdFbnRlcmVk
KERyYWdEYXRhJiBkcmFnRGF0YSwgY29uc3QgU3RyaW5nJiBkcmFnU3RvcmFnZU5hbWUpCit7Cisj
aWYgUExBVEZPUk0oQ09DT0EpCisgICAgV2ViUGFzdGVib2FyZFByb3h5OjpzaW5nbGV0b24oKS5n
cmFudEFjY2Vzc1RvQ3VycmVudFR5cGVzKG1fcHJvY2Vzcy5nZXQoKSwgZHJhZ1N0b3JhZ2VOYW1l
KTsKKyNlbmRpZgorICAgIGxhdW5jaEluaXRpYWxQcm9jZXNzSWZOZWNlc3NhcnkoKTsKKyAgICBw
ZXJmb3JtRHJhZ0NvbnRyb2xsZXJBY3Rpb24oRHJhZ0NvbnRyb2xsZXJBY3Rpb246OkVudGVyZWQs
IGRyYWdEYXRhLCBkcmFnU3RvcmFnZU5hbWUsIHsgfSwgeyB9KTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmRyYWdVcGRhdGVkKERyYWdEYXRhJiBkcmFnRGF0YSwgY29uc3QgU3RyaW5nJiBkcmFn
U3RvcmFnZU5hbWUpCit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgV2ViUGFzdGVib2FyZFBy
b3h5OjpzaW5nbGV0b24oKS5ncmFudEFjY2Vzc1RvQ3VycmVudFR5cGVzKG1fcHJvY2Vzcy5nZXQo
KSwgZHJhZ1N0b3JhZ2VOYW1lKTsKKyNlbmRpZgorICAgIHBlcmZvcm1EcmFnQ29udHJvbGxlckFj
dGlvbihEcmFnQ29udHJvbGxlckFjdGlvbjo6VXBkYXRlZCwgZHJhZ0RhdGEsIGRyYWdTdG9yYWdl
TmFtZSwgeyB9LCB7IH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZHJhZ0V4aXRlZChEcmFn
RGF0YSYgZHJhZ0RhdGEsIGNvbnN0IFN0cmluZyYgZHJhZ1N0b3JhZ2VOYW1lKQoreworICAgIHBl
cmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihEcmFnQ29udHJvbGxlckFjdGlvbjo6RXhpdGVkLCBk
cmFnRGF0YSwgZHJhZ1N0b3JhZ2VOYW1lLCB7IH0sIHsgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpwZXJmb3JtRHJhZ09wZXJhdGlvbihEcmFnRGF0YSYgZHJhZ0RhdGEsIGNvbnN0IFN0cmlu
ZyYgZHJhZ1N0b3JhZ2VOYW1lLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBzYW5kYm94RXh0
ZW5zaW9uSGFuZGxlLCBWZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYmIHNhbmRib3hF
eHRlbnNpb25zRm9yVXBsb2FkKQoreworICAgIHBlcmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihE
cmFnQ29udHJvbGxlckFjdGlvbjo6UGVyZm9ybURyYWdPcGVyYXRpb24sIGRyYWdEYXRhLCBkcmFn
U3RvcmFnZU5hbWUsIFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSksIFdURk1vdmUoc2Fu
ZGJveEV4dGVuc2lvbnNGb3JVcGxvYWQpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnBlcmZv
cm1EcmFnQ29udHJvbGxlckFjdGlvbihEcmFnQ29udHJvbGxlckFjdGlvbiBhY3Rpb24sIERyYWdE
YXRhJiBkcmFnRGF0YSwgY29uc3QgU3RyaW5nJiBkcmFnU3RvcmFnZU5hbWUsIFNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSYmIHNhbmRib3hFeHRlbnNpb25IYW5kbGUsIFZlY3RvcjxTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGU+JiYgc2FuZGJveEV4dGVuc2lvbnNGb3JVcGxvYWQpCit7CisgICAgaWYg
KCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisjaWYgUExBVEZPUk0oR1RL
KQorICAgIFVOVVNFRF9QQVJBTShkcmFnU3RvcmFnZU5hbWUpOworICAgIFVOVVNFRF9QQVJBTShz
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKTsKKyAgICBVTlVTRURfUEFSQU0oc2FuZGJveEV4dGVuc2lv
bnNGb3JVcGxvYWQpOworCisgICAgU3RyaW5nIHVybCA9IGRyYWdEYXRhLmFzVVJMKCk7CisgICAg
aWYgKCF1cmwuaXNFbXB0eSgpKQorICAgICAgICBtX3Byb2Nlc3MtPmFzc3VtZVJlYWRBY2Nlc3NU
b0Jhc2VVUkwoKnRoaXMsIHVybCk7CisKKyAgICBBU1NFUlQoZHJhZ0RhdGEucGxhdGZvcm1EYXRh
KCkpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlBlcmZvcm1EcmFnQ29udHJvbGxlckFj
dGlvbihhY3Rpb24sIGRyYWdEYXRhLmNsaWVudFBvc2l0aW9uKCksIGRyYWdEYXRhLmdsb2JhbFBv
c2l0aW9uKCksIGRyYWdEYXRhLmRyYWdnaW5nU291cmNlT3BlcmF0aW9uTWFzaygpLCAqZHJhZ0Rh
dGEucGxhdGZvcm1EYXRhKCksIGRyYWdEYXRhLmZsYWdzKCkpKTsKKyNlbHNlCisgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6UGVyZm9ybURyYWdDb250cm9sbGVyQWN0aW9uKGFjdGlvbiwgZHJh
Z0RhdGEsIHNhbmRib3hFeHRlbnNpb25IYW5kbGUsIHNhbmRib3hFeHRlbnNpb25zRm9yVXBsb2Fk
KSk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFBlcmZvcm1EcmFnQ29udHJv
bGxlckFjdGlvbihzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkRyYWdPcGVyYXRpb24+IGRyYWdPcGVy
YXRpb24sIFdlYkNvcmU6OkRyYWdIYW5kbGluZ01ldGhvZCBkcmFnSGFuZGxpbmdNZXRob2QsIGJv
b2wgbW91c2VJc092ZXJGaWxlSW5wdXQsIHVuc2lnbmVkIG51bWJlck9mSXRlbXNUb0JlQWNjZXB0
ZWQsIGNvbnN0IEludFJlY3QmIGluc2VydGlvblJlY3QsIGNvbnN0IEludFJlY3QmIGVkaXRhYmxl
RWxlbWVudFJlY3QpCit7CisgICAgbV9jdXJyZW50RHJhZ09wZXJhdGlvbiA9IGRyYWdPcGVyYXRp
b247CisgICAgbV9jdXJyZW50RHJhZ0hhbmRsaW5nTWV0aG9kID0gZHJhZ0hhbmRsaW5nTWV0aG9k
OworICAgIG1fY3VycmVudERyYWdJc092ZXJGaWxlSW5wdXQgPSBtb3VzZUlzT3ZlckZpbGVJbnB1
dDsKKyAgICBtX2N1cnJlbnREcmFnTnVtYmVyT2ZGaWxlc1RvQmVBY2NlcHRlZCA9IG51bWJlck9m
SXRlbXNUb0JlQWNjZXB0ZWQ7CisgICAgbV9jdXJyZW50RHJhZ0NhcmV0RWRpdGFibGVFbGVtZW50
UmVjdCA9IGVkaXRhYmxlRWxlbWVudFJlY3Q7CisgICAgc2V0RHJhZ0NhcmV0UmVjdChpbnNlcnRp
b25SZWN0KTsKKyAgICBwYWdlQ2xpZW50KCkuZGlkUGVyZm9ybURyYWdDb250cm9sbGVyQWN0aW9u
KCk7Cit9CisKKyNpZiBQTEFURk9STShHVEspCit2b2lkIFdlYlBhZ2VQcm94eTo6c3RhcnREcmFn
KFNlbGVjdGlvbkRhdGEmJiBzZWxlY3Rpb25EYXRhLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ09w
ZXJhdGlvbj4gZHJhZ09wZXJhdGlvbk1hc2ssIGNvbnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxl
JiBkcmFnSW1hZ2VIYW5kbGUpCit7CisgICAgUmVmUHRyPFNoYXJlYWJsZUJpdG1hcD4gZHJhZ0lt
YWdlID0gIWRyYWdJbWFnZUhhbmRsZS5pc051bGwoKSA/IFNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRl
KGRyYWdJbWFnZUhhbmRsZSkgOiBudWxscHRyOworICAgIHBhZ2VDbGllbnQoKS5zdGFydERyYWco
V1RGTW92ZShzZWxlY3Rpb25EYXRhKSwgZHJhZ09wZXJhdGlvbk1hc2ssIFdURk1vdmUoZHJhZ0lt
YWdlKSk7CisKKyAgICBkaWRTdGFydERyYWcoKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6ZHJhZ0VuZGVkKGNvbnN0IEludFBvaW50JiBjbGllbnRQb3NpdGlvbiwgY29uc3QgSW50
UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ09wZXJhdGlvbj4g
ZHJhZ09wZXJhdGlvbk1hc2spCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAg
ICAgICByZXR1cm47CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RHJhZ0VuZGVkKGNsaWVu
dFBvc2l0aW9uLCBnbG9iYWxQb3NpdGlvbiwgZHJhZ09wZXJhdGlvbk1hc2spKTsKKyAgICBzZXRE
cmFnQ2FyZXRSZWN0KHsgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRQZXJmb3JtRHJh
Z09wZXJhdGlvbihib29sIGhhbmRsZWQpCit7CisgICAgcGFnZUNsaWVudCgpLmRpZFBlcmZvcm1E
cmFnT3BlcmF0aW9uKGhhbmRsZWQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkU3RhcnRE
cmFnKCkKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIGRpc2NhcmRRdWV1ZWRNb3VzZUV2ZW50cygpOworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OkRpZFN0YXJ0RHJhZygpKTsKK30KKyAgICAKK3ZvaWQgV2ViUGFnZVByb3h5OjpkcmFn
Q2FuY2VsbGVkKCkKK3sKKyAgICBpZiAoaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZTo6RHJhZ0NhbmNlbGxlZCgpKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmRpZEVuZERyYWdnaW5nKCkKK3sKKyAgICByZXNldEN1cnJlbnREcmFnSW5mb3JtYXRp
b24oKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlc2V0Q3VycmVudERyYWdJbmZvcm1hdGlv
bigpCit7CisgICAgbV9jdXJyZW50RHJhZ09wZXJhdGlvbiA9IHN0ZDo6bnVsbG9wdDsKKyAgICBt
X2N1cnJlbnREcmFnSGFuZGxpbmdNZXRob2QgPSBEcmFnSGFuZGxpbmdNZXRob2Q6Ok5vbmU7Cisg
ICAgbV9jdXJyZW50RHJhZ0lzT3ZlckZpbGVJbnB1dCA9IGZhbHNlOworICAgIG1fY3VycmVudERy
YWdOdW1iZXJPZkZpbGVzVG9CZUFjY2VwdGVkID0gMDsKKyAgICBzZXREcmFnQ2FyZXRSZWN0KHsg
fSk7Cit9CisKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgIUVOQUJMRShEUkFHX1NVUFBP
UlQpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXREcmFnQ2FyZXRSZWN0KGNvbnN0IEludFJlY3Qm
IGRyYWdDYXJldFJlY3QpCit7CisgICAgbV9jdXJyZW50RHJhZ0NhcmV0UmVjdCA9IGRyYWdDYXJl
dFJlY3Q7Cit9CisKKyNlbmRpZgorCisjZW5kaWYgLy8gRU5BQkxFKERSQUdfU1VQUE9SVCkKKwor
c3RhdGljIGJvb2wgcmVtb3ZlT2xkUmVkdW5kYW50RXZlbnQoRGVxdWU8TmF0aXZlV2ViTW91c2VF
dmVudD4mIHF1ZXVlLCBXZWJFdmVudDo6VHlwZSBpbmNvbWluZ0V2ZW50VHlwZSkKK3sKKyAgICBp
ZiAoaW5jb21pbmdFdmVudFR5cGUgIT0gV2ViRXZlbnQ6Ok1vdXNlTW92ZSAmJiBpbmNvbWluZ0V2
ZW50VHlwZSAhPSBXZWJFdmVudDo6TW91c2VGb3JjZUNoYW5nZWQpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKworICAgIGF1dG8gaXQgPSBxdWV1ZS5yYmVnaW4oKTsKKyAgICBhdXRvIGVuZCA9IHF1
ZXVlLnJlbmQoKTsKKworICAgIC8vIE11c3Qgbm90IHJlbW92ZSB0aGUgZmlyc3QgZXZlbnQgaW4g
dGhlIGRlcXVlLCBzaW5jZSBpdCBpcyBhbHJlYWR5IGJlaW5nIGRpc3BhdGNoZWQuCisgICAgaWYg
KGl0ICE9IGVuZCkKKyAgICAgICAgLS1lbmQ7CisKKyAgICBmb3IgKDsgaXQgIT0gZW5kOyArK2l0
KSB7CisgICAgICAgIGF1dG8gdHlwZSA9IGl0LT50eXBlKCk7CisgICAgICAgIGlmICh0eXBlID09
IGluY29taW5nRXZlbnRUeXBlKSB7CisgICAgICAgICAgICBxdWV1ZS5yZW1vdmUoLS1pdC5iYXNl
KCkpOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHR5
cGUgIT0gV2ViRXZlbnQ6Ok1vdXNlTW92ZSAmJiB0eXBlICE9IFdlYkV2ZW50OjpNb3VzZUZvcmNl
Q2hhbmdlZCkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVNb3VzZUV2ZW50KGNvbnN0IE5hdGl2ZVdlYk1v
dXNlRXZlbnQmIGV2ZW50KQoreworICAgIGlmIChldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6Ok1v
dXNlRG93bikKKyAgICAgICAgbGF1bmNoSW5pdGlhbFByb2Nlc3NJZk5lY2Vzc2FyeSgpOworCisg
ICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyNpZiBFTkFC
TEUoQVNZTkNfU0NST0xMSU5HKSAmJiBQTEFURk9STShDT0NPQSkKKyAgICBpZiAobV9zY3JvbGxp
bmdDb29yZGluYXRvclByb3h5KQorICAgICAgICBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHkt
PmhhbmRsZU1vdXNlRXZlbnQocGxhdGZvcm0oZXZlbnQpKTsKKyNlbmRpZgorCisgICAgLy8gSWYg
d2UgcmVjZWl2ZSBtdWx0aXBsZSBtb3VzZW1vdmUgb3IgbW91c2Vmb3JjZWNoYW5nZWQgZXZlbnRz
IGFuZCB0aGUgbW9zdCByZWNlbnQgbW91c2Vtb3ZlIG9yIG1vdXNlZm9yY2VjaGFuZ2VkIGV2ZW50
CisgICAgLy8gKHJlc3BlY3RpdmVseSkgaGFzIG5vdCB5ZXQgYmVlbiBzZW50IHRvIFdlYlByb2Nl
c3MgZm9yIHByb2Nlc3NpbmcsIHJlbW92ZSB0aGUgcGVuZGluZyBtb3VzZSBldmVudCBhbmQgaW5z
ZXJ0IHRoZSBuZXcKKyAgICAvLyBldmVudCBpbiB0aGUgcXVldWUuCisgICAgYm9vbCBkaWRSZW1v
dmVFdmVudCA9IHJlbW92ZU9sZFJlZHVuZGFudEV2ZW50KG1fbW91c2VFdmVudFF1ZXVlLCBldmVu
dC50eXBlKCkpOworICAgIG1fbW91c2VFdmVudFF1ZXVlLmFwcGVuZChldmVudCk7CisKKyNpZiBM
T0dfRElTQUJMRUQKKyAgICBVTlVTRURfUEFSQU0oZGlkUmVtb3ZlRXZlbnQpOworI2Vsc2UKKyAg
ICBMT0coTW91c2VIYW5kbGluZywgIlVJUHJvY2VzczogJXMgbW91c2UgZXZlbnQgJXMgKHF1ZXVl
IHNpemUgJXp1KSIsIGRpZFJlbW92ZUV2ZW50ID8gInJlcGxhY2VkIiA6ICJlbnF1ZXVlZCIsIHdl
Yk1vdXNlRXZlbnRUeXBlU3RyaW5nKGV2ZW50LnR5cGUoKSksIG1fbW91c2VFdmVudFF1ZXVlLnNp
emUoKSk7CisjZW5kaWYKKworICAgIGlmIChtX21vdXNlRXZlbnRRdWV1ZS5zaXplKCkgPT0gMSkg
Ly8gT3RoZXJ3aXNlLCBjYWxsZWQgZnJvbSBEaWRSZWNlaXZlRXZlbnQgbWVzc2FnZSBoYW5kbGVy
LgorICAgICAgICBwcm9jZXNzTmV4dFF1ZXVlZE1vdXNlRXZlbnQoKTsKK30KKyAgICAKK3ZvaWQg
V2ViUGFnZVByb3h5Ojpwcm9jZXNzTmV4dFF1ZXVlZE1vdXNlRXZlbnQoKQoreworICAgIGlmICgh
aGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKCFtX21v
dXNlRXZlbnRRdWV1ZS5pc0VtcHR5KCkpOworCisgICAgY29uc3QgTmF0aXZlV2ViTW91c2VFdmVu
dCYgZXZlbnQgPSBtX21vdXNlRXZlbnRRdWV1ZS5maXJzdCgpOworCisgICAgaWYgKHBhZ2VDbGll
bnQoKS53aW5kb3dJc0Zyb250V2luZG93VW5kZXJNb3VzZShldmVudCkpCisgICAgICAgIHNldFRv
b2xUaXAoU3RyaW5nKCkpOworCisgICAgV2ViRXZlbnQ6OlR5cGUgZXZlbnRUeXBlID0gZXZlbnQu
dHlwZSgpOworICAgIGlmIChldmVudFR5cGUgPT0gV2ViRXZlbnQ6Ok1vdXNlRG93biB8fCBldmVu
dFR5cGUgPT0gV2ViRXZlbnQ6Ok1vdXNlRm9yY2VDaGFuZ2VkIHx8IGV2ZW50VHlwZSA9PSBXZWJF
dmVudDo6TW91c2VGb3JjZURvd24pCisgICAgICAgIG1fcHJvY2Vzcy0+c3RhcnRSZXNwb25zaXZl
bmVzc1RpbWVyKFdlYlByb2Nlc3NQcm94eTo6VXNlTGF6eVN0b3A6Olllcyk7CisgICAgZWxzZSBp
ZiAoZXZlbnRUeXBlICE9IFdlYkV2ZW50OjpNb3VzZU1vdmUpIHsKKyAgICAgICAgLy8gTk9URTog
VGhpcyBkb2VzIG5vdCBzdGFydCB0aGUgcmVzcG9uc2l2ZW5lc3MgdGltZXIgYmVjYXVzZSBtb3Vz
ZSBtb3ZlIHNob3VsZCBub3QgaW5kaWNhdGUgaW50ZXJhY3Rpb24uCisgICAgICAgIG1fcHJvY2Vz
cy0+c3RhcnRSZXNwb25zaXZlbmVzc1RpbWVyKCk7CisgICAgfQorCisgICAgc3RkOjpvcHRpb25h
bDxWZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPj4gc2FuZGJveEV4dGVuc2lvbnM7CisK
KyNpZiBQTEFURk9STShNQUMpCisgICAgYm9vbCBldmVudE1heVN0YXJ0RHJhZyA9ICFtX2N1cnJl
bnREcmFnT3BlcmF0aW9uICYmIGV2ZW50VHlwZSA9PSBXZWJFdmVudDo6TW91c2VNb3ZlICYmIGV2
ZW50LmJ1dHRvbigpICE9IFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbjo6Tm9CdXR0b247CisgICAgaWYg
KGV2ZW50TWF5U3RhcnREcmFnKQorICAgICAgICBzYW5kYm94RXh0ZW5zaW9ucyA9IFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZXNGb3JNYWNoTG9va3VwKHsgImNvbS5hcHBsZS5pY29uc2Vy
dmljZXMiX3MsICJjb20uYXBwbGUuaWNvbnNlcnZpY2VzLnN0b3JlIl9zIH0sIHN0ZDo6bnVsbG9w
dCk7CisjZW5kaWYKKyAgICAKKyAgICBMT0coTW91c2VIYW5kbGluZywgIlVJUHJvY2Vzczogc2Vu
dCBtb3VzZSBldmVudCAlcyAocXVldWUgc2l6ZSAlenUpIiwgd2ViTW91c2VFdmVudFR5cGVTdHJp
bmcoZXZlbnRUeXBlKSwgbV9tb3VzZUV2ZW50UXVldWUuc2l6ZSgpKTsKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlOjpNb3VzZUV2ZW50KGV2ZW50LCBzYW5kYm94RXh0ZW5zaW9ucykpOworfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6ZG9BZnRlclByb2Nlc3NpbmdBbGxQZW5kaW5nTW91c2VFdmVu
dHMoV1RGOjpGdW5jdGlvbjx2b2lkICgpPiYmIGFjdGlvbikKK3sKKyAgICBpZiAoIWlzUHJvY2Vz
c2luZ01vdXNlRXZlbnRzKCkpIHsKKyAgICAgICAgYWN0aW9uKCk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBtX2NhbGxiYWNrSGFuZGxlcnNBZnRlclByb2Nlc3NpbmdQZW5kaW5nTW91
c2VFdmVudHMuYXBwZW5kKFdURk1vdmUoYWN0aW9uKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpkaWRGaW5pc2hQcm9jZXNzaW5nQWxsUGVuZGluZ01vdXNlRXZlbnRzKCkKK3sKKyAgICBmbHVz
aFBlbmRpbmdNb3VzZUV2ZW50Q2FsbGJhY2tzKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpm
bHVzaFBlbmRpbmdNb3VzZUV2ZW50Q2FsbGJhY2tzKCkKK3sKKyAgICBmb3IgKGF1dG8mIGNhbGxi
YWNrIDogbV9jYWxsYmFja0hhbmRsZXJzQWZ0ZXJQcm9jZXNzaW5nUGVuZGluZ01vdXNlRXZlbnRz
KQorICAgICAgICBjYWxsYmFjaygpOworCisgICAgbV9jYWxsYmFja0hhbmRsZXJzQWZ0ZXJQcm9j
ZXNzaW5nUGVuZGluZ01vdXNlRXZlbnRzLmNsZWFyKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpkaXNwYXRjaFdoZWVsRXZlbnRXaXRob3V0U2Nyb2xsaW5nKGNvbnN0IFdlYldoZWVsRXZlbnQm
IGV2ZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6RGlzcGF0Y2hX
aGVlbEV2ZW50V2l0aG91dFNjcm9sbGluZyhldmVudCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRs
ZXIpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgTmF0
aXZlV2ViV2hlZWxFdmVudCYgZXZlbnQpCit7CisjaWYgRU5BQkxFKEFTWU5DX1NDUk9MTElORykg
JiYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eSAm
JiBtX3Njcm9sbGluZ0Nvb3JkaW5hdG9yUHJveHktPmhhbmRsZVdoZWVsRXZlbnQocGxhdGZvcm0o
ZXZlbnQpKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisKKyAgICBpZiAoIWhhc1J1bm5pbmdQ
cm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGNsb3NlT3ZlcmxheWVkVmlld3MoKTsK
KworICAgIGlmICh3aGVlbEV2ZW50Q29hbGVzY2VyKCkuc2hvdWxkRGlzcGF0Y2hFdmVudChldmVu
dCkpIHsKKyAgICAgICAgYXV0byBldmVudCA9IHdoZWVsRXZlbnRDb2FsZXNjZXIoKS5uZXh0RXZl
bnRUb0Rpc3BhdGNoKCk7CisgICAgICAgIHNlbmRXaGVlbEV2ZW50KCpldmVudCk7CisgICAgfQor
fQorCisjaWYgSEFWRShDVkRJU1BMQVlMSU5LKQordm9pZCBXZWJQYWdlUHJveHk6OndoZWVsRXZl
bnRIeXN0ZXJlc2lzVXBkYXRlZChQQUw6Okh5c3RlcmVzaXNTdGF0ZSBzdGF0ZSkKK3sKKyAgICBp
ZiAoIW1fcHJvY2Vzcy0+aGFzQ29ubmVjdGlvbigpIHx8ICFtX2Rpc3BsYXlJRCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgYm9vbCB3YW50c0Z1bGxTcGVlZFVwZGF0ZXMgPSBzdGF0ZSA9PSBQQUw6
Okh5c3RlcmVzaXNTdGF0ZTo6U3RhcnRlZDsKKyAgICBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5z
ZXREaXNwbGF5TGlua0ZvckRpc3BsYXlXYW50c0Z1bGxTcGVlZFVwZGF0ZXMoKm1fcHJvY2Vzcy0+
Y29ubmVjdGlvbigpLCAqbV9kaXNwbGF5SUQsIHdhbnRzRnVsbFNwZWVkVXBkYXRlcyk7Cit9Cisj
ZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZVdoZWVsRXZlbnRBY3Rpdml0eUFmdGVy
UHJvY2Vzc1N3YXAoKQoreworI2lmIEhBVkUoQ1ZESVNQTEFZTElOSykKKyAgICBpZiAobV93aGVl
bEV2ZW50QWN0aXZpdHlIeXN0ZXJlc2lzLnN0YXRlKCkgPT0gUEFMOjpIeXN0ZXJlc2lzU3RhdGU6
OlN0YXJ0ZWQpIHsKKyAgICAgICAgaWYgKCFtX3Byb2Nlc3MtPmhhc0Nvbm5lY3Rpb24oKSB8fCAh
bV9kaXNwbGF5SUQpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgYm9vbCB3YW50c0Z1
bGxTcGVlZFVwZGF0ZXMgPSB0cnVlOworICAgICAgICBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5z
ZXREaXNwbGF5TGlua0ZvckRpc3BsYXlXYW50c0Z1bGxTcGVlZFVwZGF0ZXMoKm1fcHJvY2Vzcy0+
Y29ubmVjdGlvbigpLCAqbV9kaXNwbGF5SUQsIHdhbnRzRnVsbFNwZWVkVXBkYXRlcyk7CisgICAg
fQorI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZW5kV2hlZWxFdmVudChjb25zdCBX
ZWJXaGVlbEV2ZW50JiBldmVudCkKK3sKKyNpZiBIQVZFKENWRElTUExBWUxJTkspCisgICAgbV93
aGVlbEV2ZW50QWN0aXZpdHlIeXN0ZXJlc2lzLmltcHVsc2UoKTsKKyNlbmRpZgorCisgICAgc2Vu
ZCgKKyAgICAgICAgTWVzc2FnZXM6OkV2ZW50RGlzcGF0Y2hlcjo6V2hlZWxFdmVudCgKKyAgICAg
ICAgICAgIG1fd2ViUGFnZUlELAorICAgICAgICAgICAgZXZlbnQsCisgICAgICAgICAgICBzaG91
bGRVc2VJbXBsaWNpdFJ1YmJlckJhbmRDb250cm9sKCkgPyAhbV9iYWNrRm9yd2FyZExpc3QtPmJh
Y2tJdGVtKCkgOiBydWJiZXJCYW5kc0F0TGVmdCgpLAorICAgICAgICAgICAgc2hvdWxkVXNlSW1w
bGljaXRSdWJiZXJCYW5kQ29udHJvbCgpID8gIW1fYmFja0ZvcndhcmRMaXN0LT5mb3J3YXJkSXRl
bSgpIDogcnViYmVyQmFuZHNBdFJpZ2h0KCksCisgICAgICAgICAgICBydWJiZXJCYW5kc0F0VG9w
KCksCisgICAgICAgICAgICBydWJiZXJCYW5kc0F0Qm90dG9tKCkKKyAgICAgICAgKSwgMCk7CisK
KyAgICAvLyBNYW51YWxseSBwaW5nIHRoZSB3ZWIgcHJvY2VzcyB0byBjaGVjayBmb3IgcmVzcG9u
c2l2ZW5lc3Mgc2luY2Ugb3VyIHdoZWVsCisgICAgLy8gZXZlbnQgd2lsbCBkaXNwYXRjaCB0byBh
IG5vbi1tYWluIHRocmVhZCwgd2hpY2ggYWx3YXlzIHJlc3BvbmRzLgorICAgIG1fcHJvY2Vzcy0+
aXNSZXNwb25zaXZlV2l0aExhenlTdG9wKCk7Cit9CisKK1dlYldoZWVsRXZlbnRDb2FsZXNjZXIm
IFdlYlBhZ2VQcm94eTo6d2hlZWxFdmVudENvYWxlc2NlcigpCit7CisgICAgaWYgKCFtX3doZWVs
RXZlbnRDb2FsZXNjZXIpIHsKKyAgICAgICAgbV93aGVlbEV2ZW50Q29hbGVzY2VyID0gbWFrZVVu
aXF1ZTxXZWJXaGVlbEV2ZW50Q29hbGVzY2VyPigpOworICAgICAgICBtX3doZWVsRXZlbnRDb2Fs
ZXNjZXItPnNldFNob3VsZENvYWxlc2NlRXZlbnRzRHVyaW5nRGVjZWxlcmF0aW9uKHNob3VsZENv
YWxlc2NlV2hlZWxFdmVudHNEdXJpbmdEZWNlbGVyYXRpb24oKSk7CisgICAgfQorCisgICAgcmV0
dXJuICptX3doZWVsRXZlbnRDb2FsZXNjZXI7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpzaG91
bGRDb2FsZXNjZVdoZWVsRXZlbnRzRHVyaW5nRGVjZWxlcmF0aW9uKCkgY29uc3QKK3sKKyNpZiBI
QVZFKENWRElTUExBWUxJTkspCisgICAgaWYgKCFtX2Rpc3BsYXlJRCkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgYXV0byBmcmFtZXNQZXJTZWNvbmQgPSBtX3Byb2Nlc3MtPnByb2Nlc3NQ
b29sKCkubm9taW5hbEZyYW1lc1BlclNlY29uZEZvckRpc3BsYXkoKm1fZGlzcGxheUlEKTsKKyAg
ICByZXR1cm4gZnJhbWVzUGVyU2Vjb25kID4gV2ViQ29yZTo6RnVsbFNwZWVkRnJhbWVzUGVyU2Vj
b25kOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKworYm9vbCBXZWJQYWdl
UHJveHk6Omhhc1F1ZXVlZEtleUV2ZW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gIW1fa2V5RXZl
bnRRdWV1ZS5pc0VtcHR5KCk7Cit9CisKK2NvbnN0IE5hdGl2ZVdlYktleWJvYXJkRXZlbnQmIFdl
YlBhZ2VQcm94eTo6Zmlyc3RRdWV1ZWRLZXlFdmVudCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
a2V5RXZlbnRRdWV1ZS5maXJzdCgpOworfQorCitib29sIFdlYlBhZ2VQcm94eTo6aGFuZGxlS2V5
Ym9hcmRFdmVudChjb25zdCBOYXRpdmVXZWJLZXlib2FyZEV2ZW50JiBldmVudCkKK3sKKyAgICBp
ZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAKKyAg
ICBMT0coS2V5SGFuZGxpbmcsICJXZWJQYWdlUHJveHk6OmhhbmRsZUtleWJvYXJkRXZlbnQ6ICVz
Iiwgd2ViS2V5Ym9hcmRFdmVudFR5cGVTdHJpbmcoZXZlbnQudHlwZSgpKSk7CisKKyAgICBtX2tl
eUV2ZW50UXVldWUuYXBwZW5kKGV2ZW50KTsKKworICAgIG1fcHJvY2Vzcy0+c3RhcnRSZXNwb25z
aXZlbmVzc1RpbWVyKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6S2V5RG93biA/IFdlYlByb2Nl
c3NQcm94eTo6VXNlTGF6eVN0b3A6OlllcyA6IFdlYlByb2Nlc3NQcm94eTo6VXNlTGF6eVN0b3A6
Ok5vKTsKKworICAgIGlmIChtX2tleUV2ZW50UXVldWUuc2l6ZSgpID09IDEpIHsgLy8gT3RoZXJ3
aXNlLCBzZW50IGZyb20gRGlkUmVjZWl2ZUV2ZW50IG1lc3NhZ2UgaGFuZGxlci4KKyAgICAgICAg
TE9HKEtleUhhbmRsaW5nLCAiIFVJIHByb2Nlc3M6IHNlbnQga2V5RXZlbnQgZnJvbSBoYW5kbGVL
ZXlib2FyZEV2ZW50Iik7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OktleUV2ZW50
KGV2ZW50KSk7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK1dlYlByZWZlcmVuY2Vz
U3RvcmUgV2ViUGFnZVByb3h5OjpwcmVmZXJlbmNlc1N0b3JlKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbV9wcmVmZXJlbmNlcy0+c3RvcmUoKTsKK30KKworI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVH
SU5fQVBJKQordm9pZCBXZWJQYWdlUHJveHk6OmZpbmRQbHVnaW4oY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSwgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVVUkxTdHJp
bmcsIGNvbnN0IFN0cmluZyYgcGFnZVVSTFN0cmluZywgYm9vbCBhbGxvd09ubHlBcHBsaWNhdGlv
blBsdWdpbnMsIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZpbmRQbHVnaW46OkRlbGF5ZWRSZXBs
eSYmIHJlcGx5KQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGll
bnQoKSk7CisKKyAgICBNRVNTQUdFX0NIRUNLX1VSTChtX3Byb2Nlc3MsIHVybFN0cmluZyk7CisK
KyAgICBVUkwgcGx1Z2luVVJMID0gVVJMIHsgVVJMKCksIHVybFN0cmluZyB9OworICAgIFN0cmlu
ZyBuZXdNaW1lVHlwZSA9IG1pbWVUeXBlLmNvbnZlcnRUb0FTQ0lJTG93ZXJjYXNlKCk7CisKKyAg
ICBQbHVnaW5EYXRhOjpBbGxvd2VkUGx1Z2luVHlwZXMgYWxsb3dlZFBsdWdpblR5cGVzID0gYWxs
b3dPbmx5QXBwbGljYXRpb25QbHVnaW5zID8gUGx1Z2luRGF0YTo6T25seUFwcGxpY2F0aW9uUGx1
Z2lucyA6IFBsdWdpbkRhdGE6OkFsbFBsdWdpbnM7CisKKyAgICBVUkwgcGFnZVVSTCA9IFVSTCB7
IFVSTCgpLCBwYWdlVVJMU3RyaW5nIH07CisgICAgaWYgKCFtX3Byb2Nlc3MtPnByb2Nlc3NQb29s
KCkucGx1Z2luSW5mb1N0b3JlKCkuaXNTdXBwb3J0ZWRQbHVnaW4obWltZVR5cGUsIHBsdWdpblVS
TCwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkwpKSB7CisgICAgICAgIHJlcGx5KDAsIG5ld01pbWVU
eXBlLCBQbHVnaW5Nb2R1bGVMb2FkTm9ybWFsbHksIHsgfSwgdHJ1ZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBQbHVnaW5Nb2R1bGVJbmZvIHBsdWdpbiA9IG1fcHJvY2Vzcy0+cHJv
Y2Vzc1Bvb2woKS5wbHVnaW5JbmZvU3RvcmUoKS5maW5kUGx1Z2luKG5ld01pbWVUeXBlLCBwbHVn
aW5VUkwsIGFsbG93ZWRQbHVnaW5UeXBlcyk7CisgICAgaWYgKCFwbHVnaW4ucGF0aCkgeworICAg
ICAgICByZXBseSgwLCBuZXdNaW1lVHlwZSwgUGx1Z2luTW9kdWxlTG9hZE5vcm1hbGx5LCB7IH0s
IGZhbHNlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHVpbnQzMl90IHBsdWdpbkxv
YWRQb2xpY3kgPSBQbHVnaW5JbmZvU3RvcmU6OmRlZmF1bHRMb2FkUG9saWN5Rm9yUGx1Z2luKHBs
dWdpbik7CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBhdXRvIHBsdWdpbkluZm9ybWF0aW9u
ID0gY3JlYXRlUGx1Z2luSW5mb3JtYXRpb25EaWN0aW9uYXJ5KHBsdWdpbiwgZnJhbWVVUkxTdHJp
bmcsIFN0cmluZygpLCBwYWdlVVJMU3RyaW5nLCBTdHJpbmcoKSwgU3RyaW5nKCkpOworI2VuZGlm
CisKKyAgICBhdXRvIGZpbmRQbHVnaW5Db21wbGV0aW9uID0gW3JlcGx5ID0gV1RGTW92ZShyZXBs
eSksIG5ld01pbWVUeXBlID0gV1RGTW92ZShuZXdNaW1lVHlwZSksIHBsdWdpbiA9IFdURk1vdmUo
cGx1Z2luKV0gKHVpbnQzMl90IHBsdWdpbkxvYWRQb2xpY3ksIGNvbnN0IFN0cmluZyYgdW5hdmFp
bGFiaWxpdHlEZXNjcmlwdGlvbikgbXV0YWJsZSB7CisgICAgICAgIFBsdWdpblByb2Nlc3NTYW5k
Ym94UG9saWN5IHBsdWdpblByb2Nlc3NTYW5kYm94UG9saWN5ID0gUGx1Z2luUHJvY2Vzc1NhbmRi
b3hQb2xpY3k6Ok5vcm1hbDsKKyAgICAgICAgc3dpdGNoIChwbHVnaW5Mb2FkUG9saWN5KSB7Cisg
ICAgICAgIGNhc2UgUGx1Z2luTW9kdWxlTG9hZE5vcm1hbGx5OgorICAgICAgICAgICAgcGx1Z2lu
UHJvY2Vzc1NhbmRib3hQb2xpY3kgPSBQbHVnaW5Qcm9jZXNzU2FuZGJveFBvbGljeTo6Tm9ybWFs
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUGx1Z2luTW9kdWxlTG9hZFVuc2Fu
ZGJveGVkOgorICAgICAgICAgICAgcGx1Z2luUHJvY2Vzc1NhbmRib3hQb2xpY3kgPSBQbHVnaW5Q
cm9jZXNzU2FuZGJveFBvbGljeTo6VW5zYW5kYm94ZWQ7CisgICAgICAgICAgICBicmVhazsKKwor
ICAgICAgICBjYXNlIFBsdWdpbk1vZHVsZUJsb2NrZWRGb3JTZWN1cml0eToKKyAgICAgICAgY2Fz
ZSBQbHVnaW5Nb2R1bGVCbG9ja2VkRm9yQ29tcGF0aWJpbGl0eToKKyAgICAgICAgICAgIHJlcGx5
KDAsIG5ld01pbWVUeXBlLCBwbHVnaW5Mb2FkUG9saWN5LCB1bmF2YWlsYWJpbGl0eURlc2NyaXB0
aW9uLCBmYWxzZSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBy
ZXBseShQbHVnaW5Qcm9jZXNzTWFuYWdlcjo6c2luZ2xldG9uKCkucGx1Z2luUHJvY2Vzc1Rva2Vu
KHBsdWdpbiwgcGx1Z2luUHJvY2Vzc1NhbmRib3hQb2xpY3kpLCBuZXdNaW1lVHlwZSwgcGx1Z2lu
TG9hZFBvbGljeSwgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbiwgZmFsc2UpOworICAgIH07CisK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRlY2lkZVBvbGlj
eUZvclBsdWdpbkxvYWQoKnRoaXMsIHN0YXRpY19jYXN0PFBsdWdpbk1vZHVsZUxvYWRQb2xpY3k+
KHBsdWdpbkxvYWRQb2xpY3kpLCBwbHVnaW5JbmZvcm1hdGlvbi5nZXQoKSwgV1RGTW92ZShmaW5k
UGx1Z2luQ29tcGxldGlvbikpOworI2Vsc2UKKyAgICBmaW5kUGx1Z2luQ29tcGxldGlvbihwbHVn
aW5Mb2FkUG9saWN5LCB7IH0pOworI2VuZGlmCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoTkVUU0NB
UEVfUExVR0lOX0FQSSkKKworI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCisKK3N0YXRpYyBUcmFj
a2luZ1R5cGUgbWVyZ2VUcmFja2luZ1R5cGVzKFRyYWNraW5nVHlwZSBhLCBUcmFja2luZ1R5cGUg
YikKK3sKKyAgICBpZiAoc3RhdGljX2Nhc3Q8dWludHB0cl90PihiKSA+IHN0YXRpY19jYXN0PHVp
bnRwdHJfdD4oYSkpCisgICAgICAgIHJldHVybiBiOworICAgIHJldHVybiBhOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6dXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGNvbnN0IFdlYlRvdWNoRXZl
bnQmIHRvdWNoU3RhcnRFdmVudCkKK3sKKyNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBQ
TEFURk9STShDT0NPQSkKKyAgICBjb25zdCBFdmVudE5hbWVzJiBuYW1lcyA9IGV2ZW50TmFtZXMo
KTsKKyAgICBmb3IgKGF1dG8mIHRvdWNoUG9pbnQgOiB0b3VjaFN0YXJ0RXZlbnQudG91Y2hQb2lu
dHMoKSkgeworICAgICAgICBJbnRQb2ludCBsb2NhdGlvbiA9IHRvdWNoUG9pbnQubG9jYXRpb24o
KTsKKyAgICAgICAgYXV0byB1cGRhdGVUcmFja2luZ1R5cGUgPSBbdGhpcywgbG9jYXRpb25dKFRy
YWNraW5nVHlwZSYgdHJhY2tpbmdUeXBlLCBjb25zdCBBdG9tU3RyaW5nJiBldmVudE5hbWUpIHsK
KyAgICAgICAgICAgIGlmICh0cmFja2luZ1R5cGUgPT0gVHJhY2tpbmdUeXBlOjpTeW5jaHJvbm91
cykKKyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIFRyYWNraW5nVHlwZSB0
cmFja2luZ1R5cGVGb3JMb2NhdGlvbiA9IG1fc2Nyb2xsaW5nQ29vcmRpbmF0b3JQcm94eS0+ZXZl
bnRUcmFja2luZ1R5cGVGb3JQb2ludChldmVudE5hbWUsIGxvY2F0aW9uKTsKKworICAgICAgICAg
ICAgdHJhY2tpbmdUeXBlID0gbWVyZ2VUcmFja2luZ1R5cGVzKHRyYWNraW5nVHlwZSwgdHJhY2tp
bmdUeXBlRm9yTG9jYXRpb24pOworICAgICAgICB9OworICAgICAgICB1cGRhdGVUcmFja2luZ1R5
cGUobV90b3VjaEFuZFBvaW50ZXJFdmVudFRyYWNraW5nLnRvdWNoRm9yY2VDaGFuZ2VkVHJhY2tp
bmcsIG5hbWVzLnRvdWNoZm9yY2VjaGFuZ2VFdmVudCk7CisgICAgICAgIHVwZGF0ZVRyYWNraW5n
VHlwZShtX3RvdWNoQW5kUG9pbnRlckV2ZW50VHJhY2tpbmcudG91Y2hTdGFydFRyYWNraW5nLCBu
YW1lcy50b3VjaHN0YXJ0RXZlbnQpOworICAgICAgICB1cGRhdGVUcmFja2luZ1R5cGUobV90b3Vj
aEFuZFBvaW50ZXJFdmVudFRyYWNraW5nLnRvdWNoTW92ZVRyYWNraW5nLCBuYW1lcy50b3VjaG1v
dmVFdmVudCk7CisgICAgICAgIHVwZGF0ZVRyYWNraW5nVHlwZShtX3RvdWNoQW5kUG9pbnRlckV2
ZW50VHJhY2tpbmcudG91Y2hFbmRUcmFja2luZywgbmFtZXMudG91Y2hlbmRFdmVudCk7CisgICAg
ICAgIHVwZGF0ZVRyYWNraW5nVHlwZShtX3RvdWNoQW5kUG9pbnRlckV2ZW50VHJhY2tpbmcudG91
Y2hTdGFydFRyYWNraW5nLCBuYW1lcy5wb2ludGVyb3ZlckV2ZW50KTsKKyAgICAgICAgdXBkYXRl
VHJhY2tpbmdUeXBlKG1fdG91Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaFN0YXJ0VHJh
Y2tpbmcsIG5hbWVzLnBvaW50ZXJlbnRlckV2ZW50KTsKKyAgICAgICAgdXBkYXRlVHJhY2tpbmdU
eXBlKG1fdG91Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaFN0YXJ0VHJhY2tpbmcsIG5h
bWVzLnBvaW50ZXJkb3duRXZlbnQpOworICAgICAgICB1cGRhdGVUcmFja2luZ1R5cGUobV90b3Vj
aEFuZFBvaW50ZXJFdmVudFRyYWNraW5nLnRvdWNoTW92ZVRyYWNraW5nLCBuYW1lcy5wb2ludGVy
bW92ZUV2ZW50KTsKKyAgICAgICAgdXBkYXRlVHJhY2tpbmdUeXBlKG1fdG91Y2hBbmRQb2ludGVy
RXZlbnRUcmFja2luZy50b3VjaEVuZFRyYWNraW5nLCBuYW1lcy5wb2ludGVydXBFdmVudCk7Cisg
ICAgICAgIHVwZGF0ZVRyYWNraW5nVHlwZShtX3RvdWNoQW5kUG9pbnRlckV2ZW50VHJhY2tpbmcu
dG91Y2hFbmRUcmFja2luZywgbmFtZXMucG9pbnRlcm91dEV2ZW50KTsKKyAgICAgICAgdXBkYXRl
VHJhY2tpbmdUeXBlKG1fdG91Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaEVuZFRyYWNr
aW5nLCBuYW1lcy5wb2ludGVybGVhdmVFdmVudCk7CisgICAgICAgIHVwZGF0ZVRyYWNraW5nVHlw
ZShtX3RvdWNoQW5kUG9pbnRlckV2ZW50VHJhY2tpbmcudG91Y2hTdGFydFRyYWNraW5nLCBuYW1l
cy5tb3VzZWRvd25FdmVudCk7CisgICAgICAgIHVwZGF0ZVRyYWNraW5nVHlwZShtX3RvdWNoQW5k
UG9pbnRlckV2ZW50VHJhY2tpbmcudG91Y2hNb3ZlVHJhY2tpbmcsIG5hbWVzLm1vdXNlbW92ZUV2
ZW50KTsKKyAgICAgICAgdXBkYXRlVHJhY2tpbmdUeXBlKG1fdG91Y2hBbmRQb2ludGVyRXZlbnRU
cmFja2luZy50b3VjaEVuZFRyYWNraW5nLCBuYW1lcy5tb3VzZXVwRXZlbnQpOworICAgIH0KKyNl
bHNlCisgICAgVU5VU0VEX1BBUkFNKHRvdWNoU3RhcnRFdmVudCk7CisgICAgbV90b3VjaEFuZFBv
aW50ZXJFdmVudFRyYWNraW5nLnRvdWNoRm9yY2VDaGFuZ2VkVHJhY2tpbmcgPSBUcmFja2luZ1R5
cGU6OlN5bmNocm9ub3VzOworICAgIG1fdG91Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3Vj
aFN0YXJ0VHJhY2tpbmcgPSBUcmFja2luZ1R5cGU6OlN5bmNocm9ub3VzOworICAgIG1fdG91Y2hB
bmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaE1vdmVUcmFja2luZyA9IFRyYWNraW5nVHlwZTo6
U3luY2hyb25vdXM7CisgICAgbV90b3VjaEFuZFBvaW50ZXJFdmVudFRyYWNraW5nLnRvdWNoRW5k
VHJhY2tpbmcgPSBUcmFja2luZ1R5cGU6OlN5bmNocm9ub3VzOworI2VuZGlmIC8vIEVOQUJMRShB
U1lOQ19TQ1JPTExJTkcpCit9CisKK1RyYWNraW5nVHlwZSBXZWJQYWdlUHJveHk6OnRvdWNoRXZl
bnRUcmFja2luZ1R5cGUoY29uc3QgV2ViVG91Y2hFdmVudCYgdG91Y2hTdGFydEV2ZW50KSBjb25z
dAoreworICAgIC8vIFdlIHNlbmQgYWxsIGV2ZW50cyBpZiBhbnkgdHlwZSBpcyBuZWVkZWQsIHdl
IGp1c3QgZG8gaXQgYXN5bmNocm9ub3VzbHkgZm9yIHRoZSB0eXBlcyB0aGF0IGFyZSBub3QgdHJh
Y2tlZC4KKyAgICAvLworICAgIC8vIFRvdWNoIGV2ZW50cyBkZWZpbmUgYSBzZXF1ZW5jZSB3aXRo
IHN0cm9uZyBkZXBlbmRlbmNpZXMuIEZvciBleGFtcGxlLCB3ZSBjYW4gZXhwZWN0CisgICAgLy8g
YSBUb3VjaE1vdmUgdG8gb25seSBhcHBlYXIgYWZ0ZXIgYSBUb3VjaFN0YXJ0LCBhbmQgdGhlIGlk
cyBvZiB0aGUgdG91Y2ggcG9pbnRzIGlzIGNvbnNpc3RlbnQgYmV0d2VlbgorICAgIC8vIHRoZSB0
d28uCisgICAgLy8KKyAgICAvLyBXZWJDb3JlIHNob3VsZCBub3QgaGF2ZSB0byBzZXQgdXAgaXRz
IHN0YXRlIGNvcnJlY3RseSBhZnRlciBzb21lIGV2ZW50cyB3ZXJlIGRpc21pc3NlZC4KKyAgICAv
LyBGb3IgZXhhbXBsZSwgd2UgZG9uJ3Qgd2FudCB0byBzZW5kIGEgVG91Y2hNb3ZlZCB3aXRob3V0
IGEgVG91Y2hQcmVzc2VkLgorICAgIC8vIFdlIHNlbmQgZXZlcnl0aGluZywgV2ViQ29yZSB1cGRh
dGVzIGl0cyBpbnRlcm5hbCBzdGF0ZSBhbmQgZGlzcGF0Y2ggd2hhdCBpcyBuZWVkZWQgdG8gdGhl
IHBhZ2UuCisgICAgVHJhY2tpbmdUeXBlIGdsb2JhbFRyYWNraW5nVHlwZSA9IG1fdG91Y2hBbmRQ
b2ludGVyRXZlbnRUcmFja2luZy5pc1RyYWNraW5nQW55dGhpbmcoKSA/IFRyYWNraW5nVHlwZTo6
QXN5bmNocm9ub3VzIDogVHJhY2tpbmdUeXBlOjpOb3RUcmFja2luZzsKKworICAgIGdsb2JhbFRy
YWNraW5nVHlwZSA9IG1lcmdlVHJhY2tpbmdUeXBlcyhnbG9iYWxUcmFja2luZ1R5cGUsIG1fdG91
Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaEZvcmNlQ2hhbmdlZFRyYWNraW5nKTsKKyAg
ICBmb3IgKGF1dG8mIHRvdWNoUG9pbnQgOiB0b3VjaFN0YXJ0RXZlbnQudG91Y2hQb2ludHMoKSkg
eworICAgICAgICBzd2l0Y2ggKHRvdWNoUG9pbnQuc3RhdGUoKSkgeworICAgICAgICBjYXNlIFdl
YlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hSZWxlYXNlZDoKKyAgICAgICAgICAgIGdsb2JhbFRy
YWNraW5nVHlwZSA9IG1lcmdlVHJhY2tpbmdUeXBlcyhnbG9iYWxUcmFja2luZ1R5cGUsIG1fdG91
Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy50b3VjaEVuZFRyYWNraW5nKTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQcmVzc2Vk
OgorICAgICAgICAgICAgZ2xvYmFsVHJhY2tpbmdUeXBlID0gbWVyZ2VUcmFja2luZ1R5cGVzKGds
b2JhbFRyYWNraW5nVHlwZSwgbV90b3VjaEFuZFBvaW50ZXJFdmVudFRyYWNraW5nLnRvdWNoU3Rh
cnRUcmFja2luZyk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBXZWJQbGF0Zm9y
bVRvdWNoUG9pbnQ6OlRvdWNoTW92ZWQ6CisgICAgICAgIGNhc2UgV2ViUGxhdGZvcm1Ub3VjaFBv
aW50OjpUb3VjaFN0YXRpb25hcnk6CisgICAgICAgICAgICBnbG9iYWxUcmFja2luZ1R5cGUgPSBt
ZXJnZVRyYWNraW5nVHlwZXMoZ2xvYmFsVHJhY2tpbmdUeXBlLCBtX3RvdWNoQW5kUG9pbnRlckV2
ZW50VHJhY2tpbmcudG91Y2hNb3ZlVHJhY2tpbmcpOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgV2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaENhbmNlbGxlZDoKKyAgICAgICAg
ICAgIGdsb2JhbFRyYWNraW5nVHlwZSA9IG1lcmdlVHJhY2tpbmdUeXBlcyhnbG9iYWxUcmFja2lu
Z1R5cGUsIFRyYWNraW5nVHlwZTo6QXN5bmNocm9ub3VzKTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIGdsb2JhbFRyYWNraW5nVHlwZTsKK30KKwor
I2VuZGlmCisKKyNpZiBFTkFCTEUoTUFDX0dFU1RVUkVfRVZFTlRTKQordm9pZCBXZWJQYWdlUHJv
eHk6OmhhbmRsZUdlc3R1cmVFdmVudChjb25zdCBOYXRpdmVXZWJHZXN0dXJlRXZlbnQmIGV2ZW50
KQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV9nZXN0dXJlRXZlbnRRdWV1ZS5hcHBlbmQoZXZlbnQpOworICAgIC8vIEZJWE1FOiBDb25z
aWRlciBkb2luZyBzb21lIGNvYWxlc2NpbmcgaGVyZS4KKworICAgIG1fcHJvY2Vzcy0+c3RhcnRS
ZXNwb25zaXZlbmVzc1RpbWVyKChldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6Okdlc3R1cmVTdGFy
dCB8fCBldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6Okdlc3R1cmVDaGFuZ2UpID8gV2ViUHJvY2Vz
c1Byb3h5OjpVc2VMYXp5U3RvcDo6WWVzIDogV2ViUHJvY2Vzc1Byb3h5OjpVc2VMYXp5U3RvcDo6
Tm8pOworCisgICAgc2VuZChNZXNzYWdlczo6RXZlbnREaXNwYXRjaGVyOjpHZXN0dXJlRXZlbnQo
bV93ZWJQYWdlSUQsIGV2ZW50KSwgMCk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShJT1NfVE9V
Q0hfRVZFTlRTKQordm9pZCBXZWJQYWdlUHJveHk6OmhhbmRsZVByZXZlbnRhYmxlVG91Y2hFdmVu
dChOYXRpdmVXZWJUb3VjaEV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9j
ZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIFRyYWNlU2NvcGUgc2NvcGUoU3luY1RvdWNo
RXZlbnRTdGFydCwgU3luY1RvdWNoRXZlbnRFbmQpOworCisgICAgdXBkYXRlVG91Y2hFdmVudFRy
YWNraW5nKGV2ZW50KTsKKworICAgIGF1dG8gaGFuZGxlQWxsVG91Y2hQb2ludHNSZWxlYXNlZCA9
IFdURjo6bWFrZVNjb3BlRXhpdChbJl0geworICAgICAgICBpZiAoIWV2ZW50LmFsbFRvdWNoUG9p
bnRzQXJlUmVsZWFzZWQoKSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICBtX3RvdWNo
QW5kUG9pbnRlckV2ZW50VHJhY2tpbmcucmVzZXQoKTsKKyAgICAgICAgZGlkUmVsZWFzZUFsbFRv
dWNoUG9pbnRzKCk7CisgICAgfSk7CisKKyAgICBib29sIGlzVG91Y2hTdGFydCA9IGV2ZW50LnR5
cGUoKSA9PSBXZWJFdmVudDo6VG91Y2hTdGFydDsKKyAgICBib29sIGlzVG91Y2hFbmQgPSBldmVu
dC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoRW5kOworCisgICAgVHJhY2tpbmdUeXBlIHRvdWNo
RXZlbnRzVHJhY2tpbmdUeXBlID0gdG91Y2hFdmVudFRyYWNraW5nVHlwZShldmVudCk7CisgICAg
aWYgKHRvdWNoRXZlbnRzVHJhY2tpbmdUeXBlID09IFRyYWNraW5nVHlwZTo6Tm90VHJhY2tpbmcp
IHsKKyAgICAgICAgaWYgKGlzVG91Y2hTdGFydCkKKyAgICAgICAgICAgIHBhZ2VDbGllbnQoKS5k
b25lRGVmZXJyaW5nVG91Y2hTdGFydChmYWxzZSk7CisgICAgICAgIGlmIChpc1RvdWNoRW5kKQor
ICAgICAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdUb3VjaEVuZChmYWxzZSk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAodG91Y2hFdmVudHNUcmFja2luZ1R5cGUg
PT0gVHJhY2tpbmdUeXBlOjpBc3luY2hyb25vdXMpIHsKKyAgICAgICAgLy8gV2UgY2FuIGVuZCB1
cCBoZXJlIGlmIGEgbmF0aXZlIGdlc3R1cmUgaGFzIG5vdCBzdGFydGVkIGJ1dCB0aGUgZXZlbnQg
aGFuZGxlcnMgYXJlIHBhc3NpdmUuCisgICAgICAgIC8vCisgICAgICAgIC8vIFRoZSBjbGllbnQg
b2YgV2ViUGFnZVByb3h5IGFza3MgdGhlIGV2ZW50IHRvIGJlIHNlbnQgc3luY2hyb25vdXNseSBz
aW5jZSB0aGUgdG91Y2ggZXZlbnQKKyAgICAgICAgLy8gY2FuIHByZXZlbnQgYSBuYXRpdmUgZ2Vz
dHVyZS4KKyAgICAgICAgLy8gQnV0LCBoZXJlIHdlIGtub3cgdGhhdCBhbGwgZXZlbnRzIGhhbmRs
ZXJzIHRoYXQgY2FuIGhhbmRsZSB0aGlzIGV2ZW50cyBhcmUgcGFzc2l2ZS4KKyAgICAgICAgLy8g
V2UgY2FuIHVzZSBhc3luY2hyb25vdXMgZGlzcGF0Y2ggYW5kIHByZXRlbmQgdG8gdGhlIGNsaWVu
dCB0aGF0IHRoZSBwYWdlIGRvZXMgbm90aGluZyB3aXRoIHRoZSBldmVudHMuCisgICAgICAgIGV2
ZW50LnNldENhblByZXZlbnROYXRpdmVHZXN0dXJlcyhmYWxzZSk7CisgICAgICAgIGhhbmRsZVVu
cHJldmVudGFibGVUb3VjaEV2ZW50KGV2ZW50KTsKKyAgICAgICAgZGlkUmVjZWl2ZUV2ZW50KGV2
ZW50LnR5cGUoKSwgZmFsc2UpOworICAgICAgICBpZiAoaXNUb3VjaFN0YXJ0KQorICAgICAgICAg
ICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0KGZhbHNlKTsKKyAgICAgICAg
aWYgKGlzVG91Y2hFbmQpCisgICAgICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZURlZmVycmluZ1Rv
dWNoRW5kKGZhbHNlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChpc1RvdWNo
U3RhcnQgfHwgaXNUb3VjaEVuZCkgeworICAgICAgICBpZiAoaXNUb3VjaFN0YXJ0KQorICAgICAg
ICAgICAgKyttX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQ7CisKKyAgICAgICAg
aWYgKGlzVG91Y2hFbmQpCisgICAgICAgICAgICArK21faGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNo
RW5kQ291bnQ7CisKKyAgICAgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpFdmVudERp
c3BhdGNoZXI6OlRvdWNoRXZlbnQobV93ZWJQYWdlSUQsIGV2ZW50KSwgW3RoaXMsIHdlYWtUaGlz
ID0gbWFrZVdlYWtQdHIoKnRoaXMpLCBldmVudF0gKGJvb2wgaGFuZGxlZCkgeworICAgICAgICAg
ICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih3ZWFrVGhpcy5nZXQoKSk7CisgICAg
ICAgICAgICBpZiAoIXByb3RlY3RlZFRoaXMpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCisg
ICAgICAgICAgICBib29sIGRpZEZpbmlzaERlZmVycmluZ1RvdWNoU3RhcnQgPSBmYWxzZTsKKyAg
ICAgICAgICAgIEFTU0VSVF9JTVBMSUVTKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6VG91Y2hT
dGFydCwgbV9oYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50KTsKKyAgICAgICAgICAg
IGlmIChldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQgJiYgbV9oYW5kbGluZ1By
ZXZlbnRhYmxlVG91Y2hTdGFydENvdW50KQorICAgICAgICAgICAgICAgIGRpZEZpbmlzaERlZmVy
cmluZ1RvdWNoU3RhcnQgPSAhLS1tX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQ7
CisKKyAgICAgICAgICAgIGJvb2wgZGlkRmluaXNoRGVmZXJyaW5nVG91Y2hFbmQgPSBmYWxzZTsK
KyAgICAgICAgICAgIEFTU0VSVF9JTVBMSUVTKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6VG91
Y2hFbmQsIG1faGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoRW5kQ291bnQpOworICAgICAgICAgICAg
aWYgKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6VG91Y2hFbmQgJiYgbV9oYW5kbGluZ1ByZXZl
bnRhYmxlVG91Y2hFbmRDb3VudCkKKyAgICAgICAgICAgICAgICBkaWRGaW5pc2hEZWZlcnJpbmdU
b3VjaEVuZCA9ICEtLW1faGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoRW5kQ291bnQ7CisKKyAgICAg
ICAgICAgIGJvb2wgaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yID0gaGFuZGxlZCB8fCBtX2hhbmRs
ZWRTeW5jaHJvbm91c1RvdWNoRXZlbnRXaGlsZURpc3BhdGNoaW5nUHJldmVudGFibGVUb3VjaFN0
YXJ0OworICAgICAgICAgICAgaWYgKCFpc0hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCkp
CisgICAgICAgICAgICAgICAgbV9oYW5kbGVkU3luY2hyb25vdXNUb3VjaEV2ZW50V2hpbGVEaXNw
YXRjaGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydCA9IGZhbHNlOworCisgICAgICAgICAgICBkaWRS
ZWNlaXZlRXZlbnQoZXZlbnQudHlwZSgpLCBoYW5kbGVkT3JGYWlsZWRXaXRoRXJyb3IpOworICAg
ICAgICAgICAgaWYgKCFtX3BhZ2VDbGllbnQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCisg
ICAgICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZVdpdGhUb3VjaEV2ZW50KGV2ZW50LCBoYW5kbGVk
T3JGYWlsZWRXaXRoRXJyb3IpOworCisgICAgICAgICAgICBpZiAoZGlkRmluaXNoRGVmZXJyaW5n
VG91Y2hTdGFydCkKKyAgICAgICAgICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZURlZmVycmluZ1Rv
dWNoU3RhcnQoaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yKTsKKworICAgICAgICAgICAgaWYgKGRp
ZEZpbmlzaERlZmVycmluZ1RvdWNoRW5kKQorICAgICAgICAgICAgICAgIHBhZ2VDbGllbnQoKS5k
b25lRGVmZXJyaW5nVG91Y2hFbmQoaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yKTsKKyAgICAgICAg
fSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX3Byb2Nlc3MtPnN0YXJ0UmVzcG9u
c2l2ZW5lc3NUaW1lcigpOworICAgIGJvb2wgaGFuZGxlZCA9IGZhbHNlOworICAgIGJvb2wgcmVw
bHlSZWNlaXZlZCA9ICEhc2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2U6OlRvdWNoRXZlbnRTeW5j
KGV2ZW50KSwgTWVzc2FnZXM6OldlYlBhZ2U6OlRvdWNoRXZlbnRTeW5jOjpSZXBseShoYW5kbGVk
KSwgMV9zLCBJUEM6OlNlbmRTeW5jT3B0aW9uOjpGb3JjZURpc3BhdGNoV2hlbkRlc3RpbmF0aW9u
SXNXYWl0aW5nRm9yVW5ib3VuZGVkU3luY1JlcGx5KTsKKyAgICAvLyBJZiB0aGUgc3luYyByZXF1
ZXN0IGhhcyB0aW1lZCBvdXQsIHdlIHNob3VsZCBjb25zaWRlciB0aGUgZXZlbnQgaGFuZGxlZC4g
VGhlIFdlYiBQcm9jZXNzIGlzIHRvbyBidXN5IHRvIGFuc3dlciBhbnkgcXVlc3Rpb25zLCBzbyB0
aGUgZGVmYXVsdCBhY3Rpb24gaXMgYWxzbyBsaWtlbHkgdG8gaGF2ZSBpc3N1ZXMuCisgICAgaWYg
KCFyZXBseVJlY2VpdmVkKQorICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKKyAgICBkaWRSZWNlaXZl
RXZlbnQoZXZlbnQudHlwZSgpLCBoYW5kbGVkKTsKKyAgICBwYWdlQ2xpZW50KCkuZG9uZVdpdGhU
b3VjaEV2ZW50KGV2ZW50LCBoYW5kbGVkKTsKKyAgICBpZiAoIWlzSGFuZGxpbmdQcmV2ZW50YWJs
ZVRvdWNoU3RhcnQoKSkKKyAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdUb3VjaFN0
YXJ0KGhhbmRsZWQpOworICAgIGVsc2UgaWYgKGhhbmRsZWQpCisgICAgICAgIG1faGFuZGxlZFN5
bmNocm9ub3VzVG91Y2hFdmVudFdoaWxlRGlzcGF0Y2hpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQg
PSB0cnVlOworICAgIG1fcHJvY2Vzcy0+c3RvcFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnJlc2V0UG90ZW50aWFsVGFwU2VjdXJpdHlPcmlnaW4oKQorewor
ICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZTo6UmVzZXRQb3RlbnRpYWxUYXBTZWN1cml0eU9yaWdpbigpKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OmhhbmRsZVVucHJldmVudGFibGVUb3VjaEV2ZW50KGNv
bnN0IE5hdGl2ZVdlYlRvdWNoRXZlbnQmIGV2ZW50KQoreworICAgIGlmICghaGFzUnVubmluZ1By
b2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgVHJhY2tpbmdUeXBlIHRvdWNoRXZlbnRz
VHJhY2tpbmdUeXBlID0gdG91Y2hFdmVudFRyYWNraW5nVHlwZShldmVudCk7CisgICAgaWYgKHRv
dWNoRXZlbnRzVHJhY2tpbmdUeXBlID09IFRyYWNraW5nVHlwZTo6Tm90VHJhY2tpbmcpCisgICAg
ICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OkV2ZW50RGlzcGF0Y2hlcjo6VG91Y2hF
dmVudFdpdGhvdXRDYWxsYmFjayhtX3dlYlBhZ2VJRCwgZXZlbnQpLCAwKTsKKworICAgIGlmIChl
dmVudC5hbGxUb3VjaFBvaW50c0FyZVJlbGVhc2VkKCkpIHsKKyAgICAgICAgbV90b3VjaEFuZFBv
aW50ZXJFdmVudFRyYWNraW5nLnJlc2V0KCk7CisgICAgICAgIGRpZFJlbGVhc2VBbGxUb3VjaFBv
aW50cygpOworICAgIH0KK30KKworI2VsaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpoYW5kbGVUb3VjaEV2ZW50KGNvbnN0IE5hdGl2ZVdlYlRvdWNoRXZlbnQmIGV2
ZW50KQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgdXBkYXRlVG91Y2hFdmVudFRyYWNraW5nKGV2ZW50KTsKKworICAgIGlmICh0b3VjaEV2
ZW50VHJhY2tpbmdUeXBlKGV2ZW50KSA9PSBUcmFja2luZ1R5cGU6Ok5vdFRyYWNraW5nKQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBJZiB0aGUgcGFnZSBpcyBzdXNwZW5kZWQsIHdoaWNoIHNo
b3VsZCBiZSB0aGUgY2FzZSBkdXJpbmcgcGFubmluZywgcGluY2hpbmcKKyAgICAvLyBhbmQgYW5p
bWF0aW9uIG9uIHRoZSBwYWdlIGl0c2VsZiAoa2luZXRpYyBzY3JvbGxpbmcsIHRhcCB0byB6b29t
KSBldGMsIHRoZW4KKyAgICAvLyB3ZSBkbyBub3Qgc2VuZCBhbnkgb2YgdGhlIGV2ZW50cyB0byB0
aGUgcGFnZSBldmVuIGlmIGlzIGhhcyBsaXN0ZW5lcnMuCisgICAgaWYgKCFtX2FyZUFjdGl2ZURP
TU9iamVjdHNBbmRBbmltYXRpb25zU3VzcGVuZGVkKSB7CisgICAgICAgIG1fdG91Y2hFdmVudFF1
ZXVlLmFwcGVuZChldmVudCk7CisgICAgICAgIG1fcHJvY2Vzcy0+c3RhcnRSZXNwb25zaXZlbmVz
c1RpbWVyKCk7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlRvdWNoRXZlbnQoZXZl
bnQpKTsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAobV90b3VjaEV2ZW50UXVldWUuaXNFbXB0
eSgpKSB7CisgICAgICAgICAgICBib29sIGlzRXZlbnRIYW5kbGVkID0gZmFsc2U7CisgICAgICAg
ICAgICBwYWdlQ2xpZW50KCkuZG9uZVdpdGhUb3VjaEV2ZW50KGV2ZW50LCBpc0V2ZW50SGFuZGxl
ZCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBXZSBhdHRhY2ggdGhlIGluY29t
aW5nIGV2ZW50cyB0byB0aGUgbmV3ZXN0IHF1ZXVlZCBldmVudCBzbyB0aGF0IGFsbAorICAgICAg
ICAgICAgLy8gdGhlIGV2ZW50cyBhcmUgZGVsaXZlcmVkIGluIHRoZSBjb3JyZWN0IG9yZGVyIHdo
ZW4gdGhlIGV2ZW50IGlzIGRlcXVlZC4KKyAgICAgICAgICAgIFF1ZXVlZFRvdWNoRXZlbnRzJiBs
YXN0RXZlbnQgPSBtX3RvdWNoRXZlbnRRdWV1ZS5sYXN0KCk7CisgICAgICAgICAgICBsYXN0RXZl
bnQuZGVmZXJyZWRUb3VjaEV2ZW50cy5hcHBlbmQoZXZlbnQpOworICAgICAgICB9CisgICAgfQor
CisgICAgaWYgKGV2ZW50LmFsbFRvdWNoUG9pbnRzQXJlUmVsZWFzZWQoKSkgeworICAgICAgICBt
X3RvdWNoQW5kUG9pbnRlckV2ZW50VHJhY2tpbmcucmVzZXQoKTsKKyAgICAgICAgZGlkUmVsZWFz
ZUFsbFRvdWNoUG9pbnRzKCk7CisgICAgfQorfQorI2VuZGlmIC8vIEVOQUJMRShUT1VDSF9FVkVO
VFMpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjYW5jZWxQb2ludGVyKFdlYkNvcmU6OlBvaW50ZXJJ
RCBwb2ludGVySWQsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBkb2N1bWVudFBvaW50KQorewor
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNhbmNlbFBvaW50ZXIocG9pbnRlcklkLCBkb2N1
bWVudFBvaW50KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp0b3VjaFdpdGhJZGVudGlmaWVy
V2FzUmVtb3ZlZChXZWJDb3JlOjpQb2ludGVySUQgcG9pbnRlcklkKQoreworICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlRvdWNoV2l0aElkZW50aWZpZXJXYXNSZW1vdmVkKHBvaW50ZXJJZCkp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2Nyb2xsQnkoU2Nyb2xsRGlyZWN0aW9uIGRpcmVj
dGlvbiwgU2Nyb2xsR3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpCit7CisgICAgaWYgKCFoYXNSdW5u
aW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlOjpTY3JvbGxCeShkaXJlY3Rpb24sIGdyYW51bGFyaXR5KSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpjZW50ZXJTZWxlY3Rpb25JblZpc2libGVBcmVhKCkKK3sKKyAgICBpZiAoIWhhc1J1
bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OkNlbnRlclNlbGVjdGlvbkluVmlzaWJsZUFyZWEoKSk7Cit9CisKK2NsYXNzIFdlYlBh
Z2VQcm94eTo6UG9saWN5RGVjaXNpb25TZW5kZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxQb2xpY3lE
ZWNpc2lvblNlbmRlcj4geworcHVibGljOgorICAgIHVzaW5nIFNlbmRGdW5jdGlvbiA9IENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUG9saWN5RGVjaXNpb24mJik+OworCisgICAgc3RhdGljIFJlZjxQ
b2xpY3lEZWNpc2lvblNlbmRlcj4gY3JlYXRlKFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlm
aWVyLCBTZW5kRnVuY3Rpb24mJiBzZW5kRnVuY3Rpb24pCisgICAgeworICAgICAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBQb2xpY3lEZWNpc2lvblNlbmRlcihpZGVudGlmaWVyLCBXVEZNb3ZlKHNl
bmRGdW5jdGlvbikpKTsKKyAgICB9CisKKyAgICB2b2lkIHNlbmQoUG9saWN5RGVjaXNpb24mJiBw
b2xpY3lEZWNpc2lvbikKKyAgICB7CisgICAgICAgIGlmIChtX3NlbmRGdW5jdGlvbikKKyAgICAg
ICAgICAgIG1fc2VuZEZ1bmN0aW9uKFdURk1vdmUocG9saWN5RGVjaXNpb24pKTsKKyAgICB9CisK
KyAgICBQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllcigpIHsgcmV0dXJuIG1faWRlbnRp
ZmllcjsgfQorICAgIAorcHJpdmF0ZToKKyAgICBQb2xpY3lEZWNpc2lvblNlbmRlcihQb2xpY3lD
aGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgU2VuZEZ1bmN0aW9uIHNlbmRGdW5jdGlvbikKKyAg
ICAgICAgOiBtX3NlbmRGdW5jdGlvbihXVEZNb3ZlKHNlbmRGdW5jdGlvbikpCisgICAgICAgICwg
bV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCisgICAgICAgIHsgfQorCisgICAgU2VuZEZ1bmN0aW9u
IG1fc2VuZEZ1bmN0aW9uOworICAgIFBvbGljeUNoZWNrSWRlbnRpZmllciBtX2lkZW50aWZpZXI7
Cit9OworCisjaWYgRU5BQkxFKEFQUF9CT1VORF9ET01BSU5TKQorc3RhdGljIGJvb2wgc2hvdWxk
VHJlYXRVUkxQcm90b2NvbEFzQXBwQm91bmQoY29uc3QgVVJMJiByZXF1ZXN0VVJMLCBib29sIGlz
UnVubmluZ1Rlc3QpCit7CisgICAgcmV0dXJuICFpc1J1bm5pbmdUZXN0CisgICAgICAgICYmIChT
ZWN1cml0eU9yaWdpbjo6aXNMb2NhbEhvc3RPckxvb3BiYWNrSVBBZGRyZXNzKHJlcXVlc3RVUkwu
aG9zdCgpKQorICAgICAgICAgICAgfHwgcmVxdWVzdFVSTC5wcm90b2NvbElzQWJvdXQoKQorICAg
ICAgICAgICAgfHwgcmVxdWVzdFVSTC5wcm90b2NvbElzRGF0YSgpCisgICAgICAgICAgICB8fCBy
ZXF1ZXN0VVJMLnByb3RvY29sSXNCbG9iKCkKKyAgICAgICAgICAgIHx8IHJlcXVlc3RVUkwuaXNM
b2NhbEZpbGUoKQorICAgICAgICAgICAgfHwgcmVxdWVzdFVSTC5wcm90b2NvbElzSmF2YVNjcmlw
dCgpKTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OnNldElzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW5BbmRDaGVja0lmUGVybWl0dGVkKGJvb2wgaXNNYWluRnJhbWUsIGNvbnN0IFVSTCYgcmVx
dWVzdFVSTCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNOYXZp
Z2F0aW5nVG9BcHBCb3VuZERvbWFpbikKK3sKKyAgICBpZiAoaXNGdWxsV2ViQnJvd3NlcigpKSB7
CisgICAgICAgIGlmIChoYXNQcm9oaWJpdGVkVXNhZ2VTdHJpbmdzKCkpCisgICAgICAgICAgICBt
X2lzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bjo6Tm87CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIGlmICghaXNOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbikgeworICAgICAgICBtX2lzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4gPSBzdGQ6Om51bGxvcHQ7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICBp
ZiAobV9pZ25vcmVzQXBwQm91bmREb21haW5zKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmIChpc01haW5GcmFtZSAmJiBzaG91bGRUcmVhdFVSTFByb3RvY29sQXNBcHBCb3VuZChyZXF1
ZXN0VVJMLCB3ZWJzaXRlRGF0YVN0b3JlKCkuY29uZmlndXJhdGlvbigpLmVuYWJsZUluQXBwQnJv
d3NlclByaXZhY3lGb3JUZXN0aW5nKCkpKSB7CisgICAgICAgIGlzTmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4gPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6WWVzOworICAgICAgICBtX2xp
bWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMgPSB0cnVlOworICAgIH0KKyAgICBpZiAo
bV9saW1pdHNOYXZpZ2F0aW9uc1RvQXBwQm91bmREb21haW5zKSB7CisgICAgICAgIGlmICgqaXNO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9PSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6
Tm8pIHsKKyAgICAgICAgICAgIGlmIChpc01haW5GcmFtZSkKKyAgICAgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgICAgICAgICBtX2lzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSBO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICAgICAgfQorICAgICAgICBtX2lzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSBOYXZp
Z2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6WWVzOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmICht
X2hhc0V4ZWN1dGVkQXBwQm91bmRCZWhhdmlvckJlZm9yZU5hdmlnYXRpb24pCisgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgICAgIG1faXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9
IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluOjpObzsKKyAgICB9CisgICAgcmV0dXJuIHRydWU7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojppc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluVGVz
dGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGNvbXBsZXRpb25IYW5kbGVyKG1faXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiAm
JiAoKm1faXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9PSBOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbjo6WWVzKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojppc0ZvcmNlZEludG9BcHBC
b3VuZE1vZGVUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlv
bkhhbmRsZXIpCit7CisgICAgY29tcGxldGlvbkhhbmRsZXIobV9saW1pdHNOYXZpZ2F0aW9uc1Rv
QXBwQm91bmREb21haW5zKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlzYWJs
ZVNlcnZpY2VXb3JrZXJFbnRpdGxlbWVudEluTmV0d29ya1Byb2Nlc3MoKQoreworI2lmIEVOQUJM
RShBUFBfQk9VTkRfRE9NQUlOUykgJiYgIVBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorICAgIHdlYnNp
dGVEYXRhU3RvcmUoKS5uZXR3b3JrUHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9j
ZXNzOjpEaXNhYmxlU2VydmljZVdvcmtlckVudGl0bGVtZW50KCksIDApOworI2VuZGlmCit9CisK
K3ZvaWQgV2ViUGFnZVByb3h5OjpjbGVhclNlcnZpY2VXb3JrZXJFbnRpdGxlbWVudE92ZXJyaWRl
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyNpZiBF
TkFCTEUoQVBQX0JPVU5EX0RPTUFJTlMpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBh
dXRvIGNhbGxiYWNrQWdncmVnYXRvciA9IENhbGxiYWNrQWdncmVnYXRvcjo6Y3JlYXRlKFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
OldlYlBhZ2U6OkNsZWFyU2VydmljZVdvcmtlckVudGl0bGVtZW50T3ZlcnJpZGUoKSwgW2NhbGxi
YWNrQWdncmVnYXRvcl0geyB9KTsKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nl
c3MoKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpDbGVhclNl
cnZpY2VXb3JrZXJFbnRpdGxlbWVudE92ZXJyaWRlKCksIFtjYWxsYmFja0FnZ3JlZ2F0b3JdIHsg
fSk7CisjZWxzZQorICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisjZW5kaWYKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OnJlY2VpdmVkTmF2aWdhdGlvblBvbGljeURlY2lzaW9uKFBvbGljeUFjdGlv
biBwb2xpY3lBY3Rpb24sIEFQSTo6TmF2aWdhdGlvbiogbmF2aWdhdGlvbiwgUmVmPEFQSTo6TmF2
aWdhdGlvbkFjdGlvbj4mJiBuYXZpZ2F0aW9uQWN0aW9uLCBQcm9jZXNzU3dhcFJlcXVlc3RlZEJ5
Q2xpZW50IHByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQsIFdlYkZyYW1lUHJveHkmIGZyYW1l
LCBSZWZQdHI8QVBJOjpXZWJzaXRlUG9saWNpZXM+JiYgcG9saWNpZXMsIFJlZjxQb2xpY3lEZWNp
c2lvblNlbmRlcj4mJiBzZW5kZXIpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExv
YWRpbmcsICJyZWNlaXZlZE5hdmlnYXRpb25Qb2xpY3lEZWNpc2lvbjogZnJhbWVJRD0lbGx1LCBu
YXZpZ2F0aW9uSUQ9JWxsdSwgcG9saWN5QWN0aW9uPSV1IiwgZnJhbWUuZnJhbWVJRCgpLnRvVUlu
dDY0KCksIG5hdmlnYXRpb24gPyBuYXZpZ2F0aW9uLT5uYXZpZ2F0aW9uSUQoKSA6IDAsICh1bnNp
Z25lZClwb2xpY3lBY3Rpb24pOworCisgICAgUmVmPFdlYnNpdGVEYXRhU3RvcmU+IHdlYnNpdGVE
YXRhU3RvcmUgPSBtX3dlYnNpdGVEYXRhU3RvcmUuY29weVJlZigpOworICAgIGlmIChwb2xpY2ll
cykgeworICAgICAgICBpZiAocG9saWNpZXMtPndlYnNpdGVEYXRhU3RvcmUoKSAmJiBwb2xpY2ll
cy0+d2Vic2l0ZURhdGFTdG9yZSgpICE9IHdlYnNpdGVEYXRhU3RvcmUucHRyKCkpIHsKKyAgICAg
ICAgICAgIHdlYnNpdGVEYXRhU3RvcmUgPSAqcG9saWNpZXMtPndlYnNpdGVEYXRhU3RvcmUoKTsK
KyAgICAgICAgICAgIHByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQgPSBQcm9jZXNzU3dhcFJl
cXVlc3RlZEJ5Q2xpZW50OjpZZXM7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHBvbGljaWVzLT51
c2VyQ29udGVudENvbnRyb2xsZXIoKSAmJiBwb2xpY2llcy0+dXNlckNvbnRlbnRDb250cm9sbGVy
KCkgIT0gbV91c2VyQ29udGVudENvbnRyb2xsZXIucHRyKCkpCisgICAgICAgICAgICBwcm9jZXNz
U3dhcFJlcXVlc3RlZEJ5Q2xpZW50ID0gUHJvY2Vzc1N3YXBSZXF1ZXN0ZWRCeUNsaWVudDo6WWVz
OworICAgIH0KKworICAgIGlmIChuYXZpZ2F0aW9uICYmICFuYXZpZ2F0aW9uLT51c2VyQ29udGVu
dEV4dGVuc2lvbnNFbmFibGVkKCkpIHsKKyAgICAgICAgaWYgKCFwb2xpY2llcykKKyAgICAgICAg
ICAgIHBvbGljaWVzID0gQVBJOjpXZWJzaXRlUG9saWNpZXM6OmNyZWF0ZSgpOworICAgICAgICBw
b2xpY2llcy0+c2V0Q29udGVudEJsb2NrZXJzRW5hYmxlZChmYWxzZSk7CisgICAgfQorCisjaWYg
RU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAobmF2aWdhdGlvbiAmJiAoIXBvbGlj
aWVzIHx8IHBvbGljaWVzLT5kZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2Vzc1N0YXRlKCkg
PT0gV2ViQ29yZTo6RGV2aWNlT3JpZW50YXRpb25Pck1vdGlvblBlcm1pc3Npb25TdGF0ZTo6UHJv
bXB0KSkgeworICAgICAgICBhdXRvIGRldmljZU9yaWVudGF0aW9uUGVybWlzc2lvbiA9IHdlYnNp
dGVEYXRhU3RvcmUtPmRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29udHJvbGxlcigp
LmNhY2hlZERldmljZU9yaWVudGF0aW9uUGVybWlzc2lvbihTZWN1cml0eU9yaWdpbkRhdGE6OmZy
b21VUkwobmF2aWdhdGlvbi0+Y3VycmVudFJlcXVlc3QoKS51cmwoKSkpOworICAgICAgICBpZiAo
ZGV2aWNlT3JpZW50YXRpb25QZXJtaXNzaW9uICE9IFdlYkNvcmU6OkRldmljZU9yaWVudGF0aW9u
T3JNb3Rpb25QZXJtaXNzaW9uU3RhdGU6OlByb21wdCkgeworICAgICAgICAgICAgaWYgKCFwb2xp
Y2llcykKKyAgICAgICAgICAgICAgICBwb2xpY2llcyA9IEFQSTo6V2Vic2l0ZVBvbGljaWVzOjpj
cmVhdGUoKTsKKyAgICAgICAgICAgIHBvbGljaWVzLT5zZXREZXZpY2VPcmllbnRhdGlvbkFuZE1v
dGlvbkFjY2Vzc1N0YXRlKGRldmljZU9yaWVudGF0aW9uUGVybWlzc2lvbik7CisgICAgICAgIH0K
KyAgICB9CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIHN0YXRpYyBjb25zdCBi
b29sIGZvcmNlRG93bmxvYWRGcm9tRG93bmxvYWRBdHRyaWJ1dGUgPSBmYWxzZTsKKyNlbHNlCisg
ICAgc3RhdGljIGNvbnN0IGJvb2wgZm9yY2VEb3dubG9hZEZyb21Eb3dubG9hZEF0dHJpYnV0ZSA9
IHRydWU7CisjZW5kaWYKKyAgICBpZiAocG9saWN5QWN0aW9uID09IFBvbGljeUFjdGlvbjo6VXNl
ICYmIG5hdmlnYXRpb24gJiYgKG5hdmlnYXRpb24tPmlzU3lzdGVtUHJldmlldygpIHx8IChmb3Jj
ZURvd25sb2FkRnJvbURvd25sb2FkQXR0cmlidXRlICYmIG5hdmlnYXRpb24tPnNob3VsZFBlcmZv
cm1Eb3dubG9hZCgpKSkpCisgICAgICAgIHBvbGljeUFjdGlvbiA9IFBvbGljeUFjdGlvbjo6RG93
bmxvYWQ7CisKKyAgICBpZiAocG9saWN5QWN0aW9uICE9IFBvbGljeUFjdGlvbjo6VXNlIHx8ICFm
cmFtZS5pc01haW5GcmFtZSgpIHx8ICFuYXZpZ2F0aW9uKSB7CisgICAgICAgIHJlY2VpdmVkUG9s
aWN5RGVjaXNpb24ocG9saWN5QWN0aW9uLCBuYXZpZ2F0aW9uLCBXVEZNb3ZlKHBvbGljaWVzKSwg
V1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uKSwgV1RGTW92ZShzZW5kZXIpKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIFJlZjxXZWJQcm9jZXNzUHJveHk+IHNvdXJjZVByb2Nlc3MgPSBw
cm9jZXNzKCk7CisgICAgVVJMIHNvdXJjZVVSTCA9IFVSTCB7IFVSTCgpLCBwYWdlTG9hZFN0YXRl
KCkudXJsKCkgfTsKKyAgICBpZiAoYXV0byogcHJvdmlzaW9uYWxQYWdlID0gcHJvdmlzaW9uYWxQ
YWdlUHJveHkoKSkgeworICAgICAgICBpZiAocHJvdmlzaW9uYWxQYWdlLT5uYXZpZ2F0aW9uSUQo
KSA9PSBuYXZpZ2F0aW9uLT5uYXZpZ2F0aW9uSUQoKSkgeworICAgICAgICAgICAgc291cmNlUHJv
Y2VzcyA9IHByb3Zpc2lvbmFsUGFnZS0+cHJvY2VzcygpOworICAgICAgICAgICAgc291cmNlVVJM
ID0gcHJvdmlzaW9uYWxQYWdlLT5wcm92aXNpb25hbFVSTCgpOworICAgICAgICB9CisgICAgfQor
CisgICAgcHJvY2VzcygpLnByb2Nlc3NQb29sKCkucHJvY2Vzc0Zvck5hdmlnYXRpb24oKnRoaXMs
ICpuYXZpZ2F0aW9uLCBzb3VyY2VQcm9jZXNzLmNvcHlSZWYoKSwgc291cmNlVVJMLCBwcm9jZXNz
U3dhcFJlcXVlc3RlZEJ5Q2xpZW50LCBXVEZNb3ZlKHdlYnNpdGVEYXRhU3RvcmUpLCBbdGhpcywg
cHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwb2xpY3lBY3Rpb24sIG5hdmlnYXRpb24g
PSBtYWtlUmVmKCpuYXZpZ2F0aW9uKSwgbmF2aWdhdGlvbkFjdGlvbiA9IFdURk1vdmUobmF2aWdh
dGlvbkFjdGlvbiksIHNvdXJjZVByb2Nlc3MgPSBzb3VyY2VQcm9jZXNzLmNvcHlSZWYoKSwKKyAg
ICAgICAgcG9saWNpZXMgPSBXVEZNb3ZlKHBvbGljaWVzKSwgc2VuZGVyID0gV1RGTW92ZShzZW5k
ZXIpLCBwcm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50XSAoUmVmPFdlYlByb2Nlc3NQcm94eT4m
JiBwcm9jZXNzRm9yTmF2aWdhdGlvbiwgU3VzcGVuZGVkUGFnZVByb3h5KiBkZXN0aW5hdGlvblN1
c3BlbmRlZFBhZ2UsIGNvbnN0IFN0cmluZyYgcmVhc29uKSBtdXRhYmxlIHsKKyAgICAgICAgLy8g
SWYgdGhlIG5hdmlnYXRpb24gaGFzIGJlZW4gZGVzdHJveWVkLCB0aGVuIG5vIG5lZWQgdG8gcHJv
Y2VlZC4KKyAgICAgICAgaWYgKGlzQ2xvc2VkKCkgfHwgIW5hdmlnYXRpb25TdGF0ZSgpLmhhc05h
dmlnYXRpb24obmF2aWdhdGlvbi0+bmF2aWdhdGlvbklEKCkpKSB7CisgICAgICAgICAgICByZWNl
aXZlZFBvbGljeURlY2lzaW9uKHBvbGljeUFjdGlvbiwgbmF2aWdhdGlvbi5wdHIoKSwgV1RGTW92
ZShwb2xpY2llcyksIFdURk1vdmUobmF2aWdhdGlvbkFjdGlvbiksIFdURk1vdmUoc2VuZGVyKSk7
CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBib29sIHNob3VsZFBy
b2Nlc3NTd2FwID0gcHJvY2Vzc0Zvck5hdmlnYXRpb24ucHRyKCkgIT0gc291cmNlUHJvY2Vzcy5w
dHIoKTsKKyAgICAgICAgaWYgKHNob3VsZFByb2Nlc3NTd2FwKSB7CisgICAgICAgICAgICBwb2xp
Y3lBY3Rpb24gPSBQb2xpY3lBY3Rpb246OlN0b3BBbGxMb2FkczsKKyAgICAgICAgICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJkZWNpZGVQb2xpY3lGb3JOYXZp
Z2F0aW9uQWN0aW9uLCBzd2FwcGluZyBwcm9jZXNzICVpIHdpdGggcHJvY2VzcyAlaSBmb3IgbmF2
aWdhdGlvbiwgcmVhc29uPSUiIFBVQkxJQ19MT0dfU1RSSU5HLCBwcm9jZXNzSWRlbnRpZmllcigp
LCBwcm9jZXNzRm9yTmF2aWdhdGlvbi0+cHJvY2Vzc0lkZW50aWZpZXIoKSwgcmVhc29uLnV0Zjgo
KS5kYXRhKCkpOworICAgICAgICAgICAgTE9HKFByb2Nlc3NTd2FwcGluZywgIihQcm9jZXNzU3dh
cHBpbmcpIFN3aXRjaGluZyBmcm9tIHByb2Nlc3MgJWkgdG8gbmV3IHByb2Nlc3MgKCVpKSBmb3Ig
bmF2aWdhdGlvbiAlIiBQUkl1NjQgIiAnJXMnIiwgcHJvY2Vzc0lkZW50aWZpZXIoKSwgcHJvY2Vz
c0Zvck5hdmlnYXRpb24tPnByb2Nlc3NJZGVudGlmaWVyKCksIG5hdmlnYXRpb24tPm5hdmlnYXRp
b25JRCgpLCBuYXZpZ2F0aW9uLT5sb2dnaW5nU3RyaW5nKCkpOworICAgICAgICB9IGVsc2UKKyAg
ICAgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICJkZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uOiBrZWVwIHVzaW5nIHByb2Nlc3MgJWkgZm9yIG5h
dmlnYXRpb24sIHJlYXNvbj0lIiBQVUJMSUNfTE9HX1NUUklORywgcHJvY2Vzc0lkZW50aWZpZXIo
KSwgcmVhc29uLnV0ZjgoKS5kYXRhKCkpOworCisgICAgICAgIHN0ZDo6b3B0aW9uYWw8U2FuZGJv
eEV4dGVuc2lvbjo6SGFuZGxlPiBvcHRpb25hbEhhbmRsZTsKKyAgICAgICAgaWYgKHNob3VsZFBy
b2Nlc3NTd2FwKSB7CisgICAgICAgICAgICAvLyBNYWtlIHN1cmUgdGhlIHByb2Nlc3MgdG8gYmUg
dXNlZCBmb3IgdGhlIG5hdmlnYXRpb24gZG9lcyBub3QgZ2V0IHNodXREb3duIG5vdyBkdWUgdG8g
ZGVzdHJveWluZyBTdXNwZW5kZWRQYWdlUHJveHkgb3IgUHJvdmlzaW9uYWxQYWdlUHJveHkgb2Jq
ZWN0cy4KKyAgICAgICAgICAgIGF1dG8gcHJldmVudE5hdmlnYXRpb25Qcm9jZXNzU2h1dGRvd24g
PSBwcm9jZXNzRm9yTmF2aWdhdGlvbi0+c2h1dGRvd25QcmV2ZW50aW5nU2NvcGUoKTsKKworICAg
ICAgICAgICAgQVNTRVJUKCFkZXN0aW5hdGlvblN1c3BlbmRlZFBhZ2UgfHwgbmF2aWdhdGlvbi0+
dGFyZ2V0SXRlbSgpKTsKKyAgICAgICAgICAgIGF1dG8gc3VzcGVuZGVkUGFnZSA9IGRlc3RpbmF0
aW9uU3VzcGVuZGVkUGFnZSA/IGJhY2tGb3J3YXJkQ2FjaGUoKS50YWtlU3VzcGVuZGVkUGFnZSgq
bmF2aWdhdGlvbi0+dGFyZ2V0SXRlbSgpKSA6IG51bGxwdHI7CisKKyAgICAgICAgICAgIC8vIEl0
IGlzIGRpZmZpY3VsdCB0byBnZXQgaGlzdG9yeSByaWdodCBpZiB3ZSBoYXZlIHNldmVyYWwgV2Vi
UGFnZSBvYmplY3RzIGluc2lkZSBhIHNpbmdsZSBXZWJQcm9jZXNzIGZvciB0aGUgc2FtZSBXZWJQ
YWdlUHJveHkuIEFzIGEgcmVzdWx0LCBpZiB3ZSBtYWtlIHN1cmUgdG8KKyAgICAgICAgICAgIC8v
IGNsZWFyIGFueSBTdXNwZW5kZWRQYWdlUHJveHkgZm9yIHRoZSBjdXJyZW50IHBhZ2UgdGhhdCBh
cmUgYmFja2VkIGJ5IHRoZSBkZXN0aW5hdGlvbiBwcm9jZXNzIGJlZm9yZSB3ZSBwcm9jZWVkIHdp
dGggdGhlIG5hdmlnYXRpb24uIFRoaXMgbWFrZXMgc3VyZSB0aGUgV2ViUGFnZQorICAgICAgICAg
ICAgLy8gd2UgYXJlIGFib3V0IHRvIGNyZWF0ZSBpbiB0aGUgZGVzdGluYXRpb24gcHJvY2VzcyB3
aWxsIGJlIHRoZSBvbmx5IG9uZSBhc3NvY2lhdGVkIHdpdGggdGhpcyBXZWJQYWdlUHJveHkuCisg
ICAgICAgICAgICBpZiAoIWRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZSkKKyAgICAgICAgICAgICAg
ICBiYWNrRm9yd2FyZENhY2hlKCkucmVtb3ZlRW50cmllc0ZvclBhZ2VBbmRQcm9jZXNzKCp0aGlz
LCBwcm9jZXNzRm9yTmF2aWdhdGlvbik7CisKKyAgICAgICAgICAgIEFTU0VSVChzdXNwZW5kZWRQ
YWdlLmdldCgpID09IGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZSk7CisgICAgICAgICAgICBpZiAo
c3VzcGVuZGVkUGFnZSAmJiBzdXNwZW5kZWRQYWdlLT5wYWdlSXNDbG9zZWRPckNsb3NpbmcoKSkK
KyAgICAgICAgICAgICAgICBzdXNwZW5kZWRQYWdlID0gbnVsbHB0cjsKKworICAgICAgICAgICAg
Y29udGludWVOYXZpZ2F0aW9uSW5OZXdQcm9jZXNzKG5hdmlnYXRpb24sIFdURk1vdmUoc3VzcGVu
ZGVkUGFnZSksIFdURk1vdmUocHJvY2Vzc0Zvck5hdmlnYXRpb24pLCBwcm9jZXNzU3dhcFJlcXVl
c3RlZEJ5Q2xpZW50LCBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQ6Olllc0FmdGVyTmF2aWdh
dGlvblBvbGljeURlY2lzaW9uLCBzdGQ6OmV4Y2hhbmdlKHBvbGljaWVzLCBudWxscHRyKSk7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBhdXRvIGl0ZW0gPSBuYXZpZ2F0aW9uLT5yZWxv
YWRJdGVtKCkgPyBuYXZpZ2F0aW9uLT5yZWxvYWRJdGVtKCkgOiBuYXZpZ2F0aW9uLT50YXJnZXRJ
dGVtKCk7CisgICAgICAgICAgICBpZiAocG9saWN5QWN0aW9uID09IFBvbGljeUFjdGlvbjo6VXNl
ICYmIGl0ZW0pIHsKKyAgICAgICAgICAgICAgICBhdXRvIGZ1bGxVUkwgPSBVUkwgeyBVUkwoKSwg
aXRlbS0+dXJsKCkgfTsKKyAgICAgICAgICAgICAgICBpZiAoZnVsbFVSTC5wcm90b2NvbElzKCJm
aWxlIl9zKSkgeworICAgICAgICAgICAgICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
c2FuZGJveEV4dGVuc2lvbkhhbmRsZTsKKyAgICAgICAgICAgICAgICAgICAgbWF5YmVJbml0aWFs
aXplU2FuZGJveEV4dGVuc2lvbkhhbmRsZShwcm9jZXNzRm9yTmF2aWdhdGlvbi5nZXQoKSwgZnVs
bFVSTCwgaXRlbS0+cmVzb3VyY2VEaXJlY3RvcnlVUkwoKSwgc2FuZGJveEV4dGVuc2lvbkhhbmRs
ZSk7CisgICAgICAgICAgICAgICAgICAgIG9wdGlvbmFsSGFuZGxlID0gV1RGTW92ZShzYW5kYm94
RXh0ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICByZWNlaXZlZFBvbGljeURlY2lzaW9uKHBvbGljeUFjdGlvbiwgbmF2
aWdhdGlvbi5wdHIoKSwgc2hvdWxkUHJvY2Vzc1N3YXAgPyBudWxscHRyIDogV1RGTW92ZShwb2xp
Y2llcyksIFdURk1vdmUobmF2aWdhdGlvbkFjdGlvbiksIFdURk1vdmUoc2VuZGVyKSwgV1RGTW92
ZShvcHRpb25hbEhhbmRsZSksIHNob3VsZFByb2Nlc3NTd2FwID8gV2lsbENvbnRpbnVlTG9hZElu
TmV3UHJvY2Vzczo6WWVzIDogV2lsbENvbnRpbnVlTG9hZEluTmV3UHJvY2Vzczo6Tm8pOworICAg
IH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVjZWl2ZWRQb2xpY3lEZWNpc2lvbihQb2xp
Y3lBY3Rpb24gYWN0aW9uLCBBUEk6Ok5hdmlnYXRpb24qIG5hdmlnYXRpb24sIFJlZlB0cjxBUEk6
OldlYnNpdGVQb2xpY2llcz4mJiB3ZWJzaXRlUG9saWNpZXMsIFZhcmlhbnQ8UmVmPEFQSTo6TmF2
aWdhdGlvblJlc3BvbnNlPiwgUmVmPEFQSTo6TmF2aWdhdGlvbkFjdGlvbj4+JiYgbmF2aWdhdGlv
bkFjdGlvbk9yUmVzcG9uc2UsIFJlZjxQb2xpY3lEZWNpc2lvblNlbmRlcj4mJiBzZW5kZXIsIHN0
ZDo6b3B0aW9uYWw8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiBzYW5kYm94RXh0ZW5zaW9uSGFu
ZGxlLCBXaWxsQ29udGludWVMb2FkSW5OZXdQcm9jZXNzIHdpbGxDb250aW51ZUxvYWRJbk5ld1By
b2Nlc3MpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAgICAgIHNlbmRl
ci0+c2VuZChQb2xpY3lEZWNpc2lvbiB7IHNlbmRlci0+aWRlbnRpZmllcigpLCBpc05hdmlnYXRp
bmdUb0FwcEJvdW5kRG9tYWluKCksIFBvbGljeUFjdGlvbjo6SWdub3JlLCAwLCBzdGQ6Om51bGxv
cHQsIHN0ZDo6bnVsbG9wdCB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8g
dHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rpb24oKTsKKworICAgIGlmIChh
Y3Rpb24gPT0gUG9saWN5QWN0aW9uOjpJZ25vcmUgJiYgd2lsbENvbnRpbnVlTG9hZEluTmV3UHJv
Y2VzcyA9PSBXaWxsQ29udGludWVMb2FkSW5OZXdQcm9jZXNzOjpObyAmJiBuYXZpZ2F0aW9uICYm
IG5hdmlnYXRpb24tPm5hdmlnYXRpb25JRCgpID09IG1fcGFnZUxvYWRTdGF0ZS5wZW5kaW5nQVBJ
UmVxdWVzdCgpLm5hdmlnYXRpb25JRCkKKyAgICAgICAgbV9wYWdlTG9hZFN0YXRlLmNsZWFyUGVu
ZGluZ0FQSVJlcXVlc3QodHJhbnNhY3Rpb24pOworCisgICAgc3RkOjpvcHRpb25hbDxEb3dubG9h
ZElEPiBkb3dubG9hZElEOworICAgIGlmIChhY3Rpb24gPT0gUG9saWN5QWN0aW9uOjpEb3dubG9h
ZCkgeworICAgICAgICAvLyBDcmVhdGUgYSBkb3dubG9hZCBwcm94eS4KKyAgICAgICAgYXV0byYg
ZG93bmxvYWQgPSBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkuY3JlYXRlRG93bmxvYWRQcm94eSht
X3dlYnNpdGVEYXRhU3RvcmUsIG1fZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VSZXF1ZXN0LCB0aGlz
LCBuYXZpZ2F0aW9uID8gbmF2aWdhdGlvbi0+b3JpZ2luYXRpbmdGcmFtZUluZm8oKSA6IEZyYW1l
SW5mb0RhdGEgeyB9KTsKKyAgICAgICAgZG93bmxvYWQuc2V0RGlkU3RhcnRDYWxsYmFjayhbdGhp
cywgd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigqdGhpcyksIG5hdmlnYXRpb25BY3Rpb25PclJlc3Bv
bnNlID0gV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uT3JSZXNwb25zZSldIChhdXRvKiBkb3dubG9h
ZFByb3h5KSB7CisgICAgICAgICAgICBpZiAoIXdlYWtUaGlzIHx8ICFkb3dubG9hZFByb3h5KQor
ICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIFdURjo6c3dpdGNoT24obmF2aWdh
dGlvbkFjdGlvbk9yUmVzcG9uc2UsCisgICAgICAgICAgICAgICAgWyZdIChjb25zdCBSZWY8QVBJ
OjpOYXZpZ2F0aW9uUmVzcG9uc2U+JiByZXNwb25zZSkgeworICAgICAgICAgICAgICAgICAgICBp
ZiAoIXJlc3BvbnNlLT5kb3dubG9hZEF0dHJpYnV0ZSgpLmlzTnVsbCgpKQorICAgICAgICAgICAg
ICAgICAgICAgICAgZG93bmxvYWRQcm94eS0+c2V0U3VnZ2VzdGVkRmlsZW5hbWUocmVzcG9uc2Ut
PmRvd25sb2FkQXR0cmlidXRlKCkpOworICAgICAgICAgICAgICAgICAgICBtX25hdmlnYXRpb25D
bGllbnQtPm5hdmlnYXRpb25SZXNwb25zZURpZEJlY29tZURvd25sb2FkKCp0aGlzLCByZXNwb25z
ZS5nZXQoKSwgKmRvd25sb2FkUHJveHkpOworICAgICAgICAgICAgICAgIH0sIFsmXSAoY29uc3Qg
UmVmPEFQSTo6TmF2aWdhdGlvbkFjdGlvbj4mIGFjdGlvbikgeworICAgICAgICAgICAgICAgICAg
ICBtX25hdmlnYXRpb25DbGllbnQtPm5hdmlnYXRpb25BY3Rpb25EaWRCZWNvbWVEb3dubG9hZCgq
dGhpcywgYWN0aW9uLmdldCgpLCAqZG93bmxvYWRQcm94eSk7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgKTsKKyAgICAgICAgfSk7CisgICAgICAgIGlmIChuYXZpZ2F0aW9uKSB7Cisg
ICAgICAgICAgICBkb3dubG9hZC5zZXRXYXNVc2VySW5pdGlhdGVkKG5hdmlnYXRpb24tPndhc1Vz
ZXJJbml0aWF0ZWQoKSk7CisgICAgICAgICAgICBkb3dubG9hZC5zZXRSZWRpcmVjdENoYWluKG5h
dmlnYXRpb24tPnRha2VSZWRpcmVjdENoYWluKCkpOworICAgICAgICB9CisKKyAgICAgICAgZG93
bmxvYWRJRCA9IGRvd25sb2FkLmRvd25sb2FkSUQoKTsKKyAgICAgICAgaGFuZGxlRG93bmxvYWRS
ZXF1ZXN0KGRvd25sb2FkKTsKKyAgICAgICAgbV9kZWNpZGVQb2xpY3lGb3JSZXNwb25zZVJlcXVl
c3QgPSB7IH07CisgICAgfQorICAgIAorICAgIHN0ZDo6b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVz
RGF0YT4gd2Vic2l0ZVBvbGljaWVzRGF0YTsKKyAgICBpZiAod2Vic2l0ZVBvbGljaWVzKQorICAg
ICAgICB3ZWJzaXRlUG9saWNpZXNEYXRhID0gd2Vic2l0ZVBvbGljaWVzLT5kYXRhKCk7CisKKyAg
ICBzZW5kZXItPnNlbmQoUG9saWN5RGVjaXNpb24geyBzZW5kZXItPmlkZW50aWZpZXIoKSwgaXNO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbigpLCBhY3Rpb24sIG5hdmlnYXRpb24gPyBuYXZpZ2F0
aW9uLT5uYXZpZ2F0aW9uSUQoKSA6IDAsIGRvd25sb2FkSUQsIFdURk1vdmUod2Vic2l0ZVBvbGlj
aWVzRGF0YSksIFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkgfSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5Ojpjb21taXRQcm92aXNpb25hbFBhZ2UoRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3Qs
IHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgYm9vbCBmcmFt
ZUhhc0N1c3RvbUNvbnRlbnRQcm92aWRlciwgV2ViQ29yZTo6RnJhbWVMb2FkVHlwZSBmcmFtZUxv
YWRUeXBlLCBjb25zdCBXZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm8mIGNlcnRpZmljYXRlSW5mbywg
Ym9vbCB1c2VkTGVnYWN5VExTLCBib29sIGNvbnRhaW5zUGx1Z2luRG9jdW1lbnQsIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6SGFzSW5zZWN1cmVDb250ZW50PiBmb3JjZWRIYXNJbnNlY3VyZUNvbnRl
bnQsIFdlYkNvcmU6Ok1vdXNlRXZlbnRQb2xpY3kgbW91c2VFdmVudFBvbGljeSwgY29uc3QgVXNl
ckRhdGEmIHVzZXJEYXRhKQoreworICAgIEFTU0VSVChtX3Byb3Zpc2lvbmFsUGFnZSk7CisgICAg
V0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJjb21taXRQcm92aXNpb25hbFBhZ2U6
IG5ld1BJRD0laSIsIG1fcHJvdmlzaW9uYWxQYWdlLT5wcm9jZXNzKCkucHJvY2Vzc0lkZW50aWZp
ZXIoKSk7CisKKyAgICBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gbWFpbkZyYW1lSURJ
blByZXZpb3VzUHJvY2VzcyA9IG1fbWFpbkZyYW1lID8gc3RkOjptYWtlX29wdGlvbmFsKG1fbWFp
bkZyYW1lLT5mcmFtZUlEKCkpIDogc3RkOjpudWxsb3B0OworCisgICAgQVNTRVJUKG1fcHJvY2Vz
cy5wdHIoKSAhPSAmbV9wcm92aXNpb25hbFBhZ2UtPnByb2Nlc3MoKSk7CisKKyAgICBhdXRvIHNo
b3VsZERlbGF5Q2xvc2luZ1VudGlsRmlyc3RMYXllckZsdXNoID0gU2hvdWxkRGVsYXlDbG9zaW5n
VW50aWxGaXJzdExheWVyRmx1c2g6Ok5vOworI2lmIFBMQVRGT1JNKE1BQykKKyAgICAvLyBPbiBt
YWNPUywgd2hlbiBub3QgdXNpbmcgVUktc2lkZSBjb21wb3NpdGluZywgd2UgbmVlZCB0byBtYWtl
IHN1cmUgd2UgZG8gbm90IGNsb3NlIHRoZSBwYWdlIGluIHRoZSBwcmV2aW91cyBwcm9jZXNzIHVu
dGlsIHdlJ3ZlCisgICAgLy8gZW50ZXJlZCBhY2NlbGVyYXRlZCBjb21wb3NpdGluZyBmb3IgdGhl
IG5ldyBwYWdlIG9yIHdlIHdpbGwgZmxhc2ggb24gbmF2aWdhdGlvbi4KKyAgICBpZiAoZHJhd2lu
Z0FyZWEoKS0+dHlwZSgpID09IERyYXdpbmdBcmVhVHlwZVRpbGVkQ29yZUFuaW1hdGlvbikKKyAg
ICAgICAgc2hvdWxkRGVsYXlDbG9zaW5nVW50aWxGaXJzdExheWVyRmx1c2ggPSBTaG91bGREZWxh
eUNsb3NpbmdVbnRpbEZpcnN0TGF5ZXJGbHVzaDo6WWVzOworI2VuZGlmCisKKyAgICBpZiAobV9p
c0xheWVyVHJlZUZyb3plbkR1ZVRvU3dpcGVBbmltYXRpb24pCisgICAgICAgIHNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OlVuZnJlZXplTGF5ZXJUcmVlRHVlVG9Td2lwZUFuaW1hdGlvbigpKTsKKwor
ICAgIHJlc2V0U3RhdGVBZnRlclByb2Nlc3NUZXJtaW5hdGlvbihQcm9jZXNzVGVybWluYXRpb25S
ZWFzb246Ok5hdmlnYXRpb25Td2FwKTsKKworICAgIG1fcHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJl
Y2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV93
ZWJQYWdlSUQpOworICAgIGF1dG8qIG5hdmlnYXRpb24gPSBuYXZpZ2F0aW9uU3RhdGUoKS5uYXZp
Z2F0aW9uKG1fcHJvdmlzaW9uYWxQYWdlLT5uYXZpZ2F0aW9uSUQoKSk7CisgICAgYm9vbCBkaWRT
dXNwZW5kUHJldmlvdXNQYWdlID0gbmF2aWdhdGlvbiAmJiAhbV9wcm92aXNpb25hbFBhZ2UtPnNo
b3VsZENsb3NlUHJldmlvdXNQYWdlQWZ0ZXJDb21taXQoKSA/IHN1c3BlbmRDdXJyZW50UGFnZUlm
UG9zc2libGUoKm5hdmlnYXRpb24sIG1haW5GcmFtZUlESW5QcmV2aW91c1Byb2Nlc3MsIG1fcHJv
dmlzaW9uYWxQYWdlLT5wcm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50KCksIHNob3VsZERlbGF5
Q2xvc2luZ1VudGlsRmlyc3RMYXllckZsdXNoKSA6IGZhbHNlOworICAgIG1fcHJvY2Vzcy0+cmVt
b3ZlV2ViUGFnZSgqdGhpcywgbV93ZWJzaXRlRGF0YVN0b3JlLnB0cigpID09ICZtX3Byb3Zpc2lv
bmFsUGFnZS0+cHJvY2VzcygpLndlYnNpdGVEYXRhU3RvcmUoKSA/IFdlYlByb2Nlc3NQcm94eTo6
RW5kc1VzaW5nRGF0YVN0b3JlOjpObyA6IFdlYlByb2Nlc3NQcm94eTo6RW5kc1VzaW5nRGF0YVN0
b3JlOjpZZXMpOworCisgICAgLy8gVGhlcmUgaXMgbm8gd2F5IHdlJ2xsIGJlIGFibGUgdG8gcmV0
dXJuIHRvIHRoZSBwYWdlIGluIHRoZSBwcmV2aW91cyBwYWdlIHNvIGNsb3NlIGl0LgorICAgIGlm
ICghZGlkU3VzcGVuZFByZXZpb3VzUGFnZSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6Q2xvc2UoKSk7CisKKyAgICBjb25zdCBhdXRvIG9sZFdlYlBhZ2VJRCA9IG1fd2ViUGFnZUlE
OworICAgIHN3YXBUb1Byb3Zpc2lvbmFsUGFnZShzdGQ6OmV4Y2hhbmdlKG1fcHJvdmlzaW9uYWxQ
YWdlLCBudWxscHRyKSk7CisKKyAgICBkaWRDb21taXRMb2FkRm9yRnJhbWUoZnJhbWVJRCwgV1RG
TW92ZShmcmFtZUluZm8pLCBXVEZNb3ZlKHJlcXVlc3QpLCBuYXZpZ2F0aW9uSUQsIG1pbWVUeXBl
LCBmcmFtZUhhc0N1c3RvbUNvbnRlbnRQcm92aWRlciwgZnJhbWVMb2FkVHlwZSwgY2VydGlmaWNh
dGVJbmZvLCB1c2VkTGVnYWN5VExTLCBjb250YWluc1BsdWdpbkRvY3VtZW50LCBmb3JjZWRIYXNJ
bnNlY3VyZUNvbnRlbnQsIG1vdXNlRXZlbnRQb2xpY3ksIHVzZXJEYXRhKTsKKworICAgIG1faW5z
cGVjdG9yQ29udHJvbGxlci0+ZGlkQ29tbWl0UHJvdmlzaW9uYWxQYWdlKG9sZFdlYlBhZ2VJRCwg
bV93ZWJQYWdlSUQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y29udGludWVOYXZpZ2F0aW9u
SW5OZXdQcm9jZXNzKEFQSTo6TmF2aWdhdGlvbiYgbmF2aWdhdGlvbiwgc3RkOjp1bmlxdWVfcHRy
PFN1c3BlbmRlZFBhZ2VQcm94eT4mJiBzdXNwZW5kZWRQYWdlLCBSZWY8V2ViUHJvY2Vzc1Byb3h5
PiYmIG5ld1Byb2Nlc3MsIFByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQgcHJvY2Vzc1N3YXBS
ZXF1ZXN0ZWRCeUNsaWVudCwgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIHNob3VsZFRyZWF0
QXNDb250aW51aW5nTG9hZCwgUmVmUHRyPEFQSTo6V2Vic2l0ZVBvbGljaWVzPiYmIHdlYnNpdGVQ
b2xpY2llcywgc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gZXhp
c3RpbmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVzdW1lKQoreworICAgIFdFQlBB
R0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiY29udGludWVOYXZpZ2F0aW9uSW5OZXdQcm9j
ZXNzOiBuZXdQcm9jZXNzUElEPSVpLCBoYXNTdXNwZW5kZWRQYWdlPSVpIiwgbmV3UHJvY2Vzcy0+
cHJvY2Vzc0lkZW50aWZpZXIoKSwgISFzdXNwZW5kZWRQYWdlKTsKKyAgICBMT0coTG9hZGluZywg
IkNvbnRpbnVpbmcgbmF2aWdhdGlvbiAlIiBQUkl1NjQgIiAnJXMnIGluIGEgbmV3IHdlYiBwcm9j
ZXNzIiwgbmF2aWdhdGlvbi5uYXZpZ2F0aW9uSUQoKSwgbmF2aWdhdGlvbi5sb2dnaW5nU3RyaW5n
KCkpOworICAgIFJFTEVBU0VfQVNTRVJUKCFuZXdQcm9jZXNzLT5pc0luUHJvY2Vzc0NhY2hlKCkp
OworICAgIEFTU0VSVChzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgIT0gU2hvdWxkVHJlYXRB
c0NvbnRpbnVpbmdMb2FkOjpObyk7CisKKyAgICBpZiAobV9wcm92aXNpb25hbFBhZ2UpIHsKKyAg
ICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKFByb2Nlc3NTd2FwcGluZywgImNvbnRpbnVl
TmF2aWdhdGlvbkluTmV3UHJvY2VzczogVGhlcmUgaXMgYWxyZWFkeSBhIHBlbmRpbmcgcHJvdmlz
aW9uYWwgbG9hZCwgY2FuY2VsbGluZyBpdCAocHJvdmlzb25hbE5hdmlnYXRpb25JRD0lbGx1LCBu
YXZpZ2F0aW9uSUQ9JWxsdSkiLCBtX3Byb3Zpc2lvbmFsUGFnZS0+bmF2aWdhdGlvbklEKCksIG5h
dmlnYXRpb24ubmF2aWdhdGlvbklEKCkpOworICAgICAgICBpZiAobV9wcm92aXNpb25hbFBhZ2Ut
Pm5hdmlnYXRpb25JRCgpICE9IG5hdmlnYXRpb24ubmF2aWdhdGlvbklEKCkpCisgICAgICAgICAg
ICBtX3Byb3Zpc2lvbmFsUGFnZS0+Y2FuY2VsKCk7CisgICAgICAgIG1fcHJvdmlzaW9uYWxQYWdl
ID0gbnVsbHB0cjsKKyAgICB9CisKKyAgICBib29sIGlzU2VydmVyU2lkZVJlZGlyZWN0ID0gc2hv
dWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkID09IFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDo6
WWVzQWZ0ZXJOYXZpZ2F0aW9uUG9saWN5RGVjaXNpb24gJiYgbmF2aWdhdGlvbi5jdXJyZW50UmVx
dWVzdElzUmVkaXJlY3QoKTsKKyAgICBib29sIHNob3VsZENsb3NlUHJldmlvdXNQYWdlQWZ0ZXJD
b21taXQgPSBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgPT0gU2hvdWxkVHJlYXRBc0NvbnRp
bnVpbmdMb2FkOjpZZXNBZnRlclJlc3BvbnNlUG9saWN5RGVjaXNpb247CisgICAgbV9wcm92aXNp
b25hbFBhZ2UgPSBtYWtlVW5pcXVlPFByb3Zpc2lvbmFsUGFnZVByb3h5PigqdGhpcywgV1RGTW92
ZShuZXdQcm9jZXNzKSwgV1RGTW92ZShzdXNwZW5kZWRQYWdlKSwgbmF2aWdhdGlvbi5uYXZpZ2F0
aW9uSUQoKSwgaXNTZXJ2ZXJTaWRlUmVkaXJlY3QsIG5hdmlnYXRpb24uY3VycmVudFJlcXVlc3Qo
KSwgcHJvY2Vzc1N3YXBSZXF1ZXN0ZWRCeUNsaWVudCwgc2hvdWxkQ2xvc2VQcmV2aW91c1BhZ2VB
ZnRlckNvbW1pdCwgd2Vic2l0ZVBvbGljaWVzLmdldCgpKTsKKyAgICBhdXRvIGNvbnRpbnVhdGlv
biA9IFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIG5hdmlnYXRpb24gPSBt
YWtlUmVmKG5hdmlnYXRpb24pLCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIHdlYnNpdGVQ
b2xpY2llcyA9IFdURk1vdmUod2Vic2l0ZVBvbGljaWVzKSwgZXhpc3RpbmdOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllclRvUmVzdW1lXSgpIG11dGFibGUgeworICAgICAgICBpZiAoYXV0byog
aXRlbSA9IG5hdmlnYXRpb24tPnRhcmdldEl0ZW0oKSkgeworICAgICAgICAgICAgTE9HKExvYWRp
bmcsICJXZWJQYWdlUHJveHkgJXAgY29udGludWVOYXZpZ2F0aW9uSW5OZXdQcm9jZXNzIHRvIGJh
Y2sgaXRlbSBVUkwgJXMiLCB0aGlzLCBpdGVtLT51cmwoKS51dGY4KCkuZGF0YSgpKTsKKworICAg
ICAgICAgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRTdGF0ZS50cmFuc2FjdGlvbigp
OworICAgICAgICAgICAgbV9wYWdlTG9hZFN0YXRlLnNldFBlbmRpbmdBUElSZXF1ZXN0KHRyYW5z
YWN0aW9uLCB7IG5hdmlnYXRpb24tPm5hdmlnYXRpb25JRCgpLCBpdGVtLT51cmwoKSB9KTsKKwor
ICAgICAgICAgICAgbV9wcm92aXNpb25hbFBhZ2UtPmdvVG9CYWNrRm9yd2FyZEl0ZW0obmF2aWdh
dGlvbiwgKml0ZW0sIFdURk1vdmUod2Vic2l0ZVBvbGljaWVzKSk7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKworICAgICAgICBpZiAobV9iYWNrRm9yd2FyZExpc3QtPmN1cnJlbnRJ
dGVtKCkgJiYgKG5hdmlnYXRpb24tPmxvY2tCYWNrRm9yd2FyZExpc3QoKSA9PSBMb2NrQmFja0Zv
cndhcmRMaXN0OjpZZXMgfHwgbmF2aWdhdGlvbi0+bG9ja0hpc3RvcnkoKSA9PSBMb2NrSGlzdG9y
eTo6WWVzKSkgeworICAgICAgICAgICAgLy8gSWYgV2ViQ29yZSBpcyBzdXBwb3NlZCB0byBsb2Nr
IHRoZSBoaXN0b3J5IGZvciB0aGlzIGxvYWQsIHRoZW4gdGhlIG5ldyBwcm9jZXNzIG5lZWRzIHRv
IGtub3cgYWJvdXQgdGhlIGN1cnJlbnQgaGlzdG9yeSBpdGVtIHNvIGl0IGNhbiB1cGRhdGUKKyAg
ICAgICAgICAgIC8vIGl0IGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgb25lLgorICAgICAgICAg
ICAgbV9wcm92aXNpb25hbFBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldEN1cnJlbnRI
aXN0b3J5SXRlbUZvclJlYXR0YWNoKG1fYmFja0ZvcndhcmRMaXN0LT5jdXJyZW50SXRlbSgpLT5p
dGVtU3RhdGUoKSkpOworICAgICAgICB9CisKKyAgICAgICAgc3RkOjpvcHRpb25hbDxXZWJzaXRl
UG9saWNpZXNEYXRhPiB3ZWJzaXRlUG9saWNpZXNEYXRhOworICAgICAgICBpZiAod2Vic2l0ZVBv
bGljaWVzKQorICAgICAgICAgICAgd2Vic2l0ZVBvbGljaWVzRGF0YSA9IHdlYnNpdGVQb2xpY2ll
cy0+ZGF0YSgpOworCisgICAgICAgIC8vIEZJWE1FOiBXb3JrIG91dCB0aW1pbmcgb2YgcmVzcG9u
ZGluZyB3aXRoIHRoZSBsYXN0IHBvbGljeSBkZWxlZ2F0ZSwgZXRjCisgICAgICAgIEFTU0VSVCgh
bmF2aWdhdGlvbi0+Y3VycmVudFJlcXVlc3QoKS5pc0VtcHR5KCkpOworICAgICAgICBBU1NFUlQo
IWV4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSB8fCAhbmF2aWdh
dGlvbi0+c3Vic3RpdHV0ZURhdGEoKSk7CisgICAgICAgIGlmIChhdXRvJiBzdWJzdGl0dXRlRGF0
YSA9IG5hdmlnYXRpb24tPnN1YnN0aXR1dGVEYXRhKCkpCisgICAgICAgICAgICBtX3Byb3Zpc2lv
bmFsUGFnZS0+bG9hZERhdGEobmF2aWdhdGlvbiwgeyBzdWJzdGl0dXRlRGF0YS0+Y29udGVudC5k
YXRhKCksIHN1YnN0aXR1dGVEYXRhLT5jb250ZW50LnNpemUoKSB9LCBzdWJzdGl0dXRlRGF0YS0+
TUlNRVR5cGUsIHN1YnN0aXR1dGVEYXRhLT5lbmNvZGluZywgc3Vic3RpdHV0ZURhdGEtPmJhc2VV
UkwsIHN1YnN0aXR1dGVEYXRhLT51c2VyRGF0YS5nZXQoKSwgc2hvdWxkVHJlYXRBc0NvbnRpbnVp
bmdMb2FkLCBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKCksIFdURk1vdmUod2Vic2l0ZVBv
bGljaWVzRGF0YSksIHN1YnN0aXR1dGVEYXRhLT5zZXNzaW9uSGlzdG9yeVZpc2liaWxpdHkpOwor
ICAgICAgICBlbHNlCisgICAgICAgICAgICBtX3Byb3Zpc2lvbmFsUGFnZS0+bG9hZFJlcXVlc3Qo
bmF2aWdhdGlvbiwgUmVzb3VyY2VSZXF1ZXN0IHsgbmF2aWdhdGlvbi0+Y3VycmVudFJlcXVlc3Qo
KSB9LCBudWxscHRyLCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIGlzTmF2aWdhdGluZ1Rv
QXBwQm91bmREb21haW4oKSwgV1RGTW92ZSh3ZWJzaXRlUG9saWNpZXNEYXRhKSwgZXhpc3RpbmdO
ZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVzdW1lKTsKKyAgICB9OworICAgIGlmICht
X2luc3BlY3RvckNvbnRyb2xsZXItPnNob3VsZFBhdXNlTG9hZGluZygqbV9wcm92aXNpb25hbFBh
Z2UpKQorICAgICAgICBtX2luc3BlY3RvckNvbnRyb2xsZXItPnNldENvbnRpbnVlTG9hZGluZ0Nh
bGxiYWNrKCptX3Byb3Zpc2lvbmFsUGFnZSwgV1RGTW92ZShjb250aW51YXRpb24pKTsKKyAgICBl
bHNlCisgICAgICAgIGNvbnRpbnVhdGlvbigpOworfQorCitib29sIFdlYlBhZ2VQcm94eTo6aXNQ
YWdlT3BlbmVkQnlET01TaG93aW5nSW5pdGlhbEVtcHR5RG9jdW1lbnQoKSBjb25zdAoreworICAg
IHJldHVybiBvcGVuZWRCeURPTSgpICYmICFoYXNDb21taXR0ZWRBbnlQcm92aXNpb25hbExvYWRz
KCk7Cit9CisKKy8vIE1TVkMgZ2l2ZXMgYSByZWRlY2xhcmF0aW9uIGVycm9yIGlmIG5vcmV0dXJu
IGlzIHVzZWQgb24gdGhlIGRlZmluaXRpb24gYW5kIG5vdCB0aGUgZGVjbGFyYXRpb24sIHdoaWxl
CisvLyBDb2NvYSB0ZXN0cyBzZWdmYXVsdCBpZiBpdCBpcyBtb3ZlZCB0byB0aGUgZGVjbGFyYXRp
b24gc2l0ZSAoZXZlbiBpZiB3ZSBtb3ZlIHRoZSBkZWZpbml0aW9uIHdpdGggaXQhKS4KKyNpZiAh
Q09NUElMRVIoTVNWQykKK05PX1JFVFVSTl9EVUVfVE9fQVNTRVJUCisjZW5kaWYKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpkaWRGYWlsVG9TdXNwZW5kQWZ0ZXJQcm9jZXNzU3dhcCgpCit7CisgICAgLy8g
T25seSB0aGUgU3VzcGVuZGVkUGFnZVByb3h5IHNob3VsZCBiZSBnZXR0aW5nIHRoaXMgY2FsbC4K
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKK30KKworI2lmICFDT01QSUxFUihNU1ZDKQorTk9f
UkVUVVJOX0RVRV9UT19BU1NFUlQKKyNlbmRpZgordm9pZCBXZWJQYWdlUHJveHk6OmRpZFN1c3Bl
bmRBZnRlclByb2Nlc3NTd2FwKCkKK3sKKyAgICAvLyBPbmx5IHRoZSBTdXNwZW5kZWRQYWdlUHJv
eHkgc2hvdWxkIGJlIGdldHRpbmcgdGhpcyBjYWxsLgorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VXNlckFnZW50KFN0cmluZyYmIHVzZXJBZ2Vu
dCkKK3sKKyAgICBpZiAobV91c2VyQWdlbnQgPT0gdXNlckFnZW50KQorICAgICAgICByZXR1cm47
CisgICAgbV91c2VyQWdlbnQgPSBXVEZNb3ZlKHVzZXJBZ2VudCk7CisKKyNpZiBFTkFCTEUoU0VS
VklDRV9XT1JLRVIpCisgICAgLy8gV2UgdXBkYXRlIHRoZSBzZXJ2aWNlIHdvcmtlciB0aGVyZSBh
dCB0aGUgbW9tZW50IHRvIGJlIHN1cmUgd2UgdXNlIHZhbHVlcyB1c2VkIGJ5IGFjdHVhbCB3ZWIg
cGFnZXMuCisgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRoaXMgd2hlbiB3ZSBoYXZlIGEgYmV0dGVy
IFVzZXItQWdlbnQgc3RvcnkuCisgICAgcHJvY2VzcygpLnByb2Nlc3NQb29sKCkudXBkYXRlU2Vy
dmljZVdvcmtlclVzZXJBZ2VudChtX3VzZXJBZ2VudCk7CisjZW5kaWYKKworICAgIGlmICghaGFz
UnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OlNldFVzZXJBZ2VudChtX3VzZXJBZ2VudCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6c2V0QXBwbGljYXRpb25OYW1lRm9yVXNlckFnZW50KGNvbnN0IFN0cmluZyYgYXBwbGljYXRp
b25OYW1lKQoreworICAgIGlmIChtX2FwcGxpY2F0aW9uTmFtZUZvclVzZXJBZ2VudCA9PSBhcHBs
aWNhdGlvbk5hbWUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fYXBwbGljYXRpb25OYW1lRm9y
VXNlckFnZW50ID0gYXBwbGljYXRpb25OYW1lOworICAgIGlmICghbV9jdXN0b21Vc2VyQWdlbnQu
aXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZXRVc2VyQWdlbnQoc3RhbmRhcmRV
c2VyQWdlbnQobV9hcHBsaWNhdGlvbk5hbWVGb3JVc2VyQWdlbnQpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldEN1c3RvbVVzZXJBZ2VudChjb25zdCBTdHJpbmcmIGN1c3RvbVVzZXJBZ2Vu
dCkKK3sKKyAgICBpZiAobV9jdXN0b21Vc2VyQWdlbnQgPT0gY3VzdG9tVXNlckFnZW50KQorICAg
ICAgICByZXR1cm47CisKKyAgICBtX2N1c3RvbVVzZXJBZ2VudCA9IGN1c3RvbVVzZXJBZ2VudDsK
KworICAgIGlmIChtX2N1c3RvbVVzZXJBZ2VudC5pc0VtcHR5KCkpIHsKKyAgICAgICAgc2V0VXNl
ckFnZW50KHN0YW5kYXJkVXNlckFnZW50KG1fYXBwbGljYXRpb25OYW1lRm9yVXNlckFnZW50KSk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBzZXRVc2VyQWdlbnQoU3RyaW5nIHsgbV9j
dXN0b21Vc2VyQWdlbnQgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXN1bWVBY3RpdmVE
T01PYmplY3RzQW5kQW5pbWF0aW9ucygpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
IHx8ICFtX2FyZUFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zU3VzcGVuZGVkKQorICAgICAg
ICByZXR1cm47CisKKyAgICBtX2FyZUFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zU3VzcGVu
ZGVkID0gZmFsc2U7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpSZXN1bWVBY3RpdmVE
T01PYmplY3RzQW5kQW5pbWF0aW9ucygpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnN1c3Bl
bmRBY3RpdmVET01PYmplY3RzQW5kQW5pbWF0aW9ucygpCit7CisgICAgaWYgKCFoYXNSdW5uaW5n
UHJvY2VzcygpIHx8IG1fYXJlQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnNTdXNwZW5kZWQp
CisgICAgICAgIHJldHVybjsKKworICAgIG1fYXJlQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlv
bnNTdXNwZW5kZWQgPSB0cnVlOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U3VzcGVu
ZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6c3VzcGVuZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQoreworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic3VzcGVuZDoi
KTsKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkgfHwgbV9pc1N1c3BlbmRlZCkKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIG1faXNTdXNwZW5kZWQg
PSB0cnVlOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6U3VzcGVu
ZCgpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpyZXN1bWUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgInJlc3VtZToiKTsK
KworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSB8fCAhbV9pc1N1c3BlbmRlZCkKKyAgICAg
ICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIG1faXNTdXNwZW5kZWQg
PSBmYWxzZTsKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlJlc3Vt
ZSgpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5
OjpzdXBwb3J0c1RleHRFbmNvZGluZygpIGNvbnN0Cit7CisgICAgLy8gRklYTUUgKDExODg0MCk6
IFdlIHNob3VsZCBwcm9iYWJseSBvbmx5IHN1cHBvcnQgdGhpcyBmb3IgdGV4dCBkb2N1bWVudHMs
IG5vdCBhbGwgbm9uLWltYWdlIGRvY3VtZW50cy4KKyAgICByZXR1cm4gbV9tYWluRnJhbWUgJiYg
IW1fbWFpbkZyYW1lLT5pc0Rpc3BsYXlpbmdTdGFuZGFsb25lSW1hZ2VEb2N1bWVudCgpOworfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0Q3VzdG9tVGV4dEVuY29kaW5nTmFtZShjb25zdCBTdHJp
bmcmIGVuY29kaW5nTmFtZSkKK3sKKyAgICBpZiAobV9jdXN0b21UZXh0RW5jb2RpbmdOYW1lID09
IGVuY29kaW5nTmFtZSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fY3VzdG9tVGV4dEVuY29kaW5n
TmFtZSA9IGVuY29kaW5nTmFtZTsKKworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAg
ICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldEN1c3RvbVRleHRF
bmNvZGluZ05hbWUoZW5jb2RpbmdOYW1lKSk7Cit9CisKK1Nlc3Npb25TdGF0ZSBXZWJQYWdlUHJv
eHk6OnNlc3Npb25TdGF0ZShXVEY6OkZ1bmN0aW9uPGJvb2wgKFdlYkJhY2tGb3J3YXJkTGlzdEl0
ZW0mKT4mJiBmaWx0ZXIpIGNvbnN0Cit7CisgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNN
YWluKCkpOworICAgIFNlc3Npb25TdGF0ZSBzZXNzaW9uU3RhdGU7CisKKyAgICBzZXNzaW9uU3Rh
dGUuYmFja0ZvcndhcmRMaXN0U3RhdGUgPSBtX2JhY2tGb3J3YXJkTGlzdC0+YmFja0ZvcndhcmRM
aXN0U3RhdGUoV1RGTW92ZShmaWx0ZXIpKTsKKworICAgIFN0cmluZyBwcm92aXNpb25hbFVSTFN0
cmluZyA9IG1fcGFnZUxvYWRTdGF0ZS5wZW5kaW5nQVBJUmVxdWVzdFVSTCgpOworICAgIGlmIChw
cm92aXNpb25hbFVSTFN0cmluZy5pc0VtcHR5KCkpCisgICAgICAgIHByb3Zpc2lvbmFsVVJMU3Ry
aW5nID0gbV9wYWdlTG9hZFN0YXRlLnByb3Zpc2lvbmFsVVJMKCk7CisKKyAgICBpZiAoIXByb3Zp
c2lvbmFsVVJMU3RyaW5nLmlzRW1wdHkoKSkKKyAgICAgICAgc2Vzc2lvblN0YXRlLnByb3Zpc2lv
bmFsVVJMID0gVVJMKFVSTCgpLCBwcm92aXNpb25hbFVSTFN0cmluZyk7CisKKyAgICBzZXNzaW9u
U3RhdGUucmVuZGVyVHJlZVNpemUgPSByZW5kZXJUcmVlU2l6ZSgpOworICAgIHJldHVybiBzZXNz
aW9uU3RhdGU7Cit9CisKK1JlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IFdlYlBhZ2VQcm94eTo6cmVz
dG9yZUZyb21TZXNzaW9uU3RhdGUoU2Vzc2lvblN0YXRlIHNlc3Npb25TdGF0ZSwgYm9vbCBuYXZp
Z2F0ZSkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgInJlc3RvcmVG
cm9tU2Vzc2lvblN0YXRlOiIpOworCisgICAgbV9sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRl
ZCA9IHNlc3Npb25TdGF0ZS5pc0FwcEluaXRpYXRlZDsKKyAgICBtX3Nlc3Npb25SZXN0b3JhdGlv
blJlbmRlclRyZWVTaXplID0gMDsKKyAgICBtX2hpdFJlbmRlclRyZWVTaXplVGhyZXNob2xkID0g
ZmFsc2U7CisKKyAgICBib29sIGhhc0JhY2tGb3J3YXJkTGlzdCA9ICEhc2Vzc2lvblN0YXRlLmJh
Y2tGb3J3YXJkTGlzdFN0YXRlLmN1cnJlbnRJbmRleDsKKworICAgIGlmIChoYXNCYWNrRm9yd2Fy
ZExpc3QpIHsKKyAgICAgICAgbV9zZXNzaW9uU3RhdGVXYXNSZXN0b3JlZEJ5QVBJUmVxdWVzdCA9
IHRydWU7CisKKyAgICAgICAgbV9iYWNrRm9yd2FyZExpc3QtPnJlc3RvcmVGcm9tU3RhdGUoV1RG
TW92ZShzZXNzaW9uU3RhdGUuYmFja0ZvcndhcmRMaXN0U3RhdGUpKTsKKyAgICAgICAgLy8gSWYg
dGhlIHByb2Nlc3MgaXMgbm90IGxhdW5jaGVkIHlldCwgdGhlIHNlc3Npb24gd2lsbCBiZSByZXN0
b3JlZCB3aGVuIHNlbmRpbmcgdGhlIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnM7CisgICAgICAg
IGlmIChoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6UmVzdG9yZVNlc3Npb24obV9iYWNrRm9yd2FyZExpc3QtPml0ZW1TdGF0ZXMoKSkpOwor
CisgICAgICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rpb24o
KTsKKyAgICAgICAgbV9wYWdlTG9hZFN0YXRlLnNldENhbkdvQmFjayh0cmFuc2FjdGlvbiwgbV9i
YWNrRm9yd2FyZExpc3QtPmJhY2tJdGVtKCkpOworICAgICAgICBtX3BhZ2VMb2FkU3RhdGUuc2V0
Q2FuR29Gb3J3YXJkKHRyYW5zYWN0aW9uLCBtX2JhY2tGb3J3YXJkTGlzdC0+Zm9yd2FyZEl0ZW0o
KSk7CisKKyAgICAgICAgLy8gVGhlIGJhY2sgLyBmb3J3YXJkIGxpc3Qgd2FzIHJlc3RvcmVkIGZy
b20gYSBzZXNzaW9uU3RhdGUgc28gd2UgZG9uJ3Qgd2FudCB0byBzbmFwc2hvdCB0aGUgY3VycmVu
dAorICAgICAgICAvLyBwYWdlIHdoZW4gbmF2aWdhdGluZyBhd2F5LiBTdXBwcmVzcyBuYXZpZ2F0
aW9uIHNuYXBzaG90dGluZyB1bnRpbCB0aGUgbmV4dCBsb2FkIGhhcyBjb21taXR0ZWQKKyAgICAg
ICAgc3VwcHJlc3NOZXh0QXV0b21hdGljTmF2aWdhdGlvblNuYXBzaG90KCk7CisgICAgfQorCisg
ICAgLy8gRklYTUU6IE5hdmlnYXRpbmcgc2hvdWxkIGJlIHNlcGFyYXRlIGZyb20gc3RhdGUgcmVz
dG9yYXRpb24uCisgICAgaWYgKG5hdmlnYXRlKSB7CisgICAgICAgIG1fc2Vzc2lvblJlc3RvcmF0
aW9uUmVuZGVyVHJlZVNpemUgPSBzZXNzaW9uU3RhdGUucmVuZGVyVHJlZVNpemU7CisgICAgICAg
IGlmICghbV9zZXNzaW9uUmVzdG9yYXRpb25SZW5kZXJUcmVlU2l6ZSkKKyAgICAgICAgICAgIG1f
aGl0UmVuZGVyVHJlZVNpemVUaHJlc2hvbGQgPSB0cnVlOyAvLyBJZiB3ZSBkaWRuJ3QgZ2V0IGRh
dGEgb24gcmVuZGVyVHJlZVNpemUsIGp1c3QgZG9uJ3QgZmlyZSB0aGUgbWlsZXN0b25lLgorCisg
ICAgICAgIGlmICghc2Vzc2lvblN0YXRlLnByb3Zpc2lvbmFsVVJMLmlzTnVsbCgpKQorICAgICAg
ICAgICAgcmV0dXJuIGxvYWRSZXF1ZXN0KHNlc3Npb25TdGF0ZS5wcm92aXNpb25hbFVSTCk7CisK
KyAgICAgICAgaWYgKGhhc0JhY2tGb3J3YXJkTGlzdCkgeworICAgICAgICAgICAgaWYgKFdlYkJh
Y2tGb3J3YXJkTGlzdEl0ZW0qIGl0ZW0gPSBtX2JhY2tGb3J3YXJkTGlzdC0+Y3VycmVudEl0ZW0o
KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gZ29Ub0JhY2tGb3J3YXJkSXRlbSgqaXRlbSk7Cisg
ICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworYm9vbCBXZWJQYWdl
UHJveHk6OnN1cHBvcnRzVGV4dFpvb20oKSBjb25zdAoreworICAgIC8vIEZJWE1FICgxMTg4NDAp
OiBUaGlzIHNob3VsZCBhbHNvIHJldHVybiBmYWxzZSBmb3Igc3RhbmRhbG9uZSBtZWRpYSBhbmQg
cGx1Zy1pbiBkb2N1bWVudHMuCisgICAgaWYgKCFtX21haW5GcmFtZSB8fCBtX21haW5GcmFtZS0+
aXNEaXNwbGF5aW5nU3RhbmRhbG9uZUltYWdlRG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgcmV0dXJuIHRydWU7Cit9CisgCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VGV4
dFpvb21GYWN0b3IoZG91YmxlIHpvb21GYWN0b3IpCit7CisgICAgaWYgKG1fdGV4dFpvb21GYWN0
b3IgPT0gem9vbUZhY3RvcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV90ZXh0Wm9vbUZhY3Rv
ciA9IHpvb21GYWN0b3I7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAg
IHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFRleHRab29tRmFjdG9y
KG1fdGV4dFpvb21GYWN0b3IpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFBhZ2Vab29t
RmFjdG9yKGRvdWJsZSB6b29tRmFjdG9yKQoreworICAgIGlmIChtX3BhZ2Vab29tRmFjdG9yID09
IHpvb21GYWN0b3IpCisgICAgICAgIHJldHVybjsKKworICAgIGNsb3NlT3ZlcmxheWVkVmlld3Mo
KTsKKworICAgIG1fcGFnZVpvb21GYWN0b3IgPSB6b29tRmFjdG9yOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpTZXRQYWdlWm9vbUZhY3RvcihtX3BhZ2Vab29tRmFjdG9yKSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpzZXRQYWdlQW5kVGV4dFpvb21GYWN0b3JzKGRvdWJsZSBwYWdlWm9vbUZh
Y3RvciwgZG91YmxlIHRleHRab29tRmFjdG9yKQoreworICAgIGlmIChtX3BhZ2Vab29tRmFjdG9y
ID09IHBhZ2Vab29tRmFjdG9yICYmIG1fdGV4dFpvb21GYWN0b3IgPT0gdGV4dFpvb21GYWN0b3Ip
CisgICAgICAgIHJldHVybjsKKworICAgIGNsb3NlT3ZlcmxheWVkVmlld3MoKTsKKworICAgIG1f
cGFnZVpvb21GYWN0b3IgPSBwYWdlWm9vbUZhY3RvcjsKKyAgICBtX3RleHRab29tRmFjdG9yID0g
dGV4dFpvb21GYWN0b3I7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAg
IHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFBhZ2VBbmRUZXh0Wm9v
bUZhY3RvcnMobV9wYWdlWm9vbUZhY3RvciwgbV90ZXh0Wm9vbUZhY3RvcikpOworfQorCitkb3Vi
bGUgV2ViUGFnZVByb3h5OjpwYWdlWm9vbUZhY3RvcigpIGNvbnN0Cit7CisgICAgLy8gWm9vbSBm
YWN0b3IgZm9yIG5vbi1QREYgcGFnZXMgcGVyc2lzdHMgYWNyb3NzIHBhZ2UgbG9hZHMuIFdlIG1h
aW50YWluIGEgc2VwYXJhdGUgbWVtYmVyIHZhcmlhYmxlIGZvciBQREYKKyAgICAvLyB6b29tIHdo
aWNoIGVuc3VyZXMgdGhhdCB3ZSBkb24ndCB1c2UgdGhlIFBERiB6b29tIGZvciBhIG5vcm1hbCBw
YWdlLgorICAgIGlmIChtX21haW5GcmFtZVBsdWdpbkhhbmRsZXNQYWdlU2NhbGVHZXN0dXJlKQor
ICAgICAgICByZXR1cm4gbV9wbHVnaW5ab29tRmFjdG9yOworICAgIHJldHVybiBtX3BhZ2Vab29t
RmFjdG9yOworfQorCitkb3VibGUgV2ViUGFnZVByb3h5OjpwYWdlU2NhbGVGYWN0b3IoKSBjb25z
dAoreworICAgIC8vIFBERiBkb2N1bWVudHMgdXNlIHpvb20gYW5kIHNjYWxlIGZhY3RvcnMgdG8g
c2l6ZSB0aGVtc2VsdmVzIGFwcHJvcHJpYXRlbHkgaW4gdGhlIHdpbmRvdy4gV2Ugc3RvcmUgdGhl
bQorICAgIC8vIHNlcGFyYXRlbHkgYnV0IGRlY2lkZSB3aGljaCB0byByZXR1cm4gYmFzZWQgb24g
dGhlIG1haW4gZnJhbWUuCisgICAgaWYgKG1fbWFpbkZyYW1lUGx1Z2luSGFuZGxlc1BhZ2VTY2Fs
ZUdlc3R1cmUpCisgICAgICAgIHJldHVybiBtX3BsdWdpblNjYWxlRmFjdG9yOworICAgIHJldHVy
biBtX3BhZ2VTY2FsZUZhY3RvcjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNjYWxlUGFnZShk
b3VibGUgc2NhbGUsIGNvbnN0IEludFBvaW50JiBvcmlnaW4pCit7CisgICAgQVNTRVJUKHNjYWxl
ID4gMCk7CisKKyAgICBtX3BhZ2VTY2FsZUZhY3RvciA9IHNjYWxlOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpTY2FsZVBhZ2Uoc2NhbGUsIG9yaWdpbikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6c2NhbGVQYWdlSW5WaWV3Q29vcmRpbmF0ZXMoZG91YmxlIHNjYWxlLCBjb25zdCBJbnRQb2lu
dCYgY2VudGVySW5WaWV3Q29vcmRpbmF0ZXMpCit7CisgICAgQVNTRVJUKHNjYWxlID4gMCk7CisK
KyAgICBtX3BhZ2VTY2FsZUZhY3RvciA9IHNjYWxlOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJv
Y2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpT
Y2FsZVBhZ2VJblZpZXdDb29yZGluYXRlcyhzY2FsZSwgY2VudGVySW5WaWV3Q29vcmRpbmF0ZXMp
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNjYWxlVmlldyhkb3VibGUgc2NhbGUpCit7Cisg
ICAgQVNTRVJUKHNjYWxlID4gMCk7CisKKyAgICBtX3ZpZXdTY2FsZUZhY3RvciA9IHNjYWxlOwor
CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTY2FsZVZpZXcoc2NhbGUpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldEludHJpbnNpY0RldmljZVNjYWxlRmFjdG9yKGZsb2F0IHNjYWxlRmFjdG9y
KQoreworICAgIGlmIChtX2ludHJpbnNpY0RldmljZVNjYWxlRmFjdG9yID09IHNjYWxlRmFjdG9y
KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2ludHJpbnNpY0RldmljZVNjYWxlRmFjdG9yID0g
c2NhbGVGYWN0b3I7CisKKyAgICBpZiAobV9kcmF3aW5nQXJlYSkKKyAgICAgICAgbV9kcmF3aW5n
QXJlYS0+ZGV2aWNlU2NhbGVGYWN0b3JEaWRDaGFuZ2UoKTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OndpbmRvd1NjcmVlbkRpZENoYW5nZShQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQsIHN0
ZDo6b3B0aW9uYWw8dW5zaWduZWQ+IG5vbWluYWxGcmFtZXNQZXJTZWNvbmQpCit7CisgICAgbV9k
aXNwbGF5SUQgPSBkaXNwbGF5SUQ7CisKKyAgICBpZiAobV93aGVlbEV2ZW50Q29hbGVzY2VyKQor
ICAgICAgICBtX3doZWVsRXZlbnRDb2FsZXNjZXItPnNldFNob3VsZENvYWxlc2NlRXZlbnRzRHVy
aW5nRGVjZWxlcmF0aW9uKHNob3VsZENvYWxlc2NlV2hlZWxFdmVudHNEdXJpbmdEZWNlbGVyYXRp
b24oKSk7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OldpbmRvd1NjcmVlbkRpZENoYW5nZShkaXNw
bGF5SUQsIG5vbWluYWxGcmFtZXNQZXJTZWNvbmQpKTsKK30KKworZmxvYXQgV2ViUGFnZVByb3h5
OjpkZXZpY2VTY2FsZUZhY3RvcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY3VzdG9tRGV2aWNl
U2NhbGVGYWN0b3IudmFsdWVfb3IobV9pbnRyaW5zaWNEZXZpY2VTY2FsZUZhY3Rvcik7Cit9CisK
K3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRDdXN0b21EZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBjdXN0
b21TY2FsZUZhY3RvcikKK3sKKyAgICBpZiAobV9jdXN0b21EZXZpY2VTY2FsZUZhY3RvciAmJiBt
X2N1c3RvbURldmljZVNjYWxlRmFjdG9yLnZhbHVlKCkgPT0gY3VzdG9tU2NhbGVGYWN0b3IpCisg
ICAgICAgIHJldHVybjsKKworICAgIGZsb2F0IG9sZFNjYWxlRmFjdG9yID0gZGV2aWNlU2NhbGVG
YWN0b3IoKTsKKworICAgIC8vIEEgdmFsdWUgb2YgMCBjbGVhcnMgdGhlIGN1c3RvbVNjYWxlRmFj
dG9yLgorICAgIGlmIChjdXN0b21TY2FsZUZhY3RvcikKKyAgICAgICAgbV9jdXN0b21EZXZpY2VT
Y2FsZUZhY3RvciA9IGN1c3RvbVNjYWxlRmFjdG9yOworICAgIGVsc2UKKyAgICAgICAgbV9jdXN0
b21EZXZpY2VTY2FsZUZhY3RvciA9IHN0ZDo6bnVsbG9wdDsKKworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGRldmljZVNjYWxlRmFjdG9y
KCkgIT0gb2xkU2NhbGVGYWN0b3IpCisgICAgICAgIG1fZHJhd2luZ0FyZWEtPmRldmljZVNjYWxl
RmFjdG9yRGlkQ2hhbmdlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjphY2Nlc3NpYmlsaXR5
U2V0dGluZ3NEaWRDaGFuZ2UoKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgLy8gQWxzbyB1cGRhdGUgc2NyZWVuIHByb3BlcnRpZXMgd2hp
Y2ggZW5jb2RlcyBpbnZlcnQgY29sb3JzLgorICAgIHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLnNj
cmVlblByb3BlcnRpZXNTdGF0ZUNoYW5nZWQoKTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
OjpBY2Nlc3NpYmlsaXR5U2V0dGluZ3NEaWRDaGFuZ2UoKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpzZXRVc2VGaXhlZExheW91dChib29sIGZpeGVkKQoreworICAgIC8vIFRoaXMgY2hlY2sg
aXMgZmluZSBhcyB0aGUgdmFsdWUgaXMgaW5pdGlhbGl6ZWQgaW4gdGhlIHdlYgorICAgIC8vIHBy
b2Nlc3MgYXMgcGFydCBvZiB0aGUgY3JlYXRpb24gcGFyYW1ldGVycy4KKyAgICBpZiAoZml4ZWQg
PT0gbV91c2VGaXhlZExheW91dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV91c2VGaXhlZExh
eW91dCA9IGZpeGVkOworICAgIGlmICghZml4ZWQpCisgICAgICAgIG1fZml4ZWRMYXlvdXRTaXpl
ID0gSW50U2l6ZSgpOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRVc2VGaXhlZExheW91dChm
aXhlZCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0Rml4ZWRMYXlvdXRTaXplKGNvbnN0
IEludFNpemUmIHNpemUpCit7CisgICAgaWYgKHNpemUgPT0gbV9maXhlZExheW91dFNpemUpCisg
ICAgICAgIHJldHVybjsKKworICAgIG1fZml4ZWRMYXlvdXRTaXplID0gc2l6ZTsKKworICAgIGlm
ICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6U2V0Rml4ZWRMYXlvdXRTaXplKHNpemUpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldFZpZXdFeHBvc2VkUmVjdChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0
UmVjdD4gdmlld0V4cG9zZWRSZWN0KQoreworICAgIGlmIChtX3ZpZXdFeHBvc2VkUmVjdCA9PSB2
aWV3RXhwb3NlZFJlY3QpCisgICAgICAgIHJldHVybjsKKworICAgIG1fdmlld0V4cG9zZWRSZWN0
ID0gdmlld0V4cG9zZWRSZWN0OworCisjaWYgUExBVEZPUk0oTUFDKQorICAgIGlmIChtX2RyYXdp
bmdBcmVhKQorICAgICAgICBtX2RyYXdpbmdBcmVhLT5kaWRDaGFuZ2VWaWV3RXhwb3NlZFJlY3Qo
KTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0QWx3YXlzU2hvd3NIb3Jpem9u
dGFsU2Nyb2xsZXIoYm9vbCBhbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcikKK3sKKyAgICBp
ZiAoYWx3YXlzU2hvd3NIb3Jpem9udGFsU2Nyb2xsZXIgPT0gbV9hbHdheXNTaG93c0hvcml6b250
YWxTY3JvbGxlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9hbHdheXNTaG93c0hvcml6b250
YWxTY3JvbGxlciA9IGFsd2F5c1Nob3dzSG9yaXpvbnRhbFNjcm9sbGVyOworCisgICAgaWYgKCFo
YXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlOjpTZXRBbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcihhbHdheXNTaG93c0hv
cml6b250YWxTY3JvbGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0QWx3YXlzU2hv
d3NWZXJ0aWNhbFNjcm9sbGVyKGJvb2wgYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyKQorewor
ICAgIGlmIChhbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIgPT0gbV9hbHdheXNTaG93c1ZlcnRp
Y2FsU2Nyb2xsZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1fYWx3YXlzU2hvd3NWZXJ0aWNh
bFNjcm9sbGVyID0gYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpTZXRBbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIoYWx3YXlzU2hvd3NWZXJ0aWNh
bFNjcm9sbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpsaXN0ZW5Gb3JMYXlvdXRNaWxl
c3RvbmVzKE9wdGlvblNldDxXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmU+IG1pbGVzdG9uZXMpCit7
ICAgIAorICAgIGlmIChtaWxlc3RvbmVzID09IG1fb2JzZXJ2ZWRMYXlvdXRNaWxlc3RvbmVzKQor
ICAgICAgICByZXR1cm47CisKKyAgICBtX29ic2VydmVkTGF5b3V0TWlsZXN0b25lcyA9IG1pbGVz
dG9uZXM7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6Okxpc3RlbkZvckxheW91dE1pbGVzdG9uZXMo
bWlsZXN0b25lcykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0U3VwcHJlc3NTY3JvbGxi
YXJBbmltYXRpb25zKGJvb2wgc3VwcHJlc3NBbmltYXRpb25zKQoreworICAgIGlmIChzdXBwcmVz
c0FuaW1hdGlvbnMgPT0gbV9zdXBwcmVzc1Njcm9sbGJhckFuaW1hdGlvbnMpCisgICAgICAgIHJl
dHVybjsKKworICAgIG1fc3VwcHJlc3NTY3JvbGxiYXJBbmltYXRpb25zID0gc3VwcHJlc3NBbmlt
YXRpb25zOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47
CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRTdXBwcmVzc1Njcm9sbGJhckFuaW1h
dGlvbnMoc3VwcHJlc3NBbmltYXRpb25zKSk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpydWJi
ZXJCYW5kc0F0TGVmdCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcnViYmVyQmFuZHNBdExlZnQ7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRSdWJiZXJCYW5kc0F0TGVmdChib29sIHJ1YmJl
ckJhbmRzQXRMZWZ0KQoreworICAgIG1fcnViYmVyQmFuZHNBdExlZnQgPSBydWJiZXJCYW5kc0F0
TGVmdDsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OnJ1YmJlckJhbmRzQXRSaWdodCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fcnViYmVyQmFuZHNBdFJpZ2h0OworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6c2V0UnViYmVyQmFuZHNBdFJpZ2h0KGJvb2wgcnViYmVyQmFuZHNBdFJpZ2h0KQorewor
ICAgIG1fcnViYmVyQmFuZHNBdFJpZ2h0ID0gcnViYmVyQmFuZHNBdFJpZ2h0OworfQorCitib29s
IFdlYlBhZ2VQcm94eTo6cnViYmVyQmFuZHNBdFRvcCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1f
cnViYmVyQmFuZHNBdFRvcDsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFJ1YmJlckJhbmRz
QXRUb3AoYm9vbCBydWJiZXJCYW5kc0F0VG9wKQoreworICAgIG1fcnViYmVyQmFuZHNBdFRvcCA9
IHJ1YmJlckJhbmRzQXRUb3A7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpydWJiZXJCYW5kc0F0
Qm90dG9tKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9ydWJiZXJCYW5kc0F0Qm90dG9tOworfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0UnViYmVyQmFuZHNBdEJvdHRvbShib29sIHJ1YmJlckJh
bmRzQXRCb3R0b20pCit7CisgICAgbV9ydWJiZXJCYW5kc0F0Qm90dG9tID0gcnViYmVyQmFuZHNB
dEJvdHRvbTsKK30KKyAgICAKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRFbmFibGVWZXJ0aWNhbFJ1
YmJlckJhbmRpbmcoYm9vbCBlbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmcpCit7CisgICAgaWYg
KGVuYWJsZVZlcnRpY2FsUnViYmVyQmFuZGluZyA9PSBtX2VuYWJsZVZlcnRpY2FsUnViYmVyQmFu
ZGluZykKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9lbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRp
bmcgPSBlbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmc7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQ
cm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpT
ZXRFbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmcoZW5hYmxlVmVydGljYWxSdWJiZXJCYW5kaW5n
KSk7Cit9CisgICAgCitib29sIFdlYlBhZ2VQcm94eTo6dmVydGljYWxSdWJiZXJCYW5kaW5nSXNF
bmFibGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9lbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRp
bmc7Cit9CisgICAgCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0RW5hYmxlSG9yaXpvbnRhbFJ1YmJl
ckJhbmRpbmcoYm9vbCBlbmFibGVIb3Jpem9udGFsUnViYmVyQmFuZGluZykKK3sKKyAgICBpZiAo
ZW5hYmxlSG9yaXpvbnRhbFJ1YmJlckJhbmRpbmcgPT0gbV9lbmFibGVIb3Jpem9udGFsUnViYmVy
QmFuZGluZykKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9lbmFibGVIb3Jpem9udGFsUnViYmVy
QmFuZGluZyA9IGVuYWJsZUhvcml6b250YWxSdWJiZXJCYW5kaW5nOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6U2V0RW5hYmxlSG9yaXpvbnRhbFJ1YmJlckJhbmRpbmcoZW5hYmxlSG9yaXpvbnRhbFJ1
YmJlckJhbmRpbmcpKTsKK30KKyAgICAKK2Jvb2wgV2ViUGFnZVByb3h5Ojpob3Jpem9udGFsUnVi
YmVyQmFuZGluZ0lzRW5hYmxlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fZW5hYmxlSG9yaXpv
bnRhbFJ1YmJlckJhbmRpbmc7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRCYWNrZ3JvdW5k
RXh0ZW5kc0JleW9uZFBhZ2UoYm9vbCBiYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2UpCit7Cisg
ICAgaWYgKGJhY2tncm91bmRFeHRlbmRzQmV5b25kUGFnZSA9PSBtX2JhY2tncm91bmRFeHRlbmRz
QmV5b25kUGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9iYWNrZ3JvdW5kRXh0ZW5kc0Jl
eW9uZFBhZ2UgPSBiYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2U7CisKKyAgICBpZiAoIWhhc1J1
bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlOjpTZXRCYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2UoYmFja2dyb3VuZEV4dGVuZHNCZXlv
bmRQYWdlKSk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpiYWNrZ3JvdW5kRXh0ZW5kc0JleW9u
ZFBhZ2UoKSBjb25zdAoreworICAgIHJldHVybiBtX2JhY2tncm91bmRFeHRlbmRzQmV5b25kUGFn
ZTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFBhZ2luYXRpb25Nb2RlKFdlYkNvcmU6OlBh
Z2luYXRpb246Ok1vZGUgbW9kZSkKK3sKKyAgICBpZiAobW9kZSA9PSBtX3BhZ2luYXRpb25Nb2Rl
KQorICAgICAgICByZXR1cm47CisKKyAgICBtX3BhZ2luYXRpb25Nb2RlID0gbW9kZTsKKworICAg
IGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlNldFBhZ2luYXRpb25Nb2RlKG1vZGUpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldFBhZ2luYXRpb25CZWhhdmVzTGlrZUNvbHVtbnMoYm9vbCBiZWhhdmVzTGlr
ZUNvbHVtbnMpCit7CisgICAgaWYgKGJlaGF2ZXNMaWtlQ29sdW1ucyA9PSBtX3BhZ2luYXRpb25C
ZWhhdmVzTGlrZUNvbHVtbnMpCisgICAgICAgIHJldHVybjsKKworICAgIG1fcGFnaW5hdGlvbkJl
aGF2ZXNMaWtlQ29sdW1ucyA9IGJlaGF2ZXNMaWtlQ29sdW1uczsKKworICAgIGlmICghaGFzUnVu
bmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OlNldFBhZ2luYXRpb25CZWhhdmVzTGlrZUNvbHVtbnMoYmVoYXZlc0xpa2VDb2x1bW5zKSk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRQYWdlTGVuZ3RoKGRvdWJsZSBwYWdlTGVuZ3Ro
KQoreworICAgIGlmIChwYWdlTGVuZ3RoID09IG1fcGFnZUxlbmd0aCkKKyAgICAgICAgcmV0dXJu
OworCisgICAgbV9wYWdlTGVuZ3RoID0gcGFnZUxlbmd0aDsKKworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OlNldFBhZ2VMZW5ndGgocGFnZUxlbmd0aCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0
R2FwQmV0d2VlblBhZ2VzKGRvdWJsZSBnYXApCit7CisgICAgaWYgKGdhcCA9PSBtX2dhcEJldHdl
ZW5QYWdlcykKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9nYXBCZXR3ZWVuUGFnZXMgPSBnYXA7
CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRHYXBCZXR3ZWVuUGFnZXMoZ2FwKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpzZXRQYWdpbmF0aW9uTGluZUdyaWRFbmFibGVkKGJvb2wgbGluZUdy
aWRFbmFibGVkKQoreworICAgIGlmIChsaW5lR3JpZEVuYWJsZWQgPT0gbV9wYWdpbmF0aW9uTGlu
ZUdyaWRFbmFibGVkKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgbV9wYWdpbmF0aW9uTGlu
ZUdyaWRFbmFibGVkID0gbGluZUdyaWRFbmFibGVkOworICAgIAorICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OlNldFBhZ2luYXRpb25MaW5lR3JpZEVuYWJsZWQobGluZUdyaWRFbmFibGVkKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpwYWdlU2NhbGVGYWN0b3JEaWRDaGFuZ2UoZG91YmxlIHNjYWxlRmFj
dG9yKQoreworICAgIG1fcGFnZVNjYWxlRmFjdG9yID0gc2NhbGVGYWN0b3I7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpwbHVnaW5TY2FsZUZhY3RvckRpZENoYW5nZShkb3VibGUgcGx1Z2luU2Nh
bGVGYWN0b3IpCit7CisgICAgbV9wbHVnaW5TY2FsZUZhY3RvciA9IHBsdWdpblNjYWxlRmFjdG9y
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cGx1Z2luWm9vbUZhY3RvckRpZENoYW5nZShkb3Vi
bGUgcGx1Z2luWm9vbUZhY3RvcikKK3sKKyAgICBtX3BsdWdpblpvb21GYWN0b3IgPSBwbHVnaW5a
b29tRmFjdG9yOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZmluZFN0cmluZ01hdGNoZXMoY29u
c3QgU3RyaW5nJiBzdHJpbmcsIE9wdGlvblNldDxGaW5kT3B0aW9ucz4gb3B0aW9ucywgdW5zaWdu
ZWQgbWF4TWF0Y2hDb3VudCkKK3sKKyAgICBpZiAoc3RyaW5nLmlzRW1wdHkoKSkgeworICAgICAg
ICBkaWRGaW5kU3RyaW5nTWF0Y2hlcyhzdHJpbmcsIFZlY3RvcjxWZWN0b3I8V2ViQ29yZTo6SW50
UmVjdD4+ICgpLCAwKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OkZpbmRTdHJpbmdNYXRjaGVzKHN0cmluZywgb3B0aW9ucywgbWF4TWF0Y2hD
b3VudCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZmluZFN0cmluZyhjb25zdCBTdHJpbmcm
IHN0cmluZywgT3B0aW9uU2V0PEZpbmRPcHRpb25zPiBvcHRpb25zLCB1bnNpZ25lZCBtYXhNYXRj
aENvdW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrRnVuY3Rpb24p
Cit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpGaW5kU3RyaW5n
KHN0cmluZywgb3B0aW9ucywgbWF4TWF0Y2hDb3VudCksIFdURk1vdmUoY2FsbGJhY2tGdW5jdGlv
bikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0SW1hZ2VGb3JGaW5kTWF0Y2goaW50MzJf
dCBtYXRjaEluZGV4KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkdldEltYWdlRm9y
RmluZE1hdGNoKG1hdGNoSW5kZXgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNlbGVjdEZp
bmRNYXRjaChpbnQzMl90IG1hdGNoSW5kZXgpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6U2VsZWN0RmluZE1hdGNoKG1hdGNoSW5kZXgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OmluZGljYXRlRmluZE1hdGNoKGludDMyX3QgbWF0Y2hJbmRleCkKK3sKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlOjpJbmRpY2F0ZUZpbmRNYXRjaChtYXRjaEluZGV4KSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpoaWRlRmluZFVJKCkKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
OjpIaWRlRmluZFVJKCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y291bnRTdHJpbmdNYXRj
aGVzKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBPcHRpb25TZXQ8RmluZE9wdGlvbnM+IG9wdGlvbnMs
IHVuc2lnbmVkIG1heE1hdGNoQ291bnQpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
KQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpDb3VudFN0
cmluZ01hdGNoZXMoc3RyaW5nLCBvcHRpb25zLCBtYXhNYXRjaENvdW50KSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpyZXBsYWNlTWF0Y2hlcyhWZWN0b3I8dWludDMyX3Q+JiYgbWF0Y2hJbmRp
Y2VzLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50VGV4dCwgYm9vbCBzZWxlY3Rpb25Pbmx5LCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90KT4mJiBjYWxsYmFjaykKK3sKKyAgICBzZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlJlcGxhY2VNYXRjaGVzKFdURk1vdmUo
bWF0Y2hJbmRpY2VzKSwgcmVwbGFjZW1lbnRUZXh0LCBzZWxlY3Rpb25Pbmx5KSwgV1RGTW92ZShj
YWxsYmFjaykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bGF1bmNoSW5pdGlhbFByb2Nlc3NJ
Zk5lY2Vzc2FyeSgpCit7CisgICAgaWYgKHByb2Nlc3MoKS5pc0R1bW15UHJvY2Vzc1Byb3h5KCkp
CisgICAgICAgIGxhdW5jaFByb2Nlc3MoeyB9LCBQcm9jZXNzTGF1bmNoUmVhc29uOjpJbml0aWFs
UHJvY2Vzcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpydW5KYXZhU2NyaXB0SW5NYWluRnJh
bWUoUnVuSmF2YVNjcmlwdFBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKEV4cGVjdGVkPFJlZlB0cjxBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIFdlYkNv
cmU6OkV4Y2VwdGlvbkRldGFpbHM+JiYpPiYmIGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgcnVu
SmF2YVNjcmlwdEluRnJhbWVJblNjcmlwdFdvcmxkKFdURk1vdmUocGFyYW1ldGVycyksIHN0ZDo6
bnVsbG9wdCwgQVBJOjpDb250ZW50V29ybGQ6OnBhZ2VDb250ZW50V29ybGQoKSwgV1RGTW92ZShj
YWxsYmFja0Z1bmN0aW9uKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpydW5KYXZhU2NyaXB0
SW5GcmFtZUluU2NyaXB0V29ybGQoUnVuSmF2YVNjcmlwdFBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJz
LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgQVBJOjpD
b250ZW50V29ybGQmIHdvcmxkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFJlZlB0
cjxBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4sIFdlYkNvcmU6OkV4Y2VwdGlvbkRldGFpbHM+
JiYpPiYmIGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgLy8gRm9yIGJhY2t3YXJkLWNvbXBhdGli
aWxpdHkgc3VwcG9ydCBydW5uaW5nIHNjcmlwdCBpbiBhIFdlYlZpZXcgd2hpY2ggaGFzIG5vdCBk
b25lIGFueSBsb2FkcyB5ZXRzLgorICAgIGxhdW5jaEluaXRpYWxQcm9jZXNzSWZOZWNlc3Nhcnko
KTsKKworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuIGNhbGxi
YWNrRnVuY3Rpb24oeyBudWxscHRyIH0pOworCisgICAgUHJvY2Vzc1Rocm90dGxlcjo6QWN0aXZp
dHlWYXJpYW50IGFjdGl2aXR5OworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKHBh
Z2VDbGllbnQoKS5jYW5UYWtlRm9yZWdyb3VuZEFzc2VydGlvbnMoKSkKKyAgICAgICAgYWN0aXZp
dHkgPSBtX3Byb2Nlc3MtPnRocm90dGxlcigpLmZvcmVncm91bmRBY3Rpdml0eSgiV2ViUGFnZVBy
b3h5OjpydW5KYXZhU2NyaXB0SW5GcmFtZUluU2NyaXB0V29ybGQiX3MpOworI2VuZGlmCisKKyAg
ICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlJ1bkphdmFTY3JpcHRJbkZy
YW1lSW5TY3JpcHRXb3JsZChwYXJhbWV0ZXJzLCBmcmFtZUlELCB3b3JsZC53b3JsZERhdGEoKSks
IFthY3Rpdml0eSA9IFdURk1vdmUoYWN0aXZpdHkpLCBjYWxsYmFja0Z1bmN0aW9uID0gV1RGTW92
ZShjYWxsYmFja0Z1bmN0aW9uKV0gKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YVJlZmVy
ZW5jZSwgc3RkOjpvcHRpb25hbDxFeGNlcHRpb25EZXRhaWxzPiYmIGRldGFpbHMpIG11dGFibGUg
eworICAgICAgICBpZiAoZGV0YWlscykKKyAgICAgICAgICAgIHJldHVybiBjYWxsYmFja0Z1bmN0
aW9uKG1ha2VVbmV4cGVjdGVkKFdURk1vdmUoKmRldGFpbHMpKSk7CisgICAgICAgIGlmIChkYXRh
UmVmZXJlbmNlLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJldHVybiBjYWxsYmFja0Z1bmN0aW9u
KHsgbnVsbHB0ciB9KTsKKyAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGRhdGE7CisgICAgICAgIGRh
dGEucmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShkYXRhUmVmZXJlbmNlLnNpemUoKSk7CisgICAgICAg
IGRhdGEuYXBwZW5kKGRhdGFSZWZlcmVuY2UuZGF0YSgpLCBkYXRhUmVmZXJlbmNlLnNpemUoKSk7
CisgICAgICAgIGNhbGxiYWNrRnVuY3Rpb24oeyBBUEk6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6
YWRvcHQoV1RGTW92ZShkYXRhKSkucHRyKCkgfSk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpnZXRSZW5kZXJUcmVlRXh0ZXJuYWxSZXByZXNlbnRhdGlvbihDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFN0cmluZyYpPiYmIGNhbGxiYWNrKQoreworICAgIHNlbmRXaXRoQXN5
bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6R2V0UmVuZGVyVHJlZUV4dGVybmFsUmVwcmVzZW50
YXRpb24oKSwgV1RGTW92ZShjYWxsYmFjaykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0
U291cmNlRm9yRnJhbWUoV2ViRnJhbWVQcm94eSogZnJhbWUsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgU3RyaW5nJik+JiYgY2FsbGJhY2spCit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJQYWdlOjpHZXRTb3VyY2VGb3JGcmFtZShmcmFtZS0+ZnJhbWVJRCgpKSwg
V1RGTW92ZShjYWxsYmFjaykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0Q29udGVudHNB
c1N0cmluZyhDb250ZW50QXNTdHJpbmdJbmNsdWRlc0NoaWxkRnJhbWVzIGluY2x1ZGVzQ2hpbGRG
cmFtZXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYgY2FsbGJhY2sp
Cit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpHZXRDb250ZW50
c0FzU3RyaW5nKGluY2x1ZGVzQ2hpbGRGcmFtZXMpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9CisK
KyNpZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRDb250ZW50c0FzQXR0
cmlidXRlZFN0cmluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OkF0dHJp
YnV0ZWRTdHJpbmcmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIWhhc1J1bm5p
bmdQcm9jZXNzKCkpIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFn
ZTo6R2V0Q29udGVudHNBc0F0dHJpYnV0ZWRTdHJpbmcoKSwgV1RGTW92ZShjb21wbGV0aW9uSGFu
ZGxlcikpOworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRBbGxGcmFtZXMoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChGcmFtZVRyZWVOb2RlRGF0YSYmKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkdldEFs
bEZyYW1lcygpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpnZXRCeXRlY29kZVByb2ZpbGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBT
dHJpbmcmKT4mJiBjYWxsYmFjaykKK3sKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6
OldlYlBhZ2U6OkdldEJ5dGVjb2RlUHJvZmlsZSgpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9CisK
K3ZvaWQgV2ViUGFnZVByb3h5OjpnZXRTYW1wbGluZ1Byb2ZpbGVyT3V0cHV0KENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYgY2FsbGJhY2spCit7CisgICAgc2VuZFdpdGhB
c3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpHZXRTYW1wbGluZ1Byb2ZpbGVyT3V0cHV0KCks
IFdURk1vdmUoY2FsbGJhY2spKTsKK30KKworc3RhdGljIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3Qgc3RkOjpvcHRpb25hbDxJUEM6OkRhdGFSZWZlcmVuY2U+JiBkYXRhKT4gdG9BUElEYXRh
Q2FsbGJhY2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZChBUEk6OkRhdGEqKT4mJiBjYWxsYmFjaykK
K3sKKyAgICByZXR1cm4gW2NhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldIChjb25zdCBzdGQ6
Om9wdGlvbmFsPElQQzo6RGF0YVJlZmVyZW5jZT4mIGRhdGEpIG11dGFibGUgeworICAgICAgICBj
YWxsYmFjayhkYXRhID8gQVBJOjpEYXRhOjpjcmVhdGUoZGF0YS0+ZGF0YSgpLCBkYXRhLT5zaXpl
KCkpLnB0cigpIDogbnVsbHB0cik7CisgICAgfTsKK30KKworI2lmIEVOQUJMRShNSFRNTCkKK3Zv
aWQgV2ViUGFnZVByb3h5OjpnZXRDb250ZW50c0FzTUhUTUxEYXRhKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoQVBJOjpEYXRhKik+JiYgY2FsbGJhY2spCit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJQYWdlOjpHZXRDb250ZW50c0FzTUhUTUxEYXRhKCksIHRvQVBJRGF0YUNh
bGxiYWNrKFdURk1vdmUoY2FsbGJhY2spKSk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJv
eHk6OmdldFNlbGVjdGlvbk9yQ29udGVudHNBc1N0cmluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGNvbnN0IFN0cmluZyYpPiYmIGNhbGxiYWNrKQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShN
ZXNzYWdlczo6V2ViUGFnZTo6R2V0U2VsZWN0aW9uT3JDb250ZW50c0FzU3RyaW5nKCksIGNhbGxi
YWNrKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmdldFNlbGVjdGlvbkFzV2ViQXJjaGl2ZURh
dGEoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChBUEk6OkRhdGEqKT4mJiBjYWxsYmFjaykKK3sKKyAg
ICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkdldFNlbGVjdGlvbkFzV2Vi
QXJjaGl2ZURhdGEoKSwgdG9BUElEYXRhQ2FsbGJhY2soV1RGTW92ZShjYWxsYmFjaykpKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmdldE1haW5SZXNvdXJjZURhdGFPZkZyYW1lKFdlYkZyYW1l
UHJveHkqIGZyYW1lLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEFQSTo6RGF0YSopPiYmIGNhbGxi
YWNrKQoreworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxscHRy
KTsKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkdldE1haW5SZXNv
dXJjZURhdGFPZkZyYW1lKGZyYW1lLT5mcmFtZUlEKCkpLCB0b0FQSURhdGFDYWxsYmFjayhXVEZN
b3ZlKGNhbGxiYWNrKSkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0UmVzb3VyY2VEYXRh
RnJvbUZyYW1lKFdlYkZyYW1lUHJveHkmIGZyYW1lLCBBUEk6OlVSTCogcmVzb3VyY2VVUkwsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoQVBJOjpEYXRhKik+JiYgY2FsbGJhY2spCit7CisgICAgc2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpHZXRSZXNvdXJjZURhdGFGcm9tRnJh
bWUoZnJhbWUuZnJhbWVJRCgpLCByZXNvdXJjZVVSTC0+c3RyaW5nKCkpLCB0b0FQSURhdGFDYWxs
YmFjayhXVEZNb3ZlKGNhbGxiYWNrKSkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0V2Vi
QXJjaGl2ZU9mRnJhbWUoV2ViRnJhbWVQcm94eSogZnJhbWUsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoQVBJOjpEYXRhKik+JiYgY2FsbGJhY2spCit7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAg
cmV0dXJuIGNhbGxiYWNrKG51bGxwdHIpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdl
czo6V2ViUGFnZTo6R2V0V2ViQXJjaGl2ZU9mRnJhbWUoZnJhbWUtPmZyYW1lSUQoKSksIHRvQVBJ
RGF0YUNhbGxiYWNrKFdURk1vdmUoY2FsbGJhY2spKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
Ojpmb3JjZVJlcGFpbnQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQorewor
ICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7
CisKKyAgICBtX2RyYXdpbmdBcmVhLT53YWl0Rm9yQmFja2luZ1N0b3JlVXBkYXRlT25OZXh0UGFp
bnQoKTsKKworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6Rm9yY2VS
ZXBhaW50KCksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNhbGxiYWNr
ID0gV1RGTW92ZShjYWxsYmFjayldICgpIG11dGFibGUgeworICAgICAgICBjYWxsQWZ0ZXJOZXh0
UHJlc2VudGF0aW9uVXBkYXRlKFtjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spXSAoYXV0bykg
bXV0YWJsZSB7CisgICAgICAgICAgICBjYWxsYmFjaygpOworICAgICAgICB9KTsKKyAgICB9KTsK
K30KKworc3RhdGljIE9wdGlvblNldDxJUEM6OlNlbmRPcHRpb24+IHByaW50aW5nU2VuZE9wdGlv
bnMoYm9vbCBpc1BlcmZvcm1pbmdET01QcmludE9wZXJhdGlvbikKK3sKKyAgICBpZiAoaXNQZXJm
b3JtaW5nRE9NUHJpbnRPcGVyYXRpb24pCisgICAgICAgIHJldHVybiBJUEM6OlNlbmRPcHRpb246
OkRpc3BhdGNoTWVzc2FnZUV2ZW5XaGVuV2FpdGluZ0ZvclN5bmNSZXBseTsKKworICAgIHJldHVy
biB7IH07Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpwcmVmZXJlbmNlc0RpZENoYW5nZSgpCit7
CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICB1
cGRhdGVUaHJvdHRsZVN0YXRlKCk7CisgICAgdXBkYXRlSGlkZGVuUGFnZVRocm90dGxpbmdBdXRv
SW5jcmVhc2VzKCk7CisKKyAgICBwYWdlQ2xpZW50KCkucHJlZmVyZW5jZXNEaWRDaGFuZ2UoKTsK
KworICAgIC8vIEZJWE1FOiBJdCBwcm9iYWJseSBtYWtlcyBtb3JlIHNlbnNlIHRvIHNlbmQgaW5k
aXZpZHVhbCBwcmVmZXJlbmNlIGNoYW5nZXMuCisgICAgLy8gSG93ZXZlciwgV2ViS2l0VGVzdFJ1
bm5lciBkZXBlbmRzIG9uIGdldHRpbmcgYSBwcmVmZXJlbmNlIGNoYW5nZSBub3RpZmljYXRpb24K
KyAgICAvLyBldmVuIGlmIG5vdGhpbmcgY2hhbmdlZCBpbiBVSSBwcm9jZXNzLCBzbyB0aGF0IG92
ZXJyaWRlcyBnZXQgcmVtb3ZlZC4KKworICAgIC8vIFByZWZlcmVuY2VzIG5lZWQgdG8gYmUgdXBk
YXRlZCBkdXJpbmcgc3luY2hyb25vdXMgcHJpbnRpbmcgdG8gbWFrZSAicHJpbnQgYmFja2dyb3Vu
ZHMiIHByZWZlcmVuY2Ugd29yayB3aGVuIHRvZ2dsZWQgZnJvbSBhIHByaW50IGRpYWxvZyBjaGVj
a2JveC4KKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpQcmVmZXJlbmNlc0RpZENoYW5nZShw
cmVmZXJlbmNlc1N0b3JlKCkpLCBwcmludGluZ1NlbmRPcHRpb25zKG1faXNQZXJmb3JtaW5nRE9N
UHJpbnRPcGVyYXRpb24pKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENyZWF0ZU1haW5G
cmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkKK3sKKyAgICAvLyBUaGUgRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvblN5bmMgSVBDIGlzIHN5bmNocm9ub3VzIGFuZCBtYXkgdGhlcmVm
b3JlIGdldCBwcm9jZXNzZWQgYmVmb3JlIHRoZSBEaWRDcmVhdGVNYWluRnJhbWUgb25lLgorICAg
IC8vIFdoZW4gdGhpcyBoYXBwZW5zLCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uU3lu
YygpIGNhbGxzIGRpZENyZWF0ZU1haW5GcmFtZSgpIGFuZCB3ZSBuZWVkIHRvIGlnbm9yZSB0aGUg
RGlkQ3JlYXRlTWFpbkZyYW1lCisgICAgLy8gSVBDIHdoZW4gaXQgbGF0ZXIgZ2V0cyBwcm9jZXNz
ZWQuCisgICAgaWYgKG1fbWFpbkZyYW1lICYmIG1fbWFpbkZyYW1lLT5mcmFtZUlEKCkgPT0gZnJh
bWVJRCkKKyAgICAgICAgcmV0dXJuOworCisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0
b3IocGFnZUNsaWVudCgpKTsKKworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCAhbV9tYWlu
RnJhbWUpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtX3Byb2Nlc3MtPmNhbkNyZWF0
ZUZyYW1lKGZyYW1lSUQpKTsKKworICAgIG1fbWFpbkZyYW1lID0gV2ViRnJhbWVQcm94eTo6Y3Jl
YXRlKCp0aGlzLCBmcmFtZUlEKTsKKworICAgIC8vIEFkZCB0aGUgZnJhbWUgdG8gdGhlIHByb2Nl
c3Mgd2lkZSBtYXAuCisgICAgbV9wcm9jZXNzLT5mcmFtZUNyZWF0ZWQoZnJhbWVJRCwgKm1fbWFp
bkZyYW1lKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENyZWF0ZVN1YmZyYW1lKEZyYW1l
SWRlbnRpZmllciBmcmFtZUlEKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9y
KHBhZ2VDbGllbnQoKSk7CisKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgbV9tYWluRnJh
bWUpOworCisgICAgLy8gVGhlIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25TeW5jIElQ
QyBpcyBzeW5jaHJvbm91cyBhbmQgbWF5IHRoZXJlZm9yZSBnZXQgcHJvY2Vzc2VkIGJlZm9yZSB0
aGUgRGlkQ3JlYXRlU3ViZnJhbWUgb25lLgorICAgIC8vIFdoZW4gdGhpcyBoYXBwZW5zLCBkZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uU3luYygpIGNhbGxzIGRpZENyZWF0ZVN1YmZyYW1l
KCkgYW5kIHdlIG5lZWQgdG8gaWdub3JlIHRoZSBEaWRDcmVhdGVTdWJmcmFtZQorICAgIC8vIElQ
QyB3aGVuIGl0IGxhdGVyIGdldHMgcHJvY2Vzc2VkLgorICAgIGlmIChtX3Byb2Nlc3MtPndlYkZy
YW1lKGZyYW1lSUQpKQorICAgICAgICByZXR1cm47CisKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJv
Y2VzcywgbV9wcm9jZXNzLT5jYW5DcmVhdGVGcmFtZShmcmFtZUlEKSk7CisgICAgCisgICAgYXV0
byBzdWJGcmFtZSA9IFdlYkZyYW1lUHJveHk6OmNyZWF0ZSgqdGhpcywgZnJhbWVJRCk7CisKKyAg
ICAvLyBBZGQgdGhlIGZyYW1lIHRvIHRoZSBwcm9jZXNzIHdpZGUgbWFwLgorICAgIG1fcHJvY2Vz
cy0+ZnJhbWVDcmVhdGVkKGZyYW1lSUQsIHN1YkZyYW1lLmdldCgpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OmRpZENyZWF0ZVdpbmRvdyhGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgR2xvYmFs
V2luZG93SWRlbnRpZmllciYmIHdpbmRvd0lkZW50aWZpZXIpCit7Cit9CisKK2RvdWJsZSBXZWJQ
YWdlUHJveHk6OmVzdGltYXRlZFByb2dyZXNzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wYWdl
TG9hZFN0YXRlLmVzdGltYXRlZFByb2dyZXNzKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpk
aWRTdGFydFByb2dyZXNzKCkKK3sKKyAgICBBU1NFUlQoIW1faXNDbG9zZWQpOworCisgICAgUGFn
ZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIGF1dG8gdHJh
bnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rpb24oKTsKKyAgICBtX3BhZ2VMb2Fk
U3RhdGUuZGlkU3RhcnRQcm9ncmVzcyh0cmFuc2FjdGlvbik7CisKKyAgICBtX3BhZ2VMb2FkU3Rh
dGUuY29tbWl0Q2hhbmdlcygpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlUHJv
Z3Jlc3MoZG91YmxlIHZhbHVlKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9y
KHBhZ2VDbGllbnQoKSk7CisKKyAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRl
LnRyYW5zYWN0aW9uKCk7CisgICAgbV9wYWdlTG9hZFN0YXRlLmRpZENoYW5nZVByb2dyZXNzKHRy
YW5zYWN0aW9uLCB2YWx1ZSk7CisKKyAgICBtX3BhZ2VMb2FkU3RhdGUuY29tbWl0Q2hhbmdlcygp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmluaXNoUHJvZ3Jlc3MoKQoreworICAgIFBh
Z2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAgICBhdXRvIHRy
YW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgbV9wYWdlTG9h
ZFN0YXRlLmRpZEZpbmlzaFByb2dyZXNzKHRyYW5zYWN0aW9uKTsKKworICAgIG1fcGFnZUxvYWRT
dGF0ZS5jb21taXRDaGFuZ2VzKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXROZXR3b3Jr
UmVxdWVzdHNJblByb2dyZXNzKGJvb2wgbmV0d29ya1JlcXVlc3RzSW5Qcm9ncmVzcykKK3sKKyAg
ICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAg
bV9wYWdlTG9hZFN0YXRlLnNldE5ldHdvcmtSZXF1ZXN0c0luUHJvZ3Jlc3ModHJhbnNhY3Rpb24s
IG5ldHdvcmtSZXF1ZXN0c0luUHJvZ3Jlc3MpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cHJl
Y29ubmVjdFRvKGNvbnN0IFVSTCYgdXJsKQoreworICAgIGlmICghbV93ZWJzaXRlRGF0YVN0b3Jl
LT5jb25maWd1cmF0aW9uKCkuYWxsb3dzU2VydmVyUHJlY29ubmVjdCgpKQorICAgICAgICByZXR1
cm47CisKKyAgICBhdXRvIHN0b3JlZENyZWRlbnRpYWxzUG9saWN5ID0gbV9jYW5Vc2VDcmVkZW50
aWFsU3RvcmFnZSA/IFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5OjpVc2UgOiBXZWJD
b3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeTo6RG9Ob3RVc2U7CisKKyAgICB3ZWJzaXRlRGF0
YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5wcmVjb25uZWN0VG8oc2Vzc2lvbklEKCksIGlkZW50
aWZpZXIoKSwgd2ViUGFnZUlEKCksIHVybCwgdXNlckFnZW50KCksIHN0b3JlZENyZWRlbnRpYWxz
UG9saWN5LCBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKCksIG1fbGFzdE5hdmlnYXRpb25X
YXNBcHBJbml0aWF0ZWQgPyBMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZDo6WWVzIDogTGFz
dE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQ6Ok5vKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnNldENhblVzZUNyZWRlbnRpYWxTdG9yYWdlKGJvb2wgY2FuVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
Cit7CisgICAgbV9jYW5Vc2VDcmVkZW50aWFsU3RvcmFnZSA9IGNhblVzZUNyZWRlbnRpYWxTdG9y
YWdlOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldENhblVzZUNyZWRlbnRpYWxTdG9y
YWdlKGNhblVzZUNyZWRlbnRpYWxTdG9yYWdlKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpk
aWREZXN0cm95TmF2aWdhdGlvbih1aW50NjRfdCBuYXZpZ2F0aW9uSUQpCit7CisgICAgTUVTU0FH
RV9DSEVDSyhtX3Byb2Nlc3MsIFdlYk5hdmlnYXRpb25TdGF0ZTo6TmF2aWdhdGlvbk1hcDo6aXNW
YWxpZEtleShuYXZpZ2F0aW9uSUQpKTsKKworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVj
dG9yKHBhZ2VDbGllbnQoKSk7CisKKyAgICAvLyBPbiBwcm9jZXNzLXN3YXAsIHRoZSBwcmV2aW91
cyBwcm9jZXNzIHRyaWVzIHRvIGRlc3Ryb3kgdGhlIG5hdmlnYXRpb24gYnV0IHRoZSBwcm92aXNp
b25hbCBwcm9jZXNzIGlzIGFjdHVhbGx5IHRha2luZyBvdmVyIHRoZSBuYXZpZ2F0aW9uLgorICAg
IGlmIChtX3Byb3Zpc2lvbmFsUGFnZSAmJiBtX3Byb3Zpc2lvbmFsUGFnZS0+bmF2aWdhdGlvbklE
KCkgPT0gbmF2aWdhdGlvbklEKQorICAgICAgICByZXR1cm47CisKKyAgICBtX25hdmlnYXRpb25T
dGF0ZS0+ZGlkRGVzdHJveU5hdmlnYXRpb24obmF2aWdhdGlvbklEKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVy
IGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFJlc291cmNlUmVxdWVzdCYmIHJl
cXVlc3QsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgVVJMJiYgdXJsLCBVUkwmJiB1bnJlYWNoYWJs
ZVVSTCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIGRpZFN0YXJ0UHJvdmlzaW9u
YWxMb2FkRm9yRnJhbWVTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgZnJhbWVJRCwgV1RGTW92
ZShmcmFtZUluZm8pLCBXVEZNb3ZlKHJlcXVlc3QpLCBuYXZpZ2F0aW9uSUQsIFdURk1vdmUodXJs
KSwgV1RGTW92ZSh1bnJlYWNoYWJsZVVSTCksIHVzZXJEYXRhKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWVTaGFyZWQoUmVmPFdlYlByb2Nl
c3NQcm94eT4mJiBwcm9jZXNzLCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0
YSYmIGZyYW1lSW5mbywgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgdWludDY0X3QgbmF2aWdh
dGlvbklELCBVUkwmJiB1cmwsIFVSTCYmIHVucmVhY2hhYmxlVVJMLCBjb25zdCBVc2VyRGF0YSYg
dXNlckRhdGEpCit7CisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVu
dCgpKTsKKworICAgIGF1dG8gZnJhbWUgPSBtYWtlUmVmUHRyKHByb2Nlc3MtPndlYkZyYW1lKGZy
YW1lSUQpKTsKKyAgICBNRVNTQUdFX0NIRUNLKHByb2Nlc3MsIGZyYW1lKTsKKyAgICBNRVNTQUdF
X0NIRUNLX1VSTChwcm9jZXNzLCB1cmwpOworCisgICAgLy8gSWYgdGhlIHBhZ2Ugc3RhcnRzIGEg
bmV3IG1haW4gZnJhbWUgcHJvdmlzaW9uYWwgbG9hZCwgdGhlbiBjYW5jZWwgYW55IHBlbmRpbmcg
b25lIGluIGEgcHJvdmlzaW9uYWwgcHJvY2Vzcy4KKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1l
KCkgJiYgbV9wcm92aXNpb25hbFBhZ2UgJiYgbV9wcm92aXNpb25hbFBhZ2UtPm1haW5GcmFtZSgp
ICE9IGZyYW1lKSB7CisgICAgICAgIG1fcHJvdmlzaW9uYWxQYWdlLT5jYW5jZWwoKTsKKyAgICAg
ICAgbV9wcm92aXNpb25hbFBhZ2UgPSBudWxscHRyOworICAgIH0KKworICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgbWVzc2FnZSBjaGVjayB0aGF0IG5hdmlnYXRpb25JRCBpcyBub3QgemVybyBoZXJl
LCBidXQgaXQncyBjdXJyZW50bHkgemVybyBmb3Igc29tZSBuYXZpZ2F0aW9ucyB0aHJvdWdoIHRo
ZSBiYWNrL2ZvcndhcmQgY2FjaGUuCisgICAgUmVmUHRyPEFQSTo6TmF2aWdhdGlvbj4gbmF2aWdh
dGlvbjsKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkgJiYgbmF2aWdhdGlvbklEKQorICAg
ICAgICBuYXZpZ2F0aW9uID0gbmF2aWdhdGlvblN0YXRlKCkubmF2aWdhdGlvbihuYXZpZ2F0aW9u
SUQpOworCisgICAgTE9HKExvYWRpbmcsICJXZWJQYWdlUHJveHkgJSIgUFJJdTY0ICIgaW4gcHJv
Y2VzcyBwaWQgJWkgZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JGcmFtZSB0byBmcmFtZUlEICUi
IFBSSXU2NCAiLCBuYXZpZ2F0aW9uSUQgJSIgUFJJdTY0ICIsIHVybCAlcyIsIG1faWRlbnRpZmll
ci50b1VJbnQ2NCgpLCBwcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpLCBmcmFtZUlELnRvVUlu
dDY0KCksIG5hdmlnYXRpb25JRCwgdXJsLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOworICAgIFdF
QlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiZGlkU3RhcnRQcm92aXNpb25hbExvYWRG
b3JGcmFtZTogZnJhbWVJRD0lIiBQUkl1NjQsIGZyYW1lSUQudG9VSW50NjQoKSk7CisKKyAgICBh
dXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgbV9w
YWdlTG9hZFN0YXRlLmNsZWFyUGVuZGluZ0FQSVJlcXVlc3QodHJhbnNhY3Rpb24pOworCisgICAg
aWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKSB7CisgICAgICAgIHByb2Nlc3MtPmRpZFN0YXJ0UHJv
dmlzaW9uYWxMb2FkRm9yTWFpbkZyYW1lKHVybCk7CisgICAgICAgIHJlcG9ydFBhZ2VMb2FkUmVz
dWx0KFJlc291cmNlRXJyb3IgeyBSZXNvdXJjZUVycm9yOjpUeXBlOjpDYW5jZWxsYXRpb24gfSk7
CisgICAgICAgIG1fcGFnZUxvYWRTdGFydCA9IE1vbm90b25pY1RpbWU6Om5vdygpOworICAgICAg
ICBtX3BhZ2VMb2FkU3RhdGUuZGlkU3RhcnRQcm92aXNpb25hbExvYWQodHJhbnNhY3Rpb24sIHVy
bC5zdHJpbmcoKSwgdW5yZWFjaGFibGVVUkwuc3RyaW5nKCkpOworICAgICAgICBwYWdlQ2xpZW50
KCkuZGlkU3RhcnRQcm92aXNpb25hbExvYWRGb3JNYWluRnJhbWUoKTsKKyAgICAgICAgY2xvc2VP
dmVybGF5ZWRWaWV3cygpOworICAgIH0KKworICAgIGZyYW1lLT5zZXRVbnJlYWNoYWJsZVVSTCh1
bnJlYWNoYWJsZVVSTCk7CisgICAgZnJhbWUtPmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2FkKHVybCk7
CisKKyAgICBtX3BhZ2VMb2FkU3RhdGUuY29tbWl0Q2hhbmdlcygpOworICAgIGlmIChtX2xvYWRl
ckNsaWVudCkKKyAgICAgICAgbV9sb2FkZXJDbGllbnQtPmRpZFN0YXJ0UHJvdmlzaW9uYWxMb2Fk
Rm9yRnJhbWUoKnRoaXMsICpmcmFtZSwgbmF2aWdhdGlvbi5nZXQoKSwgcHJvY2Vzcy0+dHJhbnNm
b3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkpOworICAgIGVsc2Ug
eworICAgICAgICBpZiAoZnJhbWVJbmZvLmlzTWFpbkZyYW1lKQorICAgICAgICAgICAgbV9uYXZp
Z2F0aW9uQ2xpZW50LT5kaWRTdGFydFByb3Zpc2lvbmFsTmF2aWdhdGlvbigqdGhpcywgcmVxdWVz
dCwgbmF2aWdhdGlvbi5nZXQoKSwgcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1
c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkpOworICAgICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRp
ZFN0YXJ0UHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUoKnRoaXMsIFdURk1vdmUocmVxdWVzdCksIFdU
Rk1vdmUoZnJhbWVJbmZvKSk7CisgICAgfQorCisjaWYgRU5BQkxFKFdFQl9BVVRITikKKyAgICBt
X3dlYnNpdGVEYXRhU3RvcmUtPmF1dGhlbnRpY2F0b3JNYW5hZ2VyKCkuY2FuY2VsUmVxdWVzdCht
X3dlYlBhZ2VJRCwgZnJhbWVJRCk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRp
ZEV4cGxpY2l0T3BlbkZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBVUkwmJiB1cmws
IFN0cmluZyYmIG1pbWVUeXBlKQoreworICAgIGF1dG8qIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJG
cmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisg
ICAgaWYgKCFjaGVja1VSTFJlY2VpdmVkRnJvbUN1cnJlbnRPclByZXZpb3VzV2ViUHJvY2Vzcyht
X3Byb2Nlc3MsIHVybCkpIHsKKyAgICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HX0VSUk9S
KFByb2Nlc3MsICJJZ25vcmluZyBXZWJQYWdlUHJveHk6OkRpZEV4cGxpY2l0T3BlbkZvckZyYW1l
KCkgSVBDIGZyb20gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBiZWNhdXNlIHRoZSBmaWxlIFVSTCBp
cyBvdXRzaWRlIHRoZSBzYW5kYm94Iik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBh
dXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisKKyAgICBp
ZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkpCisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5kaWRFeHBs
aWNpdE9wZW4odHJhbnNhY3Rpb24sIHVybC5zdHJpbmcoKSk7CisKKyAgICBmcmFtZS0+ZGlkRXhw
bGljaXRPcGVuKFdURk1vdmUodXJsKSwgV1RGTW92ZShtaW1lVHlwZSkpOworCisgICAgbV9oYXND
b21taXR0ZWRBbnlQcm92aXNpb25hbExvYWRzID0gdHJ1ZTsKKyAgICBtX3Byb2Nlc3MtPmRpZENv
bW1pdFByb3Zpc2lvbmFsTG9hZCgpOworCisgICAgbV9wYWdlTG9hZFN0YXRlLmNvbW1pdENoYW5n
ZXMoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZv
clByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCB1aW50NjRf
dCBuYXZpZ2F0aW9uSUQsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFVzZXJEYXRh
JiB1c2VyRGF0YSkKK3sKKyAgICBkaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25h
bExvYWRGb3JGcmFtZVNoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBmcmFtZUlELCBuYXZpZ2F0
aW9uSUQsIFdURk1vdmUocmVxdWVzdCksIHVzZXJEYXRhKTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1lU2hh
cmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29u
c3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIExPRyhMb2FkaW5nLCAiV2ViUGFnZVByb3h5
OjpkaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWRGb3JGcmFtZSB0byBm
cmFtZUlEICUiIFBSSXU2NCAiLCBuYXZpZ2F0aW9uSUQgJSIgUFJJdTY0ICIsIHVybCAlcyIsIGZy
YW1lSUQudG9VSW50NjQoKSwgbmF2aWdhdGlvbklELCByZXF1ZXN0LnVybCgpLnN0cmluZygpLnV0
ZjgoKS5kYXRhKCkpOworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiZGlk
UmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9yRnJhbWU6IGZyYW1lSUQ9
JSIgUFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFnZUNsaWVudFByb3RlY3Rv
ciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0g
cHJvY2Vzcy0+d2ViRnJhbWUoZnJhbWVJRCk7CisgICAgTUVTU0FHRV9DSEVDSyhwcm9jZXNzLCBm
cmFtZSk7CisgICAgTUVTU0FHRV9DSEVDS19VUkwocHJvY2VzcywgcmVxdWVzdC51cmwoKSk7CisK
KyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIG1lc3NhZ2UgY2hlY2sgdGhhdCBuYXZpZ2F0aW9uSUQg
aXMgbm90IHplcm8gaGVyZSwgYnV0IGl0J3MgY3VycmVudGx5IHplcm8gZm9yIHNvbWUgbmF2aWdh
dGlvbnMgdGhyb3VnaCB0aGUgYmFjay9mb3J3YXJkIGNhY2hlLgorICAgIFJlZlB0cjxBUEk6Ok5h
dmlnYXRpb24+IG5hdmlnYXRpb24gPSBuYXZpZ2F0aW9uSUQgPyBuYXZpZ2F0aW9uU3RhdGUoKS5u
YXZpZ2F0aW9uKG5hdmlnYXRpb25JRCkgOiBudWxscHRyOworICAgIGlmIChuYXZpZ2F0aW9uKQor
ICAgICAgICBuYXZpZ2F0aW9uLT5hcHBlbmRSZWRpcmVjdGlvblVSTChyZXF1ZXN0LnVybCgpKTsK
KworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rpb24oKTsK
KworICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkKKyAgICAgICAgbV9wYWdlTG9hZFN0YXRl
LmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCh0cmFuc2FjdGlvbiwg
cmVxdWVzdC51cmwoKS5zdHJpbmcoKSk7CisKKyAgICBmcmFtZS0+ZGlkUmVjZWl2ZVNlcnZlclJl
ZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKHJlcXVlc3QudXJsKCkpOworCisgICAgbV9wYWdlTG9h
ZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKyAgICBpZiAobV9sb2FkZXJDbGllbnQpCisgICAgICAg
IG1fbG9hZGVyQ2xpZW50LT5kaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExv
YWRGb3JGcmFtZSgqdGhpcywgKmZyYW1lLCBmcmFtZS0+aXNNYWluRnJhbWUoKSA/IG5hdmlnYXRp
b24uZ2V0KCkgOiBudWxscHRyLCBwcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHVz
ZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CisgICAgZWxzZSBpZiAoZnJhbWUtPmlzTWFpbkZyYW1l
KCkpCisgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0
Rm9yUHJvdmlzaW9uYWxOYXZpZ2F0aW9uKCp0aGlzLCBuYXZpZ2F0aW9uLmdldCgpLCBwcm9jZXNz
LT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWUo
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFN0cmluZyYgdXJsLCBkb3VibGUgZGVsYXks
IFdlYkNvcmU6OkxvY2tCYWNrRm9yd2FyZExpc3QpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVB
U0VfTE9HKExvYWRpbmcsICJ3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0Rm9yRnJhbWU6IGZyYW1l
SUQ9JSIgUFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFnZUNsaWVudFByb3Rl
Y3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1l
ID0gbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJv
Y2VzcywgZnJhbWUpOworCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICBt
X25hdmlnYXRpb25DbGllbnQtPndpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoKnRoaXMsIHVybCwg
ZGVsYXkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3RG
b3JGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVM
RUFTRV9MT0coTG9hZGluZywgImRpZENhbmNlbENsaWVudFJlZGlyZWN0Rm9yRnJhbWU6IGZyYW1l
SUQ9JSIgUFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFnZUNsaWVudFByb3Rl
Y3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1l
ID0gbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJv
Y2VzcywgZnJhbWUpOworCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICBt
X25hdmlnYXRpb25DbGllbnQtPmRpZENhbmNlbENsaWVudFJlZGlyZWN0KCp0aGlzKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWUoRnJhbWVJ
ZGVudGlmaWVyIGZyYW1lSUQsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgVVJMJiYgdXJsKQorewor
ICAgIGRpZENoYW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWVTaGFyZWQobV9wcm9jZXNzLmNvcHlS
ZWYoKSwgZnJhbWVJRCwgbmF2aWdhdGlvbklELCBXVEZNb3ZlKHVybCkpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZGlkQ2hhbmdlUHJvdmlzaW9uYWxVUkxGb3JGcmFtZVNoYXJlZChSZWY8V2Vi
UHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCB1aW50NjRf
dCwgVVJMJiYgdXJsKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VD
bGllbnQoKSk7CisKKyAgICBXZWJGcmFtZVByb3h5KiBmcmFtZSA9IHByb2Nlc3MtPndlYkZyYW1l
KGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2VzcywgZnJhbWUpOworICAgIE1FU1NB
R0VfQ0hFQ0socHJvY2VzcywgZnJhbWUtPmZyYW1lTG9hZFN0YXRlKCkuc3RhdGUoKSA9PSBGcmFt
ZUxvYWRTdGF0ZTo6U3RhdGU6OlByb3Zpc2lvbmFsKTsKKyAgICBNRVNTQUdFX0NIRUNLX1VSTChw
cm9jZXNzLCB1cmwpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRTdGF0ZS50
cmFuc2FjdGlvbigpOworCisgICAgLy8gSW50ZXJuYWxseSwgd2UgaGFuZGxlIHRoaXMgdGhlIHNh
bWUgd2F5IHdlIGhhbmRsZSBhIHNlcnZlciByZWRpcmVjdC4gVGhlcmUgYXJlIG5vIGNsaWVudCBj
YWxsYmFja3MKKyAgICAvLyBmb3IgdGhpcywgYnV0IGlmIHRoaXMgaXMgdGhlIG1haW4gZnJhbWUs
IGNsaWVudHMgbWF5IG9ic2VydmUgYSBjaGFuZ2UgdG8gdGhlIHBhZ2UncyBVUkwuCisgICAgaWYg
KGZyYW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICBtX3BhZ2VMb2FkU3RhdGUuZGlkUmVjZWl2
ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKHRyYW5zYWN0aW9uLCB1cmwuc3RyaW5n
KCkpOworCisgICAgZnJhbWUtPmRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFs
TG9hZCh1cmwpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmFpbFByb3Zpc2lvbmFsTG9h
ZEZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJ
bmZvLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIGNvbnN0IFN0cmluZyYgcHJvdmlzaW9uYWxVUkwsIGNvbnN0IFJlc291cmNlRXJyb3Im
IGVycm9yLCBXaWxsQ29udGludWVMb2FkaW5nIHdpbGxDb250aW51ZUxvYWRpbmcsIGNvbnN0IFVz
ZXJEYXRhJiB1c2VyRGF0YSkKK3sKKyAgICBXZWJGcmFtZVByb3h5KiBmcmFtZSA9IG1fcHJvY2Vz
cy0+d2ViRnJhbWUoZnJhbWVJRCk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1l
KTsKKworICAgIGlmIChtX3Byb3Zpc2lvbmFsUGFnZSAmJiBmcmFtZS0+aXNNYWluRnJhbWUoKSkg
eworICAgICAgICAvLyBUaGUgbG9hZCBkaWQgbm90IGZhaWwsIGl0IGlzIG1lcmVseSBoYXBwZW5p
bmcgaW4gYSBuZXcgcHJvdmlzaW9uYWwgcHJvY2Vzcy4KKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIGRpZEZhaWxQcm92aXNpb25hbExvYWRGb3JGcmFtZVNoYXJlZChtX3Byb2Nlc3MuY29w
eVJlZigpLCAqZnJhbWUsIFdURk1vdmUoZnJhbWVJbmZvKSwgV1RGTW92ZShyZXF1ZXN0KSwgbmF2
aWdhdGlvbklELCBwcm92aXNpb25hbFVSTCwgZXJyb3IsIHdpbGxDb250aW51ZUxvYWRpbmcsIHVz
ZXJEYXRhKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEZhaWxQcm92aXNpb25hbExvYWRG
b3JGcmFtZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFdlYkZyYW1lUHJv
eHkmIGZyYW1lLCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0LCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFN0cmluZyYgcHJv
dmlzaW9uYWxVUkwsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCBXaWxsQ29udGludWVMb2Fk
aW5nIHdpbGxDb250aW51ZUxvYWRpbmcsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKK3sKKyAg
ICBMT0coTG9hZGluZywgIihMb2FkaW5nKSBXZWJQYWdlUHJveHkgJSIgUFJJdTY0ICIgaW4gd2Vi
IHByb2Nlc3MgcGlkICVpIGRpZEZhaWxQcm92aXNpb25hbExvYWRGb3JGcmFtZSB0byBwcm92aXNp
b25hbFVSTCAlcyIsIG1faWRlbnRpZmllci50b1VJbnQ2NCgpLCBwcm9jZXNzLT5wcm9jZXNzSWRl
bnRpZmllcigpLCBwcm92aXNpb25hbFVSTC51dGY4KCkuZGF0YSgpKTsKKyAgICBXRUJQQUdFUFJP
WFlfUkVMRUFTRV9MT0dfRVJST1IoUHJvY2VzcywgImRpZEZhaWxQcm92aXNpb25hbExvYWRGb3JG
cmFtZTogZnJhbWVJRD0lIiBQUkl1NjQgIiwgZG9tYWluPSVzLCBjb2RlPSVkIiwgZnJhbWUuZnJh
bWVJRCgpLnRvVUludDY0KCksIGVycm9yLmRvbWFpbigpLnV0ZjgoKS5kYXRhKCksIGVycm9yLmVy
cm9yQ29kZSgpKTsKKworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGll
bnQoKSk7CisKKyAgICBpZiAobV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSB7CisgICAgICAgIGlm
IChhdXRvKiBhdXRvbWF0aW9uU2Vzc2lvbiA9IHByb2Nlc3MtPnByb2Nlc3NQb29sKCkuYXV0b21h
dGlvblNlc3Npb24oKSkKKyAgICAgICAgICAgIGF1dG9tYXRpb25TZXNzaW9uLT5uYXZpZ2F0aW9u
T2NjdXJyZWRGb3JGcmFtZShmcmFtZSk7CisgICAgfQorCisgICAgLy8gRklYTUU6IFdlIHNob3Vs
ZCBtZXNzYWdlIGNoZWNrIHRoYXQgbmF2aWdhdGlvbklEIGlzIG5vdCB6ZXJvIGhlcmUsIGJ1dCBp
dCdzIGN1cnJlbnRseSB6ZXJvIGZvciBzb21lIG5hdmlnYXRpb25zIHRocm91Z2ggdGhlIGJhY2sv
Zm9yd2FyZCBjYWNoZS4KKyAgICBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBuYXZpZ2F0aW9uOwor
ICAgIGlmIChmcmFtZS5pc01haW5GcmFtZSgpICYmIG5hdmlnYXRpb25JRCkKKyAgICAgICAgbmF2
aWdhdGlvbiA9IG5hdmlnYXRpb25TdGF0ZSgpLnRha2VOYXZpZ2F0aW9uKG5hdmlnYXRpb25JRCk7
CisKKyAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7
CisKKyAgICBpZiAoZnJhbWUuaXNNYWluRnJhbWUoKSkgeworICAgICAgICByZXBvcnRQYWdlTG9h
ZFJlc3VsdChlcnJvcik7CisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5kaWRGYWlsUHJvdmlzaW9u
YWxMb2FkKHRyYW5zYWN0aW9uKTsKKyAgICAgICAgcGFnZUNsaWVudCgpLmRpZEZhaWxQcm92aXNp
b25hbExvYWRGb3JNYWluRnJhbWUoKTsKKyAgICAgICAgaWYgKG5hdmlnYXRpb24pCisgICAgICAg
ICAgICBuYXZpZ2F0aW9uLT5zZXRDbGllbnROYXZpZ2F0aW9uQWN0aXZpdHkobnVsbHB0cik7Cisg
ICAgfQorCisgICAgZnJhbWUuZGlkRmFpbFByb3Zpc2lvbmFsTG9hZCgpOworCisgICAgbV9wYWdl
TG9hZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKworICAgIEFTU0VSVCghbV9mYWlsaW5nUHJvdmlz
aW9uYWxMb2FkVVJMKTsKKyAgICBtX2ZhaWxpbmdQcm92aXNpb25hbExvYWRVUkwgPSBwcm92aXNp
b25hbFVSTDsKKworICAgIGlmIChtX2xvYWRlckNsaWVudCkKKyAgICAgICAgbV9sb2FkZXJDbGll
bnQtPmRpZEZhaWxQcm92aXNpb25hbExvYWRXaXRoRXJyb3JGb3JGcmFtZSgqdGhpcywgZnJhbWUs
IG5hdmlnYXRpb24uZ2V0KCksIGVycm9yLCBwcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmpl
Y3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CisgICAgZWxzZSB7CisgICAgICAgIG1fbmF2
aWdhdGlvbkNsaWVudC0+ZGlkRmFpbFByb3Zpc2lvbmFsTmF2aWdhdGlvbldpdGhFcnJvcigqdGhp
cywgRnJhbWVJbmZvRGF0YSB7IGZyYW1lSW5mbyB9LCBuYXZpZ2F0aW9uLmdldCgpLCBlcnJvciwg
cHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0
KCkpOworICAgICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEZhaWxQcm92aXNpb25hbExvYWRX
aXRoRXJyb3JGb3JGcmFtZSgqdGhpcywgV1RGTW92ZShyZXF1ZXN0KSwgZXJyb3IsIFdURk1vdmUo
ZnJhbWVJbmZvKSk7CisgICAgfQorCisgICAgbV9mYWlsaW5nUHJvdmlzaW9uYWxMb2FkVVJMID0g
eyB9OworCisgICAgLy8gSWYgdGhlIHByb3Zpc2lvbmFsIHBhZ2UncyBsb2FkIGZhaWxzIHRoZW4g
d2UgZGVzdHJveSB0aGUgcHJvdmlzaW9uYWwgcGFnZS4KKyAgICBpZiAobV9wcm92aXNpb25hbFBh
Z2UgJiYgbV9wcm92aXNpb25hbFBhZ2UtPm1haW5GcmFtZSgpID09ICZmcmFtZSAmJiB3aWxsQ29u
dGludWVMb2FkaW5nID09IFdpbGxDb250aW51ZUxvYWRpbmc6Ok5vKQorICAgICAgICBtX3Byb3Zp
c2lvbmFsUGFnZSA9IG51bGxwdHI7Cit9CisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJ
TkdfUFJFVkVOVElPTikKK3N0YXRpYyBPcHRpb25TZXQ8Q3Jvc3NTaXRlTmF2aWdhdGlvbkRhdGFU
cmFuc2Zlcjo6RmxhZz4gY2hlY2tJZk5hdmlnYXRpb25Db250YWluc0RhdGFUcmFuc2Zlcihjb25z
dCBTZWN1cml0eU9yaWdpbkRhdGEgcmVxdWVzdGVyT3JpZ2luLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIGN1cnJlbnRSZXF1ZXN0KQoreworICAgIE9wdGlvblNldDxDcm9zc1NpdGVOYXZpZ2F0aW9u
RGF0YVRyYW5zZmVyOjpGbGFnPiBuYXZpZ2F0aW9uRGF0YVRyYW5zZmVyOworICAgIGlmIChyZXF1
ZXN0ZXJPcmlnaW4uc2VjdXJpdHlPcmlnaW4oKS0+aXNVbmlxdWUoKSkKKyAgICAgICAgcmV0dXJu
IG5hdmlnYXRpb25EYXRhVHJhbnNmZXI7CisKKyAgICBhdXRvIGN1cnJlbnRVUkwgPSBjdXJyZW50
UmVxdWVzdC51cmwoKTsKKyAgICBpZiAoIWN1cnJlbnRVUkwucXVlcnkoKS5pc0VtcHR5KCkgfHwg
IWN1cnJlbnRVUkwuZnJhZ21lbnRJZGVudGlmaWVyKCkuaXNFbXB0eSgpKQorICAgICAgICBuYXZp
Z2F0aW9uRGF0YVRyYW5zZmVyLmFkZChDcm9zc1NpdGVOYXZpZ2F0aW9uRGF0YVRyYW5zZmVyOjpG
bGFnOjpEZXN0aW5hdGlvbkxpbmtEZWNvcmF0aW9uKTsKKworICAgIFVSTCByZWZlcnJlclVSTCB7
IFVSTCgpLCBjdXJyZW50UmVxdWVzdC5odHRwUmVmZXJyZXIoKSB9OworICAgIGlmICghcmVmZXJy
ZXJVUkwucXVlcnkoKS5pc0VtcHR5KCkgfHwgIXJlZmVycmVyVVJMLmZyYWdtZW50SWRlbnRpZmll
cigpLmlzRW1wdHkoKSkKKyAgICAgICAgbmF2aWdhdGlvbkRhdGFUcmFuc2Zlci5hZGQoQ3Jvc3NT
aXRlTmF2aWdhdGlvbkRhdGFUcmFuc2Zlcjo6RmxhZzo6UmVmZXJyZXJMaW5rRGVjb3JhdGlvbik7
CisKKyAgICByZXR1cm4gbmF2aWdhdGlvbkRhdGFUcmFuc2ZlcjsKK30KKyNlbmRpZgorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkQ29tbWl0TG9hZEZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0
LCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGJvb2wgZnJh
bWVIYXNDdXN0b21Db250ZW50UHJvdmlkZXIsIFdlYkNvcmU6OkZyYW1lTG9hZFR5cGUgZnJhbWVM
b2FkVHlwZSwgY29uc3QgV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8s
IGJvb2wgdXNlZExlZ2FjeVRMUywgYm9vbCBjb250YWluc1BsdWdpbkRvY3VtZW50LCBzdGQ6Om9w
dGlvbmFsPEhhc0luc2VjdXJlQ29udGVudD4gaGFzSW5zZWN1cmVDb250ZW50LCBXZWJDb3JlOjpN
b3VzZUV2ZW50UG9saWN5IG1vdXNlRXZlbnRQb2xpY3ksIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0
YSkKK3sKKyAgICBMT0coTG9hZGluZywgIihMb2FkaW5nKSBXZWJQYWdlUHJveHkgJSIgUFJJdTY0
ICIgZGlkQ29tbWl0TG9hZEZvckZyYW1lIGluIG5hdmlnYXRpb24gJSIgUFJJdTY0LCBtX2lkZW50
aWZpZXIudG9VSW50NjQoKSwgbmF2aWdhdGlvbklEKTsKKyAgICBMT0coQmFja0ZvcndhcmQsICIo
QmFjay9Gb3J3YXJkKSBBZnRlciBsb2FkIGNvbW1pdCwgYmFjay9mb3J3YXJkIGxpc3QgaXMgbm93
OiVzIiwgbV9iYWNrRm9yd2FyZExpc3QtPmxvZ2dpbmdTdHJpbmcoKSk7CisgICAgV0VCUEFHRVBS
T1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJkaWRDb21taXRMb2FkRm9yRnJhbWU6IGZyYW1lSUQ9
JSIgUFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFnZUNsaWVudFByb3RlY3Rv
ciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0g
bV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2Vz
cywgZnJhbWUpOworCisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBtZXNzYWdlIGNoZWNrIHRoYXQg
bmF2aWdhdGlvbklEIGlzIG5vdCB6ZXJvIGhlcmUsIGJ1dCBpdCdzIGN1cnJlbnRseSB6ZXJvIGZv
ciBzb21lIG5hdmlnYXRpb25zIHRocm91Z2ggdGhlIGJhY2svZm9yd2FyZCBjYWNoZS4KKyAgICBS
ZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBuYXZpZ2F0aW9uOworICAgIGlmIChmcmFtZS0+aXNNYWlu
RnJhbWUoKSAmJiBuYXZpZ2F0aW9uSUQgJiYgKG5hdmlnYXRpb24gPSBuYXZpZ2F0aW9uU3RhdGUo
KS5uYXZpZ2F0aW9uKG5hdmlnYXRpb25JRCkpKSB7CisjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RS
QUNLSU5HX1BSRVZFTlRJT04pCisgICAgICAgIGF1dG8gcmVxdWVzdGVyT3JpZ2luID0gbmF2aWdh
dGlvbi0+bGFzdE5hdmlnYXRpb25BY3Rpb24oKS5yZXF1ZXN0ZXJPcmlnaW47CisgICAgICAgIGF1
dG8gY3VycmVudFJlcXVlc3QgPSBuYXZpZ2F0aW9uLT5jdXJyZW50UmVxdWVzdCgpOworICAgICAg
ICBhdXRvIG5hdmlnYXRpb25EYXRhVHJhbnNmZXIgPSBjaGVja0lmTmF2aWdhdGlvbkNvbnRhaW5z
RGF0YVRyYW5zZmVyKHJlcXVlc3Rlck9yaWdpbiwgY3VycmVudFJlcXVlc3QpOworICAgICAgICBp
ZiAoIW5hdmlnYXRpb25EYXRhVHJhbnNmZXIuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBSZWdp
c3RyYWJsZURvbWFpbiBjdXJyZW50RG9tYWluIHsgY3VycmVudFJlcXVlc3QudXJsKCkgfTsKKyAg
ICAgICAgICAgIFVSTCByZXF1ZXN0ZXJVUkwgeyBVUkwoKSwgcmVxdWVzdGVyT3JpZ2luLnRvU3Ry
aW5nKCkgfTsKKyAgICAgICAgICAgIGlmICghY3VycmVudERvbWFpbi5tYXRjaGVzKHJlcXVlc3Rl
clVSTCkpCisgICAgICAgICAgICAgICAgbV93ZWJzaXRlRGF0YVN0b3JlLT5uZXR3b3JrUHJvY2Vz
cygpLmRpZENvbW1pdENyb3NzU2l0ZUxvYWRXaXRoRGF0YVRyYW5zZmVyKG1fd2Vic2l0ZURhdGFT
dG9yZS0+c2Vzc2lvbklEKCksIFJlZ2lzdHJhYmxlRG9tYWluIHsgcmVxdWVzdGVyVVJMIH0sIGN1
cnJlbnREb21haW4sIG5hdmlnYXRpb25EYXRhVHJhbnNmZXIsIG1faWRlbnRpZmllciwgbV93ZWJQ
YWdlSUQpOworICAgICAgICB9CisjZW5kaWYKKyAgICB9CisKKyAgICBtX2hhc0NvbW1pdHRlZEFu
eVByb3Zpc2lvbmFsTG9hZHMgPSB0cnVlOworICAgIG1fcHJvY2Vzcy0+ZGlkQ29tbWl0UHJvdmlz
aW9uYWxMb2FkKCk7CisKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkpIHsKKyAgICAgICAg
bV9oYXNVcGRhdGVkUmVuZGVyaW5nQWZ0ZXJEaWRDb21taXRMb2FkID0gZmFsc2U7CisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAgICAgbV9maXJzdExheWVyVHJlZVRyYW5zYWN0aW9uSWRB
ZnRlckRpZENvbW1pdExvYWQgPSBkb3duY2FzdDxSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVBy
b3h5PigqZHJhd2luZ0FyZWEoKSkubmV4dExheWVyVHJlZVRyYW5zYWN0aW9uSUQoKTsKKyNlbmRp
ZgorICAgIH0KKworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNh
Y3Rpb24oKTsKKyAgICBSZWY8V2ViQ2VydGlmaWNhdGVJbmZvPiB3ZWJDZXJ0aWZpY2F0ZUluZm8g
PSBXZWJDZXJ0aWZpY2F0ZUluZm86OmNyZWF0ZShjZXJ0aWZpY2F0ZUluZm8pOworICAgIGJvb2wg
bWFya1BhZ2VJbnNlY3VyZSA9IGhhc0luc2VjdXJlQ29udGVudCA/IGhhc0luc2VjdXJlQ29udGVu
dC52YWx1ZSgpID09IEhhc0luc2VjdXJlQ29udGVudDo6WWVzIDogY2VydGlmaWNhdGVJbmZvLmNv
bnRhaW5zTm9uUm9vdFNIQTFTaWduZWRDZXJ0aWZpY2F0ZSgpOworCisgICAgaWYgKGZyYW1lLT5p
c01haW5GcmFtZSgpKSB7CisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5kaWRDb21taXRMb2FkKHRy
YW5zYWN0aW9uLCB3ZWJDZXJ0aWZpY2F0ZUluZm8sIG1hcmtQYWdlSW5zZWN1cmUsIHVzZWRMZWdh
Y3lUTFMpOworICAgICAgICBtX3Nob3VsZFN1cHByZXNzTmV4dEF1dG9tYXRpY05hdmlnYXRpb25T
bmFwc2hvdCA9IGZhbHNlOworICAgIH0gZWxzZSBpZiAobWFya1BhZ2VJbnNlY3VyZSkKKyAgICAg
ICAgbV9wYWdlTG9hZFN0YXRlLmRpZERpc3BsYXlPclJ1bkluc2VjdXJlQ29udGVudCh0cmFuc2Fj
dGlvbik7CisKKyNpZiBVU0UoQVBQS0lUKQorICAgIC8vIEZJWE1FIChidWcgNTkxMTEpOiBkaWRD
b21taXRMb2FkRm9yRnJhbWUgY29tZXMgdG9vIGxhdGUgd2hlbiByZXN0b3JpbmcgYSBwYWdlIGZy
b20gYi9mIGNhY2hlLCBtYWtpbmcgdXMgZGlzYWJsZSBzZWN1cmUgZXZlbnQgbW9kZSBpbiBwYXNz
d29yZCBmaWVsZHMuCisgICAgLy8gRklYTUU6IEEgbG9hZCBnb2luZyBvbiBpbiBvbmUgZnJhbWUg
c2hvdWxkbid0IGFmZmVjdCB0ZXh0IGVkaXRpbmcgaW4gb3RoZXIgZnJhbWVzIG9uIHRoZSBwYWdl
LgorICAgIHBhZ2VDbGllbnQoKS5yZXNldFNlY3VyZUlucHV0U3RhdGUoKTsKKyNlbmRpZgorCisg
ICAgZnJhbWUtPmRpZENvbW1pdExvYWQobWltZVR5cGUsIHdlYkNlcnRpZmljYXRlSW5mbywgY29u
dGFpbnNQbHVnaW5Eb2N1bWVudCk7CisKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkpIHsK
KyAgICAgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4g
cHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ7CisgICAgICAgIGlmIChtX3ByaXZhdGVDbGlja01lYXN1
cmVtZW50KQorICAgICAgICAgICAgcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQgPSBtX3ByaXZhdGVD
bGlja01lYXN1cmVtZW50OworICAgICAgICBlbHNlIGlmIChuYXZpZ2F0aW9uICYmIG5hdmlnYXRp
b24tPnByaXZhdGVDbGlja01lYXN1cmVtZW50KCkpCisgICAgICAgICAgICBwcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudCA9IG5hdmlnYXRpb24tPnByaXZhdGVDbGlja01lYXN1cmVtZW50KCk7CisgICAg
ICAgIGlmIChwcml2YXRlQ2xpY2tNZWFzdXJlbWVudCkgeworICAgICAgICAgICAgaWYgKHByaXZh
dGVDbGlja01lYXN1cmVtZW50LT5kZXN0aW5hdGlvblNpdGUoKS5tYXRjaGVzKGZyYW1lLT51cmwo
KSkpCisgICAgICAgICAgICAgICAgd2Vic2l0ZURhdGFTdG9yZSgpLm5ldHdvcmtQcm9jZXNzKCku
c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OlN0b3JlUHJpdmF0ZUNsaWNrTWVhc3VyZW1l
bnQobV93ZWJzaXRlRGF0YVN0b3JlLT5zZXNzaW9uSUQoKSwgKnByaXZhdGVDbGlja01lYXN1cmVt
ZW50KSwgMCk7CisgICAgICAgIH0KKyAgICB9CisgICAgbV9wcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dC5yZXNldCgpOworCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKSB7CisgICAgICAgIG1f
bWFpbkZyYW1lSGFzQ3VzdG9tQ29udGVudFByb3ZpZGVyID0gZnJhbWVIYXNDdXN0b21Db250ZW50
UHJvdmlkZXI7CisKKyAgICAgICAgaWYgKG1fbWFpbkZyYW1lSGFzQ3VzdG9tQ29udGVudFByb3Zp
ZGVyKSB7CisgICAgICAgICAgICAvLyBBbHdheXMgYXNzdW1lIHRoYXQgdGhlIG1haW4gZnJhbWUg
aXMgcGlubmVkIGhlcmUsIHNpbmNlIHRoZSBjdXN0b20gcmVwcmVzZW50YXRpb24gdmlldyB3aWxs
IGhhbmRsZQorICAgICAgICAgICAgLy8gYW55IHdoZWVsIGV2ZW50cyBhbmQgZGlzcGF0Y2ggdGhl
bSB0byB0aGUgV0tWaWV3IHdoZW4gbmVjZXNzYXJ5LgorICAgICAgICAgICAgbV9tYWluRnJhbWVJ
c1Bpbm5lZFRvTGVmdFNpZGUgPSB0cnVlOworICAgICAgICAgICAgbV9tYWluRnJhbWVJc1Bpbm5l
ZFRvUmlnaHRTaWRlID0gdHJ1ZTsKKyAgICAgICAgICAgIG1fbWFpbkZyYW1lSXNQaW5uZWRUb1Rv
cFNpZGUgPSB0cnVlOworICAgICAgICAgICAgbV9tYWluRnJhbWVJc1Bpbm5lZFRvQm90dG9tU2lk
ZSA9IHRydWU7CisKKyAgICAgICAgICAgIG1fdWlDbGllbnQtPnBpbm5lZFN0YXRlRGlkQ2hhbmdl
KCp0aGlzKTsKKyAgICAgICAgfQorICAgICAgICBwYWdlQ2xpZW50KCkuZGlkQ29tbWl0TG9hZEZv
ck1haW5GcmFtZShtaW1lVHlwZSwgZnJhbWVIYXNDdXN0b21Db250ZW50UHJvdmlkZXIpOworICAg
IH0KKworICAgIC8vIEV2ZW4gaWYgV2ViUGFnZSBoYXMgdGhlIGRlZmF1bHQgcGFnZVNjYWxlRmFj
dG9yIChhbmQgdGhlcmVmb3JlIGRvZXNuJ3QgcmVzZXQgaXQpLAorICAgIC8vIFdlYlBhZ2VQcm94
eSdzIGNhY2hlIG9mIHRoZSB2YWx1ZSBjYW4gZ2V0IG91dCBvZiBzeW5jIChlLmcuIGluIHRoZSBj
YXNlIHdoZXJlIGEKKyAgICAvLyBwbHVnaW4gaXMgaGFuZGxpbmcgcGFnZSBzY2FsaW5nIGl0c2Vs
Zikgc28gd2Ugc2hvdWxkIHJlc2V0IGl0IHRvIHRoZSBkZWZhdWx0CisgICAgLy8gZm9yIHN0YW5k
YXJkIG1haW4gZnJhbWUgbG9hZHMuCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKSB7Cisg
ICAgICAgIGlmIChmcmFtZUxvYWRUeXBlID09IEZyYW1lTG9hZFR5cGU6OlN0YW5kYXJkKSB7Cisg
ICAgICAgICAgICBtX3BhZ2VTY2FsZUZhY3RvciA9IDE7CisgICAgICAgICAgICBtX3BsdWdpblNj
YWxlRmFjdG9yID0gMTsKKyAgICAgICAgICAgIG1fbWFpbkZyYW1lUGx1Z2luSGFuZGxlc1BhZ2VT
Y2FsZUdlc3R1cmUgPSBmYWxzZTsKKyAgICAgICAgfQorI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0sp
CisgICAgICAgIHJlcXVlc3RQb2ludGVyVW5sb2NrKCk7CisjZW5kaWYKKyAgICAgICAgcGFnZUNs
aWVudCgpLnNldE1vdXNlRXZlbnRQb2xpY3kobW91c2VFdmVudFBvbGljeSk7CisjaWYgRU5BQkxF
KFVJX1BST0NFU1NfUERGX0hVRCkKKyAgICAgICAgcGFnZUNsaWVudCgpLnJlbW92ZUFsbFBERkhV
RHMoKTsKKyNlbmRpZgorICAgIH0KKworICAgIG1fcGFnZUxvYWRTdGF0ZS5jb21taXRDaGFuZ2Vz
KCk7CisgICAgaWYgKG1fbG9hZGVyQ2xpZW50KQorICAgICAgICBtX2xvYWRlckNsaWVudC0+ZGlk
Q29tbWl0TG9hZEZvckZyYW1lKCp0aGlzLCAqZnJhbWUsIG5hdmlnYXRpb24uZ2V0KCksIG1fcHJv
Y2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkp
OworICAgIGVsc2UgeworICAgICAgICBpZiAoZnJhbWVJbmZvLmlzTWFpbkZyYW1lKQorICAgICAg
ICAgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT5kaWRDb21taXROYXZpZ2F0aW9uKCp0aGlzLCBuYXZp
Z2F0aW9uLmdldCgpLCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRh
dGEub2JqZWN0KCkpLmdldCgpKTsKKyAgICAgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT5kaWRDb21t
aXRMb2FkRm9yRnJhbWUoKnRoaXMsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUoZnJhbWVJbmZv
KSk7CisgICAgfQorICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkgeworI2lmIEVOQUJMRShB
VFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgICAgIGludmFsaWRhdGVBbGxBdHRhY2htZW50cygpOwor
I2VuZGlmCisjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCisgICAgICAgIHJlbW90ZUluc3Bl
Y3RvckluZm9ybWF0aW9uRGlkQ2hhbmdlKCk7CisjZW5kaWYKKyNpZiBVU0UoQVBQS0lUKQorICAg
ICAgICBjbG9zZVNoYXJlZFByZXZpZXdQYW5lbElmTmVjZXNzYXJ5KCk7CisjZW5kaWYKKyAgICB9
CisKKyNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTl9DT09SRElOQVRPUikgJiYgSEFWRShHUk9VUF9B
Q1RJVklUSUVTKQorICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSAmJiBtX3ByZWZlcmVuY2Vz
LT5tZWRpYVNlc3Npb25Db29yZGluYXRvckVuYWJsZWQoKSkKKyAgICAgICAgR3JvdXBBY3Rpdml0
aWVzU2Vzc2lvbk5vdGlmaWVyOjpzaGFyZWROb3RpZmllcigpLndlYlBhZ2VVUkxDaGFuZ2VkKCp0
aGlzKTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmluaXNoRG9jdW1lbnRM
b2FkRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHVpbnQ2NF90IG5hdmlnYXRpb25J
RCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNF
X0xPRyhMb2FkaW5nLCAiZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yRnJhbWU6IGZyYW1lSUQ9JSIg
UFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFnZUNsaWVudFByb3RlY3RvciBw
cm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9w
cm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2Vzcywg
ZnJhbWUpOworCisgICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbikgeworICAgICAgICBp
ZiAoYXV0byogYXV0b21hdGlvblNlc3Npb24gPSBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5hdXRv
bWF0aW9uU2Vzc2lvbigpKQorICAgICAgICAgICAgYXV0b21hdGlvblNlc3Npb24tPmRvY3VtZW50
TG9hZGVkRm9yRnJhbWUoKmZyYW1lKTsKKyAgICB9CisKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxk
IG1lc3NhZ2UgY2hlY2sgdGhhdCBuYXZpZ2F0aW9uSUQgaXMgbm90IHplcm8gaGVyZSwgYnV0IGl0
J3MgY3VycmVudGx5IHplcm8gZm9yIHNvbWUgbmF2aWdhdGlvbnMgdGhyb3VnaCB0aGUgYmFjay9m
b3J3YXJkIGNhY2hlLgorICAgIFJlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IG5hdmlnYXRpb247Cisg
ICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpICYmIG5hdmlnYXRpb25JRCkKKyAgICAgICAgbmF2
aWdhdGlvbiA9IG5hdmlnYXRpb25TdGF0ZSgpLm5hdmlnYXRpb24obmF2aWdhdGlvbklEKTsKKwor
ICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkgeworICAgICAgICBtX25hdmlnYXRpb25DbGll
bnQtPmRpZEZpbmlzaERvY3VtZW50TG9hZCgqdGhpcywgbmF2aWdhdGlvbi5nZXQoKSwgbV9wcm9j
ZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7
CisjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZFTlRJT04pCisgICAgICAgIG1f
ZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yTWFpbkZyYW1lVGltZXN0YW1wID0gTW9ub3RvbmljVGlt
ZTo6bm93KCk7CisjZW5kaWYKKyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRGaW5p
c2hMb2FkRm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBm
cmFtZUluZm8sIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIHVpbnQ2NF90IG5hdmlnYXRpb25J
RCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIExPRyhMb2FkaW5nLCAiV2ViUGFn
ZVByb3h5OjpkaWRGaW5pc2hMb2FkRm9yRnJhbWUgLSBXZWJQYWdlUHJveHkgJXAgd2l0aCBuYXZp
Z2F0aW9uSUQgJSIgUFJJdTY0ICIgZGlkRmluaXNoTG9hZCIsIHRoaXMsIG5hdmlnYXRpb25JRCk7
CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJkaWRGaW5pc2hMb2FkRm9y
RnJhbWU6IGZyYW1lSUQ9JSIgUFJJdTY0LCBmcmFtZUlELnRvVUludDY0KCkpOworCisgICAgUGFn
ZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1l
UHJveHkqIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdF
X0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBtZXNz
YWdlIGNoZWNrIHRoYXQgbmF2aWdhdGlvbklEIGlzIG5vdCB6ZXJvIGhlcmUsIGJ1dCBpdCdzIGN1
cnJlbnRseSB6ZXJvIGZvciBzb21lIG5hdmlnYXRpb25zIHRocm91Z2ggdGhlIGJhY2svZm9yd2Fy
ZCBjYWNoZS4KKyAgICBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBuYXZpZ2F0aW9uOworICAgIGlm
IChmcmFtZS0+aXNNYWluRnJhbWUoKSAmJiBuYXZpZ2F0aW9uSUQpCisgICAgICAgIG5hdmlnYXRp
b24gPSBuYXZpZ2F0aW9uU3RhdGUoKS5uYXZpZ2F0aW9uKG5hdmlnYXRpb25JRCk7CisKKyAgICBh
dXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisKKyAgICBi
b29sIGlzTWFpbkZyYW1lID0gZnJhbWUtPmlzTWFpbkZyYW1lKCk7CisgICAgaWYgKGlzTWFpbkZy
YW1lKQorICAgICAgICBtX3BhZ2VMb2FkU3RhdGUuZGlkRmluaXNoTG9hZCh0cmFuc2FjdGlvbik7
CisKKyAgICBpZiAobV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSB7CisgICAgICAgIGlmIChhdXRv
KiBhdXRvbWF0aW9uU2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9tYXRpb25T
ZXNzaW9uKCkpCisgICAgICAgICAgICBhdXRvbWF0aW9uU2Vzc2lvbi0+bmF2aWdhdGlvbk9jY3Vy
cmVkRm9yRnJhbWUoKmZyYW1lKTsKKyAgICB9CisKKyAgICBmcmFtZS0+ZGlkRmluaXNoTG9hZCgp
OworCisgICAgbV9wYWdlTG9hZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKyAgICBpZiAobV9sb2Fk
ZXJDbGllbnQpCisgICAgICAgIG1fbG9hZGVyQ2xpZW50LT5kaWRGaW5pc2hMb2FkRm9yRnJhbWUo
KnRoaXMsICpmcmFtZSwgbmF2aWdhdGlvbi5nZXQoKSwgbV9wcm9jZXNzLT50cmFuc2Zvcm1IYW5k
bGVzVG9PYmplY3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CisgICAgZWxzZSB7CisgICAg
ICAgIGlmIChmcmFtZUluZm8uaXNNYWluRnJhbWUpCisgICAgICAgICAgICBtX25hdmlnYXRpb25D
bGllbnQtPmRpZEZpbmlzaE5hdmlnYXRpb24oKnRoaXMsIG5hdmlnYXRpb24uZ2V0KCksIG1fcHJv
Y2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkp
OworICAgICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEZpbmlzaExvYWRGb3JGcmFtZSgqdGhp
cywgV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShmcmFtZUluZm8pKTsKKyAgICB9CisKKyAgICBp
ZiAoaXNNYWluRnJhbWUpIHsKKyAgICAgICAgcmVwb3J0UGFnZUxvYWRSZXN1bHQoKTsKKyAgICAg
ICAgcGFnZUNsaWVudCgpLmRpZEZpbmlzaE5hdmlnYXRpb24obmF2aWdhdGlvbi5nZXQoKSk7CisK
KyAgICAgICAgaWYgKG5hdmlnYXRpb24pCisgICAgICAgICAgICBuYXZpZ2F0aW9uLT5zZXRDbGll
bnROYXZpZ2F0aW9uQWN0aXZpdHkobnVsbHB0cik7CisKKyAgICAgICAgcmVzZXRSZWNlbnRDcmFz
aENvdW50U29vbigpOworCisgICAgICAgIG5vdGlmeVByb2Nlc3NQb29sVG9QcmV3YXJtKCk7Cisg
ICAgfQorCisgICAgbV9pc0xvYWRpbmdBbHRlcm5hdGVIVE1MU3RyaW5nRm9yRmFpbGluZ1Byb3Zp
c2lvbmFsTG9hZCA9IGZhbHNlOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmFpbExvYWRG
b3JGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5m
bywgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvciwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAg
IFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPR19FUlJPUihMb2FkaW5nLCAiZGlkRmFpbExvYWRGb3JG
cmFtZTogZnJhbWVJRD0lIiBQUkl1NjQgIiwgZG9tYWluPSVzLCBjb2RlPSVkIiwgZnJhbWVJRC50
b1VJbnQ2NCgpLCBlcnJvci5kb21haW4oKS51dGY4KCkuZGF0YSgpLCBlcnJvci5lcnJvckNvZGUo
KSk7CisKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOwor
CisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQp
OworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICAvLyBGSVhNRTog
V2Ugc2hvdWxkIG1lc3NhZ2UgY2hlY2sgdGhhdCBuYXZpZ2F0aW9uSUQgaXMgbm90IHplcm8gaGVy
ZSwgYnV0IGl0J3MgY3VycmVudGx5IHplcm8gZm9yIHNvbWUgbmF2aWdhdGlvbnMgdGhyb3VnaCB0
aGUgYmFjay9mb3J3YXJkIGNhY2hlLgorICAgIFJlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IG5hdmln
YXRpb247CisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpICYmIG5hdmlnYXRpb25JRCkKKyAg
ICAgICAgbmF2aWdhdGlvbiA9IG5hdmlnYXRpb25TdGF0ZSgpLm5hdmlnYXRpb24obmF2aWdhdGlv
bklEKTsKKworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNhY3Rp
b24oKTsKKworICAgIGJvb2wgaXNNYWluRnJhbWUgPSBmcmFtZS0+aXNNYWluRnJhbWUoKTsKKwor
ICAgIGlmIChpc01haW5GcmFtZSkKKyAgICAgICAgbV9wYWdlTG9hZFN0YXRlLmRpZEZhaWxMb2Fk
KHRyYW5zYWN0aW9uKTsKKworICAgIGlmIChtX2NvbnRyb2xsZWRCeUF1dG9tYXRpb24pIHsKKyAg
ICAgICAgaWYgKGF1dG8qIGF1dG9tYXRpb25TZXNzaW9uID0gcHJvY2VzcygpLnByb2Nlc3NQb29s
KCkuYXV0b21hdGlvblNlc3Npb24oKSkKKyAgICAgICAgICAgIGF1dG9tYXRpb25TZXNzaW9uLT5u
YXZpZ2F0aW9uT2NjdXJyZWRGb3JGcmFtZSgqZnJhbWUpOworICAgIH0KKworICAgIGZyYW1lLT5k
aWRGYWlsTG9hZCgpOworCisgICAgbV9wYWdlTG9hZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKyAg
ICBpZiAobV9sb2FkZXJDbGllbnQpCisgICAgICAgIG1fbG9hZGVyQ2xpZW50LT5kaWRGYWlsTG9h
ZFdpdGhFcnJvckZvckZyYW1lKCp0aGlzLCAqZnJhbWUsIG5hdmlnYXRpb24uZ2V0KCksIGVycm9y
LCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkp
LmdldCgpKTsKKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKGZyYW1lSW5mby5pc01haW5GcmFtZSkK
KyAgICAgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGlkRmFpbE5hdmlnYXRpb25XaXRoRXJy
b3IoKnRoaXMsIGZyYW1lSW5mbywgbmF2aWdhdGlvbi5nZXQoKSwgZXJyb3IsIG1fcHJvY2Vzcy0+
dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkpOworICAg
ICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUoKnRo
aXMsIFdURk1vdmUocmVxdWVzdCksIGVycm9yLCBXVEZNb3ZlKGZyYW1lSW5mbykpOworICAgIH0K
KworICAgIGlmIChpc01haW5GcmFtZSkgeworICAgICAgICByZXBvcnRQYWdlTG9hZFJlc3VsdChl
cnJvcik7CisgICAgICAgIHBhZ2VDbGllbnQoKS5kaWRGYWlsTmF2aWdhdGlvbihuYXZpZ2F0aW9u
LmdldCgpKTsKKyAgICAgICAgaWYgKG5hdmlnYXRpb24pCisgICAgICAgICAgICBuYXZpZ2F0aW9u
LT5zZXRDbGllbnROYXZpZ2F0aW9uQWN0aXZpdHkobnVsbHB0cik7CisgICAgfQorfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkU2FtZURvY3VtZW50TmF2aWdhdGlvbkZvckZyYW1lKEZyYW1lSWRl
bnRpZmllciBmcmFtZUlELCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIHVpbnQzMl90IG9wYXF1ZVNh
bWVEb2N1bWVudE5hdmlnYXRpb25UeXBlLCBVUkwmJiB1cmwsIGNvbnN0IFVzZXJEYXRhJiB1c2Vy
RGF0YSkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGluZywgImRpZFNhbWVE
b2N1bWVudE5hdmlnYXRpb25Gb3JGcmFtZTogZnJhbWVJRD0lIiBQUkl1NjQsIGZyYW1lSUQudG9V
SW50NjQoKSk7CisKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50
KCkpOworCisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZy
YW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisgICAgTUVTU0FH
RV9DSEVDS19VUkwobV9wcm9jZXNzLCB1cmwpOworCisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBt
ZXNzYWdlIGNoZWNrIHRoYXQgbmF2aWdhdGlvbklEIGlzIG5vdCB6ZXJvIGhlcmUsIGJ1dCBpdCdz
IGN1cnJlbnRseSB6ZXJvIGZvciBzb21lIG5hdmlnYXRpb25zIHRocm91Z2ggdGhlIGJhY2svZm9y
d2FyZCBjYWNoZS4KKyAgICBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBuYXZpZ2F0aW9uOworICAg
IGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSAmJiBuYXZpZ2F0aW9uSUQpCisgICAgICAgIG5hdmln
YXRpb24gPSBuYXZpZ2F0aW9uU3RhdGUoKS5uYXZpZ2F0aW9uKG5hdmlnYXRpb25JRCk7CisKKyAg
ICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisKKyAg
ICBib29sIGlzTWFpbkZyYW1lID0gZnJhbWUtPmlzTWFpbkZyYW1lKCk7CisgICAgaWYgKGlzTWFp
bkZyYW1lKQorICAgICAgICBtX3BhZ2VMb2FkU3RhdGUuZGlkU2FtZURvY3VtZW50TmF2aWdhdGlv
bih0cmFuc2FjdGlvbiwgdXJsLnN0cmluZygpKTsKKworICAgIGlmIChtX2NvbnRyb2xsZWRCeUF1
dG9tYXRpb24pIHsKKyAgICAgICAgaWYgKGF1dG8qIGF1dG9tYXRpb25TZXNzaW9uID0gcHJvY2Vz
cygpLnByb2Nlc3NQb29sKCkuYXV0b21hdGlvblNlc3Npb24oKSkKKyAgICAgICAgICAgIGF1dG9t
YXRpb25TZXNzaW9uLT5uYXZpZ2F0aW9uT2NjdXJyZWRGb3JGcmFtZSgqZnJhbWUpOworICAgIH0K
KworICAgIG1fcGFnZUxvYWRTdGF0ZS5jbGVhclBlbmRpbmdBUElSZXF1ZXN0KHRyYW5zYWN0aW9u
KTsKKyAgICBmcmFtZS0+ZGlkU2FtZURvY3VtZW50TmF2aWdhdGlvbih1cmwpOworCisgICAgbV9w
YWdlTG9hZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKworICAgIFNhbWVEb2N1bWVudE5hdmlnYXRp
b25UeXBlIG5hdmlnYXRpb25UeXBlID0gc3RhdGljX2Nhc3Q8U2FtZURvY3VtZW50TmF2aWdhdGlv
blR5cGU+KG9wYXF1ZVNhbWVEb2N1bWVudE5hdmlnYXRpb25UeXBlKTsKKyAgICBpZiAoaXNNYWlu
RnJhbWUpCisgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGlkU2FtZURvY3VtZW50TmF2aWdh
dGlvbigqdGhpcywgbmF2aWdhdGlvbi5nZXQoKSwgbmF2aWdhdGlvblR5cGUsIG1fcHJvY2Vzcy0+
dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmplY3QoKSkuZ2V0KCkpOworCisg
ICAgaWYgKGlzTWFpbkZyYW1lKQorICAgICAgICBwYWdlQ2xpZW50KCkuZGlkU2FtZURvY3VtZW50
TmF2aWdhdGlvbkZvck1haW5GcmFtZShuYXZpZ2F0aW9uVHlwZSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpkaWRDaGFuZ2VNYWluRG9jdW1lbnQoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCit7
CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBpZiAobV91c2VyTWVkaWFQZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXIpIHsKKyAgICAgICAgbV91c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXItPnJlc2V0QWNjZXNzKGZyYW1lSUQpOworCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQor
ICAgICAgICBpZiAoYXV0byogZ3B1UHJvY2VzcyA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5n
cHVQcm9jZXNzKCkpIHsKKyAgICAgICAgICAgIGlmIChhdXRvKiBmcmFtZSA9IG1fcHJvY2Vzcy0+
d2ViRnJhbWUoZnJhbWVJRCkpCisgICAgICAgICAgICAgICAgZ3B1UHJvY2Vzcy0+dXBkYXRlQ2Fw
dHVyZU9yaWdpbihTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21VUkwoZnJhbWUtPnVybCgpKSwgbV9w
cm9jZXNzLT5jb3JlUHJvY2Vzc0lkZW50aWZpZXIoKSk7CisgICAgICAgIH0KKyNlbmRpZgorICAg
IH0KKworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZnJhbWVJRCk7CisjZW5kaWYKKyAgICAKKyAg
ICBtX2lzUXVvdGFJbmNyZWFzZURlbmllZCA9IGZhbHNlOworCisgICAgbV9zcGVlY2hSZWNvZ25p
dGlvblBlcm1pc3Npb25NYW5hZ2VyID0gbnVsbHB0cjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnZpZXdJc0JlY29taW5nVmlzaWJsZSgpCit7CisgICAgbV9wcm9jZXNzLT5tYXJrUHJvY2Vzc0Fz
UmVjZW50bHlVc2VkKCk7CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBpZiAobV91c2Vy
TWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIpCisgICAgICAgIG1fdXNlck1lZGlhUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyLT52aWV3SXNCZWNvbWluZ1Zpc2libGUoKTsKKyNlbmRpZgorfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUmVjZWl2ZVRpdGxlRm9yRnJhbWUoRnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0
YSkKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOwor
CisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQp
OworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICBhdXRvIHRyYW5z
YWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisKKyAgICBpZiAoZnJhbWUt
PmlzTWFpbkZyYW1lKCkpCisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5zZXRUaXRsZSh0cmFuc2Fj
dGlvbiwgdGl0bGUpOworCisgICAgZnJhbWUtPmRpZENoYW5nZVRpdGxlKHRpdGxlKTsKKyAgICAK
KyAgICBtX3BhZ2VMb2FkU3RhdGUuY29tbWl0Q2hhbmdlcygpOworCisjaWYgRU5BQkxFKFJFTU9U
RV9JTlNQRUNUT1IpCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICByZW1v
dGVJbnNwZWN0b3JJbmZvcm1hdGlvbkRpZENoYW5nZSgpOworI2VuZGlmCit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpkaWRGaXJzdExheW91dEZvckZyYW1lKEZyYW1lSWRlbnRpZmllciwgY29uc3Qg
VXNlckRhdGEmIHVzZXJEYXRhKQoreworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmlyc3RW
aXN1YWxseU5vbkVtcHR5TGF5b3V0Rm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNv
bnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3Rl
Y3RvcihwYWdlQ2xpZW50KCkpOworCisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nl
c3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFt
ZSk7CisKKyAgICBpZiAobV9sb2FkZXJDbGllbnQpCisgICAgICAgIG1fbG9hZGVyQ2xpZW50LT5k
aWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXRGb3JGcmFtZSgqdGhpcywgKmZyYW1lLCBtX3By
b2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkpLmdldCgp
KTsKKworICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkKKyAgICAgICAgcGFnZUNsaWVudCgp
LmRpZEZpcnN0VmlzdWFsbHlOb25FbXB0eUxheW91dEZvck1haW5GcmFtZSgpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkTGF5b3V0Rm9yQ3VzdG9tQ29udGVudFByb3ZpZGVyKCkKK3sKKyAg
ICBkaWRSZWFjaExheW91dE1pbGVzdG9uZSh7IERpZEZpcnN0TGF5b3V0LCBEaWRGaXJzdFZpc3Vh
bGx5Tm9uRW1wdHlMYXlvdXQsIERpZEhpdFJlbGV2YW50UmVwYWludGVkT2JqZWN0c0FyZWFUaHJl
c2hvbGQgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRSZWFjaExheW91dE1pbGVzdG9u
ZShPcHRpb25TZXQ8V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lPiBsYXlvdXRNaWxlc3RvbmVzKQor
eworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAg
ICBpZiAobGF5b3V0TWlsZXN0b25lcy5jb250YWlucyhEaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlM
YXlvdXQpKQorICAgICAgICBwYWdlQ2xpZW50KCkuY2xlYXJTYWZlQnJvd3NpbmdXYXJuaW5nSWZG
b3JNYWluRnJhbWVOYXZpZ2F0aW9uKCk7CisgICAgCisgICAgaWYgKG1fbG9hZGVyQ2xpZW50KQor
ICAgICAgICBtX2xvYWRlckNsaWVudC0+ZGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoKnRoaXMsIGxh
eW91dE1pbGVzdG9uZXMpOworICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+cmVuZGVyaW5nUHJvZ3Jl
c3NEaWRDaGFuZ2UoKnRoaXMsIGxheW91dE1pbGVzdG9uZXMpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6ZGlkRGlzcGxheUluc2VjdXJlQ29udGVudEZvckZyYW1lKEZyYW1lSWRlbnRpZmllciBm
cmFtZUlELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCit7CisgICAgUGFnZUNsaWVudFByb3Rl
Y3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1l
ID0gbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJv
Y2VzcywgZnJhbWUpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRTdGF0ZS50
cmFuc2FjdGlvbigpOworICAgIG1fcGFnZUxvYWRTdGF0ZS5kaWREaXNwbGF5T3JSdW5JbnNlY3Vy
ZUNvbnRlbnQodHJhbnNhY3Rpb24pOworICAgIG1fcGFnZUxvYWRTdGF0ZS5jb21taXRDaGFuZ2Vz
KCk7CisKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZERpc3BsYXlJbnNlY3VyZUNvbnRlbnQo
KnRoaXMsIG1fcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmpl
Y3QoKSkuZ2V0KCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUnVuSW5zZWN1cmVDb250
ZW50Rm9yRnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFVzZXJEYXRhJiB1c2Vy
RGF0YSkKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkp
OworCisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1l
SUQpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICBhdXRvIHRy
YW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgbV9wYWdlTG9h
ZFN0YXRlLmRpZERpc3BsYXlPclJ1bkluc2VjdXJlQ29udGVudCh0cmFuc2FjdGlvbik7CisgICAg
bV9wYWdlTG9hZFN0YXRlLmNvbW1pdENoYW5nZXMoKTsKKworICAgIG1fbmF2aWdhdGlvbkNsaWVu
dC0+ZGlkUnVuSW5zZWN1cmVDb250ZW50KCp0aGlzLCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRs
ZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkpLmdldCgpKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmRpZERldGVjdFhTU0ZvckZyYW1lKEZyYW1lSWRlbnRpZmllciwgY29uc3QgVXNlckRh
dGEmKQoreworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bWFpbkZyYW1lUGx1Z2luSGFuZGxlc1Bh
Z2VTY2FsZUdlc3R1cmVEaWRDaGFuZ2UoYm9vbCBtYWluRnJhbWVQbHVnaW5IYW5kbGVzUGFnZVNj
YWxlR2VzdHVyZSkKK3sKKyAgICBtX21haW5GcmFtZVBsdWdpbkhhbmRsZXNQYWdlU2NhbGVHZXN0
dXJlID0gbWFpbkZyYW1lUGx1Z2luSGFuZGxlc1BhZ2VTY2FsZUdlc3R1cmU7Cit9CisKKyNpZiAh
UExBVEZPUk0oQ09DT0EpCit2b2lkIFdlYlBhZ2VQcm94eTo6YmVnaW5TYWZlQnJvd3NpbmdDaGVj
ayhjb25zdCBVUkwmLCBib29sLCBXZWJGcmFtZVBvbGljeUxpc3RlbmVyUHJveHkmIGxpc3RlbmVy
KQoreworICAgIGxpc3RlbmVyLmRpZFJlY2VpdmVTYWZlQnJvd3NpbmdSZXN1bHRzKHsgfSk7Cit9
CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25B
Y3Rpb25Bc3luYyhGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1l
SW5mbywgUG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRp
b25JRCwKKyAgICBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYmIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBG
cmFtZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6b3B0aW9uYWw8V2ViUGFn
ZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBy
ZXF1ZXN0LAorICAgIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiByZXF1ZXN0Qm9keSwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IFVzZXJEYXRhJiB1
c2VyRGF0YSwgdWludDY0X3QgbGlzdGVuZXJJRCkKK3sKKyAgICBkZWNpZGVQb2xpY3lGb3JOYXZp
Z2F0aW9uQWN0aW9uQXN5bmNTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQYWdlSUQs
IGZyYW1lSUQsIFdURk1vdmUoZnJhbWVJbmZvKSwgaWRlbnRpZmllciwgbmF2aWdhdGlvbklELCBX
VEZNb3ZlKG5hdmlnYXRpb25BY3Rpb25EYXRhKSwgV1RGTW92ZShvcmlnaW5hdGluZ0ZyYW1lSW5m
byksIG9yaWdpbmF0aW5nUGFnZUlELCBvcmlnaW5hbFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCks
IFdURk1vdmUocmVxdWVzdEJvZHkpLCBXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCB1c2VyRGF0
YSwgbGlzdGVuZXJJRCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uQXN5bmNTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNz
LCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFt
ZUluZm9EYXRhJiYgZnJhbWVJbmZvLAorICAgIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmll
ciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIE5hdmlnYXRpb25BY3Rpb25EYXRh
JiYgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIEZyYW1lSW5mb0RhdGEmJiBvcmlnaW5hdGluZ0ZyYW1l
SW5mbywgc3RkOjpvcHRpb25hbDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1Bh
Z2VJRCwKKyAgICBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVxdWVz
dCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgSVBDOjpGb3JtRGF0YVJlZmVy
ZW5jZSYmIHJlcXVlc3RCb2R5LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RS
ZXNwb25zZSwKKyAgICBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEsIHVpbnQ2NF90IGxpc3RlbmVy
SUQpCit7CisgICAgYXV0byogZnJhbWUgPSBwcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAg
ICBNRVNTQUdFX0NIRUNLKHByb2Nlc3MsIGZyYW1lKTsKKworICAgIGF1dG8gc2VuZGVyID0gUG9s
aWN5RGVjaXNpb25TZW5kZXI6OmNyZWF0ZShpZGVudGlmaWVyLCBbd2ViUGFnZUlELCBmcmFtZUlE
LCBsaXN0ZW5lcklELCBwcm9jZXNzXSAoY29uc3QgYXV0byYgcG9saWN5RGVjaXNpb24pIHsKKyAg
ICAgICAgcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RGlkUmVjZWl2ZVBvbGljeURl
Y2lzaW9uKGZyYW1lSUQsIGxpc3RlbmVySUQsIHBvbGljeURlY2lzaW9uLCBjcmVhdGVOZXR3b3Jr
RXh0ZW5zaW9uc1NhbmRib3hFeHRlbnNpb25zKHByb2Nlc3MpKSwgd2ViUGFnZUlEKTsKKyAgICB9
KTsKKworICAgIGRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24ocHJvY2Vzcy5jb3B5UmVm
KCksICpmcmFtZSwgV1RGTW92ZShmcmFtZUluZm8pLCBuYXZpZ2F0aW9uSUQsIFdURk1vdmUobmF2
aWdhdGlvbkFjdGlvbkRhdGEpLCBXVEZNb3ZlKG9yaWdpbmF0aW5nRnJhbWVJbmZvKSwgb3JpZ2lu
YXRpbmdQYWdlSUQsCisgICAgICAgIG9yaWdpbmFsUmVxdWVzdCwgV1RGTW92ZShyZXF1ZXN0KSwg
V1RGTW92ZShyZXF1ZXN0Qm9keSksIFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSksIHVzZXJEYXRh
LCBXVEZNb3ZlKHNlbmRlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbihSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFdlYkZy
YW1lUHJveHkmIGZyYW1lLCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCB1aW50NjRfdCBuYXZp
Z2F0aW9uSUQsCisgICAgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiBuYXZpZ2F0aW9uQWN0aW9uRGF0
YSwgRnJhbWVJbmZvRGF0YSYmIG9yaWdpbmF0aW5nRnJhbWVJbmZvRGF0YSwgc3RkOjpvcHRpb25h
bDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1BhZ2VJRCwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYmIHJlcXVlc3QsCisgICAgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNl
ckRhdGEmIHVzZXJEYXRhLCBSZWY8UG9saWN5RGVjaXNpb25TZW5kZXI+JiYgc2VuZGVyKQorewor
ICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiZGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbjogZnJhbWVJRD0lbGx1LCBuYXZpZ2F0aW9uSUQ9JWxsdSIsIGZyYW1lLmZy
YW1lSUQoKS50b1VJbnQ2NCgpLCBuYXZpZ2F0aW9uSUQpOworCisgICAgTE9HKExvYWRpbmcsICJX
ZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24gLSBPcmlnaW5hbCBV
UkwgJXMsIGN1cnJlbnQgdGFyZ2V0IFVSTCAlcyIsIG9yaWdpbmFsUmVxdWVzdC51cmwoKS5zdHJp
bmcoKS51dGY4KCkuZGF0YSgpLCByZXF1ZXN0LnVybCgpLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkp
OworCisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKKwor
ICAgIC8vIE1ha2UgdGhlIHJlcXVlc3Qgd2hvbGUgYWdhaW4gYXMgd2UgZG8gbm90IG5vcm1hbGx5
IGVuY29kZSB0aGUgcmVxdWVzdCdzIGJvZHkgd2hlbiBzZW5kaW5nIGl0IG92ZXIgSVBDLCBmb3Ig
cGVyZm9ybWFuY2UgcmVhc29ucy4KKyAgICByZXF1ZXN0LnNldEhUVFBCb2R5KHJlcXVlc3RCb2R5
LnRha2VEYXRhKCkpOworCisgICAgYXV0byB0cmFuc2FjdGlvbiA9IG1fcGFnZUxvYWRTdGF0ZS50
cmFuc2FjdGlvbigpOworCisgICAgYm9vbCBmcm9tQVBJID0gcmVxdWVzdC51cmwoKSA9PSBtX3Bh
Z2VMb2FkU3RhdGUucGVuZGluZ0FQSVJlcXVlc3RVUkwoKTsKKyAgICBpZiAobmF2aWdhdGlvbklE
ICYmICFmcm9tQVBJKQorICAgICAgICBtX3BhZ2VMb2FkU3RhdGUuY2xlYXJQZW5kaW5nQVBJUmVx
dWVzdCh0cmFuc2FjdGlvbik7CisKKyAgICBpZiAoIWNoZWNrVVJMUmVjZWl2ZWRGcm9tQ3VycmVu
dE9yUHJldmlvdXNXZWJQcm9jZXNzKHByb2Nlc3MsIHJlcXVlc3QudXJsKCkpKSB7CisgICAgICAg
IFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPR19FUlJPUihQcm9jZXNzLCAiSWdub3JpbmcgcmVxdWVz
dCB0byBsb2FkIHRoaXMgbWFpbiByZXNvdXJjZSBiZWNhdXNlIGl0IGlzIG91dHNpZGUgdGhlIHNh
bmRib3giKTsKKyAgICAgICAgc2VuZGVyLT5zZW5kKFBvbGljeURlY2lzaW9uIHsgc2VuZGVyLT5p
ZGVudGlmaWVyKCksIGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4oKSwgUG9saWN5QWN0aW9u
OjpJZ25vcmUsIDAsIHN0ZDo6bnVsbG9wdCwgc3RkOjpudWxsb3B0IH0pOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgTUVTU0FHRV9DSEVDS19VUkwocHJvY2Vzcywgb3JpZ2luYWxSZXF1
ZXN0LnVybCgpKTsKKworICAgIFJlZlB0cjxBUEk6Ok5hdmlnYXRpb24+IG5hdmlnYXRpb247Cisg
ICAgaWYgKG5hdmlnYXRpb25JRCkKKyAgICAgICAgbmF2aWdhdGlvbiA9IG1fbmF2aWdhdGlvblN0
YXRlLT5uYXZpZ2F0aW9uKG5hdmlnYXRpb25JRCk7CisKKyAgICAvLyBXaGVuIHByb2Nlc3Mtc3dh
cHBpbmcgb24gYSByZWRpcmVjdCwgdGhlIG5hdmlnYXRpb25BY3Rpb25EYXRhIC8gb3JpZ2luYXRp
bmdGcmFtZUluZm9EYXRhIHByb3ZpZGVkIGJ5IHRoZSBmcmVzaCBuZXcgV2ViUHJvY2VzcyBhcmUg
aW5hY2N1cmF0ZSBzaW5jZQorICAgIC8vIHRoZSBuZXcgcHJvY2VzcyBkb2VzIG5vdCBoYXZlIHN1
ZmZpY2llbnQgaW5mb3JtYXRpb24uIFRvIGFkZHJlc3MgdGhlIGlzc3VlLCB3ZSByZXN0b3JlIHRo
ZSBpbmZvcm1hdGlvbiB3ZSBzdG9yZWQgb24gdGhlIE5hdmlnYXRpb25BY3Rpb24gZHVyaW5nIHRo
ZSBvcmlnaW5hbCByZXF1ZXN0CisgICAgLy8gcG9saWN5IGRlY2lzaW9uLgorICAgIGlmIChuYXZp
Z2F0aW9uQWN0aW9uRGF0YS5pc1JlZGlyZWN0ICYmIG5hdmlnYXRpb24pIHsKKyAgICAgICAgbmF2
aWdhdGlvbkFjdGlvbkRhdGEgPSBuYXZpZ2F0aW9uLT5sYXN0TmF2aWdhdGlvbkFjdGlvbigpOwor
ICAgICAgICBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5pc1JlZGlyZWN0ID0gdHJ1ZTsKKyAgICAgICAg
b3JpZ2luYXRpbmdGcmFtZUluZm9EYXRhID0gbmF2aWdhdGlvbi0+b3JpZ2luYXRpbmdGcmFtZUlu
Zm8oKTsKKyAgICAgICAgZnJhbWVJbmZvLnNlY3VyaXR5T3JpZ2luID0gbmF2aWdhdGlvbi0+ZGVz
dGluYXRpb25GcmFtZVNlY3VyaXR5T3JpZ2luKCk7CisgICAgfQorCisgICAgaWYgKCFuYXZpZ2F0
aW9uKSB7CisgICAgICAgIGlmIChhdXRvIHRhcmdldEJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXIg
PSBuYXZpZ2F0aW9uQWN0aW9uRGF0YS50YXJnZXRCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyKSB7
CisgICAgICAgICAgICBpZiAoYXV0byogaXRlbSA9IG1fYmFja0ZvcndhcmRMaXN0LT5pdGVtRm9y
SUQoKnRhcmdldEJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXIpKSB7CisgICAgICAgICAgICAgICAg
YXV0byogZnJvbUl0ZW0gPSBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5zb3VyY2VCYWNrRm9yd2FyZEl0
ZW1JZGVudGlmaWVyID8gbV9iYWNrRm9yd2FyZExpc3QtPml0ZW1Gb3JJRCgqbmF2aWdhdGlvbkFj
dGlvbkRhdGEuc291cmNlQmFja0ZvcndhcmRJdGVtSWRlbnRpZmllcikgOiBudWxscHRyOworICAg
ICAgICAgICAgICAgIGlmICghZnJvbUl0ZW0pCisgICAgICAgICAgICAgICAgICAgIGZyb21JdGVt
ID0gbV9iYWNrRm9yd2FyZExpc3QtPmN1cnJlbnRJdGVtKCk7CisgICAgICAgICAgICAgICAgbmF2
aWdhdGlvbiA9IG1fbmF2aWdhdGlvblN0YXRlLT5jcmVhdGVCYWNrRm9yd2FyZE5hdmlnYXRpb24o
Kml0ZW0sIGZyb21JdGVtLCBGcmFtZUxvYWRUeXBlOjpJbmRleGVkQmFja0ZvcndhcmQpOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmICghbmF2aWdhdGlvbikKKyAgICAgICAg
ICAgIG5hdmlnYXRpb24gPSBtX25hdmlnYXRpb25TdGF0ZS0+Y3JlYXRlTG9hZFJlcXVlc3ROYXZp
Z2F0aW9uKFJlc291cmNlUmVxdWVzdChyZXF1ZXN0KSwgbV9iYWNrRm9yd2FyZExpc3QtPmN1cnJl
bnRJdGVtKCkpOworICAgIH0KKworICAgIG5hdmlnYXRpb25JRCA9IG5hdmlnYXRpb24tPm5hdmln
YXRpb25JRCgpOworCisgICAgLy8gTWFrZSBzdXJlIHRoZSBwcm92aXNpb25hbCBwYWdlIGFsd2F5
cyBoYXMgdGhlIGxhdGVzdCBuYXZpZ2F0aW9uSUQuCisgICAgaWYgKG1fcHJvdmlzaW9uYWxQYWdl
ICYmICZtX3Byb3Zpc2lvbmFsUGFnZS0+cHJvY2VzcygpID09IHByb2Nlc3MucHRyKCkpCisgICAg
ICAgIG1fcHJvdmlzaW9uYWxQYWdlLT5zZXROYXZpZ2F0aW9uSUQobmF2aWdhdGlvbklEKTsKKwor
ICAgIG5hdmlnYXRpb24tPnNldEN1cnJlbnRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdChyZXF1ZXN0
KSwgcHJvY2Vzcy0+Y29yZVByb2Nlc3NJZGVudGlmaWVyKCkpOworICAgIG5hdmlnYXRpb24tPnNl
dExhc3ROYXZpZ2F0aW9uQWN0aW9uKG5hdmlnYXRpb25BY3Rpb25EYXRhKTsKKyAgICBuYXZpZ2F0
aW9uLT5zZXRPcmlnaW5hdGluZ0ZyYW1lSW5mbyhvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEpOwor
ICAgIG5hdmlnYXRpb24tPnNldERlc3RpbmF0aW9uRnJhbWVTZWN1cml0eU9yaWdpbihmcmFtZUlu
Zm8uc2VjdXJpdHlPcmlnaW4pOworCisgICAgQVBJOjpOYXZpZ2F0aW9uKiBtYWluRnJhbWVOYXZp
Z2F0aW9uID0gZnJhbWUuaXNNYWluRnJhbWUoKSA/IG5hdmlnYXRpb24uZ2V0KCkgOiBudWxscHRy
OworICAgIFdlYkZyYW1lUHJveHkqIG9yaWdpbmF0aW5nRnJhbWUgPSBvcmlnaW5hdGluZ0ZyYW1l
SW5mb0RhdGEuZnJhbWVJRCA/IHByb2Nlc3MtPndlYkZyYW1lKCpvcmlnaW5hdGluZ0ZyYW1lSW5m
b0RhdGEuZnJhbWVJRCkgOiBudWxscHRyOworICAgIGF1dG8gZGVzdGluYXRpb25GcmFtZUluZm8g
PSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKEZyYW1lSW5mb0RhdGEgeyBmcmFtZUluZm8gfSwgdGhp
cyk7CisgICAgUmVmUHRyPEFQSTo6RnJhbWVJbmZvPiBzb3VyY2VGcmFtZUluZm87CisgICAgaWYg
KCFmcm9tQVBJICYmIG9yaWdpbmF0aW5nRnJhbWUgPT0gJmZyYW1lKQorICAgICAgICBzb3VyY2VG
cmFtZUluZm8gPSBkZXN0aW5hdGlvbkZyYW1lSW5mby5jb3B5UmVmKCk7CisgICAgZWxzZSBpZiAo
IWZyb21BUEkpIHsKKyAgICAgICAgYXV0byogb3JpZ2luYXRpbmdQYWdlID0gb3JpZ2luYXRpbmdQ
YWdlSUQgPyBwcm9jZXNzLT53ZWJQYWdlKCpvcmlnaW5hdGluZ1BhZ2VJRCkgOiBudWxscHRyOwor
ICAgICAgICBzb3VyY2VGcmFtZUluZm8gPSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKFdURk1vdmUo
b3JpZ2luYXRpbmdGcmFtZUluZm9EYXRhKSwgb3JpZ2luYXRpbmdQYWdlKTsKKyAgICB9CisKKyAg
ICBib29sIHNob3VsZE9wZW5BcHBMaW5rcyA9ICFtX3Nob3VsZFN1cHByZXNzQXBwTGlua3NJbk5l
eHROYXZpZ2F0aW9uUG9saWN5RGVjaXNpb24KKyAgICAgICAgJiYgZGVzdGluYXRpb25GcmFtZUlu
Zm8tPmlzTWFpbkZyYW1lKCkKKyAgICAgICAgJiYgKG1fbWFpbkZyYW1lICYmIG1fbWFpbkZyYW1l
LT51cmwoKS5ob3N0KCkgIT0gcmVxdWVzdC51cmwoKS5ob3N0KCkpCisgICAgICAgICYmIG5hdmln
YXRpb25BY3Rpb25EYXRhLm5hdmlnYXRpb25UeXBlICE9IFdlYkNvcmU6Ok5hdmlnYXRpb25UeXBl
OjpCYWNrRm9yd2FyZDsKKworICAgIGF1dG8gdXNlckluaXRpYXRlZEFjdGl2aXR5ID0gcHJvY2Vz
cy0+dXNlckluaXRpYXRlZEFjdGl2aXR5KG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJl
VG9rZW5JZGVudGlmaWVyKTsKKyAgICBhdXRvIG5hdmlnYXRpb25BY3Rpb24gPSBBUEk6Ok5hdmln
YXRpb25BY3Rpb246OmNyZWF0ZShXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb25EYXRhKSwgc291cmNl
RnJhbWVJbmZvLmdldCgpLCBkZXN0aW5hdGlvbkZyYW1lSW5mby5wdHIoKSwgc3RkOjpudWxsb3B0
LCBSZXNvdXJjZVJlcXVlc3QocmVxdWVzdCksIG9yaWdpbmFsUmVxdWVzdC51cmwoKSwgc2hvdWxk
T3BlbkFwcExpbmtzLCBXVEZNb3ZlKHVzZXJJbml0aWF0ZWRBY3Rpdml0eSksIG1haW5GcmFtZU5h
dmlnYXRpb24pOworCisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQorICAgIGlmIChmcmFt
ZS5kaWRIYW5kbGVDb250ZW50RmlsdGVyVW5ibG9ja05hdmlnYXRpb24ocmVxdWVzdCkpIHsKKyAg
ICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HX0VSUk9SKFByb2Nlc3MsICJJZ25vcmluZyBy
ZXF1ZXN0IHRvIGxvYWQgdGhpcyBtYWluIHJlc291cmNlIGJlY2F1c2UgaXQgd2FzIGhhbmRsZWQg
YnkgY29udGVudCBmaWx0ZXIiKTsKKyAgICAgICAgcmV0dXJuIHJlY2VpdmVkUG9saWN5RGVjaXNp
b24oUG9saWN5QWN0aW9uOjpJZ25vcmUsIG1fbmF2aWdhdGlvblN0YXRlLT5uYXZpZ2F0aW9uKG5h
dmlnYXRpb25JRCksIG51bGxwdHIsIFdURk1vdmUobmF2aWdhdGlvbkFjdGlvbiksIFdURk1vdmUo
c2VuZGVyKSk7CisgICAgfQorI2VuZGlmCisKKyAgICBTaG91bGRFeHBlY3RTYWZlQnJvd3NpbmdS
ZXN1bHQgc2hvdWxkRXhwZWN0U2FmZUJyb3dzaW5nUmVzdWx0ID0gU2hvdWxkRXhwZWN0U2FmZUJy
b3dzaW5nUmVzdWx0OjpZZXM7CisgICAgaWYgKCFtX3ByZWZlcmVuY2VzLT5zYWZlQnJvd3NpbmdF
bmFibGVkKCkpCisgICAgICAgIHNob3VsZEV4cGVjdFNhZmVCcm93c2luZ1Jlc3VsdCA9IFNob3Vs
ZEV4cGVjdFNhZmVCcm93c2luZ1Jlc3VsdDo6Tm87CisKKyAgICBTaG91bGRFeHBlY3RBcHBCb3Vu
ZERvbWFpblJlc3VsdCBzaG91bGRFeHBlY3RBcHBCb3VuZERvbWFpblJlc3VsdCA9IFNob3VsZEV4
cGVjdEFwcEJvdW5kRG9tYWluUmVzdWx0OjpObzsKKyNpZiBFTkFCTEUoQVBQX0JPVU5EX0RPTUFJ
TlMpCisgICAgc2hvdWxkRXhwZWN0QXBwQm91bmREb21haW5SZXN1bHQgPSBTaG91bGRFeHBlY3RB
cHBCb3VuZERvbWFpblJlc3VsdDo6WWVzOworI2VuZGlmCisKKyAgICBhdXRvIGxpc3RlbmVyID0g
bWFrZVJlZihmcmFtZS5zZXRVcFBvbGljeUxpc3RlbmVyUHJveHkoW3RoaXMsIHByb3RlY3RlZFRo
aXMgPSBtYWtlUmVmKCp0aGlzKSwgZnJhbWUgPSBtYWtlUmVmKGZyYW1lKSwgc2VuZGVyID0gV1RG
TW92ZShzZW5kZXIpLCBuYXZpZ2F0aW9uLCBuYXZpZ2F0aW9uQWN0aW9uLCBmcmFtZUluZm8sIHVz
ZXJEYXRhT2JqZWN0ID0gcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0
YS5vYmplY3QoKSkuZ2V0KCldIChQb2xpY3lBY3Rpb24gcG9saWN5QWN0aW9uLCBBUEk6OldlYnNp
dGVQb2xpY2llcyogcG9saWNpZXMsIFByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQgcHJvY2Vz
c1N3YXBSZXF1ZXN0ZWRCeUNsaWVudCwgUmVmUHRyPFNhZmVCcm93c2luZ1dhcm5pbmc+JiYgc2Fm
ZUJyb3dzaW5nV2FybmluZywgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bj4gaXNBcHBCb3VuZERvbWFpbikgbXV0YWJsZSB7CisgICAgICAgIFdFQlBBR0VQUk9YWV9SRUxF
QVNFX0xPRyhMb2FkaW5nLCAiZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbjogbGlzdGVu
ZXIgY2FsbGVkOiBmcmFtZUlEPSVsbHUsIG5hdmlnYXRpb25JRD0lbGx1LCBwb2xpY3lBY3Rpb249
JXUsIHNhZmVCcm93c2luZ1dhcm5pbmc9JWQsIGlzQXBwQm91bmREb21haW49JWQiLCBmcmFtZS0+
ZnJhbWVJRCgpLnRvVUludDY0KCksIG5hdmlnYXRpb24gPyBuYXZpZ2F0aW9uLT5uYXZpZ2F0aW9u
SUQoKSA6IDAsICh1bnNpZ25lZClwb2xpY3lBY3Rpb24sICEhc2FmZUJyb3dzaW5nV2FybmluZywg
ISFpc0FwcEJvdW5kRG9tYWluKTsKKworICAgICAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0g
W3RoaXMsIHByb3RlY3RlZFRoaXMsIGZyYW1lLCBzZW5kZXIgPSBXVEZNb3ZlKHNlbmRlciksIG5h
dmlnYXRpb24sIG5hdmlnYXRpb25BY3Rpb24gPSBXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb24pLCBw
cm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50LCBwb2xpY2llcyA9IG1ha2VSZWZQdHIocG9saWNp
ZXMpXSAoUG9saWN5QWN0aW9uIHBvbGljeUFjdGlvbikgbXV0YWJsZSB7CisgICAgICAgICAgICBp
ZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkpIHsKKyAgICAgICAgICAgICAgICBpZiAoIXBvbGljaWVz
KSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvKiBkZWZhdWx0UG9saWNpZXMgPSBtX2Nv
bmZpZ3VyYXRpb24tPmRlZmF1bHRXZWJzaXRlUG9saWNpZXMoKSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHBvbGljaWVzID0gZGVmYXVsdFBvbGljaWVzLT5jb3B5KCk7CisgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgIGlmIChwb2xpY2llcykKKyAgICAgICAgICAgICAgICAgICAg
bmF2aWdhdGlvbi0+c2V0RWZmZWN0aXZlQ29udGVudE1vZGUoZWZmZWN0aXZlQ29udGVudE1vZGVB
ZnRlckFkanVzdGluZ1BvbGljaWVzKCpwb2xpY2llcywgbmF2aWdhdGlvbi0+Y3VycmVudFJlcXVl
c3QoKSkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmVjZWl2ZWROYXZpZ2F0aW9uUG9s
aWN5RGVjaXNpb24ocG9saWN5QWN0aW9uLCBuYXZpZ2F0aW9uLmdldCgpLCBXVEZNb3ZlKG5hdmln
YXRpb25BY3Rpb24pLCBwcm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50LCBmcmFtZSwgV1RGTW92
ZShwb2xpY2llcyksIFdURk1vdmUoc2VuZGVyKSk7CisgICAgICAgIH07CisKKyNpZiBFTkFCTEUo
QVBQX0JPVU5EX0RPTUFJTlMpCisgICAgICAgIGlmIChwb2xpY3lBY3Rpb24gIT0gUG9saWN5QWN0
aW9uOjpJZ25vcmUpIHsKKyAgICAgICAgICAgIGlmICghc2V0SXNOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbkFuZENoZWNrSWZQZXJtaXR0ZWQoZnJhbWUtPmlzTWFpbkZyYW1lKCksIG5hdmlnYXRp
b24tPmN1cnJlbnRSZXF1ZXN0KCkudXJsKCksIGlzQXBwQm91bmREb21haW4pKSB7CisgICAgICAg
ICAgICAgICAgYXV0byBlcnJvciA9IGVycm9yRm9yVW5wZXJtaXR0ZWRBcHBCb3VuZERvbWFpbk5h
dmlnYXRpb24obmF2aWdhdGlvbi0+Y3VycmVudFJlcXVlc3QoKS51cmwoKSk7CisgICAgICAgICAg
ICAgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT5kaWRGYWlsUHJvdmlzaW9uYWxOYXZpZ2F0aW9uV2l0
aEVycm9yKCp0aGlzLCBGcmFtZUluZm9EYXRhIHsgZnJhbWVJbmZvIH0sIG5hdmlnYXRpb24uZ2V0
KCksIGVycm9yLCB1c2VyRGF0YU9iamVjdCk7CisgICAgICAgICAgICAgICAgV0VCUEFHRVBST1hZ
X1JFTEVBU0VfTE9HX0VSUk9SKExvYWRpbmcsICJJZ25vcmluZyByZXF1ZXN0IHRvIGxvYWQgdGhp
cyBtYWluIHJlc291cmNlIGJlY2F1c2UgaXQgaXMgYXR0ZW1wdGluZyB0byBuYXZpZ2F0ZSBhd2F5
IGZyb20gYW4gYXBwLWJvdW5kIGRvbWFpbiBvciBuYXZpZ2F0ZSBhZnRlciB1c2luZyByZXN0cmlj
dGVkIEFQSXMiKTsKKyAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihQb2xpY3lBY3Rp
b246Oklnbm9yZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgaWYgKGZyYW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICAgICAgICAgIG1faXNU
b3BGcmFtZU5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluID0gbV9pc05hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluOworICAgICAgICB9CisjZW5kaWYKKworICAgICAgICBpZiAoIW1fcGFnZUNsaWVu
dCkKKyAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihwb2xpY3lBY3Rpb24pOwor
CisgICAgICAgIG1fcGFnZUNsaWVudC0+Y2xlYXJTYWZlQnJvd3NpbmdXYXJuaW5nKCk7CisKKyAg
ICAgICAgaWYgKHNhZmVCcm93c2luZ1dhcm5pbmcpIHsKKyAgICAgICAgICAgIGlmIChmcmFtZS0+
aXNNYWluRnJhbWUoKSAmJiBzYWZlQnJvd3NpbmdXYXJuaW5nLT51cmwoKS5pc1ZhbGlkKCkpIHsK
KyAgICAgICAgICAgICAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5z
YWN0aW9uKCk7CisgICAgICAgICAgICAgICAgbV9wYWdlTG9hZFN0YXRlLnNldFBlbmRpbmdBUElS
ZXF1ZXN0KHRyYW5zYWN0aW9uLCB7IG5hdmlnYXRpb24tPm5hdmlnYXRpb25JRCgpLCBzYWZlQnJv
d3NpbmdXYXJuaW5nLT51cmwoKS5zdHJpbmcoKSB9KTsKKyAgICAgICAgICAgICAgICBtX3BhZ2VM
b2FkU3RhdGUuY29tbWl0Q2hhbmdlcygpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBh
dXRvIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgICAg
ICAgICBtX3BhZ2VMb2FkU3RhdGUuc2V0VGl0bGVGcm9tU2FmZUJyb3dzaW5nV2FybmluZyh0cmFu
c2FjdGlvbiwgc2FmZUJyb3dzaW5nV2FybmluZy0+dGl0bGUoKSk7CisKKyAgICAgICAgICAgIG1f
cGFnZUNsaWVudC0+c2hvd1NhZmVCcm93c2luZ1dhcm5pbmcoKnNhZmVCcm93c2luZ1dhcm5pbmcs
IFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgY29tcGxldGlv
bkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgcG9saWN5QWN0aW9uXSAoYXV0
byYmIHJlc3VsdCkgbXV0YWJsZSB7CisKKyAgICAgICAgICAgICAgICBhdXRvIHRyYW5zYWN0aW9u
ID0gbV9wYWdlTG9hZFN0YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgICAgICAgICAgICAgbV9wYWdl
TG9hZFN0YXRlLnNldFRpdGxlRnJvbVNhZmVCcm93c2luZ1dhcm5pbmcodHJhbnNhY3Rpb24sIHsg
fSk7CisKKyAgICAgICAgICAgICAgICBzd2l0Y2hPbihyZXN1bHQsIFsmXSAoY29uc3QgVVJMJiB1
cmwpIHsKKyAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoUG9saWN5QWN0aW9u
OjpJZ25vcmUpOworICAgICAgICAgICAgICAgICAgICBsb2FkUmVxdWVzdCh7IHVybCB9KTsKKyAg
ICAgICAgICAgICAgICB9LCBbJl0gKENvbnRpbnVlVW5zYWZlTG9hZCBjb250aW51ZVVuc2FmZUxv
YWQpIHsKKyAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChjb250aW51ZVVuc2FmZUxvYWQpIHsK
KyAgICAgICAgICAgICAgICAgICAgY2FzZSBDb250aW51ZVVuc2FmZUxvYWQ6Ok5vOgorICAgICAg
ICAgICAgICAgICAgICAgICAgaWYgKCFoYXNDb21taXR0ZWRBbnlQcm92aXNpb25hbExvYWRzKCkp
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbV91aUNsaWVudC0+Y2xvc2UocHJvdGVjdGVk
VGhpcy5wdHIoKSk7CisgICAgICAgICAgICAgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihQ
b2xpY3lBY3Rpb246Oklnbm9yZSk7CisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgICAgICAgICAgY2FzZSBDb250aW51ZVVuc2FmZUxvYWQ6OlllczoKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHBvbGljeUFjdGlvbik7CisgICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgfSk7CisgICAgICAgICAgICBtX3VpQ2xpZW50LT5kaWRT
aG93U2FmZUJyb3dzaW5nV2FybmluZygpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHBvbGljeUFjdGlvbik7CisKKyAgICB9LCBzaG91
bGRFeHBlY3RTYWZlQnJvd3NpbmdSZXN1bHQsIHNob3VsZEV4cGVjdEFwcEJvdW5kRG9tYWluUmVz
dWx0KSk7CisgICAgaWYgKHNob3VsZEV4cGVjdFNhZmVCcm93c2luZ1Jlc3VsdCA9PSBTaG91bGRF
eHBlY3RTYWZlQnJvd3NpbmdSZXN1bHQ6OlllcykKKyAgICAgICAgYmVnaW5TYWZlQnJvd3NpbmdD
aGVjayhyZXF1ZXN0LnVybCgpLCBmcmFtZS5pc01haW5GcmFtZSgpLCBsaXN0ZW5lcik7CisjaWYg
RU5BQkxFKEFQUF9CT1VORF9ET01BSU5TKQorICAgIGJvb2wgc2hvdWxkU2VuZFNlY3VyaXR5T3Jp
Z2luRGF0YSA9ICFmcmFtZS5pc01haW5GcmFtZSgpICYmIHNob3VsZFRyZWF0VVJMUHJvdG9jb2xB
c0FwcEJvdW5kKHJlcXVlc3QudXJsKCksIHdlYnNpdGVEYXRhU3RvcmUoKS5jb25maWd1cmF0aW9u
KCkuZW5hYmxlSW5BcHBCcm93c2VyUHJpdmFjeUZvclRlc3RpbmcoKSk7CisgICAgYXV0byBob3N0
ID0gc2hvdWxkU2VuZFNlY3VyaXR5T3JpZ2luRGF0YSA/IGZyYW1lSW5mby5zZWN1cml0eU9yaWdp
bi5ob3N0IDogcmVxdWVzdC51cmwoKS5ob3N0KCk7CisgICAgYXV0byBwcm90b2NvbCA9IHNob3Vs
ZFNlbmRTZWN1cml0eU9yaWdpbkRhdGEgPyBmcmFtZUluZm8uc2VjdXJpdHlPcmlnaW4ucHJvdG9j
b2wgOiByZXF1ZXN0LnVybCgpLnByb3RvY29sKCk7CisgICAgbV93ZWJzaXRlRGF0YVN0b3JlLT5i
ZWdpbkFwcEJvdW5kRG9tYWluQ2hlY2soaG9zdC50b1N0cmluZygpLCBwcm90b2NvbC50b1N0cmlu
ZygpLCBsaXN0ZW5lcik7CisjZW5kaWYKKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lO
R19QUkVWRU5USU9OKQorICAgIGF1dG8gd2FzUG90ZW50aWFsbHlJbml0aWF0ZWRCeVVzZXIgPSBu
YXZpZ2F0aW9uLT5pc0xvYWRlZFdpdGhOYXZpZ2F0aW9uU2hhcmVkKCkgfHwgdXNlckluaXRpYXRl
ZEFjdGl2aXR5OworICAgIGlmICghc2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkKKyAgICAgICAg
bG9nRnJhbWVOYXZpZ2F0aW9uKGZyYW1lLCBVUkwoVVJMKCksIG1fcGFnZUxvYWRTdGF0ZS51cmwo
KSksIHJlcXVlc3QsIHJlZGlyZWN0UmVzcG9uc2UudXJsKCksIHdhc1BvdGVudGlhbGx5SW5pdGlh
dGVkQnlVc2VyKTsKKyNlbmRpZgorCisgICAgaWYgKG1fcG9saWN5Q2xpZW50KQorICAgICAgICBt
X3BvbGljeUNsaWVudC0+ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbigqdGhpcywgJmZy
YW1lLCBXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb24pLCBvcmlnaW5hdGluZ0ZyYW1lLCBvcmlnaW5h
bFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUobGlzdGVuZXIpLCBwcm9jZXNzLT50
cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CisgICAg
ZWxzZSB7CisjaWYgSEFWRShBUFBfU1NPKQorICAgICAgICBpZiAobV9zaG91bGRTdXBwcmVzc1NP
QXV0aG9yaXphdGlvbkluTmV4dE5hdmlnYXRpb25Qb2xpY3lEZWNpc2lvbiB8fCAhbV9wcmVmZXJl
bmNlcy0+aXNFeHRlbnNpYmxlU1NPRW5hYmxlZCgpKQorICAgICAgICAgICAgbmF2aWdhdGlvbkFj
dGlvbi0+dW5zZXRTaG91bGRQZXJmb3JtU09BdXRob3JpemF0aW9uKCk7CisjZW5kaWYKKworICAg
ICAgICBtX25hdmlnYXRpb25DbGllbnQtPmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
KnRoaXMsIFdURk1vdmUobmF2aWdhdGlvbkFjdGlvbiksIFdURk1vdmUobGlzdGVuZXIpLCBwcm9j
ZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7
CisgICAgfQorCisgICAgbV9zaG91bGRTdXBwcmVzc0FwcExpbmtzSW5OZXh0TmF2aWdhdGlvblBv
bGljeURlY2lzaW9uID0gZmFsc2U7CisKKyNpZiBIQVZFKEFQUF9TU08pCisgICAgbV9zaG91bGRT
dXBwcmVzc1NPQXV0aG9yaXphdGlvbkluTmV4dE5hdmlnYXRpb25Qb2xpY3lEZWNpc2lvbiA9IGZh
bHNlOworI2VuZGlmCit9CisKK1dlYlBhZ2VQcm94eSogV2ViUGFnZVByb3h5Ojpub25FcGhlbWVy
YWxXZWJQYWdlUHJveHkoKQoreworICAgIGF1dG8gcHJvY2Vzc1Bvb2xzID0gV2ViUHJvY2Vzc1Bv
b2w6OmFsbFByb2Nlc3NQb29scygpOworICAgIGlmIChwcm9jZXNzUG9vbHMuaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAKKyAgICBmb3IgKGF1dG8mIHdlYlByb2Nlc3Mg
OiBwcm9jZXNzUG9vbHNbMF0tPnByb2Nlc3NlcygpKSB7CisgICAgICAgIGZvciAoYXV0byYgcGFn
ZSA6IHdlYlByb2Nlc3MtPnBhZ2VzKCkpIHsKKyAgICAgICAgICAgIGlmIChwYWdlLT5zZXNzaW9u
SUQoKS5pc0VwaGVtZXJhbCgpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAg
ICAgcmV0dXJuIHBhZ2U7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIG51bGxwdHI7Cit9
CisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojpsb2dGcmFtZU5hdmlnYXRpb24oY29uc3QgV2ViRnJhbWVQcm94eSYgZnJhbWUs
IGNvbnN0IFVSTCYgcGFnZVVSTCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBVUkwmIHJlZGlyZWN0VVJMLCBib29sIHdhc1BvdGVudGlhbGx5SW5pdGlhdGVk
QnlVc2VyKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisgICAgCisgICAgYXV0
byBzb3VyY2VVUkwgPSByZWRpcmVjdFVSTDsKKyAgICBib29sIGlzUmVkaXJlY3QgPSAhcmVkaXJl
Y3RVUkwuaXNOdWxsKCk7CisgICAgaWYgKCFpc1JlZGlyZWN0KSB7CisgICAgICAgIHNvdXJjZVVS
TCA9IGZyYW1lLnVybCgpOworICAgICAgICBpZiAoc291cmNlVVJMLmlzTnVsbCgpKQorICAgICAg
ICAgICAgc291cmNlVVJMID0gcGFnZVVSTDsKKyAgICB9CisgICAgCisgICAgYXV0byYgdGFyZ2V0
VVJMID0gcmVxdWVzdC51cmwoKTsKKyAgICAKKyAgICBpZiAoIXRhcmdldFVSTC5pc1ZhbGlkKCkg
fHwgIXBhZ2VVUkwuaXNWYWxpZCgpKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgYXV0byB0
YXJnZXRIb3N0ID0gdGFyZ2V0VVJMLmhvc3QoKTsKKyAgICBhdXRvIG1haW5GcmFtZUhvc3QgPSBw
YWdlVVJMLmhvc3QoKTsKKyAgICAKKyAgICBpZiAodGFyZ2V0SG9zdC5pc0VtcHR5KCkgfHwgbWFp
bkZyYW1lSG9zdC5pc0VtcHR5KCkgfHwgdGFyZ2V0SG9zdCA9PSBzb3VyY2VVUkwuaG9zdCgpKQor
ICAgICAgICByZXR1cm47CisKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3Mo
KS5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzczo6TG9nRnJhbWVOYXZpZ2F0aW9uKG1fd2Vi
c2l0ZURhdGFTdG9yZS0+c2Vzc2lvbklEKCksIFJlZ2lzdHJhYmxlRG9tYWluIHsgdGFyZ2V0VVJM
IH0sIFJlZ2lzdHJhYmxlRG9tYWluIHsgcGFnZVVSTCB9LCBSZWdpc3RyYWJsZURvbWFpbiB7IHNv
dXJjZVVSTCB9LCBpc1JlZGlyZWN0LCBmcmFtZS5pc01haW5GcmFtZSgpLCBNb25vdG9uaWNUaW1l
Ojpub3coKSAtIG1fZGlkRmluaXNoRG9jdW1lbnRMb2FkRm9yTWFpbkZyYW1lVGltZXN0YW1wLCB3
YXNQb3RlbnRpYWxseUluaXRpYXRlZEJ5VXNlciksIDApOworfQorI2VuZGlmCisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uU3luYyhGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCwgYm9vbCBpc01haW5GcmFtZSwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5m
bywgUG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsCisgICAgdWludDY0X3QgbmF2aWdh
dGlvbklELCBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYmIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBGcmFt
ZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6b3B0aW9uYWw8V2ViUGFnZVBy
b3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsCisgICAgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsCisgICAgY29uc3QgVXNlckRhdGEm
IHVzZXJEYXRhLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0
aW9uQWN0aW9uU3luYzo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCit7CisgICAgYXV0byogZnJhbWUg
PSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghZnJhbWUpIHsKKyAgICAg
ICAgLy8gVGhpcyBzeW5jaHJvbm91cyBJUEMgbWVzc2FnZSB3YXMgcHJvY2Vzc2VkIGJlZm9yZSB0
aGUgYXN5bmNocm9ub3VzIERpZENyZWF0ZU1haW5GcmFtZSAvIERpZENyZWF0ZVN1YmZyYW1lIG9u
ZSBzbyB3ZSBkbyBub3Qga25vdyBhYm91dCB0aGlzIGZyYW1lSUQgeWV0LgorICAgICAgICBpZiAo
aXNNYWluRnJhbWUpCisgICAgICAgICAgICBkaWRDcmVhdGVNYWluRnJhbWUoZnJhbWVJRCk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRpZENyZWF0ZVN1YmZyYW1lKGZyYW1lSUQpOworICAg
IH0KKworICAgIGRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25TeW5jU2hhcmVkKG1fcHJv
Y2Vzcy5jb3B5UmVmKCksIGZyYW1lSUQsIGlzTWFpbkZyYW1lLCBXVEZNb3ZlKGZyYW1lSW5mbyks
IGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwgV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSks
IFdURk1vdmUob3JpZ2luYXRpbmdGcmFtZUluZm8pLCBvcmlnaW5hdGluZ1BhZ2VJRCwgb3JpZ2lu
YWxSZXF1ZXN0LCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZNb3ZlKHJlcXVlc3RCb2R5KSwgV1RGTW92
ZShyZWRpcmVjdFJlc3BvbnNlKSwgdXNlckRhdGEsIFdURk1vdmUocmVwbHkpKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25TeW5jU2hhcmVk
KFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQs
IGJvb2wgaXNNYWluRnJhbWUsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFBvbGljeUNoZWNr
SWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIE5hdmlnYXRpb25B
Y3Rpb25EYXRhJiYgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIEZyYW1lSW5mb0RhdGEmJiBvcmlnaW5h
dGluZ0ZyYW1lSW5mbywgc3RkOjpvcHRpb25hbDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmln
aW5hdGluZ1BhZ2VJRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJl
cXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIElQQzo6Rm9ybURhdGFS
ZWZlcmVuY2UmJiByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGly
ZWN0UmVzcG9uc2UsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSwgTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6RGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvblN5bmM6OkRlbGF5ZWRSZXBseSYm
IHJlcGx5KQoreworICAgIGF1dG8gc2VuZGVyID0gUG9saWN5RGVjaXNpb25TZW5kZXI6OmNyZWF0
ZShpZGVudGlmaWVyLCBXVEZNb3ZlKHJlcGx5KSk7CisKKyAgICBhdXRvKiBmcmFtZSA9IHByb2Nl
c3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2VzcywgZnJhbWUp
OworCisgICAgZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbihXVEZNb3ZlKHByb2Nlc3Mp
LCAqZnJhbWUsIFdURk1vdmUoZnJhbWVJbmZvKSwgbmF2aWdhdGlvbklELCBXVEZNb3ZlKG5hdmln
YXRpb25BY3Rpb25EYXRhKSwgV1RGTW92ZShvcmlnaW5hdGluZ0ZyYW1lSW5mbyksIG9yaWdpbmF0
aW5nUGFnZUlELCBvcmlnaW5hbFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUocmVx
dWVzdEJvZHkpLCBXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCB1c2VyRGF0YSwgc2VuZGVyLmNv
cHlSZWYoKSk7CisKKyAgICAvLyBJZiB0aGUgY2xpZW50IGRpZCBub3QgcmVzcG9uZCBzeW5jaHJv
bm91c2x5LCBwcm9jZWVkIHdpdGggdGhlIGxvYWQuCisgICAgc2VuZGVyLT5zZW5kKFBvbGljeURl
Y2lzaW9uIHsgc2VuZGVyLT5pZGVudGlmaWVyKCksIGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4oKSwgUG9saWN5QWN0aW9uOjpVc2UsIG5hdmlnYXRpb25JRCwgc3RkOjpudWxsb3B0LCBzdGQ6
Om51bGxvcHQgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOZXdX
aW5kb3dBY3Rpb24oRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFt
ZUluZm8sIFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCBOYXZpZ2F0aW9uQWN0aW9u
RGF0YSYmIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBj
b25zdCBTdHJpbmcmIGZyYW1lTmFtZSwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRh
dGEmIHVzZXJEYXRhKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VD
bGllbnQoKSk7CisKKyAgICBXZWJGcmFtZVByb3h5KiBmcmFtZSA9IG1fcHJvY2Vzcy0+d2ViRnJh
bWUoZnJhbWVJRCk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsKKyAgICBN
RVNTQUdFX0NIRUNLX1VSTChtX3Byb2Nlc3MsIHJlcXVlc3QudXJsKCkpOworCisgICAgUmVmUHRy
PEFQSTo6RnJhbWVJbmZvPiBzb3VyY2VGcmFtZUluZm87CisgICAgaWYgKGZyYW1lKQorICAgICAg
ICBzb3VyY2VGcmFtZUluZm8gPSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKFdURk1vdmUoZnJhbWVJ
bmZvKSwgdGhpcyk7CisKKyAgICBhdXRvIHVzZXJJbml0aWF0ZWRBY3Rpdml0eSA9IG1fcHJvY2Vz
cy0+dXNlckluaXRpYXRlZEFjdGl2aXR5KG5hdmlnYXRpb25BY3Rpb25EYXRhLnVzZXJHZXN0dXJl
VG9rZW5JZGVudGlmaWVyKTsKKyAgICBib29sIHNob3VsZE9wZW5BcHBMaW5rcyA9IG1fbWFpbkZy
YW1lICYmIG1fbWFpbkZyYW1lLT51cmwoKS5ob3N0KCkgIT0gcmVxdWVzdC51cmwoKS5ob3N0KCk7
CisgICAgYXV0byBuYXZpZ2F0aW9uQWN0aW9uID0gQVBJOjpOYXZpZ2F0aW9uQWN0aW9uOjpjcmVh
dGUoV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIHNvdXJjZUZyYW1lSW5mby5nZXQoKSwg
bnVsbHB0ciwgZnJhbWVOYW1lLCBSZXNvdXJjZVJlcXVlc3QocmVxdWVzdCksIFVSTCB7IH0sIHNo
b3VsZE9wZW5BcHBMaW5rcywgV1RGTW92ZSh1c2VySW5pdGlhdGVkQWN0aXZpdHkpKTsKKyAgICAK
KyAgICBhdXRvIGxpc3RlbmVyID0gbWFrZVJlZihmcmFtZS0+c2V0VXBQb2xpY3lMaXN0ZW5lclBy
b3h5KFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGlkZW50aWZpZXIsIGxp
c3RlbmVySUQsIGZyYW1lSUQsIG5hdmlnYXRpb25BY3Rpb25dIChQb2xpY3lBY3Rpb24gcG9saWN5
QWN0aW9uLCBBUEk6OldlYnNpdGVQb2xpY2llcyosIFByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGll
bnQgcHJvY2Vzc1N3YXBSZXF1ZXN0ZWRCeUNsaWVudCwgUmVmUHRyPFNhZmVCcm93c2luZ1dhcm5p
bmc+JiYgc2FmZUJyb3dzaW5nV2FybmluZywgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBC
b3VuZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikgbXV0YWJsZSB7CisgICAg
ICAgIC8vIEZJWE1FOiBBc3NlcnQgdGhlIEFQSTo6V2Vic2l0ZVBvbGljaWVzKiBpcyBudWxscHRy
IGhlcmUgb25jZSBjbGllbnRzIG9mIFdLRnJhbWVQb2xpY3lMaXN0ZW5lclVzZVdpdGhQb2xpY2ll
cyBnbyBhd2F5LgorICAgICAgICBSRUxFQVNFX0FTU0VSVChwcm9jZXNzU3dhcFJlcXVlc3RlZEJ5
Q2xpZW50ID09IFByb2Nlc3NTd2FwUmVxdWVzdGVkQnlDbGllbnQ6Ok5vKTsKKyAgICAgICAgQVNT
RVJUX1VOVVNFRChzYWZlQnJvd3NpbmdXYXJuaW5nLCAhc2FmZUJyb3dzaW5nV2FybmluZyk7CisK
KyAgICAgICAgYXV0byBzZW5kZXIgPSBQb2xpY3lEZWNpc2lvblNlbmRlcjo6Y3JlYXRlKGlkZW50
aWZpZXIsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgZnJh
bWVJRCwgbGlzdGVuZXJJRF0gKGNvbnN0IGF1dG8mIHBvbGljeURlY2lzaW9uKSB7CisgICAgICAg
ICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRSZWNlaXZlUG9saWN5RGVjaXNpb24oZnJh
bWVJRCwgbGlzdGVuZXJJRCwgcG9saWN5RGVjaXNpb24sIGNyZWF0ZU5ldHdvcmtFeHRlbnNpb25z
U2FuZGJveEV4dGVuc2lvbnMobV9wcm9jZXNzKSkpOworICAgICAgICB9KTsKKworICAgICAgICBy
ZWNlaXZlZFBvbGljeURlY2lzaW9uKHBvbGljeUFjdGlvbiwgbnVsbHB0ciwgbnVsbHB0ciwgV1RG
TW92ZShuYXZpZ2F0aW9uQWN0aW9uKSwgV1RGTW92ZShzZW5kZXIpKTsKKyAgICB9LCBTaG91bGRF
eHBlY3RTYWZlQnJvd3NpbmdSZXN1bHQ6Ok5vLCBTaG91bGRFeHBlY3RBcHBCb3VuZERvbWFpblJl
c3VsdDo6Tm8pKTsKKworICAgIGlmIChtX3BvbGljeUNsaWVudCkKKyAgICAgICAgbV9wb2xpY3lD
bGllbnQtPmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbigqdGhpcywgKmZyYW1lLCBuYXZp
Z2F0aW9uQWN0aW9uLmdldCgpLCByZXF1ZXN0LCBmcmFtZU5hbWUsIFdURk1vdmUobGlzdGVuZXIp
LCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkp
LmdldCgpKTsKKyAgICBlbHNlCisgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbigqdGhpcywgbmF2aWdhdGlvbkFjdGlvbi5nZXQoKSwgV1RG
TW92ZShsaXN0ZW5lciksIG1fcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2Vy
RGF0YS5vYmplY3QoKSkuZ2V0KCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9s
aWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBm
cmFtZUluZm8sIFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLAorICAgIHVpbnQ2NF90
IG5hdmlnYXRpb25JRCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmlu
ZyYgZG93bmxvYWRBdHRyaWJ1dGUsCisgICAgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRs
ZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91
cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWlu
dDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIGRlY2lk
ZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlE
LCBmcmFtZUlELCBXVEZNb3ZlKGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwg
cmVzcG9uc2UsIHJlcXVlc3QsIGNhblNob3dNSU1FVHlwZSwgZG93bmxvYWRBdHRyaWJ1dGUsIHdh
c0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lz
aW9uLCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgbGlzdGVuZXJJRCwgdXNlckRhdGEpOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVm
PFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lD
aGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwg
Ym9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNl
ckRhdGEmIHVzZXJEYXRhKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBh
Z2VDbGllbnQoKSk7CisKKyAgICBtX2RlY2lkZVBvbGljeUZvclJlc3BvbnNlUmVxdWVzdCA9IHJl
cXVlc3Q7CisKKyAgICBXZWJGcmFtZVByb3h5KiBmcmFtZSA9IHByb2Nlc3MtPndlYkZyYW1lKGZy
YW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2VzcywgZnJhbWUpOworICAgIE1FU1NBR0Vf
Q0hFQ0tfVVJMKHByb2Nlc3MsIHJlcXVlc3QudXJsKCkpOworICAgIE1FU1NBR0VfQ0hFQ0tfVVJM
KHByb2Nlc3MsIHJlc3BvbnNlLnVybCgpKTsKKyAgICBSZWZQdHI8QVBJOjpOYXZpZ2F0aW9uPiBu
YXZpZ2F0aW9uID0gbmF2aWdhdGlvbklEID8gbV9uYXZpZ2F0aW9uU3RhdGUtPm5hdmlnYXRpb24o
bmF2aWdhdGlvbklEKSA6IG51bGxwdHI7CisgICAgYXV0byBuYXZpZ2F0aW9uUmVzcG9uc2UgPSBB
UEk6Ok5hdmlnYXRpb25SZXNwb25zZTo6Y3JlYXRlKEFQSTo6RnJhbWVJbmZvOjpjcmVhdGUoV1RG
TW92ZShmcmFtZUluZm8pLCB0aGlzKS5nZXQoKSwgcmVxdWVzdCwgcmVzcG9uc2UsIGNhblNob3dN
SU1FVHlwZSwgZG93bmxvYWRBdHRyaWJ1dGUpOworCisgICAgYXV0byBsaXN0ZW5lciA9IG1ha2VS
ZWYoZnJhbWUtPnNldFVwUG9saWN5TGlzdGVuZXJQcm94eShbdGhpcywgcHJvdGVjdGVkVGhpcyA9
IG1ha2VSZWYoKnRoaXMpLCB3ZWJQYWdlSUQsIGZyYW1lSUQsIGJyb3dzaW5nQ29udGV4dEdyb3Vw
U3dpdGNoRGVjaXNpb24sIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBpZGVudGlmaWVyLCBs
aXN0ZW5lcklELCBuYXZpZ2F0aW9uID0gV1RGTW92ZShuYXZpZ2F0aW9uKSwKKyAgICAgICAgcHJv
Y2VzcywgbmF2aWdhdGlvblJlc3BvbnNlXSAoUG9saWN5QWN0aW9uIHBvbGljeUFjdGlvbiwgQVBJ
OjpXZWJzaXRlUG9saWNpZXMqLCBQcm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50IHByb2Nlc3NT
d2FwUmVxdWVzdGVkQnlDbGllbnQsIFJlZlB0cjxTYWZlQnJvd3NpbmdXYXJuaW5nPiYmIHNhZmVC
cm93c2luZ1dhcm5pbmcsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+
IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pIG11dGFibGUgeworICAgICAgICAvLyBGSVhN
RTogQXNzZXJ0IHRoZSBBUEk6OldlYnNpdGVQb2xpY2llcyogaXMgbnVsbHB0ciBoZXJlIG9uY2Ug
Y2xpZW50cyBvZiBXS0ZyYW1lUG9saWN5TGlzdGVuZXJVc2VXaXRoUG9saWNpZXMgZ28gYXdheS4K
KyAgICAgICAgUkVMRUFTRV9BU1NFUlQocHJvY2Vzc1N3YXBSZXF1ZXN0ZWRCeUNsaWVudCA9PSBQ
cm9jZXNzU3dhcFJlcXVlc3RlZEJ5Q2xpZW50OjpObyk7CisgICAgICAgIEFTU0VSVF9VTlVTRUQo
c2FmZUJyb3dzaW5nV2FybmluZywgIXNhZmVCcm93c2luZ1dhcm5pbmcpOworCisgICAgICAgIGF1
dG8gc2VuZGVyID0gUG9saWN5RGVjaXNpb25TZW5kZXI6OmNyZWF0ZShpZGVudGlmaWVyLCBbd2Vi
UGFnZUlELCBmcmFtZUlELCBsaXN0ZW5lcklELCBwcm9jZXNzXSAoY29uc3QgYXV0byYgcG9saWN5
RGVjaXNpb24pIHsKKyAgICAgICAgICAgIHByb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OkRpZFJlY2VpdmVQb2xpY3lEZWNpc2lvbihmcmFtZUlELCBsaXN0ZW5lcklELCBwb2xpY3lEZWNp
c2lvbiwgY3JlYXRlTmV0d29ya0V4dGVuc2lvbnNTYW5kYm94RXh0ZW5zaW9ucyhwcm9jZXNzKSks
IHdlYlBhZ2VJRCk7CisgICAgICAgIH0pOworCisgICAgICAgIGF1dG8gd2lsbENvbnRpbnVlTG9h
ZEluTmV3UHJvY2VzcyA9IFdpbGxDb250aW51ZUxvYWRJbk5ld1Byb2Nlc3M6Ok5vOworICAgICAg
ICBpZiAocG9saWN5QWN0aW9uID09IFBvbGljeUFjdGlvbjo6VXNlICYmIGJyb3dzaW5nQ29udGV4
dEdyb3VwU3dpdGNoRGVjaXNpb24gIT0gQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lv
bjo6U3RheUluR3JvdXAgJiYgbmF2aWdhdGlvbikgeworICAgICAgICAgICAgV0VCUEFHRVBST1hZ
X1JFTEVBU0VfTE9HKFByb2Nlc3NTd2FwcGluZywgImRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hh
cmVkOiBQcm9jZXNzLXN3YXBwaW5nIGR1ZSB0byBDcm9zcy1PcmlnaW4tT3BlbmVyLVBvbGljeSwg
bmV3UHJvY2Vzc0lzQ3Jvc3NPcmlnaW5Jc29sYXRlZD0lZCIsIGJyb3dzaW5nQ29udGV4dEdyb3Vw
U3dpdGNoRGVjaXNpb24gPT0gQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbjo6TmV3
SXNvbGF0ZWRHcm91cCk7CisgICAgICAgICAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1By
b2Nlc3MoKS5wcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zlcihwcm9jZXNzLT5jb3JlUHJv
Y2Vzc0lkZW50aWZpZXIoKSwgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgbmF2aWdhdGlvbiwgbmF2aWdhdGlv
blJlc3BvbnNlID0gV1RGTW92ZShuYXZpZ2F0aW9uUmVzcG9uc2UpLCBzZW5kZXIgPSBXVEZNb3Zl
KHNlbmRlciksIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb25dKGF1dG8gZXhpc3Rp
bmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVzdW1lKSBtdXRhYmxlIHsKKyAgICAg
ICAgICAgICAgICBSZWZQdHI8V2ViUHJvY2Vzc1Byb3h5PiBwcm9jZXNzRm9yTmF2aWdhdGlvbjsK
KyAgICAgICAgICAgICAgICBpZiAoYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiA9
PSBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uOjpOZXdJc29sYXRlZEdyb3VwKQor
ICAgICAgICAgICAgICAgICAgICBwcm9jZXNzRm9yTmF2aWdhdGlvbiA9IG1fcHJvY2Vzcy0+cHJv
Y2Vzc1Bvb2woKS5jcmVhdGVOZXdXZWJQcm9jZXNzKCZ3ZWJzaXRlRGF0YVN0b3JlKCksIFdlYlBy
b2Nlc3NQcm94eTo6SXNQcmV3YXJtZWQ6Ok5vLCBDcm9zc09yaWdpbk1vZGU6Oklzb2xhdGVkKTsK
KyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgQVNTRVJUKGJyb3dz
aW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gPT0gQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbjo6TmV3U2hhcmVkR3JvdXApOworICAgICAgICAgICAgICAgICAgICBSZWdpc3Ry
YWJsZURvbWFpbiByZXNwb25zZURvbWFpbiB7IG5hdmlnYXRpb25SZXNwb25zZS0+cmVzcG9uc2Uo
KS51cmwoKSB9OworICAgICAgICAgICAgICAgICAgICBwcm9jZXNzRm9yTmF2aWdhdGlvbiA9IG1f
cHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5wcm9jZXNzRm9yUmVnaXN0cmFibGVEb21haW4od2Vic2l0
ZURhdGFTdG9yZSgpLCB0aGlzLCByZXNwb25zZURvbWFpbik7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgICAgIGNvbnRpbnVlTmF2aWdhdGlvbkluTmV3UHJvY2VzcygqbmF2aWdhdGlv
biwgbnVsbHB0ciwgcHJvY2Vzc0Zvck5hdmlnYXRpb24ucmVsZWFzZU5vbk51bGwoKSwgUHJvY2Vz
c1N3YXBSZXF1ZXN0ZWRCeUNsaWVudDo6Tm8sIFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZDo6
WWVzQWZ0ZXJSZXNwb25zZVBvbGljeURlY2lzaW9uLCBudWxscHRyLCBleGlzdGluZ05ldHdvcmtS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUpOworCisgICAgICAgICAgICAgICAgcmVjZWl2
ZWRQb2xpY3lEZWNpc2lvbihQb2xpY3lBY3Rpb246Oklnbm9yZSwgbmF2aWdhdGlvbi5nZXQoKSwg
bnVsbHB0ciwgV1RGTW92ZShuYXZpZ2F0aW9uUmVzcG9uc2UpLCBXVEZNb3ZlKHNlbmRlciksIHsg
fSwgV2lsbENvbnRpbnVlTG9hZEluTmV3UHJvY2Vzczo6WWVzKTsKKyAgICAgICAgICAgIH0pOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICByZWNlaXZl
ZFBvbGljeURlY2lzaW9uKHBvbGljeUFjdGlvbiwgbmF2aWdhdGlvbi5nZXQoKSwgbnVsbHB0ciwg
V1RGTW92ZShuYXZpZ2F0aW9uUmVzcG9uc2UpLCBXVEZNb3ZlKHNlbmRlciksIHsgfSwgd2lsbENv
bnRpbnVlTG9hZEluTmV3UHJvY2Vzcyk7CisgICAgfSwgU2hvdWxkRXhwZWN0U2FmZUJyb3dzaW5n
UmVzdWx0OjpObywgU2hvdWxkRXhwZWN0QXBwQm91bmREb21haW5SZXN1bHQ6Ok5vKSk7CisKKyAg
ICBpZiAod2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUpIHsKKyAgICAgICAgbGlzdGVuZXItPnVz
ZSgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKG1fcG9saWN5Q2xpZW50KQor
ICAgICAgICBtX3BvbGljeUNsaWVudC0+ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoKnRoaXMsICpm
cmFtZSwgcmVzcG9uc2UsIHJlcXVlc3QsIGNhblNob3dNSU1FVHlwZSwgV1RGTW92ZShsaXN0ZW5l
ciksIHByb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkp
LmdldCgpKTsKKyAgICBlbHNlCisgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvblJlc3BvbnNlKCp0aGlzLCBXVEZNb3ZlKG5hdmlnYXRpb25SZXNwb25z
ZSksIFdURk1vdmUobGlzdGVuZXIpLCBwcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3Rz
KHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1bmFi
bGVUb0ltcGxlbWVudFBvbGljeShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKK3sKKyAgICBQYWdlQ2xp
ZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOworCisgICAgV2ViRnJhbWVQcm94
eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hF
Q0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICBpZiAoIW1fcG9saWN5Q2xpZW50KQorICAgICAg
ICByZXR1cm47CisgICAgbV9wb2xpY3lDbGllbnQtPnVuYWJsZVRvSW1wbGVtZW50UG9saWN5KCp0
aGlzLCAqZnJhbWUsIGVycm9yLCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHMo
dXNlckRhdGEub2JqZWN0KCkpLmdldCgpKTsKK30KKworLy8gRm9ybUNsaWVudAorCit2b2lkIFdl
YlBhZ2VQcm94eTo6d2lsbFN1Ym1pdEZvcm0oRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1l
SWRlbnRpZmllciBzb3VyY2VGcmFtZUlELCBjb25zdCBWZWN0b3I8c3RkOjpwYWlyPFN0cmluZywg
U3RyaW5nPj4mIHRleHRGaWVsZFZhbHVlcywgRm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmllciBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCit7CisgICAgV2ViRnJhbWVQcm94
eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hF
Q0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICBXZWJGcmFtZVByb3h5KiBzb3VyY2VGcmFtZSA9
IG1fcHJvY2Vzcy0+d2ViRnJhbWUoc291cmNlRnJhbWVJRCk7CisgICAgTUVTU0FHRV9DSEVDSyht
X3Byb2Nlc3MsIHNvdXJjZUZyYW1lKTsKKworICAgIGZvciAoYXV0byYgcGFpciA6IHRleHRGaWVs
ZFZhbHVlcykKKyAgICAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIEFQSTo6RGljdGlvbmFy
eTo6TWFwVHlwZTo6aXNWYWxpZEtleShwYWlyLmZpcnN0KSk7CisKKyAgICBtX2Zvcm1DbGllbnQt
PndpbGxTdWJtaXRGb3JtKCp0aGlzLCAqZnJhbWUsICpzb3VyY2VGcmFtZSwgdGV4dEZpZWxkVmFs
dWVzLCBtX3Byb2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0
KCkpLmdldCgpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBmcmFtZUlE
LCBsaXN0ZW5lcklEXSgpIHsKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6Q29udGlu
dWVXaWxsU3VibWl0Rm9ybShmcmFtZUlELCBsaXN0ZW5lcklEKSk7CisgICAgfSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5Ojpjb250ZW50UnVsZUxpc3ROb3RpZmljYXRpb24oVVJMJiYgdXJsLCBD
b250ZW50UnVsZUxpc3RSZXN1bHRzJiYgcmVzdWx0cykKK3sKKyAgICBtX25hdmlnYXRpb25DbGll
bnQtPmNvbnRlbnRSdWxlTGlzdE5vdGlmaWNhdGlvbigqdGhpcywgV1RGTW92ZSh1cmwpLCBXVEZN
b3ZlKHJlc3VsdHMpKTsKK30KKyAgICAKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWROYXZpZ2F0ZVdp
dGhOYXZpZ2F0aW9uRGF0YShjb25zdCBXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlJiBzdG9yZSwgRnJh
bWVJZGVudGlmaWVyIGZyYW1lSUQpCit7CisgICAgZGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlvbkRh
dGFTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgc3RvcmUsIGZyYW1lSUQpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlvbkRhdGFTaGFyZWQoUmVmPFdl
YlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBjb25zdCBXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlJiBz
dG9yZSwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVB
U0VfTE9HKExvYWRpbmcsICJkaWROYXZpZ2F0ZVdpdGhOYXZpZ2F0aW9uRGF0YVNoYXJlZDoiKTsK
KworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAg
ICBXZWJGcmFtZVByb3h5KiBmcmFtZSA9IHByb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAg
IE1FU1NBR0VfQ0hFQ0socHJvY2VzcywgZnJhbWUpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2Vz
cywgZnJhbWUtPnBhZ2UoKSA9PSB0aGlzKTsKKworICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUo
KSkKKyAgICAgICAgbV9oaXN0b3J5Q2xpZW50LT5kaWROYXZpZ2F0ZVdpdGhOYXZpZ2F0aW9uRGF0
YSgqdGhpcywgc3RvcmUpOworICAgIHByb2Nlc3MtPnByb2Nlc3NQb29sKCkuaGlzdG9yeUNsaWVu
dCgpLmRpZE5hdmlnYXRlV2l0aE5hdmlnYXRpb25EYXRhKHByb2Nlc3MtPnByb2Nlc3NQb29sKCks
ICp0aGlzLCBzdG9yZSwgKmZyYW1lKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFBlcmZv
cm1DbGllbnRSZWRpcmVjdChjb25zdCBTdHJpbmcmIHNvdXJjZVVSTFN0cmluZywgY29uc3QgU3Ry
aW5nJiBkZXN0aW5hdGlvblVSTFN0cmluZywgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCit7Cisg
ICAgZGlkUGVyZm9ybUNsaWVudFJlZGlyZWN0U2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIHNv
dXJjZVVSTFN0cmluZywgZGVzdGluYXRpb25VUkxTdHJpbmcsIGZyYW1lSUQpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkUGVyZm9ybUNsaWVudFJlZGlyZWN0U2hhcmVkKFJlZjxXZWJQcm9j
ZXNzUHJveHk+JiYgcHJvY2VzcywgY29uc3QgU3RyaW5nJiBzb3VyY2VVUkxTdHJpbmcsIGNvbnN0
IFN0cmluZyYgZGVzdGluYXRpb25VUkxTdHJpbmcsIEZyYW1lSWRlbnRpZmllciBmcmFtZUlEKQor
eworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiZGlkUGVyZm9ybUNsaWVu
dFJlZGlyZWN0U2hhcmVkOiBmcmFtZUlEPSUiIFBSSXU2NCwgZnJhbWVJRC50b1VJbnQ2NCgpKTsK
KworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAg
ICBpZiAoc291cmNlVVJMU3RyaW5nLmlzRW1wdHkoKSB8fCBkZXN0aW5hdGlvblVSTFN0cmluZy5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBXZWJGcmFtZVByb3h5KiBmcmFt
ZSA9IHByb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2Vz
cywgZnJhbWUpOworICAgIE1FU1NBR0VfQ0hFQ0socHJvY2VzcywgZnJhbWUtPnBhZ2UoKSA9PSB0
aGlzKTsKKyAgICBNRVNTQUdFX0NIRUNLX1VSTChwcm9jZXNzLCBzb3VyY2VVUkxTdHJpbmcpOwor
ICAgIE1FU1NBR0VfQ0hFQ0tfVVJMKHByb2Nlc3MsIGRlc3RpbmF0aW9uVVJMU3RyaW5nKTsKKwor
ICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkgeworICAgICAgICBtX2hpc3RvcnlDbGllbnQt
PmRpZFBlcmZvcm1DbGllbnRSZWRpcmVjdCgqdGhpcywgc291cmNlVVJMU3RyaW5nLCBkZXN0aW5h
dGlvblVSTFN0cmluZyk7CisgICAgICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+ZGlkUGVyZm9ybUNs
aWVudFJlZGlyZWN0KCp0aGlzLCBzb3VyY2VVUkxTdHJpbmcsIGRlc3RpbmF0aW9uVVJMU3RyaW5n
KTsKKyAgICB9CisgICAgcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5oaXN0b3J5Q2xpZW50KCkuZGlk
UGVyZm9ybUNsaWVudFJlZGlyZWN0KHByb2Nlc3MtPnByb2Nlc3NQb29sKCksICp0aGlzLCBzb3Vy
Y2VVUkxTdHJpbmcsIGRlc3RpbmF0aW9uVVJMU3RyaW5nLCAqZnJhbWUpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZGlkUGVyZm9ybVNlcnZlclJlZGlyZWN0KGNvbnN0IFN0cmluZyYgc291cmNl
VVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIGRlc3RpbmF0aW9uVVJMU3RyaW5nLCBGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCkKK3sKKyAgICBkaWRQZXJmb3JtU2VydmVyUmVkaXJlY3RTaGFyZWQobV9w
cm9jZXNzLmNvcHlSZWYoKSwgc291cmNlVVJMU3RyaW5nLCBkZXN0aW5hdGlvblVSTFN0cmluZywg
ZnJhbWVJRCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRQZXJmb3JtU2VydmVyUmVkaXJl
Y3RTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVVSTFN0cmluZywgY29uc3QgU3RyaW5nJiBkZXN0aW5hdGlvblVSTFN0cmluZywgRnJhbWVJ
ZGVudGlmaWVyIGZyYW1lSUQpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRp
bmcsICJkaWRQZXJmb3JtU2VydmVyUmVkaXJlY3Q6Iik7CisKKyAgICBQYWdlQ2xpZW50UHJvdGVj
dG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOworCisgICAgaWYgKHNvdXJjZVVSTFN0cmluZy5p
c0VtcHR5KCkgfHwgZGVzdGluYXRpb25VUkxTdHJpbmcuaXNFbXB0eSgpKQorICAgICAgICByZXR1
cm47CisgICAgCisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBwcm9jZXNzLT53ZWJGcmFtZShm
cmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKHByb2Nlc3MsIGZyYW1lKTsKKyAgICBNRVNTQUdF
X0NIRUNLKHByb2Nlc3MsIGZyYW1lLT5wYWdlKCkgPT0gdGhpcyk7CisKKyAgICBNRVNTQUdFX0NI
RUNLX1VSTChwcm9jZXNzLCBzb3VyY2VVUkxTdHJpbmcpOworICAgIE1FU1NBR0VfQ0hFQ0tfVVJM
KHByb2Nlc3MsIGRlc3RpbmF0aW9uVVJMU3RyaW5nKTsKKworICAgIGlmIChmcmFtZS0+aXNNYWlu
RnJhbWUoKSkKKyAgICAgICAgbV9oaXN0b3J5Q2xpZW50LT5kaWRQZXJmb3JtU2VydmVyUmVkaXJl
Y3QoKnRoaXMsIHNvdXJjZVVSTFN0cmluZywgZGVzdGluYXRpb25VUkxTdHJpbmcpOworICAgIHBy
b2Nlc3MtPnByb2Nlc3NQb29sKCkuaGlzdG9yeUNsaWVudCgpLmRpZFBlcmZvcm1TZXJ2ZXJSZWRp
cmVjdChwcm9jZXNzLT5wcm9jZXNzUG9vbCgpLCAqdGhpcywgc291cmNlVVJMU3RyaW5nLCBkZXN0
aW5hdGlvblVSTFN0cmluZywgKmZyYW1lKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFVw
ZGF0ZUhpc3RvcnlUaXRsZShjb25zdCBTdHJpbmcmIHRpdGxlLCBjb25zdCBTdHJpbmcmIHVybCwg
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCit7CisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90
ZWN0b3IocGFnZUNsaWVudCgpKTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9wcm9j
ZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJh
bWUpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZS0+cGFnZSgpID09IHRoaXMp
OworCisgICAgTUVTU0FHRV9DSEVDS19VUkwobV9wcm9jZXNzLCB1cmwpOworCisgICAgaWYgKGZy
YW1lLT5pc01haW5GcmFtZSgpKQorICAgICAgICBtX2hpc3RvcnlDbGllbnQtPmRpZFVwZGF0ZUhp
c3RvcnlUaXRsZSgqdGhpcywgdGl0bGUsIHVybCk7CisgICAgcHJvY2VzcygpLnByb2Nlc3NQb29s
KCkuaGlzdG9yeUNsaWVudCgpLmRpZFVwZGF0ZUhpc3RvcnlUaXRsZShwcm9jZXNzKCkucHJvY2Vz
c1Bvb2woKSwgKnRoaXMsIHRpdGxlLCB1cmwsICpmcmFtZSk7Cit9CisKKy8vIFVJQ2xpZW50CisK
K3VzaW5nIE5ld1BhZ2VDYWxsYmFjayA9IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdl
YlBhZ2VQcm94eT4mJik+OwordXNpbmcgVUlDbGllbnRDYWxsYmFjayA9IEZ1bmN0aW9uPHZvaWQo
UmVmPEFQSTo6TmF2aWdhdGlvbkFjdGlvbj4mJiwgTmV3UGFnZUNhbGxiYWNrJiYpPjsKK3N0YXRp
YyB2b2lkIHRyeVNPQXV0aG9yaXphdGlvbihSZWY8QVBJOjpOYXZpZ2F0aW9uQWN0aW9uPiYmIG5h
dmlnYXRpb25BY3Rpb24sIFdlYlBhZ2VQcm94eSYgcGFnZSwgTmV3UGFnZUNhbGxiYWNrJiYgbmV3
UGFnZUNhbGxiYWNrLCBVSUNsaWVudENhbGxiYWNrJiYgdWlDbGllbnRDYWxsYmFjaykKK3sKKyNp
ZiBIQVZFKEFQUF9TU08pCisgICAgcGFnZS53ZWJzaXRlRGF0YVN0b3JlKCkuc29BdXRob3JpemF0
aW9uQ29vcmRpbmF0b3IoKS50cnlBdXRob3JpemUoV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uKSwg
cGFnZSwgV1RGTW92ZShuZXdQYWdlQ2FsbGJhY2spLCBXVEZNb3ZlKHVpQ2xpZW50Q2FsbGJhY2sp
KTsKKyNlbHNlCisgICAgdWlDbGllbnRDYWxsYmFjayhXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb24p
LCBXVEZNb3ZlKG5ld1BhZ2VDYWxsYmFjaykpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpjcmVhdGVOZXdQYWdlKEZyYW1lSW5mb0RhdGEmJiBvcmlnaW5hdGluZ0ZyYW1lSW5mb0Rh
dGEsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgb3JpZ2luYXRpbmdQYWdlSUQsIFJlc291cmNlUmVx
dWVzdCYmIHJlcXVlc3QsIFdpbmRvd0ZlYXR1cmVzJiYgd2luZG93RmVhdHVyZXMsIE5hdmlnYXRp
b25BY3Rpb25EYXRhJiYgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkNyZWF0ZU5ld1BhZ2U6OkRlbGF5ZWRSZXBseSYmIHJlcGx5KQoreworICAgIE1FU1NBR0Vf
Q0hFQ0sobV9wcm9jZXNzLCBvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEuZnJhbWVJRCk7CisgICAg
TUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1fcHJvY2Vzcy0+d2ViRnJhbWUoKm9yaWdpbmF0aW5n
RnJhbWVJbmZvRGF0YS5mcmFtZUlEKSk7CisKKyAgICBhdXRvKiBvcmlnaW5hdGluZ1BhZ2UgPSBt
X3Byb2Nlc3MtPndlYlBhZ2Uob3JpZ2luYXRpbmdQYWdlSUQpOworICAgIGF1dG8gb3JpZ2luYXRp
bmdGcmFtZUluZm8gPSBBUEk6OkZyYW1lSW5mbzo6Y3JlYXRlKFdURk1vdmUob3JpZ2luYXRpbmdG
cmFtZUluZm9EYXRhKSwgb3JpZ2luYXRpbmdQYWdlKTsKKyAgICBhdXRvIG1haW5GcmFtZVVSTCA9
IG1fbWFpbkZyYW1lID8gbV9tYWluRnJhbWUtPnVybCgpIDogVVJMKCk7CisgICAgYXV0byBjb21w
bGV0aW9uSGFuZGxlciA9IFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIG1h
aW5GcmFtZVVSTCwgcmVxdWVzdCwgcmVwbHkgPSBXVEZNb3ZlKHJlcGx5KSwgcHJpdmF0ZUNsaWNr
TWVhc3VyZW1lbnQgPSBuYXZpZ2F0aW9uQWN0aW9uRGF0YS5wcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dF0gKFJlZlB0cjxXZWJQYWdlUHJveHk+IG5ld1BhZ2UpIG11dGFibGUgeworICAgICAgICBpZiAo
IW5ld1BhZ2UpIHsKKyAgICAgICAgICAgIHJlcGx5KHN0ZDo6bnVsbG9wdCwgc3RkOjpudWxsb3B0
KTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIG5ld1BhZ2UtPnNl
dE9wZW5lZEJ5RE9NKCk7CisKKyAgICAgICAgcmVwbHkobmV3UGFnZS0+d2ViUGFnZUlEKCksIG5l
d1BhZ2UtPmNyZWF0aW9uUGFyYW1ldGVycyhtX3Byb2Nlc3MsICpuZXdQYWdlLT5kcmF3aW5nQXJl
YSgpKSk7CisKKyAgICAgICAgbmV3UGFnZS0+bV9zaG91bGRTdXBwcmVzc0FwcExpbmtzSW5OZXh0
TmF2aWdhdGlvblBvbGljeURlY2lzaW9uID0gbWFpbkZyYW1lVVJMLmhvc3QoKSA9PSByZXF1ZXN0
LnVybCgpLmhvc3QoKTsKKworICAgICAgICBuZXdQYWdlLT5tX3ByaXZhdGVDbGlja01lYXN1cmVt
ZW50ID0gcHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ7CisjaWYgSEFWRShBUFBfU1NPKQorICAgICAg
ICBuZXdQYWdlLT5tX3Nob3VsZFN1cHByZXNzU09BdXRob3JpemF0aW9uSW5OZXh0TmF2aWdhdGlv
blBvbGljeURlY2lzaW9uID0gdHJ1ZTsKKyNlbmRpZgorICAgIH07CisKKyAgICBSZWZQdHI8QVBJ
OjpVc2VySW5pdGlhdGVkQWN0aW9uPiB1c2VySW5pdGlhdGVkQWN0aXZpdHk7CisgICAgCisgICAg
Ly8gV2ViS2l0IGNhbmNlbHMgdGhlIG9yaWdpbmFsIGdlc3R1cmUgdG8gb3BlbiB0aGUgQkJDIHJh
ZGlvIHBsYXllciBzbworICAgIC8vIHdlIGNhbiBjYWxsIHRoZSBTdG9yYWdlIEFjY2VzcyBBUEkg
Zmlyc3QuIFdoZW4gd2UgcmUtaW5pdGlhdGUgdGhlIG9wZW4sCisgICAgLy8gd2Ugc2hvdWxkIG1h
a2Ugc3VyZSB0aGUgY2xpZW50IGtub3dzIHRoYXQgdGhpcyB3YXMgdXNlciBpbml0aWF0ZWQgc28g
aXQKKyAgICAvLyBkb2VzIG5vdCBibG9jayB0aGUgcG9wdXAuCisgICAgaWYgKHJlcXVlc3QudXJs
KCkuc3RyaW5nKCkgPT0gUXVpcmtzOjpzdGF0aWNSYWRpb1BsYXllclVSTFN0cmluZygpKQorICAg
ICAgICB1c2VySW5pdGlhdGVkQWN0aXZpdHkgPSBBUEk6OlVzZXJJbml0aWF0ZWRBY3Rpb246OmNy
ZWF0ZSgpOworICAgIGVsc2UKKyAgICAgICAgdXNlckluaXRpYXRlZEFjdGl2aXR5ID0gbV9wcm9j
ZXNzLT51c2VySW5pdGlhdGVkQWN0aXZpdHkobmF2aWdhdGlvbkFjdGlvbkRhdGEudXNlckdlc3R1
cmVUb2tlbklkZW50aWZpZXIpOworCisgICAgYm9vbCBzaG91bGRPcGVuQXBwTGlua3MgPSBvcmln
aW5hdGluZ0ZyYW1lSW5mby0+cmVxdWVzdCgpLnVybCgpLmhvc3QoKSAhPSByZXF1ZXN0LnVybCgp
Lmhvc3QoKTsKKyAgICBhdXRvIG5hdmlnYXRpb25BY3Rpb24gPSBBUEk6Ok5hdmlnYXRpb25BY3Rp
b246OmNyZWF0ZShXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb25EYXRhKSwgb3JpZ2luYXRpbmdGcmFt
ZUluZm8ucHRyKCksIG51bGxwdHIsIHN0ZDo6bnVsbG9wdCwgV1RGTW92ZShyZXF1ZXN0KSwgVVJM
KCksIHNob3VsZE9wZW5BcHBMaW5rcywgV1RGTW92ZSh1c2VySW5pdGlhdGVkQWN0aXZpdHkpKTsK
KworICAgIHRyeVNPQXV0aG9yaXphdGlvbihXVEZNb3ZlKG5hdmlnYXRpb25BY3Rpb24pLCAqdGhp
cywgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFr
ZVJlZigqdGhpcyksIHdpbmRvd0ZlYXR1cmVzID0gV1RGTW92ZSh3aW5kb3dGZWF0dXJlcyldIChS
ZWY8QVBJOjpOYXZpZ2F0aW9uQWN0aW9uPiYmIG5hdmlnYXRpb25BY3Rpb24sIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoUmVmUHRyPFdlYlBhZ2VQcm94eT4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIp
IG11dGFibGUgeworICAgICAgICBtX3VpQ2xpZW50LT5jcmVhdGVOZXdQYWdlKCp0aGlzLCBXVEZN
b3ZlKHdpbmRvd0ZlYXR1cmVzKSwgV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uKSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOworICAgIH0pOworfQorICAgIAordm9pZCBXZWJQYWdlUHJveHk6
OnNob3dQYWdlKCkKK3sKKyAgICBtX3VpQ2xpZW50LT5zaG93UGFnZSh0aGlzKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OmV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKQoreworI2lmIEVOQUJM
RShGVUxMU0NSRUVOX0FQSSkKKyAgICBpZiAoZnVsbFNjcmVlbk1hbmFnZXIoKSkKKyAgICAgICAg
ZnVsbFNjcmVlbk1hbmFnZXIoKS0+Y2xvc2UoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQorICAgIGlmICh2aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkpCisg
ICAgICAgIHZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS0+cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNj
cmVlbigpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpmdWxsc2NyZWVuTWF5UmV0
dXJuVG9JbmxpbmUoKQoreworICAgIG1fdWlDbGllbnQtPmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lu
bGluZSh0aGlzKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEVudGVyRnVsbHNjcmVlbigp
Cit7CisgICAgbV91aUNsaWVudC0+ZGlkRW50ZXJGdWxsc2NyZWVuKHRoaXMpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkRXhpdEZ1bGxzY3JlZW4oKQoreworICAgIG1fdWlDbGllbnQtPmRp
ZEV4aXRGdWxsc2NyZWVuKHRoaXMpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y2xvc2VQYWdl
KCkKK3sKKyAgICBpZiAoaXNDbG9zZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgV0VCUEFH
RVBST1hZX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJjbG9zZVBhZ2U6Iik7CisgICAgcGFnZUNsaWVu
dCgpLmNsZWFyQWxsRWRpdENvbW1hbmRzKCk7CisgICAgbV91aUNsaWVudC0+Y2xvc2UodGhpcyk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpydW5Nb2RhbEphdmFTY3JpcHREaWFsb2coUmVmUHRy
PFdlYkZyYW1lUHJveHk+JiYgZnJhbWUsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJQYWdlUHJveHkmLCBX
ZWJGcmFtZVByb3h5KiBmcmFtZSwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgY29uc3QgU3Ry
aW5nJiBtZXNzYWdlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpPiYmIHJ1bkRpYWxvZ0Nh
bGxiYWNrKQoreworICAgIHBhZ2VDbGllbnQoKS5ydW5Nb2RhbEphdmFTY3JpcHREaWFsb2coW3dl
YWtUaGlzID0gbWFrZVdlYWtQdHIoKnRoaXMpLCBmcmFtZUluZm8gPSBXVEZNb3ZlKGZyYW1lSW5m
byksIGZyYW1lID0gV1RGTW92ZShmcmFtZSksIG1lc3NhZ2UsIHJ1bkRpYWxvZ0NhbGxiYWNrID0g
V1RGTW92ZShydW5EaWFsb2dDYWxsYmFjayldKCkgbXV0YWJsZSB7CisgICAgICAgIGF1dG8gcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIod2Vha1RoaXMuZ2V0KCkpOworICAgICAgICBpZiAoIXBy
b3RlY3RlZFRoaXMpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgcHJvdGVjdGVkVGhp
cy0+bV9pc1J1bm5pbmdNb2RhbEphdmFTY3JpcHREaWFsb2cgPSB0cnVlOworICAgICAgICBydW5E
aWFsb2dDYWxsYmFjaygqcHJvdGVjdGVkVGhpcywgZnJhbWUuZ2V0KCksIFdURk1vdmUoZnJhbWVJ
bmZvKSwgbWVzc2FnZSwgW3dlYWtUaGlzID0gV1RGTW92ZSh3ZWFrVGhpcyldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBpZiAoYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih3ZWFrVGhp
cy5nZXQoKSkpCisgICAgICAgICAgICAgICAgcHJvdGVjdGVkVGhpcy0+bV9pc1J1bm5pbmdNb2Rh
bEphdmFTY3JpcHREaWFsb2cgPSBmYWxzZTsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpydW5KYXZhU2NyaXB0QWxlcnQoRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdEFsZXJ0OjpEZWxheWVkUmVwbHkmJiBy
ZXBseSkKK3sKKyAgICBhdXRvIGZyYW1lID0gbWFrZVJlZlB0cihtX3Byb2Nlc3MtPndlYkZyYW1l
KGZyYW1lSUQpKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisgICAg
ZXhpdEZ1bGxzY3JlZW5JbW1lZGlhdGVseSgpOworCisgICAgLy8gU2luY2UgcnVuSmF2YVNjcmlw
dEFsZXJ0KCkgY2FuIHNwaW4gYSBuZXN0ZWQgcnVuIGxvb3Agd2UgbmVlZCB0byB0dXJuIG9mZiB0
aGUgcmVzcG9uc2l2ZW5lc3MgdGltZXIuCisgICAgbV9wcm9jZXNzLT5zdG9wUmVzcG9uc2l2ZW5l
c3NUaW1lcigpOworCisgICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbikgeworICAgICAg
ICBpZiAoYXV0byogYXV0b21hdGlvblNlc3Npb24gPSBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5h
dXRvbWF0aW9uU2Vzc2lvbigpKQorICAgICAgICAgICAgYXV0b21hdGlvblNlc3Npb24tPndpbGxT
aG93SmF2YVNjcmlwdERpYWxvZygqdGhpcyk7CisgICAgfQorCisgICAgcnVuTW9kYWxKYXZhU2Ny
aXB0RGlhbG9nKFdURk1vdmUoZnJhbWUpLCBXVEZNb3ZlKGZyYW1lSW5mbyksIG1lc3NhZ2UsIFty
ZXBseSA9IFdURk1vdmUocmVwbHkpXShXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYkZyYW1lUHJveHkq
IGZyYW1lLCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2Us
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uKSBtdXRhYmxlIHsKKyAgICAg
ICAgcGFnZS5tX3VpQ2xpZW50LT5ydW5KYXZhU2NyaXB0QWxlcnQocGFnZSwgbWVzc2FnZSwgZnJh
bWUsIFdURk1vdmUoZnJhbWVJbmZvKSwgW3JlcGx5ID0gV1RGTW92ZShyZXBseSksIGNvbXBsZXRp
b24gPSBXVEZNb3ZlKGNvbXBsZXRpb24pXSgpIG11dGFibGUgeworICAgICAgICAgICAgcmVwbHko
KTsKKyAgICAgICAgICAgIGNvbXBsZXRpb24oKTsKKyAgICAgICAgfSk7CisgICAgfSk7Cit9CisK
K3ZvaWQgV2ViUGFnZVByb3h5OjpydW5KYXZhU2NyaXB0Q29uZmlybShGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSdW5KYXZhU2NyaXB0Q29uZmlybTo6RGVsYXllZFJl
cGx5JiYgcmVwbHkpCit7CisgICAgYXV0byBmcmFtZSA9IG1ha2VSZWZQdHIobV9wcm9jZXNzLT53
ZWJGcmFtZShmcmFtZUlEKSk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsK
KworICAgIGV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKTsKKworICAgIC8vIFNpbmNlIHJ1bkph
dmFTY3JpcHRDb25maXJtKCkgY2FuIHNwaW4gYSBuZXN0ZWQgcnVuIGxvb3Agd2UgbmVlZCB0byB0
dXJuIG9mZiB0aGUgcmVzcG9uc2l2ZW5lc3MgdGltZXIuCisgICAgbV9wcm9jZXNzLT5zdG9wUmVz
cG9uc2l2ZW5lc3NUaW1lcigpOworCisgICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbikg
eworICAgICAgICBpZiAoYXV0byogYXV0b21hdGlvblNlc3Npb24gPSBwcm9jZXNzKCkucHJvY2Vz
c1Bvb2woKS5hdXRvbWF0aW9uU2Vzc2lvbigpKQorICAgICAgICAgICAgYXV0b21hdGlvblNlc3Np
b24tPndpbGxTaG93SmF2YVNjcmlwdERpYWxvZygqdGhpcyk7CisgICAgfQorCisgICAgcnVuTW9k
YWxKYXZhU2NyaXB0RGlhbG9nKFdURk1vdmUoZnJhbWUpLCBXVEZNb3ZlKGZyYW1lSW5mbyksIG1l
c3NhZ2UsIFtyZXBseSA9IFdURk1vdmUocmVwbHkpXShXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYkZy
YW1lUHJveHkqIGZyYW1lLCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uKSBtdXRhYmxl
IHsKKyAgICAgICAgcGFnZS5tX3VpQ2xpZW50LT5ydW5KYXZhU2NyaXB0Q29uZmlybShwYWdlLCBt
ZXNzYWdlLCBmcmFtZSwgV1RGTW92ZShmcmFtZUluZm8pLCBbcmVwbHkgPSBXVEZNb3ZlKHJlcGx5
KSwgY29tcGxldGlvbiA9IFdURk1vdmUoY29tcGxldGlvbildKGJvb2wgcmVzdWx0KSBtdXRhYmxl
IHsKKyAgICAgICAgICAgIHJlcGx5KHJlc3VsdCk7CisgICAgICAgICAgICBjb21wbGV0aW9uKCk7
CisgICAgICAgIH0pOworICAgIH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cnVuSmF2YVNj
cmlwdFByb21wdChGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1l
SW5mbywgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlZmF1bHRWYWx1ZSwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuSmF2YVNjcmlwdFByb21wdDo6RGVsYXllZFJlcGx5
JiYgcmVwbHkpCit7CisgICAgYXV0byBmcmFtZSA9IG1ha2VSZWZQdHIobV9wcm9jZXNzLT53ZWJG
cmFtZShmcmFtZUlEKSk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsKKwor
ICAgIGV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKTsKKworICAgIC8vIFNpbmNlIHJ1bkphdmFT
Y3JpcHRQcm9tcHQoKSBjYW4gc3BpbiBhIG5lc3RlZCBydW4gbG9vcCB3ZSBuZWVkIHRvIHR1cm4g
b2ZmIHRoZSByZXNwb25zaXZlbmVzcyB0aW1lci4KKyAgICBtX3Byb2Nlc3MtPnN0b3BSZXNwb25z
aXZlbmVzc1RpbWVyKCk7CisKKyAgICBpZiAobV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSB7Cisg
ICAgICAgIGlmIChhdXRvKiBhdXRvbWF0aW9uU2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9v
bCgpLmF1dG9tYXRpb25TZXNzaW9uKCkpCisgICAgICAgICAgICBhdXRvbWF0aW9uU2Vzc2lvbi0+
d2lsbFNob3dKYXZhU2NyaXB0RGlhbG9nKCp0aGlzKTsKKyAgICB9CisKKyAgICBydW5Nb2RhbEph
dmFTY3JpcHREaWFsb2coV1RGTW92ZShmcmFtZSksIFdURk1vdmUoZnJhbWVJbmZvKSwgbWVzc2Fn
ZSwgW3JlcGx5ID0gV1RGTW92ZShyZXBseSksIGRlZmF1bHRWYWx1ZV0oV2ViUGFnZVByb3h5JiBw
YWdlLCBXZWJGcmFtZVByb3h5KiBmcmFtZSwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgY29u
c3QgU3RyaW5nJiBtZXNzYWdlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlv
bikgbXV0YWJsZSB7CisgICAgICAgIHBhZ2UubV91aUNsaWVudC0+cnVuSmF2YVNjcmlwdFByb21w
dChwYWdlLCBtZXNzYWdlLCBkZWZhdWx0VmFsdWUsIGZyYW1lLCBXVEZNb3ZlKGZyYW1lSW5mbyks
IFtyZXBseSA9IFdURk1vdmUocmVwbHkpLCBjb21wbGV0aW9uID0gV1RGTW92ZShjb21wbGV0aW9u
KV0oYXV0byYgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgICAgIHJlcGx5KHJlc3VsdCk7Cisg
ICAgICAgICAgICBjb21wbGV0aW9uKCk7CisgICAgICAgIH0pOworICAgIH0pOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6c2V0U3RhdHVzVGV4dChjb25zdCBTdHJpbmcmIHRleHQpCit7CisgICAg
bV91aUNsaWVudC0+c2V0U3RhdHVzVGV4dCh0aGlzLCB0ZXh0KTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KFdlYkhpdFRlc3RSZXN1bHREYXRhJiYgaGl0
VGVzdFJlc3VsdERhdGEsIHVpbnQzMl90IG9wYXF1ZU1vZGlmaWVycywgVXNlckRhdGEmJiB1c2Vy
RGF0YSkKK3sKKyAgICBtX2xhc3RNb3VzZU1vdmVIaXRUZXN0UmVzdWx0ID0gQVBJOjpIaXRUZXN0
UmVzdWx0OjpjcmVhdGUoaGl0VGVzdFJlc3VsdERhdGEpOworICAgIGF1dG8gbW9kaWZpZXJzID0g
T3B0aW9uU2V0PFdlYkV2ZW50OjpNb2RpZmllcj46OmZyb21SYXcob3BhcXVlTW9kaWZpZXJzKTsK
KyAgICBtX3VpQ2xpZW50LT5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCgqdGhpcywgaGl0VGVzdFJl
c3VsdERhdGEsIG1vZGlmaWVycywgbV9wcm9jZXNzLT50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3Rz
KHVzZXJEYXRhLm9iamVjdCgpKS5nZXQoKSk7CisgICAgc2V0VG9vbFRpcChoaXRUZXN0UmVzdWx0
RGF0YS50b29sVGlwVGV4dCk7Cit9CisKKyNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkK
K3ZvaWQgV2ViUGFnZVByb3h5Ojp1bmF2YWlsYWJsZVBsdWdpbkJ1dHRvbkNsaWNrZWQodWludDMy
X3Qgb3BhcXVlUGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24sIGNvbnN0IFN0cmluZyYgbWltZVR5
cGUsIGNvbnN0IFN0cmluZyYgcGx1Z2luVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIHBsdWdpbnNw
YWdlQXR0cmlidXRlVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lVVJMU3RyaW5nLCBjb25z
dCBTdHJpbmcmIHBhZ2VVUkxTdHJpbmcpCit7CisgICAgTUVTU0FHRV9DSEVDS19VUkwobV9wcm9j
ZXNzLCBwbHVnaW5VUkxTdHJpbmcpOworICAgIE1FU1NBR0VfQ0hFQ0tfVVJMKG1fcHJvY2Vzcywg
cGx1Z2luc3BhZ2VBdHRyaWJ1dGVVUkxTdHJpbmcpOworICAgIE1FU1NBR0VfQ0hFQ0tfVVJMKG1f
cHJvY2VzcywgZnJhbWVVUkxTdHJpbmcpOworICAgIE1FU1NBR0VfQ0hFQ0tfVVJMKG1fcHJvY2Vz
cywgcGFnZVVSTFN0cmluZyk7CisKKyAgICBTdHJpbmcgbmV3TWltZVR5cGUgPSBtaW1lVHlwZTsK
KyAgICBQbHVnaW5Nb2R1bGVJbmZvIHBsdWdpbiA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5w
bHVnaW5JbmZvU3RvcmUoKS5maW5kUGx1Z2luKG5ld01pbWVUeXBlLCBVUkwoVVJMKCksIHBsdWdp
blVSTFN0cmluZykpOworICAgIGF1dG8gcGx1Z2luSW5mb3JtYXRpb24gPSBjcmVhdGVQbHVnaW5J
bmZvcm1hdGlvbkRpY3Rpb25hcnkocGx1Z2luLCBmcmFtZVVSTFN0cmluZywgbWltZVR5cGUsIHBh
Z2VVUkxTdHJpbmcsIHBsdWdpbnNwYWdlQXR0cmlidXRlVVJMU3RyaW5nLCBwbHVnaW5VUkxTdHJp
bmcpOworCisgICAgV0tQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbiBwbHVnaW5VbmF2YWlsYWJp
bGl0eVJlYXNvbiA9IGtXS1BsdWdpblVuYXZhaWxhYmlsaXR5UmVhc29uUGx1Z2luTWlzc2luZzsK
KyAgICBzd2l0Y2ggKHN0YXRpY19jYXN0PFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5VbmF2
YWlsYWJpbGl0eVJlYXNvbj4ob3BhcXVlUGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24pKSB7Cisg
ICAgY2FzZSBSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2luTWlzc2luZzoKKyAgICAgICAgcGx1
Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24gPSBrV0tQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvblBs
dWdpbk1pc3Npbmc7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUmVuZGVyRW1iZWRkZWRPYmpl
Y3Q6Okluc2VjdXJlUGx1Z2luVmVyc2lvbjoKKyAgICAgICAgcGx1Z2luVW5hdmFpbGFiaWxpdHlS
ZWFzb24gPSBrV0tQbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbkluc2VjdXJlUGx1Z2luVmVyc2lv
bjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBSZW5kZXJFbWJlZGRlZE9iamVjdDo6UGx1Z2lu
Q3Jhc2hlZDoKKyAgICAgICAgcGx1Z2luVW5hdmFpbGFiaWxpdHlSZWFzb24gPSBrV0tQbHVnaW5V
bmF2YWlsYWJpbGl0eVJlYXNvblBsdWdpbkNyYXNoZWQ7CisgICAgICAgIGJyZWFrOworICAgIGNh
c2UgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OlBsdWdpbkJsb2NrZWRCeUNvbnRlbnRTZWN1cml0eVBv
bGljeToKKyAgICBjYXNlIFJlbmRlckVtYmVkZGVkT2JqZWN0OjpVbnN1cHBvcnRlZFBsdWdpbjoK
KyAgICBjYXNlIFJlbmRlckVtYmVkZGVkT2JqZWN0OjpQbHVnaW5Ub29TbWFsbDoKKyAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgfQorCisgICAgbV91aUNsaWVudC0+dW5hdmFpbGFi
bGVQbHVnaW5CdXR0b25DbGlja2VkKCp0aGlzLCBwbHVnaW5VbmF2YWlsYWJpbGl0eVJlYXNvbiwg
cGx1Z2luSW5mb3JtYXRpb24uZ2V0KCkpOworfQorI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9Q
TFVHSU5fQVBJKQorCisjaWYgRU5BQkxFKFdFQkdMKQordm9pZCBXZWJQYWdlUHJveHk6OndlYkdM
UG9saWN5Rm9yVVJMKFVSTCYmIHVybCwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6V2ViR0xQb2xp
Y3lGb3JVUkw6OkRlbGF5ZWRSZXBseSYmIHJlcGx5KQoreworICAgIG1fbmF2aWdhdGlvbkNsaWVu
dC0+d2ViR0xMb2FkUG9saWN5KCp0aGlzLCB1cmwsIFdURk1vdmUocmVwbHkpKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OnJlc29sdmVXZWJHTFBvbGljeUZvclVSTChVUkwmJiB1cmwsIE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlJlc29sdmVXZWJHTFBvbGljeUZvclVSTDo6RGVsYXllZFJlcGx5
JiYgcmVwbHkpCit7CisgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT5yZXNvbHZlV2ViR0xMb2FkUG9s
aWN5KCp0aGlzLCB1cmwsIFdURk1vdmUocmVwbHkpKTsKK30KKyNlbmRpZiAvLyBFTkFCTEUoV0VC
R0wpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRUb29sYmFyc0FyZVZpc2libGUoYm9vbCB0b29s
YmFyc0FyZVZpc2libGUpCit7CisgICAgbV91aUNsaWVudC0+c2V0VG9vbGJhcnNBcmVWaXNpYmxl
KCp0aGlzLCB0b29sYmFyc0FyZVZpc2libGUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0
VG9vbGJhcnNBcmVWaXNpYmxlKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJl
VmlzaWJsZTo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCit7CisgICAgbV91aUNsaWVudC0+dG9vbGJh
cnNBcmVWaXNpYmxlKCp0aGlzLCBXVEZNb3ZlKHJlcGx5KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpzZXRNZW51QmFySXNWaXNpYmxlKGJvb2wgbWVudUJhcklzVmlzaWJsZSkKK3sKKyAgICBt
X3VpQ2xpZW50LT5zZXRNZW51QmFySXNWaXNpYmxlKCp0aGlzLCBtZW51QmFySXNWaXNpYmxlKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OmdldE1lbnVCYXJJc1Zpc2libGUoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCit7
CisgICAgbV91aUNsaWVudC0+bWVudUJhcklzVmlzaWJsZSgqdGhpcywgV1RGTW92ZShyZXBseSkp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0U3RhdHVzQmFySXNWaXNpYmxlKGJvb2wgc3Rh
dHVzQmFySXNWaXNpYmxlKQoreworICAgIG1fdWlDbGllbnQtPnNldFN0YXR1c0JhcklzVmlzaWJs
ZSgqdGhpcywgc3RhdHVzQmFySXNWaXNpYmxlKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6Omdl
dFN0YXR1c0JhcklzVmlzaWJsZShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRTdGF0dXNCYXJJ
c1Zpc2libGU6OkRlbGF5ZWRSZXBseSYmIHJlcGx5KQoreworICAgIG1fdWlDbGllbnQtPnN0YXR1
c0JhcklzVmlzaWJsZSgqdGhpcywgV1RGTW92ZShyZXBseSkpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6c2V0SXNSZXNpemFibGUoYm9vbCBpc1Jlc2l6YWJsZSkKK3sKKyAgICBtX3VpQ2xpZW50
LT5zZXRJc1Jlc2l6YWJsZSgqdGhpcywgaXNSZXNpemFibGUpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6c2V0V2luZG93RnJhbWUoY29uc3QgRmxvYXRSZWN0JiBuZXdXaW5kb3dGcmFtZSkKK3sK
KyAgICBtX3VpQ2xpZW50LT5zZXRXaW5kb3dGcmFtZSgqdGhpcywgcGFnZUNsaWVudCgpLmNvbnZl
cnRUb0RldmljZVNwYWNlKG5ld1dpbmRvd0ZyYW1lKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpnZXRXaW5kb3dGcmFtZShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRXaW5kb3dGcmFtZTo6
RGVsYXllZFJlcGx5JiYgcmVwbHkpCit7CisgICAgbV91aUNsaWVudC0+d2luZG93RnJhbWUoKnRo
aXMsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHJlcGx5ID0gV1RGTW92
ZShyZXBseSldIChGbG9hdFJlY3QgZnJhbWUpIG11dGFibGUgeworICAgICAgICByZXBseShwYWdl
Q2xpZW50KCkuY29udmVydFRvVXNlclNwYWNlKGZyYW1lKSk7CisgICAgfSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpnZXRXaW5kb3dGcmFtZVdpdGhDYWxsYmFjayhGdW5jdGlvbjx2b2lkKEZs
b2F0UmVjdCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgbV91aUNsaWVudC0+d2luZG93
RnJhbWUoKnRoaXMsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGNvbXBs
ZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIChGbG9hdFJlY3QgZnJh
bWUpIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIocGFnZUNsaWVudCgpLmNvbnZlcnRUb1Vz
ZXJTcGFjZShmcmFtZSkpOworICAgIH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2NyZWVu
VG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgc2NyZWVuUG9pbnQsIE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OlNjcmVlblRvUm9vdFZpZXc6OkRlbGF5ZWRSZXBseSYmIHJlcGx5KQoreworICAgIHJl
cGx5KHBhZ2VDbGllbnQoKS5zY3JlZW5Ub1Jvb3RWaWV3KHNjcmVlblBvaW50KSk7Cit9CisgICAg
Cit2b2lkIFdlYlBhZ2VQcm94eTo6cm9vdFZpZXdUb1NjcmVlbihjb25zdCBJbnRSZWN0JiB2aWV3
UmVjdCwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Um9vdFZpZXdUb1NjcmVlbjo6RGVsYXllZFJl
cGx5JiYgcmVwbHkpCit7CisgICAgcmVwbHkocGFnZUNsaWVudCgpLnJvb3RWaWV3VG9TY3JlZW4o
dmlld1JlY3QpKTsKK30KKworSW50UmVjdCBXZWJQYWdlUHJveHk6OnN5bmNSb290Vmlld1RvU2Ny
ZWVuKGNvbnN0IEludFJlY3QmIHZpZXdSZWN0KQoreworICAgIHJldHVybiBwYWdlQ2xpZW50KCku
cm9vdFZpZXdUb1NjcmVlbih2aWV3UmVjdCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjphY2Nl
c3NpYmlsaXR5U2NyZWVuVG9Sb290Vmlldyhjb25zdCBJbnRQb2ludCYgc2NyZWVuUG9pbnQsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoSW50UG9pbnQpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHBhZ2VDbGllbnQoKS5hY2Nlc3NpYmlsaXR5U2NyZWVuVG9S
b290VmlldyhzY3JlZW5Qb2ludCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cm9vdFZpZXdU
b0FjY2Vzc2liaWxpdHlTY3JlZW4oY29uc3QgSW50UmVjdCYgdmlld1JlY3QsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoSW50UmVjdCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY29tcGxl
dGlvbkhhbmRsZXIocGFnZUNsaWVudCgpLnJvb3RWaWV3VG9BY2Nlc3NpYmlsaXR5U2NyZWVuKHZp
ZXdSZWN0KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpydW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8s
IGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuQmVmb3Jl
VW5sb2FkQ29uZmlybVBhbmVsOjpEZWxheWVkUmVwbHkmJiByZXBseSkKK3sKKyAgICBXZWJGcmFt
ZVByb3h5KiBmcmFtZSA9IG1fcHJvY2Vzcy0+d2ViRnJhbWUoZnJhbWVJRCk7CisgICAgTUVTU0FH
RV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsKKworICAgIC8vIFBlciDCpzE4IFVzZXIgUHJvbXB0
cyBpbiB0aGUgV2ViRHJpdmVyIHNwZWMsICJVc2VyIHByb21wdHMgdGhhdCBhcmUgc3Bhd25lZCBm
cm9tIGJlZm9yZXVubG9hZAorICAgIC8vIGV2ZW50IGhhbmRsZXJzLCBhcmUgZGlzbWlzc2VkIGlt
cGxpY2l0bHkgdXBvbiBuYXZpZ2F0aW9uIG9yIGNsb3NlIHdpbmRvdywgcmVnYXJkbGVzcyBvZiB0
aGUKKyAgICAvLyBkZWZpbmVkIHVzZXIgcHJvbXB0IGhhbmRsZXIuIiBTbywgYWx3YXlzIGFsbG93
IHRoZSB1bmxvYWQgdG8gcHJvY2VlZCBpZiB0aGUgcGFnZSBpcyBiZWluZyBhdXRvbWF0ZWQuCisg
ICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbikgeworICAgICAgICBpZiAoISFwcm9jZXNz
KCkucHJvY2Vzc1Bvb2woKS5hdXRvbWF0aW9uU2Vzc2lvbigpKSB7CisgICAgICAgICAgICByZXBs
eSh0cnVlKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8v
IFNpbmNlIHJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCgpIGNhbiBzcGluIGEgbmVzdGVkIHJ1
biBsb29wIHdlIG5lZWQgdG8gdHVybiBvZmYgdGhlIHJlc3BvbnNpdmVuZXNzIHRpbWVyIGFuZCB0
aGUgdHJ5Q2xvc2UgdGltZXIuCisgICAgbV9wcm9jZXNzLT5zdG9wUmVzcG9uc2l2ZW5lc3NUaW1l
cigpOworICAgIGJvb2wgc2hvdWxkUmVzdW1lVGltZXJBZnRlclByb21wdCA9IG1fdHJ5Q2xvc2VU
aW1lb3V0VGltZXIuaXNBY3RpdmUoKTsKKyAgICBtX3RyeUNsb3NlVGltZW91dFRpbWVyLnN0b3Ao
KTsKKyAgICBtX3VpQ2xpZW50LT5ydW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoKnRoaXMsIG1l
c3NhZ2UsIGZyYW1lLCBXVEZNb3ZlKGZyYW1lSW5mbyksCisgICAgICAgIFt0aGlzLCB3ZWFrVGhp
cyA9IG1ha2VXZWFrUHRyKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKHJlcGx5
KSwgc2hvdWxkUmVzdW1lVGltZXJBZnRlclByb21wdF0oYm9vbCBzaG91bGRDbG9zZSkgbXV0YWJs
ZSB7CisgICAgICAgICAgICBpZiAod2Vha1RoaXMgJiYgc2hvdWxkUmVzdW1lVGltZXJBZnRlclBy
b21wdCkKKyAgICAgICAgICAgICAgICBtX3RyeUNsb3NlVGltZW91dFRpbWVyLnN0YXJ0T25lU2hv
dCh0cnlDbG9zZVRpbWVvdXREZWxheSk7CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihz
aG91bGRDbG9zZSk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VW
aWV3cG9ydFByb3BlcnRpZXMoY29uc3QgVmlld3BvcnRBdHRyaWJ1dGVzJiBhdHRyKQoreworICAg
IHBhZ2VDbGllbnQoKS5kaWRDaGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoYXR0cik7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpwYWdlRGlkU2Nyb2xsKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBz
Y3JvbGxQb3NpdGlvbikKK3sKKyAgICBtX3VpQ2xpZW50LT5wYWdlRGlkU2Nyb2xsKHRoaXMpOwor
CisgICAgcGFnZUNsaWVudCgpLnBhZ2VEaWRTY3JvbGwoc2Nyb2xsUG9zaXRpb24pOworCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAvLyBEbyBub3QgaGlkZSB0aGUgdmFsaWRhdGlvbiBt
ZXNzYWdlIGlmIHRoZSBzY3JvbGxpbmcgd2FzIGNhdXNlZCBieSB0aGUga2V5Ym9hcmQgc2hvd2lu
ZyB1cC4KKyAgICBpZiAobV9pc0tleWJvYXJkQW5pbWF0aW5nSW4pCisgICAgICAgIHJldHVybjsK
KyNlbmRpZgorCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgY2xvc2VPdmVybGF5ZWRW
aWV3cygpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpydW5PcGVuUGFuZWwoRnJh
bWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIGNvbnN0IEZp
bGVDaG9vc2VyU2V0dGluZ3MmIHNldHRpbmdzKQoreworICAgIGlmIChtX29wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyKSB7CisgICAgICAgIG1fb3BlblBhbmVsUmVzdWx0TGlzdGVuZXItPmludmFsaWRh
dGUoKTsKKyAgICAgICAgbV9vcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IG51bGxwdHI7CisgICAg
fQorCisgICAgV2ViRnJhbWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1l
SUQpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICBSZWY8QVBJ
OjpPcGVuUGFuZWxQYXJhbWV0ZXJzPiBwYXJhbWV0ZXJzID0gQVBJOjpPcGVuUGFuZWxQYXJhbWV0
ZXJzOjpjcmVhdGUoc2V0dGluZ3MpOworICAgIG1fb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgPSBX
ZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lclByb3h5OjpjcmVhdGUodGhpcyk7CisKKyAgICBpZiAo
bV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSB7CisgICAgICAgIGlmIChhdXRvKiBhdXRvbWF0aW9u
U2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9tYXRpb25TZXNzaW9uKCkpCisg
ICAgICAgICAgICBhdXRvbWF0aW9uU2Vzc2lvbi0+aGFuZGxlUnVuT3BlblBhbmVsKCp0aGlzLCAq
ZnJhbWUsIHBhcmFtZXRlcnMuZ2V0KCksICptX29wZW5QYW5lbFJlc3VsdExpc3RlbmVyKTsKKwor
ICAgICAgICAvLyBEb24ndCBzaG93IGEgZmlsZSBjaG9vc2VyLCBzaW5jZSBhdXRvbWF0aW9uIHdp
bGwgYmUgdW5hYmxlIHRvIGludGVyYWN0IHdpdGggaXQuCisgICAgICAgIHJldHVybjsKKyAgICB9
CisKKyAgICAvLyBTaW5jZSBydW5PcGVuUGFuZWwoKSBjYW4gc3BpbiBhIG5lc3RlZCBydW4gbG9v
cCB3ZSBuZWVkIHRvIHR1cm4gb2ZmIHRoZSByZXNwb25zaXZlbmVzcyB0aW1lci4KKyAgICBtX3By
b2Nlc3MtPnN0b3BSZXNwb25zaXZlbmVzc1RpbWVyKCk7CisKKyAgICBjb25zdCBhdXRvIGZyYW1l
SW5mb0ZvclBhZ2VDbGllbnQgPSBmcmFtZUluZm87CisKKyAgICBpZiAoIW1fdWlDbGllbnQtPnJ1
bk9wZW5QYW5lbCgqdGhpcywgZnJhbWUsIFdURk1vdmUoZnJhbWVJbmZvKSwgcGFyYW1ldGVycy5w
dHIoKSwgbV9vcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci5nZXQoKSkpIHsKKyAgICAgICAgaWYgKCFw
YWdlQ2xpZW50KCkuaGFuZGxlUnVuT3BlblBhbmVsKHRoaXMsIGZyYW1lLCBmcmFtZUluZm9Gb3JQ
YWdlQ2xpZW50LCBwYXJhbWV0ZXJzLnB0cigpLCBtX29wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmdl
dCgpKSkKKyAgICAgICAgICAgIGRpZENhbmNlbEZvck9wZW5QYW5lbCgpOworICAgIH0KK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnNob3dTaGFyZVNoZWV0KGNvbnN0IFNoYXJlRGF0YVdpdGhQYXJz
ZWRVUkwmIHNoYXJlRGF0YSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgIXNoYXJlRGF0YS51
cmwgfHwgc2hhcmVEYXRhLnVybC0+cHJvdG9jb2xJc0luSFRUUEZhbWlseSgpIHx8IHNoYXJlRGF0
YS51cmwtPnByb3RvY29sSXNEYXRhKCkpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBz
aGFyZURhdGEuZmlsZXMuaXNFbXB0eSgpIHx8IG1fcHJlZmVyZW5jZXMtPndlYlNoYXJlRmlsZUFQ
SUVuYWJsZWQoKSk7CisgICAgcGFnZUNsaWVudCgpLnNob3dTaGFyZVNoZWV0KHNoYXJlRGF0YSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hv
d0NvbnRhY3RQaWNrZXIoY29uc3QgV2ViQ29yZTo6Q29udGFjdHNSZXF1ZXN0RGF0YSYgcmVxdWVz
dERhdGEsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxWZWN0b3I8V2ViQ29y
ZTo6Q29udGFjdEluZm8+PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBNRVNTQUdF
X0NIRUNLKG1fcHJvY2VzcywgbV9wcmVmZXJlbmNlcy0+Y29udGFjdFBpY2tlckFQSUVuYWJsZWQo
KSk7CisgICAgcGFnZUNsaWVudCgpLnNob3dDb250YWN0UGlja2VyKHJlcXVlc3REYXRhLCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisgICAgCit2b2lkIFdlYlBhZ2VQcm94eTo6cHJp
bnRGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgY29u
c3QgV2ViQ29yZTo6RmxvYXRTaXplJiBwZGZGaXJzdFBhZ2VTaXplLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKCFtX2lzUGVyZm9y
bWluZ0RPTVByaW50T3BlcmF0aW9uKTsKKyAgICBtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0
aW9uID0gdHJ1ZTsKKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJG
cmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisg
ICAgZnJhbWUtPmRpZENoYW5nZVRpdGxlKHRpdGxlKTsKKworICAgIG1fdWlDbGllbnQtPnByaW50
RnJhbWUoKnRoaXMsICpmcmFtZSwgcGRmRmlyc3RQYWdlU2l6ZSwgW3RoaXMsIHByb3RlY3RlZFRo
aXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKV0gKCkgbXV0YWJsZSB7CisgICAgICAgIGVuZFByaW50aW5nKCk7IC8vIFNlbmQg
YSBtZXNzYWdlIHN5bmNocm9ub3VzbHkgd2hpbGUgbV9pc1BlcmZvcm1pbmdET01QcmludE9wZXJh
dGlvbiBpcyBzdGlsbCB0cnVlLgorICAgICAgICBtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0
aW9uID0gZmFsc2U7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgfSk7Cit9CisK
K3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNZWRpYVZvbHVtZShmbG9hdCB2b2x1bWUpCit7CisgICAg
aWYgKHZvbHVtZSA9PSBtX21lZGlhVm9sdW1lKQorICAgICAgICByZXR1cm47CisgICAgCisgICAg
bV9tZWRpYVZvbHVtZSA9IHZvbHVtZTsKKyAgICAKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNz
KCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpT
ZXRNZWRpYVZvbHVtZSh2b2x1bWUpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldE11dGVk
KFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok11dGVkU3RhdGVGbGFncyBzdGF0ZSwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIG1fbXV0ZWRTdGF0
ZSA9IHN0YXRlOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1
cm4gY29tcGxldGlvbkhhbmRsZXIoKTsKKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAg
Ym9vbCBoYXNNdXRlZENhcHR1cmVTdHJlYW1zID0gbV9tZWRpYVN0YXRlLmNvbnRhaW5zQW55KFdl
YkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok11dGVkQ2FwdHVyZU1hc2spOworICAgIGlmIChoYXNNdXRl
ZENhcHR1cmVTdHJlYW1zICYmICEoc3RhdGUuY29udGFpbnNBbnkoV2ViQ29yZTo6TWVkaWFQcm9k
dWNlcjo6TWVkaWFTdHJlYW1DYXB0dXJlSXNNdXRlZCkpKQorICAgICAgICBXZWJQcm9jZXNzUHJv
eHk6Om11dGVDYXB0dXJlSW5QYWdlc0V4Y2VwdChtX3dlYlBhZ2VJRCk7CisjZW5kaWYKKworICAg
IG1fcHJvY2Vzcy0+cGFnZU11dGVkU3RhdGVDaGFuZ2VkKG1fd2ViUGFnZUlELCBzdGF0ZSk7CisK
KyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlNldE11dGVkKHN0YXRl
KSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIGFjdGl2aXR5U3RhdGVEaWRDaGFu
Z2UoeyBBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUsIEFjdGl2aXR5U3RhdGU6OklzQ2FwdHVyaW5n
TWVkaWEgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNZWRpYUNhcHR1cmVFbmFibGVk
KGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX21lZGlhQ2FwdHVyZUVuYWJsZWQgPSBlbmFibGVkOwor
CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorICAgIFVzZXJNZWRpYVByb2Nlc3NNYW5hZ2VyOjpzaW5nbGV0
b24oKS5zZXRDYXB0dXJlRW5hYmxlZChlbmFibGVkKTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6c3RvcE1lZGlhQ2FwdHVyZShNZWRpYVByb2R1Y2VyOjpNZWRpYUNhcHR1cmVLaW5k
IGtpbmQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcigpOworCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBpZiAobV91c2VyTWVk
aWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIpCisgICAgICAgIG1fdXNlck1lZGlhUGVybWlzc2lv
blJlcXVlc3RNYW5hZ2VyLT5yZXNldEFjY2VzcygpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShN
ZXNzYWdlczo6V2ViUGFnZTo6U3RvcE1lZGlhQ2FwdHVyZShraW5kKSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0TWVk
aWFQbGF5YmFja1N0YXRlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTWVkaWFQbGF5YmFja1N0YXRl
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkp
IHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6UmVxdWVzdE1l
ZGlhUGxheWJhY2tTdGF0ZSgpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpwYXVzZUFsbE1lZGlhUGxheWJhY2soQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nl
c3MoKSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpQYXVzZUFs
bE1lZGlhUGxheWJhY2soKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6c3VzcGVuZEFsbE1lZGlhUGxheWJhY2soQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIG1fc3VzcGVuZE1lZGlhUGxheWJh
Y2tDb3VudGVyKys7CisgICAgaWYgKG1fbWVkaWFQbGF5YmFja0lzU3VzcGVuZGVkKSB7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgbV9t
ZWRpYVBsYXliYWNrSXNTdXNwZW5kZWQgPSB0cnVlOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJv
Y2VzcygpKSB7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlN1c3Bl
bmRBbGxNZWRpYVBsYXliYWNrKCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnJlc3VtZUFsbE1lZGlhUGxheWJhY2soQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGlmIChtX3N1c3BlbmRNZWRp
YVBsYXliYWNrQ291bnRlciA+IDApCisgICAgICAgIG1fc3VzcGVuZE1lZGlhUGxheWJhY2tDb3Vu
dGVyLS07CisKKyAgICBpZiAoIW1fbWVkaWFQbGF5YmFja0lzU3VzcGVuZGVkIHx8IG1fc3VzcGVu
ZE1lZGlhUGxheWJhY2tDb3VudGVyKSB7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisgICAgbV9tZWRpYVBsYXliYWNrSXNTdXNwZW5kZWQgPSBm
YWxzZTsKKworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgeworICAgICAgICBjb21wbGV0
aW9uSGFuZGxlcigpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgc2VuZFdpdGhBc3lu
Y1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpSZXN1bWVBbGxNZWRpYVBsYXliYWNrKCksIFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldE1heVN0
YXJ0TWVkaWFXaGVuSW5XaW5kb3coYm9vbCBtYXlTdGFydE1lZGlhKQoreworICAgIGlmIChtYXlT
dGFydE1lZGlhID09IG1fbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdykKKyAgICAgICAgcmV0dXJu
OworCisgICAgbV9tYXlTdGFydE1lZGlhV2hlbkluV2luZG93ID0gbWF5U3RhcnRNZWRpYTsKKwor
ICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2Vu
ZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0TWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdyhtYXlTdGFy
dE1lZGlhKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVEb3dubG9hZFJlcXVlc3Qo
RG93bmxvYWRQcm94eSYgZG93bmxvYWQpCit7CisgICAgcGFnZUNsaWVudCgpLmhhbmRsZURvd25s
b2FkUmVxdWVzdChkb3dubG9hZCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXN1bWVEb3du
bG9hZChjb25zdCBBUEk6OkRhdGEmIHJlc3VtZURhdGEsIGNvbnN0IFN0cmluZyYgcGF0aCwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChEb3dubG9hZFByb3h5Kik+JiYgY29tcGxldGlvbkhhbmRsZXIp
Cit7CisgICAgYXV0byYgZG93bmxvYWQgPSBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5yZXN1bWVE
b3dubG9hZCh3ZWJzaXRlRGF0YVN0b3JlKCksIHRoaXMsIHJlc3VtZURhdGEsIHBhdGgsIENhbGxE
b3dubG9hZERpZFN0YXJ0OjpZZXMpOworICAgIGRvd25sb2FkLnNldERlc3RpbmF0aW9uRmlsZW5h
bWUocGF0aCk7CisgICAgZG93bmxvYWQuc2V0RGlkU3RhcnRDYWxsYmFjayhXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpkb3dubG9hZFJlcXVlc3Qo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChEb3dubG9hZFByb3h5Kik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgZG93
bmxvYWQgPSBwcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5kb3dubG9hZCh3ZWJzaXRlRGF0YVN0b3Jl
KCksIHRoaXMsIHJlcXVlc3QsIHsgfSk7CisgICAgZG93bmxvYWQuc2V0RGlkU3RhcnRDYWxsYmFj
ayhXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpk
aWRDaGFuZ2VDb250ZW50U2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQoreworICAgIHBhZ2VDbGll
bnQoKS5kaWRDaGFuZ2VDb250ZW50U2l6ZShzaXplKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OmRpZENoYW5nZUludHJpbnNpY0NvbnRlbnRTaXplKGNvbnN0IEludFNpemUmIGludHJpbnNpY0Nv
bnRlbnRTaXplKQoreworI2lmIFVTRShBUFBLSVQpCisgICAgcGFnZUNsaWVudCgpLmludHJpbnNp
Y0NvbnRlbnRTaXplRGlkQ2hhbmdlKGludHJpbnNpY0NvbnRlbnRTaXplKTsKKyNlbmRpZgorfQor
CisjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd0Nv
bG9yUGlja2VyKGNvbnN0IFdlYkNvcmU6OkNvbG9yJiBpbml0aWFsQ29sb3IsIGNvbnN0IEludFJl
Y3QmIGVsZW1lbnRSZWN0LCBWZWN0b3I8V2ViQ29yZTo6Q29sb3I+JiYgc3VnZ2VzdGlvbnMpCit7
CisgICAgbV9jb2xvclBpY2tlciA9IHBhZ2VDbGllbnQoKS5jcmVhdGVDb2xvclBpY2tlcih0aGlz
LCBpbml0aWFsQ29sb3IsIGVsZW1lbnRSZWN0LCBXVEZNb3ZlKHN1Z2dlc3Rpb25zKSk7CisgICAg
bV9jb2xvclBpY2tlci0+c2hvd0NvbG9yUGlja2VyKGluaXRpYWxDb2xvcik7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpzZXRDb2xvclBpY2tlckNvbG9yKGNvbnN0IFdlYkNvcmU6OkNvbG9yJiBj
b2xvcikKK3sKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgbV9jb2xvclBpY2tlcik7CisK
KyAgICBtX2NvbG9yUGlja2VyLT5zZXRTZWxlY3RlZENvbG9yKGNvbG9yKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmVuZENvbG9yUGlja2VyKCkKK3sKKyAgICBpZiAoYXV0byBjb2xvclBpY2tl
ciA9IHN0ZDo6ZXhjaGFuZ2UobV9jb2xvclBpY2tlciwgbnVsbHB0cikpCisgICAgICAgIGNvbG9y
UGlja2VyLT5lbmRQaWNrZXIoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENob29zZUNv
bG9yKGNvbnN0IFdlYkNvcmU6OkNvbG9yJiBjb2xvcikKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQ
cm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OkRpZENob29zZUNvbG9yKGNvbG9yKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRFbmRD
b2xvclBpY2tlcigpCit7CisgICAgaWYgKHN0ZDo6ZXhjaGFuZ2UobV9jb2xvclBpY2tlciwgbnVs
bHB0cikpIHsKKyAgICAgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICAgICAg
cmV0dXJuOworCisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZEVuZENvbG9yUGlj
a2VyKCkpOworICAgIH0KKworfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVO
VCkKKwordm9pZCBXZWJQYWdlUHJveHk6OnNob3dEYXRhTGlzdFN1Z2dlc3Rpb25zKFdlYkNvcmU6
OkRhdGFMaXN0U3VnZ2VzdGlvbkluZm9ybWF0aW9uJiYgaW5mbykKK3sKKyAgICBpZiAoIW1fZGF0
YUxpc3RTdWdnZXN0aW9uc0Ryb3Bkb3duKQorICAgICAgICBtX2RhdGFMaXN0U3VnZ2VzdGlvbnNE
cm9wZG93biA9IHBhZ2VDbGllbnQoKS5jcmVhdGVEYXRhTGlzdFN1Z2dlc3Rpb25zRHJvcGRvd24o
KnRoaXMpOworCisgICAgbV9kYXRhTGlzdFN1Z2dlc3Rpb25zRHJvcGRvd24tPnNob3coV1RGTW92
ZShpbmZvKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVLZXlkb3duSW5EYXRhTGlz
dChjb25zdCBTdHJpbmcmIGtleSkKK3sKKyAgICBpZiAoIW1fZGF0YUxpc3RTdWdnZXN0aW9uc0Ry
b3Bkb3duKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2RhdGFMaXN0U3VnZ2VzdGlvbnNEcm9w
ZG93bi0+aGFuZGxlS2V5ZG93bldpdGhJZGVudGlmaWVyKGtleSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjplbmREYXRhTGlzdFN1Z2dlc3Rpb25zKCkKK3sKKyAgICBpZiAobV9kYXRhTGlzdFN1
Z2dlc3Rpb25zRHJvcGRvd24pCisgICAgICAgIG1fZGF0YUxpc3RTdWdnZXN0aW9uc0Ryb3Bkb3du
LT5jbG9zZSgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2xvc2VTdWdnZXN0aW9ucygp
Cit7CisgICAgaWYgKCFtX2RhdGFMaXN0U3VnZ2VzdGlvbnNEcm9wZG93bikKKyAgICAgICAgcmV0
dXJuOworCisgICAgbV9kYXRhTGlzdFN1Z2dlc3Rpb25zRHJvcGRvd24gPSBudWxscHRyOworICAg
IHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZENsb3NlU3VnZ2VzdGlvbnMoKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpkaWRTZWxlY3RPcHRpb24oY29uc3QgU3RyaW5nJiBzZWxlY3RlZE9w
dGlvbikKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsK
KworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZFNlbGVjdERhdGFMaXN0T3B0aW9uKHNl
bGVjdGVkT3B0aW9uKSk7Cit9CisKKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEVfQU5EX1RJTUVf
SU5QVVRfVFlQRVMpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzaG93RGF0ZVRpbWVQaWNrZXIoV2Vi
Q29yZTo6RGF0ZVRpbWVDaG9vc2VyUGFyYW1ldGVycyYmIHBhcmFtcykKK3sKKyAgICBpZiAoIW1f
ZGF0ZVRpbWVQaWNrZXIpCisgICAgICAgIG1fZGF0ZVRpbWVQaWNrZXIgPSBwYWdlQ2xpZW50KCku
Y3JlYXRlRGF0ZVRpbWVQaWNrZXIoKnRoaXMpOworCisgICAgbV9kYXRlVGltZVBpY2tlci0+c2hv
d0RhdGVUaW1lUGlja2VyKFdURk1vdmUocGFyYW1zKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjplbmREYXRlVGltZVBpY2tlcigpCit7CisgICAgaWYgKCFtX2RhdGVUaW1lUGlja2VyKQorICAg
ICAgICByZXR1cm47CisKKyAgICBtX2RhdGVUaW1lUGlja2VyLT5lbmRQaWNrZXIoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmRpZENob29zZURhdGUoU3RyaW5nVmlldyBkYXRlKQoreworICAg
IGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6RGlkQ2hvb3NlRGF0ZShkYXRlLnRvU3RyaW5nKCkpKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmRpZEVuZERhdGVUaW1lUGlja2VyKCkKK3sKKyAgICBtX2RhdGVU
aW1lUGlja2VyID0gbnVsbHB0cjsKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAg
ICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZEVuZERhdGVUaW1l
UGlja2VyKCkpOworfQorCisjZW5kaWYKKworV2ViSW5zcGVjdG9yVUlQcm94eSogV2ViUGFnZVBy
b3h5OjppbnNwZWN0b3IoKSBjb25zdAoreworICAgIGlmIChpc0Nsb3NlZCgpKQorICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gbV9pbnNwZWN0b3IuZ2V0KCk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpyZXNvdXJjZUxvYWREaWRTZW5kUmVxdWVzdChSZXNvdXJjZUxvYWRJbmZv
JiYgbG9hZEluZm8sIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCit7CisgICAg
aWYgKG1fcmVzb3VyY2VMb2FkQ2xpZW50KQorICAgICAgICBtX3Jlc291cmNlTG9hZENsaWVudC0+
ZGlkU2VuZFJlcXVlc3QoV1RGTW92ZShsb2FkSW5mbyksIFdURk1vdmUocmVxdWVzdCkpOworfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6cmVzb3VyY2VMb2FkRGlkUGVyZm9ybUhUVFBSZWRpcmVjdGlv
bihSZXNvdXJjZUxvYWRJbmZvJiYgbG9hZEluZm8sIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
JiByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkKK3sKKyAgICBp
ZiAobV9yZXNvdXJjZUxvYWRDbGllbnQpCisgICAgICAgIG1fcmVzb3VyY2VMb2FkQ2xpZW50LT5k
aWRQZXJmb3JtSFRUUFJlZGlyZWN0aW9uKFdURk1vdmUobG9hZEluZm8pLCBXVEZNb3ZlKHJlc3Bv
bnNlKSwgV1RGTW92ZShyZXF1ZXN0KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXNvdXJj
ZUxvYWREaWRSZWNlaXZlQ2hhbGxlbmdlKFJlc291cmNlTG9hZEluZm8mJiBsb2FkSW5mbywgV2Vi
Q29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmJiBjaGFsbGVuZ2UpCit7CisgICAgaWYgKG1f
cmVzb3VyY2VMb2FkQ2xpZW50KQorICAgICAgICBtX3Jlc291cmNlTG9hZENsaWVudC0+ZGlkUmVj
ZWl2ZUNoYWxsZW5nZShXVEZNb3ZlKGxvYWRJbmZvKSwgV1RGTW92ZShjaGFsbGVuZ2UpKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OnJlc291cmNlTG9hZERpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRJbmZvJiYgbG9hZEluZm8sIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZXNw
b25zZSkKK3sKKyAgICBpZiAobV9yZXNvdXJjZUxvYWRDbGllbnQpCisgICAgICAgIG1fcmVzb3Vy
Y2VMb2FkQ2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoV1RGTW92ZShsb2FkSW5mbyksIFdURk1v
dmUocmVzcG9uc2UpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlc291cmNlTG9hZERpZENv
bXBsZXRlV2l0aEVycm9yKFJlc291cmNlTG9hZEluZm8mJiBsb2FkSW5mbywgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYgZXJyb3Ip
Cit7CisgICAgaWYgKG1fcmVzb3VyY2VMb2FkQ2xpZW50KQorICAgICAgICBtX3Jlc291cmNlTG9h
ZENsaWVudC0+ZGlkQ29tcGxldGVXaXRoRXJyb3IoV1RGTW92ZShsb2FkSW5mbyksIFdURk1vdmUo
cmVzcG9uc2UpLCBXVEZNb3ZlKGVycm9yKSk7Cit9CisKKyNpZiBFTkFCTEUoRlVMTFNDUkVFTl9B
UEkpCitXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5KiBXZWJQYWdlUHJveHk6OmZ1bGxTY3JlZW5N
YW5hZ2VyKCkKK3sKKyAgICByZXR1cm4gbV9mdWxsU2NyZWVuTWFuYWdlci5nZXQoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnNldEZ1bGxzY3JlZW5DbGllbnQoc3RkOjp1bmlxdWVfcHRyPEFQ
STo6RnVsbHNjcmVlbkNsaWVudD4mJiBjbGllbnQpCit7CisgICAgaWYgKCFjbGllbnQpIHsKKyAg
ICAgICAgbV9mdWxsc2NyZWVuQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6OkZ1bGxzY3JlZW5DbGll
bnQ+KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2Z1bGxzY3JlZW5DbGllbnQg
PSBXVEZNb3ZlKGNsaWVudCk7Cit9CisjZW5kaWYKKyAgICAKKyNpZiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpCitQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkqIFdlYlBhZ2VQcm94
eTo6cGxheWJhY2tTZXNzaW9uTWFuYWdlcigpCit7CisgICAgcmV0dXJuIG1fcGxheWJhY2tTZXNz
aW9uTWFuYWdlci5nZXQoKTsKK30KKworVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5KiBXZWJQ
YWdlUHJveHk6OnZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKQoreworICAgIHJldHVybiBtX3ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuZ2V0KCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNb2Nr
VmlkZW9QcmVzZW50YXRpb25Nb2RlRW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgbV9tb2Nr
VmlkZW9QcmVzZW50YXRpb25Nb2RlRW5hYmxlZCA9IGVuYWJsZWQ7CisgICAgaWYgKG1fdmlkZW9G
dWxsc2NyZWVuTWFuYWdlcikKKyAgICAgICAgbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT5zZXRN
b2NrVmlkZW9QcmVzZW50YXRpb25Nb2RlRW5hYmxlZChlbmFibGVkKTsKK30KKyNlbmRpZgorCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKK2Jvb2wgV2ViUGFnZVByb3h5OjphbGxvd3NNZWRpYURv
Y3VtZW50SW5saW5lUGxheWJhY2soKSBjb25zdAoreworICAgIHJldHVybiBtX2FsbG93c01lZGlh
RG9jdW1lbnRJbmxpbmVQbGF5YmFjazsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldEFsbG93
c01lZGlhRG9jdW1lbnRJbmxpbmVQbGF5YmFjayhib29sIGFsbG93cykKK3sKKyAgICBpZiAobV9h
bGxvd3NNZWRpYURvY3VtZW50SW5saW5lUGxheWJhY2sgPT0gYWxsb3dzKQorICAgICAgICByZXR1
cm47CisgICAgbV9hbGxvd3NNZWRpYURvY3VtZW50SW5saW5lUGxheWJhY2sgPSBhbGxvd3M7CisK
KyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRBbGxvd3NNZWRpYURvY3VtZW50SW5saW5l
UGxheWJhY2soYWxsb3dzKSk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OnNldEhh
c0hhZFNlbGVjdGlvbkNoYW5nZXNGcm9tVXNlckludGVyYWN0aW9uKGJvb2wgaGFzSGFkVXNlclNl
bGVjdGlvbkNoYW5nZXMpCit7CisgICAgbV9oYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJ
bnRlcmFjdGlvbiA9IGhhc0hhZFVzZXJTZWxlY3Rpb25DaGFuZ2VzOworfQorCisjaWYgSEFWRShU
T1VDSF9CQVIpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRJc1RvdWNoQmFyVXBkYXRlU3VwcmVz
c2VkRm9ySGlkZGVuQ29udGVudEVkaXRhYmxlKGJvb2wgaWdub3JlVG91Y2hCYXJVcGRhdGUpCit7
CisgICAgbV9pc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRhYmxl
ID0gaWdub3JlVG91Y2hCYXJVcGRhdGU7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRJc05l
dmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhcihib29sIGlzTmV2ZXJSaWNobHlFZGl0YWJsZSkK
K3sKKyAgICBtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyID0gaXNOZXZlclJpY2hs
eUVkaXRhYmxlOworfQorCisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RET01Q
YXN0ZUFjY2Vzcyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBlbGVtZW50UmVjdCwgY29uc3QgU3Ry
aW5nJiBvcmlnaW5JZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkRP
TVBhc3RlQWNjZXNzUmVzcG9uc2UpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIG1fcGFn
ZUNsaWVudC0+cmVxdWVzdERPTVBhc3RlQWNjZXNzKGVsZW1lbnRSZWN0LCBvcmlnaW5JZGVudGlm
aWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKKy8vIEJhY2tGb3J3YXJkTGlz
dAorCit2b2lkIFdlYlBhZ2VQcm94eTo6YmFja0ZvcndhcmRBZGRJdGVtKEJhY2tGb3J3YXJkTGlz
dEl0ZW1TdGF0ZSYmIGl0ZW1TdGF0ZSkKK3sKKyAgICBhdXRvIGl0ZW0gPSBXZWJCYWNrRm9yd2Fy
ZExpc3RJdGVtOjpjcmVhdGUoV1RGTW92ZShpdGVtU3RhdGUpLCBpZGVudGlmaWVyKCkpOworICAg
IGl0ZW0tPnNldFJlc291cmNlRGlyZWN0b3J5VVJMKGN1cnJlbnRSZXNvdXJjZURpcmVjdG9yeVVS
TCgpKTsKKyAgICBtX2JhY2tGb3J3YXJkTGlzdC0+YWRkSXRlbShXVEZNb3ZlKGl0ZW0pKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmJhY2tGb3J3YXJkR29Ub0l0ZW0oY29uc3QgQmFja0Zvcndh
cmRJdGVtSWRlbnRpZmllciYgaXRlbUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdl
YkJhY2tGb3J3YXJkTGlzdENvdW50cyYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIC8v
IE9uIHByb2Nlc3Mgc3dhcCwgd2UgdGVsbCB0aGUgcHJldmlvdXMgcHJvY2VzcyB0byBpZ25vcmUg
dGhlIGxvYWQsIHdoaWNoIGNhdXNlcyBpdCBzbyByZXN0b3JlIGl0cyBjdXJyZW50IGJhY2sgZm9y
d2FyZCBpdGVtIHRvIGl0cyBwcmV2aW91cworICAgIC8vIHZhbHVlLiBTaW5jZSB0aGUgbG9hZCBp
cyByZWFsbHkgZ29pbmcgb24gaW4gYSBuZXcgcHJvdmlzaW9uYWwgcHJvY2Vzcywgd2Ugd2FudCB0
byBpZ25vcmUgc3VjaCByZXF1ZXN0cyBmcm9tIHRoZSBjb21taXR0ZWQgcHJvY2Vzcy4KKyAgICAv
LyBBbnkgcmVhbCBuZXcgbG9hZCBpbiB0aGUgY29tbWl0dGVkIHByb2Nlc3Mgd291bGQgaGF2ZSBj
bGVhcmVkIG1fcHJvdmlzaW9uYWxQYWdlLgorICAgIGlmIChtX3Byb3Zpc2lvbmFsUGFnZSkKKyAg
ICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKG1fYmFja0ZvcndhcmRMaXN0LT5jb3VudHMo
KSk7CisKKyAgICBiYWNrRm9yd2FyZEdvVG9JdGVtU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCks
IGl0ZW1JRCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6YmFja0ZvcndhcmRHb1RvSXRlbVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHBy
b2Nlc3MsIGNvbnN0IEJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXImIGl0ZW1JRCwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBXZWJCYWNrRm9yd2FyZExpc3RDb3VudHMmKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBNRVNTQUdFX0NIRUNLX0NPTVBMRVRJT04obV9wcm9jZXNzLCAh
V2ViS2l0Ojppc0luc3BlY3RvclBhZ2UoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlcihtX2JhY2tG
b3J3YXJkTGlzdC0+Y291bnRzKCkpKTsKKworICAgIGF1dG8qIGl0ZW0gPSBtX2JhY2tGb3J3YXJk
TGlzdC0+aXRlbUZvcklEKGl0ZW1JRCk7CisgICAgaWYgKCFpdGVtKQorICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIobV9iYWNrRm9yd2FyZExpc3QtPmNvdW50cygpKTsKKworICAgIG1f
YmFja0ZvcndhcmRMaXN0LT5nb1RvSXRlbSgqaXRlbSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIo
bV9iYWNrRm9yd2FyZExpc3QtPmNvdW50cygpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmJh
Y2tGb3J3YXJkSXRlbUF0SW5kZXgoaW50MzJfdCBpbmRleCwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChzdGQ6Om9wdGlvbmFsPEJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXI+JiYpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIGlmIChhdXRvKiBpdGVtID0gbV9iYWNrRm9yd2FyZExpc3QtPml0
ZW1BdEluZGV4KGluZGV4KSkKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoaXRlbS0+aXRlbUlE
KCkpOworICAgIGVsc2UKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0KTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OmJhY2tGb3J3YXJkTGlzdENvdW50cyhNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpCYWNrRm9yd2FyZExpc3RDb3VudHNEZWxheWVkUmVwbHkmJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcihtX2JhY2tGb3J3YXJkTGlzdC0+
Y291bnRzKCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y29tcG9zaXRpb25XYXNDYW5jZWxl
ZCgpCit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgcGFnZUNsaWVudCgpLm5vdGlmeUlucHV0
Q29udGV4dEFib3V0RGlzY2FyZGVkQ29tcG9zaXRpb24oKTsKKyNlbmRpZgorfQorCisvLyBVbmRv
IG1hbmFnZW1lbnQKKwordm9pZCBXZWJQYWdlUHJveHk6OnJlZ2lzdGVyRWRpdENvbW1hbmRGb3JV
bmRvKFdlYlVuZG9TdGVwSUQgY29tbWFuZElELCBjb25zdCBTdHJpbmcmIGxhYmVsKQoreworICAg
IHJlZ2lzdGVyRWRpdENvbW1hbmQoV2ViRWRpdENvbW1hbmRQcm94eTo6Y3JlYXRlKGNvbW1hbmRJ
RCwgbGFiZWwsICp0aGlzKSwgVW5kb09yUmVkbzo6VW5kbyk7Cit9CisgICAgCit2b2lkIFdlYlBh
Z2VQcm94eTo6cmVnaXN0ZXJJbnNlcnRpb25VbmRvR3JvdXBpbmcoKQoreworI2lmIFVTRShJTlNF
UlRJT05fVU5ET19HUk9VUElORykKKyAgICBwYWdlQ2xpZW50KCkucmVnaXN0ZXJJbnNlcnRpb25V
bmRvR3JvdXBpbmcoKTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y2FuVW5kb1Jl
ZG8oVW5kb09yUmVkbyBhY3Rpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgY29tcGxldGlvbkhhbmRsZXIocGFnZUNsaWVudCgpLmNh
blVuZG9SZWRvKGFjdGlvbikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZXhlY3V0ZVVuZG9S
ZWRvKFVuZG9PclJlZG8gYWN0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgcGFnZUNsaWVudCgpLmV4ZWN1dGVVbmRvUmVkbyhhY3Rpb24p
OworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjbGVh
ckFsbEVkaXRDb21tYW5kcygpCit7CisgICAgcGFnZUNsaWVudCgpLmNsZWFyQWxsRWRpdENvbW1h
bmRzKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDb3VudFN0cmluZ01hdGNoZXMoY29u
c3QgU3RyaW5nJiBzdHJpbmcsIHVpbnQzMl90IG1hdGNoQ291bnQpCit7CisgICAgbV9maW5kQ2xp
ZW50LT5kaWRDb3VudFN0cmluZ01hdGNoZXModGhpcywgc3RyaW5nLCBtYXRjaENvdW50KTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEdldEltYWdlRm9yRmluZE1hdGNoKGNvbnN0IFNoYXJl
YWJsZUJpdG1hcDo6SGFuZGxlJiBjb250ZW50SW1hZ2VIYW5kbGUsIHVpbnQzMl90IG1hdGNoSW5k
ZXgpCit7CisgICAgYXV0byBiaXRtYXAgPSBTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZShjb250ZW50
SW1hZ2VIYW5kbGUpOworICAgIGlmICghYml0bWFwKSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIG1fZmluZE1hdGNoZXNDbGllbnQt
PmRpZEdldEltYWdlRm9yTWF0Y2hSZXN1bHQodGhpcywgV2ViSW1hZ2U6OmNyZWF0ZShiaXRtYXAu
cmVsZWFzZU5vbk51bGwoKSkucHRyKCksIG1hdGNoSW5kZXgpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6c2V0VGV4dEluZGljYXRvcihjb25zdCBUZXh0SW5kaWNhdG9yRGF0YSYgaW5kaWNhdG9y
RGF0YSwgdWludDY0X3QgbGlmZXRpbWUpCit7CisgICAgLy8gRklYTUU6IE1ha2UgVGV4dEluZGlj
YXRvcldpbmRvdyBhIHBsYXRmb3JtLWluZGVwZW5kZW50IHByZXNlbnRhdGlvbmFsIHRoaW5nICgi
VGV4dEluZGljYXRvclByZXNlbnRhdGlvbiI/KS4KKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBw
YWdlQ2xpZW50KCkuc2V0VGV4dEluZGljYXRvcihUZXh0SW5kaWNhdG9yOjpjcmVhdGUoaW5kaWNh
dG9yRGF0YSksIHN0YXRpY19jYXN0PFdlYkNvcmU6OlRleHRJbmRpY2F0b3JMaWZldGltZT4obGlm
ZXRpbWUpKTsKKyNlbHNlCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisjZW5kaWYKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmNsZWFyVGV4dEluZGljYXRvcigpCit7CisjaWYgUExBVEZPUk0o
Q09DT0EpCisgICAgcGFnZUNsaWVudCgpLmNsZWFyVGV4dEluZGljYXRvcihXZWJDb3JlOjpUZXh0
SW5kaWNhdG9yRGlzbWlzc2FsQW5pbWF0aW9uOjpGYWRlT3V0KTsKKyNlbHNlCisgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFRleHRJ
bmRpY2F0b3JBbmltYXRpb25Qcm9ncmVzcyhmbG9hdCBwcm9ncmVzcykKK3sKKyNpZiBQTEFURk9S
TShDT0NPQSkKKyAgICBwYWdlQ2xpZW50KCkuc2V0VGV4dEluZGljYXRvckFuaW1hdGlvblByb2dy
ZXNzKHByb2dyZXNzKTsKKyNlbHNlCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisjZW5kaWYK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEZpbmRTdHJpbmcoY29uc3QgU3RyaW5nJiBzdHJp
bmcsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0PiYgbWF0Y2hSZWN0cywgdWludDMyX3Qg
bWF0Y2hDb3VudCwgaW50MzJfdCBtYXRjaEluZGV4LCBib29sIGRpZFdyYXBBcm91bmQpCit7Cisg
ICAgbV9maW5kQ2xpZW50LT5kaWRGaW5kU3RyaW5nKHRoaXMsIHN0cmluZywgbWF0Y2hSZWN0cywg
bWF0Y2hDb3VudCwgbWF0Y2hJbmRleCwgZGlkV3JhcEFyb3VuZCk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpkaWRGaW5kU3RyaW5nTWF0Y2hlcyhjb25zdCBTdHJpbmcmIHN0cmluZywgY29uc3Qg
VmVjdG9yPFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0Pj4mIG1hdGNoUmVjdHMsIGludDMyX3QgZmly
c3RJbmRleEFmdGVyU2VsZWN0aW9uKQoreworICAgIG1fZmluZE1hdGNoZXNDbGllbnQtPmRpZEZp
bmRTdHJpbmdNYXRjaGVzKHRoaXMsIHN0cmluZywgbWF0Y2hSZWN0cywgZmlyc3RJbmRleEFmdGVy
U2VsZWN0aW9uKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEZhaWxUb0ZpbmRTdHJpbmco
Y29uc3QgU3RyaW5nJiBzdHJpbmcpCit7CisgICAgbV9maW5kQ2xpZW50LT5kaWRGYWlsVG9GaW5k
U3RyaW5nKHRoaXMsIHN0cmluZyk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpzZW5kTWVzc2Fn
ZShVbmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYmIGVuY29kZXIsIE9wdGlvblNldDxJUEM6OlNlbmRP
cHRpb24+IHNlbmRPcHRpb25zLCBzdGQ6Om9wdGlvbmFsPHN0ZDo6cGFpcjxDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKElQQzo6RGVjb2RlciopPiwgdWludDY0X3Q+PiYmIGFzeW5jUmVwbHlJbmZvKQor
eworICAgIHJldHVybiBtX3Byb2Nlc3MtPnNlbmRNZXNzYWdlKFdURk1vdmUoZW5jb2RlciksIHNl
bmRPcHRpb25zLCBXVEZNb3ZlKGFzeW5jUmVwbHlJbmZvKSk7Cit9CisKK0lQQzo6Q29ubmVjdGlv
biogV2ViUGFnZVByb3h5OjptZXNzYWdlU2VuZGVyQ29ubmVjdGlvbigpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fcHJvY2Vzcy0+aGFzQ29ubmVjdGlvbigpID8gbV9wcm9jZXNzLT5jb25uZWN0aW9u
KCkgOiBudWxscHRyOworfQorCit1aW50NjRfdCBXZWJQYWdlUHJveHk6Om1lc3NhZ2VTZW5kZXJE
ZXN0aW5hdGlvbklEKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93ZWJQYWdlSUQudG9VSW50NjQo
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnZhbHVlQ2hhbmdlZEZvclBvcHVwTWVudShXZWJQ
b3B1cE1lbnVQcm94eSosIGludDMyX3QgbmV3U2VsZWN0ZWRJbmRleCkKK3sKKyAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlOjpEaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZlUG9wdXBNZW51
KG5ld1NlbGVjdGVkSW5kZXgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFRleHRGcm9t
SXRlbUZvclBvcHVwTWVudShXZWJQb3B1cE1lbnVQcm94eSosIGludDMyX3QgaW5kZXgpCit7Cisg
ICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0VGV4dEZvckFjdGl2ZVBvcHVwTWVudShpbmRl
eCkpOworfQorCitib29sIFdlYlBhZ2VQcm94eTo6aXNQcm9jZXNzaW5nS2V5Ym9hcmRFdmVudHMo
KSBjb25zdAoreworICAgIHJldHVybiAhbV9rZXlFdmVudFF1ZXVlLmlzRW1wdHkoKTsKK30KKwor
Ym9vbCBXZWJQYWdlUHJveHk6OmlzUHJvY2Vzc2luZ01vdXNlRXZlbnRzKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gIW1fbW91c2VFdmVudFF1ZXVlLmlzRW1wdHkoKTsKK30KKworYm9vbCBXZWJQYWdl
UHJveHk6OmlzUHJvY2Vzc2luZ1doZWVsRXZlbnRzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV93
aGVlbEV2ZW50Q29hbGVzY2VyICYmIG1fd2hlZWxFdmVudENvYWxlc2Nlci0+aGFzRXZlbnRzQmVp
bmdQcm9jZXNzZWQoKTsKK30KKworTmF0aXZlV2ViTW91c2VFdmVudCogV2ViUGFnZVByb3h5Ojpj
dXJyZW50bHlQcm9jZXNzZWRNb3VzZURvd25FdmVudCgpCit7CisgICAgLy8gPGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzkwND4gV2UgbmVlZCB0byBrZWVwIHRyYWNr
IG9mIHRoZSBtb3VzZSBkb3duIGV2ZW50IGluIHRoZSBjYXNlIHdoZXJlIHdlCisgICAgLy8gZGlz
cGxheSBhIHBvcHVwIG1lbnUgZm9yIHNlbGVjdCBlbGVtZW50cy4gV2hlbiB0aGUgdXNlciBjaGFu
Z2VzIHRoZSBzZWxlY3RlZCBpdGVtLCB3ZSBmYWtlIGEgbW91c2V1cCBldmVudCBieQorICAgIC8v
IHVzaW5nIHRoaXMgc3RvcmVkIG1vdXNlZG93biBldmVudCBhbmQgY2hhbmdpbmcgdGhlIGV2ZW50
IHR5cGUuIFRoaXMgdHJpY2tlcnkgaGFwcGVucyB3aGVuIFdlYlByb2Nlc3MgaGFuZGxlcworICAg
IC8vIGEgbW91c2Vkb3duIGV2ZW50IHRoYXQgcnVucyB0aGUgZGVmYXVsdCBoYW5kbGVyIGZvciBI
VE1MU2VsZWN0RWxlbWVudCwgc28gdGhlIHRyaWdnZXJpbmcgbW91c2Vkb3duIG11c3QgYmUgdGhl
IGZpcnN0IGV2ZW50LgorCisgICAgaWYgKG1fbW91c2VFdmVudFF1ZXVlLmlzRW1wdHkoKSkKKyAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgCisgICAgYXV0byYgZXZlbnQgPSBtX21vdXNlRXZl
bnRRdWV1ZS5maXJzdCgpOworICAgIGlmIChldmVudC50eXBlKCkgIT0gV2ViRXZlbnQ6OlR5cGU6
Ok1vdXNlRG93bikKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICByZXR1cm4gJmV2ZW50
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cG9zdE1lc3NhZ2VUb0luamVjdGVkQnVuZGxlKGNv
bnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIEFQSTo6T2JqZWN0KiBtZXNzYWdlQm9keSkKK3sKKyAg
ICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpIHsKKyAgICAgICAgbV9wZW5kaW5nSW5qZWN0ZWRC
dW5kbGVNZXNzYWdlcy5hcHBlbmQoSW5qZWN0ZWRCdW5kbGVNZXNzYWdlIHsgbWVzc2FnZU5hbWUs
IG1lc3NhZ2VCb2R5IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6UG9zdEluamVjdGVkQnVuZGxlTWVzc2FnZShtZXNzYWdlTmFtZSwgVXNl
ckRhdGEocHJvY2VzcygpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXMobWVzc2FnZUJvZHkpLmdl
dCgpKSkpOworfQorCisjaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQYWdlUHJveHk6OmZhaWxl
ZFRvU2hvd1BvcHVwTWVudSgpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RmFpbGVk
VG9TaG93UG9wdXBNZW51KCkpOworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzaG93
UG9wdXBNZW51KGNvbnN0IEludFJlY3QmIHJlY3QsIHVpbnQ2NF90IHRleHREaXJlY3Rpb24sIGNv
bnN0IFZlY3RvcjxXZWJQb3B1cEl0ZW0+JiBpdGVtcywgaW50MzJfdCBzZWxlY3RlZEluZGV4LCBj
b25zdCBQbGF0Zm9ybVBvcHVwTWVudURhdGEmIGRhdGEpCit7CisgICAgTUVTU0FHRV9DSEVDSyht
X3Byb2Nlc3MsIHNlbGVjdGVkSW5kZXggPT0gLTEgfHwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHNl
bGVjdGVkSW5kZXgpIDwgaXRlbXMuc2l6ZSgpKTsKKworICAgIGlmIChtX2FjdGl2ZVBvcHVwTWVu
dSkgeworICAgICAgICBtX2FjdGl2ZVBvcHVwTWVudS0+aGlkZVBvcHVwTWVudSgpOworICAgICAg
ICBtX2FjdGl2ZVBvcHVwTWVudS0+aW52YWxpZGF0ZSgpOworICAgICAgICBtX2FjdGl2ZVBvcHVw
TWVudSA9IG51bGxwdHI7CisgICAgfQorCisgICAgLy8gSWYgdGhlIHBhZ2UgaXMgY29udHJvbGxl
ZCBieSBhdXRvbWF0aW9uLCBlbnRlcmluZyBhIG5lc3RlZCBydW4gbG9vcCB3aGlsZSB0aGUgbWVu
dSBpcyBvcGVuCisgICAgLy8gY2FuIGhhbmcgdGhlIHBhZ2UgLyBXZWJEcml2ZXIgdGVzdC4gU2lu
Y2UgPG9wdGlvbj4gZWxlbWVudHMgYXJlIHNlbGVjdGVkIHZpYSBhIGRpZmZlcmVudAorICAgIC8v
IGNvZGUgcGF0aCBhbnl3YXksIGp1c3QgZG9uJ3Qgc2hvdyB0aGUgbmF0aXZlIHBvcHVwIG1lbnUu
CisgICAgaWYgKGF1dG8qIGF1dG9tYXRpb25TZXNzaW9uID0gcHJvY2VzcygpLnByb2Nlc3NQb29s
KCkuYXV0b21hdGlvblNlc3Npb24oKSkgeworICAgICAgICBpZiAobV9jb250cm9sbGVkQnlBdXRv
bWF0aW9uICYmIGF1dG9tYXRpb25TZXNzaW9uLT5pc1NpbXVsYXRpbmdVc2VySW50ZXJhY3Rpb24o
KSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2FjdGl2ZVBvcHVwTWVudSA9
IHBhZ2VDbGllbnQoKS5jcmVhdGVQb3B1cE1lbnVQcm94eSgqdGhpcyk7CisKKyAgICBpZiAoIW1f
YWN0aXZlUG9wdXBNZW51KQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBTaW5jZSBzaG93UG9w
dXBNZW51KCkgY2FuIHNwaW4gYSBuZXN0ZWQgcnVuIGxvb3Agd2UgbmVlZCB0byB0dXJuIG9mZiB0
aGUgcmVzcG9uc2l2ZW5lc3MgdGltZXIuCisgICAgbV9wcm9jZXNzLT5zdG9wUmVzcG9uc2l2ZW5l
c3NUaW1lcigpOworCisgICAgLy8gU2hvd2luZyBhIHBvcHVwIG1lbnUgcnVucyBhIG5lc3RlZCBy
dW5sb29wLCB3aGljaCBjYW4gaGFuZGxlIG1lc3NhZ2VzIHRoYXQgY2F1c2UgfHRoaXN8IHRvIGdl
dCBjbG9zZWQuCisgICAgUmVmPFdlYlBhZ2VQcm94eT4gcHJvdGVjdCgqdGhpcyk7CisgICAgbV9h
Y3RpdmVQb3B1cE1lbnUtPnNob3dQb3B1cE1lbnUocmVjdCwgc3RhdGljX2Nhc3Q8VGV4dERpcmVj
dGlvbj4odGV4dERpcmVjdGlvbiksIG1fcGFnZVNjYWxlRmFjdG9yLCBpdGVtcywgZGF0YSwgc2Vs
ZWN0ZWRJbmRleCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpoaWRlUG9wdXBNZW51KCkKK3sK
KyAgICBpZiAoIW1fYWN0aXZlUG9wdXBNZW51KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2Fj
dGl2ZVBvcHVwTWVudS0+aGlkZVBvcHVwTWVudSgpOworICAgIG1fYWN0aXZlUG9wdXBNZW51LT5p
bnZhbGlkYXRlKCk7CisgICAgbV9hY3RpdmVQb3B1cE1lbnUgPSBudWxscHRyOworfQorCisjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVVMpCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd0NvbnRleHRNZW51
KENvbnRleHRNZW51Q29udGV4dERhdGEmJiBjb250ZXh0TWVudUNvbnRleHREYXRhLCBjb25zdCBV
c2VyRGF0YSYgdXNlckRhdGEpCit7CisgICAgLy8gU2hvd2luZyBhIGNvbnRleHQgbWVudSBydW5z
IGEgbmVzdGVkIHJ1bmxvb3AsIHdoaWNoIGNhbiBoYW5kbGUgbWVzc2FnZXMgdGhhdCBjYXVzZSB8
dGhpc3wgdG8gZ2V0IGNsb3NlZC4KKyAgICBSZWY8V2ViUGFnZVByb3h5PiBwcm90ZWN0KCp0aGlz
KTsKKworICAgIC8vIElmIHRoZSBwYWdlIGlzIGNvbnRyb2xsZWQgYnkgYXV0b21hdGlvbiwgZW50
ZXJpbmcgYSBuZXN0ZWQgcnVuIGxvb3Agd2hpbGUgdGhlIG1lbnUgaXMgb3BlbgorICAgIC8vIGNh
biBoYW5nIHRoZSBwYWdlIC8gV2ViRHJpdmVyIHRlc3QuIFByZXRlbmQgdG8gc2hvdyBhbmQgaW1t
ZWRpYXRlbHkgZGlzbWlzcyB0aGUgY29udGV4dCBtZW51LgorICAgIGlmIChhdXRvKiBhdXRvbWF0
aW9uU2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9tYXRpb25TZXNzaW9uKCkp
IHsKKyAgICAgICAgaWYgKG1fY29udHJvbGxlZEJ5QXV0b21hdGlvbiAmJiBhdXRvbWF0aW9uU2Vz
c2lvbi0+aXNTaW11bGF0aW5nVXNlckludGVyYWN0aW9uKCkpIHsKKyAgICAgICAgICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2U6OkRpZFNob3dDb250ZXh0TWVudSgpKTsKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8vIERpc2NhcmQgYW55IGVucXVldWVkIG1v
dXNlIGV2ZW50cyB0aGF0IGhhdmUgYmVlbiBkZWxpdmVyZWQgdG8gdGhlIFVJUHJvY2VzcyB3aGls
c3QgdGhlIFdlYlByb2Nlc3MgaXMgc3RpbGwgcHJvY2Vzc2luZyB0aGUKKyAgICAvLyBNb3VzZURv
d24gZXZlbnQgdGhhdCB0cmlnZ2VyZWQgdGhpcyBTaG93Q29udGV4dE1lbnUgbWVzc2FnZS4gVGhp
cyBjYW4gaGFwcGVuIGlmIHdlIHRha2UgdG9vIGxvbmcgdG8gZW50ZXIgdGhlIG5lc3RlZCBydW5s
b29wLgorICAgIGRpc2NhcmRRdWV1ZWRNb3VzZUV2ZW50cygpOworCisgICAgbV9hY3RpdmVDb250
ZXh0TWVudUNvbnRleHREYXRhID0gY29udGV4dE1lbnVDb250ZXh0RGF0YTsKKworICAgIG1fYWN0
aXZlQ29udGV4dE1lbnUgPSBwYWdlQ2xpZW50KCkuY3JlYXRlQ29udGV4dE1lbnVQcm94eSgqdGhp
cywgV1RGTW92ZShjb250ZXh0TWVudUNvbnRleHREYXRhKSwgdXNlckRhdGEpOworCisgICAgbV9h
Y3RpdmVDb250ZXh0TWVudS0+c2hvdygpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkU2hv
d0NvbnRleHRNZW51KCkKK3sKKyAgICAvLyBEb24ndCBzZW5kIGBNZXNzYWdlczo6V2ViUGFnZTo6
RGlkU2hvd0NvbnRleHRNZW51YCBhcyB0aGF0IHNob3VsZCd2ZSBhbHJlYWR5IGJlZW4gZWFnZXJs
eQorICAgIC8vIHNlbnQgd2hlbiByZXF1ZXN0aW5nIHRoZSBjb250ZXh0IG1lbnUgdG8gc2hvdywg
cmVnYXJkbGVzcyBvZiB0aGUgcmVzdWx0IG9mIHRoYXQgcmVxdWVzdC4KKworICAgIHBhZ2VDbGll
bnQoKS5kaWRTaG93Q29udGV4dE1lbnUoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZERp
c21pc3NDb250ZXh0TWVudSgpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RGlkRGlz
bWlzc0NvbnRleHRNZW51KCkpOworCisgICAgcGFnZUNsaWVudCgpLmRpZERpc21pc3NDb250ZXh0
TWVudSgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y29udGV4dE1lbnVJdGVtU2VsZWN0ZWQo
Y29uc3QgV2ViQ29udGV4dE1lbnVJdGVtRGF0YSYgaXRlbSkKK3sKKyAgICAvLyBBcHBsaWNhdGlv
biBjdXN0b20gaXRlbXMgZG9uJ3QgbmVlZCB0byByb3VuZC10cmlwIHRocm91Z2ggdG8gV2ViQ29y
ZSBpbiB0aGUgV2ViUHJvY2Vzcy4KKyAgICBpZiAoaXRlbS5hY3Rpb24oKSA+PSBDb250ZXh0TWVu
dUl0ZW1CYXNlQXBwbGljYXRpb25UYWcpIHsKKyAgICAgICAgbV9jb250ZXh0TWVudUNsaWVudC0+
Y3VzdG9tQ29udGV4dE1lbnVJdGVtU2VsZWN0ZWQoKnRoaXMsIGl0ZW0pOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgc3RydWN0IERvd25sb2FkSW5mbyB7CisgICAgICAgIFN0cmluZyB1
cmw7CisgICAgICAgIFN0cmluZyBzdWdnZXN0ZWRGaWxlbmFtZTsKKyAgICB9OworICAgIHN0ZDo6
b3B0aW9uYWw8RG93bmxvYWRJbmZvPiBkb3dubG9hZEluZm87CisKKyAgICBzd2l0Y2ggKGl0ZW0u
YWN0aW9uKCkpIHsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBjYXNlIENvbnRleHRNZW51SXRl
bVRhZ1NtYXJ0Q29weVBhc3RlOgorICAgICAgICBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQo
IWlzU21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkpOworICAgICAgICByZXR1cm47CisKKyAgICBj
YXNlIENvbnRleHRNZW51SXRlbVRhZ1NtYXJ0UXVvdGVzOgorICAgICAgICBUZXh0Q2hlY2tlcjo6
c2V0QXV0b21hdGljUXVvdGVTdWJzdGl0dXRpb25FbmFibGVkKCFUZXh0Q2hlY2tlcjo6c3RhdGUo
KS5pc0F1dG9tYXRpY1F1b3RlU3Vic3RpdHV0aW9uRW5hYmxlZCk7CisgICAgICAgIG1fcHJvY2Vz
cy0+dXBkYXRlVGV4dENoZWNrZXJTdGF0ZSgpOworICAgICAgICByZXR1cm47CisKKyAgICBjYXNl
IENvbnRleHRNZW51SXRlbVRhZ1NtYXJ0RGFzaGVzOgorICAgICAgICBUZXh0Q2hlY2tlcjo6c2V0
QXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVuYWJsZWQoIVRleHRDaGVja2VyOjpzdGF0ZSgpLmlz
QXV0b21hdGljRGFzaFN1YnN0aXR1dGlvbkVuYWJsZWQpOworICAgICAgICBtX3Byb2Nlc3MtPnVw
ZGF0ZVRleHRDaGVja2VyU3RhdGUoKTsKKyAgICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250
ZXh0TWVudUl0ZW1UYWdTbWFydExpbmtzOgorICAgICAgICBUZXh0Q2hlY2tlcjo6c2V0QXV0b21h
dGljTGlua0RldGVjdGlvbkVuYWJsZWQoIVRleHRDaGVja2VyOjpzdGF0ZSgpLmlzQXV0b21hdGlj
TGlua0RldGVjdGlvbkVuYWJsZWQpOworICAgICAgICBtX3Byb2Nlc3MtPnVwZGF0ZVRleHRDaGVj
a2VyU3RhdGUoKTsKKyAgICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1U
YWdUZXh0UmVwbGFjZW1lbnQ6CisgICAgICAgIFRleHRDaGVja2VyOjpzZXRBdXRvbWF0aWNUZXh0
UmVwbGFjZW1lbnRFbmFibGVkKCFUZXh0Q2hlY2tlcjo6c3RhdGUoKS5pc0F1dG9tYXRpY1RleHRS
ZXBsYWNlbWVudEVuYWJsZWQpOworICAgICAgICBtX3Byb2Nlc3MtPnVwZGF0ZVRleHRDaGVja2Vy
U3RhdGUoKTsKKyAgICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdD
b3JyZWN0U3BlbGxpbmdBdXRvbWF0aWNhbGx5OgorICAgICAgICBUZXh0Q2hlY2tlcjo6c2V0QXV0
b21hdGljU3BlbGxpbmdDb3JyZWN0aW9uRW5hYmxlZCghVGV4dENoZWNrZXI6OnN0YXRlKCkuaXNB
dXRvbWF0aWNTcGVsbGluZ0NvcnJlY3Rpb25FbmFibGVkKTsKKyAgICAgICAgbV9wcm9jZXNzLT51
cGRhdGVUZXh0Q2hlY2tlclN0YXRlKCk7CisgICAgICAgIHJldHVybjsKKworICAgIGNhc2UgQ29u
dGV4dE1lbnVJdGVtVGFnU2hvd1N1YnN0aXR1dGlvbnM6CisgICAgICAgIFRleHRDaGVja2VyOjp0
b2dnbGVTdWJzdGl0dXRpb25zUGFuZWxJc1Nob3dpbmcoKTsKKyAgICAgICAgcmV0dXJuOworI2Vu
ZGlmCisKKyAgICBjYXNlIENvbnRleHRNZW51SXRlbVRhZ0Rvd25sb2FkSW1hZ2VUb0Rpc2s6Cisg
ICAgICAgIGRvd25sb2FkSW5mbyA9IHt7IG1fYWN0aXZlQ29udGV4dE1lbnVDb250ZXh0RGF0YS53
ZWJIaXRUZXN0UmVzdWx0RGF0YSgpLmFic29sdXRlSW1hZ2VVUkwsIHsgfSB9fTsKKyAgICAgICAg
YnJlYWs7CisKKyAgICBjYXNlIENvbnRleHRNZW51SXRlbVRhZ0Rvd25sb2FkTGlua1RvRGlzazog
eworICAgICAgICBhdXRvJiBoaXRUZXN0UmVzdWx0ID0gbV9hY3RpdmVDb250ZXh0TWVudUNvbnRl
eHREYXRhLndlYkhpdFRlc3RSZXN1bHREYXRhKCk7CisgICAgICAgIGRvd25sb2FkSW5mbyA9IHt7
IGhpdFRlc3RSZXN1bHQuYWJzb2x1dGVMaW5rVVJMLCBoaXRUZXN0UmVzdWx0LmxpbmtTdWdnZXN0
ZWRGaWxlbmFtZSB9fTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgY2FzZSBDb250ZXh0
TWVudUl0ZW1UYWdEb3dubG9hZE1lZGlhVG9EaXNrOgorICAgICAgICBkb3dubG9hZEluZm8gPSB7
eyBtX2FjdGl2ZUNvbnRleHRNZW51Q29udGV4dERhdGEud2ViSGl0VGVzdFJlc3VsdERhdGEoKS5h
YnNvbHV0ZU1lZGlhVVJMLCB7IH0gfX07CisgICAgICAgIGJyZWFrOworCisgICAgY2FzZSBDb250
ZXh0TWVudUl0ZW1UYWdDaGVja1NwZWxsaW5nV2hpbGVUeXBpbmc6CisgICAgICAgIFRleHRDaGVj
a2VyOjpzZXRDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoIVRleHRDaGVja2VyOjpzdGF0
ZSgpLmlzQ29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKTsKKyAgICAgICAgbV9wcm9jZXNz
LT51cGRhdGVUZXh0Q2hlY2tlclN0YXRlKCk7CisgICAgICAgIHJldHVybjsKKworICAgIGNhc2Ug
Q29udGV4dE1lbnVJdGVtVGFnQ2hlY2tHcmFtbWFyV2l0aFNwZWxsaW5nOgorICAgICAgICBUZXh0
Q2hlY2tlcjo6c2V0R3JhbW1hckNoZWNraW5nRW5hYmxlZCghVGV4dENoZWNrZXI6OnN0YXRlKCku
aXNHcmFtbWFyQ2hlY2tpbmdFbmFibGVkKTsKKyAgICAgICAgbV9wcm9jZXNzLT51cGRhdGVUZXh0
Q2hlY2tlclN0YXRlKCk7CisgICAgICAgIHJldHVybjsKKworICAgIGNhc2UgQ29udGV4dE1lbnVJ
dGVtVGFnU2hvd1NwZWxsaW5nUGFuZWw6CisgICAgICAgIGlmICghVGV4dENoZWNrZXI6OnNwZWxs
aW5nVUlJc1Nob3dpbmcoKSkKKyAgICAgICAgICAgIGFkdmFuY2VUb05leHRNaXNzcGVsbGluZyh0
cnVlKTsKKyAgICAgICAgVGV4dENoZWNrZXI6OnRvZ2dsZVNwZWxsaW5nVUlJc1Nob3dpbmcoKTsK
KyAgICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdBZGRIaWdobGln
aHRUb05ld1F1aWNrTm90ZToKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMpCisgICAgICAgIGNy
ZWF0ZUFwcEhpZ2hsaWdodEluU2VsZWN0ZWRSYW5nZShDcmVhdGVOZXdHcm91cEZvckhpZ2hsaWdo
dDo6WWVzLCBIaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwOjpObyk7CisjZW5kaWYKKyAg
ICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdBZGRIaWdobGlnaHRU
b0N1cnJlbnRRdWlja05vdGU6CisjaWYgRU5BQkxFKEFQUF9ISUdITElHSFRTKQorICAgICAgICBj
cmVhdGVBcHBIaWdobGlnaHRJblNlbGVjdGVkUmFuZ2UoQ3JlYXRlTmV3R3JvdXBGb3JIaWdobGln
aHQ6Ok5vLCBIaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwOjpObyk7CisjZW5kaWYKKyAg
ICAgICAgcmV0dXJuOworCisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdMZWFyblNwZWxsaW5n
OgorICAgIGNhc2UgQ29udGV4dE1lbnVJdGVtVGFnSWdub3JlU3BlbGxpbmc6CisgICAgICAgICsr
bV9wZW5kaW5nTGVhcm5Pcklnbm9yZVdvcmRNZXNzYWdlQ291bnQ7CisgICAgICAgIGJyZWFrOwor
CisgICAgY2FzZSBDb250ZXh0TWVudUl0ZW1UYWdRdWlja0xvb2tJbWFnZToKKyNpZiBFTkFCTEUo
SU1BR0VfQU5BTFlTSVMpCisgICAgICAgIGlmIChtX2FjdGl2ZUNvbnRleHRNZW51KQorICAgICAg
ICAgICAgaGFuZGxlQ29udGV4dE1lbnVRdWlja0xvb2tJbWFnZShtX2FjdGl2ZUNvbnRleHRNZW51
LT5xdWlja0xvb2tQcmV2aWV3QWN0aXZpdHkoKSk7CisjZW5kaWYKKyAgICAgICAgcmV0dXJuOwor
CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgaWYgKGRvd25sb2Fk
SW5mbykgeworICAgICAgICBhdXRvJiBkb3dubG9hZCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2wo
KS5kb3dubG9hZChtX3dlYnNpdGVEYXRhU3RvcmUsIHRoaXMsIFVSTChVUkwoKSwgZG93bmxvYWRJ
bmZvLT51cmwpLCBkb3dubG9hZEluZm8tPnN1Z2dlc3RlZEZpbGVuYW1lKTsKKyAgICAgICAgZG93
bmxvYWQuc2V0RGlkU3RhcnRDYWxsYmFjayhbdGhpcywgd2Vha1RoaXMgPSBtYWtlV2Vha1B0cigq
dGhpcyldIChhdXRvKiBkb3dubG9hZCkgeworICAgICAgICAgICAgaWYgKCF3ZWFrVGhpcyB8fCAh
ZG93bmxvYWQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgbV9uYXZpZ2F0
aW9uQ2xpZW50LT5jb250ZXh0TWVudURpZENyZWF0ZURvd25sb2FkKCp0aGlzLCAqZG93bmxvYWQp
OworICAgICAgICB9KTsKKyAgICB9CisKKyAgICBwbGF0Zm9ybURpZFNlbGVjdEl0ZW1Gcm9tQWN0
aXZlQ29udGV4dE1lbnUoaXRlbSk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRT
ZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KGl0ZW0pKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmhhbmRsZUNvbnRleHRNZW51S2V5RXZlbnQoKQoreworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OkNvbnRleHRNZW51Rm9yS2V5RXZlbnQoKSk7Cit9CisjZW5kaWYgLy8gRU5BQkxF
KENPTlRFWFRfTUVOVVMpCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQordm9pZCBXZWJQYWdl
UHJveHk6OmRpZENob29zZUZpbGVzRm9yT3BlblBhbmVsV2l0aERpc3BsYXlTdHJpbmdBbmRJY29u
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBmaWxlVVJMcywgY29uc3QgU3RyaW5nJiBkaXNwbGF5U3Ry
aW5nLCBjb25zdCBBUEk6OkRhdGEqIGljb25EYXRhKQoreworICAgIGlmICghaGFzUnVubmluZ1By
b2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisjaWYgRU5BQkxFKFNBTkRCT1hfRVhURU5TSU9O
UykKKyAgICBhdXRvIHNhbmRib3hFeHRlbnNpb25IYW5kbGVzID0gU2FuZGJveEV4dGVuc2lvbjo6
Y3JlYXRlUmVhZE9ubHlIYW5kbGVzRm9yRmlsZXMoIldlYlBhZ2VQcm94eTo6ZGlkQ2hvb3NlRmls
ZXNGb3JPcGVuUGFuZWxXaXRoRGlzcGxheVN0cmluZ0FuZEljb24iX3MsIGZpbGVVUkxzKTsKKyAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpFeHRlbmRTYW5kYm94Rm9yRmlsZXNGcm9tT3BlblBh
bmVsKFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbkhhbmRsZXMpKSk7CisjZW5kaWYKKworICAgIFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZSBmcm9udGJvYXJkU2VydmljZXNTYW5kYm94RXh0ZW5zaW9u
LCBpY29uU2VydmljZXNTYW5kYm94RXh0ZW5zaW9uOworI2lmIEhBVkUoRlJPTlRCT0FSRF9TWVNU
RU1fQVBQX1NFUlZJQ0VTKQorICAgIGlmIChhdXRvIGhhbmRsZSA9IFNhbmRib3hFeHRlbnNpb246
OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5mcm9udGJvYXJkLnN5c3RlbWFw
cHNlcnZpY2VzIl9zLCBzdGQ6Om51bGxvcHQpKQorICAgICAgICBmcm9udGJvYXJkU2VydmljZXNT
YW5kYm94RXh0ZW5zaW9uID0gV1RGTW92ZSgqaGFuZGxlKTsKKyNlbmRpZgorICAgIGlmIChhdXRv
IGhhbmRsZSA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNv
bS5hcHBsZS5pY29uc2VydmljZXMiX3MsIHN0ZDo6bnVsbG9wdCkpCisgICAgICAgIGljb25TZXJ2
aWNlc1NhbmRib3hFeHRlbnNpb24gPSBXVEZNb3ZlKCpoYW5kbGUpOworCisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6RGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWxXaXRoRGlzcGxheVN0cmlu
Z0FuZEljb24oZmlsZVVSTHMsIGRpc3BsYXlTdHJpbmcsIGljb25EYXRhID8gaWNvbkRhdGEtPmRh
dGFSZWZlcmVuY2UoKSA6IElQQzo6RGF0YVJlZmVyZW5jZSgpLCBmcm9udGJvYXJkU2VydmljZXNT
YW5kYm94RXh0ZW5zaW9uLCBpY29uU2VydmljZXNTYW5kYm94RXh0ZW5zaW9uKSk7CisKKyAgICBt
X29wZW5QYW5lbFJlc3VsdExpc3RlbmVyLT5pbnZhbGlkYXRlKCk7CisgICAgbV9vcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lciA9IG51bGxwdHI7Cit9CisjZW5kaWYKKworYm9vbCBXZWJQYWdlUHJveHk6
OmRpZENob29zZUZpbGVzRm9yT3BlblBhbmVsV2l0aEltYWdlVHJhbnNjb2RpbmcoY29uc3QgVmVj
dG9yPFN0cmluZz4mIGZpbGVVUkxzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgYWxsb3dlZE1JTUVU
eXBlcykKK3sKKyNpZiBQTEFURk9STShNQUMpCisgICAgYXV0byB0cmFuc2NvZGluZ01JTUVUeXBl
ID0gV2ViQ29yZTo6TUlNRVR5cGVSZWdpc3RyeTo6cHJlZmVycmVkSW1hZ2VNSU1FVHlwZUZvckVu
Y29kaW5nKGFsbG93ZWRNSU1FVHlwZXMsIHsgfSk7CisgICAgaWYgKHRyYW5zY29kaW5nTUlNRVR5
cGUuaXNOdWxsKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGF1dG8gdHJhbnNjb2Rp
bmdVUkxzID0gZmluZEltYWdlc0ZvclRyYW5zY29kaW5nKGZpbGVVUkxzLCBhbGxvd2VkTUlNRVR5
cGVzKTsKKyAgICBpZiAodHJhbnNjb2RpbmdVUkxzLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgYXV0byB0cmFuc2NvZGluZ1VUSSA9IFdlYkNvcmU6OlVUSUZyb21NSU1F
VHlwZSh0cmFuc2NvZGluZ01JTUVUeXBlKTsKKyAgICBhdXRvIHRyYW5zY29kaW5nRXh0ZW5zaW9u
ID0gV2ViQ29yZTo6TUlNRVR5cGVSZWdpc3RyeTo6cHJlZmVycmVkRXh0ZW5zaW9uRm9yTUlNRVR5
cGUodHJhbnNjb2RpbmdNSU1FVHlwZSk7CisKKyAgICBzaGFyZWRJbWFnZVRyYW5zY29kaW5nUXVl
dWUoKS5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBmaWxl
VVJMcyA9IGZpbGVVUkxzLmlzb2xhdGVkQ29weSgpLCB0cmFuc2NvZGluZ1VSTHMgPSB0cmFuc2Nv
ZGluZ1VSTHMuaXNvbGF0ZWRDb3B5KCksIHRyYW5zY29kaW5nVVRJID0gdHJhbnNjb2RpbmdVVEku
aXNvbGF0ZWRDb3B5KCksIHRyYW5zY29kaW5nRXh0ZW5zaW9uID0gdHJhbnNjb2RpbmdFeHRlbnNp
b24uaXNvbGF0ZWRDb3B5KCldKCkgbXV0YWJsZSB7CisgICAgICAgIEFTU0VSVCghUnVuTG9vcDo6
aXNNYWluKCkpOworCisgICAgICAgIGF1dG8gdHJhbnNjb2RlZFVSTHMgPSB0cmFuc2NvZGVJbWFn
ZXModHJhbnNjb2RpbmdVUkxzLCB0cmFuc2NvZGluZ1VUSSwgdHJhbnNjb2RpbmdFeHRlbnNpb24p
OworICAgICAgICBBU1NFUlQodHJhbnNjb2RpbmdVUkxzLnNpemUoKSA9PSB0cmFuc2NvZGVkVVJM
cy5zaXplKCkpOworCisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbdGhpcywgcHJv
dGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGZpbGVVUkxzID0gZmlsZVVSTHMu
aXNvbGF0ZWRDb3B5KCksIHRyYW5zY29kZWRVUkxzID0gdHJhbnNjb2RlZFVSTHMuaXNvbGF0ZWRD
b3B5KCldKCkgeworI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMpCisgICAgICAgICAgICBW
ZWN0b3I8U3RyaW5nPiBzYW5kYm94RXh0ZW5zaW9uRmlsZXM7CisgICAgICAgICAgICBmb3IgKHNp
emVfdCBpID0gMCwgc2l6ZSA9IGZpbGVVUkxzLnNpemUoKTsgaSA8IHNpemU7ICsraSkKKyAgICAg
ICAgICAgICAgICBzYW5kYm94RXh0ZW5zaW9uRmlsZXMuYXBwZW5kKCF0cmFuc2NvZGVkVVJMc1tp
XS5pc051bGwoKSA/IHRyYW5zY29kZWRVUkxzW2ldIDogZmlsZVVSTHNbaV0pOworICAgICAgICAg
ICAgYXV0byBzYW5kYm94RXh0ZW5zaW9uSGFuZGxlcyA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZVJlYWRPbmx5SGFuZGxlc0ZvckZpbGVzKCJXZWJQYWdlUHJveHk6OmRpZENob29zZUZpbGVzRm9y
T3BlblBhbmVsIl9zLCBzYW5kYm94RXh0ZW5zaW9uRmlsZXMpOworICAgICAgICAgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6RXh0ZW5kU2FuZGJveEZvckZpbGVzRnJvbU9wZW5QYW5lbChXVEZN
b3ZlKHNhbmRib3hFeHRlbnNpb25IYW5kbGVzKSkpOworI2VuZGlmCisgICAgICAgICAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRDaG9vc2VGaWxlc0Zvck9wZW5QYW5lbChmaWxlVVJMcywg
dHJhbnNjb2RlZFVSTHMpKTsKKyAgICAgICAgfSk7CisgICAgfSk7CisKKyAgICByZXR1cm4gdHJ1
ZTsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGZpbGVVUkxzKTsKKyAgICBVTlVTRURfUEFSQU0o
YWxsb3dlZE1JTUVUeXBlcyk7CisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpkaWRDaG9vc2VGaWxlc0Zvck9wZW5QYW5lbChjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgZmlsZVVSTHMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhbGxvd2VkTUlNRVR5cGVzKQor
eworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
aWYgKCFkaWRDaG9vc2VGaWxlc0Zvck9wZW5QYW5lbFdpdGhJbWFnZVRyYW5zY29kaW5nKGZpbGVV
UkxzLCBhbGxvd2VkTUlNRVR5cGVzKSkgeworI2lmIEVOQUJMRShTQU5EQk9YX0VYVEVOU0lPTlMp
CisgICAgICAgIGF1dG8gc2FuZGJveEV4dGVuc2lvbkhhbmRsZXMgPSBTYW5kYm94RXh0ZW5zaW9u
OjpjcmVhdGVSZWFkT25seUhhbmRsZXNGb3JGaWxlcygiV2ViUGFnZVByb3h5OjpkaWRDaG9vc2VG
aWxlc0Zvck9wZW5QYW5lbCJfcywgZmlsZVVSTHMpOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpFeHRlbmRTYW5kYm94Rm9yRmlsZXNGcm9tT3BlblBhbmVsKFdURk1vdmUoc2FuZGJv
eEV4dGVuc2lvbkhhbmRsZXMpKSk7CisjZW5kaWYKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6RGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWwoZmlsZVVSTHMsIHsgfSkpOworICAgIH0K
KworICAgIG1fb3BlblBhbmVsUmVzdWx0TGlzdGVuZXItPmludmFsaWRhdGUoKTsKKyAgICBtX29w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gbnVsbHB0cjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OmRpZENhbmNlbEZvck9wZW5QYW5lbCgpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
KQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRDYW5j
ZWxGb3JPcGVuUGFuZWwoKSk7CisgICAgCisgICAgbV9vcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci0+
aW52YWxpZGF0ZSgpOworICAgIG1fb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIgPSBudWxscHRyOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6YWR2YW5jZVRvTmV4dE1pc3NwZWxsaW5nKGJvb2wgc3Rh
cnRCZWZvcmVTZWxlY3Rpb24pCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6QWR2YW5j
ZVRvTmV4dE1pc3NwZWxsaW5nKHN0YXJ0QmVmb3JlU2VsZWN0aW9uKSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpjaGFuZ2VTcGVsbGluZ1RvV29yZChjb25zdCBTdHJpbmcmIHdvcmQpCit7Cisg
ICAgaWYgKHdvcmQuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlOjpDaGFuZ2VTcGVsbGluZ1RvV29yZCh3b3JkKSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpyZWdpc3RlckVkaXRDb21tYW5kKFJlZjxXZWJFZGl0Q29tbWFuZFByb3h5PiYm
IGNvbW1hbmRQcm94eSwgVW5kb09yUmVkbyB1bmRvT3JSZWRvKQoreworICAgIE1FU1NBR0VfQ0hF
Q0sobV9wcm9jZXNzLCBjb21tYW5kUHJveHktPmNvbW1hbmRJRCgpKTsKKyAgICBwYWdlQ2xpZW50
KCkucmVnaXN0ZXJFZGl0Q29tbWFuZChXVEZNb3ZlKGNvbW1hbmRQcm94eSksIHVuZG9PclJlZG8p
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6YWRkRWRpdENvbW1hbmQoV2ViRWRpdENvbW1hbmRQ
cm94eSYgY29tbWFuZCkKK3sKKyAgICBtX2VkaXRDb21tYW5kU2V0LmFkZCgmY29tbWFuZCk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZW1vdmVFZGl0Q29tbWFuZChXZWJFZGl0Q29tbWFuZFBy
b3h5JiBjb21tYW5kKQoreworICAgIG1fZWRpdENvbW1hbmRTZXQucmVtb3ZlKCZjb21tYW5kKTsK
KworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZFJlbW92ZUVkaXRDb21tYW5kKGNvbW1hbmQuY29tbWFu
ZElEKCkpKTsKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OmNhblVuZG8oKQoreworICAgIHJldHVy
biBwYWdlQ2xpZW50KCkuY2FuVW5kb1JlZG8oVW5kb09yUmVkbzo6VW5kbyk7Cit9CisKK2Jvb2wg
V2ViUGFnZVByb3h5OjpjYW5SZWRvKCkKK3sKKyAgICByZXR1cm4gcGFnZUNsaWVudCgpLmNhblVu
ZG9SZWRvKFVuZG9PclJlZG86OlJlZG8pOworfQorCitTcGVsbERvY3VtZW50VGFnIFdlYlBhZ2VQ
cm94eTo6c3BlbGxEb2N1bWVudFRhZygpCit7CisgICAgaWYgKCFtX3NwZWxsRG9jdW1lbnRUYWcp
CisgICAgICAgIG1fc3BlbGxEb2N1bWVudFRhZyA9IFRleHRDaGVja2VyOjp1bmlxdWVTcGVsbERv
Y3VtZW50VGFnKHRoaXMpOworICAgIHJldHVybiBtX3NwZWxsRG9jdW1lbnRUYWcudmFsdWUoKTsK
K30KKworI2lmIFVTRShVTklGSUVEX1RFWFRfQ0hFQ0tJTkcpCit2b2lkIFdlYlBhZ2VQcm94eTo6
Y2hlY2tUZXh0T2ZQYXJhZ3JhcGgoY29uc3QgU3RyaW5nJiB0ZXh0LCBPcHRpb25TZXQ8VGV4dENo
ZWNraW5nVHlwZT4gY2hlY2tpbmdUeXBlcywgaW50MzJfdCBpbnNlcnRpb25Qb2ludCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8V2ViQ29yZTo6VGV4dENoZWNraW5nUmVzdWx0PiYmKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcihUZXh0Q2hlY2tl
cjo6Y2hlY2tUZXh0T2ZQYXJhZ3JhcGgoc3BlbGxEb2N1bWVudFRhZygpLCB0ZXh0LCBpbnNlcnRp
b25Qb2ludCwgY2hlY2tpbmdUeXBlcywgbV9pbml0aWFsQ2FwaXRhbGl6YXRpb25FbmFibGVkKSk7
Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OmNoZWNrU3BlbGxpbmdPZlN0cmluZyhj
b25zdCBTdHJpbmcmIHRleHQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoaW50MzJfdCBtaXNzcGVs
bGluZ0xvY2F0aW9uLCBpbnQzMl90IG1pc3NwZWxsaW5nTGVuZ3RoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICBpbnQzMl90IG1pc3NwZWxsaW5nTG9jYXRpb24gPSAwOworICAgIGludDMy
X3QgbWlzc3BlbGxpbmdMZW5ndGggPSAwOworICAgIFRleHRDaGVja2VyOjpjaGVja1NwZWxsaW5n
T2ZTdHJpbmcoc3BlbGxEb2N1bWVudFRhZygpLCB0ZXh0LCBtaXNzcGVsbGluZ0xvY2F0aW9uLCBt
aXNzcGVsbGluZ0xlbmd0aCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIobWlzc3BlbGxpbmdMb2Nh
dGlvbiwgbWlzc3BlbGxpbmdMZW5ndGgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Y2hlY2tH
cmFtbWFyT2ZTdHJpbmcoY29uc3QgU3RyaW5nJiB0ZXh0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFZlY3RvcjxXZWJDb3JlOjpHcmFtbWFyRGV0YWlsPiYmLCBpbnQzMl90IGJhZEdyYW1tYXJMb2Nh
dGlvbiwgaW50MzJfdCBiYWRHcmFtbWFyTGVuZ3RoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sK
KyAgICBWZWN0b3I8R3JhbW1hckRldGFpbD4gZ3JhbW1hckRldGFpbHM7CisgICAgaW50MzJfdCBi
YWRHcmFtbWFyTG9jYXRpb24gPSAwOworICAgIGludDMyX3QgYmFkR3JhbW1hckxlbmd0aCA9IDA7
CisgICAgVGV4dENoZWNrZXI6OmNoZWNrR3JhbW1hck9mU3RyaW5nKHNwZWxsRG9jdW1lbnRUYWco
KSwgdGV4dCwgZ3JhbW1hckRldGFpbHMsIGJhZEdyYW1tYXJMb2NhdGlvbiwgYmFkR3JhbW1hckxl
bmd0aCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShncmFtbWFyRGV0YWlscyksIGJh
ZEdyYW1tYXJMb2NhdGlvbiwgYmFkR3JhbW1hckxlbmd0aCk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpzcGVsbGluZ1VJSXNTaG93aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY29tcGxldGlvbkhhbmRsZXIoVGV4dENoZWNrZXI6
OnNwZWxsaW5nVUlJc1Nob3dpbmcoKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1cGRhdGVT
cGVsbGluZ1VJV2l0aE1pc3NwZWxsZWRXb3JkKGNvbnN0IFN0cmluZyYgbWlzc3BlbGxlZFdvcmQp
Cit7CisgICAgVGV4dENoZWNrZXI6OnVwZGF0ZVNwZWxsaW5nVUlXaXRoTWlzc3BlbGxlZFdvcmQo
c3BlbGxEb2N1bWVudFRhZygpLCBtaXNzcGVsbGVkV29yZCk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5Ojp1cGRhdGVTcGVsbGluZ1VJV2l0aEdyYW1tYXJTdHJpbmcoY29uc3QgU3RyaW5nJiBiYWRH
cmFtbWFyUGhyYXNlLCBjb25zdCBHcmFtbWFyRGV0YWlsJiBncmFtbWFyRGV0YWlsKQoreworICAg
IFRleHRDaGVja2VyOjp1cGRhdGVTcGVsbGluZ1VJV2l0aEdyYW1tYXJTdHJpbmcoc3BlbGxEb2N1
bWVudFRhZygpLCBiYWRHcmFtbWFyUGhyYXNlLCBncmFtbWFyRGV0YWlsKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmdldEd1ZXNzZXNGb3JXb3JkKGNvbnN0IFN0cmluZyYgd29yZCwgY29uc3Qg
U3RyaW5nJiBjb250ZXh0LCBpbnQzMl90IGluc2VydGlvblBvaW50LCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFZlY3RvcjxTdHJpbmc+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIFZl
Y3RvcjxTdHJpbmc+IGd1ZXNzZXM7CisgICAgVGV4dENoZWNrZXI6OmdldEd1ZXNzZXNGb3JXb3Jk
KHNwZWxsRG9jdW1lbnRUYWcoKSwgd29yZCwgY29udGV4dCwgaW5zZXJ0aW9uUG9pbnQsIGd1ZXNz
ZXMsIG1faW5pdGlhbENhcGl0YWxpemF0aW9uRW5hYmxlZCk7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIoV1RGTW92ZShndWVzc2VzKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpsZWFybldvcmQo
Y29uc3QgU3RyaW5nJiB3b3JkKQoreworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtX3Bl
bmRpbmdMZWFybk9ySWdub3JlV29yZE1lc3NhZ2VDb3VudCk7CisgICAgLS1tX3BlbmRpbmdMZWFy
bk9ySWdub3JlV29yZE1lc3NhZ2VDb3VudDsKKworICAgIFRleHRDaGVja2VyOjpsZWFybldvcmQo
c3BlbGxEb2N1bWVudFRhZygpLCB3b3JkKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6Omlnbm9y
ZVdvcmQoY29uc3QgU3RyaW5nJiB3b3JkKQoreworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNz
LCBtX3BlbmRpbmdMZWFybk9ySWdub3JlV29yZE1lc3NhZ2VDb3VudCk7CisgICAgLS1tX3BlbmRp
bmdMZWFybk9ySWdub3JlV29yZE1lc3NhZ2VDb3VudDsKKworICAgIFRleHRDaGVja2VyOjppZ25v
cmVXb3JkKHNwZWxsRG9jdW1lbnRUYWcoKSwgd29yZCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpyZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhUZXh0Q2hlY2tlclJlcXVlc3RJRCByZXF1ZXN0SUQs
IGNvbnN0IFRleHRDaGVja2luZ1JlcXVlc3REYXRhJiByZXF1ZXN0LCBpbnQzMl90IGluc2VydGlv
blBvaW50KQoreworICAgIFRleHRDaGVja2VyOjpyZXF1ZXN0Q2hlY2tpbmdPZlN0cmluZyhUZXh0
Q2hlY2tlckNvbXBsZXRpb246OmNyZWF0ZShyZXF1ZXN0SUQsIHJlcXVlc3QsIHRoaXMpLCBpbnNl
cnRpb25Qb2ludCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRGaW5pc2hDaGVja2luZ1Rl
eHQoVGV4dENoZWNrZXJSZXF1ZXN0SUQgcmVxdWVzdElELCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6
VGV4dENoZWNraW5nUmVzdWx0PiYgcmVzdWx0KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OkRpZEZpbmlzaENoZWNraW5nVGV4dChyZXF1ZXN0SUQsIHJlc3VsdCkpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkQ2FuY2VsQ2hlY2tpbmdUZXh0KFRleHRDaGVja2VyUmVxdWVzdElE
IHJlcXVlc3RJRCkKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRDYW5jZWxDaGVj
a2luZ1RleHQocmVxdWVzdElEKSk7Cit9CisvLyBPdGhlcgorCit2b2lkIFdlYlBhZ2VQcm94eTo6
c2V0Rm9jdXMoYm9vbCBmb2N1c2VkKQoreworICAgIGlmIChmb2N1c2VkKQorICAgICAgICBtX3Vp
Q2xpZW50LT5mb2N1cyh0aGlzKTsKKyAgICBlbHNlCisgICAgICAgIG1fdWlDbGllbnQtPnVuZm9j
dXModGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp0YWtlRm9jdXModWludDhfdCBkaXJl
Y3Rpb24pCit7CisgICAgaWYgKG1fdWlDbGllbnQtPnRha2VGb2N1cyh0aGlzLCAoc3RhdGljX2Nh
c3Q8Rm9jdXNEaXJlY3Rpb24+KGRpcmVjdGlvbikgPT0gRm9jdXNEaXJlY3Rpb246OkZvcndhcmQp
ID8ga1dLRm9jdXNEaXJlY3Rpb25Gb3J3YXJkIDoga1dLRm9jdXNEaXJlY3Rpb25CYWNrd2FyZCkp
CisgICAgICAgIHJldHVybjsKKworICAgIHBhZ2VDbGllbnQoKS50YWtlRm9jdXMoc3RhdGljX2Nh
c3Q8Rm9jdXNEaXJlY3Rpb24+KGRpcmVjdGlvbikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXApCit7CisgICAgaWYgKG1fdG9vbFRpcCA9
PSB0b29sVGlwKQorICAgICAgICByZXR1cm47CisKKyAgICBTdHJpbmcgb2xkVG9vbFRpcCA9IG1f
dG9vbFRpcDsKKyAgICBtX3Rvb2xUaXAgPSB0b29sVGlwOworICAgIHBhZ2VDbGllbnQoKS50b29s
VGlwQ2hhbmdlZChvbGRUb29sVGlwLCBtX3Rvb2xUaXApOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6c2V0Q3Vyc29yKGNvbnN0IFdlYkNvcmU6OkN1cnNvciYgY3Vyc29yKQoreworICAgIHBhZ2VD
bGllbnQoKS5zZXRDdXJzb3IoY3Vyc29yKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldEN1
cnNvckhpZGRlblVudGlsTW91c2VNb3Zlcyhib29sIGhpZGRlblVudGlsTW91c2VNb3ZlcykKK3sK
KyAgICBwYWdlQ2xpZW50KCkuc2V0Q3Vyc29ySGlkZGVuVW50aWxNb3VzZU1vdmVzKGhpZGRlblVu
dGlsTW91c2VNb3Zlcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRSZWNlaXZlRXZlbnQo
dWludDMyX3Qgb3BhcXVlVHlwZSwgYm9vbCBoYW5kbGVkKQoreworICAgIFdlYkV2ZW50OjpUeXBl
IHR5cGUgPSBzdGF0aWNfY2FzdDxXZWJFdmVudDo6VHlwZT4ob3BhcXVlVHlwZSk7CisKKyAgICBz
d2l0Y2ggKHR5cGUpIHsKKyAgICBjYXNlIFdlYkV2ZW50OjpOb1R5cGU6CisgICAgY2FzZSBXZWJF
dmVudDo6TW91c2VNb3ZlOgorICAgIGNhc2UgV2ViRXZlbnQ6OldoZWVsOgorICAgICAgICBicmVh
azsKKworICAgIGNhc2UgV2ViRXZlbnQ6Ok1vdXNlRG93bjoKKyAgICBjYXNlIFdlYkV2ZW50OjpN
b3VzZVVwOgorICAgIGNhc2UgV2ViRXZlbnQ6Ok1vdXNlRm9yY2VDaGFuZ2VkOgorICAgIGNhc2Ug
V2ViRXZlbnQ6Ok1vdXNlRm9yY2VEb3duOgorICAgIGNhc2UgV2ViRXZlbnQ6Ok1vdXNlRm9yY2VV
cDoKKyAgICBjYXNlIFdlYkV2ZW50OjpLZXlEb3duOgorICAgIGNhc2UgV2ViRXZlbnQ6OktleVVw
OgorICAgIGNhc2UgV2ViRXZlbnQ6OlJhd0tleURvd246CisgICAgY2FzZSBXZWJFdmVudDo6Q2hh
cjoKKyNpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQorICAgIGNhc2UgV2ViRXZlbnQ6OlRvdWNoU3Rh
cnQ6CisgICAgY2FzZSBXZWJFdmVudDo6VG91Y2hNb3ZlOgorICAgIGNhc2UgV2ViRXZlbnQ6OlRv
dWNoRW5kOgorICAgIGNhc2UgV2ViRXZlbnQ6OlRvdWNoQ2FuY2VsOgorI2VuZGlmCisjaWYgRU5B
QkxFKE1BQ19HRVNUVVJFX0VWRU5UUykKKyAgICBjYXNlIFdlYkV2ZW50OjpHZXN0dXJlU3RhcnQ6
CisgICAgY2FzZSBXZWJFdmVudDo6R2VzdHVyZUNoYW5nZToKKyAgICBjYXNlIFdlYkV2ZW50OjpH
ZXN0dXJlRW5kOgorI2VuZGlmCisgICAgICAgIG1fcHJvY2Vzcy0+c3RvcFJlc3BvbnNpdmVuZXNz
VGltZXIoKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgc3dpdGNoICh0eXBlKSB7Cisg
ICAgY2FzZSBXZWJFdmVudDo6Tm9UeXBlOgorICAgICAgICBicmVhazsKKyAgICBjYXNlIFdlYkV2
ZW50OjpNb3VzZUZvcmNlQ2hhbmdlZDoKKyAgICBjYXNlIFdlYkV2ZW50OjpNb3VzZUZvcmNlRG93
bjoKKyAgICBjYXNlIFdlYkV2ZW50OjpNb3VzZUZvcmNlVXA6CisgICAgY2FzZSBXZWJFdmVudDo6
TW91c2VNb3ZlOgorICAgIGNhc2UgV2ViRXZlbnQ6Ok1vdXNlRG93bjoKKyAgICBjYXNlIFdlYkV2
ZW50OjpNb3VzZVVwOiB7CisgICAgICAgIExPRyhNb3VzZUhhbmRsaW5nLCAiV2ViUGFnZVByb3h5
OjpkaWRSZWNlaXZlRXZlbnQ6ICVzIChxdWV1ZSBzaXplICV6dSkiLCB3ZWJNb3VzZUV2ZW50VHlw
ZVN0cmluZyh0eXBlKSwgbV9tb3VzZUV2ZW50UXVldWUuc2l6ZSgpKTsKKworICAgICAgICAvLyBS
ZXRpcmUgdGhlIGxhc3Qgc2VudCBldmVudCBub3cgdGhhdCBXZWJQcm9jZXNzIGlzIGRvbmUgaGFu
ZGxpbmcgaXQuCisgICAgICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCAhbV9tb3VzZUV2ZW50
UXVldWUuaXNFbXB0eSgpKTsKKyAgICAgICAgYXV0byBldmVudCA9IG1fbW91c2VFdmVudFF1ZXVl
LnRha2VGaXJzdCgpOworICAgICAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgdHlwZSA9PSBl
dmVudC50eXBlKCkpOworCisgICAgICAgIGlmICghbV9tb3VzZUV2ZW50UXVldWUuaXNFbXB0eSgp
KSB7CisgICAgICAgICAgICBMT0coTW91c2VIYW5kbGluZywgIiBVSVByb2Nlc3M6IGhhbmRsaW5n
IGEgcXVldWVkIG1vdXNlIGV2ZW50IGZyb20gZGlkUmVjZWl2ZUV2ZW50Iik7CisgICAgICAgICAg
ICBwcm9jZXNzTmV4dFF1ZXVlZE1vdXNlRXZlbnQoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAg
ICAgICAgIGlmIChhdXRvKiBhdXRvbWF0aW9uU2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9v
bCgpLmF1dG9tYXRpb25TZXNzaW9uKCkpCisgICAgICAgICAgICAgICAgYXV0b21hdGlvblNlc3Np
b24tPm1vdXNlRXZlbnRzRmx1c2hlZEZvclBhZ2UoKnRoaXMpOworICAgICAgICAgICAgZGlkRmlu
aXNoUHJvY2Vzc2luZ0FsbFBlbmRpbmdNb3VzZUV2ZW50cygpOworICAgICAgICB9CisgICAgICAg
IGJyZWFrOworICAgIH0KKworICAgIGNhc2UgV2ViRXZlbnQ6OldoZWVsOiB7CisgICAgICAgIE1F
U1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCB3aGVlbEV2ZW50Q29hbGVzY2VyKCkuaGFzRXZlbnRzQmVp
bmdQcm9jZXNzZWQoKSk7CisgICAgICAgIGF1dG8gb2xkZXN0UHJvY2Vzc2VkRXZlbnQgPSB3aGVl
bEV2ZW50Q29hbGVzY2VyKCkudGFrZU9sZGVzdEV2ZW50QmVpbmdQcm9jZXNzZWQoKTsKKworICAg
ICAgICAvLyBGSVhNRTogRGlzcGF0Y2ggYWRkaXRpb25hbCBldmVudHMgdG8gdGhlIGRpZE5vdEhh
bmRsZVdoZWVsRXZlbnQgY2xpZW50IGZ1bmN0aW9uLgorICAgICAgICBpZiAoIWhhbmRsZWQpIHsK
KyAgICAgICAgICAgIG1fdWlDbGllbnQtPmRpZE5vdEhhbmRsZVdoZWVsRXZlbnQodGhpcywgb2xk
ZXN0UHJvY2Vzc2VkRXZlbnQpOworICAgICAgICAgICAgcGFnZUNsaWVudCgpLndoZWVsRXZlbnRX
YXNOb3RIYW5kbGVkQnlXZWJDb3JlKG9sZGVzdFByb2Nlc3NlZEV2ZW50KTsKKyAgICAgICAgfQor
CisgICAgICAgIGlmIChhdXRvIGV2ZW50VG9TZW5kID0gd2hlZWxFdmVudENvYWxlc2NlcigpLm5l
eHRFdmVudFRvRGlzcGF0Y2goKSkKKyAgICAgICAgICAgIHNlbmRXaGVlbEV2ZW50KCpldmVudFRv
U2VuZCk7CisgICAgICAgIGVsc2UgaWYgKGF1dG8qIGF1dG9tYXRpb25TZXNzaW9uID0gcHJvY2Vz
cygpLnByb2Nlc3NQb29sKCkuYXV0b21hdGlvblNlc3Npb24oKSkKKyAgICAgICAgICAgIGF1dG9t
YXRpb25TZXNzaW9uLT53aGVlbEV2ZW50c0ZsdXNoZWRGb3JQYWdlKCp0aGlzKTsKKyAgICAgICAg
YnJlYWs7CisgICAgfQorCisgICAgY2FzZSBXZWJFdmVudDo6S2V5RG93bjoKKyAgICBjYXNlIFdl
YkV2ZW50OjpLZXlVcDoKKyAgICBjYXNlIFdlYkV2ZW50OjpSYXdLZXlEb3duOgorICAgIGNhc2Ug
V2ViRXZlbnQ6OkNoYXI6IHsKKyAgICAgICAgTE9HKEtleUhhbmRsaW5nLCAiV2ViUGFnZVByb3h5
OjpkaWRSZWNlaXZlRXZlbnQ6ICVzIChxdWV1ZSBlbXB0eSAlZCkiLCB3ZWJLZXlib2FyZEV2ZW50
VHlwZVN0cmluZyh0eXBlKSwgbV9rZXlFdmVudFF1ZXVlLmlzRW1wdHkoKSk7CisKKyAgICAgICAg
TUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsICFtX2tleUV2ZW50UXVldWUuaXNFbXB0eSgpKTsKKyAg
ICAgICAgYXV0byBldmVudCA9IG1fa2V5RXZlbnRRdWV1ZS50YWtlRmlyc3QoKTsKKyAgICAgICAg
TUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIHR5cGUgPT0gZXZlbnQudHlwZSgpKTsKKworI2lmIFBM
QVRGT1JNKFdJTikKKyAgICAgICAgaWYgKCFoYW5kbGVkICYmIHR5cGUgPT0gV2ViRXZlbnQ6OlJh
d0tleURvd24pCisgICAgICAgICAgICBkaXNwYXRjaFBlbmRpbmdDaGFyRXZlbnRzKGV2ZW50KTsK
KyNlbmRpZgorCisgICAgICAgIGJvb2wgY2FuUHJvY2Vzc01vcmVLZXlFdmVudHMgPSAhbV9rZXlF
dmVudFF1ZXVlLmlzRW1wdHkoKTsKKyAgICAgICAgaWYgKGNhblByb2Nlc3NNb3JlS2V5RXZlbnRz
KSB7CisgICAgICAgICAgICBMT0coS2V5SGFuZGxpbmcsICIgVUkgcHJvY2Vzczogc2VudCBrZXlF
dmVudCBmcm9tIGRpZFJlY2VpdmVFdmVudCIpOworICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZTo6S2V5RXZlbnQobV9rZXlFdmVudFF1ZXVlLmZpcnN0KCkpKTsKKyAgICAgICAgfQor
CisgICAgICAgIC8vIFRoZSBjYWxsIHRvIGRvbmVXaXRoS2V5RXZlbnQgbWF5IGNsb3NlIHRoaXMg
V2ViUGFnZS4KKyAgICAgICAgLy8gUHJvdGVjdCBhZ2FpbnN0IHRoaXMgYmVpbmcgZGVzdHJveWVk
LgorICAgICAgICBSZWY8V2ViUGFnZVByb3h5PiBwcm90ZWN0KCp0aGlzKTsKKworICAgICAgICBw
YWdlQ2xpZW50KCkuZG9uZVdpdGhLZXlFdmVudChldmVudCwgaGFuZGxlZCk7CisgICAgICAgIGlm
ICghaGFuZGxlZCkKKyAgICAgICAgICAgIG1fdWlDbGllbnQtPmRpZE5vdEhhbmRsZUtleUV2ZW50
KHRoaXMsIGV2ZW50KTsKKworICAgICAgICAvLyBOb3RpZnkgdGhlIHNlc3Npb24gYWZ0ZXIgLVtO
U0FwcCBzZW5kRXZlbnQ6XSBoYXMgYSBjcmFjayBhdCB0dXJuaW5nIHRoZSBldmVudCBpbnRvIGFu
IGFjdGlvbi4KKyAgICAgICAgaWYgKCFjYW5Qcm9jZXNzTW9yZUtleUV2ZW50cykgeworICAgICAg
ICAgICAgaWYgKGF1dG8qIGF1dG9tYXRpb25TZXNzaW9uID0gcHJvY2VzcygpLnByb2Nlc3NQb29s
KCkuYXV0b21hdGlvblNlc3Npb24oKSkKKyAgICAgICAgICAgICAgICBhdXRvbWF0aW9uU2Vzc2lv
bi0+a2V5Ym9hcmRFdmVudHNGbHVzaGVkRm9yUGFnZSgqdGhpcyk7CisgICAgICAgIH0KKyAgICAg
ICAgYnJlYWs7CisgICAgfQorI2lmIEVOQUJMRShNQUNfR0VTVFVSRV9FVkVOVFMpCisgICAgY2Fz
ZSBXZWJFdmVudDo6R2VzdHVyZVN0YXJ0OgorICAgIGNhc2UgV2ViRXZlbnQ6Okdlc3R1cmVDaGFu
Z2U6CisgICAgY2FzZSBXZWJFdmVudDo6R2VzdHVyZUVuZDogeworICAgICAgICBNRVNTQUdFX0NI
RUNLKG1fcHJvY2VzcywgIW1fZ2VzdHVyZUV2ZW50UXVldWUuaXNFbXB0eSgpKTsKKyAgICAgICAg
YXV0byBldmVudCA9IG1fZ2VzdHVyZUV2ZW50UXVldWUudGFrZUZpcnN0KCk7CisgICAgICAgIE1F
U1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCB0eXBlID09IGV2ZW50LnR5cGUoKSk7CisKKyAgICAgICAg
aWYgKCFoYW5kbGVkKQorICAgICAgICAgICAgcGFnZUNsaWVudCgpLmdlc3R1cmVFdmVudFdhc05v
dEhhbmRsZWRCeVdlYkNvcmUoZXZlbnQpOworICAgICAgICBicmVhazsKKyAgICB9CisjZW5kaWYK
KyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICBjYXNlIFdlYkV2ZW50OjpUb3VjaFN0
YXJ0OgorICAgIGNhc2UgV2ViRXZlbnQ6OlRvdWNoTW92ZToKKyAgICBjYXNlIFdlYkV2ZW50OjpU
b3VjaEVuZDoKKyAgICBjYXNlIFdlYkV2ZW50OjpUb3VjaENhbmNlbDoKKyAgICAgICAgYnJlYWs7
CisjZWxpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQorICAgIGNhc2UgV2ViRXZlbnQ6OlRvdWNoU3Rh
cnQ6CisgICAgY2FzZSBXZWJFdmVudDo6VG91Y2hNb3ZlOgorICAgIGNhc2UgV2ViRXZlbnQ6OlRv
dWNoRW5kOgorICAgIGNhc2UgV2ViRXZlbnQ6OlRvdWNoQ2FuY2VsOiB7CisgICAgICAgIE1FU1NB
R0VfQ0hFQ0sobV9wcm9jZXNzLCAhbV90b3VjaEV2ZW50UXVldWUuaXNFbXB0eSgpKTsKKyAgICAg
ICAgYXV0byBxdWV1ZWRFdmVudHMgPSBtX3RvdWNoRXZlbnRRdWV1ZS50YWtlRmlyc3QoKTsKKyAg
ICAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIHR5cGUgPT0gcXVldWVkRXZlbnRzLmZvcndh
cmRlZEV2ZW50LnR5cGUoKSk7CisKKyAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVXaXRoVG91Y2hF
dmVudChxdWV1ZWRFdmVudHMuZm9yd2FyZGVkRXZlbnQsIGhhbmRsZWQpOworICAgICAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHF1ZXVlZEV2ZW50cy5kZWZlcnJlZFRvdWNoRXZlbnRzLnNpemUo
KTsgKytpKSB7CisgICAgICAgICAgICBib29sIGlzRXZlbnRIYW5kbGVkID0gZmFsc2U7CisgICAg
ICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZVdpdGhUb3VjaEV2ZW50KHF1ZXVlZEV2ZW50cy5kZWZl
cnJlZFRvdWNoRXZlbnRzLmF0KGkpLCBpc0V2ZW50SGFuZGxlZCk7CisgICAgICAgIH0KKyAgICAg
ICAgYnJlYWs7CisgICAgfQorI2VuZGlmCisgICAgfQorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
ZWRpdG9yU3RhdGVDaGFuZ2VkKGNvbnN0IEVkaXRvclN0YXRlJiBlZGl0b3JTdGF0ZSkKK3sKKyAg
ICBpZiAodXBkYXRlRWRpdG9yU3RhdGUoZWRpdG9yU3RhdGUpKQorICAgICAgICBkaXNwYXRjaERp
ZFVwZGF0ZUVkaXRvclN0YXRlKCk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5Ojp1cGRhdGVFZGl0
b3JTdGF0ZShjb25zdCBFZGl0b3JTdGF0ZSYgbmV3RWRpdG9yU3RhdGUpCit7CisgICAgaWYgKG5l
d0VkaXRvclN0YXRlLmlkZW50aWZpZXIgPCBtX2VkaXRvclN0YXRlLmlkZW50aWZpZXIpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIGF1dG8gb2xkRWRpdG9yU3RhdGUgPSBzdGQ6OmV4Y2hh
bmdlKG1fZWRpdG9yU3RhdGUsIG5ld0VkaXRvclN0YXRlKTsKKyAgICBkaWRVcGRhdGVFZGl0b3JT
dGF0ZShvbGRFZGl0b3JTdGF0ZSwgbmV3RWRpdG9yU3RhdGUpOworICAgIHJldHVybiB0cnVlOwor
fQorCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaXNw
YXRjaERpZFVwZGF0ZUVkaXRvclN0YXRlKCkKK3sKK30KKworI2VuZGlmCisKK2lubGluZSBBUEk6
OkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KiBXZWJQYWdlUHJveHk6OmVmZmVjdGl2ZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50KFNob3VsZFNhbXBsZSBzaG91bGRTYW1wbGUpCit7CisgICAgLy8gRGlh
Z25vc3RpYyBsb2dnaW5nIGlzIGRpc2FibGVkIGZvciBlcGhlbWVyYWwgc2Vzc2lvbnMgZm9yIHBy
aXZhY3kgcmVhc29ucy4KKyAgICBpZiAoc2Vzc2lvbklEKCkuaXNFcGhlbWVyYWwoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICByZXR1cm4gRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6
OnNob3VsZExvZ0FmdGVyU2FtcGxpbmcoc2hvdWxkU2FtcGxlKSA/IGRpYWdub3N0aWNMb2dnaW5n
Q2xpZW50KCkgOiBudWxscHRyOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25vc3Rp
Y01lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9u
LCBXZWJDb3JlOjpTaG91bGRTYW1wbGUgc2hvdWxkU2FtcGxlKQoreworICAgIGF1dG8qIGVmZmVj
dGl2ZUNsaWVudCA9IGVmZmVjdGl2ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KHNob3VsZFNhbXBs
ZSk7CisgICAgaWYgKCFlZmZlY3RpdmVDbGllbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGVm
ZmVjdGl2ZUNsaWVudC0+bG9nRGlhZ25vc3RpY01lc3NhZ2UodGhpcywgbWVzc2FnZSwgZGVzY3Jp
cHRpb24pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VGcm9t
V2ViUHJvY2Vzcyhjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRp
b24sIFdlYkNvcmU6OlNob3VsZFNhbXBsZSBzaG91bGRTYW1wbGUpCit7CisgICAgTUVTU0FHRV9D
SEVDSyhtX3Byb2Nlc3MsIG1lc3NhZ2UuaXNBbGxBU0NJSSgpKTsKKworICAgIGxvZ0RpYWdub3N0
aWNNZXNzYWdlKG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCBzaG91bGRTYW1wbGUpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoUmVzdWx0KGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgdWludDMyX3QgcmVzdWx0LCBX
ZWJDb3JlOjpTaG91bGRTYW1wbGUgc2hvdWxkU2FtcGxlKQoreworICAgIGF1dG8qIGVmZmVjdGl2
ZUNsaWVudCA9IGVmZmVjdGl2ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KHNob3VsZFNhbXBsZSk7
CisgICAgaWYgKCFlZmZlY3RpdmVDbGllbnQpCisgICAgICAgIHJldHVybjsKKworICAgIGVmZmVj
dGl2ZUNsaWVudC0+bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoUmVzdWx0KHRoaXMsIG1lc3NhZ2Us
IGRlc2NyaXB0aW9uLCBzdGF0aWNfY2FzdDxXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3Vs
dFR5cGU+KHJlc3VsdCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25vc3RpY01l
c3NhZ2VXaXRoUmVzdWx0RnJvbVdlYlByb2Nlc3MoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25z
dCBTdHJpbmcmIGRlc2NyaXB0aW9uLCB1aW50MzJfdCByZXN1bHQsIFdlYkNvcmU6OlNob3VsZFNh
bXBsZSBzaG91bGRTYW1wbGUpCit7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1lc3Nh
Z2UuaXNBbGxBU0NJSSgpKTsKKworICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdCht
ZXNzYWdlLCBkZXNjcmlwdGlvbiwgcmVzdWx0LCBzaG91bGRTYW1wbGUpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFsdWUoY29uc3QgU3RyaW5nJiBt
ZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBkb3VibGUgdmFsdWUsIHVuc2lnbmVk
IHNpZ25pZmljYW50RmlndXJlcywgU2hvdWxkU2FtcGxlIHNob3VsZFNhbXBsZSkKK3sKKyAgICBh
dXRvKiBlZmZlY3RpdmVDbGllbnQgPSBlZmZlY3RpdmVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChz
aG91bGRTYW1wbGUpOworICAgIGlmICghZWZmZWN0aXZlQ2xpZW50KQorICAgICAgICByZXR1cm47
CisKKyAgICBlZmZlY3RpdmVDbGllbnQtPmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlKHRo
aXMsIG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVj
aXNpb24odmFsdWUsIHNpZ25pZmljYW50RmlndXJlcykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFsdWVGcm9tV2ViUHJvY2Vzcyhjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIGRvdWJsZSB2YWx1ZSwgdW5z
aWduZWQgc2lnbmlmaWNhbnRGaWd1cmVzLCBTaG91bGRTYW1wbGUgc2hvdWxkU2FtcGxlKQorewor
ICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtZXNzYWdlLmlzQWxsQVNDSUkoKSk7CisKKyAg
ICBsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZShtZXNzYWdlLCBkZXNjcmlwdGlvbiwgdmFs
dWUsIHNpZ25pZmljYW50RmlndXJlcywgc2hvdWxkU2FtcGxlKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aEVuaGFuY2VkUHJpdmFjeShjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFNob3VsZFNhbXBsZSBzaG91
bGRTYW1wbGUpCit7CisgICAgYXV0byogZWZmZWN0aXZlQ2xpZW50ID0gZWZmZWN0aXZlRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQoc2hvdWxkU2FtcGxlKTsKKyAgICBpZiAoIWVmZmVjdGl2ZUNsaWVu
dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZWZmZWN0aXZlQ2xpZW50LT5sb2dEaWFnbm9zdGlj
TWVzc2FnZVdpdGhFbmhhbmNlZFByaXZhY3kodGhpcywgbWVzc2FnZSwgZGVzY3JpcHRpb24pOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoRW5oYW5jZWRQ
cml2YWN5RnJvbVdlYlByb2Nlc3MoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcm
IGRlc2NyaXB0aW9uLCBXZWJDb3JlOjpTaG91bGRTYW1wbGUgc2hvdWxkU2FtcGxlKQoreworICAg
IE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtZXNzYWdlLmlzQWxsQVNDSUkoKSk7CisKKyAgICBs
b2dEaWFnbm9zdGljTWVzc2FnZVdpdGhFbmhhbmNlZFByaXZhY3kobWVzc2FnZSwgZGVzY3JpcHRp
b24sIHNob3VsZFNhbXBsZSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpsb2dEaWFnbm9zdGlj
TWVzc2FnZVdpdGhWYWx1ZURpY3Rpb25hcnkoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBT
dHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dDo6VmFsdWVEaWN0aW9uYXJ5JiB2YWx1ZURpY3Rpb25hcnksIFdlYkNvcmU6OlNob3VsZFNhbXBs
ZSBzaG91bGRTYW1wbGUpCit7CisgICAgYXV0byogZWZmZWN0aXZlQ2xpZW50ID0gZWZmZWN0aXZl
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoc2hvdWxkU2FtcGxlKTsKKyAgICBpZiAoIWVmZmVjdGl2
ZUNsaWVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byBhcGlEaWN0aW9uYXJ5ID0gQVBJ
OjpEaWN0aW9uYXJ5OjpjcmVhdGUoKTsKKworICAgIGZvciAoYXV0byYga2V5VmFsdWVQYWlyIDog
dmFsdWVEaWN0aW9uYXJ5KSB7CisgICAgICAgIGFwaURpY3Rpb25hcnktPmFkZChrZXlWYWx1ZVBh
aXIua2V5LCBXVEY6OnN3aXRjaE9uKGtleVZhbHVlUGFpci52YWx1ZSwKKyAgICAgICAgICAgIFtd
KGNvbnN0IFN0cmluZyYgdmFsdWUpIC0+IFJlZjxPYmplY3Q+IHsgcmV0dXJuIEFQSTo6U3RyaW5n
OjpjcmVhdGUodmFsdWUpOyB9LAorICAgICAgICAgICAgW10odWludDY0X3QgdmFsdWUpIC0+IFJl
ZjxPYmplY3Q+IHsgcmV0dXJuIEFQSTo6VUludDY0OjpjcmVhdGUodmFsdWUpOyB9LAorICAgICAg
ICAgICAgW10oaW50NjRfdCB2YWx1ZSkgLT4gUmVmPE9iamVjdD4geyByZXR1cm4gQVBJOjpJbnQ2
NDo6Y3JlYXRlKHZhbHVlKTsgfSwKKyAgICAgICAgICAgIFtdKGJvb2wgdmFsdWUpIC0+IFJlZjxP
YmplY3Q+IHsgcmV0dXJuIEFQSTo6Qm9vbGVhbjo6Y3JlYXRlKHZhbHVlKTsgfSwKKyAgICAgICAg
ICAgIFtdKGRvdWJsZSB2YWx1ZSkgLT4gUmVmPE9iamVjdD4geyByZXR1cm4gQVBJOjpEb3VibGU6
OmNyZWF0ZSh2YWx1ZSk7IH0KKyAgICAgICAgKSk7CisgICAgfQorCisgICAgZWZmZWN0aXZlQ2xp
ZW50LT5sb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZURpY3Rpb25hcnkodGhpcywgbWVzc2Fn
ZSwgZGVzY3JpcHRpb24sIFdURk1vdmUoYXBpRGljdGlvbmFyeSkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFsdWVEaWN0aW9uYXJ5RnJvbVdlYlBy
b2Nlc3MoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBj
b25zdCBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ0NsaWVudDo6VmFsdWVEaWN0aW9uYXJ5JiB2
YWx1ZURpY3Rpb25hcnksIFdlYkNvcmU6OlNob3VsZFNhbXBsZSBzaG91bGRTYW1wbGUpCit7Cisg
ICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1lc3NhZ2UuaXNBbGxBU0NJSSgpKTsKKworICAg
IGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlRGljdGlvbmFyeShtZXNzYWdlLCBkZXNjcmlw
dGlvbiwgdmFsdWVEaWN0aW9uYXJ5LCBzaG91bGRTYW1wbGUpOworfQorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoRG9tYWluKGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdEb21haW4gZG9tYWluKQoreworICAgIGF1dG8q
IGVmZmVjdGl2ZUNsaWVudCA9IGVmZmVjdGl2ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KFNob3Vs
ZFNhbXBsZTo6Tm8pOworICAgIGlmICghZWZmZWN0aXZlQ2xpZW50KQorICAgICAgICByZXR1cm47
CisKKyAgICBlZmZlY3RpdmVDbGllbnQtPmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aERvbWFpbih0
aGlzLCBtZXNzYWdlLCBkb21haW4pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9nRGlhZ25v
c3RpY01lc3NhZ2VXaXRoRG9tYWluRnJvbVdlYlByb2Nlc3MoY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ0RvbWFpbiBkb21haW4pCit7CisgICAgTUVTU0FH
RV9DSEVDSyhtX3Byb2Nlc3MsIG1lc3NhZ2UuaXNBbGxBU0NJSSgpKTsKKworICAgIGxvZ0RpYWdu
b3N0aWNNZXNzYWdlV2l0aERvbWFpbihtZXNzYWdlLCBkb21haW4pOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6bG9nU2Nyb2xsaW5nRXZlbnQodWludDMyX3QgZXZlbnRUeXBlLCBNb25vdG9uaWNU
aW1lIHRpbWVzdGFtcCwgdWludDY0X3QgZGF0YSkKK3sKKyAgICBQZXJmb3JtYW5jZUxvZ2dpbmdD
bGllbnQ6OlNjcm9sbGluZ0V2ZW50IGV2ZW50ID0gc3RhdGljX2Nhc3Q8UGVyZm9ybWFuY2VMb2dn
aW5nQ2xpZW50OjpTY3JvbGxpbmdFdmVudD4oZXZlbnRUeXBlKTsKKworICAgIHN3aXRjaCAoZXZl
bnQpIHsKKyAgICBjYXNlIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudDo6U2Nyb2xsaW5nRXZlbnQ6
OkxvZ2dpbmdFbmFibGVkOgorICAgICAgICBXVEZMb2dBbHdheXMoIlNDUk9MTElORzogU2Nyb2xs
aW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZFxuIik7CisgICAgICAgIGJyZWFrOworICAgIGNh
c2UgUGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50OjpTY3JvbGxpbmdFdmVudDo6RXhwb3NlZFRpbGVs
ZXNzQXJlYToKKyAgICAgICAgV1RGTG9nQWx3YXlzKCJTQ1JPTExJTkc6IEV4cG9zZWQgdGlsZWxl
c3MgYXJlYS4gVGltZTogJWYgVW5maWxsZWQgUGl4ZWxzOiAlbGx1XG4iLCB0aW1lc3RhbXAuc2Vj
b25kc1NpbmNlRXBvY2goKS52YWx1ZSgpLCAodW5zaWduZWQgbG9uZyBsb25nKWRhdGEpOworICAg
ICAgICBicmVhazsKKyAgICBjYXNlIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudDo6U2Nyb2xsaW5n
RXZlbnQ6OkZpbGxlZFRpbGU6CisgICAgICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBGaWxs
ZWQgdmlzaWJsZSBmcmVzaCB0aWxlLiBUaW1lOiAlZiBVbmZpbGxlZCBQaXhlbHM6ICVsbHVcbiIs
IHRpbWVzdGFtcC5zZWNvbmRzU2luY2VFcG9jaCgpLnZhbHVlKCksICh1bnNpZ25lZCBsb25nIGxv
bmcpZGF0YSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUGVyZm9ybWFuY2VMb2dnaW5nQ2xp
ZW50OjpTY3JvbGxpbmdFdmVudDo6U3dpdGNoZWRTY3JvbGxpbmdNb2RlOgorICAgICAgICBpZiAo
ZGF0YSkKKyAgICAgICAgICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBTd2l0Y2hpbmcgdG8g
bWFpbi10aHJlYWQgc2Nyb2xsaW5nIG1vZGUuIFRpbWU6ICVmIFJlYXNvbihzKTogJXNcbiIsIHRp
bWVzdGFtcC5zZWNvbmRzU2luY2VFcG9jaCgpLnZhbHVlKCksIFBlcmZvcm1hbmNlTG9nZ2luZ0Ns
aWVudDo6c3luY2hyb25vdXNTY3JvbGxpbmdSZWFzb25zQXNTdHJpbmcoT3B0aW9uU2V0PFN5bmNo
cm9ub3VzU2Nyb2xsaW5nUmVhc29uPjo6ZnJvbVJhdyhkYXRhKSkudXRmOCgpLmRhdGEoKSk7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBTd2l0Y2hp
bmcgdG8gdGhyZWFkZWQgc2Nyb2xsaW5nIG1vZGUuIFRpbWU6ICVmXG4iLCB0aW1lc3RhbXAuc2Vj
b25kc1NpbmNlRXBvY2goKS52YWx1ZSgpKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorfQorCit2
b2lkIFdlYlBhZ2VQcm94eTo6Zm9jdXNlZEZyYW1lQ2hhbmdlZChjb25zdCBzdGQ6Om9wdGlvbmFs
PEZyYW1lSWRlbnRpZmllcj4mIGZyYW1lSUQpCit7CisgICAgaWYgKCFmcmFtZUlEKSB7CisgICAg
ICAgIG1fZm9jdXNlZEZyYW1lID0gbnVsbHB0cjsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJGcmFtZSgqZnJhbWVJRCk7
CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsKKworICAgIG1fZm9jdXNlZEZy
YW1lID0gZnJhbWU7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpwcm9jZXNzRGlkQmVjb21lVW5y
ZXNwb25zaXZlKCkKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0dfRVJST1IoUHJvY2Vz
cywgInByb2Nlc3NEaWRCZWNvbWVVbnJlc3BvbnNpdmU6Iik7CisKKyAgICBpZiAoIWhhc1J1bm5p
bmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHVwZGF0ZUJhY2tpbmdTdG9yZURp
c2NhcmRhYmxlU3RhdGUoKTsKKworICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+cHJvY2Vzc0RpZEJl
Y29tZVVucmVzcG9uc2l2ZSgqdGhpcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpwcm9jZXNz
RGlkQmVjb21lUmVzcG9uc2l2ZSgpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKFBy
b2Nlc3MsICJwcm9jZXNzRGlkQmVjb21lUmVzcG9uc2l2ZToiKTsKKworICAgIGlmICghaGFzUnVu
bmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHVwZGF0ZUJhY2tpbmdT
dG9yZURpc2NhcmRhYmxlU3RhdGUoKTsKKworICAgIG1fbmF2aWdhdGlvbkNsaWVudC0+cHJvY2Vz
c0RpZEJlY29tZVJlc3BvbnNpdmUoKnRoaXMpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6d2ls
bENoYW5nZVByb2Nlc3NJc1Jlc3BvbnNpdmUoKQoreworICAgIG1fcGFnZUxvYWRTdGF0ZS53aWxs
Q2hhbmdlUHJvY2Vzc0lzUmVzcG9uc2l2ZSgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlk
Q2hhbmdlUHJvY2Vzc0lzUmVzcG9uc2l2ZSgpCit7CisgICAgbV9wYWdlTG9hZFN0YXRlLmRpZENo
YW5nZVByb2Nlc3NJc1Jlc3BvbnNpdmUoKTsKK30KKworU3RyaW5nIFdlYlBhZ2VQcm94eTo6Y3Vy
cmVudFVSTCgpIGNvbnN0Cit7CisgICAgU3RyaW5nIHVybCA9IG1fcGFnZUxvYWRTdGF0ZS5hY3Rp
dmVVUkwoKTsKKyAgICBpZiAodXJsLmlzRW1wdHkoKSAmJiBtX2JhY2tGb3J3YXJkTGlzdC0+Y3Vy
cmVudEl0ZW0oKSkKKyAgICAgICAgdXJsID0gbV9iYWNrRm9yd2FyZExpc3QtPmN1cnJlbnRJdGVt
KCktPnVybCgpOworICAgIHJldHVybiB1cmw7Cit9CisKK1VSTCBXZWJQYWdlUHJveHk6OmN1cnJl
bnRSZXNvdXJjZURpcmVjdG9yeVVSTCgpIGNvbnN0Cit7CisgICAgYXV0byByZXNvdXJjZURpcmVj
dG9yeVVSTCA9IG1fcGFnZUxvYWRTdGF0ZS5yZXNvdXJjZURpcmVjdG9yeVVSTCgpOworICAgIGlm
ICghcmVzb3VyY2VEaXJlY3RvcnlVUkwuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gcmVzb3Vy
Y2VEaXJlY3RvcnlVUkw7CisgICAgaWYgKGF1dG8qIGl0ZW0gPSBtX2JhY2tGb3J3YXJkTGlzdC0+
Y3VycmVudEl0ZW0oKSkKKyAgICAgICAgcmV0dXJuIGl0ZW0tPnJlc291cmNlRGlyZWN0b3J5VVJM
KCk7CisgICAgcmV0dXJuIHsgfTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlc2V0U3RhdGVB
ZnRlclByb2Nlc3NUZXJtaW5hdGlvbihQcm9jZXNzVGVybWluYXRpb25SZWFzb24gcmVhc29uKQor
eworICAgIGlmIChyZWFzb24gIT0gUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpOYXZpZ2F0aW9u
U3dhcCkKKyAgICAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HX0VSUk9SKFByb2Nlc3MsICJw
cm9jZXNzRGlkVGVybWluYXRlOiAocGlkICVkKSwgcmVhc29uICVkIiwgcHJvY2Vzc0lkZW50aWZp
ZXIoKSwgcmVhc29uKTsKKworICAgIEFTU0VSVChtX2hhc1J1bm5pbmdQcm9jZXNzKTsKKworI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKG1fcHJvY2Vzcy0+aXNVbmRlck1lbW9yeVBy
ZXNzdXJlKCkpIHsKKyAgICAgICAgU3RyaW5nIGRvbWFpbiA9IFdlYkNvcmU6OnRvcFByaXZhdGVs
eUNvbnRyb2xsZWREb21haW4oVVJMKHsgfSwgY3VycmVudFVSTCgpKS5ob3N0KCkudG9TdHJpbmco
KSk7CisgICAgICAgIGlmICghZG9tYWluLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIGxvZ0RpYWdu
b3N0aWNNZXNzYWdlV2l0aEVuaGFuY2VkUHJpdmFjeShXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2lu
Z0tleXM6OmRvbWFpbkNhdXNpbmdKZXRzYW1LZXkoKSwgZG9tYWluLCBXZWJDb3JlOjpTaG91bGRT
YW1wbGU6Ok5vKTsKKyAgICB9CisjZW5kaWYKKworICAgIHJlc2V0U3RhdGVBZnRlclByb2Nlc3NF
eGl0ZWQocmVhc29uKTsKKyAgICBzdG9wQWxsVVJMU2NoZW1lVGFza3MobV9wcm9jZXNzLnB0cigp
KTsKKyNpZiBFTkFCTEUoVUlfUFJPQ0VTU19QREZfSFVEKQorICAgIHBhZ2VDbGllbnQoKS5yZW1v
dmVBbGxQREZIVURzKCk7CisjZW5kaWYKKworICAgIC8vIEZvciBicmluZ3VwIG9mIHByb2Nlc3Mg
c3dhcHBpbmcsIE5hdmlnYXRpb25Td2FwIHRlcm1pbmF0aW9uIHdpbGwgbm90IGdvIG91dCB0byBj
bGllbnRzLgorICAgIC8vIElmIGl0IGRvZXMgKmR1cmluZyogcHJvY2VzcyBzd2FwcGluZywgYW5k
IHRoZSBjbGllbnQgdHJpZ2dlcnMgYSByZWxvYWQsIHRoYXQgY2F1c2VzIGJpemFycmUgV2ViS2l0
IHJlLWVudHJ5LgorICAgIC8vIEZJWE1FOiBUaGlzIG1pZ2h0IGhhdmUgdG8gY2hhbmdlCisgICAg
aWYgKHJlYXNvbiAhPSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246Ok5hdmlnYXRpb25Td2FwKQor
ICAgICAgICBuYXZpZ2F0aW9uU3RhdGUoKS5jbGVhckFsbE5hdmlnYXRpb25zKCk7CisKKyAgICBp
ZiAobV9jb250cm9sbGVkQnlBdXRvbWF0aW9uKSB7CisgICAgICAgIGlmIChhdXRvKiBhdXRvbWF0
aW9uU2Vzc2lvbiA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmF1dG9tYXRpb25TZXNzaW9uKCkp
CisgICAgICAgICAgICBhdXRvbWF0aW9uU2Vzc2lvbi0+dGVybWluYXRlKCk7CisgICAgfQorfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6cHJvdmlzaW9uYWxQcm9jZXNzRGlkVGVybWluYXRlKCkKK3sK
KyAgICBBU1NFUlQobV9wcm92aXNpb25hbFBhZ2UpOworICAgIG1fcHJvdmlzaW9uYWxQYWdlID0g
bnVsbHB0cjsKK30KKworc3RhdGljIGJvb2wgc2hvdWxkUmVsb2FkQWZ0ZXJQcm9jZXNzVGVybWlu
YXRpb24oUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHJlYXNvbikKK3sKKyAgICBzd2l0Y2ggKHJl
YXNvbikgeworICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpFeGNlZWRlZE1lbW9y
eUxpbWl0OgorICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpFeGNlZWRlZENQVUxp
bWl0OgorICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpSZXF1ZXN0ZWRCeU5ldHdv
cmtQcm9jZXNzOgorICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpSZXF1ZXN0ZWRC
eUdQVVByb2Nlc3M6CisgICAgY2FzZSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246OkNyYXNoOgor
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBjYXNlIFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6
RXhjZWVkZWRQcm9jZXNzQ291bnRMaW1pdDoKKyAgICBjYXNlIFByb2Nlc3NUZXJtaW5hdGlvblJl
YXNvbjo6TmF2aWdhdGlvblN3YXA6CisgICAgY2FzZSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246
OlJlcXVlc3RlZEJ5Q2xpZW50OgorICAgICAgICBicmVhazsKKyAgICB9CisgICAgcmV0dXJuIGZh
bHNlOworfQorCitzdGF0aWMgY29uc3QgY2hhciogcHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uVG9T
dHJpbmcoUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHJlYXNvbikKK3sKKyAgICBzd2l0Y2ggKHJl
YXNvbikgeworICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpFeGNlZWRlZE1lbW9y
eUxpbWl0OgorICAgICAgICByZXR1cm4gIkV4Y2VlZGVkTWVtb3J5TGltaXQiOworICAgIGNhc2Ug
UHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpFeGNlZWRlZENQVUxpbWl0OgorICAgICAgICByZXR1
cm4gIkV4Y2VlZGVkQ1BVTGltaXQiOworICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29u
OjpSZXF1ZXN0ZWRCeU5ldHdvcmtQcm9jZXNzOgorICAgICAgICByZXR1cm4gIlJlcXVlc3RlZEJ5
TmV0d29ya1Byb2Nlc3MiOworICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpSZXF1
ZXN0ZWRCeUdQVVByb2Nlc3M6CisgICAgICAgIHJldHVybiAiUmVxdWVzdGVkQnlHUFVQcm9jZXNz
IjsKKyAgICBjYXNlIFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6RXhjZWVkZWRQcm9jZXNzQ291
bnRMaW1pdDoKKyAgICAgICAgcmV0dXJuICJFeGNlZWRlZFByb2Nlc3NDb3VudExpbWl0IjsKKyAg
ICBjYXNlIFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbjo6TmF2aWdhdGlvblN3YXA6CisgICAgICAg
IHJldHVybiAiTmF2aWdhdGlvblN3YXAiOworICAgIGNhc2UgUHJvY2Vzc1Rlcm1pbmF0aW9uUmVh
c29uOjpSZXF1ZXN0ZWRCeUNsaWVudDoKKyAgICAgICAgcmV0dXJuICJSZXF1ZXN0ZWRCeUNsaWVu
dCI7CisgICAgY2FzZSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246OkNyYXNoOgorICAgICAgICBi
cmVhazsKKyAgICB9CisgICAgcmV0dXJuICJDcmFzaCI7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpkaXNwYXRjaFByb2Nlc3NEaWRUZXJtaW5hdGUoUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHJl
YXNvbikKK3sKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0dfRVJST1IoTG9hZGluZywgImRp
c3BhdGNoUHJvY2Vzc0RpZFRlcm1pbmF0ZTogcmVhc29uPSV7cHVibGljfXMiLCBwcm9jZXNzVGVy
bWluYXRpb25SZWFzb25Ub1N0cmluZyhyZWFzb24pKTsKKworICAgIGJvb2wgaGFuZGxlZEJ5Q2xp
ZW50ID0gZmFsc2U7CisgICAgaWYgKG1fbG9hZGVyQ2xpZW50KQorICAgICAgICBoYW5kbGVkQnlD
bGllbnQgPSByZWFzb24gIT0gUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uOjpSZXF1ZXN0ZWRCeUNs
aWVudCAmJiBtX2xvYWRlckNsaWVudC0+cHJvY2Vzc0RpZENyYXNoKCp0aGlzKTsKKyAgICBlbHNl
CisgICAgICAgIGhhbmRsZWRCeUNsaWVudCA9IG1fbmF2aWdhdGlvbkNsaWVudC0+cHJvY2Vzc0Rp
ZFRlcm1pbmF0ZSgqdGhpcywgcmVhc29uKTsKKworICAgIGlmICghaGFuZGxlZEJ5Q2xpZW50ICYm
IHNob3VsZFJlbG9hZEFmdGVyUHJvY2Vzc1Rlcm1pbmF0aW9uKHJlYXNvbikpCisgICAgICAgIHRy
eVJlbG9hZEFmdGVyUHJvY2Vzc1Rlcm1pbmF0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
Ojp0cnlSZWxvYWRBZnRlclByb2Nlc3NUZXJtaW5hdGlvbigpCit7CisgICAgbV9yZXNldFJlY2Vu
dENyYXNoQ291bnRUaW1lci5zdG9wKCk7CisKKyAgICBpZiAoKyttX3JlY2VudENyYXNoQ291bnQg
PiBtYXhpbXVtV2ViUHJvY2Vzc1JlbGF1bmNoQXR0ZW1wdHMpIHsKKyAgICAgICAgV0VCUEFHRVBS
T1hZX1JFTEVBU0VfTE9HX0VSUk9SKFByb2Nlc3MsICJ0cnlSZWxvYWRBZnRlclByb2Nlc3NUZXJt
aW5hdGlvbjogcHJvY2VzcyBjcmFzaGVkIGFuZCB0aGUgY2xpZW50IGRpZCBub3QgaGFuZGxlIGl0
LCBub3QgcmVsb2FkaW5nIHRoZSBwYWdlIGJlY2F1c2Ugd2UgcmVhY2hlZCB0aGUgbWF4aW11bSBu
dW1iZXIgb2YgYXR0ZW1wdHMiKTsKKyAgICAgICAgbV9yZWNlbnRDcmFzaENvdW50ID0gMDsKKyAg
ICAgICAgcmV0dXJuOworICAgIH0KKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coUHJvY2Vz
cywgInRyeVJlbG9hZEFmdGVyUHJvY2Vzc1Rlcm1pbmF0aW9uOiBwcm9jZXNzIGNyYXNoZWQgYW5k
IHRoZSBjbGllbnQgZGlkIG5vdCBoYW5kbGUgaXQsIHJlbG9hZGluZyB0aGUgcGFnZSIpOworICAg
IHJlbG9hZChSZWxvYWRPcHRpb246OkV4cGlyZWRPbmx5KTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OnJlc2V0UmVjZW50Q3Jhc2hDb3VudFNvb24oKQoreworICAgIG1fcmVzZXRSZWNlbnRDcmFz
aENvdW50VGltZXIuc3RhcnRPbmVTaG90KHJlc2V0UmVjZW50Q3Jhc2hDb3VudERlbGF5KTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OnJlc2V0UmVjZW50Q3Jhc2hDb3VudCgpCit7CisgICAgbV9y
ZWNlbnRDcmFzaENvdW50ID0gMDsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BBbGxVUkxT
Y2hlbWVUYXNrcyhXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3MpCit7CisgICAgZm9yIChhdXRvJiBo
YW5kbGVyIDogY29weVRvVmVjdG9yT2Y8UmVmPFdlYlVSTFNjaGVtZUhhbmRsZXI+PihtX3VybFNj
aGVtZUhhbmRsZXJzQnlTY2hlbWUudmFsdWVzKCkpKQorICAgICAgICBoYW5kbGVyLT5zdG9wQWxs
VGFza3NGb3JQYWdlKCp0aGlzLCBwcm9jZXNzKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJl
c2V0U3RhdGUoUmVzZXRTdGF0ZVJlYXNvbiByZXNldFN0YXRlUmVhc29uKQoreworICAgIG1fbWFp
bkZyYW1lID0gbnVsbHB0cjsKKyAgICBtX2ZvY3VzZWRGcmFtZSA9IG51bGxwdHI7CisgICAgbV9z
dXNwZW5kZWRQYWdlS2VwdFRvUHJldmVudEZsYXNoaW5nID0gbnVsbHB0cjsKKyAgICBtX2xhc3RT
dXNwZW5kZWRQYWdlID0gbnVsbHB0cjsKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIG1fc2Ny
b2xsaW5nUGVyZm9ybWFuY2VEYXRhID0gbnVsbHB0cjsKKyNlbmRpZgorCisgICAgaWYgKG1fZHJh
d2luZ0FyZWEpIHsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAgICAgaWYgKHJlc2V0U3RhdGVS
ZWFzb24gPT0gUmVzZXRTdGF0ZVJlYXNvbjo6TmF2aWdhdGlvblN3YXAgJiYgaXM8UmVtb3RlTGF5
ZXJUcmVlRHJhd2luZ0FyZWFQcm94eT4oKm1fZHJhd2luZ0FyZWEpKSB7CisgICAgICAgICAgICAv
LyBLZWVwIGxheWVycyBhcm91bmQgaW4gZnJvemVuIHN0YXRlIHRvIGF2b2lkIGZsYXNoaW5nIGR1
cmluZyBwcm9jZXNzIHN3YXBzLgorICAgICAgICAgICAgbV9mcm96ZW5SZW1vdGVMYXllclRyZWVI
b3N0ID0gZG93bmNhc3Q8UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eT4oKm1fZHJhd2lu
Z0FyZWEpLmRldGFjaFJlbW90ZUxheWVyVHJlZUhvc3QoKTsKKyAgICAgICAgfQorI2VuZGlmCisg
ICAgICAgIG1fZHJhd2luZ0FyZWEgPSBudWxscHRyOworICAgIH0KKyAgICBjbG9zZU92ZXJsYXll
ZFZpZXdzKCk7CisKKyAgICBtX2luc3BlY3Rvci0+cmVzZXQoKTsKKworI2lmIEVOQUJMRShGVUxM
U0NSRUVOX0FQSSkKKyAgICBpZiAobV9mdWxsU2NyZWVuTWFuYWdlcikgeworICAgICAgICBtX2Z1
bGxTY3JlZW5NYW5hZ2VyLT5jbG9zZSgpOworICAgICAgICBtX2Z1bGxTY3JlZW5NYW5hZ2VyID0g
bnVsbHB0cjsKKyAgICB9CisjZW5kaWYKKworI2lmIEVOQUJMRShNRURJQV9VU0FHRSkKKyAgICBp
ZiAobV9tZWRpYVVzYWdlTWFuYWdlcikKKyAgICAgICAgbV9tZWRpYVVzYWdlTWFuYWdlci0+cmVz
ZXQoKTsKKyNlbmRpZgorCisjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCisg
ICAgaWYgKHJlc2V0U3RhdGVSZWFzb24gIT0gUmVzZXRTdGF0ZVJlYXNvbjo6TmF2aWdhdGlvblN3
YXApCisgICAgICAgIG1fY29udGV4dElERm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uSW5XZWJQcm9j
ZXNzID0gMDsKKyNlbmRpZgorCisgICAgaWYgKG1fb3BlblBhbmVsUmVzdWx0TGlzdGVuZXIpIHsK
KyAgICAgICAgbV9vcGVuUGFuZWxSZXN1bHRMaXN0ZW5lci0+aW52YWxpZGF0ZSgpOworICAgICAg
ICBtX29wZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gbnVsbHB0cjsKKyAgICB9CisKKyNpZiBFTkFC
TEUoVE9VQ0hfRVZFTlRTKQorICAgIG1fdG91Y2hBbmRQb2ludGVyRXZlbnRUcmFja2luZy5yZXNl
dCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoR0VPTE9DQVRJT04pCisgICAgbV9nZW9sb2NhdGlv
blBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5pbnZhbGlkYXRlUmVxdWVzdHMoKTsKKyNlbmRpZgor
CisgICAgc2V0VG9vbFRpcCh7IH0pOworCisgICAgbV9tYWluRnJhbWVIYXNIb3Jpem9udGFsU2Ny
b2xsYmFyID0gZmFsc2U7CisgICAgbV9tYWluRnJhbWVIYXNWZXJ0aWNhbFNjcm9sbGJhciA9IGZh
bHNlOworCisgICAgbV9tYWluRnJhbWVJc1Bpbm5lZFRvTGVmdFNpZGUgPSB0cnVlOworICAgIG1f
bWFpbkZyYW1lSXNQaW5uZWRUb1JpZ2h0U2lkZSA9IHRydWU7CisgICAgbV9tYWluRnJhbWVJc1Bp
bm5lZFRvVG9wU2lkZSA9IHRydWU7CisgICAgbV9tYWluRnJhbWVJc1Bpbm5lZFRvQm90dG9tU2lk
ZSA9IHRydWU7CisKKyAgICBtX3Zpc2libGVTY3JvbGxlclRodW1iUmVjdCA9IEludFJlY3QoKTsK
KworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBpZiAobV9wbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyKSB7CisgICAgICAgIG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlci0+aW52
YWxpZGF0ZSgpOworICAgICAgICBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIgPSBudWxscHRyOwor
ICAgIH0KKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKSB7CisgICAgICAgIG1fdmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci0+aW52YWxpZGF0ZSgpOworICAgICAgICBtX3ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIgPSBudWxscHRyOworICAgIH0KKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKyAgICBtX2ZpcnN0TGF5ZXJUcmVlVHJhbnNhY3Rpb25JZEFmdGVyRGlkQ29tbWl0
TG9hZCA9IHsgfTsKKyAgICBtX2xhc3RWaXNpYmxlQ29udGVudFJlY3RVcGRhdGUgPSB7IH07Cisg
ICAgbV9oYXNOZXR3b3JrUmVxdWVzdHNPblN1c3BlbmRlZCA9IGZhbHNlOworICAgIG1faXNLZXli
b2FyZEFuaW1hdGluZ0luID0gZmFsc2U7CisgICAgbV9pc1Njcm9sbGluZ09yWm9vbWluZyA9IGZh
bHNlOworICAgIG1fbGFzdE9ic2VydmVkU3RhdGVXYXNCYWNrZ3JvdW5kID0gZmFsc2U7CisjZW5k
aWYKKworI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9STShJ
T1NfRkFNSUxZKQorICAgIHBhZ2VDbGllbnQoKS5tZWRpYVNlc3Npb25NYW5hZ2VyKCkucmVtb3Zl
QWxsUGxheWJhY2tUYXJnZXRQaWNrZXJDbGllbnRzKCp0aGlzKTsKKyNlbmRpZgorCisjaWYgRU5B
QkxFKEFQUExFX1BBWSkKKyAgICBtX3BheW1lbnRDb29yZGluYXRvciA9IG51bGxwdHI7CisjZW5k
aWYKKworI2lmIFVTRShTWVNURU1fUFJFVklFVykKKyAgICBtX3N5c3RlbVByZXZpZXdDb250cm9s
bGVyID0gbnVsbHB0cjsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFSS0lUX0lOTElORV9QUkVWSUVX
KQorICAgIG1fbW9kZWxFbGVtZW50Q29udHJvbGxlciA9IG51bGxwdHI7CisjZW5kaWYKKworI2lm
IEVOQUJMRShXRUJfQVVUSE4pCisgICAgbV9jcmVkZW50aWFsc01lc3NlbmdlciA9IG51bGxwdHI7
CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEVOQUJMRShERVZJQ0VfT1JJ
RU5UQVRJT04pCisgICAgbV93ZWJEZXZpY2VPcmllbnRhdGlvblVwZGF0ZVByb3ZpZGVyUHJveHkg
PSBudWxscHRyOworI2VuZGlmCisKKyAgICBmb3IgKGF1dG8mIGVkaXRDb21tYW5kIDogc3RkOjpl
eGNoYW5nZShtX2VkaXRDb21tYW5kU2V0LCB7IH0pKQorICAgICAgICBlZGl0Q29tbWFuZC0+aW52
YWxpZGF0ZSgpOworCisgICAgbV9hY3RpdmVQb3B1cE1lbnUgPSBudWxscHRyOworCisgICAgdXBk
YXRlUGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJvZHVjZXI6OklzTm90UGxheWluZyk7Cisj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlciA9IG51bGxwdHI7CisjZW5kaWYKKworI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisg
ICAgcmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKKyNlbmRpZgorICAgIAorI2lmIEVOQUJMRShTUEVF
Q0hfU1lOVEhFU0lTKQorICAgIHJlc2V0U3BlZWNoU3ludGhlc2l6ZXIoKTsKKyNlbmRpZgorCisj
aWYgRU5BQkxFKFdFQl9BVVRITikKKyAgICBtX3dlYnNpdGVEYXRhU3RvcmUtPmF1dGhlbnRpY2F0
b3JNYW5hZ2VyKCkuY2FuY2VsUmVxdWVzdChtX3dlYlBhZ2VJRCwgc3RkOjpudWxsb3B0KTsKKyNl
bmRpZgorCisgICAgbV9zcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyID0gbnVsbHB0
cjsKKworI2lmIEVOQUJMRShXRUJYUikgJiYgIVVTRShPUEVOWFIpCisgICAgaWYgKG1feHJTeXN0
ZW0pIHsKKyAgICAgICAgbV94clN5c3RlbS0+aW52YWxpZGF0ZSgpOworICAgICAgICBtX3hyU3lz
dGVtID0gbnVsbHB0cjsKKyAgICB9CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJl
c2V0U3RhdGVBZnRlclByb2Nlc3NFeGl0ZWQoUHJvY2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHRlcm1p
bmF0aW9uUmVhc29uKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgp
KTsKKworI2lmIEFTU0VSVF9FTkFCTEVECisgICAgLy8gRklYTUU6IEl0J3Mgd2VpcmQgdGhhdCBy
ZXNldFN0YXRlQWZ0ZXJQcm9jZXNzRXhpdGVkKCkgaXMgY2FsbGVkIGV2ZW4gdGhvdWdoIHRoZSBw
cm9jZXNzIGlzIGxhdW5jaGluZy4KKyAgICBpZiAodGVybWluYXRpb25SZWFzb24gIT0gUHJvY2Vz
c1Rlcm1pbmF0aW9uUmVhc29uOjpOYXZpZ2F0aW9uU3dhcCkKKyAgICAgICAgQVNTRVJUKG1fcHJv
Y2Vzcy0+c3RhdGUoKSA9PSBXZWJQcm9jZXNzUHJveHk6OlN0YXRlOjpMYXVuY2hpbmcgfHwgbV9w
cm9jZXNzLT5zdGF0ZSgpID09IFdlYlByb2Nlc3NQcm94eTo6U3RhdGU6OlRlcm1pbmF0ZWQpOwor
I2VuZGlmCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIG1fd2FpdGluZ0ZvclBvc3RM
YXlvdXRFZGl0b3JTdGF0ZVVwZGF0ZUFmdGVyRm9jdXNpbmdFbGVtZW50ID0gZmFsc2U7CisgICAg
bV9pc1Zpc2libGVBY3Rpdml0eSA9IG51bGxwdHI7CisgICAgbV9pc0F1ZGlibGVBY3Rpdml0eSA9
IG51bGxwdHI7CisgICAgbV9pc0NhcHR1cmluZ0FjdGl2aXR5ID0gbnVsbHB0cjsKKyAgICBtX29w
ZW5pbmdBcHBMaW5rQWN0aXZpdHkgPSBudWxscHRyOworI2VuZGlmCisKKyAgICBtX3BhZ2VJc1Vz
ZXJPYnNlcnZhYmxlQ291bnQgPSBudWxscHRyOworICAgIG1fdmlzaWJsZVBhZ2VUb2tlbiA9IG51
bGxwdHI7CisKKyAgICBtX2hhc1J1bm5pbmdQcm9jZXNzID0gZmFsc2U7CisgICAgbV9hcmVBY3Rp
dmVET01PYmplY3RzQW5kQW5pbWF0aW9uc1N1c3BlbmRlZCA9IGZhbHNlOworCisgICAgbV91c2Vy
U2NyaXB0c05vdGlmaWVkID0gZmFsc2U7CisKKyAgICBtX2VkaXRvclN0YXRlID0gRWRpdG9yU3Rh
dGUoKTsKKyAgICBtX2NhY2hlZEZvbnRBdHRyaWJ1dGVzQXRTZWxlY3Rpb25TdGFydC5yZXNldCgp
OworCisgICAgaWYgKHRlcm1pbmF0aW9uUmVhc29uID09IFByb2Nlc3NUZXJtaW5hdGlvblJlYXNv
bjo6TmF2aWdhdGlvblN3YXApCisgICAgICAgIHBhZ2VDbGllbnQoKS5wcm9jZXNzV2lsbFN3YXAo
KTsKKyAgICBlbHNlCisgICAgICAgIHBhZ2VDbGllbnQoKS5wcm9jZXNzRGlkRXhpdCgpOworCisg
ICAgcGFnZUNsaWVudCgpLmNsZWFyQWxsRWRpdENvbW1hbmRzKCk7CisKKyNpZiBQTEFURk9STShD
T0NPQSkKKyAgICBXZWJQYXN0ZWJvYXJkUHJveHk6OnNpbmdsZXRvbigpLnJldm9rZUFjY2Vzcyht
X3Byb2Nlc3MuZ2V0KCkpOworI2VuZGlmCisKKyAgICBhdXRvIHJlc2V0U3RhdGVSZWFzb24gPSB0
ZXJtaW5hdGlvblJlYXNvbiA9PSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246Ok5hdmlnYXRpb25T
d2FwID8gUmVzZXRTdGF0ZVJlYXNvbjo6TmF2aWdhdGlvblN3YXAgOiBSZXNldFN0YXRlUmVhc29u
OjpXZWJQcm9jZXNzRXhpdGVkOworICAgIHJlc2V0U3RhdGUocmVzZXRTdGF0ZVJlYXNvbik7CisK
KyAgICBtX3BlbmRpbmdMZWFybk9ySWdub3JlV29yZE1lc3NhZ2VDb3VudCA9IDA7CisKKyAgICAv
LyBDYW4ndCBleHBlY3QgRGlkUmVjZWl2ZUV2ZW50IG5vdGlmaWNhdGlvbnMgZnJvbSBhIGNyYXNo
ZWQgd2ViIHByb2Nlc3MuCisgICAgbV9tb3VzZUV2ZW50UXVldWUuY2xlYXIoKTsKKyAgICBtX2tl
eUV2ZW50UXVldWUuY2xlYXIoKTsKKyAgICBpZiAobV93aGVlbEV2ZW50Q29hbGVzY2VyKQorICAg
ICAgICBtX3doZWVsRXZlbnRDb2FsZXNjZXItPmNsZWFyKCk7CisKKyNpZiBFTkFCTEUoVE9VQ0hf
RVZFTlRTKSAmJiAhRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCisgICAgbV90b3VjaEV2ZW50UXVl
dWUuY2xlYXIoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKyAg
ICBpbnZhbGlkYXRlQWxsQXR0YWNobWVudHMoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKG1fc2Nyb2xsaW5nQ29vcmRp
bmF0b3JQcm94eSkKKyAgICAgICAgbV9zY3JvbGxpbmdDb29yZGluYXRvclByb3h5LT5yZXNldFN0
YXRlQWZ0ZXJQcm9jZXNzRXhpdGVkKCk7CisjZW5kaWYKKworICAgIGlmICh0ZXJtaW5hdGlvblJl
YXNvbiAhPSBQcm9jZXNzVGVybWluYXRpb25SZWFzb246Ok5hdmlnYXRpb25Td2FwKSB7CisgICAg
ICAgIFBhZ2VMb2FkU3RhdGU6OlRyYW5zYWN0aW9uIHRyYW5zYWN0aW9uID0gbV9wYWdlTG9hZFN0
YXRlLnRyYW5zYWN0aW9uKCk7CisgICAgICAgIG1fcGFnZUxvYWRTdGF0ZS5yZXNldCh0cmFuc2Fj
dGlvbik7CisgICAgfQorCisgICAgdXBkYXRlUGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJv
ZHVjZXI6OklzTm90UGxheWluZyk7CisKKyAgICAvLyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzM4
Njc2NjA0PiBJbiBjYXNlIG9mIHByb2Nlc3Mgc3dhcHMsIHRoZSBvbGQgcHJvY2VzcyBzaG91bGQg
Z3JhY2VmdWxseSBzdXNwZW5kIGluc3RlYWQgb2YgdGVybWluYXRpbmcuCisgICAgbV9wcm9jZXNz
LT5wcm9jZXNzVGVybWluYXRlZCgpOworfQorCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVO
VCkgJiYgUExBVEZPUk0oQ09DT0EpCitzdGF0aWMgY29uc3QgVmVjdG9yPEFTQ0lJTGl0ZXJhbD4m
IGF0dGFjaG1lbnRFbGVtZW50U2VydmljZXMoKQoreworICAgIHN0YXRpYyBjb25zdCBhdXRvIHNl
cnZpY2VzID0gbWFrZU5ldmVyRGVzdHJveWVkKFZlY3RvcjxBU0NJSUxpdGVyYWw+IHsKKyNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQorICAgICAgICAiY29tLmFwcGxlLmZyb250Ym9hcmQuc3lzdGVt
YXBwc2VydmljZXMiX3MsCisjZW5kaWYKKyAgICAgICAgImNvbS5hcHBsZS5pY29uc2VydmljZXMi
X3MsCisjaWYgUExBVEZPUk0oTUFDKQorICAgICAgICAiY29tLmFwcGxlLmljb25zZXJ2aWNlcy5z
dG9yZSJfcywKKyNlbmRpZgorICAgIH0pOworICAgIHJldHVybiBzZXJ2aWNlczsKK30KKyNlbmRp
ZgorCisjaWYgUExBVEZPUk0oQ09DT0EpCitzdGF0aWMgY29uc3QgVmVjdG9yPEFTQ0lJTGl0ZXJh
bD4mIGdwdUlPS2l0Q2xhc3NlcygpCit7CisgICAgQVNTRVJUKGlzTWFpblJ1bkxvb3AoKSk7Cisg
ICAgc3RhdGljIGNvbnN0IGF1dG8gc2VydmljZXMgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoVmVjdG9y
PEFTQ0lJTGl0ZXJhbD4geworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgICJBR1hE
ZXZpY2VVc2VyQ2xpZW50Il9zLAorICAgICAgICAiSU9HUFUiX3MsCisgICAgICAgICJJT1N1cmZh
Y2VSb290VXNlckNsaWVudCJfcywKKyNlbmRpZgorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZP
Uk0oTUFDQ0FUQUxZU1QpCisgICAgICAgICJBR1BNQ2xpZW50Il9zLAorICAgICAgICAiQXBwbGVH
cmFwaGljc0NvbnRyb2xDbGllbnQiX3MsCisgICAgICAgICJBcHBsZUdyYXBoaWNzUG9saWN5Q2xp
ZW50Il9zLAorICAgICAgICAiQXBwbGVJbnRlbE1FVXNlckNsaWVudCJfcywKKyAgICAgICAgIkFw
cGxlTUdQVVBvd2VyQ29udHJvbENsaWVudCJfcywKKyAgICAgICAgIkFwcGxlU05CRkJVc2VyQ2xp
ZW50Il9zLAorICAgICAgICAiQXBwbGVVcHN0cmVhbVVzZXJDbGllbnQiX3MsCisgICAgICAgICJB
dWRpb0FVVUMiX3MsCisgICAgICAgICJJT0FjY2VsZXJhdGlvblVzZXJDbGllbnQiX3MsCisgICAg
ICAgICJJT0FjY2VsZXJhdG9yIl9zLAorICAgICAgICAiSU9BdWRpb0NvbnRyb2xVc2VyQ2xpZW50
Il9zLAorICAgICAgICAiSU9BdWRpb0VuZ2luZVVzZXJDbGllbnQiX3MsCisgICAgICAgICJJT1N1
cmZhY2VSb290VXNlckNsaWVudCJfcywKKyNlbmRpZgorI2lmIChQTEFURk9STShNQUMpICYmIENQ
VShBUk02NCkpIHx8IFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgICJJT01vYmlsZUZyYW1l
YnVmZmVyVXNlckNsaWVudCJfcywKKyAgICAgICAgIklPU3VyZmFjZUFjY2VsZXJhdG9yQ2xpZW50
Il9zLAorI2VuZGlmCisgICAgfSk7CisgICAgcmV0dXJuIHNlcnZpY2VzOworfQorCitzdGF0aWMg
Y29uc3QgVmVjdG9yPEFTQ0lJTGl0ZXJhbD4mIGdwdU1hY2hTZXJ2aWNlcygpCit7CisgICAgQVNT
RVJUKGlzTWFpblJ1bkxvb3AoKSk7CisgICAgc3RhdGljIGNvbnN0IGF1dG8gc2VydmljZXMgPSBt
YWtlTmV2ZXJEZXN0cm95ZWQoVmVjdG9yPEFTQ0lJTGl0ZXJhbD4geworICAgICAgICAiY29tLmFw
cGxlLk1UTENvbXBpbGVyU2VydmljZSJfcywKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JN
KE1BQ0NBVEFMWVNUKQorICAgICAgICAiY29tLmFwcGxlLmN2bXNTZXJ2Il9zLAorI2VuZGlmCisg
ICAgfSk7CisgICAgcmV0dXJuIHNlcnZpY2VzOworfQorCisvLyBGSVhNRSgyMDc3MTYpOiBUaGUg
Zm9sbG93aW5nIHNob3VsZCBiZSByZW1vdmVkIHdoZW4gdGhlIEdQVSBwcm9jZXNzIGlzIGNvbXBs
ZXRlLgorc3RhdGljIGNvbnN0IFZlY3RvcjxBU0NJSUxpdGVyYWw+JiBtZWRpYVJlbGF0ZWRNYWNo
U2VydmljZXMoKQoreworICAgIEFTU0VSVChpc01haW5SdW5Mb29wKCkpOworICAgIHN0YXRpYyBj
b25zdCBhdXRvIHNlcnZpY2VzID0gbWFrZU5ldmVyRGVzdHJveWVkKFZlY3RvcjxBU0NJSUxpdGVy
YWw+IHsKKyAgICAgICAgImNvbS5hcHBsZS5hdWRpby5BdWRpb0NvbXBvbmVudFByZWZzIl9zLCAi
Y29tLmFwcGxlLmF1ZGlvLkF1ZGlvQ29tcG9uZW50UmVnaXN0cmFyIl9zLAorICAgICAgICAiY29t
LmFwcGxlLmF1ZGlvLkF1ZGlvUXVldWVTZXJ2ZXIiX3MsICJjb20uYXBwbGUuY29yZW1lZGlhLmVu
ZHBvaW50LnhwYyJfcywKKyAgICAgICAgImNvbS5hcHBsZS5jb3JlbWVkaWEucm91dGVkaXNjb3Zl
cmVyLnhwYyJfcywgImNvbS5hcHBsZS5jb3JlbWVkaWEucm91dGluZ2NvbnRleHQueHBjIl9zLAor
ICAgICAgICAiY29tLmFwcGxlLmNvcmVtZWRpYS52b2x1bWVjb250cm9sbGVyLnhwYyJfcywgImNv
bS5hcHBsZS5hY2Nlc3NpYmlsaXR5Lm1lZGlhYWNjZXNzaWJpbGl0eWQiX3MsCisgICAgICAgICJj
b20uYXBwbGUubWVkaWFyZW1vdGVkLnhwYyJfcywKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQor
ICAgICAgICAiY29tLmFwcGxlLmF1ZGlvLkF1ZGlvU2Vzc2lvbiJfcywgImNvbS5hcHBsZS5NZWRp
YVBsYXllci5SZW1vdGVQbGF5ZXJTZXJ2aWNlIl9zLAorICAgICAgICAiY29tLmFwcGxlLmNvcmVt
ZWRpYS5hZG1pbiJfcywKKyAgICAgICAgImNvbS5hcHBsZS5jb3JlbWVkaWEuYXNzZXQueHBjIl9z
LCAiY29tLmFwcGxlLmNvcmVtZWRpYS5hc3NldGltYWdlZ2VuZXJhdG9yLnhwYyJfcywKKyAgICAg
ICAgImNvbS5hcHBsZS5jb3JlbWVkaWEuYXVkaW9kZXZpY2VjbG9jay54cGMiX3MsICJjb20uYXBw
bGUuY29yZW1lZGlhLmF1ZGlvcHJvY2Vzc2luZ3RhcC54cGMiX3MsCisgICAgICAgICJjb20uYXBw
bGUuY29yZW1lZGlhLmNhcHR1cmVzZXNzaW9uIl9zLCAiY29tLmFwcGxlLmNvcmVtZWRpYS5jYXB0
dXJlc291cmNlIl9zLAorICAgICAgICAiY29tLmFwcGxlLmNvcmVtZWRpYS5jb21wcmVzc2lvbnNl
c3Npb24iX3MsICJjb20uYXBwbGUuY29yZW1lZGlhLmNwZS54cGMiX3MsCisgICAgICAgICJjb20u
YXBwbGUuY29yZW1lZGlhLmNwZXByb3RlY3Rvci54cGMiX3MsICJjb20uYXBwbGUuY29yZW1lZGlh
LmN1c3RvbXVybGxvYWRlci54cGMiX3MsCisgICAgICAgICJjb20uYXBwbGUuY29yZW1lZGlhLmRl
Y29tcHJlc3Npb25zZXNzaW9uIl9zLCAiY29tLmFwcGxlLmNvcmVtZWRpYS5maWdjb250ZW50a2V5
c2Vzc2lvbi54cGMiX3MsCisgICAgICAgICJjb20uYXBwbGUuY29yZW1lZGlhLmZpZ2NwZWNyeXB0
b3IiX3MsICJjb20uYXBwbGUuY29yZW1lZGlhLmZvcm1hdHJlYWRlci54cGMiX3MsCisgICAgICAg
ICJjb20uYXBwbGUuY29yZW1lZGlhLnBsYXllci54cGMiX3MsICJjb20uYXBwbGUuY29yZW1lZGlh
LnJlbWFrZXIiX3MsCisgICAgICAgICJjb20uYXBwbGUuY29yZW1lZGlhLnJlbW90ZXF1ZXVlIl9z
LCAiY29tLmFwcGxlLmNvcmVtZWRpYS5yb3V0aW5nc2Vzc2lvbm1hbmFnZXIueHBjIl9zLAorICAg
ICAgICAiY29tLmFwcGxlLmNvcmVtZWRpYS5zYW1wbGVidWZmZXJhdWRpb3JlbmRlcmVyLnhwYyJf
cywgImNvbS5hcHBsZS5jb3JlbWVkaWEuc2FtcGxlYnVmZmVycmVuZGVyc3luY2hyb25pemVyLnhw
YyJfcywKKyAgICAgICAgImNvbS5hcHBsZS5jb3JlbWVkaWEuc2FuZGJveHNlcnZlci54cGMiX3Ms
ICJjb20uYXBwbGUuY29yZW1lZGlhLnN0cyJfcywKKyAgICAgICAgImNvbS5hcHBsZS5jb3JlbWVk
aWEuc3lzdGVtY29udHJvbGxlci54cGMiX3MsICJjb20uYXBwbGUuY29yZW1lZGlhLnZpZGVvcXVl
dWUiX3MsCisgICAgICAgICJjb20uYXBwbGUuY29yZW1lZGlhLnZpc3VhbGNvbnRleHQueHBjIl9z
LCAiY29tLmFwcGxlLmFpcnBsYXkuYXBzeW5jY29udHJvbGxlci54cGMiX3MsCisgICAgICAgICJj
b20uYXBwbGUuYXVkaW8uQVVSZW1vdGVJT1NlcnZlciJfcywKKyNlbmRpZgorI2lmIFBMQVRGT1JN
KE1BQykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgICAgICJjb20uYXBwbGUuYXVkaW8u
YXVkaW9oYWxkIl9zLCAiY29tLmFwcGxlLmF1ZGlvLlNhbmRib3hIZWxwZXIiX3MsICJjb20uYXBw
bGUuY29yZW1lZGlhLmVuZHBvaW50c3RyZWFtLnhwYyJfcywgImNvbS5hcHBsZS5jb3JlbWVkaWEu
ZW5kcG9pbnRwbGF5YmFja3Nlc3Npb24ueHBjIl9zLAorICAgICAgICAiY29tLmFwcGxlLmNvcmVt
ZWRpYS5lbmRwb2ludHJlbW90ZWNvbnRyb2xzZXNzaW9uLnhwYyJfcywgImNvbS5hcHBsZS5jb3Jl
bWVkaWEudmlkZW9kZWNvZGVyIl9zLAorICAgICAgICAiY29tLmFwcGxlLmNvcmVtZWRpYS52aWRl
b2VuY29kZXIiX3MsICJjb20uYXBwbGUubHNrZGQiX3MsICJjb20uYXBwbGUudHJ1c3RkLmFnZW50
Il9zLAorI2VuZGlmCisgICAgfSk7CisgICAgcmV0dXJuIHNlcnZpY2VzOworfQorCitzdGF0aWMg
Y29uc3QgVmVjdG9yPEFTQ0lJTGl0ZXJhbD4mIG1lZGlhUmVsYXRlZElPS2l0Q2xhc3NlcygpCit7
CisgICAgc3RhdGljIGNvbnN0IGF1dG8gc2VydmljZXMgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoVmVj
dG9yPEFTQ0lJTGl0ZXJhbD4geworI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oTUFDQ0FU
QUxZU1QpCisjaWYgQ1BVKEFSTTY0KQorICAgICAgICAiQXBwbGVBVkRVc2VyQ2xpZW50Il9zLAor
I2VuZGlmCisgICAgICAgICJSb290RG9tYWluVXNlckNsaWVudCJfcywKKyNlbmRpZgorICAgIH0p
OworICAgIHJldHVybiBzZXJ2aWNlczsKK30KKyNlbmRpZgorCitXZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzIFdlYlBhZ2VQcm94eTo6Y3JlYXRpb25QYXJhbWV0ZXJzKFdlYlByb2Nlc3NQcm94eSYg
cHJvY2VzcywgRHJhd2luZ0FyZWFQcm94eSYgZHJhd2luZ0FyZWEsIFJlZlB0cjxBUEk6OldlYnNp
dGVQb2xpY2llcz4mJiB3ZWJzaXRlUG9saWNpZXMpCit7CisgICAgV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycyBwYXJhbWV0ZXJzOworCisgICAgcGFyYW1ldGVycy5wcm9jZXNzRGlzcGxheU5hbWUg
PSBjb25maWd1cmF0aW9uKCkucHJvY2Vzc0Rpc3BsYXlOYW1lKCk7CisKKyAgICBwYXJhbWV0ZXJz
LnZpZXdTaXplID0gcGFnZUNsaWVudCgpLnZpZXdTaXplKCk7CisgICAgcGFyYW1ldGVycy5hY3Rp
dml0eVN0YXRlID0gbV9hY3Rpdml0eVN0YXRlOworICAgIHBhcmFtZXRlcnMuZHJhd2luZ0FyZWFU
eXBlID0gZHJhd2luZ0FyZWEudHlwZSgpOworICAgIHBhcmFtZXRlcnMuZHJhd2luZ0FyZWFJZGVu
dGlmaWVyID0gZHJhd2luZ0FyZWEuaWRlbnRpZmllcigpOworICAgIHBhcmFtZXRlcnMud2ViUGFn
ZVByb3h5SWRlbnRpZmllciA9IG1faWRlbnRpZmllcjsKKyAgICBwYXJhbWV0ZXJzLnN0b3JlID0g
cHJlZmVyZW5jZXNTdG9yZSgpOworICAgIHBhcmFtZXRlcnMucGFnZUdyb3VwRGF0YSA9IG1fcGFn
ZUdyb3VwLT5kYXRhKCk7CisgICAgcGFyYW1ldGVycy5pc0VkaXRhYmxlID0gbV9pc0VkaXRhYmxl
OworICAgIHBhcmFtZXRlcnMudW5kZXJsYXlDb2xvciA9IG1fdW5kZXJsYXlDb2xvcjsKKyAgICBw
YXJhbWV0ZXJzLnVzZUZpeGVkTGF5b3V0ID0gbV91c2VGaXhlZExheW91dDsKKyAgICBwYXJhbWV0
ZXJzLmZpeGVkTGF5b3V0U2l6ZSA9IG1fZml4ZWRMYXlvdXRTaXplOworICAgIHBhcmFtZXRlcnMu
dmlld0V4cG9zZWRSZWN0ID0gbV92aWV3RXhwb3NlZFJlY3Q7CisgICAgcGFyYW1ldGVycy5hbHdh
eXNTaG93c0hvcml6b250YWxTY3JvbGxlciA9IG1fYWx3YXlzU2hvd3NIb3Jpem9udGFsU2Nyb2xs
ZXI7CisgICAgcGFyYW1ldGVycy5hbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIgPSBtX2Fsd2F5
c1Nob3dzVmVydGljYWxTY3JvbGxlcjsKKyAgICBwYXJhbWV0ZXJzLnN1cHByZXNzU2Nyb2xsYmFy
QW5pbWF0aW9ucyA9IG1fc3VwcHJlc3NTY3JvbGxiYXJBbmltYXRpb25zOworICAgIHBhcmFtZXRl
cnMucGFnaW5hdGlvbk1vZGUgPSBtX3BhZ2luYXRpb25Nb2RlOworICAgIHBhcmFtZXRlcnMucGFn
aW5hdGlvbkJlaGF2ZXNMaWtlQ29sdW1ucyA9IG1fcGFnaW5hdGlvbkJlaGF2ZXNMaWtlQ29sdW1u
czsKKyAgICBwYXJhbWV0ZXJzLnBhZ2VMZW5ndGggPSBtX3BhZ2VMZW5ndGg7CisgICAgcGFyYW1l
dGVycy5nYXBCZXR3ZWVuUGFnZXMgPSBtX2dhcEJldHdlZW5QYWdlczsKKyAgICBwYXJhbWV0ZXJz
LnBhZ2luYXRpb25MaW5lR3JpZEVuYWJsZWQgPSBtX3BhZ2luYXRpb25MaW5lR3JpZEVuYWJsZWQ7
CisgICAgcGFyYW1ldGVycy51c2VyQWdlbnQgPSB1c2VyQWdlbnQoKTsKKyAgICBwYXJhbWV0ZXJz
Lml0ZW1TdGF0ZXNXZXJlUmVzdG9yZWRCeUFQSVJlcXVlc3QgPSBtX3Nlc3Npb25TdGF0ZVdhc1Jl
c3RvcmVkQnlBUElSZXF1ZXN0OworICAgIHBhcmFtZXRlcnMuaXRlbVN0YXRlcyA9IG1fYmFja0Zv
cndhcmRMaXN0LT5pdGVtU3RhdGVzKCk7CisgICAgcGFyYW1ldGVycy52aXNpdGVkTGlua1RhYmxl
SUQgPSBtX3Zpc2l0ZWRMaW5rU3RvcmUtPmlkZW50aWZpZXIoKTsKKyAgICBwYXJhbWV0ZXJzLmNh
blJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCA9IG1fdWlDbGllbnQtPmNhblJ1bkJlZm9yZVVu
bG9hZENvbmZpcm1QYW5lbCgpOworICAgIHBhcmFtZXRlcnMuY2FuUnVuTW9kYWwgPSBtX2NhblJ1
bk1vZGFsOworICAgIHBhcmFtZXRlcnMuZGV2aWNlU2NhbGVGYWN0b3IgPSBkZXZpY2VTY2FsZUZh
Y3RvcigpOworICAgIHBhcmFtZXRlcnMudmlld1NjYWxlRmFjdG9yID0gbV92aWV3U2NhbGVGYWN0
b3I7CisgICAgcGFyYW1ldGVycy50ZXh0Wm9vbUZhY3RvciA9IG1fdGV4dFpvb21GYWN0b3I7Cisg
ICAgcGFyYW1ldGVycy5wYWdlWm9vbUZhY3RvciA9IG1fcGFnZVpvb21GYWN0b3I7CisgICAgcGFy
YW1ldGVycy50b3BDb250ZW50SW5zZXQgPSBtX3RvcENvbnRlbnRJbnNldDsKKyAgICBwYXJhbWV0
ZXJzLm1lZGlhVm9sdW1lID0gbV9tZWRpYVZvbHVtZTsKKyAgICBwYXJhbWV0ZXJzLm11dGVkID0g
bV9tdXRlZFN0YXRlOworICAgIHBhcmFtZXRlcnMubWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdyA9
IG1fbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdzsKKyAgICBwYXJhbWV0ZXJzLm1lZGlhUGxheWJh
Y2tJc1N1c3BlbmRlZCA9IG1fbWVkaWFQbGF5YmFja0lzU3VzcGVuZGVkOworICAgIHBhcmFtZXRl
cnMubWluaW11bVNpemVGb3JBdXRvTGF5b3V0ID0gbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQ7
CisgICAgcGFyYW1ldGVycy5zaXplVG9Db250ZW50QXV0b1NpemVNYXhpbXVtU2l6ZSA9IG1fc2l6
ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemU7CisgICAgcGFyYW1ldGVycy5hdXRvU2l6aW5n
U2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0ID0gbV9hdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3
SGVpZ2h0OworICAgIHBhcmFtZXRlcnMudmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cyA9
IG1fdmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0czsKKyAgICBwYXJhbWV0ZXJzLnNjcm9s
bFBpbm5pbmdCZWhhdmlvciA9IG1fc2Nyb2xsUGlubmluZ0JlaGF2aW9yOworICAgIGlmIChtX3Nj
cm9sbGJhck92ZXJsYXlTdHlsZSkKKyAgICAgICAgcGFyYW1ldGVycy5zY3JvbGxiYXJPdmVybGF5
U3R5bGUgPSBtX3Njcm9sbGJhck92ZXJsYXlTdHlsZS52YWx1ZSgpOworICAgIGVsc2UKKyAgICAg
ICAgcGFyYW1ldGVycy5zY3JvbGxiYXJPdmVybGF5U3R5bGUgPSBzdGQ6Om51bGxvcHQ7CisgICAg
cGFyYW1ldGVycy5iYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2UgPSBtX2JhY2tncm91bmRFeHRl
bmRzQmV5b25kUGFnZTsKKyAgICBwYXJhbWV0ZXJzLmxheWVySG9zdGluZ01vZGUgPSBtX2xheWVy
SG9zdGluZ01vZGU7CisgICAgcGFyYW1ldGVycy5jb250cm9sbGVkQnlBdXRvbWF0aW9uID0gbV9j
b250cm9sbGVkQnlBdXRvbWF0aW9uOworICAgIHBhcmFtZXRlcnMudXNlRGFya0FwcGVhcmFuY2Ug
PSB1c2VEYXJrQXBwZWFyYW5jZSgpOworICAgIHBhcmFtZXRlcnMudXNlRWxldmF0ZWRVc2VySW50
ZXJmYWNlTGV2ZWwgPSB1c2VFbGV2YXRlZFVzZXJJbnRlcmZhY2VMZXZlbCgpOworI2lmIFBMQVRG
T1JNKE1BQykKKyAgICBwYXJhbWV0ZXJzLmNvbG9yU3BhY2UgPSBwYWdlQ2xpZW50KCkuY29sb3JT
cGFjZSgpOworICAgIHBhcmFtZXRlcnMudXNlU3lzdGVtQXBwZWFyYW5jZSA9IG1fdXNlU3lzdGVt
QXBwZWFyYW5jZTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKE1FVEFfVklFV1BPUlQpCisgICAgcGFy
YW1ldGVycy5pZ25vcmVzVmlld3BvcnRTY2FsZUxpbWl0cyA9IG1fZm9yY2VBbHdheXNVc2VyU2Nh
bGFibGU7CisgICAgcGFyYW1ldGVycy52aWV3cG9ydENvbmZpZ3VyYXRpb25WaWV3TGF5b3V0U2l6
ZSA9IG1fdmlld3BvcnRDb25maWd1cmF0aW9uVmlld0xheW91dFNpemU7CisgICAgcGFyYW1ldGVy
cy52aWV3cG9ydENvbmZpZ3VyYXRpb25MYXlvdXRTaXplU2NhbGVGYWN0b3IgPSBtX3ZpZXdwb3J0
Q29uZmlndXJhdGlvbkxheW91dFNpemVTY2FsZUZhY3RvcjsKKyAgICBwYXJhbWV0ZXJzLnZpZXdw
b3J0Q29uZmlndXJhdGlvbk1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCA9IG1fdmlld3BvcnRD
b25maWd1cmF0aW9uTWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoOworICAgIHBhcmFtZXRlcnMu
b3ZlcnJpZGVWaWV3cG9ydEFyZ3VtZW50cyA9IG1fb3ZlcnJpZGVWaWV3cG9ydEFyZ3VtZW50czsK
KyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBwYXJhbWV0ZXJzLnNjcmVl
blNpemUgPSBzY3JlZW5TaXplKCk7CisgICAgcGFyYW1ldGVycy5hdmFpbGFibGVTY3JlZW5TaXpl
ID0gYXZhaWxhYmxlU2NyZWVuU2l6ZSgpOworICAgIHBhcmFtZXRlcnMub3ZlcnJpZGVTY3JlZW5T
aXplID0gb3ZlcnJpZGVTY3JlZW5TaXplKCk7CisgICAgcGFyYW1ldGVycy50ZXh0QXV0b3Npemlu
Z1dpZHRoID0gdGV4dEF1dG9zaXppbmdXaWR0aCgpOworICAgIHBhcmFtZXRlcnMubWltZVR5cGVz
V2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnMgPSBwYWdlQ2xpZW50KCkubWltZVR5cGVzV2l0aEN1
c3RvbUNvbnRlbnRQcm92aWRlcnMoKTsKKyAgICBwYXJhbWV0ZXJzLm1heGltdW1Vbm9ic2N1cmVk
U2l6ZSA9IG1fbWF4aW11bVVub2JzY3VyZWRTaXplOworICAgIHBhcmFtZXRlcnMuZGV2aWNlT3Jp
ZW50YXRpb24gPSBtX2RldmljZU9yaWVudGF0aW9uOworICAgIHBhcmFtZXRlcnMua2V5Ym9hcmRJ
c0F0dGFjaGVkID0gaXNJbkhhcmR3YXJlS2V5Ym9hcmRNb2RlKCk7CisgICAgcGFyYW1ldGVycy5j
YW5TaG93V2hpbGVMb2NrZWQgPSBtX2NvbmZpZ3VyYXRpb24tPmNhblNob3dXaGlsZUxvY2tlZCgp
OworI2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBwYXJhbWV0ZXJzLnNtYXJ0SW5z
ZXJ0RGVsZXRlRW5hYmxlZCA9IG1faXNTbWFydEluc2VydERlbGV0ZUVuYWJsZWQ7CisgICAgcGFy
YW1ldGVycy5hZGRpdGlvbmFsU3VwcG9ydGVkSW1hZ2VUeXBlcyA9IG1fY29uZmlndXJhdGlvbi0+
YWRkaXRpb25hbFN1cHBvcnRlZEltYWdlVHlwZXMoKTsKKyAgICAKKyAgICAvLyBBbGxvdyBtaWNy
b3Bob25lIGFjY2VzcyBpZiBlaXRoZXIgcHJlZmVyZW5jZSBpcyBzZXQgYmVjYXVzZSBXZWJSVEMg
cmVxdWlyZXMgbWljcm9waG9uZSBhY2Nlc3MuCisgICAgYm9vbCBuZWVkV2ViUHJvY2Vzc0V4dGVu
c2lvbnMgPSAhcHJlZmVyZW5jZXMoKS51c2VHUFVQcm9jZXNzRm9yTWVkaWFFbmFibGVkKCkKKyAg
ICAgICAgfHwgIXByZWZlcmVuY2VzKCkuY2FwdHVyZUF1ZGlvSW5HUFVQcm9jZXNzRW5hYmxlZCgp
CisgICAgICAgIHx8ICFwcmVmZXJlbmNlcygpLmNhcHR1cmVWaWRlb0luR1BVUHJvY2Vzc0VuYWJs
ZWQoKTsKKworICAgIGlmIChuZWVkV2ViUHJvY2Vzc0V4dGVuc2lvbnMpIHsKKyAgICAgICAgLy8g
RklYTUUoMjA3NzE2KTogVGhlIGZvbGxvd2luZyBzaG91bGQgYmUgcmVtb3ZlZCB3aGVuIHRoZSBH
UFUgcHJvY2VzcyBpcyBjb21wbGV0ZS4KKyAgICAgICAgcGFyYW1ldGVycy5tZWRpYUV4dGVuc2lv
bkhhbmRsZXMgPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVzRm9yTWFjaExvb2t1cCht
ZWRpYVJlbGF0ZWRNYWNoU2VydmljZXMoKSwgc3RkOjpudWxsb3B0KTsKKyAgICAgICAgcGFyYW1l
dGVycy5tZWRpYUlPS2l0RXh0ZW5zaW9uSGFuZGxlcyA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0
ZUhhbmRsZXNGb3JJT0tpdENsYXNzRXh0ZW5zaW9ucyhtZWRpYVJlbGF0ZWRJT0tpdENsYXNzZXMo
KSwgc3RkOjpudWxsb3B0KTsKKyAgICB9CisKKyAgICBpZiAoIXByZWZlcmVuY2VzKCkudXNlR1BV
UHJvY2Vzc0Zvck1lZGlhRW5hYmxlZCgpCisgICAgICAgIHx8ICghcHJlZmVyZW5jZXMoKS5jYXB0
dXJlVmlkZW9JbkdQVVByb2Nlc3NFbmFibGVkKCkgJiYgIXByZWZlcmVuY2VzKCkuY2FwdHVyZVZp
ZGVvSW5VSVByb2Nlc3NFbmFibGVkKCkpCisgICAgICAgIHx8ICghcHJlZmVyZW5jZXMoKS5jYXB0
dXJlQXVkaW9JbkdQVVByb2Nlc3NFbmFibGVkKCkgJiYgIXByZWZlcmVuY2VzKCkuY2FwdHVyZUF1
ZGlvSW5VSVByb2Nlc3NFbmFibGVkKCkpCisgICAgICAgIHx8ICFwcmVmZXJlbmNlcygpLnVzZUdQ
VVByb2Nlc3NGb3JDYW52YXNSZW5kZXJpbmdFbmFibGVkKCkKKyAgICAgICAgfHwgIXByZWZlcmVu
Y2VzKCkudXNlR1BVUHJvY2Vzc0ZvcldlYkdMRW5hYmxlZCgpKSB7CisgICAgICAgIHBhcmFtZXRl
cnMuZ3B1SU9LaXRFeHRlbnNpb25IYW5kbGVzID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFu
ZGxlc0ZvcklPS2l0Q2xhc3NFeHRlbnNpb25zKGdwdUlPS2l0Q2xhc3NlcygpLCBzdGQ6Om51bGxv
cHQpOworICAgICAgICBwYXJhbWV0ZXJzLmdwdU1hY2hFeHRlbnNpb25IYW5kbGVzID0gU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlc0Zvck1hY2hMb29rdXAoZ3B1TWFjaFNlcnZpY2VzKCks
IHN0ZDo6bnVsbG9wdCk7CisgICAgfQorI2VuZGlmCisjaWYgSEFWRShTVEFUSUNfRk9OVF9SRUdJ
U1RSWSkKKyAgICBpZiAocHJlZmVyZW5jZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250
cygpKQorICAgICAgICBwYXJhbWV0ZXJzLmZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlID0gZm9udGRN
YWNoRXh0ZW5zaW9uSGFuZGxlKCk7CisjZW5kaWYKKyNpZiBIQVZFKEFQUF9BQ0NFTlRfQ09MT1JT
KQorICAgIHBhcmFtZXRlcnMuYWNjZW50Q29sb3IgPSBwYWdlQ2xpZW50KCkuYWNjZW50Q29sb3Io
KTsKKyNlbmRpZgorICAgIHBhcmFtZXRlcnMuc2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudCA9
IG1fc2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudDsKKyAgICBwYXJhbWV0ZXJzLnVzZXJJbnRl
cmZhY2VMYXlvdXREaXJlY3Rpb24gPSBwYWdlQ2xpZW50KCkudXNlckludGVyZmFjZUxheW91dERp
cmVjdGlvbigpOworICAgIHBhcmFtZXRlcnMub2JzZXJ2ZWRMYXlvdXRNaWxlc3RvbmVzID0gbV9v
YnNlcnZlZExheW91dE1pbGVzdG9uZXM7CisgICAgcGFyYW1ldGVycy5vdmVycmlkZUNvbnRlbnRT
ZWN1cml0eVBvbGljeSA9IG1fb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3k7CisgICAgcGFy
YW1ldGVycy5jcHVMaW1pdCA9IG1fY3B1TGltaXQ7CisKKyNpZiBVU0UoV1BFX1JFTkRFUkVSKQor
ICAgIHBhcmFtZXRlcnMuaG9zdEZpbGVEZXNjcmlwdG9yID0gcGFnZUNsaWVudCgpLmhvc3RGaWxl
RGVzY3JpcHRvcigpOworI2VuZGlmCisKKyNpZiBQTEFURk9STShXSU4pCisgICAgcGFyYW1ldGVy
cy5uYXRpdmVXaW5kb3dIYW5kbGUgPSByZWludGVycHJldF9jYXN0PHVpbnQ2NF90Pih2aWV3V2lk
Z2V0KCkpOworI2VuZGlmCisKKyAgICBmb3IgKGF1dG8mIGl0ZXJhdG9yIDogbV91cmxTY2hlbWVI
YW5kbGVyc0J5U2NoZW1lKQorICAgICAgICBwYXJhbWV0ZXJzLnVybFNjaGVtZUhhbmRsZXJzLnNl
dChpdGVyYXRvci5rZXksIGl0ZXJhdG9yLnZhbHVlLT5pZGVudGlmaWVyKCkpOworICAgIHBhcmFt
ZXRlcnMudXJsU2NoZW1lc1dpdGhMZWdhY3lDdXN0b21Qcm90b2NvbEhhbmRsZXJzID0gV2ViUHJv
Y2Vzc1Bvb2w6OnVybFNjaGVtZXNXaXRoQ3VzdG9tUHJvdG9jb2xIYW5kbGVycygpOworCisjaWYg
RU5BQkxFKFdFQl9SVEMpCisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWxzbyBiZWluZyBwYXNzZWQg
b3ZlciB0aGUgdG8gV2ViUHJvY2VzcyB2aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUuCisgICAgcGFy
YW1ldGVycy5pY2VDYW5kaWRhdGVGaWx0ZXJpbmdFbmFibGVkID0gbV9wcmVmZXJlbmNlcy0+aWNl
Q2FuZGlkYXRlRmlsdGVyaW5nRW5hYmxlZCgpOworI2lmIFVTRShMSUJXRUJSVEMpCisgICAgLy8g
RklYTUU6IFRoaXMgaXMgYWxzbyBiZWluZyBwYXNzZWQgb3ZlciB0aGUgdG8gV2ViUHJvY2VzcyB2
aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUuCisgICAgcGFyYW1ldGVycy5lbnVtZXJhdGluZ0FsbE5l
dHdvcmtJbnRlcmZhY2VzRW5hYmxlZCA9IG1fcHJlZmVyZW5jZXMtPmVudW1lcmF0aW5nQWxsTmV0
d29ya0ludGVyZmFjZXNFbmFibGVkKCk7CisjZW5kaWYKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFQ
UExJQ0FUSU9OX01BTklGRVNUKQorICAgIHBhcmFtZXRlcnMuYXBwbGljYXRpb25NYW5pZmVzdCA9
IG1fY29uZmlndXJhdGlvbi0+YXBwbGljYXRpb25NYW5pZmVzdCgpID8gc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpBcHBsaWNhdGlvbk1hbmlmZXN0PihtX2NvbmZpZ3VyYXRpb24tPmFwcGxpY2F0aW9u
TWFuaWZlc3QoKS0+YXBwbGljYXRpb25NYW5pZmVzdCgpKSA6IHN0ZDo6bnVsbG9wdDsKKyNlbmRp
ZgorCisgICAgcGFyYW1ldGVycy5uZWVkc0ZvbnRBdHRyaWJ1dGVzID0gbV9uZWVkc0ZvbnRBdHRy
aWJ1dGVzOworICAgIHBhcmFtZXRlcnMuYmFja2dyb3VuZENvbG9yID0gbV9iYWNrZ3JvdW5kQ29s
b3I7CisKKyAgICBwYXJhbWV0ZXJzLm92ZXJyaWRkZW5NZWRpYVR5cGUgPSBtX292ZXJyaWRkZW5N
ZWRpYVR5cGU7CisgICAgcGFyYW1ldGVycy5jb3JzRGlzYWJsaW5nUGF0dGVybnMgPSBjb3JzRGlz
YWJsaW5nUGF0dGVybnMoKTsKKyAgICBwYXJhbWV0ZXJzLnVzZXJTY3JpcHRzU2hvdWxkV2FpdFVu
dGlsTm90aWZpY2F0aW9uID0gbV9jb25maWd1cmF0aW9uLT51c2VyU2NyaXB0c1Nob3VsZFdhaXRV
bnRpbE5vdGlmaWNhdGlvbigpOworICAgIHBhcmFtZXRlcnMuYWxsb3dlZE5ldHdvcmtIb3N0cyA9
IG1fY29uZmlndXJhdGlvbi0+YWxsb3dlZE5ldHdvcmtIb3N0cygpOworICAgIHBhcmFtZXRlcnMu
bG9hZHNTdWJyZXNvdXJjZXMgPSBtX2NvbmZpZ3VyYXRpb24tPmxvYWRzU3VicmVzb3VyY2VzKCk7
CisgICAgcGFyYW1ldGVycy5jcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2xDaGVja0VuYWJsZWQgPSBt
X2NvbmZpZ3VyYXRpb24tPmNyb3NzT3JpZ2luQWNjZXNzQ29udHJvbENoZWNrRW5hYmxlZCgpOwor
ICAgIHBhcmFtZXRlcnMuaGFzUmVzb3VyY2VMb2FkQ2xpZW50ID0gISFtX3Jlc291cmNlTG9hZENs
aWVudDsKKworICAgIHN0ZDo6cmVmZXJlbmNlX3dyYXBwZXI8V2ViVXNlckNvbnRlbnRDb250cm9s
bGVyUHJveHk+IHVzZXJDb250ZW50Q29udHJvbGxlcihtX3VzZXJDb250ZW50Q29udHJvbGxlci5n
ZXQoKSk7CisgICAgaWYgKGF1dG8qIHVzZXJDb250ZW50Q29udHJvbGxlckZyb21XZWJzaXRlUG9s
aWNpZXMgPSB3ZWJzaXRlUG9saWNpZXMgPyB3ZWJzaXRlUG9saWNpZXMtPnVzZXJDb250ZW50Q29u
dHJvbGxlcigpIDogbnVsbHB0cikKKyAgICAgICAgdXNlckNvbnRlbnRDb250cm9sbGVyID0gKnVz
ZXJDb250ZW50Q29udHJvbGxlckZyb21XZWJzaXRlUG9saWNpZXM7CisgICAgcHJvY2Vzcy5hZGRX
ZWJVc2VyQ29udGVudENvbnRyb2xsZXJQcm94eSh1c2VyQ29udGVudENvbnRyb2xsZXIpOworICAg
IHBhcmFtZXRlcnMudXNlckNvbnRlbnRDb250cm9sbGVyUGFyYW1ldGVycyA9IHVzZXJDb250ZW50
Q29udHJvbGxlci5nZXQoKS5wYXJhbWV0ZXJzKCk7CisKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBh
bHNvIGJlaW5nIHBhc3NlZCBvdmVyIHRoZSB0byBXZWJQcm9jZXNzIHZpYSB0aGUgUHJlZmVyZW5j
ZXNTdG9yZS4KKyAgICBwYXJhbWV0ZXJzLnNob3VsZENhcHR1cmVBdWRpb0luVUlQcm9jZXNzID0g
cHJlZmVyZW5jZXMoKS5jYXB0dXJlQXVkaW9JblVJUHJvY2Vzc0VuYWJsZWQoKTsKKyAgICAvLyBG
SVhNRTogVGhpcyBpcyBhbHNvIGJlaW5nIHBhc3NlZCBvdmVyIHRoZSB0byBXZWJQcm9jZXNzIHZp
YSB0aGUgUHJlZmVyZW5jZXNTdG9yZS4KKyAgICBwYXJhbWV0ZXJzLnNob3VsZENhcHR1cmVBdWRp
b0luR1BVUHJvY2VzcyA9IHByZWZlcmVuY2VzKCkuY2FwdHVyZUF1ZGlvSW5HUFVQcm9jZXNzRW5h
YmxlZCgpOworICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFsc28gYmVpbmcgcGFzc2VkIG92ZXIgdGhl
IHRvIFdlYlByb2Nlc3MgdmlhIHRoZSBQcmVmZXJlbmNlc1N0b3JlLgorICAgIHBhcmFtZXRlcnMu
c2hvdWxkQ2FwdHVyZVZpZGVvSW5VSVByb2Nlc3MgPSBwcmVmZXJlbmNlcygpLmNhcHR1cmVWaWRl
b0luVUlQcm9jZXNzRW5hYmxlZCgpOworICAgIC8vIEZJWE1FOiBUaGlzIGlzIGFsc28gYmVpbmcg
cGFzc2VkIG92ZXIgdGhlIHRvIFdlYlByb2Nlc3MgdmlhIHRoZSBQcmVmZXJlbmNlc1N0b3JlLgor
ICAgIHBhcmFtZXRlcnMuc2hvdWxkQ2FwdHVyZVZpZGVvSW5HUFVQcm9jZXNzID0gcHJlZmVyZW5j
ZXMoKS5jYXB0dXJlVmlkZW9JbkdQVVByb2Nlc3NFbmFibGVkKCk7CisgICAgLy8gRklYTUU6IFRo
aXMgaXMgYWxzbyBiZWluZyBwYXNzZWQgb3ZlciB0aGUgdG8gV2ViUHJvY2VzcyB2aWEgdGhlIFBy
ZWZlcmVuY2VzU3RvcmUuCisgICAgcGFyYW1ldGVycy5zaG91bGRSZW5kZXJDYW52YXNJbkdQVVBy
b2Nlc3MgPSBwcmVmZXJlbmNlcygpLnVzZUdQVVByb2Nlc3NGb3JDYW52YXNSZW5kZXJpbmdFbmFi
bGVkKCk7CisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWxzbyBiZWluZyBwYXNzZWQgb3ZlciB0aGUg
dG8gV2ViUHJvY2VzcyB2aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUuCisgICAgcGFyYW1ldGVycy5z
aG91bGRSZW5kZXJET01JbkdQVVByb2Nlc3MgPSBwcmVmZXJlbmNlcygpLnVzZUdQVVByb2Nlc3NG
b3JET01SZW5kZXJpbmdFbmFibGVkKCk7CisgICAgLy8gRklYTUU6IFRoaXMgaXMgYWxzbyBiZWlu
ZyBwYXNzZWQgb3ZlciB0aGUgdG8gV2ViUHJvY2VzcyB2aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUu
CisgICAgcGFyYW1ldGVycy5zaG91bGRQbGF5TWVkaWFJbkdQVVByb2Nlc3MgPSBwcmVmZXJlbmNl
cygpLnVzZUdQVVByb2Nlc3NGb3JNZWRpYUVuYWJsZWQoKTsKKyNpZiBFTkFCTEUoV0VCR0wpCisg
ICAgLy8gRklYTUU6IFRoaXMgaXMgYWxzbyBiZWluZyBwYXNzZWQgb3ZlciB0aGUgdG8gV2ViUHJv
Y2VzcyB2aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUuCisgICAgcGFyYW1ldGVycy5zaG91bGRSZW5k
ZXJXZWJHTEluR1BVUHJvY2VzcyA9IHByZWZlcmVuY2VzKCkudXNlR1BVUHJvY2Vzc0ZvcldlYkdM
RW5hYmxlZCgpOworI2VuZGlmCisKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHNvIGJlaW5nIHBh
c3NlZCBvdmVyIHRoZSB0byBXZWJQcm9jZXNzIHZpYSB0aGUgUHJlZmVyZW5jZXNTdG9yZS4KKyAg
ICBwYXJhbWV0ZXJzLnNob3VsZEVuYWJsZVZQOURlY29kZXIgPSBwcmVmZXJlbmNlcygpLnZwOURl
Y29kZXJFbmFibGVkKCk7CisjaWYgRU5BQkxFKFZQOSkgJiYgUExBVEZPUk0oQ09DT0EpCisgICAg
Ly8gRklYTUU6IFRoaXMgaXMgYWxzbyBiZWluZyBwYXNzZWQgb3ZlciB0aGUgdG8gV2ViUHJvY2Vz
cyB2aWEgdGhlIFByZWZlcmVuY2VzU3RvcmUuCisgICAgcGFyYW1ldGVycy5zaG91bGRFbmFibGVW
UDhEZWNvZGVyID0gcHJlZmVyZW5jZXMoKS52cDhEZWNvZGVyRW5hYmxlZCgpOworICAgIC8vIEZJ
WE1FOiBUaGlzIGlzIGFsc28gYmVpbmcgcGFzc2VkIG92ZXIgdGhlIHRvIFdlYlByb2Nlc3Mgdmlh
IHRoZSBQcmVmZXJlbmNlc1N0b3JlLgorICAgIHBhcmFtZXRlcnMuc2hvdWxkRW5hYmxlVlA5U1dE
ZWNvZGVyID0gcHJlZmVyZW5jZXMoKS52cDlEZWNvZGVyRW5hYmxlZCgpICYmICghV2ViQ29yZTo6
c3lzdGVtSGFzQmF0dGVyeSgpIHx8IHByZWZlcmVuY2VzKCkudnA5U1dEZWNvZGVyRW5hYmxlZE9u
QmF0dGVyeSgpKTsKKyNlbmRpZgorICAgIHBhcmFtZXRlcnMuc2hvdWxkQ2FwdHVyZURpc3BsYXlJ
blVJUHJvY2VzcyA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5jb25maWd1cmF0aW9uKCkuc2hv
dWxkQ2FwdHVyZURpc3BsYXlJblVJUHJvY2VzcygpOworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9N
QUlOUykKKyAgICBwYXJhbWV0ZXJzLmxpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMg
PSBtX2xpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnM7CisjZW5kaWYKKyAgICBwYXJh
bWV0ZXJzLmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkID0gbV9sYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZDsKKyAgICBwYXJhbWV0ZXJzLnNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tp
ZUJsb2NraW5nID0gbV9jb25maWd1cmF0aW9uLT5zaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVC
bG9ja2luZygpOworICAgIHBhcmFtZXRlcnMuY2FuVXNlQ3JlZGVudGlhbFN0b3JhZ2UgPSBtX2Nh
blVzZUNyZWRlbnRpYWxTdG9yYWdlOworCisjaWYgUExBVEZPUk0oR1RLKQorICAgIHBhcmFtZXRl
cnMuZ3RrU2V0dGluZ3MgPSBHdGtTZXR0aW5nc01hbmFnZXI6OnNpbmdsZXRvbigpLnNldHRpbmdz
U3RhdGUoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkgJiYgUExB
VEZPUk0oQ09DT0EpCisgICAgaWYgKG1fcHJlZmVyZW5jZXMtPmF0dGFjaG1lbnRFbGVtZW50RW5h
YmxlZCgpICYmICFwcm9jZXNzLmhhc0lzc3VlZEF0dGFjaG1lbnRFbGVtZW50UmVsYXRlZFNhbmRi
b3hFeHRlbnNpb25zKCkpIHsKKyAgICAgICAgcGFyYW1ldGVycy5hdHRhY2htZW50RWxlbWVudEV4
dGVuc2lvbkhhbmRsZXMgPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVzRm9yTWFjaExv
b2t1cChhdHRhY2htZW50RWxlbWVudFNlcnZpY2VzKCksIHN0ZDo6bnVsbG9wdCk7CisgICAgICAg
IHByb2Nlc3Muc2V0SGFzSXNzdWVkQXR0YWNobWVudEVsZW1lbnRSZWxhdGVkU2FuZGJveEV4dGVu
c2lvbnMoKTsKKyAgICB9CisjZW5kaWYKKworICAgIHBhcmFtZXRlcnMuaHR0cHNVcGdyYWRlRW5h
YmxlZCA9IHByZWZlcmVuY2VzKCkudXBncmFkZUtub3duSG9zdHNUb0hUVFBTRW5hYmxlZCgpID8g
bV9jb25maWd1cmF0aW9uLT5odHRwc1VwZ3JhZGVFbmFibGVkKCkgOiBmYWxzZTsKKworI2lmIFBM
QVRGT1JNKElPUykKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBhbHNvIGJlaW5nIHBhc3NlZCBvdmVy
IHRoZSB0byBXZWJQcm9jZXNzIHZpYSB0aGUgUHJlZmVyZW5jZXNTdG9yZS4KKyAgICBwYXJhbWV0
ZXJzLmFsbG93c0RlcHJlY2F0ZWRTeW5jaHJvbm91c1hNTEh0dHBSZXF1ZXN0RHVyaW5nVW5sb2Fk
ID0gYWxsb3dzRGVwcmVjYXRlZFN5bmNocm9ub3VzWE1MSHR0cFJlcXVlc3REdXJpbmdVbmxvYWQo
KTsKKyNlbmRpZgorICAgIAorI2lmIEVOQUJMRShBUFBfSElHSExJR0hUUykKKyAgICBwYXJhbWV0
ZXJzLmFwcEhpZ2hsaWdodHNWaXNpYmxlID0gYXBwSGlnaGxpZ2h0c1Zpc2liaWxpdHkoKSA/IEhp
Z2hsaWdodFZpc2liaWxpdHk6OlZpc2libGUgOiBIaWdobGlnaHRWaXNpYmlsaXR5OjpIaWRkZW47
CisjZW5kaWYKKworI2lmIEhBVkUoVE9VQ0hfQkFSKQorICAgIHBhcmFtZXRlcnMucmVxdWlyZXNV
c2VyQWN0aW9uRm9yRWRpdGluZ0NvbnRyb2xzTWFuYWdlciA9IG1fY29uZmlndXJhdGlvbi0+cmVx
dWlyZXNVc2VyQWN0aW9uRm9yRWRpdGluZ0NvbnRyb2xzTWFuYWdlcigpOworI2VuZGlmCisKKyAg
ICByZXR1cm4gcGFyYW1ldGVyczsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmlzSklURW5hYmxl
ZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorewor
ICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUHJvY2Vzczo6SXNKSVRFbmFibGVk
KCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCAwKTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoY29uc3QgTGF5ZXJUcmVlQ29udGV4
dCYgbGF5ZXJUcmVlQ29udGV4dCkKK3sKKyNpZiBQTEFURk9STShNQUMpCisgICAgQVNTRVJUKG1f
ZHJhd2luZ0FyZWEtPnR5cGUoKSA9PSBEcmF3aW5nQXJlYVR5cGVUaWxlZENvcmVBbmltYXRpb24p
OworI2VuZGlmCisgICAgcGFnZUNsaWVudCgpLmVudGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01v
ZGUobGF5ZXJUcmVlQ29udGV4dCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRGaXJzdExh
eWVyRmx1c2goY29uc3QgTGF5ZXJUcmVlQ29udGV4dCYgbGF5ZXJUcmVlQ29udGV4dCkKK3sKKyNp
ZiBQTEFURk9STShNQUMpCisgICAgQVNTRVJUKG1fZHJhd2luZ0FyZWEtPnR5cGUoKSA9PSBEcmF3
aW5nQXJlYVR5cGVUaWxlZENvcmVBbmltYXRpb24pOworI2VuZGlmCisgICAgcGFnZUNsaWVudCgp
LmRpZEZpcnN0TGF5ZXJGbHVzaChsYXllclRyZWVDb250ZXh0KTsKKworICAgIGlmIChtX2xhc3RT
dXNwZW5kZWRQYWdlKQorICAgICAgICBtX2xhc3RTdXNwZW5kZWRQYWdlLT5wYWdlRGlkRmlyc3RM
YXllckZsdXNoKCk7CisgICAgbV9zdXNwZW5kZWRQYWdlS2VwdFRvUHJldmVudEZsYXNoaW5nID0g
bnVsbHB0cjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0
aW5nTW9kZSgpCit7CisgICAgcGFnZUNsaWVudCgpLmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5n
TW9kZSgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6dXBkYXRlQWNjZWxlcmF0ZWRDb21wb3Np
dGluZ01vZGUoY29uc3QgTGF5ZXJUcmVlQ29udGV4dCYgbGF5ZXJUcmVlQ29udGV4dCkKK3sKKyAg
ICBwYWdlQ2xpZW50KCkudXBkYXRlQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUobGF5ZXJUcmVl
Q29udGV4dCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpiYWNrRm9yd2FyZENsZWFyKCkKK3sK
KyAgICBtX2JhY2tGb3J3YXJkTGlzdC0+Y2xlYXIoKTsKK30KKworI2lmIEVOQUJMRShHQU1FUEFE
KQorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2FtZXBhZEFjdGl2aXR5KGNvbnN0IFZlY3RvcjxHYW1l
cGFkRGF0YT4mIGdhbWVwYWREYXRhcywgRXZlbnRNYWtlc0dhbWVwYWRzVmlzaWJsZSBldmVudFZp
c2liaWxpdHkpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6R2FtZXBhZEFjdGl2aXR5
KGdhbWVwYWREYXRhcywgZXZlbnRWaXNpYmlsaXR5KSk7Cit9CisKKyNlbmRpZgorCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHkoUmVmPEF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlUHJveHk+JiYgYXV0aGVudGljYXRpb25DaGFsbGVuZ2UsIE5l
Z290aWF0ZWRMZWdhY3lUTFMgbmVnb3RpYXRlZExlZ2FjeVRMUykKK3sKKyAgICBpZiAobmVnb3Rp
YXRlZExlZ2FjeVRMUyA9PSBOZWdvdGlhdGVkTGVnYWN5VExTOjpZZXMpIHsKKyAgICAgICAgbV9u
YXZpZ2F0aW9uQ2xpZW50LT5zaG91bGRBbGxvd0xlZ2FjeVRMUygqdGhpcywgYXV0aGVudGljYXRp
b25DaGFsbGVuZ2UuZ2V0KCksIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyks
IGF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlXSAoYm9vbCBzaG91bGRBbGxvd0xlZ2FjeVRMUykgewor
ICAgICAgICAgICAgaWYgKHNob3VsZEFsbG93TGVnYWN5VExTKQorICAgICAgICAgICAgICAgIG1f
bmF2aWdhdGlvbkNsaWVudC0+ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKCp0aGlz
LCBhdXRoZW50aWNhdGlvbkNoYWxsZW5nZS5nZXQoKSk7CisgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgYXV0aGVudGljYXRpb25DaGFsbGVuZ2UtPmxpc3RlbmVyKCkuY29tcGxldGVD
aGFsbGVuZ2UoQXV0aGVudGljYXRpb25DaGFsbGVuZ2VEaXNwb3NpdGlvbjo6Q2FuY2VsKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgbV9uYXZpZ2F0aW9uQ2xpZW50
LT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoKnRoaXMsIGF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlLmdldCgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6Om5lZ290aWF0ZWRMZWdh
Y3lUTFMoKQoreworICAgIGF1dG8gdHJhbnNhY3Rpb24gPSBtX3BhZ2VMb2FkU3RhdGUudHJhbnNh
Y3Rpb24oKTsKKyAgICBtX3BhZ2VMb2FkU3RhdGUubmVnb3RpYXRlZExlZ2FjeVRMUyh0cmFuc2Fj
dGlvbik7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWROZWdvdGlhdGVNb2Rlcm5UTFMoY29u
c3QgVVJMJiB1cmwpCit7CisgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT5kaWROZWdvdGlhdGVNb2Rl
cm5UTFModXJsKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmV4Y2VlZGVkRGF0YWJhc2VRdW90
YShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiBvcmlnaW5JZGVudGlmaWVy
LCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgU3RyaW5nJiBkaXNwbGF5TmFtZSwg
dWludDY0X3QgY3VycmVudFF1b3RhLCB1aW50NjRfdCBjdXJyZW50T3JpZ2luVXNhZ2UsIHVpbnQ2
NF90IGN1cnJlbnREYXRhYmFzZVVzYWdlLCB1aW50NjRfdCBleHBlY3RlZFVzYWdlLCBNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpFeGNlZWRlZERhdGFiYXNlUXVvdGE6OkRlbGF5ZWRSZXBseSYmIHJl
cGx5KQoreworICAgIHJlcXVlc3RTdG9yYWdlU3BhY2UoZnJhbWVJRCwgb3JpZ2luSWRlbnRpZmll
ciwgZGF0YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdlLCBbcmVwbHkgPSBXVEZN
b3ZlKHJlcGx5KV0oYXV0byBxdW90YSkgbXV0YWJsZSB7CisgICAgICAgIHJlcGx5KHF1b3RhKTsK
KyAgICB9KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RTdG9yYWdlU3BhY2UoRnJh
bWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFN0cmluZyYgb3JpZ2luSWRlbnRpZmllciwgY29u
c3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFN0cmluZyYgZGlzcGxheU5hbWUsIHVpbnQ2
NF90IGN1cnJlbnRRdW90YSwgdWludDY0X3QgY3VycmVudE9yaWdpblVzYWdlLCB1aW50NjRfdCBj
dXJyZW50RGF0YWJhc2VVc2FnZSwgdWludDY0X3QgZXhwZWN0ZWRVc2FnZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCh1aW50NjRfdCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgV0VCUEFH
RVBST1hZX1JFTEVBU0VfTE9HKFN0b3JhZ2UsICJyZXF1ZXN0U3RvcmFnZVNwYWNlIGZvciBmcmFt
ZSAlIiBQUkl1NjQgIiwgY3VycmVudCBxdW90YSAlIiBQUkl1NjQgIiBjdXJyZW50IHVzYWdlICUi
IFBSSXU2NCAiIGV4cGVjdGVkIHVzYWdlICUiIFBSSXU2NCwgZnJhbWVJRC50b1VJbnQ2NCgpLCBj
dXJyZW50UXVvdGEsIGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdlKTsKKworICAg
IFN0b3JhZ2VSZXF1ZXN0czo6c2luZ2xldG9uKCkucHJvY2Vzc09yQXBwZW5kKFt0aGlzLCBwcm90
ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIHBhZ2VVUkwgPSBjdXJyZW50VVJMKCksIGZyYW1l
SUQsIG9yaWdpbklkZW50aWZpZXIsIGRhdGFiYXNlTmFtZSwgZGlzcGxheU5hbWUsIGN1cnJlbnRR
dW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRV
c2FnZSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBt
dXRhYmxlIHsKKyAgICAgICAgdGhpcy0+bWFrZVN0b3JhZ2VTcGFjZVJlcXVlc3QoZnJhbWVJRCwg
b3JpZ2luSWRlbnRpZmllciwgZGF0YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgY3VycmVudFF1b3Rh
LCBjdXJyZW50T3JpZ2luVXNhZ2UsIGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdl
LCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGZyYW1lSUQs
IHBhZ2VVUkwgPSBXVEZNb3ZlKHBhZ2VVUkwpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpLCBjdXJyZW50UXVvdGFdKGF1dG8gcXVvdGEpIG11dGFibGUgewor
CisgICAgICAgICAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coU3RvcmFnZSwgInJlcXVlc3RT
dG9yYWdlU3BhY2UgcmVzcG9uc2UgZm9yIGZyYW1lICUiIFBSSXU2NCAiLCBxdW90YSAlIiBQUkl1
NjQsIGZyYW1lSUQudG9VSW50NjQoKSwgcXVvdGEpOworICAgICAgICAgICAgVU5VU0VEX1ZBUklB
QkxFKGZyYW1lSUQpOworCisgICAgICAgICAgICBpZiAocXVvdGEgPD0gY3VycmVudFF1b3RhICYm
IHRoaXMtPmN1cnJlbnRVUkwoKSA9PSBwYWdlVVJMKSB7CisgICAgICAgICAgICAgICAgV0VCUEFH
RVBST1hZX1JFTEVBU0VfTE9HKFN0b3JhZ2UsICJzdG9yYWdlIHNwYWNlIGluY3JlYXNlIGRlbmll
ZCIpOworICAgICAgICAgICAgICAgIG1faXNRdW90YUluY3JlYXNlRGVuaWVkID0gIHRydWU7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihxdW90YSk7CisgICAg
ICAgICAgICBTdG9yYWdlUmVxdWVzdHM6OnNpbmdsZXRvbigpLnByb2Nlc3NOZXh0SWZBbnkoKTsK
KyAgICAgICAgfSk7CisgICAgfSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjptYWtlU3RvcmFn
ZVNwYWNlUmVxdWVzdChGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiBvcmln
aW5JZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgU3RyaW5nJiBk
aXNwbGF5TmFtZSwgdWludDY0X3QgY3VycmVudFF1b3RhLCB1aW50NjRfdCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIHVpbnQ2NF90IGN1cnJlbnREYXRhYmFzZVVzYWdlLCB1aW50NjRfdCBleHBlY3RlZFVz
YWdlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90KT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBpZiAobV9pc1F1b3RhSW5jcmVhc2VEZW5pZWQpIHsKKyAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoY3VycmVudFF1b3RhKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAg
ICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisgICAgYXV0byBvcmlnaW5EYXRh
ID0gU2VjdXJpdHlPcmlnaW5EYXRhOjpmcm9tRGF0YWJhc2VJZGVudGlmaWVyKG9yaWdpbklkZW50
aWZpZXIpOworICAgIGlmIChvcmlnaW5EYXRhICE9IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVVS
TChVUkwgeyB7IH0sIGN1cnJlbnRVUkwoKSB9KSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxl
cihjdXJyZW50UXVvdGEpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBvcmln
aW4gPSBBUEk6OlNlY3VyaXR5T3JpZ2luOjpjcmVhdGUob3JpZ2luRGF0YS0+c2VjdXJpdHlPcmln
aW4oKSk7CisgICAgbV91aUNsaWVudC0+ZXhjZWVkZWREYXRhYmFzZVF1b3RhKHRoaXMsIGZyYW1l
LCBvcmlnaW4ucHRyKCksIGRhdGFiYXNlTmFtZSwgZGlzcGxheU5hbWUsIGN1cnJlbnRRdW90YSwg
Y3VycmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRVc2FnZSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVh
Y2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShjb25zdCBTdHJpbmcmIG9yaWdpbklkZW50
aWZpZXIsIHVpbnQ2NF90IGN1cnJlbnRRdW90YSwgdWludDY0X3QgdG90YWxCeXRlc05lZWRlZCwg
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90
YTo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCit7CisgICAgYXV0byBzZWN1cml0eU9yaWdpbkRhdGEg
PSBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21EYXRhYmFzZUlkZW50aWZpZXIob3JpZ2luSWRlbnRp
Zmllcik7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIHNlY3VyaXR5T3JpZ2luRGF0YSk7
CisKKyAgICBSZWY8U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luID0gc2VjdXJpdHlPcmln
aW5EYXRhLT5zZWN1cml0eU9yaWdpbigpOworICAgIG1fdWlDbGllbnQtPnJlYWNoZWRBcHBsaWNh
dGlvbkNhY2hlT3JpZ2luUXVvdGEodGhpcywgc2VjdXJpdHlPcmlnaW4uZ2V0KCksIGN1cnJlbnRR
dW90YSwgdG90YWxCeXRlc05lZWRlZCwgV1RGTW92ZShyZXBseSkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6cmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEdlb2xvY2F0aW9u
SWRlbnRpZmllciBnZW9sb2NhdGlvbklELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvKQorewor
ICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZUluZm8uZnJhbWVJRCk7CisgICAgYXV0
byogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKCpmcmFtZUluZm8uZnJhbWVJRCk7CisgICAg
TUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGZyYW1lKTsKKworICAgIGF1dG8gcmVxdWVzdCA9IG1f
Z2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuY3JlYXRlUmVxdWVzdChnZW9sb2Nh
dGlvbklEKTsKKyAgICBGdW5jdGlvbjx2b2lkKGJvb2wpPiBjb21wbGV0aW9uSGFuZGxlciA9IFty
ZXF1ZXN0ID0gV1RGTW92ZShyZXF1ZXN0KV0oYm9vbCBhbGxvd2VkKSB7CisgICAgICAgIGlmIChh
bGxvd2VkKQorICAgICAgICAgICAgcmVxdWVzdC0+YWxsb3coKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgcmVxdWVzdC0+ZGVueSgpOworICAgIH07CisKKyAgICAvLyBGSVhNRTogT25jZSBp
T1MgbWlncmF0ZXMgdG8gdGhlIG5ldyBXS1VJRGVsZWdhdGUgU1BJLCBjbGVhbiB0aGlzIHVwCisg
ICAgLy8gYW5kIG1ha2UgaXQgb25lIFVJQ2xpZW50IGNhbGwgdGhhdCBjYWxscyB0aGUgY29tcGxl
dGlvbkhhbmRsZXIgd2l0aCBmYWxzZQorICAgIC8vIGlmIHRoZXJlIGlzIG5vIGRlbGVnYXRlIGlu
c3RlYWQgb2YgcmV0dXJuaW5nIHRoZSBjb21wbGV0aW9uSGFuZGxlcgorICAgIC8vIGZvciBvdGhl
ciBjb2RlIHBhdGhzIHRvIHRyeS4KKyAgICBtX3VpQ2xpZW50LT5kZWNpZGVQb2xpY3lGb3JHZW9s
b2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0KCp0aGlzLCAqZnJhbWUsIGZyYW1lSW5mbywgY29tcGxl
dGlvbkhhbmRsZXIpOworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKGNvbXBsZXRp
b25IYW5kbGVyKQorICAgICAgICBwYWdlQ2xpZW50KCkuZGVjaWRlUG9saWN5Rm9yR2VvbG9jYXRp
b25QZXJtaXNzaW9uUmVxdWVzdCgqZnJhbWUsIGZyYW1lSW5mbywgY29tcGxldGlvbkhhbmRsZXIp
OworI2VuZGlmCisgICAgaWYgKGNvbXBsZXRpb25IYW5kbGVyKQorICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcihmYWxzZSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXZva2VHZW9sb2NhdGlv
bkF1dGhvcml6YXRpb25Ub2tlbihjb25zdCBTdHJpbmcmIGF1dGhvcml6YXRpb25Ub2tlbikKK3sK
KyAgICBtX2dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLnJldm9rZUF1dGhvcml6
YXRpb25Ub2tlbihhdXRob3JpemF0aW9uVG9rZW4pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
cmVxdWVzdFBlcm1pc3Npb24oY29uc3QgQ2xpZW50T3JpZ2luJiwgY29uc3QgUGVybWlzc2lvbkRl
c2NyaXB0b3ImLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFBlcm1pc3Npb25TdGF0ZSk+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgLy8gRklYTUU6IFNob3cgYSBwcm9tcHQgZm9yIHVzZXIg
aW5wdXQuCisgICAgY29tcGxldGlvbkhhbmRsZXIoUGVybWlzc2lvblN0YXRlOjpHcmFudGVkKTsK
K30KKworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCitVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dE1hbmFnZXJQcm94eSYgV2ViUGFnZVByb3h5Ojp1c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1h
bmFnZXIoKQoreworICAgIGlmIChtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcikK
KyAgICAgICAgcmV0dXJuICptX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjsKKwor
ICAgIG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyID0gbWFrZVVuaXF1ZTxVc2Vy
TWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eT4oKnRoaXMpOworICAgIHJldHVybiAq
bV91c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpzZXRNb2NrQ2FwdHVyZURldmljZXNFbmFibGVkT3ZlcnJpZGUoc3RkOjpvcHRpb25hbDxi
b29sPiBlbmFibGVkKQoreworICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigp
LnNldE1vY2tDYXB0dXJlRGV2aWNlc0VuYWJsZWRPdmVycmlkZShlbmFibGVkKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OndpbGxTdGFydENhcHR1cmUoY29uc3QgVXNlck1lZGlhUGVybWlzc2lv
blJlcXVlc3RQcm94eSYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxi
YWNrKQoreworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAgICBpZiAoIXByZWZlcmVuY2VzKCku
Y2FwdHVyZVZpZGVvSW5HUFVQcm9jZXNzRW5hYmxlZCgpICYmICFwcmVmZXJlbmNlcygpLmNhcHR1
cmVBdWRpb0luR1BVUHJvY2Vzc0VuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuIGNhbGxiYWNrKCk7
CisKKyAgICBhdXRvJiBncHVQcm9jZXNzID0gcHJvY2VzcygpLnByb2Nlc3NQb29sKCkuZW5zdXJl
R1BVUHJvY2VzcygpOworICAgIGdwdVByb2Nlc3MudXBkYXRlQ2FwdHVyZUFjY2VzcyhyZXF1ZXN0
LnJlcXVpcmVzQXVkaW9DYXB0dXJlKCksIHJlcXVlc3QucmVxdWlyZXNWaWRlb0NhcHR1cmUoKSwg
cmVxdWVzdC5yZXF1aXJlc0Rpc3BsYXlDYXB0dXJlKCksIG1fcHJvY2Vzcy0+Y29yZVByb2Nlc3NJ
ZGVudGlmaWVyKCksIFdURk1vdmUoY2FsbGJhY2spKTsKKyAgICBncHVQcm9jZXNzLnVwZGF0ZUNh
cHR1cmVPcmlnaW4ocmVxdWVzdC50b3BMZXZlbERvY3VtZW50U2VjdXJpdHlPcmlnaW4oKS5kYXRh
KCksIG1fcHJvY2Vzcy0+Y29yZVByb2Nlc3NJZGVudGlmaWVyKCkpOworI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCisgICAgZ3B1UHJvY2Vzcy5zZXRPcmllbnRhdGlvbkZvck1lZGlhQ2FwdHVyZSht
X2RldmljZU9yaWVudGF0aW9uKTsKKyNlbmRpZgorI2Vsc2UKKyAgICBjYWxsYmFjaygpOworI2Vu
ZGlmCit9CisKKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZShVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwg
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0
YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9y
aWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRPcmlnaW5EYXRhLCBXZWJDb3JlOjpNZWRpYVN0cmVh
bVJlcXVlc3QmJiByZXF1ZXN0KQoreworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgTUVT
U0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1fcHJvY2Vzcy0+d2ViRnJhbWUoZnJhbWVJRCkpOworCisg
ICAgdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKCkucmVxdWVzdFVzZXJNZWRpYVBl
cm1pc3Npb25Gb3JGcmFtZSh1c2VyTWVkaWFJRCwgZnJhbWVJRCwgdXNlck1lZGlhRG9jdW1lbnRP
cmlnaW5EYXRhLnNlY3VyaXR5T3JpZ2luKCksIHRvcExldmVsRG9jdW1lbnRPcmlnaW5EYXRhLnNl
Y3VyaXR5T3JpZ2luKCksIFdURk1vdmUocmVxdWVzdCkpOworI2Vsc2UKKyAgICBVTlVTRURfUEFS
QU0odXNlck1lZGlhSUQpOworICAgIFVOVVNFRF9QQVJBTShmcmFtZUlEKTsKKyAgICBVTlVTRURf
UEFSQU0odXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhKTsKKyAgICBVTlVTRURfUEFSQU0odG9w
TGV2ZWxEb2N1bWVudE9yaWdpbkRhdGEpOworICAgIFVOVVNFRF9QQVJBTShyZXF1ZXN0KTsKKyNl
bmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZW51bWVyYXRlTWVkaWFEZXZpY2VzRm9yRnJh
bWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
RGF0YSYgdXNlck1lZGlhRG9jdW1lbnRPcmlnaW5EYXRhLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0
eU9yaWdpbkRhdGEmIHRvcExldmVsRG9jdW1lbnRPcmlnaW5EYXRhLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGNvbnN0IFZlY3RvcjxDYXB0dXJlRGV2aWNlPiYsIGNvbnN0IFN0cmluZyYpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgV2ViRnJh
bWVQcm94eSogZnJhbWUgPSBtX3Byb2Nlc3MtPndlYkZyYW1lKGZyYW1lSUQpOworICAgIE1FU1NB
R0VfQ0hFQ0sobV9wcm9jZXNzLCBmcmFtZSk7CisKKyAgICB1c2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXIoKS5lbnVtZXJhdGVNZWRpYURldmljZXNGb3JGcmFtZShmcmFtZUlELCB1c2Vy
TWVkaWFEb2N1bWVudE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgdG9wTGV2ZWxEb2N1bWVu
dE9yaWdpbkRhdGEuc2VjdXJpdHlPcmlnaW4oKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0oZnJhbWVJRCk7CisgICAgVU5VU0VEX1BBUkFNKHVz
ZXJNZWRpYURvY3VtZW50T3JpZ2luRGF0YSk7CisgICAgVU5VU0VEX1BBUkFNKHRvcExldmVsRG9j
dW1lbnRPcmlnaW5EYXRhKTsKKyAgICBVTlVTRURfUEFSQU0oY29tcGxldGlvbkhhbmRsZXIpOwor
I2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzeW5jSWZNb2NrRGV2aWNlc0VuYWJsZWRD
aGFuZ2VkKCkKK3sKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHVzZXJNZWRpYVBlcm1p
c3Npb25SZXF1ZXN0TWFuYWdlcigpLnN5bmNXaXRoV2ViQ29yZVByZWZzKCk7CisjZW5kaWYKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmJlZ2luTW9uaXRvcmluZ0NhcHR1cmVEZXZpY2VzKCkKK3sK
KyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIHVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlcigpLnN5bmNXaXRoV2ViQ29yZVByZWZzKCk7CisgICAgVXNlck1lZGlhUHJvY2Vzc01h
bmFnZXI6OnNpbmdsZXRvbigpLmJlZ2luTW9uaXRvcmluZ0NhcHR1cmVEZXZpY2VzKCk7CisjZW5k
aWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmNsZWFyVXNlck1lZGlhU3RhdGUoKQoreworI2lm
IEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAgaWYgKG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVl
c3RNYW5hZ2VyKQorICAgICAgICBtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci0+
Y2xlYXJDYWNoZWRTdGF0ZSgpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1
ZXN0TWVkaWFLZXlTeXN0ZW1QZXJtaXNzaW9uRm9yRnJhbWUoTWVkaWFLZXlTeXN0ZW1SZXF1ZXN0
SWRlbnRpZmllciBtZWRpYUtleVN5c3RlbUlELCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29u
c3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BMZXZlbERvY3VtZW50T3JpZ2luRGF0
YSwgY29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0pCit7CisjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJ
QSkKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgbV9wcm9jZXNzLT53ZWJGcmFtZShmcmFt
ZUlEKSk7CisKKyAgICBhdXRvIG9yaWdpbiA9IEFQSTo6U2VjdXJpdHlPcmlnaW46OmNyZWF0ZSh0
b3BMZXZlbERvY3VtZW50T3JpZ2luRGF0YS5zZWN1cml0eU9yaWdpbigpKTsKKyAgICBhdXRvIHJl
cXVlc3QgPSBtZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLmNyZWF0ZVJl
cXVlc3RGb3JGcmFtZShtZWRpYUtleVN5c3RlbUlELCBmcmFtZUlELCB0b3BMZXZlbERvY3VtZW50
T3JpZ2luRGF0YS5zZWN1cml0eU9yaWdpbigpLCBrZXlTeXN0ZW0pOworICAgIG1fdWlDbGllbnQt
PmRlY2lkZVBvbGljeUZvck1lZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3QoKnRoaXMsIG9y
aWdpbiwga2V5U3lzdGVtLCBbcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCldKGJvb2wgYWxsb3dl
ZCkgeworICAgICAgICBpZiAoYWxsb3dlZCkKKyAgICAgICAgICAgIHJlcXVlc3QtPmFsbG93KCk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJlcXVlc3QtPmRlbnkoKTsKKyAgICB9KTsKKyNl
bHNlCisgICAgVU5VU0VEX1BBUkFNKG1lZGlhS2V5U3lzdGVtSUQpOworICAgIFVOVVNFRF9QQVJB
TShmcmFtZUlEKTsKKyAgICBVTlVTRURfUEFSQU0odG9wTGV2ZWxEb2N1bWVudE9yaWdpbkRhdGEp
OworICAgIFVOVVNFRF9QQVJBTShrZXlTeXN0ZW0pOworI2VuZGlmCit9CisKKyNpZiBFTkFCTEUo
REVWSUNFX09SSUVOVEFUSU9OKQordm9pZCBXZWJQYWdlUHJveHk6OnNob3VsZEFsbG93RGV2aWNl
T3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3MoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1l
SW5mb0RhdGEmJiBmcmFtZUluZm8sIGJvb2wgbWF5UHJvbXB0LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKERldmljZU9yaWVudGF0aW9uT3JNb3Rpb25QZXJtaXNzaW9uU3RhdGUpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0gbV9wcm9jZXNzLT53ZWJG
cmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgZnJhbWUpOworCisg
ICAgd2Vic2l0ZURhdGFTdG9yZSgpLmRldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzQ29u
dHJvbGxlcigpLnNob3VsZEFsbG93QWNjZXNzKCp0aGlzLCAqZnJhbWUsIFdURk1vdmUoZnJhbWVJ
bmZvKSwgbWF5UHJvbXB0LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisjZW5kaWYK
KworCisjaWYgRU5BQkxFKElNQUdFX0FOQUxZU0lTKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVx
dWVzdFRleHRSZWNvZ25pdGlvbihjb25zdCBVUkwmIGltYWdlVVJMLCBjb25zdCBTaGFyZWFibGVC
aXRtYXA6OkhhbmRsZSYgaW1hZ2VEYXRhLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OlRleHRSZWNvZ25pdGlvblJlc3VsdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBw
YWdlQ2xpZW50KCkucmVxdWVzdFRleHRSZWNvZ25pdGlvbihpbWFnZVVSTCwgaW1hZ2VEYXRhLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpjb21w
dXRlSGFzSW1hZ2VBbmFseXNpc1Jlc3VsdHMoY29uc3QgVVJMJiBpbWFnZVVSTCwgU2hhcmVhYmxl
Qml0bWFwJiBpbWFnZUJpdG1hcCwgSW1hZ2VBbmFseXNpc1R5cGUgdHlwZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uKQoreworICAgIHBhZ2VDbGllbnQoKS5jb21w
dXRlSGFzSW1hZ2VBbmFseXNpc1Jlc3VsdHMoaW1hZ2VVUkwsIGltYWdlQml0bWFwLCB0eXBlLCBX
VEZNb3ZlKGNvbXBsZXRpb24pKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZVdpdGhU
ZXh0UmVjb2duaXRpb25SZXN1bHQoVGV4dFJlY29nbml0aW9uUmVzdWx0JiYgcmVzdWx0cywgY29u
c3QgRWxlbWVudENvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZsb2F0UG9pbnQmIGxvY2F0aW9uLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFRleHRSZWNvZ25pdGlvblVwZGF0ZVJlc3VsdCk+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAg
ICAgIGNvbXBsZXRpb25IYW5kbGVyKFRleHRSZWNvZ25pdGlvblVwZGF0ZVJlc3VsdDo6Tm9UZXh0
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNz
YWdlczo6V2ViUGFnZTo6VXBkYXRlV2l0aFRleHRSZWNvZ25pdGlvblJlc3VsdChXVEZNb3ZlKHJl
c3VsdHMpLCBjb250ZXh0LCBsb2NhdGlvbiksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
K30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9BTkFMWVNJUykKKworI2lmIEVOQUJMRShFTkNS
WVBURURfTUVESUEpCitNZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
JiBXZWJQYWdlUHJveHk6Om1lZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKCkK
K3sKKyAgICBpZiAobV9tZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcikKKyAg
ICAgICAgcmV0dXJuICptX21lZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOwor
CisgICAgbV9tZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlciA9IG1ha2VVbmlx
dWU8TWVkaWFLZXlTeXN0ZW1QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eT4oKnRoaXMpOwor
ICAgIHJldHVybiAqbV9tZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjsKK30K
KyNlbmRpZgorCisjaWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX0NPTlRFWFRfTUVOVVMpICYmIFVT
RShVSUNPTlRFWFRNRU5VKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd01lZGlhQ29udHJvbHND
b250ZXh0TWVudShGbG9hdFJlY3QmJiB0YXJnZXRGcmFtZSwgVmVjdG9yPE1lZGlhQ29udHJvbHND
b250ZXh0TWVudUl0ZW0+JiYgaXRlbXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTWVkaWFDb250
cm9sc0NvbnRleHRNZW51SXRlbTo6SUQpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHBh
Z2VDbGllbnQoKS5zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KFdURk1vdmUodGFyZ2V0RnJh
bWUpLCBXVEZNb3ZlKGl0ZW1zKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCisj
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX0NPTlRST0xTX0NPTlRFWFRfTUVOVVMpICYmIFVTRShVSUNP
TlRFWFRNRU5VKQorCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0Tm90aWZpY2F0aW9uUGVy
bWlzc2lvbihjb25zdCBTdHJpbmcmIG9yaWdpblN0cmluZywgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sIGFsbG93ZWQpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gb3JpZ2lu
ID0gQVBJOjpTZWN1cml0eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmluZyhvcmlnaW5TdHJpbmcpOwor
ICAgIG1fdWlDbGllbnQtPmRlY2lkZVBvbGljeUZvck5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1
ZXN0KCp0aGlzLCBvcmlnaW4uZ2V0KCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OnNob3dOb3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiB0aXRs
ZSwgY29uc3QgU3RyaW5nJiBib2R5LCBjb25zdCBTdHJpbmcmIGljb25VUkwsIGNvbnN0IFN0cmlu
ZyYgdGFnLCBjb25zdCBTdHJpbmcmIGxhbmcsIFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkRpcmVjdGlv
biBkaXIsIGNvbnN0IFN0cmluZyYgb3JpZ2luU3RyaW5nLCB1aW50NjRfdCBub3RpZmljYXRpb25J
RCkKK3sKKyAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkuc3VwcGxlbWVudDxXZWJOb3RpZmlj
YXRpb25NYW5hZ2VyUHJveHk+KCktPnNob3codGhpcywgdGl0bGUsIGJvZHksIGljb25VUkwsIHRh
ZywgbGFuZywgZGlyLCBvcmlnaW5TdHJpbmcsIG5vdGlmaWNhdGlvbklEKTsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmNhbmNlbE5vdGlmaWNhdGlvbih1aW50NjRfdCBub3RpZmljYXRpb25JRCkK
K3sKKyAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkuc3VwcGxlbWVudDxXZWJOb3RpZmljYXRp
b25NYW5hZ2VyUHJveHk+KCktPmNhbmNlbCh0aGlzLCBub3RpZmljYXRpb25JRCk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpjbGVhck5vdGlmaWNhdGlvbnMoY29uc3QgVmVjdG9yPHVpbnQ2NF90
PiYgbm90aWZpY2F0aW9uSURzKQoreworICAgIG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5zdXBw
bGVtZW50PFdlYk5vdGlmaWNhdGlvbk1hbmFnZXJQcm94eT4oKS0+Y2xlYXJOb3RpZmljYXRpb25z
KHRoaXMsIG5vdGlmaWNhdGlvbklEcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWREZXN0
cm95Tm90aWZpY2F0aW9uKHVpbnQ2NF90IG5vdGlmaWNhdGlvbklEKQoreworICAgIG1fcHJvY2Vz
cy0+cHJvY2Vzc1Bvb2woKS5zdXBwbGVtZW50PFdlYk5vdGlmaWNhdGlvbk1hbmFnZXJQcm94eT4o
KS0+ZGlkRGVzdHJveU5vdGlmaWNhdGlvbih0aGlzLCBub3RpZmljYXRpb25JRCk7Cit9CisKK2Zs
b2F0IFdlYlBhZ2VQcm94eTo6aGVhZGVySGVpZ2h0Rm9yUHJpbnRpbmcoV2ViRnJhbWVQcm94eSYg
ZnJhbWUpCit7CisgICAgaWYgKGZyYW1lLmlzRGlzcGxheWluZ1BERkRvY3VtZW50KCkpCisgICAg
ICAgIHJldHVybiAwOworICAgIHJldHVybiBtX3VpQ2xpZW50LT5oZWFkZXJIZWlnaHQoKnRoaXMs
IGZyYW1lKTsKK30KKworZmxvYXQgV2ViUGFnZVByb3h5Ojpmb290ZXJIZWlnaHRGb3JQcmludGlu
ZyhXZWJGcmFtZVByb3h5JiBmcmFtZSkKK3sKKyAgICBpZiAoZnJhbWUuaXNEaXNwbGF5aW5nUERG
RG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIG1fdWlDbGllbnQtPmZv
b3RlckhlaWdodCgqdGhpcywgZnJhbWUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZHJhd0hl
YWRlckZvclByaW50aW5nKFdlYkZyYW1lUHJveHkmIGZyYW1lLCBGbG9hdFJlY3QmJiByZWN0KQor
eworICAgIGlmIChmcmFtZS5pc0Rpc3BsYXlpbmdQREZEb2N1bWVudCgpKQorICAgICAgICByZXR1
cm47CisgICAgbV91aUNsaWVudC0+ZHJhd0hlYWRlcigqdGhpcywgZnJhbWUsIFdURk1vdmUocmVj
dCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZHJhd0Zvb3RlckZvclByaW50aW5nKFdlYkZy
YW1lUHJveHkmIGZyYW1lLCBGbG9hdFJlY3QmJiByZWN0KQoreworICAgIGlmIChmcmFtZS5pc0Rp
c3BsYXlpbmdQREZEb2N1bWVudCgpKQorICAgICAgICByZXR1cm47CisgICAgbV91aUNsaWVudC0+
ZHJhd0Zvb3RlcigqdGhpcywgZnJhbWUsIFdURk1vdmUocmVjdCkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6cnVuTW9kYWwoKQoreworICAgIC8vIFNpbmNlIHJ1bk1vZGFsKCkgY2FuIChhbmQg
cHJvYmFibHkgd2lsbCkgc3BpbiBhIG5lc3RlZCBydW4gbG9vcCB3ZSBuZWVkIHRvIHR1cm4gb2Zm
IHRoZSByZXNwb25zaXZlbmVzcyB0aW1lci4KKyAgICBtX3Byb2Nlc3MtPnN0b3BSZXNwb25zaXZl
bmVzc1RpbWVyKCk7CisKKyAgICAvLyBPdXIgQ29ubmVjdGlvbidzIHJ1biBsb29wIG1pZ2h0IGhh
dmUgbW9yZSBtZXNzYWdlcyB3YWl0aW5nIHRvIGJlIGhhbmRsZWQgYWZ0ZXIgdGhpcyBSdW5Nb2Rh
bCBtZXNzYWdlLgorICAgIC8vIFRvIG1ha2Ugc3VyZSB0aGV5IGFyZSBoYW5kbGVkIGluc2lkZSBv
ZiB0aGUgbmVzdGVkIG1vZGFsIHJ1biBsb29wIHdlIG11c3QgZmlyc3Qgc2lnbmFsIHRoZSBDb25u
ZWN0aW9uJ3MKKyAgICAvLyBydW4gbG9vcCBzbyB3ZSdyZSBndWFyYW50ZWVkIHRoYXQgaXQgaGFz
IGEgY2hhbmNlIHRvIHdha2UgdXAuCisgICAgLy8gU2VlIGh0dHA6Ly93ZWJraXQub3JnL2IvODk1
OTAgZm9yIG1vcmUgZGlzY3Vzc2lvbi4KKyAgICBtX3Byb2Nlc3MtPmNvbm5lY3Rpb24oKS0+d2Fr
ZVVwUnVuTG9vcCgpOworCisgICAgbV91aUNsaWVudC0+cnVuTW9kYWwoKnRoaXMpOworfQorCit2
b2lkIFdlYlBhZ2VQcm94eTo6bm90aWZ5U2Nyb2xsZXJUaHVtYklzVmlzaWJsZUluUmVjdChjb25z
dCBJbnRSZWN0JiBzY3JvbGxlclRodW1iKQoreworICAgIG1fdmlzaWJsZVNjcm9sbGVyVGh1bWJS
ZWN0ID0gc2Nyb2xsZXJUaHVtYjsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlY29tbWVuZGVk
U2Nyb2xsYmFyU3R5bGVEaWRDaGFuZ2UoaW50MzJfdCBuZXdTdHlsZSkKK3sKKyNpZiBVU0UoQVBQ
S0lUKQorICAgIHBhZ2VDbGllbnQoKS5yZWNvbW1lbmRlZFNjcm9sbGJhclN0eWxlRGlkQ2hhbmdl
KHN0YXRpY19jYXN0PFdlYkNvcmU6OlNjcm9sbGJhclN0eWxlPihuZXdTdHlsZSkpOworI2Vsc2UK
KyAgICBVTlVTRURfUEFSQU0obmV3U3R5bGUpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpkaWRDaGFuZ2VTY3JvbGxiYXJzRm9yTWFpbkZyYW1lKGJvb2wgaGFzSG9yaXpvbnRhbFNj
cm9sbGJhciwgYm9vbCBoYXNWZXJ0aWNhbFNjcm9sbGJhcikKK3sKKyAgICBtX21haW5GcmFtZUhh
c0hvcml6b250YWxTY3JvbGxiYXIgPSBoYXNIb3Jpem9udGFsU2Nyb2xsYmFyOworICAgIG1fbWFp
bkZyYW1lSGFzVmVydGljYWxTY3JvbGxiYXIgPSBoYXNWZXJ0aWNhbFNjcm9sbGJhcjsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZVNjcm9sbE9mZnNldFBpbm5pbmdGb3JNYWluRnJh
bWUoYm9vbCBwaW5uZWRUb0xlZnRTaWRlLCBib29sIHBpbm5lZFRvUmlnaHRTaWRlLCBib29sIHBp
bm5lZFRvVG9wU2lkZSwgYm9vbCBwaW5uZWRUb0JvdHRvbVNpZGUpCit7CisgICAgcGFnZUNsaWVu
dCgpLnBpbm5lZFN0YXRlV2lsbENoYW5nZSgpOworICAgIG1fbWFpbkZyYW1lSXNQaW5uZWRUb0xl
ZnRTaWRlID0gcGlubmVkVG9MZWZ0U2lkZTsKKyAgICBtX21haW5GcmFtZUlzUGlubmVkVG9SaWdo
dFNpZGUgPSBwaW5uZWRUb1JpZ2h0U2lkZTsKKyAgICBtX21haW5GcmFtZUlzUGlubmVkVG9Ub3BT
aWRlID0gcGlubmVkVG9Ub3BTaWRlOworICAgIG1fbWFpbkZyYW1lSXNQaW5uZWRUb0JvdHRvbVNp
ZGUgPSBwaW5uZWRUb0JvdHRvbVNpZGU7CisgICAgcGFnZUNsaWVudCgpLnBpbm5lZFN0YXRlRGlk
Q2hhbmdlKCk7CisKKyAgICBtX3VpQ2xpZW50LT5waW5uZWRTdGF0ZURpZENoYW5nZSgqdGhpcyk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VQYWdlQ291bnQodW5zaWduZWQgcGFn
ZUNvdW50KQoreworICAgIG1fcGFnZUNvdW50ID0gcGFnZUNvdW50OworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6dGhlbWVDb2xvckNoYW5nZWQoY29uc3QgQ29sb3ImIHRoZW1lQ29sb3IpCit7Cisg
ICAgaWYgKG1fdGhlbWVDb2xvciA9PSB0aGVtZUNvbG9yKQorICAgICAgICByZXR1cm47CisKKyAg
ICBwYWdlQ2xpZW50KCkudGhlbWVDb2xvcldpbGxDaGFuZ2UoKTsKKyAgICBtX3RoZW1lQ29sb3Ig
PSB0aGVtZUNvbG9yOworICAgIHBhZ2VDbGllbnQoKS50aGVtZUNvbG9yRGlkQ2hhbmdlKCk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpwYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFu
Z2UoY29uc3QgQ29sb3ImIG5ld1BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvcikKK3sKKyAgICBp
ZiAobV9wYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3IgPT0gbmV3UGFnZUV4dGVuZGVkQmFja2dy
b3VuZENvbG9yKQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIG9sZFVuZGVyUGFnZUJhY2tn
cm91bmRDb2xvciA9IHVuZGVyUGFnZUJhY2tncm91bmRDb2xvcigpOworICAgIGF1dG8gb2xkUGFn
ZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yID0gc3RkOjpleGNoYW5nZShtX3BhZ2VFeHRlbmRlZEJh
Y2tncm91bmRDb2xvciwgbmV3UGFnZUV4dGVuZGVkQmFja2dyb3VuZENvbG9yKTsKKyAgICBib29s
IGNoYW5nZXNVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3IgPSAhZXF1YWxJZ25vcmluZ1NlbWFudGlj
Q29sb3Iob2xkVW5kZXJQYWdlQmFja2dyb3VuZENvbG9yLCB1bmRlclBhZ2VCYWNrZ3JvdW5kQ29s
b3IoKSk7CisgICAgbV9wYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3IgPSBXVEZNb3ZlKG9sZFBh
Z2VFeHRlbmRlZEJhY2tncm91bmRDb2xvcik7CisKKyAgICBpZiAoY2hhbmdlc1VuZGVyUGFnZUJh
Y2tncm91bmRDb2xvcikKKyAgICAgICAgcGFnZUNsaWVudCgpLnVuZGVyUGFnZUJhY2tncm91bmRD
b2xvcldpbGxDaGFuZ2UoKTsKKyAgICBwYWdlQ2xpZW50KCkucGFnZUV4dGVuZGVkQmFja2dyb3Vu
ZENvbG9yV2lsbENoYW5nZSgpOworCisgICAgbV9wYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3Ig
PSBuZXdQYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3I7CisKKyAgICBpZiAoY2hhbmdlc1VuZGVy
UGFnZUJhY2tncm91bmRDb2xvcikKKyAgICAgICAgcGFnZUNsaWVudCgpLnVuZGVyUGFnZUJhY2tn
cm91bmRDb2xvckRpZENoYW5nZSgpOworICAgIHBhZ2VDbGllbnQoKS5wYWdlRXh0ZW5kZWRCYWNr
Z3JvdW5kQ29sb3JEaWRDaGFuZ2UoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNhbXBsZWRQ
YWdlVG9wQ29sb3JDaGFuZ2VkKGNvbnN0IENvbG9yJiBzYW1wbGVkUGFnZVRvcENvbG9yKQorewor
ICAgIGlmIChtX3NhbXBsZWRQYWdlVG9wQ29sb3IgPT0gc2FtcGxlZFBhZ2VUb3BDb2xvcikKKyAg
ICAgICAgcmV0dXJuOworCisgICAgcGFnZUNsaWVudCgpLnNhbXBsZWRQYWdlVG9wQ29sb3JXaWxs
Q2hhbmdlKCk7CisgICAgbV9zYW1wbGVkUGFnZVRvcENvbG9yID0gc2FtcGxlZFBhZ2VUb3BDb2xv
cjsKKyAgICBwYWdlQ2xpZW50KCkuc2FtcGxlZFBhZ2VUb3BDb2xvckRpZENoYW5nZSgpOworfQor
CisjaWYgIVBMQVRGT1JNKENPQ09BKQorCitDb2xvciBXZWJQYWdlUHJveHk6OnBsYXRmb3JtVW5k
ZXJQYWdlQmFja2dyb3VuZENvbG9yKCkgY29uc3QKK3sKKyAgICByZXR1cm4gQ29sb3I6OnRyYW5z
cGFyZW50QmxhY2s7Cit9CisKKyNlbmRpZiAvLyAhUExBVEZPUk0oQ09DT0EpCisKKyNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRGYWlsVG9Jbml0
aWFsaXplUGx1Z2luKGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGNvbnN0IFN0cmluZyYgZnJhbWVV
UkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgcGFnZVVSTFN0cmluZykKK3sKKyAgICBtX25hdmlnYXRp
b25DbGllbnQtPmRpZEZhaWxUb0luaXRpYWxpemVQbHVnSW4oKnRoaXMsIGNyZWF0ZVBsdWdpbklu
Zm9ybWF0aW9uRGljdGlvbmFyeShtaW1lVHlwZSwgZnJhbWVVUkxTdHJpbmcsIHBhZ2VVUkxTdHJp
bmcpLmdldCgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEJsb2NrSW5zZWN1cmVQbHVn
aW5WZXJzaW9uKGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGNvbnN0IFN0cmluZyYgcGx1Z2luVVJM
U3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcmIHBhZ2VV
UkxTdHJpbmcsIGJvb2wgcmVwbGFjZW1lbnRPYnNjdXJlZCkKK3sKKyAgICBTdHJpbmcgbmV3TWlt
ZVR5cGUgPSBtaW1lVHlwZTsKKyAgICBQbHVnaW5Nb2R1bGVJbmZvIHBsdWdpbiA9IG1fcHJvY2Vz
cy0+cHJvY2Vzc1Bvb2woKS5wbHVnaW5JbmZvU3RvcmUoKS5maW5kUGx1Z2luKG5ld01pbWVUeXBl
LCBVUkwoVVJMKCksIHBsdWdpblVSTFN0cmluZykpOworICAgIGF1dG8gcGx1Z2luSW5mb3JtYXRp
b24gPSBjcmVhdGVQbHVnaW5JbmZvcm1hdGlvbkRpY3Rpb25hcnkocGx1Z2luLCBmcmFtZVVSTFN0
cmluZywgbWltZVR5cGUsIHBhZ2VVUkxTdHJpbmcsIFN0cmluZygpLCBTdHJpbmcoKSwgcmVwbGFj
ZW1lbnRPYnNjdXJlZCk7CisKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEJsb2NrSW5zZWN1
cmVQbHVnaW5WZXJzaW9uKCp0aGlzLCBwbHVnaW5JbmZvcm1hdGlvbi5nZXQoKSk7Cit9CisjZW5k
aWYgLy8gRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCisKK2Jvb2wgV2ViUGFnZVByb3h5Ojp3
aWxsSGFuZGxlSG9yaXpvbnRhbFNjcm9sbEV2ZW50cygpIGNvbnN0Cit7CisgICAgcmV0dXJuICFt
X2NhblNob3J0Q2lyY3VpdEhvcml6b250YWxXaGVlbEV2ZW50czsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OnVwZGF0ZVdlYnNpdGVQb2xpY2llcyhXZWJzaXRlUG9saWNpZXNEYXRhJiYgd2Vic2l0
ZVBvbGljaWVzKQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlVwZGF0ZVdlYnNpdGVQ
b2xpY2llcyh3ZWJzaXRlUG9saWNpZXMpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6Om5vdGlm
eVVzZXJTY3JpcHRzKCkKK3sKKyAgICBtX3VzZXJTY3JpcHRzTm90aWZpZWQgPSB0cnVlOworICAg
IHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6Ok5vdGlmeVVzZXJTY3JpcHRzKCkpOworfQorCitib29s
IFdlYlBhZ2VQcm94eTo6dXNlclNjcmlwdHNOZWVkTm90aWZpY2F0aW9uKCkgY29uc3QKK3sKKyAg
ICBpZiAoIW1fY29uZmlndXJhdGlvbi0+dXNlclNjcmlwdHNTaG91bGRXYWl0VW50aWxOb3RpZmlj
YXRpb24oKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiAhbV91c2VyU2NyaXB0
c05vdGlmaWVkOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmluaXNoTG9hZGluZ0RhdGFG
b3JDdXN0b21Db250ZW50UHJvdmlkZXIoY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWRGaWxlbmFtZSwg
Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhUmVmZXJlbmNlKQoreworICAgIHBhZ2VDbGll
bnQoKS5kaWRGaW5pc2hMb2FkaW5nRGF0YUZvckN1c3RvbUNvbnRlbnRQcm92aWRlcihSZXNvdXJj
ZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVTdWdnZXN0ZWRGaWxlbmFtZShzdWdnZXN0ZWRGaWxlbmFt
ZSksIGRhdGFSZWZlcmVuY2UpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6YmFja0ZvcndhcmRS
ZW1vdmVkSXRlbShjb25zdCBCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyJiBpdGVtSUQpCit7Cisg
ICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RGlkUmVtb3ZlQmFja0ZvcndhcmRJdGVtKGl0ZW1J
RCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0Q2FuUnVuTW9kYWwoYm9vbCBjYW5SdW5N
b2RhbCkKK3sKKyAgICAvLyBJdCdzIG9ubHkgcG9zc2libGUgdG8gY2hhbmdlIHRoZSBzdGF0ZSBm
b3IgYSBXZWJQYWdlIHdoaWNoCisgICAgLy8gYWxyZWFkeSBxdWFsaWZpZXMgZm9yIHJ1bm5pbmcg
bW9kYWwgY2hpbGQgd2ViIHBhZ2VzLCBvdGhlcndpc2UKKyAgICAvLyB0aGVyZSdzIG5vIG90aGVy
IHBvc3NpYmlsaXR5IHRoYW4gbm90IGFsbG93aW5nIGl0LgorICAgIG1fY2FuUnVuTW9kYWwgPSBt
X3VpQ2xpZW50LT5jYW5SdW5Nb2RhbCgpICYmIGNhblJ1bk1vZGFsOworCisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpTZXRDYW5SdW5Nb2RhbChtX2NhblJ1bk1vZGFsKSk7Cit9CisKK2Jvb2wgV2ViUGFn
ZVByb3h5OjpjYW5SdW5Nb2RhbCgpCit7CisgICAgcmV0dXJuIGhhc1J1bm5pbmdQcm9jZXNzKCkg
PyBtX2NhblJ1bk1vZGFsIDogZmFsc2U7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpiZWdpblBy
aW50aW5nKFdlYkZyYW1lUHJveHkqIGZyYW1lLCBjb25zdCBQcmludEluZm8mIHByaW50SW5mbykK
K3sKKyAgICBpZiAobV9pc0luUHJpbnRpbmdNb2RlKQorICAgICAgICByZXR1cm47CisKKyAgICBt
X2lzSW5QcmludGluZ01vZGUgPSB0cnVlOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkJl
Z2luUHJpbnRpbmcoZnJhbWUtPmZyYW1lSUQoKSwgcHJpbnRJbmZvKSwgcHJpbnRpbmdTZW5kT3B0
aW9ucyhtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0aW9uKSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjplbmRQcmludGluZygpCit7CisgICAgaWYgKCFtX2lzSW5QcmludGluZ01vZGUpCisg
ICAgICAgIHJldHVybjsKKworICAgIG1faXNJblByaW50aW5nTW9kZSA9IGZhbHNlOworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OkVuZFByaW50aW5nKCksIHByaW50aW5nU2VuZE9wdGlvbnMo
bV9pc1BlcmZvcm1pbmdET01QcmludE9wZXJhdGlvbikpOworfQorCit1aW50NjRfdCBXZWJQYWdl
UHJveHk6OmNvbXB1dGVQYWdlc0ZvclByaW50aW5nKFdlYkZyYW1lUHJveHkqIGZyYW1lLCBjb25z
dCBQcmludEluZm8mIHByaW50SW5mbywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0
b3I8V2ViQ29yZTo6SW50UmVjdD4mLCBkb3VibGUsIGNvbnN0IFdlYkNvcmU6OkZsb2F0Qm94RXh0
ZW50Jik+JiYgY2FsbGJhY2spCit7CisgICAgbV9pc0luUHJpbnRpbmdNb2RlID0gdHJ1ZTsKKyAg
ICByZXR1cm4gc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpDb21wdXRlUGFn
ZXNGb3JQcmludGluZyhmcmFtZS0+ZnJhbWVJRCgpLCBwcmludEluZm8pLCBXVEZNb3ZlKGNhbGxi
YWNrKSwgcHJpbnRpbmdTZW5kT3B0aW9ucyhtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0aW9u
KSk7Cit9CisKKyNpZiBQTEFURk9STShDT0NPQSkKK3VpbnQ2NF90IFdlYlBhZ2VQcm94eTo6ZHJh
d1JlY3RUb0ltYWdlKFdlYkZyYW1lUHJveHkqIGZyYW1lLCBjb25zdCBQcmludEluZm8mIHByaW50
SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgaW1hZ2VT
aXplLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYktpdDo6U2hhcmVhYmxlQml0bWFw
OjpIYW5kbGUmKT4mJiBjYWxsYmFjaykKK3sKKyAgICByZXR1cm4gc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJQYWdlOjpEcmF3UmVjdFRvSW1hZ2UoZnJhbWUtPmZyYW1lSUQoKSwgcHJp
bnRJbmZvLCByZWN0LCBpbWFnZVNpemUpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgcHJpbnRpbmdTZW5k
T3B0aW9ucyhtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0aW9uKSk7Cit9CisKK3VpbnQ2NF90
IFdlYlBhZ2VQcm94eTo6ZHJhd1BhZ2VzVG9QREYoV2ViRnJhbWVQcm94eSogZnJhbWUsIGNvbnN0
IFByaW50SW5mbyYgcHJpbnRJbmZvLCB1aW50MzJfdCBmaXJzdCwgdWludDMyX3QgY291bnQsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoQVBJOjpEYXRhKik+JiYgY2FsbGJhY2spCit7CisgICAgcmV0
dXJuIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6RHJhd1BhZ2VzVG9QREYo
ZnJhbWUtPmZyYW1lSUQoKSwgcHJpbnRJbmZvLCBmaXJzdCwgY291bnQpLCB0b0FQSURhdGFDYWxs
YmFjayhXVEZNb3ZlKGNhbGxiYWNrKSksIHByaW50aW5nU2VuZE9wdGlvbnMobV9pc1BlcmZvcm1p
bmdET01QcmludE9wZXJhdGlvbikpOworfQorI2VsaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQ
YWdlUHJveHk6OmRyYXdQYWdlc0ZvclByaW50aW5nKFdlYkZyYW1lUHJveHkqIGZyYW1lLCBjb25z
dCBQcmludEluZm8mIHByaW50SW5mbywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChBUEk6OkVycm9y
Kik+JiYgY2FsbGJhY2spCit7CisgICAgYXV0byBjYWxsYmFja1dyYXBwZXIgPSBbY2FsbGJhY2sg
PSBXVEZNb3ZlKGNhbGxiYWNrKV0gKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9y
KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKGVycm9yLmlzTnVsbCgpKQorICAgICAgICAgICAgcmV0
dXJuIGNhbGxiYWNrKG51bGxwdHIpOworICAgICAgICBjYWxsYmFjayhBUEk6OkVycm9yOjpjcmVh
dGUoZXJyb3IpLnB0cigpKTsKKyAgICB9OworICAgIG1faXNJblByaW50aW5nTW9kZSA9IHRydWU7
CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpEcmF3UGFnZXNGb3JQ
cmludGluZyhmcmFtZS0+ZnJhbWVJRCgpLCBwcmludEluZm8pLCBXVEZNb3ZlKGNhbGxiYWNrV3Jh
cHBlciksIHByaW50aW5nU2VuZE9wdGlvbnMobV9pc1BlcmZvcm1pbmdET01QcmludE9wZXJhdGlv
bikpOworfQorI2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgV2ViUGFnZVByb3h5
OjpkcmF3VG9QREYoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IHN0ZDo6b3B0aW9uYWw8
RmxvYXRSZWN0PiYgcmVjdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBJUEM6OkRhdGFS
ZWZlcmVuY2UmKT4mJiBjYWxsYmFjaykKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkp
IHsKKyAgICAgICAgY2FsbGJhY2soeyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBz
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkRyYXdUb1BERihmcmFtZUlELCBy
ZWN0KSwgV1RGTW92ZShjYWxsYmFjaykpOworfQorI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0UERGRmlyc3RQYWdlU2l6ZShXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpGbG9hdFNp
emUpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNz
YWdlczo6V2ViUGFnZTo6R2V0UERGRmlyc3RQYWdlU2l6ZShmcmFtZUlEKSwgV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6dXBkYXRlQmFja2luZ1N0
b3JlRGlzY2FyZGFibGVTdGF0ZSgpCit7CisgICAgQVNTRVJUKGhhc1J1bm5pbmdQcm9jZXNzKCkp
OworCisgICAgaWYgKCFtX2RyYXdpbmdBcmVhKQorICAgICAgICByZXR1cm47CisKKyAgICBib29s
IGlzRGlzY2FyZGFibGU7CisKKyAgICBpZiAoIW1fcHJvY2Vzcy0+aXNSZXNwb25zaXZlKCkpCisg
ICAgICAgIGlzRGlzY2FyZGFibGUgPSBmYWxzZTsKKyAgICBlbHNlCisgICAgICAgIGlzRGlzY2Fy
ZGFibGUgPSAhcGFnZUNsaWVudCgpLmlzVmlld1dpbmRvd0FjdGl2ZSgpIHx8ICFpc1ZpZXdWaXNp
YmxlKCk7CisKKyAgICBtX2RyYXdpbmdBcmVhLT5zZXRCYWNraW5nU3RvcmVJc0Rpc2NhcmRhYmxl
KGlzRGlzY2FyZGFibGUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2F2ZURhdGFUb0ZpbGVJ
bkRvd25sb2Fkc0ZvbGRlcihTdHJpbmcmJiBzdWdnZXN0ZWRGaWxlbmFtZSwgU3RyaW5nJiYgbWlt
ZVR5cGUsIFVSTCYmIG9yaWdpbmF0aW5nVVJMU3RyaW5nLCBBUEk6OkRhdGEmIGRhdGEpCit7Cisg
ICAgbV91aUNsaWVudC0+c2F2ZURhdGFUb0ZpbGVJbkRvd25sb2Fkc0ZvbGRlcih0aGlzLCBSZXNv
dXJjZVJlc3BvbnNlQmFzZTo6c2FuaXRpemVTdWdnZXN0ZWRGaWxlbmFtZShzdWdnZXN0ZWRGaWxl
bmFtZSksIG1pbWVUeXBlLCBvcmlnaW5hdGluZ1VSTFN0cmluZywgZGF0YSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpzYXZlUERGVG9GaWxlSW5Eb3dubG9hZHNGb2xkZXIoU3RyaW5nJiYgc3Vn
Z2VzdGVkRmlsZW5hbWUsIFVSTCYmIG9yaWdpbmF0aW5nVVJMLCBjb25zdCBJUEM6OkRhdGFSZWZl
cmVuY2UmIGRhdGFSZWZlcmVuY2UpCit7CisgICAgU3RyaW5nIHNhbml0aXplZEZpbGVuYW1lID0g
UmVzb3VyY2VSZXNwb25zZUJhc2U6OnNhbml0aXplU3VnZ2VzdGVkRmlsZW5hbWUoc3VnZ2VzdGVk
RmlsZW5hbWUpOworICAgIGlmICghc2FuaXRpemVkRmlsZW5hbWUuZW5kc1dpdGhJZ25vcmluZ0FT
Q0lJQ2FzZSgiLnBkZiIpKQorICAgICAgICByZXR1cm47CisKKyAgICBzYXZlRGF0YVRvRmlsZUlu
RG93bmxvYWRzRm9sZGVyKFdURk1vdmUoc2FuaXRpemVkRmlsZW5hbWUpLCAiYXBwbGljYXRpb24v
cGRmIl9zLCBXVEZNb3ZlKG9yaWdpbmF0aW5nVVJMKSwKKyAgICAgICAgQVBJOjpEYXRhOjpjcmVh
dGUoZGF0YVJlZmVyZW5jZS5kYXRhKCksIGRhdGFSZWZlcmVuY2Uuc2l6ZSgpKS5nZXQoKSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoY29uc3Qg
SW50U2l6ZSYgc2l6ZSkKK3sKKyAgICBpZiAobV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQgPT0g
c2l6ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQg
PSBzaXplOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47
CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlv
dXQoc2l6ZSkpOworICAgIG1fZHJhd2luZ0FyZWEtPm1pbmltdW1TaXplRm9yQXV0b0xheW91dERp
ZENoYW5nZSgpOworCisjaWYgVVNFKEFQUEtJVCkKKyAgICBpZiAobV9taW5pbXVtU2l6ZUZvckF1
dG9MYXlvdXQud2lkdGgoKSA8PSAwKQorICAgICAgICBkaWRDaGFuZ2VJbnRyaW5zaWNDb250ZW50
U2l6ZShJbnRTaXplKC0xLCAtMSkpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpz
ZXRTaXplVG9Db250ZW50QXV0b1NpemVNYXhpbXVtU2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQor
eworICAgIGlmIChtX3NpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplID09IHNpemUpCisg
ICAgICAgIHJldHVybjsKKworICAgIG1fc2l6ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUg
PSBzaXplOworCisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47
CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRTaXplVG9Db250ZW50QXV0b1NpemVN
YXhpbXVtU2l6ZShzaXplKSk7CisgICAgbV9kcmF3aW5nQXJlYS0+c2l6ZVRvQ29udGVudEF1dG9T
aXplTWF4aW11bVNpemVEaWRDaGFuZ2UoKTsKKworI2lmIFVTRShBUFBLSVQpCisgICAgaWYgKG1f
c2l6ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUud2lkdGgoKSA8PSAwKQorICAgICAgICBk
aWRDaGFuZ2VJbnRyaW5zaWNDb250ZW50U2l6ZShJbnRTaXplKC0xLCAtMSkpOworI2VuZGlmCit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRBdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVp
Z2h0KGJvb2wgc2hvdWxkRXhwYW5kKQoreworICAgIGlmIChtX2F1dG9TaXppbmdTaG91bGRFeHBh
bmRUb1ZpZXdIZWlnaHQgPT0gc2hvdWxkRXhwYW5kKQorICAgICAgICByZXR1cm47CisKKyAgICBt
X2F1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQgPSBzaG91bGRFeHBhbmQ7CisKKyAg
ICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2U6OlNldEF1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQo
c2hvdWxkRXhwYW5kKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRWaWV3cG9ydFNpemVG
b3JDU1NWaWV3cG9ydFVuaXRzKGNvbnN0IEludFNpemUmIHZpZXdwb3J0U2l6ZSkKK3sKKyAgICBp
ZiAobV92aWV3cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRzICYmICptX3ZpZXdwb3J0U2l6ZUZv
ckNTU1ZpZXdwb3J0VW5pdHMgPT0gdmlld3BvcnRTaXplKQorICAgICAgICByZXR1cm47CisKKyAg
ICBtX3ZpZXdwb3J0U2l6ZUZvckNTU1ZpZXdwb3J0VW5pdHMgPSB2aWV3cG9ydFNpemU7CisKKyAg
ICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2U6OlNldFZpZXdwb3J0U2l6ZUZvckNTU1ZpZXdwb3J0VW5pdHModmll
d3BvcnRTaXplKSk7Cit9CisKKyNpZiBVU0UoQVVUT01BVElDX1RFWFRfUkVQTEFDRU1FTlQpCisK
K3ZvaWQgV2ViUGFnZVByb3h5Ojp0b2dnbGVTbWFydEluc2VydERlbGV0ZSgpCit7CisgICAgaWYg
KFRleHRDaGVja2VyOjppc1Rlc3RpbmdNb2RlKCkpCisgICAgICAgIFRleHRDaGVja2VyOjpzZXRT
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoIVRleHRDaGVja2VyOjppc1NtYXJ0SW5zZXJ0RGVsZXRl
RW5hYmxlZCgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnRvZ2dsZUF1dG9tYXRpY1F1b3Rl
U3Vic3RpdHV0aW9uKCkKK3sKKyAgICBpZiAoVGV4dENoZWNrZXI6OmlzVGVzdGluZ01vZGUoKSkK
KyAgICAgICAgVGV4dENoZWNrZXI6OnNldEF1dG9tYXRpY1F1b3RlU3Vic3RpdHV0aW9uRW5hYmxl
ZCghVGV4dENoZWNrZXI6OnN0YXRlKCkuaXNBdXRvbWF0aWNRdW90ZVN1YnN0aXR1dGlvbkVuYWJs
ZWQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6dG9nZ2xlQXV0b21hdGljTGlua0RldGVjdGlv
bigpCit7CisgICAgaWYgKFRleHRDaGVja2VyOjppc1Rlc3RpbmdNb2RlKCkpCisgICAgICAgIFRl
eHRDaGVja2VyOjpzZXRBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uRW5hYmxlZCghVGV4dENoZWNrZXI6
OnN0YXRlKCkuaXNBdXRvbWF0aWNMaW5rRGV0ZWN0aW9uRW5hYmxlZCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojp0b2dnbGVBdXRvbWF0aWNEYXNoU3Vic3RpdHV0aW9uKCkKK3sKKyAgICBpZiAo
VGV4dENoZWNrZXI6OmlzVGVzdGluZ01vZGUoKSkKKyAgICAgICAgVGV4dENoZWNrZXI6OnNldEF1
dG9tYXRpY0Rhc2hTdWJzdGl0dXRpb25FbmFibGVkKCFUZXh0Q2hlY2tlcjo6c3RhdGUoKS5pc0F1
dG9tYXRpY0Rhc2hTdWJzdGl0dXRpb25FbmFibGVkKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnRvZ2dsZUF1dG9tYXRpY1RleHRSZXBsYWNlbWVudCgpCit7CisgICAgaWYgKFRleHRDaGVja2Vy
Ojppc1Rlc3RpbmdNb2RlKCkpCisgICAgICAgIFRleHRDaGVja2VyOjpzZXRBdXRvbWF0aWNUZXh0
UmVwbGFjZW1lbnRFbmFibGVkKCFUZXh0Q2hlY2tlcjo6c3RhdGUoKS5pc0F1dG9tYXRpY1RleHRS
ZXBsYWNlbWVudEVuYWJsZWQpOworfQorCisjZW5kaWYKKworI2lmIFVTRShESUNUQVRJT05fQUxU
RVJOQVRJVkVTKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd0RpY3RhdGlvbkFsdGVybmF0aXZl
VUkoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiBib3VuZGluZ0JveE9mRGljdGF0ZWRUZXh0LCBX
ZWJDb3JlOjpEaWN0YXRpb25Db250ZXh0IGRpY3RhdGlvbkNvbnRleHQpCit7CisgICAgcGFnZUNs
aWVudCgpLnNob3dEaWN0YXRpb25BbHRlcm5hdGl2ZVVJKGJvdW5kaW5nQm94T2ZEaWN0YXRlZFRl
eHQsIGRpY3RhdGlvbkNvbnRleHQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVtb3ZlRGlj
dGF0aW9uQWx0ZXJuYXRpdmVzKFdlYkNvcmU6OkRpY3RhdGlvbkNvbnRleHQgZGljdGF0aW9uQ29u
dGV4dCkKK3sKKyAgICBwYWdlQ2xpZW50KCkucmVtb3ZlRGljdGF0aW9uQWx0ZXJuYXRpdmVzKGRp
Y3RhdGlvbkNvbnRleHQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGljdGF0aW9uQWx0ZXJu
YXRpdmVzKFdlYkNvcmU6OkRpY3RhdGlvbkNvbnRleHQgZGljdGF0aW9uQ29udGV4dCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8U3RyaW5nPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcihwYWdlQ2xpZW50KCkuZGljdGF0aW9uQWx0ZXJuYXRp
dmVzKGRpY3RhdGlvbkNvbnRleHQpKTsKK30KKworI2VuZGlmCisKKyNpZiBQTEFURk9STShNQUMp
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdWJzdGl0dXRpb25zUGFuZWxJc1Nob3dpbmcoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21w
bGV0aW9uSGFuZGxlcihUZXh0Q2hlY2tlcjo6c3Vic3RpdHV0aW9uc1BhbmVsSXNTaG93aW5nKCkp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd0NvcnJlY3Rpb25QYW5lbChpbnQzMl90IHBh
bmVsVHlwZSwgY29uc3QgRmxvYXRSZWN0JiBib3VuZGluZ0JveE9mUmVwbGFjZWRTdHJpbmcsIGNv
bnN0IFN0cmluZyYgcmVwbGFjZWRTdHJpbmcsIGNvbnN0IFN0cmluZyYgcmVwbGFjZW1lbnRTdHJp
bmcsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBhbHRlcm5hdGl2ZVJlcGxhY2VtZW50U3RyaW5ncykK
K3sKKyAgICAvLyBGSVhNRTogTWFrZSBBbHRlcm5hdGl2ZVRleHRUeXBlIGFuIGVudW0gY2xhc3Mg
d2l0aCBFbnVtVHJhaXRzIGFuZCBzZXJpYWxpemUgaXQgaW5zdGVhZCBvZiBjYXN0aW5nIHRvL2Zy
b20gYW4gaW50MzJfdC4KKyAgICBwYWdlQ2xpZW50KCkuc2hvd0NvcnJlY3Rpb25QYW5lbCgoQWx0
ZXJuYXRpdmVUZXh0VHlwZSlwYW5lbFR5cGUsIGJvdW5kaW5nQm94T2ZSZXBsYWNlZFN0cmluZywg
cmVwbGFjZWRTdHJpbmcsIHJlcGxhY2VtZW50U3RyaW5nLCBhbHRlcm5hdGl2ZVJlcGxhY2VtZW50
U3RyaW5ncyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaXNtaXNzQ29ycmVjdGlvblBhbmVs
KGludDMyX3QgcmVhc29uKQoreworICAgIC8vIEZJWE1FOiBNYWtlIFJlYXNvbkZvckRpc21pc3Np
bmdBbHRlcm5hdGl2ZVRleHQgYW4gZW51bSBjbGFzcyB3aXRoIEVudW1UcmFpdHMgYW5kIHNlcmlh
bGl6ZSBpdCBpbnN0ZWFkIG9mIGNhc3RpbmcgdG8vZnJvbSBhbiBpbnQzMl90LgorICAgIHBhZ2VD
bGllbnQoKS5kaXNtaXNzQ29ycmVjdGlvblBhbmVsKChSZWFzb25Gb3JEaXNtaXNzaW5nQWx0ZXJu
YXRpdmVUZXh0KXJlYXNvbik7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaXNtaXNzQ29ycmVj
dGlvblBhbmVsU29vbihpbnQzMl90IHJlYXNvbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTdHJp
bmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIC8vIEZJWE1FOiBNYWtlIFJlYXNvbkZv
ckRpc21pc3NpbmdBbHRlcm5hdGl2ZVRleHQgYW4gZW51bSBjbGFzcyB3aXRoIEVudW1UcmFpdHMg
YW5kIHNlcmlhbGl6ZSBpdCBpbnN0ZWFkIG9mIGNhc3RpbmcgdG8vZnJvbSBhbiBpbnQzMl90Lgor
ICAgIGNvbXBsZXRpb25IYW5kbGVyKHBhZ2VDbGllbnQoKS5kaXNtaXNzQ29ycmVjdGlvblBhbmVs
U29vbigoUmVhc29uRm9yRGlzbWlzc2luZ0FsdGVybmF0aXZlVGV4dClyZWFzb24pKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnJlY29yZEF1dG9jb3JyZWN0aW9uUmVzcG9uc2UoaW50MzJfdCBy
ZXNwb25zZSwgY29uc3QgU3RyaW5nJiByZXBsYWNlZFN0cmluZywgY29uc3QgU3RyaW5nJiByZXBs
YWNlbWVudFN0cmluZykKK3sKKyAgICAvLyBGSVhNRTogTWFrZSBBdXRvY29ycmVjdGlvblJlc3Bv
bnNlIGFuIGVudW0gY2xhc3Mgd2l0aCBFbnVtVHJhaXRzIGFuZCBzZXJpYWxpemUgaXQgaW5zdGVh
ZCBvZiBjYXN0aW5nIHRvL2Zyb20gYW4gaW50MzJfdC4KKyAgICBwYWdlQ2xpZW50KCkucmVjb3Jk
QXV0b2NvcnJlY3Rpb25SZXNwb25zZShzdGF0aWNfY2FzdDxBdXRvY29ycmVjdGlvblJlc3BvbnNl
PihyZXNwb25zZSksIHJlcGxhY2VkU3RyaW5nLCByZXBsYWNlbWVudFN0cmluZyk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpoYW5kbGVBbHRlcm5hdGl2ZVRleHRVSVJlc3VsdChjb25zdCBTdHJp
bmcmIHJlc3VsdCkKK3sKKyAgICBpZiAoIWlzQ2xvc2VkKCkpCisgICAgICAgIHNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OkhhbmRsZUFsdGVybmF0aXZlVGV4dFVJUmVzdWx0KHJlc3VsdCkpOworfQor
Cit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0RWRpdGFibGVFbGVtZW50SXNGb2N1c2VkKGJvb2wgZWRp
dGFibGVFbGVtZW50SXNGb2N1c2VkKQoreworICAgIHBhZ2VDbGllbnQoKS5zZXRFZGl0YWJsZUVs
ZW1lbnRJc0ZvY3VzZWQoZWRpdGFibGVFbGVtZW50SXNGb2N1c2VkKTsKK30KKworI2VuZGlmIC8v
IFBMQVRGT1JNKE1BQykKKworI2lmIFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShHVEspCitS
ZWZQdHI8Vmlld1NuYXBzaG90PiBXZWJQYWdlUHJveHk6OnRha2VWaWV3U25hcHNob3Qoc3RkOjpv
cHRpb25hbDxXZWJDb3JlOjpJbnRSZWN0PiYmIGNsaXBSZWN0KQoreworICAgIHJldHVybiBwYWdl
Q2xpZW50KCkudGFrZVZpZXdTbmFwc2hvdChXVEZNb3ZlKGNsaXBSZWN0KSk7Cit9CisjZW5kaWYK
KworI2lmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0oV1BFKQordm9pZCBXZWJQYWdlUHJveHk6
OmNhbmNlbENvbXBvc2l0aW9uKGNvbnN0IFN0cmluZyYgY29tcG9zaXRpb25TdHJpbmcpCit7Cisg
ICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBS
ZW1vdmUgYW55IHBlbmRpbmcgY29tcG9zaXRpb24ga2V5IGV2ZW50LgorICAgIGlmIChtX2tleUV2
ZW50UXVldWUuc2l6ZSgpID4gMSkgeworICAgICAgICBhdXRvIGV2ZW50ID0gbV9rZXlFdmVudFF1
ZXVlLnRha2VGaXJzdCgpOworICAgICAgICBtX2tleUV2ZW50UXVldWUucmVtb3ZlQWxsTWF0Y2hp
bmcoW10oY29uc3QgYXV0byYgZXZlbnQpIHsKKyAgICAgICAgICAgIHJldHVybiBldmVudC5oYW5k
bGVkQnlJbnB1dE1ldGhvZCgpOworICAgICAgICB9KTsKKyAgICAgICAgbV9rZXlFdmVudFF1ZXVl
LnByZXBlbmQoV1RGTW92ZShldmVudCkpOworICAgIH0KKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlOjpDYW5jZWxDb21wb3NpdGlvbihjb21wb3NpdGlvblN0cmluZykpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZGVsZXRlU3Vycm91bmRpbmcoaW50NjRfdCBvZmZzZXQsIHVuc2lnbmVkIGNo
YXJhY3RlckNvdW50KQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RGVsZXRlU3Vycm91bmRpbmco
b2Zmc2V0LCBjaGFyYWN0ZXJDb3VudCkpOworfQorI2VuZGlmIC8vIFBMQVRGT1JNKEdUSykgfHwg
UExBVEZPUk0oV1BFKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0U2Nyb2xsUGlubmluZ0JlaGF2
aW9yKFNjcm9sbFBpbm5pbmdCZWhhdmlvciBwaW5uaW5nKQoreworICAgIGlmIChtX3Njcm9sbFBp
bm5pbmdCZWhhdmlvciA9PSBwaW5uaW5nKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgbV9z
Y3JvbGxQaW5uaW5nQmVoYXZpb3IgPSBwaW5uaW5nOworCisgICAgaWYgKGhhc1J1bm5pbmdQcm9j
ZXNzKCkpCisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFNjcm9sbFBpbm5pbmdC
ZWhhdmlvcihwaW5uaW5nKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRPdmVybGF5U2Ny
b2xsYmFyU3R5bGUoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTY3JvbGxiYXJPdmVybGF5U3R5bGU+
IHNjcm9sbGJhclN0eWxlKQoreworICAgIGlmICghbV9zY3JvbGxiYXJPdmVybGF5U3R5bGUgJiYg
IXNjcm9sbGJhclN0eWxlKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoKG1fc2Nyb2xsYmFy
T3ZlcmxheVN0eWxlICYmIHNjcm9sbGJhclN0eWxlKSAmJiBtX3Njcm9sbGJhck92ZXJsYXlTdHls
ZS52YWx1ZSgpID09IHNjcm9sbGJhclN0eWxlLnZhbHVlKCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIG1fc2Nyb2xsYmFyT3ZlcmxheVN0eWxlID0gc2Nyb2xsYmFyU3R5bGU7CisKKyAgICBzdGQ6
Om9wdGlvbmFsPHVpbnQzMl90PiBzY3JvbGxiYXJTdHlsZUZvck1lc3NhZ2U7CisgICAgaWYgKHNj
cm9sbGJhclN0eWxlKQorICAgICAgICBzY3JvbGxiYXJTdHlsZUZvck1lc3NhZ2UgPSBzdGF0aWNf
Y2FzdDxTY3JvbGxiYXJPdmVybGF5U3R5bGU+KHNjcm9sbGJhclN0eWxlLnZhbHVlKCkpOworCisg
ICAgaWYgKGhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OlNldFNjcm9sbGJhck92ZXJsYXlTdHlsZShzY3JvbGxiYXJTdHlsZUZvck1lc3NhZ2UpLCBt
X3dlYlBhZ2VJRCk7Cit9CisKKyNpZiBFTkFCTEUoV0VCX0NSWVBUTykKK3ZvaWQgV2ViUGFnZVBy
b3h5Ojp3cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYga2V5LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wsIFZlY3Rvcjx1aW50OF90PiYmKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOwor
CisgICAgVmVjdG9yPHVpbnQ4X3Q+IG1hc3RlcktleTsKKworICAgIGlmIChhdXRvIGtleURhdGEg
PSBtX25hdmlnYXRpb25DbGllbnQtPndlYkNyeXB0b01hc3RlcktleSgqdGhpcykpCisgICAgICAg
IG1hc3RlcktleSA9IGtleURhdGEtPmRhdGFSZWZlcmVuY2UoKS52ZWN0b3IoKTsKKworICAgIFZl
Y3Rvcjx1aW50OF90PiB3cmFwcGVkS2V5OworICAgIGJvb2wgc3VjY2VlZGVkID0gd3JhcFNlcmlh
bGl6ZWRDcnlwdG9LZXkobWFzdGVyS2V5LCBrZXksIHdyYXBwZWRLZXkpOworICAgIGNvbXBsZXRp
b25IYW5kbGVyKHN1Y2NlZWRlZCwgV1RGTW92ZSh3cmFwcGVkS2V5KSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5Ojp1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVk
S2V5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wsIFZlY3Rvcjx1aW50OF90PiYmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3Rvcihw
YWdlQ2xpZW50KCkpOworCisgICAgVmVjdG9yPHVpbnQ4X3Q+IG1hc3RlcktleTsKKworICAgIGlm
IChhdXRvIGtleURhdGEgPSBtX25hdmlnYXRpb25DbGllbnQtPndlYkNyeXB0b01hc3RlcktleSgq
dGhpcykpCisgICAgICAgIG1hc3RlcktleSA9IGtleURhdGEtPmRhdGFSZWZlcmVuY2UoKS52ZWN0
b3IoKTsKKworICAgIFZlY3Rvcjx1aW50OF90PiBrZXk7CisgICAgYm9vbCBzdWNjZWVkZWQgPSB1
bndyYXBTZXJpYWxpemVkQ3J5cHRvS2V5KG1hc3RlcktleSwgd3JhcHBlZEtleSwga2V5KTsKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcihzdWNjZWVkZWQsIFdURk1vdmUoa2V5KSk7Cit9CisjZW5kaWYK
Kwordm9pZCBXZWJQYWdlUHJveHk6OnNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyh1
bnNpZ25lZCBrZXlTaXplSW5kZXgsIGNvbnN0IFN0cmluZyYgY2hhbGxlbmdlU3RyaW5nLCBjb25z
dCBVUkwmIHVybCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTdHJpbmcpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQo
KSk7CisKKyAgICBpZiAoYXV0byBhcGlTdHJpbmcgPSBtX25hdmlnYXRpb25DbGllbnQtPnNpZ25l
ZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZygqdGhpcywga2V5U2l6ZUluZGV4LCBBUEk6OlN0
cmluZzo6Y3JlYXRlKGNoYWxsZW5nZVN0cmluZyksIHVybCkpCisgICAgICAgIHJldHVybiBjb21w
bGV0aW9uSGFuZGxlcihhcGlTdHJpbmctPnN0cmluZygpKTsKKyAgICAKKyAgICBjb21wbGV0aW9u
SGFuZGxlcih7IH0pOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6YWRkTUlNRVR5cGVXaXRoQ3Vz
dG9tQ29udGVudFByb3ZpZGVyKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZTo6QWRkTUlNRVR5cGVXaXRoQ3VzdG9tQ29udGVudFByb3ZpZGVyKG1p
bWVUeXBlKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjaGFuZ2VGb250QXR0cmlidXRlcyhX
ZWJDb3JlOjpGb250QXR0cmlidXRlQ2hhbmdlcyYmIGNoYW5nZXMpCit7CisgICAgaWYgKCFoYXNS
dW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlOjpDaGFuZ2VGb250QXR0cmlidXRlcyhXVEZNb3ZlKGNoYW5nZXMpKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpjaGFuZ2VGb250KFdlYkNvcmU6OkZvbnRDaGFuZ2VzJiYgY2hhbmdl
cykKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNoYW5nZUZvbnQoV1RGTW92ZShjaGFuZ2VzKSkp
OworfQorCisvLyBGSVhNRTogTW92ZSB0aGVzZSBmdW5jdGlvbnMgdG8gV2ViUGFnZVByb3h5Q29j
b2EubW0uCisjaWYgUExBVEZPUk0oQ09DT0EpCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRUZXh0
QXN5bmMoY29uc3QgU3RyaW5nJiB0ZXh0KQoreworICAgIGlmIChoYXNSdW5uaW5nUHJvY2Vzcygp
KQorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRUZXh0QXN5bmModGV4dCkpOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aW5zZXJ0VGV4dEFzeW5jKGNvbnN0IFN0cmluZyYgdGV4
dCwgY29uc3QgRWRpdGluZ1JhbmdlJiByZXBsYWNlbWVudFJhbmdlLCBJbnNlcnRUZXh0T3B0aW9u
cyYmIG9wdGlvbnMpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpJbnNlcnRUZXh0QXN5bmModGV4
dCwgcmVwbGFjZW1lbnRSYW5nZSwgV1RGTW92ZShvcHRpb25zKSkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6aGFzTWFya2VkVGV4dChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNh
bGxiYWNrKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgeworICAgICAgICBjYWxs
YmFjayhmYWxzZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgc2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpIYXNNYXJrZWRUZXh0KCksIFdURk1vdmUoY2FsbGJhY2sp
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmdldE1hcmtlZFJhbmdlQXN5bmMoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4mJiBjYWxsYmFja0Z1bmN0aW9uKQor
eworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgeworICAgICAgICBjYWxsYmFja0Z1bmN0
aW9uKEVkaXRpbmdSYW5nZSgpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6R2V0TWFya2VkUmFuZ2VBc3luYygpLCBX
VEZNb3ZlKGNhbGxiYWNrRnVuY3Rpb24pKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmdldFNl
bGVjdGVkUmFuZ2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEVkaXRpbmdSYW5n
ZSYpPiYmIGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
KSB7CisgICAgICAgIGNhbGxiYWNrRnVuY3Rpb24oRWRpdGluZ1JhbmdlKCkpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdl
OjpHZXRTZWxlY3RlZFJhbmdlQXN5bmMoKSwgV1RGTW92ZShjYWxsYmFja0Z1bmN0aW9uKSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmIHBvaW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90
KT4mJiBjYWxsYmFja0Z1bmN0aW9uKQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdl
czo6V2ViUGFnZTo6Q2hhcmFjdGVySW5kZXhGb3JQb2ludEFzeW5jKHBvaW50KSwgV1RGTW92ZShj
YWxsYmFja0Z1bmN0aW9uKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpmaXJzdFJlY3RGb3JD
aGFyYWN0ZXJSYW5nZUFzeW5jKGNvbnN0IEVkaXRpbmdSYW5nZSYgcmFuZ2UsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IEVkaXRpbmdSYW5nZSYp
PiYmIGNhbGxiYWNrRnVuY3Rpb24pCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQor
ICAgICAgICByZXR1cm4gY2FsbGJhY2tGdW5jdGlvbih7IH0sIHsgfSk7CisKKyAgICBzZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkZpcnN0UmVjdEZvckNoYXJhY3RlclJhbmdl
QXN5bmMocmFuZ2UpLCBXVEZNb3ZlKGNhbGxiYWNrRnVuY3Rpb24pKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldENvbXBvc2l0aW9uQXN5bmMoY29uc3QgU3RyaW5nJiB0ZXh0LCBjb25zdCBW
ZWN0b3I8Q29tcG9zaXRpb25VbmRlcmxpbmU+JiB1bmRlcmxpbmVzLCBjb25zdCBWZWN0b3I8Q29t
cG9zaXRpb25IaWdobGlnaHQ+JiBoaWdobGlnaHRzLCBjb25zdCBFZGl0aW5nUmFuZ2UmIHNlbGVj
dGlvblJhbmdlLCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJlcGxhY2VtZW50UmFuZ2UpCit7CisgICAg
aWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAgICAgIC8vIElmIHRoaXMgZmFpbHMsIHdl
IHNob3VsZCBjYWxsIC1kaXNjYXJkTWFya2VkVGV4dCBvbiBpbnB1dCBjb250ZXh0IHRvIG5vdGlm
eSB0aGUgaW5wdXQgbWV0aG9kLgorICAgICAgICAvLyBUaGlzIHdpbGwgaGFwcGVuIG5hdHVyYWxs
eSBsYXRlciwgYXMgcGFydCBvZiByZWxvYWRpbmcgdGhlIHBhZ2UuCisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRDb21wb3NpdGlvbkFzeW5j
KHRleHQsIHVuZGVybGluZXMsIGhpZ2hsaWdodHMsIHNlbGVjdGlvblJhbmdlLCByZXBsYWNlbWVu
dFJhbmdlKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpjb25maXJtQ29tcG9zaXRpb25Bc3lu
YygpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisK
KyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpDb25maXJtQ29tcG9zaXRpb25Bc3luYygpKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFNjcm9sbFBlcmZvcm1hbmNlRGF0YUNvbGxlY3Rp
b25FbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBpZiAoZW5hYmxlZCA9PSBtX3Njcm9sbFBl
cmZvcm1hbmNlRGF0YUNvbGxlY3Rpb25FbmFibGVkKQorICAgICAgICByZXR1cm47CisKKyAgICBt
X3Njcm9sbFBlcmZvcm1hbmNlRGF0YUNvbGxlY3Rpb25FbmFibGVkID0gZW5hYmxlZDsKKworICAg
IGlmIChtX3Njcm9sbFBlcmZvcm1hbmNlRGF0YUNvbGxlY3Rpb25FbmFibGVkICYmICFtX3Njcm9s
bGluZ1BlcmZvcm1hbmNlRGF0YSkKKyAgICAgICAgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZURhdGEg
PSBtYWtlVW5pcXVlPFJlbW90ZUxheWVyVHJlZVNjcm9sbGluZ1BlcmZvcm1hbmNlRGF0YT4oZG93
bmNhc3Q8UmVtb3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWFQcm94eT4oKm1fZHJhd2luZ0FyZWEpKTsK
KyAgICBlbHNlIGlmICghbV9zY3JvbGxQZXJmb3JtYW5jZURhdGFDb2xsZWN0aW9uRW5hYmxlZCkK
KyAgICAgICAgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZURhdGEgPSBudWxscHRyOworfQorI2VuZGlm
CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp0YWtlU25hcHNob3QoSW50UmVjdCByZWN0LCBJbnRTaXpl
IGJpdG1hcFNpemUsIFNuYXBzaG90T3B0aW9ucyBvcHRpb25zLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJik+JiYgY2FsbGJhY2spCit7CisgICAg
c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpUYWtlU25hcHNob3QocmVjdCwg
Yml0bWFwU2l6ZSwgb3B0aW9ucyksIFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6Om5hdmlnYXRpb25HZXN0dXJlRGlkQmVnaW4oKQoreworICAgIFBhZ2VDbGllbnRQ
cm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAgICBtX2lzU2hvd2luZ05hdmln
YXRpb25HZXN0dXJlU25hcHNob3QgPSB0cnVlOworICAgIHBhZ2VDbGllbnQoKS5uYXZpZ2F0aW9u
R2VzdHVyZURpZEJlZ2luKCk7CisKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEJlZ2luTmF2
aWdhdGlvbkdlc3R1cmUoKnRoaXMpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bmF2aWdhdGlv
bkdlc3R1cmVXaWxsRW5kKGJvb2wgd2lsbE5hdmlnYXRlLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVt
JiBpdGVtKQoreworICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQo
KSk7CisgICAgaWYgKHdpbGxOYXZpZ2F0ZSkgeworICAgICAgICBtX2lzTGF5ZXJUcmVlRnJvemVu
RHVlVG9Td2lwZUFuaW1hdGlvbiA9IHRydWU7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OkZyZWV6ZUxheWVyVHJlZUR1ZVRvU3dpcGVBbmltYXRpb24oKSk7CisgICAgfQorCisgICAg
cGFnZUNsaWVudCgpLm5hdmlnYXRpb25HZXN0dXJlV2lsbEVuZCh3aWxsTmF2aWdhdGUsIGl0ZW0p
OworCisgICAgbV9uYXZpZ2F0aW9uQ2xpZW50LT53aWxsRW5kTmF2aWdhdGlvbkdlc3R1cmUoKnRo
aXMsIHdpbGxOYXZpZ2F0ZSwgaXRlbSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpuYXZpZ2F0
aW9uR2VzdHVyZURpZEVuZChib29sIHdpbGxOYXZpZ2F0ZSwgV2ViQmFja0ZvcndhcmRMaXN0SXRl
bSYgaXRlbSkKK3sKKyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50
KCkpOworCisgICAgcGFnZUNsaWVudCgpLm5hdmlnYXRpb25HZXN0dXJlRGlkRW5kKHdpbGxOYXZp
Z2F0ZSwgaXRlbSk7CisKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZEVuZE5hdmlnYXRpb25H
ZXN0dXJlKCp0aGlzLCB3aWxsTmF2aWdhdGUsIGl0ZW0pOworCisgICAgaWYgKG1faXNMYXllclRy
ZWVGcm96ZW5EdWVUb1N3aXBlQW5pbWF0aW9uKSB7CisgICAgICAgIG1faXNMYXllclRyZWVGcm96
ZW5EdWVUb1N3aXBlQW5pbWF0aW9uID0gZmFsc2U7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OlVuZnJlZXplTGF5ZXJUcmVlRHVlVG9Td2lwZUFuaW1hdGlvbigpKTsKKworICAgICAg
ICBpZiAobV9wcm92aXNpb25hbFBhZ2UpCisgICAgICAgICAgICBtX3Byb3Zpc2lvbmFsUGFnZS0+
dW5mcmVlemVMYXllclRyZWVEdWVUb1N3aXBlQW5pbWF0aW9uKCk7CisgICAgfQorfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6bmF2aWdhdGlvbkdlc3R1cmVEaWRFbmQoKQoreworICAgIFBhZ2VDbGll
bnRQcm90ZWN0b3IgcHJvdGVjdG9yKHBhZ2VDbGllbnQoKSk7CisKKyAgICBwYWdlQ2xpZW50KCku
bmF2aWdhdGlvbkdlc3R1cmVEaWRFbmQoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OndpbGxS
ZWNvcmROYXZpZ2F0aW9uU25hcHNob3QoV2ViQmFja0ZvcndhcmRMaXN0SXRlbSYgaXRlbSkKK3sK
KyAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3RvcihwYWdlQ2xpZW50KCkpOworCisgICAg
cGFnZUNsaWVudCgpLndpbGxSZWNvcmROYXZpZ2F0aW9uU25hcHNob3QoaXRlbSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpuYXZpZ2F0aW9uR2VzdHVyZVNuYXBzaG90V2FzUmVtb3ZlZCgpCit7
CisgICAgbV9pc1Nob3dpbmdOYXZpZ2F0aW9uR2VzdHVyZVNuYXBzaG90ID0gZmFsc2U7CisKKyAg
ICAvLyBUaGUgVmlld0dlc3R1cmVDb250cm9sbGVyIG1heSBjYWxsIHRoaXMgbWV0aG9kIG9uIGEg
V2ViUGFnZVByb3h5IHdob3NlIHZpZXcgaGFzIGJlZW4gZGVzdHJveWVkLiBJbiBzdWNoIGNhc2Us
CisgICAgLy8gd2UgbmVlZCB0byByZXR1cm4gZWFybHkgYXMgdGhlIHBhZ2VDbGllbnQgd2lsbCBu
b3QgYmUgdmFsaWQgYmVsb3cuCisgICAgaWYgKG1faXNDbG9zZWQpCisgICAgICAgIHJldHVybjsK
KworICAgIHBhZ2VDbGllbnQoKS5kaWRSZW1vdmVOYXZpZ2F0aW9uR2VzdHVyZVNuYXBzaG90KCk7
CisKKyAgICBtX25hdmlnYXRpb25DbGllbnQtPmRpZFJlbW92ZU5hdmlnYXRpb25HZXN0dXJlU25h
cHNob3QoKnRoaXMpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aXNQbGF5aW5nTWVkaWFEaWRD
aGFuZ2UoTWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzIG5ld1N0YXRlKQoreworI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKCFtX3Byb2Nlc3MtPnRocm90dGxlcigpLnNob3Vs
ZEJlUnVubmFibGUoKSkKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCisKKyAgICBpZiAoIW1faXND
bG9zZWQpCisgICAgICAgIHVwZGF0ZVBsYXlpbmdNZWRpYURpZENoYW5nZShuZXdTdGF0ZSwgQ2Fu
RGVsYXlOb3RpZmljYXRpb246Olllcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1cGRhdGVQ
bGF5aW5nTWVkaWFEaWRDaGFuZ2UoTWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzIG5ld1N0
YXRlLCBDYW5EZWxheU5vdGlmaWNhdGlvbiBjYW5EZWxheU5vdGlmaWNhdGlvbikKK3sKKyNpZiBF
TkFCTEUoTUVESUFfU1RSRUFNKQorICAgIGF1dG8gdXBkYXRlTWVkaWFDYXB0dXJlU3RhdGVJbW1l
ZGlhdGVseUlmTmVlZGVkID0gWyZdIHsKKyAgICAgICAgaWYgKGNhbkRlbGF5Tm90aWZpY2F0aW9u
ID09IENhbkRlbGF5Tm90aWZpY2F0aW9uOjpObyAmJiBtX3VwZGF0ZVJlcG9ydGVkTWVkaWFDYXB0
dXJlU3RhdGVUaW1lci5pc0FjdGl2ZSgpKSB7CisgICAgICAgICAgICBtX3VwZGF0ZVJlcG9ydGVk
TWVkaWFDYXB0dXJlU3RhdGVUaW1lci5zdG9wKCk7CisgICAgICAgICAgICB1cGRhdGVSZXBvcnRl
ZE1lZGlhQ2FwdHVyZVN0YXRlKCk7CisgICAgICAgIH0KKyAgICB9OworI2VuZGlmCisKKyAgICBp
ZiAobmV3U3RhdGUgPT0gbV9tZWRpYVN0YXRlKSB7CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
KyAgICAgICAgdXBkYXRlTWVkaWFDYXB0dXJlU3RhdGVJbW1lZGlhdGVseUlmTmVlZGVkKCk7Cisj
ZW5kaWYKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworI2lmIFBMQVRGT1JNKE1BQ0NBVEFMWVNU
KQorICAgIC8vIFdoZW4gdGhlIHBhZ2Ugc3RhcnRzIHBsYXlpbmcgbWVkaWEgZm9yIHRoZSBmaXJz
dCB0aW1lLCBtYWtlIHN1cmUgd2UgcmVnaXN0ZXIgd2l0aAorICAgIC8vIHRoZSBFbmRvd21lbnRT
dGF0ZVRyYWNrZXIgdG8gZ2V0IG5vdGlmaWNhdGlvbnMgd2hlbiB0aGUgYXBwbGljYXRpb24gaXMg
bm8gbG9uZ2VyCisgICAgLy8gdXNlci1mYWNpbmcsIHNvIHRoYXQgd2UgY2FuIGFwcHJvcHJpYXRl
bHkgc3VzcGVuZCBhbGwgbWVkaWEgcGxheWJhY2suCisgICAgaWYgKCFtX2lzTGlzdGVuaW5nRm9y
VXNlckZhY2luZ1N0YXRlQ2hhbmdlTm90aWZpY2F0aW9uKSB7CisgICAgICAgIEVuZG93bWVudFN0
YXRlVHJhY2tlcjo6c2luZ2xldG9uKCkuYWRkQ2xpZW50KCp0aGlzKTsKKyAgICAgICAgbV9pc0xp
c3RlbmluZ0ZvclVzZXJGYWNpbmdTdGF0ZUNoYW5nZU5vdGlmaWNhdGlvbiA9IHRydWU7CisgICAg
fQorI2VuZGlmCisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAgIFdlYkNvcmU6Ok1lZGlh
UHJvZHVjZXI6Ok1lZGlhU3RhdGVGbGFncyBvbGRNZWRpYUNhcHR1cmVTdGF0ZSA9IG1fbWVkaWFT
dGF0ZSAmIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhQ2FwdHVyZU1hc2s7CisgICAgV2Vi
Q29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFTdGF0ZUZsYWdzIG5ld01lZGlhQ2FwdHVyZVN0YXRl
ID0gbmV3U3RhdGUgJiBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYUNhcHR1cmVNYXNrOwor
I2VuZGlmCisKKyAgICBNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MgcGxheWluZ01lZGlh
TWFzayB7IE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGU6OklzUGxheWluZ0F1ZGlvLCBNZWRpYVBy
b2R1Y2VyOjpNZWRpYVN0YXRlOjpJc1BsYXlpbmdWaWRlbyB9OworICAgIE1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncyBvbGRTdGF0ZSA9IG1fbWVkaWFTdGF0ZTsKKworICAgIGJvb2wgcGxh
eWluZ0F1ZGlvQ2hhbmdlcyA9IChvbGRTdGF0ZS5jb250YWlucyhNZWRpYVByb2R1Y2VyOjpNZWRp
YVN0YXRlOjpJc1BsYXlpbmdBdWRpbykpICE9IChuZXdTdGF0ZS5jb250YWlucyhNZWRpYVByb2R1
Y2VyOjpNZWRpYVN0YXRlOjpJc1BsYXlpbmdBdWRpbykpOworICAgIGlmIChwbGF5aW5nQXVkaW9D
aGFuZ2VzKQorICAgICAgICBwYWdlQ2xpZW50KCkuaXNQbGF5aW5nQXVkaW9XaWxsQ2hhbmdlKCk7
CisgICAgbV9tZWRpYVN0YXRlID0gbmV3U3RhdGU7CisgICAgaWYgKHBsYXlpbmdBdWRpb0NoYW5n
ZXMpCisgICAgICAgIHBhZ2VDbGllbnQoKS5pc1BsYXlpbmdBdWRpb0RpZENoYW5nZSgpOworCisj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBpZiAob2xkTWVkaWFDYXB0dXJlU3RhdGUgIT0g
bmV3TWVkaWFDYXB0dXJlU3RhdGUpIHsKKyAgICAgICAgdXBkYXRlUmVwb3J0ZWRNZWRpYUNhcHR1
cmVTdGF0ZSgpOworCisgICAgICAgIEFTU0VSVChtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlcik7CisgICAgICAgIGlmIChtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdl
cikKKyAgICAgICAgICAgIG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLT5jYXB0
dXJlU3RhdGVDaGFuZ2VkKG9sZE1lZGlhQ2FwdHVyZVN0YXRlLCBuZXdNZWRpYUNhcHR1cmVTdGF0
ZSk7CisgICAgfQorICAgIHVwZGF0ZU1lZGlhQ2FwdHVyZVN0YXRlSW1tZWRpYXRlbHlJZk5lZWRl
ZCgpOworI2VuZGlmCisKKyAgICBhY3Rpdml0eVN0YXRlRGlkQ2hhbmdlKHsgQWN0aXZpdHlTdGF0
ZTo6SXNBdWRpYmxlLCBBY3Rpdml0eVN0YXRlOjpJc0NhcHR1cmluZ01lZGlhIH0pOworCisgICAg
cGxheWluZ01lZGlhTWFzay5hZGQoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVkaWFDYXB0dXJl
TWFzayk7CisgICAgaWYgKChvbGRTdGF0ZSAmIHBsYXlpbmdNZWRpYU1hc2spICE9IChtX21lZGlh
U3RhdGUgJiBwbGF5aW5nTWVkaWFNYXNrKSkKKyAgICAgICAgbV91aUNsaWVudC0+aXNQbGF5aW5n
TWVkaWFEaWRDaGFuZ2UoKnRoaXMpOworCisgICAgaWYgKChvbGRTdGF0ZS5jb250YWluc0FueShN
ZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlOjpIYXNBdWRpb09yVmlkZW8pKSAhPSAobV9tZWRpYVN0
YXRlLmNvbnRhaW5zQW55KE1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGU6Okhhc0F1ZGlvT3JWaWRl
bykpKQorICAgICAgICB2aWRlb0NvbnRyb2xzTWFuYWdlckRpZENoYW5nZSgpOworCisgICAgbV9w
cm9jZXNzLT51cGRhdGVBdWRpYmxlTWVkaWFBc3NlcnRpb25zKCk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5Ojp1cGRhdGVSZXBvcnRlZE1lZGlhQ2FwdHVyZVN0YXRlKCkKK3sKKyAgICBhdXRvIGFj
dGl2ZUNhcHR1cmVTdGF0ZSA9IG1fbWVkaWFTdGF0ZSAmIE1lZGlhUHJvZHVjZXI6Ok1lZGlhQ2Fw
dHVyZU1hc2s7CisgICAgaWYgKG1fcmVwb3J0ZWRNZWRpYUNhcHR1cmVTdGF0ZSA9PSBhY3RpdmVD
YXB0dXJlU3RhdGUpCisgICAgICAgIHJldHVybjsKKworICAgIGJvb2wgaGF2ZVJlcG9ydGVkQ2Fw
dHVyZSA9IG1fcmVwb3J0ZWRNZWRpYUNhcHR1cmVTdGF0ZS5jb250YWluc0FueShNZWRpYVByb2R1
Y2VyOjpNZWRpYUNhcHR1cmVNYXNrKTsKKyAgICBib29sIHdpbGxSZXBvcnRDYXB0dXJlID0gIWFj
dGl2ZUNhcHR1cmVTdGF0ZS5pc0VtcHR5KCk7CisKKyAgICBpZiAoaGF2ZVJlcG9ydGVkQ2FwdHVy
ZSAmJiAhd2lsbFJlcG9ydENhcHR1cmUgJiYgbV91cGRhdGVSZXBvcnRlZE1lZGlhQ2FwdHVyZVN0
YXRlVGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKCFoYXZlUmVw
b3J0ZWRDYXB0dXJlICYmIHdpbGxSZXBvcnRDYXB0dXJlKQorICAgICAgICBtX3VwZGF0ZVJlcG9y
dGVkTWVkaWFDYXB0dXJlU3RhdGVUaW1lci5zdGFydE9uZVNob3QobV9tZWRpYUNhcHR1cmVSZXBv
cnRpbmdEZWxheSk7CisKKyAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coV2ViUlRDLCAidXBk
YXRlUmVwb3J0ZWRNZWRpYUNhcHR1cmVTdGF0ZTogZnJvbSAlZCB0byAlZCIsIG1fcmVwb3J0ZWRN
ZWRpYUNhcHR1cmVTdGF0ZS50b1JhdygpLCBhY3RpdmVDYXB0dXJlU3RhdGUudG9SYXcoKSk7CisK
KyAgICBib29sIG1pY3JvcGhvbmVDYXB0dXJlQ2hhbmdlZCA9IChtX3JlcG9ydGVkTWVkaWFDYXB0
dXJlU3RhdGUgJiBNZWRpYVByb2R1Y2VyOjpBdWRpb0NhcHR1cmVNYXNrKSAhPSAoYWN0aXZlQ2Fw
dHVyZVN0YXRlICYgTWVkaWFQcm9kdWNlcjo6QXVkaW9DYXB0dXJlTWFzayk7CisgICAgYm9vbCBj
YW1lcmFDYXB0dXJlQ2hhbmdlZCA9IChtX3JlcG9ydGVkTWVkaWFDYXB0dXJlU3RhdGUgJiBNZWRp
YVByb2R1Y2VyOjpWaWRlb0NhcHR1cmVNYXNrKSAhPSAoYWN0aXZlQ2FwdHVyZVN0YXRlICYgTWVk
aWFQcm9kdWNlcjo6VmlkZW9DYXB0dXJlTWFzayk7CisKKyAgICBpZiAobWljcm9waG9uZUNhcHR1
cmVDaGFuZ2VkKQorICAgICAgICBwYWdlQ2xpZW50KCkubWljcm9waG9uZUNhcHR1cmVXaWxsQ2hh
bmdlKCk7CisgICAgaWYgKGNhbWVyYUNhcHR1cmVDaGFuZ2VkKQorICAgICAgICBwYWdlQ2xpZW50
KCkuY2FtZXJhQ2FwdHVyZVdpbGxDaGFuZ2UoKTsKKworICAgIG1fcmVwb3J0ZWRNZWRpYUNhcHR1
cmVTdGF0ZSA9IGFjdGl2ZUNhcHR1cmVTdGF0ZTsKKyAgICBtX3VpQ2xpZW50LT5tZWRpYUNhcHR1
cmVTdGF0ZURpZENoYW5nZShtX21lZGlhU3RhdGUpOworCisgICAgaWYgKG1pY3JvcGhvbmVDYXB0
dXJlQ2hhbmdlZCkKKyAgICAgICAgcGFnZUNsaWVudCgpLm1pY3JvcGhvbmVDYXB0dXJlQ2hhbmdl
ZCgpOworICAgIGlmIChjYW1lcmFDYXB0dXJlQ2hhbmdlZCkKKyAgICAgICAgcGFnZUNsaWVudCgp
LmNhbWVyYUNhcHR1cmVDaGFuZ2VkKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp2aWRlb0Nv
bnRyb2xzTWFuYWdlckRpZENoYW5nZSgpCit7CisgICAgcGFnZUNsaWVudCgpLnZpZGVvQ29udHJv
bHNNYW5hZ2VyRGlkQ2hhbmdlKCk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpoYXNBY3RpdmVW
aWRlb0ZvckNvbnRyb2xzTWFuYWdlcigpIGNvbnN0Cit7CisjaWYgRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKQorICAgIHJldHVybiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIgJiYgbV9w
bGF5YmFja1Nlc3Npb25NYW5hZ2VyLT5jb250cm9sc01hbmFnZXJJbnRlcmZhY2UoKTsKKyNlbHNl
CisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1
ZXN0Q29udHJvbGxlZEVsZW1lbnRJRCgpIGNvbnN0Cit7CisjaWYgRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKQorICAgIGlmIChtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIpCisgICAgICAg
IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlci0+cmVxdWVzdENvbnRyb2xsZWRFbGVtZW50SUQoKTsK
KyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlQ29udHJvbGxlZEVsZW1lbnRJ
RFJlc3BvbnNlKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllcikgY29uc3QKK3sKKyNpZiBQTEFURk9S
TShNQUMpCisgICAgcGFnZUNsaWVudCgpLmhhbmRsZUNvbnRyb2xsZWRFbGVtZW50SURSZXNwb25z
ZShpZGVudGlmaWVyKTsKKyNlbmRpZgorfQorCitib29sIFdlYlBhZ2VQcm94eTo6aXNQbGF5aW5n
VmlkZW9JbkVuaGFuY2VkRnVsbHNjcmVlbigpIGNvbnN0Cit7CisjaWYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKQorICAgIHJldHVybiBtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgJiYg
bV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT5pc1BsYXlpbmdWaWRlb0luRW5oYW5jZWRGdWxsc2Ny
ZWVuKCk7CisjZWxzZQorICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6aGFuZGxlQXV0b3BsYXlFdmVudChXZWJDb3JlOjpBdXRvcGxheUV2ZW50IGV2ZW50
LCBPcHRpb25TZXQ8QXV0b3BsYXlFdmVudEZsYWdzPiBmbGFncykKK3sKKyAgICBtX3VpQ2xpZW50
LT5oYW5kbGVBdXRvcGxheUV2ZW50KCp0aGlzLCBldmVudCwgZmxhZ3MpOworfQorCisjaWYgUExB
VEZPUk0oTUFDKQordm9pZCBXZWJQYWdlUHJveHk6OnBlcmZvcm1JbW1lZGlhdGVBY3Rpb25IaXRU
ZXN0QXRMb2NhdGlvbihGbG9hdFBvaW50IHBvaW50KQoreworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2U6OlBlcmZvcm1JbW1lZGlhdGVBY3Rpb25IaXRUZXN0QXRMb2NhdGlvbihwb2ludCkpOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aW1tZWRpYXRlQWN0aW9uRGlkVXBkYXRlKCkKK3sKKyAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpJbW1lZGlhdGVBY3Rpb25EaWRVcGRhdGUoKSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjppbW1lZGlhdGVBY3Rpb25EaWRDYW5jZWwoKQoreworICAg
IHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkltbWVkaWF0ZUFjdGlvbkRpZENhbmNlbCgpKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmltbWVkaWF0ZUFjdGlvbkRpZENvbXBsZXRlKCkKK3sKKyAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpJbW1lZGlhdGVBY3Rpb25EaWRDb21wbGV0ZSgpKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFBlcmZvcm1JbW1lZGlhdGVBY3Rpb25IaXRUZXN0
KGNvbnN0IFdlYkhpdFRlc3RSZXN1bHREYXRhJiByZXN1bHQsIGJvb2wgY29udGVudFByZXZlbnRz
RGVmYXVsdCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIHBhZ2VDbGllbnQoKS5k
aWRQZXJmb3JtSW1tZWRpYXRlQWN0aW9uSGl0VGVzdChyZXN1bHQsIGNvbnRlbnRQcmV2ZW50c0Rl
ZmF1bHQsIG1fcHJvY2Vzcy0+dHJhbnNmb3JtSGFuZGxlc1RvT2JqZWN0cyh1c2VyRGF0YS5vYmpl
Y3QoKSkuZ2V0KCkpOworfQorCitOU09iamVjdCAqV2ViUGFnZVByb3h5OjppbW1lZGlhdGVBY3Rp
b25BbmltYXRpb25Db250cm9sbGVyRm9ySGl0VGVzdFJlc3VsdChSZWZQdHI8QVBJOjpIaXRUZXN0
UmVzdWx0PiBoaXRUZXN0UmVzdWx0LCB1aW50NjRfdCB0eXBlLCBSZWZQdHI8QVBJOjpPYmplY3Q+
IHVzZXJEYXRhKQoreworICAgIHJldHVybiBwYWdlQ2xpZW50KCkuaW1tZWRpYXRlQWN0aW9uQW5p
bWF0aW9uQ29udHJvbGxlckZvckhpdFRlc3RSZXN1bHQoaGl0VGVzdFJlc3VsdCwgdHlwZSwgdXNl
ckRhdGEpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlQWNjZXB0ZWRDYW5kaWRhdGUo
V2ViQ29yZTo6VGV4dENoZWNraW5nUmVzdWx0IGFjY2VwdGVkQ2FuZGlkYXRlKQoreworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OkhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlKGFjY2VwdGVkQ2Fu
ZGlkYXRlKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRIYW5kbGVBY2NlcHRlZENhbmRp
ZGF0ZSgpCit7CisgICAgcGFnZUNsaWVudCgpLmRpZEhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlKCk7
Cit9CisgICAgCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VXNlU3lzdGVtQXBwZWFyYW5jZShib29s
IHVzZVN5c3RlbUFwcGVhcmFuY2UpCit7ICAgIAorICAgIGlmICh1c2VTeXN0ZW1BcHBlYXJhbmNl
ID09IG1fdXNlU3lzdGVtQXBwZWFyYW5jZSkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIG1f
dXNlU3lzdGVtQXBwZWFyYW5jZSA9IHVzZVN5c3RlbUFwcGVhcmFuY2U7CisKKyAgICBpZiAoIWhh
c1J1bm5pbmdQcm9jZXNzKCkpCisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlNldFVzZVN5c3RlbUFwcGVhcmFuY2UodXNlU3lzdGVtQXBwZWFyYW5jZSkpOwor
fQorICAgIAordm9pZCBXZWJQYWdlUHJveHk6OnNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3Rp
bmcoaW50IGhlaWdodCkKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRIZWFkZXJC
YW5uZXJIZWlnaHRGb3JUZXN0aW5nKGhlaWdodCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
c2V0Rm9vdGVyQmFubmVySGVpZ2h0Rm9yVGVzdGluZyhpbnQgaGVpZ2h0KQoreworICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2U6OlNldEZvb3RlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaGVpZ2h0
KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRFbmRNYWduaWZpY2F0aW9uR2VzdHVyZSgp
Cit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6RGlkRW5kTWFnbmlmaWNhdGlvbkdlc3R1
cmUoKSk7Cit9CisKKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6aW5zdGFsbEFjdGl2aXR5
U3RhdGVDaGFuZ2VDb21wbGV0aW9uSGFuZGxlcihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7Cisg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBtX25leHRBY3Rpdml0eVN0YXRlQ2hhbmdlQ2FsbGJhY2tzLmFwcGVuZChXVEZNb3ZlKGNvbXBs
ZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjppbWFnZU9yTWVkaWFEb2N1
bWVudFNpemVDaGFuZ2VkKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpCit7CisgICAg
bV91aUNsaWVudC0+aW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChuZXdTaXplKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OnNldFNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50
cyhib29sIHNob3VsZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cykKK3sKKyAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlOjpTZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMoc2hv
dWxkRGlzcGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpoYW5kbGVBdXRvRmlsbEJ1dHRvbkNsaWNrKGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKK3sK
KyAgICBtX3VpQ2xpZW50LT5kaWRDbGlja0F1dG9GaWxsQnV0dG9uKCp0aGlzLCBtX3Byb2Nlc3Mt
PnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkpLmdldCgpKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFJlc2lnbklucHV0RWxlbWVudFN0cm9uZ1Bhc3N3b3Jk
QXBwZWFyYW5jZShjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCit7CisgICAgbV91aUNsaWVudC0+
ZGlkUmVzaWduSW5wdXRFbGVtZW50U3Ryb25nUGFzc3dvcmRBcHBlYXJhbmNlKCp0aGlzLCBtX3By
b2Nlc3MtPnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkpLmdldCgp
KTsKK30KKworI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpICYmICFQTEFURk9S
TShJT1NfRkFNSUxZKQordm9pZCBXZWJQYWdlUHJveHk6OmFkZFBsYXliYWNrVGFyZ2V0UGlja2Vy
Q2xpZW50KFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQor
eworICAgIHBhZ2VDbGllbnQoKS5tZWRpYVNlc3Npb25NYW5hZ2VyKCkuYWRkUGxheWJhY2tUYXJn
ZXRQaWNrZXJDbGllbnQoKnRoaXMsIGNvbnRleHRJZCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpyZW1vdmVQbGF5YmFja1RhcmdldFBpY2tlckNsaWVudChQbGF5YmFja1RhcmdldENsaWVudENv
bnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCkKK3sKKyAgICBwYWdlQ2xpZW50KCkubWVkaWFTZXNz
aW9uTWFuYWdlcigpLnJlbW92ZVBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50KCp0aGlzLCBjb250
ZXh0SWQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2hvd1BsYXliYWNrVGFyZ2V0UGlja2Vy
KFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBjb25zdCBX
ZWJDb3JlOjpGbG9hdFJlY3QmIHJlY3QsIGJvb2wgaGFzVmlkZW8pCit7CisgICAgcGFnZUNsaWVu
dCgpLm1lZGlhU2Vzc2lvbk1hbmFnZXIoKS5zaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoKnRoaXMs
IGNvbnRleHRJZCwgcGFnZUNsaWVudCgpLnJvb3RWaWV3VG9TY3JlZW4oSW50UmVjdChyZWN0KSks
IGhhc1ZpZGVvLCB1c2VEYXJrQXBwZWFyYW5jZSgpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnBsYXliYWNrVGFyZ2V0UGlja2VyQ2xpZW50U3RhdGVEaWRDaGFuZ2UoUGxheWJhY2tUYXJnZXRD
bGllbnRDb250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6
Ok1lZGlhU3RhdGVGbGFncyBzdGF0ZSkKK3sKKyAgICBwYWdlQ2xpZW50KCkubWVkaWFTZXNzaW9u
TWFuYWdlcigpLmNsaWVudFN0YXRlRGlkQ2hhbmdlKCp0aGlzLCBjb250ZXh0SWQsIHN0YXRlKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2Vy
RW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgcGFnZUNsaWVudCgpLm1lZGlhU2Vzc2lvbk1h
bmFnZXIoKS5zZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQoZW5hYmxlZCk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tl
clN0YXRlKGNvbnN0IFN0cmluZyYgbmFtZSwgV2ViQ29yZTo6TWVkaWFQbGF5YmFja1RhcmdldENv
bnRleHQ6Ok1vY2tTdGF0ZSBzdGF0ZSkKK3sKKyAgICBwYWdlQ2xpZW50KCkubWVkaWFTZXNzaW9u
TWFuYWdlcigpLnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUobmFtZSwgc3Rh
dGUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNr
ZXJEaXNtaXNzUG9wdXAoKQoreworICAgIHBhZ2VDbGllbnQoKS5tZWRpYVNlc3Npb25NYW5hZ2Vy
KCkubW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJEaXNtaXNzUG9wdXAoKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OnNldFBsYXliYWNrVGFyZ2V0KFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29u
dGV4dElkZW50aWZpZXIgY29udGV4dElkLCBSZWY8TWVkaWFQbGF5YmFja1RhcmdldD4mJiB0YXJn
ZXQpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAgICByZXR1cm47CisK
KyAgICBhdXRvIGNvbnRleHQgPSB0YXJnZXQtPnRhcmdldENvbnRleHQoKTsKKyAgICBBU1NFUlQo
Y29udGV4dC50eXBlKCkgIT0gTWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQ6OlR5cGU6OlNlcmlh
bGl6ZWRBVk91dHB1dENvbnRleHQpOworICAgIGlmIChwcmVmZXJlbmNlcygpLnVzZUdQVVByb2Nl
c3NGb3JNZWRpYUVuYWJsZWQoKSkKKyAgICAgICAgY29udGV4dC5zZXJpYWxpemVPdXRwdXRDb250
ZXh0KCk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpQbGF5YmFja1RhcmdldFNlbGVj
dGVkKGNvbnRleHRJZCwgY29udGV4dCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZXh0ZXJu
YWxPdXRwdXREZXZpY2VBdmFpbGFibGVEaWRDaGFuZ2UoUGxheWJhY2tUYXJnZXRDbGllbnRDb250
ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIGJvb2wgYXZhaWxhYmxlKQoreworICAgIGlmICghaGFz
UnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZTo6UGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlEaWRDaGFuZ2UoY29udGV4dElkLCBh
dmFpbGFibGUpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldFNob3VsZFBsYXlUb1BsYXli
YWNrVGFyZ2V0KFBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4dElkZW50aWZpZXIgY29udGV4dElk
LCBib29sIHNob3VsZFBsYXkpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTZXRTaG91bGRQbGF5
VG9QbGF5YmFja1RhcmdldChjb250ZXh0SWQsIHNob3VsZFBsYXkpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnBsYXliYWNrVGFyZ2V0UGlja2VyV2FzRGlzbWlzc2VkKFBsYXliYWNrVGFyZ2V0
Q2xpZW50Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQoreworICAgIGlmICghaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6UGxheWJhY2tUYXJnZXRQaWNrZXJXYXNEaXNtaXNzZWQoY29udGV4dElkKSk7Cit9CisjZW5k
aWYKKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEV4Y2VlZEluYWN0aXZlTWVtb3J5TGltaXRXaGls
ZUFjdGl2ZSgpCit7CisgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HX0VSUk9SKFBlcmZvcm1h
bmNlTG9nZ2luZywgImRpZEV4Y2VlZEluYWN0aXZlTWVtb3J5TGltaXRXaGlsZUFjdGl2ZSIpOwor
ICAgIG1fdWlDbGllbnQtPmRpZEV4Y2VlZEJhY2tncm91bmRSZXNvdXJjZUxpbWl0V2hpbGVJbkZv
cmVncm91bmQoKnRoaXMsIGtXS1Jlc291cmNlTGltaXRNZW1vcnkpOworfQorCit2b2lkIFdlYlBh
Z2VQcm94eTo6ZGlkRXhjZWVkQmFja2dyb3VuZENQVUxpbWl0V2hpbGVJbkZvcmVncm91bmQoKQor
eworICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPR19FUlJPUihQZXJmb3JtYW5jZUxvZ2dpbmcs
ICJkaWRFeGNlZWRCYWNrZ3JvdW5kQ1BVTGltaXRXaGlsZUluRm9yZWdyb3VuZCIpOworICAgIG1f
dWlDbGllbnQtPmRpZEV4Y2VlZEJhY2tncm91bmRSZXNvdXJjZUxpbWl0V2hpbGVJbkZvcmVncm91
bmQoKnRoaXMsIGtXS1Jlc291cmNlTGltaXRDUFUpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
ZGlkQ2hhbmdlQmFja2dyb3VuZENvbG9yKCkKK3sKKyAgICBwYWdlQ2xpZW50KCkuZGlkQ2hhbmdl
QmFja2dyb3VuZENvbG9yKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjbGVhcldoZWVsRXZl
bnRUZXN0TW9uaXRvcigpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKQorICAgICAg
ICByZXR1cm47CisgICAgCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6Q2xlYXJXaGVlbEV2
ZW50VGVzdE1vbml0b3IoKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjYWxsQWZ0ZXJOZXh0
UHJlc2VudGF0aW9uVXBkYXRlKFdURjo6RnVuY3Rpb248dm9pZCAoQ2FsbGJhY2tCYXNlOjpFcnJv
cik+JiYgY2FsbGJhY2spCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpIHx8ICFtX2Ry
YXdpbmdBcmVhKSB7CisgICAgICAgIGNhbGxiYWNrKENhbGxiYWNrQmFzZTo6RXJyb3I6Ok93bmVy
V2FzSW52YWxpZGF0ZWQpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbV9kcmF3aW5n
QXJlYS0+ZGlzcGF0Y2hBZnRlckVuc3VyaW5nRHJhd2luZyhXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRTaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KGJv
b2wgc2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudCkKK3sKKyAgICBpZiAobV9zaG91bGRTY2Fs
ZVZpZXdUb0ZpdERvY3VtZW50ID09IHNob3VsZFNjYWxlVmlld1RvRml0RG9jdW1lbnQpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fc2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudCA9IHNob3Vs
ZFNjYWxlVmlld1RvRml0RG9jdW1lbnQ7CisKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkp
CisgICAgICAgIHJldHVybjsKKworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldFNob3Vs
ZFNjYWxlVmlld1RvRml0RG9jdW1lbnQoc2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudCkpOwor
fQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkUmVzdG9yZVNjcm9sbFBvc2l0aW9uKCkKK3sKKyAg
ICBwYWdlQ2xpZW50KCkuZGlkUmVzdG9yZVNjcm9sbFBvc2l0aW9uKCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpnZXRMb2FkRGVjaXNpb25Gb3JJY29uKGNvbnN0IFdlYkNvcmU6OkxpbmtJY29u
JiBpY29uLCBDYWxsYmFja0lEIGxvYWRJZGVudGlmaWVyKQoreworICAgIG1faWNvbkxvYWRpbmdD
bGllbnQtPmdldExvYWREZWNpc2lvbkZvckljb24oaWNvbiwgW3RoaXMsIHByb3RlY3RlZFRoaXMg
PSBtYWtlUmVmKCp0aGlzKSwgbG9hZElkZW50aWZpZXJdIChDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KEFQSTo6RGF0YSopPiYmIGNhbGxiYWNrKSB7CisgICAgICAgIGlmICghaGFzUnVubmluZ1Byb2Nl
c3MoKSkgeworICAgICAgICAgICAgaWYgKGNhbGxiYWNrKQorICAgICAgICAgICAgICAgIGNhbGxi
YWNrKG51bGxwdHIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAg
aWYgKCFjYWxsYmFjaykgeworICAgICAgICAgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2Vz
OjpXZWJQYWdlOjpEaWRHZXRMb2FkRGVjaXNpb25Gb3JJY29uKGZhbHNlLCBsb2FkSWRlbnRpZmll
ciksIFtdKGF1dG8pIHsgfSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAg
ICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpEaWRHZXRMb2FkRGVjaXNp
b25Gb3JJY29uKHRydWUsIGxvYWRJZGVudGlmaWVyKSwgW2NhbGxiYWNrID0gV1RGTW92ZShjYWxs
YmFjayldKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgaWNvbkRhdGEpIG11dGFibGUgeworICAg
ICAgICAgICAgY2FsbGJhY2soQVBJOjpEYXRhOjpjcmVhdGUoaWNvbkRhdGEpLmdldCgpKTsKKyAg
ICAgICAgfSk7CisgICAgfSk7Cit9CisKK1dlYkNvcmU6OlVzZXJJbnRlcmZhY2VMYXlvdXREaXJl
Y3Rpb24gV2ViUGFnZVByb3h5Ojp1c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKCkKK3sKKyAg
ICByZXR1cm4gcGFnZUNsaWVudCgpLnVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24oKTsKK30K
Kwordm9pZCBXZWJQYWdlUHJveHk6OnNldFVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24oV2Vi
Q29yZTo6VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiB1c2VySW50ZXJmYWNlTGF5b3V0RGly
ZWN0aW9uKQoreworICAgIGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0VXNlckludGVyZmFjZUxheW91dERp
cmVjdGlvbihzdGF0aWNfY2FzdDx1aW50MzJfdD4odXNlckludGVyZmFjZUxheW91dERpcmVjdGlv
bikpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmhpZGVWYWxpZGF0aW9uTWVzc2FnZSgpCit7
CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgbV92YWxpZGF0aW9uQnViYmxlID0gbnVsbHB0cjsK
KyNlbmRpZgorfQorCisvLyBGSVhNRTogQ29uc29saWRhdGUgd2l0aCBkaXNtaXNzQ29udGVudFJl
bGF0aXZlQ2hpbGRXaW5kb3dzCit2b2lkIFdlYlBhZ2VQcm94eTo6Y2xvc2VPdmVybGF5ZWRWaWV3
cygpCit7CisgICAgaGlkZVZhbGlkYXRpb25NZXNzYWdlKCk7CisKKyNpZiBFTkFCTEUoREFUQUxJ
U1RfRUxFTUVOVCkKKyAgICBlbmREYXRhTGlzdFN1Z2dlc3Rpb25zKCk7CisjZW5kaWYKKworI2lm
IEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQorICAgIGVuZENvbG9yUGlja2VyKCk7CisjZW5kaWYK
KworI2lmIEVOQUJMRShEQVRFX0FORF9USU1FX0lOUFVUX1RZUEVTKQorICAgIGVuZERhdGVUaW1l
UGlja2VyKCk7CisjZW5kaWYKK30KKworI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCit2b2lkIFdl
YlBhZ2VQcm94eTo6cmVxdWVzdFBvaW50ZXJMb2NrKCkKK3sKKyAgICBBU1NFUlQoIW1faXNQb2lu
dGVyTG9ja1BlbmRpbmcpOworICAgIEFTU0VSVCghbV9pc1BvaW50ZXJMb2NrZWQpOworICAgIG1f
aXNQb2ludGVyTG9ja1BlbmRpbmcgPSB0cnVlOworCisgICAgaWYgKCFpc1ZpZXdWaXNpYmxlKCkg
fHwgIShtX2FjdGl2aXR5U3RhdGUgJiBBY3Rpdml0eVN0YXRlOjpJc0ZvY3VzZWQpKSB7CisgICAg
ICAgIGRpZERlbnlQb2ludGVyTG9jaygpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIG1f
dWlDbGllbnQtPnJlcXVlc3RQb2ludGVyTG9jayh0aGlzKTsKK30KKyAgICAKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpkaWRBbGxvd1BvaW50ZXJMb2NrKCkKK3sKKyAgICBBU1NFUlQobV9pc1BvaW50ZXJM
b2NrUGVuZGluZyAmJiAhbV9pc1BvaW50ZXJMb2NrZWQpOworICAgIG1faXNQb2ludGVyTG9ja2Vk
ID0gdHJ1ZTsKKyAgICBtX2lzUG9pbnRlckxvY2tQZW5kaW5nID0gZmFsc2U7CisjaWYgUExBVEZP
Uk0oTUFDKQorICAgIENHRGlzcGxheUhpZGVDdXJzb3IoQ0dNYWluRGlzcGxheUlEKCkpOworICAg
IENHQXNzb2NpYXRlTW91c2VBbmRNb3VzZUN1cnNvclBvc2l0aW9uKGZhbHNlKTsKKyNlbmRpZgor
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZEFjcXVpcmVQb2ludGVyTG9jaygpKTsKK30K
KyAgICAKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWREZW55UG9pbnRlckxvY2soKQoreworICAgIEFT
U0VSVChtX2lzUG9pbnRlckxvY2tQZW5kaW5nICYmICFtX2lzUG9pbnRlckxvY2tlZCk7CisgICAg
bV9pc1BvaW50ZXJMb2NrUGVuZGluZyA9IGZhbHNlOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2U6OkRpZE5vdEFjcXVpcmVQb2ludGVyTG9jaygpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnJlcXVlc3RQb2ludGVyVW5sb2NrKCkKK3sKKyAgICBpZiAobV9pc1BvaW50ZXJMb2NrZWQpIHsK
KyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIENHQXNzb2NpYXRlTW91c2VBbmRNb3VzZUN1cnNv
clBvc2l0aW9uKHRydWUpOworICAgICAgICBDR0Rpc3BsYXlTaG93Q3Vyc29yKENHTWFpbkRpc3Bs
YXlJRCgpKTsKKyNlbmRpZgorICAgICAgICBtX3VpQ2xpZW50LT5kaWRMb3NlUG9pbnRlckxvY2so
dGhpcyk7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkRpZExvc2VQb2ludGVyTG9j
aygpKTsKKyAgICB9CisKKyAgICBpZiAobV9pc1BvaW50ZXJMb2NrUGVuZGluZykgeworICAgICAg
ICBtX3VpQ2xpZW50LT5kaWRMb3NlUG9pbnRlckxvY2sodGhpcyk7CisgICAgICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OkRpZE5vdEFjcXVpcmVQb2ludGVyTG9jaygpKTsKKyAgICB9CisKKyAg
ICBtX2lzUG9pbnRlckxvY2tlZCA9IGZhbHNlOworICAgIG1faXNQb2ludGVyTG9ja1BlbmRpbmcg
PSBmYWxzZTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0VVJMU2NoZW1lSGFu
ZGxlckZvclNjaGVtZShSZWY8V2ViVVJMU2NoZW1lSGFuZGxlcj4mJiBoYW5kbGVyLCBjb25zdCBT
dHJpbmcmIHNjaGVtZSkKK3sKKyAgICBhdXRvIGNhbm9uaWNhbGl6ZWRTY2hlbWUgPSBXVEY6OlVS
TFBhcnNlcjo6bWF5YmVDYW5vbmljYWxpemVTY2hlbWUoc2NoZW1lKTsKKyAgICBBU1NFUlQoY2Fu
b25pY2FsaXplZFNjaGVtZSk7CisgICAgQVNTRVJUKCFXVEY6OlVSTFBhcnNlcjo6aXNTcGVjaWFs
U2NoZW1lKGNhbm9uaWNhbGl6ZWRTY2hlbWUudmFsdWUoKSkpOworCisgICAgYXV0byBzY2hlbWVS
ZXN1bHQgPSBtX3VybFNjaGVtZUhhbmRsZXJzQnlTY2hlbWUuYWRkKGNhbm9uaWNhbGl6ZWRTY2hl
bWUudmFsdWUoKSwgaGFuZGxlci5nZXQoKSk7CisgICAgQVNTRVJUX1VOVVNFRChzY2hlbWVSZXN1
bHQsIHNjaGVtZVJlc3VsdC5pc05ld0VudHJ5KTsKKworICAgIGF1dG8gaGFuZGxlcklkZW50aWZp
ZXIgPSBoYW5kbGVyLT5pZGVudGlmaWVyKCk7CisgICAgYXV0byBoYW5kbGVySWRlbnRpZmllclJl
c3VsdCA9IG1fdXJsU2NoZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIuYWRkKGhhbmRsZXJJZGVudGlm
aWVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKKyAgICBBU1NFUlRfVU5VU0VEKGhhbmRsZXJJZGVudGlm
aWVyUmVzdWx0LCBoYW5kbGVySWRlbnRpZmllclJlc3VsdC5pc05ld0VudHJ5KTsKKworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2U6OlJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcihoYW5kbGVySWRl
bnRpZmllciwgY2Fub25pY2FsaXplZFNjaGVtZS52YWx1ZSgpKSk7Cit9CisKK1dlYlVSTFNjaGVt
ZUhhbmRsZXIqIFdlYlBhZ2VQcm94eTo6dXJsU2NoZW1lSGFuZGxlckZvclNjaGVtZShjb25zdCBT
dHJpbmcmIHNjaGVtZSkKK3sKKyAgICByZXR1cm4gc2NoZW1lLmlzTnVsbCgpID8gbnVsbHB0ciA6
IG1fdXJsU2NoZW1lSGFuZGxlcnNCeVNjaGVtZS5nZXQoc2NoZW1lKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnN0YXJ0VVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBh
cmFtZXRlcnMpCit7CisgICAgc3RhcnRVUkxTY2hlbWVUYXNrU2hhcmVkKG1fcHJvY2Vzcy5jb3B5
UmVmKCksIG1fd2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYm
IHByb2Nlc3MsIFBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCwgVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMmJiBwYXJhbWV0ZXJzKQoreworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBkZWNsdHlw
ZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6aXNWYWxpZEtleShwYXJhbWV0ZXJz
LmhhbmRsZXJJZGVudGlmaWVyKSk7CisgICAgYXV0byBpdGVyYXRvciA9IG1fdXJsU2NoZW1lSGFu
ZGxlcnNCeUlkZW50aWZpZXIuZmluZChwYXJhbWV0ZXJzLmhhbmRsZXJJZGVudGlmaWVyKTsKKyAg
ICBNRVNTQUdFX0NIRUNLKHByb2Nlc3MsIGl0ZXJhdG9yICE9IG1fdXJsU2NoZW1lSGFuZGxlcnNC
eUlkZW50aWZpZXIuZW5kKCkpOworCisgICAgaXRlcmF0b3ItPnZhbHVlLT5zdGFydFRhc2soKnRo
aXMsIHByb2Nlc3MsIHdlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgbnVsbHB0cik7Cit9
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpCit7CisgICAgTUVTU0FHRV9DSEVD
SyhtX3Byb2Nlc3MsIGRlY2x0eXBlKG1fdXJsU2NoZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIpOjpp
c1ZhbGlkS2V5KGhhbmRsZXJJZGVudGlmaWVyKSk7CisgICAgYXV0byBpdGVyYXRvciA9IG1fdXJs
U2NoZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIuZmluZChoYW5kbGVySWRlbnRpZmllcik7CisgICAg
TUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGl0ZXJhdG9yICE9IG1fdXJsU2NoZW1lSGFuZGxlcnNC
eUlkZW50aWZpZXIuZW5kKCkpOworCisgICAgaXRlcmF0b3ItPnZhbHVlLT5zdG9wVGFzaygqdGhp
cywgdGFza0lkZW50aWZpZXIpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bG9hZFN5bmNocm9u
b3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMsIE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2s6OkRlbGF5
ZWRSZXBseSYmIHJlcGx5KQoreworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBkZWNsdHlw
ZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6aXNWYWxpZEtleShwYXJhbWV0ZXJz
LmhhbmRsZXJJZGVudGlmaWVyKSk7CisgICAgYXV0byBpdGVyYXRvciA9IG1fdXJsU2NoZW1lSGFu
ZGxlcnNCeUlkZW50aWZpZXIuZmluZChwYXJhbWV0ZXJzLmhhbmRsZXJJZGVudGlmaWVyKTsKKyAg
ICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgaXRlcmF0b3IgIT0gbV91cmxTY2hlbWVIYW5kbGVy
c0J5SWRlbnRpZmllci5lbmQoKSk7CisKKyAgICBpdGVyYXRvci0+dmFsdWUtPnN0YXJ0VGFzaygq
dGhpcywgbV9wcm9jZXNzLCBtX3dlYlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92
ZShyZXBseSkpOworfQorCisjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZFTlRJ
T04pCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVzdFN0b3JhZ2VBY2Nlc3NDb25maXJtKGNvbnN0
IFJlZ2lzdHJhYmxlRG9tYWluJiBzdWJGcmFtZURvbWFpbiwgY29uc3QgUmVnaXN0cmFibGVEb21h
aW4mIHRvcEZyYW1lRG9tYWluLCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBtX3VpQ2xpZW50
LT5yZXF1ZXN0U3RvcmFnZUFjY2Vzc0NvbmZpcm0oKnRoaXMsIG1fcHJvY2Vzcy0+d2ViRnJhbWUo
ZnJhbWVJRCksIHN1YkZyYW1lRG9tYWluLCB0b3BGcmFtZURvbWFpbiwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ29tbWl0Q3Jvc3NTaXRl
TG9hZFdpdGhEYXRhVHJhbnNmZXJGcm9tUHJldmFsZW50UmVzb3VyY2UoKQoreworICAgIGlmICgh
aGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdl
czo6V2ViUGFnZTo6V2FzTG9hZGVkV2l0aERhdGFUcmFuc2ZlckZyb21QcmV2YWxlbnRSZXNvdXJj
ZSgpKTsKK30KKyNlbmRpZgorCitib29sIFdlYlBhZ2VQcm94eTo6dXNlRGFya0FwcGVhcmFuY2Uo
KSBjb25zdAoreworICAgIHJldHVybiBwYWdlQ2xpZW50KCkuZWZmZWN0aXZlQXBwZWFyYW5jZUlz
RGFyaygpOworfQorCitib29sIFdlYlBhZ2VQcm94eTo6dXNlRWxldmF0ZWRVc2VySW50ZXJmYWNl
TGV2ZWwoKSBjb25zdAoreworICAgIHJldHVybiBwYWdlQ2xpZW50KCkuZWZmZWN0aXZlVXNlcklu
dGVyZmFjZUxldmVsSXNFbGV2YXRlZCgpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZWZmZWN0
aXZlQXBwZWFyYW5jZURpZENoYW5nZSgpCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
KQorICAgICAgICByZXR1cm47CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpFZmZlY3Rp
dmVBcHBlYXJhbmNlRGlkQ2hhbmdlKHVzZURhcmtBcHBlYXJhbmNlKCksIHVzZUVsZXZhdGVkVXNl
ckludGVyZmFjZUxldmVsKCkpKTsKK30KKworI2lmIEhBVkUoVE9VQ0hfQkFSKQordm9pZCBXZWJQ
YWdlUHJveHk6OnRvdWNoQmFyTWVudURhdGFDaGFuZ2VkKGNvbnN0IFRvdWNoQmFyTWVudURhdGEm
IHRvdWNoQmFyTWVudURhdGEpCit7CisgICAgbV90b3VjaEJhck1lbnVEYXRhID0gdG91Y2hCYXJN
ZW51RGF0YTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnRvdWNoQmFyTWVudUl0ZW1EYXRhQWRk
ZWQoY29uc3QgVG91Y2hCYXJNZW51SXRlbURhdGEmIHRvdWNoQmFyTWVudUl0ZW1EYXRhKQorewor
ICAgIG1fdG91Y2hCYXJNZW51RGF0YS5hZGRNZW51SXRlbSh0b3VjaEJhck1lbnVJdGVtRGF0YSk7
Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp0b3VjaEJhck1lbnVJdGVtRGF0YVJlbW92ZWQoY29u
c3QgVG91Y2hCYXJNZW51SXRlbURhdGEmIHRvdWNoQmFyTWVudUl0ZW1EYXRhKQoreworICAgIG1f
dG91Y2hCYXJNZW51RGF0YS5yZW1vdmVNZW51SXRlbSh0b3VjaEJhck1lbnVJdGVtRGF0YSk7Cit9
CisjZW5kaWYKKworI2lmIEhBVkUoUEFTVEVCT0FSRF9EQVRBX09XTkVSKQorCitEYXRhT3duZXJU
eXBlIFdlYlBhZ2VQcm94eTo6ZGF0YU93bmVyRm9yUGFzdGVib2FyZChQYXN0ZWJvYXJkQWNjZXNz
SW50ZW50IGludGVudCkgY29uc3QKK3sKKyAgICByZXR1cm4gcGFnZUNsaWVudCgpLmRhdGFPd25l
ckZvclBhc3RlYm9hcmQoaW50ZW50KTsKK30KKworI2VuZGlmCisKKyNpZiBFTkFCTEUoQVRUQUNI
TUVOVF9FTEVNRU5UKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6d3JpdGVQcm9taXNlZEF0dGFjaG1l
bnRUb1Bhc3RlYm9hcmQoV2ViQ29yZTo6UHJvbWlzZWRBdHRhY2htZW50SW5mbyYmIGluZm8pCit7
CisgICAgcGFnZUNsaWVudCgpLndyaXRlUHJvbWlzZWRBdHRhY2htZW50VG9QYXN0ZWJvYXJkKFdU
Rk1vdmUoaW5mbykpOworfQorCitSZWZQdHI8QVBJOjpBdHRhY2htZW50PiBXZWJQYWdlUHJveHk6
OmF0dGFjaG1lbnRGb3JJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllcikgY29uc3QK
K3sKKyAgICBpZiAoaWRlbnRpZmllci5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBudWxscHRy
OworCisgICAgcmV0dXJuIG1fYXR0YWNobWVudElkZW50aWZpZXJUb0F0dGFjaG1lbnRNYXAuZ2V0
KGlkZW50aWZpZXIpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6aW5zZXJ0QXR0YWNobWVudChS
ZWY8QVBJOjpBdHRhY2htZW50PiYmIGF0dGFjaG1lbnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjYWxsYmFjaykKK3sKKyAgICBhdXRvIGF0dGFjaG1lbnRJZGVudGlmaWVyID0gYXR0YWNo
bWVudC0+aWRlbnRpZmllcigpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2Vi
UGFnZTo6SW5zZXJ0QXR0YWNobWVudChhdHRhY2htZW50SWRlbnRpZmllciwgYXR0YWNobWVudC0+
ZmlsZVNpemVGb3JEaXNwbGF5KCksIGF0dGFjaG1lbnQtPmZpbGVOYW1lKCksIGF0dGFjaG1lbnQt
PmNvbnRlbnRUeXBlKCkpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgbV9hdHRhY2htZW50SWRl
bnRpZmllclRvQXR0YWNobWVudE1hcC5zZXQoYXR0YWNobWVudElkZW50aWZpZXIsIFdURk1vdmUo
YXR0YWNobWVudCkpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6dXBkYXRlQXR0YWNobWVudEF0
dHJpYnV0ZXMoY29uc3QgQVBJOjpBdHRhY2htZW50JiBhdHRhY2htZW50LCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCit7CisgICAgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVm
ZXJlbmNlIGRhdGFSZWZlcmVuY2U7CisgICAgaWYgKGF1dG8gZGF0YSA9IGF0dGFjaG1lbnQuZW5j
bG9zaW5nSW1hZ2VEYXRhKCkpCisgICAgICAgIGRhdGFSZWZlcmVuY2UgPSB7ICpkYXRhIH07CisK
KyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OlVwZGF0ZUF0dGFjaG1l
bnRBdHRyaWJ1dGVzKGF0dGFjaG1lbnQuaWRlbnRpZmllcigpLCBhdHRhY2htZW50LmZpbGVTaXpl
Rm9yRGlzcGxheSgpLCBhdHRhY2htZW50LmNvbnRlbnRUeXBlKCksIGF0dGFjaG1lbnQuZmlsZU5h
bWUoKSwgV1RGTW92ZShkYXRhUmVmZXJlbmNlKSksIFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwor
I2lmIEhBVkUoUVVJQ0tMT09LX1RIVU1CTkFJTElORykKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1cGRh
dGVBdHRhY2htZW50SWNvbihjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFJlZlB0cjxT
aGFyZWFibGVCaXRtYXA+JiBiaXRtYXApCit7CisgICAgaWYgKCFoYXNSdW5uaW5nUHJvY2Vzcygp
KQorICAgICAgICByZXR1cm47CisgICAgCisgICAgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUgaGFu
ZGxlOworICAgIGlmIChiaXRtYXApCisgICAgICAgIGJpdG1hcC0+Y3JlYXRlSGFuZGxlKGhhbmRs
ZSk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpVcGRhdGVBdHRhY2htZW50SWNvbihp
ZGVudGlmaWVyLCBoYW5kbGUpKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVn
aXN0ZXJBdHRhY2htZW50SWRlbnRpZmllckZyb21EYXRhKGNvbnN0IFN0cmluZyYgaWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiBjb250ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBwcmVmZXJyZWRGaWxl
TmFtZSwgY29uc3QgSVBDOjpTaGFyZWRCdWZmZXJDb3B5JiBkYXRhKQoreworICAgIE1FU1NBR0Vf
Q0hFQ0sobV9wcm9jZXNzLCBtX3ByZWZlcmVuY2VzLT5hdHRhY2htZW50RWxlbWVudEVuYWJsZWQo
KSk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIElkZW50aWZpZXJUb0F0dGFjaG1lbnRN
YXA6OmlzVmFsaWRLZXkoaWRlbnRpZmllcikpOworCisgICAgaWYgKGF0dGFjaG1lbnRGb3JJZGVu
dGlmaWVyKGlkZW50aWZpZXIpKQorICAgICAgICByZXR1cm47CisKKyAgICBhdXRvIGF0dGFjaG1l
bnQgPSBlbnN1cmVBdHRhY2htZW50KGlkZW50aWZpZXIpOworICAgIGF0dGFjaG1lbnQtPnNldENv
bnRlbnRUeXBlKGNvbnRlbnRUeXBlKTsKKyAgICBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9BdHRh
Y2htZW50TWFwLnNldChpZGVudGlmaWVyLCBhdHRhY2htZW50LmNvcHlSZWYoKSk7CisKKyAgICBw
bGF0Zm9ybVJlZ2lzdGVyQXR0YWNobWVudChXVEZNb3ZlKGF0dGFjaG1lbnQpLCBwcmVmZXJyZWRG
aWxlTmFtZSwgZGF0YSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZWdpc3RlckF0dGFjaG1l
bnRJZGVudGlmaWVyRnJvbUZpbGVQYXRoKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBjb250ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBmaWxlUGF0aCkKK3sKKyAgICBNRVNT
QUdFX0NIRUNLKG1fcHJvY2VzcywgbV9wcmVmZXJlbmNlcy0+YXR0YWNobWVudEVsZW1lbnRFbmFi
bGVkKCkpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBJZGVudGlmaWVyVG9BdHRhY2ht
ZW50TWFwOjppc1ZhbGlkS2V5KGlkZW50aWZpZXIpKTsKKworICAgIGlmIChhdHRhY2htZW50Rm9y
SWRlbnRpZmllcihpZGVudGlmaWVyKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byBhdHRh
Y2htZW50ID0gZW5zdXJlQXR0YWNobWVudChpZGVudGlmaWVyKTsKKyAgICBhdHRhY2htZW50LT5z
ZXRDb250ZW50VHlwZShjb250ZW50VHlwZSk7CisgICAgYXR0YWNobWVudC0+c2V0RmlsZVBhdGgo
ZmlsZVBhdGgpOworICAgIG1fYXR0YWNobWVudElkZW50aWZpZXJUb0F0dGFjaG1lbnRNYXAuc2V0
KGlkZW50aWZpZXIsIGF0dGFjaG1lbnQuY29weVJlZigpKTsKKyAgICBwbGF0Zm9ybVJlZ2lzdGVy
QXR0YWNobWVudChXVEZNb3ZlKGF0dGFjaG1lbnQpLCBmaWxlUGF0aCk7CisjaWYgSEFWRShRVUlD
S0xPT0tfVEhVTUJOQUlMSU5HKQorICAgIHJlcXVlc3RUaHVtYm5haWxXaXRoUGF0aChpZGVudGlm
aWVyLCBmaWxlUGF0aCk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlZ2lzdGVy
QXR0YWNobWVudElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyKQoreworICAgIE1F
U1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtX3ByZWZlcmVuY2VzLT5hdHRhY2htZW50RWxlbWVudEVu
YWJsZWQoKSk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIElkZW50aWZpZXJUb0F0dGFj
aG1lbnRNYXA6OmlzVmFsaWRLZXkoaWRlbnRpZmllcikpOworCisgICAgaWYgKCFhdHRhY2htZW50
Rm9ySWRlbnRpZmllcihpZGVudGlmaWVyKSkKKyAgICAgICAgbV9hdHRhY2htZW50SWRlbnRpZmll
clRvQXR0YWNobWVudE1hcC5zZXQoaWRlbnRpZmllciwgZW5zdXJlQXR0YWNobWVudChpZGVudGlm
aWVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZWdpc3RlckF0dGFjaG1lbnRzRnJvbVNl
cmlhbGl6ZWREYXRhKFZlY3RvcjxXZWJDb3JlOjpTZXJpYWxpemVkQXR0YWNobWVudERhdGE+JiYg
ZGF0YSkKK3sKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgbV9wcmVmZXJlbmNlcy0+YXR0
YWNobWVudEVsZW1lbnRFbmFibGVkKCkpOworCisgICAgZm9yIChhdXRvJiBzZXJpYWxpemVkRGF0
YSA6IGRhdGEpIHsKKyAgICAgICAgYXV0byBpZGVudGlmaWVyID0gV1RGTW92ZShzZXJpYWxpemVk
RGF0YS5pZGVudGlmaWVyKTsKKyAgICAgICAgaWYgKCFhdHRhY2htZW50Rm9ySWRlbnRpZmllcihp
ZGVudGlmaWVyKSkKKyAgICAgICAgICAgIGVuc3VyZUF0dGFjaG1lbnQoaWRlbnRpZmllciktPnVw
ZGF0ZUZyb21TZXJpYWxpemVkUmVwcmVzZW50YXRpb24oV1RGTW92ZShzZXJpYWxpemVkRGF0YS5k
YXRhKSwgV1RGTW92ZShzZXJpYWxpemVkRGF0YS5taW1lVHlwZSkpOworICAgIH0KK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OmNsb25lQXR0YWNobWVudERhdGEoY29uc3QgU3RyaW5nJiBmcm9tSWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiB0b0lkZW50aWZpZXIpCit7CisgICAgTUVTU0FHRV9DSEVD
SyhtX3Byb2Nlc3MsIG1fcHJlZmVyZW5jZXMtPmF0dGFjaG1lbnRFbGVtZW50RW5hYmxlZCgpKTsK
KyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgSWRlbnRpZmllclRvQXR0YWNobWVudE1hcDo6
aXNWYWxpZEtleShmcm9tSWRlbnRpZmllcikpOworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNz
LCBJZGVudGlmaWVyVG9BdHRhY2htZW50TWFwOjppc1ZhbGlkS2V5KHRvSWRlbnRpZmllcikpOwor
CisgICAgYXV0byBuZXdBdHRhY2htZW50ID0gZW5zdXJlQXR0YWNobWVudCh0b0lkZW50aWZpZXIp
OworICAgIGF1dG8gZXhpc3RpbmdBdHRhY2htZW50ID0gYXR0YWNobWVudEZvcklkZW50aWZpZXIo
ZnJvbUlkZW50aWZpZXIpOworICAgIGlmICghZXhpc3RpbmdBdHRhY2htZW50KSB7CisgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbmV3
QXR0YWNobWVudC0+c2V0Q29udGVudFR5cGUoZXhpc3RpbmdBdHRhY2htZW50LT5jb250ZW50VHlw
ZSgpKTsKKyAgICBuZXdBdHRhY2htZW50LT5zZXRGaWxlUGF0aChleGlzdGluZ0F0dGFjaG1lbnQt
PmZpbGVQYXRoKCkpOworCisgICAgcGxhdGZvcm1DbG9uZUF0dGFjaG1lbnQoZXhpc3RpbmdBdHRh
Y2htZW50LnJlbGVhc2VOb25OdWxsKCksIFdURk1vdmUobmV3QXR0YWNobWVudCkpOworfQorCit2
b2lkIFdlYlBhZ2VQcm94eTo6aW52YWxpZGF0ZUFsbEF0dGFjaG1lbnRzKCkKK3sKKyAgICBmb3Ig
KGF1dG8mIGF0dGFjaG1lbnQgOiBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9BdHRhY2htZW50TWFw
LnZhbHVlcygpKSB7CisgICAgICAgIGlmIChhdHRhY2htZW50LT5pbnNlcnRpb25TdGF0ZSgpID09
IEFQSTo6QXR0YWNobWVudDo6SW5zZXJ0aW9uU3RhdGU6Okluc2VydGVkKQorICAgICAgICAgICAg
ZGlkUmVtb3ZlQXR0YWNobWVudChhdHRhY2htZW50LmdldCgpKTsKKyAgICAgICAgYXR0YWNobWVu
dC0+aW52YWxpZGF0ZSgpOworICAgIH0KKyAgICBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9BdHRh
Y2htZW50TWFwLmNsZWFyKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXJpYWxpemVkQXR0
YWNobWVudERhdGFGb3JJZGVudGlmaWVycyhjb25zdCBWZWN0b3I8U3RyaW5nPiYgaWRlbnRpZmll
cnMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVmVjdG9yPFdlYkNvcmU6OlNlcmlhbGl6ZWRBdHRh
Y2htZW50RGF0YT4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgVmVjdG9yPFdlYkNv
cmU6OlNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YT4gc2VyaWFsaXplZERhdGE7CisKKyAgICBNRVNT
QUdFX0NIRUNLX0NPTVBMRVRJT04obV9wcm9jZXNzLCBtX3ByZWZlcmVuY2VzLT5hdHRhY2htZW50
RWxlbWVudEVuYWJsZWQoKSwgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShzZXJpYWxpemVkRGF0
YSkpKTsKKworICAgIGZvciAoY29uc3QgYXV0byYgaWRlbnRpZmllciA6IGlkZW50aWZpZXJzKSB7
CisgICAgICAgIGF1dG8gYXR0YWNobWVudCA9IGF0dGFjaG1lbnRGb3JJZGVudGlmaWVyKGlkZW50
aWZpZXIpOworICAgICAgICBpZiAoIWF0dGFjaG1lbnQpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBhdXRvIGRhdGEgPSBhdHRhY2htZW50LT5jcmVhdGVTZXJpYWxpemVkUmVwcmVz
ZW50YXRpb24oKTsKKyAgICAgICAgaWYgKCFkYXRhKQorICAgICAgICAgICAgY29udGludWU7CisK
KyAgICAgICAgc2VyaWFsaXplZERhdGEuYXBwZW5kKHsgaWRlbnRpZmllciwgYXR0YWNobWVudC0+
bWltZVR5cGUoKSwgZGF0YS5yZWxlYXNlTm9uTnVsbCgpIH0pOworICAgIH0KKyAgICBjb21wbGV0
aW9uSGFuZGxlcihXVEZNb3ZlKHNlcmlhbGl6ZWREYXRhKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpkaWRJbnZhbGlkYXRlRGF0YUZvckF0dGFjaG1lbnQoQVBJOjpBdHRhY2htZW50JiBhdHRh
Y2htZW50KQoreworICAgIHBhZ2VDbGllbnQoKS5kaWRJbnZhbGlkYXRlRGF0YUZvckF0dGFjaG1l
bnQoYXR0YWNobWVudCk7Cit9CisKK1dlYlBhZ2VQcm94eTo6U2hvdWxkVXBkYXRlQXR0YWNobWVu
dEF0dHJpYnV0ZXMgV2ViUGFnZVByb3h5Ojp3aWxsVXBkYXRlQXR0YWNobWVudEF0dHJpYnV0ZXMo
Y29uc3QgQVBJOjpBdHRhY2htZW50JiBhdHRhY2htZW50KQoreworICAgIHJldHVybiBTaG91bGRV
cGRhdGVBdHRhY2htZW50QXR0cmlidXRlczo6WWVzOworfQorCisjaWYgIVBMQVRGT1JNKENPQ09B
KQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cGxhdGZvcm1SZWdpc3RlckF0dGFjaG1lbnQoUmVmPEFQ
STo6QXR0YWNobWVudD4mJiwgY29uc3QgU3RyaW5nJiwgY29uc3QgSVBDOjpTaGFyZWRCdWZmZXJD
b3B5JikKK3sKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnBsYXRmb3JtUmVnaXN0ZXJBdHRhY2ht
ZW50KFJlZjxBUEk6OkF0dGFjaG1lbnQ+JiYsIGNvbnN0IFN0cmluZyYpCit7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpwbGF0Zm9ybUNsb25lQXR0YWNobWVudChSZWY8QVBJOjpBdHRhY2htZW50
PiYmLCBSZWY8QVBJOjpBdHRhY2htZW50PiYmKQoreworfQorCisjZW5kaWYKKwordm9pZCBXZWJQ
YWdlUHJveHk6OmRpZEluc2VydEF0dGFjaG1lbnRXaXRoSWRlbnRpZmllcihjb25zdCBTdHJpbmcm
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlLCBib29sIGhhc0VuY2xvc2luZ0ltYWdl
KQoreworICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNzLCBtX3ByZWZlcmVuY2VzLT5hdHRhY2ht
ZW50RWxlbWVudEVuYWJsZWQoKSk7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIElkZW50
aWZpZXJUb0F0dGFjaG1lbnRNYXA6OmlzVmFsaWRLZXkoaWRlbnRpZmllcikpOworCisgICAgYXV0
byBhdHRhY2htZW50ID0gZW5zdXJlQXR0YWNobWVudChpZGVudGlmaWVyKTsKKyAgICBhdHRhY2ht
ZW50LT5zZXRIYXNFbmNsb3NpbmdJbWFnZShoYXNFbmNsb3NpbmdJbWFnZSk7CisgICAgYXR0YWNo
bWVudC0+c2V0SW5zZXJ0aW9uU3RhdGUoQVBJOjpBdHRhY2htZW50OjpJbnNlcnRpb25TdGF0ZTo6
SW5zZXJ0ZWQpOworICAgIHBhZ2VDbGllbnQoKS5kaWRJbnNlcnRBdHRhY2htZW50KGF0dGFjaG1l
bnQuZ2V0KCksIHNvdXJjZSk7CisKKyAgICBpZiAoIWF0dGFjaG1lbnQtPmlzRW1wdHkoKSAmJiBo
YXNFbmNsb3NpbmdJbWFnZSkKKyAgICAgICAgdXBkYXRlQXR0YWNobWVudEF0dHJpYnV0ZXMoYXR0
YWNobWVudC5nZXQoKSwgW10geyB9KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZFJlbW92
ZUF0dGFjaG1lbnRXaXRoSWRlbnRpZmllcihjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIpCit7Cisg
ICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIG1fcHJlZmVyZW5jZXMtPmF0dGFjaG1lbnRFbGVt
ZW50RW5hYmxlZCgpKTsKKyAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2VzcywgSWRlbnRpZmllclRv
QXR0YWNobWVudE1hcDo6aXNWYWxpZEtleShpZGVudGlmaWVyKSk7CisKKyAgICBpZiAoYXV0byBh
dHRhY2htZW50ID0gYXR0YWNobWVudEZvcklkZW50aWZpZXIoaWRlbnRpZmllcikpCisgICAgICAg
IGRpZFJlbW92ZUF0dGFjaG1lbnQoKmF0dGFjaG1lbnQpOworfQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6ZGlkUmVtb3ZlQXR0YWNobWVudChBUEk6OkF0dGFjaG1lbnQmIGF0dGFjaG1lbnQpCit7Cisg
ICAgYXR0YWNobWVudC5zZXRJbnNlcnRpb25TdGF0ZShBUEk6OkF0dGFjaG1lbnQ6Okluc2VydGlv
blN0YXRlOjpOb3RJbnNlcnRlZCk7CisgICAgcGFnZUNsaWVudCgpLmRpZFJlbW92ZUF0dGFjaG1l
bnQoYXR0YWNobWVudCk7Cit9CisKK1JlZjxBUEk6OkF0dGFjaG1lbnQ+IFdlYlBhZ2VQcm94eTo6
ZW5zdXJlQXR0YWNobWVudChjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIpCit7CisgICAgaWYgKGF1
dG8gZXhpc3RpbmdBdHRhY2htZW50ID0gYXR0YWNobWVudEZvcklkZW50aWZpZXIoaWRlbnRpZmll
cikpCisgICAgICAgIHJldHVybiAqZXhpc3RpbmdBdHRhY2htZW50OworCisgICAgYXV0byBhdHRh
Y2htZW50ID0gQVBJOjpBdHRhY2htZW50OjpjcmVhdGUoaWRlbnRpZmllciwgKnRoaXMpOworICAg
IG1fYXR0YWNobWVudElkZW50aWZpZXJUb0F0dGFjaG1lbnRNYXAuc2V0KGlkZW50aWZpZXIsIGF0
dGFjaG1lbnQuY29weVJlZigpKTsKKyAgICByZXR1cm4gYXR0YWNobWVudDsKK30KKworI2VuZGlm
IC8vIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisKKyNpZiBFTkFCTEUoQVBQTElDQVRJT05f
TUFOSUZFU1QpCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0QXBwbGljYXRpb25NYW5pZmVzdChDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6QXBwbGljYXRp
b25NYW5pZmVzdD4mKT4mJiBjYWxsYmFjaykKK3sKKyAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6OldlYlBhZ2U6OkdldEFwcGxpY2F0aW9uTWFuaWZlc3QoKSwgV1RGTW92ZShjYWxsYmFj
aykpOworfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMpCit2b2lkIFdlYlBh
Z2VQcm94eTo6c3RvcmVBcHBIaWdobGlnaHQoY29uc3QgV2ViQ29yZTo6QXBwSGlnaGxpZ2h0JiBo
aWdobGlnaHQpCit7CisgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsICFoaWdobGlnaHQuaGln
aGxpZ2h0LT5pc0VtcHR5KCkpOworCisgICAgcGFnZUNsaWVudCgpLnN0b3JlQXBwSGlnaGxpZ2h0
KGhpZ2hsaWdodCk7CisKK30KKyNlbmRpZgorCituYW1lc3BhY2UgeworZW51bSBjbGFzcyBDb21w
bGV0aW9uQ29uZGl0aW9uIHsKKyAgICBDYW5jZWxsYXRpb24sCisgICAgRXJyb3IsCisgICAgU3Vj
Y2VzcywKKyAgICBUaW1lb3V0LAorfTsKK3N0cnVjdCBNZXNzYWdlVHlwZSB7CisgICAgQ29tcGxl
dGlvbkNvbmRpdGlvbiBjb25kaXRpb247CisgICAgU2Vjb25kcyBzZWNvbmRzOworICAgIFN0cmlu
ZyBtZXNzYWdlOworfTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlcG9ydFBhZ2VMb2FkUmVz
dWx0KGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQoreworICAgIHN0YXRpYyBjb25zdCBOZXZl
ckRlc3Ryb3llZDxWZWN0b3I8TWVzc2FnZVR5cGU+PiBtZXNzYWdlcyhzdGQ6OmluaXRpYWxpemVy
X2xpc3Q8TWVzc2FnZVR5cGU+IHsKKyAgICAgICAgeyBDb21wbGV0aW9uQ29uZGl0aW9uOjpDYW5j
ZWxsYXRpb24sIDJfcywgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjpjYW5jZWxlZExlc3NUaGFuMlNl
Y29uZHNLZXkoKSB9LAorICAgICAgICB7IENvbXBsZXRpb25Db25kaXRpb246OkNhbmNlbGxhdGlv
biwgNV9zLCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OmNhbmNlbGVkTGVzc1RoYW41U2Vjb25kc0tl
eSgpIH0sCisgICAgICAgIHsgQ29tcGxldGlvbkNvbmRpdGlvbjo6Q2FuY2VsbGF0aW9uLCAyMF9z
LCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OmNhbmNlbGVkTGVzc1RoYW4yMFNlY29uZHNLZXkoKSB9
LAorICAgICAgICB7IENvbXBsZXRpb25Db25kaXRpb246OkNhbmNlbGxhdGlvbiwgU2Vjb25kczo6
aW5maW5pdHkoKSwgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjpjYW5jZWxlZE1vcmVUaGFuMjBTZWNv
bmRzS2V5KCkgfSwKKworICAgICAgICB7IENvbXBsZXRpb25Db25kaXRpb246OkVycm9yLCAyX3Ms
IERpYWdub3N0aWNMb2dnaW5nS2V5czo6ZmFpbGVkTGVzc1RoYW4yU2Vjb25kc0tleSgpIH0sCisg
ICAgICAgIHsgQ29tcGxldGlvbkNvbmRpdGlvbjo6RXJyb3IsIDVfcywgRGlhZ25vc3RpY0xvZ2dp
bmdLZXlzOjpmYWlsZWRMZXNzVGhhbjVTZWNvbmRzS2V5KCkgfSwKKyAgICAgICAgeyBDb21wbGV0
aW9uQ29uZGl0aW9uOjpFcnJvciwgMjBfcywgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjpmYWlsZWRM
ZXNzVGhhbjIwU2Vjb25kc0tleSgpIH0sCisgICAgICAgIHsgQ29tcGxldGlvbkNvbmRpdGlvbjo6
RXJyb3IsIFNlY29uZHM6OmluZmluaXR5KCksIERpYWdub3N0aWNMb2dnaW5nS2V5czo6ZmFpbGVk
TW9yZVRoYW4yMFNlY29uZHNLZXkoKSB9LAorCisgICAgICAgIHsgQ29tcGxldGlvbkNvbmRpdGlv
bjo6U3VjY2VzcywgMl9zLCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OnN1Y2NlZWRlZExlc3NUaGFu
MlNlY29uZHNLZXkoKSB9LAorICAgICAgICB7IENvbXBsZXRpb25Db25kaXRpb246OlN1Y2Nlc3Ms
IDVfcywgRGlhZ25vc3RpY0xvZ2dpbmdLZXlzOjpzdWNjZWVkZWRMZXNzVGhhbjVTZWNvbmRzS2V5
KCkgfSwKKyAgICAgICAgeyBDb21wbGV0aW9uQ29uZGl0aW9uOjpTdWNjZXNzLCAyMF9zLCBEaWFn
bm9zdGljTG9nZ2luZ0tleXM6OnN1Y2NlZWRlZExlc3NUaGFuMjBTZWNvbmRzS2V5KCkgfSwKKyAg
ICAgICAgeyBDb21wbGV0aW9uQ29uZGl0aW9uOjpTdWNjZXNzLCBTZWNvbmRzOjppbmZpbml0eSgp
LCBEaWFnbm9zdGljTG9nZ2luZ0tleXM6OnN1Y2NlZWRlZE1vcmVUaGFuMjBTZWNvbmRzS2V5KCkg
fSwKKworICAgICAgICB7IENvbXBsZXRpb25Db25kaXRpb246OlRpbWVvdXQsIFNlY29uZHM6Omlu
ZmluaXR5KCksIERpYWdub3N0aWNMb2dnaW5nS2V5czo6dGltZWRPdXRLZXkoKSB9CisgICAgICAg
IH0pOworCisgICAgaWYgKCFtX3BhZ2VMb2FkU3RhcnQpCisgICAgICAgIHJldHVybjsKKworICAg
IGF1dG8gcGFnZUxvYWRUaW1lID0gTW9ub3RvbmljVGltZTo6bm93KCkgLSAqbV9wYWdlTG9hZFN0
YXJ0OworICAgIG1fcGFnZUxvYWRTdGFydCA9IHN0ZDo6bnVsbG9wdDsKKworICAgIENvbXBsZXRp
b25Db25kaXRpb24gY29uZGl0aW9uIHsgQ29tcGxldGlvbkNvbmRpdGlvbjo6U3VjY2VzcyB9Owor
ICAgIGlmIChlcnJvci5pc0NhbmNlbGxhdGlvbigpKQorICAgICAgICBjb25kaXRpb24gPSBDb21w
bGV0aW9uQ29uZGl0aW9uOjpDYW5jZWxsYXRpb247CisgICAgZWxzZSBpZiAoZXJyb3IuaXNUaW1l
b3V0KCkpCisgICAgICAgIGNvbmRpdGlvbiA9IENvbXBsZXRpb25Db25kaXRpb246OlRpbWVvdXQ7
CisgICAgZWxzZSBpZiAoIWVycm9yLmlzTnVsbCgpIHx8IGVycm9yLmVycm9yQ29kZSgpKQorICAg
ICAgICBjb25kaXRpb24gPSBDb21wbGV0aW9uQ29uZGl0aW9uOjpFcnJvcjsKKworICAgIGZvciAo
YXV0byYgbWVzc2FnZUl0ZW0gOiBtZXNzYWdlcy5nZXQoKSkgeworICAgICAgICBpZiAoY29uZGl0
aW9uID09IG1lc3NhZ2VJdGVtLmNvbmRpdGlvbiAmJiBwYWdlTG9hZFRpbWUgPCBtZXNzYWdlSXRl
bS5zZWNvbmRzKSB7CisgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZShEaWFnbm9zdGlj
TG9nZ2luZ0tleXM6OnRlbGVtZXRyeVBhZ2VMb2FkS2V5KCksIG1lc3NhZ2VJdGVtLm1lc3NhZ2Us
IFNob3VsZFNhbXBsZTo6Tm8pOworICAgICAgICAgICAgbG9nRGlhZ25vc3RpY01lc3NhZ2UoRGlh
Z25vc3RpY0xvZ2dpbmdLZXlzOjp0ZWxlbWV0cnlQYWdlTG9hZEtleSgpLCBEaWFnbm9zdGljTG9n
Z2luZ0tleXM6Om9jY3VycmVkS2V5KCksIFNob3VsZFNhbXBsZTo6Tm8pOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXREZWZl
cnNMb2FkaW5nRm9yVGVzdGluZyhib29sIGRlZmVyc0xvYWRpbmcpCit7CisgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZTo6U2V0RGVmZXJzTG9hZGluZyhkZWZlcnNMb2FkaW5nKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZVByb3h5OjpnZXRJc1ZpZXdWaXNpYmxlKGJvb2wmIHJlc3VsdCkKK3sKKyAgICBy
ZXN1bHQgPSBpc1ZpZXdWaXNpYmxlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1cGRhdGVD
dXJyZW50TW9kaWZpZXJTdGF0ZSgpCit7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgYXV0byBt
b2RpZmllcnMgPSBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OmN1cnJlbnRTdGF0ZU9mTW9kaWZpZXJL
ZXlzKCk7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6VXBkYXRlQ3VycmVudE1vZGlmaWVy
U3RhdGUobW9kaWZpZXJzKSk7CisjZW5kaWYKK30KKworYm9vbCBXZWJQYWdlUHJveHk6OmNoZWNr
VVJMUmVjZWl2ZWRGcm9tQ3VycmVudE9yUHJldmlvdXNXZWJQcm9jZXNzKFdlYlByb2Nlc3NQcm94
eSYgcHJvY2VzcywgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCit7CisgICAgcmV0dXJuIGNoZWNr
VVJMUmVjZWl2ZWRGcm9tQ3VycmVudE9yUHJldmlvdXNXZWJQcm9jZXNzKHByb2Nlc3MsIFVSTChV
UkwoKSwgdXJsU3RyaW5nKSk7Cit9CisKK2Jvb2wgV2ViUGFnZVByb3h5OjpjaGVja1VSTFJlY2Vp
dmVkRnJvbUN1cnJlbnRPclByZXZpb3VzV2ViUHJvY2VzcyhXZWJQcm9jZXNzUHJveHkmIHByb2Nl
c3MsIGNvbnN0IFVSTCYgdXJsKQoreworICAgIGlmICghdXJsLmlzTG9jYWxGaWxlKCkpCisgICAg
ICAgIHJldHVybiB0cnVlOworCisgICAgaWYgKG1fbWF5SGF2ZVVuaXZlcnNhbEZpbGVSZWFkU2Fu
ZGJveEV4dGVuc2lvbikKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBTdHJpbmcgcGF0aCA9
IHVybC5maWxlU3lzdGVtUGF0aCgpOworICAgIGF1dG8gc3RhcnRzV2l0aFVSTFBhdGggPSBbJnBh
dGhdKGNvbnN0IFN0cmluZyYgdmlzaXRlZFBhdGgpIHsKKyAgICAgICAgcmV0dXJuIHBhdGguc3Rh
cnRzV2l0aCh2aXNpdGVkUGF0aCk7CisgICAgfTsKKworICAgIGF1dG8gbG9jYWxQYXRoc0VuZCA9
IG1fcHJldmlvdXNseVZpc2l0ZWRQYXRocy5lbmQoKTsKKyAgICBpZiAoc3RkOjpmaW5kX2lmKG1f
cHJldmlvdXNseVZpc2l0ZWRQYXRocy5iZWdpbigpLCBsb2NhbFBhdGhzRW5kLCBzdGFydHNXaXRo
VVJMUGF0aCkgIT0gbG9jYWxQYXRoc0VuZCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBy
ZXR1cm4gcHJvY2Vzcy5jaGVja1VSTFJlY2VpdmVkRnJvbVdlYlByb2Nlc3ModXJsKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmFkZFByZXZpb3VzbHlWaXNpdGVkUGF0aChjb25zdCBTdHJpbmcm
IHBhdGgpCit7CisgICAgbV9wcmV2aW91c2x5VmlzaXRlZFBhdGhzLmFkZChwYXRoKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OndpbGxBY3F1aXJlVW5pdmVyc2FsRmlsZVJlYWRTYW5kYm94RXh0
ZW5zaW9uKFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcykKK3sKKyAgICBtX21heUhhdmVVbml2ZXJz
YWxGaWxlUmVhZFNhbmRib3hFeHRlbnNpb24gPSB0cnVlOworICAgIHByb2Nlc3Mud2lsbEFjcXVp
cmVVbml2ZXJzYWxGaWxlUmVhZFNhbmRib3hFeHRlbnNpb24oKTsKK30KKwordm9pZCBXZWJQYWdl
UHJveHk6OnNpbXVsYXRlRGV2aWNlT3JpZW50YXRpb25DaGFuZ2UoZG91YmxlIGFscGhhLCBkb3Vi
bGUgYmV0YSwgZG91YmxlIGdhbW1hKQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNp
bXVsYXRlRGV2aWNlT3JpZW50YXRpb25DaGFuZ2UoYWxwaGEsIGJldGEsIGdhbW1hKSk7Cit9CisK
KyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZXRlY3RE
YXRhSW5BbGxGcmFtZXMoT3B0aW9uU2V0PFdlYkNvcmU6OkRhdGFEZXRlY3RvclR5cGU+IHR5cGVz
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IERhdGFEZXRlY3Rpb25SZXN1bHQmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpIHsKKyAg
ICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAg
ICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlBhZ2U6OkRldGVjdERhdGFJbkFsbEZy
YW1lcyh0eXBlcyksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnJlbW92ZURhdGFEZXRlY3RlZExpbmtzKENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3QgRGF0YURldGVjdGlvblJlc3VsdCYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGlmICghaGFzUnVubmluZ1Byb2Nlc3MoKSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7
IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNz
YWdlczo6V2ViUGFnZTo6UmVtb3ZlRGF0YURldGVjdGVkTGlua3MoKSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCisjZW5kaWYKKworI2lmIFVTRShTWVNURU1fUFJFVklFVykKK3Zv
aWQgV2ViUGFnZVByb3h5OjpzeXN0ZW1QcmV2aWV3QWN0aW9uVHJpZ2dlcmVkKGNvbnN0IFdlYkNv
cmU6OlN5c3RlbVByZXZpZXdJbmZvJiBwcmV2aWV3SW5mbywgY29uc3QgU3RyaW5nJiBtZXNzYWdl
KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlN5c3RlbVByZXZpZXdBY3Rpb25Ucmln
Z2VyZWQocHJldmlld0luZm8sIG1lc3NhZ2UpKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQ
cm94eTo6ZHVtcFByaXZhdGVDbGlja01lYXN1cmVtZW50KENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Y29uc3QgU3RyaW5nJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgd2Vic2l0ZURhdGFT
dG9yZSgpLm5ldHdvcmtQcm9jZXNzKCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3
b3JrUHJvY2Vzczo6RHVtcFByaXZhdGVDbGlja01lYXN1cmVtZW50KG1fd2Vic2l0ZURhdGFTdG9y
ZS0+c2Vzc2lvbklEKCkpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpjbGVhclByaXZhdGVDbGlja01lYXN1cmVtZW50KENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICB3ZWJzaXRlRGF0YVN0b3Jl
KCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQ
cm9jZXNzOjpDbGVhclByaXZhdGVDbGlja01lYXN1cmVtZW50KG1fd2Vic2l0ZURhdGFTdG9yZS0+
c2Vzc2lvbklEKCkpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpzZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudE92ZXJyaWRlVGltZXJGb3JUZXN0
aW5nKGJvb2wgdmFsdWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTZXRQcml2YXRlQ2xpY2tNZWFz
dXJlbWVudE92ZXJyaWRlVGltZXJGb3JUZXN0aW5nKG1fd2Vic2l0ZURhdGFTdG9yZS0+c2Vzc2lv
bklEKCksIHZhbHVlKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6bWFya0F0dHJpYnV0ZWRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGly
ZWRGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFz
eW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpNYXJrQXR0cmlidXRlZFByaXZhdGVD
bGlja01lYXN1cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcobV93ZWJzaXRlRGF0YVN0b3JlLT5z
ZXNzaW9uSUQoKSksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldFByaXZhdGVDbGlja01lYXN1cmVtZW50RXBoZW1lcmFsTWVhc3VyZW1lbnRG
b3JUZXN0aW5nKGJvb2wgdmFsdWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKK3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5z
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTZXRQcml2YXRlQ2xp
Y2tNZWFzdXJlbWVudEVwaGVtZXJhbE1lYXN1cmVtZW50Rm9yVGVzdGluZyhtX3dlYnNpdGVEYXRh
U3RvcmUtPnNlc3Npb25JRCgpLCB2YWx1ZSksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsK
K30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNpbXVsYXRlUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Nl
c3Npb25SZXN0YXJ0KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFz
eW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTaW11bGF0ZVJlc291cmNlTG9hZFN0
YXRpc3RpY3NTZXNzaW9uUmVzdGFydChtX3dlYnNpdGVEYXRhU3RvcmUtPnNlc3Npb25JRCgpKSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0
UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnRUb2tlblB1YmxpY0tleVVSTEZvclRlc3RpbmcoY29uc3Qg
VVJMJiB1cmwsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFzeW5j
UmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpTZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVu
dFRva2VuUHVibGljS2V5VVJMRm9yVGVzdGluZyhtX3dlYnNpdGVEYXRhU3RvcmUtPnNlc3Npb25J
RCgpLCB1cmwpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZVByb3h5OjpzZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudFRva2VuU2lnbmF0dXJlVVJMRm9yVGVz
dGluZyhjb25zdCBVUkwmIHVybCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIHdlYnNpdGVEYXRhU3RvcmUoKS5uZXR3b3JrUHJvY2VzcygpLnNl
bmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OlNldFByaXZhdGVDbGlj
a01lYXN1cmVtZW50VG9rZW5TaWduYXR1cmVVUkxGb3JUZXN0aW5nKG1fd2Vic2l0ZURhdGFTdG9y
ZS0+c2Vzc2lvbklEKCksIHVybCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnNldFByaXZhdGVDbGlja01lYXN1cmVtZW50QXR0cmlidXRpb25S
ZXBvcnRVUkxzRm9yVGVzdGluZyhjb25zdCBVUkwmIHNvdXJjZVVSTCwgY29uc3QgVVJMJiBkZXN0
aW5hdGlvblVSTCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIHdlYnNpdGVEYXRhU3RvcmUoKS5uZXR3b3JrUHJvY2VzcygpLnNlbmRXaXRoQXN5
bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OlNldFByaXZhdGVDbGlja01lYXN1cmVt
ZW50QXR0cmlidXRpb25SZXBvcnRVUkxzRm9yVGVzdGluZyhtX3dlYnNpdGVEYXRhU3RvcmUtPnNl
c3Npb25JRCgpLCBzb3VyY2VVUkwsIGRlc3RpbmF0aW9uVVJMKSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6bWFya1ByaXZhdGVDbGlja01lYXN1
cmVtZW50c0FzRXhwaXJlZEZvclRlc3RpbmcoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIHdlYnNpdGVEYXRhU3RvcmUoKS5uZXR3b3JrUHJvY2Vz
cygpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6Ok1hcmtQcml2
YXRlQ2xpY2tNZWFzdXJlbWVudHNBc0V4cGlyZWRGb3JUZXN0aW5nKG1fd2Vic2l0ZURhdGFTdG9y
ZS0+c2Vzc2lvbklEKCkpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpzZXRQQ01GcmF1ZFByZXZlbnRpb25WYWx1ZXNGb3JUZXN0aW5nKGNvbnN0
IFN0cmluZyYgdW5saW5rYWJsZVRva2VuLCBjb25zdCBTdHJpbmcmIHNlY3JldFRva2VuLCBjb25z
dCBTdHJpbmcmIHNpZ25hdHVyZSwgY29uc3QgU3RyaW5nJiBrZXlJRCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHdlYnNpdGVEYXRhU3RvcmUo
KS5uZXR3b3JrUHJvY2VzcygpLnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6TmV0d29ya1By
b2Nlc3M6OlNldFBDTUZyYXVkUHJldmVudGlvblZhbHVlc0ZvclRlc3RpbmcobV93ZWJzaXRlRGF0
YVN0b3JlLT5zZXNzaW9uSUQoKSwgdW5saW5rYWJsZVRva2VuLCBzZWNyZXRUb2tlbiwgc2lnbmF0
dXJlLCBrZXlJRCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKworI2lmIEVOQUJM
RShTUEVFQ0hfU1lOVEhFU0lTKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVzZXRTcGVlY2hTeW50
aGVzaXplcigpCit7CisgICAgaWYgKCFtX3NwZWVjaFN5bnRoZXNpc0RhdGEpCisgICAgICAgIHJl
dHVybjsKKyAgICAKKyAgICBhdXRvJiBzeW50aGVzaXNEYXRhID0gc3BlZWNoU3ludGhlc2lzRGF0
YSgpOworICAgIHN5bnRoZXNpc0RhdGEuc3BlYWtpbmdGaW5pc2hlZENvbXBsZXRpb25IYW5kbGVy
ID0gbnVsbHB0cjsKKyAgICBzeW50aGVzaXNEYXRhLnNwZWFraW5nU3RhcnRlZENvbXBsZXRpb25I
YW5kbGVyID0gbnVsbHB0cjsKKyAgICBzeW50aGVzaXNEYXRhLnNwZWFraW5nUGF1c2VkQ29tcGxl
dGlvbkhhbmRsZXIgPSBudWxscHRyOworICAgIHN5bnRoZXNpc0RhdGEuc3BlYWtpbmdSZXN1bWVk
Q29tcGxldGlvbkhhbmRsZXIgPSBudWxscHRyOworICAgIGlmIChzeW50aGVzaXNEYXRhLnN5bnRo
ZXNpemVyKQorICAgICAgICBzeW50aGVzaXNEYXRhLnN5bnRoZXNpemVyLT5yZXNldFN0YXRlKCk7
Cit9CisKK1dlYlBhZ2VQcm94eTo6U3BlZWNoU3ludGhlc2lzRGF0YSYgV2ViUGFnZVByb3h5Ojpz
cGVlY2hTeW50aGVzaXNEYXRhKCkKK3sKKyAgICBpZiAoIW1fc3BlZWNoU3ludGhlc2lzRGF0YSkK
KyAgICAgICAgbV9zcGVlY2hTeW50aGVzaXNEYXRhID0gU3BlZWNoU3ludGhlc2lzRGF0YSB7IG1h
a2VVbmlxdWU8UGxhdGZvcm1TcGVlY2hTeW50aGVzaXplcj4odGhpcyksIG51bGxwdHIsIG51bGxw
dHIsIG51bGxwdHIsIG51bGxwdHIsIG51bGxwdHIgfTsKKyAgICByZXR1cm4gKm1fc3BlZWNoU3lu
dGhlc2lzRGF0YTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNwZWVjaFN5bnRoZXNpc1ZvaWNl
TGlzdChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFZlY3RvcjxXZWJTcGVlY2hTeW50aGVzaXNWb2lj
ZT4mJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0byYgdm9pY2VMaXN0ID0gc3Bl
ZWNoU3ludGhlc2lzRGF0YSgpLnN5bnRoZXNpemVyLT52b2ljZUxpc3QoKTsKKyAgICBWZWN0b3I8
V2ViU3BlZWNoU3ludGhlc2lzVm9pY2U+IHJlc3VsdDsKKyAgICByZXN1bHQucmVzZXJ2ZUluaXRp
YWxDYXBhY2l0eSh2b2ljZUxpc3Quc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8mIHZvaWNlIDogdm9p
Y2VMaXN0KQorICAgICAgICByZXN1bHQudW5jaGVja2VkQXBwZW5kKFdlYlNwZWVjaFN5bnRoZXNp
c1ZvaWNlIHsgdm9pY2UtPnZvaWNlVVJJKCksIHZvaWNlLT5uYW1lKCksIHZvaWNlLT5sYW5nKCks
IHZvaWNlLT5sb2NhbFNlcnZpY2UoKSwgdm9pY2UtPmlzRGVmYXVsdCgpIH0pOworICAgIGNvbXBs
ZXRpb25IYW5kbGVyKFdURk1vdmUocmVzdWx0KSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpz
cGVlY2hTeW50aGVzaXNTZXRGaW5pc2hlZENhbGxiYWNrKENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBzcGVlY2hTeW50aGVzaXNEYXRhKCkuc3Bl
YWtpbmdGaW5pc2hlZENvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cik7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzcGVlY2hTeW50aGVzaXNTcGVhayhjb25zdCBT
dHJpbmcmIHRleHQsIGNvbnN0IFN0cmluZyYgbGFuZywgZmxvYXQgdm9sdW1lLCBmbG9hdCByYXRl
LCBmbG9hdCBwaXRjaCwgTW9ub3RvbmljVGltZSBzdGFydFRpbWUsIGNvbnN0IFN0cmluZyYgdm9p
Y2VVUkksIGNvbnN0IFN0cmluZyYgdm9pY2VOYW1lLCBjb25zdCBTdHJpbmcmIHZvaWNlTGFuZywg
Ym9vbCBsb2NhbFNlcnZpY2UsIGJvb2wgZGVmYXVsdFZvaWNlLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgYXV0byB2b2ljZSA9IFdlYkNvcmU6
OlBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVm9pY2U6OmNyZWF0ZSh2b2ljZVVSSSwgdm9pY2VOYW1l
LCB2b2ljZUxhbmcsIGxvY2FsU2VydmljZSwgZGVmYXVsdFZvaWNlKTsKKyAgICBhdXRvIHV0dGVy
YW5jZSA9IFdlYkNvcmU6OlBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlOjpjcmVhdGUo
KnRoaXMpOworICAgIHV0dGVyYW5jZS0+c2V0VGV4dCh0ZXh0KTsKKyAgICB1dHRlcmFuY2UtPnNl
dExhbmcobGFuZyk7CisgICAgdXR0ZXJhbmNlLT5zZXRWb2x1bWUodm9sdW1lKTsKKyAgICB1dHRl
cmFuY2UtPnNldFJhdGUocmF0ZSk7CisgICAgdXR0ZXJhbmNlLT5zZXRQaXRjaChwaXRjaCk7Cisg
ICAgdXR0ZXJhbmNlLT5zZXRWb2ljZSgmdm9pY2UuZ2V0KCkpOworCisgICAgc3BlZWNoU3ludGhl
c2lzRGF0YSgpLnNwZWFraW5nU3RhcnRlZENvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcik7CisgICAgc3BlZWNoU3ludGhlc2lzRGF0YSgpLnV0dGVyYW5jZSA9IFdU
Rk1vdmUodXR0ZXJhbmNlKTsKKyAgICBzcGVlY2hTeW50aGVzaXNEYXRhKCkuc3ludGhlc2l6ZXIt
PnNwZWFrKG1fc3BlZWNoU3ludGhlc2lzRGF0YS0+dXR0ZXJhbmNlLmdldCgpKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OnNwZWVjaFN5bnRoZXNpc0NhbmNlbCgpCit7CisgICAgc3BlZWNoU3lu
dGhlc2lzRGF0YSgpLnN5bnRoZXNpemVyLT5jYW5jZWwoKTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OnNwZWVjaFN5bnRoZXNpc1BhdXNlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21w
bGV0aW9uSGFuZGxlcikKK3sKKyAgICBzcGVlY2hTeW50aGVzaXNEYXRhKCkuc3BlYWtpbmdQYXVz
ZWRDb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpOworICAgIHNw
ZWVjaFN5bnRoZXNpc0RhdGEoKS5zeW50aGVzaXplci0+cGF1c2UoKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNwZWVjaFN5bnRoZXNpc1Jlc3VtZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgc3BlZWNoU3ludGhlc2lzRGF0YSgpLnNwZWFr
aW5nUmVzdW1lZENvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcik7
CisgICAgc3BlZWNoU3ludGhlc2lzRGF0YSgpLnN5bnRoZXNpemVyLT5yZXN1bWUoKTsKK30KKyNl
bmRpZiAvLyBFTkFCTEUoU1BFRUNIX1NZTlRIRVNJUykKKworI2lmICFQTEFURk9STShJT1NfRkFN
SUxZKQorCitXZWJDb250ZW50TW9kZSBXZWJQYWdlUHJveHk6OmVmZmVjdGl2ZUNvbnRlbnRNb2Rl
QWZ0ZXJBZGp1c3RpbmdQb2xpY2llcyhBUEk6OldlYnNpdGVQb2xpY2llcyYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpCit7CisgICAgcmV0dXJuIFdlYkNvbnRlbnRNb2RlOjpSZWNv
bW1lbmRlZDsKK30KKworI2VuZGlmIC8vICFQTEFURk9STShJT1NfRkFNSUxZKQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6YWRkT2JzZXJ2ZXIoV2ViVmlld0RpZE1vdmVUb1dpbmRvd09ic2VydmVyJiBv
YnNlcnZlcikKK3sKKyAgICBhdXRvIHJlc3VsdCA9IG1fd2ViVmlld0RpZE1vdmVUb1dpbmRvd09i
c2VydmVycy5hZGQoJm9ic2VydmVyLCBtYWtlV2Vha1B0cihvYnNlcnZlcikpOworICAgIEFTU0VS
VF9VTlVTRUQocmVzdWx0LCByZXN1bHQuaXNOZXdFbnRyeSk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpyZW1vdmVPYnNlcnZlcihXZWJWaWV3RGlkTW92ZVRvV2luZG93T2JzZXJ2ZXImIG9ic2Vy
dmVyKQoreworICAgIGF1dG8gcmVzdWx0ID0gbV93ZWJWaWV3RGlkTW92ZVRvV2luZG93T2JzZXJ2
ZXJzLnJlbW92ZSgmb2JzZXJ2ZXIpOworICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQp
OworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6d2ViVmlld0RpZE1vdmVUb1dpbmRvdygpCit7Cisg
ICAgYXV0byBvYnNlcnZlcnNDb3B5ID0gbV93ZWJWaWV3RGlkTW92ZVRvV2luZG93T2JzZXJ2ZXJz
OworICAgIGZvciAoY29uc3QgYXV0byYgb2JzZXJ2ZXIgOiBvYnNlcnZlcnNDb3B5KSB7CisgICAg
ICAgIGlmICghb2JzZXJ2ZXIudmFsdWUpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAg
b2JzZXJ2ZXIudmFsdWUtPndlYlZpZXdEaWRNb3ZlVG9XaW5kb3coKTsKKyAgICB9CisKKyAgICBh
dXRvIG5ld1dpbmRvd0tpbmQgPSBwYWdlQ2xpZW50KCkud2luZG93S2luZCgpOworICAgIGlmICht
X3dpbmRvd0tpbmQgIT0gbmV3V2luZG93S2luZCkgeworICAgICAgICBtX3dpbmRvd0tpbmQgPSBu
ZXdXaW5kb3dLaW5kOworICAgICAgICBpZiAobV9kcmF3aW5nQXJlYSkKKyAgICAgICAgICAgIG1f
ZHJhd2luZ0FyZWEtPndpbmRvd0tpbmREaWRDaGFuZ2UoKTsgICAgCisgICAgfQorfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6c2V0Q2FuU2hvd1BsYWNlaG9sZGVyKGNvbnN0IFdlYkNvcmU6OkVsZW1l
bnRDb250ZXh0JiBjb250ZXh0LCBib29sIGNhblNob3dQbGFjZWhvbGRlcikKK3sKKyAgICBpZiAo
aGFzUnVubmluZ1Byb2Nlc3MoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0
Q2FuU2hvd1BsYWNlaG9sZGVyKGNvbnRleHQsIGNhblNob3dQbGFjZWhvbGRlcikpOworfQorCitM
b2dnZXImIFdlYlBhZ2VQcm94eTo6bG9nZ2VyKCkKK3sKKyAgICBpZiAoIW1fbG9nZ2VyKSB7Cisg
ICAgICAgIG1fbG9nZ2VyID0gTG9nZ2VyOjpjcmVhdGUodGhpcyk7CisgICAgICAgIC8vIEZJWE1F
OiBEb2VzIHRoaXMgcmVhbGx5IG5lZWQgdG8gYmUgZGlzYWJsZWQgaW4gZXBoZW1lcmFsIHNlc3Np
b25zPworICAgICAgICBtX2xvZ2dlci0+c2V0RW5hYmxlZCh0aGlzLCAhc2Vzc2lvbklEKCkuaXNF
cGhlbWVyYWwoKSk7CisgICAgfQorCisgICAgcmV0dXJuICptX2xvZ2dlcjsKK30KKwordm9pZCBX
ZWJQYWdlUHJveHk6OmNvbmZpZ3VyZUxvZ2dpbmdDaGFubmVsKGNvbnN0IFN0cmluZyYgY2hhbm5l
bE5hbWUsIFdURkxvZ0NoYW5uZWxTdGF0ZSBzdGF0ZSwgV1RGTG9nTGV2ZWwgbGV2ZWwpCit7Cisj
aWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECisgICAgYXV0byogY2hhbm5lbCA9IGdldExvZ0NoYW5u
ZWwoY2hhbm5lbE5hbWUpOworICAgIGlmICAoIWNoYW5uZWwpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGNoYW5uZWwtPnN0YXRlID0gc3RhdGU7CisgICAgY2hhbm5lbC0+bGV2ZWwgPSBsZXZlbDsK
KyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGNoYW5uZWxOYW1lKTsKKyAgICBVTlVTRURfUEFSQU0o
c3RhdGUpOworICAgIFVOVVNFRF9QQVJBTShsZXZlbCk7CisjZW5kaWYKK30KKworI2lmIEhBVkUo
QVBQX1NTTykKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JTT0F1dGhvcml6YXRp
b25Mb2FkKGNvbnN0IFN0cmluZyYgZXh0ZW5zaW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFNP
QXV0aG9yaXphdGlvbkxvYWRQb2xpY3kpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIG1f
bmF2aWdhdGlvbkNsaWVudC0+ZGVjaWRlUG9saWN5Rm9yU09BdXRob3JpemF0aW9uTG9hZCgqdGhp
cywgU09BdXRob3JpemF0aW9uTG9hZFBvbGljeTo6QWxsb3csIGV4dGVuc2lvbiwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOworfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCX0FVVEhOKQor
dm9pZCBXZWJQYWdlUHJveHk6OnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24o
TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiYmIGNvbmZpZ3VyYXRpb24pCit7Cisg
ICAgbV93ZWJzaXRlRGF0YVN0b3JlLT5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0
aW9uKFdURk1vdmUoY29uZmlndXJhdGlvbikpOworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpzdGFydFRleHRNYW5pcHVsYXRpb25zKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpUZXh0TWFu
aXB1bGF0aW9uQ29udHJvbGxlcjo6RXhjbHVzaW9uUnVsZT4mIGV4Y2x1c2lvblJ1bGVzLAorICAg
IFRleHRNYW5pcHVsYXRpb25JdGVtQ2FsbGJhY2smJiBjYWxsYmFjaywgV1RGOjpDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFoYXNSdW5u
aW5nUHJvY2VzcygpKSB7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9CisgICAgbV90ZXh0TWFuaXB1bGF0aW9uSXRlbUNhbGxiYWNrID0gV1RGTW92
ZShjYWxsYmFjayk7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpT
dGFydFRleHRNYW5pcHVsYXRpb25zKGV4Y2x1c2lvblJ1bGVzKSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRmluZFRleHRNYW5pcHVsYXRp
b25JdGVtcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6
Ok1hbmlwdWxhdGlvbkl0ZW0+JiBpdGVtcykKK3sKKyAgICBpZiAoIW1fdGV4dE1hbmlwdWxhdGlv
bkl0ZW1DYWxsYmFjaykKKyAgICAgICAgcmV0dXJuOworICAgIG1fdGV4dE1hbmlwdWxhdGlvbkl0
ZW1DYWxsYmFjayhpdGVtcyk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpjb21wbGV0ZVRleHRN
YW5pcHVsYXRpb24oY29uc3QgVmVjdG9yPFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9s
bGVyOjpNYW5pcHVsYXRpb25JdGVtPiYgaXRlbXMsCisgICAgV1RGOjpGdW5jdGlvbjx2b2lkKGJv
b2wgYWxsRmFpbGVkLCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRy
b2xsZXI6Ok1hbmlwdWxhdGlvbkZhaWx1cmU+Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKCFoYXNSdW5uaW5nUHJvY2VzcygpKSB7CisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KHRydWUsIHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgc2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpXZWJQYWdlOjpDb21wbGV0ZVRleHRNYW5pcHVsYXRpb24oaXRlbXMpLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpzZXRD
T1JTRGlzYWJsaW5nUGF0dGVybnMoVmVjdG9yPFN0cmluZz4mJiBwYXR0ZXJucykKK3sKKyAgICBt
X2NvcnNEaXNhYmxpbmdQYXR0ZXJucyA9IFdURk1vdmUocGF0dGVybnMpOworICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2U6OlVwZGF0ZUNPUlNEaXNhYmxpbmdQYXR0ZXJucyhtX2NvcnNEaXNhYmxp
bmdQYXR0ZXJucykpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6c2V0T3ZlcnJpZGRlbk1lZGlh
VHlwZShjb25zdCBTdHJpbmcmIG1lZGlhVHlwZSkKK3sKKyAgICBtX292ZXJyaWRkZW5NZWRpYVR5
cGUgPSBtZWRpYVR5cGU7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0T3ZlcnJpZGRl
bk1lZGlhVHlwZShtZWRpYVR5cGUpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNldElzVGFr
aW5nU25hcHNob3RzRm9yQXBwbGljYXRpb25TdXNwZW5zaW9uKGJvb2wgaXNUYWtpbmdTbmFwc2hv
dHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24pCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6U2V0SXNUYWtpbmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oaXNUYWtpbmdT
bmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24pKTsKK30KKwordm9pZCBXZWJQYWdlUHJv
eHk6OnNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKQoreworICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2U6OlNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKSk7Cit9CisKKyNpZiAhUExB
VEZPUk0oSU9TX0ZBTUlMWSkKK2Jvb2wgV2ViUGFnZVByb3h5OjpzaG91bGRGb3JjZUZvcmVncm91
bmRQcmlvcml0eUZvckNsaWVudE5hdmlnYXRpb24oKSBjb25zdAoreworICAgIHJldHVybiBmYWxz
ZTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0UHJvY2Vzc0Rpc3BsYXlOYW1l
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3RyaW5nJiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6R2V0UHJvY2Vzc0Rp
c3BsYXlOYW1lKCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQ
YWdlUHJveHk6OnNldE9yaWVudGF0aW9uRm9yTWVkaWFDYXB0dXJlKHVpbnQ2NF90IG9yaWVudGF0
aW9uKQoreworI2lmIFBMQVRGT1JNKENPQ09BKSAmJiBFTkFCTEUoTUVESUFfU1RSRUFNKQorICAg
IGlmIChhdXRvKiBwcm94eSA9IG1fcHJvY2Vzcy0+dXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94
eSgpKQorICAgICAgICBwcm94eS0+c2V0T3JpZW50YXRpb24ob3JpZW50YXRpb24pOworCisgICAg
YXV0byogZ3B1UHJvY2VzcyA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5ncHVQcm9jZXNzKCk7
CisgICAgaWYgKGdwdVByb2Nlc3MgJiYgcHJlZmVyZW5jZXMoKS5jYXB0dXJlVmlkZW9JbkdQVVBy
b2Nlc3NFbmFibGVkKCkpCisgICAgICAgIGdwdVByb2Nlc3MtPnNldE9yaWVudGF0aW9uRm9yTWVk
aWFDYXB0dXJlKG9yaWVudGF0aW9uKTsKKyNlbmRpZgorfQorCisjaWYgRU5BQkxFKElOVEVMTElH
RU5UX1RSQUNLSU5HX1BSRVZFTlRJT04pCit2b2lkIFdlYlBhZ2VQcm94eTo6Z2V0TG9hZGVkU3Vi
cmVzb3VyY2VEb21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVmVjdG9yPFJlZ2lzdHJhYmxl
RG9tYWluPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBzZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6OldlYlBhZ2U6OkdldExvYWRlZFN1YnJlc291cmNlRG9tYWlucygpLCBXVEZN
b3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpjbGVhckxv
YWRlZFN1YnJlc291cmNlRG9tYWlucygpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
Q2xlYXJMb2FkZWRTdWJyZXNvdXJjZURvbWFpbnMoKSk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJM
RShHUFVfUFJPQ0VTUykKK3ZvaWQgV2ViUGFnZVByb3h5OjpncHVQcm9jZXNzRXhpdGVkKEdQVVBy
b2Nlc3NUZXJtaW5hdGlvblJlYXNvbikKK3sKKyNpZiBIQVZFKFZJU0lCSUxJVFlfUFJPUEFHQVRJ
T05fVklFVykKKyAgICBtX2NvbnRleHRJREZvclZpc2liaWxpdHlQcm9wYWdhdGlvbkluR1BVUHJv
Y2VzcyA9IDA7CisjZW5kaWYKKworICAgIHBhZ2VDbGllbnQoKS5ncHVQcm9jZXNzRGlkRXhpdCgp
OworCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBib29sIGFjdGl2ZUF1ZGlvQ2FwdHVy
ZSA9IGlzQ2FwdHVyaW5nQXVkaW8oKSAmJiBwcmVmZXJlbmNlcygpLmNhcHR1cmVBdWRpb0luR1BV
UHJvY2Vzc0VuYWJsZWQoKTsKKyAgICBib29sIGFjdGl2ZVZpZGVvQ2FwdHVyZSA9IGlzQ2FwdHVy
aW5nVmlkZW8oKSAmJiBwcmVmZXJlbmNlcygpLmNhcHR1cmVWaWRlb0luR1BVUHJvY2Vzc0VuYWJs
ZWQoKTsKKyAgICBib29sIGFjdGl2ZURpc3BsYXlDYXB0dXJlID0gZmFsc2U7CisgICAgaWYgKGFj
dGl2ZUF1ZGlvQ2FwdHVyZSB8fCBhY3RpdmVWaWRlb0NhcHR1cmUpIHsKKyAgICAgICAgYXV0byYg
Z3B1UHJvY2VzcyA9IHByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmVuc3VyZUdQVVByb2Nlc3MoKTsK
KyAgICAgICAgZ3B1UHJvY2Vzcy51cGRhdGVDYXB0dXJlQWNjZXNzKGFjdGl2ZUF1ZGlvQ2FwdHVy
ZSwgYWN0aXZlVmlkZW9DYXB0dXJlLCBhY3RpdmVEaXNwbGF5Q2FwdHVyZSwgbV9wcm9jZXNzLT5j
b3JlUHJvY2Vzc0lkZW50aWZpZXIoKSwgW10geyB9KTsKKyAgICB9CisjZW5kaWYKK30KKyNlbmRp
ZgorCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpICYmICFQTEFURk9STShNQUMpCisKK3ZvaWQg
V2ViUGFnZVByb3h5OjpwbGF0Zm9ybURpZFNlbGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4dE1lbnUo
Y29uc3QgV2ViQ29udGV4dE1lbnVJdGVtRGF0YSYpCit7Cit9CisKKyNlbmRpZgorCisjaWYgIVBM
QVRGT1JNKENPQ09BKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6d2lsbFBlcmZvcm1QYXN0ZUNvbW1h
bmQoKQoreworfQorCisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJveHk6OmRpc3BhdGNoQWN0aXZp
dHlTdGF0ZVVwZGF0ZUZvclRlc3RpbmcoKQoreworICAgIFJ1bkxvb3A6OmN1cnJlbnQoKS5kaXNw
YXRjaChbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7CisgICAgICAgIHByb3RlY3Rl
ZFRoaXMtPmRpc3BhdGNoQWN0aXZpdHlTdGF0ZUNoYW5nZSgpOworICAgIH0pOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6cmVxdWVzdFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbihXZWJDb3Jl
OjpTcGVlY2hSZWNvZ25pdGlvblJlcXVlc3QmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxTcGVlY2hSZWNvZ25pdGlvbkVycm9yPiYmKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBpZiAoIW1fc3BlZWNoUmVjb2duaXRpb25QZXJtaXNzaW9uTWFuYWdl
cikKKyAgICAgICAgbV9zcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyID0gbWFrZVVu
aXF1ZTxTcGVlY2hSZWNvZ25pdGlvblBlcm1pc3Npb25NYW5hZ2VyPigqdGhpcyk7CisKKyAgICBt
X3NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbk1hbmFnZXItPnJlcXVlc3QocmVxdWVzdCwgV1RG
TW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6cmVxdWVz
dFNwZWVjaFJlY29nbml0aW9uUGVybWlzc2lvbkJ5RGVmYXVsdEFjdGlvbihjb25zdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbkRhdGEmIG9yaWdpbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAoIW1fc3BlZWNoUmVjb2duaXRpb25Q
ZXJtaXNzaW9uTWFuYWdlcikgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX3NwZWVjaFJlY29nbml0aW9uUGVybWlzc2lv
bk1hbmFnZXItPmRlY2lkZUJ5RGVmYXVsdEFjdGlvbihvcmlnaW4sIFdURk1vdmUoY29tcGxldGlv
bkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RVc2VyTWVkaWFQZXJt
aXNzaW9uRm9yU3BlZWNoUmVjb2duaXRpb24oRnJhbWVJZGVudGlmaWVyIGZyYW1lSWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIHJlcXVlc3RpbmdPcmlnaW4sIGNvbnN0
IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiB0b3BPcmlnaW4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisjaWYgRU5BQkxFKE1FRElBX1NUUkVB
TSkKKyAgICBhdXRvIGNhcHR1cmVEZXZpY2UgPSBTcGVlY2hSZWNvZ25pdGlvbkNhcHR1cmVTb3Vy
Y2U6OmZpbmRDYXB0dXJlRGV2aWNlKCk7CisgICAgaWYgKCFjYXB0dXJlRGV2aWNlKQorICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICB1c2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXIoKS5jaGVja1VzZXJNZWRpYVBlcm1pc3Npb25Gb3JTcGVlY2hSZWNvZ25pdGlv
bihmcmFtZUlkZW50aWZpZXIsIHJlcXVlc3RpbmdPcmlnaW4sIHRvcE9yaWdpbiwgKmNhcHR1cmVE
ZXZpY2UsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyNlbHNlCisgICAgY29tcGxldGlv
bkhhbmRsZXIoZmFsc2UpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0
TWVkaWFLZXlTeXN0ZW1QZXJtaXNzaW9uQnlEZWZhdWx0QWN0aW9uKGNvbnN0IFdlYkNvcmU6OlNl
Y3VyaXR5T3JpZ2luRGF0YSYgb3JpZ2luLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGNvbXBsZXRpb25IYW5kbGVyKHRydWUpOworfQor
CisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKworV2ViQ29yZTo6Q2FwdHVyZVNvdXJjZU9yRXJy
b3IgV2ViUGFnZVByb3h5OjpjcmVhdGVSZWFsdGltZU1lZGlhU291cmNlRm9yU3BlZWNoUmVjb2du
aXRpb24oKQoreworICAgIGF1dG8gY2FwdHVyZURldmljZSA9IFNwZWVjaFJlY29nbml0aW9uQ2Fw
dHVyZVNvdXJjZTo6ZmluZENhcHR1cmVEZXZpY2UoKTsKKyAgICBpZiAoIWNhcHR1cmVEZXZpY2Up
CisgICAgICAgIHJldHVybiBDYXB0dXJlU291cmNlT3JFcnJvciB7ICJObyBkZXZpY2UgaXMgYXZh
aWxhYmxlIGZvciBjYXB0dXJlIiB9OworCisgICAgaWYgKHByZWZlcmVuY2VzKCkuY2FwdHVyZUF1
ZGlvSW5HUFVQcm9jZXNzRW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gQ2FwdHVyZVNvdXJjZU9y
RXJyb3IgeyBTcGVlY2hSZWNvZ25pdGlvblJlbW90ZVJlYWx0aW1lTWVkaWFTb3VyY2U6OmNyZWF0
ZShtX3Byb2Nlc3MtPmVuc3VyZVNwZWVjaFJlY29nbml0aW9uUmVtb3RlUmVhbHRpbWVNZWRpYVNv
dXJjZU1hbmFnZXIoKSwgKmNhcHR1cmVEZXZpY2UpIH07CisKKyNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQorICAgIHJldHVybiBDYXB0dXJlU291cmNlT3JFcnJvciB7IFNwZWVjaFJlY29nbml0aW9u
UmVtb3RlUmVhbHRpbWVNZWRpYVNvdXJjZTo6Y3JlYXRlKG1fcHJvY2Vzcy0+ZW5zdXJlU3BlZWNo
UmVjb2duaXRpb25SZW1vdGVSZWFsdGltZU1lZGlhU291cmNlTWFuYWdlcigpLCAqY2FwdHVyZURl
dmljZSkgfTsKKyNlbHNlCisgICAgcmV0dXJuIFNwZWVjaFJlY29nbml0aW9uQ2FwdHVyZVNvdXJj
ZTo6Y3JlYXRlUmVhbHRpbWVNZWRpYVNvdXJjZSgqY2FwdHVyZURldmljZSk7CisjZW5kaWYKK30K
KworI2VuZGlmCisKKyNpZiBFTkFCTEUoQVJLSVRfSU5MSU5FX1BSRVZJRVdfSU9TKQordm9pZCBX
ZWJQYWdlUHJveHk6OnRha2VNb2RlbEVsZW1lbnRGdWxsc2NyZWVuKFdlYkNvcmU6OkdyYXBoaWNz
TGF5ZXI6OlBsYXRmb3JtTGF5ZXJJRCBjb250ZW50TGF5ZXJJZCkKK3sKKyAgICBtb2RlbEVsZW1l
bnRDb250cm9sbGVyKCktPnRha2VNb2RlbEVsZW1lbnRGdWxsc2NyZWVuKGNvbnRlbnRMYXllcklk
KTsKK30KKyNlbmRpZgorCisjaWYgRU5BQkxFKEFSS0lUX0lOTElORV9QUkVWSUVXX01BQykKK3Zv
aWQgV2ViUGFnZVByb3h5Ojptb2RlbEVsZW1lbnREaWRDcmVhdGVQcmV2aWV3KGNvbnN0IFdlYkNv
cmU6OkVsZW1lbnRDb250ZXh0JiBjb250ZXh0LCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5n
JiB1dWlkLCBjb25zdCBGbG9hdFNpemUmIHNpemUpCit7CisgICAgbW9kZWxFbGVtZW50Q29udHJv
bGxlcigpLT5tb2RlbEVsZW1lbnREaWRDcmVhdGVQcmV2aWV3KGNvbnRleHQsIHVybCwgdXVpZCwg
c2l6ZSk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojptb2RlbEVsZW1lbnRQcmV2aWV3RGlkT2J0
YWluQ29udGV4dElkKGNvbnN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0JiBjb250ZXh0LCBjb25z
dCBTdHJpbmcmIHV1aWQsIHVpbnQzMl90IGNvbnRleHRJZCkKK3sKKyAgICBpZiAoaGFzUnVubmlu
Z1Byb2Nlc3MoKSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6TW9kZWxFbGVtZW50
UHJldmlld0RpZE9idGFpbkNvbnRleHRJZChjb250ZXh0LCB1dWlkLCBjb250ZXh0SWQpKTsKK30K
KyNlbmRpZgorCisjaWYgIVBMQVRGT1JNKENPQ09BKQorVmVjdG9yPFNhbmRib3hFeHRlbnNpb246
OkhhbmRsZT4gV2ViUGFnZVByb3h5OjpjcmVhdGVOZXR3b3JrRXh0ZW5zaW9uc1NhbmRib3hFeHRl
bnNpb25zKFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcykKK3sKKyAgICByZXR1cm4geyB9OworfQor
I2VuZGlmCisKKyNpZiBFTkFCTEUoTUVESUFfU0VTU0lPTl9DT09SRElOQVRPUikKK3ZvaWQgV2Vi
UGFnZVByb3h5OjpjcmVhdGVNZWRpYVNlc3Npb25Db29yZGluYXRvcihSZWY8TWVkaWFTZXNzaW9u
Q29vcmRpbmF0b3JQcm94eVByaXZhdGU+JiYgcHJpdmF0ZUNvb3JkaW5hdG9yLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHNlbmRXaXRo
QXN5bmNSZXBseShNZXNzYWdlczo6V2ViUGFnZTo6Q3JlYXRlTWVkaWFTZXNzaW9uQ29vcmRpbmF0
b3IocHJpdmF0ZUNvb3JkaW5hdG9yLT5pZGVudGlmaWVyKCkpLCBbd2Vha1RoaXMgPSBtYWtlV2Vh
a1B0cigqdGhpcyksIHByaXZhdGVDb29yZGluYXRvciA9IFdURk1vdmUocHJpdmF0ZUNvb3JkaW5h
dG9yKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oYm9v
bCBzdWNjZXNzKSBtdXRhYmxlIHsKKworICAgICAgICBpZiAoIXdlYWtUaGlzIHx8ICFzdWNjZXNz
KSB7CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKworICAgICAgICB3ZWFrVGhpcy0+bV9tZWRpYVNlc3Npb25Db29y
ZGluYXRvclByb3h5ID0gUmVtb3RlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3JQcm94eTo6Y3JlYXRl
KCp3ZWFrVGhpcywgV1RGTW92ZShwcml2YXRlQ29vcmRpbmF0b3IpKTsKKyAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIodHJ1ZSk7CisgICAgfSk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlUHJv
eHk6OnJlcXVlc3RTY3JvbGxUb1JlY3QoY29uc3QgRmxvYXRSZWN0JiB0YXJnZXRSZWN0LCBjb25z
dCBGbG9hdFBvaW50JiBvcmlnaW4pCit7CisgICAgcGFnZUNsaWVudCgpLnJlcXVlc3RTY3JvbGxU
b1JlY3QodGFyZ2V0UmVjdCwgb3JpZ2luKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnNjcm9s
bFRvUmVjdChjb25zdCBGbG9hdFJlY3QmIHRhcmdldFJlY3QsIGNvbnN0IEZsb2F0UG9pbnQmIG9y
aWdpbikKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpTY3JvbGxUb1JlY3QodGFyZ2V0
UmVjdCwgb3JpZ2luKSk7Cit9CisKKyNpZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgV2ViUGFnZVBy
b3h5OjphcHBQcml2YWN5UmVwb3J0VGVzdGluZ0RhdGEoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBBcHBQcml2YWN5UmVwb3J0VGVzdGluZ0RhdGEmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFzeW5j
UmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpBcHBQcml2YWN5UmVwb3J0VGVzdGluZ0Rh
dGEobV93ZWJzaXRlRGF0YVN0b3JlLT5zZXNzaW9uSUQoKSksIFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmNsZWFyQXBwUHJpdmFjeVJlcG9ydFRl
c3RpbmdEYXRhKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICB3ZWJzaXRlRGF0YVN0b3JlKCkubmV0d29ya1Byb2Nlc3MoKS5zZW5kV2l0aEFzeW5j
UmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpDbGVhckFwcFByaXZhY3lSZXBvcnRUZXN0
aW5nRGF0YShtX3dlYnNpdGVEYXRhU3RvcmUtPnNlc3Npb25JRCgpKSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorI2VuZGlmCisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjdW5k
ZWYgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HCisjdW5kZWYgV0VCUEFHRVBST1hZX1JFTEVBU0Vf
TE9HX0VSUk9SCisjdW5kZWYgTUVTU0FHRV9DSEVDS19DT01QTEVUSU9OCisjdW5kZWYgTUVTU0FH
RV9DSEVDS19VUkwKKyN1bmRlZiBNRVNTQUdFX0NIRUNLCisjdW5kZWYgTUVSR0VfV0hFRUxfRVZF
TlRTCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDMxYTMyOTYzM2Ri
MDFhMDk3YzdlYTI4ZjhkNTQ2NDUzNDljNjNmYzEuLmNhMDllODM3MmVjNzNjZDcyNzVlZTAxODY1
ZmIyZTdkOTZkZDYwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBA
IC0xNzQ1LDcgKzE3NDUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWROYXZpZ2F0ZVdpdGhOYXZp
Z2F0aW9uRGF0YVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBjb25zdCBXZWJOYXZpZ2F0
aW9uRGF0YVN0b3JlJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyKTsKICAgICB2b2lkIGRpZENo
YW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWVTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwg
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFVSTCYmKTsK
ICAgICB2b2lkIGRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25Bc3luY1NoYXJlZChSZWY8
V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJh
bWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRp
ZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYmLCBGcmFt
ZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6b3B0aW9uYWw8V2ViUGFnZVBy
b3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgSVBD
OjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNlckRhdGEmLCB1aW50NjRfdCBsaXN0ZW5l
cklEKTsKLSAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJlZjxXZWJQcm9j
ZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIsIEZyYW1lSW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1
aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29u
c3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1
bmRsZSwgV2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0
X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0
IFVzZXJEYXRhJik7CisgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZChSZWY8
V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJh
bWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRp
ZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5
cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5q
ZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24s
IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEm
KTsKICAgICB2b2lkIHN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5
PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7
CiAgICAgdm9pZCBsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJv
eHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6Ok5hdmlnYXRpb24mLCBjb25zdCBJ
UEM6OkRhdGFSZWZlcmVuY2UmLCBjb25zdCBTdHJpbmcmIE1JTUVUeXBlLCBjb25zdCBTdHJpbmcm
IGVuY29kaW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSwg
V2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBzdGQ6Om9wdGlvbmFsPE5hdmln
YXRpbmdUb0FwcEJvdW5kRG9tYWluPiwgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRh
PiYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LCBXZWJDb3JlOjpTdWJz
dGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5KTsKICAgICB2b2lkIGxvYWRSZXF1
ZXN0V2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LCBBUEk6Ok9iamVjdCog
dXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgc3RkOjpvcHRp
b25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4sIHN0ZDo6b3B0aW9uYWw8V2Vic2l0ZVBv
bGljaWVzRGF0YT4mJiA9IHN0ZDo6bnVsbG9wdCwgc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcj4gZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRv
UmVzdW1lID0gc3RkOjpudWxsb3B0KTsKQEAgLTIwNjMsNyArMjA2Myw3IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwg
TmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwKICAgICAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiYsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBV
c2VyRGF0YSYpOwogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJh
bWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRp
ZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELAotICAgICAgICBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5T
aG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxs
b3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOworICAgICAgICBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5T
aG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxs
b3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3Qg
VXNlckRhdGEmKTsKICAgICB2b2lkIHVuYWJsZVRvSW1wbGVtZW50UG9saWN5KFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIGNvbnN0IFVzZXJE
YXRhJik7CiAgICAgdm9pZCBiZWdpblNhZmVCcm93c2luZ0NoZWNrKGNvbnN0IFVSTCYsIGJvb2ws
IFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eSYpOwogCkBAIC0yNDI3LDcgKzI0MjcsNyBAQCBw
cml2YXRlOgogI2VuZGlmCiAKICAgICB2b2lkIHN0YXJ0VVJMU2NoZW1lVGFzayhVUkxTY2hlbWVU
YXNrUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIHN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhh
bmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcik7CisgICAgdm9pZCBzdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICB2b2lkIGxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRh
c2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9h
ZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFza0RlbGF5ZWRSZXBseSYmKTsKIAogICAgIGJvb2wgY2hl
Y2tVUkxSZWNlaXZlZEZyb21DdXJyZW50T3JQcmV2aW91c1dlYlByb2Nlc3MoV2ViUHJvY2Vzc1By
b3h5JiwgY29uc3QgU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggMjYxYzhlNTE0NGRmNjcxYTc2ZmRjM2RhN2E1YWE4
NDg4Mzc4MTQ0YS4uYjU3NzcyNWYzMGNjMjY1MmY5ODJkMjkwYzRmMDIwZTVkMjdlMzA2MyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpA
QCAtMTA3LDcgKzEwNyw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQcm94eSB7CiAjZW5kaWYKIAog
ICAgICMgUG9saWN5IG1lc3NhZ2VzCi0gICAgRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEg
ZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVu
dGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBib29sIGNhblNob3dN
SU1FVHlwZSwgU3RyaW5nIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVj
dGVkQnVuZGxlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpV
c2VyRGF0YSB1c2VyRGF0YSkKKyAgICBEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBmcmFt
ZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBwb2xpY3lDaGVja0lkZW50aWZp
ZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVU
eXBlLCBTdHJpbmcgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRC
dW5kbGUsIGVudW06dWludDhfdCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSkKICAg
ICBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmMoV2ViQ29yZTo6RnJhbWVJZGVu
dGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBX
ZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50
NjRfdCBuYXZpZ2F0aW9uSUQsIHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5h
dmlnYXRpb25BY3Rpb25EYXRhLCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIG9yaWdpbmF0
aW5nRnJhbWVJbmZvRGF0YSwgc3RkOjpvcHRpb25hbDxXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50
aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlELCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qgb3JpZ2lu
YWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgSVBDOjpGb3JtRGF0
YVJlZmVyZW5jZSByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZWRpcmVj
dFJlc3BvbnNlLCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhLCB1aW50NjRfdCBsaXN0ZW5lcklE
KQogICAgIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25TeW5jKFdlYkNvcmU6OkZyYW1l
SWRlbnRpZmllciBmcmFtZUlELCBib29sIGlzTWFpbkZyYW1lLCBzdHJ1Y3QgV2ViS2l0OjpGcmFt
ZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyIHBvbGlj
eUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBzdHJ1Y3QgV2ViS2l0OjpO
YXZpZ2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgc3RydWN0IFdlYktpdDo6
RnJhbWVJbmZvRGF0YSBvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEsIHN0ZDo6b3B0aW9uYWw8V2Vi
S2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1BhZ2VJRCwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0IG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
IHJlcXVlc3QsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UgcmVxdWVzdEJvZHksIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UgcmVkaXJlY3RSZXNwb25zZSwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0
YSkgLT4gKHN0cnVjdCBXZWJLaXQ6OlBvbGljeURlY2lzaW9uIFBvbGljeURlY2lzaW9uKSBTeW5j
aHJvbm91cwogICAgIERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihXZWJDb3JlOjpGcmFt
ZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBmcmFtZUlu
Zm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBwb2xpY3lDaGVja0lkZW50aWZpZXIs
IHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5hdmlnYXRpb25BY3Rpb25EYXRh
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgU3RyaW5nIGZyYW1lTmFtZSwgdWlu
dDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSkKQEAgLTUyMSw3ICs1
MjEsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAgIFNldElzVXNpbmdIaWdoUGVy
Zm9ybWFuY2VXZWJHTChib29sIGlzVXNpbmdIaWdoUGVyZm9ybWFuY2VXZWJHTCkKIAogICAgIFN0
YXJ0VVJMU2NoZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyBw
YXJhbWV0ZXJzKQotICAgIFN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKKyAgICBTdG9wVVJMU2NoZW1lVGFzayh1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyKQogICAgIExvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soc3RydWN0
IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1ldGVycykgLT4gKFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3Is
IFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogCiAjaWYgRU5BQkxFKERFVklDRV9P
UklFTlRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNj
aGVtZUhhbmRsZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFu
ZGxlci5jcHAKaW5kZXggZmY2OGQ2NGUxODAyYWRlYmM0MDE0YjhiNjE3OTFhMDJmNGU0ZTRhMC4u
YWY5NWEyNTEyYmM0MjMzYTFkYWRlOWFmZWIxMWM3ZWE0N2Y0YjdkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAKQEAgLTU1LDE0ICs1NSwx
NCBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0YXJ0VGFzayhXZWJQYWdlUHJveHkmIHBh
Z2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcwogICAgIGF1dG8gcmVzdWx0ID0gbV90YXNrcy5h
ZGQodGFza0lkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2s6OmNyZWF0ZSgqdGhpcywgcGFnZSwg
cHJvY2Vzcywgd2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMpLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSkpOwogICAgIEFTU0VSVChyZXN1bHQuaXNOZXdFbnRyeSk7CiAKLSAgICBhdXRv
IHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFkZChwYWdlLmlkZW50aWZpZXIo
KSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CisgICAgYXV0byBwYWdlRW50cnkgPSBtX3Rhc2tzQnlQ
YWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCksIEhhc2hTZXQ8V2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyPigpKTsKICAgICBBU1NFUlQoIXBhZ2VFbnRyeS5pdGVyYXRv
ci0+dmFsdWUuY29udGFpbnModGFza0lkZW50aWZpZXIpKTsKICAgICBwYWdlRW50cnkuaXRlcmF0
b3ItPnZhbHVlLmFkZCh0YXNrSWRlbnRpZmllcik7CiAKICAgICBwbGF0Zm9ybVN0YXJ0VGFzayhw
YWdlLCByZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKIH0KIAotV2ViUHJvY2Vzc1Byb3h5KiBXZWJV
UkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIodWludDY0X3QgdGFza0lk
ZW50aWZpZXIpIGNvbnN0CitXZWJQcm9jZXNzUHJveHkqIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnBy
b2Nlc3NGb3JUYXNrSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
dGFza0lkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNsdHlwZShtX3Rhc2tzKTo6aXNW
YWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtNzks
NyArNzksNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBhZ2Uo
V2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAgICAgICByZXR1cm47CiAKICAg
ICBhdXRvJiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsKLSAgICBWZWN0b3I8dWludDY0
X3Q+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcnNUb1N0b3A7CiAgICAgdGFza0lkZW50aWZp
ZXJzVG9TdG9wLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkodGFza3NCeVBhZ2Uuc2l6ZSgpKTsKICAg
ICBmb3IgKGF1dG8gdGFza0lkZW50aWZpZXIgOiB0YXNrc0J5UGFnZSkgewogICAgICAgICBpZiAo
IXByb2Nlc3MgfHwgcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHRhc2tJZGVudGlmaWVyKSA9PSBw
cm9jZXNzKQpAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BB
bGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogCiB9CiAK
LXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRh
c2soV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
dGFza0lkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFkZWNsdHlwZShtX3Rhc2tzKTo6aXNWYWxpZEtl
eSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKQEAgLTExNSw3ICsxMTUsNyBAQCB2
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnRhc2tDb21wbGV0ZWQoV2ViVVJMU2NoZW1lVGFzayYg
dGFzaykKICAgICBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQodGFzayk7CiB9CiAKLXZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdlYlBhZ2VQcm94eUlkZW50aWZp
ZXIgcGFnZUlELCB1aW50NjRfdCB0YXNrSUQpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnJl
bW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJRCwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJRCkKIHsKICAgICBhdXRvIGl0ZXJhdG9y
ID0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuZmluZChwYWdlSUQpOwogICAgIEFTU0VSVChpdGVy
YXRvciAhPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5lbmQoKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKaW5kZXggZjRlM2RiNjBjYzNiOGUwMDBi
MzQ2MDMyYTk5OTdlZWMwMTQ0ZDhkYi4uNGM5OTY2OWJhNDRkOTA1YTBhMjVkMTI1NjA1ZmIxMzgw
NzNmZGI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1l
SGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRs
ZXIuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJXZWJVUkxT
Y2hlbWVUYXNrLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTUxLDcgKzUyLDcgQEAgcHVibGljOgogICAg
IHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAog
ICAgIHZvaWQgc3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlByb2Nlc3NQcm94eSYsIFdlYkNv
cmU6OlBhZ2VJZGVudGlmaWVyLCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmLCBTeW5jTG9hZENv
bXBsZXRpb25IYW5kbGVyJiYpOwotICAgIHZvaWQgc3RvcFRhc2soV2ViUGFnZVByb3h5JiwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFRhc2soV2ViUGFnZVByb3h5Jiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKTsKICAgICB2
b2lkIHN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiwgV2ViUHJvY2Vzc1Byb3h5Kik7
CiAgICAgdm9pZCB0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smKTsKIApAQCAtNjMsMTMg
KzY0LDEzIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtU3RvcFRhc2soV2Vi
UGFnZVByb3h5JiwgV2ViVVJMU2NoZW1lVGFzayYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcGxh
dGZvcm1UYXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smKSB7IH07CiAKLSAgICB2b2lkIHJl
bW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNr
SUQpOwotICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHVpbnQ2
NF90KSBjb25zdDsKKyAgICB2b2lkIHJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIFdlYlBy
b2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikgY29uc3Q7CiAKICAgICB1aW50NjRfdCBtX2lkZW50aWZpZXI7CiAKLSAg
ICBIYXNoTWFwPHVpbnQ2NF90LCBSZWY8V2ViVVJMU2NoZW1lVGFzaz4+IG1fdGFza3M7Ci0gICAg
SGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBIYXNoU2V0PHVpbnQ2NF90Pj4gbV90YXNr
c0J5UGFnZUlkZW50aWZpZXI7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNrczsKKyAgICBIYXNoTWFwPFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CiAgICAgCiAgICAgU3luY0xvYWRDb21w
bGV0aW9uSGFuZGxlciBtX3N5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXI7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAppbmRleCBlYWMwOWJkZWNhMWRlYzBjYjIx
OWFjMWQwMzMwOGIyZTI3MjMwOWNlLi4yYTllMDZhMmEyYjBmZDJkNmNkZTQ0NjUxOTNiNmRmOGM4
MDI2NGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVU
YXNrLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oCkBA
IC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKIAogICAgIH5XZWJVUkxTY2hlbWVUYXNrKCk7CiAKLSAg
ICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJl
dHVybiBtX2lkZW50aWZpZXI7IH0KICAgICBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VQcm94
eUlEKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9wYWdlUHJv
eHlJRDsgfQogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCgpIGNvbnN0IHsg
QVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fd2ViUGFnZUlEOyB9CiAgICAgV2Vi
UHJvY2Vzc1Byb3h5KiBwcm9jZXNzKCkgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1
cm4gbV9wcm9jZXNzLmdldCgpOyB9CkBAIC0xMDEsNyArMTAxLDcgQEAgcHJpdmF0ZToKIAogICAg
IFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPiBtX3VybFNjaGVtZUhhbmRsZXI7CiAgICAgUmVmUHRy
PFdlYlByb2Nlc3NQcm94eT4gbV9wcm9jZXNzOwotICAgIHVpbnQ2NF90IG1faWRlbnRpZmllcjsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAg
IFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgbV9wYWdlUHJveHlJRDsKICAgICBXZWJDb3JlOjpQYWdl
SWRlbnRpZmllciBtX3dlYlBhZ2VJRDsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgbV9y
ZXF1ZXN0IFdURl9HVUFSREVEX0JZX0xPQ0sobV9yZXF1ZXN0TG9jayk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQu
aAppbmRleCAzZjgyN2EwMWY0ODgxNzQ0NjY2YTM2ZWU3YWJhYTczMDcwMTQwZDRiLi40NWNkNjFl
NzFkODg1Y2YxZjdjYzM4YjM1NTFhMmM0OGJkMDZkZjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJl
c291cmNlTG9hZENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKQEAg
LTI1LDYgKzI1LDggQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYkZy
YW1lOwogY2xhc3MgV2ViUGFnZTsKQEAgLTQ1LDE0ICs0NywxNCBAQCBjbGFzcyBSZXNvdXJjZUxv
YWRDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgflJlc291cmNlTG9hZENsaWVudCgpID0g
ZGVmYXVsdDsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShX
ZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVy
Ki8sIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQcm92aXNp
b25hbGx5TG9hZGluZyovKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9y
RnJhbWUoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRl
bnRpZmllciovLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZv
clJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAv
KmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIHsgfQotICAg
IHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdlYktpdDo6
V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgdWlu
dDY0X3QgY29udGVudExlbmd0aCkgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaExvYWRG
b3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3Qg
LyppZGVudGlmaWVyKi8pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291
cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50
aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIHsgfQotICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJh
bWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLykgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1
YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJL
aXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8pIHsgcmV0dXJuIHRydWU7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQ
YWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCAvKnBhZ2VJc1Byb3Zpc2lv
bmFsbHlMb2FkaW5nKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JG
cmFtZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZUZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhG
b3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSB7IH0KKyAg
ICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYs
IFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIHsg
fQorICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFn
ZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkQ2FjaGVSZXNwb25zZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSB7IHJldHVybiB0cnVlOyB9CisgICAgdmly
dHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYktpdDo6V2ViUGFnZSYsIFdl
YktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIHsgcmV0
dXJuIHRydWU7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIEluamVjdGVkQnVuZGxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwCmlu
ZGV4IGI4YmQ0MTI0MzIxNGU4MGViZDZiN2M1MTE2M2E1OTBkOTNiOTdlZjguLjA2ZDhhZGEyNTBh
MzcxYmJjYTVlYjBlNjQ0MWE1MmI3MjM0NWM5ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9J
bmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwCkBAIC0zOSwyMCArMzksMjAg
QEAgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQoY29uc3QKICAgICBpbml0aWFsaXplKGNsaWVudCk7CiB9CiAK
LXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBwYWdlSXNQcm92
aXNpb25hbGx5TG9hZGluZykKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYg
ZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRp
bmcpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2Uo
dG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShyZXF1ZXN0KSwg
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7Cisg
ICAgbV9jbGllbnQuZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQ
SSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJlcXVlc3QpLCBwYWdlSXNQ
cm92aXNpb25hbGx5TG9hZGluZywgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9p
ZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZv
ckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmll
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6
OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkK
IHsKICAgICBpZiAoIW1fY2xpZW50LndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBSZWZQdHI8QVBJOjpVUkxSZXF1ZXN0PiByZXR1cm5lZFJlcXVlc3QgPSBh
ZG9wdFJlZih0b0ltcGwobV9jbGllbnQud2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUodG9BUEkoJnBh
Z2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShyZXF1ZXN0KSwgdG9BUEkocmVk
aXJlY3RSZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbykpKTsKKyAgICBSZWZQdHI8
QVBJOjpVUkxSZXF1ZXN0PiByZXR1cm5lZFJlcXVlc3QgPSBhZG9wdFJlZih0b0ltcGwobV9jbGll
bnQud2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBp
ZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJlcXVlc3QpLCB0b0FQSShyZWRpcmVjdFJlc3Bv
bnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOwogICAgIGlmIChyZXR1cm5lZFJlcXVl
c3QpIHsKICAgICAgICAgLy8gSWYgdGhlIGNsaWVudCByZXR1cm5lZCBhbiBIVFRQIGJvZHksIHdl
IHdhbnQgdG8gdXNlIHRoYXQgaHR0cCBib2R5LiBUaGlzIGlzIG5lZWRlZCB0byBmaXggPHJkYXI6
Ly9wcm9ibGVtLzIzNzYzNTg0PgogICAgICAgICBhdXRvJiByZXR1cm5lZFJlc291cmNlUmVxdWVz
dCA9IHJldHVybmVkUmVxdWVzdC0+cmVzb3VyY2VSZXF1ZXN0KCk7CkBAIC02NCw1MiArNjQsNTIg
QEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVx
dWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UKICAgICAgICAgcmVxdWVzdCA9IHsgfTsKIH0KIAot
dm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVSZXNw
b25zZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3Qg
aWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIEluamVj
dGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVz
b3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVz
b3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShyZXNw
b25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkUmVjZWl2
ZVJlc3BvbnNlRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlm
aWVyLnRvVUludDY0KCksIHRvQVBJKHJlc3BvbnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZv
KTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJl
Y2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZy
YW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKQordm9pZCBJ
bmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVu
Z3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgY29udGVudExlbmd0
aCkKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3Vy
Y2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRpZFJlY2VpdmVDb250ZW50TGVu
Z3RoRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCBj
b250ZW50TGVuZ3RoLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJh
bWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIGNvbnRlbnRMZW5ndGgsIG1fY2xpZW50LmJhc2Uu
Y2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZy
YW1lLCB1aW50NjRfdCBpZGVudGlmaWVyKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJG
cmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
KQogewogICAgIGlmICghbV9jbGllbnQuZGlkRmluaXNoTG9hZEZvclJlc291cmNlKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UodG9BUEko
JnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pOworICAgIG1fY2xpZW50LmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSks
IHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6
OmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1
aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5q
ZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGYWlsTG9hZEZvclJlc291cmNl
KFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAg
IGlmICghbV9jbGllbnQuZGlkRmFpbExvYWRGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgbV9jbGllbnQuZGlkRmFpbExvYWRGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJ
KCZmcmFtZSksIGlkZW50aWZpZXIsIHRvQVBJKGVycm9yKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJ
bmZvKTsKKyAgICBtX2NsaWVudC5kaWRGYWlsTG9hZEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwg
dG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShlcnJvciksIG1fY2xp
ZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLWJvb2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1l
JiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK2Jvb2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVz
b3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZy
YW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIp
CiB7CiAgICAgaWYgKCFtX2NsaWVudC5zaG91bGRDYWNoZVJlc3BvbnNlKQogICAgICAgICByZXR1
cm4gdHJ1ZTsKIAotICAgIHJldHVybiBtX2NsaWVudC5zaG91bGRDYWNoZVJlc3BvbnNlKHRvQVBJ
KCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgbV9jbGllbnQuYmFzZS5jbGllbnRJ
bmZvKTsKKyAgICByZXR1cm4gbV9jbGllbnQuc2hvdWxkQ2FjaGVSZXNwb25zZSh0b0FQSSgmcGFn
ZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgbV9jbGllbnQuYmFzZS5j
bGllbnRJbmZvKTsKIH0KIAotYm9vbCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGll
bnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBm
cmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK2Jvb2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJQYWdlJiBwYWdlLCBX
ZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyKQogewogICAgIGlmICghbV9jbGllbnQuc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpCiAg
ICAgICAgIHJldHVybiB0cnVlOwogCi0gICAgcmV0dXJuIG1fY2xpZW50LnNob3VsZFVzZUNyZWRl
bnRpYWxTdG9yYWdlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgbV9j
bGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICByZXR1cm4gbV9jbGllbnQuc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRv
VUludDY0KCksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudC5oCmluZGV4IDNhZWYzZGNjZWEzOTY1MGNkNjFmODRlZmYyODFhZDBkMjQ3YTZhZTcu
Ljk4ODEzZDliMTU0YmIzZDIzYmNlMzQ1NDQ0YWJkYmViMDUyNDNhYjUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKQEAgLTUxLDE0
ICs1MSwxNCBAQCBjbGFzcyBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQgOiBw
dWJsaWMgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyYwogcHVibGljOgogICAgIGV4cGxpY2l0
IEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudChjb25zdCBXS0J1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnRCYXNlKik7CiAKLSAgICB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJl
c291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGlu
ZyovKSBvdmVycmlkZTsKLSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2Um
LCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2
NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYs
IFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdl
YkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGYWls
TG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICBib29sIHNob3Vs
ZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJQYWdlJiwg
V2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZElu
aXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9v
bCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKi8pIG92ZXJyaWRlOworICAgIHZvaWQgd2ls
bFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlUmVz
cG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYs
IFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCB1aW50NjRfdCBj
b250ZW50TGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJj
ZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
IG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2Vi
RnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2Uo
V2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBv
dmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYlBhZ2UmLCBX
ZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4
IDYwYjk1ZWQzZWJhODc5YmM0OWU3MTE1NjQxNWExYmYwNTljODZhNTQuLjQ3YjkxY2U4N2QzNjEz
ZTM1ZDU3OTQwNzk3YWRmMGIxZGQwMGE0OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcApA
QCAtOTIsNyArOTIsNyBAQCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246On5OZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24oKQogdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVN
ZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBDOjpEZWNvZGVyJiBkZWNvZGVy
KQogewogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6
V2ViUmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewotICAgICAgICBpZiAo
YXV0byogd2ViUmVzb3VyY2VMb2FkZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2Fk
ZXJTdHJhdGVneSgpLndlYlJlc291cmNlTG9hZGVyRm9ySWRlbnRpZmllcihkZWNvZGVyLmRlc3Rp
bmF0aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRvKiB3ZWJSZXNvdXJjZUxvYWRlciA9IFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCkud2ViUmVzb3VyY2VMb2FkZXJG
b3JJZGVudGlmaWVyKG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
PihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpKQogICAgICAgICAgICAgd2ViUmVzb3VyY2VMb2Fk
ZXItPmRpZFJlY2VpdmVXZWJSZXNvdXJjZUxvYWRlck1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rl
cik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0yMjYsMTIgKzIyNiwxMiBAQCB2b2lkIE5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6d3JpdGVCbG9ic1RvVGVtcG9yYXJ5RmlsZXNGb3JJbmRl
eGVkREIoY29uc3QgVmVjdAogICAgIGNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVz
c2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpXcml0ZUJsb2JzVG9UZW1wb3Jh
cnlGaWxlc0ZvckluZGV4ZWREQihibG9iVVJMcyksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
KTsKIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2Fk
KHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yLCBSZXNv
dXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCit2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6
ZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHBpbmdM
b2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYg
cmVzcG9uc2UpCiB7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViTG9hZGVyU3RyYXRl
Z3koKS5kaWRGaW5pc2hQaW5nTG9hZChwaW5nTG9hZElkZW50aWZpZXIsIFdURk1vdmUoZXJyb3Ip
LCBXVEZNb3ZlKHJlc3BvbnNlKSk7CiB9CiAKLXZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9u
OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVy
LCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCit2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6
ZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
cHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvcikKIHsKICAgICBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVneSgpLmRpZEZpbmlzaFByZWNv
bm5lY3Rpb24ocHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1vdmUoZXJyb3IpKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmgKaW5kZXggZjgxMTk2YWUwMTI0MDBiYjFjNmNmZmUyOGE2MmJmZmM0
Y2RhNzUxNC4uZDYyZGZlNGRmNWFhNWE3Zjg0NzZhYTE5ZmVjZjg3NGJiZjg0OWFkYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmgKQEAgLTIzLDE0ICsyMywxNCBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9u
X2gKLSNkZWZpbmUgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIlNoYXJlYWJsZVJlc291cmNlLmgiCiAj
aW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvQ29uc29sZVR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9NZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUlRDRGF0
YUNoYW5uZWxJZGVudGlmaWVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlcnZpY2VXb3JrZXJUeXBlcy5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
CkBAIC01MCw4ICs1MCw2IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgV2ViSURCQ29ubmVj
dGlvblRvU2VydmVyOwogY2xhc3MgV2ViU1dDbGllbnRDb25uZWN0aW9uOwogCi10eXBlZGVmIHVp
bnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7Ci0KIGNsYXNzIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbj4sIElQ
Qzo6Q29ubmVjdGlvbjo6Q2xpZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbj4gY3JlYXRlKElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBjb25u
ZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6SFRUUENvb2tpZUFjY2VwdFBvbGljeSBodHRwQ29v
a2llQWNjZXB0UG9saWN5KQpAQCAtOTYsOCArOTQsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlk
Q2xvc2UoSVBDOjpDb25uZWN0aW9uJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlSW52
YWxpZE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpNZXNzYWdlTmFtZSkgb3ZlcnJpZGU7
CiAKLSAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYp
OwotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9u
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsKKyAgICB2b2lkIGRpZEZpbmlz
aFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwaW5nTG9hZElkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJiYpOwogICAgIHZvaWQgc2V0T25MaW5lU3RhdGUoYm9vbCBpc09uTGluZSk7CiAgICAg
dm9pZCBjb29raWVBY2NlcHRQb2xpY3lDaGFuZ2VkKFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQ
b2xpY3kpOwogCkBAIC0xMjksNSArMTI3LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdAotCi0jZW5kaWYgLy8gTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCBjOGI0YTE4ZjdlOTQyNDU0
YjBhYTk2NjYxMmYxOTNhY2ZkYWM4NjQwLi42YmEzMWY1NDhiOWFhNTAwMTdkNmFkNDc4MjZjNzMx
ODIxNmE2MzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluCkBA
IC0yNiw4ICsyNiw4IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbiBMZWdh
Y3lSZWNlaXZlciB7CiAgICAgRGlkQ2FjaGVSZXNvdXJjZShXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QgcmVxdWVzdCwgV2ViS2l0OjpTaGFyZWFibGVSZXNvdXJjZTo6SGFuZGxlIHJlc291cmNlKQog
I2VuZGlmCiAKLSAgICBEaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRfdCBwaW5nTG9hZElkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UgcmVzcG9uc2UpCi0gICAgRGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25u
ZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKKyAgICBEaWRG
aW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcGluZ0xvYWRJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIERpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yIGVycm9yKQogICAgIFNldE9uTGluZVN0YXRlKGJvb2wgaXNPbkxpbmUp
OwogICAgIENvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoZW51bTp1aW50OF90IFdlYkNvcmU6OkhU
VFBDb29raWVBY2NlcHRQb2xpY3kgcG9saWN5KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCmluZGV4IDM1MjUzMTA2
Y2IxZDMwMTMzOWMyYjMwZTg2MDJmNmJmMjRhM2U3MmIuLjA5NGNjN2FlMGU0Zjc0NjNiYzVjNjYz
OTRiODhiY2U3YjA3NTg1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTgxLDggKzgxLDggQEAKICNkZWZp
bmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJST1JfQkFTSUMoZm10LCAuLi4pIFJF
TEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFdlYkxvYWRlclN0cmF0ZWd5OjoiIGZtdCwg
dGhpcywgIyNfX1ZBX0FSR1NfXykKIAogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNF
X0xPR19TVEFOREFSRF9URU1QTEFURSAiJXAgLSBbcmVzb3VyY2VMb2FkZXI9JXAsIGZyYW1lTG9h
ZGVyPSVwLCBmcmFtZT0lcCwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2
NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBXZWJMb2FkZXJTdHJhdGVneTo6IgotI2RlZmlu
ZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMs
ICZyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIuZnJhbWVMb2FkZXIoKSwgcmVzb3VyY2VM
b2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFj
a2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVz
b3VyY2VJRAotI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVB
U0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhpcywgbnVsbHB0ciwgJmZyYW1lTG9hZGVyLCAm
ZnJhbWVMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgp
LCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRl
cnMucmVzb3VyY2VJRAorI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFO
REFSRF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIuZnJh
bWVMb2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBh
Z2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0
cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRC50b1VJbnQ2NCgpCisjZGVmaW5lIFdFQkxPQURF
UlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVS
UyB0aGlzLCBudWxscHRyLCAmZnJhbWVMb2FkZXIsICZmcmFtZUxvYWRlci5mcmFtZSgpLCB0cmFj
a2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5mcmFt
ZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5yZXNvdXJjZUlELnRvVUludDY0KCkK
IAogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFT
RV9MT0coTmV0d29yaywgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVN
UExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVU
RVJTLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xP
R19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgV0VCTE9BREVSU1RS
QVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVH
WV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQpAQCAtMTcw
LDcgKzE3MCw3IEBAIHN0YXRpYyBTZWNvbmRzIG1heGltdW1CdWZmZXJpbmdUaW1lKENhY2hlZFJl
c291cmNlKiByZXNvdXJjZSkKIAogdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2Fk
KFJlc291cmNlTG9hZGVyJiByZXNvdXJjZUxvYWRlciwgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNl
LCBib29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3QpCiB7Ci0gICAg
UmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXIuaWRlbnRp
ZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIo
KTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKICAgICBhdXRvJiBmcmFtZUxvYWRlckNsaWVu
dCA9IHJlc291cmNlTG9hZGVyLmZyYW1lTG9hZGVyKCktPmNsaWVudCgpOwpAQCAtMjk1LDcgKzI5
NSw3IEBAIHN0YXRpYyB2b2lkIGFkZFBhcmFtZXRlcnNTaGFyZWQoY29uc3QgRnJhbWUqIGZyYW1l
LCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVyCiAKIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6
OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2VzcyhSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VM
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2ViUmVzb3VyY2VM
b2FkZXI6OlRyYWNraW5nUGFyYW1ldGVycyYgdHJhY2tpbmdQYXJhbWV0ZXJzLCBib29sIHNob3Vs
ZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3QsIFNlY29uZHMgbWF4aW11bUJ1ZmZl
cmluZ1RpbWUpCiB7Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVz
b3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNl
TG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKICAgICBDb250
ZW50U25pZmZpbmdQb2xpY3kgY29udGVudFNuaWZmaW5nUG9saWN5ID0gcmVzb3VyY2VMb2FkZXIu
c2hvdWxkU25pZmZDb250ZW50KCkgPyBDb250ZW50U25pZmZpbmdQb2xpY3k6OlNuaWZmQ29udGVu
dCA6IENvbnRlbnRTbmlmZmluZ1BvbGljeTo6RG9Ob3RTbmlmZkNvbnRlbnQ7CkBAIC00NzMsNyAr
NDczLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cmVtb3ZlKFJlc291cmNlTG9hZGVyKiBy
ZXNvdXJjZUxvYWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAgICAKLSAgICBSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgPSByZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigp
OworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAg
ICAgaWYgKCFpZGVudGlmaWVyKSB7CiAgICAgICAgIExPR19FUlJPUigiV2ViTG9hZGVyU3RyYXRl
Z3kgcmVtb3ZpbmcgYSBSZXNvdXJjZUxvYWRlciB0aGF0IGhhcyBubyBpZGVudGlmaWVyLiIpOwog
ICAgICAgICByZXR1cm47CkBAIC01NjYsNyArNTY2LDcgQEAgV2ViTG9hZGVyU3RyYXRlZ3k6OlN5
bmNMb2FkUmVzdWx0IFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkRGF0YVVSTFN5bmNocm9ub3VzbHko
Y28KICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGQ6Om9wdGlvbmFsPFdlYkxvYWRlclN0cmF0
ZWd5OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6OnRyeUxvYWRpbmdTeW5jaHJv
bm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgUmVz
b3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QpCitzdGQ6Om9wdGlvbmFsPFdlYkxvYWRlclN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdD4g
V2ViTG9hZGVyU3RyYXRlZ3k6OnRyeUxvYWRpbmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVI
YW5kbGVyKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsK
ICAgICBhdXRvKiB3ZWJGcmFtZUxvYWRlckNsaWVudCA9IHRvV2ViRnJhbWVMb2FkZXJDbGllbnQo
ZnJhbWVMb2FkZXIuY2xpZW50KCkpOwogICAgIGF1dG8qIHdlYkZyYW1lID0gd2ViRnJhbWVMb2Fk
ZXJDbGllbnQgPyAmd2ViRnJhbWVMb2FkZXJDbGllbnQtPndlYkZyYW1lKCkgOiBudWxscHRyOwpA
QCAtNTg2LDcgKzU4Niw3IEBAIHN0ZDo6b3B0aW9uYWw8V2ViTG9hZGVyU3RyYXRlZ3k6OlN5bmNM
b2FkUmVzdWx0PiBXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGluZ1N5CiAgICAgcmV0dXJuIHJl
c3VsdDsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25v
dXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50
aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksICBjb25zdCBGZXRjaE9wdGlvbnMmIG9w
dGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291
cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4
X3Q+JiBkYXRhKQordm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25v
dXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgIGNv
bnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1hcCYgb3JpZ2luYWxS
ZXF1ZXN0SGVhZGVycywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAgYXV0byogd2ViRnJhbWVMb2Fk
ZXJDbGllbnQgPSB0b1dlYkZyYW1lTG9hZGVyQ2xpZW50KGZyYW1lTG9hZGVyLmNsaWVudCgpKTsK
ICAgICBhdXRvKiB3ZWJGcmFtZSA9IHdlYkZyYW1lTG9hZGVyQ2xpZW50ID8gJndlYkZyYW1lTG9h
ZGVyQ2xpZW50LT53ZWJGcmFtZSgpIDogbnVsbHB0cjsKQEAgLTY4MywxMiArNjgzLDYgQEAgdm9p
ZCBXZWJMb2FkZXJTdHJhdGVneTo6YnJvd3NpbmdDb250ZXh0UmVtb3ZlZChGcmFtZSYgZnJhbWUp
CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpCcm93c2luZ0NvbnRleHRSZW1vdmVkKHBhZ2Uud2ViUGFnZVByb3h5SWRlbnRpZmll
cigpLCBwYWdlLmlkZW50aWZpZXIoKSwgV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpLT5m
cmFtZUlEKCkpLCAwKTsKIH0KIAotdWludDY0X3QgV2ViTG9hZGVyU3RyYXRlZ3k6OmdlbmVyYXRl
TG9hZElkZW50aWZpZXIoKQotewotICAgIHN0YXRpYyB1aW50NjRfdCBpZGVudGlmaWVyID0gMDsK
LSAgICByZXR1cm4gKytpZGVudGlmaWVyOwotfQotCiBib29sIFdlYkxvYWRlclN0cmF0ZWd5Ojp1
c2VQaW5nTG9hZCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuICFSdW50aW1lRW5hYmxlZEZlYXR1cmVz
OjpzaGFyZWRGZWF0dXJlcygpLmZldGNoQVBJS2VlcEFsaXZlRW5hYmxlZCgpOwpAQCAtNzEyLDcg
KzcwNiw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnN0YXJ0UGluZ0xvYWQoRnJhbWUmIGZy
YW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvCiAgICAgfQogCiAgICAgTmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFtZXRlcnM7Ci0gICAgbG9hZFBhcmFtZXRlcnMu
aWRlbnRpZmllciA9IFdlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7
CisgICAgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJ
RCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICBsb2FkUGFyYW1ldGVy
cy53ZWJQYWdlSUQgPSB3ZWJQYWdlLT5pZGVudGlmaWVyKCk7CiAgICAgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRCA9IHdlYkZyYW1lLT5mcmFtZUlEKCk7CkBAIC03NDksNyArNzQzLDcgQEAgdm9p
ZCBXZWJMb2FkZXJTdHJhdGVneTo6c3RhcnRQaW5nTG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY28KICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkxvYWRQaW5nIHsgbG9hZFBhcmFtZXRlcnMgfSwg
MCk7CiB9CiAKLXZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2
NF90IHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yLCBSZXNvdXJjZVJl
c3BvbnNlJiYgcmVzcG9uc2UpCit2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQaW5n
TG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVy
LCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKIHsK
ICAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFu
ZGxlcnMudGFrZShwaW5nTG9hZElkZW50aWZpZXIpKQogICAgICAgICBjb21wbGV0aW9uSGFuZGxl
cihXVEZNb3ZlKGVycm9yKSwgV1RGTW92ZShyZXNwb25zZSkpOwpAQCAtNzg3LDkgKzc4MSw5IEBA
IHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyhXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0LCBXZWJQYWdlCiAgICAgICAgICAgICByZXF1ZXN0LnNldElzQXBwSW5p
dGlhdGVkKGxvYWRlci0+bGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQoKSk7CiAgICAgfQog
Ci0gICAgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVjdGlvbklkZW50aWZpZXI7Cisg
ICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHByZWNv
bm5lY3Rpb25JZGVudGlmaWVyOwogICAgIGlmIChjb21wbGV0aW9uSGFuZGxlcikgewotICAgICAg
ICBwcmVjb25uZWN0aW9uSWRlbnRpZmllciA9IFdlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxv
YWRJZGVudGlmaWVyKCk7CisgICAgICAgIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyID0gV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgICAgICBhdXRvIGFk
ZFJlc3VsdCA9IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVycy5hZGQoKnByZWNvbm5lY3Rp
b25JZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAgICAgIEFTU0VS
VF9VTlVTRUQoYWRkUmVzdWx0LCBhZGRSZXN1bHQuaXNOZXdFbnRyeSk7CiAgICAgfQpAQCAtODE5
LDEwICs4MTMsMTIgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJlY29ubmVjdFRvKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UKICAgICBwYXJhbWV0ZXJzLmlz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSB3ZWJGcmFtZS5pc1RvcEZyYW1lTmF2aWdhdGlu
Z1RvQXBwQm91bmREb21haW4oKTsKICNlbmRpZgogCisgICAgLy8gRklYTUU6IFVzZSBzZW5kV2l0
aEFzeW5jUmVwbHkgaW5zdGVhZCBvZiBwcmVjb25uZWN0aW9uSWRlbnRpZmllcgorICAgIC8vIEZJ
WE1FOiBkb24ndCB1c2UgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGZvciBhIHBy
ZWNvbm5lY3Rpb24gaWRlbnRpZmllciwgdG9vLiBJdCBzaG91bGQgaGF2ZSBpdHMgb3duIHR5cGUu
CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpQcmVjb25uZWN0VG8ocHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1vdmUocGFy
YW1ldGVycykpLCAwKTsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6ZGlkRmluaXNoUHJl
Y29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgUmVzb3VyY2VFcnJv
ciYmIGVycm9yKQordm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6ZGlkRmluaXNoUHJlY29ubmVjdGlv
bihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZp
ZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvcikKIHsKICAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFu
ZGxlciA9IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVycy50YWtlKHByZWNvbm5lY3Rpb25J
ZGVudGlmaWVyKSkKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShlcnJvcikpOwpA
QCAtODYzLDIxICs4NTksMjEgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c2V0Q2FwdHVyZUV4
dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sIGVuYWJsZWQpCiAgICAgV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlv
bigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpTZXRDYXB0
dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKGVuYWJsZWQpLCAwKTsKIH0KIAotUmVz
b3VyY2VSZXNwb25zZSBXZWJMb2FkZXJTdHJhdGVneTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2Fk
SWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorUmVzb3VyY2VSZXNw
b25zZSBXZWJMb2FkZXJTdHJhdGVneTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKIHsKICAg
ICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlOwogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhN
ZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5ldHdvcmtMb2FkSW5m
b3JtYXRpb25SZXNwb25zZSB7IHJlc291cmNlTG9hZElkZW50aWZpZXIgfSwgTWVzc2FnZXM6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpHZXROZXR3b3JrTG9hZEluZm9ybWF0aW9uUmVz
cG9uc2U6OlJlcGx5IHsgcmVzcG9uc2UgfSwgMCk7CiAgICAgcmV0dXJuIHJlc3BvbnNlOwogfQog
Ci1WZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IFdlYkxvYWRlclN0cmF0ZWd5
OjppbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1
aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlv
bkluZm9ybWF0aW9uPiBXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0
aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIpCiB7CiAgICAgVmVjdG9yPE5ldHdvcmtUcmFu
c2FjdGlvbkluZm9ybWF0aW9uPiBpbmZvcm1hdGlvbjsKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0
b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZFN5
bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpHZXROZXR3b3JrTG9h
ZEludGVybWVkaWF0ZUluZm9ybWF0aW9uIHsgcmVzb3VyY2VMb2FkSWRlbnRpZmllciB9LCBNZXNz
YWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5ldHdvcmtMb2FkSW50ZXJt
ZWRpYXRlSW5mb3JtYXRpb246OlJlcGx5IHsgaW5mb3JtYXRpb24gfSwgMCk7CiAgICAgcmV0dXJu
IGluZm9ybWF0aW9uOwogfQogCi1OZXR3b3JrTG9hZE1ldHJpY3MgV2ViTG9hZGVyU3RyYXRlZ3k6
Om5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcikKK05ldHdvcmtMb2FkTWV0cmljcyBXZWJMb2FkZXJTdHJhdGVneTo6
bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKIHsKICAgICBOZXR3b3Jr
TG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3M7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
ZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1l
c3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6VGFrZU5ldHdvcmtMb2FkSW5m
b3JtYXRpb25NZXRyaWNzIHsgcmVzb3VyY2VMb2FkSWRlbnRpZmllciB9LCBNZXNzYWdlczo6TmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0
cmljczo6UmVwbHkgeyBuZXR3b3JrTWV0cmljcyB9LCAwKTsKQEAgLTkxOSw3ICs5MTUsNyBAQCB2
b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJD
b3JlOjpQYWdlJiBwYWdlLCBXZWJDbwogCiB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpwcmlvcml0
aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXIq
PiYgcmVzb3VyY2VzKQogewotICAgIGF1dG8gaWRlbnRpZmllcnMgPSByZXNvdXJjZXMubWFwKFtd
KGF1dG8qIGxvYWRlcikgLT4gUmVzb3VyY2VMb2FkSWRlbnRpZmllciB7CisgICAgYXV0byBpZGVu
dGlmaWVycyA9IHJlc291cmNlcy5tYXAoW10oYXV0byogbG9hZGVyKSAtPiBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgewogICAgICAgICByZXR1cm4gbG9hZGVyLT5pZGVudGlmaWVy
KCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29y
ay9XZWJMb2FkZXJTdHJhdGVneS5oCmluZGV4IGM3OTZhZTUwZjE0YzE2ZWMyNWU2ZTAxNDlkNzY2
YmY3ZDExZTE4N2IuLjQwNWM3MzQzMGUyMTAxMmIxZTFhYzc4ODk2NWNiYzk3Njc3NjIzNjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0
ZWd5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3Ry
YXRlZ3kuaApAQCAtNDQsNyArNDQsNiBAQCBjbGFzcyBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb247
CiBjbGFzcyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiBjbGFzcyBXZWJVUkxTY2hlbWVUYXNr
UHJveHk7Ci10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7CiAKIGNsYXNz
IFdlYkxvYWRlclN0cmF0ZWd5IGZpbmFsIDogcHVibGljIFdlYkNvcmU6OkxvYWRlclN0cmF0ZWd5
IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXZWJMb2FkZXJTdHJhdGVneSk7IFdURl9NQUtF
X0ZBU1RfQUxMT0NBVEVEOwpAQCAtNTMsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAgfldlYkxvYWRl
clN0cmF0ZWd5KCkgZmluYWw7CiAgICAgCiAgICAgdm9pZCBsb2FkUmVzb3VyY2UoV2ViQ29yZTo6
RnJhbWUmLCBXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZSYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlck9wdGlvbnMmLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcj4mJik+JiYpIGZpbmFs
OwotICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxvYWRl
ciYsIHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3Qg
V2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9y
PHVpbnQ4X3Q+JiBkYXRhKSBmaW5hbDsKKyAgICB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkNsaWVudENyZWRl
bnRpYWxQb2xpY3ksIGNvbnN0IFdlYkNvcmU6OkZldGNoT3B0aW9ucyYsIGNvbnN0IFdlYkNvcmU6
OkhUVFBIZWFkZXJNYXAmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgZmluYWw7CiAgICAgdm9pZCBwYWdl
TG9hZENvbXBsZXRlZChXZWJDb3JlOjpQYWdlJikgZmluYWw7CiAgICAgdm9pZCBicm93c2luZ0Nv
bnRleHRSZW1vdmVkKFdlYkNvcmU6OkZyYW1lJikgZmluYWw7CiAKQEAgLTY4LDE1ICs2NywxNSBA
QCBwdWJsaWM6CiAKICAgICBib29sIHVzZVBpbmdMb2FkKCkgY29uc3QgZmluYWw7CiAgICAgdm9p
ZCBzdGFydFBpbmdMb2FkKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVycywg
Y29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgV2ViQ29yZTo6Q29udGVudFNlY3VyaXR5UG9s
aWN5SW1wb3NpdGlvbiwgUGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlciYmKSBmaW5hbDsKLSAgICB2
b2lkIGRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYpOworICAgIHZv
aWQgZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHBp
bmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJiYpOwogCiAgICAgdm9pZCBwcmVjb25uZWN0VG8oV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYsIFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRp
YWxzUG9saWN5LCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXImJiA9IG51bGxwdHIpOwogICAg
IHZvaWQgcHJlY29ubmVjdFRvKFdlYkNvcmU6OkZyYW1lTG9hZGVyJiwgY29uc3QgVVJMJiwgV2Vi
Q29yZTo6U3RvcmVkQ3JlZGVudGlhbHNQb2xpY3ksIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxl
ciYmKSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24odWludDY0X3QgcHJl
Y29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJik7CisgICAgdm9p
ZCBkaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsKIAog
ICAgIHZvaWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sKSBm
aW5hbDsKIAotICAgIFdlYlJlc291cmNlTG9hZGVyKiB3ZWJSZXNvdXJjZUxvYWRlckZvcklkZW50
aWZpZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdCB7IHJldHVybiBt
X3dlYlJlc291cmNlTG9hZGVycy5nZXQoaWRlbnRpZmllcik7IH0KKyAgICBXZWJSZXNvdXJjZUxv
YWRlciogd2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdCB7IHJldHVybiBtX3dlYlJlc291cmNlTG9h
ZGVycy5nZXQoaWRlbnRpZmllcik7IH0KICAgICB2b2lkIHNjaGVkdWxlUGx1Z2luU3RyZWFtTG9h
ZChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6Ok5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyQ2xp
ZW50JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
UmVmUHRyPFdlYkNvcmU6Ok5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyPiYmKT4mJik7CiAKICAg
ICB2b2lkIG5ldHdvcmtQcm9jZXNzQ3Jhc2hlZCgpOwpAQCAtOTAsOCArODksNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCBhZGRPbmxpbmVTdGF0ZUNoYW5nZUxpc3RlbmVyKEZ1bmN0aW9uPHZvaWQoYm9v
bCk+JiYpIGZpbmFsOwogICAgIHZvaWQgc2V0T25MaW5lU3RhdGUoYm9vbCk7CiAKLSAgICBzdGF0
aWMgdWludDY0X3QgZ2VuZXJhdGVMb2FkSWRlbnRpZmllcigpOwotCiAgICAgdm9pZCBzZXRFeGlz
dGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUoc3RkOjpvcHRpb25hbDxO
ZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2Fk
SWRlbnRpZmllclRvUmVzdW1lKSB7IG1fZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRp
ZmllclRvUmVzdW1lID0gZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVz
dW1lOyB9CiAKICAgICBzdGF0aWMgY29uc3RleHByIFNlY29uZHMgbWVkaWFNYXhpbXVtQnVmZmVy
aW5nVGltZSB7IDUwX21zIH07CkBAIC0xMDgsMTIgKzEwNSwxMiBAQCBwcml2YXRlOgogICAgICAg
ICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yOwogICAgICAgICBWZWN0b3I8dWludDhfdD4g
ZGF0YTsKICAgICB9OwotICAgIHN0ZDo6b3B0aW9uYWw8U3luY0xvYWRSZXN1bHQ+IHRyeUxvYWRp
bmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKFdlYkNvcmU6OkZyYW1lTG9hZGVy
JiwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jik7CisgICAgc3RkOjpvcHRpb25hbDxTeW5jTG9hZFJlc3VsdD4gdHJ5TG9hZGluZ1N5bmNocm9u
b3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpOwogICAgIFN5bmNMb2FkUmVzdWx0IGxvYWREYXRhVVJMU3luY2hyb25vdXNseShjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKIAotICAgIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UgcmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyKSBmaW5hbDsKLSAgICBWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0
aW9uSW5mb3JtYXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxv
YWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIGZpbmFsOwotICAg
IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxv
YWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIGZpbmFsOworICAg
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRp
ZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIFZlY3Rv
cjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9h
ZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3Mg
bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOwogCiAgICAgYm9vbCBzaG91bGRQZXJmb3JtU2VjdXJp
dHlDaGVja3MoKSBjb25zdCBmaW5hbDsKICAgICBib29sIGhhdmVQZXJmb3JtZWRTZWN1cml0eUNo
ZWNrcyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgY29uc3QgZmluYWw7CkBAIC0x
MjMsOSArMTIwLDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNldFJlc291cmNlTG9hZFNjaGVkdWxp
bmdNb2RlKFdlYkNvcmU6OlBhZ2UmLCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUpIGZpbmFs
OwogICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6
OlN1YnJlc291cmNlTG9hZGVyKj4mKSBmaW5hbDsKIAotICAgIFZlY3Rvcjx1aW50NjRfdD4gb25n
b2luZ0xvYWRzKCkgY29uc3QgZmluYWwKKyAgICBWZWN0b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25zdCBmaW5hbAogICAgIHsKLSAgICAgICAg
cmV0dXJuIFdURjo6bWFwKG1fd2ViUmVzb3VyY2VMb2FkZXJzLCBbXShhdXRvJiYga2V5VmFsdWUp
IC0+IHVpbnQ2NF90IHsKKyAgICAgICAgcmV0dXJuIFdURjo6bWFwKG1fd2ViUmVzb3VyY2VMb2Fk
ZXJzLCBbXShhdXRvJiYga2V5VmFsdWUpIC0+IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciB7CiAgICAgICAgICAgICByZXR1cm4ga2V5VmFsdWUua2V5OwogICAgICAgICB9KTsKICAg
ICB9CkBAIC0xMzMsMTAgKzEzMCwxMCBAQCBwcml2YXRlOgogICAgIEhhc2hTZXQ8UmVmUHRyPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVyPj4gbV9pbnRlcm5hbGx5RmFpbGVkUmVzb3VyY2VMb2FkZXJz
OwogICAgIFJ1bkxvb3A6OlRpbWVyPFdlYkxvYWRlclN0cmF0ZWd5PiBtX2ludGVybmFsbHlGYWls
ZWRMb2FkVGltZXI7CiAgICAgCi0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBSZWZQdHI8V2Vi
UmVzb3VyY2VMb2FkZXI+PiBtX3dlYlJlc291cmNlTG9hZGVyczsKLSAgICBIYXNoTWFwPHVuc2ln
bmVkIGxvbmcsIFdlYlVSTFNjaGVtZVRhc2tQcm94eSo+IG1fdXJsU2NoZW1lVGFza3M7Ci0gICAg
SGFzaE1hcDx1bnNpZ25lZCBsb25nLCBQaW5nTG9hZENvbXBsZXRpb25IYW5kbGVyPiBtX3BpbmdM
b2FkQ29tcGxldGlvbkhhbmRsZXJzOwotICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUHJlY29u
bmVjdENvbXBsZXRpb25IYW5kbGVyPiBtX3ByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcnM7Cisg
ICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZlB0cjxXZWJS
ZXNvdXJjZUxvYWRlcj4+IG1fd2ViUmVzb3VyY2VMb2FkZXJzOworICAgIEhhc2hNYXA8V2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hlbWVUYXNrUHJveHkqPiBtX3Vy
bFNjaGVtZVRhc2tzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBQaW5nTG9hZENvbXBsZXRpb25IYW5kbGVyPiBtX3BpbmdMb2FkQ29tcGxldGlvbkhhbmRs
ZXJzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBQcmVj
b25uZWN0Q29tcGxldGlvbkhhbmRsZXI+IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyczsK
ICAgICBWZWN0b3I8RnVuY3Rpb248dm9pZChib29sKT4+IG1fb25saW5lU3RhdGVDaGFuZ2VMaXN0
ZW5lcnM7CiAgICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4g
bV9leGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWU7CiAgICAgYm9v
bCBtX2lzT25MaW5lIHsgdHJ1ZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5j
cHAKaW5kZXggZDM2NGU3MDEyZDgzYmZhMjk1MzhlNGJiNzA5YzdhNTdhMWJmZDQ4YS4uNTZjN2Jj
ZGMwODI0Zjk4MmUwOWU1ZWRkMGZjYzMyNTY4NThlNGFlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVy
Y2VwdENvbnRyb2xsZXIuY3BwCkBAIC0yOCwyOSArMjgsMjkgQEAKIAogbmFtZXNwYWNlIFdlYktp
dCB7CiAKLWJvb2wgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGlu
Zyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGNvbnN0Citib29sIFdlYlJlc291cmNlSW50ZXJj
ZXB0Q29udHJvbGxlcjo6aXNJbnRlcmNlcHRpbmcoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1faW50ZXJjZXB0ZWRSZXNw
b25zZVF1ZXVlLmNvbnRhaW5zKGlkZW50aWZpZXIpOwogfQogCi12b2lkIFdlYlJlc291cmNlSW50
ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZSh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIpCit2b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5J
bnRlcmNlcHRpbmdSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllcikKIHsKICAgICBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZS5zZXQoaWRlbnRpZmll
ciwgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4oKSk7CiB9CiAKLXZvaWQgV2ViUmVzb3VyY2VJbnRl
cmNlcHRDb250cm9sbGVyOjpjb250aW51ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpjb250aW51ZVJlc3BvbnNl
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGF1
dG8gcXVldWUgPSBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZS50YWtlKGlkZW50aWZpZXIpOwog
ICAgIGZvciAoYXV0byYgY2FsbGJhY2sgOiBxdWV1ZSkKICAgICAgICAgY2FsbGJhY2soKTsKIH0K
IAotdm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmludGVyY2VwdGVkUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENv
bnRyb2xsZXI6OmludGVyY2VwdGVkUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWUucmVt
b3ZlKGlkZW50aWZpZXIpOwogfQogCi12b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxl
cjo6ZGVmZXIodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBGdW5jdGlvbjx2b2lkKCk+JiYgZnVu
Y3Rpb24pCit2b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQoKT4m
JiBmdW5jdGlvbikKIHsKICAgICBBU1NFUlQoaXNJbnRlcmNlcHRpbmcoaWRlbnRpZmllcikpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJj
ZUludGVyY2VwdENvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oCmluZGV4IGQ3MWI5MDczZWE0NWM4NjEw
MmViNDg3NWQ5ZjkxYzAwMWM4OWU4ZjYuLjg4Mzc4MjcwMGJhOWM3MWZiMjY3NmFmN2Y2M2E2ZTBj
M2ZlZmNiNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dl
YlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oCkBAIC0yNSw2ICsy
NSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvRnVu
Y3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtMzMsMjEgKzM0LDIxIEBAIG5h
bWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIg
ewogcHVibGljOgotICAgIGJvb2wgaXNJbnRlcmNlcHRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyKSBjb25zdDsKKyAgICBib29sIGlzSW50ZXJjZXB0aW5nKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikgY29uc3Q7CiAKICAgICAvLyBTdGFydCBpbnRlcmNlcHRpbmcgYSByZXNw
b25zZS4KLSAgICB2b2lkIGJlZ2luSW50ZXJjZXB0aW5nUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKTsKKyAgICB2b2lkIGJlZ2luSW50ZXJjZXB0aW5nUmVzcG9uc2UoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIC8vIFN0b3AgaW50ZXJjZXB0aW5nIGEg
cmVzcG9uc2UuIEFuIGludGVyY2VwdCByZXNwb25zZSB3YXMgbm90IHN1cHBsaWVkLiBTZW5kIGRl
ZmVycmVkIG5ldHdvcmtpbmcgY2FsbGJhY2tzLgotICAgIHZvaWQgY29udGludWVSZXNwb25zZSh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgY29udGludWVSZXNwb25zZShXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgLy8gU3RvcCBpbnRlcmNlcHRp
bmcgYSByZXNwb25zZS4gQW4gaW50ZXJjZXB0IHJlc3BvbnNlIHdhcyBzdXBwbGllZC4gU2VuZCBu
byBkZWZlcnJlZCBuZXR3b3JraW5nIGNhbGxiYWNrcy4KLSAgICB2b2lkIGludGVyY2VwdGVkUmVz
cG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGludGVyY2VwdGVkUmVz
cG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAotICAgIHZvaWQgZGVm
ZXIodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBGdW5jdGlvbjx2b2lkKCk+JiYpOworICAgIHZv
aWQgZGVmZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBGdW5jdGlvbjx2b2lk
KCk+JiYpOwogCiBwcml2YXRlOgotICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgRGVxdWU8RnVu
Y3Rpb248dm9pZCgpPj4+IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlOworICAgIEhhc2hNYXA8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+
Pj4gbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291
cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291
cmNlTG9hZGVyLmNwcAppbmRleCBlY2Q0MDUyZWFjMDM4MDI4MjU1YTc4NjIzNmUxOTY5ODUzYWZh
MWQ4Li5jOWZjYjBkNzhmOTNmYzVmMGY4MTM2NmMwYjEzMDk4YzNmM2UwNmMwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIu
Y3BwCkBAIC01NCw3ICs1NCw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9TdWJyZXNvdXJjZUxvYWRl
ci5oPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogCi0jZGVmaW5lIFdFQlJF
U09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAi
JXAgLSBbd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiXSBXZWJSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fdHJhY2tp
bmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCBtX3RyYWNraW5nUGFyYW1ldGVycy5mcmFt
ZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQsICMjX19WQV9B
UkdTX18pCisjZGVmaW5lIFdFQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBS
RUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlE
PSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBXZWJSZXNvdXJjZUxvYWRlcjo6
IiBmbXQsIHRoaXMsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCBtX3Ry
YWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJz
LnJlc291cmNlSUQudG9VSW50NjQoKSwgIyNfX1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktp
dCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTgzLDcgKzgzLDcgQEAgdWludDY0X3Qg
V2ViUmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCkgY29uc3QKIHsK
ICAgICBSRUxFQVNFX0FTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAgICAgUkVMRUFTRV9BU1NF
UlQobV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCkpOwotICAgIHJldHVybiBtX2NvcmVMb2FkZXIt
PmlkZW50aWZpZXIoKTsKKyAgICByZXR1cm4gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCkudG9V
SW50NjQoKTsKIH0KIAogdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6ZGV0YWNoRnJvbUNvcmVMb2Fk
ZXIoKQpAQCAtMTUzLDcgKzE1Myw3IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2Vp
dmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgYm9vCiAgICAgfQog
CiAgICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6c2hvdWxkSW50ZXJjZXB0
UmVzcG9uc2UobV9jb3JlTG9hZGVyLT5mcmFtZSgpLCByZXNwb25zZSkpIHsKLSAgICAgICAgdW5z
aWduZWQgbG9uZyBpbnRlcmNlcHRlZFJlcXVlc3RJZGVudGlmaWVyID0gbV9jb3JlTG9hZGVyLT5p
ZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8gaW50ZXJjZXB0ZWRSZXF1ZXN0SWRlbnRpZmllciA9
IG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpOwogICAgICAgICBtX2ludGVyY2VwdENvbnRyb2xs
ZXIuYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZShpbnRlcmNlcHRlZFJlcXVlc3RJZGVudGlmaWVy
KTsKICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNw
b25zZShtX2NvcmVMb2FkZXItPmZyYW1lKCksIHJlc3BvbnNlLCBpbnRlcmNlcHRlZFJlcXVlc3RJ
ZGVudGlmaWVyLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBpbnRlcmNl
cHRlZFJlcXVlc3RJZGVudGlmaWVyLCBwb2xpY3lEZWNpc2lvbkNvbXBsZXRpb25IYW5kbGVyID0g
V1RGTW92ZShwb2xpY3lEZWNpc2lvbkNvbXBsZXRpb25IYW5kbGVyKV0oY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgaW5zcGVjdG9yUmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRCdWZmZXI+IG92ZXJyaWRl
RGF0YSkgbXV0YWJsZSB7CiAgICAgICAgICAgICBpZiAoIW1fY29yZUxvYWRlciB8fCAhbV9jb3Jl
TG9hZGVyLT5pZGVudGlmaWVyKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCmluZGV4IDM1NTIwMWI5NzA0MzVjNTRkNTRi
M2ZiZjllNDQyYWNkMmJjYjJiMTIuLmEyMmU2MmYyOGI1ZmE0Y2ZjOTFhYTVlNWNlODJjYTI3YWUy
NmFkNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJl
c291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2Vi
UmVzb3VyY2VMb2FkZXIuaApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIldlYlJlc291cmNl
SW50ZXJjZXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVJZGVudGlmaWVy
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QYWdlSWRlbnRpZmllci5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQu
aD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTUwLDE1ICs1MSwxMyBAQCBjbGFzcyBS
ZXNvdXJjZVJlc3BvbnNlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotdHlwZWRlZiB1aW50NjRf
dCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwotCiBjbGFzcyBXZWJSZXNvdXJjZUxvYWRlciA6IHB1
YmxpYyBSZWZDb3VudGVkPFdlYlJlc291cmNlTG9hZGVyPiwgcHVibGljIElQQzo6TWVzc2FnZVNl
bmRlciB7CiBwdWJsaWM6CiAgICAgc3RydWN0IFRyYWNraW5nUGFyYW1ldGVycyB7CiAgICAgICAg
IFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFnZVByb3h5SUQ7CiAgICAgICAgIFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRDsKICAgICAgICAgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
IGZyYW1lSUQ7Ci0gICAgICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCB7IDAg
fTsKKyAgICAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQ7
CiAgICAgfTsKIAogICAgIHN0YXRpYyBSZWY8V2ViUmVzb3VyY2VMb2FkZXI+IGNyZWF0ZShSZWY8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+JiYsIGNvbnN0IFRyYWNraW5nUGFyYW1ldGVycyYpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKaW5kZXggMDZiMzI1YzUwZTc0NDI0MWQ0Nzg1
MWYxMDc5NWQwYjZlZDA0ZTM3MC4uNTk5NmU2Y2NhZWQ4YWU3NmI0ZGJiMDg0OTE5YjhiNGJmMDAx
M2NhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dD
b250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCkBAIC0xMzUsNyArMTM1LDcg
QEAgcHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyPiBw
YWdlSUQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3BhZ2VJRDsgfQogICAgIHN0ZDo6b3B0aW9u
YWw8V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlEKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gbV9mcmFtZUlEOyB9CiAKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykgZmluYWwgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsIHsgcmV0
dXJuIHRydWU7IH0KICAgICBib29sIGlzU2VydmljZVdvcmtlckZyYW1lTG9hZGVyQ2xpZW50KCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgU3RyaW5nIHVzZXJBZ2VudChjb25z
dCBVUkwmKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3VzZXJBZ2VudDsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5jcHAKaW5kZXggMDA4ODliMDBjODU3OTM1OThiN2ZlMTMzMGVmMjlkODZh
NzdlZTQ4Zi4uMGU4Yjk3YTY3ZTU3ODhjZjUwZWRiZjA1NTI4NDg5MWE0ZTU4ZWFjYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC0yMjEsNyArMjIxLDcgQEAgdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGV0YWNoZWRGcm9tUGFyZW50MygpCiAgICAgbm90SW1wbGVtZW50
ZWQoKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRv
SW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1l
LT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjM1LDcgKzIzNSw3IEBAIHZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2ln
bmVkIGxvbmcgaWRlbnRpCiAgICAgd2ViUGFnZS0+YWRkUmVzb3VyY2VSZXF1ZXN0KGlkZW50aWZp
ZXIsIHJlcXVlc3QpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVj
dFJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJl
cXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7
CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjUyLDcgKzI1Miw3IEBAIHZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uCiAgICAgfQogfQogCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBh
Z2UpCkBAIC0yNjEsMTMgKzI2MSwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkCiAgICAgcmV0
dXJuIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlUmVzb3VyY2VMb2FkQ2xpZW50KCkuc2hvdWxkVXNl
Q3JlZGVudGlhbFN0b3JhZ2UoKndlYlBhZ2UsIG1fZnJhbWUsIGlkZW50aWZpZXIpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IEF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlJikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
UmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
CiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKICNpZiBVU0UoUFJPVEVDVElPTl9T
UEFDRV9BVVRIX0NBTExCQUNLKQotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVu
dGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlKQorYm9vbCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUHJv
dGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCiB7CiAgICAgLy8gVGhlIFdlYktpdCAyIE5l
dHdvcmtpbmcgcHJvY2VzcyBhc2tzIHRoZSBVSVByb2Nlc3MgZGlyZWN0bHksIHNvIHRoZSBXZWJD
b250ZW50IHByb2Nlc3Mgc2hvdWxkIG5ldmVyIHJlY2VpdmUgdGhpcyBjYWxsYmFjay4KICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTI3NSw3ICsyNzUsNyBAQCBib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50
TG9hZGVyKgogfQogI2VuZGlmCiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAg
ICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjg0LDcgKzI4NCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQKICAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZVJlc291cmNlTG9hZENsaWVudCgpLmRpZFJl
Y2VpdmVSZXNwb25zZUZvclJlc291cmNlKCp3ZWJQYWdlLCBtX2ZyYW1lLCBpZGVudGlmaWVyLCBy
ZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGludCBkYXRhTGVuZ3RoKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKIHsKICAgICBXZWJQYWdlKiB3ZWJQ
YWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTMwMyw3ICszMDMs
NyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRl
Y3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdQogfQogI2VuZGlmCiAKLXZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdl
KCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMzEzLDcgKzMxMyw3IEBAIHZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvCiAgICAgd2ViUGFnZS0+cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KGlkZW50aWZpZXIp
OwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC04NDksOCArODQ5LDkg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JSZXNw
b25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMKICAgICBhdXRvKiBjb3JlRnJhbWUgPSBtX2ZyYW1l
LT5jb3JlRnJhbWUoKTsKICAgICBhdXRvKiBwb2xpY3lEb2N1bWVudExvYWRlciA9IGNvcmVGcmFt
ZSA/IGNvcmVGcmFtZS0+bG9hZGVyKCkucHJvdmlzaW9uYWxEb2N1bWVudExvYWRlcigpIDogbnVs
bHB0cjsKICAgICBhdXRvIG5hdmlnYXRpb25JRCA9IHBvbGljeURvY3VtZW50TG9hZGVyID8gc3Rh
dGljX2Nhc3Q8V2ViRG9jdW1lbnRMb2FkZXImPigqcG9saWN5RG9jdW1lbnRMb2FkZXIpLm5hdmln
YXRpb25JRCgpIDogMDsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGJlIHVzaW5nIGEgc3Ryb25n
bHktdHlwZWQgaWRlbnRpZmllciBmb3IgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIuCi0gICAg
YXV0byBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciA9IHBvbGljeURvY3VtZW50TG9hZGVyICYm
IHBvbGljeURvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2FkZXIoKSA/IHBvbGljeURvY3Vt
ZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2FkZXIoKS0+aWRlbnRpZmllcigpIDogMDsKKyAgICBz
dGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXI7CisgICAgaWYgKGF1dG8gbWFpblJlc291cmNlTG9hZGVyID0gcG9s
aWN5RG9jdW1lbnRMb2FkZXIgPyBwb2xpY3lEb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlTG9h
ZGVyKCkgOiBudWxscHRyKQorICAgICAgICBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciA9IG1h
aW5SZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigpOwogCiAgICAgYm9vbCB3YXNBbGxvd2VkQnlJ
bmplY3RlZEJ1bmRsZSA9IHBvbGljeSA9PSBXS0J1bmRsZVBhZ2VQb2xpY3lBY3Rpb25Vc2U7CiAg
ICAgYXV0byBwcm90ZWN0b3IgPSBtX2ZyYW1lLmNvcHlSZWYoKTsKQEAgLTE4MDgsNyArMTgwOSw3
IEBAIFJlbW90ZUFYT2JqZWN0UmVmIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjphY2Nlc3NpYmlsaXR5
UmVtb3RlT2JqZWN0KCkKICAgICByZXR1cm4gd2ViUGFnZS0+YWNjZXNzaWJpbGl0eVJlbW90ZU9i
amVjdCgpOwogfQogICAgIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVk
VVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJM
UmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0Cit2b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25zZSwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRp
b25IYW5kbGVyKSBjb25zdAogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdl
KCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMTg4OSw3ICsxODkwLDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6c2VuZEgyUGluZyhjb25zdCBVUkwmIHVybCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChFeHAKIAogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIHBhcmFtZXRl
cnM7CiAgICAgcGFyYW1ldGVycy5yZXF1ZXN0ID0gUmVzb3VyY2VSZXF1ZXN0KHVybCk7Ci0gICAg
cGFyYW1ldGVycy5pZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRlZ3k6OmdlbmVyYXRlTG9hZElk
ZW50aWZpZXIoKTsKKyAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgcGFyYW1ldGVycy53ZWJQYWdlUHJv
eHlJRCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICBwYXJhbWV0ZXJz
LndlYlBhZ2VJRCA9IHdlYlBhZ2UtPmlkZW50aWZpZXIoKTsKICAgICBwYXJhbWV0ZXJzLndlYkZy
YW1lSUQgPSBtX2ZyYW1lLT5mcmFtZUlEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmlu
ZGV4IDc3ZGE0MTE4ODIyNDhlMmMwZWJlZGMxN2Y3OGI0M2NiODkwZDVhODAuLmE2OTg1YTc4MDQ0
YWIyYTc2M2U0OTRjNjg1Nzk4MzMxNzZhYTc3YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5oCkBAIC04MSwyMSArODEsMjEgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRldGFjaGVkRnJvbVBh
cmVudDIoKSBmaW5hbDsKICAgICB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRp
YWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKICAg
ICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5h
bDsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAg
ICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlBy
b3RlY3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFBy
b3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7
CiAjZW5kaWYKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
ZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0
aCkgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwotICAgIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRl
bnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlk
RmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAgICAgYm9vbCBkaXNw
YXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJ
T04pCiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0
ZWN0aW9uUmVzdWx0cykgZmluYWw7CkBAIC0yMzgsNyArMjM4LDcgQEAgcHJpdmF0ZToKICNpZiBQ
TEFURk9STShDT0NPQSkKICAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3Rl
T2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxS
ZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4m
JikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRV
UkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJikgY29uc3QgZmluYWw7CiAKICAgICBOU0RpY3Rpb25hcnkgKmRhdGFEZXRlY3Rpb25Db250
ZXh0KCkgZmluYWw7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRnJhbWVMb2FkZXJDbGllbnRJT1MubW0gYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkZyYW1lTG9hZGVyQ2xpZW50
SU9TLm1tCmluZGV4IGVhZDQzOTJhNTQ4OTgwNjZjMDFmNWNjMDI4ODQyNmNmNGQzMDRjMDIuLjYx
N2U4ZmJmODI4NDc2ODBjZTI4ZGY1OGFkM2E5MDVjZjJmMTcyZWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRnJhbWVMb2FkZXJDbGll
bnRJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lv
cy9XZWJGcmFtZUxvYWRlckNsaWVudElPUy5tbQpAQCAtNTgsNyArNTgsNyBAQCBib29sIFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojpmb3JjZUxheW91dE9uUmVzdG9yZUZyb21CYWNrRm9yd2FyZENhY2hl
KCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLVJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlcios
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBub3RJbXBsZW1lbnRl
ZCgpOwogICAgIHJldHVybiBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViRnJhbWUuY3BwCmluZGV4IDM2MjA4YjAzZjhjYzYzNjc4NjcxZGRiZGI0Y2EyN2Zi
OWJiMTVkYzMuLjM3YjI4ZTNlOWYyNTQyZWQ1ZjczYjUyYjllMDliMDViNjNiNDhhNjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKQEAgLTMwNCwx
NCArMzA0LDEyIEBAIHZvaWQgV2ViRnJhbWU6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZChEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIsCiAgICAgU3VicmVzb3VyY2VMb2Fk
ZXIqIG1haW5SZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2Fk
ZXIoKTsKIAogICAgIGF1dG8mIHdlYlByb2Nlc3MgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKTsK
LSAgICAvLyBVc2UgMCB0byBpbmRpY2F0ZSB0aGF0IHRoZSByZXNvdXJjZSBsb2FkIGNhbid0IGJl
IGNvbnZlcnRlZCBhbmQgYSBuZXcgZG93bmxvYWQgbXVzdCBiZSBzdGFydGVkLgorICAgIC8vIFVz
ZSBzdGQ6Om51bGxvcHQgdG8gaW5kaWNhdGUgdGhhdCB0aGUgcmVzb3VyY2UgbG9hZCBjYW4ndCBi
ZSBjb252ZXJ0ZWQgYW5kIGEgbmV3IGRvd25sb2FkIG11c3QgYmUgc3RhcnRlZC4KICAgICAvLyBU
aGlzIGNhbiBoYXBwZW4gaWYgdGhlcmUgaXMgbm8gbG9hZGVyIGJlY2F1c2UgdGhlIG1haW4gcmVz
b3VyY2UgaXMgaW4gdGhlIFdlYkNvcmUgbWVtb3J5IGNhY2hlLAogICAgIC8vIG9yIGJlY2F1c2Ug
dGhlIGNvbnZlcnNpb24gd2FzIGF0dGVtcHRlZCB3aGVuIG5vdCBjYWxsaW5nIFN1YnJlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoKS4KLSAgICB1aW50NjRfdCBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXI7CiAgICAgaWYgKG1haW5SZXNv
dXJjZUxvYWRlcikKICAgICAgICAgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIgPSBtYWluUmVz
b3VyY2VMb2FkZXItPmlkZW50aWZpZXIoKTsKLSAgICBlbHNlCi0gICAgICAgIG1haW5SZXNvdXJj
ZUxvYWRJZGVudGlmaWVyID0gMDsKIAogICAgIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4+IGlzQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjo6Tm87
CiAgICAgaXNBcHBCb3VuZCA9IG1faXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggMzhiOGNkMDky
ZmE5YzYwMmJhNjJkOWQ3MmM5OTRhYTg3YTM3YjE2MC4uZjE3NWQwOWE5MGQ1MmQ2MmY3MDExZDZk
NTM1YzBhMTZiNzRlOWMyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAKQEAgLTQzMjEsMTAgKzQzMjEsMTAgQEAgV2ViRnVsbFNjcmVlbk1hbmFnZXIq
IFdlYlBhZ2U6OmZ1bGxTY3JlZW5NYW5hZ2VyKCkKIH0KICNlbmRpZgogCi12b2lkIFdlYlBhZ2U6
OmFkZENvbnNvbGVNZXNzYWdlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBNZXNzYWdlU291cmNl
IG1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCBtZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgdWludDY0X3QgcmVxdWVzdElEKQordm9pZCBXZWJQYWdlOjphZGRDb25zb2xlTWVz
c2FnZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVzc2FnZVNvdXJjZSBtZXNzYWdlU291cmNl
LCBNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SUQpCiB7CiAgICAgaWYgKGF1dG8q
IGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCkpCi0gICAg
ICAgIGZyYW1lLT5hZGRDb25zb2xlTWVzc2FnZShtZXNzYWdlU291cmNlLCBtZXNzYWdlTGV2ZWws
IG1lc3NhZ2UsIHJlcXVlc3RJRCk7CisgICAgICAgIGZyYW1lLT5hZGRDb25zb2xlTWVzc2FnZSht
ZXNzYWdlU291cmNlLCBtZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIHJlcXVlc3RJRC50b1VJbnQ2NCgp
KTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZW5kQ1NQVmlvbGF0aW9uUmVwb3J0KEZyYW1lSWRlbnRp
ZmllciBmcmFtZUlELCBjb25zdCBVUkwmIHJlcG9ydFVSTCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5j
ZSYmIHJlcG9ydERhdGEpCkBAIC01NTI4LDcgKzU1MjgsNyBAQCB2b2lkIFdlYlBhZ2U6OnNhdmVQ
REZUb1RlbXBvcmFyeUZvbGRlckFuZE9wZW5XaXRoTmF0aXZlQXBwbGljYXRpb24oY29uc3QgU3Ry
aW5nJgogfQogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KQordm9pZCBXZWJQYWdlOjphZGRSZXNvdXJjZVJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCkKIHsKICAgICBpZiAoIXJlcXVlc3QudXJsKCkucHJvdG9jb2xJc0luSFRUUEZh
bWlseSgpKQogICAgICAgICByZXR1cm47CkBAIC01NTQzLDcgKzU1NDMsNyBAQCB2b2lkIFdlYlBh
Z2U6OmFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlJlc291cgogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldE5l
dHdvcmtSZXF1ZXN0c0luUHJvZ3Jlc3ModHJ1ZSkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnJlbW92
ZVJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYlBhZ2U6
OnJlbW92ZVJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllcikKIHsKICAgICBpZiAoIW1fdHJhY2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJ
ZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKQEAgLTY5NDAs
NyArNjk0MCw3IEBAIHZvaWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2
NF90IGhhbmRsZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmCiAgICAgbV9pZGVudGlmaWVyVG9V
UkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuYWRkKGhhbmRsZXJJZGVudGlmaWVyLCBzY2hlbWVSZXN1
bHQuaXRlcmF0b3ItPnZhbHVlLmdldCgpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVU
YXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3Vy
Y2VSZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlBhZ2U6OnVybFNj
aGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFJlc291
cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlv
bkhhbmRsZXIpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJMU2NoZW1l
SGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJUKGhhbmRs
ZXIpOwpAQCAtNjk0OSw3ICs2OTQ5LDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2ls
bFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWkKICAgICBo
YW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRhc2tJZGVudGlmaWVyLCBXVEZNb3Zl
KHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24o
dWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBSZXNv
dXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCit2b2lk
IFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRl
bnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiBy
ZXF1ZXN0KQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhh
bmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVy
KTsKQEAgLTY5NTcsNyArNjk1Nyw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFBl
cmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWluCiAgICAgaGFu
ZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRlbnRpZmllciwgV1RGTW92ZShy
ZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCksIFtdIChSZXNvdXJjZVJlcXVlc3QmJikge30pOwog
fQogICAgIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVp
bnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tE
aWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJM
U2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJU
KGhhbmRsZXIpOwpAQCAtNjk2NSw3ICs2OTY1LDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVU
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjQK
ICAgICBoYW5kbGVyLT50YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHRhc2tJZGVudGlmaWVyLCByZXNw
b25zZSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVp
bnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNl
JiBkYXRhKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhh
bmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVy
KTsKQEAgLTY5NzMsNyArNjk3Myw3IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJl
Y2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0CiAgICAgaGFu
ZGxlci0+dGFza0RpZFJlY2VpdmVEYXRhKHRhc2tJZGVudGlmaWVyLCBkYXRhLnNpemUoKSwgZGF0
YS5kYXRhKCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1
aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkQ29t
cGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7
CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5
TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAub3JpZyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwLm9yaWcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMzhiOGNkMDkyZmE5YzYwMmJhNjJkOWQ3MmM5OTRhYTg3YTM3YjE2MAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwLm9y
aWcKQEAgLTAsMCArMSw3NzY4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwLTIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEyIEludGVs
IENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEw
IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViUGFnZS5oIgorCisjaW5jbHVkZSAi
QVBJQXJyYXkuaCIKKyNpbmNsdWRlICJBUElHZW9tZXRyeS5oIgorI2luY2x1ZGUgIkRhdGFSZWZl
cmVuY2UuaCIKKyNpbmNsdWRlICJEcmFnQ29udHJvbGxlckFjdGlvbi5oIgorI2luY2x1ZGUgIkRy
YXdpbmdBcmVhLmgiCisjaW5jbHVkZSAiRHJhd2luZ0FyZWFNZXNzYWdlcy5oIgorI2luY2x1ZGUg
IkVkaXRvclN0YXRlLmgiCisjaW5jbHVkZSAiRXZlbnREaXNwYXRjaGVyLmgiCisjaW5jbHVkZSAi
RmluZENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJGb3JtRGF0YVJlZmVyZW5jZS5oIgorI2luY2x1
ZGUgIkZyYW1lVHJlZU5vZGVEYXRhLmgiCisjaW5jbHVkZSAiR2VvbG9jYXRpb25QZXJtaXNzaW9u
UmVxdWVzdE1hbmFnZXIuaCIKKyNpbmNsdWRlICJJbmplY3RVc2VyU2NyaXB0SW1tZWRpYXRlbHku
aCIKKyNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZS5oIgorI2luY2x1ZGUgIkluamVjdGVkQnVuZGxl
U2NyaXB0V29ybGQuaCIKKyNpbmNsdWRlICJMaWJXZWJSVENQcm92aWRlci5oIgorI2luY2x1ZGUg
IkxvYWRQYXJhbWV0ZXJzLmgiCisjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIk1lZGlh
S2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgiCisjaW5jbHVkZSAiTWVkaWFQbGF5
YmFja1N0YXRlLmgiCisjaW5jbHVkZSAiTWVkaWFSZWNvcmRlclByb3ZpZGVyLmgiCisjaW5jbHVk
ZSAiTmV0c2NhcGVQbHVnaW4uaCIKKyNpbmNsdWRlICJOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzc01lc3NhZ2VzLmgiCisjaW5jbHVkZSAiTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgiCisj
aW5jbHVkZSAiTm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmgiCisjaW5jbHVk
ZSAiUGFnZUJhbm5lci5oIgorI2luY2x1ZGUgIlBsdWdpblByb2Nlc3NBdHRyaWJ1dGVzLmgiCisj
aW5jbHVkZSAiUGx1Z2luUHJveHkuaCIKKyNpbmNsdWRlICJQbHVnaW5WaWV3LmgiCisjaW5jbHVk
ZSAiUHJpbnRJbmZvLmgiCisjaW5jbHVkZSAiUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5Lmgi
CisjaW5jbHVkZSAiUmVtb3RlV2ViSW5zcGVjdG9yVUkuaCIKKyNpbmNsdWRlICJSZW1vdGVXZWJJ
bnNwZWN0b3JVSU1lc3NhZ2VzLmgiCisjaW5jbHVkZSAiU2Vzc2lvblN0YXRlLmgiCisjaW5jbHVk
ZSAiU2Vzc2lvblN0YXRlQ29udmVyc2lvbi5oIgorI2luY2x1ZGUgIlNoYXJlYWJsZUJpdG1hcC5o
IgorI2luY2x1ZGUgIlNoYXJlYWJsZUJpdG1hcFV0aWxpdGllcy5oIgorI2luY2x1ZGUgIlNoYXJl
ZEJ1ZmZlckRhdGFSZWZlcmVuY2UuaCIKKyNpbmNsdWRlICJUZXh0UmVjb2duaXRpb25VcGRhdGVS
ZXN1bHQuaCIKKyNpbmNsdWRlICJVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuaCIK
KyNpbmNsdWRlICJWaWV3R2VzdHVyZUdlb21ldHJ5Q29sbGVjdG9yLmgiCisjaW5jbHVkZSAiVmlz
aXRlZExpbmtUYWJsZUNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJXS0J1bmRsZUFQSUNhc3QuaCIK
KyNpbmNsdWRlICJXS1JldGFpblB0ci5oIgorI2luY2x1ZGUgIldLU2hhcmVkQVBJQ2FzdC5oIgor
I2luY2x1ZGUgIldlYkFsdGVybmF0aXZlVGV4dENsaWVudC5oIgorI2luY2x1ZGUgIldlYkJhY2tG
b3J3YXJkTGlzdEl0ZW0uaCIKKyNpbmNsdWRlICJXZWJCYWNrRm9yd2FyZExpc3RQcm94eS5oIgor
I2luY2x1ZGUgIldlYkJyb2FkY2FzdENoYW5uZWxSZWdpc3RyeS5oIgorI2luY2x1ZGUgIldlYkNh
Y2hlU3RvcmFnZVByb3ZpZGVyLmgiCisjaW5jbHVkZSAiV2ViQ2hyb21lQ2xpZW50LmgiCisjaW5j
bHVkZSAiV2ViQ29sb3JDaG9vc2VyLmgiCisjaW5jbHVkZSAiV2ViQ29udGV4dE1lbnUuaCIKKyNp
bmNsdWRlICJXZWJDb250ZXh0TWVudUNsaWVudC5oIgorI2luY2x1ZGUgIldlYkNvb2tpZUphci5o
IgorI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgorI2luY2x1ZGUgIldlYkRhdGFM
aXN0U3VnZ2VzdGlvblBpY2tlci5oIgorI2luY2x1ZGUgIldlYkRhdGFiYXNlUHJvdmlkZXIuaCIK
KyNpbmNsdWRlICJXZWJEYXRlVGltZUNob29zZXIuaCIKKyNpbmNsdWRlICJXZWJEaWFnbm9zdGlj
TG9nZ2luZ0NsaWVudC5oIgorI2luY2x1ZGUgIldlYkRvY3VtZW50TG9hZGVyLmgiCisjaW5jbHVk
ZSAiV2ViRHJhZ0NsaWVudC5oIgorI2luY2x1ZGUgIldlYkVkaXRvckNsaWVudC5oIgorI2luY2x1
ZGUgIldlYkV2ZW50Q29udmVyc2lvbi5oIgorI2luY2x1ZGUgIldlYkV2ZW50RmFjdG9yeS5oIgor
I2luY2x1ZGUgIldlYkZyYW1lLmgiCisjaW5jbHVkZSAiV2ViRnJhbWVMb2FkZXJDbGllbnQuaCIK
KyNpbmNsdWRlICJXZWJGdWxsU2NyZWVuTWFuYWdlci5oIgorI2luY2x1ZGUgIldlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJHYW1lcGFkUHJvdmlkZXIuaCIKKyNp
bmNsdWRlICJXZWJHZW9sb2NhdGlvbkNsaWVudC5oIgorI2luY2x1ZGUgIldlYkltYWdlLmgiCisj
aW5jbHVkZSAiV2ViSW5zcGVjdG9yLmgiCisjaW5jbHVkZSAiV2ViSW5zcGVjdG9yQ2xpZW50Lmgi
CisjaW5jbHVkZSAiV2ViSW5zcGVjdG9yTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJJbnNwZWN0
b3JVSS5oIgorI2luY2x1ZGUgIldlYkluc3BlY3RvclVJTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJX
ZWJLZXlib2FyZEV2ZW50LmgiCisjaW5jbHVkZSAiV2ViTG9hZGVyU3RyYXRlZ3kuaCIKKyNpbmNs
dWRlICJXZWJNZWRpYUtleVN0b3JhZ2VNYW5hZ2VyLmgiCisjaW5jbHVkZSAiV2ViTWVkaWFLZXlT
eXN0ZW1DbGllbnQuaCIKKyNpbmNsdWRlICJXZWJNZWRpYVN0cmF0ZWd5LmgiCisjaW5jbHVkZSAi
V2ViTW91c2VFdmVudC5oIgorI2luY2x1ZGUgIldlYk5vdGlmaWNhdGlvbkNsaWVudC5oIgorI2lu
Y2x1ZGUgIldlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmgiCisjaW5jbHVkZSAiV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycy5oIgorI2luY2x1ZGUgIldlYlBhZ2VHcm91cFByb3h5LmgiCisjaW5j
bHVkZSAiV2ViUGFnZUluc3BlY3RvclRhcmdldENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJXZWJQ
YWdlTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJQYWdlT3ZlcmxheS5oIgorI2luY2x1ZGUgIldl
YlBhZ2VQcm94eU1lc3NhZ2VzLmgiCisjaW5jbHVkZSAiV2ViUGF5bWVudENvb3JkaW5hdG9yLmgi
CisjaW5jbHVkZSAiV2ViUGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50LmgiCisjaW5jbHVkZSAiV2Vi
UGVybWlzc2lvbkNvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJXZWJQbHVnaW5JbmZvUHJvdmlkZXIu
aCIKKyNpbmNsdWRlICJXZWJQb3B1cE1lbnUuaCIKKyNpbmNsdWRlICJXZWJQcmVmZXJlbmNlc0Rl
ZmluaXRpb25zLmgiCisjaW5jbHVkZSAiV2ViUHJlZmVyZW5jZXNLZXlzLmgiCisjaW5jbHVkZSAi
V2ViUHJlZmVyZW5jZXNTdG9yZS5oIgorI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKKyNpbmNsdWRl
ICJXZWJQcm9jZXNzUG9vbE1lc3NhZ2VzLmgiCisjaW5jbHVkZSAiV2ViUHJvY2Vzc1Byb3h5TWVz
c2FnZXMuaCIKKyNpbmNsdWRlICJXZWJQcm9ncmVzc1RyYWNrZXJDbGllbnQuaCIKKyNpbmNsdWRl
ICJXZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXIuaCIKKyNpbmNsdWRlICJXZWJTb2NrZXRQcm92aWRl
ci5oIgorI2luY2x1ZGUgIldlYlNwZWVjaFJlY29nbml0aW9uUHJvdmlkZXIuaCIKKyNpbmNsdWRl
ICJXZWJTcGVlY2hTeW50aGVzaXNDbGllbnQuaCIKKyNpbmNsdWRlICJXZWJTdG9yYWdlTmFtZXNw
YWNlUHJvdmlkZXIuaCIKKyNpbmNsdWRlICJXZWJTdG9yYWdlUHJvdmlkZXIuaCIKKyNpbmNsdWRl
ICJXZWJUb3VjaEV2ZW50LmgiCisjaW5jbHVkZSAiV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Lmgi
CisjaW5jbHVkZSAiV2ViVW5kb1N0ZXAuaCIKKyNpbmNsdWRlICJXZWJVc2VyQ29udGVudENvbnRy
b2xsZXIuaCIKKyNpbmNsdWRlICJXZWJVc2VyTWVkaWFDbGllbnQuaCIKKyNpbmNsdWRlICJXZWJW
YWxpZGF0aW9uTWVzc2FnZUNsaWVudC5oIgorI2luY2x1ZGUgIldlYldoZWVsRXZlbnQuaCIKKyNp
bmNsdWRlICJXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5oIgorI2luY2x1ZGUgPEphdmFTY3Jp
cHRDb3JlL0FQSUNhc3QuaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0NJbmxpbmVzLmg+
CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNDSlNWYWx1ZS5oPgorI2luY2x1ZGUgPEphdmFT
Y3JpcHRDb3JlL0pTTG9jay5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1Byb2ZpbGVyRGF0
YWJhc2UuaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9TYW1wbGluZ1Byb2ZpbGVyLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9BcHBIaWdobGlnaHQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0FwcGxp
Y2F0aW9uQ2FjaGVTdG9yYWdlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9BcmNoaXZlUmVzb3VyY2Uu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL0JhY2tGb3J3YXJkQ2FjaGUuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL0JhY2tGb3J3YXJkQ29udHJvbGxlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvQ2FjaGVkUGFn
ZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvQ2hyb21lLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Db21t
b25WTS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvQ29udGFjdHNSZXF1ZXN0RGF0YS5oPgorI2luY2x1
ZGUgPFdlYkNvcmUvQ29udGV4dE1lbnVDb250cm9sbGVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9D
cm9zc09yaWdpbkVtYmVkZGVyUG9saWN5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9ET01QYXN0ZUFj
Y2Vzcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRGF0YVRyYW5zZmVyLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0RlcHJlY2F0ZWRHbG9i
YWxTZXR0aW5ncy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRG9jdW1lbnQuaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL0RvY3VtZW50RnJhZ21lbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0RvY3VtZW50TG9h
ZGVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Eb2N1bWVudE1hcmtlckNvbnRyb2xsZXIuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0RvY3VtZW50U3RvcmFnZUFjY2Vzcy5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvRHJhZ0NvbnRyb2xsZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0RyYWdEYXRhLmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9FZGl0aW5nLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9FZGl0b3IuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0VsZW1lbnRJdGVyYXRvci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRXZl
bnRIYW5kbGVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9FdmVudE5hbWVzLmg+CisjaW5jbHVkZSA8
V2ViQ29yZS9GaWxlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Gb2N1c0NvbnRyb2xsZXIuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0ZvbnRBdHRyaWJ1dGVDaGFuZ2VzLmg+CisjaW5jbHVkZSA8V2ViQ29y
ZS9Gb250QXR0cmlidXRlcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRm9ybVN0YXRlLmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9GcmFtZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVMb2FkUmVxdWVz
dC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVMb2FkZXJUeXBlcy5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvRnJhbWVWaWV3Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9GdWxsc2NyZWVuTWFuYWdlci5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL0hUTUxBdHRhY2htZW50RWxlbWVudC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSFRNTEZvcm1F
bGVtZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9IVE1MSW1hZ2VFbGVtZW50Lmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9IVE1MSW5wdXRFbGVtZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9IVE1MTWVu
dUVsZW1lbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0hUTUxNZW51SXRlbUVsZW1lbnQuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0hUTUxQbHVnSW5FbGVtZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9I
VE1MU2VsZWN0RWxlbWVudC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSFRNTFRleHRGb3JtQ29udHJv
bEVsZW1lbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0hpZ2hsaWdodC5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvSGlnaGxpZ2h0UmVnaXN0ZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0hpc3RvcnlDb250
cm9sbGVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9IaXN0b3J5SXRlbS5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvSGl0VGVzdFJlc3VsdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSW5zcGVjdG9yQ29udHJv
bGxlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSlNET01FeGNlcHRpb25IYW5kbGluZy5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvSlNET01XaW5kb3cuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0tleWJvYXJk
RXZlbnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0xlZ2FjeVNjaGVtZVJlZ2lzdHJ5Lmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9Mb2NhbGl6ZWRTdHJpbmdzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9NSU1F
VHlwZVJlZ2lzdHJ5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Nb3VzZUV2ZW50Lmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUGFnZS5oPgor
I2luY2x1ZGUgPFdlYkNvcmUvUGFnZUNvbmZpZ3VyYXRpb24uaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L1BpbmdMb2FkZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtS2V5Ym9hcmRFdmVudC5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1NZWRpYVNlc3Npb25NYW5hZ2VyLmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Bs
dWdpbkRvY3VtZW50Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Qb2ludGVyQ2FwdHVyZUNvbnRyb2xs
ZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1ByaW50Q29udGV4dC5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvUHJvbWlzZWRBdHRhY2htZW50SW5mby5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUXVpcmtzLmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9SYW5nZS5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUmVnaXN0cmFi
bGVEb21haW4uaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1JlbW90ZURPTVdpbmRvdy5oPgorI2luY2x1
ZGUgPFdlYkNvcmUvUmVtb3RlRnJhbWUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1JlbmRlckltYWdl
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZW5kZXJMYXllci5oPgorI2luY2x1ZGUgPFdlYkNvcmUv
UmVuZGVyVGhlbWUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1JlbmRlclRyZWVBc1RleHQuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL1JlbmRlclZpZXcuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1JlcG9ydGlu
Z0VuZHBvaW50c0NhY2hlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRTdGF0aXN0
aWNzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZVJlcXVlc3QuaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL1Jlc291cmNlUmVzcG9uc2UuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1J1bkphdmFTY3Jp
cHRQYXJhbWV0ZXJzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVz
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TV0NsaWVudENvbm5lY3Rpb24uaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL1NjcmlwdENvbnRyb2xsZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1NlY3VyaXR5UG9s
aWN5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvU2V0dGluZ3MuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1NoYWRvd1Jvb3QuaD4KKyNpbmNsdWRl
IDxXZWJDb3JlL1NoYXJlZEJ1ZmZlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvU3RhdGljUmFuZ2Uu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL1N0eWxlUHJvcGVydGllcy5oPgorI2luY2x1ZGUgPFdlYkNv
cmUvU3ViZnJhbWVMb2FkZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1N1YnN0aXR1dGVEYXRhLmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9UZXh0SXRlcmF0b3IuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Ry
YW5zbGF0aW9uQ29udGV4dE1lbnVJbmZvLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVu
dFVSTFBhdHRlcm4uaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJHZXN0dXJlSW5kaWNhdG9yLmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW5wdXRCcmlkZ2UuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L1VzZXJTY3JpcHQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9Vc2VyVHlwaW5nR2VzdHVyZUluZGljYXRvci5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvVmlzaWJsZVBvc2l0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9WaXNpYmxlVW5pdHMu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkdMU3RhdGVUcmFja2VyLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9Xcml0aW5nRGlyZWN0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9tYXJrdXAuaD4KKyNp
bmNsdWRlIDxwYWwvU2Vzc2lvbklELmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgorI2lu
Y2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CisjaW5jbHVkZSA8d3RmL1Njb3BlLmg+CisjaW5jbHVkZSA8
d3RmL1NldEZvclNjb3BlLmg+CisjaW5jbHVkZSA8d3RmL1N5c3RlbVRyYWNpbmcuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CisKKyNpZiBFTkFCTEUoQVBQX0hJR0hMSUdIVFMp
CisjaW5jbHVkZSA8V2ViQ29yZS9BcHBIaWdobGlnaHRTdG9yYWdlLmg+CisjZW5kaWYKKworI2lm
IEVOQUJMRShBUktJVF9JTkxJTkVfUFJFVklFVykKKyNpbmNsdWRlIDxXZWJDb3JlL0hUTUxNb2Rl
bEVsZW1lbnQuaD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQorI2luY2x1
ZGUgIkRhdGFEZXRlY3Rpb25SZXN1bHQuaCIKKyNlbmRpZgorCisjaWYgRU5BQkxFKE1IVE1MKQor
I2luY2x1ZGUgPFdlYkNvcmUvTUhUTUxBcmNoaXZlLmg+CisjZW5kaWYKKworI2lmIEVOQUJMRShQ
T0lOVEVSX0xPQ0spCisjaW5jbHVkZSA8V2ViQ29yZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaD4K
KyNlbmRpZgorCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiRGVmYXVsdFdlYkJyb3dz
ZXJDaGVja3MuaCIKKyNpbmNsdWRlICJJbnNlcnRUZXh0T3B0aW9ucy5oIgorI2luY2x1ZGUgIlBE
RlBsdWdpbi5oIgorI2luY2x1ZGUgIlBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCIKKyNpbmNsdWRl
ICJSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oIgorI2luY2x1ZGUgIlJlbW90ZU9iamVjdFJl
Z2lzdHJ5TWVzc2FnZXMuaCIKKyNpbmNsdWRlICJUZXh0Q2hlY2tpbmdDb250cm9sbGVyUHJveHku
aCIKKyNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIgorI2luY2x1ZGUgIlZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuaCIKKyNpbmNsdWRlICJXS1N0cmluZ0NGLmgiCisjaW5jbHVkZSAi
V2ViUmVtb3RlT2JqZWN0UmVnaXN0cnkuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0xlZ2FjeVdlYkFy
Y2hpdmUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VUSVJlZ2lzdHJ5Lmg+CisjaW5jbHVkZSA8d3Rm
L01hY2hTZW5kUmlnaHQuaD4KKyNpbmNsdWRlIDx3dGYvc3BpL2Rhcndpbi9TYW5kYm94U1BJLmg+
CisjZW5kaWYKKworI2lmIEhBVkUoVE9VQ0hfQkFSKQorI2luY2x1ZGUgIlRvdWNoQmFyTWVudURh
dGEuaCIKKyNpbmNsdWRlICJUb3VjaEJhck1lbnVJdGVtRGF0YS5oIgorI2VuZGlmCisKKyNpZiBQ
TEFURk9STShHVEspCisjaW5jbHVkZSAiR3RrU2V0dGluZ3NNYW5hZ2VyUHJveHkuaCIKKyNpbmNs
dWRlICJXZWJQcmludE9wZXJhdGlvbkd0ay5oIgorI2luY2x1ZGUgPFdlYkNvcmUvU2VsZWN0aW9u
RGF0YS5oPgorI2luY2x1ZGUgPGd0ay9ndGsuaD4KKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKyNpbmNsdWRlICJJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5oIgor
I2luY2x1ZGUgIkludGVyYWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0LmgiCisjaW5jbHVkZSAiUmVt
b3RlTGF5ZXJUcmVlRHJhd2luZ0FyZWEuaCIKKyNpbmNsdWRlICJXZWJBdXRvY29ycmVjdGlvbkNv
bnRleHQuaCIKKyNpbmNsdWRlIDxDb3JlR3JhcGhpY3MvQ29yZUdyYXBoaWNzLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9JY29uLmg+CisjaW5jbHVkZSA8cGFsL3NwaS9jZi9Db3JlVGV4dFNQSS5oPgor
I2VuZGlmCisKKyNpZiBQTEFURk9STShNQUMpCisjaW5jbHVkZSA8V2ViQ29yZS9Mb2NhbERlZmF1
bHRTeXN0ZW1BcHBlYXJhbmNlLmg+CisjaW5jbHVkZSA8cGFsL3NwaS9jZi9DRlV0aWxpdGllc1NQ
SS5oPgorI2VuZGlmCisKKyNpZm5kZWYgTkRFQlVHCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRM
ZWFrQ291bnRlci5oPgorI2VuZGlmCisKKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCisjaW5j
bHVkZSA8V2ViQ29yZS9EYXRhRGV0ZWN0aW9uLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9EYXRhRGV0
ZWN0aW9uUmVzdWx0c1N0b3JhZ2UuaD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKFZJREVPKSAmJiBV
U0UoR1NUUkVBTUVSKQorI2luY2x1ZGUgPFdlYkNvcmUvTWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFs
bE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2suaD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKFdFQl9BVVRI
TikKKyNpbmNsdWRlICJXZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3IuaCIKKyNpbmNsdWRlIDxX
ZWJDb3JlL0F1dGhlbnRpY2F0b3JDb29yZGluYXRvci5oPgorI2VuZGlmCisKKyNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQorI2luY2x1ZGUgIldl
YkRldmljZU9yaWVudGF0aW9uVXBkYXRlUHJvdmlkZXIuaCIKKyNlbmRpZgorCisjaWYgRU5BQkxF
KEdQVV9QUk9DRVNTKQorI2luY2x1ZGUgIlJlbW90ZU1lZGlhUGxheWVyTWFuYWdlci5oIgorI2lm
IEVOQUJMRShFTkNSWVBURURfTUVESUEpCisjaW5jbHVkZSAiUmVtb3RlQ0RNRmFjdG9yeS5oIgor
I2VuZGlmCisjaWYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEpCisjaW5jbHVkZSAiUmVt
b3RlTGVnYWN5Q0RNRmFjdG9yeS5oIgorI2VuZGlmCisjaWYgSEFWRShBVkFTU0VUUkVBREVSKQor
I2luY2x1ZGUgIlJlbW90ZUltYWdlRGVjb2RlckFWRk1hbmFnZXIuaCIKKyNlbmRpZgorI2VuZGlm
CisKKyNpZiBFTkFCTEUoSU1BR0VfQU5BTFlTSVMpCisjaW5jbHVkZSA8V2ViQ29yZS9UZXh0UmVj
b2duaXRpb25SZXN1bHQuaD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKE1FRElBX1NFU1NJT05fQ09P
UkRJTkFUT1IpCisjaW5jbHVkZSAiUmVtb3RlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IuaCIKKyNp
bmNsdWRlIDxXZWJDb3JlL01lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yLmg+CisjaW5jbHVkZSA8V2Vi
Q29yZS9OYXZpZ2F0b3JNZWRpYVNlc3Npb24uaD4KKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9T
KQorI2luY2x1ZGUgIldlYlByZWZlcmVuY2VzRGVmYXVsdFZhbHVlc0lPUy5oIgorI2VuZGlmCisK
KyNpZiBVU0UoQ0cpCisvLyBGSVhNRTogTW92ZSB0aGUgQ0ctc3BlY2lmaWMgUERGIHBhaW50aW5n
IGNvZGUgb3V0IG9mIFdlYlBhZ2UuY3BwLgorI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250
ZXh0Q0cuaD4KKyNlbmRpZgorCituYW1lc3BhY2UgV2ViS2l0IHsKK3VzaW5nIG5hbWVzcGFjZSBK
U0M7Cit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworc3RhdGljIGNvbnN0IFNlY29uZHMgcGFn
ZVNjcm9sbEh5c3RlcmVzaXNEdXJhdGlvbiB7IDMwMF9tcyB9Oworc3RhdGljIGNvbnN0IFNlY29u
ZHMgaW5pdGlhbExheWVyVm9sYXRpbGl0eVRpbWVySW50ZXJ2YWwgeyAyMF9tcyB9Oworc3RhdGlj
IGNvbnN0IFNlY29uZHMgbWF4aW11bUxheWVyVm9sYXRpbGl0eVRpbWVySW50ZXJ2YWwgeyAyX3Mg
fTsKKworI2RlZmluZSBXRUJQQUdFX1JFTEVBU0VfTE9HKGNoYW5uZWwsIGZtdCwgLi4uKSBSRUxF
QVNFX0xPRyhjaGFubmVsLCAiJXAgLSBbd2ViUGFnZUlEPSUiIFBSSXU2NCAiXSBXZWJQYWdlOjoi
IGZtdCwgdGhpcywgbV9pZGVudGlmaWVyLnRvVUludDY0KCksICMjX19WQV9BUkdTX18pCisjZGVm
aW5lIFdFQlBBR0VfUkVMRUFTRV9MT0dfRVJST1IoY2hhbm5lbCwgZm10LCAuLi4pIFJFTEVBU0Vf
TE9HX0VSUk9SKGNoYW5uZWwsICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICJdIFdlYlBhZ2U6
OiIgZm10LCB0aGlzLCBtX2lkZW50aWZpZXIudG9VSW50NjQoKSwgIyNfX1ZBX0FSR1NfXykKKwor
Y2xhc3MgU2VuZFN0b3BSZXNwb25zaXZlbmVzc1RpbWVyIHsKK3B1YmxpYzoKKyAgICB+U2VuZFN0
b3BSZXNwb25zaXZlbmVzc1RpbWVyKCkKKyAgICB7CisgICAgICAgIFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlByb2Nl
c3NQcm94eTo6U3RvcFJlc3BvbnNpdmVuZXNzVGltZXIoKSwgMCk7CisgICAgfQorfTsKKworY2xh
c3MgRGVmZXJyZWRQYWdlRGVzdHJ1Y3RvciB7CitwdWJsaWM6CisgICAgc3RhdGljIHZvaWQgY3Jl
YXRlRGVmZXJyZWRQYWdlRGVzdHJ1Y3RvcihzdGQ6OnVuaXF1ZV9wdHI8UGFnZT4gcGFnZSwgV2Vi
UGFnZSogd2ViUGFnZSkKKyAgICB7CisgICAgICAgIG5ldyBEZWZlcnJlZFBhZ2VEZXN0cnVjdG9y
KFdURk1vdmUocGFnZSksIHdlYlBhZ2UpOworICAgIH0KKworcHJpdmF0ZToKKyAgICBEZWZlcnJl
ZFBhZ2VEZXN0cnVjdG9yKHN0ZDo6dW5pcXVlX3B0cjxQYWdlPiBwYWdlLCBXZWJQYWdlKiB3ZWJQ
YWdlKQorICAgICAgICA6IG1fcGFnZShXVEZNb3ZlKHBhZ2UpKQorICAgICAgICAsIG1fd2ViUGFn
ZSh3ZWJQYWdlKQorICAgIHsKKyAgICAgICAgdHJ5RGVzdHJ1Y3Rpb24oKTsKKyAgICB9CisKKyAg
ICB2b2lkIHRyeURlc3RydWN0aW9uKCkKKyAgICB7CisgICAgICAgIGlmIChtX3BhZ2UtPmluc2lk
ZU5lc3RlZFJ1bkxvb3AoKSkgeworICAgICAgICAgICAgbV9wYWdlLT53aGVuVW5uZXN0ZWQoW3Ro
aXNdIHsgdHJ5RGVzdHJ1Y3Rpb24oKTsgfSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKworICAgICAgICBtX3BhZ2UgPSBudWxscHRyOworICAgICAgICBtX3dlYlBhZ2UgPSBudWxs
cHRyOworICAgICAgICBkZWxldGUgdGhpczsKKyAgICB9CisKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
UGFnZT4gbV9wYWdlOworICAgIFJlZlB0cjxXZWJQYWdlPiBtX3dlYlBhZ2U7Cit9OworCitERUZJ
TkVfREVCVUdfT05MWV9HTE9CQUwoV1RGOjpSZWZDb3VudGVkTGVha0NvdW50ZXIsIHdlYlBhZ2VD
b3VudGVyLCAoIldlYlBhZ2UiKSk7CisKK1JlZjxXZWJQYWdlPiBXZWJQYWdlOjpjcmVhdGUoUGFn
ZUlkZW50aWZpZXIgcGFnZUlELCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVy
cykKK3sKKyAgICBSZWY8V2ViUGFnZT4gcGFnZSA9IGFkb3B0UmVmKCpuZXcgV2ViUGFnZShwYWdl
SUQsIFdURk1vdmUocGFyYW1ldGVycykpKTsKKworICAgIGlmIChXZWJQcm9jZXNzOjpzaW5nbGV0
b24oKS5pbmplY3RlZEJ1bmRsZSgpKQorICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5p
bmplY3RlZEJ1bmRsZSgpLT5kaWRDcmVhdGVQYWdlKHBhZ2UucHRyKCkpOworCisgICAgcmV0dXJu
IHBhZ2U7Cit9CisKK3N0YXRpYyBWZWN0b3I8VXNlckNvbnRlbnRVUkxQYXR0ZXJuPiBwYXJzZUFu
ZEFsbG93QWNjZXNzVG9DT1JTRGlzYWJsaW5nUGF0dGVybnMoY29uc3QgVmVjdG9yPFN0cmluZz4m
IGlucHV0KQoreworICAgIFZlY3RvcjxVc2VyQ29udGVudFVSTFBhdHRlcm4+IHBhcnNlZFBhdHRl
cm5zOworICAgIHBhcnNlZFBhdHRlcm5zLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkoaW5wdXQuc2l6
ZSgpKTsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIHBhdHRlcm4gOiBpbnB1dCkgeworICAgICAgICBV
c2VyQ29udGVudFVSTFBhdHRlcm4gcGFyc2VkUGF0dGVybihwYXR0ZXJuKTsKKyAgICAgICAgaWYg
KHBhcnNlZFBhdHRlcm4uaXNWYWxpZCgpKSB7CisgICAgICAgICAgICBXZWJDb3JlOjpTZWN1cml0
eVBvbGljeTo6YWxsb3dBY2Nlc3NUbyhwYXJzZWRQYXR0ZXJuKTsKKyAgICAgICAgICAgIHBhcnNl
ZFBhdHRlcm5zLnVuY2hlY2tlZEFwcGVuZChXVEZNb3ZlKHBhcnNlZFBhdHRlcm4pKTsKKyAgICAg
ICAgfQorICAgIH0KKyAgICBwYXJzZWRQYXR0ZXJucy5zaHJpbmtUb0ZpdCgpOworICAgIHJldHVy
biBwYXJzZWRQYXR0ZXJuczsKK30KKworV2ViUGFnZTo6V2ViUGFnZShQYWdlSWRlbnRpZmllciBw
YWdlSUQsIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQorICAgIDogbV9p
ZGVudGlmaWVyKHBhZ2VJRCkKKyAgICAsIG1fbWFpbkZyYW1lKFdlYkZyYW1lOjpjcmVhdGUoKSkK
KyAgICAsIG1fdmlld1NpemUocGFyYW1ldGVycy52aWV3U2l6ZSkKKyAgICAsIG1fZHJhd2luZ0Fy
ZWFUeXBlKHBhcmFtZXRlcnMuZHJhd2luZ0FyZWFUeXBlKQorICAgICwgbV9hbHdheXNTaG93c0hv
cml6b250YWxTY3JvbGxlciB7IHBhcmFtZXRlcnMuYWx3YXlzU2hvd3NIb3Jpem9udGFsU2Nyb2xs
ZXIgfQorICAgICwgbV9hbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIgeyBwYXJhbWV0ZXJzLmFs
d2F5c1Nob3dzVmVydGljYWxTY3JvbGxlciB9CisgICAgLCBtX3Nob3VsZFJlbmRlckNhbnZhc0lu
R1BVUHJvY2VzcyB7IHBhcmFtZXRlcnMuc2hvdWxkUmVuZGVyQ2FudmFzSW5HUFVQcm9jZXNzIH0K
KyAgICAsIG1fc2hvdWxkUmVuZGVyRE9NSW5HUFVQcm9jZXNzIHsgcGFyYW1ldGVycy5zaG91bGRS
ZW5kZXJET01JbkdQVVByb2Nlc3MgfQorICAgICwgbV9zaG91bGRQbGF5TWVkaWFJbkdQVVByb2Nl
c3MgeyBwYXJhbWV0ZXJzLnNob3VsZFBsYXlNZWRpYUluR1BVUHJvY2VzcyB9CisjaWYgRU5BQkxF
KFdFQkdMKQorICAgICwgbV9zaG91bGRSZW5kZXJXZWJHTEluR1BVUHJvY2VzcyB7IHBhcmFtZXRl
cnMuc2hvdWxkUmVuZGVyV2ViR0xJbkdQVVByb2Nlc3N9CisjZW5kaWYKKyAgICAsIG1fbGF5ZXJI
b3N0aW5nTW9kZShwYXJhbWV0ZXJzLmxheWVySG9zdGluZ01vZGUpCisjaWYgRU5BQkxFKFBMQVRG
T1JNX0RSSVZFTl9URVhUX0NIRUNLSU5HKQorICAgICwgbV90ZXh0Q2hlY2tpbmdDb250cm9sbGVy
UHJveHkobWFrZVVuaXF1ZVJlZjxUZXh0Q2hlY2tpbmdDb250cm9sbGVyUHJveHk+KCp0aGlzKSkK
KyNlbmRpZgorI2lmIFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShHVEspCisgICAgLCBtX3Zp
ZXdHZXN0dXJlR2VvbWV0cnlDb2xsZWN0b3IobWFrZVVuaXF1ZTxWaWV3R2VzdHVyZUdlb21ldHJ5
Q29sbGVjdG9yPigqdGhpcykpCisjZWxpZiBFTkFCTEUoQUNDRVNTSUJJTElUWSkgJiYgUExBVEZP
Uk0oR1RLKQorICAgICwgbV9hY2Nlc3NpYmlsaXR5T2JqZWN0KG51bGxwdHIpCisjZW5kaWYKKyNp
ZiBQTEFURk9STShXSU4pCisgICAgLCBtX25hdGl2ZVdpbmRvd0hhbmRsZShwYXJhbWV0ZXJzLm5h
dGl2ZVdpbmRvd0hhbmRsZSkKKyNlbmRpZgorICAgICwgbV9zZXRDYW5TdGFydE1lZGlhVGltZXIo
UnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmV2ViUGFnZTo6c2V0Q2FuU3RhcnRNZWRpYVRpbWVyRmly
ZWQpCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgLCBtX2NvbnRleHRNZW51Q2xpZW50
KG1ha2VVbmlxdWU8QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZUNvbnRleHRNZW51Q2xpZW50Pigp
KQorI2VuZGlmCisgICAgLCBtX2VkaXRvckNsaWVudCB7IG1ha2VVbmlxdWU8QVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6RWRpdG9yQ2xpZW50PigpIH0KKyAgICAsIG1fZm9ybUNsaWVudChtYWtlVW5pcXVl
PEFQSTo6SW5qZWN0ZWRCdW5kbGU6OkZvcm1DbGllbnQ+KCkpCisgICAgLCBtX2xvYWRlckNsaWVu
dChtYWtlVW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VMb2FkZXJDbGllbnQ+KCkpCisg
ICAgLCBtX3Jlc291cmNlTG9hZENsaWVudChtYWtlVW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6
OlJlc291cmNlTG9hZENsaWVudD4oKSkKKyAgICAsIG1fdWlDbGllbnQobWFrZVVuaXF1ZTxBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ+KCkpCisgICAgLCBtX2ZpbmRDb250cm9sbGVy
KG1ha2VVbmlxdWVSZWY8RmluZENvbnRyb2xsZXI+KHRoaXMpKQorICAgICwgbV9pbnNwZWN0b3JU
YXJnZXRDb250cm9sbGVyKG1ha2VVbmlxdWU8V2ViUGFnZUluc3BlY3RvclRhcmdldENvbnRyb2xs
ZXI+KCp0aGlzKSkKKyAgICAsIG1fdXNlckNvbnRlbnRDb250cm9sbGVyKFdlYlVzZXJDb250ZW50
Q29udHJvbGxlcjo6Z2V0T3JDcmVhdGUocGFyYW1ldGVycy51c2VyQ29udGVudENvbnRyb2xsZXJQ
YXJhbWV0ZXJzLmlkZW50aWZpZXIpKQorI2lmIEVOQUJMRShHRU9MT0NBVElPTikKKyAgICAsIG1f
Z2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIobWFrZVVuaXF1ZVJlZjxHZW9sb2Nh
dGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcj4oKnRoaXMpKQorI2VuZGlmCisjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKKyAgICAsIG1fdXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2Vy
IHsgbWFrZVVuaXF1ZVJlZjxVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI+KCp0aGlz
KSB9CisjZW5kaWYKKyNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQorICAgICwgbV9tZWRpYUtl
eVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlciB7IG1ha2VVbmlxdWVSZWY8TWVkaWFLZXlT
eXN0ZW1QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI+KCp0aGlzKSB9CisjZW5kaWYKKyAgICAsIG1f
cGFnZVNjcm9sbGVkSHlzdGVyZXNpcyhbdGhpc10oUEFMOjpIeXN0ZXJlc2lzU3RhdGUgc3RhdGUp
IHsgaWYgKHN0YXRlID09IFBBTDo6SHlzdGVyZXNpc1N0YXRlOjpTdG9wcGVkKSBwYWdlU3RvcHBl
ZFNjcm9sbGluZygpOyB9LCBwYWdlU2Nyb2xsSHlzdGVyZXNpc0R1cmF0aW9uKQorICAgICwgbV9j
YW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwocGFyYW1ldGVycy5jYW5SdW5CZWZvcmVVbmxv
YWRDb25maXJtUGFuZWwpCisgICAgLCBtX2NhblJ1bk1vZGFsKHBhcmFtZXRlcnMuY2FuUnVuTW9k
YWwpCisjaWYgSEFWRShUT1VDSF9CQVIpCisgICAgLCBtX3JlcXVpcmVzVXNlckFjdGlvbkZvckVk
aXRpbmdDb250cm9sc01hbmFnZXIocGFyYW1ldGVycy5yZXF1aXJlc1VzZXJBY3Rpb25Gb3JFZGl0
aW5nQ29udHJvbHNNYW5hZ2VyKQorI2VuZGlmCisjaWYgRU5BQkxFKE1FVEFfVklFV1BPUlQpCisg
ICAgLCBtX2ZvcmNlQWx3YXlzVXNlclNjYWxhYmxlKHBhcmFtZXRlcnMuaWdub3Jlc1ZpZXdwb3J0
U2NhbGVMaW1pdHMpCisjZW5kaWYKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgICwgbV9z
Y3JlZW5TaXplKHBhcmFtZXRlcnMuc2NyZWVuU2l6ZSkKKyAgICAsIG1fYXZhaWxhYmxlU2NyZWVu
U2l6ZShwYXJhbWV0ZXJzLmF2YWlsYWJsZVNjcmVlblNpemUpCisgICAgLCBtX292ZXJyaWRlU2Ny
ZWVuU2l6ZShwYXJhbWV0ZXJzLm92ZXJyaWRlU2NyZWVuU2l6ZSkKKyAgICAsIG1fZGV2aWNlT3Jp
ZW50YXRpb24ocGFyYW1ldGVycy5kZXZpY2VPcmllbnRhdGlvbikKKyAgICAsIG1fa2V5Ym9hcmRJ
c0F0dGFjaGVkKHBhcmFtZXRlcnMua2V5Ym9hcmRJc0F0dGFjaGVkKQorICAgICwgbV9jYW5TaG93
V2hpbGVMb2NrZWQocGFyYW1ldGVycy5jYW5TaG93V2hpbGVMb2NrZWQpCisjZW5kaWYKKyAgICAs
IG1fbGF5ZXJWb2xhdGlsaXR5VGltZXIoKnRoaXMsICZXZWJQYWdlOjpsYXllclZvbGF0aWxpdHlU
aW1lckZpcmVkKQorICAgICwgbV9hY3Rpdml0eVN0YXRlKHBhcmFtZXRlcnMuYWN0aXZpdHlTdGF0
ZSkKKyAgICAsIG1fdXNlckFjdGl2aXR5KCJBcHAgbmFwIGRpc2FibGVkIGZvciBwYWdlIGR1ZSB0
byB1c2VyIGFjdGl2aXR5IikKKyAgICAsIG1fdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbihw
YXJhbWV0ZXJzLnVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24pCisgICAgLCBtX292ZXJyaWRl
Q29udGVudFNlY3VyaXR5UG9saWN5IHsgcGFyYW1ldGVycy5vdmVycmlkZUNvbnRlbnRTZWN1cml0
eVBvbGljeSB9CisgICAgLCBtX2NwdUxpbWl0KHBhcmFtZXRlcnMuY3B1TGltaXQpCisjaWYgVVNF
KFdQRV9SRU5ERVJFUikKKyAgICAsIG1faG9zdEZpbGVEZXNjcmlwdG9yKFdURk1vdmUocGFyYW1l
dGVycy5ob3N0RmlsZURlc2NyaXB0b3IpKQorI2VuZGlmCisgICAgLCBtX3dlYlBhZ2VQcm94eUlk
ZW50aWZpZXIocGFyYW1ldGVycy53ZWJQYWdlUHJveHlJZGVudGlmaWVyKQorI2lmIEVOQUJMRShU
RVhUX0FVVE9TSVpJTkcpCisgICAgLCBtX3RleHRBdXRvU2l6aW5nQWRqdXN0bWVudFRpbWVyKCp0
aGlzLCAmV2ViUGFnZTo6dGV4dEF1dG9TaXppbmdBZGp1c3RtZW50VGltZXJGaXJlZCkKKyNlbmRp
ZgorICAgICwgbV9vdmVycmlkZGVuTWVkaWFUeXBlKHBhcmFtZXRlcnMub3ZlcnJpZGRlbk1lZGlh
VHlwZSkKKyAgICAsIG1fcHJvY2Vzc0Rpc3BsYXlOYW1lKHBhcmFtZXRlcnMucHJvY2Vzc0Rpc3Bs
YXlOYW1lKQorI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKKyAgICAsIG1fbGltaXRzTmF2
aWdhdGlvbnNUb0FwcEJvdW5kRG9tYWlucyhwYXJhbWV0ZXJzLmxpbWl0c05hdmlnYXRpb25zVG9B
cHBCb3VuZERvbWFpbnMpCisjZW5kaWYKKyAgICAsIG1fbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0
aWF0ZWQocGFyYW1ldGVycy5sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKKyNpZiBFTkFC
TEUoQVBQX0hJR0hMSUdIVFMpCisgICAgLCBtX2FwcEhpZ2hsaWdodHNWaXNpYmxlKHBhcmFtZXRl
cnMuYXBwSGlnaGxpZ2h0c1Zpc2libGUpCisjZW5kaWYKK3sKKyAgICBBU1NFUlQobV9pZGVudGlm
aWVyKTsKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKExvYWRpbmcsICJjb25zdHJ1Y3RvcjoiKTsK
KworICAgIG1fcGFnZUdyb3VwID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViUGFnZUdyb3Vw
KHBhcmFtZXRlcnMucGFnZUdyb3VwRGF0YSk7CisKKyAgICBQYWdlQ29uZmlndXJhdGlvbiBwYWdl
Q29uZmlndXJhdGlvbigKKyAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklE
KCksCisgICAgICAgIG1ha2VVbmlxdWVSZWY8V2ViRWRpdG9yQ2xpZW50Pih0aGlzKSwKKyAgICAg
ICAgV2ViU29ja2V0UHJvdmlkZXI6OmNyZWF0ZShwYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlkZW50
aWZpZXIpLAorICAgICAgICBjcmVhdGVMaWJXZWJSVENQcm92aWRlcigqdGhpcyksCisgICAgICAg
IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmNhY2hlU3RvcmFnZVByb3ZpZGVyKCksCisgICAgICAg
IG1fdXNlckNvbnRlbnRDb250cm9sbGVyLAorICAgICAgICBXZWJCYWNrRm9yd2FyZExpc3RQcm94
eTo6Y3JlYXRlKCp0aGlzKSwKKyAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuY29va2ll
SmFyKCksCisgICAgICAgIG1ha2VVbmlxdWVSZWY8V2ViUHJvZ3Jlc3NUcmFja2VyQ2xpZW50Pigq
dGhpcyksCisgICAgICAgIG1ha2VVbmlxdWVSZWY8V2ViRnJhbWVMb2FkZXJDbGllbnQ+KG1fbWFp
bkZyYW1lLmNvcHlSZWYoKSksCisgICAgICAgIG1ha2VVbmlxdWVSZWY8V2ViU3BlZWNoUmVjb2du
aXRpb25Qcm92aWRlcj4obV9pZGVudGlmaWVyKSwKKyAgICAgICAgbWFrZVVuaXF1ZVJlZjxNZWRp
YVJlY29yZGVyUHJvdmlkZXI+KCp0aGlzKSwKKyAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkuYnJvYWRjYXN0Q2hhbm5lbFJlZ2lzdHJ5KCksCisgICAgICAgIFdlYlBlcm1pc3Npb25Db250
cm9sbGVyOjpjcmVhdGUoKnRoaXMpLAorICAgICAgICBtYWtlVW5pcXVlUmVmPFdlYlN0b3JhZ2VQ
cm92aWRlcj4oKQorICAgICk7CisgICAgcGFnZUNvbmZpZ3VyYXRpb24uY2hyb21lQ2xpZW50ID0g
bmV3IFdlYkNocm9tZUNsaWVudCgqdGhpcyk7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisg
ICAgcGFnZUNvbmZpZ3VyYXRpb24uY29udGV4dE1lbnVDbGllbnQgPSBuZXcgV2ViQ29udGV4dE1l
bnVDbGllbnQodGhpcyk7CisjZW5kaWYKKyNpZiBFTkFCTEUoRFJBR19TVVBQT1JUKQorICAgIHBh
Z2VDb25maWd1cmF0aW9uLmRyYWdDbGllbnQgPSBtYWtlVW5pcXVlPFdlYkRyYWdDbGllbnQ+KHRo
aXMpOworI2VuZGlmCisgICAgcGFnZUNvbmZpZ3VyYXRpb24uaW5zcGVjdG9yQ2xpZW50ID0gbmV3
IFdlYkluc3BlY3RvckNsaWVudCh0aGlzKTsKKyNpZiBVU0UoQVVUT0NPUlJFQ1RJT05fUEFORUwp
CisgICAgcGFnZUNvbmZpZ3VyYXRpb24uYWx0ZXJuYXRpdmVUZXh0Q2xpZW50ID0gbWFrZVVuaXF1
ZTxXZWJBbHRlcm5hdGl2ZVRleHRDbGllbnQ+KHRoaXMpOworI2VuZGlmCisKKyAgICBwYWdlQ29u
ZmlndXJhdGlvbi5kaWFnbm9zdGljTG9nZ2luZ0NsaWVudCA9IG1ha2VVbmlxdWU8V2ViRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQ+KCp0aGlzKTsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5wZXJmb3Jt
YW5jZUxvZ2dpbmdDbGllbnQgPSBtYWtlVW5pcXVlPFdlYlBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVu
dD4oKnRoaXMpOworCisjaWYgRU5BQkxFKFdFQkdMKQorICAgIHBhZ2VDb25maWd1cmF0aW9uLndl
YkdMU3RhdGVUcmFja2VyID0gbWFrZVVuaXF1ZTxXZWJHTFN0YXRlVHJhY2tlcj4oW3RoaXNdKGJv
b2wgaXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKSB7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6U2V0SXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKGlzVXNpbmdIaWdo
UGVyZm9ybWFuY2VXZWJHTCkpOworICAgIH0pOworI2VuZGlmCisKKyNpZiBFTkFCTEUoU1BFRUNI
X1NZTlRIRVNJUykKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5zcGVlY2hTeW50aGVzaXNDbGllbnQg
PSBtYWtlVW5pcXVlPFdlYlNwZWVjaFN5bnRoZXNpc0NsaWVudD4oKnRoaXMpOworI2VuZGlmCisK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBwYWdlQ29uZmlndXJhdGlvbi52YWxpZGF0aW9uTWVz
c2FnZUNsaWVudCA9IG1ha2VVbmlxdWU8V2ViVmFsaWRhdGlvbk1lc3NhZ2VDbGllbnQ+KCp0aGlz
KTsKKyNlbmRpZgorCisgICAgcGFnZUNvbmZpZ3VyYXRpb24uYXBwbGljYXRpb25DYWNoZVN0b3Jh
Z2UgPSAmV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuYXBwbGljYXRpb25DYWNoZVN0b3JhZ2UoKTsK
KyAgICBwYWdlQ29uZmlndXJhdGlvbi5kYXRhYmFzZVByb3ZpZGVyID0gV2ViRGF0YWJhc2VQcm92
aWRlcjo6Z2V0T3JDcmVhdGUobV9wYWdlR3JvdXAtPnBhZ2VHcm91cElEKCkpOworICAgIHBhZ2VD
b25maWd1cmF0aW9uLnBsdWdpbkluZm9Qcm92aWRlciA9ICZXZWJQbHVnaW5JbmZvUHJvdmlkZXI6
OnNpbmdsZXRvbigpOworICAgIHBhZ2VDb25maWd1cmF0aW9uLnN0b3JhZ2VOYW1lc3BhY2VQcm92
aWRlciA9IFdlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcjo6Z2V0T3JDcmVhdGUoKm1fcGFnZUdy
b3VwKTsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi52aXNpdGVkTGlua1N0b3JlID0gVmlzaXRlZExp
bmtUYWJsZUNvbnRyb2xsZXI6OmdldE9yQ3JlYXRlKHBhcmFtZXRlcnMudmlzaXRlZExpbmtUYWJs
ZUlEKTsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5yZXBvcnRpbmdFbmRwb2ludHNDYWNoZSA9ICZX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5yZXBvcnRpbmdFbmRwb2ludHNDYWNoZSgpOworCisjaWYg
RU5BQkxFKEFQUExFX1BBWSkKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5wYXltZW50Q29vcmRpbmF0
b3JDbGllbnQgPSBuZXcgV2ViUGF5bWVudENvb3JkaW5hdG9yKCp0aGlzKTsKKyNlbmRpZgorCisj
aWYgRU5BQkxFKFdFQl9BVVRITikKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5hdXRoZW50aWNhdG9y
Q29vcmRpbmF0b3JDbGllbnQgPSBtYWtlVW5pcXVlPFdlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRv
cj4oKnRoaXMpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCisg
ICAgcGFnZUNvbmZpZ3VyYXRpb24uYXBwbGljYXRpb25NYW5pZmVzdCA9IHBhcmFtZXRlcnMuYXBw
bGljYXRpb25NYW5pZmVzdDsKKyNlbmRpZgorICAgIAorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
ICYmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAgcGFnZUNvbmZpZ3VyYXRpb24uZGV2
aWNlT3JpZW50YXRpb25VcGRhdGVQcm92aWRlciA9IFdlYkRldmljZU9yaWVudGF0aW9uVXBkYXRl
UHJvdmlkZXI6OmNyZWF0ZSgqdGhpcyk7CisjZW5kaWYKKworICAgIG1fY29yc0Rpc2FibGluZ1Bh
dHRlcm5zID0gV1RGTW92ZShwYXJhbWV0ZXJzLmNvcnNEaXNhYmxpbmdQYXR0ZXJucyk7CisgICAg
aWYgKCFtX2NvcnNEaXNhYmxpbmdQYXR0ZXJucy5pc0VtcHR5KCkpCisgICAgICAgIHN5bmNocm9u
aXplQ09SU0Rpc2FibGluZ1BhdHRlcm5zV2l0aE5ldHdvcmtQcm9jZXNzKCk7CisgICAgcGFnZUNv
bmZpZ3VyYXRpb24uY29yc0Rpc2FibGluZ1BhdHRlcm5zID0gcGFyc2VBbmRBbGxvd0FjY2Vzc1Rv
Q09SU0Rpc2FibGluZ1BhdHRlcm5zKG1fY29yc0Rpc2FibGluZ1BhdHRlcm5zKTsKKworICAgIHBh
Z2VDb25maWd1cmF0aW9uLnVzZXJTY3JpcHRzU2hvdWxkV2FpdFVudGlsTm90aWZpY2F0aW9uID0g
cGFyYW1ldGVycy51c2VyU2NyaXB0c1Nob3VsZFdhaXRVbnRpbE5vdGlmaWNhdGlvbjsKKyAgICBw
YWdlQ29uZmlndXJhdGlvbi5sb2Fkc1N1YnJlc291cmNlcyA9IHBhcmFtZXRlcnMubG9hZHNTdWJy
ZXNvdXJjZXM7CisgICAgcGFnZUNvbmZpZ3VyYXRpb24uYWxsb3dlZE5ldHdvcmtIb3N0cyA9IHBh
cmFtZXRlcnMuYWxsb3dlZE5ldHdvcmtIb3N0czsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi5zaG91
bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZyA9IHBhcmFtZXRlcnMuc2hvdWxkUmVsYXhU
aGlyZFBhcnR5Q29va2llQmxvY2tpbmc7CisgICAgcGFnZUNvbmZpZ3VyYXRpb24uaHR0cHNVcGdy
YWRlRW5hYmxlZCA9IHBhcmFtZXRlcnMuaHR0cHNVcGdyYWRlRW5hYmxlZDsKKworICAgIGlmICgh
cGFyYW1ldGVycy5jcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2xDaGVja0VuYWJsZWQpCisgICAgICAg
IENyb3NzT3JpZ2luQWNjZXNzQ29udHJvbENoZWNrRGlzYWJsZXI6OnNpbmdsZXRvbigpLnNldENy
b3NzT3JpZ2luQWNjZXNzQ29udHJvbENoZWNrRW5hYmxlZChmYWxzZSk7CisKKyNpZiBFTkFCTEUo
QVRUQUNITUVOVF9FTEVNRU5UKQorICAgIGlmIChwYXJhbWV0ZXJzLmF0dGFjaG1lbnRFbGVtZW50
RXh0ZW5zaW9uSGFuZGxlcykKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1h
bmVudGx5KCpwYXJhbWV0ZXJzLmF0dGFjaG1lbnRFbGVtZW50RXh0ZW5zaW9uSGFuZGxlcyk7Cisj
ZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICAvLyBGSVhNRSgyMDc3MTYpOiBUaGUgZm9s
bG93aW5nIHNob3VsZCBiZSByZW1vdmVkIHdoZW4gdGhlIEdQVSBwcm9jZXNzIGlzIGNvbXBsZXRl
LgorICAgIHN0YXRpYyBib29sIGhhc0NvbnN1bWVkTWVkaWFFeHRlbnNpb25IYW5kbGVzID0gZmFs
c2U7CisgICAgaWYgKCFoYXNDb25zdW1lZE1lZGlhRXh0ZW5zaW9uSGFuZGxlcyAmJiBwYXJhbWV0
ZXJzLm1lZGlhRXh0ZW5zaW9uSGFuZGxlcy5zaXplKCkpIHsKKyAgICAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMubWVkaWFFeHRlbnNpb25IYW5kbGVz
KTsKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRl
cnMubWVkaWFJT0tpdEV4dGVuc2lvbkhhbmRsZXMpOworICAgICAgICBoYXNDb25zdW1lZE1lZGlh
RXh0ZW5zaW9uSGFuZGxlcyA9IHRydWU7CisgICAgfQorICAgIHN0YXRpYyBib29sIGhhc0NvbnN1
bWVkR1BVRXh0ZW5zaW9uSGFuZGxlcyA9IGZhbHNlOworICAgIGlmICghaGFzQ29uc3VtZWRHUFVF
eHRlbnNpb25IYW5kbGVzKSB7CisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJt
YW5lbnRseShwYXJhbWV0ZXJzLmdwdUlPS2l0RXh0ZW5zaW9uSGFuZGxlcyk7CisgICAgICAgIFNh
bmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmdwdU1hY2hFeHRl
bnNpb25IYW5kbGVzKTsKKyAgICAgICAgaGFzQ29uc3VtZWRHUFVFeHRlbnNpb25IYW5kbGVzID0g
dHJ1ZTsKKyAgICB9CisjZW5kaWYKKworI2lmIEhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCisg
ICAgaWYgKHBhcmFtZXRlcnMuZm9udE1hY2hFeHRlbnNpb25IYW5kbGUpCisgICAgICAgIFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLnN3aXRjaEZyb21TdGF0aWNGb250UmVnaXN0cnlUb1VzZXJGb250
UmVnaXN0cnkoV1RGTW92ZSgqcGFyYW1ldGVycy5mb250TWFjaEV4dGVuc2lvbkhhbmRsZSkpOwor
I2VuZGlmCisKKyAgICBtX3BhZ2UgPSBtYWtlVW5pcXVlPFBhZ2U+KFdURk1vdmUocGFnZUNvbmZp
Z3VyYXRpb24pKTsKKworI2lmIFBMQVRGT1JNKElPUykKKyAgICBzZXRBbGxvd3NEZXByZWNhdGVk
U3luY2hyb25vdXNYTUxIdHRwUmVxdWVzdER1cmluZ1VubG9hZChwYXJhbWV0ZXJzLmFsbG93c0Rl
cHJlY2F0ZWRTeW5jaHJvbm91c1hNTEh0dHBSZXF1ZXN0RHVyaW5nVW5sb2FkKTsKKyNlbmRpZgor
CisgICAgdXBkYXRlUHJlZmVyZW5jZXMocGFyYW1ldGVycy5zdG9yZSk7CisKKyNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKSB8fCBFTkFCTEUoUk9VVElOR19BUkJJVFJBVElPTikKKyAgICBEZXByZWNh
dGVkR2xvYmFsU2V0dGluZ3M6OnNldFNob3VsZE1hbmFnZUF1ZGlvU2Vzc2lvbkNhdGVnb3J5KHRy
dWUpOworI2VuZGlmCisKKyAgICBtX2JhY2tncm91bmRDb2xvciA9IHBhcmFtZXRlcnMuYmFja2dy
b3VuZENvbG9yOworCisgICAgbV9kcmF3aW5nQXJlYSA9IERyYXdpbmdBcmVhOjpjcmVhdGUoKnRo
aXMsIHBhcmFtZXRlcnMpOworICAgIG1fZHJhd2luZ0FyZWEtPnNldFNob3VsZFNjYWxlVmlld1Rv
Rml0RG9jdW1lbnQocGFyYW1ldGVycy5zaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KTsKKwor
ICAgIGlmIChwYXJhbWV0ZXJzLmlzUHJvY2Vzc1N3YXApCisgICAgICAgIGZyZWV6ZUxheWVyVHJl
ZShMYXllclRyZWVGcmVlemVSZWFzb246OlByb2Nlc3NTd2FwKTsKKworI2lmIEVOQUJMRShBU1lO
Q19TQ1JPTExJTkcpCisgICAgbV91c2VBc3luY1Njcm9sbGluZyA9IHBhcmFtZXRlcnMuc3RvcmUu
Z2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp0aHJlYWRlZFNjcm9sbGluZ0Vu
YWJsZWRLZXkoKSk7CisgICAgaWYgKCFtX2RyYXdpbmdBcmVhLT5zdXBwb3J0c0FzeW5jU2Nyb2xs
aW5nKCkpCisgICAgICAgIG1fdXNlQXN5bmNTY3JvbGxpbmcgPSBmYWxzZTsKKyAgICBtX3BhZ2Ut
PnNldHRpbmdzKCkuc2V0U2Nyb2xsaW5nQ29vcmRpbmF0b3JFbmFibGVkKG1fdXNlQXN5bmNTY3Jv
bGxpbmcpOworI2VuZGlmCisKKyAgICAvLyBEaXNhYmxlIEJhY2svRm9yd2FyZCBjYWNoZSBleHBp
cmF0aW9uIGluIHRoZSBXZWJDb250ZW50IHByb2Nlc3Mgc2luY2UgbWFuYWdlbWVudCBoYXBwZW5z
IGluIHRoZSBVSVByb2Nlc3MKKyAgICAvLyBpbiBtb2Rlcm4gV2ViS2l0LgorICAgIG1fcGFnZS0+
c2V0dGluZ3MoKS5zZXRCYWNrRm9yd2FyZENhY2hlRXhwaXJhdGlvbkludGVydmFsKFNlY29uZHM6
OmluZmluaXR5KCkpOworCisgICAgbV9tYWluRnJhbWUtPmluaXRXaXRoQ29yZU1haW5GcmFtZSgq
dGhpcywgbV9wYWdlLT5tYWluRnJhbWUoKSk7CisKKyAgICBtX2RyYXdpbmdBcmVhLT51cGRhdGVQ
cmVmZXJlbmNlcyhwYXJhbWV0ZXJzLnN0b3JlKTsKKworICAgIHNldEJhY2tncm91bmRFeHRlbmRz
QmV5b25kUGFnZShwYXJhbWV0ZXJzLmJhY2tncm91bmRFeHRlbmRzQmV5b25kUGFnZSk7CisgICAg
c2V0UGFnZUFuZFRleHRab29tRmFjdG9ycyhwYXJhbWV0ZXJzLnBhZ2Vab29tRmFjdG9yLCBwYXJh
bWV0ZXJzLnRleHRab29tRmFjdG9yKTsKKworI2lmIEVOQUJMRShHRU9MT0NBVElPTikKKyAgICBX
ZWJDb3JlOjpwcm92aWRlR2VvbG9jYXRpb25UbyhtX3BhZ2UuZ2V0KCksICpuZXcgV2ViR2VvbG9j
YXRpb25DbGllbnQoKnRoaXMpKTsKKyNlbmRpZgorI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQor
ICAgIFdlYkNvcmU6OnByb3ZpZGVOb3RpZmljYXRpb24obV9wYWdlLmdldCgpLCBuZXcgV2ViTm90
aWZpY2F0aW9uQ2xpZW50KHRoaXMpKTsKKyNlbmRpZgorI2lmIEVOQUJMRShNRURJQV9TVFJFQU0p
CisgICAgV2ViQ29yZTo6cHJvdmlkZVVzZXJNZWRpYVRvKG1fcGFnZS5nZXQoKSwgbmV3IFdlYlVz
ZXJNZWRpYUNsaWVudCgqdGhpcykpOworI2VuZGlmCisjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJ
QSkKKyAgICBXZWJDb3JlOjpwcm92aWRlTWVkaWFLZXlTeXN0ZW1UbygqbV9wYWdlLmdldCgpLCAq
bmV3IFdlYk1lZGlhS2V5U3lzdGVtQ2xpZW50KCp0aGlzKSk7CisjZW5kaWYKKworICAgIG1fcGFn
ZS0+c2V0Q29udHJvbGxlZEJ5QXV0b21hdGlvbihwYXJhbWV0ZXJzLmNvbnRyb2xsZWRCeUF1dG9t
YXRpb24pOworICAgIG1fcGFnZS0+c2V0SGFzUmVzb3VyY2VMb2FkQ2xpZW50KHBhcmFtZXRlcnMu
aGFzUmVzb3VyY2VMb2FkQ2xpZW50KTsKKworICAgIG1fcGFnZS0+c2V0Q2FuU3RhcnRNZWRpYShm
YWxzZSk7CisgICAgbV9tYXlTdGFydE1lZGlhV2hlbkluV2luZG93ID0gcGFyYW1ldGVycy5tYXlT
dGFydE1lZGlhV2hlbkluV2luZG93OworICAgIGlmIChwYXJhbWV0ZXJzLm1lZGlhUGxheWJhY2tJ
c1N1c3BlbmRlZCkKKyAgICAgICAgbV9wYWdlLT5zdXNwZW5kQWxsTWVkaWFQbGF5YmFjaygpOwor
CisgICAgbV9wYWdlLT5zZXRHcm91cE5hbWUobV9wYWdlR3JvdXAtPmlkZW50aWZpZXIoKSk7Cisg
ICAgbV9wYWdlLT5zZXREZXZpY2VTY2FsZUZhY3RvcihwYXJhbWV0ZXJzLmRldmljZVNjYWxlRmFj
dG9yKTsKKyAgICBtX3BhZ2UtPnNldFVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24obV91c2Vy
SW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKTsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAg
IG1fcGFnZS0+c2V0VGV4dEF1dG9zaXppbmdXaWR0aChwYXJhbWV0ZXJzLnRleHRBdXRvc2l6aW5n
V2lkdGgpOworICAgIHNldE92ZXJyaWRlVmlld3BvcnRBcmd1bWVudHMocGFyYW1ldGVycy5vdmVy
cmlkZVZpZXdwb3J0QXJndW1lbnRzKTsKKyNlbmRpZgorCisgICAgcGxhdGZvcm1Jbml0aWFsaXpl
KCk7CisKKyAgICBzZXRVc2VGaXhlZExheW91dChwYXJhbWV0ZXJzLnVzZUZpeGVkTGF5b3V0KTsK
KworICAgIHNldFVuZGVybGF5Q29sb3IocGFyYW1ldGVycy51bmRlcmxheUNvbG9yKTsKKworICAg
IHNldFBhZ2luYXRpb25Nb2RlKHBhcmFtZXRlcnMucGFnaW5hdGlvbk1vZGUpOworICAgIHNldFBh
Z2luYXRpb25CZWhhdmVzTGlrZUNvbHVtbnMocGFyYW1ldGVycy5wYWdpbmF0aW9uQmVoYXZlc0xp
a2VDb2x1bW5zKTsKKyAgICBzZXRQYWdlTGVuZ3RoKHBhcmFtZXRlcnMucGFnZUxlbmd0aCk7Cisg
ICAgc2V0R2FwQmV0d2VlblBhZ2VzKHBhcmFtZXRlcnMuZ2FwQmV0d2VlblBhZ2VzKTsKKyAgICBz
ZXRQYWdpbmF0aW9uTGluZUdyaWRFbmFibGVkKHBhcmFtZXRlcnMucGFnaW5hdGlvbkxpbmVHcmlk
RW5hYmxlZCk7CisKKyNpZiBQTEFURk9STShHVEspCisgICAgR3RrU2V0dGluZ3NNYW5hZ2VyUHJv
eHk6OnNpbmdsZXRvbigpLmFwcGx5U2V0dGluZ3MoV1RGTW92ZShwYXJhbWV0ZXJzLmd0a1NldHRp
bmdzKSk7CisjZW5kaWYKKworICAgIGVmZmVjdGl2ZUFwcGVhcmFuY2VEaWRDaGFuZ2UocGFyYW1l
dGVycy51c2VEYXJrQXBwZWFyYW5jZSwgcGFyYW1ldGVycy51c2VFbGV2YXRlZFVzZXJJbnRlcmZh
Y2VMZXZlbCk7CisKKyAgICBpZiAocGFyYW1ldGVycy5pc0VkaXRhYmxlKQorICAgICAgICBzZXRF
ZGl0YWJsZSh0cnVlKTsKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBzZXRVc2VTeXN0ZW1BcHBl
YXJhbmNlKHBhcmFtZXRlcnMudXNlU3lzdGVtQXBwZWFyYW5jZSk7CisjZW5kaWYKKworICAgIC8v
IElmIHRoZSBwYWdlIGlzIGNyZWF0ZWQgb2ZmLXNjcmVlbiwgaXRzIHZpc2liaWxpdHlTdGF0ZSBz
aG91bGQgYmUgcHJlcmVuZGVyLgorICAgIG1fcGFnZS0+c2V0QWN0aXZpdHlTdGF0ZShtX2FjdGl2
aXR5U3RhdGUpOworICAgIGlmICghaXNWaXNpYmxlKCkpCisgICAgICAgIG1fcGFnZS0+c2V0SXNQ
cmVyZW5kZXIoKTsKKworICAgIHVwZGF0ZUlzSW5XaW5kb3codHJ1ZSk7CisKKyAgICBzZXRNaW5p
bXVtU2l6ZUZvckF1dG9MYXlvdXQocGFyYW1ldGVycy5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQp
OworICAgIHNldFNpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplKHBhcmFtZXRlcnMuc2l6
ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUpOworICAgIHNldEF1dG9TaXppbmdTaG91bGRF
eHBhbmRUb1ZpZXdIZWlnaHQocGFyYW1ldGVycy5hdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3
SGVpZ2h0KTsKKyAgICBzZXRWaWV3cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRzKHBhcmFtZXRl
cnMudmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cyk7CisgICAgCisgICAgc2V0U2Nyb2xs
UGlubmluZ0JlaGF2aW9yKHBhcmFtZXRlcnMuc2Nyb2xsUGlubmluZ0JlaGF2aW9yKTsKKyAgICBp
ZiAocGFyYW1ldGVycy5zY3JvbGxiYXJPdmVybGF5U3R5bGUpCisgICAgICAgIG1fc2Nyb2xsYmFy
T3ZlcmxheVN0eWxlID0gc3RhdGljX2Nhc3Q8U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPihwYXJhbWV0
ZXJzLnNjcm9sbGJhck92ZXJsYXlTdHlsZS52YWx1ZSgpKTsKKyAgICBlbHNlCisgICAgICAgIG1f
c2Nyb2xsYmFyT3ZlcmxheVN0eWxlID0gc3RkOjpvcHRpb25hbDxTY3JvbGxiYXJPdmVybGF5U3R5
bGU+KCk7CisKKyAgICBzZXRUb3BDb250ZW50SW5zZXQocGFyYW1ldGVycy50b3BDb250ZW50SW5z
ZXQpOworCisgICAgbV91c2VyQWdlbnQgPSBwYXJhbWV0ZXJzLnVzZXJBZ2VudDsKKyAgICAKKyAg
ICAvLyBEbyBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nIGl0ZW1zLiBEdWUgdG8gcHJvY2VzcyBzd2Fw
cGluZyBhbmQgYmFjay9mb3J3YXJkIGNhY2hlIHN1cHBvcnQsIHRoZXJlIG1heSBiZSBvdGhlcgor
ICAgIC8vIChzdXNwZW5kZWQpIFdlYlBhZ2VzIGluIHRoaXMgcHJvY2VzcyBmb3IgdGhlIHNhbWUg
V2ViUGFnZVByb3h5IGluIHRoZSBVSVByb2Nlc3MuIE92ZXJ3cml0aW5nIHRoZSBIaXN0b3J5SXRl
bXMKKyAgICAvLyB3b3VsZCBicmVhayBiYWNrL2ZvcndhcmQgY2FjaGUgZm9yIHRob3NlIG90aGVy
IHBhZ2VzIHNpbmNlIHRoZSBIaXN0b3J5SXRlbXMgaG9sZCB0aGUgQ2FjaGVkUGFnZS4KKyAgICBp
ZiAoIXBhcmFtZXRlcnMuaXRlbVN0YXRlcy5pc0VtcHR5KCkpCisgICAgICAgIHJlc3RvcmVTZXNz
aW9uSW50ZXJuYWwocGFyYW1ldGVycy5pdGVtU3RhdGVzLCBwYXJhbWV0ZXJzLml0ZW1TdGF0ZXNX
ZXJlUmVzdG9yZWRCeUFQSVJlcXVlc3QgPyBXYXNSZXN0b3JlZEJ5QVBJUmVxdWVzdDo6WWVzIDog
V2FzUmVzdG9yZWRCeUFQSVJlcXVlc3Q6Ok5vLCBXZWJCYWNrRm9yd2FyZExpc3RQcm94eTo6T3Zl
cndyaXRlRXhpc3RpbmdJdGVtOjpObyk7CisKKyAgICBtX2RyYXdpbmdBcmVhLT5lbmFibGVQYWlu
dGluZygpOworICAgIAorICAgIHNldE1lZGlhVm9sdW1lKHBhcmFtZXRlcnMubWVkaWFWb2x1bWUp
OworCisgICAgc2V0TXV0ZWQocGFyYW1ldGVycy5tdXRlZCwgW10geyB9KTsKKworICAgIC8vIFdl
IHVzZSB0aGUgRGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0IG1pbGVzdG9uZSB0byBkZXRl
cm1pbmUgd2hlbiB0byB1bmZyZWV6ZSB0aGUgbGF5ZXIgdHJlZS4KKyAgICBtX3BhZ2UtPmFkZExh
eW91dE1pbGVzdG9uZXMoeyBEaWRGaXJzdExheW91dCwgRGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5
TGF5b3V0IH0pOworCisgICAgYXV0byYgd2ViUHJvY2VzcyA9IFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpOworICAgIHdlYlByb2Nlc3MuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdl
OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllciwgKnRoaXMpOworCisgICAgLy8g
RklYTUU6IFRoaXMgc2hvdWxkIGJlIGRvbmUgaW4gdGhlIG9iamVjdCBjb25zdHJ1Y3RvcnMsIGFu
ZCB0aGUgb2JqZWN0cyB0aGVtc2VsdmVzIHNob3VsZCBiZSBtZXNzYWdlIHJlY2VpdmVycy4KKyAg
ICB3ZWJQcm9jZXNzLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViSW5zcGVjdG9yOjpt
ZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllciwgKnRoaXMpOworICAgIHdlYlByb2Nl
c3MuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJbnNwZWN0b3JVSTo6bWVzc2FnZVJl
Y2VpdmVyTmFtZSgpLCBtX2lkZW50aWZpZXIsICp0aGlzKTsKKyAgICB3ZWJQcm9jZXNzLmFkZE1l
c3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlV2ViSW5zcGVjdG9yVUk6Om1lc3NhZ2VSZWNl
aXZlck5hbWUoKSwgbV9pZGVudGlmaWVyLCAqdGhpcyk7CisjaWYgRU5BQkxFKEZVTExTQ1JFRU5f
QVBJKQorICAgIHdlYlByb2Nlc3MuYWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJGdWxs
U2NyZWVuTWFuYWdlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX2lkZW50aWZpZXIsICp0aGlz
KTsKKyNlbmRpZgorCisjaWZuZGVmIE5ERUJVRworICAgIHdlYlBhZ2VDb3VudGVyLmluY3JlbWVu
dCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoU0NST0xMSU5HX1RIUkVBRCkKKyAgICBpZiAobV91
c2VBc3luY1Njcm9sbGluZykKKyAgICAgICAgd2ViUHJvY2Vzcy5ldmVudERpc3BhdGNoZXIoKS5h
ZGRTY3JvbGxpbmdUcmVlRm9yUGFnZSh0aGlzKTsKKyNlbmRpZgorCisgICAgZm9yIChhdXRvJiBt
aW1lVHlwZSA6IHBhcmFtZXRlcnMubWltZVR5cGVzV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnMp
CisgICAgICAgIG1fbWltZVR5cGVzV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnMuYWRkKG1pbWVU
eXBlKTsKKworCisjaWYgRU5BQkxFKExFR0FDWV9FTkNSWVBURURfTUVESUEpCisgICAgaWYgKFdl
Yk1lZGlhS2V5U3RvcmFnZU1hbmFnZXIqIG1hbmFnZXIgPSB3ZWJQcm9jZXNzLnN1cHBsZW1lbnQ8
V2ViTWVkaWFLZXlTdG9yYWdlTWFuYWdlcj4oKSkKKyAgICAgICAgbV9wYWdlLT5zZXR0aW5ncygp
LnNldE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkobWFuYWdlci0+bWVkaWFLZXlTdG9yYWdlRGly
ZWN0b3J5KCkpOworI2VuZGlmCisgICAgaWYgKHBhcmFtZXRlcnMudmlld1NjYWxlRmFjdG9yICE9
IDEpCisgICAgICAgIHNjYWxlVmlldyhwYXJhbWV0ZXJzLnZpZXdTY2FsZUZhY3Rvcik7CisKKyAg
ICBtX3BhZ2UtPmFkZExheW91dE1pbGVzdG9uZXMocGFyYW1ldGVycy5vYnNlcnZlZExheW91dE1p
bGVzdG9uZXMpOworCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgc2V0U21hcnRJbnNlcnREZWxl
dGVFbmFibGVkKHBhcmFtZXRlcnMuc21hcnRJbnNlcnREZWxldGVFbmFibGVkKTsKKyAgICBXZWJD
b3JlOjpzZXRBZGRpdGlvbmFsU3VwcG9ydGVkSW1hZ2VUeXBlcyhwYXJhbWV0ZXJzLmFkZGl0aW9u
YWxTdXBwb3J0ZWRJbWFnZVR5cGVzKTsKKyNlbmRpZgorCisjaWYgSEFWRShBUFBfQUNDRU5UX0NP
TE9SUykKKyAgICBzZXRBY2NlbnRDb2xvcihwYXJhbWV0ZXJzLmFjY2VudENvbG9yKTsKKyNlbmRp
ZgorCisgICAgbV9uZWVkc0ZvbnRBdHRyaWJ1dGVzID0gcGFyYW1ldGVycy5uZWVkc0ZvbnRBdHRy
aWJ1dGVzOworCisjaWYgRU5BQkxFKFdFQl9SVEMpCisgICAgaWYgKCFwYXJhbWV0ZXJzLmljZUNh
bmRpZGF0ZUZpbHRlcmluZ0VuYWJsZWQpCisgICAgICAgIG1fcGFnZS0+ZGlzYWJsZUlDRUNhbmRp
ZGF0ZUZpbHRlcmluZygpOworI2lmIFVTRShMSUJXRUJSVEMpCisgICAgaWYgKHBhcmFtZXRlcnMu
ZW51bWVyYXRpbmdBbGxOZXR3b3JrSW50ZXJmYWNlc0VuYWJsZWQpCisgICAgICAgIG1fcGFnZS0+
bGliV2ViUlRDUHJvdmlkZXIoKS5lbmFibGVFbnVtZXJhdGluZ0FsbE5ldHdvcmtJbnRlcmZhY2Vz
KCk7CisjZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkgJiYgRU5BQkxFKE1FRElBX1NUUkVBTSkK
KyAgICBpZiAoYXV0byogY2FwdHVyZU1hbmFnZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5z
dXBwbGVtZW50PFVzZXJNZWRpYUNhcHR1cmVNYW5hZ2VyPigpKQorICAgICAgICBjYXB0dXJlTWFu
YWdlci0+c2V0dXBDYXB0dXJlUHJvY2Vzc2VzKHBhcmFtZXRlcnMuc2hvdWxkQ2FwdHVyZUF1ZGlv
SW5VSVByb2Nlc3MsIHBhcmFtZXRlcnMuc2hvdWxkQ2FwdHVyZUF1ZGlvSW5HUFVQcm9jZXNzLCBw
YXJhbWV0ZXJzLnNob3VsZENhcHR1cmVWaWRlb0luVUlQcm9jZXNzLCBwYXJhbWV0ZXJzLnNob3Vs
ZENhcHR1cmVWaWRlb0luR1BVUHJvY2VzcywgcGFyYW1ldGVycy5zaG91bGRDYXB0dXJlRGlzcGxh
eUluVUlQcm9jZXNzKTsKKyNlbmRpZgorI2VuZGlmCisKKyAgICBmb3IgKGNvbnN0IGF1dG8mIGl0
ZXJhdG9yIDogcGFyYW1ldGVycy51cmxTY2hlbWVIYW5kbGVycykKKyAgICAgICAgcmVnaXN0ZXJV
UkxTY2hlbWVIYW5kbGVyKGl0ZXJhdG9yLnZhbHVlLCBpdGVyYXRvci5rZXkpOworICAgIGZvciAo
YXV0byYgc2NoZW1lIDogcGFyYW1ldGVycy51cmxTY2hlbWVzV2l0aExlZ2FjeUN1c3RvbVByb3Rv
Y29sSGFuZGxlcnMpCisgICAgICAgIExlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNj
aGVtZUFzSGFuZGxlZEJ5U2NoZW1lSGFuZGxlcih7IHNjaGVtZSB9KTsKKworICAgIG1fdXNlckNv
bnRlbnRDb250cm9sbGVyLT5hZGRDb250ZW50V29ybGRzKHBhcmFtZXRlcnMudXNlckNvbnRlbnRD
b250cm9sbGVyUGFyYW1ldGVycy51c2VyQ29udGVudFdvcmxkcyk7CisgICAgbV91c2VyQ29udGVu
dENvbnRyb2xsZXItPmFkZFVzZXJTY3JpcHRzKFdURk1vdmUocGFyYW1ldGVycy51c2VyQ29udGVu
dENvbnRyb2xsZXJQYXJhbWV0ZXJzLnVzZXJTY3JpcHRzKSwgSW5qZWN0VXNlclNjcmlwdEltbWVk
aWF0ZWx5OjpObyk7CisgICAgbV91c2VyQ29udGVudENvbnRyb2xsZXItPmFkZFVzZXJTdHlsZVNo
ZWV0cyhwYXJhbWV0ZXJzLnVzZXJDb250ZW50Q29udHJvbGxlclBhcmFtZXRlcnMudXNlclN0eWxl
U2hlZXRzKTsKKyAgICBtX3VzZXJDb250ZW50Q29udHJvbGxlci0+YWRkVXNlclNjcmlwdE1lc3Nh
Z2VIYW5kbGVycyhwYXJhbWV0ZXJzLnVzZXJDb250ZW50Q29udHJvbGxlclBhcmFtZXRlcnMubWVz
c2FnZUhhbmRsZXJzKTsKKyNpZiBFTkFCTEUoQ09OVEVOVF9FWFRFTlNJT05TKQorICAgIG1fdXNl
ckNvbnRlbnRDb250cm9sbGVyLT5hZGRDb250ZW50UnVsZUxpc3RzKFdURk1vdmUocGFyYW1ldGVy
cy51c2VyQ29udGVudENvbnRyb2xsZXJQYXJhbWV0ZXJzLmNvbnRlbnRSdWxlTGlzdHMpKTsKKyNl
bmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBzZXRWaWV3cG9ydENvbmZpZ3Vy
YXRpb25WaWV3TGF5b3V0U2l6ZShwYXJhbWV0ZXJzLnZpZXdwb3J0Q29uZmlndXJhdGlvblZpZXdM
YXlvdXRTaXplLCBwYXJhbWV0ZXJzLnZpZXdwb3J0Q29uZmlndXJhdGlvbkxheW91dFNpemVTY2Fs
ZUZhY3RvciwgcGFyYW1ldGVycy52aWV3cG9ydENvbmZpZ3VyYXRpb25NaW5pbXVtRWZmZWN0aXZl
RGV2aWNlV2lkdGgpOworICAgIHNldE1heGltdW1Vbm9ic2N1cmVkU2l6ZShwYXJhbWV0ZXJzLm1h
eGltdW1Vbm9ic2N1cmVkU2l6ZSk7CisjZW5kaWYKKworI2lmIFVTRShBVURJT19TRVNTSU9OKQor
ICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2V0U2hvdWxkRGVhY3RpdmF0ZUF1ZGlv
U2Vzc2lvbih0cnVlKTsKKyNlbmRpZgorCisjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9O
X1ZJRVcpCisgICAgbV9jb250ZXh0Rm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uID0gTGF5ZXJIb3N0
aW5nQ29udGV4dDo6Y3JlYXRlRm9yRXh0ZXJuYWxIb3N0aW5nUHJvY2Vzcyh7CisgICAgICAgIG1f
Y2FuU2hvd1doaWxlTG9ja2VkCisgICAgfSk7CisgICAgV0VCUEFHRV9SRUxFQVNFX0xPRyhQcm9j
ZXNzLCAiV2ViUGFnZTogQ3JlYXRlZCBjb250ZXh0IHdpdGggSUQgJXUgZm9yIHZpc2liaWxpdHkg
cHJvcGFnYXRpb24gZnJvbSBVSVByb2Nlc3MiLCBtX2NvbnRleHRGb3JWaXNpYmlsaXR5UHJvcGFn
YXRpb24tPmNvbnRleHRJRCgpKTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRp
ZENyZWF0ZUNvbnRleHRJbldlYlByb2Nlc3NGb3JWaXNpYmlsaXR5UHJvcGFnYXRpb24obV9jb250
ZXh0Rm9yVmlzaWJpbGl0eVByb3BhZ2F0aW9uLT5jb250ZXh0SUQoKSkpOworI2VuZGlmIC8vIEhB
VkUoVklTSUJJTElUWV9QUk9QQUdBVElPTl9WSUVXKQorCisjaWYgRU5BQkxFKElQQ19URVNUSU5H
X0FQSSkKKyAgICBtX3Zpc2l0ZWRMaW5rVGFibGVJRCA9IHBhcmFtZXRlcnMudmlzaXRlZExpbmtU
YWJsZUlEOworI2VuZGlmCisKKyNpZiBFTkFCTEUoVlA5KQorICAgIFBsYXRmb3JtTWVkaWFTZXNz
aW9uTWFuYWdlcjo6c2V0U2hvdWxkRW5hYmxlVlA4RGVjb2RlcihwYXJhbWV0ZXJzLnNob3VsZEVu
YWJsZVZQOERlY29kZXIpOworICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2V0U2hv
dWxkRW5hYmxlVlA5RGVjb2RlcihwYXJhbWV0ZXJzLnNob3VsZEVuYWJsZVZQOURlY29kZXIpOwor
ICAgIFBsYXRmb3JtTWVkaWFTZXNzaW9uTWFuYWdlcjo6c2V0U2hvdWxkRW5hYmxlVlA5U1dEZWNv
ZGVyKHBhcmFtZXRlcnMuc2hvdWxkRW5hYmxlVlA5U1dEZWNvZGVyKTsKKyAgICBpZiAobV9zaG91
bGRQbGF5TWVkaWFJbkdQVVByb2Nlc3MgJiYgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZXhpc3Rp
bmdHUFVQcm9jZXNzQ29ubmVjdGlvbigpKQorICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5leGlzdGluZ0dQVVByb2Nlc3NDb25uZWN0aW9uKCktPmVuYWJsZVZQOURlY29kZXJzKHBhcmFt
ZXRlcnMuc2hvdWxkRW5hYmxlVlA4RGVjb2RlciwgcGFyYW1ldGVycy5zaG91bGRFbmFibGVWUDlE
ZWNvZGVyLCBwYXJhbWV0ZXJzLnNob3VsZEVuYWJsZVZQOVNXRGVjb2Rlcik7CisjZW5kaWYKKwor
ICAgIG1fcGFnZS0+c2V0Q2FuVXNlQ3JlZGVudGlhbFN0b3JhZ2UocGFyYW1ldGVycy5jYW5Vc2VD
cmVkZW50aWFsU3RvcmFnZSk7CisKKyAgICB1cGRhdGVUaHJvdHRsZVN0YXRlKCk7Cit9CisKKyNp
ZiBFTkFCTEUoR1BVX1BST0NFU1MpCit2b2lkIFdlYlBhZ2U6OmdwdVByb2Nlc3NDb25uZWN0aW9u
RGlkQmVjb21lQXZhaWxhYmxlKEdQVVByb2Nlc3NDb25uZWN0aW9uJiBncHVQcm9jZXNzQ29ubmVj
dGlvbikKK3sKKyNpZiBIQVZFKFZJU0lCSUxJVFlfUFJPUEFHQVRJT05fVklFVykKKyAgICBncHVQ
cm9jZXNzQ29ubmVjdGlvbi5jcmVhdGVWaXNpYmlsaXR5UHJvcGFnYXRpb25Db250ZXh0Rm9yUGFn
ZSgqdGhpcyk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShncHVQcm9jZXNzQ29ubmVjdGlvbik7
CisjZW5kaWYKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6OnJlcXVlc3RNZWRpYVBsYXliYWNr
U3RhdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJLaXQ6Ok1lZGlhUGxheWJhY2tTdGF0ZSk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX3BhZ2UtPm1lZGlhUGxheWJhY2tF
eGlzdHMoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKE1lZGlhUGxheWJhY2tT
dGF0ZTo6Tm9NZWRpYVBsYXliYWNrKTsKKyAgICBpZiAobV9wYWdlLT5tZWRpYVBsYXliYWNrSXNQ
YXVzZWQoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKE1lZGlhUGxheWJhY2tT
dGF0ZTo6TWVkaWFQbGF5YmFja1BhdXNlZCk7CisgICAgaWYgKG1fcGFnZS0+bWVkaWFQbGF5YmFj
a0lzU3VzcGVuZGVkKCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihNZWRpYVBs
YXliYWNrU3RhdGU6Ok1lZGlhUGxheWJhY2tTdXNwZW5kZWQpOworCisgICAgY29tcGxldGlvbkhh
bmRsZXIoTWVkaWFQbGF5YmFja1N0YXRlOjpNZWRpYVBsYXliYWNrUGxheWluZyk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6cGF1c2VBbGxNZWRpYVBsYXliYWNrKENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBtX3BhZ2UtPnBhdXNlQWxsTWVkaWFQbGF5
YmFjaygpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c3Vz
cGVuZEFsbE1lZGlhUGxheWJhY2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQoreworICAgIG1fcGFnZS0+c3VzcGVuZEFsbE1lZGlhUGxheWJhY2soKTsKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIFdlYlBhZ2U6OnJlc3VtZUFsbE1lZGlh
UGxheWJhY2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIG1fcGFnZS0+cmVzdW1lQWxsTWVkaWFQbGF5YmFjaygpOworICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c3VzcGVuZEFsbE1lZGlhQnVmZmVyaW5nKCkK
K3sKKyAgICBtX3BhZ2UtPnN1c3BlbmRBbGxNZWRpYUJ1ZmZlcmluZygpOworfQorCit2b2lkIFdl
YlBhZ2U6OnJlc3VtZUFsbE1lZGlhQnVmZmVyaW5nKCkKK3sKKyAgICBtX3BhZ2UtPnJlc3VtZUFs
bE1lZGlhQnVmZmVyaW5nKCk7Cit9CisKKwordm9pZCBXZWJQYWdlOjpyZWluaXRpYWxpemVXZWJQ
YWdlKFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQoreworICAgIEFTU0VS
VChtX2RyYXdpbmdBcmVhKTsKKworICAgIHNldFNpemUocGFyYW1ldGVycy52aWV3U2l6ZSk7CisK
KyAgICAvLyBJZiB0aGUgVUlQcm9jZXNzIGNyZWF0ZWQgYSBuZXcgRHJhd2luZ0FyZWEsIHRoZW4g
d2UgbmVlZCB0byBkbyB0aGUgc2FtZS4KKyAgICBpZiAobV9kcmF3aW5nQXJlYS0+aWRlbnRpZmll
cigpICE9IHBhcmFtZXRlcnMuZHJhd2luZ0FyZWFJZGVudGlmaWVyKSB7CisgICAgICAgIGF1dG8g
b2xkRHJhd2luZ0FyZWEgPSBzdGQ6OmV4Y2hhbmdlKG1fZHJhd2luZ0FyZWEsIG51bGxwdHIpOwor
ICAgICAgICBvbGREcmF3aW5nQXJlYS0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVySWZOZWVkZWQoKTsK
KworICAgICAgICBtX2RyYXdpbmdBcmVhID0gRHJhd2luZ0FyZWE6OmNyZWF0ZSgqdGhpcywgcGFy
YW1ldGVycyk7CisgICAgICAgIG1fZHJhd2luZ0FyZWEtPnNldFNob3VsZFNjYWxlVmlld1RvRml0
RG9jdW1lbnQocGFyYW1ldGVycy5zaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KTsKKyAgICAg
ICAgbV9kcmF3aW5nQXJlYS0+dXBkYXRlUHJlZmVyZW5jZXMocGFyYW1ldGVycy5zdG9yZSk7Cisg
ICAgICAgIG1fZHJhd2luZ0FyZWEtPmVuYWJsZVBhaW50aW5nKCk7CisKKyAgICAgICAgbV9kcmF3
aW5nQXJlYS0+YWRvcHRMYXllcnNGcm9tRHJhd2luZ0FyZWEoKm9sZERyYXdpbmdBcmVhKTsKKyAg
ICAgICAgbV9kcmF3aW5nQXJlYS0+YWRvcHREaXNwbGF5UmVmcmVzaE1vbml0b3JzRnJvbURyYXdp
bmdBcmVhKCpvbGREcmF3aW5nQXJlYSk7CisKKyAgICAgICAgdW5mcmVlemVMYXllclRyZWUoTGF5
ZXJUcmVlRnJlZXplUmVhc29uOjpQYWdlU3VzcGVuZGVkKTsKKyAgICB9CisKKyAgICBzZXRNaW5p
bXVtU2l6ZUZvckF1dG9MYXlvdXQocGFyYW1ldGVycy5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQp
OworICAgIHNldFNpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplKHBhcmFtZXRlcnMuc2l6
ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUpOworCisgICAgaWYgKG1fYWN0aXZpdHlTdGF0
ZSAhPSBwYXJhbWV0ZXJzLmFjdGl2aXR5U3RhdGUpCisgICAgICAgIHNldEFjdGl2aXR5U3RhdGUo
cGFyYW1ldGVycy5hY3Rpdml0eVN0YXRlLCBBY3Rpdml0eVN0YXRlQ2hhbmdlQXN5bmNocm9ub3Vz
LCBbXSB7IH0pOworICAgIGlmIChtX2xheWVySG9zdGluZ01vZGUgIT0gcGFyYW1ldGVycy5sYXll
ckhvc3RpbmdNb2RlKQorICAgICAgICBzZXRMYXllckhvc3RpbmdNb2RlKHBhcmFtZXRlcnMubGF5
ZXJIb3N0aW5nTW9kZSk7CisKKyNpZiBQTEFURk9STShHVEspCisgICAgR3RrU2V0dGluZ3NNYW5h
Z2VyUHJveHk6OnNpbmdsZXRvbigpLmFwcGx5U2V0dGluZ3MoV1RGTW92ZShwYXJhbWV0ZXJzLmd0
a1NldHRpbmdzKSk7CisjZW5kaWYKKworICAgIHBsYXRmb3JtUmVpbml0aWFsaXplKCk7Cit9CisK
K3ZvaWQgV2ViUGFnZTo6dXBkYXRlVGhyb3R0bGVTdGF0ZSgpCit7CisgICAgYm9vbCBpc1Rocm90
dGxlYWJsZSA9IHRoaXMtPmlzVGhyb3R0bGVhYmxlKCk7CisKKyAgICAvLyBUaGUgVXNlckFjdGl2
aXR5IHByZXZlbnRzIEFwcCBOYXAuIFNvIGlmIHdlIHdhbnQgdG8gYWxsb3cgQXBwIE5hcCBvZiB0
aGUgcGFnZSwgc3RvcCB0aGUgYWN0aXZpdHkuCisgICAgLy8gSWYgdGhlIHBhZ2Ugc2hvdWxkIG5v
dCBiZSBhcHAgbmFwJ2QsIHN0YXJ0IGl0LgorICAgIGlmIChpc1Rocm90dGxlYWJsZSkKKyAgICAg
ICAgbV91c2VyQWN0aXZpdHkuc3RvcCgpOworICAgIGVsc2UKKyAgICAgICAgbV91c2VyQWN0aXZp
dHkuc3RhcnQoKTsKKworI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBpZiAoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXJ2aWNlV29ya2VyRW5hYmxlZCgp
KSB7CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbaXNUaHJvdHRsZWFibGVdIHsK
KyAgICAgICAgICAgIFdlYlNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkudXBkYXRl
VGhyb3R0bGVTdGF0ZShpc1Rocm90dGxlYWJsZSk7CisgICAgICAgIH0pOworICAgIH0KKyNlbmRp
ZgorfQorCitib29sIFdlYlBhZ2U6OmlzVGhyb3R0bGVhYmxlKCkgY29uc3QKK3sKKyAgICBib29s
IGlzQWN0aXZlID0gbV9hY3Rpdml0eVN0YXRlLmNvbnRhaW5zQW55KHsgQWN0aXZpdHlTdGF0ZTo6
SXNMb2FkaW5nLCBBY3Rpdml0eVN0YXRlOjpJc0F1ZGlibGUsIEFjdGl2aXR5U3RhdGU6OklzQ2Fw
dHVyaW5nTWVkaWEsIEFjdGl2aXR5U3RhdGU6OldpbmRvd0lzQWN0aXZlIH0pOworICAgIGJvb2wg
aXNWaXN1YWxseUlkbGUgPSBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoQWN0aXZpdHlTdGF0ZTo6
SXNWaXN1YWxseUlkbGUpOworCisgICAgcmV0dXJuIG1faXNBcHBOYXBFbmFibGVkICYmICFpc0Fj
dGl2ZSAmJiBpc1Zpc3VhbGx5SWRsZTsKK30KKworV2ViUGFnZTo6fldlYlBhZ2UoKQoreworICAg
IEFTU0VSVCghbV9wYWdlKTsKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKExvYWRpbmcsICJkZXN0
cnVjdG9yOiIpOworCisgICAgaWYgKCFtX2NvcnNEaXNhYmxpbmdQYXR0ZXJucy5pc0VtcHR5KCkp
IHsKKyAgICAgICAgbV9jb3JzRGlzYWJsaW5nUGF0dGVybnMuY2xlYXIoKTsKKyAgICAgICAgc3lu
Y2hyb25pemVDT1JTRGlzYWJsaW5nUGF0dGVybnNXaXRoTmV0d29ya1Byb2Nlc3MoKTsKKyAgICB9
CisKKyAgICBwbGF0Zm9ybURldGFjaCgpOworICAgIAorICAgIG1fc2FuZGJveEV4dGVuc2lvblRy
YWNrZXIuaW52YWxpZGF0ZSgpOworCisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3IDogbV9wbHVn
aW5WaWV3cykKKyAgICAgICAgcGx1Z2luVmlldy0+d2ViUGFnZURlc3Ryb3llZCgpOworCisjaWYg
IVBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKG1faGVhZGVyQmFubmVyKQorICAgICAgICBt
X2hlYWRlckJhbm5lci0+ZGV0YWNoRnJvbVBhZ2UoKTsKKyAgICBpZiAobV9mb290ZXJCYW5uZXIp
CisgICAgICAgIG1fZm9vdGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOworI2VuZGlmIC8vICFQ
TEFURk9STShJT1NfRkFNSUxZKQorCisjaWZuZGVmIE5ERUJVRworICAgIHdlYlBhZ2VDb3VudGVy
LmRlY3JlbWVudCgpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEhBVkUo
VklTSUJJTElUWV9QUk9QQUdBVElPTl9WSUVXKQorICAgIGlmIChhdXRvKiBncHVQcm9jZXNzQ29u
bmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmV4aXN0aW5nR1BVUHJvY2Vzc0Nvbm5l
Y3Rpb24oKSkKKyAgICAgICAgZ3B1UHJvY2Vzc0Nvbm5lY3Rpb24tPmRlc3Ryb3lWaXNpYmlsaXR5
UHJvcGFnYXRpb25Db250ZXh0Rm9yUGFnZSgqdGhpcyk7CisjZW5kaWYgLy8gRU5BQkxFKEdQVV9Q
Uk9DRVNTKQorICAgIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBp
ZiAobV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKQorICAgICAgICBtX3BsYXliYWNrU2Vzc2lvbk1h
bmFnZXItPmludmFsaWRhdGUoKTsKKworICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIp
CisgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTWFuYWdlci0+aW52YWxpZGF0ZSgpOworI2VuZGlm
CisKKyAgICBmb3IgKGF1dG8mIGNvbXBsZXRpb25IYW5kbGVyIDogc3RkOjpleGNoYW5nZShtX21h
cmtMYXllcnNBc1ZvbGF0aWxlQ29tcGxldGlvbkhhbmRsZXJzLCB7IH0pKQorICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcihmYWxzZSk7Cit9CisKK0lQQzo6Q29ubmVjdGlvbiogV2ViUGFnZTo6bWVz
c2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdAoreworICAgIHJldHVybiBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpOworfQorCit1aW50NjRfdCBXZWJQ
YWdlOjptZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGlk
ZW50aWZpZXIoKS50b1VJbnQ2NCgpOworfQorCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCit2
b2lkIFdlYlBhZ2U6OnNldEluamVjdGVkQnVuZGxlQ29udGV4dE1lbnVDbGllbnQoc3RkOjp1bmlx
dWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VDb250ZXh0TWVudUNsaWVudD4mJiBjb250
ZXh0TWVudUNsaWVudCkKK3sKKyAgICBpZiAoIWNvbnRleHRNZW51Q2xpZW50KSB7CisgICAgICAg
IG1fY29udGV4dE1lbnVDbGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBh
Z2VDb250ZXh0TWVudUNsaWVudD4oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1f
Y29udGV4dE1lbnVDbGllbnQgPSBXVEZNb3ZlKGNvbnRleHRNZW51Q2xpZW50KTsKK30KKyNlbmRp
ZgorCit2b2lkIFdlYlBhZ2U6OnNldEluamVjdGVkQnVuZGxlRWRpdG9yQ2xpZW50KHN0ZDo6dW5p
cXVlX3B0cjxBUEk6OkluamVjdGVkQnVuZGxlOjpFZGl0b3JDbGllbnQ+JiYgZWRpdG9yQ2xpZW50
KQoreworICAgIGlmICghZWRpdG9yQ2xpZW50KSB7CisgICAgICAgIG1fZWRpdG9yQ2xpZW50ID0g
bWFrZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVuZGxlOjpFZGl0b3JDbGllbnQ+KCk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBtX2VkaXRvckNsaWVudCA9IFdURk1vdmUoZWRpdG9yQ2xp
ZW50KTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRJbmplY3RlZEJ1bmRsZUZvcm1DbGllbnQoc3Rk
Ojp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OkZvcm1DbGllbnQ+JiYgZm9ybUNsaWVu
dCkKK3sKKyAgICBpZiAoIWZvcm1DbGllbnQpIHsKKyAgICAgICAgbV9mb3JtQ2xpZW50ID0gbWFr
ZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVuZGxlOjpGb3JtQ2xpZW50PigpOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgbV9mb3JtQ2xpZW50ID0gV1RGTW92ZShmb3JtQ2xpZW50KTsKK30K
Kwordm9pZCBXZWJQYWdlOjpzZXRJbmplY3RlZEJ1bmRsZVBhZ2VMb2FkZXJDbGllbnQoc3RkOjp1
bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VMb2FkZXJDbGllbnQ+JiYgbG9hZGVy
Q2xpZW50KQoreworICAgIGlmICghbG9hZGVyQ2xpZW50KSB7CisgICAgICAgIG1fbG9hZGVyQ2xp
ZW50ID0gbWFrZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlTG9hZGVyQ2xpZW50Pigp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgbV9sb2FkZXJDbGllbnQgPSBXVEZNb3Zl
KGxvYWRlckNsaWVudCk7CisKKyAgICAvLyBJdCB3b3VsZCBiZSBuaWNlIHRvIGdldCByaWQgb2Yg
dGhpcyBjb2RlIGFuZCB0cmFuc2l0aW9uIGFsbCBjbGllbnRzIHRvIHVzaW5nIGRpZExheW91dCBp
bnN0ZWFkIG9mCisgICAgLy8gZGlkRmlyc3RMYXlvdXRJbkZyYW1lIGFuZCBkaWRGaXJzdFZpc3Vh
bGx5Tm9uRW1wdHlMYXlvdXRJbkZyYW1lLiBJbiB0aGUgbWVhbnRpbWUsIHRoaXMgaXMgcmVxdWly
ZWQKKyAgICAvLyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCisgICAgaWYgKGF1dG8gbWls
ZXN0b25lcyA9IG1fbG9hZGVyQ2xpZW50LT5sYXlvdXRNaWxlc3RvbmVzKCkpCisgICAgICAgIGxp
c3RlbkZvckxheW91dE1pbGVzdG9uZXMobWlsZXN0b25lcyk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6
aW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlUG9saWN5Q2xpZW50KFdLQnVuZGxlUGFnZVBvbGljeUNs
aWVudEJhc2UqIGNsaWVudCkKK3sKKyAgICBtX3BvbGljeUNsaWVudC5pbml0aWFsaXplKGNsaWVu
dCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0SW5qZWN0ZWRCdW5kbGVSZXNvdXJjZUxvYWRDbGll
bnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVu
dD4mJiBjbGllbnQpCit7CisgICAgaWYgKCFtX3Jlc291cmNlTG9hZENsaWVudCkKKyAgICAgICAg
bV9yZXNvdXJjZUxvYWRDbGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJl
c291cmNlTG9hZENsaWVudD4oKTsKKyAgICBlbHNlCisgICAgICAgIG1fcmVzb3VyY2VMb2FkQ2xp
ZW50ID0gV1RGTW92ZShjbGllbnQpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEluamVjdGVkQnVu
ZGxlVUlDbGllbnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNs
aWVudD4mJiB1aUNsaWVudCkKK3sKKyAgICBpZiAoIXVpQ2xpZW50KSB7CisgICAgICAgIG1fdWlD
bGllbnQgPSBtYWtlVW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudD4oKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1fdWlDbGllbnQgPSBXVEZNb3ZlKHVpQ2xp
ZW50KTsKK30KKworI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKK3ZvaWQgV2ViUGFnZTo6aW5p
dGlhbGl6ZUluamVjdGVkQnVuZGxlRnVsbFNjcmVlbkNsaWVudChXS0J1bmRsZVBhZ2VGdWxsU2Ny
ZWVuQ2xpZW50QmFzZSogY2xpZW50KQoreworICAgIG1fZnVsbFNjcmVlbkNsaWVudC5pbml0aWFs
aXplKGNsaWVudCk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJ
KQorCitSZWZQdHI8UGx1Z2luPiBXZWJQYWdlOjpjcmVhdGVQbHVnaW4oV2ViRnJhbWUqIGZyYW1l
LCBIVE1MUGx1Z0luRWxlbWVudCogcGx1Z2luRWxlbWVudCwgY29uc3QgUGx1Z2luOjpQYXJhbWV0
ZXJzJiBwYXJhbWV0ZXJzLCBTdHJpbmcmIG5ld01JTUVUeXBlKQoreworICAgIFN0cmluZyBmcmFt
ZVVSTFN0cmluZyA9IGZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KS0+cmVzcG9uc2VVUkwoKS5zdHJpbmcoKTsKKyAgICBTdHJpbmcgcGFnZVVSTFN0cmluZyA9IG1f
cGFnZS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2VVUkwo
KS5zdHJpbmcoKTsKKworICAgIGJvb2wgYWxsb3dPbmx5QXBwbGljYXRpb25QbHVnaW5zID0gIWZy
YW1lLT5jb3JlRnJhbWUoKS0+YXJlUGx1Z2luc0VuYWJsZWQoKTsKKworICAgIHVpbnQ2NF90IHBs
dWdpblByb2Nlc3NUb2tlbjsKKyAgICB1aW50MzJfdCBwbHVnaW5Mb2FkUG9saWN5OworICAgIFN0
cmluZyB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uOworICAgIGJvb2wgaXNVbnN1cHBvcnRlZDsK
KyAgICBpZiAoIXNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZpbmRQbHVnaW4ocGFy
YW1ldGVycy5taW1lVHlwZSwgcGFyYW1ldGVycy51cmwuc3RyaW5nKCksIGZyYW1lVVJMU3RyaW5n
LCBwYWdlVVJMU3RyaW5nLCBhbGxvd09ubHlBcHBsaWNhdGlvblBsdWdpbnMpLCBNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpGaW5kUGx1Z2luOjpSZXBseShwbHVnaW5Qcm9jZXNzVG9rZW4sIG5ld01J
TUVUeXBlLCBwbHVnaW5Mb2FkUG9saWN5LCB1bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uLCBpc1Vu
c3VwcG9ydGVkKSkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgUGx1Z2luTW9kdWxl
TG9hZFBvbGljeSBsb2FkUG9saWN5ID0gc3RhdGljX2Nhc3Q8UGx1Z2luTW9kdWxlTG9hZFBvbGlj
eT4ocGx1Z2luTG9hZFBvbGljeSk7CisgICAgYm9vbCBpc0Jsb2NrZWRQbHVnaW4gPSAobG9hZFBv
bGljeSA9PSBQbHVnaW5Nb2R1bGVCbG9ja2VkRm9yU2VjdXJpdHkpIHx8IChsb2FkUG9saWN5ID09
IFBsdWdpbk1vZHVsZUJsb2NrZWRGb3JDb21wYXRpYmlsaXR5KTsKKworICAgIGlmIChpc1Vuc3Vw
cG9ydGVkIHx8IGlzQmxvY2tlZFBsdWdpbiB8fCAhcGx1Z2luUHJvY2Vzc1Rva2VuKSB7CisjaWYg
RU5BQkxFKFBERktJVF9QTFVHSU4pCisgICAgICAgIGlmIChzaG91bGRVc2VQREZQbHVnaW4ocGFy
YW1ldGVycy5taW1lVHlwZSwgcGFyYW1ldGVycy51cmwucGF0aCgpKSkKKyAgICAgICAgICAgIHJl
dHVybiBQREZQbHVnaW46OmNyZWF0ZSgqZnJhbWUsIHBsdWdpbkVsZW1lbnQpOworI2VuZGlmCisg
ICAgfQorCisgICAgaWYgKGlzVW5zdXBwb3J0ZWQpIHsKKyAgICAgICAgcGx1Z2luRWxlbWVudC0+
c2V0UmVwbGFjZW1lbnQoUmVuZGVyRW1iZWRkZWRPYmplY3Q6OlVuc3VwcG9ydGVkUGx1Z2luLCB1
bmF2YWlsYWJpbGl0eURlc2NyaXB0aW9uKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAg
fQorCisgICAgaWYgKGlzQmxvY2tlZFBsdWdpbikgeworICAgICAgICBib29sIGlzUmVwbGFjZW1l
bnRPYnNjdXJlZCA9IHBsdWdpbkVsZW1lbnQtPnNldFJlcGxhY2VtZW50KFJlbmRlckVtYmVkZGVk
T2JqZWN0OjpJbnNlY3VyZVBsdWdpblZlcnNpb24sIHVuYXZhaWxhYmlsaXR5RGVzY3JpcHRpb24p
OworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZEJsb2NrSW5zZWN1cmVQ
bHVnaW5WZXJzaW9uKHBhcmFtZXRlcnMubWltZVR5cGUsIHBhcmFtZXRlcnMudXJsLnN0cmluZygp
LCBmcmFtZVVSTFN0cmluZywgcGFnZVVSTFN0cmluZywgaXNSZXBsYWNlbWVudE9ic2N1cmVkKSk7
CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIGlmICghcGx1Z2luUHJvY2Vz
c1Rva2VuKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJldHVybiBQbHVnaW5Qcm94
eTo6Y3JlYXRlKHBsdWdpblByb2Nlc3NUb2tlbik7Cit9CisjZW5kaWYgLy8gRU5BQkxFKE5FVFND
QVBFX1BMVUdJTl9BUEkpCisKKyNpZiBFTkFCTEUoV0VCR0wpICYmICFQTEFURk9STShNQUMpCitX
ZWJDb3JlOjpXZWJHTExvYWRQb2xpY3kgV2ViUGFnZTo6d2ViR0xQb2xpY3lGb3JVUkwoV2ViRnJh
bWUqLCBjb25zdCBVUkwmKQoreworICAgIHJldHVybiBXZWJHTExvYWRQb2xpY3k6OldlYkdMQWxs
b3dDcmVhdGlvbjsKK30KKworV2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IFdlYlBhZ2U6OnJlc29s
dmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFtZSosIGNvbnN0IFVSTCYpCit7CisgICAgcmV0dXJu
IFdlYkdMTG9hZFBvbGljeTo6V2ViR0xBbGxvd0NyZWF0aW9uOworfQorI2VuZGlmCisKK2Jvb2wg
V2ViUGFnZTo6aGFzUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlKCkgY29uc3QKK3sKKyAgICByZXR1
cm4gbV9wZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGVTdGF0dXMgIT0gUGVuZGluZ0VkaXRvclN0YXRl
VXBkYXRlU3RhdHVzOjpOb3RTY2hlZHVsZWQ7Cit9CisKK0VkaXRvclN0YXRlIFdlYlBhZ2U6OmVk
aXRvclN0YXRlKFNob3VsZFBlcmZvcm1MYXlvdXQgc2hvdWxkUGVyZm9ybUxheW91dCkgY29uc3QK
K3sKKyAgICAvLyBSZWYgdGhlIGZyYW1lIGJlY2F1c2UgdGhpcyBmdW5jdGlvbiBtYXkgcGVyZm9y
bSBsYXlvdXQsIHdoaWNoIG1heSBjYXVzZSBmcmFtZSBkZXN0cnVjdGlvbi4KKyAgICBSZWY8RnJh
bWU+IGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNl
ZE9yTWFpbkZyYW1lKCk7CisKKyAgICBFZGl0b3JTdGF0ZSByZXN1bHQ7CisKKyAgICBpZiAoUGx1
Z2luVmlldyogcGx1Z2luVmlldyA9IGZvY3VzZWRQbHVnaW5WaWV3Rm9yRnJhbWUoZnJhbWUpKSB7
CisgICAgICAgIGlmICghcGx1Z2luVmlldy0+Z2V0U2VsZWN0aW9uU3RyaW5nKCkuaXNOdWxsKCkp
IHsKKyAgICAgICAgICAgIHJlc3VsdC5zZWxlY3Rpb25Jc05vbmUgPSBmYWxzZTsKKyAgICAgICAg
ICAgIHJlc3VsdC5zZWxlY3Rpb25Jc1JhbmdlID0gdHJ1ZTsKKyAgICAgICAgICAgIHJlc3VsdC5p
c0luUGx1Z2luID0gdHJ1ZTsKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIH0K
KyAgICB9CisKKyAgICBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxlY3Rpb24gPSBmcmFtZS0+
c2VsZWN0aW9uKCkuc2VsZWN0aW9uKCk7CisgICAgYXV0byYgZWRpdG9yID0gZnJhbWUtPmVkaXRv
cigpOworCisgICAgcmVzdWx0LmlkZW50aWZpZXIgPSBtX2xhc3RFZGl0b3JTdGF0ZUlkZW50aWZp
ZXIuaW5jcmVtZW50KCk7CisgICAgcmVzdWx0LnNlbGVjdGlvbklzTm9uZSA9IHNlbGVjdGlvbi5p
c05vbmUoKTsKKyAgICByZXN1bHQuc2VsZWN0aW9uSXNSYW5nZSA9IHNlbGVjdGlvbi5pc1Jhbmdl
KCk7CisgICAgcmVzdWx0LmlzQ29udGVudEVkaXRhYmxlID0gc2VsZWN0aW9uLmhhc0VkaXRhYmxl
U3R5bGUoKTsKKyAgICByZXN1bHQuaXNDb250ZW50UmljaGx5RWRpdGFibGUgPSBzZWxlY3Rpb24u
aXNDb250ZW50UmljaGx5RWRpdGFibGUoKTsKKyAgICByZXN1bHQuaXNJblBhc3N3b3JkRmllbGQg
PSBzZWxlY3Rpb24uaXNJblBhc3N3b3JkRmllbGQoKTsKKyAgICByZXN1bHQuaGFzQ29tcG9zaXRp
b24gPSBlZGl0b3IuaGFzQ29tcG9zaXRpb24oKTsKKyAgICByZXN1bHQuc2hvdWxkSWdub3JlU2Vs
ZWN0aW9uQ2hhbmdlcyA9IGVkaXRvci5pZ25vcmVTZWxlY3Rpb25DaGFuZ2VzKCkgfHwgKGVkaXRv
ci5jbGllbnQoKSAmJiAhZWRpdG9yLmNsaWVudCgpLT5zaG91bGRSZXZlYWxDdXJyZW50U2VsZWN0
aW9uQWZ0ZXJJbnNlcnRpb24oKSk7CisgICAgcmVzdWx0LnRyaWdnZXJlZEJ5QWNjZXNzaWJpbGl0
eVNlbGVjdGlvbkNoYW5nZSA9IG1fcGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVzID09IFBl
bmRpbmdFZGl0b3JTdGF0ZVVwZGF0ZVN0YXR1czo6U2NoZWR1bGVkRHVyaW5nQWNjZXNzaWJpbGl0
eVNlbGVjdGlvbkNoYW5nZSB8fCBtX2lzQ2hhbmdpbmdTZWxlY3Rpb25Gb3JBY2Nlc3NpYmlsaXR5
OworCisgICAgUmVmPERvY3VtZW50PiBkb2N1bWVudCA9ICpmcmFtZS0+ZG9jdW1lbnQoKTsKKyAg
ICByZXN1bHQub3JpZ2luSWRlbnRpZmllckZvclBhc3RlYm9hcmQgPSBkb2N1bWVudC0+b3JpZ2lu
SWRlbnRpZmllckZvclBhc3RlYm9hcmQoKTsKKworICAgIGlmIChyZXN1bHQuc2VsZWN0aW9uSXNS
YW5nZSkgeworICAgICAgICBhdXRvIHNlbGVjdGlvblJhbmdlID0gc2VsZWN0aW9uLnJhbmdlKCk7
CisgICAgICAgIHJlc3VsdC5zZWxlY3Rpb25Jc1JhbmdlSW5zaWRlSW1hZ2VPdmVybGF5ID0gc2Vs
ZWN0aW9uUmFuZ2UgJiYgSFRNTEVsZW1lbnQ6OmlzSW5zaWRlSW1hZ2VPdmVybGF5KCpzZWxlY3Rp
b25SYW5nZSk7CisgICAgfQorCisgICAgbV9sYXN0RWRpdG9yU3RhdGVXYXNDb250ZW50RWRpdGFi
bGUgPSByZXN1bHQuaXNDb250ZW50RWRpdGFibGUgPyBFZGl0b3JTdGF0ZUlzQ29udGVudEVkaXRh
YmxlOjpZZXMgOiBFZGl0b3JTdGF0ZUlzQ29udGVudEVkaXRhYmxlOjpObzsKKworICAgIGlmIChz
aG91bGRBdm9pZENvbXB1dGluZ1Bvc3RMYXlvdXREYXRhRm9yRWRpdG9yU3RhdGUoKSkgeworICAg
ICAgICBnZXRQbGF0Zm9ybUVkaXRvclN0YXRlKGZyYW1lLCByZXN1bHQpOworICAgICAgICByZXR1
cm4gcmVzdWx0OworICAgIH0KKworICAgIGlmIChzaG91bGRQZXJmb3JtTGF5b3V0ID09IFNob3Vs
ZFBlcmZvcm1MYXlvdXQ6OlllcyB8fCByZXF1aXJlc1Bvc3RMYXlvdXREYXRhRm9yRWRpdG9yU3Rh
dGUoZnJhbWUpKQorICAgICAgICBkb2N1bWVudC0+dXBkYXRlTGF5b3V0KCk7IC8vIE1heSBjYXVz
ZSBkb2N1bWVudCBkZXN0cnVjdGlvbgorCisgICAgaWYgKGF1dG8qIGZyYW1lVmlldyA9IGRvY3Vt
ZW50LT52aWV3KCk7IGZyYW1lVmlldyAmJiAhZnJhbWVWaWV3LT5uZWVkc0xheW91dCgpKSB7Cisg
ICAgICAgIHJlc3VsdC5pc01pc3NpbmdQb3N0TGF5b3V0RGF0YSA9IGZhbHNlOworCisgICAgICAg
IGF1dG8mIHBvc3RMYXlvdXREYXRhID0gcmVzdWx0LnBvc3RMYXlvdXREYXRhKCk7CisgICAgICAg
IHBvc3RMYXlvdXREYXRhLmNhbkN1dCA9IGVkaXRvci5jYW5DdXQoKTsKKyAgICAgICAgcG9zdExh
eW91dERhdGEuY2FuQ29weSA9IGVkaXRvci5jYW5Db3B5KCk7CisgICAgICAgIHBvc3RMYXlvdXRE
YXRhLmNhblBhc3RlID0gZWRpdG9yLmNhblBhc3RlKCk7CisKKyAgICAgICAgaWYgKG1fbmVlZHNG
b250QXR0cmlidXRlcykKKyAgICAgICAgICAgIHBvc3RMYXlvdXREYXRhLmZvbnRBdHRyaWJ1dGVz
ID0gZWRpdG9yLmZvbnRBdHRyaWJ1dGVzQXRTZWxlY3Rpb25TdGFydCgpOworICAgIH0KKworICAg
IGdldFBsYXRmb3JtRWRpdG9yU3RhdGUoZnJhbWUsIHJlc3VsdCk7CisKKyAgICByZXR1cm4gcmVz
dWx0OworfQorCit2b2lkIFdlYlBhZ2U6OmNoYW5nZUZvbnRBdHRyaWJ1dGVzKFdlYkNvcmU6OkZv
bnRBdHRyaWJ1dGVDaGFuZ2VzJiYgY2hhbmdlcykKK3sKKyAgICBSZWYgZnJhbWUgPSBDaGVja2Vk
UmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAg
ICBpZiAoZnJhbWUtPnNlbGVjdGlvbigpLnNlbGVjdGlvbigpLmlzQ29udGVudEVkaXRhYmxlKCkp
CisgICAgICAgIGZyYW1lLT5lZGl0b3IoKS5hcHBseVN0eWxlVG9TZWxlY3Rpb24oY2hhbmdlcy5j
cmVhdGVFZGl0aW5nU3R5bGUoKSwgY2hhbmdlcy5lZGl0QWN0aW9uKCksIEVkaXRvcjo6Q29sb3JG
aWx0ZXJNb2RlOjpJbnZlcnRDb2xvcik7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2hhbmdlRm9udChX
ZWJDb3JlOjpGb250Q2hhbmdlcyYmIGNoYW5nZXMpCit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tl
ZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7Cisg
ICAgaWYgKGZyYW1lLT5zZWxlY3Rpb24oKS5zZWxlY3Rpb24oKS5pc0NvbnRlbnRFZGl0YWJsZSgp
KQorICAgICAgICBmcmFtZS0+ZWRpdG9yKCkuYXBwbHlTdHlsZVRvU2VsZWN0aW9uKGNoYW5nZXMu
Y3JlYXRlRWRpdGluZ1N0eWxlKCksIEVkaXRBY3Rpb246OlNldEZvbnQsIEVkaXRvcjo6Q29sb3JG
aWx0ZXJNb2RlOjpJbnZlcnRDb2xvcik7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZXhlY3V0ZUVkaXRD
b21tYW5kV2l0aENhbGxiYWNrKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUsIGNvbnN0IFN0cmlu
ZyYgYXJndW1lbnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikKK3sKKyAgICBleGVjdXRlRWRpdENvbW1hbmQoY29tbWFuZE5hbWUsIGFyZ3VtZW50KTsKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcigpOworfQorCit2b2lkIFdlYlBhZ2U6OnNlbGVjdEFsbCgpCit7
CisgICAgZXhlY3V0ZUVkaXRpbmdDb21tYW5kKCJTZWxlY3RBbGwiX3MsIHsgfSk7CisgICAgcGxh
dGZvcm1EaWRTZWxlY3RBbGwoKTsKK30KKworYm9vbCBXZWJQYWdlOjpzaG91bGREaXNwYXRjaFN5
bnRoZXRpY01vdXNlRXZlbnRzV2hlbk1vZGlmeWluZ1NlbGVjdGlvbigpIGNvbnN0Cit7CisgICAg
YXV0byogZG9jdW1lbnQgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLmRvY3VtZW50KCk7CisgICAgcmV0
dXJuIGRvY3VtZW50ICYmIGRvY3VtZW50LT5xdWlya3MoKS5zaG91bGREaXNwYXRjaFN5bnRoZXRp
Y01vdXNlRXZlbnRzV2hlbk1vZGlmeWluZ1NlbGVjdGlvbigpOworfQorCisjaWYgIVBMQVRGT1JN
KElPU19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZTo6cGxhdGZvcm1EaWRTZWxlY3RBbGwoKQorewor
fQorCisjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZTo6dXBk
YXRlRWRpdG9yU3RhdGVBZnRlckxheW91dElmRWRpdGFiaWxpdHlDaGFuZ2VkKCkKK3sKKyAgICAv
LyBGSVhNRTogV2Ugc2hvdWxkIHVwZGF0ZSBFZGl0b3JTdGF0ZUlzQ29udGVudEVkaXRhYmxlIHRv
IHRyYWNrIHdoZXRoZXIgdGhlIHN0YXRlIGlzIHJpY2hseQorICAgIC8vIGVkaXRhYmxlIG9yIHBs
YWludHRleHQtb25seS4KKyAgICBpZiAobV9sYXN0RWRpdG9yU3RhdGVXYXNDb250ZW50RWRpdGFi
bGUgPT0gRWRpdG9yU3RhdGVJc0NvbnRlbnRFZGl0YWJsZTo6VW5zZXQpCisgICAgICAgIHJldHVy
bjsKKworICAgIGlmIChoYXNQZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGUoKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxl
cigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAgYXV0byBpc0VkaXRhYmxlID0gZnJhbWUt
PnNlbGVjdGlvbigpLnNlbGVjdGlvbigpLmhhc0VkaXRhYmxlU3R5bGUoKSA/IEVkaXRvclN0YXRl
SXNDb250ZW50RWRpdGFibGU6OlllcyA6IEVkaXRvclN0YXRlSXNDb250ZW50RWRpdGFibGU6Ok5v
OworICAgIGlmIChtX2xhc3RFZGl0b3JTdGF0ZVdhc0NvbnRlbnRFZGl0YWJsZSAhPSBpc0VkaXRh
YmxlKQorICAgICAgICBzY2hlZHVsZUZ1bGxFZGl0b3JTdGF0ZVVwZGF0ZSgpOworfQorCitzdGF0
aWMgT3B0aW9uU2V0PFJlbmRlckFzVGV4dEZsYWc+IHRvUmVuZGVyQXNUZXh0RmxhZ3ModW5zaWdu
ZWQgb3B0aW9ucykKK3sKKyAgICBPcHRpb25TZXQ8UmVuZGVyQXNUZXh0RmxhZz4gZmxhZ3M7CisK
KyAgICBpZiAob3B0aW9ucyAmIFJlbmRlclRyZWVTaG93QWxsTGF5ZXJzKQorICAgICAgICBmbGFn
cy5hZGQoUmVuZGVyQXNUZXh0RmxhZzo6U2hvd0FsbExheWVycyk7CisgICAgaWYgKG9wdGlvbnMg
JiBSZW5kZXJUcmVlU2hvd0xheWVyTmVzdGluZykKKyAgICAgICAgZmxhZ3MuYWRkKFJlbmRlckFz
VGV4dEZsYWc6OlNob3dMYXllck5lc3RpbmcpOworICAgIGlmIChvcHRpb25zICYgUmVuZGVyVHJl
ZVNob3dDb21wb3NpdGVkTGF5ZXJzKQorICAgICAgICBmbGFncy5hZGQoUmVuZGVyQXNUZXh0Rmxh
Zzo6U2hvd0NvbXBvc2l0ZWRMYXllcnMpOworICAgIGlmIChvcHRpb25zICYgUmVuZGVyVHJlZVNo
b3dPdmVyZmxvdykKKyAgICAgICAgZmxhZ3MuYWRkKFJlbmRlckFzVGV4dEZsYWc6OlNob3dPdmVy
Zmxvdyk7CisgICAgaWYgKG9wdGlvbnMgJiBSZW5kZXJUcmVlU2hvd1NWR0dlb21ldHJ5KQorICAg
ICAgICBmbGFncy5hZGQoUmVuZGVyQXNUZXh0RmxhZzo6U2hvd1NWR0dlb21ldHJ5KTsKKyAgICBp
ZiAob3B0aW9ucyAmIFJlbmRlclRyZWVTaG93TGF5ZXJGcmFnbWVudHMpCisgICAgICAgIGZsYWdz
LmFkZChSZW5kZXJBc1RleHRGbGFnOjpTaG93TGF5ZXJGcmFnbWVudHMpOworCisgICAgcmV0dXJu
IGZsYWdzOworfQorCitTdHJpbmcgV2ViUGFnZTo6cmVuZGVyVHJlZUV4dGVybmFsUmVwcmVzZW50
YXRpb24odW5zaWduZWQgb3B0aW9ucykgY29uc3QKK3sKKyAgICByZXR1cm4gZXh0ZXJuYWxSZXBy
ZXNlbnRhdGlvbihtX21haW5GcmFtZS0+Y29yZUZyYW1lKCksIHRvUmVuZGVyQXNUZXh0RmxhZ3Mo
b3B0aW9ucykpOworfQorCitTdHJpbmcgV2ViUGFnZTo6cmVuZGVyVHJlZUV4dGVybmFsUmVwcmVz
ZW50YXRpb25Gb3JQcmludGluZygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGV4dGVybmFsUmVwcmVz
ZW50YXRpb24obV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLCB7IFJlbmRlckFzVGV4dEZsYWc6OlBy
aW50aW5nTW9kZSB9KTsKK30KKwordWludDY0X3QgV2ViUGFnZTo6cmVuZGVyVHJlZVNpemUoKSBj
b25zdAoreworICAgIGlmICghbV9wYWdlKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
bV9wYWdlLT5yZW5kZXJUcmVlU2l6ZSgpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEhhc1Jlc291
cmNlTG9hZENsaWVudChib29sIGhhcykKK3sKKyAgICBpZiAobV9wYWdlKQorICAgICAgICBtX3Bh
Z2UtPnNldEhhc1Jlc291cmNlTG9hZENsaWVudChoYXMpOworfQorCit2b2lkIFdlYlBhZ2U6OnNl
dENhblVzZUNyZWRlbnRpYWxTdG9yYWdlKGJvb2wgaGFzKQoreworICAgIGlmIChtX3BhZ2UpCisg
ICAgICAgIG1fcGFnZS0+c2V0Q2FuVXNlQ3JlZGVudGlhbFN0b3JhZ2UoaGFzKTsKK30KKwordm9p
ZCBXZWJQYWdlOjpzZXRUcmFja3NSZXBhaW50cyhib29sIHRyYWNrUmVwYWludHMpCit7CisgICAg
aWYgKEZyYW1lVmlldyogdmlldyA9IG1haW5GcmFtZVZpZXcoKSkKKyAgICAgICAgdmlldy0+c2V0
VHJhY2tzUmVwYWludHModHJhY2tSZXBhaW50cyk7Cit9CisKK2Jvb2wgV2ViUGFnZTo6aXNUcmFj
a2luZ1JlcGFpbnRzKCkgY29uc3QKK3sKKyAgICBpZiAoRnJhbWVWaWV3KiB2aWV3ID0gbWFpbkZy
YW1lVmlldygpKQorICAgICAgICByZXR1cm4gdmlldy0+aXNUcmFja2luZ1JlcGFpbnRzKCk7CisK
KyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVzZXRUcmFja2VkUmVwYWlu
dHMoKQoreworICAgIGlmIChGcmFtZVZpZXcqIHZpZXcgPSBtYWluRnJhbWVWaWV3KCkpCisgICAg
ICAgIHZpZXctPnJlc2V0VHJhY2tlZFJlcGFpbnRzKCk7Cit9CisKK1JlZjxBUEk6OkFycmF5PiBX
ZWJQYWdlOjp0cmFja2VkUmVwYWludFJlY3RzKCkKK3sKKyAgICBGcmFtZVZpZXcqIHZpZXcgPSBt
YWluRnJhbWVWaWV3KCk7CisgICAgaWYgKCF2aWV3KQorICAgICAgICByZXR1cm4gQVBJOjpBcnJh
eTo6Y3JlYXRlKCk7CisKKyAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4gcmVwYWludFJl
Y3RzOworICAgIHJlcGFpbnRSZWN0cy5yZXNlcnZlSW5pdGlhbENhcGFjaXR5KHZpZXctPnRyYWNr
ZWRSZXBhaW50UmVjdHMoKS5zaXplKCkpOworCisgICAgZm9yIChjb25zdCBhdXRvJiByZXBhaW50
UmVjdCA6IHZpZXctPnRyYWNrZWRSZXBhaW50UmVjdHMoKSkKKyAgICAgICAgcmVwYWludFJlY3Rz
LnVuY2hlY2tlZEFwcGVuZChBUEk6OlJlY3Q6OmNyZWF0ZSh0b0FQSShyZXBhaW50UmVjdCkpKTsK
KworICAgIHJldHVybiBBUEk6OkFycmF5OjpjcmVhdGUoV1RGTW92ZShyZXBhaW50UmVjdHMpKTsK
K30KKworUGx1Z2luVmlldyogV2ViUGFnZTo6Zm9jdXNlZFBsdWdpblZpZXdGb3JGcmFtZShGcmFt
ZSYgZnJhbWUpCit7CisgICAgaWYgKCFpczxQbHVnaW5Eb2N1bWVudD4oZnJhbWUuZG9jdW1lbnQo
KSkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgYXV0byYgcGx1Z2luRG9jdW1lbnQg
PSBkb3duY2FzdDxQbHVnaW5Eb2N1bWVudD4oKmZyYW1lLmRvY3VtZW50KCkpOworICAgIGlmIChw
bHVnaW5Eb2N1bWVudC5mb2N1c2VkRWxlbWVudCgpICE9IHBsdWdpbkRvY3VtZW50LnBsdWdpbkVs
ZW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICByZXR1cm4gcGx1Z2luVmll
d0ZvckZyYW1lKCZmcmFtZSk7Cit9CisKK1BsdWdpblZpZXcqIFdlYlBhZ2U6OnBsdWdpblZpZXdG
b3JGcmFtZShGcmFtZSogZnJhbWUpCit7CisgICAgaWYgKCFmcmFtZSB8fCAhaXM8UGx1Z2luRG9j
dW1lbnQ+KGZyYW1lLT5kb2N1bWVudCgpKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAg
ICBhdXRvJiBkb2N1bWVudCA9IGRvd25jYXN0PFBsdWdpbkRvY3VtZW50PigqZnJhbWUtPmRvY3Vt
ZW50KCkpOworICAgIHJldHVybiBzdGF0aWNfY2FzdDxQbHVnaW5WaWV3Kj4oZG9jdW1lbnQucGx1
Z2luV2lkZ2V0KCkpOworfQorCit2b2lkIFdlYlBhZ2U6OmV4ZWN1dGVFZGl0aW5nQ29tbWFuZChj
b25zdCBTdHJpbmcmIGNvbW1hbmROYW1lLCBjb25zdCBTdHJpbmcmIGFyZ3VtZW50KQoreworICAg
IHBsYXRmb3JtV2lsbFBlcmZvcm1FZGl0aW5nQ29tbWFuZCgpOworCisgICAgUmVmIGZyYW1lID0g
Q2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1l
KCk7CisKKyAgICBpZiAoUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IGZvY3VzZWRQbHVnaW5WaWV3
Rm9yRnJhbWUoZnJhbWUpKSB7CisgICAgICAgIHBsdWdpblZpZXctPmhhbmRsZUVkaXRpbmdDb21t
YW5kKGNvbW1hbmROYW1lLCBhcmd1bWVudCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAg
CisgICAgZnJhbWUtPmVkaXRvcigpLmNvbW1hbmQoY29tbWFuZE5hbWUpLmV4ZWN1dGUoYXJndW1l
bnQpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEVkaXRhYmxlKGJvb2wgZWRpdGFibGUpCit7Cisg
ICAgbV9wYWdlLT5zZXRFZGl0YWJsZShlZGl0YWJsZSk7CisgICAgbV9wYWdlLT5zZXRUYWJLZXlD
eWNsZXNUaHJvdWdoRWxlbWVudHMoIWVkaXRhYmxlKTsKKyAgICBSZWYgZnJhbWUgPSBDaGVja2Vk
UmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAg
ICBpZiAoZWRpdGFibGUpIHsKKyAgICAgICAgZnJhbWUtPmVkaXRvcigpLmFwcGx5RWRpdGluZ1N0
eWxlVG9Cb2R5RWxlbWVudCgpOworICAgICAgICAvLyBJZiB0aGUgcGFnZSBpcyBtYWRlIGVkaXRh
YmxlIGFuZCB0aGUgc2VsZWN0aW9uIGlzIGVtcHR5LCBzZXQgaXQgdG8gc29tZXRoaW5nLgorICAg
ICAgICBpZiAoZnJhbWUtPnNlbGVjdGlvbigpLmlzTm9uZSgpKQorICAgICAgICAgICAgZnJhbWUt
PnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbkZyb21Ob25lKCk7CisgICAgfQorfQorCit2b2lkIFdl
YlBhZ2U6OmluY3JlYXNlTGlzdExldmVsKCkKK3sKKyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVm
KG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBm
cmFtZS0+ZWRpdG9yKCkuaW5jcmVhc2VTZWxlY3Rpb25MaXN0TGV2ZWwoKTsKK30KKwordm9pZCBX
ZWJQYWdlOjpkZWNyZWFzZUxpc3RMZXZlbCgpCit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJl
ZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAg
ZnJhbWUtPmVkaXRvcigpLmRlY3JlYXNlU2VsZWN0aW9uTGlzdExldmVsKCk7Cit9CisKK3ZvaWQg
V2ViUGFnZTo6Y2hhbmdlTGlzdFR5cGUoKQoreworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYo
bV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGZy
YW1lLT5lZGl0b3IoKS5jaGFuZ2VTZWxlY3Rpb25MaXN0VHlwZSgpOworfQorCit2b2lkIFdlYlBh
Z2U6OnNldEJhc2VXcml0aW5nRGlyZWN0aW9uKFdyaXRpbmdEaXJlY3Rpb24gZGlyZWN0aW9uKQor
eworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSkt
PmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGZyYW1lLT5lZGl0b3IoKS5zZXRCYXNlV3JpdGlu
Z0RpcmVjdGlvbihkaXJlY3Rpb24pOworfQorCitib29sIFdlYlBhZ2U6OmlzRWRpdGluZ0NvbW1h
bmRFbmFibGVkKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUpCit7CisgICAgUmVmIGZyYW1lID0g
Q2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1l
KCk7CisKKyAgICBpZiAoUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IGZvY3VzZWRQbHVnaW5WaWV3
Rm9yRnJhbWUoZnJhbWUpKQorICAgICAgICByZXR1cm4gcGx1Z2luVmlldy0+aXNFZGl0aW5nQ29t
bWFuZEVuYWJsZWQoY29tbWFuZE5hbWUpOworICAgIAorICAgIEVkaXRvcjo6Q29tbWFuZCBjb21t
YW5kID0gZnJhbWUtPmVkaXRvcigpLmNvbW1hbmQoY29tbWFuZE5hbWUpOworICAgIHJldHVybiBj
b21tYW5kLmlzU3VwcG9ydGVkKCkgJiYgY29tbWFuZC5pc0VuYWJsZWQoKTsKK30KKyAgICAKK3Zv
aWQgV2ViUGFnZTo6Y2xlYXJNYWluRnJhbWVOYW1lKCkKK3sKKyAgICBpZiAoRnJhbWUqIGZyYW1l
ID0gbWFpbkZyYW1lKCkpCisgICAgICAgIGZyYW1lLT50cmVlKCkuY2xlYXJOYW1lKCk7Cit9CisK
K3ZvaWQgV2ViUGFnZTo6ZW50ZXJBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZShHcmFwaGljc0xh
eWVyKiBsYXllcikKK3sKKyAgICBtX2RyYXdpbmdBcmVhLT5zZXRSb290Q29tcG9zaXRpbmdMYXll
cihsYXllcik7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZXhpdEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdN
b2RlKCkKK3sKKyAgICBtX2RyYXdpbmdBcmVhLT5zZXRSb290Q29tcG9zaXRpbmdMYXllcihudWxs
cHRyKTsKK30KKwordm9pZCBXZWJQYWdlOjpjbG9zZSgpCit7CisgICAgaWYgKG1faXNDbG9zZWQp
CisgICAgICAgIHJldHVybjsKKworICAgIFdFQlBBR0VfUkVMRUFTRV9MT0coTG9hZGluZywgImNs
b3NlOiIpOworCisgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpDbGVhclBhZ2VTcGVjaWZpY0RhdGEobV9pZGVudGlmaWVyKSwgMCk7
CisKKyAgICBtX2lzQ2xvc2VkID0gdHJ1ZTsKKworICAgIC8vIElmIHRoZXJlIGlzIHN0aWxsIG5v
IFVSTCwgdGhlbiB3ZSBuZXZlciBsb2FkZWQgYW55dGhpbmcgaW4gdGhpcyBwYWdlLCBzbyBub3Ro
aW5nIHRvIHJlcG9ydC4KKyAgICBpZiAoIW1haW5XZWJGcmFtZSgpLnVybCgpLmlzRW1wdHkoKSkK
KyAgICAgICAgcmVwb3J0VXNlZEZlYXR1cmVzKCk7CisKKyAgICBpZiAoV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkuaW5qZWN0ZWRCdW5kbGUoKSkKKyAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkuaW5qZWN0ZWRCdW5kbGUoKS0+d2lsbERlc3Ryb3lQYWdlKHRoaXMpOworCisgICAgaWYgKG1f
aW5zcGVjdG9yKSB7CisgICAgICAgIG1faW5zcGVjdG9yLT5kaXNjb25uZWN0RnJvbVBhZ2UoKTsK
KyAgICAgICAgbV9pbnNwZWN0b3IgPSBudWxscHRyOworICAgIH0KKworICAgIG1fcGFnZS0+aW5z
cGVjdG9yQ29udHJvbGxlcigpLmRpc2Nvbm5lY3RBbGxGcm9udGVuZHMoKTsKKworI2lmIEVOQUJM
RShGVUxMU0NSRUVOX0FQSSkKKyAgICBtX2Z1bGxTY3JlZW5NYW5hZ2VyID0gbnVsbHB0cjsKKyNl
bmRpZgorCisgICAgaWYgKG1fYWN0aXZlUG9wdXBNZW51KSB7CisgICAgICAgIG1fYWN0aXZlUG9w
dXBNZW51LT5kaXNjb25uZWN0RnJvbVBhZ2UoKTsKKyAgICAgICAgbV9hY3RpdmVQb3B1cE1lbnUg
PSBudWxscHRyOworICAgIH0KKworICAgIGlmIChtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3Rl
bmVyKSB7CisgICAgICAgIG1fYWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXItPmRpc2Nvbm5l
Y3RGcm9tUGFnZSgpOworICAgICAgICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyID0g
bnVsbHB0cjsKKyAgICB9CisKKyNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKyAgICBpZiAo
bV9hY3RpdmVDb2xvckNob29zZXIpIHsKKyAgICAgICAgbV9hY3RpdmVDb2xvckNob29zZXItPmRp
c2Nvbm5lY3RGcm9tUGFnZSgpOworICAgICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3NlciA9IG51bGxw
dHI7CisgICAgfQorI2VuZGlmCisKKyNpZiBQTEFURk9STShHVEspCisgICAgaWYgKG1fcHJpbnRP
cGVyYXRpb24pIHsKKyAgICAgICAgbV9wcmludE9wZXJhdGlvbi0+ZGlzY29ubmVjdEZyb21QYWdl
KCk7CisgICAgICAgIG1fcHJpbnRPcGVyYXRpb24gPSBudWxscHRyOworICAgIH0KKyNlbmRpZgor
CisjaWYgRU5BQkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIGlmIChtX2luc3RhbGxN
ZWRpYVBsdWdpbnNDYWxsYmFjaykgeworICAgICAgICBtX2luc3RhbGxNZWRpYVBsdWdpbnNDYWxs
YmFjay0+aW52YWxpZGF0ZSgpOworICAgICAgICBtX2luc3RhbGxNZWRpYVBsdWdpbnNDYWxsYmFj
ayA9IG51bGxwdHI7CisgICAgfQorI2VuZGlmCisKKyAgICBtX3NhbmRib3hFeHRlbnNpb25UcmFj
a2VyLmludmFsaWRhdGUoKTsKKworI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgbV90
ZXh0QXV0b1NpemluZ0FkanVzdG1lbnRUaW1lci5zdG9wKCk7CisjZW5kaWYKKworI2lmIEVOQUJM
RShDT05URVhUX01FTlVTKQorICAgIG1fY29udGV4dE1lbnVDbGllbnQgPSBtYWtlVW5pcXVlPEFQ
STo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VDb250ZXh0TWVudUNsaWVudD4oKTsKKyNlbmRpZgorICAg
IG1fZWRpdG9yQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVuZGxlOjpFZGl0b3JD
bGllbnQ+KCk7CisgICAgbV9mb3JtQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVu
ZGxlOjpGb3JtQ2xpZW50PigpOworICAgIG1fbG9hZGVyQ2xpZW50ID0gbWFrZVVuaXF1ZTxBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlTG9hZGVyQ2xpZW50PigpOworICAgIG1fcG9saWN5Q2xpZW50
LmluaXRpYWxpemUoMCk7CisgICAgbV9yZXNvdXJjZUxvYWRDbGllbnQgPSBtYWtlVW5pcXVlPEFQ
STo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudD4oKTsKKyAgICBtX3VpQ2xpZW50
ID0gbWFrZVVuaXF1ZTxBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ+KCk7CisjaWYg
RU5BQkxFKEZVTExTQ1JFRU5fQVBJKQorICAgIG1fZnVsbFNjcmVlbkNsaWVudC5pbml0aWFsaXpl
KDApOworI2VuZGlmCisKKyAgICBtX3ByaW50Q29udGV4dCA9IG51bGxwdHI7CisgICAgbV9tYWlu
RnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kZXRhY2hGcm9tUGFyZW50KCk7CisgICAgbV9k
cmF3aW5nQXJlYSA9IG51bGxwdHI7CisKKyAgICBEZWZlcnJlZFBhZ2VEZXN0cnVjdG9yOjpjcmVh
dGVEZWZlcnJlZFBhZ2VEZXN0cnVjdG9yKFdURk1vdmUobV9wYWdlKSwgdGhpcyk7CisKKyAgICBi
b29sIGlzUnVubmluZ01vZGFsID0gbV9pc1J1bm5pbmdNb2RhbDsKKyAgICBtX2lzUnVubmluZ01v
ZGFsID0gZmFsc2U7CisKKyAgICBhdXRvJiB3ZWJQcm9jZXNzID0gV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCk7CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgaWYgKG1fcmVtb3RlT2JqZWN0UmVnaXN0
cnkpCisgICAgICAgIG1fcmVtb3RlT2JqZWN0UmVnaXN0cnktPmNsb3NlKCk7CisgICAgQVNTRVJU
KCFtX3JlbW90ZU9iamVjdFJlZ2lzdHJ5KTsKKyNlbmRpZgorI2lmIEVOQUJMRShTQ1JPTExJTkdf
VEhSRUFEKQorICAgIGlmIChtX3VzZUFzeW5jU2Nyb2xsaW5nKQorICAgICAgICB3ZWJQcm9jZXNz
LmV2ZW50RGlzcGF0Y2hlcigpLnJlbW92ZVNjcm9sbGluZ1RyZWVGb3JQYWdlKHRoaXMpOworI2Vu
ZGlmCisgICAgd2ViUHJvY2Vzcy5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBh
Z2U6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9pZGVudGlmaWVyKTsKKyAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgb2JqZWN0IGRlc3RydWN0b3JzLCBhbmQgdGhlIG9i
amVjdHMgdGhlbXNlbHZlcyBzaG91bGQgYmUgbWVzc2FnZSByZWNlaXZlcnMuCisgICAgd2ViUHJv
Y2Vzcy5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYkluc3BlY3Rvcjo6bWVzc2Fn
ZVJlY2VpdmVyTmFtZSgpLCBtX2lkZW50aWZpZXIpOworICAgIHdlYlByb2Nlc3MucmVtb3ZlTWVz
c2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJJbnNwZWN0b3JVSTo6bWVzc2FnZVJlY2VpdmVyTmFt
ZSgpLCBtX2lkZW50aWZpZXIpOworICAgIHdlYlByb2Nlc3MucmVtb3ZlTWVzc2FnZVJlY2VpdmVy
KE1lc3NhZ2VzOjpSZW1vdGVXZWJJbnNwZWN0b3JVSTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBt
X2lkZW50aWZpZXIpOworI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKKyAgICB3ZWJQcm9jZXNz
LnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViRnVsbFNjcmVlbk1hbmFnZXI6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9pZGVudGlmaWVyKTsKKyNlbmRpZgorI2lmIFBMQVRGT1JN
KENPQ09BKSB8fCBQTEFURk9STShHVEspCisgICAgbV92aWV3R2VzdHVyZUdlb21ldHJ5Q29sbGVj
dG9yID0gbnVsbHB0cjsKKyNlbmRpZgorCisgICAgLy8gVGhlIFdlYlBhZ2UgY2FuIGJlIGRlc3Ry
b3llZCBieSB0aGlzIGNhbGwuCisgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucmVtb3ZlV2Vi
UGFnZShtX2lkZW50aWZpZXIpOworCisgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkudXBkYXRl
QWN0aXZlUGFnZXMobV9wcm9jZXNzRGlzcGxheU5hbWUpOworCisgICAgaWYgKGlzUnVubmluZ01v
ZGFsKQorICAgICAgICBSdW5Mb29wOjptYWluKCkuc3RvcCgpOworfQorCit2b2lkIFdlYlBhZ2U6
OnRyeUNsb3NlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRs
ZXIpCit7CisgICAgYm9vbCBzaG91bGRDbG9zZSA9IGNvcmVQYWdlKCktPnVzZXJJbnB1dEJyaWRn
ZSgpLnRyeUNsb3NlUGFnZSgpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKHNob3VsZENsb3NlKTsK
K30KKwordm9pZCBXZWJQYWdlOjpzZW5kQ2xvc2UoKQoreworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6Q2xvc2VQYWdlKCkpOworfQorCit2b2lkIFdlYlBhZ2U6OnN1c3BlbmRGb3JQ
cm9jZXNzU3dhcCgpCit7CisgICAgYXV0byBmYWlsZWRUb1N1c3BlbmQgPSBbdGhpcywgcHJvdGVj
dGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSB7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6RGlkRmFpbFRvU3VzcGVuZEFmdGVyUHJvY2Vzc1N3YXAoKSk7CisgICAgfTsKKwor
ICAgIGF1dG8qIGN1cnJlbnRIaXN0b3J5SXRlbSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+
bG9hZGVyKCkuaGlzdG9yeSgpLmN1cnJlbnRJdGVtKCk7CisgICAgaWYgKCFjdXJyZW50SGlzdG9y
eUl0ZW0pIHsKKyAgICAgICAgZmFpbGVkVG9TdXNwZW5kKCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyAgICBpZiAoIUJhY2tGb3J3YXJkQ2FjaGU6OnNpbmdsZXRvbigpLmFkZElmQ2FjaGVh
YmxlKCpjdXJyZW50SGlzdG9yeUl0ZW0sIGNvcmVQYWdlKCkpKSB7CisgICAgICAgIGZhaWxlZFRv
U3VzcGVuZCgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gQmFjay9mb3J3YXJk
IGNhY2hlIGRvZXMgbm90IGJyZWFrIHRoZSBvcGVuZXIgbGluayBmb3IgdGhlIG1haW4gZnJhbWUg
KG9ubHkgZG9lcyBzbyBmb3IgdGhlIHN1YmZyYW1lcykgYmVjYXVzZSB0aGUKKyAgICAvLyBtYWlu
IGZyYW1lIGlzIG5vcm1hbGx5IHJlLXVzZWQgZm9yIHRoZSBuYXZpZ2F0aW9uLiBIb3dldmVyLCBp
biB0aGUgY2FzZSBvZiBwcm9jZXNzLXN3YXBwaW5nLCB0aGUgbWFpbiBmcmFtZQorICAgIC8vIGlz
IG5vdyBob3N0ZWQgaW4gYW5vdGhlciBwcm9jZXNzIGFuZCB0aGUgb25lIGluIHRoaXMgcHJvY2Vz
cyBpcyBpbiB0aGUgY2FjaGUuCisgICAgaWYgKG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKSkKKyAg
ICAgICAgbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kZXRhY2hGcm9tQWxsT3Bl
bmVkRnJhbWVzKCk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFN1c3Bl
bmRBZnRlclByb2Nlc3NTd2FwKCkpOworfQorCit2b2lkIFdlYlBhZ2U6OmxvYWRVUkxJbkZyYW1l
KFVSTCYmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQpCit7CisgICAgV2ViRnJhbWUqIGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2Vi
RnJhbWUoZnJhbWVJRCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
ZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5sb2FkKEZyYW1lTG9hZFJlcXVlc3QoKmZyYW1l
LT5jb3JlRnJhbWUoKSwgUmVzb3VyY2VSZXF1ZXN0KHVybCwgcmVmZXJyZXIpKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6bG9hZERhdGFJbkZyYW1lKElQQzo6RGF0YVJlZmVyZW5jZSYmIGRhdGEsIFN0
cmluZyYmIE1JTUVUeXBlLCBTdHJpbmcmJiBlbmNvZGluZ05hbWUsIFVSTCYmIGJhc2VVUkwsIEZy
YW1lSWRlbnRpZmllciBmcmFtZUlEKQoreworICAgIGF1dG8qIGZyYW1lID0gV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAg
cmV0dXJuOworICAgIEFTU0VSVCgmbWFpbldlYkZyYW1lKCkgIT0gZnJhbWUpOworCisgICAgYXV0
byBzaGFyZWRCdWZmZXIgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShkYXRhLmRhdGEoKSwgZGF0YS5z
aXplKCkpOworICAgIFJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UoYmFzZVVSTCwgTUlNRVR5cGUs
IHNoYXJlZEJ1ZmZlci0+c2l6ZSgpLCBlbmNvZGluZ05hbWUpOworICAgIFN1YnN0aXR1dGVEYXRh
IHN1YnN0aXR1dGVEYXRhKFdURk1vdmUoc2hhcmVkQnVmZmVyKSwgYmFzZVVSTCwgV1RGTW92ZShy
ZXNwb25zZSksIFN1YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2liaWxpdHk6OkhpZGRl
bik7CisgICAgZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5sb2FkKEZyYW1lTG9hZFJlcXVl
c3QoKmZyYW1lLT5jb3JlRnJhbWUoKSwgUmVzb3VyY2VSZXF1ZXN0KGJhc2VVUkwpLCBXVEZNb3Zl
KHN1YnN0aXR1dGVEYXRhKSkpOworfQorCisjaWYgIVBMQVRGT1JNKENPQ09BKQordm9pZCBXZWJQ
YWdlOjpwbGF0Zm9ybURpZFJlY2VpdmVMb2FkUGFyYW1ldGVycyhjb25zdCBMb2FkUGFyYW1ldGVy
cyYgbG9hZFBhcmFtZXRlcnMpCit7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpsb2FkUmVx
dWVzdChMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQoreworICAgIHNldExhc3ROYXZp
Z2F0aW9uV2FzQXBwSW5pdGlhdGVkKGxvYWRQYXJhbWV0ZXJzLnJlcXVlc3QuaXNBcHBJbml0aWF0
ZWQoKSk7CisKKyNpZiBFTkFCTEUoQVBQX0JPVU5EX0RPTUFJTlMpCisgICAgc2V0SXNOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbihsb2FkUGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluLCAmbV9tYWluRnJhbWUuZ2V0KCkpOworI2VuZGlmCisKKyAgICBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVneSgpLnNldEV4aXN0aW5nTmV0d29ya1Jlc291cmNl
TG9hZElkZW50aWZpZXJUb1Jlc3VtZShsb2FkUGFyYW1ldGVycy5leGlzdGluZ05ldHdvcmtSZXNv
dXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUpOworICAgIGF1dG8gcmVzdW1pbmdMb2FkU2NvcGUg
PSBtYWtlU2NvcGVFeGl0KFtdIHsKKyAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2Vi
TG9hZGVyU3RyYXRlZ3koKS5zZXRFeGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
VG9SZXN1bWUoc3RkOjpudWxsb3B0KTsKKyAgICB9KTsKKworICAgIFNlbmRTdG9wUmVzcG9uc2l2
ZW5lc3NUaW1lciBzdG9wcGVyOworCisgICAgbV9wZW5kaW5nTmF2aWdhdGlvbklEID0gbG9hZFBh
cmFtZXRlcnMubmF2aWdhdGlvbklEOworICAgIG1fcGVuZGluZ1dlYnNpdGVQb2xpY2llcyA9IFdU
Rk1vdmUobG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzKTsKKworICAgIG1fc2FuZGJveEV4
dGVuc2lvblRyYWNrZXIuYmVnaW5Mb2FkKG1fbWFpbkZyYW1lLnB0cigpLCBXVEZNb3ZlKGxvYWRQ
YXJhbWV0ZXJzLnNhbmRib3hFeHRlbnNpb25IYW5kbGUpKTsKKworICAgIC8vIExldCB0aGUgSW5q
ZWN0ZWRCdW5kbGUga25vdyB3ZSBhcmUgYWJvdXQgdG8gc3RhcnQgdGhlIGxvYWQsIHBhc3Npbmcg
dGhlIHVzZXIgZGF0YSBmcm9tIHRoZSBVSVByb2Nlc3MKKyAgICAvLyB0byBhbGwgdGhlIGNsaWVu
dCB0byBzZXQgdXAgYW55IG5lZWRlZCBzdGF0ZS4KKyAgICBtX2xvYWRlckNsaWVudC0+d2lsbExv
YWRVUkxSZXF1ZXN0KCp0aGlzLCBsb2FkUGFyYW1ldGVycy5yZXF1ZXN0LCBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKGxvYWRQYXJhbWV0ZXJzLnVzZXJE
YXRhLm9iamVjdCgpKS5nZXQoKSk7CisKKyAgICBwbGF0Zm9ybURpZFJlY2VpdmVMb2FkUGFyYW1l
dGVycyhsb2FkUGFyYW1ldGVycyk7CisKKyAgICAvLyBJbml0YXRlIHRoZSBsb2FkIGluIFdlYkNv
cmUuCisgICAgRnJhbWVMb2FkUmVxdWVzdCBmcmFtZUxvYWRSZXF1ZXN0IHsgKm1fbWFpbkZyYW1l
LT5jb3JlRnJhbWUoKSwgbG9hZFBhcmFtZXRlcnMucmVxdWVzdCB9OworICAgIGZyYW1lTG9hZFJl
cXVlc3Quc2V0U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeShsb2FkUGFyYW1ldGVycy5zaG91
bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICBmcmFtZUxvYWRSZXF1ZXN0LnNldFNob3Vs
ZFRyZWF0QXNDb250aW51aW5nTG9hZChsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ29udGlu
dWluZ0xvYWQpOworICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0TG9ja0hpc3RvcnkobG9hZFBhcmFt
ZXRlcnMubG9ja0hpc3RvcnkpOworICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0TG9ja0JhY2tGb3J3
YXJkTGlzdChsb2FkUGFyYW1ldGVycy5sb2NrQmFja0ZvcndhcmRMaXN0KTsKKyAgICBmcmFtZUxv
YWRSZXF1ZXN0LnNldENsaWVudFJlZGlyZWN0U291cmNlRm9ySGlzdG9yeShsb2FkUGFyYW1ldGVy
cy5jbGllbnRSZWRpcmVjdFNvdXJjZUZvckhpc3RvcnkpOworICAgIGZyYW1lTG9hZFJlcXVlc3Qu
c2V0SXNSZXF1ZXN0RnJvbUNsaWVudE9yVXNlcklucHV0KCk7CisKKyAgICBjb3JlUGFnZSgpLT51
c2VySW5wdXRCcmlkZ2UoKS5sb2FkUmVxdWVzdChXVEZNb3ZlKGZyYW1lTG9hZFJlcXVlc3QpKTsK
KworICAgIEFTU0VSVCghbV9wZW5kaW5nTmF2aWdhdGlvbklEKTsKKyAgICBBU1NFUlQoIW1fcGVu
ZGluZ1dlYnNpdGVQb2xpY2llcyk7Cit9CisKKy8vIExvYWRSZXF1ZXN0V2FpdGluZ0ZvclByb2Nl
c3NMYXVuY2ggc2hvdWxkIG5ldmVyIGJlIHNlbnQgdG8gdGhlIFdlYlByb2Nlc3MuIEl0IG11c3Qg
YWx3YXlzIGJlIGNvbnZlcnRlZCB0byBhIExvYWRSZXF1ZXN0IG1lc3NhZ2UuCitOT19SRVRVUk4g
dm9pZCBXZWJQYWdlOjpsb2FkUmVxdWVzdFdhaXRpbmdGb3JQcm9jZXNzTGF1bmNoKExvYWRQYXJh
bWV0ZXJzJiYsIFVSTCYmLCBXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBib29sKQoreworICAgIFJF
TEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6bG9hZERhdGFJ
bXBsKHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIHNo
b3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNE
YXRhPiYmIHdlYnNpdGVQb2xpY2llcywgUmVmPFNoYXJlZEJ1ZmZlcj4mJiBzaGFyZWRCdWZmZXIs
IFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwg
Y29uc3QgVVJMJiB1bnJlYWNoYWJsZVVSTCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhLCBzdGQ6
Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluLCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5IHNlc3Np
b25IaXN0b3J5VmlzaWJpbGl0eSwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5KQoreworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykK
KyAgICBzZXRJc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKGlzTmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4sICZtX21haW5GcmFtZS5nZXQoKSk7CisjZW5kaWYKKworICAgIFNlbmRTdG9wUmVz
cG9uc2l2ZW5lc3NUaW1lciBzdG9wcGVyOworCisgICAgbV9wZW5kaW5nTmF2aWdhdGlvbklEID0g
bmF2aWdhdGlvbklEOworICAgIG1fcGVuZGluZ1dlYnNpdGVQb2xpY2llcyA9IFdURk1vdmUod2Vi
c2l0ZVBvbGljaWVzKTsKKworICAgIFN1YnN0aXR1dGVEYXRhIHN1YnN0aXR1dGVEYXRhKFdURk1v
dmUoc2hhcmVkQnVmZmVyKSwgdW5yZWFjaGFibGVVUkwsIHJlc3BvbnNlLCBzZXNzaW9uSGlzdG9y
eVZpc2liaWxpdHkpOworCisgICAgLy8gTGV0IHRoZSBJbmplY3RlZEJ1bmRsZSBrbm93IHdlIGFy
ZSBhYm91dCB0byBzdGFydCB0aGUgbG9hZCwgcGFzc2luZyB0aGUgdXNlciBkYXRhIGZyb20gdGhl
IFVJUHJvY2VzcworICAgIC8vIHRvIGFsbCB0aGUgY2xpZW50IHRvIHNldCB1cCBhbnkgbmVlZGVk
IHN0YXRlLgorICAgIG1fbG9hZGVyQ2xpZW50LT53aWxsTG9hZERhdGFSZXF1ZXN0KCp0aGlzLCBy
ZXF1ZXN0LCBjb25zdF9jYXN0PFNoYXJlZEJ1ZmZlcio+KHN1YnN0aXR1dGVEYXRhLmNvbnRlbnQo
KSksIHN1YnN0aXR1dGVEYXRhLm1pbWVUeXBlKCksIHN1YnN0aXR1dGVEYXRhLnRleHRFbmNvZGlu
ZygpLCBzdWJzdGl0dXRlRGF0YS5mYWlsaW5nVVJMKCksIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LnRyYW5zZm9ybUhhbmRsZXNUb09iamVjdHModXNlckRhdGEub2JqZWN0KCkpLmdldCgpKTsKKwor
ICAgIC8vIEluaXRhdGUgdGhlIGxvYWQgaW4gV2ViQ29yZS4KKyAgICBGcmFtZUxvYWRSZXF1ZXN0
IGZyYW1lTG9hZFJlcXVlc3QoKm1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKSwgcmVxdWVzdCwgc3Vi
c3RpdHV0ZURhdGEpOworICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0U2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeShzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5KTsKKyAgICBmcmFtZUxvYWRS
ZXF1ZXN0LnNldFNob3VsZFRyZWF0QXNDb250aW51aW5nTG9hZChzaG91bGRUcmVhdEFzQ29udGlu
dWluZ0xvYWQpOworICAgIGZyYW1lTG9hZFJlcXVlc3Quc2V0SXNSZXF1ZXN0RnJvbUNsaWVudE9y
VXNlcklucHV0KCk7CisgICAgbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5sb2Fk
KFdURk1vdmUoZnJhbWVMb2FkUmVxdWVzdCkpOworfQorCit2b2lkIFdlYlBhZ2U6OmxvYWREYXRh
KExvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCit7CisgICAgcGxhdGZvcm1EaWRSZWNl
aXZlTG9hZFBhcmFtZXRlcnMobG9hZFBhcmFtZXRlcnMpOworCisgICAgYXV0byBzaGFyZWRCdWZm
ZXIgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShsb2FkUGFyYW1ldGVycy5kYXRhLmRhdGEoKSwgbG9h
ZFBhcmFtZXRlcnMuZGF0YS5zaXplKCkpOworCisgICAgVVJMIGJhc2VVUkw7CisgICAgaWYgKGxv
YWRQYXJhbWV0ZXJzLmJhc2VVUkxTdHJpbmcuaXNFbXB0eSgpKQorICAgICAgICBiYXNlVVJMID0g
YWJvdXRCbGFua1VSTCgpOworICAgIGVsc2UgeworICAgICAgICBiYXNlVVJMID0gVVJMKFVSTCgp
LCBsb2FkUGFyYW1ldGVycy5iYXNlVVJMU3RyaW5nKTsKKyAgICAgICAgaWYgKGJhc2VVUkwuaXNW
YWxpZCgpICYmICFiYXNlVVJMLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKKyAgICAgICAgICAg
IExlZ2FjeVNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzSGFuZGxlZEJ5U2NoZW1l
SGFuZGxlcihiYXNlVVJMLnByb3RvY29sKCkudG9TdHJpbmcoKSk7CisgICAgfQorCisgICAgUmVz
b3VyY2VSZXNwb25zZSByZXNwb25zZShVUkwoKSwgbG9hZFBhcmFtZXRlcnMuTUlNRVR5cGUsIHNo
YXJlZEJ1ZmZlci0+c2l6ZSgpLCBsb2FkUGFyYW1ldGVycy5lbmNvZGluZ05hbWUpOworICAgIGxv
YWREYXRhSW1wbChsb2FkUGFyYW1ldGVycy5uYXZpZ2F0aW9uSUQsIGxvYWRQYXJhbWV0ZXJzLnNo
b3VsZFRyZWF0QXNDb250aW51aW5nTG9hZCwgV1RGTW92ZShsb2FkUGFyYW1ldGVycy53ZWJzaXRl
UG9saWNpZXMpLCBXVEZNb3ZlKHNoYXJlZEJ1ZmZlciksIFJlc291cmNlUmVxdWVzdChiYXNlVVJM
KSwgV1RGTW92ZShyZXNwb25zZSksIFVSTCgpLCBsb2FkUGFyYW1ldGVycy51c2VyRGF0YSwgbG9h
ZFBhcmFtZXRlcnMuaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiwgbG9hZFBhcmFtZXRlcnMu
c2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5LCBsb2FkUGFyYW1ldGVycy5zaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5KTsKK30KKwordm9pZCBXZWJQYWdlOjpsb2FkQWx0ZXJuYXRlSFRNTChMb2Fk
UGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQoreworICAgIHBsYXRmb3JtRGlkUmVjZWl2ZUxv
YWRQYXJhbWV0ZXJzKGxvYWRQYXJhbWV0ZXJzKTsKKworICAgIFVSTCBiYXNlVVJMID0gbG9hZFBh
cmFtZXRlcnMuYmFzZVVSTFN0cmluZy5pc0VtcHR5KCkgPyBhYm91dEJsYW5rVVJMKCkgOiBVUkwo
VVJMKCksIGxvYWRQYXJhbWV0ZXJzLmJhc2VVUkxTdHJpbmcpOworICAgIFVSTCB1bnJlYWNoYWJs
ZVVSTCA9IGxvYWRQYXJhbWV0ZXJzLnVucmVhY2hhYmxlVVJMU3RyaW5nLmlzRW1wdHkoKSA/IFVS
TCgpIDogVVJMKFVSTCgpLCBsb2FkUGFyYW1ldGVycy51bnJlYWNoYWJsZVVSTFN0cmluZyk7Cisg
ICAgVVJMIHByb3Zpc2lvbmFsTG9hZEVycm9yVVJMID0gbG9hZFBhcmFtZXRlcnMucHJvdmlzaW9u
YWxMb2FkRXJyb3JVUkxTdHJpbmcuaXNFbXB0eSgpID8gVVJMKCkgOiBVUkwoVVJMKCksIGxvYWRQ
YXJhbWV0ZXJzLnByb3Zpc2lvbmFsTG9hZEVycm9yVVJMU3RyaW5nKTsKKyAgICBhdXRvIHNoYXJl
ZEJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKGxvYWRQYXJhbWV0ZXJzLmRhdGEuZGF0YSgp
LCBsb2FkUGFyYW1ldGVycy5kYXRhLnNpemUoKSk7CisgICAgbV9tYWluRnJhbWUtPmNvcmVGcmFt
ZSgpLT5sb2FkZXIoKS5zZXRQcm92aXNpb25hbExvYWRFcnJvckJlaW5nSGFuZGxlZFVSTChwcm92
aXNpb25hbExvYWRFcnJvclVSTCk7CisKKyAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKFVS
TCgpLCBsb2FkUGFyYW1ldGVycy5NSU1FVHlwZSwgc2hhcmVkQnVmZmVyLT5zaXplKCksIGxvYWRQ
YXJhbWV0ZXJzLmVuY29kaW5nTmFtZSk7CisgICAgbG9hZERhdGFJbXBsKGxvYWRQYXJhbWV0ZXJz
Lm5hdmlnYXRpb25JRCwgbG9hZFBhcmFtZXRlcnMuc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2Fk
LCBXVEZNb3ZlKGxvYWRQYXJhbWV0ZXJzLndlYnNpdGVQb2xpY2llcyksIFdURk1vdmUoc2hhcmVk
QnVmZmVyKSwgUmVzb3VyY2VSZXF1ZXN0KGJhc2VVUkwpLCBXVEZNb3ZlKHJlc3BvbnNlKSwgdW5y
ZWFjaGFibGVVUkwsIGxvYWRQYXJhbWV0ZXJzLnVzZXJEYXRhLCBsb2FkUGFyYW1ldGVycy5pc05h
dmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YTo6U2Vzc2lv
bkhpc3RvcnlWaXNpYmlsaXR5OjpIaWRkZW4pOworICAgIG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUo
KS0+bG9hZGVyKCkuc2V0UHJvdmlzaW9uYWxMb2FkRXJyb3JCZWluZ0hhbmRsZWRVUkwoeyB9KTsK
K30KKwordm9pZCBXZWJQYWdlOjpsb2FkU2ltdWxhdGVkUmVxdWVzdEFuZFJlc3BvbnNlKExvYWRQ
YXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIFJlc291cmNlUmVzcG9uc2UmJiBzaW11bGF0ZWRS
ZXNwb25zZSkKK3sKKyAgICBzZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZChsb2FkUGFy
YW1ldGVycy5yZXF1ZXN0LmlzQXBwSW5pdGlhdGVkKCkpOworICAgIGF1dG8gc2hhcmVkQnVmZmVy
ID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUobG9hZFBhcmFtZXRlcnMuZGF0YS5kYXRhKCksIGxvYWRQ
YXJhbWV0ZXJzLmRhdGEuc2l6ZSgpKTsKKyAgICBsb2FkRGF0YUltcGwobG9hZFBhcmFtZXRlcnMu
bmF2aWdhdGlvbklELCBsb2FkUGFyYW1ldGVycy5zaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQs
IFdURk1vdmUobG9hZFBhcmFtZXRlcnMud2Vic2l0ZVBvbGljaWVzKSwgV1RGTW92ZShzaGFyZWRC
dWZmZXIpLCBXVEZNb3ZlKGxvYWRQYXJhbWV0ZXJzLnJlcXVlc3QpLCBXVEZNb3ZlKHNpbXVsYXRl
ZFJlc3BvbnNlKSwgVVJMKCksIGxvYWRQYXJhbWV0ZXJzLnVzZXJEYXRhLCBsb2FkUGFyYW1ldGVy
cy5pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhp
c3RvcnlWaXNpYmlsaXR5OjpWaXNpYmxlKTsKK30KKwordm9pZCBXZWJQYWdlOjpuYXZpZ2F0ZVRv
UERGTGlua1dpdGhTaW11bGF0ZWRDbGljayhjb25zdCBTdHJpbmcmIHVybCwgSW50UG9pbnQgZG9j
dW1lbnRQb2ludCwgSW50UG9pbnQgc2NyZWVuUG9pbnQpCit7CisgICAgRnJhbWUqIG1haW5GcmFt
ZSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBEb2N1bWVudCogbWFpbkZyYW1lRG9j
dW1lbnQgPSBtYWluRnJhbWUtPmRvY3VtZW50KCk7CisgICAgaWYgKCFtYWluRnJhbWVEb2N1bWVu
dCkKKyAgICAgICAgcmV0dXJuOworCisgICAgY29uc3QgaW50IHNpbmdsZUNsaWNrID0gMTsKKyAg
ICAvLyBGSVhNRTogU2V0IG1vZGlmaWVyIGtleXMuCisgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxk
IHByb2JhYmx5IHNldCBJc1NpbXVsYXRlZDo6WWVzLgorICAgIGF1dG8gbW91c2VFdmVudCA9IE1v
dXNlRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuY2xpY2tFdmVudCwgRXZlbnQ6OkNhbkJ1YmJs
ZTo6WWVzLCBFdmVudDo6SXNDYW5jZWxhYmxlOjpZZXMsIEV2ZW50OjpJc0NvbXBvc2VkOjpZZXMs
CisgICAgICAgIE1vbm90b25pY1RpbWU6Om5vdygpLCBudWxscHRyLCBzaW5nbGVDbGljaywgc2Ny
ZWVuUG9pbnQsIGRvY3VtZW50UG9pbnQsIHsgfSwgeyB9LCAwLCAwLCBudWxscHRyLCAwLCBXZWJD
b3JlOjpOb1RhcCk7CisKKyAgICBtYWluRnJhbWUtPmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKG1h
aW5GcmFtZURvY3VtZW50LT5jb21wbGV0ZVVSTCh1cmwpLCBlbXB0eVN0cmluZygpLCBtb3VzZUV2
ZW50LnB0cigpLCBSZWZlcnJlclBvbGljeTo6Tm9SZWZlcnJlciwgU2hvdWxkT3BlbkV4dGVybmFs
VVJMc1BvbGljeTo6U2hvdWxkQWxsb3cpOworfQorCit2b2lkIFdlYlBhZ2U6OnN0b3BMb2FkaW5n
RnJhbWUoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCit7CisgICAgV2ViRnJhbWUqIGZyYW1lID0g
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCk7CisgICAgaWYgKCFmcmFt
ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byogY29yZUZyYW1lID0gZnJhbWUtPmNvcmVG
cmFtZSgpOworICAgIGlmICghY29yZUZyYW1lIHx8ICFtX3BhZ2UpCisgICAgICAgIHJldHVybjsK
KworICAgIG1fcGFnZS0+dXNlcklucHV0QnJpZGdlKCkuc3RvcExvYWRpbmdGcmFtZSgqY29yZUZy
YW1lKTsKK30KKwordm9pZCBXZWJQYWdlOjpzdG9wTG9hZGluZygpCit7CisgICAgaWYgKCFtX3Bh
Z2UgfHwgIW1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
U2VuZFN0b3BSZXNwb25zaXZlbmVzc1RpbWVyIHN0b3BwZXI7CisgICAgbV9wYWdlLT51c2VySW5w
dXRCcmlkZ2UoKS5zdG9wTG9hZGluZ0ZyYW1lKCptX21haW5GcmFtZS0+Y29yZUZyYW1lKCkpOwor
fQorCitib29sIFdlYlBhZ2U6OmRlZmVyc0xvYWRpbmcoKSBjb25zdAoreworICAgIHJldHVybiBt
X3BhZ2UtPmRlZmVyc0xvYWRpbmcoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXREZWZlcnNMb2Fk
aW5nKGJvb2wgZGVmZXJzTG9hZGluZykKK3sKKyAgICBtX3BhZ2UtPnNldERlZmVyc0xvYWRpbmco
ZGVmZXJzTG9hZGluZyk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVsb2FkKHVpbnQ2NF90IG5hdmln
YXRpb25JRCwgdWludDMyX3QgcmVsb2FkT3B0aW9ucywgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxl
JiYgc2FuZGJveEV4dGVuc2lvbkhhbmRsZSkKK3sKKyAgICBTZW5kU3RvcFJlc3BvbnNpdmVuZXNz
VGltZXIgc3RvcHBlcjsKKworICAgIEFTU0VSVCghbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5s
b2FkZXIoKS5mcmFtZUhhc0xvYWRlZCgpIHx8ICFtX3BlbmRpbmdOYXZpZ2F0aW9uSUQpOworICAg
IG1fcGVuZGluZ05hdmlnYXRpb25JRCA9IG5hdmlnYXRpb25JRDsKKworICAgIG1fc2FuZGJveEV4
dGVuc2lvblRyYWNrZXIuYmVnaW5SZWxvYWQobV9tYWluRnJhbWUucHRyKCksIFdURk1vdmUoc2Fu
ZGJveEV4dGVuc2lvbkhhbmRsZSkpOworICAgIGlmIChtX3BhZ2UgJiYgbV9tYWluRnJhbWUtPmNv
cmVGcmFtZSgpKQorICAgICAgICBtX3BhZ2UtPnVzZXJJbnB1dEJyaWRnZSgpLnJlbG9hZEZyYW1l
KCptX21haW5GcmFtZS0+Y29yZUZyYW1lKCksIE9wdGlvblNldDxSZWxvYWRPcHRpb24+Ojpmcm9t
UmF3KHJlbG9hZE9wdGlvbnMpKTsKKyAgICBlbHNlCisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworCisgICAgaWYgKG1fcGVuZGluZ05hdmlnYXRpb25JRCkgeworICAgICAgICAvLyBUaGlz
IGNhbiBoYXBwZW4gaWYgRnJhbWVMb2FkZXI6OnJlbG9hZCgpIHJldHVybnMgZWFybHkgYmVjYXVz
ZSB0aGUgZG9jdW1lbnQgVVJMIGlzIGVtcHR5LgorICAgICAgICAvLyBUaGUgcmVsb2FkIGRvZXMg
bm90aGluZyBzbyB3ZSBuZWVkIHRvIHJlc2V0IHRoZSBwZW5kaW5nIG5hdmlnYXRpb24uIFNlZSB3
ZWJraXQub3JnL2IvMTUzMjEwLgorICAgICAgICBtX3BlbmRpbmdOYXZpZ2F0aW9uSUQgPSAwOwor
ICAgIH0KK30KKwordm9pZCBXZWJQYWdlOjpnb1RvQmFja0ZvcndhcmRJdGVtKHVpbnQ2NF90IG5h
dmlnYXRpb25JRCwgY29uc3QgQmFja0ZvcndhcmRJdGVtSWRlbnRpZmllciYgYmFja0ZvcndhcmRJ
dGVtSUQsIEZyYW1lTG9hZFR5cGUgYmFja0ZvcndhcmRUeXBlLCBTaG91bGRUcmVhdEFzQ29udGlu
dWluZ0xvYWQgc2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBzdGQ6Om9wdGlvbmFsPFdlYnNp
dGVQb2xpY2llc0RhdGE+JiYgd2Vic2l0ZVBvbGljaWVzLCBib29sIGxhc3ROYXZpZ2F0aW9uV2Fz
QXBwSW5pdGlhdGVkKQoreworICAgIFNlbmRTdG9wUmVzcG9uc2l2ZW5lc3NUaW1lciBzdG9wcGVy
OworCisgICAgbV9sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCA9IGxhc3ROYXZpZ2F0aW9u
V2FzQXBwSW5pdGlhdGVkOworCisgICAgQVNTRVJUKGlzQmFja0ZvcndhcmRMb2FkVHlwZShiYWNr
Rm9yd2FyZFR5cGUpKTsKKworICAgIEhpc3RvcnlJdGVtKiBpdGVtID0gV2ViQmFja0ZvcndhcmRM
aXN0UHJveHk6Oml0ZW1Gb3JJRChiYWNrRm9yd2FyZEl0ZW1JRCk7CisgICAgQVNTRVJUKGl0ZW0p
OworICAgIGlmICghaXRlbSkKKyAgICAgICAgcmV0dXJuOworCisgICAgTE9HKExvYWRpbmcsICJJ
biBXZWJQcm9jZXNzIHBpZCAlaSwgV2ViUGFnZSAlIiBQUkl1NjQgIiBpcyBuYXZpZ2F0aW5nIHRv
IGJhY2svZm9yd2FyZCBVUkwgJXMiLCBnZXRDdXJyZW50UHJvY2Vzc0lEKCksIG1faWRlbnRpZmll
ci50b1VJbnQ2NCgpLCBpdGVtLT51cmwoKS5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKKworICAg
IEFTU0VSVCghbV9wZW5kaW5nTmF2aWdhdGlvbklEKTsKKyAgICBtX3BlbmRpbmdOYXZpZ2F0aW9u
SUQgPSBuYXZpZ2F0aW9uSUQ7CisgICAgbV9wZW5kaW5nV2Vic2l0ZVBvbGljaWVzID0gV1RGTW92
ZSh3ZWJzaXRlUG9saWNpZXMpOworCisgICAgbV9wYWdlLT5nb1RvSXRlbSgqaXRlbSwgYmFja0Zv
cndhcmRUeXBlLCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQpOworfQorCit2b2lkIFdlYlBh
Z2U6OnRyeVJlc3RvcmVTY3JvbGxQb3NpdGlvbigpCit7CisgICAgbV9wYWdlLT5tYWluRnJhbWUo
KS5sb2FkZXIoKS5oaXN0b3J5KCkucmVzdG9yZVNjcm9sbFBvc2l0aW9uQW5kVmlld1N0YXRlKCk7
Cit9CisKK1dlYlBhZ2UmIFdlYlBhZ2U6OmZyb21Db3JlUGFnZShQYWdlJiBwYWdlKQoreworICAg
IHJldHVybiBzdGF0aWNfY2FzdDxXZWJDaHJvbWVDbGllbnQmPihwYWdlLmNocm9tZSgpLmNsaWVu
dCgpKS5wYWdlKCk7Cit9CisKK3N0YXRpYyBzdGQ6Om9wdGlvbmFsPEZyYW1lVHJlZU5vZGVEYXRh
PiBmcmFtZVRyZWVOb2RlRGF0YShGcmFtZSYgZnJhbWUpCit7CisgICAgc3RkOjpvcHRpb25hbDxG
cmFtZVRyZWVOb2RlRGF0YT4gaW5mbzsKKyAgICBpZiAoYXV0byogd2ViRnJhbWUgPSBXZWJGcmFt
ZTo6ZnJvbUNvcmVGcmFtZShmcmFtZSkpIHsKKyAgICAgICAgVmVjdG9yPEZyYW1lVHJlZU5vZGVE
YXRhPiBjaGlsZHJlbjsKKyAgICAgICAgZm9yIChhdXRvKiBjaGlsZEZyYW1lID0gZnJhbWUudHJl
ZSgpLmZpcnN0Q2hpbGQoKTsgY2hpbGRGcmFtZTsgY2hpbGRGcmFtZSA9IGNoaWxkRnJhbWUtPnRy
ZWUoKS5uZXh0U2libGluZygpKSB7CisgICAgICAgICAgICBpZiAoYXV0byBjaGlsZEluZm8gPSBm
cmFtZVRyZWVOb2RlRGF0YSgqY2hpbGRGcmFtZSkpCisgICAgICAgICAgICAgICAgY2hpbGRyZW4u
YXBwZW5kKFdURk1vdmUoKmNoaWxkSW5mbykpOworICAgICAgICB9CisgICAgICAgIGluZm8gPSBG
cmFtZVRyZWVOb2RlRGF0YSB7CisgICAgICAgICAgICB3ZWJGcmFtZS0+aW5mbygpLAorICAgICAg
ICAgICAgV1RGTW92ZShjaGlsZHJlbikKKyAgICAgICAgfTsKKyAgICB9CisgICAgcmV0dXJuIGlu
Zm87Cit9CisKK3ZvaWQgV2ViUGFnZTo6Z2V0QWxsRnJhbWVzKENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoRnJhbWVUcmVlTm9kZURhdGEmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY29t
cGxldGlvbkhhbmRsZXIoKmZyYW1lVHJlZU5vZGVEYXRhKG1fcGFnZS0+bWFpbkZyYW1lKCkpKTsK
K30KKwordm9pZCBXZWJQYWdlOjpzZXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHZpZXdT
aXplKQoreworICAgIGlmIChtX3ZpZXdTaXplID09IHZpZXdTaXplKQorICAgICAgICByZXR1cm47
CisKKyAgICBtX3ZpZXdTaXplID0gdmlld1NpemU7CisgICAgRnJhbWVWaWV3KiB2aWV3ID0gbV9w
YWdlLT5tYWluRnJhbWUoKS52aWV3KCk7CisgICAgdmlldy0+cmVzaXplKHZpZXdTaXplKTsKKyAg
ICBtX2RyYXdpbmdBcmVhLT5zZXROZWVkc0Rpc3BsYXkoKTsKKworI2lmIFVTRShDT09SRElOQVRF
RF9HUkFQSElDUykKKyAgICBpZiAodmlldy0+dXNlRml4ZWRMYXlvdXQoKSkKKyAgICAgICAgc2Vu
ZFZpZXdwb3J0QXR0cmlidXRlc0NoYW5nZWQobV9wYWdlLT52aWV3cG9ydEFyZ3VtZW50cygpKTsK
KyNlbmRpZgorfQorCisjaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQordm9pZCBXZWJQYWdl
OjpzZW5kVmlld3BvcnRBdHRyaWJ1dGVzQ2hhbmdlZChjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYg
dmlld3BvcnRBcmd1bWVudHMpCit7CisgICAgRnJhbWVWaWV3KiB2aWV3ID0gbV9wYWdlLT5tYWlu
RnJhbWUoKS52aWV3KCk7CisgICAgQVNTRVJUKHZpZXcgJiYgdmlldy0+dXNlRml4ZWRMYXlvdXQo
KSk7CisKKyAgICAvLyBWaWV3cG9ydCBwcm9wZXJ0aWVzIGhhdmUgbm8gaW1wYWN0IG9uIHplcm8g
c2l6ZWQgZml4ZWQgdmlld3BvcnRzLgorICAgIGlmIChtX3ZpZXdTaXplLmlzRW1wdHkoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgLy8gUmVjYWxjdWxhdGUgdGhlIHJlY29tbWVuZGVkIGxheW91
dCBzaXplLCB3aGVuIHRoZSBhdmFpbGFibGUgc2l6ZSAoZGV2aWNlIHBpeGVsKSBjaGFuZ2VzLgor
ICAgIFNldHRpbmdzJiBzZXR0aW5ncyA9IG1fcGFnZS0+c2V0dGluZ3MoKTsKKworICAgIGludCBt
aW5pbXVtTGF5b3V0RmFsbGJhY2tXaWR0aCA9IHN0ZDo6bWF4PGludD4oc2V0dGluZ3MubGF5b3V0
RmFsbGJhY2tXaWR0aCgpLCBtX3ZpZXdTaXplLndpZHRoKCkpOworCisgICAgLy8gSWYgdW5zZXQg
IHdlIHVzZSB0aGUgdmlld3BvcnQgZGltZW5zaW9ucy4gVGhpcyBmaXRzIHdpdGggdGhlIGJlaGF2
aW9yIG9mIGRlc2t0b3AgYnJvd3NlcnMuCisgICAgaW50IGRldmljZVdpZHRoID0gKHNldHRpbmdz
LmRldmljZVdpZHRoKCkgPiAwKSA/IHNldHRpbmdzLmRldmljZVdpZHRoKCkgOiBtX3ZpZXdTaXpl
LndpZHRoKCk7CisgICAgaW50IGRldmljZUhlaWdodCA9IChzZXR0aW5ncy5kZXZpY2VIZWlnaHQo
KSA+IDApID8gc2V0dGluZ3MuZGV2aWNlSGVpZ2h0KCkgOiBtX3ZpZXdTaXplLmhlaWdodCgpOwor
CisgICAgVmlld3BvcnRBdHRyaWJ1dGVzIGF0dHIgPSBjb21wdXRlVmlld3BvcnRBdHRyaWJ1dGVz
KHZpZXdwb3J0QXJndW1lbnRzLCBtaW5pbXVtTGF5b3V0RmFsbGJhY2tXaWR0aCwgZGV2aWNlV2lk
dGgsIGRldmljZUhlaWdodCwgMSwgbV92aWV3U2l6ZSk7CisKKyAgICAvLyBJZiBubyBsYXlvdXQg
d2FzIGRvbmUgeWV0IHNldCBjb250ZW50Rml4ZWRPcmlnaW4gdG8gKDAsMCkuCisgICAgSW50UG9p
bnQgY29udGVudEZpeGVkT3JpZ2luID0gdmlldy0+ZGlkRmlyc3RMYXlvdXQoKSA/IHZpZXctPmZp
eGVkVmlzaWJsZUNvbnRlbnRSZWN0KCkubG9jYXRpb24oKSA6IEludFBvaW50KCk7CisKKyAgICAv
LyBQdXQgdGhlIHdpZHRoIGFuZCBoZWlnaHQgdG8gdGhlIHZpZXdwb3J0IHdpZHRoIGFuZCBoZWln
aHQuIEluIGNzcyB1bml0cyBob3dldmVyLgorICAgIC8vIFVzZSBGbG9hdFNpemUgdG8gYXZvaWQg
dHJ1bmNhdGVkIHZhbHVlcyBkdXJpbmcgc2NhbGUuCisgICAgRmxvYXRTaXplIGNvbnRlbnRGaXhl
ZFNpemUgPSBtX3ZpZXdTaXplOworCisgICAgY29udGVudEZpeGVkU2l6ZS5zY2FsZSgxIC8gYXR0
ci5pbml0aWFsU2NhbGUpOworICAgIHZpZXctPnNldEZpeGVkVmlzaWJsZUNvbnRlbnRSZWN0KElu
dFJlY3QoY29udGVudEZpeGVkT3JpZ2luLCByb3VuZGVkSW50U2l6ZShjb250ZW50Rml4ZWRTaXpl
KSkpOworCisgICAgYXR0ci5pbml0aWFsU2NhbGUgPSBtX3BhZ2UtPnZpZXdwb3J0QXJndW1lbnRz
KCkuem9vbTsgLy8gUmVzZXRzIGF1dG8gKC0xKSBpZiBubyB2YWx1ZSB3YXMgc2V0IGJ5IHVzZXIu
CisKKyAgICAvLyBUaGlzIGFsc28gdGFrZXMgY2FyZSBvZiB0aGUgcmVsYXlvdXQuCisgICAgc2V0
Rml4ZWRMYXlvdXRTaXplKHJvdW5kZWRJbnRTaXplKGF0dHIubGF5b3V0U2l6ZSkpOworCisjaWYg
VVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQorICAgIG1fZHJhd2luZ0FyZWEtPmRpZENoYW5nZVZp
ZXdwb3J0QXR0cmlidXRlcyhXVEZNb3ZlKGF0dHIpKTsKKyNlbHNlCisgICAgc2VuZChNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VWaWV3cG9ydFByb3BlcnRpZXMoYXR0cikpOworI2Vu
ZGlmCit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpzY3JvbGxNYWluRnJhbWVJZk5vdEF0TWF4
U2Nyb2xsUG9zaXRpb24oY29uc3QgSW50U2l6ZSYgc2Nyb2xsT2Zmc2V0KQoreworICAgIEZyYW1l
VmlldyogZnJhbWVWaWV3ID0gbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCk7CisKKyAgICBTY3Jv
bGxQb3NpdGlvbiBzY3JvbGxQb3NpdGlvbiA9IGZyYW1lVmlldy0+c2Nyb2xsUG9zaXRpb24oKTsK
KyAgICBTY3JvbGxQb3NpdGlvbiBtYXhpbXVtU2Nyb2xsUG9zaXRpb24gPSBmcmFtZVZpZXctPm1h
eGltdW1TY3JvbGxQb3NpdGlvbigpOworCisgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBv
c2l0aW9uIGluIGEgZGlyZWN0aW9uIGlzIHRoZSBtYXggc2Nyb2xsIHBvc2l0aW9uIAorICAgIC8v
IHdlIGRvbid0IHdhbnQgdG8gc2Nyb2xsIGF0IGFsbC4KKyAgICBJbnRTaXplIG5ld1Njcm9sbE9m
ZnNldDsKKyAgICBpZiAoc2Nyb2xsUG9zaXRpb24ueCgpIDwgbWF4aW11bVNjcm9sbFBvc2l0aW9u
LngoKSkKKyAgICAgICAgbmV3U2Nyb2xsT2Zmc2V0LnNldFdpZHRoKHNjcm9sbE9mZnNldC53aWR0
aCgpKTsKKyAgICBpZiAoc2Nyb2xsUG9zaXRpb24ueSgpIDwgbWF4aW11bVNjcm9sbFBvc2l0aW9u
LnkoKSkKKyAgICAgICAgbmV3U2Nyb2xsT2Zmc2V0LnNldEhlaWdodChzY3JvbGxPZmZzZXQuaGVp
Z2h0KCkpOworCisgICAgaWYgKG5ld1Njcm9sbE9mZnNldC5pc1plcm8oKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgZnJhbWVWaWV3LT5zZXRTY3JvbGxQb3NpdGlvbihmcmFtZVZpZXctPnNjcm9s
bFBvc2l0aW9uKCkgKyBuZXdTY3JvbGxPZmZzZXQpOworfQorCit2b2lkIFdlYlBhZ2U6OmRyYXdS
ZWN0KEdyYXBoaWNzQ29udGV4dCYgZ3JhcGhpY3NDb250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0
KQoreworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBGcmFtZVZpZXcqIG1haW5GcmFtZVZpZXcgPSBt
X3BhZ2UtPm1haW5GcmFtZSgpLnZpZXcoKTsKKyAgICBMb2NhbERlZmF1bHRTeXN0ZW1BcHBlYXJh
bmNlIGxvY2FsQXBwZWFyYW5jZShtYWluRnJhbWVWaWV3ID8gbWFpbkZyYW1lVmlldy0+dXNlRGFy
a0FwcGVhcmFuY2UoKSA6IGZhbHNlKTsKKyNlbmRpZgorCisgICAgR3JhcGhpY3NDb250ZXh0U3Rh
dGVTYXZlciBzdGF0ZVNhdmVyKGdyYXBoaWNzQ29udGV4dCk7CisgICAgZ3JhcGhpY3NDb250ZXh0
LmNsaXAocmVjdCk7CisKKyAgICBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKS0+cGFp
bnQoZ3JhcGhpY3NDb250ZXh0LCByZWN0KTsKKworI2lmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZP
Uk0oV0lOKSB8fCBQTEFURk9STShQTEFZU1RBVElPTikKKyAgICBpZiAoIW1fcGFnZS0+c2V0dGlu
Z3MoKS5hY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCgpICYmIG1fcGFnZS0+aW5zcGVjdG9y
Q29udHJvbGxlcigpLmVuYWJsZWQoKSAmJiBtX3BhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS5z
aG91bGRTaG93T3ZlcmxheSgpKSB7CisgICAgICAgIGdyYXBoaWNzQ29udGV4dC5iZWdpblRyYW5z
cGFyZW5jeUxheWVyKDEpOworICAgICAgICBtX3BhZ2UtPmluc3BlY3RvckNvbnRyb2xsZXIoKS5k
cmF3SGlnaGxpZ2h0KGdyYXBoaWNzQ29udGV4dCk7CisgICAgICAgIGdyYXBoaWNzQ29udGV4dC5l
bmRUcmFuc3BhcmVuY3lMYXllcigpOworICAgIH0KKyNlbmRpZgorfQorCitkb3VibGUgV2ViUGFn
ZTo6dGV4dFpvb21GYWN0b3IoKSBjb25zdAoreworICAgIFBsdWdpblZpZXcqIHBsdWdpblZpZXcg
PSBwbHVnaW5WaWV3Rm9yRnJhbWUoJm1fcGFnZS0+bWFpbkZyYW1lKCkpOworICAgIGlmIChwbHVn
aW5WaWV3ICYmIHBsdWdpblZpZXctPnJlcXVpcmVzVW5pZmllZFNjYWxlRmFjdG9yKCkpIHsKKyAg
ICAgICAgaWYgKHBsdWdpblZpZXctPmhhbmRsZXNQYWdlU2NhbGVGYWN0b3IoKSkKKyAgICAgICAg
ICAgIHJldHVybiBwbHVnaW5WaWV3LT5wYWdlU2NhbGVGYWN0b3IoKTsKKyAgICAgICAgcmV0dXJu
IHBhZ2VTY2FsZUZhY3RvcigpOworICAgIH0KKworICAgIEZyYW1lKiBmcmFtZSA9IG1fbWFpbkZy
YW1lLT5jb3JlRnJhbWUoKTsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gMTsKKyAg
ICByZXR1cm4gZnJhbWUtPnRleHRab29tRmFjdG9yKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0
VGV4dFpvb21GYWN0b3IoZG91YmxlIHpvb21GYWN0b3IpCit7CisgICAgUGx1Z2luVmlldyogcGx1
Z2luVmlldyA9IHBsdWdpblZpZXdGb3JGcmFtZSgmbV9wYWdlLT5tYWluRnJhbWUoKSk7CisgICAg
aWYgKHBsdWdpblZpZXcgJiYgcGx1Z2luVmlldy0+cmVxdWlyZXNVbmlmaWVkU2NhbGVGYWN0b3Io
KSkgeworICAgICAgICBpZiAocGx1Z2luVmlldy0+aGFuZGxlc1BhZ2VTY2FsZUZhY3RvcigpKQor
ICAgICAgICAgICAgcGx1Z2luVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yKHpvb21GYWN0b3IsIElu
dFBvaW50KCkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBzY2FsZVBhZ2Uoem9vbUZhY3Rv
ciwgSW50UG9pbnQoKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBGcmFtZSogZnJh
bWUgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAg
cmV0dXJuOworICAgIGZyYW1lLT5zZXRUZXh0Wm9vbUZhY3RvcihzdGF0aWNfY2FzdDxmbG9hdD4o
em9vbUZhY3RvcikpOworfQorCitkb3VibGUgV2ViUGFnZTo6cGFnZVpvb21GYWN0b3IoKSBjb25z
dAoreworICAgIFBsdWdpblZpZXcqIHBsdWdpblZpZXcgPSBwbHVnaW5WaWV3Rm9yRnJhbWUoJm1f
cGFnZS0+bWFpbkZyYW1lKCkpOworICAgIGlmIChwbHVnaW5WaWV3ICYmIHBsdWdpblZpZXctPnJl
cXVpcmVzVW5pZmllZFNjYWxlRmFjdG9yKCkpIHsKKyAgICAgICAgaWYgKHBsdWdpblZpZXctPmhh
bmRsZXNQYWdlU2NhbGVGYWN0b3IoKSkKKyAgICAgICAgICAgIHJldHVybiBwbHVnaW5WaWV3LT5w
YWdlU2NhbGVGYWN0b3IoKTsKKyAgICAgICAgcmV0dXJuIHBhZ2VTY2FsZUZhY3RvcigpOworICAg
IH0KKworICAgIEZyYW1lKiBmcmFtZSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBp
ZiAoIWZyYW1lKQorICAgICAgICByZXR1cm4gMTsKKyAgICByZXR1cm4gZnJhbWUtPnBhZ2Vab29t
RmFjdG9yKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0UGFnZVpvb21GYWN0b3IoZG91YmxlIHpv
b21GYWN0b3IpCit7CisgICAgUGx1Z2luVmlldyogcGx1Z2luVmlldyA9IHBsdWdpblZpZXdGb3JG
cmFtZSgmbV9wYWdlLT5tYWluRnJhbWUoKSk7CisgICAgaWYgKHBsdWdpblZpZXcgJiYgcGx1Z2lu
Vmlldy0+cmVxdWlyZXNVbmlmaWVkU2NhbGVGYWN0b3IoKSkgeworICAgICAgICBpZiAocGx1Z2lu
Vmlldy0+aGFuZGxlc1BhZ2VTY2FsZUZhY3RvcigpKQorICAgICAgICAgICAgcGx1Z2luVmlldy0+
c2V0UGFnZVNjYWxlRmFjdG9yKHpvb21GYWN0b3IsIEludFBvaW50KCkpOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBzY2FsZVBhZ2Uoem9vbUZhY3RvciwgSW50UG9pbnQoKSk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBGcmFtZSogZnJhbWUgPSBtX21haW5GcmFtZS0+Y29yZUZy
YW1lKCk7CisgICAgaWYgKCFmcmFtZSkKKyAgICAgICAgcmV0dXJuOworICAgIGZyYW1lLT5zZXRQ
YWdlWm9vbUZhY3RvcihzdGF0aWNfY2FzdDxmbG9hdD4oem9vbUZhY3RvcikpOworfQorCitzdGF0
aWMgdm9pZCBkdW1wSGlzdG9yeUl0ZW0oSGlzdG9yeUl0ZW0mIGl0ZW0sIHNpemVfdCBpbmRlbnQs
IGJvb2wgaXNDdXJyZW50SXRlbSwgU3RyaW5nQnVpbGRlciYgc3RyaW5nQnVpbGRlciwgY29uc3Qg
U3RyaW5nJiBkaXJlY3RvcnlOYW1lKQoreworICAgIGlmIChpc0N1cnJlbnRJdGVtKQorICAgICAg
ICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgiY3Vyci0+ICAiKTsKKyAgICBlbHNlIHsKKyAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBpbmRlbnQ7ICsraSkKKyAgICAgICAgICAgIHN0cmluZ0J1
aWxkZXIuYXBwZW5kKCcgJyk7CisgICAgfQorCisgICAgYXV0byB1cmwgPSBpdGVtLnVybCgpOwor
ICAgIGlmICh1cmwucHJvdG9jb2xJcygiZmlsZSIpKSB7CisgICAgICAgIHNpemVfdCBzdGFydCA9
IHVybC5zdHJpbmcoKS5maW5kKGRpcmVjdG9yeU5hbWUpOworICAgICAgICBpZiAoc3RhcnQgPT0g
V1RGOjpub3RGb3VuZCkKKyAgICAgICAgICAgIHN0YXJ0ID0gMDsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgc3RhcnQgKz0gZGlyZWN0b3J5TmFtZS5sZW5ndGgoKTsKKyAgICAgICAgc3RyaW5n
QnVpbGRlci5hcHBlbmQoIihmaWxlIHRlc3QpOiIsIFN0cmluZ1ZpZXcgeyB1cmwuc3RyaW5nKCkg
fS5zdWJzdHJpbmcoc3RhcnQpKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc3RyaW5nQnVpbGRlci5h
cHBlbmQodXJsLnN0cmluZygpKTsKKworICAgIGF1dG8mIHRhcmdldCA9IGl0ZW0udGFyZ2V0KCk7
CisgICAgaWYgKHRhcmdldC5sZW5ndGgoKSkKKyAgICAgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQo
IiAoaW4gZnJhbWUgXCIiLCB0YXJnZXQsICJcIikiKTsKKworICAgIGlmIChpdGVtLmlzVGFyZ2V0
SXRlbSgpKQorICAgICAgICBzdHJpbmdCdWlsZGVyLmFwcGVuZCgiICAqKm5hdiB0YXJnZXQqKiIp
OworCisgICAgc3RyaW5nQnVpbGRlci5hcHBlbmQoJ1xuJyk7CisKKyAgICBWZWN0b3I8UmVmPEhp
c3RvcnlJdGVtPj4gY2hpbGRyZW47CisgICAgY2hpbGRyZW4ucmVzZXJ2ZUluaXRpYWxDYXBhY2l0
eShpdGVtLmNoaWxkcmVuKCkuc2l6ZSgpKTsKKyAgICBmb3IgKGF1dG8mIGNoaWxkIDogaXRlbS5j
aGlsZHJlbigpKQorICAgICAgICBjaGlsZHJlbi51bmNoZWNrZWRBcHBlbmQoY2hpbGQuY29weVJl
ZigpKTsKKyAgICBzdGQ6OnN0YWJsZV9zb3J0KGNoaWxkcmVuLmJlZ2luKCksIGNoaWxkcmVuLmVu
ZCgpLCBbXSAoYXV0byYgYSwgYXV0byYgYikgeworICAgICAgICByZXR1cm4gY29kZVBvaW50Q29t
cGFyZShhLT50YXJnZXQoKSwgYi0+dGFyZ2V0KCkpIDwgMDsKKyAgICB9KTsKKyAgICBmb3IgKGF1
dG8mIGNoaWxkIDogY2hpbGRyZW4pCisgICAgICAgIGR1bXBIaXN0b3J5SXRlbShjaGlsZCwgaW5k
ZW50ICsgNCwgZmFsc2UsIHN0cmluZ0J1aWxkZXIsIGRpcmVjdG9yeU5hbWUpOworfQorCitTdHJp
bmcgV2ViUGFnZTo6ZHVtcEhpc3RvcnlGb3JUZXN0aW5nKGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5
KQoreworICAgIGlmICghbV9wYWdlKQorICAgICAgICByZXR1cm4geyB9OworCisgICAgYXV0byYg
bGlzdCA9IG1fcGFnZS0+YmFja0ZvcndhcmQoKTsKKyAgICAKKyAgICBTdHJpbmdCdWlsZGVyIGJ1
aWxkZXI7CisgICAgaW50IGJlZ2luID0gLWxpc3QuYmFja0NvdW50KCk7CisgICAgaWYgKGxpc3Qu
aXRlbUF0SW5kZXgoYmVnaW4pLT51cmwoKSA9PSBhYm91dEJsYW5rVVJMKCkpCisgICAgICAgICsr
YmVnaW47CisgICAgZm9yIChpbnQgaSA9IGJlZ2luOyBpIDw9IHN0YXRpY19jYXN0PGludD4obGlz
dC5mb3J3YXJkQ291bnQoKSk7ICsraSkKKyAgICAgICAgZHVtcEhpc3RvcnlJdGVtKCpsaXN0Lml0
ZW1BdEluZGV4KGkpLCA4LCAhaSwgYnVpbGRlciwgZGlyZWN0b3J5KTsKKyAgICByZXR1cm4gYnVp
bGRlci50b1N0cmluZygpOworfQorCit2b2lkIFdlYlBhZ2U6OmNsZWFySGlzdG9yeSgpCit7Cisg
ICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIHN0YXRpY19jYXN0PFdlYkJh
Y2tGb3J3YXJkTGlzdFByb3h5Jj4obV9wYWdlLT5iYWNrRm9yd2FyZCgpLmNsaWVudCgpKS5jbGVh
cigpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldFBhZ2VBbmRUZXh0Wm9vbUZhY3RvcnMoZG91Ymxl
IHBhZ2Vab29tRmFjdG9yLCBkb3VibGUgdGV4dFpvb21GYWN0b3IpCit7CisgICAgUGx1Z2luVmll
dyogcGx1Z2luVmlldyA9IHBsdWdpblZpZXdGb3JGcmFtZSgmbV9wYWdlLT5tYWluRnJhbWUoKSk7
CisgICAgaWYgKHBsdWdpblZpZXcgJiYgcGx1Z2luVmlldy0+cmVxdWlyZXNVbmlmaWVkU2NhbGVG
YWN0b3IoKSkgeworICAgICAgICBpZiAocGx1Z2luVmlldy0+aGFuZGxlc1BhZ2VTY2FsZUZhY3Rv
cigpKQorICAgICAgICAgICAgcGx1Z2luVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2Vab29t
RmFjdG9yLCBJbnRQb2ludCgpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc2NhbGVQYWdl
KHBhZ2Vab29tRmFjdG9yLCBJbnRQb2ludCgpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIEZyYW1lKiBmcmFtZSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBpZiAoIWZy
YW1lKQorICAgICAgICByZXR1cm47CisgICAgcmV0dXJuIGZyYW1lLT5zZXRQYWdlQW5kVGV4dFpv
b21GYWN0b3JzKHN0YXRpY19jYXN0PGZsb2F0PihwYWdlWm9vbUZhY3RvciksIHN0YXRpY19jYXN0
PGZsb2F0Pih0ZXh0Wm9vbUZhY3RvcikpOworfQorCit2b2lkIFdlYlBhZ2U6OndpbmRvd1NjcmVl
bkRpZENoYW5nZShQbGF0Zm9ybURpc3BsYXlJRCBkaXNwbGF5SUQsIHN0ZDo6b3B0aW9uYWw8dW5z
aWduZWQ+IG5vbWluYWxGcmFtZXNQZXJTZWNvbmQpCit7CisgICAgbV9wYWdlLT5jaHJvbWUoKS53
aW5kb3dTY3JlZW5EaWRDaGFuZ2UoZGlzcGxheUlELCBub21pbmFsRnJhbWVzUGVyU2Vjb25kKTsK
KworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS51cGRhdGVQ
YWdlU2NyZWVuUHJvcGVydGllcygpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZTo6c2NhbGVQ
YWdlKGRvdWJsZSBzY2FsZSwgY29uc3QgSW50UG9pbnQmIG9yaWdpbikKK3sKKyAgICBkb3VibGUg
dG90YWxTY2FsZSA9IHNjYWxlICogdmlld1NjYWxlRmFjdG9yKCk7CisgICAgYm9vbCB3aWxsQ2hh
bmdlU2NhbGVGYWN0b3IgPSB0b3RhbFNjYWxlICE9IHRvdGFsU2NhbGVGYWN0b3IoKTsKKworI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKHdpbGxDaGFuZ2VTY2FsZUZhY3Rvcikgewor
ICAgICAgICBpZiAoIW1faW5EeW5hbWljU2l6ZVVwZGF0ZSkKKyAgICAgICAgICAgIG1fZHluYW1p
Y1NpemVVcGRhdGVIaXN0b3J5LmNsZWFyKCk7CisgICAgICAgIG1fc2NhbGVXYXNTZXRCeVVJUHJv
Y2VzcyA9IGZhbHNlOworICAgIH0KKyNlbmRpZgorICAgIFBsdWdpblZpZXcqIHBsdWdpblZpZXcg
PSBwbHVnaW5WaWV3Rm9yRnJhbWUoJm1fcGFnZS0+bWFpbkZyYW1lKCkpOworICAgIGlmIChwbHVn
aW5WaWV3ICYmIHBsdWdpblZpZXctPmhhbmRsZXNQYWdlU2NhbGVGYWN0b3IoKSkgeworICAgICAg
ICAvLyBJZiB0aGUgbWFpbi1mcmFtZSBwbHVnaW4gd2FudHMgdG8gaGFuZGxlIHRoZSBwYWdlIHNj
YWxlIGZhY3RvciwgbWFrZSBzdXJlIHRvIHJlc2V0IFdlYkNvcmUncyBwYWdlIHNjYWxlLgorICAg
ICAgICAvLyBPdGhlcndpc2UsIHdlIGNhbiBlbmQgdXAgd2l0aCBhbiBpbW11dGFibGUgYnV0IG5v
bi0xIHBhZ2Ugc2NhbGUgYXBwbGllZCBieSBXZWJDb3JlIG9uIHRvcCBvZiB3aGF0ZXZlciB0aGUg
cGx1Z2luIGRvZXMuCisgICAgICAgIGlmIChtX3BhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpICE9IDEp
IHsKKyAgICAgICAgICAgIG1fcGFnZS0+c2V0UGFnZVNjYWxlRmFjdG9yKDEsIG9yaWdpbik7Cisg
ICAgICAgICAgICBmb3IgKGF1dG8qIHBsdWdpblZpZXcgOiBtX3BsdWdpblZpZXdzKQorICAgICAg
ICAgICAgICAgIHBsdWdpblZpZXctPnBhZ2VTY2FsZUZhY3RvckRpZENoYW5nZSgpOworICAgICAg
ICB9CisKKyAgICAgICAgcGx1Z2luVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yKHRvdGFsU2NhbGUs
IG9yaWdpbik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX3BhZ2UtPnNldFBhZ2VT
Y2FsZUZhY3Rvcih0b3RhbFNjYWxlLCBvcmlnaW4pOworCisgICAgLy8gV2UgY2FuJ3QgZWFybHkg
cmV0dXJuIGJlZm9yZSBzZXRQYWdlU2NhbGVGYWN0b3IgYmVjYXVzZSB0aGUgb3JpZ2luIG1pZ2h0
IGJlIGRpZmZlcmVudC4KKyAgICBpZiAoIXdpbGxDaGFuZ2VTY2FsZUZhY3RvcikKKyAgICAgICAg
cmV0dXJuOworCisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3IDogbV9wbHVnaW5WaWV3cykKKyAg
ICAgICAgcGx1Z2luVmlldy0+cGFnZVNjYWxlRmFjdG9yRGlkQ2hhbmdlKCk7CisKKyNpZiBVU0Uo
Q09PUkRJTkFURURfR1JBUEhJQ1MpIHx8IFVTRShURVhUVVJFX01BUFBFUikKKyAgICBtX2RyYXdp
bmdBcmVhLT5kZXZpY2VPclBhZ2VTY2FsZUZhY3RvckNoYW5nZWQoKTsKKyNlbmRpZgorCisgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlU2NhbGVGYWN0b3JEaWRDaGFuZ2Uoc2Nh
bGUpKTsKKyAgICBwbGF0Zm9ybURpZFNjYWxlUGFnZSgpOworfQorCisjaWYgIVBMQVRGT1JNKElP
U19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZTo6cGxhdGZvcm1EaWRTY2FsZVBhZ2UoKQoreworfQor
CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpzY2FsZVBhZ2VJblZpZXdDb29yZGluYXRlcyhkb3Vi
bGUgc2NhbGUsIEludFBvaW50IGNlbnRlckluVmlld0Nvb3JkaW5hdGVzKQoreworICAgIGRvdWJs
ZSB0b3RhbFNjYWxlID0gc2NhbGUgKiB2aWV3U2NhbGVGYWN0b3IoKTsKKyAgICBpZiAodG90YWxT
Y2FsZSA9PSB0b3RhbFNjYWxlRmFjdG9yKCkpCisgICAgICAgIHJldHVybjsKKworICAgIEludFBv
aW50IHNjcm9sbFBvc2l0aW9uQXROZXdTY2FsZSA9IG1haW5GcmFtZVZpZXcoKS0+cm9vdFZpZXdU
b0NvbnRlbnRzKC1jZW50ZXJJblZpZXdDb29yZGluYXRlcyk7CisgICAgZG91YmxlIHNjYWxlUmF0
aW8gPSBzY2FsZSAvIHBhZ2VTY2FsZUZhY3RvcigpOworICAgIHNjcm9sbFBvc2l0aW9uQXROZXdT
Y2FsZS5zY2FsZShzY2FsZVJhdGlvKTsKKyAgICBzY2FsZVBhZ2Uoc2NhbGUsIHNjcm9sbFBvc2l0
aW9uQXROZXdTY2FsZSk7Cit9CisKK2RvdWJsZSBXZWJQYWdlOjp0b3RhbFNjYWxlRmFjdG9yKCkg
Y29uc3QKK3sKKyAgICBQbHVnaW5WaWV3KiBwbHVnaW5WaWV3ID0gcGx1Z2luVmlld0ZvckZyYW1l
KCZtX3BhZ2UtPm1haW5GcmFtZSgpKTsKKyAgICBpZiAocGx1Z2luVmlldyAmJiBwbHVnaW5WaWV3
LT5oYW5kbGVzUGFnZVNjYWxlRmFjdG9yKCkpCisgICAgICAgIHJldHVybiBwbHVnaW5WaWV3LT5w
YWdlU2NhbGVGYWN0b3IoKTsKKworICAgIHJldHVybiBtX3BhZ2UtPnBhZ2VTY2FsZUZhY3Rvcigp
OworfQorCitkb3VibGUgV2ViUGFnZTo6cGFnZVNjYWxlRmFjdG9yKCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gdG90YWxTY2FsZUZhY3RvcigpIC8gdmlld1NjYWxlRmFjdG9yKCk7Cit9CisKK2RvdWJs
ZSBXZWJQYWdlOjp2aWV3U2NhbGVGYWN0b3IoKSBjb25zdAoreworICAgIHJldHVybiBtX3BhZ2Ut
PnZpZXdTY2FsZUZhY3RvcigpOworfQorCit2b2lkIFdlYlBhZ2U6OnNjYWxlVmlldyhkb3VibGUg
c2NhbGUpCit7CisgICAgaWYgKHZpZXdTY2FsZUZhY3RvcigpID09IHNjYWxlKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBmbG9hdCBwYWdlU2NhbGUgPSBwYWdlU2NhbGVGYWN0b3IoKTsKKworICAg
IEludFBvaW50IHNjcm9sbFBvc2l0aW9uQXROZXdTY2FsZTsKKyAgICBpZiAoRnJhbWVWaWV3KiBt
YWluRnJhbWVWaWV3ID0gbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCkpIHsKKyAgICAgICAgZG91
YmxlIHNjYWxlUmF0aW8gPSBzY2FsZSAvIHZpZXdTY2FsZUZhY3RvcigpOworICAgICAgICBzY3Jv
bGxQb3NpdGlvbkF0TmV3U2NhbGUgPSBtYWluRnJhbWVWaWV3LT5zY3JvbGxQb3NpdGlvbigpOwor
ICAgICAgICBzY3JvbGxQb3NpdGlvbkF0TmV3U2NhbGUuc2NhbGUoc2NhbGVSYXRpbyk7CisgICAg
fQorCisgICAgbV9wYWdlLT5zZXRWaWV3U2NhbGVGYWN0b3Ioc2NhbGUpOworICAgIHNjYWxlUGFn
ZShwYWdlU2NhbGUsIHNjcm9sbFBvc2l0aW9uQXROZXdTY2FsZSk7Cit9CisKK3ZvaWQgV2ViUGFn
ZTo6c2V0RGV2aWNlU2NhbGVGYWN0b3IoZmxvYXQgc2NhbGVGYWN0b3IpCit7CisgICAgaWYgKHNj
YWxlRmFjdG9yID09IG1fcGFnZS0+ZGV2aWNlU2NhbGVGYWN0b3IoKSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgbV9wYWdlLT5zZXREZXZpY2VTY2FsZUZhY3RvcihzY2FsZUZhY3Rvcik7CisKKyAg
ICAvLyBUZWxsIGFsbCBvdXIgcGx1Zy1pbiB2aWV3cyB0aGF0IHRoZSBkZXZpY2Ugc2NhbGUgZmFj
dG9yIGNoYW5nZWQuCisjaWYgUExBVEZPUk0oTUFDKQorICAgIGZvciAoYXV0byogcGx1Z2luVmll
dyA6IG1fcGx1Z2luVmlld3MpCisgICAgICAgIHBsdWdpblZpZXctPnNldERldmljZVNjYWxlRmFj
dG9yKHNjYWxlRmFjdG9yKTsKKworICAgIHVwZGF0ZUhlYWRlckFuZEZvb3RlckxheWVyc0ZvckRl
dmljZVNjYWxlQ2hhbmdlKHNjYWxlRmFjdG9yKTsKKyNlbmRpZgorCisgICAgaWYgKGZpbmRDb250
cm9sbGVyKCkuaXNTaG93aW5nT3ZlcmxheSgpKSB7CisgICAgICAgIC8vIFdlIG11c3QgaGF2ZSB1
cGRhdGVkIGxheW91dCB0byBnZXQgdGhlIHNlbGVjdGlvbiByZWN0cyByaWdodC4KKyAgICAgICAg
bGF5b3V0SWZOZWVkZWQoKTsKKyAgICAgICAgZmluZENvbnRyb2xsZXIoKS5kZXZpY2VTY2FsZUZh
Y3RvckRpZENoYW5nZSgpOworICAgIH0KKworI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykg
fHwgVVNFKFRFWFRVUkVfTUFQUEVSKQorICAgIG1fZHJhd2luZ0FyZWEtPmRldmljZU9yUGFnZVNj
YWxlRmFjdG9yQ2hhbmdlZCgpOworI2VuZGlmCit9CisKK2Zsb2F0IFdlYlBhZ2U6OmRldmljZVNj
YWxlRmFjdG9yKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wYWdlLT5kZXZpY2VTY2FsZUZhY3Rv
cigpOworfQorCit2b2lkIFdlYlBhZ2U6OmFjY2Vzc2liaWxpdHlTZXR0aW5nc0RpZENoYW5nZSgp
Cit7CisgICAgbV9wYWdlLT5hY2Nlc3NpYmlsaXR5U2V0dGluZ3NEaWRDaGFuZ2UoKTsKK30KKwor
dm9pZCBXZWJQYWdlOjpzY3JlZW5Qcm9wZXJ0aWVzRGlkQ2hhbmdlKCkKK3sKKyAgICBtX3BhZ2Ut
PnNjcmVlblByb3BlcnRpZXNEaWRDaGFuZ2UoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRVc2VG
aXhlZExheW91dChib29sIGZpeGVkKQoreworICAgIC8vIERvIG5vdCBvdmVyd3JpdGUgY3VycmVu
dCBzZXR0aW5ncyBpZiBpbml0aWFsbHkgc2V0dGluZyBpdCB0byBmYWxzZS4KKyAgICBpZiAobV91
c2VGaXhlZExheW91dCA9PSBmaXhlZCkKKyAgICAgICAgcmV0dXJuOworICAgIG1fdXNlRml4ZWRM
YXlvdXQgPSBmaXhlZDsKKworI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQorICAgIG1fcGFnZS0+
c2V0dGluZ3MoKS5zZXRGaXhlZEVsZW1lbnRzTGF5b3V0UmVsYXRpdmVUb0ZyYW1lKGZpeGVkKTsK
KyNlbmRpZgorCisgICAgRnJhbWVWaWV3KiB2aWV3ID0gbWFpbkZyYW1lVmlldygpOworICAgIGlm
ICghdmlldykKKyAgICAgICAgcmV0dXJuOworCisgICAgdmlldy0+c2V0VXNlRml4ZWRMYXlvdXQo
Zml4ZWQpOworICAgIGlmICghZml4ZWQpCisgICAgICAgIHNldEZpeGVkTGF5b3V0U2l6ZShJbnRT
aXplKCkpOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVc2VGaXhlZExheW91
dERpZENoYW5nZShmaXhlZCkpOworfQorCitib29sIFdlYlBhZ2U6OnNldEZpeGVkTGF5b3V0U2l6
ZShjb25zdCBJbnRTaXplJiBzaXplKQoreworICAgIEZyYW1lVmlldyogdmlldyA9IG1haW5GcmFt
ZVZpZXcoKTsKKyAgICBpZiAoIXZpZXcgfHwgdmlldy0+Zml4ZWRMYXlvdXRTaXplKCkgPT0gc2l6
ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgTE9HX1dJVEhfU1RSRUFNKFZpc2libGVS
ZWN0cywgc3RyZWFtIDw8ICJXZWJQYWdlICIgPDwgbV9pZGVudGlmaWVyLnRvVUludDY0KCkgPDwg
IiBzZXRGaXhlZExheW91dFNpemUgIiA8PCBzaXplKTsKKyAgICB2aWV3LT5zZXRGaXhlZExheW91
dFNpemUoc2l6ZSk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZpeGVkTGF5
b3V0U2l6ZURpZENoYW5nZShzaXplKSk7CisgICAgcmV0dXJuIHRydWU7Cit9CisKK0ludFNpemUg
V2ViUGFnZTo6Zml4ZWRMYXlvdXRTaXplKCkgY29uc3QKK3sKKyAgICBGcmFtZVZpZXcqIHZpZXcg
PSBtYWluRnJhbWVWaWV3KCk7CisgICAgaWYgKCF2aWV3KQorICAgICAgICByZXR1cm4gSW50U2l6
ZSgpOworICAgIHJldHVybiB2aWV3LT5maXhlZExheW91dFNpemUoKTsKK30KKwordm9pZCBXZWJQ
YWdlOjpkaXNhYmxlZEFkYXB0YXRpb25zRGlkQ2hhbmdlKGNvbnN0IE9wdGlvblNldDxEaXNhYmxl
ZEFkYXB0YXRpb25zPiYgZGlzYWJsZWRBZGFwdGF0aW9ucykKK3sKKyNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQorICAgIGlmIChtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXREaXNhYmxlZEFkYXB0
YXRpb25zKGRpc2FibGVkQWRhcHRhdGlvbnMpKQorICAgICAgICB2aWV3cG9ydENvbmZpZ3VyYXRp
b25DaGFuZ2VkKCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShkaXNhYmxlZEFkYXB0YXRpb25z
KTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2U6OnZpZXdwb3J0UHJvcGVydGllc0RpZENoYW5n
ZShjb25zdCBWaWV3cG9ydEFyZ3VtZW50cyYgdmlld3BvcnRBcmd1bWVudHMpCit7CisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBpZiAobV92aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmll
d3BvcnRBcmd1bWVudHModmlld3BvcnRBcmd1bWVudHMpKQorICAgICAgICB2aWV3cG9ydENvbmZp
Z3VyYXRpb25DaGFuZ2VkKCk7CisjZW5kaWYKKworI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElD
UykKKyAgICBGcmFtZVZpZXcqIHZpZXcgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLnZpZXcoKTsKKyAg
ICBpZiAodmlldyAmJiB2aWV3LT51c2VGaXhlZExheW91dCgpKQorICAgICAgICBzZW5kVmlld3Bv
cnRBdHRyaWJ1dGVzQ2hhbmdlZCh2aWV3cG9ydEFyZ3VtZW50cyk7CisgICAgZWxzZQorICAgICAg
ICBtX2RyYXdpbmdBcmVhLT5kaWRDaGFuZ2VWaWV3cG9ydEF0dHJpYnV0ZXMoVmlld3BvcnRBdHRy
aWJ1dGVzKCkpOworI2VuZGlmCisKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgIVVTRShD
T09SRElOQVRFRF9HUkFQSElDUykKKyAgICBVTlVTRURfUEFSQU0odmlld3BvcnRBcmd1bWVudHMp
OworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZTo6bGlzdGVuRm9yTGF5b3V0TWlsZXN0b25lcyhP
cHRpb25TZXQ8V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lPiBtaWxlc3RvbmVzKQoreworICAgIGlm
ICghbV9wYWdlKQorICAgICAgICByZXR1cm47CisgICAgbV9wYWdlLT5hZGRMYXlvdXRNaWxlc3Rv
bmVzKG1pbGVzdG9uZXMpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldFN1cHByZXNzU2Nyb2xsYmFy
QW5pbWF0aW9ucyhib29sIHN1cHByZXNzQW5pbWF0aW9ucykKK3sKKyAgICBtX3BhZ2UtPnNldFNo
b3VsZFN1cHByZXNzU2Nyb2xsYmFyQW5pbWF0aW9ucyhzdXBwcmVzc0FuaW1hdGlvbnMpOworfQor
ICAgIAordm9pZCBXZWJQYWdlOjpzZXRFbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmcoYm9vbCBl
bmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmcpCit7CisgICAgbV9wYWdlLT5zZXRWZXJ0aWNhbFNj
cm9sbEVsYXN0aWNpdHkoZW5hYmxlVmVydGljYWxSdWJiZXJCYW5kaW5nID8gU2Nyb2xsRWxhc3Rp
Y2l0eUFsbG93ZWQgOiBTY3JvbGxFbGFzdGljaXR5Tm9uZSk7Cit9CisgICAgCit2b2lkIFdlYlBh
Z2U6OnNldEVuYWJsZUhvcml6b250YWxSdWJiZXJCYW5kaW5nKGJvb2wgZW5hYmxlSG9yaXpvbnRh
bFJ1YmJlckJhbmRpbmcpCit7CisgICAgbV9wYWdlLT5zZXRIb3Jpem9udGFsU2Nyb2xsRWxhc3Rp
Y2l0eShlbmFibGVIb3Jpem9udGFsUnViYmVyQmFuZGluZyA/IFNjcm9sbEVsYXN0aWNpdHlBbGxv
d2VkIDogU2Nyb2xsRWxhc3RpY2l0eU5vbmUpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEJhY2tn
cm91bmRFeHRlbmRzQmV5b25kUGFnZShib29sIGJhY2tncm91bmRFeHRlbmRzQmV5b25kUGFnZSkK
K3sKKyAgICBpZiAobV9wYWdlLT5zZXR0aW5ncygpLmJhY2tncm91bmRTaG91bGRFeHRlbmRCZXlv
bmRQYWdlKCkgIT0gYmFja2dyb3VuZEV4dGVuZHNCZXlvbmRQYWdlKQorICAgICAgICBtX3BhZ2Ut
PnNldHRpbmdzKCkuc2V0QmFja2dyb3VuZFNob3VsZEV4dGVuZEJleW9uZFBhZ2UoYmFja2dyb3Vu
ZEV4dGVuZHNCZXlvbmRQYWdlKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRQYWdpbmF0aW9uTW9k
ZSh1aW50MzJfdCBtb2RlKQoreworICAgIFBhZ2luYXRpb24gcGFnaW5hdGlvbiA9IG1fcGFnZS0+
cGFnaW5hdGlvbigpOworICAgIHBhZ2luYXRpb24ubW9kZSA9IHN0YXRpY19jYXN0PFBhZ2luYXRp
b246Ok1vZGU+KG1vZGUpOworICAgIG1fcGFnZS0+c2V0UGFnaW5hdGlvbihwYWdpbmF0aW9uKTsK
K30KKwordm9pZCBXZWJQYWdlOjpzZXRQYWdpbmF0aW9uQmVoYXZlc0xpa2VDb2x1bW5zKGJvb2wg
YmVoYXZlc0xpa2VDb2x1bW5zKQoreworICAgIFBhZ2luYXRpb24gcGFnaW5hdGlvbiA9IG1fcGFn
ZS0+cGFnaW5hdGlvbigpOworICAgIHBhZ2luYXRpb24uYmVoYXZlc0xpa2VDb2x1bW5zID0gYmVo
YXZlc0xpa2VDb2x1bW5zOworICAgIG1fcGFnZS0+c2V0UGFnaW5hdGlvbihwYWdpbmF0aW9uKTsK
K30KKwordm9pZCBXZWJQYWdlOjpzZXRQYWdlTGVuZ3RoKGRvdWJsZSBwYWdlTGVuZ3RoKQorewor
ICAgIFBhZ2luYXRpb24gcGFnaW5hdGlvbiA9IG1fcGFnZS0+cGFnaW5hdGlvbigpOworICAgIHBh
Z2luYXRpb24ucGFnZUxlbmd0aCA9IHBhZ2VMZW5ndGg7CisgICAgbV9wYWdlLT5zZXRQYWdpbmF0
aW9uKHBhZ2luYXRpb24pOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEdhcEJldHdlZW5QYWdlcyhk
b3VibGUgZ2FwKQoreworICAgIFBhZ2luYXRpb24gcGFnaW5hdGlvbiA9IG1fcGFnZS0+cGFnaW5h
dGlvbigpOworICAgIHBhZ2luYXRpb24uZ2FwID0gZ2FwOworICAgIG1fcGFnZS0+c2V0UGFnaW5h
dGlvbihwYWdpbmF0aW9uKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRQYWdpbmF0aW9uTGluZUdy
aWRFbmFibGVkKGJvb2wgbGluZUdyaWRFbmFibGVkKQoreworICAgIG1fcGFnZS0+c2V0UGFnaW5h
dGlvbkxpbmVHcmlkRW5hYmxlZChsaW5lR3JpZEVuYWJsZWQpOworfQorCit2b2lkIFdlYlBhZ2U6
OnBvc3RJbmplY3RlZEJ1bmRsZU1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlTmFtZSwgY29u
c3QgVXNlckRhdGEmIHVzZXJEYXRhKQoreworICAgIGF1dG8mIHdlYlByb2Nlc3MgPSBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKTsKKyAgICBJbmplY3RlZEJ1bmRsZSogaW5qZWN0ZWRCdW5kbGUgPSB3
ZWJQcm9jZXNzLmluamVjdGVkQnVuZGxlKCk7CisgICAgaWYgKCFpbmplY3RlZEJ1bmRsZSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgaW5qZWN0ZWRCdW5kbGUtPmRpZFJlY2VpdmVNZXNzYWdlVG9Q
YWdlKHRoaXMsIG1lc3NhZ2VOYW1lLCB3ZWJQcm9jZXNzLnRyYW5zZm9ybUhhbmRsZXNUb09iamVj
dHModXNlckRhdGEub2JqZWN0KCkpLmdldCgpKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRVbmRl
clBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlkZShXZWJDb3JlOjpDb2xvciYmIHVuZGVyUGFnZUJh
Y2tncm91bmRDb2xvck92ZXJyaWRlKQoreworICAgIG1fcGFnZS0+c2V0VW5kZXJQYWdlQmFja2dy
b3VuZENvbG9yT3ZlcnJpZGUoV1RGTW92ZSh1bmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlk
ZSkpOworfQorCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZTo6c2V0
SGVhZGVyUGFnZUJhbm5lcihQYWdlQmFubmVyKiBwYWdlQmFubmVyKQoreworICAgIGlmIChtX2hl
YWRlckJhbm5lcikKKyAgICAgICAgbV9oZWFkZXJCYW5uZXItPmRldGFjaEZyb21QYWdlKCk7CisK
KyAgICBtX2hlYWRlckJhbm5lciA9IHBhZ2VCYW5uZXI7CisKKyAgICBpZiAobV9oZWFkZXJCYW5u
ZXIpCisgICAgICAgIG1faGVhZGVyQmFubmVyLT5hZGRUb1BhZ2UoUGFnZUJhbm5lcjo6SGVhZGVy
LCB0aGlzKTsKK30KKworUGFnZUJhbm5lciogV2ViUGFnZTo6aGVhZGVyUGFnZUJhbm5lcigpCit7
CisgICAgcmV0dXJuIG1faGVhZGVyQmFubmVyLmdldCgpOworfQorCit2b2lkIFdlYlBhZ2U6OnNl
dEZvb3RlclBhZ2VCYW5uZXIoUGFnZUJhbm5lciogcGFnZUJhbm5lcikKK3sKKyAgICBpZiAobV9m
b290ZXJCYW5uZXIpCisgICAgICAgIG1fZm9vdGVyQmFubmVyLT5kZXRhY2hGcm9tUGFnZSgpOwor
CisgICAgbV9mb290ZXJCYW5uZXIgPSBwYWdlQmFubmVyOworCisgICAgaWYgKG1fZm9vdGVyQmFu
bmVyKQorICAgICAgICBtX2Zvb3RlckJhbm5lci0+YWRkVG9QYWdlKFBhZ2VCYW5uZXI6OkZvb3Rl
ciwgdGhpcyk7Cit9CisKK1BhZ2VCYW5uZXIqIFdlYlBhZ2U6OmZvb3RlclBhZ2VCYW5uZXIoKQor
eworICAgIHJldHVybiBtX2Zvb3RlckJhbm5lci5nZXQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpo
aWRlUGFnZUJhbm5lcnMoKQoreworICAgIGlmIChtX2hlYWRlckJhbm5lcikKKyAgICAgICAgbV9o
ZWFkZXJCYW5uZXItPmhpZGUoKTsKKyAgICBpZiAobV9mb290ZXJCYW5uZXIpCisgICAgICAgIG1f
Zm9vdGVyQmFubmVyLT5oaWRlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2hvd1BhZ2VCYW5uZXJz
KCkKK3sKKyAgICBpZiAobV9oZWFkZXJCYW5uZXIpCisgICAgICAgIG1faGVhZGVyQmFubmVyLT5z
aG93SWZIaWRkZW4oKTsKKyAgICBpZiAobV9mb290ZXJCYW5uZXIpCisgICAgICAgIG1fZm9vdGVy
QmFubmVyLT5zaG93SWZIaWRkZW4oKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRIZWFkZXJCYW5u
ZXJIZWlnaHRGb3JUZXN0aW5nKGludCBoZWlnaHQpCit7CisgICAgY29yZVBhZ2UoKS0+c2V0SGVh
ZGVySGVpZ2h0KGhlaWdodCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0Rm9vdGVyQmFubmVySGVp
Z2h0Rm9yVGVzdGluZyhpbnQgaGVpZ2h0KQoreworICAgIGNvcmVQYWdlKCktPnNldEZvb3Rlckhl
aWdodChoZWlnaHQpOworfQorCisjZW5kaWYgLy8gIVBMQVRGT1JNKElPU19GQU1JTFkpCisKK3Zv
aWQgV2ViUGFnZTo6dGFrZVNuYXBzaG90KEludFJlY3Qgc25hcHNob3RSZWN0LCBJbnRTaXplIGJp
dG1hcFNpemUsIHVpbnQzMl90IG9wdGlvbnMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIFNuYXBzaG90T3B0aW9ucyBzbmFwc2hvdE9wdGlvbnMgPSBzdGF0aWNfY2FzdDxTbmFw
c2hvdE9wdGlvbnM+KG9wdGlvbnMpOworICAgIHNuYXBzaG90T3B0aW9ucyB8PSBTbmFwc2hvdE9w
dGlvbnNTaGFyZWFibGU7CisKKyAgICBSZWZQdHI8V2ViSW1hZ2U+IGltYWdlID0gc25hcHNob3RB
dFNpemUoc25hcHNob3RSZWN0LCBiaXRtYXBTaXplLCBzbmFwc2hvdE9wdGlvbnMpOworCisgICAg
U2hhcmVhYmxlQml0bWFwOjpIYW5kbGUgaGFuZGxlOworICAgIGlmIChpbWFnZSkKKyAgICAgICAg
aW1hZ2UtPmJpdG1hcCgpLmNyZWF0ZUhhbmRsZShoYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVj
dGlvbjo6UmVhZE9ubHkpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIoaGFuZGxlKTsKK30KKwor
UmVmUHRyPFdlYkltYWdlPiBXZWJQYWdlOjpzY2FsZWRTbmFwc2hvdFdpdGhPcHRpb25zKGNvbnN0
IEludFJlY3QmIHJlY3QsIGRvdWJsZSBhZGRpdGlvbmFsU2NhbGVGYWN0b3IsIFNuYXBzaG90T3B0
aW9ucyBvcHRpb25zKQoreworICAgIEludFJlY3Qgc25hcHNob3RSZWN0ID0gcmVjdDsKKyAgICBJ
bnRTaXplIGJpdG1hcFNpemUgPSBzbmFwc2hvdFJlY3Quc2l6ZSgpOworICAgIGlmIChvcHRpb25z
ICYgU25hcHNob3RPcHRpb25zUHJpbnRpbmcpIHsKKyAgICAgICAgQVNTRVJUKGFkZGl0aW9uYWxT
Y2FsZUZhY3RvciA9PSAxKTsKKyAgICAgICAgRnJhbWUqIGNvcmVGcmFtZSA9IG1fbWFpbkZyYW1l
LT5jb3JlRnJhbWUoKTsKKyAgICAgICAgaWYgKCFjb3JlRnJhbWUpCisgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICAgICAgYml0bWFwU2l6ZS5zZXRIZWlnaHQoUHJpbnRDb250ZXh0Ojpu
dW1iZXJPZlBhZ2VzKCpjb3JlRnJhbWUsIGJpdG1hcFNpemUpICogKGJpdG1hcFNpemUuaGVpZ2h0
KCkgKyAxKSAtIDEpOworICAgIH0gZWxzZSB7CisgICAgICAgIGRvdWJsZSBzY2FsZUZhY3RvciA9
IGFkZGl0aW9uYWxTY2FsZUZhY3RvcjsKKyAgICAgICAgaWYgKCEob3B0aW9ucyAmIFNuYXBzaG90
T3B0aW9uc0V4Y2x1ZGVEZXZpY2VTY2FsZUZhY3RvcikpCisgICAgICAgICAgICBzY2FsZUZhY3Rv
ciAqPSBjb3JlUGFnZSgpLT5kZXZpY2VTY2FsZUZhY3RvcigpOworICAgICAgICBiaXRtYXBTaXpl
LnNjYWxlKHNjYWxlRmFjdG9yKTsKKyAgICB9CisKKyAgICByZXR1cm4gc25hcHNob3RBdFNpemUo
cmVjdCwgYml0bWFwU2l6ZSwgb3B0aW9ucyk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cGFpbnRTbmFw
c2hvdEF0U2l6ZShjb25zdCBJbnRSZWN0JiByZWN0LCBjb25zdCBJbnRTaXplJiBiaXRtYXBTaXpl
LCBTbmFwc2hvdE9wdGlvbnMgb3B0aW9ucywgRnJhbWUmIGZyYW1lLCBGcmFtZVZpZXcmIGZyYW1l
VmlldywgR3JhcGhpY3NDb250ZXh0JiBncmFwaGljc0NvbnRleHQpCit7CisgICAgVHJhY2VTY29w
ZSBzbmFwc2hvdFNjb3BlKFBhaW50U25hcHNob3RTdGFydCwgUGFpbnRTbmFwc2hvdEVuZCwgb3B0
aW9ucyk7CisKKyAgICBJbnRSZWN0IHNuYXBzaG90UmVjdCA9IHJlY3Q7CisgICAgZmxvYXQgaG9y
aXpvbnRhbFNjYWxlRmFjdG9yID0gc3RhdGljX2Nhc3Q8ZmxvYXQ+KGJpdG1hcFNpemUud2lkdGgo
KSkgLyByZWN0LndpZHRoKCk7CisgICAgZmxvYXQgdmVydGljYWxTY2FsZUZhY3RvciA9IHN0YXRp
Y19jYXN0PGZsb2F0PihiaXRtYXBTaXplLmhlaWdodCgpKSAvIHJlY3QuaGVpZ2h0KCk7CisgICAg
ZmxvYXQgc2NhbGVGYWN0b3IgPSBzdGQ6Om1heChob3Jpem9udGFsU2NhbGVGYWN0b3IsIHZlcnRp
Y2FsU2NhbGVGYWN0b3IpOworCisgICAgaWYgKG9wdGlvbnMgJiBTbmFwc2hvdE9wdGlvbnNQcmlu
dGluZykgeworICAgICAgICBQcmludENvbnRleHQ6OnNwb29sQWxsUGFnZXNXaXRoQm91bmRhcmll
cyhmcmFtZSwgZ3JhcGhpY3NDb250ZXh0LCBzbmFwc2hvdFJlY3Quc2l6ZSgpKTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIENvbG9yIGRvY3VtZW50QmFja2dyb3VuZENvbG9yID0gZnJh
bWVWaWV3LmRvY3VtZW50QmFja2dyb3VuZENvbG9yKCk7CisgICAgQ29sb3IgYmFja2dyb3VuZENv
bG9yID0gKGZyYW1lLnNldHRpbmdzKCkuYmFja2dyb3VuZFNob3VsZEV4dGVuZEJleW9uZFBhZ2Uo
KSAmJiBkb2N1bWVudEJhY2tncm91bmRDb2xvci5pc1ZhbGlkKCkpID8gZG9jdW1lbnRCYWNrZ3Jv
dW5kQ29sb3IgOiBmcmFtZVZpZXcuYmFzZUJhY2tncm91bmRDb2xvcigpOworICAgIGdyYXBoaWNz
Q29udGV4dC5maWxsUmVjdChJbnRSZWN0KEludFBvaW50KCksIGJpdG1hcFNpemUpLCBiYWNrZ3Jv
dW5kQ29sb3IpOworCisgICAgaWYgKCEob3B0aW9ucyAmIFNuYXBzaG90T3B0aW9uc0V4Y2x1ZGVE
ZXZpY2VTY2FsZUZhY3RvcikpIHsKKyAgICAgICAgZG91YmxlIGRldmljZVNjYWxlRmFjdG9yID0g
ZnJhbWUucGFnZSgpLT5kZXZpY2VTY2FsZUZhY3RvcigpOworICAgICAgICBncmFwaGljc0NvbnRl
eHQuYXBwbHlEZXZpY2VTY2FsZUZhY3RvcihkZXZpY2VTY2FsZUZhY3Rvcik7CisgICAgICAgIHNj
YWxlRmFjdG9yIC89IGRldmljZVNjYWxlRmFjdG9yOworICAgIH0KKworICAgIGdyYXBoaWNzQ29u
dGV4dC5zY2FsZShzY2FsZUZhY3Rvcik7CisgICAgZ3JhcGhpY3NDb250ZXh0LnRyYW5zbGF0ZSgt
c25hcHNob3RSZWN0LmxvY2F0aW9uKCkpOworCisgICAgRnJhbWVWaWV3OjpTZWxlY3Rpb25JblNu
YXBzaG90IHNob3VsZFBhaW50U2VsZWN0aW9uID0gRnJhbWVWaWV3OjpJbmNsdWRlU2VsZWN0aW9u
OworICAgIGlmIChvcHRpb25zICYgU25hcHNob3RPcHRpb25zRXhjbHVkZVNlbGVjdGlvbkhpZ2hs
aWdodGluZykKKyAgICAgICAgc2hvdWxkUGFpbnRTZWxlY3Rpb24gPSBGcmFtZVZpZXc6OkV4Y2x1
ZGVTZWxlY3Rpb247CisKKyAgICBGcmFtZVZpZXc6OkNvb3JkaW5hdGVTcGFjZUZvclNuYXBzaG90
IGNvb3JkaW5hdGVTcGFjZSA9IEZyYW1lVmlldzo6RG9jdW1lbnRDb29yZGluYXRlczsKKyAgICBp
ZiAob3B0aW9ucyAmIFNuYXBzaG90T3B0aW9uc0luVmlld0Nvb3JkaW5hdGVzKQorICAgICAgICBj
b29yZGluYXRlU3BhY2UgPSBGcmFtZVZpZXc6OlZpZXdDb29yZGluYXRlczsKKworICAgIGZyYW1l
Vmlldy5wYWludENvbnRlbnRzRm9yU25hcHNob3QoZ3JhcGhpY3NDb250ZXh0LCBzbmFwc2hvdFJl
Y3QsIHNob3VsZFBhaW50U2VsZWN0aW9uLCBjb29yZGluYXRlU3BhY2UpOworCisgICAgaWYgKG9w
dGlvbnMgJiBTbmFwc2hvdE9wdGlvbnNQYWludFNlbGVjdGlvblJlY3RhbmdsZSkgeworICAgICAg
ICBGbG9hdFJlY3Qgc2VsZWN0aW9uUmVjdGFuZ2xlID0gZnJhbWUuc2VsZWN0aW9uKCkuc2VsZWN0
aW9uQm91bmRzKCk7CisgICAgICAgIGdyYXBoaWNzQ29udGV4dC5zZXRTdHJva2VDb2xvcihDb2xv
cjo6cmVkKTsKKyAgICAgICAgZ3JhcGhpY3NDb250ZXh0LnN0cm9rZVJlY3Qoc2VsZWN0aW9uUmVj
dGFuZ2xlLCAxKTsKKyAgICB9Cit9CisKK3N0YXRpYyBTaGFyZWFibGVCaXRtYXA6OkNvbmZpZ3Vy
YXRpb24gc25hcHNob3RPcHRpb25zVG9CaXRtYXBDb25maWd1cmF0aW9uKFNuYXBzaG90T3B0aW9u
cyBvcHRpb25zLCBXZWJQYWdlJiBwYWdlKQoreworICAgIFNoYXJlYWJsZUJpdG1hcDo6Q29uZmln
dXJhdGlvbiBjb25maWd1cmF0aW9uOworI2lmIFVTRShDRykKKyAgICBpZiAob3B0aW9ucyAmIFNu
YXBzaG90T3B0aW9uc1VzZVNjcmVlbkNvbG9yU3BhY2UpCisgICAgICAgIGNvbmZpZ3VyYXRpb24u
Y29sb3JTcGFjZSA9IHNjcmVlbkNvbG9yU3BhY2UocGFnZS5jb3JlUGFnZSgpLT5tYWluRnJhbWUo
KS52aWV3KCkpOworI2VuZGlmCisgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb247Cit9CisKK1JlZlB0
cjxXZWJJbWFnZT4gV2ViUGFnZTo6c25hcHNob3RBdFNpemUoY29uc3QgSW50UmVjdCYgcmVjdCwg
Y29uc3QgSW50U2l6ZSYgYml0bWFwU2l6ZSwgU25hcHNob3RPcHRpb25zIG9wdGlvbnMpCit7Cisg
ICAgRnJhbWUqIGNvcmVGcmFtZSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBpZiAo
IWNvcmVGcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBGcmFtZVZpZXcqIGZy
YW1lVmlldyA9IGNvcmVGcmFtZS0+dmlldygpOworICAgIGlmICghZnJhbWVWaWV3KQorICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKworICAgIGF1dG8gc25hcHNob3QgPSBXZWJJbWFnZTo6Y3JlYXRl
KGJpdG1hcFNpemUsIHNuYXBzaG90T3B0aW9uc1RvSW1hZ2VPcHRpb25zKG9wdGlvbnMpLCBzbmFw
c2hvdE9wdGlvbnNUb0JpdG1hcENvbmZpZ3VyYXRpb24ob3B0aW9ucywgKnRoaXMpKTsKKyAgICBp
ZiAoIXNuYXBzaG90KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICBhdXRvIGdyYXBoaWNz
Q29udGV4dCA9IHNuYXBzaG90LT5iaXRtYXAoKS5jcmVhdGVHcmFwaGljc0NvbnRleHQoKTsKKyAg
ICBpZiAoIWdyYXBoaWNzQ29udGV4dCkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBw
YWludFNuYXBzaG90QXRTaXplKHJlY3QsIGJpdG1hcFNpemUsIG9wdGlvbnMsICpjb3JlRnJhbWUs
ICpmcmFtZVZpZXcsICpncmFwaGljc0NvbnRleHQpOworCisgICAgcmV0dXJuIHNuYXBzaG90Owor
fQorCitSZWZQdHI8V2ViSW1hZ2U+IFdlYlBhZ2U6OnNuYXBzaG90Tm9kZShXZWJDb3JlOjpOb2Rl
JiBub2RlLCBTbmFwc2hvdE9wdGlvbnMgb3B0aW9ucywgdW5zaWduZWQgbWF4aW11bVBpeGVsQ291
bnQpCit7CisgICAgRnJhbWUqIGNvcmVGcmFtZSA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKTsK
KyAgICBpZiAoIWNvcmVGcmFtZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBGcmFt
ZVZpZXcqIGZyYW1lVmlldyA9IGNvcmVGcmFtZS0+dmlldygpOworICAgIGlmICghZnJhbWVWaWV3
KQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGlmICghbm9kZS5yZW5kZXJlcigpKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIExheW91dFJlY3QgdG9wTGV2ZWxSZWN0Owor
ICAgIEludFJlY3Qgc25hcHNob3RSZWN0ID0gc25hcHBlZEludFJlY3Qobm9kZS5yZW5kZXJlcigp
LT5wYWludGluZ1Jvb3RSZWN0KHRvcExldmVsUmVjdCkpOworICAgIGlmIChzbmFwc2hvdFJlY3Qu
aXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGRvdWJsZSBzY2FsZUZh
Y3RvciA9IDE7CisgICAgSW50U2l6ZSBzbmFwc2hvdFNpemUgPSBzbmFwc2hvdFJlY3Quc2l6ZSgp
OworICAgIHVuc2lnbmVkIG1heGltdW1IZWlnaHQgPSBtYXhpbXVtUGl4ZWxDb3VudCAvIHNuYXBz
aG90U2l6ZS53aWR0aCgpOworICAgIGlmIChtYXhpbXVtSGVpZ2h0IDwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KHNuYXBzaG90U2l6ZS5oZWlnaHQoKSkpIHsKKyAgICAgICAgc2NhbGVGYWN0b3IgPSBz
dGF0aWNfY2FzdDxkb3VibGU+KG1heGltdW1IZWlnaHQpIC8gc25hcHNob3RTaXplLmhlaWdodCgp
OworICAgICAgICBzbmFwc2hvdFNpemUgPSBJbnRTaXplKHNuYXBzaG90U2l6ZS53aWR0aCgpICog
c2NhbGVGYWN0b3IsIG1heGltdW1IZWlnaHQpOworICAgIH0KKworICAgIGF1dG8gc25hcHNob3Qg
PSBXZWJJbWFnZTo6Y3JlYXRlKHNuYXBzaG90U2l6ZSwgc25hcHNob3RPcHRpb25zVG9JbWFnZU9w
dGlvbnMob3B0aW9ucyksIHNuYXBzaG90T3B0aW9uc1RvQml0bWFwQ29uZmlndXJhdGlvbihvcHRp
b25zLCAqdGhpcykpOworICAgIGlmICghc25hcHNob3QpCisgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIGF1dG8gZ3JhcGhpY3NDb250ZXh0ID0gc25hcHNob3QtPmJpdG1hcCgpLmNyZWF0ZUdy
YXBoaWNzQ29udGV4dCgpOworICAgIGlmICghZ3JhcGhpY3NDb250ZXh0KQorICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKworICAgIGlmICghKG9wdGlvbnMgJiBTbmFwc2hvdE9wdGlvbnNFeGNsdWRl
RGV2aWNlU2NhbGVGYWN0b3IpKSB7CisgICAgICAgIGRvdWJsZSBkZXZpY2VTY2FsZUZhY3RvciA9
IGNvcmVQYWdlKCktPmRldmljZVNjYWxlRmFjdG9yKCk7CisgICAgICAgIGdyYXBoaWNzQ29udGV4
dC0+YXBwbHlEZXZpY2VTY2FsZUZhY3RvcihkZXZpY2VTY2FsZUZhY3Rvcik7CisgICAgICAgIHNj
YWxlRmFjdG9yIC89IGRldmljZVNjYWxlRmFjdG9yOworICAgIH0KKworICAgIGdyYXBoaWNzQ29u
dGV4dC0+c2NhbGUoc2NhbGVGYWN0b3IpOworICAgIGdyYXBoaWNzQ29udGV4dC0+dHJhbnNsYXRl
KC1zbmFwc2hvdFJlY3QubG9jYXRpb24oKSk7CisKKyAgICBDb2xvciBzYXZlZEJhY2tncm91bmRD
b2xvciA9IGZyYW1lVmlldy0+YmFzZUJhY2tncm91bmRDb2xvcigpOworICAgIGZyYW1lVmlldy0+
c2V0QmFzZUJhY2tncm91bmRDb2xvcihDb2xvcjo6dHJhbnNwYXJlbnRCbGFjayk7CisgICAgZnJh
bWVWaWV3LT5zZXROb2RlVG9EcmF3KCZub2RlKTsKKworICAgIGZyYW1lVmlldy0+cGFpbnRDb250
ZW50c0ZvclNuYXBzaG90KCpncmFwaGljc0NvbnRleHQsIHNuYXBzaG90UmVjdCwgRnJhbWVWaWV3
OjpFeGNsdWRlU2VsZWN0aW9uLCBGcmFtZVZpZXc6OkRvY3VtZW50Q29vcmRpbmF0ZXMpOworCisg
ICAgZnJhbWVWaWV3LT5zZXRCYXNlQmFja2dyb3VuZENvbG9yKHNhdmVkQmFja2dyb3VuZENvbG9y
KTsKKyAgICBmcmFtZVZpZXctPnNldE5vZGVUb0RyYXcobnVsbHB0cik7CisKKyAgICByZXR1cm4g
c25hcHNob3Q7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cGFnZURpZFNjcm9sbCgpCit7CisjaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBpZiAoIW1faW5EeW5hbWljU2l6ZVVwZGF0ZSkKKyAgICAg
ICAgbV9keW5hbWljU2l6ZVVwZGF0ZUhpc3RvcnkuY2xlYXIoKTsKKyNlbmRpZgorICAgIG1fdWlD
bGllbnQtPnBhZ2VEaWRTY3JvbGwodGhpcyk7CisKKyAgICBtX3BhZ2VTY3JvbGxlZEh5c3RlcmVz
aXMuaW1wdWxzZSgpOworCisgICAgYXV0byBzY3JvbGxQb3NpdGlvbiA9IG1fcGFnZS0+bWFpbkZy
YW1lKCkudmlldygpLT5zY3JvbGxQb3NpdGlvbigpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6UGFnZURpZFNjcm9sbChzY3JvbGxQb3NpdGlvbikpOworfQorCit2b2lkIFdlYlBh
Z2U6OnBhZ2VTdG9wcGVkU2Nyb2xsaW5nKCkKK3sKKyAgICAvLyBNYWludGFpbiB0aGUgY3VycmVu
dCBoaXN0b3J5IGl0ZW0ncyBzY3JvbGwgcG9zaXRpb24gdXAtdG8tZGF0ZS4KKyAgICBpZiAoRnJh
bWUqIGZyYW1lID0gbV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpKQorICAgICAgICBmcmFtZS0+bG9h
ZGVyKCkuaGlzdG9yeSgpLnNhdmVTY3JvbGxQb3NpdGlvbkFuZFZpZXdTdGF0ZVRvSXRlbShmcmFt
ZS0+bG9hZGVyKCkuaGlzdG9yeSgpLmN1cnJlbnRJdGVtKCkpOworfQorCisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVVMpCitXZWJDb250ZXh0TWVudSYgV2ViUGFnZTo6Y29udGV4dE1lbnUoKQorewor
ICAgIGlmICghbV9jb250ZXh0TWVudSkKKyAgICAgICAgbV9jb250ZXh0TWVudSA9IFdlYkNvbnRl
eHRNZW51OjpjcmVhdGUoKnRoaXMpOworICAgIHJldHVybiAqbV9jb250ZXh0TWVudTsKK30KKwor
V2ViQ29udGV4dE1lbnUqIFdlYlBhZ2U6OmNvbnRleHRNZW51QXRQb2ludEluV2luZG93KGNvbnN0
IEludFBvaW50JiBwb2ludCkKK3sKKyAgICBjb3JlUGFnZSgpLT5jb250ZXh0TWVudUNvbnRyb2xs
ZXIoKS5jbGVhckNvbnRleHRNZW51KCk7CisKKyAgICAvLyBTaW11bGF0ZSBhIG1vdXNlIGNsaWNr
IHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG1lbnUuCisgICAgUGxhdGZvcm1Nb3VzZUV2ZW50IG1v
dXNlUHJlc3NFdmVudChwb2ludCwgcG9pbnQsIFJpZ2h0QnV0dG9uLCBQbGF0Zm9ybUV2ZW50OjpN
b3VzZVByZXNzZWQsIDEsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBXYWxsVGltZTo6bm93
KCksIFdlYkNvcmU6OkZvcmNlQXRDbGljaywgV2ViQ29yZTo6Tm9UYXApOworICAgIGNvcmVQYWdl
KCktPnVzZXJJbnB1dEJyaWRnZSgpLmhhbmRsZU1vdXNlUHJlc3NFdmVudChtb3VzZVByZXNzRXZl
bnQpOworICAgIFJlZiBtYWluRnJhbWUgPSBjb3JlUGFnZSgpLT5tYWluRnJhbWUoKTsKKyAgICBi
b29sIGhhbmRsZWQgPSBjb3JlUGFnZSgpLT51c2VySW5wdXRCcmlkZ2UoKS5oYW5kbGVDb250ZXh0
TWVudUV2ZW50KG1vdXNlUHJlc3NFdmVudCwgbWFpbkZyYW1lKTsKKyAgICBhdXRvKiBtZW51ID0g
aGFuZGxlZCA/ICZjb250ZXh0TWVudSgpIDogbnVsbHB0cjsKKyAgICBQbGF0Zm9ybU1vdXNlRXZl
bnQgbW91c2VSZWxlYXNlRXZlbnQocG9pbnQsIHBvaW50LCBSaWdodEJ1dHRvbiwgUGxhdGZvcm1F
dmVudDo6TW91c2VSZWxlYXNlZCwgMSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIFdhbGxU
aW1lOjpub3coKSwgV2ViQ29yZTo6Rm9yY2VBdENsaWNrLCBXZWJDb3JlOjpOb1RhcCk7CisgICAg
Y29yZVBhZ2UoKS0+dXNlcklucHV0QnJpZGdlKCkuaGFuZGxlTW91c2VSZWxlYXNlRXZlbnQobW91
c2VSZWxlYXNlRXZlbnQpOworCisgICAgcmV0dXJuIG1lbnU7Cit9CisjZW5kaWYKKworLy8gRXZl
bnRzIAorCitzdGF0aWMgY29uc3QgV2ViRXZlbnQqIGdfY3VycmVudEV2ZW50ID0gMDsKKworLy8g
RklYTUU6IFdlYlBhZ2U6OmN1cnJlbnRFdmVudCBpcyB1c2VkIGJ5IHRoZSBwbHVnLWluIGNvZGUg
dG8gYXZvaWQgaGF2aW5nIHRvIGNvbnZlcnQgZnJvbSBET00gZXZlbnRzIGJhY2sgdG8KKy8vIFdl
YkV2ZW50cy4gV2hlbiB3ZSBnZXQgdGhlIGV2ZW50IGhhbmRsaW5nIHNvcnRlZCBvdXQsIHRoaXMg
c2hvdWxkIGdvIGF3YXkgYW5kIHRoZSBXaWRnZXRzIHNob3VsZCBnZXQgdGhlIGNvcnJlY3QKKy8v
IHBsYXRmb3JtIGV2ZW50cyBwYXNzZWQgdG8gdGhlIGV2ZW50IGhhbmRsZXIgY29kZS4KK2NvbnN0
IFdlYkV2ZW50KiBXZWJQYWdlOjpjdXJyZW50RXZlbnQoKQoreworICAgIHJldHVybiBnX2N1cnJl
bnRFdmVudDsKK30KKwordm9pZCBXZWJQYWdlOjpmcmVlemVMYXllclRyZWUoTGF5ZXJUcmVlRnJl
ZXplUmVhc29uIHJlYXNvbikKK3sKKyAgICBhdXRvIG9sZFJlYXNvbnMgPSBtX2xheWVyVHJlZUZy
ZWV6ZVJlYXNvbnMudG9SYXcoKTsKKyAgICBVTlVTRURfUEFSQU0ob2xkUmVhc29ucyk7CisgICAg
bV9sYXllclRyZWVGcmVlemVSZWFzb25zLmFkZChyZWFzb24pOworICAgIFdFQlBBR0VfUkVMRUFT
RV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICJmcmVlemVMYXllclRyZWU6IEFkZGluZyBhIHJlYXNv
biB0byBmcmVlemUgbGF5ZXIgdHJlZSAocmVhc29uPSVkLCBuZXc9JWQsIG9sZD0lZCkiLCBzdGF0
aWNfY2FzdDx1bnNpZ25lZD4ocmVhc29uKSwgbV9sYXllclRyZWVGcmVlemVSZWFzb25zLnRvUmF3
KCksIG9sZFJlYXNvbnMpOworICAgIHVwZGF0ZURyYXdpbmdBcmVhTGF5ZXJUcmVlRnJlZXplU3Rh
dGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjp1bmZyZWV6ZUxheWVyVHJlZShMYXllclRyZWVGcmVl
emVSZWFzb24gcmVhc29uKQoreworICAgIGF1dG8gb2xkUmVhc29ucyA9IG1fbGF5ZXJUcmVlRnJl
ZXplUmVhc29ucy50b1JhdygpOworICAgIFVOVVNFRF9QQVJBTShvbGRSZWFzb25zKTsKKyAgICBt
X2xheWVyVHJlZUZyZWV6ZVJlYXNvbnMucmVtb3ZlKHJlYXNvbik7CisgICAgV0VCUEFHRV9SRUxF
QVNFX0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgInVuZnJlZXplTGF5ZXJUcmVlOiBSZW1vdmluZyBh
IHJlYXNvbiB0byBmcmVlemUgbGF5ZXIgdHJlZSAocmVhc29uPSVkLCBuZXc9JWQsIG9sZD0lZCki
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4ocmVhc29uKSwgbV9sYXllclRyZWVGcmVlemVSZWFzb25z
LnRvUmF3KCksIG9sZFJlYXNvbnMpOworICAgIHVwZGF0ZURyYXdpbmdBcmVhTGF5ZXJUcmVlRnJl
ZXplU3RhdGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjp1cGRhdGVEcmF3aW5nQXJlYUxheWVyVHJl
ZUZyZWV6ZVN0YXRlKCkKK3sKKyAgICBpZiAoIW1fZHJhd2luZ0FyZWEpCisgICAgICAgIHJldHVy
bjsKKworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICAvLyBXaGVuIHRo
ZSBicm93c2VyIGlzIGluIHRoZSBiYWNrZ3JvdW5kLCB3ZSBzaG91bGQgbm90IGZyZWV6ZSB0aGUg
bGF5ZXIgdHJlZQorICAgIC8vIGlmIHRoZSBwYWdlIGhhcyBhIHZpZGVvIHBsYXlpbmcgaW4gcGlj
dHVyZS1pbi1waWN0dXJlLgorICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgJiYgbV92
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLT5oYXNWaWRlb1BsYXlpbmdJblBpY3R1cmVJblBpY3R1cmUo
KSAmJiBtX2xheWVyVHJlZUZyZWV6ZVJlYXNvbnMuaGFzRXhhY3RseU9uZUJpdFNldCgpICYmIG1f
bGF5ZXJUcmVlRnJlZXplUmVhc29ucy5jb250YWlucyhMYXllclRyZWVGcmVlemVSZWFzb246OkJh
Y2tncm91bmRBcHBsaWNhdGlvbikpIHsKKyAgICAgICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJU
cmVlU3RhdGVJc0Zyb3plbihmYWxzZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYK
KworICAgIG1fZHJhd2luZ0FyZWEtPnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oISFtX2xheWVy
VHJlZUZyZWV6ZVJlYXNvbnMpOworfQorCit2b2lkIFdlYlBhZ2U6OmNhbGxWb2xhdGlsaXR5Q29t
cGxldGlvbkhhbmRsZXJzKGJvb2wgc3VjY2VlZGVkKQoreworICAgIGF1dG8gY29tcGxldGlvbkhh
bmRsZXJzID0gc3RkOjpleGNoYW5nZShtX21hcmtMYXllcnNBc1ZvbGF0aWxlQ29tcGxldGlvbkhh
bmRsZXJzLCB7IH0pOworICAgIGZvciAoYXV0byYgY29tcGxldGlvbkhhbmRsZXIgOiBjb21wbGV0
aW9uSGFuZGxlcnMpCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHN1Y2NlZWRlZCk7Cit9CisK
K3ZvaWQgV2ViUGFnZTo6bGF5ZXJWb2xhdGlsaXR5VGltZXJGaXJlZCgpCit7CisgICAgU2Vjb25k
cyBuZXdJbnRlcnZhbCA9IG1fbGF5ZXJWb2xhdGlsaXR5VGltZXIucmVwZWF0SW50ZXJ2YWwoKSAq
IDIuOworICAgIGJvb2wgZGlkU3VjY2VlZCA9IG1hcmtMYXllcnNWb2xhdGlsZUltbWVkaWF0ZWx5
SWZQb3NzaWJsZSgpOworICAgIGlmIChkaWRTdWNjZWVkIHx8IG5ld0ludGVydmFsID4gbWF4aW11
bUxheWVyVm9sYXRpbGl0eVRpbWVySW50ZXJ2YWwpIHsKKyAgICAgICAgbV9sYXllclZvbGF0aWxp
dHlUaW1lci5zdG9wKCk7CisgICAgICAgIGlmIChkaWRTdWNjZWVkKQorICAgICAgICAgICAgV0VC
UEFHRV9SRUxFQVNFX0xPRyhMYXllcnMsICJsYXllclZvbGF0aWxpdHlUaW1lckZpcmVkOiBTdWNj
ZWVkZWQgaW4gbWFya2luZyBsYXllcnMgYXMgdm9sYXRpbGUiKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgV0VCUEFHRV9SRUxFQVNFX0xPRyhMYXllcnMsICJsYXllclZvbGF0aWxpdHlUaW1l
ckZpcmVkOiBGYWlsZWQgdG8gbWFyayBsYXllcnMgYXMgdm9sYXRpbGUgd2l0aGluICVnbXMiLCBt
YXhpbXVtTGF5ZXJWb2xhdGlsaXR5VGltZXJJbnRlcnZhbC5taWxsaXNlY29uZHMoKSk7CisgICAg
ICAgIGNhbGxWb2xhdGlsaXR5Q29tcGxldGlvbkhhbmRsZXJzKGRpZFN1Y2NlZWQpOworICAgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgV0VCUEFHRV9SRUxFQVNFX0xPR19FUlJPUihMYXllcnMs
ICJsYXllclZvbGF0aWxpdHlUaW1lckZpcmVkOiBGYWlsZWQgdG8gbWFyayBhbGwgbGF5ZXJzIGFz
IHZvbGF0aWxlLCB3aWxsIHJldHJ5IGluICVnIG1zIiwgbmV3SW50ZXJ2YWwubWlsbGlzZWNvbmRz
KCkpOworICAgIG1fbGF5ZXJWb2xhdGlsaXR5VGltZXIuc3RhcnRSZXBlYXRpbmcobmV3SW50ZXJ2
YWwpOworfQorCitib29sIFdlYlBhZ2U6Om1hcmtMYXllcnNWb2xhdGlsZUltbWVkaWF0ZWx5SWZQ
b3NzaWJsZSgpCit7CisgICAgcmV0dXJuICFkcmF3aW5nQXJlYSgpIHx8IGRyYXdpbmdBcmVhKCkt
Pm1hcmtMYXllcnNWb2xhdGlsZUltbWVkaWF0ZWx5SWZQb3NzaWJsZSgpOworfQorCit2b2lkIFdl
YlBhZ2U6Om1hcmtMYXllcnNWb2xhdGlsZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIFdFQlBBR0VfUkVMRUFTRV9MT0coTGF5ZXJzLCAi
bWFya0xheWVyc1ZvbGF0aWxlOiIpOworCisgICAgaWYgKG1fbGF5ZXJWb2xhdGlsaXR5VGltZXIu
aXNBY3RpdmUoKSkKKyAgICAgICAgbV9sYXllclZvbGF0aWxpdHlUaW1lci5zdG9wKCk7CisKKyAg
ICBpZiAoY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgIG1fbWFya0xheWVyc0FzVm9sYXRpbGVD
b21wbGV0aW9uSGFuZGxlcnMuYXBwZW5kKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKwor
ICAgIGJvb2wgZGlkU3VjY2VlZCA9IG1hcmtMYXllcnNWb2xhdGlsZUltbWVkaWF0ZWx5SWZQb3Nz
aWJsZSgpOworICAgIGlmIChkaWRTdWNjZWVkIHx8IG1faXNTdXNwZW5kZWRVbmRlckxvY2spIHsK
KyAgICAgICAgaWYgKGRpZFN1Y2NlZWQpCisgICAgICAgICAgICBXRUJQQUdFX1JFTEVBU0VfTE9H
KExheWVycywgIm1hcmtMYXllcnNWb2xhdGlsZTogU3VjY2Vzc2Z1bGx5IG1hcmtlZCBsYXllcnMg
YXMgdm9sYXRpbGUiKTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAvLyBJZiB3ZSBnZXQg
c3VzcGVuZGVkIHdoZW4gbG9ja2luZyB0aGUgc2NyZWVuLCBpdCBpcyBleHBlY3RlZCB0aGF0IHNv
bWUgSU9TdXJmYWNlcyBjYW5ub3QgYmUgbWFya2VkIGFzIHB1cmdlYWJsZSBzbyB3ZSBkbyBub3Qg
a2VlcCByZXRyeWluZy4KKyAgICAgICAgICAgIFdFQlBBR0VfUkVMRUFTRV9MT0coTGF5ZXJzLCAi
bWFya0xheWVyc1ZvbGF0aWxlOiBEaWQgd2hhdCB3ZSBjb3VsZCB0byBtYXJrIElPU3VyZmFjZXMg
YXMgcHVyZ2VhYmxlIGFmdGVyIGxvY2tpbmcgdGhlIHNjcmVlbiIpOworICAgICAgICB9CisgICAg
ICAgIGNhbGxWb2xhdGlsaXR5Q29tcGxldGlvbkhhbmRsZXJzKGRpZFN1Y2NlZWQpOworICAgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgV0VCUEFHRV9SRUxFQVNFX0xPRyhMYXllcnMsICJtYXJr
TGF5ZXJzVm9sYXRpbGU6IEZhaWxlZCB0byBtYXJrIGFsbCBsYXllcnMgYXMgdm9sYXRpbGUsIHdp
bGwgcmV0cnkgaW4gJWcgbXMiLCBpbml0aWFsTGF5ZXJWb2xhdGlsaXR5VGltZXJJbnRlcnZhbC5t
aWxsaXNlY29uZHMoKSk7CisgICAgbV9sYXllclZvbGF0aWxpdHlUaW1lci5zdGFydFJlcGVhdGlu
Zyhpbml0aWFsTGF5ZXJWb2xhdGlsaXR5VGltZXJJbnRlcnZhbCk7Cit9CisKK3ZvaWQgV2ViUGFn
ZTo6Y2FuY2VsTWFya0xheWVyc1ZvbGF0aWxlKCkKK3sKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9H
KExheWVycywgImNhbmNlbE1hcmtMYXllcnNWb2xhdGlsZToiKTsKKyAgICBtX2xheWVyVm9sYXRp
bGl0eVRpbWVyLnN0b3AoKTsKKyAgICBjYWxsVm9sYXRpbGl0eUNvbXBsZXRpb25IYW5kbGVycyhm
YWxzZSk7Cit9CisKK2NsYXNzIEN1cnJlbnRFdmVudCB7CitwdWJsaWM6CisgICAgZXhwbGljaXQg
Q3VycmVudEV2ZW50KGNvbnN0IFdlYkV2ZW50JiBldmVudCkKKyAgICAgICAgOiBtX3ByZXZpb3Vz
Q3VycmVudEV2ZW50KGdfY3VycmVudEV2ZW50KQorICAgIHsKKyAgICAgICAgZ19jdXJyZW50RXZl
bnQgPSAmZXZlbnQ7CisgICAgfQorCisgICAgfkN1cnJlbnRFdmVudCgpCisgICAgeworICAgICAg
ICBnX2N1cnJlbnRFdmVudCA9IG1fcHJldmlvdXNDdXJyZW50RXZlbnQ7CisgICAgfQorCitwcml2
YXRlOgorICAgIGNvbnN0IFdlYkV2ZW50KiBtX3ByZXZpb3VzQ3VycmVudEV2ZW50OworfTsKKwor
I2lmIEVOQUJMRShDT05URVhUX01FTlVTKQorCit2b2lkIFdlYlBhZ2U6OmRpZFNob3dDb250ZXh0
TWVudSgpCit7CisgICAgbV93YWl0aW5nRm9yQ29udGV4dE1lbnVUb1Nob3cgPSBmYWxzZTsKK30K
Kwordm9pZCBXZWJQYWdlOjpkaWREaXNtaXNzQ29udGV4dE1lbnUoKQoreworICAgIGNvcmVQYWdl
KCktPmNvbnRleHRNZW51Q29udHJvbGxlcigpLmRpZERpc21pc3NDb250ZXh0TWVudSgpOworfQor
CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVVMpCisKKyNpZiBFTkFCTEUoQ09OVEVYVF9N
RU5VX0VWRU5UKQorc3RhdGljIGJvb2wgaXNDb250ZXh0Q2xpY2soY29uc3QgUGxhdGZvcm1Nb3Vz
ZUV2ZW50JiBldmVudCkKK3sKKyNpZiBVU0UoQVBQS0lUKQorICAgIHJldHVybiBXZWJFdmVudEZh
Y3Rvcnk6OnNob3VsZEJlSGFuZGxlZEFzQ29udGV4dENsaWNrKGV2ZW50KTsKKyNlbHNlCisgICAg
cmV0dXJuIGV2ZW50LmJ1dHRvbigpID09IFdlYkNvcmU6OlJpZ2h0QnV0dG9uOworI2VuZGlmCit9
CisKK3N0YXRpYyBib29sIGhhbmRsZUNvbnRleHRNZW51RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3Vz
ZUV2ZW50JiBwbGF0Zm9ybU1vdXNlRXZlbnQsIFdlYlBhZ2UqIHBhZ2UpCit7CisgICAgSW50UG9p
bnQgcG9pbnQgPSBwYWdlLT5jb3JlUGFnZSgpLT5tYWluRnJhbWUoKS52aWV3KCktPndpbmRvd1Rv
Q29udGVudHMocGxhdGZvcm1Nb3VzZUV2ZW50LnBvc2l0aW9uKCkpOworICAgIGNvbnN0ZXhwciBP
cHRpb25TZXQ8SGl0VGVzdFJlcXVlc3Q6OlR5cGU+IGhpdFR5cGUgeyBIaXRUZXN0UmVxdWVzdDo6
VHlwZTo6UmVhZE9ubHksIEhpdFRlc3RSZXF1ZXN0OjpUeXBlOjpBY3RpdmUsIEhpdFRlc3RSZXF1
ZXN0OjpUeXBlOjpEaXNhbGxvd1VzZXJBZ2VudFNoYWRvd0NvbnRlbnQsICBIaXRUZXN0UmVxdWVz
dDo6VHlwZTo6QWxsb3dDaGlsZEZyYW1lQ29udGVudCB9OworICAgIEhpdFRlc3RSZXN1bHQgcmVz
dWx0ID0gcGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuZXZlbnRIYW5kbGVyKCkuaGl0VGVz
dFJlc3VsdEF0UG9pbnQocG9pbnQsIGhpdFR5cGUpOworCisgICAgUmVmIGZyYW1lID0gcGFnZS0+
Y29yZVBhZ2UoKS0+bWFpbkZyYW1lKCk7CisgICAgaWYgKHJlc3VsdC5pbm5lck5vblNoYXJlZE5v
ZGUoKSkKKyAgICAgICAgZnJhbWUgPSAqcmVzdWx0LmlubmVyTm9uU2hhcmVkTm9kZSgpLT5kb2N1
bWVudCgpLmZyYW1lKCk7CisKKyAgICBib29sIGhhbmRsZWQgPSBwYWdlLT5jb3JlUGFnZSgpLT51
c2VySW5wdXRCcmlkZ2UoKS5oYW5kbGVDb250ZXh0TWVudUV2ZW50KHBsYXRmb3JtTW91c2VFdmVu
dCwgZnJhbWUpOworI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQorICAgIGlmIChoYW5kbGVkKQor
ICAgICAgICBwYWdlLT5jb250ZXh0TWVudSgpLnNob3coKTsKKyNlbmRpZgorICAgIHJldHVybiBo
YW5kbGVkOworfQorCit2b2lkIFdlYlBhZ2U6OmNvbnRleHRNZW51Rm9yS2V5RXZlbnQoKQorewor
I2lmIEVOQUJMRShDT05URVhUX01FTlVTKQorICAgIGNvcmVQYWdlKCktPmNvbnRleHRNZW51Q29u
dHJvbGxlcigpLmNsZWFyQ29udGV4dE1lbnUoKTsKKyNlbmRpZgorCisgICAgUmVmIGZyYW1lID0g
Q2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1l
KCk7CisgICAgYm9vbCBoYW5kbGVkID0gZnJhbWUtPmV2ZW50SGFuZGxlcigpLnNlbmRDb250ZXh0
TWVudUV2ZW50Rm9yS2V5KCk7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgaWYgKGhh
bmRsZWQpCisgICAgICAgIGNvbnRleHRNZW51KCkuc2hvdygpOworI2Vsc2UKKyAgICBVTlVTRURf
UEFSQU0oaGFuZGxlZCk7CisjZW5kaWYKK30KKyNlbmRpZgorCitzdGF0aWMgYm9vbCBoYW5kbGVN
b3VzZUV2ZW50KGNvbnN0IFdlYk1vdXNlRXZlbnQmIG1vdXNlRXZlbnQsIFdlYlBhZ2UqIHBhZ2Up
Cit7CisgICAgRnJhbWUmIGZyYW1lID0gcGFnZS0+Y29yZVBhZ2UoKS0+bWFpbkZyYW1lKCk7Cisg
ICAgaWYgKCFmcmFtZS52aWV3KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIFBsYXRm
b3JtTW91c2VFdmVudCBwbGF0Zm9ybU1vdXNlRXZlbnQgPSBwbGF0Zm9ybShtb3VzZUV2ZW50KTsK
KworICAgIHN3aXRjaCAocGxhdGZvcm1Nb3VzZUV2ZW50LnR5cGUoKSkgeworICAgICAgICBjYXNl
IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlUHJlc3NlZDogeworI2lmIEVOQUJMRShDT05URVhUX01FTlVT
KQorICAgICAgICAgICAgaWYgKGlzQ29udGV4dENsaWNrKHBsYXRmb3JtTW91c2VFdmVudCkpCisg
ICAgICAgICAgICAgICAgcGFnZS0+Y29yZVBhZ2UoKS0+Y29udGV4dE1lbnVDb250cm9sbGVyKCku
Y2xlYXJDb250ZXh0TWVudSgpOworI2VuZGlmCisKKyAgICAgICAgICAgIGJvb2wgaGFuZGxlZCA9
IHBhZ2UtPmNvcmVQYWdlKCktPnVzZXJJbnB1dEJyaWRnZSgpLmhhbmRsZU1vdXNlUHJlc3NFdmVu
dChwbGF0Zm9ybU1vdXNlRXZlbnQpOworI2lmIEVOQUJMRShDT05URVhUX01FTlVfRVZFTlQpCisg
ICAgICAgICAgICBpZiAoaXNDb250ZXh0Q2xpY2socGxhdGZvcm1Nb3VzZUV2ZW50KSkKKyAgICAg
ICAgICAgICAgICBoYW5kbGVkID0gaGFuZGxlQ29udGV4dE1lbnVFdmVudChwbGF0Zm9ybU1vdXNl
RXZlbnQsIHBhZ2UpOworI2VuZGlmCisgICAgICAgICAgICByZXR1cm4gaGFuZGxlZDsKKyAgICAg
ICAgfQorICAgICAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlUmVsZWFzZWQ6CisgICAgICAg
ICAgICBpZiAobW91c2VFdmVudC5nZXN0dXJlV2FzQ2FuY2VsbGVkKCkgPT0gR2VzdHVyZVdhc0Nh
bmNlbGxlZDo6WWVzKQorICAgICAgICAgICAgICAgIGZyYW1lLmV2ZW50SGFuZGxlcigpLmludmFs
aWRhdGVDbGljaygpOworICAgICAgICAgICAgcmV0dXJuIHBhZ2UtPmNvcmVQYWdlKCktPnVzZXJJ
bnB1dEJyaWRnZSgpLmhhbmRsZU1vdXNlUmVsZWFzZUV2ZW50KHBsYXRmb3JtTW91c2VFdmVudCk7
CisKKyAgICAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpNb3VzZU1vdmVkOgorI2lmIFBMQVRGT1JN
KENPQ09BKQorICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBkbyBhIGZ1bGwsIG5vcm1hbCBoaXQg
dGVzdCBkdXJpbmcgdGhpcyBtb3VzZSBldmVudCBpZiB0aGUgcGFnZSBpcyBhY3RpdmUgb3IgaWYg
YSBtb3VzZQorICAgICAgICAgICAgLy8gYnV0dG9uIGlzIGN1cnJlbnRseSBwcmVzc2VkLiBJdCBp
cyBwb3NzaWJsZSB0aGF0IG5laXRoZXIgb2YgdGhvc2UgdGhpbmdzIHdpbGwgYmUgdHJ1ZSBzaW5j
ZSBvbgorICAgICAgICAgICAgLy8gTGlvbiB3aGVuIGxlZ2FjeSBzY3JvbGxiYXJzIGFyZSBlbmFi
bGVkLCBXZWJLaXQgcmVjZWl2ZXMgbW91c2UgZXZlbnRzIGFsbCB0aGUgdGltZS4gSWYgaXQgaXMg
b25lCisgICAgICAgICAgICAvLyBvZiB0aG9zZSBjYXNlcyB3aGVyZSB0aGUgcGFnZSBpcyBub3Qg
YWN0aXZlIGFuZCB0aGUgbW91c2UgaXMgbm90IHByZXNzZWQsIHRoZW4gd2UgY2FuIGZpcmUgYSBt
b3JlCisgICAgICAgICAgICAvLyBlZmZpY2llbnQgc2Nyb2xsYmFycy1vbmx5IHZlcnNpb24gb2Yg
dGhlIGV2ZW50LgorICAgICAgICAgICAgaWYgKCEocGFnZS0+Y29yZVBhZ2UoKS0+Zm9jdXNDb250
cm9sbGVyKCkuaXNBY3RpdmUoKSB8fCAobW91c2VFdmVudC5idXR0b24oKSAhPSBXZWJNb3VzZUV2
ZW50OjpOb0J1dHRvbikpKQorICAgICAgICAgICAgICAgIHJldHVybiBwYWdlLT5jb3JlUGFnZSgp
LT51c2VySW5wdXRCcmlkZ2UoKS5oYW5kbGVNb3VzZU1vdmVPblNjcm9sbGJhckV2ZW50KHBsYXRm
b3JtTW91c2VFdmVudCk7CisjZW5kaWYKKyAgICAgICAgICAgIHJldHVybiBwYWdlLT5jb3JlUGFn
ZSgpLT51c2VySW5wdXRCcmlkZ2UoKS5oYW5kbGVNb3VzZU1vdmVFdmVudChwbGF0Zm9ybU1vdXNl
RXZlbnQpOworCisgICAgICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6TW91c2VGb3JjZUNoYW5nZWQ6
CisgICAgICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6TW91c2VGb3JjZURvd246CisgICAgICAgIGNh
c2UgUGxhdGZvcm1FdmVudDo6TW91c2VGb3JjZVVwOgorICAgICAgICAgICAgcmV0dXJuIHBhZ2Ut
PmNvcmVQYWdlKCktPnVzZXJJbnB1dEJyaWRnZSgpLmhhbmRsZU1vdXNlRm9yY2VFdmVudChwbGF0
Zm9ybU1vdXNlRXZlbnQpOworCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cit9CisKK3Zv
aWQgV2ViUGFnZTo6bW91c2VFdmVudChjb25zdCBXZWJNb3VzZUV2ZW50JiBtb3VzZUV2ZW50LCBz
dGQ6Om9wdGlvbmFsPFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+PiYmIHNhbmRib3hF
eHRlbnNpb25zKQoreworICAgIFNldEZvclNjb3BlPGJvb2w+IHVzZXJJc0ludGVyYWN0aW5nQ2hh
bmdlIHsgbV91c2VySXNJbnRlcmFjdGluZywgdHJ1ZSB9OworCisgICAgbV91c2VyQWN0aXZpdHku
aW1wdWxzZSgpOworCisgICAgYm9vbCBzaG91bGRIYW5kbGVFdmVudCA9IHRydWU7CisKKyNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICAvLyBEb24ndCB0cnkgdG8gaGFuZGxlIGFueSBwZW5k
aW5nIG1vdXNlIGV2ZW50cyBpZiBhIGNvbnRleHQgbWVudSBpcyBzaG93aW5nLgorICAgIGlmICht
X3dhaXRpbmdGb3JDb250ZXh0TWVudVRvU2hvdykKKyAgICAgICAgc2hvdWxkSGFuZGxlRXZlbnQg
PSBmYWxzZTsKKyNlbmRpZgorI2lmIEVOQUJMRShEUkFHX1NVUFBPUlQpCisgICAgaWYgKG1faXNT
dGFydGluZ0RyYWcpCisgICAgICAgIHNob3VsZEhhbmRsZUV2ZW50ID0gZmFsc2U7CisjZW5kaWYK
KworICAgIGlmICghc2hvdWxkSGFuZGxlRXZlbnQpIHsKKyAgICAgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpEaWRSZWNlaXZlRXZlbnQoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KG1vdXNl
RXZlbnQudHlwZSgpKSwgZmFsc2UpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFZl
Y3RvcjxSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4+IG1vdXNlRXZlbnRTYW5kYm94RXh0ZW5zaW9u
czsKKyAgICBpZiAoc2FuZGJveEV4dGVuc2lvbnMpCisgICAgICAgIG1vdXNlRXZlbnRTYW5kYm94
RXh0ZW5zaW9ucyA9IGNvbnN1bWVTYW5kYm94RXh0ZW5zaW9ucyhXVEZNb3ZlKCpzYW5kYm94RXh0
ZW5zaW9ucykpOworCisgICAgYm9vbCBoYW5kbGVkID0gZmFsc2U7CisKKyNpZiAhUExBVEZPUk0o
SU9TX0ZBTUlMWSkKKyAgICBpZiAoIWhhbmRsZWQgJiYgbV9oZWFkZXJCYW5uZXIpCisgICAgICAg
IGhhbmRsZWQgPSBtX2hlYWRlckJhbm5lci0+bW91c2VFdmVudChtb3VzZUV2ZW50KTsKKyAgICBp
ZiAoIWhhbmRsZWQgJiYgbV9mb290ZXJCYW5uZXIpCisgICAgICAgIGhhbmRsZWQgPSBtX2Zvb3Rl
ckJhbm5lci0+bW91c2VFdmVudChtb3VzZUV2ZW50KTsKKyNlbmRpZiAvLyAhUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKworICAgIGlmICghaGFuZGxlZCkgeworICAgICAgICBDdXJyZW50RXZlbnQgY3Vy
cmVudEV2ZW50KG1vdXNlRXZlbnQpOworICAgICAgICBoYW5kbGVkID0gaGFuZGxlTW91c2VFdmVu
dChtb3VzZUV2ZW50LCB0aGlzKTsKKyAgICB9CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkRpZFJlY2VpdmVFdmVudChzdGF0aWNfY2FzdDx1aW50MzJfdD4obW91c2VFdmVudC50
eXBlKCkpLCBoYW5kbGVkKSk7CisKKyAgICByZXZva2VTYW5kYm94RXh0ZW5zaW9ucyhtb3VzZUV2
ZW50U2FuZGJveEV4dGVuc2lvbnMpOworfQorCitzdGF0aWMgYm9vbCBoYW5kbGVXaGVlbEV2ZW50
KGNvbnN0IFdlYldoZWVsRXZlbnQmIHdoZWVsRXZlbnQsIFBhZ2UqIHBhZ2UsIE9wdGlvblNldDxX
aGVlbEV2ZW50UHJvY2Vzc2luZ1N0ZXBzPiBwcm9jZXNzaW5nU3RlcHMpCit7CisgICAgRnJhbWUm
IGZyYW1lID0gcGFnZS0+bWFpbkZyYW1lKCk7CisgICAgaWYgKCFmcmFtZS52aWV3KCkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIFBsYXRmb3JtV2hlZWxFdmVudCBwbGF0Zm9ybVdoZWVs
RXZlbnQgPSBwbGF0Zm9ybSh3aGVlbEV2ZW50KTsKKyAgICByZXR1cm4gcGFnZS0+dXNlcklucHV0
QnJpZGdlKCkuaGFuZGxlV2hlZWxFdmVudChwbGF0Zm9ybVdoZWVsRXZlbnQsIHByb2Nlc3NpbmdT
dGVwcyk7Cit9CisKK2Jvb2wgV2ViUGFnZTo6d2hlZWxFdmVudChjb25zdCBXZWJXaGVlbEV2ZW50
JiB3aGVlbEV2ZW50LCBPcHRpb25TZXQ8V2hlZWxFdmVudFByb2Nlc3NpbmdTdGVwcz4gcHJvY2Vz
c2luZ1N0ZXBzKQoreworICAgIG1fdXNlckFjdGl2aXR5LmltcHVsc2UoKTsKKworICAgIEN1cnJl
bnRFdmVudCBjdXJyZW50RXZlbnQod2hlZWxFdmVudCk7CisKKyAgICBib29sIGhhbmRsZWQgPSBo
YW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQsIG1fcGFnZS5nZXQoKSwgcHJvY2Vzc2luZ1N0ZXBz
KTsKKworICAgIGlmIChwcm9jZXNzaW5nU3RlcHMuY29udGFpbnMoV2hlZWxFdmVudFByb2Nlc3Np
bmdTdGVwczo6TWFpblRocmVhZEZvclNjcm9sbGluZykpCisgICAgICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkUmVjZWl2ZUV2ZW50KHN0YXRpY19jYXN0PHVpbnQzMl90Pih3aGVl
bEV2ZW50LnR5cGUoKSksIGhhbmRsZWQpKTsKKworICAgIHJldHVybiBoYW5kbGVkOworfQorCit2
b2lkIFdlYlBhZ2U6OmRpc3BhdGNoV2hlZWxFdmVudFdpdGhvdXRTY3JvbGxpbmcoY29uc3QgV2Vi
V2hlZWxFdmVudCYgd2hlZWxFdmVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKK3sKKyNpZiBFTkFCTEUoS0lORVRJQ19TQ1JPTExJTkcpCisgICAg
YXV0byBnZXN0dXJlU3RhdGUgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLmV2ZW50SGFuZGxlcigpLndo
ZWVsU2Nyb2xsR2VzdHVyZVN0YXRlKCk7CisgICAgYm9vbCBpc0NhbmNlbGFibGUgPSAhZ2VzdHVy
ZVN0YXRlIHx8IGdlc3R1cmVTdGF0ZSA9PSBXaGVlbFNjcm9sbEdlc3R1cmVTdGF0ZTo6QmxvY2tp
bmcgfHwgd2hlZWxFdmVudC5waGFzZSgpID09IFdlYldoZWVsRXZlbnQ6OlBoYXNlQmVnYW47Cisj
ZWxzZQorICAgIGJvb2wgaXNDYW5jZWxhYmxlID0gdHJ1ZTsKKyNlbmRpZgorICAgIGJvb2wgaGFu
ZGxlZCA9IHRoaXMtPndoZWVsRXZlbnQod2hlZWxFdmVudCwgeyBpc0NhbmNlbGFibGUgPyBXaGVl
bEV2ZW50UHJvY2Vzc2luZ1N0ZXBzOjpNYWluVGhyZWFkRm9yQmxvY2tpbmdET01FdmVudERpc3Bh
dGNoIDogV2hlZWxFdmVudFByb2Nlc3NpbmdTdGVwczo6TWFpblRocmVhZEZvck5vbkJsb2NraW5n
RE9NRXZlbnREaXNwYXRjaCB9KTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihoYW5kbGVkKTsKK30K
Kworc3RhdGljIGJvb2wgaGFuZGxlS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYga2V5
Ym9hcmRFdmVudCwgUGFnZSogcGFnZSkKK3sKKyAgICBpZiAoIXBhZ2UtPm1haW5GcmFtZSgpLnZp
ZXcoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKGtleWJvYXJkRXZlbnQudHlw
ZSgpID09IFdlYkV2ZW50OjpDaGFyICYmIGtleWJvYXJkRXZlbnQuaXNTeXN0ZW1LZXkoKSkKKyAg
ICAgICAgcmV0dXJuIHBhZ2UtPnVzZXJJbnB1dEJyaWRnZSgpLmhhbmRsZUFjY2Vzc0tleUV2ZW50
KHBsYXRmb3JtKGtleWJvYXJkRXZlbnQpKTsKKyAgICByZXR1cm4gcGFnZS0+dXNlcklucHV0QnJp
ZGdlKCkuaGFuZGxlS2V5RXZlbnQocGxhdGZvcm0oa2V5Ym9hcmRFdmVudCkpOworfQorCit2b2lk
IFdlYlBhZ2U6OmtleUV2ZW50KGNvbnN0IFdlYktleWJvYXJkRXZlbnQmIGtleWJvYXJkRXZlbnQp
Cit7CisgICAgU2V0Rm9yU2NvcGU8Ym9vbD4gdXNlcklzSW50ZXJhY3RpbmdDaGFuZ2UgeyBtX3Vz
ZXJJc0ludGVyYWN0aW5nLCB0cnVlIH07CisKKyAgICBtX3VzZXJBY3Rpdml0eS5pbXB1bHNlKCk7
CisKKyAgICBQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OnNldEN1cnJlbnRNb2RpZmllclN0YXRlKHBs
YXRmb3JtKGtleWJvYXJkRXZlbnQpLm1vZGlmaWVycygpKTsKKworICAgIEN1cnJlbnRFdmVudCBj
dXJyZW50RXZlbnQoa2V5Ym9hcmRFdmVudCk7CisKKyAgICBib29sIGhhbmRsZWQgPSBoYW5kbGVL
ZXlFdmVudChrZXlib2FyZEV2ZW50LCBtX3BhZ2UuZ2V0KCkpOworICAgIC8vIEZJWE1FOiBQbGF0
Zm9ybSBkZWZhdWx0IGJlaGF2aW9ycyBzaG91bGQgYmUgcGVyZm9ybWVkIGR1cmluZyBub3JtYWwg
RE9NIGV2ZW50IGRpc3BhdGNoIChpbiBtb3N0IGNhc2VzLCBpbiBkZWZhdWx0IGtleWRvd24gZXZl
bnQgaGFuZGxlcikuCisgICAgaWYgKCFoYW5kbGVkKQorICAgICAgICBoYW5kbGVkID0gcGVyZm9y
bURlZmF1bHRCZWhhdmlvckZvcktleUV2ZW50KGtleWJvYXJkRXZlbnQpOworCisgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRSZWNlaXZlRXZlbnQoc3RhdGljX2Nhc3Q8dWludDMy
X3Q+KGtleWJvYXJkRXZlbnQudHlwZSgpKSwgaGFuZGxlZCkpOworfQorCitib29sIFdlYlBhZ2U6
OmhhbmRsZUtleUV2ZW50QnlSZWxpbnF1aXNoaW5nRm9jdXNUb0Nocm9tZShjb25zdCBLZXlib2Fy
ZEV2ZW50JiBldmVudCkKK3sKKyAgICBpZiAobV9wYWdlLT50YWJLZXlDeWNsZXNUaHJvdWdoRWxl
bWVudHMoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKGV2ZW50LmNoYXJDb2Rl
KCkgIT0gJ1x0JykKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFldmVudC5zaGlm
dEtleSgpIHx8IGV2ZW50LmN0cmxLZXkoKSB8fCBldmVudC5tZXRhS2V5KCkgfHwgZXZlbnQuYWx0
R3JhcGhLZXkoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgQVNTRVJUKGV2ZW50LnR5
cGUoKSA9PSBldmVudE5hbWVzKCkua2V5cHJlc3NFdmVudCk7CisgICAgLy8gQWxsb3cgYSBzaGlm
dC10YWIga2V5cHJlc3MgZXZlbnQgdG8gcmVsaW5xdWlzaCBmb2N1cyBldmVuIGlmIHdlIGRvbid0
IGFsbG93IHRhYiB0byBjeWNsZSBiZXR3ZWVuCisgICAgLy8gZWxlbWVudHMgaW5zaWRlIHRoZSB2
aWV3LiBXZSBjYW4gb25seSBkbyB0aGlzIGZvciBzaGlmdC10YWIsIG5vdCB0YWIgaXRzZWxmIGJl
Y2F1c2UKKyAgICAvLyB0YWJLZXlDeWNsZXNUaHJvdWdoRWxlbWVudHMgaXMgdXNlZCB0byBtYWtl
IHRhYiBjaGFyYWN0ZXIgaW5zZXJ0aW9uIHdvcmsgaW4gZWRpdGFibGUgd2ViIHZpZXdzLgorICAg
IHJldHVybiBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5yZWxpbnF1aXNo
Rm9jdXNUb0Nocm9tZShGb2N1c0RpcmVjdGlvbjo6QmFja3dhcmQpOworfQorCit2b2lkIFdlYlBh
Z2U6OnZhbGlkYXRlQ29tbWFuZChjb25zdCBTdHJpbmcmIGNvbW1hbmROYW1lLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKGJvb2wsIGludDMyX3QpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAg
IGJvb2wgaXNFbmFibGVkID0gZmFsc2U7CisgICAgaW50MzJfdCBzdGF0ZSA9IDA7CisgICAgUmVm
IGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9y
TWFpbkZyYW1lKCk7CisgICAgaWYgKFBsdWdpblZpZXcqIHBsdWdpblZpZXcgPSBmb2N1c2VkUGx1
Z2luVmlld0ZvckZyYW1lKGZyYW1lKSkKKyAgICAgICAgaXNFbmFibGVkID0gcGx1Z2luVmlldy0+
aXNFZGl0aW5nQ29tbWFuZEVuYWJsZWQoY29tbWFuZE5hbWUpOworICAgIGVsc2UgeworICAgICAg
ICBFZGl0b3I6OkNvbW1hbmQgY29tbWFuZCA9IGZyYW1lLT5lZGl0b3IoKS5jb21tYW5kKGNvbW1h
bmROYW1lKTsKKyAgICAgICAgc3RhdGUgPSAoY29tbWFuZC5zdGF0ZSgpICE9IFRyaVN0YXRlOjpG
YWxzZSk7CisgICAgICAgIGlzRW5hYmxlZCA9IGNvbW1hbmQuaXNTdXBwb3J0ZWQoKSAmJiBjb21t
YW5kLmlzRW5hYmxlZCgpOworICAgIH0KKworICAgIGNvbXBsZXRpb25IYW5kbGVyKGlzRW5hYmxl
ZCwgc3RhdGUpOworfQorCit2b2lkIFdlYlBhZ2U6OmV4ZWN1dGVFZGl0Q29tbWFuZChjb25zdCBT
dHJpbmcmIGNvbW1hbmROYW1lLCBjb25zdCBTdHJpbmcmIGFyZ3VtZW50KQoreworICAgIGV4ZWN1
dGVFZGl0aW5nQ29tbWFuZChjb21tYW5kTmFtZSwgYXJndW1lbnQpOworfQorCit2b2lkIFdlYlBh
Z2U6OnNldE5lZWRzRm9udEF0dHJpYnV0ZXMoYm9vbCBuZWVkc0ZvbnRBdHRyaWJ1dGVzKQorewor
ICAgIGlmIChtX25lZWRzRm9udEF0dHJpYnV0ZXMgPT0gbmVlZHNGb250QXR0cmlidXRlcykKKyAg
ICAgICAgcmV0dXJuOworCisgICAgbV9uZWVkc0ZvbnRBdHRyaWJ1dGVzID0gbmVlZHNGb250QXR0
cmlidXRlczsKKworICAgIGlmIChtX25lZWRzRm9udEF0dHJpYnV0ZXMpCisgICAgICAgIHNjaGVk
dWxlRnVsbEVkaXRvclN0YXRlVXBkYXRlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVzdG9yZVNl
c3Npb25JbnRlcm5hbChjb25zdCBWZWN0b3I8QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlPiYgaXRl
bVN0YXRlcywgV2FzUmVzdG9yZWRCeUFQSVJlcXVlc3QgcmVzdG9yZWRCeUFQSVJlcXVlc3QsIFdl
YkJhY2tGb3J3YXJkTGlzdFByb3h5OjpPdmVyd3JpdGVFeGlzdGluZ0l0ZW0gb3ZlcndyaXRlKQor
eworICAgIC8vIFNpbmNlIHdlJ3JlIG1lcmVseSByZXN0b3JpbmcgSGlzdG9yeUl0ZW1zIGZyb20g
dGhlIFVJUHJvY2VzcywgdGhlcmUgaXMgbm8gbmVlZCB0byBzZW5kIEhpc3RvcnlJdGVtIHVwZGF0
ZSBub3RpZmljYXRpb25zIGJhY2sgdG8gdGhlIFVJUHJvY2Vzcy4KKyAgICAvLyBBbHNvLCB3aXRo
IHByb2Nlc3Mtc3dhcCBvbiBuYXZpZ2F0aW9uLCB0aGVzZSB1cGRhdGVzIG1heSBhY3R1YWxseSBv
dmVyd3JpdGUgaW1wb3J0YW50IHN0YXRlIGluIHRoZSBVSVByb2Nlc3Mgc3VjaCBhcyB0aGUgc2Ny
b2xsIHBvc2l0aW9uLgorICAgIFNldEZvclNjb3BlPHZvaWQgKCopKFdlYkNvcmU6Okhpc3RvcnlJ
dGVtJik+IGJ5cGFzc0hpc3RvcnlJdGVtVXBkYXRlTm90aWZpY2F0aW9ucyhXZWJDb3JlOjpub3Rp
ZnlIaXN0b3J5SXRlbUNoYW5nZWQsIFtdKFdlYkNvcmU6Okhpc3RvcnlJdGVtJil7fSk7CisgICAg
Zm9yIChjb25zdCBhdXRvJiBpdGVtU3RhdGUgOiBpdGVtU3RhdGVzKSB7CisgICAgICAgIGF1dG8g
aGlzdG9yeUl0ZW0gPSB0b0hpc3RvcnlJdGVtKGl0ZW1TdGF0ZSk7CisgICAgICAgIGhpc3RvcnlJ
dGVtLT5zZXRXYXNSZXN0b3JlZEZyb21TZXNzaW9uKHJlc3RvcmVkQnlBUElSZXF1ZXN0ID09IFdh
c1Jlc3RvcmVkQnlBUElSZXF1ZXN0OjpZZXMpOworICAgICAgICBzdGF0aWNfY2FzdDxXZWJCYWNr
Rm9yd2FyZExpc3RQcm94eSY+KGNvcmVQYWdlKCktPmJhY2tGb3J3YXJkKCkuY2xpZW50KCkpLmFk
ZEl0ZW1Gcm9tVUlQcm9jZXNzKGl0ZW1TdGF0ZS5pZGVudGlmaWVyLCBXVEZNb3ZlKGhpc3RvcnlJ
dGVtKSwgbV9pZGVudGlmaWVyLCBvdmVyd3JpdGUpOworICAgIH0KK30KKwordm9pZCBXZWJQYWdl
OjpyZXN0b3JlU2Vzc2lvbihjb25zdCBWZWN0b3I8QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlPiYg
aXRlbVN0YXRlcykKK3sKKyAgICByZXN0b3JlU2Vzc2lvbkludGVybmFsKGl0ZW1TdGF0ZXMsIFdh
c1Jlc3RvcmVkQnlBUElSZXF1ZXN0OjpZZXMsIFdlYkJhY2tGb3J3YXJkTGlzdFByb3h5OjpPdmVy
d3JpdGVFeGlzdGluZ0l0ZW06Ok5vKTsKK30KKwordm9pZCBXZWJQYWdlOjp1cGRhdGVCYWNrRm9y
d2FyZExpc3RGb3JSZWF0dGFjaChjb25zdCBWZWN0b3I8V2ViS2l0OjpCYWNrRm9yd2FyZExpc3RJ
dGVtU3RhdGU+JiBpdGVtU3RhdGVzKQoreworICAgIHJlc3RvcmVTZXNzaW9uSW50ZXJuYWwoaXRl
bVN0YXRlcywgV2FzUmVzdG9yZWRCeUFQSVJlcXVlc3Q6Ok5vLCBXZWJCYWNrRm9yd2FyZExpc3RQ
cm94eTo6T3ZlcndyaXRlRXhpc3RpbmdJdGVtOjpZZXMpOworfQorCit2b2lkIFdlYlBhZ2U6OnNl
dEN1cnJlbnRIaXN0b3J5SXRlbUZvclJlYXR0YWNoKFdlYktpdDo6QmFja0ZvcndhcmRMaXN0SXRl
bVN0YXRlJiYgaXRlbVN0YXRlKQoreworICAgIGF1dG8gaGlzdG9yeUl0ZW0gPSB0b0hpc3RvcnlJ
dGVtKGl0ZW1TdGF0ZSk7CisgICAgYXV0byYgaGlzdG9yeUl0ZW1SZWYgPSBoaXN0b3J5SXRlbS5n
ZXQoKTsKKyAgICBzdGF0aWNfY2FzdDxXZWJCYWNrRm9yd2FyZExpc3RQcm94eSY+KGNvcmVQYWdl
KCktPmJhY2tGb3J3YXJkKCkuY2xpZW50KCkpLmFkZEl0ZW1Gcm9tVUlQcm9jZXNzKGl0ZW1TdGF0
ZS5pZGVudGlmaWVyLCBXVEZNb3ZlKGhpc3RvcnlJdGVtKSwgbV9pZGVudGlmaWVyLCBXZWJCYWNr
Rm9yd2FyZExpc3RQcm94eTo6T3ZlcndyaXRlRXhpc3RpbmdJdGVtOjpZZXMpOworICAgIGNvcmVQ
YWdlKCktPm1haW5GcmFtZSgpLmxvYWRlcigpLmhpc3RvcnkoKS5zZXRDdXJyZW50SXRlbShoaXN0
b3J5SXRlbVJlZik7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVxdWVzdEZvbnRBdHRyaWJ1dGVzQXRT
ZWxlY3Rpb25TdGFydChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OkZvbnRB
dHRyaWJ1dGVzJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIoQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZy
YW1lKCkuZWRpdG9yKCkuZm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0KCkpOworfQorCit2
b2lkIFdlYlBhZ2U6OmNhbmNlbEdlc3R1cmVzQmxvY2tlZE9uU3luY2hyb25vdXNSZXBsaWVzKCkK
K3sKKyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICBpZiAoYXV0byByZXBseSA9IFdU
Rk1vdmUobV9wZW5kaW5nU3luY2hyb25vdXNUb3VjaEV2ZW50UmVwbHkpKQorICAgICAgICByZXBs
eSh0cnVlKTsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBpZiAoYXV0
byByZXBseSA9IFdURk1vdmUobV9wZW5kaW5nU3luY2hyb25vdXNQb3NpdGlvbkluZm9ybWF0aW9u
UmVwbHkpKQorICAgICAgICByZXBseShJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjo6
aW52YWxpZEluZm9ybWF0aW9uKCkpOworI2VuZGlmCit9CisKKyNpZiBFTkFCTEUoVE9VQ0hfRVZF
TlRTKQorc3RhdGljIGJvb2wgaGFuZGxlVG91Y2hFdmVudChjb25zdCBXZWJUb3VjaEV2ZW50JiB0
b3VjaEV2ZW50LCBQYWdlKiBwYWdlKQoreworICAgIGlmICghcGFnZS0+bWFpbkZyYW1lKCkudmll
dygpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gcGFnZS0+bWFpbkZyYW1l
KCkuZXZlbnRIYW5kbGVyKCkuaGFuZGxlVG91Y2hFdmVudChwbGF0Zm9ybSh0b3VjaEV2ZW50KSk7
Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorYm9vbCBXZWJQYWdl
OjpkaXNwYXRjaFRvdWNoRXZlbnQoY29uc3QgV2ViVG91Y2hFdmVudCYgdG91Y2hFdmVudCkKK3sK
KyAgICBTZXRGb3JTY29wZTxib29sPiB1c2VySXNJbnRlcmFjdGluZ0NoYW5nZSB7IG1fdXNlcklz
SW50ZXJhY3RpbmcsIHRydWUgfTsKKyAgICBtX2xhc3RJbnRlcmFjdGlvbkxvY2F0aW9uID0gdG91
Y2hFdmVudC5wb3NpdGlvbigpOworICAgIEN1cnJlbnRFdmVudCBjdXJyZW50RXZlbnQodG91Y2hF
dmVudCk7CisgICAgYm9vbCBoYW5kbGVkID0gaGFuZGxlVG91Y2hFdmVudCh0b3VjaEV2ZW50LCBt
X3BhZ2UuZ2V0KCkpOworICAgIHVwZGF0ZVBvdGVudGlhbFRhcFNlY3VyaXR5T3JpZ2luKHRvdWNo
RXZlbnQsIGhhbmRsZWQpOworICAgIHJldHVybiBoYW5kbGVkOworfQorCit2b2lkIFdlYlBhZ2U6
OnRvdWNoRXZlbnRTeW5jKGNvbnN0IFdlYlRvdWNoRXZlbnQmIHRvdWNoRXZlbnQsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgcmVwbHkpCit7CisgICAgLy8gQXZvaWQgVUlQcm9jZXNz
IGhhbmdzIHdoZW4gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBpcyBzdHVjayBvbiBhIHN5bmMgSVBD
LgorICAgIGlmIChJUEM6OlVuYm91bmRlZFN5bmNocm9ub3VzSVBDU2NvcGU6Omhhc09uZ29pbmdV
bmJvdW5kZWRTeW5jSVBDKCkpIHsKKyAgICAgICAgV0VCUEFHRV9SRUxFQVNFX0xPR19FUlJPUihQ
cm9jZXNzLCAidG91Y2hFdmVudFN5bmM6IE5vdCBwcm9jZXNzaW5nIGJlY2F1c2UgdGhlIHByb2Nl
c3MgaXMgc3R1Y2sgb24gdW5ib3VuZGVkIHN5bmMgSVBDIik7CisgICAgICAgIHJldHVybiByZXBs
eSh0cnVlKTsKKyAgICB9CisKKyAgICBtX3BlbmRpbmdTeW5jaHJvbm91c1RvdWNoRXZlbnRSZXBs
eSA9IFdURk1vdmUocmVwbHkpOworCisgICAgRXZlbnREaXNwYXRjaGVyOjpUb3VjaEV2ZW50UXVl
dWUgcXVldWVkRXZlbnRzOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmV2ZW50RGlzcGF0
Y2hlcigpLnRha2VRdWV1ZWRUb3VjaEV2ZW50c0ZvclBhZ2UoKnRoaXMsIHF1ZXVlZEV2ZW50cyk7
CisgICAgZGlzcGF0Y2hBc3luY2hyb25vdXNUb3VjaEV2ZW50cyhXVEZNb3ZlKHF1ZXVlZEV2ZW50
cykpOworCisgICAgYm9vbCBoYW5kbGVkID0gZGlzcGF0Y2hUb3VjaEV2ZW50KHRvdWNoRXZlbnQp
OworCisgICAgaWYgKGF1dG8gcmVwbHkgPSBXVEZNb3ZlKG1fcGVuZGluZ1N5bmNocm9ub3VzVG91
Y2hFdmVudFJlcGx5KSkKKyAgICAgICAgcmVwbHkoaGFuZGxlZCk7Cit9CisKK3ZvaWQgV2ViUGFn
ZTo6cmVzZXRQb3RlbnRpYWxUYXBTZWN1cml0eU9yaWdpbigpCit7CisgICAgbV9wb3RlbnRpYWxU
YXBTZWN1cml0eU9yaWdpbiA9IG51bGxwdHI7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlUG90
ZW50aWFsVGFwU2VjdXJpdHlPcmlnaW4oY29uc3QgV2ViVG91Y2hFdmVudCYgdG91Y2hFdmVudCwg
Ym9vbCB3YXNIYW5kbGVkKQoreworICAgIGlmICh3YXNIYW5kbGVkKQorICAgICAgICByZXR1cm47
CisKKyAgICBpZiAoIXRvdWNoRXZlbnQuaXNQb3RlbnRpYWxUYXAoKSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgaWYgKHRvdWNoRXZlbnQudHlwZSgpICE9IFdlYkV2ZW50OjpUb3VjaFN0YXJ0KQor
ICAgICAgICByZXR1cm47CisKKyAgICBhdXRvJiBtYWluRnJhbWUgPSBtX3BhZ2UtPm1haW5GcmFt
ZSgpOworICAgIGF1dG8gZG9jdW1lbnQgPSBtYWluRnJhbWUuZG9jdW1lbnQoKTsKKyAgICBpZiAo
IWRvY3VtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIWRvY3VtZW50LT5oYW5kbGlu
Z1RvdWNoRXZlbnQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgRnJhbWUqIHRvdWNoRXZlbnRU
YXJnZXRGcmFtZSA9ICZtYWluRnJhbWU7CisgICAgd2hpbGUgKGF1dG8gc3ViZnJhbWUgPSB0b3Vj
aEV2ZW50VGFyZ2V0RnJhbWUtPmV2ZW50SGFuZGxlcigpLnRvdWNoRXZlbnRUYXJnZXRTdWJmcmFt
ZSgpKQorICAgICAgICB0b3VjaEV2ZW50VGFyZ2V0RnJhbWUgPSBzdWJmcmFtZTsKKworICAgIGF1
dG8mIHRvdWNoZXMgPSB0b3VjaEV2ZW50VGFyZ2V0RnJhbWUtPmV2ZW50SGFuZGxlcigpLnRvdWNo
ZXMoKTsKKyAgICBpZiAodG91Y2hlcy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKworICAg
IEFTU0VSVCh0b3VjaGVzLnNpemUoKSA9PSAxKTsKKworICAgIGlmIChhdXRvIHRhcmdldERvY3Vt
ZW50ID0gdG91Y2hFdmVudFRhcmdldEZyYW1lLT5kb2N1bWVudCgpKQorICAgICAgICBtX3BvdGVu
dGlhbFRhcFNlY3VyaXR5T3JpZ2luID0gJnRhcmdldERvY3VtZW50LT5zZWN1cml0eU9yaWdpbigp
OworfQorI2VsaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKK3ZvaWQgV2ViUGFnZTo6dG91Y2hFdmVu
dChjb25zdCBXZWJUb3VjaEV2ZW50JiB0b3VjaEV2ZW50KQoreworICAgIEN1cnJlbnRFdmVudCBj
dXJyZW50RXZlbnQodG91Y2hFdmVudCk7CisKKyAgICBib29sIGhhbmRsZWQgPSBoYW5kbGVUb3Vj
aEV2ZW50KHRvdWNoRXZlbnQsIG1fcGFnZS5nZXQoKSk7CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkRpZFJlY2VpdmVFdmVudChzdGF0aWNfY2FzdDx1aW50MzJfdD4odG91Y2hF
dmVudC50eXBlKCkpLCBoYW5kbGVkKSk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpjYW5j
ZWxQb2ludGVyKFdlYkNvcmU6OlBvaW50ZXJJRCBwb2ludGVySWQsIGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50JiBkb2N1bWVudFBvaW50KQoreworICAgIG1fcGFnZS0+cG9pbnRlckNhcHR1cmVDb250
cm9sbGVyKCkuY2FuY2VsUG9pbnRlcihwb2ludGVySWQsIGRvY3VtZW50UG9pbnQpOworfQorCit2
b2lkIFdlYlBhZ2U6OnRvdWNoV2l0aElkZW50aWZpZXJXYXNSZW1vdmVkKFdlYkNvcmU6OlBvaW50
ZXJJRCBwb2ludGVySWQpCit7CisgICAgbV9wYWdlLT5wb2ludGVyQ2FwdHVyZUNvbnRyb2xsZXIo
KS50b3VjaFdpdGhJZGVudGlmaWVyV2FzUmVtb3ZlZChwb2ludGVySWQpOworfQorCisjaWYgRU5B
QkxFKE1BQ19HRVNUVVJFX0VWRU5UUykKK3N0YXRpYyBib29sIGhhbmRsZUdlc3R1cmVFdmVudChj
b25zdCBXZWJHZXN0dXJlRXZlbnQmIGV2ZW50LCBQYWdlKiBwYWdlKQoreworICAgIGlmICghcGFn
ZS0+bWFpbkZyYW1lKCkudmlldygpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1
cm4gcGFnZS0+bWFpbkZyYW1lKCkuZXZlbnRIYW5kbGVyKCkuaGFuZGxlR2VzdHVyZUV2ZW50KHBs
YXRmb3JtKGV2ZW50KSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Z2VzdHVyZUV2ZW50KGNvbnN0IFdl
Ykdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQoreworICAgIEN1cnJlbnRFdmVudCBjdXJyZW50
RXZlbnQoZ2VzdHVyZUV2ZW50KTsKKyAgICBib29sIGhhbmRsZWQgPSBoYW5kbGVHZXN0dXJlRXZl
bnQoZ2VzdHVyZUV2ZW50LCBtX3BhZ2UuZ2V0KCkpOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6RGlkUmVjZWl2ZUV2ZW50KHN0YXRpY19jYXN0PHVpbnQzMl90PihnZXN0dXJlRXZl
bnQudHlwZSgpKSwgaGFuZGxlZCkpOworfQorI2VuZGlmCisKK2Jvb2wgV2ViUGFnZTo6c2Nyb2xs
KFBhZ2UqIHBhZ2UsIFNjcm9sbERpcmVjdGlvbiBkaXJlY3Rpb24sIFNjcm9sbEdyYW51bGFyaXR5
IGdyYW51bGFyaXR5KQoreworICAgIHJldHVybiBwYWdlLT51c2VySW5wdXRCcmlkZ2UoKS5zY3Jv
bGxSZWN1cnNpdmVseShkaXJlY3Rpb24sIGdyYW51bGFyaXR5KTsKK30KKworYm9vbCBXZWJQYWdl
Ojpsb2dpY2FsU2Nyb2xsKFBhZ2UqIHBhZ2UsIFNjcm9sbExvZ2ljYWxEaXJlY3Rpb24gZGlyZWN0
aW9uLCBTY3JvbGxHcmFudWxhcml0eSBncmFudWxhcml0eSkKK3sKKyAgICByZXR1cm4gcGFnZS0+
dXNlcklucHV0QnJpZGdlKCkubG9naWNhbFNjcm9sbFJlY3Vyc2l2ZWx5KGRpcmVjdGlvbiwgZ3Jh
bnVsYXJpdHkpOworfQorCitib29sIFdlYlBhZ2U6OnNjcm9sbEJ5KHVpbnQzMl90IHNjcm9sbERp
cmVjdGlvbiwgdWludDMyX3Qgc2Nyb2xsR3JhbnVsYXJpdHkpCit7CisgICAgcmV0dXJuIHNjcm9s
bChtX3BhZ2UuZ2V0KCksIHN0YXRpY19jYXN0PFNjcm9sbERpcmVjdGlvbj4oc2Nyb2xsRGlyZWN0
aW9uKSwgc3RhdGljX2Nhc3Q8U2Nyb2xsR3JhbnVsYXJpdHk+KHNjcm9sbEdyYW51bGFyaXR5KSk7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2VudGVyU2VsZWN0aW9uSW5WaXNpYmxlQXJlYSgpCit7Cisg
ICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9j
dXNlZE9yTWFpbkZyYW1lKCk7CisgICAgZnJhbWUtPnNlbGVjdGlvbigpLnJldmVhbFNlbGVjdGlv
bihTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50
ZXJBbHdheXMpOworICAgIGZpbmRDb250cm9sbGVyKCkuc2hvd0ZpbmRJbmRpY2F0b3JJblNlbGVj
dGlvbigpOworfQorCitib29sIFdlYlBhZ2U6OmlzQ29udHJvbGxlZEJ5QXV0b21hdGlvbigpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fcGFnZS0+aXNDb250cm9sbGVkQnlBdXRvbWF0aW9uKCk7Cit9
CisKK3ZvaWQgV2ViUGFnZTo6c2V0Q29udHJvbGxlZEJ5QXV0b21hdGlvbihib29sIGNvbnRyb2xs
ZWQpCit7CisgICAgbV9wYWdlLT5zZXRDb250cm9sbGVkQnlBdXRvbWF0aW9uKGNvbnRyb2xsZWQp
OworfQorCit2b2lkIFdlYlBhZ2U6OmNvbm5lY3RJbnNwZWN0b3IoY29uc3QgU3RyaW5nJiB0YXJn
ZXRJZCwgSW5zcGVjdG9yOjpGcm9udGVuZENoYW5uZWw6OkNvbm5lY3Rpb25UeXBlIGNvbm5lY3Rp
b25UeXBlKQoreworICAgIG1faW5zcGVjdG9yVGFyZ2V0Q29udHJvbGxlci0+Y29ubmVjdEluc3Bl
Y3Rvcih0YXJnZXRJZCwgY29ubmVjdGlvblR5cGUpOworfQorCit2b2lkIFdlYlBhZ2U6OmRpc2Nv
bm5lY3RJbnNwZWN0b3IoY29uc3QgU3RyaW5nJiB0YXJnZXRJZCkKK3sKKyAgICBtX2luc3BlY3Rv
clRhcmdldENvbnRyb2xsZXItPmRpc2Nvbm5lY3RJbnNwZWN0b3IodGFyZ2V0SWQpOworfQorCit2
b2lkIFdlYlBhZ2U6OnNlbmRNZXNzYWdlVG9UYXJnZXRCYWNrZW5kKGNvbnN0IFN0cmluZyYgdGFy
Z2V0SWQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK3sKKyAgICBtX2luc3BlY3RvclRhcmdldENv
bnRyb2xsZXItPnNlbmRNZXNzYWdlVG9UYXJnZXRCYWNrZW5kKHRhcmdldElkLCBtZXNzYWdlKTsK
K30KKwordm9pZCBXZWJQYWdlOjppbnNlcnROZXdsaW5lSW5RdW90ZWRDb250ZW50KCkKK3sKKyAg
ICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1
c2VkT3JNYWluRnJhbWUoKTsKKyAgICBpZiAoZnJhbWUtPnNlbGVjdGlvbigpLmlzTm9uZSgpKQor
ICAgICAgICByZXR1cm47CisgICAgZnJhbWUtPmVkaXRvcigpLmluc2VydFBhcmFncmFwaFNlcGFy
YXRvckluUXVvdGVkQ29udGVudCgpOworfQorCisjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1Ip
Cit2b2lkIFdlYlBhZ2U6OnNldEluZGljYXRpbmcoYm9vbCBpbmRpY2F0aW5nKQoreworICAgIG1f
cGFnZS0+aW5zcGVjdG9yQ29udHJvbGxlcigpLnNldEluZGljYXRpbmcoaW5kaWNhdGluZyk7Cit9
CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpzZXRCYWNrZ3JvdW5kQ29sb3IoY29uc3Qgc3RkOjpv
cHRpb25hbDxXZWJDb3JlOjpDb2xvcj4mIGJhY2tncm91bmRDb2xvcikKK3sKKyAgICBpZiAobV9i
YWNrZ3JvdW5kQ29sb3IgPT0gYmFja2dyb3VuZENvbG9yKQorICAgICAgICByZXR1cm47CisKKyAg
ICBtX2JhY2tncm91bmRDb2xvciA9IGJhY2tncm91bmRDb2xvcjsKKworICAgIGlmIChGcmFtZVZp
ZXcqIGZyYW1lVmlldyA9IG1haW5GcmFtZVZpZXcoKSkKKyAgICAgICAgZnJhbWVWaWV3LT51cGRh
dGVCYWNrZ3JvdW5kUmVjdXJzaXZlbHkoYmFja2dyb3VuZENvbG9yKTsKKworICAgIG1fZHJhd2lu
Z0FyZWEtPnNldE5lZWRzRGlzcGxheSgpOworfQorCisjaWYgUExBVEZPUk0oQ09DT0EpCit2b2lk
IFdlYlBhZ2U6OnNldFRvcENvbnRlbnRJbnNldEZlbmNlZChmbG9hdCBjb250ZW50SW5zZXQsIGNv
bnN0IFdURjo6TWFjaFNlbmRSaWdodCYgbWFjaFNlbmRSaWdodCkKK3sKKyAgICBtX2RyYXdpbmdB
cmVhLT5hZGRGZW5jZShtYWNoU2VuZFJpZ2h0KTsKKyAgICBzZXRUb3BDb250ZW50SW5zZXQoY29u
dGVudEluc2V0KTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6OnNldFRvcENvbnRlbnRJbnNl
dChmbG9hdCBjb250ZW50SW5zZXQpCit7CisgICAgaWYgKGNvbnRlbnRJbnNldCA9PSBtX3BhZ2Ut
PnRvcENvbnRlbnRJbnNldCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3BhZ2UtPnNldFRv
cENvbnRlbnRJbnNldChjb250ZW50SW5zZXQpOworCisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3
IDogbV9wbHVnaW5WaWV3cykKKyAgICAgICAgcGx1Z2luVmlldy0+dG9wQ29udGVudEluc2V0RGlk
Q2hhbmdlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dmlld1dpbGxTdGFydExpdmVSZXNpemUoKQor
eworICAgIGlmICghbV9wYWdlKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgcHJvcGFnYXRlIHRvIGFsbCBTY3JvbGxhYmxlQXJlYXMuCisgICAgUmVmIGZyYW1l
ID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZy
YW1lKCk7CisgICAgaWYgKFJlZlB0ciB2aWV3ID0gZnJhbWUtPnZpZXcoKSkKKyAgICAgICAgdmll
dy0+d2lsbFN0YXJ0TGl2ZVJlc2l6ZSgpOworfQorCit2b2lkIFdlYlBhZ2U6OnZpZXdXaWxsRW5k
TGl2ZVJlc2l6ZSgpCit7CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsKKworICAg
IC8vIEZJWE1FOiBUaGlzIHNob3VsZCBwcm9wYWdhdGUgdG8gYWxsIFNjcm9sbGFibGVBcmVhcy4K
KyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5m
b2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBpZiAoUmVmUHRyIHZpZXcgPSBmcmFtZS0+dmlldygp
KQorICAgICAgICB2aWV3LT53aWxsRW5kTGl2ZVJlc2l6ZSgpOworfQorCit2b2lkIFdlYlBhZ2U6
OnNldEluaXRpYWxGb2N1cyhib29sIGZvcndhcmQsIGJvb2wgaXNLZXlib2FyZEV2ZW50VmFsaWQs
IGNvbnN0IFdlYktleWJvYXJkRXZlbnQmIGV2ZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcigpOworCisgICAgU2V0Rm9yU2NvcGU8Ym9vbD4gdXNlcklzSW50
ZXJhY3RpbmdDaGFuZ2UgeyBtX3VzZXJJc0ludGVyYWN0aW5nLCB0cnVlIH07CisKKyAgICBDaGVj
a2VkUmVmIGZvY3VzQ29udHJvbGxlciB7IG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkgfTsKKyAg
ICBSZWYgZnJhbWUgPSBmb2N1c0NvbnRyb2xsZXItPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAg
IGZyYW1lLT5kb2N1bWVudCgpLT5zZXRGb2N1c2VkRWxlbWVudChudWxscHRyKTsKKworICAgIGlm
IChpc0tleWJvYXJkRXZlbnRWYWxpZCAmJiBldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OktleURv
d24pIHsKKyAgICAgICAgUGxhdGZvcm1LZXlib2FyZEV2ZW50IHBsYXRmb3JtRXZlbnQocGxhdGZv
cm0oZXZlbnQpKTsKKyAgICAgICAgcGxhdGZvcm1FdmVudC5kaXNhbWJpZ3VhdGVLZXlEb3duRXZl
bnQoUGxhdGZvcm1FdmVudDo6UmF3S2V5RG93bik7CisgICAgICAgIGZvY3VzQ29udHJvbGxlci0+
c2V0SW5pdGlhbEZvY3VzKGZvcndhcmQgPyBGb2N1c0RpcmVjdGlvbjo6Rm9yd2FyZCA6IEZvY3Vz
RGlyZWN0aW9uOjpCYWNrd2FyZCwgJktleWJvYXJkRXZlbnQ6OmNyZWF0ZShwbGF0Zm9ybUV2ZW50
LCAmZnJhbWUtPndpbmRvd1Byb3h5KCkpLmdldCgpKTsKKyAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGZvY3VzQ29udHJvbGxlci0+c2V0
SW5pdGlhbEZvY3VzKGZvcndhcmQgPyBGb2N1c0RpcmVjdGlvbjo6Rm9yd2FyZCA6IEZvY3VzRGly
ZWN0aW9uOjpCYWNrd2FyZCwgbnVsbHB0cik7CisgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKK30K
Kwordm9pZCBXZWJQYWdlOjpzZXRDYW5TdGFydE1lZGlhVGltZXJGaXJlZCgpCit7CisgICAgaWYg
KG1fcGFnZSkKKyAgICAgICAgbV9wYWdlLT5zZXRDYW5TdGFydE1lZGlhKHRydWUpOworfQorCit2
b2lkIFdlYlBhZ2U6OnVwZGF0ZUlzSW5XaW5kb3coYm9vbCBpc0luaXRpYWxTdGF0ZSkKK3sKKyAg
ICBib29sIGlzSW5XaW5kb3cgPSBtX2FjdGl2aXR5U3RhdGUuY29udGFpbnMoV2ViQ29yZTo6QWN0
aXZpdHlTdGF0ZTo6SXNJbldpbmRvdyk7CisKKyAgICBpZiAoIWlzSW5XaW5kb3cpIHsKKyAgICAg
ICAgbV9zZXRDYW5TdGFydE1lZGlhVGltZXIuc3RvcCgpOworICAgICAgICBtX3BhZ2UtPnNldENh
blN0YXJ0TWVkaWEoZmFsc2UpOworICAgICAgICAKKyAgICAgICAgLy8gVGhlIFdlYlByb2Nlc3Mg
ZG9lcyBub3QgeWV0IGtub3cgYWJvdXQgdGhpcyBwYWdlOyBubyBuZWVkIHRvIHRlbGwgaXQgd2Un
cmUgbGVhdmluZyB0aGUgd2luZG93LgorICAgICAgICBpZiAoIWlzSW5pdGlhbFN0YXRlKQorICAg
ICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFnZVdpbGxMZWF2ZVdpbmRvdyhtX2lk
ZW50aWZpZXIpOworICAgIH0gZWxzZSB7CisgICAgICAgIC8vIERlZmVyIHRoZSBjYWxsIHRvIFBh
Z2U6OnNldENhblN0YXJ0TWVkaWEoKSBzaW5jZSBpdCBlbmRzIHVwIHNlbmRpbmcgYSBzeW5jaHJv
bm91cyBtZXNzYWdlIHRvIHRoZSBVSSBwcm9jZXNzCisgICAgICAgIC8vIGluIG9yZGVyIHRvIGdl
dCBwbHVnLWluIGNvbm5lY3Rpb25zLCBhbmQgdGhlIFVJIHByb2Nlc3Mgd2lsbCBiZSB3YWl0aW5n
IGZvciB0aGUgV2ViIHByb2Nlc3MgdG8gdXBkYXRlIHRoZSBiYWNraW5nCisgICAgICAgIC8vIHN0
b3JlIGFmdGVyIG1vdmluZyB0aGUgdmlldyBpbnRvIGEgd2luZG93LCB1bnRpbCBpdCB0aW1lcyBv
dXQgYW5kIHBhaW50cyB3aGl0ZS4gU2VlIDxyZGFyOi8vcHJvYmxlbS85MjQyNzcxPi4KKyAgICAg
ICAgaWYgKG1fbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdykKKyAgICAgICAgICAgIG1fc2V0Q2Fu
U3RhcnRNZWRpYVRpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOworCisgICAgICAgIFdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLnBhZ2VEaWRFbnRlcldpbmRvdyhtX2lkZW50aWZpZXIpOworICAgIH0KKwor
ICAgIGlmIChpc0luV2luZG93KQorICAgICAgICBsYXlvdXRJZk5lZWRlZCgpOworfQorCit2b2lk
IFdlYlBhZ2U6OnZpc2liaWxpdHlEaWRDaGFuZ2UoKQoreworICAgIGJvb2wgaXNWaXNpYmxlID0g
bV9hY3Rpdml0eVN0YXRlLmNvbnRhaW5zKEFjdGl2aXR5U3RhdGU6OklzVmlzaWJsZSk7CisgICAg
aWYgKCFpc1Zpc2libGUpIHsKKyAgICAgICAgLy8gV2Ugc2F2ZSB0aGUgZG9jdW1lbnQgLyBzY3Jv
bGwgc3RhdGUgd2hlbiBiYWNrZ3JvdW5kaW5nIGEgdGFiIHNvIHRoYXQgd2UgYXJlIGFibGUgdG8g
cmVzdG9yZSBpdAorICAgICAgICAvLyBpZiBpdCBnZXRzIHRlcm1pbmF0ZWQgd2hpbGUgaW4gdGhl
IGJhY2tncm91bmQuCisgICAgICAgIGlmIChhdXRvKiBmcmFtZSA9IG1fbWFpbkZyYW1lLT5jb3Jl
RnJhbWUoKSkKKyAgICAgICAgICAgIGZyYW1lLT5sb2FkZXIoKS5oaXN0b3J5KCkuc2F2ZURvY3Vt
ZW50QW5kU2Nyb2xsU3RhdGUoKTsKKyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0QWN0aXZp
dHlTdGF0ZShPcHRpb25TZXQ8QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0ZSwgQWN0
aXZpdHlTdGF0ZUNoYW5nZUlEIGFjdGl2aXR5U3RhdGVDaGFuZ2VJRCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQoreworICAgIExPR19XSVRIX1NUUkVBTShBY3Rpdml0eVN0
YXRlLCBzdHJlYW0gPDwgIldlYlBhZ2UgIiA8PCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSA8PCAi
IHNldEFjdGl2aXR5U3RhdGUgdG8gIiA8PCBhY3Rpdml0eVN0YXRlKTsKKworICAgIGF1dG8gY2hh
bmdlZCA9IG1fYWN0aXZpdHlTdGF0ZSBeIGFjdGl2aXR5U3RhdGU7CisgICAgbV9hY3Rpdml0eVN0
YXRlID0gYWN0aXZpdHlTdGF0ZTsKKworICAgIGlmIChjaGFuZ2VkKQorICAgICAgICB1cGRhdGVU
aHJvdHRsZVN0YXRlKCk7CisKKyAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKG1fcGFnZSwgInNldEFj
dGl2aXR5U3RhdGUgY2FsbGVkIG9uICUiIFBSSXU2NCAiIGJ1dCBXZWJDb3JlIHBhZ2Ugd2FzIG51
bGwiLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CisgICAgaWYgKG1fcGFnZSkgeworICAgICAg
ICBTZXRGb3JTY29wZTxPcHRpb25TZXQ8QWN0aXZpdHlTdGF0ZTo6RmxhZz4+IGN1cnJlbnRseUNo
YW5naW5nQWN0aXZpdHlTdGF0ZSB7IG1fbGFzdEFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBjaGFuZ2Vk
IH07CisgICAgICAgIG1fcGFnZS0+c2V0QWN0aXZpdHlTdGF0ZShhY3Rpdml0eVN0YXRlKTsKKyAg
ICB9CisgICAgCisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3IDogbV9wbHVnaW5WaWV3cykKKyAg
ICAgICAgcGx1Z2luVmlldy0+YWN0aXZpdHlTdGF0ZURpZENoYW5nZShjaGFuZ2VkKTsKKworICAg
IG1fZHJhd2luZ0FyZWEtPmFjdGl2aXR5U3RhdGVEaWRDaGFuZ2UoY2hhbmdlZCwgYWN0aXZpdHlT
dGF0ZUNoYW5nZUlELCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkucGFnZUFjdGl2aXR5U3RhdGVEaWRDaGFuZ2UobV9pZGVudGlmaWVyLCBjaGFuZ2VkKTsK
KworICAgIGlmIChjaGFuZ2VkICYgQWN0aXZpdHlTdGF0ZTo6SXNJbldpbmRvdykKKyAgICAgICAg
dXBkYXRlSXNJbldpbmRvdygpOworCisgICAgaWYgKGNoYW5nZWQgJiBBY3Rpdml0eVN0YXRlOjpJ
c1Zpc2libGUpCisgICAgICAgIHZpc2liaWxpdHlEaWRDaGFuZ2UoKTsKK30KKwordm9pZCBXZWJQ
YWdlOjpzZXRMYXllckhvc3RpbmdNb2RlKExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9k
ZSkKK3sKKyAgICBtX2xheWVySG9zdGluZ01vZGUgPSBsYXllckhvc3RpbmdNb2RlOworCisgICAg
bV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJIb3N0aW5nTW9kZShtX2xheWVySG9zdGluZ01vZGUpOwor
CisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3IDogbV9wbHVnaW5WaWV3cykKKyAgICAgICAgcGx1
Z2luVmlldy0+c2V0TGF5ZXJIb3N0aW5nTW9kZShtX2xheWVySG9zdGluZ01vZGUpOworfQorCit2
b2lkIFdlYlBhZ2U6OmRpZFJlY2VpdmVQb2xpY3lEZWNpc2lvbihGcmFtZUlkZW50aWZpZXIgZnJh
bWVJRCwgdWludDY0X3QgbGlzdGVuZXJJRCwgUG9saWN5RGVjaXNpb24mJiBwb2xpY3lEZWNpc2lv
biwgY29uc3QgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4mIG5ldHdvcmtFeHRlbnNp
b25zSGFuZGxlcykKK3sKKyAgICBjb25zdW1lTmV0d29ya0V4dGVuc2lvblNhbmRib3hFeHRlbnNp
b25zKG5ldHdvcmtFeHRlbnNpb25zSGFuZGxlcyk7CisKKyAgICBXZWJGcmFtZSogZnJhbWUgPSBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBXRUJQQUdFX1JF
TEVBU0VfTE9HKExvYWRpbmcsICJkaWRSZWNlaXZlUG9saWN5RGVjaXNpb246IHBvbGljeUFjdGlv
bj0ldSAtIGZyYW1lSUQ9JWxsdSAtIHdlYkZyYW1lPSVwIC0gbWFpbkZyYW1lPSVkIiwgKHVuc2ln
bmVkKXBvbGljeURlY2lzaW9uLnBvbGljeUFjdGlvbiwgZnJhbWVJRC50b1VJbnQ2NCgpLCBmcmFt
ZSwgZnJhbWUgPyBmcmFtZS0+aXNNYWluRnJhbWUoKSA6IDApOworCisgICAgaWYgKCFmcmFtZSkK
KyAgICAgICAgcmV0dXJuOworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKKyAgICBzZXRJ
c05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKHBvbGljeURlY2lzaW9uLmlzTmF2aWdhdGluZ1Rv
QXBwQm91bmREb21haW4sIGZyYW1lKTsKKyNlbmRpZgorICAgIGZyYW1lLT5kaWRSZWNlaXZlUG9s
aWN5RGVjaXNpb24obGlzdGVuZXJJRCwgV1RGTW92ZShwb2xpY3lEZWNpc2lvbikpOworfQorCit2
b2lkIFdlYlBhZ2U6OmNvbnRpbnVlV2lsbFN1Ym1pdEZvcm0oRnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIEZvcm1TdWJtaXRMaXN0ZW5lcklkZW50aWZpZXIgbGlzdGVuZXJJRCkKK3sKKyAgICBXZWJG
cmFtZSogZnJhbWUgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShmcmFtZUlEKTsK
KyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm47CisgICAgZnJhbWUtPmNvbnRpbnVlV2ls
bFN1Ym1pdEZvcm0obGlzdGVuZXJJRCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkU3RhcnRQYWdl
VHJhbnNpdGlvbigpCit7CisgICAgZnJlZXplTGF5ZXJUcmVlKExheWVyVHJlZUZyZWV6ZVJlYXNv
bjo6UGFnZVRyYW5zaXRpb24pOworCisjaWYgSEFWRShUT1VDSF9CQVIpCisgICAgYm9vbCBoYXNQ
cmV2aW91c2x5Rm9jdXNlZER1ZVRvVXNlckludGVyYWN0aW9uID0gbV9oYXNFdmVyRm9jdXNlZEVs
ZW1lbnREdWVUb1VzZXJJbnRlcmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb247CisgICAgbV9oYXNF
dmVyRm9jdXNlZEVsZW1lbnREdWVUb1VzZXJJbnRlcmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb24g
PSBmYWxzZTsKKyNlbmRpZgorICAgIG1fbGFzdEVkaXRvclN0YXRlV2FzQ29udGVudEVkaXRhYmxl
ID0gRWRpdG9yU3RhdGVJc0NvbnRlbnRFZGl0YWJsZTo6VW5zZXQ7CisKKyNpZiBQTEFURk9STShN
QUMpCisgICAgaWYgKGhhc1ByZXZpb3VzbHlGb2N1c2VkRHVlVG9Vc2VySW50ZXJhY3Rpb24pCisg
ICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0SGFzSGFkU2VsZWN0aW9uQ2hh
bmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24obV9oYXNFdmVyRm9jdXNlZEVsZW1lbnREdWVUb1VzZXJJ
bnRlcmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb24pKTsKKyNlbmRpZgorCisjaWYgSEFWRShUT1VD
SF9CQVIpCisgICAgaWYgKG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRl
bnRFZGl0YWJsZSkgeworICAgICAgICBtX2lzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRk
ZW5Db250ZW50RWRpdGFibGUgPSBmYWxzZTsKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRJc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRh
YmxlKG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSkp
OworICAgIH0KKworICAgIGlmIChtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKSB7
CisgICAgICAgIG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIgPSBmYWxzZTsKKyAg
ICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRJc05ldmVyUmljaGx5RWRpdGFi
bGVGb3JUb3VjaEJhcihtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKSk7CisgICAg
fQorI2VuZGlmCisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIG1faXNTaG93aW5nSW5w
dXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQgPSBmYWxzZTsKKyAgICAvLyBUaGlzIGlzIHVzZWQgdG8g
ZW5hYmxlIGEgZmlyc3QtdGFwIHF1aXJrLgorICAgIG1faGFzSGFuZGxlZFN5bnRoZXRpY0NsaWNr
ID0gZmFsc2U7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlOjpkaWRDb21wbGV0ZVBhZ2VUcmFu
c2l0aW9uKCkKK3sKKyAgICB1bmZyZWV6ZUxheWVyVHJlZShMYXllclRyZWVGcmVlemVSZWFzb246
OlBhZ2VUcmFuc2l0aW9uKTsKK30KKwordm9pZCBXZWJQYWdlOjpzaG93KCkKK3sKKyAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dQYWdlKCkpOworfQorCit2b2lkIFdlYlBhZ2U6
OnNldElzVGFraW5nU25hcHNob3RzRm9yQXBwbGljYXRpb25TdXNwZW5zaW9uKGJvb2wgaXNUYWtp
bmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24pCit7CisgICAgV0VCUEFHRV9SRUxF
QVNFX0xPRyhSZXNpemUsICJzZXRJc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVu
c2lvbiglZCkiLCBpc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lvbik7CisK
KyAgICBpZiAobV9wYWdlKQorICAgICAgICBtX3BhZ2UtPnNldElzVGFraW5nU25hcHNob3RzRm9y
QXBwbGljYXRpb25TdXNwZW5zaW9uKGlzVGFraW5nU25hcHNob3RzRm9yQXBwbGljYXRpb25TdXNw
ZW5zaW9uKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXROZWVkc0RPTVdpbmRvd1Jlc2l6ZUV2ZW50
KCkKK3sKKyAgICBpZiAoIW1fcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGF1dG8q
IGRvY3VtZW50ID0gbV9wYWdlLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKQorICAgICAgICBkb2N1
bWVudC0+c2V0TmVlZHNET01XaW5kb3dSZXNpemVFdmVudCgpOworfQorCitTdHJpbmcgV2ViUGFn
ZTo6dXNlckFnZW50KGNvbnN0IFVSTCYgd2ViQ29yZVVSTCkgY29uc3QKK3sKKyAgICBTdHJpbmcg
dXNlckFnZW50ID0gcGxhdGZvcm1Vc2VyQWdlbnQod2ViQ29yZVVSTCk7CisgICAgaWYgKCF1c2Vy
QWdlbnQuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gdXNlckFnZW50OworICAgIHJldHVybiBt
X3VzZXJBZ2VudDsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRVc2VyQWdlbnQoY29uc3QgU3RyaW5n
JiB1c2VyQWdlbnQpCit7CisgICAgaWYgKG1fdXNlckFnZW50ID09IHVzZXJBZ2VudCkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgbV91c2VyQWdlbnQgPSB1c2VyQWdlbnQ7CisKKyAgICBpZiAobV9w
YWdlKQorICAgICAgICBtX3BhZ2UtPnVzZXJBZ2VudENoYW5nZWQoKTsKK30KKwordm9pZCBXZWJQ
YWdlOjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQoreworICAgIG1fcGFn
ZS0+c3VzcGVuZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6cmVzdW1lQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQoreworICAgIG1fcGFn
ZS0+cmVzdW1lQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKTsKK30KKwordm9pZCBXZWJQ
YWdlOjpzdXNwZW5kKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit7CisgICAgV0VCUEFHRV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic3VzcGVuZDogbV9w
YWdlPSVwIiwgbV9wYWdlLmdldCgpKTsKKyAgICBpZiAoIW1fcGFnZSkKKyAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKworICAgIGZyZWV6ZUxheWVyVHJlZShMYXllclRy
ZWVGcmVlemVSZWFzb246OlBhZ2VTdXNwZW5kZWQpOworCisgICAgbV9jYWNoZWRQYWdlID0gQmFj
a0ZvcndhcmRDYWNoZTo6c2luZ2xldG9uKCkuc3VzcGVuZFBhZ2UoKm1fcGFnZSk7CisgICAgQVNT
RVJUKG1fY2FjaGVkUGFnZSk7CisgICAgaWYgKGF1dG8gbWFpbkZyYW1lID0gbV9tYWluRnJhbWUt
PmNvcmVGcmFtZSgpKQorICAgICAgICBtYWluRnJhbWUtPmxvYWRlcigpLmRldGFjaEZyb21BbGxP
cGVuZWRGcmFtZXMoKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcih0cnVlKTsKK30KKwordm9pZCBX
ZWJQYWdlOjpyZXN1bWUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3sKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZXN1bWU6IG1f
cGFnZT0lcCIsIG1fcGFnZS5nZXQoKSk7CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVy
biBjb21wbGV0aW9uSGFuZGxlcihmYWxzZSk7CisKKyAgICBhdXRvIGNhY2hlZFBhZ2UgPSBzdGQ6
OmV4Y2hhbmdlKG1fY2FjaGVkUGFnZSwgbnVsbHB0cik7CisgICAgQVNTRVJUKGNhY2hlZFBhZ2Up
OworICAgIGlmICghY2FjaGVkUGFnZSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVy
KGZhbHNlKTsKKworICAgIGNhY2hlZFBhZ2UtPnJlc3RvcmUoKm1fcGFnZSk7CisgICAgdW5mcmVl
emVMYXllclRyZWUoTGF5ZXJUcmVlRnJlZXplUmVhc29uOjpQYWdlU3VzcGVuZGVkKTsKKyAgICBj
b21wbGV0aW9uSGFuZGxlcih0cnVlKTsKK30KKworSW50UG9pbnQgV2ViUGFnZTo6c2NyZWVuVG9S
b290Vmlldyhjb25zdCBJbnRQb2ludCYgcG9pbnQpCit7CisgICAgSW50UG9pbnQgd2luZG93UG9p
bnQ7CisgICAgc2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2NyZWVuVG9Sb290Vmll
dyhwb2ludCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNjcmVlblRvUm9vdFZpZXc6OlJlcGx5
KHdpbmRvd1BvaW50KSk7CisgICAgcmV0dXJuIHdpbmRvd1BvaW50OworfQorICAgIAorSW50UmVj
dCBXZWJQYWdlOjpyb290Vmlld1RvU2NyZWVuKGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAg
SW50UmVjdCBzY3JlZW5SZWN0OworICAgIHNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlJvb3RWaWV3VG9TY3JlZW4ocmVjdCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJvb3RWaWV3
VG9TY3JlZW46OlJlcGx5KHNjcmVlblJlY3QpKTsKKyAgICByZXR1cm4gc2NyZWVuUmVjdDsKK30K
KyAgICAKK0ludFBvaW50IFdlYlBhZ2U6OmFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KGNv
bnN0IEludFBvaW50JiBwb2ludCkKK3sKKyAgICBJbnRQb2ludCB3aW5kb3dQb2ludDsKKyAgICBz
ZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpBY2Nlc3NpYmlsaXR5U2NyZWVuVG9Sb290
Vmlldyhwb2ludCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkFjY2Vzc2liaWxpdHlTY3JlZW5U
b1Jvb3RWaWV3OjpSZXBseSh3aW5kb3dQb2ludCkpOworICAgIHJldHVybiB3aW5kb3dQb2ludDsK
K30KKworSW50UmVjdCBXZWJQYWdlOjpyb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihjb25z
dCBJbnRSZWN0JiByZWN0KQoreworICAgIEludFJlY3Qgc2NyZWVuUmVjdDsKKyAgICBzZW5kU3lu
YyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSb290Vmlld1RvQWNjZXNzaWJpbGl0eVNjcmVlbihy
ZWN0KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Um9vdFZpZXdUb0FjY2Vzc2liaWxpdHlTY3Jl
ZW46OlJlcGx5KHNjcmVlblJlY3QpKTsKKyAgICByZXR1cm4gc2NyZWVuUmVjdDsKK30KKworS2V5
Ym9hcmRVSU1vZGUgV2ViUGFnZTo6a2V5Ym9hcmRVSU1vZGUoKQoreworICAgIGJvb2wgZnVsbEtl
eWJvYXJkQWNjZXNzRW5hYmxlZCA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmZ1bGxLZXlib2Fy
ZEFjY2Vzc0VuYWJsZWQoKTsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8S2V5Ym9hcmRVSU1vZGU+
KChmdWxsS2V5Ym9hcmRBY2Nlc3NFbmFibGVkID8gS2V5Ym9hcmRBY2Nlc3NGdWxsIDogS2V5Ym9h
cmRBY2Nlc3NEZWZhdWx0KSB8IChtX3RhYlRvTGlua3MgPyBLZXlib2FyZEFjY2Vzc1RhYnNUb0xp
bmtzIDogMCkpOworfQorCit2b2lkIFdlYlBhZ2U6OnJ1bkphdmFTY3JpcHQoV2ViRnJhbWUqIGZy
YW1lLCBSdW5KYXZhU2NyaXB0UGFyYW1ldGVycyYmIHBhcmFtZXRlcnMsIENvbnRlbnRXb3JsZElk
ZW50aWZpZXIgd29ybGRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IElQ
Qzo6RGF0YVJlZmVyZW5jZSYsIGNvbnN0IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RXhjZXB0aW9u
RGV0YWlscz4mKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICAvLyBOT1RFOiBXZSBuZWVk
IHRvIGJlIGNhcmVmdWwgd2hlbiBydW5uaW5nIHNjcmlwdHMgdGhhdCB0aGUgb2JqZWN0cyB3ZSBk
ZXBlbmQgb24gZG9uJ3QKKyAgICAvLyBkaXNhcHBlYXIgZHVyaW5nIHNjcmlwdCBleGVjdXRpb24u
CisKKyAgICBpZiAoIWZyYW1lIHx8ICFmcmFtZS0+Y29yZUZyYW1lKCkpIHsKKyAgICAgICAgY29t
cGxldGlvbkhhbmRsZXIoeyB9LCBFeGNlcHRpb25EZXRhaWxzIHsgIlVuYWJsZSB0byBleGVjdXRl
IEphdmFTY3JpcHQ6IFRhcmdldCBmcmFtZSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIHBhZ2Ui
X3MsIDAsIDAsIEV4Y2VwdGlvbkRldGFpbHM6OlR5cGU6OkludmFsaWRUYXJnZXRGcmFtZSB9KTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8qIHdvcmxkID0gbV91c2VyQ29udGVu
dENvbnRyb2xsZXItPndvcmxkRm9ySWRlbnRpZmllcih3b3JsZElkZW50aWZpZXIpOworICAgIGlm
ICghd29ybGQpIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9LCBFeGNlcHRpb25EZXRh
aWxzIHsgIlVuYWJsZSB0byBleGVjdXRlIEphdmFTY3JpcHQ6IENhbm5vdCBmaW5kIHNwZWNpZmll
ZCBjb250ZW50IHdvcmxkIl9zIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisjaWYgRU5B
QkxFKEFQUF9CT1VORF9ET01BSU5TKQorICAgIGlmIChmcmFtZS0+c2hvdWxkRW5hYmxlSW5BcHBC
cm93c2VyUHJpdmFjeVByb3RlY3Rpb25zKCkpIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
eyB9LCBFeGNlcHRpb25EZXRhaWxzIHsgIlVuYWJsZSB0byBleGVjdXRlIEphdmFTY3JpcHQgaW4g
YSBmcmFtZSB0aGF0IGlzIG5vdCBpbiBhbiBhcHAtYm91bmQgZG9tYWluIl9zLCAwLCAwLCBFeGNl
cHRpb25EZXRhaWxzOjpUeXBlOjpBcHBCb3VuZERvbWFpbiB9KTsKKyAgICAgICAgaWYgKGF1dG8q
IGRvY3VtZW50ID0gbV9wYWdlLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKQorICAgICAgICAgICAg
ZG9jdW1lbnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNz
YWdlTGV2ZWw6Oldhcm5pbmcsICJJZ25vcmluZyB1c2VyIHNjcmlwdCBpbmplY3Rpb24gZm9yIG5v
bi1hcHAgYm91bmQgZG9tYWluLiIpOworICAgICAgICBXRUJQQUdFX1JFTEVBU0VfTE9HX0VSUk9S
KExvYWRpbmcsICJydW5KYXZhU2NyaXB0OiBJZ25vcmluZyB1c2VyIHNjcmlwdCBpbmplY3Rpb24g
Zm9yIG5vbiBhcHAtYm91bmQgZG9tYWluIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5k
aWYKKworICAgIGF1dG8gcmVzb2x2ZUZ1bmN0aW9uID0gW3dvcmxkID0gbWFrZVJlZigqd29ybGQp
LCBmcmFtZSA9IFJlZiB7ICpmcmFtZSB9LCBjb3JlRnJhbWUgPSBSZWYgeyAqZnJhbWUtPmNvcmVG
cmFtZSgpIH0sIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcild
IChWYWx1ZU9yRXhjZXB0aW9uIHJlc3VsdCkgbXV0YWJsZSB7CisgICAgICAgIFJlZlB0cjxTZXJp
YWxpemVkU2NyaXB0VmFsdWU+IHNlcmlhbGl6ZWRSZXN1bHRWYWx1ZTsKKyAgICAgICAgaWYgKHJl
c3VsdCkgeworICAgICAgICAgICAgc2VyaWFsaXplZFJlc3VsdFZhbHVlID0gU2VyaWFsaXplZFNj
cmlwdFZhbHVlOjpjcmVhdGUoZnJhbWUtPmpzQ29udGV4dEZvcldvcmxkKHdvcmxkLnB0cigpKSwK
KyAgICAgICAgICAgICAgICB0b1JlZihjb3JlRnJhbWUtPnNjcmlwdCgpLmdsb2JhbE9iamVjdCh3
b3JsZC0+Y29yZVdvcmxkKCkpLCByZXN1bHQudmFsdWUoKSksIG51bGxwdHIpOworICAgICAgICB9
CisKKyAgICAgICAgSVBDOjpEYXRhUmVmZXJlbmNlIGRhdGFSZWZlcmVuY2U7CisgICAgICAgIGlm
IChzZXJpYWxpemVkUmVzdWx0VmFsdWUpCisgICAgICAgICAgICBkYXRhUmVmZXJlbmNlID0gc2Vy
aWFsaXplZFJlc3VsdFZhbHVlLT5kYXRhKCk7CisKKyAgICAgICAgc3RkOjpvcHRpb25hbDxFeGNl
cHRpb25EZXRhaWxzPiBkZXRhaWxzOworICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAg
IGRldGFpbHMgPSByZXN1bHQuZXJyb3IoKTsKKworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihk
YXRhUmVmZXJlbmNlLCBkZXRhaWxzKTsKKyAgICB9OworICAgIEpTTG9ja0hvbGRlciBsb2NrKGNv
bW1vblZNKCkpOworICAgIGZyYW1lLT5jb3JlRnJhbWUoKS0+c2NyaXB0KCkuZXhlY3V0ZUFzeW5j
aHJvbm91c1VzZXJBZ2VudFNjcmlwdEluV29ybGQod29ybGQtPmNvcmVXb3JsZCgpLCBXVEZNb3Zl
KHBhcmFtZXRlcnMpLCBXVEZNb3ZlKHJlc29sdmVGdW5jdGlvbikpOworfQorCit2b2lkIFdlYlBh
Z2U6OnJ1bkphdmFTY3JpcHRJbkZyYW1lSW5TY3JpcHRXb3JsZChSdW5KYXZhU2NyaXB0UGFyYW1l
dGVycyYmIHBhcmFtZXRlcnMsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
PiBmcmFtZUlELCBjb25zdCBzdGQ6OnBhaXI8Q29udGVudFdvcmxkSWRlbnRpZmllciwgU3RyaW5n
PiYgd29ybGREYXRhLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IElQQzo6RGF0YVJlZmVy
ZW5jZSYsIGNvbnN0IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RXhjZXB0aW9uRGV0YWlscz4mKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFByb2Nlc3Ms
ICJydW5KYXZhU2NyaXB0SW5GcmFtZUluU2NyaXB0V29ybGQ6IGZyYW1lSUQ9JSIgUFJJdTY0LCBm
cmFtZUlELnZhbHVlX29yKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciB7IH0pLnRvVUludDY0KCkp
OworICAgIGF1dG8gd2ViRnJhbWUgPSBtYWtlUmVmUHRyKGZyYW1lSUQgPyBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS53ZWJGcmFtZSgqZnJhbWVJRCkgOiAmbWFpbldlYkZyYW1lKCkpOworCisgICAg
aWYgKGF1dG8qIG5ld1dvcmxkID0gbV91c2VyQ29udGVudENvbnRyb2xsZXItPmFkZENvbnRlbnRX
b3JsZCh3b3JsZERhdGEpKSB7CisgICAgICAgIGF1dG8mIGNvcmVXb3JsZCA9IG5ld1dvcmxkLT5j
b3JlV29ybGQoKTsKKyAgICAgICAgZm9yIChSZWZQdHI8RnJhbWU+IGZyYW1lID0gbWFpbkZyYW1l
KCk7IGZyYW1lOyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KCkpCisgICAgICAg
ICAgICBmcmFtZS0+bG9hZGVyKCkuY2xpZW50KCkuZGlzcGF0Y2hHbG9iYWxPYmplY3RBdmFpbGFi
bGUoY29yZVdvcmxkKTsKKyAgICB9CisKKyAgICBydW5KYXZhU2NyaXB0KHdlYkZyYW1lLmdldCgp
LCBXVEZNb3ZlKHBhcmFtZXRlcnMpLCB3b3JsZERhdGEuZmlyc3QsIFt0aGlzLCBwcm90ZWN0ZWRU
aGlzID0gbWFrZVJlZigqdGhpcyksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcildKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgcmVzdWx0LCBjb25zdCBzdGQ6
Om9wdGlvbmFsPFdlYkNvcmU6OkV4Y2VwdGlvbkRldGFpbHM+JiBleGNlcHRpb24pIG11dGFibGUg
eworICAgICAgICBpZiAoZXhjZXB0aW9uKQorICAgICAgICAgICAgV0VCUEFHRV9SRUxFQVNFX0xP
R19FUlJPUihQcm9jZXNzLCAicnVuSmF2YVNjcmlwdEluRnJhbWVJblNjcmlwdFdvcmxkOiBSZXF1
ZXN0IHRvIHJ1biBKYXZhU2NyaXB0IGZhaWxlZCB3aXRoIGVycm9yICV7cHJpdmF0ZX1zIiwgZXhj
ZXB0aW9uLT5tZXNzYWdlLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICBlbHNlCisgICAgICAgICAg
ICBXRUJQQUdFX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJydW5KYXZhU2NyaXB0SW5GcmFtZUluU2Ny
aXB0V29ybGQ6IFJlcXVlc3QgdG8gcnVuIEphdmFTY3JpcHQgc3VjY2VlZGVkIik7CisgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKHJlc3VsdCwgZXhjZXB0aW9uKTsKKyAgICB9KTsKK30KKwordm9p
ZCBXZWJQYWdlOjpnZXRDb250ZW50c0FzU3RyaW5nKENvbnRlbnRBc1N0cmluZ0luY2x1ZGVzQ2hp
bGRGcmFtZXMgaW5jbHVkZUNoaWxkRnJhbWVzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFN0cmluZyYpPiYmIGNhbGxiYWNrKQoreworICAgIHN3aXRjaCAoaW5jbHVkZUNoaWxkRnJhbWVz
KSB7CisgICAgY2FzZSBDb250ZW50QXNTdHJpbmdJbmNsdWRlc0NoaWxkRnJhbWVzOjpObzoKKyAg
ICAgICAgY2FsbGJhY2sobV9tYWluRnJhbWUtPmNvbnRlbnRzQXNTdHJpbmcoKSk7CisgICAgICAg
IGJyZWFrOworICAgIGNhc2UgQ29udGVudEFzU3RyaW5nSW5jbHVkZXNDaGlsZEZyYW1lczo6WWVz
OgorICAgICAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7CisgICAgICAgIGZvciAoYXV0byBmcmFt
ZSA9IG1ha2VSZWZQdHIobV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpKTsgZnJhbWU7IGZyYW1lID0g
ZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHRSZW5kZXJlZCgpKSB7CisgICAgICAgICAgICBpZiAo
YXV0byB3ZWJGcmFtZSA9IFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCpmcmFtZSkpCisgICAgICAg
ICAgICAgICAgYnVpbGRlci5hcHBlbmQoYnVpbGRlci5pc0VtcHR5KCkgPyAiIiA6ICJcblxuIiwg
d2ViRnJhbWUtPmNvbnRlbnRzQXNTdHJpbmcoKSk7CisgICAgICAgIH0KKyAgICAgICAgY2FsbGJh
Y2soYnVpbGRlci50b1N0cmluZygpKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorfQorCisjaWYg
RU5BQkxFKE1IVE1MKQordm9pZCBXZWJQYWdlOjpnZXRDb250ZW50c0FzTUhUTUxEYXRhKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlJik+
JiYgY2FsbGJhY2spCit7CisgICAgY2FsbGJhY2soeyBNSFRNTEFyY2hpdmU6OmdlbmVyYXRlTUhU
TUxEYXRhKG1fcGFnZS5nZXQoKSkgfSk7Cit9CisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpnZXRS
ZW5kZXJUcmVlRXh0ZXJuYWxSZXByZXNlbnRhdGlvbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNv
bnN0IFN0cmluZyYpPiYmIGNhbGxiYWNrKQoreworICAgIGNhbGxiYWNrKHJlbmRlclRyZWVFeHRl
cm5hbFJlcHJlc2VudGF0aW9uKCkpOworfQorCitzdGF0aWMgRnJhbWUqIGZyYW1lV2l0aFNlbGVj
dGlvbihQYWdlKiBwYWdlKQoreworICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJnBhZ2UtPm1haW5G
cmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7Cisg
ICAgICAgIGlmIChmcmFtZS0+c2VsZWN0aW9uKCkuaXNSYW5nZSgpKQorICAgICAgICAgICAgcmV0
dXJuIGZyYW1lOworICAgIH0KKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKwordm9pZCBXZWJQYWdl
OjpnZXRTZWxlY3Rpb25Bc1dlYkFyY2hpdmVEYXRhKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3Qgc3RkOjpvcHRpb25hbDxJUEM6OkRhdGFSZWZlcmVuY2U+Jik+JiYgY2FsbGJhY2spCit7Cisj
aWYgUExBVEZPUk0oQ09DT0EpCisgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gZGF0YTsKKyAgICBp
ZiAoRnJhbWUqIGZyYW1lID0gZnJhbWVXaXRoU2VsZWN0aW9uKG1fcGFnZS5nZXQoKSkpCisgICAg
ICAgIGRhdGEgPSBMZWdhY3lXZWJBcmNoaXZlOjpjcmVhdGVGcm9tU2VsZWN0aW9uKGZyYW1lKS0+
cmF3RGF0YVJlcHJlc2VudGF0aW9uKCk7CisjZW5kaWYKKworICAgIElQQzo6RGF0YVJlZmVyZW5j
ZSBkYXRhUmVmZXJlbmNlOworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGlmIChkYXRhKQorICAg
ICAgICBkYXRhUmVmZXJlbmNlID0geyBDRkRhdGFHZXRCeXRlUHRyKGRhdGEuZ2V0KCkpLCBzdGF0
aWNfY2FzdDxzaXplX3Q+KENGRGF0YUdldExlbmd0aChkYXRhLmdldCgpKSkgfTsKKyNlbmRpZgor
ICAgIGNhbGxiYWNrKGRhdGFSZWZlcmVuY2UpOworfQorCit2b2lkIFdlYlBhZ2U6OmdldFNlbGVj
dGlvbk9yQ29udGVudHNBc1N0cmluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFN0cmlu
ZyYpPiYmIGNhbGxiYWNrKQoreworICAgIFdlYkZyYW1lKiBmb2N1c2VkT3JNYWluRnJhbWUgPSBX
ZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZShDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVy
KCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKSk7CisgICAgU3RyaW5nIHJlc3VsdFN0cmluZyA9IGZv
Y3VzZWRPck1haW5GcmFtZS0+c2VsZWN0aW9uQXNTdHJpbmcoKTsKKyAgICBpZiAocmVzdWx0U3Ry
aW5nLmlzRW1wdHkoKSkKKyAgICAgICAgcmVzdWx0U3RyaW5nID0gZm9jdXNlZE9yTWFpbkZyYW1l
LT5jb250ZW50c0FzU3RyaW5nKCk7CisgICAgY2FsbGJhY2socmVzdWx0U3RyaW5nKTsKK30KKwor
dm9pZCBXZWJQYWdlOjpnZXRTb3VyY2VGb3JGcmFtZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBTdHJpbmcmKT4mJiBjYWxsYmFjaykKK3sKKyAg
ICBTdHJpbmcgcmVzdWx0U3RyaW5nOworICAgIGlmIChXZWJGcmFtZSogZnJhbWUgPSBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShmcmFtZUlEKSkKKyAgICAgICByZXN1bHRTdHJpbmcg
PSBmcmFtZS0+c291cmNlKCk7CisKKyAgICBjYWxsYmFjayhyZXN1bHRTdHJpbmcpOworfQorCit2
b2lkIFdlYlBhZ2U6OmdldE1haW5SZXNvdXJjZURhdGFPZkZyYW1lKEZyYW1lSWRlbnRpZmllciBm
cmFtZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IHN0ZDo6b3B0aW9uYWw8SVBDOjpT
aGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlPiYpPiYmIGNhbGxiYWNrKQoreworICAgIFJlZlB0cjxT
aGFyZWRCdWZmZXI+IGJ1ZmZlcjsKKyAgICBpZiAoV2ViRnJhbWUqIGZyYW1lID0gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCkpIHsKKyAgICAgICAgaWYgKFBsdWdpblZp
ZXcqIHBsdWdpblZpZXcgPSBwbHVnaW5WaWV3Rm9yRnJhbWUoZnJhbWUtPmNvcmVGcmFtZSgpKSkK
KyAgICAgICAgICAgIGJ1ZmZlciA9IHBsdWdpblZpZXctPmxpdmVSZXNvdXJjZURhdGEoKTsKKyAg
ICAgICAgaWYgKCFidWZmZXIpIHsKKyAgICAgICAgICAgIGlmIChEb2N1bWVudExvYWRlciogbG9h
ZGVyID0gZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpKQorICAg
ICAgICAgICAgICAgIGJ1ZmZlciA9IGxvYWRlci0+bWFpblJlc291cmNlRGF0YSgpOworICAgICAg
ICB9CisgICAgfQorCisgICAgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRhdGFSZWZl
cmVuY2U7CisgICAgaWYgKGJ1ZmZlcikKKyAgICAgICAgZGF0YVJlZmVyZW5jZSA9IHsgKmJ1ZmZl
ciB9OworICAgIGNhbGxiYWNrKGRhdGFSZWZlcmVuY2UpOworfQorCitzdGF0aWMgUmVmUHRyPFNo
YXJlZEJ1ZmZlcj4gcmVzb3VyY2VEYXRhRm9yRnJhbWUoRnJhbWUqIGZyYW1lLCBjb25zdCBVUkwm
IHJlc291cmNlVVJMKQoreworICAgIERvY3VtZW50TG9hZGVyKiBsb2FkZXIgPSBmcmFtZS0+bG9h
ZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKKyAgICBpZiAoIWxvYWRlcikKKyAgICAgICAgcmV0dXJu
IG51bGxwdHI7CisKKyAgICBSZWZQdHI8QXJjaGl2ZVJlc291cmNlPiBzdWJyZXNvdXJjZSA9IGxv
YWRlci0+c3VicmVzb3VyY2UocmVzb3VyY2VVUkwpOworICAgIGlmICghc3VicmVzb3VyY2UpCisg
ICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgcmV0dXJuICZzdWJyZXNvdXJjZS0+ZGF0YSgp
OworfQorCit2b2lkIFdlYlBhZ2U6OmdldFJlc291cmNlRGF0YUZyb21GcmFtZShGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCwgY29uc3QgU3RyaW5nJiByZXNvdXJjZVVSTFN0cmluZywgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBzdGQ6Om9wdGlvbmFsPElQQzo6U2hhcmVkQnVmZmVyRGF0YVJl
ZmVyZW5jZT4mKT4mJiBjYWxsYmFjaykKK3sKKyAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBidWZm
ZXI7CisgICAgaWYgKGF1dG8qIGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJh
bWUoZnJhbWVJRCkpIHsKKyAgICAgICAgVVJMIHJlc291cmNlVVJMKFVSTCgpLCByZXNvdXJjZVVS
TFN0cmluZyk7CisgICAgICAgIGJ1ZmZlciA9IHJlc291cmNlRGF0YUZvckZyYW1lKGZyYW1lLT5j
b3JlRnJhbWUoKSwgcmVzb3VyY2VVUkwpOworICAgIH0KKworICAgIElQQzo6U2hhcmVkQnVmZmVy
RGF0YVJlZmVyZW5jZSBkYXRhUmVmZXJlbmNlOworICAgIGlmIChidWZmZXIpCisgICAgICAgIGRh
dGFSZWZlcmVuY2UgPSB7ICpidWZmZXIgfTsKKyAgICBjYWxsYmFjayhkYXRhUmVmZXJlbmNlKTsK
K30KKwordm9pZCBXZWJQYWdlOjpnZXRXZWJBcmNoaXZlT2ZGcmFtZShGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBzdGQ6Om9wdGlvbmFsPElQQzo6
RGF0YVJlZmVyZW5jZT4mKT4mJiBjYWxsYmFjaykKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBkYXRhOworICAgIGlmIChXZWJGcmFtZSogZnJhbWUgPSBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShmcmFtZUlEKSkKKyAgICAgICAgZGF0YSA9
IGZyYW1lLT53ZWJBcmNoaXZlRGF0YShudWxscHRyLCBudWxscHRyKTsKKyNlbHNlCisgICAgVU5V
U0VEX1BBUkFNKGZyYW1lSUQpOworI2VuZGlmCisKKyAgICBJUEM6OkRhdGFSZWZlcmVuY2UgZGF0
YVJlZmVyZW5jZTsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBpZiAoZGF0YSkKKyAgICAgICAg
ZGF0YVJlZmVyZW5jZSA9IHsgQ0ZEYXRhR2V0Qnl0ZVB0cihkYXRhLmdldCgpKSwgc3RhdGljX2Nh
c3Q8c2l6ZV90PihDRkRhdGFHZXRMZW5ndGgoZGF0YS5nZXQoKSkpIH07CisjZW5kaWYKKyAgICBj
YWxsYmFjayhkYXRhUmVmZXJlbmNlKTsKK30KKwordm9pZCBXZWJQYWdlOjpmb3JjZVJlcGFpbnRX
aXRob3V0Q2FsbGJhY2soKQoreworICAgIG1fZHJhd2luZ0FyZWEtPmZvcmNlUmVwYWludCgpOwor
fQorCit2b2lkIFdlYlBhZ2U6OmZvcmNlUmVwYWludChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgbV9kcmF3aW5nQXJlYS0+Zm9yY2VSZXBhaW50
QXN5bmMoKnRoaXMsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQ
YWdlOjpwcmVmZXJlbmNlc0RpZENoYW5nZShjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9y
ZSkKK3sKKyAgICBXZWJQcmVmZXJlbmNlc1N0b3JlOjpyZW1vdmVUZXN0UnVubmVyT3ZlcnJpZGVz
KCk7CisgICAgdXBkYXRlUHJlZmVyZW5jZXMoc3RvcmUpOworfQorCitib29sIFdlYlBhZ2U6Omlz
UGFyZW50UHJvY2Vzc0FXZWJCcm93c2VyKCkgY29uc3QKK3sKKyNpZiBIQVZFKEFVRElUX1RPS0VO
KQorICAgIHJldHVybiBpc1BhcmVudFByb2Nlc3NBRnVsbFdlYkJyb3dzZXIoV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkpOworI2VuZGlmCisgICAgcmV0dXJuIGZhbHNlOworfQorCit2b2lkIFdlYlBh
Z2U6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQor
eworICAgIHVwZGF0ZVByZWZlcmVuY2VzR2VuZXJhdGVkKHN0b3JlKTsKKyAgICB1cGRhdGVTZXR0
aW5nc0dlbmVyYXRlZChzdG9yZSk7CisKKyAgICBTZXR0aW5ncyYgc2V0dGluZ3MgPSBtX3BhZ2Ut
PnNldHRpbmdzKCk7CisKKyNpZiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oV0lOKSAmJiAh
UExBVEZPUk0oUExBWVNUQVRJT04pCisgICAgaWYgKCFzZXR0aW5ncy5hY2NlbGVyYXRlZENvbXBv
c2l0aW5nRW5hYmxlZCgpKSB7CisgICAgICAgIFdFQlBBR0VfUkVMRUFTRV9MT0coTGF5ZXJzLCAi
dXBkYXRlUHJlZmVyZW5jZXM6IGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkIHNldHRpbmcg
d2FzIGZhbHNlLiBXZWJLaXQgY2Fubm90IGZ1bmN0aW9uIGluIHRoaXMgbW9kZTsgY2hhbmdpbmcg
c2V0dGluZyB0byB0cnVlIik7CisgICAgICAgIHNldHRpbmdzLnNldEFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdFbmFibGVkKHRydWUpOworICAgIH0KKyNlbmRpZgorCisgICAgYm9vbCByZXF1aXJlc1Vz
ZXJHZXN0dXJlRm9yTWVkaWEgPSBzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5j
ZXNLZXk6OnJlcXVpcmVzVXNlckdlc3R1cmVGb3JNZWRpYVBsYXliYWNrS2V5KCkpOworICAgIHNl
dHRpbmdzLnNldFZpZGVvUGxheWJhY2tSZXF1aXJlc1VzZXJHZXN0dXJlKHJlcXVpcmVzVXNlckdl
c3R1cmVGb3JNZWRpYSB8fCBzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OnJlcXVpcmVzVXNlckdlc3R1cmVGb3JWaWRlb1BsYXliYWNrS2V5KCkpKTsKKyAgICBzZXR0
aW5ncy5zZXRBdWRpb1BsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShyZXF1aXJlc1VzZXJHZXN0
dXJlRm9yTWVkaWEgfHwgc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5
OjpyZXF1aXJlc1VzZXJHZXN0dXJlRm9yQXVkaW9QbGF5YmFja0tleSgpKSk7CisgICAgc2V0dGlu
Z3Muc2V0VXNlckludGVyZmFjZURpcmVjdGlvblBvbGljeShzdGF0aWNfY2FzdDxXZWJDb3JlOjpV
c2VySW50ZXJmYWNlRGlyZWN0aW9uUG9saWN5PihzdG9yZS5nZXRVSW50MzJWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6dXNlckludGVyZmFjZURpcmVjdGlvblBvbGljeUtleSgpKSkpOwor
ICAgIHNldHRpbmdzLnNldFN5c3RlbUxheW91dERpcmVjdGlvbihzdGF0aWNfY2FzdDxUZXh0RGly
ZWN0aW9uPihzdG9yZS5nZXRVSW50MzJWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6c3lz
dGVtTGF5b3V0RGlyZWN0aW9uS2V5KCkpKSk7CisgICAgc2V0dGluZ3Muc2V0SmF2YVNjcmlwdFJ1
bnRpbWVGbGFncyhzdGF0aWNfY2FzdDxSdW50aW1lRmxhZ3M+KHN0b3JlLmdldFVJbnQzMlZhbHVl
Rm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjpqYXZhU2NyaXB0UnVudGltZUZsYWdzS2V5KCkpKSk7
CisgICAgc2V0dGluZ3Muc2V0U3RvcmFnZUJsb2NraW5nUG9saWN5KHN0YXRpY19jYXN0PFN0b3Jh
Z2VCbG9ja2luZ1BvbGljeT4oc3RvcmUuZ2V0VUludDMyVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5j
ZXNLZXk6OnN0b3JhZ2VCbG9ja2luZ1BvbGljeUtleSgpKSkpOworICAgIHNldHRpbmdzLnNldEZy
YW1lRmxhdHRlbmluZyhzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6
OmZyYW1lRmxhdHRlbmluZ0VuYWJsZWRLZXkoKSkgPyBXZWJDb3JlOjpGcmFtZUZsYXR0ZW5pbmc6
OkZ1bGx5RW5hYmxlZCA6IFdlYkNvcmU6OkZyYW1lRmxhdHRlbmluZzo6RGlzYWJsZWQpOworICAg
IHNldHRpbmdzLnNldEVkaXRhYmxlTGlua0JlaGF2aW9yKHN0YXRpY19jYXN0PFdlYkNvcmU6OkVk
aXRhYmxlTGlua0JlaGF2aW9yPihzdG9yZS5nZXRVSW50MzJWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6ZWRpdGFibGVMaW5rQmVoYXZpb3JLZXkoKSkpKTsKKyNpZiBFTkFCTEUoREFUQV9E
RVRFQ1RJT04pCisgICAgc2V0dGluZ3Muc2V0RGF0YURldGVjdG9yVHlwZXMoc3RhdGljX2Nhc3Q8
RGF0YURldGVjdG9yVHlwZT4oc3RvcmUuZ2V0VUludDMyVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5j
ZXNLZXk6OmRhdGFEZXRlY3RvclR5cGVzS2V5KCkpKSk7CisjZW5kaWYKKyAgICBzZXR0aW5ncy5z
ZXRQaXRjaENvcnJlY3Rpb25BbGdvcml0aG0oc3RhdGljX2Nhc3Q8TWVkaWFQbGF5ZXJFbnVtczo6
UGl0Y2hDb3JyZWN0aW9uQWxnb3JpdGhtPihzdG9yZS5nZXRVSW50MzJWYWx1ZUZvcktleShXZWJQ
cmVmZXJlbmNlc0tleTo6cGl0Y2hDb3JyZWN0aW9uQWxnb3JpdGhtS2V5KCkpKSk7CisKKyAgICBE
YXRhYmFzZU1hbmFnZXI6OnNpbmdsZXRvbigpLnNldElzQXZhaWxhYmxlKHN0b3JlLmdldEJvb2xW
YWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6ZGF0YWJhc2VzRW5hYmxlZEtleSgpKSk7CisK
KyAgICBtX3RhYlRvTGlua3MgPSBzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5j
ZXNLZXk6OnRhYnNUb0xpbmtzS2V5KCkpOworICAgIG1fYXN5bmNocm9ub3VzUGx1Z2luSW5pdGlh
bGl6YXRpb25FbmFibGVkID0gc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2Vz
S2V5Ojphc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRLZXkoKSk7CisgICAg
bV9hc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRGb3JBbGxQbHVnaW5zID0g
c3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojphc3luY2hyb25vdXNQ
bHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRGb3JBbGxQbHVnaW5zS2V5KCkpOworICAgIG1fYXJ0
aWZpY2lhbFBsdWdpbkluaXRpYWxpemF0aW9uRGVsYXlFbmFibGVkID0gc3RvcmUuZ2V0Qm9vbFZh
bHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjphcnRpZmljaWFsUGx1Z2luSW5pdGlhbGl6YXRp
b25EZWxheUVuYWJsZWRLZXkoKSk7CisKKyAgICBib29sIGlzQXBwTmFwRW5hYmxlZCA9IHN0b3Jl
LmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cGFnZVZpc2liaWxpdHlCYXNl
ZFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWRLZXkoKSk7CisgICAgaWYgKG1faXNBcHBOYXBFbmFi
bGVkICE9IGlzQXBwTmFwRW5hYmxlZCkgeworICAgICAgICBtX2lzQXBwTmFwRW5hYmxlZCA9IGlz
QXBwTmFwRW5hYmxlZDsKKyAgICAgICAgdXBkYXRlVGhyb3R0bGVTdGF0ZSgpOworICAgIH0KKwor
I2lmIFBMQVRGT1JNKENPQ09BKQorICAgIG1fcGRmUGx1Z2luRW5hYmxlZCA9IHN0b3JlLmdldEJv
b2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cGRmUGx1Z2luRW5hYmxlZEtleSgpKTsK
KyNlbmRpZgorI2lmIEVOQUJMRShQQVlNRU5UX1JFUVVFU1QpCisgICAgc2V0dGluZ3Muc2V0UGF5
bWVudFJlcXVlc3RFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNl
c0tleTo6YXBwbGVQYXlFbmFibGVkS2V5KCkpKTsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKyAgICBzZXRGb3JjZUFsd2F5c1VzZXJTY2FsYWJsZShtX2ZvcmNlQWx3YXlzVXNl
clNjYWxhYmxlIHx8IHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6
Zm9yY2VBbHdheXNVc2VyU2NhbGFibGVLZXkoKSkpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoU0VS
VklDRV9XT1JLRVIpCisgICAgaWYgKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJl
bmNlc0tleTo6c2VydmljZVdvcmtlckVudGl0bGVtZW50RGlzYWJsZWRGb3JUZXN0aW5nS2V5KCkp
KQorICAgICAgICBkaXNhYmxlU2VydmljZVdvcmtlckVudGl0bGVtZW50KCk7CisjaWYgRU5BQkxF
KEFQUF9CT1VORF9ET01BSU5TKQorICAgIGJvb2wgc2hvdWxkQWxsb3dTZXJ2aWNlV29ya2Vyc0Zv
ckFwcEJvdW5kVmlld3MgPSBtX2xpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnM7Cisj
ZWxzZQorICAgIGJvb2wgc2hvdWxkQWxsb3dTZXJ2aWNlV29ya2Vyc0ZvckFwcEJvdW5kVmlld3Mg
PSBmYWxzZTsKKyNlbmRpZgorCisgICAgaWYgKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQ
cmVmZXJlbmNlc0tleTo6c2VydmljZVdvcmtlcnNFbmFibGVkS2V5KCkpKSB7CisgICAgICAgIEFT
U0VSVChwYXJlbnRQcm9jZXNzSGFzU2VydmljZVdvcmtlckVudGl0bGVtZW50KCkgfHwgc2hvdWxk
QWxsb3dTZXJ2aWNlV29ya2Vyc0ZvckFwcEJvdW5kVmlld3MpOworICAgICAgICBpZiAoIXBhcmVu
dFByb2Nlc3NIYXNTZXJ2aWNlV29ya2VyRW50aXRsZW1lbnQoKSAmJiAhc2hvdWxkQWxsb3dTZXJ2
aWNlV29ya2Vyc0ZvckFwcEJvdW5kVmlld3MpCisgICAgICAgICAgICBSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFNlcnZpY2VXb3JrZXJFbmFibGVkKGZhbHNlKTsK
KyAgICB9CisjZW5kaWYKKworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKKyAgICBtX25l
ZWRzSW5BcHBCcm93c2VyUHJpdmFjeVF1aXJrcyA9IHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6bmVlZHNJbkFwcEJyb3dzZXJQcml2YWN5UXVpcmtzS2V5KCkpOwor
I2VuZGlmCisKKyAgICBzZXR0aW5ncy5zZXRQcml2YXRlQ2xpY2tNZWFzdXJlbWVudEVuYWJsZWQo
c3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojpwcml2YXRlQ2xpY2tN
ZWFzdXJlbWVudEVuYWJsZWRLZXkoKSkpOworCisgICAgaWYgKG1fZHJhd2luZ0FyZWEpCisgICAg
ICAgIG1fZHJhd2luZ0FyZWEtPnVwZGF0ZVByZWZlcmVuY2VzKHN0b3JlKTsKKworI2lmIFVTRShM
SUJXRUJSVEMpCisgICAgbV9wYWdlLT5saWJXZWJSVENQcm92aWRlcigpLnNldEgyNjVTdXBwb3J0
KFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkud2ViUlRDSDI2NUNvZGVj
RW5hYmxlZCgpKTsKKyAgICBtX3BhZ2UtPmxpYldlYlJUQ1Byb3ZpZGVyKCkuc2V0VlA5U3VwcG9y
dChSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLndlYlJUQ1ZQOVByb2Zp
bGUwQ29kZWNFbmFibGVkKCksIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVz
KCkud2ViUlRDVlA5UHJvZmlsZTJDb2RlY0VuYWJsZWQoKSk7CisgICAgTGliV2ViUlRDUHJvdmlk
ZXI6OnNldEgyNjRIYXJkd2FyZUVuY29kZXJBbGxvd2VkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktl
eShXZWJQcmVmZXJlbmNlc0tleTo6d2ViUlRDSDI2NEhhcmR3YXJlRW5jb2RlckVuYWJsZWRLZXko
KSkpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisgICAgLy8gRklYTUU6IHVz
ZUdQVVByb2Nlc3NGb3JNZWRpYUVuYWJsZWQgc2hvdWxkIGJlIGEgUnVudGltZUVuYWJsZWRGZWF0
dXJlIHNpbmNlIGl0J3MgZ2xvYmFsLgorICAgIHN0YXRpY19jYXN0PFdlYk1lZGlhU3RyYXRlZ3km
PihwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bWVkaWFTdHJhdGVneSgpKS5zZXRVc2VHUFVQcm9jZXNz
KG1fc2hvdWxkUGxheU1lZGlhSW5HUFVQcm9jZXNzKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0
b24oKS5zdXBwbGVtZW50PFJlbW90ZU1lZGlhUGxheWVyTWFuYWdlcj4oKS0+c2V0VXNlR1BVUHJv
Y2VzcyhtX3Nob3VsZFBsYXlNZWRpYUluR1BVUHJvY2Vzcyk7CisjaWYgSEFWRShBVkFTU0VUUkVB
REVSKQorICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnN1cHBsZW1lbnQ8UmVtb3RlSW1hZ2VE
ZWNvZGVyQVZGTWFuYWdlcj4oKS0+c2V0VXNlR1BVUHJvY2VzcyhtX3Nob3VsZFBsYXlNZWRpYUlu
R1BVUHJvY2Vzcyk7CisjZW5kaWYKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXRVc2VH
UFVQcm9jZXNzRm9yQ2FudmFzUmVuZGVyaW5nKG1fc2hvdWxkUmVuZGVyQ2FudmFzSW5HUFVQcm9j
ZXNzKTsKKyAgICBib29sIHVzaW5nR1BVUHJvY2Vzc0ZvckRPTVJlbmRlcmluZyA9IG1fc2hvdWxk
UmVuZGVyRE9NSW5HUFVQcm9jZXNzICYmIERyYXdpbmdBcmVhOjpzdXBwb3J0c0dQVVByb2Nlc3NS
ZW5kZXJpbmcobV9kcmF3aW5nQXJlYVR5cGUpOworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LnNldFVzZUdQVVByb2Nlc3NGb3JET01SZW5kZXJpbmcodXNpbmdHUFVQcm9jZXNzRm9yRE9NUmVu
ZGVyaW5nKTsKKyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXRVc2VHUFVQcm9jZXNzRm9y
TWVkaWEobV9zaG91bGRQbGF5TWVkaWFJbkdQVVByb2Nlc3MpOworI2lmIEVOQUJMRShXRUJHTCkK
KyAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5zZXRVc2VHUFVQcm9jZXNzRm9yV2ViR0wobV9z
aG91bGRSZW5kZXJXZWJHTEluR1BVUHJvY2Vzcyk7CisjZW5kaWYKKyNlbmRpZiAvLyBFTkFCTEUo
R1BVX1BST0NFU1MpCisKKyNpZiBFTkFCTEUoSVBDX1RFU1RJTkdfQVBJKQorICAgIG1faXBjVGVz
dGluZ0FQSUVuYWJsZWQgPSBzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OmlwY1Rlc3RpbmdBUElFbmFibGVkS2V5KCkpOworCisgICAgV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2V0SWdub3JlSW52YWxpZE1lc3NhZ2VG
b3JUZXN0aW5nKCk7CisgICAgaWYgKGF1dG8qIGdwdVByb2Nlc3NDb25uZWN0aW9uID0gV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuZXhpc3RpbmdHUFVQcm9jZXNzQ29ubmVjdGlvbigpKQorICAgICAg
ICBncHVQcm9jZXNzQ29ubmVjdGlvbi0+Y29ubmVjdGlvbigpLnNldElnbm9yZUludmFsaWRNZXNz
YWdlRm9yVGVzdGluZygpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCX0FVVEhOKSAmJiBQTEFU
Rk9STShJT1MpCisgICAgaWYgKGlzUGFyZW50UHJvY2Vzc0FXZWJCcm93c2VyKCkpCisgICAgICAg
IHNldHRpbmdzLnNldFdlYkF1dGhlbnRpY2F0aW9uRW5hYmxlZCh0cnVlKTsKKyNlbmRpZgorCisj
aWYgRU5BQkxFKFdFQk1fRk9STUFUX1JFQURFUikKKyAgICBQbGF0Zm9ybU1lZGlhU2Vzc2lvbk1h
bmFnZXI6OnNldFdlYk1Gb3JtYXRSZWFkZXJFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkud2ViTUZvcm1hdFJlYWRlckVuYWJsZWQoKSk7CisjZW5kaWYKKwor
I2lmIEVOQUJMRShWT1JCSVMpICYmIFBMQVRGT1JNKE1BQykKKyAgICBQbGF0Zm9ybU1lZGlhU2Vz
c2lvbk1hbmFnZXI6OnNldFZvcmJpc0RlY29kZXJFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXM6OnNoYXJlZEZlYXR1cmVzKCkudm9yYmlzRGVjb2RlckVuYWJsZWQoKSk7CisjZW5kaWYKKwor
I2lmIEVOQUJMRShPUFVTKSAmJiBQTEFURk9STShNQUMpCisgICAgUGxhdGZvcm1NZWRpYVNlc3Np
b25NYW5hZ2VyOjpzZXRPcHVzRGVjb2RlckVuYWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6
c2hhcmVkRmVhdHVyZXMoKS5vcHVzRGVjb2RlckVuYWJsZWQoKSk7CisjZW5kaWYKK30KKworI2lm
IEVOQUJMRShEQVRBX0RFVEVDVElPTikKKwordm9pZCBXZWJQYWdlOjpzZXREYXRhRGV0ZWN0aW9u
UmVzdWx0cyhOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKQoreworICAgIERhdGFEZXRlY3Rpb25S
ZXN1bHQgZGF0YURldGVjdGlvblJlc3VsdDsKKyAgICBkYXRhRGV0ZWN0aW9uUmVzdWx0LnJlc3Vs
dHMgPSBkZXRlY3Rpb25SZXN1bHRzOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0RGF0YURldGVjdGlvblJlc3VsdChkYXRhRGV0ZWN0aW9uUmVzdWx0KSk7Cit9CisKK3ZvaWQg
V2ViUGFnZTo6cmVtb3ZlRGF0YURldGVjdGVkTGlua3MoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChj
b25zdCBEYXRhRGV0ZWN0aW9uUmVzdWx0Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
Zm9yIChhdXRvIGZyYW1lID0gbWFrZVJlZlB0cigmbV9wYWdlLT5tYWluRnJhbWUoKSk7IGZyYW1l
OyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KCkpIHsKKyAgICAgICAgYXV0byBk
b2N1bWVudCA9IG1ha2VSZWZQdHIoZnJhbWUtPmRvY3VtZW50KCkpOworICAgICAgICBpZiAoIWRv
Y3VtZW50KQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgRGF0YURldGVjdGlvbjo6
cmVtb3ZlRGF0YURldGVjdGVkTGlua3NJbkRvY3VtZW50KCpkb2N1bWVudCk7CisKKyAgICAgICAg
aWYgKGF1dG8qIHJlc3VsdHMgPSBmcmFtZS0+ZGF0YURldGVjdGlvblJlc3VsdHNJZkV4aXN0cygp
KSB7CisgICAgICAgICAgICAvLyBGSVhNRTogSXQgc2VlbXMgb2RkIHRoYXQgd2UncmUgY2xlYXJp
bmcgb3V0IGFsbCBkYXRhIGRldGVjdGlvbiByZXN1bHRzIGhlcmUsCisgICAgICAgICAgICAvLyBp
bnN0ZWFkIG9mIG9ubHkgZGF0YSBkZXRlY3RvcnMgdGhhdCBjb3JyZXNwb25kIHRvIGxpbmtzLgor
ICAgICAgICAgICAgcmVzdWx0cy0+c2V0RG9jdW1lbnRMZXZlbFJlc3VsdHMoeyB9KTsKKyAgICAg
ICAgfQorICAgIH0KKyAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0pOworfQorCit2b2lkIFdlYlBh
Z2U6OmRldGVjdERhdGFJbkFsbEZyYW1lcyhPcHRpb25TZXQ8V2ViQ29yZTo6RGF0YURldGVjdG9y
VHlwZT4gZGF0YURldGVjdG9yVHlwZXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRGF0
YURldGVjdGlvblJlc3VsdCYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIERhdGFEZXRl
Y3Rpb25SZXN1bHQgbWFpbkZyYW1lUmVzdWx0OworICAgIGZvciAoYXV0byBmcmFtZSA9IG1ha2VS
ZWZQdHIoJm1fcGFnZS0+bWFpbkZyYW1lKCkpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgp
LnRyYXZlcnNlTmV4dCgpKSB7CisgICAgICAgIGF1dG8gZG9jdW1lbnQgPSBtYWtlUmVmUHRyKGZy
YW1lLT5kb2N1bWVudCgpKTsKKyAgICAgICAgaWYgKCFkb2N1bWVudCkKKyAgICAgICAgICAgIGNv
bnRpbnVlOworICAgICAgICBhdXRvIHJlc3VsdHMgPSByZXRhaW5QdHIoRGF0YURldGVjdGlvbjo6
ZGV0ZWN0Q29udGVudEluUmFuZ2UobWFrZVJhbmdlU2VsZWN0aW5nTm9kZUNvbnRlbnRzKCpkb2N1
bWVudCksIGRhdGFEZXRlY3RvclR5cGVzLCBtX2RhdGFEZXRlY3Rpb25Db250ZXh0LmdldCgpKSk7
CisgICAgICAgIGZyYW1lLT5kYXRhRGV0ZWN0aW9uUmVzdWx0cygpLnNldERvY3VtZW50TGV2ZWxS
ZXN1bHRzKHJlc3VsdHMuZ2V0KCkpOworICAgICAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkp
CisgICAgICAgICAgICBtYWluRnJhbWVSZXN1bHQucmVzdWx0cyA9IFdURk1vdmUocmVzdWx0cyk7
CisgICAgfQorICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUobWFpbkZyYW1lUmVzdWx0KSk7
Cit9CisKK3N0ZDo6b3B0aW9uYWw8c3RkOjpwYWlyPFJlZjxXZWJDb3JlOjpIVE1MRWxlbWVudD4s
IFdlYkNvcmU6OkludFJlY3Q+PiBXZWJQYWdlOjpmaW5kRGF0YURldGVjdGlvblJlc3VsdEVsZW1l
bnRJbkltYWdlT3ZlcmxheShjb25zdCBGbG9hdFBvaW50JiBsb2NhdGlvbiwgY29uc3QgSFRNTEVs
ZW1lbnQmIGltYWdlT3ZlcmxheUhvc3QpCit7CisgICAgVmVjdG9yPFJlZjxIVE1MRWxlbWVudD4+
IGRhdGFEZXRlY3RvckVsZW1lbnRzOworICAgIGZvciAoYXV0byYgY2hpbGQgOiBkZXNjZW5kYW50
c09mVHlwZTxIVE1MRWxlbWVudD4oKmltYWdlT3ZlcmxheUhvc3Quc2hhZG93Um9vdCgpKSkgewor
ICAgICAgICBpZiAoY2hpbGQuaXNJbWFnZU92ZXJsYXlEYXRhRGV0ZWN0b3JSZXN1bHQoKSkKKyAg
ICAgICAgICAgIGRhdGFEZXRlY3RvckVsZW1lbnRzLmFwcGVuZChjaGlsZCk7CisgICAgfQorCisg
ICAgZm9yIChhdXRvJiBlbGVtZW50IDogZGF0YURldGVjdG9yRWxlbWVudHMpIHsKKyAgICAgICAg
YXV0byBlbGVtZW50Qm91bmRzID0gZWxlbWVudC0+Ym91bmRzSW5Sb290Vmlld1NwYWNlKCk7Cisg
ICAgICAgIGlmIChlbGVtZW50Qm91bmRzLmNvbnRhaW5zKHJvdW5kZWRJbnRQb2ludChsb2NhdGlv
bikpKQorICAgICAgICAgICAgcmV0dXJuIHt7IFdURk1vdmUoZWxlbWVudCksIGVsZW1lbnRCb3Vu
ZHMgfX07CisgICAgfQorCisgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKK30KKworI2VuZGlmIC8v
IEVOQUJMRShEQVRBX0RFVEVDVElPTikKKworI2lmIFBMQVRGT1JNKENPQ09BKQordm9pZCBXZWJQ
YWdlOjp3aWxsQ29tbWl0TGF5ZXJUcmVlKFJlbW90ZUxheWVyVHJlZVRyYW5zYWN0aW9uJiBsYXll
clRyYW5zYWN0aW9uKQoreworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gY29yZVBhZ2UoKS0+
bWFpbkZyYW1lKCkudmlldygpOworICAgIGlmICghZnJhbWVWaWV3KQorICAgICAgICByZXR1cm47
CisKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldENvbnRlbnRzU2l6ZShmcmFtZVZpZXctPmNvbnRl
bnRzU2l6ZSgpKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldFNjcm9sbE9yaWdpbihmcmFtZVZp
ZXctPnNjcm9sbE9yaWdpbigpKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldFBhZ2VTY2FsZUZh
Y3Rvcihjb3JlUGFnZSgpLT5wYWdlU2NhbGVGYWN0b3IoKSk7CisgICAgbGF5ZXJUcmFuc2FjdGlv
bi5zZXRSZW5kZXJUcmVlU2l6ZShjb3JlUGFnZSgpLT5yZW5kZXJUcmVlU2l6ZSgpKTsKKyAgICBs
YXllclRyYW5zYWN0aW9uLnNldFRoZW1lQ29sb3IoY29yZVBhZ2UoKS0+dGhlbWVDb2xvcigpKTsK
KyAgICBsYXllclRyYW5zYWN0aW9uLnNldFBhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvcihjb3Jl
UGFnZSgpLT5wYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3IoKSk7CisgICAgbGF5ZXJUcmFuc2Fj
dGlvbi5zZXRTYW1wbGVkUGFnZVRvcENvbG9yKGNvcmVQYWdlKCktPnNhbXBsZWRQYWdlVG9wQ29s
b3IoKSk7CisKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldEJhc2VMYXlvdXRWaWV3cG9ydFNpemUo
ZnJhbWVWaWV3LT5iYXNlTGF5b3V0Vmlld3BvcnRTaXplKCkpOworICAgIGxheWVyVHJhbnNhY3Rp
b24uc2V0TWluU3RhYmxlTGF5b3V0Vmlld3BvcnRPcmlnaW4oZnJhbWVWaWV3LT5taW5TdGFibGVM
YXlvdXRWaWV3cG9ydE9yaWdpbigpKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldE1heFN0YWJs
ZUxheW91dFZpZXdwb3J0T3JpZ2luKGZyYW1lVmlldy0+bWF4U3RhYmxlTGF5b3V0Vmlld3BvcnRP
cmlnaW4oKSk7CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIGxheWVyVHJhbnNhY3Rp
b24uc2V0U2NhbGVXYXNTZXRCeVVJUHJvY2VzcyhzY2FsZVdhc1NldEJ5VUlQcm9jZXNzKCkpOwor
ICAgIGxheWVyVHJhbnNhY3Rpb24uc2V0TWluaW11bVNjYWxlRmFjdG9yKG1fdmlld3BvcnRDb25m
aWd1cmF0aW9uLm1pbmltdW1TY2FsZSgpKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldE1heGlt
dW1TY2FsZUZhY3RvcihtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5tYXhpbXVtU2NhbGUoKSk7Cisg
ICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRJbml0aWFsU2NhbGVGYWN0b3IobV92aWV3cG9ydENvbmZp
Z3VyYXRpb24uaW5pdGlhbFNjYWxlKCkpOworICAgIGxheWVyVHJhbnNhY3Rpb24uc2V0Vmlld3Bv
cnRNZXRhVGFnV2lkdGgobV92aWV3cG9ydENvbmZpZ3VyYXRpb24udmlld3BvcnRBcmd1bWVudHMo
KS53aWR0aCk7CisgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRWaWV3cG9ydE1ldGFUYWdXaWR0aFdh
c0V4cGxpY2l0KG1fdmlld3BvcnRDb25maWd1cmF0aW9uLnZpZXdwb3J0QXJndW1lbnRzKCkud2lk
dGhXYXNFeHBsaWNpdCk7CisgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRWaWV3cG9ydE1ldGFUYWdD
YW1lRnJvbUltYWdlRG9jdW1lbnQobV92aWV3cG9ydENvbmZpZ3VyYXRpb24udmlld3BvcnRBcmd1
bWVudHMoKS50eXBlID09IFZpZXdwb3J0QXJndW1lbnRzOjpJbWFnZURvY3VtZW50KTsKKyAgICBs
YXllclRyYW5zYWN0aW9uLnNldEF2b2lkc1Vuc2FmZUFyZWEobV92aWV3cG9ydENvbmZpZ3VyYXRp
b24uYXZvaWRzVW5zYWZlQXJlYSgpKTsKKyAgICBsYXllclRyYW5zYWN0aW9uLnNldElzSW5TdGFi
bGVTdGF0ZShtX2lzSW5TdGFibGVTdGF0ZSk7CisgICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRBbGxv
d3NVc2VyU2NhbGluZyhhbGxvd3NVc2VyU2NhbGluZygpKTsKKyAgICBpZiAobV9wZW5kaW5nRHlu
YW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZUlEKSB7CisgICAgICAgIGxheWVyVHJhbnNhY3Rpb24uc2V0
RHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZUlEKCptX3BlbmRpbmdEeW5hbWljVmlld3BvcnRTaXpl
VXBkYXRlSUQpOworICAgICAgICBtX3BlbmRpbmdEeW5hbWljVmlld3BvcnRTaXplVXBkYXRlSUQg
PSBzdGQ6Om51bGxvcHQ7CisgICAgfQorICAgIGlmIChtX2xhc3RUcmFuc2FjdGlvblBhZ2VTY2Fs
ZUZhY3RvciAhPSBsYXllclRyYW5zYWN0aW9uLnBhZ2VTY2FsZUZhY3RvcigpKSB7CisgICAgICAg
IG1fbGFzdFRyYW5zYWN0aW9uUGFnZVNjYWxlRmFjdG9yID0gbGF5ZXJUcmFuc2FjdGlvbi5wYWdl
U2NhbGVGYWN0b3IoKTsKKyAgICAgICAgbV9sYXN0VHJhbnNhY3Rpb25JRFdpdGhTY2FsZUNoYW5n
ZSA9IGxheWVyVHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JRCgpOworICAgIH0KKyNlbmRpZgorCisg
ICAgbGF5ZXJUcmFuc2FjdGlvbi5zZXRTY3JvbGxQb3NpdGlvbihmcmFtZVZpZXctPnNjcm9sbFBv
c2l0aW9uKCkpOworCisgICAgbV9wZW5kaW5nVGhlbWVDb2xvckNoYW5nZSA9IGZhbHNlOworICAg
IG1fcGVuZGluZ1BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckNoYW5nZSA9IGZhbHNlOworICAg
IG1fcGVuZGluZ1NhbXBsZWRQYWdlVG9wQ29sb3JDaGFuZ2UgPSBmYWxzZTsKKworICAgIGlmICho
YXNQZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGUoKSkgeworICAgICAgICBsYXllclRyYW5zYWN0aW9u
LnNldEVkaXRvclN0YXRlKGVkaXRvclN0YXRlKCkpOworICAgICAgICBtX3BlbmRpbmdFZGl0b3JT
dGF0ZVVwZGF0ZVN0YXR1cyA9IFBlbmRpbmdFZGl0b3JTdGF0ZVVwZGF0ZVN0YXR1czo6Tm90U2No
ZWR1bGVkOworICAgIH0KK30KKwordm9pZCBXZWJQYWdlOjpkaWRGbHVzaExheWVyVHJlZUF0VGlt
ZShNb25vdG9uaWNUaW1lIHRpbWVzdGFtcCkKK3sKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQor
ICAgIGlmIChtX29sZGVzdE5vblN0YWJsZVVwZGF0ZVZpc2libGVDb250ZW50UmVjdHNUaW1lc3Rh
bXAgIT0gTW9ub3RvbmljVGltZSgpKSB7CisgICAgICAgIFNlY29uZHMgZWxhcHNlZCA9IHRpbWVz
dGFtcCAtIG1fb2xkZXN0Tm9uU3RhYmxlVXBkYXRlVmlzaWJsZUNvbnRlbnRSZWN0c1RpbWVzdGFt
cDsKKyAgICAgICAgbV9vbGRlc3ROb25TdGFibGVVcGRhdGVWaXNpYmxlQ29udGVudFJlY3RzVGlt
ZXN0YW1wID0gTW9ub3RvbmljVGltZSgpOworCisgICAgICAgIG1fZXN0aW1hdGVkTGF0ZW5jeSA9
IG1fZXN0aW1hdGVkTGF0ZW5jeSAqIDAuODAgKyBlbGFwc2VkICogMC4yMDsKKyAgICB9CisjZWxz
ZQorICAgIFVOVVNFRF9QQVJBTSh0aW1lc3RhbXApOworI2VuZGlmCit9CisjZW5kaWYKKwordm9p
ZCBXZWJQYWdlOjpsYXlvdXRJZk5lZWRlZCgpCit7CisgICAgbV9wYWdlLT5sYXlvdXRJZk5lZWRl
ZCgpOworfQorICAgIAordm9pZCBXZWJQYWdlOjp1cGRhdGVSZW5kZXJpbmcoKQoreworICAgIG1f
cGFnZS0+dXBkYXRlUmVuZGVyaW5nKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkVXBkYXRlUmVu
ZGVyaW5nKCkKK3sKKyAgICBpZiAobV9kaWRVcGRhdGVSZW5kZXJpbmdBZnRlckNvbW1pdHRpbmdM
b2FkKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2RpZFVwZGF0ZVJlbmRlcmluZ0FmdGVyQ29t
bWl0dGluZ0xvYWQgPSB0cnVlOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlk
VXBkYXRlUmVuZGVyaW5nQWZ0ZXJDb21taXR0aW5nTG9hZCgpKTsKK30KKworYm9vbCBXZWJQYWdl
OjpzaG91bGRUcmlnZ2VyUmVuZGVyaW5nVXBkYXRlKHVuc2lnbmVkIHJlc2NoZWR1bGVkUmVuZGVy
aW5nVXBkYXRlQ291bnQpIGNvbnN0Cit7CisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorICAgIHN0
YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbWF4UmVzY2hlZHVsZWRSZW5kZXJpbmdVcGRhdGVDb3Vu
dCA9IEZ1bGxTcGVlZEZyYW1lc1BlclNlY29uZDsKKyAgICBpZiAocmVzY2hlZHVsZWRSZW5kZXJp
bmdVcGRhdGVDb3VudCA+PSBtYXhSZXNjaGVkdWxlZFJlbmRlcmluZ1VwZGF0ZUNvdW50KQorICAg
ICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbWF4RGVs
YXllZFJlbmRlcmluZ1VwZGF0ZUNvdW50ID0gMjsKKyAgICBpZiAobV9yZW1vdGVSZW5kZXJpbmdC
YWNrZW5kUHJveHkgJiYgbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHktPmRlbGF5ZWRSZW5k
ZXJpbmdVcGRhdGVDb3VudCgpID4gbWF4RGVsYXllZFJlbmRlcmluZ1VwZGF0ZUNvdW50KQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwordm9pZCBX
ZWJQYWdlOjpmaW5hbGl6ZVJlbmRlcmluZ1VwZGF0ZShPcHRpb25TZXQ8RmluYWxpemVSZW5kZXJp
bmdVcGRhdGVGbGFncz4gZmxhZ3MpCit7CisgICAgbV9wYWdlLT5maW5hbGl6ZVJlbmRlcmluZ1Vw
ZGF0ZShmbGFncyk7CisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorICAgIGlmIChtX3JlbW90ZVJl
bmRlcmluZ0JhY2tlbmRQcm94eSkKKyAgICAgICAgbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJv
eHktPmZpbmFsaXplUmVuZGVyaW5nVXBkYXRlKCk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdl
OjpyZWxlYXNlTWVtb3J5KENyaXRpY2FsKQoreworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAg
ICBpZiAobV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkpCisgICAgICAgIG1fcmVtb3RlUmVu
ZGVyaW5nQmFja2VuZFByb3h5LT5yZW1vdGVSZXNvdXJjZUNhY2hlUHJveHkoKS5yZWxlYXNlTWVt
b3J5KCk7CisjZW5kaWYKK30KKwordW5zaWduZWQgV2ViUGFnZTo6cmVtb3RlSW1hZ2VzQ291bnRG
b3JUZXN0aW5nKCkgY29uc3QKK3sKKyNpZiBFTkFCTEUoR1BVX1BST0NFU1MpCisgICAgaWYgKCFt
X3JlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0
dXJuIG1fcmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5LT5yZW1vdGVSZXNvdXJjZUNhY2hlUHJv
eHkoKS5pbWFnZXNDb3VudCgpOworI2Vsc2UKKyAgICByZXR1cm4gMDsKKyNlbmRpZgorfQorCitX
ZWJJbnNwZWN0b3IqIFdlYlBhZ2U6Omluc3BlY3RvcihMYXp5Q3JlYXRpb25Qb2xpY3kgYmVoYXZp
b3IpCit7CisgICAgaWYgKG1faXNDbG9zZWQpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAg
IGlmICghbV9pbnNwZWN0b3IgJiYgYmVoYXZpb3IgPT0gTGF6eUNyZWF0aW9uUG9saWN5OjpDcmVh
dGVJZk5lZWRlZCkKKyAgICAgICAgbV9pbnNwZWN0b3IgPSBXZWJJbnNwZWN0b3I6OmNyZWF0ZSh0
aGlzKTsKKyAgICByZXR1cm4gbV9pbnNwZWN0b3IuZ2V0KCk7Cit9CisKK1dlYkluc3BlY3RvclVJ
KiBXZWJQYWdlOjppbnNwZWN0b3JVSSgpCit7CisgICAgaWYgKG1faXNDbG9zZWQpCisgICAgICAg
IHJldHVybiBudWxscHRyOworICAgIGlmICghbV9pbnNwZWN0b3JVSSkKKyAgICAgICAgbV9pbnNw
ZWN0b3JVSSA9IFdlYkluc3BlY3RvclVJOjpjcmVhdGUoKnRoaXMpOworICAgIHJldHVybiBtX2lu
c3BlY3RvclVJLmdldCgpOworfQorCitSZW1vdGVXZWJJbnNwZWN0b3JVSSogV2ViUGFnZTo6cmVt
b3RlSW5zcGVjdG9yVUkoKQoreworICAgIGlmIChtX2lzQ2xvc2VkKQorICAgICAgICByZXR1cm4g
bnVsbHB0cjsKKyAgICBpZiAoIW1fcmVtb3RlSW5zcGVjdG9yVUkpCisgICAgICAgIG1fcmVtb3Rl
SW5zcGVjdG9yVUkgPSBSZW1vdGVXZWJJbnNwZWN0b3JVSTo6Y3JlYXRlKCp0aGlzKTsKKyAgICBy
ZXR1cm4gbV9yZW1vdGVJbnNwZWN0b3JVSS5nZXQoKTsKK30KKwordm9pZCBXZWJQYWdlOjppbnNw
ZWN0b3JGcm9udGVuZENvdW50Q2hhbmdlZCh1bnNpZ25lZCBjb3VudCkKK3sKKyAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUluc3BlY3RvckZyb250ZW5kQ291bnQoY291
bnQpKTsKK30KKworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKK1BsYXliYWNr
U2Vzc2lvbk1hbmFnZXImIFdlYlBhZ2U6OnBsYXliYWNrU2Vzc2lvbk1hbmFnZXIoKQoreworICAg
IGlmICghbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKQorICAgICAgICBtX3BsYXliYWNrU2Vzc2lv
bk1hbmFnZXIgPSBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOjpjcmVhdGUoKnRoaXMpOworICAgIHJl
dHVybiAqbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyOworfQorCitWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyJiBXZWJQYWdlOjp2aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyKCkKK3sKKyAgICBpZiAoIW1fdmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcikKKyAgICAgICAgbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyID0g
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6Y3JlYXRlKCp0aGlzLCBwbGF5YmFja1Nlc3Npb25NYW5h
Z2VyKCkpOworICAgIHJldHVybiAqbV92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOworfQorCit2b2lk
IFdlYlBhZ2U6OnZpZGVvQ29udHJvbHNNYW5hZ2VyRGlkQ2hhbmdlKCkKK3sKKyNpZiBFTkFCTEUo
RlVMTFNDUkVFTl9BUEkpCisgICAgaWYgKGF1dG8qIG1hbmFnZXIgPSBmdWxsU2NyZWVuTWFuYWdl
cigpKQorICAgICAgICBtYW5hZ2VyLT52aWRlb0NvbnRyb2xzTWFuYWdlckRpZENoYW5nZSgpOwor
I2VuZGlmCit9CisKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKK3ZvaWQgV2Vi
UGFnZTo6c2V0QWxsb3dzTWVkaWFEb2N1bWVudElubGluZVBsYXliYWNrKGJvb2wgYWxsb3dzKQor
eworICAgIG1fcGFnZS0+c2V0QWxsb3dzTWVkaWFEb2N1bWVudElubGluZVBsYXliYWNrKGFsbG93
cyk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKK1dlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyKiBXZWJQYWdlOjpmdWxsU2NyZWVuTWFuYWdlcigpCit7CisgICAgaWYgKCFtX2Z1
bGxTY3JlZW5NYW5hZ2VyKQorICAgICAgICBtX2Z1bGxTY3JlZW5NYW5hZ2VyID0gV2ViRnVsbFNj
cmVlbk1hbmFnZXI6OmNyZWF0ZSh0aGlzKTsKKyAgICByZXR1cm4gbV9mdWxsU2NyZWVuTWFuYWdl
ci5nZXQoKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6OmFkZENvbnNvbGVNZXNzYWdlKEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBNZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIE1lc3Nh
Z2VMZXZlbCBtZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdWludDY0X3QgcmVx
dWVzdElEKQoreworICAgIGlmIChhdXRvKiBmcmFtZSA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LndlYkZyYW1lKGZyYW1lSUQpKQorICAgICAgICBmcmFtZS0+YWRkQ29uc29sZU1lc3NhZ2UobWVz
c2FnZVNvdXJjZSwgbWVzc2FnZUxldmVsLCBtZXNzYWdlLCByZXF1ZXN0SUQpOworfQorCit2b2lk
IFdlYlBhZ2U6OnNlbmRDU1BWaW9sYXRpb25SZXBvcnQoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQs
IGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlJiYgcmVwb3J0RGF0
YSkKK3sKKyAgICBhdXRvIHJlcG9ydCA9IHJlcG9ydERhdGEudGFrZURhdGEoKTsKKyAgICBpZiAo
IXJlcG9ydCkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChhdXRvKiBmcmFtZSA9IFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLndlYkZyYW1lKGZyYW1lSUQpKQorICAgICAgICBQaW5nTG9hZGVyOjpz
ZW5kVmlvbGF0aW9uUmVwb3J0KCpmcmFtZS0+Y29yZUZyYW1lKCksIHJlcG9ydFVSTCwgcmVwb3J0
LnJlbGVhc2VOb25OdWxsKCksIFZpb2xhdGlvblJlcG9ydFR5cGU6OkNvbnRlbnRTZWN1cml0eVBv
bGljeSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2VuZENPRVBQb2xpY3lJbmhlcml0ZW5jZVZpb2xh
dGlvbihGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBl
bWJlZGRlck9yaWdpbiwgY29uc3QgU3RyaW5nJiBlbmRwb2ludCwgQ09FUERpc3Bvc2l0aW9uIGRp
c3Bvc2l0aW9uLCBjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFVSTCYgYmxvY2tlZFVSTCkKK3sK
KyAgICBpZiAoYXV0byogZnJhbWUgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShm
cmFtZUlEKTsgZnJhbWUtPmNvcmVGcmFtZSgpKQorICAgICAgICBXZWJDb3JlOjpzZW5kQ09FUFBv
bGljeUluaGVyaXRlbmNlVmlvbGF0aW9uKCpmcmFtZS0+Y29yZUZyYW1lKCksIGVtYmVkZGVyT3Jp
Z2luLCBlbmRwb2ludCwgZGlzcG9zaXRpb24sIHR5cGUsIGJsb2NrZWRVUkwpOworfQorCit2b2lk
IFdlYlBhZ2U6OnNlbmRDT0VQQ09SUFZpb2xhdGlvbihGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwg
Y29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBlbWJlZGRlck9yaWdpbiwgY29uc3QgU3RyaW5nJiBl
bmRwb2ludCwgQ09FUERpc3Bvc2l0aW9uIGRpc3Bvc2l0aW9uLCBGZXRjaE9wdGlvbnM6OkRlc3Rp
bmF0aW9uIGRlc3RpbmF0aW9uLCBjb25zdCBVUkwmIGJsb2NrZWRVUkwpCit7CisgICAgaWYgKGF1
dG8qIGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCk7IGZy
YW1lLT5jb3JlRnJhbWUoKSkKKyAgICAgICAgV2ViQ29yZTo6c2VuZENPRVBDT1JQVmlvbGF0aW9u
KCpmcmFtZS0+Y29yZUZyYW1lKCksIGVtYmVkZGVyT3JpZ2luLCBlbmRwb2ludCwgZGlzcG9zaXRp
b24sIGRlc3RpbmF0aW9uLCBibG9ja2VkVVJMKTsKK30KKwordm9pZCBXZWJQYWdlOjplbnF1ZXVl
U2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgU2Vj
dXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudDo6SW5pdCYmIGV2ZW50SW5pdCkKK3sKKyAgICBhdXRv
KiBmcmFtZSA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkZyYW1lKGZyYW1lSUQpOworICAg
IGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKyAgICBhdXRvKiBjb3JlRnJhbWUgPSBmcmFt
ZS0+Y29yZUZyYW1lKCk7CisgICAgaWYgKCFjb3JlRnJhbWUpCisgICAgICAgIHJldHVybjsKKyAg
ICBpZiAoYXV0byogZG9jdW1lbnQgPSBjb3JlRnJhbWUtPmRvY3VtZW50KCkpCisgICAgICAgIGRv
Y3VtZW50LT5lbnF1ZXVlU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChXVEZNb3ZlKGV2ZW50
SW5pdCkpOworfQorCitOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIqIFdlYlBh
Z2U6Om5vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpCit7CisgICAgaWYgKG1f
bm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyKQorICAgICAgICByZXR1cm4gbV9u
b3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuZ2V0KCk7CisKKyAgICBtX25vdGlm
aWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlciA9IE5vdGlmaWNhdGlvblBlcm1pc3Npb25S
ZXF1ZXN0TWFuYWdlcjo6Y3JlYXRlKHRoaXMpOworICAgIHJldHVybiBtX25vdGlmaWNhdGlvblBl
cm1pc3Npb25SZXF1ZXN0TWFuYWdlci5nZXQoKTsKK30KKworI2lmIEVOQUJMRShEUkFHX1NVUFBP
UlQpCisKKyNpZiBQTEFURk9STShHVEspCit2b2lkIFdlYlBhZ2U6OnBlcmZvcm1EcmFnQ29udHJv
bGxlckFjdGlvbihEcmFnQ29udHJvbGxlckFjdGlvbiBhY3Rpb24sIGNvbnN0IEludFBvaW50JiBj
bGllbnRQb3NpdGlvbiwgY29uc3QgSW50UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBPcHRpb25TZXQ8
RHJhZ09wZXJhdGlvbj4gZHJhZ2dpbmdTb3VyY2VPcGVyYXRpb25NYXNrLCBTZWxlY3Rpb25EYXRh
JiYgc2VsZWN0aW9uRGF0YSwgT3B0aW9uU2V0PERyYWdBcHBsaWNhdGlvbkZsYWdzPiBmbGFncykK
K3sKKyAgICBpZiAoIW1fcGFnZSkgeworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkRpZFBlcmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihzdGQ6Om51bGxvcHQsIERyYWdIYW5k
bGluZ01ldGhvZDo6Tm9uZSwgZmFsc2UsIDAsIHsgfSwgeyB9KSk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBEcmFnRGF0YSBkcmFnRGF0YSgmc2VsZWN0aW9uRGF0YSwgY2xpZW50UG9z
aXRpb24sIGdsb2JhbFBvc2l0aW9uLCBkcmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2ssIGZsYWdz
LCBhbnlEcmFnRGVzdGluYXRpb25BY3Rpb24oKSwgbV9pZGVudGlmaWVyKTsKKyAgICBzd2l0Y2gg
KGFjdGlvbikgeworICAgIGNhc2UgRHJhZ0NvbnRyb2xsZXJBY3Rpb246OkVudGVyZWQ6IHsKKyAg
ICAgICAgYXV0byByZXNvbHZlZERyYWdPcGVyYXRpb24gPSBtX3BhZ2UtPmRyYWdDb250cm9sbGVy
KCkuZHJhZ0VudGVyZWQoZHJhZ0RhdGEpOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdl
UHJveHk6OkRpZFBlcmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihyZXNvbHZlZERyYWdPcGVyYXRp
b24sIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIoKS5kcmFnSGFuZGxpbmdNZXRob2QoKSwgbV9wYWdl
LT5kcmFnQ29udHJvbGxlcigpLm1vdXNlSXNPdmVyRmlsZUlucHV0KCksIG1fcGFnZS0+ZHJhZ0Nv
bnRyb2xsZXIoKS5udW1iZXJPZkl0ZW1zVG9CZUFjY2VwdGVkKCksIHsgfSwgeyB9KSk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisgICAgY2FzZSBEcmFnQ29udHJvbGxlckFjdGlvbjo6VXBkYXRl
ZDogeworICAgICAgICBhdXRvIHJlc29sdmVkRHJhZ09wZXJhdGlvbiA9IG1fcGFnZS0+ZHJhZ0Nv
bnRyb2xsZXIoKS5kcmFnVXBkYXRlZChkcmFnRGF0YSk7CisgICAgICAgIHNlbmQoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6RGlkUGVyZm9ybURyYWdDb250cm9sbGVyQWN0aW9uKHJlc29sdmVkRHJh
Z09wZXJhdGlvbiwgbV9wYWdlLT5kcmFnQ29udHJvbGxlcigpLmRyYWdIYW5kbGluZ01ldGhvZCgp
LCBtX3BhZ2UtPmRyYWdDb250cm9sbGVyKCkubW91c2VJc092ZXJGaWxlSW5wdXQoKSwgbV9wYWdl
LT5kcmFnQ29udHJvbGxlcigpLm51bWJlck9mSXRlbXNUb0JlQWNjZXB0ZWQoKSwgeyB9LCB7IH0p
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjYXNlIERyYWdDb250cm9sbGVyQWN0aW9u
OjpFeGl0ZWQ6CisgICAgICAgIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIoKS5kcmFnRXhpdGVkKGRy
YWdEYXRhKTsKKyAgICAgICAgcmV0dXJuOworCisgICAgY2FzZSBEcmFnQ29udHJvbGxlckFjdGlv
bjo6UGVyZm9ybURyYWdPcGVyYXRpb246IHsKKyAgICAgICAgbV9wYWdlLT5kcmFnQ29udHJvbGxl
cigpLnBlcmZvcm1EcmFnT3BlcmF0aW9uKGRyYWdEYXRhKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cit9CisjZWxzZQordm9pZCBXZWJQ
YWdlOjpwZXJmb3JtRHJhZ0NvbnRyb2xsZXJBY3Rpb24oRHJhZ0NvbnRyb2xsZXJBY3Rpb24gYWN0
aW9uLCBjb25zdCBXZWJDb3JlOjpEcmFnRGF0YSYgZHJhZ0RhdGEsIFNhbmRib3hFeHRlbnNpb246
OkhhbmRsZSYmIHNhbmRib3hFeHRlbnNpb25IYW5kbGUsIFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9u
OjpIYW5kbGU+JiYgc2FuZGJveEV4dGVuc2lvbnNIYW5kbGVBcnJheSkKK3sKKyAgICBpZiAoIW1f
cGFnZSkgeworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFBlcmZvcm1E
cmFnQ29udHJvbGxlckFjdGlvbihzdGQ6Om51bGxvcHQsIERyYWdIYW5kbGluZ01ldGhvZDo6Tm9u
ZSwgZmFsc2UsIDAsIHsgfSwgeyB9KSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBz
d2l0Y2ggKGFjdGlvbikgeworICAgIGNhc2UgRHJhZ0NvbnRyb2xsZXJBY3Rpb246OkVudGVyZWQ6
IHsKKyAgICAgICAgYXV0byByZXNvbHZlZERyYWdPcGVyYXRpb24gPSBtX3BhZ2UtPmRyYWdDb250
cm9sbGVyKCkuZHJhZ0VudGVyZWQoZHJhZ0RhdGEpOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkRpZFBlcmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihyZXNvbHZlZERyYWdP
cGVyYXRpb24sIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIoKS5kcmFnSGFuZGxpbmdNZXRob2QoKSwg
bV9wYWdlLT5kcmFnQ29udHJvbGxlcigpLm1vdXNlSXNPdmVyRmlsZUlucHV0KCksIG1fcGFnZS0+
ZHJhZ0NvbnRyb2xsZXIoKS5udW1iZXJPZkl0ZW1zVG9CZUFjY2VwdGVkKCksIG1fcGFnZS0+ZHJh
Z0NhcmV0Q29udHJvbGxlcigpLmNhcmV0UmVjdEluUm9vdFZpZXdDb29yZGluYXRlcygpLCBtX3Bh
Z2UtPmRyYWdDYXJldENvbnRyb2xsZXIoKS5lZGl0YWJsZUVsZW1lbnRSZWN0SW5Sb290Vmlld0Nv
b3JkaW5hdGVzKCkpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjYXNlIERyYWdDb250
cm9sbGVyQWN0aW9uOjpVcGRhdGVkOiB7CisgICAgICAgIGF1dG8gcmVzb2x2ZWREcmFnT3BlcmF0
aW9uID0gbV9wYWdlLT5kcmFnQ29udHJvbGxlcigpLmRyYWdVcGRhdGVkKGRyYWdEYXRhKTsKKyAg
ICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRQZXJmb3JtRHJhZ0NvbnRyb2xs
ZXJBY3Rpb24ocmVzb2x2ZWREcmFnT3BlcmF0aW9uLCBtX3BhZ2UtPmRyYWdDb250cm9sbGVyKCku
ZHJhZ0hhbmRsaW5nTWV0aG9kKCksIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIoKS5tb3VzZUlzT3Zl
ckZpbGVJbnB1dCgpLCBtX3BhZ2UtPmRyYWdDb250cm9sbGVyKCkubnVtYmVyT2ZJdGVtc1RvQmVB
Y2NlcHRlZCgpLCBtX3BhZ2UtPmRyYWdDYXJldENvbnRyb2xsZXIoKS5jYXJldFJlY3RJblJvb3RW
aWV3Q29vcmRpbmF0ZXMoKSwgbV9wYWdlLT5kcmFnQ2FyZXRDb250cm9sbGVyKCkuZWRpdGFibGVF
bGVtZW50UmVjdEluUm9vdFZpZXdDb29yZGluYXRlcygpKSk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisgICAgY2FzZSBEcmFnQ29udHJvbGxlckFjdGlvbjo6RXhpdGVkOgorICAgICAgICBtX3Bh
Z2UtPmRyYWdDb250cm9sbGVyKCkuZHJhZ0V4aXRlZChkcmFnRGF0YSk7CisgICAgICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkUGVyZm9ybURyYWdDb250cm9sbGVyQWN0aW9uKHN0
ZDo6bnVsbG9wdCwgRHJhZ0hhbmRsaW5nTWV0aG9kOjpOb25lLCBmYWxzZSwgMCwgeyB9LCB7IH0p
KTsKKyAgICAgICAgcmV0dXJuOworICAgICAgICAKKyAgICBjYXNlIERyYWdDb250cm9sbGVyQWN0
aW9uOjpQZXJmb3JtRHJhZ09wZXJhdGlvbjogeworICAgICAgICBBU1NFUlQoIW1fcGVuZGluZ0Ry
b3BTYW5kYm94RXh0ZW5zaW9uKTsKKworICAgICAgICBtX3BlbmRpbmdEcm9wU2FuZGJveEV4dGVu
c2lvbiA9IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZShXVEZNb3ZlKHNhbmRib3hFeHRlbnNpb25I
YW5kbGUpKTsKKyAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzYW5kYm94RXh0ZW5zaW9u
c0hhbmRsZUFycmF5LnNpemUoKTsgaSsrKSB7CisgICAgICAgICAgICBpZiAoYXV0byBleHRlbnNp
b24gPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGUoV1RGTW92ZShzYW5kYm94RXh0ZW5zaW9uc0hh
bmRsZUFycmF5W2ldKSkpCisgICAgICAgICAgICAgICAgbV9wZW5kaW5nRHJvcEV4dGVuc2lvbnNG
b3JGaWxlVXBsb2FkLmFwcGVuZChleHRlbnNpb24pOworICAgICAgICB9CisKKyAgICAgICAgYm9v
bCBoYW5kbGVkID0gbV9wYWdlLT5kcmFnQ29udHJvbGxlcigpLnBlcmZvcm1EcmFnT3BlcmF0aW9u
KGRyYWdEYXRhKTsKKworICAgICAgICAvLyBJZiB3ZSBzdGFydGVkIGxvYWRpbmcgYSBsb2NhbCBm
aWxlLCB0aGUgc2FuZGJveCBleHRlbnNpb24gdHJhY2tlciB3b3VsZCBoYXZlIGFkb3B0ZWQgdGhp
cworICAgICAgICAvLyBwZW5kaW5nIGRyb3Agc2FuZGJveCBleHRlbnNpb24uIElmIG5vdCwgd2Un
bGwgcGxheSBpdCBzYWZlIGFuZCBjbGVhciBpdC4KKyAgICAgICAgbV9wZW5kaW5nRHJvcFNhbmRi
b3hFeHRlbnNpb24gPSBudWxscHRyOworCisgICAgICAgIG1fcGVuZGluZ0Ryb3BFeHRlbnNpb25z
Rm9yRmlsZVVwbG9hZC5jbGVhcigpOworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OkRpZFBlcmZvcm1EcmFnT3BlcmF0aW9uKGhhbmRsZWQpKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKyAgICB9CisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cit9CisjZW5kaWYKKwordm9p
ZCBXZWJQYWdlOjpkcmFnRW5kZWQoV2ViQ29yZTo6SW50UG9pbnQgY2xpZW50UG9zaXRpb24sIFdl
YkNvcmU6OkludFBvaW50IGdsb2JhbFBvc2l0aW9uLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ09w
ZXJhdGlvbj4gZHJhZ09wZXJhdGlvbk1hc2spCit7CisgICAgSW50UG9pbnQgYWRqdXN0ZWRDbGll
bnRQb3NpdGlvbihjbGllbnRQb3NpdGlvbi54KCkgKyBtX3BhZ2UtPmRyYWdDb250cm9sbGVyKCku
ZHJhZ09mZnNldCgpLngoKSwgY2xpZW50UG9zaXRpb24ueSgpICsgbV9wYWdlLT5kcmFnQ29udHJv
bGxlcigpLmRyYWdPZmZzZXQoKS55KCkpOworICAgIEludFBvaW50IGFkanVzdGVkR2xvYmFsUG9z
aXRpb24oZ2xvYmFsUG9zaXRpb24ueCgpICsgbV9wYWdlLT5kcmFnQ29udHJvbGxlcigpLmRyYWdP
ZmZzZXQoKS54KCksIGdsb2JhbFBvc2l0aW9uLnkoKSArIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIo
KS5kcmFnT2Zmc2V0KCkueSgpKTsKKworICAgIG1fcGFnZS0+ZHJhZ0NvbnRyb2xsZXIoKS5kcmFn
RW5kZWQoKTsKKyAgICBGcmFtZVZpZXcqIHZpZXcgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLnZpZXco
KTsKKyAgICBpZiAoIXZpZXcpCisgICAgICAgIHJldHVybjsKKyAgICAvLyBGSVhNRTogVGhlc2Ug
YXJlIGZha2UgbW9kaWZpZXIga2V5cyBoZXJlLCBidXQgdGhleSBzaG91bGQgYmUgcmVhbCBvbmVz
IGluc3RlYWQuCisgICAgUGxhdGZvcm1Nb3VzZUV2ZW50IGV2ZW50KGFkanVzdGVkQ2xpZW50UG9z
aXRpb24sIGFkanVzdGVkR2xvYmFsUG9zaXRpb24sIExlZnRCdXR0b24sIFBsYXRmb3JtRXZlbnQ6
Ok1vdXNlTW92ZWQsIDAsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBXYWxsVGltZTo6bm93
KCksIDAsIFdlYkNvcmU6Ok5vVGFwKTsKKyAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLmV2ZW50SGFu
ZGxlcigpLmRyYWdTb3VyY2VFbmRlZEF0KGV2ZW50LCBkcmFnT3BlcmF0aW9uTWFzayk7CisKKyAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZEVuZERyYWdnaW5nKCkpOworCisgICAg
bV9pc1N0YXJ0aW5nRHJhZyA9IGZhbHNlOworfQorCit2b2lkIFdlYlBhZ2U6OndpbGxQZXJmb3Jt
TG9hZERyYWdEZXN0aW5hdGlvbkFjdGlvbigpCit7CisgICAgbV9zYW5kYm94RXh0ZW5zaW9uVHJh
Y2tlci53aWxsUGVyZm9ybUxvYWREcmFnRGVzdGluYXRpb25BY3Rpb24oV1RGTW92ZShtX3BlbmRp
bmdEcm9wU2FuZGJveEV4dGVuc2lvbikpOworfQorCit2b2lkIFdlYlBhZ2U6Om1heVBlcmZvcm1V
cGxvYWREcmFnRGVzdGluYXRpb25BY3Rpb24oKQoreworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgbV9wZW5kaW5nRHJvcEV4dGVuc2lvbnNGb3JGaWxlVXBsb2FkLnNpemUoKTsgaSsrKQorICAg
ICAgICBtX3BlbmRpbmdEcm9wRXh0ZW5zaW9uc0ZvckZpbGVVcGxvYWRbaV0tPmNvbnN1bWVQZXJt
YW5lbnRseSgpOworICAgIG1fcGVuZGluZ0Ryb3BFeHRlbnNpb25zRm9yRmlsZVVwbG9hZC5jbGVh
cigpOworfQorCit2b2lkIFdlYlBhZ2U6OmRpZFN0YXJ0RHJhZygpCit7CisgICAgbV9pc1N0YXJ0
aW5nRHJhZyA9IGZhbHNlOworICAgIG1fcGFnZS0+bWFpbkZyYW1lKCkuZXZlbnRIYW5kbGVyKCku
ZGlkU3RhcnREcmFnKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZHJhZ0NhbmNlbGxlZCgpCit7Cisg
ICAgbV9pc1N0YXJ0aW5nRHJhZyA9IGZhbHNlOworICAgIG1fcGFnZS0+bWFpbkZyYW1lKCkuZXZl
bnRIYW5kbGVyKCkuZHJhZ0NhbmNlbGxlZCgpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKERSQUdf
U1VQUE9SVCkKKworV2ViVW5kb1N0ZXAqIFdlYlBhZ2U6OndlYlVuZG9TdGVwKFdlYlVuZG9TdGVw
SUQgc3RlcElEKQoreworICAgIHJldHVybiBtX3VuZG9TdGVwTWFwLmdldChzdGVwSUQpOworfQor
Cit2b2lkIFdlYlBhZ2U6OmFkZFdlYlVuZG9TdGVwKFdlYlVuZG9TdGVwSUQgc3RlcElELCBSZWY8
V2ViVW5kb1N0ZXA+JiYgZW50cnkpCit7CisgICAgYXV0byBhZGRSZXN1bHQgPSBtX3VuZG9TdGVw
TWFwLnNldChzdGVwSUQsIFdURk1vdmUoZW50cnkpKTsKKyAgICBBU1NFUlRfVU5VU0VEKGFkZFJl
c3VsdCwgYWRkUmVzdWx0LmlzTmV3RW50cnkpOworfQorCit2b2lkIFdlYlBhZ2U6OnJlbW92ZVdl
YkVkaXRDb21tYW5kKFdlYlVuZG9TdGVwSUQgc3RlcElEKQoreworICAgIGlmIChhdXRvIHVuZG9T
dGVwID0gbV91bmRvU3RlcE1hcC50YWtlKHN0ZXBJRCkpCisgICAgICAgIHVuZG9TdGVwLT5kaWRS
ZW1vdmVGcm9tVW5kb01hbmFnZXIoKTsKK30KKwordm9pZCBXZWJQYWdlOjp1bmFwcGx5RWRpdENv
bW1hbmQoV2ViVW5kb1N0ZXBJRCBzdGVwSUQpCit7CisgICAgYXV0byogc3RlcCA9IHdlYlVuZG9T
dGVwKHN0ZXBJRCk7CisgICAgaWYgKCFzdGVwKQorICAgICAgICByZXR1cm47CisKKyAgICBzdGVw
LT5zdGVwKCkudW5hcHBseSgpOworfQorCit2b2lkIFdlYlBhZ2U6OnJlYXBwbHlFZGl0Q29tbWFu
ZChXZWJVbmRvU3RlcElEIHN0ZXBJRCkKK3sKKyAgICBhdXRvKiBzdGVwID0gd2ViVW5kb1N0ZXAo
c3RlcElEKTsKKyAgICBpZiAoIXN0ZXApCisgICAgICAgIHJldHVybjsKKworICAgIG1faXNJblJl
ZG8gPSB0cnVlOworICAgIHN0ZXAtPnN0ZXAoKS5yZWFwcGx5KCk7CisgICAgbV9pc0luUmVkbyA9
IGZhbHNlOworfQorCit2b2lkIFdlYlBhZ2U6OmRpZFJlbW92ZUVkaXRDb21tYW5kKFdlYlVuZG9T
dGVwSUQgY29tbWFuZElEKQoreworICAgIHJlbW92ZVdlYkVkaXRDb21tYW5kKGNvbW1hbmRJRCk7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlUG9wdXBNZW51KFdlYlBvcHVwTWVudSogbWVu
dSkKK3sKKyAgICBtX2FjdGl2ZVBvcHVwTWVudSA9IG1lbnU7Cit9CisKKyNpZiBFTkFCTEUoSU5Q
VVRfVFlQRV9DT0xPUikKKwordm9pZCBXZWJQYWdlOjpzZXRBY3RpdmVDb2xvckNob29zZXIoV2Vi
Q29sb3JDaG9vc2VyKiBjb2xvckNob29zZXIpCit7CisgICAgbV9hY3RpdmVDb2xvckNob29zZXIg
PSBjb2xvckNob29zZXI7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkRW5kQ29sb3JQaWNrZXIoKQor
eworICAgIGlmIChtX2FjdGl2ZUNvbG9yQ2hvb3NlcikKKyAgICAgICAgbV9hY3RpdmVDb2xvckNo
b29zZXItPmRpZEVuZENob29zZXIoKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRDaG9vc2VDb2xv
cihjb25zdCBXZWJDb3JlOjpDb2xvciYgY29sb3IpCit7CisgICAgaWYgKG1fYWN0aXZlQ29sb3JD
aG9vc2VyKQorICAgICAgICBtX2FjdGl2ZUNvbG9yQ2hvb3Nlci0+ZGlkQ2hvb3NlQ29sb3IoY29s
b3IpOworfQorCisjZW5kaWYKKworI2lmIEVOQUJMRShEQVRBTElTVF9FTEVNRU5UKQorCit2b2lk
IFdlYlBhZ2U6OnNldEFjdGl2ZURhdGFMaXN0U3VnZ2VzdGlvblBpY2tlcihXZWJEYXRhTGlzdFN1
Z2dlc3Rpb25QaWNrZXImIGRhdGFMaXN0U3VnZ2VzdGlvblBpY2tlcikKK3sKKyAgICBtX2FjdGl2
ZURhdGFMaXN0U3VnZ2VzdGlvblBpY2tlciA9IG1ha2VXZWFrUHRyKCZkYXRhTGlzdFN1Z2dlc3Rp
b25QaWNrZXIpOworfQorCit2b2lkIFdlYlBhZ2U6OmRpZFNlbGVjdERhdGFMaXN0T3B0aW9uKGNv
bnN0IFN0cmluZyYgc2VsZWN0ZWRPcHRpb24pCit7CisgICAgaWYgKG1fYWN0aXZlRGF0YUxpc3RT
dWdnZXN0aW9uUGlja2VyKQorICAgICAgICBtX2FjdGl2ZURhdGFMaXN0U3VnZ2VzdGlvblBpY2tl
ci0+ZGlkU2VsZWN0T3B0aW9uKHNlbGVjdGVkT3B0aW9uKTsKK30KKwordm9pZCBXZWJQYWdlOjpk
aWRDbG9zZVN1Z2dlc3Rpb25zKCkKK3sKKyAgICBpZiAoYXV0byBwaWNrZXIgPSBzdGQ6OmV4Y2hh
bmdlKG1fYWN0aXZlRGF0YUxpc3RTdWdnZXN0aW9uUGlja2VyLCBudWxscHRyKSkKKyAgICAgICAg
cGlja2VyLT5kaWRDbG9zZVN1Z2dlc3Rpb25zKCk7Cit9CisKKyNlbmRpZgorCisjaWYgRU5BQkxF
KERBVEVfQU5EX1RJTUVfSU5QVVRfVFlQRVMpCisKK3ZvaWQgV2ViUGFnZTo6c2V0QWN0aXZlRGF0
ZVRpbWVDaG9vc2VyKFdlYkRhdGVUaW1lQ2hvb3NlciYgZGF0ZVRpbWVDaG9vc2VyKQoreworICAg
IG1fYWN0aXZlRGF0ZVRpbWVDaG9vc2VyID0gbWFrZVdlYWtQdHIoJmRhdGVUaW1lQ2hvb3Nlcik7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkQ2hvb3NlRGF0ZShjb25zdCBTdHJpbmcmIGRhdGUpCit7
CisgICAgaWYgKG1fYWN0aXZlRGF0ZVRpbWVDaG9vc2VyKQorICAgICAgICBtX2FjdGl2ZURhdGVU
aW1lQ2hvb3Nlci0+ZGlkQ2hvb3NlRGF0ZShkYXRlKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRF
bmREYXRlVGltZVBpY2tlcigpCit7CisgICAgaWYgKGF1dG8gY2hvb3NlciA9IHN0ZDo6ZXhjaGFu
Z2UobV9hY3RpdmVEYXRlVGltZUNob29zZXIsIG51bGxwdHIpKQorICAgICAgICBjaG9vc2VyLT5k
aWRFbmRDaG9vc2VyKCk7Cit9CisKKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6OnNldEFjdGl2ZU9w
ZW5QYW5lbFJlc3VsdExpc3RlbmVyKFJlZjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4mJiBv
cGVuUGFuZWxSZXN1bHRMaXN0ZW5lcikKK3sKKyAgICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExp
c3RlbmVyID0gV1RGTW92ZShvcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcik7Cit9CisKK2Jvb2wgV2Vi
UGFnZTo6ZmluZFN0cmluZ0Zyb21JbmplY3RlZEJ1bmRsZShjb25zdCBTdHJpbmcmIHRhcmdldCwg
T3B0aW9uU2V0PEZpbmRPcHRpb25zPiBvcHRpb25zKQoreworICAgIHJldHVybiBtX3BhZ2UtPmZp
bmRTdHJpbmcodGFyZ2V0LCBjb3JlKG9wdGlvbnMpKTsKK30KKwordm9pZCBXZWJQYWdlOjpmaW5k
U3RyaW5nTWF0Y2hlc0Zyb21JbmplY3RlZEJ1bmRsZShjb25zdCBTdHJpbmcmIHRhcmdldCwgT3B0
aW9uU2V0PEZpbmRPcHRpb25zPiBvcHRpb25zKQoreworICAgIGZpbmRDb250cm9sbGVyKCkuZmlu
ZFN0cmluZ01hdGNoZXModGFyZ2V0LCBvcHRpb25zLCAwKTsKK30KKwordm9pZCBXZWJQYWdlOjpy
ZXBsYWNlU3RyaW5nTWF0Y2hlc0Zyb21JbmplY3RlZEJ1bmRsZShjb25zdCBWZWN0b3I8dWludDMy
X3Q+JiBtYXRjaEluZGljZXMsIGNvbnN0IFN0cmluZyYgcmVwbGFjZW1lbnRUZXh0LCBib29sIHNl
bGVjdGlvbk9ubHkpCit7CisgICAgZmluZENvbnRyb2xsZXIoKS5yZXBsYWNlTWF0Y2hlcyhtYXRj
aEluZGljZXMsIHJlcGxhY2VtZW50VGV4dCwgc2VsZWN0aW9uT25seSk7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6ZmluZFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZywgT3B0aW9uU2V0PEZpbmRPcHRp
b25zPiBvcHRpb25zLCB1aW50MzJfdCBtYXhNYXRjaENvdW50LCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGZpbmRDb250cm9sbGVyKCku
ZmluZFN0cmluZyhzdHJpbmcsIG9wdGlvbnMsIG1heE1hdGNoQ291bnQsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBXZWJQYWdlOjpmaW5kU3RyaW5nTWF0Y2hlcyhjb25z
dCBTdHJpbmcmIHN0cmluZywgT3B0aW9uU2V0PEZpbmRPcHRpb25zPiBvcHRpb25zLCB1aW50MzJf
dCBtYXhNYXRjaENvdW50KQoreworICAgIGZpbmRDb250cm9sbGVyKCkuZmluZFN0cmluZ01hdGNo
ZXMoc3RyaW5nLCBvcHRpb25zLCBtYXhNYXRjaENvdW50KTsKK30KKwordm9pZCBXZWJQYWdlOjpn
ZXRJbWFnZUZvckZpbmRNYXRjaCh1aW50MzJfdCBtYXRjaEluZGV4KQoreworICAgIGZpbmRDb250
cm9sbGVyKCkuZ2V0SW1hZ2VGb3JGaW5kTWF0Y2gobWF0Y2hJbmRleCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6c2VsZWN0RmluZE1hdGNoKHVpbnQzMl90IG1hdGNoSW5kZXgpCit7CisgICAgZmluZENv
bnRyb2xsZXIoKS5zZWxlY3RGaW5kTWF0Y2gobWF0Y2hJbmRleCk7Cit9CisKK3ZvaWQgV2ViUGFn
ZTo6aW5kaWNhdGVGaW5kTWF0Y2godWludDMyX3QgbWF0Y2hJbmRleCkKK3sKKyAgICBmaW5kQ29u
dHJvbGxlcigpLmluZGljYXRlRmluZE1hdGNoKG1hdGNoSW5kZXgpOworfQorCit2b2lkIFdlYlBh
Z2U6OmhpZGVGaW5kVUkoKQoreworICAgIGZpbmRDb250cm9sbGVyKCkuaGlkZUZpbmRVSSgpOwor
fQorCit2b2lkIFdlYlBhZ2U6OmNvdW50U3RyaW5nTWF0Y2hlcyhjb25zdCBTdHJpbmcmIHN0cmlu
ZywgT3B0aW9uU2V0PEZpbmRPcHRpb25zPiBvcHRpb25zLCB1aW50MzJfdCBtYXhNYXRjaENvdW50
KQoreworICAgIGZpbmRDb250cm9sbGVyKCkuY291bnRTdHJpbmdNYXRjaGVzKHN0cmluZywgb3B0
aW9ucywgbWF4TWF0Y2hDb3VudCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVwbGFjZU1hdGNoZXMo
Y29uc3QgVmVjdG9yPHVpbnQzMl90PiYgbWF0Y2hJbmRpY2VzLCBjb25zdCBTdHJpbmcmIHJlcGxh
Y2VtZW50VGV4dCwgYm9vbCBzZWxlY3Rpb25Pbmx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVp
bnQ2NF90KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvIG51bWJlck9mUmVwbGFj
ZW1lbnRzID0gZmluZENvbnRyb2xsZXIoKS5yZXBsYWNlTWF0Y2hlcyhtYXRjaEluZGljZXMsIHJl
cGxhY2VtZW50VGV4dCwgc2VsZWN0aW9uT25seSk7CisgICAgY29tcGxldGlvbkhhbmRsZXIobnVt
YmVyT2ZSZXBsYWNlbWVudHMpOworfQorCit2b2lkIFdlYlBhZ2U6OmRpZENoYW5nZVNlbGVjdGVk
SW5kZXhGb3JBY3RpdmVQb3B1cE1lbnUoaW50MzJfdCBuZXdJbmRleCkKK3sKKyAgICBjaGFuZ2VT
ZWxlY3RlZEluZGV4KG5ld0luZGV4KTsKKyAgICBtX2FjdGl2ZVBvcHVwTWVudSA9IG51bGxwdHI7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2hhbmdlU2VsZWN0ZWRJbmRleChpbnQzMl90IGluZGV4KQor
eworICAgIGlmICghbV9hY3RpdmVQb3B1cE1lbnUpCisgICAgICAgIHJldHVybjsKKworICAgIG1f
YWN0aXZlUG9wdXBNZW51LT5kaWRDaGFuZ2VTZWxlY3RlZEluZGV4KGluZGV4KTsKK30KKworI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCit2b2lkIFdlYlBhZ2U6OmRpZENob29zZUZpbGVzRm9yT3Bl
blBhbmVsV2l0aERpc3BsYXlTdHJpbmdBbmRJY29uKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBmaWxl
cywgY29uc3QgU3RyaW5nJiBkaXNwbGF5U3RyaW5nLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2Um
IGljb25EYXRhLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBmcm9udGJvYXJkU2VydmljZXNT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBpY29uU2Vy
dmljZXNTYW5kYm94RXh0ZW5zaW9uSGFuZGxlKQoreworICAgIGlmICghbV9hY3RpdmVPcGVuUGFu
ZWxSZXN1bHRMaXN0ZW5lcikKKyAgICAgICAgcmV0dXJuOworCisjaWYgSEFWRShGUk9OVEJPQVJE
X1NZU1RFTV9BUFBfU0VSVklDRVMpCisgICAgYXV0byBmcm9udGJvYXJkU2VydmljZXNTYW5kYm94
RXh0ZW5zaW9uID0gU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlKFdURk1vdmUoZnJvbnRib2FyZFNl
cnZpY2VzU2FuZGJveEV4dGVuc2lvbkhhbmRsZSkpOworICAgIGlmIChmcm9udGJvYXJkU2Vydmlj
ZXNTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgIGJvb2wgY29uc3VtZWQgPSBmcm9udGJvYXJk
U2VydmljZXNTYW5kYm94RXh0ZW5zaW9uLT5jb25zdW1lKCk7CisgICAgICAgIEFTU0VSVF9VTlVT
RUQoY29uc3VtZWQsIGNvbnN1bWVkKTsKKyAgICB9CisgICAgUkVMRUFTRV9BU1NFUlQoIXNhbmRi
b3hfY2hlY2soZ2V0cGlkKCksICJtYWNoLWxvb2t1cCIsIHN0YXRpY19jYXN0PGVudW0gc2FuZGJv
eF9maWx0ZXJfdHlwZT4oU0FOREJPWF9GSUxURVJfR0xPQkFMX05BTUUgfCBTQU5EQk9YX0NIRUNL
X05PX1JFUE9SVCksICJjb20uYXBwbGUuZnJvbnRib2FyZC5zeXN0ZW1hcHBzZXJ2aWNlcyIpKTsK
KyNlbmRpZgorCisgICAgYXV0byBpY29uU2VydmljZXNTYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlKFdURk1vdmUoaWNvblNlcnZpY2VzU2FuZGJveEV4dGVuc2lvbkhh
bmRsZSkpOworICAgIGlmIChpY29uU2VydmljZXNTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAg
IGJvb2wgY29uc3VtZWQgPSBpY29uU2VydmljZXNTYW5kYm94RXh0ZW5zaW9uLT5jb25zdW1lKCk7
CisgICAgICAgIEFTU0VSVF9VTlVTRUQoY29uc3VtZWQsIGNvbnN1bWVkKTsKKyAgICB9CisgICAg
UkVMRUFTRV9BU1NFUlQoIXNhbmRib3hfY2hlY2soZ2V0cGlkKCksICJtYWNoLWxvb2t1cCIsIHN0
YXRpY19jYXN0PGVudW0gc2FuZGJveF9maWx0ZXJfdHlwZT4oU0FOREJPWF9GSUxURVJfR0xPQkFM
X05BTUUgfCBTQU5EQk9YX0NIRUNLX05PX1JFUE9SVCksICJjb20uYXBwbGUuaWNvbnNlcnZpY2Vz
IikpOworCisgICAgUmVmUHRyPEljb24+IGljb247CisgICAgaWYgKCFpY29uRGF0YS5pc0VtcHR5
KCkpIHsKKyAgICAgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gZGF0YVJlZiA9IGFkb3B0Q0YoQ0ZE
YXRhQ3JlYXRlKG51bGxwdHIsIGljb25EYXRhLmRhdGEoKSwgaWNvbkRhdGEuc2l6ZSgpKSk7Cisg
ICAgICAgIFJldGFpblB0cjxDR0RhdGFQcm92aWRlclJlZj4gaW1hZ2VQcm92aWRlclJlZiA9IGFk
b3B0Q0YoQ0dEYXRhUHJvdmlkZXJDcmVhdGVXaXRoQ0ZEYXRhKGRhdGFSZWYuZ2V0KCkpKTsKKyAg
ICAgICAgUmV0YWluUHRyPENHSW1hZ2VSZWY+IGltYWdlUmVmID0gYWRvcHRDRihDR0ltYWdlQ3Jl
YXRlV2l0aEpQRUdEYXRhUHJvdmlkZXIoaW1hZ2VQcm92aWRlclJlZi5nZXQoKSwgbnVsbHB0ciwg
dHJ1ZSwga0NHUmVuZGVyaW5nSW50ZW50RGVmYXVsdCkpOworICAgICAgICBpY29uID0gSWNvbjo6
Y3JlYXRlSWNvbkZvckltYWdlKFdURk1vdmUoaW1hZ2VSZWYpKTsKKyAgICB9CisKKyAgICBtX2Fj
dGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyLT5kaWRDaG9vc2VGaWxlc1dpdGhEaXNwbGF5U3Ry
aW5nQW5kSWNvbihmaWxlcywgZGlzcGxheVN0cmluZywgaWNvbi5nZXQoKSk7CisgICAgbV9hY3Rp
dmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lciA9IG51bGxwdHI7CisKKyNpZiBIQVZFKEZST05UQk9B
UkRfU1lTVEVNX0FQUF9TRVJWSUNFUykKKyAgICBpZiAoZnJvbnRib2FyZFNlcnZpY2VzU2FuZGJv
eEV4dGVuc2lvbikgeworICAgICAgICBib29sIHJldm9rZWQgPSBmcm9udGJvYXJkU2VydmljZXNT
YW5kYm94RXh0ZW5zaW9uLT5yZXZva2UoKTsKKyAgICAgICAgQVNTRVJUX1VOVVNFRChyZXZva2Vk
LCByZXZva2VkKTsKKyAgICB9CisjZW5kaWYKKworICAgIGlmIChpY29uU2VydmljZXNTYW5kYm94
RXh0ZW5zaW9uKSB7CisgICAgICAgIGJvb2wgcmV2b2tlZCA9IGljb25TZXJ2aWNlc1NhbmRib3hF
eHRlbnNpb24tPnJldm9rZSgpOworICAgICAgICBBU1NFUlRfVU5VU0VEKHJldm9rZWQsIHJldm9r
ZWQpOworICAgIH0KKworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZTo6ZGlkQ2hvb3NlRmlsZXNG
b3JPcGVuUGFuZWwoY29uc3QgVmVjdG9yPFN0cmluZz4mIGZpbGVzLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcmVwbGFjZW1lbnRGaWxlcykKK3sKKyAgICBpZiAoIW1fYWN0aXZlT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1fYWN0aXZlT3BlblBhbmVsUmVz
dWx0TGlzdGVuZXItPmRpZENob29zZUZpbGVzKGZpbGVzLCByZXBsYWNlbWVudEZpbGVzKTsKKyAg
ICBtX2FjdGl2ZU9wZW5QYW5lbFJlc3VsdExpc3RlbmVyID0gbnVsbHB0cjsKK30KKwordm9pZCBX
ZWJQYWdlOjpkaWRDYW5jZWxGb3JPcGVuUGFuZWwoKQoreworICAgIG1fYWN0aXZlT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXIgPSBudWxscHRyOworfQorCisjaWYgRU5BQkxFKFNBTkRCT1hfRVhURU5T
SU9OUykKK3ZvaWQgV2ViUGFnZTo6ZXh0ZW5kU2FuZGJveEZvckZpbGVzRnJvbU9wZW5QYW5lbChW
ZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYmIGhhbmRsZXMpCit7CisgICAgYm9vbCBy
ZXN1bHQgPSBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkoaGFuZGxlcyk7Cisg
ICAgaWYgKCFyZXN1bHQpIHsKKyAgICAgICAgLy8gV2UgaGF2ZSByZXBvcnRzIG9mIGNhc2VzIHdo
ZXJlIHRoaXMgZmFpbHMgZm9yIHNvbWUgdW5rbm93biByZWFzb24sIDxyZGFyOi8vcHJvYmxlbS8x
MDE1NjcxMD4uCisgICAgICAgIFdURkxvZ0Fsd2F5cygiV2ViUGFnZTo6ZXh0ZW5kU2FuZGJveEZv
ckZpbGVGcm9tT3BlblBhbmVsKCk6IENvdWxkIG5vdCBjb25zdW1lIGEgc2FuZGJveCBleHRlbnNp
b24iKTsKKyAgICB9Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShHRU9MT0NBVElPTikKK3ZvaWQg
V2ViUGFnZTo6ZGlkUmVjZWl2ZUdlb2xvY2F0aW9uUGVybWlzc2lvbkRlY2lzaW9uKEdlb2xvY2F0
aW9uSWRlbnRpZmllciBnZW9sb2NhdGlvbklELCBjb25zdCBTdHJpbmcmIGF1dGhvcml6YXRpb25U
b2tlbikKK3sKKyAgICBnZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpLmRpZFJl
Y2VpdmVHZW9sb2NhdGlvblBlcm1pc3Npb25EZWNpc2lvbihnZW9sb2NhdGlvbklELCBhdXRob3Jp
emF0aW9uVG9rZW4pOworfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQorCit2
b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0dyYW50ZWQoVXNlck1lZGlhUmVxdWVzdElk
ZW50aWZpZXIgdXNlck1lZGlhSUQsIFdlYkNvcmU6OkNhcHR1cmVEZXZpY2UmJiBhdWRpb0Rldmlj
ZSwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIHZpZGVvRGV2aWNlLCBTdHJpbmcmJiBtZWRpYURl
dmljZUlkZW50aWZpZXJIYXNoU2FsdCwgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlJiYgaGFuZGxl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KGhhbmRsZSk7CisKKyAgICBtX3Vz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci0+dXNlck1lZGlhQWNjZXNzV2FzR3JhbnRl
ZCh1c2VyTWVkaWFJRCwgV1RGTW92ZShhdWRpb0RldmljZSksIFdURk1vdmUodmlkZW9EZXZpY2Up
LCBXVEZNb3ZlKG1lZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0KSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOworfQorCit2b2lkIFdlYlBhZ2U6OnVzZXJNZWRpYUFjY2Vzc1dhc0Rlbmll
ZChVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciB1c2VyTWVkaWFJRCwgdWludDY0X3QgcmVhc29u
LCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCkKK3sKKyAgICBtX3VzZXJNZWRpYVBlcm1pc3Np
b25SZXF1ZXN0TWFuYWdlci0+dXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKHVzZXJNZWRpYUlELCBz
dGF0aWNfY2FzdDxVc2VyTWVkaWFSZXF1ZXN0OjpNZWRpYUFjY2Vzc0RlbmlhbFJlYXNvbj4ocmVh
c29uKSwgV1RGTW92ZShpbnZhbGlkQ29uc3RyYWludCkpOworfQorCit2b2lkIFdlYlBhZ2U6OmNh
cHR1cmVEZXZpY2VzQ2hhbmdlZCgpCit7CisgICAgbV91c2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVz
dE1hbmFnZXItPmNhcHR1cmVEZXZpY2VzQ2hhbmdlZCgpOworfQorCisjZW5kaWYKKworI2lmIEVO
QUJMRShFTkNSWVBURURfTUVESUEpCit2b2lkIFdlYlBhZ2U6Om1lZGlhS2V5U3lzdGVtV2FzR3Jh
bnRlZChNZWRpYUtleVN5c3RlbVJlcXVlc3RJZGVudGlmaWVyIG1lZGlhS2V5U3lzdGVtSUQsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBtX21l
ZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLT5tZWRpYUtleVN5c3RlbVdhc0dy
YW50ZWQobWVkaWFLZXlTeXN0ZW1JRCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQor
Cit2b2lkIFdlYlBhZ2U6Om1lZGlhS2V5U3lzdGVtV2FzRGVuaWVkKE1lZGlhS2V5U3lzdGVtUmVx
dWVzdElkZW50aWZpZXIgbWVkaWFLZXlTeXN0ZW1JRCwgU3RyaW5nJiYgbWVzc2FnZSkKK3sKKyAg
ICBtX21lZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLT5tZWRpYUtleVN5c3Rl
bVdhc0RlbmllZChtZWRpYUtleVN5c3RlbUlELCBXVEZNb3ZlKG1lc3NhZ2UpKTsKK30KKyNlbmRp
ZgorCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCit2b2lkIFdlYlBhZ2U6OmFkdmFuY2VUb05l
eHRNaXNzcGVsbGluZyhib29sIHN0YXJ0QmVmb3JlU2VsZWN0aW9uKQoreworICAgIFJlZiBmcmFt
ZSA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5G
cmFtZSgpOworICAgIGZyYW1lLT5lZGl0b3IoKS5hZHZhbmNlVG9OZXh0TWlzc3BlbGxpbmcoc3Rh
cnRCZWZvcmVTZWxlY3Rpb24pOworfQorI2VuZGlmCisKK2Jvb2wgV2ViUGFnZTo6aGFzUmljaGx5
RWRpdGFibGVTZWxlY3Rpb24oKSBjb25zdAoreworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYo
bV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGlm
IChtX3BhZ2UtPmRyYWdDYXJldENvbnRyb2xsZXIoKS5pc0NvbnRlbnRSaWNobHlFZGl0YWJsZSgp
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBmcmFtZS0+c2VsZWN0aW9uKCku
c2VsZWN0aW9uKCkuaXNDb250ZW50UmljaGx5RWRpdGFibGUoKTsKK30KKwordm9pZCBXZWJQYWdl
OjpjaGFuZ2VTcGVsbGluZ1RvV29yZChjb25zdCBTdHJpbmcmIHdvcmQpCit7CisgICAgcmVwbGFj
ZVNlbGVjdGlvbldpdGhUZXh0KCZDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkp
LT5mb2N1c2VkT3JNYWluRnJhbWUoKSwgd29yZCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dW5tYXJr
QWxsTWlzc3BlbGxpbmdzKCkKK3sKKyAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtX3BhZ2UtPm1h
aW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7
CisgICAgICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSBmcmFtZS0+ZG9jdW1lbnQoKSkKKyAg
ICAgICAgICAgIGRvY3VtZW50LT5tYXJrZXJzKCkucmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtl
cjo6U3BlbGxpbmcpOworICAgIH0KK30KKwordm9pZCBXZWJQYWdlOjp1bm1hcmtBbGxCYWRHcmFt
bWFyKCkKK3sKKyAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtX3BhZ2UtPm1haW5GcmFtZSgpOyBm
cmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CisgICAgICAgIGlm
IChEb2N1bWVudCogZG9jdW1lbnQgPSBmcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgICAgIGRv
Y3VtZW50LT5tYXJrZXJzKCkucmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtlcjo6R3JhbW1hcik7
CisgICAgfQorfQorCisjaWYgVVNFKEFQUEtJVCkKK3ZvaWQgV2ViUGFnZTo6dXBwZXJjYXNlV29y
ZCgpCit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxl
cigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAgZnJhbWUtPmVkaXRvcigpLnVwcGVyY2Fz
ZVdvcmQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpsb3dlcmNhc2VXb3JkKCkKK3sKKyAgICBSZWYg
ZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JN
YWluRnJhbWUoKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkubG93ZXJjYXNlV29yZCgpOworfQorCit2
b2lkIFdlYlBhZ2U6OmNhcGl0YWxpemVXb3JkKCkKK3sKKyAgICBSZWYgZnJhbWUgPSBDaGVja2Vk
UmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAg
ICBmcmFtZS0+ZWRpdG9yKCkuY2FwaXRhbGl6ZVdvcmQoKTsKK30KKyNlbmRpZgorICAgIAordm9p
ZCBXZWJQYWdlOjpzZXRUZXh0Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgaW5kZXgpCit7Cisg
ICAgaWYgKCFtX2FjdGl2ZVBvcHVwTWVudSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9hY3Rp
dmVQb3B1cE1lbnUtPnNldFRleHRGb3JJbmRleChpbmRleCk7Cit9CisKKyNpZiBQTEFURk9STShH
VEspCit2b2lkIFdlYlBhZ2U6OmZhaWxlZFRvU2hvd1BvcHVwTWVudSgpCit7CisgICAgaWYgKCFt
X2FjdGl2ZVBvcHVwTWVudSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9hY3RpdmVQb3B1cE1l
bnUtPmNsaWVudCgpLT5wb3B1cERpZEhpZGUoKTsKK30KKyNlbmRpZgorCisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVVMpCit2b2lkIFdlYlBhZ2U6OmRpZFNlbGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4
dE1lbnUoY29uc3QgV2ViQ29udGV4dE1lbnVJdGVtRGF0YSYgaXRlbSkKK3sKKyAgICBpZiAoYXV0
byBjb250ZXh0TWVudSA9IHN0ZDo6ZXhjaGFuZ2UobV9jb250ZXh0TWVudSwgbnVsbHB0cikpCisg
ICAgICAgIGNvbnRleHRNZW51LT5pdGVtU2VsZWN0ZWQoaXRlbSk7Cit9CisjZW5kaWYKKwordm9p
ZCBXZWJQYWdlOjpyZXBsYWNlU2VsZWN0aW9uV2l0aFRleHQoRnJhbWUqIGZyYW1lLCBjb25zdCBT
dHJpbmcmIHRleHQpCit7CisgICAgcmV0dXJuIGZyYW1lLT5lZGl0b3IoKS5yZXBsYWNlU2VsZWN0
aW9uV2l0aFRleHQodGV4dCwgV2ViQ29yZTo6RWRpdG9yOjpTZWxlY3RSZXBsYWNlbWVudDo6WWVz
LCBXZWJDb3JlOjpFZGl0b3I6OlNtYXJ0UmVwbGFjZTo6Tm8pOworfQorCisjaWYgIVBMQVRGT1JN
KElPU19GQU1JTFkpCit2b2lkIFdlYlBhZ2U6OmNsZWFyU2VsZWN0aW9uKCkKK3sKKyAgICBSZWYg
ZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JN
YWluRnJhbWUoKTsKKyAgICBmcmFtZS0+c2VsZWN0aW9uKCkuY2xlYXIoKTsKK30KKyNlbmRpZgor
Cit2b2lkIFdlYlBhZ2U6OnJlc3RvcmVTZWxlY3Rpb25JbkZvY3VzZWRFZGl0YWJsZUVsZW1lbnQo
KQoreworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIo
KSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGlmICghZnJhbWUtPnNlbGVjdGlvbigpLmlz
Tm9uZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoUmVmUHRyIGRvY3VtZW50ID0gZnJh
bWUtPmRvY3VtZW50KCkpIHsKKyAgICAgICAgaWYgKFJlZlB0ciBlbGVtZW50ID0gZG9jdW1lbnQt
PmZvY3VzZWRFbGVtZW50KCkpCisgICAgICAgICAgICBlbGVtZW50LT51cGRhdGVGb2N1c0FwcGVh
cmFuY2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwsIFNlbGVj
dGlvblJldmVhbE1vZGU6OkRvTm90UmV2ZWFsKTsKKyAgICB9Cit9CisKK2Jvb2wgV2ViUGFnZTo6
bWFpbkZyYW1lSGFzQ3VzdG9tQ29udGVudFByb3ZpZGVyKCkgY29uc3QKK3sKKyAgICBpZiAoRnJh
bWUqIGZyYW1lID0gbWFpbkZyYW1lKCkpIHsKKyAgICAgICAgV2ViRnJhbWVMb2FkZXJDbGllbnQq
IHdlYkZyYW1lTG9hZGVyQ2xpZW50ID0gdG9XZWJGcmFtZUxvYWRlckNsaWVudChmcmFtZS0+bG9h
ZGVyKCkuY2xpZW50KCkpOworICAgICAgICBBU1NFUlQod2ViRnJhbWVMb2FkZXJDbGllbnQpOwor
ICAgICAgICByZXR1cm4gd2ViRnJhbWVMb2FkZXJDbGllbnQtPmZyYW1lSGFzQ3VzdG9tQ29udGVu
dFByb3ZpZGVyKCk7CisgICAgfQorCisgICAgcmV0dXJuIGZhbHNlOworfQorCit2b2lkIFdlYlBh
Z2U6OmFkZE1JTUVUeXBlV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcihjb25zdCBTdHJpbmcmIG1p
bWVUeXBlKQoreworICAgIG1fbWltZVR5cGVzV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnMuYWRk
KG1pbWVUeXBlKTsKK30KKwordm9pZCBXZWJQYWdlOjp1cGRhdGVNYWluRnJhbWVTY3JvbGxPZmZz
ZXRQaW5uaW5nKCkKK3sKKyAgICBGcmFtZSYgZnJhbWUgPSBtX3BhZ2UtPm1haW5GcmFtZSgpOwor
ICAgIFNjcm9sbFBvc2l0aW9uIHNjcm9sbFBvc2l0aW9uID0gZnJhbWUudmlldygpLT5zY3JvbGxQ
b3NpdGlvbigpOworICAgIFNjcm9sbFBvc2l0aW9uIG1heGltdW1TY3JvbGxQb3NpdGlvbiA9IGZy
YW1lLnZpZXcoKS0+bWF4aW11bVNjcm9sbFBvc2l0aW9uKCk7CisgICAgU2Nyb2xsUG9zaXRpb24g
bWluaW11bVNjcm9sbFBvc2l0aW9uID0gZnJhbWUudmlldygpLT5taW5pbXVtU2Nyb2xsUG9zaXRp
b24oKTsKKworICAgIGJvb2wgaXNQaW5uZWRUb0xlZnRTaWRlID0gKHNjcm9sbFBvc2l0aW9uLngo
KSA8PSBtaW5pbXVtU2Nyb2xsUG9zaXRpb24ueCgpKTsKKyAgICBib29sIGlzUGlubmVkVG9SaWdo
dFNpZGUgPSAoc2Nyb2xsUG9zaXRpb24ueCgpID49IG1heGltdW1TY3JvbGxQb3NpdGlvbi54KCkp
OworICAgIGJvb2wgaXNQaW5uZWRUb1RvcFNpZGUgPSAoc2Nyb2xsUG9zaXRpb24ueSgpIDw9IG1p
bmltdW1TY3JvbGxQb3NpdGlvbi55KCkpOworICAgIGJvb2wgaXNQaW5uZWRUb0JvdHRvbVNpZGUg
PSAoc2Nyb2xsUG9zaXRpb24ueSgpID49IG1heGltdW1TY3JvbGxQb3NpdGlvbi55KCkpOworCisg
ICAgaWYgKGlzUGlubmVkVG9MZWZ0U2lkZSAhPSBtX2NhY2hlZE1haW5GcmFtZUlzUGlubmVkVG9M
ZWZ0U2lkZSB8fCBpc1Bpbm5lZFRvUmlnaHRTaWRlICE9IG1fY2FjaGVkTWFpbkZyYW1lSXNQaW5u
ZWRUb1JpZ2h0U2lkZSB8fCBpc1Bpbm5lZFRvVG9wU2lkZSAhPSBtX2NhY2hlZE1haW5GcmFtZUlz
UGlubmVkVG9Ub3BTaWRlIHx8IGlzUGlubmVkVG9Cb3R0b21TaWRlICE9IG1fY2FjaGVkTWFpbkZy
YW1lSXNQaW5uZWRUb0JvdHRvbVNpZGUpIHsKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpEaWRDaGFuZ2VTY3JvbGxPZmZzZXRQaW5uaW5nRm9yTWFpbkZyYW1lKGlzUGlubmVk
VG9MZWZ0U2lkZSwgaXNQaW5uZWRUb1JpZ2h0U2lkZSwgaXNQaW5uZWRUb1RvcFNpZGUsIGlzUGlu
bmVkVG9Cb3R0b21TaWRlKSk7CisgICAgICAgIAorICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUlz
UGlubmVkVG9MZWZ0U2lkZSA9IGlzUGlubmVkVG9MZWZ0U2lkZTsKKyAgICAgICAgbV9jYWNoZWRN
YWluRnJhbWVJc1Bpbm5lZFRvUmlnaHRTaWRlID0gaXNQaW5uZWRUb1JpZ2h0U2lkZTsKKyAgICAg
ICAgbV9jYWNoZWRNYWluRnJhbWVJc1Bpbm5lZFRvVG9wU2lkZSA9IGlzUGlubmVkVG9Ub3BTaWRl
OworICAgICAgICBtX2NhY2hlZE1haW5GcmFtZUlzUGlubmVkVG9Cb3R0b21TaWRlID0gaXNQaW5u
ZWRUb0JvdHRvbVNpZGU7CisgICAgfQorfQorCit2b2lkIFdlYlBhZ2U6Om1haW5GcmFtZURpZExh
eW91dCgpCit7CisgICAgdW5zaWduZWQgcGFnZUNvdW50ID0gbV9wYWdlLT5wYWdlQ291bnQoKTsK
KyAgICBpZiAocGFnZUNvdW50ICE9IG1fY2FjaGVkUGFnZUNvdW50KSB7CisgICAgICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlUGFnZUNvdW50KHBhZ2VDb3VudCkpOwor
ICAgICAgICBtX2NhY2hlZFBhZ2VDb3VudCA9IHBhZ2VDb3VudDsKKyAgICB9CisKKyNpZiBQTEFU
Rk9STShDT0NPQSkgfHwgUExBVEZPUk0oR1RLKQorICAgIGlmIChtX3ZpZXdHZXN0dXJlR2VvbWV0
cnlDb2xsZWN0b3IpCisgICAgICAgIG1fdmlld0dlc3R1cmVHZW9tZXRyeUNvbGxlY3Rvci0+bWFp
bkZyYW1lRGlkTGF5b3V0KCk7CisjZW5kaWYKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAg
IGlmIChGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1haW5GcmFtZVZpZXcoKSkgeworICAgICAgICBJ
bnRTaXplIG5ld0NvbnRlbnRTaXplID0gZnJhbWVWaWV3LT5jb250ZW50c1NpemUoKTsKKyAgICAg
ICAgTE9HX1dJVEhfU1RSRUFNKFZpc2libGVSZWN0cywgc3RyZWFtIDw8ICJXZWJQYWdlICIgPDwg
bV9pZGVudGlmaWVyLnRvVUludDY0KCkgPDwgIiBtYWluRnJhbWVEaWRMYXlvdXQgc2V0dGluZyBj
b250ZW50IHNpemUgdG8gIiA8PCBuZXdDb250ZW50U2l6ZSk7CisgICAgICAgIGlmIChtX3ZpZXdw
b3J0Q29uZmlndXJhdGlvbi5zZXRDb250ZW50c1NpemUobmV3Q29udGVudFNpemUpKQorICAgICAg
ICAgICAgdmlld3BvcnRDb25maWd1cmF0aW9uQ2hhbmdlZCgpOworICAgIH0KKyAgICBmaW5kQ29u
dHJvbGxlcigpLnJlZHJhdygpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZTo6YWRkUGx1Z2lu
VmlldyhQbHVnaW5WaWV3KiBwbHVnaW5WaWV3KQoreworICAgIEFTU0VSVCghbV9wbHVnaW5WaWV3
cy5jb250YWlucyhwbHVnaW5WaWV3KSk7CisKKyAgICBtX3BsdWdpblZpZXdzLmFkZChwbHVnaW5W
aWV3KTsKKyAgICBtX2hhc1NlZW5QbHVnaW4gPSB0cnVlOworfQorCit2b2lkIFdlYlBhZ2U6OnJl
bW92ZVBsdWdpblZpZXcoUGx1Z2luVmlldyogcGx1Z2luVmlldykKK3sKKyAgICBBU1NFUlQobV9w
bHVnaW5WaWV3cy5jb250YWlucyhwbHVnaW5WaWV3KSk7CisKKyAgICBtX3BsdWdpblZpZXdzLnJl
bW92ZShwbHVnaW5WaWV3KTsKK30KKwordm9pZCBXZWJQYWdlOjpzZW5kU2V0V2luZG93RnJhbWUo
Y29uc3QgRmxvYXRSZWN0JiB3aW5kb3dGcmFtZSkKK3sKKyNpZiBQTEFURk9STShDT0NPQSkKKyAg
ICBtX2hhc0NhY2hlZFdpbmRvd0ZyYW1lID0gZmFsc2U7CisjZW5kaWYKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldFdpbmRvd0ZyYW1lKHdpbmRvd0ZyYW1lKSk7Cit9CisKKyNp
ZiBQTEFURk9STShDT0NPQSkKK3ZvaWQgV2ViUGFnZTo6d2luZG93QW5kVmlld0ZyYW1lc0NoYW5n
ZWQoY29uc3QgRmxvYXRSZWN0JiB3aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRpbmF0ZXMsIGNvbnN0
IEZsb2F0UmVjdCYgd2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5hdGVzLCBjb25z
dCBGbG9hdFJlY3QmIHZpZXdGcmFtZUluV2luZG93Q29vcmRpbmF0ZXMsIGNvbnN0IEZsb2F0UG9p
bnQmIGFjY2Vzc2liaWxpdHlWaWV3Q29vcmRpbmF0ZXMpCit7CisgICAgbV93aW5kb3dGcmFtZUlu
U2NyZWVuQ29vcmRpbmF0ZXMgPSB3aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRpbmF0ZXM7CisgICAg
bV93aW5kb3dGcmFtZUluVW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0ZXMgPSB3aW5kb3dGcmFtZUlu
VW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0ZXM7CisgICAgbV92aWV3RnJhbWVJbldpbmRvd0Nvb3Jk
aW5hdGVzID0gdmlld0ZyYW1lSW5XaW5kb3dDb29yZGluYXRlczsKKyAgICBtX2FjY2Vzc2liaWxp
dHlQb3NpdGlvbiA9IGFjY2Vzc2liaWxpdHlWaWV3Q29vcmRpbmF0ZXM7CisgICAgCisgICAgLy8g
VGVsbCBhbGwgb3VyIHBsdWctaW4gdmlld3MgdGhhdCB0aGUgd2luZG93IGFuZCB2aWV3IGZyYW1l
cyBoYXZlIGNoYW5nZWQuCisgICAgZm9yIChhdXRvKiBwbHVnaW5WaWV3IDogbV9wbHVnaW5WaWV3
cykKKyAgICAgICAgcGx1Z2luVmlldy0+d2luZG93QW5kVmlld0ZyYW1lc0NoYW5nZWQoZW5jbG9z
aW5nSW50UmVjdCh3aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRpbmF0ZXMpLCBlbmNsb3NpbmdJbnRS
ZWN0KHZpZXdGcmFtZUluV2luZG93Q29vcmRpbmF0ZXMpKTsKKworICAgIG1faGFzQ2FjaGVkV2lu
ZG93RnJhbWUgPSAhbV93aW5kb3dGcmFtZUluVW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0ZXMuaXNF
bXB0eSgpOworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZTo6c2V0TWFpbkZyYW1lSXNTY3JvbGxh
YmxlKGJvb2wgaXNTY3JvbGxhYmxlKQoreworICAgIG1fbWFpbkZyYW1lSXNTY3JvbGxhYmxlID0g
aXNTY3JvbGxhYmxlOworICAgIG1fZHJhd2luZ0FyZWEtPm1haW5GcmFtZVNjcm9sbGFiaWxpdHlD
aGFuZ2VkKGlzU2Nyb2xsYWJsZSk7CisKKyAgICBpZiAoRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBt
X21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKSkgeworICAgICAgICBmcmFtZVZpZXctPnNl
dENhbkhhdmVTY3JvbGxiYXJzKGlzU2Nyb2xsYWJsZSk7CisgICAgICAgIGZyYW1lVmlldy0+c2V0
UHJvaGliaXRzU2Nyb2xsaW5nKCFpc1Njcm9sbGFibGUpOworICAgIH0KK30KKworYm9vbCBXZWJQ
YWdlOjp3aW5kb3dJc0ZvY3VzZWQoKSBjb25zdAoreworICAgIHJldHVybiBtX3BhZ2UtPmZvY3Vz
Q29udHJvbGxlcigpLmlzQWN0aXZlKCk7Cit9CisKK2Jvb2wgV2ViUGFnZTo6d2luZG93QW5kV2Vi
UGFnZUFyZUZvY3VzZWQoKSBjb25zdAoreworICAgIGlmICghaXNWaXNpYmxlKCkpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpLmlz
Rm9jdXNlZCgpICYmIG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkuaXNBY3RpdmUoKTsKK30KKwor
dm9pZCBXZWJQYWdlOjpkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIElQQzo6RGVjb2RlciYgZGVjb2RlcikKK3sKKyAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYkluc3BlY3Rvcjo6bWVzc2FnZVJlY2VpdmVyTmFt
ZSgpKSB7CisgICAgICAgIGlmIChXZWJJbnNwZWN0b3IqIGluc3BlY3RvciA9IHRoaXMtPmluc3Bl
Y3RvcigpKQorICAgICAgICAgICAgaW5zcGVjdG9yLT5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0
aW9uLCBkZWNvZGVyKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChkZWNvZGVy
Lm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6V2ViSW5zcGVjdG9yVUk6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSkgeworICAgICAgICBpZiAoV2ViSW5zcGVjdG9yVUkqIGluc3BlY3Rv
clVJID0gdGhpcy0+aW5zcGVjdG9yVUkoKSkKKyAgICAgICAgICAgIGluc3BlY3RvclVJLT5kaWRS
ZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6
UmVtb3RlV2ViSW5zcGVjdG9yVUk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgeworICAgICAgICBp
ZiAoUmVtb3RlV2ViSW5zcGVjdG9yVUkqIHJlbW90ZUluc3BlY3RvclVJID0gdGhpcy0+cmVtb3Rl
SW5zcGVjdG9yVUkoKSkKKyAgICAgICAgICAgIHJlbW90ZUluc3BlY3RvclVJLT5kaWRSZWNlaXZl
TWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
I2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKKyAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2
ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYkZ1bGxTY3JlZW5NYW5hZ2VyOjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCkpIHsKKyAgICAgICAgZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZGlkUmVjZWl2ZU1lc3Nh
Z2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYK
KworICAgIGRpZFJlY2VpdmVXZWJQYWdlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKK30K
KworYm9vbCBXZWJQYWdlOjpkaWRSZWNlaXZlU3luY01lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBj
b25uZWN0aW9uLCBJUEM6OkRlY29kZXImIGRlY29kZXIsIFVuaXF1ZVJlZjxJUEM6OkVuY29kZXI+
JiByZXBseUVuY29kZXIpCit7ICAgCisgICAgcmV0dXJuIGRpZFJlY2VpdmVTeW5jV2ViUGFnZU1l
c3NhZ2UoY29ubmVjdGlvbiwgZGVjb2RlciwgcmVwbHlFbmNvZGVyKTsKK30KKworI2lmIEVOQUJM
RShBU1lOQ19TQ1JPTExJTkcpCitTY3JvbGxpbmdDb29yZGluYXRvciogV2ViUGFnZTo6c2Nyb2xs
aW5nQ29vcmRpbmF0b3IoKSBjb25zdAoreworICAgIHJldHVybiBtX3BhZ2UtPnNjcm9sbGluZ0Nv
b3JkaW5hdG9yKCk7Cit9CisjZW5kaWYKKworV2ViUGFnZTo6U2FuZGJveEV4dGVuc2lvblRyYWNr
ZXI6On5TYW5kYm94RXh0ZW5zaW9uVHJhY2tlcigpCit7CisgICAgaW52YWxpZGF0ZSgpOworfQor
Cit2b2lkIFdlYlBhZ2U6OlNhbmRib3hFeHRlbnNpb25UcmFja2VyOjppbnZhbGlkYXRlKCkKK3sK
KyAgICBtX3BlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNpb24gPSBudWxscHRyOworCisg
ICAgaWYgKG1fcHJvdmlzaW9uYWxTYW5kYm94RXh0ZW5zaW9uKSB7CisgICAgICAgIG1fcHJvdmlz
aW9uYWxTYW5kYm94RXh0ZW5zaW9uLT5yZXZva2UoKTsKKyAgICAgICAgbV9wcm92aXNpb25hbFNh
bmRib3hFeHRlbnNpb24gPSBudWxscHRyOworICAgIH0KKworICAgIGlmIChtX2NvbW1pdHRlZFNh
bmRib3hFeHRlbnNpb24pIHsKKyAgICAgICAgbV9jb21taXR0ZWRTYW5kYm94RXh0ZW5zaW9uLT5y
ZXZva2UoKTsKKyAgICAgICAgbV9jb21taXR0ZWRTYW5kYm94RXh0ZW5zaW9uID0gbnVsbHB0cjsK
KyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZTo6U2FuZGJveEV4dGVuc2lvblRyYWNrZXI6OndpbGxQ
ZXJmb3JtTG9hZERyYWdEZXN0aW5hdGlvbkFjdGlvbihSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4m
JiBwZW5kaW5nRHJvcFNhbmRib3hFeHRlbnNpb24pCit7CisgICAgc2V0UGVuZGluZ1Byb3Zpc2lv
bmFsU2FuZGJveEV4dGVuc2lvbihXVEZNb3ZlKHBlbmRpbmdEcm9wU2FuZGJveEV4dGVuc2lvbikp
OworfQorCit2b2lkIFdlYlBhZ2U6OlNhbmRib3hFeHRlbnNpb25UcmFja2VyOjpiZWdpbkxvYWQo
V2ViRnJhbWUqIGZyYW1lLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiBoYW5kbGUpCit7Cisg
ICAgQVNTRVJUX1VOVVNFRChmcmFtZSwgZnJhbWUtPmlzTWFpbkZyYW1lKCkpOworCisgICAgc2V0
UGVuZGluZ1Byb3Zpc2lvbmFsU2FuZGJveEV4dGVuc2lvbihTYW5kYm94RXh0ZW5zaW9uOjpjcmVh
dGUoV1RGTW92ZShoYW5kbGUpKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6U2FuZGJveEV4dGVuc2lv
blRyYWNrZXI6OmJlZ2luUmVsb2FkKFdlYkZyYW1lKiBmcmFtZSwgU2FuZGJveEV4dGVuc2lvbjo6
SGFuZGxlJiYgaGFuZGxlKQoreworICAgIEFTU0VSVF9VTlVTRUQoZnJhbWUsIGZyYW1lLT5pc01h
aW5GcmFtZSgpKTsKKworICAgIC8vIE1haW50YWluIGV4aXN0aW5nIHByb3Zpc2lvbmFsIFNhbmRi
b3hFeHRlbnNpb24gaW4gY2FzZSBvZiBhIHJlbG9hZCwgaWYgdGhlIG5ldyBoYW5kbGUgaXMgbnVs
bC4gVGhpcyBpcyBuZWVkZWQKKyAgICAvLyBiZWNhdXNlIHRoZSBVSVByb2Nlc3Mgc2VuZHMgdXMg
YSBudWxsIGhhbmRsZSBpZiBpdCBhbHJlYWR5IHNlbnQgdXMgYSBoYW5kbGUgZm9yIHRoaXMgcGF0
aCBpbiB0aGUgcGFzdC4KKyAgICBpZiAoYXV0byBzYW5kYm94RXh0ZW5zaW9uID0gU2FuZGJveEV4
dGVuc2lvbjo6Y3JlYXRlKFdURk1vdmUoaGFuZGxlKSkpCisgICAgICAgIHNldFBlbmRpbmdQcm92
aXNpb25hbFNhbmRib3hFeHRlbnNpb24oV1RGTW92ZShzYW5kYm94RXh0ZW5zaW9uKSk7Cit9CisK
K3ZvaWQgV2ViUGFnZTo6U2FuZGJveEV4dGVuc2lvblRyYWNrZXI6OnNldFBlbmRpbmdQcm92aXNp
b25hbFNhbmRib3hFeHRlbnNpb24oUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+JiYgcGVuZGluZ1By
b3Zpc2lvbmFsU2FuZGJveEV4dGVuc2lvbikKK3sKKyAgICBtX3BlbmRpbmdQcm92aXNpb25hbFNh
bmRib3hFeHRlbnNpb24gPSBXVEZNb3ZlKHBlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNp
b24pOworfQorCitib29sIFdlYlBhZ2U6OlNhbmRib3hFeHRlbnNpb25UcmFja2VyOjpzaG91bGRS
ZXVzZUNvbW1pdHRlZFNhbmRib3hFeHRlbnNpb24oV2ViRnJhbWUqIGZyYW1lKQoreworICAgIEFT
U0VSVChmcmFtZS0+aXNNYWluRnJhbWUoKSk7CisKKyAgICBGcmFtZUxvYWRlciYgZnJhbWVMb2Fk
ZXIgPSBmcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpOworICAgIEZyYW1lTG9hZFR5cGUgZnJh
bWVMb2FkVHlwZSA9IGZyYW1lTG9hZGVyLmxvYWRUeXBlKCk7CisKKyAgICAvLyBJZiB0aGUgcGFn
ZSBpcyBiZWluZyByZWxvYWRlZCwgaXQgc2hvdWxkIHJldXNlIHdoYXRldmVyIGV4dGVuc2lvbiBp
cyBjb21taXR0ZWQuCisgICAgaWYgKGlzUmVsb2FkKGZyYW1lTG9hZFR5cGUpKQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKworICAgIGlmIChtX3BlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNp
b24pCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIERvY3VtZW50TG9hZGVyKiBkb2N1bWVu
dExvYWRlciA9IGZyYW1lTG9hZGVyLmRvY3VtZW50TG9hZGVyKCk7CisgICAgRG9jdW1lbnRMb2Fk
ZXIqIHByb3Zpc2lvbmFsRG9jdW1lbnRMb2FkZXIgPSBmcmFtZUxvYWRlci5wcm92aXNpb25hbERv
Y3VtZW50TG9hZGVyKCk7CisgICAgaWYgKCFkb2N1bWVudExvYWRlciB8fCAhcHJvdmlzaW9uYWxE
b2N1bWVudExvYWRlcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKGRvY3VtZW50
TG9hZGVyLT51cmwoKS5pc0xvY2FsRmlsZSgpICYmIHByb3Zpc2lvbmFsRG9jdW1lbnRMb2FkZXIt
PnVybCgpLmlzTG9jYWxGaWxlKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJu
IGZhbHNlOworfQorCit2b2lkIFdlYlBhZ2U6OlNhbmRib3hFeHRlbnNpb25UcmFja2VyOjpkaWRT
dGFydFByb3Zpc2lvbmFsTG9hZChXZWJGcmFtZSogZnJhbWUpCit7CisgICAgaWYgKCFmcmFtZS0+
aXNNYWluRnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gV2Ugc2hvdWxkIG9ubHkg
cmV1c2UgdGhlIGNvbW1pdGVkIHNhbmRib3ggZXh0ZW5zaW9uIGlmIGl0IGlzIG5vdCBudWxsLiBJ
dCBjYW4gYmUKKyAgICAvLyBudWxsIGlmIHRoZSBsYXN0IGxvYWQgd2FzIGZvciBhbiBlcnJvciBw
YWdlLgorICAgIGlmIChtX2NvbW1pdHRlZFNhbmRib3hFeHRlbnNpb24gJiYgc2hvdWxkUmV1c2VD
b21taXR0ZWRTYW5kYm94RXh0ZW5zaW9uKGZyYW1lKSkKKyAgICAgICAgbV9wZW5kaW5nUHJvdmlz
aW9uYWxTYW5kYm94RXh0ZW5zaW9uID0gbV9jb21taXR0ZWRTYW5kYm94RXh0ZW5zaW9uOworCisg
ICAgQVNTRVJUKCFtX3Byb3Zpc2lvbmFsU2FuZGJveEV4dGVuc2lvbik7CisKKyAgICBtX3Byb3Zp
c2lvbmFsU2FuZGJveEV4dGVuc2lvbiA9IFdURk1vdmUobV9wZW5kaW5nUHJvdmlzaW9uYWxTYW5k
Ym94RXh0ZW5zaW9uKTsKKyAgICBpZiAoIW1fcHJvdmlzaW9uYWxTYW5kYm94RXh0ZW5zaW9uKQor
ICAgICAgICByZXR1cm47CisKKyAgICBtX3Byb3Zpc2lvbmFsU2FuZGJveEV4dGVuc2lvbi0+Y29u
c3VtZSgpOworfQorCit2b2lkIFdlYlBhZ2U6OlNhbmRib3hFeHRlbnNpb25UcmFja2VyOjpkaWRD
b21taXRQcm92aXNpb25hbExvYWQoV2ViRnJhbWUqIGZyYW1lKQoreworICAgIGlmICghZnJhbWUt
PmlzTWFpbkZyYW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChtX2NvbW1pdHRlZFNh
bmRib3hFeHRlbnNpb24pCisgICAgICAgIG1fY29tbWl0dGVkU2FuZGJveEV4dGVuc2lvbi0+cmV2
b2tlKCk7CisKKyAgICBtX2NvbW1pdHRlZFNhbmRib3hFeHRlbnNpb24gPSBXVEZNb3ZlKG1fcHJv
dmlzaW9uYWxTYW5kYm94RXh0ZW5zaW9uKTsKKworICAgIC8vIFdlIGNhbiBhbHNvIGhhdmUgYSBu
b24tbnVsbCBtX3BlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNpb24gaWYgYSBuZXcgbG9h
ZCBpcyBiZWluZyBzdGFydGVkLgorICAgIC8vIFRoaXMgZXh0ZW5zaW9uIGlzIG5vdCBjbGVhcmVk
LCBiZWNhdXNlIGl0IGRvZXMgbm90IHBlcnRhaW4gdG8gdGhlIGZhaWxlZCBsb2FkLCBhbmQgd2ls
bCBiZSBuZWVkZWQuCit9CisKK3ZvaWQgV2ViUGFnZTo6U2FuZGJveEV4dGVuc2lvblRyYWNrZXI6
OmRpZEZhaWxQcm92aXNpb25hbExvYWQoV2ViRnJhbWUqIGZyYW1lKQoreworICAgIGlmICghZnJh
bWUtPmlzTWFpbkZyYW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghbV9wcm92aXNp
b25hbFNhbmRib3hFeHRlbnNpb24pCisgICAgICAgIHJldHVybjsKKworICAgIG1fcHJvdmlzaW9u
YWxTYW5kYm94RXh0ZW5zaW9uLT5yZXZva2UoKTsKKyAgICBtX3Byb3Zpc2lvbmFsU2FuZGJveEV4
dGVuc2lvbiA9IG51bGxwdHI7CisKKyAgICAvLyBXZSBjYW4gYWxzbyBoYXZlIGEgbm9uLW51bGwg
bV9wZW5kaW5nUHJvdmlzaW9uYWxTYW5kYm94RXh0ZW5zaW9uIGlmIGEgbmV3IGxvYWQgaXMgYmVp
bmcgc3RhcnRlZAorICAgIC8vIChub3RhYmx5LCBpZiB0aGUgY3VycmVudCBvbmUgZmFpbHMgYmVj
YXVzZSB0aGUgbmV3IG9uZSBjYW5jZWxzIGl0KS4gVGhpcyBleHRlbnNpb24gaXMgbm90IGNsZWFy
ZWQsCisgICAgLy8gYmVjYXVzZSBpdCBkb2VzIG5vdCBwZXJ0YWluIHRvIHRoZSBmYWlsZWQgbG9h
ZCwgYW5kIHdpbGwgYmUgbmVlZGVkLgorfQorCitib29sIFdlYlBhZ2U6Omhhc0xvY2FsRGF0YUZv
clVSTChjb25zdCBVUkwmIHVybCkKK3sKKyAgICBpZiAodXJsLmlzTG9jYWxGaWxlKCkpCisgICAg
ICAgIHJldHVybiB0cnVlOworCisgICAgRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50TG9hZGVyID0g
bV9wYWdlLT5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmIChk
b2N1bWVudExvYWRlciAmJiBkb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2UodXJsKSkKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgV2ViUGFnZTo6
c2V0Q3VzdG9tVGV4dEVuY29kaW5nTmFtZShjb25zdCBTdHJpbmcmIGVuY29kaW5nKQoreworICAg
IG1fcGFnZS0+bWFpbkZyYW1lKCkubG9hZGVyKCkucmVsb2FkV2l0aE92ZXJyaWRlRW5jb2Rpbmco
ZW5jb2RpbmcpOworfQorCit2b2lkIFdlYlBhZ2U6OmRpZFJlbW92ZUJhY2tGb3J3YXJkSXRlbShj
b25zdCBCYWNrRm9yd2FyZEl0ZW1JZGVudGlmaWVyJiBpdGVtSUQpCit7CisgICAgV2ViQmFja0Zv
cndhcmRMaXN0UHJveHk6OnJlbW92ZUl0ZW0oaXRlbUlEKTsKK30KKworI2lmIFBMQVRGT1JNKENP
Q09BKQorCitib29sIFdlYlBhZ2U6OmlzU3BlYWtpbmcoKQoreworICAgIGJvb2wgcmVzdWx0Owor
ICAgIHJldHVybiBzZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpHZXRJc1NwZWFraW5n
KCksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldElzU3BlYWtpbmc6OlJlcGx5KHJlc3VsdCkp
ICYmIHJlc3VsdDsKK30KKwordm9pZCBXZWJQYWdlOjpzcGVhayhjb25zdCBTdHJpbmcmIHN0cmlu
ZykKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNwZWFrKHN0cmluZykpOwor
fQorCit2b2lkIFdlYlBhZ2U6OnN0b3BTcGVha2luZygpCit7CisgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpTdG9wU3BlYWtpbmcoKSk7Cit9CisKKyNlbmRpZgorCisjaWYgUExBVEZP
Uk0oTUFDKQorCitSZXRhaW5QdHI8UERGRG9jdW1lbnQ+IFdlYlBhZ2U6OnBkZkRvY3VtZW50Rm9y
UHJpbnRpbmdGcmFtZShGcmFtZSogY29yZUZyYW1lKQoreworICAgIFBsdWdpblZpZXcqIHBsdWdp
blZpZXcgPSBwbHVnaW5WaWV3Rm9yRnJhbWUoY29yZUZyYW1lKTsKKyAgICBpZiAoIXBsdWdpblZp
ZXcpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgcmV0dXJuIHBsdWdpblZpZXctPnBk
ZkRvY3VtZW50Rm9yUHJpbnRpbmcoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRVc2VTeXN0ZW1B
cHBlYXJhbmNlKGJvb2wgdXNlU3lzdGVtQXBwZWFyYW5jZSkKK3sKKyAgICBjb3JlUGFnZSgpLT5z
ZXRVc2VTeXN0ZW1BcHBlYXJhbmNlKHVzZVN5c3RlbUFwcGVhcmFuY2UpOworfQorCisjZW5kaWYK
Kwordm9pZCBXZWJQYWdlOjplZmZlY3RpdmVBcHBlYXJhbmNlRGlkQ2hhbmdlKGJvb2wgdXNlRGFy
a0FwcGVhcmFuY2UsIGJvb2wgdXNlRWxldmF0ZWRVc2VySW50ZXJmYWNlTGV2ZWwpCit7CisgICAg
Y29yZVBhZ2UoKS0+ZWZmZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZSh1c2VEYXJrQXBwZWFyYW5j
ZSwgdXNlRWxldmF0ZWRVc2VySW50ZXJmYWNlTGV2ZWwpOworfQorCit2b2lkIFdlYlBhZ2U6OmZy
ZWV6ZUxheWVyVHJlZUR1ZVRvU3dpcGVBbmltYXRpb24oKQoreworICAgIGZyZWV6ZUxheWVyVHJl
ZShMYXllclRyZWVGcmVlemVSZWFzb246OlN3aXBlQW5pbWF0aW9uKTsKK30KKwordm9pZCBXZWJQ
YWdlOjp1bmZyZWV6ZUxheWVyVHJlZUR1ZVRvU3dpcGVBbmltYXRpb24oKQoreworICAgIHVuZnJl
ZXplTGF5ZXJUcmVlKExheWVyVHJlZUZyZWV6ZVJlYXNvbjo6U3dpcGVBbmltYXRpb24pOworfQor
Cit2b2lkIFdlYlBhZ2U6OmJlZ2luUHJpbnRpbmcoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNv
bnN0IFByaW50SW5mbyYgcHJpbnRJbmZvKQoreworICAgIFByaW50Q29udGV4dEFjY2Vzc1Njb3Bl
IHNjb3BlIHsgKnRoaXMgfTsKKworICAgIFdlYkZyYW1lKiBmcmFtZSA9IFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLndlYkZyYW1lKGZyYW1lSUQpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJl
dHVybjsKKworICAgIEZyYW1lKiBjb3JlRnJhbWUgPSBmcmFtZS0+Y29yZUZyYW1lKCk7CisgICAg
aWYgKCFjb3JlRnJhbWUpCisgICAgICAgIHJldHVybjsKKworI2lmIFBMQVRGT1JNKE1BQykKKyAg
ICBpZiAocGRmRG9jdW1lbnRGb3JQcmludGluZ0ZyYW1lKGNvcmVGcmFtZSkpCisgICAgICAgIHJl
dHVybjsKKyNlbmRpZgorCisgICAgaWYgKCFtX3ByaW50Q29udGV4dCkgeworICAgICAgICBtX3By
aW50Q29udGV4dCA9IG1ha2VVbmlxdWU8UHJpbnRDb250ZXh0Pihjb3JlRnJhbWUpOworICAgICAg
ICBtX3BhZ2UtPmRpc3BhdGNoQmVmb3JlUHJpbnRFdmVudCgpOworICAgIH0KKworICAgIGZyZWV6
ZUxheWVyVHJlZShMYXllclRyZWVGcmVlemVSZWFzb246OlByaW50aW5nKTsKKworICAgIGF1dG8g
Y29tcHV0ZWRQYWdlU2l6ZSA9IG1fcHJpbnRDb250ZXh0LT5jb21wdXRlZFBhZ2VTaXplKEZsb2F0
U2l6ZShwcmludEluZm8uYXZhaWxhYmxlUGFwZXJXaWR0aCwgcHJpbnRJbmZvLmF2YWlsYWJsZVBh
cGVySGVpZ2h0KSwgcHJpbnRJbmZvLm1hcmdpbik7CisKKyAgICBtX3ByaW50Q29udGV4dC0+YmVn
aW4oY29tcHV0ZWRQYWdlU2l6ZS53aWR0aCgpLCBjb21wdXRlZFBhZ2VTaXplLmhlaWdodCgpKTsK
KworICAgIC8vIFByaW50Q29udGV4dDo6YmVnaW4oKSBwZXJmb3JtZWQgYSBzeW5jaHJvbm91cyBs
YXlvdXQgd2hpY2ggbWlnaHQgaGF2ZSBleGVjdXRlZCBhCisgICAgLy8gc2NyaXB0IHRoYXQgY2xv
c2VkIHRoZSBXZWJQYWdlLCBjbGVhcmluZyBtX3ByaW50Q29udGV4dC4KKyAgICAvLyBTZWUgPHJk
YXI6Ly9wcm9ibGVtLzQ5NzMxMjExPiBmb3IgY2FzZXMgb2YgdGhpcyBoYXBwZW5pbmcuCisgICAg
aWYgKCFtX3ByaW50Q29udGV4dCkgeworICAgICAgICB1bmZyZWV6ZUxheWVyVHJlZShMYXllclRy
ZWVGcmVlemVSZWFzb246OlByaW50aW5nKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IGZsb2F0IGZ1bGxQYWdlSGVpZ2h0OworICAgIG1fcHJpbnRDb250ZXh0LT5jb21wdXRlUGFnZVJl
Y3RzKEZsb2F0UmVjdCgwLCAwLCBjb21wdXRlZFBhZ2VTaXplLndpZHRoKCksIGNvbXB1dGVkUGFn
ZVNpemUuaGVpZ2h0KCkpLCAwLCAwLCBwcmludEluZm8ucGFnZVNldHVwU2NhbGVGYWN0b3IsIGZ1
bGxQYWdlSGVpZ2h0LCB0cnVlKTsKKworI2lmIFBMQVRGT1JNKEdUSykKKyAgICBpZiAoIW1fcHJp
bnRPcGVyYXRpb24pCisgICAgICAgIG1fcHJpbnRPcGVyYXRpb24gPSBXZWJQcmludE9wZXJhdGlv
bkd0azo6Y3JlYXRlKHRoaXMsIHByaW50SW5mbyk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdl
OjplbmRQcmludGluZygpCit7CisgICAgaWYgKG1faW5BY3RpdmVQcmludENvbnRleHRBY2Nlc3NT
Y29wZSkgeworICAgICAgICBtX3Nob3VsZEVuZFByaW50aW5nSW1tZWRpYXRlbHkgPSB0cnVlOwor
ICAgICAgICByZXR1cm47CisgICAgfQorICAgIGVuZFByaW50aW5nSW1tZWRpYXRlbHkoKTsKK30K
Kwordm9pZCBXZWJQYWdlOjplbmRQcmludGluZ0ltbWVkaWF0ZWx5KCkKK3sKKyAgICBSRUxFQVNF
X0FTU0VSVCghbV9pbkFjdGl2ZVByaW50Q29udGV4dEFjY2Vzc1Njb3BlKTsKKyAgICBtX3Nob3Vs
ZEVuZFByaW50aW5nSW1tZWRpYXRlbHkgPSBmYWxzZTsKKworICAgIHVuZnJlZXplTGF5ZXJUcmVl
KExheWVyVHJlZUZyZWV6ZVJlYXNvbjo6UHJpbnRpbmcpOworCisgICAgaWYgKG1fcHJpbnRDb250
ZXh0KSB7CisgICAgICAgIG1fcHJpbnRDb250ZXh0ID0gbnVsbHB0cjsKKyAgICAgICAgbV9wYWdl
LT5kaXNwYXRjaEFmdGVyUHJpbnRFdmVudCgpOworICAgIH0KK30KKwordm9pZCBXZWJQYWdlOjpj
b21wdXRlUGFnZXNGb3JQcmludGluZyhGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgUHJp
bnRJbmZvJiBwcmludEluZm8sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdl
YkNvcmU6OkludFJlY3Q+JiwgZG91YmxlLCBjb25zdCBXZWJDb3JlOjpGbG9hdEJveEV4dGVudCYp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIFByaW50Q29udGV4dEFjY2Vzc1Njb3BlIHNj
b3BlIHsgKnRoaXMgfTsKKyAgICBWZWN0b3I8SW50UmVjdD4gcmVzdWx0UGFnZVJlY3RzOworICAg
IGRvdWJsZSByZXN1bHRUb3RhbFNjYWxlRmFjdG9yRm9yUHJpbnRpbmcgPSAxOworICAgIGF1dG8g
Y29tcHV0ZWRQYWdlTWFyZ2luID0gcHJpbnRJbmZvLm1hcmdpbjsKKyAgICBjb21wdXRlUGFnZXNG
b3JQcmludGluZ0ltcGwoZnJhbWVJRCwgcHJpbnRJbmZvLCByZXN1bHRQYWdlUmVjdHMsIHJlc3Vs
dFRvdGFsU2NhbGVGYWN0b3JGb3JQcmludGluZywgY29tcHV0ZWRQYWdlTWFyZ2luKTsKKyAgICBj
b21wbGV0aW9uSGFuZGxlcihyZXN1bHRQYWdlUmVjdHMsIHJlc3VsdFRvdGFsU2NhbGVGYWN0b3JG
b3JQcmludGluZywgY29tcHV0ZWRQYWdlTWFyZ2luKTsKK30KKwordm9pZCBXZWJQYWdlOjpjb21w
dXRlUGFnZXNGb3JQcmludGluZ0ltcGwoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFBy
aW50SW5mbyYgcHJpbnRJbmZvLCBWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4mIHJlc3VsdFBhZ2VS
ZWN0cywgZG91YmxlJiByZXN1bHRUb3RhbFNjYWxlRmFjdG9yRm9yUHJpbnRpbmcsIEZsb2F0Qm94
RXh0ZW50JiBjb21wdXRlZFBhZ2VNYXJnaW4pCit7CisgICAgQVNTRVJUKHJlc3VsdFBhZ2VSZWN0
cy5pc0VtcHR5KCkpOworCisgICAgYmVnaW5QcmludGluZyhmcmFtZUlELCBwcmludEluZm8pOwor
CisgICAgaWYgKG1fcHJpbnRDb250ZXh0KSB7CisgICAgICAgIFByaW50Q29udGV4dEFjY2Vzc1Nj
b3BlIHNjb3BlIHsgKnRoaXMgfTsKKyAgICAgICAgcmVzdWx0UGFnZVJlY3RzID0gbV9wcmludENv
bnRleHQtPnBhZ2VSZWN0cygpOworICAgICAgICBjb21wdXRlZFBhZ2VNYXJnaW4gPSBtX3ByaW50
Q29udGV4dC0+Y29tcHV0ZWRQYWdlTWFyZ2luKHByaW50SW5mby5tYXJnaW4pOworICAgICAgICBh
dXRvIGNvbXB1dGVkUGFnZVNpemUgPSBtX3ByaW50Q29udGV4dC0+Y29tcHV0ZWRQYWdlU2l6ZShG
bG9hdFNpemUocHJpbnRJbmZvLmF2YWlsYWJsZVBhcGVyV2lkdGgsIHByaW50SW5mby5hdmFpbGFi
bGVQYXBlckhlaWdodCksIHByaW50SW5mby5tYXJnaW4pOworICAgICAgICByZXN1bHRUb3RhbFNj
YWxlRmFjdG9yRm9yUHJpbnRpbmcgPSBtX3ByaW50Q29udGV4dC0+Y29tcHV0ZUF1dG9tYXRpY1Nj
YWxlRmFjdG9yKGNvbXB1dGVkUGFnZVNpemUpICogcHJpbnRJbmZvLnBhZ2VTZXR1cFNjYWxlRmFj
dG9yOworICAgIH0KKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBlbHNlCisgICAgICAgIGNvbXB1
dGVQYWdlc0ZvclByaW50aW5nUERGRG9jdW1lbnQoZnJhbWVJRCwgcHJpbnRJbmZvLCByZXN1bHRQ
YWdlUmVjdHMpOworI2VuZGlmIC8vIFBMQVRGT1JNKENPQ09BKQorCisgICAgLy8gSWYgd2UncmUg
YXNrZWQgdG8gcHJpbnQsIHdlIHNob3VsZCBhY3R1YWxseSBwcmludCBhdCBsZWFzdCBhIGJsYW5r
IHBhZ2UuCisgICAgaWYgKHJlc3VsdFBhZ2VSZWN0cy5pc0VtcHR5KCkpCisgICAgICAgIHJlc3Vs
dFBhZ2VSZWN0cy5hcHBlbmQoSW50UmVjdCgwLCAwLCAxLCAxKSk7Cit9CisKKyNpZiBQTEFURk9S
TShDT0NPQSkKK3ZvaWQgV2ViUGFnZTo6ZHJhd1RvUERGKEZyYW1lSWRlbnRpZmllciBmcmFtZUlE
LCBjb25zdCBzdGQ6Om9wdGlvbmFsPEZsb2F0UmVjdD4mIHJlY3QsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgYXV0byYgZnJhbWVWaWV3ID0gKm1fcGFnZS0+bWFpbkZyYW1lKCkudmlldygpOworICAg
IEludFNpemUgc25hcHNob3RTaXplOworICAgIGlmIChyZWN0KQorICAgICAgICBzbmFwc2hvdFNp
emUgPSBJbnRTaXplKHJlY3QtPnNpemUoKSk7CisgICAgZWxzZQorICAgICAgICBzbmFwc2hvdFNp
emUgPSB7IGZyYW1lVmlldy5jb250ZW50c1NpemUoKSB9OworCisgICAgSW50UmVjdCBzbmFwc2hv
dFJlY3Q7CisgICAgaWYgKHJlY3QpCisgICAgICAgIHNuYXBzaG90UmVjdCA9IHsgeyhpbnQpcmVj
dC0+eCgpLCAoaW50KXJlY3QtPnkoKX0sIHNuYXBzaG90U2l6ZSB9OworICAgIGVsc2UKKyAgICAg
ICAgc25hcHNob3RSZWN0ID0geyB7MCwgMH0sIHNuYXBzaG90U2l6ZSB9OworCisgICAgYXV0byBv
cmlnaW5hbExheW91dFZpZXdwb3J0T3ZlcnJpZGVSZWN0ID0gZnJhbWVWaWV3LmxheW91dFZpZXdw
b3J0T3ZlcnJpZGVSZWN0KCk7CisgICAgZnJhbWVWaWV3LnNldExheW91dFZpZXdwb3J0T3ZlcnJp
ZGVSZWN0KExheW91dFJlY3Qoc25hcHNob3RSZWN0KSk7CisgICAgYXV0byBvcmlnaW5hbFBhaW50
QmVoYXZpb3IgPSBmcmFtZVZpZXcucGFpbnRCZWhhdmlvcigpOworICAgIGZyYW1lVmlldy5zZXRQ
YWludEJlaGF2aW9yKG9yaWdpbmFsUGFpbnRCZWhhdmlvciB8IFBhaW50QmVoYXZpb3I6OkFubm90
YXRlTGlua3MpOworCisgICAgYXV0byBwZGZEYXRhID0gcGRmU25hcHNob3RBdFNpemUoc25hcHNo
b3RSZWN0LCBzbmFwc2hvdFNpemUsIDApOworCisgICAgZnJhbWVWaWV3LnNldExheW91dFZpZXdw
b3J0T3ZlcnJpZGVSZWN0KG9yaWdpbmFsTGF5b3V0Vmlld3BvcnRPdmVycmlkZVJlY3QpOworICAg
IGZyYW1lVmlldy5zZXRQYWludEJlaGF2aW9yKG9yaWdpbmFsUGFpbnRCZWhhdmlvcik7CisKKyAg
ICBjb21wbGV0aW9uSGFuZGxlcihJUEM6OkRhdGFSZWZlcmVuY2UoQ0ZEYXRhR2V0Qnl0ZVB0cihw
ZGZEYXRhLmdldCgpKSwgQ0ZEYXRhR2V0TGVuZ3RoKHBkZkRhdGEuZ2V0KCkpKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6ZHJhd1JlY3RUb0ltYWdlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBjb25z
dCBQcmludEluZm8mIHByaW50SW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCwgY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYgaW1hZ2VTaXplLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYktp
dDo6U2hhcmVhYmxlQml0bWFwOjpIYW5kbGUmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBQcmludENvbnRleHRBY2Nlc3NTY29wZSBzY29wZSB7ICp0aGlzIH07CisgICAgV2ViRnJhbWUq
IGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCk7CisgICAg
RnJhbWUqIGNvcmVGcmFtZSA9IGZyYW1lID8gZnJhbWUtPmNvcmVGcmFtZSgpIDogMDsKKworICAg
IFJlZlB0cjxXZWJJbWFnZT4gaW1hZ2U7CisKKyNpZiBVU0UoQ0cpCisgICAgaWYgKGNvcmVGcmFt
ZSkgeworI2lmIFBMQVRGT1JNKE1BQykKKyAgICAgICAgQVNTRVJUKGNvcmVGcmFtZS0+ZG9jdW1l
bnQoKS0+cHJpbnRpbmcoKSB8fCBwZGZEb2N1bWVudEZvclByaW50aW5nRnJhbWUoY29yZUZyYW1l
KSk7CisjZWxzZQorICAgICAgICBBU1NFUlQoY29yZUZyYW1lLT5kb2N1bWVudCgpLT5wcmludGlu
ZygpKTsKKyNlbmRpZgorCisgICAgICAgIGF1dG8gYml0bWFwID0gU2hhcmVhYmxlQml0bWFwOjpj
cmVhdGVTaGFyZWFibGUoaW1hZ2VTaXplLCB7IH0pOworICAgICAgICBpZiAoIWJpdG1hcCkgewor
ICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAgfQorICAgICAgICBhdXRvIGdyYXBoaWNzQ29u
dGV4dCA9IGJpdG1hcC0+Y3JlYXRlR3JhcGhpY3NDb250ZXh0KCk7CisgICAgICAgIGlmIChncmFw
aGljc0NvbnRleHQpIHsKKyAgICAgICAgICAgIGZsb2F0IHByaW50aW5nU2NhbGUgPSBzdGF0aWNf
Y2FzdDxmbG9hdD4oaW1hZ2VTaXplLndpZHRoKCkpIC8gcmVjdC53aWR0aCgpOworICAgICAgICAg
ICAgZ3JhcGhpY3NDb250ZXh0LT5zY2FsZShwcmludGluZ1NjYWxlKTsKKworI2lmIFBMQVRGT1JN
KE1BQykKKyAgICAgICAgICAgIGlmIChSZXRhaW5QdHI8UERGRG9jdW1lbnQ+IHBkZkRvY3VtZW50
ID0gcGRmRG9jdW1lbnRGb3JQcmludGluZ0ZyYW1lKGNvcmVGcmFtZSkpIHsKKyAgICAgICAgICAg
ICAgICBBU1NFUlQoIW1fcHJpbnRDb250ZXh0KTsKKyAgICAgICAgICAgICAgICBncmFwaGljc0Nv
bnRleHQtPnNjYWxlKEZsb2F0U2l6ZSgxLCAtMSkpOworICAgICAgICAgICAgICAgIGdyYXBoaWNz
Q29udGV4dC0+dHJhbnNsYXRlKDAsIC1yZWN0LmhlaWdodCgpKTsKKyAgICAgICAgICAgICAgICBk
cmF3UERGRG9jdW1lbnQoZ3JhcGhpY3NDb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKSwgcGRmRG9j
dW1lbnQuZ2V0KCksIHByaW50SW5mbywgcmVjdCk7CisgICAgICAgICAgICB9IGVsc2UKKyNlbmRp
ZgorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIG1fcHJpbnRDb250ZXh0LT5zcG9vbFJl
Y3QoKmdyYXBoaWNzQ29udGV4dCwgcmVjdCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKwor
ICAgICAgICBpbWFnZSA9IFdlYkltYWdlOjpjcmVhdGUoYml0bWFwLnJlbGVhc2VOb25OdWxsKCkp
OworICAgIH0KKyNlbmRpZgorCisgICAgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUgaGFuZGxlOwor
CisgICAgaWYgKGltYWdlKQorICAgICAgICBpbWFnZS0+Yml0bWFwKCkuY3JlYXRlSGFuZGxlKGhh
bmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihoYW5kbGUpOworfQorCit2b2lkIFdlYlBhZ2U6OmRyYXdQYWdlc1RvUERGKEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBjb25zdCBQcmludEluZm8mIHByaW50SW5mbywgdWludDMy
X3QgZmlyc3QsIHVpbnQzMl90IGNvdW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IElQ
Qzo6RGF0YVJlZmVyZW5jZSYpPiYmIGNhbGxiYWNrKQoreworICAgIFByaW50Q29udGV4dEFjY2Vz
c1Njb3BlIHNjb3BlIHsgKnRoaXMgfTsKKyAgICBSZXRhaW5QdHI8Q0ZNdXRhYmxlRGF0YVJlZj4g
cGRmUGFnZURhdGE7CisgICAgZHJhd1BhZ2VzVG9QREZJbXBsKGZyYW1lSUQsIHByaW50SW5mbywg
Zmlyc3QsIGNvdW50LCBwZGZQYWdlRGF0YSk7CisgICAgY2FsbGJhY2soeyBDRkRhdGFHZXRCeXRl
UHRyKHBkZlBhZ2VEYXRhLmdldCgpKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihDRkRhdGFHZXRMZW5n
dGgocGRmUGFnZURhdGEuZ2V0KCkpKSB9KTsKK30KKwordm9pZCBXZWJQYWdlOjpkcmF3UGFnZXNU
b1BERkltcGwoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFByaW50SW5mbyYgcHJpbnRJ
bmZvLCB1aW50MzJfdCBmaXJzdCwgdWludDMyX3QgY291bnQsIFJldGFpblB0cjxDRk11dGFibGVE
YXRhUmVmPiYgcGRmUGFnZURhdGEpCit7CisgICAgV2ViRnJhbWUqIGZyYW1lID0gV2ViUHJvY2Vz
czo6c2luZ2xldG9uKCkud2ViRnJhbWUoZnJhbWVJRCk7CisgICAgRnJhbWUqIGNvcmVGcmFtZSA9
IGZyYW1lID8gZnJhbWUtPmNvcmVGcmFtZSgpIDogMDsKKworICAgIHBkZlBhZ2VEYXRhID0gYWRv
cHRDRihDRkRhdGFDcmVhdGVNdXRhYmxlKDAsIDApKTsKKworI2lmIFVTRShDRykKKyAgICBpZiAo
Y29yZUZyYW1lKSB7CisKKyNpZiBQTEFURk9STShNQUMpCisgICAgICAgIEFTU0VSVChjb3JlRnJh
bWUtPmRvY3VtZW50KCktPnByaW50aW5nKCkgfHwgcGRmRG9jdW1lbnRGb3JQcmludGluZ0ZyYW1l
KGNvcmVGcmFtZSkpOworI2Vsc2UKKyAgICAgICAgQVNTRVJUKGNvcmVGcmFtZS0+ZG9jdW1lbnQo
KS0+cHJpbnRpbmcoKSk7CisjZW5kaWYKKworICAgICAgICAvLyBGSVhNRTogVXNlIENHRGF0YUNv
bnN1bWVyQ3JlYXRlIHdpdGggY2FsbGJhY2tzIHRvIGF2b2lkIGNvcHlpbmcgdGhlIGRhdGEuCisg
ICAgICAgIFJldGFpblB0cjxDR0RhdGFDb25zdW1lclJlZj4gcGRmRGF0YUNvbnN1bWVyID0gYWRv
cHRDRihDR0RhdGFDb25zdW1lckNyZWF0ZVdpdGhDRkRhdGEocGRmUGFnZURhdGEuZ2V0KCkpKTsK
KworICAgICAgICBDR1JlY3QgbWVkaWFCb3ggPSAobV9wcmludENvbnRleHQgJiYgbV9wcmludENv
bnRleHQtPnBhZ2VDb3VudCgpKSA/IG1fcHJpbnRDb250ZXh0LT5wYWdlUmVjdCgwKSA6IENHUmVj
dE1ha2UoMCwgMCwgcHJpbnRJbmZvLmF2YWlsYWJsZVBhcGVyV2lkdGgsIHByaW50SW5mby5hdmFp
bGFibGVQYXBlckhlaWdodCk7CisgICAgICAgIFJldGFpblB0cjxDR0NvbnRleHRSZWY+IGNvbnRl
eHQgPSBhZG9wdENGKENHUERGQ29udGV4dENyZWF0ZShwZGZEYXRhQ29uc3VtZXIuZ2V0KCksICZt
ZWRpYUJveCwgMCkpOworCisjaWYgUExBVEZPUk0oTUFDKQorICAgICAgICBpZiAoUmV0YWluUHRy
PFBERkRvY3VtZW50PiBwZGZEb2N1bWVudCA9IHBkZkRvY3VtZW50Rm9yUHJpbnRpbmdGcmFtZShj
b3JlRnJhbWUpKSB7CisgICAgICAgICAgICBBU1NFUlQoIW1fcHJpbnRDb250ZXh0KTsKKyAgICAg
ICAgICAgIGRyYXdQYWdlc1RvUERGRnJvbVBERkRvY3VtZW50KGNvbnRleHQuZ2V0KCksIHBkZkRv
Y3VtZW50LmdldCgpLCBwcmludEluZm8sIGZpcnN0LCBjb3VudCk7CisgICAgICAgIH0gZWxzZQor
I2VuZGlmCisgICAgICAgIHsKKyAgICAgICAgICAgIHNpemVfdCBwYWdlQ291bnQgPSBtX3ByaW50
Q29udGV4dC0+cGFnZUNvdW50KCk7CisgICAgICAgICAgICBmb3IgKHVpbnQzMl90IHBhZ2UgPSBm
aXJzdDsgcGFnZSA8IGZpcnN0ICsgY291bnQ7ICsrcGFnZSkgeworICAgICAgICAgICAgICAgIGlm
IChwYWdlID49IHBhZ2VDb3VudCkKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisKKyAgICAg
ICAgICAgICAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBwYWdlSW5mbyA9IGFkb3B0Q0Yo
Q0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZSgwLCAwLCAma0NGVHlwZURpY3Rpb25hcnlLZXlDYWxs
QmFja3MsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7CisgICAgICAgICAgICAg
ICAgQ0dQREZDb250ZXh0QmVnaW5QYWdlKGNvbnRleHQuZ2V0KCksIHBhZ2VJbmZvLmdldCgpKTsK
KworICAgICAgICAgICAgICAgIEdyYXBoaWNzQ29udGV4dENHIGN0eChjb250ZXh0LmdldCgpKTsK
KyAgICAgICAgICAgICAgICBjdHguc2NhbGUoRmxvYXRTaXplKDEsIC0xKSk7CisgICAgICAgICAg
ICAgICAgY3R4LnRyYW5zbGF0ZSgwLCAtbV9wcmludENvbnRleHQtPnBhZ2VSZWN0KHBhZ2UpLmhl
aWdodCgpKTsKKyAgICAgICAgICAgICAgICBtX3ByaW50Q29udGV4dC0+c3Bvb2xQYWdlKGN0eCwg
cGFnZSwgbV9wcmludENvbnRleHQtPnBhZ2VSZWN0KHBhZ2UpLndpZHRoKCkpOworCisgICAgICAg
ICAgICAgICAgQ0dQREZDb250ZXh0RW5kUGFnZShjb250ZXh0LmdldCgpKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfQorICAgICAgICBDR1BERkNvbnRleHRDbG9zZShjb250ZXh0LmdldCgpKTsK
KyAgICB9CisjZW5kaWYKK30KKworI2VsaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQYWdlOjpk
cmF3UGFnZXNGb3JQcmludGluZyhGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgUHJpbnRJ
bmZvJiBwcmludEluZm8sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGJlZ2luUHJpbnRpbmco
ZnJhbWVJRCwgcHJpbnRJbmZvKTsKKyAgICBpZiAobV9wcmludENvbnRleHQgJiYgbV9wcmludE9w
ZXJhdGlvbikgeworICAgICAgICBtX3ByaW50T3BlcmF0aW9uLT5zdGFydFByaW50KG1fcHJpbnRD
b250ZXh0LmdldCgpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21w
bGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpIG11dGFibGUgeworICAgICAgICAgICAgbV9wcmludE9w
ZXJhdGlvbiA9IG51bGxwdHI7CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihlcnJvcik7
CisgICAgICAgIH0pOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNvbXBsZXRpb25IYW5k
bGVyKHsgfSk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKSAmJiAhRU5B
QkxFKFVJX1BST0NFU1NfUERGX0hVRCkKK3ZvaWQgV2ViUGFnZTo6c2F2ZVBERlRvRmlsZUluRG93
bmxvYWRzRm9sZGVyKGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkRmlsZW5hbWUsIGNvbnN0IFVSTCYg
b3JpZ2luYXRpbmdVUkwsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIHVuc2lnbmVkIGxvbmcgc2l6ZSkK
K3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNhdmVQREZUb0ZpbGVJbkRvd25s
b2Fkc0ZvbGRlcihzdWdnZXN0ZWRGaWxlbmFtZSwgb3JpZ2luYXRpbmdVUkwsIElQQzo6RGF0YVJl
ZmVyZW5jZShkYXRhLCBzaXplKSkpOworfQorCit2b2lkIFdlYlBhZ2U6OnNhdmVQREZUb1RlbXBv
cmFyeUZvbGRlckFuZE9wZW5XaXRoTmF0aXZlQXBwbGljYXRpb24oY29uc3QgU3RyaW5nJiBzdWdn
ZXN0ZWRGaWxlbmFtZSwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgY29uc3QgdWludDhfdCog
ZGF0YSwgdW5zaWduZWQgbG9uZyBzaXplLCBjb25zdCBTdHJpbmcmIHBkZlVVSUQpCit7CisgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTYXZlUERGVG9UZW1wb3JhcnlGb2xkZXJBbmRP
cGVuV2l0aE5hdGl2ZUFwcGxpY2F0aW9uKHN1Z2dlc3RlZEZpbGVuYW1lLCBmcmFtZUluZm8sIElQ
Qzo6RGF0YVJlZmVyZW5jZShkYXRhLCBzaXplKSwgcGRmVVVJRCkpOworfQorI2VuZGlmCisKK3Zv
aWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQoreworICAgIGlmICghcmVx
dWVzdC51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGlmIChtX21haW5GcmFtZVByb2dyZXNzQ29tcGxldGVkICYmICFVc2VyR2VzdHVyZUluZGlj
YXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCisgICAgICAgIHJldHVybjsKKworICAgIEFT
U0VSVCghbV90cmFja2VkTmV0d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKTsKKyAgICBib29sIHdhc0VtcHR5ID0gbV90cmFja2VkTmV0d29ya1Jlc291
cmNlUmVxdWVzdElkZW50aWZpZXJzLmlzRW1wdHkoKTsKKyAgICBtX3RyYWNrZWROZXR3b3JrUmVz
b3VyY2VSZXF1ZXN0SWRlbnRpZmllcnMuYWRkKGlkZW50aWZpZXIpOworICAgIGlmICh3YXNFbXB0
eSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXROZXR3b3JrUmVxdWVz
dHNJblByb2dyZXNzKHRydWUpKTsKK30KKwordm9pZCBXZWJQYWdlOjpyZW1vdmVSZXNvdXJjZVJl
cXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQoreworICAgIGlmICghbV90cmFja2VkTmV0
d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzLnJlbW92ZShpZGVudGlmaWVyKSkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgaWYgKG1fdHJhY2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJZGVu
dGlmaWVycy5pc0VtcHR5KCkpCisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
U2V0TmV0d29ya1JlcXVlc3RzSW5Qcm9ncmVzcyhmYWxzZSkpOworfQorCit2b2lkIFdlYlBhZ2U6
OnNldE1lZGlhVm9sdW1lKGZsb2F0IHZvbHVtZSkKK3sKKyAgICBtX3BhZ2UtPnNldE1lZGlhVm9s
dW1lKHZvbHVtZSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0TXV0ZWQoTWVkaWFQcm9kdWNlcjo6
TXV0ZWRTdGF0ZUZsYWdzIHN0YXRlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgbV9wYWdlLT5zZXRNdXRlZChzdGF0ZSk7CisgICAgY29tcGxl
dGlvbkhhbmRsZXIoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzdG9wTWVkaWFDYXB0dXJlKE1lZGlh
UHJvZHVjZXI6Ok1lZGlhQ2FwdHVyZUtpbmQga2luZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCisgICAg
bV9wYWdlLT5zdG9wTWVkaWFDYXB0dXJlKGtpbmQpOworI2VuZGlmCisgICAgY29tcGxldGlvbkhh
bmRsZXIoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRNYXlTdGFydE1lZGlhV2hlbkluV2luZG93
KGJvb2wgbWF5U3RhcnRNZWRpYSkKK3sKKyAgICBpZiAobWF5U3RhcnRNZWRpYSA9PSBtX21heVN0
YXJ0TWVkaWFXaGVuSW5XaW5kb3cpCisgICAgICAgIHJldHVybjsKKworICAgIG1fbWF5U3RhcnRN
ZWRpYVdoZW5JbldpbmRvdyA9IG1heVN0YXJ0TWVkaWE7CisgICAgaWYgKG1fbWF5U3RhcnRNZWRp
YVdoZW5JbldpbmRvdyAmJiBtX3BhZ2UtPmlzSW5XaW5kb3coKSkKKyAgICAgICAgbV9zZXRDYW5T
dGFydE1lZGlhVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cnVu
TW9kYWwoKQoreworICAgIGlmIChtX2lzQ2xvc2VkKQorICAgICAgICByZXR1cm47CisgICAgaWYg
KG1faXNSdW5uaW5nTW9kYWwpCisgICAgICAgIHJldHVybjsKKworICAgIG1faXNSdW5uaW5nTW9k
YWwgPSB0cnVlOworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6UnVuTW9kYWwoKSk7
CisjaWYgQVNTRVJUX0VOQUJMRUQKKyAgICBSZWY8V2ViUGFnZT4gcHJvdGVjdG9yKCp0aGlzKTsK
KyNlbmRpZgorICAgIFJ1bkxvb3A6OnJ1bigpOworICAgIEFTU0VSVCghbV9pc1J1bm5pbmdNb2Rh
bCk7Cit9CisKK2Jvb2wgV2ViUGFnZTo6Y2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit7CisgICAgaWYgKExlZ2FjeVNjaGVtZVJlZ2lzdHJ5
OjpzaG91bGRMb2FkVVJMU2NoZW1lQXNFbXB0eURvY3VtZW50KHJlcXVlc3QudXJsKCkucHJvdG9j
b2woKS50b1N0cmluZ1dpdGhvdXRDb3B5aW5nKCkpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKwor
ICAgIGlmIChyZXF1ZXN0LnVybCgpLnByb3RvY29sSXNCbG9iKCkpCisgICAgICAgIHJldHVybiB0
cnVlOworCisgICAgcmV0dXJuIHBsYXRmb3JtQ2FuSGFuZGxlUmVxdWVzdChyZXF1ZXN0KTsKK30K
KworI2lmIFBMQVRGT1JNKENPQ09BKQordm9pZCBXZWJQYWdlOjpoYW5kbGVBbHRlcm5hdGl2ZVRl
eHRVSVJlc3VsdChjb25zdCBTdHJpbmcmIHJlc3VsdCkKK3sKKyAgICBSZWYgZnJhbWUgPSBDaGVj
a2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsK
KyAgICBmcmFtZS0+ZWRpdG9yKCkuaGFuZGxlQWx0ZXJuYXRpdmVUZXh0VUlSZXN1bHQocmVzdWx0
KTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6OnNpbXVsYXRlTW91c2VEb3duKGludCBidXR0
b24sIFdlYkNvcmU6OkludFBvaW50IHBvc2l0aW9uLCBpbnQgY2xpY2tDb3VudCwgV0tFdmVudE1v
ZGlmaWVycyBtb2RpZmllcnMsIFdhbGxUaW1lIHRpbWUpCit7CisgICAgc3RhdGljX2Fzc2VydChz
aXplb2YoV0tFdmVudE1vZGlmaWVycykgPj0gc2l6ZW9mKFdlYkV2ZW50OjpNb2RpZmllciksICJX
S0V2ZW50TW9kaWZpZXJzIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIHRoZSBzaXpl
IG9mIFdlYkV2ZW50OjpNb2RpZmllciIpOworICAgIG1vdXNlRXZlbnQoV2ViTW91c2VFdmVudChX
ZWJNb3VzZUV2ZW50OjpNb3VzZURvd24sIHN0YXRpY19jYXN0PFdlYk1vdXNlRXZlbnQ6OkJ1dHRv
bj4oYnV0dG9uKSwgMCwgcG9zaXRpb24sIHBvc2l0aW9uLCAwLCAwLCAwLCBjbGlja0NvdW50LCBP
cHRpb25TZXQ8V2ViRXZlbnQ6Ok1vZGlmaWVyPjo6ZnJvbVJhdyhtb2RpZmllcnMpLCB0aW1lLCBX
ZWJDb3JlOjpGb3JjZUF0Q2xpY2ssIFdlYk1vdXNlRXZlbnQ6Ok5vVGFwKSwgc3RkOjpudWxsb3B0
KTsKK30KKwordm9pZCBXZWJQYWdlOjpzaW11bGF0ZU1vdXNlVXAoaW50IGJ1dHRvbiwgV2ViQ29y
ZTo6SW50UG9pbnQgcG9zaXRpb24sIGludCBjbGlja0NvdW50LCBXS0V2ZW50TW9kaWZpZXJzIG1v
ZGlmaWVycywgV2FsbFRpbWUgdGltZSkKK3sKKyAgICBzdGF0aWNfYXNzZXJ0KHNpemVvZihXS0V2
ZW50TW9kaWZpZXJzKSA+PSBzaXplb2YoV2ViRXZlbnQ6Ok1vZGlmaWVyKSwgIldLRXZlbnRNb2Rp
ZmllcnMgbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIHNpemUgb2YgV2ViRXZl
bnQ6Ok1vZGlmaWVyIik7CisgICAgbW91c2VFdmVudChXZWJNb3VzZUV2ZW50KFdlYk1vdXNlRXZl
bnQ6Ok1vdXNlVXAsIHN0YXRpY19jYXN0PFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbj4oYnV0dG9uKSwg
MCwgcG9zaXRpb24sIHBvc2l0aW9uLCAwLCAwLCAwLCBjbGlja0NvdW50LCBPcHRpb25TZXQ8V2Vi
RXZlbnQ6Ok1vZGlmaWVyPjo6ZnJvbVJhdyhtb2RpZmllcnMpLCB0aW1lLCBXZWJDb3JlOjpGb3Jj
ZUF0Q2xpY2ssIFdlYk1vdXNlRXZlbnQ6Ok5vVGFwKSwgc3RkOjpudWxsb3B0KTsKK30KKwordm9p
ZCBXZWJQYWdlOjpzaW11bGF0ZU1vdXNlTW90aW9uKFdlYkNvcmU6OkludFBvaW50IHBvc2l0aW9u
LCBXYWxsVGltZSB0aW1lKQoreworICAgIG1vdXNlRXZlbnQoV2ViTW91c2VFdmVudChXZWJNb3Vz
ZUV2ZW50OjpNb3VzZU1vdmUsIFdlYk1vdXNlRXZlbnQ6Ok5vQnV0dG9uLCAwLCBwb3NpdGlvbiwg
cG9zaXRpb24sIDAsIDAsIDAsIDAsIE9wdGlvblNldDxXZWJFdmVudDo6TW9kaWZpZXI+IHsgfSwg
dGltZSwgMCwgV2ViTW91c2VFdmVudDo6Tm9UYXApLCBzdGQ6Om51bGxvcHQpOworfQorCit2b2lk
IFdlYlBhZ2U6OnNldENvbXBvc2l0aW9uRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIGNvbXBvc2l0
aW9uU3RyaW5nLCB1aW50NjRfdCBmcm9tLCB1aW50NjRfdCBsZW5ndGgsIGJvb2wgc3VwcHJlc3NV
bmRlcmxpbmUsIGNvbnN0IFZlY3RvcjxDb21wb3NpdGlvbkhpZ2hsaWdodD4mIGhpZ2hsaWdodHMp
Cit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigp
KS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAgaWYgKCFmcmFtZS0+ZWRpdG9yKCkuY2FuRWRp
dCgpKQorICAgICAgICByZXR1cm47CisKKyAgICBWZWN0b3I8Q29tcG9zaXRpb25VbmRlcmxpbmU+
IHVuZGVybGluZXM7CisgICAgaWYgKCFzdXBwcmVzc1VuZGVybGluZSkKKyAgICAgICAgdW5kZXJs
aW5lcy5hcHBlbmQoQ29tcG9zaXRpb25VbmRlcmxpbmUoMCwgY29tcG9zaXRpb25TdHJpbmcubGVu
Z3RoKCksIENvbXBvc2l0aW9uVW5kZXJsaW5lQ29sb3I6OlRleHRDb2xvciwgQ29sb3IoQ29sb3I6
OmJsYWNrKSwgZmFsc2UpKTsKKworICAgIGZyYW1lLT5lZGl0b3IoKS5zZXRDb21wb3NpdGlvbihj
b21wb3NpdGlvblN0cmluZywgdW5kZXJsaW5lcywgaGlnaGxpZ2h0cywgZnJvbSwgZnJvbSArIGxl
bmd0aCk7Cit9CisKK2Jvb2wgV2ViUGFnZTo6aGFzQ29tcG9zaXRpb25Gb3JUZXN0aW5nKCkKK3sK
KyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5m
b2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICByZXR1cm4gZnJhbWUtPmVkaXRvcigpLmhhc0NvbXBv
c2l0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y29uZmlybUNvbXBvc2l0aW9uRm9yVGVzdGlu
Zyhjb25zdCBTdHJpbmcmIGNvbXBvc2l0aW9uU3RyaW5nKQoreworICAgIFJlZiBmcmFtZSA9IENo
ZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgp
OworICAgIGlmICghZnJhbWUtPmVkaXRvcigpLmNhbkVkaXQoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgaWYgKGNvbXBvc2l0aW9uU3RyaW5nLmlzTnVsbCgpKQorICAgICAgICBmcmFtZS0+ZWRp
dG9yKCkuY29uZmlybUNvbXBvc2l0aW9uKCk7CisgICAgZnJhbWUtPmVkaXRvcigpLmNvbmZpcm1D
b21wb3NpdGlvbihjb21wb3NpdGlvblN0cmluZyk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6d2hlZWxF
dmVudEhhbmRsZXJzQ2hhbmdlZChib29sIGhhc0hhbmRsZXJzKQoreworICAgIGlmIChtX2hhc1do
ZWVsRXZlbnRIYW5kbGVycyA9PSBoYXNIYW5kbGVycykKKyAgICAgICAgcmV0dXJuOworCisgICAg
bV9oYXNXaGVlbEV2ZW50SGFuZGxlcnMgPSBoYXNIYW5kbGVyczsKKyAgICByZWNvbXB1dGVTaG9y
dENpcmN1aXRIb3Jpem9udGFsV2hlZWxFdmVudHNTdGF0ZSgpOworfQorCitzdGF0aWMgYm9vbCBo
YXNFbmFibGVkSG9yaXpvbnRhbFNjcm9sbGJhcihTY3JvbGxhYmxlQXJlYSogc2Nyb2xsYWJsZUFy
ZWEpCit7CisgICAgaWYgKFNjcm9sbGJhciogc2Nyb2xsYmFyID0gc2Nyb2xsYWJsZUFyZWEtPmhv
cml6b250YWxTY3JvbGxiYXIoKSkKKyAgICAgICAgcmV0dXJuIHNjcm9sbGJhci0+ZW5hYmxlZCgp
OworCisgICAgcmV0dXJuIGZhbHNlOworfQorCitzdGF0aWMgYm9vbCBwYWdlQ29udGFpbnNBbnlI
b3Jpem9udGFsU2Nyb2xsYmFycyhGcmFtZSogbWFpbkZyYW1lKQoreworICAgIGlmIChGcmFtZVZp
ZXcqIGZyYW1lVmlldyA9IG1haW5GcmFtZS0+dmlldygpKSB7CisgICAgICAgIGlmIChoYXNFbmFi
bGVkSG9yaXpvbnRhbFNjcm9sbGJhcihmcmFtZVZpZXcpKQorICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CisgICAgfQorCisgICAgZm9yIChGcmFtZSogZnJhbWUgPSBtYWluRnJhbWU7IGZyYW1lOyBm
cmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0KCkpIHsKKyAgICAgICAgRnJhbWVWaWV3
KiBmcmFtZVZpZXcgPSBmcmFtZS0+dmlldygpOworICAgICAgICBpZiAoIWZyYW1lVmlldykKKyAg
ICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIGNvbnN0IEhhc2hTZXQ8U2Nyb2xsYWJsZUFy
ZWEqPiogc2Nyb2xsYWJsZUFyZWFzID0gZnJhbWVWaWV3LT5zY3JvbGxhYmxlQXJlYXMoKTsKKyAg
ICAgICAgaWYgKCFzY3JvbGxhYmxlQXJlYXMpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAg
ICAgICBmb3IgKEhhc2hTZXQ8U2Nyb2xsYWJsZUFyZWEqPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBz
Y3JvbGxhYmxlQXJlYXMtPmJlZ2luKCksIGVuZCA9IHNjcm9sbGFibGVBcmVhcy0+ZW5kKCk7IGl0
ICE9IGVuZDsgKytpdCkgeworICAgICAgICAgICAgU2Nyb2xsYWJsZUFyZWEqIHNjcm9sbGFibGVB
cmVhID0gKml0OworICAgICAgICAgICAgaWYgKCFzY3JvbGxhYmxlQXJlYS0+c2Nyb2xsYmFyc0Nh
bkJlQWN0aXZlKCkpCisgICAgICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgICAgIGlm
IChoYXNFbmFibGVkSG9yaXpvbnRhbFNjcm9sbGJhcihzY3JvbGxhYmxlQXJlYSkpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVjb21wdXRlU2hvcnRDaXJjdWl0SG9yaXpvbnRhbFdo
ZWVsRXZlbnRzU3RhdGUoKQoreworICAgIGJvb2wgY2FuU2hvcnRDaXJjdWl0SG9yaXpvbnRhbFdo
ZWVsRXZlbnRzID0gIW1faGFzV2hlZWxFdmVudEhhbmRsZXJzOworCisgICAgaWYgKGNhblNob3J0
Q2lyY3VpdEhvcml6b250YWxXaGVlbEV2ZW50cykgeworICAgICAgICAvLyBDaGVjayBpZiB3ZSBo
YXZlIGFueSBob3Jpem9udGFsIHNjcm9sbCBiYXJzIG9uIHRoZSBwYWdlLgorICAgICAgICBpZiAo
cGFnZUNvbnRhaW5zQW55SG9yaXpvbnRhbFNjcm9sbGJhcnMobWFpbkZyYW1lKCkpKQorICAgICAg
ICAgICAgY2FuU2hvcnRDaXJjdWl0SG9yaXpvbnRhbFdoZWVsRXZlbnRzID0gZmFsc2U7CisgICAg
fQorCisgICAgaWYgKG1fY2FuU2hvcnRDaXJjdWl0SG9yaXpvbnRhbFdoZWVsRXZlbnRzID09IGNh
blNob3J0Q2lyY3VpdEhvcml6b250YWxXaGVlbEV2ZW50cykKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV9jYW5TaG9ydENpcmN1aXRIb3Jpem9udGFsV2hlZWxFdmVudHMgPSBjYW5TaG9ydENpcmN1
aXRIb3Jpem9udGFsV2hlZWxFdmVudHM7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRDYW5TaG9ydENpcmN1aXRIb3Jpem9udGFsV2hlZWxFdmVudHMobV9jYW5TaG9ydENpcmN1
aXRIb3Jpem9udGFsV2hlZWxFdmVudHMpKTsKK30KKworRnJhbWUqIFdlYlBhZ2U6Om1haW5GcmFt
ZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcGFnZSA/ICZtX3BhZ2UtPm1haW5GcmFtZSgpIDog
bnVsbHB0cjsKK30KKworRnJhbWVWaWV3KiBXZWJQYWdlOjptYWluRnJhbWVWaWV3KCkgY29uc3QK
K3sKKyAgICBpZiAoRnJhbWUqIGZyYW1lID0gbWFpbkZyYW1lKCkpCisgICAgICAgIHJldHVybiBm
cmFtZS0+dmlldygpOworICAgIAorICAgIHJldHVybiBudWxscHRyOworfQorCitib29sIFdlYlBh
Z2U6OmNhblBsdWdpbkhhbmRsZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQoreworI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQorICAgIHVpbnQzMl90IHBs
dWdpbkxvYWRQb2xpY3k7CisgICAgYm9vbCBhbGxvd09ubHlBcHBsaWNhdGlvblBsdWdpbnMgPSAh
bV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT5hcmVQbHVnaW5zRW5hYmxlZCgpOworCisgICAgdWlu
dDY0X3QgcGx1Z2luUHJvY2Vzc1Rva2VuOworICAgIFN0cmluZyBuZXdNSU1FVHlwZTsKKyAgICBT
dHJpbmcgdW5hdmFpbGFiaWxpdHlEZXNjcmlwdGlvbjsKKyAgICBib29sIGlzVW5zdXBwb3J0ZWQg
PSBmYWxzZTsKKyAgICBpZiAoIXNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkZpbmRQ
bHVnaW4ocmVzcG9uc2UubWltZVR5cGUoKSwgcmVzcG9uc2UudXJsKCkuc3RyaW5nKCksIHJlc3Bv
bnNlLnVybCgpLnN0cmluZygpLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgYWxsb3dPbmx5QXBw
bGljYXRpb25QbHVnaW5zKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RmluZFBsdWdpbjo6UmVw
bHkocGx1Z2luUHJvY2Vzc1Rva2VuLCBuZXdNSU1FVHlwZSwgcGx1Z2luTG9hZFBvbGljeSwgdW5h
dmFpbGFiaWxpdHlEZXNjcmlwdGlvbiwgaXNVbnN1cHBvcnRlZCkpKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBBU1NFUlQoIWlzVW5zdXBwb3J0ZWQpOworICAgIGJvb2wgaXNCbG9ja2Vk
UGx1Z2luID0gKHBsdWdpbkxvYWRQb2xpY3kgPT0gUGx1Z2luTW9kdWxlQmxvY2tlZEZvclNlY3Vy
aXR5KSB8fCAocGx1Z2luTG9hZFBvbGljeSA9PSBQbHVnaW5Nb2R1bGVCbG9ja2VkRm9yQ29tcGF0
aWJpbGl0eSk7CisgICAgcmV0dXJuICFpc1Vuc3VwcG9ydGVkICYmICFpc0Jsb2NrZWRQbHVnaW4g
JiYgcGx1Z2luUHJvY2Vzc1Rva2VuOworI2Vsc2UKKyAgICBVTlVTRURfUEFSQU0ocmVzcG9uc2Up
OworICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQorCitib29sIFdlYlBhZ2U6OnNob3VsZFVz
ZUN1c3RvbUNvbnRlbnRQcm92aWRlckZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlKQoreworICAgIGF1dG8mIG1pbWVUeXBlID0gcmVzcG9uc2UubWltZVR5cGUoKTsK
KyAgICBpZiAobWltZVR5cGUuaXNOdWxsKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAg
IC8vIElmIGEgcGx1Zy1pbiBleGlzdHMgdGhhdCBjbGFpbXMgdG8gc3VwcG9ydCB0aGlzIHJlc3Bv
bnNlLCBpdCBzaG91bGQgdGFrZSBwcmVjZWRlbmNlIG92ZXIgdGhlIGN1c3RvbSBjb250ZW50IHBy
b3ZpZGVyLgorICAgIC8vIGNhblBsdWdpbkhhbmRsZVJlc3BvbnNlKCkgaXMgY2FsbGVkIGxhc3Qg
YmVjYXVzZSBpdCBwZXJmb3JtcyBzeW5jaHJvbm91cyBJUEMuCisgICAgcmV0dXJuIG1fbWltZVR5
cGVzV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnMuY29udGFpbnMobWltZVR5cGUpICYmICFjYW5Q
bHVnaW5IYW5kbGVSZXNwb25zZShyZXNwb25zZSk7Cit9CisKKyNpZiBQTEFURk9STShDT0NPQSkK
Kwordm9pZCBXZWJQYWdlOjpzZXRUZXh0QXN5bmMoY29uc3QgU3RyaW5nJiB0ZXh0KQoreworICAg
IFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3Vz
ZWRPck1haW5GcmFtZSgpOworICAgIGlmIChmcmFtZS0+c2VsZWN0aW9uKCkuc2VsZWN0aW9uKCku
aXNDb250ZW50RWRpdGFibGUoKSkgeworICAgICAgICBVc2VyVHlwaW5nR2VzdHVyZUluZGljYXRv
ciBpbmRpY2F0b3IoZnJhbWUuZ2V0KCkpOworICAgICAgICBmcmFtZS0+c2VsZWN0aW9uKCkuc2Vs
ZWN0QWxsKCk7CisgICAgICAgIGlmICh0ZXh0LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIGZyYW1l
LT5lZGl0b3IoKS5kZWxldGVTZWxlY3Rpb25XaXRoU21hcnREZWxldGUoZmFsc2UpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCkuaW5zZXJ0VGV4dCh0ZXh0LCBudWxs
cHRyLCBUZXh0RXZlbnRJbnB1dEtleWJvYXJkKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor
ICAgIGlmIChpczxIVE1MSW5wdXRFbGVtZW50PihtX2ZvY3VzZWRFbGVtZW50LmdldCgpKSkgewor
ICAgICAgICBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PigqbV9mb2N1c2VkRWxlbWVudCkuc2V0
VmFsdWVGb3JVc2VyKHRleHQpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6aW5zZXJ0VGV4dEFzeW5jKGNvbnN0
IFN0cmluZyYgdGV4dCwgY29uc3QgRWRpdGluZ1JhbmdlJiByZXBsYWNlbWVudEVkaXRpbmdSYW5n
ZSwgSW5zZXJ0VGV4dE9wdGlvbnMmJiBvcHRpb25zKQoreworICAgIHBsYXRmb3JtV2lsbFBlcmZv
cm1FZGl0aW5nQ29tbWFuZCgpOworCisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2Ut
PmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisKKyAgICBVc2VyR2Vz
dHVyZUluZGljYXRvciBnZXN0dXJlSW5kaWNhdG9yIHsgb3B0aW9ucy5wcm9jZXNzaW5nVXNlckdl
c3R1cmUgPyBQcm9jZXNzaW5nVXNlckdlc3R1cmUgOiBOb3RQcm9jZXNzaW5nVXNlckdlc3R1cmUs
IGZyYW1lLT5kb2N1bWVudCgpIH07CisKKyAgICBib29sIHJlcGxhY2VzVGV4dCA9IGZhbHNlOwor
ICAgIGlmIChyZXBsYWNlbWVudEVkaXRpbmdSYW5nZS5sb2NhdGlvbiAhPSBub3RGb3VuZCkgewor
ICAgICAgICBpZiAoYXV0byByZXBsYWNlbWVudFJhbmdlID0gRWRpdGluZ1JhbmdlOjp0b1Jhbmdl
KGZyYW1lLCByZXBsYWNlbWVudEVkaXRpbmdSYW5nZSwgb3B0aW9ucy5lZGl0aW5nUmFuZ2VJc1Jl
bGF0aXZlVG8pKSB7CisgICAgICAgICAgICBTZXRGb3JTY29wZTxib29sPiBpc1NlbGVjdGluZ1Rl
eHRXaGlsZUluc2VydGluZ0FzeW5jaHJvbm91c2x5KG1faXNTZWxlY3RpbmdUZXh0V2hpbGVJbnNl
cnRpbmdBc3luY2hyb25vdXNseSwgb3B0aW9ucy5zdXBwcmVzc1NlbGVjdGlvblVwZGF0ZSk7Cisg
ICAgICAgICAgICBmcmFtZS0+c2VsZWN0aW9uKCkuc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rp
b24oKnJlcGxhY2VtZW50UmFuZ2UpKTsKKyAgICAgICAgICAgIHJlcGxhY2VzVGV4dCA9IHJlcGxh
Y2VtZW50RWRpdGluZ1JhbmdlLmxlbmd0aDsKKyAgICAgICAgfQorICAgIH0KKyAgICAKKyAgICBp
ZiAob3B0aW9ucy5yZWdpc3RlclVuZG9Hcm91cCkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpSZWdpc3Rlckluc2VydGlvblVuZG9Hcm91cGluZygpKTsKKworICAgIFJlZlB0
ciBmb2N1c2VkRWxlbWVudCA9IGZyYW1lLT5kb2N1bWVudCgpID8gZnJhbWUtPmRvY3VtZW50KCkt
PmZvY3VzZWRFbGVtZW50KCkgOiBudWxscHRyOworICAgIGlmIChmb2N1c2VkRWxlbWVudCAmJiBv
cHRpb25zLnNob3VsZFNpbXVsYXRlS2V5Ym9hcmRJbnB1dCkKKyAgICAgICAgZm9jdXNlZEVsZW1l
bnQtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkua2V5ZG93bkV2ZW50
LCBFdmVudDo6Q2FuQnViYmxlOjpZZXMsIEV2ZW50OjpJc0NhbmNlbGFibGU6OlllcykpOworCisg
ICAgaWYgKCFmcmFtZS0+ZWRpdG9yKCkuaGFzQ29tcG9zaXRpb24oKSkgeworICAgICAgICAvLyBB
biBpbnNlcnRUZXh0OiBtaWdodCBiZSBoYW5kbGVkIGJ5IG90aGVyIHJlc3BvbmRlcnMgaW4gdGhl
IGNoYWluIGlmIHdlIGRvbid0IGhhbmRsZSBpdC4KKyAgICAgICAgLy8gT25lIGV4YW1wbGUgaXMg
c3BhY2UgYmFyIHRoYXQgcmVzdWx0cyBpbiBzY3JvbGxpbmcgZG93biB0aGUgcGFnZS4KKyAgICAg
ICAgZnJhbWUtPmVkaXRvcigpLmluc2VydFRleHQodGV4dCwgbnVsbHB0ciwgcmVwbGFjZXNUZXh0
ID8gVGV4dEV2ZW50SW5wdXRBdXRvY29tcGxldGlvbiA6IFRleHRFdmVudElucHV0S2V5Ym9hcmQp
OworICAgIH0gZWxzZQorICAgICAgICBmcmFtZS0+ZWRpdG9yKCkuY29uZmlybUNvbXBvc2l0aW9u
KHRleHQpOworCisgICAgaWYgKGZvY3VzZWRFbGVtZW50ICYmIG9wdGlvbnMuc2hvdWxkU2ltdWxh
dGVLZXlib2FyZElucHV0KSB7CisgICAgICAgIGZvY3VzZWRFbGVtZW50LT5kaXNwYXRjaEV2ZW50
KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmtleXVwRXZlbnQsIEV2ZW50OjpDYW5CdWJibGU6
OlllcywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6WWVzKSk7CisgICAgICAgIGZvY3VzZWRFbGVtZW50
LT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmNoYW5nZUV2ZW50LCBF
dmVudDo6Q2FuQnViYmxlOjpZZXMsIEV2ZW50OjpJc0NhbmNlbGFibGU6OlllcykpOworICAgIH0K
K30KKwordm9pZCBXZWJQYWdlOjpoYXNNYXJrZWRUZXh0KENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgY29tcGxldGlvbkhhbmRsZXIoQ2hl
Y2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCku
ZWRpdG9yKCkuaGFzQ29tcG9zaXRpb24oKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Z2V0TWFya2Vk
UmFuZ2VBc3luYyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEVkaXRpbmdSYW5nZSYpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9wYWdl
LT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGNvbXBsZXRp
b25IYW5kbGVyKEVkaXRpbmdSYW5nZTo6ZnJvbVJhbmdlKGZyYW1lLCBmcmFtZS0+ZWRpdG9yKCku
Y29tcG9zaXRpb25SYW5nZSgpKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Z2V0U2VsZWN0ZWRSYW5n
ZUFzeW5jKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRWRpdGluZ1JhbmdlJik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZv
Y3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAgY29tcGxldGlvbkhh
bmRsZXIoRWRpdGluZ1JhbmdlOjpmcm9tUmFuZ2UoZnJhbWUsIGZyYW1lLT5zZWxlY3Rpb24oKS5z
ZWxlY3Rpb24oKS50b05vcm1hbGl6ZWRSYW5nZSgpKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2hh
cmFjdGVySW5kZXhGb3JQb2ludEFzeW5jKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb2ludCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCh1aW50NjRfdCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7
CisgICAgY29uc3RleHByIE9wdGlvblNldDxIaXRUZXN0UmVxdWVzdDo6VHlwZT4gaGl0VHlwZSB7
IEhpdFRlc3RSZXF1ZXN0OjpUeXBlOjpSZWFkT25seSwgSGl0VGVzdFJlcXVlc3Q6OlR5cGU6OkFj
dGl2ZSwgSGl0VGVzdFJlcXVlc3Q6OlR5cGU6OkRpc2FsbG93VXNlckFnZW50U2hhZG93Q29udGVu
dCwgIEhpdFRlc3RSZXF1ZXN0OjpUeXBlOjpBbGxvd0NoaWxkRnJhbWVDb250ZW50IH07CisgICAg
YXV0byByZXN1bHQgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLmV2ZW50SGFuZGxlcigpLmhpdFRlc3RS
ZXN1bHRBdFBvaW50KHBvaW50LCBoaXRUeXBlKTsKKyAgICBSZWYgZnJhbWUgPSByZXN1bHQuaW5u
ZXJOb25TaGFyZWROb2RlKCkgPyAqcmVzdWx0LmlubmVyTm9kZUZyYW1lKCkgOiBDaGVja2VkUmVm
KG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBh
dXRvIHJhbmdlID0gZnJhbWUtPnJhbmdlRm9yUG9pbnQocmVzdWx0LnJvdW5kZWRQb2ludEluSW5u
ZXJOb2RlRnJhbWUoKSk7CisgICAgYXV0byBlZGl0aW5nUmFuZ2UgPSBFZGl0aW5nUmFuZ2U6OmZy
b21SYW5nZShmcmFtZSwgcmFuZ2UpOworICAgIGNvbXBsZXRpb25IYW5kbGVyKGVkaXRpbmdSYW5n
ZS5sb2NhdGlvbik7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Zmlyc3RSZWN0Rm9yQ2hhcmFjdGVyUmFu
Z2VBc3luYyhjb25zdCBFZGl0aW5nUmFuZ2UmIGVkaXRpbmdSYW5nZSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgRWRpdGluZ1JhbmdlJik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgUmVmIGZyYW1lID0gQ2hlY2tlZFJlZihtX3BhZ2Ut
PmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7CisgICAgYXV0byByYW5n
ZSA9IEVkaXRpbmdSYW5nZTo6dG9SYW5nZShmcmFtZSwgZWRpdGluZ1JhbmdlKTsKKyAgICBpZiAo
IXJhbmdlKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoeyB9LCB7IH0pOworCisg
ICAgLy8gRklYTUU6IFBhc3MgYW4gRWRpdGluZ1JhbmdlIHRoYXQgbWF0Y2hlcyB0aGUgcmFuZ2Ug
b2YgdGhlIGZpcnN0IHJlY3QsIHJhdGhlciB0aGFuIHRoZSBlbnRpcmUgcGFzc2VkLWluIHJhbmdl
PworICAgIGF1dG8gcmVjdCA9IFJlZlB0cihmcmFtZS0+dmlldygpKS0+Y29udGVudHNUb1dpbmRv
dyhmcmFtZS0+ZWRpdG9yKCkuZmlyc3RSZWN0Rm9yUmFuZ2UoKnJhbmdlKSk7CisgICAgY29tcGxl
dGlvbkhhbmRsZXIocmVjdCwgZWRpdGluZ1JhbmdlKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRD
b21wb3NpdGlvbkFzeW5jKGNvbnN0IFN0cmluZyYgdGV4dCwgY29uc3QgVmVjdG9yPENvbXBvc2l0
aW9uVW5kZXJsaW5lPiYgdW5kZXJsaW5lcywgY29uc3QgVmVjdG9yPENvbXBvc2l0aW9uSGlnaGxp
Z2h0PiYgaGlnaGxpZ2h0cywgY29uc3QgRWRpdGluZ1JhbmdlJiBzZWxlY3Rpb24sIGNvbnN0IEVk
aXRpbmdSYW5nZSYgcmVwbGFjZW1lbnRFZGl0aW5nUmFuZ2UpCit7CisgICAgcGxhdGZvcm1XaWxs
UGVyZm9ybUVkaXRpbmdDb21tYW5kKCk7CisKKyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1f
cGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBpZiAo
ZnJhbWUtPnNlbGVjdGlvbigpLnNlbGVjdGlvbigpLmlzQ29udGVudEVkaXRhYmxlKCkpIHsKKyAg
ICAgICAgaWYgKHJlcGxhY2VtZW50RWRpdGluZ1JhbmdlLmxvY2F0aW9uICE9IG5vdEZvdW5kKSB7
CisgICAgICAgICAgICBpZiAoYXV0byByZXBsYWNlbWVudFJhbmdlID0gRWRpdGluZ1JhbmdlOjp0
b1JhbmdlKGZyYW1lLCByZXBsYWNlbWVudEVkaXRpbmdSYW5nZSkpCisgICAgICAgICAgICAgICAg
ZnJhbWUtPnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKCpyZXBsYWNl
bWVudFJhbmdlKSk7CisgICAgICAgIH0KKyAgICAgICAgZnJhbWUtPmVkaXRvcigpLnNldENvbXBv
c2l0aW9uKHRleHQsIHVuZGVybGluZXMsIGhpZ2hsaWdodHMsIHNlbGVjdGlvbi5sb2NhdGlvbiwg
c2VsZWN0aW9uLmxvY2F0aW9uICsgc2VsZWN0aW9uLmxlbmd0aCk7CisgICAgfQorfQorCit2b2lk
IFdlYlBhZ2U6OmNvbmZpcm1Db21wb3NpdGlvbkFzeW5jKCkKK3sKKyAgICBwbGF0Zm9ybVdpbGxQ
ZXJmb3JtRWRpdGluZ0NvbW1hbmQoKTsKKworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9w
YWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIGZyYW1l
LT5lZGl0b3IoKS5jb25maXJtQ29tcG9zaXRpb24oKTsKK30KKworI2VuZGlmIC8vIFBMQVRGT1JN
KENPQ09BKQorCisjaWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShXUEUpCisKK3N0YXRpYyBG
cmFtZSogdGFyZ2V0RnJhbWVGb3JFZGl0aW5nKFdlYlBhZ2UmIHBhZ2UpCit7CisgICAgRnJhbWUm
IHRhcmdldEZyYW1lID0gcGFnZS5jb3JlUGFnZSgpLT5mb2N1c0NvbnRyb2xsZXIoKS5mb2N1c2Vk
T3JNYWluRnJhbWUoKTsKKworICAgIEVkaXRvciYgZWRpdG9yID0gdGFyZ2V0RnJhbWUuZWRpdG9y
KCk7CisgICAgaWYgKCFlZGl0b3IuY2FuRWRpdCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgIGlmIChlZGl0b3IuaGFzQ29tcG9zaXRpb24oKSkgeworICAgICAgICAvLyBXZSBzaG91
bGQgdmVyaWZ5IHRoZSBwYXJlbnQgbm9kZSBvZiB0aGlzIElNRSBjb21wb3NpdGlvbiBub2RlIGFy
ZQorICAgICAgICAvLyBlZGl0YWJsZSBiZWNhdXNlIEphdmFTY3JpcHQgbWF5IGRlbGV0ZSBhIHBh
cmVudCBub2RlIG9mIHRoZSBjb21wb3NpdGlvbgorICAgICAgICAvLyBub2RlLiBJbiB0aGlzIGNh
c2UsIFdlYktpdCBjcmFzaGVzIHdoaWxlIGRlbGV0aW5nIHRleHRzIGZyb20gdGhlIHBhcmVudAor
ICAgICAgICAvLyBub2RlLCB3aGljaCBkb2Vzbid0IGV4aXN0IGFueSBsb25nZXIuCisgICAgICAg
IGlmIChhdXRvIHJhbmdlID0gZWRpdG9yLmNvbXBvc2l0aW9uUmFuZ2UoKSkgeworICAgICAgICAg
ICAgaWYgKCFyYW5nZS0+c3RhcnRDb250YWluZXIoKS5pc0NvbnRlbnRFZGl0YWJsZSgpKQorICAg
ICAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB9CisgICAgfQorICAgIHJldHVy
biAmdGFyZ2V0RnJhbWU7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2FuY2VsQ29tcG9zaXRpb24oY29u
c3QgU3RyaW5nJiBjb21wb3NpdGlvblN0cmluZykKK3sKKyAgICBpZiAoYXV0byogdGFyZ2V0RnJh
bWUgPSB0YXJnZXRGcmFtZUZvckVkaXRpbmcoKnRoaXMpKQorICAgICAgICB0YXJnZXRGcmFtZS0+
ZWRpdG9yKCkuY29uZmlybUNvbXBvc2l0aW9uKGNvbXBvc2l0aW9uU3RyaW5nKTsKK30KKwordm9p
ZCBXZWJQYWdlOjpkZWxldGVTdXJyb3VuZGluZyhpbnQ2NF90IG9mZnNldCwgdW5zaWduZWQgY2hh
cmFjdGVyQ291bnQpCit7CisgICAgYXV0byogdGFyZ2V0RnJhbWUgPSB0YXJnZXRGcmFtZUZvckVk
aXRpbmcoKnRoaXMpOworICAgIGlmICghdGFyZ2V0RnJhbWUpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGF1dG8mIHNlbGVjdGlvbiA9IHRhcmdldEZyYW1lLT5zZWxlY3Rpb24oKS5zZWxlY3Rpb24o
KTsKKyAgICBpZiAoc2VsZWN0aW9uLmlzTm9uZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBh
dXRvIHNlbGVjdGlvblN0YXJ0ID0gc2VsZWN0aW9uLnZpc2libGVTdGFydCgpOworICAgIGF1dG8g
c3Vycm91bmRpbmdSYW5nZSA9IG1ha2VTaW1wbGVSYW5nZShzdGFydE9mRWRpdGFibGVDb250ZW50
KHNlbGVjdGlvblN0YXJ0KSwgc2VsZWN0aW9uU3RhcnQpOworICAgIGlmICghc3Vycm91bmRpbmdS
YW5nZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byYgcm9vdE5vZGUgPSBzdXJyb3VuZGlu
Z1JhbmdlLT5zdGFydC5jb250YWluZXItPnRyZWVTY29wZSgpLnJvb3ROb2RlKCk7CisgICAgYXV0
byBjaGFyYWN0ZXJSYW5nZSA9IFdlYkNvcmU6OkNoYXJhY3RlclJhbmdlKFdlYkNvcmU6OmNoYXJh
Y3RlckNvdW50KCpzdXJyb3VuZGluZ1JhbmdlKSArIG9mZnNldCwgY2hhcmFjdGVyQ291bnQpOwor
ICAgIGF1dG8gc2VsZWN0aW9uUmFuZ2UgPSByZXNvbHZlQ2hhcmFjdGVyUmFuZ2UobWFrZVJhbmdl
U2VsZWN0aW5nTm9kZUNvbnRlbnRzKHJvb3ROb2RlKSwgY2hhcmFjdGVyUmFuZ2UpOworCisgICAg
dGFyZ2V0RnJhbWUtPmVkaXRvcigpLnNldElnbm9yZVNlbGVjdGlvbkNoYW5nZXModHJ1ZSk7Cisg
ICAgdGFyZ2V0RnJhbWUtPnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9u
KHNlbGVjdGlvblJhbmdlKSk7CisgICAgdGFyZ2V0RnJhbWUtPmVkaXRvcigpLmRlbGV0ZVNlbGVj
dGlvbldpdGhTbWFydERlbGV0ZShmYWxzZSk7CisgICAgdGFyZ2V0RnJhbWUtPmVkaXRvcigpLnNl
dElnbm9yZVNlbGVjdGlvbkNoYW5nZXMoZmFsc2UpOworICAgIHNlbmRFZGl0b3JTdGF0ZVVwZGF0
ZSgpOworfQorCisjZW5kaWYKKwordm9pZCBXZWJQYWdlOjpkaWRBcHBseVN0eWxlKCkKK3sKKyAg
ICBzZW5kRWRpdG9yU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRDaGFuZ2VD
b250ZW50cygpCit7CisgICAgc2VuZEVkaXRvclN0YXRlVXBkYXRlKCk7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6ZGlkQ2hhbmdlT3ZlcmZsb3dTY3JvbGxQb3NpdGlvbigpCit7CisgICAgZGlkQ2hhbmdl
U2VsZWN0aW9uT3JPdmVyZmxvd1Njcm9sbFBvc2l0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6
ZGlkQ2hhbmdlU2VsZWN0aW9uKCkKK3sKKyAgICBkaWRDaGFuZ2VTZWxlY3Rpb25Pck92ZXJmbG93
U2Nyb2xsUG9zaXRpb24oKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRDaGFuZ2VTZWxlY3Rpb25P
ck92ZXJmbG93U2Nyb2xsUG9zaXRpb24oKQoreworICAgIFJlZiBmcmFtZSA9IENoZWNrZWRSZWYo
bV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpOworICAgIC8v
IFRoZSBhY3Qgb2YgZ2V0dGluZyBEaWN0aW9uYXJ5IFBvcHVwIGluZm8gY2FuIG1ha2Ugc2VsZWN0
aW9uIGNoYW5nZXMgdGhhdCB3ZSBzaG91bGQgbm90IHByb3BhZ2F0ZSB0byB0aGUgVUlQcm9jZXNz
LgorICAgIC8vIFNwZWNpZmljYWxseSwgaWYgdGhlcmUgaXMgYSBjYXJldCBzZWxlY3Rpb24sIGl0
IHdpbGwgY2hhbmdlIHRvIGEgcmFuZ2Ugc2VsZWN0aW9uIG9mIHRoZSB3b3JkIGFyb3VuZCB0aGUg
Y2FyZXQuIEFuZAorICAgIC8vIHRoZW4gaXQgd2lsbCBjaGFuZ2UgYmFjay4KKyAgICBpZiAoZnJh
bWUtPmVkaXRvcigpLmlzR2V0dGluZ0RpY3Rpb25hcnlQb3B1cEluZm8oKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgLy8gU2ltaWxhcmx5LCB3ZSBkb24ndCB3YW50IHRvIHByb3BhZ2F0ZSBjaGFu
Z2VzIHRvIHRoZSB3ZWIgcHJvY2VzcyB3aGVuIGluc2VydGluZyB0ZXh0IGFzeW5jaHJvbm91c2x5
LCBzaW5jZSB3ZSB3aWxsCisgICAgLy8gZW5kIHVwIHdpdGggYSByYW5nZSBzZWxlY3Rpb24gdmVy
eSBicmllZmx5IHJpZ2h0IGJlZm9yZSBpbnNlcnRpbmcgdGhlIHRleHQuCisgICAgaWYgKG1faXNT
ZWxlY3RpbmdUZXh0V2hpbGVJbnNlcnRpbmdBc3luY2hyb25vdXNseSkKKyAgICAgICAgcmV0dXJu
OworCisjaWYgSEFWRShUT1VDSF9CQVIpCisgICAgYm9vbCBoYXNQcmV2aW91c2x5Rm9jdXNlZER1
ZVRvVXNlckludGVyYWN0aW9uID0gbV9oYXNFdmVyRm9jdXNlZEVsZW1lbnREdWVUb1VzZXJJbnRl
cmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb247CisgICAgaWYgKG1fdXNlcklzSW50ZXJhY3Rpbmcg
JiYgbV9mb2N1c2VkRWxlbWVudCkKKyAgICAgICAgbV9oYXNFdmVyRm9jdXNlZEVsZW1lbnREdWVU
b1VzZXJJbnRlcmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb24gPSB0cnVlOworCisgICAgaWYgKCFo
YXNQcmV2aW91c2x5Rm9jdXNlZER1ZVRvVXNlckludGVyYWN0aW9uICYmIG1faGFzRXZlckZvY3Vz
ZWRFbGVtZW50RHVlVG9Vc2VySW50ZXJhY3Rpb25TaW5jZVBhZ2VUcmFuc2l0aW9uKSB7CisgICAg
ICAgIGlmIChmcmFtZS0+ZG9jdW1lbnQoKS0+cXVpcmtzKCkuaXNUb3VjaEJhclVwZGF0ZVN1cHJl
c3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSgpKSB7CisgICAgICAgICAgICBtX2lzVG91Y2hC
YXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUgPSB0cnVlOworICAgICAg
ICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRJc1RvdWNoQmFyVXBkYXRlU3Vw
cmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRhYmxlKG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3Nl
ZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSkpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGZy
YW1lLT5kb2N1bWVudCgpLT5xdWlya3MoKS5pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJh
cigpKSB7CisgICAgICAgICAgICBtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyID0g
dHJ1ZTsKKyAgICAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0SXNOZXZl
clJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIobV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3Vj
aEJhcikpOworICAgICAgICB9CisKKyAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpTZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJbnRlcmFjdGlvbihtX2hhc0V2ZXJG
b2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNpdGlvbikpOwor
ICAgIH0KKworICAgIC8vIEFiYW5kb24gdGhlIGN1cnJlbnQgaW5saW5lIGlucHV0IHNlc3Npb24g
aWYgc2VsZWN0aW9uIGNoYW5nZWQgZm9yIGFueSBvdGhlciByZWFzb24gYnV0IGFuIGlucHV0IG1l
dGhvZCBkaXJlY3QgYWN0aW9uLgorICAgIC8vIEZJWE1FOiBUaGlzIGxvZ2ljIHNob3VsZCBiZSBp
biBXZWJDb3JlLgorICAgIC8vIEZJWE1FOiBNYW55IGNoYW5nZXMgdGhhdCBhZmZlY3QgY29tcG9z
aXRpb24gbm9kZSBkbyBub3QgZ28gdGhyb3VnaCBkaWRDaGFuZ2VTZWxlY3Rpb24oKS4gV2UgbmVl
ZCB0byBkbyBzb21ldGhpbmcgd2hlbiBET00gbWFuaXB1bGF0aW9uIGFmZmVjdHMgdGhlIGNvbXBv
c2l0aW9uLCBiZWNhdXNlIG90aGVyd2lzZSBpbnB1dCBtZXRob2QncyBpZGVhIGFib3V0IGl0IHdp
bGwgYmUgZGlmZmVyZW50IGZyb20gRWRpdG9yJ3MuCisgICAgLy8gRklYTUU6IFdlIGNhbid0IGNh
bmNlbCBjb21wb3NpdGlvbiB3aGVuIHNlbGVjdGlvbiBjaGFuZ2VzIHRvIE5vU2VsZWN0aW9uLCBi
dXQgd2UgcHJvYmFibHkgc2hvdWxkLgorICAgIGlmIChmcmFtZS0+ZWRpdG9yKCkuaGFzQ29tcG9z
aXRpb24oKSAmJiAhZnJhbWUtPmVkaXRvcigpLmlnbm9yZVNlbGVjdGlvbkNoYW5nZXMoKSAmJiAh
ZnJhbWUtPnNlbGVjdGlvbigpLmlzTm9uZSgpKSB7CisgICAgICAgIGZyYW1lLT5lZGl0b3IoKS5j
YW5jZWxDb21wb3NpdGlvbigpOworICAgICAgICBkaXNjYXJkZWRDb21wb3NpdGlvbigpOworICAg
ICAgICByZXR1cm47CisgICAgfQorI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFSKQorCisgICAgc2No
ZWR1bGVGdWxsRWRpdG9yU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjpyZXNldEZv
Y3VzZWRFbGVtZW50Rm9yRnJhbWUoV2ViRnJhbWUqIGZyYW1lKQoreworICAgIGlmICghbV9mb2N1
c2VkRWxlbWVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGZyYW1lLT5pc01haW5GcmFt
ZSgpIHx8IG1fZm9jdXNlZEVsZW1lbnQtPmRvY3VtZW50KCkuZnJhbWUoKSA9PSBmcmFtZS0+Y29y
ZUZyYW1lKCkpIHsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgICAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkVsZW1lbnREaWRCbHVyKCkpOworI2VsaWYgUExBVEZPUk0oTUFD
KQorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEVkaXRhYmxlRWxlbWVu
dElzRm9jdXNlZChmYWxzZSkpOworI2VuZGlmCisgICAgICAgIG1fZm9jdXNlZEVsZW1lbnQgPSBu
dWxscHRyOworICAgIH0KK30KKwordm9pZCBXZWJQYWdlOjplbGVtZW50RGlkUmVmb2N1cyhXZWJD
b3JlOjpFbGVtZW50JiBlbGVtZW50KQoreworICAgIGVsZW1lbnREaWRGb2N1cyhlbGVtZW50KTsK
KworICAgIGlmIChtX3VzZXJJc0ludGVyYWN0aW5nKQorICAgICAgICBzY2hlZHVsZUZ1bGxFZGl0
b3JTdGF0ZVVwZGF0ZSgpOworfQorCitib29sIFdlYlBhZ2U6OnNob3VsZERpc3BhdGNoVXBkYXRl
QWZ0ZXJGb2N1c2luZ0VsZW1lbnQoY29uc3QgRWxlbWVudCYgZWxlbWVudCkgY29uc3QKK3sKKyAg
ICBpZiAobV9mb2N1c2VkRWxlbWVudCA9PSAmZWxlbWVudCB8fCBtX3JlY2VudGx5Qmx1cnJlZEVs
ZW1lbnQgPT0gJmVsZW1lbnQpIHsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgICAgICBy
ZXR1cm4gIW1faXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQ7CisjZWxzZQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKKyAgICB9CisgICAgcmV0dXJuIHRydWU7Cit9CisK
K3N0YXRpYyBib29sIGlzVGV4dEZvcm1Db250cm9sT3JFZGl0YWJsZUNvbnRlbnQoY29uc3QgV2Vi
Q29yZTo6RWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICByZXR1cm4gaXM8SFRNTFRleHRGb3JtQ29u
dHJvbEVsZW1lbnQ+KGVsZW1lbnQpIHx8IGVsZW1lbnQuaGFzRWRpdGFibGVTdHlsZSgpOworfQor
Cit2b2lkIFdlYlBhZ2U6OmVsZW1lbnREaWRGb2N1cyhXZWJDb3JlOjpFbGVtZW50JiBlbGVtZW50
KQoreworICAgIGlmICghc2hvdWxkRGlzcGF0Y2hVcGRhdGVBZnRlckZvY3VzaW5nRWxlbWVudChl
bGVtZW50KSkgeworICAgICAgICB1cGRhdGVJbnB1dENvbnRleHRBZnRlckJsdXJyaW5nQW5kUmVm
b2N1c2luZ0VsZW1lbnRJZk5lZWRlZChlbGVtZW50KTsKKyAgICAgICAgbV9mb2N1c2VkRWxlbWVu
dCA9ICZlbGVtZW50OworICAgICAgICBtX3JlY2VudGx5Qmx1cnJlZEVsZW1lbnQgPSBudWxscHRy
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKGlzPEhUTUxTZWxlY3RFbGVtZW50
PihlbGVtZW50KSB8fCBpc1RleHRGb3JtQ29udHJvbE9yRWRpdGFibGVDb250ZW50KGVsZW1lbnQp
KSB7CisgICAgICAgIG1fZm9jdXNlZEVsZW1lbnQgPSAmZWxlbWVudDsKKyAgICAgICAgbV9oYXNQ
ZW5kaW5nSW5wdXRDb250ZXh0VXBkYXRlQWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50
ID0gZmFsc2U7CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorCisjaWYgRU5BQkxFKEZVTExT
Q1JFRU5fQVBJKQorICAgICAgICBpZiAoZWxlbWVudC5kb2N1bWVudCgpLmZ1bGxzY3JlZW5NYW5h
Z2VyKCkuaXNGdWxsc2NyZWVuKCkpCisgICAgICAgICAgICBlbGVtZW50LmRvY3VtZW50KCkuZnVs
bHNjcmVlbk1hbmFnZXIoKS5jYW5jZWxGdWxsc2NyZWVuKCk7CisjZW5kaWYKKworICAgICAgICBh
dXRvIGluZm9ybWF0aW9uID0gZm9jdXNlZEVsZW1lbnRJbmZvcm1hdGlvbigpOworICAgICAgICBp
ZiAoIWluZm9ybWF0aW9uKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIFJlZlB0cjxB
UEk6Ok9iamVjdD4gdXNlckRhdGE7CisKKyAgICAgICAgbV9mb3JtQ2xpZW50LT53aWxsQmVnaW5J
bnB1dFNlc3Npb24odGhpcywgJmVsZW1lbnQsIFdlYkZyYW1lOjpmcm9tQ29yZUZyYW1lKCplbGVt
ZW50LmRvY3VtZW50KCkuZnJhbWUoKSksIG1fdXNlcklzSW50ZXJhY3RpbmcsIHVzZXJEYXRhKTsK
KworICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkVsZW1lbnREaWRGb2N1cyhp
bmZvcm1hdGlvbi52YWx1ZSgpLCBtX3VzZXJJc0ludGVyYWN0aW5nLCBtX3JlY2VudGx5Qmx1cnJl
ZEVsZW1lbnQsIG1fbGFzdEFjdGl2aXR5U3RhdGVDaGFuZ2VzLCBVc2VyRGF0YShXZWJQcm9jZXNz
OjpzaW5nbGV0b24oKS50cmFuc2Zvcm1PYmplY3RzVG9IYW5kbGVzKHVzZXJEYXRhLmdldCgpKS5n
ZXQoKSkpKTsKKyNlbGlmIFBMQVRGT1JNKE1BQykKKyAgICAgICAgLy8gRklYTUU6IFRoaXMgY2Fu
IGJlIHVuaWZpZWQgd2l0aCB0aGUgaU9TIGNvZGUgYWJvdmUgYnkgYnJpbmdpbmcgRWxlbWVudERp
ZEZvY3VzIHRvIG1hY09TLgorICAgICAgICAvLyBUaGlzIGFsc28gZG9lc24ndCB0YWtlIG90aGVy
IG5vbmVkaXRhYmxlIGNvbnRyb2xzIGludG8gYWNjb3VudCwgc3VjaCBhcyBpbnB1dCB0eXBlIGNv
bG9yLgorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldEVkaXRhYmxlRWxl
bWVudElzRm9jdXNlZCghZWxlbWVudC5oYXNUYWdOYW1lKFdlYkNvcmU6OkhUTUxOYW1lczo6c2Vs
ZWN0VGFnKSkpOworI2VuZGlmCisgICAgICAgIG1fcmVjZW50bHlCbHVycmVkRWxlbWVudCA9IG51
bGxwdHI7CisgICAgfQorfQorCit2b2lkIFdlYlBhZ2U6OmVsZW1lbnREaWRCbHVyKFdlYkNvcmU6
OkVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQgPT0gJmVsZW1l
bnQpIHsKKyAgICAgICAgbV9yZWNlbnRseUJsdXJyZWRFbGVtZW50ID0gV1RGTW92ZShtX2ZvY3Vz
ZWRFbGVtZW50KTsKKyAgICAgICAgY2FsbE9uTWFpblJ1bkxvb3AoW3Byb3RlY3RlZFRoaXMgPSBt
YWtlUmVmUHRyKHRoaXMpXSB7CisgICAgICAgICAgICBpZiAocHJvdGVjdGVkVGhpcy0+bV9yZWNl
bnRseUJsdXJyZWRFbGVtZW50KSB7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAgICAg
ICAgICAgICBwcm90ZWN0ZWRUaGlzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkVsZW1l
bnREaWRCbHVyKCkpOworI2VsaWYgUExBVEZPUk0oTUFDKQorICAgICAgICAgICAgICAgIHByb3Rl
Y3RlZFRoaXMtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0RWRpdGFibGVFbGVtZW50
SXNGb2N1c2VkKGZhbHNlKSk7CisjZW5kaWYKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHBy
b3RlY3RlZFRoaXMtPm1fcmVjZW50bHlCbHVycmVkRWxlbWVudCA9IG51bGxwdHI7CisgICAgICAg
IH0pOworICAgICAgICBtX2hhc1BlbmRpbmdJbnB1dENvbnRleHRVcGRhdGVBZnRlckJsdXJyaW5n
QW5kUmVmb2N1c2luZ0VsZW1lbnQgPSBmYWxzZTsKKyAgICB9Cit9CisKK3ZvaWQgV2ViUGFnZTo6
Zm9jdXNlZEVsZW1lbnREaWRDaGFuZ2VJbnB1dE1vZGUoV2ViQ29yZTo6RWxlbWVudCYgZWxlbWVu
dCwgV2ViQ29yZTo6SW5wdXRNb2RlIG1vZGUpCit7CisgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQg
IT0gJmVsZW1lbnQpCisgICAgICAgIHJldHVybjsKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
CisgICAgQVNTRVJUKGlzPEhUTUxFbGVtZW50PihlbGVtZW50KSk7CisgICAgQVNTRVJUKGRvd25j
YXN0PEhUTUxFbGVtZW50PihlbGVtZW50KS5jYW5vbmljYWxJbnB1dE1vZGUoKSA9PSBtb2RlKTsK
KworICAgIGlmICghaXNUZXh0Rm9ybUNvbnRyb2xPckVkaXRhYmxlQ29udGVudChlbGVtZW50KSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpGb2N1
c2VkRWxlbWVudERpZENoYW5nZUlucHV0TW9kZShtb2RlKSk7CisjZWxzZQorICAgIFVOVVNFRF9Q
QVJBTShtb2RlKTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2U6OmRpZFVwZGF0ZUNvbXBvc2l0
aW9uKCkKK3sKKyAgICBzZW5kRWRpdG9yU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBXZWJQYWdl
OjpkaWRFbmRVc2VyVHJpZ2dlcmVkU2VsZWN0aW9uQ2hhbmdlcygpCit7CisgICAgUmVmIGZyYW1l
ID0gQ2hlY2tlZFJlZihtX3BhZ2UtPmZvY3VzQ29udHJvbGxlcigpKS0+Zm9jdXNlZE9yTWFpbkZy
YW1lKCk7CisgICAgaWYgKCFmcmFtZS0+ZWRpdG9yKCkuaWdub3JlU2VsZWN0aW9uQ2hhbmdlcygp
KQorICAgICAgICBzZW5kRWRpdG9yU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjpk
aXNjYXJkZWRDb21wb3NpdGlvbigpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpDb21wb3NpdGlvbldhc0NhbmNlbGVkKCkpOworICAgIHNlbmRFZGl0b3JTdGF0ZVVwZGF0ZSgp
OworfQorCit2b2lkIFdlYlBhZ2U6OmNhbmNlbGVkQ29tcG9zaXRpb24oKQoreworICAgIHNlbmQo
TWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Q29tcG9zaXRpb25XYXNDYW5jZWxlZCgpKTsKKyAgICBz
ZW5kRWRpdG9yU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRBbHdheXNTaG93
c0hvcml6b250YWxTY3JvbGxlcihib29sIGFsd2F5c1Nob3dzSG9yaXpvbnRhbFNjcm9sbGVyKQor
eworICAgIGlmIChhbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlciA9PSBtX2Fsd2F5c1Nob3dz
SG9yaXpvbnRhbFNjcm9sbGVyKQorICAgICAgICByZXR1cm47CisKKyAgICBtX2Fsd2F5c1Nob3dz
SG9yaXpvbnRhbFNjcm9sbGVyID0gYWx3YXlzU2hvd3NIb3Jpem9udGFsU2Nyb2xsZXI7CisgICAg
YXV0byB2aWV3ID0gY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkudmlldygpOworICAgIGlmICghYWx3
YXlzU2hvd3NIb3Jpem9udGFsU2Nyb2xsZXIpCisgICAgICAgIHZpZXctPnNldEhvcml6b250YWxT
Y3JvbGxiYXJMb2NrKGZhbHNlKTsKKyAgICB2aWV3LT5zZXRIb3Jpem9udGFsU2Nyb2xsYmFyTW9k
ZShhbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlciA/IFNjcm9sbGJhckFsd2F5c09uIDogbV9t
YWluRnJhbWVJc1Njcm9sbGFibGUgPyBTY3JvbGxiYXJBdXRvIDogU2Nyb2xsYmFyQWx3YXlzT2Zm
LCBhbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlciB8fCAhbV9tYWluRnJhbWVJc1Njcm9sbGFi
bGUpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldEFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlcihi
b29sIGFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlcikKK3sKKyAgICBpZiAoYWx3YXlzU2hvd3NW
ZXJ0aWNhbFNjcm9sbGVyID09IG1fYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyKQorICAgICAg
ICByZXR1cm47CisKKyAgICBtX2Fsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlciA9IGFsd2F5c1No
b3dzVmVydGljYWxTY3JvbGxlcjsKKyAgICBhdXRvIHZpZXcgPSBjb3JlUGFnZSgpLT5tYWluRnJh
bWUoKS52aWV3KCk7CisgICAgaWYgKCFhbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIpCisgICAg
ICAgIHZpZXctPnNldFZlcnRpY2FsU2Nyb2xsYmFyTG9jayhmYWxzZSk7CisgICAgdmlldy0+c2V0
VmVydGljYWxTY3JvbGxiYXJNb2RlKGFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlciA/IFNjcm9s
bGJhckFsd2F5c09uIDogbV9tYWluRnJhbWVJc1Njcm9sbGFibGUgPyBTY3JvbGxiYXJBdXRvIDog
U2Nyb2xsYmFyQWx3YXlzT2ZmLCBhbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIgfHwgIW1fbWFp
bkZyYW1lSXNTY3JvbGxhYmxlKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRNaW5pbXVtU2l6ZUZv
ckF1dG9MYXlvdXQoY29uc3QgSW50U2l6ZSYgc2l6ZSkKK3sKKyAgICBpZiAobV9taW5pbXVtU2l6
ZUZvckF1dG9MYXlvdXQgPT0gc2l6ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9taW5pbXVt
U2l6ZUZvckF1dG9MYXlvdXQgPSBzaXplOworICAgIGlmIChzaXplLndpZHRoKCkgPD0gMCkgewor
ICAgICAgICBjb3JlUGFnZSgpLT5tYWluRnJhbWUoKS52aWV3KCktPmVuYWJsZUZpeGVkV2lkdGhB
dXRvU2l6ZU1vZGUoZmFsc2UsIHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBj
b3JlUGFnZSgpLT5tYWluRnJhbWUoKS52aWV3KCktPmVuYWJsZUZpeGVkV2lkdGhBdXRvU2l6ZU1v
ZGUodHJ1ZSwgeyBzaXplLndpZHRoKCksIHN0ZDo6bWF4KHNpemUuaGVpZ2h0KCksIDEpIH0pOwor
fQorCit2b2lkIFdlYlBhZ2U6OnNldFNpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplKGNv
bnN0IEludFNpemUmIHNpemUpCit7CisgICAgaWYgKG1fc2l6ZVRvQ29udGVudEF1dG9TaXplTWF4
aW11bVNpemUgPT0gc2l6ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9zaXplVG9Db250ZW50
QXV0b1NpemVNYXhpbXVtU2l6ZSA9IHNpemU7CisgICAgaWYgKHNpemUud2lkdGgoKSA8PSAwIHx8
IHNpemUuaGVpZ2h0KCkgPD0gMCkgeworICAgICAgICBjb3JlUGFnZSgpLT5tYWluRnJhbWUoKS52
aWV3KCktPmVuYWJsZVNpemVUb0NvbnRlbnRBdXRvU2l6ZU1vZGUoZmFsc2UsIHsgfSk7CisgICAg
ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjb3JlUGFnZSgpLT5tYWluRnJhbWUoKS52aWV3KCkt
PmVuYWJsZVNpemVUb0NvbnRlbnRBdXRvU2l6ZU1vZGUodHJ1ZSwgc2l6ZSk7Cit9CisKK3ZvaWQg
V2ViUGFnZTo6c2V0QXV0b1NpemluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodChib29sIHNob3Vs
ZEV4cGFuZCkKK3sKKyAgICBpZiAobV9hdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0
ID09IHNob3VsZEV4cGFuZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9hdXRvU2l6aW5nU2hv
dWxkRXhwYW5kVG9WaWV3SGVpZ2h0ID0gc2hvdWxkRXhwYW5kOworCisgICAgY29yZVBhZ2UoKS0+
bWFpbkZyYW1lKCkudmlldygpLT5zZXRBdXRvU2l6ZUZpeGVkTWluaW11bUhlaWdodChzaG91bGRF
eHBhbmQgPyBtX3ZpZXdTaXplLmhlaWdodCgpIDogMCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2V0
Vmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cyhzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6Oklu
dFNpemU+IHZpZXdwb3J0U2l6ZSkKK3sKKyAgICBpZiAobV92aWV3cG9ydFNpemVGb3JDU1NWaWV3
cG9ydFVuaXRzID09IHZpZXdwb3J0U2l6ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV92aWV3
cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRzID0gdmlld3BvcnRTaXplOworICAgIGlmIChtX3Zp
ZXdwb3J0U2l6ZUZvckNTU1ZpZXdwb3J0VW5pdHMpCisgICAgICAgIGNvcmVQYWdlKCktPm1haW5G
cmFtZSgpLnZpZXcoKS0+c2V0Vmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cygqbV92aWV3
cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRzKTsKK30KKworYm9vbCBXZWJQYWdlOjppc1NtYXJ0
SW5zZXJ0RGVsZXRlRW5hYmxlZCgpCit7CisgICAgcmV0dXJuIG1fcGFnZS0+c2V0dGluZ3MoKS5z
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRTbWFydElu
c2VydERlbGV0ZUVuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIGlmIChtX3BhZ2UtPnNldHRp
bmdzKCkuc21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkgIT0gZW5hYmxlZCkgeworICAgICAgICBt
X3BhZ2UtPnNldHRpbmdzKCkuc2V0U21hcnRJbnNlcnREZWxldGVFbmFibGVkKGVuYWJsZWQpOwor
ICAgICAgICBzZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKCFlbmFibGVkKTsKKyAg
ICB9Cit9CisKK2Jvb2wgV2ViUGFnZTo6aXNTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVk
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wYWdlLT5zZXR0aW5ncygpLnNlbGVjdFRyYWlsaW5n
V2hpdGVzcGFjZUVuYWJsZWQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRTZWxlY3RUcmFpbGlu
Z1doaXRlc3BhY2VFbmFibGVkKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBpZiAobV9wYWdlLT5zZXR0
aW5ncygpLnNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoKSAhPSBlbmFibGVkKSB7Cisg
ICAgICAgIG1fcGFnZS0+c2V0dGluZ3MoKS5zZXRTZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFi
bGVkKGVuYWJsZWQpOworICAgICAgICBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoIWVuYWJs
ZWQpOworICAgIH0KK30KKworYm9vbCBXZWJQYWdlOjpjYW5TaG93UmVzcG9uc2UoY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0Cit7CisgICAgcmV0dXJuIGNh
blNob3dNSU1FVHlwZShyZXNwb25zZS5taW1lVHlwZSgpLCBbJl0oYXV0byYgbWltZVR5cGUsIGF1
dG8gYWxsb3dlZFBsdWdpbnMpIHsKKyAgICAgICAgcmV0dXJuIG1fcGFnZS0+cGx1Z2luRGF0YSgp
LnN1cHBvcnRzV2ViVmlzaWJsZU1pbWVUeXBlRm9yVVJMKG1pbWVUeXBlLCBhbGxvd2VkUGx1Z2lu
cywgcmVzcG9uc2UudXJsKCkpOworICAgIH0pOworfQorCitib29sIFdlYlBhZ2U6OmNhblNob3dN
SU1FVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAoreworICAgIHJldHVybiBjYW5T
aG93TUlNRVR5cGUobWltZVR5cGUsIFsmXShhdXRvJiBtaW1lVHlwZSwgYXV0byBhbGxvd2VkUGx1
Z2lucykgeworICAgICAgICByZXR1cm4gbV9wYWdlLT5wbHVnaW5EYXRhKCkuc3VwcG9ydHNXZWJW
aXNpYmxlTWltZVR5cGUobWltZVR5cGUsIGFsbG93ZWRQbHVnaW5zKTsKKyAgICB9KTsKK30KKwor
Ym9vbCBXZWJQYWdlOjpjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29u
c3QgRnVuY3Rpb248Ym9vbChjb25zdCBTdHJpbmcmLCBQbHVnaW5EYXRhOjpBbGxvd2VkUGx1Z2lu
VHlwZXMpPiYgcGx1Z2luc1N1cHBvcnQpIGNvbnN0Cit7CisgICAgaWYgKE1JTUVUeXBlUmVnaXN0
cnk6OmNhblNob3dNSU1FVHlwZShtaW1lVHlwZSkpCisgICAgICAgIHJldHVybiB0cnVlOworCisg
ICAgaWYgKCFtaW1lVHlwZS5pc051bGwoKSAmJiBtX21pbWVUeXBlc1dpdGhDdXN0b21Db250ZW50
UHJvdmlkZXJzLmNvbnRhaW5zKG1pbWVUeXBlKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAg
ICBpZiAoY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkuYXJlUGx1Z2luc0VuYWJsZWQoKSAmJiBwbHVn
aW5zU3VwcG9ydChtaW1lVHlwZSwgUGx1Z2luRGF0YTo6QWxsUGx1Z2lucykpCisgICAgICAgIHJl
dHVybiB0cnVlOworCisgICAgLy8gV2UgY2FuIHVzZSBhcHBsaWNhdGlvbiBwbHVnaW5zIGV2ZW4g
aWYgcGx1Z2lucyBhcmVuJ3QgZW5hYmxlZC4KKyAgICBpZiAocGx1Z2luc1N1cHBvcnQobWltZVR5
cGUsIFBsdWdpbkRhdGE6Ok9ubHlBcHBsaWNhdGlvblBsdWdpbnMpKQorICAgICAgICByZXR1cm4g
dHJ1ZTsKKworICAgIHJldHVybiBmYWxzZTsKK30KKwordm9pZCBXZWJQYWdlOjphZGRUZXh0Q2hl
Y2tpbmdSZXF1ZXN0KFRleHRDaGVja2VyUmVxdWVzdElEIHJlcXVlc3RJRCwgUmVmPFRleHRDaGVj
a2luZ1JlcXVlc3Q+JiYgcmVxdWVzdCkKK3sKKyAgICBtX3BlbmRpbmdUZXh0Q2hlY2tpbmdSZXF1
ZXN0TWFwLmFkZChyZXF1ZXN0SUQsIFdURk1vdmUocmVxdWVzdCkpOworfQorCit2b2lkIFdlYlBh
Z2U6OmRpZEZpbmlzaENoZWNraW5nVGV4dChUZXh0Q2hlY2tlclJlcXVlc3RJRCByZXF1ZXN0SUQs
IGNvbnN0IFZlY3RvcjxUZXh0Q2hlY2tpbmdSZXN1bHQ+JiByZXN1bHQpCit7CisgICAgUmVmUHRy
PFRleHRDaGVja2luZ1JlcXVlc3Q+IHJlcXVlc3QgPSBtX3BlbmRpbmdUZXh0Q2hlY2tpbmdSZXF1
ZXN0TWFwLnRha2UocmVxdWVzdElEKTsKKyAgICBpZiAoIXJlcXVlc3QpCisgICAgICAgIHJldHVy
bjsKKworICAgIHJlcXVlc3QtPmRpZFN1Y2NlZWQocmVzdWx0KTsKK30KKwordm9pZCBXZWJQYWdl
OjpkaWRDYW5jZWxDaGVja2luZ1RleHQoVGV4dENoZWNrZXJSZXF1ZXN0SUQgcmVxdWVzdElEKQor
eworICAgIFJlZlB0cjxUZXh0Q2hlY2tpbmdSZXF1ZXN0PiByZXF1ZXN0ID0gbV9wZW5kaW5nVGV4
dENoZWNraW5nUmVxdWVzdE1hcC50YWtlKHJlcXVlc3RJRCk7CisgICAgaWYgKCFyZXF1ZXN0KQor
ICAgICAgICByZXR1cm47CisKKyAgICByZXF1ZXN0LT5kaWRDYW5jZWwoKTsKK30KKwordm9pZCBX
ZWJQYWdlOjp3aWxsUmVwbGFjZU11bHRpcGFydENvbnRlbnQoY29uc3QgV2ViRnJhbWUmIGZyYW1l
KQoreworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgaWYgKCFmcmFtZS5pc01haW5GcmFt
ZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3ByZXZpb3VzRXhwb3NlZENvbnRlbnRSZWN0
ID0gbV9kcmF3aW5nQXJlYS0+ZXhwb3NlZENvbnRlbnRSZWN0KCk7CisjZW5kaWYKK30KKwordm9p
ZCBXZWJQYWdlOjpkaWRSZXBsYWNlTXVsdGlwYXJ0Q29udGVudChjb25zdCBXZWJGcmFtZSYgZnJh
bWUpCit7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBpZiAoIWZyYW1lLmlzTWFpbkZy
YW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIFJlc3RvcmUgdGhlIHByZXZpb3VzIGV4
cG9zZWQgY29udGVudCByZWN0IHNvIHRoYXQgaXQgcmVtYWlucyBmaXhlZCB3aGVuIHJlcGxhY2lu
ZyBjb250ZW50CisgICAgLy8gZnJvbSBtdWx0aXBhcnQveC1taXhlZC1yZXBsYWNlIHN0cmVhbXMu
CisgICAgbV9kcmF3aW5nQXJlYS0+c2V0RXhwb3NlZENvbnRlbnRSZWN0KG1fcHJldmlvdXNFeHBv
c2VkQ29udGVudFJlY3QpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkQ29tbWl0TG9h
ZChXZWJGcmFtZSogZnJhbWUpCit7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBhdXRv
IGZpcnN0VHJhbnNhY3Rpb25JREFmdGVyRGlkQ29tbWl0TG9hZCA9IGRvd25jYXN0PFJlbW90ZUxh
eWVyVHJlZURyYXdpbmdBcmVhPigqbV9kcmF3aW5nQXJlYSkubmV4dFRyYW5zYWN0aW9uSUQoKTsK
KyAgICBmcmFtZS0+c2V0Rmlyc3RMYXllclRyZWVUcmFuc2FjdGlvbklEQWZ0ZXJEaWRDb21taXRM
b2FkKGZpcnN0VHJhbnNhY3Rpb25JREFmdGVyRGlkQ29tbWl0TG9hZCk7CisgICAgY2FuY2VsUG90
ZW50aWFsVGFwSW5GcmFtZSgqZnJhbWUpOworI2VuZGlmCisgICAgcmVzZXRGb2N1c2VkRWxlbWVu
dEZvckZyYW1lKGZyYW1lKTsKKworICAgIGlmICghZnJhbWUtPmlzTWFpbkZyYW1lKCkpCisgICAg
ICAgIHJldHVybjsKKworICAgIGlmIChtX2RyYXdpbmdBcmVhKQorICAgICAgICBtX2RyYXdpbmdB
cmVhLT5zZW5kRW50ZXJBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZUlmTmVlZGVkKCk7CisKKyAg
ICBBU1NFUlQoIWZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVyKCkuc3RhdGVNYWNoaW5lKCkuY3Jl
YXRpbmdJbml0aWFsRW1wdHlEb2N1bWVudCgpKTsKKyAgICB1bmZyZWV6ZUxheWVyVHJlZShMYXll
clRyZWVGcmVlemVSZWFzb246OlByb2Nlc3NTd2FwKTsKKworI2lmIEVOQUJMRShJTUFHRV9BTkFM
WVNJUykKKyAgICBmb3IgKGF1dG8mIFtlbGVtZW50LCBjb21wbGV0aW9uSGFuZGxlcnNdIDogbV9l
bGVtZW50c1BlbmRpbmdUZXh0UmVjb2duaXRpb24pIHsKKyAgICAgICAgZm9yIChhdXRvJiBjb21w
bGV0aW9uSGFuZGxlciA6IGNvbXBsZXRpb25IYW5kbGVycykKKyAgICAgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKHsgfSk7CisgICAgfQorICAgIG1fZWxlbWVudHNQZW5kaW5nVGV4dFJlY29nbml0
aW9uLmNsZWFyKCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19Q
UkVWRU5USU9OKQorICAgIGNsZWFyTG9hZGVkU3VicmVzb3VyY2VEb21haW5zKCk7CisjZW5kaWYK
KyAgICAKKyAgICAvLyBJZiBwcmV2aW91cyBVUkwgaXMgaW52YWxpZCwgdGhlbiBpdCdzIG5vdCBh
IHJlYWwgcGFnZSB0aGF0J3MgYmVpbmcgbmF2aWdhdGVkIGF3YXkgZnJvbS4KKyAgICAvLyBNb3N0
IGxpa2VseSwgdGhpcyBpcyBhY3R1YWxseSB0aGUgZmlyc3QgbG9hZCB0byBiZSBjb21taXR0ZWQg
aW4gdGhpcyBwYWdlLgorICAgIGlmIChmcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRlcigpLnByZXZp
b3VzVVJMKCkuaXNWYWxpZCgpKQorICAgICAgICByZXBvcnRVc2VkRmVhdHVyZXMoKTsKKworICAg
IC8vIE9ubHkgcmVzdG9yZSB0aGUgc2NhbGUgZmFjdG9yIGZvciBzdGFuZGFyZCBmcmFtZSBsb2Fk
cyAob2YgdGhlIG1haW4gZnJhbWUpLgorICAgIGlmIChmcmFtZS0+Y29yZUZyYW1lKCktPmxvYWRl
cigpLmxvYWRUeXBlKCkgPT0gRnJhbWVMb2FkVHlwZTo6U3RhbmRhcmQpIHsKKyAgICAgICAgUGFn
ZSogcGFnZSA9IGZyYW1lLT5jb3JlRnJhbWUoKS0+cGFnZSgpOworCisjaWYgUExBVEZPUk0oTUFD
KQorICAgICAgICAvLyBBcyBhIHZlcnkgc3BlY2lhbCBjYXNlLCB3ZSBkaXNhYmxlIG5vbi1kZWZh
dWx0IGxheW91dCBtb2RlcyBpbiBXS1ZpZXcgZm9yIG1haW4tZnJhbWUgUGx1Z2luRG9jdW1lbnRz
LgorICAgICAgICAvLyBJZGVhbGx5IHdlIHdvdWxkIG9ubHkgd29ycnkgYWJvdXQgdGhpcyBpbiBX
S1ZpZXcgb3IgdGhlIFdLVmlld0xheW91dFN0cmF0ZWdpZXMsIGJ1dCBpZiB3ZSBhbGxvdworICAg
ICAgICAvLyBhIHJvdW5kLXRyaXAgdG8gdGhlIFVJIHByb2Nlc3MsIHlvdSdsbCBzZWUgdGhlIHdy
b25nIHNjYWxlIHRlbXBvcmFyaWx5LiBTbywgd2UgcmVzZXQgaXQgaGVyZSwgYW5kIHRoZW4KKyAg
ICAgICAgLy8gYWdhaW4gbGF0ZXIgZnJvbSB0aGUgVUkgcHJvY2Vzcy4KKyAgICAgICAgaWYgKGZy
YW1lLT5jb3JlRnJhbWUoKS0+ZG9jdW1lbnQoKS0+aXNQbHVnaW5Eb2N1bWVudCgpKSB7CisgICAg
ICAgICAgICBzY2FsZVZpZXcoMSk7CisgICAgICAgICAgICBzZXRVc2VGaXhlZExheW91dChmYWxz
ZSk7CisgICAgICAgIH0KKyNlbmRpZgorCisgICAgICAgIGlmIChwYWdlICYmIHBhZ2UtPnBhZ2VT
Y2FsZUZhY3RvcigpICE9IDEpCisgICAgICAgICAgICBzY2FsZVBhZ2UoMSwgSW50UG9pbnQoKSk7
CisgICAgfQorCisgICAgbV9kaWRVcGRhdGVSZW5kZXJpbmdBZnRlckNvbW1pdHRpbmdMb2FkID0g
ZmFsc2U7CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIG1faGFzUmVjZWl2ZWRWaXNp
YmxlQ29udGVudFJlY3RzQWZ0ZXJEaWRDb21taXRMb2FkID0gZmFsc2U7CisgICAgbV9oYXNSZXN0
b3JlZEV4cG9zZWRDb250ZW50UmVjdEFmdGVyRGlkQ29tbWl0TG9hZCA9IGZhbHNlOworICAgIG1f
bGFzdFRyYW5zYWN0aW9uSURXaXRoU2NhbGVDaGFuZ2UgPSBmaXJzdFRyYW5zYWN0aW9uSURBZnRl
ckRpZENvbW1pdExvYWQ7CisgICAgbV9zY2FsZVdhc1NldEJ5VUlQcm9jZXNzID0gZmFsc2U7Cisg
ICAgbV91c2VySGFzQ2hhbmdlZFBhZ2VTY2FsZUZhY3RvciA9IGZhbHNlOworICAgIG1fZXN0aW1h
dGVkTGF0ZW5jeSA9IFNlY29uZHMoMS4wIC8gNjApOworICAgIG1fc2hvdWxkUmV2ZWFsQ3VycmVu
dFNlbGVjdGlvbkFmdGVySW5zZXJ0aW9uID0gdHJ1ZTsKKyAgICBtX2xhc3RMYXllclRyZWVUcmFu
c2FjdGlvbklkQW5kUGFnZVNjYWxlQmVmb3JlU2NhbGluZ1BhZ2UgPSBzdGQ6Om51bGxvcHQ7CisK
KyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICBFdmVudERpc3BhdGNoZXI6OlRvdWNo
RXZlbnRRdWV1ZSBxdWV1ZWRFdmVudHM7CisgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZXZl
bnREaXNwYXRjaGVyKCkudGFrZVF1ZXVlZFRvdWNoRXZlbnRzRm9yUGFnZSgqdGhpcywgcXVldWVk
RXZlbnRzKTsKKyAgICBjYW5jZWxBc3luY2hyb25vdXNUb3VjaEV2ZW50cyhXVEZNb3ZlKHF1ZXVl
ZEV2ZW50cykpOworI2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKKworI2lm
IEVOQUJMRShNRVRBX1ZJRVdQT1JUKQorICAgIHJlc2V0Vmlld3BvcnREZWZhdWx0Q29uZmlndXJh
dGlvbihmcmFtZSk7CisgICAgY29uc3QgRnJhbWUqIGNvcmVGcmFtZSA9IGZyYW1lLT5jb3JlRnJh
bWUoKTsKKyAgICAKKyAgICBib29sIHZpZXdwb3J0Q2hhbmdlZCA9IGZhbHNlOworCisgICAgTE9H
X1dJVEhfU1RSRUFNKFZpc2libGVSZWN0cywgc3RyZWFtIDw8ICJXZWJQYWdlICIgPDwgbV9pZGVu
dGlmaWVyLnRvVUludDY0KCkgPDwgIiBkaWRDb21taXRMb2FkIHNldHRpbmcgY29udGVudCBzaXpl
IHRvICIgPDwgY29yZUZyYW1lLT52aWV3KCktPmNvbnRlbnRzU2l6ZSgpKTsKKyAgICBpZiAobV92
aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Q29udGVudHNTaXplKGNvcmVGcmFtZS0+dmlldygpLT5j
b250ZW50c1NpemUoKSkpCisgICAgICAgIHZpZXdwb3J0Q2hhbmdlZCA9IHRydWU7CisKKyAgICBp
ZiAobV92aWV3cG9ydENvbmZpZ3VyYXRpb24uc2V0Vmlld3BvcnRBcmd1bWVudHMoY29yZUZyYW1l
LT5kb2N1bWVudCgpLT52aWV3cG9ydEFyZ3VtZW50cygpKSkKKyAgICAgICAgdmlld3BvcnRDaGFu
Z2VkID0gdHJ1ZTsKKworICAgIGlmIChtX3ZpZXdwb3J0Q29uZmlndXJhdGlvbi5zZXRJc0tub3du
VG9MYXlPdXRXaWRlclRoYW5WaWV3cG9ydChmYWxzZSkpCisgICAgICAgIHZpZXdwb3J0Q2hhbmdl
ZCA9IHRydWU7CisKKyAgICBpZiAodmlld3BvcnRDaGFuZ2VkKQorICAgICAgICB2aWV3cG9ydENv
bmZpZ3VyYXRpb25DaGFuZ2VkKCk7CisjZW5kaWYgLy8gRU5BQkxFKE1FVEFfVklFV1BPUlQpCisK
KyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAgIG1fdGV4dEF1dG9TaXppbmdBZGp1c3Rt
ZW50VGltZXIuc3RvcCgpOworI2VuZGlmCisKKyNpZiBVU0UoT1NfU1RBVEUpCisgICAgbV9sb2Fk
Q29tbWl0VGltZSA9IFdhbGxUaW1lOjpub3coKTsKKyNlbmRpZgorCisgICAgdGhlbWVDb2xvckNo
YW5nZWQoKTsKKworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnVwZGF0ZUFjdGl2ZVBhZ2Vz
KG1fcHJvY2Vzc0Rpc3BsYXlOYW1lKTsKKworICAgIHVwZGF0ZU1haW5GcmFtZVNjcm9sbE9mZnNl
dFBpbm5pbmcoKTsKKworICAgIHVwZGF0ZU1vY2tBY2Nlc3NpYmlsaXR5RWxlbWVudEFmdGVyQ29t
bWl0dGluZ0xvYWQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRGaW5pc2hEb2N1bWVudExvYWQo
V2ViRnJhbWUmIGZyYW1lKQoreworICAgIGlmICghZnJhbWUuaXNNYWluRnJhbWUoKSkKKyAgICAg
ICAgcmV0dXJuOworCisjaWYgRU5BQkxFKFZJRVdQT1JUX1JFU0laSU5HKQorICAgIHNocmlua1Rv
Rml0Q29udGVudChab29tVG9Jbml0aWFsU2NhbGU6Olllcyk7CisjZW5kaWYKK30KKwordm9pZCBX
ZWJQYWdlOjpkaWRGaW5pc2hMb2FkKFdlYkZyYW1lJiBmcmFtZSkKK3sKKyAgICBpZiAoIWZyYW1l
LmlzTWFpbkZyYW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnNlbmRQcmV3YXJtSW5mb3JtYXRpb24oZnJhbWUudXJsKCkpOworCisjaWYgRU5BQkxF
KFZJRVdQT1JUX1JFU0laSU5HKQorICAgIHNocmlua1RvRml0Q29udGVudChab29tVG9Jbml0aWFs
U2NhbGU6Olllcyk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlOjpkaWRJbnNlcnRNZW51RWxl
bWVudChIVE1MTWVudUVsZW1lbnQmIGVsZW1lbnQpCit7CisjaWYgSEFWRShUT1VDSF9CQVIpCisg
ICAgc2VuZFRvdWNoQmFyTWVudURhdGFBZGRlZFVwZGF0ZShlbGVtZW50KTsKKyNlbHNlCisgICAg
VU5VU0VEX1BBUkFNKGVsZW1lbnQpOworI2VuZGlmCit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkUmVt
b3ZlTWVudUVsZW1lbnQoSFRNTE1lbnVFbGVtZW50JiBlbGVtZW50KQoreworI2lmIEhBVkUoVE9V
Q0hfQkFSKQorICAgIHNlbmRUb3VjaEJhck1lbnVEYXRhUmVtb3ZlZFVwZGF0ZShlbGVtZW50KTsK
KyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVsZW1lbnQpOworI2VuZGlmCit9CisKK3ZvaWQgV2Vi
UGFnZTo6ZGlkSW5zZXJ0TWVudUl0ZW1FbGVtZW50KEhUTUxNZW51SXRlbUVsZW1lbnQmIGVsZW1l
bnQpCit7CisjaWYgSEFWRShUT1VDSF9CQVIpCisgICAgc2VuZFRvdWNoQmFyTWVudUl0ZW1EYXRh
QWRkZWRVcGRhdGUoZWxlbWVudCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsK
KyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2U6OmRpZFJlbW92ZU1lbnVJdGVtRWxlbWVudChIVE1M
TWVudUl0ZW1FbGVtZW50JiBlbGVtZW50KQoreworI2lmIEhBVkUoVE9VQ0hfQkFSKQorICAgIHNl
bmRUb3VjaEJhck1lbnVJdGVtRGF0YVJlbW92ZWRVcGRhdGUoZWxlbWVudCk7CisjZWxzZQorICAg
IFVOVVNFRF9QQVJBTShlbGVtZW50KTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2U6OnRlc3RQ
cm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseShNZXNzYWdl
czo6V2ViUGFnZTo6VGVzdFByb2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0aW5nRm9y
U3luY1JlcGx5OjpEZWxheWVkUmVwbHkmJiByZXBseSkKK3sKKyAgICBSRUxFQVNFX0FTU0VSVChJ
UEM6OlVuYm91bmRlZFN5bmNocm9ub3VzSVBDU2NvcGU6Omhhc09uZ29pbmdVbmJvdW5kZWRTeW5j
SVBDKCkpOworICAgIHJlcGx5KHRydWUpOworfQorCitzdGQ6Om9wdGlvbmFsPFNpbXBsZVJhbmdl
PiBXZWJQYWdlOjpjdXJyZW50U2VsZWN0aW9uQXNSYW5nZSgpCit7CisgICAgYXV0byogZnJhbWUg
PSBmcmFtZVdpdGhTZWxlY3Rpb24obV9wYWdlLmdldCgpKTsKKyAgICBpZiAoIWZyYW1lKQorICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OworCisgICAgcmV0dXJuIGZyYW1lLT5zZWxlY3Rpb24o
KS5zZWxlY3Rpb24oKS50b05vcm1hbGl6ZWRSYW5nZSgpOworfQorCit2b2lkIFdlYlBhZ2U6OnJl
cG9ydFVzZWRGZWF0dXJlcygpCit7CisgICAgVmVjdG9yPFN0cmluZz4gbmFtZWRGZWF0dXJlczsK
KyAgICBtX2xvYWRlckNsaWVudC0+ZmVhdHVyZXNVc2VkSW5QYWdlKCp0aGlzLCBuYW1lZEZlYXR1
cmVzKTsKK30KKwordm9pZCBXZWJQYWdlOjpzZW5kRWRpdG9yU3RhdGVVcGRhdGUoKQoreworICAg
IFJlZiBmcmFtZSA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRyb2xsZXIoKSktPmZvY3Vz
ZWRPck1haW5GcmFtZSgpOworICAgIGlmIChmcmFtZS0+ZWRpdG9yKCkuaWdub3JlU2VsZWN0aW9u
Q2hhbmdlcygpIHx8ICFmcmFtZS0+ZG9jdW1lbnQoKSB8fCAhZnJhbWUtPmRvY3VtZW50KCktPmhh
c0xpdmluZ1JlbmRlclRyZWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9wZW5kaW5nRWRp
dG9yU3RhdGVVcGRhdGVTdGF0dXMgPSBQZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGVTdGF0dXM6Ok5v
dFNjaGVkdWxlZDsKKworICAgIC8vIElmIHdlIGltbWVkaWF0ZWx5IGRpc3BhdGNoIGFuIEVkaXRv
clN0YXRlIHVwZGF0ZSB0byB0aGUgVUkgcHJvY2VzcywgbGF5b3V0IG1heSBub3QgYmUgdXAgdG8g
ZGF0ZSB5ZXQuCisgICAgLy8gSWYgdGhhdCBpcyB0aGUgY2FzZSwganVzdCBzZW5kIHdoYXQgd2Ug
aGF2ZSAoaS5lLiBkb24ndCBpbmNsdWRlIHBvc3QtbGF5b3V0IGRhdGEpIGFuZCB3YWl0IHVudGls
IHRoZQorICAgIC8vIG5leHQgbGF5ZXIgdHJlZSBjb21taXQgdG8gY29tcHV0ZSBhbmQgc2VuZCB0
aGUgY29tcGxldGUgRWRpdG9yU3RhdGUgb3Zlci4KKyAgICBhdXRvIHN0YXRlID0gZWRpdG9yU3Rh
dGUoKTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkVkaXRvclN0YXRlQ2hhbmdl
ZChzdGF0ZSkpOworICAgIGlmIChzdGF0ZS5pc01pc3NpbmdQb3N0TGF5b3V0RGF0YSAmJiAhc2hv
dWxkQXZvaWRDb21wdXRpbmdQb3N0TGF5b3V0RGF0YUZvckVkaXRvclN0YXRlKCkpCisgICAgICAg
IHNjaGVkdWxlRnVsbEVkaXRvclN0YXRlVXBkYXRlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2No
ZWR1bGVGdWxsRWRpdG9yU3RhdGVVcGRhdGUoKQoreworICAgIGlmIChoYXNQZW5kaW5nRWRpdG9y
U3RhdGVVcGRhdGUoKSkgeworICAgICAgICBpZiAobV9pc0NoYW5naW5nU2VsZWN0aW9uRm9yQWNj
ZXNzaWJpbGl0eSkKKyAgICAgICAgICAgIG1fcGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVz
ID0gUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVzOjpTY2hlZHVsZWREdXJpbmdBY2Nlc3Np
YmlsaXR5U2VsZWN0aW9uQ2hhbmdlOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYg
KG1faXNDaGFuZ2luZ1NlbGVjdGlvbkZvckFjY2Vzc2liaWxpdHkpCisgICAgICAgIG1fcGVuZGlu
Z0VkaXRvclN0YXRlVXBkYXRlU3RhdHVzID0gUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVz
OjpTY2hlZHVsZWREdXJpbmdBY2Nlc3NpYmlsaXR5U2VsZWN0aW9uQ2hhbmdlOworICAgIGVsc2UK
KyAgICAgICAgbV9wZW5kaW5nRWRpdG9yU3RhdGVVcGRhdGVTdGF0dXMgPSBQZW5kaW5nRWRpdG9y
U3RhdGVVcGRhdGVTdGF0dXM6OlNjaGVkdWxlZDsKKworICAgIG1fcGFnZS0+c2NoZWR1bGVSZW5k
ZXJpbmdVcGRhdGUoUmVuZGVyaW5nVXBkYXRlU3RlcDo6TGF5ZXJGbHVzaCk7Cit9CisKKyNpZiBI
QVZFKFRPVUNIX0JBUikKK3ZvaWQgV2ViUGFnZTo6c2VuZFRvdWNoQmFyTWVudURhdGFSZW1vdmVk
VXBkYXRlKEhUTUxNZW51RWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlRvdWNoQmFyTWVudURhdGFDaGFuZ2VkKFRvdWNoQmFyTWVudURhdGEgeyB9
KSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6c2VuZFRvdWNoQmFyTWVudURhdGFBZGRlZFVwZGF0ZShI
VE1MTWVudUVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpUb3VjaEJhck1lbnVEYXRhQ2hhbmdlZChUb3VjaEJhck1lbnVEYXRhIHtlbGVtZW50fSkp
OworfQorCit2b2lkIFdlYlBhZ2U6OnNlbmRUb3VjaEJhck1lbnVJdGVtRGF0YUFkZGVkVXBkYXRl
KEhUTUxNZW51SXRlbUVsZW1lbnQmIGVsZW1lbnQpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpUb3VjaEJhck1lbnVJdGVtRGF0YUFkZGVkKFRvdWNoQmFyTWVudUl0ZW1EYXRh
IHtlbGVtZW50fSkpOworfQorCit2b2lkIFdlYlBhZ2U6OnNlbmRUb3VjaEJhck1lbnVJdGVtRGF0
YVJlbW92ZWRVcGRhdGUoSFRNTE1lbnVJdGVtRWxlbWVudCYgZWxlbWVudCkKK3sKKyAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlRvdWNoQmFyTWVudUl0ZW1EYXRhUmVtb3ZlZChUb3Vj
aEJhck1lbnVJdGVtRGF0YSB7ZWxlbWVudH0pKTsKK30KKyNlbmRpZgorCit2b2lkIFdlYlBhZ2U6
OmZsdXNoUGVuZGluZ1RoZW1lQ29sb3JDaGFuZ2UoKQoreworICAgIGlmICghbV9wZW5kaW5nVGhl
bWVDb2xvckNoYW5nZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9wZW5kaW5nVGhlbWVDb2xv
ckNoYW5nZSA9IGZhbHNlOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpUaGVt
ZUNvbG9yQ2hhbmdlZChtX3BhZ2UtPnRoZW1lQ29sb3IoKSkpOworfQorCit2b2lkIFdlYlBhZ2U6
OmZsdXNoUGVuZGluZ1BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckNoYW5nZSgpCit7CisgICAg
aWYgKCFtX3BlbmRpbmdQYWdlRXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JDaGFuZ2UpCisgICAgICAg
IHJldHVybjsKKworICAgIG1fcGVuZGluZ1BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckNoYW5n
ZSA9IGZhbHNlOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpQYWdlRXh0ZW5k
ZWRCYWNrZ3JvdW5kQ29sb3JEaWRDaGFuZ2UobV9wYWdlLT5wYWdlRXh0ZW5kZWRCYWNrZ3JvdW5k
Q29sb3IoKSkpOworfQorCit2b2lkIFdlYlBhZ2U6OmZsdXNoUGVuZGluZ1NhbXBsZWRQYWdlVG9w
Q29sb3JDaGFuZ2UoKQoreworICAgIGlmICghbV9wZW5kaW5nU2FtcGxlZFBhZ2VUb3BDb2xvckNo
YW5nZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9wZW5kaW5nU2FtcGxlZFBhZ2VUb3BDb2xv
ckNoYW5nZSA9IGZhbHNlOworCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTYW1w
bGVkUGFnZVRvcENvbG9yQ2hhbmdlZChtX3BhZ2UtPnNhbXBsZWRQYWdlVG9wQ29sb3IoKSkpOwor
fQorCit2b2lkIFdlYlBhZ2U6OmZsdXNoUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlKCkKK3sKKyAg
ICBpZiAoIWhhc1BlbmRpbmdFZGl0b3JTdGF0ZVVwZGF0ZSgpKQorICAgICAgICByZXR1cm47CisK
KyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9sbGVyKCkpLT5m
b2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBpZiAoZnJhbWUtPmVkaXRvcigpLmlnbm9yZVNlbGVj
dGlvbkNoYW5nZXMoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgc2VuZEVkaXRvclN0YXRlVXBk
YXRlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlV2Vic2l0ZVBvbGljaWVzKFdlYnNpdGVQ
b2xpY2llc0RhdGEmJiB3ZWJzaXRlUG9saWNpZXMpCit7CisgICAgaWYgKCFtX3BhZ2UpCisgICAg
ICAgIHJldHVybjsKKworICAgIGF1dG8qIGRvY3VtZW50TG9hZGVyID0gbV9wYWdlLT5tYWluRnJh
bWUoKS5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOworICAgIGlmICghZG9jdW1lbnRMb2FkZXIp
CisgICAgICAgIHJldHVybjsKKworICAgIG1fYWxsb3dzQ29udGVudEphdmFTY3JpcHRGcm9tTW9z
dFJlY2VudE5hdmlnYXRpb24gPSB3ZWJzaXRlUG9saWNpZXMuYWxsb3dzQ29udGVudEphdmFTY3Jp
cHQ7CisgICAgV2Vic2l0ZVBvbGljaWVzRGF0YTo6YXBwbHlUb0RvY3VtZW50TG9hZGVyKFdURk1v
dmUod2Vic2l0ZVBvbGljaWVzKSwgKmRvY3VtZW50TG9hZGVyKTsKKyAgICAKKyNpZiBFTkFCTEUo
VklERU8pCisgICAgbV9wYWdlLT51cGRhdGVNZWRpYUVsZW1lbnRSYXRlQ2hhbmdlUmVzdHJpY3Rp
b25zKCk7CisjZW5kaWYKK30KKwordm9pZCBXZWJQYWdlOjpub3RpZnlVc2VyU2NyaXB0cygpCit7
CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIG1fcGFnZS0+bm90aWZ5
VG9JbmplY3RVc2VyU2NyaXB0cygpOworfQorCit1bnNpZ25lZCBXZWJQYWdlOjpleHRlbmRJbmNy
ZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uKCkKK3sKKyAgICB1bnNpZ25lZCB0b2tlbiA9IG1f
bWF4aW11bVJlbmRlcmluZ1N1cHByZXNzaW9uVG9rZW4gKyAxOworICAgIHdoaWxlICghSGFzaFNl
dDx1bnNpZ25lZD46OmlzVmFsaWRWYWx1ZSh0b2tlbikgfHwgbV9hY3RpdmVSZW5kZXJpbmdTdXBw
cmVzc2lvblRva2Vucy5jb250YWlucyh0b2tlbikpCisgICAgICAgIHRva2VuKys7CisKKyAgICBt
X2FjdGl2ZVJlbmRlcmluZ1N1cHByZXNzaW9uVG9rZW5zLmFkZCh0b2tlbik7CisgICAgbV9wYWdl
LT5tYWluRnJhbWUoKS52aWV3KCktPnNldFZpc3VhbFVwZGF0ZXNBbGxvd2VkQnlDbGllbnQoZmFs
c2UpOworCisgICAgbV9tYXhpbXVtUmVuZGVyaW5nU3VwcHJlc3Npb25Ub2tlbiA9IHRva2VuOwor
CisgICAgcmV0dXJuIHRva2VuOworfQorCit2b2lkIFdlYlBhZ2U6OnN0b3BFeHRlbmRpbmdJbmNy
ZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uKHVuc2lnbmVkIHRva2VuKQoreworICAgIGlmICgh
bV9hY3RpdmVSZW5kZXJpbmdTdXBwcmVzc2lvblRva2Vucy5yZW1vdmUodG9rZW4pKQorICAgICAg
ICByZXR1cm47CisKKyAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLnZpZXcoKS0+c2V0VmlzdWFsVXBk
YXRlc0FsbG93ZWRCeUNsaWVudCghc2hvdWxkRXh0ZW5kSW5jcmVtZW50YWxSZW5kZXJpbmdTdXBw
cmVzc2lvbigpKTsKK30KKyAgICAKK3ZvaWQgV2ViUGFnZTo6c2V0U2Nyb2xsUGlubmluZ0JlaGF2
aW9yKHVpbnQzMl90IHBpbm5pbmcpCit7CisgICAgbV9zY3JvbGxQaW5uaW5nQmVoYXZpb3IgPSBz
dGF0aWNfY2FzdDxTY3JvbGxQaW5uaW5nQmVoYXZpb3I+KHBpbm5pbmcpOworICAgIG1fcGFnZS0+
bWFpbkZyYW1lKCkudmlldygpLT5zZXRTY3JvbGxQaW5uaW5nQmVoYXZpb3IobV9zY3JvbGxQaW5u
aW5nQmVoYXZpb3IpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldFNjcm9sbGJhck92ZXJsYXlTdHls
ZShzdGQ6Om9wdGlvbmFsPHVpbnQzMl90PiBzY3JvbGxiYXJTdHlsZSkKK3sKKyAgICBpZiAoc2Ny
b2xsYmFyU3R5bGUpCisgICAgICAgIG1fc2Nyb2xsYmFyT3ZlcmxheVN0eWxlID0gc3RhdGljX2Nh
c3Q8U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPihzY3JvbGxiYXJTdHlsZS52YWx1ZSgpKTsKKyAgICBl
bHNlCisgICAgICAgIG1fc2Nyb2xsYmFyT3ZlcmxheVN0eWxlID0gc3RkOjpvcHRpb25hbDxTY3Jv
bGxiYXJPdmVybGF5U3R5bGU+KCk7CisgICAgbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCktPnJl
Y2FsY3VsYXRlU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKCk7Cit9CisKK1JlZjxEb2N1bWVudExvYWRl
cj4gV2ViUGFnZTo6Y3JlYXRlRG9jdW1lbnRMb2FkZXIoRnJhbWUmIGZyYW1lLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN1YnN0aXR1dGVEYXRhJiBzdWJzdGl0dXRlRGF0
YSkKK3sKKyAgICBSZWY8V2ViRG9jdW1lbnRMb2FkZXI+IGRvY3VtZW50TG9hZGVyID0gV2ViRG9j
dW1lbnRMb2FkZXI6OmNyZWF0ZShyZXF1ZXN0LCBzdWJzdGl0dXRlRGF0YSk7CisKKyAgICBkb2N1
bWVudExvYWRlci0+c2V0TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQobV9sYXN0TmF2aWdh
dGlvbldhc0FwcEluaXRpYXRlZCk7CisKKyAgICBpZiAoZnJhbWUuaXNNYWluRnJhbWUoKSkgewor
ICAgICAgICBpZiAobV9wZW5kaW5nTmF2aWdhdGlvbklEKSB7CisgICAgICAgICAgICBkb2N1bWVu
dExvYWRlci0+c2V0TmF2aWdhdGlvbklEKG1fcGVuZGluZ05hdmlnYXRpb25JRCk7CisgICAgICAg
ICAgICBtX3BlbmRpbmdOYXZpZ2F0aW9uSUQgPSAwOworICAgICAgICB9CisKKyAgICAgICAgaWYg
KG1fcGVuZGluZ1dlYnNpdGVQb2xpY2llcykgeworICAgICAgICAgICAgbV9hbGxvd3NDb250ZW50
SmF2YVNjcmlwdEZyb21Nb3N0UmVjZW50TmF2aWdhdGlvbiA9IG1fcGVuZGluZ1dlYnNpdGVQb2xp
Y2llcy0+YWxsb3dzQ29udGVudEphdmFTY3JpcHQ7CisgICAgICAgICAgICBXZWJzaXRlUG9saWNp
ZXNEYXRhOjphcHBseVRvRG9jdW1lbnRMb2FkZXIoV1RGTW92ZSgqbV9wZW5kaW5nV2Vic2l0ZVBv
bGljaWVzKSwgZG9jdW1lbnRMb2FkZXIpOworICAgICAgICAgICAgbV9wZW5kaW5nV2Vic2l0ZVBv
bGljaWVzID0gc3RkOjpudWxsb3B0OworICAgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIGRv
Y3VtZW50TG9hZGVyOworfQorCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZUNhY2hlZERvY3VtZW50TG9h
ZGVyKFdlYkRvY3VtZW50TG9hZGVyJiBkb2N1bWVudExvYWRlciwgRnJhbWUmIGZyYW1lKQorewor
ICAgIGlmIChtX3BlbmRpbmdOYXZpZ2F0aW9uSUQgJiYgZnJhbWUuaXNNYWluRnJhbWUoKSkgewor
ICAgICAgICBkb2N1bWVudExvYWRlci5zZXROYXZpZ2F0aW9uSUQobV9wZW5kaW5nTmF2aWdhdGlv
bklEKTsKKyAgICAgICAgbV9wZW5kaW5nTmF2aWdhdGlvbklEID0gMDsKKyAgICB9Cit9CisKK3Zv
aWQgV2ViUGFnZTo6Z2V0Qnl0ZWNvZGVQcm9maWxlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgU3RyaW5nJik+JiYgY2FsbGJhY2spCit7CisgICAgaWYgKExJS0VMWSghY29tbW9uVk0oKS5t
X3BlckJ5dGVjb2RlUHJvZmlsZXIpKQorICAgICAgICByZXR1cm4gY2FsbGJhY2soeyB9KTsKKwor
ICAgIFN0cmluZyByZXN1bHQgPSBjb21tb25WTSgpLm1fcGVyQnl0ZWNvZGVQcm9maWxlci0+dG9K
U09OKCk7CisgICAgQVNTRVJUKHJlc3VsdC5sZW5ndGgoKSk7CisgICAgY2FsbGJhY2socmVzdWx0
KTsKK30KKwordm9pZCBXZWJQYWdlOjpnZXRTYW1wbGluZ1Byb2ZpbGVyT3V0cHV0KENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYgY2FsbGJhY2spCit7CisjaWYgRU5BQkxF
KFNBTVBMSU5HX1BST0ZJTEVSKQorICAgIFNhbXBsaW5nUHJvZmlsZXIqIHNhbXBsaW5nUHJvZmls
ZXIgPSBjb21tb25WTSgpLnNhbXBsaW5nUHJvZmlsZXIoKTsKKyAgICBpZiAoIXNhbXBsaW5nUHJv
ZmlsZXIpCisgICAgICAgIHJldHVybiBjYWxsYmFjayh7IH0pOworCisgICAgU3RyaW5nUHJpbnRT
dHJlYW0gcmVzdWx0OworICAgIHNhbXBsaW5nUHJvZmlsZXItPnJlcG9ydFRvcEZ1bmN0aW9ucyhy
ZXN1bHQpOworICAgIHNhbXBsaW5nUHJvZmlsZXItPnJlcG9ydFRvcEJ5dGVjb2RlcyhyZXN1bHQp
OworICAgIGNhbGxiYWNrKHJlc3VsdC50b1N0cmluZygpKTsKKyNlbHNlCisgICAgY2FsbGJhY2so
eyB9KTsKKyNlbmRpZgorfQorCit2b2lkIFdlYlBhZ2U6OmRpZENoYW5nZVNjcm9sbE9mZnNldEZv
ckZyYW1lKEZyYW1lKiBmcmFtZSkKK3sKKyAgICBpZiAoIWZyYW1lLT5pc01haW5GcmFtZSgpKQor
ICAgICAgICByZXR1cm47CisKKyAgICAvLyBJZiB0aGlzIGlzIGNhbGxlZCB3aGVuIHRlYXJpbmcg
ZG93biBhIEZyYW1lVmlldywgdGhlIFdlYkNvcmU6OkZyYW1lJ3MKKyAgICAvLyBjdXJyZW50IEZy
YW1lVmlldyB3aWxsIGJlIG51bGwuCisgICAgaWYgKCFmcmFtZS0+dmlldygpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICB1cGRhdGVNYWluRnJhbWVTY3JvbGxPZmZzZXRQaW5uaW5nKCk7Cit9CisK
K3ZvaWQgV2ViUGFnZTo6cG9zdE1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdlTmFtZSwgQVBJ
OjpPYmplY3QqIG1lc3NhZ2VCb2R5KQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6SGFuZGxlTWVzc2FnZShtZXNzYWdlTmFtZSwgVXNlckRhdGEoV2ViUHJvY2Vzczo6c2luZ2xl
dG9uKCkudHJhbnNmb3JtT2JqZWN0c1RvSGFuZGxlcyhtZXNzYWdlQm9keSkpKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6cG9zdE1lc3NhZ2VJZ25vcmluZ0Z1bGx5U3luY2hyb25vdXNNb2RlKGNvbnN0
IFN0cmluZyYgbWVzc2FnZU5hbWUsIEFQSTo6T2JqZWN0KiBtZXNzYWdlQm9keSkKK3sKKyAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkhhbmRsZU1lc3NhZ2UobWVzc2FnZU5hbWUsIFVz
ZXJEYXRhKFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnRyYW5zZm9ybU9iamVjdHNUb0hhbmRsZXMo
bWVzc2FnZUJvZHkpKSksIElQQzo6U2VuZE9wdGlvbjo6SWdub3JlRnVsbHlTeW5jaHJvbm91c01v
ZGUpOworfQorCit2b2lkIFdlYlBhZ2U6OnBvc3RTeW5jaHJvbm91c01lc3NhZ2VGb3JUZXN0aW5n
KGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIEFQSTo6T2JqZWN0KiBtZXNzYWdlQm9keSwgUmVm
UHRyPEFQSTo6T2JqZWN0PiYgcmV0dXJuRGF0YSkKK3sKKyAgICBVc2VyRGF0YSByZXR1cm5Vc2Vy
RGF0YTsKKworICAgIGF1dG8mIHdlYlByb2Nlc3MgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKTsK
KyAgICBpZiAoIXNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkhhbmRsZVN5bmNocm9u
b3VzTWVzc2FnZShtZXNzYWdlTmFtZSwgVXNlckRhdGEod2ViUHJvY2Vzcy50cmFuc2Zvcm1PYmpl
Y3RzVG9IYW5kbGVzKG1lc3NhZ2VCb2R5KSkpLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5k
bGVTeW5jaHJvbm91c01lc3NhZ2U6OlJlcGx5KHJldHVyblVzZXJEYXRhKSwgU2Vjb25kczo6aW5m
aW5pdHkoKSwgSVBDOjpTZW5kU3luY09wdGlvbjo6VXNlRnVsbHlTeW5jaHJvbm91c01vZGVGb3JU
ZXN0aW5nKSkKKyAgICAgICAgcmV0dXJuRGF0YSA9IG51bGxwdHI7CisgICAgZWxzZQorICAgICAg
ICByZXR1cm5EYXRhID0gd2ViUHJvY2Vzcy50cmFuc2Zvcm1IYW5kbGVzVG9PYmplY3RzKHJldHVy
blVzZXJEYXRhLm9iamVjdCgpKTsKK30KKwordm9pZCBXZWJQYWdlOjpjbGVhcldoZWVsRXZlbnRU
ZXN0TW9uaXRvcigpCit7CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsKKworICAg
IG1fcGFnZS0+Y2xlYXJXaGVlbEV2ZW50VGVzdE1vbml0b3IoKTsKK30KKwordm9pZCBXZWJQYWdl
OjpzZXRTaG91bGRTY2FsZVZpZXdUb0ZpdERvY3VtZW50KGJvb2wgc2hvdWxkU2NhbGVWaWV3VG9G
aXREb2N1bWVudCkKK3sKKyAgICBpZiAoIW1fZHJhd2luZ0FyZWEpCisgICAgICAgIHJldHVybjsK
KworICAgIG1fZHJhd2luZ0FyZWEtPnNldFNob3VsZFNjYWxlVmlld1RvRml0RG9jdW1lbnQoc2hv
dWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6aW1hZ2VPck1l
ZGlhRG9jdW1lbnRTaXplQ2hhbmdlZChjb25zdCBJbnRTaXplJiBuZXdTaXplKQoreworICAgIHNl
bmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6SW1hZ2VPck1lZGlhRG9jdW1lbnRTaXplQ2hhbmdl
ZChuZXdTaXplKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6YWRkVXNlclNjcmlwdChTdHJpbmcmJiBz
b3VyY2UsIEluamVjdGVkQnVuZGxlU2NyaXB0V29ybGQmIHdvcmxkLCBXZWJDb3JlOjpVc2VyQ29u
dGVudEluamVjdGVkRnJhbWVzIGluamVjdGVkRnJhbWVzLCBXZWJDb3JlOjpVc2VyU2NyaXB0SW5q
ZWN0aW9uVGltZSBpbmplY3Rpb25UaW1lKQoreworICAgIFdlYkNvcmU6OlVzZXJTY3JpcHQgdXNl
clNjcmlwdCB7IFdURk1vdmUoc291cmNlKSwgVVJMKGFib3V0QmxhbmtVUkwoKSksIFZlY3RvcjxT
dHJpbmc+KCksIFZlY3RvcjxTdHJpbmc+KCksIGluamVjdGlvblRpbWUsIGluamVjdGVkRnJhbWVz
LCBXZWJDb3JlOjpXYWl0Rm9yTm90aWZpY2F0aW9uQmVmb3JlSW5qZWN0aW5nOjpObyB9OworCisg
ICAgbV91c2VyQ29udGVudENvbnRyb2xsZXItPmFkZFVzZXJTY3JpcHQod29ybGQsIFdURk1vdmUo
dXNlclNjcmlwdCkpOworfQorCit2b2lkIFdlYlBhZ2U6OmFkZFVzZXJTdHlsZVNoZWV0KGNvbnN0
IFN0cmluZyYgc291cmNlLCBXZWJDb3JlOjpVc2VyQ29udGVudEluamVjdGVkRnJhbWVzIGluamVj
dGVkRnJhbWVzKQoreworICAgIFdlYkNvcmU6OlVzZXJTdHlsZVNoZWV0IHVzZXJTdHlsZVNoZWV0
IHtzb3VyY2UsIGFib3V0QmxhbmtVUkwoKSwgVmVjdG9yPFN0cmluZz4oKSwgVmVjdG9yPFN0cmlu
Zz4oKSwgaW5qZWN0ZWRGcmFtZXMsIFVzZXJTdHlsZVVzZXJMZXZlbCB9OworCisgICAgbV91c2Vy
Q29udGVudENvbnRyb2xsZXItPmFkZFVzZXJTdHlsZVNoZWV0KEluamVjdGVkQnVuZGxlU2NyaXB0
V29ybGQ6Om5vcm1hbFdvcmxkKCksIFdURk1vdmUodXNlclN0eWxlU2hlZXQpKTsKK30KKwordm9p
ZCBXZWJQYWdlOjpyZW1vdmVBbGxVc2VyQ29udGVudCgpCit7CisgICAgbV91c2VyQ29udGVudENv
bnRyb2xsZXItPnJlbW92ZUFsbFVzZXJDb250ZW50KCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dXBk
YXRlSW50cmluc2ljQ29udGVudFNpemVJZk5lZWRlZChjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBz
aXplKQoreworICAgIG1fcGVuZGluZ0ludHJpbnNpY0NvbnRlbnRTaXplID0gc3RkOjpudWxsb3B0
OworICAgIGlmICghbWluaW11bVNpemVGb3JBdXRvTGF5b3V0KCkud2lkdGgoKSAmJiAhc2l6ZVRv
Q29udGVudEF1dG9TaXplTWF4aW11bVNpemUoKS53aWR0aCgpICYmICFzaXplVG9Db250ZW50QXV0
b1NpemVNYXhpbXVtU2l6ZSgpLmhlaWdodCgpKQorICAgICAgICByZXR1cm47CisgICAgQVNTRVJU
KG1haW5GcmFtZVZpZXcoKSk7CisgICAgQVNTRVJUKG1haW5GcmFtZVZpZXcoKS0+aXNGaXhlZFdp
ZHRoQXV0b1NpemVFbmFibGVkKCkgfHwgbWFpbkZyYW1lVmlldygpLT5pc1NpemVUb0NvbnRlbnRB
dXRvU2l6ZUVuYWJsZWQoKSk7CisgICAgQVNTRVJUKCFtYWluRnJhbWVWaWV3KCktPm5lZWRzTGF5
b3V0KCkpOworICAgIGlmIChtX2xhc3RTZW50SW50cmluc2ljQ29udGVudFNpemUgPT0gc2l6ZSkK
KyAgICAgICAgcmV0dXJuOworICAgIG1fbGFzdFNlbnRJbnRyaW5zaWNDb250ZW50U2l6ZSA9IHNp
emU7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VJbnRyaW5zaWND
b250ZW50U2l6ZShzaXplKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Zmx1c2hQZW5kaW5nSW50cmlu
c2ljQ29udGVudFNpemVVcGRhdGUoKQoreworICAgIGlmIChhdXRvIHBlbmRpbmdTaXplID0gc3Rk
OjpleGNoYW5nZShtX3BlbmRpbmdJbnRyaW5zaWNDb250ZW50U2l6ZSwgc3RkOjpudWxsb3B0KSkK
KyAgICAgICAgdXBkYXRlSW50cmluc2ljQ29udGVudFNpemVJZk5lZWRlZCgqcGVuZGluZ1NpemUp
OworfQorCit2b2lkIFdlYlBhZ2U6OnNjaGVkdWxlSW50cmluc2ljQ29udGVudFNpemVVcGRhdGUo
Y29uc3QgSW50U2l6ZSYgc2l6ZSkKK3sKKyAgICBpZiAoIW1pbmltdW1TaXplRm9yQXV0b0xheW91
dCgpLndpZHRoKCkgJiYgIXNpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplKCkud2lkdGgo
KSAmJiAhc2l6ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUoKS5oZWlnaHQoKSkKKyAgICAg
ICAgcmV0dXJuOworICAgIEFTU0VSVChtYWluRnJhbWVWaWV3KCkpOworICAgIEFTU0VSVChtYWlu
RnJhbWVWaWV3KCktPmlzRml4ZWRXaWR0aEF1dG9TaXplRW5hYmxlZCgpIHx8IG1haW5GcmFtZVZp
ZXcoKS0+aXNTaXplVG9Db250ZW50QXV0b1NpemVFbmFibGVkKCkpOworICAgIEFTU0VSVCghbWFp
bkZyYW1lVmlldygpLT5uZWVkc0xheW91dCgpKTsKKyAgICBtX3BlbmRpbmdJbnRyaW5zaWNDb250
ZW50U2l6ZSA9IHNpemU7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlzcGF0Y2hEaWRSZWFjaExheW91
dE1pbGVzdG9uZShPcHRpb25TZXQ8V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lPiBtaWxlc3RvbmVz
KQoreworICAgIFJlZlB0cjxBUEk6Ok9iamVjdD4gdXNlckRhdGE7CisgICAgaW5qZWN0ZWRCdW5k
bGVMb2FkZXJDbGllbnQoKS5kaWRSZWFjaExheW91dE1pbGVzdG9uZSgqdGhpcywgbWlsZXN0b25l
cywgdXNlckRhdGEpOworCisgICAgLy8gQ2xpZW50cyBzaG91bGQgbm90IHNldCB1c2VyRGF0YSBm
b3IgdGhpcyBtZXNzYWdlLCBhbmQgaXQgd29uJ3QgYmUgcGFzc2VkIHRocm91Z2guCisgICAgQVNT
RVJUKCF1c2VyRGF0YSk7CisKKyAgICAvLyBUaGUgZHJhd2luZyBhcmVhIG1pZ2h0IHdhbnQgdG8g
ZGVmZXIgZGlzcGF0Y2ggb2YgZGlkTGF5b3V0IHRvIHRoZSBVSSBwcm9jZXNzLgorICAgIGlmICht
X2RyYXdpbmdBcmVhKSB7CisgICAgICAgIHN0YXRpYyBhdXRvIHBhaW50TWlsZXN0b25lcyA9IE9w
dGlvblNldDxXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmU+IHsgRGlkSGl0UmVsZXZhbnRSZXBhaW50
ZWRPYmplY3RzQXJlYVRocmVzaG9sZCwgRGlkRmlyc3RGbHVzaEZvckhlYWRlckxheWVyLCBEaWRG
aXJzdFBhaW50QWZ0ZXJTdXBwcmVzc2VkSW5jcmVtZW50YWxSZW5kZXJpbmcsIERpZFJlbmRlclNp
Z25pZmljYW50QW1vdW50T2ZUZXh0LCBEaWRGaXJzdE1lYW5pbmdmdWxQYWludCB9OyAgIAorICAg
ICAgICBhdXRvIGRyYXdpbmdBcmVhUmVsYXRlZE1pbGVzdG9uZXMgPSBtaWxlc3RvbmVzICYgcGFp
bnRNaWxlc3RvbmVzOworICAgICAgICBpZiAoZHJhd2luZ0FyZWFSZWxhdGVkTWlsZXN0b25lcyAm
JiBtX2RyYXdpbmdBcmVhLT5hZGRNaWxlc3RvbmVzVG9EaXNwYXRjaChkcmF3aW5nQXJlYVJlbGF0
ZWRNaWxlc3RvbmVzKSkKKyAgICAgICAgICAgIG1pbGVzdG9uZXMucmVtb3ZlKGRyYXdpbmdBcmVh
UmVsYXRlZE1pbGVzdG9uZXMpOworICAgIH0KKyAgICBpZiAobWlsZXN0b25lcy5jb250YWlucyhE
aWRGaXJzdExheW91dCkgJiYgbWFpbkZyYW1lVmlldygpKSB7CisgICAgICAgIC8vIEVuc3VyZSB3
ZSBuZXZlciBzZW5kIERpZEZpcnN0TGF5b3V0IG1pbGVzdG9uZSB3aXRob3V0IHVwZGF0aW5nIHRo
ZSBpbnRyaW5zaWMgc2l6ZS4KKyAgICAgICAgdXBkYXRlSW50cmluc2ljQ29udGVudFNpemVJZk5l
ZWRlZChtYWluRnJhbWVWaWV3KCktPmF1dG9TaXppbmdJbnRyaW5zaWNDb250ZW50U2l6ZSgpKTsK
KyAgICB9CisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZFJlYWNoTGF5b3V0
TWlsZXN0b25lKG1pbGVzdG9uZXMpKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRSZXN0b3JlU2Ny
b2xsUG9zaXRpb24oKQoreworICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkUmVz
dG9yZVNjcm9sbFBvc2l0aW9uKCkpOworfQorCit2b2lkIFdlYlBhZ2U6OnNldFVzZXJJbnRlcmZh
Y2VMYXlvdXREaXJlY3Rpb24odWludDMyX3QgZGlyZWN0aW9uKQoreworICAgIG1fdXNlckludGVy
ZmFjZUxheW91dERpcmVjdGlvbiA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OlVzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb24+KGRpcmVjdGlvbik7CisgICAgbV9wYWdlLT5zZXRVc2VySW50ZXJmYWNl
TGF5b3V0RGlyZWN0aW9uKG1fdXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbik7Cit9CisKKyNp
ZiBFTkFCTEUoR0FNRVBBRCkKKwordm9pZCBXZWJQYWdlOjpnYW1lcGFkQWN0aXZpdHkoY29uc3Qg
VmVjdG9yPEdhbWVwYWREYXRhPiYgZ2FtZXBhZERhdGFzLCBFdmVudE1ha2VzR2FtZXBhZHNWaXNp
YmxlIGV2ZW50VmlzaWJpbHR5KQoreworICAgIFdlYkdhbWVwYWRQcm92aWRlcjo6c2luZ2xldG9u
KCkuZ2FtZXBhZEFjdGl2aXR5KGdhbWVwYWREYXRhcywgZXZlbnRWaXNpYmlsdHkpOworfQorCisj
ZW5kaWYKKworI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCit2b2lkIFdlYlBhZ2U6OmRpZEFjcXVp
cmVQb2ludGVyTG9jaygpCit7CisgICAgY29yZVBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVy
KCkuZGlkQWNxdWlyZVBvaW50ZXJMb2NrKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkTm90QWNx
dWlyZVBvaW50ZXJMb2NrKCkKK3sKKyAgICBjb3JlUGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xs
ZXIoKS5kaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKTsKK30KKwordm9pZCBXZWJQYWdlOjpkaWRM
b3NlUG9pbnRlckxvY2soKQoreworICAgIGNvcmVQYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxl
cigpLmRpZExvc2VQb2ludGVyTG9jaygpOworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZTo6ZGlk
R2V0TG9hZERlY2lzaW9uRm9ySWNvbihib29sIGRlY2lzaW9uLCBDYWxsYmFja0lEIGxvYWRJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IElQQzo6U2hhcmVkQnVmZmVyRGF0
YVJlZmVyZW5jZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8qIGRvY3VtZW50
TG9hZGVyID0gY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIo
KTsKKyAgICBpZiAoIWRvY3VtZW50TG9hZGVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhh
bmRsZXIoeyB9KTsKKworICAgIGRvY3VtZW50TG9hZGVyLT5kaWRHZXRMb2FkRGVjaXNpb25Gb3JJ
Y29uKGRlY2lzaW9uLCBsb2FkSWRlbnRpZmllci50b0ludGVnZXIoKSwgW2NvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIChXZWJDb3JlOjpTaGFyZWRCdWZmZXIq
IGljb25EYXRhKSBtdXRhYmxlIHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyBpY29uRGF0
YSB9KTsKKyAgICB9KTsKK30KKwordm9pZCBXZWJQYWdlOjpzZXRVc2VJY29uTG9hZGluZ0NsaWVu
dChib29sIHVzZUljb25Mb2FkaW5nQ2xpZW50KQoreworICAgIHN0YXRpY19jYXN0PFdlYkZyYW1l
TG9hZGVyQ2xpZW50Jj4oY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkubG9hZGVyKCkuY2xpZW50KCkp
LnNldFVzZUljb25Mb2FkaW5nQ2xpZW50KHVzZUljb25Mb2FkaW5nQ2xpZW50KTsKK30KKworV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5KiBXZWJQYWdlOjp1cmxTY2hlbWVIYW5kbGVyRm9yU2NoZW1l
KGNvbnN0IFN0cmluZyYgc2NoZW1lKQoreworICAgIHJldHVybiBtX3NjaGVtZVRvVVJMU2NoZW1l
SGFuZGxlclByb3h5TWFwLmdldChzY2hlbWUpOworfQorCit2b2lkIFdlYlBhZ2U6OnN0b3BBbGxV
UkxTY2hlbWVUYXNrcygpCit7CisgICAgSGFzaFNldDxXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkq
PiBoYW5kbGVyczsKKyAgICBmb3IgKGF1dG8mIGhhbmRsZXIgOiBtX3NjaGVtZVRvVVJMU2NoZW1l
SGFuZGxlclByb3h5TWFwLnZhbHVlcygpKQorICAgICAgICBoYW5kbGVycy5hZGQoaGFuZGxlci5n
ZXQoKSk7CisKKyAgICBmb3IgKGF1dG8qIGhhbmRsZXIgOiBoYW5kbGVycykKKyAgICAgICAgaGFu
ZGxlci0+c3RvcEFsbFRhc2tzKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxTY2hl
bWVIYW5kbGVyKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNjaGVt
ZSkKK3sKKyAgICBXRUJQQUdFX1JFTEVBU0VfTE9HKFByb2Nlc3MsICJyZWdpc3RlclVSTFNjaGVt
ZUhhbmRsZXI6IFJlZ2lzdGVyZWQgaGFuZGxlciAlIiBQUkl1NjQgIiBmb3IgdGhlICclcycgc2No
ZW1lIiwgaGFuZGxlcklkZW50aWZpZXIsIHNjaGVtZS51dGY4KCkuZGF0YSgpKTsKKyAgICBXZWJD
b3JlOjpMZWdhY3lTY2hlbWVSZWdpc3RyeTo6cmVnaXN0ZXJVUkxTY2hlbWVBc0hhbmRsZWRCeVNj
aGVtZUhhbmRsZXIoc2NoZW1lKTsKKyAgICBXZWJDb3JlOjpMZWdhY3lTY2hlbWVSZWdpc3RyeTo6
cmVnaXN0ZXJVUkxTY2hlbWVBc0NPUlNFbmFibGVkKHNjaGVtZSk7CisgICAgYXV0byBzY2hlbWVS
ZXN1bHQgPSBtX3NjaGVtZVRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmFkZChzY2hlbWUsIFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6Y3JlYXRlKCp0aGlzLCBoYW5kbGVySWRlbnRpZmllcikp
OworICAgIG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmFkZChoYW5kbGVy
SWRlbnRpZmllciwgc2NoZW1lUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS5nZXQoKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3Bv
bnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVy
KQoreworICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQ
cm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOworICAgIEFTU0VSVChoYW5kbGVyKTsKKwor
ICAgIGF1dG8gYWN0dWFsTmV3UmVxdWVzdCA9IHJlcXVlc3Q7CisgICAgaGFuZGxlci0+dGFza0Rp
ZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRlbnRpZmllciwgV1RGTW92ZShyZXNwb25zZSksIFdU
Rk1vdmUocmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKK30KKwordm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYm
IHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQoreworICAgIGF1dG8qIGhhbmRs
ZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklk
ZW50aWZpZXIpOworICAgIEFTU0VSVChoYW5kbGVyKTsKKworICAgIGhhbmRsZXItPnRhc2tEaWRQ
ZXJmb3JtUmVkaXJlY3Rpb24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVzcG9uc2UpLCBXVEZN
b3ZlKHJlcXVlc3QpLCBbXSAoUmVzb3VyY2VSZXF1ZXN0JiYpIHt9KTsKK30KKyAgICAKK3ZvaWQg
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQoreworICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNj
aGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOworICAgIEFTU0VSVCho
YW5kbGVyKTsKKworICAgIGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodGFza0lkZW50
aWZpZXIsIHJlc3BvbnNlKTsKK30KKwordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVj
ZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEpCit7CisgICAgYXV0byogaGFuZGxl
ciA9IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRl
bnRpZmllcik7CisgICAgQVNTRVJUKGhhbmRsZXIpOworCisgICAgaGFuZGxlci0+dGFza0RpZFJl
Y2VpdmVEYXRhKHRhc2tJZGVudGlmaWVyLCBkYXRhLnNpemUoKSwgZGF0YS5kYXRhKCkpOworfQor
Cit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3Im
IGVycm9yKQoreworICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhh
bmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOworICAgIEFTU0VSVChoYW5kbGVy
KTsKKworICAgIGhhbmRsZXItPnRhc2tEaWRDb21wbGV0ZSh0YXNrSWRlbnRpZmllciwgZXJyb3Ip
OworfQorCit2b2lkIFdlYlBhZ2U6OnNldElzU3VzcGVuZGVkKGJvb2wgc3VzcGVuZGVkKQorewor
ICAgIGlmIChtX2lzU3VzcGVuZGVkID09IHN1c3BlbmRlZCkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgbV9pc1N1c3BlbmRlZCA9IHN1c3BlbmRlZDsKKworICAgIGlmICghc3VzcGVuZGVkKQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBVbmZyb3plbiBvbiBkcmF3aW5nIGFyZWEgcmVzZXQuCisg
ICAgZnJlZXplTGF5ZXJUcmVlKExheWVyVHJlZUZyZWV6ZVJlYXNvbjo6UGFnZVN1c3BlbmRlZCk7
CisKKyAgICAvLyBPbmx5IHRoZSBjb21taXR0ZWQgV2ViUGFnZSBnZXRzIGFwcGxpY2F0aW9uIHZp
c2liaWxpdHkgbm90aWZpY2F0aW9ucyBmcm9tIHRoZSBVSVByb2Nlc3MsIHNvIG1ha2Ugc3VyZQor
ICAgIC8vIHdlIGRvbid0IGhvbGQgYSBCYWNrZ3JvdW5kQXBwbGljYXRpb24gZnJlZXplIHJlYXNv
biB3aGVuIHRyYW5zaXRpb25pbmcgZnJvbSBjb21taXR0ZWQgdG8gc3VzcGVuZGVkLgorICAgIHVu
ZnJlZXplTGF5ZXJUcmVlKExheWVyVHJlZUZyZWV6ZVJlYXNvbjo6QmFja2dyb3VuZEFwcGxpY2F0
aW9uKTsKKworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnNlbmRQcmV3YXJtSW5mb3JtYXRp
b24obWFpbldlYkZyYW1lKCkudXJsKCkpOworCisgICAgc3VzcGVuZEZvclByb2Nlc3NTd2FwKCk7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZnJhbWVCZWNhbWVSZW1vdGUoRnJhbWVJZGVudGlmaWVyIGZy
YW1lSUQsIEdsb2JhbEZyYW1lSWRlbnRpZmllciYmIHJlbW90ZUZyYW1lSWRlbnRpZmllciwgR2xv
YmFsV2luZG93SWRlbnRpZmllciYmIHJlbW90ZVdpbmRvd0lkZW50aWZpZXIpCit7CisgICAgUmVm
UHRyPFdlYkZyYW1lPiBmcmFtZSA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkZyYW1lKGZy
YW1lSUQpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChmcmFt
ZS0+cGFnZSgpICE9IHRoaXMpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8qIGNvcmVGcmFt
ZSA9IGZyYW1lLT5jb3JlRnJhbWUoKTsKKyAgICBhdXRvKiBwcmV2aW91c1dpbmRvdyA9IGNvcmVG
cmFtZS0+d2luZG93KCk7CisgICAgaWYgKCFwcmV2aW91c1dpbmRvdykKKyAgICAgICAgcmV0dXJu
OworCisgICAgYXV0byByZW1vdGVGcmFtZSA9IFJlbW90ZUZyYW1lOjpjcmVhdGUoV1RGTW92ZShy
ZW1vdGVGcmFtZUlkZW50aWZpZXIpKTsKKyAgICBhdXRvIHJlbW90ZVdpbmRvdyA9IFJlbW90ZURP
TVdpbmRvdzo6Y3JlYXRlKHJlbW90ZUZyYW1lLmNvcHlSZWYoKSwgV1RGTW92ZShyZW1vdGVXaW5k
b3dJZGVudGlmaWVyKSk7CisKKyAgICByZW1vdGVGcmFtZS0+c2V0T3BlbmVyKGZyYW1lLT5jb3Jl
RnJhbWUoKS0+bG9hZGVyKCkub3BlbmVyKCkpOworCisgICAgYXV0byBqc1dpbmRvd1Byb3hpZXMg
PSBmcmFtZS0+Y29yZUZyYW1lKCktPndpbmRvd1Byb3h5KCkucmVsZWFzZUpTV2luZG93UHJveGll
cygpOworICAgIHJlbW90ZUZyYW1lLT53aW5kb3dQcm94eSgpLnNldEpTV2luZG93UHJveGllcyhX
VEZNb3ZlKGpzV2luZG93UHJveGllcykpOworICAgIHJlbW90ZUZyYW1lLT53aW5kb3dQcm94eSgp
LnNldERPTVdpbmRvdyhyZW1vdGVXaW5kb3cucHRyKCkpOworCisgICAgY29yZUZyYW1lLT5zZXRW
aWV3KG51bGxwdHIpOworICAgIGNvcmVGcmFtZS0+d2lsbERldGFjaFBhZ2UoKTsKKyAgICBjb3Jl
RnJhbWUtPmRldGFjaEZyb21QYWdlKCk7CisKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkp
CisgICAgICAgIGNsb3NlKCk7Cit9CisKKyNpZiBFTkFCTEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdf
UFJFVkVOVElPTikKK3ZvaWQgV2ViUGFnZTo6aGFzU3RvcmFnZUFjY2VzcyhSZWdpc3RyYWJsZURv
bWFpbiYmIHN1YkZyYW1lRG9tYWluLCBSZWdpc3RyYWJsZURvbWFpbiYmIHRvcEZyYW1lRG9tYWlu
LCBXZWJGcmFtZSYgZnJhbWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKGhhc1BhZ2VMZXZlbFN0b3JhZ2VBY2Nlc3ModG9wRnJh
bWVEb21haW4sIHN1YkZyYW1lRG9tYWluKSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih0
cnVlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpIYXNT
dG9yYWdlQWNjZXNzKFdURk1vdmUoc3ViRnJhbWVEb21haW4pLCBXVEZNb3ZlKHRvcEZyYW1lRG9t
YWluKSwgZnJhbWUuZnJhbWVJRCgpLCBtX2lkZW50aWZpZXIpLCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVxdWVzdFN0b3JhZ2VBY2Nlc3MoUmVnaXN0
cmFibGVEb21haW4mJiBzdWJGcmFtZURvbWFpbiwgUmVnaXN0cmFibGVEb21haW4mJiB0b3BGcmFt
ZURvbWFpbiwgV2ViRnJhbWUmIGZyYW1lLCBTdG9yYWdlQWNjZXNzU2NvcGUgc2NvcGUsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVxdWVzdFN0b3JhZ2VBY2Nlc3NSZXN1bHQpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3Vy
ZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kV2l0aEFzeW5jUmVw
bHkoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpSZXF1ZXN0U3RvcmFn
ZUFjY2VzcyhXVEZNb3ZlKHN1YkZyYW1lRG9tYWluKSwgV1RGTW92ZSh0b3BGcmFtZURvbWFpbiks
IGZyYW1lLmZyYW1lSUQoKSwgbV9pZGVudGlmaWVyLCBtX3dlYlBhZ2VQcm94eUlkZW50aWZpZXIs
IHNjb3BlKSwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgY29tcGxldGlv
bkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgZnJhbWUgPSBtYWtlUmVmKGZy
YW1lKSwgcGFnZUlEID0gbV9pZGVudGlmaWVyLCBmcmFtZUlEID0gZnJhbWUuZnJhbWVJRCgpXShS
ZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdCByZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAo
cmVzdWx0Lndhc0dyYW50ZWQgPT0gU3RvcmFnZUFjY2Vzc1dhc0dyYW50ZWQ6OlllcykgeworICAg
ICAgICAgICAgc3dpdGNoIChyZXN1bHQuc2NvcGUpIHsKKyAgICAgICAgICAgIGNhc2UgU3RvcmFn
ZUFjY2Vzc1Njb3BlOjpQZXJGcmFtZToKKyAgICAgICAgICAgICAgICBmcmFtZS0+ZnJhbWVMb2Fk
ZXJDbGllbnQoKS0+c2V0SGFzRnJhbWVTcGVjaWZpY1N0b3JhZ2VBY2Nlc3MoeyBmcmFtZUlELCBw
YWdlSUQgfSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIFN0b3Jh
Z2VBY2Nlc3NTY29wZTo6UGVyUGFnZToKKyAgICAgICAgICAgICAgICBhZGREb21haW5XaXRoUGFn
ZUxldmVsU3RvcmFnZUFjY2VzcyhyZXN1bHQudG9wRnJhbWVEb21haW4sIHJlc3VsdC5zdWJGcmFt
ZURvbWFpbik7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAg
IH0KKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIocmVzdWx0KTsKKyAgICB9KTsKK30KKwordm9p
ZCBXZWJQYWdlOjphZGREb21haW5XaXRoUGFnZUxldmVsU3RvcmFnZUFjY2Vzcyhjb25zdCBSZWdp
c3RyYWJsZURvbWFpbiYgdG9wTGV2ZWxEb21haW4sIGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJiBy
ZXNvdXJjZURvbWFpbikKK3sKKyAgICBtX2RvbWFpbnNXaXRoUGFnZUxldmVsU3RvcmFnZUFjY2Vz
cy5hZGQodG9wTGV2ZWxEb21haW4sIHJlc291cmNlRG9tYWluKTsKKworICAgIC8vIFNvbWUgc2l0
ZXMgaGF2ZSBxdWlya3Mgd2hlcmUgbXVsdGlwbGUgbG9naW4gZG9tYWlucyByZXF1aXJlIHN0b3Jh
Z2UgYWNjZXNzLgorICAgIGlmIChhdXRvIGFkZGl0aW9uYWxMb2dpbkRvbWFpbiA9IE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6ZmluZEFkZGl0aW9uYWxMb2dpbkRvbWFpbih0b3BMZXZlbERvbWFpbiwg
cmVzb3VyY2VEb21haW4pKQorICAgICAgICBtX2RvbWFpbnNXaXRoUGFnZUxldmVsU3RvcmFnZUFj
Y2Vzcy5hZGQodG9wTGV2ZWxEb21haW4sICphZGRpdGlvbmFsTG9naW5Eb21haW4pOworfQorCiti
b29sIFdlYlBhZ2U6Omhhc1BhZ2VMZXZlbFN0b3JhZ2VBY2Nlc3MoY29uc3QgUmVnaXN0cmFibGVE
b21haW4mIHRvcExldmVsRG9tYWluLCBjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgcmVzb3VyY2VE
b21haW4pIGNvbnN0Cit7CisgICAgYXV0byBpdCA9IG1fZG9tYWluc1dpdGhQYWdlTGV2ZWxTdG9y
YWdlQWNjZXNzLmZpbmQodG9wTGV2ZWxEb21haW4pOworICAgIHJldHVybiBpdCAhPSBtX2RvbWFp
bnNXaXRoUGFnZUxldmVsU3RvcmFnZUFjY2Vzcy5lbmQoKSAmJiBpdC0+dmFsdWUgPT0gcmVzb3Vy
Y2VEb21haW47Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2xlYXJQYWdlTGV2ZWxTdG9yYWdlQWNjZXNz
KCkKK3sKKyAgICBtX2RvbWFpbnNXaXRoUGFnZUxldmVsU3RvcmFnZUFjY2Vzcy5jbGVhcigpOwor
fQorCit2b2lkIFdlYlBhZ2U6Ondhc0xvYWRlZFdpdGhEYXRhVHJhbnNmZXJGcm9tUHJldmFsZW50
UmVzb3VyY2UoKQoreworICAgIGF1dG8qIGZyYW1lID0gbWFpbkZyYW1lKCk7CisgICAgaWYgKCFm
cmFtZSB8fCAhZnJhbWUtPmRvY3VtZW50KCkpCisgICAgICAgIHJldHVybjsKKworICAgIGZyYW1l
LT5kb2N1bWVudCgpLT53YXNMb2FkZWRXaXRoRGF0YVRyYW5zZmVyRnJvbVByZXZhbGVudFJlc291
cmNlKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6ZGlkTG9hZEZyb21SZWdpc3RyYWJsZURvbWFpbihS
ZWdpc3RyYWJsZURvbWFpbiYmIHRhcmdldERvbWFpbikKK3sKKyAgICBpZiAodGFyZ2V0RG9tYWlu
ICE9IFJlZ2lzdHJhYmxlRG9tYWluKG1haW5XZWJGcmFtZSgpLnVybCgpKSkKKyAgICAgICAgbV9s
b2FkZWRTdWJyZXNvdXJjZURvbWFpbnMuYWRkKHRhcmdldERvbWFpbik7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6Z2V0TG9hZGVkU3VicmVzb3VyY2VEb21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
VmVjdG9yPFJlZ2lzdHJhYmxlRG9tYWluPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
Y29tcGxldGlvbkhhbmRsZXIoY29weVRvVmVjdG9yKG1fbG9hZGVkU3VicmVzb3VyY2VEb21haW5z
KSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6Y2xlYXJMb2FkZWRTdWJyZXNvdXJjZURvbWFpbnMoKQor
eworICAgIG1fbG9hZGVkU3VicmVzb3VyY2VEb21haW5zLmNsZWFyKCk7Cit9CisKKyNlbmRpZgor
CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKK3ZvaWQgV2ViUGFnZTo6c2hvdWxkQWxs
b3dEZXZpY2VPcmllbnRhdGlvbkFuZE1vdGlvbkFjY2VzcyhGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgYm9vbCBtYXlQcm9tcHQsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoRGV2aWNlT3JpZW50YXRpb25Pck1vdGlvblBlcm1pc3Npb25TdGF0ZSk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlNob3VsZEFsbG93RGV2aWNlT3JpZW50YXRpb25BbmRNb3Rpb25BY2Nlc3Mo
ZnJhbWVJRCwgV1RGTW92ZShmcmFtZUluZm8pLCBtYXlQcm9tcHQpLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7Cit9CisjZW5kaWYKKyAgICAKK3ZvaWQgV2ViUGFnZTo6c2hvd1NoYXJlU2hl
ZXQoU2hhcmVEYXRhV2l0aFBhcnNlZFVSTCYgc2hhcmVEYXRhLCBXVEY6OkNvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spCit7CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNob3dTaGFyZVNoZWV0KFdURk1vdmUoc2hhcmVEYXRhKSks
IFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwordm9pZCBXZWJQYWdlOjpzaG93Q29udGFjdFBpY2tl
cihjb25zdCBXZWJDb3JlOjpDb250YWN0c1JlcXVlc3REYXRhJiByZXF1ZXN0RGF0YSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpDb250YWN0SW5m
bz4+JiYpPiYmIGNhbGxiYWNrKQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpTaG93Q29udGFjdFBpY2tlcihyZXF1ZXN0RGF0YSksIFdURk1vdmUoY2Fs
bGJhY2spKTsKK30KKworV2ViQ29yZTo6RE9NUGFzdGVBY2Nlc3NSZXNwb25zZSBXZWJQYWdlOjpy
ZXF1ZXN0RE9NUGFzdGVBY2Nlc3MoY29uc3QgU3RyaW5nJiBvcmlnaW5JZGVudGlmaWVyKQorewor
ICAgIGF1dG8gcmVzcG9uc2UgPSBXZWJDb3JlOjpET01QYXN0ZUFjY2Vzc1Jlc3BvbnNlOjpEZW5p
ZWRGb3JHZXN0dXJlOworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgLy8gRklYTUU6IENv
bXB1dGluZyBhbmQgc2VuZGluZyBhbiBhdXRvY29ycmVjdGlvbiBjb250ZXh0IGlzIGEgd29ya2Fy
b3VuZCBmb3IgdGhlIGZhY3QgdGhhdCBhdXRvY29ycmVjdGlvbiBjb250ZXh0CisgICAgLy8gcmVx
dWVzdHMgb24gaU9TIGFyZSBjdXJyZW50bHkgc3luY2hyb25vdXMgaW4gdGhlIHdlYiBwcm9jZXNz
LiBUaGlzIGFsbG93cyB1cyB0byBpbW1lZGlhdGVseSBmdWxmaWxsIHBlbmRpbmcKKyAgICAvLyBh
dXRvY29ycmVjdGlvbiBjb250ZXh0IHJlcXVlc3RzIGluIHRoZSBVSSBwcm9jZXNzIG9uIGlPUyBi
ZWZvcmUgaGFuZGxpbmcgdGhlIERPTSBwYXN0ZSByZXF1ZXN0LiBUaGlzIHdvcmthcm91bmQKKyAg
ICAvLyBzaG91bGQgYmUgcmVtb3ZlZCBvbmNlIDxyZGFyOi8vcHJvYmxlbS8xNjIwNzAwMj4gaXMg
cmVzb2x2ZWQuCisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpIYW5kbGVBdXRvY29y
cmVjdGlvbkNvbnRleHQoYXV0b2NvcnJlY3Rpb25Db250ZXh0KCkpKTsKKyNlbmRpZgorICAgIHNl
bmRTeW5jV2l0aERlbGF5ZWRSZXBseShNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZXF1ZXN0RE9N
UGFzdGVBY2Nlc3MocmVjdEZvckVsZW1lbnRBdEludGVyYWN0aW9uTG9jYXRpb24oKSwgb3JpZ2lu
SWRlbnRpZmllciksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RET01QYXN0ZUFjY2Vz
czo6UmVwbHkocmVzcG9uc2UpKTsKKyAgICByZXR1cm4gcmVzcG9uc2U7Cit9CisKK3ZvaWQgV2Vi
UGFnZTo6c2ltdWxhdGVEZXZpY2VPcmllbnRhdGlvbkNoYW5nZShkb3VibGUgYWxwaGEsIGRvdWJs
ZSBiZXRhLCBkb3VibGUgZ2FtbWEpCit7CisjaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikg
JiYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBhdXRvKiBmcmFtZSA9IG1haW5GcmFtZSgpOwor
ICAgIGlmICghZnJhbWUgfHwgIWZyYW1lLT5kb2N1bWVudCgpKQorICAgICAgICByZXR1cm47CisK
KyAgICBmcmFtZS0+ZG9jdW1lbnQoKS0+c2ltdWxhdGVEZXZpY2VPcmllbnRhdGlvbkNoYW5nZShh
bHBoYSwgYmV0YSwgZ2FtbWEpOworI2VuZGlmCit9CisKKyNpZiBVU0UoU1lTVEVNX1BSRVZJRVcp
Cit2b2lkIFdlYlBhZ2U6OnN5c3RlbVByZXZpZXdBY3Rpb25UcmlnZ2VyZWQoV2ViQ29yZTo6U3lz
dGVtUHJldmlld0luZm8gcHJldmlld0luZm8sIGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKK3sKKyAg
ICBhdXRvKiBkb2N1bWVudCA9IERvY3VtZW50OjphbGxEb2N1bWVudHNNYXAoKS5nZXQocHJldmll
d0luZm8uZWxlbWVudC5kb2N1bWVudElkZW50aWZpZXIpOworICAgIGlmICghZG9jdW1lbnQpCisg
ICAgICAgIHJldHVybjsKKworICAgIGF1dG8gcGFnZUlEID0gZG9jdW1lbnQtPnBhZ2VJRCgpOwor
ICAgIGlmICghcGFnZUlEIHx8IHByZXZpZXdJbmZvLmVsZW1lbnQud2ViUGFnZUlkZW50aWZpZXIg
IT0gcGFnZUlELnZhbHVlKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGRvY3VtZW50LT5kaXNw
YXRjaFN5c3RlbVByZXZpZXdBY3Rpb25FdmVudChwcmV2aWV3SW5mbywgbWVzc2FnZSk7Cit9Cisj
ZW5kaWYKKworI2lmIEVOQUJMRShTUEVFQ0hfU1lOVEhFU0lTKQordm9pZCBXZWJQYWdlOjpzcGVh
a2luZ0Vycm9yT2NjdXJyZWQoKQoreworICAgIGlmIChhdXRvIG9ic2VydmVyID0gY29yZVBhZ2Uo
KS0+c3BlZWNoU3ludGhlc2lzQ2xpZW50KCktPm9ic2VydmVyKCkpCisgICAgICAgIG9ic2VydmVy
LT5zcGVha2luZ0Vycm9yT2NjdXJyZWQoKTsKK30KKwordm9pZCBXZWJQYWdlOjpib3VuZGFyeUV2
ZW50T2NjdXJyZWQoYm9vbCB3b3JkQm91bmRhcnksIHVuc2lnbmVkIGNoYXJJbmRleCkKK3sKKyAg
ICBpZiAoYXV0byBvYnNlcnZlciA9IGNvcmVQYWdlKCktPnNwZWVjaFN5bnRoZXNpc0NsaWVudCgp
LT5vYnNlcnZlcigpKQorICAgICAgICBvYnNlcnZlci0+Ym91bmRhcnlFdmVudE9jY3VycmVkKHdv
cmRCb3VuZGFyeSwgY2hhckluZGV4KTsKK30KKwordm9pZCBXZWJQYWdlOjp2b2ljZXNEaWRDaGFu
Z2UoKQoreworICAgIGlmIChhdXRvIG9ic2VydmVyID0gY29yZVBhZ2UoKS0+c3BlZWNoU3ludGhl
c2lzQ2xpZW50KCktPm9ic2VydmVyKCkpCisgICAgICAgIG9ic2VydmVyLT52b2ljZXNDaGFuZ2Vk
KCk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisKK3ZvaWQg
V2ViUGFnZTo6aW5zZXJ0QXR0YWNobWVudChjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIHN0ZDo6
b3B0aW9uYWw8dWludDY0X3Q+JiYgZmlsZVNpemUsIGNvbnN0IFN0cmluZyYgZmlsZU5hbWUsIGNv
bnN0IFN0cmluZyYgY29udGVudFR5cGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxs
YmFjaykKK3sKKyAgICBSZWYgZnJhbWUgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9jdXNDb250cm9s
bGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKTsKKyAgICBmcmFtZS0+ZWRpdG9yKCkuaW5zZXJ0
QXR0YWNobWVudChpZGVudGlmaWVyLCBXVEZNb3ZlKGZpbGVTaXplKSwgZmlsZU5hbWUsIGNvbnRl
bnRUeXBlKTsKKyAgICBjYWxsYmFjaygpOworfQorCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZUF0dGFj
aG1lbnRBdHRyaWJ1dGVzKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDx1
aW50NjRfdD4mJiBmaWxlU2l6ZSwgY29uc3QgU3RyaW5nJiBjb250ZW50VHlwZSwgY29uc3QgU3Ry
aW5nJiBmaWxlTmFtZSwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBlbmNsb3NpbmdJbWFnZURh
dGEsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykKK3sKKyAgICBpZiAoYXV0
byBhdHRhY2htZW50ID0gYXR0YWNobWVudEVsZW1lbnRXaXRoSWRlbnRpZmllcihpZGVudGlmaWVy
KSkgeworICAgICAgICBhdHRhY2htZW50LT5kb2N1bWVudCgpLnVwZGF0ZUxheW91dCgpOworICAg
ICAgICBhdHRhY2htZW50LT51cGRhdGVBdHRyaWJ1dGVzKFdURk1vdmUoZmlsZVNpemUpLCBjb250
ZW50VHlwZSwgZmlsZU5hbWUpOworICAgICAgICBhdHRhY2htZW50LT51cGRhdGVFbmNsb3NpbmdJ
bWFnZVdpdGhEYXRhKGNvbnRlbnRUeXBlLCBTaGFyZWRCdWZmZXI6OmNyZWF0ZShlbmNsb3NpbmdJ
bWFnZURhdGEuZGF0YSgpLCBlbmNsb3NpbmdJbWFnZURhdGEuc2l6ZSgpKSk7CisgICAgfQorICAg
IGNhbGxiYWNrKCk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlQXR0YWNobWVudEljb24oY29u
c3QgU3RyaW5nJiBpZGVudGlmaWVyLCBjb25zdCBTaGFyZWFibGVCaXRtYXA6OkhhbmRsZSYgcWxU
aHVtYm5haWxIYW5kbGUpCit7CisgICAgaWYgKGF1dG8gYXR0YWNobWVudCA9IGF0dGFjaG1lbnRF
bGVtZW50V2l0aElkZW50aWZpZXIoaWRlbnRpZmllcikpIHsKKyAgICAgICAgaWYgKFJlZlB0cjxT
aGFyZWFibGVCaXRtYXA+IHRodW1ibmFpbCA9ICFxbFRodW1ibmFpbEhhbmRsZS5pc051bGwoKSA/
IFNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlKHFsVGh1bWJuYWlsSGFuZGxlKSA6IG51bGxwdHIpCisg
ICAgICAgICAgICBhdHRhY2htZW50LT51cGRhdGVUaHVtYm5haWwodGh1bWJuYWlsLT5jcmVhdGVJ
bWFnZSgpKTsKKyAgICB9Cit9CisKK1JlZlB0cjxIVE1MQXR0YWNobWVudEVsZW1lbnQ+IFdlYlBh
Z2U6OmF0dGFjaG1lbnRFbGVtZW50V2l0aElkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBpZGVudGlm
aWVyKSBjb25zdAoreworICAgIC8vIEZJWE1FOiBIYW5kbGUgYXR0YWNobWVudCBlbGVtZW50cyBp
biBzdWJmcmFtZXMgdG9vIGFzIHdlbGwuCisgICAgYXV0byogZnJhbWUgPSBtYWluRnJhbWUoKTsK
KyAgICBpZiAoIWZyYW1lIHx8ICFmcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIG51
bGxwdHI7CisKKyAgICByZXR1cm4gZnJhbWUtPmRvY3VtZW50KCktPmF0dGFjaG1lbnRGb3JJZGVu
dGlmaWVyKGlkZW50aWZpZXIpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKEFUVEFDSE1FTlRfRUxF
TUVOVCkKKworI2lmIEVOQUJMRShBUFBMSUNBVElPTl9NQU5JRkVTVCkKKwordm9pZCBXZWJQYWdl
OjpnZXRBcHBsaWNhdGlvbk1hbmlmZXN0KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qgc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpBcHBsaWNhdGlvbk1hbmlmZXN0PiYpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQoreworICAgIERvY3VtZW50KiBtYWluRnJhbWVEb2N1bWVudCA9IG1fbWFpbkZyYW1l
LT5jb3JlRnJhbWUoKS0+ZG9jdW1lbnQoKTsKKyAgICBEb2N1bWVudExvYWRlciogbG9hZGVyID0g
bWFpbkZyYW1lRG9jdW1lbnQgPyBtYWluRnJhbWVEb2N1bWVudC0+bG9hZGVyKCkgOiBudWxscHRy
OworICAgIGlmICghbG9hZGVyKQorICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3Rk
OjpudWxsb3B0KTsKKworICAgIGxvYWRlci0+bG9hZEFwcGxpY2F0aW9uTWFuaWZlc3QoV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOworfQorCisjZW5kaWYgLy8gRU5BQkxFKEFQUExJQ0FUSU9O
X01BTklGRVNUKQorCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZUN1cnJlbnRNb2RpZmllclN0YXRlKE9w
dGlvblNldDxQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcj4gbW9kaWZpZXJzKQoreworICAgIFBsYXRm
b3JtS2V5Ym9hcmRFdmVudDo6c2V0Q3VycmVudE1vZGlmaWVyU3RhdGUobW9kaWZpZXJzKTsKK30K
KworI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQorCitXZWJDb3JlOjpJbnRSZWN0IFdlYlBhZ2U6
OnJlY3RGb3JFbGVtZW50QXRJbnRlcmFjdGlvbkxvY2F0aW9uKCkgY29uc3QKK3sKKyAgICByZXR1
cm4geyB9OworfQorCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZUlucHV0Q29udGV4dEFmdGVyQmx1cnJp
bmdBbmRSZWZvY3VzaW5nRWxlbWVudElmTmVlZGVkKEVsZW1lbnQmKQoreworfQorCisjZW5kaWYg
Ly8gIVBMQVRGT1JNKElPU19GQU1JTFkpCisKK3ZvaWQgV2ViUGFnZTo6c2V0Q2FuU2hvd1BsYWNl
aG9sZGVyKGNvbnN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0JiBlbGVtZW50Q29udGV4dCwgYm9v
bCBjYW5TaG93UGxhY2Vob2xkZXIpCit7CisgICAgUmVmUHRyPEVsZW1lbnQ+IGVsZW1lbnQgPSBl
bGVtZW50Rm9yQ29udGV4dChlbGVtZW50Q29udGV4dCk7CisgICAgaWYgKGlzPEhUTUxUZXh0Rm9y
bUNvbnRyb2xFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgZG93bmNhc3Q8SFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQ+KCplbGVtZW50KS5zZXRDYW5TaG93UGxhY2Vob2xkZXIoY2FuU2hvd1Bs
YWNlaG9sZGVyKTsKK30KKworUmVmUHRyPEVsZW1lbnQ+IFdlYlBhZ2U6OmVsZW1lbnRGb3JDb250
ZXh0KGNvbnN0IEVsZW1lbnRDb250ZXh0JiBlbGVtZW50Q29udGV4dCkgY29uc3QKK3sKKyAgICBp
ZiAoZWxlbWVudENvbnRleHQud2ViUGFnZUlkZW50aWZpZXIgIT0gbV9pZGVudGlmaWVyKQorICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGF1dG8qIGRvY3VtZW50ID0gRG9jdW1lbnQ6OmFs
bERvY3VtZW50c01hcCgpLmdldChlbGVtZW50Q29udGV4dC5kb2N1bWVudElkZW50aWZpZXIpOwor
ICAgIGlmICghZG9jdW1lbnQpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgaWYgKGRv
Y3VtZW50LT5wYWdlKCkgIT0gbV9wYWdlLmdldCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgIHJldHVybiBkb2N1bWVudC0+c2VhcmNoRm9yRWxlbWVudEJ5SWRlbnRpZmllcihlbGVt
ZW50Q29udGV4dC5lbGVtZW50SWRlbnRpZmllcik7Cit9CisKK3N0ZDo6b3B0aW9uYWw8V2ViQ29y
ZTo6RWxlbWVudENvbnRleHQ+IFdlYlBhZ2U6OmNvbnRleHRGb3JFbGVtZW50KFdlYkNvcmU6OkVs
ZW1lbnQmIGVsZW1lbnQpIGNvbnN0Cit7CisgICAgYXV0byYgZG9jdW1lbnQgPSBlbGVtZW50LmRv
Y3VtZW50KCk7CisgICAgaWYgKCFtX3BhZ2UgfHwgZG9jdW1lbnQucGFnZSgpICE9IG1fcGFnZS5n
ZXQoKSkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKworICAgIGF1dG8gZnJhbWUgPSBk
b2N1bWVudC5mcmFtZSgpOworICAgIGlmICghZnJhbWUpCisgICAgICAgIHJldHVybiBzdGQ6Om51
bGxvcHQ7CisKKyAgICByZXR1cm4gV2ViQ29yZTo6RWxlbWVudENvbnRleHQgeyBlbGVtZW50LmJv
dW5kaW5nQm94SW5Sb290Vmlld0Nvb3JkaW5hdGVzKCksIG1faWRlbnRpZmllciwgZG9jdW1lbnQu
aWRlbnRpZmllcigpLCBkb2N1bWVudC5pZGVudGlmaWVyRm9yRWxlbWVudChlbGVtZW50KSB9Owor
fQorCit2b2lkIFdlYlBhZ2U6OnN0YXJ0VGV4dE1hbmlwdWxhdGlvbnMoVmVjdG9yPFdlYkNvcmU6
OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpFeGNsdXNpb25SdWxlPiYmIGV4Y2x1c2lvblJ1
bGVzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gbWFpbkRvY3VtZW50
ID0gbWFrZVJlZlB0cihtX3BhZ2UtPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpOworICAgIGlmICgh
bWFpbkRvY3VtZW50KQorICAgICAgICByZXR1cm47CisKKyAgICBtYWluRG9jdW1lbnQtPnRleHRN
YW5pcHVsYXRpb25Db250cm9sbGVyKCkuc3RhcnRPYnNlcnZpbmdQYXJhZ3JhcGhzKFt3ZWJQYWdl
ID0gbWFrZVdlYWtQdHIoKnRoaXMpXSAoRG9jdW1lbnQmIGRvY3VtZW50LCBjb25zdCBWZWN0b3I8
V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6Ok1hbmlwdWxhdGlvbkl0ZW0+JiBp
dGVtcykgeworICAgICAgICBhdXRvKiBmcmFtZSA9IGRvY3VtZW50LmZyYW1lKCk7CisgICAgICAg
IGlmICghd2ViUGFnZSB8fCAhZnJhbWUgfHwgd2ViUGFnZS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUp
CisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgYXV0byogd2ViRnJhbWUgPSBXZWJGcmFt
ZTo6ZnJvbUNvcmVGcmFtZSgqZnJhbWUpOworICAgICAgICBpZiAoIXdlYkZyYW1lKQorICAgICAg
ICAgICAgcmV0dXJuOworCisgICAgICAgIHdlYlBhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6RGlkRmluZFRleHRNYW5pcHVsYXRpb25JdGVtcyhpdGVtcykpOworICAgIH0sIFdURk1v
dmUoZXhjbHVzaW9uUnVsZXMpKTsKKyAgICAvLyBGb3Igbm93LCB3ZSBhc3N1bWUgc3RhcnRPYnNl
cnZpbmdQYXJhZ3JhcGhzIGZpbmQgYWxsIHBhcmFncmFwaHMgc3luY2hyb25vdXNseSBhdCBvbmNl
LgorICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7Cit9CisKK3ZvaWQgY29tcGxldGVUZXh0TWFuaXB1
bGF0aW9uKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcjo6
TWFuaXB1bGF0aW9uSXRlbT4sCisgICAgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBIYXNo
U2V0PFdlYkNvcmU6OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpJdGVtSWRlbnRpZmllciwg
V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6Ok1hbmlwdWxhdGlvbkZhaWx1cmU+
Jik+JiYpOworCit2b2lkIFdlYlBhZ2U6OmNvbXBsZXRlVGV4dE1hbmlwdWxhdGlvbihjb25zdCBW
ZWN0b3I8V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6Ok1hbmlwdWxhdGlvbkl0
ZW0+JiBpdGVtcywKKyAgICBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wgYWxsRmFpbGVkLCBj
b25zdCBWZWN0b3I8V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXI6Ok1hbmlwdWxh
dGlvbkZhaWx1cmU+Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKCFtX3BhZ2Up
IHsKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIodHJ1ZSwgeyB9KTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKworICAgIGF1dG8gbWFpbkRvY3VtZW50ID0gbWFrZVJlZlB0cihtX3BhZ2UtPm1h
aW5GcmFtZSgpLmRvY3VtZW50KCkpOworICAgIGlmICghbWFpbkRvY3VtZW50KSB7CisgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKHRydWUsIHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBhdXRvKiBjb250cm9sbGVyID0gbWFpbkRvY3VtZW50LT50ZXh0TWFuaXB1bGF0aW9uQ29u
dHJvbGxlcklmRXhpc3RzKCk7CisgICAgaWYgKCFjb250cm9sbGVyKSB7CisgICAgICAgIGNvbXBs
ZXRpb25IYW5kbGVyKHRydWUsIHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBj
b21wbGV0aW9uSGFuZGxlcihmYWxzZSwgY29udHJvbGxlci0+Y29tcGxldGVNYW5pcHVsYXRpb24o
aXRlbXMpKTsKK30KKworUEFMOjpTZXNzaW9uSUQgV2ViUGFnZTo6c2Vzc2lvbklEKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCk7Cit9CisK
K2Jvb2wgV2ViUGFnZTo6dXNlc0VwaGVtZXJhbFNlc3Npb24oKSBjb25zdAoreworICAgIHJldHVy
biBzZXNzaW9uSUQoKS5pc0VwaGVtZXJhbCgpOworfQorCit2b2lkIFdlYlBhZ2U6OmNvbmZpZ3Vy
ZUxvZ2dpbmdDaGFubmVsKGNvbnN0IFN0cmluZyYgY2hhbm5lbE5hbWUsIFdURkxvZ0NoYW5uZWxT
dGF0ZSBzdGF0ZSwgV1RGTG9nTGV2ZWwgbGV2ZWwpCit7CisjaWYgRU5BQkxFKEdQVV9QUk9DRVNT
KQorICAgIGlmIChhdXRvKiBncHVQcm9jZXNzQ29ubmVjdGlvbiA9IFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmV4aXN0aW5nR1BVUHJvY2Vzc0Nvbm5lY3Rpb24oKSkKKyAgICAgICAgZ3B1UHJvY2Vz
c0Nvbm5lY3Rpb24tPmNvbmZpZ3VyZUxvZ2dpbmdDaGFubmVsKGNoYW5uZWxOYW1lLCBzdGF0ZSwg
bGV2ZWwpOworI2VuZGlmCisKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkNvbmZp
Z3VyZUxvZ2dpbmdDaGFubmVsKGNoYW5uZWxOYW1lLCBzdGF0ZSwgbGV2ZWwpKTsKK30KKworI2lm
ICFQTEFURk9STShDT0NPQSkKK3ZvaWQgV2ViUGFnZTo6Z2V0UERGRmlyc3RQYWdlU2l6ZShXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6Rmxv
YXRTaXplKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcih7
IH0pOworfQorCit2b2lkIFdlYlBhZ2U6OmdldFByb2Nlc3NEaXNwbGF5TmFtZShDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFN0cmluZyYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0pOworfQorCit2b2lkIFdlYlBhZ2U6OnVwZGF0ZU1vY2tBY2Nlc3Np
YmlsaXR5RWxlbWVudEFmdGVyQ29tbWl0dGluZ0xvYWQoKQoreworfQorI2VuZGlmCisKKyNpZiAh
UExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgIUVOQUJMRShEUkFHX1NVUFBPUlQpCisKK3ZvaWQgV2Vi
UGFnZTo6ZGlkRmluaXNoTG9hZGluZ0ltYWdlRm9yRWxlbWVudChXZWJDb3JlOjpIVE1MSW1hZ2VF
bGVtZW50JikKK3sKK30KKworI2VuZGlmCisKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQor
dm9pZCBXZWJQYWdlOjp0ZXh0QXV0b1NpemluZ0FkanVzdG1lbnRUaW1lckZpcmVkKCkKK3sKKyAg
ICBtX3BhZ2UtPnJlY29tcHV0ZVRleHRBdXRvU2l6aW5nSW5BbGxGcmFtZXMoKTsKK30KKwordm9p
ZCBXZWJQYWdlOjp0ZXh0QXV0b3NpemluZ1VzZXNJZGVtcG90ZW50TW9kZUNoYW5nZWQoKQorewor
ICAgIGlmICghbV9wYWdlLT5zZXR0aW5ncygpLnRleHRBdXRvc2l6aW5nVXNlc0lkZW1wb3RlbnRN
b2RlKCkpCisgICAgICAgIG1fdGV4dEF1dG9TaXppbmdBZGp1c3RtZW50VGltZXIuc3RvcCgpOwor
fQorI2VuZGlmIC8vIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisKKyNpZiBFTkFCTEUoV0VCWFIp
ICYmICFVU0UoT1BFTlhSKQorUGxhdGZvcm1YUlN5c3RlbVByb3h5JiBXZWJQYWdlOjp4clN5c3Rl
bVByb3h5KCkKK3sKKyAgICBpZiAoIW1feHJTeXN0ZW1Qcm94eSkKKyAgICAgICAgbV94clN5c3Rl
bVByb3h5ID0gc3RkOjp1bmlxdWVfcHRyPFBsYXRmb3JtWFJTeXN0ZW1Qcm94eT4obmV3IFBsYXRm
b3JtWFJTeXN0ZW1Qcm94eSgqdGhpcykpOworICAgIHJldHVybiAqbV94clN5c3RlbVByb3h5Owor
fQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZTo6c2V0T3ZlcnJpZGRlbk1lZGlhVHlwZShjb25zdCBT
dHJpbmcmIG1lZGlhVHlwZSkKK3sKKyAgICBpZiAobWVkaWFUeXBlID09IG1fb3ZlcnJpZGRlbk1l
ZGlhVHlwZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9vdmVycmlkZGVuTWVkaWFUeXBlID0g
bWVkaWFUeXBlOworICAgIG1fcGFnZS0+c2V0TmVlZHNSZWNhbGNTdHlsZUluQWxsRnJhbWVzKCk7
Cit9CisKK3ZvaWQgV2ViUGFnZTo6dXBkYXRlQ09SU0Rpc2FibGluZ1BhdHRlcm5zKFZlY3RvcjxT
dHJpbmc+JiYgcGF0dGVybnMpCit7CisgICAgaWYgKCFtX3BhZ2UpCisgICAgICAgIHJldHVybjsK
KworICAgIG1fY29yc0Rpc2FibGluZ1BhdHRlcm5zID0gV1RGTW92ZShwYXR0ZXJucyk7CisgICAg
c3luY2hyb25pemVDT1JTRGlzYWJsaW5nUGF0dGVybnNXaXRoTmV0d29ya1Byb2Nlc3MoKTsKKyAg
ICBtX3BhZ2UtPnNldENPUlNEaXNhYmxpbmdQYXR0ZXJucyhwYXJzZUFuZEFsbG93QWNjZXNzVG9D
T1JTRGlzYWJsaW5nUGF0dGVybnMobV9jb3JzRGlzYWJsaW5nUGF0dGVybnMpKTsKK30KKwordm9p
ZCBXZWJQYWdlOjpzeW5jaHJvbml6ZUNPUlNEaXNhYmxpbmdQYXR0ZXJuc1dpdGhOZXR3b3JrUHJv
Y2VzcygpCit7CisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBwcm9iYWJseSBoYXZlIHRoaXMgbWVj
aGFuaXNtIGRvbmUgYmV0d2VlbiBVSVByb2Nlc3MgYW5kIE5ldHdvcmtQcm9jZXNzIGRpcmVjdGx5
LgorICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6U2V0Q09SU0Rpc2FibGluZ1BhdHRlcm5zKG1faWRlbnRpZmllciwgbV9jb3JzRGlz
YWJsaW5nUGF0dGVybnMpLCAwKTsKK30KKwordm9pZCBXZWJQYWdlOjppc1BsYXlpbmdNZWRpYURp
ZENoYW5nZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3Mgc3RhdGUpCit7
CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpJc1BsYXlpbmdNZWRpYURpZENoYW5n
ZShzdGF0ZSkpOworfQorCisjaWYgRU5BQkxFKE1FRElBX1VTQUdFKQordm9pZCBXZWJQYWdlOjph
ZGRNZWRpYVVzYWdlTWFuYWdlclNlc3Npb24oTWVkaWFTZXNzaW9uSWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBTdHJpbmcmIGJ1bmRsZUlkZW50aWZpZXIsIGNvbnN0IFVSTCYgcGFnZVVSTCkK
K3sKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkFkZE1lZGlhVXNhZ2VNYW5hZ2Vy
U2Vzc2lvbihpZGVudGlmaWVyLCBidW5kbGVJZGVudGlmaWVyLCBwYWdlVVJMKSk7Cit9CisKK3Zv
aWQgV2ViUGFnZTo6dXBkYXRlTWVkaWFVc2FnZU1hbmFnZXJTZXNzaW9uU3RhdGUoTWVkaWFTZXNz
aW9uSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBNZWRpYVVzYWdlSW5mbyYgdXNhZ2UpCit7
CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpVcGRhdGVNZWRpYVVzYWdlTWFuYWdl
clNlc3Npb25TdGF0ZShpZGVudGlmaWVyLCB1c2FnZSkpOworfQorCit2b2lkIFdlYlBhZ2U6OnJl
bW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihNZWRpYVNlc3Npb25JZGVudGlmaWVyIGlkZW50
aWZpZXIpCit7CisgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpSZW1vdmVNZWRpYVVz
YWdlTWFuYWdlclNlc3Npb24oaWRlbnRpZmllcikpOworfQorI2VuZGlmIC8vIEVOQUJMRShNRURJ
QV9VU0FHRSkKKworI2lmIEVOQUJMRShJTUFHRV9BTkFMWVNJUykKKwordm9pZCBXZWJQYWdlOjpy
ZXF1ZXN0VGV4dFJlY29nbml0aW9uKFdlYkNvcmU6OkVsZW1lbnQmIGVsZW1lbnQsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+JiYpPiYmIGNvbXBsZXRpb24p
Cit7CisgICAgaWYgKCFpczxIVE1MRWxlbWVudD4oZWxlbWVudCkpIHsKKyAgICAgICAgaWYgKGNv
bXBsZXRpb24pCisgICAgICAgICAgICBjb21wbGV0aW9uKHsgfSk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBhdXRvIGh0bWxFbGVtZW50ID0gbWFrZVJlZihkb3duY2FzdDxIVE1MRWxl
bWVudD4oZWxlbWVudCkpOworICAgIGlmIChjb3JlUGFnZSgpLT5oYXNDYWNoZWRUZXh0UmVjb2du
aXRpb25SZXN1bHQoaHRtbEVsZW1lbnQuZ2V0KCkpKSB7CisgICAgICAgIGlmIChjb21wbGV0aW9u
KSB7CisgICAgICAgICAgICBSZWZQdHI8RWxlbWVudD4gaW1hZ2VPdmVybGF5SG9zdDsKKyAgICAg
ICAgICAgIGlmIChodG1sRWxlbWVudC0+aGFzSW1hZ2VPdmVybGF5KCkpCisgICAgICAgICAgICAg
ICAgaW1hZ2VPdmVybGF5SG9zdCA9IG1ha2VSZWZQdHIoZWxlbWVudCk7CisgICAgICAgICAgICBj
b21wbGV0aW9uKFdURk1vdmUoaW1hZ2VPdmVybGF5SG9zdCkpOworICAgICAgICB9CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBhdXRvIG1hdGNoSW5kZXggPSBtX2VsZW1lbnRzUGVuZGlu
Z1RleHRSZWNvZ25pdGlvbi5maW5kTWF0Y2hpbmcoWyZdIChhdXRvJiBlbGVtZW50QW5kQ29tcGxl
dGlvbkhhbmRsZXJzKSB7CisgICAgICAgIHJldHVybiBlbGVtZW50QW5kQ29tcGxldGlvbkhhbmRs
ZXJzLmZpcnN0ID09ICZlbGVtZW50OworICAgIH0pOworCisgICAgaWYgKG1hdGNoSW5kZXggIT0g
bm90Rm91bmQpIHsKKyAgICAgICAgaWYgKGNvbXBsZXRpb24pCisgICAgICAgICAgICBtX2VsZW1l
bnRzUGVuZGluZ1RleHRSZWNvZ25pdGlvblttYXRjaEluZGV4XS5zZWNvbmQuYXBwZW5kKFdURk1v
dmUoY29tcGxldGlvbikpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byogcmVu
ZGVyZXIgPSBlbGVtZW50LnJlbmRlcmVyKCk7CisgICAgaWYgKCFpczxSZW5kZXJJbWFnZT4ocmVu
ZGVyZXIpKSB7CisgICAgICAgIGlmIChjb21wbGV0aW9uKQorICAgICAgICAgICAgY29tcGxldGlv
bih7IH0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byYgcmVuZGVySW1hZ2Ug
PSBkb3duY2FzdDxSZW5kZXJJbWFnZT4oKnJlbmRlcmVyKTsKKyAgICBhdXRvIGJpdG1hcCA9IGNy
ZWF0ZVNoYXJlYWJsZUJpdG1hcChyZW5kZXJJbWFnZSwgeyBzdGQ6Om51bGxvcHQsIEFsbG93QW5p
bWF0ZWRJbWFnZXM6Ok5vLCBVc2VTbmFwc2hvdEZvclRyYW5zcGFyZW50SW1hZ2VzOjpZZXMgfSk7
CisgICAgaWYgKCFiaXRtYXApIHsKKyAgICAgICAgaWYgKGNvbXBsZXRpb24pCisgICAgICAgICAg
ICBjb21wbGV0aW9uKHsgfSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBTaGFyZWFi
bGVCaXRtYXA6OkhhbmRsZSBiaXRtYXBIYW5kbGU7CisgICAgYml0bWFwLT5jcmVhdGVIYW5kbGUo
Yml0bWFwSGFuZGxlKTsKKyAgICBpZiAoYml0bWFwSGFuZGxlLmlzTnVsbCgpKSB7CisgICAgICAg
IGlmIChjb21wbGV0aW9uKQorICAgICAgICAgICAgY29tcGxldGlvbih7IH0pOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgVmVjdG9yPENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRy
PEVsZW1lbnQ+JiYpPj4gY29tcGxldGlvbkhhbmRsZXJzOworICAgIGlmIChjb21wbGV0aW9uKQor
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlcnMuYXBwZW5kKFdURk1vdmUoY29tcGxldGlvbikpOwor
ICAgIG1fZWxlbWVudHNQZW5kaW5nVGV4dFJlY29nbml0aW9uLmFwcGVuZCh7IG1ha2VXZWFrUHRy
KGVsZW1lbnQpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVycykgfSk7CisKKyAgICBhdXRvIGNh
Y2hlZEltYWdlID0gcmVuZGVySW1hZ2UuY2FjaGVkSW1hZ2UoKTsKKyAgICBhdXRvIGltYWdlVVJM
ID0gY2FjaGVkSW1hZ2UgPyBlbGVtZW50LmRvY3VtZW50KCkuY29tcGxldGVVUkwoY2FjaGVkSW1h
Z2UtPnVybCgpLnN0cmluZygpKSA6IFVSTCB7IH07CisgICAgc2VuZFdpdGhBc3luY1JlcGx5KE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OlJlcXVlc3RUZXh0UmVjb2duaXRpb24oV1RGTW92ZShpbWFn
ZVVSTCksIFdURk1vdmUoYml0bWFwSGFuZGxlKSksIFt3ZWJQYWdlID0gbWFrZVdlYWtQdHIoKnRo
aXMpLCB3ZWFrRWxlbWVudCA9IG1ha2VXZWFrUHRyKGVsZW1lbnQpXSAoYXV0byYmIHJlc3VsdCkg
eworICAgICAgICBhdXRvIHByb3RlY3RlZFBhZ2UgPSBtYWtlUmVmUHRyKHdlYlBhZ2UuZ2V0KCkp
OworICAgICAgICBpZiAoIXByb3RlY3RlZFBhZ2UpCisgICAgICAgICAgICByZXR1cm47CisKKyAg
ICAgICAgcHJvdGVjdGVkUGFnZS0+bV9lbGVtZW50c1BlbmRpbmdUZXh0UmVjb2duaXRpb24ucmVt
b3ZlQWxsTWF0Y2hpbmcoWyZdIChhdXRvJiBlbGVtZW50QW5kQ29tcGxldGlvbkhhbmRsZXJzKSB7
CisgICAgICAgICAgICBhdXRvJiBbZWxlbWVudCwgY29tcGxldGlvbkhhbmRsZXJzXSA9IGVsZW1l
bnRBbmRDb21wbGV0aW9uSGFuZGxlcnM7CisgICAgICAgICAgICBpZiAoZWxlbWVudCkKKyAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgICAgIGZvciAoYXV0byYgY29tcGxl
dGlvbkhhbmRsZXIgOiBjb21wbGV0aW9uSGFuZGxlcnMpCisgICAgICAgICAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoeyB9KTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9KTsK
KworICAgICAgICBhdXRvIHByb3RlY3RlZEVsZW1lbnQgPSBtYWtlUmVmUHRyKHdlYWtFbGVtZW50
LmdldCgpKTsKKyAgICAgICAgaWYgKCFwcm90ZWN0ZWRFbGVtZW50KQorICAgICAgICAgICAgcmV0
dXJuOworCisgICAgICAgIGF1dG8mIGh0bWxFbGVtZW50ID0gZG93bmNhc3Q8SFRNTEVsZW1lbnQ+
KCpwcm90ZWN0ZWRFbGVtZW50KTsKKyAgICAgICAgaHRtbEVsZW1lbnQudXBkYXRlV2l0aFRleHRS
ZWNvZ25pdGlvblJlc3VsdChyZXN1bHQpOworCisgICAgICAgIGF1dG8gbWF0Y2hJbmRleCA9IHBy
b3RlY3RlZFBhZ2UtPm1fZWxlbWVudHNQZW5kaW5nVGV4dFJlY29nbml0aW9uLmZpbmRNYXRjaGlu
ZyhbJl0gKGF1dG8mIGVsZW1lbnRBbmRDb21wbGV0aW9uSGFuZGxlcnMpIHsKKyAgICAgICAgICAg
IHJldHVybiBlbGVtZW50QW5kQ29tcGxldGlvbkhhbmRsZXJzLmZpcnN0ID09ICZodG1sRWxlbWVu
dDsKKyAgICAgICAgfSk7CisKKyAgICAgICAgaWYgKG1hdGNoSW5kZXggPT0gbm90Rm91bmQpCisg
ICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgYXV0byBpbWFnZU92ZXJsYXlIb3N0ID0gaHRt
bEVsZW1lbnQuaGFzSW1hZ2VPdmVybGF5KCkgPyBtYWtlUmVmUHRyKGh0bWxFbGVtZW50KSA6IG51
bGxwdHI7CisgICAgICAgIGZvciAoYXV0byYgY29tcGxldGlvbkhhbmRsZXIgOiBwcm90ZWN0ZWRQ
YWdlLT5tX2VsZW1lbnRzUGVuZGluZ1RleHRSZWNvZ25pdGlvblttYXRjaEluZGV4XS5zZWNvbmQp
CisgICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihpbWFnZU92ZXJsYXlIb3N0LmNvcHlSZWYo
KSk7CisKKyAgICAgICAgcHJvdGVjdGVkUGFnZS0+bV9lbGVtZW50c1BlbmRpbmdUZXh0UmVjb2du
aXRpb24ucmVtb3ZlKG1hdGNoSW5kZXgpOworICAgIH0pOworfQorCit2b2lkIFdlYlBhZ2U6OnVw
ZGF0ZVdpdGhUZXh0UmVjb2duaXRpb25SZXN1bHQoY29uc3QgVGV4dFJlY29nbml0aW9uUmVzdWx0
JiByZXN1bHQsIGNvbnN0IEVsZW1lbnRDb250ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFBvaW50
JiBsb2NhdGlvbiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChUZXh0UmVjb2duaXRpb25VcGRhdGVS
ZXN1bHQpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8gZWxlbWVudFRvVXBkYXRl
ID0gZWxlbWVudEZvckNvbnRleHQoY29udGV4dCk7CisgICAgaWYgKCFpczxIVE1MRWxlbWVudD4o
ZWxlbWVudFRvVXBkYXRlKSkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihUZXh0UmVjb2du
aXRpb25VcGRhdGVSZXN1bHQ6Ok5vVGV4dCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBkb3duY2FzdDxIVE1MRWxlbWVudD4oKmVsZW1lbnRUb1VwZGF0ZSkudXBkYXRlV2l0aFRleHRS
ZWNvZ25pdGlvblJlc3VsdChyZXN1bHQpOworICAgIGF1dG8gaGl0VGVzdFJlc3VsdCA9IGNvcmVQ
YWdlKCktPm1haW5GcmFtZSgpLmV2ZW50SGFuZGxlcigpLmhpdFRlc3RSZXN1bHRBdFBvaW50KHJv
dW5kZWRJbnRQb2ludChsb2NhdGlvbiksIHsKKyAgICAgICAgSGl0VGVzdFJlcXVlc3Q6OlR5cGU6
OlJlYWRPbmx5LAorICAgICAgICBIaXRUZXN0UmVxdWVzdDo6VHlwZTo6QWN0aXZlLAorICAgICAg
ICBIaXRUZXN0UmVxdWVzdDo6VHlwZTo6QWxsb3dWaXNpYmxlQ2hpbGRGcmFtZUNvbnRlbnRPbmx5
LAorICAgIH0pOworCisgICAgYXV0byBub2RlQXRMb2NhdGlvbiA9IG1ha2VSZWZQdHIoaGl0VGVz
dFJlc3VsdC5pbm5lck5vblNoYXJlZE5vZGUoKSk7CisgICAgYXV0byB1cGRhdGVSZXN1bHQgPSAo
WyZdIHsKKyAgICAgICAgaWYgKCFub2RlQXRMb2NhdGlvbiB8fCBub2RlQXRMb2NhdGlvbi0+c2hh
ZG93SG9zdCgpICE9IGVsZW1lbnRUb1VwZGF0ZSB8fCAhSFRNTEVsZW1lbnQ6OmlzSW5zaWRlSW1h
Z2VPdmVybGF5KCpub2RlQXRMb2NhdGlvbikpCisgICAgICAgICAgICByZXR1cm4gVGV4dFJlY29n
bml0aW9uVXBkYXRlUmVzdWx0OjpOb1RleHQ7CisKKyNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04p
CisgICAgICAgIGlmIChmaW5kRGF0YURldGVjdGlvblJlc3VsdEVsZW1lbnRJbkltYWdlT3Zlcmxh
eShsb2NhdGlvbiwgZG93bmNhc3Q8SFRNTEVsZW1lbnQ+KCplbGVtZW50VG9VcGRhdGUpKSkKKyAg
ICAgICAgICAgIHJldHVybiBUZXh0UmVjb2duaXRpb25VcGRhdGVSZXN1bHQ6OkRhdGFEZXRlY3Rv
cjsKKyNlbmRpZgorCisgICAgICAgIGlmIChIVE1MRWxlbWVudDo6aXNJbWFnZU92ZXJsYXlUZXh0
KCpub2RlQXRMb2NhdGlvbikpCisgICAgICAgICAgICByZXR1cm4gVGV4dFJlY29nbml0aW9uVXBk
YXRlUmVzdWx0OjpUZXh0OworCisgICAgICAgIHJldHVybiBUZXh0UmVjb2duaXRpb25VcGRhdGVS
ZXN1bHQ6Ok5vVGV4dDsKKyAgICB9KSgpOworCisgICAgY29tcGxldGlvbkhhbmRsZXIodXBkYXRl
UmVzdWx0KTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShJTUFHRV9BTkFMWVNJUykKKworI2lmIEVO
QUJMRShNRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTKSAmJiBVU0UoVUlDT05URVhUTUVOVSkK
K3ZvaWQgV2ViUGFnZTo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShGbG9hdFJlY3QmJiB0
YXJnZXRGcmFtZSwgVmVjdG9yPE1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0+JiYgaXRlbXMs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbTo6SUQp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdl
czo6V2ViUGFnZVByb3h5OjpTaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KFdURk1vdmUodGFy
Z2V0RnJhbWUpLCBXVEZNb3ZlKGl0ZW1zKSksIGNvbXBsZXRpb25IYW5kbGVyKTsKK30KKyNlbmRp
ZiAvLyBFTkFCTEUoTUVESUFfQ09OVFJPTFNfQ09OVEVYVF9NRU5VUykgJiYgVVNFKFVJQ09OVEVY
VE1FTlUpCisKKyNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKKwordm9pZCBXZWJQYWdlOjphbmlt
YXRpb25EaWRGaW5pc2hGb3JFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQmKQoreworfQor
CisjZW5kaWYKKworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKK3ZvaWQgV2ViUGFnZTo6
c2V0SXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbihzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdU
b0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBXZWJGcmFtZSog
ZnJhbWUpCit7CisgICAgZnJhbWUtPnNldElzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4oaXNO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbik7CisgICAgCisgICAgbV9uYXZpZ2F0aW9uSGFzT2Nj
dXJlZCA9IHRydWU7Cit9CisKK3ZvaWQgV2ViUGFnZTo6bm90aWZ5UGFnZU9mQXBwQm91bmRCZWhh
dmlvcigpCit7CisgICAgaWYgKCFtX25hdmlnYXRpb25IYXNPY2N1cmVkICYmICFtX2xpbWl0c05h
dmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMpCisgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6U2V0SGFzRXhlY3V0ZWRBcHBCb3VuZEJlaGF2aW9yQmVmb3JlTmF2aWdhdGlvbigp
KTsKK30KKyNlbmRpZgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKQorUmVtb3RlUmVuZGVyaW5n
QmFja2VuZFByb3h5JiBXZWJQYWdlOjplbnN1cmVSZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHko
KQoreworICAgIGlmICghbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJveHkpCisgICAgICAgIG1f
cmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5ID0gUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5
OjpjcmVhdGUoKnRoaXMpOworICAgIHJldHVybiAqbV9yZW1vdGVSZW5kZXJpbmdCYWNrZW5kUHJv
eHk7Cit9CisjZW5kaWYKKworVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPj4gV2ViUGFn
ZTo6Y29uc3VtZVNhbmRib3hFeHRlbnNpb25zKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5k
bGU+JiYgc2FuZGJveEV4dGVuc2lvbnMpCit7CisgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0
ZW5zaW9uPj4gZHJhZ1NhbmRib3hFeHRlbnNpb25zOworICAgIGZvciAoYXV0byYgc2FuZGJveEV4
dGVuc2lvbiA6IHNhbmRib3hFeHRlbnNpb25zKSB7CisgICAgICAgIGF1dG8gZXh0ZW5zaW9uID0g
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlKFdURk1vdmUoc2FuZGJveEV4dGVuc2lvbikpOworICAg
ICAgICBpZiAoIWV4dGVuc2lvbikKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBib29s
IG9rID0gZXh0ZW5zaW9uLT5jb25zdW1lKCk7CisgICAgICAgIEFTU0VSVF9VTlVTRUQob2ssIG9r
KTsKKyAgICAgICAgZHJhZ1NhbmRib3hFeHRlbnNpb25zLmFwcGVuZChXVEZNb3ZlKGV4dGVuc2lv
bikpOworICAgIH0KKyAgICByZXR1cm4gZHJhZ1NhbmRib3hFeHRlbnNpb25zOworfQorCit2b2lk
IFdlYlBhZ2U6OnJldm9rZVNhbmRib3hFeHRlbnNpb25zKFZlY3RvcjxSZWZQdHI8U2FuZGJveEV4
dGVuc2lvbj4+JiBzYW5kYm94RXh0ZW5zaW9ucykKK3sKKyAgICBmb3IgKGF1dG8mIHNhbmRib3hF
eHRlbnNpb24gOiBzYW5kYm94RXh0ZW5zaW9ucykKKyAgICAgICAgc2FuZGJveEV4dGVuc2lvbi0+
cmV2b2tlKCk7CisgICAgc2FuZGJveEV4dGVuc2lvbnMuY2xlYXIoKTsKK30KKworI2lmIEVOQUJM
RShBUFBfSElHSExJR0hUUykKK2Jvb2wgV2ViUGFnZTo6Y3JlYXRlQXBwSGlnaGxpZ2h0SW5TZWxl
Y3RlZFJhbmdlKFdlYkNvcmU6OkNyZWF0ZU5ld0dyb3VwRm9ySGlnaGxpZ2h0IGNyZWF0ZU5ld0dy
b3VwLCBXZWJDb3JlOjpIaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwIHJlcXVlc3RPcmln
aW5hdGVkSW5BcHApCit7CisgICAgU2V0Rm9yU2NvcGU8V2ViQ29yZTo6Q3JlYXRlTmV3R3JvdXBG
b3JIaWdobGlnaHQ+IGhpZ2hsaWdodElzTmV3R3JvdXBTY29wZSB7IG1faGlnaGxpZ2h0SXNOZXdH
cm91cCwgY3JlYXRlTmV3R3JvdXAgfTsKKyAgICBTZXRGb3JTY29wZTxXZWJDb3JlOjpIaWdobGln
aHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwPiBoaWdobGlnaHRSZXF1ZXN0T3JpZ2luU2NvcGUgeyBt
X2hpZ2hsaWdodFJlcXVlc3RPcmlnaW5hdGVkSW5BcHAsIHJlcXVlc3RPcmlnaW5hdGVkSW5BcHAg
fTsKKworICAgIFJlZlB0ciBkb2N1bWVudCA9IENoZWNrZWRSZWYobV9wYWdlLT5mb2N1c0NvbnRy
b2xsZXIoKSktPmZvY3VzZWRPck1haW5GcmFtZSgpLmRvY3VtZW50KCk7CisKKyAgICBhdXRvIGZy
YW1lID0gbWFrZVJlZlB0cihkb2N1bWVudC0+ZnJhbWUoKSk7CisgICAgaWYgKCFmcmFtZSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgYXV0byBzZWxlY3Rpb25SYW5nZSA9IGZyYW1lLT5z
ZWxlY3Rpb24oKS5zZWxlY3Rpb24oKS50b05vcm1hbGl6ZWRSYW5nZSgpOworICAgIGlmICghc2Vs
ZWN0aW9uUmFuZ2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGRvY3VtZW50LT5hcHBI
aWdobGlnaHRSZWdpc3RlcigpLmFkZEFwcEhpZ2hsaWdodChTdGF0aWNSYW5nZTo6Y3JlYXRlKHNl
bGVjdGlvblJhbmdlLnZhbHVlKCkpKTsKKyAgICBkb2N1bWVudC0+YXBwSGlnaGxpZ2h0U3RvcmFn
ZSgpLnN0b3JlQXBwSGlnaGxpZ2h0KFN0YXRpY1JhbmdlOjpjcmVhdGUoc2VsZWN0aW9uUmFuZ2Uu
dmFsdWUoKSkpOworCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3ZvaWQgV2ViUGFnZTo6cmVzdG9y
ZUFwcEhpZ2hsaWdodHNBbmRTY3JvbGxUb0luZGV4KGNvbnN0IFZlY3RvcjxTaGFyZWRNZW1vcnk6
OklQQ0hhbmRsZT4mJiBtZW1vcnlIYW5kbGVzLCBjb25zdCBzdGQ6Om9wdGlvbmFsPHVuc2lnbmVk
PiBpbmRleCkKK3sKKyAgICBSZWZQdHIgZG9jdW1lbnQgPSBDaGVja2VkUmVmKG1fcGFnZS0+Zm9j
dXNDb250cm9sbGVyKCkpLT5mb2N1c2VkT3JNYWluRnJhbWUoKS5kb2N1bWVudCgpOworCisgICAg
dW5zaWduZWQgaSA9IDA7CisgICAgZm9yIChjb25zdCBhdXRvJiBpcGNIYW5kbGUgOiBtZW1vcnlI
YW5kbGVzKSB7CisgICAgICAgIGF1dG8gc2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjptYXAo
aXBjSGFuZGxlLmhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7Cisg
ICAgICAgIGlmICghc2hhcmVkTWVtb3J5KQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAg
ICAgZG9jdW1lbnQtPmFwcEhpZ2hsaWdodFN0b3JhZ2UoKS5yZXN0b3JlQW5kU2Nyb2xsVG9BcHBI
aWdobGlnaHQoU2hhcmVkQnVmZmVyOjpjcmVhdGUoc3RhdGljX2Nhc3Q8Y29uc3QgdWludDhfdCo+
KHNoYXJlZE1lbW9yeS0+ZGF0YSgpKSwgaXBjSGFuZGxlLmRhdGFTaXplKSwgaSA9PSBpbmRleCA/
IFNjcm9sbFRvSGlnaGxpZ2h0OjpZZXMgOiBTY3JvbGxUb0hpZ2hsaWdodDo6Tm8pOworICAgICAg
ICBpKys7CisgICAgfQorfQorCit2b2lkIFdlYlBhZ2U6OnNldEFwcEhpZ2hsaWdodHNWaXNpYmls
aXR5KFdlYkNvcmU6OkhpZ2hsaWdodFZpc2liaWxpdHkgYXBwSGlnaGxpZ2h0VmlzaWJpbGl0eSkK
K3sKKyAgICBtX2FwcEhpZ2hsaWdodHNWaXNpYmxlID0gYXBwSGlnaGxpZ2h0VmlzaWJpbGl0eTsK
KyAgICBmb3IgKFJlZlB0cjxGcmFtZT4gZnJhbWUgPSBtX21haW5GcmFtZS0+Y29yZUZyYW1lKCk7
IGZyYW1lOyBmcmFtZSA9IGZyYW1lLT50cmVlKCkudHJhdmVyc2VOZXh0UmVuZGVyZWQoKSkgewor
ICAgICAgICBpZiAoYXV0byBkb2N1bWVudCA9IG1ha2VSZWZQdHIoZnJhbWUtPmRvY3VtZW50KCkp
KQorICAgICAgICAgICAgZG9jdW1lbnQtPmFwcEhpZ2hsaWdodFJlZ2lzdGVyKCkuc2V0SGlnaGxp
Z2h0VmlzaWJpbGl0eShhcHBIaWdobGlnaHRWaXNpYmlsaXR5KTsKKyAgICB9Cit9CisKKyNlbmRp
ZgorCisjaWYgRU5BQkxFKE1FRElBX1NFU1NJT05fQ09PUkRJTkFUT1IpCit2b2lkIFdlYlBhZ2U6
OmNyZWF0ZU1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBhdXRvKiBkb2N1bWVudCA9IG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+ZG9jdW1lbnQoKTsK
KyAgICBpZiAoIWRvY3VtZW50IHx8ICFkb2N1bWVudC0+ZG9tV2luZG93KCkpIHsKKyAgICAgICAg
Y29tcGxldGlvbkhhbmRsZXIoZmFsc2UpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAg
bV9wYWdlLT5zZXRNZWRpYVNlc3Npb25Db29yZGluYXRvcihSZW1vdGVNZWRpYVNlc3Npb25Db29y
ZGluYXRvcjo6Y3JlYXRlKCp0aGlzLCBpZGVudGlmaWVyKSk7CisgICAgY29tcGxldGlvbkhhbmRs
ZXIodHJ1ZSk7Cit9CisKK3ZvaWQgV2ViUGFnZTo6aW52YWxpZGF0ZU1lZGlhU2Vzc2lvbkNvb3Jk
aW5hdG9yKCkKK3sKKyAgICBtX3BhZ2UtPmludmFsaWRhdGVNZWRpYVNlc3Npb25Db29yZGluYXRv
cigpOworfQorI2VuZGlmCisKKyNpZiAhUExBVEZPUk0oQ09DT0EpCit2b2lkIFdlYlBhZ2U6OmNv
bnN1bWVOZXR3b3JrRXh0ZW5zaW9uU2FuZGJveEV4dGVuc2lvbnMoY29uc3QgVmVjdG9yPFNhbmRi
b3hFeHRlbnNpb246OkhhbmRsZT4mKQoreworfQorI2VuZGlmCisKK3ZvaWQgV2ViUGFnZTo6bGFz
dE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4m
JiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcihtYWluRnJhbWUo
KS0+ZG9jdW1lbnQoKS0+bG9hZGVyKCktPmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKCkp
OworfQorCisjaWYgSEFWRShUUkFOU0xBVElPTl9VSV9TRVJWSUNFUykgJiYgRU5BQkxFKENPTlRF
WFRfTUVOVVMpCisKK3ZvaWQgV2ViUGFnZTo6aGFuZGxlQ29udGV4dE1lbnVUcmFuc2xhdGlvbihj
b25zdCBUcmFuc2xhdGlvbkNvbnRleHRNZW51SW5mbyYgaW5mbykKK3sKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkhhbmRsZUNvbnRleHRNZW51VHJhbnNsYXRpb24oaW5mbykpOwor
fQorI2VuZGlmCisKKyNpZiBFTkFCTEUoQVJLSVRfSU5MSU5FX1BSRVZJRVdfSU9TKQordm9pZCBX
ZWJQYWdlOjp0YWtlTW9kZWxFbGVtZW50RnVsbHNjcmVlbihXZWJDb3JlOjpHcmFwaGljc0xheWVy
OjpQbGF0Zm9ybUxheWVySUQgY29udGVudExheWVySWQpCit7CisgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpUYWtlTW9kZWxFbGVtZW50RnVsbHNjcmVlbihjb250ZW50TGF5ZXJJZCkp
OworfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoQVJLSVRfSU5MSU5FX1BSRVZJRVdfTUFDKQordm9p
ZCBXZWJQYWdlOjptb2RlbEVsZW1lbnREaWRDcmVhdGVQcmV2aWV3KFdlYkNvcmU6OkhUTUxNb2Rl
bEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHV1aWQsIGNv
bnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYgc2l6ZSkKK3sKKyAgICBpZiAoYXV0byBlbGVtZW50Q29u
dGV4dCA9IGNvbnRleHRGb3JFbGVtZW50KGVsZW1lbnQpKQorICAgICAgICBzZW5kKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6Ok1vZGVsRWxlbWVudERpZENyZWF0ZVByZXZpZXcoKmVsZW1lbnRDb250
ZXh0LCB1cmwsIHV1aWQsIHNpemUpKTsKK30KKwordm9pZCBXZWJQYWdlOjptb2RlbEVsZW1lbnRQ
cmV2aWV3RGlkT2J0YWluQ29udGV4dElkKGNvbnN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0JiBl
bGVtZW50Q29udGV4dCwgY29uc3QgU3RyaW5nJiB1dWlkLCB1aW50MzJfdCBjb250ZXh0SWQpCit7
CisgICAgYXV0byBlbGVtZW50ID0gZWxlbWVudEZvckNvbnRleHQoZWxlbWVudENvbnRleHQpOwor
ICAgIGlmIChpczxXZWJDb3JlOjpIVE1MTW9kZWxFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAg
ZG93bmNhc3Q8V2ViQ29yZTo6SFRNTE1vZGVsRWxlbWVudD4oKmVsZW1lbnQpLmlubGluZVByZXZp
ZXdEaWRPYnRhaW5Db250ZXh0SWQodXVpZCwgY29udGV4dElkKTsKK30KKyNlbmRpZgorCit2b2lk
IFdlYlBhZ2U6OnNjcm9sbFRvUmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIHRhcmdldFJl
Y3QsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIG9yaWdpbikKK3sKKyAgICBtYWluRnJhbWVW
aWV3KCktPnNldFNjcm9sbFBvc2l0aW9uKEludFBvaW50KHRhcmdldFJlY3QubWluWE1pbllDb3Ju
ZXIoKSkpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKworI3VuZGVmIFdFQlBBR0VfUkVM
RUFTRV9MT0cKKyN1bmRlZiBXRUJQQUdFX1JFTEVBU0VfTE9HX0VSUk9SCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggZjU3M2JkYTc2NTU3YmM0OWYwZmQ2
MzE4N2E1YjU3NDdhZmFkMWY5OC4uNTJhYmFkOWUwMGQzYzJiM2MxZWVhNGRlNjRlODBiNGM2YjAx
MGQxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAt
NDM3LDcgKzQzNyw3IEBAIHB1YmxpYzoKICAgICBXZWJGdWxsU2NyZWVuTWFuYWdlciogZnVsbFNj
cmVlbk1hbmFnZXIoKTsKICNlbmRpZgogCi0gICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIsIE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3Qg
U3RyaW5nJiwgdWludDY0X3QgcmVxdWVzdElEID0gMCk7CisgICAgdm9pZCBhZGRDb25zb2xlTWVz
c2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZl
bCwgY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyID0geyB9
KTsKICAgICB2b2lkIHNlbmRDU1BWaW9sYXRpb25SZXBvcnQoV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyLCBjb25zdCBVUkwmIHJlcG9ydFVSTCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmKTsKICAg
ICB2b2lkIHNlbmRDT0VQUG9saWN5SW5oZXJpdGVuY2VWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIGVtYmVkZGVyT3Jp
Z2luLCBjb25zdCBTdHJpbmcmIGVuZHBvaW50LCBXZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24sIGNv
bnN0IFN0cmluZyYgdHlwZSwgY29uc3QgVVJMJiBibG9ja2VkVVJMKTsKICAgICB2b2lkIHNlbmRD
T0VQQ09SUFZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luRGF0YSYgZW1iZWRkZXJPcmlnaW4sIGNvbnN0IFN0cmluZyYgZW5kcG9p
bnQsIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlvbiwgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpEZXN0
aW5hdGlvbiwgY29uc3QgVVJMJiBibG9ja2VkVVJMKTsKQEAgLTEwMTYsOCArMTAxNiw4IEBAIHB1
YmxpYzoKICAgICB2b2lkIGRyYXdQYWdlc0ZvclByaW50aW5nKFdlYkNvcmU6OkZyYW1lSWRlbnRp
ZmllciwgY29uc3QgUHJpbnRJbmZvJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJik+JiYpOwogI2VuZGlmCiAKLSAgICB2b2lkIGFkZFJlc291cmNl
UmVxdWVzdCh1bnNpZ25lZCBsb25nLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsK
LSAgICB2b2lkIHJlbW92ZVJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nKTsKKyAgICB2b2lk
IGFkZFJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAgIHZvaWQgcmVtb3ZlUmVzb3VyY2VS
ZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICB2b2lkIHNl
dE1lZGlhVm9sdW1lKGZsb2F0KTsKICAgICB2b2lkIHNldE11dGVkKFdlYkNvcmU6Ok1lZGlhUHJv
ZHVjZXI6Ok11dGVkU3RhdGVGbGFncywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKQEAg
LTE4NzcsMTEgKzE4NzcsMTEgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hl
bWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKIAot
ICAgIHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB1cmxTY2hl
bWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2
ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgdXJsU2No
ZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRf
dCB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJik7Ci0gICAgdm9pZCB1
cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CisgICAg
dm9pZCB1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4m
Jik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90
IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1
aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7Cisg
ICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwg
Y29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29t
cGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
OwogCiAgICAgdm9pZCBzZXRJc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lv
bihib29sKTsKICAgICB2b2lkIHNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKTsKQEAgLTIx
NjEsNyArMjE2MSw3IEBAIHByaXZhdGU6CiAKICAgICB1bnNpZ25lZCBtX2NhY2hlZFBhZ2VDb3Vu
dCB7IDAgfTsKIAotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV90cmFja2VkTmV0d29ya1Jl
c291cmNlUmVxdWVzdElkZW50aWZpZXJzOworICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyPiBtX3RyYWNrZWROZXR3b3JrUmVzb3VyY2VSZXF1ZXN0SWRlbnRpZmll
cnM7CiAKICAgICBXZWJDb3JlOjpJbnRTaXplIG1fbWluaW11bVNpemVGb3JBdXRvTGF5b3V0Owog
ICAgIFdlYkNvcmU6OkludFNpemUgbV9zaXplVG9Db250ZW50QXV0b1NpemVNYXhpbXVtU2l6ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaC5v
cmlnIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oLm9yaWcKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZjU3M2JkYTc2NTU3YmM0OWYwZmQ2MzE4N2E1YjU3NDdhZmFkMWY5OAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaC5v
cmlnCkBAIC0wLDAgKzEsMjM5NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMC0yMDIxIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisK
KyNpbmNsdWRlICJBUElJbmplY3RlZEJ1bmRsZUVkaXRvckNsaWVudC5oIgorI2luY2x1ZGUgIkFQ
SUluamVjdGVkQnVuZGxlRm9ybUNsaWVudC5oIgorI2luY2x1ZGUgIkFQSUluamVjdGVkQnVuZGxl
UGFnZUNvbnRleHRNZW51Q2xpZW50LmgiCisjaW5jbHVkZSAiQVBJSW5qZWN0ZWRCdW5kbGVQYWdl
TG9hZGVyQ2xpZW50LmgiCisjaW5jbHVkZSAiQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50LmgiCisjaW5jbHVkZSAiQVBJSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuaCIK
KyNpbmNsdWRlICJBUElPYmplY3QuaCIKKyNpbmNsdWRlICJDYWxsYmFja0lELmgiCisjaW5jbHVk
ZSAiQ29udGVudEFzU3RyaW5nSW5jbHVkZXNDaGlsZEZyYW1lcy5oIgorI2luY2x1ZGUgIkRhdGFS
ZWZlcmVuY2UuaCIKKyNpbmNsdWRlICJEb3dubG9hZElELmgiCisjaW5jbHVkZSAiRHJhd2luZ0Fy
ZWFJbmZvLmgiCisjaW5jbHVkZSAiRWRpdGluZ1JhbmdlLmgiCisjaW5jbHVkZSAiRm9jdXNlZEVs
ZW1lbnRJbmZvcm1hdGlvbi5oIgorI2luY2x1ZGUgIkdlb2xvY2F0aW9uSWRlbnRpZmllci5oIgor
I2luY2x1ZGUgIklkZW50aWZpZXJUeXBlcy5oIgorI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFn
ZUNvbnRleHRNZW51Q2xpZW50LmgiCisjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNj
cmVlbkNsaWVudC5oIgorI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZVBvbGljeUNsaWVudC5o
IgorI2luY2x1ZGUgIkxheWVyVHJlZUNvbnRleHQuaCIKKyNpbmNsdWRlICJNZXNzYWdlUmVjZWl2
ZXIuaCIKKyNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCisjaW5jbHVkZSAiTmV0d29ya1Jlc291
cmNlTG9hZElkZW50aWZpZXIuaCIKKyNpbmNsdWRlICJQREZQbHVnaW5JZGVudGlmaWVyLmgiCisj
aW5jbHVkZSAiUGx1Z2luLmgiCisjaW5jbHVkZSAiUG9saWN5RGVjaXNpb24uaCIKKyNpbmNsdWRl
ICJTYW5kYm94RXh0ZW5zaW9uLmgiCisjaW5jbHVkZSAiU2hhcmVhYmxlQml0bWFwLmgiCisjaW5j
bHVkZSAiU2hhcmVkTWVtb3J5LmgiCisjaW5jbHVkZSAiU3RvcmFnZU5hbWVzcGFjZUlkZW50aWZp
ZXIuaCIKKyNpbmNsdWRlICJUcmFuc2FjdGlvbklELmgiCisjaW5jbHVkZSAiVXNlckRhdGEuaCIK
KyNpbmNsdWRlICJXZWJCYWNrRm9yd2FyZExpc3RQcm94eS5oIgorI2luY2x1ZGUgIldlYlBhZ2VN
ZXNzYWdlc1JlcGxpZXMuaCIKKyNpbmNsdWRlICJXZWJVUkxTY2hlbWVIYW5kbGVyLmgiCisjaW5j
bHVkZSAiV2ViVW5kb1N0ZXBJRC5oIgorI2luY2x1ZGUgIldlYlVzZXJDb250ZW50Q29udHJvbGxl
ci5oIgorI2luY2x1ZGUgIldlYnNpdGVQb2xpY2llc0RhdGEuaCIKKyNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9JbnNwZWN0b3JGcm9udGVuZENoYW5uZWwuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0Fj
dGl2aXR5U3RhdGUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0FwcEhpZ2hsaWdodC5oPgorI2luY2x1
ZGUgPFdlYkNvcmUvRGljdGlvbmFyeVBvcHVwSW5mby5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRGlz
YWJsZWRBZGFwdGF0aW9ucy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRHJhZ0FjdGlvbnMuaD4KKyNp
bmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyVHlwZXMuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0hU
TUxNZW51RWxlbWVudC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSFRNTE1lbnVJdGVtRWxlbWVudC5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvSGlnaGxpZ2h0VmlzaWJpbGl0eS5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvSW50UmVjdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSW50U2l6ZUhhc2guaD4KKyNpbmNs
dWRlIDxXZWJDb3JlL01lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0uaD4KKyNpbmNsdWRlIDxX
ZWJDb3JlL01lZGlhS2V5U3lzdGVtUmVxdWVzdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUGFnZS5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvUGFnZUlkZW50aWZpZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3Jl
L1BhZ2VPdmVybGF5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9QbHVnaW5EYXRhLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9Qb2ludGVyQ2hhcmFjdGVyaXN0aWNzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Q
b2ludGVySUQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1NlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZl
bnQuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlRGF0YS5oPgorI2luY2x1ZGUgPFdlYkNvcmUv
U2ltcGxlUmFuZ2UuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1N1YnN0aXR1dGVEYXRhLmg+CisjaW5j
bHVkZSA8V2ViQ29yZS9UZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlci5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvVXNlckFjdGl2aXR5Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VyQ29udGVudFR5cGVz
Lmg+CisjaW5jbHVkZSA8V2ViQ29yZS9Vc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9Vc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllci5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvVXNlclNjcmlwdFR5cGVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9WaXNpYmlsaXR5
U3RhdGUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1dlYkNvcmVLZXlib2FyZFVJTW9kZS5oPgorI2lu
Y2x1ZGUgPG1lbW9yeT4KKyNpbmNsdWRlIDxwYWwvSHlzdGVyZXNpc0FjdGl2aXR5Lmg+CisjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgorI2lu
Y2x1ZGUgPHd0Zi9PcHRpb25TZXQuaD4KKyNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisjaW5jbHVk
ZSA8d3RmL1J1bkxvb3AuaD4KKyNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgorI2luY2x1ZGUgPHd0
Zi9XYWxsVGltZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCisjaWYgRU5B
QkxFKEFDQ0VTU0lCSUxJVFkpICYmIFVTRShBVEspCit0eXBlZGVmIHN0cnVjdCBfQXRrT2JqZWN0
IEF0a09iamVjdDsKKyNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CisjZW5kaWYKKworI2lm
IFBMQVRGT1JNKEdUSykKKyNpbmNsdWRlICJBcmd1bWVudENvZGVyc0d0ay5oIgorI2luY2x1ZGUg
IldlYlByaW50T3BlcmF0aW9uR3RrLmgiCisjZW5kaWYKKworI2lmIFBMQVRGT1JNKEdUSykgfHwg
UExBVEZPUk0oV1BFKQorI2luY2x1ZGUgIklucHV0TWV0aG9kU3RhdGUuaCIKKyNlbmRpZgorCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyNpbmNsdWRlICJHZXN0dXJlVHlwZXMuaCIKKyNpbmNs
dWRlIDxXZWJDb3JlL0luc3BlY3Rvck92ZXJsYXkuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ludFBv
aW50SGFzaC5oPgorI2luY2x1ZGUgPFdlYkNvcmUvV0tDb250ZW50T2JzZXJ2YXRpb24uaD4KKyNl
bmRpZgorCisjaWYgRU5BQkxFKE1FVEFfVklFV1BPUlQpCisjaW5jbHVkZSA8V2ViQ29yZS9WaWV3
cG9ydENvbmZpZ3VyYXRpb24uaD4KKyNlbmRpZgorCisjaWYgRU5BQkxFKEFQUExJQ0FUSU9OX01B
TklGRVNUKQorI2luY2x1ZGUgPFdlYkNvcmUvQXBwbGljYXRpb25NYW5pZmVzdC5oPgorI2VuZGlm
CisKKyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyNpbmNsdWRlIDxXZWJLaXRBZGRpdGlv
bnMvUGxhdGZvcm1Ub3VjaEV2ZW50SU9TLmg+CisjZWxpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQor
I2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1Ub3VjaEV2ZW50Lmg+CisjZW5kaWYKKworI2lmIEVO
QUJMRShNQUNfR0VTVFVSRV9FVkVOVFMpCisjaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1BsYXRm
b3JtR2VzdHVyZUV2ZW50TWFjLmg+CisjZW5kaWYKKworI2lmIEVOQUJMRShNRURJQV9VU0FHRSkK
KyNpbmNsdWRlIDxXZWJDb3JlL01lZGlhU2Vzc2lvbklkZW50aWZpZXIuaD4KKyNlbmRpZgorCisj
aWYgRU5BQkxFKFdFQlhSKSAmJiAhVVNFKE9QRU5YUikKKyNpbmNsdWRlICJQbGF0Zm9ybVhSU3lz
dGVtUHJveHkuaCIKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiRHlu
YW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZS5oIgorI2luY2x1ZGUgPFdlYkNvcmUvVmlzaWJsZVNlbGVj
dGlvbi5oPgorI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KK09CSkNfQ0xBU1MgQ0FMYXllcjsK
K09CSkNfQ0xBU1MgTlNBcnJheTsKK09CSkNfQ0xBU1MgTlNEaWN0aW9uYXJ5OworT0JKQ19DTEFT
UyBOU09iamVjdDsKK09CSkNfQ0xBU1MgV0tBY2Nlc3NpYmlsaXR5V2ViUGFnZU9iamVjdDsKKyNl
bmRpZgorCisjZGVmaW5lIEVOQUJMRV9WSUVXUE9SVF9SRVNJWklORyBQTEFURk9STShJT1NfRkFN
SUxZKQorCituYW1lc3BhY2UgV1RGIHsKK2VudW0gY2xhc3MgQ3JpdGljYWwgOiB1aW50OF90Owor
fQorCituYW1lc3BhY2UgQVBJIHsKK2NsYXNzIEFycmF5OworfQorCituYW1lc3BhY2UgSVBDIHsK
K2NsYXNzIENvbm5lY3Rpb247CitjbGFzcyBEZWNvZGVyOworY2xhc3MgRm9ybURhdGFSZWZlcmVu
Y2U7Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgQ2FjaGVkUGFnZTsKK2NsYXNz
IENhcHR1cmVEZXZpY2U7CitjbGFzcyBEb2N1bWVudExvYWRlcjsKK2NsYXNzIERyYWdEYXRhOwor
Y2xhc3MgRm9udEF0dHJpYnV0ZUNoYW5nZXM7CitjbGFzcyBGb250Q2hhbmdlczsKK2NsYXNzIEZy
YW1lOworY2xhc3MgRnJhbWVTZWxlY3Rpb247CitjbGFzcyBGcmFtZVZpZXc7CitjbGFzcyBHcmFw
aGljc0NvbnRleHQ7CitjbGFzcyBIVE1MRWxlbWVudDsKK2NsYXNzIEhUTUxJbWFnZUVsZW1lbnQ7
CitjbGFzcyBIVE1MTWVudUVsZW1lbnQ7CitjbGFzcyBIVE1MTWVudUl0ZW1FbGVtZW50OworY2xh
c3MgSFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBJbnRQb2ludDsKK2NsYXNzIEtleWJvYXJkRXZl
bnQ7CitjbGFzcyBNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dDsKK2NsYXNzIE1lZGlhUGxheWVy
UmVxdWVzdEluc3RhbGxNaXNzaW5nUGx1Z2luc0NhbGxiYWNrOworY2xhc3MgTWVkaWFTZXNzaW9u
Q29vcmRpbmF0b3I7CitjbGFzcyBQYWdlOworY2xhc3MgUHJpbnRDb250ZXh0OworY2xhc3MgUmFu
Z2U7CitjbGFzcyBSZW5kZXJJbWFnZTsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFJl
c291cmNlUmVzcG9uc2U7CitjbGFzcyBTZWxlY3Rpb25EYXRhOworY2xhc3MgU2VsZWN0aW9uR2Vv
bWV0cnk7CitjbGFzcyBTaGFyZWRCdWZmZXI7CitjbGFzcyBTdWJzdGl0dXRlRGF0YTsKK2NsYXNz
IFRleHRDaGVja2luZ1JlcXVlc3Q7CitjbGFzcyBWaXNpYmxlUG9zaXRpb247CisKKyNpZiBFTkFC
TEUoQVJLSVRfSU5MSU5FX1BSRVZJRVcpCitjbGFzcyBIVE1MTW9kZWxFbGVtZW50OworI2VuZGlm
CisKK2VudW0gU3ludGhldGljQ2xpY2tUeXBlIDogaW50OF90OworZW51bSBjbGFzcyBDT0VQRGlz
cG9zaXRpb24gOiBib29sOworZW51bSBjbGFzcyBDcmVhdGVOZXdHcm91cEZvckhpZ2hsaWdodCA6
IGJvb2w7CitlbnVtIGNsYXNzIERPTVBhc3RlQWNjZXNzUmVzcG9uc2UgOiB1aW50OF90OworZW51
bSBjbGFzcyBEcmFnQXBwbGljYXRpb25GbGFncyA6IHVpbnQ4X3Q7CitlbnVtIGNsYXNzIERyYWdI
YW5kbGluZ01ldGhvZCA6IHVpbnQ4X3Q7CitlbnVtIGNsYXNzIEV2ZW50TWFrZXNHYW1lcGFkc1Zp
c2libGUgOiBib29sOworZW51bSBjbGFzcyBIaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBw
IDogYm9vbDsKK2VudW0gY2xhc3MgU2VsZWN0aW9uRGlyZWN0aW9uIDogdWludDhfdDsKK2VudW0g
Y2xhc3MgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIDogdWludDhfdDsKK2VudW0gY2xhc3Mg
VGV4dEluZGljYXRvclByZXNlbnRhdGlvblRyYW5zaXRpb24gOiB1aW50OF90OworZW51bSBjbGFz
cyBUZXh0R3JhbnVsYXJpdHkgOiB1aW50OF90OworZW51bSBjbGFzcyBXaGVlbEV2ZW50UHJvY2Vz
c2luZ1N0ZXBzIDogdWludDhfdDsKK2VudW0gY2xhc3MgV3JpdGluZ0RpcmVjdGlvbiA6IHVpbnQ4
X3Q7CisKK3VzaW5nIFBsYXRmb3JtRGlzcGxheUlEID0gdWludDMyX3Q7CisKK3N0cnVjdCBBdHRy
aWJ1dGVkU3RyaW5nOworc3RydWN0IEJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXI7CitzdHJ1Y3Qg
Q29tcG9zaXRpb25IaWdobGlnaHQ7CitzdHJ1Y3QgQ29tcG9zaXRpb25VbmRlcmxpbmU7CitzdHJ1
Y3QgQ29udGFjdEluZm87CitzdHJ1Y3QgQ29udGFjdHNSZXF1ZXN0RGF0YTsKK3N0cnVjdCBEYXRh
RGV0ZWN0b3JFbGVtZW50SW5mbzsKK3N0cnVjdCBEaWN0YXRpb25BbHRlcm5hdGl2ZTsKK3N0cnVj
dCBFbGVtZW50Q29udGV4dDsKK3N0cnVjdCBHbG9iYWxGcmFtZUlkZW50aWZpZXI7CitzdHJ1Y3Qg
R2xvYmFsV2luZG93SWRlbnRpZmllcjsKK3N0cnVjdCBLZXlwcmVzc0NvbW1hbmQ7CitzdHJ1Y3Qg
TWVkaWFVc2FnZUluZm87CitzdHJ1Y3QgUHJvbWlzZWRBdHRhY2htZW50SW5mbzsKK3N0cnVjdCBS
ZXF1ZXN0U3RvcmFnZUFjY2Vzc1Jlc3VsdDsKK3N0cnVjdCBSdW5KYXZhU2NyaXB0UGFyYW1ldGVy
czsKK3N0cnVjdCBUZXh0Q2hlY2tpbmdSZXN1bHQ7CitzdHJ1Y3QgVGV4dFJlY29nbml0aW9uUmVz
dWx0Oworc3RydWN0IFZpZXdwb3J0QXJndW1lbnRzOworCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRf
RUxFTUVOVCkKK2NsYXNzIEhUTUxBdHRhY2htZW50RWxlbWVudDsKKyNlbmRpZgorCisjaWYgSEFW
RShUUkFOU0xBVElPTl9VSV9TRVJWSUNFUykgJiYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCitzdHJ1
Y3QgVHJhbnNsYXRpb25Db250ZXh0TWVudUluZm87CisjZW5kaWYKK30KKworbmFtZXNwYWNlIFdl
YktpdCB7CisKK2NsYXNzIERyYXdpbmdBcmVhOworY2xhc3MgRmluZENvbnRyb2xsZXI7CitjbGFz
cyBHUFVQcm9jZXNzQ29ubmVjdGlvbjsKK2NsYXNzIEdhbWVwYWREYXRhOworY2xhc3MgR2VvbG9j
YXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI7CitjbGFzcyBMYXllckhvc3RpbmdDb250ZXh0
OworY2xhc3MgTWVkaWFEZXZpY2VTYW5kYm94RXh0ZW5zaW9uczsKK2NsYXNzIE1lZGlhS2V5U3lz
dGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOworY2xhc3MgTm90aWZpY2F0aW9uUGVybWlzc2lv
blJlcXVlc3RNYW5hZ2VyOworY2xhc3MgUERGUGx1Z2luOworY2xhc3MgUGFnZUJhbm5lcjsKK2Ns
YXNzIFBsdWdpblZpZXc7CitjbGFzcyBSZW1vdGVNZWRpYVNlc3Npb25Db29yZGluYXRvcjsKK2Ns
YXNzIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQcm94eTsKK2NsYXNzIFJlbW90ZVdlYkluc3BlY3Rv
clVJOworY2xhc3MgVGV4dENoZWNraW5nQ29udHJvbGxlclByb3h5OworY2xhc3MgVXNlck1lZGlh
UGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyOworY2xhc3MgVmlld0dlc3R1cmVHZW9tZXRyeUNvbGxl
Y3RvcjsKK2NsYXNzIFdlYkNvbG9yQ2hvb3NlcjsKK2NsYXNzIFdlYkNvbnRleHRNZW51OworY2xh
c3MgV2ViQ29udGV4dE1lbnVJdGVtRGF0YTsKK2NsYXNzIFdlYkRhdGFMaXN0U3VnZ2VzdGlvblBp
Y2tlcjsKK2NsYXNzIFdlYkRhdGVUaW1lQ2hvb3NlcjsKK2NsYXNzIFdlYkRvY3VtZW50TG9hZGVy
OworY2xhc3MgV2ViRXZlbnQ7CitjbGFzcyBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyOworY2xhc3Mg
VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjsKK2NsYXNzIFdlYkZyYW1lOworY2xhc3MgV2ViRnVsbFNj
cmVlbk1hbmFnZXI7CitjbGFzcyBXZWJHZXN0dXJlRXZlbnQ7CitjbGFzcyBXZWJJbWFnZTsKK2Ns
YXNzIFdlYkluc3BlY3RvcjsKK2NsYXNzIFdlYkluc3BlY3RvckNsaWVudDsKK2NsYXNzIFdlYklu
c3BlY3RvclVJOworY2xhc3MgV2ViS2V5Ym9hcmRFdmVudDsKK2NsYXNzIFdlYk1vdXNlRXZlbnQ7
CitjbGFzcyBXZWJOb3RpZmljYXRpb25DbGllbnQ7CitjbGFzcyBXZWJPcGVuUGFuZWxSZXN1bHRM
aXN0ZW5lcjsKK2NsYXNzIFdlYlBhZ2VHcm91cFByb3h5OworY2xhc3MgV2ViUGFnZUluc3BlY3Rv
clRhcmdldENvbnRyb2xsZXI7CitjbGFzcyBXZWJQYWdlT3ZlcmxheTsKK2NsYXNzIFdlYlBheW1l
bnRDb29yZGluYXRvcjsKK2NsYXNzIFdlYlBvcHVwTWVudTsKK2NsYXNzIFdlYlJlbW90ZU9iamVj
dFJlZ2lzdHJ5OworY2xhc3MgV2ViVG91Y2hFdmVudDsKK2NsYXNzIFdlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTsKK2NsYXNzIFdlYlVuZG9TdGVwOworY2xhc3MgV2ViVXNlckNvbnRlbnRDb250cm9s
bGVyOworY2xhc3MgV2ViV2hlZWxFdmVudDsKK2NsYXNzIFJlbW90ZUxheWVyVHJlZVRyYW5zYWN0
aW9uOworCitlbnVtIGNsYXNzIEZpbmRPcHRpb25zIDogdWludDE2X3Q7CitlbnVtIGNsYXNzIERy
YWdDb250cm9sbGVyQWN0aW9uIDogdWludDhfdDsKK2VudW0gY2xhc3MgVGV4dFJlY29nbml0aW9u
VXBkYXRlUmVzdWx0IDogdWludDhfdDsKK2VudW0gY2xhc3MgU3ludGhldGljRWRpdGluZ0NvbW1h
bmRUeXBlIDogdWludDhfdDsKKworc3RydWN0IEJhY2tGb3J3YXJkTGlzdEl0ZW1TdGF0ZTsKK3N0
cnVjdCBEYXRhRGV0ZWN0aW9uUmVzdWx0Oworc3RydWN0IERvY3VtZW50RWRpdGluZ0NvbnRleHQ7
CitzdHJ1Y3QgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3Q7CitzdHJ1Y3QgRWRpdG9yU3Rh
dGU7CitzdHJ1Y3QgRnJhbWVUcmVlTm9kZURhdGE7CitzdHJ1Y3QgRm9udEluZm87CitzdHJ1Y3Qg
SW5zZXJ0VGV4dE9wdGlvbnM7CitzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRp
b247CitzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3Q7CitzdHJ1Y3QgTG9hZFBh
cmFtZXRlcnM7CitzdHJ1Y3QgUHJpbnRJbmZvOworc3RydWN0IFRleHRJbnB1dENvbnRleHQ7Citz
dHJ1Y3QgVXNlck1lc3NhZ2U7CitzdHJ1Y3QgV2ViQXV0b2NvcnJlY3Rpb25EYXRhOworc3RydWN0
IFdlYkF1dG9jb3JyZWN0aW9uQ29udGV4dDsKK3N0cnVjdCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0
ZXJzOworc3RydWN0IFdlYlByZWZlcmVuY2VzU3RvcmU7CitzdHJ1Y3QgV2Vic2l0ZVBvbGljaWVz
RGF0YTsKKworI2lmIEVOQUJMRShVSV9TSURFX0NPTVBPU0lUSU5HKQorY2xhc3MgVmlzaWJsZUNv
bnRlbnRSZWN0VXBkYXRlSW5mbzsKKyNlbmRpZgorCit1c2luZyBTbmFwc2hvdE9wdGlvbnMgPSB1
aW50MzJfdDsKK3VzaW5nIFdLRXZlbnRNb2RpZmllcnMgPSB1aW50MzJfdDsKKworY2xhc3MgV2Vi
UGFnZSA6IHB1YmxpYyBBUEk6Ok9iamVjdEltcGw8QVBJOjpPYmplY3Q6OlR5cGU6OkJ1bmRsZVBh
Z2U+LCBwdWJsaWMgSVBDOjpNZXNzYWdlUmVjZWl2ZXIsIHB1YmxpYyBJUEM6Ok1lc3NhZ2VTZW5k
ZXIgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8V2ViUGFnZT4gY3JlYXRlKFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyLCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzJiYpOworCisgICAgdmlydHVh
bCB+V2ViUGFnZSgpOworCisgICAgdm9pZCByZWluaXRpYWxpemVXZWJQYWdlKFdlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnMmJik7CisKKyAgICB2b2lkIGNsb3NlKCk7CisKKyAgICBzdGF0aWMgV2Vi
UGFnZSYgZnJvbUNvcmVQYWdlKFdlYkNvcmU6OlBhZ2UmKTsKKworICAgIFdlYkNvcmU6OlBhZ2Uq
IGNvcmVQYWdlKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlLmdldCgpOyB9CisgICAgV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsg
fQorICAgIFN0b3JhZ2VOYW1lc3BhY2VJZGVudGlmaWVyIHNlc3Npb25TdG9yYWdlTmFtZXNwYWNl
SWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1ha2VPYmplY3RJZGVudGlmaWVyPFN0b3JhZ2VO
YW1lc3BhY2VJZGVudGlmaWVyVHlwZT4obV93ZWJQYWdlUHJveHlJZGVudGlmaWVyLnRvVUludDY0
KCkpOyB9CisgICAgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3Q7CisgICAgYm9vbCB1
c2VzRXBoZW1lcmFsU2Vzc2lvbigpIGNvbnN0OworCisgICAgdm9pZCBzZXRTaXplKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmKTsKKyAgICBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKCkgY29u
c3QgeyByZXR1cm4gbV92aWV3U2l6ZTsgfQorICAgIFdlYkNvcmU6OkludFJlY3QgYm91bmRzKCkg
Y29uc3QgeyByZXR1cm4gV2ViQ29yZTo6SW50UmVjdChXZWJDb3JlOjpJbnRQb2ludCgpLCBzaXpl
KCkpOyB9CisKKyAgICBEcmF3aW5nQXJlYSogZHJhd2luZ0FyZWEoKSBjb25zdCB7IHJldHVybiBt
X2RyYXdpbmdBcmVhLmdldCgpOyB9CisKKyNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKQorICAg
IFdlYkNvcmU6OlNjcm9sbGluZ0Nvb3JkaW5hdG9yKiBzY3JvbGxpbmdDb29yZGluYXRvcigpIGNv
bnN0OworI2VuZGlmCisKKyAgICBXZWJQYWdlR3JvdXBQcm94eSogcGFnZUdyb3VwKCkgY29uc3Qg
eyByZXR1cm4gbV9wYWdlR3JvdXAuZ2V0KCk7IH0KKworICAgIHZvaWQgc2Nyb2xsTWFpbkZyYW1l
SWZOb3RBdE1heFNjcm9sbFBvc2l0aW9uKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNjcm9sbE9m
ZnNldCk7CisKKyAgICBib29sIHNjcm9sbEJ5KHVpbnQzMl90IHNjcm9sbERpcmVjdGlvbiwgdWlu
dDMyX3Qgc2Nyb2xsR3JhbnVsYXJpdHkpOworCisgICAgdm9pZCBjZW50ZXJTZWxlY3Rpb25JblZp
c2libGVBcmVhKCk7CisKKyNpZiBFTkFCTEUoVUlfUFJPQ0VTU19QREZfSFVEKQorICAgIHZvaWQg
Y3JlYXRlUERGSFVEKFBERlBsdWdpbiYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKTsKKyAgICB2
b2lkIHVwZGF0ZVBERkhVRExvY2F0aW9uKFBERlBsdWdpbiYsIGNvbnN0IFdlYkNvcmU6OkludFJl
Y3QmKTsKKyAgICB2b2lkIHJlbW92ZVBERkhVRChQREZQbHVnaW4mKTsKKyAgICB2b2lkIHpvb21Q
REZJbihQREZQbHVnaW5JZGVudGlmaWVyKTsKKyAgICB2b2lkIHpvb21QREZPdXQoUERGUGx1Z2lu
SWRlbnRpZmllcik7CisgICAgdm9pZCBzYXZlUERGKFBERlBsdWdpbklkZW50aWZpZXIsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJiwgY29uc3QgVVJMJiwgY29uc3QgSVBDOjpE
YXRhUmVmZXJlbmNlJik+JiYpOworICAgIHZvaWQgb3BlblBERldpdGhQcmV2aWV3KFBERlBsdWdp
bklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJiwgRnJhbWVJ
bmZvRGF0YSYmLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmLCBjb25zdCBTdHJpbmcmKT4mJik7
CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIHZvaWQgd2lsbENvbW1pdExheWVy
VHJlZShSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbiYpOworICAgIHZvaWQgZGlkRmx1c2hMYXll
clRyZWVBdFRpbWUoTW9ub3RvbmljVGltZSk7CisjZW5kaWYKKworICAgIHZvaWQgbGF5b3V0SWZO
ZWVkZWQoKTsKKyAgICB2b2lkIHVwZGF0ZVJlbmRlcmluZygpOworICAgIGJvb2wgc2hvdWxkVHJp
Z2dlclJlbmRlcmluZ1VwZGF0ZSh1bnNpZ25lZCByZXNjaGVkdWxlZFJlbmRlcmluZ1VwZGF0ZUNv
dW50KSBjb25zdDsKKyAgICB2b2lkIGZpbmFsaXplUmVuZGVyaW5nVXBkYXRlKE9wdGlvblNldDxX
ZWJDb3JlOjpGaW5hbGl6ZVJlbmRlcmluZ1VwZGF0ZUZsYWdzPik7CisKKyAgICB2b2lkIHJlbGVh
c2VNZW1vcnkoV1RGOjpDcml0aWNhbCk7CisKKyAgICB1bnNpZ25lZCByZW1vdGVJbWFnZXNDb3Vu
dEZvclRlc3RpbmcoKSBjb25zdDsKKworICAgIGVudW0gY2xhc3MgTGF6eUNyZWF0aW9uUG9saWN5
IHsgVXNlRXhpc3RpbmdPbmx5LCBDcmVhdGVJZk5lZWRlZCB9OworCisgICAgV2ViSW5zcGVjdG9y
KiBpbnNwZWN0b3IoTGF6eUNyZWF0aW9uUG9saWN5ID0gTGF6eUNyZWF0aW9uUG9saWN5OjpDcmVh
dGVJZk5lZWRlZCk7CisgICAgV2ViSW5zcGVjdG9yVUkqIGluc3BlY3RvclVJKCk7CisgICAgUmVt
b3RlV2ViSW5zcGVjdG9yVUkqIHJlbW90ZUluc3BlY3RvclVJKCk7CisgICAgYm9vbCBpc0luc3Bl
Y3RvclBhZ2UoKSB7IHJldHVybiAhIW1faW5zcGVjdG9yVUkgfHwgISFtX3JlbW90ZUluc3BlY3Rv
clVJOyB9CisKKyAgICB2b2lkIGluc3BlY3RvckZyb250ZW5kQ291bnRDaGFuZ2VkKHVuc2lnbmVk
KTsKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisgICAgUGxheWJhY2tTZXNzaW9uTWFuYWdlciYg
cGxheWJhY2tTZXNzaW9uTWFuYWdlcigpOworICAgIHZvaWQgdmlkZW9Db250cm9sc01hbmFnZXJE
aWRDaGFuZ2UoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KQorICAgIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXImIHZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKTsK
KyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHNldEFsbG93c01l
ZGlhRG9jdW1lbnRJbmxpbmVQbGF5YmFjayhib29sKTsKKyAgICBib29sIGFsbG93c01lZGlhRG9j
dW1lbnRJbmxpbmVQbGF5YmFjaygpIGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzTWVkaWFEb2N1bWVu
dElubGluZVBsYXliYWNrOyB9CisjZW5kaWYKKworI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkK
KyAgICBXZWJGdWxsU2NyZWVuTWFuYWdlciogZnVsbFNjcmVlbk1hbmFnZXIoKTsKKyNlbmRpZgor
CisgICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIE1l
c3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiwgdWludDY0X3QgcmVxdWVz
dElEID0gMCk7CisgICAgdm9pZCBzZW5kQ1NQVmlvbGF0aW9uUmVwb3J0KFdlYkNvcmU6OkZyYW1l
SWRlbnRpZmllciwgY29uc3QgVVJMJiByZXBvcnRVUkwsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2Um
Jik7CisgICAgdm9pZCBzZW5kQ09FUFBvbGljeUluaGVyaXRlbmNlVmlvbGF0aW9uKFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiBlbWJl
ZGRlck9yaWdpbiwgY29uc3QgU3RyaW5nJiBlbmRwb2ludCwgV2ViQ29yZTo6Q09FUERpc3Bvc2l0
aW9uLCBjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFVSTCYgYmxvY2tlZFVSTCk7CisgICAgdm9p
ZCBzZW5kQ09FUENPUlBWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIGVtYmVkZGVyT3JpZ2luLCBjb25zdCBTdHJpbmcm
IGVuZHBvaW50LCBXZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24sIFdlYkNvcmU6OkZldGNoT3B0aW9u
czo6RGVzdGluYXRpb24sIGNvbnN0IFVSTCYgYmxvY2tlZFVSTCk7CisgICAgdm9pZCBlbnF1ZXVl
U2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIFdl
YkNvcmU6OlNlY3VyaXR5UG9saWN5VmlvbGF0aW9uRXZlbnQ6OkluaXQmJik7CisKKyAgICAvLyAt
LSBDYWxsZWQgYnkgdGhlIERyYXdpbmdBcmVhLgorICAgIC8vIEZJWE1FOiBXZSBjb3VsZCBnZW5l
cmljaXplIHRoZXNlIGludG8gYSBEcmF3aW5nQXJlYSBjbGllbnQgaW50ZXJmYWNlLiBXb3VsZCB0
aGF0IGJlIGJlbmVmaWNpYWw/CisgICAgdm9pZCBkcmF3UmVjdChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHQmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CisKKyAgICAvLyAtLSBDYWxsZWQgZnJv
bSBXZWJDb3JlIGNsaWVudHMuCisgICAgYm9vbCBoYW5kbGVFZGl0aW5nS2V5Ym9hcmRFdmVudChX
ZWJDb3JlOjpLZXlib2FyZEV2ZW50Jik7CisKKyAgICB2b2lkIGRpZFN0YXJ0UGFnZVRyYW5zaXRp
b24oKTsKKyAgICB2b2lkIGRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24oKTsKKyAgICB2b2lkIGRp
ZENvbW1pdExvYWQoV2ViRnJhbWUqKTsKKyAgICB2b2lkIHdpbGxSZXBsYWNlTXVsdGlwYXJ0Q29u
dGVudChjb25zdCBXZWJGcmFtZSYpOworICAgIHZvaWQgZGlkUmVwbGFjZU11bHRpcGFydENvbnRl
bnQoY29uc3QgV2ViRnJhbWUmKTsKKyAgICB2b2lkIGRpZEZpbmlzaERvY3VtZW50TG9hZChXZWJG
cmFtZSYpOworICAgIHZvaWQgZGlkRmluaXNoTG9hZChXZWJGcmFtZSYpOworICAgIHZvaWQgc2hv
dygpOworICAgIFN0cmluZyB1c2VyQWdlbnQoY29uc3QgVVJMJikgY29uc3Q7CisgICAgU3RyaW5n
IHBsYXRmb3JtVXNlckFnZW50KGNvbnN0IFVSTCYpIGNvbnN0OworICAgIFdlYkNvcmU6OktleWJv
YXJkVUlNb2RlIGtleWJvYXJkVUlNb2RlKCk7CisKKyAgICBib29sIGhvdmVyU3VwcG9ydGVkQnlQ
cmltYXJ5UG9pbnRpbmdEZXZpY2UoKSBjb25zdDsKKyAgICBib29sIGhvdmVyU3VwcG9ydGVkQnlB
bnlBdmFpbGFibGVQb2ludGluZ0RldmljZSgpIGNvbnN0OworICAgIHN0ZDo6b3B0aW9uYWw8V2Vi
Q29yZTo6UG9pbnRlckNoYXJhY3RlcmlzdGljcz4gcG9pbnRlckNoYXJhY3RlcmlzdGljc09mUHJp
bWFyeVBvaW50aW5nRGV2aWNlKCkgY29uc3Q7CisgICAgT3B0aW9uU2V0PFdlYkNvcmU6OlBvaW50
ZXJDaGFyYWN0ZXJpc3RpY3M+IHBvaW50ZXJDaGFyYWN0ZXJpc3RpY3NPZkFsbEF2YWlsYWJsZVBv
aW50aW5nRGV2aWNlcygpIGNvbnN0OworCisgICAgdm9pZCBkaWRJbnNlcnRNZW51RWxlbWVudChX
ZWJDb3JlOjpIVE1MTWVudUVsZW1lbnQmKTsKKyAgICB2b2lkIGRpZFJlbW92ZU1lbnVFbGVtZW50
KFdlYkNvcmU6OkhUTUxNZW51RWxlbWVudCYpOworICAgIHZvaWQgZGlkSW5zZXJ0TWVudUl0ZW1F
bGVtZW50KFdlYkNvcmU6OkhUTUxNZW51SXRlbUVsZW1lbnQmKTsKKyAgICB2b2lkIGRpZFJlbW92
ZU1lbnVJdGVtRWxlbWVudChXZWJDb3JlOjpIVE1MTWVudUl0ZW1FbGVtZW50Jik7CisKKyAgICB2
b2lkIGFuaW1hdGlvbkRpZEZpbmlzaEZvckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6RWxlbWVudCYp
OworCisgICAgY29uc3QgU3RyaW5nJiBvdmVycmlkZUNvbnRlbnRTZWN1cml0eVBvbGljeSgpIGNv
bnN0IHsgcmV0dXJuIG1fb3ZlcnJpZGVDb250ZW50U2VjdXJpdHlQb2xpY3k7IH0KKworICAgIFdl
YlVuZG9TdGVwKiB3ZWJVbmRvU3RlcChXZWJVbmRvU3RlcElEKTsKKyAgICB2b2lkIGFkZFdlYlVu
ZG9TdGVwKFdlYlVuZG9TdGVwSUQsIFJlZjxXZWJVbmRvU3RlcD4mJik7CisgICAgdm9pZCByZW1v
dmVXZWJFZGl0Q29tbWFuZChXZWJVbmRvU3RlcElEKTsKKyAgICBib29sIGlzSW5SZWRvKCkgY29u
c3QgeyByZXR1cm4gbV9pc0luUmVkbzsgfQorCisgICAgdm9pZCBzZXRBY3RpdmVQb3B1cE1lbnUo
V2ViUG9wdXBNZW51Kik7CisKKyAgICB2b2lkIHNldEhpZGRlblBhZ2VET01UaW1lclRocm90dGxp
bmdJbmNyZWFzZUxpbWl0KFNlY29uZHMgbGltaXQpCisgICAgeworICAgICAgICBtX3BhZ2UtPnNl
dERPTVRpbWVyQWxpZ25tZW50SW50ZXJ2YWxJbmNyZWFzZUxpbWl0KGxpbWl0KTsKKyAgICB9CisK
KyNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKyAgICBXZWJDb2xvckNob29zZXIqIGFjdGl2
ZUNvbG9yQ2hvb3NlcigpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aXZlQ29sb3JDaG9vc2VyOyB9Cisg
ICAgdm9pZCBzZXRBY3RpdmVDb2xvckNob29zZXIoV2ViQ29sb3JDaG9vc2VyKik7CisgICAgdm9p
ZCBkaWRDaG9vc2VDb2xvcihjb25zdCBXZWJDb3JlOjpDb2xvciYpOworICAgIHZvaWQgZGlkRW5k
Q29sb3JQaWNrZXIoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEFMSVNUX0VMRU1FTlQpCisg
ICAgdm9pZCBzZXRBY3RpdmVEYXRhTGlzdFN1Z2dlc3Rpb25QaWNrZXIoV2ViRGF0YUxpc3RTdWdn
ZXN0aW9uUGlja2VyJik7CisgICAgdm9pZCBkaWRTZWxlY3REYXRhTGlzdE9wdGlvbihjb25zdCBT
dHJpbmcmKTsKKyAgICB2b2lkIGRpZENsb3NlU3VnZ2VzdGlvbnMoKTsKKyNlbmRpZgorCisjaWYg
RU5BQkxFKERBVEVfQU5EX1RJTUVfSU5QVVRfVFlQRVMpCisgICAgdm9pZCBzZXRBY3RpdmVEYXRl
VGltZUNob29zZXIoV2ViRGF0ZVRpbWVDaG9vc2VyJik7CisgICAgdm9pZCBkaWRDaG9vc2VEYXRl
KGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgZGlkRW5kRGF0ZVRpbWVQaWNrZXIoKTsKKyNlbmRp
ZgorCisgICAgV2ViT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIqIGFjdGl2ZU9wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyKCkgY29uc3QgeyByZXR1cm4gbV9hY3RpdmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5l
ci5nZXQoKTsgfQorICAgIHZvaWQgc2V0QWN0aXZlT3BlblBhbmVsUmVzdWx0TGlzdGVuZXIoUmVm
PFdlYk9wZW5QYW5lbFJlc3VsdExpc3RlbmVyPiYmKTsKKworICAgIHZvaWQgZGlkUmVjZWl2ZU1l
c3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgb3ZlcnJpZGU7CisgICAgYm9v
bCBkaWRSZWNlaXZlU3luY01lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJiwg
VW5pcXVlUmVmPElQQzo6RW5jb2Rlcj4mKSBvdmVycmlkZTsKKworICAgIC8vIC0tIEluamVjdGVk
QnVuZGxlIG1ldGhvZHMKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICB2b2lkIHNldElu
amVjdGVkQnVuZGxlQ29udGV4dE1lbnVDbGllbnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlBhZ2VDb250ZXh0TWVudUNsaWVudD4mJik7CisjZW5kaWYKKyAgICB2b2lkIHNl
dEluamVjdGVkQnVuZGxlRWRpdG9yQ2xpZW50KHN0ZDo6dW5pcXVlX3B0cjxBUEk6OkluamVjdGVk
QnVuZGxlOjpFZGl0b3JDbGllbnQ+JiYpOworICAgIHZvaWQgc2V0SW5qZWN0ZWRCdW5kbGVGb3Jt
Q2xpZW50KHN0ZDo6dW5pcXVlX3B0cjxBUEk6OkluamVjdGVkQnVuZGxlOjpGb3JtQ2xpZW50PiYm
KTsKKyAgICB2b2lkIHNldEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudChzdGQ6OnVuaXF1
ZV9wdHI8QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZUxvYWRlckNsaWVudD4mJik7CisgICAgdm9p
ZCBpbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVQb2xpY3lDbGllbnQoV0tCdW5kbGVQYWdlUG9saWN5
Q2xpZW50QmFzZSopOworICAgIHZvaWQgc2V0SW5qZWN0ZWRCdW5kbGVSZXNvdXJjZUxvYWRDbGll
bnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVu
dD4mJik7CisgICAgdm9pZCBzZXRJbmplY3RlZEJ1bmRsZVVJQ2xpZW50KHN0ZDo6dW5pcXVlX3B0
cjxBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ+JiYpOworI2lmIEVOQUJMRShGVUxM
U0NSRUVOX0FQSSkKKyAgICB2b2lkIGluaXRpYWxpemVJbmplY3RlZEJ1bmRsZUZ1bGxTY3JlZW5D
bGllbnQoV0tCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudEJhc2UqKTsKKyNlbmRpZgorCisjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZUNvbnRl
eHRNZW51Q2xpZW50JiBpbmplY3RlZEJ1bmRsZUNvbnRleHRNZW51Q2xpZW50KCkgeyByZXR1cm4g
Km1fY29udGV4dE1lbnVDbGllbnQ7IH0KKyNlbmRpZgorICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6
OkVkaXRvckNsaWVudCYgaW5qZWN0ZWRCdW5kbGVFZGl0b3JDbGllbnQoKSB7IHJldHVybiAqbV9l
ZGl0b3JDbGllbnQ7IH0KKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpGb3JtQ2xpZW50JiBpbmpl
Y3RlZEJ1bmRsZUZvcm1DbGllbnQoKSB7IHJldHVybiAqbV9mb3JtQ2xpZW50OyB9CisgICAgQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UGFnZUxvYWRlckNsaWVudCYgaW5qZWN0ZWRCdW5kbGVMb2FkZXJD
bGllbnQoKSB7IHJldHVybiAqbV9sb2FkZXJDbGllbnQ7IH0KKyAgICBJbmplY3RlZEJ1bmRsZVBh
Z2VQb2xpY3lDbGllbnQmIGluamVjdGVkQnVuZGxlUG9saWN5Q2xpZW50KCkgeyByZXR1cm4gbV9w
b2xpY3lDbGllbnQ7IH0KKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRDbGll
bnQmIGluamVjdGVkQnVuZGxlUmVzb3VyY2VMb2FkQ2xpZW50KCkgeyByZXR1cm4gKm1fcmVzb3Vy
Y2VMb2FkQ2xpZW50OyB9CisgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50JiBp
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkgeyByZXR1cm4gKm1fdWlDbGllbnQ7IH0KKyNpZiBFTkFC
TEUoRlVMTFNDUkVFTl9BUEkpCisgICAgSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVu
dCYgaW5qZWN0ZWRCdW5kbGVGdWxsU2NyZWVuQ2xpZW50KCkgeyByZXR1cm4gbV9mdWxsU2NyZWVu
Q2xpZW50OyB9CisjZW5kaWYKKworICAgIGJvb2wgZmluZFN0cmluZ0Zyb21JbmplY3RlZEJ1bmRs
ZShjb25zdCBTdHJpbmcmLCBPcHRpb25TZXQ8RmluZE9wdGlvbnM+KTsKKyAgICB2b2lkIGZpbmRT
dHJpbmdNYXRjaGVzRnJvbUluamVjdGVkQnVuZGxlKGNvbnN0IFN0cmluZyYsIE9wdGlvblNldDxG
aW5kT3B0aW9ucz4pOworICAgIHZvaWQgcmVwbGFjZVN0cmluZ01hdGNoZXNGcm9tSW5qZWN0ZWRC
dW5kbGUoY29uc3QgVmVjdG9yPHVpbnQzMl90PiYgbWF0Y2hJbmRpY2VzLCBjb25zdCBTdHJpbmcm
IHJlcGxhY2VtZW50VGV4dCwgYm9vbCBzZWxlY3Rpb25Pbmx5KTsKKworICAgIFdlYkZyYW1lJiBt
YWluV2ViRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX21haW5GcmFtZTsgfQorCisgICAgV2ViQ29y
ZTo6RnJhbWUqIG1haW5GcmFtZSgpIGNvbnN0OyAvLyBNYXkgcmV0dXJuIG51bGxwdHIuCisgICAg
V2ViQ29yZTo6RnJhbWVWaWV3KiBtYWluRnJhbWVWaWV3KCkgY29uc3Q7IC8vIE1heSByZXR1cm4g
bnVsbHB0ci4KKworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2ltcGxlUmFuZ2U+IGN1cnJl
bnRTZWxlY3Rpb25Bc1JhbmdlKCk7CisKKyNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkK
KyAgICBSZWZQdHI8UGx1Z2luPiBjcmVhdGVQbHVnaW4oV2ViRnJhbWUqLCBXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudCosIGNvbnN0IFBsdWdpbjo6UGFyYW1ldGVycyYsIFN0cmluZyYgbmV3TUlN
RVR5cGUpOworI2VuZGlmCisKKyNpZiBFTkFCTEUoV0VCR0wpCisgICAgV2ViQ29yZTo6V2ViR0xM
b2FkUG9saWN5IHdlYkdMUG9saWN5Rm9yVVJMKFdlYkZyYW1lKiwgY29uc3QgVVJMJik7CisgICAg
V2ViQ29yZTo6V2ViR0xMb2FkUG9saWN5IHJlc29sdmVXZWJHTFBvbGljeUZvclVSTChXZWJGcmFt
ZSosIGNvbnN0IFVSTCYpOworI2VuZGlmCisgICAgCisgICAgZW51bSBjbGFzcyBTaG91bGRQZXJm
b3JtTGF5b3V0IDogYm9vbCB7IERlZmF1bHQsIFllcyB9OworICAgIEVkaXRvclN0YXRlIGVkaXRv
clN0YXRlKFNob3VsZFBlcmZvcm1MYXlvdXQgPSBTaG91bGRQZXJmb3JtTGF5b3V0OjpEZWZhdWx0
KSBjb25zdDsKKyAgICB2b2lkIHVwZGF0ZUVkaXRvclN0YXRlQWZ0ZXJMYXlvdXRJZkVkaXRhYmls
aXR5Q2hhbmdlZCgpOworCisgICAgLy8gb3B0aW9ucyBhcmUgUmVuZGVyVHJlZUV4dGVybmFsUmVw
cmVzZW50YXRpb25CZWhhdmlvciB2YWx1ZXMuCisgICAgU3RyaW5nIHJlbmRlclRyZWVFeHRlcm5h
bFJlcHJlc2VudGF0aW9uKHVuc2lnbmVkIG9wdGlvbnMgPSAwKSBjb25zdDsKKyAgICBTdHJpbmcg
cmVuZGVyVHJlZUV4dGVybmFsUmVwcmVzZW50YXRpb25Gb3JQcmludGluZygpIGNvbnN0OworICAg
IHVpbnQ2NF90IHJlbmRlclRyZWVTaXplKCkgY29uc3Q7CisKKyAgICB2b2lkIHNldFRyYWNrc1Jl
cGFpbnRzKGJvb2wpOworICAgIGJvb2wgaXNUcmFja2luZ1JlcGFpbnRzKCkgY29uc3Q7CisgICAg
dm9pZCByZXNldFRyYWNrZWRSZXBhaW50cygpOworICAgIFJlZjxBUEk6OkFycmF5PiB0cmFja2Vk
UmVwYWludFJlY3RzKCk7CisKKyAgICB2b2lkIGV4ZWN1dGVFZGl0aW5nQ29tbWFuZChjb25zdCBT
dHJpbmcmIGNvbW1hbmROYW1lLCBjb25zdCBTdHJpbmcmIGFyZ3VtZW50KTsKKyAgICBib29sIGlz
RWRpdGluZ0NvbW1hbmRFbmFibGVkKGNvbnN0IFN0cmluZyYgY29tbWFuZE5hbWUpOworICAgIHZv
aWQgY2xlYXJNYWluRnJhbWVOYW1lKCk7CisgICAgdm9pZCBzZW5kQ2xvc2UoKTsKKworICAgIHZv
aWQgc3VzcGVuZEZvclByb2Nlc3NTd2FwKCk7CisKKyAgICB2b2lkIHNlbmRTZXRXaW5kb3dGcmFt
ZShjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmKTsKKworICAgIGRvdWJsZSB0ZXh0Wm9vbUZhY3Rv
cigpIGNvbnN0OworICAgIHZvaWQgc2V0VGV4dFpvb21GYWN0b3IoZG91YmxlKTsKKyAgICBkb3Vi
bGUgcGFnZVpvb21GYWN0b3IoKSBjb25zdDsKKyAgICB2b2lkIHNldFBhZ2Vab29tRmFjdG9yKGRv
dWJsZSk7CisgICAgdm9pZCBzZXRQYWdlQW5kVGV4dFpvb21GYWN0b3JzKGRvdWJsZSBwYWdlWm9v
bUZhY3RvciwgZG91YmxlIHRleHRab29tRmFjdG9yKTsKKyAgICB2b2lkIHdpbmRvd1NjcmVlbkRp
ZENoYW5nZShXZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXlJRCwgc3RkOjpvcHRpb25hbDx1bnNpZ25l
ZD4gbm9taW5hbEZyYW1lc1BlclNlY29uZCk7CisgICAgU3RyaW5nIGR1bXBIaXN0b3J5Rm9yVGVz
dGluZyhjb25zdCBTdHJpbmcmIGRpcmVjdG9yeSk7CisgICAgdm9pZCBjbGVhckhpc3RvcnkoKTsK
KworICAgIHZvaWQgYWNjZXNzaWJpbGl0eVNldHRpbmdzRGlkQ2hhbmdlKCk7CisgICAgdm9pZCBz
Y3JlZW5Qcm9wZXJ0aWVzRGlkQ2hhbmdlKCk7CisKKyAgICB2b2lkIHNjYWxlUGFnZShkb3VibGUg
c2NhbGUsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBvcmlnaW4pOworICAgIHZvaWQgc2NhbGVQ
YWdlSW5WaWV3Q29vcmRpbmF0ZXMoZG91YmxlIHNjYWxlLCBXZWJDb3JlOjpJbnRQb2ludCBjZW50
ZXJJblZpZXdDb29yZGluYXRlcyk7CisgICAgZG91YmxlIHBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0
OworICAgIGRvdWJsZSB0b3RhbFNjYWxlRmFjdG9yKCkgY29uc3Q7CisgICAgZG91YmxlIHZpZXdT
Y2FsZUZhY3RvcigpIGNvbnN0OworICAgIHZvaWQgc2NhbGVWaWV3KGRvdWJsZSBzY2FsZSk7CisK
KyAgICB2b2lkIHNldFVzZUZpeGVkTGF5b3V0KGJvb2wpOworICAgIGJvb2wgdXNlRml4ZWRMYXlv
dXQoKSBjb25zdCB7IHJldHVybiBtX3VzZUZpeGVkTGF5b3V0OyB9CisgICAgYm9vbCBzZXRGaXhl
ZExheW91dFNpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIFdlYkNvcmU6OkludFNp
emUgZml4ZWRMYXlvdXRTaXplKCkgY29uc3Q7CisKKyAgICB2b2lkIGxpc3RlbkZvckxheW91dE1p
bGVzdG9uZXMoT3B0aW9uU2V0PFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZT4pOworCisgICAgdm9p
ZCBzZXRTdXBwcmVzc1Njcm9sbGJhckFuaW1hdGlvbnMoYm9vbCk7CisgICAgCisgICAgdm9pZCBz
ZXRFbmFibGVWZXJ0aWNhbFJ1YmJlckJhbmRpbmcoYm9vbCk7CisgICAgdm9pZCBzZXRFbmFibGVI
b3Jpem9udGFsUnViYmVyQmFuZGluZyhib29sKTsKKyAgICAKKyAgICB2b2lkIHNldEJhY2tncm91
bmRFeHRlbmRzQmV5b25kUGFnZShib29sKTsKKworICAgIHZvaWQgc2V0UGFnaW5hdGlvbk1vZGUo
dWludDMyX3QgLyogV2ViQ29yZTo6UGFnaW5hdGlvbjo6TW9kZSAqLyk7CisgICAgdm9pZCBzZXRQ
YWdpbmF0aW9uQmVoYXZlc0xpa2VDb2x1bW5zKGJvb2wpOworICAgIHZvaWQgc2V0UGFnZUxlbmd0
aChkb3VibGUpOworICAgIHZvaWQgc2V0R2FwQmV0d2VlblBhZ2VzKGRvdWJsZSk7CisgICAgdm9p
ZCBzZXRQYWdpbmF0aW9uTGluZUdyaWRFbmFibGVkKGJvb2wpOworICAgIAorICAgIHZvaWQgcG9z
dEluamVjdGVkQnVuZGxlTWVzc2FnZShjb25zdCBTdHJpbmcmIG1lc3NhZ2VOYW1lLCBjb25zdCBV
c2VyRGF0YSYpOworCisgICAgdm9pZCBzZXRVbmRlclBhZ2VCYWNrZ3JvdW5kQ29sb3JPdmVycmlk
ZShXZWJDb3JlOjpDb2xvciYmKTsKKworICAgIHZvaWQgc2V0VW5kZXJsYXlDb2xvcihjb25zdCBX
ZWJDb3JlOjpDb2xvciYgY29sb3IpIHsgbV91bmRlcmxheUNvbG9yID0gY29sb3I7IH0KKyAgICBX
ZWJDb3JlOjpDb2xvciB1bmRlcmxheUNvbG9yKCkgY29uc3QgeyByZXR1cm4gbV91bmRlcmxheUNv
bG9yOyB9CisKKyAgICB2b2lkIHN0b3BMb2FkaW5nKCk7CisgICAgdm9pZCBzdG9wTG9hZGluZ0Zy
YW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcik7CisgICAgYm9vbCBkZWZlcnNMb2FkaW5nKCkg
Y29uc3Q7CisgICAgdm9pZCBzZXREZWZlcnNMb2FkaW5nKGJvb2wgZGVmZXJMb2FkaW5nKTsKKwor
ICAgIHZvaWQgZW50ZXJBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZShXZWJDb3JlOjpHcmFwaGlj
c0xheWVyKik7CisgICAgdm9pZCBleGl0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoKTsKKwor
ICAgIHZvaWQgYWRkUGx1Z2luVmlldyhQbHVnaW5WaWV3Kik7CisgICAgdm9pZCByZW1vdmVQbHVn
aW5WaWV3KFBsdWdpblZpZXcqKTsKKworICAgIGJvb2wgaXNWaXNpYmxlKCkgY29uc3QgeyByZXR1
cm4gbV9hY3Rpdml0eVN0YXRlLmNvbnRhaW5zKFdlYkNvcmU6OkFjdGl2aXR5U3RhdGU6OklzVmlz
aWJsZSk7IH0KKyAgICBib29sIGlzVmlzaWJsZU9yT2NjbHVkZWQoKSBjb25zdCB7IHJldHVybiBt
X2FjdGl2aXR5U3RhdGUuY29udGFpbnMoV2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6SXNWaXNpYmxl
T3JPY2NsdWRlZCk7IH0KKworICAgIExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5nTW9kZSgp
IGNvbnN0IHsgcmV0dXJuIG1fbGF5ZXJIb3N0aW5nTW9kZTsgfQorICAgIHZvaWQgc2V0TGF5ZXJI
b3N0aW5nTW9kZShMYXllckhvc3RpbmdNb2RlKTsKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAg
IHZvaWQgdXBkYXRlUGx1Z2luc0FjdGl2ZUFuZEZvY3VzZWRTdGF0ZSgpOworICAgIGNvbnN0IFdl
YkNvcmU6OkZsb2F0UmVjdCYgd2luZG93RnJhbWVJblNjcmVlbkNvb3JkaW5hdGVzKCkgY29uc3Qg
eyByZXR1cm4gbV93aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRpbmF0ZXM7IH0KKyAgICBjb25zdCBX
ZWJDb3JlOjpGbG9hdFJlY3QmIHdpbmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRl
cygpIGNvbnN0IHsgcmV0dXJuIG1fd2luZG93RnJhbWVJblVuZmxpcHBlZFNjcmVlbkNvb3JkaW5h
dGVzOyB9CisgICAgY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiB2aWV3RnJhbWVJbldpbmRvd0Nv
b3JkaW5hdGVzKCkgY29uc3QgeyByZXR1cm4gbV92aWV3RnJhbWVJbldpbmRvd0Nvb3JkaW5hdGVz
OyB9CisKKyAgICBib29sIGhhc0NhY2hlZFdpbmRvd0ZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9o
YXNDYWNoZWRXaW5kb3dGcmFtZTsgfQorCisgICAgdm9pZCB1cGRhdGVIZWFkZXJBbmRGb290ZXJM
YXllcnNGb3JEZXZpY2VTY2FsZUNoYW5nZShmbG9hdCBzY2FsZUZhY3Rvcik7CisjZW5kaWYKKwor
ICAgIHZvaWQgZGlkVXBkYXRlUmVuZGVyaW5nKCk7CisKKyNpZiBQTEFURk9STShNQUMpCisgICAg
dm9pZCBzZXRUb3BPdmVyaGFuZ0ltYWdlKFdlYkltYWdlKik7CisgICAgdm9pZCBzZXRCb3R0b21P
dmVyaGFuZ0ltYWdlKFdlYkltYWdlKik7CisKKyAgICB2b2lkIHNldFVzZVN5c3RlbUFwcGVhcmFu
Y2UoYm9vbCk7CisKKyAgICB2b2lkIGRpZEVuZE1hZ25pZmljYXRpb25HZXN0dXJlKCk7CisjZW5k
aWYKKworICAgIHZvaWQgZWZmZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZShib29sIHVzZURhcmtB
cHBlYXJhbmNlLCBib29sIHVzZUVsZXZhdGVkVXNlckludGVyZmFjZUxldmVsKTsKKworICAgIGJv
b2wgd2luZG93SXNGb2N1c2VkKCkgY29uc3Q7CisgICAgYm9vbCB3aW5kb3dBbmRXZWJQYWdlQXJl
Rm9jdXNlZCgpIGNvbnN0OworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgdm9pZCBz
ZXRIZWFkZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsKKyAgICBQYWdlQmFubmVyKiBoZWFkZXJQ
YWdlQmFubmVyKCk7CisgICAgdm9pZCBzZXRGb290ZXJQYWdlQmFubmVyKFBhZ2VCYW5uZXIqKTsK
KyAgICBQYWdlQmFubmVyKiBmb290ZXJQYWdlQmFubmVyKCk7CisKKyAgICB2b2lkIGhpZGVQYWdl
QmFubmVycygpOworICAgIHZvaWQgc2hvd1BhZ2VCYW5uZXJzKCk7CisgICAgCisgICAgdm9pZCBz
ZXRIZWFkZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7CisgICAgdm9pZCBzZXRGb290ZXJC
YW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCk7CisjZW5kaWYKKworICAgIFdlYkNvcmU6OkludFBv
aW50IHNjcmVlblRvUm9vdFZpZXcoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKKyAgICBXZWJD
b3JlOjpJbnRSZWN0IHJvb3RWaWV3VG9TY3JlZW4oY29uc3QgV2ViQ29yZTo6SW50UmVjdCYpOwor
ICAgIFdlYkNvcmU6OkludFBvaW50IGFjY2Vzc2liaWxpdHlTY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50Jik7CisgICAgV2ViQ29yZTo6SW50UmVjdCByb290Vmlld1RvQWNj
ZXNzaWJpbGl0eVNjcmVlbihjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CisgICAgCisgICAgUmVm
UHRyPFdlYkltYWdlPiBzY2FsZWRTbmFwc2hvdFdpdGhPcHRpb25zKGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmLCBkb3VibGUgYWRkaXRpb25hbFNjYWxlRmFjdG9yLCBTbmFwc2hvdE9wdGlvbnMpOwor
CisgICAgc3RhdGljIGNvbnN0IFdlYkV2ZW50KiBjdXJyZW50RXZlbnQoKTsKKworICAgIEZpbmRD
b250cm9sbGVyJiBmaW5kQ29udHJvbGxlcigpIHsgcmV0dXJuIG1fZmluZENvbnRyb2xsZXIuZ2V0
KCk7IH0KKworI2lmIEVOQUJMRShHRU9MT0NBVElPTikKKyAgICBHZW9sb2NhdGlvblBlcm1pc3Np
b25SZXF1ZXN0TWFuYWdlciYgZ2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIoKSB7
IHJldHVybiBtX2dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmdldCgpOyB9Cisj
ZW5kaWYKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgdm9pZCBzYXZlUGFnZVN0YXRl
KFdlYkNvcmU6Okhpc3RvcnlJdGVtJik7CisgICAgdm9pZCByZXN0b3JlUGFnZVN0YXRlKGNvbnN0
IFdlYkNvcmU6Okhpc3RvcnlJdGVtJik7CisjZW5kaWYKKworI2lmIEVOQUJMRShNRURJQV9TVFJF
QU0pCisgICAgVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyJiB1c2VyTWVkaWFQZXJt
aXNzaW9uUmVxdWVzdE1hbmFnZXIoKSB7IHJldHVybiBtX3VzZXJNZWRpYVBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlcjsgfQorICAgIHZvaWQgY2FwdHVyZURldmljZXNDaGFuZ2VkKCk7CisjZW5kaWYK
KworI2lmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCisgICAgTWVkaWFLZXlTeXN0ZW1QZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXImIG1lZGlhS2V5U3lzdGVtUGVybWlzc2lvblJlcXVlc3RNYW5hZ2Vy
KCkgeyByZXR1cm4gbV9tZWRpYUtleVN5c3RlbVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcjsgfQor
I2VuZGlmCisKKyAgICB2b2lkIGVsZW1lbnREaWRGb2N1cyhXZWJDb3JlOjpFbGVtZW50Jik7Cisg
ICAgdm9pZCBlbGVtZW50RGlkUmVmb2N1cyhXZWJDb3JlOjpFbGVtZW50Jik7CisgICAgdm9pZCBl
bGVtZW50RGlkQmx1cihXZWJDb3JlOjpFbGVtZW50Jik7CisgICAgdm9pZCBmb2N1c2VkRWxlbWVu
dERpZENoYW5nZUlucHV0TW9kZShXZWJDb3JlOjpFbGVtZW50JiwgV2ViQ29yZTo6SW5wdXRNb2Rl
KTsKKyAgICB2b2lkIHJlc2V0Rm9jdXNlZEVsZW1lbnRGb3JGcmFtZShXZWJGcmFtZSopOworICAg
IHZvaWQgdXBkYXRlSW5wdXRDb250ZXh0QWZ0ZXJCbHVycmluZ0FuZFJlZm9jdXNpbmdFbGVtZW50
SWZOZWVkZWQoV2ViQ29yZTo6RWxlbWVudCYpOworCisgICAgdm9pZCBkaXNhYmxlZEFkYXB0YXRp
b25zRGlkQ2hhbmdlKGNvbnN0IE9wdGlvblNldDxXZWJDb3JlOjpEaXNhYmxlZEFkYXB0YXRpb25z
PiYpOworICAgIHZvaWQgdmlld3BvcnRQcm9wZXJ0aWVzRGlkQ2hhbmdlKGNvbnN0IFdlYkNvcmU6
OlZpZXdwb3J0QXJndW1lbnRzJik7CisgICAgdm9pZCBleGVjdXRlRWRpdENvbW1hbmRXaXRoQ2Fs
bGJhY2soY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBhcmd1bWVudCwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHNlbGVjdEFsbCgpOworCisgICAgdm9pZCBzZXRD
YW5TaG93UGxhY2Vob2xkZXIoY29uc3QgV2ViQ29yZTo6RWxlbWVudENvbnRleHQmLCBib29sKTsK
KworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgdm9pZCB0ZXh0SW5wdXRDb250ZXh0c0lu
UmVjdChXZWJDb3JlOjpGbG9hdFJlY3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVj
dG9yPFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0PiYpPiYmKTsKKyAgICB2b2lkIGZvY3VzVGV4dElu
cHV0Q29udGV4dEFuZFBsYWNlQ2FyZXQoY29uc3QgV2ViQ29yZTo6RWxlbWVudENvbnRleHQmLCBj
b25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OworCisgICAgYm9vbCBzaG91bGRSZXZlYWxDdXJyZW50U2VsZWN0aW9uQWZ0ZXJJbnNlcnRpb24o
KSBjb25zdCB7IHJldHVybiBtX3Nob3VsZFJldmVhbEN1cnJlbnRTZWxlY3Rpb25BZnRlckluc2Vy
dGlvbjsgfQorICAgIHZvaWQgc2V0U2hvdWxkUmV2ZWFsQ3VycmVudFNlbGVjdGlvbkFmdGVySW5z
ZXJ0aW9uKGJvb2wpOworCisgICAgdm9pZCBpbnNlcnRUZXh0UGxhY2Vob2xkZXIoY29uc3QgV2Vi
Q29yZTo6SW50U2l6ZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qgc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpFbGVtZW50Q29udGV4dD4mKT4mJik7CisgICAgdm9pZCByZW1vdmVUZXh0UGxh
Y2Vob2xkZXIoY29uc3QgV2ViQ29yZTo6RWxlbWVudENvbnRleHQmLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYpOworCisgICAgV2ViQ29yZTo6RmxvYXRTaXplIHNjcmVlblNpemUoKSBjb25z
dDsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgYXZhaWxhYmxlU2NyZWVuU2l6ZSgpIGNvbnN0Owor
ICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSBvdmVycmlkZVNjcmVlblNpemUoKSBjb25zdDsKKyAgICBp
bnQzMl90IGRldmljZU9yaWVudGF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kZXZpY2VPcmllbnRh
dGlvbjsgfQorICAgIHZvaWQgZGlkUmVjZWl2ZU1vYmlsZURvY1R5cGUoYm9vbCk7CisgICAgCisg
ICAgYm9vbCBzY3JlZW5Jc0JlaW5nQ2FwdHVyZWQoKSBjb25zdCB7IHJldHVybiBtX3NjcmVlbklz
QmVpbmdDYXB0dXJlZDsgfQorICAgIHZvaWQgc2V0U2NyZWVuSXNCZWluZ0NhcHR1cmVkKGJvb2wp
OworCisgICAgZG91YmxlIG1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSBjb25zdDsKKyAgICBkb3Vi
bGUgbWF4aW11bVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0OworICAgIGRvdWJsZSBtYXhpbXVtUGFn
ZVNjYWxlRmFjdG9ySWdub3JpbmdBbHdheXNTY2FsYWJsZSgpIGNvbnN0OworICAgIGJvb2wgYWxs
b3dzVXNlclNjYWxpbmcoKSBjb25zdDsKKyAgICBib29sIGhhc1N0YWJsZVBhZ2VTY2FsZUZhY3Rv
cigpIGNvbnN0IHsgcmV0dXJuIG1faGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yOyB9CisKKyAgICB2
b2lkIGF0dGVtcHRTeW50aGV0aWNDbGljayhjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIE9wdGlv
blNldDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcj4sIFRyYW5zYWN0aW9uSUQgbGFzdExheWVy
VHJlZVRyYW5zYWN0aW9uSWQpOworICAgIHZvaWQgcG90ZW50aWFsVGFwQXRQb3NpdGlvbihXZWJL
aXQ6OlRhcElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmLCBib29sIHNob3Vs
ZFJlcXVlc3RNYWduaWZpY2F0aW9uSW5mb3JtYXRpb24pOworICAgIHZvaWQgY29tbWl0UG90ZW50
aWFsVGFwKE9wdGlvblNldDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcj4sIFRyYW5zYWN0aW9u
SUQgbGFzdExheWVyVHJlZVRyYW5zYWN0aW9uSWQsIFdlYkNvcmU6OlBvaW50ZXJJRCk7CisgICAg
dm9pZCBjb21taXRQb3RlbnRpYWxUYXBGYWlsZWQoKTsKKyAgICB2b2lkIGNhbmNlbFBvdGVudGlh
bFRhcCgpOworICAgIHZvaWQgY2FuY2VsUG90ZW50aWFsVGFwSW5GcmFtZShXZWJGcmFtZSYpOwor
ICAgIHZvaWQgdGFwSGlnaGxpZ2h0QXRQb3NpdGlvbihXZWJLaXQ6OlRhcElkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmKTsKKyAgICB2b2lkIGRpZFJlY29nbml6ZUxvbmdQcmVz
cygpOworICAgIHZvaWQgaGFuZGxlRG91YmxlVGFwRm9yRG91YmxlQ2xpY2tBdFBvaW50KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JiwgT3B0aW9uU2V0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlmaWVy
PiwgVHJhbnNhY3Rpb25JRCBsYXN0TGF5ZXJUcmVlVHJhbnNhY3Rpb25JZCk7CisKKyAgICB2b2lk
IGluc3BlY3Rvck5vZGVTZWFyY2hNb3ZlZFRvUG9zaXRpb24oY29uc3QgV2ViQ29yZTo6RmxvYXRQ
b2ludCYpOworICAgIHZvaWQgaW5zcGVjdG9yTm9kZVNlYXJjaEVuZGVkQXRQb3NpdGlvbihjb25z
dCBXZWJDb3JlOjpGbG9hdFBvaW50Jik7CisKKyAgICB2b2lkIGJsdXJGb2N1c2VkRWxlbWVudCgp
OworICAgIHZvaWQgcmVxdWVzdEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24oQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChjb25zdCBzdGQ6Om9wdGlvbmFsPEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24+
Jik+JiYpOworICAgIHZvaWQgc2VsZWN0V2l0aEdlc3R1cmUoY29uc3QgV2ViQ29yZTo6SW50UG9p
bnQmLCBHZXN0dXJlVHlwZSwgR2VzdHVyZVJlY29nbml6ZXJTdGF0ZSwgYm9vbCBpc0ludGVyYWN0
aW5nV2l0aEZvY3VzZWRFbGVtZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNv
cmU6OkludFBvaW50JiwgR2VzdHVyZVR5cGUsIEdlc3R1cmVSZWNvZ25pemVyU3RhdGUsIE9wdGlv
blNldDxTZWxlY3Rpb25GbGFncz4pPiYmKTsKKyAgICB2b2lkIHVwZGF0ZVNlbGVjdGlvbldpdGhU
b3VjaGVzKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgU2VsZWN0aW9uVG91Y2gsIGJvb2wgYmFz
ZUlzU3RhcnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
LCBTZWxlY3Rpb25Ub3VjaCwgT3B0aW9uU2V0PFNlbGVjdGlvbkZsYWdzPik+JiYpOworICAgIHZv
aWQgc2VsZWN0V2l0aFR3b1RvdWNoZXMoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGZyb20sIGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JiB0bywgR2VzdHVyZVR5cGUsIEdlc3R1cmVSZWNvZ25pemVy
U3RhdGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBH
ZXN0dXJlVHlwZSwgR2VzdHVyZVJlY29nbml6ZXJTdGF0ZSwgT3B0aW9uU2V0PFNlbGVjdGlvbkZs
YWdzPik+JiYpOworICAgIHZvaWQgZXh0ZW5kU2VsZWN0aW9uKFdlYkNvcmU6OlRleHRHcmFudWxh
cml0eSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHNlbGVjdFdvcmRC
YWNrd2FyZCgpOworICAgIHZvaWQgbW92ZVNlbGVjdGlvbkJ5T2Zmc2V0KGludDMyX3Qgb2Zmc2V0
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgc2VsZWN0VGV4dFdpdGhH
cmFudWxhcml0eUF0UG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBXZWJDb3JlOjpUZXh0
R3JhbnVsYXJpdHksIGJvb2wgaXNJbnRlcmFjdGluZ1dpdGhGb2N1c2VkRWxlbWVudCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHNlbGVjdFBvc2l0aW9uQXRCb3VuZGFy
eVdpdGhEaXJlY3Rpb24oY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBXZWJDb3JlOjpUZXh0R3Jh
bnVsYXJpdHksIFdlYkNvcmU6OlNlbGVjdGlvbkRpcmVjdGlvbiwgYm9vbCBpc0ludGVyYWN0aW5n
V2l0aEZvY3VzZWRFbGVtZW50LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZv
aWQgbW92ZVNlbGVjdGlvbkF0Qm91bmRhcnlXaXRoRGlyZWN0aW9uKFdlYkNvcmU6OlRleHRHcmFu
dWxhcml0eSwgV2ViQ29yZTo6U2VsZWN0aW9uRGlyZWN0aW9uLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYpOworICAgIHZvaWQgc2VsZWN0UG9zaXRpb25BdFBvaW50KGNvbnN0IFdlYkNvcmU6
OkludFBvaW50JiwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgYmVnaW5TZWxlY3Rpb25JbkRpcmVjdGlv
bihXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgdXBkYXRlU2VsZWN0aW9uV2l0aEV4dGVudFBvaW50KGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50LCBS
ZXNwZWN0U2VsZWN0aW9uQW5jaG9yLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsK
KyAgICB2b2lkIHVwZGF0ZVNlbGVjdGlvbldpdGhFeHRlbnRQb2ludEFuZEJvdW5kYXJ5KGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JiwgV2ViQ29yZTo6VGV4dEdyYW51bGFyaXR5LCBib29sIGlzSW50
ZXJhY3RpbmdXaXRoRm9jdXNlZEVsZW1lbnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYpOworCisgICAgdm9pZCByZXF1ZXN0RGljdGF0aW9uQ29udGV4dChDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYpPiYmKTsK
KyAgICB2b2lkIHJlcGxhY2VEaWN0YXRlZFRleHQoY29uc3QgU3RyaW5nJiBvbGRUZXh0LCBjb25z
dCBTdHJpbmcmIG5ld1RleHQpOworICAgIHZvaWQgcmVwbGFjZVNlbGVjdGVkVGV4dChjb25zdCBT
dHJpbmcmIG9sZFRleHQsIGNvbnN0IFN0cmluZyYgbmV3VGV4dCk7CisgICAgdm9pZCByZXF1ZXN0
QXV0b2NvcnJlY3Rpb25EYXRhKGNvbnN0IFN0cmluZyYgdGV4dEZvckF1dG9jb3JyZWN0aW9uLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkF1dG9jb3JyZWN0aW9uRGF0YSk+JiYgcmVwbHkpOwor
ICAgIHZvaWQgYXBwbHlBdXRvY29ycmVjdGlvbihjb25zdCBTdHJpbmcmIGNvcnJlY3Rpb24sIGNv
bnN0IFN0cmluZyYgb3JpZ2luYWxUZXh0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFN0
cmluZyYpPiYmKTsKKyAgICB2b2lkIHN5bmNBcHBseUF1dG9jb3JyZWN0aW9uKGNvbnN0IFN0cmlu
ZyYgY29ycmVjdGlvbiwgY29uc3QgU3RyaW5nJiBvcmlnaW5hbFRleHQsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgcmVxdWVzdEF1dG9jb3JyZWN0aW9uQ29udGV4
dCgpOworICAgIHZvaWQgZ2V0UG9zaXRpb25JbmZvcm1hdGlvbihjb25zdCBJbnRlcmFjdGlvbklu
Zm9ybWF0aW9uUmVxdWVzdCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSW50ZXJhY3Rpb25JbmZv
cm1hdGlvbkF0UG9zaXRpb24mJik+JiYpOworICAgIHZvaWQgcmVxdWVzdFBvc2l0aW9uSW5mb3Jt
YXRpb24oY29uc3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QmKTsKKyAgICB2b2lkIHN0
YXJ0SW50ZXJhY3Rpb25XaXRoRWxlbWVudENvbnRleHRPclBvc2l0aW9uKHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6RWxlbWVudENvbnRleHQ+JiYsIFdlYkNvcmU6OkludFBvaW50JiYpOworICAgIHZv
aWQgc3RvcEludGVyYWN0aW9uKCk7CisgICAgdm9pZCBwZXJmb3JtQWN0aW9uT25FbGVtZW50KHVp
bnQzMl90IGFjdGlvbik7CisgICAgdm9pZCBmb2N1c05leHRGb2N1c2VkRWxlbWVudChib29sIGlz
Rm9yd2FyZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIGF1dG9maWxs
TG9naW5DcmVkZW50aWFscyhjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lk
IHNldEZvY3VzZWRFbGVtZW50VmFsdWUoY29uc3QgV2ViQ29yZTo6RWxlbWVudENvbnRleHQmLCBj
b25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNldEZvY3VzZWRFbGVtZW50U2VsZWN0ZWRJbmRleChj
b25zdCBXZWJDb3JlOjpFbGVtZW50Q29udGV4dCYsIHVpbnQzMl90IGluZGV4LCBib29sIGFsbG93
TXVsdGlwbGVTZWxlY3Rpb24pOworICAgIHZvaWQgc2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9j
dXNlZEVsZW1lbnQoYm9vbCk7CisgICAgYm9vbCBpc1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2Vk
RWxlbWVudCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVs
ZW1lbnQ7IH0KKyAgICB2b2lkIHVwZGF0ZVNlbGVjdGlvbkFwcGVhcmFuY2UoKTsKKyAgICB2b2lk
IGdldFNlbGVjdGlvbkNvbnRleHQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBTdHJpbmcm
LCBjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKT4mJik7CisgICAgdm9pZCBoYW5kbGVUd29G
aW5nZXJUYXBBdFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgT3B0aW9uU2V0PFdlYktp
dDo6V2ViRXZlbnQ6Ok1vZGlmaWVyPiwgV2ViS2l0OjpUYXBJZGVudGlmaWVyKTsKKyAgICB2b2lk
IGdldFJlY3RzRm9yR3JhbnVsYXJpdHlXaXRoU2VsZWN0aW9uT2Zmc2V0KFdlYkNvcmU6OlRleHRH
cmFudWxhcml0eSwgaW50MzJfdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6U2VsZWN0aW9uR2VvbWV0cnk+Jik+JiYpOworICAgIHZvaWQgZ2V0UmVjdHNBdFNl
bGVjdGlvbk9mZnNldFdpdGhUZXh0KGludDMyX3QsIGNvbnN0IFN0cmluZyYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlNlbGVjdGlvbkdlb21ldHJ5PiYpPiYm
KTsKKyAgICB2b2lkIHN0b3JlU2VsZWN0aW9uRm9yQWNjZXNzaWJpbGl0eShib29sKTsKKyAgICB2
b2lkIHN0YXJ0QXV0b3Njcm9sbEF0UG9zaXRpb24oY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYp
OworICAgIHZvaWQgY2FuY2VsQXV0b3Njcm9sbCgpOworICAgIHZvaWQgcmVxdWVzdEV2YXNpb25S
ZWN0c0Fib3ZlU2VsZWN0aW9uKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdl
YkNvcmU6OkZsb2F0UmVjdD4mKT4mJik7CisKKyAgICB2b2lkIGNvbnRlbnRTaXplQ2F0ZWdvcnlE
aWRDaGFuZ2UoY29uc3QgU3RyaW5nJik7CisKKyAgICBTZWNvbmRzIGV2ZW50VGhyb3R0bGluZ0Rl
bGF5KCkgY29uc3Q7CisKKyAgICB2b2lkIHNob3dJbnNwZWN0b3JIaWdobGlnaHQoY29uc3QgV2Vi
Q29yZTo6SW5zcGVjdG9yT3ZlcmxheTo6SGlnaGxpZ2h0Jik7CisgICAgdm9pZCBoaWRlSW5zcGVj
dG9ySGlnaGxpZ2h0KCk7CisKKyAgICB2b2lkIHNob3dJbnNwZWN0b3JJbmRpY2F0aW9uKCk7Cisg
ICAgdm9pZCBoaWRlSW5zcGVjdG9ySW5kaWNhdGlvbigpOworCisgICAgdm9pZCBlbmFibGVJbnNw
ZWN0b3JOb2RlU2VhcmNoKCk7CisgICAgdm9pZCBkaXNhYmxlSW5zcGVjdG9yTm9kZVNlYXJjaCgp
OworCisgICAgYm9vbCBmb3JjZUFsd2F5c1VzZXJTY2FsYWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Zm9yY2VBbHdheXNVc2VyU2NhbGFibGU7IH0KKyAgICB2b2lkIHNldEZvcmNlQWx3YXlzVXNlclNj
YWxhYmxlKGJvb2wpOworCisgICAgdm9pZCB1cGRhdGVTZWxlY3Rpb25XaXRoRGVsdGEoaW50NjRf
dCBsb2NhdGlvbkRlbHRhLCBpbnQ2NF90IGxlbmd0aERlbHRhLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKCk+JiYpOworICAgIHZvaWQgcmVxdWVzdERvY3VtZW50RWRpdGluZ0NvbnRleHQoV2ViS2l0
OjpEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJLaXQ6OkRvY3VtZW50RWRpdGluZ0NvbnRleHQpPiYmKTsKKyNlbmRpZgorCisgICAgdm9pZCB3
aWxsQ2hhbmdlU2VsZWN0aW9uRm9yQWNjZXNzaWJpbGl0eSgpIHsgbV9pc0NoYW5naW5nU2VsZWN0
aW9uRm9yQWNjZXNzaWJpbGl0eSA9IHRydWU7IH0KKyAgICB2b2lkIGRpZENoYW5nZVNlbGVjdGlv
bkZvckFjY2Vzc2liaWxpdHkoKSB7IG1faXNDaGFuZ2luZ1NlbGVjdGlvbkZvckFjY2Vzc2liaWxp
dHkgPSBmYWxzZTsgfQorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKElPU19U
T1VDSF9FVkVOVFMpCisgICAgdm9pZCBkaXNwYXRjaEFzeW5jaHJvbm91c1RvdWNoRXZlbnRzKFZl
Y3RvcjxzdGQ6OnBhaXI8V2ViVG91Y2hFdmVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
KT4+LCAxPiYmKTsKKyAgICB2b2lkIGNhbmNlbEFzeW5jaHJvbm91c1RvdWNoRXZlbnRzKFZlY3Rv
cjxzdGQ6OnBhaXI8V2ViVG91Y2hFdmVudCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4+
LCAxPiYmKTsKKyNlbmRpZgorCisgICAgYm9vbCBoYXNSaWNobHlFZGl0YWJsZVNlbGVjdGlvbigp
IGNvbnN0OworCisgICAgZW51bSBjbGFzcyBMYXllclRyZWVGcmVlemVSZWFzb24geworICAgICAg
ICBQYWdlVHJhbnNpdGlvbiAgICAgICAgICA9IDEgPDwgMCwKKyAgICAgICAgQmFja2dyb3VuZEFw
cGxpY2F0aW9uICAgPSAxIDw8IDEsCisgICAgICAgIFByb2Nlc3NTdXNwZW5kZWQgICAgICAgID0g
MSA8PCAyLAorICAgICAgICBQYWdlU3VzcGVuZGVkICAgICAgICAgICA9IDEgPDwgMywKKyAgICAg
ICAgUHJpbnRpbmcgICAgICAgICAgICAgICAgPSAxIDw8IDQsCisgICAgICAgIFByb2Nlc3NTd2Fw
ICAgICAgICAgICAgID0gMSA8PCA1LAorICAgICAgICBTd2lwZUFuaW1hdGlvbiAgICAgICAgICA9
IDEgPDwgNiwKKyAgICB9OworICAgIHZvaWQgZnJlZXplTGF5ZXJUcmVlKExheWVyVHJlZUZyZWV6
ZVJlYXNvbik7CisgICAgdm9pZCB1bmZyZWV6ZUxheWVyVHJlZShMYXllclRyZWVGcmVlemVSZWFz
b24pOworCisgICAgdm9pZCBtYXJrTGF5ZXJzVm9sYXRpbGUoQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlciA9IHsgfSk7CisgICAgdm9pZCBjYW5jZWxNYXJr
TGF5ZXJzVm9sYXRpbGUoKTsKKworICAgIHZvaWQgZnJlZXplTGF5ZXJUcmVlRHVlVG9Td2lwZUFu
aW1hdGlvbigpOworICAgIHZvaWQgdW5mcmVlemVMYXllclRyZWVEdWVUb1N3aXBlQW5pbWF0aW9u
KCk7CisKKyAgICBOb3RpZmljYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIqIG5vdGlmaWNh
dGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcigpOworCisgICAgdm9pZCBwYWdlRGlkU2Nyb2xs
KCk7CisKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICBXZWJDb250ZXh0TWVudSYgY29u
dGV4dE1lbnUoKTsKKyAgICBXZWJDb250ZXh0TWVudSogY29udGV4dE1lbnVBdFBvaW50SW5XaW5k
b3coY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKKyNlbmRpZgorCisgICAgYm9vbCBoYXNMb2Nh
bERhdGFGb3JVUkwoY29uc3QgVVJMJik7CisKKyAgICBzdGF0aWMgYm9vbCBjYW5IYW5kbGVSZXF1
ZXN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworCisgICAgY2xhc3MgU2FuZGJv
eEV4dGVuc2lvblRyYWNrZXIgeworICAgIHB1YmxpYzoKKyAgICAgICAgflNhbmRib3hFeHRlbnNp
b25UcmFja2VyKCk7CisKKyAgICAgICAgdm9pZCBpbnZhbGlkYXRlKCk7CisKKyAgICAgICAgdm9p
ZCBiZWdpbkxvYWQoV2ViRnJhbWUqLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJik7CisgICAg
ICAgIHZvaWQgYmVnaW5SZWxvYWQoV2ViRnJhbWUqLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUm
Jik7CisgICAgICAgIHZvaWQgd2lsbFBlcmZvcm1Mb2FkRHJhZ0Rlc3RpbmF0aW9uQWN0aW9uKFJl
ZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiYmIHBlbmRpbmdEcm9wU2FuZGJveEV4dGVuc2lvbik7Cisg
ICAgICAgIHZvaWQgZGlkU3RhcnRQcm92aXNpb25hbExvYWQoV2ViRnJhbWUqKTsKKyAgICAgICAg
dm9pZCBkaWRDb21taXRQcm92aXNpb25hbExvYWQoV2ViRnJhbWUqKTsKKyAgICAgICAgdm9pZCBk
aWRGYWlsUHJvdmlzaW9uYWxMb2FkKFdlYkZyYW1lKik7CisKKyAgICBwcml2YXRlOgorICAgICAg
ICB2b2lkIHNldFBlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNpb24oUmVmUHRyPFNhbmRi
b3hFeHRlbnNpb24+JiYpOworICAgICAgICBib29sIHNob3VsZFJldXNlQ29tbWl0dGVkU2FuZGJv
eEV4dGVuc2lvbihXZWJGcmFtZSopOworCisgICAgICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9u
PiBtX3BlbmRpbmdQcm92aXNpb25hbFNhbmRib3hFeHRlbnNpb247CisgICAgICAgIFJlZlB0cjxT
YW5kYm94RXh0ZW5zaW9uPiBtX3Byb3Zpc2lvbmFsU2FuZGJveEV4dGVuc2lvbjsKKyAgICAgICAg
UmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fY29tbWl0dGVkU2FuZGJveEV4dGVuc2lvbjsKKyAg
ICB9OworCisgICAgU2FuZGJveEV4dGVuc2lvblRyYWNrZXImIHNhbmRib3hFeHRlbnNpb25UcmFj
a2VyKCkgeyByZXR1cm4gbV9zYW5kYm94RXh0ZW5zaW9uVHJhY2tlcjsgfQorCisjaWYgUExBVEZP
Uk0oR1RLKSB8fCBQTEFURk9STShXUEUpCisgICAgdm9pZCBjYW5jZWxDb21wb3NpdGlvbihjb25z
dCBTdHJpbmcmIHRleHQpOworICAgIHZvaWQgZGVsZXRlU3Vycm91bmRpbmcoaW50NjRfdCBvZmZz
ZXQsIHVuc2lnbmVkIGNoYXJhY3RlckNvdW50KTsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oR1RL
KQorICAgIHZvaWQgY29sbGFwc2VTZWxlY3Rpb25JbkZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRp
Zmllcik7CisgICAgdm9pZCBzaG93RW1vamlQaWNrZXIoV2ViQ29yZTo6RnJhbWUmKTsKKyNlbmRp
ZgorCisgICAgdm9pZCBkaWRBcHBseVN0eWxlKCk7CisgICAgdm9pZCBkaWRDaGFuZ2VTZWxlY3Rp
b24oKTsKKyAgICB2b2lkIGRpZENoYW5nZU92ZXJmbG93U2Nyb2xsUG9zaXRpb24oKTsKKyAgICB2
b2lkIGRpZENoYW5nZUNvbnRlbnRzKCk7CisgICAgdm9pZCBkaXNjYXJkZWRDb21wb3NpdGlvbigp
OworICAgIHZvaWQgY2FuY2VsZWRDb21wb3NpdGlvbigpOworICAgIHZvaWQgZGlkVXBkYXRlQ29t
cG9zaXRpb24oKTsKKyAgICB2b2lkIGRpZEVuZFVzZXJUcmlnZ2VyZWRTZWxlY3Rpb25DaGFuZ2Vz
KCk7CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIHJlZ2lzdGVyVUlQcm9jZXNzQWNj
ZXNzaWJpbGl0eVRva2Vucyhjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGVsZW1lblRva2VuLCBj
b25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIHdpbmRvd1Rva2VuKTsKKyAgICBXS0FjY2Vzc2liaWxp
dHlXZWJQYWdlT2JqZWN0KiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCk7CisgICAgTlNPYmpl
Y3QgKmFjY2Vzc2liaWxpdHlPYmplY3RGb3JNYWluRnJhbWVQbHVnaW4oKTsKKyAgICBjb25zdCBX
ZWJDb3JlOjpGbG9hdFBvaW50JiBhY2Nlc3NpYmlsaXR5UG9zaXRpb24oKSBjb25zdCB7IHJldHVy
biBtX2FjY2Vzc2liaWxpdHlQb3NpdGlvbjsgfQorICAgIAorICAgIHZvaWQgc2VuZENvbXBsZXhU
ZXh0SW5wdXRUb1BsdWdpbih1aW50NjRfdCBwbHVnaW5Db21wbGV4VGV4dElucHV0SWRlbnRpZmll
ciwgY29uc3QgU3RyaW5nJiB0ZXh0SW5wdXQpOworCisgICAgdm9pZCBzZXRUZXh0QXN5bmMoY29u
c3QgU3RyaW5nJik7CisgICAgdm9pZCBpbnNlcnRUZXh0QXN5bmMoY29uc3QgU3RyaW5nJiB0ZXh0
LCBjb25zdCBFZGl0aW5nUmFuZ2UmIHJlcGxhY2VtZW50UmFuZ2UsIEluc2VydFRleHRPcHRpb25z
JiYpOworICAgIHZvaWQgaGFzTWFya2VkVGV4dChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wp
PiYmKTsKKyAgICB2b2lkIGdldE1hcmtlZFJhbmdlQXN5bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4mJik7CisgICAgdm9pZCBnZXRTZWxlY3RlZFJhbmdlQXN5
bmMoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBFZGl0aW5nUmFuZ2UmKT4mJik7CisgICAg
dm9pZCBjaGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90KT4mJik7CisgICAgdm9pZCBmaXJzdFJl
Y3RGb3JDaGFyYWN0ZXJSYW5nZUFzeW5jKGNvbnN0IEVkaXRpbmdSYW5nZSYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IEVkaXRpbmdSYW5nZSYp
PiYmKTsKKyAgICB2b2lkIHNldENvbXBvc2l0aW9uQXN5bmMoY29uc3QgU3RyaW5nJiB0ZXh0LCBj
b25zdCBWZWN0b3I8V2ViQ29yZTo6Q29tcG9zaXRpb25VbmRlcmxpbmU+JiwgY29uc3QgVmVjdG9y
PFdlYkNvcmU6OkNvbXBvc2l0aW9uSGlnaGxpZ2h0PiYsIGNvbnN0IEVkaXRpbmdSYW5nZSYgc2Vs
ZWN0aW9uUmFuZ2UsIGNvbnN0IEVkaXRpbmdSYW5nZSYgcmVwbGFjZW1lbnRSYW5nZSk7CisgICAg
dm9pZCBjb25maXJtQ29tcG9zaXRpb25Bc3luYygpOworCisgICAgdm9pZCByZWFkU2VsZWN0aW9u
RnJvbVBhc3RlYm9hcmQoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sJiYpPiYmKTsKKyAgICB2b2lkIGdldFN0cmluZ1NlbGVjdGlvbkZvclBh
c3RlYm9hcmQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChTdHJpbmcmJik+JiYpOworICAgIHZvaWQg
Z2V0RGF0YVNlbGVjdGlvbkZvclBhc3RlYm9hcmQoY29uc3QgU3RyaW5nIHBhc3RlYm9hcmRUeXBl
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFNoYXJlZE1lbW9yeTo6SVBDSGFuZGxlJiYpPiYmKTsK
KyAgICB2b2lkIHNob3VsZERlbGF5V2luZG93T3JkZXJpbmdFdmVudChjb25zdCBXZWJLaXQ6Oldl
Yk1vdXNlRXZlbnQmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICBib29s
IHBlcmZvcm1Ob25FZGl0aW5nQmVoYXZpb3JGb3JTZWxlY3Rvcihjb25zdCBTdHJpbmcmLCBXZWJD
b3JlOjpLZXlib2FyZEV2ZW50Kik7CisKKyAgICB2b2lkIGluc2VydERpY3RhdGVkVGV4dEFzeW5j
KGNvbnN0IFN0cmluZyYgdGV4dCwgY29uc3QgRWRpdGluZ1JhbmdlJiByZXBsYWNlbWVudFJhbmdl
LCBjb25zdCBWZWN0b3I8V2ViQ29yZTo6RGljdGF0aW9uQWx0ZXJuYXRpdmU+JiBkaWN0YXRpb25B
bHRlcm5hdGl2ZUxvY2F0aW9ucywgSW5zZXJ0VGV4dE9wdGlvbnMmJik7CisjZW5kaWYKKworI2lm
IFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIGF0dHJpYnV0ZWRTdWJzdHJpbmdGb3JDaGFyYWN0ZXJS
YW5nZUFzeW5jKGNvbnN0IEVkaXRpbmdSYW5nZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgV2ViQ29yZTo6QXR0cmlidXRlZFN0cmluZyYsIGNvbnN0IEVkaXRpbmdSYW5nZSYpPiYmKTsK
KyAgICB2b2lkIGZvbnRBdFNlbGVjdGlvbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IEZv
bnRJbmZvJiwgZG91YmxlLCBib29sKT4mJik7CisgICAgdm9pZCByZXF1ZXN0QWNjZXB0c0ZpcnN0
TW91c2UoaW50IGV2ZW50TnVtYmVyLCBjb25zdCBXZWJLaXQ6OldlYk1vdXNlRXZlbnQmKTsKKyNl
bmRpZgorCisjaWYgUExBVEZPUk0oQ09DT0EpICYmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQor
ICAgIHZvaWQgcmVwbGFjZVNlbGVjdGlvbldpdGhQYXN0ZWJvYXJkRGF0YShjb25zdCBWZWN0b3I8
U3RyaW5nPiYgdHlwZXMsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYpOworI2VuZGlmCisKKyAg
ICB2b2lkIHNldENvbXBvc2l0aW9uRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIGNvbXBvc2l0aW9u
U3RyaW5nLCB1aW50NjRfdCBmcm9tLCB1aW50NjRfdCBsZW5ndGgsIGJvb2wgc3VwcHJlc3NVbmRl
cmxpbmUsIGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvbkhpZ2hsaWdodD4mKTsKKyAg
ICBib29sIGhhc0NvbXBvc2l0aW9uRm9yVGVzdGluZygpOworICAgIHZvaWQgY29uZmlybUNvbXBv
c2l0aW9uRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIGNvbXBvc2l0aW9uU3RyaW5nKTsKKworI2lm
IFBMQVRGT1JNKENPQ09BKQorICAgIGJvb2wgaXNTcGVha2luZygpOworICAgIHZvaWQgc3BlYWso
Y29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzdG9wU3BlYWtpbmcoKTsKKworICAgIHZvaWQgcGVy
Zm9ybURpY3Rpb25hcnlMb29rdXBGb3JTZWxlY3Rpb24oV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBX
ZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9uJiwgV2ViQ29yZTo6VGV4dEluZGljYXRvclByZXNlbnRh
dGlvblRyYW5zaXRpb24pOworI2VuZGlmCisKKyAgICBib29sIGlzU21hcnRJbnNlcnREZWxldGVF
bmFibGVkKCk7CisgICAgdm9pZCBzZXRTbWFydEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCk7CisK
KyAgICBib29sIGlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZCgpIGNvbnN0OworICAg
IHZvaWQgc2V0U2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZChib29sKTsKKworICAgIHZv
aWQgcmVwbGFjZVNlbGVjdGlvbldpdGhUZXh0KFdlYkNvcmU6OkZyYW1lKiwgY29uc3QgU3RyaW5n
Jik7CisgICAgdm9pZCBjbGVhclNlbGVjdGlvbigpOworICAgIHZvaWQgcmVzdG9yZVNlbGVjdGlv
bkluRm9jdXNlZEVkaXRhYmxlRWxlbWVudCgpOworCisjaWYgRU5BQkxFKERSQUdfU1VQUE9SVCkg
JiYgUExBVEZPUk0oR1RLKQorICAgIHZvaWQgcGVyZm9ybURyYWdDb250cm9sbGVyQWN0aW9uKERy
YWdDb250cm9sbGVyQWN0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgY2xpZW50UG9zaXRp
b24sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBnbG9iYWxQb3NpdGlvbiwgT3B0aW9uU2V0PFdl
YkNvcmU6OkRyYWdPcGVyYXRpb24+IGRyYWdnaW5nU291cmNlT3BlcmF0aW9uTWFzaywgV2ViQ29y
ZTo6U2VsZWN0aW9uRGF0YSYmLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ0FwcGxpY2F0aW9uRmxh
Z3M+KTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKERSQUdfU1VQUE9SVCkgJiYgIVBMQVRGT1JNKEdU
SykKKyAgICB2b2lkIHBlcmZvcm1EcmFnQ29udHJvbGxlckFjdGlvbihEcmFnQ29udHJvbGxlckFj
dGlvbiwgY29uc3QgV2ViQ29yZTo6RHJhZ0RhdGEmLCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUm
JiwgVmVjdG9yPFNhbmRib3hFeHRlbnNpb246OkhhbmRsZT4mJik7CisjZW5kaWYKKworI2lmIEVO
QUJMRShEUkFHX1NVUFBPUlQpCisgICAgdm9pZCBkcmFnRW5kZWQoV2ViQ29yZTo6SW50UG9pbnQg
Y2xpZW50UG9zaXRpb24sIFdlYkNvcmU6OkludFBvaW50IGdsb2JhbFBvc2l0aW9uLCBPcHRpb25T
ZXQ8V2ViQ29yZTo6RHJhZ09wZXJhdGlvbj4pOworCisgICAgdm9pZCB3aWxsUGVyZm9ybUxvYWRE
cmFnRGVzdGluYXRpb25BY3Rpb24oKTsKKyAgICB2b2lkIG1heVBlcmZvcm1VcGxvYWREcmFnRGVz
dGluYXRpb25BY3Rpb24oKTsKKworICAgIHZvaWQgd2lsbFN0YXJ0RHJhZygpIHsgQVNTRVJUKCFt
X2lzU3RhcnRpbmdEcmFnKTsgbV9pc1N0YXJ0aW5nRHJhZyA9IHRydWU7IH0KKyAgICB2b2lkIGRp
ZFN0YXJ0RHJhZygpOworICAgIHZvaWQgZHJhZ0NhbmNlbGxlZCgpOworICAgIE9wdGlvblNldDxX
ZWJDb3JlOjpEcmFnU291cmNlQWN0aW9uPiBhbGxvd2VkRHJhZ1NvdXJjZUFjdGlvbnMoKSBjb25z
dCB7IHJldHVybiBtX2FsbG93ZWREcmFnU291cmNlQWN0aW9uczsgfQorI2VuZGlmCisKKyAgICB2
b2lkIGJlZ2luUHJpbnRpbmcoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBQcmludElu
Zm8mKTsKKyAgICB2b2lkIGVuZFByaW50aW5nKCk7CisgICAgdm9pZCBjb21wdXRlUGFnZXNGb3JQ
cmludGluZyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFByaW50SW5mbyYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+JiwgZG91Ymxl
LCBjb25zdCBXZWJDb3JlOjpGbG9hdEJveEV4dGVudCYpPiYmKTsKKyAgICB2b2lkIGNvbXB1dGVQ
YWdlc0ZvclByaW50aW5nSW1wbChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFByaW50
SW5mbyYsIFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0PiYgcGFnZVJlY3RzLCBkb3VibGUmIHRvdGFs
U2NhbGVGYWN0b3IsIFdlYkNvcmU6OkZsb2F0Qm94RXh0ZW50JiBjb21wdXRlZE1hcmdpbik7CisK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIGRyYXdSZWN0VG9JbWFnZShXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIsIGNvbnN0IFByaW50SW5mbyYsIGNvbnN0IFdlYkNvcmU6OkludFJlY3Qm
LCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBX
ZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlJik+JiYpOworICAgIHZvaWQgZHJhd1BhZ2Vz
VG9QREYoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBQcmludEluZm8mLCB1aW50MzJf
dCBmaXJzdCwgdWludDMyX3QgY291bnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgSVBD
OjpEYXRhUmVmZXJlbmNlJik+JiYpOworICAgIHZvaWQgZHJhd1BhZ2VzVG9QREZJbXBsKFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgUHJpbnRJbmZvJiwgdWludDMyX3QgZmlyc3QsIHVp
bnQzMl90IGNvdW50LCBSZXRhaW5QdHI8Q0ZNdXRhYmxlRGF0YVJlZj4mIHBkZlBhZ2VEYXRhKTsK
KyNlbmRpZgorCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIGNvbXB1dGVQYWdl
c0ZvclByaW50aW5naU9TKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgUHJpbnRJbmZv
JiwgTWVzc2FnZXM6OldlYlBhZ2U6OkNvbXB1dGVQYWdlc0ZvclByaW50aW5naU9TRGVsYXllZFJl
cGx5JiYpOworICAgIHZvaWQgZHJhd1RvUERGaU9TKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwg
Y29uc3QgUHJpbnRJbmZvJiwgc2l6ZV90LCBNZXNzYWdlczo6V2ViUGFnZTo6RHJhd1RvUERGaU9T
QXN5bmNSZXBseSYmKTsKKyNlbmRpZgorCisgICAgdm9pZCBkcmF3VG9QREYoV2ViQ29yZTo6RnJh
bWVJZGVudGlmaWVyLCBjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZsb2F0UmVjdD4mLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYpPiYmKTsKKwor
I2lmIFBMQVRGT1JNKEdUSykKKyAgICB2b2lkIGRyYXdQYWdlc0ZvclByaW50aW5nKFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciwgY29uc3QgUHJpbnRJbmZvJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik+JiYpOworI2VuZGlmCisKKyAgICB2b2lk
IGFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKTsKKyAgICB2b2lkIHJlbW92ZVJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25n
KTsKKworICAgIHZvaWQgc2V0TWVkaWFWb2x1bWUoZmxvYXQpOworICAgIHZvaWQgc2V0TXV0ZWQo
V2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TXV0ZWRTdGF0ZUZsYWdzLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYpOworICAgIHZvaWQgc2V0TWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdyhib29s
KTsKKyAgICB2b2lkIHN0b3BNZWRpYUNhcHR1cmUoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TWVk
aWFDYXB0dXJlS2luZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKworICAgIHZvaWQg
dXBkYXRlTWFpbkZyYW1lU2Nyb2xsT2Zmc2V0UGlubmluZygpOworCisgICAgYm9vbCBtYWluRnJh
bWVIYXNDdXN0b21Db250ZW50UHJvdmlkZXIoKSBjb25zdDsKKyAgICB2b2lkIGFkZE1JTUVUeXBl
V2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcihjb25zdCBTdHJpbmcmKTsKKworICAgIHZvaWQgbWFp
bkZyYW1lRGlkTGF5b3V0KCk7CisKKyAgICBib29sIGNhblJ1bkJlZm9yZVVubG9hZENvbmZpcm1Q
YW5lbCgpIGNvbnN0IHsgcmV0dXJuIG1fY2FuUnVuQmVmb3JlVW5sb2FkQ29uZmlybVBhbmVsOyB9
CisgICAgdm9pZCBzZXRDYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwoYm9vbCBjYW5SdW5C
ZWZvcmVVbmxvYWRDb25maXJtUGFuZWwpIHsgbV9jYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFu
ZWwgPSBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWw7IH0KKworICAgIGJvb2wgY2FuUnVu
TW9kYWwoKSBjb25zdCB7IHJldHVybiBtX2NhblJ1bk1vZGFsOyB9CisgICAgdm9pZCBzZXRDYW5S
dW5Nb2RhbChib29sIGNhblJ1bk1vZGFsKSB7IG1fY2FuUnVuTW9kYWwgPSBjYW5SdW5Nb2RhbDsg
fQorCisgICAgdm9pZCBydW5Nb2RhbCgpOworCisgICAgdm9pZCBzZXREZXZpY2VTY2FsZUZhY3Rv
cihmbG9hdCk7CisgICAgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IoKSBjb25zdDsKKworICAgIHZv
aWQgZm9yY2VSZXBhaW50V2l0aG91dENhbGxiYWNrKCk7CisKKyAgICB2b2lkIHVubWFya0FsbE1p
c3NwZWxsaW5ncygpOworICAgIHZvaWQgdW5tYXJrQWxsQmFkR3JhbW1hcigpOworCisjaWYgUExB
VEZPUk0oQ09DT0EpCisgICAgdm9pZCBoYW5kbGVBbHRlcm5hdGl2ZVRleHRVSVJlc3VsdChjb25z
dCBTdHJpbmcmKTsKKyNlbmRpZgorCisgICAgLy8gRm9yIHRlc3RpbmcgcHVycG9zZS4KKyAgICB2
b2lkIHNpbXVsYXRlTW91c2VEb3duKGludCBidXR0b24sIFdlYkNvcmU6OkludFBvaW50LCBpbnQg
Y2xpY2tDb3VudCwgV0tFdmVudE1vZGlmaWVycywgV2FsbFRpbWUpOworICAgIHZvaWQgc2ltdWxh
dGVNb3VzZVVwKGludCBidXR0b24sIFdlYkNvcmU6OkludFBvaW50LCBpbnQgY2xpY2tDb3VudCwg
V0tFdmVudE1vZGlmaWVycywgV2FsbFRpbWUpOworICAgIHZvaWQgc2ltdWxhdGVNb3VzZU1vdGlv
bihXZWJDb3JlOjpJbnRQb2ludCwgV2FsbFRpbWUpOworCisjaWYgRU5BQkxFKENPTlRFWFRfTUVO
VVMpCisgICAgdm9pZCBzdGFydFdhaXRpbmdGb3JDb250ZXh0TWVudVRvU2hvdygpIHsgbV93YWl0
aW5nRm9yQ29udGV4dE1lbnVUb1Nob3cgPSB0cnVlOyB9CisjZW5kaWYKKworICAgIGJvb2wgd2hl
ZWxFdmVudChjb25zdCBXZWJXaGVlbEV2ZW50JiwgT3B0aW9uU2V0PFdlYkNvcmU6OldoZWVsRXZl
bnRQcm9jZXNzaW5nU3RlcHM+KTsKKworICAgIHZvaWQgd2hlZWxFdmVudEhhbmRsZXJzQ2hhbmdl
ZChib29sKTsKKyAgICB2b2lkIHJlY29tcHV0ZVNob3J0Q2lyY3VpdEhvcml6b250YWxXaGVlbEV2
ZW50c1N0YXRlKCk7CisKKyNpZiBFTkFCTEUoTUFDX0dFU1RVUkVfRVZFTlRTKQorICAgIHZvaWQg
Z2VzdHVyZUV2ZW50KGNvbnN0IFdlYkdlc3R1cmVFdmVudCYpOworI2VuZGlmCisKKyAgICB2b2lk
IHVwZGF0ZVZpc2liaWxpdHlTdGF0ZShib29sIGlzSW5pdGlhbFN0YXRlID0gZmFsc2UpOworCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHNldE1heGltdW1Vbm9ic2N1cmVkU2l6
ZShjb25zdCBXZWJDb3JlOjpGbG9hdFNpemUmKTsKKyAgICB2b2lkIHNldERldmljZU9yaWVudGF0
aW9uKGludDMyX3QpOworICAgIHZvaWQgZHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZShjb25zdCBX
ZWJDb3JlOjpGbG9hdFNpemUmIHZpZXdMYXlvdXRTaXplLCBjb25zdCBXZWJDb3JlOjpGbG9hdFNp
emUmIG1heGltdW1Vbm9ic2N1cmVkU2l6ZSwgY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiB0YXJn
ZXRFeHBvc2VkQ29udGVudFJlY3QsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgdGFyZ2V0VW5v
YnNjdXJlZFJlY3QsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgdGFyZ2V0VW5vYnNjdXJlZFJl
Y3RJblNjcm9sbFZpZXdDb29yZGluYXRlcywgY29uc3QgV2ViQ29yZTo6RmxvYXRCb3hFeHRlbnQm
IHRhcmdldFVub2JzY3VyZWRTYWZlQXJlYUluc2V0cywgZG91YmxlIHNjYWxlLCBpbnQzMl90IGRl
dmljZU9yaWVudGF0aW9uLCBkb3VibGUgbWluaW11bUVmZmVjdGl2ZURldmljZVdpZHRoLCBEeW5h
bWljVmlld3BvcnRTaXplVXBkYXRlSUQpOworICAgIGJvb2wgc2NhbGVXYXNTZXRCeVVJUHJvY2Vz
cygpIGNvbnN0IHsgcmV0dXJuIG1fc2NhbGVXYXNTZXRCeVVJUHJvY2VzczsgfQorICAgIHZvaWQg
d2lsbFN0YXJ0VXNlclRyaWdnZXJlZFpvb21pbmcoKTsKKyAgICB2b2lkIGFwcGxpY2F0aW9uV2ls
bFJlc2lnbkFjdGl2ZSgpOworICAgIHZvaWQgYXBwbGljYXRpb25EaWRFbnRlckJhY2tncm91bmQo
Ym9vbCBpc1N1c3BlbmRlZFVuZGVyTG9jayk7CisgICAgdm9pZCBhcHBsaWNhdGlvbkRpZEZpbmlz
aFNuYXBzaG90dGluZ0FmdGVyRW50ZXJpbmdCYWNrZ3JvdW5kKCk7CisgICAgdm9pZCBhcHBsaWNh
dGlvbldpbGxFbnRlckZvcmVncm91bmQoYm9vbCBpc1N1c3BlbmRlZFVuZGVyTG9jayk7CisgICAg
dm9pZCBhcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZSgpOworICAgIHZvaWQgYXBwbGljYXRpb25E
aWRFbnRlckJhY2tncm91bmRGb3JNZWRpYShib29sIGlzU3VzcGVuZGVkVW5kZXJMb2NrKTsKKyAg
ICB2b2lkIGFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdyb3VuZEZvck1lZGlhKGJvb2wgaXNTdXNw
ZW5kZWRVbmRlckxvY2spOworICAgIHZvaWQgZGlkRmluaXNoQ29udGVudENoYW5nZU9ic2Vydmlu
ZyhXS0NvbnRlbnRDaGFuZ2UpOworCisgICAgYm9vbCBwbGF0Zm9ybVByZWZlcnNUZXh0TGVnaWJp
bGl0eUJhc2VkWm9vbVNjYWxpbmcoKSBjb25zdDsKKworICAgIHZvaWQgaGFyZHdhcmVLZXlib2Fy
ZEF2YWlsYWJpbGl0eUNoYW5nZWQoYm9vbCBrZXlib2FyZElzQXR0YWNoZWQpOworICAgIGJvb2wg
aGFyZHdhcmVLZXlib2FyZElzQXR0YWNoZWQoKSBjb25zdCB7IHJldHVybiBtX2tleWJvYXJkSXNB
dHRhY2hlZDsgfQorCisgICAgdm9pZCB1cGRhdGVTdHJpbmdGb3JGaW5kKGNvbnN0IFN0cmluZyYp
OworICAgIAorICAgIGJvb2wgY2FuU2hvd1doaWxlTG9ja2VkKCkgY29uc3QgeyByZXR1cm4gbV9j
YW5TaG93V2hpbGVMb2NrZWQ7IH0KKyNlbmRpZgorCisjaWYgRU5BQkxFKE1FVEFfVklFV1BPUlQp
CisgICAgdm9pZCBzZXRWaWV3cG9ydENvbmZpZ3VyYXRpb25WaWV3TGF5b3V0U2l6ZShjb25zdCBX
ZWJDb3JlOjpGbG9hdFNpemUmLCBkb3VibGUgc2NhbGVGYWN0b3IsIGRvdWJsZSBtaW5pbXVtRWZm
ZWN0aXZlRGV2aWNlV2lkdGgpOworICAgIHZvaWQgc2V0T3ZlcnJpZGVWaWV3cG9ydEFyZ3VtZW50
cyhjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzPiYpOworICAg
IGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0Q29uZmlndXJhdGlvbiYgdmlld3BvcnRDb25maWd1cmF0
aW9uKCkgY29uc3QgeyByZXR1cm4gbV92aWV3cG9ydENvbmZpZ3VyYXRpb247IH0KKworICAgIHZv
aWQgc2V0VXNlVGVzdGluZ1ZpZXdwb3J0Q29uZmlndXJhdGlvbihib29sIHVzZVRlc3RpbmdWaWV3
cG9ydCkgeyBtX3VzZVRlc3RpbmdWaWV3cG9ydENvbmZpZ3VyYXRpb24gPSB1c2VUZXN0aW5nVmll
d3BvcnQ7IH0KKyAgICBib29sIGlzVXNpbmdUZXN0aW5nVmlld3BvcnRDb25maWd1cmF0aW9uKCkg
Y29uc3QgeyByZXR1cm4gbV91c2VUZXN0aW5nVmlld3BvcnRDb25maWd1cmF0aW9uOyB9CisjZW5k
aWYKKworI2lmIEVOQUJMRShVSV9TSURFX0NPTVBPU0lUSU5HKQorICAgIHN0ZDo6b3B0aW9uYWw8
ZmxvYXQ+IHNjYWxlRnJvbVVJUHJvY2Vzcyhjb25zdCBWaXNpYmxlQ29udGVudFJlY3RVcGRhdGVJ
bmZvJikgY29uc3Q7CisgICAgdm9pZCB1cGRhdGVWaXNpYmxlQ29udGVudFJlY3RzKGNvbnN0IFZp
c2libGVDb250ZW50UmVjdFVwZGF0ZUluZm8mLCBNb25vdG9uaWNUaW1lIG9sZGVzdFRpbWVzdGFt
cCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorICAgIGJvb2wgZGlz
cGF0Y2hUb3VjaEV2ZW50KGNvbnN0IFdlYlRvdWNoRXZlbnQmKTsKKyNlbmRpZgorCisgICAgYm9v
bCBzaG91bGRVc2VDdXN0b21Db250ZW50UHJvdmlkZXJGb3JSZXNwb25zZShjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJik7CisKKyAgICBib29sIGFzeW5jaHJvbm91c1BsdWdpbkluaXRp
YWxpemF0aW9uRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYXN5bmNocm9ub3VzUGx1Z2luSW5p
dGlhbGl6YXRpb25FbmFibGVkOyB9CisgICAgdm9pZCBzZXRBc3luY2hyb25vdXNQbHVnaW5Jbml0
aWFsaXphdGlvbkVuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fYXN5bmNocm9ub3VzUGx1Z2luSW5p
dGlhbGl6YXRpb25FbmFibGVkID0gZW5hYmxlZDsgfQorICAgIGJvb2wgYXN5bmNocm9ub3VzUGx1
Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1Z2lucygpIGNvbnN0IHsgcmV0dXJuIG1f
YXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1Z2luczsgfQor
ICAgIHZvaWQgc2V0QXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxs
UGx1Z2lucyhib29sIGVuYWJsZWQpIHsgbV9hc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlv
bkVuYWJsZWRGb3JBbGxQbHVnaW5zID0gZW5hYmxlZDsgfQorICAgIGJvb2wgYXJ0aWZpY2lhbFBs
dWdpbkluaXRpYWxpemF0aW9uRGVsYXlFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9hcnRpZmlj
aWFsUGx1Z2luSW5pdGlhbGl6YXRpb25EZWxheUVuYWJsZWQ7IH0KKyAgICB2b2lkIHNldEFydGlm
aWNpYWxQbHVnaW5Jbml0aWFsaXphdGlvbkRlbGF5RW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9h
cnRpZmljaWFsUGx1Z2luSW5pdGlhbGl6YXRpb25EZWxheUVuYWJsZWQgPSBlbmFibGVkOyB9CisK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBib29sIHBkZlBsdWdpbkVuYWJsZWQoKSBjb25zdCB7
IHJldHVybiBtX3BkZlBsdWdpbkVuYWJsZWQ7IH0KKyAgICB2b2lkIHNldFBERlBsdWdpbkVuYWJs
ZWQoYm9vbCBlbmFibGVkKSB7IG1fcGRmUGx1Z2luRW5hYmxlZCA9IGVuYWJsZWQ7IH0KKworICAg
IE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX2Rh
dGFEZXRlY3Rpb25Db250ZXh0LmdldCgpOyB9CisjZW5kaWYKKworI2lmIEVOQUJMRShQREZLSVRf
UExVR0lOKSAmJiAhRU5BQkxFKFVJX1BST0NFU1NfUERGX0hVRCkKKyAgICB2b2lkIHNhdmVQREZU
b0ZpbGVJbkRvd25sb2Fkc0ZvbGRlcihjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZEZpbGVuYW1lLCBj
b25zdCBVUkwmIG9yaWdpbmF0aW5nVVJMLCBjb25zdCB1aW50OF90KiBkYXRhLCB1bnNpZ25lZCBs
b25nIHNpemUpOworICAgIHZvaWQgc2F2ZVBERlRvVGVtcG9yYXJ5Rm9sZGVyQW5kT3BlbldpdGhO
YXRpdmVBcHBsaWNhdGlvbihjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZEZpbGVuYW1lLCBGcmFtZUlu
Zm9EYXRhJiYsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIHVuc2lnbmVkIGxvbmcgc2l6ZSwgY29uc3Qg
U3RyaW5nJiBwZGZVVUlEKTsKKyNlbmRpZgorCisgICAgYm9vbCBtYWluRnJhbWVJc1Njcm9sbGFi
bGUoKSBjb25zdCB7IHJldHVybiBtX21haW5GcmFtZUlzU2Nyb2xsYWJsZTsgfQorCisgICAgdm9p
ZCBzZXRBbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcihib29sKTsKKyAgICB2b2lkIHNldEFs
d2F5c1Nob3dzVmVydGljYWxTY3JvbGxlcihib29sKTsKKworICAgIGJvb2wgYWx3YXlzU2hvd3NI
b3Jpem9udGFsU2Nyb2xsZXIoKSBjb25zdCB7IHJldHVybiBtX2Fsd2F5c1Nob3dzSG9yaXpvbnRh
bFNjcm9sbGVyOyB9OworICAgIGJvb2wgYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyKCkgY29u
c3QgeyByZXR1cm4gbV9hbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXI7IH07CisgICAgCisgICAg
dm9pZCBzY3JvbGxUb1JlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiB0YXJnZXRSZWN0LCBj
b25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiBvcmlnaW4pOworCisgICAgdm9pZCBzZXRNaW5pbXVt
U2l6ZUZvckF1dG9MYXlvdXQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIFdlYkNvcmU6
OkludFNpemUgbWluaW11bVNpemVGb3JBdXRvTGF5b3V0KCkgY29uc3QgeyByZXR1cm4gbV9taW5p
bXVtU2l6ZUZvckF1dG9MYXlvdXQ7IH0KKworICAgIHZvaWQgc2V0U2l6ZVRvQ29udGVudEF1dG9T
aXplTWF4aW11bVNpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIFdlYkNvcmU6Oklu
dFNpemUgc2l6ZVRvQ29udGVudEF1dG9TaXplTWF4aW11bVNpemUoKSBjb25zdCB7IHJldHVybiBt
X3NpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplOyB9CisKKyAgICB2b2lkIHNldEF1dG9T
aXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQoYm9vbCBzaG91bGRFeHBhbmQpOworICAgIGJv
b2wgYXV0b1NpemluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodCgpIHsgcmV0dXJuIG1fYXV0b1Np
emluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodDsgfQorCisgICAgdm9pZCBzZXRWaWV3cG9ydFNp
emVGb3JDU1NWaWV3cG9ydFVuaXRzKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SW50U2l6ZT4pOwor
ICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SW50U2l6ZT4gdmlld3BvcnRTaXplRm9yQ1NTVmll
d3BvcnRVbml0cygpIGNvbnN0IHsgcmV0dXJuIG1fdmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRV
bml0czsgfQorCisgICAgYm9vbCBjYW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiBNSU1FVHlw
ZSkgY29uc3Q7CisgICAgYm9vbCBjYW5TaG93UmVzcG9uc2UoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYpIGNvbnN0OworCisgICAgdm9pZCBhZGRUZXh0Q2hlY2tpbmdSZXF1ZXN0KFRl
eHRDaGVja2VyUmVxdWVzdElELCBSZWY8V2ViQ29yZTo6VGV4dENoZWNraW5nUmVxdWVzdD4mJik7
CisgICAgdm9pZCBkaWRGaW5pc2hDaGVja2luZ1RleHQoVGV4dENoZWNrZXJSZXF1ZXN0SUQsIGNv
bnN0IFZlY3RvcjxXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXN1bHQ+Jik7CisgICAgdm9pZCBkaWRD
YW5jZWxDaGVja2luZ1RleHQoVGV4dENoZWNrZXJSZXF1ZXN0SUQpOworCisjaWYgRU5BQkxFKERB
VEFfREVURUNUSU9OKQorICAgIHZvaWQgc2V0RGF0YURldGVjdGlvblJlc3VsdHMoTlNBcnJheSAq
KTsKKyAgICB2b2lkIGRldGVjdERhdGFJbkFsbEZyYW1lcyhPcHRpb25TZXQ8V2ViQ29yZTo6RGF0
YURldGVjdG9yVHlwZT4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgRGF0YURldGVjdGlv
blJlc3VsdCYpPiYmKTsKKyAgICB2b2lkIHJlbW92ZURhdGFEZXRlY3RlZExpbmtzKENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgRGF0YURldGVjdGlvblJlc3VsdCYpPiYmKTsKKyAgICB2b2lk
IGhhbmRsZUNsaWNrRm9yRGF0YURldGVjdGlvblJlc3VsdChjb25zdCBXZWJDb3JlOjpEYXRhRGV0
ZWN0b3JFbGVtZW50SW5mbyYsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7CisgICAgc3RhdGlj
IHN0ZDo6b3B0aW9uYWw8c3RkOjpwYWlyPFJlZjxXZWJDb3JlOjpIVE1MRWxlbWVudD4sIFdlYkNv
cmU6OkludFJlY3Q+PiBmaW5kRGF0YURldGVjdGlvblJlc3VsdEVsZW1lbnRJbkltYWdlT3Zlcmxh
eShjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiBsb2NhdGlvbkluUm9vdFZpZXcsIGNvbnN0IFdl
YkNvcmU6OkhUTUxFbGVtZW50JiBob3N0KTsKKyNlbmRpZgorCisgICAgdW5zaWduZWQgZXh0ZW5k
SW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvbigpOworICAgIHZvaWQgc3RvcEV4dGVuZGlu
Z0luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb24odW5zaWduZWQgdG9rZW4pOworICAgIGJv
b2wgc2hvdWxkRXh0ZW5kSW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvbigpIHsgcmV0dXJu
ICFtX2FjdGl2ZVJlbmRlcmluZ1N1cHByZXNzaW9uVG9rZW5zLmlzRW1wdHkoKTsgfQorCisgICAg
V2ViQ29yZTo6U2Nyb2xsUGlubmluZ0JlaGF2aW9yIHNjcm9sbFBpbm5pbmdCZWhhdmlvcigpIHsg
cmV0dXJuIG1fc2Nyb2xsUGlubmluZ0JlaGF2aW9yOyB9CisgICAgdm9pZCBzZXRTY3JvbGxQaW5u
aW5nQmVoYXZpb3IodWludDMyX3QgLyogV2ViQ29yZTo6U2Nyb2xsUGlubmluZ0JlaGF2aW9yICov
IHBpbm5pbmcpOworCisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTY3JvbGxiYXJPdmVybGF5
U3R5bGU+IHNjcm9sbGJhck92ZXJsYXlTdHlsZSgpIHsgcmV0dXJuIG1fc2Nyb2xsYmFyT3Zlcmxh
eVN0eWxlOyB9CisgICAgdm9pZCBzZXRTY3JvbGxiYXJPdmVybGF5U3R5bGUoc3RkOjpvcHRpb25h
bDx1aW50MzJfdCAvKiBXZWJDb3JlOjpTY3JvbGxiYXJPdmVybGF5U3R5bGUgKi8+IHNjcm9sbGJh
clN0eWxlKTsKKworICAgIFJlZjxXZWJDb3JlOjpEb2N1bWVudExvYWRlcj4gY3JlYXRlRG9jdW1l
bnRMb2FkZXIoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpOworICAgIHZvaWQgdXBkYXRlQ2FjaGVk
RG9jdW1lbnRMb2FkZXIoV2ViRG9jdW1lbnRMb2FkZXImLCBXZWJDb3JlOjpGcmFtZSYpOworCisg
ICAgdm9pZCBnZXRCeXRlY29kZVByb2ZpbGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBT
dHJpbmcmKT4mJik7CisgICAgdm9pZCBnZXRTYW1wbGluZ1Byb2ZpbGVyT3V0cHV0KENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYpOworICAgIAorI2lmIEVOQUJMRShTRVJW
SUNFX0NPTlRST0xTKSB8fCBFTkFCTEUoVEVMRVBIT05FX05VTUJFUl9ERVRFQ1RJT04pCisgICAg
dm9pZCBoYW5kbGVUZWxlcGhvbmVOdW1iZXJDbGljayhjb25zdCBTdHJpbmcmIG51bWJlciwgY29u
c3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKKyAgICB2b2lkIGhhbmRsZVNlbGVjdGlvblNlcnZpY2VD
bGljayhXZWJDb3JlOjpGcmFtZVNlbGVjdGlvbiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiB0ZWxl
cGhvbmVOdW1iZXJzLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpOworI2VuZGlmCisKKyAgICB2
b2lkIGRpZENoYW5nZVNjcm9sbE9mZnNldEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKik7CisKKyAg
ICB2b2lkIHNldE1haW5GcmFtZVByb2dyZXNzQ29tcGxldGVkKGJvb2wgY29tcGxldGVkKSB7IG1f
bWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0ZWQgPSBjb21wbGV0ZWQ7IH0KKyAgICBib29sIHNob3Vs
ZERpc3BhdGNoRmFrZU1vdXNlTW92ZUV2ZW50cygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkRGlz
cGF0Y2hGYWtlTW91c2VNb3ZlRXZlbnRzOyB9CisKKyAgICB2b2lkIHBvc3RNZXNzYWdlKGNvbnN0
IFN0cmluZyYgbWVzc2FnZU5hbWUsIEFQSTo6T2JqZWN0KiBtZXNzYWdlQm9keSk7CisgICAgdm9p
ZCBwb3N0U3luY2hyb25vdXNNZXNzYWdlRm9yVGVzdGluZyhjb25zdCBTdHJpbmcmIG1lc3NhZ2VO
YW1lLCBBUEk6Ok9iamVjdCogbWVzc2FnZUJvZHksIFJlZlB0cjxBUEk6Ok9iamVjdD4mIHJldHVy
bkRhdGEpOworICAgIHZvaWQgcG9zdE1lc3NhZ2VJZ25vcmluZ0Z1bGx5U3luY2hyb25vdXNNb2Rl
KGNvbnN0IFN0cmluZyYgbWVzc2FnZU5hbWUsIEFQSTo6T2JqZWN0KiBtZXNzYWdlQm9keSk7CisK
KyNpZiBQTEFURk9STShHVEspIHx8IFBMQVRGT1JNKFdQRSkKKyAgICB2b2lkIHNldElucHV0TWV0
aG9kU3RhdGUoV2ViQ29yZTo6RWxlbWVudCopOworI2VuZGlmCisKKyAgICB2b2lkIGltYWdlT3JN
ZWRpYURvY3VtZW50U2l6ZUNoYW5nZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworCisjaWYg
RU5BQkxFKFZJREVPKSAmJiBVU0UoR1NUUkVBTUVSKQorICAgIHZvaWQgcmVxdWVzdEluc3RhbGxN
aXNzaW5nTWVkaWFQbHVnaW5zKGNvbnN0IFN0cmluZyYgZGV0YWlscywgY29uc3QgU3RyaW5nJiBk
ZXNjcmlwdGlvbiwgV2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFsbE1pc3NpbmdQbHVn
aW5zQ2FsbGJhY2smKTsKKyNlbmRpZgorCisgICAgdm9pZCBhZGRVc2VyU2NyaXB0KFN0cmluZyYm
IHNvdXJjZSwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCYsIFdlYkNvcmU6OlVzZXJDb250ZW50
SW5qZWN0ZWRGcmFtZXMsIFdlYkNvcmU6OlVzZXJTY3JpcHRJbmplY3Rpb25UaW1lKTsKKyAgICB2
b2lkIGFkZFVzZXJTdHlsZVNoZWV0KGNvbnN0IFN0cmluZyYgc291cmNlLCBXZWJDb3JlOjpVc2Vy
Q29udGVudEluamVjdGVkRnJhbWVzKTsKKyAgICB2b2lkIHJlbW92ZUFsbFVzZXJDb250ZW50KCk7
CisKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVhY2hMYXlvdXRNaWxlc3RvbmUoT3B0aW9uU2V0PFdl
YkNvcmU6OkxheW91dE1pbGVzdG9uZT4pOworCisgICAgdm9pZCBkaWRSZXN0b3JlU2Nyb2xsUG9z
aXRpb24oKTsKKworICAgIGJvb2wgaXNDb250cm9sbGVkQnlBdXRvbWF0aW9uKCkgY29uc3Q7Cisg
ICAgdm9pZCBzZXRDb250cm9sbGVkQnlBdXRvbWF0aW9uKGJvb2wpOworCisgICAgdm9pZCBjb25u
ZWN0SW5zcGVjdG9yKGNvbnN0IFN0cmluZyYgdGFyZ2V0SWQsIEluc3BlY3Rvcjo6RnJvbnRlbmRD
aGFubmVsOjpDb25uZWN0aW9uVHlwZSk7CisgICAgdm9pZCBkaXNjb25uZWN0SW5zcGVjdG9yKGNv
bnN0IFN0cmluZyYgdGFyZ2V0SWQpOworICAgIHZvaWQgc2VuZE1lc3NhZ2VUb1RhcmdldEJhY2tl
bmQoY29uc3QgU3RyaW5nJiB0YXJnZXRJZCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKKworICAg
IHZvaWQgaW5zZXJ0TmV3bGluZUluUXVvdGVkQ29udGVudCgpOworCisjaWYgVVNFKE9TX1NUQVRF
KQorICAgIFdhbGxUaW1lIGxvYWRDb21taXRUaW1lKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkQ29t
bWl0VGltZTsgfQorI2VuZGlmCisKKyNpZiBFTkFCTEUoR0FNRVBBRCkKKyAgICB2b2lkIGdhbWVw
YWRBY3Rpdml0eShjb25zdCBWZWN0b3I8R2FtZXBhZERhdGE+JiwgV2ViQ29yZTo6RXZlbnRNYWtl
c0dhbWVwYWRzVmlzaWJsZSk7CisjZW5kaWYKKyAgICAKKyNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQorICAgIHZvaWQgZGlkQWNxdWlyZVBvaW50ZXJMb2NrKCk7CisgICAgdm9pZCBkaWROb3RBY3F1
aXJlUG9pbnRlckxvY2soKTsKKyAgICB2b2lkIGRpZExvc2VQb2ludGVyTG9jaygpOworI2VuZGlm
CisKKyAgICB2b2lkIGRpZEdldExvYWREZWNpc2lvbkZvckljb24oYm9vbCBkZWNpc2lvbiwgQ2Fs
bGJhY2tJRCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBJUEM6OlNoYXJlZEJ1ZmZlckRh
dGFSZWZlcmVuY2UmKT4mJik7CisgICAgdm9pZCBzZXRVc2VJY29uTG9hZGluZ0NsaWVudChib29s
KTsKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEVOQUJMRShEUkFHX1NVUFBPUlQpCisg
ICAgdm9pZCBkaWRDb25jbHVkZUVkaXREcmFnKCk7CisgICAgdm9pZCBkaWRDb25jbHVkZURyb3Ao
KTsKKyNlbmRpZgorCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1hZ2VGb3JFbGVtZW50KFdl
YkNvcmU6OkhUTUxJbWFnZUVsZW1lbnQmKTsKKworICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eSogdXJsU2NoZW1lSGFuZGxlckZvclNjaGVtZShjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHN0
b3BBbGxVUkxTY2hlbWVUYXNrcygpOworCisgICAgc3RkOjpvcHRpb25hbDxkb3VibGU+IGNwdUxp
bWl0KCkgY29uc3QgeyByZXR1cm4gbV9jcHVMaW1pdDsgfQorCisgICAgc3RhdGljIFBsdWdpblZp
ZXcqIHBsdWdpblZpZXdGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSopOworCisgICAgdm9pZCB0aGVt
ZUNvbG9yQ2hhbmdlZCgpIHsgbV9wZW5kaW5nVGhlbWVDb2xvckNoYW5nZSA9IHRydWU7IH0KKyAg
ICB2b2lkIGZsdXNoUGVuZGluZ1RoZW1lQ29sb3JDaGFuZ2UoKTsKKworICAgIHZvaWQgcGFnZUV4
dGVuZGVkQmFja2dyb3VuZENvbG9yRGlkQ2hhbmdlKCkgeyBtX3BlbmRpbmdQYWdlRXh0ZW5kZWRC
YWNrZ3JvdW5kQ29sb3JDaGFuZ2UgPSB0cnVlOyB9CisgICAgdm9pZCBmbHVzaFBlbmRpbmdQYWdl
RXh0ZW5kZWRCYWNrZ3JvdW5kQ29sb3JDaGFuZ2UoKTsKKworICAgIHZvaWQgc2FtcGxlZFBhZ2VU
b3BDb2xvckNoYW5nZWQoKSB7IG1fcGVuZGluZ1NhbXBsZWRQYWdlVG9wQ29sb3JDaGFuZ2UgPSB0
cnVlOyB9CisgICAgdm9pZCBmbHVzaFBlbmRpbmdTYW1wbGVkUGFnZVRvcENvbG9yQ2hhbmdlKCk7
CisKKyAgICB2b2lkIGZsdXNoUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlKCk7CisKKyNpZiBFTkFC
TEUoSU5URUxMSUdFTlRfVFJBQ0tJTkdfUFJFVkVOVElPTikKKyAgICB2b2lkIGhhc1N0b3JhZ2VB
Y2Nlc3MoV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mJiBzdWJGcmFtZURvbWFpbiwgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4mJiB0b3BGcmFtZURvbWFpbiwgV2ViRnJhbWUmLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIHJlcXVlc3RTdG9yYWdlQWNjZXNz
KFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYgc3ViRnJhbWVEb21haW4sIFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluJiYgdG9wRnJhbWVEb21haW4sIFdlYkZyYW1lJiwgV2ViQ29yZTo6U3Rv
cmFnZUFjY2Vzc1Njb3BlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlcXVlc3RT
dG9yYWdlQWNjZXNzUmVzdWx0KT4mJik7CisgICAgYm9vbCBoYXNQYWdlTGV2ZWxTdG9yYWdlQWNj
ZXNzKGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiB0b3BMZXZlbERvbWFpbiwgY29u
c3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mIHJlc291cmNlRG9tYWluKSBjb25zdDsKKyAg
ICB2b2lkIGFkZERvbWFpbldpdGhQYWdlTGV2ZWxTdG9yYWdlQWNjZXNzKGNvbnN0IFdlYkNvcmU6
OlJlZ2lzdHJhYmxlRG9tYWluJiB0b3BMZXZlbERvbWFpbiwgY29uc3QgV2ViQ29yZTo6UmVnaXN0
cmFibGVEb21haW4mIHJlc291cmNlRG9tYWluKTsKKyAgICB2b2lkIGNsZWFyUGFnZUxldmVsU3Rv
cmFnZUFjY2VzcygpOworICAgIHZvaWQgd2FzTG9hZGVkV2l0aERhdGFUcmFuc2ZlckZyb21QcmV2
YWxlbnRSZXNvdXJjZSgpOworICAgIHZvaWQgZGlkTG9hZEZyb21SZWdpc3RyYWJsZURvbWFpbihX
ZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYmKTsKKyAgICB2b2lkIGNsZWFyTG9hZGVkU3VicmVz
b3VyY2VEb21haW5zKCk7CisgICAgdm9pZCBnZXRMb2FkZWRTdWJyZXNvdXJjZURvbWFpbnMoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+KT4m
Jik7CisgICAgY29uc3QgSGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4mIGxvYWRl
ZFN1YnJlc291cmNlRG9tYWlucygpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZGVkU3VicmVzb3VyY2VE
b21haW5zOyB9CisjZW5kaWYKKworI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCisgICAg
dm9pZCBzaG91bGRBbGxvd0RldmljZU9yaWVudGF0aW9uQW5kTW90aW9uQWNjZXNzKFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBib29sIG1heVByb21wdCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpEZXZpY2VPcmllbnRhdGlvbk9yTW90aW9uUGVybWlz
c2lvblN0YXRlKT4mJik7CisjZW5kaWYKKworICAgIHZvaWQgc2hvd1NoYXJlU2hlZXQoV2ViQ29y
ZTo6U2hhcmVEYXRhV2l0aFBhcnNlZFVSTCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYgY2FsbGJhY2spOworICAgIHZvaWQgc2hvd0NvbnRhY3RQaWNrZXIoY29uc3QgV2ViQ29yZTo6
Q29udGFjdHNSZXF1ZXN0RGF0YSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25h
bDxWZWN0b3I8V2ViQ29yZTo6Q29udGFjdEluZm8+PiYmKT4mJik7CisgICAgCisjaWYgRU5BQkxF
KEFUVEFDSE1FTlRfRUxFTUVOVCkKKyAgICB2b2lkIGluc2VydEF0dGFjaG1lbnQoY29uc3QgU3Ry
aW5nJiBpZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiYmIGZpbGVTaXplLCBjb25z
dCBTdHJpbmcmIGZpbGVOYW1lLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgdXBkYXRlQXR0YWNobWVudEF0dHJpYnV0ZXMo
Y29uc3QgU3RyaW5nJiBpZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiYmIGZpbGVT
aXplLCBjb25zdCBTdHJpbmcmIGNvbnRlbnRUeXBlLCBjb25zdCBTdHJpbmcmIGZpbGVOYW1lLCBj
b25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGVuY2xvc2luZ0ltYWdlRGF0YSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHVwZGF0ZUF0dGFjaG1lbnRJY29uKGNvbnN0IFN0
cmluZyYgaWRlbnRpZmllciwgY29uc3QgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUmIHFsVGh1bWJu
YWlsSGFuZGxlKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEFQUExJQ0FUSU9OX01BTklGRVNUKQor
ICAgIHZvaWQgZ2V0QXBwbGljYXRpb25NYW5pZmVzdChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNv
bnN0IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6QXBwbGljYXRpb25NYW5pZmVzdD4mKT4mJik7Cisj
ZW5kaWYKKworI2lmIFVTRShXUEVfUkVOREVSRVIpCisgICAgaW50IGhvc3RGaWxlRGVzY3JpcHRv
cigpIGNvbnN0IHsgcmV0dXJuIG1faG9zdEZpbGVEZXNjcmlwdG9yLmZpbGVEZXNjcmlwdG9yKCk7
IH0KKyNlbmRpZgorCisgICAgdm9pZCB1cGRhdGVDdXJyZW50TW9kaWZpZXJTdGF0ZShPcHRpb25T
ZXQ8V2ViQ29yZTo6UGxhdGZvcm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVycyk7CisKKyAgICBV
c2VyQ29udGVudENvbnRyb2xsZXJJZGVudGlmaWVyIHVzZXJDb250ZW50Q29udHJvbGxlcklkZW50
aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3VzZXJDb250ZW50Q29udHJvbGxlci0+aWRlbnRpZmll
cigpOyB9CisKKyAgICBXZWJDb3JlOjpVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uIHVzZXJJ
bnRlcmZhY2VMYXlvdXREaXJlY3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb247IH0KKworICAgIGJvb2wgaXNTdXNwZW5kZWQoKSBjb25zdCB7IHJldHVy
biBtX2lzU3VzcGVuZGVkOyB9CisKKyAgICB2b2lkIGRpZFJlY2VpdmVXZWJQYWdlTWVzc2FnZShJ
UEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKKworICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+CisgICAgU2VuZFN5bmNSZXN1bHQgc2VuZFN5bmNXaXRoRGVsYXllZFJlcGx5KFQmJiBtZXNz
YWdlLCB0eXBlbmFtZSBUOjpSZXBseSYmIHJlcGx5LCBPcHRpb25TZXQ8SVBDOjpTZW5kU3luY09w
dGlvbj4gc2VuZFN5bmNPcHRpb25zID0geyB9KQorICAgIHsKKyAgICAgICAgY2FuY2VsR2VzdHVy
ZXNCbG9ja2VkT25TeW5jaHJvbm91c1JlcGxpZXMoKTsKKyAgICAgICAgc2VuZFN5bmNPcHRpb25z
ID0gc2VuZFN5bmNPcHRpb25zIHwgSVBDOjpTZW5kU3luY09wdGlvbjo6SW5mb3JtUGxhdGZvcm1Q
cm9jZXNzV2lsbFN1c3BlbmQ7CisgICAgICAgIHJldHVybiBzZW5kU3luYyhXVEZNb3ZlKG1lc3Nh
Z2UpLCBXVEZNb3ZlKHJlcGx5KSwgU2Vjb25kczo6aW5maW5pdHkoKSwgc2VuZFN5bmNPcHRpb25z
KTsKKyAgICB9CisKKyAgICBXZWJDb3JlOjpET01QYXN0ZUFjY2Vzc1Jlc3BvbnNlIHJlcXVlc3RE
T01QYXN0ZUFjY2Vzcyhjb25zdCBTdHJpbmcmIG9yaWdpbklkZW50aWZpZXIpOworICAgIFdlYkNv
cmU6OkludFJlY3QgcmVjdEZvckVsZW1lbnRBdEludGVyYWN0aW9uTG9jYXRpb24oKSBjb25zdDsK
KworICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Q29sb3I+JiBiYWNrZ3JvdW5kQ29s
b3IoKSBjb25zdCB7IHJldHVybiBtX2JhY2tncm91bmRDb2xvcjsgfQorCisgICAgdm9pZCBzdXNw
ZW5kQWxsTWVkaWFCdWZmZXJpbmcoKTsKKyAgICB2b2lkIHJlc3VtZUFsbE1lZGlhQnVmZmVyaW5n
KCk7CisKKyAgICB2b2lkIGNvbmZpZ3VyZUxvZ2dpbmdDaGFubmVsKGNvbnN0IFN0cmluZyYsIFdU
RkxvZ0NoYW5uZWxTdGF0ZSwgV1RGTG9nTGV2ZWwpOworCisgICAgUmVmUHRyPFdlYkNvcmU6OkVs
ZW1lbnQ+IGVsZW1lbnRGb3JDb250ZXh0KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0Jikg
Y29uc3Q7CisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpFbGVtZW50Q29udGV4dD4gY29udGV4
dEZvckVsZW1lbnQoV2ViQ29yZTo6RWxlbWVudCYpIGNvbnN0OworCisgICAgdm9pZCBzdGFydFRl
eHRNYW5pcHVsYXRpb25zKFZlY3RvcjxXZWJDb3JlOjpUZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxl
cjo6RXhjbHVzaW9uUnVsZT4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2
b2lkIGNvbXBsZXRlVGV4dE1hbmlwdWxhdGlvbihjb25zdCBWZWN0b3I8V2ViQ29yZTo6VGV4dE1h
bmlwdWxhdGlvbkNvbnRyb2xsZXI6Ok1hbmlwdWxhdGlvbkl0ZW0+JiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sIGFsbEZhaWxlZCwgY29uc3QgVmVjdG9yPFdlYkNvcmU6OlRleHRNYW5pcHVs
YXRpb25Db250cm9sbGVyOjpNYW5pcHVsYXRpb25GYWlsdXJlPiYpPiYmKTsKKworI2lmIEVOQUJM
RShBUFBMRV9QQVkpCisgICAgV2ViUGF5bWVudENvb3JkaW5hdG9yKiBwYXltZW50Q29vcmRpbmF0
b3IoKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKFBMQVRGT1JNX0RSSVZFTl9URVhUX0NIRUNLSU5H
KQorICAgIFRleHRDaGVja2luZ0NvbnRyb2xsZXJQcm94eSYgdGV4dENoZWNraW5nQ29udHJvbGxl
cigpIHsgcmV0dXJuIG1fdGV4dENoZWNraW5nQ29udHJvbGxlclByb3h5LmdldCgpOyB9CisjZW5k
aWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIHZvaWQgc2V0UmVtb3RlT2JqZWN0UmVnaXN0
cnkoV2ViUmVtb3RlT2JqZWN0UmVnaXN0cnkqKTsKKyAgICBXZWJSZW1vdGVPYmplY3RSZWdpc3Ry
eSogcmVtb3RlT2JqZWN0UmVnaXN0cnkoKTsKKyNlbmRpZgorCisgICAgV2ViUGFnZVByb3h5SWRl
bnRpZmllciB3ZWJQYWdlUHJveHlJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV93ZWJQYWdl
UHJveHlJZGVudGlmaWVyOyB9CisKKyAgICB2b2lkIHNjaGVkdWxlSW50cmluc2ljQ29udGVudFNp
emVVcGRhdGUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworICAgIHZvaWQgZmx1c2hQZW5kaW5n
SW50cmluc2ljQ29udGVudFNpemVVcGRhdGUoKTsKKyAgICB2b2lkIHVwZGF0ZUludHJpbnNpY0Nv
bnRlbnRTaXplSWZOZWVkZWQoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworCisgICAgdm9pZCBz
Y2hlZHVsZUZ1bGxFZGl0b3JTdGF0ZVVwZGF0ZSgpOworICAgIGJvb2wgaXNUaHJvdHRsZWFibGUo
KSBjb25zdDsKKworICAgIGJvb2wgdXNlcklzSW50ZXJhY3RpbmcoKSBjb25zdCB7IHJldHVybiBt
X3VzZXJJc0ludGVyYWN0aW5nOyB9CisgICAgdm9pZCBzZXRVc2VySXNJbnRlcmFjdGluZyhib29s
IHVzZXJJc0ludGVyYWN0aW5nKSB7IG1fdXNlcklzSW50ZXJhY3RpbmcgPSB1c2VySXNJbnRlcmFj
dGluZzsgfQorCisgICAgYm9vbCBmaXJzdEZsdXNoQWZ0ZXJDb21taXQoKSBjb25zdCB7IHJldHVy
biBtX2ZpcnN0Rmx1c2hBZnRlckNvbW1pdDsgfQorICAgIHZvaWQgc2V0Rmlyc3RGbHVzaEFmdGVy
Q29tbWl0KGJvb2wgZikgeyBtX2ZpcnN0Rmx1c2hBZnRlckNvbW1pdCA9IGY7IH0KKworI2lmIFBM
QVRGT1JNKElPU19GQU1JTFkpCisgICAgLy8gVGhpcyBleGNsdWRlcyBsYXlvdXQgb3ZlcmZsb3cs
IGluY2x1ZGVzIGJvcmRlcnMuCisgICAgc3RhdGljIFdlYkNvcmU6OkludFJlY3Qgcm9vdFZpZXdC
b3VuZHMoY29uc3QgV2ViQ29yZTo6Tm9kZSYpOworICAgIC8vIFRoZXNlIGluY2x1ZGUgbGF5b3V0
IG92ZXJmbG93IGZvciBvdmVyZmxvdzp2aXNpYmxlIGVsZW1lbnRzLCBidXQgZXhjbHVkZSBib3Jk
ZXJzLgorICAgIHN0YXRpYyBXZWJDb3JlOjpJbnRSZWN0IGFic29sdXRlSW50ZXJhY3Rpb25Cb3Vu
ZHMoY29uc3QgV2ViQ29yZTo6Tm9kZSYpOworICAgIHN0YXRpYyBXZWJDb3JlOjpJbnRSZWN0IHJv
b3RWaWV3SW50ZXJhY3Rpb25Cb3VuZHMoY29uc3QgV2ViQ29yZTo6Tm9kZSYpOworCisgICAgSW50
ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24gcG9zaXRpb25JbmZvcm1hdGlvbihjb25zdCBJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdCYpOworICAgIAorI2VuZGlmIC8vIFBMQVRGT1JN
KElPU19GQU1JTFkpCisKKyNpZiBVU0UoUVVJQ0tfTE9PSykKKyAgICB2b2lkIGRpZFN0YXJ0TG9h
ZEZvclF1aWNrTG9va0RvY3VtZW50SW5NYWluRnJhbWUoY29uc3QgU3RyaW5nJiBmaWxlTmFtZSwg
Y29uc3QgU3RyaW5nJiB1dGkpOworICAgIHZvaWQgZGlkRmluaXNoTG9hZEZvclF1aWNrTG9va0Rv
Y3VtZW50SW5NYWluRnJhbWUoY29uc3QgV2ViQ29yZTo6U2hhcmVkQnVmZmVyJik7CisgICAgdm9p
ZCByZXF1ZXN0UGFzc3dvcmRGb3JRdWlja0xvb2tEb2N1bWVudEluTWFpbkZyYW1lKGNvbnN0IFN0
cmluZyYgZmlsZU5hbWUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYp
OworI2VuZGlmCisKKyAgICBjb25zdCBTdHJpbmcmIG92ZXJyaWRkZW5NZWRpYVR5cGUoKSBjb25z
dCB7IHJldHVybiBtX292ZXJyaWRkZW5NZWRpYVR5cGU7IH0KKyAgICB2b2lkIHNldE92ZXJyaWRk
ZW5NZWRpYVR5cGUoY29uc3QgU3RyaW5nJik7CisKKyAgICB2b2lkIHVwZGF0ZUNPUlNEaXNhYmxp
bmdQYXR0ZXJucyhWZWN0b3I8U3RyaW5nPiYmKTsKKworI2lmIEVOQUJMRShJUENfVEVTVElOR19B
UEkpCisgICAgYm9vbCBpcGNUZXN0aW5nQVBJRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXBj
VGVzdGluZ0FQSUVuYWJsZWQ7IH0KKyAgICB1aW50NjRfdCB3ZWJQYWdlUHJveHlJRCgpIGNvbnN0
IHsgcmV0dXJuIG1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCk7IH0KKyAgICB1aW50NjRfdCB2
aXNpdGVkTGlua1RhYmxlSUQoKSBjb25zdCB7IHJldHVybiBtX3Zpc2l0ZWRMaW5rVGFibGVJRDsg
fQorI2VuZGlmCisKKyAgICB2b2lkIGdldFByb2Nlc3NEaXNwbGF5TmFtZShDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKFN0cmluZyYmKT4mJik7CisKKyAgICBXZWJDb3JlOjpBbGxvd3NDb250ZW50SmF2
YVNjcmlwdCBhbGxvd3NDb250ZW50SmF2YVNjcmlwdEZyb21Nb3N0UmVjZW50TmF2aWdhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fYWxsb3dzQ29udGVudEphdmFTY3JpcHRGcm9tTW9zdFJlY2VudE5h
dmlnYXRpb247IH0KKyAgICB2b2lkIHNldEFsbG93c0NvbnRlbnRKYXZhU2NyaXB0RnJvbU1vc3RS
ZWNlbnROYXZpZ2F0aW9uKFdlYkNvcmU6OkFsbG93c0NvbnRlbnRKYXZhU2NyaXB0IGFsbG93cykg
eyBtX2FsbG93c0NvbnRlbnRKYXZhU2NyaXB0RnJvbU1vc3RSZWNlbnROYXZpZ2F0aW9uID0gYWxs
b3dzOyB9CisKKyAgICB2b2lkIGdldEFsbEZyYW1lcyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEZy
YW1lVHJlZU5vZGVEYXRhJiYpPiYmKTsKKworI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykK
KyAgICB2b2lkIG5vdGlmeVBhZ2VPZkFwcEJvdW5kQmVoYXZpb3IoKTsKKyAgICB2b2lkIHNldElz
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4oc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBC
b3VuZERvbWFpbj4sIFdlYkZyYW1lKik7CisgICAgYm9vbCBuZWVkc0luQXBwQnJvd3NlclByaXZh
Y3lRdWlya3MoKSB7IHJldHVybiBtX25lZWRzSW5BcHBCcm93c2VyUHJpdmFjeVF1aXJrczsgfQor
I2VuZGlmCisKKyNpZiBFTkFCTEUoTUVESUFfVVNBR0UpCisgICAgdm9pZCBhZGRNZWRpYVVzYWdl
TWFuYWdlclNlc3Npb24oV2ViQ29yZTo6TWVkaWFTZXNzaW9uSWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiwgY29uc3QgVVJMJik7CisgICAgdm9pZCB1cGRhdGVNZWRpYVVzYWdlTWFuYWdlclNlc3Np
b25TdGF0ZShXZWJDb3JlOjpNZWRpYVNlc3Npb25JZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpN
ZWRpYVVzYWdlSW5mbyYpOworICAgIHZvaWQgcmVtb3ZlTWVkaWFVc2FnZU1hbmFnZXJTZXNzaW9u
KFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbklkZW50aWZpZXIpOworI2VuZGlmCisKKyAgICB2b2lkIGlz
UGxheWluZ01lZGlhRGlkQ2hhbmdlKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok1lZGlhU3RhdGVG
bGFncyk7CisKKyNpZiBFTkFCTEUoSU1BR0VfQU5BTFlTSVMpCisgICAgdm9pZCByZXF1ZXN0VGV4
dFJlY29nbml0aW9uKFdlYkNvcmU6OkVsZW1lbnQmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJl
ZlB0cjxXZWJDb3JlOjpFbGVtZW50PiYmKT4mJik7CisgICAgdm9pZCB1cGRhdGVXaXRoVGV4dFJl
Y29nbml0aW9uUmVzdWx0KGNvbnN0IFdlYkNvcmU6OlRleHRSZWNvZ25pdGlvblJlc3VsdCYsIGNv
bnN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0JiwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYg
bG9jYXRpb24sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVGV4dFJlY29nbml0aW9uVXBkYXRlUmVz
dWx0KT4mJik7CisjZW5kaWYKKworI2lmIEhBVkUoVFJBTlNMQVRJT05fVUlfU0VSVklDRVMpICYm
IEVOQUJMRShDT05URVhUX01FTlVTKQorICAgIHZvaWQgaGFuZGxlQ29udGV4dE1lbnVUcmFuc2xh
dGlvbihjb25zdCBXZWJDb3JlOjpUcmFuc2xhdGlvbkNvbnRleHRNZW51SW5mbyYpOworI2VuZGlm
CisKKyNpZiBFTkFCTEUoTUVESUFfQ09OVFJPTFNfQ09OVEVYVF9NRU5VUykgJiYgVVNFKFVJQ09O
VEVYVE1FTlUpCisgICAgdm9pZCBzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KFdlYkNvcmU6
OkZsb2F0UmVjdCYmLCBWZWN0b3I8V2ViQ29yZTo6TWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRl
bT4mJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpNZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnVJdGVtOjpJRCk+JiYpOworI2VuZGlmIC8vIEVOQUJMRShNRURJQV9DT05UUk9MU19DT05U
RVhUX01FTlVTKSAmJiBVU0UoVUlDT05URVhUTUVOVSkKKworI2lmIFBMQVRGT1JNKFdJTikKKyAg
ICB1aW50NjRfdCBuYXRpdmVXaW5kb3dIYW5kbGUoKSB7IHJldHVybiBtX25hdGl2ZVdpbmRvd0hh
bmRsZTsgfQorI2VuZGlmCisKKyAgICBzdGF0aWMgdm9pZCB1cGRhdGVQcmVmZXJlbmNlc0dlbmVy
YXRlZChjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJik7CisKKyAgICB2b2lkIHN5bmNocm9uaXpl
Q09SU0Rpc2FibGluZ1BhdHRlcm5zV2l0aE5ldHdvcmtQcm9jZXNzKCk7CisKKyNpZiBFTkFCTEUo
R1BVX1BST0NFU1MpCisgICAgdm9pZCBncHVQcm9jZXNzQ29ubmVjdGlvbkRpZEJlY29tZUF2YWls
YWJsZShHUFVQcm9jZXNzQ29ubmVjdGlvbiYpOworICAgIFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRQ
cm94eSYgZW5zdXJlUmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5KCk7CisjZW5kaWYKKworI2lm
IEVOQUJMRShBUFBfSElHSExJR0hUUykKKyAgICBXZWJDb3JlOjpDcmVhdGVOZXdHcm91cEZvckhp
Z2hsaWdodCBoaWdobGlnaHRJc05ld0dyb3VwKCkgY29uc3QgeyByZXR1cm4gbV9oaWdobGlnaHRJ
c05ld0dyb3VwOyB9CisgICAgV2ViQ29yZTo6SGlnaGxpZ2h0UmVxdWVzdE9yaWdpbmF0ZWRJbkFw
cCBoaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwKCkgY29uc3QgeyByZXR1cm4gbV9oaWdo
bGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwOyB9CisgICAgV2ViQ29yZTo6SGlnaGxpZ2h0Vmlz
aWJpbGl0eSBhcHBIaWdobGlnaHRzVmlzaWJsaWxpdHkoKSBjb25zdCB7IHJldHVybiBtX2FwcEhp
Z2hsaWdodHNWaXNpYmxlOyB9CisKKyAgICBib29sIGNyZWF0ZUFwcEhpZ2hsaWdodEluU2VsZWN0
ZWRSYW5nZShXZWJDb3JlOjpDcmVhdGVOZXdHcm91cEZvckhpZ2hsaWdodCwgV2ViQ29yZTo6SGln
aGxpZ2h0UmVxdWVzdE9yaWdpbmF0ZWRJbkFwcCk7CisgICAgdm9pZCByZXN0b3JlQXBwSGlnaGxp
Z2h0c0FuZFNjcm9sbFRvSW5kZXgoY29uc3QgVmVjdG9yPFNoYXJlZE1lbW9yeTo6SVBDSGFuZGxl
PiYmLCBjb25zdCBzdGQ6Om9wdGlvbmFsPHVuc2lnbmVkPiBpbmRleCk7CisgICAgdm9pZCBzZXRB
cHBIaWdobGlnaHRzVmlzaWJpbGl0eShjb25zdCBXZWJDb3JlOjpIaWdobGlnaHRWaXNpYmlsaXR5
KTsKKyNlbmRpZgorCisgICAgdm9pZCBkaXNwYXRjaFdoZWVsRXZlbnRXaXRob3V0U2Nyb2xsaW5n
KGNvbnN0IFdlYldoZWVsRXZlbnQmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsK
KworI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQorICAgIGJvb2wgc2hvdWxkVXNlUERGUGx1Z2lu
KGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFN0cmluZ1ZpZXcgcGF0aCkgY29uc3Q7CisjZW5k
aWYKKworI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OX0NPT1JESU5BVE9SKQorICAgIHZvaWQgY3Jl
YXRlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IoY29uc3QgU3RyaW5nJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCBpbnZhbGlkYXRlTWVkaWFTZXNzaW9uQ29vcmRp
bmF0b3IoKTsKKyNlbmRpZgorCisgICAgdm9pZCBzZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRp
YXRlZChib29sIHdhc0FwcEJvdW5kKSB7IG1fbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQg
PSB3YXNBcHBCb3VuZDsgfQorICAgIHZvaWQgbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQo
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CisKKyAgICBib29sIGlzUGFyZW50UHJv
Y2Vzc0FXZWJCcm93c2VyKCkgY29uc3Q7CisKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQor
ICAgIHZvaWQgdGV4dEF1dG9zaXppbmdVc2VzSWRlbXBvdGVudE1vZGVDaGFuZ2VkKCk7CisjZW5k
aWYKKworI2lmIEVOQUJMRShXRUJYUikgJiYgIVVTRShPUEVOWFIpCisgICAgUGxhdGZvcm1YUlN5
c3RlbVByb3h5JiB4clN5c3RlbVByb3h5KCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShBUktJVF9J
TkxJTkVfUFJFVklFV19JT1MpCisgICAgdm9pZCB0YWtlTW9kZWxFbGVtZW50RnVsbHNjcmVlbihX
ZWJDb3JlOjpHcmFwaGljc0xheWVyOjpQbGF0Zm9ybUxheWVySUQgY29udGVudExheWVySWQpOwor
I2VuZGlmCisjaWYgRU5BQkxFKEFSS0lUX0lOTElORV9QUkVWSUVXX01BQykKKyAgICB2b2lkIG1v
ZGVsRWxlbWVudERpZENyZWF0ZVByZXZpZXcoV2ViQ29yZTo6SFRNTE1vZGVsRWxlbWVudCYsIGNv
bnN0IFVSTCYsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OkZsb2F0U2l6ZSYpOworICAg
IHZvaWQgbW9kZWxFbGVtZW50UHJldmlld0RpZE9idGFpbkNvbnRleHRJZChjb25zdCBXZWJDb3Jl
OjpFbGVtZW50Q29udGV4dCYsIGNvbnN0IFN0cmluZyYsIHVpbnQzMl90KTsKKyNlbmRpZgorCisg
ICAgdm9pZCBwcmVwYXJlVG9SdW5Nb2RhbEphdmFTY3JpcHREaWFsb2coKTsKKworcHJpdmF0ZToK
KyAgICBXZWJQYWdlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzJiYpOworCisgICAgdm9pZCB1cGRhdGVUaHJvdHRsZVN0YXRlKCk7CisKKyAgICAvLyBJ
UEM6Ok1lc3NhZ2VTZW5kZXIKKyAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5kZXJDb25u
ZWN0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3Rp
bmF0aW9uSUQoKSBjb25zdCBvdmVycmlkZTsKKworICAgIHZvaWQgcGxhdGZvcm1Jbml0aWFsaXpl
KCk7CisgICAgdm9pZCBwbGF0Zm9ybVJlaW5pdGlhbGl6ZSgpOworICAgIHZvaWQgcGxhdGZvcm1E
ZXRhY2goKTsKKyAgICB2b2lkIGdldFBsYXRmb3JtRWRpdG9yU3RhdGUoV2ViQ29yZTo6RnJhbWUm
LCBFZGl0b3JTdGF0ZSYpIGNvbnN0OworICAgIGJvb2wgcmVxdWlyZXNQb3N0TGF5b3V0RGF0YUZv
ckVkaXRvclN0YXRlKGNvbnN0IFdlYkNvcmU6OkZyYW1lJikgY29uc3Q7CisgICAgdm9pZCBwbGF0
Zm9ybVdpbGxQZXJmb3JtRWRpdGluZ0NvbW1hbmQoKTsKKyAgICB2b2lkIHNlbmRFZGl0b3JTdGF0
ZVVwZGF0ZSgpOworICAgIHZvaWQgZ2V0UGxhdGZvcm1FZGl0b3JTdGF0ZUNvbW1vbihjb25zdCBX
ZWJDb3JlOjpGcmFtZSYsIEVkaXRvclN0YXRlJikgY29uc3Q7CisKKyNpZiBIQVZFKFRPVUNIX0JB
UikKKyAgICB2b2lkIHNlbmRUb3VjaEJhck1lbnVEYXRhQWRkZWRVcGRhdGUoV2ViQ29yZTo6SFRN
TE1lbnVFbGVtZW50Jik7CisgICAgdm9pZCBzZW5kVG91Y2hCYXJNZW51RGF0YVJlbW92ZWRVcGRh
dGUoV2ViQ29yZTo6SFRNTE1lbnVFbGVtZW50Jik7CisgICAgdm9pZCBzZW5kVG91Y2hCYXJNZW51
SXRlbURhdGFBZGRlZFVwZGF0ZShXZWJDb3JlOjpIVE1MTWVudUl0ZW1FbGVtZW50Jik7CisgICAg
dm9pZCBzZW5kVG91Y2hCYXJNZW51SXRlbURhdGFSZW1vdmVkVXBkYXRlKFdlYkNvcmU6OkhUTUxN
ZW51SXRlbUVsZW1lbnQmKTsKKyNlbmRpZgorCisgICAgYm9vbCBkaWRSZWNlaXZlU3luY1dlYlBh
Z2VNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYsIFVuaXF1ZVJlZjxJUEM6
OkVuY29kZXI+Jik7CisKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIHZvaWQgdXBkYXRl
Vmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cygpOworCisgICAgc3RkOjpvcHRpb25hbDxG
b2N1c2VkRWxlbWVudEluZm9ybWF0aW9uPiBmb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uKCk7Cisg
ICAgdm9pZCBwbGF0Zm9ybUluaXRpYWxpemVBY2Nlc3NpYmlsaXR5KCk7CisgICAgdm9pZCBnZW5l
cmF0ZVN5bnRoZXRpY0VkaXRpbmdDb21tYW5kKFN5bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZSk7
CisgICAgdm9pZCBoYW5kbGVTeW50aGV0aWNDbGljayhXZWJDb3JlOjpOb2RlJiBub2RlUmVzcG9u
ZGluZ1RvQ2xpY2ssIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIGxvY2F0aW9uLCBPcHRpb25T
ZXQ8V2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXI+LCBXZWJDb3JlOjpQb2ludGVySUQgPSBXZWJD
b3JlOjptb3VzZVBvaW50ZXJJRCk7CisgICAgdm9pZCBjb21wbGV0ZVN5bnRoZXRpY0NsaWNrKFdl
YkNvcmU6Ok5vZGUmIG5vZGVSZXNwb25kaW5nVG9DbGljaywgY29uc3QgV2ViQ29yZTo6RmxvYXRQ
b2ludCYgbG9jYXRpb24sIE9wdGlvblNldDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcj4sIFdl
YkNvcmU6OlN5bnRoZXRpY0NsaWNrVHlwZSwgV2ViQ29yZTo6UG9pbnRlcklEID0gV2ViQ29yZTo6
bW91c2VQb2ludGVySUQpOworICAgIHZvaWQgc2VuZFRhcEhpZ2hsaWdodEZvck5vZGVJZk5lY2Vz
c2FyeShXZWJLaXQ6OlRhcElkZW50aWZpZXIsIFdlYkNvcmU6Ok5vZGUqKTsKKyAgICBXZWJDb3Jl
OjpWaXNpYmxlUG9zaXRpb24gdmlzaWJsZVBvc2l0aW9uSW5Gb2N1c2VkTm9kZUZvclBvaW50KGNv
bnN0IFdlYkNvcmU6OkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBib29sIGlzSW50
ZXJhY3RpbmdXaXRoRm9jdXNlZEVsZW1lbnQpOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6
U2ltcGxlUmFuZ2U+IHJhbmdlRm9yR3JhbnVsYXJpdHlBdFBvaW50KFdlYkNvcmU6OkZyYW1lJiwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHksIGJvb2wg
aXNJbnRlcmFjdGluZ1dpdGhGb2N1c2VkRWxlbWVudCk7CisgICAgdm9pZCBzZXRGb2N1c2VkRnJh
bWVCZWZvcmVTZWxlY3RpbmdUZXh0QXRMb2NhdGlvbihjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYp
OworICAgIHZvaWQgZGlzcGF0Y2hTeW50aGV0aWNNb3VzZUV2ZW50c0ZvclNlbGVjdGlvbkdlc3R1
cmUoU2VsZWN0aW9uVG91Y2gsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7CisKKyAgICB2b2lk
IHNlbmRQb3NpdGlvbkluZm9ybWF0aW9uKEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9u
JiYpOworICAgIFJlZlB0cjxTaGFyZWFibGVCaXRtYXA+IHNoYXJlYWJsZUJpdG1hcFNuYXBzaG90
Rm9yTm9kZShXZWJDb3JlOjpFbGVtZW50Jik7CisgICAgV2ViQXV0b2NvcnJlY3Rpb25Db250ZXh0
IGF1dG9jb3JyZWN0aW9uQ29udGV4dCgpOworICAgIGJvb2wgYXBwbHlBdXRvY29ycmVjdGlvbklu
dGVybmFsKGNvbnN0IFN0cmluZyYgY29ycmVjdGlvbiwgY29uc3QgU3RyaW5nJiBvcmlnaW5hbFRl
eHQpOworICAgIHZvaWQgY2xlYXJTZWxlY3Rpb25BZnRlclRhcElmTmVlZGVkKCk7CisjZW5kaWYK
KworI2lmIEVOQUJMRShNRVRBX1ZJRVdQT1JUKQorICAgIHZvaWQgcmVzZXRWaWV3cG9ydERlZmF1
bHRDb25maWd1cmF0aW9uKFdlYkZyYW1lKiBtYWluRnJhbWUsIGJvb2wgaGFzTW9iaWxlRG9jVHlw
ZSA9IGZhbHNlKTsKKyAgICBlbnVtIGNsYXNzIFpvb21Ub0luaXRpYWxTY2FsZSB7IE5vLCBZZXMg
fTsKKyAgICB2b2lkIHZpZXdwb3J0Q29uZmlndXJhdGlvbkNoYW5nZWQoWm9vbVRvSW5pdGlhbFNj
YWxlID0gWm9vbVRvSW5pdGlhbFNjYWxlOjpObyk7CisgICAgYm9vbCBzaG91bGRJZ25vcmVNZXRh
Vmlld3BvcnQoKSBjb25zdDsKKyNlbmRpZgorCisjaWYgRU5BQkxFKFRFWFRfQVVUT1NJWklORykK
KyAgICB2b2lkIHRleHRBdXRvU2l6aW5nQWRqdXN0bWVudFRpbWVyRmlyZWQoKTsKKyAgICB2b2lk
IHJlc2V0SWRlbXBvdGVudFRleHRBdXRvc2l6aW5nSWZOZWVkZWQoZG91YmxlIHByZXZpb3VzSW5p
dGlhbFNjYWxlKTsKKyNlbmRpZgorICAgIHZvaWQgcmVzZXRUZXh0QXV0b3NpemluZygpOworCisj
aWYgRU5BQkxFKFZJRVdQT1JUX1JFU0laSU5HKQorICAgIHZvaWQgc2hyaW5rVG9GaXRDb250ZW50
KFpvb21Ub0luaXRpYWxTY2FsZSA9IFpvb21Ub0luaXRpYWxTY2FsZTo6Tm8pOworI2VuZGlmCisK
KyNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoRFJBR19TVVBQT1JUKQorICAgIHZv
aWQgcmVxdWVzdERyYWdTdGFydChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgY2xpZW50UG9zaXRp
b24sIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBnbG9iYWxQb3NpdGlvbiwgT3B0aW9uU2V0PFdl
YkNvcmU6OkRyYWdTb3VyY2VBY3Rpb24+IGFsbG93ZWRBY3Rpb25zTWFzayk7CisgICAgdm9pZCBy
ZXF1ZXN0QWRkaXRpb25hbEl0ZW1zRm9yRHJhZ1Nlc3Npb24oY29uc3QgV2ViQ29yZTo6SW50UG9p
bnQmIGNsaWVudFBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgZ2xvYmFsUG9zaXRp
b24sIE9wdGlvblNldDxXZWJDb3JlOjpEcmFnU291cmNlQWN0aW9uPiBhbGxvd2VkQWN0aW9uc01h
c2spOworICAgIHZvaWQgaW5zZXJ0RHJvcHBlZEltYWdlUGxhY2Vob2xkZXJzKGNvbnN0IFZlY3Rv
cjxXZWJDb3JlOjpJbnRTaXplPiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9y
PFdlYkNvcmU6OkludFJlY3Q+Jiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpUZXh0SW5kaWNhdG9y
RGF0YT4pPiYmIHJlcGx5KTsKKyAgICB2b2lkIGNvbXB1dGVBbmRTZW5kRWRpdERyYWdTbmFwc2hv
dCgpOworI2VuZGlmCisKKyNpZiAhUExBVEZPUk0oQ09DT0EpICYmICFQTEFURk9STShXUEUpCisg
ICAgc3RhdGljIGNvbnN0IGNoYXIqIGludGVycHJldEtleUV2ZW50KGNvbnN0IFdlYkNvcmU6Oktl
eWJvYXJkRXZlbnQqKTsKKyNlbmRpZgorCisgICAgYm9vbCBwZXJmb3JtRGVmYXVsdEJlaGF2aW9y
Rm9yS2V5RXZlbnQoY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYpOworICAgIGJvb2wgaGFuZGxlS2V5
RXZlbnRCeVJlbGlucXVpc2hpbmdGb2N1c1RvQ2hyb21lKGNvbnN0IFdlYkNvcmU6OktleWJvYXJk
RXZlbnQmKTsKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBib29sIGV4ZWN1dGVLZXlwcmVzc0Nv
bW1hbmRzSW50ZXJuYWwoY29uc3QgVmVjdG9yPFdlYkNvcmU6OktleXByZXNzQ29tbWFuZD4mLCBX
ZWJDb3JlOjpLZXlib2FyZEV2ZW50Kik7CisjZW5kaWYKKworICAgIHZvaWQgdGVzdFByb2Nlc3NJ
bmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0aW5nRm9yU3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJQ
YWdlOjpUZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGb3JTeW5jUmVw
bHlEZWxheWVkUmVwbHkmJik7CisKKyAgICB2b2lkIHVwZGF0ZURyYXdpbmdBcmVhTGF5ZXJUcmVl
RnJlZXplU3RhdGUoKTsKKyAgICBib29sIG1hcmtMYXllcnNWb2xhdGlsZUltbWVkaWF0ZWx5SWZQ
b3NzaWJsZSgpOworICAgIHZvaWQgbGF5ZXJWb2xhdGlsaXR5VGltZXJGaXJlZCgpOworICAgIHZv
aWQgY2FsbFZvbGF0aWxpdHlDb21wbGV0aW9uSGFuZGxlcnMoYm9vbCBzdWNjZWVkZWQpOworCisg
ICAgU3RyaW5nIHNvdXJjZUZvckZyYW1lKFdlYkZyYW1lKik7CisKKyAgICB2b2lkIGxvYWREYXRh
SW1wbCh1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRhPiYmLCBSZWY8V2ViQ29y
ZTo6U2hhcmVkQnVmZmVyPiYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYmLCBjb25zdCBVUkwmIGZhaWxpbmdVUkwsIGNvbnN0IFVzZXJEYXRh
Jiwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4sIFdlYkNvcmU6OlN1
YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlzdG9yeVZpc2liaWxpdHksIFdlYkNvcmU6OlNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3kgPSBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5OjpTaG91bGROb3RBbGxvdyk7CisKKyAgICAvLyBBY3Rpb25zCisgICAgdm9pZCB0cnlDbG9z
ZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2b2lkIHBsYXRmb3JtRGlk
UmVjZWl2ZUxvYWRQYXJhbWV0ZXJzKGNvbnN0IExvYWRQYXJhbWV0ZXJzJik7CisgICAgdm9pZCBs
b2FkUmVxdWVzdChMb2FkUGFyYW1ldGVycyYmKTsKKyAgICBOT19SRVRVUk4gdm9pZCBsb2FkUmVx
dWVzdFdhaXRpbmdGb3JQcm9jZXNzTGF1bmNoKExvYWRQYXJhbWV0ZXJzJiYsIFVSTCYmLCBXZWJQ
YWdlUHJveHlJZGVudGlmaWVyLCBib29sKTsKKyAgICB2b2lkIGxvYWREYXRhKExvYWRQYXJhbWV0
ZXJzJiYpOworICAgIHZvaWQgbG9hZEFsdGVybmF0ZUhUTUwoTG9hZFBhcmFtZXRlcnMmJik7Cisg
ICAgdm9pZCBsb2FkU2ltdWxhdGVkUmVxdWVzdEFuZFJlc3BvbnNlKExvYWRQYXJhbWV0ZXJzJiYs
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJik7CisgICAgdm9pZCBuYXZpZ2F0ZVRvUERGTGlu
a1dpdGhTaW11bGF0ZWRDbGljayhjb25zdCBTdHJpbmcmIHVybCwgV2ViQ29yZTo6SW50UG9pbnQg
ZG9jdW1lbnRQb2ludCwgV2ViQ29yZTo6SW50UG9pbnQgc2NyZWVuUG9pbnQpOworICAgIHZvaWQg
Z2V0UERGRmlyc3RQYWdlU2l6ZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoV2ViQ29yZTo6RmxvYXRTaXplKT4mJik7CisgICAgdm9pZCByZWxvYWQodWlu
dDY0X3QgbmF2aWdhdGlvbklELCB1aW50MzJfdCByZWxvYWRPcHRpb25zLCBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUmJik7CisgICAgdm9pZCBnb1RvQmFja0ZvcndhcmRJdGVtKHVpbnQ2NF90IG5h
dmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6QmFja0ZvcndhcmRJdGVtSWRlbnRpZmllciYsIFdl
YkNvcmU6OkZyYW1lTG9hZFR5cGUsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51aW5nTG9h
ZCwgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRhPiYmLCBib29sIGxhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKTsKKyAgICB2b2lkIHRyeVJlc3RvcmVTY3JvbGxQb3NpdGlvbigp
OworICAgIHZvaWQgc2V0SW5pdGlhbEZvY3VzKGJvb2wgZm9yd2FyZCwgYm9vbCBpc0tleWJvYXJk
RXZlbnRWYWxpZCwgY29uc3QgV2ViS2V5Ym9hcmRFdmVudCYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoKT4mJik7CisgICAgdm9pZCB1cGRhdGVJc0luV2luZG93KGJvb2wgaXNJbml0aWFsU3RhdGUg
PSBmYWxzZSk7CisgICAgdm9pZCB2aXNpYmlsaXR5RGlkQ2hhbmdlKCk7CisgICAgdm9pZCBzZXRB
Y3Rpdml0eVN0YXRlKE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiwgQWN0
aXZpdHlTdGF0ZUNoYW5nZUlELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZv
aWQgdmFsaWRhdGVDb21tYW5kKGNvbnN0IFN0cmluZyYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCwgaW50MzJfdCk+JiYpOworICAgIHZvaWQgZXhlY3V0ZUVkaXRDb21tYW5kKGNvbnN0IFN0
cmluZyYsIGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgc2V0RWRpdGFibGUoYm9vbCk7CisKKyAg
ICB2b2lkIGRpZENoYW5nZVNlbGVjdGlvbk9yT3ZlcmZsb3dTY3JvbGxQb3NpdGlvbigpOworCisg
ICAgdm9pZCBpbmNyZWFzZUxpc3RMZXZlbCgpOworICAgIHZvaWQgZGVjcmVhc2VMaXN0TGV2ZWwo
KTsKKyAgICB2b2lkIGNoYW5nZUxpc3RUeXBlKCk7CisKKyAgICB2b2lkIHNldEJhc2VXcml0aW5n
RGlyZWN0aW9uKFdlYkNvcmU6OldyaXRpbmdEaXJlY3Rpb24pOworCisgICAgdm9pZCBzZXROZWVk
c0ZvbnRBdHRyaWJ1dGVzKGJvb2wpOworCisgICAgdm9pZCBtb3VzZUV2ZW50KGNvbnN0IFdlYk1v
dXNlRXZlbnQmLCBzdGQ6Om9wdGlvbmFsPFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+
PiYmIHNhbmRib3hFeHRlbnNpb25zKTsKKyAgICB2b2lkIGtleUV2ZW50KGNvbnN0IFdlYktleWJv
YXJkRXZlbnQmKTsKKworI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorICAgIHZvaWQgdG91
Y2hFdmVudFN5bmMoY29uc3QgV2ViVG91Y2hFdmVudCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYpOworICAgIHZvaWQgcmVzZXRQb3RlbnRpYWxUYXBTZWN1cml0eU9yaWdpbigpOwor
ICAgIHZvaWQgdXBkYXRlUG90ZW50aWFsVGFwU2VjdXJpdHlPcmlnaW4oY29uc3QgV2ViVG91Y2hF
dmVudCYsIGJvb2wgd2FzSGFuZGxlZCk7CisjZWxpZiBFTkFCTEUoVE9VQ0hfRVZFTlRTKQorICAg
IHZvaWQgdG91Y2hFdmVudChjb25zdCBXZWJUb3VjaEV2ZW50Jik7CisjZW5kaWYKKworICAgIHZv
aWQgY2FuY2VsUG9pbnRlcihXZWJDb3JlOjpQb2ludGVySUQsIGNvbnN0IFdlYkNvcmU6OkludFBv
aW50Jik7CisgICAgdm9pZCB0b3VjaFdpdGhJZGVudGlmaWVyV2FzUmVtb3ZlZChXZWJDb3JlOjpQ
b2ludGVySUQpOworCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgdm9pZCBkaWRTaG93
Q29udGV4dE1lbnUoKTsKKyAgICB2b2lkIGRpZERpc21pc3NDb250ZXh0TWVudSgpOworI2VuZGlm
CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVV9FVkVOVCkKKyAgICB2b2lkIGNvbnRleHRNZW51Rm9y
S2V5RXZlbnQoKTsKKyNlbmRpZgorCisgICAgc3RhdGljIGJvb2wgc2Nyb2xsKFdlYkNvcmU6OlBh
Z2UqLCBXZWJDb3JlOjpTY3JvbGxEaXJlY3Rpb24sIFdlYkNvcmU6OlNjcm9sbEdyYW51bGFyaXR5
KTsKKyAgICBzdGF0aWMgYm9vbCBsb2dpY2FsU2Nyb2xsKFdlYkNvcmU6OlBhZ2UqLCBXZWJDb3Jl
OjpTY3JvbGxMb2dpY2FsRGlyZWN0aW9uLCBXZWJDb3JlOjpTY3JvbGxHcmFudWxhcml0eSk7CisK
KyAgICB2b2lkIGxvYWRVUkxJbkZyYW1lKFVSTCYmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBX
ZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIpOworICAgIHZvaWQgbG9hZERhdGFJbkZyYW1lKElQQzo6
RGF0YVJlZmVyZW5jZSYmLCBTdHJpbmcmJiBNSU1FVHlwZSwgU3RyaW5nJiYgZW5jb2RpbmdOYW1l
LCBVUkwmJiBiYXNlVVJMLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIpOworCisgICAgZW51bSBj
bGFzcyBXYXNSZXN0b3JlZEJ5QVBJUmVxdWVzdCB7IE5vLCBZZXMgfTsKKyAgICB2b2lkIHJlc3Rv
cmVTZXNzaW9uSW50ZXJuYWwoY29uc3QgVmVjdG9yPEJhY2tGb3J3YXJkTGlzdEl0ZW1TdGF0ZT4m
LCBXYXNSZXN0b3JlZEJ5QVBJUmVxdWVzdCwgV2ViQmFja0ZvcndhcmRMaXN0UHJveHk6Ok92ZXJ3
cml0ZUV4aXN0aW5nSXRlbSk7CisgICAgdm9pZCByZXN0b3JlU2Vzc2lvbihjb25zdCBWZWN0b3I8
QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlPiYpOworICAgIHZvaWQgZGlkUmVtb3ZlQmFja0Zvcndh
cmRJdGVtKGNvbnN0IFdlYkNvcmU6OkJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXImKTsKKyAgICB2
b2lkIHVwZGF0ZUJhY2tGb3J3YXJkTGlzdEZvclJlYXR0YWNoKGNvbnN0IFZlY3RvcjxXZWJLaXQ6
OkJhY2tGb3J3YXJkTGlzdEl0ZW1TdGF0ZT4mKTsKKyAgICB2b2lkIHNldEN1cnJlbnRIaXN0b3J5
SXRlbUZvclJlYXR0YWNoKFdlYktpdDo6QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlJiYpOworCisg
ICAgdm9pZCByZXF1ZXN0Rm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0KENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6Rm9udEF0dHJpYnV0ZXMmKT4mJik7CisKKyNpZiBF
TkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikKKyAgICB2b2lkIHNldEluZGljYXRpbmcoYm9vbCk7Cisj
ZW5kaWYKKworICAgIHZvaWQgc2V0QmFja2dyb3VuZENvbG9yKGNvbnN0IHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6Q29sb3I+Jik7CisKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIHNldFRv
cENvbnRlbnRJbnNldEZlbmNlZChmbG9hdCwgY29uc3QgV1RGOjpNYWNoU2VuZFJpZ2h0Jik7Cisj
ZW5kaWYKKyAgICB2b2lkIHNldFRvcENvbnRlbnRJbnNldChmbG9hdCk7CisKKyAgICB2b2lkIHZp
ZXdXaWxsU3RhcnRMaXZlUmVzaXplKCk7CisgICAgdm9pZCB2aWV3V2lsbEVuZExpdmVSZXNpemUo
KTsKKworICAgIHZvaWQgZ2V0Q29udGVudHNBc1N0cmluZyhDb250ZW50QXNTdHJpbmdJbmNsdWRl
c0NoaWxkRnJhbWVzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFN0cmluZyYpPiYmKTsK
KyNpZiBQTEFURk9STShDT0NPQSkKKyAgICB2b2lkIGdldENvbnRlbnRzQXNBdHRyaWJ1dGVkU3Ry
aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6QXR0cmlidXRlZFN0cmlu
ZyYpPiYmKTsKKyNlbmRpZgorI2lmIEVOQUJMRShNSFRNTCkKKyAgICB2b2lkIGdldENvbnRlbnRz
QXNNSFRNTERhdGEoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBJUEM6OlNoYXJlZEJ1ZmZl
ckRhdGFSZWZlcmVuY2UmKT4mJiBjYWxsYmFjayk7CisjZW5kaWYKKyAgICB2b2lkIGdldE1haW5S
ZXNvdXJjZURhdGFPZkZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChjb25zdCBzdGQ6Om9wdGlvbmFsPElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVy
ZW5jZT4mKT4mJik7CisgICAgdm9pZCBnZXRSZXNvdXJjZURhdGFGcm9tRnJhbWUoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHJlc291cmNlVVJMLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IHN0ZDo6b3B0aW9uYWw8SVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJl
bmNlPiYpPiYmKTsKKyAgICB2b2lkIGdldFJlbmRlclRyZWVFeHRlcm5hbFJlcHJlc2VudGF0aW9u
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgU3RyaW5nJik+JiYpOworICAgIHZvaWQgZ2V0
U2VsZWN0aW9uT3JDb250ZW50c0FzU3RyaW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
U3RyaW5nJik+JiYpOworICAgIHZvaWQgZ2V0U2VsZWN0aW9uQXNXZWJBcmNoaXZlRGF0YShDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IHN0ZDo6b3B0aW9uYWw8SVBDOjpEYXRhUmVmZXJlbmNl
PiYpPiYmKTsKKyAgICB2b2lkIGdldFNvdXJjZUZvckZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRp
ZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBTdHJpbmcmKT4mJik7CisgICAgdm9p
ZCBnZXRXZWJBcmNoaXZlT2ZGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3Qgc3RkOjpvcHRpb25hbDxJUEM6OkRhdGFSZWZlcmVuY2U+Jik+
JiYpOworICAgIHZvaWQgcnVuSmF2YVNjcmlwdChXZWJGcmFtZSosIFdlYkNvcmU6OlJ1bkphdmFT
Y3JpcHRQYXJhbWV0ZXJzJiYsIENvbnRlbnRXb3JsZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwgY29uc3Qgc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpFeGNlcHRpb25EZXRhaWxzPiYpPiYmKTsKKyAgICB2b2lkIHJ1bkphdmFTY3JpcHRJ
bkZyYW1lSW5TY3JpcHRXb3JsZChXZWJDb3JlOjpSdW5KYXZhU2NyaXB0UGFyYW1ldGVycyYmLCBz
dGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4sIGNvbnN0IHN0ZDo6cGFpcjxD
b250ZW50V29ybGRJZGVudGlmaWVyLCBTdHJpbmc+JiB3b3JsZERhdGEsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwgY29uc3Qgc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpFeGNlcHRpb25EZXRhaWxzPiYpPiYmKTsKKyAgICB2b2lkIGZvcmNlUmVwYWludChD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOworICAgIHZvaWQgdGFrZVNuYXBzaG90KFdlYkNv
cmU6OkludFJlY3Qgc25hcHNob3RSZWN0LCBXZWJDb3JlOjpJbnRTaXplIGJpdG1hcFNpemUsIHVp
bnQzMl90IG9wdGlvbnMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViS2l0OjpTaGFy
ZWFibGVCaXRtYXA6OkhhbmRsZSYpPiYmKTsKKworICAgIHZvaWQgcHJlZmVyZW5jZXNEaWRDaGFu
Z2UoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYpOworICAgIHZvaWQgdXBkYXRlUHJlZmVyZW5j
ZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYpOworICAgIHZvaWQgdXBkYXRlU2V0dGluZ3NH
ZW5lcmF0ZWQoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYpOworCisjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKKyAgICBib29sIHBhcmVudFByb2Nlc3NIYXNTZXJ2aWNlV29ya2VyRW50aXRsZW1l
bnQoKSBjb25zdDsKKyAgICB2b2lkIGRpc2FibGVTZXJ2aWNlV29ya2VyRW50aXRsZW1lbnQoKTsK
KyAgICB2b2lkIGNsZWFyU2VydmljZVdvcmtlckVudGl0bGVtZW50T3ZlcnJpZGUoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmKTsKKyNlbHNlCisgICAgYm9vbCBwYXJlbnRQcm9jZXNzSGFzU2Vy
dmljZVdvcmtlckVudGl0bGVtZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZvaWQg
ZGlzYWJsZVNlcnZpY2VXb3JrZXJFbnRpdGxlbWVudCgpIHsgfQorICAgIHZvaWQgY2xlYXJTZXJ2
aWNlV29ya2VyRW50aXRsZW1lbnRPdmVycmlkZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpIHsgY29tcGxldGlvbkhhbmRsZXIoKTsgfQorI2VuZGlmCisKKyAg
ICB2b2lkIGRpZFJlY2VpdmVQb2xpY3lEZWNpc2lvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIs
IHVpbnQ2NF90IGxpc3RlbmVySUQsIFBvbGljeURlY2lzaW9uJiYsIGNvbnN0IFZlY3RvcjxTYW5k
Ym94RXh0ZW5zaW9uOjpIYW5kbGU+Jik7CisgICAgdm9pZCBjb250aW51ZVdpbGxTdWJtaXRGb3Jt
KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRm9ybVN1Ym1pdExpc3RlbmVySWRlbnRpZmllcik7
CisgICAgdm9pZCBzZXRVc2VyQWdlbnQoY29uc3QgU3RyaW5nJik7CisgICAgdm9pZCBzZXRDdXN0
b21UZXh0RW5jb2RpbmdOYW1lKGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgc3VzcGVuZEFjdGl2
ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCk7CisgICAgdm9pZCByZXN1bWVBY3RpdmVET01PYmpl
Y3RzQW5kQW5pbWF0aW9ucygpOworCisgICAgdm9pZCBzdXNwZW5kKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgcmVzdW1lKENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
Ym9vbCk+JiYpOworCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgdm9pZCBwZXJmb3JtRGljdGlv
bmFyeUxvb2t1cEF0TG9jYXRpb24oY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYpOworICAgIHZv
aWQgcGVyZm9ybURpY3Rpb25hcnlMb29rdXBPZkN1cnJlbnRTZWxlY3Rpb24oKTsKKyAgICB2b2lk
IHBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwRm9yUmFuZ2UoV2ViQ29yZTo6RnJhbWUmLCBjb25zdCBX
ZWJDb3JlOjpTaW1wbGVSYW5nZSYsIE5TRGljdGlvbmFyeSAqb3B0aW9ucywgV2ViQ29yZTo6VGV4
dEluZGljYXRvclByZXNlbnRhdGlvblRyYW5zaXRpb24pOworICAgIFdlYkNvcmU6OkRpY3Rpb25h
cnlQb3B1cEluZm8gZGljdGlvbmFyeVBvcHVwSW5mb0ZvclJhbmdlKFdlYkNvcmU6OkZyYW1lJiwg
Y29uc3QgV2ViQ29yZTo6U2ltcGxlUmFuZ2UmLCBOU0RpY3Rpb25hcnkgKm9wdGlvbnMsIFdlYkNv
cmU6OlRleHRJbmRpY2F0b3JQcmVzZW50YXRpb25UcmFuc2l0aW9uKTsKKyNpZiBFTkFCTEUoUERG
S0lUX1BMVUdJTikKKyAgICBXZWJDb3JlOjpEaWN0aW9uYXJ5UG9wdXBJbmZvIGRpY3Rpb25hcnlQ
b3B1cEluZm9Gb3JTZWxlY3Rpb25JblBERlBsdWdpbihQREZTZWxlY3Rpb24gKiwgUERGUGx1Z2lu
JiwgTlNEaWN0aW9uYXJ5ICpvcHRpb25zLCBXZWJDb3JlOjpUZXh0SW5kaWNhdG9yUHJlc2VudGF0
aW9uVHJhbnNpdGlvbik7CisjZW5kaWYKKworICAgIHZvaWQgd2luZG93QW5kVmlld0ZyYW1lc0No
YW5nZWQoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiB3aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRp
bmF0ZXMsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCYgd2luZG93RnJhbWVJblVuZmxpcHBlZFNj
cmVlbkNvb3JkaW5hdGVzLCBjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIHZpZXdGcmFtZUluV2lu
ZG93Q29vcmRpbmF0ZXMsIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIGFjY2Vzc2liaWxpdHlW
aWV3Q29vcmRpbmF0ZXMpOworCisgICAgUmV0YWluUHRyPFBERkRvY3VtZW50PiBwZGZEb2N1bWVu
dEZvclByaW50aW5nRnJhbWUoV2ViQ29yZTo6RnJhbWUqKTsKKyAgICB2b2lkIGNvbXB1dGVQYWdl
c0ZvclByaW50aW5nUERGRG9jdW1lbnQoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBQ
cmludEluZm8mLCBWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4mIHJlc3VsdFBhZ2VSZWN0cyk7Cisg
ICAgdm9pZCBkcmF3UERGRG9jdW1lbnQoQ0dDb250ZXh0UmVmLCBQREZEb2N1bWVudCAqLCBjb25z
dCBQcmludEluZm8mLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CisgICAgdm9pZCBkcmF3UGFn
ZXNUb1BERkZyb21QREZEb2N1bWVudChDR0NvbnRleHRSZWYsIFBERkRvY3VtZW50ICosIGNvbnN0
IFByaW50SW5mbyYsIHVpbnQzMl90IGZpcnN0LCB1aW50MzJfdCBjb3VudCk7CisjZW5kaWYKKwor
ICAgIHZvaWQgZW5kUHJpbnRpbmdJbW1lZGlhdGVseSgpOworCisjaWYgSEFWRShBUFBfQUNDRU5U
X0NPTE9SUykKKyAgICB2b2lkIHNldEFjY2VudENvbG9yKFdlYkNvcmU6OkNvbG9yKTsKKyNlbmRp
ZgorCisgICAgdm9pZCBzZXRNYWluRnJhbWVJc1Njcm9sbGFibGUoYm9vbCk7CisKKyAgICB2b2lk
IHVuYXBwbHlFZGl0Q29tbWFuZChXZWJVbmRvU3RlcElEIGNvbW1hbmRJRCk7CisgICAgdm9pZCBy
ZWFwcGx5RWRpdENvbW1hbmQoV2ViVW5kb1N0ZXBJRCBjb21tYW5kSUQpOworICAgIHZvaWQgZGlk
UmVtb3ZlRWRpdENvbW1hbmQoV2ViVW5kb1N0ZXBJRCBjb21tYW5kSUQpOworCisgICAgdm9pZCBm
aW5kU3RyaW5nKGNvbnN0IFN0cmluZyYsIE9wdGlvblNldDxGaW5kT3B0aW9ucz4sIHVpbnQzMl90
IG1heE1hdGNoQ291bnQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZv
aWQgZmluZFN0cmluZ01hdGNoZXMoY29uc3QgU3RyaW5nJiwgT3B0aW9uU2V0PEZpbmRPcHRpb25z
PiwgdWludDMyX3QgbWF4TWF0Y2hDb3VudCk7CisgICAgdm9pZCBnZXRJbWFnZUZvckZpbmRNYXRj
aCh1aW50MzJfdCBtYXRjaEluZGV4KTsKKyAgICB2b2lkIHNlbGVjdEZpbmRNYXRjaCh1aW50MzJf
dCBtYXRjaEluZGV4KTsKKyAgICB2b2lkIGluZGljYXRlRmluZE1hdGNoKHVpbnQzMl90IG1hdGNo
SW5kZXgpOworICAgIHZvaWQgaGlkZUZpbmRVSSgpOworICAgIHZvaWQgY291bnRTdHJpbmdNYXRj
aGVzKGNvbnN0IFN0cmluZyYsIE9wdGlvblNldDxGaW5kT3B0aW9ucz4sIHVpbnQzMl90IG1heE1h
dGNoQ291bnQpOworICAgIHZvaWQgcmVwbGFjZU1hdGNoZXMoY29uc3QgVmVjdG9yPHVpbnQzMl90
PiYgbWF0Y2hJbmRpY2VzLCBjb25zdCBTdHJpbmcmIHJlcGxhY2VtZW50VGV4dCwgYm9vbCBzZWxl
Y3Rpb25Pbmx5LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHVpbnQ2NF90KT4mJik7CisKKyNpZiBV
U0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCisgICAgdm9pZCBzZW5kVmlld3BvcnRBdHRyaWJ1dGVz
Q2hhbmdlZChjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpOworI2VuZGlmCisKKyAg
ICB2b2lkIGRpZENoYW5nZVNlbGVjdGVkSW5kZXhGb3JBY3RpdmVQb3B1cE1lbnUoaW50MzJfdCBu
ZXdJbmRleCk7CisgICAgdm9pZCBzZXRUZXh0Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgaW5k
ZXgpOworCisjaWYgUExBVEZPUk0oR1RLKQorICAgIHZvaWQgZmFpbGVkVG9TaG93UG9wdXBNZW51
KCk7CisjZW5kaWYKKworICAgIHZvaWQgZGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWwoY29uc3Qg
VmVjdG9yPFN0cmluZz4mIGZpbGVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcmVwbGFjZW1lbnRG
aWxlcyk7CisgICAgdm9pZCBkaWRDYW5jZWxGb3JPcGVuUGFuZWwoKTsKKworI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCisgICAgdm9pZCBkaWRDaG9vc2VGaWxlc0Zvck9wZW5QYW5lbFdpdGhEaXNw
bGF5U3RyaW5nQW5kSWNvbihjb25zdCBWZWN0b3I8U3RyaW5nPiYsIGNvbnN0IFN0cmluZyYgZGlz
cGxheVN0cmluZywgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBpY29uRGF0YSwgV2ViS2l0OjpT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiwgV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5k
bGUmJik7CisgICAgYm9vbCBpc1RyYW5zcGFyZW50T3JGdWxseUNsaXBwZWQoY29uc3QgV2ViQ29y
ZTo6RWxlbWVudCYpIGNvbnN0OworI2VuZGlmCisKKyNpZiBFTkFCTEUoU0FOREJPWF9FWFRFTlNJ
T05TKQorICAgIHZvaWQgZXh0ZW5kU2FuZGJveEZvckZpbGVzRnJvbU9wZW5QYW5lbChWZWN0b3I8
U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYmKTsKKyNlbmRpZgorCisgICAgdm9pZCBkaWRSZWNl
aXZlR2VvbG9jYXRpb25QZXJtaXNzaW9uRGVjaXNpb24oR2VvbG9jYXRpb25JZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIGF1dGhvcml6YXRpb25Ub2tlbik7CisKKyNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQorICAgIHZvaWQgdXNlck1lZGlhQWNjZXNzV2FzR3JhbnRlZChXZWJDb3JlOjpVc2VyTWVk
aWFSZXF1ZXN0SWRlbnRpZmllciwgV2ViQ29yZTo6Q2FwdHVyZURldmljZSYmIGF1ZGlvRGV2aWNl
VUlELCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNlJiYgdmlkZW9EZXZpY2VVSUQsIFN0cmluZyYmIG1l
ZGlhRGV2aWNlSWRlbnRpZmllckhhc2hTYWx0LCBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUmJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHVzZXJNZWRpYUFjY2Vzc1dh
c0RlbmllZChXZWJDb3JlOjpVc2VyTWVkaWFSZXF1ZXN0SWRlbnRpZmllciwgdWludDY0X3QgcmVh
c29uLCBTdHJpbmcmJiBpbnZhbGlkQ29uc3RyYWludCk7CisjZW5kaWYKKworI2lmIEVOQUJMRShF
TkNSWVBURURfTUVESUEpCisgICAgdm9pZCBtZWRpYUtleVN5c3RlbVdhc0dyYW50ZWQoV2ViQ29y
ZTo6TWVkaWFLZXlTeXN0ZW1SZXF1ZXN0SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmKTsKKyAgICB2b2lkIG1lZGlhS2V5U3lzdGVtV2FzRGVuaWVkKFdlYkNvcmU6Ok1lZGlh
S2V5U3lzdGVtUmVxdWVzdElkZW50aWZpZXIsIFN0cmluZyYmIG1lc3NhZ2UpOworI2VuZGlmCisK
KyAgICB2b2lkIHJlcXVlc3RNZWRpYVBsYXliYWNrU3RhdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJLaXQ6Ok1lZGlhUGxheWJhY2tTdGF0ZSk+JiYpOworCisgICAgdm9pZCBwYXVzZUFsbE1l
ZGlhUGxheWJhY2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgICB2b2lkIHN1c3Bl
bmRBbGxNZWRpYVBsYXliYWNrKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisgICAgdm9p
ZCByZXN1bWVBbGxNZWRpYVBsYXliYWNrKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CisK
KyAgICB2b2lkIGFkdmFuY2VUb05leHRNaXNzcGVsbGluZyhib29sIHN0YXJ0QmVmb3JlU2VsZWN0
aW9uKTsKKyAgICB2b2lkIGNoYW5nZVNwZWxsaW5nVG9Xb3JkKGNvbnN0IFN0cmluZyYgd29yZCk7
CisKKyNpZiBVU0UoQVBQS0lUKQorICAgIHZvaWQgdXBwZXJjYXNlV29yZCgpOworICAgIHZvaWQg
bG93ZXJjYXNlV29yZCgpOworICAgIHZvaWQgY2FwaXRhbGl6ZVdvcmQoKTsKKyNlbmRpZgorCisg
ICAgYm9vbCBzaG91bGREaXNwYXRjaFN5bnRoZXRpY01vdXNlRXZlbnRzV2hlbk1vZGlmeWluZ1Nl
bGVjdGlvbigpIGNvbnN0OworICAgIHZvaWQgcGxhdGZvcm1EaWRTZWxlY3RBbGwoKTsKKyAgICAK
KyAgICB2b2lkIHNldEhhc1Jlc291cmNlTG9hZENsaWVudChib29sKTsKKyAgICB2b2lkIHNldENh
blVzZUNyZWRlbnRpYWxTdG9yYWdlKGJvb2wpOworCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMp
CisgICAgdm9pZCBkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KGNvbnN0IFdlYkNv
bnRleHRNZW51SXRlbURhdGEmKTsKKyNlbmRpZgorCisgICAgdm9pZCBjaGFuZ2VTZWxlY3RlZElu
ZGV4KGludDMyX3QgaW5kZXgpOworICAgIHZvaWQgc2V0Q2FuU3RhcnRNZWRpYVRpbWVyRmlyZWQo
KTsKKworICAgIHN0YXRpYyBib29sIHBsYXRmb3JtQ2FuSGFuZGxlUmVxdWVzdChjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKKworICAgIHN0YXRpYyBQbHVnaW5WaWV3KiBmb2N1c2Vk
UGx1Z2luVmlld0ZvckZyYW1lKFdlYkNvcmU6OkZyYW1lJik7CisKKyAgICB2b2lkIHJlcG9ydFVz
ZWRGZWF0dXJlcygpOworCisgICAgdm9pZCB1cGRhdGVXZWJzaXRlUG9saWNpZXMoV2Vic2l0ZVBv
bGljaWVzRGF0YSYmKTsKKyAgICB2b2lkIG5vdGlmeVVzZXJTY3JpcHRzKCk7CisKKyAgICB2b2lk
IGNoYW5nZUZvbnQoV2ViQ29yZTo6Rm9udENoYW5nZXMmJik7CisgICAgdm9pZCBjaGFuZ2VGb250
QXR0cmlidXRlcyhXZWJDb3JlOjpGb250QXR0cmlidXRlQ2hhbmdlcyYmKTsKKworI2lmIFBMQVRG
T1JNKE1BQykKKyAgICB2b2lkIHBlcmZvcm1JbW1lZGlhdGVBY3Rpb25IaXRUZXN0QXRMb2NhdGlv
bihXZWJDb3JlOjpGbG9hdFBvaW50KTsKKyAgICBzdGQ6Om9wdGlvbmFsPHN0ZDo6dHVwbGU8V2Vi
Q29yZTo6U2ltcGxlUmFuZ2UsIE5TRGljdGlvbmFyeSAqPj4gbG9va3VwVGV4dEF0TG9jYXRpb24o
V2ViQ29yZTo6RmxvYXRQb2ludCk7CisgICAgdm9pZCBpbW1lZGlhdGVBY3Rpb25EaWRVcGRhdGUo
KTsKKyAgICB2b2lkIGltbWVkaWF0ZUFjdGlvbkRpZENhbmNlbCgpOworICAgIHZvaWQgaW1tZWRp
YXRlQWN0aW9uRGlkQ29tcGxldGUoKTsKKworICAgIHZvaWQgZGF0YURldGVjdG9yc0RpZFByZXNl
bnRVSShXZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXlJRCk7CisgICAgdm9pZCBkYXRh
RGV0ZWN0b3JzRGlkQ2hhbmdlVUkoV2ViQ29yZTo6UGFnZU92ZXJsYXk6OlBhZ2VPdmVybGF5SUQp
OworICAgIHZvaWQgZGF0YURldGVjdG9yc0RpZEhpZGVVSShXZWJDb3JlOjpQYWdlT3ZlcmxheTo6
UGFnZU92ZXJsYXlJRCk7CisKKyAgICB2b2lkIGhhbmRsZUFjY2VwdGVkQ2FuZGlkYXRlKFdlYkNv
cmU6OlRleHRDaGVja2luZ1Jlc3VsdCk7CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQor
ICAgIHZvaWQgcmVxdWVzdEFjdGl2ZU5vd1BsYXlpbmdTZXNzaW9uSW5mbyhDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGJvb2wsIGJvb2wsIGNvbnN0IFN0cmluZyYsIGRvdWJsZSwgZG91YmxlLCB1aW50
NjRfdCk+JiYpOworICAgIFJldGFpblB0cjxOU0RhdGE+IGFjY2Vzc2liaWxpdHlSZW1vdGVUb2tl
bkRhdGEoKSBjb25zdDsKKyAgICB2b2lkIGFjY2Vzc2liaWxpdHlUcmFuc2ZlclJlbW90ZVRva2Vu
KFJldGFpblB0cjxOU0RhdGE+KTsKKyNlbmRpZgorCisgICAgdm9pZCBzZXRTaG91bGREaXNwYXRj
aEZha2VNb3VzZU1vdmVFdmVudHMoYm9vbCBkaXNwYXRjaCkgeyBtX3Nob3VsZERpc3BhdGNoRmFr
ZU1vdXNlTW92ZUV2ZW50cyA9IGRpc3BhdGNoOyB9CisKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExB
WUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICB2b2lkIHBsYXliYWNr
VGFyZ2V0U2VsZWN0ZWQoV2ViQ29yZTo6UGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRp
ZmllciwgV2ViQ29yZTo6TWVkaWFQbGF5YmFja1RhcmdldENvbnRleHQmJikgY29uc3Q7CisgICAg
dm9pZCBwbGF5YmFja1RhcmdldEF2YWlsYWJpbGl0eURpZENoYW5nZShXZWJDb3JlOjpQbGF5YmFj
a1RhcmdldENsaWVudENvbnRleHRJZGVudGlmaWVyLCBib29sKTsKKyAgICB2b2lkIHNldFNob3Vs
ZFBsYXlUb1BsYXliYWNrVGFyZ2V0KFdlYkNvcmU6OlBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4
dElkZW50aWZpZXIsIGJvb2wpOworICAgIHZvaWQgcGxheWJhY2tUYXJnZXRQaWNrZXJXYXNEaXNt
aXNzZWQoV2ViQ29yZTo6UGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmllcik7Cisj
ZW5kaWYKKworICAgIHZvaWQgY2xlYXJXaGVlbEV2ZW50VGVzdE1vbml0b3IoKTsKKworICAgIHZv
aWQgc2V0U2hvdWxkU2NhbGVWaWV3VG9GaXREb2N1bWVudChib29sKTsKKworICAgIHZvaWQgcGFn
ZVN0b3BwZWRTY3JvbGxpbmcoKTsKKworI2lmIEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1F
UikKKyAgICB2b2lkIGRpZEVuZFJlcXVlc3RJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lucyh1aW50
MzJfdCByZXN1bHQpOworI2VuZGlmCisKKyAgICB2b2lkIHNldFVzZXJJbnRlcmZhY2VMYXlvdXRE
aXJlY3Rpb24odWludDMyX3QpOworCisgICAgYm9vbCBjYW5QbHVnaW5IYW5kbGVSZXNwb25zZShj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisKKyAgICB2b2lkIHNpbXVsYXRlRGV2
aWNlT3JpZW50YXRpb25DaGFuZ2UoZG91YmxlIGFscGhhLCBkb3VibGUgYmV0YSwgZG91YmxlIGdh
bW1hKTsKKworI2lmIFVTRShTWVNURU1fUFJFVklFVykKKyAgICB2b2lkIHN5c3RlbVByZXZpZXdB
Y3Rpb25UcmlnZ2VyZWQoV2ViQ29yZTo6U3lzdGVtUHJldmlld0luZm8sIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSk7CisjZW5kaWYKKworI2lmIEVOQUJMRShTUEVFQ0hfU1lOVEhFU0lTKQorICAgIHZv
aWQgc3BlYWtpbmdFcnJvck9jY3VycmVkKCk7CisgICAgdm9pZCBib3VuZGFyeUV2ZW50T2NjdXJy
ZWQoYm9vbCB3b3JkQm91bmRhcnksIHVuc2lnbmVkIGNoYXJJbmRleCk7CisgICAgdm9pZCB2b2lj
ZXNEaWRDaGFuZ2UoKTsKKyNlbmRpZgorCisgICAgdm9pZCBmcmFtZUJlY2FtZVJlbW90ZShXZWJD
b3JlOjpGcmFtZUlkZW50aWZpZXIsIFdlYkNvcmU6Okdsb2JhbEZyYW1lSWRlbnRpZmllciYmIHJl
bW90ZUZyYW1lSWRlbnRpZmllciwgV2ViQ29yZTo6R2xvYmFsV2luZG93SWRlbnRpZmllciYmIHJl
bW90ZVdpbmRvd0lkZW50aWZpZXIpOworCisgICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUhhbmRs
ZXIodWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzY2hlbWUpOworCisgICAgdm9p
ZCB1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tE
aWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9u
c2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNr
RGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKKyAgICB2b2lkIHVybFNjaGVt
ZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKKworICAgIHZvaWQg
c2V0SXNUYWtpbmdTbmFwc2hvdHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oYm9vbCk7CisgICAg
dm9pZCBzZXROZWVkc0RPTVdpbmRvd1Jlc2l6ZUV2ZW50KCk7CisKKyAgICB2b2lkIHNldElzU3Vz
cGVuZGVkKGJvb2wpOworCisgICAgUmVmUHRyPFdlYkltYWdlPiBzbmFwc2hvdEF0U2l6ZShjb25z
dCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgYml0bWFwU2l6ZSwg
U25hcHNob3RPcHRpb25zKTsKKyAgICBSZWZQdHI8V2ViSW1hZ2U+IHNuYXBzaG90Tm9kZShXZWJD
b3JlOjpOb2RlJiwgU25hcHNob3RPcHRpb25zLCB1bnNpZ25lZCBtYXhpbXVtUGl4ZWxDb3VudCA9
IHN0ZDo6bnVtZXJpY19saW1pdHM8dW5zaWduZWQ+OjptYXgoKSk7CisjaWYgUExBVEZPUk0oQ09D
T0EpCisgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gcGRmU25hcHNob3RBdFNpemUoV2ViQ29yZTo6
SW50UmVjdCwgV2ViQ29yZTo6SW50U2l6ZSBiaXRtYXBTaXplLCBTbmFwc2hvdE9wdGlvbnMpOwor
I2VuZGlmCisKKyNpZiBFTkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQorICAgIFJlZlB0cjxXZWJD
b3JlOjpIVE1MQXR0YWNobWVudEVsZW1lbnQ+IGF0dGFjaG1lbnRFbGVtZW50V2l0aElkZW50aWZp
ZXIoY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyKSBjb25zdDsKKyNlbmRpZgorCisgICAgYm9vbCBj
YW5TaG93TUlNRVR5cGUoY29uc3QgU3RyaW5nJiwgY29uc3QgRnVuY3Rpb248Ym9vbChjb25zdCBT
dHJpbmcmLCBXZWJDb3JlOjpQbHVnaW5EYXRhOjpBbGxvd2VkUGx1Z2luVHlwZXMpPiYgc3VwcG9y
dHNQbHVnaW4pIGNvbnN0OworCisgICAgdm9pZCBjYW5jZWxHZXN0dXJlc0Jsb2NrZWRPblN5bmNo
cm9ub3VzUmVwbGllcygpOworCisgICAgYm9vbCBzaG91bGREaXNwYXRjaFVwZGF0ZUFmdGVyRm9j
dXNpbmdFbGVtZW50KGNvbnN0IFdlYkNvcmU6OkVsZW1lbnQmKSBjb25zdDsKKworICAgIHZvaWQg
dXBkYXRlTW9ja0FjY2Vzc2liaWxpdHlFbGVtZW50QWZ0ZXJDb21taXR0aW5nTG9hZCgpOworCisg
ICAgdm9pZCBwYWludFNuYXBzaG90QXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiwgU25hcHNob3RPcHRpb25zLCBXZWJDb3JlOjpGcmFtZSYsIFdl
YkNvcmU6OkZyYW1lVmlldyYsIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dCYpOworCisjaWYgUExB
VEZPUk0oR1RLKSB8fCBQTEFURk9STShXUEUpCisgICAgdm9pZCBzZW5kTWVzc2FnZVRvV2ViRXh0
ZW5zaW9uKFVzZXJNZXNzYWdlJiYpOworICAgIHZvaWQgc2VuZE1lc3NhZ2VUb1dlYkV4dGVuc2lv
bldpdGhSZXBseShVc2VyTWVzc2FnZSYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFVzZXJNZXNz
YWdlJiYpPiYmKTsKKyNlbmRpZgorCisgICAgdm9pZCBwbGF0Zm9ybURpZFNjYWxlUGFnZSgpOwor
CisgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPj4gY29uc3VtZVNhbmRib3hFeHRl
bnNpb25zKFZlY3RvcjxTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+JiYpOworICAgIHZvaWQgcmV2
b2tlU2FuZGJveEV4dGVuc2lvbnMoVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPj4mIHNh
bmRib3hFeHRlbnNpb25zKTsKKworICAgIHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UoY29uc3QgV2Vi
Q29yZTo6SW50UG9pbnQmLCBXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHksIGJvb2wpOworICAgIAor
ICAgIHZvaWQgY29uc3VtZU5ldHdvcmtFeHRlbnNpb25TYW5kYm94RXh0ZW5zaW9ucyhjb25zdCBW
ZWN0b3I8U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiYpOworCisgICAgYm9vbCBoYXNQZW5kaW5n
RWRpdG9yU3RhdGVVcGRhdGUoKSBjb25zdDsKKyAgICBib29sIHNob3VsZEF2b2lkQ29tcHV0aW5n
UG9zdExheW91dERhdGFGb3JFZGl0b3JTdGF0ZSgpIGNvbnN0OworCisgICAgV2ViQ29yZTo6UGFn
ZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOworCisgICAgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6
OlBhZ2U+IG1fcGFnZTsKKyAgICBSZWY8V2ViRnJhbWU+IG1fbWFpbkZyYW1lOworCisgICAgUmVm
UHRyPFdlYlBhZ2VHcm91cFByb3h5PiBtX3BhZ2VHcm91cDsKKworICAgIFN0cmluZyBtX3VzZXJB
Z2VudDsKKworICAgIFdlYkNvcmU6OkludFNpemUgbV92aWV3U2l6ZTsKKyAgICBzdGQ6OnVuaXF1
ZV9wdHI8RHJhd2luZ0FyZWE+IG1fZHJhd2luZ0FyZWE7CisgICAgRHJhd2luZ0FyZWFUeXBlIG1f
ZHJhd2luZ0FyZWFUeXBlOworCisgICAgSGFzaFNldDxQbHVnaW5WaWV3Kj4gbV9wbHVnaW5WaWV3
czsKKyAgICBib29sIG1faGFzU2VlblBsdWdpbiB7IGZhbHNlIH07CisKKyAgICBIYXNoTWFwPFRl
eHRDaGVja2VyUmVxdWVzdElELCBSZWZQdHI8V2ViQ29yZTo6VGV4dENoZWNraW5nUmVxdWVzdD4+
IG1fcGVuZGluZ1RleHRDaGVja2luZ1JlcXVlc3RNYXA7CisKKyAgICBib29sIG1fdXNlRml4ZWRM
YXlvdXQgeyBmYWxzZSB9OworCisgICAgV2ViQ29yZTo6Q29sb3IgbV91bmRlcmxheUNvbG9yOwor
CisjaWYgRU5BQkxFKFVJX1BST0NFU1NfUERGX0hVRCkKKyAgICBIYXNoTWFwPFBERlBsdWdpbklk
ZW50aWZpZXIsIFdlYWtQdHI8UERGUGx1Z2luPj4gbV9wZGZQbHVnSW5zV2l0aEhVRDsKKyNlbmRp
ZgorCisgICAgV1RGOjpGdW5jdGlvbjx2b2lkKCk+IG1fc2VsZWN0aW9uQ2hhbmdlZEhhbmRsZXI7
CisgICAgYm9vbCBtX2lzSW5SZWRvIHsgZmFsc2UgfTsKKyAgICBib29sIG1faXNDbG9zZWQgeyBm
YWxzZSB9OworICAgIGJvb2wgbV90YWJUb0xpbmtzIHsgZmFsc2UgfTsKKyAgICAKKyAgICBib29s
IG1fYXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fYXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1
Z2lucyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2FydGlmaWNpYWxQbHVnaW5Jbml0aWFsaXphdGlv
bkRlbGF5RW5hYmxlZCB7IGZhbHNlIH07CisgICAgYm9vbCBtX21haW5GcmFtZUlzU2Nyb2xsYWJs
ZSB7IHRydWUgfTsKKworICAgIGJvb2wgbV9hbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlciB7
IGZhbHNlIH07CisgICAgYm9vbCBtX2Fsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlciB7IGZhbHNl
IH07CisKKyAgICBib29sIG1fc2hvdWxkUmVuZGVyQ2FudmFzSW5HUFVQcm9jZXNzIHsgZmFsc2Ug
fTsKKyAgICBib29sIG1fc2hvdWxkUmVuZGVyRE9NSW5HUFVQcm9jZXNzIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fc2hvdWxkUGxheU1lZGlhSW5HUFVQcm9jZXNzIHsgZmFsc2UgfTsKKyNpZiBFTkFC
TEUoV0VCR0wpCisgICAgYm9vbCBtX3Nob3VsZFJlbmRlcldlYkdMSW5HUFVQcm9jZXNzIHsgZmFs
c2UgfTsKKyNlbmRpZgorI2lmIEVOQUJMRShBUFBfQk9VTkRfRE9NQUlOUykKKyAgICBib29sIG1f
bmVlZHNJbkFwcEJyb3dzZXJQcml2YWN5UXVpcmtzIHsgZmFsc2UgfTsKKyNlbmRpZgorCisgICAg
Ly8gVGhlIGxheWVyIGhvc3RpbmcgbW9kZS4KKyAgICBMYXllckhvc3RpbmdNb2RlIG1fbGF5ZXJI
b3N0aW5nTW9kZTsKKworI2lmIEVOQUJMRShBUFBfSElHSExJR0hUUykKKyAgICBXZWJDb3JlOjpD
cmVhdGVOZXdHcm91cEZvckhpZ2hsaWdodCBtX2hpZ2hsaWdodElzTmV3R3JvdXAgeyBXZWJDb3Jl
OjpDcmVhdGVOZXdHcm91cEZvckhpZ2hsaWdodDo6Tm8gfTsKKyAgICBXZWJDb3JlOjpIaWdobGln
aHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwIG1faGlnaGxpZ2h0UmVxdWVzdE9yaWdpbmF0ZWRJbkFw
cCB7IFdlYkNvcmU6OkhpZ2hsaWdodFJlcXVlc3RPcmlnaW5hdGVkSW5BcHA6Ok5vIH07CisjZW5k
aWYKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIGJvb2wgbV9wZGZQbHVnaW5FbmFibGVkIHsg
ZmFsc2UgfTsKKyAgICBib29sIG1faGFzQ2FjaGVkV2luZG93RnJhbWUgeyBmYWxzZSB9OworCisg
ICAgLy8gVGhlIGZyYW1lIG9mIHRoZSBjb250YWluaW5nIHdpbmRvdyBpbiBzY3JlZW4gY29vcmRp
bmF0ZXMuCisgICAgV2ViQ29yZTo6RmxvYXRSZWN0IG1fd2luZG93RnJhbWVJblNjcmVlbkNvb3Jk
aW5hdGVzOworCisgICAgLy8gVGhlIGZyYW1lIG9mIHRoZSBjb250YWluaW5nIHdpbmRvdyBpbiB1
bmZsaXBwZWQgc2NyZWVuIGNvb3JkaW5hdGVzLgorICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBtX3dp
bmRvd0ZyYW1lSW5VbmZsaXBwZWRTY3JlZW5Db29yZGluYXRlczsKKworICAgIC8vIFRoZSBmcmFt
ZSBvZiB0aGUgdmlldyBpbiB3aW5kb3cgY29vcmRpbmF0ZXMuCisgICAgV2ViQ29yZTo6RmxvYXRS
ZWN0IG1fdmlld0ZyYW1lSW5XaW5kb3dDb29yZGluYXRlczsKKworICAgIC8vIFRoZSBhY2Nlc3Np
YmlsaXR5IHBvc2l0aW9uIG9mIHRoZSB2aWV3LgorICAgIFdlYkNvcmU6OkZsb2F0UG9pbnQgbV9h
Y2Nlc3NpYmlsaXR5UG9zaXRpb247CisgICAgCisgICAgUmV0YWluUHRyPFdLQWNjZXNzaWJpbGl0
eVdlYlBhZ2VPYmplY3Q+IG1fbW9ja0FjY2Vzc2liaWxpdHlFbGVtZW50OworI2VuZGlmCisKKyNp
ZiBFTkFCTEUoUExBVEZPUk1fRFJJVkVOX1RFWFRfQ0hFQ0tJTkcpCisgICAgVW5pcXVlUmVmPFRl
eHRDaGVja2luZ0NvbnRyb2xsZXJQcm94eT4gbV90ZXh0Q2hlY2tpbmdDb250cm9sbGVyUHJveHk7
CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKENPQ09BKSB8fCBQTEFURk9STShHVEspCisgICAgc3Rk
Ojp1bmlxdWVfcHRyPFZpZXdHZXN0dXJlR2VvbWV0cnlDb2xsZWN0b3I+IG1fdmlld0dlc3R1cmVH
ZW9tZXRyeUNvbGxlY3RvcjsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgUmV0
YWluUHRyPE5TRGljdGlvbmFyeT4gbV9kYXRhRGV0ZWN0aW9uQ29udGV4dDsKKyNlbmRpZgorCisj
aWYgRU5BQkxFKEFDQ0VTU0lCSUxJVFkpICYmIFVTRShBVEspCisgICAgR1JlZlB0cjxBdGtPYmpl
Y3Q+IG1fYWNjZXNzaWJpbGl0eU9iamVjdDsKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oV0lOKQor
ICAgIHVpbnQ2NF90IG1fbmF0aXZlV2luZG93SGFuZGxlIHsgMCB9OworI2VuZGlmCisKKyNpZiAh
UExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBSZWZQdHI8UGFnZUJhbm5lcj4gbV9oZWFkZXJCYW5u
ZXI7CisgICAgUmVmUHRyPFBhZ2VCYW5uZXI+IG1fZm9vdGVyQmFubmVyOworI2VuZGlmCisKKyAg
ICBSdW5Mb29wOjpUaW1lcjxXZWJQYWdlPiBtX3NldENhblN0YXJ0TWVkaWFUaW1lcjsKKyAgICBi
b29sIG1fbWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdyB7IGZhbHNlIH07CisKKyAgICBIYXNoTWFw
PFdlYlVuZG9TdGVwSUQsIFJlZlB0cjxXZWJVbmRvU3RlcD4+IG1fdW5kb1N0ZXBNYXA7CisKKyNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UGFnZUNvbnRleHRNZW51Q2xpZW50PiBtX2NvbnRleHRNZW51Q2xpZW50OworI2Vu
ZGlmCisgICAgc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OkVkaXRvckNsaWVu
dD4gbV9lZGl0b3JDbGllbnQ7CisgICAgc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5k
bGU6OkZvcm1DbGllbnQ+IG1fZm9ybUNsaWVudDsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QVBJOjpJ
bmplY3RlZEJ1bmRsZTo6UGFnZUxvYWRlckNsaWVudD4gbV9sb2FkZXJDbGllbnQ7CisgICAgSW5q
ZWN0ZWRCdW5kbGVQYWdlUG9saWN5Q2xpZW50IG1fcG9saWN5Q2xpZW50OworICAgIHN0ZDo6dW5p
cXVlX3B0cjxBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRDbGllbnQ+IG1fcmVzb3Vy
Y2VMb2FkQ2xpZW50OworICAgIHN0ZDo6dW5pcXVlX3B0cjxBUEk6OkluamVjdGVkQnVuZGxlOjpQ
YWdlVUlDbGllbnQ+IG1fdWlDbGllbnQ7CisjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQorICAg
IEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQgbV9mdWxsU2NyZWVuQ2xpZW50Owor
I2VuZGlmCisKKyAgICBVbmlxdWVSZWY8RmluZENvbnRyb2xsZXI+IG1fZmluZENvbnRyb2xsZXI7
CisKKyAgICBSZWZQdHI8V2ViSW5zcGVjdG9yPiBtX2luc3BlY3RvcjsKKyAgICBSZWZQdHI8V2Vi
SW5zcGVjdG9yVUk+IG1faW5zcGVjdG9yVUk7CisgICAgUmVmUHRyPFJlbW90ZVdlYkluc3BlY3Rv
clVJPiBtX3JlbW90ZUluc3BlY3RvclVJOworICAgIHN0ZDo6dW5pcXVlX3B0cjxXZWJQYWdlSW5z
cGVjdG9yVGFyZ2V0Q29udHJvbGxlcj4gbV9pbnNwZWN0b3JUYXJnZXRDb250cm9sbGVyOworCisj
aWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIFJlZlB0cjxQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyPiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXI7CisgICAgUmVmUHRyPFZpZGVv
RnVsbHNjcmVlbk1hbmFnZXI+IG1fdmlkZW9GdWxsc2NyZWVuTWFuYWdlcjsKKyNlbmRpZgorCisj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBib29sIG1fYWxsb3dzTWVkaWFEb2N1bWVudElu
bGluZVBsYXliYWNrIHsgZmFsc2UgfTsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNpbXBs
ZVJhbmdlPiBtX3N0YXJ0aW5nR2VzdHVyZVJhbmdlOworI2VuZGlmCisKKyNpZiBFTkFCTEUoRlVM
TFNDUkVFTl9BUEkpCisgICAgUmVmUHRyPFdlYkZ1bGxTY3JlZW5NYW5hZ2VyPiBtX2Z1bGxTY3Jl
ZW5NYW5hZ2VyOworI2VuZGlmCisKKyAgICBSZWZQdHI8V2ViUG9wdXBNZW51PiBtX2FjdGl2ZVBv
cHVwTWVudTsKKworI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQorICAgIFJlZlB0cjxXZWJDb250
ZXh0TWVudT4gbV9jb250ZXh0TWVudTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKElOUFVUX1RZUEVf
Q09MT1IpCisgICAgV2ViQ29sb3JDaG9vc2VyKiBtX2FjdGl2ZUNvbG9yQ2hvb3NlciB7IG51bGxw
dHIgfTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEFMSVNUX0VMRU1FTlQpCisgICAgV2Vha1B0
cjxXZWJEYXRhTGlzdFN1Z2dlc3Rpb25QaWNrZXI+IG1fYWN0aXZlRGF0YUxpc3RTdWdnZXN0aW9u
UGlja2VyOworI2VuZGlmCisKKyNpZiBFTkFCTEUoREFURV9BTkRfVElNRV9JTlBVVF9UWVBFUykK
KyAgICBXZWFrUHRyPFdlYkRhdGVUaW1lQ2hvb3Nlcj4gbV9hY3RpdmVEYXRlVGltZUNob29zZXI7
CisjZW5kaWYKKworICAgIFJlZlB0cjxXZWJPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcj4gbV9hY3Rp
dmVPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lcjsKKyAgICBSZWZQdHI8Tm90aWZpY2F0aW9uUGVybWlz
c2lvblJlcXVlc3RNYW5hZ2VyPiBtX25vdGlmaWNhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdl
cjsKKworICAgIFJlZjxXZWJVc2VyQ29udGVudENvbnRyb2xsZXI+IG1fdXNlckNvbnRlbnRDb250
cm9sbGVyOworCisjaWYgRU5BQkxFKEdFT0xPQ0FUSU9OKQorICAgIFVuaXF1ZVJlZjxHZW9sb2Nh
dGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlcj4gbV9nZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1
ZXN0TWFuYWdlcjsKKyNlbmRpZgorCisjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKKyAgICBVbmlx
dWVSZWY8VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyPiBtX3VzZXJNZWRpYVBlcm1p
c3Npb25SZXF1ZXN0TWFuYWdlcjsKKyNlbmRpZgorCisjaWYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJ
QSkKKyAgICBVbmlxdWVSZWY8TWVkaWFLZXlTeXN0ZW1QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI+
IG1fbWVkaWFLZXlTeXN0ZW1QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXI7CisjZW5kaWYKKworICAg
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpQcmludENvbnRleHQ+IG1fcHJpbnRDb250ZXh0Owor
ICAgIGJvb2wgbV9pbkFjdGl2ZVByaW50Q29udGV4dEFjY2Vzc1Njb3BlIHsgZmFsc2UgfTsKKyAg
ICBib29sIG1fc2hvdWxkRW5kUHJpbnRpbmdJbW1lZGlhdGVseSB7IGZhbHNlIH07CisKKyAgICBj
bGFzcyBQcmludENvbnRleHRBY2Nlc3NTY29wZSB7CisgICAgcHVibGljOgorICAgICAgICBQcmlu
dENvbnRleHRBY2Nlc3NTY29wZShXZWJQYWdlJiB3ZWJQYWdlKQorICAgICAgICAgICAgOiBtX3dl
YlBhZ2UgeyB3ZWJQYWdlIH0KKyAgICAgICAgICAgICwgbV93YXNJbkFjdGl2ZVByaW50Q29udGV4
dEFjY2Vzc1Njb3BlIHsgd2ViUGFnZS5tX2luQWN0aXZlUHJpbnRDb250ZXh0QWNjZXNzU2NvcGUg
fQorICAgICAgICB7CisgICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5BY3RpdmVQcmludENvbnRl
eHRBY2Nlc3NTY29wZSA9IHRydWU7CisgICAgICAgIH0KKworICAgICAgICB+UHJpbnRDb250ZXh0
QWNjZXNzU2NvcGUoKQorICAgICAgICB7CisgICAgICAgICAgICBtX3dlYlBhZ2UtPm1faW5BY3Rp
dmVQcmludENvbnRleHRBY2Nlc3NTY29wZSA9IG1fd2FzSW5BY3RpdmVQcmludENvbnRleHRBY2Nl
c3NTY29wZTsKKyAgICAgICAgICAgIGlmICghbV93YXNJbkFjdGl2ZVByaW50Q29udGV4dEFjY2Vz
c1Njb3BlICYmIG1fd2ViUGFnZS0+bV9zaG91bGRFbmRQcmludGluZ0ltbWVkaWF0ZWx5KQorICAg
ICAgICAgICAgICAgIG1fd2ViUGFnZS0+ZW5kUHJpbnRpbmdJbW1lZGlhdGVseSgpOworICAgICAg
ICB9CisgICAgcHJpdmF0ZToKKyAgICAgICAgUmVmPFdlYlBhZ2U+IG1fd2ViUGFnZTsKKyAgICAg
ICAgY29uc3QgYm9vbCBtX3dhc0luQWN0aXZlUHJpbnRDb250ZXh0QWNjZXNzU2NvcGU7CisgICAg
fTsKKworICAgIGZyaWVuZCBjbGFzcyBQcmludENvbnRleHRBY2Nlc3NTY29wZTsKKworI2lmIFBM
QVRGT1JNKEdUSykKKyAgICBSZWZQdHI8V2ViUHJpbnRPcGVyYXRpb25HdGs+IG1fcHJpbnRPcGVy
YXRpb247CisjZW5kaWYKKworICAgIFNhbmRib3hFeHRlbnNpb25UcmFja2VyIG1fc2FuZGJveEV4
dGVuc2lvblRyYWNrZXI7CisKKyAgICBSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4gbV9wZW5kaW5n
RHJvcFNhbmRib3hFeHRlbnNpb247CisgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9u
Pj4gbV9wZW5kaW5nRHJvcEV4dGVuc2lvbnNGb3JGaWxlVXBsb2FkOworCisgICAgUEFMOjpIeXN0
ZXJlc2lzQWN0aXZpdHkgbV9wYWdlU2Nyb2xsZWRIeXN0ZXJlc2lzOworCisgICAgYm9vbCBtX2Nh
blJ1bkJlZm9yZVVubG9hZENvbmZpcm1QYW5lbCB7IGZhbHNlIH07CisKKyAgICBib29sIG1fY2Fu
UnVuTW9kYWwgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc1J1bm5pbmdNb2RhbCB7IGZhbHNlIH07
CisKKyNpZiBFTkFCTEUoRFJBR19TVVBQT1JUKQorICAgIGJvb2wgbV9pc1N0YXJ0aW5nRHJhZyB7
IGZhbHNlIH07CisgICAgT3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdTb3VyY2VBY3Rpb24+IG1fYWxs
b3dlZERyYWdTb3VyY2VBY3Rpb25zIHsgV2ViQ29yZTo6YW55RHJhZ1NvdXJjZUFjdGlvbigpIH07
CisjZW5kaWYKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEVOQUJMRShEUkFHX1NVUFBP
UlQpCisgICAgSGFzaFNldDxSZWZQdHI8V2ViQ29yZTo6SFRNTEltYWdlRWxlbWVudD4+IG1fcGVu
ZGluZ0ltYWdlRWxlbWVudHNGb3JEcm9wU25hcHNob3Q7CisgICAgc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpTaW1wbGVSYW5nZT4gbV9yYW5nZUZvckRyb3BTbmFwc2hvdDsKKyNlbmRpZgorCisgICAg
Ym9vbCBtX2NhY2hlZE1haW5GcmFtZUlzUGlubmVkVG9MZWZ0U2lkZSB7IHRydWUgfTsKKyAgICBi
b29sIG1fY2FjaGVkTWFpbkZyYW1lSXNQaW5uZWRUb1JpZ2h0U2lkZSB7IHRydWUgfTsKKyAgICBi
b29sIG1fY2FjaGVkTWFpbkZyYW1lSXNQaW5uZWRUb1RvcFNpZGUgeyB0cnVlIH07CisgICAgYm9v
bCBtX2NhY2hlZE1haW5GcmFtZUlzUGlubmVkVG9Cb3R0b21TaWRlIHsgdHJ1ZSB9OworICAgIGJv
b2wgbV9jYW5TaG9ydENpcmN1aXRIb3Jpem9udGFsV2hlZWxFdmVudHMgeyBmYWxzZSB9OworICAg
IGJvb2wgbV9oYXNXaGVlbEV2ZW50SGFuZGxlcnMgeyBmYWxzZSB9OworCisgICAgdW5zaWduZWQg
bV9jYWNoZWRQYWdlQ291bnQgeyAwIH07CisKKyAgICBIYXNoU2V0PHVuc2lnbmVkIGxvbmc+IG1f
dHJhY2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJZGVudGlmaWVyczsKKworICAgIFdlYkNvcmU6
OkludFNpemUgbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQ7CisgICAgV2ViQ29yZTo6SW50U2l6
ZSBtX3NpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplOworICAgIGJvb2wgbV9hdXRvU2l6
aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0IHsgZmFsc2UgfTsKKyAgICBzdGQ6Om9wdGlvbmFs
PFdlYkNvcmU6OkludFNpemU+IG1fdmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0czsKKwor
ICAgIGJvb2wgbV91c2VySXNJbnRlcmFjdGluZyB7IGZhbHNlIH07CisKKyNpZiBIQVZFKFRPVUNI
X0JBUikKKyAgICBib29sIG1faGFzRXZlckZvY3VzZWRFbGVtZW50RHVlVG9Vc2VySW50ZXJhY3Rp
b25TaW5jZVBhZ2VUcmFuc2l0aW9uIHsgZmFsc2UgfTsKKyAgICBib29sIG1fcmVxdWlyZXNVc2Vy
QWN0aW9uRm9yRWRpdGluZ0NvbnRyb2xzTWFuYWdlciB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lz
VG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUgeyBmYWxzZSB9
OworICAgIGJvb2wgbV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciB7IGZhbHNlIH07
CisjZW5kaWYKKyAgICBPcHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gbV9s
YXN0QWN0aXZpdHlTdGF0ZUNoYW5nZXM7CisKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAg
ICBib29sIG1fd2FpdGluZ0ZvckNvbnRleHRNZW51VG9TaG93IHsgZmFsc2UgfTsKKyNlbmRpZgor
CisgICAgUmVmUHRyPFdlYkNvcmU6OkVsZW1lbnQ+IG1fZm9jdXNlZEVsZW1lbnQ7CisgICAgUmVm
UHRyPFdlYkNvcmU6OkVsZW1lbnQ+IG1fcmVjZW50bHlCbHVycmVkRWxlbWVudDsKKyAgICBib29s
IG1faGFzUGVuZGluZ0lucHV0Q29udGV4dFVwZGF0ZUFmdGVyQmx1cnJpbmdBbmRSZWZvY3VzaW5n
RWxlbWVudCB7IGZhbHNlIH07CisgICAgYm9vbCBtX3BlbmRpbmdUaGVtZUNvbG9yQ2hhbmdlIHsg
ZmFsc2UgfTsKKyAgICBib29sIG1fcGVuZGluZ1BhZ2VFeHRlbmRlZEJhY2tncm91bmRDb2xvckNo
YW5nZSB7IGZhbHNlIH07CisgICAgYm9vbCBtX3BlbmRpbmdTYW1wbGVkUGFnZVRvcENvbG9yQ2hh
bmdlIHsgZmFsc2UgfTsKKworICAgIGVudW0gY2xhc3MgUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRl
U3RhdHVzIDogdWludDhfdCB7CisgICAgICAgIE5vdFNjaGVkdWxlZCwKKyAgICAgICAgU2NoZWR1
bGVkLAorICAgICAgICBTY2hlZHVsZWREdXJpbmdBY2Nlc3NpYmlsaXR5U2VsZWN0aW9uQ2hhbmdl
LAorICAgIH07CisgICAgUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVzIG1fcGVuZGluZ0Vk
aXRvclN0YXRlVXBkYXRlU3RhdHVzIHsgUGVuZGluZ0VkaXRvclN0YXRlVXBkYXRlU3RhdHVzOjpO
b3RTY2hlZHVsZWQgfTsKKworI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQorICAgIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+IG1fcGVuZGluZ1N5bmNocm9ub3VzVG91Y2hFdmVudFJl
cGx5OworI2VuZGlmCisKKyNpZiBFTkFCTEUoTUVUQV9WSUVXUE9SVCkKKyAgICBXZWJDb3JlOjpW
aWV3cG9ydENvbmZpZ3VyYXRpb24gbV92aWV3cG9ydENvbmZpZ3VyYXRpb247CisgICAgYm9vbCBt
X3VzZVRlc3RpbmdWaWV3cG9ydENvbmZpZ3VyYXRpb24geyBmYWxzZSB9OworICAgIGJvb2wgbV9m
b3JjZUFsd2F5c1VzZXJTY2FsYWJsZSB7IGZhbHNlIH07CisjZW5kaWYKKworI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTaW1wbGVSYW5nZT4gbV9j
dXJyZW50V29yZFJhbmdlOworICAgIFJlZlB0cjxXZWJDb3JlOjpOb2RlPiBtX2ludGVyYWN0aW9u
Tm9kZTsKKyAgICBXZWJDb3JlOjpJbnRQb2ludCBtX2xhc3RJbnRlcmFjdGlvbkxvY2F0aW9uOwor
CisgICAgYm9vbCBtX2lzU2hvd2luZ0lucHV0Vmlld0ZvckZvY3VzZWRFbGVtZW50IHsgZmFsc2Ug
fTsKKyAgICBib29sIG1faGFzSGFuZGxlZFN5bnRoZXRpY0NsaWNrIHsgZmFsc2UgfTsKKyAgICAK
KyAgICBlbnVtIFNlbGVjdGlvbkFuY2hvciB7IFN0YXJ0LCBFbmQgfTsKKyAgICBTZWxlY3Rpb25B
bmNob3IgbV9zZWxlY3Rpb25BbmNob3IgeyBTdGFydCB9OworCisgICAgUmVmUHRyPFdlYkNvcmU6
Ok5vZGU+IG1fcG90ZW50aWFsVGFwTm9kZTsKKyAgICBXZWJDb3JlOjpGbG9hdFBvaW50IG1fcG90
ZW50aWFsVGFwTG9jYXRpb247CisgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBt
X3BvdGVudGlhbFRhcFNlY3VyaXR5T3JpZ2luOworCisgICAgYm9vbCBtX2hhc1JlY2VpdmVkVmlz
aWJsZUNvbnRlbnRSZWN0c0FmdGVyRGlkQ29tbWl0TG9hZCB7IGZhbHNlIH07CisgICAgYm9vbCBt
X2hhc1Jlc3RvcmVkRXhwb3NlZENvbnRlbnRSZWN0QWZ0ZXJEaWRDb21taXRMb2FkIHsgZmFsc2Ug
fTsKKyAgICBib29sIG1fc2NhbGVXYXNTZXRCeVVJUHJvY2VzcyB7IGZhbHNlIH07CisgICAgYm9v
bCBtX3VzZXJIYXNDaGFuZ2VkUGFnZVNjYWxlRmFjdG9yIHsgZmFsc2UgfTsKKyAgICBib29sIG1f
aGFzU3RhYmxlUGFnZVNjYWxlRmFjdG9yIHsgdHJ1ZSB9OworICAgIGJvb2wgbV9pc0luU3RhYmxl
U3RhdGUgeyB0cnVlIH07CisgICAgYm9vbCBtX3Nob3VsZFJldmVhbEN1cnJlbnRTZWxlY3Rpb25B
ZnRlckluc2VydGlvbiB7IHRydWUgfTsKKyAgICBib29sIG1fc2NyZWVuSXNCZWluZ0NhcHR1cmVk
IHsgZmFsc2UgfTsKKyAgICBNb25vdG9uaWNUaW1lIG1fb2xkZXN0Tm9uU3RhYmxlVXBkYXRlVmlz
aWJsZUNvbnRlbnRSZWN0c1RpbWVzdGFtcDsKKyAgICBTZWNvbmRzIG1fZXN0aW1hdGVkTGF0ZW5j
eSB7IDAgfTsKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgbV9zY3JlZW5TaXplOworICAgIFdlYkNv
cmU6OkZsb2F0U2l6ZSBtX2F2YWlsYWJsZVNjcmVlblNpemU7CisgICAgV2ViQ29yZTo6RmxvYXRT
aXplIG1fb3ZlcnJpZGVTY3JlZW5TaXplOworCisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpT
aW1wbGVSYW5nZT4gbV9pbml0aWFsU2VsZWN0aW9uOworICAgIFdlYkNvcmU6OlZpc2libGVTZWxl
Y3Rpb24gbV9zdG9yZWRTZWxlY3Rpb25Gb3JBY2Nlc3NpYmlsaXR5IHsgV2ViQ29yZTo6VmlzaWJs
ZVNlbGVjdGlvbigpIH07CisgICAgV2ViQ29yZTo6RmxvYXRTaXplIG1fbWF4aW11bVVub2JzY3Vy
ZWRTaXplOworICAgIGludDMyX3QgbV9kZXZpY2VPcmllbnRhdGlvbiB7IDAgfTsKKyAgICBib29s
IG1fa2V5Ym9hcmRJc0F0dGFjaGVkIHsgZmFsc2UgfTsKKyAgICBib29sIG1fY2FuU2hvd1doaWxl
TG9ja2VkIHsgZmFsc2UgfTsKKyAgICBib29sIG1faW5EeW5hbWljU2l6ZVVwZGF0ZSB7IGZhbHNl
IH07CisgICAgSGFzaE1hcDxzdGQ6OnBhaXI8V2ViQ29yZTo6SW50U2l6ZSwgZG91YmxlPiwgV2Vi
Q29yZTo6SW50UG9pbnQ+IG1fZHluYW1pY1NpemVVcGRhdGVIaXN0b3J5OworICAgIFJlZlB0cjxX
ZWJDb3JlOjpOb2RlPiBtX3BlbmRpbmdTeW50aGV0aWNDbGlja05vZGU7CisgICAgV2ViQ29yZTo6
RmxvYXRQb2ludCBtX3BlbmRpbmdTeW50aGV0aWNDbGlja0xvY2F0aW9uOworICAgIFdlYkNvcmU6
OkZsb2F0UmVjdCBtX3ByZXZpb3VzRXhwb3NlZENvbnRlbnRSZWN0OworICAgIE9wdGlvblNldDxX
ZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcj4gbV9wZW5kaW5nU3ludGhldGljQ2xpY2tNb2RpZmll
cnM7CisgICAgV2ViQ29yZTo6UG9pbnRlcklEIG1fcGVuZGluZ1N5bnRoZXRpY0NsaWNrUG9pbnRl
cklkIHsgMCB9OworICAgIEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb25JZGVudGlmaWVyIG1fbGFz
dEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb25JZGVudGlmaWVyOworICAgIHN0ZDo6b3B0aW9uYWw8
RHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZUlEPiBtX3BlbmRpbmdEeW5hbWljVmlld3BvcnRTaXpl
VXBkYXRlSUQ7CisgICAgZG91YmxlIG1fbGFzdFRyYW5zYWN0aW9uUGFnZVNjYWxlRmFjdG9yIHsg
MCB9OworICAgIFRyYW5zYWN0aW9uSUQgbV9sYXN0VHJhbnNhY3Rpb25JRFdpdGhTY2FsZUNoYW5n
ZTsKKworICAgIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0
UG9zaXRpb24mJik+IG1fcGVuZGluZ1N5bmNocm9ub3VzUG9zaXRpb25JbmZvcm1hdGlvblJlcGx5
OworICAgIHN0ZDo6b3B0aW9uYWw8c3RkOjpwYWlyPFRyYW5zYWN0aW9uSUQsIGRvdWJsZT4+IG1f
bGFzdExheWVyVHJlZVRyYW5zYWN0aW9uSWRBbmRQYWdlU2NhbGVCZWZvcmVTY2FsaW5nUGFnZTsK
KyNlbmRpZgorCisgICAgV2ViQ29yZTo6VGltZXIgbV9sYXllclZvbGF0aWxpdHlUaW1lcjsKKyAg
ICBWZWN0b3I8Q29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4+IG1fbWFya0xheWVyc0FzVm9s
YXRpbGVDb21wbGV0aW9uSGFuZGxlcnM7CisgICAgYm9vbCBtX2lzU3VzcGVuZGVkVW5kZXJMb2Nr
IHsgZmFsc2UgfTsKKworICAgIEhhc2hTZXQ8U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhh
c2g+IG1fbWltZVR5cGVzV2l0aEN1c3RvbUNvbnRlbnRQcm92aWRlcnM7CisgICAgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpDb2xvcj4gbV9iYWNrZ3JvdW5kQ29sb3IgeyBXZWJDb3JlOjpDb2xvcjo6
d2hpdGUgfTsKKworICAgIEhhc2hTZXQ8dW5zaWduZWQ+IG1fYWN0aXZlUmVuZGVyaW5nU3VwcHJl
c3Npb25Ub2tlbnM7CisgICAgdW5zaWduZWQgbV9tYXhpbXVtUmVuZGVyaW5nU3VwcHJlc3Npb25U
b2tlbiB7IDAgfTsKKyAgICAKKyAgICBXZWJDb3JlOjpTY3JvbGxQaW5uaW5nQmVoYXZpb3IgbV9z
Y3JvbGxQaW5uaW5nQmVoYXZpb3IgeyBXZWJDb3JlOjpEb05vdFBpbiB9OworICAgIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6U2Nyb2xsYmFyT3ZlcmxheVN0eWxlPiBtX3Njcm9sbGJhck92ZXJsYXlT
dHlsZTsKKworICAgIGJvb2wgbV91c2VBc3luY1Njcm9sbGluZyB7IGZhbHNlIH07CisKKyAgICBP
cHRpb25TZXQ8V2ViQ29yZTo6QWN0aXZpdHlTdGF0ZTo6RmxhZz4gbV9hY3Rpdml0eVN0YXRlOwor
CisgICAgYm9vbCBtX2lzQXBwTmFwRW5hYmxlZCB7IHRydWUgfTsKKyAgICBVc2VyQWN0aXZpdHkg
bV91c2VyQWN0aXZpdHk7CisKKyAgICB1aW50NjRfdCBtX3BlbmRpbmdOYXZpZ2F0aW9uSUQgeyAw
IH07CisgICAgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRhPiBtX3BlbmRpbmdXZWJz
aXRlUG9saWNpZXM7CisKKyAgICBib29sIG1fbWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0ZWQgeyBm
YWxzZSB9OworICAgIGJvb2wgbV9zaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMgeyB0
cnVlIH07CisgICAgYm9vbCBtX2lzU2VsZWN0aW5nVGV4dFdoaWxlSW5zZXJ0aW5nQXN5bmNocm9u
b3VzbHkgeyBmYWxzZSB9OworICAgIGJvb2wgbV9pc0NoYW5naW5nU2VsZWN0aW9uRm9yQWNjZXNz
aWJpbGl0eSB7IGZhbHNlIH07CisKKyAgICBlbnVtIGNsYXNzIEVkaXRvclN0YXRlSXNDb250ZW50
RWRpdGFibGUgeyBObywgWWVzLCBVbnNldCB9OworICAgIG11dGFibGUgRWRpdG9yU3RhdGVJc0Nv
bnRlbnRFZGl0YWJsZSBtX2xhc3RFZGl0b3JTdGF0ZVdhc0NvbnRlbnRFZGl0YWJsZSB7IEVkaXRv
clN0YXRlSXNDb250ZW50RWRpdGFibGU6OlVuc2V0IH07CisgICAgbXV0YWJsZSBFZGl0b3JTdGF0
ZUlkZW50aWZpZXIgbV9sYXN0RWRpdG9yU3RhdGVJZGVudGlmaWVyOworCisjaWYgUExBVEZPUk0o
R1RLKSB8fCBQTEFURk9STShXUEUpCisgICAgc3RkOjpvcHRpb25hbDxJbnB1dE1ldGhvZFN0YXRl
PiBtX2lucHV0TWV0aG9kU3RhdGU7CisjZW5kaWYKKworI2lmIEVOQUJMRShWSURFTykgJiYgVVNF
KEdTVFJFQU1FUikKKyAgICBSZWZQdHI8V2ViQ29yZTo6TWVkaWFQbGF5ZXJSZXF1ZXN0SW5zdGFs
bE1pc3NpbmdQbHVnaW5zQ2FsbGJhY2s+IG1faW5zdGFsbE1lZGlhUGx1Z2luc0NhbGxiYWNrOwor
I2VuZGlmCisKKyNpZiBVU0UoT1NfU1RBVEUpCisgICAgV2FsbFRpbWUgbV9sb2FkQ29tbWl0VGlt
ZTsKKyNlbmRpZgorCisgICAgV2ViQ29yZTo6VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiBt
X3VzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24geyBXZWJDb3JlOjpVc2VySW50ZXJmYWNlTGF5
b3V0RGlyZWN0aW9uOjpMVFIgfTsKKworICAgIGNvbnN0IFN0cmluZyBtX292ZXJyaWRlQ29udGVu
dFNlY3VyaXR5UG9saWN5OworICAgIGNvbnN0IHN0ZDo6b3B0aW9uYWw8ZG91YmxlPiBtX2NwdUxp
bWl0OworCisjaWYgVVNFKFdQRV9SRU5ERVJFUikKKyAgICBJUEM6OkF0dGFjaG1lbnQgbV9ob3N0
RmlsZURlc2NyaXB0b3I7CisjZW5kaWYKKworICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8V2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5Pj4gbV9zY2hlbWVUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1h
cDsKKyAgICBIYXNoTWFwPHVpbnQ2NF90LCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkqPiBtX2lk
ZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcDsKKworICAgIEhhc2hNYXA8dWludDY0
X3QsIEZ1bmN0aW9uPHZvaWQoYm9vbCBncmFudGVkKT4+IG1fc3RvcmFnZUFjY2Vzc1Jlc3BvbnNl
Q2FsbGJhY2tNYXA7CisKKyAgICBPcHRpb25TZXQ8TGF5ZXJUcmVlRnJlZXplUmVhc29uPiBtX2xh
eWVyVHJlZUZyZWV6ZVJlYXNvbnM7CisgICAgYm9vbCBtX2lzU3VzcGVuZGVkIHsgZmFsc2UgfTsK
KyAgICBib29sIG1fbmVlZHNGb250QXR0cmlidXRlcyB7IGZhbHNlIH07CisgICAgYm9vbCBtX2Zp
cnN0Rmx1c2hBZnRlckNvbW1pdCB7IGZhbHNlIH07CisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAg
V2Vha1B0cjxXZWJSZW1vdGVPYmplY3RSZWdpc3RyeT4gbV9yZW1vdGVPYmplY3RSZWdpc3RyeTsK
KyNlbmRpZgorICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgbV93ZWJQYWdlUHJveHlJZGVudGlm
aWVyOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6SW50U2l6ZT4gbV9wZW5kaW5nSW50cmlu
c2ljQ29udGVudFNpemU7CisgICAgV2ViQ29yZTo6SW50U2l6ZSBtX2xhc3RTZW50SW50cmluc2lj
Q29udGVudFNpemU7CisjaWYgSEFWRShWSVNJQklMSVRZX1BST1BBR0FUSU9OX1ZJRVcpCisgICAg
c3RkOjp1bmlxdWVfcHRyPExheWVySG9zdGluZ0NvbnRleHQ+IG1fY29udGV4dEZvclZpc2liaWxp
dHlQcm9wYWdhdGlvbjsKKyNlbmRpZgorI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAg
V2ViQ29yZTo6VGltZXIgbV90ZXh0QXV0b1NpemluZ0FkanVzdG1lbnRUaW1lcjsKKyNlbmRpZgor
CisjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZFTlRJT04pCisgICAgSGFzaE1h
cDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+
IG1fZG9tYWluc1dpdGhQYWdlTGV2ZWxTdG9yYWdlQWNjZXNzOworICAgIEhhc2hTZXQ8V2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4+IG1fbG9hZGVkU3VicmVzb3VyY2VEb21haW5zOworI2VuZGlm
CisKKyAgICBTdHJpbmcgbV9vdmVycmlkZGVuTWVkaWFUeXBlOworICAgIFN0cmluZyBtX3Byb2Nl
c3NEaXNwbGF5TmFtZTsKKyAgICBXZWJDb3JlOjpBbGxvd3NDb250ZW50SmF2YVNjcmlwdCBtX2Fs
bG93c0NvbnRlbnRKYXZhU2NyaXB0RnJvbU1vc3RSZWNlbnROYXZpZ2F0aW9uIHsgV2ViQ29yZTo6
QWxsb3dzQ29udGVudEphdmFTY3JpcHQ6OlllcyB9OworCisjaWYgRU5BQkxFKEFQUF9CT1VORF9E
T01BSU5TKQorICAgIGJvb2wgbV9saW1pdHNOYXZpZ2F0aW9uc1RvQXBwQm91bmREb21haW5zIHsg
ZmFsc2UgfTsKKyAgICBib29sIG1fbmF2aWdhdGlvbkhhc09jY3VyZWQgeyBmYWxzZSB9OworI2Vu
ZGlmCisKKyAgICBib29sIG1fbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQgeyB0cnVlIH07
CisKKyAgICBib29sIG1fY2FuVXNlQ3JlZGVudGlhbFN0b3JhZ2UgeyB0cnVlIH07CisKKyAgICBi
b29sIG1fZGlkVXBkYXRlUmVuZGVyaW5nQWZ0ZXJDb21taXR0aW5nTG9hZCB7IGZhbHNlIH07CisK
KyAgICBWZWN0b3I8U3RyaW5nPiBtX2NvcnNEaXNhYmxpbmdQYXR0ZXJuczsKKworICAgIHN0ZDo6
dW5pcXVlX3B0cjxXZWJDb3JlOjpDYWNoZWRQYWdlPiBtX2NhY2hlZFBhZ2U7CisKKyNpZiBFTkFC
TEUoSVBDX1RFU1RJTkdfQVBJKQorICAgIGJvb2wgbV9pcGNUZXN0aW5nQVBJRW5hYmxlZCB7IGZh
bHNlIH07CisgICAgdWludDY0X3QgbV92aXNpdGVkTGlua1RhYmxlSUQ7CisjZW5kaWYKKworI2lm
IEVOQUJMRShNRURJQV9TRVNTSU9OX0NPT1JESU5BVE9SKQorICAgIFJlZlB0cjxXZWJDb3JlOjpN
ZWRpYVNlc3Npb25Db29yZGluYXRvcj4gbV9tZWRpYVNlc3Npb25Db29yZGluYXRvcjsKKyAgICBS
ZWZQdHI8UmVtb3RlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3I+IG1fcmVtb3RlTWVkaWFTZXNzaW9u
Q29vcmRpbmF0b3I7CisjZW5kaWYKKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykKKyAgICBzdGQ6
OnVuaXF1ZV9wdHI8UmVtb3RlUmVuZGVyaW5nQmFja2VuZFByb3h5PiBtX3JlbW90ZVJlbmRlcmlu
Z0JhY2tlbmRQcm94eTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKElNQUdFX0FOQUxZU0lTKQorICAg
IFZlY3RvcjxzdGQ6OnBhaXI8V2Vha1B0cjxXZWJDb3JlOjpIVE1MRWxlbWVudD4sIFZlY3RvcjxD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpFbGVtZW50PiYmKT4+Pj4gbV9l
bGVtZW50c1BlbmRpbmdUZXh0UmVjb2duaXRpb247CisjZW5kaWYKKworI2lmIEVOQUJMRShXRUJY
UikgJiYgIVVTRShPUEVOWFIpCisgICAgc3RkOjp1bmlxdWVfcHRyPFBsYXRmb3JtWFJTeXN0ZW1Q
cm94eT4gbV94clN5c3RlbVByb3h5OworI2VuZGlmCisgICAgCisjaWYgRU5BQkxFKEFQUF9ISUdI
TElHSFRTKQorICAgIFdlYkNvcmU6OkhpZ2hsaWdodFZpc2liaWxpdHkgbV9hcHBIaWdobGlnaHRz
VmlzaWJsZSB7IFdlYkNvcmU6OkhpZ2hsaWdodFZpc2liaWxpdHk6OkhpZGRlbiB9OworI2VuZGlm
Cit9OworCisjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCitpbmxpbmUgdm9pZCBXZWJQYWdlOjpw
bGF0Zm9ybVdpbGxQZXJmb3JtRWRpdGluZ0NvbW1hbmQoKSB7IH0KK2lubGluZSBib29sIFdlYlBh
Z2U6OnJlcXVpcmVzUG9zdExheW91dERhdGFGb3JFZGl0b3JTdGF0ZShjb25zdCBXZWJDb3JlOjpG
cmFtZSYpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CitpbmxpbmUgdm9pZCBXZWJQYWdlOjpwcmVw
YXJlVG9SdW5Nb2RhbEphdmFTY3JpcHREaWFsb2coKSB7IH0KKyNlbmRpZgorCisjaWYgIVBMQVRG
T1JNKE1BQykKK2lubGluZSBib29sIFdlYlBhZ2U6OnNob3VsZEF2b2lkQ29tcHV0aW5nUG9zdExh
eW91dERhdGFGb3JFZGl0b3JTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisjZW5kaWYK
KworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgppbmRleCA1ZmRiMWQwMDRkMDA0MzViMmVh
MTEyNTc3OWZkMmExMGY2NjZlNGQwLi5jNDhjNzJhOWE2MTZmMTQ0Y2IzNzI3ZWM2YjEzOWI3N2E0
YWZlZGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4KQEAgLTI3LDcgKzI3LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZSBM
ZWdhY3lSZWNlaXZlciB7CiAKICAgICBTZXRCYWNrZ3JvdW5kQ29sb3Ioc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpDb2xvcj4gY29sb3IpCiAKLSAgICBBZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgZW51bTp1aW50OF90IEpTQzo6TWVzc2FnZVNvdXJjZSBt
ZXNzYWdlU291cmNlLCBlbnVtOnVpbnQ4X3QgSlNDOjpNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVs
LCBTdHJpbmcgbWVzc2FnZSwgdWludDY0X3QgcmVxdWVzdElEKQorICAgIEFkZENvbnNvbGVNZXNz
YWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBlbnVtOnVpbnQ4X3QgSlNDOjpN
ZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VMZXZl
bCBtZXNzYWdlTGV2ZWwsIFN0cmluZyBtZXNzYWdlLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcmVxdWVzdElEKQogICAgIFNlbmRDU1BWaW9sYXRpb25SZXBvcnQoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFVSTCByZXBvcnRVUkwsIElQQzo6Rm9ybURhdGFSZWZl
cmVuY2UgcmVwb3J0RGF0YSkKICAgICBTZW5kQ09FUFBvbGljeUluaGVyaXRlbmNlVmlvbGF0aW9u
KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhIGVtYmVkZGVyT3JpZ2luLCBTdHJpbmcgZW5kcG9pbnQsIGVudW06Ym9vbCBX
ZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24gZGlzcG9zaXRpb24sIFN0cmluZyB0eXBlLCBVUkwgYmxv
Y2tlZFVSTCkKICAgICBTZW5kQ09FUENPUlBWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgZW1iZWRkZXJP
cmlnaW4sIFN0cmluZyBlbmRwb2ludCwgZW51bTpib29sIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlv
biBkaXNwb3NpdGlvbiwgZW51bTp1aW50OF90IFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGlu
YXRpb24gZGVzdGluYXRpb24sIFVSTCBibG9ja2VkVVJMKQpAQCAtNTUzLDExICs1NTMsMTEgQEAg
R2VuZXJhdGVTeW50aGV0aWNFZGl0aW5nQ29tbWFuZChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50
aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUKIAogICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1
aW50NjRfdCBpZGVudGlmaWVyLCBTdHJpbmcgc2NoZW1lKQogCi0gICAgVVJMU2NoZW1lVGFza1dp
bGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0IGFjdHVhbFJlcXVlc3QpIEFzeW5jCi0gICAgVVJMU2NoZW1lVGFza0RpZFBlcmZv
cm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCi0gICAgVVJMU2NoZW1lVGFza0RpZFJlY2Vp
dmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAgVVJMU2NoZW1l
VGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRhdGEpCi0gICAg
VVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKKyAgICBV
UkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IGFjdHVhbFJl
cXVlc3QpIEFzeW5jCisgICAgVVJMU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KQorICAgIFVSTFNjaGVtZVRhc2tE
aWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0
X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRhdGEpCisgICAg
VVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgZXJyb3IpCiAKICAgICBTZXRJc1N1c3BlbmRlZChib29sIHN1c3BlbmRlZCkK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5t
ZXNzYWdlcy5pbi5vcmlnIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5tZXNzYWdlcy5pbi5vcmlnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVmZGIxZDAwNGQwMDQzNWIyZWExMTI1Nzc5
ZmQyYTEwZjY2NmU0ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluLm9yaWcKQEAgLTAsMCArMSw2NDcgQEAKKyMg
Q29weXJpZ2h0IChDKSAyMDEwLTIwMjEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorIyAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUKKyMgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKKyMgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorIyBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUgorIyBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorIyBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LAorIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCittZXNzYWdlcyAtPiBX
ZWJQYWdlIExlZ2FjeVJlY2VpdmVyIHsKKyAgICBTZXRJbml0aWFsRm9jdXMoYm9vbCBmb3J3YXJk
LCBib29sIGlzS2V5Ym9hcmRFdmVudFZhbGlkLCBXZWJLaXQ6OldlYktleWJvYXJkRXZlbnQgZXZl
bnQpIC0+ICgpIEFzeW5jCisgICAgU2V0QWN0aXZpdHlTdGF0ZShPcHRpb25TZXQ8V2ViQ29yZTo6
QWN0aXZpdHlTdGF0ZTo6RmxhZz4gYWN0aXZpdHlTdGF0ZSwgV2ViS2l0OjpBY3Rpdml0eVN0YXRl
Q2hhbmdlSUQgYWN0aXZpdHlTdGF0ZUNoYW5nZUlEKSAtPiAoKSBBc3luYworICAgIFNldExheWVy
SG9zdGluZ01vZGUoZW51bTp1aW50OF90IFdlYktpdDo6TGF5ZXJIb3N0aW5nTW9kZSBsYXllckhv
c3RpbmdNb2RlKQorCisgICAgU2V0QmFja2dyb3VuZENvbG9yKHN0ZDo6b3B0aW9uYWw8V2ViQ29y
ZTo6Q29sb3I+IGNvbG9yKQorCisgICAgQWRkQ29uc29sZU1lc3NhZ2UoV2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyIGZyYW1lSUQsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VTb3VyY2UgbWVzc2Fn
ZVNvdXJjZSwgZW51bTp1aW50OF90IEpTQzo6TWVzc2FnZUxldmVsIG1lc3NhZ2VMZXZlbCwgU3Ry
aW5nIG1lc3NhZ2UsIHVpbnQ2NF90IHJlcXVlc3RJRCkKKyAgICBTZW5kQ1NQVmlvbGF0aW9uUmVw
b3J0KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBVUkwgcmVwb3J0VVJMLCBJUEM6
OkZvcm1EYXRhUmVmZXJlbmNlIHJlcG9ydERhdGEpCisgICAgU2VuZENPRVBQb2xpY3lJbmhlcml0
ZW5jZVZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSBlbWJlZGRlck9yaWdpbiwgU3RyaW5nIGVuZHBvaW50
LCBlbnVtOmJvb2wgV2ViQ29yZTo6Q09FUERpc3Bvc2l0aW9uIGRpc3Bvc2l0aW9uLCBTdHJpbmcg
dHlwZSwgVVJMIGJsb2NrZWRVUkwpCisgICAgU2VuZENPRVBDT1JQVmlvbGF0aW9uKFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5E
YXRhIGVtYmVkZGVyT3JpZ2luLCBTdHJpbmcgZW5kcG9pbnQsIGVudW06Ym9vbCBXZWJDb3JlOjpD
T0VQRGlzcG9zaXRpb24gZGlzcG9zaXRpb24sIGVudW06dWludDhfdCBXZWJDb3JlOjpGZXRjaE9w
dGlvbnM6OkRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uLCBVUkwgYmxvY2tlZFVSTCkKKyAgICBFbnF1
ZXVlU2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCwgV2ViQ29yZTo6U2VjdXJpdHlQb2xpY3lWaW9sYXRpb25FdmVudDo6SW5pdCBldmVu
dEluaXQpCisKKyAgICBUZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdG
b3JTeW5jUmVwbHkoKSAtPiAoYm9vbCBoYW5kbGVkKSBTeW5jaHJvbm91cworCisjaWYgUExBVEZP
Uk0oQ09DT0EpCisgICAgU2V0VG9wQ29udGVudEluc2V0RmVuY2VkKGZsb2F0IGNvbnRlbnRJbnNl
dCwgTWFjaFNlbmRSaWdodCBtYWNoU2VuZFJpZ2h0KQorI2VuZGlmCisgICAgU2V0VG9wQ29udGVu
dEluc2V0KGZsb2F0IGNvbnRlbnRJbnNldCkKKworICAgIFNldFVuZGVybGF5Q29sb3IoV2ViQ29y
ZTo6Q29sb3IgY29sb3IpCisgICAgU2V0VW5kZXJQYWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUo
V2ViQ29yZTo6Q29sb3IgdW5kZXJQYWdlQmFja2dyb3VuZENvbG9yT3ZlcnJpZGUpCisKKyAgICBW
aWV3V2lsbFN0YXJ0TGl2ZVJlc2l6ZSgpCisgICAgVmlld1dpbGxFbmRMaXZlUmVzaXplKCkKKwor
ICAgIEV4ZWN1dGVFZGl0Q29tbWFuZFdpdGhDYWxsYmFjayhTdHJpbmcgbmFtZSwgU3RyaW5nIGFy
Z3VtZW50KSAtPiAoKSBBc3luYworICAgIEtleUV2ZW50KFdlYktpdDo6V2ViS2V5Ym9hcmRFdmVu
dCBldmVudCkKKyAgICBNb3VzZUV2ZW50KFdlYktpdDo6V2ViTW91c2VFdmVudCBldmVudCwgc3Rk
OjpvcHRpb25hbDxWZWN0b3I8V2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+PiBzYW5k
Ym94RXh0ZW5zaW9ucykKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgIFNldFZpZXdwb3J0
Q29uZmlndXJhdGlvblZpZXdMYXlvdXRTaXplKFdlYkNvcmU6OkZsb2F0U2l6ZSBzaXplLCBkb3Vi
bGUgc2NhbGVGYWN0b3IsIGRvdWJsZSBtaW5pbXVtRWZmZWN0aXZlRGV2aWNlV2lkdGgpCisgICAg
U2V0TWF4aW11bVVub2JzY3VyZWRTaXplKFdlYkNvcmU6OkZsb2F0U2l6ZSBzaXplKQorICAgIFNl
dERldmljZU9yaWVudGF0aW9uKGludDMyX3QgZGV2aWNlT3JpZW50YXRpb24pCisgICAgU2V0T3Zl
cnJpZGVWaWV3cG9ydEFyZ3VtZW50cyhzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlZpZXdwb3J0QXJn
dW1lbnRzPiBhcmd1bWVudHMpCisgICAgRHluYW1pY1ZpZXdwb3J0U2l6ZVVwZGF0ZShXZWJDb3Jl
OjpGbG9hdFNpemUgdmlld0xheW91dFNpemUsIFdlYkNvcmU6OkZsb2F0U2l6ZSBtYXhpbXVtVW5v
YnNjdXJlZFNpemUsIFdlYkNvcmU6OkZsb2F0UmVjdCB0YXJnZXRFeHBvc2VkQ29udGVudFJlY3Qs
IFdlYkNvcmU6OkZsb2F0UmVjdCB0YXJnZXRVbm9ic2N1cmVkUmVjdCwgV2ViQ29yZTo6RmxvYXRS
ZWN0IHRhcmdldFVub2JzY3VyZWRSZWN0SW5TY3JvbGxWaWV3Q29vcmRpbmF0ZXMsIFdlYkNvcmU6
OlJlY3RFZGdlczxmbG9hdD4gdGFyZ2V0VW5vYnNjdXJlZFNhZmVBcmVhSW5zZXRzLCBkb3VibGUg
c2NhbGUsIGludDMyX3QgZGV2aWNlT3JpZW50YXRpb24sIGRvdWJsZSBtaW5pbXVtRWZmZWN0aXZl
RGV2aWNlV2lkdGgsIHVpbnQ2NF90IGR5bmFtaWNWaWV3cG9ydFNpemVVcGRhdGVJRCkKKyAgICAK
KyAgICBTZXRTY3JlZW5Jc0JlaW5nQ2FwdHVyZWQoYm9vbCBjYXB0dXJlZCkKKworICAgIEF0dGVt
cHRTeW50aGV0aWNDbGljayhXZWJDb3JlOjpJbnRQb2ludCBwb2ludCwgT3B0aW9uU2V0PFdlYktp
dDo6V2ViRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnMsIFdlYktpdDo6VHJhbnNhY3Rpb25JRCBs
YXN0TGF5ZXJUcmVlVHJhbnNhY3Rpb25JZCkKKyAgICBQb3RlbnRpYWxUYXBBdFBvc2l0aW9uKFdl
YktpdDo6VGFwSWRlbnRpZmllciByZXF1ZXN0SUQsIFdlYkNvcmU6OkZsb2F0UG9pbnQgcG9pbnQs
IGJvb2wgc2hvdWxkUmVxdWVzdE1hZ25pZmljYXRpb25JbmZvcm1hdGlvbikKKyAgICBDb21taXRQ
b3RlbnRpYWxUYXAoT3B0aW9uU2V0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmll
cnMsIFdlYktpdDo6VHJhbnNhY3Rpb25JRCBsYXN0TGF5ZXJUcmVlVHJhbnNhY3Rpb25JZCwgV2Vi
Q29yZTo6UG9pbnRlcklEIHBvaW50ZXJJZCkKKyAgICBDYW5jZWxQb3RlbnRpYWxUYXAoKQorICAg
IFRhcEhpZ2hsaWdodEF0UG9zaXRpb24oV2ViS2l0OjpUYXBJZGVudGlmaWVyIHJlcXVlc3RJRCwg
V2ViQ29yZTo6RmxvYXRQb2ludCBwb2ludCkKKyAgICBEaWRSZWNvZ25pemVMb25nUHJlc3MoKQor
ICAgIEhhbmRsZURvdWJsZVRhcEZvckRvdWJsZUNsaWNrQXRQb2ludChXZWJDb3JlOjpJbnRQb2lu
dCBwb2ludCwgT3B0aW9uU2V0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnMs
IFdlYktpdDo6VHJhbnNhY3Rpb25JRCBsYXN0TGF5ZXJUcmVlVHJhbnNhY3Rpb25JZCkKKyAgICBJ
bnNwZWN0b3JOb2RlU2VhcmNoTW92ZWRUb1Bvc2l0aW9uKFdlYkNvcmU6OkZsb2F0UG9pbnQgcG9p
bnQpCisgICAgSW5zcGVjdG9yTm9kZVNlYXJjaEVuZGVkQXRQb3NpdGlvbihXZWJDb3JlOjpGbG9h
dFBvaW50IHBvaW50KQorICAgIEJsdXJGb2N1c2VkRWxlbWVudCgpCisgICAgU2VsZWN0V2l0aEdl
c3R1cmUoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIGVudW06dWludDhfdCBXZWJLaXQ6Okdlc3R1
cmVUeXBlIGdlc3R1cmVUeXBlLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpHZXN0dXJlUmVjb2duaXpl
clN0YXRlIGdlc3R1cmVTdGF0ZSwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50
KSAtPiAoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIGVudW06dWludDhfdCBXZWJLaXQ6Okdlc3R1
cmVUeXBlIGdlc3R1cmVUeXBlLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpHZXN0dXJlUmVjb2duaXpl
clN0YXRlIGdlc3R1cmVTdGF0ZSwgT3B0aW9uU2V0PFdlYktpdDo6U2VsZWN0aW9uRmxhZ3M+IGZs
YWdzKSBBc3luYworICAgIFVwZGF0ZVNlbGVjdGlvbldpdGhUb3VjaGVzKFdlYkNvcmU6OkludFBv
aW50IHBvaW50LCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTZWxlY3Rpb25Ub3VjaCB0b3VjaGVzLCBi
b29sIGJhc2VJc1N0YXJ0KSAtPiAoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIGVudW06dWludDhf
dCBXZWJLaXQ6OlNlbGVjdGlvblRvdWNoIHRvdWNoLCBPcHRpb25TZXQ8V2ViS2l0OjpTZWxlY3Rp
b25GbGFncz4gc2VsZWN0aW9uRmxhZ3MpIEFzeW5jCisgICAgU2VsZWN0V2l0aFR3b1RvdWNoZXMo
V2ViQ29yZTo6SW50UG9pbnQgZnJvbSwgV2ViQ29yZTo6SW50UG9pbnQgdG8sIGVudW06dWludDhf
dCBXZWJLaXQ6Okdlc3R1cmVUeXBlIGdlc3R1cmVUeXBlLCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpH
ZXN0dXJlUmVjb2duaXplclN0YXRlIGdlc3R1cmVTdGF0ZSkgLT4gKFdlYkNvcmU6OkludFBvaW50
IHBvaW50LCBlbnVtOnVpbnQ4X3QgV2ViS2l0OjpHZXN0dXJlVHlwZSBnZXN0dXJlVHlwZSwgZW51
bTp1aW50OF90IFdlYktpdDo6R2VzdHVyZVJlY29nbml6ZXJTdGF0ZSBnZXN0dXJlU3RhdGUsIE9w
dGlvblNldDxXZWJLaXQ6OlNlbGVjdGlvbkZsYWdzPiBzZWxlY3Rpb25GbGFncykgQXN5bmMKKyAg
ICBFeHRlbmRTZWxlY3Rpb24oZW51bTp1aW50OF90IFdlYkNvcmU6OlRleHRHcmFudWxhcml0eSBn
cmFudWxhcml0eSkgLT4gKCkgQXN5bmMKKyAgICBTZWxlY3RXb3JkQmFja3dhcmQoKQorICAgIE1v
dmVTZWxlY3Rpb25CeU9mZnNldChpbnQzMl90IG9mZnNldCkgLT4gKCkgQXN5bmMKKyAgICBTZWxl
Y3RUZXh0V2l0aEdyYW51bGFyaXR5QXRQb2ludChXZWJDb3JlOjpJbnRQb2ludCBwb2ludCwgZW51
bTp1aW50OF90IFdlYkNvcmU6OlRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSwgYm9vbCBpc0lu
dGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50KSAtPiAoKSBBc3luYworICAgIFNlbGVjdFBvc2l0
aW9uQXRCb3VuZGFyeVdpdGhEaXJlY3Rpb24oV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQsIGVudW06
dWludDhfdCBXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHksIGVudW06dWludDhf
dCBXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uLCBib29sIGlzSW50ZXJhY3Rp
bmdXaXRoRm9jdXNlZEVsZW1lbnQpIC0+ICgpIEFzeW5jCisgICAgTW92ZVNlbGVjdGlvbkF0Qm91
bmRhcnlXaXRoRGlyZWN0aW9uKGVudW06dWludDhfdCBXZWJDb3JlOjpUZXh0R3JhbnVsYXJpdHkg
Z3JhbnVsYXJpdHksIGVudW06dWludDhfdCBXZWJDb3JlOjpTZWxlY3Rpb25EaXJlY3Rpb24gZGly
ZWN0aW9uKSAtPiAoKSBBc3luYworICAgIFNlbGVjdFBvc2l0aW9uQXRQb2ludChXZWJDb3JlOjpJ
bnRQb2ludCBwb2ludCwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50KSAtPiAo
KSBBc3luYworICAgIEJlZ2luU2VsZWN0aW9uSW5EaXJlY3Rpb24oZW51bTp1aW50OF90IFdlYkNv
cmU6OlNlbGVjdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pIC0+IChib29sIGVuZElzTW92aW5nKSBB
c3luYworICAgIFVwZGF0ZVNlbGVjdGlvbldpdGhFeHRlbnRQb2ludChXZWJDb3JlOjpJbnRQb2lu
dCBwb2ludCwgYm9vbCBpc0ludGVyYWN0aW5nV2l0aEZvY3VzZWRFbGVtZW50LCBlbnVtOmJvb2wg
V2ViS2l0OjpSZXNwZWN0U2VsZWN0aW9uQW5jaG9yIHJlc3BlY3RTZWxlY3Rpb25BbmNob3IpIC0+
IChib29sIGVuZElzTW92aW5nKSBBc3luYworICAgIFVwZGF0ZVNlbGVjdGlvbldpdGhFeHRlbnRQ
b2ludEFuZEJvdW5kYXJ5KFdlYkNvcmU6OkludFBvaW50IHBvaW50LCBlbnVtOnVpbnQ4X3QgV2Vi
Q29yZTo6VGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5LCBib29sIGlzSW50ZXJhY3RpbmdXaXRo
Rm9jdXNlZEVsZW1lbnQpIC0+IChib29sIGVuZElzTW92aW5nKSBBc3luYworICAgIFJlcXVlc3RE
aWN0YXRpb25Db250ZXh0KCkgLT4gKFN0cmluZyBzZWxlY3RlZFRleHQsIFN0cmluZyB0ZXh0QmVm
b3JlLCBTdHJpbmcgdGV4dEFmdGVyKSBBc3luYworICAgIFJlcGxhY2VEaWN0YXRlZFRleHQoU3Ry
aW5nIG9sZFRleHQsIFN0cmluZyBuZXdUZXh0KQorICAgIFJlcGxhY2VTZWxlY3RlZFRleHQoU3Ry
aW5nIG9sZFRleHQsIFN0cmluZyBuZXdUZXh0KQorICAgIFJlcXVlc3RBdXRvY29ycmVjdGlvbkRh
dGEoU3RyaW5nIHRleHRGb3JBdXRvY29ycmVjdGlvbikgLT4gKHN0cnVjdCBXZWJLaXQ6OldlYkF1
dG9jb3JyZWN0aW9uRGF0YSBkYXRhKSBBc3luYworICAgIEFwcGx5QXV0b2NvcnJlY3Rpb24oU3Ry
aW5nIGNvcnJlY3Rpb24sIFN0cmluZyBvcmlnaW5hbFRleHQpIC0+IChTdHJpbmcgc3RyaW5nKSBB
c3luYworICAgIFN5bmNBcHBseUF1dG9jb3JyZWN0aW9uKFN0cmluZyBjb3JyZWN0aW9uLCBTdHJp
bmcgb3JpZ2luYWxUZXh0KSAtPiAoYm9vbCBhdXRvY29ycmVjdGlvbkFwcGxpZWQpIFN5bmNocm9u
b3VzCisgICAgUmVxdWVzdEF1dG9jb3JyZWN0aW9uQ29udGV4dCgpCisgICAgUmVxdWVzdEV2YXNp
b25SZWN0c0Fib3ZlU2VsZWN0aW9uKCkgLT4gKFZlY3RvcjxXZWJDb3JlOjpGbG9hdFJlY3Q+IHJl
Y3RzKSBBc3luYworICAgIEdldFBvc2l0aW9uSW5mb3JtYXRpb24oc3RydWN0IFdlYktpdDo6SW50
ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QgcmVxdWVzdCkgLT4gKHN0cnVjdCBXZWJLaXQ6Oklu
dGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uIGluZm9ybWF0aW9uKSBTeW5jaHJvbm91cwor
ICAgIFJlcXVlc3RQb3NpdGlvbkluZm9ybWF0aW9uKHN0cnVjdCBXZWJLaXQ6OkludGVyYWN0aW9u
SW5mb3JtYXRpb25SZXF1ZXN0IHJlcXVlc3QpCisgICAgU3RhcnRJbnRlcmFjdGlvbldpdGhFbGVt
ZW50Q29udGV4dE9yUG9zaXRpb24oc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpFbGVtZW50Q29udGV4
dD4gZWxlbWVudENvbnRleHQsIFdlYkNvcmU6OkludFBvaW50IHBvaW50KQorICAgIFN0b3BJbnRl
cmFjdGlvbigpCisgICAgUGVyZm9ybUFjdGlvbk9uRWxlbWVudCh1aW50MzJfdCBhY3Rpb24pCisg
ICAgRm9jdXNOZXh0Rm9jdXNlZEVsZW1lbnQoYm9vbCBpc0ZvcndhcmQpIC0+ICgpIEFzeW5jCisg
ICAgQXV0b2ZpbGxMb2dpbkNyZWRlbnRpYWxzKFN0cmluZyB1c2VybmFtZSwgU3RyaW5nIHBhc3N3
b3JkKQorICAgIFNldEZvY3VzZWRFbGVtZW50VmFsdWUoc3RydWN0IFdlYkNvcmU6OkVsZW1lbnRD
b250ZXh0IGNvbnRleHQsIFN0cmluZyB2YWx1ZSkKKyAgICBTZXRGb2N1c2VkRWxlbWVudFNlbGVj
dGVkSW5kZXgoc3RydWN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0IGNvbnRleHQsIHVpbnQzMl90
IGluZGV4LCBib29sIGFsbG93TXVsdGlwbGVTZWxlY3Rpb24pCisgICAgQXBwbGljYXRpb25XaWxs
UmVzaWduQWN0aXZlKCkKKyAgICBBcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZChib29sIGlz
U3VzcGVuZGVkVW5kZXJMb2NrKQorICAgIEFwcGxpY2F0aW9uRGlkRmluaXNoU25hcHNob3R0aW5n
QWZ0ZXJFbnRlcmluZ0JhY2tncm91bmQoKQorICAgIEFwcGxpY2F0aW9uV2lsbEVudGVyRm9yZWdy
b3VuZChib29sIGlzU3VzcGVuZGVkVW5kZXJMb2NrKQorICAgIEFwcGxpY2F0aW9uRGlkQmVjb21l
QWN0aXZlKCkKKyAgICBBcHBsaWNhdGlvbkRpZEVudGVyQmFja2dyb3VuZEZvck1lZGlhKGJvb2wg
aXNTdXNwZW5kZWRVbmRlckxvY2spCisgICAgQXBwbGljYXRpb25XaWxsRW50ZXJGb3JlZ3JvdW5k
Rm9yTWVkaWEoYm9vbCBpc1N1c3BlbmRlZFVuZGVyTG9jaykKKyAgICBDb250ZW50U2l6ZUNhdGVn
b3J5RGlkQ2hhbmdlKFN0cmluZyBjb250ZW50U2l6ZUNhdGVnb3J5KQorICAgIEdldFNlbGVjdGlv
bkNvbnRleHQoKSAtPiAoU3RyaW5nIHNlbGVjdGVkVGV4dCwgU3RyaW5nIHRleHRCZWZvcmUsIFN0
cmluZyB0ZXh0QWZ0ZXIpIEFzeW5jCisgICAgU2V0QWxsb3dzTWVkaWFEb2N1bWVudElubGluZVBs
YXliYWNrKGJvb2wgYWxsb3dzKQorICAgIEhhbmRsZVR3b0ZpbmdlclRhcEF0UG9pbnQoV2ViQ29y
ZTo6SW50UG9pbnQgcG9pbnQsIE9wdGlvblNldDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcj4g
bW9kaWZpZXJzLCBXZWJLaXQ6OlRhcElkZW50aWZpZXIgcmVxdWVzdElEKQorICAgIFNldEZvcmNl
QWx3YXlzVXNlclNjYWxhYmxlKGJvb2wgdXNlclNjYWxhYmxlKQorICAgIEdldFJlY3RzRm9yR3Jh
bnVsYXJpdHlXaXRoU2VsZWN0aW9uT2Zmc2V0KGVudW06dWludDhfdCBXZWJDb3JlOjpUZXh0R3Jh
bnVsYXJpdHkgZ3JhbnVsYXJpdHksIGludDMyX3Qgb2Zmc2V0KSAtPiAoVmVjdG9yPFdlYkNvcmU6
OlNlbGVjdGlvbkdlb21ldHJ5PiByZWN0KSBBc3luYworICAgIEdldFJlY3RzQXRTZWxlY3Rpb25P
ZmZzZXRXaXRoVGV4dChpbnQzMl90IG9mZnNldCwgU3RyaW5nIHRleHQpIC0+IChWZWN0b3I8V2Vi
Q29yZTo6U2VsZWN0aW9uR2VvbWV0cnk+IHJlY3QpIEFzeW5jCisgICAgU3RvcmVTZWxlY3Rpb25G
b3JBY2Nlc3NpYmlsaXR5KGJvb2wgc2hvdWxkU3RvcmUpCisgICAgU3RhcnRBdXRvc2Nyb2xsQXRQ
b3NpdGlvbihXZWJDb3JlOjpGbG9hdFBvaW50IHBvc2l0aW9uSW5XaW5kb3cpCisgICAgQ2FuY2Vs
QXV0b3Njcm9sbCgpCisgICAgUmVxdWVzdEZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24oKSAtPiAo
c3RkOjpvcHRpb25hbDxXZWJLaXQ6OkZvY3VzZWRFbGVtZW50SW5mb3JtYXRpb24+IGluZm8pIEFz
eW5jCisgICAgSGFyZHdhcmVLZXlib2FyZEF2YWlsYWJpbGl0eUNoYW5nZWQoYm9vbCBrZXlib2Fy
ZElzQXR0YWNoZWQpCisgICAgU2V0SXNTaG93aW5nSW5wdXRWaWV3Rm9yRm9jdXNlZEVsZW1lbnQo
Ym9vbCBzaG93aW5nSW5wdXRWaWV3KQorICAgIFVwZGF0ZVNlbGVjdGlvbldpdGhEZWx0YShpbnQ2
NF90IGxvY2F0aW9uRGVsdGEsIGludDY0X3QgbGVuZ3RoRGVsdGEpIC0+ICgpIEFzeW5jCisgICAg
UmVxdWVzdERvY3VtZW50RWRpdGluZ0NvbnRleHQoc3RydWN0IFdlYktpdDo6RG9jdW1lbnRFZGl0
aW5nQ29udGV4dFJlcXVlc3QgcmVxdWVzdCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkRvY3VtZW50RWRp
dGluZ0NvbnRleHQgcmVzcG9uc2UpIEFzeW5jCitHZW5lcmF0ZVN5bnRoZXRpY0VkaXRpbmdDb21t
YW5kKGVudW06dWludDhfdCBXZWJLaXQ6OlN5bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZSBjb21t
YW5kKQorICAgIFNldFNob3VsZFJldmVhbEN1cnJlbnRTZWxlY3Rpb25BZnRlckluc2VydGlvbihi
b29sIHNob3VsZFJldmVhbEN1cnJlbnRTZWxlY3Rpb25BZnRlckluc2VydGlvbikKKyAgICBJbnNl
cnRUZXh0UGxhY2Vob2xkZXIoV2ViQ29yZTo6SW50U2l6ZSBzaXplKSAtPiAoc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpFbGVtZW50Q29udGV4dD4gcGxhY2Vob2xkZXIpIEFzeW5jCisgICAgUmVtb3Zl
VGV4dFBsYWNlaG9sZGVyKHN0cnVjdCBXZWJDb3JlOjpFbGVtZW50Q29udGV4dCBwbGFjZWhvbGRl
cikgLT4gKCkgQXN5bmMKKyAgICBUZXh0SW5wdXRDb250ZXh0c0luUmVjdChXZWJDb3JlOjpGbG9h
dFJlY3QgcmVjdCkgLT4gKFZlY3RvcjxzdHJ1Y3QgV2ViQ29yZTo6RWxlbWVudENvbnRleHQ+IGNv
bnRleHRzKSBBc3luYworICAgIEZvY3VzVGV4dElucHV0Q29udGV4dEFuZFBsYWNlQ2FyZXQoc3Ry
dWN0IFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0IGNvbnRleHQsIFdlYkNvcmU6OkludFBvaW50IHBv
aW50KSAtPiAoYm9vbCBzdWNjZXNzKSBBc3luYworICAgIENsZWFyU2VydmljZVdvcmtlckVudGl0
bGVtZW50T3ZlcnJpZGUoKSAtPiAoKSBBc3luYworI2VuZGlmCisKKyAgICBTZXRDb250cm9sbGVk
QnlBdXRvbWF0aW9uKGJvb2wgY29udHJvbGxlZCkKKworICAgIENvbm5lY3RJbnNwZWN0b3IoU3Ry
aW5nIHRhcmdldElkLCBJbnNwZWN0b3I6OkZyb250ZW5kQ2hhbm5lbDo6Q29ubmVjdGlvblR5cGUg
Y29ubmVjdGlvblR5cGUpCisgICAgRGlzY29ubmVjdEluc3BlY3RvcihTdHJpbmcgdGFyZ2V0SWQp
CisgICAgU2VuZE1lc3NhZ2VUb1RhcmdldEJhY2tlbmQoU3RyaW5nIHRhcmdldElkLCBTdHJpbmcg
bWVzc2FnZSkKKworI2lmIEVOQUJMRShSRU1PVEVfSU5TUEVDVE9SKQorICAgIFNldEluZGljYXRp
bmcoYm9vbCBpbmRpY2F0aW5nKTsKKyNlbmRpZgorCisjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVO
VFMpCisgICAgUmVzZXRQb3RlbnRpYWxUYXBTZWN1cml0eU9yaWdpbigpCisgICAgVG91Y2hFdmVu
dFN5bmMoV2ViS2l0OjpXZWJUb3VjaEV2ZW50IGV2ZW50KSAtPiAoYm9vbCBoYW5kbGVkKSBTeW5j
aHJvbm91cworI2VuZGlmCisjaWYgIUVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKSAmJiBFTkFCTEUo
VE9VQ0hfRVZFTlRTKQorICAgIFRvdWNoRXZlbnQoV2ViS2l0OjpXZWJUb3VjaEV2ZW50IGV2ZW50
KQorI2VuZGlmCisKKyAgICBDYW5jZWxQb2ludGVyKFdlYkNvcmU6OlBvaW50ZXJJRCBwb2ludGVy
SWQsIFdlYkNvcmU6OkludFBvaW50IGRvY3VtZW50UG9pbnQpCisgICAgVG91Y2hXaXRoSWRlbnRp
Zmllcldhc1JlbW92ZWQoV2ViQ29yZTo6UG9pbnRlcklEIHBvaW50ZXJJZCkKKworI2lmIEVOQUJM
RShJTlBVVF9UWVBFX0NPTE9SKQorICAgIERpZEVuZENvbG9yUGlja2VyKCkKKyAgICBEaWRDaG9v
c2VDb2xvcihXZWJDb3JlOjpDb2xvciBjb2xvcikKKyNlbmRpZgorCisjaWYgRU5BQkxFKERBVEFM
SVNUX0VMRU1FTlQpCisgICAgRGlkU2VsZWN0RGF0YUxpc3RPcHRpb24oU3RyaW5nIHNlbGVjdGVk
T3B0aW9uKTsKKyAgICBEaWRDbG9zZVN1Z2dlc3Rpb25zKCk7CisjZW5kaWYKKworI2lmIEVOQUJM
RShEQVRFX0FORF9USU1FX0lOUFVUX1RZUEVTKQorICAgIERpZENob29zZURhdGUoU3RyaW5nIGRh
dGUpOworICAgIERpZEVuZERhdGVUaW1lUGlja2VyKCk7CisjZW5kaWYKKworICAgIFNjcm9sbEJ5
KHVpbnQzMl90IHNjcm9sbERpcmVjdGlvbiwgdWludDMyX3Qgc2Nyb2xsR3JhbnVsYXJpdHkpCisg
ICAgQ2VudGVyU2VsZWN0aW9uSW5WaXNpYmxlQXJlYSgpCisKKyAgICBHb1RvQmFja0ZvcndhcmRJ
dGVtKHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgc3RydWN0IFdlYkNvcmU6OkJhY2tGb3J3YXJkSXRl
bUlkZW50aWZpZXIgYmFja0ZvcndhcmRJdGVtSUQsIGVudW06dWludDhfdCBXZWJDb3JlOjpGcmFt
ZUxvYWRUeXBlIGJhY2tGb3J3YXJkVHlwZSwgZW51bTp1aW50OF90IFdlYkNvcmU6OlNob3VsZFRy
ZWF0QXNDb250aW51aW5nTG9hZCBzaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIHN0ZDo6b3B0
aW9uYWw8V2ViS2l0OjpXZWJzaXRlUG9saWNpZXNEYXRhPiB3ZWJzaXRlUG9saWNpZXMsIGJvb2wg
bGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpCisgICAgVHJ5UmVzdG9yZVNjcm9sbFBvc2l0
aW9uKCkKKworICAgIExvYWRVUkxJbkZyYW1lKFVSTCB1cmwsIFN0cmluZyByZWZlcnJlciwgV2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpCisgICAgTG9hZERhdGFJbkZyYW1lKElQQzo6
RGF0YVJlZmVyZW5jZSBkYXRhLCBTdHJpbmcgTUlNRVR5cGUsIFN0cmluZyBlbmNvZGluZ05hbWUs
IFVSTCBiYXNlVVJMLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkKKyAgICBMb2Fk
UmVxdWVzdChzdHJ1Y3QgV2ViS2l0OjpMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycykKKyAg
ICBMb2FkUmVxdWVzdFdhaXRpbmdGb3JQcm9jZXNzTGF1bmNoKHN0cnVjdCBXZWJLaXQ6OkxvYWRQ
YXJhbWV0ZXJzIGxvYWRQYXJhbWV0ZXJzLCBVUkwgcmVzb3VyY2VEaXJlY3RvcnlVUkwsIFdlYktp
dDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIGJvb2wgY2hlY2tBc3N1bWVkUmVhZEFj
Y2Vzc1RvUmVzb3VyY2VVUkwpCisgICAgTG9hZERhdGEoc3RydWN0IFdlYktpdDo6TG9hZFBhcmFt
ZXRlcnMgbG9hZFBhcmFtZXRlcnMpCisgICAgTG9hZFNpbXVsYXRlZFJlcXVlc3RBbmRSZXNwb25z
ZShzdHJ1Y3QgV2ViS2l0OjpMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycywgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSBzaW11bGF0ZWRSZXNwb25zZSkKKyAgICBMb2FkQWx0ZXJuYXRlSFRN
TChzdHJ1Y3QgV2ViS2l0OjpMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycykKKworICAgIE5h
dmlnYXRlVG9QREZMaW5rV2l0aFNpbXVsYXRlZENsaWNrKFN0cmluZyB1cmwsIFdlYkNvcmU6Oklu
dFBvaW50IGRvY3VtZW50UG9pbnQsIFdlYkNvcmU6OkludFBvaW50IHNjcmVlblBvaW50KQorICAg
IEdldFBERkZpcnN0UGFnZVNpemUoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQpIC0+
IChXZWJDb3JlOjpGbG9hdFNpemUgc2l6ZSkgQXN5bmMKKworICAgIFJlbG9hZCh1aW50NjRfdCBu
YXZpZ2F0aW9uSUQsIHVpbnQzMl90IHJlbG9hZE9wdGlvbnMsIFdlYktpdDo6U2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpCisgICAgU3RvcExvYWRpbmcoKQor
CisgICAgU3RvcExvYWRpbmdGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkK
KyAgICAKKyAgICBSZXN0b3JlU2Vzc2lvbihWZWN0b3I8V2ViS2l0OjpCYWNrRm9yd2FyZExpc3RJ
dGVtU3RhdGU+IGl0ZW1TdGF0ZXMpCisgICAgVXBkYXRlQmFja0ZvcndhcmRMaXN0Rm9yUmVhdHRh
Y2goVmVjdG9yPFdlYktpdDo6QmFja0ZvcndhcmRMaXN0SXRlbVN0YXRlPiBpdGVtU3RhdGVzKQor
ICAgIFNldEN1cnJlbnRIaXN0b3J5SXRlbUZvclJlYXR0YWNoKHN0cnVjdCBXZWJLaXQ6OkJhY2tG
b3J3YXJkTGlzdEl0ZW1TdGF0ZSBpdGVtU3RhdGUpCisKKyAgICBEaWRSZW1vdmVCYWNrRm9yd2Fy
ZEl0ZW0oc3RydWN0IFdlYkNvcmU6OkJhY2tGb3J3YXJkSXRlbUlkZW50aWZpZXIgYmFja0Zvcndh
cmRJdGVtSUQpCisKKyAgICBVcGRhdGVXZWJzaXRlUG9saWNpZXMoc3RydWN0IFdlYktpdDo6V2Vi
c2l0ZVBvbGljaWVzRGF0YSB3ZWJzaXRlUG9saWNpZXMpCisgICAgTm90aWZ5VXNlclNjcmlwdHMo
KQorICAgIERpZFJlY2VpdmVQb2xpY3lEZWNpc2lvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCwgdWludDY0X3QgbGlzdGVuZXJJRCwgc3RydWN0IFdlYktpdDo6UG9saWN5RGVjaXNp
b24gcG9saWN5RGVjaXNpb24sIFZlY3RvcjxXZWJLaXQ6OlNhbmRib3hFeHRlbnNpb246OkhhbmRs
ZT4gbmV0d29ya0V4dGVuc2lvbnNTYW5kYm94RXh0ZW5zaW9ucykKKworICAgIENvbnRpbnVlV2ls
bFN1Ym1pdEZvcm0oV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFdlYktpdDo6Rm9y
bVN1Ym1pdExpc3RlbmVySWRlbnRpZmllciBsaXN0ZW5lcklEKQorCisgICAgQ2xlYXJTZWxlY3Rp
b24oKQorICAgIFJlc3RvcmVTZWxlY3Rpb25JbkZvY3VzZWRFZGl0YWJsZUVsZW1lbnQoKQorCisg
ICAgIyBDYWxsYmFja3MuCisgICAgR2V0Q29udGVudHNBc1N0cmluZyhlbnVtOmJvb2wgV2ViS2l0
OjpDb250ZW50QXNTdHJpbmdJbmNsdWRlc0NoaWxkRnJhbWVzIGluQ2hpbGRGcmFtZXMpIC0+IChT
dHJpbmcgc3RyaW5nKSBBc3luYworICAgIEdldEFsbEZyYW1lcygpIC0+IChzdHJ1Y3QgV2ViS2l0
OjpGcmFtZVRyZWVOb2RlRGF0YSBtYWluRnJhbWUpIEFzeW5jCisjaWYgUExBVEZPUk0oQ09DT0Ep
CisgICAgR2V0Q29udGVudHNBc0F0dHJpYnV0ZWRTdHJpbmcoKSAtPiAoc3RydWN0IFdlYkNvcmU6
OkF0dHJpYnV0ZWRTdHJpbmcgcmVzdWx0KSBBc3luYworI2VuZGlmCisjaWYgRU5BQkxFKE1IVE1M
KQorICAgIEdldENvbnRlbnRzQXNNSFRNTERhdGEoKSAtPiAoSVBDOjpTaGFyZWRCdWZmZXJEYXRh
UmVmZXJlbmNlIGRhdGEpIEFzeW5jCisjZW5kaWYKKyAgICBHZXRNYWluUmVzb3VyY2VEYXRhT2ZG
cmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkgLT4gKHN0ZDo6b3B0aW9uYWw8
SVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlPiBkYXRhUmVmZXJlbmNlKSBBc3luYworICAg
IEdldFJlc291cmNlRGF0YUZyb21GcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgU3RyaW5nIHJlc291cmNlVVJMKSAtPiAoc3RkOjpvcHRpb25hbDxJUEM6OlNoYXJlZEJ1ZmZl
ckRhdGFSZWZlcmVuY2U+IGRhdGFSZWZlcmVuY2UpIEFzeW5jCisgICAgR2V0UmVuZGVyVHJlZUV4
dGVybmFsUmVwcmVzZW50YXRpb24oKSAtPiAoU3RyaW5nIHN0cmluZykgQXN5bmMKKyAgICBHZXRT
ZWxlY3Rpb25PckNvbnRlbnRzQXNTdHJpbmcoKSAtPiAoU3RyaW5nIHN0cmluZykgQXN5bmMKKyAg
ICBHZXRTZWxlY3Rpb25Bc1dlYkFyY2hpdmVEYXRhKCkgLT4gKHN0ZDo6b3B0aW9uYWw8SVBDOjpE
YXRhUmVmZXJlbmNlPiBkYXRhKSBBc3luYworICAgIEdldFNvdXJjZUZvckZyYW1lKFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciBmcmFtZUlEKSAtPiAoU3RyaW5nIHN0cmluZykgQXN5bmMKKyAgICBH
ZXRXZWJBcmNoaXZlT2ZGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkgLT4g
KHN0ZDo6b3B0aW9uYWw8SVBDOjpEYXRhUmVmZXJlbmNlPiBkYXRhUmVmZXJlbmNlKSBBc3luYwor
CisgICAgUnVuSmF2YVNjcmlwdEluRnJhbWVJblNjcmlwdFdvcmxkKHN0cnVjdCBXZWJDb3JlOjpS
dW5KYXZhU2NyaXB0UGFyYW1ldGVycyBwYXJhbWV0ZXJzLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpwYWlyPFdlYktpdDo6Q29udGVudFdvcmxk
SWRlbnRpZmllciwgU3RyaW5nPiB3b3JsZCkgLT4gKElQQzo6RGF0YVJlZmVyZW5jZSByZXN1bHRE
YXRhLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkV4Y2VwdGlvbkRldGFpbHM+IGRldGFpbHMpIEFz
eW5jCisKKyAgICBGb3JjZVJlcGFpbnQoKSAtPiAoKSBBc3luYworICAgIFNlbGVjdEFsbCgpCisg
ICAgU2NoZWR1bGVGdWxsRWRpdG9yU3RhdGVVcGRhdGUoKQorCisjaWYgUExBVEZPUk0oQ09DT0Ep
CisgICAgIyBEaWN0aW9uYXJ5IHN1cHBvcnQuCisgICAgUGVyZm9ybURpY3Rpb25hcnlMb29rdXBP
ZkN1cnJlbnRTZWxlY3Rpb24oKQorICAgIFBlcmZvcm1EaWN0aW9uYXJ5TG9va3VwQXRMb2NhdGlv
bihXZWJDb3JlOjpGbG9hdFBvaW50IHBvaW50KQorI2VuZGlmCisKKyNpZiBFTkFCTEUoREFUQV9E
RVRFQ1RJT04pCisgICAgRGV0ZWN0RGF0YUluQWxsRnJhbWVzKE9wdGlvblNldDxXZWJDb3JlOjpE
YXRhRGV0ZWN0b3JUeXBlPiB0eXBlcykgLT4gKHN0cnVjdCBXZWJLaXQ6OkRhdGFEZXRlY3Rpb25S
ZXN1bHQgcmVzdWx0KSBBc3luYworICAgIFJlbW92ZURhdGFEZXRlY3RlZExpbmtzKCkgLT4gKHN0
cnVjdCBXZWJLaXQ6OkRhdGFEZXRlY3Rpb25SZXN1bHQgcmVzdWx0KSBBc3luYworI2VuZGlmCisK
KyAgICBDaGFuZ2VGb250KFdlYkNvcmU6OkZvbnRDaGFuZ2VzIGNoYW5nZXMpCisgICAgQ2hhbmdl
Rm9udEF0dHJpYnV0ZXMoV2ViQ29yZTo6Rm9udEF0dHJpYnV0ZUNoYW5nZXMgY2hhbmdlcykKKwor
ICAgIFByZWZlcmVuY2VzRGlkQ2hhbmdlKHN0cnVjdCBXZWJLaXQ6OldlYlByZWZlcmVuY2VzU3Rv
cmUgc3RvcmUpCisKKyAgICBTZXRVc2VyQWdlbnQoU3RyaW5nIHVzZXJBZ2VudCkKKyAgICBTZXRD
dXN0b21UZXh0RW5jb2RpbmdOYW1lKFN0cmluZyBlbmNvZGluZ05hbWUpCisKKyAgICBTdXNwZW5k
QWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQorICAgIFJlc3VtZUFjdGl2ZURPTU9iamVj
dHNBbmRBbmltYXRpb25zKCkKKworICAgIFN1c3BlbmQoKSAtPiAoYm9vbCBzdWNjZXNzKSBBc3lu
YworICAgIFJlc3VtZSgpIC0+IChib29sIHN1Y2Nlc3MpIEFzeW5jCisKKyAgICBDbG9zZSgpCisg
ICAgVHJ5Q2xvc2UoKSAtPiAoYm9vbCBzaG91bGRDbG9zZSkgQXN5bmMKKworICAgIFNldEVkaXRh
YmxlKGJvb2wgZWRpdGFibGUpCisgICAgVmFsaWRhdGVDb21tYW5kKFN0cmluZyBuYW1lKSAtPiAo
Ym9vbCBpc0VuYWJsZWQsIGludDMyX3Qgc3RhdGUpIEFzeW5jCisgICAgRXhlY3V0ZUVkaXRDb21t
YW5kKFN0cmluZyBuYW1lLCBTdHJpbmcgYXJndW1lbnQpCisKKyAgICBJbmNyZWFzZUxpc3RMZXZl
bCgpCisgICAgRGVjcmVhc2VMaXN0TGV2ZWwoKQorICAgIENoYW5nZUxpc3RUeXBlKCkKKworICAg
IFNldEJhc2VXcml0aW5nRGlyZWN0aW9uKGVudW06dWludDhfdCBXZWJDb3JlOjpXcml0aW5nRGly
ZWN0aW9uIGRpcmVjdGlvbikKKworICAgIFNldE5lZWRzRm9udEF0dHJpYnV0ZXMoYm9vbCBuZWVk
c0ZvbnRBdHRyaWJ1dGVzKQorCisgICAgUmVxdWVzdEZvbnRBdHRyaWJ1dGVzQXRTZWxlY3Rpb25T
dGFydCgpIC0+IChzdHJ1Y3QgV2ViQ29yZTo6Rm9udEF0dHJpYnV0ZXMgYXR0cmlidXRlcykgQXN5
bmMKKworICAgIERpZFJlbW92ZUVkaXRDb21tYW5kKHVpbnQ2NF90IGNvbW1hbmRJRCkKKyAgICBS
ZWFwcGx5RWRpdENvbW1hbmQodWludDY0X3QgY29tbWFuZElEKQorICAgIFVuYXBwbHlFZGl0Q29t
bWFuZCh1aW50NjRfdCBjb21tYW5kSUQpCisKKyAgICBTZXRQYWdlQW5kVGV4dFpvb21GYWN0b3Jz
KGRvdWJsZSBwYWdlWm9vbUZhY3RvciwgZG91YmxlIHRleHRab29tRmFjdG9yKQorICAgIFNldFBh
Z2Vab29tRmFjdG9yKGRvdWJsZSB6b29tRmFjdG9yKQorICAgIFNldFRleHRab29tRmFjdG9yKGRv
dWJsZSB6b29tRmFjdG9yKQorICAgIFdpbmRvd1NjcmVlbkRpZENoYW5nZSh1aW50MzJfdCBkaXNw
bGF5SUQsIHN0ZDo6b3B0aW9uYWw8dW5zaWduZWQ+IG5vbWluYWxGcmFtZXNQZXJTZWNvbmQpCisK
KyAgICBBY2Nlc3NpYmlsaXR5U2V0dGluZ3NEaWRDaGFuZ2UoKQorCisgICAgU2NhbGVQYWdlKGRv
dWJsZSBzY2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgb3JpZ2luKQorICAgIFNjYWxlUGFnZUluVmll
d0Nvb3JkaW5hdGVzKGRvdWJsZSBzY2FsZSwgV2ViQ29yZTo6SW50UG9pbnQgY2VudGVySW5WaWV3
Q29vcmRpbmF0ZXMpCisgICAgU2NhbGVWaWV3KGRvdWJsZSBzY2FsZSkKKworICAgIFNldFVzZUZp
eGVkTGF5b3V0KGJvb2wgZml4ZWQpCisgICAgU2V0Rml4ZWRMYXlvdXRTaXplKFdlYkNvcmU6Oklu
dFNpemUgc2l6ZSkKKyAgICBMaXN0ZW5Gb3JMYXlvdXRNaWxlc3RvbmVzKE9wdGlvblNldDxXZWJD
b3JlOjpMYXlvdXRNaWxlc3RvbmU+IGxheW91dE1pbGVzdG9uZXMpCisgICAgU2V0U3VwcHJlc3NT
Y3JvbGxiYXJBbmltYXRpb25zKGJvb2wgc3VwcHJlc3NBbmltYXRpb25zKQorCisgICAgU2V0RW5h
YmxlVmVydGljYWxSdWJiZXJCYW5kaW5nKGJvb2wgZW5hYmxlVmVydGljYWxSdWJiZXJCYW5kaW5n
KQorICAgIFNldEVuYWJsZUhvcml6b250YWxSdWJiZXJCYW5kaW5nKGJvb2wgZW5hYmxlSG9yaXpv
bnRhbFJ1YmJlckJhbmRpbmcpCisKKyAgICBTZXRCYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2Uo
Ym9vbCBiYWNrZ3JvdW5kRXh0ZW5kc0JleW9uZFBhZ2UpCisKKyAgICBTZXRQYWdpbmF0aW9uTW9k
ZSh1aW50MzJfdCBtb2RlKQorICAgIFNldFBhZ2luYXRpb25CZWhhdmVzTGlrZUNvbHVtbnMoYm9v
bCBiZWhhdmVzTGlrZUNvbHVtbnMpCisgICAgU2V0UGFnZUxlbmd0aChkb3VibGUgcGFnZUxlbmd0
aCkKKyAgICBTZXRHYXBCZXR3ZWVuUGFnZXMoZG91YmxlIGdhcCkKKyAgICBTZXRQYWdpbmF0aW9u
TGluZUdyaWRFbmFibGVkKGJvb2wgbGluZUdyaWRFbmFibGVkKQorCisgICAgUG9zdEluamVjdGVk
QnVuZGxlTWVzc2FnZShTdHJpbmcgbWVzc2FnZU5hbWUsIFdlYktpdDo6VXNlckRhdGEgbWVzc2Fn
ZUJvZHkpCisKKyAgICAjIEZpbmQuCisgICAgRmluZFN0cmluZyhTdHJpbmcgc3RyaW5nLCBPcHRp
b25TZXQ8V2ViS2l0OjpGaW5kT3B0aW9ucz4gZmluZE9wdGlvbnMsIHVuc2lnbmVkIG1heE1hdGNo
Q291bnQpIC0+IChib29sIGZvdW5kKSBBc3luYworICAgIEZpbmRTdHJpbmdNYXRjaGVzKFN0cmlu
ZyBzdHJpbmcsIE9wdGlvblNldDxXZWJLaXQ6OkZpbmRPcHRpb25zPiBmaW5kT3B0aW9ucywgdW5z
aWduZWQgbWF4TWF0Y2hDb3VudCkKKyAgICBHZXRJbWFnZUZvckZpbmRNYXRjaCh1aW50MzJfdCBt
YXRjaEluZGV4KQorICAgIFNlbGVjdEZpbmRNYXRjaCh1aW50MzJfdCBtYXRjaEluZGV4KQorICAg
IEluZGljYXRlRmluZE1hdGNoKHVpbnQzMl90IG1hdGNoSW5kZXgpCisgICAgSGlkZUZpbmRVSSgp
CisgICAgQ291bnRTdHJpbmdNYXRjaGVzKFN0cmluZyBzdHJpbmcsIE9wdGlvblNldDxXZWJLaXQ6
OkZpbmRPcHRpb25zPiBmaW5kT3B0aW9ucywgdW5zaWduZWQgbWF4TWF0Y2hDb3VudCkKKyAgICBS
ZXBsYWNlTWF0Y2hlcyhWZWN0b3I8dWludDMyX3Q+IG1hdGNoSW5kaWNlcywgU3RyaW5nIHJlcGxh
Y2VtZW50VGV4dCwgYm9vbCBzZWxlY3Rpb25Pbmx5KSAtPiAodWludDY0X3QgbnVtYmVyT2ZSZXBs
YWNlbWVudHMpIEFzeW5jCisgICAgCisgICAgQWRkTUlNRVR5cGVXaXRoQ3VzdG9tQ29udGVudFBy
b3ZpZGVyKFN0cmluZyBtaW1lVHlwZSkKKworICAgICMgRHJhZyBhbmQgZHJvcC4KKyNpZiBQTEFU
Rk9STShHVEspICYmIEVOQUJMRShEUkFHX1NVUFBPUlQpCisgICAgUGVyZm9ybURyYWdDb250cm9s
bGVyQWN0aW9uKGVudW06dWludDhfdCBXZWJLaXQ6OkRyYWdDb250cm9sbGVyQWN0aW9uIGFjdGlv
biwgV2ViQ29yZTo6SW50UG9pbnQgY2xpZW50UG9zaXRpb24sIFdlYkNvcmU6OkludFBvaW50IGds
b2JhbFBvc2l0aW9uLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ09wZXJhdGlvbj4gZHJhZ2dpbmdT
b3VyY2VPcGVyYXRpb25NYXNrLCBXZWJDb3JlOjpTZWxlY3Rpb25EYXRhIHNlbGVjdGlvbiwgT3B0
aW9uU2V0PFdlYkNvcmU6OkRyYWdBcHBsaWNhdGlvbkZsYWdzPiBmbGFncykKKyNlbmRpZgorI2lm
ICFQTEFURk9STShHVEspICYmIEVOQUJMRShEUkFHX1NVUFBPUlQpCisgICAgUGVyZm9ybURyYWdD
b250cm9sbGVyQWN0aW9uKGVudW06dWludDhfdCBXZWJLaXQ6OkRyYWdDb250cm9sbGVyQWN0aW9u
IGFjdGlvbiwgV2ViQ29yZTo6RHJhZ0RhdGEgZHJhZ0RhdGEsIFdlYktpdDo6U2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25IYW5kbGUsIFZlY3RvcjxXZWJLaXQ6OlNhbmRi
b3hFeHRlbnNpb246OkhhbmRsZT4gc2FuZGJveEV4dGVuc2lvbnNGb3JVcGxvYWQpCisjZW5kaWYK
KyNpZiBFTkFCTEUoRFJBR19TVVBQT1JUKQorICAgIERpZFN0YXJ0RHJhZygpCisgICAgRHJhZ0Vu
ZGVkKFdlYkNvcmU6OkludFBvaW50IGNsaWVudFBvc2l0aW9uLCBXZWJDb3JlOjpJbnRQb2ludCBn
bG9iYWxQb3NpdGlvbiwgT3B0aW9uU2V0PFdlYkNvcmU6OkRyYWdPcGVyYXRpb24+IGRyYWdPcGVy
YXRpb25NYXNrKQorICAgIERyYWdDYW5jZWxsZWQoKQorI2VuZGlmCisKKyNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKSAmJiBFTkFCTEUoRFJBR19TVVBQT1JUKQorICAgIFJlcXVlc3REcmFnU3RhcnQo
V2ViQ29yZTo6SW50UG9pbnQgY2xpZW50UG9zaXRpb24sIFdlYkNvcmU6OkludFBvaW50IGdsb2Jh
bFBvc2l0aW9uLCBPcHRpb25TZXQ8V2ViQ29yZTo6RHJhZ1NvdXJjZUFjdGlvbj4gYWxsb3dlZEFj
dGlvbnNNYXNrKQorICAgIFJlcXVlc3RBZGRpdGlvbmFsSXRlbXNGb3JEcmFnU2Vzc2lvbihXZWJD
b3JlOjpJbnRQb2ludCBjbGllbnRQb3NpdGlvbiwgV2ViQ29yZTo6SW50UG9pbnQgZ2xvYmFsUG9z
aXRpb24sIE9wdGlvblNldDxXZWJDb3JlOjpEcmFnU291cmNlQWN0aW9uPiBhbGxvd2VkQWN0aW9u
c01hc2spCisgICAgSW5zZXJ0RHJvcHBlZEltYWdlUGxhY2Vob2xkZXJzKFZlY3RvcjxXZWJDb3Jl
OjpJbnRTaXplPiBpbWFnZVNpemUpIC0+IChWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4gZHJvcFBy
ZXZpZXdSZWN0cywgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpUZXh0SW5kaWNhdG9yRGF0YT4gdGV4
dEluZGljYXRvcikgQXN5bmMKKyAgICBEaWRDb25jbHVkZURyb3AoKQorI2VuZGlmCisKKyAgICAj
IFBvcHVwIG1lbnUuCisgICAgRGlkQ2hhbmdlU2VsZWN0ZWRJbmRleEZvckFjdGl2ZVBvcHVwTWVu
dShpbnQzMl90IG5ld0luZGV4KQorICAgIFNldFRleHRGb3JBY3RpdmVQb3B1cE1lbnUoaW50MzJf
dCBpbmRleCkKKyNpZiBQTEFURk9STShHVEspCisgICAgRmFpbGVkVG9TaG93UG9wdXBNZW51KCkK
KyNlbmRpZgorCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCisgICAgIyBDb250ZXh0IG1lbnUu
CisgICAgRGlkU2hvd0NvbnRleHRNZW51KCkKKyAgICBEaWREaXNtaXNzQ29udGV4dE1lbnUoKQor
ICAgIERpZFNlbGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4dE1lbnUoV2ViS2l0OjpXZWJDb250ZXh0
TWVudUl0ZW1EYXRhIG1lbnVJdGVtKQorICAgIENvbnRleHRNZW51Rm9yS2V5RXZlbnQoKQorI2Vu
ZGlmCisKKyAgICAjIE9wZW4gcGFuZWwuCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBE
aWRDaG9vc2VGaWxlc0Zvck9wZW5QYW5lbFdpdGhEaXNwbGF5U3RyaW5nQW5kSWNvbihWZWN0b3I8
U3RyaW5nPiBmaWxlVVJMcywgU3RyaW5nIGRpc3BsYXlTdHJpbmcsIElQQzo6RGF0YVJlZmVyZW5j
ZSBpY29uRGF0YSwgV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgZnJvbnRib2FyZFNl
cnZpY2VzU2FuZGJveEV4dGVuc2lvbiwgV2ViS2l0OjpTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
aWNvblNlcnZpY2VzU2FuZGJveEV4dGVuc2lvbikKKyNlbmRpZgorICAgIERpZENob29zZUZpbGVz
Rm9yT3BlblBhbmVsKFZlY3RvcjxTdHJpbmc+IGZpbGVVUkxzLCBWZWN0b3I8U3RyaW5nPiByZXBs
YWNlbWVudFVSTHMpCisgICAgRGlkQ2FuY2VsRm9yT3BlblBhbmVsKCkKKyNpZiBFTkFCTEUoU0FO
REJPWF9FWFRFTlNJT05TKQorICAgIEV4dGVuZFNhbmRib3hGb3JGaWxlc0Zyb21PcGVuUGFuZWwo
VmVjdG9yPFdlYktpdDo6U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlPiBzYW5kYm94RXh0ZW5zaW9u
cykKKyNlbmRpZgorCisgICAgIyBTcGVsbGluZyBhbmQgZ3JhbW1hci4KKyAgICBBZHZhbmNlVG9O
ZXh0TWlzc3BlbGxpbmcoYm9vbCBzdGFydEJlZm9yZVNlbGVjdGlvbikKKyAgICBDaGFuZ2VTcGVs
bGluZ1RvV29yZChTdHJpbmcgd29yZCkKKyAgICBEaWRGaW5pc2hDaGVja2luZ1RleHQoV2ViS2l0
OjpUZXh0Q2hlY2tlclJlcXVlc3RJRCByZXF1ZXN0SUQsIFZlY3RvcjxXZWJDb3JlOjpUZXh0Q2hl
Y2tpbmdSZXN1bHQ+IHJlc3VsdCkKKyAgICBEaWRDYW5jZWxDaGVja2luZ1RleHQoV2ViS2l0OjpU
ZXh0Q2hlY2tlclJlcXVlc3RJRCByZXF1ZXN0SUQpCisjaWYgVVNFKEFQUEtJVCkKKyAgICBVcHBl
cmNhc2VXb3JkKCkKKyAgICBMb3dlcmNhc2VXb3JkKCkKKyAgICBDYXBpdGFsaXplV29yZCgpCisj
ZW5kaWYKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBTZXRTbWFydEluc2VydERlbGV0ZUVuYWJs
ZWQoYm9vbCBpc1NtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxlZCkKKyNlbmRpZgorCisjaWYgRU5BQkxF
KEdFT0xPQ0FUSU9OKQorICAgICMgR2VvbG9jYXRpb24KKyAgICBEaWRSZWNlaXZlR2VvbG9jYXRp
b25QZXJtaXNzaW9uRGVjaXNpb24oV2ViS2l0OjpHZW9sb2NhdGlvbklkZW50aWZpZXIgZ2VvbG9j
YXRpb25JRCwgU3RyaW5nIGF1dGhvcml6YXRpb25Ub2tlbikKKyNlbmRpZgorCisjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKKyAgICAjIE1lZGlhU3RlYW0KKyAgICBVc2VyTWVkaWFBY2Nlc3NXYXNH
cmFudGVkKFdlYkNvcmU6OlVzZXJNZWRpYVJlcXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCBX
ZWJDb3JlOjpDYXB0dXJlRGV2aWNlIGF1ZGlvRGV2aWNlLCBXZWJDb3JlOjpDYXB0dXJlRGV2aWNl
IHZpZGVvRGV2aWNlLCBTdHJpbmcgbWVkaWFEZXZpY2VJZGVudGlmaWVySGFzaFNhbHQsIFdlYktp
dDo6U2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIHNhbmRib3hFeHRlbnNpb25IYW5kbGUpIC0+ICgp
IEFzeW5jCisgICAgVXNlck1lZGlhQWNjZXNzV2FzRGVuaWVkKFdlYkNvcmU6OlVzZXJNZWRpYVJl
cXVlc3RJZGVudGlmaWVyIHVzZXJNZWRpYUlELCB1aW50NjRfdCByZWFzb24sIFN0cmluZyBpbnZh
bGlkQ29uc3RyYWludCkKKyAgICBDYXB0dXJlRGV2aWNlc0NoYW5nZWQoKQorI2VuZGlmCisKKyNp
ZiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQorICAgIE1lZGlhS2V5U3lzdGVtV2FzR3JhbnRlZChX
ZWJDb3JlOjpNZWRpYUtleVN5c3RlbVJlcXVlc3RJZGVudGlmaWVyIG1lZGlhS2V5U3lzdGVtSUQp
IC0+ICgpIEFzeW5jCisgICAgTWVkaWFLZXlTeXN0ZW1XYXNEZW5pZWQoV2ViQ29yZTo6TWVkaWFL
ZXlTeXN0ZW1SZXF1ZXN0SWRlbnRpZmllciBtZWRpYUtleVN5c3RlbUlELCBTdHJpbmcgbWVzc2Fn
ZSkKKyNlbmRpZgorCisgICAgUmVxdWVzdE1lZGlhUGxheWJhY2tTdGF0ZSgpIC0+IChlbnVtOnVp
bnQ4X3QgV2ViS2l0OjpNZWRpYVBsYXliYWNrU3RhdGUgc3RhdGUpIEFzeW5jCisgICAgUGF1c2VB
bGxNZWRpYVBsYXliYWNrKCkgLT4gKCkgQXN5bmMKKyAgICBTdXNwZW5kQWxsTWVkaWFQbGF5YmFj
aygpIC0+ICgpIEFzeW5jCisgICAgUmVzdW1lQWxsTWVkaWFQbGF5YmFjaygpIC0+ICgpIEFzeW5j
CisKKyAgICBGcmVlemVMYXllclRyZWVEdWVUb1N3aXBlQW5pbWF0aW9uKCkKKyAgICBVbmZyZWV6
ZUxheWVyVHJlZUR1ZVRvU3dpcGVBbmltYXRpb24oKQorCisgICAgIyBQcmludGluZy4KKyAgICBC
ZWdpblByaW50aW5nKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2Vi
S2l0OjpQcmludEluZm8gcHJpbnRJbmZvKQorICAgIEVuZFByaW50aW5nKCkKKyAgICBDb21wdXRl
UGFnZXNGb3JQcmludGluZyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0
IFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5mbykgLT4gKFZlY3RvcjxXZWJDb3JlOjpJbnRSZWN0
PiBwYWdlUmVjdHMsIGRvdWJsZSB0b3RhbFNjYWxlRmFjdG9yRm9yUHJpbnRpbmcsIFdlYkNvcmU6
OlJlY3RFZGdlczxmbG9hdD4gY29tcHV0ZWRQYWdlTWFyZ2luKSBBc3luYworI2lmIFBMQVRGT1JN
KENPQ09BKQorICAgIERyYXdSZWN0VG9JbWFnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJh
bWVJRCwgc3RydWN0IFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5mbywgV2ViQ29yZTo6SW50UmVj
dCByZWN0LCBXZWJDb3JlOjpJbnRTaXplIGltYWdlU2l6ZSkgLT4gKFdlYktpdDo6U2hhcmVhYmxl
Qml0bWFwOjpIYW5kbGUgaW1hZ2UpIEFzeW5jCisgICAgRHJhd1BhZ2VzVG9QREYoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OlByaW50SW5mbyBwcmludElu
Zm8sIHVpbnQzMl90IGZpcnN0LCB1aW50MzJfdCBjb3VudCkgLT4gKElQQzo6RGF0YVJlZmVyZW5j
ZSBkYXRhKSBBc3luYworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgQ29tcHV0ZVBhZ2Vz
Rm9yUHJpbnRpbmdpT1MoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBX
ZWJLaXQ6OlByaW50SW5mbyBwcmludEluZm8pIC0+IChzaXplX3QgcGFnZUNvdW50KSBTeW5jaHJv
bm91cworICAgIERyYXdUb1BERmlPUyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwg
c3RydWN0IFdlYktpdDo6UHJpbnRJbmZvIHByaW50SW5mbywgc2l6ZV90IHBhZ2VDb3VudCkgLT4g
KElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKSBBc3luYworI2VuZGlmCisgICAgRHJhd1RvUERGKFdl
YkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZs
b2F0UmVjdD4gcmVjdCkgLT4gKElQQzo6RGF0YVJlZmVyZW5jZSBkYXRhKSBBc3luYworI2VuZGlm
CisjaWYgUExBVEZPUk0oR1RLKQorICAgIERyYXdQYWdlc0ZvclByaW50aW5nKFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViS2l0OjpQcmludEluZm8gcHJpbnRJbmZv
KSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikgQXN5bmMKKyNlbmRpZgorCisgICAg
IyBNZWRpYQorICAgIFNldE1lZGlhVm9sdW1lKGZsb2F0IHZvbHVtZSkKKyAgICBTZXRNdXRlZChX
ZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNdXRlZFN0YXRlRmxhZ3MgbXV0ZWQpIC0+ICgpIEFzeW5j
CisgICAgU2V0TWF5U3RhcnRNZWRpYVdoZW5JbldpbmRvdyhib29sIG1heVN0YXJ0TWVkaWEpCisg
ICAgU3RvcE1lZGlhQ2FwdHVyZShXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYUNhcHR1cmVL
aW5kIGtpbmQpIC0+ICgpIEFzeW5jCisKKyAgICBTZXRDYW5SdW5CZWZvcmVVbmxvYWRDb25maXJt
UGFuZWwoYm9vbCBjYW5SdW5CZWZvcmVVbmxvYWRDb25maXJtUGFuZWwpCisgICAgU2V0Q2FuUnVu
TW9kYWwoYm9vbCBjYW5SdW5Nb2RhbCkKKworI2lmIFBMQVRGT1JNKEdUSykgfHwgUExBVEZPUk0o
V1BFKQorICAgIENhbmNlbENvbXBvc2l0aW9uKFN0cmluZyB0ZXh0KQorICAgIERlbGV0ZVN1cnJv
dW5kaW5nKGludDY0X3Qgb2Zmc2V0LCB1bnNpZ25lZCBjaGFyYWN0ZXJDb3VudCkKKyNlbmRpZgor
CisjaWYgUExBVEZPUk0oR1RLKQorICAgIENvbGxhcHNlU2VsZWN0aW9uSW5GcmFtZShXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCkKKyNlbmRpZgorCisjaWYgUExBVEZPUk0oQ09DT0Ep
CisgICAgIyBDb21wbGV4IHRleHQgaW5wdXQgc3VwcG9ydCBmb3IgcGx1Zy1pbnMuCisgICAgU2Vu
ZENvbXBsZXhUZXh0SW5wdXRUb1BsdWdpbih1aW50NjRfdCBwbHVnaW5Db21wbGV4VGV4dElucHV0
SWRlbnRpZmllciwgU3RyaW5nIHRleHRJbnB1dCkKKworICAgIFdpbmRvd0FuZFZpZXdGcmFtZXND
aGFuZ2VkKFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dGcmFtZUluU2NyZWVuQ29vcmRpbmF0ZXMs
IFdlYkNvcmU6OkZsb2F0UmVjdCB3aW5kb3dGcmFtZUluVW5mbGlwcGVkU2NyZWVuQ29vcmRpbmF0
ZXMsIFdlYkNvcmU6OkZsb2F0UmVjdCB2aWV3RnJhbWVJbldpbmRvd0Nvb3JkaW5hdGVzLCBXZWJD
b3JlOjpGbG9hdFBvaW50IGFjY2Vzc2liaWxpdHlWaWV3Q29vcmRpbmF0ZXMpCisgICAgU2V0TWFp
bkZyYW1lSXNTY3JvbGxhYmxlKGJvb2wgaXNTY3JvbGxhYmxlKQorICAgIFJlZ2lzdGVyVUlQcm9j
ZXNzQWNjZXNzaWJpbGl0eVRva2VucyhJUEM6OkRhdGFSZWZlcmVuY2UgZWxlbWVuVG9rZW4sIElQ
Qzo6RGF0YVJlZmVyZW5jZSB3aW5kb3dUb2tlbikKKyAgICBHZXRTdHJpbmdTZWxlY3Rpb25Gb3JQ
YXN0ZWJvYXJkKCkgLT4gKFN0cmluZyBzdHJpbmdWYWx1ZSkgU3luY2hyb25vdXMKKyAgICBHZXRE
YXRhU2VsZWN0aW9uRm9yUGFzdGVib2FyZChTdHJpbmcgcGFzdGVib2FyZFR5cGUpIC0+IChXZWJL
aXQ6OlNoYXJlZE1lbW9yeTo6SVBDSGFuZGxlIGlwY0hhbmRsZSkgU3luY2hyb25vdXMKKyAgICBS
ZWFkU2VsZWN0aW9uRnJvbVBhc3RlYm9hcmQoU3RyaW5nIHBhc3RlYm9hcmROYW1lKSAtPiAoYm9v
bCByZXN1bHQpIFN5bmNocm9ub3VzCisKKyNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykKKyAg
ICBSZXBsYWNlU2VsZWN0aW9uV2l0aFBhc3RlYm9hcmREYXRhKFZlY3RvcjxTdHJpbmc+IHR5cGVz
LCBJUEM6OkRhdGFSZWZlcmVuY2UgZGF0YSkKKyNlbmRpZgorCisgICAgU2hvdWxkRGVsYXlXaW5k
b3dPcmRlcmluZ0V2ZW50KFdlYktpdDo6V2ViTW91c2VFdmVudCBldmVudCkgLT4gKGJvb2wgcmVz
dWx0KSBTeW5jaHJvbm91cworCisgICAgU2V0VGV4dEFzeW5jKFN0cmluZyB0ZXh0KQorCisgICAg
SW5zZXJ0VGV4dEFzeW5jKFN0cmluZyB0ZXh0LCBzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5nUmFuZ2Ug
cmVwbGFjZW1lbnRSYW5nZSwgc3RydWN0IFdlYktpdDo6SW5zZXJ0VGV4dE9wdGlvbnMgb3B0aW9u
cykKKyAgICBJbnNlcnREaWN0YXRlZFRleHRBc3luYyhTdHJpbmcgdGV4dCwgc3RydWN0IFdlYktp
dDo6RWRpdGluZ1JhbmdlIHJlcGxhY2VtZW50UmFuZ2UsIFZlY3RvcjxXZWJDb3JlOjpEaWN0YXRp
b25BbHRlcm5hdGl2ZT4gZGljdGF0aW9uQWx0ZXJuYXRpdmVzLCBzdHJ1Y3QgV2ViS2l0OjpJbnNl
cnRUZXh0T3B0aW9ucyBvcHRpb25zKQorCisgICAgSGFzTWFya2VkVGV4dCgpIC0+IChib29sIGhh
c01hcmtlZFRleHQpIEFzeW5jCisgICAgR2V0TWFya2VkUmFuZ2VBc3luYygpIC0+IChzdHJ1Y3Qg
V2ViS2l0OjpFZGl0aW5nUmFuZ2UgcmFuZ2UpIEFzeW5jCisgICAgR2V0U2VsZWN0ZWRSYW5nZUFz
eW5jKCkgLT4gKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgQXN5bmMKKyAgICBD
aGFyYWN0ZXJJbmRleEZvclBvaW50QXN5bmMoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQpIC0+ICh1
aW50NjRfdCBsb2NhdGlvbikgQXN5bmMKKyAgICBGaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZUFz
eW5jKHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgLT4gKFdlYkNvcmU6OkludFJl
Y3QgcmVjdCwgc3RydWN0IFdlYktpdDo6RWRpdGluZ1JhbmdlIGFjdHVhbFJhbmdlKSBBc3luYwor
ICAgIFNldENvbXBvc2l0aW9uQXN5bmMoU3RyaW5nIHRleHQsIFZlY3RvcjxXZWJDb3JlOjpDb21w
b3NpdGlvblVuZGVybGluZT4gdW5kZXJsaW5lcywgVmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9u
SGlnaGxpZ2h0PiBoaWdobGlnaHRzLCBzdHJ1Y3QgV2ViS2l0OjpFZGl0aW5nUmFuZ2Ugc2VsZWN0
aW9uUmFuZ2UsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByZXBsYWNlbWVudFJhbmdlKQor
ICAgIENvbmZpcm1Db21wb3NpdGlvbkFzeW5jKCkKKyNlbmRpZgorI2lmIFBMQVRGT1JNKE1BQykK
KyAgICBBdHRyaWJ1dGVkU3Vic3RyaW5nRm9yQ2hhcmFjdGVyUmFuZ2VBc3luYyhzdHJ1Y3QgV2Vi
S2l0OjpFZGl0aW5nUmFuZ2UgcmFuZ2UpIC0+IChzdHJ1Y3QgV2ViQ29yZTo6QXR0cmlidXRlZFN0
cmluZyBzdHJpbmcsIHN0cnVjdCBXZWJLaXQ6OkVkaXRpbmdSYW5nZSByYW5nZSkgQXN5bmMKKyAg
ICBGb250QXRTZWxlY3Rpb24oKSAtPiAoc3RydWN0IFdlYktpdDo6Rm9udEluZm8gZm9udEluZm8s
IGRvdWJsZSBmb250U2l6ZSwgYm9vbCBzZWxlY3Rpb25IYXNNdWx0aXBsZUZvbnRzKSBBc3luYwor
ICAgIFJlcXVlc3RBY2NlcHRzRmlyc3RNb3VzZShpbnQgZXZlbnROdW1iZXIsIFdlYktpdDo6V2Vi
TW91c2VFdmVudCBldmVudCkKKyNlbmRpZgorCisgICAgU2V0QWx3YXlzU2hvd3NIb3Jpem9udGFs
U2Nyb2xsZXIoYm9vbCBhbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcikKKyAgICBTZXRBbHdh
eXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIoYm9vbCBhbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXIp
CisKKyAgICBTZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoV2ViQ29yZTo6SW50U2l6ZSBzaXpl
KQorICAgIFNldFNpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplKFdlYkNvcmU6OkludFNp
emUgc2l6ZSkKKyAgICBTZXRBdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0KGJvb2wg
c2hvdWxkRXhwYW5kKQorCisgICAgU2V0Vmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cyhz
dGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkludFNpemU+IHZpZXdwb3J0U2l6ZSkKKworI2lmIFBMQVRG
T1JNKENPQ09BKQorICAgIEhhbmRsZUFsdGVybmF0aXZlVGV4dFVJUmVzdWx0KFN0cmluZyByZXN1
bHQpCisjZW5kaWYKKworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgV2lsbFN0YXJ0VXNl
clRyaWdnZXJlZFpvb21pbmcoKTsKKyNlbmRpZgorCisgICAgU2V0U2Nyb2xsUGlubmluZ0JlaGF2
aW9yKHVpbnQzMl90IHBpbm5pbmcpCisgICAgU2V0U2Nyb2xsYmFyT3ZlcmxheVN0eWxlKHN0ZDo6
b3B0aW9uYWw8dWludDMyX3Q+IHNjcm9sbGJhclN0eWxlKQorCisgICAgR2V0Qnl0ZWNvZGVQcm9m
aWxlKCkgLT4gKFN0cmluZyBzdHJpbmcpIEFzeW5jCisKKyAgICBHZXRTYW1wbGluZ1Byb2ZpbGVy
T3V0cHV0KCkgLT4gKFN0cmluZyBzdHJpbmcpIEFzeW5jCisgICAgCisgICAgVGFrZVNuYXBzaG90
KFdlYkNvcmU6OkludFJlY3Qgc25hcHNob3RSZWN0LCBXZWJDb3JlOjpJbnRTaXplIGJpdG1hcFNp
emUsIHVpbnQzMl90IG9wdGlvbnMpIC0+IChXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6SGFuZGxl
IGltYWdlKSBBc3luYworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBQZXJmb3JtSW1tZWRpYXRlQWN0
aW9uSGl0VGVzdEF0TG9jYXRpb24oV2ViQ29yZTo6RmxvYXRQb2ludCBsb2NhdGlvbikKKyAgICBJ
bW1lZGlhdGVBY3Rpb25EaWRVcGRhdGUoKQorICAgIEltbWVkaWF0ZUFjdGlvbkRpZENhbmNlbCgp
CisgICAgSW1tZWRpYXRlQWN0aW9uRGlkQ29tcGxldGUoKQorCisgICAgRGF0YURldGVjdG9yc0Rp
ZFByZXNlbnRVSShXZWJDb3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXlJRCBwYWdlT3Zlcmxh
eSkKKyAgICBEYXRhRGV0ZWN0b3JzRGlkQ2hhbmdlVUkoV2ViQ29yZTo6UGFnZU92ZXJsYXk6OlBh
Z2VPdmVybGF5SUQgcGFnZU92ZXJsYXkpCisgICAgRGF0YURldGVjdG9yc0RpZEhpZGVVSShXZWJD
b3JlOjpQYWdlT3ZlcmxheTo6UGFnZU92ZXJsYXlJRCBwYWdlT3ZlcmxheSkKKworICAgIEhhbmRs
ZUFjY2VwdGVkQ2FuZGlkYXRlKHN0cnVjdCBXZWJDb3JlOjpUZXh0Q2hlY2tpbmdSZXN1bHQgYWNj
ZXB0ZWRDYW5kaWRhdGUpCisKKyAgICBTZXRVc2VTeXN0ZW1BcHBlYXJhbmNlKGJvb2wgdXNlU3lz
dGVtQXBwZWFyYW5jZSkKKworICAgIFNldEhlYWRlckJhbm5lckhlaWdodEZvclRlc3RpbmcoaW50
IGhlaWdodCkKKyAgICBTZXRGb290ZXJCYW5uZXJIZWlnaHRGb3JUZXN0aW5nKGludCBoZWlnaHQp
CisKKyAgICBEaWRFbmRNYWduaWZpY2F0aW9uR2VzdHVyZSgpCisjZW5kaWYKKworICAgIEVmZmVj
dGl2ZUFwcGVhcmFuY2VEaWRDaGFuZ2UoYm9vbCB1c2VEYXJrQXBwZWFyYW5jZSwgYm9vbCB1c2VF
bGV2YXRlZFVzZXJJbnRlcmZhY2VMZXZlbCkKKworI2lmIFBMQVRGT1JNKENPQ09BKQorICAgIFJl
cXVlc3RBY3RpdmVOb3dQbGF5aW5nU2Vzc2lvbkluZm8oKSAtPiAoYm9vbCBhY3RpdmUsIGJvb2wg
cmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9uLCBTdHJpbmcgdGl0bGUsIGRvdWJsZSBk
dXJhdGlvbiwgZG91YmxlIGVsYXBzZWRUaW1lLCB1aW50NjRfdCB1bmlxdWVJZGVudGlmaWVyKSBB
c3luYworI2VuZGlmCisKKyAgICBTZXRTaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMo
Ym9vbCBzaG91bGREaXNwYXRjaEZha2VNb3VzZU1vdmVFdmVudHMpCisKKyNpZiBFTkFCTEUoV0lS
RUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICBQbGF5
YmFja1RhcmdldFNlbGVjdGVkKFdlYkNvcmU6OlBsYXliYWNrVGFyZ2V0Q2xpZW50Q29udGV4dElk
ZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpNZWRpYVBsYXliYWNrVGFyZ2V0Q29udGV4dCB0
YXJnZXQpCisgICAgUGxheWJhY2tUYXJnZXRBdmFpbGFiaWxpdHlEaWRDaGFuZ2UoV2ViQ29yZTo6
UGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIGJvb2wgYXZh
aWxhYmxlKQorICAgIFNldFNob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KFdlYkNvcmU6OlBsYXli
YWNrVGFyZ2V0Q2xpZW50Q29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBib29sIHNob3VsZFBs
YXkpCisgICAgUGxheWJhY2tUYXJnZXRQaWNrZXJXYXNEaXNtaXNzZWQoV2ViQ29yZTo6UGxheWJh
Y2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQpOworI2VuZGlmCisKKyNp
ZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQorICAgIERpZEFjcXVpcmVQb2ludGVyTG9jaygpCisgICAg
RGlkTm90QWNxdWlyZVBvaW50ZXJMb2NrKCkKKyAgICBEaWRMb3NlUG9pbnRlckxvY2soKQorI2Vu
ZGlmCisKKyAgICBDbGVhcldoZWVsRXZlbnRUZXN0TW9uaXRvcigpCisgICAgU2V0U2hvdWxkU2Nh
bGVWaWV3VG9GaXREb2N1bWVudChib29sIHNob3VsZFNjYWxlVmlld1RvRml0RG9jdW1lbnQpCisK
KyNpZiBFTkFCTEUoVklERU8pICYmIFVTRShHU1RSRUFNRVIpCisgICAgRGlkRW5kUmVxdWVzdElu
c3RhbGxNaXNzaW5nTWVkaWFQbHVnaW5zKHVpbnQzMl90IHJlc3VsdCkKKyNlbmRpZgorCisgICAg
U2V0VXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbih1aW50MzJfdCBkaXJlY3Rpb24pCisKKyAg
ICBEaWRHZXRMb2FkRGVjaXNpb25Gb3JJY29uKGJvb2wgZGVjaXNpb24sIFdlYktpdDo6Q2FsbGJh
Y2tJRCBsb2FkSWRlbnRpZmllcikgLT4gKElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBp
Y29uRGF0YSkgQXN5bmMKKyAgICBTZXRVc2VJY29uTG9hZGluZ0NsaWVudChib29sIHVzZUljb25M
b2FkaW5nQ2xpZW50KQorCisjaWYgRU5BQkxFKEdBTUVQQUQpCisgICAgR2FtZXBhZEFjdGl2aXR5
KFZlY3RvcjxXZWJLaXQ6OkdhbWVwYWREYXRhPiBnYW1lcGFkRGF0YXMsIGVudW06Ym9vbCBXZWJD
b3JlOjpFdmVudE1ha2VzR2FtZXBhZHNWaXNpYmxlIGV2ZW50VmlzaWJpbGl0eSkKKyNlbmRpZgor
CisgICAgRnJhbWVCZWNhbWVSZW1vdGUoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQs
IHN0cnVjdCBXZWJDb3JlOjpHbG9iYWxGcmFtZUlkZW50aWZpZXIgcmVtb3RlRnJhbWVJZGVudGlm
aWVyLCBzdHJ1Y3QgV2ViQ29yZTo6R2xvYmFsV2luZG93SWRlbnRpZmllciByZW1vdGVXaW5kb3dJ
ZGVudGlmaWVyKQorCisgICAgUmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50
aWZpZXIsIFN0cmluZyBzY2hlbWUpCisKKyAgICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRp
cmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0
dWFsUmVxdWVzdCkgQXN5bmMKKyAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9u
KHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
IHByb3Bvc2VkUmVxdWVzdCkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVp
bnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2
ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKKyAgICBVUkxTY2hlbWVUYXNr
RGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQorCisgICAgU2V0SXNTdXNwZW5k
ZWQoYm9vbCBzdXNwZW5kZWQpCisKKyNpZiBFTkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQorICAg
IEluc2VydEF0dGFjaG1lbnQoU3RyaW5nIGlkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IGZpbGVTaXplLCBTdHJpbmcgZmlsZU5hbWUsIFN0cmluZyBjb250ZW50VHlwZSkgLT4gKCkg
QXN5bmMKKyAgICBVcGRhdGVBdHRhY2htZW50QXR0cmlidXRlcyhTdHJpbmcgaWRlbnRpZmllciwg
c3RkOjpvcHRpb25hbDx1aW50NjRfdD4gZmlsZVNpemUsIFN0cmluZyBjb250ZW50VHlwZSwgU3Ry
aW5nIGZpbGVOYW1lLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZW5jbG9zaW5nSW1h
Z2VEYXRhKSAtPiAoKSBBc3luYworICAgIFVwZGF0ZUF0dGFjaG1lbnRJY29uKFN0cmluZyBpZGVu
dGlmaWVyLCBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6SGFuZGxlIHFsVGh1bWJuYWlsSGFuZGxl
KQorI2VuZGlmCisKKyNpZiBFTkFCTEUoQVBQTElDQVRJT05fTUFOSUZFU1QpCisgICAgR2V0QXBw
bGljYXRpb25NYW5pZmVzdCgpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkFwcGxpY2F0aW9u
TWFuaWZlc3Q+IG1hbmlmZXN0KSBBc3luYworI2VuZGlmCisKKyAgICBTZXREZWZlcnNMb2FkaW5n
KGJvb2wgZGVmZXJzTG9hZGluZykKKworI2lmIEVOQUJMRShVSV9QUk9DRVNTX1BERl9IVUQpCisg
ICAgWm9vbVBERkluKFdlYktpdDo6UERGUGx1Z2luSWRlbnRpZmllciBpZGVudGlmaWVyKQorICAg
IFpvb21QREZPdXQoV2ViS2l0OjpQREZQbHVnaW5JZGVudGlmaWVyIGlkZW50aWZpZXIpCisgICAg
U2F2ZVBERihXZWJLaXQ6OlBERlBsdWdpbklkZW50aWZpZXIgaWRlbnRpZmllcikgLT4gKFN0cmlu
ZyBmaWxlbmFtZSwgVVJMIHVybCwgSVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEpIEFzeW5jCisgICAg
T3BlblBERldpdGhQcmV2aWV3KFdlYktpdDo6UERGUGx1Z2luSWRlbnRpZmllciBpZGVudGlmaWVy
KSAtPiAoU3RyaW5nIGZpbGVuYW1lLCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1l
SW5mbywgSVBDOjpEYXRhUmVmZXJlbmNlIGRhdGEsIFN0cmluZyB1dWlkKSBBc3luYworI2VuZGlm
CisKKyAgICBVcGRhdGVDdXJyZW50TW9kaWZpZXJTdGF0ZShPcHRpb25TZXQ8V2ViQ29yZTo6UGxh
dGZvcm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVycykKKyAgICBTaW11bGF0ZURldmljZU9yaWVu
dGF0aW9uQ2hhbmdlKGRvdWJsZSBhbHBoYSwgZG91YmxlIGJldGEsIGRvdWJsZSBnYW1tYSkKKwor
I2lmIEVOQUJMRShTUEVFQ0hfU1lOVEhFU0lTKQorICAgIFNwZWFraW5nRXJyb3JPY2N1cnJlZCgp
CisgICAgQm91bmRhcnlFdmVudE9jY3VycmVkKGJvb2wgd29yZEJvdW5kYXJ5LCB1bnNpZ25lZCBj
aGFySW5kZXgpCisgICAgVm9pY2VzRGlkQ2hhbmdlKCkKKyNlbmRpZgorCisgICAgU2V0Q2FuU2hv
d1BsYWNlaG9sZGVyKHN0cnVjdCBXZWJDb3JlOjpFbGVtZW50Q29udGV4dCBjb250ZXh0LCBib29s
IGNhblNob3dQbGFjZWhvbGRlcikKKworI2lmIEVOQUJMRShJTlRFTExJR0VOVF9UUkFDS0lOR19Q
UkVWRU5USU9OKQorICAgIFdhc0xvYWRlZFdpdGhEYXRhVHJhbnNmZXJGcm9tUHJldmFsZW50UmVz
b3VyY2UoKQorICAgIENsZWFyTG9hZGVkU3VicmVzb3VyY2VEb21haW5zKCkKKyAgICBHZXRMb2Fk
ZWRTdWJyZXNvdXJjZURvbWFpbnMoKSAtPiAoVmVjdG9yPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9t
YWluPiBkb21haW5zKSBBc3luYworI2VuZGlmCisKKyNpZiBVU0UoU1lTVEVNX1BSRVZJRVcpCisg
ICAgU3lzdGVtUHJldmlld0FjdGlvblRyaWdnZXJlZChzdHJ1Y3QgV2ViQ29yZTo6U3lzdGVtUHJl
dmlld0luZm8gcHJldmlld0luZm8sIFN0cmluZyBtZXNzYWdlKQorI2VuZGlmCisKKyNpZiBQTEFU
Rk9STShHVEspIHx8IFBMQVRGT1JNKFdQRSkKKyAgICBTZW5kTWVzc2FnZVRvV2ViRXh0ZW5zaW9u
KHN0cnVjdCBXZWJLaXQ6OlVzZXJNZXNzYWdlIHVzZXJNZXNzYWdlKQorICAgIFNlbmRNZXNzYWdl
VG9XZWJFeHRlbnNpb25XaXRoUmVwbHkoc3RydWN0IFdlYktpdDo6VXNlck1lc3NhZ2UgdXNlck1l
c3NhZ2UpIC0+IChzdHJ1Y3QgV2ViS2l0OjpVc2VyTWVzc2FnZSByZXBseU1lc3NhZ2UpIEFzeW5j
CisjZW5kaWYKKworICAgIFN0YXJ0VGV4dE1hbmlwdWxhdGlvbnMoVmVjdG9yPFdlYkNvcmU6OlRl
eHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpFeGNsdXNpb25SdWxlPiBleGNsdXNpb25SdWxlcykg
LT4gKCkgQXN5bmMKKyAgICBDb21wbGV0ZVRleHRNYW5pcHVsYXRpb24oVmVjdG9yPFdlYkNvcmU6
OlRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyOjpNYW5pcHVsYXRpb25JdGVtPiBpdGVtcykgLT4g
KGJvb2wgYWxsRmFpbGVkLCBWZWN0b3I8V2ViQ29yZTo6VGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xs
ZXI6Ok1hbmlwdWxhdGlvbkZhaWx1cmU+IGZhaWx1cmVzKSBBc3luYworCisgICAgU2V0T3ZlcnJp
ZGRlbk1lZGlhVHlwZShTdHJpbmcgbWVkaWFUeXBlKQorICAgIEdldFByb2Nlc3NEaXNwbGF5TmFt
ZSgpIC0+IChTdHJpbmcgZGlzcGxheU5hbWUpIEFzeW5jCisKKyAgICBVcGRhdGVDT1JTRGlzYWJs
aW5nUGF0dGVybnMoVmVjdG9yPFN0cmluZz4gcGF0dGVybnMpCisKKyAgICBTZXRJc1Rha2luZ1Nu
YXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lvbihib29sIGlzVGFraW5nU25hcHNob3RzRm9y
QXBwbGljYXRpb25TdXNwZW5zaW9uKQorICAgIFNldE5lZWRzRE9NV2luZG93UmVzaXplRXZlbnQo
KQorCisgICAgU2V0SGFzUmVzb3VyY2VMb2FkQ2xpZW50KGJvb2wgaGFzKQorICAgIFNldENhblVz
ZUNyZWRlbnRpYWxTdG9yYWdlKGJvb2wgY2FuVXNlKQorCisjaWYgRU5BQkxFKEFQUF9ISUdITElH
SFRTKQorICAgIENyZWF0ZUFwcEhpZ2hsaWdodEluU2VsZWN0ZWRSYW5nZShlbnVtOmJvb2wgV2Vi
Q29yZTo6Q3JlYXRlTmV3R3JvdXBGb3JIaWdobGlnaHQgY3JlYXRlTmV3R3JvdXAsIGVudW06Ym9v
bCBXZWJDb3JlOjpIaWdobGlnaHRSZXF1ZXN0T3JpZ2luYXRlZEluQXBwIHJlcXVlc3RPcmlnaW4p
CisgICAgUmVzdG9yZUFwcEhpZ2hsaWdodHNBbmRTY3JvbGxUb0luZGV4KFZlY3RvcjxXZWJLaXQ6
OlNoYXJlZE1lbW9yeTo6SVBDSGFuZGxlPiBtZW1vcnlIYW5kbGVzLCBzdGQ6Om9wdGlvbmFsPHVu
c2lnbmVkPiBpbmRleCkKKyAgICBTZXRBcHBIaWdobGlnaHRzVmlzaWJpbGl0eShlbnVtOmJvb2wg
V2ViQ29yZTo6SGlnaGxpZ2h0VmlzaWJpbGl0eSBoaWdobGlnaHRWaXNpYmlsaXR5KQorI2VuZGlm
CisKKyAgICBEaXNwYXRjaFdoZWVsRXZlbnRXaXRob3V0U2Nyb2xsaW5nKFdlYktpdDo6V2ViV2hl
ZWxFdmVudCBldmVudCkgLT4gKGJvb2wgaGFuZGxlZCkgQXN5bmMKKworICAgIExhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKCkgLT4gKGJvb2wgd2FzQXBwQm91bmQpIEFzeW5jCisKKyNpZiBF
TkFCTEUoTUVESUFfU0VTU0lPTl9DT09SRElOQVRPUikKKyAgICBDcmVhdGVNZWRpYVNlc3Npb25D
b29yZGluYXRvcihTdHJpbmcgaWRlbnRpZmllcikgLT4gKGJvb2wgc3VjY2VzcykgQXN5bmMKKyAg
ICBJbnZhbGlkYXRlTWVkaWFTZXNzaW9uQ29vcmRpbmF0b3IoKQorI2VuZGlmCisKKyNpZiBFTkFC
TEUoSU1BR0VfQU5BTFlTSVMpCisgICAgVXBkYXRlV2l0aFRleHRSZWNvZ25pdGlvblJlc3VsdChz
dHJ1Y3QgV2ViQ29yZTo6VGV4dFJlY29nbml0aW9uUmVzdWx0IHJlc3VsdCwgc3RydWN0IFdlYkNv
cmU6OkVsZW1lbnRDb250ZXh0IGVsZW1lbnQsIFdlYkNvcmU6OkZsb2F0UG9pbnQgbG9jYXRpb24p
IC0+IChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpUZXh0UmVjb2duaXRpb25VcGRhdGVSZXN1bHQgcmVz
dWx0KSBBc3luYworI2VuZGlmCisKKyAgICBTY3JvbGxUb1JlY3QoV2ViQ29yZTo6RmxvYXRSZWN0
IHRhcmdldFJlY3QsIFdlYkNvcmU6OkZsb2F0UG9pbnQgb3JpZ2luKQorCisjaWYgRU5BQkxFKEFS
S0lUX0lOTElORV9QUkVWSUVXX01BQykKKyAgICBNb2RlbEVsZW1lbnRQcmV2aWV3RGlkT2J0YWlu
Q29udGV4dElkKHN0cnVjdCBXZWJDb3JlOjpFbGVtZW50Q29udGV4dCBlbGVtZW50Q29udGV4dCwg
U3RyaW5nIHV1aWQsIHVpbnQzMl90IGNvbnRleHRJZCkKKyNlbmRpZgorfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eS5jcHAKaW5kZXggMzZlNTcyNTEyMzM3ZDYzMDBjMjJlOGEzMmUxNzE1MTkwNDNiNTAz
Ny4uY2U5MjYxNzQxYmRiMjhjMDRkOTdkMGQ3MGVhOGVhYTFjNGRiNDEzNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHkuY3BwCkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VMb2FkZXImIGxvYWRlciwgV2ViRnJhbWUmIHdl
CiAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+c3RhcnRMb2FkaW5nKCk7CiB9CiAKLXZvaWQg
V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hyb25vdXNseShSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYgd2ViRnJhbWUsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNl
RXJyb3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCit2b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYgd2ViRnJhbWUsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlc291cmNlRXJy
b3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAgZGF0YS5zaHJpbmsoMCk7
CiAgICAgaWYgKCFtX3dlYlBhZ2Uuc2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9h
ZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7IG1faWRl
bnRpZmllciwgbG9hZElkZW50aWZpZXIsIHJlcXVlc3QsIHdlYkZyYW1lLmluZm8oKSB9KSwgTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzazo6UmVwbHko
cmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKQEAgLTc4LDcgKzc4LDcgQEAgdm9pZCBXZWJVUkxT
Y2hlbWVIYW5kbGVyUHJveHk6OnN0b3BBbGxUYXNrcygpCiAgICAgICAgIG1fdGFza3MuYmVnaW4o
KS0+dmFsdWUtPnN0b3BMb2FkaW5nKCk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBuZXdS
ZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQo
dGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAgLTg3LDcgKzg3LDcgQEAgdm9pZCBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0
X3QgdGFza0lkZW50aWZpZXIKICAgICB0YXNrLT5kaWRQZXJmb3JtUmVkaXJlY3Rpb24oV1RGTW92
ZShyZWRpcmVjdFJlc3BvbnNlKSwgV1RGTW92ZShuZXdSZXF1ZXN0KSwgV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0Rp
ZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0Rp
ZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGF1dG8q
IHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAt
OTYsNyArOTYsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2Vp
dmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgYwogICAgIHRhc2stPmRpZFJlY2Vp
dmVSZXNwb25zZShyZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZpZXIsIHNpemVfdCBzaXpl
LCBjb25zdCB1aW50OF90KiBkYXRhKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRh
c2tEaWRSZWNlaXZlRGF0YShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lk
ZW50aWZpZXIsIHNpemVfdCBzaXplLCBjb25zdCB1aW50OF90KiBkYXRhKQogewogICAgIGF1dG8q
IHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAt
MTA1LDcgKzEwNSw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVj
ZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZpZXIsIHNpemVfCiAgICAgdGFzay0+ZGlkUmVj
ZWl2ZURhdGEoc2l6ZSwgZGF0YSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkQ29tcGxldGUodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
RXJyb3ImIGVycm9yKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21w
bGV0ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChhdXRvIHRhc2sgPSByZW1vdmVU
YXNrKHRhc2tJZGVudGlmaWVyKSkKICAgICAgICAgdGFzay0+ZGlkQ29tcGxldGUoZXJyb3IpOwpA
QCAtMTE3LDcgKzExNyw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlk
U3RvcExvYWRpbmcoV2ViVVJMU2NoZW1lVGFza1Byb3h5JiB0YXNrKQogICAgIHJlbW92ZVRhc2so
dGFzay5pZGVudGlmaWVyKCkpOwogfQogCi1SZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcikK
K1JlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6
cmVtb3ZlVGFzayhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikK
IHsKICAgICBhdXRvIHRhc2sgPSBtX3Rhc2tzLnRha2UoaWRlbnRpZmllcik7CiAgICAgaWYgKCF0
YXNrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaAppbmRleCAwNDJkNzljNmU2Zjg0NWRjMWIwNmIyY2Ez
MzgwMDcyZDQ4MGJhNmYwLi4wNjk1YzQwNzQ3ODNkMTFkNjZjZDUwMDQxNDNjZDRhZGQxNTdkOTYz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaApAQCAtMzksNyArMzksNiBAQCBjbGFzcyBSZXNvdXJj
ZVJlcXVlc3Q7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViUGFnZTsKLXR5cGVkZWYg
dWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKIAogY2xhc3MgV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5IDogcHVibGljIFJlZkNvdW50ZWQ8V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5PiB7
CiBwdWJsaWM6CkBAIC01MiwyNiArNTEsMjcgQEAgcHVibGljOgogICAgIHZvaWQgc3RhcnROZXdU
YXNrKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyJiwgV2ViRnJhbWUmKTsKICAgICB2b2lkIHN0b3BB
bGxUYXNrcygpOwogCi0gICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCBXZWJGcmFtZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgVmVjdG9yPHVp
bnQ4X3Q+Jik7CisgICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBW
ZWN0b3I8dWludDhfdD4mKTsKIAogICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJl
dHVybiBtX2lkZW50aWZpZXI7IH0KICAgICBXZWJQYWdlJiBwYWdlKCkgeyByZXR1cm4gbV93ZWJQ
YWdlOyB9CiAKLSAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYpPiYmKTsKLSAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lk
IHRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgc2l6ZV90LCBjb25z
dCB1aW50OF90KiBkYXRhKTsKLSAgICB2b2lkIHRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCB0YXNr
SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgdGFz
a0RpZFBlcmZvcm1SZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsK
KyAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCB0
YXNrRGlkUmVjZWl2ZURhdGEoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBzaXpl
X3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOworICAgIHZvaWQgdGFza0RpZENvbXBsZXRlKFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYpOwogICAgIHZvaWQgdGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNjaGVtZVRhc2tQcm94eSYp
OwogCiBwcml2YXRlOgogICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eShXZWJQYWdlJiwgdWlu
dDY0X3QgaWRlbnRpZmllcik7CiAKLSAgICBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBy
ZW1vdmVUYXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpOworICAgIFJlZlB0cjxXZWJVUkxTY2hlbWVU
YXNrUHJveHk+IHJlbW92ZVRhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsK
IAogICAgIFdlYlBhZ2UmIG1fd2ViUGFnZTsKKyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUg
YSBzdHJvbmdseSB0eXBlZCBpZGVudGlmaWVyLgogICAgIHVpbnQ2NF90IG1faWRlbnRpZmllciB7
IDAgfTsKIAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJv
eHk+PiBtX3Rhc2tzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pj4gbV90YXNrczsKIH07IC8vIGNsYXNz
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVU
YXNrUHJveHkuY3BwCmluZGV4IDc1Nzk5YTBjNjVkMGNkYWZkZTZmMjY1YjFjNTQ3NTZiODRhMjA5
ZDkuLmM4YzRhZjdlYmQ4ZjExY2Y2YzhjYTdhZTdlMDdhMDNiNGQ1OTQ1NDkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFz
a1Byb3h5LmNwcApAQCAtMzksOCArMzksOCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VM
b2FkZXIuaD4KICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KIAotI2RlZmluZSBX
RUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgIltzY2hl
bWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIg
UFJJdTY0ICIsIHRhc2tJRD0lbHVdIFdlYlVSTFNjaGVtZVRhc2tQcm94eTo6IgotI2RlZmluZSBX
RUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyBtX3Vy
bFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBwYWdlSURGcm9tV2ViRnJhbWUobV9mcmFtZSks
IGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIG1faWRlbnRpZmllcgorI2RlZmluZSBXRUJV
UkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgIltzY2hlbWVI
YW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJ
dTY0ICIsIHRhc2tJRD0lIiBQUkl1NjQgIl0gV2ViVVJMU2NoZW1lVGFza1Byb3h5OjoiCisjZGVm
aW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJT
IG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIHBhZ2VJREZyb21XZWJGcmFtZShtX2Zy
YW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgbV9pZGVudGlmaWVyLnRvVUludDY0
KCkKICNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBS
RUxFQVNFX0xPRyhOZXR3b3JrLCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RB
TkRBUkRfVEVNUExBVEUgZm10LCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RB
TkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktpdCB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVU
YXNrUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVt
ZVRhc2tQcm94eS5oCmluZGV4IGI1ZTMzNGRmYzIzMzY0OGVjNTdlOGY2MTYzZGMxNWZhYjU2ZjZj
NWMuLjkzZDlhNDliNWE3MGQyZTBiMTNmZjY4Y2FiZmI1ZWUwNDdhNTVlY2YgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQ
cm94eS5oCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRh
KHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7CiAgICAgdm9pZCBkaWRDb21wbGV0ZShjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmll
cjsgfQogCiBwcml2YXRlOgogICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94eShXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHkmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlciYsIFdlYkZyYW1lJik7CkBAIC03
MCw3ICs3MCw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
PiBtX2NvcmVMb2FkZXI7CiAgICAgUmVmUHRyPFdlYkZyYW1lPiBtX2ZyYW1lOwogICAgIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVlc3Q7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50
aWZpZXI7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmll
cjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbXBsZXRpb25IYW5kbGVyIHsgZmFsc2UgfTsKICAg
ICBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+PiBtX3F1ZXVlZFRhc2tzOwogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1
bGVyLmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VM
b2FkU2NoZWR1bGVyLmNwcAppbmRleCA3ZGNmZTBiODc5Y2E4NTQ1Njk2ODM3ZWVjN2NhODkwZjk5
OGE5OTFlLi4xZTRkMjljMGU0MWY3ODZjNjVkNDMxZjM3MWIyNmM0NzUwNDk1ZDAwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNj
aGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJS
ZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCkBAIC0xMDcsNyArMTA3LDcgQEAgdm9pZCBXZWJSZXNv
dXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZShGcmFtZSYgZnJhbWUsIENhY2hlZFJlc291
cmNlJiByZXNvdXIKICAgICB9KTsKIH0KIAotdm9pZCBXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6
OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCB1bnNp
Z25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRp
YWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1h
cCYsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgVmVj
dG9yPHVpbnQ4X3Q+JiBkYXRhKQordm9pZCBXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRS
ZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50Q3Jl
ZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25zLCBjb25zdCBIVFRQSGVh
ZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAgYXV0byogZG9jdW1lbnQgPSBmcmFtZUxv
YWRlci5mcmFtZSgpLmRvY3VtZW50KCk7CiAgICAgYXV0byogc291cmNlT3JpZ2luID0gZG9jdW1l
bnQgPyAmZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkgOiBudWxscHRyOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVs
ZXIuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2Fk
U2NoZWR1bGVyLmgKaW5kZXggMTYxOGI2N2ExZmY2ZDYyZjgxMTQyN2U5NmM5OWU5Mzk2YTliMGEw
Yi4uZTU5NTUwZmJiYmEwZjZkYzM0Y2MzM2Q1MTBlODllNmUzNDk4ZGEwNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVs
ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNl
TG9hZFNjaGVkdWxlci5oCkBAIC00NSw3ICs0NSw3IEBAIHB1YmxpYzoKICAgICBXZWJSZXNvdXJj
ZUxvYWRTY2hlZHVsZXIoKTsKIAogICAgIHZvaWQgbG9hZFJlc291cmNlKFdlYkNvcmU6OkZyYW1l
JiwgV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2UmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChSZWZQdHI8V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXI+JiYpPiYmKSBmaW5hbDsKLSAg
ICB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpD
bGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25z
dCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4mKSBmaW5hbDsKKyAgICB2b2lk
IGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIFdlYkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IFdlYkNvcmU6OkZldGNo
T3B0aW9ucyYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYpIGZp
bmFsOwogICAgIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZSYpIGZpbmFsOwog
ICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChXZWJDb3JlOjpGcmFtZSYpIGZpbmFsOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAzYzI0ODEzMWU1ZGI4MTlhYzIzYjZmMThm
MjhmOWJiMTIxZjRiYmMzLi5lM2Y1ZjljOWYwZmZkOGFlZTJkYmYwZTc4MzIxNmJjM2MwYTc1NWM2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTgyLDI4ICs4MiwyOCBAQCBwcml2YXRl
OgogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICB2b2lkIGFzc2lnbklkZW50
aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsK
KyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmlu
YWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVD
VElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5z
dFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAg
Ym9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikg
ZmluYWw7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRp
ZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3Bv
bnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaXNw
YXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9u
c2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjaWYgRU5B
QkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0
aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7Cisg
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3Bv
bnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBj
b25zdCBmaW5hbDsKKyAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJl
c3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYm
KSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50
cygpIGZpbmFsOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2VydmVyUmVkaXJlY3RGb3JQ
cm92aXNpb25hbExvYWQoKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KaW5kZXgg
ZmJhZWE4ZWE2ODY4ZGE4MTI0YzAxMTJiNTBiMmNkNDU1ZTcxNWY2OC4uNzFhNzE1YjM3ZmE1ZTZj
NWY3NDQ0ZTIzN2M4MmQxNTljZTA4OGFkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0K
QEAgLTMzNiw3ICszMzYsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1bQogICAgIHJldHVybiB0
cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9J
bml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1
ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFt
ZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGlt
cGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0
aW9ucyh3ZWJWaWV3KTsKQEAgLTM1Niw3ICszNTYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aQogICAgIFt3ZWJWaWV3IF9hZGRPYmplY3Q6b2JqZWN0LmdldCgpIGZvcklkZW50aWZpZXI6aWRl
bnRpZmllcl07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNl
bmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0g
Z2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1w
bGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9h
ZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtMzg2LDcgKzM4Niw3IEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiBsb2FkCiAgICAgICAgIHJlcXVlc3QudXBkYXRlRnJvbURlbGVnYXRl
UHJlc2VydmluZ09sZFByb3BlcnRpZXMoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0KG5ld1VSTFJl
cXVlc3QpKTsKIH0KIAotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyAqd2ViVmll
dyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0
ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJj
ZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTM5OSw3ICszOTksNyBA
QCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciogbAogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2Up
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0g
Z2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1w
bGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9h
ZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNDIwLDcgKzQyMCw3IEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKFdlYkNvcmU6OkRvCiB9CiAKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRI
X0NBTExCQUNLKQotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdh
aW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYgcHJv
dGVjdGlvblNwYWNlKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRl
QWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCiB7CiAgICAgV2ViVmlldyAqd2Vi
VmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxl
Z2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNv
dXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTQ0MSw3ICs0NDEs
NyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJv
dGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZQogI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK1JldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgp
KTsKICAgICBpZCByZXNvdXJjZSA9IFt3ZWJWaWV3IF9vYmplY3RGb3JJZGVudGlmaWVyOmlkZW50
aWZpZXJdOwpAQCAtNDY4LDcgKzQ2OCw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNo
b3VsZFBhaW50QnJva2VuSW1hZ2UoY29uc3QgVVJMJiBpbWFnZVVSTCkgY29uc3QKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdl
dCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVt
ZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25z
KHdlYlZpZXcpOwpAQCAtNDg2LDcgKzQ4Niw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsCiAg
ICAgfQogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5T
Q2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0Cit2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgTlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
TlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAg
ICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBX
ZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0g
V2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpA
QCAtNTA2LDcgKzUwNiw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgY29tcGxldGlv
bkhhbmRsZXIocmVzcG9uc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpCit2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0g
Z2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1w
bGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9h
ZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNTI4LDcgKzUyOCw3IEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihO
U0FycmF5ICopCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJWaWV3ICp3
ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURl
bGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJl
c291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNTUwLDcgKzU1
MCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hCiAgICAgc3RhdGljX2Nhc3Q8V2ViRG9jdW1l
bnRMb2FkZXJNYWMqPihsb2FkZXIpLT5kZWNyZWFzZUxvYWRDb3VudChpZGVudGlmaWVyKTsKIH0K
IAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9
IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUlt
cGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxv
YWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaCBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaAppbmRleCBlODAz
MTRiMmEwODk0ODRhNGEyZTQ5ZTYwOTc0ZmU2MDk3YjFmNzhlLi42MDJmYmMyMGY1ZTJmMDAyZmJi
ZTg4YWJlNWRiZmEyNmI1MDA1NTQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLmgKKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5oCkBAIC0yNyw2ICsyNyw3IEBACiAg
Ki8KIAogI2ltcG9ydCA8V2ViQ29yZS9Eb2N1bWVudExvYWRlci5oPgorI2ltcG9ydCA8V2ViQ29y
ZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
ICNpbXBvcnQgPHd0Zi9IYXNoU2V0Lmg+CiAKQEAgLTQ4LDggKzQ5LDggQEAgcHVibGljOgogICAg
IHZvaWQgZGV0YWNoRGF0YVNvdXJjZSgpOwogICAgIFdlYkRhdGFTb3VyY2UgKmRhdGFTb3VyY2Uo
KSBjb25zdDsKIAotICAgIHZvaWQgaW5jcmVhc2VMb2FkQ291bnQodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKTsKLSAgICB2b2lkIGRlY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRp
Zmllcik7CisgICAgdm9pZCBpbmNyZWFzZUxvYWRDb3VudChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpOworICAgIHZvaWQgZGVjcmVhc2VMb2FkQ291bnQoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyKTsKIAogcHJpdmF0ZToKICAgICBXZWJEb2N1bWVudExvYWRlck1h
Yyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpTdWJzdGl0
dXRlRGF0YSYpOwpAQCAtNjQsNSArNjUsNSBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0RhdGFT
b3VyY2VSZXRhaW5lZDsKICAgICBSZXRhaW5QdHI8aWQ+IG1fcmVzb3VyY2VMb2FkRGVsZWdhdGU7
CiAgICAgUmV0YWluUHRyPGlkPiBtX2Rvd25sb2FkRGVsZWdhdGU7Ci0gICAgSGFzaFNldDx1bnNp
Z25lZCBsb25nPiBtX2xvYWRpbmdSZXNvdXJjZXM7CisgICAgSGFzaFNldDxXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXI+IG1fbG9hZGluZ1Jlc291cmNlczsKIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5t
bQppbmRleCBkMmViY2IwMDFkZjZhN2U3NDA1MjY3MzkzNmU5NzU3MzMyMTBiYzcwLi41MWIzZGNl
ZDMxYWIxMzExMjU5ODE5Nzk4YzJmY2JkYjA5YzQ1NGQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMubW0KQEAgLTky
LDcgKzkyLDcgQEAgdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6ZGV0YWNoRnJvbUZyYW1lKCkK
ICAgICAvLyBmcmFtZSBpcyBub3QgYXR0YWNoZWQ/CiB9CiAKLXZvaWQgV2ViRG9jdW1lbnRMb2Fk
ZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQg
V2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChtX2RhdGFTb3VyY2Up
OwogCkBAIC0xMDMsOSArMTAzLDkgQEAgdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6aW5jcmVh
c2VMb2FkQ291bnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgIHJldGFpbkRhdGFTb3Vy
Y2UoKTsKIH0KIAotdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6ZGVjcmVhc2VMb2FkQ291bnQo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6ZGVj
cmVhc2VMb2FkQ291bnQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIpCiB7Ci0gICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPjo6aXRlcmF0b3IgaXQgPSBtX2xvYWRp
bmdSZXNvdXJjZXMuZmluZChpZGVudGlmaWVyKTsKKyAgICBhdXRvIGl0ID0gbV9sb2FkaW5nUmVz
b3VyY2VzLmZpbmQoaWRlbnRpZmllcik7CiAgICAgCiAgICAgLy8gSXQgaXMgdmFsaWQgZm9yIGEg
bG9hZCB0byBiZSBjYW5jZWxsZWQgYmVmb3JlIGl0J3Mgc3RhcnRlZC4KICAgICBpZiAoaXQgPT0g
bV9sb2FkaW5nUmVzb3VyY2VzLmVuZCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgKaW5kZXggZTFmZGQ0MDBmMWJlNzVmN2Q5NTE3MGU2
NzQwM2Q0NGVmYzE0ZGFmNS4uYTQ3ZGEyY2Y0ZDc0OTQ5NjBmNWM1MDhmMjJiN2YxNTBhMjdkOGRh
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3SW50
ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRl
cm5hbC5oCkBAIC00Miw2ICs0Miw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0hUTUxNZWRpYUVsZW1l
bnRFbnVtcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9MYXlvdXRNaWxlc3RvbmUuaD4KICNpbXBvcnQg
PFdlYkNvcmUvUGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRpZmllci5oPgorI2ltcG9y
dCA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRpY2F0
b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEluZGljYXRvcldpbmRvdy5oPgpAQCAtMjUwLDkg
KzI1MSwxMSBAQCBXZWJMYXlvdXRNaWxlc3RvbmVzIGtpdExheW91dE1pbGVzdG9uZXMoT3B0aW9u
U2V0PFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZT4pOwogLSAodm9pZClyZW1vdmVQbHVnaW5JbnN0
YW5jZVZpZXdzRm9yOihXZWJGcmFtZSopd2ViRnJhbWU7CiAjZW5kaWYKIAotLSAodm9pZClfYWRk
T2JqZWN0OihpZClvYmplY3QgZm9ySWRlbnRpZmllcjoodW5zaWduZWQgbG9uZylpZGVudGlmaWVy
OwotLSAoaWQpX29iamVjdEZvcklkZW50aWZpZXI6KHVuc2lnbmVkIGxvbmcpaWRlbnRpZmllcjsK
LS0gKHZvaWQpX3JlbW92ZU9iamVjdEZvcklkZW50aWZpZXI6KHVuc2lnbmVkIGxvbmcpaWRlbnRp
ZmllcjsKKyNpZmRlZiBfX2NwbHVzcGx1cworLSAodm9pZClfYWRkT2JqZWN0OihpZClvYmplY3Qg
Zm9ySWRlbnRpZmllcjooV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKWlkZW50aWZp
ZXI7CistIChpZClfb2JqZWN0Rm9ySWRlbnRpZmllcjooV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKWlkZW50aWZpZXI7CistICh2b2lkKV9yZW1vdmVPYmplY3RGb3JJZGVudGlmaWVy
OihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpaWRlbnRpZmllcjsKKyNlbmRpZgog
CiAtICh2b2lkKV9zZXRab29tTXVsdGlwbGllcjooZmxvYXQpbXVsdGlwbGllciBpc1RleHRPbmx5
OihCT09MKWlzVGV4dE9ubHk7CiAtIChmbG9hdClfem9vbU11bHRpcGxpZXI6KEJPT0wpaXNUZXh0
T25seTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCAyODk1M2Q2ZjZkYjQzYTFi
MzY2NDI5MmQzNjdlNmI3ZTA2YzA2NDhhLi41ODg5OTJkNGFhZmU1ZmM4MzliNjU0ZGNlZGE4OTJk
ZDcwMzU4MjNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC0xNzcsNyArMTc3
LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygp
OwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVn
YXRlOwpAQCAtMTg1LDEwICsxODUsMTAgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgQ09NUHRyPFdlYk11dGFibGVVUkxSZXF1ZXN0PiB3ZWJVUkxSZXF1
ZXN0KEFkb3B0Q09NLCBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6Y3JlYXRlSW5zdGFuY2UocmVxdWVz
dCkpOwotICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5pZGVudGlmaWVyRm9ySW5pdGlhbFJlcXVl
c3Qod2ViVmlldywgd2ViVVJMUmVxdWVzdC5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIp
LCBpZGVudGlmaWVyKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+aWRlbnRpZmllckZvcklu
aXRpYWxSZXF1ZXN0KHdlYlZpZXcsIHdlYlVSTFJlcXVlc3QuZ2V0KCksIGdldFdlYkRhdGFTb3Vy
Y2UobG9hZGVyKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIH0KIAotYm9vbCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyogd2ViVmll
dyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERl
bGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAgLTIwMCwxMyArMjAwLDEzIEBAIGJvb2wg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAgICAgQk9PTCBzaG91
bGRVc2U7Ci0gICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHdlYlZpZXcsIGlkZW50aWZpZXIsIGdldFdlYkRhdGFT
b3VyY2UobG9hZGVyKSwgJnNob3VsZFVzZSkpKQorICAgIGlmIChTVUNDRUVERUQocmVzb3VyY2VM
b2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSh3ZWJWaWV3LCBp
ZGVudGlmaWVyLnRvVUludDY0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJnNob3VsZFVz
ZSkpKQogICAgICAgICByZXR1cm4gc2hvdWxkVXNlOwogCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQogewogICAg
IEFTU0VSVChjaGFsbGVuZ2UuYXV0aGVudGljYXRpb25DbGllbnQoKSk7CiAKQEAgLTIxNCw3ICsy
MTQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYQogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VM
b2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChTVUNDRUVERUQod2Vi
Vmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpIHsKICAg
ICAgICAgQ09NUHRyPFdlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlPiB3ZWJDaGFsbGVuZ2Uo
QWRvcHRDT00sIFdlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpjcmVhdGVJbnN0YW5jZShj
aGFsbGVuZ2UpKTsKLSAgICAgICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZS0+
ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHdlYlZpZXcsIGlkZW50aWZpZXIsIHdl
YkNoYWxsZW5nZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKSkpCisgICAgICAgIGlm
IChTVUNDRUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIHdlYkNoYWxsZW5nZS5n
ZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKSkpCiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgfQogCkBAIC0yMjMsNyArMjIzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2EKICAgICBj
aGFsbGVuZ2UuYXV0aGVudGljYXRpb25DbGllbnQoKS0+cmVjZWl2ZWRSZXF1ZXN0VG9Db250aW51
ZVdpdGhvdXRDcmVkZW50aWFsKGNoYWxsZW5nZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBXZWJW
aWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVz
b3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAtMjM0LDcgKzIzNCw3
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgQ09NUHRyPFdlYlVSTFJlc3BvbnNlPiB3
ZWJVUkxSZWRpcmVjdFJlc3BvbnNlKEFkb3B0Q09NLCBXZWJVUkxSZXNwb25zZTo6Y3JlYXRlSW5z
dGFuY2UocmVkaXJlY3RSZXNwb25zZSkpOwogCiAgICAgQ09NUHRyPElXZWJVUkxSZXF1ZXN0PiBu
ZXdXZWJVUkxSZXF1ZXN0OwotICAgIGlmIChGQUlMRUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPndp
bGxTZW5kUmVxdWVzdCh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJVUkxSZXF1ZXN0LmdldCgpLCB3
ZWJVUkxSZWRpcmVjdFJlc3BvbnNlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZu
ZXdXZWJVUkxSZXF1ZXN0KSkpCisgICAgaWYgKEZBSUxFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZS0+
d2lsbFNlbmRSZXF1ZXN0KHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgd2ViVVJMUmVx
dWVzdC5nZXQoKSwgd2ViVVJMUmVkaXJlY3RSZXNwb25zZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJj
ZShsb2FkZXIpLCAmbmV3V2ViVVJMUmVxdWVzdCkpKQogICAgICAgICByZXR1cm47CiAKICAgICBp
ZiAod2ViVVJMUmVxdWVzdCA9PSBuZXdXZWJVUkxSZXF1ZXN0KQpAQCAtMjUyLDcgKzI1Miw3IEBA
IHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgcmVxdWVzdCA9IG5ld1dlYlVSTFJlcXVlc3RJ
bXBsLT5yZXNvdXJjZVJlcXVlc3QoKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3
ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVs
ZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAtMjYwLDMwICsyNjAsMzAgQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgdW4KICAgICAgICAgcmV0dXJuOwogCiAgICAgQ09NUHRyPFdlYlVSTFJl
c3BvbnNlPiB3ZWJVUkxSZXNwb25zZShBZG9wdENPTSwgV2ViVVJMUmVzcG9uc2U6OmNyZWF0ZUlu
c3RhbmNlKHJlc3BvbnNlKSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVS
ZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJVUkxSZXNwb25zZS5nZXQoKSwgZ2V0V2Vi
RGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2
ZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgd2ViVVJMUmVzcG9uc2Uu
Z2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgbGVuZ3RoKQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgaW50
IGxlbmd0aCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygp
OwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVn
YXRlOwogICAgIGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291
cmNlTG9hZERlbGVnYXRlKSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlc291cmNlTG9hZERl
bGVnYXRlLT5kaWRSZWNlaXZlQ29udGVudExlbmd0aCh3ZWJWaWV3LCBpZGVudGlmaWVyLCBsZW5n
dGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUt
PmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwg
bGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOwogfQogCi12b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBt
X3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0
ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CiAgICAgaWYgKEZBSUxFRCh3ZWJWaWV3LT5yZXNvdXJj
ZUxvYWREZWxlZ2F0ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUpKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZpbmlzaExvYWRpbmdGcm9tRGF0YVNvdXJj
ZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOworICAgIHJl
c291cmNlTG9hZERlbGVnYXRlLT5kaWRGaW5pc2hMb2FkaW5nRnJvbURhdGFTb3VyY2Uod2ViVmll
dywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOwogfQog
Ci12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBXZWJWaWV3
KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3Vy
Y2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAtMjkxLDExICsyOTEsMTEg
QEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ24KICAgICAgICAgcmV0dXJuOwogCiAgICAgQ09NUHRy
PFdlYkVycm9yPiB3ZWJFcnJvcihBZG9wdENPTSwgV2ViRXJyb3I6OmNyZWF0ZUluc3RhbmNlKGVy
cm9yKSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZhaWxMb2FkaW5nV2l0aEVycm9y
KHdlYlZpZXcsIGlkZW50aWZpZXIsIHdlYkVycm9yLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxv
YWRlcikpOworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRGYWlsTG9hZGluZ1dpdGhFcnJv
cih3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIHdlYkVycm9yLmdldCgpLCBnZXRXZWJE
YXRhU291cmNlKGxvYWRlcikpOwogfQogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKLWJvb2wg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgY29uc3QgdW5zaWduZWQgbG9u
ZyBsb25nIGxlbmd0aCkKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCB1bnNpZ25l
ZCBjaGFyKiBkYXRhLCBjb25zdCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKQogewogICAgIFdl
YlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJS
ZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBAIC0zMDgsNyArMzA4
LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZAogCiAgICAgQ09NUHRyPElXZWJVUkxSZXNwb25z
ZT4gdXJsUmVzcG9uc2UoQWRvcHRDT00sIFdlYlVSTFJlc3BvbnNlOjpjcmVhdGVJbnN0YW5jZShy
ZXNwb25zZSkpOwogICAgIEJPT0wgc2hvdWxkQ2FjaGU7Ci0gICAgaWYgKFNVQ0NFRURFRChyZXNv
dXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZENhY2hlUmVzcG9uc2Uod2ViVmlldywgaWRl
bnRpZmllciwgdXJsUmVzcG9uc2UuZ2V0KCksIGRhdGEsIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJj
ZShsb2FkZXIpLCAmc2hvdWxkQ2FjaGUpKSkKKyAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9h
ZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkQ2FjaGVSZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVy
LnRvVUludDY0KCksIHVybFJlc3BvbnNlLmdldCgpLCBkYXRhLCBsZW5ndGgsIGdldFdlYkRhdGFT
b3VyY2UobG9hZGVyKSwgJnNob3VsZENhY2hlKSkpCiAgICAgICAgIHJldHVybiBzaG91bGRDYWNo
ZTsKIAogICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggZWI3
ZjIzM2NmNGYyZDQzZGUxNzc2ZTJiMGQzNjJmYWMyZGVhZDQ0MC4uNzgwNzdlMDY5MzFkYzUxOTY5
ODU3YWE0ZTIyZjZkM2RkYWVjNDQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCkBAIC02
MCwxNyArNjAsMTcgQEAgcHVibGljOgogICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIG92
ZXJyaWRlOwogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBhc3Np
Z25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikg
b3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3Bv
bnNlKSBvdmVycmlkZTsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlk
ZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRS
ZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZUNyZWRl
bnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRl
OworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRM
ZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9h
ZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgb3ZlcnJpZGU7CiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKLSAgICBib29s
IHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1
bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsK
KyAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBv
dmVycmlkZTsKICNlbmRpZgogCiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgb3ZlcnJpZGU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438502</attachid>
            <date>2021-09-17 12:39:55 -0700</date>
            <delta_ts>2021-09-17 14:01:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210917123954.patch</filename>
            <type>text/plain</type>
            <size>371296</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNjU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2NhY2VhZjU3ZWJiMDVk
ODRkOGIwOWY1OTZjOGIzM2EzNmZiN2IxMy4uYWJlMDc0NThhNDg3NjU5YjUwZGZmZTAxYTk4NGFi
OGFhOTEwOWM2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNyAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
TWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVy
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJM
b2FkZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRS
ZXF1ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRp
b25zRGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVy
Y2VwdFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAg
ICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNl
aXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dl
YkNvbnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0
aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToK
KyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6Cisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
b25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxl
bWVudFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9u
YWxMb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50
ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5oOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxv
YWRlci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3Jl
OjpMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9M
b2FkZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29p
bmdMb2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9Q
aW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xv
YWQpOgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJD
b3JlOjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBs
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5v
dGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29u
c3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmRE
YXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVu
dDo6ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJD
bGllbnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFi
bGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DYW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJl
YWRCcmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
ciBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291
cmNlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRl
ZC4KKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1M
SHR0cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIE1vdmUgbm9uLXRyYXZlcnNhbCBm
dW5jdGlvbnMgZnJvbSBpdGVyYXRvciB0byB0aGUgZGVyZWZlcmVuY2VkIHR5cGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggNzI5NmI1M2E1ZGEyM2E3OGE0MGQ3ZWE0YzRmYTRmMWEzN2M2MTI0ZS4uYzAzYWUwNzNhMDdm
OWJiZmI4ODc2NGI3YmU4NjkyOGJjYmZjOGEyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNzMgQEAK
KzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JS
ZWZlcmVuY2VzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9hZFBpbmcpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJl
Y29ubmVjdFRvKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OmlzUmVzb3VyY2VMb2FkRmluaXNoZWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6c3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmdldE5l
dHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0
aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRh
a2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjphZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmFkZE5ldHdvcmtM
b2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVzb3VyY2VOZXR3b3JrQWN0
aXZpdHlUcmFja2VyOjpSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjp0YWtlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmNvbnRh
aW5zIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNm
ZXJUb05ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0Ojplc2NhcGVJREZvckpTT04pOgor
ICAgICAgICAoV2ViS2l0Ojpsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0Ojpsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbik6CisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3
YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRh
c2s6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oOgorICAgICAg
ICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxv
YWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3Vy
Y2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50Ojpk
aWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKToK
KyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmFp
bExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJj
ZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAoQVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAgICAg
ICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2Vu
ZFJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJl
c291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UpOgorICAgICAg
ICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlk
RmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZSk6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0
aW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1
bGVMb2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9h
ZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
OjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3Vy
Y2VMb2Fkcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxv
YWRJZGVudGlmaWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyBjb25zdCk6CisgICAgICAgIChXZWJL
aXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNw
b25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6
Y29udGludWVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQgY29uc3QpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZp
ZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1
dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRIMlBpbmcpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmFkZENvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkUmVzb3Vy
Y2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1
ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3Jt
UmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1l
VGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KToK
KyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViVVJMU2NoZW1lVGFza1Byb3h5OjppZGVudGlmaWVyIGNvbnN0KToKKwogMjAyMS0wOS0xNyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dU
S11bYTExeV0gQWRkIGEgYnVpbGQgb3B0aW9uIHRvIGVuYWJsZSBBVFNQSQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5n
ZUxvZwppbmRleCAzM2YxMDljZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNiOWI4ZDEzLi45MjY5
YzAxNjUzYmQzOTA1ZWZhMDk4OTU2ZmM0YmYyOGJmNjEyMGRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA5LTE3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFJl
c291cmNlTG9hZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6Cisg
ICAgICAgIChXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5o
OgorCiAyMDIxLTA5LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IG9yaWdpbiBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJhbWUtb3JpZ2lu
KSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGUz
YjQ5M2ZkYTg3OGE3OWRhY2NiZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmE0ZThkNzFlMDhhZmFmNmUx
ZTdlMzVjZmYxYTJjMDAwODExZTczNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyOSBAQAorMjAyMS0wOS0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJj
ZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAg
ICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAgICAqIFdl
YlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLm1tOgorICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNl
TG9hZENvdW50KToKKyAgICAgICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRD
b3VudCk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAyMS0wOS0x
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJkZW5pbmdd
IFZhbGlkYXRlIElEQlZhbHVlJ3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1dE9yQWRk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRleCA4NmYyMGMyYmZjNmY3NjY3NzE3ZTg2
YTU5NDdmZTJmNmQzZWMzMGFjLi4wOWQzYThjMjg1ZDM4ZTdkMGY1YzcwM2IyOWFhMzJjMGExNWQw
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEt
MDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Up
OgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZl
Q29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOgorCiAyMDIxLTA5LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hhcmRlbmluZ10gVmFsaWRhdGUgSURCVmFsdWUncyBibG9iIHBhdGhzIGluIFdl
YklEQlNlcnZlcjo6cHV0T3JBZGQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzI5OTNhMWJjMTgz
MmZlYzJjZTRjM2IyNzU5NTczOTJiNzMxNTE3NC4uYmVmOTgzNmE2MDE0ODk3YmEwZjI4YmE2YzNl
YTU3OGE2ZDRjZjEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC04NDQsNiArODQ0LDcgQEAgc2V0
KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGxvYWRlci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkVGltaW5nLmgKICAgICBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaAorICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aAogICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaAogICAgIGxvYWRlci9SZXNvdXJj
ZUxvYWRlclR5cGVzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCmluZGV4IDg2ZjUz
NDdmZDkxMzNkYzBlYWIzNWJkZWVjMzZlNmIzOTBiOWYyZTcuLjZjYmQxZjQ5M2Q0ODA3YzUzMmMy
ODEzZWZlMTdmYzkwMTU5NWY3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuY3BwCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
RmV0Y2hMb2FkZXI6OnN0YXJ0U3RyZWFtaW5nKCkKICAgICByZXR1cm4gZmlyc3RDaHVuazsKIH0K
IAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3Bv
bnNlKTsKIH0KQEAgLTE1Niw3ICsxNTYsNyBAQCB2b2lkIEZldGNoTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShjb25zdCB1aW50OF90KiB2YWx1ZSwgaW50IHNpemUpCiAgICAgbV9jb25zdW1lci0+YXBw
ZW5kKHZhbHVlLCBzaXplKTsKIH0KIAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9jbGllbnQuZGlkU3VjY2VlZCgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCmluZGV4IGYzMTRhMDVm
Y2ZhYzYxN2MzY2JkMzJiYTkwM2Y3Y2YyMDFiOWZlNDUuLjQwNzI4ZDI1N2U4NDNjNDExNDg2ZmQ2
ZTQzODA3MDQ0MzFhY2ZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
TG9hZGVyLmgKQEAgLTU3LDkgKzU3LDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQgQVBJLgotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
LCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBm
aW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGM3NTg0MzA2MTc3ZDg2NWI0OWUxOWI3ZTAzOWRlZGY1MDBmMTNkNmQu
LjUzZmU4OTk1ZDdjODM4MTkyNDRmZmFhYjg0NmU2MWRlN2M3MDJlZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwMTEsNiAr
MjAxMSw3IEBACiAJCTVCMzA2OTVFMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjMwNjk1
QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oICovOyB9OwogCQk1QjQ2NjU2
MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTVGMjVEMTRDMDkw
MDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVCNDY2NTY0MjVEMTRDMEEwMDBDRkUx
NCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNu
YXBBbmltYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUMxQjFEM0YyNkYzOTc4MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUMxQjFEM0QyNkYzOTc3RjAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVDMkIxQUVD
MjIzOTdFQkMwMEI5MUNGNyAvKiBSZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovOyB9OwogCQk1QzQzMDRCMTE5MUFDOTA4
MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNo
YWRlclRleHR1cmVMT0QuaCAqLzsgfTsKIAkJNUM0MzA0QjYxOTFBRUY0NjAwMEUyQkMwIC8qIEpT
RVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVy
ZUxPRC5oICovOyB9OwpAQCAtOTc1Nyw2ICs5NzU4LDcgQEAKIAkJNUMxQjFEMjQyNkYxNUIxQTAw
ODgyREEyIC8qIFNoYXJlZFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaGFyZWRXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjUy
NkYxODhEODAwODgyREEyIC8qIFdvcmtlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdvcmtlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzFC
MUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAxMjU3NzE5ODkw
MEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcmlhbGl6ZWRORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyRUJF
MDMyNTc3MUE0QzAwRDU1QjA1IC8qIFNlcmlhbGl6ZWRORkEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFCeXRlY29kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjc3MzgsNiArMjc3NDAsNyBAQAogCQkJCTdDMkZBNjEwMUVB
OTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLywKIAkJCQk5
M0UyMjdERTBBRjU4OUFEMDBENDgzMjQgLyogUmVzb3VyY2VMb2FkZXIuY3BwICovLAogCQkJCTY1
NkQzNzI3MEFEQkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCTVDMUIx
RDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLywKIAkJ
CQlEMEEzQTczMDE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggKi8s
CiAJCQkJNTFBRjUwMzUxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAq
LywKIAkJCQk1MUVFN0IzOTFBQTUxMjMxMDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAg
Ki8sCkBAIC0zMzEzMiw3ICszMzEzNSw2IEBACiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQx
IC8qIEpTRE9NV2luZG93QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NC
NjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQk0NjBD
QkYzNjFENEJDRDBFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmggaW4gSGVhZGVy
cyAqLywKLQkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVz
Y3JpcHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk2NUUwRTk0NDExMzNDODlGMDBCNENC
MTAgLyogSlNET01XcmFwcGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3QzQ1QzlEMzFFM0ZDQkQ3
MDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzQTgw
NjFFMUUwM0I1ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLywKQEAg
LTM0Njg5LDYgKzM0NjkxLDcgQEAKIAkJCQk1MTRDNzY3QTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVz
b3VyY2VIYW5kbGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3NjdCMENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
NTZEMzczRjBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTVDMUIxRDNGMjZGMzk3ODAwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUQwQTNBNzMxMTQwNUEzOTgwMEZCOEVEMyAvKiBSZXNv
dXJjZUxvYWRlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxQUY1MDM2MTZGMTAwRjYw
MDk1QjJFOCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUVF
N0IzODFBQTUwQjA1MDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5oIGluIEhlYWRlcnMgKi8s
CkBAIC0zNDc0Miw2ICszNDc0NSw3IEBACiAJCQkJMDdBQjk5NkIxOERBM0MwMTAwMTg3NzFFIC8q
IFJUQ0ljZVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkxMDgxRTdEREM3MzAwRjMw
NjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFBvbGljeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkx
MDkxRTdEREM3MzAwRjMwNjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3Jp
cHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUMxNEJDNjI2REU2REU4MDA2ODVCRjUg
LyogUlRDTmV0d29ya01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3Mzc5NEZFMTlGNTg2
NEUwMEU1QTA0NSAvKiBSVENOb3RpZmllcnNNb2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzM3
OTRERTE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmgKaW5kZXggNzZkMTRkYWZhYWFkMTIyOWJlZTAzZWI3MTI5NjJiMGFiNjNh
MDViNS4uOTYzOTBhMDgwZTYxMTQ5ZGMxNmNiODZlYjlhOTA4ZWFiMGUxOTZiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmgKQEAgLTY1LDcgKzY1LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXb3JrZXJNb2R1bGVT
Y3JpcHRMb2FkZXIoTW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50JiwgRGVmZXJyZWRQcm9taXNlJiwg
V29ya2VyU2NyaXB0RmV0Y2hlciYsIFJlZlB0cjxNb2R1bGVGZXRjaFBhcmFtZXRlcnM+JiYpOwog
Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIGZpbmFsIHsgfQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsIHsgfQog
ICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIHZvaWQgbm90aWZ5Q2xpZW50
RmluaXNoZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDg1NTM0MTIwNWYzYTdiOTQy
NmZhNzg4YzNiNWExNzlhODE2YWFlZGYuLjZmMWU5OWVhYjRkZWVmMTEyMWYwM2I5M2Y2ZWYxMmYy
NjgxM2U3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMzgzMywxMiArMzgzMywxMiBA
QCB2b2lkIERvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdihjb25zdCBTdHJpbmcmIGVxdWl2
LCBjb25zdCBTdHJpbmcmIGNvbnRlbnQsCiAgICAgY2FzZSBIVFRQSGVhZGVyTmFtZTo6WEZyYW1l
T3B0aW9uczoKICAgICAgICAgaWYgKGZyYW1lKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlciYg
ZnJhbWVMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25n
IHJlcXVlc3RJZGVudGlmaWVyID0gMDsKKyAgICAgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciByZXF1ZXN0SWRlbnRpZmllcjsKICAgICAgICAgICAgIGlmIChmcmFtZUxvYWRlci5hY3Rp
dmVEb2N1bWVudExvYWRlcigpICYmIGZyYW1lTG9hZGVyLmFjdGl2ZURvY3VtZW50TG9hZGVyKCkt
Pm1haW5SZXNvdXJjZUxvYWRlcigpKQogICAgICAgICAgICAgICAgIHJlcXVlc3RJZGVudGlmaWVy
ID0gZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+bWFpblJlc291cmNlTG9hZGVy
KCktPmlkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSAiVGhlIFgt
RnJhbWUtT3B0aW9uICciICsgY29udGVudCArICInIHN1cHBsaWVkIGluIGEgPG1ldGE+IGVsZW1l
bnQgd2FzIGlnbm9yZWQuIFgtRnJhbWUtT3B0aW9ucyBtYXkgb25seSBiZSBwcm92aWRlZCBieSBh
biBIVFRQIGhlYWRlciBzZW50IHdpdGggdGhlIGRvY3VtZW50LiI7Ci0gICAgICAgICAgICBhZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWVzc2FnZSwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICAgICAgYWRkQ29uc29sZU1l
c3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3Nh
Z2UsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcAppbmRl
eCA0NDNjNTQ5YzE1YTU3MWViM2I1ZTQ4NjRhYjc5NTNiMzQzMjg2NWEyLi5kY2M2MTNiODVkOGIx
ZWZjNGM4OGFlNzBhNThkMjYxNWM3ZWI5NDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9m
aWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVJlYWRlckxvYWRlci5jcHAKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEZpbGVSZWFkZXJM
b2FkZXI6OmNsZWFudXAoKQogICAgIH0KIH0KIAotdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCit2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpICE9IDIwMCkgewogICAgICAgICBmYWls
ZWQoaHR0cFN0YXR1c0NvZGVUb0Vycm9yQ29kZShyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKSk7
CkBAIC0yMTUsNyArMjE1LDcgQEAgdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlRGF0
YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKICAgICAgICAgbV9jbGllbnQt
PmRpZFJlY2VpdmVEYXRhKCk7CiB9CiAKLXZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkRmluaXNo
TG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBpZiAobV92YXJpYWJsZUxl
bmd0aCAmJiBtX3RvdGFsQnl0ZXMgPiBtX2J5dGVzTG9hZGVkKSB7CiAgICAgICAgIG1fcmF3RGF0
YSA9IG1fcmF3RGF0YS0+c2xpY2UoMCwgbV9ieXRlc0xvYWRlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Zp
bGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCmluZGV4IDljYmI5YjYxMTFhNzE2MjcxM2RkNWRjY2U3
ZjA1M2VlYzA4NTY4ZGQuLjk2ODQyNzkwM2JkZTk1MDc1NWU3OGI3ZWY1MDZjMWM4M2NmOGJhZjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCkBAIC02OSw5ICs2
OSw5IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNhbmNlbCgpOwogCiAgICAg
Ly8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVp
bnQ4X3QqLCBpbnQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25l
ZCBsb25nKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwogCiAgICAgU3RyaW5nIHN0cmluZ1Jlc3VsdCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApp
bmRleCBmZTIwNmFlYTM1ZTY3OTMzZTIwMTlmYzVhZjFlOTNhZmRhMGUzODM3Li5mOTFkNTUxYjNm
MTAzNjAwNTc5NTU3NjQ4MmMyNjg4NDBmODhhNjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtNTc1LDEzICs1
NzUsMTMgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0ZWRNZWRp
YUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHIKICAgICAgICAgcGFnZUFnZW50LT5hcHBs
eUVtdWxhdGVkTWVkaWEobWVkaWEpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5n
QWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQordm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBy
ZWRpcmVjdFJlc3BvbnNlLCBjYWNoZWRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGVJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2Fk
VHlwZSkKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5
cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3RPZlR5cGUoaWRlbnRpZmll
ciwgbG9hZGVyLCByZXF1ZXN0LCBsb2FkVHlwZSk7CkBAIC01OTYsNyArNTk2LDcgQEAgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZUlt
cGwoSW5zdHJ1bWVudGluZ0EKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUobG9hZGVyLCAqY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKExJ
S0VMWSghaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JFbnZpcm9ubWVudCgpLmRldmVsb3Bl
ckV4dHJhc0VuYWJsZWQoKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNywyNSArNjA3LDI1IEBA
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50CiAgICAgICAgIGNvbnNvbGVBZ2VudC0+ZGlkUmVjZWl2
ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsgLy8gVGhpcyBzaG91bGQgY29tZSBBRlRF
UiByZXNvdXJjZSBub3RpZmljYXRpb24sIGZyb250LWVuZCByZWxpZXMgb24gdGhpcy4KIH0KIAot
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVy
UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVj
ZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5z
dHJ1bWVudGluZ0FnZW50cywgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAg
IGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3
b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRSZWNlaXZlVGhyZWFkYWJsZUxv
YWRlclJlc3BvbnNlKGlkZW50aWZpZXIsIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcik7CiB9CiAK
LXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5n
dGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50
ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5l
dHdvcmtBZ2VudC0+ZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwg
ZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0Fn
ZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZp
bmlzaExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3Vy
Y2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xv
YWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChM
SUtFTFkoIWluc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yRW52aXJvbm1lbnQoKS5kZXZlbG9w
ZXJFeHRyYXNFbmFibGVkKCkpKQogICAgICAgICByZXR1cm47CkBAIC02NDgsNyArNjQ4LDcgQEAg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJgogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZExvYWRYSFJT
eW5jaHJvbm91c2x5KCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3Jp
cHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK3Zv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT5zZXRJbml0aWFsU2NyaXB0Q29udGVudChpZGVudGlm
aWVyLCBzb3VyY2VTdHJpbmcpOwpAQCAtNjYwLDcgKzY2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1BJbXBsKEluc3RydW1lbnRp
bmdBZ2VuCiAgICAgICAgIHdlYkRlYnVnZ2VyQWdlbnQtPnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRC
eUNTUChkaXJlY3RpdmVUZXh0KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1
bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdB
Z2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZFJl
Y2VpdmVTY3JpcHRSZXNwb25zZShpZGVudGlmaWVyKTsKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bQogICAgICAgICBuZXR3b3JrQWdlbnQtPmludGVyY2VwdFJlcXVl
c3QobG9hZGVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYg
aGFuZGxlcikKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0Fn
ZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+aW50ZXJj
ZXB0UmVzcG9uc2UocmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5o
CmluZGV4IDMxZjA1YzUwZjgwNWRiNTc5YjhjOTMwYmM5MGI5ZjYxYTkyZmFjNjguLmM2NDZlMzEz
MWM5MWFhOTI0MjYxMGJhY2M4NmY1YmMzOTA4MmY4MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTQ1LDYgKzQ1LDcg
QEAKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25QdWJsaWMuaCIKICNpbmNsdWRl
ICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUg
IldlYkFuaW1hdGlvbi5oIgogI2luY2x1ZGUgIldvcmtlckluc3BlY3RvclByb3h5LmgiCkBAIC0x
ODQsMzQgKzE4NSwzNCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRP
dmVycmlkZShGcmFtZSYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0ZWRN
ZWRpYShGcmFtZSYsIFN0cmluZyYpOwogCi0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0
KEZyYW1lKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KEZy
YW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlKFBhZ2UmLCBEb2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlKik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoRnJhbWUmLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVM
b2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhKEZyYW1lKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwg
aW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkRmFpbExvYWRpbmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgc3RhdGljIHZvaWQgd2lsbFNl
bmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7Ci0gICAgc3Rh
dGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVz
b3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRl
clJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIFJlc291cmNlTG9hZGVySWRlbnRp
Zmllcik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGEoRnJhbWUqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoRnJh
bWUqLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRG
YWlsTG9hZGluZyhGcmFtZSosIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJl
cXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFJlc291cmNlUmVxdWVzdCYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJj
ZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiAgICAgLy8gU29t
ZSBuZXR3b3JrIHJlcXVlc3RzIGRvIG5vdCBnbyB0aHJvdWdoIHRoZSBub3JtYWwgbmV0d29yayBs
b2FkaW5nIHBhdGguCiAgICAgLy8gVGhlc2UgbmV0d29yayByZXF1ZXN0cyBoYXZlIHRvIGlzc3Vl
IHRoZWlyIG93biB3aWxsU2VuZFJlcXVlc3QgLyBkaWRSZWNlaXZlUmVzcG9uc2UgLyBkaWRGaW5p
c2hMb2FkaW5nIC8gZGlkRmFpbExvYWRpbmcKICAgICAvLyBpbnN0cnVtZW50YXRpb24gY2FsbHMu
IFNvbWUgb2YgdGhlc2UgbG9hZHMgYXJlIGZvciByZXNvdXJjZXMgdGhhdCBsYWNrIGEgQ2FjaGVk
UmVzb3VyY2U6OlR5cGUuCiAgICAgZW51bSBjbGFzcyBMb2FkVHlwZSB7IFBpbmcsIEJlYWNvbiB9
OwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2Fk
VHlwZSk7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IExvYWRUeXBlKTsKIAotICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgdm9pZCBjb250aW51ZVdpdGhQ
b2xpY3lEb3dubG9hZChGcmFtZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgY29udGlu
dWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCBj
b250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZChGcmFtZSYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
c3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5RG93bmxvYWQoRnJhbWUmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
OworICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlV2l0aFBvbGljeUlnbm9yZShGcmFtZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CiAgICAgc3RhdGljIHZvaWQgd2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkWEhSU3luY2hyb25vdXNs
eShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0
ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVk
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgc291cmNlU3RyaW5nKTsKICAgICBzdGF0aWMgdm9pZCBzY3JpcHRFeGVjdXRpb25C
bG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgZGlyZWN0
aXZlVGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHN0YXRp
YyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgdm9pZCBkb21Db250ZW50TG9h
ZGVkRXZlbnRGaXJlZChGcmFtZSYpOwogICAgIHN0YXRpYyB2b2lkIGxvYWRFdmVudEZpcmVkKEZy
YW1lKik7CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnQoRnJhbWUmKTsK
QEAgLTIzMSw3ICsyMzIsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJj
ZXB0UmVxdWVzdChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0
YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3Vy
Y2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAg
ICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7
CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+
JiYpOwogCiAgICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShQYWdlJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKICAgICBzdGF0aWMgdm9pZCBh
ZGRNZXNzYWdlVG9Db25zb2xlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgc3RkOjp1bmlx
dWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKQEAgLTQwMywyMCArNDA0LDIwIEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRPdmVycmlkZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0
ZWRNZWRpYUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogCi0gICAgc3RhdGlj
IHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
Kik7Ci0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJl
c291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKLSAgICBzdGF0aWMgdm9pZCBtYXJrUmVzb3VyY2VB
c0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdl
bnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKKyAgICBzdGF0aWMgdm9p
ZCBtYXJrUmVzb3VyY2VBc0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRG9jdW1lbnRMb2FkZXIqLCBDYWNo
ZWRSZXNvdXJjZSopOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOwot
ICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90
KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0
aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmdJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJl
Y2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxl
TG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXImLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlcios
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGlj
IHZvaWQgZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwog
ICAgIHN0YXRpYyB2b2lkIHdpbGxMb2FkWEhSU3luY2hyb25vdXNseUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWRJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKTsKKyAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZEltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHN0YXRpYyB2b2lkIHNjcmlwdEV4ZWN1dGlvbkJsb2Nr
ZWRCeUNTUEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFN0cmluZyYgZGlyZWN0aXZl
VGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHN0YXRpYyB2b2lkIGRvbUNvbnRlbnRMb2Fk
ZWRFdmVudEZpcmVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUmKTsKICAgICBzdGF0
aWMgdm9pZCBsb2FkRXZlbnRGaXJlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIEZyYW1lKik7
CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnRJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMmLCBGcmFtZSYpOwpAQCAtNDM2LDcgKzQzNyw3IEBAIHByaXZhdGU6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2Vw
dFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmLCBSZXNvdXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNw
b25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiAKICAgICBzdGF0aWMg
dm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKIApAQCAtMTAzMywyMCArMTAz
NCwyMCBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0
ZWRNZWRpYShGcmFtZSYgZnJhbWUsIFN0cmluZyYgbQogICAgICAgICBhcHBseUVtdWxhdGVkTWVk
aWFJbXBsKCphZ2VudHMsIG1lZGlhKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZf
Tk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRp
bmdBZ2VudHMoZnJhbWUpKQogICAgICAgICB3aWxsU2VuZFJlcXVlc3RJbXBsKCphZ2VudHMsIGlk
ZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgY2FjaGVkUmVzb3Vy
Y2UpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5k
UmVxdWVzdChXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQoraW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0
R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIEZBU1RfUkVUVVJOX0lGX05P
X0ZST05URU5EUyh2b2lkKCkpOwogICAgIHdpbGxTZW5kUmVxdWVzdEltcGwoaW5zdHJ1bWVudGlu
Z0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIHJlcXVlc3QsIFJlc291
cmNlUmVzcG9uc2UgeyB9LCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqIGZyYW1lLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSogZnJhbWUsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIEZBU1RfUkVU
VVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0
cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKQEAgLTEwNTksNzYgKzEwNjAsNzYgQEAgaW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2Fj
aGUoUGFnZSYgcGFnZSwKICAgICBkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGVJbXBsKGlu
c3RydW1lbnRpbmdBZ2VudHMocGFnZSksIGxvYWRlciwgcmVzb3VyY2UpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
KEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIq
IHJlc291cmNlTG9hZGVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewog
ICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAg
ICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxv
YWRlciwgcmVzcG9uc2UsIHJlc291cmNlTG9hZGVyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldv
cmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGRpZFJlY2Vp
dmVSZXNvdXJjZVJlc3BvbnNlSW1wbChpbnN0cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwg
aWRlbnRpZmllciwgbnVsbHB0ciwgcmVzcG9uc2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVz
cG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZv
aWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmRvY3VtZW50KCkpKQogICAgICAgICBkaWRSZWNlaXZlVGhyZWFk
YWJsZUxvYWRlclJlc3BvbnNlSW1wbCgqYWdlbnRzLCBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IGlkZW50aWZpZXIpOwogfQogICAgIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRSZWNlaXZlRGF0YShGcmFtZSogZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxl
bmd0aCkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURh
dGEoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
IHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2Vp
dmVEYXRhSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCBkYXRhLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0
YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0
aCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBkaWRS
ZWNlaXZlRGF0YUltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZp
ZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGRhdGFMZW5ndGgpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3Vy
Y2VMb2FkZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlz
aExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBG
QVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdJ
bXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNv
dXJjZUxvYWRlcik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRp
ZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRF
TkRTKHZvaWQoKSk7CiAgICAgZGlkRmluaXNoTG9hZGluZ0ltcGwoaW5zdHJ1bWVudGluZ0FnZW50
cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIG5ldHdvcmtMb2FkTWV0cmljcywg
bnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
RmFpbExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQoraW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhGcmFtZSogZnJhbWUs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZhaWxMb2FkaW5nSW1w
bCgqYWdlbnRzLCBpZGVudGlmaWVyLCBsb2FkZXIsIGVycm9yKTsKIH0KIAotaW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29w
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIGRpZEZhaWxMb2FkaW5nSW1wbChpbnN0cnVtZW50aW5nQWdlbnRz
KGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgZXJyb3IpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlvbnNE
ZW5pZWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgLy8gVHJlYXQgdGhlIHNhbWUgYXMgZGlkUmVjZWl2ZVJlc3BvbnNlLgogICAgIGlm
IChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlk
UmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsICZsb2FkZXIs
IHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYgZnJhbWUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmNvbnRpbnVlV2l0aFBvbGljeURvd25sb2FkKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJl
Y2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50
cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRz
LCBpZGVudGlmaWVyLCAmbG9hZGVyLCByZXNwb25zZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZy
YW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiBmcmFt
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0
IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0g
aW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCkBAIC0xMTQ5LDcgKzExNTAsNyBAQCBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5KFNj
cmlwdEV4ZWN1dGlvbkNvbgogICAgICAgICBkaWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoKmFn
ZW50cyk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0
SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgY29udGV4dCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2
b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGNvbnRl
eHQpKQpAQCAtMTE2Myw3ICsxMTY0LDcgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW8KICAgICAg
ICAgc2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5Q1NQSW1wbCgqYWdlbnRzLCBkaXJlY3RpdmVUZXh0
KTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZl
U2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5f
SUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1l
bnRpbmdBZ2VudHMoY29udGV4dCkpCkBAIC0xMjg0LDcgKzEyODUsNyBAQCBpbmxpbmUgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIm
IGxvYWRlciwgRgogICAgICAgICBpbnRlcmNlcHRSZXF1ZXN0SW1wbCgqYWdlbnRzLCBsb2FkZXIs
IFdURk1vdmUoaGFuZGxlcikpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmIGhhbmRsZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Omlu
dGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBBU1NFUlQoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpzaG91bGRJbnRlcmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCmluZGV4IDczMTYzMjc4Y2NhMzk5OGY0ZjAxMjJkNWNiMDU3N2RhNDZhNTA3NDcuLjYxZTRi
YzNiYTAxOWVlMjVlNWM4YmMyMjFkZmY2MDc3ZWRkYjg2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0
OjppbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VMb2FkZXImIGxvCiAgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXF1ZXN0KGxvYWRlciwgV1RGTW92ZShoYW5k
bGVyKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNl
cHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYm
IGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4pPiYmIGhhbmRsZXIpCiB7CiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRl
cmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxl
cikpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcklu
c3RydW1lbnRhdGlvbldlYktpdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbldlYktpdC5oCmluZGV4IGJmZmM4NzA4MDY0NzY1MzgxMTVlODBmMjBk
ZGNhNGU4MjIyZTYyOWIuLmY3NjExNGNlOThmNDJhN2ZmOTA2YTQ4ZDA0MjBiOTYzMDVkMzY5MTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uV2ViS2l0LmgKQEAgLTQzLDEzICs0MywxMyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdChjb25zdCBGcmFtZSosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGlu
dGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25z
dCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0
cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2Uo
Y29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogCiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIHNo
b3VsZEludGVyY2VwdFJlcXVlc3RJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlSW50ZXJu
YWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVxdWVzdEludGVybmFsKFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9p
ZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4mJik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiB9
OwogCiBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QpCkBAIC03Niw3ICs3Niw3IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hCiAgICAg
aW50ZXJjZXB0UmVxdWVzdEludGVybmFsKGxvYWRlciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAK
LWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVz
cG9uc2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK2lu
bGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9u
c2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5k
bGVyKQogewogICAgIEFTU0VSVChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3Vs
ZEludGVyY2VwdFJlc3BvbnNlKGZyYW1lLCByZXNwb25zZSkpOwogICAgIGludGVyY2VwdFJlc3Bv
bnNlSW50ZXJuYWwoKmZyYW1lLCByZXNwb25zZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5kbGVy
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ck5ldHdvcmtBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3Rvck5ldHdvcmtBZ2VudC5jcHAKaW5kZXggNzk0ODg1MmRkOWE2YmM0MmI0MDExNjk0MWNlMDM0
NmMzMmUxNmYyZC4uMzM3NTdiOWUzY2U3ZTMwNGNiNzFmYjY0ZjMzZTJlZWYwNmFhYjNjYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3Jr
QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9y
TmV0d29ya0FnZW50LmNwcApAQCAtMTA4LDcgKzEwOCw3IEBAIHB1YmxpYzoKIAogICAgIH5JbnNw
ZWN0b3JUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkg
b3ZlcnJpZGUKICAgICB7CiAgICAgICAgIG1fbWltZVR5cGUgPSByZXNwb25zZS5taW1lVHlwZSgp
OwogICAgICAgICBtX3N0YXR1c0NvZGUgPSByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpOwpAQCAt
MTM1LDcgKzEzNSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9yZXNwb25zZVRleHQuYXBwZW5kKG1f
ZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGRhdGFMZW5ndGgpKTsKICAgICB9CiAKLSAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZQogICAgIHsKICAgICAg
ICAgaWYgKG1fZGVjb2RlcikKICAgICAgICAgICAgIG1fcmVzcG9uc2VUZXh0LmFwcGVuZChtX2Rl
Y29kZXItPmZsdXNoKCkpOwpAQCAtNDE2LDcgKzQxNiw3IEBAIGRvdWJsZSBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OnRpbWVzdGFtcCgpCiAgICAgcmV0dXJuIG1fZW52aXJvbm1lbnQuZXhlY3V0aW9u
U3RvcHdhdGNoKCkuZWxhcHNlZFRpbWUoKS5zZWNvbmRzKCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVz
b3VyY2VUeXBlIHR5cGUpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHR5cGUp
CiB7CiAgICAgaWYgKHJlcXVlc3QuaGlkZGVuRnJvbUluc3BlY3RvcigpKSB7CiAgICAgICAgIG1f
aGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLmFkZChpZGVudGlmaWVyKTsKQEAgLTQyNiw3ICs0MjYs
NyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMbwogICAgIGRvdWJsZSBzZW5kVGltZXN0YW1wID0g
dGltZXN0YW1wKCk7CiAgICAgV2FsbFRpbWUgd2FsbHRpbWUgPSBXYWxsVGltZTo6bm93KCk7CiAK
LSAgICBhdXRvIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50
aWZpZXIpOworICAgIGF1dG8gcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0
SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBhdXRvIGZyYW1lSWQgPSBmcmFtZUlkZW50
aWZpZXIobG9hZGVyKTsKICAgICBhdXRvIGxvYWRlcklkID0gbG9hZGVySWRlbnRpZmllcihsb2Fk
ZXIpOwogICAgIFN0cmluZyB0YXJnZXRJZCA9IHJlcXVlc3QuaW5pdGlhdG9ySWRlbnRpZmllcigp
OwpAQCAtNDg2LDI0ICs0ODYsMjQgQEAgc3RhdGljIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3Vy
Y2VUeXBlIHJlc291cmNlVHlwZUZvckxvYWRUeXBlKEluc3BlY3Rvckluc3RydW0KICAgICByZXR1
cm4gSW5zcGVjdG9yUGFnZUFnZW50OjpPdGhlclJlc291cmNlOwogfQogCi12b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSog
Y2FjaGVkUmVzb3VyY2UpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkK
IHsKICAgICBpZiAoIWNhY2hlZFJlc291cmNlICYmIGxvYWRlcikKICAgICAgICAgY2FjaGVkUmVz
b3VyY2UgPSBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNhY2hlZFJlc291cmNlKGxvYWRlci0+ZnJhbWUo
KSwgcmVxdWVzdC51cmwoKSk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRl
ciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgcmVzb3VyY2VUeXBlRm9yQ2FjaGVkUmVzb3Vy
Y2UoY2FjaGVkUmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6Ondp
bGxTZW5kUmVxdWVzdE9mVHlwZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3
aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKIHsKICAgICB3aWxsU2VuZFJl
cXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIHJl
c291cmNlVHlwZUZvckxvYWRUeXBlKGxvYWRUeXBlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0
d29ya0FnZW50OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdl
bnQ6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAobV9oaWRkZW5S
ZXF1ZXN0SWRlbnRpZmllcnMuY29udGFpbnMoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIHN0ZDo6b3B0aW9uYWw8UmVz
b3VyY2VSZXNwb25zZT4gcmVhbFJlc3BvbnNlOwogICAgIGlmIChwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKHJlc3BvbnNl
KSkgewpAQCAtNTc1LDEyICs1NzUsMTIgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW4KICAgICAg
ICAgZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgbnVsbHB0ciwgY2FjaGVkUmVzb3VyY2UtPmVu
Y29kZWRTaXplKCksIDApOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVj
ZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5jb250YWlucyhp
ZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1
ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0
KCkpOwogCiAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgTmV0d29ya1Jlc291cmNlc0RhdGE6OlJl
c291cmNlRGF0YSBjb25zdCogcmVzb3VyY2VEYXRhID0gbV9yZXNvdXJjZXNEYXRhLT5tYXliZUFk
ZFJlc291cmNlRGF0YShyZXF1ZXN0SWQsIGRhdGEsIGRhdGFMZW5ndGgpOwpAQCAtNTk1LDcgKzU5
NSw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlRGF0YSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4CiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXIt
PmRhdGFSZWNlaXZlZChyZXF1ZXN0SWQsIHRpbWVzdGFtcCgpLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hM
b2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9h
ZGVyKikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRp
ZmllcikpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNiw3ICs2MDYsNyBAQCB2b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TAogICAgIGVsc2UKICAgICAgICAgZWxhcHNlZEZpbmlzaFRpbWUgPSB0aW1lc3Rh
bXAoKTsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVl
c3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0
b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBpZiAobG9hZGVyICYm
IG1fcmVzb3VyY2VzRGF0YS0+cmVzb3VyY2VUeXBlKHJlcXVlc3RJZCkgPT0gSW5zcGVjdG9yUGFn
ZUFnZW50OjpEb2N1bWVudFJlc291cmNlKQogICAgICAgICBtX3Jlc291cmNlc0RhdGEtPmFkZFJl
c291cmNlU2hhcmVkQnVmZmVyKHJlcXVlc3RJZCwgbG9hZGVyLT5mcmFtZUxvYWRlcigpLT5kb2N1
bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VEYXRhKCksIGxvYWRlci0+ZnJhbWUoKS0+ZG9jdW1l
bnQoKS0+ZW5jb2RpbmcoKSk7CiAKQEAgLTYyOCwxMiArNjI4LDEyIEBAIHZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPmxvYWRpbmdGaW5pc2hlZChyZXF1
ZXN0SWQsIGVsYXBzZWRGaW5pc2hUaW1lLCBzb3VyY2VNYXBwaW5nVVJMLCBXVEZNb3ZlKG1ldHJp
Y3MpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChtX2hpZGRl
blJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIGlmIChsb2FkZXIgJiYgbV9y
ZXNvdXJjZXNEYXRhLT5yZXNvdXJjZVR5cGUocmVxdWVzdElkKSA9PSBJbnNwZWN0b3JQYWdlQWdl
bnQ6OkRvY3VtZW50UmVzb3VyY2UpIHsKICAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5m
cmFtZSgpOwpAQCAtNjUzLDggKzY1Myw4IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlCiAgICAg
aWYgKCFsb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciA9IGxvYWRlci0+ZnJhbWUoKS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlk
ZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllcik7CisgICAgYXV0byBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlm
aWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIFByb3Rv
Y29sOjpOZXR3b3JrOjpMb2FkZXJJZCBsb2FkZXJJZCA9IGxvYWRlcklkZW50aWZpZXIobG9hZGVy
KTsKICAgICBQcm90b2NvbDo6TmV0d29yazo6RnJhbWVJZCBmcmFtZUlkID0gZnJhbWVJZGVudGlm
aWVyKGxvYWRlcik7CiAKQEAgLTY2OSwyMyArNjY5LDIzIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29y
a0FnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPnJlcXVlc3RTZXJ2ZWRGcm9tTWVtb3J5Q2Fj
aGUocmVxdWVzdElkLCBmcmFtZUlkLCBsb2FkZXJJZCwgbG9hZGVyLT51cmwoKS5zdHJpbmcoKSwg
dGltZXN0YW1wKCksIFdURk1vdmUoaW5pdGlhdG9yT2JqZWN0KSwgYnVpbGRPYmplY3RGb3JDYWNo
ZWRSZXNvdXJjZSgmcmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OnNldEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VTdHJpbmcpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6c2V0SW5p
dGlhbFNjcmlwdENvbnRlbnQoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNv
bnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewotICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVz
b3VyY2VDb250ZW50KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBz
b3VyY2VTdHJpbmcpOworICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VDb250ZW50KElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIHNvdXJj
ZVN0cmluZyk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlU2Ny
aXB0UmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKLSAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFn
ZW50OjpTY3JpcHRSZXNvdXJjZSk7CisgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5
cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwg
SW5zcGVjdG9yUGFnZUFnZW50OjpTY3JpcHRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIpCiB7CiAg
ICAgU3RyaW5nIGluaXRpYXRvciA9IGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5vcHRpb25zKCku
aW5pdGlhdG9yOwogICAgIGlmIChpbml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycygpLmZldGNoKQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlw
ZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFn
ZUFnZW50OjpGZXRjaFJlc291cmNlKTsKKyAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNv
dXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2
NCgpKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpGZXRjaFJlc291cmNlKTsKICAgICBlbHNlIGlmIChp
bml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpLnhtbGh0dHByZXF1
ZXN0KQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVy
c0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpYSFJS
ZXNvdXJjZSk7CisgICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIEluc3BlY3Rv
clBhZ2VBZ2VudDo6WEhSUmVzb3VyY2UpOwogfQogCiB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2Vu
dDo6d2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KCkKQEAgLTExMjksNyArMTEyOSw3IEBAIHZvaWQg
SW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBs
b2FkZXIsIEZ1bmN0aW9uPHZvCiAgICAgQVNTRVJUKG1fZW5hYmxlZCk7CiAgICAgQVNTRVJUKG1f
aW50ZXJjZXB0aW9uRW5hYmxlZCk7CiAKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmll
cnNGYWN0b3J5OjpyZXF1ZXN0SWQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgU3RyaW5nIHJl
cXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGxvYWRlci5pZGVudGlmaWVy
KCkudG9VSW50NjQoKSk7CiAgICAgaWYgKG1fcGVuZGluZ0ludGVyY2VwdFJlcXVlc3RzLmNvbnRh
aW5zKHJlcXVlc3RJZCkpIHsKICAgICAgICAgaGFuZGxlcihsb2FkZXIucmVxdWVzdCgpKTsKICAg
ICAgICAgcmV0dXJuOwpAQCAtMTEzOCwxMiArMTEzOCwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdv
cmtBZ2VudDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBGdW5jdGlv
bjx2bwogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5yZXF1ZXN0SW50ZXJjZXB0ZWQocmVxdWVz
dElkLCBidWlsZE9iamVjdEZvclJlc291cmNlUmVxdWVzdChsb2FkZXIucmVxdWVzdCgpKSk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNl
cHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAg
IEFTU0VSVChtX2VuYWJsZWQpOwogICAgIEFTU0VSVChtX2ludGVyY2VwdGlvbkVuYWJsZWQpOwog
Ci0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlk
ZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJl
cXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIGlmIChtX3BlbmRpbmdJbnRlcmNl
cHRSZXNwb25zZXMuY29udGFpbnMocmVxdWVzdElkKSkgewogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICAgICAgaGFuZGxlcihyZXNwb25zZSwgbnVsbHB0cik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQu
aAppbmRleCA3Y2RjNTg2NWU1OGU5YTlhMzBlYTI1MjAyNjkyZDRiOWFhNzdiMmQ2Li40YzI1YjNi
MmFjZjA5MDJlOGJiOTY3NjRkMGJmOWJhZDM3ODliMThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKQEAgLTk4
LDE3ICs5OCwxNyBAQCBwdWJsaWM6CiAgICAgLy8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uCiAg
ICAgdm9pZCB3aWxsUmVjYWxjdWxhdGVTdHlsZSgpOwogICAgIHZvaWQgZGlkUmVjYWxjdWxhdGVT
dHlsZSgpOwotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQg
d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRU
eXBlKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9h
ZGVyKik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5n
dGgpOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2Fk
ZXIqKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCB3aWxsU2Vu
ZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6TG9hZFR5cGUpOworICAgIHZvaWQgZGlkUmVjZWl2
ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGRpZFJlY2Vp
dmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKICAgICB2b2lkIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShE
b2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlVGhy
ZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJik7CisgICAgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJl
c3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
Jik7CiAgICAgdm9pZCB3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHkoKTsKICAgICB2b2lkIGRpZExv
YWRYSFJTeW5jaHJvbm91c2x5KCk7Ci0gICAgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2Uo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHZvaWQgd2lsbERlc3Ryb3lDYWNo
ZWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZSYpOwogICAgIHZvaWQgZGlkQ3JlYXRlV2ViU29ja2V0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgVVJMJiByZXF1ZXN0VVJMKTsKICAgICB2
b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwpAQCAtMTE4LDEyICsxMTgsMTIgQEAgcHVi
bGljOgogICAgIHZvaWQgZGlkU2VuZFdlYlNvY2tldEZyYW1lKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViU29ja2V0RnJhbWUmKTsKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJTb2Nr
ZXRGcmFtZUVycm9yKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCBtYWluRnJhbWVOYXZpZ2F0ZWQoRG9jdW1lbnRMb2FkZXImKTsKLSAgICB2b2lkIHNl
dEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHZvaWQgc2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CiAgICAg
dm9pZCBkaWRTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbihEb2N1bWVudCYpOwogICAgIGJvb2wg
d2lsbEludGVyY2VwdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBib29sIHNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgYm9vbCBzaG91bGRJ
bnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBpbnRl
cmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmKTsKICAgICB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5j
dGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKIAogICAgIHZvaWQgc2VhcmNo
T3RoZXJSZXF1ZXN0cyhjb25zdCBKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uJiwgUmVmPEpT
T046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90b2NvbDo6UGFnZTo6U2VhcmNoUmVzdWx0Pj4mKTsK
QEAgLTE0MCw3ICsxNDAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBib29sIHNob3VsZEZv
cmNlQnVmZmVyaW5nTmV0d29ya1Jlc291cmNlRGF0YSgpIGNvbnN0ID0gMDsKIAogcHJpdmF0ZToK
LSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFnZUFnZW50OjpSZXNvdXJjZVR5cGUpOworICAgIHZv
aWQgd2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSk7CiAKICAgICBib29sIHNo
b3VsZEludGVyY2VwdChVUkwsIEluc3BlY3Rvcjo6UHJvdG9jb2w6Ok5ldHdvcms6Ok5ldHdvcmtT
dGFnZSk7CiAgICAgdm9pZCBjb250aW51ZVBlbmRpbmdSZXF1ZXN0cygpOwpAQCAtMjI2LDcgKzIy
Niw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSZXNvdXJjZXNEYXRh
PiBtX3Jlc291cmNlc0RhdGE7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBtX2V4dHJh
UmVxdWVzdEhlYWRlcnM7Ci0gICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPiBtX2hpZGRlblJlcXVl
c3RJZGVudGlmaWVyczsKKyAgICBIYXNoU2V0PFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9o
aWRkZW5SZXF1ZXN0SWRlbnRpZmllcnM7CiAKICAgICBzdHJ1Y3QgSW50ZXJjZXB0IHsKICAgICAg
ICAgU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2Vu
dHMvV2ViQ29uc29sZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
V2ViQ29uc29sZUFnZW50LmNwcAppbmRleCA0OGI5YTcxODUzZjQ0OTRmYmY0N2UzODM4YTg2MzY0
NzllNjdkZWIzLi5iZGZmODQzNGRiZWY4YzU0ODViMTUwNmVkMjA4YTAxYzllY2FkMjI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQu
Y3BwCkBAIC02NSwyMiArNjUsMjIgQEAgdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmZyYW1lV2luZG93
RGlzY2FyZGVkKERPTVdpbmRvdyogd2luZG93KQogICAgIHN0YXRpY19jYXN0PFdlYkluamVjdGVk
U2NyaXB0TWFuYWdlciY+KG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKS5kaXNjYXJkSW5qZWN0ZWRT
Y3JpcHRzRm9yKHdpbmRvdyk7CiB9CiAKLXZvaWQgV2ViQ29uc29sZUFnZW50OjpkaWRSZWNlaXZl
UmVzcG9uc2UodW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXND
b2RlKCkgPj0gNDAwKSB7CiAgICAgICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxl
ZCB0byBsb2FkIHJlc291cmNlOiB0aGUgc2VydmVyIHJlc3BvbmRlZCB3aXRoIGEgc3RhdHVzIG9m
ICIsIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCksICIgKCIsIFNjcmlwdEFyZ3VtZW50czo6dHJ1
bmNhdGVTdHJpbmdGb3JDb25zb2xlTWVzc2FnZShyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKSwg
JyknKTsKLSAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNz
YWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0
ciwgcmVxdWVzdElkZW50aWZpZXIpKTsKKyAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtl
VW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlw
ZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJp
bmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAg
IH0KIH0KIAotdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBX
ZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBy
ZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8g
UmVwb3J0IGZhaWx1cmVzIG9ubHkuCiAgICAgaWYgKGVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxlZCB0
byBsb2FkIHJlc291cmNlIiwgZXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24oKS5pc0VtcHR5KCkg
PyAiIiA6ICI6ICIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uKCkpOwotICAgIGFkZE1lc3Nh
Z2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0
d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgZXJy
b3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmll
cikpOworICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4o
TWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpF
cnJvciwgbWVzc2FnZSwgZXJyb3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRy
LCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29u
c29sZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVB
Z2VudC5oCmluZGV4IDBiOGYyMGVhYzM0M2I2NjgxN2FjOWYwZjBjNmM4Y2IyMGM5YmFjN2IuLjkw
YzcwOGU5YjgwMTcxMmI2NTk0MDdhZTBjMWQ2Njg2OGFlYTk0YTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuaApAQCAtMjYsNiArMjYs
NyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCIK
KyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9JbnNwZWN0b3JDb25zb2xlQWdlbnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtNDMsOCArNDQsOCBAQCBwdWJsaWM6CiAKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24KICAgICB2b2lkIGZyYW1lV2luZG93RGlzY2FyZGVkKERPTVdpbmRvdyopOwotICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRD
aGVja2VyLmNwcAppbmRleCAwYWRjYTcwY2ZhMTYyOThhN2E2YzliM2YyODZmYWEzZGIyY2RiZTk1
Li44YjMxZTE3MzkyYTk3YmI5NmQzNDk3YjkyOGVkZGEyZTY3Y2NkNmQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcApA
QCAtNTgsNyArNTgsNyBAQCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6On5Dcm9zc09yaWdp
blByZWZsaWdodENoZWNrZXIoKQogICAgICAgICBtX3Jlc291cmNlLT5yZW1vdmVDbGllbnQoKnRo
aXMpOwogfQogCi12b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6dmFsaWRhdGVQcmVm
bGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGxvYWRlciwgUmVzb3VyY2VS
ZXF1ZXN0JiYgcmVxdWVzdCwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2
YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVy
LCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byog
ZnJhbWUgPSBsb2FkZXIuZG9jdW1lbnQoKS5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpIHsKQEAg
LTE0MSw3ICsxNDEsNyBAQCB2b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6ZG9QcmVm
bGlnaHQoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBsb2FkZXIsCiAgICAgUmVzb3VyY2VSZXNw
b25zZSByZXNwb25zZTsKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogCi0gICAgdW5z
aWduZWQgaWRlbnRpZmllciA9IGxvYWRlci5kb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmxv
YWRSZXNvdXJjZVN5bmNocm9ub3VzbHkocHJlZmxpZ2h0UmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeTo6Q2Fubm90QXNrQ2xpZW50Rm9yQ3JlZGVudGlhbHMsIEZldGNoT3B0aW9ucyB7IH0s
IHsgfSwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBsb2Fk
ZXIuZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5
KHByZWZsaWdodFJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3k6OkNhbm5vdEFza0NsaWVu
dEZvckNyZWRlbnRpYWxzLCBGZXRjaE9wdGlvbnMgeyB9LCB7IH0sIGVycm9yLCByZXNwb25zZSwg
ZGF0YSk7CiAKICAgICBpZiAoIWVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIC8vIElmIHRoZSBw
cmVmbGlnaHQgd2FzIGNhbmNlbGxlZCBieSB1bmRlcmx5aW5nIGNvZGUsIGl0IHByb2JhYmx5IG1l
YW5zIHRoZSByZXF1ZXN0IHdhcyBibG9ja2VkIGR1ZSB0byBzb21lIGFjY2VzcyBjb250cm9sIHBv
bGljeS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdo
dENoZWNrZXIuaAppbmRleCAyYTAzN2NjNGI2MWU4MWZiZTJmMDNjNzM4NmM5YjhjM2RhZTA5NWNh
Li41MzI5ODBkMzU5ZDVkZTdlNzNlYmNhN2JhYjEwMTZmYjJlMDcwYWE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oCkBAIC0z
Miw2ICszMiw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRSYXdSZXNvdXJjZUNsaWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFJlc291cmNlSGFuZGxlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTU3LDcgKzU4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZGlyZWN0UmVj
ZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBm
aW5hbDsKIAogICAgIHN0YXRpYyB2b2lkIGhhbmRsZUxvYWRpbmdGYWlsdXJlKERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLSAg
ICBzdGF0aWMgdm9pZCB2YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlciYsIFJlc291cmNlUmVxdWVzdCYmLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgdmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShE
b2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBSZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAKICAgICBEb2N1bWVudFRo
cmVhZGFibGVMb2FkZXImIG1fbG9hZGVyOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFJhd1Jlc291cmNlPiBtX3Jlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKaW5kZXggMGQyZDE0MTIyMmRlNzZmZGFiYWQ2ZTA0ZGY3MjQ2Njc0ZjcwYTY0ZC4u
ZDNlOWNlYWQ5Y2I3YzgyZTJkOTAyNzA5MWFiZWU0OGQ2NWM0ZTQ5YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC00NjQsOCArNDY0LDggQEAgdm9pZCBEb2N1
bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nKCkKICAgICAgICAgLy8gYmVmb3JlIGNhbGxpbmcg
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nIHNvIHRoYXQgd2UgZG9uJ3QgbGF0ZXIgdHJ5IHRvCiAg
ICAgICAgIC8vIGNhbmNlbCB0aGUgYWxyZWFkeS1maW5pc2hlZCBzdWJzdGl0dXRlIGxvYWQuCiAg
ICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBlbXB0eU1ldHJpY3M7Ci0gICAgICAgIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXI7Ci0gICAgICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSAw
OworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciA9IG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgICAgIG1faWRlbnRpZmllckZv
ckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSB7IH07CiAgICAgICAgIGZyYW1lTG9hZGVyKCkt
Pm5vdGlmaWVyKCkuZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKHRoaXMsIGlkZW50aWZpZXIsIGVt
cHR5TWV0cmljcywgbnVsbHB0cik7CiAgICAgfQogCkBAIC04ODYsNyArODg2LDcgQEAgYm9vbCBE
b2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgRE9DVU1FTlRMT0FERVJfUkVMRUFTRV9MT0coInN0YXJ0TG9hZGluZ01h
aW5SZXNvdXJjZTogUmV0dXJuaW5nIHN1YnN0aXR1dGUgZGF0YSIpOwotICAgIG1faWRlbnRpZmll
ckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBtX2ZyYW1lLT5wYWdlKCktPnByb2dyZXNz
KCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRo
b3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7
CiAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyLCB0aGlzLCBt
X3JlcXVlc3QpOwogICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bV9yZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIG51bGxwdHIpOwogCkBAIC05MzksNyArOTM5
LDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1JlZGlyZWN0UmVxdWVzdEZyb21B
cHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291cmMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9p
ZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdB
ZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgUmVmPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0ZWRUaGlzIHsgKnRoaXMgfTsK
ICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKCptX2ZyYW1lLCBpZGVudGlmaWVyLCAqdGhpcywgcmVzcG9uc2UpOwpAQCAtMTAzNyw3
ICsxMDM3LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgQ29tcGxldGkKICAgICB9CiAKICAgICBBU1NFUlQo
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciB8fCBtX21haW5SZXNvdXJj
ZSk7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdp
dGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VM
b2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJj
ZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21h
aW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAogICAg
IGlmIChtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCAhcGxhdGZvcm1TdHJhdGVnaWVzKCkt
PmxvYWRlclN0cmF0ZWd5KCktPmhhdmVQZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhyZXNwb25zZSkp
IHsKQEAgLTEwNTQsNyArMTA1NCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlUmVj
ZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbXBsZXRpCiAgICAgICAg
ICAgICBpZiAoIWZyYW1lT3B0aW9ucy5pc051bGwoKSkgewogICAgICAgICAgICAgICAgIGlmIChm
cmFtZUxvYWRlcigpLT5zaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhmcmFtZU9w
dGlvbnMsIHVybCwgaWRlbnRpZmllcikpIHsKICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIG1l
c3NhZ2UgPSAiUmVmdXNlZCB0byBkaXNwbGF5ICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6
ZWRUb0xlbmd0aCgpICsgIicgaW4gYSBmcmFtZSBiZWNhdXNlIGl0IHNldCAnWC1GcmFtZS1PcHRp
b25zJyB0byAnIiArIGZyYW1lT3B0aW9ucyArICInLiI7Ci0gICAgICAgICAgICAgICAgICAgIG1f
ZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3Vy
aXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCBpZGVudGlmaWVyKTsKKyAgICAgICAg
ICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2Fn
ZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGlkZW50aWZp
ZXIudG9VSW50NjQoKSk7CiAgICAgICAgICAgICAgICAgICAgIHN0b3BMb2FkaW5nQWZ0ZXJYRnJh
bWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQoaWRlbnRpZmllciwgcmVzcG9u
c2UpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQpAQCAt
MTE4MCwxMCArMTE4MCwxMCBAQCBib29sIERvY3VtZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1
ZXN0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKGF1dG8qIGN1cnJl
bnREb2N1bWVudCA9IGZyYW1lKCktPmRvY3VtZW50KCkpIHsKLSAgICAgICAgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/
IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJj
ZS0+aWRlbnRpZmllcigpOworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPyBtX2lkZW50
aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDogbV9tYWluUmVzb3VyY2UtPmlkZW50
aWZpZXIoKTsKICAgICAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCi0gICAgICAgIGN1cnJlbnRE
b2N1bWVudC0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3Nh
Z2VMZXZlbDo6RXJyb3IsIG1ha2VTdHJpbmcoIk5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRvcCBm
cmFtZSB0byBkYXRhIFVSTCAnIiwgbV9yZXNwb25zZS51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSwgIicuIiksIGlkZW50aWZpZXIpOworICAgICAgICBjdXJyZW50RG9jdW1l
bnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtYWtlU3RyaW5nKCJOb3QgYWxsb3dlZCB0byBuYXZpZ2F0ZSB0b3AgZnJhbWUg
dG8gZGF0YSBVUkwgJyIsIG1fcmVzcG9uc2UudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRv
TGVuZ3RoKCksICInLiIpLCBpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIH0KICAgICBET0NV
TUVOVExPQURFUl9SRUxFQVNFX0xPRygiY29udGludWVBZnRlckNvbnRlbnRQb2xpY3k6IGNhbm5v
dCBzaG93IFVSTCIpOwogCkBAIC0yMDE2LDcgKzIwMTYsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjpzdG9wTG9hZGluZ1N1YnJlc291cmNlcygpCiAgICAgQVNTRVJUKG1fc3VicmVzb3VyY2VMb2Fk
ZXJzLmlzRW1wdHkoKSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNl
TG9hZGVyKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRT
dWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewogICAgIC8vIFRoZSBt
YWluIHJlc291cmNlJ3MgdW5kZXJseWluZyBSZXNvdXJjZUxvYWRlciB3aWxsIGFzayB0byBiZSBh
ZGRlZCBoZXJlLgogICAgIC8vIEl0IGlzIG11Y2ggc2ltcGxlciB0byBoYW5kbGUgc3BlY2lhbCBj
YXNpbmcgb2YgbWFpbiByZXNvdXJjZSBsb2FkcyBpZiB3ZSBkb24ndApAQCAtMjAyNSwxMiArMjAy
NSwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJj
ZUxvYWRlciogbG9hZGVyKQogICAgIC8vIGlmIHdlIGFyZSBqdXN0IHN0YXJ0aW5nIHRoZSBtYWlu
IHJlc291cmNlIGxvYWQuCiAgICAgaWYgKCFtX2dvdEZpcnN0Qnl0ZSkKICAgICAgICAgcmV0dXJu
OwotICAgIEFTU0VSVChsb2FkZXItPmlkZW50aWZpZXIoKSk7Ci0gICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXItPmlkZW50aWZpZXIoKSkpOwotICAgIEFTU0VS
VCghbWFpblJlc291cmNlTG9hZGVyKCkgfHwgbWFpblJlc291cmNlTG9hZGVyKCkgIT0gbG9hZGVy
KTsKKyAgICBBU1NFUlQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXIuaWRlbnRpZmllcigpKSk7CisgICAgQVNTRVJU
KCFtYWluUmVzb3VyY2VMb2FkZXIoKSB8fCBtYWluUmVzb3VyY2VMb2FkZXIoKSAhPSAmbG9hZGVy
KTsKIAogICAgIC8vIEFwcGxpY2F0aW9uIENhY2hlIGxvYWRlcnMgYXJlIGhhbmRsZWQgYnkgdGhl
aXIgQXBwbGljYXRpb25DYWNoZUdyb3VwIGRpcmVjdGx5LgotICAgIGlmIChsb2FkZXItPm9wdGlv
bnMoKS5hcHBsaWNhdGlvbkNhY2hlTW9kZSA9PSBBcHBsaWNhdGlvbkNhY2hlTW9kZTo6QnlwYXNz
KQorICAgIGlmIChsb2FkZXIub3B0aW9ucygpLmFwcGxpY2F0aW9uQ2FjaGVNb2RlID09IEFwcGxp
Y2F0aW9uQ2FjaGVNb2RlOjpCeXBhc3MpCiAgICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9F
TkFCTEVECkBAIC0yMDQwLDcgKzIwNDAsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJy
ZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIGNhc2UgRG9jdW1lbnQ6OkFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6IHsK
ICAgICAgICAgICAgIC8vIEEgcGFnZSBhYm91dCB0byBlbnRlciB0aGUgQmFja0ZvcndhcmRDYWNo
ZSBzaG91bGQgb25seSBiZSBhYmxlIHRvIHN0YXJ0IHBpbmcgbG9hZHMuCi0gICAgICAgICAgICBh
dXRvKiBjYWNoZWRSZXNvdXJjZSA9IGRvd25jYXN0PFN1YnJlc291cmNlTG9hZGVyPihsb2FkZXIp
LT5jYWNoZWRSZXNvdXJjZSgpOworICAgICAgICAgICAgYXV0byogY2FjaGVkUmVzb3VyY2UgPSBk
b3duY2FzdDxTdWJyZXNvdXJjZUxvYWRlcj4obG9hZGVyKS5jYWNoZWRSZXNvdXJjZSgpOwogICAg
ICAgICAgICAgQVNTRVJUKGNhY2hlZFJlc291cmNlICYmIChDYWNoZWRSZXNvdXJjZTo6c2hvdWxk
VXNlUGluZ0xvYWQoY2FjaGVkUmVzb3VyY2UtPnR5cGUoKSkgfHwgY2FjaGVkUmVzb3VyY2UtPm9w
dGlvbnMoKS5rZWVwQWxpdmUpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0y
MDUyLDcgKzIwNTIsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRl
cihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9zdWJyZXNv
dXJjZUxvYWRlcnMuYWRkKGxvYWRlci0+aWRlbnRpZmllcigpLCBsb2FkZXIpOworICAgIG1fc3Vi
cmVzb3VyY2VMb2FkZXJzLmFkZChsb2FkZXIuaWRlbnRpZmllcigpLCAmbG9hZGVyKTsKIH0KIAog
dm9pZCBEb2N1bWVudExvYWRlcjo6cmVtb3ZlU3VicmVzb3VyY2VMb2FkZXIoTG9hZENvbXBsZXRp
b25UeXBlIHR5cGUsIFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCkBAIC0yMjc4LDcgKzIyNzgsNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpsb2FkTWFpblJlc291cmNlKFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QpCiAjZW5kaWYKIAogICAgIGlmICghbWFpblJlc291cmNlTG9hZGVyKCkpIHsKLSAg
ICAgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IG1fZnJhbWUt
PnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCku
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QobV9pZGVudGlmaWVyRm9yTG9hZFdpdGhv
dXRSZXNvdXJjZUxvYWRlciwgdGhpcywgbWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKSk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSwgUmVzb3VyY2VSZXNwb25zZSgp
LCBudWxscHRyKTsKICAgICB9CkBAIC0yMzQ0LDEzICsyMzQ0LDEzIEBAIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OmNsZWFyTWFpblJlc291cmNlKCkKICAgICB1bnJlZ2lzdGVyVGVtcG9yYXJ5U2Vydmlj
ZVdvcmtlckNsaWVudCgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZUxv
YWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKK3ZvaWQg
RG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChS
ZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9
IGxvYWRlci0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyID0gbG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAK
LSAgICBpZiAoIW1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmFkZChpZGVudGlmaWVyLCBs
b2FkZXIpLmlzTmV3RW50cnkpIHsKLSAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3Vy
Y2VMb2FkZXJzLmdldChpZGVudGlmaWVyKSA9PSBsb2FkZXIpOworICAgIGlmICghbV9tdWx0aXBh
cnRTdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGlkZW50aWZpZXIsICZsb2FkZXIpLmlzTmV3RW50cnkp
IHsKKyAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmdldChpZGVu
dGlmaWVyKSA9PSAmbG9hZGVyKTsKICAgICAgICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVy
cy5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgQVNTRVJUKG1f
c3VicmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXggYTczMTM5MjZhY2RhNTkyMThiMDIxNTExMGI5NzNh
NTNmYTRiYjJmOS4uOGVlMTRhMjRkNTdiMzRjYzdjYmVhNGNkYzc3MzEwMjcyNmQyZTVkNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNp
bmNsdWRlICJMaW5rSWNvbi5oIgogI2luY2x1ZGUgIk5hdmlnYXRpb25BY3Rpb24uaCIKICNpbmNs
dWRlICJSZXNvdXJjZUVycm9yLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtODksNyArOTAs
NyBAQCBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKIGVudW0gY2xhc3MgU2hvdWxkQ29udGlu
dWU7CiAKLXVzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBS
ZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1h
cDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBl
bnVtIGNsYXNzIEF1dG9wbGF5UG9saWN5IDogdWludDhfdCB7CiAgICAgRGVmYXVsdCwgLy8gVXNl
cyBwb2xpY2llcyBzcGVjaWZpZWQgaW4gZG9jdW1lbnQgc2V0dGluZ3MuCkBAIC0yOTUsNyArMjk2
LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdG9wTG9hZGluZ1BsdWdJbnMoKTsKICAgICB2b2lk
IHN0b3BMb2FkaW5nU3VicmVzb3VyY2VzKCk7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9w
TG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKTsKIAogICAgIGJvb2wgdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZDsgfQogICAgIHZv
aWQgc2V0VXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV91c2Vy
Q29udGVudEV4dGVuc2lvbnNFbmFibGVkID0gZW5hYmxlZDsgfQpAQCAtMzM4LDEyICszMzksMTIg
QEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIE1vdXNlRXZlbnRQb2xpY3kgbW91c2VFdmVu
dFBvbGljeSgpIGNvbnN0OwogICAgIHZvaWQgc2V0TW91c2VFdmVudFBvbGljeShNb3VzZUV2ZW50
UG9saWN5IHBvbGljeSkgeyBtX21vdXNlRXZlbnRQb2xpY3kgPSBwb2xpY3k7IH0KIAotICAgIHZv
aWQgYWRkU3VicmVzb3VyY2VMb2FkZXIoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGFkZFN1
YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyJik7CiAgICAgdm9pZCByZW1vdmVTdWJyZXNv
dXJjZUxvYWRlcihMb2FkQ29tcGxldGlvblR5cGUsIFJlc291cmNlTG9hZGVyKik7CiAgICAgdm9p
ZCBhZGRQbHVnSW5TdHJlYW1Mb2FkZXIoUmVzb3VyY2VMb2FkZXImKTsKICAgICB2b2lkIHJlbW92
ZVBsdWdJblN0cmVhbUxvYWRlcihSZXNvdXJjZUxvYWRlciYpOwogCi0gICAgdm9pZCBzdWJyZXNv
dXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2
b2lkIHN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRl
ciYpOwogCiAgICAgdm9pZCBzZXREZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIp
IHsgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkID0gZGVmZXI7IH0KICAgICAKQEAgLTYxMCw3
ICs2MTEsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFs
c2UgfTsKICAgICBEb2N1bWVudExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgdW5zaWdu
ZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9Owor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJl
c291cmNlTG9hZGVyOwogCiAgICAgRGF0YUxvYWRUb2tlbiBtX2RhdGFMb2FkVG9rZW47CiAgICAg
Ym9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9saWN5IHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggNWE5YTU3
ZTkzOTA1MjhmZDM1OTliMDdkYjYwYWMxNWIwMDY2Yzk3MC4uMDhhNDM5YzkwZWE1NjJkZTZlOTg4
NWMwNzgxMzRmM2RhYTQ4YTBhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTM5OSw3ICszOTksNyBAQCB2b2lkIERvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiB9CiAKLXZvaWQgRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIEFTU0VSVChtX2NsaWVudCk7CiAgICAgQVNTRVJUKHJlc3BvbnNlLnR5cGUoKSAhPSBSZXNv
dXJjZVJlc3BvbnNlOjpUeXBlOjpFcnJvcik7CkBAIC00MzMsNyArNDMzLDcgQEAgdm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmRhdGFSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IHVpbnQKICAgICBkaWRSZWNlaXZlRGF0YShtX3Jlc291cmNlLT5pZGVudGlmaWVy
KCksIGRhdGEsIGRhdGFMZW5ndGgpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
cjo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZywgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURh
dGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0
YUxlbmd0aCkKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC00NjksNyArNDY5LDcgQEAg
dm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291
cmNlJiByZXNvdXJjZSwgY29uc3QgTmUKICAgICAgICAgZGlkRmluaXNoTG9hZGluZyhtX3Jlc291
cmNlLT5pZGVudGlmaWVyKCkpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC01MDMsNyArNTAz
LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgIG1fY2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlk
ZW50aWZpZXIpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCh1
bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCkBAIC01MzUsNyArNTM1LDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OnByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkK
ICAgICBsb2FkUmVxdWVzdChXVEZNb3ZlKGFjdHVhbFJlcXVlc3QpLCBTZWN1cml0eUNoZWNrUG9s
aWN5OjpTa2lwU2VjdXJpdHlDaGVjayk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpwcmVmbGlnaHRGYWlsdXJlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cHJlZmxp
Z2h0RmFpbHVyZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgbV9wcmVmbGlnaHRDaGVja2VyID0gc3RkOjpudWxs
b3B0OwogCkBAIC01OTgsNyArNTk4LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6
OmxvYWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFNlY3VyaXR5Q2gKICAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogICAgIFJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIg
PSBzdGQ6Om51bWVyaWNfbGltaXRzPHVuc2lnbmVkIGxvbmc+OjptYXgoKTsKKyAgICBhdXRvIGlk
ZW50aWZpZXIgPSBtYWtlT2JqZWN0SWRlbnRpZmllcjxSZXNvdXJjZUxvYWRlcj4oc3RkOjpudW1l
cmljX2xpbWl0czx1aW50NjRfdD46Om1heCgpKTsKICAgICBpZiAoYXV0byogZnJhbWUgPSBtX2Rv
Y3VtZW50LmZyYW1lKCkpIHsKICAgICAgICAgaWYgKCFNaXhlZENvbnRlbnRDaGVja2VyOjpjYW5S
dW5JbnNlY3VyZUNvbnRlbnQoKmZyYW1lLCBtX2RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJl
cXVlc3RVUkwpKQogICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IGYxYmYwZWY4NDZiZWZiNWIwNTM1
ZTgwNGQ1MDM0MDAzMjg3MTE4MDAuLjgzZmE5MDkxZjE0N2UzOGQ3NGNhYTZkODFjNTBhYzk1N2Ey
MzQyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkNyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9u
c2UuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVM
b2FkZXIuaCIKQEAgLTkxLDE1ICs5MiwxNSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgZmluaXNoZWRUaW1pbmdGb3JXb3JrZXJMb2FkKGNvbnN0IFJlc291cmNlVGltaW5nJik7
CiAgICAgICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBOZXR3
b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKIAotICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsK
LSAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKLSAgICAgICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7Ci0gICAgICAgIHZvaWQgZGlkRmFp
bCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICAg
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7
CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
OworICAgICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZVNpbXBsZUNyb3NzT3JpZ2lu
QWNjZXNzUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3Nz
T3JpZ2luQWNjZXNzUmVxdWVzdFdpdGhQcmVmbGlnaHQoUmVzb3VyY2VSZXF1ZXN0JiYpOwogICAg
ICAgICB2b2lkIHByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgICAgICB2
b2lkIHByZWZsaWdodEZhaWx1cmUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZUVycm9yJik7CisgICAgICAgIHZvaWQgcHJlZmxpZ2h0RmFpbHVyZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKIAogICAgICAgICB2b2lkIGxvYWRS
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmLCBTZWN1cml0eUNoZWNrUG9saWN5KTsKICAgICAgICAg
Ym9vbCBpc0FsbG93ZWRSZWRpcmVjdChjb25zdCBVUkwmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5jcHAKaW5kZXggZGJjZTE3NzE3NjZiMWZjMTk4Mjk4NTMxMzU5NDlhZjUxOWIy
YmJiZi4uOWJlZGVjNjM2YjJiNGZlNjE4NGE0MTlhOWFiNjUzMzQ1YzE1YmQ3MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKQEAgLTY3MywyNiArNjczLDI2IEBAIHZvaWQg
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KERvY3VtZW50TG9hZGVyKiwKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojph
c3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKQogewogfQogCi1i
b29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK2Jvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikK
K3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKIHsKIH0KIAogI2lmIFVTRShQUk9URUNU
SU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCiAKLWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpCitib29sIEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYp
CiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtNzAxLDIyICs3MDEsMjIgQEAgYm9vbCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KERvY3VtZW50TG9hZGUKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKLVJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0
aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK1JldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiBudWxs
cHRyOwogfQogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcsIGludCkKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgaW50KQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKIH0KIApAQCAtNzI4
LDcgKzcyOCw3IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5p
c2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikKIHsKIH0KIApAQCAtMTA2Nyw3ICsx
MDY3LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6YWNjZXNz
aWJpbGl0eVJlbW90ZU9iamVjdCgpCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRW1w
dHlGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICpyZXNwb25zZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBj
b25zdAordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1
bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSAqcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAgICBjb21wbGV0aW9uSGFuZGxlcihy
ZXNwb25zZSk7CiB9CkBAIC0xMDc2LDcgKzEwNzYsNyBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
TgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKIAotYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBs
b25nIGxvbmcpCitib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKQog
ewogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZy
YW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggMDE3ZTM3ZTE1NGNlMmZmYTY0YzE4MmYxZTViZWJlMzdj
MDRhY2U2MC4uMDI5NGRjNDM0MjA0YjZmOWJmZjI5MjYxYTA3NzliNjhhMDRmZWJkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oCkBAIC01Mywy
NSArNTMsMjUgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRU
b0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9J
bml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwotICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwor
ICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
IGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9v
bCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAgYm9vbCBj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcpIGZpbmFsOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9w
ZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsK
ICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjaWYg
RU5BQkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0
ZWN0aW9uKE5TQXJyYXkgKikgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmlu
YWw7CiAgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBpbnQpIGZpbmFsOwogCiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgZmluYWw7CkBAIC0xODIsMTEgKzE4MiwxMSBAQCBwcml2YXRlOgogCiAjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVj
dCgpIGZpbmFsOwotICAgIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICosIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxs
Q2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSAqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJM
UmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBVU0UoQ0ZVUkxDT05O
RUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbDsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBm
aW5hbDsKICNlbmRpZgogCiAgICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cAppbmRleCAyYTZlMTY2ZWIyMjdlNTY0Yjg4MWVkMzE4OWI4YzExMjUxMTRkMWE3Li4zMzI2M2M4
MTUwM2ZiNTM0OWM5ZWJhNDNmN2RmMjEyNzdkNjYyMGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKQEAgLTE2ODksNyArMTY4OSw3IEBAIGJvb2wgRnJhbWVMb2FkZXI6Ondp
bGxMb2FkTWVkaWFFbGVtZW50VVJMKFVSTCYgdXJsLCBOb2RlJiBpbml0aWF0b3JOb2RlKQogICAg
IFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHVybCk7CiAgICAgcmVxdWVzdC5zZXRJbnNwZWN0b3JJ
bml0aWF0b3JOb2RlSWRlbnRpZmllcihJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmlkZW50aWZp
ZXJGb3JOb2RlKGluaXRpYXRvck5vZGUpKTsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICBSZXNvdXJj
ZUVycm9yIGVycm9yOwogICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRlbnRpZmll
ciwgZXJyb3IpOwogICAgIG5vdGlmaWVyKCkuc2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMo
bV9kb2N1bWVudExvYWRlci5nZXQoKSwgaWRlbnRpZmllciwgcmVxdWVzdCwgUmVzb3VyY2VSZXNw
b25zZSh1cmwsIFN0cmluZygpLCAtMSwgU3RyaW5nKCkpLCAwLCAtMSwgLTEsIGVycm9yKTsKQEAg
LTIwNjgsNyArMjA2OCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFsTG9h
ZCgpCiAgICAgICAgIC8vIFN0YXJ0IHJlcXVlc3QgZm9yIHRoZSBtYWluIHJlc291cmNlIGFuZCBk
aXNwYXRjaCBkaWRSZWNlaXZlUmVzcG9uc2UgYmVmb3JlIHRoZSBsb2FkIGlzIGNvbW1pdHRlZCBm
b3IKICAgICAgICAgLy8gY29uc2lzdGVuY3kgd2l0aCBhbGwgb3RoZXIgbG9hZHMuIFNlZSBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwOTI3LgogICAgICAgICBSZXNv
dXJjZUVycm9yIG1haW5SZXNvdWNlRXJyb3I7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgbWFpblJl
c291cmNlSWRlbnRpZmllcjsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1haW5S
ZXNvdXJjZUlkZW50aWZpZXI7CiAgICAgICAgIFJlc291cmNlUmVxdWVzdCBtYWluUmVzb3VyY2VS
ZXF1ZXN0KGNhY2hlZFBhZ2UtPmRvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKSk7CiAgICAgICAg
IHJlcXVlc3RGcm9tRGVsZWdhdGUobWFpblJlc291cmNlUmVxdWVzdCwgbWFpblJlc291cmNlSWRl
bnRpZmllciwgbWFpblJlc291Y2VFcnJvcik7CiAgICAgICAgIG5vdGlmaWVyKCkuZGlzcGF0Y2hE
aWRSZWNlaXZlUmVzcG9uc2UoY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKSwgbWFpblJlc291
cmNlSWRlbnRpZmllciwgY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKSk7
CkBAIC0yMTMzLDcgKzIxMzMsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb21taXRQcm92aXNpb25h
bExvYWQoKQogICAgICAgICAgICAgY29uc3QgYXV0byYgcmVzcG9uc2UgPSBtX2RvY3VtZW50TG9h
ZGVyLT5yZXNwb25zZXMoKVtpXTsKICAgICAgICAgICAgIC8vIEZJWE1FOiBJZiB0aGUgV2ViS2l0
IGNsaWVudCBjaGFuZ2VzIG9yIGNhbmNlbHMgdGhlIHJlcXVlc3QsIHRoaXMgaXMgbm90IHJlc3Bl
Y3RlZC4KICAgICAgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3I7Ci0gICAgICAgICAgICB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXI7CisgICAgICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcjsKICAgICAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHJlc3Bv
bnNlLnVybCgpKTsKICAgICAgICAgICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRl
bnRpZmllciwgZXJyb3IpOwogICAgICAgICAgICAgLy8gRklYTUU6IElmIHdlIGdldCBhIHJlc291
cmNlIHdpdGggbW9yZSB0aGFuIDJCIGJ5dGVzLCB0aGlzIGNvZGUgd29uJ3QgZG8gdGhlIHJpZ2h0
IHRoaW5nLgpAQCAtMzEwNiw3ICszMTA2LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RS
ZXF1ZXN0KEZyYW1lTG9hZFJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBTdHJpbmcmIHJlZmUKICAg
ICB9KTsKIH0KIAotdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQ
b2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVy
cm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+JiBkYXRhKQorUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIEZyYW1lTG9hZGVyOjpsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50
Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlv
bnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMs
IFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4mIGRhdGEpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUuZG9jdW1lbnQoKSk7
CiAgICAgU3RyaW5nIHJlZmVycmVyID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJI
ZWFkZXIobV9mcmFtZS5kb2N1bWVudCgpLT5yZWZlcnJlclBvbGljeSgpLCByZXF1ZXN0LnVybCgp
LCBvdXRnb2luZ1JlZmVycmVyKCkpOwpAQCAtMzEyNCw3ICszMTI0LDcgQEAgdW5zaWduZWQgbG9u
ZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXUKIAogICAgIGFwcGx5VXNlckFnZW50SWZOZWVkZWQoaW5pdGlhbFJlcXVlc3Qp
OwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gMDsgICAgCisgICAgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7ICAgIAogICAgIFJlc291cmNlUmVxdWVzdCBuZXdS
ZXF1ZXN0KGluaXRpYWxSZXF1ZXN0KTsKICAgICByZXF1ZXN0RnJvbURlbGVnYXRlKG5ld1JlcXVl
c3QsIGlkZW50aWZpZXIsIGVycm9yKTsKIApAQCAtMzU4NywxMyArMzU4NywxMyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRlck5ld1dpbmRvd1BvbGljeShjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlcwogICAgIG1haW5GcmFtZS0+bG9hZGVyKCkubG9hZFdpdGhOYXZpZ2F0
aW9uQWN0aW9uKHJlcXVlc3QsIFdURk1vdmUobmV3QWN0aW9uKSwgRnJhbWVMb2FkVHlwZTo6U3Rh
bmRhcmQsIGZvcm1TdGF0ZSwgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMKTsKIH0KIAotdm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIHVuc2lnbmVkIGxvbmcmIGlkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYg
ZXJyb3IpCiB7CiAgICAgQVNTRVJUKCFyZXF1ZXN0LmlzTnVsbCgpKTsKIAotICAgIGlkZW50aWZp
ZXIgPSAwOworICAgIGlkZW50aWZpZXIgPSB7IH07CiAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBtX2Zy
YW1lLnBhZ2UoKSkgewotICAgICAgICBpZGVudGlmaWVyID0gcGFnZS0+cHJvZ3Jlc3MoKS5jcmVh
dGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIG5vdGlmaWVyKCkuYXNzaWduSWRlbnRp
ZmllclRvSW5pdGlhbFJlcXVlc3QoaWRlbnRpZmllciwgbV9kb2N1bWVudExvYWRlci5nZXQoKSwg
cmVxdWVzdCk7CiAgICAgfQogCkBAIC0zNjM0LDcgKzM2MzQsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
Ojpsb2FkZWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2Us
IFJlc291cgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIHJl
cXVlc3RGcm9tRGVsZWdhdGUobmV3UmVxdWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogCiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSA9IHJlc291cmNlLnJlc3BvbnNlKCk7CkBAIC0zNjUx
LDcgKzM2NTEsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjphcHBseVVzZXJBZ2VudElmTmVlZGVkKFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKICAgICB9CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXI6OnNo
b3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYgY29udGVudCwg
Y29uc3QgVVJMJiB1cmwsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCitib29sIEZy
YW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJp
bmcmIGNvbnRlbnQsIGNvbnN0IFVSTCYgdXJsLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVx
dWVzdElkZW50aWZpZXIpCiB7CiAgICAgRnJhbWUmIHRvcEZyYW1lID0gbV9mcmFtZS50cmVlKCku
dG9wKCk7CiAgICAgaWYgKCZtX2ZyYW1lID09ICZ0b3BGcmFtZSkKQEAgLTM2NzUsMTAgKzM2NzUs
MTAgQEAgYm9vbCBGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlv
bnMoY29uc3QgU3RyaW5nJiBjb250ZW50LCBjb24KICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNw
b3NpdGlvbjo6QWxsb3dBbGw6CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBjYXNlIFhGcmFt
ZU9wdGlvbnNEaXNwb3NpdGlvbjo6Q29uZmxpY3Q6Ci0gICAgICAgIG1fZnJhbWUuZG9jdW1lbnQo
KS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJy
b3IsICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3Rpbmcg
dmFsdWVzICgnIiArIGNvbnRlbnQgKyAiJykgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsg
dXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicuIEZhbGxpbmcgYmFjayB0
byAnREVOWScuIiwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50
KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVy
cm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5n
IHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiAr
IHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJhY2sg
dG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDoKLSAg
ICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVh
ZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICInOiAnIiArIGNvbnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVk
IGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZp
ZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiSW52YWxpZCAnWC1GcmFtZS1PcHRp
b25zJyBoZWFkZXIgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRl
ckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIic6ICciICsgY29udGVudCArICInIGlzIG5vdCBhIHJl
Y29nbml6ZWQgZGlyZWN0aXZlLiBUaGUgaGVhZGVyIHdpbGwgYmUgaWdub3JlZC4iLCByZXF1ZXN0
SWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGNhc2Ug
WEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb25lOgogICAgICAgICByZXR1cm4gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGY3NTI0MTBhODlmNTkyNzAxYzg0MWE0
MmQ0YWJlNDRhZDc4OTIzMTEuLmU3NDc1YTQyNDdlOTllNmM0Yjg3ODFhOTQzMjE3NWJlZmIyZjRi
NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0xMjcsNyArMTI3LDcgQEAg
cHVibGljOgogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgbG9hZEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOwogI2VuZGlmCi0g
ICAgdW5zaWduZWQgbG9uZyBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNv
bnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJl
ZlB0cjxTaGFyZWRCdWZmZXI+JiBkYXRhKTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRD
cmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFw
JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVy
PiYgZGF0YSk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNoYW5nZUxvY2F0aW9uKGNvbnN0
IFVSTCYsIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBFdmVudCosIGNvbnN0IFJlZmVycmVyUG9saWN5
JiwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3RkOjpvcHRpb25hbDxOZXdGcmFtZU9w
ZW5lclBvbGljeT4gPSBzdGQ6Om51bGxvcHQsIGNvbnN0IEF0b21TdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlID0gbnVsbEF0b20oKSwgY29uc3QgU3lzdGVtUHJldmlld0luZm8mID0geyB9LCBzdGQ6
Om9wdGlvbmFsPFByaXZhdGVDbGlja01lYXN1cmVtZW50PiYmID0gc3RkOjpudWxsb3B0KTsKICAg
ICB2b2lkIGNoYW5nZUxvY2F0aW9uKEZyYW1lTG9hZFJlcXVlc3QmJiwgRXZlbnQqID0gbnVsbHB0
ciwgc3RkOjpvcHRpb25hbDxQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJiA9IHN0ZDo6bnVsbG9w
dCk7CkBAIC0yNzUsNyArMjc1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseVVzZXJBZ2Vu
dElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYpOwogCi0gICAgYm9vbCBzaG91bGRJbnRlcnJ1cHRM
b2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmLCBjb25zdCBVUkwmLCB1bnNpZ25lZCBs
b25nIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICBib29sIHNob3VsZEludGVycnVwdExvYWRGb3JY
RnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYsIGNvbnN0IFVSTCYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllcik7CiAKICAgICB2b2lkIGNvbXBsZXRlZCgpOwogICAgIGJvb2wgYWxsQW5jZXN0b3Jz
QXJlQ29tcGxldGUoKSBjb25zdDsgLy8gaW5jbHVkaW5nIHRoaXMKQEAgLTM4Niw3ICszODYsNyBA
QCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91bGRSZWxvYWQoY29uc3QgVVJMJiBjdXJyZW50VVJM
LCBjb25zdCBVUkwmIGRlc3RpbmF0aW9uVVJMKTsKIAotICAgIHZvaWQgcmVxdWVzdEZyb21EZWxl
Z2F0ZShSZXNvdXJjZVJlcXVlc3QmLCB1bnNpZ25lZCBsb25nJiBpZGVudGlmaWVyLCBSZXNvdXJj
ZUVycm9yJik7CisgICAgdm9pZCByZXF1ZXN0RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciYsIFJlc291cmNlRXJyb3ImKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgZGV0YWNoQ2hpbGRyZW4oKTsKICAgICB2b2lkIGNsb3NlQW5kUmVtb3Zl
Q2hpbGQoRnJhbWUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgK
aW5kZXggMDRhMTJmN2E5MzAxNWNjZjRlZTA3M2FlZTA0MDgyY2E4MTI2MDdkMC4uNGE3MDZjODdm
NThjOGIwODI0ZThjZWIzNjNjNjE0N2MyN2NkYzM1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJMaW5rSWNv
bi5oIgogI2luY2x1ZGUgIlBhZ2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVnaXN0cmFibGVE
b21haW4uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDx3dGYvRXhwZWN0ZWQuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0
Zi9XYWxsVGltZS5oPgpAQCAtMTM4LDIzICsxMzksMjMgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hl
ZEZyb21QYXJlbnQzKCkgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGFzc2lnbklk
ZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRl
ciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UmKSA9IDA7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICB2
aXJ0dWFsIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNl
JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlv
blNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQ
cm90ZWN0aW9uU3BhY2UmKSA9IDA7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
Ci0gICAgdmlydHVhbCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgPSAwOworICAg
IHZpcnR1YWwgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMo
RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpID0gMDsKICNlbmRpZgog
Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpID0gMDsKQEAgLTI5OCwxMyArMjk5
LDEzIEBAIHB1YmxpYzoKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBBbGxvdyBhbiBhY2Nl
c3NpYmlsaXR5IG9iamVjdCB0byByZXRyaWV2ZSBhIEZyYW1lIHBhcmVudCBpZiB0aGVyZSdzIG5v
IFBsYXRmb3JtV2lkZ2V0LgogICAgIHZpcnR1YWwgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJp
bGl0eVJlbW90ZU9iamVjdCgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJM
UmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+
JiYpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1l
bnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2Uq
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7
IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKIAogI2lmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAg
ICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcyNTc+LgotICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciog
ZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwg
dW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIGJv
b2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBl
Ki8pIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0
cmF0ZWd5LmNwcAppbmRleCA4YjU1ODFkYjRmMjY1OTMyNGE3YjdlY2VlYjcyNjQxM2JmYTQ5MWU0
Li4zYmMxMmViMGUxNzVjY2YzZjU5ZTQwMGQ5ZWM4YzAyMWNmNTI4MWQ0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAKQEAgLTQxLDE3ICs0MSwxNyBAQCB2b2lkIExv
YWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8U3VicmVz
b3VyY2VMb2FkZXIqPiYpCiB7CiB9CiAKLVJlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6
OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VM
b2FkSWRlbnRpZmllciAqLykKK1Jlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6OnJlc3Bv
bnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIHJldHVybiB7IH07CiB9CiAKLU5ldHdvcmtMb2FkTWV0cmljcyBMb2FkZXJTdHJhdGVn
eTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyICovKQorTmV0d29ya0xvYWRNZXRyaWNzIExvYWRlclN0cmF0
ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4geyB9OwogfQogCi1WZWN0b3I8TmV0d29ya1Ry
YW5zYWN0aW9uSW5mb3JtYXRpb24+IExvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5m
b3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJjZUxv
YWRJZGVudGlmaWVyICovKQorVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBM
b2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCmluZGV4IGIwMThhZjA0ZDA1
Y2UzYWMzOGJiNTdkOGU1MGE3YjA2M2VlNTE3MzMuLmUyZWNkMWFmYzM1YmE2ZDMxMjM4OGM4Mjhl
YTRjZTFkZGMyM2FjZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJT
dHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCkBA
IC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiTG9hZFNjaGVkdWxpbmdNb2RlLmgiCiAjaW5jbHVk
ZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNl
TG9hZGVyT3B0aW9ucy5oIgogI2luY2x1ZGUgIlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LmgiCiAj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAgLTU4LDcgKzU5LDcgQEAgc3RydWN0IEZldGNoT3B0
aW9uczsKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIExvYWRlclN0cmF0ZWd5IHsKIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNlKEZyYW1lJiwgQ2FjaGVkUmVzb3VyY2UmLCBSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChSZWZQdHI8U3VicmVzb3VyY2VMb2FkZXI+JiYpPiYmKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENsaWVudENyZWRlbnRp
YWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNv
dXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVy
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGll
bnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVy
TWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4m
IGRhdGEpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoUGFnZSYpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChGcmFtZSYpID0gMDsK
IApAQCAtODgsMTQgKzg5LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGVy
Zm9ybVNlY3VyaXR5Q2hlY2tzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgaGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmlydHVhbCBSZXNvdXJjZVJlc3BvbnNl
IHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcik7Ci0gICAgdmlydHVhbCBWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3Jt
YXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlm
aWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpOwotICAgIHZpcnR1YWwgTmV0d29y
a0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWlu
dDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdmlydHVhbCBSZXNvdXJjZVJlc3Bv
bnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKTsKKyAgICB2aXJ0dWFsIFZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlv
bj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIo
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2aXJ0dWFsIE5ldHdvcmtMb2FkTWV0cmlj
cyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcik7CiAKICAgICB2aXJ0dWFsIHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZChD
YWNoZWRSZXNvdXJjZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2sp
ID0gMDsKIAogICAgIC8vIFVzZWQgZm9yIHRlc3Rpbmcgb25seS4KLSAgICB2aXJ0dWFsIFZlY3Rv
cjx1aW50NjRfdD4gb25nb2luZ0xvYWRzKCkgY29uc3QgeyByZXR1cm4geyB9OyB9CisgICAgdmly
dHVhbCBWZWN0b3I8UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25z
dCB7IHJldHVybiB7IH07IH0KIAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkxvYWRlclN0cmF0
ZWd5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggM2VjM2M1MThjNzg4
ZTVjYzFmNWYxODhlOGM3MTUzMWY5MWRiMDNjYi4uNzk4YTU0YjUwYmNjMTY1MmNjZjdhZTU5MmUx
YmM0Y2JkNjMzOWM4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMjAw
LDcgKzIwMCw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYg
ZnJhbWUsIGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBSZWY8Rm9yCiAKIHZvaWQgUGluZ0xvYWRlcjo6
c3RhcnRQaW5nTG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSFRU
UEhlYWRlck1hcCYmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFNob3VsZEZvbGxvd1JlZGlyZWN0
cyBzaG91bGRGb2xsb3dSZWRpcmVjdHMsIENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24g
cG9saWN5Q2hlY2ssIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5LCBzdGQ6Om9wdGlvbmFs
PFZpb2xhdGlvblJlcG9ydFR5cGU+IHZpb2xhdGlvblJlcG9ydFR5cGUpCiB7Ci0gICAgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyID0gZnJhbWUucGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1
ZUlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgLy8gRklYTUU6IFdoeSBhY3RpdmVEb2N1bWVudExvYWRl
cj8gSSB3b3VsZCBoYXZlIGV4cGVjdGVkIGRvY3VtZW50TG9hZGVyKCkuCiAgICAgLy8gSXQgc2Vl
bXMgbGlrZSB0aGUgUGluZ0xvYWRlciBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJy
ZW50CiAgICAgLy8gRG9jdW1lbnQgaW4gdGhlIEZyYW1lLCBidXQgdGhlIGFjdGl2ZURvY3VtZW50
TG9hZGVyIHdpbGwgYmUgYXNzb2NpYXRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NU
cmFja2VyLmNwcAppbmRleCAwZGNiNDc1NTZkMDQ4NzQ4Nzg2NTZlNDU5YzliYWM5YWY2NGRjZmJm
Li5hMjE1ZDZhOWI0MDIyYzllNzc1ODhlNWZiMDdhZmYwNDJjYzQ5YTFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcApAQCAtMTgzLDcgKzE4Myw3IEBAIHZvaWQg
UHJvZ3Jlc3NUcmFja2VyOjpmaW5hbFByb2dyZXNzQ29tcGxldGUoKQogICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6ZnJhbWVTdG9wcGVkTG9hZGluZygqZnJhbWUpOwogfQogCi12b2lkIFBy
b2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2Vy
OjppbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgTE9HKFByb2dyZXNzLCAi
UHJvZ3Jlc3MgaW5jcmVtZW50ZWQgKCVwKSAtIHZhbHVlICVmLCB0cmFja2VkIGZyYW1lcyAlZCwg
b3JpZ2luYXRpbmcgZnJhbWUgJXAiLCB0aGlzLCBtX3Byb2dyZXNzVmFsdWUsIG1fbnVtUHJvZ3Jl
c3NUcmFja2VkRnJhbWVzLCBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZS5nZXQoKSk7CiAKQEAg
LTIwNiw3ICsyMDYsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3Mo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZQogICAgIGl0ZW0tPmVzdGlt
YXRlZExlbmd0aCA9IGVzdGltYXRlZExlbmd0aDsKIH0KIAotdm9pZCBQcm9ncmVzc1RyYWNrZXI6
OmluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0
ZXNSZWNlaXZlZCkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCkK
IHsKICAgICBQcm9ncmVzc0l0ZW0qIGl0ZW0gPSBtX3Byb2dyZXNzSXRlbXMuZ2V0KGlkZW50aWZp
ZXIpOwogCkBAIC0yNjYsNyArMjY2LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVu
dFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXMKICAgICBt
X2NsaWVudC0+ZGlkQ2hhbmdlRXN0aW1hdGVkUHJvZ3Jlc3MoKTsKIH0KIAotdm9pZCBQcm9ncmVz
c1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9p
ZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBpdCA9IG1fcHJvZ3Jlc3NJdGVtcy5maW5kKGlk
ZW50aWZpZXIpOwogCkBAIC0yODUsNiArMjg1LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNv
bXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogCiB1bnNpZ25lZCBsb25n
IFByb2dyZXNzVHJhY2tlcjo6Y3JlYXRlVW5pcXVlSWRlbnRpZmllcigpCiB7CisgICAgLy8gRklY
TUU6IFVzZSBhIHN0cm9uZ2x5IHR5cGVkIGlkZW50aWZpZXIgZm9yIHdlYnNvY2tldHMgYW5kIHJl
bW92ZSB0aGlzLgogICAgIHJldHVybiArK3NfdW5pcXVlSWRlbnRpZmllcjsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oCmluZGV4IDMxOWIwY2M4MWI5OTQ2MWQ4ZDVl
OGY1MTkyNWY0ZWE3MDRjMDVlZWUuLjkzYTY4YTk5ZGZhODdlNGFkNzE5M2I4OGVjMDg2NjIzZTZm
MDIyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmgKQEAgLTI1LDYg
KzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIuaCIKICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAj
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTU1LDkgKzU2LDkgQEAgcHVibGljOgogICAgIHZv
aWQgcHJvZ3Jlc3NTdGFydGVkKEZyYW1lJik7CiAgICAgdm9pZCBwcm9ncmVzc0NvbXBsZXRlZChG
cmFtZSYpOwogCi0gICAgdm9pZCBpbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGluY3JlbWVudFByb2dy
ZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7Ci0g
ICAgdm9pZCBjb21wbGV0ZVByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAg
dm9pZCBpbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7CisgICAgdm9pZCBjb21wbGV0
ZVByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBsb25nIGxvbmcgdG90
YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9hZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxQYWdl
QW5kUmVzb3VyY2VCeXRlc1RvTG9hZDsgfQogICAgIGxvbmcgbG9uZyB0b3RhbEJ5dGVzUmVjZWl2
ZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdGFsQnl0ZXNSZWNlaXZlZDsgfQpAQCAtNzQsNyArNzUs
NyBAQCBwcml2YXRlOgogCiAgICAgVW5pcXVlUmVmPFByb2dyZXNzVHJhY2tlckNsaWVudD4gbV9j
bGllbnQ7CiAgICAgUmVmUHRyPEZyYW1lPiBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZTsKLSAg
ICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBt
X3Byb2dyZXNzSXRlbXM7CisgICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBtX3Byb2dyZXNzSXRlbXM7CiAgICAgVGltZXIg
bV9wcm9ncmVzc0hlYXJ0YmVhdFRpbWVyOwogCiAgICAgbG9uZyBsb25nIG1fdG90YWxQYWdlQW5k
UmVzb3VyY2VCeXRlc1RvTG9hZCB7IDAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IDliNzZjMDU5MDJmM2M5ZjI2NGMwMDc0MjhlMzZi
OThiZWY3NDkzMmUuLjE0N2I0NWUwNjQzODEyMjdiMDUyMjA2NDQxODUyM2MwNzlmNjRkMTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAt
NTYsNyArNTYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqIGxvYQogICAgIGRpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShsb2FkZXItPmlkZW50aWZpZXIoKSwgbG9hZGVyLT5kb2N1bWVu
dExvYWRlcigpLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWRO
b3RpZmllcjo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UmIGN1cnJlbnRXZWJDaGFsbGVuZ2UpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlJiBjdXJyZW50V2ViQ2hhbGxlbmdlKQogewogICAgIG1fZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UobG9h
ZGVyLCBpZGVudGlmaWVyLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KQEAgLTEwNyw3ICsxMDcs
NyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRGYWlsVG9Mb2FkKFJlc291cmNlTG9h
ZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRQogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKSwgbG9h
ZGVyLT5pZGVudGlmaWVyKCksIGVycm9yKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGJvb2wg
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcgPSBmYWxzZTsKICAgICBpZiAoYXV0byogZnJhbWVM
b2FkZXIgPSBsb2FkZXIgPyBsb2FkZXItPmZyYW1lTG9hZGVyKCkgOiBudWxscHRyKQpAQCAtMTE5
LDcgKzExOSw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgbV9mcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChpZGVudGlmaWVyLCBs
b2FkZXIsIHJlcXVlc3QpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNl
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogI2lm
IFVTRShRVUlDS19MT09LKQogICAgIC8vIEFsd2F5cyBhbGxvdyBRdWlja0xvb2stZ2VuZXJhdGVk
IFVSTHMgYmFzZWQgb24gdGhlIHByb3RvY29sIHNjaGVtZS4KQEAgLTE1MCw3ICsxNTAsNyBAQCB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2ls
bFNlbmRSZXF1ZXN0KCZtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QsIHJlZGly
ZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3Rp
Zmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgciwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUg
RnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAg
ICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTU5LDcgKzE1OSw3IEBAIHZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNl
aXZlUmVzb3VyY2VSZXNwb25zZShtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHIsIHJlc291
cmNlTG9hZGVyKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFM
ZW5ndGgpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVEYXRh
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNh
dXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1f
ZnJhbWUpOwpAQCAtMTY4LDcgKzE2OCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRp
c3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSgmbV9mcmFtZSwgaWRlbnRp
ZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VM
b2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2Fk
ZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZy
YW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTc3LDcgKzE3Nyw3IEBAIHZvaWQgUmVzb3VyY2VM
b2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9h
ZGVyLCB1bnNpCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5n
KCZtX2ZyYW1lLCBsb2FkZXIsIGlkZW50aWZpZXIsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3Vy
Y2VMb2FkZXIpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICAvLyBOb3RpZnlpbmcgdGhlIEZyYW1lTG9hZGVyQ2xpZW50IG1heSBjYXVzZSB0aGUg
ZnJhbWUgdG8gYmUgZGVzdHJveWVkLgogICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsK
QEAgLTE4Niw3ICsxODYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERp
ZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbgogICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlciwgaWRlbnRp
ZmllciwgZXJyb3IpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpzZW5kUmVtYWlu
aW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2Rl
ZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIC8vIElmIHRo
ZSByZXF1ZXN0IGlzIG51bGwsIHdpbGxTZW5kUmVxdWVzdCBjYW5jZWxsZWQgdGhlIGxvYWQuIFdl
IHNob3VsZAogICAgIC8vIG9ubHkgZGlzcGF0Y2ggZGlkRmFpbExvYWRpbmcgaW4gdGhpcyBjYXNl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAppbmRleCAx
Y2M0NjMxOTJkNTIzMjE1ZmM4ZmUyZmFiYWMxODg3MmEyOWRmMTFiLi40ZGJkNGNjNDlkNjUwNDIx
MTg0ZTYwYzI0ZGQ3MTRkY2JlMGJkYjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuaApAQCAtMjksNiArMjksNyBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgPG9wdGlvbmFs
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCkBAIC01MCw3ICs1MSw3IEBAIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBSZXNvdXJjZUxvYWROb3RpZmllcihGcmFtZSYpOwogCiAgICAgdm9p
ZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqLCBjb25z
dCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOworICAgIHZvaWQgZGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwogCiAgICAgdm9pZCB3aWxs
U2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKQEAgLTU4LDE4
ICs1OSwxOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRGaW5pc2hMb2FkKFJlc291cmNlTG9hZGVy
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7CiAgICAgdm9pZCBkaWRGYWlsVG9Mb2FkKFJl
c291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBhc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgdm9pZCBkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25z
ZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJl
c3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqID0gbnVsbHB0cik7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVEYXRhKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
JiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImKTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
KTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciog
PSBudWxscHRyKTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBzZW5kUmVtYWluaW5nRGVs
ZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVp
bnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2Vz
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdWludDhfdCogZGF0YSwg
aW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOwogCiBwcml2YXRlOgogICAgIEZyYW1lJiBtX2ZyYW1lOwotICAgIHN0ZDo6b3B0aW9uYWw8
dW5zaWduZWQgbG9uZz4gbV9pbml0aWFsUmVxdWVzdElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRp
b25hbDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1faW5pdGlhbFJlcXVlc3RJZGVudGlmaWVy
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHAKaW5kZXggMzBjNjU0ODY1ZWVmZjg5MDIyYjgwNTllYTZmNjA3ZDNiOTA2
MDVlMy4uMGEwZDQzZWQ1NzUwNGNkODEwNWFjODZlMGYwMzVmNjgzY2QzMjkyOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC02Nyw3ICs2Nyw3IEBACiAjdW5k
ZWYgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0cKICNkZWZpbmUgUEFHRV9JRCAoKGZyYW1lKCkg
PyBmcmFtZSgpLT5wYWdlSUQoKS52YWx1ZV9vcihQYWdlSWRlbnRpZmllcigpKSA6IFBhZ2VJZGVu
dGlmaWVyKCkpLnRvVUludDY0KCkpCiAjZGVmaW5lIEZSQU1FX0lEICgoZnJhbWUoKSA/IGZyYW1l
KCktPmZyYW1lSUQoKS52YWx1ZV9vcihGcmFtZUlkZW50aWZpZXIoKSkgOiBGcmFtZUlkZW50aWZp
ZXIoKSkudG9VSW50NjQoKSkKLSNkZWZpbmUgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10
LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlEPSVsdV0gUmVzb3Vy
Y2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIoKSwg
aWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxF
QVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICJdIFJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVf
SUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19f
KQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIFJlc291
cmNlTG9hZGVyOjpyZWxlYXNlUmVzb3VyY2VzKCkKIAogICAgIGZpbmlzaE5ldHdvcmtMb2FkKCk7
CiAKLSAgICBtX2lkZW50aWZpZXIgPSAwOworICAgIG1faWRlbnRpZmllciA9IHsgfTsKIAogICAg
IG1fcmVzb3VyY2VEYXRhID0gbnVsbHB0cjsKICAgICBtX2RlZmVycmVkUmVxdWVzdCA9IFJlc291
cmNlUmVxdWVzdCgpOwpAQCAtMzczLDcgKzM3Myw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6Ondp
bGxTZW5kUmVxdWVzdEludGVybmFsKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFJl
CiAgICAgLy8gV2UgbmVlZCBhIHJlc291cmNlIGlkZW50aWZpZXIgZm9yIGFsbCByZXF1ZXN0cywg
ZXZlbiBpZiBGcmFtZUxvYWRlciBpcyBuZXZlciBnb2luZyB0byBzZWUgaXQgKHN1Y2ggYXMgd2l0
aCBDT1JTIHByZWZsaWdodCByZXF1ZXN0cykuCiAgICAgYm9vbCBjcmVhdGVkUmVzb3VyY2VJZGVu
dGlmaWVyID0gZmFsc2U7CiAgICAgaWYgKCFtX2lkZW50aWZpZXIpIHsKLSAgICAgICAgbV9pZGVu
dGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZp
ZXIoKTsKKyAgICAgICAgbV9pZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpn
ZW5lcmF0ZSgpOwogICAgICAgICBjcmVhdGVkUmVzb3VyY2VJZGVudGlmaWVyID0gdHJ1ZTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKaW5kZXggN2E0YTBkN2Q3
ZjQ2NDUzNmMyYzY4ODVhZjgzNjlkZjA2OTc1YmI5NS4uNGZkMmJmMGJiYjNiMWJkMjE1NDVkYjUy
YzJlMWNhNjRlZTQyYjkxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgK
QEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgpA
QCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldERlZmVyc0xvYWRp
bmcoYm9vbCk7CiAgICAgYm9vbCBkZWZlcnNMb2FkaW5nKCkgY29uc3QgeyByZXR1cm4gbV9kZWZl
cnNMb2FkaW5nOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJl
dHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgYm9vbCB3YXNBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZUJsb2NrZWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlQmxvY2tlZDsgfQogCkBAIC0yMjgsNyArMjI5LDcgQEAgcHJpdmF0ZToK
ICAgICBSZXNvdXJjZVJlcXVlc3QgbV9vcmlnaW5hbFJlcXVlc3Q7IC8vIEJlZm9yZSByZWRpcmVj
dHMuCiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbV9yZXNvdXJjZURhdGE7CiAgICAgCi0gICAg
dW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIgeyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIG1faWRlbnRpZmllcjsKIAogICAgIGJvb2wgbV9yZWFjaGVkVGVybWluYWxTdGF0ZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX25vdGlmaWVkTG9hZENvbXBsZXRlIHsgZmFsc2UgfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44MjdlMTYwODliNWY2NWM2MmI1ZDZkMWZiMGYzNDc2M2U2N2Y2MmI3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgUmVzb3VyY2VMb2FkZXI7CisKK3VzaW5nIFJlc291cmNlTG9hZGVySWRlbnRpZmllciA9IE9i
amVjdElkZW50aWZpZXI8UmVzb3VyY2VMb2FkZXI+OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAxYWQ4
NDBiY2RmN2UxZjY3ZDIwMjhlZTBjZTcxOGRjMjFjZGI0MGUxLi42M2FhZDNjYTczZWU5MDJlZGJi
YzRlMGU2MWNmYWYwODU0ZjQwNDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
U3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHAKQEAgLTc1LDggKzc1LDggQEAKICNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FE
RVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFVOVVNFRF9WQVJJQUJMRSh0aGlzKQogI2RlZmluZSBT
VUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgVU5VU0VEX1ZBUklB
QkxFKHRoaXMpCiAjZWxzZQotI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhm
bXQsIC4uLikgUkVMRUFTRV9MT0coUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBS
SXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0l
bHVdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZy
YW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKSwgIyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgU1VCUkVT
T1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9S
KFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JWx1XSBTdWJyZXNvdXJjZUxvYWRl
cjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlm
aWVyKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0Vf
TE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhSZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiXSBTdWJyZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQs
IEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSwgIyNfX1ZB
X0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10
LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0l
IiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNl
SUQ9JSIgUFJJdTY0ICJdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwg
RlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFf
QVJHU19fKQogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE3Miw3ICsxNzIsNyBA
QCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjppbml0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3Qs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYgogICAgICAgICB9CiAgICAgICAgIEFTU0VSVCghcmVh
Y2hlZFRlcm1pbmFsU3RhdGUoKSk7CiAgICAgICAgIG1fc3RhdGUgPSBJbml0aWFsaXplZDsKLSAg
ICAgICAgbV9kb2N1bWVudExvYWRlci0+YWRkU3VicmVzb3VyY2VMb2FkZXIodGhpcyk7CisgICAg
ICAgIG1fZG9jdW1lbnRMb2FkZXItPmFkZFN1YnJlc291cmNlTG9hZGVyKCp0aGlzKTsKICAgICAg
ICAgbV9vcmlnaW4gPSBtX3Jlc291cmNlLT5vcmlnaW4oKTsKICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIodHJ1ZSk7CiAgICAgfSk7CkBAIC0yMTAsNyArMjEwLDcgQEAgdm9pZCBTdWJyZXNvdXJj
ZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVx
dWVzdCwgY28KICAgICAgICAgfQogCiAgICAgICAgIFJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3RJbnRlcm5hbChXVEZNb3ZlKG5ld1JlcXVlc3QpLCByZWRpcmVjdFJlc3BvbnNlLCBbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIHJlZGlyZWN0UmVzcG9uc2VdIChSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIHRyYWNlUG9pbnQo
U3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVudGlmaWVyKCksIFBBR0VfSUQsIEZSQU1FX0lE
KTsKKyAgICAgICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVu
dGlmaWVyKCkudG9VSW50NjQoKSwgUEFHRV9JRCwgRlJBTUVfSUQpOwogCiAgICAgICAgICAgICBp
ZiAocmVhY2hlZFRlcm1pbmFsU3RhdGUoKSkgewogICAgICAgICAgICAgICAgIFNVQlJFU09VUkNF
TE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2VuZFJlcXVlc3RJbnRlcm5hbDogcmVhY2hlZCB0ZXJt
aW5hbCBzdGF0ZTsgY2FsbGluZyBjb21wbGV0aW9uIGhhbmRsZXIiKTsKQEAgLTQ5MSw3ICs0OTEs
NyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbQogICAgICAgICAgICAgLy8gU2luY2UgYSBzdWJy
ZXNvdXJjZSBsb2FkZXIgZG9lcyBub3QgbG9hZCBtdWx0aXBhcnQgc2VjdGlvbnMgcHJvZ3Jlc3Np
dmVseSwgZGF0YSB3YXMgZGVsaXZlcmVkIHRvIHRoZSBsb2FkZXIgYWxsIGF0IG9uY2UuCiAgICAg
ICAgICAgICAvLyBBZnRlciB0aGUgZmlyc3QgbXVsdGlwYXJ0IHNlY3Rpb24gaXMgY29tcGxldGUs
IHNpZ25hbCB0byBkZWxlZ2F0ZXMgdGhhdCB0aGlzIGxvYWQgaXMgImZpbmlzaGVkIgogICAgICAg
ICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICAgICAgICAgIG1fZG9j
dW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydCh0aGlz
KTsKKyAgICAgICAgICAgIG1fZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNo
ZWRMb2FkaW5nT25lUGFydCgqdGhpcyk7CiAgICAgICAgICAgICBkaWRGaW5pc2hMb2FkaW5nT25l
UGFydChlbXB0eU1ldHJpY3MpOwogICAgICAgICB9CiAKQEAgLTc0NSw3ICs3NDUsNyBAQCB2b2lk
IFN1YnJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZQogICAgIH0KIAogICAgIGlmIChtX3Jlc291cmNlLT50eXBlKCkg
IT0gQ2FjaGVkUmVzb3VyY2U6OlR5cGU6Ok1haW5SZXNvdXJjZSkKLSAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKSk7CisgICAgICAgIHRyYWNlUG9p
bnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAKICAg
ICBtX3N0YXRlID0gRmluaXNoaW5nOwogICAgIG1fcmVzb3VyY2UtPmZpbmlzaExvYWRpbmcocmVz
b3VyY2VEYXRhKCksIG5ldHdvcmtMb2FkTWV0cmljcyk7CkBAIC03OTEsNyArNzkxLDcgQEAgdm9p
ZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
ICAgICBtX3N0YXRlID0gRmluaXNoaW5nOwogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAh
PSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50
KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAg
IGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZVRvUmV2YWxpZGF0ZSgpKQogICAgICAgICBNZW1vcnlD
YWNoZTo6c2luZ2xldG9uKCkucmV2YWxpZGF0aW9uRmFpbGVkKCptX3Jlc291cmNlKTsKQEAgLTg0
NCw3ICs4NDQsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRDYW5jZWwoY29uc3QgUmVz
b3VyY2VFcnJvciYpCiAgICAgQVNTRVJUKG1fcmVzb3VyY2UpOwogCiAgICAgaWYgKG1fcmVzb3Vy
Y2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAg
ICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAg
ICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2
NCgpKTsKIAogICAgIG1fcmVzb3VyY2UtPmNhbmNlbExvYWQoKTsKICAgICBub3RpZnlEb25lKExv
YWRDb21wbGV0aW9uVHlwZTo6Q2FuY2VsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhy
ZWFkYWJsZUxvYWRlckNsaWVudC5oCmluZGV4IDYyNWJiN2ViMmU3YjUwNzFjMWQxMmMwNzUyMzZl
MWZiZTZiZWViYTcuLjg0ZDc5YjBjOTlkZjEwZDk5MzgwYjg0ODMxNzM3MWJjMWU4NTczYmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQuaApAQCAt
MzAsMjcgKzMwLDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIFJlc291
cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKLSAgICBjbGFzcyBSZXNvdXJj
ZVRpbWluZzsKLQotICAgIGNsYXNzIFRocmVhZGFibGVMb2FkZXJDbGllbnQgewotICAgICAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KTsgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkU2VuZERh
dGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0ZXNTZW50Ki8sIHVuc2lnbmVkIGxvbmcgbG9uZyAv
KnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0KLQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgLyppZGVudGlmaWVyKi8sIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSB7IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqLCBpbnQgLypkYXRhTGVuZ3RoKi8pIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIC8qaWRlbnRpZmllciovKSB7IH0KLSAgICAg
ICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQotICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9
Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBub3RpZnlJc0RvbmUoYm9vbCkgeyBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsgfQotCi0gICAgcHJvdGVjdGVkOgotICAgICAgICBUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KCkgPSBkZWZhdWx0OwotICAgICAgICB2aXJ0dWFsIH5UaHJlYWRhYmxlTG9hZGVyQ2xpZW50
KCkgPSBkZWZhdWx0OwotICAgIH07CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKK2NsYXNzIFJlc291cmNlVGltaW5nOworCitjbGFzcyBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lk
IGRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyAvKmJ5dGVzU2VudCovLCB1bnNpZ25lZCBs
b25nIGxvbmcgLyp0b3RhbEJ5dGVzVG9CZVNlbnQqLykgeyB9CisKKyAgICB2aXJ0dWFsIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiwgaW50IC8qZGF0YUxlbmd0aCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9p
ZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlk
RmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lk
IG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9CisKK3Byb3RlY3Rl
ZDoKKyAgICBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgPSBkZWZhdWx0OworICAgIHZpcnR1YWwg
flRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1bHQ7Cit9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlci5oCmluZGV4IDhlZmUzOWNmN2I4NWRkOWRkNGY4YjQwOGI0ZWJjNDkx
MDE5MDJhYTQuLjQyYWU2NDkwOWE1ZTBmZTQ0YzZhNWUwMDYwZDU4Yzk2NGVjNTYwNTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3Jh
cHBlci5oCkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fY2xpZW50LT5k
aWRTZW5kRGF0YShieXRlc1NlbnQsIHRvdGFsQnl0ZXNUb0JlU2VudCk7CiAgICAgfQogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKQEAgLTcy
LDcgKzcyLDcgQEAgcHVibGljOgogICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRh
KGRhdGEsIGRhdGFMZW5ndGgpOwogICAgIH0KIAotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgbV9kb25lID0g
dHJ1ZTsKICAgICAgICAgaWYgKG1fY2xpZW50KQpAQCAtOTIsNyArOTIsNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX2NsaWVudC0+ZGlkRmFpbChlcnJvcik7CiAgICAgfQogCi0gICAgdm9pZCBk
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DYW5jZWxsYXRpb24odW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNhbmNlbGxhdGlvbihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAg
ICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNl
KGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCA0NThiNjg5Yjc0Yjk4NDU0MzJkYjRiMDVkNTVj
ODZlOGIwZDJiOGIwLi45MzE2MWM5Y2M1OTg0MjQ1NjUzNTAzYmVkNTYxZGM5ZWMxZGM3NmJkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuY3Bw
CkBAIC0xMTMsNyArMTEzLDcgQEAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJy
aWRnZTo6TWFpblRocmVhZEJyaWRnZShUaHJlYWRhYmxlTG9hZGVyQ2xpZW4KICAgICA6IG1fd29y
a2VyQ2xpZW50V3JhcHBlcigmd29ya2VyQ2xpZW50V3JhcHBlcikKICAgICAsIG1fbG9hZGVyUHJv
eHkobG9hZGVyUHJveHkpCiAgICAgLCBtX3Rhc2tNb2RlKHRhc2tNb2RlLmlzb2xhdGVkQ29weSgp
KQotICAgICwgbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllcihnbG9iYWxTY29wZS5jcmVhdGVVbmlx
dWVJZGVudGlmaWVyKCkpCisgICAgLCBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyIHsgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpIH0KIHsKICAgICBhdXRvKiBzZWN1cml0eU9y
aWdpbiA9IGdsb2JhbFNjb3BlLnNlY3VyaXR5T3JpZ2luKCk7CiAgICAgYXV0byogY29udGVudFNl
Y3VyaXR5UG9saWN5ID0gZ2xvYmFsU2NvcGUuY29udGVudFNlY3VyaXR5UG9saWN5KCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJp
ZGdlOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnkKICAgICB9LCBtX3Rhc2tNb2Rl
KTsKIH0KIAotdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpk
aWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRo
cmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBtX2xv
YWRlclByb3h5LnBvc3RUYXNrRm9yTW9kZVRvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUoW3By
b3RlY3RlZFdvcmtlckNsaWVudFdyYXBwZXIgPSBtYWtlUmVmKCptX3dvcmtlckNsaWVudFdyYXBw
ZXIpLCB3b3JrZXJSZXF1ZXN0SWRlbnRpZmllciA9IG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIs
IGlkZW50aWZpZXIsIHJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmNyb3NzVGhyZWFkRGF0YSgpXSAo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgbXV0YWJsZSB7CiAgICAgICAgIEFTU0VS
VChjb250ZXh0LmlzV29ya2VyR2xvYmFsU2NvcGUoKSB8fCBjb250ZXh0LmlzV29ya2xldEdsb2Jh
bFNjb3BlKCkpOwpAQCAtMjQyLDcgKzI0Miw3IEBAIHZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRl
cjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCogZGF0CiAg
ICAgfSwgbV90YXNrTW9kZSk7CiB9CiAKLXZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFp
blRocmVhZEJyaWRnZTo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
Cit2b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9s
b2FkaW5nRmluaXNoZWQgPSB0cnVlOwogICAgIG1fbG9hZGVyUHJveHkucG9zdFRhc2tGb3JNb2Rl
VG9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZShbcHJvdGVjdGVkV29ya2VyQ2xpZW50V3JhcHBl
ciA9IG1ha2VSZWYoKm1fd29ya2VyQ2xpZW50V3JhcHBlciksIHdvcmtlclJlcXVlc3RJZGVudGlm
aWVyID0gbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllciwgbmV0d29ya0xvYWRNZXRyaWNzID0gbV9u
ZXR3b3JrTG9hZE1ldHJpY3MuaXNvbGF0ZWRDb3B5KCksIGlkZW50aWZpZXJdIChTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBjb250ZXh0KSBtdXRhYmxlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IDU3NjI2MGVhN2Y5M2VmZjIzYjRiNDdk
MWVhOGUwOTBjY2Q1YjQ0NWYuLjcyM2I0NTZlYzhlOWUzMDZmYzE4Y2M4ZjM2ZGU2ZGNkOGFlMzA0
NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIu
aApAQCAtMzEsNiArMzEsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJOZXR3b3JrTG9h
ZE1ldHJpY3MuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJUaHJlYWRhYmxlTG9hZGVyLmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVu
dC5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmgiCkBAIC0zOCwx
MDIgKzM5LDEwMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDb250ZW50
U2VjdXJpdHlQb2xpY3k7Ci0gICAgY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOwotICAg
IGNsYXNzIFJlc291cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwotICAgIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwotICAgIGNsYXNzIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3Bl
OwotICAgIGNsYXNzIFdvcmtlckxvYWRlclByb3h5OwotCi0gICAgY2xhc3MgV29ya2VyVGhyZWFk
YWJsZUxvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBw
dWJsaWMgVGhyZWFkYWJsZUxvYWRlciB7Ci0gICAgICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OworY2xhc3MgQ29udGVudFNlY3VyaXR5UG9saWN5OworY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyOworY2xhc3MgUmVzb3VyY2VFcnJvcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2Ns
YXNzIFNlY3VyaXR5T3JpZ2luOworY2xhc3MgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Citj
bGFzcyBXb3JrZXJMb2FkZXJQcm94eTsKKworY2xhc3MgV29ya2VyVGhyZWFkYWJsZUxvYWRlciA6
IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBwdWJsaWMgVGhyZWFk
YWJsZUxvYWRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAg
c3RhdGljIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSYsIFJlc291cmNlUmVxdWVzdCYmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmKTsKKyAgICBzdGF0aWMgUmVmPFdvcmtlclRocmVh
ZGFibGVMb2FkZXI+IGNyZWF0ZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgV29ya2VyT3JX
b3JrbGV0R2xvYmFsU2NvcGUsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmIGNsaWVudCwgY29uc3Qg
U3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3QgVGhyZWFk
YWJsZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpCisgICAg
eworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyKFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBjbGllbnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJlcXVl
c3QpLCBvcHRpb25zLCByZWZlcnJlcikpOworICAgIH0KKworICAgIH5Xb3JrZXJUaHJlYWRhYmxl
TG9hZGVyKCk7CisKKyAgICB2b2lkIGNhbmNlbCgpIG92ZXJyaWRlOworCisgICAgYm9vbCBkb25l
KCkgY29uc3QgeyByZXR1cm4gbV93b3JrZXJDbGllbnRXcmFwcGVyLT5kb25lKCk7IH0KKworICAg
IHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKTsKKworICAgIHVzaW5nIFJlZkNvdW50ZWQ8
V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFdvcmtl
clRocmVhZGFibGVMb2FkZXI+OjpkZXJlZjsKKworcHJvdGVjdGVkOgorICAgIHZvaWQgcmVmVGhy
ZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0KKyAgICB2b2lkIGRlcmVmVGhyZWFk
YWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorCitwcml2YXRlOgorICAgIC8vIENy
ZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNvbW11bmljYXRp
b24gYmV0d2VlbgorICAgIC8vIHRoZSBtYWluIHRocmVhZCBhbmQgdGhlIHdvcmtlciBjb250ZXh0
J3MgdGhyZWFkIHdoZXJlIFdvcmtlclRocmVhZGFibGVMb2FkZXIgcnVucy4KKyAgICAvLworICAg
IC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGltZXMgb2YgaXRlbXMgdXNlZCBpbiBj
YWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKKyAgICAvLworICAgIC8vIGFsbCBjYXNl
cy4gQWxsIHRhc2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgY29udGV4dCdzIHRocmVhZCBhcmUg
b2sgYmVjYXVzZQorICAgIC8vICAgIHRoZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFp
blRocmVhZERlc3Ryb3kiLCBzbyBNYWluVGhyZWFkQnJpZGdlIGlzCisgICAgLy8gICAgYXJvdW5k
IGZvciBhbGwgdGFza3MgdGhhdCB1c2UgaXQgb24gdGhlIG1haW4gdGhyZWFkLgorICAgIC8vCisg
ICAgLy8gY2FzZSAxLiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KKyAgICAvLyAgICBJbiB0
aGlzIGNhc2UsIG5vIG1vcmUgdGFza3MgYXJlIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0
J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIKKyAgICAvLyAgICBjb250ZXh0J3MgdGhyZWFkIC0tIFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlUHJveHkgaW1wbGVtZW50YXRpb24gZW5mb3JjZXMgdGhp
cy4KKyAgICAvLworICAgIC8vIGNhc2UgMi4geGhyIGdldHMgYWJvcnRlZCBhbmQgdGhlIHdvcmtl
ciBjb250ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgorICAgIC8vICAgIFRoZSBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlciBoYXMgdGhlIHVuZGVybHlpbmcgY2xpZW50IGNsZWFyZWQsIHNvIG5v
IG1vcmUgY2FsbHMKKyAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiBBbGwgdGFza3MgcG9zdGVkIGZy
b20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlciBjb250ZXh0J3MKKyAg
ICAvLyAgICB0aHJlYWQgY29udGFpbiB0aGUgUmVmUHRyPFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyPiBvYmplY3QsIHNvIHRoZQorICAgIC8vICAgIFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0YXNrcyBhcmUgZXhlY3V0ZWQuCisg
ICAgY2xhc3MgTWFpblRocmVhZEJyaWRnZSA6IHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHkoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZVJlcXVlc3QmJiwgVGhy
ZWFkYWJsZUxvYWRlckNsaWVudCYsIGNvbnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJik7Ci0g
ICAgICAgIHN0YXRpYyBSZWY8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4gY3JlYXRlKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSwgVGhyZWFkYWJs
ZUxvYWRlckNsaWVudCYgY2xpZW50LCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0LCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucywg
Y29uc3QgU3RyaW5nJiByZWZlcnJlcikKLSAgICAgICAgewotICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgV29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxT
Y29wZSwgY2xpZW50LCB0YXNrTW9kZSwgV1RGTW92ZShyZXF1ZXN0KSwgb3B0aW9ucywgcmVmZXJy
ZXIpKTsKLSAgICAgICAgfQotCi0gICAgICAgIH5Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyKCk7Ci0K
LSAgICAgICAgdm9pZCBjYW5jZWwoKSBvdmVycmlkZTsKLQotICAgICAgICBib29sIGRvbmUoKSBj
b25zdCB7IHJldHVybiBtX3dvcmtlckNsaWVudFdyYXBwZXItPmRvbmUoKTsgfQorICAgICAgICAv
LyBBbGwgZXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAgICAgICBN
YWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29ya2VyTG9h
ZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5nUmVmZXJy
ZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7CisgICAgICAgIHZvaWQgY2FuY2VsKCk7
CisgICAgICAgIHZvaWQgZGVzdHJveSgpOworICAgICAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKTsK
IAotICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9uZSk7CisgICAgcHJpdmF0ZToK
KyAgICAgICAgLy8gRXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAg
ICAgICB2b2lkIGNsZWFyQ2xpZW50V3JhcHBlcigpOworCisgICAgICAgIC8vIEFsbCBleGVjdXRl
ZCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQg
bG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2Vu
dCkgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgICAg
ICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQgZGF0YUxlbmd0aCkgb3Zl
cnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZpbmlzaFRpbWluZyhjb25zdCBSZXNvdXJj
ZVRpbWluZyYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9u
ZSkgZmluYWw7CisKKyAgICAgICAgLy8gT25seSB0byBiZSB1c2VkIG9uIHRoZSBtYWluIHRocmVh
ZC4KKyAgICAgICAgUmVmUHRyPERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcj4gbV9tYWluVGhyZWFk
TG9hZGVyOworICAgICAgICBib29sIG1fbG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKKworICAg
ICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlciBpcyB0byBiZSB1c2VkIG9uIHRo
ZSB3b3JrZXIgY29udGV4dCB0aHJlYWQuCisgICAgICAgIC8vIFRoZSByZWYgY291bnRpbmcgaXMg
ZG9uZSBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNs
aWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKKworICAgICAgICAvLyBNYXkgYmUg
dXNlZCBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBXb3JrZXJMb2FkZXJQcm94eSYgbV9sb2Fk
ZXJQcm94eTsKKworICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICAg
ICAgU3RyaW5nIG1fdGFza01vZGU7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBt
X3dvcmtlclJlcXVlc3RJZGVudGlmaWVyOworICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbV9u
ZXR3b3JrTG9hZE1ldHJpY3M7CisgICAgfTsKIAotICAgICAgICB1c2luZyBSZWZDb3VudGVkPFdv
cmtlclRocmVhZGFibGVMb2FkZXI+OjpyZWY7Ci0gICAgICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29y
a2VyVGhyZWFkYWJsZUxvYWRlcj46OmRlcmVmOworICAgIFdvcmtlclRocmVhZGFibGVMb2FkZXIo
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFRocmVhZGFibGVM
b2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7CiAKLSAgICBwcm90ZWN0ZWQ6
Ci0gICAgICAgIHZvaWQgcmVmVGhyZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0K
LSAgICAgICAgdm9pZCBkZXJlZlRocmVhZGFibGVMb2FkZXIoKSBvdmVycmlkZSB7IGRlcmVmKCk7
IH0KKyAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5hbDsKIAotICAgIHByaXZhdGU6Ci0gICAg
ICAgIC8vIENyZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNv
bW11bmljYXRpb24gYmV0d2VlbgotICAgICAgICAvLyB0aGUgbWFpbiB0aHJlYWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCdzIHRocmVhZCB3aGVyZSBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIHJ1bnMu
Ci0gICAgICAgIC8vCi0gICAgICAgIC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGlt
ZXMgb2YgaXRlbXMgdXNlZCBpbiBjYWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKLSAg
ICAgICAgLy8KLSAgICAgICAgLy8gYWxsIGNhc2VzLiBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhl
IHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIGFyZSBvayBiZWNhdXNlCi0gICAgICAgIC8vICAgIHRo
ZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFpblRocmVhZERlc3Ryb3kiLCBzbyBNYWlu
VGhyZWFkQnJpZGdlIGlzCi0gICAgICAgIC8vICAgIGFyb3VuZCBmb3IgYWxsIHRhc2tzIHRoYXQg
dXNlIGl0IG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gY2FzZSAx
LiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KLSAgICAgICAgLy8gICAgSW4gdGhpcyBjYXNl
LCBubyBtb3JlIHRhc2tzIGFyZSBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIG9iamVjdCdzIHRocmVh
ZCB0byB0aGUgd29ya2VyCi0gICAgICAgIC8vICAgIGNvbnRleHQncyB0aHJlYWQgLS0gV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGVQcm94eSBpbXBsZW1lbnRhdGlvbiBlbmZvcmNlcyB0aGlzLgot
ICAgICAgICAvLwotICAgICAgICAvLyBjYXNlIDIuIHhociBnZXRzIGFib3J0ZWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCBjb250aW51ZXMgcnVubmluZy4KLSAgICAgICAgLy8gICAgVGhlIFRocmVh
ZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGhhcyB0aGUgdW5kZXJseWluZyBjbGllbnQgY2xlYXJl
ZCwgc28gbm8gbW9yZSBjYWxscwotICAgICAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiAgQWxsIHRh
c2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIg
Y29udGV4dCdzCi0gICAgICAgIC8vICAgIHRocmVhZCBjb250YWluIHRoZSBSZWZQdHI8VGhyZWFk
YWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG9iamVjdCwgc28gdGhlCi0gICAgICAgIC8vICAgIFRo
cmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0
YXNrcyBhcmUgZXhlY3V0ZWQuCi0gICAgICAgIGNsYXNzIE1haW5UaHJlYWRCcmlkZ2UgOiBwdWJs
aWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7Ci0gICAgICAgIHB1YmxpYzoKLSAgICAgICAgICAg
IC8vIEFsbCBleGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCi0gICAgICAg
ICAgICBNYWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29y
a2VyTG9hZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3Qm
JiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5n
UmVmZXJyZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7Ci0gICAgICAgICAgICB2b2lk
IGNhbmNlbCgpOwotICAgICAgICAgICAgdm9pZCBkZXN0cm95KCk7Ci0gICAgICAgICAgICB2b2lk
IGNvbXB1dGVJc0RvbmUoKTsKLQotICAgICAgICBwcml2YXRlOgotICAgICAgICAgICAgLy8gRXhl
Y3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgotICAgICAgICAgICAgdm9pZCBj
bGVhckNsaWVudFdyYXBwZXIoKTsKLQotICAgICAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRo
ZSBtYWluIHRocmVhZC4KLSAgICAgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQgbG9u
ZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2VudCkg
b3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICAg
ICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCosIGludCBkYXRhTGVuZ3Ro
KSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoVGlt
aW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgb3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sIGlzRG9uZSkgZmluYWw7Ci0KLSAgICAgICAgICAgIC8vIE9ubHkgdG8g
YmUgdXNlZCBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8RG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyPiBtX21haW5UaHJlYWRMb2FkZXI7Ci0gICAgICAgICAgICBib29sIG1f
bG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKLQotICAgICAgICAgICAgLy8gVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIgaXMgdG8gYmUgdXNlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQgdGhy
ZWFkLgotICAgICAgICAgICAgLy8gVGhlIHJlZiBjb3VudGluZyBpcyBkb25lIG9uIGVpdGhlciB0
aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+
IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKLQotICAgICAgICAgICAgLy8gTWF5IGJlIHVzZWQgb24g
ZWl0aGVyIHRocmVhZC4KLSAgICAgICAgICAgIFdvcmtlckxvYWRlclByb3h5JiBtX2xvYWRlclBy
b3h5OwotCi0gICAgICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAg
ICAgICAgIFN0cmluZyBtX3Rhc2tNb2RlOwotICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtX3dv
cmtlclJlcXVlc3RJZGVudGlmaWVyIHsgMCB9OwotICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRy
aWNzIG1fbmV0d29ya0xvYWRNZXRyaWNzOwotICAgICAgICB9OwotCi0gICAgICAgIFdvcmtlclRo
cmVhZGFibGVMb2FkZXIoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50JiwgY29uc3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNv
bnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7Ci0K
LSAgICAgICAgdm9pZCBjb21wdXRlSXNEb25lKCkgZmluYWw7Ci0KLSAgICAgICAgUmVmPFdvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlPiBtX1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlOwotICAg
ICAgICBSZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3Jh
cHBlcjsKLSAgICAgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Ci0gICAgfTsKKyAgICBS
ZWY8V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGU7CisgICAgUmVmPFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyPiBtX3dvcmtlckNsaWVu
dFdyYXBwZXI7CisgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Cit9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCmluZGV4IDY4ZjIyNDMxMTJmODY5NWRiNmZk
NjlmNWY4MzI1N2Q3NjI3OTYwOTkuLjRiYzJiMDkyNzVmMTM4MjAzNjlhOTRiZTA4ZmZjYjhkMTJm
YjhiOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBAIC00MzcsNyArNDM3LDcgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRh
dGVPcHRpb24gdXAKIAogICAgIGF1dG8gcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoVVJMIHsgbV9t
YW5pZmVzdFVSTCB9LCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+bWFuaWZlc3RSZXNv
dXJjZSgpIDogbnVsbHB0cik7CiAKLSAgICBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIgPSBt
X2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAg
IG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6
Z2VuZXJhdGUoKTsKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVz
dChtX2ZyYW1lLmdldCgpLCBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIsIG1fZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCksIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UgeyB9LCBu
dWxscHRyKTsKIAogICAgIG1fbWFuaWZlc3RMb2FkZXIgPSBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VMb2FkZXI6OmNyZWF0ZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OlR5cGU6Ok1hbmlmZXN0
LCBkb2N1bWVudExvYWRlci5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLCBXVEZNb3ZlKHJlcXVlc3Qp
LCBbdGhpc10gKGF1dG8mJiByZXNvdXJjZU9yRXJyb3IpIHsKQEAgLTg5OCw3ICs4OTgsNyBAQCB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RhcnRMb2FkaW5nRW50cnkoKQogCiAgICAgYXV0
byByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChVUkwgeyB7IH0sIGZpcnN0UGVuZGluZ0VudHJ5VVJM
IH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBl
bmRpbmdFbnRyeVVSTCkgOiBudWxscHRyKTsKIAotICAgIG1fY3VycmVudFJlc291cmNlSWRlbnRp
ZmllciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVy
KCk7CisgICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNl
bmRSZXF1ZXN0KG1fZnJhbWUuZ2V0KCksIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbV9m
cmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25z
ZSB7IH0sIG51bGxwdHIpOwogCiAgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqbV9mcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCA2MzcxZmE1OGViYzY1
NDA5NTAxMmUwM2E0ZTdkNGU2NGI0MGIxYjlhLi5iOWJmODc2MzhmMzAzYWVhOWM4NmE2NDVlZThj
MWY5MjkyNTYzOGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xODEsNyArMTgxLDcgQEAgcHJpdmF0ZToK
ICAgICAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX2N1cnJlbnRSZXNv
dXJjZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyPiBtX2VudHJ5
TG9hZGVyOwotICAgIHVuc2lnbmVkIGxvbmcgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyOwor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXI7
CiAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX21hbmlmZXN0UmVzb3Vy
Y2U7CiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlcj4gbV9tYW5pZmVz
dExvYWRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
YXdSZXNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVz
b3VyY2UuY3BwCmluZGV4IDkwMDlhMzliNzVjNzVhMTIxNmE3ZWJhN2Q2Y2ZhYjlmOTY3N2VlZmUu
LjkyYjA4MzY5NzU4ODg0NDA5MTkzOWUzZWVkNzlkNzdmMTgzOTU2MmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcApAQCAtNDMsNyAr
NDMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRS
YXdSZXNvdXJjZShDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBUeXBlIHR5cGUsIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgQ29va2llSmFyKiBjb29raWVKYXIpCiAgICAg
OiBDYWNoZWRSZXNvdXJjZShXVEZNb3ZlKHJlcXVlc3QpLCB0eXBlLCBzZXNzaW9uSUQsIGNvb2tp
ZUphcikKLSAgICAsIG1faWRlbnRpZmllcigwKQogICAgICwgbV9hbGxvd0VuY29kZWREYXRhUmVw
bGFjZW1lbnQodHJ1ZSkKIHsKICAgICBBU1NFUlQoaXNNYWluT3JNZWRpYU9ySWNvbk9yUmF3UmVz
b3VyY2UoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmF3UmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNv
dXJjZS5oCmluZGV4IGZkNGEyNjliZDVhMmJiNjA0OTg1YzQ3ZDZiMzhhNzkzMDc2ZmY5NGIuLjg0
ZTBkODQ0ZDU3MTA5OTUzYWU2YmZmNjU1NjU5OTUzZTI4YmE2OWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCkBAIC0zOSw3ICszOSw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldERhdGFCdWZmZXJpbmdQb2xpY3koRGF0YUJ1ZmZlcmluZ1Bv
bGljeSk7CiAKICAgICAvLyBGSVhNRTogVGhpcyBpcyBleHBvc2VkIGZvciB0aGUgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uIGZvciBwcmVmbGlnaHRzIGluIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci4gSXQncyBhbHNvIHJlYWxseSBsYW1lLgotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2
b2lkIGNsZWFyKCk7CiAKQEAgLTczLDcgKzczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHByZXZp
ZXdSZXNwb25zZVJlY2VpdmVkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICNlbmRp
ZgogCi0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBib29sIG1fYWxsb3dFbmNvZGVkRGF0YVJlcGxh
Y2VtZW50OwogICAgIGJvb2wgbV9pbkluY3JlbWVudGFsRGF0YU5vdGlmeSB7IGZhbHNlIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4
IDg2Zjc3MjBiODNlYjAzZTExOGNlZWQ2ZjIzNDE4YjhiMjY1ZGY0MjYuLjVhYjRhNDhkMmZjYjYw
ZTNjOTczMmVmYzAwZDVjZGZiN2Y5ZTc1MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgQ2FjaGVk
UmVzb3VyY2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNlTG9hZGVy
KQogICAgICAgICBBU1NFUlQobV9vcmlnaW5hbFJlcXVlc3QpOwogICAgICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKIAotICAgICAg
ICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3Jl
YXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgICAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKCZmcmFtZSwgaWRlbnRpZmllciwgZnJhbWVM
b2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZTo6QmVhY29uKTsKIAogICAgICAgICBwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+c3RhcnRQaW5nTG9hZChmcmFtZSwgcmVxdWVzdCwgbV9vcmln
aW5hbFJlcXVlc3QtPmh0dHBIZWFkZXJGaWVsZHMoKSwgbV9vcHRpb25zLCBtX29wdGlvbnMuY29u
dGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbiwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZN
b3ZlKHByb3RlY3RlZFRoaXMpLCBwcm90ZWN0ZWRGcmFtZSA9IG1ha2VSZWYoZnJhbWUpLCBpZGVu
dGlmaWVyXSAoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5oCmluZGV4IDVmOTU2OWVjYWIxM2NmYzJmZmFjZTdmZjExZTc4NjE3MmVlZTczMDAuLjM5
NjAwMjgzMmNjMTUzYzU5MDQ3OGNhMjUxODEzZTZjMDM1YmMyNzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5j
bHVkZSAiRnJhbWVMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNp
bmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVy
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAg
LTI4Niw3ICsyODcsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0cnlSZXBs
YWNlRW5jb2RlZERhdGEoU2hhcmVkQnVmZmVyJik7CiAjZW5kaWYKIAotICAgIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIoKSBjb25zdCB7IHJldHVy
biBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOyB9CisgICAgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
cjsgfQogCiAgICAgdm9pZCBzZXRPcmlnaW5hbFJlcXVlc3Qoc3RkOjp1bmlxdWVfcHRyPFJlc291
cmNlUmVxdWVzdD4mJiBvcmlnaW5hbFJlcXVlc3QpIHsgbV9vcmlnaW5hbFJlcXVlc3QgPSBXVEZN
b3ZlKG9yaWdpbmFsUmVxdWVzdCk7IH0KICAgICBjb25zdCBzdGQ6OnVuaXF1ZV9wdHI8UmVzb3Vy
Y2VSZXF1ZXN0PiYgb3JpZ2luYWxSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW5hbFJl
cXVlc3Q7IH0KQEAgLTM0Miw3ICszNDMsNyBAQCBwcml2YXRlOgogICAgIFBBTDo6U2Vzc2lvbklE
IG1fc2Vzc2lvbklEOwogICAgIFJlZlB0cjxjb25zdCBDb29raWVKYXI+IG1fY29va2llSmFyOwog
ICAgIFdhbGxUaW1lIG1fcmVzcG9uc2VUaW1lc3RhbXA7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lk
ZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OworICAgIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
OwogCiAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZUNsaWVudCosIHN0ZDo6dW5pcXVlX3B0cjxD
YWxsYmFjaz4+IG1fY2xpZW50c0F3YWl0aW5nQ2FsbGJhY2s7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dFNvdXJjZS5jcHAKaW5kZXggN2I3N2U0MDdlZTVkMDhhYjM3ODRkMDg5OWNmYTMzZjAxNzdmMDY0
OC4uNjAyNjMxYmI3Y2QxMDg2MGIxYTMxMjEwNDNjOTdkOGVmZTQ0NzYxZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudFNvdXJjZS5jcHAKQEAgLTE4OCw3ICsxODgsNyBAQCBib29sIEV2ZW50U291cmNl
OjpyZXNwb25zZUlzVmFsaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX3N0
YXRlID09IENPTk5FQ1RJTkcpOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdodCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWlu
dDhfdCogZGF0YSwgaW50IGxlbmd0aCkKICAgICBwYXJzZUV2ZW50U3RyZWFtKCk7CiB9CiAKLXZv
aWQgRXZlbnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgRXZl
bnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewog
ICAgIEFTU0VSVChtX3N0YXRlID09IE9QRU4pOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdo
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmgKaW5kZXggZTEwZDhkOTE2ZmIwZjI1ZmJlYTNm
N2FjMmFmNTVmNTcwYjIwZGNhNi4uZDAxMmQzNzdkMTk3Njc1ZjBmZTExNDVmMTcxOWYxN2ZkZGJm
ZWEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaApAQCAtODMsOSArODMsOSBAQCBwcml2
YXRlOgogICAgIHZvaWQgZG9FeHBsaWNpdExvYWRDYW5jZWxsYXRpb24oKTsKIAogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25l
ZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50
KSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgZmluYWw7
CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmlu
YWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAg
IC8vIEFjdGl2ZURPTU9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwCmluZGV4IGM0OGEy
OTZjY2MwMmU1N2JjMmRiZDYwMTc0NDQ1OTdjYzlhYTMwZDcuLmU5N2EwNThkZjZjOGJkMmZhZDNj
MWEzYjI4M2RmN2U2Njk3OTUxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKQEAgLTE5
Niw3ICsxOTYsNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGJvb2wg
aXNPbkxpbmUpCiAgICAgbV9jb250ZXh0UHJveHkubm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGlz
T25MaW5lKTsKIH0KIAotdm9pZCBXb3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBX
b3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgY29uc3QgVVJM
JiByZXNwb25zZVVSTCA9IHJlc3BvbnNlLnVybCgpOwogICAgIGlmICghcmVzcG9uc2VVUkwucHJv
dG9jb2xJc0Jsb2IoKSAmJiAhcmVzcG9uc2VVUkwucHJvdG9jb2xJcygiZmlsZSIpICYmICFTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKHJlc3BvbnNlVVJMKS0+aXNVbmlxdWUoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlci5oCmluZGV4IGMzMWU3OWJkNTVmZjgyMDhmYzdiNDJkN2U5ODJiYzNkNTFhY2IxMjMu
LmJkMjllNTdmZTRmMmEyNjc4MzU4ZmVkMWUxNzNhZmMyYmQ2ODdlYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuaApAQCAtODcsNyArODcsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBub3RpZnlO
ZXR3b3JrU3RhdGVDaGFuZ2UoYm9vbCBpc09ubGluZSk7CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeUZp
bmlzaGVkKCkgZmluYWw7CiAKICAgICAvLyBBY3RpdmVET01PYmplY3QuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKaW5kZXggZmFiYmQwM2Vi
MGFkYzEyMDRlMTA0MWExMDhlMDViNzZlNDU0NTUwNy4uZjE1N2QzMDk3ZGY2OTg3YTRiNjM0Yjdm
ZDYzMzM5ZTkwOWQ4NmU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJGb250TG9hZFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
Rm9udExvYWRSZXF1ZXN0LmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgV29ya2VyRm9udExv
YWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBjbGllbnQpCiAgICAg
fQogfQogCi12b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmIChyZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYgcmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSkKICAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKQEAgLTEyMiw3ICsxMjIsNyBA
QCB2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhf
dCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCiAgICAgbV9kYXRhLT5hcHBlbmQoZGF0YSwgZGF0YUxl
bmd0aCk7CiB9CiAKLXZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5n
KHVuc2lnbmVkIGxvbmcpCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9pc0xvYWRpbmcgPSBmYWxz
ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgK
aW5kZXggMTVjNDUxMzgwMDUwNGFiMDNkNDkxNzliYjU0ZTgyMDBlMmQ0OTk4ZC4uYWY2OTIwNjMw
MmRjMWJhZWQ1OTkwNDRlN2I3NjVlN2JjNTAyOGY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC02MCw5ICs2MCw5IEBAIHByaXZhdGU6
CiAKICAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgZmluYWwgeyByZXR1
cm4gdHJ1ZTsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBk
YXRhLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAgIFVSTCBtX3VybDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCBlNDc5
ZGRlYTA0ZWE1ZTFlMjY2ZTUxNWFmOTJjZWQzZjk5NTdlYzU2Li5iOTcwY2RlNDFlN2M1NDExMjEw
MjUyZTY1YTE4ZTQxYzZiOTM5ZDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oCkBAIC01NCw4ICs1NCw2IEBAIHB1YmxpYzoK
ICAgICBKU0M6OlZNJiB2bSgpIGZpbmFsOwogICAgIFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXIm
IGluc3BlY3RvckNvbnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiAqbV9pbnNwZWN0b3JDb250cm9s
bGVyOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKSB7IHJl
dHVybiBtX3VuaXF1ZUlkZW50aWZpZXIrKzsgfQotCiAgICAgU2NyaXB0TW9kdWxlTG9hZGVyJiBt
b2R1bGVMb2FkZXIoKSB7IHJldHVybiAqbV9tb2R1bGVMb2FkZXI7IH0KIAogICAgIC8vIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQuCkBAIC05OSw3ICs5Nyw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFdvcmtlckV2ZW50TG9vcD4gbV9ldmVudExvb3A7CiAgICAgc3RkOjp1bmlxdWVfcHRyPEV2ZW50
TG9vcFRhc2tHcm91cD4gbV9kZWZhdWx0VGFza0dyb3VwOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxX
b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyPiBtX2luc3BlY3RvckNvbnRyb2xsZXI7Ci0gICAgdW5z
aWduZWQgbG9uZyBtX3VuaXF1ZUlkZW50aWZpZXIgeyAxIH07CiAgICAgYm9vbCBtX2lzQ2xvc2lu
ZyB7IGZhbHNlIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclNjcmlwdExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlw
dExvYWRlci5jcHAKaW5kZXggNzNhZTdhYmI3MTNjNmFmNjk0NWI4ZDUxZTBhMGU3Zjk3OWIxMTVm
MS4uYmY1YTQ0ZmUzNDhkMmZmY2U5MTZmYjE5NDkxNWU2N2JmZGE5YWVjMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNwcApAQCAtMTc4LDcgKzE3OCw3
IEBAIFJlc291cmNlRXJyb3IgV29ya2VyU2NyaXB0TG9hZGVyOjp2YWxpZGF0ZVdvcmtlclJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBX
b3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3JrZXJTY3Jp
cHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9lcnJv
ciA9IHZhbGlkYXRlV29ya2VyUmVzcG9uc2UocmVzcG9uc2UsIG1fZGVzdGluYXRpb24pOwogICAg
IGlmICghbV9lcnJvci5pc051bGwoKSkgewpAQCAtMjIxLDcgKzIyMSw3IEBAIHZvaWQgV29ya2Vy
U2NyaXB0TG9hZGVyOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgbGVu
KQogICAgIG1fc2NyaXB0LmFwcGVuZChtX2RlY29kZXItPmRlY29kZShkYXRhLCBsZW4pKTsKIH0K
IAotdm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQordm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKG1fZmFpbGVk
KSB7CiAgICAgICAgIG5vdGlmeUVycm9yKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJTY3JpcHRMb2FkZXIuaAppbmRleCAzZWU0ZGE2YzUwNmNiZmQ2ZWI4NzVkOWMyNzQ5OGYxM2Yz
YzdhMTE5Li5lYTUzODBmYmVlZjg3NTQwMzE2YTZmYTkyNzhjYzIxN2M4OTMxNGUwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmgKQEAgLTc1LDEyICs3NSwx
MiBAQCBwdWJsaWM6CiAgICAgY29uc3QgQ2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8o
KSBjb25zdCB7IHJldHVybiBtX2NlcnRpZmljYXRlSW5mbzsgfQogICAgIGNvbnN0IFN0cmluZyYg
cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VNSU1FVHlwZTsgfQog
ICAgIGJvb2wgZmFpbGVkKCkgY29uc3QgeyByZXR1cm4gbV9mYWlsZWQ7IH0KLSAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQogICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKCkgY29uc3QgeyByZXR1
cm4gbV9lcnJvcjsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
Y2FuY2VsKCk7CkBAIC0xMTAsNyArMTEwLDcgQEAgcHJpdmF0ZToKICAgICBDb250ZW50U2VjdXJp
dHlQb2xpY3lSZXNwb25zZUhlYWRlcnMgbV9jb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgU3Ry
aW5nIG1fcmVmZXJyZXJQb2xpY3k7CiAgICAgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSBtX2Ny
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3k7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIg
eyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBi
b29sIG1fZmFpbGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fZmluaXNoaW5nIHsgZmFsc2UgfTsK
ICAgICBib29sIG1faXNSZWRpcmVjdGVkIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlckNsaWVudC5oCmluZGV4IDI3NGNlNDhlMWQ2ZjNm
YjA2OTRkMjI1NmQxNmYzNWVhYTM1OTc2NWYuLjE1YjMyNWU0NzVmNGM5YmJiNGYyOTgyODgxZTQ1
N2Y2YzRjZmY3NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2Ny
aXB0TG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaApAQCAtMzIsNyArMzIsNyBAQCBjbGFzcyBSZXNvdXJjZVJlc3BvbnNl
OwogCiBjbGFzcyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQgewogcHVibGljOgotICAgIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZCgpID0gMDsKIAogcHJvdGVjdGVk
OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJKb2IuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuY3BwCmluZGV4IDg2N2I4Njk0NzUzNDRmY2UzM2NjZGE5OWY3ZWM5MGNmNDc3MTNkNWIuLjY5
ZWY5ZDcwN2ZjNDNkNDdjMmUyMjY1YWExNDk2MzRlM2JiMDE4ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAKQEAgLTE0MCw3
ICsxNDAsNyBAQCBSZXNvdXJjZUVycm9yIFNlcnZpY2VXb3JrZXJKb2I6OnZhbGlkYXRlU2Vydmlj
ZVdvcmtlclJlc3BvbnNlKGNvbnN0IFNlcnZpY2VXb3JrZQogICAgIHJldHVybiB7IH07CiB9CiAK
LXZvaWQgU2VydmljZVdvcmtlckpvYjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBTZXJ2aWNlV29ya2VySm9i
OjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBBU1NFUlQobV9jcmVhdGlvblRocmVhZC5w
dHIoKSA9PSAmVGhyZWFkOjpjdXJyZW50KCkpOwogICAgIEFTU0VSVCghbV9jb21wbGV0ZWQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
aW5kZXggMDdjY2I3NDcwMmU1NDAwNjUwYTY2Mjg1NDNlODMzYzU0NjRmOWJiYi4uN2M1OGE0NmMy
NDIwNTgyMGFiMDEwOWMxZTUzY2M2ZGVhZGJlYmY4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCkBAIC03NCw3ICs3NCw3IEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICAvLyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQKLSAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAg
ICB2b2lkIG5vdGlmeUZpbmlzaGVkKCkgZmluYWw7CiAKICAgICBTZXJ2aWNlV29ya2VySm9iQ2xp
ZW50JiBtX2NsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDI1
YmY4MjAwOWUzYWE4MmMxMzhjMTc1NzAyYjY0MGE0N2FiM2Y5OWEuLjYyZjcwZWViODAxZDg0ODRl
MWE0ODk1ZjdkMzQ2YzFiNGU0Yzc4ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9Y
TUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0
LmNwcApAQCAtOTI2LDcgKzkyNiw3IEBAIHZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiAgICAgbmV0d29ya0Vycm9yKCk7CiB9CiAKLXZvaWQg
WE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgWE1M
SHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIGF1dG8gcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOwogCkBAIC05NzAsNyAr
OTcwLDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBs
b25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb24KICAgICB9CiB9CiAKLXZvaWQgWE1MSHR0
cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQogewogICAgIG1fcmVzcG9uc2UgPSByZXNwb25zZTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmgKaW5kZXggYzA0YTE2ODk2MDliNmZiOTFhNjgwYzk4ZjdlMDczMmE3NDhm
OWVmMi4uOGY2ZTg5MjYwZGVjMTY3NWVkZmNlZjU4NGIwMzBkODZjNzY2ODgzOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKQEAgLTE2MSw5ICsxNjEsOSBAQCBwcml2YXRlOgogCiAg
ICAgLy8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAogICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWdu
ZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0Jl
U2VudCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sKSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRl
eCA1ZGQ4YjM1NjgzZDU4OGYxZTdkNzJjYjE4MTIzYzI2Njc2NWRlNjIzLi5iYjA1ZjBlZTUyNGY1
NTQ3MjJlM2VhYTdlZTVkZDFiMGUxYTRlNWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNw
cApAQCAtMjA2LDcgKzIwNiw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvCiAgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBSRUxFQVNFX0FTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGRlY29kZXIuZGVzdGlu
YXRpb25JRCgpKTsKLSAgICAgICAgaWYgKGF1dG8qIGxvYWRlciA9IG1fbmV0d29ya1Jlc291cmNl
TG9hZGVycy5nZXQoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKQorICAgICAgICBpZiAoYXV0byog
bG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldChtYWtlT2JqZWN0SWRlbnRpZmll
cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4oZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKSkKICAg
ICAgICAgICAgIGxvYWRlci0+ZGlkUmVjZWl2ZU5ldHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00NTksNyAr
NDU5LDcgQEAgTmV0d29ya1Nlc3Npb24qIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpu
ZXR3b3JrU2Vzc2lvbigpCiAKIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVm
ZXJlbmNlPj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc29sdmVCbG9iUmVmZXJl
bmNlcyhjb25zdCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYgbG9hZFBhcmFtZXRlcnMp
CiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
cik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
ci50b1VJbnQ2NCgpKTsKIAogICAgIGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbigpOwog
ICAgIGlmICghc2Vzc2lvbikKQEAgLTQ4OCw3ICs0ODgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8U2Vy
dmljZVdvcmtlckZldGNoVGFzaz4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0
ZUZldAogCiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291
cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzLCBz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlzdGluZ0xvYWRl
clRvUmVzdW1lKQogewotICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciwgZXhpc3RpbmdM
b2FkZXJUb1Jlc3VtZS52YWx1ZV9vcihOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllciB7IH0p
LnRvVUludDY0KCkpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgp
LCBleGlzdGluZ0xvYWRlclRvUmVzdW1lLnZhbHVlX29yKE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyIHsgfSkudG9VSW50NjQoKSk7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAg
ICAgYXV0byYgc2VydmVyID0gbV9uZXR3b3JrUHJvY2Vzcy0+c3dTZXJ2ZXJGb3JTZXNzaW9uKG1f
c2Vzc2lvbklEKTsKQEAgLTUzMiw3ICs1MzIsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYQog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwZXJmb3JtU3luY2hyb25vdXNM
b2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UGVyZm9ybVN5bmNocm9ub3VzTG9h
ZDo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAicGVyZm9ybVN5bmNocm9ub3VzTG9hZDogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5
SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQg
IiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxv
YWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCks
IGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0co
TG9hZGluZywgInBlcmZvcm1TeW5jaHJvbm91c0xvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94
eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0
ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgp
LCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBpZGVu
dGlmaWVyID0gbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcjsKICAgICBSRUxFQVNFX0FTU0VSVChp
ZGVudGlmaWVyKTsKQEAgLTU1NCw3ICs1NTQsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjp0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGbwog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpsb2FkUGluZyhOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQogewotICAgIENPTk5FQ1RJT05f
UkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRQaW5nOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJ
RD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAi
LCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2Vi
UGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwg
bG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAibG9hZFBpbmc6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9
IFtjb25uZWN0aW9uID0gbV9jb25uZWN0aW9uLCBpZGVudGlmaWVyID0gbG9hZFBhcmFtZXRlcnMu
aWRlbnRpZmllcl0gKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkgewogICAgICAgICBjb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OkRpZEZpbmlzaFBpbmdMb2FkKGlkZW50aWZpZXIsIGVy
cm9yLCByZXNwb25zZSksIDApOwpAQCAtNTc0LDcgKzU3NCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OmNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoSFRUUENvb2tpZUFj
Y2VwdFBvCiAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb246OkNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQobmV3UG9saWN5KSwgMCk7CiB9CiAK
LXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVy
KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFJFTEVBU0VfQVNTRVJUKGlkZW50aWZp
ZXIpOwogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTU4Nyw3ICs1
ODcsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZW1vdmVMb2FkSWRl
bnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyCiAKICAgICAvLyBBYm9ydCB0aGUgbG9hZCBu
b3csIGFzIHRoZSBXZWJQcm9jZXNzIHdvbid0IGJlIGFibGUgdG8gcmVzcG9uZCB0byBtZXNzYWdl
cyBhbnkgbW9yZSB3aGljaCBtaWdodCBsZWFkCiAgICAgLy8gdG8gbGVha2VkIGxvYWRlciByZXNv
dXJjZXMgKGNvbm5lY3Rpb25zLCB0aHJlYWRzLCBldGMpLgotICAgIENPTk5FQ1RJT05fUkVMRUFT
RV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVudGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVy
ICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3JyZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZp
ZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVu
dGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVyICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3Jy
ZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgbG9hZGVyLT5h
Ym9ydCgpOwogICAgIEFTU0VSVCghbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlk
ZW50aWZpZXIpKTsKIH0KQEAgLTYyNyw5ICs2MjcsOSBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOjpzZW5kSDJQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYg
cAogI2VuZGlmCiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNv
bm5lY3RUbyhzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwg
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycykKK3ZvaWQgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNvbm5lY3RUbyhzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIs
IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiB7Ci0gICAg
Q09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElE
PSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFt
ZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJz
LnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1l
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElP
Tl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElEPSVkLCBwYWdl
UHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBS
SXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJ
RCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRl
cnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIEFTU0VS
VCghbG9hZFBhcmFtZXRlcnMucmVxdWVzdC5odHRwQm9keSgpKTsKIApAQCAtNjU3LDEyICs2NTcs
MTIgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHByZWNvbm4KICAgICBjb21wbGV0aW9uSGFuZGxlcihpbnRl
cm5hbEVycm9yKGxvYWRQYXJhbWV0ZXJzLnJlcXVlc3QudXJsKCkpKTsKIH0KIAotdm9pZCBOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZCh1aW50NjRf
dCBsb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmlzUmVzb3VyY2VMb2FkRmlu
aXNoZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQogewogICAgIGNhbGxiYWNr
KCFtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMobG9hZElkZW50aWZpZXIpKTsKIH0K
IAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVj
dGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQ
cmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0
aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKCFt
X2Nvbm5lY3Rpb24tPmlzVmFsaWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjgzLDcgKzY4Myw3
IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0YXJ0RG93bmxvYWQoRG93
bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSCiAgICAgbV9uZXR3b3JrUHJvY2Vzcy0+ZG93bmxv
YWRNYW5hZ2VyKCkuc3RhcnREb3dubG9hZChtX3Nlc3Npb25JRCwgZG93bmxvYWRJRCwgcmVxdWVz
dCwgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiwgc3VnZ2VzdGVkTmFtZSk7CiB9CiAKLXZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgRG93bmxvYWRJ
RCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKQordm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgRG93bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlv
bmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluKQogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIApAQCAtNjkz
LDcgKzY5Myw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRN
YWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGxvYWRlciA9IG1fbmV0d29ya1Jlc291
cmNlTG9hZGVycy5nZXQobWFpblJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIE5ldHdvcmtS
ZXNvdXJjZUxvYWRlciogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldCgqbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIpOwogICAgIGlmICghbG9hZGVyKSB7CiAgICAgICAgIC8v
IElmIHdlJ3JlIHRyeWluZyB0byBkb3dubG9hZCBhIGJsb2IgaGVyZSBsb2FkZXIgY2FuIGJlIG51
bGwuCiAgICAgICAgIHJldHVybjsKQEAgLTEwMjksNyArMTAyOSw3IEBAIHZvaWQgTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dMaXN0cygpCiAgICAg
U2VjdXJpdHlQb2xpY3k6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dsaXN0cygpOwogfQogCi1zdGQ6
Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwg
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlzVG9wUmVzb3VyY2UpCitz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJ
RCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNU
b3BSZXNvdXJjZSkKIHsKICAgICBpZiAobV9zZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAgLTEwODAsNyArMTA4MCw3IEBAIHN0ZDo6b3B0aW9u
YWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnN0YXJ0VHJhY2tpCiAgICAgcmV0dXJuIG5ld0FjdGl2aXR5VHJhY2tlci5uZXR3b3JrQWN0aXZp
dHk7CiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2lu
Z1Jlc291cmNlTG9hZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtB
Y3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRpb25Db2RlIGNvZGUpCit2b2lkIE5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNv
bXBsZXRpb25Db2RlIGNvZGUpCiB7CiAgICAgYXV0byBpdGVtSW5kZXggPSBmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihyZXNvdXJjZUlEKTsKICAgICBpZiAoaXRlbUluZGV4ID09IG5vdEZvdW5k
KQpAQCAtMTExNyw3ICsxMTE3LDcgQEAgc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpmaW5kUm9vdE5ldHdvcmtBY3Rpdml0eShQYWdlSWRlbnRpZmllciBwYWcKICAgICB9KTsK
IH0KIAotc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCitzaXplX3Qg
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmROZXR3b3JrQWN0aXZpdHlUcmFja2Vy
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogewogICAgIHJl
dHVybiBtX25ldHdvcmtBY3Rpdml0eVRyYWNrZXJzLmZpbmRNYXRjaGluZyhbJl0oY29uc3QgYXV0
byYgaXRlbSkgewogICAgICAgICByZXR1cm4gaXRlbS5yZXNvdXJjZUlEID09IHJlc291cmNlSUQ7
CkBAIC0xMjY4LDcgKzEyNjgsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
OjpzZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlSQogICAgIHNlc3Np
b24tPm5ldHdvcmtMb2FkU2NoZWR1bGVyKCkuc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUo
cGFnZUlkZW50aWZpZXIsIG1vZGUpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRp
Zmllcj4gbG9hZElkZW50aWZpZXJzKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcj4mIGxvYWRJZGVudGlmaWVycykKIHsKICAgICBhdXRvKiBzZXNzaW9u
ID0gbmV0d29ya1Nlc3Npb24oKTsKICAgICBpZiAoIXNlc3Npb24pCkBAIC0xMjg1LDcgKzEyODUs
NyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0aXplUmVzb3Vy
Y2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSQogICAgIHNlc3Npb24tPm5ldHdvcmtMb2FkU2No
ZWR1bGVyKCkucHJpb3JpdGl6ZUxvYWRzKGxvYWRzKTsKIH0KIAotUmVmUHRyPE5ldHdvcmtSZXNv
dXJjZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrUmVz
b3VyY2VMb2FkZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKK1JlZlB0cjxOZXR3
b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp0YWtlTmV0
d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKQogewogICAgIGlmICghTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6
TWFwVHlwZTo6aXNWYWxpZEtleShyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKaW5kZXggZTk4YTJlNWRhMTVmNmIw
OGRkMjUwYmU5OGI2ZjhmYWI1MzM0MWE0Yy4uZDE2MWNmOTZjNGM1ZDlhZDEzMDk0OTYyZTE5OTFh
NWY0ZWZkODBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtODcsNyArODcsNiBAQCBj
bGFzcyBOZXR3b3JrU29ja2V0U3RyZWFtOwogY2xhc3MgU2VydmljZVdvcmtlckZldGNoVGFzazsK
IGNsYXNzIFdlYlNXU2VydmVyQ29ubmVjdGlvbjsKIGNsYXNzIFdlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbjsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKIAog
bmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiBzdHJ1Y3QgRGF0YUtleTsKQEAgLTEyNSwzNCArMTI0
LDM0IEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFudXBGb3JTdXNwZW5zaW9uKEZ1bmN0aW9uPHZv
aWQoKT4mJik7CiAgICAgdm9pZCBlbmRTdXNwZW5zaW9uKCk7CiAKLSAgICB2b2lkIGdldE5ldHdv
cmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZShSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbmZvcm1h
dGlvblJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICB7CiAgICAgICAgIGlmIChhdXRvKiBpbmZvID0g
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5nZXQoaWRlbnRpZmllcikpCiAgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoaW5mby0+cmVzcG9uc2UpOwogICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0pOwogICAgIH0KIAotICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbnRl
cm1lZGlhdGVJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2Fj
dGlvbkluZm9ybWF0aW9uPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0
d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiAgICAgewogICAgICAgICBpZiAoYXV0byogaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZv
cm1hdGlvbkJ5SUQuZ2V0KGlkZW50aWZpZXIpKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGluZm8tPnRyYW5zYWN0aW9ucyk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KHsgfSk7CiAgICAgfQogCi0gICAgdm9pZCB0YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJp
Y3MoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQorICAgIHZvaWQgdGFrZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogICAgIHsKICAgICAgICAgaWYgKGF1dG8gaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQudGFrZShpZGVudGlmaWVyKSkKICAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihpbmZvLT5tZXRyaWNzKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsK
ICAgICB9CiAKLSAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb24oUmVzb3VyY2VMb2Fk
SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uJiYg
aW5mb3JtYXRpb24pCisgICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9h
ZEluZm9ybWF0aW9uJiYgaW5mb3JtYXRpb24pCiAgICAgewogICAgICAgICBBU1NFUlQoIW1fbmV0
d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgICAgICBt
X25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmFkZChpZGVudGlmaWVyLCBtYWtlVW5pcXVlPFdl
YkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24+KFdURk1vdmUoaW5mb3JtYXRpb24pKSk7CiAg
ICAgfQogCi0gICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0
cmljcyYgbWV0cmljcykKKyAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNz
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiAgICAgewogICAgICAgICBBU1NFUlQo
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAg
ICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuZW5zdXJlKGlkZW50aWZpZXIsIFtdIHsK
QEAgLTE2MCwxMyArMTU5LDEzIEBAIHB1YmxpYzoKICAgICAgICAgfSkuaXRlcmF0b3ItPnZhbHVl
LT5tZXRyaWNzID0gbWV0cmljczsKICAgICB9CiAKLSAgICB2b2lkIHJlbW92ZU5ldHdvcmtMb2Fk
SW5mb3JtYXRpb24oUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQorICAgIHZvaWQg
cmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlv
bkJ5SUQucmVtb3ZlKGlkZW50aWZpZXIpOwogICAgIH0KIAotICAgIHN0ZDo6b3B0aW9uYWw8TmV0
d29ya0FjdGl2aXR5VHJhY2tlcj4gc3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllciwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlz
VG9wUmVzb3VyY2UpOwotICAgIHZvaWQgc3RvcFRyYWNraW5nUmVzb3VyY2VMb2FkKFJlc291cmNl
TG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxl
dGlvbkNvZGUpOworICAgIHN0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gc3Rh
cnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSk7
CisgICAgdm9pZCBzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRp
b25Db2RlKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVmZXJl
bmNlPj4gcmVzb2x2ZUJsb2JSZWZlcmVuY2VzKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzJik7CiAKQEAgLTE4NywxMiArMTg2LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIGNvb2tp
ZUFjY2VwdFBvbGljeUNoYW5nZWQoV2ViQ29yZTo6SFRUUENvb2tpZUFjY2VwdFBvbGljeSk7CiAK
ICAgICB2b2lkIGJyb2FkY2FzdENvbnNvbGVNZXNzYWdlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlND
OjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7Ci0gICAgUmVmUHRyPE5ldHdv
cmtSZXNvdXJjZUxvYWRlcj4gdGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcih1aW50NjRfdCByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiB0
YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cik7CiAKIHByaXZhdGU6CiAgICAgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoTmV0d29y
a1Byb2Nlc3MmLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgUEFMOjpTZXNzaW9uSUQsIElQ
Qzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7CiAKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5l
Y3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uKiBzdG9yYWdlU2Vzc2lvbigpOwogCiAgICAgLy8gSVBDOjpDb25uZWN0aW9uOjpDbGllbnQK
QEAgLTIxMSwxNSArMjEwLDE1IEBAIHByaXZhdGU6CiAgICAgdm9pZCBsb2FkUGluZyhOZXR3b3Jr
UmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmKTsKICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0
cmluZyYpOwogICAgIHZvaWQgc2VuZEgyUGluZyhOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVy
cyYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFdURjo6U2Vjb25kcywgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvcj4mJik+JiYpOwotICAgIHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0
aW9uYWw8dWludDY0X3Q+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQodWludDY0
X3QgbG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAg
IHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMmJik7CisgICAgdm9pZCBpc1Jlc291cmNlTG9hZEZpbmlzaGVkKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CiAKLSAgICB2b2lkIHJlbW92ZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIHZvaWQgcmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKTsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVu
dGlmaWVyKTsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViUGFnZVByb3h5SWRl
bnRpZmllciwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmll
cik7Ci0gICAgdm9pZCBjcm9zc09yaWdpblJlZGlyZWN0UmVjZWl2ZWQoUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgY29uc3QgVVJMJiByZWRpcmVjdFVSTCk7CisgICAgdm9pZCBjcm9zc09yaWdpblJl
ZGlyZWN0UmVjZWl2ZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBV
UkwmIHJlZGlyZWN0VVJMKTsKICAgICB2b2lkIHN0YXJ0RG93bmxvYWQoRG93bmxvYWRJRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9B
cHBCb3VuZERvbWFpbj4sIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IHsgfSk7Ci0gICAg
dm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBzdGQ6Om9wdGlvbmFsPE5h
dmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPik7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwg
c3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4pOwogCiAgICAgdm9pZCBy
ZWdpc3RlclVSTFNjaGVtZXNBc0NPUlNFbmFibGVkKFZlY3RvcjxTdHJpbmc+JiYgc2NoZW1lcyk7
CiAKQEAgLTMyNyw3ICszMjYsNyBAQCBwcml2YXRlOgogICAgICAgICB7CiAgICAgICAgIH0KIAot
ICAgICAgICBSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgcGFnZUlELCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCisgICAgICAg
IFJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBw
YWdlSUQsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogICAg
ICAgICAgICAgOiBwYWdlSUQgeyBwYWdlSUQgfQogICAgICAgICAgICAgLCByZXNvdXJjZUlEIHsg
cmVzb3VyY2VJRCB9CiAgICAgICAgICAgICAsIG5ldHdvcmtBY3Rpdml0eSB7IE5ldHdvcmtBY3Rp
dml0eVRyYWNrZXI6OkxhYmVsOjpMb2FkUmVzb3VyY2UgfQpAQCAtMzM1LDcgKzMzNCw3IEBAIHBy
aXZhdGU6CiAgICAgICAgIH0KIAogICAgICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdl
SUQ7Ci0gICAgICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCB7IDAgfTsKKyAg
ICAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQ7CiAgICAg
ICAgIGJvb2wgaXNSb290QWN0aXZpdHkgeyBmYWxzZSB9OwogICAgICAgICBOZXR3b3JrQWN0aXZp
dHlUcmFja2VyIG5ldHdvcmtBY3Rpdml0eTsKICAgICB9OwpAQCAtMzQzLDEyICszNDIsMTIgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHN0b3BBbGxOZXR3b3JrQWN0aXZpdHlUcmFja2luZygpOwogICAg
IHZvaWQgc3RvcEFsbE5ldHdvcmtBY3Rpdml0eVRyYWNraW5nRm9yUGFnZShXZWJDb3JlOjpQYWdl
SWRlbnRpZmllcik7CiAgICAgc2l6ZV90IGZpbmRSb290TmV0d29ya0FjdGl2aXR5KFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyKTsKLSAgICBzaXplX3QgZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIo
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlEKTsKKyAgICBzaXplX3QgZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291
cmNlSUQpOwogCiAgICAgdm9pZCBoYXNVcGxvYWRTdGF0ZUNoYW5nZWQoYm9vbCk7CiAKICAgICB2
b2lkIHNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVy
LCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUpOwotICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291
cmNlTG9hZHMoVmVjdG9yPFJlc291cmNlTG9hZElkZW50aWZpZXI+KTsKKyAgICB2b2lkIHByaW9y
aXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+Jik7CiAKICNpZiBFTkFCTEUoQVBQTEVfUEFZX1JFTU9URV9VSSkKICAgICBXZWJQ
YXltZW50Q29vcmRpbmF0b3JQcm94eSYgcGF5bWVudENvb3JkaW5hdG9yKCk7CkBAIC0zNzUsNyAr
Mzc0LDcgQEAgcHJpdmF0ZToKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPFdlYkNvcmU6OkJs
b2JEYXRhRmlsZVJlZmVyZW5jZT4+IG1fYmxvYkRhdGFGaWxlUmVmZXJlbmNlczsKICAgICBWZWN0
b3I8UmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBtX25ldHdvcmtBY3Rpdml0eVRyYWNr
ZXJzOwogCi0gICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8V2ViQ29yZTo6TmV0d29ya0xvYWRJbmZvcm1hdGlvbj4+IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQ7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uPj4gbV9uZXR3
b3JrTG9hZEluZm9ybWF0aW9uQnlJRDsKIAogCiAjaWYgVVNFKExJQldFQlJUQykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDE1ZGE2YWJmYzUzODY5ZmQ0
Mzg2MjQ3Njk2ZmVhNTExYjZhOWRiOTIuLjc2ODJiYTliYjI5ZmY2ZjA4ZWJlYmI5NDNmYzg5NDU0
NjczNGMyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgpA
QCAtMjYsMTYgKzI2LDE2IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBQZXJmb3JtU3luY2hyb25vdXNMb2FkKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVzb3VyY2VMb2FkUGFyYW1ldGVycykgLT4g
KFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogICAgIFRlc3RQcm9j
ZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseShXZWJLaXQ6Oldl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlEKSAtPiAoYm9vbCBoYW5kbGVkKSBTeW5jaHJvbm91
cwogICAgIExvYWRQaW5nKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVz
b3VyY2VMb2FkUGFyYW1ldGVycykKLSAgICBSZW1vdmVMb2FkSWRlbnRpZmllcih1aW50NjRfdCBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorICAgIFJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQogICAgIFBh
Z2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCkKICAgICBC
cm93c2luZ0NvbnRleHRSZW1vdmVkKFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQ
YWdlUHJveHlJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgd2ViRnJhbWVJRCkKICAgICBQcmVmZXRjaEROUyhTdHJpbmcgaG9zdG5h
bWUpCiAgICAgU2VuZEgyUGluZyhXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
IHBhcmFtZXRlcnMpIC0+IChFeHBlY3RlZDxTZWNvbmRzLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
PiByZXN1bHQpIEFzeW5jCi0gICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKLSAgICBJc1Jlc291cmNlTG9hZEZpbmlzaGVkKHVpbnQ2
NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChib29sIGlzRmluaXNoZWQpIEFzeW5jCisg
ICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycyk7CisgICAgSXNSZXNvdXJjZUxvYWRGaW5pc2hl
ZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikgLT4gKGJvb2wgaXNGaW5pc2hlZCkgQXN5bmMKIAogICAgIFN0YXJ0RG93bmxvYWQoV2ViS2l0
OjpEb3dubG9hZElEIGRvd25sb2FkSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0
LCBlbnVtOmJvb2wgc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBTdHJpbmcgc3VnZ2VzdGVkTmFtZSkK
LSAgICBDb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIFdlYktpdDo6RG93bmxvYWRJRCBkb3dubG9hZElELCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgZW51bTpib29sIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikKKyAgICBDb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBXZWJLaXQ6OkRvd25sb2Fk
SUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIGVudW06Ym9vbCBzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4pCiAKICAgICBDb29raWVzRm9yRE9NKFVSTCBmaXJzdFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6
U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVybCwgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgZW51bTpib29sIFdl
YkNvcmU6OkluY2x1ZGVTZWN1cmVDb29raWVzIGluY2x1ZGVTZWN1cmVDb29raWVzLCBlbnVtOmJv
b2wgV2ViQ29yZTo6U2hvdWxkQXNrSVRQIHNob3VsZEFza0lUUCwgZW51bTpib29sIFdlYkNvcmU6
OlNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nKSAtPiAoU3RyaW5nIGNvb2tpZVN0cmluZywgYm9vbCBkaWRBY2Nlc3NT
ZWN1cmVDb29raWVzKSBTeW5jaHJvbm91cwogICAgIFNldENvb2tpZXNGcm9tRE9NKFVSTCBmaXJz
dFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVy
bCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlm
aWVyIHBhZ2VJRCwgZW51bTpib29sIFdlYkNvcmU6OlNob3VsZEFza0lUUCBzaG91bGRBc2tJVFAs
IFN0cmluZyBjb29raWVTdHJpbmcsIGVudW06Ym9vbCBXZWJDb3JlOjpTaG91bGRSZWxheFRoaXJk
UGFydHlDb29raWVCbG9ja2luZyBzaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZykK
QEAgLTc5LDkgKzc5LDkgQEAgbWVzc2FnZXMgLT4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFJlbW92ZU9yaWdpbkFjY2Vzc0FsbG93TGlzdEVudHJ5
KFN0cmluZyBzb3VyY2VPcmlnaW4sIFN0cmluZyBkZXN0aW5hdGlvblByb3RvY29sLCBTdHJpbmcg
ZGVzdGluYXRpb25Ib3N0LCBib29sIGFsbG93RGVzdGluYXRpb25TdWJkb21haW5zKTsKICAgICBS
ZXNldE9yaWdpbkFjY2Vzc0FsbG93TGlzdHMoKTsKIAotICAgIEdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZSh1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkgU3luY2hyb25vdXMKLSAgICBHZXROZXR3b3Jr
TG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZp
ZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IHRy
YW5zYWN0aW9ucykgU3luY2hyb25vdXMKLSAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1l
dHJpY3ModWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6Ok5ldHdv
cmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljcykgU3luY2hyb25vdXMKKyAgICBHZXROZXR3b3Jr
TG9hZEluZm9ybWF0aW9uUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlKSBTeW5jaHJvbm91cworICAgIEdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3Jt
YXRpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50
aWZpZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+
IHRyYW5zYWN0aW9ucykgU3luY2hyb25vdXMKKyAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlv
bk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElk
ZW50aWZpZXIpIC0+IChXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3Mp
IFN5bmNocm9ub3VzCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgRXN0YWJsaXNo
U1dDb250ZXh0Q29ubmVjdGlvbihXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFn
ZVByb3h5SUQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIGRvbWFpbikgLT4gKCkgQXN5bmMK
QEAgLTEwOCw1ICsxMDgsNSBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgVXBkYXRlQWN0aXZlUGFnZXMoU3RyaW5nIG5hbWUs
IFZlY3RvcjxTdHJpbmc+IGFjdGl2ZVBhZ2VzT3JpZ2lucywgYXVkaXRfdG9rZW5fdCBhdWRpdFRv
a2VuKQogI2VuZGlmCiAgICAgU2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6TG9hZFNjaGVk
dWxpbmdNb2RlIG1vZGUpCi0gICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9yPHVpbnQ2
NF90PiBsb2FkSWRlbnRpZmllcnMpCisgICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9y
PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbG9hZElkZW50aWZpZXJzKQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRl
eCA0ZGNiMzJjZGI3NTc1NjRiZmIwMjM0NTVmOWZmY2JhYWIzZGY2MWZjLi5jMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtMjg0MSw5ICsyODQxLDEyIEBAIFJUQ0Rh
dGFDaGFubmVsUmVtb3RlTWFuYWdlclByb3h5JiBOZXR3b3JrUHJvY2Vzczo6cnRjRGF0YUNoYW5u
ZWxQcm94eSgpCiB9CiAjZW5kaWYKIAotdm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRG
b3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJv
Y2Vzc0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmll
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxv
YWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNl
UHJvY2Vzc0lkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKLSAgICBBU1NFUlQocmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAg
aWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0KTsKKyAg
ICB9CiAgICAgYXV0byogY29ubmVjdGlvbiA9IHdlYlByb2Nlc3NDb25uZWN0aW9uKHNvdXJjZVBy
b2Nlc3NJZGVudGlmaWVyKTsKICAgICBpZiAoIWNvbm5lY3Rpb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwpAQCAtMjg1Miw3ICsyODU1LDcgQEAgdm9p
ZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29y
ZTo6UHJvY2Vzc0lkZW50aWZpZXIKICAgICBpZiAoIXNlc3Npb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCi0gICAgYXV0byBsb2FkZXIgPSBjb25u
ZWN0aW9uLT50YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKHJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIGF1dG8gbG9hZGVyID0gY29ubmVjdGlvbi0+dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRl
cigqcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpCiAgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKaW5kZXggMTA2MDIyY2U2ODUxOTc4MzBm
MjY1YWFiNjUzZDg0ZTAwZjg1MWNkOS4uYTY0YTAxZmY0ZmJkMmFlZTM2OWNlM2QxMzVkZTg3OGI5
NzQ0NTlkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuaApAQCAtNDIzLDcgKzQyMyw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBkaWRSZWNlaXZlU3lu
Y05ldHdvcmtQcm9jZXNzTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImLCBV
bmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYpOwogICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9j
ZXNzKE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgY3JlYXRl
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIs
IFBBTDo6U2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8SVBD
OjpBdHRhY2htZW50PiYmLCBXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KT4mJik7Ci0g
ICAgdm9pZCBwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNz
SWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQ
cm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lk
ZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CiAKICAgICB2b2lkIGZl
dGNoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+
LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2Vic2l0ZURhdGEmJik+JiYpOwogICAgIHZvaWQgZGVsZXRlV2Vic2l0ZURhdGEoUEFMOjpT
ZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBXYWxsVGltZSBtb2RpZmllZFNp
bmNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oLnJlaiBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaC5yZWoKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWEwNDVlODhh
ZDEzODk5OGE2NzVjM2YzY2U5NWY2NzdlZGFiOWFhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaC5yZWoKQEAgLTAsMCArMSwz
NSBAQAorKioqKioqKioqKioqKioqCisqKiogMTA5LDExNCAqKioqCisgIGNsYXNzIE5ldHdvcmtQ
cm94aW1pdHlNYW5hZ2VyOworICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNz
IFN0b3JhZ2VNYW5hZ2VyU2V0OworICBjbGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb247CisgIGNs
YXNzIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjsKKyAgZW51bSBjbGFzcyBDYWxsRG93
bmxvYWREaWRTdGFydCA6IGJvb2w7CistLS0gMTA5LDExNSAtLS0tCisgIGNsYXNzIE5ldHdvcmtQ
cm94aW1pdHlNYW5hZ2VyOworICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNz
IFN0b3JhZ2VNYW5hZ2VyU2V0OworKyBjbGFzcyBXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnM7Cisg
IGNsYXNzIFdlYlNXU2VydmVyQ29ubmVjdGlvbjsKKyAgY2xhc3MgV2ViU1dTZXJ2ZXJUb0NvbnRl
eHRDb25uZWN0aW9uOworICBlbnVtIGNsYXNzIENhbGxEb3dubG9hZERpZFN0YXJ0IDogYm9vbDsK
KyoqKioqKioqKioqKioqKgorKioqIDQ1NSw0NjAgKioqKgorICAgICAgCisgICAgICB2b2lkIGZs
dXNoQ29va2llcyhjb25zdCBQQUw6OlNlc3Npb25JRCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJik7CisgIAorICAjaWYgVVNFKFNPVVApCisgICAgICB2b2lkIHNldElnbm9yZVRMU0Vycm9y
cyhQQUw6OlNlc3Npb25JRCwgYm9vbCk7CisgICAgICB2b2lkIHVzZXJQcmVmZXJyZWRMYW5ndWFn
ZXNDaGFuZ2VkKGNvbnN0IFZlY3RvcjxTdHJpbmc+Jik7CistLS0gNDU2LDQ2NSAtLS0tCisgICAg
ICAKKyAgICAgIHZvaWQgZmx1c2hDb29raWVzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgCisrICAgICB2b2lkIGFkZFdlYlBhZ2VOZXR3b3Jr
UGFyYW1ldGVycyhjb25zdCBQQUw6OlNlc3Npb25JRCYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIs
IFdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyYmKTsKKysgICAgIHZvaWQgcmVtb3ZlV2ViUGFnZU5l
dHdvcmtQYXJhbWV0ZXJzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgV2ViUGFnZVByb3h5SWRlbnRp
Zmllcik7CisrICAgICB2b2lkIGNvdW50Tm9uRGVmYXVsdFNlc3Npb25TZXRzKGNvbnN0IFBBTDo6
U2Vzc2lvbklEJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzaXplX3QpPiYmKTsKKysgCisgICNp
ZiBVU0UoU09VUCkKKyAgICAgIHZvaWQgc2V0SWdub3JlVExTRXJyb3JzKFBBTDo6U2Vzc2lvbklE
LCBib29sKTsKKyAgICAgIHZvaWQgdXNlclByZWZlcnJlZExhbmd1YWdlc0NoYW5nZWQoY29uc3Qg
VmVjdG9yPFN0cmluZz4mKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGQ1OTU4OTM2ZmFlMTFlZDhiYjJh
MzczYTdkNGZmMGJkN2ZiMzRmNTEuLjlhYTllYWE5ZjEzMWIwMWY2NjliNTM4ODUwMDIyNmU0MzUy
YTFkMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtMTk2LDcgKzE5Niw3IEBAIG1lc3NhZ2VzIC0+IE5l
dHdvcmtQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBDbGVhckFwcFByaXZhY3lSZXBvcnRU
ZXN0aW5nRGF0YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpIC0+ICgpIEFzeW5jCiAjZW5kaWYK
IAotICAgIFByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJ
ZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyPiBuZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcikgQXN5bmMKKyAgICBQcmVw
YXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBz
b3VyY2VQcm9jZXNzSWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXI+IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFs
PFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IG5ldHdvcmtSZXNvdXJjZUxv
YWRJZGVudGlmaWVyKSBBc3luYwogCiAgICAgQWRkV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBh
Z2VJRCwgV2ViS2l0OjpXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnMgcGFyYW1ldGVycykKICAgICBS
ZW1vdmVXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBX
ZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5jcHAKaW5kZXgg
ZGI5N2Y1NTJmZWU3YTM4OTE2NTFmM2JkZDZlNGFkZWU2MjQ3YTJlOS4uZjlhMmFhMjBkYjQzOTA3
NmM0NGYyMDFhNmRiZGRhYmIzZDdjOGNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwCkBAIC0zOSw3ICszOSw3
IEBAIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6On5OZXR3b3JrUmVzb3VyY2VMb2FkTWFwKCkKICAg
ICBjbGVhcigpOwogfQogCi1OZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1
bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRkKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRl
bnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJiBsb2FkZXIpCitOZXR3b3JrUmVz
b3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6
YWRkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8TmV0
d29ya1Jlc291cmNlTG9hZGVyPiYmIGxvYWRlcikKIHsKICAgICBBU1NFUlQoIW1fbG9hZGVycy5j
b250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgYm9vbCBoYXNVcGxvYWQgPSBsb2FkZXItPm9yaWdp
bmFsUmVxdWVzdCgpLmhhc1VwbG9hZCgpOwpAQCAtNDksNyArNDksNyBAQCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRk
KFJlc291cmNlTAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLWJvb2wgTmV0d29ya1Jlc291cmNl
TG9hZE1hcDo6cmVtb3ZlKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK2Jvb2wg
TmV0d29ya1Jlc291cmNlTG9hZE1hcDo6cmVtb3ZlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogewogICAgIHJldHVybiAhIXRha2UoaWRlbnRpZmllcik7CiB9
CkBAIC02MCw3ICs2MCw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Y2xlYXIoKQog
ICAgIHNldEhhc1VwbG9hZChmYWxzZSk7CiB9CiAKLVJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI+IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnRha2UoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBp
ZGVudGlmaWVyKQorUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNl
TG9hZE1hcDo6dGFrZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBhdXRvIGxvYWRlciA9IG1fbG9hZGVycy50YWtlKGlkZW50aWZpZXIpOwogICAg
IGlmICghbG9hZGVyKQpAQCAtNzIsNyArNzIsNyBAQCBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9h
ZGVyPiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKFJlc291cmNlTG9hZElkZW50aWZpZQog
ICAgIHJldHVybiBsb2FkZXI7CiB9CiAKLU5ldHdvcmtSZXNvdXJjZUxvYWRlciogTmV0d29ya1Jl
c291cmNlTG9hZE1hcDo6Z2V0KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikgY29u
c3QKK05ldHdvcmtSZXNvdXJjZUxvYWRlciogTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Z2V0KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAogewogICAg
IHJldHVybiBtX2xvYWRlcnMuZ2V0KGlkZW50aWZpZXIpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaAppbmRleCAwZWYy
NzhjMzQwNWNkZGU2YTgzZmJmMGFiNzJmZmM0N2MxNGQzMTE3Li43MTYwZGRlMWQ1N2MwMGYxNWZi
NGFjMzVlNDE4MmUzZWNjOTg1YjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaApAQCAtMjUsNiArMjUsNyBAQAogCiAj
cHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
Lmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
IApAQCAtMzcsMjQgKzM4LDIyIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgTmV0d29ya1Jl
c291cmNlTG9hZGVyOwogY2xhc3MgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CiAKLXR5
cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0d29ya1Jl
c291cmNlTG9hZE1hcCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPFJlc291cmNlTG9h
ZElkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+PiBNYXBUeXBlOworICAgIHVz
aW5nIE1hcFR5cGUgPSBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
UmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4+OwogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXAo
RnVuY3Rpb248dm9pZChib29sIGhhc1VwbG9hZCk+JiYpOwogICAgIH5OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwKCk7CiAKICAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBtX2xvYWRlcnMu
aXNFbXB0eSgpOyB9Ci0gICAgYm9vbCBjb250YWlucyhSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlk
ZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsg
fQorICAgIGJvb2wgY29udGFpbnMoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsg
fQogICAgIE1hcFR5cGU6Oml0ZXJhdG9yIGJlZ2luKCkgeyByZXR1cm4gbV9sb2FkZXJzLmJlZ2lu
KCk7IH0KICAgICBNYXBUeXBlOjpWYWx1ZXNJdGVyYXRvclJhbmdlIHZhbHVlcygpIHsgcmV0dXJu
IG1fbG9hZGVycy52YWx1ZXMoKTsgfQogICAgIHZvaWQgY2xlYXIoKTsKIAotICAgIE1hcFR5cGU6
OkFkZFJlc3VsdCBhZGQoUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcj4mJik7Ci0gICAgTmV0d29ya1Jlc291cmNlTG9hZGVyKiBnZXQoUmVzb3VyY2VMb2Fk
SWRlbnRpZmllcikgY29uc3Q7Ci0gICAgYm9vbCByZW1vdmUoUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik7Ci0gICAgUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gdGFrZShSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKTsKKyAgICBNYXBUeXBlOjpBZGRSZXN1bHQgYWRkKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJik7CisgICAgTmV0
d29ya1Jlc291cmNlTG9hZGVyKiBnZXQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBjb25zdDsKKyAgICBib29sIHJlbW92ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpOworICAgIFJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+IHRha2UoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIGJvb2wgaGFzVXBsb2FkKCkgY29uc3QgeyBy
ZXR1cm4gbV9oYXNVcGxvYWQ7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oCmluZGV4IGNjYzhi
NTNjZjhkZWI4YzBjNWFjMWRmNjIxMjkyZjRjOWRmNjVlZGMuLjRjYjg1Y2JhMjA2YjgwMjg3ZDQy
YjViZTU2YmNjOGU5MzI2MTI1NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgKQEAgLTMzLDYg
KzMzLDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvRmV0Y2hPcHRpb25zLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgogCiBuYW1lc3BhY2UgSVBD
IHsKQEAgLTQyLDggKzQzLDYgQEAgY2xhc3MgRW5jb2RlcjsKIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0
d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgOiBwdWJsaWMgTmV0d29ya0xvYWRQYXJhbWV0ZXJz
IHsKIHB1YmxpYzoKICAgICB2b2lkIGVuY29kZShJUEM6OkVuY29kZXImKSBjb25zdDsKQEAgLTUx
LDcgKzUwLDcgQEAgcHVibGljOgogCiAgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
PiBwYXJlbnRPcmlnaW4oKSBjb25zdDsKIAotICAgIG11dGFibGUgUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciBpZGVudGlmaWVyIHsgMCB9OworICAgIG11dGFibGUgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7CiAgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5z
aW9uPj4gcmVxdWVzdEJvZHlTYW5kYm94RXh0ZW5zaW9uczsgLy8gQ3JlYXRlZCBhdXRvbWF0aWNh
bGx5IGZvciB0aGUgc2VuZGVyLgogICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiByZXNvdXJj
ZVNhbmRib3hFeHRlbnNpb247IC8vIENyZWF0ZWQgYXV0b21hdGljYWxseSBmb3IgdGhlIHNlbmRl
ci4KICAgICBtdXRhYmxlIFNlY29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggODNlODNiY2U4NGU3ZjQ5ODM4OGU2OTI4NGU5MDgxMzIyZWJiOGM0OC4uMjM4NjNiZjdl
ZjM3N2I0YWE0ZjljNzYxMzI4MDExODJmMTg2YmI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNjYsOCAr
NjYsOCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvUHJldmlld0NvbnZlcnRlci5oPgogI2VuZGlmCiAK
LSNkZWZpbmUgTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3Jr
LCAiJXAgLSBbcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwg
ZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3Vy
Y2U9JWQsIGRlc3RpbmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OiIgZm10LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbV9wYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJh
bWVJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllciwgaXNNYWluUmVzb3VyY2Uo
KSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9u
KSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQotI2RlZmluZSBMT0FERVJfUkVMRUFT
RV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtw
YWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVz
dGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBm
bXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFt
ZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUlu
dDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNo
cm9ub3VzKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIExPQURFUl9SRUxFQVNFX0xPRyhmbXQs
IC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIsIGlzTWFpblJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJv
bm91cz0lZF0gTmV0d29ya1Jlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJz
LndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlk
ZW50aWZpZXIudG9VSW50NjQoKSwgaXNNYWluUmVzb3VyY2UoKSwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9uKSwgaXNTeW5jaHJvbm91cygpLCAj
I19fVkFfQVJHU19fKQorI2RlZmluZSBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4p
IFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1NjQg
Iiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlE
PSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3luY2hy
b25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1ldGVy
cy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRvVUlu
dDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy5p
ZGVudGlmaWVyLnRvVUludDY0KCksIGlzTWFpblJlc291cmNlKCksIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihtX3BhcmFtZXRlcnMub3B0aW9ucy5kZXN0aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwg
IyNfX1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKQEAgLTUyNCw3ICs1MjQsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6YWJv
cnQoKQogICAgIGNsZWFudXAoTG9hZFJlc3VsdDo6Q2FuY2VsKTsKIH0KIAotdm9pZCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OnRyYW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiBuZXdDb25uZWN0aW9uLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIG5ld0Nv
cmVJZGVudGlmaWVyKQordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnRyYW5zZmVyVG9OZXdX
ZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBuZXdDb25uZWN0aW9uLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbmV3Q29yZUlkZW50aWZpZXIpCiB7CiAg
ICAgbV9jb25uZWN0aW9uID0gbmV3Q29ubmVjdGlvbjsKICAgICBtX3BhcmFtZXRlcnMuaWRlbnRp
ZmllciA9IG5ld0NvcmVJZGVudGlmaWVyOwpAQCAtMTM5NiwxNyArMTM5Niw4IEBAIHN0YXRpYyBT
dHJpbmcgZXNjYXBlRm9ySlNPTihTdHJpbmcgcykKICAgICByZXR1cm4gcy5yZXBsYWNlKCdcXCcs
ICJcXFxcIikucmVwbGFjZSgnIicsICJcXFwiIik7CiB9CiAKLXN0YXRpYyBTdHJpbmcgZXNjYXBl
SURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+JiB2YWx1ZSkKLXsKLSAgICBy
ZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS52YWx1ZSgpKSA6IFN0cmluZygiTm9u
ZSJfcyk7Ci19Ci0KLXN0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0
aW9uYWw8RnJhbWVJZGVudGlmaWVyPiYgdmFsdWUpCi17Ci0gICAgcmV0dXJuIHZhbHVlID8gU3Ry
aW5nOjpudW1iZXIodmFsdWUtPnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKLX0KLQot
c3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDxQYWdlSWRl
bnRpZmllcj4mIHZhbHVlKQordGVtcGxhdGU8dHlwZW5hbWUgSWRlbnRpZmllclR5cGU+CitzdGF0
aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPE9iamVjdElkZW50
aWZpZXI8SWRlbnRpZmllclR5cGU+PiYgdmFsdWUpCiB7CiAgICAgcmV0dXJuIHZhbHVlID8gU3Ry
aW5nOjpudW1iZXIodmFsdWUtPnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKIH0KQEAg
LTE0MjEsNyArMTQxMiw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJ
bmZvcm1hdGlvbigpIGNvbnN0CiAgICAgbG9nQ29va2llSW5mb3JtYXRpb24obV9jb25uZWN0aW9u
LCAiTmV0d29ya1Jlc291cmNlTG9hZGVyIiwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkKj4o
dGhpcyksICpuZXR3b3JrU3RvcmFnZVNlc3Npb24sIG9yaWdpbmFsUmVxdWVzdCgpLmZpcnN0UGFy
dHlGb3JDb29raWVzKCksIFNhbWVTaXRlSW5mbzo6Y3JlYXRlKG9yaWdpbmFsUmVxdWVzdCgpKSwg
b3JpZ2luYWxSZXF1ZXN0KCkudXJsKCksIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBSZWZlcnJlcigp
LCBmcmFtZUlEKCksIHBhZ2VJRCgpLCBjb3JlSWRlbnRpZmllcigpKTsKIH0KIAotc3RhdGljIHZv
aWQgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRP
YmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2Ft
ZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpv
cHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50
aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3N0YXRp
YyB2b2lkIGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9n
Z2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8m
IHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0
ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJ
ZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OnNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5lY3Rpb24sIG5ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCkBAIC0xNDQ4LDcgKzE0MzksNyBAQCBzdGF0aWMgdm9p
ZCBsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIGNvbm5lY3RpbwogI3VuZGVmIExPQ0FMX0xPR19JRl9BTExPV0VECiB9CiAKLXN0YXRpYyB2
b2lkIGxvZ0Nvb2tpZUluZm9ybWF0aW9uSW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dl
ZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3Rv
cmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNp
dGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25h
bDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlm
aWVyKQorc3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29u
c3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Np
b24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBX
ZWJDb3JlOjpTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlE
LCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBpZGVudGlmaWVyKQogewogICAgIEFTU0VS
VChOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5l
Y3Rpb24sIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCkBAIC0xNTA5LDcg
KzE1MDAsNyBAQCBzdGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aQogI3VuZGVmIExPQ0FMX0xPR19JRl9B
TExPV0VECiB9CiAKLXZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1h
dGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3Ry
aW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBOZXR3b3JrU3RvcmFn
ZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBj
b25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBz
dGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IGlkZW50aWZpZXIpCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6bG9nQ29va2llSW5m
b3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0
IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgTmV0d29ya1N0
b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0
eSwgY29uc3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJ
RCwgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gaWRlbnRpZmllcikKIHsKICAgICBBU1NF
UlQoc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VT
ZXNzaW9uLnNlc3Npb25JRCgpKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCmluZGV4IGZiMWJmMGU1YzFhZGI0NDE3MzA1
Zjg2M2EwZmIxYzU2YzhjMTI0NjAuLmYyMmI0Y2MzMDc0Y2JkNjgxNTJjZjQ5NTM2YzBmMGU4YjNh
MDRjZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UmVzb3VyY2VMb2FkZXIuaApAQCAtODUsNyArODUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGFy
dCgpOwogICAgIHZvaWQgYWJvcnQoKTsKIAotICAgIHZvaWQgdHJhbnNmZXJUb05ld1dlYlByb2Nl
c3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHRyYW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIC8v
IE1lc3NhZ2UgaGFuZGxlcnMuCiAgICAgdm9pZCBkaWRSZWNlaXZlTmV0d29ya1Jlc291cmNlTG9h
ZGVyTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKQEAgLTk3LDcgKzk3
LDcgQEAgcHVibGljOgogCiAgICAgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MoKSBjb25zdCB7IHJldHVybiBtX2Nvbm5lY3Rpb247IH0KICAgICBQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX2Nvbm5lY3Rpb24tPnNl
c3Npb25JRCgpOyB9Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBjb3JlSWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyOyB9CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGNvcmVJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4g
bV9wYXJhbWV0ZXJzLmlkZW50aWZpZXI7IH0KICAgICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlEOyB9CiAgICAg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0
ZXJzLndlYlBhZ2VJRDsgfQogICAgIGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
JiBwYXJhbWV0ZXJzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzOyB9CkBAIC0xMzIsNyAr
MTMyLDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZF
TlRJT04pICYmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIHN0YXRpYyBib29sIHNob3VsZExv
Z0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUEFMOjpT
ZXNzaW9uSUQpOwotICAgIHN0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCog
bG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mLCBjb25z
dCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNhbWVTaXRlSW5mbyYsIGNvbnN0IFVS
TCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQYWdlSWRlbnRpZmllcj4sIHN0ZDo6
b3B0aW9uYWw8dWludDY0X3Q+IGlkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGxvZ0Nvb2tp
ZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgY29uc3QgU3RyaW5n
JiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3Jr
U3RvcmFnZVNlc3Npb24mLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNh
bWVTaXRlSW5mbyYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllcj4sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPik7CiAjZW5kaWYKIAogICAgIHZvaWQgZGlzYWJsZUV4dHJhTmV0d29ya0xvYWRNZXRy
aWNzQ2FwdHVyZSgpIHsgbV9zaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MgPSBm
YWxzZTsgfQpAQCAtMTUzLDcgKzE1Myw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBJUEM6Ok1lc3Nh
Z2VTZW5kZXIKICAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQo
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllcjsgfQorICAg
IHVpbnQ2NF90IG1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKTsgfQogCiAgICAgYm9vbCBj
YW5Vc2VDYWNoZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsKICAgICBi
b29sIGNhblVzZUNhY2hlZFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdl
cy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggZGM3
NjNiZjFlODM0NGJiNWYzZDE3ZTY0NDk5NzlmOTYxZmZlYjZlOS4uZTVjZmUwZGE3MWMxMjk5MmM5
NjY4NjAwZmM3NzlkZWViZjcyYjE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21l
c3NhZ2VzLnB5CkBAIC0yOTcsNiArMjk3LDcgQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2JlX2Zv
cndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VJ
ZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlJlbmRlcmluZ01vZGUnLAogICAgICAgICAn
V2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNv
bm5lY3Rpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJKb2JJZGVudGlmaWVyJywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcApp
bmRleCBkNWNhM2JiZmUwODBiZTdlODcwMmM1MjI1NWI5NWI5YjhlYjk5ZWI2Li41NzM3ZDljODNj
MTUxYjhlODQ2MjFhNzJiMTNmZWFkZTk4YWU5ZTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHN0ZDo6
b3B0aW9uYWw8VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM+IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
OjpkZWNvZGUoSVBDOjpEZWNvCiAgICAgaWYgKCFoYW5kbGVySWRlbnRpZmllcikKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKICAgICAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB0
YXNrSWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcj4gdGFza0lkZW50aWZpZXI7CiAgICAgZGVjb2RlciA+PiB0YXNrSWRlbnRpZmll
cjsKICAgICBpZiAoIXRhc2tJZGVudGlmaWVyKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKaW5k
ZXggNjc4MjM5NmIwZjlkMDliM2JlZDJlZjQ5YmNiZDVjYzk1M2M2ZDU5NS4uMWI0ZDllYjI3ZGQw
YjFlODYwNDdmN2FjM2FkMDY3MDNjNTNmMzNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgIkZyYW1lSW5mb0RhdGEuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0
Lmg+CiAKIG5hbWVzcGFjZSBJUEMgewpAQCAtMzcsNyArMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIAogc3RydWN0IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsKICAgICB1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciB7IDAgfTsKLSAgICB1aW50NjRfdCB0YXNrSWRlbnRpZmllciB7IDAgfTsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXI7CiAg
ICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CiAgICAgRnJhbWVJbmZvRGF0YSBm
cmFtZUluZm87CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Z2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9n
bGliL1dlYktpdFdlYkNvbnRleHQuY3BwCmluZGV4IDFiYzUxZGQxZWQzYjExODVlZDcyNjU1NTli
YjFkM2FlZDk3OTAyNmQuLmUwYThlZWEzNmM5ZWE2Y2RhNjQzZDYyMWU5NzhmN2M4N2Q2ZTE0Mzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNv
bnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdl
YkNvbnRleHQuY3BwCkBAIC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiV2Vic2l0ZURhdGFTdG9y
ZS5oIgogI2luY2x1ZGUgIldlYnNpdGVEYXRhVHlwZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL1JlbW90ZUluc3BlY3Rvci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8Z2xpYi9naTE4bi1saWIuaD4KICNpbmNsdWRlIDxsaWJp
bnRsLmg+CiAjaW5jbHVkZSA8bWVtb3J5PgpAQCAtMTk0LDExICsxOTUsMTAgQEAgcHJpdmF0ZToK
ICAgICBXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Q2FsbGJhY2sgbV9jYWxsYmFjayB7IG51bGxwdHIg
fTsKICAgICB2b2lkKiBtX3VzZXJEYXRhIHsgbnVsbHB0ciB9OwogICAgIEdEZXN0cm95Tm90aWZ5
IG1fZGVzdHJveU5vdGlmeSB7IG51bGxwdHIgfTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBHUmVm
UHRyPFdlYktpdFVSSVNjaGVtZVJlcXVlc3Q+PiBtX3JlcXVlc3RzOworICAgIEhhc2hNYXA8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBHUmVmUHRyPFdlYktpdFVSSVNjaGVtZVJl
cXVlc3Q+PiBtX3JlcXVlc3RzOwogfTsKIAogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmVmUHRy
PFdlYktpdFVSSVNjaGVtZUhhbmRsZXI+ID4gVVJJU2NoZW1lSGFuZGxlck1hcDsKLXR5cGVkZWYg
SGFzaE1hcDx1aW50NjRfdCwgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0PiA+IFVSSVNj
aGVtZVJlcXVlc3RNYXA7CiAKIGNsYXNzIFdlYktpdEF1dG9tYXRpb25DbGllbnQ7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJv
eHkuY3BwCmluZGV4IDFjZGNmY2UwNmY5NWU2YjUzMTI3NWE4M2UzZWY3ZjA5NjhmZThhNzcuLjNm
MWUyYjlkZWE2NGZjYjk1ZmM1YTdhMTlhODExNzJhMjNmNTAwMGYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcApA
QCAtNDc2LDkgKzQ3Niw5IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6dGVybWluYXRlVW5y
ZXNwb25zaXZlU2VydmljZVdvcmtlclByb2Nlc3NlcyhXZWJDb3JlOjpQCiAgICAgfQogfQogCi12
b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50
NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6
b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3ZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNz
VHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZp
ZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiByZXNv
dXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsK
LSAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICIlcCAtIE5ldHdvcmtQcm9jZXNzUHJv
eHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyOiBzb3VyY2VQcm9jZXNzSWRlbnRp
ZmllcjogJSIgUFJJdTY0ICIsIHJlc291cmNlTG9hZElkZW50aWZpZXI6ICUiIFBSSXU2NCwgdGhp
cywgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIudG9VSW50NjQoKSwgcmVzb3VyY2VMb2FkSWRlbnRp
Zmllcik7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N3YXBwaW5nLCAiJXAgLSBOZXR3b3JrUHJv
Y2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zlcjogc291cmNlUHJvY2Vz
c0lkZW50aWZpZXI6ICUiIFBSSXU2NCAiLCByZXNvdXJjZUxvYWRJZGVudGlmaWVyOiAlIiBQUkl1
NjQsIHRoaXMsIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLnRvVUludDY0KCksIHJlc291cmNlTG9h
ZElkZW50aWZpZXIgPyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLT50b1VJbnQ2NCgpIDogMCk7CiAg
ICAgaWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CiAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKHsgfSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKaW5kZXggNjk5YTgyNTllZmFkYTEy
YmFlZmYxY2RlOGJlMTBkMTM2ODQ1ZWQ2Mi4uNDYwZmIzMmU4MTBlMmZmYjJjNDliODU4OTc5MjYz
NmI3YmVhMGQ4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29y
ay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKQEAgLTIxNCw3ICsyMTQsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCB0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGb3JTeW5jUmVw
bHkoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6
OlRlc3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseURl
bGF5ZWRSZXBseSYmKTsKICAgICB2b2lkIHRlcm1pbmF0ZVVucmVzcG9uc2l2ZVNlcnZpY2VXb3Jr
ZXJQcm9jZXNzZXMoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIpOwogCi0gICAgdm9pZCBwcmVw
YXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBz
b3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNm
ZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHN0
ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
Pik+JiYpOwogCiAgICAgUHJvY2Vzc1Rocm90dGxlciYgdGhyb3R0bGVyKCkgZmluYWwgeyByZXR1
cm4gbV90aHJvdHRsZXI7IH0KICAgICB2b2lkIHVwZGF0ZVByb2Nlc3NBc3NlcnRpb24oKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNw
cCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcAppbmRl
eCBmNjViOGE0ODdjMmU2YzAxY2IzMDlhM2NkODUwYTVjM2UzM2NiNmYwLi5iMDkxOWI4Y2I0YTVh
NDMzMmVmODgyZGI1YTQ0YTJjMzQwOTI0YmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwCkBAIC0zMzMsNyArMzMzLDcgQEAgdm9pZCBQ
cm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5j
KEZyYW1lSWRlbnRpZmllcgogICAgIG1fcGFnZS5kZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0
aW9uQXN5bmNTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQYWdlSUQsIGZyYW1lSUQs
IFdURk1vdmUoZnJhbWVJbmZvKSwgaWRlbnRpZmllciwgbmF2aWdhdGlvbklELCBXVEZNb3ZlKG5h
dmlnYXRpb25BY3Rpb25EYXRhKSwgV1RGTW92ZShvcmlnaW5hdGluZ0ZyYW1lSW5mbyksIG9yaWdp
bmF0aW5nUGFnZUlELCBvcmlnaW5hbFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUo
cmVxdWVzdEJvZHkpLCBXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCB1c2VyRGF0YSwgbGlzdGVu
ZXJJRCk7CiB9CiAKLXZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJl
c3BvbnNlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZv
LCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2
aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlw
ZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmpl
Y3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0Nv
bnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQordm9p
ZCBQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVu
dGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGlj
eUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcm
IGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93
c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3Qg
VXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGlmICghdmFsaWRhdGVJbnB1dChmcmFtZUlELCBu
YXZpZ2F0aW9uSUQpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuaAppbmRleCBkNzhjMzhlMDA1MjBkOGM4NDBlMzcxMTI5
YjJlNDU0ZWI4OWFhNjA3Li5hNWRlY2ZmMmY3ZTkyMTNkN2QzYmVkYTBkYmMzNmQ2ZDk5NTRjM2Qz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94
eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmgK
QEAgLTEyNSw3ICsxMjUsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgc2VuZE1lc3NhZ2UoVW5pcXVl
UmVmPElQQzo6RW5jb2Rlcj4mJiwgT3B0aW9uU2V0PElQQzo6U2VuZE9wdGlvbj4sIHN0ZDo6b3B0
aW9uYWw8c3RkOjpwYWlyPENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSVBDOjpEZWNvZGVyKik+LCB1
aW50NjRfdD4+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uQXN5bmMoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdl
YkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBOYXZp
Z2F0aW9uQWN0aW9uRGF0YSYmLCBGcmFtZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8s
IHN0ZDo6b3B0aW9uYWw8V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNl
ckRhdGEmLCB1aW50NjRfdCBsaXN0ZW5lcklEKTsKLSAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJl
c3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBXZWJDb3Jl
OjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBi
b29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRH
cm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBsaXN0ZW5lcklELCB1aW50NjRfdCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgVXNlckRhdGEmKTsKKyAgICB2b2lkIGRlY2lkZVBv
bGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYm
LCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3JlOjpCcm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBkaWRDaGFuZ2VQcm92aXNp
b25hbFVSTEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdh
dGlvbklELCBVUkwmJik7CiAgICAgdm9pZCBkaWRQZXJmb3JtU2VydmVyUmVkaXJlY3QoY29uc3Qg
U3RyaW5nJiBzb3VyY2VVUkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgZGVzdGluYXRpb25VUkxTdHJp
bmcsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcik7CiAgICAgdm9pZCBkaWRSZWNlaXZlU2VydmVy
UmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWRGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNv
bnN0IFVzZXJEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApp
bmRleCBjMTExNzE0NzNlMjQ4NjA4YWU5N2YzNTk0ZjM5NTI1NTJjYWE2MDFiLi43ZWFmNzk5NGQ4
MDA2OWJhOWYxNDFmMWFmMjRjZDc2OTQyNjRkZmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKQEAgLTU2MzAsMTIgKzU2MzAsMTIgQEAgdm9pZCBXZWJQYWdlUHJv
eHk6OmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgRnJhbWUKIAogdm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlKEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lD
aGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwKICAgICB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmli
dXRlLAotICAgIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4
dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwg
dWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQs
IGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKKyAgICBib29sIHdhc0FsbG93ZWRCeUluamVjdGVk
QnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4
dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVu
ZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGRlY2lkZVBvbGljeUZvclJl
c3BvbnNlU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlELCBmcmFtZUlELCBX
VEZNb3ZlKGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwgcmVzcG9uc2UsIHJl
cXVlc3QsIGNhblNob3dNSU1FVHlwZSwgZG93bmxvYWRBdHRyaWJ1dGUsIHdhc0FsbG93ZWRCeUlu
amVjdGVkQnVuZGxlLCBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgbGlzdGVuZXJJRCwgdXNlckRhdGEpOwogfQogCi12b2lkIFdl
YlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQ
cm94eT4mJiBwcm9jZXNzLCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIEZyYW1lSWRlbnRpZmll
ciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lDaGVja0lkZW50aWZp
ZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNo
b3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxv
d2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBi
cm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJE
YXRhKQordm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJl
ZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgUG9saWN5
Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUs
IGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dp
dGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEp
CiB7CiAgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKIApA
QCAtMTAwMDIsNyArMTAwMDIsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c3RhcnRVUkxTY2hlbWVU
YXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZQogICAgIGl0ZXJh
dG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdURk1vdmUo
cGFyYW1ldGVycyksIG51bGxwdHIpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6c3RvcFVSTFNj
aGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyKQordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIpCiB7CiAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGRlY2x0eXBlKG1fdXJsU2No
ZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIpOjppc1ZhbGlkS2V5KGhhbmRsZXJJZGVudGlmaWVyKSk7
CiAgICAgYXV0byBpdGVyYXRvciA9IG1fdXJsU2NoZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIuZmlu
ZChoYW5kbGVySWRlbnRpZmllcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CmluZGV4IDMxYTMyOTYzM2RiMDFhMDk3YzdlYTI4ZjhkNTQ2NDUzNDljNjNmYzEuLmNhMDllODM3
MmVjNzNjZDcyNzVlZTAxODY1ZmIyZTdkOTZkZDYwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCkBAIC0xNzQ1LDcgKzE3NDUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBk
aWROYXZpZ2F0ZVdpdGhOYXZpZ2F0aW9uRGF0YVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYm
LCBjb25zdCBXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
KTsKICAgICB2b2lkIGRpZENoYW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWVTaGFyZWQoUmVmPFdl
YlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZp
Z2F0aW9uSUQsIFVSTCYmKTsKICAgICB2b2lkIGRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b25Bc3luY1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBOYXZpZ2F0aW9u
QWN0aW9uRGF0YSYmLCBGcmFtZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6
b3B0aW9uYWw8V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJiwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5LCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNlckRhdGEm
LCB1aW50NjRfdCBsaXN0ZW5lcklEKTsKLSAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNl
U2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBX
ZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5
Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNh
blNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNB
bGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CisgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Ym9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJv
b2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdy
b3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJ
RCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lkIHN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChS
ZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMmJik7CiAgICAgdm9pZCBsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVk
KFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6Ok5h
dmlnYXRpb24mLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmLCBjb25zdCBTdHJpbmcmIE1JTUVU
eXBlLCBjb25zdCBTdHJpbmcmIGVuY29kaW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6
T2JqZWN0KiB1c2VyRGF0YSwgV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBz
dGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiwgc3RkOjpvcHRpb25hbDxX
ZWJzaXRlUG9saWNpZXNEYXRhPiYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5LCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5KTsK
ICAgICB2b2lkIGxvYWRSZXF1ZXN0V2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQ
cm94eT4mJiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5LCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4sIHN0ZDo6
b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiA9IHN0ZDo6bnVsbG9wdCwgc3RkOjpvcHRp
b25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gZXhpc3RpbmdOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllclRvUmVzdW1lID0gc3RkOjpudWxsb3B0KTsKQEAgLTIwNjMsNyArMjA2
Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24o
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGlj
eUNoZWNrSWRlbnRpZmllciwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwKICAgICAgICAgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCB1aW50NjRfdCBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yUmVz
cG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELAotICAgICAgICBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRy
aWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5n
Q29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOworICAgICAgICBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRy
aWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5n
Q29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3Qg
bGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lkIHVuYWJsZVRvSW1wbGVtZW50
UG9saWN5KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBiZWdpblNhZmVCcm93c2luZ0NoZWNr
KGNvbnN0IFVSTCYsIGJvb2wsIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eSYpOwogCkBAIC0y
NDI3LDcgKzI0MjcsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICAgICB2b2lkIHN0YXJ0VVJMU2No
ZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIHN0b3BVUkxTY2hl
bWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmll
cik7CisgICAgdm9pZCBzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICB2b2lkIGxvYWRTeW5j
aHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFza0RlbGF5ZWRSZXBseSYm
KTsKIAogICAgIGJvb2wgY2hlY2tVUkxSZWNlaXZlZEZyb21DdXJyZW50T3JQcmV2aW91c1dlYlBy
b2Nlc3MoV2ViUHJvY2Vzc1Byb3h5JiwgY29uc3QgU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggMjYxYzhlNTE0NGRm
NjcxYTc2ZmRjM2RhN2E1YWE4NDg4Mzc4MTQ0YS4uYjU3NzcyNWYzMGNjMjY1MmY5ODJkMjkwYzRm
MDIwZTVkMjdlMzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5tZXNzYWdlcy5pbgpAQCAtMTA3LDcgKzEwNyw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQ
cm94eSB7CiAjZW5kaWYKIAogICAgICMgUG9saWN5IG1lc3NhZ2VzCi0gICAgRGVjaWRlUG9saWN5
Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJL
aXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZp
ZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1
ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgU3RyaW5nIGRvd25sb2FkQXR0cmlidXRlLCBib29s
IHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6QnJvd3Np
bmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlz
dGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSkKKyAgICBEZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6
RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBw
b2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qs
IGJvb2wgY2FuU2hvd01JTUVUeXBlLCBTdHJpbmcgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2Fz
QWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIGVudW06dWludDhfdCBXZWJDb3JlOjpCcm93c2luZ0Nv
bnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNp
b24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWlu
UmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2Vy
RGF0YSB1c2VyRGF0YSkKICAgICBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmMo
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5m
b0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hl
Y2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIHN0cnVjdCBXZWJLaXQ6Ok5hdmln
YXRpb25BY3Rpb25EYXRhIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBzdHJ1Y3QgV2ViS2l0OjpGcmFt
ZUluZm9EYXRhIG9yaWdpbmF0aW5nRnJhbWVJbmZvRGF0YSwgc3RkOjpvcHRpb25hbDxXZWJLaXQ6
OldlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlELCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3Qgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSByZWRpcmVjdFJlc3BvbnNlLCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhLCB1
aW50NjRfdCBsaXN0ZW5lcklEKQogICAgIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25T
eW5jKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBib29sIGlzTWFpbkZyYW1lLCBz
dHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hl
Y2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklE
LCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0
YSwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEs
IHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGlu
Z1BhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UgcmVxdWVz
dEJvZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVkaXJlY3RSZXNwb25zZSwgV2ViS2l0
OjpVc2VyRGF0YSB1c2VyRGF0YSkgLT4gKHN0cnVjdCBXZWJLaXQ6OlBvbGljeURlY2lzaW9uIFBv
bGljeURlY2lzaW9uKSBTeW5jaHJvbm91cwogICAgIERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0Fj
dGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6RnJh
bWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBwb2xp
Y3lDaGVja0lkZW50aWZpZXIsIHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5h
dmlnYXRpb25BY3Rpb25EYXRhLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgU3Ry
aW5nIGZyYW1lTmFtZSwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2Vy
RGF0YSkKQEAgLTUyMSw3ICs1MjEsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAg
IFNldElzVXNpbmdIaWdoUGVyZm9ybWFuY2VXZWJHTChib29sIGlzVXNpbmdIaWdoUGVyZm9ybWFu
Y2VXZWJHTCkKIAogICAgIFN0YXJ0VVJMU2NoZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hl
bWVUYXNrUGFyYW1ldGVycyBwYXJhbWV0ZXJzKQotICAgIFN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2
NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKKyAgICBTdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogICAgIExvYWRTeW5jaHJvbm91c1VS
TFNjaGVtZVRhc2soc3RydWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1l
dGVycykgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogCiAj
aWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAKaW5kZXggZmY2OGQ2NGUxODAyYWRlYmM0MDE0Yjhi
NjE3OTFhMDJmNGU0ZTRhMC4uYWY5NWEyNTEyYmM0MjMzYTFkYWRlOWFmZWIxMWM3ZWE0N2Y0Yjdk
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5j
cHAKQEAgLTU1LDE0ICs1NSwxNCBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0YXJ0VGFz
ayhXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcwogICAgIGF1dG8g
cmVzdWx0ID0gbV90YXNrcy5hZGQodGFza0lkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2s6OmNy
ZWF0ZSgqdGhpcywgcGFnZSwgcHJvY2Vzcywgd2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMp
LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSkpOwogICAgIEFTU0VSVChyZXN1bHQuaXNOZXdF
bnRyeSk7CiAKLSAgICBhdXRvIHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFk
ZChwYWdlLmlkZW50aWZpZXIoKSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CisgICAgYXV0byBwYWdl
RW50cnkgPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCksIEhh
c2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPigpKTsKICAgICBBU1NFUlQo
IXBhZ2VFbnRyeS5pdGVyYXRvci0+dmFsdWUuY29udGFpbnModGFza0lkZW50aWZpZXIpKTsKICAg
ICBwYWdlRW50cnkuaXRlcmF0b3ItPnZhbHVlLmFkZCh0YXNrSWRlbnRpZmllcik7CiAKICAgICBw
bGF0Zm9ybVN0YXJ0VGFzayhwYWdlLCByZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKIH0KIAotV2Vi
UHJvY2Vzc1Byb3h5KiBXZWJVUkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZp
ZXIodWludDY0X3QgdGFza0lkZW50aWZpZXIpIGNvbnN0CitXZWJQcm9jZXNzUHJveHkqIFdlYlVS
TFNjaGVtZUhhbmRsZXI6OnByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNs
dHlwZShtX3Rhc2tzKTo6aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwpAQCAtNzksNyArNzksNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0
b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAg
ICAgICByZXR1cm47CiAKICAgICBhdXRvJiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsK
LSAgICBWZWN0b3I8dWludDY0X3Q+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcnNUb1N0b3A7
CiAgICAgdGFza0lkZW50aWZpZXJzVG9TdG9wLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkodGFza3NC
eVBhZ2Uuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8gdGFza0lkZW50aWZpZXIgOiB0YXNrc0J5UGFn
ZSkgewogICAgICAgICBpZiAoIXByb2Nlc3MgfHwgcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHRh
c2tJZGVudGlmaWVyKSA9PSBwcm9jZXNzKQpAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQ
cm9jZXNzUHJveAogCiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2Vi
UGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKK3ZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFkZWNsdHlwZSht
X3Rhc2tzKTo6aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKQEAg
LTExNSw3ICsxMTUsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnRhc2tDb21wbGV0ZWQo
V2ViVVJMU2NoZW1lVGFzayYgdGFzaykKICAgICBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQodGFzayk7
CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCB1aW50NjRfdCB0YXNrSUQpCit2b2lkIFdlYlVS
TFNjaGVtZUhhbmRsZXI6OnJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlm
aWVyIHBhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJRCkKIHsK
ICAgICBhdXRvIGl0ZXJhdG9yID0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuZmluZChwYWdlSUQp
OwogICAgIEFTU0VSVChpdGVyYXRvciAhPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5lbmQoKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVy
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKaW5kZXgg
ZjRlM2RiNjBjYzNiOGUwMDBiMzQ2MDMyYTk5OTdlZWMwMTQ0ZDhkYi4uNGM5OTY2OWJhNDRkOTA1
YTBhMjVkMTI1NjA1ZmIxMzgwNzNmZGI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlVSTFNjaGVtZUhhbmRsZXIuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTUxLDcgKzUy
LDcgQEAgcHVibGljOgogICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgc3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlBy
b2Nlc3NQcm94eSYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBVUkxTY2hlbWVUYXNrUGFyYW1l
dGVycyYmLCBTeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyJiYpOwotICAgIHZvaWQgc3RvcFRhc2so
V2ViUGFnZVByb3h5JiwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFRh
c2soV2ViUGFnZVByb3h5JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJ
ZGVudGlmaWVyKTsKICAgICB2b2lkIHN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5Jiwg
V2ViUHJvY2Vzc1Byb3h5Kik7CiAgICAgdm9pZCB0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRh
c2smKTsKIApAQCAtNjMsMTMgKzY0LDEzIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHBs
YXRmb3JtU3RvcFRhc2soV2ViUGFnZVByb3h5JiwgV2ViVVJMU2NoZW1lVGFzayYpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgcGxhdGZvcm1UYXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smKSB7
IH07CiAKLSAgICB2b2lkIHJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSUQpOwotICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRh
c2tJZGVudGlmaWVyKHVpbnQ2NF90KSBjb25zdDsKKyAgICB2b2lkIHJlbW92ZVRhc2tGcm9tUGFn
ZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpOworICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgY29uc3Q7CiAKICAgICB1aW50NjRfdCBt
X2lkZW50aWZpZXI7CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWY8V2ViVVJMU2NoZW1lVGFz
az4+IG1fdGFza3M7Ci0gICAgSGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBIYXNoU2V0
PHVpbnQ2NF90Pj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CisgICAgSGFzaE1hcDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNr
czsKKyAgICBIYXNoTWFwPFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8V2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CiAgICAg
CiAgICAgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciBtX3N5bmNMb2FkQ29tcGxldGlvbkhhbmRs
ZXI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAppbmRleCBl
YWMwOWJkZWNhMWRlYzBjYjIxOWFjMWQwMzMwOGIyZTI3MjMwOWNlLi4yYTllMDZhMmEyYjBmZDJk
NmNkZTQ0NjUxOTNiNmRmOGM4MDI2NGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
VVJMU2NoZW1lVGFzay5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKIAogICAgIH5XZWJVUkxT
Y2hlbWVUYXNrKCk7CiAKLSAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQo
UnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KICAgICBXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyIHBhZ2VQcm94eUlEKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OyByZXR1cm4gbV9wYWdlUHJveHlJRDsgfQogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdl
YlBhZ2VJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fd2Vi
UGFnZUlEOyB9CiAgICAgV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzKCkgeyBBU1NFUlQoUnVuTG9v
cDo6aXNNYWluKCkpOyByZXR1cm4gbV9wcm9jZXNzLmdldCgpOyB9CkBAIC0xMDEsNyArMTAxLDcg
QEAgcHJpdmF0ZToKIAogICAgIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPiBtX3VybFNjaGVtZUhh
bmRsZXI7CiAgICAgUmVmUHRyPFdlYlByb2Nlc3NQcm94eT4gbV9wcm9jZXNzOwotICAgIHVpbnQ2
NF90IG1faWRlbnRpZmllcjsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bV9pZGVudGlmaWVyOwogICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgbV9wYWdlUHJveHlJRDsK
ICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBtX3dlYlBhZ2VJRDsKICAgICBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QgbV9yZXF1ZXN0IFdURl9HVUFSREVEX0JZX0xPQ0sobV9yZXF1ZXN0TG9j
ayk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuaAppbmRleCAzZjgyN2EwMWY0ODgxNzQ0NjY2YTM2ZWU3YWJhYTcz
MDcwMTQwZDRiLi40NWNkNjFlNzFkODg1Y2YxZjdjYzM4YjM1NTFhMmM0OGJkMDZkZjUwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUlu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50LmgKQEAgLTI1LDYgKzI1LDggQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgorCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKIGNsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFnZTsKQEAgLTQ1LDE0ICs0NywxNCBA
QCBjbGFzcyBSZXNvdXJjZUxvYWRDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgflJlc291
cmNlTG9hZENsaWVudCgpID0gZGVmYXVsdDsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRJbml0aWF0
ZUxvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWlu
dDY0X3QgLyppZGVudGlmaWVyKi8sIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJv
b2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyovKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
d2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFt
ZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2Vi
RnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZv
clJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAv
KmlkZW50aWZpZXIqLywgdWludDY0X3QgY29udGVudExlbmd0aCkgeyB9Ci0gICAgdmlydHVhbCB2
b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6Oldl
YkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBk
aWRGYWlsTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUm
LCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IHsgfQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYktpdDo6V2ViUGFn
ZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLykgeyByZXR1cm4g
dHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJL
aXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8p
IHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVz
b3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9v
bCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCB3
aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1l
JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9CisgICAgdmlydHVh
bCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdl
YktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6Oldl
YkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCB1aW50NjRfdCBjb250
ZW50TGVuZ3RoKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNl
KFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291
cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSB7IH0KKyAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJL
aXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSB7IHJldHVy
biB0cnVlOyB9CisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdl
YktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpIHsgcmV0dXJuIHRydWU7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIEluamVj
dGVkQnVuZGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQuY3BwCmluZGV4IGI4YmQ0MTI0MzIxNGU4MGViZDZiN2M1MTE2M2E1OTBkOTNi
OTdlZjguLjA2ZDhhZGEyNTBhMzcxYmJjYTVlYjBlNjQ0MWE1MmI3MjM0NWM5ZjkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3Bw
CkBAIC0zOSwyMCArMzksMjAgQEAgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50
OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQoY29uc3QKICAgICBpbml0aWFs
aXplKGNsaWVudCk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYg
ZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgYm9vbCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZykKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQ
YWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdl
JiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgcGFnZUlz
UHJvdmlzaW9uYWxseUxvYWRpbmcpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkSW5pdGlh
dGVMb2FkRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVy
LCB0b0FQSShyZXF1ZXN0KSwgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIG1fY2xpZW50LmJh
c2UuY2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2Uo
dG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJ
KHJlcXVlc3QpLCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZywgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6
OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwg
dWludDY0X3QgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2Us
IFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBpZiAoIW1fY2xpZW50LndpbGxTZW5kUmVxdWVzdEZv
ckZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8QVBJOjpVUkxSZXF1ZXN0PiBy
ZXR1cm5lZFJlcXVlc3QgPSBhZG9wdFJlZih0b0ltcGwobV9jbGllbnQud2lsbFNlbmRSZXF1ZXN0
Rm9yRnJhbWUodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShy
ZXF1ZXN0KSwgdG9BUEkocmVkaXJlY3RSZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5m
bykpKTsKKyAgICBSZWZQdHI8QVBJOjpVUkxSZXF1ZXN0PiByZXR1cm5lZFJlcXVlc3QgPSBhZG9w
dFJlZih0b0ltcGwobV9jbGllbnQud2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUodG9BUEkoJnBhZ2Up
LCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJlcXVlc3QpLCB0
b0FQSShyZWRpcmVjdFJlc3BvbnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOwogICAg
IGlmIChyZXR1cm5lZFJlcXVlc3QpIHsKICAgICAgICAgLy8gSWYgdGhlIGNsaWVudCByZXR1cm5l
ZCBhbiBIVFRQIGJvZHksIHdlIHdhbnQgdG8gdXNlIHRoYXQgaHR0cCBib2R5LiBUaGlzIGlzIG5l
ZWRlZCB0byBmaXggPHJkYXI6Ly9wcm9ibGVtLzIzNzYzNTg0PgogICAgICAgICBhdXRvJiByZXR1
cm5lZFJlc291cmNlUmVxdWVzdCA9IHJldHVybmVkUmVxdWVzdC0+cmVzb3VyY2VSZXF1ZXN0KCk7
CkBAIC02NCw1MiArNjQsNTIgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UKICAgICAgICAgcmVx
dWVzdCA9IHsgfTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGll
bnQ6OmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1l
JiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRSZWNlaXZlUmVz
cG9uc2VGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkUmVj
ZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVu
dGlmaWVyLCB0b0FQSShyZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAg
bV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQ
SSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJlc3BvbnNlKSwgbV9jbGll
bnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYg
cGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCB1aW50NjRfdCBjb250
ZW50TGVuZ3RoKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUm
IGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdWlu
dDY0X3QgY29udGVudExlbmd0aCkKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZFJlY2VpdmVDb250
ZW50TGVuZ3RoRm9yUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJh
bWUpLCBpZGVudGlmaWVyLCBjb250ZW50TGVuZ3RoLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8p
OworICAgIG1fY2xpZW50LmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UodG9BUEko
JnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIGNvbnRlbnRMZW5n
dGgsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQ
YWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYg
cGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyKQordm9pZCBJbmplY3Rl
ZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShX
ZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuZGlkRmluaXNoTG9hZEZv
clJlc291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRGaW5pc2hMb2Fk
Rm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCBtX2Ns
aWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRpZEZpbmlzaExvYWRGb3JSZXNv
dXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwg
bV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwg
V2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9y
JiBlcnJvcikKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRG
YWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIGlmICghbV9jbGllbnQuZGlkRmFpbExvYWRGb3JSZXNvdXJjZSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkRmFpbExvYWRGb3JSZXNvdXJjZSh0
b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIHRvQVBJKGVycm9yKSwgbV9j
bGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBtX2NsaWVudC5kaWRGYWlsTG9hZEZvclJlc291
cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0
b0FQSShlcnJvciksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLWJvb2wgSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBh
Z2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK2Jvb2wgSW5q
ZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKFdl
YlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5zaG91bGRDYWNoZVJlc3Bv
bnNlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIHJldHVybiBtX2NsaWVudC5zaG91bGRD
YWNoZVJlc3BvbnNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgbV9j
bGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICByZXR1cm4gbV9jbGllbnQuc2hvdWxkQ2FjaGVS
ZXNwb25zZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQo
KSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotYm9vbCBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYlBhZ2Um
IHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK2Jvb2wgSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFn
ZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UpCiAgICAgICAgIHJldHVybiB0cnVlOwogCi0gICAgcmV0dXJuIG1fY2xp
ZW50LnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1l
KSwgaWRlbnRpZmllciwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICByZXR1cm4gbV9j
bGllbnQuc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJh
bWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dC5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCmluZGV4IDNhZWYzZGNjZWEzOTY1MGNkNjFmODRl
ZmYyODFhZDBkMjQ3YTZhZTcuLjk4ODEzZDliMTU0YmIzZDIzYmNlMzQ1NDQ0YWJkYmViMDUyNDNh
YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9J
bmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2Fk
Q2xpZW50LmgKQEAgLTUxLDE0ICs1MSwxNCBAQCBjbGFzcyBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNv
dXJjZUxvYWRDbGllbnQgOiBwdWJsaWMgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyYwogcHVi
bGljOgogICAgIGV4cGxpY2l0IEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudChj
b25zdCBXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnRCYXNlKik7CiAKLSAgICB2b2lkIGRp
ZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQ
cm92aXNpb25hbGx5TG9hZGluZyovKSBvdmVycmlkZTsKLSAgICB2b2lkIHdpbGxTZW5kUmVxdWVz
dEZvckZyYW1lKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBv
dmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2Um
LCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9y
UmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwgdWludDY0
X3QgY29udGVudExlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkRm9yUmVz
b3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVp
bnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlk
ZTsKLSAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWlu
dDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFs
U3RvcmFnZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFt
ZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgYm9vbCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKi8pIG92ZXJy
aWRlOworICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYsIFdlYkZyYW1l
JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9y
UmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZp
bmlzaExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNv
dXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICBib29sIHNo
b3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
Zmllcikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwCmluZGV4IDYwYjk1ZWQzZWJhODc5YmM0OWU3MTE1NjQxNWExYmYwNTljODZh
NTQuLjQ3YjkxY2U4N2QzNjEzZTM1ZDU3OTQwNzk3YWRmMGIxZGQwMGE0OGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uLmNwcApAQCAtOTIsNyArOTIsNyBAQCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b246On5OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKQogdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5l
Y3Rpb246OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgSVBD
OjpEZWNvZGVyJiBkZWNvZGVyKQogewogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZlck5h
bWUoKSA9PSBNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUo
KSkgewotICAgICAgICBpZiAoYXV0byogd2ViUmVzb3VyY2VMb2FkZXIgPSBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVneSgpLndlYlJlc291cmNlTG9hZGVyRm9ySWRlbnRp
ZmllcihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRvKiB3ZWJSZXNv
dXJjZUxvYWRlciA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCku
d2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKG1ha2VPYmplY3RJZGVudGlmaWVyPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVyPihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpKQogICAgICAgICAg
ICAgd2ViUmVzb3VyY2VMb2FkZXItPmRpZFJlY2VpdmVXZWJSZXNvdXJjZUxvYWRlck1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC0yMjYsMTIg
KzIyNiwxMiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6d3JpdGVCbG9ic1RvVGVt
cG9yYXJ5RmlsZXNGb3JJbmRleGVkREIoY29uc3QgVmVjdAogICAgIGNvbm5lY3Rpb24oKS5zZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpX
cml0ZUJsb2JzVG9UZW1wb3JhcnlGaWxlc0ZvckluZGV4ZWREQihibG9iVVJMcyksIFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246
OmRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VF
cnJvciYmIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCit2b2lkIE5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yLCBS
ZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkud2ViTG9hZGVyU3RyYXRlZ3koKS5kaWRGaW5pc2hQaW5nTG9hZChwaW5nTG9hZElkZW50aWZp
ZXIsIFdURk1vdmUoZXJyb3IpLCBXVEZNb3ZlKHJlc3BvbnNlKSk7CiB9CiAKLXZvaWQgTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNv
bm5lY3Rpb25JZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCit2b2lkIE5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFJlc291cmNlRXJyb3Im
JiBlcnJvcikKIHsKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVn
eSgpLmRpZEZpbmlzaFByZWNvbm5lY3Rpb24ocHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1v
dmUoZXJyb3IpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKaW5kZXggZjgxMTk2YWUwMTI0MDBi
YjFjNmNmZmUyOGE2MmJmZmM0Y2RhNzUxNC4uZDYyZGZlNGRmNWFhNWE3Zjg0NzZhYTE5ZmVjZjg3
NGJiZjg0OWFkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKQEAgLTIzLDE0ICsyMywxNCBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uX2gKLSNkZWZpbmUgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uX2gK
KyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1ZGUgIlNoYXJl
YWJsZVJlc291cmNlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvQ29uc29sZVR5cGVzLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9NZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5oPgogI2luY2x1
ZGUgPFdlYkNvcmUvUlRDRGF0YUNoYW5uZWxJZGVudGlmaWVyLmg+CisjaW5jbHVkZSA8V2ViQ29y
ZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NlcnZpY2VX
b3JrZXJUeXBlcy5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CkBAIC01MCw4ICs1MCw2IEBAIG5hbWVzcGFjZSBXZWJLaXQgewog
Y2xhc3MgV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOwogY2xhc3MgV2ViU1dDbGllbnRDb25uZWN0
aW9uOwogCi10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7Ci0KIGNsYXNz
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbj4sIElQQzo6Q29ubmVjdGlvbjo6Q2xpZW50IHsKIHB1YmxpYzoKICAgICBz
dGF0aWMgUmVmPE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbj4gY3JlYXRlKElQQzo6Q29ubmVjdGlv
bjo6SWRlbnRpZmllciBjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6SFRUUENvb2tpZUFj
Y2VwdFBvbGljeSBodHRwQ29va2llQWNjZXB0UG9saWN5KQpAQCAtOTYsOCArOTQsOCBAQCBwcml2
YXRlOgogICAgIHZvaWQgZGlkQ2xvc2UoSVBDOjpDb25uZWN0aW9uJikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpNZXNz
YWdlTmFtZSkgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90
IHBpbmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJiYpOwotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50
NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsK
KyAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24o
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYpOwogICAgIHZvaWQgc2V0T25MaW5lU3RhdGUoYm9v
bCBpc09uTGluZSk7CiAgICAgdm9pZCBjb29raWVBY2NlcHRQb2xpY3lDaGFuZ2VkKFdlYkNvcmU6
OkhUVFBDb29raWVBY2NlcHRQb2xpY3kpOwogCkBAIC0xMjksNSArMTI3LDMgQEAgcHJpdmF0ZToK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gTmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRl
eCBjOGI0YTE4ZjdlOTQyNDU0YjBhYTk2NjYxMmYxOTNhY2ZkYWM4NjQwLi42YmEzMWY1NDhiOWFh
NTAwMTdkNmFkNDc4MjZjNzMxODIxNmE2MzY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLm1lc3NhZ2VzLmluCkBAIC0yNiw4ICsyNiw4IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbiBMZWdhY3lSZWNlaXZlciB7CiAgICAgRGlkQ2FjaGVSZXNvdXJjZShXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViS2l0OjpTaGFyZWFibGVSZXNvdXJjZTo6
SGFuZGxlIHJlc291cmNlKQogI2VuZGlmCiAKLSAgICBEaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRf
dCBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAgRGlkRmluaXNoUHJlY29ubmVjdGlv
bih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBlcnJvcikKKyAgICBEaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9y
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIERpZEZpbmlzaFByZWNv
bm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25J
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogICAgIFNldE9uTGluZVN0
YXRlKGJvb2wgaXNPbkxpbmUpOwogICAgIENvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoZW51bTp1
aW50OF90IFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQb2xpY3kgcG9saWN5KTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3ku
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3ku
Y3BwCmluZGV4IDM1MjUzMTA2Y2IxZDMwMTMzOWMyYjMwZTg2MDJmNmJmMjRhM2U3MmIuLjA5NGNj
N2FlMGU0Zjc0NjNiYzVjNjYzOTRiODhiY2U3YjA3NTg1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTgx
LDggKzgxLDggQEAKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJST1Jf
QkFTSUMoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFdlYkxvYWRl
clN0cmF0ZWd5OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKIAogI2RlZmluZSBXRUJMT0FE
RVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiJXAgLSBbcmVzb3VyY2VM
b2FkZXI9JXAsIGZyYW1lTG9hZGVyPSVwLCBmcmFtZT0lcCwgd2ViUGFnZUlEPSUiIFBSSXU2NCAi
LCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBXZWJMb2FkZXJT
dHJhdGVneTo6IgotI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFS
RF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIuZnJhbWVM
b2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJ
RC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFj
a2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAotI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9XSVRI
X0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhpcywgbnVsbHB0
ciwgJmZyYW1lTG9hZGVyLCAmZnJhbWVMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJz
LnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgp
LCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAorI2RlZmluZSBXRUJMT0FERVJTVFJBVEVH
WV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJjZUxvYWRlciwg
cmVzb3VyY2VMb2FkZXIuZnJhbWVMb2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJhbWUoKSwgdHJh
Y2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJh
bWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRC50b1VJbnQ2NCgp
CisjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVMRUFTRV9MT0df
U1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCBudWxscHRyLCAmZnJhbWVMb2FkZXIsICZmcmFtZUxv
YWRlci5mcmFtZSgpLCB0cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0KCksIHRyYWNr
aW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5yZXNv
dXJjZUlELnRvVUludDY0KCkKIAogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xP
RyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFT
RV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xP
R19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBXRUJMT0FERVJT
VFJBVEVHWV9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0
d29yaywgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10
LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19f
VkFfQVJHU19fKQpAQCAtMTcwLDcgKzE3MCw3IEBAIHN0YXRpYyBTZWNvbmRzIG1heGltdW1CdWZm
ZXJpbmdUaW1lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSkKIAogdm9pZCBXZWJMb2FkZXJTdHJh
dGVneTo6c2NoZWR1bGVMb2FkKFJlc291cmNlTG9hZGVyJiByZXNvdXJjZUxvYWRlciwgQ2FjaGVk
UmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQ
UmVkaXJlY3QpCiB7Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVz
b3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNl
TG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKICAgICBhdXRv
JiBmcmFtZUxvYWRlckNsaWVudCA9IHJlc291cmNlTG9hZGVyLmZyYW1lTG9hZGVyKCktPmNsaWVu
dCgpOwpAQCAtMjk1LDcgKzI5NSw3IEBAIHN0YXRpYyB2b2lkIGFkZFBhcmFtZXRlcnNTaGFyZWQo
Y29uc3QgRnJhbWUqIGZyYW1lLCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVyCiAKIHZvaWQg
V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2VzcyhSZXNvdXJj
ZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Y29uc3QgV2ViUmVzb3VyY2VMb2FkZXI6OlRyYWNraW5nUGFyYW1ldGVycyYgdHJhY2tpbmdQYXJh
bWV0ZXJzLCBib29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3QsIFNl
Y29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWUpCiB7Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmll
ciBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOworICAgIGF1dG8gaWRl
bnRpZmllciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRp
Zmllcik7CiAKICAgICBDb250ZW50U25pZmZpbmdQb2xpY3kgY29udGVudFNuaWZmaW5nUG9saWN5
ID0gcmVzb3VyY2VMb2FkZXIuc2hvdWxkU25pZmZDb250ZW50KCkgPyBDb250ZW50U25pZmZpbmdQ
b2xpY3k6OlNuaWZmQ29udGVudCA6IENvbnRlbnRTbmlmZmluZ1BvbGljeTo6RG9Ob3RTbmlmZkNv
bnRlbnQ7CkBAIC00NzMsNyArNDczLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cmVtb3Zl
KFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKICAgICAgICAgcmV0dXJuOwogICAgIH0K
ICAgICAKLSAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgPSByZXNvdXJjZUxv
YWRlci0+aWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVy
LT5pZGVudGlmaWVyKCk7CiAgICAgaWYgKCFpZGVudGlmaWVyKSB7CiAgICAgICAgIExPR19FUlJP
UigiV2ViTG9hZGVyU3RyYXRlZ3kgcmVtb3ZpbmcgYSBSZXNvdXJjZUxvYWRlciB0aGF0IGhhcyBu
byBpZGVudGlmaWVyLiIpOwogICAgICAgICByZXR1cm47CkBAIC01NjYsNyArNTY2LDcgQEAgV2Vi
TG9hZGVyU3RyYXRlZ3k6OlN5bmNMb2FkUmVzdWx0IFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkRGF0
YVVSTFN5bmNocm9ub3VzbHkoY28KICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGQ6Om9wdGlv
bmFsPFdlYkxvYWRlclN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6
OnRyeUxvYWRpbmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKEZyYW1lTG9hZGVy
JiBmcmFtZUxvYWRlciwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCitzdGQ6Om9wdGlvbmFsPFdlYkxvYWRlclN0cmF0ZWd5
OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6OnRyeUxvYWRpbmdTeW5jaHJvbm91
c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKIHsKICAgICBhdXRvKiB3ZWJGcmFtZUxvYWRlckNsaWVudCA9IHRvV2Vi
RnJhbWVMb2FkZXJDbGllbnQoZnJhbWVMb2FkZXIuY2xpZW50KCkpOwogICAgIGF1dG8qIHdlYkZy
YW1lID0gd2ViRnJhbWVMb2FkZXJDbGllbnQgPyAmd2ViRnJhbWVMb2FkZXJDbGllbnQtPndlYkZy
YW1lKCkgOiBudWxscHRyOwpAQCAtNTg2LDcgKzU4Niw3IEBAIHN0ZDo6b3B0aW9uYWw8V2ViTG9h
ZGVyU3RyYXRlZ3k6OlN5bmNMb2FkUmVzdWx0PiBXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIHVuc2lnbmVk
IGxvbmcgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksICBjb25z
dCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVx
dWVzdEhlYWRlcnMsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQordm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6bG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3Jl
ZGVudGlhbFBvbGljeSwgIGNvbnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhl
YWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVycywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAg
YXV0byogd2ViRnJhbWVMb2FkZXJDbGllbnQgPSB0b1dlYkZyYW1lTG9hZGVyQ2xpZW50KGZyYW1l
TG9hZGVyLmNsaWVudCgpKTsKICAgICBhdXRvKiB3ZWJGcmFtZSA9IHdlYkZyYW1lTG9hZGVyQ2xp
ZW50ID8gJndlYkZyYW1lTG9hZGVyQ2xpZW50LT53ZWJGcmFtZSgpIDogbnVsbHB0cjsKQEAgLTY4
MywxMiArNjgzLDYgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6YnJvd3NpbmdDb250ZXh0UmVt
b3ZlZChGcmFtZSYgZnJhbWUpCiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0
d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpCcm93c2luZ0NvbnRleHRSZW1vdmVkKHBhZ2Uud2Vi
UGFnZVByb3h5SWRlbnRpZmllcigpLCBwYWdlLmlkZW50aWZpZXIoKSwgV2ViRnJhbWU6OmZyb21D
b3JlRnJhbWUoZnJhbWUpLT5mcmFtZUlEKCkpLCAwKTsKIH0KIAotdWludDY0X3QgV2ViTG9hZGVy
U3RyYXRlZ3k6OmdlbmVyYXRlTG9hZElkZW50aWZpZXIoKQotewotICAgIHN0YXRpYyB1aW50NjRf
dCBpZGVudGlmaWVyID0gMDsKLSAgICByZXR1cm4gKytpZGVudGlmaWVyOwotfQotCiBib29sIFdl
YkxvYWRlclN0cmF0ZWd5Ojp1c2VQaW5nTG9hZCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuICFSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmZldGNoQVBJS2VlcEFsaXZlRW5h
YmxlZCgpOwpAQCAtNzEyLDcgKzcwNiw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnN0YXJ0
UGluZ0xvYWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvCiAgICAg
fQogCiAgICAgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFtZXRlcnM7Ci0g
ICAgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0
ZUxvYWRJZGVudGlmaWVyKCk7CisgICAgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICBsb2FkUGFyYW1l
dGVycy53ZWJQYWdlUHJveHlJRCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsK
ICAgICBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQgPSB3ZWJQYWdlLT5pZGVudGlmaWVyKCk7CiAg
ICAgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRCA9IHdlYkZyYW1lLT5mcmFtZUlEKCk7CkBAIC03
NDksNyArNzQzLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c3RhcnRQaW5nTG9hZChGcmFt
ZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY28KICAgICBXZWJQcm9jZXNzOjpz
aW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCku
c2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkxvYWRQaW5nIHsg
bG9hZFBhcmFtZXRlcnMgfSwgMCk7CiB9CiAKLXZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZp
bmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYm
IGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCit2b2lkIFdlYkxvYWRlclN0cmF0
ZWd5OjpkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
cGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJlc291cmNlUmVzcG9u
c2UmJiByZXNwb25zZSkKIHsKICAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IG1fcGlu
Z0xvYWRDb21wbGV0aW9uSGFuZGxlcnMudGFrZShwaW5nTG9hZElkZW50aWZpZXIpKQogICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGVycm9yKSwgV1RGTW92ZShyZXNwb25zZSkpOwpA
QCAtNzg3LDkgKzc4MSw5IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyhX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBXZWJQYWdlCiAgICAgICAgICAgICBy
ZXF1ZXN0LnNldElzQXBwSW5pdGlhdGVkKGxvYWRlci0+bGFzdE5hdmlnYXRpb25XYXNBcHBJbml0
aWF0ZWQoKSk7CiAgICAgfQogCi0gICAgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVj
dGlvbklkZW50aWZpZXI7CisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyOwogICAgIGlmIChjb21wbGV0aW9u
SGFuZGxlcikgewotICAgICAgICBwcmVjb25uZWN0aW9uSWRlbnRpZmllciA9IFdlYkxvYWRlclN0
cmF0ZWd5OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7CisgICAgICAgIHByZWNvbm5lY3Rpb25J
ZGVudGlmaWVyID0gV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgp
OwogICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVy
cy5hZGQoKnByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KSk7CiAgICAgICAgIEFTU0VSVF9VTlVTRUQoYWRkUmVzdWx0LCBhZGRSZXN1bHQuaXNOZXdFbnRy
eSk7CiAgICAgfQpAQCAtODE5LDEwICs4MTMsMTIgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6
cHJlY29ubmVjdFRvKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UK
ICAgICBwYXJhbWV0ZXJzLmlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSB3ZWJGcmFtZS5p
c1RvcEZyYW1lTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4oKTsKICNlbmRpZgogCisgICAgLy8g
RklYTUU6IFVzZSBzZW5kV2l0aEFzeW5jUmVwbHkgaW5zdGVhZCBvZiBwcmVjb25uZWN0aW9uSWRl
bnRpZmllcgorICAgIC8vIEZJWE1FOiBkb24ndCB1c2UgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGZvciBhIHByZWNvbm5lY3Rpb24gaWRlbnRpZmllciwgdG9vLiBJdCBzaG91bGQg
aGF2ZSBpdHMgb3duIHR5cGUuCiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0
d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpQcmVjb25uZWN0VG8ocHJlY29ubmVjdGlvbklkZW50
aWZpZXIsIFdURk1vdmUocGFyYW1ldGVycykpLCAwKTsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJh
dGVneTo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRp
ZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQordm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6ZGlk
RmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJl
Y29ubmVjdGlvbklkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvcikKIHsKICAgICBpZiAo
YXV0byBjb21wbGV0aW9uSGFuZGxlciA9IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVycy50
YWtlKHByZWNvbm5lY3Rpb25JZGVudGlmaWVyKSkKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIo
V1RGTW92ZShlcnJvcikpOwpAQCAtODYzLDIxICs4NTksMjEgQEAgdm9pZCBXZWJMb2FkZXJTdHJh
dGVneTo6c2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5hYmxlZChib29sIGVuYWJs
ZWQpCiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpTZXRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKGVuYWJs
ZWQpLCAwKTsKIH0KIAotUmVzb3VyY2VSZXNwb25zZSBXZWJMb2FkZXJTdHJhdGVneTo6cmVzcG9u
c2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlm
aWVyKQorUmVzb3VyY2VSZXNwb25zZSBXZWJMb2FkZXJTdHJhdGVneTo6cmVzcG9uc2VGcm9tUmVz
b3VyY2VMb2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcikKIHsKICAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlOwogICAgIFdlYlBy
b2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5l
Y3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OkdldE5ldHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSB7IHJlc291cmNlTG9hZElkZW50aWZp
ZXIgfSwgTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpHZXROZXR3b3Jr
TG9hZEluZm9ybWF0aW9uUmVzcG9uc2U6OlJlcGx5IHsgcmVzcG9uc2UgfSwgMCk7CiAgICAgcmV0
dXJuIHJlc3BvbnNlOwogfQogCi1WZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+
IFdlYkxvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorVmVjdG9y
PE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJt
ZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIpCiB7CiAgICAg
VmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBpbmZvcm1hdGlvbjsKICAgICBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5j
b25uZWN0aW9uKCkuc2VuZFN5bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpHZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uIHsgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciB9LCBNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Okdl
dE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb246OlJlcGx5IHsgaW5mb3JtYXRpb24g
fSwgMCk7CiAgICAgcmV0dXJuIGluZm9ybWF0aW9uOwogfQogCi1OZXR3b3JrTG9hZE1ldHJpY3Mg
V2ViTG9hZGVyU3RyYXRlZ3k6Om5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZp
ZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKK05ldHdvcmtMb2FkTWV0cmljcyBX
ZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikKIHsKICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3M7CiAgICAgV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVj
dGlvbigpLnNlbmRTeW5jKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
VGFrZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzIHsgcmVzb3VyY2VMb2FkSWRlbnRpZmll
ciB9LCBNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlRha2VOZXR3b3Jr
TG9hZEluZm9ybWF0aW9uTWV0cmljczo6UmVwbHkgeyBuZXR3b3JrTWV0cmljcyB9LCAwKTsKQEAg
LTkxOSw3ICs5MTUsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzZXRSZXNvdXJjZUxvYWRT
Y2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlJiBwYWdlLCBXZWJDbwogCiB2b2lkIFdlYkxvYWRl
clN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXIqPiYgcmVzb3VyY2VzKQogewotICAgIGF1dG8gaWRlbnRpZmllcnMg
PSByZXNvdXJjZXMubWFwKFtdKGF1dG8qIGxvYWRlcikgLT4gUmVzb3VyY2VMb2FkSWRlbnRpZmll
ciB7CisgICAgYXV0byBpZGVudGlmaWVycyA9IHJlc291cmNlcy5tYXAoW10oYXV0byogbG9hZGVy
KSAtPiBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgewogICAgICAgICByZXR1cm4g
bG9hZGVyLT5pZGVudGlmaWVyKCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmggYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oCmluZGV4IGM3OTZhZTUwZjE0
YzE2ZWMyNWU2ZTAxNDlkNzY2YmY3ZDExZTE4N2IuLjQwNWM3MzQzMGUyMTAxMmIxZTFhYzc4ODk2
NWNiYzk3Njc3NjIzNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaApAQCAtNDQsNyArNDQsNiBAQCBjbGFzcyBOZXR3b3Jr
UHJvY2Vzc0Nvbm5lY3Rpb247CiBjbGFzcyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiBjbGFz
cyBXZWJVUkxTY2hlbWVUYXNrUHJveHk7Ci10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElk
ZW50aWZpZXI7CiAKIGNsYXNzIFdlYkxvYWRlclN0cmF0ZWd5IGZpbmFsIDogcHVibGljIFdlYkNv
cmU6OkxvYWRlclN0cmF0ZWd5IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXZWJMb2FkZXJT
dHJhdGVneSk7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwpAQCAtNTMsNyArNTIsNyBAQCBwdWJs
aWM6CiAgICAgfldlYkxvYWRlclN0cmF0ZWd5KCkgZmluYWw7CiAgICAgCiAgICAgdm9pZCBsb2Fk
UmVzb3VyY2UoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZSYsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlck9wdGlv
bnMmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpTdWJyZXNvdXJjZUxv
YWRlcj4mJik+JiYpIGZpbmFsOwotICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShX
ZWJDb3JlOjpGcmFtZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VMb2FkSWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVu
dGlhbFBvbGljeSwgY29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6
SFRUUEhlYWRlck1hcCYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKSBmaW5hbDsKKyAgICB2b2lkIGxvYWRS
ZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdl
YkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IFdlYkNvcmU6OkZldGNoT3B0aW9u
cyYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgZmlu
YWw7CiAgICAgdm9pZCBwYWdlTG9hZENvbXBsZXRlZChXZWJDb3JlOjpQYWdlJikgZmluYWw7CiAg
ICAgdm9pZCBicm93c2luZ0NvbnRleHRSZW1vdmVkKFdlYkNvcmU6OkZyYW1lJikgZmluYWw7CiAK
QEAgLTY4LDE1ICs2NywxNSBAQCBwdWJsaWM6CiAKICAgICBib29sIHVzZVBpbmdMb2FkKCkgY29u
c3QgZmluYWw7CiAgICAgdm9pZCBzdGFydFBpbmdMb2FkKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYgb3JpZ2lu
YWxSZXF1ZXN0SGVhZGVycywgY29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgV2ViQ29yZTo6
Q29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbiwgUGluZ0xvYWRDb21wbGV0aW9uSGFuZGxl
ciYmKSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2Fk
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYpOworICAgIHZvaWQgZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIHBpbmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYpOwogCiAgICAgdm9pZCBwcmVjb25uZWN0
VG8oV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNv
cmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXIm
JiA9IG51bGxwdHIpOwogICAgIHZvaWQgcHJlY29ubmVjdFRvKFdlYkNvcmU6OkZyYW1lTG9hZGVy
JiwgY29uc3QgVVJMJiwgV2ViQ29yZTo6U3RvcmVkQ3JlZGVudGlhbHNQb2xpY3ksIFByZWNvbm5l
Y3RDb21wbGV0aW9uSGFuZGxlciYmKSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5l
Y3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
RXJyb3ImJik7CisgICAgdm9pZCBkaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYmKTsKIAogICAgIHZvaWQgc2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRy
aWNzRW5hYmxlZChib29sKSBmaW5hbDsKIAotICAgIFdlYlJlc291cmNlTG9hZGVyKiB3ZWJSZXNv
dXJjZUxvYWRlckZvcklkZW50aWZpZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVy
KSBjb25zdCB7IHJldHVybiBtX3dlYlJlc291cmNlTG9hZGVycy5nZXQoaWRlbnRpZmllcik7IH0K
KyAgICBXZWJSZXNvdXJjZUxvYWRlciogd2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdCB7IHJldHVy
biBtX3dlYlJlc291cmNlTG9hZGVycy5nZXQoaWRlbnRpZmllcik7IH0KICAgICB2b2lkIHNjaGVk
dWxlUGx1Z2luU3RyZWFtTG9hZChXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6Ok5ldHNjYXBlUGx1
Z0luU3RyZWFtTG9hZGVyQ2xpZW50JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6Ok5ldHNjYXBlUGx1Z0luU3RyZWFtTG9h
ZGVyPiYmKT4mJik7CiAKICAgICB2b2lkIG5ldHdvcmtQcm9jZXNzQ3Jhc2hlZCgpOwpAQCAtOTAs
OCArODksNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGRPbmxpbmVTdGF0ZUNoYW5nZUxpc3RlbmVy
KEZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYpIGZpbmFsOwogICAgIHZvaWQgc2V0T25MaW5lU3RhdGUo
Ym9vbCk7CiAKLSAgICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVMb2FkSWRlbnRpZmllcigpOwot
CiAgICAgdm9pZCBzZXRFeGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1
bWUoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gZXhpc3RpbmdO
ZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVzdW1lKSB7IG1fZXhpc3RpbmdOZXR3b3Jr
UmVzb3VyY2VMb2FkSWRlbnRpZmllclRvUmVzdW1lID0gZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VM
b2FkSWRlbnRpZmllclRvUmVzdW1lOyB9CiAKICAgICBzdGF0aWMgY29uc3RleHByIFNlY29uZHMg
bWVkaWFNYXhpbXVtQnVmZmVyaW5nVGltZSB7IDUwX21zIH07CkBAIC0xMDgsMTIgKzEwNSwxMiBA
QCBwcml2YXRlOgogICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yOwogICAgICAg
ICBWZWN0b3I8dWludDhfdD4gZGF0YTsKICAgICB9OwotICAgIHN0ZDo6b3B0aW9uYWw8U3luY0xv
YWRSZXN1bHQ+IHRyeUxvYWRpbmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKFdl
YkNvcmU6OkZyYW1lTG9hZGVyJiwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CisgICAgc3RkOjpvcHRpb25hbDxTeW5jTG9hZFJlc3VsdD4g
dHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIoV2ViQ29yZTo6RnJh
bWVMb2FkZXImLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpOwogICAgIFN5bmNMb2FkUmVzdWx0IGxvYWREYXRhVVJMU3lu
Y2hyb25vdXNseShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKIAotICAgIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1
aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSBmaW5hbDsKLSAgICBWZWN0b3I8V2ViQ29y
ZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1h
dGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50
aWZpZXIpIGZpbmFsOwotICAgIFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0
cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50
aWZpZXIpIGZpbmFsOworICAgIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2VGcm9t
UmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
IGZpbmFsOworICAgIFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlv
bj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIo
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpO
ZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOwogCiAgICAgYm9vbCBz
aG91bGRQZXJmb3JtU2VjdXJpdHlDaGVja3MoKSBjb25zdCBmaW5hbDsKICAgICBib29sIGhhdmVQ
ZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
Y29uc3QgZmluYWw7CkBAIC0xMjMsOSArMTIwLDkgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNldFJl
c291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2UmLCBXZWJDb3JlOjpMb2FkU2No
ZWR1bGluZ01vZGUpIGZpbmFsOwogICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29u
c3QgVmVjdG9yPFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyKj4mKSBmaW5hbDsKIAotICAgIFZl
Y3Rvcjx1aW50NjRfdD4gb25nb2luZ0xvYWRzKCkgY29uc3QgZmluYWwKKyAgICBWZWN0b3I8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25zdCBmaW5h
bAogICAgIHsKLSAgICAgICAgcmV0dXJuIFdURjo6bWFwKG1fd2ViUmVzb3VyY2VMb2FkZXJzLCBb
XShhdXRvJiYga2V5VmFsdWUpIC0+IHVpbnQ2NF90IHsKKyAgICAgICAgcmV0dXJuIFdURjo6bWFw
KG1fd2ViUmVzb3VyY2VMb2FkZXJzLCBbXShhdXRvJiYga2V5VmFsdWUpIC0+IFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciB7CiAgICAgICAgICAgICByZXR1cm4ga2V5VmFsdWUua2V5
OwogICAgICAgICB9KTsKICAgICB9CkBAIC0xMzMsMTAgKzEzMCwxMCBAQCBwcml2YXRlOgogICAg
IEhhc2hTZXQ8UmVmUHRyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPj4gbV9pbnRlcm5hbGx5RmFp
bGVkUmVzb3VyY2VMb2FkZXJzOwogICAgIFJ1bkxvb3A6OlRpbWVyPFdlYkxvYWRlclN0cmF0ZWd5
PiBtX2ludGVybmFsbHlGYWlsZWRMb2FkVGltZXI7CiAgICAgCi0gICAgSGFzaE1hcDx1bnNpZ25l
ZCBsb25nLCBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkZXI+PiBtX3dlYlJlc291cmNlTG9hZGVyczsK
LSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFdlYlVSTFNjaGVtZVRhc2tQcm94eSo+IG1fdXJs
U2NoZW1lVGFza3M7Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBQaW5nTG9hZENvbXBsZXRp
b25IYW5kbGVyPiBtX3BpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXJzOwotICAgIEhhc2hNYXA8dW5z
aWduZWQgbG9uZywgUHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyPiBtX3ByZWNvbm5lY3RDb21w
bGV0aW9uSGFuZGxlcnM7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4+IG1fd2ViUmVzb3VyY2VMb2FkZXJzOwor
ICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJVUkxTY2hl
bWVUYXNrUHJveHkqPiBtX3VybFNjaGVtZVRhc2tzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBQaW5nTG9hZENvbXBsZXRpb25IYW5kbGVyPiBtX3BpbmdM
b2FkQ29tcGxldGlvbkhhbmRsZXJzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXI+IG1fcHJlY29ubmVjdENv
bXBsZXRpb25IYW5kbGVyczsKICAgICBWZWN0b3I8RnVuY3Rpb248dm9pZChib29sKT4+IG1fb25s
aW5lU3RhdGVDaGFuZ2VMaXN0ZW5lcnM7CiAgICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcj4gbV9leGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
VG9SZXN1bWU7CiAgICAgYm9vbCBtX2lzT25MaW5lIHsgdHJ1ZSB9OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9s
bGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50
ZXJjZXB0Q29udHJvbGxlci5jcHAKaW5kZXggZDM2NGU3MDEyZDgzYmZhMjk1MzhlNGJiNzA5Yzdh
NTdhMWJmZDQ4YS4uNTZjN2JjZGMwODI0Zjk4MmUwOWU1ZWRkMGZjYzMyNTY4NThlNGFlNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRl
cmNlcHRDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29y
ay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwCkBAIC0yOCwyOSArMjgsMjkgQEAK
IAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLWJvb2wgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9s
bGVyOjppc0ludGVyY2VwdGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGNvbnN0Citib29s
IFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6aXNJbnRlcmNlcHRpbmcoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLmNvbnRhaW5zKGlkZW50aWZpZXIpOwogfQogCi12
b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX2ludGVyY2VwdGVkUmVzcG9uc2VR
dWV1ZS5zZXQoaWRlbnRpZmllciwgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4oKSk7CiB9CiAKLXZv
aWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpjb250aW51ZVJlc3BvbnNlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVy
Ojpjb250aW51ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKQogewogICAgIGF1dG8gcXVldWUgPSBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZS50
YWtlKGlkZW50aWZpZXIpOwogICAgIGZvciAoYXV0byYgY2FsbGJhY2sgOiBxdWV1ZSkKICAgICAg
ICAgY2FsbGJhY2soKTsKIH0KIAotdm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6
OmludGVyY2VwdGVkUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJS
ZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmludGVyY2VwdGVkUmVzcG9uc2UoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9pbnRlcmNlcHRl
ZFJlc3BvbnNlUXVldWUucmVtb3ZlKGlkZW50aWZpZXIpOwogfQogCi12b2lkIFdlYlJlc291cmNl
SW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBGdW5j
dGlvbjx2b2lkKCk+JiYgZnVuY3Rpb24pCit2b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJv
bGxlcjo6ZGVmZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IEZ1bmN0aW9uPHZvaWQoKT4mJiBmdW5jdGlvbikKIHsKICAgICBBU1NFUlQoaXNJbnRlcmNlcHRp
bmcoaWRlbnRpZmllcikpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oCmluZGV4
IGQ3MWI5MDczZWE0NWM4NjEwMmViNDg3NWQ5ZjkxYzAwMWM4OWU4ZjYuLjg4Mzc4MjcwMGJhOWM3
MWZiMjY3NmFmN2Y2M2E2ZTBjM2ZlZmNiNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJv
bGxlci5oCkBAIC0yNSw2ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2Vi
Q29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4K
ICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAt
MzMsMjEgKzM0LDIxIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJSZXNvdXJjZUlu
dGVyY2VwdENvbnRyb2xsZXIgewogcHVibGljOgotICAgIGJvb2wgaXNJbnRlcmNlcHRpbmcodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKSBjb25zdDsKKyAgICBib29sIGlzSW50ZXJjZXB0aW5nKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgY29uc3Q7CiAKICAgICAvLyBTdGFydCBp
bnRlcmNlcHRpbmcgYSByZXNwb25zZS4KLSAgICB2b2lkIGJlZ2luSW50ZXJjZXB0aW5nUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGJlZ2luSW50ZXJjZXB0aW5n
UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIC8vIFN0
b3AgaW50ZXJjZXB0aW5nIGEgcmVzcG9uc2UuIEFuIGludGVyY2VwdCByZXNwb25zZSB3YXMgbm90
IHN1cHBsaWVkLiBTZW5kIGRlZmVycmVkIG5ldHdvcmtpbmcgY2FsbGJhY2tzLgotICAgIHZvaWQg
Y29udGludWVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgY29u
dGludWVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAg
Ly8gU3RvcCBpbnRlcmNlcHRpbmcgYSByZXNwb25zZS4gQW4gaW50ZXJjZXB0IHJlc3BvbnNlIHdh
cyBzdXBwbGllZC4gU2VuZCBubyBkZWZlcnJlZCBuZXR3b3JraW5nIGNhbGxiYWNrcy4KLSAgICB2
b2lkIGludGVyY2VwdGVkUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2
b2lkIGludGVyY2VwdGVkUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KTsKIAotICAgIHZvaWQgZGVmZXIodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBGdW5jdGlvbjx2
b2lkKCk+JiYpOworICAgIHZvaWQgZGVmZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBGdW5jdGlvbjx2b2lkKCk+JiYpOwogCiBwcml2YXRlOgotICAgIEhhc2hNYXA8dW5zaWdu
ZWQgbG9uZywgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4+IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1
ZXVlOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEZXF1
ZTxGdW5jdGlvbjx2b2lkKCk+Pj4gbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWU7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAppbmRleCBlY2Q0MDUyZWFjMDM4MDI4MjU1
YTc4NjIzNmUxOTY5ODUzYWZhMWQ4Li5jOWZjYjBkNzhmOTNmYzVmMGY4MTM2NmMwYjEzMDk4YzNm
M2UwNmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJS
ZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC01NCw3ICs1NCw3IEBACiAjaW5jbHVkZSA8V2ViQ29y
ZS9TdWJyZXNvdXJjZUxvYWRlci5oPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5o
PgogCi0jZGVmaW5lIFdFQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxF
QVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBXZWJSZXNvdXJjZUxvYWRlcjo6IiBm
bXQsIHRoaXMsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCBtX3RyYWNr
aW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnJl
c291cmNlSUQsICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFdFQlJFU09VUkNFTE9BREVSX1JFTEVB
U0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbd2ViUGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBX
ZWJSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJ
RC50b1VJbnQ2NCgpLCBtX3RyYWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIG1f
dHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQudG9VSW50NjQoKSwgIyNfX1ZBX0FSR1NfXykK
IAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTgzLDcg
KzgzLDcgQEAgdWludDY0X3QgV2ViUmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VTZW5kZXJEZXN0aW5h
dGlvbklEKCkgY29uc3QKIHsKICAgICBSRUxFQVNFX0FTU0VSVChSdW5Mb29wOjppc01haW4oKSk7
CiAgICAgUkVMRUFTRV9BU1NFUlQobV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCkpOwotICAgIHJl
dHVybiBtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKTsKKyAgICByZXR1cm4gbV9jb3JlTG9hZGVy
LT5pZGVudGlmaWVyKCkudG9VSW50NjQoKTsKIH0KIAogdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6
ZGV0YWNoRnJvbUNvcmVMb2FkZXIoKQpAQCAtMTUzLDcgKzE1Myw3IEBAIHZvaWQgV2ViUmVzb3Vy
Y2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSwgYm9vCiAgICAgfQogCiAgICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktp
dDo6c2hvdWxkSW50ZXJjZXB0UmVzcG9uc2UobV9jb3JlTG9hZGVyLT5mcmFtZSgpLCByZXNwb25z
ZSkpIHsKLSAgICAgICAgdW5zaWduZWQgbG9uZyBpbnRlcmNlcHRlZFJlcXVlc3RJZGVudGlmaWVy
ID0gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8gaW50ZXJjZXB0ZWRS
ZXF1ZXN0SWRlbnRpZmllciA9IG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpOwogICAgICAgICBt
X2ludGVyY2VwdENvbnRyb2xsZXIuYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZShpbnRlcmNlcHRl
ZFJlcXVlc3RJZGVudGlmaWVyKTsKICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2Vi
S2l0OjppbnRlcmNlcHRSZXNwb25zZShtX2NvcmVMb2FkZXItPmZyYW1lKCksIHJlc3BvbnNlLCBp
bnRlcmNlcHRlZFJlcXVlc3RJZGVudGlmaWVyLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VS
ZWYoKnRoaXMpLCBpbnRlcmNlcHRlZFJlcXVlc3RJZGVudGlmaWVyLCBwb2xpY3lEZWNpc2lvbkNv
bXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShwb2xpY3lEZWNpc2lvbkNvbXBsZXRpb25IYW5kbGVy
KV0oY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgaW5zcGVjdG9yUmVzcG9uc2UsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+IG92ZXJyaWRlRGF0YSkgbXV0YWJsZSB7CiAgICAgICAgICAgICBpZiAoIW1fY29y
ZUxvYWRlciB8fCAhbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCkpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmggYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCmluZGV4IDM1
NTIwMWI5NzA0MzVjNTRkNTRiM2ZiZjllNDQyYWNkMmJjYjJiMTIuLmEyMmU2MmYyOGI1ZmE0Y2Zj
OTFhYTVlNWNlODJjYTI3YWUyNmFkNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaApAQCAtMzMsNiArMzMsNyBAQAogI2lu
Y2x1ZGUgIldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgPFdlYkNv
cmUvRnJhbWVJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QYWdlSWRlbnRpZmllci5o
PgorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKQEAgLTUwLDE1
ICs1MSwxMyBAQCBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwotCiBjbGFzcyBXZWJS
ZXNvdXJjZUxvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlJlc291cmNlTG9hZGVyPiwgcHVi
bGljIElQQzo6TWVzc2FnZVNlbmRlciB7CiBwdWJsaWM6CiAgICAgc3RydWN0IFRyYWNraW5nUGFy
YW1ldGVycyB7CiAgICAgICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFnZVByb3h5SUQ7
CiAgICAgICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRDsKICAgICAgICAgV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQ7Ci0gICAgICAgIFJlc291cmNlTG9hZElkZW50aWZp
ZXIgcmVzb3VyY2VJRCB7IDAgfTsKKyAgICAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHJlc291cmNlSUQ7CiAgICAgfTsKIAogICAgIHN0YXRpYyBSZWY8V2ViUmVzb3VyY2VM
b2FkZXI+IGNyZWF0ZShSZWY8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+JiYsIGNvbnN0IFRyYWNr
aW5nUGFyYW1ldGVycyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKaW5kZXggMDZi
MzI1YzUwZTc0NDI0MWQ0Nzg1MWYxMDc5NWQwYjZlZDA0ZTM3MC4uNTk5NmU2Y2NhZWQ4YWU3NmI0
ZGJiMDg0OTE5YjhiNGJmMDAxM2NhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5o
CkBAIC0xMzUsNyArMTM1LDcgQEAgcHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyPiBwYWdlSUQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3BhZ2VJRDsg
fQogICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlEKCkg
Y29uc3QgZmluYWwgeyByZXR1cm4gbV9mcmFtZUlEOyB9CiAKLSAgICBib29sIHNob3VsZFVzZUNy
ZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykg
ZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQorICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3Jh
Z2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBib29sIGlzU2VydmljZVdvcmtlckZy
YW1lTG9hZGVyQ2xpZW50KCkgY29uc3QgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgU3Ry
aW5nIHVzZXJBZ2VudChjb25zdCBVUkwmKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3VzZXJBZ2Vu
dDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKaW5kZXggMDA4ODliMDBjODU3OTM1
OThiN2ZlMTMzMGVmMjlkODZhNzdlZTQ4Zi4uMGU4Yjk3YTY3ZTU3ODhjZjUwZWRiZjA1NTI4NDg5
MWE0ZTU4ZWFjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC0yMjEsNyAr
MjIxLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGV0YWNoZWRGcm9tUGFyZW50Mygp
CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qp
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVx
dWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlBhZ2Uq
IHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjM1LDcg
KzIzNSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0lu
aXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgd2ViUGFnZS0+YWRkUmVzb3Vy
Y2VSZXF1ZXN0KGlkZW50aWZpZXIsIHJlcXVlc3QpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2Ug
PSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjUyLDcgKzI1Miw3IEBA
IHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uCiAgICAgfQogfQogCi1ib29sIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVz
ZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2Uo
KTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yNjEsMTMgKzI2MSwxMyBAQCBib29sIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkCiAgICAgcmV0dXJuIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlUmVzb3VyY2VMb2Fk
Q2xpZW50KCkuc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoKndlYlBhZ2UsIG1fZnJhbWUsIGlk
ZW50aWZpZXIpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJl
Y2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYpCiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKICNp
ZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotYm9vbCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNw
YWNlKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFBy
b3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCiB7CiAgICAg
Ly8gVGhlIFdlYktpdCAyIE5ldHdvcmtpbmcgcHJvY2VzcyBhc2tzIHRoZSBVSVByb2Nlc3MgZGly
ZWN0bHksIHNvIHRoZSBXZWJDb250ZW50IHByb2Nlc3Mgc2hvdWxkIG5ldmVyIHJlY2VpdmUgdGhp
cyBjYWxsYmFjay4KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTI3NSw3ICsyNzUsNyBA
QCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVj
dGlvblNwYWNlKERvY3VtZW50TG9hZGVyKgogfQogI2VuZGlmCiAKLXZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBt
X2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjg0LDcgKzI4NCw3IEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQKICAgICB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZVJlc291cmNl
TG9hZENsaWVudCgpLmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKCp3ZWJQYWdlLCBtX2Zy
YW1lLCBpZGVudGlmaWVyLCByZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKQordm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlcios
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKIHsK
ICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFn
ZSkKQEAgLTMwMyw3ICszMDMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdQogfQogI2VuZGlm
CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlBhZ2UqIHdlYlBh
Z2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMzEzLDcgKzMxMyw3
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvCiAgICAgd2ViUGFnZS0+cmVtb3ZlUmVzb3VyY2VS
ZXF1ZXN0KGlkZW50aWZpZXIpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAg
ICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2Up
CkBAIC04NDksOCArODQ5LDkgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnMKICAgICBhdXRvKiBj
b3JlRnJhbWUgPSBtX2ZyYW1lLT5jb3JlRnJhbWUoKTsKICAgICBhdXRvKiBwb2xpY3lEb2N1bWVu
dExvYWRlciA9IGNvcmVGcmFtZSA/IGNvcmVGcmFtZS0+bG9hZGVyKCkucHJvdmlzaW9uYWxEb2N1
bWVudExvYWRlcigpIDogbnVsbHB0cjsKICAgICBhdXRvIG5hdmlnYXRpb25JRCA9IHBvbGljeURv
Y3VtZW50TG9hZGVyID8gc3RhdGljX2Nhc3Q8V2ViRG9jdW1lbnRMb2FkZXImPigqcG9saWN5RG9j
dW1lbnRMb2FkZXIpLm5hdmlnYXRpb25JRCgpIDogMDsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxk
IGJlIHVzaW5nIGEgc3Ryb25nbHktdHlwZWQgaWRlbnRpZmllciBmb3IgbWFpblJlc291cmNlTG9h
ZElkZW50aWZpZXIuCi0gICAgYXV0byBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciA9IHBvbGlj
eURvY3VtZW50TG9hZGVyICYmIHBvbGljeURvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2Fk
ZXIoKSA/IHBvbGljeURvY3VtZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2FkZXIoKS0+aWRlbnRp
ZmllcigpIDogMDsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXI7CisgICAgaWYgKGF1dG8gbWFpblJl
c291cmNlTG9hZGVyID0gcG9saWN5RG9jdW1lbnRMb2FkZXIgPyBwb2xpY3lEb2N1bWVudExvYWRl
ci0+bWFpblJlc291cmNlTG9hZGVyKCkgOiBudWxscHRyKQorICAgICAgICBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciA9IG1haW5SZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigpOwogCiAgICAg
Ym9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSA9IHBvbGljeSA9PSBXS0J1bmRsZVBhZ2VQ
b2xpY3lBY3Rpb25Vc2U7CiAgICAgYXV0byBwcm90ZWN0b3IgPSBtX2ZyYW1lLmNvcHlSZWYoKTsK
QEAgLTE4MDgsNyArMTgwOSw3IEBAIFJlbW90ZUFYT2JqZWN0UmVmIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjphY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkKICAgICByZXR1cm4gd2ViUGFnZS0+YWNj
ZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpOwogfQogICAgIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0
Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExv
YWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJl
c3BvbnNlKiByZXNwb25zZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3Bv
bnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIFdlYlBhZ2UqIHdlYlBh
Z2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMTg4OSw3ICsxODkw
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2VuZEgyUGluZyhjb25zdCBVUkwmIHVy
bCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeHAKIAogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRQ
YXJhbWV0ZXJzIHBhcmFtZXRlcnM7CiAgICAgcGFyYW1ldGVycy5yZXF1ZXN0ID0gUmVzb3VyY2VS
ZXF1ZXN0KHVybCk7Ci0gICAgcGFyYW1ldGVycy5pZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRl
Z3k6OmdlbmVyYXRlTG9hZElkZW50aWZpZXIoKTsKKyAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIg
PSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgcGFy
YW1ldGVycy53ZWJQYWdlUHJveHlJRCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50aWZpZXIo
KTsKICAgICBwYXJhbWV0ZXJzLndlYlBhZ2VJRCA9IHdlYlBhZ2UtPmlkZW50aWZpZXIoKTsKICAg
ICBwYXJhbWV0ZXJzLndlYkZyYW1lSUQgPSBtX2ZyYW1lLT5mcmFtZUlEKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oCmluZGV4IDc3ZGE0MTE4ODIyNDhlMmMwZWJlZGMxN2Y3OGI0M2NiODkw
ZDVhODAuLmE2OTg1YTc4MDQ0YWIyYTc2M2U0OTRjNjg1Nzk4MzMxNzZhYTc3YTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZUxvYWRlckNsaWVudC5oCkBAIC04MSwyMSArODEsMjEgQEAgcHJpdmF0ZToKICAgICB2
b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSBmaW5hbDsKICAgICB2b2lkIGRldGFjaGVkRnJvbVBh
cmVudDMoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKKyAgICB2b2lkIGFzc2ln
bklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlKSBmaW5hbDsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5h
bDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJv
b2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0Vf
QVVUSF9DQUxMQkFDSykKLSAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9u
U3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0
aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVj
dGlvblNwYWNlJikgZmluYWw7CiAjZW5kaWYKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAg
IFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICBS
ZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7
CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250
ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExv
YWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
IGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmlu
YWw7CiAgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSBmaW5hbDsKICNpZiBF
TkFCTEUoREFUQV9ERVRFQ1RJT04pCiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFEZXRl
Y3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CkBAIC0yMzgsNyArMjM4LDcg
QEAgcHJpdmF0ZToKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBSZW1vdGVBWE9iamVjdFJlZiBh
Y2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCB3aWxsQ2Fj
aGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNo
ZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2FjaGVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlND
YWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CiAKICAgICBOU0RpY3Rpb25hcnkg
KmRhdGFEZXRlY3Rpb25Db250ZXh0KCkgZmluYWw7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRnJhbWVMb2FkZXJDbGll
bnRJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dl
YkZyYW1lTG9hZGVyQ2xpZW50SU9TLm1tCmluZGV4IGVhZDQzOTJhNTQ4OTgwNjZjMDFmNWNjMDI4
ODQyNmNmNGQzMDRjMDIuLjYxN2U4ZmJmODI4NDc2ODBjZTI4ZGY1OGFkM2E5MDVjZjJmMTcyZWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3Mv
V2ViRnJhbWVMb2FkZXJDbGllbnRJT1MubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJGcmFtZUxvYWRlckNsaWVudElPUy5tbQpAQCAtNTgsNyAr
NTgsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpmb3JjZUxheW91dE9uUmVzdG9yZUZy
b21CYWNrRm9yd2FyZENhY2hlKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLVJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGll
cyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK1JldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGll
cyhEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsK
ICAgICBub3RJbXBsZW1lbnRlZCgpOwogICAgIHJldHVybiBudWxscHRyOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwCmluZGV4IDM2MjA4YjAzZjhjYzYz
Njc4NjcxZGRiZGI0Y2EyN2ZiOWJiMTVkYzMuLjM3YjI4ZTNlOWYyNTQyZWQ1ZjczYjUyYjllMDli
MDViNjNiNDhhNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYkZyYW1lLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJG
cmFtZS5jcHAKQEAgLTMwNCwxNCArMzA0LDEyIEBAIHZvaWQgV2ViRnJhbWU6OmNvbnZlcnRNYWlu
UmVzb3VyY2VMb2FkVG9Eb3dubG9hZChEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIsCiAg
ICAgU3VicmVzb3VyY2VMb2FkZXIqIG1haW5SZXNvdXJjZUxvYWRlciA9IGRvY3VtZW50TG9hZGVy
LT5tYWluUmVzb3VyY2VMb2FkZXIoKTsKIAogICAgIGF1dG8mIHdlYlByb2Nlc3MgPSBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKTsKLSAgICAvLyBVc2UgMCB0byBpbmRpY2F0ZSB0aGF0IHRoZSByZXNv
dXJjZSBsb2FkIGNhbid0IGJlIGNvbnZlcnRlZCBhbmQgYSBuZXcgZG93bmxvYWQgbXVzdCBiZSBz
dGFydGVkLgorICAgIC8vIFVzZSBzdGQ6Om51bGxvcHQgdG8gaW5kaWNhdGUgdGhhdCB0aGUgcmVz
b3VyY2UgbG9hZCBjYW4ndCBiZSBjb252ZXJ0ZWQgYW5kIGEgbmV3IGRvd25sb2FkIG11c3QgYmUg
c3RhcnRlZC4KICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gaWYgdGhlcmUgaXMgbm8gbG9hZGVyIGJl
Y2F1c2UgdGhlIG1haW4gcmVzb3VyY2UgaXMgaW4gdGhlIFdlYkNvcmUgbWVtb3J5IGNhY2hlLAog
ICAgIC8vIG9yIGJlY2F1c2UgdGhlIGNvbnZlcnNpb24gd2FzIGF0dGVtcHRlZCB3aGVuIG5vdCBj
YWxsaW5nIFN1YnJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoKS4KLSAgICB1aW50
NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXI7
CiAgICAgaWYgKG1haW5SZXNvdXJjZUxvYWRlcikKICAgICAgICAgbWFpblJlc291cmNlTG9hZElk
ZW50aWZpZXIgPSBtYWluUmVzb3VyY2VMb2FkZXItPmlkZW50aWZpZXIoKTsKLSAgICBlbHNlCi0g
ICAgICAgIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyID0gMDsKIAogICAgIHN0ZDo6b3B0aW9u
YWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzQXBwQm91bmQgPSBOYXZpZ2F0aW5nVG9B
cHBCb3VuZERvbWFpbjo6Tm87CiAgICAgaXNBcHBCb3VuZCA9IG1faXNOYXZpZ2F0aW5nVG9BcHBC
b3VuZERvbWFpbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggMzhiOGNkMDkyZmE5YzYwMmJhNjJkOWQ3MmM5OTRhYTg3YTM3YjE2MC4uZjE3NWQw
OWE5MGQ1MmQ2MmY3MDExZDZkNTM1YzBhMTZiNzRlOWMyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTQzMjEsMTAgKzQzMjEsMTAgQEAgV2Vi
RnVsbFNjcmVlbk1hbmFnZXIqIFdlYlBhZ2U6OmZ1bGxTY3JlZW5NYW5hZ2VyKCkKIH0KICNlbmRp
ZgogCi12b2lkIFdlYlBhZ2U6OmFkZENvbnNvbGVNZXNzYWdlKEZyYW1lSWRlbnRpZmllciBmcmFt
ZUlELCBNZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCBtZXNzYWdlTGV2
ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdWludDY0X3QgcmVxdWVzdElEKQordm9pZCBXZWJQ
YWdlOjphZGRDb25zb2xlTWVzc2FnZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgTWVzc2FnZVNv
dXJjZSBtZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVsLCBjb25zdCBTdHJp
bmcmIG1lc3NhZ2UsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SUQp
CiB7CiAgICAgaWYgKGF1dG8qIGZyYW1lID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViRnJh
bWUoZnJhbWVJRCkpCi0gICAgICAgIGZyYW1lLT5hZGRDb25zb2xlTWVzc2FnZShtZXNzYWdlU291
cmNlLCBtZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIHJlcXVlc3RJRCk7CisgICAgICAgIGZyYW1lLT5h
ZGRDb25zb2xlTWVzc2FnZShtZXNzYWdlU291cmNlLCBtZXNzYWdlTGV2ZWwsIG1lc3NhZ2UsIHJl
cXVlc3RJRC50b1VJbnQ2NCgpKTsKIH0KIAogdm9pZCBXZWJQYWdlOjpzZW5kQ1NQVmlvbGF0aW9u
UmVwb3J0KEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBjb25zdCBVUkwmIHJlcG9ydFVSTCwgSVBD
OjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcG9ydERhdGEpCkBAIC01NTI4LDcgKzU1MjgsNyBAQCB2
b2lkIFdlYlBhZ2U6OnNhdmVQREZUb1RlbXBvcmFyeUZvbGRlckFuZE9wZW5XaXRoTmF0aXZlQXBw
bGljYXRpb24oY29uc3QgU3RyaW5nJgogfQogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZTo6YWRkUmVz
b3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQordm9pZCBXZWJQYWdlOjphZGRSZXNvdXJjZVJlcXVlc3Qo
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBpZiAoIXJlcXVlc3QudXJsKCku
cHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICByZXR1cm47CkBAIC01NTQzLDcgKzU1
NDMsNyBAQCB2b2lkIFdlYlBhZ2U6OmFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cgogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OlNldE5ldHdvcmtSZXF1ZXN0c0luUHJvZ3Jlc3ModHJ1ZSkpOwogfQogCi12
b2lkIFdlYlBhZ2U6OnJlbW92ZVJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIpCit2b2lkIFdlYlBhZ2U6OnJlbW92ZVJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAoIW1fdHJhY2tlZE5ldHdv
cmtSZXNvdXJjZVJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAg
IHJldHVybjsKQEAgLTY5NDAsNyArNjk0MCw3IEBAIHZvaWQgV2ViUGFnZTo6cmVnaXN0ZXJVUkxT
Y2hlbWVIYW5kbGVyKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmCiAg
ICAgbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuYWRkKGhhbmRsZXJJZGVu
dGlmaWVyLCBzY2hlbWVSZXN1bHQuaXRlcmF0b3ItPnZhbHVlLmdldCgpKTsKIH0KIAotdm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2Um
JiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2
b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90
IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0
JiYgcmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRl
bnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7
CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjk0OSw3ICs2OTQ5LDcgQEAgdm9pZCBXZWJQYWdl
Ojp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWkKICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRhc2tJ
ZGVudGlmaWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgV1RGTW92ZShj
b21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQ
ZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRh
c2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVz
dCYmIHJlcXVlc3QpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJl
Y3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBS
ZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0KQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50
aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwog
ICAgIEFTU0VSVChoYW5kbGVyKTsKQEAgLTY5NTcsNyArNjk1Nyw3IEBAIHZvaWQgV2ViUGFnZTo6
dXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgdWluCiAgICAgaGFuZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih0YXNrSWRl
bnRpZmllciwgV1RGTW92ZShyZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCksIFtdIChSZXNvdXJj
ZVJlcXVlc3QmJikge30pOwogfQogICAgIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNr
SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYlBh
Z2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byogaGFuZGxlciA9
IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRp
Zmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjk2NSw3ICs2OTY1LDcgQEAgdm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCB1aW50NjQKICAgICBoYW5kbGVyLT50YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHRh
c2tJZGVudGlmaWVyLCByZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFz
a0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNr
SWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhKQordm9pZCBXZWJQYWdl
Ojp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJiBkYXRhKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50
aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwog
ICAgIEFTU0VSVChoYW5kbGVyKTsKQEAgLTY5NzMsNyArNjk3Myw3IEBAIHZvaWQgV2ViUGFnZTo6
dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0CiAgICAgaGFuZGxlci0+dGFza0RpZFJlY2VpdmVEYXRhKHRhc2tJZGVudGlmaWVy
LCBkYXRhLnNpemUoKSwgZGF0YS5kYXRhKCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVt
ZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJQYWdlOjp1
cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJM
U2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJU
KGhhbmRsZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmlu
ZGV4IGY1NzNiZGE3NjU1N2JjNDlmMGZkNjMxODdhNWI1NzQ3YWZhZDFmOTguLjUyYWJhZDllMDBk
M2MyYjNjMWVlYTRkZTY0ZTgwYjRjNmIwMTBkMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmgKQEAgLTQzNyw3ICs0MzcsNyBAQCBwdWJsaWM6CiAgICAgV2Vi
RnVsbFNjcmVlbk1hbmFnZXIqIGZ1bGxTY3JlZW5NYW5hZ2VyKCk7CiAjZW5kaWYKIAotICAgIHZv
aWQgYWRkQ29uc29sZU1lc3NhZ2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBNZXNzYWdlU291
cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYsIHVpbnQ2NF90IHJlcXVlc3RJRCA9IDAp
OworICAgIHZvaWQgYWRkQ29uc29sZU1lc3NhZ2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBN
ZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciA9IHsgfSk7CiAgICAgdm9pZCBzZW5kQ1NQVmlvbGF0aW9uUmVw
b3J0KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgVVJMJiByZXBvcnRVUkwsIElQQzo6
Rm9ybURhdGFSZWZlcmVuY2UmJik7CiAgICAgdm9pZCBzZW5kQ09FUFBvbGljeUluaGVyaXRlbmNl
VmlvbGF0aW9uKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhJiBlbWJlZGRlck9yaWdpbiwgY29uc3QgU3RyaW5nJiBlbmRwb2ludCwgV2Vi
Q29yZTo6Q09FUERpc3Bvc2l0aW9uLCBjb25zdCBTdHJpbmcmIHR5cGUsIGNvbnN0IFVSTCYgYmxv
Y2tlZFVSTCk7CiAgICAgdm9pZCBzZW5kQ09FUENPUlBWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmIGVtYmVkZGVyT3Jp
Z2luLCBjb25zdCBTdHJpbmcmIGVuZHBvaW50LCBXZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24sIFdl
YkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGluYXRpb24sIGNvbnN0IFVSTCYgYmxvY2tlZFVSTCk7
CkBAIC0xMDE2LDggKzEwMTYsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkcmF3UGFnZXNGb3JQcmlu
dGluZyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFByaW50SW5mbyYsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpPiYmKTsKICNlbmRp
ZgogCi0gICAgdm9pZCBhZGRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZywgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgdm9pZCByZW1vdmVSZXNvdXJjZVJlcXVlc3Qo
dW5zaWduZWQgbG9uZyk7CisgICAgdm9pZCBhZGRSZXNvdXJjZVJlcXVlc3QoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsK
KyAgICB2b2lkIHJlbW92ZVJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOwogCiAgICAgdm9pZCBzZXRNZWRpYVZvbHVtZShmbG9hdCk7CiAgICAgdm9pZCBz
ZXRNdXRlZChXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNdXRlZFN0YXRlRmxhZ3MsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJik7CkBAIC0xODc3LDExICsxODc3LDExIEBAIHByaXZhdGU6CiAK
ICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRfdCBpZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHNjaGVtZSk7CiAKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tXaWxsUGVyZm9y
bVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
Jik+JiYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgIHZv
aWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBo
YW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0
YVJlZmVyZW5jZSYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90
IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVk
aXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYm
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFBl
cmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKTsKKyAgICB2b2lkIHVybFNjaGVt
ZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVE
YXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYpOworICAg
IHZvaWQgdXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAogICAgIHZvaWQgc2V0SXNUYWtpbmdTbmFwc2hv
dHNGb3JBcHBsaWNhdGlvblN1c3BlbnNpb24oYm9vbCk7CiAgICAgdm9pZCBzZXROZWVkc0RPTVdp
bmRvd1Jlc2l6ZUV2ZW50KCk7CkBAIC0yMTYxLDcgKzIxNjEsNyBAQCBwcml2YXRlOgogCiAgICAg
dW5zaWduZWQgbV9jYWNoZWRQYWdlQ291bnQgeyAwIH07CiAKLSAgICBIYXNoU2V0PHVuc2lnbmVk
IGxvbmc+IG1fdHJhY2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJZGVudGlmaWVyczsKKyAgICBI
YXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV90cmFja2VkTmV0d29y
a1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzOwogCiAgICAgV2ViQ29yZTo6SW50U2l6ZSBtX21p
bmltdW1TaXplRm9yQXV0b0xheW91dDsKICAgICBXZWJDb3JlOjpJbnRTaXplIG1fc2l6ZVRvQ29u
dGVudEF1dG9TaXplTWF4aW11bVNpemU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgppbmRleCA1ZmRiMWQwMDRkMDA0MzViMmVh
MTEyNTc3OWZkMmExMGY2NjZlNGQwLi5jNDhjNzJhOWE2MTZmMTQ0Y2IzNzI3ZWM2YjEzOWI3N2E0
YWZlZGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4KQEAgLTI3LDcgKzI3LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFnZSBM
ZWdhY3lSZWNlaXZlciB7CiAKICAgICBTZXRCYWNrZ3JvdW5kQ29sb3Ioc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpDb2xvcj4gY29sb3IpCiAKLSAgICBBZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgZW51bTp1aW50OF90IEpTQzo6TWVzc2FnZVNvdXJjZSBt
ZXNzYWdlU291cmNlLCBlbnVtOnVpbnQ4X3QgSlNDOjpNZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVs
LCBTdHJpbmcgbWVzc2FnZSwgdWludDY0X3QgcmVxdWVzdElEKQorICAgIEFkZENvbnNvbGVNZXNz
YWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBlbnVtOnVpbnQ4X3QgSlNDOjpN
ZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VMZXZl
bCBtZXNzYWdlTGV2ZWwsIFN0cmluZyBtZXNzYWdlLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcmVxdWVzdElEKQogICAgIFNlbmRDU1BWaW9sYXRpb25SZXBvcnQoV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFVSTCByZXBvcnRVUkwsIElQQzo6Rm9ybURhdGFSZWZl
cmVuY2UgcmVwb3J0RGF0YSkKICAgICBTZW5kQ09FUFBvbGljeUluaGVyaXRlbmNlVmlvbGF0aW9u
KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhIGVtYmVkZGVyT3JpZ2luLCBTdHJpbmcgZW5kcG9pbnQsIGVudW06Ym9vbCBX
ZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24gZGlzcG9zaXRpb24sIFN0cmluZyB0eXBlLCBVUkwgYmxv
Y2tlZFVSTCkKICAgICBTZW5kQ09FUENPUlBWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEgZW1iZWRkZXJP
cmlnaW4sIFN0cmluZyBlbmRwb2ludCwgZW51bTpib29sIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlv
biBkaXNwb3NpdGlvbiwgZW51bTp1aW50OF90IFdlYkNvcmU6OkZldGNoT3B0aW9uczo6RGVzdGlu
YXRpb24gZGVzdGluYXRpb24sIFVSTCBibG9ja2VkVVJMKQpAQCAtNTUzLDExICs1NTMsMTEgQEAg
R2VuZXJhdGVTeW50aGV0aWNFZGl0aW5nQ29tbWFuZChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50
aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUKIAogICAgIFJlZ2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1
aW50NjRfdCBpZGVudGlmaWVyLCBTdHJpbmcgc2NoZW1lKQogCi0gICAgVVJMU2NoZW1lVGFza1dp
bGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0IGFjdHVhbFJlcXVlc3QpIEFzeW5jCi0gICAgVVJMU2NoZW1lVGFza0RpZFBlcmZv
cm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCi0gICAgVVJMU2NoZW1lVGFza0RpZFJlY2Vp
dmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAgVVJMU2NoZW1l
VGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRhdGEpCi0gICAg
VVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKKyAgICBV
UkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QgcHJvcG9zZWRSZXF1ZXN0KSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IGFjdHVhbFJl
cXVlc3QpIEFzeW5jCisgICAgVVJMU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KQorICAgIFVSTFNjaGVtZVRhc2tE
aWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSByZXNwb25zZSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0
X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllciwgSVBDOjpTaGFyZWRCdWZmZXJEYXRhUmVmZXJlbmNlIGRhdGEpCisgICAg
VVJMU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgZXJyb3IpCiAKICAgICBTZXRJc1N1c3BlbmRlZChib29sIHN1c3BlbmRlZCkK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKaW5kZXggMzZlNTcyNTEyMzM3ZDYzMDBjMjJlOGEz
MmUxNzE1MTkwNDNiNTAzNy4uY2U5MjYxNzQxYmRiMjhjMDRkOTdkMGQ3MGVhOGVhYTFjNGRiNDEz
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdGFydE5ld1Rhc2soUmVzb3VyY2VMb2FkZXImIGxvYWRl
ciwgV2ViRnJhbWUmIHdlCiAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+c3RhcnRMb2FkaW5n
KCk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hyb25vdXNs
eShSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYgd2ViRnJh
bWUsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFJlc291cmNlRXJyb3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCit2b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5bmNocm9ub3VzbHkoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYgd2ViRnJhbWUs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlRXJyb3ImIGVycm9yLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAg
ZGF0YS5zaHJpbmsoMCk7CiAgICAgaWYgKCFtX3dlYlBhZ2Uuc2VuZFN5bmMoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFy
YW1ldGVycyB7IG1faWRlbnRpZmllciwgbG9hZElkZW50aWZpZXIsIHJlcXVlc3QsIHdlYkZyYW1l
LmluZm8oKSB9KSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2No
ZW1lVGFzazo6UmVwbHkocmVzcG9uc2UsIGVycm9yLCBkYXRhKSkpIHsKQEAgLTc4LDcgKzc4LDcg
QEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnN0b3BBbGxUYXNrcygpCiAgICAgICAg
IG1fdGFza3MuYmVnaW4oKS0+dmFsdWUtPnN0b3BMb2FkaW5nKCk7CiB9CiAKLXZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRh
c2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25z
ZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIp
Cit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlv
bihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiB0YXNr
ID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKQEAgLTg3LDcg
Kzg3LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVk
aXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZpZXIKICAgICB0YXNrLT5kaWRQZXJmb3JtUmVk
aXJlY3Rpb24oV1RGTW92ZShyZWRpcmVjdFJlc3BvbnNlKSwgV1RGTW92ZShuZXdSZXF1ZXN0KSwg
V1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRs
ZXJQcm94eTo6dGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KQogewogICAgIGF1dG8qIHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAg
aWYgKCF0YXNrKQpAQCAtOTYsNyArOTYsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgYwogICAg
IHRhc2stPmRpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIHNpemVfdCBzaXplLCBjb25zdCB1aW50OF90KiBkYXRhKQordm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIHNpemVfdCBzaXplLCBjb25zdCB1aW50OF90KiBkYXRh
KQogewogICAgIGF1dG8qIHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAg
aWYgKCF0YXNrKQpAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFza0lkZW50aWZpZXIsIHNpemVfCiAg
ICAgdGFzay0+ZGlkUmVjZWl2ZURhdGEoc2l6ZSwgZGF0YSk7CiB9CiAKLXZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkQ29tcGxldGUodWludDY0X3QgdGFza0lkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHk6OnRhc2tEaWRDb21wbGV0ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFz
a0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChhdXRv
IHRhc2sgPSByZW1vdmVUYXNrKHRhc2tJZGVudGlmaWVyKSkKICAgICAgICAgdGFzay0+ZGlkQ29t
cGxldGUoZXJyb3IpOwpAQCAtMTE3LDcgKzExNyw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxl
clByb3h5Ojp0YXNrRGlkU3RvcExvYWRpbmcoV2ViVVJMU2NoZW1lVGFza1Byb3h5JiB0YXNrKQog
ICAgIHJlbW92ZVRhc2sodGFzay5pZGVudGlmaWVyKCkpOwogfQogCi1SZWZQdHI8V2ViVVJMU2No
ZW1lVGFza1Byb3h5PiBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnJlbW92ZVRhc2sodWludDY0
X3QgaWRlbnRpZmllcikKK1JlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIHRhc2sgPSBtX3Rhc2tzLnRha2UoaWRlbnRpZmll
cik7CiAgICAgaWYgKCF0YXNrKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaAppbmRleCAwNDJkNzljNmU2
Zjg0NWRjMWIwNmIyY2EzMzgwMDcyZDQ4MGJhNmYwLi4wNjk1YzQwNzQ3ODNkMTFkNjZjZDUwMDQx
NDNjZDRhZGQxNTdkOTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaApAQCAtMzksNyArMzksNiBA
QCBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2Vi
UGFnZTsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKIAogY2xhc3Mg
V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5IDogcHVibGljIFJlZkNvdW50ZWQ8V2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5PiB7CiBwdWJsaWM6CkBAIC01MiwyNiArNTEsMjcgQEAgcHVibGljOgogICAg
IHZvaWQgc3RhcnROZXdUYXNrKFdlYkNvcmU6OlJlc291cmNlTG9hZGVyJiwgV2ViRnJhbWUmKTsK
ICAgICB2b2lkIHN0b3BBbGxUYXNrcygpOwogCi0gICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBXZWJGcmFtZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJiwgVmVjdG9yPHVpbnQ4X3Q+Jik7CisgICAgdm9pZCBsb2FkU3luY2hyb25vdXNseShXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImLCBWZWN0b3I8dWludDhfdD4mKTsKIAogICAgIHVpbnQ2NF90IGlkZW50aWZp
ZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KICAgICBXZWJQYWdlJiBwYWdlKCkg
eyByZXR1cm4gbV93ZWJQYWdlOyB9CiAKLSAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24odWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKLSAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9u
c2UodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmKTsKLSAgICB2b2lkIHRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNrSWRlbnRpZmll
ciwgc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsKLSAgICB2b2lkIHRhc2tEaWRDb21wbGV0
ZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
OworICAgIHZvaWQgdGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lkIHRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
Jik7CisgICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURhdGEoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBzaXplX3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOworICAgIHZvaWQgdGFza0Rp
ZENvbXBsZXRlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpOwogICAgIHZvaWQgdGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNj
aGVtZVRhc2tQcm94eSYpOwogCiBwcml2YXRlOgogICAgIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eShXZWJQYWdlJiwgdWludDY0X3QgaWRlbnRpZmllcik7CiAKLSAgICBSZWZQdHI8V2ViVVJMU2No
ZW1lVGFza1Byb3h5PiByZW1vdmVUYXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpOworICAgIFJlZlB0
cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKTsKIAogICAgIFdlYlBhZ2UmIG1fd2ViUGFnZTsKKyAgICAvLyBGSVhNRTog
VGhpcyBzaG91bGQgYmUgYSBzdHJvbmdseSB0eXBlZCBpZGVudGlmaWVyLgogICAgIHVpbnQ2NF90
IG1faWRlbnRpZmllciB7IDAgfTsKIAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJV
UkxTY2hlbWVUYXNrUHJveHk+PiBtX3Rhc2tzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pj4gbV90YXNr
czsKIH07IC8vIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlVSTFNjaGVtZVRhc2tQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCmluZGV4IDc1Nzk5YTBjNjVkMGNkYWZkZTZmMjY1
YjFjNTQ3NTZiODRhMjA5ZDkuLmM4YzRhZjdlYmQ4ZjExY2Y2YzhjYTdhZTdlMDdhMDNiNGQ1OTQ1
NDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNj
aGVtZVRhc2tQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcApAQCAtMzksOCArMzksOCBAQAogI2luY2x1ZGUgPFdl
YkNvcmUvUmVzb3VyY2VMb2FkZXIuaD4KICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIu
aD4KIAotI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRf
VEVNUExBVEUgIltzY2hlbWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0
ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHRhc2tJRD0lbHVdIFdlYlVSTFNjaGVtZVRhc2tQcm94
eTo6IgotI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRf
UEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigpLCBwYWdlSURGcm9tV2Vi
RnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIG1faWRlbnRpZmll
cgorI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVN
UExBVEUgIltzY2hlbWVIYW5kbGVyPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIs
IGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHRhc2tJRD0lIiBQUkl1NjQgIl0gV2ViVVJMU2NoZW1lVGFz
a1Byb3h5OjoiCisjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFO
REFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIHBhZ2VJREZy
b21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgbV9pZGVu
dGlmaWVyLnRvVUludDY0KCkKICNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0Vf
TE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlf
UkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKIAogbmFtZXNw
YWNlIFdlYktpdCB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oCmluZGV4IGI1ZTMzNGRmYzIzMzY0OGVjNTdlOGY2
MTYzZGMxNWZhYjU2ZjZjNWMuLjkzZDlhNDliNWE3MGQyZTBiMTNmZjY4Y2FiZmI1ZWUwNDdhNTVl
Y2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNj
aGVtZVRhc2tQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlVSTFNjaGVtZVRhc2tQcm94eS5oCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lk
IGRpZFJlY2VpdmVEYXRhKHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7CiAgICAgdm9pZCBk
aWRDb21wbGV0ZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAKLSAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0
dXJuIG1faWRlbnRpZmllcjsgfQogCiBwcml2YXRlOgogICAgIFdlYlVSTFNjaGVtZVRhc2tQcm94
eShXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlciYsIFdl
YkZyYW1lJik7CkBAIC03MCw3ICs3MCw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6
OlJlc291cmNlTG9hZGVyPiBtX2NvcmVMb2FkZXI7CiAgICAgUmVmUHRyPFdlYkZyYW1lPiBtX2Zy
YW1lOwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVlc3Q7Ci0gICAgdW5zaWdu
ZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIG1faWRlbnRpZmllcjsKICAgICBib29sIG1fd2FpdGluZ0ZvckNvbXBsZXRpb25IYW5kbGVy
IHsgZmFsc2UgfTsKICAgICBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+PiBtX3F1ZXVlZFRhc2tzOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVz
b3VyY2VMb2FkU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBv
cnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcAppbmRleCA3ZGNmZTBiODc5Y2E4NTQ1Njk2
ODM3ZWVjN2NhODkwZjk5OGE5OTFlLi4xZTRkMjljMGU0MWY3ODZjNjVkNDMxZjM3MWIyNmM0NzUw
NDk1ZDAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dl
YlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJD
b3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCkBAIC0xMDcsNyArMTA3LDcg
QEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZShGcmFtZSYgZnJh
bWUsIENhY2hlZFJlc291cmNlJiByZXNvdXIKICAgICB9KTsKIH0KIAotdm9pZCBXZWJSZXNvdXJj
ZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZy
YW1lTG9hZGVyLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29u
c3QgSFRUUEhlYWRlck1hcCYsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQordm9pZCBXZWJSZXNvdXJjZUxvYWRT
Y2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9h
ZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBIVFRQSGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCiB7CiAgICAgYXV0byogZG9j
dW1lbnQgPSBmcmFtZUxvYWRlci5mcmFtZSgpLmRvY3VtZW50KCk7CiAgICAgYXV0byogc291cmNl
T3JpZ2luID0gZG9jdW1lbnQgPyAmZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkgOiBudWxscHRy
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNv
dXJjZUxvYWRTY2hlZHVsZXIuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQv
V2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKaW5kZXggMTYxOGI2N2ExZmY2ZDYyZjgxMTQyN2U5
NmM5OWU5Mzk2YTliMGEwYi4uZTU5NTUwZmJiYmEwZjZkYzM0Y2MzM2Q1MTBlODllNmUzNDk4ZGEw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNv
dXJjZUxvYWRTY2hlZHVsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBw
b3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oCkBAIC00NSw3ICs0NSw3IEBAIHB1YmxpYzoK
ICAgICBXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIoKTsKIAogICAgIHZvaWQgbG9hZFJlc291cmNl
KFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2UmLCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJPcHRpb25zJiwgQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXI+JiYp
PiYmKSBmaW5hbDsKLSAgICB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6
RnJhbWVMb2FkZXImLCB1bnNpZ25lZCBsb25nLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBXZWJDb3JlOjpGZXRj
aE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4mKSBm
aW5hbDsKKyAgICB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6RnJhbWVM
b2FkZXImLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0
IFdlYkNvcmU6OkZldGNoT3B0aW9ucyYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rv
cjx1aW50OF90PiYpIGZpbmFsOwogICAgIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6
UGFnZSYpIGZpbmFsOwogICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChXZWJDb3JlOjpG
cmFtZSYpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAzYzI0ODEzMWU1
ZGI4MTlhYzIzYjZmMThmMjhmOWJiMTIxZjRiYmMzLi5lM2Y1ZjljOWYwZmZkOGFlZTJkYmYwZTc4
MzIxNmJjM2MwYTc1NWM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTgyLDI4ICs4
MiwyOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93
bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICB2
b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKSBmaW5hbDsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBmaW5hbDsKIAotICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOwotICAgIGJvb2wg
c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZl
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
JikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsK
ICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0
aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNl
JikgZmluYWw7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogCiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBj
b25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29u
bmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOwogI2VuZGlmCiAKLSAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7
Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hE
aWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGludCBk
YXRhTGVuZ3RoKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikg
ZmluYWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwogI2Vu
ZGlmCi0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgZmluYWw7CiAKLSAgICB2b2lkIHdpbGxDYWNoZVJlc3Bv
bnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBO
U0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJl
c3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBOU0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVS
TFJlc3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNw
YXRjaE9ubG9hZEV2ZW50cygpIGZpbmFsOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlU2Vy
dmVyUmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWQoKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQubW0KaW5kZXggZmJhZWE4ZWE2ODY4ZGE4MTI0YzAxMTJiNTBiMmNkNDU1ZTcxNWY2OC4u
NzFhNzE1YjM3ZmE1ZTZjNWY3NDQ0ZTIzN2M4MmQxNTljZTA4OGFkMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
bW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQubW0KQEAgLTMzNiw3ICszMzYsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShXZWJDb3JlOjpEb2N1
bQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3Np
Z25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZp
ZXJUb0luaXRpYWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdl
YlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVu
dGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxl
Z2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTM1Niw3ICszNTYsNyBAQCB2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNp
Z25lZCBsb25nIGlkZW50aQogICAgIFt3ZWJWaWV3IF9hZGRPYmplY3Q6b2JqZWN0LmdldCgpIGZv
cklkZW50aWZpZXI6aWRlbnRpZmllcl07CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBXZWJW
aWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNv
dXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmll
d0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtMzg2
LDcgKzM4Niw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRS
ZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkCiAgICAgICAgIHJlcXVlc3QudXBk
YXRlRnJvbURlbGVnYXRlUHJlc2VydmluZ09sZFByb3BlcnRpZXMoV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0KG5ld1VSTFJlcXVlc3QpKTsKIH0KIAotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAg
V2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2Vi
UmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdl
YlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAg
LTM5OSw3ICszOTksNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVk
ZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbAogICAgIHJldHVybiB0cnVl
OwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlJiBjaGFsbGVuZ2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJl
Y2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKIHsKICAgICBXZWJW
aWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNv
dXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmll
d0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNDIw
LDcgKzQyMCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2
ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvCiB9CiAKICNpZiBVU0UoUFJPVEVD
VElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2Fu
QXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3Rl
Y3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNlKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCiB7CiAg
ICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAg
V2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9
IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsK
QEAgLTQ0MSw3ICs0NDEsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZQogI2VuZGlmCiAKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQotUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK1JldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyht
X3dlYkZyYW1lLmdldCgpKTsKICAgICBpZCByZXNvdXJjZSA9IFt3ZWJWaWV3IF9vYmplY3RGb3JJ
ZGVudGlmaWVyOmlkZW50aWZpZXJdOwpAQCAtNDY4LDcgKzQ2OCw3IEBAIGJvb2wgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFBhaW50QnJva2VuSW1hZ2UoY29uc3QgVVJMJiBpbWFnZVVSTCkg
Y29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmll
dyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRp
b25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRl
SW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNDg2LDcgKzQ4Niw3IEBAIHZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiBsCiAgICAgfQogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxs
Q2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIp
IGNvbnN0Cit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikgY29uc3QKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1l
LmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1w
bGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRp
b25zKHdlYlZpZXcpOwpAQCAtNTA2LDcgKzUwNiw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OndpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVu
CiAgICAgY29tcGxldGlvbkhhbmRsZXIocmVzcG9uc2UpOwogfQogCi12b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5n
dGgpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50
TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKIHsKICAgICBXZWJW
aWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNv
dXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmll
d0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNTI4
LDcgKzUyOCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNo
RGF0YURldGVjdGlvbihOU0FycmF5ICopCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciog
bG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsK
ICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAg
ICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25z
ID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcp
OwpAQCAtNTUwLDcgKzU1MCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hCiAgICAgc3RhdGlj
X2Nhc3Q8V2ViRG9jdW1lbnRMb2FkZXJNYWMqPihsb2FkZXIpLT5kZWNyZWFzZUxvYWRDb3VudChp
ZGVudGlmaWVyKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRG
YWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1
bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgV2Vi
VmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVz
b3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZp
ZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJN
YWMuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJN
YWMuaAppbmRleCBlODAzMTRiMmEwODk0ODRhNGEyZTQ5ZTYwOTc0ZmU2MDk3YjFmNzhlLi42MDJm
YmMyMGY1ZTJmMDAyZmJiZTg4YWJlNWRiZmEyNmI1MDA1NTQ1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLmgKKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5oCkBAIC0y
Nyw2ICsyNyw3IEBACiAgKi8KIAogI2ltcG9ydCA8V2ViQ29yZS9Eb2N1bWVudExvYWRlci5oPgor
I2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbXBvcnQgPHd0
Zi9SZXRhaW5QdHIuaD4KICNpbXBvcnQgPHd0Zi9IYXNoU2V0Lmg+CiAKQEAgLTQ4LDggKzQ5LDgg
QEAgcHVibGljOgogICAgIHZvaWQgZGV0YWNoRGF0YVNvdXJjZSgpOwogICAgIFdlYkRhdGFTb3Vy
Y2UgKmRhdGFTb3VyY2UoKSBjb25zdDsKIAotICAgIHZvaWQgaW5jcmVhc2VMb2FkQ291bnQodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKTsKLSAgICB2b2lkIGRlY3JlYXNlTG9hZENvdW50KHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBpbmNyZWFzZUxvYWRDb3VudChXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIHZvaWQgZGVjcmVhc2VMb2FkQ291bnQo
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogcHJpdmF0ZToKICAgICBXZWJE
b2N1bWVudExvYWRlck1hYyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBX
ZWJDb3JlOjpTdWJzdGl0dXRlRGF0YSYpOwpAQCAtNjQsNSArNjUsNSBAQCBwcml2YXRlOgogICAg
IGJvb2wgbV9pc0RhdGFTb3VyY2VSZXRhaW5lZDsKICAgICBSZXRhaW5QdHI8aWQ+IG1fcmVzb3Vy
Y2VMb2FkRGVsZWdhdGU7CiAgICAgUmV0YWluUHRyPGlkPiBtX2Rvd25sb2FkRGVsZWdhdGU7Ci0g
ICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPiBtX2xvYWRpbmdSZXNvdXJjZXM7CisgICAgSGFzaFNl
dDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1fbG9hZGluZ1Jlc291cmNlczsK
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1
bWVudExvYWRlck1hYy5tbQppbmRleCBkMmViY2IwMDFkZjZhN2U3NDA1MjY3MzkzNmU5NzU3MzMy
MTBiYzcwLi41MWIzZGNlZDMxYWIxMzExMjU5ODE5Nzk4YzJmY2JkYjA5YzQ1NGQ3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2Fk
ZXJNYWMubW0KQEAgLTkyLDcgKzkyLDcgQEAgdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6ZGV0
YWNoRnJvbUZyYW1lKCkKICAgICAvLyBmcmFtZSBpcyBub3QgYXR0YWNoZWQ/CiB9CiAKLXZvaWQg
V2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikKK3ZvaWQgV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIEFTU0VS
VChtX2RhdGFTb3VyY2UpOwogCkBAIC0xMDMsOSArMTAzLDkgQEAgdm9pZCBXZWJEb2N1bWVudExv
YWRlck1hYzo6aW5jcmVhc2VMb2FkQ291bnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAg
IHJldGFpbkRhdGFTb3VyY2UoKTsKIH0KIAotdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6ZGVj
cmVhc2VMb2FkQ291bnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJEb2N1bWVu
dExvYWRlck1hYzo6ZGVjcmVhc2VMb2FkQ291bnQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7Ci0gICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPjo6aXRlcmF0
b3IgaXQgPSBtX2xvYWRpbmdSZXNvdXJjZXMuZmluZChpZGVudGlmaWVyKTsKKyAgICBhdXRvIGl0
ID0gbV9sb2FkaW5nUmVzb3VyY2VzLmZpbmQoaWRlbnRpZmllcik7CiAgICAgCiAgICAgLy8gSXQg
aXMgdmFsaWQgZm9yIGEgbG9hZCB0byBiZSBjYW5jZWxsZWQgYmVmb3JlIGl0J3Mgc3RhcnRlZC4K
ICAgICBpZiAoaXQgPT0gbV9sb2FkaW5nUmVzb3VyY2VzLmVuZCgpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaCBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgKaW5kZXggZTFmZGQ0MDBm
MWJlNzVmN2Q5NTE3MGU2NzQwM2Q0NGVmYzE0ZGFmNS4uYTQ3ZGEyY2Y0ZDc0OTQ5NjBmNWM1MDhm
MjJiN2YxNTBhMjdkOGRhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Vmlldy9XZWJWaWV3SW50ZXJuYWwuaAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYlZpZXdJbnRlcm5hbC5oCkBAIC00Miw2ICs0Miw3IEBACiAjaW1wb3J0IDxXZWJDb3Jl
L0hUTUxNZWRpYUVsZW1lbnRFbnVtcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9MYXlvdXRNaWxlc3Rv
bmUuaD4KICNpbXBvcnQgPFdlYkNvcmUvUGxheWJhY2tUYXJnZXRDbGllbnRDb250ZXh0SWRlbnRp
Zmllci5oPgorI2ltcG9ydCA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNp
bXBvcnQgPFdlYkNvcmUvVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1RleHRJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEluZGljYXRvcldpbmRv
dy5oPgpAQCAtMjUwLDkgKzI1MSwxMSBAQCBXZWJMYXlvdXRNaWxlc3RvbmVzIGtpdExheW91dE1p
bGVzdG9uZXMoT3B0aW9uU2V0PFdlYkNvcmU6OkxheW91dE1pbGVzdG9uZT4pOwogLSAodm9pZCly
ZW1vdmVQbHVnaW5JbnN0YW5jZVZpZXdzRm9yOihXZWJGcmFtZSopd2ViRnJhbWU7CiAjZW5kaWYK
IAotLSAodm9pZClfYWRkT2JqZWN0OihpZClvYmplY3QgZm9ySWRlbnRpZmllcjoodW5zaWduZWQg
bG9uZylpZGVudGlmaWVyOwotLSAoaWQpX29iamVjdEZvcklkZW50aWZpZXI6KHVuc2lnbmVkIGxv
bmcpaWRlbnRpZmllcjsKLS0gKHZvaWQpX3JlbW92ZU9iamVjdEZvcklkZW50aWZpZXI6KHVuc2ln
bmVkIGxvbmcpaWRlbnRpZmllcjsKKyNpZmRlZiBfX2NwbHVzcGx1cworLSAodm9pZClfYWRkT2Jq
ZWN0OihpZClvYmplY3QgZm9ySWRlbnRpZmllcjooV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKWlkZW50aWZpZXI7CistIChpZClfb2JqZWN0Rm9ySWRlbnRpZmllcjooV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKWlkZW50aWZpZXI7CistICh2b2lkKV9yZW1vdmVPYmpl
Y3RGb3JJZGVudGlmaWVyOihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpaWRlbnRp
ZmllcjsKKyNlbmRpZgogCiAtICh2b2lkKV9zZXRab29tTXVsdGlwbGllcjooZmxvYXQpbXVsdGlw
bGllciBpc1RleHRPbmx5OihCT09MKWlzVGV4dE9ubHk7CiAtIChmbG9hdClfem9vbU11bHRpcGxp
ZXI6KEJPT0wpaXNUZXh0T25seTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2lu
L1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCAy
ODk1M2Q2ZjZkYjQzYTFiMzY2NDI5MmQzNjdlNmI3ZTA2YzA2NDhhLi41ODg5OTJkNGFhZmU1ZmM4
MzliNjU0ZGNlZGE4OTJkZDcwMzU4MjNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3Bw
CkBAIC0xNzcsNyArMTc3LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQordm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJG
cmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJl
c291cmNlTG9hZERlbGVnYXRlOwpAQCAtMTg1LDEwICsxODUsMTAgQEAgdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9u
ZyBpZGVudGkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQ09NUHRyPFdlYk11dGFibGVVUkxSZXF1
ZXN0PiB3ZWJVUkxSZXF1ZXN0KEFkb3B0Q09NLCBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6Y3JlYXRl
SW5zdGFuY2UocmVxdWVzdCkpOwotICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5pZGVudGlmaWVy
Rm9ySW5pdGlhbFJlcXVlc3Qod2ViVmlldywgd2ViVVJMUmVxdWVzdC5nZXQoKSwgZ2V0V2ViRGF0
YVNvdXJjZShsb2FkZXIpLCBpZGVudGlmaWVyKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+
aWRlbnRpZmllckZvckluaXRpYWxSZXF1ZXN0KHdlYlZpZXcsIHdlYlVSTFJlcXVlc3QuZ2V0KCks
IGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIH0KIAot
Ym9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorYm9vbCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAg
V2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdl
YlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAgLTIwMCwxMyAr
MjAwLDEzIEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgICAgIHJldHVybiB0cnVlOwog
CiAgICAgQk9PTCBzaG91bGRVc2U7Ci0gICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxl
Z2F0ZVByaXZhdGUtPnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHdlYlZpZXcsIGlkZW50aWZp
ZXIsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJnNob3VsZFVzZSkpKQorICAgIGlmIChTVUND
RUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRVc2VDcmVkZW50aWFsU3Rv
cmFnZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIGdldFdlYkRhdGFTb3VyY2UobG9h
ZGVyKSwgJnNob3VsZFVzZSkpKQogICAgICAgICByZXR1cm4gc2hvdWxkVXNlOwogCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNoYWxs
ZW5nZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hh
bGxlbmdlKQogewogICAgIEFTU0VSVChjaGFsbGVuZ2UuYXV0aGVudGljYXRpb25DbGllbnQoKSk7
CiAKQEAgLTIxNCw3ICsyMTQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYQogICAgIENPTVB0
cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAgIGlm
IChTVUNDRUVERUQod2ViVmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERl
bGVnYXRlKSkpIHsKICAgICAgICAgQ09NUHRyPFdlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
PiB3ZWJDaGFsbGVuZ2UoQWRvcHRDT00sIFdlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOjpj
cmVhdGVJbnN0YW5jZShjaGFsbGVuZ2UpKTsKLSAgICAgICAgaWYgKFNVQ0NFRURFRChyZXNvdXJj
ZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHdlYlZpZXcs
IGlkZW50aWZpZXIsIHdlYkNoYWxsZW5nZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIp
KSkpCisgICAgICAgIGlmIChTVUNDRUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCks
IHdlYkNoYWxsZW5nZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKSkpCiAgICAgICAg
ICAgICByZXR1cm47CiAgICAgfQogCkBAIC0yMjMsNyArMjIzLDcgQEAgdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9j
dW1lbnRMb2EKICAgICBjaGFsbGVuZ2UuYXV0aGVudGljYXRpb25DbGllbnQoKS0+cmVjZWl2ZWRS
ZXF1ZXN0VG9Db250aW51ZVdpdGhvdXRDcmVkZW50aWFsKGNoYWxsZW5nZSk7CiB9CiAKLXZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25z
ZSkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAg
IENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpA
QCAtMjM0LDcgKzIzNCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2ls
bFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgQ09NUHRyPFdl
YlVSTFJlc3BvbnNlPiB3ZWJVUkxSZWRpcmVjdFJlc3BvbnNlKEFkb3B0Q09NLCBXZWJVUkxSZXNw
b25zZTo6Y3JlYXRlSW5zdGFuY2UocmVkaXJlY3RSZXNwb25zZSkpOwogCiAgICAgQ09NUHRyPElX
ZWJVUkxSZXF1ZXN0PiBuZXdXZWJVUkxSZXF1ZXN0OwotICAgIGlmIChGQUlMRUQocmVzb3VyY2VM
b2FkRGVsZWdhdGUtPndpbGxTZW5kUmVxdWVzdCh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJVUkxS
ZXF1ZXN0LmdldCgpLCB3ZWJVUkxSZWRpcmVjdFJlc3BvbnNlLmdldCgpLCBnZXRXZWJEYXRhU291
cmNlKGxvYWRlciksICZuZXdXZWJVUkxSZXF1ZXN0KSkpCisgICAgaWYgKEZBSUxFRChyZXNvdXJj
ZUxvYWREZWxlZ2F0ZS0+d2lsbFNlbmRSZXF1ZXN0KHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50
NjQoKSwgd2ViVVJMUmVxdWVzdC5nZXQoKSwgd2ViVVJMUmVkaXJlY3RSZXNwb25zZS5nZXQoKSwg
Z2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmbmV3V2ViVVJMUmVxdWVzdCkpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBpZiAod2ViVVJMUmVxdWVzdCA9PSBuZXdXZWJVUkxSZXF1ZXN0KQpAQCAt
MjUyLDcgKzI1Miw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNl
bmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgcmVxdWVzdCA9IG5l
d1dlYlVSTFJlcXVlc3RJbXBsLT5yZXNvdXJjZVJlcXVlc3QoKTsKIH0KIAotdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2
ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBX
ZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2Vi
UmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAtMjYwLDMwICsy
NjAsMzAgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW4KICAgICAgICAgcmV0dXJuOwogCiAgICAg
Q09NUHRyPFdlYlVSTFJlc3BvbnNlPiB3ZWJVUkxSZXNwb25zZShBZG9wdENPTSwgV2ViVVJMUmVz
cG9uc2U6OmNyZWF0ZUluc3RhbmNlKHJlc3BvbnNlKSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdh
dGUtPmRpZFJlY2VpdmVSZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJVUkxSZXNwb25z
ZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxl
Z2F0ZS0+ZGlkUmVjZWl2ZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwg
d2ViVVJMUmVzcG9uc2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKLXZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgbGVu
Z3RoKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVu
dExlbmd0aChEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllciwgaW50IGxlbmd0aCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJG
cmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJl
c291cmNlTG9hZERlbGVnYXRlOwogICAgIGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2Fk
RGVsZWdhdGUoJnJlc291cmNlTG9hZERlbGVnYXRlKSkpCiAgICAgICAgIHJldHVybjsKIAotICAg
IHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlQ29udGVudExlbmd0aCh3ZWJWaWV3LCBp
ZGVudGlmaWVyLCBsZW5ndGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3Vy
Y2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHdlYlZpZXcsIGlkZW50aWZp
ZXIudG9VSW50NjQoKSwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlZp
ZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNv
dXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CiAgICAgaWYgKEZBSUxFRCh3
ZWJWaWV3LT5yZXNvdXJjZUxvYWREZWxlZ2F0ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUpKSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZpbmlzaExvYWRp
bmdGcm9tRGF0YVNvdXJjZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCBnZXRXZWJEYXRhU291cmNlKGxv
YWRlcikpOworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRGaW5pc2hMb2FkaW5nRnJvbURh
dGFTb3VyY2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBnZXRXZWJEYXRhU291cmNl
KGxvYWRlcikpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENP
TVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAt
MjkxLDExICsyOTEsMTEgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRG
YWlsTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ24KICAgICAgICAgcmV0dXJu
OwogCiAgICAgQ09NUHRyPFdlYkVycm9yPiB3ZWJFcnJvcihBZG9wdENPTSwgV2ViRXJyb3I6OmNy
ZWF0ZUluc3RhbmNlKGVycm9yKSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZhaWxM
b2FkaW5nV2l0aEVycm9yKHdlYlZpZXcsIGlkZW50aWZpZXIsIHdlYkVycm9yLmdldCgpLCBnZXRX
ZWJEYXRhU291cmNlKGxvYWRlcikpOworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRGYWls
TG9hZGluZ1dpdGhFcnJvcih3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIHdlYkVycm9y
LmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOwogfQogCiAjaWYgVVNFKENGVVJMQ09O
TkVDVElPTikKLWJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2Uo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgY29u
c3QgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCBjb25zdCB1bnNpZ25lZCBsb25nIGxvbmcgbGVu
Z3RoKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAg
ICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7
CkBAIC0zMDgsNyArMzA4LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkQ2Fj
aGVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZAogCiAgICAgQ09NUHRy
PElXZWJVUkxSZXNwb25zZT4gdXJsUmVzcG9uc2UoQWRvcHRDT00sIFdlYlVSTFJlc3BvbnNlOjpj
cmVhdGVJbnN0YW5jZShyZXNwb25zZSkpOwogICAgIEJPT0wgc2hvdWxkQ2FjaGU7Ci0gICAgaWYg
KFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZENhY2hlUmVzcG9u
c2Uod2ViVmlldywgaWRlbnRpZmllciwgdXJsUmVzcG9uc2UuZ2V0KCksIGRhdGEsIGxlbmd0aCwg
Z2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkQ2FjaGUpKSkKKyAgICBpZiAoU1VDQ0VF
REVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkQ2FjaGVSZXNwb25zZSh3ZWJW
aWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIHVybFJlc3BvbnNlLmdldCgpLCBkYXRhLCBsZW5n
dGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJnNob3VsZENhY2hlKSkpCiAgICAgICAgIHJl
dHVybiBzaG91bGRDYWNoZTsKIAogICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmgKaW5kZXggZWI3ZjIzM2NmNGYyZDQzZGUxNzc2ZTJiMGQzNjJmYWMyZGVhZDQ0MC4uMWUz
MDMxZjliNTAyYzNkZDg4YThhNTQ4YTQ3YzdmMmI2Yjk5MzBlNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oCkBAIC02MCwxNyArNjAsMTcgQEAgcHVibGljOgogICAgIHZvaWQgZGV0YWNoZWRG
cm9tUGFyZW50MygpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9h
ZFRvRG93bmxvYWQoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7
Ci0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7Ci0KLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1
ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNl
JiByZWRpcmVjdFJlc3BvbnNlKSBvdmVycmlkZTsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRp
YWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5n
dGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGlu
dCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJikgb3ZlcnJpZGU7CisgICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVx
dWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisKKyAg
ICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBv
dmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRl
bnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNo
RGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxM
b2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CiAjaWYg
VVNFKENGVVJMQ09OTkVDVElPTikKLSAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCB1bnNpZ25l
ZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBj
aGFyKiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSBvdmVycmlkZTsKICNlbmRpZgog
CiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgb3ZlcnJpZGU7Cg==
</data>
<flag name="commit-queue"
          id="461913"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438510</attachid>
            <date>2021-09-17 13:44:25 -0700</date>
            <delta_ts>2021-09-17 15:23:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210917134424.patch</filename>
            <type>text/plain</type>
            <size>377445</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNjU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2NhY2VhZjU3ZWJiMDVk
ODRkOGIwOWY1OTZjOGIzM2EzNmZiN2IxMy4uYWJlMDc0NThhNDg3NjU5YjUwZGZmZTAxYTk4NGFi
OGFhOTEwOWM2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNyAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
TWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVy
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJM
b2FkZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRS
ZXF1ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRp
b25zRGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVy
Y2VwdFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAg
ICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNl
aXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dl
YkNvbnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0
aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToK
KyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6Cisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
b25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxl
bWVudFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9u
YWxMb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50
ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5oOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxv
YWRlci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3Jl
OjpMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9M
b2FkZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29p
bmdMb2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9Q
aW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xv
YWQpOgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJD
b3JlOjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBs
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5v
dGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29u
c3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmRE
YXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVu
dDo6ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJD
bGllbnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFi
bGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DYW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJl
YWRCcmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
ciBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291
cmNlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRl
ZC4KKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1M
SHR0cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIE1vdmUgbm9uLXRyYXZlcnNhbCBm
dW5jdGlvbnMgZnJvbSBpdGVyYXRvciB0byB0aGUgZGVyZWZlcmVuY2VkIHR5cGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggNzI5NmI1M2E1ZGEyM2E3OGE0MGQ3ZWE0YzRmYTRmMWEzN2M2MTI0ZS4uYzAzYWUwNzNhMDdm
OWJiZmI4ODc2NGI3YmU4NjkyOGJjYmZjOGEyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNzMgQEAK
KzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JS
ZWZlcmVuY2VzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9hZFBpbmcpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJl
Y29ubmVjdFRvKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OmlzUmVzb3VyY2VMb2FkRmluaXNoZWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6c3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmdldE5l
dHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0
aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRh
a2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjphZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmFkZE5ldHdvcmtM
b2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVzb3VyY2VOZXR3b3JrQWN0
aXZpdHlUcmFja2VyOjpSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjp0YWtlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmNvbnRh
aW5zIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNm
ZXJUb05ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0Ojplc2NhcGVJREZvckpTT04pOgor
ICAgICAgICAoV2ViS2l0Ojpsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0Ojpsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbik6CisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3
YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRh
c2s6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oOgorICAgICAg
ICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxv
YWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3Vy
Y2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50Ojpk
aWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKToK
KyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmFp
bExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJj
ZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAoQVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAgICAg
ICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2Vu
ZFJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJl
c291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UpOgorICAgICAg
ICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlk
RmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZSk6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0
aW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1
bGVMb2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9h
ZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
OjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3Vy
Y2VMb2Fkcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxv
YWRJZGVudGlmaWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyBjb25zdCk6CisgICAgICAgIChXZWJL
aXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNw
b25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6
Y29udGludWVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQgY29uc3QpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZp
ZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1
dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRIMlBpbmcpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmFkZENvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkUmVzb3Vy
Y2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1
ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3Jt
UmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1l
VGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KToK
KyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViVVJMU2NoZW1lVGFza1Byb3h5OjppZGVudGlmaWVyIGNvbnN0KToKKwogMjAyMS0wOS0xNyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dU
S11bYTExeV0gQWRkIGEgYnVpbGQgb3B0aW9uIHRvIGVuYWJsZSBBVFNQSQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5n
ZUxvZwppbmRleCAzM2YxMDljZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNiOWI4ZDEzLi45MjY5
YzAxNjUzYmQzOTA1ZWZhMDk4OTU2ZmM0YmYyOGJmNjEyMGRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA5LTE3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFJl
c291cmNlTG9hZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6Cisg
ICAgICAgIChXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5o
OgorCiAyMDIxLTA5LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IG9yaWdpbiBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJhbWUtb3JpZ2lu
KSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGUz
YjQ5M2ZkYTg3OGE3OWRhY2NiZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmE0ZThkNzFlMDhhZmFmNmUx
ZTdlMzVjZmYxYTJjMDAwODExZTczNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyOSBAQAorMjAyMS0wOS0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJj
ZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAg
ICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAgICAqIFdl
YlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLm1tOgorICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNl
TG9hZENvdW50KToKKyAgICAgICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRD
b3VudCk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAyMS0wOS0x
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJkZW5pbmdd
IFZhbGlkYXRlIElEQlZhbHVlJ3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1dE9yQWRk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRleCA4NmYyMGMyYmZjNmY3NjY3NzE3ZTg2
YTU5NDdmZTJmNmQzZWMzMGFjLi4wOWQzYThjMjg1ZDM4ZTdkMGY1YzcwM2IyOWFhMzJjMGExNWQw
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEt
MDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Up
OgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZl
Q29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOgorCiAyMDIxLTA5LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hhcmRlbmluZ10gVmFsaWRhdGUgSURCVmFsdWUncyBibG9iIHBhdGhzIGluIFdl
YklEQlNlcnZlcjo6cHV0T3JBZGQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzI5OTNhMWJjMTgz
MmZlYzJjZTRjM2IyNzU5NTczOTJiNzMxNTE3NC4uYmVmOTgzNmE2MDE0ODk3YmEwZjI4YmE2YzNl
YTU3OGE2ZDRjZjEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC04NDQsNiArODQ0LDcgQEAgc2V0
KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGxvYWRlci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkVGltaW5nLmgKICAgICBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaAorICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aAogICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaAogICAgIGxvYWRlci9SZXNvdXJj
ZUxvYWRlclR5cGVzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCmluZGV4IDg2ZjUz
NDdmZDkxMzNkYzBlYWIzNWJkZWVjMzZlNmIzOTBiOWYyZTcuLjZjYmQxZjQ5M2Q0ODA3YzUzMmMy
ODEzZWZlMTdmYzkwMTU5NWY3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuY3BwCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
RmV0Y2hMb2FkZXI6OnN0YXJ0U3RyZWFtaW5nKCkKICAgICByZXR1cm4gZmlyc3RDaHVuazsKIH0K
IAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3Bv
bnNlKTsKIH0KQEAgLTE1Niw3ICsxNTYsNyBAQCB2b2lkIEZldGNoTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShjb25zdCB1aW50OF90KiB2YWx1ZSwgaW50IHNpemUpCiAgICAgbV9jb25zdW1lci0+YXBw
ZW5kKHZhbHVlLCBzaXplKTsKIH0KIAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9jbGllbnQuZGlkU3VjY2VlZCgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCmluZGV4IGYzMTRhMDVm
Y2ZhYzYxN2MzY2JkMzJiYTkwM2Y3Y2YyMDFiOWZlNDUuLjQwNzI4ZDI1N2U4NDNjNDExNDg2ZmQ2
ZTQzODA3MDQ0MzFhY2ZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
TG9hZGVyLmgKQEAgLTU3LDkgKzU3LDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQgQVBJLgotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
LCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBm
aW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGM3NTg0MzA2MTc3ZDg2NWI0OWUxOWI3ZTAzOWRlZGY1MDBmMTNkNmQu
LjUzZmU4OTk1ZDdjODM4MTkyNDRmZmFhYjg0NmU2MWRlN2M3MDJlZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwMTEsNiAr
MjAxMSw3IEBACiAJCTVCMzA2OTVFMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjMwNjk1
QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oICovOyB9OwogCQk1QjQ2NjU2
MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTVGMjVEMTRDMDkw
MDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVCNDY2NTY0MjVEMTRDMEEwMDBDRkUx
NCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNu
YXBBbmltYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUMxQjFEM0YyNkYzOTc4MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUMxQjFEM0QyNkYzOTc3RjAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVDMkIxQUVD
MjIzOTdFQkMwMEI5MUNGNyAvKiBSZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovOyB9OwogCQk1QzQzMDRCMTE5MUFDOTA4
MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNo
YWRlclRleHR1cmVMT0QuaCAqLzsgfTsKIAkJNUM0MzA0QjYxOTFBRUY0NjAwMEUyQkMwIC8qIEpT
RVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVy
ZUxPRC5oICovOyB9OwpAQCAtOTc1Nyw2ICs5NzU4LDcgQEAKIAkJNUMxQjFEMjQyNkYxNUIxQTAw
ODgyREEyIC8qIFNoYXJlZFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaGFyZWRXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjUy
NkYxODhEODAwODgyREEyIC8qIFdvcmtlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdvcmtlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzFC
MUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAxMjU3NzE5ODkw
MEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcmlhbGl6ZWRORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyRUJF
MDMyNTc3MUE0QzAwRDU1QjA1IC8qIFNlcmlhbGl6ZWRORkEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFCeXRlY29kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjc3MzgsNiArMjc3NDAsNyBAQAogCQkJCTdDMkZBNjEwMUVB
OTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLywKIAkJCQk5
M0UyMjdERTBBRjU4OUFEMDBENDgzMjQgLyogUmVzb3VyY2VMb2FkZXIuY3BwICovLAogCQkJCTY1
NkQzNzI3MEFEQkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCTVDMUIx
RDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLywKIAkJ
CQlEMEEzQTczMDE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggKi8s
CiAJCQkJNTFBRjUwMzUxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAq
LywKIAkJCQk1MUVFN0IzOTFBQTUxMjMxMDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAg
Ki8sCkBAIC0zMzEzMiw3ICszMzEzNSw2IEBACiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQx
IC8qIEpTRE9NV2luZG93QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NC
NjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQk0NjBD
QkYzNjFENEJDRDBFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmggaW4gSGVhZGVy
cyAqLywKLQkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVz
Y3JpcHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk2NUUwRTk0NDExMzNDODlGMDBCNENC
MTAgLyogSlNET01XcmFwcGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3QzQ1QzlEMzFFM0ZDQkQ3
MDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzQTgw
NjFFMUUwM0I1ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLywKQEAg
LTM0Njg5LDYgKzM0NjkxLDcgQEAKIAkJCQk1MTRDNzY3QTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVz
b3VyY2VIYW5kbGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3NjdCMENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
NTZEMzczRjBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTVDMUIxRDNGMjZGMzk3ODAwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUQwQTNBNzMxMTQwNUEzOTgwMEZCOEVEMyAvKiBSZXNv
dXJjZUxvYWRlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxQUY1MDM2MTZGMTAwRjYw
MDk1QjJFOCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUVF
N0IzODFBQTUwQjA1MDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5oIGluIEhlYWRlcnMgKi8s
CkBAIC0zNDc0Miw2ICszNDc0NSw3IEBACiAJCQkJMDdBQjk5NkIxOERBM0MwMTAwMTg3NzFFIC8q
IFJUQ0ljZVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkxMDgxRTdEREM3MzAwRjMw
NjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFBvbGljeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkx
MDkxRTdEREM3MzAwRjMwNjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3Jp
cHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUMxNEJDNjI2REU2REU4MDA2ODVCRjUg
LyogUlRDTmV0d29ya01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3Mzc5NEZFMTlGNTg2
NEUwMEU1QTA0NSAvKiBSVENOb3RpZmllcnNNb2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzM3
OTRERTE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmgKaW5kZXggNzZkMTRkYWZhYWFkMTIyOWJlZTAzZWI3MTI5NjJiMGFiNjNh
MDViNS4uOTYzOTBhMDgwZTYxMTQ5ZGMxNmNiODZlYjlhOTA4ZWFiMGUxOTZiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmgKQEAgLTY1LDcgKzY1LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXb3JrZXJNb2R1bGVT
Y3JpcHRMb2FkZXIoTW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50JiwgRGVmZXJyZWRQcm9taXNlJiwg
V29ya2VyU2NyaXB0RmV0Y2hlciYsIFJlZlB0cjxNb2R1bGVGZXRjaFBhcmFtZXRlcnM+JiYpOwog
Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIGZpbmFsIHsgfQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsIHsgfQog
ICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIHZvaWQgbm90aWZ5Q2xpZW50
RmluaXNoZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDg1NTM0MTIwNWYzYTdiOTQy
NmZhNzg4YzNiNWExNzlhODE2YWFlZGYuLjZmMWU5OWVhYjRkZWVmMTEyMWYwM2I5M2Y2ZWYxMmYy
NjgxM2U3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMzgzMywxMiArMzgzMywxMiBA
QCB2b2lkIERvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdihjb25zdCBTdHJpbmcmIGVxdWl2
LCBjb25zdCBTdHJpbmcmIGNvbnRlbnQsCiAgICAgY2FzZSBIVFRQSGVhZGVyTmFtZTo6WEZyYW1l
T3B0aW9uczoKICAgICAgICAgaWYgKGZyYW1lKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlciYg
ZnJhbWVMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25n
IHJlcXVlc3RJZGVudGlmaWVyID0gMDsKKyAgICAgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciByZXF1ZXN0SWRlbnRpZmllcjsKICAgICAgICAgICAgIGlmIChmcmFtZUxvYWRlci5hY3Rp
dmVEb2N1bWVudExvYWRlcigpICYmIGZyYW1lTG9hZGVyLmFjdGl2ZURvY3VtZW50TG9hZGVyKCkt
Pm1haW5SZXNvdXJjZUxvYWRlcigpKQogICAgICAgICAgICAgICAgIHJlcXVlc3RJZGVudGlmaWVy
ID0gZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+bWFpblJlc291cmNlTG9hZGVy
KCktPmlkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSAiVGhlIFgt
RnJhbWUtT3B0aW9uICciICsgY29udGVudCArICInIHN1cHBsaWVkIGluIGEgPG1ldGE+IGVsZW1l
bnQgd2FzIGlnbm9yZWQuIFgtRnJhbWUtT3B0aW9ucyBtYXkgb25seSBiZSBwcm92aWRlZCBieSBh
biBIVFRQIGhlYWRlciBzZW50IHdpdGggdGhlIGRvY3VtZW50LiI7Ci0gICAgICAgICAgICBhZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWVzc2FnZSwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICAgICAgYWRkQ29uc29sZU1l
c3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3Nh
Z2UsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcAppbmRl
eCA0NDNjNTQ5YzE1YTU3MWViM2I1ZTQ4NjRhYjc5NTNiMzQzMjg2NWEyLi5kY2M2MTNiODVkOGIx
ZWZjNGM4OGFlNzBhNThkMjYxNWM3ZWI5NDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9m
aWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVJlYWRlckxvYWRlci5jcHAKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEZpbGVSZWFkZXJM
b2FkZXI6OmNsZWFudXAoKQogICAgIH0KIH0KIAotdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCit2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpICE9IDIwMCkgewogICAgICAgICBmYWls
ZWQoaHR0cFN0YXR1c0NvZGVUb0Vycm9yQ29kZShyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKSk7
CkBAIC0yMTUsNyArMjE1LDcgQEAgdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlRGF0
YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKICAgICAgICAgbV9jbGllbnQt
PmRpZFJlY2VpdmVEYXRhKCk7CiB9CiAKLXZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkRmluaXNo
TG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBpZiAobV92YXJpYWJsZUxl
bmd0aCAmJiBtX3RvdGFsQnl0ZXMgPiBtX2J5dGVzTG9hZGVkKSB7CiAgICAgICAgIG1fcmF3RGF0
YSA9IG1fcmF3RGF0YS0+c2xpY2UoMCwgbV9ieXRlc0xvYWRlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Zp
bGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCmluZGV4IDljYmI5YjYxMTFhNzE2MjcxM2RkNWRjY2U3
ZjA1M2VlYzA4NTY4ZGQuLjk2ODQyNzkwM2JkZTk1MDc1NWU3OGI3ZWY1MDZjMWM4M2NmOGJhZjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCkBAIC02OSw5ICs2
OSw5IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNhbmNlbCgpOwogCiAgICAg
Ly8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVp
bnQ4X3QqLCBpbnQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25l
ZCBsb25nKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwogCiAgICAgU3RyaW5nIHN0cmluZ1Jlc3VsdCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApp
bmRleCBmZTIwNmFlYTM1ZTY3OTMzZTIwMTlmYzVhZjFlOTNhZmRhMGUzODM3Li5mOTFkNTUxYjNm
MTAzNjAwNTc5NTU3NjQ4MmMyNjg4NDBmODhhNjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtNTc1LDEzICs1
NzUsMTMgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0ZWRNZWRp
YUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHIKICAgICAgICAgcGFnZUFnZW50LT5hcHBs
eUVtdWxhdGVkTWVkaWEobWVkaWEpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5n
QWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQordm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBy
ZWRpcmVjdFJlc3BvbnNlLCBjYWNoZWRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGVJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2Fk
VHlwZSkKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5
cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3RPZlR5cGUoaWRlbnRpZmll
ciwgbG9hZGVyLCByZXF1ZXN0LCBsb2FkVHlwZSk7CkBAIC01OTYsNyArNTk2LDcgQEAgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZUlt
cGwoSW5zdHJ1bWVudGluZ0EKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUobG9hZGVyLCAqY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKExJ
S0VMWSghaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JFbnZpcm9ubWVudCgpLmRldmVsb3Bl
ckV4dHJhc0VuYWJsZWQoKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNywyNSArNjA3LDI1IEBA
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50CiAgICAgICAgIGNvbnNvbGVBZ2VudC0+ZGlkUmVjZWl2
ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsgLy8gVGhpcyBzaG91bGQgY29tZSBBRlRF
UiByZXNvdXJjZSBub3RpZmljYXRpb24sIGZyb250LWVuZCByZWxpZXMgb24gdGhpcy4KIH0KIAot
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVy
UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVj
ZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5z
dHJ1bWVudGluZ0FnZW50cywgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAg
IGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3
b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRSZWNlaXZlVGhyZWFkYWJsZUxv
YWRlclJlc3BvbnNlKGlkZW50aWZpZXIsIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcik7CiB9CiAK
LXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5n
dGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50
ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5l
dHdvcmtBZ2VudC0+ZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwg
ZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0Fn
ZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZp
bmlzaExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3Vy
Y2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xv
YWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChM
SUtFTFkoIWluc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yRW52aXJvbm1lbnQoKS5kZXZlbG9w
ZXJFeHRyYXNFbmFibGVkKCkpKQogICAgICAgICByZXR1cm47CkBAIC02NDgsNyArNjQ4LDcgQEAg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJgogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZExvYWRYSFJT
eW5jaHJvbm91c2x5KCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3Jp
cHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK3Zv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT5zZXRJbml0aWFsU2NyaXB0Q29udGVudChpZGVudGlm
aWVyLCBzb3VyY2VTdHJpbmcpOwpAQCAtNjYwLDcgKzY2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1BJbXBsKEluc3RydW1lbnRp
bmdBZ2VuCiAgICAgICAgIHdlYkRlYnVnZ2VyQWdlbnQtPnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRC
eUNTUChkaXJlY3RpdmVUZXh0KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1
bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdB
Z2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZFJl
Y2VpdmVTY3JpcHRSZXNwb25zZShpZGVudGlmaWVyKTsKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bQogICAgICAgICBuZXR3b3JrQWdlbnQtPmludGVyY2VwdFJlcXVl
c3QobG9hZGVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYg
aGFuZGxlcikKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0Fn
ZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+aW50ZXJj
ZXB0UmVzcG9uc2UocmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5o
CmluZGV4IDMxZjA1YzUwZjgwNWRiNTc5YjhjOTMwYmM5MGI5ZjYxYTkyZmFjNjguLmM2NDZlMzEz
MWM5MWFhOTI0MjYxMGJhY2M4NmY1YmMzOTA4MmY4MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTQ1LDYgKzQ1LDcg
QEAKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25QdWJsaWMuaCIKICNpbmNsdWRl
ICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUg
IldlYkFuaW1hdGlvbi5oIgogI2luY2x1ZGUgIldvcmtlckluc3BlY3RvclByb3h5LmgiCkBAIC0x
ODQsMzQgKzE4NSwzNCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRP
dmVycmlkZShGcmFtZSYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0ZWRN
ZWRpYShGcmFtZSYsIFN0cmluZyYpOwogCi0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0
KEZyYW1lKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KEZy
YW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlKFBhZ2UmLCBEb2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlKik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoRnJhbWUmLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVM
b2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhKEZyYW1lKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwg
aW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkRmFpbExvYWRpbmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgc3RhdGljIHZvaWQgd2lsbFNl
bmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7Ci0gICAgc3Rh
dGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVz
b3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRl
clJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIFJlc291cmNlTG9hZGVySWRlbnRp
Zmllcik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGEoRnJhbWUqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoRnJh
bWUqLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRG
YWlsTG9hZGluZyhGcmFtZSosIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJl
cXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFJlc291cmNlUmVxdWVzdCYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJj
ZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiAgICAgLy8gU29t
ZSBuZXR3b3JrIHJlcXVlc3RzIGRvIG5vdCBnbyB0aHJvdWdoIHRoZSBub3JtYWwgbmV0d29yayBs
b2FkaW5nIHBhdGguCiAgICAgLy8gVGhlc2UgbmV0d29yayByZXF1ZXN0cyBoYXZlIHRvIGlzc3Vl
IHRoZWlyIG93biB3aWxsU2VuZFJlcXVlc3QgLyBkaWRSZWNlaXZlUmVzcG9uc2UgLyBkaWRGaW5p
c2hMb2FkaW5nIC8gZGlkRmFpbExvYWRpbmcKICAgICAvLyBpbnN0cnVtZW50YXRpb24gY2FsbHMu
IFNvbWUgb2YgdGhlc2UgbG9hZHMgYXJlIGZvciByZXNvdXJjZXMgdGhhdCBsYWNrIGEgQ2FjaGVk
UmVzb3VyY2U6OlR5cGUuCiAgICAgZW51bSBjbGFzcyBMb2FkVHlwZSB7IFBpbmcsIEJlYWNvbiB9
OwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2Fk
VHlwZSk7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IExvYWRUeXBlKTsKIAotICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgdm9pZCBjb250aW51ZVdpdGhQ
b2xpY3lEb3dubG9hZChGcmFtZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgY29udGlu
dWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCBj
b250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZChGcmFtZSYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
c3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5RG93bmxvYWQoRnJhbWUmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
OworICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlV2l0aFBvbGljeUlnbm9yZShGcmFtZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CiAgICAgc3RhdGljIHZvaWQgd2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkWEhSU3luY2hyb25vdXNs
eShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0
ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVk
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgc291cmNlU3RyaW5nKTsKICAgICBzdGF0aWMgdm9pZCBzY3JpcHRFeGVjdXRpb25C
bG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgZGlyZWN0
aXZlVGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHN0YXRp
YyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgdm9pZCBkb21Db250ZW50TG9h
ZGVkRXZlbnRGaXJlZChGcmFtZSYpOwogICAgIHN0YXRpYyB2b2lkIGxvYWRFdmVudEZpcmVkKEZy
YW1lKik7CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnQoRnJhbWUmKTsK
QEAgLTIzMSw3ICsyMzIsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJj
ZXB0UmVxdWVzdChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0
YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3Vy
Y2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAg
ICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7
CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+
JiYpOwogCiAgICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShQYWdlJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKICAgICBzdGF0aWMgdm9pZCBh
ZGRNZXNzYWdlVG9Db25zb2xlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgc3RkOjp1bmlx
dWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKQEAgLTQwMywyMCArNDA0LDIwIEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRPdmVycmlkZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0
ZWRNZWRpYUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogCi0gICAgc3RhdGlj
IHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
Kik7Ci0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJl
c291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKLSAgICBzdGF0aWMgdm9pZCBtYXJrUmVzb3VyY2VB
c0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdl
bnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKKyAgICBzdGF0aWMgdm9p
ZCBtYXJrUmVzb3VyY2VBc0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRG9jdW1lbnRMb2FkZXIqLCBDYWNo
ZWRSZXNvdXJjZSopOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOwot
ICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90
KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0
aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmdJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJl
Y2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxl
TG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXImLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlcios
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGlj
IHZvaWQgZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwog
ICAgIHN0YXRpYyB2b2lkIHdpbGxMb2FkWEhSU3luY2hyb25vdXNseUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWRJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKTsKKyAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZEltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHN0YXRpYyB2b2lkIHNjcmlwdEV4ZWN1dGlvbkJsb2Nr
ZWRCeUNTUEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFN0cmluZyYgZGlyZWN0aXZl
VGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHN0YXRpYyB2b2lkIGRvbUNvbnRlbnRMb2Fk
ZWRFdmVudEZpcmVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUmKTsKICAgICBzdGF0
aWMgdm9pZCBsb2FkRXZlbnRGaXJlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIEZyYW1lKik7
CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnRJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMmLCBGcmFtZSYpOwpAQCAtNDM2LDcgKzQzNyw3IEBAIHByaXZhdGU6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2Vw
dFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmLCBSZXNvdXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNw
b25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiAKICAgICBzdGF0aWMg
dm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKIApAQCAtMTAzMywyMCArMTAz
NCwyMCBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0
ZWRNZWRpYShGcmFtZSYgZnJhbWUsIFN0cmluZyYgbQogICAgICAgICBhcHBseUVtdWxhdGVkTWVk
aWFJbXBsKCphZ2VudHMsIG1lZGlhKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZf
Tk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRp
bmdBZ2VudHMoZnJhbWUpKQogICAgICAgICB3aWxsU2VuZFJlcXVlc3RJbXBsKCphZ2VudHMsIGlk
ZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgY2FjaGVkUmVzb3Vy
Y2UpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5k
UmVxdWVzdChXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQoraW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0
R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIEZBU1RfUkVUVVJOX0lGX05P
X0ZST05URU5EUyh2b2lkKCkpOwogICAgIHdpbGxTZW5kUmVxdWVzdEltcGwoaW5zdHJ1bWVudGlu
Z0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIHJlcXVlc3QsIFJlc291
cmNlUmVzcG9uc2UgeyB9LCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqIGZyYW1lLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSogZnJhbWUsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIEZBU1RfUkVU
VVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0
cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKQEAgLTEwNTksNzYgKzEwNjAsNzYgQEAgaW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2Fj
aGUoUGFnZSYgcGFnZSwKICAgICBkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGVJbXBsKGlu
c3RydW1lbnRpbmdBZ2VudHMocGFnZSksIGxvYWRlciwgcmVzb3VyY2UpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
KEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIq
IHJlc291cmNlTG9hZGVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewog
ICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAg
ICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxv
YWRlciwgcmVzcG9uc2UsIHJlc291cmNlTG9hZGVyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldv
cmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGRpZFJlY2Vp
dmVSZXNvdXJjZVJlc3BvbnNlSW1wbChpbnN0cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwg
aWRlbnRpZmllciwgbnVsbHB0ciwgcmVzcG9uc2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVz
cG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZv
aWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmRvY3VtZW50KCkpKQogICAgICAgICBkaWRSZWNlaXZlVGhyZWFk
YWJsZUxvYWRlclJlc3BvbnNlSW1wbCgqYWdlbnRzLCBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IGlkZW50aWZpZXIpOwogfQogICAgIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRSZWNlaXZlRGF0YShGcmFtZSogZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxl
bmd0aCkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURh
dGEoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
IHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2Vp
dmVEYXRhSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCBkYXRhLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0
YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0
aCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBkaWRS
ZWNlaXZlRGF0YUltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZp
ZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGRhdGFMZW5ndGgpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3Vy
Y2VMb2FkZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlz
aExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBG
QVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdJ
bXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNv
dXJjZUxvYWRlcik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRp
ZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRF
TkRTKHZvaWQoKSk7CiAgICAgZGlkRmluaXNoTG9hZGluZ0ltcGwoaW5zdHJ1bWVudGluZ0FnZW50
cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIG5ldHdvcmtMb2FkTWV0cmljcywg
bnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
RmFpbExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQoraW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhGcmFtZSogZnJhbWUs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZhaWxMb2FkaW5nSW1w
bCgqYWdlbnRzLCBpZGVudGlmaWVyLCBsb2FkZXIsIGVycm9yKTsKIH0KIAotaW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29w
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIGRpZEZhaWxMb2FkaW5nSW1wbChpbnN0cnVtZW50aW5nQWdlbnRz
KGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgZXJyb3IpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlvbnNE
ZW5pZWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgLy8gVHJlYXQgdGhlIHNhbWUgYXMgZGlkUmVjZWl2ZVJlc3BvbnNlLgogICAgIGlm
IChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlk
UmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsICZsb2FkZXIs
IHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYgZnJhbWUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmNvbnRpbnVlV2l0aFBvbGljeURvd25sb2FkKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJl
Y2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50
cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRz
LCBpZGVudGlmaWVyLCAmbG9hZGVyLCByZXNwb25zZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZy
YW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiBmcmFt
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0
IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0g
aW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCkBAIC0xMTQ5LDcgKzExNTAsNyBAQCBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5KFNj
cmlwdEV4ZWN1dGlvbkNvbgogICAgICAgICBkaWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoKmFn
ZW50cyk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0
SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgY29udGV4dCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2
b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGNvbnRl
eHQpKQpAQCAtMTE2Myw3ICsxMTY0LDcgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW8KICAgICAg
ICAgc2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5Q1NQSW1wbCgqYWdlbnRzLCBkaXJlY3RpdmVUZXh0
KTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZl
U2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5f
SUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1l
bnRpbmdBZ2VudHMoY29udGV4dCkpCkBAIC0xMjg0LDcgKzEyODUsNyBAQCBpbmxpbmUgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIm
IGxvYWRlciwgRgogICAgICAgICBpbnRlcmNlcHRSZXF1ZXN0SW1wbCgqYWdlbnRzLCBsb2FkZXIs
IFdURk1vdmUoaGFuZGxlcikpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmIGhhbmRsZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Omlu
dGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBBU1NFUlQoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpzaG91bGRJbnRlcmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCmluZGV4IDczMTYzMjc4Y2NhMzk5OGY0ZjAxMjJkNWNiMDU3N2RhNDZhNTA3NDcuLjYxZTRi
YzNiYTAxOWVlMjVlNWM4YmMyMjFkZmY2MDc3ZWRkYjg2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0
OjppbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VMb2FkZXImIGxvCiAgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXF1ZXN0KGxvYWRlciwgV1RGTW92ZShoYW5k
bGVyKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNl
cHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYm
IGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4pPiYmIGhhbmRsZXIpCiB7CiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRl
cmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxl
cikpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcklu
c3RydW1lbnRhdGlvbldlYktpdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbldlYktpdC5oCmluZGV4IGJmZmM4NzA4MDY0NzY1MzgxMTVlODBmMjBk
ZGNhNGU4MjIyZTYyOWIuLmY3NjExNGNlOThmNDJhN2ZmOTA2YTQ4ZDA0MjBiOTYzMDVkMzY5MTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uV2ViS2l0LmgKQEAgLTQzLDEzICs0MywxMyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdChjb25zdCBGcmFtZSosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGlu
dGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25z
dCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0
cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2Uo
Y29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogCiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIHNo
b3VsZEludGVyY2VwdFJlcXVlc3RJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlSW50ZXJu
YWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVxdWVzdEludGVybmFsKFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9p
ZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4mJik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiB9
OwogCiBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QpCkBAIC03Niw3ICs3Niw3IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hCiAgICAg
aW50ZXJjZXB0UmVxdWVzdEludGVybmFsKGxvYWRlciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAK
LWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVz
cG9uc2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK2lu
bGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9u
c2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5k
bGVyKQogewogICAgIEFTU0VSVChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3Vs
ZEludGVyY2VwdFJlc3BvbnNlKGZyYW1lLCByZXNwb25zZSkpOwogICAgIGludGVyY2VwdFJlc3Bv
bnNlSW50ZXJuYWwoKmZyYW1lLCByZXNwb25zZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5kbGVy
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ck5ldHdvcmtBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3Rvck5ldHdvcmtBZ2VudC5jcHAKaW5kZXggNzk0ODg1MmRkOWE2YmM0MmI0MDExNjk0MWNlMDM0
NmMzMmUxNmYyZC4uMzM3NTdiOWUzY2U3ZTMwNGNiNzFmYjY0ZjMzZTJlZWYwNmFhYjNjYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3Jr
QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9y
TmV0d29ya0FnZW50LmNwcApAQCAtMTA4LDcgKzEwOCw3IEBAIHB1YmxpYzoKIAogICAgIH5JbnNw
ZWN0b3JUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkg
b3ZlcnJpZGUKICAgICB7CiAgICAgICAgIG1fbWltZVR5cGUgPSByZXNwb25zZS5taW1lVHlwZSgp
OwogICAgICAgICBtX3N0YXR1c0NvZGUgPSByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpOwpAQCAt
MTM1LDcgKzEzNSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9yZXNwb25zZVRleHQuYXBwZW5kKG1f
ZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGRhdGFMZW5ndGgpKTsKICAgICB9CiAKLSAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZQogICAgIHsKICAgICAg
ICAgaWYgKG1fZGVjb2RlcikKICAgICAgICAgICAgIG1fcmVzcG9uc2VUZXh0LmFwcGVuZChtX2Rl
Y29kZXItPmZsdXNoKCkpOwpAQCAtNDE2LDcgKzQxNiw3IEBAIGRvdWJsZSBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OnRpbWVzdGFtcCgpCiAgICAgcmV0dXJuIG1fZW52aXJvbm1lbnQuZXhlY3V0aW9u
U3RvcHdhdGNoKCkuZWxhcHNlZFRpbWUoKS5zZWNvbmRzKCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVz
b3VyY2VUeXBlIHR5cGUpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHR5cGUp
CiB7CiAgICAgaWYgKHJlcXVlc3QuaGlkZGVuRnJvbUluc3BlY3RvcigpKSB7CiAgICAgICAgIG1f
aGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLmFkZChpZGVudGlmaWVyKTsKQEAgLTQyNiw3ICs0MjYs
NyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMbwogICAgIGRvdWJsZSBzZW5kVGltZXN0YW1wID0g
dGltZXN0YW1wKCk7CiAgICAgV2FsbFRpbWUgd2FsbHRpbWUgPSBXYWxsVGltZTo6bm93KCk7CiAK
LSAgICBhdXRvIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50
aWZpZXIpOworICAgIGF1dG8gcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0
SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBhdXRvIGZyYW1lSWQgPSBmcmFtZUlkZW50
aWZpZXIobG9hZGVyKTsKICAgICBhdXRvIGxvYWRlcklkID0gbG9hZGVySWRlbnRpZmllcihsb2Fk
ZXIpOwogICAgIFN0cmluZyB0YXJnZXRJZCA9IHJlcXVlc3QuaW5pdGlhdG9ySWRlbnRpZmllcigp
OwpAQCAtNDg2LDI0ICs0ODYsMjQgQEAgc3RhdGljIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3Vy
Y2VUeXBlIHJlc291cmNlVHlwZUZvckxvYWRUeXBlKEluc3BlY3Rvckluc3RydW0KICAgICByZXR1
cm4gSW5zcGVjdG9yUGFnZUFnZW50OjpPdGhlclJlc291cmNlOwogfQogCi12b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSog
Y2FjaGVkUmVzb3VyY2UpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkK
IHsKICAgICBpZiAoIWNhY2hlZFJlc291cmNlICYmIGxvYWRlcikKICAgICAgICAgY2FjaGVkUmVz
b3VyY2UgPSBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNhY2hlZFJlc291cmNlKGxvYWRlci0+ZnJhbWUo
KSwgcmVxdWVzdC51cmwoKSk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRl
ciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgcmVzb3VyY2VUeXBlRm9yQ2FjaGVkUmVzb3Vy
Y2UoY2FjaGVkUmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6Ondp
bGxTZW5kUmVxdWVzdE9mVHlwZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3
aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKIHsKICAgICB3aWxsU2VuZFJl
cXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIHJl
c291cmNlVHlwZUZvckxvYWRUeXBlKGxvYWRUeXBlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0
d29ya0FnZW50OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdl
bnQ6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAobV9oaWRkZW5S
ZXF1ZXN0SWRlbnRpZmllcnMuY29udGFpbnMoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIHN0ZDo6b3B0aW9uYWw8UmVz
b3VyY2VSZXNwb25zZT4gcmVhbFJlc3BvbnNlOwogICAgIGlmIChwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKHJlc3BvbnNl
KSkgewpAQCAtNTc1LDEyICs1NzUsMTIgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW4KICAgICAg
ICAgZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgbnVsbHB0ciwgY2FjaGVkUmVzb3VyY2UtPmVu
Y29kZWRTaXplKCksIDApOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVj
ZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5jb250YWlucyhp
ZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1
ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0
KCkpOwogCiAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgTmV0d29ya1Jlc291cmNlc0RhdGE6OlJl
c291cmNlRGF0YSBjb25zdCogcmVzb3VyY2VEYXRhID0gbV9yZXNvdXJjZXNEYXRhLT5tYXliZUFk
ZFJlc291cmNlRGF0YShyZXF1ZXN0SWQsIGRhdGEsIGRhdGFMZW5ndGgpOwpAQCAtNTk1LDcgKzU5
NSw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlRGF0YSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4CiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXIt
PmRhdGFSZWNlaXZlZChyZXF1ZXN0SWQsIHRpbWVzdGFtcCgpLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hM
b2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9h
ZGVyKikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRp
ZmllcikpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNiw3ICs2MDYsNyBAQCB2b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TAogICAgIGVsc2UKICAgICAgICAgZWxhcHNlZEZpbmlzaFRpbWUgPSB0aW1lc3Rh
bXAoKTsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVl
c3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0
b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBpZiAobG9hZGVyICYm
IG1fcmVzb3VyY2VzRGF0YS0+cmVzb3VyY2VUeXBlKHJlcXVlc3RJZCkgPT0gSW5zcGVjdG9yUGFn
ZUFnZW50OjpEb2N1bWVudFJlc291cmNlKQogICAgICAgICBtX3Jlc291cmNlc0RhdGEtPmFkZFJl
c291cmNlU2hhcmVkQnVmZmVyKHJlcXVlc3RJZCwgbG9hZGVyLT5mcmFtZUxvYWRlcigpLT5kb2N1
bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VEYXRhKCksIGxvYWRlci0+ZnJhbWUoKS0+ZG9jdW1l
bnQoKS0+ZW5jb2RpbmcoKSk7CiAKQEAgLTYyOCwxMiArNjI4LDEyIEBAIHZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPmxvYWRpbmdGaW5pc2hlZChyZXF1
ZXN0SWQsIGVsYXBzZWRGaW5pc2hUaW1lLCBzb3VyY2VNYXBwaW5nVVJMLCBXVEZNb3ZlKG1ldHJp
Y3MpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChtX2hpZGRl
blJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIGlmIChsb2FkZXIgJiYgbV9y
ZXNvdXJjZXNEYXRhLT5yZXNvdXJjZVR5cGUocmVxdWVzdElkKSA9PSBJbnNwZWN0b3JQYWdlQWdl
bnQ6OkRvY3VtZW50UmVzb3VyY2UpIHsKICAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5m
cmFtZSgpOwpAQCAtNjUzLDggKzY1Myw4IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlCiAgICAg
aWYgKCFsb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciA9IGxvYWRlci0+ZnJhbWUoKS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlk
ZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllcik7CisgICAgYXV0byBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlm
aWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIFByb3Rv
Y29sOjpOZXR3b3JrOjpMb2FkZXJJZCBsb2FkZXJJZCA9IGxvYWRlcklkZW50aWZpZXIobG9hZGVy
KTsKICAgICBQcm90b2NvbDo6TmV0d29yazo6RnJhbWVJZCBmcmFtZUlkID0gZnJhbWVJZGVudGlm
aWVyKGxvYWRlcik7CiAKQEAgLTY2OSwyMyArNjY5LDIzIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29y
a0FnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPnJlcXVlc3RTZXJ2ZWRGcm9tTWVtb3J5Q2Fj
aGUocmVxdWVzdElkLCBmcmFtZUlkLCBsb2FkZXJJZCwgbG9hZGVyLT51cmwoKS5zdHJpbmcoKSwg
dGltZXN0YW1wKCksIFdURk1vdmUoaW5pdGlhdG9yT2JqZWN0KSwgYnVpbGRPYmplY3RGb3JDYWNo
ZWRSZXNvdXJjZSgmcmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OnNldEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VTdHJpbmcpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6c2V0SW5p
dGlhbFNjcmlwdENvbnRlbnQoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNv
bnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewotICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVz
b3VyY2VDb250ZW50KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBz
b3VyY2VTdHJpbmcpOworICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VDb250ZW50KElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIHNvdXJj
ZVN0cmluZyk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlU2Ny
aXB0UmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKLSAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFn
ZW50OjpTY3JpcHRSZXNvdXJjZSk7CisgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5
cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwg
SW5zcGVjdG9yUGFnZUFnZW50OjpTY3JpcHRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIpCiB7CiAg
ICAgU3RyaW5nIGluaXRpYXRvciA9IGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5vcHRpb25zKCku
aW5pdGlhdG9yOwogICAgIGlmIChpbml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycygpLmZldGNoKQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlw
ZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFn
ZUFnZW50OjpGZXRjaFJlc291cmNlKTsKKyAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNv
dXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2
NCgpKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpGZXRjaFJlc291cmNlKTsKICAgICBlbHNlIGlmIChp
bml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpLnhtbGh0dHByZXF1
ZXN0KQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVy
c0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpYSFJS
ZXNvdXJjZSk7CisgICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIEluc3BlY3Rv
clBhZ2VBZ2VudDo6WEhSUmVzb3VyY2UpOwogfQogCiB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2Vu
dDo6d2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KCkKQEAgLTExMjksNyArMTEyOSw3IEBAIHZvaWQg
SW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBs
b2FkZXIsIEZ1bmN0aW9uPHZvCiAgICAgQVNTRVJUKG1fZW5hYmxlZCk7CiAgICAgQVNTRVJUKG1f
aW50ZXJjZXB0aW9uRW5hYmxlZCk7CiAKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmll
cnNGYWN0b3J5OjpyZXF1ZXN0SWQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgU3RyaW5nIHJl
cXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGxvYWRlci5pZGVudGlmaWVy
KCkudG9VSW50NjQoKSk7CiAgICAgaWYgKG1fcGVuZGluZ0ludGVyY2VwdFJlcXVlc3RzLmNvbnRh
aW5zKHJlcXVlc3RJZCkpIHsKICAgICAgICAgaGFuZGxlcihsb2FkZXIucmVxdWVzdCgpKTsKICAg
ICAgICAgcmV0dXJuOwpAQCAtMTEzOCwxMiArMTEzOCwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdv
cmtBZ2VudDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBGdW5jdGlv
bjx2bwogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5yZXF1ZXN0SW50ZXJjZXB0ZWQocmVxdWVz
dElkLCBidWlsZE9iamVjdEZvclJlc291cmNlUmVxdWVzdChsb2FkZXIucmVxdWVzdCgpKSk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNl
cHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAg
IEFTU0VSVChtX2VuYWJsZWQpOwogICAgIEFTU0VSVChtX2ludGVyY2VwdGlvbkVuYWJsZWQpOwog
Ci0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlk
ZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJl
cXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIGlmIChtX3BlbmRpbmdJbnRlcmNl
cHRSZXNwb25zZXMuY29udGFpbnMocmVxdWVzdElkKSkgewogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICAgICAgaGFuZGxlcihyZXNwb25zZSwgbnVsbHB0cik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQu
aAppbmRleCA3Y2RjNTg2NWU1OGU5YTlhMzBlYTI1MjAyNjkyZDRiOWFhNzdiMmQ2Li40YzI1YjNi
MmFjZjA5MDJlOGJiOTY3NjRkMGJmOWJhZDM3ODliMThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKQEAgLTk4
LDE3ICs5OCwxNyBAQCBwdWJsaWM6CiAgICAgLy8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uCiAg
ICAgdm9pZCB3aWxsUmVjYWxjdWxhdGVTdHlsZSgpOwogICAgIHZvaWQgZGlkUmVjYWxjdWxhdGVT
dHlsZSgpOwotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQg
d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRU
eXBlKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9h
ZGVyKik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5n
dGgpOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2Fk
ZXIqKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCB3aWxsU2Vu
ZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6TG9hZFR5cGUpOworICAgIHZvaWQgZGlkUmVjZWl2
ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGRpZFJlY2Vp
dmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKICAgICB2b2lkIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShE
b2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlVGhy
ZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJik7CisgICAgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJl
c3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
Jik7CiAgICAgdm9pZCB3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHkoKTsKICAgICB2b2lkIGRpZExv
YWRYSFJTeW5jaHJvbm91c2x5KCk7Ci0gICAgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2Uo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHZvaWQgd2lsbERlc3Ryb3lDYWNo
ZWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZSYpOwogICAgIHZvaWQgZGlkQ3JlYXRlV2ViU29ja2V0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgVVJMJiByZXF1ZXN0VVJMKTsKICAgICB2
b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwpAQCAtMTE4LDEyICsxMTgsMTIgQEAgcHVi
bGljOgogICAgIHZvaWQgZGlkU2VuZFdlYlNvY2tldEZyYW1lKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViU29ja2V0RnJhbWUmKTsKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJTb2Nr
ZXRGcmFtZUVycm9yKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCBtYWluRnJhbWVOYXZpZ2F0ZWQoRG9jdW1lbnRMb2FkZXImKTsKLSAgICB2b2lkIHNl
dEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHZvaWQgc2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CiAgICAg
dm9pZCBkaWRTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbihEb2N1bWVudCYpOwogICAgIGJvb2wg
d2lsbEludGVyY2VwdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBib29sIHNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgYm9vbCBzaG91bGRJ
bnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBpbnRl
cmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmKTsKICAgICB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5j
dGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKIAogICAgIHZvaWQgc2VhcmNo
T3RoZXJSZXF1ZXN0cyhjb25zdCBKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uJiwgUmVmPEpT
T046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90b2NvbDo6UGFnZTo6U2VhcmNoUmVzdWx0Pj4mKTsK
QEAgLTE0MCw3ICsxNDAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBib29sIHNob3VsZEZv
cmNlQnVmZmVyaW5nTmV0d29ya1Jlc291cmNlRGF0YSgpIGNvbnN0ID0gMDsKIAogcHJpdmF0ZToK
LSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFnZUFnZW50OjpSZXNvdXJjZVR5cGUpOworICAgIHZv
aWQgd2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSk7CiAKICAgICBib29sIHNo
b3VsZEludGVyY2VwdChVUkwsIEluc3BlY3Rvcjo6UHJvdG9jb2w6Ok5ldHdvcms6Ok5ldHdvcmtT
dGFnZSk7CiAgICAgdm9pZCBjb250aW51ZVBlbmRpbmdSZXF1ZXN0cygpOwpAQCAtMjI2LDcgKzIy
Niw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSZXNvdXJjZXNEYXRh
PiBtX3Jlc291cmNlc0RhdGE7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBtX2V4dHJh
UmVxdWVzdEhlYWRlcnM7Ci0gICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPiBtX2hpZGRlblJlcXVl
c3RJZGVudGlmaWVyczsKKyAgICBIYXNoU2V0PFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9o
aWRkZW5SZXF1ZXN0SWRlbnRpZmllcnM7CiAKICAgICBzdHJ1Y3QgSW50ZXJjZXB0IHsKICAgICAg
ICAgU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2Vu
dHMvV2ViQ29uc29sZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
V2ViQ29uc29sZUFnZW50LmNwcAppbmRleCA0OGI5YTcxODUzZjQ0OTRmYmY0N2UzODM4YTg2MzY0
NzllNjdkZWIzLi5iZGZmODQzNGRiZWY4YzU0ODViMTUwNmVkMjA4YTAxYzllY2FkMjI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQu
Y3BwCkBAIC02NSwyMiArNjUsMjIgQEAgdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmZyYW1lV2luZG93
RGlzY2FyZGVkKERPTVdpbmRvdyogd2luZG93KQogICAgIHN0YXRpY19jYXN0PFdlYkluamVjdGVk
U2NyaXB0TWFuYWdlciY+KG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKS5kaXNjYXJkSW5qZWN0ZWRT
Y3JpcHRzRm9yKHdpbmRvdyk7CiB9CiAKLXZvaWQgV2ViQ29uc29sZUFnZW50OjpkaWRSZWNlaXZl
UmVzcG9uc2UodW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXND
b2RlKCkgPj0gNDAwKSB7CiAgICAgICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxl
ZCB0byBsb2FkIHJlc291cmNlOiB0aGUgc2VydmVyIHJlc3BvbmRlZCB3aXRoIGEgc3RhdHVzIG9m
ICIsIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCksICIgKCIsIFNjcmlwdEFyZ3VtZW50czo6dHJ1
bmNhdGVTdHJpbmdGb3JDb25zb2xlTWVzc2FnZShyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKSwg
JyknKTsKLSAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNz
YWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0
ciwgcmVxdWVzdElkZW50aWZpZXIpKTsKKyAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtl
VW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlw
ZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJp
bmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAg
IH0KIH0KIAotdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBX
ZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBy
ZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8g
UmVwb3J0IGZhaWx1cmVzIG9ubHkuCiAgICAgaWYgKGVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxlZCB0
byBsb2FkIHJlc291cmNlIiwgZXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24oKS5pc0VtcHR5KCkg
PyAiIiA6ICI6ICIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uKCkpOwotICAgIGFkZE1lc3Nh
Z2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0
d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgZXJy
b3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmll
cikpOworICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4o
TWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpF
cnJvciwgbWVzc2FnZSwgZXJyb3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRy
LCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29u
c29sZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVB
Z2VudC5oCmluZGV4IDBiOGYyMGVhYzM0M2I2NjgxN2FjOWYwZjBjNmM4Y2IyMGM5YmFjN2IuLjkw
YzcwOGU5YjgwMTcxMmI2NTk0MDdhZTBjMWQ2Njg2OGFlYTk0YTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuaApAQCAtMjYsNiArMjYs
NyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCIK
KyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9JbnNwZWN0b3JDb25zb2xlQWdlbnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtNDMsOCArNDQsOCBAQCBwdWJsaWM6CiAKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24KICAgICB2b2lkIGZyYW1lV2luZG93RGlzY2FyZGVkKERPTVdpbmRvdyopOwotICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRD
aGVja2VyLmNwcAppbmRleCAwYWRjYTcwY2ZhMTYyOThhN2E2YzliM2YyODZmYWEzZGIyY2RiZTk1
Li44YjMxZTE3MzkyYTk3YmI5NmQzNDk3YjkyOGVkZGEyZTY3Y2NkNmQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcApA
QCAtNTgsNyArNTgsNyBAQCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6On5Dcm9zc09yaWdp
blByZWZsaWdodENoZWNrZXIoKQogICAgICAgICBtX3Jlc291cmNlLT5yZW1vdmVDbGllbnQoKnRo
aXMpOwogfQogCi12b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6dmFsaWRhdGVQcmVm
bGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGxvYWRlciwgUmVzb3VyY2VS
ZXF1ZXN0JiYgcmVxdWVzdCwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2
YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVy
LCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byog
ZnJhbWUgPSBsb2FkZXIuZG9jdW1lbnQoKS5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpIHsKQEAg
LTE0MSw3ICsxNDEsNyBAQCB2b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6ZG9QcmVm
bGlnaHQoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBsb2FkZXIsCiAgICAgUmVzb3VyY2VSZXNw
b25zZSByZXNwb25zZTsKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogCi0gICAgdW5z
aWduZWQgaWRlbnRpZmllciA9IGxvYWRlci5kb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmxv
YWRSZXNvdXJjZVN5bmNocm9ub3VzbHkocHJlZmxpZ2h0UmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeTo6Q2Fubm90QXNrQ2xpZW50Rm9yQ3JlZGVudGlhbHMsIEZldGNoT3B0aW9ucyB7IH0s
IHsgfSwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBsb2Fk
ZXIuZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5
KHByZWZsaWdodFJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3k6OkNhbm5vdEFza0NsaWVu
dEZvckNyZWRlbnRpYWxzLCBGZXRjaE9wdGlvbnMgeyB9LCB7IH0sIGVycm9yLCByZXNwb25zZSwg
ZGF0YSk7CiAKICAgICBpZiAoIWVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIC8vIElmIHRoZSBw
cmVmbGlnaHQgd2FzIGNhbmNlbGxlZCBieSB1bmRlcmx5aW5nIGNvZGUsIGl0IHByb2JhYmx5IG1l
YW5zIHRoZSByZXF1ZXN0IHdhcyBibG9ja2VkIGR1ZSB0byBzb21lIGFjY2VzcyBjb250cm9sIHBv
bGljeS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdo
dENoZWNrZXIuaAppbmRleCAyYTAzN2NjNGI2MWU4MWZiZTJmMDNjNzM4NmM5YjhjM2RhZTA5NWNh
Li41MzI5ODBkMzU5ZDVkZTdlNzNlYmNhN2JhYjEwMTZmYjJlMDcwYWE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oCkBAIC0z
Miw2ICszMiw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRSYXdSZXNvdXJjZUNsaWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFJlc291cmNlSGFuZGxlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTU3LDcgKzU4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZGlyZWN0UmVj
ZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBm
aW5hbDsKIAogICAgIHN0YXRpYyB2b2lkIGhhbmRsZUxvYWRpbmdGYWlsdXJlKERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLSAg
ICBzdGF0aWMgdm9pZCB2YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlciYsIFJlc291cmNlUmVxdWVzdCYmLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgdmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShE
b2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBSZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAKICAgICBEb2N1bWVudFRo
cmVhZGFibGVMb2FkZXImIG1fbG9hZGVyOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFJhd1Jlc291cmNlPiBtX3Jlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKaW5kZXggMGQyZDE0MTIyMmRlNzZmZGFiYWQ2ZTA0ZGY3MjQ2Njc0ZjcwYTY0ZC4u
ZDNlOWNlYWQ5Y2I3YzgyZTJkOTAyNzA5MWFiZWU0OGQ2NWM0ZTQ5YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC00NjQsOCArNDY0LDggQEAgdm9pZCBEb2N1
bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nKCkKICAgICAgICAgLy8gYmVmb3JlIGNhbGxpbmcg
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nIHNvIHRoYXQgd2UgZG9uJ3QgbGF0ZXIgdHJ5IHRvCiAg
ICAgICAgIC8vIGNhbmNlbCB0aGUgYWxyZWFkeS1maW5pc2hlZCBzdWJzdGl0dXRlIGxvYWQuCiAg
ICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBlbXB0eU1ldHJpY3M7Ci0gICAgICAgIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXI7Ci0gICAgICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSAw
OworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciA9IG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgICAgIG1faWRlbnRpZmllckZv
ckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSB7IH07CiAgICAgICAgIGZyYW1lTG9hZGVyKCkt
Pm5vdGlmaWVyKCkuZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKHRoaXMsIGlkZW50aWZpZXIsIGVt
cHR5TWV0cmljcywgbnVsbHB0cik7CiAgICAgfQogCkBAIC04ODYsNyArODg2LDcgQEAgYm9vbCBE
b2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgRE9DVU1FTlRMT0FERVJfUkVMRUFTRV9MT0coInN0YXJ0TG9hZGluZ01h
aW5SZXNvdXJjZTogUmV0dXJuaW5nIHN1YnN0aXR1dGUgZGF0YSIpOwotICAgIG1faWRlbnRpZmll
ckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBtX2ZyYW1lLT5wYWdlKCktPnByb2dyZXNz
KCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRo
b3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7
CiAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyLCB0aGlzLCBt
X3JlcXVlc3QpOwogICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bV9yZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIG51bGxwdHIpOwogCkBAIC05MzksNyArOTM5
LDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1JlZGlyZWN0UmVxdWVzdEZyb21B
cHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291cmMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9p
ZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdB
ZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgUmVmPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0ZWRUaGlzIHsgKnRoaXMgfTsK
ICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKCptX2ZyYW1lLCBpZGVudGlmaWVyLCAqdGhpcywgcmVzcG9uc2UpOwpAQCAtMTAzNyw3
ICsxMDM3LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgQ29tcGxldGkKICAgICB9CiAKICAgICBBU1NFUlQo
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciB8fCBtX21haW5SZXNvdXJj
ZSk7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdp
dGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VM
b2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJj
ZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21h
aW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAogICAg
IGlmIChtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCAhcGxhdGZvcm1TdHJhdGVnaWVzKCkt
PmxvYWRlclN0cmF0ZWd5KCktPmhhdmVQZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhyZXNwb25zZSkp
IHsKQEAgLTEwNTQsNyArMTA1NCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlUmVj
ZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbXBsZXRpCiAgICAgICAg
ICAgICBpZiAoIWZyYW1lT3B0aW9ucy5pc051bGwoKSkgewogICAgICAgICAgICAgICAgIGlmIChm
cmFtZUxvYWRlcigpLT5zaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhmcmFtZU9w
dGlvbnMsIHVybCwgaWRlbnRpZmllcikpIHsKICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIG1l
c3NhZ2UgPSAiUmVmdXNlZCB0byBkaXNwbGF5ICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6
ZWRUb0xlbmd0aCgpICsgIicgaW4gYSBmcmFtZSBiZWNhdXNlIGl0IHNldCAnWC1GcmFtZS1PcHRp
b25zJyB0byAnIiArIGZyYW1lT3B0aW9ucyArICInLiI7Ci0gICAgICAgICAgICAgICAgICAgIG1f
ZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3Vy
aXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCBpZGVudGlmaWVyKTsKKyAgICAgICAg
ICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2Fn
ZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGlkZW50aWZp
ZXIudG9VSW50NjQoKSk7CiAgICAgICAgICAgICAgICAgICAgIHN0b3BMb2FkaW5nQWZ0ZXJYRnJh
bWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQoaWRlbnRpZmllciwgcmVzcG9u
c2UpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQpAQCAt
MTE4MCwxMCArMTE4MCwxMCBAQCBib29sIERvY3VtZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1
ZXN0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKGF1dG8qIGN1cnJl
bnREb2N1bWVudCA9IGZyYW1lKCktPmRvY3VtZW50KCkpIHsKLSAgICAgICAgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/
IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJj
ZS0+aWRlbnRpZmllcigpOworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPyBtX2lkZW50
aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDogbV9tYWluUmVzb3VyY2UtPmlkZW50
aWZpZXIoKTsKICAgICAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCi0gICAgICAgIGN1cnJlbnRE
b2N1bWVudC0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3Nh
Z2VMZXZlbDo6RXJyb3IsIG1ha2VTdHJpbmcoIk5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRvcCBm
cmFtZSB0byBkYXRhIFVSTCAnIiwgbV9yZXNwb25zZS51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSwgIicuIiksIGlkZW50aWZpZXIpOworICAgICAgICBjdXJyZW50RG9jdW1l
bnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtYWtlU3RyaW5nKCJOb3QgYWxsb3dlZCB0byBuYXZpZ2F0ZSB0b3AgZnJhbWUg
dG8gZGF0YSBVUkwgJyIsIG1fcmVzcG9uc2UudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRv
TGVuZ3RoKCksICInLiIpLCBpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIH0KICAgICBET0NV
TUVOVExPQURFUl9SRUxFQVNFX0xPRygiY29udGludWVBZnRlckNvbnRlbnRQb2xpY3k6IGNhbm5v
dCBzaG93IFVSTCIpOwogCkBAIC0yMDE2LDcgKzIwMTYsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjpzdG9wTG9hZGluZ1N1YnJlc291cmNlcygpCiAgICAgQVNTRVJUKG1fc3VicmVzb3VyY2VMb2Fk
ZXJzLmlzRW1wdHkoKSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNl
TG9hZGVyKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRT
dWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewogICAgIC8vIFRoZSBt
YWluIHJlc291cmNlJ3MgdW5kZXJseWluZyBSZXNvdXJjZUxvYWRlciB3aWxsIGFzayB0byBiZSBh
ZGRlZCBoZXJlLgogICAgIC8vIEl0IGlzIG11Y2ggc2ltcGxlciB0byBoYW5kbGUgc3BlY2lhbCBj
YXNpbmcgb2YgbWFpbiByZXNvdXJjZSBsb2FkcyBpZiB3ZSBkb24ndApAQCAtMjAyNSwxMiArMjAy
NSwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJj
ZUxvYWRlciogbG9hZGVyKQogICAgIC8vIGlmIHdlIGFyZSBqdXN0IHN0YXJ0aW5nIHRoZSBtYWlu
IHJlc291cmNlIGxvYWQuCiAgICAgaWYgKCFtX2dvdEZpcnN0Qnl0ZSkKICAgICAgICAgcmV0dXJu
OwotICAgIEFTU0VSVChsb2FkZXItPmlkZW50aWZpZXIoKSk7Ci0gICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXItPmlkZW50aWZpZXIoKSkpOwotICAgIEFTU0VS
VCghbWFpblJlc291cmNlTG9hZGVyKCkgfHwgbWFpblJlc291cmNlTG9hZGVyKCkgIT0gbG9hZGVy
KTsKKyAgICBBU1NFUlQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXIuaWRlbnRpZmllcigpKSk7CisgICAgQVNTRVJU
KCFtYWluUmVzb3VyY2VMb2FkZXIoKSB8fCBtYWluUmVzb3VyY2VMb2FkZXIoKSAhPSAmbG9hZGVy
KTsKIAogICAgIC8vIEFwcGxpY2F0aW9uIENhY2hlIGxvYWRlcnMgYXJlIGhhbmRsZWQgYnkgdGhl
aXIgQXBwbGljYXRpb25DYWNoZUdyb3VwIGRpcmVjdGx5LgotICAgIGlmIChsb2FkZXItPm9wdGlv
bnMoKS5hcHBsaWNhdGlvbkNhY2hlTW9kZSA9PSBBcHBsaWNhdGlvbkNhY2hlTW9kZTo6QnlwYXNz
KQorICAgIGlmIChsb2FkZXIub3B0aW9ucygpLmFwcGxpY2F0aW9uQ2FjaGVNb2RlID09IEFwcGxp
Y2F0aW9uQ2FjaGVNb2RlOjpCeXBhc3MpCiAgICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9F
TkFCTEVECkBAIC0yMDQwLDcgKzIwNDAsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJy
ZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIGNhc2UgRG9jdW1lbnQ6OkFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6IHsK
ICAgICAgICAgICAgIC8vIEEgcGFnZSBhYm91dCB0byBlbnRlciB0aGUgQmFja0ZvcndhcmRDYWNo
ZSBzaG91bGQgb25seSBiZSBhYmxlIHRvIHN0YXJ0IHBpbmcgbG9hZHMuCi0gICAgICAgICAgICBh
dXRvKiBjYWNoZWRSZXNvdXJjZSA9IGRvd25jYXN0PFN1YnJlc291cmNlTG9hZGVyPihsb2FkZXIp
LT5jYWNoZWRSZXNvdXJjZSgpOworICAgICAgICAgICAgYXV0byogY2FjaGVkUmVzb3VyY2UgPSBk
b3duY2FzdDxTdWJyZXNvdXJjZUxvYWRlcj4obG9hZGVyKS5jYWNoZWRSZXNvdXJjZSgpOwogICAg
ICAgICAgICAgQVNTRVJUKGNhY2hlZFJlc291cmNlICYmIChDYWNoZWRSZXNvdXJjZTo6c2hvdWxk
VXNlUGluZ0xvYWQoY2FjaGVkUmVzb3VyY2UtPnR5cGUoKSkgfHwgY2FjaGVkUmVzb3VyY2UtPm9w
dGlvbnMoKS5rZWVwQWxpdmUpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0y
MDUyLDcgKzIwNTIsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRl
cihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9zdWJyZXNv
dXJjZUxvYWRlcnMuYWRkKGxvYWRlci0+aWRlbnRpZmllcigpLCBsb2FkZXIpOworICAgIG1fc3Vi
cmVzb3VyY2VMb2FkZXJzLmFkZChsb2FkZXIuaWRlbnRpZmllcigpLCAmbG9hZGVyKTsKIH0KIAog
dm9pZCBEb2N1bWVudExvYWRlcjo6cmVtb3ZlU3VicmVzb3VyY2VMb2FkZXIoTG9hZENvbXBsZXRp
b25UeXBlIHR5cGUsIFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCkBAIC0yMjc4LDcgKzIyNzgsNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpsb2FkTWFpblJlc291cmNlKFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QpCiAjZW5kaWYKIAogICAgIGlmICghbWFpblJlc291cmNlTG9hZGVyKCkpIHsKLSAg
ICAgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IG1fZnJhbWUt
PnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCku
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QobV9pZGVudGlmaWVyRm9yTG9hZFdpdGhv
dXRSZXNvdXJjZUxvYWRlciwgdGhpcywgbWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKSk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSwgUmVzb3VyY2VSZXNwb25zZSgp
LCBudWxscHRyKTsKICAgICB9CkBAIC0yMzQ0LDEzICsyMzQ0LDEzIEBAIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OmNsZWFyTWFpblJlc291cmNlKCkKICAgICB1bnJlZ2lzdGVyVGVtcG9yYXJ5U2Vydmlj
ZVdvcmtlckNsaWVudCgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZUxv
YWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKK3ZvaWQg
RG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChS
ZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9
IGxvYWRlci0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyID0gbG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAK
LSAgICBpZiAoIW1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmFkZChpZGVudGlmaWVyLCBs
b2FkZXIpLmlzTmV3RW50cnkpIHsKLSAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3Vy
Y2VMb2FkZXJzLmdldChpZGVudGlmaWVyKSA9PSBsb2FkZXIpOworICAgIGlmICghbV9tdWx0aXBh
cnRTdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGlkZW50aWZpZXIsICZsb2FkZXIpLmlzTmV3RW50cnkp
IHsKKyAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmdldChpZGVu
dGlmaWVyKSA9PSAmbG9hZGVyKTsKICAgICAgICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVy
cy5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgQVNTRVJUKG1f
c3VicmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXggYTczMTM5MjZhY2RhNTkyMThiMDIxNTExMGI5NzNh
NTNmYTRiYjJmOS4uOGVlMTRhMjRkNTdiMzRjYzdjYmVhNGNkYzc3MzEwMjcyNmQyZTVkNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNp
bmNsdWRlICJMaW5rSWNvbi5oIgogI2luY2x1ZGUgIk5hdmlnYXRpb25BY3Rpb24uaCIKICNpbmNs
dWRlICJSZXNvdXJjZUVycm9yLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtODksNyArOTAs
NyBAQCBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKIGVudW0gY2xhc3MgU2hvdWxkQ29udGlu
dWU7CiAKLXVzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBS
ZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1h
cDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBl
bnVtIGNsYXNzIEF1dG9wbGF5UG9saWN5IDogdWludDhfdCB7CiAgICAgRGVmYXVsdCwgLy8gVXNl
cyBwb2xpY2llcyBzcGVjaWZpZWQgaW4gZG9jdW1lbnQgc2V0dGluZ3MuCkBAIC0yOTUsNyArMjk2
LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdG9wTG9hZGluZ1BsdWdJbnMoKTsKICAgICB2b2lk
IHN0b3BMb2FkaW5nU3VicmVzb3VyY2VzKCk7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9w
TG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKTsKIAogICAgIGJvb2wgdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZDsgfQogICAgIHZv
aWQgc2V0VXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV91c2Vy
Q29udGVudEV4dGVuc2lvbnNFbmFibGVkID0gZW5hYmxlZDsgfQpAQCAtMzM4LDEyICszMzksMTIg
QEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIE1vdXNlRXZlbnRQb2xpY3kgbW91c2VFdmVu
dFBvbGljeSgpIGNvbnN0OwogICAgIHZvaWQgc2V0TW91c2VFdmVudFBvbGljeShNb3VzZUV2ZW50
UG9saWN5IHBvbGljeSkgeyBtX21vdXNlRXZlbnRQb2xpY3kgPSBwb2xpY3k7IH0KIAotICAgIHZv
aWQgYWRkU3VicmVzb3VyY2VMb2FkZXIoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGFkZFN1
YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyJik7CiAgICAgdm9pZCByZW1vdmVTdWJyZXNv
dXJjZUxvYWRlcihMb2FkQ29tcGxldGlvblR5cGUsIFJlc291cmNlTG9hZGVyKik7CiAgICAgdm9p
ZCBhZGRQbHVnSW5TdHJlYW1Mb2FkZXIoUmVzb3VyY2VMb2FkZXImKTsKICAgICB2b2lkIHJlbW92
ZVBsdWdJblN0cmVhbUxvYWRlcihSZXNvdXJjZUxvYWRlciYpOwogCi0gICAgdm9pZCBzdWJyZXNv
dXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2
b2lkIHN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRl
ciYpOwogCiAgICAgdm9pZCBzZXREZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIp
IHsgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkID0gZGVmZXI7IH0KICAgICAKQEAgLTYxMCw3
ICs2MTEsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFs
c2UgfTsKICAgICBEb2N1bWVudExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgdW5zaWdu
ZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9Owor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJl
c291cmNlTG9hZGVyOwogCiAgICAgRGF0YUxvYWRUb2tlbiBtX2RhdGFMb2FkVG9rZW47CiAgICAg
Ym9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9saWN5IHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggNWE5YTU3
ZTkzOTA1MjhmZDM1OTliMDdkYjYwYWMxNWIwMDY2Yzk3MC4uMDhhNDM5YzkwZWE1NjJkZTZlOTg4
NWMwNzgxMzRmM2RhYTQ4YTBhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTM5OSw3ICszOTksNyBAQCB2b2lkIERvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiB9CiAKLXZvaWQgRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIEFTU0VSVChtX2NsaWVudCk7CiAgICAgQVNTRVJUKHJlc3BvbnNlLnR5cGUoKSAhPSBSZXNv
dXJjZVJlc3BvbnNlOjpUeXBlOjpFcnJvcik7CkBAIC00MzMsNyArNDMzLDcgQEAgdm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmRhdGFSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IHVpbnQKICAgICBkaWRSZWNlaXZlRGF0YShtX3Jlc291cmNlLT5pZGVudGlmaWVy
KCksIGRhdGEsIGRhdGFMZW5ndGgpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
cjo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZywgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURh
dGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0
YUxlbmd0aCkKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC00NjksNyArNDY5LDcgQEAg
dm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291
cmNlJiByZXNvdXJjZSwgY29uc3QgTmUKICAgICAgICAgZGlkRmluaXNoTG9hZGluZyhtX3Jlc291
cmNlLT5pZGVudGlmaWVyKCkpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC01MDMsNyArNTAz
LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgIG1fY2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlk
ZW50aWZpZXIpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCh1
bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCkBAIC01MzUsNyArNTM1LDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OnByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkK
ICAgICBsb2FkUmVxdWVzdChXVEZNb3ZlKGFjdHVhbFJlcXVlc3QpLCBTZWN1cml0eUNoZWNrUG9s
aWN5OjpTa2lwU2VjdXJpdHlDaGVjayk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpwcmVmbGlnaHRGYWlsdXJlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cHJlZmxp
Z2h0RmFpbHVyZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgbV9wcmVmbGlnaHRDaGVja2VyID0gc3RkOjpudWxs
b3B0OwogCkBAIC01OTgsNyArNTk4LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6
OmxvYWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFNlY3VyaXR5Q2gKICAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogICAgIFJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIg
PSBzdGQ6Om51bWVyaWNfbGltaXRzPHVuc2lnbmVkIGxvbmc+OjptYXgoKTsKKyAgICBhdXRvIGlk
ZW50aWZpZXIgPSBtYWtlT2JqZWN0SWRlbnRpZmllcjxSZXNvdXJjZUxvYWRlcj4oc3RkOjpudW1l
cmljX2xpbWl0czx1aW50NjRfdD46Om1heCgpKTsKICAgICBpZiAoYXV0byogZnJhbWUgPSBtX2Rv
Y3VtZW50LmZyYW1lKCkpIHsKICAgICAgICAgaWYgKCFNaXhlZENvbnRlbnRDaGVja2VyOjpjYW5S
dW5JbnNlY3VyZUNvbnRlbnQoKmZyYW1lLCBtX2RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJl
cXVlc3RVUkwpKQogICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IGYxYmYwZWY4NDZiZWZiNWIwNTM1
ZTgwNGQ1MDM0MDAzMjg3MTE4MDAuLjgzZmE5MDkxZjE0N2UzOGQ3NGNhYTZkODFjNTBhYzk1N2Ey
MzQyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkNyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9u
c2UuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVM
b2FkZXIuaCIKQEAgLTkxLDE1ICs5MiwxNSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgZmluaXNoZWRUaW1pbmdGb3JXb3JrZXJMb2FkKGNvbnN0IFJlc291cmNlVGltaW5nJik7
CiAgICAgICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBOZXR3
b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKIAotICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsK
LSAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKLSAgICAgICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7Ci0gICAgICAgIHZvaWQgZGlkRmFp
bCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICAg
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7
CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
OworICAgICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZVNpbXBsZUNyb3NzT3JpZ2lu
QWNjZXNzUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3Nz
T3JpZ2luQWNjZXNzUmVxdWVzdFdpdGhQcmVmbGlnaHQoUmVzb3VyY2VSZXF1ZXN0JiYpOwogICAg
ICAgICB2b2lkIHByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgICAgICB2
b2lkIHByZWZsaWdodEZhaWx1cmUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZUVycm9yJik7CisgICAgICAgIHZvaWQgcHJlZmxpZ2h0RmFpbHVyZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKIAogICAgICAgICB2b2lkIGxvYWRS
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmLCBTZWN1cml0eUNoZWNrUG9saWN5KTsKICAgICAgICAg
Ym9vbCBpc0FsbG93ZWRSZWRpcmVjdChjb25zdCBVUkwmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5jcHAKaW5kZXggZGJjZTE3NzE3NjZiMWZjMTk4Mjk4NTMxMzU5NDlhZjUxOWIy
YmJiZi4uOWJlZGVjNjM2YjJiNGZlNjE4NGE0MTlhOWFiNjUzMzQ1YzE1YmQ3MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKQEAgLTY3MywyNiArNjczLDI2IEBAIHZvaWQg
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KERvY3VtZW50TG9hZGVyKiwKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojph
c3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKQogewogfQogCi1i
b29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK2Jvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikK
K3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKIHsKIH0KIAogI2lmIFVTRShQUk9URUNU
SU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCiAKLWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpCitib29sIEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYp
CiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtNzAxLDIyICs3MDEsMjIgQEAgYm9vbCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KERvY3VtZW50TG9hZGUKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKLVJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0
aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK1JldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiBudWxs
cHRyOwogfQogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcsIGludCkKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgaW50KQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKIH0KIApAQCAtNzI4
LDcgKzcyOCw3IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5p
c2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikKIHsKIH0KIApAQCAtMTA2Nyw3ICsx
MDY3LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6YWNjZXNz
aWJpbGl0eVJlbW90ZU9iamVjdCgpCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRW1w
dHlGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICpyZXNwb25zZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBj
b25zdAordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1
bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSAqcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAgICBjb21wbGV0aW9uSGFuZGxlcihy
ZXNwb25zZSk7CiB9CkBAIC0xMDc2LDcgKzEwNzYsNyBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
TgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKIAotYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBs
b25nIGxvbmcpCitib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKQog
ewogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZy
YW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggMDE3ZTM3ZTE1NGNlMmZmYTY0YzE4MmYxZTViZWJlMzdj
MDRhY2U2MC4uMDI5NGRjNDM0MjA0YjZmOWJmZjI5MjYxYTA3NzliNjhhMDRmZWJkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oCkBAIC01Mywy
NSArNTMsMjUgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRU
b0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9J
bml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwotICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwor
ICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
IGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9v
bCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAgYm9vbCBj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcpIGZpbmFsOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9w
ZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsK
ICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjaWYg
RU5BQkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0
ZWN0aW9uKE5TQXJyYXkgKikgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmlu
YWw7CiAgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBpbnQpIGZpbmFsOwogCiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgZmluYWw7CkBAIC0xODIsMTEgKzE4MiwxMSBAQCBwcml2YXRlOgogCiAjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVj
dCgpIGZpbmFsOwotICAgIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICosIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxs
Q2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSAqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJM
UmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBVU0UoQ0ZVUkxDT05O
RUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbDsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBm
aW5hbDsKICNlbmRpZgogCiAgICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cAppbmRleCAyYTZlMTY2ZWIyMjdlNTY0Yjg4MWVkMzE4OWI4YzExMjUxMTRkMWE3Li4zMzI2M2M4
MTUwM2ZiNTM0OWM5ZWJhNDNmN2RmMjEyNzdkNjYyMGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKQEAgLTE2ODksNyArMTY4OSw3IEBAIGJvb2wgRnJhbWVMb2FkZXI6Ondp
bGxMb2FkTWVkaWFFbGVtZW50VVJMKFVSTCYgdXJsLCBOb2RlJiBpbml0aWF0b3JOb2RlKQogICAg
IFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHVybCk7CiAgICAgcmVxdWVzdC5zZXRJbnNwZWN0b3JJ
bml0aWF0b3JOb2RlSWRlbnRpZmllcihJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmlkZW50aWZp
ZXJGb3JOb2RlKGluaXRpYXRvck5vZGUpKTsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICBSZXNvdXJj
ZUVycm9yIGVycm9yOwogICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRlbnRpZmll
ciwgZXJyb3IpOwogICAgIG5vdGlmaWVyKCkuc2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMo
bV9kb2N1bWVudExvYWRlci5nZXQoKSwgaWRlbnRpZmllciwgcmVxdWVzdCwgUmVzb3VyY2VSZXNw
b25zZSh1cmwsIFN0cmluZygpLCAtMSwgU3RyaW5nKCkpLCAwLCAtMSwgLTEsIGVycm9yKTsKQEAg
LTIwNjgsNyArMjA2OCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFsTG9h
ZCgpCiAgICAgICAgIC8vIFN0YXJ0IHJlcXVlc3QgZm9yIHRoZSBtYWluIHJlc291cmNlIGFuZCBk
aXNwYXRjaCBkaWRSZWNlaXZlUmVzcG9uc2UgYmVmb3JlIHRoZSBsb2FkIGlzIGNvbW1pdHRlZCBm
b3IKICAgICAgICAgLy8gY29uc2lzdGVuY3kgd2l0aCBhbGwgb3RoZXIgbG9hZHMuIFNlZSBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwOTI3LgogICAgICAgICBSZXNv
dXJjZUVycm9yIG1haW5SZXNvdWNlRXJyb3I7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgbWFpblJl
c291cmNlSWRlbnRpZmllcjsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1haW5S
ZXNvdXJjZUlkZW50aWZpZXI7CiAgICAgICAgIFJlc291cmNlUmVxdWVzdCBtYWluUmVzb3VyY2VS
ZXF1ZXN0KGNhY2hlZFBhZ2UtPmRvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKSk7CiAgICAgICAg
IHJlcXVlc3RGcm9tRGVsZWdhdGUobWFpblJlc291cmNlUmVxdWVzdCwgbWFpblJlc291cmNlSWRl
bnRpZmllciwgbWFpblJlc291Y2VFcnJvcik7CiAgICAgICAgIG5vdGlmaWVyKCkuZGlzcGF0Y2hE
aWRSZWNlaXZlUmVzcG9uc2UoY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKSwgbWFpblJlc291
cmNlSWRlbnRpZmllciwgY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKSk7
CkBAIC0yMTMzLDcgKzIxMzMsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb21taXRQcm92aXNpb25h
bExvYWQoKQogICAgICAgICAgICAgY29uc3QgYXV0byYgcmVzcG9uc2UgPSBtX2RvY3VtZW50TG9h
ZGVyLT5yZXNwb25zZXMoKVtpXTsKICAgICAgICAgICAgIC8vIEZJWE1FOiBJZiB0aGUgV2ViS2l0
IGNsaWVudCBjaGFuZ2VzIG9yIGNhbmNlbHMgdGhlIHJlcXVlc3QsIHRoaXMgaXMgbm90IHJlc3Bl
Y3RlZC4KICAgICAgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3I7Ci0gICAgICAgICAgICB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXI7CisgICAgICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcjsKICAgICAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHJlc3Bv
bnNlLnVybCgpKTsKICAgICAgICAgICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRl
bnRpZmllciwgZXJyb3IpOwogICAgICAgICAgICAgLy8gRklYTUU6IElmIHdlIGdldCBhIHJlc291
cmNlIHdpdGggbW9yZSB0aGFuIDJCIGJ5dGVzLCB0aGlzIGNvZGUgd29uJ3QgZG8gdGhlIHJpZ2h0
IHRoaW5nLgpAQCAtMzEwNiw3ICszMTA2LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RS
ZXF1ZXN0KEZyYW1lTG9hZFJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBTdHJpbmcmIHJlZmUKICAg
ICB9KTsKIH0KIAotdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQ
b2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVy
cm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+JiBkYXRhKQorUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIEZyYW1lTG9hZGVyOjpsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50
Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlv
bnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMs
IFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4mIGRhdGEpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUuZG9jdW1lbnQoKSk7
CiAgICAgU3RyaW5nIHJlZmVycmVyID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJI
ZWFkZXIobV9mcmFtZS5kb2N1bWVudCgpLT5yZWZlcnJlclBvbGljeSgpLCByZXF1ZXN0LnVybCgp
LCBvdXRnb2luZ1JlZmVycmVyKCkpOwpAQCAtMzEyNCw3ICszMTI0LDcgQEAgdW5zaWduZWQgbG9u
ZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXUKIAogICAgIGFwcGx5VXNlckFnZW50SWZOZWVkZWQoaW5pdGlhbFJlcXVlc3Qp
OwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gMDsgICAgCisgICAgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7ICAgIAogICAgIFJlc291cmNlUmVxdWVzdCBuZXdS
ZXF1ZXN0KGluaXRpYWxSZXF1ZXN0KTsKICAgICByZXF1ZXN0RnJvbURlbGVnYXRlKG5ld1JlcXVl
c3QsIGlkZW50aWZpZXIsIGVycm9yKTsKIApAQCAtMzU4NywxMyArMzU4NywxMyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRlck5ld1dpbmRvd1BvbGljeShjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlcwogICAgIG1haW5GcmFtZS0+bG9hZGVyKCkubG9hZFdpdGhOYXZpZ2F0
aW9uQWN0aW9uKHJlcXVlc3QsIFdURk1vdmUobmV3QWN0aW9uKSwgRnJhbWVMb2FkVHlwZTo6U3Rh
bmRhcmQsIGZvcm1TdGF0ZSwgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMKTsKIH0KIAotdm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIHVuc2lnbmVkIGxvbmcmIGlkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYg
ZXJyb3IpCiB7CiAgICAgQVNTRVJUKCFyZXF1ZXN0LmlzTnVsbCgpKTsKIAotICAgIGlkZW50aWZp
ZXIgPSAwOworICAgIGlkZW50aWZpZXIgPSB7IH07CiAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBtX2Zy
YW1lLnBhZ2UoKSkgewotICAgICAgICBpZGVudGlmaWVyID0gcGFnZS0+cHJvZ3Jlc3MoKS5jcmVh
dGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIG5vdGlmaWVyKCkuYXNzaWduSWRlbnRp
ZmllclRvSW5pdGlhbFJlcXVlc3QoaWRlbnRpZmllciwgbV9kb2N1bWVudExvYWRlci5nZXQoKSwg
cmVxdWVzdCk7CiAgICAgfQogCkBAIC0zNjM0LDcgKzM2MzQsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
Ojpsb2FkZWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2Us
IFJlc291cgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIHJl
cXVlc3RGcm9tRGVsZWdhdGUobmV3UmVxdWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogCiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSA9IHJlc291cmNlLnJlc3BvbnNlKCk7CkBAIC0zNjUx
LDcgKzM2NTEsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjphcHBseVVzZXJBZ2VudElmTmVlZGVkKFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKICAgICB9CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXI6OnNo
b3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYgY29udGVudCwg
Y29uc3QgVVJMJiB1cmwsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCitib29sIEZy
YW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJp
bmcmIGNvbnRlbnQsIGNvbnN0IFVSTCYgdXJsLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVx
dWVzdElkZW50aWZpZXIpCiB7CiAgICAgRnJhbWUmIHRvcEZyYW1lID0gbV9mcmFtZS50cmVlKCku
dG9wKCk7CiAgICAgaWYgKCZtX2ZyYW1lID09ICZ0b3BGcmFtZSkKQEAgLTM2NzUsMTAgKzM2NzUs
MTAgQEAgYm9vbCBGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlv
bnMoY29uc3QgU3RyaW5nJiBjb250ZW50LCBjb24KICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNw
b3NpdGlvbjo6QWxsb3dBbGw6CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBjYXNlIFhGcmFt
ZU9wdGlvbnNEaXNwb3NpdGlvbjo6Q29uZmxpY3Q6Ci0gICAgICAgIG1fZnJhbWUuZG9jdW1lbnQo
KS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJy
b3IsICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3Rpbmcg
dmFsdWVzICgnIiArIGNvbnRlbnQgKyAiJykgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsg
dXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicuIEZhbGxpbmcgYmFjayB0
byAnREVOWScuIiwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50
KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVy
cm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5n
IHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiAr
IHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJhY2sg
dG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDoKLSAg
ICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVh
ZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICInOiAnIiArIGNvbnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVk
IGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZp
ZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiSW52YWxpZCAnWC1GcmFtZS1PcHRp
b25zJyBoZWFkZXIgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRl
ckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIic6ICciICsgY29udGVudCArICInIGlzIG5vdCBhIHJl
Y29nbml6ZWQgZGlyZWN0aXZlLiBUaGUgaGVhZGVyIHdpbGwgYmUgaWdub3JlZC4iLCByZXF1ZXN0
SWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGNhc2Ug
WEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb25lOgogICAgICAgICByZXR1cm4gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGY3NTI0MTBhODlmNTkyNzAxYzg0MWE0
MmQ0YWJlNDRhZDc4OTIzMTEuLmU3NDc1YTQyNDdlOTllNmM0Yjg3ODFhOTQzMjE3NWJlZmIyZjRi
NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0xMjcsNyArMTI3LDcgQEAg
cHVibGljOgogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgbG9hZEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOwogI2VuZGlmCi0g
ICAgdW5zaWduZWQgbG9uZyBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNv
bnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJl
ZlB0cjxTaGFyZWRCdWZmZXI+JiBkYXRhKTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRD
cmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFw
JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVy
PiYgZGF0YSk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNoYW5nZUxvY2F0aW9uKGNvbnN0
IFVSTCYsIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBFdmVudCosIGNvbnN0IFJlZmVycmVyUG9saWN5
JiwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3RkOjpvcHRpb25hbDxOZXdGcmFtZU9w
ZW5lclBvbGljeT4gPSBzdGQ6Om51bGxvcHQsIGNvbnN0IEF0b21TdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlID0gbnVsbEF0b20oKSwgY29uc3QgU3lzdGVtUHJldmlld0luZm8mID0geyB9LCBzdGQ6
Om9wdGlvbmFsPFByaXZhdGVDbGlja01lYXN1cmVtZW50PiYmID0gc3RkOjpudWxsb3B0KTsKICAg
ICB2b2lkIGNoYW5nZUxvY2F0aW9uKEZyYW1lTG9hZFJlcXVlc3QmJiwgRXZlbnQqID0gbnVsbHB0
ciwgc3RkOjpvcHRpb25hbDxQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJiA9IHN0ZDo6bnVsbG9w
dCk7CkBAIC0yNzUsNyArMjc1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseVVzZXJBZ2Vu
dElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYpOwogCi0gICAgYm9vbCBzaG91bGRJbnRlcnJ1cHRM
b2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmLCBjb25zdCBVUkwmLCB1bnNpZ25lZCBs
b25nIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICBib29sIHNob3VsZEludGVycnVwdExvYWRGb3JY
RnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYsIGNvbnN0IFVSTCYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllcik7CiAKICAgICB2b2lkIGNvbXBsZXRlZCgpOwogICAgIGJvb2wgYWxsQW5jZXN0b3Jz
QXJlQ29tcGxldGUoKSBjb25zdDsgLy8gaW5jbHVkaW5nIHRoaXMKQEAgLTM4Niw3ICszODYsNyBA
QCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91bGRSZWxvYWQoY29uc3QgVVJMJiBjdXJyZW50VVJM
LCBjb25zdCBVUkwmIGRlc3RpbmF0aW9uVVJMKTsKIAotICAgIHZvaWQgcmVxdWVzdEZyb21EZWxl
Z2F0ZShSZXNvdXJjZVJlcXVlc3QmLCB1bnNpZ25lZCBsb25nJiBpZGVudGlmaWVyLCBSZXNvdXJj
ZUVycm9yJik7CisgICAgdm9pZCByZXF1ZXN0RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciYsIFJlc291cmNlRXJyb3ImKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgZGV0YWNoQ2hpbGRyZW4oKTsKICAgICB2b2lkIGNsb3NlQW5kUmVtb3Zl
Q2hpbGQoRnJhbWUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgK
aW5kZXggMDRhMTJmN2E5MzAxNWNjZjRlZTA3M2FlZTA0MDgyY2E4MTI2MDdkMC4uNGE3MDZjODdm
NThjOGIwODI0ZThjZWIzNjNjNjE0N2MyN2NkYzM1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJMaW5rSWNv
bi5oIgogI2luY2x1ZGUgIlBhZ2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVnaXN0cmFibGVE
b21haW4uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDx3dGYvRXhwZWN0ZWQuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0
Zi9XYWxsVGltZS5oPgpAQCAtMTM4LDIzICsxMzksMjMgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hl
ZEZyb21QYXJlbnQzKCkgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGFzc2lnbklk
ZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRl
ciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UmKSA9IDA7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICB2
aXJ0dWFsIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNl
JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlv
blNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQ
cm90ZWN0aW9uU3BhY2UmKSA9IDA7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
Ci0gICAgdmlydHVhbCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgPSAwOworICAg
IHZpcnR1YWwgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMo
RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpID0gMDsKICNlbmRpZgog
Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpID0gMDsKQEAgLTI5OCwxMyArMjk5
LDEzIEBAIHB1YmxpYzoKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBBbGxvdyBhbiBhY2Nl
c3NpYmlsaXR5IG9iamVjdCB0byByZXRyaWV2ZSBhIEZyYW1lIHBhcmVudCBpZiB0aGVyZSdzIG5v
IFBsYXRmb3JtV2lkZ2V0LgogICAgIHZpcnR1YWwgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJp
bGl0eVJlbW90ZU9iamVjdCgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJM
UmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+
JiYpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1l
bnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2Uq
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7
IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKIAogI2lmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAg
ICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcyNTc+LgotICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciog
ZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwg
dW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIGJv
b2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBl
Ki8pIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0
cmF0ZWd5LmNwcAppbmRleCA4YjU1ODFkYjRmMjY1OTMyNGE3YjdlY2VlYjcyNjQxM2JmYTQ5MWU0
Li4zYmMxMmViMGUxNzVjY2YzZjU5ZTQwMGQ5ZWM4YzAyMWNmNTI4MWQ0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAKQEAgLTQxLDE3ICs0MSwxNyBAQCB2b2lkIExv
YWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8U3VicmVz
b3VyY2VMb2FkZXIqPiYpCiB7CiB9CiAKLVJlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6
OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VM
b2FkSWRlbnRpZmllciAqLykKK1Jlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6OnJlc3Bv
bnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIHJldHVybiB7IH07CiB9CiAKLU5ldHdvcmtMb2FkTWV0cmljcyBMb2FkZXJTdHJhdGVn
eTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyICovKQorTmV0d29ya0xvYWRNZXRyaWNzIExvYWRlclN0cmF0
ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4geyB9OwogfQogCi1WZWN0b3I8TmV0d29ya1Ry
YW5zYWN0aW9uSW5mb3JtYXRpb24+IExvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5m
b3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJjZUxv
YWRJZGVudGlmaWVyICovKQorVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBM
b2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCmluZGV4IGIwMThhZjA0ZDA1
Y2UzYWMzOGJiNTdkOGU1MGE3YjA2M2VlNTE3MzMuLmUyZWNkMWFmYzM1YmE2ZDMxMjM4OGM4Mjhl
YTRjZTFkZGMyM2FjZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJT
dHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCkBA
IC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiTG9hZFNjaGVkdWxpbmdNb2RlLmgiCiAjaW5jbHVk
ZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNl
TG9hZGVyT3B0aW9ucy5oIgogI2luY2x1ZGUgIlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LmgiCiAj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAgLTU4LDcgKzU5LDcgQEAgc3RydWN0IEZldGNoT3B0
aW9uczsKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIExvYWRlclN0cmF0ZWd5IHsKIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNlKEZyYW1lJiwgQ2FjaGVkUmVzb3VyY2UmLCBSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChSZWZQdHI8U3VicmVzb3VyY2VMb2FkZXI+JiYpPiYmKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENsaWVudENyZWRlbnRp
YWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNv
dXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVy
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGll
bnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVy
TWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4m
IGRhdGEpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoUGFnZSYpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChGcmFtZSYpID0gMDsK
IApAQCAtODgsMTQgKzg5LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGVy
Zm9ybVNlY3VyaXR5Q2hlY2tzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgaGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmlydHVhbCBSZXNvdXJjZVJlc3BvbnNl
IHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcik7Ci0gICAgdmlydHVhbCBWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3Jt
YXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlm
aWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpOwotICAgIHZpcnR1YWwgTmV0d29y
a0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWlu
dDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdmlydHVhbCBSZXNvdXJjZVJlc3Bv
bnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKTsKKyAgICB2aXJ0dWFsIFZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlv
bj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIo
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2aXJ0dWFsIE5ldHdvcmtMb2FkTWV0cmlj
cyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcik7CiAKICAgICB2aXJ0dWFsIHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZChD
YWNoZWRSZXNvdXJjZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2sp
ID0gMDsKIAogICAgIC8vIFVzZWQgZm9yIHRlc3Rpbmcgb25seS4KLSAgICB2aXJ0dWFsIFZlY3Rv
cjx1aW50NjRfdD4gb25nb2luZ0xvYWRzKCkgY29uc3QgeyByZXR1cm4geyB9OyB9CisgICAgdmly
dHVhbCBWZWN0b3I8UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25z
dCB7IHJldHVybiB7IH07IH0KIAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkxvYWRlclN0cmF0
ZWd5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggM2VjM2M1MThjNzg4
ZTVjYzFmNWYxODhlOGM3MTUzMWY5MWRiMDNjYi4uNzk4YTU0YjUwYmNjMTY1MmNjZjdhZTU5MmUx
YmM0Y2JkNjMzOWM4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMjAw
LDcgKzIwMCw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYg
ZnJhbWUsIGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBSZWY8Rm9yCiAKIHZvaWQgUGluZ0xvYWRlcjo6
c3RhcnRQaW5nTG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSFRU
UEhlYWRlck1hcCYmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFNob3VsZEZvbGxvd1JlZGlyZWN0
cyBzaG91bGRGb2xsb3dSZWRpcmVjdHMsIENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24g
cG9saWN5Q2hlY2ssIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5LCBzdGQ6Om9wdGlvbmFs
PFZpb2xhdGlvblJlcG9ydFR5cGU+IHZpb2xhdGlvblJlcG9ydFR5cGUpCiB7Ci0gICAgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyID0gZnJhbWUucGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1
ZUlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgLy8gRklYTUU6IFdoeSBhY3RpdmVEb2N1bWVudExvYWRl
cj8gSSB3b3VsZCBoYXZlIGV4cGVjdGVkIGRvY3VtZW50TG9hZGVyKCkuCiAgICAgLy8gSXQgc2Vl
bXMgbGlrZSB0aGUgUGluZ0xvYWRlciBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJy
ZW50CiAgICAgLy8gRG9jdW1lbnQgaW4gdGhlIEZyYW1lLCBidXQgdGhlIGFjdGl2ZURvY3VtZW50
TG9hZGVyIHdpbGwgYmUgYXNzb2NpYXRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NU
cmFja2VyLmNwcAppbmRleCAwZGNiNDc1NTZkMDQ4NzQ4Nzg2NTZlNDU5YzliYWM5YWY2NGRjZmJm
Li5hMjE1ZDZhOWI0MDIyYzllNzc1ODhlNWZiMDdhZmYwNDJjYzQ5YTFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcApAQCAtMTgzLDcgKzE4Myw3IEBAIHZvaWQg
UHJvZ3Jlc3NUcmFja2VyOjpmaW5hbFByb2dyZXNzQ29tcGxldGUoKQogICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6ZnJhbWVTdG9wcGVkTG9hZGluZygqZnJhbWUpOwogfQogCi12b2lkIFBy
b2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2Vy
OjppbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgTE9HKFByb2dyZXNzLCAi
UHJvZ3Jlc3MgaW5jcmVtZW50ZWQgKCVwKSAtIHZhbHVlICVmLCB0cmFja2VkIGZyYW1lcyAlZCwg
b3JpZ2luYXRpbmcgZnJhbWUgJXAiLCB0aGlzLCBtX3Byb2dyZXNzVmFsdWUsIG1fbnVtUHJvZ3Jl
c3NUcmFja2VkRnJhbWVzLCBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZS5nZXQoKSk7CiAKQEAg
LTIwNiw3ICsyMDYsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3Mo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZQogICAgIGl0ZW0tPmVzdGlt
YXRlZExlbmd0aCA9IGVzdGltYXRlZExlbmd0aDsKIH0KIAotdm9pZCBQcm9ncmVzc1RyYWNrZXI6
OmluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0
ZXNSZWNlaXZlZCkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCkK
IHsKICAgICBQcm9ncmVzc0l0ZW0qIGl0ZW0gPSBtX3Byb2dyZXNzSXRlbXMuZ2V0KGlkZW50aWZp
ZXIpOwogCkBAIC0yNjYsNyArMjY2LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVu
dFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXMKICAgICBt
X2NsaWVudC0+ZGlkQ2hhbmdlRXN0aW1hdGVkUHJvZ3Jlc3MoKTsKIH0KIAotdm9pZCBQcm9ncmVz
c1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9p
ZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBpdCA9IG1fcHJvZ3Jlc3NJdGVtcy5maW5kKGlk
ZW50aWZpZXIpOwogCkBAIC0yODUsNiArMjg1LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNv
bXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogCiB1bnNpZ25lZCBsb25n
IFByb2dyZXNzVHJhY2tlcjo6Y3JlYXRlVW5pcXVlSWRlbnRpZmllcigpCiB7CisgICAgLy8gRklY
TUU6IFVzZSBhIHN0cm9uZ2x5IHR5cGVkIGlkZW50aWZpZXIgZm9yIHdlYnNvY2tldHMgYW5kIHJl
bW92ZSB0aGlzLgogICAgIHJldHVybiArK3NfdW5pcXVlSWRlbnRpZmllcjsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oCmluZGV4IDMxOWIwY2M4MWI5OTQ2MWQ4ZDVl
OGY1MTkyNWY0ZWE3MDRjMDVlZWUuLjkzYTY4YTk5ZGZhODdlNGFkNzE5M2I4OGVjMDg2NjIzZTZm
MDIyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmgKQEAgLTI1LDYg
KzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIuaCIKICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAj
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTU1LDkgKzU2LDkgQEAgcHVibGljOgogICAgIHZv
aWQgcHJvZ3Jlc3NTdGFydGVkKEZyYW1lJik7CiAgICAgdm9pZCBwcm9ncmVzc0NvbXBsZXRlZChG
cmFtZSYpOwogCi0gICAgdm9pZCBpbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGluY3JlbWVudFByb2dy
ZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7Ci0g
ICAgdm9pZCBjb21wbGV0ZVByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAg
dm9pZCBpbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7CisgICAgdm9pZCBjb21wbGV0
ZVByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBsb25nIGxvbmcgdG90
YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9hZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxQYWdl
QW5kUmVzb3VyY2VCeXRlc1RvTG9hZDsgfQogICAgIGxvbmcgbG9uZyB0b3RhbEJ5dGVzUmVjZWl2
ZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdGFsQnl0ZXNSZWNlaXZlZDsgfQpAQCAtNzQsNyArNzUs
NyBAQCBwcml2YXRlOgogCiAgICAgVW5pcXVlUmVmPFByb2dyZXNzVHJhY2tlckNsaWVudD4gbV9j
bGllbnQ7CiAgICAgUmVmUHRyPEZyYW1lPiBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZTsKLSAg
ICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBt
X3Byb2dyZXNzSXRlbXM7CisgICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBtX3Byb2dyZXNzSXRlbXM7CiAgICAgVGltZXIg
bV9wcm9ncmVzc0hlYXJ0YmVhdFRpbWVyOwogCiAgICAgbG9uZyBsb25nIG1fdG90YWxQYWdlQW5k
UmVzb3VyY2VCeXRlc1RvTG9hZCB7IDAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IDliNzZjMDU5MDJmM2M5ZjI2NGMwMDc0MjhlMzZi
OThiZWY3NDkzMmUuLjE0N2I0NWUwNjQzODEyMjdiMDUyMjA2NDQxODUyM2MwNzlmNjRkMTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAt
NTYsNyArNTYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqIGxvYQogICAgIGRpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShsb2FkZXItPmlkZW50aWZpZXIoKSwgbG9hZGVyLT5kb2N1bWVu
dExvYWRlcigpLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWRO
b3RpZmllcjo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UmIGN1cnJlbnRXZWJDaGFsbGVuZ2UpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlJiBjdXJyZW50V2ViQ2hhbGxlbmdlKQogewogICAgIG1fZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UobG9h
ZGVyLCBpZGVudGlmaWVyLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KQEAgLTEwNyw3ICsxMDcs
NyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRGYWlsVG9Mb2FkKFJlc291cmNlTG9h
ZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRQogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKSwgbG9h
ZGVyLT5pZGVudGlmaWVyKCksIGVycm9yKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGJvb2wg
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcgPSBmYWxzZTsKICAgICBpZiAoYXV0byogZnJhbWVM
b2FkZXIgPSBsb2FkZXIgPyBsb2FkZXItPmZyYW1lTG9hZGVyKCkgOiBudWxscHRyKQpAQCAtMTE5
LDcgKzExOSw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgbV9mcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChpZGVudGlmaWVyLCBs
b2FkZXIsIHJlcXVlc3QpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNl
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogI2lm
IFVTRShRVUlDS19MT09LKQogICAgIC8vIEFsd2F5cyBhbGxvdyBRdWlja0xvb2stZ2VuZXJhdGVk
IFVSTHMgYmFzZWQgb24gdGhlIHByb3RvY29sIHNjaGVtZS4KQEAgLTE1MCw3ICsxNTAsNyBAQCB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2ls
bFNlbmRSZXF1ZXN0KCZtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QsIHJlZGly
ZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3Rp
Zmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgciwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUg
RnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAg
ICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTU5LDcgKzE1OSw3IEBAIHZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNl
aXZlUmVzb3VyY2VSZXNwb25zZShtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHIsIHJlc291
cmNlTG9hZGVyKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFM
ZW5ndGgpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVEYXRh
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNh
dXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1f
ZnJhbWUpOwpAQCAtMTY4LDcgKzE2OCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRp
c3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSgmbV9mcmFtZSwgaWRlbnRp
ZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VM
b2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2Fk
ZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZy
YW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTc3LDcgKzE3Nyw3IEBAIHZvaWQgUmVzb3VyY2VM
b2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9h
ZGVyLCB1bnNpCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5n
KCZtX2ZyYW1lLCBsb2FkZXIsIGlkZW50aWZpZXIsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3Vy
Y2VMb2FkZXIpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICAvLyBOb3RpZnlpbmcgdGhlIEZyYW1lTG9hZGVyQ2xpZW50IG1heSBjYXVzZSB0aGUg
ZnJhbWUgdG8gYmUgZGVzdHJveWVkLgogICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsK
QEAgLTE4Niw3ICsxODYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERp
ZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbgogICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlciwgaWRlbnRp
ZmllciwgZXJyb3IpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpzZW5kUmVtYWlu
aW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2Rl
ZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIC8vIElmIHRo
ZSByZXF1ZXN0IGlzIG51bGwsIHdpbGxTZW5kUmVxdWVzdCBjYW5jZWxsZWQgdGhlIGxvYWQuIFdl
IHNob3VsZAogICAgIC8vIG9ubHkgZGlzcGF0Y2ggZGlkRmFpbExvYWRpbmcgaW4gdGhpcyBjYXNl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAppbmRleCAx
Y2M0NjMxOTJkNTIzMjE1ZmM4ZmUyZmFiYWMxODg3MmEyOWRmMTFiLi40ZGJkNGNjNDlkNjUwNDIx
MTg0ZTYwYzI0ZGQ3MTRkY2JlMGJkYjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuaApAQCAtMjksNiArMjksNyBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgPG9wdGlvbmFs
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCkBAIC01MCw3ICs1MSw3IEBAIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBSZXNvdXJjZUxvYWROb3RpZmllcihGcmFtZSYpOwogCiAgICAgdm9p
ZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqLCBjb25z
dCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOworICAgIHZvaWQgZGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwogCiAgICAgdm9pZCB3aWxs
U2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKQEAgLTU4LDE4
ICs1OSwxOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRGaW5pc2hMb2FkKFJlc291cmNlTG9hZGVy
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7CiAgICAgdm9pZCBkaWRGYWlsVG9Mb2FkKFJl
c291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBhc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgdm9pZCBkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25z
ZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJl
c3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqID0gbnVsbHB0cik7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVEYXRhKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
JiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImKTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
KTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciog
PSBudWxscHRyKTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBzZW5kUmVtYWluaW5nRGVs
ZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVp
bnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2Vz
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdWludDhfdCogZGF0YSwg
aW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOwogCiBwcml2YXRlOgogICAgIEZyYW1lJiBtX2ZyYW1lOwotICAgIHN0ZDo6b3B0aW9uYWw8
dW5zaWduZWQgbG9uZz4gbV9pbml0aWFsUmVxdWVzdElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRp
b25hbDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1faW5pdGlhbFJlcXVlc3RJZGVudGlmaWVy
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHAKaW5kZXggMzBjNjU0ODY1ZWVmZjg5MDIyYjgwNTllYTZmNjA3ZDNiOTA2
MDVlMy4uMGEwZDQzZWQ1NzUwNGNkODEwNWFjODZlMGYwMzVmNjgzY2QzMjkyOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC02Nyw3ICs2Nyw3IEBACiAjdW5k
ZWYgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0cKICNkZWZpbmUgUEFHRV9JRCAoKGZyYW1lKCkg
PyBmcmFtZSgpLT5wYWdlSUQoKS52YWx1ZV9vcihQYWdlSWRlbnRpZmllcigpKSA6IFBhZ2VJZGVu
dGlmaWVyKCkpLnRvVUludDY0KCkpCiAjZGVmaW5lIEZSQU1FX0lEICgoZnJhbWUoKSA/IGZyYW1l
KCktPmZyYW1lSUQoKS52YWx1ZV9vcihGcmFtZUlkZW50aWZpZXIoKSkgOiBGcmFtZUlkZW50aWZp
ZXIoKSkudG9VSW50NjQoKSkKLSNkZWZpbmUgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10
LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlEPSVsdV0gUmVzb3Vy
Y2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIoKSwg
aWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxF
QVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICJdIFJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVf
SUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19f
KQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIFJlc291
cmNlTG9hZGVyOjpyZWxlYXNlUmVzb3VyY2VzKCkKIAogICAgIGZpbmlzaE5ldHdvcmtMb2FkKCk7
CiAKLSAgICBtX2lkZW50aWZpZXIgPSAwOworICAgIG1faWRlbnRpZmllciA9IHsgfTsKIAogICAg
IG1fcmVzb3VyY2VEYXRhID0gbnVsbHB0cjsKICAgICBtX2RlZmVycmVkUmVxdWVzdCA9IFJlc291
cmNlUmVxdWVzdCgpOwpAQCAtMzczLDcgKzM3Myw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6Ondp
bGxTZW5kUmVxdWVzdEludGVybmFsKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFJl
CiAgICAgLy8gV2UgbmVlZCBhIHJlc291cmNlIGlkZW50aWZpZXIgZm9yIGFsbCByZXF1ZXN0cywg
ZXZlbiBpZiBGcmFtZUxvYWRlciBpcyBuZXZlciBnb2luZyB0byBzZWUgaXQgKHN1Y2ggYXMgd2l0
aCBDT1JTIHByZWZsaWdodCByZXF1ZXN0cykuCiAgICAgYm9vbCBjcmVhdGVkUmVzb3VyY2VJZGVu
dGlmaWVyID0gZmFsc2U7CiAgICAgaWYgKCFtX2lkZW50aWZpZXIpIHsKLSAgICAgICAgbV9pZGVu
dGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZp
ZXIoKTsKKyAgICAgICAgbV9pZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpn
ZW5lcmF0ZSgpOwogICAgICAgICBjcmVhdGVkUmVzb3VyY2VJZGVudGlmaWVyID0gdHJ1ZTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKaW5kZXggN2E0YTBkN2Q3
ZjQ2NDUzNmMyYzY4ODVhZjgzNjlkZjA2OTc1YmI5NS4uNGZkMmJmMGJiYjNiMWJkMjE1NDVkYjUy
YzJlMWNhNjRlZTQyYjkxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgK
QEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgpA
QCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldERlZmVyc0xvYWRp
bmcoYm9vbCk7CiAgICAgYm9vbCBkZWZlcnNMb2FkaW5nKCkgY29uc3QgeyByZXR1cm4gbV9kZWZl
cnNMb2FkaW5nOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJl
dHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgYm9vbCB3YXNBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZUJsb2NrZWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlQmxvY2tlZDsgfQogCkBAIC0yMjgsNyArMjI5LDcgQEAgcHJpdmF0ZToK
ICAgICBSZXNvdXJjZVJlcXVlc3QgbV9vcmlnaW5hbFJlcXVlc3Q7IC8vIEJlZm9yZSByZWRpcmVj
dHMuCiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbV9yZXNvdXJjZURhdGE7CiAgICAgCi0gICAg
dW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIgeyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIG1faWRlbnRpZmllcjsKIAogICAgIGJvb2wgbV9yZWFjaGVkVGVybWluYWxTdGF0ZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX25vdGlmaWVkTG9hZENvbXBsZXRlIHsgZmFsc2UgfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44MjdlMTYwODliNWY2NWM2MmI1ZDZkMWZiMGYzNDc2M2U2N2Y2MmI3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgUmVzb3VyY2VMb2FkZXI7CisKK3VzaW5nIFJlc291cmNlTG9hZGVySWRlbnRpZmllciA9IE9i
amVjdElkZW50aWZpZXI8UmVzb3VyY2VMb2FkZXI+OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAxYWQ4
NDBiY2RmN2UxZjY3ZDIwMjhlZTBjZTcxOGRjMjFjZGI0MGUxLi42M2FhZDNjYTczZWU5MDJlZGJi
YzRlMGU2MWNmYWYwODU0ZjQwNDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
U3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHAKQEAgLTc1LDggKzc1LDggQEAKICNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FE
RVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFVOVVNFRF9WQVJJQUJMRSh0aGlzKQogI2RlZmluZSBT
VUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgVU5VU0VEX1ZBUklB
QkxFKHRoaXMpCiAjZWxzZQotI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhm
bXQsIC4uLikgUkVMRUFTRV9MT0coUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBS
SXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0l
bHVdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZy
YW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKSwgIyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgU1VCUkVT
T1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9S
KFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JWx1XSBTdWJyZXNvdXJjZUxvYWRl
cjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlm
aWVyKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0Vf
TE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhSZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiXSBTdWJyZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQs
IEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSwgIyNfX1ZB
X0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10
LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0l
IiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNl
SUQ9JSIgUFJJdTY0ICJdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwg
RlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFf
QVJHU19fKQogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE3Miw3ICsxNzIsNyBA
QCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjppbml0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3Qs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYgogICAgICAgICB9CiAgICAgICAgIEFTU0VSVCghcmVh
Y2hlZFRlcm1pbmFsU3RhdGUoKSk7CiAgICAgICAgIG1fc3RhdGUgPSBJbml0aWFsaXplZDsKLSAg
ICAgICAgbV9kb2N1bWVudExvYWRlci0+YWRkU3VicmVzb3VyY2VMb2FkZXIodGhpcyk7CisgICAg
ICAgIG1fZG9jdW1lbnRMb2FkZXItPmFkZFN1YnJlc291cmNlTG9hZGVyKCp0aGlzKTsKICAgICAg
ICAgbV9vcmlnaW4gPSBtX3Jlc291cmNlLT5vcmlnaW4oKTsKICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIodHJ1ZSk7CiAgICAgfSk7CkBAIC0yMTAsNyArMjEwLDcgQEAgdm9pZCBTdWJyZXNvdXJj
ZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVx
dWVzdCwgY28KICAgICAgICAgfQogCiAgICAgICAgIFJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3RJbnRlcm5hbChXVEZNb3ZlKG5ld1JlcXVlc3QpLCByZWRpcmVjdFJlc3BvbnNlLCBbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIHJlZGlyZWN0UmVzcG9uc2VdIChSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIHRyYWNlUG9pbnQo
U3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVudGlmaWVyKCksIFBBR0VfSUQsIEZSQU1FX0lE
KTsKKyAgICAgICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVu
dGlmaWVyKCkudG9VSW50NjQoKSwgUEFHRV9JRCwgRlJBTUVfSUQpOwogCiAgICAgICAgICAgICBp
ZiAocmVhY2hlZFRlcm1pbmFsU3RhdGUoKSkgewogICAgICAgICAgICAgICAgIFNVQlJFU09VUkNF
TE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2VuZFJlcXVlc3RJbnRlcm5hbDogcmVhY2hlZCB0ZXJt
aW5hbCBzdGF0ZTsgY2FsbGluZyBjb21wbGV0aW9uIGhhbmRsZXIiKTsKQEAgLTQ5MSw3ICs0OTEs
NyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbQogICAgICAgICAgICAgLy8gU2luY2UgYSBzdWJy
ZXNvdXJjZSBsb2FkZXIgZG9lcyBub3QgbG9hZCBtdWx0aXBhcnQgc2VjdGlvbnMgcHJvZ3Jlc3Np
dmVseSwgZGF0YSB3YXMgZGVsaXZlcmVkIHRvIHRoZSBsb2FkZXIgYWxsIGF0IG9uY2UuCiAgICAg
ICAgICAgICAvLyBBZnRlciB0aGUgZmlyc3QgbXVsdGlwYXJ0IHNlY3Rpb24gaXMgY29tcGxldGUs
IHNpZ25hbCB0byBkZWxlZ2F0ZXMgdGhhdCB0aGlzIGxvYWQgaXMgImZpbmlzaGVkIgogICAgICAg
ICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICAgICAgICAgIG1fZG9j
dW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydCh0aGlz
KTsKKyAgICAgICAgICAgIG1fZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNo
ZWRMb2FkaW5nT25lUGFydCgqdGhpcyk7CiAgICAgICAgICAgICBkaWRGaW5pc2hMb2FkaW5nT25l
UGFydChlbXB0eU1ldHJpY3MpOwogICAgICAgICB9CiAKQEAgLTc0NSw3ICs3NDUsNyBAQCB2b2lk
IFN1YnJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZQogICAgIH0KIAogICAgIGlmIChtX3Jlc291cmNlLT50eXBlKCkg
IT0gQ2FjaGVkUmVzb3VyY2U6OlR5cGU6Ok1haW5SZXNvdXJjZSkKLSAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKSk7CisgICAgICAgIHRyYWNlUG9p
bnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAKICAg
ICBtX3N0YXRlID0gRmluaXNoaW5nOwogICAgIG1fcmVzb3VyY2UtPmZpbmlzaExvYWRpbmcocmVz
b3VyY2VEYXRhKCksIG5ldHdvcmtMb2FkTWV0cmljcyk7CkBAIC03OTEsNyArNzkxLDcgQEAgdm9p
ZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
ICAgICBtX3N0YXRlID0gRmluaXNoaW5nOwogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAh
PSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50
KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAg
IGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZVRvUmV2YWxpZGF0ZSgpKQogICAgICAgICBNZW1vcnlD
YWNoZTo6c2luZ2xldG9uKCkucmV2YWxpZGF0aW9uRmFpbGVkKCptX3Jlc291cmNlKTsKQEAgLTg0
NCw3ICs4NDQsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRDYW5jZWwoY29uc3QgUmVz
b3VyY2VFcnJvciYpCiAgICAgQVNTRVJUKG1fcmVzb3VyY2UpOwogCiAgICAgaWYgKG1fcmVzb3Vy
Y2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAg
ICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAg
ICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2
NCgpKTsKIAogICAgIG1fcmVzb3VyY2UtPmNhbmNlbExvYWQoKTsKICAgICBub3RpZnlEb25lKExv
YWRDb21wbGV0aW9uVHlwZTo6Q2FuY2VsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhy
ZWFkYWJsZUxvYWRlckNsaWVudC5oCmluZGV4IDYyNWJiN2ViMmU3YjUwNzFjMWQxMmMwNzUyMzZl
MWZiZTZiZWViYTcuLjg0ZDc5YjBjOTlkZjEwZDk5MzgwYjg0ODMxNzM3MWJjMWU4NTczYmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQuaApAQCAt
MzAsMjcgKzMwLDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIFJlc291
cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKLSAgICBjbGFzcyBSZXNvdXJj
ZVRpbWluZzsKLQotICAgIGNsYXNzIFRocmVhZGFibGVMb2FkZXJDbGllbnQgewotICAgICAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KTsgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkU2VuZERh
dGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0ZXNTZW50Ki8sIHVuc2lnbmVkIGxvbmcgbG9uZyAv
KnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0KLQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgLyppZGVudGlmaWVyKi8sIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSB7IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqLCBpbnQgLypkYXRhTGVuZ3RoKi8pIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIC8qaWRlbnRpZmllciovKSB7IH0KLSAgICAg
ICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQotICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9
Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBub3RpZnlJc0RvbmUoYm9vbCkgeyBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsgfQotCi0gICAgcHJvdGVjdGVkOgotICAgICAgICBUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KCkgPSBkZWZhdWx0OwotICAgICAgICB2aXJ0dWFsIH5UaHJlYWRhYmxlTG9hZGVyQ2xpZW50
KCkgPSBkZWZhdWx0OwotICAgIH07CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKK2NsYXNzIFJlc291cmNlVGltaW5nOworCitjbGFzcyBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lk
IGRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyAvKmJ5dGVzU2VudCovLCB1bnNpZ25lZCBs
b25nIGxvbmcgLyp0b3RhbEJ5dGVzVG9CZVNlbnQqLykgeyB9CisKKyAgICB2aXJ0dWFsIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiwgaW50IC8qZGF0YUxlbmd0aCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9p
ZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlk
RmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lk
IG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9CisKK3Byb3RlY3Rl
ZDoKKyAgICBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgPSBkZWZhdWx0OworICAgIHZpcnR1YWwg
flRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1bHQ7Cit9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlci5oCmluZGV4IDhlZmUzOWNmN2I4NWRkOWRkNGY4YjQwOGI0ZWJjNDkx
MDE5MDJhYTQuLjQyYWU2NDkwOWE1ZTBmZTQ0YzZhNWUwMDYwZDU4Yzk2NGVjNTYwNTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3Jh
cHBlci5oCkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fY2xpZW50LT5k
aWRTZW5kRGF0YShieXRlc1NlbnQsIHRvdGFsQnl0ZXNUb0JlU2VudCk7CiAgICAgfQogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKQEAgLTcy
LDcgKzcyLDcgQEAgcHVibGljOgogICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRh
KGRhdGEsIGRhdGFMZW5ndGgpOwogICAgIH0KIAotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgbV9kb25lID0g
dHJ1ZTsKICAgICAgICAgaWYgKG1fY2xpZW50KQpAQCAtOTIsNyArOTIsNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX2NsaWVudC0+ZGlkRmFpbChlcnJvcik7CiAgICAgfQogCi0gICAgdm9pZCBk
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DYW5jZWxsYXRpb24odW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNhbmNlbGxhdGlvbihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAg
ICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNl
KGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCA0NThiNjg5Yjc0Yjk4NDU0MzJkYjRiMDVkNTVj
ODZlOGIwZDJiOGIwLi45MzE2MWM5Y2M1OTg0MjQ1NjUzNTAzYmVkNTYxZGM5ZWMxZGM3NmJkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuY3Bw
CkBAIC0xMTMsNyArMTEzLDcgQEAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJy
aWRnZTo6TWFpblRocmVhZEJyaWRnZShUaHJlYWRhYmxlTG9hZGVyQ2xpZW4KICAgICA6IG1fd29y
a2VyQ2xpZW50V3JhcHBlcigmd29ya2VyQ2xpZW50V3JhcHBlcikKICAgICAsIG1fbG9hZGVyUHJv
eHkobG9hZGVyUHJveHkpCiAgICAgLCBtX3Rhc2tNb2RlKHRhc2tNb2RlLmlzb2xhdGVkQ29weSgp
KQotICAgICwgbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllcihnbG9iYWxTY29wZS5jcmVhdGVVbmlx
dWVJZGVudGlmaWVyKCkpCisgICAgLCBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyIHsgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpIH0KIHsKICAgICBhdXRvKiBzZWN1cml0eU9y
aWdpbiA9IGdsb2JhbFNjb3BlLnNlY3VyaXR5T3JpZ2luKCk7CiAgICAgYXV0byogY29udGVudFNl
Y3VyaXR5UG9saWN5ID0gZ2xvYmFsU2NvcGUuY29udGVudFNlY3VyaXR5UG9saWN5KCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJp
ZGdlOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnkKICAgICB9LCBtX3Rhc2tNb2Rl
KTsKIH0KIAotdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpk
aWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRo
cmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBtX2xv
YWRlclByb3h5LnBvc3RUYXNrRm9yTW9kZVRvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUoW3By
b3RlY3RlZFdvcmtlckNsaWVudFdyYXBwZXIgPSBtYWtlUmVmKCptX3dvcmtlckNsaWVudFdyYXBw
ZXIpLCB3b3JrZXJSZXF1ZXN0SWRlbnRpZmllciA9IG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIs
IGlkZW50aWZpZXIsIHJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmNyb3NzVGhyZWFkRGF0YSgpXSAo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgbXV0YWJsZSB7CiAgICAgICAgIEFTU0VS
VChjb250ZXh0LmlzV29ya2VyR2xvYmFsU2NvcGUoKSB8fCBjb250ZXh0LmlzV29ya2xldEdsb2Jh
bFNjb3BlKCkpOwpAQCAtMjQyLDcgKzI0Miw3IEBAIHZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRl
cjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCogZGF0CiAg
ICAgfSwgbV90YXNrTW9kZSk7CiB9CiAKLXZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFp
blRocmVhZEJyaWRnZTo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
Cit2b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9s
b2FkaW5nRmluaXNoZWQgPSB0cnVlOwogICAgIG1fbG9hZGVyUHJveHkucG9zdFRhc2tGb3JNb2Rl
VG9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZShbcHJvdGVjdGVkV29ya2VyQ2xpZW50V3JhcHBl
ciA9IG1ha2VSZWYoKm1fd29ya2VyQ2xpZW50V3JhcHBlciksIHdvcmtlclJlcXVlc3RJZGVudGlm
aWVyID0gbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllciwgbmV0d29ya0xvYWRNZXRyaWNzID0gbV9u
ZXR3b3JrTG9hZE1ldHJpY3MuaXNvbGF0ZWRDb3B5KCksIGlkZW50aWZpZXJdIChTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBjb250ZXh0KSBtdXRhYmxlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IDU3NjI2MGVhN2Y5M2VmZjIzYjRiNDdk
MWVhOGUwOTBjY2Q1YjQ0NWYuLjcyM2I0NTZlYzhlOWUzMDZmYzE4Y2M4ZjM2ZGU2ZGNkOGFlMzA0
NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIu
aApAQCAtMzEsNiArMzEsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJOZXR3b3JrTG9h
ZE1ldHJpY3MuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJUaHJlYWRhYmxlTG9hZGVyLmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVu
dC5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmgiCkBAIC0zOCwx
MDIgKzM5LDEwMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDb250ZW50
U2VjdXJpdHlQb2xpY3k7Ci0gICAgY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOwotICAg
IGNsYXNzIFJlc291cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwotICAgIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwotICAgIGNsYXNzIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3Bl
OwotICAgIGNsYXNzIFdvcmtlckxvYWRlclByb3h5OwotCi0gICAgY2xhc3MgV29ya2VyVGhyZWFk
YWJsZUxvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBw
dWJsaWMgVGhyZWFkYWJsZUxvYWRlciB7Ci0gICAgICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OworY2xhc3MgQ29udGVudFNlY3VyaXR5UG9saWN5OworY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyOworY2xhc3MgUmVzb3VyY2VFcnJvcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2Ns
YXNzIFNlY3VyaXR5T3JpZ2luOworY2xhc3MgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Citj
bGFzcyBXb3JrZXJMb2FkZXJQcm94eTsKKworY2xhc3MgV29ya2VyVGhyZWFkYWJsZUxvYWRlciA6
IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBwdWJsaWMgVGhyZWFk
YWJsZUxvYWRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAg
c3RhdGljIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSYsIFJlc291cmNlUmVxdWVzdCYmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmKTsKKyAgICBzdGF0aWMgUmVmPFdvcmtlclRocmVh
ZGFibGVMb2FkZXI+IGNyZWF0ZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgV29ya2VyT3JX
b3JrbGV0R2xvYmFsU2NvcGUsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmIGNsaWVudCwgY29uc3Qg
U3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3QgVGhyZWFk
YWJsZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpCisgICAg
eworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyKFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBjbGllbnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJlcXVl
c3QpLCBvcHRpb25zLCByZWZlcnJlcikpOworICAgIH0KKworICAgIH5Xb3JrZXJUaHJlYWRhYmxl
TG9hZGVyKCk7CisKKyAgICB2b2lkIGNhbmNlbCgpIG92ZXJyaWRlOworCisgICAgYm9vbCBkb25l
KCkgY29uc3QgeyByZXR1cm4gbV93b3JrZXJDbGllbnRXcmFwcGVyLT5kb25lKCk7IH0KKworICAg
IHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKTsKKworICAgIHVzaW5nIFJlZkNvdW50ZWQ8
V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFdvcmtl
clRocmVhZGFibGVMb2FkZXI+OjpkZXJlZjsKKworcHJvdGVjdGVkOgorICAgIHZvaWQgcmVmVGhy
ZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0KKyAgICB2b2lkIGRlcmVmVGhyZWFk
YWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorCitwcml2YXRlOgorICAgIC8vIENy
ZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNvbW11bmljYXRp
b24gYmV0d2VlbgorICAgIC8vIHRoZSBtYWluIHRocmVhZCBhbmQgdGhlIHdvcmtlciBjb250ZXh0
J3MgdGhyZWFkIHdoZXJlIFdvcmtlclRocmVhZGFibGVMb2FkZXIgcnVucy4KKyAgICAvLworICAg
IC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGltZXMgb2YgaXRlbXMgdXNlZCBpbiBj
YWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKKyAgICAvLworICAgIC8vIGFsbCBjYXNl
cy4gQWxsIHRhc2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgY29udGV4dCdzIHRocmVhZCBhcmUg
b2sgYmVjYXVzZQorICAgIC8vICAgIHRoZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFp
blRocmVhZERlc3Ryb3kiLCBzbyBNYWluVGhyZWFkQnJpZGdlIGlzCisgICAgLy8gICAgYXJvdW5k
IGZvciBhbGwgdGFza3MgdGhhdCB1c2UgaXQgb24gdGhlIG1haW4gdGhyZWFkLgorICAgIC8vCisg
ICAgLy8gY2FzZSAxLiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KKyAgICAvLyAgICBJbiB0
aGlzIGNhc2UsIG5vIG1vcmUgdGFza3MgYXJlIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0
J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIKKyAgICAvLyAgICBjb250ZXh0J3MgdGhyZWFkIC0tIFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlUHJveHkgaW1wbGVtZW50YXRpb24gZW5mb3JjZXMgdGhp
cy4KKyAgICAvLworICAgIC8vIGNhc2UgMi4geGhyIGdldHMgYWJvcnRlZCBhbmQgdGhlIHdvcmtl
ciBjb250ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgorICAgIC8vICAgIFRoZSBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlciBoYXMgdGhlIHVuZGVybHlpbmcgY2xpZW50IGNsZWFyZWQsIHNvIG5v
IG1vcmUgY2FsbHMKKyAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiBBbGwgdGFza3MgcG9zdGVkIGZy
b20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlciBjb250ZXh0J3MKKyAg
ICAvLyAgICB0aHJlYWQgY29udGFpbiB0aGUgUmVmUHRyPFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyPiBvYmplY3QsIHNvIHRoZQorICAgIC8vICAgIFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0YXNrcyBhcmUgZXhlY3V0ZWQuCisg
ICAgY2xhc3MgTWFpblRocmVhZEJyaWRnZSA6IHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHkoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZVJlcXVlc3QmJiwgVGhy
ZWFkYWJsZUxvYWRlckNsaWVudCYsIGNvbnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJik7Ci0g
ICAgICAgIHN0YXRpYyBSZWY8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4gY3JlYXRlKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSwgVGhyZWFkYWJs
ZUxvYWRlckNsaWVudCYgY2xpZW50LCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0LCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucywg
Y29uc3QgU3RyaW5nJiByZWZlcnJlcikKLSAgICAgICAgewotICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgV29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxT
Y29wZSwgY2xpZW50LCB0YXNrTW9kZSwgV1RGTW92ZShyZXF1ZXN0KSwgb3B0aW9ucywgcmVmZXJy
ZXIpKTsKLSAgICAgICAgfQotCi0gICAgICAgIH5Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyKCk7Ci0K
LSAgICAgICAgdm9pZCBjYW5jZWwoKSBvdmVycmlkZTsKLQotICAgICAgICBib29sIGRvbmUoKSBj
b25zdCB7IHJldHVybiBtX3dvcmtlckNsaWVudFdyYXBwZXItPmRvbmUoKTsgfQorICAgICAgICAv
LyBBbGwgZXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAgICAgICBN
YWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29ya2VyTG9h
ZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5nUmVmZXJy
ZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7CisgICAgICAgIHZvaWQgY2FuY2VsKCk7
CisgICAgICAgIHZvaWQgZGVzdHJveSgpOworICAgICAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKTsK
IAotICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9uZSk7CisgICAgcHJpdmF0ZToK
KyAgICAgICAgLy8gRXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAg
ICAgICB2b2lkIGNsZWFyQ2xpZW50V3JhcHBlcigpOworCisgICAgICAgIC8vIEFsbCBleGVjdXRl
ZCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQg
bG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2Vu
dCkgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgICAg
ICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQgZGF0YUxlbmd0aCkgb3Zl
cnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZpbmlzaFRpbWluZyhjb25zdCBSZXNvdXJj
ZVRpbWluZyYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9u
ZSkgZmluYWw7CisKKyAgICAgICAgLy8gT25seSB0byBiZSB1c2VkIG9uIHRoZSBtYWluIHRocmVh
ZC4KKyAgICAgICAgUmVmUHRyPERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcj4gbV9tYWluVGhyZWFk
TG9hZGVyOworICAgICAgICBib29sIG1fbG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKKworICAg
ICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlciBpcyB0byBiZSB1c2VkIG9uIHRo
ZSB3b3JrZXIgY29udGV4dCB0aHJlYWQuCisgICAgICAgIC8vIFRoZSByZWYgY291bnRpbmcgaXMg
ZG9uZSBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNs
aWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKKworICAgICAgICAvLyBNYXkgYmUg
dXNlZCBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBXb3JrZXJMb2FkZXJQcm94eSYgbV9sb2Fk
ZXJQcm94eTsKKworICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICAg
ICAgU3RyaW5nIG1fdGFza01vZGU7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBt
X3dvcmtlclJlcXVlc3RJZGVudGlmaWVyOworICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbV9u
ZXR3b3JrTG9hZE1ldHJpY3M7CisgICAgfTsKIAotICAgICAgICB1c2luZyBSZWZDb3VudGVkPFdv
cmtlclRocmVhZGFibGVMb2FkZXI+OjpyZWY7Ci0gICAgICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29y
a2VyVGhyZWFkYWJsZUxvYWRlcj46OmRlcmVmOworICAgIFdvcmtlclRocmVhZGFibGVMb2FkZXIo
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFRocmVhZGFibGVM
b2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7CiAKLSAgICBwcm90ZWN0ZWQ6
Ci0gICAgICAgIHZvaWQgcmVmVGhyZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0K
LSAgICAgICAgdm9pZCBkZXJlZlRocmVhZGFibGVMb2FkZXIoKSBvdmVycmlkZSB7IGRlcmVmKCk7
IH0KKyAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5hbDsKIAotICAgIHByaXZhdGU6Ci0gICAg
ICAgIC8vIENyZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNv
bW11bmljYXRpb24gYmV0d2VlbgotICAgICAgICAvLyB0aGUgbWFpbiB0aHJlYWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCdzIHRocmVhZCB3aGVyZSBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIHJ1bnMu
Ci0gICAgICAgIC8vCi0gICAgICAgIC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGlt
ZXMgb2YgaXRlbXMgdXNlZCBpbiBjYWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKLSAg
ICAgICAgLy8KLSAgICAgICAgLy8gYWxsIGNhc2VzLiBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhl
IHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIGFyZSBvayBiZWNhdXNlCi0gICAgICAgIC8vICAgIHRo
ZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFpblRocmVhZERlc3Ryb3kiLCBzbyBNYWlu
VGhyZWFkQnJpZGdlIGlzCi0gICAgICAgIC8vICAgIGFyb3VuZCBmb3IgYWxsIHRhc2tzIHRoYXQg
dXNlIGl0IG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gY2FzZSAx
LiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KLSAgICAgICAgLy8gICAgSW4gdGhpcyBjYXNl
LCBubyBtb3JlIHRhc2tzIGFyZSBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIG9iamVjdCdzIHRocmVh
ZCB0byB0aGUgd29ya2VyCi0gICAgICAgIC8vICAgIGNvbnRleHQncyB0aHJlYWQgLS0gV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGVQcm94eSBpbXBsZW1lbnRhdGlvbiBlbmZvcmNlcyB0aGlzLgot
ICAgICAgICAvLwotICAgICAgICAvLyBjYXNlIDIuIHhociBnZXRzIGFib3J0ZWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCBjb250aW51ZXMgcnVubmluZy4KLSAgICAgICAgLy8gICAgVGhlIFRocmVh
ZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGhhcyB0aGUgdW5kZXJseWluZyBjbGllbnQgY2xlYXJl
ZCwgc28gbm8gbW9yZSBjYWxscwotICAgICAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiAgQWxsIHRh
c2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIg
Y29udGV4dCdzCi0gICAgICAgIC8vICAgIHRocmVhZCBjb250YWluIHRoZSBSZWZQdHI8VGhyZWFk
YWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG9iamVjdCwgc28gdGhlCi0gICAgICAgIC8vICAgIFRo
cmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0
YXNrcyBhcmUgZXhlY3V0ZWQuCi0gICAgICAgIGNsYXNzIE1haW5UaHJlYWRCcmlkZ2UgOiBwdWJs
aWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7Ci0gICAgICAgIHB1YmxpYzoKLSAgICAgICAgICAg
IC8vIEFsbCBleGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCi0gICAgICAg
ICAgICBNYWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29y
a2VyTG9hZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3Qm
JiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5n
UmVmZXJyZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7Ci0gICAgICAgICAgICB2b2lk
IGNhbmNlbCgpOwotICAgICAgICAgICAgdm9pZCBkZXN0cm95KCk7Ci0gICAgICAgICAgICB2b2lk
IGNvbXB1dGVJc0RvbmUoKTsKLQotICAgICAgICBwcml2YXRlOgotICAgICAgICAgICAgLy8gRXhl
Y3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgotICAgICAgICAgICAgdm9pZCBj
bGVhckNsaWVudFdyYXBwZXIoKTsKLQotICAgICAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRo
ZSBtYWluIHRocmVhZC4KLSAgICAgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQgbG9u
ZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2VudCkg
b3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICAg
ICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCosIGludCBkYXRhTGVuZ3Ro
KSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoVGlt
aW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgb3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sIGlzRG9uZSkgZmluYWw7Ci0KLSAgICAgICAgICAgIC8vIE9ubHkgdG8g
YmUgdXNlZCBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8RG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyPiBtX21haW5UaHJlYWRMb2FkZXI7Ci0gICAgICAgICAgICBib29sIG1f
bG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKLQotICAgICAgICAgICAgLy8gVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIgaXMgdG8gYmUgdXNlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQgdGhy
ZWFkLgotICAgICAgICAgICAgLy8gVGhlIHJlZiBjb3VudGluZyBpcyBkb25lIG9uIGVpdGhlciB0
aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+
IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKLQotICAgICAgICAgICAgLy8gTWF5IGJlIHVzZWQgb24g
ZWl0aGVyIHRocmVhZC4KLSAgICAgICAgICAgIFdvcmtlckxvYWRlclByb3h5JiBtX2xvYWRlclBy
b3h5OwotCi0gICAgICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAg
ICAgICAgIFN0cmluZyBtX3Rhc2tNb2RlOwotICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtX3dv
cmtlclJlcXVlc3RJZGVudGlmaWVyIHsgMCB9OwotICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRy
aWNzIG1fbmV0d29ya0xvYWRNZXRyaWNzOwotICAgICAgICB9OwotCi0gICAgICAgIFdvcmtlclRo
cmVhZGFibGVMb2FkZXIoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50JiwgY29uc3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNv
bnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7Ci0K
LSAgICAgICAgdm9pZCBjb21wdXRlSXNEb25lKCkgZmluYWw7Ci0KLSAgICAgICAgUmVmPFdvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlPiBtX1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlOwotICAg
ICAgICBSZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3Jh
cHBlcjsKLSAgICAgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Ci0gICAgfTsKKyAgICBS
ZWY8V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGU7CisgICAgUmVmPFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyPiBtX3dvcmtlckNsaWVu
dFdyYXBwZXI7CisgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Cit9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCmluZGV4IDY4ZjIyNDMxMTJmODY5NWRiNmZk
NjlmNWY4MzI1N2Q3NjI3OTYwOTkuLjRiYzJiMDkyNzVmMTM4MjAzNjlhOTRiZTA4ZmZjYjhkMTJm
YjhiOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBAIC00MzcsNyArNDM3LDcgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRh
dGVPcHRpb24gdXAKIAogICAgIGF1dG8gcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoVVJMIHsgbV9t
YW5pZmVzdFVSTCB9LCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+bWFuaWZlc3RSZXNv
dXJjZSgpIDogbnVsbHB0cik7CiAKLSAgICBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIgPSBt
X2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAg
IG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6
Z2VuZXJhdGUoKTsKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVz
dChtX2ZyYW1lLmdldCgpLCBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIsIG1fZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCksIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UgeyB9LCBu
dWxscHRyKTsKIAogICAgIG1fbWFuaWZlc3RMb2FkZXIgPSBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VMb2FkZXI6OmNyZWF0ZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OlR5cGU6Ok1hbmlmZXN0
LCBkb2N1bWVudExvYWRlci5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLCBXVEZNb3ZlKHJlcXVlc3Qp
LCBbdGhpc10gKGF1dG8mJiByZXNvdXJjZU9yRXJyb3IpIHsKQEAgLTg5OCw3ICs4OTgsNyBAQCB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RhcnRMb2FkaW5nRW50cnkoKQogCiAgICAgYXV0
byByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChVUkwgeyB7IH0sIGZpcnN0UGVuZGluZ0VudHJ5VVJM
IH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBl
bmRpbmdFbnRyeVVSTCkgOiBudWxscHRyKTsKIAotICAgIG1fY3VycmVudFJlc291cmNlSWRlbnRp
ZmllciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVy
KCk7CisgICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNl
bmRSZXF1ZXN0KG1fZnJhbWUuZ2V0KCksIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbV9m
cmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25z
ZSB7IH0sIG51bGxwdHIpOwogCiAgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqbV9mcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCA2MzcxZmE1OGViYzY1
NDA5NTAxMmUwM2E0ZTdkNGU2NGI0MGIxYjlhLi5iOWJmODc2MzhmMzAzYWVhOWM4NmE2NDVlZThj
MWY5MjkyNTYzOGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xODEsNyArMTgxLDcgQEAgcHJpdmF0ZToK
ICAgICAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX2N1cnJlbnRSZXNv
dXJjZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyPiBtX2VudHJ5
TG9hZGVyOwotICAgIHVuc2lnbmVkIGxvbmcgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyOwor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXI7
CiAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX21hbmlmZXN0UmVzb3Vy
Y2U7CiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlcj4gbV9tYW5pZmVz
dExvYWRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
YXdSZXNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVz
b3VyY2UuY3BwCmluZGV4IDkwMDlhMzliNzVjNzVhMTIxNmE3ZWJhN2Q2Y2ZhYjlmOTY3N2VlZmUu
LjkyYjA4MzY5NzU4ODg0NDA5MTkzOWUzZWVkNzlkNzdmMTgzOTU2MmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcApAQCAtNDMsNyAr
NDMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRS
YXdSZXNvdXJjZShDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBUeXBlIHR5cGUsIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgQ29va2llSmFyKiBjb29raWVKYXIpCiAgICAg
OiBDYWNoZWRSZXNvdXJjZShXVEZNb3ZlKHJlcXVlc3QpLCB0eXBlLCBzZXNzaW9uSUQsIGNvb2tp
ZUphcikKLSAgICAsIG1faWRlbnRpZmllcigwKQogICAgICwgbV9hbGxvd0VuY29kZWREYXRhUmVw
bGFjZW1lbnQodHJ1ZSkKIHsKICAgICBBU1NFUlQoaXNNYWluT3JNZWRpYU9ySWNvbk9yUmF3UmVz
b3VyY2UoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmF3UmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNv
dXJjZS5oCmluZGV4IGZkNGEyNjliZDVhMmJiNjA0OTg1YzQ3ZDZiMzhhNzkzMDc2ZmY5NGIuLjg0
ZTBkODQ0ZDU3MTA5OTUzYWU2YmZmNjU1NjU5OTUzZTI4YmE2OWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCkBAIC0zOSw3ICszOSw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldERhdGFCdWZmZXJpbmdQb2xpY3koRGF0YUJ1ZmZlcmluZ1Bv
bGljeSk7CiAKICAgICAvLyBGSVhNRTogVGhpcyBpcyBleHBvc2VkIGZvciB0aGUgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uIGZvciBwcmVmbGlnaHRzIGluIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci4gSXQncyBhbHNvIHJlYWxseSBsYW1lLgotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2
b2lkIGNsZWFyKCk7CiAKQEAgLTczLDcgKzczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHByZXZp
ZXdSZXNwb25zZVJlY2VpdmVkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICNlbmRp
ZgogCi0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBib29sIG1fYWxsb3dFbmNvZGVkRGF0YVJlcGxh
Y2VtZW50OwogICAgIGJvb2wgbV9pbkluY3JlbWVudGFsRGF0YU5vdGlmeSB7IGZhbHNlIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4
IDg2Zjc3MjBiODNlYjAzZTExOGNlZWQ2ZjIzNDE4YjhiMjY1ZGY0MjYuLjVhYjRhNDhkMmZjYjYw
ZTNjOTczMmVmYzAwZDVjZGZiN2Y5ZTc1MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgQ2FjaGVk
UmVzb3VyY2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNlTG9hZGVy
KQogICAgICAgICBBU1NFUlQobV9vcmlnaW5hbFJlcXVlc3QpOwogICAgICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKIAotICAgICAg
ICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3Jl
YXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgICAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKCZmcmFtZSwgaWRlbnRpZmllciwgZnJhbWVM
b2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZTo6QmVhY29uKTsKIAogICAgICAgICBwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+c3RhcnRQaW5nTG9hZChmcmFtZSwgcmVxdWVzdCwgbV9vcmln
aW5hbFJlcXVlc3QtPmh0dHBIZWFkZXJGaWVsZHMoKSwgbV9vcHRpb25zLCBtX29wdGlvbnMuY29u
dGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbiwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZN
b3ZlKHByb3RlY3RlZFRoaXMpLCBwcm90ZWN0ZWRGcmFtZSA9IG1ha2VSZWYoZnJhbWUpLCBpZGVu
dGlmaWVyXSAoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5oCmluZGV4IDVmOTU2OWVjYWIxM2NmYzJmZmFjZTdmZjExZTc4NjE3MmVlZTczMDAuLjM5
NjAwMjgzMmNjMTUzYzU5MDQ3OGNhMjUxODEzZTZjMDM1YmMyNzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5j
bHVkZSAiRnJhbWVMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNp
bmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVy
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAg
LTI4Niw3ICsyODcsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0cnlSZXBs
YWNlRW5jb2RlZERhdGEoU2hhcmVkQnVmZmVyJik7CiAjZW5kaWYKIAotICAgIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIoKSBjb25zdCB7IHJldHVy
biBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOyB9CisgICAgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
cjsgfQogCiAgICAgdm9pZCBzZXRPcmlnaW5hbFJlcXVlc3Qoc3RkOjp1bmlxdWVfcHRyPFJlc291
cmNlUmVxdWVzdD4mJiBvcmlnaW5hbFJlcXVlc3QpIHsgbV9vcmlnaW5hbFJlcXVlc3QgPSBXVEZN
b3ZlKG9yaWdpbmFsUmVxdWVzdCk7IH0KICAgICBjb25zdCBzdGQ6OnVuaXF1ZV9wdHI8UmVzb3Vy
Y2VSZXF1ZXN0PiYgb3JpZ2luYWxSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW5hbFJl
cXVlc3Q7IH0KQEAgLTM0Miw3ICszNDMsNyBAQCBwcml2YXRlOgogICAgIFBBTDo6U2Vzc2lvbklE
IG1fc2Vzc2lvbklEOwogICAgIFJlZlB0cjxjb25zdCBDb29raWVKYXI+IG1fY29va2llSmFyOwog
ICAgIFdhbGxUaW1lIG1fcmVzcG9uc2VUaW1lc3RhbXA7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lk
ZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OworICAgIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
OwogCiAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZUNsaWVudCosIHN0ZDo6dW5pcXVlX3B0cjxD
YWxsYmFjaz4+IG1fY2xpZW50c0F3YWl0aW5nQ2FsbGJhY2s7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dFNvdXJjZS5jcHAKaW5kZXggN2I3N2U0MDdlZTVkMDhhYjM3ODRkMDg5OWNmYTMzZjAxNzdmMDY0
OC4uNjAyNjMxYmI3Y2QxMDg2MGIxYTMxMjEwNDNjOTdkOGVmZTQ0NzYxZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudFNvdXJjZS5jcHAKQEAgLTE4OCw3ICsxODgsNyBAQCBib29sIEV2ZW50U291cmNl
OjpyZXNwb25zZUlzVmFsaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX3N0
YXRlID09IENPTk5FQ1RJTkcpOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdodCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWlu
dDhfdCogZGF0YSwgaW50IGxlbmd0aCkKICAgICBwYXJzZUV2ZW50U3RyZWFtKCk7CiB9CiAKLXZv
aWQgRXZlbnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgRXZl
bnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewog
ICAgIEFTU0VSVChtX3N0YXRlID09IE9QRU4pOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdo
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmgKaW5kZXggZTEwZDhkOTE2ZmIwZjI1ZmJlYTNm
N2FjMmFmNTVmNTcwYjIwZGNhNi4uZDAxMmQzNzdkMTk3Njc1ZjBmZTExNDVmMTcxOWYxN2ZkZGJm
ZWEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaApAQCAtODMsOSArODMsOSBAQCBwcml2
YXRlOgogICAgIHZvaWQgZG9FeHBsaWNpdExvYWRDYW5jZWxsYXRpb24oKTsKIAogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25l
ZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50
KSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgZmluYWw7
CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmlu
YWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAg
IC8vIEFjdGl2ZURPTU9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwCmluZGV4IGM0OGEy
OTZjY2MwMmU1N2JjMmRiZDYwMTc0NDQ1OTdjYzlhYTMwZDcuLmU5N2EwNThkZjZjOGJkMmZhZDNj
MWEzYjI4M2RmN2U2Njk3OTUxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKQEAgLTE5
Niw3ICsxOTYsNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGJvb2wg
aXNPbkxpbmUpCiAgICAgbV9jb250ZXh0UHJveHkubm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGlz
T25MaW5lKTsKIH0KIAotdm9pZCBXb3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBX
b3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgY29uc3QgVVJM
JiByZXNwb25zZVVSTCA9IHJlc3BvbnNlLnVybCgpOwogICAgIGlmICghcmVzcG9uc2VVUkwucHJv
dG9jb2xJc0Jsb2IoKSAmJiAhcmVzcG9uc2VVUkwucHJvdG9jb2xJcygiZmlsZSIpICYmICFTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKHJlc3BvbnNlVVJMKS0+aXNVbmlxdWUoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlci5oCmluZGV4IGMzMWU3OWJkNTVmZjgyMDhmYzdiNDJkN2U5ODJiYzNkNTFhY2IxMjMu
LmJkMjllNTdmZTRmMmEyNjc4MzU4ZmVkMWUxNzNhZmMyYmQ2ODdlYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuaApAQCAtODcsNyArODcsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBub3RpZnlO
ZXR3b3JrU3RhdGVDaGFuZ2UoYm9vbCBpc09ubGluZSk7CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeUZp
bmlzaGVkKCkgZmluYWw7CiAKICAgICAvLyBBY3RpdmVET01PYmplY3QuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKaW5kZXggZmFiYmQwM2Vi
MGFkYzEyMDRlMTA0MWExMDhlMDViNzZlNDU0NTUwNy4uZjE1N2QzMDk3ZGY2OTg3YTRiNjM0Yjdm
ZDYzMzM5ZTkwOWQ4NmU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJGb250TG9hZFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
Rm9udExvYWRSZXF1ZXN0LmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgV29ya2VyRm9udExv
YWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBjbGllbnQpCiAgICAg
fQogfQogCi12b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmIChyZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYgcmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSkKICAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKQEAgLTEyMiw3ICsxMjIsNyBA
QCB2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhf
dCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCiAgICAgbV9kYXRhLT5hcHBlbmQoZGF0YSwgZGF0YUxl
bmd0aCk7CiB9CiAKLXZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5n
KHVuc2lnbmVkIGxvbmcpCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9pc0xvYWRpbmcgPSBmYWxz
ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgK
aW5kZXggMTVjNDUxMzgwMDUwNGFiMDNkNDkxNzliYjU0ZTgyMDBlMmQ0OTk4ZC4uYWY2OTIwNjMw
MmRjMWJhZWQ1OTkwNDRlN2I3NjVlN2JjNTAyOGY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC02MCw5ICs2MCw5IEBAIHByaXZhdGU6
CiAKICAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgZmluYWwgeyByZXR1
cm4gdHJ1ZTsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBk
YXRhLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAgIFVSTCBtX3VybDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCBlNDc5
ZGRlYTA0ZWE1ZTFlMjY2ZTUxNWFmOTJjZWQzZjk5NTdlYzU2Li5iOTcwY2RlNDFlN2M1NDExMjEw
MjUyZTY1YTE4ZTQxYzZiOTM5ZDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oCkBAIC01NCw4ICs1NCw2IEBAIHB1YmxpYzoK
ICAgICBKU0M6OlZNJiB2bSgpIGZpbmFsOwogICAgIFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXIm
IGluc3BlY3RvckNvbnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiAqbV9pbnNwZWN0b3JDb250cm9s
bGVyOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKSB7IHJl
dHVybiBtX3VuaXF1ZUlkZW50aWZpZXIrKzsgfQotCiAgICAgU2NyaXB0TW9kdWxlTG9hZGVyJiBt
b2R1bGVMb2FkZXIoKSB7IHJldHVybiAqbV9tb2R1bGVMb2FkZXI7IH0KIAogICAgIC8vIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQuCkBAIC05OSw3ICs5Nyw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFdvcmtlckV2ZW50TG9vcD4gbV9ldmVudExvb3A7CiAgICAgc3RkOjp1bmlxdWVfcHRyPEV2ZW50
TG9vcFRhc2tHcm91cD4gbV9kZWZhdWx0VGFza0dyb3VwOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxX
b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyPiBtX2luc3BlY3RvckNvbnRyb2xsZXI7Ci0gICAgdW5z
aWduZWQgbG9uZyBtX3VuaXF1ZUlkZW50aWZpZXIgeyAxIH07CiAgICAgYm9vbCBtX2lzQ2xvc2lu
ZyB7IGZhbHNlIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclNjcmlwdExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlw
dExvYWRlci5jcHAKaW5kZXggNzNhZTdhYmI3MTNjNmFmNjk0NWI4ZDUxZTBhMGU3Zjk3OWIxMTVm
MS4uYmY1YTQ0ZmUzNDhkMmZmY2U5MTZmYjE5NDkxNWU2N2JmZGE5YWVjMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNwcApAQCAtMTc4LDcgKzE3OCw3
IEBAIFJlc291cmNlRXJyb3IgV29ya2VyU2NyaXB0TG9hZGVyOjp2YWxpZGF0ZVdvcmtlclJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBX
b3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3JrZXJTY3Jp
cHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9lcnJv
ciA9IHZhbGlkYXRlV29ya2VyUmVzcG9uc2UocmVzcG9uc2UsIG1fZGVzdGluYXRpb24pOwogICAg
IGlmICghbV9lcnJvci5pc051bGwoKSkgewpAQCAtMjIxLDcgKzIyMSw3IEBAIHZvaWQgV29ya2Vy
U2NyaXB0TG9hZGVyOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgbGVu
KQogICAgIG1fc2NyaXB0LmFwcGVuZChtX2RlY29kZXItPmRlY29kZShkYXRhLCBsZW4pKTsKIH0K
IAotdm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQordm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKG1fZmFpbGVk
KSB7CiAgICAgICAgIG5vdGlmeUVycm9yKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJTY3JpcHRMb2FkZXIuaAppbmRleCAzZWU0ZGE2YzUwNmNiZmQ2ZWI4NzVkOWMyNzQ5OGYxM2Yz
YzdhMTE5Li5lYTUzODBmYmVlZjg3NTQwMzE2YTZmYTkyNzhjYzIxN2M4OTMxNGUwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmgKQEAgLTc1LDEyICs3NSwx
MiBAQCBwdWJsaWM6CiAgICAgY29uc3QgQ2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8o
KSBjb25zdCB7IHJldHVybiBtX2NlcnRpZmljYXRlSW5mbzsgfQogICAgIGNvbnN0IFN0cmluZyYg
cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VNSU1FVHlwZTsgfQog
ICAgIGJvb2wgZmFpbGVkKCkgY29uc3QgeyByZXR1cm4gbV9mYWlsZWQ7IH0KLSAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQogICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKCkgY29uc3QgeyByZXR1
cm4gbV9lcnJvcjsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
Y2FuY2VsKCk7CkBAIC0xMTAsNyArMTEwLDcgQEAgcHJpdmF0ZToKICAgICBDb250ZW50U2VjdXJp
dHlQb2xpY3lSZXNwb25zZUhlYWRlcnMgbV9jb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgU3Ry
aW5nIG1fcmVmZXJyZXJQb2xpY3k7CiAgICAgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSBtX2Ny
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3k7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIg
eyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBi
b29sIG1fZmFpbGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fZmluaXNoaW5nIHsgZmFsc2UgfTsK
ICAgICBib29sIG1faXNSZWRpcmVjdGVkIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlckNsaWVudC5oCmluZGV4IDI3NGNlNDhlMWQ2ZjNm
YjA2OTRkMjI1NmQxNmYzNWVhYTM1OTc2NWYuLjE1YjMyNWU0NzVmNGM5YmJiNGYyOTgyODgxZTQ1
N2Y2YzRjZmY3NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2Ny
aXB0TG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaApAQCAtMzIsNyArMzIsNyBAQCBjbGFzcyBSZXNvdXJjZVJlc3BvbnNl
OwogCiBjbGFzcyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQgewogcHVibGljOgotICAgIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZCgpID0gMDsKIAogcHJvdGVjdGVk
OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJKb2IuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuY3BwCmluZGV4IDg2N2I4Njk0NzUzNDRmY2UzM2NjZGE5OWY3ZWM5MGNmNDc3MTNkNWIuLjY5
ZWY5ZDcwN2ZjNDNkNDdjMmUyMjY1YWExNDk2MzRlM2JiMDE4ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAKQEAgLTE0MCw3
ICsxNDAsNyBAQCBSZXNvdXJjZUVycm9yIFNlcnZpY2VXb3JrZXJKb2I6OnZhbGlkYXRlU2Vydmlj
ZVdvcmtlclJlc3BvbnNlKGNvbnN0IFNlcnZpY2VXb3JrZQogICAgIHJldHVybiB7IH07CiB9CiAK
LXZvaWQgU2VydmljZVdvcmtlckpvYjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBTZXJ2aWNlV29ya2VySm9i
OjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBBU1NFUlQobV9jcmVhdGlvblRocmVhZC5w
dHIoKSA9PSAmVGhyZWFkOjpjdXJyZW50KCkpOwogICAgIEFTU0VSVCghbV9jb21wbGV0ZWQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
aW5kZXggMDdjY2I3NDcwMmU1NDAwNjUwYTY2Mjg1NDNlODMzYzU0NjRmOWJiYi4uN2M1OGE0NmMy
NDIwNTgyMGFiMDEwOWMxZTUzY2M2ZGVhZGJlYmY4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCkBAIC03NCw3ICs3NCw3IEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICAvLyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQKLSAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAg
ICB2b2lkIG5vdGlmeUZpbmlzaGVkKCkgZmluYWw7CiAKICAgICBTZXJ2aWNlV29ya2VySm9iQ2xp
ZW50JiBtX2NsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDI1
YmY4MjAwOWUzYWE4MmMxMzhjMTc1NzAyYjY0MGE0N2FiM2Y5OWEuLjYyZjcwZWViODAxZDg0ODRl
MWE0ODk1ZjdkMzQ2YzFiNGU0Yzc4ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9Y
TUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0
LmNwcApAQCAtOTI2LDcgKzkyNiw3IEBAIHZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiAgICAgbmV0d29ya0Vycm9yKCk7CiB9CiAKLXZvaWQg
WE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgWE1M
SHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIGF1dG8gcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOwogCkBAIC05NzAsNyAr
OTcwLDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBs
b25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb24KICAgICB9CiB9CiAKLXZvaWQgWE1MSHR0
cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQogewogICAgIG1fcmVzcG9uc2UgPSByZXNwb25zZTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmgKaW5kZXggYzA0YTE2ODk2MDliNmZiOTFhNjgwYzk4ZjdlMDczMmE3NDhm
OWVmMi4uOGY2ZTg5MjYwZGVjMTY3NWVkZmNlZjU4NGIwMzBkODZjNzY2ODgzOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKQEAgLTE2MSw5ICsxNjEsOSBAQCBwcml2YXRlOgogCiAg
ICAgLy8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAogICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWdu
ZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0Jl
U2VudCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sKSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRl
eCA1ZGQ4YjM1NjgzZDU4OGYxZTdkNzJjYjE4MTIzYzI2Njc2NWRlNjIzLi5iYjA1ZjBlZTUyNGY1
NTQ3MjJlM2VhYTdlZTVkZDFiMGUxYTRlNWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNw
cApAQCAtMjA2LDcgKzIwNiw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvCiAgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBSRUxFQVNFX0FTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGRlY29kZXIuZGVzdGlu
YXRpb25JRCgpKTsKLSAgICAgICAgaWYgKGF1dG8qIGxvYWRlciA9IG1fbmV0d29ya1Jlc291cmNl
TG9hZGVycy5nZXQoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKQorICAgICAgICBpZiAoYXV0byog
bG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldChtYWtlT2JqZWN0SWRlbnRpZmll
cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4oZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKSkKICAg
ICAgICAgICAgIGxvYWRlci0+ZGlkUmVjZWl2ZU5ldHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00NTksNyAr
NDU5LDcgQEAgTmV0d29ya1Nlc3Npb24qIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpu
ZXR3b3JrU2Vzc2lvbigpCiAKIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVm
ZXJlbmNlPj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc29sdmVCbG9iUmVmZXJl
bmNlcyhjb25zdCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYgbG9hZFBhcmFtZXRlcnMp
CiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
cik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
ci50b1VJbnQ2NCgpKTsKIAogICAgIGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbigpOwog
ICAgIGlmICghc2Vzc2lvbikKQEAgLTQ4OCw3ICs0ODgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8U2Vy
dmljZVdvcmtlckZldGNoVGFzaz4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0
ZUZldAogCiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291
cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzLCBz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlzdGluZ0xvYWRl
clRvUmVzdW1lKQogewotICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciwgZXhpc3RpbmdM
b2FkZXJUb1Jlc3VtZS52YWx1ZV9vcihOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllciB7IH0p
LnRvVUludDY0KCkpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgp
LCBleGlzdGluZ0xvYWRlclRvUmVzdW1lLnZhbHVlX29yKE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyIHsgfSkudG9VSW50NjQoKSk7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAg
ICAgYXV0byYgc2VydmVyID0gbV9uZXR3b3JrUHJvY2Vzcy0+c3dTZXJ2ZXJGb3JTZXNzaW9uKG1f
c2Vzc2lvbklEKTsKQEAgLTUzMiw3ICs1MzIsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYQog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwZXJmb3JtU3luY2hyb25vdXNM
b2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UGVyZm9ybVN5bmNocm9ub3VzTG9h
ZDo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAicGVyZm9ybVN5bmNocm9ub3VzTG9hZDogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5
SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQg
IiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxv
YWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCks
IGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0co
TG9hZGluZywgInBlcmZvcm1TeW5jaHJvbm91c0xvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94
eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0
ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgp
LCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBpZGVu
dGlmaWVyID0gbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcjsKICAgICBSRUxFQVNFX0FTU0VSVChp
ZGVudGlmaWVyKTsKQEAgLTU1NCw3ICs1NTQsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjp0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGbwog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpsb2FkUGluZyhOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQogewotICAgIENPTk5FQ1RJT05f
UkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRQaW5nOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJ
RD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAi
LCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2Vi
UGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwg
bG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAibG9hZFBpbmc6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9
IFtjb25uZWN0aW9uID0gbV9jb25uZWN0aW9uLCBpZGVudGlmaWVyID0gbG9hZFBhcmFtZXRlcnMu
aWRlbnRpZmllcl0gKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkgewogICAgICAgICBjb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OkRpZEZpbmlzaFBpbmdMb2FkKGlkZW50aWZpZXIsIGVy
cm9yLCByZXNwb25zZSksIDApOwpAQCAtNTc0LDcgKzU3NCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OmNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoSFRUUENvb2tpZUFj
Y2VwdFBvCiAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb246OkNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQobmV3UG9saWN5KSwgMCk7CiB9CiAK
LXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVy
KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFJFTEVBU0VfQVNTRVJUKGlkZW50aWZp
ZXIpOwogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTU4Nyw3ICs1
ODcsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZW1vdmVMb2FkSWRl
bnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyCiAKICAgICAvLyBBYm9ydCB0aGUgbG9hZCBu
b3csIGFzIHRoZSBXZWJQcm9jZXNzIHdvbid0IGJlIGFibGUgdG8gcmVzcG9uZCB0byBtZXNzYWdl
cyBhbnkgbW9yZSB3aGljaCBtaWdodCBsZWFkCiAgICAgLy8gdG8gbGVha2VkIGxvYWRlciByZXNv
dXJjZXMgKGNvbm5lY3Rpb25zLCB0aHJlYWRzLCBldGMpLgotICAgIENPTk5FQ1RJT05fUkVMRUFT
RV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVudGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVy
ICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3JyZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZp
ZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVu
dGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVyICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3Jy
ZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgbG9hZGVyLT5h
Ym9ydCgpOwogICAgIEFTU0VSVCghbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlk
ZW50aWZpZXIpKTsKIH0KQEAgLTYyNyw5ICs2MjcsOSBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOjpzZW5kSDJQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYg
cAogI2VuZGlmCiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNv
bm5lY3RUbyhzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwg
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycykKK3ZvaWQgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNvbm5lY3RUbyhzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIs
IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiB7Ci0gICAg
Q09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElE
PSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFt
ZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJz
LnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1l
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElP
Tl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElEPSVkLCBwYWdl
UHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBS
SXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJ
RCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRl
cnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIEFTU0VS
VCghbG9hZFBhcmFtZXRlcnMucmVxdWVzdC5odHRwQm9keSgpKTsKIApAQCAtNjU3LDEyICs2NTcs
MTIgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHByZWNvbm4KICAgICBjb21wbGV0aW9uSGFuZGxlcihpbnRl
cm5hbEVycm9yKGxvYWRQYXJhbWV0ZXJzLnJlcXVlc3QudXJsKCkpKTsKIH0KIAotdm9pZCBOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZCh1aW50NjRf
dCBsb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmlzUmVzb3VyY2VMb2FkRmlu
aXNoZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQogewogICAgIGNhbGxiYWNr
KCFtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMobG9hZElkZW50aWZpZXIpKTsKIH0K
IAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVj
dGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQ
cmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0
aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKCFt
X2Nvbm5lY3Rpb24tPmlzVmFsaWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjgzLDcgKzY4Myw3
IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0YXJ0RG93bmxvYWQoRG93
bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSCiAgICAgbV9uZXR3b3JrUHJvY2Vzcy0+ZG93bmxv
YWRNYW5hZ2VyKCkuc3RhcnREb3dubG9hZChtX3Nlc3Npb25JRCwgZG93bmxvYWRJRCwgcmVxdWVz
dCwgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiwgc3VnZ2VzdGVkTmFtZSk7CiB9CiAKLXZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgRG93bmxvYWRJ
RCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKQordm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgRG93bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlv
bmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluKQogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIApAQCAtNjkz
LDcgKzY5Myw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRN
YWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGxvYWRlciA9IG1fbmV0d29ya1Jlc291
cmNlTG9hZGVycy5nZXQobWFpblJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIE5ldHdvcmtS
ZXNvdXJjZUxvYWRlciogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldCgqbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIpOwogICAgIGlmICghbG9hZGVyKSB7CiAgICAgICAgIC8v
IElmIHdlJ3JlIHRyeWluZyB0byBkb3dubG9hZCBhIGJsb2IgaGVyZSBsb2FkZXIgY2FuIGJlIG51
bGwuCiAgICAgICAgIHJldHVybjsKQEAgLTEwMjksNyArMTAyOSw3IEBAIHZvaWQgTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dMaXN0cygpCiAgICAg
U2VjdXJpdHlQb2xpY3k6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dsaXN0cygpOwogfQogCi1zdGQ6
Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwg
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlzVG9wUmVzb3VyY2UpCitz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJ
RCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNU
b3BSZXNvdXJjZSkKIHsKICAgICBpZiAobV9zZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAgLTEwODAsNyArMTA4MCw3IEBAIHN0ZDo6b3B0aW9u
YWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnN0YXJ0VHJhY2tpCiAgICAgcmV0dXJuIG5ld0FjdGl2aXR5VHJhY2tlci5uZXR3b3JrQWN0aXZp
dHk7CiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2lu
Z1Jlc291cmNlTG9hZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtB
Y3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRpb25Db2RlIGNvZGUpCit2b2lkIE5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNv
bXBsZXRpb25Db2RlIGNvZGUpCiB7CiAgICAgYXV0byBpdGVtSW5kZXggPSBmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihyZXNvdXJjZUlEKTsKICAgICBpZiAoaXRlbUluZGV4ID09IG5vdEZvdW5k
KQpAQCAtMTExNyw3ICsxMTE3LDcgQEAgc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpmaW5kUm9vdE5ldHdvcmtBY3Rpdml0eShQYWdlSWRlbnRpZmllciBwYWcKICAgICB9KTsK
IH0KIAotc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCitzaXplX3Qg
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmROZXR3b3JrQWN0aXZpdHlUcmFja2Vy
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogewogICAgIHJl
dHVybiBtX25ldHdvcmtBY3Rpdml0eVRyYWNrZXJzLmZpbmRNYXRjaGluZyhbJl0oY29uc3QgYXV0
byYgaXRlbSkgewogICAgICAgICByZXR1cm4gaXRlbS5yZXNvdXJjZUlEID09IHJlc291cmNlSUQ7
CkBAIC0xMjY4LDcgKzEyNjgsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
OjpzZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlSQogICAgIHNlc3Np
b24tPm5ldHdvcmtMb2FkU2NoZWR1bGVyKCkuc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUo
cGFnZUlkZW50aWZpZXIsIG1vZGUpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRp
Zmllcj4gbG9hZElkZW50aWZpZXJzKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcj4mIGxvYWRJZGVudGlmaWVycykKIHsKICAgICBhdXRvKiBzZXNzaW9u
ID0gbmV0d29ya1Nlc3Npb24oKTsKICAgICBpZiAoIXNlc3Npb24pCkBAIC0xMjg1LDcgKzEyODUs
NyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0aXplUmVzb3Vy
Y2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSQogICAgIHNlc3Npb24tPm5ldHdvcmtMb2FkU2No
ZWR1bGVyKCkucHJpb3JpdGl6ZUxvYWRzKGxvYWRzKTsKIH0KIAotUmVmUHRyPE5ldHdvcmtSZXNv
dXJjZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrUmVz
b3VyY2VMb2FkZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKK1JlZlB0cjxOZXR3
b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp0YWtlTmV0
d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKQogewogICAgIGlmICghTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6
TWFwVHlwZTo6aXNWYWxpZEtleShyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKaW5kZXggZTk4YTJlNWRhMTVmNmIw
OGRkMjUwYmU5OGI2ZjhmYWI1MzM0MWE0Yy4uZDE2MWNmOTZjNGM1ZDlhZDEzMDk0OTYyZTE5OTFh
NWY0ZWZkODBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtODcsNyArODcsNiBAQCBj
bGFzcyBOZXR3b3JrU29ja2V0U3RyZWFtOwogY2xhc3MgU2VydmljZVdvcmtlckZldGNoVGFzazsK
IGNsYXNzIFdlYlNXU2VydmVyQ29ubmVjdGlvbjsKIGNsYXNzIFdlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbjsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKIAog
bmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiBzdHJ1Y3QgRGF0YUtleTsKQEAgLTEyNSwzNCArMTI0
LDM0IEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFudXBGb3JTdXNwZW5zaW9uKEZ1bmN0aW9uPHZv
aWQoKT4mJik7CiAgICAgdm9pZCBlbmRTdXNwZW5zaW9uKCk7CiAKLSAgICB2b2lkIGdldE5ldHdv
cmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZShSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbmZvcm1h
dGlvblJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICB7CiAgICAgICAgIGlmIChhdXRvKiBpbmZvID0g
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5nZXQoaWRlbnRpZmllcikpCiAgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoaW5mby0+cmVzcG9uc2UpOwogICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0pOwogICAgIH0KIAotICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbnRl
cm1lZGlhdGVJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2Fj
dGlvbkluZm9ybWF0aW9uPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0
d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiAgICAgewogICAgICAgICBpZiAoYXV0byogaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZv
cm1hdGlvbkJ5SUQuZ2V0KGlkZW50aWZpZXIpKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGluZm8tPnRyYW5zYWN0aW9ucyk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KHsgfSk7CiAgICAgfQogCi0gICAgdm9pZCB0YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJp
Y3MoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQorICAgIHZvaWQgdGFrZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogICAgIHsKICAgICAgICAgaWYgKGF1dG8gaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQudGFrZShpZGVudGlmaWVyKSkKICAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihpbmZvLT5tZXRyaWNzKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsK
ICAgICB9CiAKLSAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb24oUmVzb3VyY2VMb2Fk
SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uJiYg
aW5mb3JtYXRpb24pCisgICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9h
ZEluZm9ybWF0aW9uJiYgaW5mb3JtYXRpb24pCiAgICAgewogICAgICAgICBBU1NFUlQoIW1fbmV0
d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgICAgICBt
X25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmFkZChpZGVudGlmaWVyLCBtYWtlVW5pcXVlPFdl
YkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24+KFdURk1vdmUoaW5mb3JtYXRpb24pKSk7CiAg
ICAgfQogCi0gICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0
cmljcyYgbWV0cmljcykKKyAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNz
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiAgICAgewogICAgICAgICBBU1NFUlQo
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAg
ICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuZW5zdXJlKGlkZW50aWZpZXIsIFtdIHsK
QEAgLTE2MCwxMyArMTU5LDEzIEBAIHB1YmxpYzoKICAgICAgICAgfSkuaXRlcmF0b3ItPnZhbHVl
LT5tZXRyaWNzID0gbWV0cmljczsKICAgICB9CiAKLSAgICB2b2lkIHJlbW92ZU5ldHdvcmtMb2Fk
SW5mb3JtYXRpb24oUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQorICAgIHZvaWQg
cmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlv
bkJ5SUQucmVtb3ZlKGlkZW50aWZpZXIpOwogICAgIH0KIAotICAgIHN0ZDo6b3B0aW9uYWw8TmV0
d29ya0FjdGl2aXR5VHJhY2tlcj4gc3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllciwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlz
VG9wUmVzb3VyY2UpOwotICAgIHZvaWQgc3RvcFRyYWNraW5nUmVzb3VyY2VMb2FkKFJlc291cmNl
TG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxl
dGlvbkNvZGUpOworICAgIHN0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gc3Rh
cnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSk7
CisgICAgdm9pZCBzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRp
b25Db2RlKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVmZXJl
bmNlPj4gcmVzb2x2ZUJsb2JSZWZlcmVuY2VzKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzJik7CiAKQEAgLTE4NywxMiArMTg2LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIGNvb2tp
ZUFjY2VwdFBvbGljeUNoYW5nZWQoV2ViQ29yZTo6SFRUUENvb2tpZUFjY2VwdFBvbGljeSk7CiAK
ICAgICB2b2lkIGJyb2FkY2FzdENvbnNvbGVNZXNzYWdlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlND
OjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7Ci0gICAgUmVmUHRyPE5ldHdv
cmtSZXNvdXJjZUxvYWRlcj4gdGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcih1aW50NjRfdCByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiB0
YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cik7CiAKIHByaXZhdGU6CiAgICAgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoTmV0d29y
a1Byb2Nlc3MmLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgUEFMOjpTZXNzaW9uSUQsIElQ
Qzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7CiAKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5l
Y3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uKiBzdG9yYWdlU2Vzc2lvbigpOwogCiAgICAgLy8gSVBDOjpDb25uZWN0aW9uOjpDbGllbnQK
QEAgLTIxMSwxNSArMjEwLDE1IEBAIHByaXZhdGU6CiAgICAgdm9pZCBsb2FkUGluZyhOZXR3b3Jr
UmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmKTsKICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0
cmluZyYpOwogICAgIHZvaWQgc2VuZEgyUGluZyhOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVy
cyYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFdURjo6U2Vjb25kcywgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvcj4mJik+JiYpOwotICAgIHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0
aW9uYWw8dWludDY0X3Q+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQodWludDY0
X3QgbG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAg
IHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMmJik7CisgICAgdm9pZCBpc1Jlc291cmNlTG9hZEZpbmlzaGVkKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CiAKLSAgICB2b2lkIHJlbW92ZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIHZvaWQgcmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKTsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVu
dGlmaWVyKTsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViUGFnZVByb3h5SWRl
bnRpZmllciwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmll
cik7Ci0gICAgdm9pZCBjcm9zc09yaWdpblJlZGlyZWN0UmVjZWl2ZWQoUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgY29uc3QgVVJMJiByZWRpcmVjdFVSTCk7CisgICAgdm9pZCBjcm9zc09yaWdpblJl
ZGlyZWN0UmVjZWl2ZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBV
UkwmIHJlZGlyZWN0VVJMKTsKICAgICB2b2lkIHN0YXJ0RG93bmxvYWQoRG93bmxvYWRJRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9B
cHBCb3VuZERvbWFpbj4sIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IHsgfSk7Ci0gICAg
dm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBzdGQ6Om9wdGlvbmFsPE5h
dmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPik7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwg
c3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4pOwogCiAgICAgdm9pZCBy
ZWdpc3RlclVSTFNjaGVtZXNBc0NPUlNFbmFibGVkKFZlY3RvcjxTdHJpbmc+JiYgc2NoZW1lcyk7
CiAKQEAgLTMyNyw3ICszMjYsNyBAQCBwcml2YXRlOgogICAgICAgICB7CiAgICAgICAgIH0KIAot
ICAgICAgICBSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgcGFnZUlELCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCisgICAgICAg
IFJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBw
YWdlSUQsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogICAg
ICAgICAgICAgOiBwYWdlSUQgeyBwYWdlSUQgfQogICAgICAgICAgICAgLCByZXNvdXJjZUlEIHsg
cmVzb3VyY2VJRCB9CiAgICAgICAgICAgICAsIG5ldHdvcmtBY3Rpdml0eSB7IE5ldHdvcmtBY3Rp
dml0eVRyYWNrZXI6OkxhYmVsOjpMb2FkUmVzb3VyY2UgfQpAQCAtMzM1LDcgKzMzNCw3IEBAIHBy
aXZhdGU6CiAgICAgICAgIH0KIAogICAgICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdl
SUQ7Ci0gICAgICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCB7IDAgfTsKKyAg
ICAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQ7CiAgICAg
ICAgIGJvb2wgaXNSb290QWN0aXZpdHkgeyBmYWxzZSB9OwogICAgICAgICBOZXR3b3JrQWN0aXZp
dHlUcmFja2VyIG5ldHdvcmtBY3Rpdml0eTsKICAgICB9OwpAQCAtMzQzLDEyICszNDIsMTIgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHN0b3BBbGxOZXR3b3JrQWN0aXZpdHlUcmFja2luZygpOwogICAg
IHZvaWQgc3RvcEFsbE5ldHdvcmtBY3Rpdml0eVRyYWNraW5nRm9yUGFnZShXZWJDb3JlOjpQYWdl
SWRlbnRpZmllcik7CiAgICAgc2l6ZV90IGZpbmRSb290TmV0d29ya0FjdGl2aXR5KFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyKTsKLSAgICBzaXplX3QgZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIo
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlEKTsKKyAgICBzaXplX3QgZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291
cmNlSUQpOwogCiAgICAgdm9pZCBoYXNVcGxvYWRTdGF0ZUNoYW5nZWQoYm9vbCk7CiAKICAgICB2
b2lkIHNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVy
LCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUpOwotICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291
cmNlTG9hZHMoVmVjdG9yPFJlc291cmNlTG9hZElkZW50aWZpZXI+KTsKKyAgICB2b2lkIHByaW9y
aXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+Jik7CiAKICNpZiBFTkFCTEUoQVBQTEVfUEFZX1JFTU9URV9VSSkKICAgICBXZWJQ
YXltZW50Q29vcmRpbmF0b3JQcm94eSYgcGF5bWVudENvb3JkaW5hdG9yKCk7CkBAIC0zNzUsNyAr
Mzc0LDcgQEAgcHJpdmF0ZToKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPFdlYkNvcmU6OkJs
b2JEYXRhRmlsZVJlZmVyZW5jZT4+IG1fYmxvYkRhdGFGaWxlUmVmZXJlbmNlczsKICAgICBWZWN0
b3I8UmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBtX25ldHdvcmtBY3Rpdml0eVRyYWNr
ZXJzOwogCi0gICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8V2ViQ29yZTo6TmV0d29ya0xvYWRJbmZvcm1hdGlvbj4+IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQ7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uPj4gbV9uZXR3
b3JrTG9hZEluZm9ybWF0aW9uQnlJRDsKIAogCiAjaWYgVVNFKExJQldFQlJUQykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDE1ZGE2YWJmYzUzODY5ZmQ0
Mzg2MjQ3Njk2ZmVhNTExYjZhOWRiOTIuLjc2ODJiYTliYjI5ZmY2ZjA4ZWJlYmI5NDNmYzg5NDU0
NjczNGMyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgpA
QCAtMjYsMTYgKzI2LDE2IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBQZXJmb3JtU3luY2hyb25vdXNMb2FkKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVzb3VyY2VMb2FkUGFyYW1ldGVycykgLT4g
KFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogICAgIFRlc3RQcm9j
ZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseShXZWJLaXQ6Oldl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlEKSAtPiAoYm9vbCBoYW5kbGVkKSBTeW5jaHJvbm91
cwogICAgIExvYWRQaW5nKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVz
b3VyY2VMb2FkUGFyYW1ldGVycykKLSAgICBSZW1vdmVMb2FkSWRlbnRpZmllcih1aW50NjRfdCBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorICAgIFJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQogICAgIFBh
Z2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCkKICAgICBC
cm93c2luZ0NvbnRleHRSZW1vdmVkKFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQ
YWdlUHJveHlJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgd2ViRnJhbWVJRCkKICAgICBQcmVmZXRjaEROUyhTdHJpbmcgaG9zdG5h
bWUpCiAgICAgU2VuZEgyUGluZyhXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
IHBhcmFtZXRlcnMpIC0+IChFeHBlY3RlZDxTZWNvbmRzLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
PiByZXN1bHQpIEFzeW5jCi0gICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKLSAgICBJc1Jlc291cmNlTG9hZEZpbmlzaGVkKHVpbnQ2
NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChib29sIGlzRmluaXNoZWQpIEFzeW5jCisg
ICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycyk7CisgICAgSXNSZXNvdXJjZUxvYWRGaW5pc2hl
ZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikgLT4gKGJvb2wgaXNGaW5pc2hlZCkgQXN5bmMKIAogICAgIFN0YXJ0RG93bmxvYWQoV2ViS2l0
OjpEb3dubG9hZElEIGRvd25sb2FkSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0
LCBlbnVtOmJvb2wgc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBTdHJpbmcgc3VnZ2VzdGVkTmFtZSkK
LSAgICBDb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIFdlYktpdDo6RG93bmxvYWRJRCBkb3dubG9hZElELCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgZW51bTpib29sIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikKKyAgICBDb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBXZWJLaXQ6OkRvd25sb2Fk
SUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIGVudW06Ym9vbCBzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4pCiAKICAgICBDb29raWVzRm9yRE9NKFVSTCBmaXJzdFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6
U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVybCwgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgZW51bTpib29sIFdl
YkNvcmU6OkluY2x1ZGVTZWN1cmVDb29raWVzIGluY2x1ZGVTZWN1cmVDb29raWVzLCBlbnVtOmJv
b2wgV2ViQ29yZTo6U2hvdWxkQXNrSVRQIHNob3VsZEFza0lUUCwgZW51bTpib29sIFdlYkNvcmU6
OlNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nKSAtPiAoU3RyaW5nIGNvb2tpZVN0cmluZywgYm9vbCBkaWRBY2Nlc3NT
ZWN1cmVDb29raWVzKSBTeW5jaHJvbm91cwogICAgIFNldENvb2tpZXNGcm9tRE9NKFVSTCBmaXJz
dFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVy
bCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlm
aWVyIHBhZ2VJRCwgZW51bTpib29sIFdlYkNvcmU6OlNob3VsZEFza0lUUCBzaG91bGRBc2tJVFAs
IFN0cmluZyBjb29raWVTdHJpbmcsIGVudW06Ym9vbCBXZWJDb3JlOjpTaG91bGRSZWxheFRoaXJk
UGFydHlDb29raWVCbG9ja2luZyBzaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZykK
QEAgLTc5LDkgKzc5LDkgQEAgbWVzc2FnZXMgLT4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFJlbW92ZU9yaWdpbkFjY2Vzc0FsbG93TGlzdEVudHJ5
KFN0cmluZyBzb3VyY2VPcmlnaW4sIFN0cmluZyBkZXN0aW5hdGlvblByb3RvY29sLCBTdHJpbmcg
ZGVzdGluYXRpb25Ib3N0LCBib29sIGFsbG93RGVzdGluYXRpb25TdWJkb21haW5zKTsKICAgICBS
ZXNldE9yaWdpbkFjY2Vzc0FsbG93TGlzdHMoKTsKIAotICAgIEdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZSh1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkgU3luY2hyb25vdXMKLSAgICBHZXROZXR3b3Jr
TG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZp
ZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IHRy
YW5zYWN0aW9ucykgU3luY2hyb25vdXMKLSAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1l
dHJpY3ModWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6Ok5ldHdv
cmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljcykgU3luY2hyb25vdXMKKyAgICBHZXROZXR3b3Jr
TG9hZEluZm9ybWF0aW9uUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlKSBTeW5jaHJvbm91cworICAgIEdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3Jt
YXRpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50
aWZpZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+
IHRyYW5zYWN0aW9ucykgU3luY2hyb25vdXMKKyAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlv
bk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElk
ZW50aWZpZXIpIC0+IChXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3Mp
IFN5bmNocm9ub3VzCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgRXN0YWJsaXNo
U1dDb250ZXh0Q29ubmVjdGlvbihXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFn
ZVByb3h5SUQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIGRvbWFpbikgLT4gKCkgQXN5bmMK
QEAgLTEwOCw1ICsxMDgsNSBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgVXBkYXRlQWN0aXZlUGFnZXMoU3RyaW5nIG5hbWUs
IFZlY3RvcjxTdHJpbmc+IGFjdGl2ZVBhZ2VzT3JpZ2lucywgYXVkaXRfdG9rZW5fdCBhdWRpdFRv
a2VuKQogI2VuZGlmCiAgICAgU2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6TG9hZFNjaGVk
dWxpbmdNb2RlIG1vZGUpCi0gICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9yPHVpbnQ2
NF90PiBsb2FkSWRlbnRpZmllcnMpCisgICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9y
PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbG9hZElkZW50aWZpZXJzKQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRl
eCA0ZGNiMzJjZGI3NTc1NjRiZmIwMjM0NTVmOWZmY2JhYWIzZGY2MWZjLi5jMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtMjg0MSw5ICsyODQxLDEyIEBAIFJUQ0Rh
dGFDaGFubmVsUmVtb3RlTWFuYWdlclByb3h5JiBOZXR3b3JrUHJvY2Vzczo6cnRjRGF0YUNoYW5u
ZWxQcm94eSgpCiB9CiAjZW5kaWYKIAotdm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRG
b3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJv
Y2Vzc0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmll
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxv
YWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNl
UHJvY2Vzc0lkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKLSAgICBBU1NFUlQocmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAg
aWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0KTsKKyAg
ICB9CiAgICAgYXV0byogY29ubmVjdGlvbiA9IHdlYlByb2Nlc3NDb25uZWN0aW9uKHNvdXJjZVBy
b2Nlc3NJZGVudGlmaWVyKTsKICAgICBpZiAoIWNvbm5lY3Rpb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwpAQCAtMjg1Miw3ICsyODU1LDcgQEAgdm9p
ZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29y
ZTo6UHJvY2Vzc0lkZW50aWZpZXIKICAgICBpZiAoIXNlc3Npb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCi0gICAgYXV0byBsb2FkZXIgPSBjb25u
ZWN0aW9uLT50YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKHJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIGF1dG8gbG9hZGVyID0gY29ubmVjdGlvbi0+dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRl
cigqcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpCiAgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKaW5kZXggMTA2MDIyY2U2ODUxOTc4MzBm
MjY1YWFiNjUzZDg0ZTAwZjg1MWNkOS4uYTY0YTAxZmY0ZmJkMmFlZTM2OWNlM2QxMzVkZTg3OGI5
NzQ0NTlkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuaApAQCAtNDIzLDcgKzQyMyw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBkaWRSZWNlaXZlU3lu
Y05ldHdvcmtQcm9jZXNzTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImLCBV
bmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYpOwogICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9j
ZXNzKE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgY3JlYXRl
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIs
IFBBTDo6U2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8SVBD
OjpBdHRhY2htZW50PiYmLCBXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KT4mJik7Ci0g
ICAgdm9pZCBwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNz
SWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQ
cm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lk
ZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CiAKICAgICB2b2lkIGZl
dGNoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+
LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2Vic2l0ZURhdGEmJik+JiYpOwogICAgIHZvaWQgZGVsZXRlV2Vic2l0ZURhdGEoUEFMOjpT
ZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBXYWxsVGltZSBtb2RpZmllZFNp
bmNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oLnJlaiBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaC5yZWoKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWEwNDVlODhh
ZDEzODk5OGE2NzVjM2YzY2U5NWY2NzdlZGFiOWFhMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaC5yZWoKQEAgLTAsMCArMSwz
NSBAQAorKioqKioqKioqKioqKioqCisqKiogMTA5LDExNCAqKioqCisgIGNsYXNzIE5ldHdvcmtQ
cm94aW1pdHlNYW5hZ2VyOworICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNz
IFN0b3JhZ2VNYW5hZ2VyU2V0OworICBjbGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb247CisgIGNs
YXNzIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjsKKyAgZW51bSBjbGFzcyBDYWxsRG93
bmxvYWREaWRTdGFydCA6IGJvb2w7CistLS0gMTA5LDExNSAtLS0tCisgIGNsYXNzIE5ldHdvcmtQ
cm94aW1pdHlNYW5hZ2VyOworICBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CisgIGNsYXNz
IFN0b3JhZ2VNYW5hZ2VyU2V0OworKyBjbGFzcyBXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnM7Cisg
IGNsYXNzIFdlYlNXU2VydmVyQ29ubmVjdGlvbjsKKyAgY2xhc3MgV2ViU1dTZXJ2ZXJUb0NvbnRl
eHRDb25uZWN0aW9uOworICBlbnVtIGNsYXNzIENhbGxEb3dubG9hZERpZFN0YXJ0IDogYm9vbDsK
KyoqKioqKioqKioqKioqKgorKioqIDQ1NSw0NjAgKioqKgorICAgICAgCisgICAgICB2b2lkIGZs
dXNoQ29va2llcyhjb25zdCBQQUw6OlNlc3Npb25JRCYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJik7CisgIAorICAjaWYgVVNFKFNPVVApCisgICAgICB2b2lkIHNldElnbm9yZVRMU0Vycm9y
cyhQQUw6OlNlc3Npb25JRCwgYm9vbCk7CisgICAgICB2b2lkIHVzZXJQcmVmZXJyZWRMYW5ndWFn
ZXNDaGFuZ2VkKGNvbnN0IFZlY3RvcjxTdHJpbmc+Jik7CistLS0gNDU2LDQ2NSAtLS0tCisgICAg
ICAKKyAgICAgIHZvaWQgZmx1c2hDb29raWVzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKKyAgCisrICAgICB2b2lkIGFkZFdlYlBhZ2VOZXR3b3Jr
UGFyYW1ldGVycyhjb25zdCBQQUw6OlNlc3Npb25JRCYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIs
IFdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyYmKTsKKysgICAgIHZvaWQgcmVtb3ZlV2ViUGFnZU5l
dHdvcmtQYXJhbWV0ZXJzKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiwgV2ViUGFnZVByb3h5SWRlbnRp
Zmllcik7CisrICAgICB2b2lkIGNvdW50Tm9uRGVmYXVsdFNlc3Npb25TZXRzKGNvbnN0IFBBTDo6
U2Vzc2lvbklEJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzaXplX3QpPiYmKTsKKysgCisgICNp
ZiBVU0UoU09VUCkKKyAgICAgIHZvaWQgc2V0SWdub3JlVExTRXJyb3JzKFBBTDo6U2Vzc2lvbklE
LCBib29sKTsKKyAgICAgIHZvaWQgdXNlclByZWZlcnJlZExhbmd1YWdlc0NoYW5nZWQoY29uc3Qg
VmVjdG9yPFN0cmluZz4mKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IGQ1OTU4OTM2ZmFlMTFlZDhiYjJh
MzczYTdkNGZmMGJkN2ZiMzRmNTEuLjlhYTllYWE5ZjEzMWIwMWY2NjliNTM4ODUwMDIyNmU0MzUy
YTFkMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtMTk2LDcgKzE5Niw3IEBAIG1lc3NhZ2VzIC0+IE5l
dHdvcmtQcm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBDbGVhckFwcFByaXZhY3lSZXBvcnRU
ZXN0aW5nRGF0YShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQpIC0+ICgpIEFzeW5jCiAjZW5kaWYK
IAotICAgIFByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJ
ZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyPiBuZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcikgQXN5bmMKKyAgICBQcmVw
YXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBz
b3VyY2VQcm9jZXNzSWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXI+IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFs
PFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IG5ldHdvcmtSZXNvdXJjZUxv
YWRJZGVudGlmaWVyKSBBc3luYwogCiAgICAgQWRkV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBh
Z2VJRCwgV2ViS2l0OjpXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnMgcGFyYW1ldGVycykKICAgICBS
ZW1vdmVXZWJQYWdlTmV0d29ya1BhcmFtZXRlcnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBX
ZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5jcHAKaW5kZXgg
ZGI5N2Y1NTJmZWU3YTM4OTE2NTFmM2JkZDZlNGFkZWU2MjQ3YTJlOS4uZjlhMmFhMjBkYjQzOTA3
NmM0NGYyMDFhNmRiZGRhYmIzZDdjOGNiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwCkBAIC0zOSw3ICszOSw3
IEBAIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6On5OZXR3b3JrUmVzb3VyY2VMb2FkTWFwKCkKICAg
ICBjbGVhcigpOwogfQogCi1OZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1
bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRkKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRl
bnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJiBsb2FkZXIpCitOZXR3b3JrUmVz
b3VyY2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6
YWRkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8TmV0
d29ya1Jlc291cmNlTG9hZGVyPiYmIGxvYWRlcikKIHsKICAgICBBU1NFUlQoIW1fbG9hZGVycy5j
b250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgYm9vbCBoYXNVcGxvYWQgPSBsb2FkZXItPm9yaWdp
bmFsUmVxdWVzdCgpLmhhc1VwbG9hZCgpOwpAQCAtNDksNyArNDksNyBAQCBOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjpNYXBUeXBlOjpBZGRSZXN1bHQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6YWRk
KFJlc291cmNlTAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLWJvb2wgTmV0d29ya1Jlc291cmNl
TG9hZE1hcDo6cmVtb3ZlKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK2Jvb2wg
TmV0d29ya1Jlc291cmNlTG9hZE1hcDo6cmVtb3ZlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogewogICAgIHJldHVybiAhIXRha2UoaWRlbnRpZmllcik7CiB9
CkBAIC02MCw3ICs2MCw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Y2xlYXIoKQog
ICAgIHNldEhhc1VwbG9hZChmYWxzZSk7CiB9CiAKLVJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI+IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnRha2UoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBp
ZGVudGlmaWVyKQorUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNl
TG9hZE1hcDo6dGFrZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBhdXRvIGxvYWRlciA9IG1fbG9hZGVycy50YWtlKGlkZW50aWZpZXIpOwogICAg
IGlmICghbG9hZGVyKQpAQCAtNzIsNyArNzIsNyBAQCBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9h
ZGVyPiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKFJlc291cmNlTG9hZElkZW50aWZpZQog
ICAgIHJldHVybiBsb2FkZXI7CiB9CiAKLU5ldHdvcmtSZXNvdXJjZUxvYWRlciogTmV0d29ya1Jl
c291cmNlTG9hZE1hcDo6Z2V0KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikgY29u
c3QKK05ldHdvcmtSZXNvdXJjZUxvYWRlciogTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6Z2V0KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAogewogICAg
IHJldHVybiBtX2xvYWRlcnMuZ2V0KGlkZW50aWZpZXIpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmggYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaAppbmRleCAwZWYy
NzhjMzQwNWNkZGU2YTgzZmJmMGFiNzJmZmM0N2MxNGQzMTE3Li43MTYwZGRlMWQ1N2MwMGYxNWZi
NGFjMzVlNDE4MmUzZWNjOTg1YjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuaApAQCAtMjUsNiArMjUsNyBAQAogCiAj
cHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
Lmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
IApAQCAtMzcsMjQgKzM4LDIyIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgTmV0d29ya1Jl
c291cmNlTG9hZGVyOwogY2xhc3MgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M7CiAKLXR5
cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0d29ya1Jl
c291cmNlTG9hZE1hcCB7CiBwdWJsaWM6Ci0gICAgdHlwZWRlZiBIYXNoTWFwPFJlc291cmNlTG9h
ZElkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+PiBNYXBUeXBlOworICAgIHVz
aW5nIE1hcFR5cGUgPSBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
UmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4+OwogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXAo
RnVuY3Rpb248dm9pZChib29sIGhhc1VwbG9hZCk+JiYpOwogICAgIH5OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwKCk7CiAKICAgICBib29sIGlzRW1wdHkoKSBjb25zdCB7IHJldHVybiBtX2xvYWRlcnMu
aXNFbXB0eSgpOyB9Ci0gICAgYm9vbCBjb250YWlucyhSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlk
ZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsg
fQorICAgIGJvb2wgY29udGFpbnMoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZGVycy5jb250YWlucyhpZGVudGlmaWVyKTsg
fQogICAgIE1hcFR5cGU6Oml0ZXJhdG9yIGJlZ2luKCkgeyByZXR1cm4gbV9sb2FkZXJzLmJlZ2lu
KCk7IH0KICAgICBNYXBUeXBlOjpWYWx1ZXNJdGVyYXRvclJhbmdlIHZhbHVlcygpIHsgcmV0dXJu
IG1fbG9hZGVycy52YWx1ZXMoKTsgfQogICAgIHZvaWQgY2xlYXIoKTsKIAotICAgIE1hcFR5cGU6
OkFkZFJlc3VsdCBhZGQoUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcj4mJik7Ci0gICAgTmV0d29ya1Jlc291cmNlTG9hZGVyKiBnZXQoUmVzb3VyY2VMb2Fk
SWRlbnRpZmllcikgY29uc3Q7Ci0gICAgYm9vbCByZW1vdmUoUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik7Ci0gICAgUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gdGFrZShSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKTsKKyAgICBNYXBUeXBlOjpBZGRSZXN1bHQgYWRkKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJik7CisgICAgTmV0
d29ya1Jlc291cmNlTG9hZGVyKiBnZXQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBjb25zdDsKKyAgICBib29sIHJlbW92ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpOworICAgIFJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+IHRha2UoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIGJvb2wgaGFzVXBsb2FkKCkgY29uc3QgeyBy
ZXR1cm4gbV9oYXNVcGxvYWQ7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oCmluZGV4IGNjYzhi
NTNjZjhkZWI4YzBjNWFjMWRmNjIxMjkyZjRjOWRmNjVlZGMuLjRjYjg1Y2JhMjA2YjgwMjg3ZDQy
YjViZTU2YmNjOGU5MzI2MTI1NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgKQEAgLTMzLDYg
KzMzLDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvRmV0Y2hPcHRpb25zLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgogCiBuYW1lc3BhY2UgSVBD
IHsKQEAgLTQyLDggKzQzLDYgQEAgY2xhc3MgRW5jb2RlcjsKIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0
d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgOiBwdWJsaWMgTmV0d29ya0xvYWRQYXJhbWV0ZXJz
IHsKIHB1YmxpYzoKICAgICB2b2lkIGVuY29kZShJUEM6OkVuY29kZXImKSBjb25zdDsKQEAgLTUx
LDcgKzUwLDcgQEAgcHVibGljOgogCiAgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2lu
PiBwYXJlbnRPcmlnaW4oKSBjb25zdDsKIAotICAgIG11dGFibGUgUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciBpZGVudGlmaWVyIHsgMCB9OworICAgIG11dGFibGUgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7CiAgICAgVmVjdG9yPFJlZlB0cjxTYW5kYm94RXh0ZW5z
aW9uPj4gcmVxdWVzdEJvZHlTYW5kYm94RXh0ZW5zaW9uczsgLy8gQ3JlYXRlZCBhdXRvbWF0aWNh
bGx5IGZvciB0aGUgc2VuZGVyLgogICAgIFJlZlB0cjxTYW5kYm94RXh0ZW5zaW9uPiByZXNvdXJj
ZVNhbmRib3hFeHRlbnNpb247IC8vIENyZWF0ZWQgYXV0b21hdGljYWxseSBmb3IgdGhlIHNlbmRl
ci4KICAgICBtdXRhYmxlIFNlY29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggODNlODNiY2U4NGU3ZjQ5ODM4OGU2OTI4NGU5MDgxMzIyZWJiOGM0OC4uMjM4NjNiZjdl
ZjM3N2I0YWE0ZjljNzYxMzI4MDExODJmMTg2YmI1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNjYsOCAr
NjYsOCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvUHJldmlld0NvbnZlcnRlci5oPgogI2VuZGlmCiAK
LSNkZWZpbmUgTE9BREVSX1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3Jr
LCAiJXAgLSBbcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwg
ZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3Vy
Y2U9JWQsIGRlc3RpbmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OiIgZm10LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbV9wYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJh
bWVJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllciwgaXNNYWluUmVzb3VyY2Uo
KSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9u
KSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQotI2RlZmluZSBMT0FERVJfUkVMRUFT
RV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtw
YWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVz
dGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBm
bXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFt
ZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUlu
dDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNo
cm9ub3VzKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIExPQURFUl9SRUxFQVNFX0xPRyhmbXQs
IC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIsIGlzTWFpblJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJv
bm91cz0lZF0gTmV0d29ya1Jlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJz
LndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlk
ZW50aWZpZXIudG9VSW50NjQoKSwgaXNNYWluUmVzb3VyY2UoKSwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9uKSwgaXNTeW5jaHJvbm91cygpLCAj
I19fVkFfQVJHU19fKQorI2RlZmluZSBMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4p
IFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1NjQg
Iiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlE
PSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3luY2hy
b25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1ldGVy
cy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRvVUlu
dDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy5p
ZGVudGlmaWVyLnRvVUludDY0KCksIGlzTWFpblJlc291cmNlKCksIHN0YXRpY19jYXN0PHVuc2ln
bmVkPihtX3BhcmFtZXRlcnMub3B0aW9ucy5kZXN0aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwg
IyNfX1ZBX0FSR1NfXykKIAogbmFtZXNwYWNlIFdlYktpdCB7CiB1c2luZyBuYW1lc3BhY2UgV2Vi
Q29yZTsKQEAgLTUyNCw3ICs1MjQsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6YWJv
cnQoKQogICAgIGNsZWFudXAoTG9hZFJlc3VsdDo6Q2FuY2VsKTsKIH0KIAotdm9pZCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OnRyYW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiBuZXdDb25uZWN0aW9uLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIG5ld0Nv
cmVJZGVudGlmaWVyKQordm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnRyYW5zZmVyVG9OZXdX
ZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBuZXdDb25uZWN0aW9uLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbmV3Q29yZUlkZW50aWZpZXIpCiB7CiAg
ICAgbV9jb25uZWN0aW9uID0gbmV3Q29ubmVjdGlvbjsKICAgICBtX3BhcmFtZXRlcnMuaWRlbnRp
ZmllciA9IG5ld0NvcmVJZGVudGlmaWVyOwpAQCAtMTM5NiwxNyArMTM5Niw4IEBAIHN0YXRpYyBT
dHJpbmcgZXNjYXBlRm9ySlNPTihTdHJpbmcgcykKICAgICByZXR1cm4gcy5yZXBsYWNlKCdcXCcs
ICJcXFxcIikucmVwbGFjZSgnIicsICJcXFwiIik7CiB9CiAKLXN0YXRpYyBTdHJpbmcgZXNjYXBl
SURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+JiB2YWx1ZSkKLXsKLSAgICBy
ZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS52YWx1ZSgpKSA6IFN0cmluZygiTm9u
ZSJfcyk7Ci19Ci0KLXN0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0
aW9uYWw8RnJhbWVJZGVudGlmaWVyPiYgdmFsdWUpCi17Ci0gICAgcmV0dXJuIHZhbHVlID8gU3Ry
aW5nOjpudW1iZXIodmFsdWUtPnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKLX0KLQot
c3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDxQYWdlSWRl
bnRpZmllcj4mIHZhbHVlKQordGVtcGxhdGU8dHlwZW5hbWUgSWRlbnRpZmllclR5cGU+CitzdGF0
aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPE9iamVjdElkZW50
aWZpZXI8SWRlbnRpZmllclR5cGU+PiYgdmFsdWUpCiB7CiAgICAgcmV0dXJuIHZhbHVlID8gU3Ry
aW5nOjpudW1iZXIodmFsdWUtPnRvVUludDY0KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKIH0KQEAg
LTE0MjEsNyArMTQxMiw3IEBAIHZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJ
bmZvcm1hdGlvbigpIGNvbnN0CiAgICAgbG9nQ29va2llSW5mb3JtYXRpb24obV9jb25uZWN0aW9u
LCAiTmV0d29ya1Jlc291cmNlTG9hZGVyIiwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB2b2lkKj4o
dGhpcyksICpuZXR3b3JrU3RvcmFnZVNlc3Npb24sIG9yaWdpbmFsUmVxdWVzdCgpLmZpcnN0UGFy
dHlGb3JDb29raWVzKCksIFNhbWVTaXRlSW5mbzo6Y3JlYXRlKG9yaWdpbmFsUmVxdWVzdCgpKSwg
b3JpZ2luYWxSZXF1ZXN0KCkudXJsKCksIG9yaWdpbmFsUmVxdWVzdCgpLmh0dHBSZWZlcnJlcigp
LCBmcmFtZUlEKCksIHBhZ2VJRCgpLCBjb3JlSWRlbnRpZmllcigpKTsKIH0KIAotc3RhdGljIHZv
aWQgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRP
YmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3Jh
Z2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2Ft
ZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpv
cHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50
aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3N0YXRp
YyB2b2lkIGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9n
Z2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8m
IHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0
ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJ
ZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI6OnNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5lY3Rpb24sIG5ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCkBAIC0xNDQ4LDcgKzE0MzksNyBAQCBzdGF0aWMgdm9p
ZCBsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIGNvbm5lY3RpbwogI3VuZGVmIExPQ0FMX0xPR19JRl9BTExPV0VECiB9CiAKLXN0YXRpYyB2
b2lkIGxvZ0Nvb2tpZUluZm9ybWF0aW9uSW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dl
ZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3Rv
cmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNp
dGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVy
cmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25h
bDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlm
aWVyKQorc3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29u
c3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Np
b24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBX
ZWJDb3JlOjpTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlE
LCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBpZGVudGlmaWVyKQogewogICAgIEFTU0VS
VChOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5l
Y3Rpb24sIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCkBAIC0xNTA5LDcg
KzE1MDAsNyBAQCBzdGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aQogI3VuZGVmIExPQ0FMX0xPR19JRl9B
TExPV0VECiB9CiAKLXZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1h
dGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3Ry
aW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBOZXR3b3JrU3RvcmFn
ZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBj
b25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBz
dGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0
X3Q+IGlkZW50aWZpZXIpCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6bG9nQ29va2llSW5m
b3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0
IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgTmV0d29ya1N0
b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0
eSwgY29uc3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25z
dCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJ
RCwgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gaWRlbnRpZmllcikKIHsKICAgICBBU1NF
UlQoc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VT
ZXNzaW9uLnNlc3Npb25JRCgpKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCmluZGV4IGZiMWJmMGU1YzFhZGI0NDE3MzA1
Zjg2M2EwZmIxYzU2YzhjMTI0NjAuLmYyMmI0Y2MzMDc0Y2JkNjgxNTJjZjQ5NTM2YzBmMGU4YjNh
MDRjZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UmVzb3VyY2VMb2FkZXIuaApAQCAtODUsNyArODUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGFy
dCgpOwogICAgIHZvaWQgYWJvcnQoKTsKIAotICAgIHZvaWQgdHJhbnNmZXJUb05ld1dlYlByb2Nl
c3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHRyYW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIC8v
IE1lc3NhZ2UgaGFuZGxlcnMuCiAgICAgdm9pZCBkaWRSZWNlaXZlTmV0d29ya1Jlc291cmNlTG9h
ZGVyTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImKTsKQEAgLTk3LDcgKzk3
LDcgQEAgcHVibGljOgogCiAgICAgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MoKSBjb25zdCB7IHJldHVybiBtX2Nvbm5lY3Rpb247IH0KICAgICBQ
QUw6OlNlc3Npb25JRCBzZXNzaW9uSUQoKSBjb25zdCB7IHJldHVybiBtX2Nvbm5lY3Rpb24tPnNl
c3Npb25JRCgpOyB9Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBjb3JlSWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyOyB9CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGNvcmVJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4g
bV9wYXJhbWV0ZXJzLmlkZW50aWZpZXI7IH0KICAgICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIg
ZnJhbWVJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlEOyB9CiAgICAg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0
ZXJzLndlYlBhZ2VJRDsgfQogICAgIGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
JiBwYXJhbWV0ZXJzKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzOyB9CkBAIC0xMzIsNyAr
MTMyLDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKElOVEVMTElHRU5UX1RSQUNLSU5HX1BSRVZF
TlRJT04pICYmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIHN0YXRpYyBib29sIHNob3VsZExv
Z0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUEFMOjpT
ZXNzaW9uSUQpOwotICAgIHN0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCog
bG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mLCBjb25z
dCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNhbWVTaXRlSW5mbyYsIGNvbnN0IFVS
TCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6RnJhbWVJ
ZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQYWdlSWRlbnRpZmllcj4sIHN0ZDo6
b3B0aW9uYWw8dWludDY0X3Q+IGlkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGxvZ0Nvb2tp
ZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgY29uc3QgU3RyaW5n
JiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3Jr
U3RvcmFnZVNlc3Npb24mLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNh
bWVTaXRlSW5mbyYsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllcj4sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPik7CiAjZW5kaWYKIAogICAgIHZvaWQgZGlzYWJsZUV4dHJhTmV0d29ya0xvYWRNZXRy
aWNzQ2FwdHVyZSgpIHsgbV9zaG91bGRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3MgPSBm
YWxzZTsgfQpAQCAtMTUzLDcgKzE1Myw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBJUEM6Ok1lc3Nh
Z2VTZW5kZXIKICAgICBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQo
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllcjsgfQorICAg
IHVpbnQ2NF90IG1lc3NhZ2VTZW5kZXJEZXN0aW5hdGlvbklEKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKTsgfQogCiAgICAgYm9vbCBj
YW5Vc2VDYWNoZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsKICAgICBi
b29sIGNhblVzZUNhY2hlZFJlZGlyZWN0KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdl
cy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggZGM3
NjNiZjFlODM0NGJiNWYzZDE3ZTY0NDk5NzlmOTYxZmZlYjZlOS4uZTVjZmUwZGE3MWMxMjk5MmM5
NjY4NjAwZmM3NzlkZWViZjcyYjE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21l
c3NhZ2VzLnB5CkBAIC0yOTcsNiArMjk3LDcgQEAgZGVmIHR5cGVzX3RoYXRfY2Fubm90X2JlX2Zv
cndhcmRfZGVjbGFyZWQoKToKICAgICAgICAgJ1dlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VJ
ZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlJlbmRlcmluZ01vZGUnLAogICAgICAgICAn
V2ViQ29yZTo6UmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVyJywKKyAgICAgICAgJ1dlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3JlOjpTV1NlcnZlckNv
bm5lY3Rpb25JZGVudGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyJywKICAgICAgICAgJ1dlYkNvcmU6OlNlcnZpY2VXb3JrZXJKb2JJZGVudGlmaWVyJywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcApp
bmRleCBkNWNhM2JiZmUwODBiZTdlODcwMmM1MjI1NWI5NWI5YjhlYjk5ZWI2Li41NzM3ZDljODNj
MTUxYjhlODQ2MjFhNzJiMTNmZWFkZTk4YWU5ZTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCkBAIC01Miw3ICs1Miw3IEBAIHN0ZDo6
b3B0aW9uYWw8VVJMU2NoZW1lVGFza1BhcmFtZXRlcnM+IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJz
OjpkZWNvZGUoSVBDOjpEZWNvCiAgICAgaWYgKCFoYW5kbGVySWRlbnRpZmllcikKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKICAgICAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiB0
YXNrSWRlbnRpZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcj4gdGFza0lkZW50aWZpZXI7CiAgICAgZGVjb2RlciA+PiB0YXNrSWRlbnRpZmll
cjsKICAgICBpZiAoIXRhc2tJZGVudGlmaWVyKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKaW5k
ZXggNjc4MjM5NmIwZjlkMDliM2JlZDJlZjQ5YmNiZDVjYzk1M2M2ZDU5NS4uMWI0ZDllYjI3ZGQw
YjFlODYwNDdmN2FjM2FkMDY3MDNjNTNmMzNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCkBAIC0yNiw2ICsyNiw3IEBACiAjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgIkZyYW1lSW5mb0RhdGEuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0
Lmg+CiAKIG5hbWVzcGFjZSBJUEMgewpAQCAtMzcsNyArMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIAogc3RydWN0IFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsKICAgICB1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciB7IDAgfTsKLSAgICB1aW50NjRfdCB0YXNrSWRlbnRpZmllciB7IDAgfTsK
KyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXI7CiAg
ICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Q7CiAgICAgRnJhbWVJbmZvRGF0YSBm
cmFtZUluZm87CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Z2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9n
bGliL1dlYktpdFdlYkNvbnRleHQuY3BwCmluZGV4IDFiYzUxZGQxZWQzYjExODVlZDcyNjU1NTli
YjFkM2FlZDk3OTAyNmQuLmUwYThlZWEzNmM5ZWE2Y2RhNjQzZDYyMWU5NzhmN2M4N2Q2ZTE0Mzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNv
bnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdl
YkNvbnRleHQuY3BwCkBAIC02MCw2ICs2MCw3IEBACiAjaW5jbHVkZSAiV2Vic2l0ZURhdGFTdG9y
ZS5oIgogI2luY2x1ZGUgIldlYnNpdGVEYXRhVHlwZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL1JlbW90ZUluc3BlY3Rvci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8Z2xpYi9naTE4bi1saWIuaD4KICNpbmNsdWRlIDxsaWJp
bnRsLmg+CiAjaW5jbHVkZSA8bWVtb3J5PgpAQCAtMTk0LDExICsxOTUsMTAgQEAgcHJpdmF0ZToK
ICAgICBXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Q2FsbGJhY2sgbV9jYWxsYmFjayB7IG51bGxwdHIg
fTsKICAgICB2b2lkKiBtX3VzZXJEYXRhIHsgbnVsbHB0ciB9OwogICAgIEdEZXN0cm95Tm90aWZ5
IG1fZGVzdHJveU5vdGlmeSB7IG51bGxwdHIgfTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBHUmVm
UHRyPFdlYktpdFVSSVNjaGVtZVJlcXVlc3Q+PiBtX3JlcXVlc3RzOworICAgIEhhc2hNYXA8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBHUmVmUHRyPFdlYktpdFVSSVNjaGVtZVJl
cXVlc3Q+PiBtX3JlcXVlc3RzOwogfTsKIAogdHlwZWRlZiBIYXNoTWFwPFN0cmluZywgUmVmUHRy
PFdlYktpdFVSSVNjaGVtZUhhbmRsZXI+ID4gVVJJU2NoZW1lSGFuZGxlck1hcDsKLXR5cGVkZWYg
SGFzaE1hcDx1aW50NjRfdCwgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0PiA+IFVSSVNj
aGVtZVJlcXVlc3RNYXA7CiAKIGNsYXNzIFdlYktpdEF1dG9tYXRpb25DbGllbnQ7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJv
eHkuY3BwCmluZGV4IDFjZGNmY2UwNmY5NWU2YjUzMTI3NWE4M2UzZWY3ZjA5NjhmZThhNzcuLjNm
MWUyYjlkZWE2NGZjYjk1ZmM1YTdhMTlhODExNzJhMjNmNTAwMGYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcApA
QCAtNDc2LDkgKzQ3Niw5IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6dGVybWluYXRlVW5y
ZXNwb25zaXZlU2VydmljZVdvcmtlclByb2Nlc3NlcyhXZWJDb3JlOjpQCiAgICAgfQogfQogCi12
b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50
NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6
b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3ZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNz
VHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZp
ZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiByZXNv
dXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8
TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsK
LSAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcsICIlcCAtIE5ldHdvcmtQcm9jZXNzUHJv
eHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyOiBzb3VyY2VQcm9jZXNzSWRlbnRp
ZmllcjogJSIgUFJJdTY0ICIsIHJlc291cmNlTG9hZElkZW50aWZpZXI6ICUiIFBSSXU2NCwgdGhp
cywgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIudG9VSW50NjQoKSwgcmVzb3VyY2VMb2FkSWRlbnRp
Zmllcik7CisgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N3YXBwaW5nLCAiJXAgLSBOZXR3b3JrUHJv
Y2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zlcjogc291cmNlUHJvY2Vz
c0lkZW50aWZpZXI6ICUiIFBSSXU2NCAiLCByZXNvdXJjZUxvYWRJZGVudGlmaWVyOiAlIiBQUkl1
NjQsIHRoaXMsIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLnRvVUludDY0KCksIHJlc291cmNlTG9h
ZElkZW50aWZpZXIgPyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLT50b1VJbnQ2NCgpIDogMCk7CiAg
ICAgaWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CiAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKHsgfSk7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKaW5kZXggNjk5YTgyNTllZmFkYTEy
YmFlZmYxY2RlOGJlMTBkMTM2ODQ1ZWQ2Mi4uNDYwZmIzMmU4MTBlMmZmYjJjNDliODU4OTc5MjYz
NmI3YmVhMGQ4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29y
ay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKQEAgLTIxNCw3ICsyMTQsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCB0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGb3JTeW5jUmVw
bHkoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6
OlRlc3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseURl
bGF5ZWRSZXBseSYmKTsKICAgICB2b2lkIHRlcm1pbmF0ZVVucmVzcG9uc2l2ZVNlcnZpY2VXb3Jr
ZXJQcm9jZXNzZXMoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIpOwogCi0gICAgdm9pZCBwcmVw
YXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBz
b3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNm
ZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHN0
ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
Pik+JiYpOwogCiAgICAgUHJvY2Vzc1Rocm90dGxlciYgdGhyb3R0bGVyKCkgZmluYWwgeyByZXR1
cm4gbV90aHJvdHRsZXI7IH0KICAgICB2b2lkIHVwZGF0ZVByb2Nlc3NBc3NlcnRpb24oKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNw
cCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcAppbmRl
eCBmNjViOGE0ODdjMmU2YzAxY2IzMDlhM2NkODUwYTVjM2UzM2NiNmYwLi5iMDkxOWI4Y2I0YTVh
NDMzMmVmODgyZGI1YTQ0YTJjMzQwOTI0YmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwCkBAIC0zMzMsNyArMzMzLDcgQEAgdm9pZCBQ
cm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5j
KEZyYW1lSWRlbnRpZmllcgogICAgIG1fcGFnZS5kZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0
aW9uQXN5bmNTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQYWdlSUQsIGZyYW1lSUQs
IFdURk1vdmUoZnJhbWVJbmZvKSwgaWRlbnRpZmllciwgbmF2aWdhdGlvbklELCBXVEZNb3ZlKG5h
dmlnYXRpb25BY3Rpb25EYXRhKSwgV1RGTW92ZShvcmlnaW5hdGluZ0ZyYW1lSW5mbyksIG9yaWdp
bmF0aW5nUGFnZUlELCBvcmlnaW5hbFJlcXVlc3QsIFdURk1vdmUocmVxdWVzdCksIFdURk1vdmUo
cmVxdWVzdEJvZHkpLCBXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCB1c2VyRGF0YSwgbGlzdGVu
ZXJJRCk7CiB9CiAKLXZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJl
c3BvbnNlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZv
LCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2
aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlw
ZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmpl
Y3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0Nv
bnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRp
ZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQordm9p
ZCBQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVu
dGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGlj
eUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcm
IGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93
c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3Qg
VXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGlmICghdmFsaWRhdGVJbnB1dChmcmFtZUlELCBu
YXZpZ2F0aW9uSUQpKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuaAppbmRleCBkNzhjMzhlMDA1MjBkOGM4NDBlMzcxMTI5
YjJlNDU0ZWI4OWFhNjA3Li5hNWRlY2ZmMmY3ZTkyMTNkN2QzYmVkYTBkYmMzNmQ2ZDk5NTRjM2Qz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94
eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmgK
QEAgLTEyNSw3ICsxMjUsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgc2VuZE1lc3NhZ2UoVW5pcXVl
UmVmPElQQzo6RW5jb2Rlcj4mJiwgT3B0aW9uU2V0PElQQzo6U2VuZE9wdGlvbj4sIHN0ZDo6b3B0
aW9uYWw8c3RkOjpwYWlyPENvbXBsZXRpb25IYW5kbGVyPHZvaWQoSVBDOjpEZWNvZGVyKik+LCB1
aW50NjRfdD4+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uQXN5bmMoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdl
YkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBOYXZp
Z2F0aW9uQWN0aW9uRGF0YSYmLCBGcmFtZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8s
IHN0ZDo6b3B0aW9uYWw8V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNl
ckRhdGEmLCB1aW50NjRfdCBsaXN0ZW5lcklEKTsKLSAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJl
c3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYmLCBXZWJDb3Jl
OjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBi
b29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRH
cm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBsaXN0ZW5lcklELCB1aW50NjRfdCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgVXNlckRhdGEmKTsKKyAgICB2b2lkIGRlY2lkZVBv
bGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYm
LCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3JlOjpCcm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBkaWRDaGFuZ2VQcm92aXNp
b25hbFVSTEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdh
dGlvbklELCBVUkwmJik7CiAgICAgdm9pZCBkaWRQZXJmb3JtU2VydmVyUmVkaXJlY3QoY29uc3Qg
U3RyaW5nJiBzb3VyY2VVUkxTdHJpbmcsIGNvbnN0IFN0cmluZyYgZGVzdGluYXRpb25VUkxTdHJp
bmcsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcik7CiAgICAgdm9pZCBkaWRSZWNlaXZlU2VydmVy
UmVkaXJlY3RGb3JQcm92aXNpb25hbExvYWRGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNv
bnN0IFVzZXJEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApp
bmRleCBjMTExNzE0NzNlMjQ4NjA4YWU5N2YzNTk0ZjM5NTI1NTJjYWE2MDFiLi43ZWFmNzk5NGQ4
MDA2OWJhOWYxNDFmMWFmMjRjZDc2OTQyNjRkZmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKQEAgLTU2MzAsMTIgKzU2MzAsMTIgQEAgdm9pZCBXZWJQYWdlUHJv
eHk6OmRlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgRnJhbWUKIAogdm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlKEZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lD
aGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwKICAgICB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmli
dXRlLAotICAgIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4
dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwg
dWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQs
IGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKKyAgICBib29sIHdhc0FsbG93ZWRCeUluamVjdGVk
QnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4
dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVu
ZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIGRlY2lkZVBvbGljeUZvclJl
c3BvbnNlU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1fd2ViUGFnZUlELCBmcmFtZUlELCBX
VEZNb3ZlKGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmlnYXRpb25JRCwgcmVzcG9uc2UsIHJl
cXVlc3QsIGNhblNob3dNSU1FVHlwZSwgZG93bmxvYWRBdHRyaWJ1dGUsIHdhc0FsbG93ZWRCeUlu
amVjdGVkQnVuZGxlLCBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgbGlzdGVuZXJJRCwgdXNlckRhdGEpOwogfQogCi12b2lkIFdl
YlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQ
cm94eT4mJiBwcm9jZXNzLCBQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIEZyYW1lSWRlbnRpZmll
ciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJbmZvLCBQb2xpY3lDaGVja0lkZW50aWZp
ZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNo
b3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxv
d2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBi
cm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJE
YXRhKQordm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJl
ZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBG
cmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywgUG9saWN5
Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUs
IGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dp
dGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEp
CiB7CiAgICAgUGFnZUNsaWVudFByb3RlY3RvciBwcm90ZWN0b3IocGFnZUNsaWVudCgpKTsKIApA
QCAtMTAwMDIsNyArMTAwMDIsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c3RhcnRVUkxTY2hlbWVU
YXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZQogICAgIGl0ZXJh
dG9yLT52YWx1ZS0+c3RhcnRUYXNrKCp0aGlzLCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdURk1vdmUo
cGFyYW1ldGVycyksIG51bGxwdHIpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6c3RvcFVSTFNj
aGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyKQordm9pZCBXZWJQYWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIpCiB7CiAgICAgTUVTU0FHRV9DSEVDSyhtX3Byb2Nlc3MsIGRlY2x0eXBlKG1fdXJsU2No
ZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIpOjppc1ZhbGlkS2V5KGhhbmRsZXJJZGVudGlmaWVyKSk7
CiAgICAgYXV0byBpdGVyYXRvciA9IG1fdXJsU2NoZW1lSGFuZGxlcnNCeUlkZW50aWZpZXIuZmlu
ZChoYW5kbGVySWRlbnRpZmllcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CmluZGV4IDMxYTMyOTYzM2RiMDFhMDk3YzdlYTI4ZjhkNTQ2NDUzNDljNjNmYzEuLmNhMDllODM3
MmVjNzNjZDcyNzVlZTAxODY1ZmIyZTdkOTZkZDYwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCkBAIC0xNzQ1LDcgKzE3NDUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBk
aWROYXZpZ2F0ZVdpdGhOYXZpZ2F0aW9uRGF0YVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYm
LCBjb25zdCBXZWJOYXZpZ2F0aW9uRGF0YVN0b3JlJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
KTsKICAgICB2b2lkIGRpZENoYW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWVTaGFyZWQoUmVmPFdl
YlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZp
Z2F0aW9uSUQsIFVSTCYmKTsKICAgICB2b2lkIGRlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rp
b25Bc3luY1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBOYXZpZ2F0aW9u
QWN0aW9uRGF0YSYmLCBGcmFtZUluZm9EYXRhJiYgb3JpZ2luYXRpbmdGcmFtZUluZm8sIHN0ZDo6
b3B0aW9uYWw8V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJiwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIHJlcXVlc3RCb2R5LCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgVXNlckRhdGEm
LCB1aW50NjRfdCBsaXN0ZW5lcklEKTsKLSAgICB2b2lkIGRlY2lkZVBvbGljeUZvclJlc3BvbnNl
U2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBX
ZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5
Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNh
blNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNB
bGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CisgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRp
ZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Ym9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJv
b2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdy
b3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJ
RCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lkIHN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChS
ZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgVVJMU2NoZW1l
VGFza1BhcmFtZXRlcnMmJik7CiAgICAgdm9pZCBsb2FkRGF0YVdpdGhOYXZpZ2F0aW9uU2hhcmVk
KFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6Ok5h
dmlnYXRpb24mLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmLCBjb25zdCBTdHJpbmcmIE1JTUVU
eXBlLCBjb25zdCBTdHJpbmcmIGVuY29kaW5nLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEFQSTo6
T2JqZWN0KiB1c2VyRGF0YSwgV2ViQ29yZTo6U2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBz
dGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiwgc3RkOjpvcHRpb25hbDxX
ZWJzaXRlUG9saWNpZXNEYXRhPiYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5LCBXZWJDb3JlOjpTdWJzdGl0dXRlRGF0YTo6U2Vzc2lvbkhpc3RvcnlWaXNpYmlsaXR5KTsK
ICAgICB2b2lkIGxvYWRSZXF1ZXN0V2l0aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQ
cm94eT4mJiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmLCBXZWJDb3JlOjpTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5LCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0QXNDb250aW51
aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4sIHN0ZDo6
b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiA9IHN0ZDo6bnVsbG9wdCwgc3RkOjpvcHRp
b25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gZXhpc3RpbmdOZXR3b3JrUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllclRvUmVzdW1lID0gc3RkOjpudWxsb3B0KTsKQEAgLTIwNjMsNyArMjA2
Myw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24o
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGlj
eUNoZWNrSWRlbnRpZmllciwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwKICAgICAgICAgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFN0cmluZyYgZnJhbWVOYW1lLCB1aW50NjRfdCBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yUmVz
cG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6
OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELAotICAgICAgICBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRy
aWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5n
Q29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOworICAgICAgICBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRy
aWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dzaW5n
Q29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3Qg
bGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lkIHVuYWJsZVRvSW1wbGVtZW50
UG9saWN5KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBiZWdpblNhZmVCcm93c2luZ0NoZWNr
KGNvbnN0IFVSTCYsIGJvb2wsIFdlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eSYpOwogCkBAIC0y
NDI3LDcgKzI0MjcsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICAgICB2b2lkIHN0YXJ0VVJMU2No
ZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIHN0b3BVUkxTY2hl
bWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmll
cik7CisgICAgdm9pZCBzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICB2b2lkIGxvYWRTeW5j
aHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFza0RlbGF5ZWRSZXBseSYm
KTsKIAogICAgIGJvb2wgY2hlY2tVUkxSZWNlaXZlZEZyb21DdXJyZW50T3JQcmV2aW91c1dlYlBy
b2Nlc3MoV2ViUHJvY2Vzc1Byb3h5JiwgY29uc3QgU3RyaW5nJik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggMjYxYzhlNTE0NGRm
NjcxYTc2ZmRjM2RhN2E1YWE4NDg4Mzc4MTQ0YS4uYjU3NzcyNWYzMGNjMjY1MmY5ODJkMjkwYzRm
MDIwZTVkMjdlMzA2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5tZXNzYWdlcy5pbgpAQCAtMTA3LDcgKzEwNyw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQ
cm94eSB7CiAjZW5kaWYKIAogICAgICMgUG9saWN5IG1lc3NhZ2VzCi0gICAgRGVjaWRlUG9saWN5
Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJL
aXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZp
ZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1
ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgU3RyaW5nIGRvd25sb2FkQXR0cmlidXRlLCBib29s
IHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6QnJvd3Np
bmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlz
dGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2VyRGF0YSkKKyAgICBEZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6
RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBw
b2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3Qs
IGJvb2wgY2FuU2hvd01JTUVUeXBlLCBTdHJpbmcgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2Fz
QWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIGVudW06dWludDhfdCBXZWJDb3JlOjpCcm93c2luZ0Nv
bnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNp
b24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWlu
UmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2Vy
RGF0YSB1c2VyRGF0YSkKICAgICBEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmMo
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5m
b0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hl
Y2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIHN0cnVjdCBXZWJLaXQ6Ok5hdmln
YXRpb25BY3Rpb25EYXRhIG5hdmlnYXRpb25BY3Rpb25EYXRhLCBzdHJ1Y3QgV2ViS2l0OjpGcmFt
ZUluZm9EYXRhIG9yaWdpbmF0aW5nRnJhbWVJbmZvRGF0YSwgc3RkOjpvcHRpb25hbDxXZWJLaXQ6
OldlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlELCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3Qgb3JpZ2luYWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSByZWRpcmVjdFJlc3BvbnNlLCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhLCB1
aW50NjRfdCBsaXN0ZW5lcklEKQogICAgIERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb25T
eW5jKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBib29sIGlzTWFpbkZyYW1lLCBz
dHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hl
Y2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklE
LCBzdHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0
YSwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEs
IHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGlu
Z1BhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UgcmVxdWVz
dEJvZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVkaXJlY3RSZXNwb25zZSwgV2ViS2l0
OjpVc2VyRGF0YSB1c2VyRGF0YSkgLT4gKHN0cnVjdCBXZWJLaXQ6OlBvbGljeURlY2lzaW9uIFBv
bGljeURlY2lzaW9uKSBTeW5jaHJvbm91cwogICAgIERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0Fj
dGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYktpdDo6RnJh
bWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBwb2xp
Y3lDaGVja0lkZW50aWZpZXIsIHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5h
dmlnYXRpb25BY3Rpb25EYXRhLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgU3Ry
aW5nIGZyYW1lTmFtZSwgdWludDY0X3QgbGlzdGVuZXJJRCwgV2ViS2l0OjpVc2VyRGF0YSB1c2Vy
RGF0YSkKQEAgLTUyMSw3ICs1MjEsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAg
IFNldElzVXNpbmdIaWdoUGVyZm9ybWFuY2VXZWJHTChib29sIGlzVXNpbmdIaWdoUGVyZm9ybWFu
Y2VXZWJHTCkKIAogICAgIFN0YXJ0VVJMU2NoZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hl
bWVUYXNrUGFyYW1ldGVycyBwYXJhbWV0ZXJzKQotICAgIFN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2
NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKKyAgICBTdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogICAgIExvYWRTeW5jaHJvbm91c1VS
TFNjaGVtZVRhc2soc3RydWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1l
dGVycykgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3IgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogCiAj
aWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAKaW5kZXggZmY2OGQ2NGUxODAyYWRlYmM0MDE0Yjhi
NjE3OTFhMDJmNGU0ZTRhMC4uYWY5NWEyNTEyYmM0MjMzYTFkYWRlOWFmZWIxMWM3ZWE0N2Y0Yjdk
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5j
cHAKQEAgLTU1LDE0ICs1NSwxNCBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0YXJ0VGFz
ayhXZWJQYWdlUHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcwogICAgIGF1dG8g
cmVzdWx0ID0gbV90YXNrcy5hZGQodGFza0lkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2s6OmNy
ZWF0ZSgqdGhpcywgcGFnZSwgcHJvY2Vzcywgd2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMp
LCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSkpOwogICAgIEFTU0VSVChyZXN1bHQuaXNOZXdF
bnRyeSk7CiAKLSAgICBhdXRvIHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFk
ZChwYWdlLmlkZW50aWZpZXIoKSwgSGFzaFNldDx1aW50NjRfdD4oKSk7CisgICAgYXV0byBwYWdl
RW50cnkgPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCksIEhh
c2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPigpKTsKICAgICBBU1NFUlQo
IXBhZ2VFbnRyeS5pdGVyYXRvci0+dmFsdWUuY29udGFpbnModGFza0lkZW50aWZpZXIpKTsKICAg
ICBwYWdlRW50cnkuaXRlcmF0b3ItPnZhbHVlLmFkZCh0YXNrSWRlbnRpZmllcik7CiAKICAgICBw
bGF0Zm9ybVN0YXJ0VGFzayhwYWdlLCByZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKIH0KIAotV2Vi
UHJvY2Vzc1Byb3h5KiBXZWJVUkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZp
ZXIodWludDY0X3QgdGFza0lkZW50aWZpZXIpIGNvbnN0CitXZWJQcm9jZXNzUHJveHkqIFdlYlVS
TFNjaGVtZUhhbmRsZXI6OnByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpIGNvbnN0CiB7CiAgICAgaWYgKCFkZWNs
dHlwZShtX3Rhc2tzKTo6aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwpAQCAtNzksNyArNzksNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0
b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveAogICAg
ICAgICByZXR1cm47CiAKICAgICBhdXRvJiB0YXNrc0J5UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZTsK
LSAgICBWZWN0b3I8dWludDY0X3Q+IHRhc2tJZGVudGlmaWVyc1RvU3RvcDsKKyAgICBWZWN0b3I8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcnNUb1N0b3A7
CiAgICAgdGFza0lkZW50aWZpZXJzVG9TdG9wLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkodGFza3NC
eVBhZ2Uuc2l6ZSgpKTsKICAgICBmb3IgKGF1dG8gdGFza0lkZW50aWZpZXIgOiB0YXNrc0J5UGFn
ZSkgewogICAgICAgICBpZiAoIXByb2Nlc3MgfHwgcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKHRh
c2tJZGVudGlmaWVyKSA9PSBwcm9jZXNzKQpAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXI6OnN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQ
cm9jZXNzUHJveAogCiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcFRhc2soV2Vi
UGFnZVByb3h5JiBwYWdlLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcikKK3ZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlcjo6c3RvcFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFkZWNsdHlwZSht
X3Rhc2tzKTo6aXNWYWxpZEtleSh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsKQEAg
LTExNSw3ICsxMTUsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnRhc2tDb21wbGV0ZWQo
V2ViVVJMU2NoZW1lVGFzayYgdGFzaykKICAgICBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQodGFzayk7
CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCB1aW50NjRfdCB0YXNrSUQpCit2b2lkIFdlYlVS
TFNjaGVtZUhhbmRsZXI6OnJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlm
aWVyIHBhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJRCkKIHsK
ICAgICBhdXRvIGl0ZXJhdG9yID0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuZmluZChwYWdlSUQp
OwogICAgIEFTU0VSVChpdGVyYXRvciAhPSBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllci5lbmQoKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVy
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKaW5kZXgg
ZjRlM2RiNjBjYzNiOGUwMDBiMzQ2MDMyYTk5OTdlZWMwMTQ0ZDhkYi4uNGM5OTY2OWJhNDRkOTA1
YTBhMjVkMTI1NjA1ZmIxMzgwNzNmZGI2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlVSTFNjaGVtZUhhbmRsZXIuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlICJXZWJVUkxTY2hlbWVUYXNrLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTUxLDcgKzUy
LDcgQEAgcHVibGljOgogICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgc3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlBy
b2Nlc3NQcm94eSYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBVUkxTY2hlbWVUYXNrUGFyYW1l
dGVycyYmLCBTeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyJiYpOwotICAgIHZvaWQgc3RvcFRhc2so
V2ViUGFnZVByb3h5JiwgdWludDY0X3QgdGFza0lkZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFRh
c2soV2ViUGFnZVByb3h5JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJ
ZGVudGlmaWVyKTsKICAgICB2b2lkIHN0b3BBbGxUYXNrc0ZvclBhZ2UoV2ViUGFnZVByb3h5Jiwg
V2ViUHJvY2Vzc1Byb3h5Kik7CiAgICAgdm9pZCB0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRh
c2smKTsKIApAQCAtNjMsMTMgKzY0LDEzIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHBs
YXRmb3JtU3RvcFRhc2soV2ViUGFnZVByb3h5JiwgV2ViVVJMU2NoZW1lVGFzayYpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgcGxhdGZvcm1UYXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smKSB7
IH07CiAKLSAgICB2b2lkIHJlbW92ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSUQpOwotICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRh
c2tJZGVudGlmaWVyKHVpbnQ2NF90KSBjb25zdDsKKyAgICB2b2lkIHJlbW92ZVRhc2tGcm9tUGFn
ZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpOworICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyKFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgY29uc3Q7CiAKICAgICB1aW50NjRfdCBt
X2lkZW50aWZpZXI7CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWY8V2ViVVJMU2NoZW1lVGFz
az4+IG1fdGFza3M7Ci0gICAgSGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBIYXNoU2V0
PHVpbnQ2NF90Pj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CisgICAgSGFzaE1hcDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNr
czsKKyAgICBIYXNoTWFwPFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIEhhc2hTZXQ8V2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPj4gbV90YXNrc0J5UGFnZUlkZW50aWZpZXI7CiAgICAg
CiAgICAgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciBtX3N5bmNMb2FkQ29tcGxldGlvbkhhbmRs
ZXI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRh
c2suaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAppbmRleCBl
YWMwOWJkZWNhMWRlYzBjYjIxOWFjMWQwMzMwOGIyZTI3MjMwOWNlLi4yYTllMDZhMmEyYjBmZDJk
NmNkZTQ0NjUxOTNiNmRmOGM4MDI2NGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
VVJMU2NoZW1lVGFzay5oCkBAIC02MSw3ICs2MSw3IEBAIHB1YmxpYzoKIAogICAgIH5XZWJVUkxT
Y2hlbWVUYXNrKCk7CiAKLSAgICB1aW50NjRfdCBpZGVudGlmaWVyKCkgY29uc3QgeyBBU1NFUlQo
UnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IEFTU0VSVChSdW5M
b29wOjppc01haW4oKSk7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KICAgICBXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyIHBhZ2VQcm94eUlEKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkp
OyByZXR1cm4gbV9wYWdlUHJveHlJRDsgfQogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdl
YlBhZ2VJRCgpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fd2Vi
UGFnZUlEOyB9CiAgICAgV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzKCkgeyBBU1NFUlQoUnVuTG9v
cDo6aXNNYWluKCkpOyByZXR1cm4gbV9wcm9jZXNzLmdldCgpOyB9CkBAIC0xMDEsNyArMTAxLDcg
QEAgcHJpdmF0ZToKIAogICAgIFJlZjxXZWJVUkxTY2hlbWVIYW5kbGVyPiBtX3VybFNjaGVtZUhh
bmRsZXI7CiAgICAgUmVmUHRyPFdlYlByb2Nlc3NQcm94eT4gbV9wcm9jZXNzOwotICAgIHVpbnQ2
NF90IG1faWRlbnRpZmllcjsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bV9pZGVudGlmaWVyOwogICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgbV9wYWdlUHJveHlJRDsK
ICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBtX3dlYlBhZ2VJRDsKICAgICBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QgbV9yZXF1ZXN0IFdURl9HVUFSREVEX0JZX0xPQ0sobV9yZXF1ZXN0TG9j
ayk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuaAppbmRleCAzZjgyN2EwMWY0ODgxNzQ0NjY2YTM2ZWU3YWJhYTcz
MDcwMTQwZDRiLi40NWNkNjFlNzFkODg1Y2YxZjdjYzM4YjM1NTFhMmM0OGJkMDZkZjUwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUlu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50LmgKQEAgLTI1LDYgKzI1LDggQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgorCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKIGNsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFnZTsKQEAgLTQ1LDE0ICs0NywxNCBA
QCBjbGFzcyBSZXNvdXJjZUxvYWRDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgflJlc291
cmNlTG9hZENsaWVudCgpID0gZGVmYXVsdDsKIAotICAgIHZpcnR1YWwgdm9pZCBkaWRJbml0aWF0
ZUxvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWlu
dDY0X3QgLyppZGVudGlmaWVyKi8sIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJv
b2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyovKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
d2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFt
ZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2Vi
RnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZv
clJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAv
KmlkZW50aWZpZXIqLywgdWludDY0X3QgY29udGVudExlbmd0aCkgeyB9Ci0gICAgdmlydHVhbCB2
b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6Oldl
YkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBk
aWRGYWlsTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUm
LCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYp
IHsgfQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYktpdDo6V2ViUGFn
ZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLykgeyByZXR1cm4g
dHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJL
aXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8p
IHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVz
b3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9v
bCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCB3
aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1l
JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9CisgICAgdmlydHVh
bCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdl
YktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6Oldl
YkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCB1aW50NjRfdCBjb250
ZW50TGVuZ3RoKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNl
KFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291
cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSB7IH0KKyAg
ICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJL
aXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSB7IHJldHVy
biB0cnVlOyB9CisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdl
YktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpIHsgcmV0dXJuIHRydWU7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIEluamVj
dGVkQnVuZGxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2dsaWIvV2ViS2l0V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2dsaWIvV2ViS2l0V2ViUGFnZS5jcHAKaW5kZXggZmNlNjEx
ZmFhOWRhNzUyMDcyZDYxZmJhN2ZmYTkyMTNiZDVmMzk4OC4uMzdkMjNhOWE0MDQ2MjI0ZmNlMTZh
YmEyODIyYzUwNDY4OGI3YjExYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9nbGliL1dlYktpdFdlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRXZWJQYWdlLmNw
cApAQCAtMjM5LDE3ICsyMzksMTcgQEAgcHVibGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICB2
b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBm
cmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0
LCBib29sKSBvdmVycmlkZQorICAgIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2Vi
UGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sKSBv
dmVycmlkZQogICAgIHsKICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3NhZ2U7
CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlBhZ2UiKSwgJnBhZ2UpOwog
ICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJGcmFtZSIpLCAmZnJhbWUpOwot
ICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6
VUludDY0OjpjcmVhdGUoaWRlbnRpZmllcikpOworICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6
OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllci50
b1VJbnQ2NCgpKSk7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlJlcXVl
c3QiKSwgQVBJOjpVUkxSZXF1ZXN0OjpjcmVhdGUocmVxdWVzdCkpOwogICAgICAgICBXZWJQcm9j
ZXNzOjpzaW5nbGV0b24oKS5pbmplY3RlZEJ1bmRsZSgpLT5wb3N0TWVzc2FnZShTdHJpbmc6OmZy
b21VVEY4KCJXZWJQYWdlLkRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlIiksIEFQSTo6RGljdGlv
bmFyeTo6Y3JlYXRlKFdURk1vdmUobWVzc2FnZSkpLnB0cigpKTsKICAgICB9CiAKLSAgICB2b2lk
IHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgdWludDY0
X3QgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzb3VyY2VSZXNwb25zZSkgb3ZlcnJpZGUKKyAgICB2
b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVz
dCYgcmVzb3VyY2VSZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc291
cmNlUmVzcG9uc2UpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBHUmVmUHRyPFdlYktpdFVSSVJl
cXVlc3Q+IHJlcXVlc3QgPSBhZG9wdEdSZWYod2Via2l0VVJJUmVxdWVzdENyZWF0ZUZvclJlc291
cmNlUmVxdWVzdChyZXNvdXJjZVJlcXVlc3QpKTsKICAgICAgICAgR1JlZlB0cjxXZWJLaXRVUklS
ZXNwb25zZT4gcmVkaXJlY3RSZXNwb25zZSA9ICFyZWRpcmVjdFJlc291cmNlUmVzcG9uc2UuaXNO
dWxsKCkgPyBhZG9wdEdSZWYod2Via2l0VVJJUmVzcG9uc2VDcmVhdGVGb3JSZXNvdXJjZVJlc3Bv
bnNlKHJlZGlyZWN0UmVzb3VyY2VSZXNwb25zZSkpIDogbnVsbHB0cjsKQEAgLTI2NSwxOCArMjY1
LDE4IEBAIHByaXZhdGU6CiAKICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3Nh
Z2U7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlBhZ2UiKSwgJnBhZ2Up
OwotICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQ
STo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllcikpOworICAgICAgICBtZXNzYWdlLnNldChTdHJp
bmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmll
ci50b1VJbnQ2NCgpKSk7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlJl
cXVlc3QiKSwgQVBJOjpVUkxSZXF1ZXN0OjpjcmVhdGUocmVzb3VyY2VSZXF1ZXN0KSk7CiAgICAg
ICAgIGlmICghcmVkaXJlY3RSZXNvdXJjZVJlc3BvbnNlLmlzTnVsbCgpKQogICAgICAgICAgICAg
bWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiUmVkaXJlY3RSZXNwb25zZSIpLCBBUEk6OlVS
TFJlc3BvbnNlOjpjcmVhdGUocmVkaXJlY3RSZXNvdXJjZVJlc3BvbnNlKSk7CiAgICAgICAgIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLmluamVjdGVkQnVuZGxlKCktPnBvc3RNZXNzYWdlKFN0cmlu
Zzo6ZnJvbVVURjgoIldlYlBhZ2UuRGlkU2VuZFJlcXVlc3RGb3JSZXNvdXJjZSIpLCBBUEk6OkRp
Y3Rpb25hcnk6OmNyZWF0ZShXVEZNb3ZlKG1lc3NhZ2UpKS5wdHIoKSk7CiAgICAgfQogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFt
ZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KSBvdmVycmlkZQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFn
ZSYgcGFnZSwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCiAgICAg
ewogICAgICAgICBBUEk6OkRpY3Rpb25hcnk6Ok1hcFR5cGUgbWVzc2FnZTsKICAgICAgICAgbWVz
c2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiUGFnZSIpLCAmcGFnZSk7Ci0gICAgICAgIG1lc3Nh
Z2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0
ZShpZGVudGlmaWVyKSk7CisgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklk
ZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyLnRvVUludDY0KCkpKTsK
ICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiUmVzcG9uc2UiKSwgQVBJOjpV
UkxSZXNwb25zZTo6Y3JlYXRlKHJlc3BvbnNlKSk7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLmluamVjdGVkQnVuZGxlKCktPnBvc3RNZXNzYWdlKFN0cmluZzo6ZnJvbVVURjgoIldl
YlBhZ2UuRGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UiKSwgQVBJOjpEaWN0aW9uYXJ5Ojpj
cmVhdGUoV1RGTW92ZShtZXNzYWdlKSkucHRyKCkpOwogCkBAIC0yODcsMjggKzI4NywyOCBAQCBw
cml2YXRlOgogICAgICAgICB9CiAgICAgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExl
bmd0aEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRp
ZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgY29udGVu
dExlbmd0aCkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIEFQSTo6RGljdGlvbmFyeTo6TWFwVHlw
ZSBtZXNzYWdlOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJQYWdlIiks
ICZwYWdlKTsKLSAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmll
ciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIpKTsKKyAgICAgICAgbWVzc2FnZS5z
ZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlk
ZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21V
VEY4KCJDb250ZW50TGVuZ3RoIiksIEFQSTo6VUludDY0OjpjcmVhdGUoY29udGVudExlbmd0aCkp
OwogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5pbmplY3RlZEJ1bmRsZSgpLT5wb3N0
TWVzc2FnZShTdHJpbmc6OmZyb21VVEY4KCJXZWJQYWdlLkRpZFJlY2VpdmVDb250ZW50TGVuZ3Ro
Rm9yUmVzb3VyY2UiKSwgQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGTW92ZShtZXNzYWdlKSku
cHRyKCkpOwogICAgIH0KIAotICAgIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYlBh
Z2UmIHBhZ2UsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGUKKyAgICB2
b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBvdmVycmlkZQogICAg
IHsKICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3NhZ2U7CiAgICAgICAgIG1l
c3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlBhZ2UiKSwgJnBhZ2UpOwotICAgICAgICBtZXNz
YWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVh
dGUoaWRlbnRpZmllcikpOworICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJ
ZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllci50b1VJbnQ2NCgpKSk7
CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmluamVjdGVkQnVuZGxlKCktPnBvc3RN
ZXNzYWdlKFN0cmluZzo6ZnJvbVVURjgoIldlYlBhZ2UuRGlkRmluaXNoTG9hZEZvclJlc291cmNl
IiksIEFQSTo6RGljdGlvbmFyeTo6Y3JlYXRlKFdURk1vdmUobWVzc2FnZSkpLnB0cigpKTsKICAg
ICB9CiAKLSAgICB2b2lkIGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2Vi
RnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikg
b3ZlcnJpZGUKKyAgICB2b2lkIGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwg
V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBBUEk6
OkRpY3Rpb25hcnk6Ok1hcFR5cGUgbWVzc2FnZTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5n
Ojpmcm9tVVRGOCgiUGFnZSIpLCAmcGFnZSk7Ci0gICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6
ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyKSk7
CisgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJ
OjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyLnRvVUludDY0KCkpKTsKICAgICAgICAgbWVzc2Fn
ZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiRXJyb3IiKSwgQVBJOjpFcnJvcjo6Y3JlYXRlKGVycm9y
KSk7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmluamVjdGVkQnVuZGxlKCktPnBv
c3RNZXNzYWdlKFN0cmluZzo6ZnJvbVVURjgoIldlYlBhZ2UuRGlkRmFpbExvYWRGb3JSZXNvdXJj
ZSIpLCBBUEk6OkRpY3Rpb25hcnk6OmNyZWF0ZShXVEZNb3ZlKG1lc3NhZ2UpKS5wdHIoKSk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dC5jcHAKaW5kZXggYjhiZDQxMjQzMjE0ZTgwZWJkNmI3YzUxMTYzYTU5MGQ5M2I5N2VmOC4uMDZk
OGFkYTI1MGEzNzFiYmNhNWViMGU2NDQxYTUyYjcyMzQ1YzlmOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291
cmNlTG9hZENsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5jcHAKQEAgLTM5LDIw
ICszOSwyMCBAQCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OkluamVjdGVk
QnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudChjb25zdAogICAgIGluaXRpYWxpemUoY2xpZW50
KTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZElu
aXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWlu
dDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIHBh
Z2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdl
YkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBwYWdlSXNQcm92aXNpb25h
bGx5TG9hZGluZykKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZEluaXRpYXRlTG9hZEZvclJlc291
cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRJbml0aWF0ZUxvYWRGb3JS
ZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIHRvQVBJKHJl
cXVlc3QpLCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZywgbV9jbGllbnQuYmFzZS5jbGllbnRJ
bmZvKTsKKyAgICBtX2NsaWVudC5kaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZSh0b0FQSSgmcGFn
ZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgdG9BUEkocmVxdWVzdCks
IHBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwog
fQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6d2lsbFNlbmRS
ZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBp
ZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudDo6d2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUm
IGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlKQogewogICAgIGlmICghbV9jbGllbnQud2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxBUEk6OlVSTFJlcXVlc3Q+IHJldHVybmVkUmVx
dWVzdCA9IGFkb3B0UmVmKHRvSW1wbChtX2NsaWVudC53aWxsU2VuZFJlcXVlc3RGb3JGcmFtZSh0
b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIHRvQVBJKHJlcXVlc3QpLCB0
b0FQSShyZWRpcmVjdFJlc3BvbnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkpOworICAg
IFJlZlB0cjxBUEk6OlVSTFJlcXVlc3Q+IHJldHVybmVkUmVxdWVzdCA9IGFkb3B0UmVmKHRvSW1w
bChtX2NsaWVudC53aWxsU2VuZFJlcXVlc3RGb3JGcmFtZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZm
cmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgdG9BUEkocmVxdWVzdCksIHRvQVBJKHJlZGly
ZWN0UmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pKSk7CiAgICAgaWYgKHJldHVy
bmVkUmVxdWVzdCkgewogICAgICAgICAvLyBJZiB0aGUgY2xpZW50IHJldHVybmVkIGFuIEhUVFAg
Ym9keSwgd2Ugd2FudCB0byB1c2UgdGhhdCBodHRwIGJvZHkuIFRoaXMgaXMgbmVlZGVkIHRvIGZp
eCA8cmRhcjovL3Byb2JsZW0vMjM3NjM1ODQ+CiAgICAgICAgIGF1dG8mIHJldHVybmVkUmVzb3Vy
Y2VSZXF1ZXN0ID0gcmV0dXJuZWRSZXF1ZXN0LT5yZXNvdXJjZVJlcXVlc3QoKTsKQEAgLTY0LDUy
ICs2NCw1MiBAQCB2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6d2ls
bFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYgcGFnZQogICAgICAgICByZXF1ZXN0ID0geyB9
OwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1
aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlUmVzcG9u
c2VGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZFJlY2VpdmVSZXNwb25zZUZvclJl
c291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRSZWNlaXZlUmVzcG9u
c2VGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIHRv
QVBJKHJlc3BvbnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBtX2NsaWVudC5k
aWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSks
IGlkZW50aWZpZXIudG9VSW50NjQoKSwgdG9BUEkocmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNs
aWVudEluZm8pOwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dDo6ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJG
cmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgp
Cit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZUNv
bnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBjb250
ZW50TGVuZ3RoKQogewogICAgIGlmICghbV9jbGllbnQuZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhG
b3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkUmVjZWl2ZUNv
bnRlbnRMZW5ndGhGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50
aWZpZXIsIGNvbnRlbnRMZW5ndGgsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgbV9j
bGllbnQuZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRv
QVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50NjQoKSwgY29udGVudExlbmd0aCwgbV9jbGll
bnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJG
cmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIpCit2b2lkIEluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBh
Z2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2Up
CiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRpZEZpbmlzaExvYWRGb3JSZXNvdXJj
ZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIG1fY2xpZW50LmJhc2Uu
Y2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkRmluaXNoTG9hZEZvclJlc291cmNlKHRvQVBJ
KCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBtX2NsaWVudC5i
YXNlLmNsaWVudEluZm8pOwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudDo6ZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYg
ZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQor
dm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZhaWxMb2FkRm9y
UmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3Ip
CiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRGYWlsTG9hZEZvclJlc291cmNlKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRGYWlsTG9hZEZvclJlc291cmNlKHRvQVBJKCZwYWdl
KSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwgdG9BUEkoZXJyb3IpLCBtX2NsaWVudC5iYXNl
LmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UodG9BUEko
JnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKGVycm9y
KSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotYm9vbCBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYgcGFnZSwg
V2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyKQorYm9vbCBJbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYgcGFn
ZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllcikKIHsKICAgICBpZiAoIW1fY2xpZW50LnNob3VsZENhY2hlUmVzcG9uc2UpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogCi0gICAgcmV0dXJuIG1fY2xpZW50LnNob3VsZENhY2hlUmVzcG9u
c2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCBtX2NsaWVudC5iYXNl
LmNsaWVudEluZm8pOworICAgIHJldHVybiBtX2NsaWVudC5zaG91bGRDYWNoZVJlc3BvbnNlKHRv
QVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBtX2NsaWVu
dC5iYXNlLmNsaWVudEluZm8pOwogfQogCi1ib29sIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNl
TG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViUGFnZSYgcGFnZSwgV2Vi
RnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyKQorYm9vbCBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYlBhZ2Um
IHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5zaG91bGRVc2VDcmVkZW50aWFsU3Rv
cmFnZSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICByZXR1cm4gbV9jbGllbnQuc2hvdWxk
VXNlQ3JlZGVudGlhbFN0b3JhZ2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlm
aWVyLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIHJldHVybiBtX2NsaWVudC5zaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50
aWZpZXIudG9VSW50NjQoKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmggYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVz
b3VyY2VMb2FkQ2xpZW50LmgKaW5kZXggM2FlZjNkY2NlYTM5NjUwY2Q2MWY4NGVmZjI4MWFkMGQy
NDdhNmFlNy4uOTg4MTNkOWIxNTRiYjNkMjNiY2UzNDU0NDRhYmRiZWIwNTI0M2FiNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaApA
QCAtNTEsMTQgKzUxLDE0IEBAIGNsYXNzIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENs
aWVudCA6IHB1YmxpYyBBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjCiBwdWJsaWM6CiAgICAg
ZXhwbGljaXQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50KGNvbnN0IFdLQnVu
ZGxlUGFnZVJlc291cmNlTG9hZENsaWVudEJhc2UqKTsKIAotICAgIHZvaWQgZGlkSW5pdGlhdGVM
b2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCAvKnBhZ2VJc1Byb3Zpc2lvbmFs
bHlMb2FkaW5nKi8pIG92ZXJyaWRlOwotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUo
V2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwot
ICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1l
JiwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShX
ZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCB1aW50NjRfdCBjb250ZW50
TGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJQ
YWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lk
IGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgIGJv
b2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVu
dGlmaWVyKSBvdmVycmlkZTsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdl
YlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmLCBib29sIC8qcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcqLykgb3ZlcnJpZGU7CisgICAg
dm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJl
Y2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IG92ZXJyaWRlOworICAgIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShX
ZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIHVp
bnQ2NF90IGNvbnRlbnRMZW5ndGgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmluaXNoTG9hZEZv
clJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBh
Z2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkQ2FjaGVS
ZXNwb25zZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2Vi
UGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVy
cmlkZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5j
cHAKaW5kZXggNjBiOTVlZDNlYmE4NzliYzQ5ZTcxMTU2NDE1YTFiZjA1OWM4NmE1NC4uNDdiOTFj
ZTg3ZDM2MTNlMzVkNTc5NDA3OTdhZGYwYjFkZDAwYTQ4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwCkBAIC05Miw3ICs5Miw3IEBAIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6fk5ldHdv
cmtQcm9jZXNzQ29ubmVjdGlvbigpCiB2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlk
UmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBJUEM6OkRlY29kZXIm
IGRlY29kZXIpCiB7CiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1l
c3NhZ2VzOjpXZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7Ci0gICAg
ICAgIGlmIChhdXRvKiB3ZWJSZXNvdXJjZUxvYWRlciA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LndlYkxvYWRlclN0cmF0ZWd5KCkud2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKGRlY29k
ZXIuZGVzdGluYXRpb25JRCgpKSkKKyAgICAgICAgaWYgKGF1dG8qIHdlYlJlc291cmNlTG9hZGVy
ID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViTG9hZGVyU3RyYXRlZ3koKS53ZWJSZXNvdXJj
ZUxvYWRlckZvcklkZW50aWZpZXIobWFrZU9iamVjdElkZW50aWZpZXI8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXI+KGRlY29kZXIuZGVzdGluYXRpb25JRCgpKSkpCiAgICAgICAgICAgICB3ZWJSZXNv
dXJjZUxvYWRlci0+ZGlkUmVjZWl2ZVdlYlJlc291cmNlTG9hZGVyTWVzc2FnZShjb25uZWN0aW9u
LCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTIyNiwxMiArMjI2LDEyIEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjp3cml0ZUJsb2JzVG9UZW1wb3JhcnlGaWxl
c0ZvckluZGV4ZWREQihjb25zdCBWZWN0CiAgICAgY29ubmVjdGlvbigpLnNlbmRXaXRoQXN5bmNS
ZXBseShNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OldyaXRlQmxvYnNU
b1RlbXBvcmFyeUZpbGVzRm9ySW5kZXhlZERCKGJsb2JVUkxzKSwgV1RGTW92ZShjb21wbGV0aW9u
SGFuZGxlcikpOwogfQogCi12b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNo
UGluZ0xvYWQodWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJy
b3IsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKK3ZvaWQgTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uOjpkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJlc291cmNlUmVz
cG9uc2UmJiByZXNwb25zZSkKIHsKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2Fk
ZXJTdHJhdGVneSgpLmRpZEZpbmlzaFBpbmdMb2FkKHBpbmdMb2FkSWRlbnRpZmllciwgV1RGTW92
ZShlcnJvciksIFdURk1vdmUocmVzcG9uc2UpKTsKIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb246OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklk
ZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvcikKK3ZvaWQgTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQog
ewogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCkuZGlkRmlu
aXNoUHJlY29ubmVjdGlvbihwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV1RGTW92ZShlcnJvcikp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaAppbmRleCBmODExOTZhZTAxMjQwMGJiMWM2Y2ZmZTI4
YTYyYmZmYzRjZGE3NTE0Li5kNjJkZmU0ZGY1YWE1YTdmODQ3NmFhMTlmZWNmODc0YmJmODQ5YWRh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaApAQCAtMjMsMTQgKzIzLDE0IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb25faAotI2RlZmluZSBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25faAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiU2hhcmVhYmxlUmVzb3Vy
Y2UuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9Db25zb2xlVHlwZXMuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL01lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9SVENEYXRhQ2hhbm5lbElkZW50aWZpZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNl
TG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2VydmljZVdvcmtlclR5cGVz
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KQEAgLTUwLDggKzUwLDYgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBXZWJJ
REJDb25uZWN0aW9uVG9TZXJ2ZXI7CiBjbGFzcyBXZWJTV0NsaWVudENvbm5lY3Rpb247CiAKLXR5
cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQogY2xhc3MgTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8TmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uPiwgSVBDOjpDb25uZWN0aW9uOjpDbGllbnQgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8
TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uPiBjcmVhdGUoSVBDOjpDb25uZWN0aW9uOjpJZGVudGlm
aWVyIGNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5
IGh0dHBDb29raWVBY2NlcHRQb2xpY3kpCkBAIC05Niw4ICs5NCw4IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBkaWRDbG9zZShJUEM6OkNvbm5lY3Rpb24mKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJl
Y2VpdmVJbnZhbGlkTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6Ok1lc3NhZ2VOYW1lKSBv
dmVycmlkZTsKIAotICAgIHZvaWQgZGlkRmluaXNoUGluZ0xvYWQodWludDY0X3QgcGluZ0xvYWRJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmJik7Ci0gICAgdm9pZCBkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNv
bm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYpOworICAgIHZvaWQg
ZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHBpbmdM
b2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJiYpOworICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImJik7CiAgICAgdm9pZCBzZXRPbkxpbmVTdGF0ZShib29sIGlzT25MaW5l
KTsKICAgICB2b2lkIGNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoV2ViQ29yZTo6SFRUUENvb2tp
ZUFjY2VwdFBvbGljeSk7CiAKQEAgLTEyOSw1ICsxMjcsMyBAQCBwcml2YXRlOgogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25f
aApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IGM4YjRhMThm
N2U5NDI0NTRiMGFhOTY2NjEyZjE5M2FjZmRhYzg2NDAuLjZiYTMxZjU0OGI5YWE1MDAxN2Q2YWQ0
NzgyNmM3MzE4MjE2YTYzNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2Fn
ZXMuaW4KQEAgLTI2LDggKzI2LDggQEAgbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uIExlZ2FjeVJlY2VpdmVyIHsKICAgICBEaWRDYWNoZVJlc291cmNlKFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCByZXF1ZXN0LCBXZWJLaXQ6OlNoYXJlYWJsZVJlc291cmNlOjpIYW5kbGUgcmVz
b3VyY2UpCiAjZW5kaWYKIAotICAgIERpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2Fk
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSByZXNwb25zZSkKLSAgICBEaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQor
ICAgIERpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBw
aW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCisgICAgRGlkRmluaXNoUHJlY29ubmVjdGlvbihX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IpCiAgICAgU2V0T25MaW5lU3RhdGUoYm9vbCBp
c09uTGluZSk7CiAgICAgQ29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChlbnVtOnVpbnQ4X3QgV2Vi
Q29yZTo6SFRUUENvb2tpZUFjY2VwdFBvbGljeSBwb2xpY3kpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKaW5kZXgg
MzUyNTMxMDZjYjFkMzAxMzM5YzJiMzBlODYwMmY2YmYyNGEzZTcyYi4uMDk0Y2M3YWUwZTRmNzQ2
M2JjNWM2NjM5NGI4OGJjZTdiMDc1ODU0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcApAQCAtODEsOCArODEsOCBA
QAogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19FUlJPUl9CQVNJQyhmbXQs
IC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgIiVwIC0gV2ViTG9hZGVyU3RyYXRlZ3k6
OiIgZm10LCB0aGlzLCAjI19fVkFfQVJHU19fKQogCiAjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZ
X1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFICIlcCAtIFtyZXNvdXJjZUxvYWRlcj0lcCwg
ZnJhbWVMb2FkZXI9JXAsIGZyYW1lPSVwLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9
JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYkxvYWRlclN0cmF0ZWd5Ojoi
Ci0jZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRF
UlMgdGhpcywgJnJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxvYWRlci5mcmFtZUxvYWRlcigpLCBy
ZXNvdXJjZUxvYWRlci5mcmFtZSgpLCB0cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0
KCksIHRyYWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1l
dGVycy5yZXNvdXJjZUlECi0jZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FE
RVJfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCBudWxscHRyLCAmZnJhbWVM
b2FkZXIsICZmcmFtZUxvYWRlci5mcmFtZSgpLCB0cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRv
VUludDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIHRyYWNraW5n
UGFyYW1ldGVycy5yZXNvdXJjZUlECisjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0Vf
TE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhpcywgJnJlc291cmNlTG9hZGVyLCByZXNvdXJjZUxv
YWRlci5mcmFtZUxvYWRlcigpLCByZXNvdXJjZUxvYWRlci5mcmFtZSgpLCB0cmFja2luZ1BhcmFt
ZXRlcnMucGFnZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUlu
dDY0KCksIHRyYWNraW5nUGFyYW1ldGVycy5yZXNvdXJjZUlELnRvVUludDY0KCkKKyNkZWZpbmUg
V0VCTE9BREVSU1RSQVRFR1lfV0lUSF9GUkFNRUxPQURFUl9SRUxFQVNFX0xPR19TVEFOREFSRF9Q
QVJBTUVURVJTIHRoaXMsIG51bGxwdHIsICZmcmFtZUxvYWRlciwgJmZyYW1lTG9hZGVyLmZyYW1l
KCksIHRyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0
ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQudG9V
SW50NjQoKQogCiAjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HKGZtdCwgLi4u
KSBSRUxFQVNFX0xPRyhOZXR3b3JrLCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFO
REFSRF9URU1QTEFURSBmbXQsIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5EQVJE
X1BBUkFNRVRFUlMsICMjX19WQV9BUkdTX18pCiAjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JF
TEVBU0VfTE9HX0VSUk9SKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJPUihOZXR3b3JrLCBXRUJM
T0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdFQkxPQURF
UlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMsICMjX19WQV9BUkdTX18p
CkBAIC0xNzAsNyArMTcwLDcgQEAgc3RhdGljIFNlY29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWUo
Q2FjaGVkUmVzb3VyY2UqIHJlc291cmNlKQogCiB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hl
ZHVsZUxvYWQoUmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVyLCBDYWNoZWRSZXNvdXJjZSog
cmVzb3VyY2UsIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBSZWRpcmVjdCkK
IHsKLSAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgPSByZXNvdXJjZUxvYWRl
ci5pZGVudGlmaWVyKCk7CisgICAgYXV0byBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXIuaWRl
bnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAogICAgIGF1dG8mIGZyYW1lTG9h
ZGVyQ2xpZW50ID0gcmVzb3VyY2VMb2FkZXIuZnJhbWVMb2FkZXIoKS0+Y2xpZW50KCk7CkBAIC0y
OTUsNyArMjk1LDcgQEAgc3RhdGljIHZvaWQgYWRkUGFyYW1ldGVyc1NoYXJlZChjb25zdCBGcmFt
ZSogZnJhbWUsIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXIKIAogdm9pZCBXZWJMb2FkZXJT
dHJhdGVneTo6c2NoZWR1bGVMb2FkRnJvbU5ldHdvcmtQcm9jZXNzKFJlc291cmNlTG9hZGVyJiBy
ZXNvdXJjZUxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJS
ZXNvdXJjZUxvYWRlcjo6VHJhY2tpbmdQYXJhbWV0ZXJzJiB0cmFja2luZ1BhcmFtZXRlcnMsIGJv
b2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBSZWRpcmVjdCwgU2Vjb25kcyBtYXhp
bXVtQnVmZmVyaW5nVGltZSkKIHsKLSAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZp
ZXIgPSByZXNvdXJjZUxvYWRlci5pZGVudGlmaWVyKCk7CisgICAgYXV0byBpZGVudGlmaWVyID0g
cmVzb3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAog
ICAgIENvbnRlbnRTbmlmZmluZ1BvbGljeSBjb250ZW50U25pZmZpbmdQb2xpY3kgPSByZXNvdXJj
ZUxvYWRlci5zaG91bGRTbmlmZkNvbnRlbnQoKSA/IENvbnRlbnRTbmlmZmluZ1BvbGljeTo6U25p
ZmZDb250ZW50IDogQ29udGVudFNuaWZmaW5nUG9saWN5OjpEb05vdFNuaWZmQ29udGVudDsKQEAg
LTQ3Myw3ICs0NzMsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUoUmVzb3VyY2VM
b2FkZXIqIHJlc291cmNlTG9hZGVyKQogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIAotICAg
IFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVyLT5pZGVu
dGlmaWVyKCk7CisgICAgYXV0byBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXItPmlkZW50aWZp
ZXIoKTsKICAgICBpZiAoIWlkZW50aWZpZXIpIHsKICAgICAgICAgTE9HX0VSUk9SKCJXZWJMb2Fk
ZXJTdHJhdGVneSByZW1vdmluZyBhIFJlc291cmNlTG9hZGVyIHRoYXQgaGFzIG5vIGlkZW50aWZp
ZXIuIik7CiAgICAgICAgIHJldHVybjsKQEAgLTU2Niw3ICs1NjYsNyBAQCBXZWJMb2FkZXJTdHJh
dGVneTo6U3luY0xvYWRSZXN1bHQgV2ViTG9hZGVyU3RyYXRlZ3k6OmxvYWREYXRhVVJMU3luY2hy
b25vdXNseShjbwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8V2ViTG9h
ZGVyU3RyYXRlZ3k6OlN5bmNMb2FkUmVzdWx0PiBXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIoRnJhbWVMb2FkZXImIGZyYW1lTG9h
ZGVyLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKK3N0ZDo6b3B0aW9uYWw8V2ViTG9hZGVyU3RyYXRlZ3k6OlN5bmNMb2Fk
UmVzdWx0PiBXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VS
TFNjaGVtZUhhbmRsZXIoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KQogewogICAgIGF1dG8qIHdlYkZyYW1lTG9hZGVyQ2xpZW50ID0gdG9XZWJGcmFtZUxvYWRl
ckNsaWVudChmcmFtZUxvYWRlci5jbGllbnQoKSk7CiAgICAgYXV0byogd2ViRnJhbWUgPSB3ZWJG
cmFtZUxvYWRlckNsaWVudCA/ICZ3ZWJGcmFtZUxvYWRlckNsaWVudC0+d2ViRnJhbWUoKSA6IG51
bGxwdHI7CkBAIC01ODYsNyArNTg2LDcgQEAgc3RkOjpvcHRpb25hbDxXZWJMb2FkZXJTdHJhdGVn
eTo6U3luY0xvYWRSZXN1bHQ+IFdlYkxvYWRlclN0cmF0ZWd5Ojp0cnlMb2FkaW5nU3kKICAgICBy
ZXR1cm4gcmVzdWx0OwogfQogCi12b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3VyY2VT
eW5jaHJvbm91c2x5KEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgdW5zaWduZWQgbG9uZyByZXNv
dXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVu
dENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgIGNvbnN0IEZldGNoT3B0
aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVy
cywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0
b3I8dWludDhfdD4mIGRhdGEpCit2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3VyY2VT
eW5jaHJvbm91c2x5KEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9s
aWN5LCAgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiBv
cmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKICAgICBhdXRvKiB3ZWJG
cmFtZUxvYWRlckNsaWVudCA9IHRvV2ViRnJhbWVMb2FkZXJDbGllbnQoZnJhbWVMb2FkZXIuY2xp
ZW50KCkpOwogICAgIGF1dG8qIHdlYkZyYW1lID0gd2ViRnJhbWVMb2FkZXJDbGllbnQgPyAmd2Vi
RnJhbWVMb2FkZXJDbGllbnQtPndlYkZyYW1lKCkgOiBudWxscHRyOwpAQCAtNjgzLDEyICs2ODMs
NiBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5Ojpicm93c2luZ0NvbnRleHRSZW1vdmVkKEZyYW1l
JiBmcmFtZSkKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OkJyb3dzaW5nQ29udGV4dFJlbW92ZWQocGFnZS53ZWJQYWdlUHJveHlJ
ZGVudGlmaWVyKCksIHBhZ2UuaWRlbnRpZmllcigpLCBXZWJGcmFtZTo6ZnJvbUNvcmVGcmFtZShm
cmFtZSktPmZyYW1lSUQoKSksIDApOwogfQogCi11aW50NjRfdCBXZWJMb2FkZXJTdHJhdGVneTo6
Z2VuZXJhdGVMb2FkSWRlbnRpZmllcigpCi17Ci0gICAgc3RhdGljIHVpbnQ2NF90IGlkZW50aWZp
ZXIgPSAwOwotICAgIHJldHVybiArK2lkZW50aWZpZXI7Ci19Ci0KIGJvb2wgV2ViTG9hZGVyU3Ry
YXRlZ3k6OnVzZVBpbmdMb2FkKCkgY29uc3QKIHsKICAgICByZXR1cm4gIVJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuZmV0Y2hBUElLZWVwQWxpdmVFbmFibGVkKCk7CkBA
IC03MTIsNyArNzA2LDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c3RhcnRQaW5nTG9hZChG
cmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY28KICAgICB9CiAKICAgICBO
ZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVyczsKLSAgICBsb2FkUGFy
YW1ldGVycy5pZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRlZ3k6OmdlbmVyYXRlTG9hZElkZW50
aWZpZXIoKTsKKyAgICBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyID0gV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIGxvYWRQYXJhbWV0ZXJzLndlYlBh
Z2VQcm94eUlEID0gd2ViUGFnZS0+d2ViUGFnZVByb3h5SWRlbnRpZmllcigpOwogICAgIGxvYWRQ
YXJhbWV0ZXJzLndlYlBhZ2VJRCA9IHdlYlBhZ2UtPmlkZW50aWZpZXIoKTsKICAgICBsb2FkUGFy
YW1ldGVycy53ZWJGcmFtZUlEID0gd2ViRnJhbWUtPmZyYW1lSUQoKTsKQEAgLTc0OSw3ICs3NDMs
NyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKEZyYW1lJiBmcmFtZSwg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjbwogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6TG9hZFBpbmcgeyBsb2FkUGFyYW1l
dGVycyB9LCAwKTsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6ZGlkRmluaXNoUGluZ0xv
YWQodWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJl
c291cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKK3ZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZp
bmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwaW5nTG9hZElk
ZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3Bv
bnNlKQogewogICAgIGlmIChhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gbV9waW5nTG9hZENvbXBs
ZXRpb25IYW5kbGVycy50YWtlKHBpbmdMb2FkSWRlbnRpZmllcikpCiAgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKFdURk1vdmUoZXJyb3IpLCBXVEZNb3ZlKHJlc3BvbnNlKSk7CkBAIC03ODcsOSAr
NzgxLDkgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJlY29ubmVjdFRvKFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UKICAgICAgICAgICAgIHJlcXVlc3Quc2V0
SXNBcHBJbml0aWF0ZWQobG9hZGVyLT5sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCgpKTsK
ICAgICB9CiAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBwcmVjb25uZWN0aW9uSWRlbnRp
ZmllcjsKKyAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cj4gcHJlY29ubmVjdGlvbklkZW50aWZpZXI7CiAgICAgaWYgKGNvbXBsZXRpb25IYW5kbGVyKSB7
Ci0gICAgICAgIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyID0gV2ViTG9hZGVyU3RyYXRlZ3k6Omdl
bmVyYXRlTG9hZElkZW50aWZpZXIoKTsKKyAgICAgICAgcHJlY29ubmVjdGlvbklkZW50aWZpZXIg
PSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAg
IGF1dG8gYWRkUmVzdWx0ID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzLmFkZCgqcHJl
Y29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKICAgICAg
ICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKICAgICB9
CkBAIC04MTksMTAgKzgxMywxMiBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpwcmVjb25uZWN0
VG8oV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgV2ViUGFnZQogICAgIHBhcmFt
ZXRlcnMuaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiA9IHdlYkZyYW1lLmlzVG9wRnJhbWVO
YXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbigpOwogI2VuZGlmCiAKKyAgICAvLyBGSVhNRTogVXNl
IHNlbmRXaXRoQXN5bmNSZXBseSBpbnN0ZWFkIG9mIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyCisg
ICAgLy8gRklYTUU6IGRvbid0IHVzZSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
Zm9yIGEgcHJlY29ubmVjdGlvbiBpZGVudGlmaWVyLCB0b28uIEl0IHNob3VsZCBoYXZlIGl0cyBv
d24gdHlwZS4KICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OlByZWNvbm5lY3RUbyhwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV1RG
TW92ZShwYXJhbWV0ZXJzKSksIDApOwogfQogCi12b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpkaWRG
aW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNv
dXJjZUVycm9yJiYgZXJyb3IpCit2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVj
b25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9u
SWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQogewogICAgIGlmIChhdXRvIGNvbXBs
ZXRpb25IYW5kbGVyID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzLnRha2UocHJlY29u
bmVjdGlvbklkZW50aWZpZXIpKQogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGVy
cm9yKSk7CkBAIC04NjMsMjEgKzg1OSwyMSBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzZXRD
YXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBX
ZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5j
b25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OlNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljc0VuYWJsZWQoZW5hYmxlZCksIDApOwog
fQogCi1SZXNvdXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5OjpyZXNwb25zZUZyb21SZXNv
dXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCitSZXNv
dXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5OjpyZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVy
KQogewogICAgIFJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2U7CiAgICAgV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNl
bmRTeW5jKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6R2V0TmV0d29y
a0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlIHsgcmVzb3VyY2VMb2FkSWRlbnRpZmllciB9LCBNZXNz
YWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZTo6UmVwbHkgeyByZXNwb25zZSB9LCAwKTsKICAgICByZXR1cm4gcmVzcG9u
c2U7CiB9CiAKLVZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gV2ViTG9hZGVy
U3RyYXRlZ3k6OmludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCitWZWN0b3I8TmV0d29ya1Ry
YW5zYWN0aW9uSW5mb3JtYXRpb24+IFdlYkxvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2Fk
SW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKIHsKICAgICBWZWN0b3I8TmV0
d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGluZm9ybWF0aW9uOwogICAgIFdlYlByb2Nlc3M6
OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24o
KS5zZW5kU3luYyhNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OkdldE5l
dHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb24geyByZXNvdXJjZUxvYWRJZGVudGlmaWVy
IH0sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6R2V0TmV0d29ya0xv
YWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbjo6UmVwbHkgeyBpbmZvcm1hdGlvbiB9LCAwKTsKICAg
ICByZXR1cm4gaW5mb3JtYXRpb247CiB9CiAKLU5ldHdvcmtMb2FkTWV0cmljcyBXZWJMb2FkZXJT
dHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRf
dCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorTmV0d29ya0xvYWRNZXRyaWNzIFdlYkxvYWRlclN0
cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQogewogICAg
IE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljczsKICAgICBXZWJQcm9jZXNzOjpzaW5n
bGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2Vu
ZFN5bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpUYWtlTmV0d29y
a0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MgeyByZXNvdXJjZUxvYWRJZGVudGlmaWVyIH0sIE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6VGFrZU5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25NZXRyaWNzOjpSZXBseSB7IG5ldHdvcmtNZXRyaWNzIH0sIDApOwpAQCAtOTE5LDcgKzkx
NSw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdN
b2RlKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIFdlYkNvCiAKIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6
OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTdWJyZXNvdXJj
ZUxvYWRlcio+JiByZXNvdXJjZXMpCiB7Ci0gICAgYXV0byBpZGVudGlmaWVycyA9IHJlc291cmNl
cy5tYXAoW10oYXV0byogbG9hZGVyKSAtPiBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHsKKyAgICBh
dXRvIGlkZW50aWZpZXJzID0gcmVzb3VyY2VzLm1hcChbXShhdXRvKiBsb2FkZXIpIC0+IFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB7CiAgICAgICAgIHJldHVybiBsb2FkZXItPmlk
ZW50aWZpZXIoKTsKICAgICB9KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKaW5kZXggYzc5NmFlNTBmMTRjMTZlYzI1ZTZl
MDE0OWQ3NjZiZjdkMTFlMTg3Yi4uNDA1YzczNDMwZTIxMDEyYjFlMWFjNzg4OTY1Y2JjOTc2Nzc2
MjM2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9h
ZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJM
b2FkZXJTdHJhdGVneS5oCkBAIC00NCw3ICs0NCw2IEBAIGNsYXNzIE5ldHdvcmtQcm9jZXNzQ29u
bmVjdGlvbjsKIGNsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFnZTsKIGNsYXNzIFdlYlVSTFNj
aGVtZVRhc2tQcm94eTsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsK
IAogY2xhc3MgV2ViTG9hZGVyU3RyYXRlZ3kgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6TG9hZGVy
U3RyYXRlZ3kgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdlYkxvYWRlclN0cmF0ZWd5KTsg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC01Myw3ICs1Miw3IEBAIHB1YmxpYzoKICAgICB+
V2ViTG9hZGVyU3RyYXRlZ3koKSBmaW5hbDsKICAgICAKICAgICB2b2lkIGxvYWRSZXNvdXJjZShX
ZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlJiwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9hZGVyT3B0aW9ucyYsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyPiYmKT4m
JikgZmluYWw7Ci0gICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdlYkNvcmU6OkZy
YW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5
LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVy
TWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBWZWN0b3I8dWludDhfdD4mIGRhdGEpIGZpbmFsOworICAgIHZvaWQgbG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxvYWRlciYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xp
ZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3Qg
V2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKSBmaW5hbDsKICAgICB2
b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2UmKSBmaW5hbDsKICAgICB2b2lkIGJy
b3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViQ29yZTo6RnJhbWUmKSBmaW5hbDsKIApAQCAtNjgsMTUg
KzY3LDE1IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgdXNlUGluZ0xvYWQoKSBjb25zdCBmaW5hbDsK
ICAgICB2b2lkIHN0YXJ0UGluZ0xvYWQoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RI
ZWFkZXJzLCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBXZWJDb3JlOjpDb250ZW50U2Vj
dXJpdHlQb2xpY3lJbXBvc2l0aW9uLCBQaW5nTG9hZENvbXBsZXRpb25IYW5kbGVyJiYpIGZpbmFs
OwotICAgIHZvaWQgZGlkRmluaXNoUGluZ0xvYWQodWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJik7
CisgICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmJik7CiAKICAgICB2b2lkIHByZWNvbm5lY3RUbyhXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6U3RvcmVk
Q3JlZGVudGlhbHNQb2xpY3ksIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlciYmID0gbnVsbHB0
cik7CiAgICAgdm9pZCBwcmVjb25uZWN0VG8oV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBjb25zdCBV
UkwmLCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgUHJlY29ubmVjdENvbXBsZXRp
b25IYW5kbGVyJiYpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50
NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsK
KyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JiYpOwogCiAgICAgdm9pZCBzZXRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVk
KGJvb2wpIGZpbmFsOwogCi0gICAgV2ViUmVzb3VyY2VMb2FkZXIqIHdlYlJlc291cmNlTG9hZGVy
Rm9ySWRlbnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsg
cmV0dXJuIG1fd2ViUmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKTsgfQorICAgIFdlYlJl
c291cmNlTG9hZGVyKiB3ZWJSZXNvdXJjZUxvYWRlckZvcklkZW50aWZpZXIoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fd2ViUmVz
b3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKTsgfQogICAgIHZvaWQgc2NoZWR1bGVQbHVnaW5T
dHJlYW1Mb2FkKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6TmV0c2NhcGVQbHVnSW5TdHJlYW1M
b2FkZXJDbGllbnQmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChSZWZQdHI8V2ViQ29yZTo6TmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXI+JiYpPiYm
KTsKIAogICAgIHZvaWQgbmV0d29ya1Byb2Nlc3NDcmFzaGVkKCk7CkBAIC05MCw4ICs4OSw2IEBA
IHB1YmxpYzoKICAgICB2b2lkIGFkZE9ubGluZVN0YXRlQ2hhbmdlTGlzdGVuZXIoRnVuY3Rpb248
dm9pZChib29sKT4mJikgZmluYWw7CiAgICAgdm9pZCBzZXRPbkxpbmVTdGF0ZShib29sKTsKIAot
ICAgIHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7Ci0KICAgICB2b2lk
IHNldEV4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZShzdGQ6Om9w
dGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlzdGluZ05ldHdvcmtSZXNv
dXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUpIHsgbV9leGlzdGluZ05ldHdvcmtSZXNvdXJjZUxv
YWRJZGVudGlmaWVyVG9SZXN1bWUgPSBleGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlm
aWVyVG9SZXN1bWU7IH0KIAogICAgIHN0YXRpYyBjb25zdGV4cHIgU2Vjb25kcyBtZWRpYU1heGlt
dW1CdWZmZXJpbmdUaW1lIHsgNTBfbXMgfTsKQEAgLTEwOCwxMiArMTA1LDEyIEBAIHByaXZhdGU6
CiAgICAgICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAgICAgIFZlY3Rvcjx1
aW50OF90PiBkYXRhOwogICAgIH07Ci0gICAgc3RkOjpvcHRpb25hbDxTeW5jTG9hZFJlc3VsdD4g
dHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIoV2ViQ29yZTo6RnJh
bWVMb2FkZXImLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmKTsKKyAgICBzdGQ6Om9wdGlvbmFsPFN5bmNMb2FkUmVzdWx0PiB0cnlMb2FkaW5n
U3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihXZWJDb3JlOjpGcmFtZUxvYWRlciYs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0Jik7CiAgICAgU3luY0xvYWRSZXN1bHQgbG9hZERhdGFVUkxTeW5jaHJvbm91c2x5
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwogCi0gICAgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSByZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJl
c291cmNlTG9hZElkZW50aWZpZXIpIGZpbmFsOwotICAgIFZlY3RvcjxXZWJDb3JlOjpOZXR3b3Jr
VHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJl
c291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgZmlu
YWw7Ci0gICAgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJl
c291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgZmlu
YWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZUZyb21SZXNvdXJjZUxv
YWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7Cisg
ICAgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBpbnRlcm1l
ZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIFdlYkNvcmU6Ok5ldHdvcmtMb2Fk
TWV0cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAKICAgICBib29sIHNob3VsZFBlcmZv
cm1TZWN1cml0eUNoZWNrcygpIGNvbnN0IGZpbmFsOwogICAgIGJvb2wgaGF2ZVBlcmZvcm1lZFNl
Y3VyaXR5Q2hlY2tzKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBjb25zdCBmaW5h
bDsKQEAgLTEyMyw5ICsxMjAsOSBAQCBwcml2YXRlOgogICAgIHZvaWQgc2V0UmVzb3VyY2VMb2Fk
U2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZSYsIFdlYkNvcmU6OkxvYWRTY2hlZHVsaW5nTW9k
ZSkgZmluYWw7CiAgICAgdm9pZCBwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8
V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXIqPiYpIGZpbmFsOwogCi0gICAgVmVjdG9yPHVpbnQ2
NF90PiBvbmdvaW5nTG9hZHMoKSBjb25zdCBmaW5hbAorICAgIFZlY3RvcjxXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXI+IG9uZ29pbmdMb2FkcygpIGNvbnN0IGZpbmFsCiAgICAgewot
ICAgICAgICByZXR1cm4gV1RGOjptYXAobV93ZWJSZXNvdXJjZUxvYWRlcnMsIFtdKGF1dG8mJiBr
ZXlWYWx1ZSkgLT4gdWludDY0X3QgeworICAgICAgICByZXR1cm4gV1RGOjptYXAobV93ZWJSZXNv
dXJjZUxvYWRlcnMsIFtdKGF1dG8mJiBrZXlWYWx1ZSkgLT4gV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHsKICAgICAgICAgICAgIHJldHVybiBrZXlWYWx1ZS5rZXk7CiAgICAgICAg
IH0pOwogICAgIH0KQEAgLTEzMywxMCArMTMwLDEwIEBAIHByaXZhdGU6CiAgICAgSGFzaFNldDxS
ZWZQdHI8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+PiBtX2ludGVybmFsbHlGYWlsZWRSZXNvdXJj
ZUxvYWRlcnM7CiAgICAgUnVuTG9vcDo6VGltZXI8V2ViTG9hZGVyU3RyYXRlZ3k+IG1faW50ZXJu
YWxseUZhaWxlZExvYWRUaW1lcjsKICAgICAKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFJl
ZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4+IG1fd2ViUmVzb3VyY2VMb2FkZXJzOwotICAgIEhhc2hN
YXA8dW5zaWduZWQgbG9uZywgV2ViVVJMU2NoZW1lVGFza1Byb3h5Kj4gbV91cmxTY2hlbWVUYXNr
czsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+
IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcnM7Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25n
LCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXI+IG1fcHJlY29ubmVjdENvbXBsZXRpb25IYW5k
bGVyczsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVm
UHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJjZUxvYWRlcnM7CisgICAgSGFzaE1h
cDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYlVSTFNjaGVtZVRhc2tQcm94
eSo+IG1fdXJsU2NoZW1lVGFza3M7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+IG1fcGluZ0xvYWRDb21wbGV0
aW9uSGFuZGxlcnM7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcj4gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhh
bmRsZXJzOwogICAgIFZlY3RvcjxGdW5jdGlvbjx2b2lkKGJvb2wpPj4gbV9vbmxpbmVTdGF0ZUNo
YW5nZUxpc3RlbmVyczsKICAgICBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyPiBtX2V4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZTsK
ICAgICBib29sIG1faXNPbkxpbmUgeyB0cnVlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250
cm9sbGVyLmNwcAppbmRleCBkMzY0ZTcwMTJkODNiZmEyOTUzOGU0YmI3MDljN2E1N2ExYmZkNDhh
Li41NmM3YmNkYzA4MjRmOTgyZTA5ZTVlZGQwZmNjMzI1Njg1OGU0YWU3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRy
b2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291
cmNlSW50ZXJjZXB0Q29udHJvbGxlci5jcHAKQEAgLTI4LDI5ICsyOCwyOSBAQAogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAotYm9vbCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmlzSW50
ZXJjZXB0aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgY29uc3QKK2Jvb2wgV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyhXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QKIHsKICAgICByZXR1cm4gbV9pbnRlcmNl
cHRlZFJlc3BvbnNlUXVldWUuY29udGFpbnMoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViUmVz
b3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpiZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVy
OjpiZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewogICAgIG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLnNldChp
ZGVudGlmaWVyLCBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+PigpKTsKIH0KIAotdm9pZCBXZWJSZXNv
dXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmNvbnRpbnVlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQordm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmNvbnRpbnVl
UmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgYXV0byBxdWV1ZSA9IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLnRha2UoaWRlbnRp
Zmllcik7CiAgICAgZm9yIChhdXRvJiBjYWxsYmFjayA6IHF1ZXVlKQogICAgICAgICBjYWxsYmFj
aygpOwogfQogCi12b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0
ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYlJlc291cmNlSW50
ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX2ludGVyY2VwdGVkUmVzcG9uc2VR
dWV1ZS5yZW1vdmUoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRD
b250cm9sbGVyOjpkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQo
KT4mJiBmdW5jdGlvbikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpkZWZl
cihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRnVuY3Rpb248
dm9pZCgpPiYmIGZ1bmN0aW9uKQogewogICAgIEFTU0VSVChpc0ludGVyY2VwdGluZyhpZGVudGlm
aWVyKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dl
YlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKaW5kZXggZDcxYjkwNzNl
YTQ1Yzg2MTAyZWI0ODc1ZDlmOTFjMDAxYzg5ZThmNi4uODgzNzgyNzAwYmE5YzcxZmIyNjc2YWY3
ZjYzYTZlMGMzZmVmY2I2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgKQEAg
LTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9EZXF1ZS5oPgogI2luY2x1ZGUg
PHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC0zMywyMSArMzQs
MjEgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlJlc291cmNlSW50ZXJjZXB0Q29u
dHJvbGxlciB7CiBwdWJsaWM6Ci0gICAgYm9vbCBpc0ludGVyY2VwdGluZyh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIpIGNvbnN0OworICAgIGJvb2wgaXNJbnRlcmNlcHRpbmcoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKSBjb25zdDsKIAogICAgIC8vIFN0YXJ0IGludGVyY2VwdGlu
ZyBhIHJlc3BvbnNlLgotICAgIHZvaWQgYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgYmVnaW5JbnRlcmNlcHRpbmdSZXNwb25zZShX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgLy8gU3RvcCBpbnRlcmNl
cHRpbmcgYSByZXNwb25zZS4gQW4gaW50ZXJjZXB0IHJlc3BvbnNlIHdhcyBub3Qgc3VwcGxpZWQu
IFNlbmQgZGVmZXJyZWQgbmV0d29ya2luZyBjYWxsYmFja3MuCi0gICAgdm9pZCBjb250aW51ZVJl
c3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBjb250aW51ZVJlc3Bv
bnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICAvLyBTdG9wIGlu
dGVyY2VwdGluZyBhIHJlc3BvbnNlLiBBbiBpbnRlcmNlcHQgcmVzcG9uc2Ugd2FzIHN1cHBsaWVk
LiBTZW5kIG5vIGRlZmVycmVkIG5ldHdvcmtpbmcgY2FsbGJhY2tzLgotICAgIHZvaWQgaW50ZXJj
ZXB0ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgaW50ZXJj
ZXB0ZWRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCi0gICAg
dm9pZCBkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQoKT4mJik7
CisgICAgdm9pZCBkZWZlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIEZ1bmN0
aW9uPHZvaWQoKT4mJik7CiAKIHByaXZhdGU6Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBE
ZXF1ZTxGdW5jdGlvbjx2b2lkKCk+Pj4gbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWU7CisgICAg
SGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERlcXVlPEZ1bmN0aW9u
PHZvaWQoKT4+PiBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZTsKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
V2ViUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGVjZDQwNTJlYWMwMzgwMjgyNTVhNzg2MjM2ZTE5
Njk4NTNhZmExZDguLmM5ZmNiMGQ3OGY5M2ZjNWYwZjgxMzY2YzBiMTMwOThjM2YzZTA2YzAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9h
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJj
ZUxvYWRlci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1N1YnJlc291
cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAKLSNkZWZp
bmUgV0VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5l
dHdvcmssICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIs
IHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYlJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywg
bV90cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0
ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRCwg
IyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgV0VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10
LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIs
IGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYlJlc291cmNl
TG9hZGVyOjoiIGZtdCwgdGhpcywgbV90cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0
KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1Bh
cmFtZXRlcnMucmVzb3VyY2VJRC50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtODMsNyArODMsNyBAQCB1
aW50NjRfdCBXZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBj
b25zdAogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICBSRUxF
QVNFX0FTU0VSVChtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSk7Ci0gICAgcmV0dXJuIG1fY29y
ZUxvYWRlci0+aWRlbnRpZmllcigpOworICAgIHJldHVybiBtX2NvcmVMb2FkZXItPmlkZW50aWZp
ZXIoKS50b1VJbnQ2NCgpOwogfQogCiB2b2lkIFdlYlJlc291cmNlTG9hZGVyOjpkZXRhY2hGcm9t
Q29yZUxvYWRlcigpCkBAIC0xNTMsNyArMTUzLDcgQEAgdm9pZCBXZWJSZXNvdXJjZUxvYWRlcjo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBib28K
ICAgICB9CiAKICAgICBpZiAoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjpzaG91bGRJ
bnRlcmNlcHRSZXNwb25zZShtX2NvcmVMb2FkZXItPmZyYW1lKCksIHJlc3BvbnNlKSkgewotICAg
ICAgICB1bnNpZ25lZCBsb25nIGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIgPSBtX2NvcmVM
b2FkZXItPmlkZW50aWZpZXIoKTsKKyAgICAgICAgYXV0byBpbnRlcmNlcHRlZFJlcXVlc3RJZGVu
dGlmaWVyID0gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAgICAgICAgIG1faW50ZXJjZXB0
Q29udHJvbGxlci5iZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKGludGVyY2VwdGVkUmVxdWVzdElk
ZW50aWZpZXIpOwogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVy
Y2VwdFJlc3BvbnNlKG1fY29yZUxvYWRlci0+ZnJhbWUoKSwgcmVzcG9uc2UsIGludGVyY2VwdGVk
UmVxdWVzdElkZW50aWZpZXIsIFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyks
IGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIsIHBvbGljeURlY2lzaW9uQ29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKHBvbGljeURlY2lzaW9uQ29tcGxldGlvbkhhbmRsZXIpXShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiBpbnNwZWN0b3JSZXNwb25zZSwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
b3ZlcnJpZGVEYXRhKSBtdXRhYmxlIHsKICAgICAgICAgICAgIGlmICghbV9jb3JlTG9hZGVyIHx8
ICFtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmgKaW5kZXggMzU1MjAxYjk3MDQz
NWM1NGQ1NGIzZmJmOWU0NDJhY2QyYmNiMmIxMi4uYTIyZTYyZjI4YjVmYTRjZmM5MWFhNWU1Y2U4
MmNhMjdhZTI2YWQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdv
cmsvV2ViUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiV2Vi
UmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZUlk
ZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BhZ2VJZGVudGlmaWVyLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIApAQCAtNTAsMTUgKzUxLDEzIEBA
IGNsYXNzIFJlc291cmNlUmVzcG9uc2U7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi10eXBlZGVm
IHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7Ci0KIGNsYXNzIFdlYlJlc291cmNlTG9h
ZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViUmVzb3VyY2VMb2FkZXI+LCBwdWJsaWMgSVBDOjpN
ZXNzYWdlU2VuZGVyIHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgVHJhY2tpbmdQYXJhbWV0ZXJzIHsK
ICAgICAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdlUHJveHlJRDsKICAgICAgICAg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEOwogICAgICAgICBXZWJDb3JlOjpGcmFtZUlk
ZW50aWZpZXIgZnJhbWVJRDsKLSAgICAgICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJj
ZUlEIHsgMCB9OworICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVz
b3VyY2VJRDsKICAgICB9OwogCiAgICAgc3RhdGljIFJlZjxXZWJSZXNvdXJjZUxvYWRlcj4gY3Jl
YXRlKFJlZjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4mJiwgY29uc3QgVHJhY2tpbmdQYXJhbWV0
ZXJzJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAppbmRleCAwNmIzMjVjNTBlNzQ0
MjQxZDQ3ODUxZjEwNzk1ZDBiNmVkMDRlMzcwLi41OTk2ZTZjY2FlZDhhZTc2YjRkYmIwODQ5MTli
OGI0YmYwMDEzY2FiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFn
ZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKQEAgLTEzNSw3
ICsxMzUsNyBAQCBwcml2YXRlOgogICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlkZW50
aWZpZXI+IHBhZ2VJRCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fcGFnZUlEOyB9CiAgICAgc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQoKSBjb25zdCBmaW5h
bCB7IHJldHVybiBtX2ZyYW1lSUQ7IH0KIAotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0
b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmlu
YWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIGJvb2wgaXNTZXJ2aWNlV29ya2VyRnJhbWVMb2FkZXJD
bGllbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAKICAgICBTdHJpbmcgdXNlckFn
ZW50KGNvbnN0IFVSTCYpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fdXNlckFnZW50OyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCAwMDg4OWIwMGM4NTc5MzU5OGI3ZmUxMzMw
ZWYyOWQ4NmE3N2VlNDhmLi4wZThiOTdhNjdlNTc4OGNmNTBlZGJmMDU1Mjg0ODkxYTRlNThlYWNh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTIyMSw3ICsyMjEsNyBAQCB2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkZXRhY2hlZEZyb21QYXJlbnQzKCkKICAgICBub3RJ
bXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVu
dGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9
IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yMzUsNyArMjM1LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVl
c3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICB3ZWJQYWdlLT5hZGRSZXNvdXJjZVJlcXVlc3Qo
aWRlbnRpZmllciwgcmVxdWVzdCk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUt
PnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yNTIsNyArMjUyLDcgQEAgdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb24KICAgICB9CiB9CiAKLWJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcikKIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlm
ICghd2ViUGFnZSkKQEAgLTI2MSwxMyArMjYxLDEzIEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQK
ICAgICByZXR1cm4gd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVSZXNvdXJjZUxvYWRDbGllbnQoKS5z
aG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSgqd2ViUGFnZSwgbV9mcmFtZSwgaWRlbnRpZmllcik7
CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3Qg
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJikKIHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAogI2lmIFVTRShQUk9U
RUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCitib29s
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNw
YWNlKERvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKIHsKICAgICAvLyBUaGUgV2Vi
S2l0IDIgTmV0d29ya2luZyBwcm9jZXNzIGFza3MgdGhlIFVJUHJvY2VzcyBkaXJlY3RseSwgc28g
dGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBzaG91bGQgbmV2ZXIgcmVjZWl2ZSB0aGlzIGNhbGxiYWNr
LgogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMjc1LDcgKzI3NSw3IEBAIGJvb2wgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2Uo
RG9jdW1lbnRMb2FkZXIqCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBh
Z2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yODQsNyArMjg0LDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZAogICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxlUmVzb3VyY2VMb2FkQ2xpZW50
KCkuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoKndlYlBhZ2UsIG1fZnJhbWUsIGlkZW50
aWZpZXIsIHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKQogewogICAgIFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMzAz
LDcgKzMwMyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNo
RGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1CiB9CiAjZW5kaWYKIAotdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0zMTMsNyArMzEzLDcgQEAgdm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG8KICAgICB3ZWJQYWdlLT5yZW1vdmVSZXNvdXJjZVJlcXVlc3QoaWRl
bnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBXZWJQYWdl
KiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTg0OSw4
ICs4NDksOSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAgIGF1dG8qIGNvcmVGcmFtZSA9
IG1fZnJhbWUtPmNvcmVGcmFtZSgpOwogICAgIGF1dG8qIHBvbGljeURvY3VtZW50TG9hZGVyID0g
Y29yZUZyYW1lID8gY29yZUZyYW1lLT5sb2FkZXIoKS5wcm92aXNpb25hbERvY3VtZW50TG9hZGVy
KCkgOiBudWxscHRyOwogICAgIGF1dG8gbmF2aWdhdGlvbklEID0gcG9saWN5RG9jdW1lbnRMb2Fk
ZXIgPyBzdGF0aWNfY2FzdDxXZWJEb2N1bWVudExvYWRlciY+KCpwb2xpY3lEb2N1bWVudExvYWRl
cikubmF2aWdhdGlvbklEKCkgOiAwOwotICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgdXNpbmcg
YSBzdHJvbmdseS10eXBlZCBpZGVudGlmaWVyIGZvciBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmll
ci4KLSAgICBhdXRvIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyID0gcG9saWN5RG9jdW1lbnRM
b2FkZXIgJiYgcG9saWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpID8gcG9s
aWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpLT5pZGVudGlmaWVyKCkgOiAw
OworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKKyAgICBpZiAoYXV0byBtYWluUmVzb3VyY2VMb2Fk
ZXIgPSBwb2xpY3lEb2N1bWVudExvYWRlciA/IHBvbGljeURvY3VtZW50TG9hZGVyLT5tYWluUmVz
b3VyY2VMb2FkZXIoKSA6IG51bGxwdHIpCisgICAgICAgIG1haW5SZXNvdXJjZUxvYWRJZGVudGlm
aWVyID0gbWFpblJlc291cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAKICAgICBib29sIHdhc0Fs
bG93ZWRCeUluamVjdGVkQnVuZGxlID0gcG9saWN5ID09IFdLQnVuZGxlUGFnZVBvbGljeUFjdGlv
blVzZTsKICAgICBhdXRvIHByb3RlY3RvciA9IG1fZnJhbWUuY29weVJlZigpOwpAQCAtMTgwOCw3
ICsxODA5LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFjY2Vz
c2liaWxpdHlSZW1vdGVPYmplY3QoKQogICAgIHJldHVybiB3ZWJQYWdlLT5hY2Nlc3NpYmlsaXR5
UmVtb3RlT2JqZWN0KCk7CiB9CiAgICAgCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxs
Q2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlND
YWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJl
c3BvbnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYg
Y29tcGxldGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJh
bWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0xODg5LDcgKzE4OTAsNyBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzZW5kSDJQaW5nKGNvbnN0IFVSTCYgdXJsLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEV4cAogCiAgICAgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMg
cGFyYW1ldGVyczsKICAgICBwYXJhbWV0ZXJzLnJlcXVlc3QgPSBSZXNvdXJjZVJlcXVlc3QodXJs
KTsKLSAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJMb2FkZXJTdHJhdGVneTo6Z2VuZXJh
dGVMb2FkSWRlbnRpZmllcigpOworICAgIHBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICBwYXJhbWV0ZXJzLndl
YlBhZ2VQcm94eUlEID0gd2ViUGFnZS0+d2ViUGFnZVByb3h5SWRlbnRpZmllcigpOwogICAgIHBh
cmFtZXRlcnMud2ViUGFnZUlEID0gd2ViUGFnZS0+aWRlbnRpZmllcigpOwogICAgIHBhcmFtZXRl
cnMud2ViRnJhbWVJRCA9IG1fZnJhbWUtPmZyYW1lSUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmgKaW5kZXggNzdkYTQxMTg4MjI0OGUyYzBlYmVkYzE3Zjc4YjQzY2I4OTBkNWE4MC4uYTY5
ODVhNzgwNDRhYjJhNzYzZTQ5NGM2ODU3OTgzMzE3NmFhNzdhOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmgKQEAgLTgxLDIxICs4MSwyMSBAQCBwcml2YXRlOgogICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MigpIGZpbmFsOwogICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MygpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmll
clRvSW5pdGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZp
bmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9u
c2UpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOwotICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5k
UmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7CisgICAgYm9vbCBzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRp
b25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExC
QUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAgYm9vbCBjYW5BdXRoZW50aWNhdGVB
Z2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2Um
KSBmaW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgUmV0YWluUHRy
PENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIFJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBk
YXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7Ci0g
ICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKICAgICBi
b29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFsOwogI2lmIEVOQUJMRShEQVRB
X0RFVEVDVElPTikKICAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0Fy
cmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBmaW5hbDsKQEAgLTIzOCw3ICsyMzgsNyBAQCBwcml2YXRl
OgogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFJlbW90ZUFYT2JqZWN0UmVmIGFjY2Vzc2liaWxp
dHlSZW1vdGVPYmplY3QoKSBmaW5hbDsKICAgICAKLSAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNl
KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0Nh
Y2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3Bv
bnNlICopPiYmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBO
U0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJl
c3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKIAogICAgIE5TRGljdGlvbmFyeSAqZGF0YURldGVj
dGlvbkNvbnRleHQoKSBmaW5hbDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJGcmFtZUxvYWRlckNsaWVudElPUy5tbSBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRnJhbWVMb2Fk
ZXJDbGllbnRJT1MubW0KaW5kZXggZWFkNDM5MmE1NDg5ODA2NmMwMWY1Y2MwMjg4NDI2Y2Y0ZDMw
NGMwMi4uNjE3ZThmYmY4Mjg0NzY4MGNlMjhkZjU4YWQzYTkwNWNmMmYxNzJlZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJGcmFtZUxv
YWRlckNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvaW9zL1dlYkZyYW1lTG9hZGVyQ2xpZW50SU9TLm1tCkBAIC01OCw3ICs1OCw3IEBAIGJv
b2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmZvcmNlTGF5b3V0T25SZXN0b3JlRnJvbUJhY2tGb3J3
YXJkQ2FjaGUoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotUmV0YWluUHRyPENGRGljdGlvbmFy
eVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorUmV0YWluUHRyPENGRGljdGlvbmFy
eVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIG5vdElt
cGxlbWVudGVkKCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKaW5kZXggMzYyMDhiMDNmOGNjNjM2Nzg2NzFkZGJk
YjRjYTI3ZmI5YmIxNWRjMy4uMzdiMjhlM2U5ZjI1NDJlZDVmNzNiNTJiOWUwOWIwNWI2M2I0OGE2
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcApA
QCAtMzA0LDE0ICszMDQsMTIgQEAgdm9pZCBXZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxv
YWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExvYWRlciwKICAgICBTdWJyZXNv
dXJjZUxvYWRlciogbWFpblJlc291cmNlTG9hZGVyID0gZG9jdW1lbnRMb2FkZXItPm1haW5SZXNv
dXJjZUxvYWRlcigpOwogCiAgICAgYXV0byYgd2ViUHJvY2VzcyA9IFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpOwotICAgIC8vIFVzZSAwIHRvIGluZGljYXRlIHRoYXQgdGhlIHJlc291cmNlIGxvYWQg
Y2FuJ3QgYmUgY29udmVydGVkIGFuZCBhIG5ldyBkb3dubG9hZCBtdXN0IGJlIHN0YXJ0ZWQuCisg
ICAgLy8gVXNlIHN0ZDo6bnVsbG9wdCB0byBpbmRpY2F0ZSB0aGF0IHRoZSByZXNvdXJjZSBsb2Fk
IGNhbid0IGJlIGNvbnZlcnRlZCBhbmQgYSBuZXcgZG93bmxvYWQgbXVzdCBiZSBzdGFydGVkLgog
ICAgIC8vIFRoaXMgY2FuIGhhcHBlbiBpZiB0aGVyZSBpcyBubyBsb2FkZXIgYmVjYXVzZSB0aGUg
bWFpbiByZXNvdXJjZSBpcyBpbiB0aGUgV2ViQ29yZSBtZW1vcnkgY2FjaGUsCiAgICAgLy8gb3Ig
YmVjYXVzZSB0aGUgY29udmVyc2lvbiB3YXMgYXR0ZW1wdGVkIHdoZW4gbm90IGNhbGxpbmcgU3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSgpLgotICAgIHVpbnQ2NF90IG1haW5S
ZXNvdXJjZUxvYWRJZGVudGlmaWVyOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKICAgICBpZiAo
bWFpblJlc291cmNlTG9hZGVyKQogICAgICAgICBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciA9
IG1haW5SZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigpOwotICAgIGVsc2UKLSAgICAgICAgbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIgPSAwOwogCiAgICAgc3RkOjpvcHRpb25hbDxOYXZpZ2F0
aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNBcHBCb3VuZCA9IE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluOjpObzsKICAgICBpc0FwcEJvdW5kID0gbV9pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWlu
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCAz
OGI4Y2QwOTJmYTljNjAyYmE2MmQ5ZDcyYzk5NGFhODdhMzdiMTYwLi5mMTc1ZDA5YTkwZDUyZDYy
ZjcwMTFkNmQ1MzVjMGExNmI3NGU5YzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtNDMyMSwxMCArNDMyMSwxMCBAQCBXZWJGdWxsU2NyZWVu
TWFuYWdlciogV2ViUGFnZTo6ZnVsbFNjcmVlbk1hbmFnZXIoKQogfQogI2VuZGlmCiAKLXZvaWQg
V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIE1lc3Nh
Z2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsIG1lc3NhZ2VMZXZlbCwgY29uc3Qg
U3RyaW5nJiBtZXNzYWdlLCB1aW50NjRfdCByZXF1ZXN0SUQpCit2b2lkIFdlYlBhZ2U6OmFkZENv
bnNvbGVNZXNzYWdlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBNZXNzYWdlU291cmNlIG1lc3Nh
Z2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCBtZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2Fn
ZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlcXVlc3RJRCkKIHsKICAgICBp
ZiAoYXV0byogZnJhbWUgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJGcmFtZShmcmFtZUlE
KSkKLSAgICAgICAgZnJhbWUtPmFkZENvbnNvbGVNZXNzYWdlKG1lc3NhZ2VTb3VyY2UsIG1lc3Nh
Z2VMZXZlbCwgbWVzc2FnZSwgcmVxdWVzdElEKTsKKyAgICAgICAgZnJhbWUtPmFkZENvbnNvbGVN
ZXNzYWdlKG1lc3NhZ2VTb3VyY2UsIG1lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgcmVxdWVzdElELnRv
VUludDY0KCkpOwogfQogCiB2b2lkIFdlYlBhZ2U6OnNlbmRDU1BWaW9sYXRpb25SZXBvcnQoRnJh
bWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBJUEM6OkZvcm1EYXRh
UmVmZXJlbmNlJiYgcmVwb3J0RGF0YSkKQEAgLTU1MjgsNyArNTUyOCw3IEBAIHZvaWQgV2ViUGFn
ZTo6c2F2ZVBERlRvVGVtcG9yYXJ5Rm9sZGVyQW5kT3BlbldpdGhOYXRpdmVBcHBsaWNhdGlvbihj
b25zdCBTdHJpbmcmCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjphZGRSZXNvdXJjZVJlcXVl
c3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QpCit2b2lkIFdlYlBhZ2U6OmFkZFJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGlmICghcmVxdWVzdC51cmwoKS5wcm90b2NvbElz
SW5IVFRQRmFtaWx5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTU1NDMsNyArNTU0Myw3IEBAIHZv
aWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyCiAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6U2V0TmV0d29ya1JlcXVlc3RzSW5Qcm9ncmVzcyh0cnVlKSk7CiB9CiAKLXZvaWQgV2ViUGFn
ZTo6cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQg
V2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV90cmFja2VkTmV0d29ya1Jlc291cmNl
UmVxdWVzdElkZW50aWZpZXJzLnJlbW92ZShpZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwpA
QCAtNjk0MCw3ICs2OTQwLDcgQEAgdm9pZCBXZWJQYWdlOjpyZWdpc3RlclVSTFNjaGVtZUhhbmRs
ZXIodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYKICAgICBtX2lkZW50
aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5hZGQoaGFuZGxlcklkZW50aWZpZXIsIHNj
aGVtZVJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCkpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVy
bFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNl
LCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViUGFn
ZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmll
ciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBj
b21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9V
UkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NF
UlQoaGFuZGxlcik7CkBAIC02OTQ5LDcgKzY5NDksNyBAQCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVt
ZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aQogICAgIGhhbmRsZXItPnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odGFza0lkZW50aWZpZXIs
IFdURk1vdmUocmVzcG9uc2UpLCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRp
cmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVz
dCkKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50
NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVx
dWVzdCYmIHJlcXVlc3QpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJM
U2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJU
KGhhbmRsZXIpOwpAQCAtNjk1Nyw3ICs2OTU3LDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVU
YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW4K
ICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHRhc2tJZGVudGlmaWVyLCBX
VEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgW10gKFJlc291cmNlUmVxdWVzdCYm
KSB7fSk7CiB9CiAgICAgCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVz
cG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViUGFnZTo6dXJsU2No
ZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlm
aWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAg
ICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTY1LDcgKzY5NjUsNyBAQCB2b2lkIFdlYlBhZ2U6OnVy
bFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIs
IHVpbnQ2NAogICAgIGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodGFza0lkZW50aWZp
ZXIsIHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2
ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVt
ZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFS
ZWZlcmVuY2UmIGRhdGEpCiB7CiAgICAgYXV0byogaGFuZGxlciA9IG1faWRlbnRpZmllclRvVVJM
U2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRpZmllcik7CiAgICAgQVNTRVJU
KGhhbmRsZXIpOwpAQCAtNjk3Myw3ICs2OTczLDcgQEAgdm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVU
YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHQK
ICAgICBoYW5kbGVyLT50YXNrRGlkUmVjZWl2ZURhdGEodGFza0lkZW50aWZpZXIsIGRhdGEuc2l6
ZSgpLCBkYXRhLmRhdGEoKSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZENv
bXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRh
c2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBl
cnJvcikKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5k
bGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggZjU3M2Jk
YTc2NTU3YmM0OWYwZmQ2MzE4N2E1YjU3NDdhZmFkMWY5OC4uNTJhYmFkOWUwMGQzYzJiM2MxZWVh
NGRlNjRlODBiNGM2YjAxMGQxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuaApAQCAtNDM3LDcgKzQzNyw3IEBAIHB1YmxpYzoKICAgICBXZWJGdWxsU2NyZWVu
TWFuYWdlciogZnVsbFNjcmVlbk1hbmFnZXIoKTsKICNlbmRpZgogCi0gICAgdm9pZCBhZGRDb25z
b2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIE1lc3NhZ2VTb3VyY2UsIE1lc3Nh
Z2VMZXZlbCwgY29uc3QgU3RyaW5nJiwgdWludDY0X3QgcmVxdWVzdElEID0gMCk7CisgICAgdm9p
ZCBhZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIE1lc3NhZ2VTb3Vy
Y2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyID0geyB9KTsKICAgICB2b2lkIHNlbmRDU1BWaW9sYXRpb25SZXBvcnQoV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBVUkwmIHJlcG9ydFVSTCwgSVBDOjpGb3JtRGF0YVJl
ZmVyZW5jZSYmKTsKICAgICB2b2lkIHNlbmRDT0VQUG9saWN5SW5oZXJpdGVuY2VWaW9sYXRpb24o
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRh
dGEmIGVtYmVkZGVyT3JpZ2luLCBjb25zdCBTdHJpbmcmIGVuZHBvaW50LCBXZWJDb3JlOjpDT0VQ
RGlzcG9zaXRpb24sIGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3QgVVJMJiBibG9ja2VkVVJMKTsK
ICAgICB2b2lkIHNlbmRDT0VQQ09SUFZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgZW1iZWRkZXJPcmlnaW4sIGNvbnN0
IFN0cmluZyYgZW5kcG9pbnQsIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlvbiwgV2ViQ29yZTo6RmV0
Y2hPcHRpb25zOjpEZXN0aW5hdGlvbiwgY29uc3QgVVJMJiBibG9ja2VkVVJMKTsKQEAgLTEwMTYs
OCArMTAxNiw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGRyYXdQYWdlc0ZvclByaW50aW5nKFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgUHJpbnRJbmZvJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik+JiYpOwogI2VuZGlmCiAKLSAgICB2
b2lkIGFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmKTsKLSAgICB2b2lkIHJlbW92ZVJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBs
b25nKTsKKyAgICB2b2lkIGFkZFJlc291cmNlUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAgIHZvaWQg
cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7
CiAKICAgICB2b2lkIHNldE1lZGlhVm9sdW1lKGZsb2F0KTsKICAgICB2b2lkIHNldE11dGVkKFdl
YkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok11dGVkU3RhdGVGbGFncywgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCgpPiYmKTsKQEAgLTE4NzcsMTEgKzE4NzcsMTEgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQg
cmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFN0cmlu
ZyYgc2NoZW1lKTsKIAotICAgIHZvaWQgdXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rp
b24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0g
ICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7Ci0gICAgdm9pZCB1cmxTY2hl
bWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwot
ICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVu
dGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNl
Jik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklk
ZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1
aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGly
ZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOworICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJl
Y2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0
X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJik7CisgICAgdm9pZCB1cmxT
Y2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpOwogCiAgICAgdm9pZCBzZXRJc1Rha2luZ1NuYXBzaG90c0ZvckFwcGxp
Y2F0aW9uU3VzcGVuc2lvbihib29sKTsKICAgICB2b2lkIHNldE5lZWRzRE9NV2luZG93UmVzaXpl
RXZlbnQoKTsKQEAgLTIxNjEsNyArMjE2MSw3IEBAIHByaXZhdGU6CiAKICAgICB1bnNpZ25lZCBt
X2NhY2hlZFBhZ2VDb3VudCB7IDAgfTsKIAotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV90
cmFja2VkTmV0d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzOworICAgIEhhc2hTZXQ8V2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtX3RyYWNrZWROZXR3b3JrUmVzb3VyY2VS
ZXF1ZXN0SWRlbnRpZmllcnM7CiAKICAgICBXZWJDb3JlOjpJbnRTaXplIG1fbWluaW11bVNpemVG
b3JBdXRvTGF5b3V0OwogICAgIFdlYkNvcmU6OkludFNpemUgbV9zaXplVG9Db250ZW50QXV0b1Np
emVNYXhpbXVtU2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDVmZGIxZDAwNGQwMDQzNWIyZWExMTI1Nzc5ZmQy
YTEwZjY2NmU0ZDAuLmM0OGM3MmE5YTYxNmYxNDRjYjM3MjdlYzZiMTM5Yjc3YTRhZmVkZjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2Fn
ZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbgpAQCAtMjcsNyArMjcsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlIExlZ2FjeVJlY2Vp
dmVyIHsKIAogICAgIFNldEJhY2tncm91bmRDb2xvcihzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkNv
bG9yPiBjb2xvcikKIAotICAgIEFkZENvbnNvbGVNZXNzYWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRp
ZmllciBmcmFtZUlELCBlbnVtOnVpbnQ4X3QgSlNDOjpNZXNzYWdlU291cmNlIG1lc3NhZ2VTb3Vy
Y2UsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VMZXZlbCBtZXNzYWdlTGV2ZWwsIFN0cmluZyBt
ZXNzYWdlLCB1aW50NjRfdCByZXF1ZXN0SUQpCisgICAgQWRkQ29uc29sZU1lc3NhZ2UoV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VTb3Vy
Y2UgbWVzc2FnZVNvdXJjZSwgZW51bTp1aW50OF90IEpTQzo6TWVzc2FnZUxldmVsIG1lc3NhZ2VM
ZXZlbCwgU3RyaW5nIG1lc3NhZ2UsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBy
ZXF1ZXN0SUQpCiAgICAgU2VuZENTUFZpb2xhdGlvblJlcG9ydChXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCwgVVJMIHJlcG9ydFVSTCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSByZXBv
cnREYXRhKQogICAgIFNlbmRDT0VQUG9saWN5SW5oZXJpdGVuY2VWaW9sYXRpb24oV2ViQ29yZTo6
RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRh
dGEgZW1iZWRkZXJPcmlnaW4sIFN0cmluZyBlbmRwb2ludCwgZW51bTpib29sIFdlYkNvcmU6OkNP
RVBEaXNwb3NpdGlvbiBkaXNwb3NpdGlvbiwgU3RyaW5nIHR5cGUsIFVSTCBibG9ja2VkVVJMKQog
ICAgIFNlbmRDT0VQQ09SUFZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJ
RCwgc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSBlbWJlZGRlck9yaWdpbiwgU3Ry
aW5nIGVuZHBvaW50LCBlbnVtOmJvb2wgV2ViQ29yZTo6Q09FUERpc3Bvc2l0aW9uIGRpc3Bvc2l0
aW9uLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbiBkZXN0
aW5hdGlvbiwgVVJMIGJsb2NrZWRVUkwpCkBAIC01NTMsMTEgKzU1MywxMSBAQCBHZW5lcmF0ZVN5
bnRoZXRpY0VkaXRpbmdDb21tYW5kKGVudW06dWludDhfdCBXZWJLaXQ6OlN5bnRoZXRpY0VkaXRp
bmdDb21tYW5kVHlwZQogCiAgICAgUmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlk
ZW50aWZpZXIsIFN0cmluZyBzY2hlbWUpCiAKLSAgICBVUkxTY2hlbWVUYXNrV2lsbFBlcmZvcm1S
ZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qg
YWN0dWFsUmVxdWVzdCkgQXN5bmMKLSAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0IHByb3Bvc2VkUmVxdWVzdCkKLSAgICBVUkxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNl
KHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkUmVj
ZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlm
aWVyLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKLSAgICBVUkxTY2hlbWVU
YXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQorICAgIFVSTFNjaGVtZVRh
c2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3Nl
ZFJlcXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5
bmMKKyAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCisgICAgVVJMU2NoZW1lVGFza0RpZFJlY2VpdmVS
ZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlKQorICAgIFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0YSkKKyAgICBVUkxTY2hlbWVU
YXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBlcnJvcikKIAogICAgIFNldElzU3VzcGVuZGVkKGJvb2wgc3VzcGVuZGVkKQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5LmNwcAppbmRleCAzNmU1NzI1MTIzMzdkNjMwMGMyMmU4YTMyZTE3MTUxOTA0
M2I1MDM3Li5jZTkyNjE3NDFiZGIyOGMwNGQ5N2QwZDcwZWE4ZWFhMWM0ZGI0MTM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eS5jcHAKQEAgLTYzLDcgKzYzLDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayhSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBXZWJGcmFt
ZSYgd2UKICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5zdGFydExvYWRpbmcoKTsKIH0KIAot
dm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNl
TG9hZElkZW50aWZpZXIgbG9hZElkZW50aWZpZXIsIFdlYkZyYW1lJiB3ZWJGcmFtZSwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVz
b3VyY2VFcnJvciYgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKK3ZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hyb25vdXNseShXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgbG9hZElkZW50aWZpZXIsIFdlYkZyYW1lJiB3ZWJGcmFtZSwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKICAgICBkYXRhLnNocmlu
aygwKTsKICAgICBpZiAoIW1fd2ViUGFnZS5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFnZVByb3h5
OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHsg
bV9pZGVudGlmaWVyLCBsb2FkSWRlbnRpZmllciwgcmVxdWVzdCwgd2ViRnJhbWUuaW5mbygpIH0p
LCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrOjpS
ZXBseShyZXNwb25zZSwgZXJyb3IsIGRhdGEpKSkgewpAQCAtNzgsNyArNzgsNyBAQCB2b2lkIFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6c3RvcEFsbFRhc2tzKCkKICAgICAgICAgbV90YXNrcy5i
ZWdpbigpLT52YWx1ZS0+c3RvcExvYWRpbmcoKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
IG5ld1JlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIHRhc2sgPSBtX3Rhc2tz
LmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpAQCAtODcsNyArODcsNyBAQCB2
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1
aW50NjRfdCB0YXNrSWRlbnRpZmllcgogICAgIHRhc2stPmRpZFBlcmZvcm1SZWRpcmVjdGlvbihX
VEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCBXVEZNb3ZlKG5ld1JlcXVlc3QpLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0
YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAg
YXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2sp
CkBAIC05Niw3ICs5Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlk
UmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjCiAgICAgdGFzay0+ZGlk
UmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgc2l6ZV90
IHNpemUsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94
eTo6dGFza0RpZFJlY2VpdmVEYXRhKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllciwgc2l6ZV90IHNpemUsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpCiB7CiAgICAg
YXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2sp
CkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tE
aWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgc2l6ZV8KICAgICB0YXNrLT5k
aWRSZWNlaXZlRGF0YShzaXplLCBkYXRhKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHk6OnRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0Rp
ZENvbXBsZXRlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKGF1dG8gdGFzayA9IHJl
bW92ZVRhc2sodGFza0lkZW50aWZpZXIpKQogICAgICAgICB0YXNrLT5kaWRDb21wbGV0ZShlcnJv
cik7CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRh
c2tEaWRTdG9wTG9hZGluZyhXZWJVUkxTY2hlbWVUYXNrUHJveHkmIHRhc2spCiAgICAgcmVtb3Zl
VGFzayh0YXNrLmlkZW50aWZpZXIoKSk7CiB9CiAKLVJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJv
eHk+IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayh1aW50NjRfdCBpZGVudGlm
aWVyKQorUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gV2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5OjpyZW1vdmVUYXNrKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyKQogewogICAgIGF1dG8gdGFzayA9IG1fdGFza3MudGFrZShpZGVudGlmaWVyKTsKICAgICBp
ZiAoIXRhc2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oCmluZGV4IDA0MmQ3OWM2ZTZmODQ1ZGMxYjA2
YjJjYTMzODAwNzJkNDgwYmE2ZjAuLjA2OTVjNDA3NDc4M2QxMWQ2NmNkNTAwNDE0M2NkNGFkZDE1
N2Q5NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVS
TFNjaGVtZUhhbmRsZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oCkBAIC0zOSw3ICszOSw2IEBAIGNsYXNzIFJl
c291cmNlUmVxdWVzdDsKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJQYWdlOwotdHlw
ZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwogCiBjbGFzcyBXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHkgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJVUkxTY2hlbWVIYW5kbGVyUHJv
eHk+IHsKIHB1YmxpYzoKQEAgLTUyLDI2ICs1MSwyNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGFy
dE5ld1Rhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXImLCBXZWJGcmFtZSYpOwogICAgIHZvaWQg
c3RvcEFsbFRhc2tzKCk7CiAKLSAgICB2b2lkIGxvYWRTeW5jaHJvbm91c2x5KFJlc291cmNlTG9h
ZElkZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBWZWN0
b3I8dWludDhfdD4mKTsKKyAgICB2b2lkIGxvYWRTeW5jaHJvbm91c2x5KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgV2ViRnJhbWUmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciYsIFZlY3Rvcjx1aW50OF90PiYpOwogCiAgICAgdWludDY0X3QgaWRlbnRpZmllcigpIGNvbnN0
IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogICAgIFdlYlBhZ2UmIHBhZ2UoKSB7IHJldHVybiBt
X3dlYlBhZ2U7IH0KIAotICAgIHZvaWQgdGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRf
dCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRf
dCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwotICAg
IHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBzaXplX3Qs
IGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwotICAgIHZvaWQgdGFza0RpZENvbXBsZXRlKHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CisgICAgdm9p
ZCB0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVl
c3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+
JiYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2
b2lkIHRhc2tEaWRSZWNlaXZlRGF0YShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7CisgICAgdm9pZCB0YXNrRGlkQ29tcGxldGUo
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJik7CiAgICAgdm9pZCB0YXNrRGlkU3RvcExvYWRpbmcoV2ViVVJMU2NoZW1lVGFza1By
b3h5Jik7CiAKIHByaXZhdGU6CiAgICAgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5KFdlYlBhZ2Um
LCB1aW50NjRfdCBpZGVudGlmaWVyKTsKIAotICAgIFJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJv
eHk+IHJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcik7CisgICAgUmVmUHRyPFdlYlVSTFNj
aGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFzayhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpOwogCiAgICAgV2ViUGFnZSYgbV93ZWJQYWdlOworICAgIC8vIEZJWE1FOiBUaGlzIHNob3Vs
ZCBiZSBhIHN0cm9uZ2x5IHR5cGVkIGlkZW50aWZpZXIuCiAgICAgdWludDY0X3QgbV9pZGVudGlm
aWVyIHsgMCB9OwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmUHRyPFdlYlVSTFNjaGVtZVRh
c2tQcm94eT4+IG1fdGFza3M7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIFJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+PiBtX3Rhc2tzOwogfTsgLy8g
Y2xhc3MgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1l
VGFza1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNj
aGVtZVRhc2tQcm94eS5jcHAKaW5kZXggNzU3OTlhMGM2NWQwY2RhZmRlNmYyNjViMWM1NDc1NmI4
NGEyMDlkOS4uYzhjNGFmN2ViZDhmMTFjZjZjOGNhN2FlN2UwN2EwM2I0ZDU5NDU0OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1By
b3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hl
bWVUYXNrUHJveHkuY3BwCkBAIC0zOSw4ICszOSw4IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNv
dXJjZUxvYWRlci5oPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogCi0jZGVm
aW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAi
W3NjaGVtZUhhbmRsZXI9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJ
RD0lIiBQUkl1NjQgIiwgdGFza0lEPSVsdV0gV2ViVVJMU2NoZW1lVGFza1Byb3h5OjoiCi0jZGVm
aW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJT
IG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIHBhZ2VJREZyb21XZWJGcmFtZShtX2Zy
YW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgbV9pZGVudGlmaWVyCisjZGVmaW5l
IFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiW3Nj
aGVtZUhhbmRsZXI9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0l
IiBQUkl1NjQgIiwgdGFza0lEPSUiIFBSSXU2NCAiXSBXZWJVUkxTY2hlbWVUYXNrUHJveHk6OiIK
KyNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFN
RVRFUlMgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgcGFnZUlERnJvbVdlYkZyYW1l
KG1fZnJhbWUpLCBmcmFtZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBtX2lkZW50aWZpZXIudG9V
SW50NjQoKQogI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFTRV9MT0coZm10LCAu
Li4pIFJFTEVBU0VfTE9HKE5ldHdvcmssIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xP
R19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xP
R19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3BhY2UgV2ViS2l0
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNj
aGVtZVRhc2tQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJM
U2NoZW1lVGFza1Byb3h5LmgKaW5kZXggYjVlMzM0ZGZjMjMzNjQ4ZWM1N2U4ZjYxNjNkYzE1ZmFi
NTZmNmM1Yy4uNzU1MDg3OTQxODIwZmVlZmM1ZDAxMjcxNThjMDY0Y2UyNThhMDgzNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1By
b3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1l
VGFza1Byb3h5LmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
UmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KQEAgLTU3LDcgKzU4LDcgQEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsKICAgICB2b2lkIGRpZENvbXBs
ZXRlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAotICAgIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9p
ZGVudGlmaWVyOyB9CiAKIHByaXZhdGU6CiAgICAgV2ViVVJMU2NoZW1lVGFza1Byb3h5KFdlYlVS
TFNjaGVtZUhhbmRsZXJQcm94eSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVyJiwgV2ViRnJhbWUm
KTsKQEAgLTcwLDcgKzcxLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXI+IG1fY29yZUxvYWRlcjsKICAgICBSZWZQdHI8V2ViRnJhbWU+IG1fZnJhbWU7CiAg
ICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG1fcmVxdWVzdDsKLSAgICB1bnNpZ25lZCBsb25n
IG1faWRlbnRpZmllcjsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9p
ZGVudGlmaWVyOwogICAgIGJvb2wgbV93YWl0aW5nRm9yQ29tcGxldGlvbkhhbmRsZXIgeyBmYWxz
ZSB9OwogICAgIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+IG1fcXVldWVkVGFza3M7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxv
YWRTY2hlZHVsZXIuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJS
ZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCmluZGV4IDdkY2ZlMGI4NzljYTg1NDU2OTY4MzdlZWM3
Y2E4OTBmOTk4YTk5MWUuLjFlNGQyOWMwZTQxZjc4NmM2NWQ0MzFmMzcxYjI2YzQ3NTA0OTVkMDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3Vy
Y2VMb2FkU2NoZWR1bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBw
b3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKQEAgLTEwNyw3ICsxMDcsNyBAQCB2b2lk
IFdlYlJlc291cmNlTG9hZFNjaGVkdWxlcjo6bG9hZFJlc291cmNlKEZyYW1lJiBmcmFtZSwgQ2Fj
aGVkUmVzb3VyY2UmIHJlc291cgogICAgIH0pOwogfQogCi12b2lkIFdlYlJlc291cmNlTG9hZFNj
aGVkdWxlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2Fk
ZXIsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50
Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25zLCBjb25zdCBIVFRQ
SGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCit2b2lkIFdlYlJlc291cmNlTG9hZFNjaGVkdWxl
cjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIsIFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBD
bGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0
IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKICAgICBhdXRvKiBkb2N1bWVudCA9
IGZyYW1lTG9hZGVyLmZyYW1lKCkuZG9jdW1lbnQoKTsKICAgICBhdXRvKiBzb3VyY2VPcmlnaW4g
PSBkb2N1bWVudCA/ICZkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSA6IG51bGxwdHI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9h
ZFNjaGVkdWxlci5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNv
dXJjZUxvYWRTY2hlZHVsZXIuaAppbmRleCAxNjE4YjY3YTFmZjZkNjJmODExNDI3ZTk2Yzk5ZTkz
OTZhOWIwYTBiLi5lNTk1NTBmYmJiYTBmNmRjMzRjYzMzZDUxMGU4OWU2ZTM0OThkYTA1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9h
ZFNjaGVkdWxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2Vi
UmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKQEAgLTQ1LDcgKzQ1LDcgQEAgcHVibGljOgogICAgIFdl
YlJlc291cmNlTG9hZFNjaGVkdWxlcigpOwogCiAgICAgdm9pZCBsb2FkUmVzb3VyY2UoV2ViQ29y
ZTo6RnJhbWUmLCBXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZSYsIFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlck9wdGlvbnMmLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcj4mJik+JiYpIGZp
bmFsOwotICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxv
YWRlciYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdl
YkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IFdlYkNvcmU6OkZldGNoT3B0aW9u
cyYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYpIGZpbmFsOwor
ICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxvYWRlciYs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgV2ViQ29y
ZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4
X3Q+JikgZmluYWw7CiAgICAgdm9pZCBwYWdlTG9hZENvbXBsZXRlZChXZWJDb3JlOjpQYWdlJikg
ZmluYWw7CiAgICAgdm9pZCBicm93c2luZ0NvbnRleHRSZW1vdmVkKFdlYkNvcmU6OkZyYW1lJikg
ZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4IDNjMjQ4MTMxZTVkYjgxOWFj
MjNiNmYxOGYyOGY5YmIxMjFmNGJiYzMuLmUzZjVmOWM5ZjBmZmQ4YWVlMmRiZjBlNzgzMjE2YmMz
YzBhNzU1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtODIsMjggKzgyLDI4IEBA
IHByaXZhdGU6CiAKICAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKIAotICAgIHZvaWQgYXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYp
IGZpbmFsOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwogCi0gICAgdm9pZCBkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7Ci0gICAgYm9vbCBzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3Bv
bnNlKSBmaW5hbDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5h
bDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVT
RShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNh
dGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5h
bDsKKyAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwogI2VuZGlmCiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rp
b25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKSBmaW5hbDsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9u
UHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2
b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwor
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgaW50IGRhdGFMZW5n
dGgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsK
ICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERh
dGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykgZmluYWw7CiAjZW5kaWYKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBm
aW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVk
VVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2Ug
Kik+JiYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2Fj
aGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9u
c2UgKik+JiYpIGNvbnN0IGZpbmFsOwogCiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25s
b2FkRXZlbnRzKCkgZmluYWw7CiAgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVTZXJ2ZXJSZWRp
cmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0gYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5t
bQppbmRleCBmYmFlYThlYTY4NjhkYTgxMjRjMDExMmI1MGIyY2Q0NTVlNzE1ZjY4Li43MWE3MTVi
MzdmYTVlNmM1Zjc0NDRlMjM3YzgyZDE1OWNlMDg4YWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5tbQpAQCAtMzM2LDcgKzMzNiw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdlYkNvcmU6OkRvY3VtCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50
aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiBy
ZXF1ZXN0KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5p
dGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyht
X3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25D
YWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1w
bGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtMzU2LDcgKzM1Niw3IEBAIHZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxv
bmcgaWRlbnRpCiAgICAgW3dlYlZpZXcgX2FkZE9iamVjdDpvYmplY3QuZ2V0KCkgZm9ySWRlbnRp
ZmllcjppZGVudGlmaWVyXTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewogICAgIFdlYlZpZXcgKndl
YlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVs
ZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVz
b3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC0zODYsNyArMzg2
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWQKICAgICAgICAgcmVxdWVzdC51cGRhdGVGcm9t
RGVsZWdhdGVQcmVzZXJ2aW5nT2xkUHJvcGVydGllcyhXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qo
bmV3VVJMUmVxdWVzdCkpOwogfQogCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIpCitib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJWaWV3
ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJj
ZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dl
dFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtMzk5LDcg
KzM5OSw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxT
dG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNo
YWxsZW5nZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQogewogICAgIFdlYlZpZXcgKndl
YlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVs
ZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVz
b3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC00MjAsNyArNDIw
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG8KIH0KIAogI2lmIFVTRShQUk9URUNUSU9OX1NQ
QUNFX0FVVEhfQ0FMTEJBQ0spCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2Fk
ZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNw
YWNlJiBwcm90ZWN0aW9uU3BhY2UpCitib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRo
ZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKIHsKICAgICBXZWJW
aWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNv
dXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmll
d0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtNDQx
LDcgKzQ0MSw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFn
YWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lCiAjZW5kaWYKIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCi1SZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6Y29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorUmV0YWluUHRyPENGRGljdGlvbmFyeVJl
Zj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJh
bWUuZ2V0KCkpOwogICAgIGlkIHJlc291cmNlID0gW3dlYlZpZXcgX29iamVjdEZvcklkZW50aWZp
ZXI6aWRlbnRpZmllcl07CkBAIC00NjgsNyArNDY4LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6c2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBVUkwmIGltYWdlVVJMKSBjb25zdAog
ICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2Vi
RnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hl
KiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1l
bnRhdGlvbnMod2ViVmlldyk7CkBAIC00ODYsNyArNDg2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqIGwKICAgICB9CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25zZSwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25z
dAogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkp
OwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRh
dGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2Vi
Vmlldyk7CkBAIC01MDYsNyArNTA2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2ls
bENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW4KICAgICBj
b21wbGV0aW9uSGFuZGxlcihyZXNwb25zZSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKQogewogICAgIFdlYlZpZXcgKndl
YlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVs
ZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVz
b3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC01MjgsNyArNTI4
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0
ZWN0aW9uKE5TQXJyYXkgKikKIH0KICNlbmRpZgogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdl
YlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJl
c291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJW
aWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC01
NTAsNyArNTUwLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5p
c2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2EKICAgICBzdGF0aWNfY2FzdDxX
ZWJEb2N1bWVudExvYWRlck1hYyo+KGxvYWRlciktPmRlY3JlYXNlTG9hZENvdW50KGlkZW50aWZp
ZXIpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2Fk
aW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBXZWJWaWV3ICp3
ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURl
bGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJl
c291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5oIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5oCmlu
ZGV4IGU4MDMxNGIyYTA4OTQ4NGE0YTJlNDllNjA5NzRmZTYwOTdiMWY3OGUuLjYwMmZiYzIwZjVl
MmYwMDJmYmJlODhhYmU1ZGJmYTI2YjUwMDU1NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLmgKQEAgLTI3LDYgKzI3
LDcgQEAKICAqLwogCiAjaW1wb3J0IDxXZWJDb3JlL0RvY3VtZW50TG9hZGVyLmg+CisjaW1wb3J0
IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2ltcG9ydCA8d3RmL1JldGFp
blB0ci5oPgogI2ltcG9ydCA8d3RmL0hhc2hTZXQuaD4KIApAQCAtNDgsOCArNDksOCBAQCBwdWJs
aWM6CiAgICAgdm9pZCBkZXRhY2hEYXRhU291cmNlKCk7CiAgICAgV2ViRGF0YVNvdXJjZSAqZGF0
YVNvdXJjZSgpIGNvbnN0OwogCi0gICAgdm9pZCBpbmNyZWFzZUxvYWRDb3VudCh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpOwotICAgIHZvaWQgZGVjcmVhc2VMb2FkQ291bnQodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGluY3JlYXNlTG9hZENvdW50KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgdm9pZCBkZWNyZWFzZUxvYWRDb3VudChXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiBwcml2YXRlOgogICAgIFdlYkRvY3VtZW50
TG9hZGVyTWFjKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6
OlN1YnN0aXR1dGVEYXRhJik7CkBAIC02NCw1ICs2NSw1IEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X2lzRGF0YVNvdXJjZVJldGFpbmVkOwogICAgIFJldGFpblB0cjxpZD4gbV9yZXNvdXJjZUxvYWRE
ZWxlZ2F0ZTsKICAgICBSZXRhaW5QdHI8aWQ+IG1fZG93bmxvYWREZWxlZ2F0ZTsKLSAgICBIYXNo
U2V0PHVuc2lnbmVkIGxvbmc+IG1fbG9hZGluZ1Jlc291cmNlczsKKyAgICBIYXNoU2V0PFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9sb2FkaW5nUmVzb3VyY2VzOwogfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2Fk
ZXJNYWMubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9h
ZGVyTWFjLm1tCmluZGV4IGQyZWJjYjAwMWRmNmE3ZTc0MDUyNjczOTM2ZTk3NTczMzIxMGJjNzAu
LjUxYjNkY2VkMzFhYjEzMTEyNTk4MTk3OThjMmZjYmRiMDljNDU0ZDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMubW0KKysr
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5t
bQpAQCAtOTIsNyArOTIsNyBAQCB2b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZXRhY2hGcm9t
RnJhbWUoKQogICAgIC8vIGZyYW1lIGlzIG5vdCBhdHRhY2hlZD8KIH0KIAotdm9pZCBXZWJEb2N1
bWVudExvYWRlck1hYzo6aW5jcmVhc2VMb2FkQ291bnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KQordm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6aW5jcmVhc2VMb2FkQ291bnQoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJUKG1fZGF0
YVNvdXJjZSk7CiAKQEAgLTEwMyw5ICsxMDMsOSBAQCB2b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFj
OjppbmNyZWFzZUxvYWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiAgICAgcmV0YWlu
RGF0YVNvdXJjZSgpOwogfQogCi12b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxv
YWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYkRvY3VtZW50TG9hZGVy
TWFjOjpkZWNyZWFzZUxvYWRDb3VudChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllcikKIHsKLSAgICBIYXNoU2V0PHVuc2lnbmVkIGxvbmc+OjppdGVyYXRvciBpdCA9
IG1fbG9hZGluZ1Jlc291cmNlcy5maW5kKGlkZW50aWZpZXIpOworICAgIGF1dG8gaXQgPSBtX2xv
YWRpbmdSZXNvdXJjZXMuZmluZChpZGVudGlmaWVyKTsKICAgICAKICAgICAvLyBJdCBpcyB2YWxp
ZCBmb3IgYSBsb2FkIHRvIGJlIGNhbmNlbGxlZCBiZWZvcmUgaXQncyBzdGFydGVkLgogICAgIGlm
IChpdCA9PSBtX2xvYWRpbmdSZXNvdXJjZXMuZW5kKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaAppbmRleCBlMWZkZDQwMGYxYmU3NWY3
ZDk1MTcwZTY3NDAzZDQ0ZWZjMTRkYWY1Li5hNDdkYTJjZjRkNzQ5NDk2MGY1YzUwOGYyMmI3ZjE1
MGEyN2Q4ZGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YlZpZXdJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
Vmlld0ludGVybmFsLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSFRNTE1l
ZGlhRWxlbWVudEVudW1zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xheW91dE1pbGVzdG9uZS5oPgog
I2ltcG9ydCA8V2ViQ29yZS9QbGF5YmFja1RhcmdldENsaWVudENvbnRleHRJZGVudGlmaWVyLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2ltcG9ydCA8
V2ViQ29yZS9UZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4
dEluZGljYXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yV2luZG93Lmg+CkBA
IC0yNTAsOSArMjUxLDExIEBAIFdlYkxheW91dE1pbGVzdG9uZXMga2l0TGF5b3V0TWlsZXN0b25l
cyhPcHRpb25TZXQ8V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lPik7CiAtICh2b2lkKXJlbW92ZVBs
dWdpbkluc3RhbmNlVmlld3NGb3I6KFdlYkZyYW1lKil3ZWJGcmFtZTsKICNlbmRpZgogCi0tICh2
b2lkKV9hZGRPYmplY3Q6KGlkKW9iamVjdCBmb3JJZGVudGlmaWVyOih1bnNpZ25lZCBsb25nKWlk
ZW50aWZpZXI7Ci0tIChpZClfb2JqZWN0Rm9ySWRlbnRpZmllcjoodW5zaWduZWQgbG9uZylpZGVu
dGlmaWVyOwotLSAodm9pZClfcmVtb3ZlT2JqZWN0Rm9ySWRlbnRpZmllcjoodW5zaWduZWQgbG9u
ZylpZGVudGlmaWVyOworI2lmZGVmIF9fY3BsdXNwbHVzCistICh2b2lkKV9hZGRPYmplY3Q6KGlk
KW9iamVjdCBmb3JJZGVudGlmaWVyOihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
aWRlbnRpZmllcjsKKy0gKGlkKV9vYmplY3RGb3JJZGVudGlmaWVyOihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpaWRlbnRpZmllcjsKKy0gKHZvaWQpX3JlbW92ZU9iamVjdEZvcklk
ZW50aWZpZXI6KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcilpZGVudGlmaWVyOwor
I2VuZGlmCiAKIC0gKHZvaWQpX3NldFpvb21NdWx0aXBsaWVyOihmbG9hdCltdWx0aXBsaWVyIGlz
VGV4dE9ubHk6KEJPT0wpaXNUZXh0T25seTsKIC0gKGZsb2F0KV96b29tTXVsdGlwbGllcjooQk9P
TClpc1RleHRPbmx5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IDI4OTUzZDZm
NmRiNDNhMWIzNjY0MjkyZDM2N2U2YjdlMDZjMDY0OGEuLjU4ODk5MmQ0YWFmZTVmYzgzOWI2NTRk
Y2VkYTg5MmRkNzAzNTgyM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAgLTE3
Nyw3ICsxNzcsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZExvYWRS
ZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlcgogICAgIHJldHVybiBmYWxzZTsK
IH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlh
bFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53
ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VM
b2FkRGVsZWdhdGU7CkBAIC0xODUsMTAgKzE4NSwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aQogICAgICAgICByZXR1cm47CiAKICAgICBDT01QdHI8V2ViTXV0YWJsZVVSTFJlcXVlc3Q+IHdl
YlVSTFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpjcmVhdGVJbnN0YW5j
ZShyZXF1ZXN0KSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmlkZW50aWZpZXJGb3JJbml0
aWFsUmVxdWVzdCh3ZWJWaWV3LCB3ZWJVUkxSZXF1ZXN0LmdldCgpLCBnZXRXZWJEYXRhU291cmNl
KGxvYWRlciksIGlkZW50aWZpZXIpOworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5pZGVudGlm
aWVyRm9ySW5pdGlhbFJlcXVlc3Qod2ViVmlldywgd2ViVVJMUmVxdWVzdC5nZXQoKSwgZ2V0V2Vi
RGF0YVNvdXJjZShsb2FkZXIpLCBpZGVudGlmaWVyLnRvVUludDY0KCkpOwogfQogCi1ib29sIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJWaWV3
KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3Vy
Y2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpAQCAtMjAwLDEzICsyMDAsMTMg
QEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW4KICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICBC
T09MIHNob3VsZFVzZTsKLSAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJp
dmF0ZS0+c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uod2ViVmlldywgaWRlbnRpZmllciwgZ2V0
V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkVXNlKSkpCisgICAgaWYgKFNVQ0NFRURFRChy
ZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHdl
YlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAm
c2hvdWxkVXNlKSkpCiAgICAgICAgIHJldHVybiBzaG91bGRVc2U7CiAKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQor
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2Up
CiB7CiAgICAgQVNTRVJUKGNoYWxsZW5nZS5hdXRoZW50aWNhdGlvbkNsaWVudCgpKTsKIApAQCAt
MjE0LDcgKzIxNCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hCiAgICAgQ09NUHRyPElXZWJS
ZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CiAgICAgaWYgKFNVQ0NF
RURFRCh3ZWJWaWV3LT5yZXNvdXJjZUxvYWREZWxlZ2F0ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUp
KSkgewogICAgICAgICBDT01QdHI8V2ViVVJMQXV0aGVudGljYXRpb25DaGFsbGVuZ2U+IHdlYkNo
YWxsZW5nZShBZG9wdENPTSwgV2ViVVJMQXV0aGVudGljYXRpb25DaGFsbGVuZ2U6OmNyZWF0ZUlu
c3RhbmNlKGNoYWxsZW5nZSkpOwotICAgICAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERl
bGVnYXRlLT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uod2ViVmlldywgaWRlbnRp
Zmllciwgd2ViQ2hhbGxlbmdlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpKSkKKyAg
ICAgICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgd2ViQ2hh
bGxlbmdlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpKSkKICAgICAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKQEAgLTIyMyw3ICsyMjMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExv
YQogICAgIGNoYWxsZW5nZS5hdXRoZW50aWNhdGlvbkNsaWVudCgpLT5yZWNlaXZlZFJlcXVlc3RU
b0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwoY2hhbGxlbmdlKTsKIH0KIAotdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQogewog
ICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRy
PElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBAIC0yMzQs
NyArMjM0LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJl
cXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBDT01QdHI8V2ViVVJMUmVz
cG9uc2U+IHdlYlVSTFJlZGlyZWN0UmVzcG9uc2UoQWRvcHRDT00sIFdlYlVSTFJlc3BvbnNlOjpj
cmVhdGVJbnN0YW5jZShyZWRpcmVjdFJlc3BvbnNlKSk7CiAKICAgICBDT01QdHI8SVdlYlVSTFJl
cXVlc3Q+IG5ld1dlYlVSTFJlcXVlc3Q7Ci0gICAgaWYgKEZBSUxFRChyZXNvdXJjZUxvYWREZWxl
Z2F0ZS0+d2lsbFNlbmRSZXF1ZXN0KHdlYlZpZXcsIGlkZW50aWZpZXIsIHdlYlVSTFJlcXVlc3Qu
Z2V0KCksIHdlYlVSTFJlZGlyZWN0UmVzcG9uc2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9h
ZGVyKSwgJm5ld1dlYlVSTFJlcXVlc3QpKSkKKyAgICBpZiAoRkFJTEVEKHJlc291cmNlTG9hZERl
bGVnYXRlLT53aWxsU2VuZFJlcXVlc3Qod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB3
ZWJVUkxSZXF1ZXN0LmdldCgpLCB3ZWJVUkxSZWRpcmVjdFJlc3BvbnNlLmdldCgpLCBnZXRXZWJE
YXRhU291cmNlKGxvYWRlciksICZuZXdXZWJVUkxSZXF1ZXN0KSkpCiAgICAgICAgIHJldHVybjsK
IAogICAgIGlmICh3ZWJVUkxSZXF1ZXN0ID09IG5ld1dlYlVSTFJlcXVlc3QpCkBAIC0yNTIsNyAr
MjUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICByZXF1ZXN0ID0gbmV3V2ViVVJM
UmVxdWVzdEltcGwtPnJlc291cmNlUmVxdWVzdCgpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVy
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIFdlYlZpZXcq
IHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJj
ZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBAIC0yNjAsMzAgKzI2MCwzMCBA
QCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShE
b2N1bWVudExvYWRlciogbG9hZGVyLCB1bgogICAgICAgICByZXR1cm47CiAKICAgICBDT01QdHI8
V2ViVVJMUmVzcG9uc2U+IHdlYlVSTFJlc3BvbnNlKEFkb3B0Q09NLCBXZWJVUkxSZXNwb25zZTo6
Y3JlYXRlSW5zdGFuY2UocmVzcG9uc2UpKTsKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlk
UmVjZWl2ZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIHdlYlVSTFJlc3BvbnNlLmdldCgp
LCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5k
aWRSZWNlaXZlUmVzcG9uc2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB3ZWJVUkxS
ZXNwb25zZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKIH0KIAotdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBsZW5ndGgpCit2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3Ro
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBpbnQgbGVuZ3RoKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53
ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VM
b2FkRGVsZWdhdGU7CiAgICAgaWYgKEZBSUxFRCh3ZWJWaWV3LT5yZXNvdXJjZUxvYWREZWxlZ2F0
ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUpKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgcmVzb3Vy
Y2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHdlYlZpZXcsIGlkZW50aWZp
ZXIsIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWRE
ZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgod2ViVmlldywgaWRlbnRpZmllci50b1VJ
bnQ2NCgpLCBsZW5ndGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKLXZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRl
ciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyogd2Vi
VmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9h
ZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKICAgICBpZiAoRkFJTEVEKHdlYlZpZXct
PnJlc291cmNlTG9hZERlbGVnYXRlKCZyZXNvdXJjZUxvYWREZWxlZ2F0ZSkpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkRmluaXNoTG9hZGluZ0Zyb21E
YXRhU291cmNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7
CisgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZpbmlzaExvYWRpbmdGcm9tRGF0YVNvdXJj
ZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVy
KSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRp
bmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAg
IFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElX
ZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBAIC0yOTEsMTEg
KzI5MSwxMSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbgogICAgICAgICByZXR1cm47CiAKICAg
ICBDT01QdHI8V2ViRXJyb3I+IHdlYkVycm9yKEFkb3B0Q09NLCBXZWJFcnJvcjo6Y3JlYXRlSW5z
dGFuY2UoZXJyb3IpKTsKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkRmFpbExvYWRpbmdX
aXRoRXJyb3Iod2ViVmlldywgaWRlbnRpZmllciwgd2ViRXJyb3IuZ2V0KCksIGdldFdlYkRhdGFT
b3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZhaWxMb2FkaW5n
V2l0aEVycm9yKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgd2ViRXJyb3IuZ2V0KCks
IGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKICNpZiBVU0UoQ0ZVUkxDT05ORUNUSU9O
KQotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRhLCBjb25zdCB1bnNp
Z25lZCBsb25nIGxvbmcgbGVuZ3RoKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxk
Q2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0
IHVuc2lnbmVkIGNoYXIqIGRhdGEsIGNvbnN0IHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpCiB7
CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01Q
dHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAgLTMw
OCw3ICszMDgsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3Bv
bnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkCiAKICAgICBDT01QdHI8SVdlYlVS
TFJlc3BvbnNlPiB1cmxSZXNwb25zZShBZG9wdENPTSwgV2ViVVJMUmVzcG9uc2U6OmNyZWF0ZUlu
c3RhbmNlKHJlc3BvbnNlKSk7CiAgICAgQk9PTCBzaG91bGRDYWNoZTsKLSAgICBpZiAoU1VDQ0VF
REVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkQ2FjaGVSZXNwb25zZSh3ZWJW
aWV3LCBpZGVudGlmaWVyLCB1cmxSZXNwb25zZS5nZXQoKSwgZGF0YSwgbGVuZ3RoLCBnZXRXZWJE
YXRhU291cmNlKGxvYWRlciksICZzaG91bGRDYWNoZSkpKQorICAgIGlmIChTVUNDRUVERUQocmVz
b3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRDYWNoZVJlc3BvbnNlKHdlYlZpZXcsIGlk
ZW50aWZpZXIudG9VSW50NjQoKSwgdXJsUmVzcG9uc2UuZ2V0KCksIGRhdGEsIGxlbmd0aCwgZ2V0
V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkQ2FjaGUpKSkKICAgICAgICAgcmV0dXJuIHNo
b3VsZENhY2hlOwogCiAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApp
bmRleCBlYjdmMjMzY2Y0ZjJkNDNkZTE3NzZlMmIwZDM2MmZhYzJkZWFkNDQwLi4xZTMwMzFmOWI1
MDJjM2RkODhhOGE1NDhhNDdjN2YyYjZiOTkzMGU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
LmgKQEAgLTYwLDE3ICs2MCwxNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZXRhY2hlZEZyb21QYXJl
bnQzKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3du
bG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2
b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGly
ZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3Jh
Z2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7Ci0gICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYp
IG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFM
ZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNv
cmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsK
LSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKworICAgIHZvaWQg
ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRl
OworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRM
b2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0
aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5p
c2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmco
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICNpZiBVU0UoQ0ZV
UkxDT05ORUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEsIHVuc2lnbmVkIGxvbmcg
bG9uZyBsZW5ndGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRh
dGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpIG92ZXJyaWRlOwogI2VuZGlmCiAKICAgICB2
b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBvdmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438522</attachid>
            <date>2021-09-17 15:23:31 -0700</date>
            <delta_ts>2021-09-17 15:43:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210917152330.patch</filename>
            <type>text/plain</type>
            <size>376836</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNjU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2NhY2VhZjU3ZWJiMDVk
ODRkOGIwOWY1OTZjOGIzM2EzNmZiN2IxMy4uYWJlMDc0NThhNDg3NjU5YjUwZGZmZTAxYTk4NGFi
OGFhOTEwOWM2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNyAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
TWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVy
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJM
b2FkZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRS
ZXF1ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRp
b25zRGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVy
Y2VwdFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAg
ICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNl
aXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dl
YkNvbnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0
aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToK
KyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6Cisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
b25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxl
bWVudFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9u
YWxMb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50
ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5oOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxv
YWRlci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3Jl
OjpMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9M
b2FkZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29p
bmdMb2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9Q
aW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xv
YWQpOgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJD
b3JlOjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBs
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5v
dGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29u
c3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmRE
YXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVu
dDo6ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJD
bGllbnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFi
bGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DYW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJl
YWRCcmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
ciBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291
cmNlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRl
ZC4KKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1M
SHR0cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIE1vdmUgbm9uLXRyYXZlcnNhbCBm
dW5jdGlvbnMgZnJvbSBpdGVyYXRvciB0byB0aGUgZGVyZWZlcmVuY2VkIHR5cGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggNzI5NmI1M2E1ZGEyM2E3OGE0MGQ3ZWE0YzRmYTRmMWEzN2M2MTI0ZS4uYzAzYWUwNzNhMDdm
OWJiZmI4ODc2NGI3YmU4NjkyOGJjYmZjOGEyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNzMgQEAK
KzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
KworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JS
ZWZlcmVuY2VzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xvYWQpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9hZFBpbmcpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJl
Y29ubmVjdFRvKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OmlzUmVzb3VyY2VMb2FkRmluaXNoZWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6c3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZCk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2Vzczo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcik6
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
aDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmdldE5l
dHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzOjpnZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0
aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRh
a2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjphZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmFkZE5ldHdvcmtM
b2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UmVzb3VyY2VOZXR3b3JrQWN0
aXZpdHlUcmFja2VyOjpSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
OgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVy
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjp0YWtlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmNvbnRh
aW5zIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNm
ZXJUb05ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0Ojplc2NhcGVJREZvckpTT04pOgor
ICAgICAgICAoV2ViS2l0Ojpsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24pOgorICAgICAgICAo
V2ViS2l0Ojpsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbik6CisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisgICAgICAgICogU2NyaXB0
cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190aGF0X2Nhbm5vdF9iZV9mb3J3
YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIp
OgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRl
Y2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
VVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVyIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKToKKyAgICAgICAg
KFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmg6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZVRh
c2s6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oOgorICAgICAg
ICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJjZUxv
YWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3Vy
Y2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50Ojpk
aWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKToK
KyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmFp
bExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpSZXNvdXJj
ZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAoQVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VS
ZXNvdXJjZUxvYWRDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAgICAg
ICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2Vu
ZFJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJl
c291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UpOgorICAgICAg
ICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZSk6Cisg
ICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlk
RmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFn
ZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZSk6CisgICAgICAgIChXZWJL
aXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3NhZ2UpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0
aW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0
aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6c2NoZWR1
bGVMb2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9h
ZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
OjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6dHJ5TG9hZGlu
Z1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAgICAgICAgKFdlYktp
dDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3Vy
Y2VMb2Fkcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxv
YWRJZGVudGlmaWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2Vi
TG9hZGVyU3RyYXRlZ3kuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3Vy
Y2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyBjb25zdCk6CisgICAgICAgIChXZWJL
aXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVnaW5JbnRlcmNlcHRpbmdSZXNw
b25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6
Y29udGludWVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQgY29uc3QpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaDoKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZp
ZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1
dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExl
bmd0aCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRIMlBpbmcpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OmFkZENvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkUmVzb3Vy
Y2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1
ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3Jt
UmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2NoZW1l
VGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnVybFNj
aGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluOgorICAgICAgICAq
IFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KToK
KyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5
Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6
V2ViVVJMU2NoZW1lVGFza1Byb3h5OjppZGVudGlmaWVyIGNvbnN0KToKKwogMjAyMS0wOS0xNyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dU
S11bYTExeV0gQWRkIGEgYnVpbGQgb3B0aW9uIHRvIGVuYWJsZSBBVFNQSQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5n
ZUxvZwppbmRleCAzM2YxMDljZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNiOWI4ZDEzLi45MjY5
YzAxNjUzYmQzOTA1ZWZhMDk4OTU2ZmM0YmYyOGJmNjEyMGRhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA5LTE3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlz
dGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFJl
c291cmNlTG9hZGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzAyNzgKKworICAgICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6Cisg
ICAgICAgIChXZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkpOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5o
OgorCiAyMDIxLTA5LTA3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgSW1wbGVtZW50IG9yaWdpbiBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJhbWUtb3JpZ2lu
KSBmb3IgQnJvYWRjYXN0Q2hhbm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGUz
YjQ5M2ZkYTg3OGE3OWRhY2NiZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmE0ZThkNzFlMDhhZmFmNmUx
ZTdlMzVjZmYxYTJjMDAwODExZTczNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyOSBAQAorMjAyMS0wOS0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNl
bkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJj
ZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAg
KFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAg
IChXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAg
ICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50
aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAgICAqIFdl
YlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRvY3Vt
ZW50TG9hZGVyTWFjLm1tOgorICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNl
TG9hZENvdW50KToKKyAgICAgICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRD
b3VudCk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAyMS0wOS0x
NCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJkZW5pbmdd
IFZhbGlkYXRlIElEQlZhbHVlJ3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1dE9yQWRk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZwppbmRleCA4NmYyMGMyYmZjNmY3NjY3NzE3ZTg2
YTU5NDdmZTJmNmQzZWMzMGFjLi4wOWQzYThjMjg1ZDM4ZTdkMGY1YzcwM2IyOWFhMzJjMGExNWQw
Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdExlZ2FjeS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEt
MDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Up
OgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZl
Q29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRD
YWNoZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oOgorCiAyMDIxLTA5LTE0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hhcmRlbmluZ10gVmFsaWRhdGUgSURCVmFsdWUncyBibG9iIHBhdGhzIGluIFdl
YklEQlNlcnZlcjo6cHV0T3JBZGQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzI5OTNhMWJjMTgz
MmZlYzJjZTRjM2IyNzU5NTczOTJiNzMxNTE3NC4uYmVmOTgzNmE2MDE0ODk3YmEwZjI4YmE2YzNl
YTU3OGE2ZDRjZjEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC04NDQsNiArODQ0LDcgQEAgc2V0
KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGxvYWRlci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkVGltaW5nLmgKICAgICBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaAorICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aAogICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaAogICAgIGxvYWRlci9SZXNvdXJj
ZUxvYWRlclR5cGVzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCmluZGV4IDg2ZjUz
NDdmZDkxMzNkYzBlYWIzNWJkZWVjMzZlNmIzOTBiOWYyZTcuLjZjYmQxZjQ5M2Q0ODA3YzUzMmMy
ODEzZWZlMTdmYzkwMTU5NWY3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuY3BwCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
RmV0Y2hMb2FkZXI6OnN0YXJ0U3RyZWFtaW5nKCkKICAgICByZXR1cm4gZmlyc3RDaHVuazsKIH0K
IAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3Bv
bnNlKTsKIH0KQEAgLTE1Niw3ICsxNTYsNyBAQCB2b2lkIEZldGNoTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShjb25zdCB1aW50OF90KiB2YWx1ZSwgaW50IHNpemUpCiAgICAgbV9jb25zdW1lci0+YXBw
ZW5kKHZhbHVlLCBzaXplKTsKIH0KIAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9jbGllbnQuZGlkU3VjY2VlZCgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCmluZGV4IGYzMTRhMDVm
Y2ZhYzYxN2MzY2JkMzJiYTkwM2Y3Y2YyMDFiOWZlNDUuLjQwNzI4ZDI1N2U4NDNjNDExNDg2ZmQ2
ZTQzODA3MDQ0MzFhY2ZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
TG9hZGVyLmgKQEAgLTU3LDkgKzU3LDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQgQVBJLgotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
LCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBm
aW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGM3NTg0MzA2MTc3ZDg2NWI0OWUxOWI3ZTAzOWRlZGY1MDBmMTNkNmQu
LjUzZmU4OTk1ZDdjODM4MTkyNDRmZmFhYjg0NmU2MWRlN2M3MDJlZTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwMTEsNiAr
MjAxMSw3IEBACiAJCTVCMzA2OTVFMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjMwNjk1
QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oICovOyB9OwogCQk1QjQ2NjU2
MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTVGMjVEMTRDMDkw
MDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVCNDY2NTY0MjVEMTRDMEEwMDBDRkUx
NCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNu
YXBBbmltYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUMxQjFEM0YyNkYzOTc4MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUMxQjFEM0QyNkYzOTc3RjAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVDMkIxQUVD
MjIzOTdFQkMwMEI5MUNGNyAvKiBSZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovOyB9OwogCQk1QzQzMDRCMTE5MUFDOTA4
MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNo
YWRlclRleHR1cmVMT0QuaCAqLzsgfTsKIAkJNUM0MzA0QjYxOTFBRUY0NjAwMEUyQkMwIC8qIEpT
RVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVy
ZUxPRC5oICovOyB9OwpAQCAtOTc1Nyw2ICs5NzU4LDcgQEAKIAkJNUMxQjFEMjQyNkYxNUIxQTAw
ODgyREEyIC8qIFNoYXJlZFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaGFyZWRXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjUy
NkYxODhEODAwODgyREEyIC8qIFdvcmtlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdvcmtlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzFC
MUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAxMjU3NzE5ODkw
MEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcmlhbGl6ZWRORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyRUJF
MDMyNTc3MUE0QzAwRDU1QjA1IC8qIFNlcmlhbGl6ZWRORkEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFCeXRlY29kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjc3MzgsNiArMjc3NDAsNyBAQAogCQkJCTdDMkZBNjEwMUVB
OTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLywKIAkJCQk5
M0UyMjdERTBBRjU4OUFEMDBENDgzMjQgLyogUmVzb3VyY2VMb2FkZXIuY3BwICovLAogCQkJCTY1
NkQzNzI3MEFEQkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCTVDMUIx
RDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLywKIAkJ
CQlEMEEzQTczMDE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggKi8s
CiAJCQkJNTFBRjUwMzUxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAq
LywKIAkJCQk1MUVFN0IzOTFBQTUxMjMxMDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAg
Ki8sCkBAIC0zMzEzMiw3ICszMzEzNSw2IEBACiAJCQkJQkM2OTMyNzQwRDdFMjkzOTAwQUU0NEQx
IC8qIEpTRE9NV2luZG93QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjUyRkJCQkMwREUyN0NC
NjAwMDFEMzg2IC8qIEpTRE9NV2luZG93Q3VzdG9tLmggaW4gSGVhZGVycyAqLywKIAkJCQk0NjBD
QkYzNjFENEJDRDBFMDA5MkU4OEUgLyogSlNET01XaW5kb3dQcm9wZXJ0aWVzLmggaW4gSGVhZGVy
cyAqLywKLQkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVz
Y3JpcHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk2NUUwRTk0NDExMzNDODlGMDBCNENC
MTAgLyogSlNET01XcmFwcGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3QzQ1QzlEMzFFM0ZDQkQ3
MDBBQUI1NTggLyogSlNET01XcmFwcGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzQTgw
NjFFMUUwM0I1ODUwMDhBMUYyNiAvKiBKU0RvdWJsZVJhbmdlLmggaW4gSGVhZGVycyAqLywKQEAg
LTM0Njg5LDYgKzM0NjkxLDcgQEAKIAkJCQk1MTRDNzY3QTBDRTkyM0ExMDA3RUYzQ0QgLyogUmVz
b3VyY2VIYW5kbGVDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxNEM3NjdCMENFOTIzQTEw
MDdFRjNDRCAvKiBSZXNvdXJjZUhhbmRsZUludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQk2
NTZEMzczRjBBREJBNURFMDBBNDU1NEQgLyogUmVzb3VyY2VMb2FkZXIuaCBpbiBIZWFkZXJzICov
LAorCQkJCTVDMUIxRDNGMjZGMzk3ODAwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUQwQTNBNzMxMTQwNUEzOTgwMEZCOEVEMyAvKiBSZXNv
dXJjZUxvYWRlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxQUY1MDM2MTZGMTAwRjYw
MDk1QjJFOCAvKiBSZXNvdXJjZUxvYWRlclR5cGVzLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUVF
N0IzODFBQTUwQjA1MDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5oIGluIEhlYWRlcnMgKi8s
CkBAIC0zNDc0Miw2ICszNDc0NSw3IEBACiAJCQkJMDdBQjk5NkIxOERBM0MwMTAwMTg3NzFFIC8q
IFJUQ0ljZVNlcnZlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkxMDgxRTdEREM3MzAwRjMw
NjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFBvbGljeS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEzNTkx
MDkxRTdEREM3MzAwRjMwNjMwIC8qIFJUQ0ljZVRyYW5zcG9ydFN0YXRlLmggaW4gSGVhZGVycyAq
LywKKwkJCQk0MTBCQ0Y1NjI2RjBDRDhDMDA0MEIxMjQgLyogUlRDTG9jYWxTZXNzaW9uRGVzY3Jp
cHRpb25Jbml0LmggaW4gSGVhZGVycyAqLywKIAkJCQk0MUMxNEJDNjI2REU2REU4MDA2ODVCRjUg
LyogUlRDTmV0d29ya01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTA3Mzc5NEZFMTlGNTg2
NEUwMEU1QTA0NSAvKiBSVENOb3RpZmllcnNNb2NrLmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzM3
OTRERTE5RUUyQzUyMDBFNUEwNDUgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVy
cyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlck1vZHVs
ZVNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmgKaW5kZXggNzZkMTRkYWZhYWFkMTIyOWJlZTAzZWI3MTI5NjJiMGFiNjNh
MDViNS4uOTYzOTBhMDgwZTYxMTQ5ZGMxNmNiODZlYjlhOTA4ZWFiMGUxOTZiNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmgKQEAgLTY1LDcgKzY1LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXb3JrZXJNb2R1bGVT
Y3JpcHRMb2FkZXIoTW9kdWxlU2NyaXB0TG9hZGVyQ2xpZW50JiwgRGVmZXJyZWRQcm9taXNlJiwg
V29ya2VyU2NyaXB0RmV0Y2hlciYsIFJlZlB0cjxNb2R1bGVGZXRjaFBhcmFtZXRlcnM+JiYpOwog
Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIGZpbmFsIHsgfQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsIHsgfQog
ICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIHZvaWQgbm90aWZ5Q2xpZW50
RmluaXNoZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IDg1NTM0MTIwNWYzYTdiOTQy
NmZhNzg4YzNiNWExNzlhODE2YWFlZGYuLjZmMWU5OWVhYjRkZWVmMTEyMWYwM2I5M2Y2ZWYxMmYy
NjgxM2U3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtMzgzMywxMiArMzgzMywxMiBA
QCB2b2lkIERvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdihjb25zdCBTdHJpbmcmIGVxdWl2
LCBjb25zdCBTdHJpbmcmIGNvbnRlbnQsCiAgICAgY2FzZSBIVFRQSGVhZGVyTmFtZTo6WEZyYW1l
T3B0aW9uczoKICAgICAgICAgaWYgKGZyYW1lKSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlciYg
ZnJhbWVMb2FkZXIgPSBmcmFtZS0+bG9hZGVyKCk7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25n
IHJlcXVlc3RJZGVudGlmaWVyID0gMDsKKyAgICAgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciByZXF1ZXN0SWRlbnRpZmllcjsKICAgICAgICAgICAgIGlmIChmcmFtZUxvYWRlci5hY3Rp
dmVEb2N1bWVudExvYWRlcigpICYmIGZyYW1lTG9hZGVyLmFjdGl2ZURvY3VtZW50TG9hZGVyKCkt
Pm1haW5SZXNvdXJjZUxvYWRlcigpKQogICAgICAgICAgICAgICAgIHJlcXVlc3RJZGVudGlmaWVy
ID0gZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKS0+bWFpblJlc291cmNlTG9hZGVy
KCktPmlkZW50aWZpZXIoKTsKIAogICAgICAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSAiVGhlIFgt
RnJhbWUtT3B0aW9uICciICsgY29udGVudCArICInIHN1cHBsaWVkIGluIGEgPG1ldGE+IGVsZW1l
bnQgd2FzIGlnbm9yZWQuIFgtRnJhbWUtT3B0aW9ucyBtYXkgb25seSBiZSBwcm92aWRlZCBieSBh
biBIVFRQIGhlYWRlciBzZW50IHdpdGggdGhlIGRvY3VtZW50LiI7Ci0gICAgICAgICAgICBhZGRD
b25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJv
ciwgbWVzc2FnZSwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICAgICAgYWRkQ29uc29sZU1l
c3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3Nh
Z2UsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICB9CiAgICAgICAgIGJy
ZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2Fk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcAppbmRl
eCA0NDNjNTQ5YzE1YTU3MWViM2I1ZTQ4NjRhYjc5NTNiMzQzMjg2NWEyLi5kY2M2MTNiODVkOGIx
ZWZjNGM4OGFlNzBhNThkMjYxNWM3ZWI5NDk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9m
aWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVJlYWRlckxvYWRlci5jcHAKQEAgLTEyNiw3ICsxMjYsNyBAQCB2b2lkIEZpbGVSZWFkZXJM
b2FkZXI6OmNsZWFudXAoKQogICAgIH0KIH0KIAotdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UpCit2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIGlmIChyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpICE9IDIwMCkgewogICAgICAgICBmYWls
ZWQoaHR0cFN0YXR1c0NvZGVUb0Vycm9yQ29kZShyZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpKSk7
CkBAIC0yMTUsNyArMjE1LDcgQEAgdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRSZWNlaXZlRGF0
YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKICAgICAgICAgbV9jbGllbnQt
PmRpZFJlY2VpdmVEYXRhKCk7CiB9CiAKLXZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkRmluaXNo
TG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBpZiAobV92YXJpYWJsZUxl
bmd0aCAmJiBtX3RvdGFsQnl0ZXMgPiBtX2J5dGVzTG9hZGVkKSB7CiAgICAgICAgIG1fcmF3RGF0
YSA9IG1fcmF3RGF0YS0+c2xpY2UoMCwgbV9ieXRlc0xvYWRlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Zp
bGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCmluZGV4IDljYmI5YjYxMTFhNzE2MjcxM2RkNWRjY2U3
ZjA1M2VlYzA4NTY4ZGQuLjk2ODQyNzkwM2JkZTk1MDc1NWU3OGI3ZWY1MDZjMWM4M2NmOGJhZjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCkBAIC02OSw5ICs2
OSw5IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNhbmNlbCgpOwogCiAgICAg
Ly8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVp
bnQ4X3QqLCBpbnQpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25l
ZCBsb25nKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VF
cnJvciYpIG92ZXJyaWRlOwogCiAgICAgU3RyaW5nIHN0cmluZ1Jlc3VsdCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApp
bmRleCBmZTIwNmFlYTM1ZTY3OTMzZTIwMTlmYzVhZjFlOTNhZmRhMGUzODM3Li5mOTFkNTUxYjNm
MTAzNjAwNTc5NTU3NjQ4MmMyNjg4NDBmODhhNjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtNTc1LDEzICs1
NzUsMTMgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0ZWRNZWRp
YUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHIKICAgICAgICAgcGFnZUFnZW50LT5hcHBs
eUVtdWxhdGVkTWVkaWEobWVkaWEpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5n
QWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQordm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdEltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBy
ZWRpcmVjdFJlc3BvbnNlLCBjYWNoZWRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGVJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2Fk
VHlwZSkKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5
cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT53aWxsU2VuZFJlcXVlc3RPZlR5cGUoaWRlbnRpZmll
ciwgbG9hZGVyLCByZXF1ZXN0LCBsb2FkVHlwZSk7CkBAIC01OTYsNyArNTk2LDcgQEAgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZUlt
cGwoSW5zdHJ1bWVudGluZ0EKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRMb2FkUmVzb3VyY2VG
cm9tTWVtb3J5Q2FjaGUobG9hZGVyLCAqY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVz
cG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKExJ
S0VMWSghaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JFbnZpcm9ubWVudCgpLmRldmVsb3Bl
ckV4dHJhc0VuYWJsZWQoKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNywyNSArNjA3LDI1IEBA
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50CiAgICAgICAgIGNvbnNvbGVBZ2VudC0+ZGlkUmVjZWl2
ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsgLy8gVGhpcyBzaG91bGQgY29tZSBBRlRF
UiByZXNvdXJjZSBub3RpZmljYXRpb24sIGZyb250LWVuZCByZWxpZXMgb24gdGhpcy4KIH0KIAot
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVy
UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVj
ZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5z
dHJ1bWVudGluZ0FnZW50cywgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAg
IGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3
b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5kaWRSZWNlaXZlVGhyZWFkYWJsZUxv
YWRlclJlc3BvbnNlKGlkZW50aWZpZXIsIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcik7CiB9CiAK
LXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YUltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5n
dGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50
ID0gaW5zdHJ1bWVudGluZ0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5l
dHdvcmtBZ2VudC0+ZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgZGF0YSwgZGF0YUxlbmd0aCwg
ZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0Fn
ZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZp
bmlzaExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3Vy
Y2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQg
PSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0
d29ya0FnZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xv
YWRNZXRyaWNzLCByZXNvdXJjZUxvYWRlcik7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVu
dGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChM
SUtFTFkoIWluc3RydW1lbnRpbmdBZ2VudHMuaW5zcGVjdG9yRW52aXJvbm1lbnQoKS5kZXZlbG9w
ZXJFeHRyYXNFbmFibGVkKCkpKQogICAgICAgICByZXR1cm47CkBAIC02NDgsNyArNjQ4LDcgQEAg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJgogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZExvYWRYSFJT
eW5jaHJvbm91c2x5KCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3Jp
cHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK3Zv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIGlmIChhdXRv
KiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQo
KSkKICAgICAgICAgbmV0d29ya0FnZW50LT5zZXRJbml0aWFsU2NyaXB0Q29udGVudChpZGVudGlm
aWVyLCBzb3VyY2VTdHJpbmcpOwpAQCAtNjYwLDcgKzY2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1BJbXBsKEluc3RydW1lbnRp
bmdBZ2VuCiAgICAgICAgIHdlYkRlYnVnZ2VyQWdlbnQtPnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRC
eUNTUChkaXJlY3RpdmVUZXh0KTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1
bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdB
Z2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZFJl
Y2VpdmVTY3JpcHRSZXNwb25zZShpZGVudGlmaWVyKTsKQEAgLTg1MCw3ICs4NTAsNyBAQCB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYgaW5zdHJ1bQogICAgICAgICBuZXR3b3JrQWdlbnQtPmludGVyY2VwdFJlcXVl
c3QobG9hZGVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYg
aGFuZGxlcikKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGluZ0Fn
ZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+aW50ZXJj
ZXB0UmVzcG9uc2UocmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxlcikpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlv
bi5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5o
CmluZGV4IDMxZjA1YzUwZjgwNWRiNTc5YjhjOTMwYmM5MGI5ZjYxYTkyZmFjNjguLmM2NDZlMzEz
MWM5MWFhOTI0MjYxMGJhY2M4NmY1YmMzOTA4MmY4MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTQ1LDYgKzQ1LDcg
QEAKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25QdWJsaWMuaCIKICNpbmNsdWRl
ICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUg
IldlYkFuaW1hdGlvbi5oIgogI2luY2x1ZGUgIldvcmtlckluc3BlY3RvclByb3h5LmgiCkBAIC0x
ODQsMzQgKzE4NSwzNCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRP
dmVycmlkZShGcmFtZSYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0ZWRN
ZWRpYShGcmFtZSYsIFN0cmluZyYpOwogCi0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0
KEZyYW1lKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KEZy
YW1lKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlKFBhZ2UmLCBEb2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlKik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoRnJhbWUmLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVM
b2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhKEZyYW1lKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwg
aW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkRmFpbExvYWRpbmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotCi0gICAgc3RhdGljIHZvaWQgd2lsbFNl
bmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7Ci0gICAgc3Rh
dGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7Ci0gICAg
c3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVz
b3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRl
clJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIFJlc291cmNlTG9hZGVySWRlbnRp
Zmllcik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGEoRnJhbWUqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQg
ZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoRnJh
bWUqLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRG
YWlsTG9hZGluZyhGcmFtZSosIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJl
cXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFJlc291cmNlUmVxdWVzdCYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJj
ZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiAgICAgLy8gU29t
ZSBuZXR3b3JrIHJlcXVlc3RzIGRvIG5vdCBnbyB0aHJvdWdoIHRoZSBub3JtYWwgbmV0d29yayBs
b2FkaW5nIHBhdGguCiAgICAgLy8gVGhlc2UgbmV0d29yayByZXF1ZXN0cyBoYXZlIHRvIGlzc3Vl
IHRoZWlyIG93biB3aWxsU2VuZFJlcXVlc3QgLyBkaWRSZWNlaXZlUmVzcG9uc2UgLyBkaWRGaW5p
c2hMb2FkaW5nIC8gZGlkRmFpbExvYWRpbmcKICAgICAvLyBpbnN0cnVtZW50YXRpb24gY2FsbHMu
IFNvbWUgb2YgdGhlc2UgbG9hZHMgYXJlIGZvciByZXNvdXJjZXMgdGhhdCBsYWNrIGEgQ2FjaGVk
UmVzb3VyY2U6OlR5cGUuCiAgICAgZW51bSBjbGFzcyBMb2FkVHlwZSB7IFBpbmcsIEJlYWNvbiB9
OwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBMb2Fk
VHlwZSk7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IExvYWRUeXBlKTsKIAotICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgdm9pZCBjb250aW51ZVdpdGhQ
b2xpY3lEb3dubG9hZChGcmFtZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgY29udGlu
dWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCBj
b250aW51ZUFmdGVyWEZyYW1lT3B0aW9uc0RlbmllZChGcmFtZSYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
c3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5RG93bmxvYWQoRnJhbWUmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
OworICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlV2l0aFBvbGljeUlnbm9yZShGcmFtZSYsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CiAgICAgc3RhdGljIHZvaWQgd2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkWEhSU3luY2hyb25vdXNs
eShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0
ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVk
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFN0cmluZyYgc291cmNlU3RyaW5nKTsKICAgICBzdGF0aWMgdm9pZCBzY3JpcHRFeGVjdXRpb25C
bG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IFN0cmluZyYgZGlyZWN0
aXZlVGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHN0YXRp
YyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgdm9pZCBkb21Db250ZW50TG9h
ZGVkRXZlbnRGaXJlZChGcmFtZSYpOwogICAgIHN0YXRpYyB2b2lkIGxvYWRFdmVudEZpcmVkKEZy
YW1lKik7CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnQoRnJhbWUmKTsK
QEAgLTIzMSw3ICsyMzIsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJj
ZXB0UmVxdWVzdChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0
YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3Vy
Y2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAg
ICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7
CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+
JiYpOwogCiAgICAgc3RhdGljIHZvaWQgYWRkTWVzc2FnZVRvQ29uc29sZShQYWdlJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKICAgICBzdGF0aWMgdm9pZCBh
ZGRNZXNzYWdlVG9Db25zb2xlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgc3RkOjp1bmlx
dWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKQEAgLTQwMywyMCArNDA0LDIwIEBA
IHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgYXBwbHlVc2VyQWdlbnRPdmVycmlkZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogICAgIHN0YXRpYyB2b2lkIGFwcGx5RW11bGF0
ZWRNZWRpYUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFN0cmluZyYpOwogCi0gICAgc3RhdGlj
IHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
Kik7Ci0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJl
c291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKLSAgICBzdGF0aWMgdm9pZCBtYXJrUmVzb3VyY2VB
c0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdl
bnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNl
UmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0
IENhY2hlZFJlc291cmNlKik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExvYWRUeXBlKTsKKyAgICBzdGF0aWMgdm9p
ZCBtYXJrUmVzb3VyY2VBc0NhY2hlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1l
bW9yeUNhY2hlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRG9jdW1lbnRMb2FkZXIqLCBDYWNo
ZWRSZXNvdXJjZSopOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOwot
ICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVEYXRhSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90
KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKLSAgICBzdGF0
aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYsIFJlc291cmNlTG9hZGVyKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkRmFpbExvYWRpbmdJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHN0YXRpYyB2b2lkIGRpZFJl
Y2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxl
TG9hZGVyUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXImLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2VpdmVEYXRhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlcios
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGlj
IHZvaWQgZGlkRmFpbExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwog
ICAgIHN0YXRpYyB2b2lkIHdpbGxMb2FkWEhSU3luY2hyb25vdXNseUltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYpOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJik7Ci0gICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0ZWRJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKTsKKyAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZEltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHN0YXRpYyB2b2lkIHNjcmlwdEV4ZWN1dGlvbkJsb2Nr
ZWRCeUNTUEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFN0cmluZyYgZGlyZWN0aXZl
VGV4dCk7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICBzdGF0aWMg
dm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHN0YXRpYyB2b2lkIGRvbUNvbnRlbnRMb2Fk
ZWRFdmVudEZpcmVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUmKTsKICAgICBzdGF0
aWMgdm9pZCBsb2FkRXZlbnRGaXJlZEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIEZyYW1lKik7
CiAgICAgc3RhdGljIHZvaWQgZnJhbWVEZXRhY2hlZEZyb21QYXJlbnRJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMmLCBGcmFtZSYpOwpAQCAtNDM2LDcgKzQzNyw3IEBAIHByaXZhdGU6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2Vw
dFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpOwogICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmLCBSZXNvdXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1
ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNw
b25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiAKICAgICBzdGF0aWMg
dm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgc3RkOjp1
bmlxdWVfcHRyPEluc3BlY3Rvcjo6Q29uc29sZU1lc3NhZ2U+KTsKIApAQCAtMTAzMywyMCArMTAz
NCwyMCBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmFwcGx5RW11bGF0
ZWRNZWRpYShGcmFtZSYgZnJhbWUsIFN0cmluZyYgbQogICAgICAgICBhcHBseUVtdWxhdGVkTWVk
aWFJbXBsKCphZ2VudHMsIG1lZGlhKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVz
dCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVk
UmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25z
dCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZf
Tk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRp
bmdBZ2VudHMoZnJhbWUpKQogICAgICAgICB3aWxsU2VuZFJlcXVlc3RJbXBsKCphZ2VudHMsIGlk
ZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgY2FjaGVkUmVzb3Vy
Y2UpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5k
UmVxdWVzdChXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQoraW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0
R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIEZBU1RfUkVUVVJOX0lGX05P
X0ZST05URU5EUyh2b2lkKCkpOwogICAgIHdpbGxTZW5kUmVxdWVzdEltcGwoaW5zdHJ1bWVudGlu
Z0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIHJlcXVlc3QsIFJlc291
cmNlUmVzcG9uc2UgeyB9LCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqIGZyYW1lLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSogZnJhbWUsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIEZBU1RfUkVU
VVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0
cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKQEAgLTEwNTksNzYgKzEwNjAsNzYgQEAgaW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2Fj
aGUoUGFnZSYgcGFnZSwKICAgICBkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGVJbXBsKGlu
c3RydW1lbnRpbmdBZ2VudHMocGFnZSksIGxvYWRlciwgcmVzb3VyY2UpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNl
KEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIq
IHJlc291cmNlTG9hZGVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewog
ICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAg
ICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxv
YWRlciwgcmVzcG9uc2UsIHJlc291cmNlTG9hZGVyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShXb3JrZXJPcldv
cmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGRpZFJlY2Vp
dmVSZXNvdXJjZVJlc3BvbnNlSW1wbChpbnN0cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwg
aWRlbnRpZmllciwgbnVsbHB0ciwgcmVzcG9uc2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVz
cG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZShEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZv
aWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyLmRvY3VtZW50KCkpKQogICAgICAgICBkaWRSZWNlaXZlVGhyZWFk
YWJsZUxvYWRlclJlc3BvbnNlSW1wbCgqYWdlbnRzLCBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIs
IGlkZW50aWZpZXIpOwogfQogICAgIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRSZWNlaXZlRGF0YShGcmFtZSogZnJhbWUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxl
bmd0aCkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURh
dGEoRnJhbWUqIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCkK
IHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2Vp
dmVEYXRhSW1wbCgqYWdlbnRzLCBpZGVudGlmaWVyLCBkYXRhLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0
YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0
aCkKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBkaWRS
ZWNlaXZlRGF0YUltcGwoaW5zdHJ1bWVudGluZ0FnZW50cyhnbG9iYWxTY29wZSksIGlkZW50aWZp
ZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGRhdGFMZW5ndGgpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdv
cmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3Vy
Y2VMb2FkZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlz
aExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBG
QVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdJ
bXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNv
dXJjZUxvYWRlcik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3
b3JrTG9hZE1ldHJpY3MpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRp
ZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRy
aWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRF
TkRTKHZvaWQoKSk7CiAgICAgZGlkRmluaXNoTG9hZGluZ0ltcGwoaW5zdHJ1bWVudGluZ0FnZW50
cyhnbG9iYWxTY29wZSksIGlkZW50aWZpZXIsIG51bGxwdHIsIG5ldHdvcmtMb2FkTWV0cmljcywg
bnVsbHB0cik7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
RmFpbExvYWRpbmcoRnJhbWUqIGZyYW1lLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQoraW5saW5lIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhGcmFtZSogZnJhbWUs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoYXV0byogYWdlbnRz
ID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIGRpZEZhaWxMb2FkaW5nSW1w
bCgqYWdlbnRzLCBpZGVudGlmaWVyLCBsb2FkZXIsIGVycm9yKTsKIH0KIAotaW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29w
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIGRpZEZhaWxMb2FkaW5nSW1wbChpbnN0cnVtZW50aW5nQWdlbnRz
KGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgZXJyb3IpOwogfQogCi1pbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKEZyYW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlvbnNE
ZW5pZWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2Up
CiB7CiAgICAgLy8gVHJlYXQgdGhlIHNhbWUgYXMgZGlkUmVjZWl2ZVJlc3BvbnNlLgogICAgIGlm
IChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlk
UmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsICZsb2FkZXIs
IHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYgZnJhbWUsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmNvbnRpbnVlV2l0aFBvbGljeURvd25sb2FkKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0IHRoZSBzYW1lIGFzIGRpZFJl
Y2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50
cyhmcmFtZSkpCiAgICAgICAgIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbCgqYWdlbnRz
LCBpZGVudGlmaWVyLCAmbG9hZGVyLCByZXNwb25zZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZy
YW1lJiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiBmcmFt
ZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIC8vIFRyZWF0
IHRoZSBzYW1lIGFzIGRpZFJlY2VpdmVSZXNwb25zZS4KICAgICBpZiAoYXV0byogYWdlbnRzID0g
aW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCkBAIC0xMTQ5LDcgKzExNTAsNyBAQCBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRYSFJTeW5jaHJvbm91c2x5KFNj
cmlwdEV4ZWN1dGlvbkNvbgogICAgICAgICBkaWRMb2FkWEhSU3luY2hyb25vdXNseUltcGwoKmFn
ZW50cyk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0
SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK2lubGluZSB2b2lkIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgY29udGV4dCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYgc291cmNlU3RyaW5nKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2
b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGNvbnRl
eHQpKQpAQCAtMTE2Myw3ICsxMTY0LDcgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1AoU2NyaXB0RXhlY3V0aW8KICAgICAg
ICAgc2NyaXB0RXhlY3V0aW9uQmxvY2tlZEJ5Q1NQSW1wbCgqYWdlbnRzLCBkaXJlY3RpdmVUZXh0
KTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZl
U2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgRkFTVF9SRVRVUk5f
SUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1l
bnRpbmdBZ2VudHMoY29udGV4dCkpCkBAIC0xMjg0LDcgKzEyODUsNyBAQCBpbmxpbmUgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIm
IGxvYWRlciwgRgogICAgICAgICBpbnRlcmNlcHRSZXF1ZXN0SW1wbCgqYWdlbnRzLCBsb2FkZXIs
IFdURk1vdmUoaGFuZGxlcikpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmIGhhbmRsZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Omlu
dGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBBU1NFUlQoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpzaG91bGRJbnRlcmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UpKTsKICAgICBpZiAoYXV0
byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhmcmFtZSkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCmluZGV4IDczMTYzMjc4Y2NhMzk5OGY0ZjAxMjJkNWNiMDU3N2RhNDZhNTA3NDcuLjYxZTRi
YzNiYTAxOWVlMjVlNWM4YmMyMjFkZmY2MDc3ZWRkYjg2M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQu
Y3BwCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0
OjppbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VMb2FkZXImIGxvCiAgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXF1ZXN0KGxvYWRlciwgV1RGTW92ZShoYW5k
bGVyKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNl
cHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYm
IGhhbmRsZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYgZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4pPiYmIGhhbmRsZXIpCiB7CiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRl
cmNlcHRSZXNwb25zZShmcmFtZSwgcmVzcG9uc2UsIGlkZW50aWZpZXIsIFdURk1vdmUoaGFuZGxl
cikpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvcklu
c3RydW1lbnRhdGlvbldlYktpdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckluc3RydW1lbnRhdGlvbldlYktpdC5oCmluZGV4IGJmZmM4NzA4MDY0NzY1MzgxMTVlODBmMjBk
ZGNhNGU4MjIyZTYyOWIuLmY3NjExNGNlOThmNDJhN2ZmOTA2YTQ4ZDA0MjBiOTYzMDVkMzY5MTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uV2ViS2l0LmgKQEAgLTQzLDEzICs0MywxMyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVxdWVzdChjb25zdCBGcmFtZSosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGlu
dGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2b2lkKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25z
dCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0
cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2Uo
Y29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOwogCiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIHNo
b3VsZEludGVyY2VwdFJlcXVlc3RJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVxdWVzdCYpOwogICAgIHN0YXRpYyBib29sIHNob3VsZEludGVyY2VwdFJlc3BvbnNlSW50ZXJu
YWwoY29uc3QgRnJhbWUmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVxdWVzdEludGVybmFsKFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9p
ZChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKT4mJik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0
UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgc3RhdGljIHZv
aWQgaW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiB9
OwogCiBpbmxpbmUgYm9vbCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QpCkBAIC03Niw3ICs3Niw3IEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hCiAgICAg
aW50ZXJjZXB0UmVxdWVzdEludGVybmFsKGxvYWRlciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAK
LWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVz
cG9uc2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYgaGFuZGxlcikKK2lu
bGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9u
c2UoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5k
bGVyKQogewogICAgIEFTU0VSVChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OnNob3Vs
ZEludGVyY2VwdFJlc3BvbnNlKGZyYW1lLCByZXNwb25zZSkpOwogICAgIGludGVyY2VwdFJlc3Bv
bnNlSW50ZXJuYWwoKmZyYW1lLCByZXNwb25zZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5kbGVy
KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rv
ck5ldHdvcmtBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3Bl
Y3Rvck5ldHdvcmtBZ2VudC5jcHAKaW5kZXggNzk0ODg1MmRkOWE2YmM0MmI0MDExNjk0MWNlMDM0
NmMzMmUxNmYyZC4uMzM3NTdiOWUzY2U3ZTMwNGNiNzFmYjY0ZjMzZTJlZWYwNmFhYjNjYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3Jr
QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9y
TmV0d29ya0FnZW50LmNwcApAQCAtMTA4LDcgKzEwOCw3IEBAIHB1YmxpYzoKIAogICAgIH5JbnNw
ZWN0b3JUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgb3ZlcnJpZGUgPSBkZWZhdWx0OwogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkg
b3ZlcnJpZGUKICAgICB7CiAgICAgICAgIG1fbWltZVR5cGUgPSByZXNwb25zZS5taW1lVHlwZSgp
OwogICAgICAgICBtX3N0YXR1c0NvZGUgPSByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpOwpAQCAt
MTM1LDcgKzEzNSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9yZXNwb25zZVRleHQuYXBwZW5kKG1f
ZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGRhdGFMZW5ndGgpKTsKICAgICB9CiAKLSAgICB2b2lkIGRp
ZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZQogICAgIHsKICAgICAg
ICAgaWYgKG1fZGVjb2RlcikKICAgICAgICAgICAgIG1fcmVzcG9uc2VUZXh0LmFwcGVuZChtX2Rl
Y29kZXItPmZsdXNoKCkpOwpAQCAtNDE2LDcgKzQxNiw3IEBAIGRvdWJsZSBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OnRpbWVzdGFtcCgpCiAgICAgcmV0dXJuIG1fZW52aXJvbm1lbnQuZXhlY3V0aW9u
U3RvcHdhdGNoKCkuZWxhcHNlZFRpbWUoKS5zZWNvbmRzKCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVz
b3VyY2VUeXBlIHR5cGUpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlIHR5cGUp
CiB7CiAgICAgaWYgKHJlcXVlc3QuaGlkZGVuRnJvbUluc3BlY3RvcigpKSB7CiAgICAgICAgIG1f
aGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLmFkZChpZGVudGlmaWVyKTsKQEAgLTQyNiw3ICs0MjYs
NyBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMbwogICAgIGRvdWJsZSBzZW5kVGltZXN0YW1wID0g
dGltZXN0YW1wKCk7CiAgICAgV2FsbFRpbWUgd2FsbHRpbWUgPSBXYWxsVGltZTo6bm93KCk7CiAK
LSAgICBhdXRvIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50
aWZpZXIpOworICAgIGF1dG8gcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0
SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBhdXRvIGZyYW1lSWQgPSBmcmFtZUlkZW50
aWZpZXIobG9hZGVyKTsKICAgICBhdXRvIGxvYWRlcklkID0gbG9hZGVySWRlbnRpZmllcihsb2Fk
ZXIpOwogICAgIFN0cmluZyB0YXJnZXRJZCA9IHJlcXVlc3QuaW5pdGlhdG9ySWRlbnRpZmllcigp
OwpAQCAtNDg2LDI0ICs0ODYsMjQgQEAgc3RhdGljIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3Vy
Y2VUeXBlIHJlc291cmNlVHlwZUZvckxvYWRUeXBlKEluc3BlY3Rvckluc3RydW0KICAgICByZXR1
cm4gSW5zcGVjdG9yUGFnZUFnZW50OjpPdGhlclJlc291cmNlOwogfQogCi12b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSog
Y2FjaGVkUmVzb3VyY2UpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6d2lsbFNlbmRSZXF1
ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciog
bG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
IHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkK
IHsKICAgICBpZiAoIWNhY2hlZFJlc291cmNlICYmIGxvYWRlcikKICAgICAgICAgY2FjaGVkUmVz
b3VyY2UgPSBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNhY2hlZFJlc291cmNlKGxvYWRlci0+ZnJhbWUo
KSwgcmVxdWVzdC51cmwoKSk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0KGlkZW50aWZpZXIsIGxvYWRl
ciwgcmVxdWVzdCwgcmVkaXJlY3RSZXNwb25zZSwgcmVzb3VyY2VUeXBlRm9yQ2FjaGVkUmVzb3Vy
Y2UoY2FjaGVkUmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6Ondp
bGxTZW5kUmVxdWVzdE9mVHlwZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3
aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSBsb2FkVHlwZSkKIHsKICAgICB3aWxsU2VuZFJl
cXVlc3QoaWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIHJl
c291cmNlVHlwZUZvckxvYWRUeXBlKGxvYWRUeXBlKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0
d29ya0FnZW50OjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBE
b2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdl
bnQ6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAobV9oaWRkZW5S
ZXF1ZXN0SWRlbnRpZmllcnMuY29udGFpbnMoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIHN0ZDo6b3B0aW9uYWw8UmVz
b3VyY2VSZXNwb25zZT4gcmVhbFJlc3BvbnNlOwogICAgIGlmIChwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKHJlc3BvbnNl
KSkgewpAQCAtNTc1LDEyICs1NzUsMTIgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW4KICAgICAg
ICAgZGlkUmVjZWl2ZURhdGEoaWRlbnRpZmllciwgbnVsbHB0ciwgY2FjaGVkUmVzb3VyY2UtPmVu
Y29kZWRTaXplKCksIDApOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVj
ZWl2ZURhdGEodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5jb250YWlucyhp
ZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1
ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0
KCkpOwogCiAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgTmV0d29ya1Jlc291cmNlc0RhdGE6OlJl
c291cmNlRGF0YSBjb25zdCogcmVzb3VyY2VEYXRhID0gbV9yZXNvdXJjZXNEYXRhLT5tYXliZUFk
ZFJlc291cmNlRGF0YShyZXF1ZXN0SWQsIGRhdGEsIGRhdGFMZW5ndGgpOwpAQCAtNTk1LDcgKzU5
NSw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlRGF0YSh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4CiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXIt
PmRhdGFSZWNlaXZlZChyZXF1ZXN0SWQsIHRpbWVzdGFtcCgpLCBkYXRhTGVuZ3RoLCBlbmNvZGVk
RGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hM
b2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
Y29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9h
ZGVyKikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2Fk
ZXIqKQogewogICAgIGlmIChtX2hpZGRlblJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRp
ZmllcikpCiAgICAgICAgIHJldHVybjsKQEAgLTYwNiw3ICs2MDYsNyBAQCB2b2lkIEluc3BlY3Rv
ck5ldHdvcmtBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TAogICAgIGVsc2UKICAgICAgICAgZWxhcHNlZEZpbmlzaFRpbWUgPSB0aW1lc3Rh
bXAoKTsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVl
c3RJZChpZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0
b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBpZiAobG9hZGVyICYm
IG1fcmVzb3VyY2VzRGF0YS0+cmVzb3VyY2VUeXBlKHJlcXVlc3RJZCkgPT0gSW5zcGVjdG9yUGFn
ZUFnZW50OjpEb2N1bWVudFJlc291cmNlKQogICAgICAgICBtX3Jlc291cmNlc0RhdGEtPmFkZFJl
c291cmNlU2hhcmVkQnVmZmVyKHJlcXVlc3RJZCwgbG9hZGVyLT5mcmFtZUxvYWRlcigpLT5kb2N1
bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VEYXRhKCksIGxvYWRlci0+ZnJhbWUoKS0+ZG9jdW1l
bnQoKS0+ZW5jb2RpbmcoKSk7CiAKQEAgLTYyOCwxMiArNjI4LDEyIEBAIHZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPmxvYWRpbmdGaW5pc2hlZChyZXF1
ZXN0SWQsIGVsYXBzZWRGaW5pc2hUaW1lLCBzb3VyY2VNYXBwaW5nVVJMLCBXVEZNb3ZlKG1ldHJp
Y3MpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChtX2hpZGRl
blJlcXVlc3RJZGVudGlmaWVycy5yZW1vdmUoaWRlbnRpZmllcikpCiAgICAgICAgIHJldHVybjsK
IAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChp
ZGVudGlmaWVyKTsKKyAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIGlmIChsb2FkZXIgJiYgbV9y
ZXNvdXJjZXNEYXRhLT5yZXNvdXJjZVR5cGUocmVxdWVzdElkKSA9PSBJbnNwZWN0b3JQYWdlQWdl
bnQ6OkRvY3VtZW50UmVzb3VyY2UpIHsKICAgICAgICAgRnJhbWUqIGZyYW1lID0gbG9hZGVyLT5m
cmFtZSgpOwpAQCAtNjUzLDggKzY1Myw4IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxvYWRlCiAgICAg
aWYgKCFsb2FkZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciA9IGxvYWRlci0+ZnJhbWUoKS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlk
ZW50aWZpZXIoKTsKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5Ojpy
ZXF1ZXN0SWQoaWRlbnRpZmllcik7CisgICAgYXV0byBpZGVudGlmaWVyID0gUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlm
aWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIFByb3Rv
Y29sOjpOZXR3b3JrOjpMb2FkZXJJZCBsb2FkZXJJZCA9IGxvYWRlcklkZW50aWZpZXIobG9hZGVy
KTsKICAgICBQcm90b2NvbDo6TmV0d29yazo6RnJhbWVJZCBmcmFtZUlkID0gZnJhbWVJZGVudGlm
aWVyKGxvYWRlcik7CiAKQEAgLTY2OSwyMyArNjY5LDIzIEBAIHZvaWQgSW5zcGVjdG9yTmV0d29y
a0FnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPnJlcXVlc3RTZXJ2ZWRGcm9tTWVtb3J5Q2Fj
aGUocmVxdWVzdElkLCBmcmFtZUlkLCBsb2FkZXJJZCwgbG9hZGVyLT51cmwoKS5zdHJpbmcoKSwg
dGltZXN0YW1wKCksIFdURk1vdmUoaW5pdGlhdG9yT2JqZWN0KSwgYnVpbGRPYmplY3RGb3JDYWNo
ZWRSZXNvdXJjZSgmcmVzb3VyY2UpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OnNldEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VTdHJpbmcpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6c2V0SW5p
dGlhbFNjcmlwdENvbnRlbnQoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNv
bnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQogewotICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVz
b3VyY2VDb250ZW50KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBz
b3VyY2VTdHJpbmcpOworICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VDb250ZW50KElk
ZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIHNvdXJj
ZVN0cmluZyk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlU2Ny
aXB0UmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKLSAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFn
ZW50OjpTY3JpcHRSZXNvdXJjZSk7CisgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5
cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwg
SW5zcGVjdG9yUGFnZUFnZW50OjpTY3JpcHRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9y
TmV0d29ya0FnZW50OjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVh
ZGFibGVMb2FkZXIpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIpCiB7CiAg
ICAgU3RyaW5nIGluaXRpYXRvciA9IGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5vcHRpb25zKCku
aW5pdGlhdG9yOwogICAgIGlmIChpbml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5p
dGlhdG9ycygpLmZldGNoKQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlw
ZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFn
ZUFnZW50OjpGZXRjaFJlc291cmNlKTsKKyAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNv
dXJjZVR5cGUoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2
NCgpKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpGZXRjaFJlc291cmNlKTsKICAgICBlbHNlIGlmIChp
bml0aWF0b3IgPT0gY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9ycygpLnhtbGh0dHByZXF1
ZXN0KQotICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNlVHlwZShJZGVudGlmaWVy
c0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgSW5zcGVjdG9yUGFnZUFnZW50OjpYSFJS
ZXNvdXJjZSk7CisgICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSksIEluc3BlY3Rv
clBhZ2VBZ2VudDo6WEhSUmVzb3VyY2UpOwogfQogCiB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2Vu
dDo6d2lsbExvYWRYSFJTeW5jaHJvbm91c2x5KCkKQEAgLTExMjksNyArMTEyOSw3IEBAIHZvaWQg
SW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBs
b2FkZXIsIEZ1bmN0aW9uPHZvCiAgICAgQVNTRVJUKG1fZW5hYmxlZCk7CiAgICAgQVNTRVJUKG1f
aW50ZXJjZXB0aW9uRW5hYmxlZCk7CiAKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmll
cnNGYWN0b3J5OjpyZXF1ZXN0SWQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgU3RyaW5nIHJl
cXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGxvYWRlci5pZGVudGlmaWVy
KCkudG9VSW50NjQoKSk7CiAgICAgaWYgKG1fcGVuZGluZ0ludGVyY2VwdFJlcXVlc3RzLmNvbnRh
aW5zKHJlcXVlc3RJZCkpIHsKICAgICAgICAgaGFuZGxlcihsb2FkZXIucmVxdWVzdCgpKTsKICAg
ICAgICAgcmV0dXJuOwpAQCAtMTEzOCwxMiArMTEzOCwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdv
cmtBZ2VudDo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYgbG9hZGVyLCBGdW5jdGlv
bjx2bwogICAgIG1fZnJvbnRlbmREaXNwYXRjaGVyLT5yZXF1ZXN0SW50ZXJjZXB0ZWQocmVxdWVz
dElkLCBidWlsZE9iamVjdEZvclJlc291cmNlUmVxdWVzdChsb2FkZXIucmVxdWVzdCgpKSk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPik+JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjppbnRlcmNl
cHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAg
IEFTU0VSVChtX2VuYWJsZWQpOwogICAgIEFTU0VSVChtX2ludGVyY2VwdGlvbkVuYWJsZWQpOwog
Ci0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlk
ZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJl
cXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIGlmIChtX3BlbmRpbmdJbnRlcmNl
cHRSZXNwb25zZXMuY29udGFpbnMocmVxdWVzdElkKSkgewogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICAgICAgaGFuZGxlcihyZXNwb25zZSwgbnVsbHB0cik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQu
aAppbmRleCA3Y2RjNTg2NWU1OGU5YTlhMzBlYTI1MjAyNjkyZDRiOWFhNzdiMmQ2Li40YzI1YjNi
MmFjZjA5MDJlOGJiOTY3NjRkMGJmOWJhZDM3ODliMThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2VudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKQEAgLTk4
LDE3ICs5OCwxNyBAQCBwdWJsaWM6CiAgICAgLy8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uCiAg
ICAgdm9pZCB3aWxsUmVjYWxjdWxhdGVTdHlsZSgpOwogICAgIHZvaWQgZGlkUmVjYWxjdWxhdGVT
dHlsZSgpOwotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQg
d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRU
eXBlKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9h
ZGVyKik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5n
dGgpOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2Fk
ZXIqKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCB3aWxsU2Vu
ZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKik7CisgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYs
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6TG9hZFR5cGUpOworICAgIHZvaWQgZGlkUmVjZWl2
ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGRpZFJlY2Vp
dmVEYXRhKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgdm9pZCBkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlkRmFpbExv
YWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKICAgICB2b2lkIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShE
b2N1bWVudExvYWRlciosIENhY2hlZFJlc291cmNlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlVGhy
ZWFkYWJsZUxvYWRlclJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJik7CisgICAgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJl
c3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
Jik7CiAgICAgdm9pZCB3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHkoKTsKICAgICB2b2lkIGRpZExv
YWRYSFJTeW5jaHJvbm91c2x5KCk7Ci0gICAgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2Uo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHZvaWQgd2lsbERlc3Ryb3lDYWNo
ZWRSZXNvdXJjZShDYWNoZWRSZXNvdXJjZSYpOwogICAgIHZvaWQgZGlkQ3JlYXRlV2ViU29ja2V0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgVVJMJiByZXF1ZXN0VVJMKTsKICAgICB2
b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwpAQCAtMTE4LDEyICsxMTgsMTIgQEAgcHVi
bGljOgogICAgIHZvaWQgZGlkU2VuZFdlYlNvY2tldEZyYW1lKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgV2ViU29ja2V0RnJhbWUmKTsKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJTb2Nr
ZXRGcmFtZUVycm9yKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCBtYWluRnJhbWVOYXZpZ2F0ZWQoRG9jdW1lbnRMb2FkZXImKTsKLSAgICB2b2lkIHNl
dEluaXRpYWxTY3JpcHRDb250ZW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3Ry
aW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHZvaWQgc2V0SW5pdGlhbFNjcmlwdENvbnRlbnQoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CiAgICAg
dm9pZCBkaWRTY2hlZHVsZVN0eWxlUmVjYWxjdWxhdGlvbihEb2N1bWVudCYpOwogICAgIGJvb2wg
d2lsbEludGVyY2VwdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBib29sIHNob3VsZElu
dGVyY2VwdFJlcXVlc3QoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgYm9vbCBzaG91bGRJ
bnRlcmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBpbnRl
cmNlcHRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2UoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4pPiYmKTsKICAgICB2b2lkIGludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXImLCBGdW5j
dGlvbjx2b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKIAogICAgIHZvaWQgc2VhcmNo
T3RoZXJSZXF1ZXN0cyhjb25zdCBKU0M6OllhcnI6OlJlZ3VsYXJFeHByZXNzaW9uJiwgUmVmPEpT
T046OkFycmF5T2Y8SW5zcGVjdG9yOjpQcm90b2NvbDo6UGFnZTo6U2VhcmNoUmVzdWx0Pj4mKTsK
QEAgLTE0MCw3ICsxNDAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBib29sIHNob3VsZEZv
cmNlQnVmZmVyaW5nTmV0d29ya1Jlc291cmNlRGF0YSgpIGNvbnN0ID0gMDsKIAogcHJpdmF0ZToK
LSAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVk
aXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFnZUFnZW50OjpSZXNvdXJjZVR5cGUpOworICAgIHZv
aWQgd2lsbFNlbmRSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJl
c3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSk7CiAKICAgICBib29sIHNo
b3VsZEludGVyY2VwdChVUkwsIEluc3BlY3Rvcjo6UHJvdG9jb2w6Ok5ldHdvcms6Ok5ldHdvcmtT
dGFnZSk7CiAgICAgdm9pZCBjb250aW51ZVBlbmRpbmdSZXF1ZXN0cygpOwpAQCAtMjI2LDcgKzIy
Niw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSZXNvdXJjZXNEYXRh
PiBtX3Jlc291cmNlc0RhdGE7CiAKICAgICBIYXNoTWFwPFN0cmluZywgU3RyaW5nPiBtX2V4dHJh
UmVxdWVzdEhlYWRlcnM7Ci0gICAgSGFzaFNldDx1bnNpZ25lZCBsb25nPiBtX2hpZGRlblJlcXVl
c3RJZGVudGlmaWVyczsKKyAgICBIYXNoU2V0PFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9o
aWRkZW5SZXF1ZXN0SWRlbnRpZmllcnM7CiAKICAgICBzdHJ1Y3QgSW50ZXJjZXB0IHsKICAgICAg
ICAgU3RyaW5nIHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2Vu
dHMvV2ViQ29uc29sZUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMv
V2ViQ29uc29sZUFnZW50LmNwcAppbmRleCA0OGI5YTcxODUzZjQ0OTRmYmY0N2UzODM4YTg2MzY0
NzllNjdkZWIzLi5iZGZmODQzNGRiZWY4YzU0ODViMTUwNmVkMjA4YTAxYzllY2FkMjI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQu
Y3BwCkBAIC02NSwyMiArNjUsMjIgQEAgdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmZyYW1lV2luZG93
RGlzY2FyZGVkKERPTVdpbmRvdyogd2luZG93KQogICAgIHN0YXRpY19jYXN0PFdlYkluamVjdGVk
U2NyaXB0TWFuYWdlciY+KG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKS5kaXNjYXJkSW5qZWN0ZWRT
Y3JpcHRzRm9yKHdpbmRvdyk7CiB9CiAKLXZvaWQgV2ViQ29uc29sZUFnZW50OjpkaWRSZWNlaXZl
UmVzcG9uc2UodW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZGlkUmVjZWl2ZVJlc3Bv
bnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXND
b2RlKCkgPj0gNDAwKSB7CiAgICAgICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxl
ZCB0byBsb2FkIHJlc291cmNlOiB0aGUgc2VydmVyIHJlc3BvbmRlZCB3aXRoIGEgc3RhdHVzIG9m
ICIsIHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCksICIgKCIsIFNjcmlwdEFyZ3VtZW50czo6dHJ1
bmNhdGVTdHJpbmdGb3JDb25zb2xlTWVzc2FnZShyZXNwb25zZS5odHRwU3RhdHVzVGV4dCgpKSwg
JyknKTsKLSAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNz
YWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJpbmcoKSwgMCwgMCwgbnVsbHB0
ciwgcmVxdWVzdElkZW50aWZpZXIpKTsKKyAgICAgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtl
VW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlw
ZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCByZXNwb25zZS51cmwoKS5zdHJp
bmcoKSwgMCwgMCwgbnVsbHB0ciwgcmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAg
IH0KIH0KIAotdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBX
ZWJDb25zb2xlQWdlbnQ6OmRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBy
ZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8g
UmVwb3J0IGZhaWx1cmVzIG9ubHkuCiAgICAgaWYgKGVycm9yLmlzQ2FuY2VsbGF0aW9uKCkpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIGF1dG8gbWVzc2FnZSA9IG1ha2VTdHJpbmcoIkZhaWxlZCB0
byBsb2FkIHJlc291cmNlIiwgZXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24oKS5pc0VtcHR5KCkg
PyAiIiA6ICI6ICIsIGVycm9yLmxvY2FsaXplZERlc2NyaXB0aW9uKCkpOwotICAgIGFkZE1lc3Nh
Z2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4oTWVzc2FnZVNvdXJjZTo6TmV0
d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgZXJy
b3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmll
cikpOworICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUobWFrZVVuaXF1ZTxDb25zb2xlTWVzc2FnZT4o
TWVzc2FnZVNvdXJjZTo6TmV0d29yaywgTWVzc2FnZVR5cGU6OkxvZywgTWVzc2FnZUxldmVsOjpF
cnJvciwgbWVzc2FnZSwgZXJyb3IuZmFpbGluZ1VSTCgpLnN0cmluZygpLCAwLCAwLCBudWxscHRy
LCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29u
c29sZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVB
Z2VudC5oCmluZGV4IDBiOGYyMGVhYzM0M2I2NjgxN2FjOWYwZjBjNmM4Y2IyMGM5YmFjN2IuLjkw
YzcwOGU5YjgwMTcxMmI2NTk0MDdhZTBjMWQ2Njg2OGFlYTk0YTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuaApAQCAtMjYsNiArMjYs
NyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJJbnNwZWN0b3JXZWJBZ2VudEJhc2UuaCIK
KyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9JbnNwZWN0b3JDb25zb2xlQWdlbnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtNDMsOCArNDQsOCBAQCBwdWJsaWM6CiAKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24KICAgICB2b2lkIGZyYW1lV2luZG93RGlzY2FyZGVkKERPTVdpbmRvdyopOwotICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRD
aGVja2VyLmNwcAppbmRleCAwYWRjYTcwY2ZhMTYyOThhN2E2YzliM2YyODZmYWEzZGIyY2RiZTk1
Li44YjMxZTE3MzkyYTk3YmI5NmQzNDk3YjkyOGVkZGEyZTY3Y2NkNmQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmNwcApA
QCAtNTgsNyArNTgsNyBAQCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6On5Dcm9zc09yaWdp
blByZWZsaWdodENoZWNrZXIoKQogICAgICAgICBtX3Jlc291cmNlLT5yZW1vdmVDbGllbnQoKnRo
aXMpOwogfQogCi12b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6dmFsaWRhdGVQcmVm
bGlnaHRSZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGxvYWRlciwgUmVzb3VyY2VS
ZXF1ZXN0JiYgcmVxdWVzdCwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2
YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVy
LCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgYXV0byog
ZnJhbWUgPSBsb2FkZXIuZG9jdW1lbnQoKS5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpIHsKQEAg
LTE0MSw3ICsxNDEsNyBAQCB2b2lkIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6ZG9QcmVm
bGlnaHQoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBsb2FkZXIsCiAgICAgUmVzb3VyY2VSZXNw
b25zZSByZXNwb25zZTsKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogCi0gICAgdW5z
aWduZWQgaWRlbnRpZmllciA9IGxvYWRlci5kb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmxv
YWRSZXNvdXJjZVN5bmNocm9ub3VzbHkocHJlZmxpZ2h0UmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeTo6Q2Fubm90QXNrQ2xpZW50Rm9yQ3JlZGVudGlhbHMsIEZldGNoT3B0aW9ucyB7IH0s
IHsgfSwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBsb2Fk
ZXIuZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5
KHByZWZsaWdodFJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3k6OkNhbm5vdEFza0NsaWVu
dEZvckNyZWRlbnRpYWxzLCBGZXRjaE9wdGlvbnMgeyB9LCB7IH0sIGVycm9yLCByZXNwb25zZSwg
ZGF0YSk7CiAKICAgICBpZiAoIWVycm9yLmlzTnVsbCgpKSB7CiAgICAgICAgIC8vIElmIHRoZSBw
cmVmbGlnaHQgd2FzIGNhbmNlbGxlZCBieSB1bmRlcmx5aW5nIGNvZGUsIGl0IHByb2JhYmx5IG1l
YW5zIHRoZSByZXF1ZXN0IHdhcyBibG9ja2VkIGR1ZSB0byBzb21lIGFjY2VzcyBjb250cm9sIHBv
bGljeS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdo
dENoZWNrZXIuaAppbmRleCAyYTAzN2NjNGI2MWU4MWZiZTJmMDNjNzM4NmM5YjhjM2RhZTA5NWNh
Li41MzI5ODBkMzU5ZDVkZTdlNzNlYmNhN2JhYjEwMTZmYjJlMDcwYWE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oCkBAIC0z
Miw2ICszMiw3IEBACiAKICNpbmNsdWRlICJDYWNoZWRSYXdSZXNvdXJjZUNsaWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlZFJlc291cmNlSGFuZGxlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTU3LDcgKzU4LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZGlyZWN0UmVj
ZWl2ZWQoQ2FjaGVkUmVzb3VyY2UmLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVzb3VyY2VSZXF1ZXN0JiYpPiYmKSBm
aW5hbDsKIAogICAgIHN0YXRpYyB2b2lkIGhhbmRsZUxvYWRpbmdGYWlsdXJlKERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKLSAg
ICBzdGF0aWMgdm9pZCB2YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJs
ZUxvYWRlciYsIFJlc291cmNlUmVxdWVzdCYmLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7CisgICAgc3RhdGljIHZvaWQgdmFsaWRhdGVQcmVmbGlnaHRSZXNwb25zZShE
b2N1bWVudFRocmVhZGFibGVMb2FkZXImLCBSZXNvdXJjZVJlcXVlc3QmJiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAKICAgICBEb2N1bWVudFRo
cmVhZGFibGVMb2FkZXImIG1fbG9hZGVyOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hl
ZFJhd1Jlc291cmNlPiBtX3Jlc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExv
YWRlci5jcHAKaW5kZXggMGQyZDE0MTIyMmRlNzZmZGFiYWQ2ZTA0ZGY3MjQ2Njc0ZjcwYTY0ZC4u
ZDNlOWNlYWQ5Y2I3YzgyZTJkOTAyNzA5MWFiZWU0OGQ2NWM0ZTQ5YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC00NjQsOCArNDY0LDggQEAgdm9pZCBEb2N1
bWVudExvYWRlcjo6ZmluaXNoZWRMb2FkaW5nKCkKICAgICAgICAgLy8gYmVmb3JlIGNhbGxpbmcg
ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nIHNvIHRoYXQgd2UgZG9uJ3QgbGF0ZXIgdHJ5IHRvCiAg
ICAgICAgIC8vIGNhbmNlbCB0aGUgYWxyZWFkeS1maW5pc2hlZCBzdWJzdGl0dXRlIGxvYWQuCiAg
ICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBlbXB0eU1ldHJpY3M7Ci0gICAgICAgIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXI7Ci0gICAgICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSAw
OworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciA9IG1faWRlbnRp
ZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7CisgICAgICAgIG1faWRlbnRpZmllckZv
ckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSB7IH07CiAgICAgICAgIGZyYW1lTG9hZGVyKCkt
Pm5vdGlmaWVyKCkuZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKHRoaXMsIGlkZW50aWZpZXIsIGVt
cHR5TWV0cmljcywgbnVsbHB0cik7CiAgICAgfQogCkBAIC04ODYsNyArODg2LDcgQEAgYm9vbCBE
b2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgRE9DVU1FTlRMT0FERVJfUkVMRUFTRV9MT0coInN0YXJ0TG9hZGluZ01h
aW5SZXNvdXJjZTogUmV0dXJuaW5nIHN1YnN0aXR1dGUgZGF0YSIpOwotICAgIG1faWRlbnRpZmll
ckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBtX2ZyYW1lLT5wYWdlKCktPnByb2dyZXNz
KCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgIG1faWRlbnRpZmllckZvckxvYWRXaXRo
b3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7
CiAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyLCB0aGlzLCBt
X3JlcXVlc3QpOwogICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bV9yZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNlKCksIG51bGxwdHIpOwogCkBAIC05MzksNyArOTM5
LDcgQEAgYm9vbCBEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1JlZGlyZWN0UmVxdWVzdEZyb21B
cHBsaWNhdGlvbkNhY2hlKGNvbnN0IFJlc291cmMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9p
ZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBEb2N1bWVudExvYWRlcjo6c3RvcExvYWRpbmdB
ZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgUmVmPERvY3VtZW50TG9hZGVyPiBwcm90ZWN0ZWRUaGlzIHsgKnRoaXMgfTsK
ICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25z
RGVuaWVkKCptX2ZyYW1lLCBpZGVudGlmaWVyLCAqdGhpcywgcmVzcG9uc2UpOwpAQCAtMTAzNyw3
ICsxMDM3LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgQ29tcGxldGkKICAgICB9CiAKICAgICBBU1NFUlQo
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciB8fCBtX21haW5SZXNvdXJj
ZSk7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdp
dGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VM
b2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJj
ZUxvYWRlciA/IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21h
aW5SZXNvdXJjZS0+aWRlbnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsKIAogICAg
IGlmIChtX3N1YnN0aXR1dGVEYXRhLmlzVmFsaWQoKSB8fCAhcGxhdGZvcm1TdHJhdGVnaWVzKCkt
PmxvYWRlclN0cmF0ZWd5KCktPmhhdmVQZXJmb3JtZWRTZWN1cml0eUNoZWNrcyhyZXNwb25zZSkp
IHsKQEAgLTEwNTQsNyArMTA1NCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnJlc3BvbnNlUmVj
ZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbXBsZXRpCiAgICAgICAg
ICAgICBpZiAoIWZyYW1lT3B0aW9ucy5pc051bGwoKSkgewogICAgICAgICAgICAgICAgIGlmIChm
cmFtZUxvYWRlcigpLT5zaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhmcmFtZU9w
dGlvbnMsIHVybCwgaWRlbnRpZmllcikpIHsKICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIG1l
c3NhZ2UgPSAiUmVmdXNlZCB0byBkaXNwbGF5ICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6
ZWRUb0xlbmd0aCgpICsgIicgaW4gYSBmcmFtZSBiZWNhdXNlIGl0IHNldCAnWC1GcmFtZS1PcHRp
b25zJyB0byAnIiArIGZyYW1lT3B0aW9ucyArICInLiI7Ci0gICAgICAgICAgICAgICAgICAgIG1f
ZnJhbWUtPmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3Vy
aXR5LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCBpZGVudGlmaWVyKTsKKyAgICAgICAg
ICAgICAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2Fn
ZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGlkZW50aWZp
ZXIudG9VSW50NjQoKSk7CiAgICAgICAgICAgICAgICAgICAgIHN0b3BMb2FkaW5nQWZ0ZXJYRnJh
bWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQoaWRlbnRpZmllciwgcmVzcG9u
c2UpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgfQpAQCAt
MTE4MCwxMCArMTE4MCwxMCBAQCBib29sIERvY3VtZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1
ZXN0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKGF1dG8qIGN1cnJl
bnREb2N1bWVudCA9IGZyYW1lKCktPmRvY3VtZW50KCkpIHsKLSAgICAgICAgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/
IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJj
ZS0+aWRlbnRpZmllcigpOworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciA9IG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPyBtX2lkZW50
aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIDogbV9tYWluUmVzb3VyY2UtPmlkZW50
aWZpZXIoKTsKICAgICAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCi0gICAgICAgIGN1cnJlbnRE
b2N1bWVudC0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3Nh
Z2VMZXZlbDo6RXJyb3IsIG1ha2VTdHJpbmcoIk5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRvcCBm
cmFtZSB0byBkYXRhIFVSTCAnIiwgbV9yZXNwb25zZS51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSwgIicuIiksIGlkZW50aWZpZXIpOworICAgICAgICBjdXJyZW50RG9jdW1l
bnQtPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2
ZWw6OkVycm9yLCBtYWtlU3RyaW5nKCJOb3QgYWxsb3dlZCB0byBuYXZpZ2F0ZSB0b3AgZnJhbWUg
dG8gZGF0YSBVUkwgJyIsIG1fcmVzcG9uc2UudXJsKCkuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRv
TGVuZ3RoKCksICInLiIpLCBpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIH0KICAgICBET0NV
TUVOVExPQURFUl9SRUxFQVNFX0xPRygiY29udGludWVBZnRlckNvbnRlbnRQb2xpY3k6IGNhbm5v
dCBzaG93IFVSTCIpOwogCkBAIC0yMDE2LDcgKzIwMTYsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVy
OjpzdG9wTG9hZGluZ1N1YnJlc291cmNlcygpCiAgICAgQVNTRVJUKG1fc3VicmVzb3VyY2VMb2Fk
ZXJzLmlzRW1wdHkoKSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNl
TG9hZGVyKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCit2b2lkIERvY3VtZW50TG9hZGVyOjphZGRT
dWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewogICAgIC8vIFRoZSBt
YWluIHJlc291cmNlJ3MgdW5kZXJseWluZyBSZXNvdXJjZUxvYWRlciB3aWxsIGFzayB0byBiZSBh
ZGRlZCBoZXJlLgogICAgIC8vIEl0IGlzIG11Y2ggc2ltcGxlciB0byBoYW5kbGUgc3BlY2lhbCBj
YXNpbmcgb2YgbWFpbiByZXNvdXJjZSBsb2FkcyBpZiB3ZSBkb24ndApAQCAtMjAyNSwxMiArMjAy
NSwxMiBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJj
ZUxvYWRlciogbG9hZGVyKQogICAgIC8vIGlmIHdlIGFyZSBqdXN0IHN0YXJ0aW5nIHRoZSBtYWlu
IHJlc291cmNlIGxvYWQuCiAgICAgaWYgKCFtX2dvdEZpcnN0Qnl0ZSkKICAgICAgICAgcmV0dXJu
OwotICAgIEFTU0VSVChsb2FkZXItPmlkZW50aWZpZXIoKSk7Ci0gICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXItPmlkZW50aWZpZXIoKSkpOwotICAgIEFTU0VS
VCghbWFpblJlc291cmNlTG9hZGVyKCkgfHwgbWFpblJlc291cmNlTG9hZGVyKCkgIT0gbG9hZGVy
KTsKKyAgICBBU1NFUlQobG9hZGVyLmlkZW50aWZpZXIoKSk7CisgICAgQVNTRVJUKCFtX3N1YnJl
c291cmNlTG9hZGVycy5jb250YWlucyhsb2FkZXIuaWRlbnRpZmllcigpKSk7CisgICAgQVNTRVJU
KCFtYWluUmVzb3VyY2VMb2FkZXIoKSB8fCBtYWluUmVzb3VyY2VMb2FkZXIoKSAhPSAmbG9hZGVy
KTsKIAogICAgIC8vIEFwcGxpY2F0aW9uIENhY2hlIGxvYWRlcnMgYXJlIGhhbmRsZWQgYnkgdGhl
aXIgQXBwbGljYXRpb25DYWNoZUdyb3VwIGRpcmVjdGx5LgotICAgIGlmIChsb2FkZXItPm9wdGlv
bnMoKS5hcHBsaWNhdGlvbkNhY2hlTW9kZSA9PSBBcHBsaWNhdGlvbkNhY2hlTW9kZTo6QnlwYXNz
KQorICAgIGlmIChsb2FkZXIub3B0aW9ucygpLmFwcGxpY2F0aW9uQ2FjaGVNb2RlID09IEFwcGxp
Y2F0aW9uQ2FjaGVNb2RlOjpCeXBhc3MpCiAgICAgICAgIHJldHVybjsKIAogI2lmIEFTU0VSVF9F
TkFCTEVECkBAIC0yMDQwLDcgKzIwNDAsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJy
ZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgIGNhc2UgRG9jdW1lbnQ6OkFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6IHsK
ICAgICAgICAgICAgIC8vIEEgcGFnZSBhYm91dCB0byBlbnRlciB0aGUgQmFja0ZvcndhcmRDYWNo
ZSBzaG91bGQgb25seSBiZSBhYmxlIHRvIHN0YXJ0IHBpbmcgbG9hZHMuCi0gICAgICAgICAgICBh
dXRvKiBjYWNoZWRSZXNvdXJjZSA9IGRvd25jYXN0PFN1YnJlc291cmNlTG9hZGVyPihsb2FkZXIp
LT5jYWNoZWRSZXNvdXJjZSgpOworICAgICAgICAgICAgYXV0byogY2FjaGVkUmVzb3VyY2UgPSBk
b3duY2FzdDxTdWJyZXNvdXJjZUxvYWRlcj4obG9hZGVyKS5jYWNoZWRSZXNvdXJjZSgpOwogICAg
ICAgICAgICAgQVNTRVJUKGNhY2hlZFJlc291cmNlICYmIChDYWNoZWRSZXNvdXJjZTo6c2hvdWxk
VXNlUGluZ0xvYWQoY2FjaGVkUmVzb3VyY2UtPnR5cGUoKSkgfHwgY2FjaGVkUmVzb3VyY2UtPm9w
dGlvbnMoKS5rZWVwQWxpdmUpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0y
MDUyLDcgKzIwNTIsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRl
cihSZXNvdXJjZUxvYWRlciogbG9hZGVyKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9zdWJyZXNv
dXJjZUxvYWRlcnMuYWRkKGxvYWRlci0+aWRlbnRpZmllcigpLCBsb2FkZXIpOworICAgIG1fc3Vi
cmVzb3VyY2VMb2FkZXJzLmFkZChsb2FkZXIuaWRlbnRpZmllcigpLCAmbG9hZGVyKTsKIH0KIAog
dm9pZCBEb2N1bWVudExvYWRlcjo6cmVtb3ZlU3VicmVzb3VyY2VMb2FkZXIoTG9hZENvbXBsZXRp
b25UeXBlIHR5cGUsIFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCkBAIC0yMjc4LDcgKzIyNzgsNyBA
QCB2b2lkIERvY3VtZW50TG9hZGVyOjpsb2FkTWFpblJlc291cmNlKFJlc291cmNlUmVxdWVzdCYm
IHJlcXVlc3QpCiAjZW5kaWYKIAogICAgIGlmICghbWFpblJlc291cmNlTG9hZGVyKCkpIHsKLSAg
ICAgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IG1fZnJhbWUt
PnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgPSBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCku
YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QobV9pZGVudGlmaWVyRm9yTG9hZFdpdGhv
dXRSZXNvdXJjZUxvYWRlciwgdGhpcywgbWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKSk7CiAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QodGhpcywgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciwg
bWFpblJlc291cmNlUmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKSwgUmVzb3VyY2VSZXNwb25zZSgp
LCBudWxscHRyKTsKICAgICB9CkBAIC0yMzQ0LDEzICsyMzQ0LDEzIEBAIHZvaWQgRG9jdW1lbnRM
b2FkZXI6OmNsZWFyTWFpblJlc291cmNlKCkKICAgICB1bnJlZ2lzdGVyVGVtcG9yYXJ5U2Vydmlj
ZVdvcmtlckNsaWVudCgpOwogfQogCi12b2lkIERvY3VtZW50TG9hZGVyOjpzdWJyZXNvdXJjZUxv
YWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKK3ZvaWQg
RG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChS
ZXNvdXJjZUxvYWRlciYgbG9hZGVyKQogewotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9
IGxvYWRlci0+aWRlbnRpZmllcigpOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyID0gbG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAK
LSAgICBpZiAoIW1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmFkZChpZGVudGlmaWVyLCBs
b2FkZXIpLmlzTmV3RW50cnkpIHsKLSAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3Vy
Y2VMb2FkZXJzLmdldChpZGVudGlmaWVyKSA9PSBsb2FkZXIpOworICAgIGlmICghbV9tdWx0aXBh
cnRTdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGlkZW50aWZpZXIsICZsb2FkZXIpLmlzTmV3RW50cnkp
IHsKKyAgICAgICAgQVNTRVJUKG1fbXVsdGlwYXJ0U3VicmVzb3VyY2VMb2FkZXJzLmdldChpZGVu
dGlmaWVyKSA9PSAmbG9hZGVyKTsKICAgICAgICAgQVNTRVJUKCFtX3N1YnJlc291cmNlTG9hZGVy
cy5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgQVNTRVJUKG1f
c3VicmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmgKaW5kZXggYTczMTM5MjZhY2RhNTkyMThiMDIxNTExMGI5NzNh
NTNmYTRiYjJmOS4uOGVlMTRhMjRkNTdiMzRjYzdjYmVhNGNkYzc3MzEwMjcyNmQyZTVkNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNp
bmNsdWRlICJMaW5rSWNvbi5oIgogI2luY2x1ZGUgIk5hdmlnYXRpb25BY3Rpb24uaCIKICNpbmNs
dWRlICJSZXNvdXJjZUVycm9yLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpAQCAtODksNyArOTAs
NyBAQCBjbGFzcyBTdWJzdGl0dXRlUmVzb3VyY2U7CiAKIGVudW0gY2xhc3MgU2hvdWxkQ29udGlu
dWU7CiAKLXVzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBS
ZWZQdHI8UmVzb3VyY2VMb2FkZXI+PjsKK3VzaW5nIFJlc291cmNlTG9hZGVyTWFwID0gSGFzaE1h
cDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwogCiBl
bnVtIGNsYXNzIEF1dG9wbGF5UG9saWN5IDogdWludDhfdCB7CiAgICAgRGVmYXVsdCwgLy8gVXNl
cyBwb2xpY2llcyBzcGVjaWZpZWQgaW4gZG9jdW1lbnQgc2V0dGluZ3MuCkBAIC0yOTUsNyArMjk2
LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdG9wTG9hZGluZ1BsdWdJbnMoKTsKICAgICB2b2lk
IHN0b3BMb2FkaW5nU3VicmVzb3VyY2VzKCk7Ci0gICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9w
TG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgc3RvcExvYWRpbmdBZnRlclhGcmFtZU9wdGlvbnNPckNvbnRlbnRT
ZWN1cml0eVBvbGljeURlbmllZChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKTsKIAogICAgIGJvb2wgdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZCgp
IGNvbnN0IHsgcmV0dXJuIG1fdXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZDsgfQogICAgIHZv
aWQgc2V0VXNlckNvbnRlbnRFeHRlbnNpb25zRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV91c2Vy
Q29udGVudEV4dGVuc2lvbnNFbmFibGVkID0gZW5hYmxlZDsgfQpAQCAtMzM4LDEyICszMzksMTIg
QEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIE1vdXNlRXZlbnRQb2xpY3kgbW91c2VFdmVu
dFBvbGljeSgpIGNvbnN0OwogICAgIHZvaWQgc2V0TW91c2VFdmVudFBvbGljeShNb3VzZUV2ZW50
UG9saWN5IHBvbGljeSkgeyBtX21vdXNlRXZlbnRQb2xpY3kgPSBwb2xpY3k7IH0KIAotICAgIHZv
aWQgYWRkU3VicmVzb3VyY2VMb2FkZXIoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2b2lkIGFkZFN1
YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyJik7CiAgICAgdm9pZCByZW1vdmVTdWJyZXNv
dXJjZUxvYWRlcihMb2FkQ29tcGxldGlvblR5cGUsIFJlc291cmNlTG9hZGVyKik7CiAgICAgdm9p
ZCBhZGRQbHVnSW5TdHJlYW1Mb2FkZXIoUmVzb3VyY2VMb2FkZXImKTsKICAgICB2b2lkIHJlbW92
ZVBsdWdJblN0cmVhbUxvYWRlcihSZXNvdXJjZUxvYWRlciYpOwogCi0gICAgdm9pZCBzdWJyZXNv
dXJjZUxvYWRlckZpbmlzaGVkTG9hZGluZ09uZVBhcnQoUmVzb3VyY2VMb2FkZXIqKTsKKyAgICB2
b2lkIHN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRl
ciYpOwogCiAgICAgdm9pZCBzZXREZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKGJvb2wgZGVmZXIp
IHsgbV9kZWZlck1haW5SZXNvdXJjZURhdGFMb2FkID0gZGVmZXI7IH0KICAgICAKQEAgLTYxMCw3
ICs2MTEsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9sb2FkaW5nTWFpblJlc291cmNlIHsgZmFs
c2UgfTsKICAgICBEb2N1bWVudExvYWRUaW1pbmcgbV9sb2FkVGltaW5nOwogCi0gICAgdW5zaWdu
ZWQgbG9uZyBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9Owor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJl
c291cmNlTG9hZGVyOwogCiAgICAgRGF0YUxvYWRUb2tlbiBtX2RhdGFMb2FkVG9rZW47CiAgICAg
Ym9vbCBtX3dhaXRpbmdGb3JDb250ZW50UG9saWN5IHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKaW5kZXggNWE5YTU3
ZTkzOTA1MjhmZDM1OTliMDdkYjYwYWMxNWIwMDY2Yzk3MC4uMDhhNDM5YzkwZWE1NjJkZTZlOTg4
NWMwNzgxMzRmM2RhYTQ4YTBhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Rv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTM5OSw3ICszOTksNyBAQCB2b2lkIERvY3Vt
ZW50VGhyZWFkYWJsZUxvYWRlcjo6cmVzcG9uc2VSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVz
b3VyY2UsIGNvbnN0CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiB9CiAKLXZvaWQgRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewog
ICAgIEFTU0VSVChtX2NsaWVudCk7CiAgICAgQVNTRVJUKHJlc3BvbnNlLnR5cGUoKSAhPSBSZXNv
dXJjZVJlc3BvbnNlOjpUeXBlOjpFcnJvcik7CkBAIC00MzMsNyArNDMzLDcgQEAgdm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmRhdGFSZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYgcmVzb3Vy
Y2UsIGNvbnN0IHVpbnQKICAgICBkaWRSZWNlaXZlRGF0YShtX3Jlc291cmNlLT5pZGVudGlmaWVy
KCksIGRhdGEsIGRhdGFMZW5ndGgpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
cjo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZywgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURh
dGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0
YUxlbmd0aCkKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC00NjksNyArNDY5LDcgQEAg
dm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291
cmNlJiByZXNvdXJjZSwgY29uc3QgTmUKICAgICAgICAgZGlkRmluaXNoTG9hZGluZyhtX3Jlc291
cmNlLT5pZGVudGlmaWVyKCkpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogCkBAIC01MDMsNyArNTAz
LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyKQogICAgIG1fY2xpZW50LT5kaWRGaW5pc2hMb2FkaW5nKGlk
ZW50aWZpZXIpOwogfQogCi12b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCh1
bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyOjpkaWRGYWlsKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCkBAIC01MzUsNyArNTM1LDcgQEAgdm9pZCBEb2N1bWVudFRocmVh
ZGFibGVMb2FkZXI6OnByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkK
ICAgICBsb2FkUmVxdWVzdChXVEZNb3ZlKGFjdHVhbFJlcXVlc3QpLCBTZWN1cml0eUNoZWNrUG9s
aWN5OjpTa2lwU2VjdXJpdHlDaGVjayk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpwcmVmbGlnaHRGYWlsdXJlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6cHJlZmxp
Z2h0RmFpbHVyZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgbV9wcmVmbGlnaHRDaGVja2VyID0gc3RkOjpudWxs
b3B0OwogCkBAIC01OTgsNyArNTk4LDcgQEAgdm9pZCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6
OmxvYWRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFNlY3VyaXR5Q2gKICAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhOwogICAgIFJlc291cmNlRXJyb3IgZXJyb3I7CiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIg
PSBzdGQ6Om51bWVyaWNfbGltaXRzPHVuc2lnbmVkIGxvbmc+OjptYXgoKTsKKyAgICBhdXRvIGlk
ZW50aWZpZXIgPSBtYWtlT2JqZWN0SWRlbnRpZmllcjxSZXNvdXJjZUxvYWRlcj4oc3RkOjpudW1l
cmljX2xpbWl0czx1aW50NjRfdD46Om1heCgpKTsKICAgICBpZiAoYXV0byogZnJhbWUgPSBtX2Rv
Y3VtZW50LmZyYW1lKCkpIHsKICAgICAgICAgaWYgKCFNaXhlZENvbnRlbnRDaGVja2VyOjpjYW5S
dW5JbnNlY3VyZUNvbnRlbnQoKmZyYW1lLCBtX2RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIHJl
cXVlc3RVUkwpKQogICAgICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IGYxYmYwZWY4NDZiZWZiNWIwNTM1
ZTgwNGQ1MDM0MDAzMjg3MTE4MDAuLjgzZmE5MDkxZjE0N2UzOGQ3NGNhYTZkODFjNTBhYzk1N2Ey
MzQyMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyLmgKQEAgLTMzLDYgKzMzLDcgQEAKIAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBv
bGljeS5oIgogI2luY2x1ZGUgIkNyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5oIgorI2luY2x1
ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9u
c2UuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVM
b2FkZXIuaCIKQEAgLTkxLDE1ICs5MiwxNSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZvaWQgZmluaXNoZWRUaW1pbmdGb3JXb3JrZXJMb2FkKGNvbnN0IFJlc291cmNlVGltaW5nJik7
CiAgICAgICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVzb3VyY2UmLCBjb25zdCBOZXR3
b3JrTG9hZE1ldHJpY3MmKSBvdmVycmlkZTsKIAotICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsK
LSAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKLSAgICAgICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7Ci0gICAgICAgIHZvaWQgZGlkRmFp
bCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICAg
ICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCk7
CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
OworICAgICAgICB2b2lkIGRpZEZhaWwoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3NzT3JpZ2luQWNjZXNzUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZVNpbXBsZUNyb3NzT3JpZ2lu
QWNjZXNzUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmJik7CiAgICAgICAgIHZvaWQgbWFrZUNyb3Nz
T3JpZ2luQWNjZXNzUmVxdWVzdFdpdGhQcmVmbGlnaHQoUmVzb3VyY2VSZXF1ZXN0JiYpOwogICAg
ICAgICB2b2lkIHByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYpOwotICAgICAgICB2
b2lkIHByZWZsaWdodEZhaWx1cmUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZUVycm9yJik7CisgICAgICAgIHZvaWQgcHJlZmxpZ2h0RmFpbHVyZShSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKIAogICAgICAgICB2b2lkIGxvYWRS
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmLCBTZWN1cml0eUNoZWNrUG9saWN5KTsKICAgICAgICAg
Ym9vbCBpc0FsbG93ZWRSZWRpcmVjdChjb25zdCBVUkwmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Vt
cHR5Q2xpZW50cy5jcHAKaW5kZXggZGJjZTE3NzE3NjZiMWZjMTk4Mjk4NTMxMzU5NDlhZjUxOWIy
YmJiZi4uOWJlZGVjNjM2YjJiNGZlNjE4NGE0MTlhOWFiNjUzMzQ1YzE1YmQ3MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAKQEAgLTY3MywyNiArNjczLDI2IEBAIHZvaWQg
RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2Fk
KERvY3VtZW50TG9hZGVyKiwKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojph
c3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExv
YWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGll
bnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKQogewogfQogCi1i
b29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK2Jvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIEVtcHR5RnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikK
K3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKIHsKIH0KIAogI2lmIFVTRShQUk9URUNU
SU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCiAKLWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpCitib29sIEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYp
CiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtNzAxLDIyICs3MDEsMjIgQEAgYm9vbCBFbXB0
eUZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNl
KERvY3VtZW50TG9hZGUKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKLVJldGFpblB0cjxD
RkRpY3Rpb25hcnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0
aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykKK1JldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiBudWxs
cHRyOwogfQogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcsIGludCkKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgaW50KQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcp
Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhE
b2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKIH0KIApAQCAtNzI4
LDcgKzcyOCw3IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5p
c2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikKIAogI2VuZGlmCiAKLXZvaWQgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImKQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikKIHsKIH0KIApAQCAtMTA2Nyw3ICsx
MDY3LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6YWNjZXNz
aWJpbGl0eVJlbW90ZU9iamVjdCgpCiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXZvaWQgRW1w
dHlGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICpyZXNwb25zZSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBj
b25zdAordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1
bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSAqcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAgICBjb21wbGV0aW9uSGFuZGxlcihy
ZXNwb25zZSk7CiB9CkBAIC0xMDc2LDcgKzEwNzYsNyBAQCB2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
TgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikKIAotYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBs
b25nIGxvbmcpCitib29sIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKQog
ewogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZy
YW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggMDE3ZTM3ZTE1NGNlMmZmYTY0YzE4MmYxZTViZWJlMzdj
MDRhY2U2MC4uMDI5NGRjNDM0MjA0YjZmOWJmZjI5MjYxYTA3NzliNjhhMDRmZWJkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5RnJhbWVMb2FkZXJDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oCkBAIC01Mywy
NSArNTMsMjUgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY29udmVydE1haW5SZXNvdXJjZUxvYWRU
b0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9J
bml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3Bh
dGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwotICAgIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAg
IHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwor
ICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2Vu
ZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYp
IGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9v
bCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAgYm9vbCBj
YW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcpIGZpbmFsOworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9w
ZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsK
ICNlbmRpZgogCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZykgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0
Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgaW50KSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGlu
ZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjaWYg
RU5BQkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0
ZWN0aW9uKE5TQXJyYXkgKikgZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFp
bExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVy
cm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgZmlu
YWw7CiAgICAgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmLCBpbnQpIGZpbmFsOwogCiAgICAgdm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZl
bnRzKCkgZmluYWw7CkBAIC0xODIsMTEgKzE4MiwxMSBAQCBwcml2YXRlOgogCiAjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVj
dCgpIGZpbmFsOwotICAgIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBOU0NhY2hlZFVSTFJlc3BvbnNlICosIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxs
Q2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
TlNDYWNoZWRVUkxSZXNwb25zZSAqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJM
UmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOwogI2VuZGlmCiAKICNpZiBVU0UoQ0ZVUkxDT05O
RUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiwgdW5zaWduZWQgbG9uZyBsb25nKSBmaW5hbDsKKyAgICBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiwgdW5zaWduZWQgbG9uZyBsb25nKSBm
aW5hbDsKICNlbmRpZgogCiAgICAgUmVmPEZyYW1lTmV0d29ya2luZ0NvbnRleHQ+IGNyZWF0ZU5l
dHdvcmtpbmdDb250ZXh0KCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cAppbmRleCAyYTZlMTY2ZWIyMjdlNTY0Yjg4MWVkMzE4OWI4YzExMjUxMTRkMWE3Li5kZTBiYzA4
OWViYzc1ZjIzYTY0MWJkM2Y3MjEwNTFmMzdiYzViNGFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9G
cmFtZUxvYWRlci5jcHAKQEAgLTE2ODksNyArMTY4OSw3IEBAIGJvb2wgRnJhbWVMb2FkZXI6Ondp
bGxMb2FkTWVkaWFFbGVtZW50VVJMKFVSTCYgdXJsLCBOb2RlJiBpbml0aWF0b3JOb2RlKQogICAg
IFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHVybCk7CiAgICAgcmVxdWVzdC5zZXRJbnNwZWN0b3JJ
bml0aWF0b3JOb2RlSWRlbnRpZmllcihJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmlkZW50aWZp
ZXJGb3JOb2RlKGluaXRpYXRvck5vZGUpKTsKIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cjsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICBSZXNvdXJj
ZUVycm9yIGVycm9yOwogICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRlbnRpZmll
ciwgZXJyb3IpOwogICAgIG5vdGlmaWVyKCkuc2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMo
bV9kb2N1bWVudExvYWRlci5nZXQoKSwgaWRlbnRpZmllciwgcmVxdWVzdCwgUmVzb3VyY2VSZXNw
b25zZSh1cmwsIFN0cmluZygpLCAtMSwgU3RyaW5nKCkpLCAwLCAtMSwgLTEsIGVycm9yKTsKQEAg
LTIwNjgsNyArMjA2OCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lvbmFsTG9h
ZCgpCiAgICAgICAgIC8vIFN0YXJ0IHJlcXVlc3QgZm9yIHRoZSBtYWluIHJlc291cmNlIGFuZCBk
aXNwYXRjaCBkaWRSZWNlaXZlUmVzcG9uc2UgYmVmb3JlIHRoZSBsb2FkIGlzIGNvbW1pdHRlZCBm
b3IKICAgICAgICAgLy8gY29uc2lzdGVuY3kgd2l0aCBhbGwgb3RoZXIgbG9hZHMuIFNlZSBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwOTI3LgogICAgICAgICBSZXNv
dXJjZUVycm9yIG1haW5SZXNvdWNlRXJyb3I7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgbWFpblJl
c291cmNlSWRlbnRpZmllcjsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1haW5S
ZXNvdXJjZUlkZW50aWZpZXI7CiAgICAgICAgIFJlc291cmNlUmVxdWVzdCBtYWluUmVzb3VyY2VS
ZXF1ZXN0KGNhY2hlZFBhZ2UtPmRvY3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKSk7CiAgICAgICAg
IHJlcXVlc3RGcm9tRGVsZWdhdGUobWFpblJlc291cmNlUmVxdWVzdCwgbWFpblJlc291cmNlSWRl
bnRpZmllciwgbWFpblJlc291Y2VFcnJvcik7CiAgICAgICAgIG5vdGlmaWVyKCkuZGlzcGF0Y2hE
aWRSZWNlaXZlUmVzcG9uc2UoY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKSwgbWFpblJlc291
cmNlSWRlbnRpZmllciwgY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKS0+cmVzcG9uc2UoKSk7
CkBAIC0yMTMzLDcgKzIxMzMsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjb21taXRQcm92aXNpb25h
bExvYWQoKQogICAgICAgICAgICAgY29uc3QgYXV0byYgcmVzcG9uc2UgPSBtX2RvY3VtZW50TG9h
ZGVyLT5yZXNwb25zZXMoKVtpXTsKICAgICAgICAgICAgIC8vIEZJWE1FOiBJZiB0aGUgV2ViS2l0
IGNsaWVudCBjaGFuZ2VzIG9yIGNhbmNlbHMgdGhlIHJlcXVlc3QsIHRoaXMgaXMgbm90IHJlc3Bl
Y3RlZC4KICAgICAgICAgICAgIFJlc291cmNlRXJyb3IgZXJyb3I7Ci0gICAgICAgICAgICB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXI7CisgICAgICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllcjsKICAgICAgICAgICAgIFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KHJlc3Bv
bnNlLnVybCgpKTsKICAgICAgICAgICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUocmVxdWVzdCwgaWRl
bnRpZmllciwgZXJyb3IpOwogICAgICAgICAgICAgLy8gRklYTUU6IElmIHdlIGdldCBhIHJlc291
cmNlIHdpdGggbW9yZSB0aGFuIDJCIGJ5dGVzLCB0aGlzIGNvZGUgd29uJ3QgZG8gdGhlIHJpZ2h0
IHRoaW5nLgpAQCAtMzEwNiw3ICszMTA2LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RS
ZXF1ZXN0KEZyYW1lTG9hZFJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBTdHJpbmcmIHJlZmUKICAg
ICB9KTsKIH0KIAotdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hy
b25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQ
b2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVy
cm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+JiBkYXRhKQorUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIEZyYW1lTG9hZGVyOjpsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50
Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlv
bnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMs
IFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVmUHRy
PFNoYXJlZEJ1ZmZlcj4mIGRhdGEpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUuZG9jdW1lbnQoKSk7
CiAgICAgU3RyaW5nIHJlZmVycmVyID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJI
ZWFkZXIobV9mcmFtZS5kb2N1bWVudCgpLT5yZWZlcnJlclBvbGljeSgpLCByZXF1ZXN0LnVybCgp
LCBvdXRnb2luZ1JlZmVycmVyKCkpOwpAQCAtMzEyNCw3ICszMTI0LDcgQEAgdW5zaWduZWQgbG9u
ZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXUKIAogICAgIGFwcGx5VXNlckFnZW50SWZOZWVkZWQoaW5pdGlhbFJlcXVlc3Qp
OwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gMDsgICAgCisgICAgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7ICAgIAogICAgIFJlc291cmNlUmVxdWVzdCBuZXdS
ZXF1ZXN0KGluaXRpYWxSZXF1ZXN0KTsKICAgICByZXF1ZXN0RnJvbURlbGVnYXRlKG5ld1JlcXVl
c3QsIGlkZW50aWZpZXIsIGVycm9yKTsKIApAQCAtMzU4NywxNSArMzU4NywxMiBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpjb250aW51ZUxvYWRBZnRlck5ld1dpbmRvd1BvbGljeShjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlcwogICAgIG1haW5GcmFtZS0+bG9hZGVyKCkubG9hZFdpdGhOYXZpZ2F0
aW9uQWN0aW9uKHJlcXVlc3QsIFdURk1vdmUobmV3QWN0aW9uKSwgRnJhbWVMb2FkVHlwZTo6U3Rh
bmRhcmQsIGZvcm1TdGF0ZSwgYWxsb3dOYXZpZ2F0aW9uVG9JbnZhbGlkVVJMKTsKIH0KIAotdm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIHVuc2lnbmVkIGxvbmcmIGlkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBGcmFtZUxvYWRlcjo6cmVxdWVzdEZyb21EZWxlZ2F0ZShSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYg
ZXJyb3IpCiB7CiAgICAgQVNTRVJUKCFyZXF1ZXN0LmlzTnVsbCgpKTsKIAotICAgIGlkZW50aWZp
ZXIgPSAwOwotICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS5wYWdlKCkpIHsKLSAgICAgICAg
aWRlbnRpZmllciA9IHBhZ2UtPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOwot
ICAgICAgICBub3RpZmllcigpLmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KGlkZW50
aWZpZXIsIG1fZG9jdW1lbnRMb2FkZXIuZ2V0KCksIHJlcXVlc3QpOwotICAgIH0KKyAgICBpZGVu
dGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIG5vdGlm
aWVyKCkuYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoaWRlbnRpZmllciwgbV9kb2N1
bWVudExvYWRlci5nZXQoKSwgcmVxdWVzdCk7CiAKICAgICBSZXNvdXJjZVJlcXVlc3QgbmV3UmVx
dWVzdChyZXF1ZXN0KTsKICAgICBub3RpZmllcigpLmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KG1f
ZG9jdW1lbnRMb2FkZXIuZ2V0KCksIGlkZW50aWZpZXIsIG5ld1JlcXVlc3QsIFJlc291cmNlUmVz
cG9uc2UoKSwgbnVsbHB0cik7CkBAIC0zNjM0LDcgKzM2MzEsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
Ojpsb2FkZWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2Us
IFJlc291cgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIHJl
cXVlc3RGcm9tRGVsZWdhdGUobmV3UmVxdWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogCiAgICAg
UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSA9IHJlc291cmNlLnJlc3BvbnNlKCk7CkBAIC0zNjUx
LDcgKzM2NDgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjphcHBseVVzZXJBZ2VudElmTmVlZGVkKFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKICAgICB9CiB9CiAKLWJvb2wgRnJhbWVMb2FkZXI6OnNo
b3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYgY29udGVudCwg
Y29uc3QgVVJMJiB1cmwsIHVuc2lnbmVkIGxvbmcgcmVxdWVzdElkZW50aWZpZXIpCitib29sIEZy
YW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJp
bmcmIGNvbnRlbnQsIGNvbnN0IFVSTCYgdXJsLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVx
dWVzdElkZW50aWZpZXIpCiB7CiAgICAgRnJhbWUmIHRvcEZyYW1lID0gbV9mcmFtZS50cmVlKCku
dG9wKCk7CiAgICAgaWYgKCZtX2ZyYW1lID09ICZ0b3BGcmFtZSkKQEAgLTM2NzUsMTAgKzM2NzIs
MTAgQEAgYm9vbCBGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlv
bnMoY29uc3QgU3RyaW5nJiBjb250ZW50LCBjb24KICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNw
b3NpdGlvbjo6QWxsb3dBbGw6CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBjYXNlIFhGcmFt
ZU9wdGlvbnNEaXNwb3NpdGlvbjo6Q29uZmxpY3Q6Ci0gICAgICAgIG1fZnJhbWUuZG9jdW1lbnQo
KS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJy
b3IsICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3Rpbmcg
dmFsdWVzICgnIiArIGNvbnRlbnQgKyAiJykgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsg
dXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicuIEZhbGxpbmcgYmFjayB0
byAnREVOWScuIiwgcmVxdWVzdElkZW50aWZpZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50
KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVy
cm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5n
IHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiAr
IHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJhY2sg
dG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDoKLSAg
ICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNl
OjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVh
ZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNp
emVkVG9MZW5ndGgoKSArICInOiAnIiArIGNvbnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVk
IGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZp
ZXIpOworICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3Nh
Z2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiSW52YWxpZCAnWC1GcmFtZS1PcHRp
b25zJyBoZWFkZXIgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRl
ckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIic6ICciICsgY29udGVudCArICInIGlzIG5vdCBhIHJl
Y29nbml6ZWQgZGlyZWN0aXZlLiBUaGUgaGVhZGVyIHdpbGwgYmUgaWdub3JlZC4iLCByZXF1ZXN0
SWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGNhc2Ug
WEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb25lOgogICAgICAgICByZXR1cm4gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGY3NTI0MTBhODlmNTkyNzAxYzg0MWE0
MmQ0YWJlNDRhZDc4OTIzMTEuLmU3NDc1YTQyNDdlOTllNmM0Yjg3ODFhOTQzMjE3NWJlZmIyZjRi
NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0xMjcsNyArMTI3LDcgQEAg
cHVibGljOgogI2lmIEVOQUJMRShXRUJfQVJDSElWRSkgfHwgRU5BQkxFKE1IVE1MKQogICAgIFdF
QkNPUkVfRVhQT1JUIHZvaWQgbG9hZEFyY2hpdmUoUmVmPEFyY2hpdmU+JiYpOwogI2VuZGlmCi0g
ICAgdW5zaWduZWQgbG9uZyBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNl
UmVxdWVzdCYsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNv
bnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJl
ZlB0cjxTaGFyZWRCdWZmZXI+JiBkYXRhKTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGllbnRD
cmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVyTWFw
JiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVy
PiYgZGF0YSk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGNoYW5nZUxvY2F0aW9uKGNvbnN0
IFVSTCYsIGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBFdmVudCosIGNvbnN0IFJlZmVycmVyUG9saWN5
JiwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSwgc3RkOjpvcHRpb25hbDxOZXdGcmFtZU9w
ZW5lclBvbGljeT4gPSBzdGQ6Om51bGxvcHQsIGNvbnN0IEF0b21TdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlID0gbnVsbEF0b20oKSwgY29uc3QgU3lzdGVtUHJldmlld0luZm8mID0geyB9LCBzdGQ6
Om9wdGlvbmFsPFByaXZhdGVDbGlja01lYXN1cmVtZW50PiYmID0gc3RkOjpudWxsb3B0KTsKICAg
ICB2b2lkIGNoYW5nZUxvY2F0aW9uKEZyYW1lTG9hZFJlcXVlc3QmJiwgRXZlbnQqID0gbnVsbHB0
ciwgc3RkOjpvcHRpb25hbDxQcml2YXRlQ2xpY2tNZWFzdXJlbWVudD4mJiA9IHN0ZDo6bnVsbG9w
dCk7CkBAIC0yNzUsNyArMjc1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseVVzZXJBZ2Vu
dElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYpOwogCi0gICAgYm9vbCBzaG91bGRJbnRlcnJ1cHRM
b2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmLCBjb25zdCBVUkwmLCB1bnNpZ25lZCBs
b25nIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICBib29sIHNob3VsZEludGVycnVwdExvYWRGb3JY
RnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYsIGNvbnN0IFVSTCYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllcik7CiAKICAgICB2b2lkIGNvbXBsZXRlZCgpOwogICAgIGJvb2wgYWxsQW5jZXN0b3Jz
QXJlQ29tcGxldGUoKSBjb25zdDsgLy8gaW5jbHVkaW5nIHRoaXMKQEAgLTM4Niw3ICszODYsNyBA
QCBwcml2YXRlOgogCiAgICAgYm9vbCBzaG91bGRSZWxvYWQoY29uc3QgVVJMJiBjdXJyZW50VVJM
LCBjb25zdCBVUkwmIGRlc3RpbmF0aW9uVVJMKTsKIAotICAgIHZvaWQgcmVxdWVzdEZyb21EZWxl
Z2F0ZShSZXNvdXJjZVJlcXVlc3QmLCB1bnNpZ25lZCBsb25nJiBpZGVudGlmaWVyLCBSZXNvdXJj
ZUVycm9yJik7CisgICAgdm9pZCByZXF1ZXN0RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciYsIFJlc291cmNlRXJyb3ImKTsKIAogICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgZGV0YWNoQ2hpbGRyZW4oKTsKICAgICB2b2lkIGNsb3NlQW5kUmVtb3Zl
Q2hpbGQoRnJhbWUmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgK
aW5kZXggMDRhMTJmN2E5MzAxNWNjZjRlZTA3M2FlZTA0MDgyY2E4MTI2MDdkMC4uNGE3MDZjODdm
NThjOGIwODI0ZThjZWIzNjNjNjE0N2MyN2NkYzM1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJMaW5rSWNv
bi5oIgogI2luY2x1ZGUgIlBhZ2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVnaXN0cmFibGVE
b21haW4uaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDx3dGYvRXhwZWN0ZWQuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0
Zi9XYWxsVGltZS5oPgpAQCAtMTM4LDIzICsxMzksMjMgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hl
ZEZyb21QYXJlbnQzKCkgPSAwOwogCi0gICAgdmlydHVhbCB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGFzc2lnbklk
ZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsK
LSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRl
ciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVu
Z2UmKSA9IDA7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICB2
aXJ0dWFsIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNl
JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlv
blNwYWNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBQ
cm90ZWN0aW9uU3BhY2UmKSA9IDA7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
Ci0gICAgdmlydHVhbCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVy
dGllcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgPSAwOworICAg
IHZpcnR1YWwgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMo
RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpID0gMDsKICNlbmRpZgog
Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQg
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlz
cGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSA9IDA7CisgICAgdmlydHVhbCB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZUVycm9yJikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBpbnQgbGVuZ3RoKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygpID0gMDsKQEAgLTI5OCwxMyArMjk5
LDEzIEBAIHB1YmxpYzoKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBBbGxvdyBhbiBhY2Nl
c3NpYmlsaXR5IG9iamVjdCB0byByZXRyaWV2ZSBhIEZyYW1lIHBhcmVudCBpZiB0aGVyZSdzIG5v
IFBsYXRmb3JtV2lkZ2V0LgogICAgIHZpcnR1YWwgUmVtb3RlQVhPYmplY3RSZWYgYWNjZXNzaWJp
bGl0eVJlbW90ZU9iamVjdCgpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJM
UmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+
JiYpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgd2lsbENhY2hlUmVzcG9uc2UoRG9jdW1l
bnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2Uq
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIE5TRGljdGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSB7
IHJldHVybiBudWxscHRyOyB9CiAjZW5kaWYKIAogI2lmIFVTRShDRlVSTENPTk5FQ1RJT04pCiAg
ICAgLy8gRklYTUU6IFdpbmRvd3Mgc2hvdWxkIHVzZSB3aWxsQ2FjaGVSZXNwb25zZSAtIDxodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTcyNTc+LgotICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciog
ZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBz
aG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwg
dW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgPSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIGJv
b2wgc2hvdWxkQWx3YXlzVXNlUGx1Z2luRG9jdW1lbnQoY29uc3QgU3RyaW5nJiAvKm1pbWVUeXBl
Ki8pIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0
cmF0ZWd5LmNwcAppbmRleCA4YjU1ODFkYjRmMjY1OTMyNGE3YjdlY2VlYjcyNjQxM2JmYTQ5MWU0
Li4zYmMxMmViMGUxNzVjY2YzZjU5ZTQwMGQ5ZWM4YzAyMWNmNTI4MWQ0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAKQEAgLTQxLDE3ICs0MSwxNyBAQCB2b2lkIExv
YWRlclN0cmF0ZWd5Ojpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8U3VicmVz
b3VyY2VMb2FkZXIqPiYpCiB7CiB9CiAKLVJlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6
OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgLyogcmVzb3VyY2VM
b2FkSWRlbnRpZmllciAqLykKK1Jlc291cmNlUmVzcG9uc2UgTG9hZGVyU3RyYXRlZ3k6OnJlc3Bv
bnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIHJldHVybiB7IH07CiB9CiAKLU5ldHdvcmtMb2FkTWV0cmljcyBMb2FkZXJTdHJhdGVn
eTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyICovKQorTmV0d29ya0xvYWRNZXRyaWNzIExvYWRlclN0cmF0
ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4geyB9OwogfQogCi1WZWN0b3I8TmV0d29ya1Ry
YW5zYWN0aW9uSW5mb3JtYXRpb24+IExvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5m
b3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJjZUxv
YWRJZGVudGlmaWVyICovKQorVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBM
b2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCmluZGV4IGIwMThhZjA0ZDA1
Y2UzYWMzOGJiNTdkOGU1MGE3YjA2M2VlNTE3MzMuLmUyZWNkMWFmYzM1YmE2ZDMxMjM4OGM4Mjhl
YTRjZTFkZGMyM2FjZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJT
dHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5oCkBA
IC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiTG9hZFNjaGVkdWxpbmdNb2RlLmgiCiAjaW5jbHVk
ZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNl
TG9hZGVyT3B0aW9ucy5oIgogI2luY2x1ZGUgIlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LmgiCiAj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAgLTU4LDcgKzU5LDcgQEAgc3RydWN0IEZldGNoT3B0
aW9uczsKIGNsYXNzIFdFQkNPUkVfRVhQT1JUIExvYWRlclN0cmF0ZWd5IHsKIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNlKEZyYW1lJiwgQ2FjaGVkUmVzb3VyY2UmLCBSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChSZWZQdHI8U3VicmVzb3VyY2VMb2FkZXI+JiYpPiYmKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENsaWVudENyZWRlbnRp
YWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNv
dXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9hZGVy
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDbGll
bnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmLCBjb25zdCBIVFRQSGVhZGVy
TWFwJiwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4m
IGRhdGEpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoUGFnZSYpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChGcmFtZSYpID0gMDsK
IApAQCAtODgsMTQgKzg5LDE0IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUGVy
Zm9ybVNlY3VyaXR5Q2hlY2tzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFs
IGJvb2wgaGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCi0gICAgdmlydHVhbCBSZXNvdXJjZVJlc3BvbnNl
IHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcik7Ci0gICAgdmlydHVhbCBWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3Jt
YXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlm
aWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpOwotICAgIHZpcnR1YWwgTmV0d29y
a0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWlu
dDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdmlydHVhbCBSZXNvdXJjZVJlc3Bv
bnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKTsKKyAgICB2aXJ0dWFsIFZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlv
bj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIo
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2aXJ0dWFsIE5ldHdvcmtMb2FkTWV0cmlj
cyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcik7CiAKICAgICB2aXJ0dWFsIHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZChD
YWNoZWRSZXNvdXJjZSYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2sp
ID0gMDsKIAogICAgIC8vIFVzZWQgZm9yIHRlc3Rpbmcgb25seS4KLSAgICB2aXJ0dWFsIFZlY3Rv
cjx1aW50NjRfdD4gb25nb2luZ0xvYWRzKCkgY29uc3QgeyByZXR1cm4geyB9OyB9CisgICAgdmly
dHVhbCBWZWN0b3I8UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBvbmdvaW5nTG9hZHMoKSBjb25z
dCB7IHJldHVybiB7IH07IH0KIAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkxvYWRlclN0cmF0
ZWd5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggM2VjM2M1MThjNzg4
ZTVjYzFmNWYxODhlOGM3MTUzMWY5MWRiMDNjYi4uNzk4YTU0YjUwYmNjMTY1MmNjZjdhZTU5MmUx
YmM0Y2JkNjMzOWM4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2Fk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMjAw
LDcgKzIwMCw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYg
ZnJhbWUsIGNvbnN0IFVSTCYgcmVwb3J0VVJMLCBSZWY8Rm9yCiAKIHZvaWQgUGluZ0xvYWRlcjo6
c3RhcnRQaW5nTG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgSFRU
UEhlYWRlck1hcCYmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFNob3VsZEZvbGxvd1JlZGlyZWN0
cyBzaG91bGRGb2xsb3dSZWRpcmVjdHMsIENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24g
cG9saWN5Q2hlY2ssIFJlZmVycmVyUG9saWN5IHJlZmVycmVyUG9saWN5LCBzdGQ6Om9wdGlvbmFs
PFZpb2xhdGlvblJlcG9ydFR5cGU+IHZpb2xhdGlvblJlcG9ydFR5cGUpCiB7Ci0gICAgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyID0gZnJhbWUucGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1
ZUlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgLy8gRklYTUU6IFdoeSBhY3RpdmVEb2N1bWVudExvYWRl
cj8gSSB3b3VsZCBoYXZlIGV4cGVjdGVkIGRvY3VtZW50TG9hZGVyKCkuCiAgICAgLy8gSXQgc2Vl
bXMgbGlrZSB0aGUgUGluZ0xvYWRlciBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJy
ZW50CiAgICAgLy8gRG9jdW1lbnQgaW4gdGhlIEZyYW1lLCBidXQgdGhlIGFjdGl2ZURvY3VtZW50
TG9hZGVyIHdpbGwgYmUgYXNzb2NpYXRlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1Byb2dyZXNzVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NU
cmFja2VyLmNwcAppbmRleCAwZGNiNDc1NTZkMDQ4NzQ4Nzg2NTZlNDU5YzliYWM5YWY2NGRjZmJm
Li5hMjE1ZDZhOWI0MDIyYzllNzc1ODhlNWZiMDdhZmYwNDJjYzQ5YTFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcApAQCAtMTgzLDcgKzE4Myw3IEBAIHZvaWQg
UHJvZ3Jlc3NUcmFja2VyOjpmaW5hbFByb2dyZXNzQ29tcGxldGUoKQogICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6ZnJhbWVTdG9wcGVkTG9hZGluZygqZnJhbWUpOwogfQogCi12b2lkIFBy
b2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2Vy
OjppbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgTE9HKFByb2dyZXNzLCAi
UHJvZ3Jlc3MgaW5jcmVtZW50ZWQgKCVwKSAtIHZhbHVlICVmLCB0cmFja2VkIGZyYW1lcyAlZCwg
b3JpZ2luYXRpbmcgZnJhbWUgJXAiLCB0aGlzLCBtX3Byb2dyZXNzVmFsdWUsIG1fbnVtUHJvZ3Jl
c3NUcmFja2VkRnJhbWVzLCBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZS5nZXQoKSk7CiAKQEAg
LTIwNiw3ICsyMDYsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVtZW50UHJvZ3Jlc3Mo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZQogICAgIGl0ZW0tPmVzdGlt
YXRlZExlbmd0aCA9IGVzdGltYXRlZExlbmd0aDsKIH0KIAotdm9pZCBQcm9ncmVzc1RyYWNrZXI6
OmluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0
ZXNSZWNlaXZlZCkKK3ZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCkK
IHsKICAgICBQcm9ncmVzc0l0ZW0qIGl0ZW0gPSBtX3Byb2dyZXNzSXRlbXMuZ2V0KGlkZW50aWZp
ZXIpOwogCkBAIC0yNjYsNyArMjY2LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVu
dFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXMKICAgICBt
X2NsaWVudC0+ZGlkQ2hhbmdlRXN0aW1hdGVkUHJvZ3Jlc3MoKTsKIH0KIAotdm9pZCBQcm9ncmVz
c1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9p
ZCBQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBpdCA9IG1fcHJvZ3Jlc3NJdGVtcy5maW5kKGlk
ZW50aWZpZXIpOwogCkBAIC0yODUsNiArMjg1LDcgQEAgdm9pZCBQcm9ncmVzc1RyYWNrZXI6OmNv
bXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQogCiB1bnNpZ25lZCBsb25n
IFByb2dyZXNzVHJhY2tlcjo6Y3JlYXRlVW5pcXVlSWRlbnRpZmllcigpCiB7CisgICAgLy8gRklY
TUU6IFVzZSBhIHN0cm9uZ2x5IHR5cGVkIGlkZW50aWZpZXIgZm9yIHdlYnNvY2tldHMgYW5kIHJl
bW92ZSB0aGlzLgogICAgIHJldHVybiArK3NfdW5pcXVlSWRlbnRpZmllcjsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tlci5oCmluZGV4IDMxOWIwY2M4MWI5OTQ2MWQ4ZDVl
OGY1MTkyNWY0ZWE3MDRjMDVlZWUuLjkzYTY4YTk5ZGZhODdlNGFkNzE5M2I4OGVjMDg2NjIzZTZm
MDIyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmgKQEAgLTI1LDYg
KzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIuaCIKICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAj
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTU1LDkgKzU2LDkgQEAgcHVibGljOgogICAgIHZv
aWQgcHJvZ3Jlc3NTdGFydGVkKEZyYW1lJik7CiAgICAgdm9pZCBwcm9ncmVzc0NvbXBsZXRlZChG
cmFtZSYpOwogCi0gICAgdm9pZCBpbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGluY3JlbWVudFByb2dy
ZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7Ci0g
ICAgdm9pZCBjb21wbGV0ZVByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAg
dm9pZCBpbmNyZW1lbnRQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgdW5zaWduZWQgYnl0ZXNSZWNlaXZlZCk7CisgICAgdm9pZCBjb21wbGV0
ZVByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBsb25nIGxvbmcgdG90
YWxQYWdlQW5kUmVzb3VyY2VCeXRlc1RvTG9hZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxQYWdl
QW5kUmVzb3VyY2VCeXRlc1RvTG9hZDsgfQogICAgIGxvbmcgbG9uZyB0b3RhbEJ5dGVzUmVjZWl2
ZWQoKSBjb25zdCB7IHJldHVybiBtX3RvdGFsQnl0ZXNSZWNlaXZlZDsgfQpAQCAtNzQsNyArNzUs
NyBAQCBwcml2YXRlOgogCiAgICAgVW5pcXVlUmVmPFByb2dyZXNzVHJhY2tlckNsaWVudD4gbV9j
bGllbnQ7CiAgICAgUmVmUHRyPEZyYW1lPiBtX29yaWdpbmF0aW5nUHJvZ3Jlc3NGcmFtZTsKLSAg
ICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIHN0ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBt
X3Byb2dyZXNzSXRlbXM7CisgICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxQcm9ncmVzc0l0ZW0+PiBtX3Byb2dyZXNzSXRlbXM7CiAgICAgVGltZXIg
bV9wcm9ncmVzc0hlYXJ0YmVhdFRpbWVyOwogCiAgICAgbG9uZyBsb25nIG1fdG90YWxQYWdlQW5k
UmVzb3VyY2VCeXRlc1RvTG9hZCB7IDAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuY3BwCmluZGV4IDliNzZjMDU5MDJmM2M5ZjI2NGMwMDc0MjhlMzZi
OThiZWY3NDkzMmUuLjE0N2I0NWUwNjQzODEyMjdiMDUyMjA2NDQxODUyM2MwNzlmNjRkMTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcApAQCAt
NTYsNyArNTYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqIGxvYQogICAgIGRpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShsb2FkZXItPmlkZW50aWZpZXIoKSwgbG9hZGVyLT5kb2N1bWVu
dExvYWRlcigpLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWRO
b3RpZmllcjo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UmIGN1cnJlbnRXZWJDaGFsbGVuZ2UpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IEF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlJiBjdXJyZW50V2ViQ2hhbGxlbmdlKQogewogICAgIG1fZnJhbWUubG9hZGVy
KCkuY2xpZW50KCkuZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UobG9h
ZGVyLCBpZGVudGlmaWVyLCBjdXJyZW50V2ViQ2hhbGxlbmdlKTsKIH0KQEAgLTEwNyw3ICsxMDcs
NyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRGYWlsVG9Mb2FkKFJlc291cmNlTG9h
ZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlRQogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlci0+ZG9jdW1lbnRMb2FkZXIoKSwgbG9h
ZGVyLT5pZGVudGlmaWVyKCksIGVycm9yKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmll
cjo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVl
c3QpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFs
UmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGJvb2wg
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcgPSBmYWxzZTsKICAgICBpZiAoYXV0byogZnJhbWVM
b2FkZXIgPSBsb2FkZXIgPyBsb2FkZXItPmZyYW1lTG9hZGVyKCkgOiBudWxscHRyKQpAQCAtMTE5
LDcgKzExOSw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgbV9mcmFtZS5sb2FkZXIo
KS5jbGllbnQoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChpZGVudGlmaWVyLCBs
b2FkZXIsIHJlcXVlc3QpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNl
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNlKQogewogI2lm
IFVTRShRVUlDS19MT09LKQogICAgIC8vIEFsd2F5cyBhbGxvdyBRdWlja0xvb2stZ2VuZXJhdGVk
IFVSTHMgYmFzZWQgb24gdGhlIHByb3RvY29sIHNjaGVtZS4KQEAgLTE1MCw3ICsxNTAsNyBAQCB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVu
dExvYWRlciogbG9hZGVyLCB1bnNpZwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2ls
bFNlbmRSZXF1ZXN0KCZtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QsIHJlZGly
ZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNlKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3Rp
Zmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgciwg
UmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUg
RnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAg
ICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTU5LDcgKzE1OSw3IEBAIHZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNl
aXZlUmVzb3VyY2VSZXNwb25zZShtX2ZyYW1lLCBpZGVudGlmaWVyLCBsb2FkZXIsIHIsIHJlc291
cmNlTG9hZGVyKTsKIH0KIAotdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFM
ZW5ndGgpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVEYXRh
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNh
dXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1f
ZnJhbWUpOwpAQCAtMTY4LDcgKzE2OCw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRp
c3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSgmbV9mcmFtZSwgaWRlbnRp
ZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZW5jb2RlZERhdGFMZW5ndGgpOwogfQogCi12b2lkIFJl
c291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVy
KQordm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VM
b2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2Fk
ZXJDbGllbnQgbWF5IGNhdXNlIHRoZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZy
YW1lPiBwcm90ZWN0KG1fZnJhbWUpOwpAQCAtMTc3LDcgKzE3Nyw3IEBAIHZvaWQgUmVzb3VyY2VM
b2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9h
ZGVyLCB1bnNpCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGaW5pc2hMb2FkaW5n
KCZtX2ZyYW1lLCBsb2FkZXIsIGlkZW50aWZpZXIsIG5ldHdvcmtMb2FkTWV0cmljcywgcmVzb3Vy
Y2VMb2FkZXIpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZh
aWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVy
OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICAvLyBOb3RpZnlpbmcgdGhlIEZyYW1lTG9hZGVyQ2xpZW50IG1heSBjYXVzZSB0aGUg
ZnJhbWUgdG8gYmUgZGVzdHJveWVkLgogICAgIFJlZjxGcmFtZT4gcHJvdGVjdChtX2ZyYW1lKTsK
QEAgLTE4Niw3ICsxODYsNyBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERp
ZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbgogICAgIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmcoJm1fZnJhbWUsIGxvYWRlciwgaWRlbnRp
ZmllciwgZXJyb3IpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpzZW5kUmVtYWlu
aW5nRGVsZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMoRG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIs
IGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2Rl
ZERhdGFMZW5ndGgsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIC8vIElmIHRo
ZSByZXF1ZXN0IGlzIG51bGwsIHdpbGxTZW5kUmVxdWVzdCBjYW5jZWxsZWQgdGhlIGxvYWQuIFdl
IHNob3VsZAogICAgIC8vIG9ubHkgZGlzcGF0Y2ggZGlkRmFpbExvYWRpbmcgaW4gdGhpcyBjYXNl
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAppbmRleCAx
Y2M0NjMxOTJkNTIzMjE1ZmM4ZmUyZmFiYWMxODg3MmEyOWRmMTFiLi40ZGJkNGNjNDlkNjUwNDIx
MTg0ZTYwYzI0ZGQ3MTRkY2JlMGJkYjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkTm90aWZpZXIuaApAQCAtMjksNiArMjksNyBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgPG9wdGlvbmFs
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogCkBAIC01MCw3ICs1MSw3IEBAIHB1Ymxp
YzoKICAgICBleHBsaWNpdCBSZXNvdXJjZUxvYWROb3RpZmllcihGcmFtZSYpOwogCiAgICAgdm9p
ZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXIqLCBjb25z
dCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIq
LCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOworICAgIHZvaWQgZGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpOwogCiAgICAgdm9pZCB3aWxs
U2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKQEAgLTU4LDE4
ICs1OSwxOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRGaW5pc2hMb2FkKFJlc291cmNlTG9hZGVy
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJik7CiAgICAgdm9pZCBkaWRGYWlsVG9Mb2FkKFJl
c291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBhc3NpZ25J
ZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7Ci0gICAgdm9pZCBkaXNwYXRjaFdp
bGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25z
ZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJl
c3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXIqID0gbnVsbHB0cik7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVEYXRhKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWRE
YXRhTGVuZ3RoKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNz
JiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImKTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
KTsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciog
PSBudWxscHRyKTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2Fk
ZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOworICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCi0gICAgdm9pZCBzZW5kUmVtYWluaW5nRGVs
ZWdhdGVNZXNzYWdlcyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVp
bnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2Vz
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdWludDhfdCogZGF0YSwg
aW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJv
ciYpOwogCiBwcml2YXRlOgogICAgIEZyYW1lJiBtX2ZyYW1lOwotICAgIHN0ZDo6b3B0aW9uYWw8
dW5zaWduZWQgbG9uZz4gbV9pbml0aWFsUmVxdWVzdElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRp
b25hbDxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1faW5pdGlhbFJlcXVlc3RJZGVudGlmaWVy
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5jcHAKaW5kZXggMzBjNjU0ODY1ZWVmZjg5MDIyYjgwNTllYTZmNjA3ZDNiOTA2
MDVlMy4uMGEwZDQzZWQ1NzUwNGNkODEwNWFjODZlMGYwMzVmNjgzY2QzMjkyOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC02Nyw3ICs2Nyw3IEBACiAjdW5k
ZWYgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0cKICNkZWZpbmUgUEFHRV9JRCAoKGZyYW1lKCkg
PyBmcmFtZSgpLT5wYWdlSUQoKS52YWx1ZV9vcihQYWdlSWRlbnRpZmllcigpKSA6IFBhZ2VJZGVu
dGlmaWVyKCkpLnRvVUludDY0KCkpCiAjZGVmaW5lIEZSQU1FX0lEICgoZnJhbWUoKSA/IGZyYW1l
KCktPmZyYW1lSUQoKS52YWx1ZV9vcihGcmFtZUlkZW50aWZpZXIoKSkgOiBGcmFtZUlkZW50aWZp
ZXIoKSkudG9VSW50NjQoKSkKLSNkZWZpbmUgUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10
LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlEPSVsdV0gUmVzb3Vy
Y2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIoKSwg
aWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxF
QVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICJdIFJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVf
SUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFfQVJHU19f
KQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIFJlc291
cmNlTG9hZGVyOjpyZWxlYXNlUmVzb3VyY2VzKCkKIAogICAgIGZpbmlzaE5ldHdvcmtMb2FkKCk7
CiAKLSAgICBtX2lkZW50aWZpZXIgPSAwOworICAgIG1faWRlbnRpZmllciA9IHsgfTsKIAogICAg
IG1fcmVzb3VyY2VEYXRhID0gbnVsbHB0cjsKICAgICBtX2RlZmVycmVkUmVxdWVzdCA9IFJlc291
cmNlUmVxdWVzdCgpOwpAQCAtMzczLDcgKzM3Myw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkZXI6Ondp
bGxTZW5kUmVxdWVzdEludGVybmFsKFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFJl
CiAgICAgLy8gV2UgbmVlZCBhIHJlc291cmNlIGlkZW50aWZpZXIgZm9yIGFsbCByZXF1ZXN0cywg
ZXZlbiBpZiBGcmFtZUxvYWRlciBpcyBuZXZlciBnb2luZyB0byBzZWUgaXQgKHN1Y2ggYXMgd2l0
aCBDT1JTIHByZWZsaWdodCByZXF1ZXN0cykuCiAgICAgYm9vbCBjcmVhdGVkUmVzb3VyY2VJZGVu
dGlmaWVyID0gZmFsc2U7CiAgICAgaWYgKCFtX2lkZW50aWZpZXIpIHsKLSAgICAgICAgbV9pZGVu
dGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZp
ZXIoKTsKKyAgICAgICAgbV9pZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpn
ZW5lcmF0ZSgpOwogICAgICAgICBjcmVhdGVkUmVzb3VyY2VJZGVudGlmaWVyID0gdHJ1ZTsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgKaW5kZXggN2E0YTBkN2Q3
ZjQ2NDUzNmMyYzY4ODVhZjgzNjlkZjA2OTc1YmI5NS4uNGZkMmJmMGJiYjNiMWJkMjE1NDVkYjUy
YzJlMWNhNjRlZTQyYjkxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmgK
QEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlQ2xpZW50LmgiCiAj
aW5jbHVkZSAiUmVzb3VyY2VMb2FkVGltaW5nLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVk
ZSAiUmVzb3VyY2VMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgpA
QCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldERlZmVyc0xvYWRp
bmcoYm9vbCk7CiAgICAgYm9vbCBkZWZlcnNMb2FkaW5nKCkgY29uc3QgeyByZXR1cm4gbV9kZWZl
cnNMb2FkaW5nOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJl
dHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgYm9vbCB3YXNBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZUJsb2NrZWQoKSBjb25zdCB7IHJldHVybiBtX3dhc0F1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlQmxvY2tlZDsgfQogCkBAIC0yMjgsNyArMjI5LDcgQEAgcHJpdmF0ZToK
ICAgICBSZXNvdXJjZVJlcXVlc3QgbV9vcmlnaW5hbFJlcXVlc3Q7IC8vIEJlZm9yZSByZWRpcmVj
dHMuCiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gbV9yZXNvdXJjZURhdGE7CiAgICAgCi0gICAg
dW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIgeyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIG1faWRlbnRpZmllcjsKIAogICAgIGJvb2wgbV9yZWFjaGVkVGVybWluYWxTdGF0ZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX25vdGlmaWVkTG9hZENvbXBsZXRlIHsgZmFsc2UgfTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44MjdlMTYwODliNWY2NWM2MmI1ZDZkMWZiMGYzNDc2M2U2N2Y2MmI3Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1
ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgUmVzb3VyY2VMb2FkZXI7CisKK3VzaW5nIFJlc291cmNlTG9hZGVySWRlbnRpZmllciA9IE9i
amVjdElkZW50aWZpZXI8UmVzb3VyY2VMb2FkZXI+OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAppbmRleCAxYWQ4
NDBiY2RmN2UxZjY3ZDIwMjhlZTBjZTcxOGRjMjFjZGI0MGUxLi42M2FhZDNjYTczZWU5MDJlZGJi
YzRlMGU2MWNmYWYwODU0ZjQwNDAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
U3VicmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHAKQEAgLTc1LDggKzc1LDggQEAKICNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FE
RVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFVOVVNFRF9WQVJJQUJMRSh0aGlzKQogI2RlZmluZSBT
VUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgVU5VU0VEX1ZBUklB
QkxFKHRoaXMpCiAjZWxzZQotI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhm
bXQsIC4uLikgUkVMRUFTRV9MT0coUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBS
SXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0l
bHVdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZy
YW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKSwgIyNfX1ZBX0FSR1NfXykKLSNkZWZpbmUgU1VCUkVT
T1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9S
KFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JWx1XSBTdWJyZXNvdXJjZUxvYWRl
cjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlm
aWVyKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0Vf
TE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhSZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9
JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJj
ZUlEPSUiIFBSSXU2NCAiXSBTdWJyZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQs
IEZSQU1FX0lELCBmcmFtZUxvYWRlcigpLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSwgIyNfX1ZB
X0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0dfRVJST1IoZm10
LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJRD0l
IiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNl
SUQ9JSIgUFJJdTY0ICJdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwg
RlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19fVkFf
QVJHU19fKQogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE3Miw3ICsxNzIsNyBA
QCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjppbml0KFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3Qs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYgogICAgICAgICB9CiAgICAgICAgIEFTU0VSVCghcmVh
Y2hlZFRlcm1pbmFsU3RhdGUoKSk7CiAgICAgICAgIG1fc3RhdGUgPSBJbml0aWFsaXplZDsKLSAg
ICAgICAgbV9kb2N1bWVudExvYWRlci0+YWRkU3VicmVzb3VyY2VMb2FkZXIodGhpcyk7CisgICAg
ICAgIG1fZG9jdW1lbnRMb2FkZXItPmFkZFN1YnJlc291cmNlTG9hZGVyKCp0aGlzKTsKICAgICAg
ICAgbV9vcmlnaW4gPSBtX3Jlc291cmNlLT5vcmlnaW4oKTsKICAgICAgICAgY29tcGxldGlvbkhh
bmRsZXIodHJ1ZSk7CiAgICAgfSk7CkBAIC0yMTAsNyArMjEwLDcgQEAgdm9pZCBTdWJyZXNvdXJj
ZUxvYWRlcjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVx
dWVzdCwgY28KICAgICAgICAgfQogCiAgICAgICAgIFJlc291cmNlTG9hZGVyOjp3aWxsU2VuZFJl
cXVlc3RJbnRlcm5hbChXVEZNb3ZlKG5ld1JlcXVlc3QpLCByZWRpcmVjdFJlc3BvbnNlLCBbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IFdURk1vdmUocHJvdGVjdGVkVGhpcyksIGNvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlciksIHJlZGlyZWN0UmVzcG9uc2VdIChSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0KSBtdXRhYmxlIHsKLSAgICAgICAgICAgIHRyYWNlUG9pbnQo
U3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVudGlmaWVyKCksIFBBR0VfSUQsIEZSQU1FX0lE
KTsKKyAgICAgICAgICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkV2lsbFN0YXJ0LCBpZGVu
dGlmaWVyKCkudG9VSW50NjQoKSwgUEFHRV9JRCwgRlJBTUVfSUQpOwogCiAgICAgICAgICAgICBp
ZiAocmVhY2hlZFRlcm1pbmFsU3RhdGUoKSkgewogICAgICAgICAgICAgICAgIFNVQlJFU09VUkNF
TE9BREVSX1JFTEVBU0VfTE9HKCJ3aWxsU2VuZFJlcXVlc3RJbnRlcm5hbDogcmVhY2hlZCB0ZXJt
aW5hbCBzdGF0ZTsgY2FsbGluZyBjb21wbGV0aW9uIGhhbmRsZXIiKTsKQEAgLTQ5MSw3ICs0OTEs
NyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIENvbQogICAgICAgICAgICAgLy8gU2luY2UgYSBzdWJy
ZXNvdXJjZSBsb2FkZXIgZG9lcyBub3QgbG9hZCBtdWx0aXBhcnQgc2VjdGlvbnMgcHJvZ3Jlc3Np
dmVseSwgZGF0YSB3YXMgZGVsaXZlcmVkIHRvIHRoZSBsb2FkZXIgYWxsIGF0IG9uY2UuCiAgICAg
ICAgICAgICAvLyBBZnRlciB0aGUgZmlyc3QgbXVsdGlwYXJ0IHNlY3Rpb24gaXMgY29tcGxldGUs
IHNpZ25hbCB0byBkZWxlZ2F0ZXMgdGhhdCB0aGlzIGxvYWQgaXMgImZpbmlzaGVkIgogICAgICAg
ICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICAgICAgICAgIG1fZG9j
dW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydCh0aGlz
KTsKKyAgICAgICAgICAgIG1fZG9jdW1lbnRMb2FkZXItPnN1YnJlc291cmNlTG9hZGVyRmluaXNo
ZWRMb2FkaW5nT25lUGFydCgqdGhpcyk7CiAgICAgICAgICAgICBkaWRGaW5pc2hMb2FkaW5nT25l
UGFydChlbXB0eU1ldHJpY3MpOwogICAgICAgICB9CiAKQEAgLTc0NSw3ICs3NDUsNyBAQCB2b2lk
IFN1YnJlc291cmNlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKGNvbnN0IE5ldHdvcmtMb2FkTWV0
cmljcyYgbmV0d29ya0xvYWRNZQogICAgIH0KIAogICAgIGlmIChtX3Jlc291cmNlLT50eXBlKCkg
IT0gQ2FjaGVkUmVzb3VyY2U6OlR5cGU6Ok1haW5SZXNvdXJjZSkKLSAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKSk7CisgICAgICAgIHRyYWNlUG9p
bnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkudG9VSW50NjQoKSk7CiAKICAg
ICBtX3N0YXRlID0gRmluaXNoaW5nOwogICAgIG1fcmVzb3VyY2UtPmZpbmlzaExvYWRpbmcocmVz
b3VyY2VEYXRhKCksIG5ldHdvcmtMb2FkTWV0cmljcyk7CkBAIC03OTEsNyArNzkxLDcgQEAgdm9p
ZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikK
ICAgICBtX3N0YXRlID0gRmluaXNoaW5nOwogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUoKSAh
PSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBvaW50
KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAogICAg
IGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZVRvUmV2YWxpZGF0ZSgpKQogICAgICAgICBNZW1vcnlD
YWNoZTo6c2luZ2xldG9uKCkucmV2YWxpZGF0aW9uRmFpbGVkKCptX3Jlc291cmNlKTsKQEAgLTg0
NCw3ICs4NDQsNyBAQCB2b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRDYW5jZWwoY29uc3QgUmVz
b3VyY2VFcnJvciYpCiAgICAgQVNTRVJUKG1fcmVzb3VyY2UpOwogCiAgICAgaWYgKG1fcmVzb3Vy
Y2UtPnR5cGUoKSAhPSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAg
ICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAg
ICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2
NCgpKTsKIAogICAgIG1fcmVzb3VyY2UtPmNhbmNlbExvYWQoKTsKICAgICBub3RpZnlEb25lKExv
YWRDb21wbGV0aW9uVHlwZTo6Q2FuY2VsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhy
ZWFkYWJsZUxvYWRlckNsaWVudC5oCmluZGV4IDYyNWJiN2ViMmU3YjUwNzFjMWQxMmMwNzUyMzZl
MWZiZTZiZWViYTcuLjg0ZDc5YjBjOTlkZjEwZDk5MzgwYjg0ODMxNzM3MWJjMWU4NTczYmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQuaApAQCAt
MzAsMjcgKzMwLDI5IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIFJlc291
cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKLSAgICBjbGFzcyBSZXNvdXJj
ZVRpbWluZzsKLQotICAgIGNsYXNzIFRocmVhZGFibGVMb2FkZXJDbGllbnQgewotICAgICAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KTsgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7Ci0gICAgcHVibGljOgotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkU2VuZERh
dGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0ZXNTZW50Ki8sIHVuc2lnbmVkIGxvbmcgbG9uZyAv
KnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0KLQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgLyppZGVudGlmaWVyKi8sIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSB7IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqLCBpbnQgLypkYXRhTGVuZ3RoKi8pIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIC8qaWRlbnRpZmllciovKSB7IH0KLSAgICAg
ICAgdmlydHVhbCB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQotICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9
Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBub3RpZnlJc0RvbmUoYm9vbCkgeyBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsgfQotCi0gICAgcHJvdGVjdGVkOgotICAgICAgICBUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KCkgPSBkZWZhdWx0OwotICAgICAgICB2aXJ0dWFsIH5UaHJlYWRhYmxlTG9hZGVyQ2xpZW50
KCkgPSBkZWZhdWx0OwotICAgIH07CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKK2NsYXNzIFJlc291cmNlVGltaW5nOworCitjbGFzcyBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50IHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lk
IGRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyAvKmJ5dGVzU2VudCovLCB1bnNpZ25lZCBs
b25nIGxvbmcgLyp0b3RhbEJ5dGVzVG9CZVNlbnQqLykgeyB9CisKKyAgICB2aXJ0dWFsIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiwgaW50IC8qZGF0YUxlbmd0aCovKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIHsgfQorICAgIHZpcnR1YWwgdm9p
ZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlk
RmluaXNoVGltaW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lk
IG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9CisKK3Byb3RlY3Rl
ZDoKKyAgICBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50KCkgPSBkZWZhdWx0OworICAgIHZpcnR1YWwg
flRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1bHQ7Cit9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlci5oCmluZGV4IDhlZmUzOWNmN2I4NWRkOWRkNGY4YjQwOGI0ZWJjNDkx
MDE5MDJhYTQuLjQyYWU2NDkwOWE1ZTBmZTQ0YzZhNWUwMDYwZDU4Yzk2NGVjNTYwNTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3Jh
cHBlci5oCkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fY2xpZW50LT5k
aWRTZW5kRGF0YShieXRlc1NlbnQsIHRvdGFsQnl0ZXNUb0JlU2VudCk7CiAgICAgfQogCi0gICAg
dm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBt
X2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNlKGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKQEAgLTcy
LDcgKzcyLDcgQEAgcHVibGljOgogICAgICAgICAgICAgbV9jbGllbnQtPmRpZFJlY2VpdmVEYXRh
KGRhdGEsIGRhdGFMZW5ndGgpOwogICAgIH0KIAotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgbV9kb25lID0g
dHJ1ZTsKICAgICAgICAgaWYgKG1fY2xpZW50KQpAQCAtOTIsNyArOTIsNyBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX2NsaWVudC0+ZGlkRmFpbChlcnJvcik7CiAgICAgfQogCi0gICAgdm9pZCBk
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DYW5jZWxsYXRpb24odW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKKyAgICB2b2lkIGRpZFJlY2Vp
dmVBdXRoZW50aWNhdGlvbkNhbmNlbGxhdGlvbihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiAgICAgewogICAgICAg
ICBpZiAobV9jbGllbnQpCiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZVJlc3BvbnNl
KGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3Jr
ZXJUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCA0NThiNjg5Yjc0Yjk4NDU0MzJkYjRiMDVkNTVj
ODZlOGIwZDJiOGIwLi45MzE2MWM5Y2M1OTg0MjQ1NjUzNTAzYmVkNTYxZGM5ZWMxZGM3NmJkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuY3Bw
CkBAIC0xMTMsNyArMTEzLDcgQEAgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJy
aWRnZTo6TWFpblRocmVhZEJyaWRnZShUaHJlYWRhYmxlTG9hZGVyQ2xpZW4KICAgICA6IG1fd29y
a2VyQ2xpZW50V3JhcHBlcigmd29ya2VyQ2xpZW50V3JhcHBlcikKICAgICAsIG1fbG9hZGVyUHJv
eHkobG9hZGVyUHJveHkpCiAgICAgLCBtX3Rhc2tNb2RlKHRhc2tNb2RlLmlzb2xhdGVkQ29weSgp
KQotICAgICwgbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllcihnbG9iYWxTY29wZS5jcmVhdGVVbmlx
dWVJZGVudGlmaWVyKCkpCisgICAgLCBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyIHsgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgpIH0KIHsKICAgICBhdXRvKiBzZWN1cml0eU9y
aWdpbiA9IGdsb2JhbFNjb3BlLnNlY3VyaXR5T3JpZ2luKCk7CiAgICAgYXV0byogY29udGVudFNl
Y3VyaXR5UG9saWN5ID0gZ2xvYmFsU2NvcGUuY29udGVudFNlY3VyaXR5UG9saWN5KCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJp
ZGdlOjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgYnkKICAgICB9LCBtX3Rhc2tNb2Rl
KTsKIH0KIAotdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpk
aWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRo
cmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBtX2xv
YWRlclByb3h5LnBvc3RUYXNrRm9yTW9kZVRvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUoW3By
b3RlY3RlZFdvcmtlckNsaWVudFdyYXBwZXIgPSBtYWtlUmVmKCptX3dvcmtlckNsaWVudFdyYXBw
ZXIpLCB3b3JrZXJSZXF1ZXN0SWRlbnRpZmllciA9IG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIs
IGlkZW50aWZpZXIsIHJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmNyb3NzVGhyZWFkRGF0YSgpXSAo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCkgbXV0YWJsZSB7CiAgICAgICAgIEFTU0VS
VChjb250ZXh0LmlzV29ya2VyR2xvYmFsU2NvcGUoKSB8fCBjb250ZXh0LmlzV29ya2xldEdsb2Jh
bFNjb3BlKCkpOwpAQCAtMjQyLDcgKzI0Miw3IEBAIHZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRl
cjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCogZGF0CiAg
ICAgfSwgbV90YXNrTW9kZSk7CiB9CiAKLXZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFp
blRocmVhZEJyaWRnZTo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
Cit2b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6OmRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9s
b2FkaW5nRmluaXNoZWQgPSB0cnVlOwogICAgIG1fbG9hZGVyUHJveHkucG9zdFRhc2tGb3JNb2Rl
VG9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZShbcHJvdGVjdGVkV29ya2VyQ2xpZW50V3JhcHBl
ciA9IG1ha2VSZWYoKm1fd29ya2VyQ2xpZW50V3JhcHBlciksIHdvcmtlclJlcXVlc3RJZGVudGlm
aWVyID0gbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmllciwgbmV0d29ya0xvYWRNZXRyaWNzID0gbV9u
ZXR3b3JrTG9hZE1ldHJpY3MuaXNvbGF0ZWRDb3B5KCksIGlkZW50aWZpZXJdIChTY3JpcHRFeGVj
dXRpb25Db250ZXh0JiBjb250ZXh0KSBtdXRhYmxlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IDU3NjI2MGVhN2Y5M2VmZjIzYjRiNDdk
MWVhOGUwOTBjY2Q1YjQ0NWYuLjcyM2I0NTZlYzhlOWUzMDZmYzE4Y2M4ZjM2ZGU2ZGNkOGFlMzA0
NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIu
aApAQCAtMzEsNiArMzEsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJOZXR3b3JrTG9h
ZE1ldHJpY3MuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCIKICNpbmNs
dWRlICJUaHJlYWRhYmxlTG9hZGVyLmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVu
dC5oIgogI2luY2x1ZGUgIlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyLmgiCkBAIC0zOCwx
MDIgKzM5LDEwMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBDb250ZW50
U2VjdXJpdHlQb2xpY3k7Ci0gICAgY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOwotICAg
IGNsYXNzIFJlc291cmNlRXJyb3I7Ci0gICAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwotICAgIGNs
YXNzIFNlY3VyaXR5T3JpZ2luOwotICAgIGNsYXNzIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3Bl
OwotICAgIGNsYXNzIFdvcmtlckxvYWRlclByb3h5OwotCi0gICAgY2xhc3MgV29ya2VyVGhyZWFk
YWJsZUxvYWRlciA6IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBw
dWJsaWMgVGhyZWFkYWJsZUxvYWRlciB7Ci0gICAgICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVE
OworY2xhc3MgQ29udGVudFNlY3VyaXR5UG9saWN5OworY2xhc3MgRG9jdW1lbnRUaHJlYWRhYmxl
TG9hZGVyOworY2xhc3MgUmVzb3VyY2VFcnJvcjsKK2NsYXNzIFJlc291cmNlUmVxdWVzdDsKK2Ns
YXNzIFNlY3VyaXR5T3JpZ2luOworY2xhc3MgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Citj
bGFzcyBXb3JrZXJMb2FkZXJQcm94eTsKKworY2xhc3MgV29ya2VyVGhyZWFkYWJsZUxvYWRlciA6
IHB1YmxpYyBSZWZDb3VudGVkPFdvcmtlclRocmVhZGFibGVMb2FkZXI+LCBwdWJsaWMgVGhyZWFk
YWJsZUxvYWRlciB7CisgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CitwdWJsaWM6CisgICAg
c3RhdGljIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXb3JrZXJPcldvcmtsZXRHbG9i
YWxTY29wZSYsIFJlc291cmNlUmVxdWVzdCYmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmKTsKKyAgICBzdGF0aWMgUmVmPFdvcmtlclRocmVh
ZGFibGVMb2FkZXI+IGNyZWF0ZShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgV29ya2VyT3JX
b3JrbGV0R2xvYmFsU2NvcGUsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmIGNsaWVudCwgY29uc3Qg
U3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3QgVGhyZWFk
YWJsZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpCisgICAg
eworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyKFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBjbGllbnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJlcXVl
c3QpLCBvcHRpb25zLCByZWZlcnJlcikpOworICAgIH0KKworICAgIH5Xb3JrZXJUaHJlYWRhYmxl
TG9hZGVyKCk7CisKKyAgICB2b2lkIGNhbmNlbCgpIG92ZXJyaWRlOworCisgICAgYm9vbCBkb25l
KCkgY29uc3QgeyByZXR1cm4gbV93b3JrZXJDbGllbnRXcmFwcGVyLT5kb25lKCk7IH0KKworICAg
IHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKTsKKworICAgIHVzaW5nIFJlZkNvdW50ZWQ8
V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFdvcmtl
clRocmVhZGFibGVMb2FkZXI+OjpkZXJlZjsKKworcHJvdGVjdGVkOgorICAgIHZvaWQgcmVmVGhy
ZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0KKyAgICB2b2lkIGRlcmVmVGhyZWFk
YWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgZGVyZWYoKTsgfQorCitwcml2YXRlOgorICAgIC8vIENy
ZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNvbW11bmljYXRp
b24gYmV0d2VlbgorICAgIC8vIHRoZSBtYWluIHRocmVhZCBhbmQgdGhlIHdvcmtlciBjb250ZXh0
J3MgdGhyZWFkIHdoZXJlIFdvcmtlclRocmVhZGFibGVMb2FkZXIgcnVucy4KKyAgICAvLworICAg
IC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGltZXMgb2YgaXRlbXMgdXNlZCBpbiBj
YWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKKyAgICAvLworICAgIC8vIGFsbCBjYXNl
cy4gQWxsIHRhc2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgY29udGV4dCdzIHRocmVhZCBhcmUg
b2sgYmVjYXVzZQorICAgIC8vICAgIHRoZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFp
blRocmVhZERlc3Ryb3kiLCBzbyBNYWluVGhyZWFkQnJpZGdlIGlzCisgICAgLy8gICAgYXJvdW5k
IGZvciBhbGwgdGFza3MgdGhhdCB1c2UgaXQgb24gdGhlIG1haW4gdGhyZWFkLgorICAgIC8vCisg
ICAgLy8gY2FzZSAxLiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KKyAgICAvLyAgICBJbiB0
aGlzIGNhc2UsIG5vIG1vcmUgdGFza3MgYXJlIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0
J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIKKyAgICAvLyAgICBjb250ZXh0J3MgdGhyZWFkIC0tIFdv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlUHJveHkgaW1wbGVtZW50YXRpb24gZW5mb3JjZXMgdGhp
cy4KKyAgICAvLworICAgIC8vIGNhc2UgMi4geGhyIGdldHMgYWJvcnRlZCBhbmQgdGhlIHdvcmtl
ciBjb250ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgorICAgIC8vICAgIFRoZSBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50V3JhcHBlciBoYXMgdGhlIHVuZGVybHlpbmcgY2xpZW50IGNsZWFyZWQsIHNvIG5v
IG1vcmUgY2FsbHMKKyAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiBBbGwgdGFza3MgcG9zdGVkIGZy
b20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlciBjb250ZXh0J3MKKyAg
ICAvLyAgICB0aHJlYWQgY29udGFpbiB0aGUgUmVmUHRyPFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyPiBvYmplY3QsIHNvIHRoZQorICAgIC8vICAgIFRocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0YXNrcyBhcmUgZXhlY3V0ZWQuCisg
ICAgY2xhc3MgTWFpblRocmVhZEJyaWRnZSA6IHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHkoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZVJlcXVlc3QmJiwgVGhy
ZWFkYWJsZUxvYWRlckNsaWVudCYsIGNvbnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJik7Ci0g
ICAgICAgIHN0YXRpYyBSZWY8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4gY3JlYXRlKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSwgVGhyZWFkYWJs
ZUxvYWRlckNsaWVudCYgY2xpZW50LCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJl
cXVlc3QmJiByZXF1ZXN0LCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucywg
Y29uc3QgU3RyaW5nJiByZWZlcnJlcikKLSAgICAgICAgewotICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgV29ya2VyVGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxT
Y29wZSwgY2xpZW50LCB0YXNrTW9kZSwgV1RGTW92ZShyZXF1ZXN0KSwgb3B0aW9ucywgcmVmZXJy
ZXIpKTsKLSAgICAgICAgfQotCi0gICAgICAgIH5Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyKCk7Ci0K
LSAgICAgICAgdm9pZCBjYW5jZWwoKSBvdmVycmlkZTsKLQotICAgICAgICBib29sIGRvbmUoKSBj
b25zdCB7IHJldHVybiBtX3dvcmtlckNsaWVudFdyYXBwZXItPmRvbmUoKTsgfQorICAgICAgICAv
LyBBbGwgZXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAgICAgICBN
YWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29ya2VyTG9h
ZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29u
c3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5nUmVmZXJy
ZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7CisgICAgICAgIHZvaWQgY2FuY2VsKCk7
CisgICAgICAgIHZvaWQgZGVzdHJveSgpOworICAgICAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKTsK
IAotICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9uZSk7CisgICAgcHJpdmF0ZToK
KyAgICAgICAgLy8gRXhlY3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgorICAg
ICAgICB2b2lkIGNsZWFyQ2xpZW50V3JhcHBlcigpOworCisgICAgICAgIC8vIEFsbCBleGVjdXRl
ZCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQg
bG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2Vu
dCkgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgICAg
ICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBpbnQgZGF0YUxlbmd0aCkgb3Zl
cnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJv
ciYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIGRpZEZpbmlzaFRpbWluZyhjb25zdCBSZXNvdXJj
ZVRpbWluZyYpIG92ZXJyaWRlOworICAgICAgICB2b2lkIG5vdGlmeUlzRG9uZShib29sIGlzRG9u
ZSkgZmluYWw7CisKKyAgICAgICAgLy8gT25seSB0byBiZSB1c2VkIG9uIHRoZSBtYWluIHRocmVh
ZC4KKyAgICAgICAgUmVmUHRyPERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcj4gbV9tYWluVGhyZWFk
TG9hZGVyOworICAgICAgICBib29sIG1fbG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKKworICAg
ICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlciBpcyB0byBiZSB1c2VkIG9uIHRo
ZSB3b3JrZXIgY29udGV4dCB0aHJlYWQuCisgICAgICAgIC8vIFRoZSByZWYgY291bnRpbmcgaXMg
ZG9uZSBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNs
aWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKKworICAgICAgICAvLyBNYXkgYmUg
dXNlZCBvbiBlaXRoZXIgdGhyZWFkLgorICAgICAgICBXb3JrZXJMb2FkZXJQcm94eSYgbV9sb2Fk
ZXJQcm94eTsKKworICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICAg
ICAgU3RyaW5nIG1fdGFza01vZGU7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBt
X3dvcmtlclJlcXVlc3RJZGVudGlmaWVyOworICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgbV9u
ZXR3b3JrTG9hZE1ldHJpY3M7CisgICAgfTsKIAotICAgICAgICB1c2luZyBSZWZDb3VudGVkPFdv
cmtlclRocmVhZGFibGVMb2FkZXI+OjpyZWY7Ci0gICAgICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29y
a2VyVGhyZWFkYWJsZUxvYWRlcj46OmRlcmVmOworICAgIFdvcmtlclRocmVhZGFibGVMb2FkZXIo
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29u
c3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFRocmVhZGFibGVM
b2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7CiAKLSAgICBwcm90ZWN0ZWQ6
Ci0gICAgICAgIHZvaWQgcmVmVGhyZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgcmVmKCk7IH0K
LSAgICAgICAgdm9pZCBkZXJlZlRocmVhZGFibGVMb2FkZXIoKSBvdmVycmlkZSB7IGRlcmVmKCk7
IH0KKyAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5hbDsKIAotICAgIHByaXZhdGU6Ci0gICAg
ICAgIC8vIENyZWF0ZXMgYSBsb2FkZXIgb24gdGhlIG1haW4gdGhyZWFkIGFuZCBicmlkZ2VzIGNv
bW11bmljYXRpb24gYmV0d2VlbgotICAgICAgICAvLyB0aGUgbWFpbiB0aHJlYWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCdzIHRocmVhZCB3aGVyZSBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyIHJ1bnMu
Ci0gICAgICAgIC8vCi0gICAgICAgIC8vIFJlZ2FyZGluZyB0aGUgYnJpZGdlIGFuZCBsaWZldGlt
ZXMgb2YgaXRlbXMgdXNlZCBpbiBjYWxsYmFja3MsIHRoZXJlIGFyZSBhIGZldyBjYXNlczoKLSAg
ICAgICAgLy8KLSAgICAgICAgLy8gYWxsIGNhc2VzLiBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhl
IHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIGFyZSBvayBiZWNhdXNlCi0gICAgICAgIC8vICAgIHRo
ZSBsYXN0IHRhc2sgcG9zdGVkIGFsd2F5cyBpcyAibWFpblRocmVhZERlc3Ryb3kiLCBzbyBNYWlu
VGhyZWFkQnJpZGdlIGlzCi0gICAgICAgIC8vICAgIGFyb3VuZCBmb3IgYWxsIHRhc2tzIHRoYXQg
dXNlIGl0IG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gY2FzZSAx
LiB3b3JrZXIudGVybWluYXRlIGlzIGNhbGxlZC4KLSAgICAgICAgLy8gICAgSW4gdGhpcyBjYXNl
LCBubyBtb3JlIHRhc2tzIGFyZSBwb3N0ZWQgZnJvbSB0aGUgd29ya2VyIG9iamVjdCdzIHRocmVh
ZCB0byB0aGUgd29ya2VyCi0gICAgICAgIC8vICAgIGNvbnRleHQncyB0aHJlYWQgLS0gV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGVQcm94eSBpbXBsZW1lbnRhdGlvbiBlbmZvcmNlcyB0aGlzLgot
ICAgICAgICAvLwotICAgICAgICAvLyBjYXNlIDIuIHhociBnZXRzIGFib3J0ZWQgYW5kIHRoZSB3
b3JrZXIgY29udGV4dCBjb250aW51ZXMgcnVubmluZy4KLSAgICAgICAgLy8gICAgVGhlIFRocmVh
ZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGhhcyB0aGUgdW5kZXJseWluZyBjbGllbnQgY2xlYXJl
ZCwgc28gbm8gbW9yZSBjYWxscwotICAgICAgICAvLyAgICBnbyB0aHJvdWdoIGl0LiAgQWxsIHRh
c2tzIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0J3MgdGhyZWFkIHRvIHRoZSB3b3JrZXIg
Y29udGV4dCdzCi0gICAgICAgIC8vICAgIHRocmVhZCBjb250YWluIHRoZSBSZWZQdHI8VGhyZWFk
YWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG9iamVjdCwgc28gdGhlCi0gICAgICAgIC8vICAgIFRo
cmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGluc3RhbmNlIGlzIHRoZXJlIHVudGlsIGFsbCB0
YXNrcyBhcmUgZXhlY3V0ZWQuCi0gICAgICAgIGNsYXNzIE1haW5UaHJlYWRCcmlkZ2UgOiBwdWJs
aWMgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7Ci0gICAgICAgIHB1YmxpYzoKLSAgICAgICAgICAg
IC8vIEFsbCBleGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCi0gICAgICAg
ICAgICBNYWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyJiwgV29y
a2VyTG9hZGVyUHJveHkmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3Qm
JiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIG91dGdvaW5n
UmVmZXJyZXIsIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJik7Ci0gICAgICAgICAgICB2b2lk
IGNhbmNlbCgpOwotICAgICAgICAgICAgdm9pZCBkZXN0cm95KCk7Ci0gICAgICAgICAgICB2b2lk
IGNvbXB1dGVJc0RvbmUoKTsKLQotICAgICAgICBwcml2YXRlOgotICAgICAgICAgICAgLy8gRXhl
Y3V0ZWQgb24gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkLgotICAgICAgICAgICAgdm9pZCBj
bGVhckNsaWVudFdyYXBwZXIoKTsKLQotICAgICAgICAgICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRo
ZSBtYWluIHRocmVhZC4KLSAgICAgICAgICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWduZWQgbG9u
ZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0JlU2VudCkg
b3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICAg
ICAgICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCosIGludCBkYXRhTGVuZ3Ro
KSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkRmluaXNoVGlt
aW5nKGNvbnN0IFJlc291cmNlVGltaW5nJikgb3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sIGlzRG9uZSkgZmluYWw7Ci0KLSAgICAgICAgICAgIC8vIE9ubHkgdG8g
YmUgdXNlZCBvbiB0aGUgbWFpbiB0aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8RG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyPiBtX21haW5UaHJlYWRMb2FkZXI7Ci0gICAgICAgICAgICBib29sIG1f
bG9hZGluZ0ZpbmlzaGVkIHsgZmFsc2UgfTsKLQotICAgICAgICAgICAgLy8gVGhyZWFkYWJsZUxv
YWRlckNsaWVudFdyYXBwZXIgaXMgdG8gYmUgdXNlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQgdGhy
ZWFkLgotICAgICAgICAgICAgLy8gVGhlIHJlZiBjb3VudGluZyBpcyBkb25lIG9uIGVpdGhlciB0
aHJlYWQuCi0gICAgICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+
IG1fd29ya2VyQ2xpZW50V3JhcHBlcjsKLQotICAgICAgICAgICAgLy8gTWF5IGJlIHVzZWQgb24g
ZWl0aGVyIHRocmVhZC4KLSAgICAgICAgICAgIFdvcmtlckxvYWRlclByb3h5JiBtX2xvYWRlclBy
b3h5OwotCi0gICAgICAgICAgICAvLyBGb3IgdXNlIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAg
ICAgICAgIFN0cmluZyBtX3Rhc2tNb2RlOwotICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtX3dv
cmtlclJlcXVlc3RJZGVudGlmaWVyIHsgMCB9OwotICAgICAgICAgICAgTmV0d29ya0xvYWRNZXRy
aWNzIG1fbmV0d29ya0xvYWRNZXRyaWNzOwotICAgICAgICB9OwotCi0gICAgICAgIFdvcmtlclRo
cmVhZGFibGVMb2FkZXIoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBUaHJlYWRhYmxlTG9h
ZGVyQ2xpZW50JiwgY29uc3QgU3RyaW5nJiB0YXNrTW9kZSwgUmVzb3VyY2VSZXF1ZXN0JiYsIGNv
bnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlcik7Ci0K
LSAgICAgICAgdm9pZCBjb21wdXRlSXNEb25lKCkgZmluYWw7Ci0KLSAgICAgICAgUmVmPFdvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlPiBtX1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlOwotICAg
ICAgICBSZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG1fd29ya2VyQ2xpZW50V3Jh
cHBlcjsKLSAgICAgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Ci0gICAgfTsKKyAgICBS
ZWY8V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGU7CisgICAgUmVmPFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyPiBtX3dvcmtlckNsaWVu
dFdyYXBwZXI7CisgICAgTWFpblRocmVhZEJyaWRnZSYgbV9icmlkZ2U7Cit9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2Fj
aGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCmluZGV4IDY4ZjIyNDMxMTJmODY5NWRiNmZk
NjlmNWY4MzI1N2Q3NjI3OTYwOTkuLjRiYzJiMDkyNzVmMTM4MjAzNjlhOTRiZTA4ZmZjYjhkMTJm
YjhiOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNh
dGlvbkNhY2hlR3JvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9B
cHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwCkBAIC00MzcsNyArNDM3LDcgQEAgdm9pZCBBcHBsaWNh
dGlvbkNhY2hlR3JvdXA6OnVwZGF0ZShGcmFtZSYgZnJhbWUsIEFwcGxpY2F0aW9uQ2FjaGVVcGRh
dGVPcHRpb24gdXAKIAogICAgIGF1dG8gcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoVVJMIHsgbV9t
YW5pZmVzdFVSTCB9LCBtX25ld2VzdENhY2hlID8gbV9uZXdlc3RDYWNoZS0+bWFuaWZlc3RSZXNv
dXJjZSgpIDogbnVsbHB0cik7CiAKLSAgICBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIgPSBt
X2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpOworICAg
IG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6
Z2VuZXJhdGUoKTsKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVz
dChtX2ZyYW1lLmdldCgpLCBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIsIG1fZnJhbWUtPmxv
YWRlcigpLmRvY3VtZW50TG9hZGVyKCksIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UgeyB9LCBu
dWxscHRyKTsKIAogICAgIG1fbWFuaWZlc3RMb2FkZXIgPSBBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VMb2FkZXI6OmNyZWF0ZShBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U6OlR5cGU6Ok1hbmlmZXN0
LCBkb2N1bWVudExvYWRlci5jYWNoZWRSZXNvdXJjZUxvYWRlcigpLCBXVEZNb3ZlKHJlcXVlc3Qp
LCBbdGhpc10gKGF1dG8mJiByZXNvdXJjZU9yRXJyb3IpIHsKQEAgLTg5OCw3ICs4OTgsNyBAQCB2
b2lkIEFwcGxpY2F0aW9uQ2FjaGVHcm91cDo6c3RhcnRMb2FkaW5nRW50cnkoKQogCiAgICAgYXV0
byByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChVUkwgeyB7IH0sIGZpcnN0UGVuZGluZ0VudHJ5VVJM
IH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5yZXNvdXJjZUZvclVSTChmaXJzdFBl
bmRpbmdFbnRyeVVSTCkgOiBudWxscHRyKTsKIAotICAgIG1fY3VycmVudFJlc291cmNlSWRlbnRp
ZmllciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVy
KCk7CisgICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyOjpnZW5lcmF0ZSgpOwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNl
bmRSZXF1ZXN0KG1fZnJhbWUuZ2V0KCksIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbV9m
cmFtZS0+bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25z
ZSB7IH0sIG51bGxwdHIpOwogCiAgICAgYXV0byYgZG9jdW1lbnRMb2FkZXIgPSAqbV9mcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAppbmRleCA2MzcxZmE1OGViYzY1
NDA5NTAxMmUwM2E0ZTdkNGU2NGI0MGIxYjlhLi5iOWJmODc2MzhmMzAzYWVhOWM4NmE2NDVlZThj
MWY5MjkyNTYzOGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUv
QXBwbGljYXRpb25DYWNoZUdyb3VwLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNh
Y2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCkBAIC0xODEsNyArMTgxLDcgQEAgcHJpdmF0ZToK
ICAgICAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX2N1cnJlbnRSZXNv
dXJjZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyPiBtX2VudHJ5
TG9hZGVyOwotICAgIHVuc2lnbmVkIGxvbmcgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyOwor
ICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXI7
CiAKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlPiBtX21hbmlmZXN0UmVzb3Vy
Y2U7CiAgICAgUmVmUHRyPEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZUxvYWRlcj4gbV9tYW5pZmVz
dExvYWRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRS
YXdSZXNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVz
b3VyY2UuY3BwCmluZGV4IDkwMDlhMzliNzVjNzVhMTIxNmE3ZWJhN2Q2Y2ZhYjlmOTY3N2VlZmUu
LjkyYjA4MzY5NzU4ODg0NDA5MTkzOWUzZWVkNzlkNzdmMTgzOTU2MmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcApAQCAtNDMsNyAr
NDMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIENhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRS
YXdSZXNvdXJjZShDYWNoZWRSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBUeXBlIHR5cGUsIFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgQ29va2llSmFyKiBjb29raWVKYXIpCiAgICAg
OiBDYWNoZWRSZXNvdXJjZShXVEZNb3ZlKHJlcXVlc3QpLCB0eXBlLCBzZXNzaW9uSUQsIGNvb2tp
ZUphcikKLSAgICAsIG1faWRlbnRpZmllcigwKQogICAgICwgbV9hbGxvd0VuY29kZWREYXRhUmVw
bGFjZW1lbnQodHJ1ZSkKIHsKICAgICBBU1NFUlQoaXNNYWluT3JNZWRpYU9ySWNvbk9yUmF3UmVz
b3VyY2UoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmF3UmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNv
dXJjZS5oCmluZGV4IGZkNGEyNjliZDVhMmJiNjA0OTg1YzQ3ZDZiMzhhNzkzMDc2ZmY5NGIuLjg0
ZTBkODQ0ZDU3MTA5OTUzYWU2YmZmNjU1NjU5OTUzZTI4YmE2OWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCkBAIC0zOSw3ICszOSw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldERhdGFCdWZmZXJpbmdQb2xpY3koRGF0YUJ1ZmZlcmluZ1Bv
bGljeSk7CiAKICAgICAvLyBGSVhNRTogVGhpcyBpcyBleHBvc2VkIGZvciB0aGUgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uIGZvciBwcmVmbGlnaHRzIGluIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ci4gSXQncyBhbHNvIHJlYWxseSBsYW1lLgotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2
b2lkIGNsZWFyKCk7CiAKQEAgLTczLDcgKzczLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHByZXZp
ZXdSZXNwb25zZVJlY2VpdmVkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICNlbmRp
ZgogCi0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXI7CisgICAgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBib29sIG1fYWxsb3dFbmNvZGVkRGF0YVJlcGxh
Y2VtZW50OwogICAgIGJvb2wgbV9pbkluY3JlbWVudGFsRGF0YU5vdGlmeSB7IGZhbHNlIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4
IDg2Zjc3MjBiODNlYjAzZTExOGNlZWQ2ZjIzNDE4YjhiMjY1ZGY0MjYuLjVhYjRhNDhkMmZjYjYw
ZTNjOTczMmVmYzAwZDVjZGZiN2Y5ZTc1MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMjY1LDcgKzI2NSw3IEBAIHZvaWQgQ2FjaGVk
UmVzb3VyY2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNlTG9hZGVy
KQogICAgICAgICBBU1NFUlQobV9vcmlnaW5hbFJlcXVlc3QpOwogICAgICAgICBDYWNoZWRSZXNv
dXJjZUhhbmRsZTxDYWNoZWRSZXNvdXJjZT4gcHJvdGVjdGVkVGhpcyh0aGlzKTsKIAotICAgICAg
ICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3Jl
YXRlVW5pcXVlSWRlbnRpZmllcigpOworICAgICAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKCZmcmFtZSwgaWRlbnRpZmllciwgZnJhbWVM
b2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpMb2FkVHlwZTo6QmVhY29uKTsKIAogICAgICAgICBwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+c3RhcnRQaW5nTG9hZChmcmFtZSwgcmVxdWVzdCwgbV9vcmln
aW5hbFJlcXVlc3QtPmh0dHBIZWFkZXJGaWVsZHMoKSwgbV9vcHRpb25zLCBtX29wdGlvbnMuY29u
dGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlvbiwgW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBXVEZN
b3ZlKHByb3RlY3RlZFRoaXMpLCBwcm90ZWN0ZWRGcmFtZSA9IG1ha2VSZWYoZnJhbWUpLCBpZGVu
dGlmaWVyXSAoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5oCmluZGV4IDVmOTU2OWVjYWIxM2NmYzJmZmFjZTdmZjExZTc4NjE3MmVlZTczMDAuLjM5
NjAwMjgzMmNjMTUzYzU5MDQ3OGNhMjUxODEzZTZjMDM1YmMyNzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5j
bHVkZSAiRnJhbWVMb2FkZXJUeXBlcy5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNp
bmNsdWRlICJSZXNvdXJjZUxvYWRQcmlvcml0eS5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVy
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZGVyT3B0aW9ucy5oIgogI2luY2x1
ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2UuaCIKQEAg
LTI4Niw3ICsyODcsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB0cnlSZXBs
YWNlRW5jb2RlZERhdGEoU2hhcmVkQnVmZmVyJik7CiAjZW5kaWYKIAotICAgIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIoKSBjb25zdCB7IHJldHVy
biBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyOyB9CisgICAgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
cjsgfQogCiAgICAgdm9pZCBzZXRPcmlnaW5hbFJlcXVlc3Qoc3RkOjp1bmlxdWVfcHRyPFJlc291
cmNlUmVxdWVzdD4mJiBvcmlnaW5hbFJlcXVlc3QpIHsgbV9vcmlnaW5hbFJlcXVlc3QgPSBXVEZN
b3ZlKG9yaWdpbmFsUmVxdWVzdCk7IH0KICAgICBjb25zdCBzdGQ6OnVuaXF1ZV9wdHI8UmVzb3Vy
Y2VSZXF1ZXN0PiYgb3JpZ2luYWxSZXF1ZXN0KCkgY29uc3QgeyByZXR1cm4gbV9vcmlnaW5hbFJl
cXVlc3Q7IH0KQEAgLTM0Miw3ICszNDMsNyBAQCBwcml2YXRlOgogICAgIFBBTDo6U2Vzc2lvbklE
IG1fc2Vzc2lvbklEOwogICAgIFJlZlB0cjxjb25zdCBDb29raWVKYXI+IG1fY29va2llSmFyOwog
ICAgIFdhbGxUaW1lIG1fcmVzcG9uc2VUaW1lc3RhbXA7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lk
ZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHsgMCB9OworICAgIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
OwogCiAgICAgSGFzaE1hcDxDYWNoZWRSZXNvdXJjZUNsaWVudCosIHN0ZDo6dW5pcXVlX3B0cjxD
YWxsYmFjaz4+IG1fY2xpZW50c0F3YWl0aW5nQ2FsbGJhY2s7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dFNvdXJjZS5jcHAKaW5kZXggN2I3N2U0MDdlZTVkMDhhYjM3ODRkMDg5OWNmYTMzZjAxNzdmMDY0
OC4uNjAyNjMxYmI3Y2QxMDg2MGIxYTMxMjEwNDNjOTdkOGVmZTQ0NzYxZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudFNvdXJjZS5jcHAKQEAgLTE4OCw3ICsxODgsNyBAQCBib29sIEV2ZW50U291cmNl
OjpyZXNwb25zZUlzVmFsaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpIGNvbnN0
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNw
b25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgRXZlbnRTb3VyY2U6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX3N0
YXRlID09IENPTk5FQ1RJTkcpOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdodCk7CkBAIC0y
MjAsNyArMjIwLDcgQEAgdm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWlu
dDhfdCogZGF0YSwgaW50IGxlbmd0aCkKICAgICBwYXJzZUV2ZW50U3RyZWFtKCk7CiB9CiAKLXZv
aWQgRXZlbnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgRXZl
bnRTb3VyY2U6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewog
ICAgIEFTU0VSVChtX3N0YXRlID09IE9QRU4pOwogICAgIEFTU0VSVChtX3JlcXVlc3RJbkZsaWdo
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmgKaW5kZXggZTEwZDhkOTE2ZmIwZjI1ZmJlYTNm
N2FjMmFmNTVmNTcwYjIwZGNhNi4uZDAxMmQzNzdkMTk3Njc1ZjBmZTExNDVmMTcxOWYxN2ZkZGJm
ZWEzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaApAQCAtODMsOSArODMsOSBAQCBwcml2
YXRlOgogICAgIHZvaWQgZG9FeHBsaWNpdExvYWRDYW5jZWxsYXRpb24oKTsKIAogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25l
ZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50
KSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykgZmluYWw7
CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmlu
YWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAg
IC8vIEFjdGl2ZURPTU9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuY3BwCmluZGV4IGM0OGEy
OTZjY2MwMmU1N2JjMmRiZDYwMTc0NDQ1OTdjYzlhYTMwZDcuLmU5N2EwNThkZjZjOGJkMmZhZDNj
MWEzYjI4M2RmN2U2Njk3OTUxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKQEAgLTE5
Niw3ICsxOTYsNyBAQCB2b2lkIFdvcmtlcjo6bm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGJvb2wg
aXNPbkxpbmUpCiAgICAgbV9jb250ZXh0UHJveHkubm90aWZ5TmV0d29ya1N0YXRlQ2hhbmdlKGlz
T25MaW5lKTsKIH0KIAotdm9pZCBXb3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBX
b3JrZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgY29uc3QgVVJM
JiByZXNwb25zZVVSTCA9IHJlc3BvbnNlLnVybCgpOwogICAgIGlmICghcmVzcG9uc2VVUkwucHJv
dG9jb2xJc0Jsb2IoKSAmJiAhcmVzcG9uc2VVUkwucHJvdG9jb2xJcygiZmlsZSIpICYmICFTZWN1
cml0eU9yaWdpbjo6Y3JlYXRlKHJlc3BvbnNlVVJMKS0+aXNVbmlxdWUoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlci5oCmluZGV4IGMzMWU3OWJkNTVmZjgyMDhmYzdiNDJkN2U5ODJiYzNkNTFhY2IxMjMu
LmJkMjllNTdmZTRmMmEyNjc4MzU4ZmVkMWUxNzNhZmMyYmQ2ODdlYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuaApAQCAtODcsNyArODcsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBub3RpZnlO
ZXR3b3JrU3RhdGVDaGFuZ2UoYm9vbCBpc09ubGluZSk7CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIG5vdGlmeUZp
bmlzaGVkKCkgZmluYWw7CiAKICAgICAvLyBBY3RpdmVET01PYmplY3QuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKaW5kZXggZmFiYmQwM2Vi
MGFkYzEyMDRlMTA0MWExMDhlMDViNzZlNDU0NTUwNy4uZjE1N2QzMDk3ZGY2OTg3YTRiNjM0Yjdm
ZDYzMzM5ZTkwOWQ4NmU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJGb250TG9hZFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2Vy
Rm9udExvYWRSZXF1ZXN0LmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgV29ya2VyRm9udExv
YWRSZXF1ZXN0OjpzZXRDbGllbnQoRm9udExvYWRSZXF1ZXN0Q2xpZW50KiBjbGllbnQpCiAgICAg
fQogfQogCi12b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3Jr
ZXJGb250TG9hZFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmIChyZXNw
b25zZS5odHRwU3RhdHVzQ29kZSgpIC8gMTAwICE9IDIgJiYgcmVzcG9uc2UuaHR0cFN0YXR1c0Nv
ZGUoKSkKICAgICAgICAgbV9lcnJvck9jY3VycmVkID0gdHJ1ZTsKQEAgLTEyMiw3ICsxMjIsNyBA
QCB2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhf
dCogZGF0YSwgaW50IGRhdGFMZW5ndGgpCiAgICAgbV9kYXRhLT5hcHBlbmQoZGF0YSwgZGF0YUxl
bmd0aCk7CiB9CiAKLXZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5n
KHVuc2lnbmVkIGxvbmcpCit2b2lkIFdvcmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkRmluaXNoTG9h
ZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9pc0xvYWRpbmcgPSBmYWxz
ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgK
aW5kZXggMTVjNDUxMzgwMDUwNGFiMDNkNDkxNzliYjU0ZTgyMDBlMmQ0OTk4ZC4uYWY2OTIwNjMw
MmRjMWJhZWQ1OTkwNDRlN2I3NjVlN2JjNTAyOGY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC02MCw5ICs2MCw5IEBAIHByaXZhdGU6
CiAKICAgICBib29sIGlzV29ya2VyRm9udExvYWRSZXF1ZXN0KCkgY29uc3QgZmluYWwgeyByZXR1
cm4gdHJ1ZTsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJikgZmluYWw7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBk
YXRhLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAgICAgdm9pZCBkaWRGYWlsKGNvbnN0
IFJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAogICAgIFVSTCBtX3VybDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCBlNDc5
ZGRlYTA0ZWE1ZTFlMjY2ZTUxNWFmOTJjZWQzZjk5NTdlYzU2Li5iOTcwY2RlNDFlN2M1NDExMjEw
MjUyZTY1YTE4ZTQxYzZiOTM5ZDY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oCkBAIC01NCw4ICs1NCw2IEBAIHB1YmxpYzoK
ICAgICBKU0M6OlZNJiB2bSgpIGZpbmFsOwogICAgIFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXIm
IGluc3BlY3RvckNvbnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiAqbV9pbnNwZWN0b3JDb250cm9s
bGVyOyB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKSB7IHJl
dHVybiBtX3VuaXF1ZUlkZW50aWZpZXIrKzsgfQotCiAgICAgU2NyaXB0TW9kdWxlTG9hZGVyJiBt
b2R1bGVMb2FkZXIoKSB7IHJldHVybiAqbV9tb2R1bGVMb2FkZXI7IH0KIAogICAgIC8vIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQuCkBAIC05OSw3ICs5Nyw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFdvcmtlckV2ZW50TG9vcD4gbV9ldmVudExvb3A7CiAgICAgc3RkOjp1bmlxdWVfcHRyPEV2ZW50
TG9vcFRhc2tHcm91cD4gbV9kZWZhdWx0VGFza0dyb3VwOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxX
b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyPiBtX2luc3BlY3RvckNvbnRyb2xsZXI7Ci0gICAgdW5z
aWduZWQgbG9uZyBtX3VuaXF1ZUlkZW50aWZpZXIgeyAxIH07CiAgICAgYm9vbCBtX2lzQ2xvc2lu
ZyB7IGZhbHNlIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclNjcmlwdExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlw
dExvYWRlci5jcHAKaW5kZXggNzNhZTdhYmI3MTNjNmFmNjk0NWI4ZDUxZTBhMGU3Zjk3OWIxMTVm
MS4uYmY1YTQ0ZmUzNDhkMmZmY2U5MTZmYjE5NDkxNWU2N2JmZGE5YWVjMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmNwcApAQCAtMTc4LDcgKzE3OCw3
IEBAIFJlc291cmNlRXJyb3IgV29ya2VyU2NyaXB0TG9hZGVyOjp2YWxpZGF0ZVdvcmtlclJlc3Bv
bnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBX
b3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3JrZXJTY3Jp
cHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9lcnJv
ciA9IHZhbGlkYXRlV29ya2VyUmVzcG9uc2UocmVzcG9uc2UsIG1fZGVzdGluYXRpb24pOwogICAg
IGlmICghbV9lcnJvci5pc051bGwoKSkgewpAQCAtMjIxLDcgKzIyMSw3IEBAIHZvaWQgV29ya2Vy
U2NyaXB0TG9hZGVyOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgbGVu
KQogICAgIG1fc2NyaXB0LmFwcGVuZChtX2RlY29kZXItPmRlY29kZShkYXRhLCBsZW4pKTsKIH0K
IAotdm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQordm9pZCBXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmco
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKG1fZmFpbGVk
KSB7CiAgICAgICAgIG5vdGlmeUVycm9yKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJTY3JpcHRMb2FkZXIuaAppbmRleCAzZWU0ZGE2YzUwNmNiZmQ2ZWI4NzVkOWMyNzQ5OGYxM2Yz
YzdhMTE5Li5lYTUzODBmYmVlZjg3NTQwMzE2YTZmYTkyNzhjYzIxN2M4OTMxNGUwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmgKQEAgLTc1LDEyICs3NSwx
MiBAQCBwdWJsaWM6CiAgICAgY29uc3QgQ2VydGlmaWNhdGVJbmZvJiBjZXJ0aWZpY2F0ZUluZm8o
KSBjb25zdCB7IHJldHVybiBtX2NlcnRpZmljYXRlSW5mbzsgfQogICAgIGNvbnN0IFN0cmluZyYg
cmVzcG9uc2VNSU1FVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVzcG9uc2VNSU1FVHlwZTsgfQog
ICAgIGJvb2wgZmFpbGVkKCkgY29uc3QgeyByZXR1cm4gbV9mYWlsZWQ7IH0KLSAgICB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KKyAgICBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRl
bnRpZmllcjsgfQogICAgIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKCkgY29uc3QgeyByZXR1
cm4gbV9lcnJvcjsgfQogCi0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
Y2FuY2VsKCk7CkBAIC0xMTAsNyArMTEwLDcgQEAgcHJpdmF0ZToKICAgICBDb250ZW50U2VjdXJp
dHlQb2xpY3lSZXNwb25zZUhlYWRlcnMgbV9jb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgU3Ry
aW5nIG1fcmVmZXJyZXJQb2xpY3k7CiAgICAgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSBtX2Ny
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3k7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2lkZW50aWZpZXIg
eyAwIH07CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBi
b29sIG1fZmFpbGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fZmluaXNoaW5nIHsgZmFsc2UgfTsK
ICAgICBib29sIG1faXNSZWRpcmVjdGVkIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlckNsaWVudC5oCmluZGV4IDI3NGNlNDhlMWQ2ZjNm
YjA2OTRkMjI1NmQxNmYzNWVhYTM1OTc2NWYuLjE1YjMyNWU0NzVmNGM5YmJiNGYyOTgyODgxZTQ1
N2Y2YzRjZmY3NjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2Ny
aXB0TG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3Jp
cHRMb2FkZXJDbGllbnQuaApAQCAtMzIsNyArMzIsNyBAQCBjbGFzcyBSZXNvdXJjZVJlc3BvbnNl
OwogCiBjbGFzcyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQgewogcHVibGljOgotICAgIHZpcnR1
YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZCgpID0gMDsKIAogcHJvdGVjdGVk
OgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJKb2IuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuY3BwCmluZGV4IDg2N2I4Njk0NzUzNDRmY2UzM2NjZGE5OWY3ZWM5MGNmNDc3MTNkNWIuLjY5
ZWY5ZDcwN2ZjNDNkNDdjMmUyMjY1YWExNDk2MzRlM2JiMDE4ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5jcHAKQEAgLTE0MCw3
ICsxNDAsNyBAQCBSZXNvdXJjZUVycm9yIFNlcnZpY2VXb3JrZXJKb2I6OnZhbGlkYXRlU2Vydmlj
ZVdvcmtlclJlc3BvbnNlKGNvbnN0IFNlcnZpY2VXb3JrZQogICAgIHJldHVybiB7IH07CiB9CiAK
LXZvaWQgU2VydmljZVdvcmtlckpvYjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcs
IGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBTZXJ2aWNlV29ya2VySm9i
OjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBBU1NFUlQobV9jcmVhdGlvblRocmVhZC5w
dHIoKSA9PSAmVGhyZWFkOjpjdXJyZW50KCkpOwogICAgIEFTU0VSVCghbV9jb21wbGV0ZWQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJK
b2IuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgK
aW5kZXggMDdjY2I3NDcwMmU1NDAwNjUwYTY2Mjg1NDNlODMzYzU0NjRmOWJiYi4uN2M1OGE0NmMy
NDIwNTgyMGFiMDEwOWMxZTUzY2M2ZGVhZGJlYmY4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCkBAIC03NCw3ICs3NCw3IEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICAvLyBXb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQKLSAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKICAg
ICB2b2lkIG5vdGlmeUZpbmlzaGVkKCkgZmluYWw7CiAKICAgICBTZXJ2aWNlV29ya2VySm9iQ2xp
ZW50JiBtX2NsaWVudDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDI1
YmY4MjAwOWUzYWE4MmMxMzhjMTc1NzAyYjY0MGE0N2FiM2Y5OWEuLjYyZjcwZWViODAxZDg0ODRl
MWE0ODk1ZjdkMzQ2YzFiNGU0Yzc4ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9Y
TUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0
LmNwcApAQCAtOTI2LDcgKzkyNiw3IEBAIHZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiAgICAgbmV0d29ya0Vycm9yKCk7CiB9CiAKLXZvaWQg
WE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZykKK3ZvaWQgWE1M
SHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQog
ewogICAgIGF1dG8gcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpOwogCkBAIC05NzAsNyAr
OTcwLDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBs
b25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb24KICAgICB9CiB9CiAKLXZvaWQgWE1MSHR0
cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZFJlY2VpdmVSZXNw
b25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQogewogICAgIG1fcmVzcG9uc2UgPSByZXNwb25zZTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmgKaW5kZXggYzA0YTE2ODk2MDliNmZiOTFhNjgwYzk4ZjdlMDczMmE3NDhm
OWVmMi4uOGY2ZTg5MjYwZGVjMTY3NWVkZmNlZjU4NGIwMzBkODZjNzY2ODgzOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUveG1sL1hNTEh0dHBSZXF1ZXN0LmgKQEAgLTE2MSw5ICsxNjEsOSBAQCBwcml2YXRlOgogCiAg
ICAgLy8gVGhyZWFkYWJsZUxvYWRlckNsaWVudAogICAgIHZvaWQgZGlkU2VuZERhdGEodW5zaWdu
ZWQgbG9uZyBsb25nIGJ5dGVzU2VudCwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXNUb0Jl
U2VudCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBk
aWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiAgICAg
dm9pZCBkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKICAgICB2b2lkIG5v
dGlmeUlzRG9uZShib29sKSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAppbmRl
eCA1ZGQ4YjM1NjgzZDU4OGYxZTdkNzJjYjE4MTIzYzI2Njc2NWRlNjIzLi5iYjA1ZjBlZTUyNGY1
NTQ3MjJlM2VhYTdlZTVkZDFiMGUxYTRlNWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNw
cApAQCAtMjA2LDcgKzIwNiw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvCiAgICAgaWYgKGRl
Y29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewogICAgICAgICBSRUxFQVNFX0FTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGRlY29kZXIuZGVzdGlu
YXRpb25JRCgpKTsKLSAgICAgICAgaWYgKGF1dG8qIGxvYWRlciA9IG1fbmV0d29ya1Jlc291cmNl
TG9hZGVycy5nZXQoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKQorICAgICAgICBpZiAoYXV0byog
bG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldChtYWtlT2JqZWN0SWRlbnRpZmll
cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4oZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKSkKICAg
ICAgICAgICAgIGxvYWRlci0+ZGlkUmVjZWl2ZU5ldHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2Uo
Y29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC00NTksNyAr
NDU5LDcgQEAgTmV0d29ya1Nlc3Npb24qIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpu
ZXR3b3JrU2Vzc2lvbigpCiAKIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVm
ZXJlbmNlPj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc29sdmVCbG9iUmVmZXJl
bmNlcyhjb25zdCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYgbG9hZFBhcmFtZXRlcnMp
CiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
cik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVzb2x2ZUJsb2JSZWZl
cmVuY2VzOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAi
KSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQ
YXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
ci50b1VJbnQ2NCgpKTsKIAogICAgIGF1dG8qIHNlc3Npb24gPSBuZXR3b3JrU2Vzc2lvbigpOwog
ICAgIGlmICghc2Vzc2lvbikKQEAgLTQ4OCw3ICs0ODgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8U2Vy
dmljZVdvcmtlckZldGNoVGFzaz4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNyZWF0
ZUZldAogCiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291
cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzLCBz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlzdGluZ0xvYWRl
clRvUmVzdW1lKQogewotICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciwgZXhpc3RpbmdM
b2FkZXJUb1Jlc3VtZS52YWx1ZV9vcihOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllciB7IH0p
LnRvVUludDY0KCkpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInNjaGVk
dWxlUmVzb3VyY2VMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwg
d2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUi
IFBSSXU2NCAiLCBleGlzdGluZ0xvYWRlclRvUmVzdW1lPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJh
bWV0ZXJzLnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YkZyYW1lSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgp
LCBleGlzdGluZ0xvYWRlclRvUmVzdW1lLnZhbHVlX29yKE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyIHsgfSkudG9VSW50NjQoKSk7CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAg
ICAgYXV0byYgc2VydmVyID0gbV9uZXR3b3JrUHJvY2Vzcy0+c3dTZXJ2ZXJGb3JTZXNzaW9uKG1f
c2Vzc2lvbklEKTsKQEAgLTUzMiw3ICs1MzIsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzY2hlZHVsZVJlc291cmNlTG9hZChOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYQog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwZXJmb3JtU3luY2hyb25vdXNM
b2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMsIE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UGVyZm9ybVN5bmNocm9ub3VzTG9h
ZDo6RGVsYXllZFJlcGx5JiYgcmVwbHkpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAicGVyZm9ybVN5bmNocm9ub3VzTG9hZDogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5
SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQg
IiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxv
YWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndl
YlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCks
IGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0co
TG9hZGluZywgInBlcmZvcm1TeW5jaHJvbm91c0xvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94
eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0
ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgp
LCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBpZGVu
dGlmaWVyID0gbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcjsKICAgICBSRUxFQVNFX0FTU0VSVChp
ZGVudGlmaWVyKTsKQEAgLTU1NCw3ICs1NTQsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjp0ZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldhaXRpbmdGbwog
CiB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpsb2FkUGluZyhOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQogewotICAgIENPTk5FQ1RJT05f
UkVMRUFTRV9MT0coTG9hZGluZywgImxvYWRQaW5nOiAocGFyZW50UElEPSVkLCBwYWdlUHJveHlJ
RD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAi
LCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2Vi
UGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwg
bG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhM
b2FkaW5nLCAibG9hZFBpbmc6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byBjb21wbGV0aW9uSGFuZGxlciA9
IFtjb25uZWN0aW9uID0gbV9jb25uZWN0aW9uLCBpZGVudGlmaWVyID0gbG9hZFBhcmFtZXRlcnMu
aWRlbnRpZmllcl0gKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkgewogICAgICAgICBjb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OkRpZEZpbmlzaFBpbmdMb2FkKGlkZW50aWZpZXIsIGVy
cm9yLCByZXNwb25zZSksIDApOwpAQCAtNTc0LDcgKzU3NCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OmNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQoSFRUUENvb2tpZUFj
Y2VwdFBvCiAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb246OkNvb2tpZUFjY2VwdFBvbGljeUNoYW5nZWQobmV3UG9saWN5KSwgMCk7CiB9CiAK
LXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVy
KFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFJFTEVBU0VfQVNTRVJUKGlkZW50aWZp
ZXIpOwogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKQEAgLTU4Nyw3ICs1
ODcsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpyZW1vdmVMb2FkSWRl
bnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyCiAKICAgICAvLyBBYm9ydCB0aGUgbG9hZCBu
b3csIGFzIHRoZSBXZWJQcm9jZXNzIHdvbid0IGJlIGFibGUgdG8gcmVzcG9uZCB0byBtZXNzYWdl
cyBhbnkgbW9yZSB3aGljaCBtaWdodCBsZWFkCiAgICAgLy8gdG8gbGVha2VkIGxvYWRlciByZXNv
dXJjZXMgKGNvbm5lY3Rpb25zLCB0aHJlYWRzLCBldGMpLgotICAgIENPTk5FQ1RJT05fUkVMRUFT
RV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVudGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVy
ICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3JyZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZp
ZXIpOworICAgIENPTk5FQ1RJT05fUkVMRUFTRV9MT0coTG9hZGluZywgInJlbW92ZUxvYWRJZGVu
dGlmaWVyOiBSZW1vdmluZyBpZGVudGlmaWVyICUiIFBSSXU2NCAiIGFuZCBhYm9ydGluZyBjb3Jy
ZXNwb25kaW5nIGxvYWRlciIsIGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgbG9hZGVyLT5h
Ym9ydCgpOwogICAgIEFTU0VSVCghbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGlk
ZW50aWZpZXIpKTsKIH0KQEAgLTYyNyw5ICs2MjcsOSBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOjpzZW5kSDJQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYg
cAogI2VuZGlmCiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNv
bm5lY3RUbyhzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwg
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycykKK3ZvaWQgTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByZWNvbm5lY3RUbyhzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIs
IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiB7Ci0gICAg
Q09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElE
PSVkLCBwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFt
ZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJz
LnBhcmVudFBJRCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1l
SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElP
Tl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicHJlY29ubmVjdFRvOiAocGFyZW50UElEPSVkLCBwYWdl
UHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBS
SXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJ
RCwgbG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRl
cnMud2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50
NjQoKSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKIAogICAgIEFTU0VS
VCghbG9hZFBhcmFtZXRlcnMucmVxdWVzdC5odHRwQm9keSgpKTsKIApAQCAtNjU3LDEyICs2NTcs
MTIgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0
ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHByZWNvbm4KICAgICBjb21wbGV0aW9uSGFuZGxlcihpbnRl
cm5hbEVycm9yKGxvYWRQYXJhbWV0ZXJzLnJlcXVlc3QudXJsKCkpKTsKIH0KIAotdm9pZCBOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRGaW5pc2hlZCh1aW50NjRf
dCBsb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmlzUmVzb3VyY2VMb2FkRmlu
aXNoZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGxvYWRJZGVudGlmaWVyLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxiYWNrKQogewogICAgIGNhbGxiYWNr
KCFtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMobG9hZElkZW50aWZpZXIpKTsKIH0K
IAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVj
dGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJv
ciYgZXJyb3IpCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQ
cmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0
aW9uSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKCFt
X2Nvbm5lY3Rpb24tPmlzVmFsaWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjgzLDcgKzY4Myw3
IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0YXJ0RG93bmxvYWQoRG93
bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSCiAgICAgbV9uZXR3b3JrUHJvY2Vzcy0+ZG93bmxv
YWRNYW5hZ2VyKCkuc3RhcnREb3dubG9hZChtX3Nlc3Npb25JRCwgZG93bmxvYWRJRCwgcmVxdWVz
dCwgaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbiwgc3VnZ2VzdGVkTmFtZSk7CiB9CiAKLXZv
aWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRNYWluUmVzb3VyY2VMb2Fk
VG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgRG93bmxvYWRJ
RCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKQordm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VM
b2FkSWRlbnRpZmllciwgRG93bmxvYWRJRCBkb3dubG9hZElELCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBzdGQ6Om9wdGlv
bmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluKQogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKIApAQCAtNjkz
LDcgKzY5Myw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmNvbnZlcnRN
YWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGxvYWRlciA9IG1fbmV0d29ya1Jlc291
cmNlTG9hZGVycy5nZXQobWFpblJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIE5ldHdvcmtS
ZXNvdXJjZUxvYWRlciogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3VyY2VMb2FkZXJzLmdldCgqbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIpOwogICAgIGlmICghbG9hZGVyKSB7CiAgICAgICAgIC8v
IElmIHdlJ3JlIHRyeWluZyB0byBkb3dubG9hZCBhIGJsb2IgaGVyZSBsb2FkZXIgY2FuIGJlIG51
bGwuCiAgICAgICAgIHJldHVybjsKQEAgLTEwMjksNyArMTAyOSw3IEBAIHZvaWQgTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dMaXN0cygpCiAgICAg
U2VjdXJpdHlQb2xpY3k6OnJlc2V0T3JpZ2luQWNjZXNzQWxsb3dsaXN0cygpOwogfQogCi1zdGQ6
Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwg
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlzVG9wUmVzb3VyY2UpCitz
dGQ6Om9wdGlvbmFsPE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFBhZ2VJZGVudGlmaWVyIHBhZ2VJ
RCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNU
b3BSZXNvdXJjZSkKIHsKICAgICBpZiAobV9zZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAgICAg
ICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKQEAgLTEwODAsNyArMTA4MCw3IEBAIHN0ZDo6b3B0aW9u
YWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
OnN0YXJ0VHJhY2tpCiAgICAgcmV0dXJuIG5ld0FjdGl2aXR5VHJhY2tlci5uZXR3b3JrQWN0aXZp
dHk7CiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2lu
Z1Jlc291cmNlTG9hZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtB
Y3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRpb25Db2RlIGNvZGUpCit2b2lkIE5ldHdvcmtDb25uZWN0
aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNv
bXBsZXRpb25Db2RlIGNvZGUpCiB7CiAgICAgYXV0byBpdGVtSW5kZXggPSBmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihyZXNvdXJjZUlEKTsKICAgICBpZiAoaXRlbUluZGV4ID09IG5vdEZvdW5k
KQpAQCAtMTExNyw3ICsxMTE3LDcgQEAgc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpmaW5kUm9vdE5ldHdvcmtBY3Rpdml0eShQYWdlSWRlbnRpZmllciBwYWcKICAgICB9KTsK
IH0KIAotc2l6ZV90IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpmaW5kTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCitzaXplX3Qg
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmROZXR3b3JrQWN0aXZpdHlUcmFja2Vy
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogewogICAgIHJl
dHVybiBtX25ldHdvcmtBY3Rpdml0eVRyYWNrZXJzLmZpbmRNYXRjaGluZyhbJl0oY29uc3QgYXV0
byYgaXRlbSkgewogICAgICAgICByZXR1cm4gaXRlbS5yZXNvdXJjZUlEID09IHJlc291cmNlSUQ7
CkBAIC0xMjY4LDcgKzEyNjgsNyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
OjpzZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlSQogICAgIHNlc3Np
b24tPm5ldHdvcmtMb2FkU2NoZWR1bGVyKCkuc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUo
cGFnZUlkZW50aWZpZXIsIG1vZGUpOwogfQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRp
Zmllcj4gbG9hZElkZW50aWZpZXJzKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcj4mIGxvYWRJZGVudGlmaWVycykKIHsKICAgICBhdXRvKiBzZXNzaW9u
ID0gbmV0d29ya1Nlc3Npb24oKTsKICAgICBpZiAoIXNlc3Npb24pCkBAIC0xMjg1LDcgKzEyODUs
NyBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmlvcml0aXplUmVzb3Vy
Y2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSQogICAgIHNlc3Npb24tPm5ldHdvcmtMb2FkU2No
ZWR1bGVyKCkucHJpb3JpdGl6ZUxvYWRzKGxvYWRzKTsKIH0KIAotUmVmUHRyPE5ldHdvcmtSZXNv
dXJjZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrUmVz
b3VyY2VMb2FkZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikKK1JlZlB0cjxOZXR3
b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjp0YWtlTmV0
d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKQogewogICAgIGlmICghTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6
TWFwVHlwZTo6aXNWYWxpZEtleShyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSkKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKaW5kZXggZTk4YTJlNWRhMTVmNmIw
OGRkMjUwYmU5OGI2ZjhmYWI1MzM0MWE0Yy4uZDE2MWNmOTZjNGM1ZDlhZDEzMDk0OTYyZTE5OTFh
NWY0ZWZkODBiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaApAQCAtODcsNyArODcsNiBAQCBj
bGFzcyBOZXR3b3JrU29ja2V0U3RyZWFtOwogY2xhc3MgU2VydmljZVdvcmtlckZldGNoVGFzazsK
IGNsYXNzIFdlYlNXU2VydmVyQ29ubmVjdGlvbjsKIGNsYXNzIFdlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbjsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKIAog
bmFtZXNwYWNlIE5ldHdvcmtDYWNoZSB7CiBzdHJ1Y3QgRGF0YUtleTsKQEAgLTEyNSwzNCArMTI0
LDM0IEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFudXBGb3JTdXNwZW5zaW9uKEZ1bmN0aW9uPHZv
aWQoKT4mJik7CiAgICAgdm9pZCBlbmRTdXNwZW5zaW9uKCk7CiAKLSAgICB2b2lkIGdldE5ldHdv
cmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZShSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbmZvcm1h
dGlvblJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKICAgICB7CiAgICAgICAgIGlmIChhdXRvKiBpbmZvID0g
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5nZXQoaWRlbnRpZmllcikpCiAgICAgICAgICAg
ICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoaW5mby0+cmVzcG9uc2UpOwogICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcih7IH0pOwogICAgIH0KIAotICAgIHZvaWQgZ2V0TmV0d29ya0xvYWRJbnRl
cm1lZGlhdGVJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2Fj
dGlvbkluZm9ybWF0aW9uPiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQorICAgIHZvaWQgZ2V0TmV0
d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8
V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+Jik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiAgICAgewogICAgICAgICBpZiAoYXV0byogaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZv
cm1hdGlvbkJ5SUQuZ2V0KGlkZW50aWZpZXIpKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGluZm8tPnRyYW5zYWN0aW9ucyk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVy
KHsgfSk7CiAgICAgfQogCi0gICAgdm9pZCB0YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJp
Y3MoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQorICAgIHZvaWQgdGFrZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYpPiYmIGNvbXBsZXRpb25IYW5k
bGVyKQogICAgIHsKICAgICAgICAgaWYgKGF1dG8gaW5mbyA9IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQudGFrZShpZGVudGlmaWVyKSkKICAgICAgICAgICAgIHJldHVybiBjb21wbGV0aW9u
SGFuZGxlcihpbmZvLT5tZXRyaWNzKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsK
ICAgICB9CiAKLSAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb24oUmVzb3VyY2VMb2Fk
SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uJiYg
aW5mb3JtYXRpb24pCisgICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpOZXR3b3JrTG9h
ZEluZm9ybWF0aW9uJiYgaW5mb3JtYXRpb24pCiAgICAgewogICAgICAgICBBU1NFUlQoIW1fbmV0
d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgICAgICBt
X25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmFkZChpZGVudGlmaWVyLCBtYWtlVW5pcXVlPFdl
YkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24+KFdURk1vdmUoaW5mb3JtYXRpb24pKSk7CiAg
ICAgfQogCi0gICAgdm9pZCBhZGROZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyhSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0
cmljcyYgbWV0cmljcykKKyAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNz
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MmIG1ldHJpY3MpCiAgICAgewogICAgICAgICBBU1NFUlQo
bV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAg
ICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuZW5zdXJlKGlkZW50aWZpZXIsIFtdIHsK
QEAgLTE2MCwxMyArMTU5LDEzIEBAIHB1YmxpYzoKICAgICAgICAgfSkuaXRlcmF0b3ItPnZhbHVl
LT5tZXRyaWNzID0gbWV0cmljczsKICAgICB9CiAKLSAgICB2b2lkIHJlbW92ZU5ldHdvcmtMb2Fk
SW5mb3JtYXRpb24oUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQorICAgIHZvaWQg
cmVtb3ZlTmV0d29ya0xvYWRJbmZvcm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKICAgICB7CiAgICAgICAgIG1fbmV0d29ya0xvYWRJbmZvcm1hdGlv
bkJ5SUQucmVtb3ZlKGlkZW50aWZpZXIpOwogICAgIH0KIAotICAgIHN0ZDo6b3B0aW9uYWw8TmV0
d29ya0FjdGl2aXR5VHJhY2tlcj4gc3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQ
YWdlSWRlbnRpZmllciwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBib29sIGlz
VG9wUmVzb3VyY2UpOwotICAgIHZvaWQgc3RvcFRyYWNraW5nUmVzb3VyY2VMb2FkKFJlc291cmNl
TG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxl
dGlvbkNvZGUpOworICAgIHN0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gc3Rh
cnRUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSk7
CisgICAgdm9pZCBzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIHJlc291cmNlSUQsIE5ldHdvcmtBY3Rpdml0eVRyYWNrZXI6OkNvbXBsZXRp
b25Db2RlKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8V2ViQ29yZTo6QmxvYkRhdGFGaWxlUmVmZXJl
bmNlPj4gcmVzb2x2ZUJsb2JSZWZlcmVuY2VzKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzJik7CiAKQEAgLTE4NywxMiArMTg2LDEyIEBAIHB1YmxpYzoKICAgICB2b2lkIGNvb2tp
ZUFjY2VwdFBvbGljeUNoYW5nZWQoV2ViQ29yZTo6SFRUUENvb2tpZUFjY2VwdFBvbGljeSk7CiAK
ICAgICB2b2lkIGJyb2FkY2FzdENvbnNvbGVNZXNzYWdlKEpTQzo6TWVzc2FnZVNvdXJjZSwgSlND
OjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7Ci0gICAgUmVmUHRyPE5ldHdv
cmtSZXNvdXJjZUxvYWRlcj4gdGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRlcih1aW50NjRfdCByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiB0
YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cik7CiAKIHByaXZhdGU6CiAgICAgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoTmV0d29y
a1Byb2Nlc3MmLCBXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciwgUEFMOjpTZXNzaW9uSUQsIElQ
Qzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7CiAKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5l
Y3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAgICAgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uKiBzdG9yYWdlU2Vzc2lvbigpOwogCiAgICAgLy8gSVBDOjpDb25uZWN0aW9uOjpDbGllbnQK
QEAgLTIxMSwxNSArMjEwLDE1IEBAIHByaXZhdGU6CiAgICAgdm9pZCBsb2FkUGluZyhOZXR3b3Jr
UmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmKTsKICAgICB2b2lkIHByZWZldGNoRE5TKGNvbnN0IFN0
cmluZyYpOwogICAgIHZvaWQgc2VuZEgyUGluZyhOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVy
cyYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cGVjdGVkPFdURjo6U2Vjb25kcywgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvcj4mJik+JiYpOwotICAgIHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0
aW9uYWw8dWludDY0X3Q+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyYmKTsKLSAgICB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQodWludDY0
X3QgbG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOworICAg
IHZvaWQgcHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMmJik7CisgICAgdm9pZCBpc1Jlc291cmNlTG9hZEZpbmlzaGVkKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7
CiAKLSAgICB2b2lkIHJlbW92ZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIHZvaWQgcmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKTsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVu
dGlmaWVyKTsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViUGFnZVByb3h5SWRl
bnRpZmllciwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmll
cik7Ci0gICAgdm9pZCBjcm9zc09yaWdpblJlZGlyZWN0UmVjZWl2ZWQoUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgY29uc3QgVVJMJiByZWRpcmVjdFVSTCk7CisgICAgdm9pZCBjcm9zc09yaWdpblJl
ZGlyZWN0UmVjZWl2ZWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBV
UkwmIHJlZGlyZWN0VVJMKTsKICAgICB2b2lkIHN0YXJ0RG93bmxvYWQoRG93bmxvYWRJRCwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9B
cHBCb3VuZERvbWFpbj4sIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkTmFtZSA9IHsgfSk7Ci0gICAg
dm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIERvd25sb2FkSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBzdGQ6Om9wdGlvbmFsPE5h
dmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPik7CisgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNl
TG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElELCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwg
c3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4pOwogCiAgICAgdm9pZCBy
ZWdpc3RlclVSTFNjaGVtZXNBc0NPUlNFbmFibGVkKFZlY3RvcjxTdHJpbmc+JiYgc2NoZW1lcyk7
CiAKQEAgLTMyNyw3ICszMjYsNyBAQCBwcml2YXRlOgogICAgICAgICB7CiAgICAgICAgIH0KIAot
ICAgICAgICBSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgcGFnZUlELCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpCisgICAgICAg
IFJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBw
YWdlSUQsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEKQogICAg
ICAgICAgICAgOiBwYWdlSUQgeyBwYWdlSUQgfQogICAgICAgICAgICAgLCByZXNvdXJjZUlEIHsg
cmVzb3VyY2VJRCB9CiAgICAgICAgICAgICAsIG5ldHdvcmtBY3Rpdml0eSB7IE5ldHdvcmtBY3Rp
dml0eVRyYWNrZXI6OkxhYmVsOjpMb2FkUmVzb3VyY2UgfQpAQCAtMzM1LDcgKzMzNCw3IEBAIHBy
aXZhdGU6CiAgICAgICAgIH0KIAogICAgICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdl
SUQ7Ci0gICAgICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCB7IDAgfTsKKyAg
ICAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQ7CiAgICAg
ICAgIGJvb2wgaXNSb290QWN0aXZpdHkgeyBmYWxzZSB9OwogICAgICAgICBOZXR3b3JrQWN0aXZp
dHlUcmFja2VyIG5ldHdvcmtBY3Rpdml0eTsKICAgICB9OwpAQCAtMzQzLDEyICszNDIsMTIgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHN0b3BBbGxOZXR3b3JrQWN0aXZpdHlUcmFja2luZygpOwogICAg
IHZvaWQgc3RvcEFsbE5ldHdvcmtBY3Rpdml0eVRyYWNraW5nRm9yUGFnZShXZWJDb3JlOjpQYWdl
SWRlbnRpZmllcik7CiAgICAgc2l6ZV90IGZpbmRSb290TmV0d29ya0FjdGl2aXR5KFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyKTsKLSAgICBzaXplX3QgZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIo
UmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlEKTsKKyAgICBzaXplX3QgZmluZE5ldHdv
cmtBY3Rpdml0eVRyYWNrZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291
cmNlSUQpOwogCiAgICAgdm9pZCBoYXNVcGxvYWRTdGF0ZUNoYW5nZWQoYm9vbCk7CiAKICAgICB2
b2lkIHNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVy
LCBXZWJDb3JlOjpMb2FkU2NoZWR1bGluZ01vZGUpOwotICAgIHZvaWQgcHJpb3JpdGl6ZVJlc291
cmNlTG9hZHMoVmVjdG9yPFJlc291cmNlTG9hZElkZW50aWZpZXI+KTsKKyAgICB2b2lkIHByaW9y
aXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+Jik7CiAKICNpZiBFTkFCTEUoQVBQTEVfUEFZX1JFTU9URV9VSSkKICAgICBXZWJQ
YXltZW50Q29vcmRpbmF0b3JQcm94eSYgcGF5bWVudENvb3JkaW5hdG9yKCk7CkBAIC0zNzUsNyAr
Mzc0LDcgQEAgcHJpdmF0ZToKICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPFdlYkNvcmU6OkJs
b2JEYXRhRmlsZVJlZmVyZW5jZT4+IG1fYmxvYkRhdGFGaWxlUmVmZXJlbmNlczsKICAgICBWZWN0
b3I8UmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBtX25ldHdvcmtBY3Rpdml0eVRyYWNr
ZXJzOwogCi0gICAgSGFzaE1hcDxSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBzdGQ6OnVuaXF1ZV9w
dHI8V2ViQ29yZTo6TmV0d29ya0xvYWRJbmZvcm1hdGlvbj4+IG1fbmV0d29ya0xvYWRJbmZvcm1h
dGlvbkJ5SUQ7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IHN0ZDo6dW5pcXVlX3B0cjxXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uPj4gbV9uZXR3
b3JrTG9hZEluZm9ybWF0aW9uQnlJRDsKIAogCiAjaWYgVVNFKExJQldFQlJUQykKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDE1ZGE2YWJmYzUzODY5ZmQ0
Mzg2MjQ3Njk2ZmVhNTExYjZhOWRiOTIuLjc2ODJiYTliYjI5ZmY2ZjA4ZWJlYmI5NDNmYzg5NDU0
NjczNGMyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgpA
QCAtMjYsMTYgKzI2LDE2IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBQZXJmb3JtU3luY2hyb25vdXNMb2FkKFdlYktpdDo6
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVzb3VyY2VMb2FkUGFyYW1ldGVycykgLT4g
KFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3IsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiBkYXRhKSBTeW5jaHJvbm91cwogICAgIFRlc3RQcm9j
ZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0ZvclN5bmNSZXBseShXZWJLaXQ6Oldl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlEKSAtPiAoYm9vbCBoYW5kbGVkKSBTeW5jaHJvbm91
cwogICAgIExvYWRQaW5nKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgcmVz
b3VyY2VMb2FkUGFyYW1ldGVycykKLSAgICBSZW1vdmVMb2FkSWRlbnRpZmllcih1aW50NjRfdCBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorICAgIFJlbW92ZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQogICAgIFBh
Z2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJRCkKICAgICBC
cm93c2luZ0NvbnRleHRSZW1vdmVkKFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQ
YWdlUHJveHlJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBXZWJDb3JlOjpG
cmFtZUlkZW50aWZpZXIgd2ViRnJhbWVJRCkKICAgICBQcmVmZXRjaEROUyhTdHJpbmcgaG9zdG5h
bWUpCiAgICAgU2VuZEgyUGluZyhXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
IHBhcmFtZXRlcnMpIC0+IChFeHBlY3RlZDxTZWNvbmRzLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9y
PiByZXN1bHQpIEFzeW5jCi0gICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKLSAgICBJc1Jlc291cmNlTG9hZEZpbmlzaGVkKHVpbnQ2
NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChib29sIGlzRmluaXNoZWQpIEFzeW5jCisg
ICAgUHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycyBsb2FkUGFyYW1ldGVycyk7CisgICAgSXNSZXNvdXJjZUxvYWRGaW5pc2hl
ZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikgLT4gKGJvb2wgaXNGaW5pc2hlZCkgQXN5bmMKIAogICAgIFN0YXJ0RG93bmxvYWQoV2ViS2l0
OjpEb3dubG9hZElEIGRvd25sb2FkSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0
LCBlbnVtOmJvb2wgc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5hdmlnYXRpbmdUb0FwcEJvdW5kRG9t
YWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBTdHJpbmcgc3VnZ2VzdGVkTmFtZSkK
LSAgICBDb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQodWludDY0X3QgbWFpblJlc291
cmNlTG9hZElkZW50aWZpZXIsIFdlYktpdDo6RG93bmxvYWRJRCBkb3dubG9hZElELCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgZW51bTpib29sIHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbikKKyAgICBDb252ZXJ0TWFpblJl
c291cmNlTG9hZFRvRG93bmxvYWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBXZWJLaXQ6OkRvd25sb2Fk
SUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIGVudW06Ym9vbCBzdGQ6Om9wdGlvbmFsPFdlYktp
dDo6TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21h
aW4pCiAKICAgICBDb29raWVzRm9yRE9NKFVSTCBmaXJzdFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6
U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVybCwgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgZW51bTpib29sIFdl
YkNvcmU6OkluY2x1ZGVTZWN1cmVDb29raWVzIGluY2x1ZGVTZWN1cmVDb29raWVzLCBlbnVtOmJv
b2wgV2ViQ29yZTo6U2hvdWxkQXNrSVRQIHNob3VsZEFza0lUUCwgZW51bTpib29sIFdlYkNvcmU6
OlNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nKSAtPiAoU3RyaW5nIGNvb2tpZVN0cmluZywgYm9vbCBkaWRBY2Nlc3NT
ZWN1cmVDb29raWVzKSBTeW5jaHJvbm91cwogICAgIFNldENvb2tpZXNGcm9tRE9NKFVSTCBmaXJz
dFBhcnR5LCBzdHJ1Y3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvIHNhbWVTaXRlSW5mbywgVVJMIHVy
bCwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIFdlYkNvcmU6OlBhZ2VJZGVudGlm
aWVyIHBhZ2VJRCwgZW51bTpib29sIFdlYkNvcmU6OlNob3VsZEFza0lUUCBzaG91bGRBc2tJVFAs
IFN0cmluZyBjb29raWVTdHJpbmcsIGVudW06Ym9vbCBXZWJDb3JlOjpTaG91bGRSZWxheFRoaXJk
UGFydHlDb29raWVCbG9ja2luZyBzaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZykK
QEAgLTc5LDkgKzc5LDkgQEAgbWVzc2FnZXMgLT4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFJlbW92ZU9yaWdpbkFjY2Vzc0FsbG93TGlzdEVudHJ5
KFN0cmluZyBzb3VyY2VPcmlnaW4sIFN0cmluZyBkZXN0aW5hdGlvblByb3RvY29sLCBTdHJpbmcg
ZGVzdGluYXRpb25Ib3N0LCBib29sIGFsbG93RGVzdGluYXRpb25TdWJkb21haW5zKTsKICAgICBS
ZXNldE9yaWdpbkFjY2Vzc0FsbG93TGlzdHMoKTsKIAotICAgIEdldE5ldHdvcmtMb2FkSW5mb3Jt
YXRpb25SZXNwb25zZSh1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkgU3luY2hyb25vdXMKLSAgICBHZXROZXR3b3Jr
TG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZp
ZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IHRy
YW5zYWN0aW9ucykgU3luY2hyb25vdXMKLSAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1l
dHJpY3ModWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6Ok5ldHdv
cmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljcykgU3luY2hyb25vdXMKKyAgICBHZXROZXR3b3Jr
TG9hZEluZm9ybWF0aW9uUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlKSBTeW5jaHJvbm91cworICAgIEdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3Jt
YXRpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50
aWZpZXIpIC0+IChWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+
IHRyYW5zYWN0aW9ucykgU3luY2hyb25vdXMKKyAgICBUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlv
bk1ldHJpY3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElk
ZW50aWZpZXIpIC0+IChXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3Mp
IFN5bmNocm9ub3VzCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgRXN0YWJsaXNo
U1dDb250ZXh0Q29ubmVjdGlvbihXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgd2ViUGFn
ZVByb3h5SUQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIGRvbWFpbikgLT4gKCkgQXN5bmMK
QEAgLTEwOCw1ICsxMDgsNSBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgVXBkYXRlQWN0aXZlUGFnZXMoU3RyaW5nIG5hbWUs
IFZlY3RvcjxTdHJpbmc+IGFjdGl2ZVBhZ2VzT3JpZ2lucywgYXVkaXRfdG9rZW5fdCBhdWRpdFRv
a2VuKQogI2VuZGlmCiAgICAgU2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlELCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6TG9hZFNjaGVk
dWxpbmdNb2RlIG1vZGUpCi0gICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9yPHVpbnQ2
NF90PiBsb2FkSWRlbnRpZmllcnMpCisgICAgUHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoVmVjdG9y
PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbG9hZElkZW50aWZpZXJzKQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRl
eCA0ZGNiMzJjZGI3NTc1NjRiZmIwMjM0NTVmOWZmY2JhYWIzZGY2MWZjLi5jMzMzMjA3YTc2NjVi
MWIzZTc0NmM5NjkyOTI2NGJhZmRmOGNjYzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcApAQCAtMjg0MSw5ICsyODQxLDEyIEBAIFJUQ0Rh
dGFDaGFubmVsUmVtb3RlTWFuYWdlclByb3h5JiBOZXR3b3JrUHJvY2Vzczo6cnRjRGF0YUNoYW5u
ZWxQcm94eSgpCiB9CiAjZW5kaWYKIAotdm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRG
b3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJv
Y2Vzc0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmll
cj4pPiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxv
YWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNl
UHJvY2Vzc0lkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyPiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKLSAgICBBU1NFUlQocmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAg
aWYgKCFyZXNvdXJjZUxvYWRJZGVudGlmaWVyKSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICByZXR1cm4gY29tcGxldGlvbkhhbmRsZXIoc3RkOjpudWxsb3B0KTsKKyAg
ICB9CiAgICAgYXV0byogY29ubmVjdGlvbiA9IHdlYlByb2Nlc3NDb25uZWN0aW9uKHNvdXJjZVBy
b2Nlc3NJZGVudGlmaWVyKTsKICAgICBpZiAoIWNvbm5lY3Rpb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwpAQCAtMjg1Miw3ICsyODU1LDcgQEAgdm9p
ZCBOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29y
ZTo6UHJvY2Vzc0lkZW50aWZpZXIKICAgICBpZiAoIXNlc3Npb24pCiAgICAgICAgIHJldHVybiBj
b21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCi0gICAgYXV0byBsb2FkZXIgPSBjb25u
ZWN0aW9uLT50YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKHJlc291cmNlTG9hZElkZW50aWZpZXIp
OworICAgIGF1dG8gbG9hZGVyID0gY29ubmVjdGlvbi0+dGFrZU5ldHdvcmtSZXNvdXJjZUxvYWRl
cigqcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpCiAgICAgICAgIHJl
dHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKaW5kZXggMTA2MDIyY2U2ODUxOTc4MzBm
MjY1YWFiNjUzZDg0ZTAwZjg1MWNkOS4uYTY0YTAxZmY0ZmJkMmFlZTM2OWNlM2QxMzVkZTg3OGI5
NzQ0NTlkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuaApAQCAtNDIzLDcgKzQyMyw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBkaWRSZWNlaXZlU3lu
Y05ldHdvcmtQcm9jZXNzTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJUEM6OkRlY29kZXImLCBV
bmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYpOwogICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9j
ZXNzKE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgY3JlYXRl
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIs
IFBBTDo6U2Vzc2lvbklELCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8SVBD
OjpBdHRhY2htZW50PiYmLCBXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KT4mJik7Ci0g
ICAgdm9pZCBwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNz
SWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYpOworICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQ
cm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lk
ZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0
aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CiAKICAgICB2b2lkIGZl
dGNoV2Vic2l0ZURhdGEoUEFMOjpTZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+
LCBPcHRpb25TZXQ8V2Vic2l0ZURhdGFGZXRjaE9wdGlvbj4sIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoV2Vic2l0ZURhdGEmJik+JiYpOwogICAgIHZvaWQgZGVsZXRlV2Vic2l0ZURhdGEoUEFMOjpT
ZXNzaW9uSUQsIE9wdGlvblNldDxXZWJzaXRlRGF0YVR5cGU+LCBXYWxsVGltZSBtb2RpZmllZFNp
bmNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggZDU5
NTg5MzZmYWUxMWVkOGJiMmEzNzNhN2Q0ZmYwYmQ3ZmIzNGY1MS4uOWFhOWVhYTlmMTMxYjAxZjY2
OWI1Mzg4NTAwMjI2ZTQzNTJhMWQwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0xOTYsNyArMTk2LDcg
QEAgbWVzc2FnZXMgLT4gTmV0d29ya1Byb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIENsZWFy
QXBwUHJpdmFjeVJlcG9ydFRlc3RpbmdEYXRhKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkgLT4g
KCkgQXN5bmMKICNlbmRpZgogCi0gICAgUHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIo
V2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHVpbnQ2
NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYktpdDo6TmV0
d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IG5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
KSBBc3luYworICAgIFByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlBy
b2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gcmVzb3VyY2VMb2FkSWRlbnRpZmllcikg
LT4gKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4g
bmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXIpIEFzeW5jCiAKICAgICBBZGRXZWJQYWdlTmV0
d29ya1BhcmFtZXRlcnMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBXZWJLaXQ6OldlYlBhZ2VQ
cm94eUlkZW50aWZpZXIgcGFnZUlELCBXZWJLaXQ6OldlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyBw
YXJhbWV0ZXJzKQogICAgIFJlbW92ZVdlYlBhZ2VOZXR3b3JrUGFyYW1ldGVycyhQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQsIFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRNYXAuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmNwcAppbmRleCBkYjk3ZjU1MmZlZTdhMzg5MTY1MWYzYmRkNmU0YWRlZTYyNDdhMmU5
Li5mOWEyYWEyMGRiNDM5MDc2YzQ0ZjIwMWE2ZGJkZGFiYjNkN2M4Y2JkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5j
cHAKQEAgLTM5LDcgKzM5LDcgQEAgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6fk5ldHdvcmtSZXNv
dXJjZUxvYWRNYXAoKQogICAgIGNsZWFyKCk7CiB9CiAKLU5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6
Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQoUmVzb3VyY2VM
b2FkSWRlbnRpZmllciBpZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPiYmIGxv
YWRlcikKK05ldHdvcmtSZXNvdXJjZUxvYWRNYXA6Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3b3Jr
UmVzb3VyY2VMb2FkTWFwOjphZGQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+JiYgbG9hZGVyKQogewogICAgIEFT
U0VSVCghbV9sb2FkZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKICAgICBib29sIGhhc1VwbG9h
ZCA9IGxvYWRlci0+b3JpZ2luYWxSZXF1ZXN0KCkuaGFzVXBsb2FkKCk7CkBAIC00OSw3ICs0OSw3
IEBAIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6Ok1hcFR5cGU6OkFkZFJlc3VsdCBOZXR3b3JrUmVz
b3VyY2VMb2FkTWFwOjphZGQoUmVzb3VyY2VMCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotYm9v
bCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBp
ZGVudGlmaWVyKQorYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuICEhdGFr
ZShpZGVudGlmaWVyKTsKIH0KQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBOZXR3b3JrUmVzb3VyY2VM
b2FkTWFwOjpjbGVhcigpCiAgICAgc2V0SGFzVXBsb2FkKGZhbHNlKTsKIH0KIAotUmVmUHRyPE5l
dHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6dGFrZShSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpCitSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVy
PiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGF1dG8gbG9hZGVyID0gbV9sb2FkZXJzLnRha2Uo
aWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpCkBAIC03Miw3ICs3Miw3IEBAIFJlZlB0cjxO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI+IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnRha2UoUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllCiAgICAgcmV0dXJuIGxvYWRlcjsKIH0KIAotTmV0d29ya1Jlc291cmNl
TG9hZGVyKiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpnZXQoUmVzb3VyY2VMb2FkSWRlbnRpZmll
ciBpZGVudGlmaWVyKSBjb25zdAorTmV0d29ya1Jlc291cmNlTG9hZGVyKiBOZXR3b3JrUmVzb3Vy
Y2VMb2FkTWFwOjpnZXQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fbG9hZGVycy5nZXQoaWRlbnRpZmllcik7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRNYXAuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9h
ZE1hcC5oCmluZGV4IDBlZjI3OGMzNDA1Y2RkZTZhODNmYmYwYWI3MmZmYzQ3YzE0ZDMxMTcuLjcx
NjBkZGUxZDU3YzAwZjE1ZmI0YWMzNWU0MTgyZTNlY2M5ODViMTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5oCkBAIC0y
NSw2ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRl
IDx3dGYvSGFzaE1hcC5oPgogCkBAIC0zNywyNCArMzgsMjIgQEAgbmFtZXNwYWNlIFdlYktpdCB7
CiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkZXI7CiBjbGFzcyBOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2VzczsKIAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwot
CiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwIHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIEhh
c2hNYXA8UmVzb3VyY2VMb2FkSWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4+
IE1hcFR5cGU7CisgICAgdXNpbmcgTWFwVHlwZSA9IEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPj47CiAgICAgTmV0d29y
a1Jlc291cmNlTG9hZE1hcChGdW5jdGlvbjx2b2lkKGJvb2wgaGFzVXBsb2FkKT4mJik7CiAgICAg
fk5ldHdvcmtSZXNvdXJjZUxvYWRNYXAoKTsKIAogICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsg
cmV0dXJuIG1fbG9hZGVycy5pc0VtcHR5KCk7IH0KLSAgICBib29sIGNvbnRhaW5zKFJlc291cmNl
TG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QgeyByZXR1cm4gbV9sb2FkZXJzLmNvbnRh
aW5zKGlkZW50aWZpZXIpOyB9CisgICAgYm9vbCBjb250YWlucyhXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QgeyByZXR1cm4gbV9sb2FkZXJzLmNvbnRh
aW5zKGlkZW50aWZpZXIpOyB9CiAgICAgTWFwVHlwZTo6aXRlcmF0b3IgYmVnaW4oKSB7IHJldHVy
biBtX2xvYWRlcnMuYmVnaW4oKTsgfQogICAgIE1hcFR5cGU6OlZhbHVlc0l0ZXJhdG9yUmFuZ2Ug
dmFsdWVzKCkgeyByZXR1cm4gbV9sb2FkZXJzLnZhbHVlcygpOyB9CiAgICAgdm9pZCBjbGVhcigp
OwogCi0gICAgTWFwVHlwZTo6QWRkUmVzdWx0IGFkZChSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBS
ZWY8TmV0d29ya1Jlc291cmNlTG9hZGVyPiYmKTsKLSAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIq
IGdldChSZXNvdXJjZUxvYWRJZGVudGlmaWVyKSBjb25zdDsKLSAgICBib29sIHJlbW92ZShSZXNv
dXJjZUxvYWRJZGVudGlmaWVyKTsKLSAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVyPiB0
YWtlKFJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIE1hcFR5cGU6OkFkZFJlc3VsdCBhZGQo
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9h
ZGVyPiYmKTsKKyAgICBOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIGdldChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpIGNvbnN0OworICAgIGJvb2wgcmVtb3ZlKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgUmVmUHRyPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4g
dGFrZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgYm9vbCBoYXNV
cGxvYWQoKSBjb25zdCB7IHJldHVybiBtX2hhc1VwbG9hZDsgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzLmgKaW5kZXggY2NjOGI1M2NmOGRlYjhjMGM1YWMxZGY2MjEyOTJmNGM5ZGY2NWVkYy4uNGNi
ODVjYmEyMDZiODAyODdkNDJiNWJlNTZiY2M4ZTkzMjYxMjU1MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFt
ZXRlcnMuaApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvQ3Jvc3NPcmlnaW5B
Y2Nlc3NDb250cm9sLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9Dcm9zc09yaWdpbkVtYmVkZGVyUG9s
aWN5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GZXRjaE9wdGlvbnMuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9TZWNvbmRzLmg+
CiAKIG5hbWVzcGFjZSBJUEMgewpAQCAtNDIsOCArNDMsNiBAQCBjbGFzcyBFbmNvZGVyOwogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlm
aWVyOwotCiBjbGFzcyBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyA6IHB1YmxpYyBOZXR3
b3JrTG9hZFBhcmFtZXRlcnMgewogcHVibGljOgogICAgIHZvaWQgZW5jb2RlKElQQzo6RW5jb2Rl
ciYpIGNvbnN0OwpAQCAtNTEsNyArNTAsNyBAQCBwdWJsaWM6CiAKICAgICBSZWZQdHI8V2ViQ29y
ZTo6U2VjdXJpdHlPcmlnaW4+IHBhcmVudE9yaWdpbigpIGNvbnN0OwogCi0gICAgbXV0YWJsZSBS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgeyAwIH07CisgICAgbXV0YWJsZSBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsKICAgICBWZWN0b3I8UmVm
UHRyPFNhbmRib3hFeHRlbnNpb24+PiByZXF1ZXN0Qm9keVNhbmRib3hFeHRlbnNpb25zOyAvLyBD
cmVhdGVkIGF1dG9tYXRpY2FsbHkgZm9yIHRoZSBzZW5kZXIuCiAgICAgUmVmUHRyPFNhbmRib3hF
eHRlbnNpb24+IHJlc291cmNlU2FuZGJveEV4dGVuc2lvbjsgLy8gQ3JlYXRlZCBhdXRvbWF0aWNh
bGx5IGZvciB0aGUgc2VuZGVyLgogICAgIG11dGFibGUgU2Vjb25kcyBtYXhpbXVtQnVmZmVyaW5n
VGltZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jl
c291cmNlTG9hZGVyLmNwcAppbmRleCA4M2U4M2JjZTg0ZTdmNDk4Mzg4ZTY5Mjg0ZTkwODEzMjJl
YmI4YzQ4Li4yMzg2M2JmN2VmMzc3YjRhYTRmOWM3NjEzMjgwMTE4MmYxODZiYjUyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2Fk
ZXIuY3BwCkBAIC02Niw4ICs2Niw4IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9QcmV2aWV3Q29udmVy
dGVyLmg+CiAjZW5kaWYKIAotI2RlZmluZSBMT0FERVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJF
TEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdlUHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFn
ZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2
NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGluYXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRd
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdl
UHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViUGFnZUlELnRvVUludDY0KCksIG1f
cGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVy
LCBpc01haW5SZXNvdXJjZSgpLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9w
dGlvbnMuZGVzdGluYXRpb24pLCBpc1N5bmNocm9ub3VzKCksICMjX19WQV9BUkdTX18pCi0jZGVm
aW5lIExPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1Io
TmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJ
dTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGlzTWFp
blJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJvbm91cz0lZF0gTmV0d29ya1Jl
c291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRv
VUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJz
LndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIsIGlzTWFpblJl
c291cmNlKCksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3BhcmFtZXRlcnMub3B0aW9ucy5kZXN0
aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgTE9BREVS
X1JFTEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbcGFnZVBy
b3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1
NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3VyY2U9JWQsIGRlc3RpbmF0
aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0
aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJz
LndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgp
LCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpLCBpc01haW5SZXNvdXJjZSgpLCBz
dGF0aWNfY2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24pLCBp
c1N5bmNocm9ub3VzKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIExPQURFUl9SRUxFQVNFX0xP
R19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoTmV0d29yaywgIiVwIC0gW3BhZ2VQ
cm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJ
dTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIsIGlzTWFpblJlc291cmNlPSVkLCBkZXN0aW5h
dGlvbj0ldSwgaXNTeW5jaHJvbm91cz0lZF0gTmV0d29ya1Jlc291cmNlTG9hZGVyOjoiIGZtdCwg
dGhpcywgbV9wYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVy
cy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQo
KSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSwgaXNNYWluUmVzb3VyY2UoKSwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRlc3RpbmF0aW9uKSwg
aXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVz
aW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtNTI0LDcgKzUyNCw3IEBAIHZvaWQgTmV0d29ya1Jl
c291cmNlTG9hZGVyOjphYm9ydCgpCiAgICAgY2xlYW51cChMb2FkUmVzdWx0OjpDYW5jZWwpOwog
fQogCi12b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6dHJhbnNmZXJUb05ld1dlYlByb2Nlc3Mo
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIG5ld0Nvbm5lY3Rpb24sIFJlc291cmNlTG9h
ZElkZW50aWZpZXIgbmV3Q29yZUlkZW50aWZpZXIpCit2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRl
cjo6dHJhbnNmZXJUb05ld1dlYlByb2Nlc3MoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mm
IG5ld0Nvbm5lY3Rpb24sIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBuZXdDb3Jl
SWRlbnRpZmllcikKIHsKICAgICBtX2Nvbm5lY3Rpb24gPSBuZXdDb25uZWN0aW9uOwogICAgIG1f
cGFyYW1ldGVycy5pZGVudGlmaWVyID0gbmV3Q29yZUlkZW50aWZpZXI7CkBAIC0xMzk2LDE3ICsx
Mzk2LDggQEAgc3RhdGljIFN0cmluZyBlc2NhcGVGb3JKU09OKFN0cmluZyBzKQogICAgIHJldHVy
biBzLnJlcGxhY2UoJ1xcJywgIlxcXFwiKS5yZXBsYWNlKCciJywgIlxcXCIiKTsKIH0KIAotc3Rh
dGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4m
IHZhbHVlKQotewotICAgIHJldHVybiB2YWx1ZSA/IFN0cmluZzo6bnVtYmVyKHZhbHVlLnZhbHVl
KCkpIDogU3RyaW5nKCJOb25lIl9zKTsKLX0KLQotc3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpT
T04oY29uc3Qgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+JiB2YWx1ZSkKLXsKLSAgICBy
ZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS0+dG9VSW50NjQoKSkgOiBTdHJpbmco
Ik5vbmUiX3MpOwotfQotCi1zdGF0aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBzdGQ6
Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiYgdmFsdWUpCit0ZW1wbGF0ZTx0eXBlbmFtZSBJZGVu
dGlmaWVyVHlwZT4KK3N0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0ZDo6b3B0
aW9uYWw8T2JqZWN0SWRlbnRpZmllcjxJZGVudGlmaWVyVHlwZT4+JiB2YWx1ZSkKIHsKICAgICBy
ZXR1cm4gdmFsdWUgPyBTdHJpbmc6Om51bWJlcih2YWx1ZS0+dG9VSW50NjQoKSkgOiBTdHJpbmco
Ik5vbmUiX3MpOwogfQpAQCAtMTQyMSw3ICsxNDEyLDcgQEAgdm9pZCBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKCkgY29uc3QKICAgICBsb2dDb29raWVJbmZvcm1h
dGlvbihtX2Nvbm5lY3Rpb24sICJOZXR3b3JrUmVzb3VyY2VMb2FkZXIiLCByZWludGVycHJldF9j
YXN0PGNvbnN0IHZvaWQqPih0aGlzKSwgKm5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgb3JpZ2luYWxS
ZXF1ZXN0KCkuZmlyc3RQYXJ0eUZvckNvb2tpZXMoKSwgU2FtZVNpdGVJbmZvOjpjcmVhdGUob3Jp
Z2luYWxSZXF1ZXN0KCkpLCBvcmlnaW5hbFJlcXVlc3QoKS51cmwoKSwgb3JpZ2luYWxSZXF1ZXN0
KCkuaHR0cFJlZmVycmVyKCksIGZyYW1lSUQoKSwgcGFnZUlEKCksIGNvcmVJZGVudGlmaWVyKCkp
OwogfQogCi1zdGF0aWMgdm9pZCBsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNv
bnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3Qg
U2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpv
cHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBp
ZGVudGlmaWVyKQorc3RhdGljIHZvaWQgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVs
LCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNv
bnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0
ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25hbDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IGlkZW50aWZpZXIpCiB7CiAgICAgQVNTRVJUKE5l
dHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oY29ubmVjdGlv
biwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgpKSk7CiAKQEAgLTE0NDgsNyArMTQz
OSw3IEBAIHN0YXRpYyB2b2lkIGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvCiAjdW5kZWYgTE9DQUxfTE9HX0lGX0FMTE9X
RUQKIH0KIAotc3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb25JbnRlcm5hbChOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwg
Y29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25z
dCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFt
ZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8
dWludDY0X3Q+IGlkZW50aWZpZXIpCitzdGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbklu
dGVybmFsKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25zdCBT
dHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5l
dHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwmIGZp
cnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25z
dCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlk
ZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwg
c3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IGlkZW50aWZp
ZXIpCiB7CiAgICAgQVNTRVJUKE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkTG9nQ29va2ll
SW5mb3JtYXRpb24oY29ubmVjdGlvbiwgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLnNlc3Npb25JRCgp
KSk7CiAKQEAgLTE1MDksNyArMTUwMCw3IEBAIHN0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9ybWF0
aW9uSW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3RpCiAjdW5k
ZWYgTE9DQUxfTE9HX0lGX0FMTE9XRUQKIH0KIAotdm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6
OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25u
ZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNv
bnN0IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBV
UkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50
aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3Rk
OjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9h
ZGVyOjpsb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYg
Y29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwgY29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0
LCBjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29u
c3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29u
c3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJ
ZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQs
IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBpZGVudGlm
aWVyKQogewogICAgIEFTU0VSVChzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihjb25uZWN0aW9u
LCBuZXR3b3JrU3RvcmFnZVNlc3Npb24uc2Vzc2lvbklEKCkpKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKaW5kZXggZmIx
YmYwZTVjMWFkYjQ0MTczMDVmODYzYTBmYjFjNTZjOGMxMjQ2MC4uZjIyYjRjYzMwNzRjYmQ2ODE1
MmNmNDk1MzZjMGYwZThiM2EwNGNmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCkBAIC04NSw3ICs4NSw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHN0YXJ0KCk7CiAgICAgdm9pZCBhYm9ydCgpOwogCi0gICAgdm9pZCB0cmFu
c2ZlclRvTmV3V2ViUHJvY2VzcyhOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFJlc291
cmNlTG9hZElkZW50aWZpZXIpOworICAgIHZvaWQgdHJhbnNmZXJUb05ld1dlYlByb2Nlc3MoTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpOwogCiAgICAgLy8gTWVzc2FnZSBoYW5kbGVycy4KICAgICB2b2lkIGRpZFJlY2VpdmVO
ZXR3b3JrUmVzb3VyY2VMb2FkZXJNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2Rl
ciYpOwpAQCAtOTcsNyArOTcsNyBAQCBwdWJsaWM6CiAKICAgICBOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2VzcyYgY29ubmVjdGlvblRvV2ViUHJvY2VzcygpIGNvbnN0IHsgcmV0dXJuIG1fY29u
bmVjdGlvbjsgfQogICAgIFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCgpIGNvbnN0IHsgcmV0dXJu
IG1fY29ubmVjdGlvbi0+c2Vzc2lvbklEKCk7IH0KLSAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVy
IGNvcmVJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLmlkZW50aWZpZXI7
IH0KKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgY29yZUlkZW50aWZpZXIo
KSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllcjsgfQogICAgIFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciBmcmFtZUlEKCkgY29uc3QgeyByZXR1cm4gbV9wYXJhbWV0ZXJzLndl
YkZyYW1lSUQ7IH0KICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdlSUQoKSBjb25zdCB7
IHJldHVybiBtX3BhcmFtZXRlcnMud2ViUGFnZUlEOyB9CiAgICAgY29uc3QgTmV0d29ya1Jlc291
cmNlTG9hZFBhcmFtZXRlcnMmIHBhcmFtZXRlcnMoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRl
cnM7IH0KQEAgLTEzMiw3ICsxMzIsNyBAQCBwdWJsaWM6CiAKICNpZiBFTkFCTEUoSU5URUxMSUdF
TlRfVFJBQ0tJTkdfUFJFVkVOVElPTikgJiYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECiAgICAgc3Rh
dGljIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3MmLCBQQUw6OlNlc3Npb25JRCk7Ci0gICAgc3RhdGljIHZvaWQgbG9nQ29va2llSW5m
b3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmLCBjb25zdCBTdHJpbmcmIGxh
YmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiYsIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNp
dGVJbmZvJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlBhZ2VJ
ZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDx1aW50NjRfdD4gaWRlbnRpZmllcik7CisgICAgc3Rh
dGljIHZvaWQgbG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0
IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYsIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwg
Y29uc3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvJiwgY29uc3QgVVJMJiwgY29uc3QgU3RyaW5nJiBy
ZWZlcnJlciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+LCBzdGQ6Om9w
dGlvbmFsPFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyPiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+KTsKICNlbmRpZgogCiAgICAgdm9pZCBkaXNhYmxlRXh0
cmFOZXR3b3JrTG9hZE1ldHJpY3NDYXB0dXJlKCkgeyBtX3Nob3VsZENhcHR1cmVFeHRyYU5ldHdv
cmtMb2FkTWV0cmljcyA9IGZhbHNlOyB9CkBAIC0xNTMsNyArMTUzLDcgQEAgcHJpdmF0ZToKIAog
ICAgIC8vIElQQzo6TWVzc2FnZVNlbmRlcgogICAgIElQQzo6Q29ubmVjdGlvbiogbWVzc2FnZVNl
bmRlckNvbm5lY3Rpb24oKSBjb25zdCBvdmVycmlkZTsKLSAgICB1aW50NjRfdCBtZXNzYWdlU2Vu
ZGVyRGVzdGluYXRpb25JRCgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fcGFyYW1ldGVycy5p
ZGVudGlmaWVyOyB9CisgICAgdWludDY0X3QgbWVzc2FnZVNlbmRlckRlc3RpbmF0aW9uSUQoKSBj
b25zdCBvdmVycmlkZSB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgp
OyB9CiAKICAgICBib29sIGNhblVzZUNhY2hlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIGNvbnN0OwogICAgIGJvb2wgY2FuVXNlQ2FjaGVkUmVkaXJlY3QoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1Njcmlw
dHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNz
YWdlcy5weQppbmRleCBkYzc2M2JmMWU4MzQ0YmI1ZjNkMTdlNjQ0OTk3OWY5NjFmZmViNmU5Li5l
NWNmZTBkYTcxYzEyOTkyYzk2Njg2MDBmYzc3OWRlZWJmNzJiMTViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9XZWJLaXQv
U2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTI5Nyw2ICsyOTcsNyBAQCBkZWYgdHlwZXNf
dGhhdF9jYW5ub3RfYmVfZm9yd2FyZF9kZWNsYXJlZCgpOgogICAgICAgICAnV2ViQ29yZTo6UmVh
bHRpbWVNZWRpYVNvdXJjZUlkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29yZTo6UmVuZGVyaW5n
TW9kZScsCiAgICAgICAgICdXZWJDb3JlOjpSZW5kZXJpbmdSZXNvdXJjZUlkZW50aWZpZXInLAor
ICAgICAgICAnV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyJywKICAgICAgICAgJ1dl
YkNvcmU6OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXInLAogICAgICAgICAnV2ViQ29yZTo6U2VydmljZVdvcmtl
ckpvYklkZW50aWZpZXInLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFz
a1BhcmFtZXRlcnMuY3BwCmluZGV4IGQ1Y2EzYmJmZTA4MGJlN2U4NzAyYzUyMjU1Yjk1YjliOGVi
OTllYjYuLjU3MzdkOWM4M2MxNTFiOGU4NDYyMWE3MmIxM2ZlYWRlOThhZTllNzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5jcHAKQEAgLTUy
LDcgKzUyLDcgQEAgc3RkOjpvcHRpb25hbDxVUkxTY2hlbWVUYXNrUGFyYW1ldGVycz4gVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY28KICAgICBpZiAoIWhhbmRsZXJJZGVu
dGlmaWVyKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogICAgIAotICAgIHN0ZDo6b3B0
aW9uYWw8dWludDY0X3Q+IHRhc2tJZGVudGlmaWVyOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiB0YXNrSWRlbnRpZmllcjsKICAgICBkZWNvZGVy
ID4+IHRhc2tJZGVudGlmaWVyOwogICAgIGlmICghdGFza0lkZW50aWZpZXIpCiAgICAgICAgIHJl
dHVybiBzdGQ6Om51bGxvcHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxT
Y2hlbWVUYXNrUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFz
a1BhcmFtZXRlcnMuaAppbmRleCA2NzgyMzk2YjBmOWQwOWIzYmVkMmVmNDliY2JkNWNjOTUzYzZk
NTk1Li4xYjRkOWViMjdkZDBiMWU4NjA0N2Y3YWMzYWQwNjcwM2M1M2YzM2ZkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVUYXNrUGFyYW1ldGVycy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKQEAgLTI2LDYgKzI2
LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRnJhbWVJbmZvRGF0YS5oIgorI2luY2x1
ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9SZXNvdXJjZVJlcXVlc3QuaD4KIAogbmFtZXNwYWNlIElQQyB7CkBAIC0zNyw3ICszOCw3IEBA
IG5hbWVzcGFjZSBXZWJLaXQgewogCiBzdHJ1Y3QgVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgewog
ICAgIHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyIHsgMCB9OwotICAgIHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyIHsgMCB9OworICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0
YXNrSWRlbnRpZmllcjsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdDsKICAg
ICBGcmFtZUluZm9EYXRhIGZyYW1lSW5mbzsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktpdFdlYkNvbnRleHQuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViQ29udGV4dC5jcHAKaW5kZXggMWJjNTFkZDFl
ZDNiMTE4NWVkNzI2NTU1OWJiMWQzYWVkOTc5MDI2ZC4uZTBhOGVlYTM2YzllYTZjZGE2NDNkNjIx
ZTk3OGY3Yzg3ZDZlMTQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L2dsaWIvV2ViS2l0V2ViQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL2dsaWIvV2ViS2l0V2ViQ29udGV4dC5jcHAKQEAgLTYwLDYgKzYwLDcgQEAKICNpbmNsdWRl
ICJXZWJzaXRlRGF0YVN0b3JlLmgiCiAjaW5jbHVkZSAiV2Vic2l0ZURhdGFUeXBlLmgiCiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvUmVtb3RlSW5zcGVjdG9yLmg+CisjaW5jbHVkZSA8V2ViQ29y
ZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDxnbGliL2dpMThuLWxpYi5o
PgogI2luY2x1ZGUgPGxpYmludGwuaD4KICNpbmNsdWRlIDxtZW1vcnk+CkBAIC0xOTQsMTEgKzE5
NSwxMCBAQCBwcml2YXRlOgogICAgIFdlYktpdFVSSVNjaGVtZVJlcXVlc3RDYWxsYmFjayBtX2Nh
bGxiYWNrIHsgbnVsbHB0ciB9OwogICAgIHZvaWQqIG1fdXNlckRhdGEgeyBudWxscHRyIH07CiAg
ICAgR0Rlc3Ryb3lOb3RpZnkgbV9kZXN0cm95Tm90aWZ5IHsgbnVsbHB0ciB9OwotICAgIEhhc2hN
YXA8dWludDY0X3QsIEdSZWZQdHI8V2ViS2l0VVJJU2NoZW1lUmVxdWVzdD4+IG1fcmVxdWVzdHM7
CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIEdSZWZQdHI8
V2ViS2l0VVJJU2NoZW1lUmVxdWVzdD4+IG1fcmVxdWVzdHM7CiB9OwogCiB0eXBlZGVmIEhhc2hN
YXA8U3RyaW5nLCBSZWZQdHI8V2ViS2l0VVJJU2NoZW1lSGFuZGxlcj4gPiBVUklTY2hlbWVIYW5k
bGVyTWFwOwotdHlwZWRlZiBIYXNoTWFwPHVpbnQ2NF90LCBHUmVmUHRyPFdlYktpdFVSSVNjaGVt
ZVJlcXVlc3Q+ID4gVVJJU2NoZW1lUmVxdWVzdE1hcDsKIAogY2xhc3MgV2ViS2l0QXV0b21hdGlv
bkNsaWVudDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9O
ZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsv
TmV0d29ya1Byb2Nlc3NQcm94eS5jcHAKaW5kZXggMWNkY2ZjZTA2Zjk1ZTZiNTMxMjc1YTgzZTNl
ZjdmMDk2OGZlOGE3Ny4uM2YxZTJiOWRlYTY0ZmNiOTVmYzVhN2ExOWE4MTE3MmEyM2Y1MDAwZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vz
c1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQ
cm9jZXNzUHJveHkuY3BwCkBAIC00NzYsOSArNDc2LDkgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc1By
b3h5Ojp0ZXJtaW5hdGVVbnJlc3BvbnNpdmVTZXJ2aWNlV29ya2VyUHJvY2Vzc2VzKFdlYkNvcmU6
OlAKICAgICB9CiB9CiAKLXZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JX
ZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vz
c0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4p
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQordm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJl
TG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3Vy
Y2VQcm9jZXNzSWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewotICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTd2FwcGluZywgIiVwIC0g
TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXI6IHNv
dXJjZVByb2Nlc3NJZGVudGlmaWVyOiAlIiBQUkl1NjQgIiwgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cjogJSIgUFJJdTY0LCB0aGlzLCBzb3VyY2VQcm9jZXNzSWRlbnRpZmllci50b1VJbnQ2NCgpLCBy
ZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICBSRUxFQVNFX0xPRyhQcm9jZXNzU3dhcHBpbmcs
ICIlcCAtIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5z
ZmVyOiBzb3VyY2VQcm9jZXNzSWRlbnRpZmllcjogJSIgUFJJdTY0ICIsIHJlc291cmNlTG9hZElk
ZW50aWZpZXI6ICUiIFBSSXU2NCwgdGhpcywgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIudG9VSW50
NjQoKSwgcmVzb3VyY2VMb2FkSWRlbnRpZmllciA/IHJlc291cmNlTG9hZElkZW50aWZpZXItPnRv
VUludDY0KCkgOiAwKTsKICAgICBpZiAoIXJlc291cmNlTG9hZElkZW50aWZpZXIpIHsKICAgICAg
ICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaAppbmRl
eCA2OTlhODI1OWVmYWRhMTJiYWVmZjFjZGU4YmUxMGQxMzY4NDVlZDYyLi40NjBmYjMyZTgxMGUy
ZmZiMmM0OWI4NTg5NzkyNjM2YjdiZWEwZDhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaApAQCAtMjE0LDcgKzIxNCw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHRlc3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVu
V2FpdGluZ0ZvclN5bmNSZXBseShXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBNZXNzYWdlczo6TmV0
d29ya1Byb2Nlc3NQcm94eTo6VGVzdFByb2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0
aW5nRm9yU3luY1JlcGx5RGVsYXllZFJlcGx5JiYpOwogICAgIHZvaWQgdGVybWluYXRlVW5yZXNw
b25zaXZlU2VydmljZVdvcmtlclByb2Nlc3NlcyhXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllcik7
CiAKLSAgICB2b2lkIHByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlBy
b2Nlc3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJj
ZUxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0
d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CisgICAgdm9pZCBwcmVwYXJlTG9hZEZv
cldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9j
ZXNzSWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI+LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291
cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CiAKICAgICBQcm9jZXNzVGhyb3R0bGVyJiB0aHJvdHRs
ZXIoKSBmaW5hbCB7IHJldHVybiBtX3Rocm90dGxlcjsgfQogICAgIHZvaWQgdXBkYXRlUHJvY2Vz
c0Fzc2VydGlvbigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlz
aW9uYWxQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQ
YWdlUHJveHkuY3BwCmluZGV4IGY2NWI4YTQ4N2MyZTZjMDFjYjMwOWEzY2Q4NTBhNWMzZTMzY2I2
ZjAuLmIwOTE5YjhjYjRhNWE0MzMyZWY4ODJkYjVhNDRhMmMzNDA5MjRiZWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5jcHAKQEAgLTMzMyw3
ICszMzMsNyBAQCB2b2lkIFByb3Zpc2lvbmFsUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOYXZp
Z2F0aW9uQWN0aW9uQXN5bmMoRnJhbWVJZGVudGlmaWVyCiAgICAgbV9wYWdlLmRlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb25Bc3luY1NoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dl
YlBhZ2VJRCwgZnJhbWVJRCwgV1RGTW92ZShmcmFtZUluZm8pLCBpZGVudGlmaWVyLCBuYXZpZ2F0
aW9uSUQsIFdURk1vdmUobmF2aWdhdGlvbkFjdGlvbkRhdGEpLCBXVEZNb3ZlKG9yaWdpbmF0aW5n
RnJhbWVJbmZvKSwgb3JpZ2luYXRpbmdQYWdlSUQsIG9yaWdpbmFsUmVxdWVzdCwgV1RGTW92ZShy
ZXF1ZXN0KSwgV1RGTW92ZShyZXF1ZXN0Qm9keSksIFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSks
IHVzZXJEYXRhLCBsaXN0ZW5lcklEKTsKIH0KIAotdm9pZCBQcm92aXNpb25hbFBhZ2VQcm94eTo6
ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5m
b0RhdGEmJiBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlm
aWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJv
b2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29s
IHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5S
ZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0
YSYgdXNlckRhdGEpCit2b2lkIFByb3Zpc2lvbmFsUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JS
ZXNwb25zZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5m
bywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5h
dmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5
cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5q
ZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdD
b250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBs
aXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCiB7CiAgICAgaWYgKCF2YWxpZGF0
ZUlucHV0KGZyYW1lSUQsIG5hdmlnYXRpb25JRCkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5oCmluZGV4IGQ3OGMzOGUw
MDUyMGQ4Yzg0MGUzNzExMjliMmU0NTRlYjg5YWE2MDcuLmE1ZGVjZmYyZjdlOTIxM2Q3ZDNiZWRh
MGRiYzM2ZDZkOTk1NGMzZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1By
b3Zpc2lvbmFsUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlz
aW9uYWxQYWdlUHJveHkuaApAQCAtMTI1LDcgKzEyNSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBz
ZW5kTWVzc2FnZShVbmlxdWVSZWY8SVBDOjpFbmNvZGVyPiYmLCBPcHRpb25TZXQ8SVBDOjpTZW5k
T3B0aW9uPiwgc3RkOjpvcHRpb25hbDxzdGQ6OnBhaXI8Q29tcGxldGlvbkhhbmRsZXI8dm9pZChJ
UEM6OkRlY29kZXIqKT4sIHVpbnQ2NF90Pj4mJikgZmluYWw7CiAKICAgICB2b2lkIGRlY2lkZVBv
bGljeUZvck5hdmlnYXRpb25BY3Rpb25Bc3luYyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZy
YW1lSW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBu
YXZpZ2F0aW9uSUQsIE5hdmlnYXRpb25BY3Rpb25EYXRhJiYsIEZyYW1lSW5mb0RhdGEmJiBvcmln
aW5hdGluZ0ZyYW1lSW5mbywgc3RkOjpvcHRpb25hbDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBv
cmlnaW5hdGluZ1BhZ2VJRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5h
bFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBJUEM6OkZvcm1EYXRhUmVmZXJl
bmNlJiYgcmVxdWVzdEJvZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJl
c3BvbnNlLCBjb25zdCBVc2VyRGF0YSYsIHVpbnQ2NF90IGxpc3RlbmVySUQpOwotICAgIHZvaWQg
ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUlu
Zm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdh
dGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93
bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6
OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IGxpc3RlbmVySUQs
IHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBVc2VyRGF0YSYpOwor
ICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
LCBGcmFtZUluZm9EYXRhJiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0
X3QgbmF2aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0
cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUs
IFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHN0ZDo6b3B0aW9u
YWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lk
IGRpZENoYW5nZVByb3Zpc2lvbmFsVVJMRm9yRnJhbWUoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVy
LCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFVSTCYmKTsKICAgICB2b2lkIGRpZFBlcmZvcm1TZXJ2
ZXJSZWRpcmVjdChjb25zdCBTdHJpbmcmIHNvdXJjZVVSTFN0cmluZywgY29uc3QgU3RyaW5nJiBk
ZXN0aW5hdGlvblVSTFN0cmluZywgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyKTsKICAgICB2b2lk
IGRpZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZEZvckZyYW1lKFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmJiwgY29uc3QgVXNlckRhdGEmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuY3BwCmluZGV4IGMxMTE3MTQ3M2UyNDg2MDhhZTk3ZjM1OTRmMzk1MjU1MmNh
YTYwMWIuLjdlYWY3OTk0ZDgwMDY5YmE5ZjE0MWYxYWYyNGNkNzY5NDI2NGRmZjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAtNTYzMCwxMiArNTYzMCwxMiBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9yTmV3V2luZG93QWN0aW9uKEZyYW1l
SWRlbnRpZmllciBmcmFtZUlELCBGcmFtZQogCiB2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9s
aWN5Rm9yUmVzcG9uc2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBm
cmFtZUluZm8sIFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLAogICAgIHVpbnQ2NF90
IG5hdmlnYXRpb25JRCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmlu
ZyYgZG93bmxvYWRBdHRyaWJ1dGUsCi0gICAgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRs
ZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91
cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWlu
dDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmIHVzZXJEYXRhKQorICAgIGJvb2wgd2Fz
QWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNp
b24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVy
LCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCiB7CiAgICAg
ZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQobV9wcm9jZXNzLmNvcHlSZWYoKSwgbV93ZWJQ
YWdlSUQsIGZyYW1lSUQsIFdURk1vdmUoZnJhbWVJbmZvKSwgaWRlbnRpZmllciwgbmF2aWdhdGlv
bklELCByZXNwb25zZSwgcmVxdWVzdCwgY2FuU2hvd01JTUVUeXBlLCBkb3dubG9hZEF0dHJpYnV0
ZSwgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBsaXN0ZW5lcklELCB1c2VyRGF0
YSk7CiB9CiAKLXZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJl
ZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2VJZGVudGlmaWVyIHdlYlBhZ2VJ
RCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEmJiBmcmFtZUluZm8sIFBv
bGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0cmli
dXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93c2luZ0NvbnRleHRHcm91
cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2
NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25z
dCBVc2VyRGF0YSYgdXNlckRhdGEpCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5Rm9y
UmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBQYWdlSWRlbnRp
ZmllciB3ZWJQYWdlSUQsIEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYg
ZnJhbWVJbmZvLCBQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3QgbmF2
aWdhdGlvbklELCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBk
b3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3Np
bmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERl
Y2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4g
bWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVz
ZXJEYXRhJiB1c2VyRGF0YSkKIHsKICAgICBQYWdlQ2xpZW50UHJvdGVjdG9yIHByb3RlY3Rvcihw
YWdlQ2xpZW50KCkpOwogCkBAIC0xMDAwMiw3ICsxMDAwMiw3IEBAIHZvaWQgV2ViUGFnZVByb3h5
OjpzdGFydFVSTFNjaGVtZVRhc2tTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNz
LCBQYWdlCiAgICAgaXRlcmF0b3ItPnZhbHVlLT5zdGFydFRhc2soKnRoaXMsIHByb2Nlc3MsIHdl
YlBhZ2VJRCwgV1RGTW92ZShwYXJhbWV0ZXJzKSwgbnVsbHB0cik7CiB9CiAKLXZvaWQgV2ViUGFn
ZVByb3h5OjpzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIpCit2b2lkIFdlYlBhZ2VQcm94eTo6c3RvcFVSTFNjaGVtZVRh
c2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciB0YXNrSWRlbnRpZmllcikKIHsKICAgICBNRVNTQUdFX0NIRUNLKG1fcHJvY2Vzcywg
ZGVjbHR5cGUobV91cmxTY2hlbWVIYW5kbGVyc0J5SWRlbnRpZmllcik6OmlzVmFsaWRLZXkoaGFu
ZGxlcklkZW50aWZpZXIpKTsKICAgICBhdXRvIGl0ZXJhdG9yID0gbV91cmxTY2hlbWVIYW5kbGVy
c0J5SWRlbnRpZmllci5maW5kKGhhbmRsZXJJZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmgKaW5kZXggMzFhMzI5NjMzZGIwMWEwOTdjN2VhMjhmOGQ1NDY0NTM0
OWM2M2ZjMS4uY2EwOWU4MzcyZWM3M2NkNzI3NWVlMDE4NjVmYjJlN2Q5NmRkNjAyYSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTE3NDUsNyArMTc0NSw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIGRpZE5hdmlnYXRlV2l0aE5hdmlnYXRpb25EYXRhU2hhcmVkKFJlZjxX
ZWJQcm9jZXNzUHJveHk+JiYsIGNvbnN0IFdlYk5hdmlnYXRpb25EYXRhU3RvcmUmLCBXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIpOwogICAgIHZvaWQgZGlkQ2hhbmdlUHJvdmlzaW9uYWxVUkxGb3JG
cmFtZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgVVJMJiYpOwogICAgIHZvaWQgZGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5jU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdl
YkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5m
b0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIE5hdmlnYXRpb25BY3Rpb25EYXRhJiYsIEZyYW1lSW5mb0RhdGEmJiBvcmlnaW5hdGlu
Z0ZyYW1lSW5mbywgc3RkOjpvcHRpb25hbDxXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5h
dGluZ1BhZ2VJRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiBvcmlnaW5hbFJlcXVl
c3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlJiYg
cmVxdWVzdEJvZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNl
LCBjb25zdCBVc2VyRGF0YSYsIHVpbnQ2NF90IGxpc3RlbmVySUQpOwotICAgIHZvaWQgZGVjaWRl
UG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0YSYm
LCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRvd25sb2FkQXR0
cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3JlOjpCcm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKKyAgICB2b2lk
IGRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdl
YkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5m
b0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBkb3du
bG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29yZTo6
QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25hbDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1
aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgc3RhcnRVUkxT
Y2hlbWVUYXNrU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVu
dGlmaWVyLCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyYmKTsKICAgICB2b2lkIGxvYWREYXRhV2l0
aE5hdmlnYXRpb25TaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXIsIEFQSTo6TmF2aWdhdGlvbiYsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYsIGNv
bnN0IFN0cmluZyYgTUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZW5jb2RpbmcsIGNvbnN0IFN0cmlu
ZyYgYmFzZVVSTCwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBXZWJDb3JlOjpTaG91bGRUcmVhdEFz
Q29udGludWluZ0xvYWQsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+
LCBzdGQ6Om9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYsIFdlYkNvcmU6OlNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3ksIFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhOjpTZXNzaW9uSGlz
dG9yeVZpc2liaWxpdHkpOwogICAgIHZvaWQgbG9hZFJlcXVlc3RXaXRoTmF2aWdhdGlvblNoYXJl
ZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgQVBJOjpO
YXZpZ2F0aW9uJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OlNob3VsZE9w
ZW5FeHRlcm5hbFVSTHNQb2xpY3ksIEFQSTo6T2JqZWN0KiB1c2VyRGF0YSwgV2ViQ29yZTo6U2hv
dWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluPiwgc3RkOjpvcHRpb25hbDxXZWJzaXRlUG9saWNpZXNEYXRhPiYmID0gc3RkOjpu
dWxsb3B0LCBzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBleGlz
dGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUgPSBzdGQ6Om51bGxvcHQp
OwpAQCAtMjA2Myw3ICsyMDYzLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRlY2lkZVBvbGljeUZv
ck5ld1dpbmRvd0FjdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5mb0RhdGEm
JiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCBOYXZpZ2F0aW9uQWN0aW9uRGF0YSYm
LAogICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgU3RyaW5nJiBmcmFt
ZU5hbWUsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBk
ZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1lSW5m
b0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsCi0gICAgICAgIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3Ry
aW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwg
V2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJE
YXRhJik7CisgICAgICAgIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3Ry
aW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwg
V2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQg
dW5hYmxlVG9JbXBsZW1lbnRQb2xpY3koV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lkIGJlZ2lu
U2FmZUJyb3dzaW5nQ2hlY2soY29uc3QgVVJMJiwgYm9vbCwgV2ViRnJhbWVQb2xpY3lMaXN0ZW5l
clByb3h5Jik7CiAKQEAgLTI0MjcsNyArMjQyNyw3IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAg
IHZvaWQgc3RhcnRVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYpOwotICAg
IHZvaWQgc3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyKTsKKyAgICB2b2lkIHN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90
IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwog
ICAgIHZvaWQgbG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhVUkxTY2hlbWVUYXNrUGFyYW1l
dGVycyYmLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVU
YXNrRGVsYXllZFJlcGx5JiYpOwogCiAgICAgYm9vbCBjaGVja1VSTFJlY2VpdmVkRnJvbUN1cnJl
bnRPclByZXZpb3VzV2ViUHJvY2VzcyhXZWJQcm9jZXNzUHJveHkmLCBjb25zdCBTdHJpbmcmKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdl
cy5pbiBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpp
bmRleCAyNjFjOGU1MTQ0ZGY2NzFhNzZmZGMzZGE3YTVhYTg0ODgzNzgxNDRhLi5iNTc3NzI1ZjMw
Y2MyNjUyZjk4MmQyOTBjNGYwMjBlNWQyN2UzMDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC0xMDcsNyArMTA3LDcgQEAgbWVz
c2FnZXMgLT4gV2ViUGFnZVByb3h5IHsKICNlbmRpZgogCiAgICAgIyBQb2xpY3kgbWVzc2FnZXMK
LSAgICBEZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJh
bWVJRCwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBv
bGljeUNoZWNrSWRlbnRpZmllciBwb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmln
YXRpb25JRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0IHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBTdHJpbmcgZG93bmxv
YWRBdHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIGVudW06dWludDhf
dCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29u
dGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlm
aWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhKQorICAg
IERlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlE
LCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5
Q2hlY2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlv
bklELCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJj
ZVJlcXVlc3QgcmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIFN0cmluZyBkb3dubG9hZEF0
dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgZW51bTp1aW50OF90IFdl
YkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0
R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5l
cklELCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhKQogICAgIERlY2lkZVBvbGljeUZvck5hdmln
YXRpb25BY3Rpb25Bc3luYyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0
IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8sIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRl
bnRpZmllciBwb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgc3Ry
dWN0IFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIHN0
cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgb3JpZ2luYXRpbmdGcmFtZUluZm9EYXRhLCBzdGQ6
Om9wdGlvbmFsPFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllcj4gb3JpZ2luYXRpbmdQYWdl
SUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBvcmlnaW5hbFJlcXVlc3QsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCByZXF1ZXN0LCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlIHJlcXVlc3RCb2R5
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlZGlyZWN0UmVzcG9uc2UsIFdlYktpdDo6VXNl
ckRhdGEgdXNlckRhdGEsIHVpbnQ2NF90IGxpc3RlbmVySUQpCiAgICAgRGVjaWRlUG9saWN5Rm9y
TmF2aWdhdGlvbkFjdGlvblN5bmMoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGJv
b2wgaXNNYWluRnJhbWUsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBX
ZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50
NjRfdCBuYXZpZ2F0aW9uSUQsIHN0cnVjdCBXZWJLaXQ6Ok5hdmlnYXRpb25BY3Rpb25EYXRhIG5h
dmlnYXRpb25BY3Rpb25EYXRhLCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIG9yaWdpbmF0
aW5nRnJhbWVJbmZvRGF0YSwgc3RkOjpvcHRpb25hbDxXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50
aWZpZXI+IG9yaWdpbmF0aW5nUGFnZUlELCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qgb3JpZ2lu
YWxSZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgSVBDOjpGb3JtRGF0
YVJlZmVyZW5jZSByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZWRpcmVj
dFJlc3BvbnNlLCBXZWJLaXQ6OlVzZXJEYXRhIHVzZXJEYXRhKSAtPiAoc3RydWN0IFdlYktpdDo6
UG9saWN5RGVjaXNpb24gUG9saWN5RGVjaXNpb24pIFN5bmNocm9ub3VzCiAgICAgRGVjaWRlUG9s
aWN5Rm9yTmV3V2luZG93QWN0aW9uKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBz
dHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hl
Y2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgc3RydWN0IFdlYktpdDo6TmF2aWdh
dGlvbkFjdGlvbkRhdGEgbmF2aWdhdGlvbkFjdGlvbkRhdGEsIFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCByZXF1ZXN0LCBTdHJpbmcgZnJhbWVOYW1lLCB1aW50NjRfdCBsaXN0ZW5lcklELCBXZWJL
aXQ6OlVzZXJEYXRhIHVzZXJEYXRhKQpAQCAtNTIxLDcgKzUyMSw3IEBAIG1lc3NhZ2VzIC0+IFdl
YlBhZ2VQcm94eSB7CiAgICAgU2V0SXNVc2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKGJvb2wgaXNV
c2luZ0hpZ2hQZXJmb3JtYW5jZVdlYkdMKQogCiAgICAgU3RhcnRVUkxTY2hlbWVUYXNrKHN0cnVj
dCBXZWJLaXQ6OlVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpCi0gICAgU3RvcFVS
TFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyKQorICAgIFN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpCiAgICAg
TG9hZFN5bmNocm9ub3VzVVJMU2NoZW1lVGFzayhzdHJ1Y3QgV2ViS2l0OjpVUkxTY2hlbWVUYXNr
UGFyYW1ldGVycyBwYXJhbWV0ZXJzKSAtPiAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+IGRhdGEp
IFN5bmNocm9ub3VzCiAKICNpZiBFTkFCTEUoREVWSUNFX09SSUVOVEFUSU9OKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAppbmRleCBmZjY4ZDY0
ZTE4MDJhZGViYzQwMTRiOGI2MTc5MWEwMmY0ZTRlNGEwLi5hZjk1YTI1MTJiYzQyMzNhMWRhZGU5
YWZlYjExYzdlYTQ3ZjRiN2QyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJVUkxTY2hlbWVIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJV
UkxTY2hlbWVIYW5kbGVyLmNwcApAQCAtNTUsMTQgKzU1LDE0IEBAIHZvaWQgV2ViVVJMU2NoZW1l
SGFuZGxlcjo6c3RhcnRUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3h5JiBw
cm9jZXNzCiAgICAgYXV0byByZXN1bHQgPSBtX3Rhc2tzLmFkZCh0YXNrSWRlbnRpZmllciwgV2Vi
VVJMU2NoZW1lVGFzazo6Y3JlYXRlKCp0aGlzLCBwYWdlLCBwcm9jZXNzLCB3ZWJQYWdlSUQsIFdU
Rk1vdmUocGFyYW1ldGVycyksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKSk7CiAgICAgQVNT
RVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKIAotICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90YXNrc0J5
UGFnZUlkZW50aWZpZXIuYWRkKHBhZ2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PHVpbnQ2NF90Pigp
KTsKKyAgICBhdXRvIHBhZ2VFbnRyeSA9IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyLmFkZChwYWdl
LmlkZW50aWZpZXIoKSwgSGFzaFNldDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+
KCkpOwogICAgIEFTU0VSVCghcGFnZUVudHJ5Lml0ZXJhdG9yLT52YWx1ZS5jb250YWlucyh0YXNr
SWRlbnRpZmllcikpOwogICAgIHBhZ2VFbnRyeS5pdGVyYXRvci0+dmFsdWUuYWRkKHRhc2tJZGVu
dGlmaWVyKTsKIAogICAgIHBsYXRmb3JtU3RhcnRUYXNrKHBhZ2UsIHJlc3VsdC5pdGVyYXRvci0+
dmFsdWUpOwogfQogCi1XZWJQcm9jZXNzUHJveHkqIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnByb2Nl
c3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCB0YXNrSWRlbnRpZmllcikgY29uc3QKK1dlYlBy
b2Nlc3NQcm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlmaWVy
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikgY29uc3QK
IHsKICAgICBpZiAoIWRlY2x0eXBlKG1fdGFza3MpOjppc1ZhbGlkS2V5KHRhc2tJZGVudGlmaWVy
KSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC03OSw3ICs3OSw3IEBAIHZvaWQgV2ViVVJM
U2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZShXZWJQYWdlUHJveHkmIHBhZ2UsIFdl
YlByb2Nlc3NQcm94CiAgICAgICAgIHJldHVybjsKIAogICAgIGF1dG8mIHRhc2tzQnlQYWdlID0g
aXRlcmF0b3ItPnZhbHVlOwotICAgIFZlY3Rvcjx1aW50NjRfdD4gdGFza0lkZW50aWZpZXJzVG9T
dG9wOworICAgIFZlY3RvcjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHRhc2tJ
ZGVudGlmaWVyc1RvU3RvcDsKICAgICB0YXNrSWRlbnRpZmllcnNUb1N0b3AucmVzZXJ2ZUluaXRp
YWxDYXBhY2l0eSh0YXNrc0J5UGFnZS5zaXplKCkpOwogICAgIGZvciAoYXV0byB0YXNrSWRlbnRp
ZmllciA6IHRhc2tzQnlQYWdlKSB7CiAgICAgICAgIGlmICghcHJvY2VzcyB8fCBwcm9jZXNzRm9y
VGFza0lkZW50aWZpZXIodGFza0lkZW50aWZpZXIpID09IHByb2Nlc3MpCkBAIC05MSw3ICs5MSw3
IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFsbFRhc2tzRm9yUGFnZShXZWJQYWdl
UHJveHkmIHBhZ2UsIFdlYlByb2Nlc3NQcm94CiAKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyOjpzdG9wVGFzayhXZWJQYWdlUHJveHkmIHBhZ2UsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
KQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wVGFzayhXZWJQYWdlUHJveHkmIHBhZ2Us
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKIHsKICAg
ICBpZiAoIWRlY2x0eXBlKG1fdGFza3MpOjppc1ZhbGlkS2V5KHRhc2tJZGVudGlmaWVyKSkKICAg
ICAgICAgcmV0dXJuOwpAQCAtMTE1LDcgKzExNSw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxl
cjo6dGFza0NvbXBsZXRlZChXZWJVUkxTY2hlbWVUYXNrJiB0YXNrKQogICAgIHBsYXRmb3JtVGFz
a0NvbXBsZXRlZCh0YXNrKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVU
YXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIHVpbnQ2NF90IHRh
c2tJRCkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlELCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgdGFza0lEKQogewogICAgIGF1dG8gaXRlcmF0b3IgPSBtX3Rhc2tzQnlQYWdlSWRlbnRp
Zmllci5maW5kKHBhZ2VJRCk7CiAgICAgQVNTRVJUKGl0ZXJhdG9yICE9IG1fdGFza3NCeVBhZ2VJ
ZGVudGlmaWVyLmVuZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlVSTFNjaGVtZUhhbmRsZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVt
ZUhhbmRsZXIuaAppbmRleCBmNGUzZGI2MGNjM2I4ZTAwMGIzNDYwMzJhOTk5N2VlYzAxNDRkOGRi
Li40Yzk5NjY5YmE0NGQ5MDVhMGEyNWQxMjU2MDVmYjEzODA3M2ZkYjZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5oCkBAIC0yNiw2ICsyNiw3IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIldlYlVSTFNjaGVtZVRhc2suaCIKKyNpbmNsdWRl
IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgpAQCAtNTEsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAgdWludDY0X3QgaWRlbnRpZmllcigp
IGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgdm9pZCBzdGFydFRhc2soV2Vi
UGFnZVByb3h5JiwgV2ViUHJvY2Vzc1Byb3h5JiwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFVS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYsIFN5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXImJik7Ci0g
ICAgdm9pZCBzdG9wVGFzayhXZWJQYWdlUHJveHkmLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllcik7
CisgICAgdm9pZCBzdG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIpOwogICAgIHZvaWQgc3RvcEFsbFRhc2tzRm9yUGFn
ZShXZWJQYWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkqKTsKICAgICB2b2lkIHRhc2tDb21wbGV0
ZWQoV2ViVVJMU2NoZW1lVGFzayYpOwogCkBAIC02MywxMyArNjQsMTMgQEAgcHJpdmF0ZToKICAg
ICB2aXJ0dWFsIHZvaWQgcGxhdGZvcm1TdG9wVGFzayhXZWJQYWdlUHJveHkmLCBXZWJVUkxTY2hl
bWVUYXNrJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVRhc2tDb21wbGV0ZWQoV2Vi
VVJMU2NoZW1lVGFzayYpIHsgfTsKIAotICAgIHZvaWQgcmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdl
YlBhZ2VQcm94eUlkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJRCk7Ci0gICAgV2ViUHJvY2Vzc1By
b3h5KiBwcm9jZXNzRm9yVGFza0lkZW50aWZpZXIodWludDY0X3QpIGNvbnN0OworICAgIHZvaWQg
cmVtb3ZlVGFza0Zyb21QYWdlTWFwKFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzRm9y
VGFza0lkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBjb25zdDsK
IAogICAgIHVpbnQ2NF90IG1faWRlbnRpZmllcjsKIAotICAgIEhhc2hNYXA8dWludDY0X3QsIFJl
ZjxXZWJVUkxTY2hlbWVUYXNrPj4gbV90YXNrczsKLSAgICBIYXNoTWFwPFdlYlBhZ2VQcm94eUlk
ZW50aWZpZXIsIEhhc2hTZXQ8dWludDY0X3Q+PiBtX3Rhc2tzQnlQYWdlSWRlbnRpZmllcjsKKyAg
ICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVmPFdlYlVSTFNj
aGVtZVRhc2s+PiBtX3Rhc2tzOworICAgIEhhc2hNYXA8V2ViUGFnZVByb3h5SWRlbnRpZmllciwg
SGFzaFNldDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+PiBtX3Rhc2tzQnlQYWdl
SWRlbnRpZmllcjsKICAgICAKICAgICBTeW5jTG9hZENvbXBsZXRpb25IYW5kbGVyIG1fc3luY0xv
YWRDb21wbGV0aW9uSGFuZGxlcjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViVVJMU2NoZW1lVGFzay5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2No
ZW1lVGFzay5oCmluZGV4IGVhYzA5YmRlY2ExZGVjMGNiMjE5YWMxZDAzMzA4YjJlMjcyMzA5Y2Uu
LjJhOWUwNmEyYTJiMGZkMmQ2Y2RlNDQ2NTE5M2I2ZGY4YzgwMjY0YzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmgKQEAgLTYxLDcgKzYxLDcgQEAgcHVibGlj
OgogCiAgICAgfldlYlVSTFNjaGVtZVRhc2soKTsKIAotICAgIHVpbnQ2NF90IGlkZW50aWZpZXIo
KSBjb25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX2lkZW50aWZpZXI7
IH0KKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcigpIGNv
bnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQog
ICAgIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZVByb3h5SUQoKSBjb25zdCB7IEFTU0VSVChS
dW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3BhZ2VQcm94eUlEOyB9CiAgICAgV2ViQ29yZTo6
UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlEKCkgY29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWlu
KCkpOyByZXR1cm4gbV93ZWJQYWdlSUQ7IH0KICAgICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3Mo
KSB7IEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7IHJldHVybiBtX3Byb2Nlc3MuZ2V0KCk7IH0K
QEAgLTEwMSw3ICsxMDEsNyBAQCBwcml2YXRlOgogCiAgICAgUmVmPFdlYlVSTFNjaGVtZUhhbmRs
ZXI+IG1fdXJsU2NoZW1lSGFuZGxlcjsKICAgICBSZWZQdHI8V2ViUHJvY2Vzc1Byb3h5PiBtX3By
b2Nlc3M7Ci0gICAgdWludDY0X3QgbV9pZGVudGlmaWVyOworICAgIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmll
ciBtX3BhZ2VQcm94eUlEOwogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIG1fd2ViUGFnZUlE
OwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBtX3JlcXVlc3QgV1RGX0dVQVJERURfQllf
TE9DSyhtX3JlcXVlc3RMb2NrKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUlu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCmluZGV4IDNmODI3YTAxZjQ4ODE3
NDQ2NjZhMzZlZTdhYmFhNzMwNzAxNDBkNGIuLjQ1Y2Q2MWU3MWQ4ODVjZjFmN2NjMzhiMzU1MWEy
YzQ4YmQwNmRmNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvQVBJSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3Rl
ZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaApAQCAtMjUsNiArMjUsOCBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+
CisKIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgV2ViRnJhbWU7CiBjbGFzcyBXZWJQYWdlOwpA
QCAtNDUsMTQgKzQ3LDE0IEBAIGNsYXNzIFJlc291cmNlTG9hZENsaWVudCB7CiBwdWJsaWM6CiAg
ICAgdmlydHVhbCB+UmVzb3VyY2VMb2FkQ2xpZW50KCkgPSBkZWZhdWx0OwogCi0gICAgdmlydHVh
bCB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktp
dDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgYm9vbCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKi8pIHsgfQot
ICAgIHZpcnR1YWwgdm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJLaXQ6OldlYlBhZ2Um
LCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8sIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSB7IH0KLSAg
ICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQ
YWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9Ci0gICAgdmlydHVhbCB2b2lkIGRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJG
cmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSB7
IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2Vi
UGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLykgeyB9Ci0g
ICAgdmlydHVhbCB2b2lkIGRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwg
V2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yJikgeyB9Ci0gICAgdmlydHVhbCBib29sIHNob3VsZENhY2hlUmVzcG9u
c2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRp
ZmllciovKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFVzZUNyZWRl
bnRpYWxTdG9yYWdlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRf
dCAvKmlkZW50aWZpZXIqLykgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRJ
bml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1l
JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBib29sIC8qcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcqLykgeyB9Cisg
ICAgdmlydHVhbCB2b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYktpdDo6V2ViUGFnZSYs
IFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2Vi
S2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIHsgfQorICAgIHZp
cnR1YWwgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdlYktpdDo6V2Vi
UGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5p
c2hMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRp
ZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYpIHsgfQorICAgIHZpcnR1YWwgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYktp
dDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpIHsgcmV0dXJuIHRydWU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogfSAv
LyBuYW1lc3BhY2UgSW5qZWN0ZWRCdW5kbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRXZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRXZWJQYWdl
LmNwcAppbmRleCBmY2U2MTFmYWE5ZGE3NTIwNzJkNjFmYmE3ZmZhOTIxM2JkNWYzOTg4Li4zN2Qy
M2E5YTQwNDYyMjRmY2UxNmFiYTI4MjJjNTA0Njg4YjdiMTFjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2dsaWIvV2ViS2l0V2ViUGFnZS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGli
L1dlYktpdFdlYlBhZ2UuY3BwCkBAIC0yMzksMTcgKzIzOSwxNyBAQCBwdWJsaWM6CiAgICAgfQog
CiBwcml2YXRlOgotICAgIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYg
cGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRJbml0aWF0ZUxv
YWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIGJvb2wpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBBUEk6OkRpY3Rpb25hcnk6
Ok1hcFR5cGUgbWVzc2FnZTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgi
UGFnZSIpLCAmcGFnZSk7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIkZy
YW1lIiksICZmcmFtZSk7Ci0gICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklk
ZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyKSk7CisgICAgICAgIG1l
c3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNy
ZWF0ZShpZGVudGlmaWVyLnRvVUludDY0KCkpKTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5n
Ojpmcm9tVVRGOCgiUmVxdWVzdCIpLCBBUEk6OlVSTFJlcXVlc3Q6OmNyZWF0ZShyZXF1ZXN0KSk7
CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmluamVjdGVkQnVuZGxlKCktPnBvc3RN
ZXNzYWdlKFN0cmluZzo6ZnJvbVVURjgoIldlYlBhZ2UuRGlkSW5pdGlhdGVMb2FkRm9yUmVzb3Vy
Y2UiKSwgQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGTW92ZShtZXNzYWdlKSkucHRyKCkpOwog
ICAgIH0KIAotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYgcGFnZSwg
V2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNl
UmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNvdXJjZVJlc3BvbnNl
KSBvdmVycmlkZQorICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYgcGFn
ZSwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzb3VyY2VSZXNwb25zZSkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIEdS
ZWZQdHI8V2ViS2l0VVJJUmVxdWVzdD4gcmVxdWVzdCA9IGFkb3B0R1JlZih3ZWJraXRVUklSZXF1
ZXN0Q3JlYXRlRm9yUmVzb3VyY2VSZXF1ZXN0KHJlc291cmNlUmVxdWVzdCkpOwogICAgICAgICBH
UmVmUHRyPFdlYktpdFVSSVJlc3BvbnNlPiByZWRpcmVjdFJlc3BvbnNlID0gIXJlZGlyZWN0UmVz
b3VyY2VSZXNwb25zZS5pc051bGwoKSA/IGFkb3B0R1JlZih3ZWJraXRVUklSZXNwb25zZUNyZWF0
ZUZvclJlc291cmNlUmVzcG9uc2UocmVkaXJlY3RSZXNvdXJjZVJlc3BvbnNlKSkgOiBudWxscHRy
OwpAQCAtMjY1LDE4ICsyNjUsMTggQEAgcHJpdmF0ZToKIAogICAgICAgICBBUEk6OkRpY3Rpb25h
cnk6Ok1hcFR5cGUgbWVzc2FnZTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRG
OCgiUGFnZSIpLCAmcGFnZSk7Ci0gICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgo
IklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyKSk7CisgICAgICAg
IG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6
OmNyZWF0ZShpZGVudGlmaWVyLnRvVUludDY0KCkpKTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3Ry
aW5nOjpmcm9tVVRGOCgiUmVxdWVzdCIpLCBBUEk6OlVSTFJlcXVlc3Q6OmNyZWF0ZShyZXNvdXJj
ZVJlcXVlc3QpKTsKICAgICAgICAgaWYgKCFyZWRpcmVjdFJlc291cmNlUmVzcG9uc2UuaXNOdWxs
KCkpCiAgICAgICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJSZWRpcmVjdFJl
c3BvbnNlIiksIEFQSTo6VVJMUmVzcG9uc2U6OmNyZWF0ZShyZWRpcmVjdFJlc291cmNlUmVzcG9u
c2UpKTsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5qZWN0ZWRCdW5kbGUoKS0+
cG9zdE1lc3NhZ2UoU3RyaW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRTZW5kUmVxdWVzdEZvclJl
c291cmNlIiksIEFQSTo6RGljdGlvbmFyeTo6Y3JlYXRlKFdURk1vdmUobWVzc2FnZSkpLnB0cigp
KTsKICAgICB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBh
Z2UmIHBhZ2UsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVzcG9uc2UpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VG
b3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIEFQSTo6RGljdGlvbmFyeTo6TWFwVHlwZSBtZXNz
YWdlOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJQYWdlIiksICZwYWdl
KTsKLSAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBB
UEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIpKTsKKyAgICAgICAgbWVzc2FnZS5zZXQoU3Ry
aW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZp
ZXIudG9VSW50NjQoKSkpOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJS
ZXNwb25zZSIpLCBBUEk6OlVSTFJlc3BvbnNlOjpjcmVhdGUocmVzcG9uc2UpKTsKICAgICAgICAg
V2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5qZWN0ZWRCdW5kbGUoKS0+cG9zdE1lc3NhZ2UoU3Ry
aW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSIpLCBB
UEk6OkRpY3Rpb25hcnk6OmNyZWF0ZShXVEZNb3ZlKG1lc3NhZ2UpKS5wdHIoKSk7CiAKQEAgLTI4
NywyOCArMjg3LDI4IEBAIHByaXZhdGU6CiAgICAgICAgIH0KICAgICB9CiAKLSAgICB2b2lkIGRp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUm
LCB1aW50NjRfdCBpZGVudGlmaWVyLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSBvdmVycmlkZQor
ICAgIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdl
LCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgQVBJOjpE
aWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3NhZ2U7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6
ZnJvbVVURjgoIlBhZ2UiKSwgJnBhZ2UpOwotICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZy
b21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllcikpOwor
ICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6
VUludDY0OjpjcmVhdGUoaWRlbnRpZmllci50b1VJbnQ2NCgpKSk7CiAgICAgICAgIG1lc3NhZ2Uu
c2V0KFN0cmluZzo6ZnJvbVVURjgoIkNvbnRlbnRMZW5ndGgiKSwgQVBJOjpVSW50NjQ6OmNyZWF0
ZShjb250ZW50TGVuZ3RoKSk7CiAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmluamVj
dGVkQnVuZGxlKCktPnBvc3RNZXNzYWdlKFN0cmluZzo6ZnJvbVVURjgoIldlYlBhZ2UuRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZSIpLCBBUEk6OkRpY3Rpb25hcnk6OmNyZWF0ZShX
VEZNb3ZlKG1lc3NhZ2UpKS5wdHIoKSk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRGaW5pc2hMb2Fk
Rm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVy
KSBvdmVycmlkZQorICAgIHZvaWQgZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBh
Z2UsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBBUEk6OkRpY3Rpb25hcnk6Ok1hcFR5cGUgbWVz
c2FnZTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiUGFnZSIpLCAmcGFn
ZSk7Ci0gICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwg
QVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyKSk7CisgICAgICAgIG1lc3NhZ2Uuc2V0KFN0
cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlm
aWVyLnRvVUludDY0KCkpKTsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5qZWN0
ZWRCdW5kbGUoKS0+cG9zdE1lc3NhZ2UoU3RyaW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRGaW5p
c2hMb2FkRm9yUmVzb3VyY2UiKSwgQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGTW92ZShtZXNz
YWdlKSkucHRyKCkpOwogICAgIH0KIAotICAgIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShX
ZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlRXJyb3ImIGVycm9yKSBvdmVycmlkZQorICAgIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJj
ZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikgb3ZlcnJpZGUKICAg
ICB7CiAgICAgICAgIEFQSTo6RGljdGlvbmFyeTo6TWFwVHlwZSBtZXNzYWdlOwogICAgICAgICBt
ZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJQYWdlIiksICZwYWdlKTsKLSAgICAgICAgbWVz
c2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3Jl
YXRlKGlkZW50aWZpZXIpKTsKKyAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgi
SWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIudG9VSW50NjQoKSkp
OwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJFcnJvciIpLCBBUEk6OkVy
cm9yOjpjcmVhdGUoZXJyb3IpKTsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5q
ZWN0ZWRCdW5kbGUoKS0+cG9zdE1lc3NhZ2UoU3RyaW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRG
YWlsTG9hZEZvclJlc291cmNlIiksIEFQSTo6RGljdGlvbmFyeTo6Y3JlYXRlKFdURk1vdmUobWVz
c2FnZSkpLnB0cigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50LmNwcAppbmRleCBiOGJkNDEyNDMyMTRlODBlYmQ2YjdjNTExNjNh
NTkwZDkzYjk3ZWY4Li4wNmQ4YWRhMjUwYTM3MWJiY2E1ZWIwZTY0NDFhNTJiNzIzNDVjOWY5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50LmNwcApAQCAtMzksMjAgKzM5LDIwIEBAIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50KGNvbnN0CiAgICAg
aW5pdGlhbGl6ZShjbGllbnQpOwogfQogCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNl
TG9hZENsaWVudDo6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2Vi
RnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3Qm
IHJlcXVlc3QsIGJvb2wgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcpCit2b2lkIEluamVjdGVk
QnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2Uo
V2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29s
IHBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nKQogewogICAgIGlmICghbV9jbGllbnQuZGlkSW5p
dGlhdGVMb2FkRm9yUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRp
ZEluaXRpYXRlTG9hZEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRl
bnRpZmllciwgdG9BUEkocmVxdWVzdCksIHBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5nLCBtX2Ns
aWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRpZEluaXRpYXRlTG9hZEZvclJl
c291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgp
LCB0b0FQSShyZXF1ZXN0KSwgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIG1fY2xpZW50LmJh
c2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2Fk
Q2xpZW50Ojp3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYg
ZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKK3ZvaWQgSW5qZWN0ZWRCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Ojp3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdl
JiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX2NsaWVudC53aWxsU2VuZFJl
cXVlc3RGb3JGcmFtZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEFQSTo6VVJMUmVx
dWVzdD4gcmV0dXJuZWRSZXF1ZXN0ID0gYWRvcHRSZWYodG9JbXBsKG1fY2xpZW50LndpbGxTZW5k
UmVxdWVzdEZvckZyYW1lKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllciwg
dG9BUEkocmVxdWVzdCksIHRvQVBJKHJlZGlyZWN0UmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNs
aWVudEluZm8pKSk7CisgICAgUmVmUHRyPEFQSTo6VVJMUmVxdWVzdD4gcmV0dXJuZWRSZXF1ZXN0
ID0gYWRvcHRSZWYodG9JbXBsKG1fY2xpZW50LndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKHRvQVBJ
KCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShyZXF1
ZXN0KSwgdG9BUEkocmVkaXJlY3RSZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbykp
KTsKICAgICBpZiAocmV0dXJuZWRSZXF1ZXN0KSB7CiAgICAgICAgIC8vIElmIHRoZSBjbGllbnQg
cmV0dXJuZWQgYW4gSFRUUCBib2R5LCB3ZSB3YW50IHRvIHVzZSB0aGF0IGh0dHAgYm9keS4gVGhp
cyBpcyBuZWVkZWQgdG8gZml4IDxyZGFyOi8vcHJvYmxlbS8yMzc2MzU4ND4KICAgICAgICAgYXV0
byYgcmV0dXJuZWRSZXNvdXJjZVJlcXVlc3QgPSByZXR1cm5lZFJlcXVlc3QtPnJlc291cmNlUmVx
dWVzdCgpOwpAQCAtNjQsNTIgKzY0LDUyIEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50Ojp3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdlCiAgICAg
ICAgIHJlcXVlc3QgPSB7IH07CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50OjpkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBX
ZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6
OmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBm
cmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGlmICghbV9jbGllbnQuZGlkUmVj
ZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50
LmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1l
KSwgaWRlbnRpZmllciwgdG9BUEkocmVzcG9uc2UpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8p
OworICAgIG1fY2xpZW50LmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKHRvQVBJKCZwYWdl
KSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB0b0FQSShyZXNwb25zZSks
IG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdl
UmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdl
YlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgdWludDY0
X3QgY29udGVudExlbmd0aCkKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdl
YkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRSZWNl
aXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2Ns
aWVudC5kaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9B
UEkoJmZyYW1lKSwgaWRlbnRpZmllciwgY29udGVudExlbmd0aCwgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKTsKKyAgICBtX2NsaWVudC5kaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNl
KHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBjb250
ZW50TGVuZ3RoLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwogfQogCi12b2lkIEluamVjdGVk
QnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNoTG9hZEZvclJlc291cmNlKFdl
YlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK3ZvaWQg
SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVz
b3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZEZpbmlz
aExvYWRGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkRmlu
aXNoTG9hZEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmll
ciwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBtX2NsaWVudC5kaWRGaW5pc2hMb2Fk
Rm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUlu
dDY0KCksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5k
bGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2Um
IHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VFcnJvciYgZXJyb3IpCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dDo6ZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZEZhaWxMb2FkRm9yUmVz
b3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fY2xpZW50LmRpZEZhaWxMb2FkRm9yUmVz
b3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCB0b0FQSShlcnJv
ciksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkRmFpbExvYWRG
b3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9VSW50
NjQoKSwgdG9BUEkoZXJyb3IpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwogfQogCi1ib29s
IEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25z
ZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIpCiti
b29sIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNw
b25zZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuc2hvdWxkQ2Fj
aGVSZXNwb25zZSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICByZXR1cm4gbV9jbGllbnQu
c2hvdWxkQ2FjaGVSZXNwb25zZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZp
ZXIsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgcmV0dXJuIG1fY2xpZW50LnNob3Vs
ZENhY2hlUmVzcG9uc2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRv
VUludDY0KCksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLWJvb2wgSW5qZWN0ZWRC
dW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShX
ZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIpCitib29s
IEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAoIW1fY2xpZW50LnNob3Vs
ZFVzZUNyZWRlbnRpYWxTdG9yYWdlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIHJldHVy
biBtX2NsaWVudC5zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSh0b0FQSSgmcGFnZSksIHRvQVBJ
KCZmcmFtZSksIGlkZW50aWZpZXIsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgcmV0
dXJuIG1fY2xpZW50LnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHRvQVBJKCZwYWdlKSwgdG9B
UEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxv
YWRDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaAppbmRleCAzYWVmM2RjY2VhMzk2NTBj
ZDYxZjg0ZWZmMjgxYWQwZDI0N2E2YWU3Li45ODgxM2Q5YjE1NGJiM2QyM2JjZTM0NTQ0NGFiZGJl
YjA1MjQzYWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291
cmNlTG9hZENsaWVudC5oCkBAIC01MSwxNCArNTEsMTQgQEAgY2xhc3MgSW5qZWN0ZWRCdW5kbGVQ
YWdlUmVzb3VyY2VMb2FkQ2xpZW50IDogcHVibGljIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291
cmMKIHB1YmxpYzoKICAgICBleHBsaWNpdCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQoY29uc3QgV0tCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50QmFzZSopOwogCi0gICAg
dm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50
NjRfdCBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIC8q
cGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcqLykgb3ZlcnJpZGU7Ci0gICAgdm9pZCB3aWxsU2Vu
ZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShX
ZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExl
bmd0aEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIs
IHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlkRmluaXNoTG9h
ZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpIG92
ZXJyaWRlOwotICAgIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJh
bWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikg
b3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBhZ2UmLCBXZWJGcmFt
ZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikg
b3ZlcnJpZGU7CisgICAgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwg
V2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyov
KSBvdmVycmlkZTsKKyAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmLCBX
ZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRl
OworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZy
YW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExl
bmd0aEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkgb3ZlcnJpZGU7CisgICAgdm9p
ZCBkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEZhaWxMb2Fk
Rm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJikgb3ZlcnJpZGU7CisgICAg
Ym9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VDcmVk
ZW50aWFsU3RvcmFnZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpIG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCA2MGI5NWVkM2ViYTg3OWJjNDllNzExNTY0MTVhMWJm
MDU5Yzg2YTU0Li40N2I5MWNlODdkMzYxM2UzNWQ1Nzk0MDc5N2FkZjBiMWRkMDBhNDhiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdv
cmtQcm9jZXNzQ29ubmVjdGlvbi5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgTmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uOjp+TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkKIHZvaWQgTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rp
b24sIElQQzo6RGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYlJlc291cmNlTG9hZGVyOjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCkpIHsKLSAgICAgICAgaWYgKGF1dG8qIHdlYlJlc291cmNlTG9hZGVyID0gV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkud2ViTG9hZGVyU3RyYXRlZ3koKS53ZWJSZXNvdXJjZUxvYWRlckZv
cklkZW50aWZpZXIoZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKQorICAgICAgICBpZiAoYXV0byog
d2ViUmVzb3VyY2VMb2FkZXIgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2FkZXJTdHJh
dGVneSgpLndlYlJlc291cmNlTG9hZGVyRm9ySWRlbnRpZmllcihtYWtlT2JqZWN0SWRlbnRpZmll
cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4oZGVjb2Rlci5kZXN0aW5hdGlvbklEKCkpKSkKICAg
ICAgICAgICAgIHdlYlJlc291cmNlTG9hZGVyLT5kaWRSZWNlaXZlV2ViUmVzb3VyY2VMb2FkZXJN
ZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAt
MjI2LDEyICsyMjYsMTIgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OndyaXRlQmxv
YnNUb1RlbXBvcmFyeUZpbGVzRm9ySW5kZXhlZERCKGNvbnN0IFZlY3QKICAgICBjb25uZWN0aW9u
KCkuc2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6V3JpdGVCbG9ic1RvVGVtcG9yYXJ5RmlsZXNGb3JJbmRleGVkREIoYmxvYlVSTHMpLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uOjpkaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRfdCBwaW5nTG9hZElkZW50aWZpZXIsIFJl
c291cmNlRXJyb3ImJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQordm9pZCBO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBwaW5nTG9hZElkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBl
cnJvciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQogewogICAgIFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLndlYkxvYWRlclN0cmF0ZWd5KCkuZGlkRmluaXNoUGluZ0xvYWQocGluZ0xvYWRJ
ZGVudGlmaWVyLCBXVEZNb3ZlKGVycm9yKSwgV1RGTW92ZShyZXNwb25zZSkpOwogfQogCi12b2lk
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbih1aW50NjRf
dCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQordm9pZCBO
ZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNvdXJj
ZUVycm9yJiYgZXJyb3IpCiB7CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkud2ViTG9hZGVy
U3RyYXRlZ3koKS5kaWRGaW5pc2hQcmVjb25uZWN0aW9uKHByZWNvbm5lY3Rpb25JZGVudGlmaWVy
LCBXVEZNb3ZlKGVycm9yKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCmluZGV4IGY4MTE5NmFl
MDEyNDAwYmIxYzZjZmZlMjhhNjJiZmZjNGNkYTc1MTQuLmQ2MmRmZTRkZjVhYTVhN2Y4NDc2YWEx
OWZlY2Y4NzRiYmY4NDlhZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCkBAIC0yMywxNCArMjMs
MTQgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbl9oCi0jZGVmaW5lIE5ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRl
ICJTaGFyZWFibGVSZXNvdXJjZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NvbnNvbGVU
eXBlcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvTWVzc2FnZVBvcnRDaGFubmVsUHJvdmlkZXIuaD4K
ICNpbmNsdWRlIDxXZWJDb3JlL1JUQ0RhdGFDaGFubmVsSWRlbnRpZmllci5oPgorI2luY2x1ZGUg
PFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9T
ZXJ2aWNlV29ya2VyVHlwZXMuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNTAsOCArNTAsNiBAQCBuYW1lc3BhY2UgV2Vi
S2l0IHsKIGNsYXNzIFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlcjsKIGNsYXNzIFdlYlNXQ2xpZW50
Q29ubmVjdGlvbjsKIAotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwot
CiBjbGFzcyBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxOZXR3
b3JrUHJvY2Vzc0Nvbm5lY3Rpb24+LCBJUEM6OkNvbm5lY3Rpb246OkNsaWVudCB7CiBwdWJsaWM6
CiAgICAgc3RhdGljIFJlZjxOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24+IGNyZWF0ZShJUEM6OkNv
bm5lY3Rpb246OklkZW50aWZpZXIgY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OkhUVFBD
b29raWVBY2NlcHRQb2xpY3kgaHR0cENvb2tpZUFjY2VwdFBvbGljeSkKQEAgLTk2LDggKzk0LDgg
QEAgcHJpdmF0ZToKICAgICB2b2lkIGRpZENsb3NlKElQQzo6Q29ubmVjdGlvbiYpIG92ZXJyaWRl
OwogICAgIHZvaWQgZGlkUmVjZWl2ZUludmFsaWRNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQ
Qzo6TWVzc2FnZU5hbWUpIG92ZXJyaWRlOwogCi0gICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZCh1
aW50NjRfdCBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJiwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKLSAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rp
b24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJy
b3ImJik7CisgICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYs
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJik7CisgICAgdm9pZCBkaWRGaW5pc2hQcmVjb25u
ZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25uZWN0aW9uSWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmKTsKICAgICB2b2lkIHNldE9uTGluZVN0
YXRlKGJvb2wgaXNPbkxpbmUpOwogICAgIHZvaWQgY29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChX
ZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KTsKIApAQCAtMTI5LDUgKzEyNywzIEBAIHBy
aXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIE5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
TmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2FnZXMu
aW4KaW5kZXggYzhiNGExOGY3ZTk0MjQ1NGIwYWE5NjY2MTJmMTkzYWNmZGFjODY0MC4uNmJhMzFm
NTQ4YjlhYTUwMDE3ZDZhZDQ3ODI2YzczMTgyMTZhNjM2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLm1lc3NhZ2Vz
LmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgpAQCAtMjYsOCArMjYsOCBAQCBtZXNzYWdlcyAtPiBOZXR3
b3JrUHJvY2Vzc0Nvbm5lY3Rpb24gTGVnYWN5UmVjZWl2ZXIgewogICAgIERpZENhY2hlUmVzb3Vy
Y2UoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIFdlYktpdDo6U2hhcmVhYmxlUmVz
b3VyY2U6OkhhbmRsZSByZXNvdXJjZSkKICNlbmRpZgogCi0gICAgRGlkRmluaXNoUGluZ0xvYWQo
dWludDY0X3QgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9y
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQotICAgIERpZEZpbmlzaFByZWNv
bm5lY3Rpb24odWludDY0X3QgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291
cmNlRXJyb3IgZXJyb3IpCisgICAgRGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIHBpbmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJv
ciBlcnJvciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkKKyAgICBEaWRGaW5p
c2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwcmVjb25u
ZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKICAgICBTZXRP
bkxpbmVTdGF0ZShib29sIGlzT25MaW5lKTsKICAgICBDb29raWVBY2NlcHRQb2xpY3lDaGFuZ2Vk
KGVudW06dWludDhfdCBXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5IHBvbGljeSk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0
cmF0ZWd5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0
cmF0ZWd5LmNwcAppbmRleCAzNTI1MzEwNmNiMWQzMDEzMzljMmIzMGU4NjAyZjZiZjI0YTNlNzJi
Li5kYTA4ZmRhOTQwYTM0ZmYyZmE2YTAwNmQ2NWRhYTFhNmM3NmQ5MDlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3Bw
CkBAIC04MSw4ICs4MSw4IEBACiAjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9H
X0VSUk9SX0JBU0lDKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJPUihOZXR3b3JrLCAiJXAgLSBX
ZWJMb2FkZXJTdHJhdGVneTo6IiBmbXQsIHRoaXMsICMjX19WQV9BUkdTX18pCiAKICNkZWZpbmUg
V0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgIiVwIC0gW3Jl
c291cmNlTG9hZGVyPSVwLCBmcmFtZUxvYWRlcj0lcCwgZnJhbWU9JXAsIHdlYlBhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIl0gV2Vi
TG9hZGVyU3RyYXRlZ3k6OiIKLSNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0df
U1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCAmcmVzb3VyY2VMb2FkZXIsIHJlc291cmNlTG9hZGVy
LmZyYW1lTG9hZGVyKCksIHJlc291cmNlTG9hZGVyLmZyYW1lKCksIHRyYWNraW5nUGFyYW1ldGVy
cy5wYWdlSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQo
KSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQKLSNkZWZpbmUgV0VCTE9BREVSU1RSQVRF
R1lfV0lUSF9GUkFNRUxPQURFUl9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMs
IG51bGxwdHIsICZmcmFtZUxvYWRlciwgJmZyYW1lTG9hZGVyLmZyYW1lKCksIHRyYWNraW5nUGFy
YW1ldGVycy5wYWdlSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9V
SW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQKKyNkZWZpbmUgV0VCTE9BREVS
U1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCAmcmVzb3VyY2VM
b2FkZXIsIHJlc291cmNlTG9hZGVyLmZyYW1lTG9hZGVyKCksIHJlc291cmNlTG9hZGVyLmZyYW1l
KCksIHRyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0
ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnJlc291cmNlSUQudG9V
SW50NjQoKQorI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVB
U0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhpcywgbnVsbHB0ciwgJmZyYW1lTG9hZGVyLCAm
ZnJhbWVMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgp
LCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRl
cnMucmVzb3VyY2VJRC50b1VJbnQ2NCgpCiAKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVM
RUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssIFdFQkxPQURFUlNUUkFURUdZ
X1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCTE9BREVSU1RSQVRFR1lfUkVM
RUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUywgIyNfX1ZBX0FSR1NfXykKICNkZWZpbmUgV0VC
TE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfRVJST1IoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VS
Uk9SKE5ldHdvcmssIFdFQkxPQURFUlNUUkFURUdZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBM
QVRFIGZtdCwgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVS
UywgIyNfX1ZBX0FSR1NfXykKQEAgLTE3MCw3ICsxNzAsNyBAQCBzdGF0aWMgU2Vjb25kcyBtYXhp
bXVtQnVmZmVyaW5nVGltZShDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UpCiAKIHZvaWQgV2ViTG9h
ZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZChSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIs
IENhY2hlZFJlc291cmNlKiByZXNvdXJjZSwgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQ
U1RvSFRUUFJlZGlyZWN0KQogewotICAgIFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmll
ciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBy
ZXNvdXJjZUxvYWRlci5pZGVudGlmaWVyKCk7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCiAg
ICAgYXV0byYgZnJhbWVMb2FkZXJDbGllbnQgPSByZXNvdXJjZUxvYWRlci5mcmFtZUxvYWRlcigp
LT5jbGllbnQoKTsKQEAgLTI5NSw3ICsyOTUsNyBAQCBzdGF0aWMgdm9pZCBhZGRQYXJhbWV0ZXJz
U2hhcmVkKGNvbnN0IEZyYW1lKiBmcmFtZSwgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcgog
CiB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpzY2hlZHVsZUxvYWRGcm9tTmV0d29ya1Byb2Nlc3Mo
UmVzb3VyY2VMb2FkZXImIHJlc291cmNlTG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGNvbnN0IFdlYlJlc291cmNlTG9hZGVyOjpUcmFja2luZ1BhcmFtZXRlcnMmIHRyYWNr
aW5nUGFyYW1ldGVycywgYm9vbCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGly
ZWN0LCBTZWNvbmRzIG1heGltdW1CdWZmZXJpbmdUaW1lKQogewotICAgIFJlc291cmNlTG9hZElk
ZW50aWZpZXIgaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKKyAgICBh
dXRvIGlkZW50aWZpZXIgPSByZXNvdXJjZUxvYWRlci5pZGVudGlmaWVyKCk7CiAgICAgQVNTRVJU
KGlkZW50aWZpZXIpOwogCiAgICAgQ29udGVudFNuaWZmaW5nUG9saWN5IGNvbnRlbnRTbmlmZmlu
Z1BvbGljeSA9IHJlc291cmNlTG9hZGVyLnNob3VsZFNuaWZmQ29udGVudCgpID8gQ29udGVudFNu
aWZmaW5nUG9saWN5OjpTbmlmZkNvbnRlbnQgOiBDb250ZW50U25pZmZpbmdQb2xpY3k6OkRvTm90
U25pZmZDb250ZW50OwpAQCAtNDczLDcgKzQ3Myw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6
OnJlbW92ZShSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAgICAgCi0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVz
b3VyY2VMb2FkZXItPmlkZW50aWZpZXIoKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSByZXNvdXJj
ZUxvYWRlci0+aWRlbnRpZmllcigpOwogICAgIGlmICghaWRlbnRpZmllcikgewogICAgICAgICBM
T0dfRVJST1IoIldlYkxvYWRlclN0cmF0ZWd5IHJlbW92aW5nIGEgUmVzb3VyY2VMb2FkZXIgdGhh
dCBoYXMgbm8gaWRlbnRpZmllci4iKTsKICAgICAgICAgcmV0dXJuOwpAQCAtNTY2LDcgKzU2Niw3
IEBAIFdlYkxvYWRlclN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdCBXZWJMb2FkZXJTdHJhdGVneTo6
bG9hZERhdGFVUkxTeW5jaHJvbm91c2x5KGNvCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3Rk
OjpvcHRpb25hbDxXZWJMb2FkZXJTdHJhdGVneTo6U3luY0xvYWRSZXN1bHQ+IFdlYkxvYWRlclN0
cmF0ZWd5Ojp0cnlMb2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihGcmFt
ZUxvYWRlciYgZnJhbWVMb2FkZXIsIFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQorc3RkOjpvcHRpb25hbDxXZWJMb2FkZXJT
dHJhdGVneTo6U3luY0xvYWRSZXN1bHQ+IFdlYkxvYWRlclN0cmF0ZWd5Ojp0cnlMb2FkaW5nU3lu
Y2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgYXV0byogd2ViRnJhbWVMb2FkZXJDbGllbnQg
PSB0b1dlYkZyYW1lTG9hZGVyQ2xpZW50KGZyYW1lTG9hZGVyLmNsaWVudCgpKTsKICAgICBhdXRv
KiB3ZWJGcmFtZSA9IHdlYkZyYW1lTG9hZGVyQ2xpZW50ID8gJndlYkZyYW1lTG9hZGVyQ2xpZW50
LT53ZWJGcmFtZSgpIDogbnVsbHB0cjsKQEAgLTU4Niw3ICs1ODYsNyBAQCBzdGQ6Om9wdGlvbmFs
PFdlYkxvYWRlclN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6OnRy
eUxvYWRpbmdTeQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLXZvaWQgV2ViTG9hZGVyU3RyYXRl
Z3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCB1
bnNpZ25lZCBsb25nIHJlc291cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5
LCAgY29uc3QgRmV0Y2hPcHRpb25zJiBvcHRpb25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiBvcmln
aW5hbFJlcXVlc3RIZWFkZXJzLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKK3ZvaWQgV2ViTG9hZGVyU3RyYXRl
Z3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2FkZXImIGZyYW1lTG9hZGVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwg
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNs
aWVudENyZWRlbnRpYWxQb2xpY3ksICBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0
IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291cmNlRXJyb3ImIGVy
cm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQog
ewogICAgIGF1dG8qIHdlYkZyYW1lTG9hZGVyQ2xpZW50ID0gdG9XZWJGcmFtZUxvYWRlckNsaWVu
dChmcmFtZUxvYWRlci5jbGllbnQoKSk7CiAgICAgYXV0byogd2ViRnJhbWUgPSB3ZWJGcmFtZUxv
YWRlckNsaWVudCA/ICZ3ZWJGcmFtZUxvYWRlckNsaWVudC0+d2ViRnJhbWUoKSA6IG51bGxwdHI7
CkBAIC02ODMsMTIgKzY4Myw2IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OmJyb3dzaW5nQ29u
dGV4dFJlbW92ZWQoRnJhbWUmIGZyYW1lKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVu
c3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2Vz
OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6QnJvd3NpbmdDb250ZXh0UmVtb3ZlZChw
YWdlLndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKSwgcGFnZS5pZGVudGlmaWVyKCksIFdlYkZyYW1l
Ojpmcm9tQ29yZUZyYW1lKGZyYW1lKS0+ZnJhbWVJRCgpKSwgMCk7CiB9CiAKLXVpbnQ2NF90IFdl
YkxvYWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCkKLXsKLSAgICBzdGF0aWMg
dWludDY0X3QgaWRlbnRpZmllciA9IDA7Ci0gICAgcmV0dXJuICsraWRlbnRpZmllcjsKLX0KLQog
Ym9vbCBXZWJMb2FkZXJTdHJhdGVneTo6dXNlUGluZ0xvYWQoKSBjb25zdAogewogICAgIHJldHVy
biAhUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5mZXRjaEFQSUtlZXBB
bGl2ZUVuYWJsZWQoKTsKQEAgLTcxMiw3ICs3MDYsNyBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5
OjpzdGFydFBpbmdMb2FkKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBj
bwogICAgIH0KIAogICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIGxvYWRQYXJhbWV0
ZXJzOwotICAgIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJMb2FkZXJTdHJhdGVneTo6
Z2VuZXJhdGVMb2FkSWRlbnRpZmllcigpOworICAgIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIg
PSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgbG9h
ZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQgPSB3ZWJQYWdlLT53ZWJQYWdlUHJveHlJZGVudGlm
aWVyKCk7CiAgICAgbG9hZFBhcmFtZXRlcnMud2ViUGFnZUlEID0gd2ViUGFnZS0+aWRlbnRpZmll
cigpOwogICAgIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQgPSB3ZWJGcmFtZS0+ZnJhbWVJRCgp
OwpAQCAtNzQ5LDcgKzc0Myw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnN0YXJ0UGluZ0xv
YWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvCiAgICAgV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVj
dGlvbigpLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpMb2Fk
UGluZyB7IGxvYWRQYXJhbWV0ZXJzIH0sIDApOwogfQogCi12b2lkIFdlYkxvYWRlclN0cmF0ZWd5
OjpkaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRfdCBwaW5nTG9hZElkZW50aWZpZXIsIFJlc291cmNl
RXJyb3ImJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlKQordm9pZCBXZWJMb2Fk
ZXJTdHJhdGVneTo6ZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yLCBSZXNvdXJj
ZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKGF1dG8gY29tcGxldGlvbkhhbmRsZXIg
PSBtX3BpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXJzLnRha2UocGluZ0xvYWRJZGVudGlmaWVyKSkK
ICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZShlcnJvciksIFdURk1vdmUocmVzcG9u
c2UpKTsKQEAgLTc4NywxMyArNzgxLDYgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJlY29u
bmVjdFRvKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UKICAgICAg
ICAgICAgIHJlcXVlc3Quc2V0SXNBcHBJbml0aWF0ZWQobG9hZGVyLT5sYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZCgpKTsKICAgICB9CiAKLSAgICBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBw
cmVjb25uZWN0aW9uSWRlbnRpZmllcjsKLSAgICBpZiAoY29tcGxldGlvbkhhbmRsZXIpIHsKLSAg
ICAgICAgcHJlY29ubmVjdGlvbklkZW50aWZpZXIgPSBXZWJMb2FkZXJTdHJhdGVneTo6Z2VuZXJh
dGVMb2FkSWRlbnRpZmllcigpOwotICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcHJlY29ubmVj
dENvbXBsZXRpb25IYW5kbGVycy5hZGQoKnByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKSk7Ci0gICAgICAgIEFTU0VSVF9VTlVTRUQoYWRkUmVzdWx0LCBh
ZGRSZXN1bHQuaXNOZXdFbnRyeSk7Ci0gICAgfQotCiAgICAgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBwYXJhbWV0ZXJzLnJlcXVlc3QgPSBXVEZNb3ZlKHJl
cXVlc3QpOwogICAgIGlmIChwYXJhbWV0ZXJzLnJlcXVlc3QuaHR0cFVzZXJBZ2VudCgpLmlzRW1w
dHkoKSkgewpAQCAtODAzLDYgKzc5MCw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNv
bm5lY3RUbyhXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBXZWJQYWdlCiAgICAg
ICAgIGlmICghd2ViUGFnZVVzZXJBZ2VudC5pc0VtcHR5KCkpCiAgICAgICAgICAgICBwYXJhbWV0
ZXJzLnJlcXVlc3Quc2V0SFRUUFVzZXJBZ2VudCh3ZWJQYWdlVXNlckFnZW50KTsKICAgICB9Cisg
ICAgcGFyYW1ldGVycy5pZGVudGlmaWVyID0gV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyOjpnZW5lcmF0ZSgpOwogICAgIHBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQgPSB3ZWJQYWdl
LndlYlBhZ2VQcm94eUlkZW50aWZpZXIoKTsKICAgICBwYXJhbWV0ZXJzLndlYlBhZ2VJRCA9IHdl
YlBhZ2UuaWRlbnRpZmllcigpOwogICAgIHBhcmFtZXRlcnMud2ViRnJhbWVJRCA9IHdlYkZyYW1l
LmZyYW1lSUQoKTsKQEAgLTgxOSwxMCArODA3LDE5IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6
OnByZWNvbm5lY3RUbyhXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBXZWJQYWdl
CiAgICAgcGFyYW1ldGVycy5pc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluID0gd2ViRnJhbWUu
aXNUb3BGcmFtZU5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKCk7CiAjZW5kaWYKIAorICAgIHN0
ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBwcmVjb25uZWN0
aW9uSWRlbnRpZmllcjsKKyAgICBpZiAoY29tcGxldGlvbkhhbmRsZXIpIHsKKyAgICAgICAgcHJl
Y29ubmVjdGlvbklkZW50aWZpZXIgPSBwYXJhbWV0ZXJzLmlkZW50aWZpZXI7CisgICAgICAgIGF1
dG8gYWRkUmVzdWx0ID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXJzLmFkZCgqcHJlY29u
bmVjdGlvbklkZW50aWZpZXIsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAg
QVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKKyAgICB9CisK
KyAgICAvLyBGSVhNRTogVXNlIHNlbmRXaXRoQXN5bmNSZXBseSBpbnN0ZWFkIG9mIHByZWNvbm5l
Y3Rpb25JZGVudGlmaWVyCisgICAgLy8gRklYTUU6IGRvbid0IHVzZSBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgZm9yIGEgcHJlY29ubmVjdGlvbiBpZGVudGlmaWVyLCB0b28uIEl0
IHNob3VsZCBoYXZlIGl0cyBvd24gdHlwZS4KICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5l
bnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdl
czo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OlByZWNvbm5lY3RUbyhwcmVjb25uZWN0
aW9uSWRlbnRpZmllciwgV1RGTW92ZShwYXJhbWV0ZXJzKSksIDApOwogfQogCi12b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rp
b25JZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCit2b2lkIFdlYkxvYWRlclN0cmF0
ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYmIGVycm9yKQogewog
ICAgIGlmIChhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gbV9wcmVjb25uZWN0Q29tcGxldGlvbkhh
bmRsZXJzLnRha2UocHJlY29ubmVjdGlvbklkZW50aWZpZXIpKQogICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcihXVEZNb3ZlKGVycm9yKSk7CkBAIC04NjMsMjEgKzg2MCwyMSBAQCB2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpzZXRDYXB0dXJlRXh0cmFOZXR3b3JrTG9hZE1ldHJpY3NFbmFibGVkKGJv
b2wgZW5hYmxlZCkKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb24oKS5jb25uZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OlNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljc0VuYWJs
ZWQoZW5hYmxlZCksIDApOwogfQogCi1SZXNvdXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5
OjpyZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9h
ZElkZW50aWZpZXIpCitSZXNvdXJjZVJlc3BvbnNlIFdlYkxvYWRlclN0cmF0ZWd5OjpyZXNwb25z
ZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNv
dXJjZUxvYWRJZGVudGlmaWVyKQogewogICAgIFJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2U7CiAg
ICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9u
KCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6R2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlIHsgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllciB9LCBNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Okdl
dE5ldHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZTo6UmVwbHkgeyByZXNwb25zZSB9LCAwKTsK
ICAgICByZXR1cm4gcmVzcG9uc2U7CiB9CiAKLVZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZv
cm1hdGlvbj4gV2ViTG9hZGVyU3RyYXRlZ3k6OmludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZy
b21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIp
CitWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IFdlYkxvYWRlclN0cmF0ZWd5
OjppbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikK
IHsKICAgICBWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+IGluZm9ybWF0aW9u
OwogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OkdldE5ldHdvcmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb24geyByZXNv
dXJjZUxvYWRJZGVudGlmaWVyIH0sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6R2V0TmV0d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbjo6UmVwbHkgeyBpbmZv
cm1hdGlvbiB9LCAwKTsKICAgICByZXR1cm4gaW5mb3JtYXRpb247CiB9CiAKLU5ldHdvcmtMb2Fk
TWV0cmljcyBXZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2Fk
SWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorTmV0d29ya0xvYWRN
ZXRyaWNzIFdlYkxvYWRlclN0cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKQogewogICAgIE5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljczsKICAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24o
KS5jb25uZWN0aW9uKCkuc2VuZFN5bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpUYWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MgeyByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyIH0sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6VGFr
ZU5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzOjpSZXBseSB7IG5ldHdvcmtNZXRyaWNzIH0s
IDApOwpAQCAtOTE5LDcgKzkxNiw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNldFJlc291
cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIFdlYkNvCiAKIHZvaWQg
V2ViTG9hZGVyU3RyYXRlZ3k6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxX
ZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcio+JiByZXNvdXJjZXMpCiB7Ci0gICAgYXV0byBpZGVu
dGlmaWVycyA9IHJlc291cmNlcy5tYXAoW10oYXV0byogbG9hZGVyKSAtPiBSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyIHsKKyAgICBhdXRvIGlkZW50aWZpZXJzID0gcmVzb3VyY2VzLm1hcChbXShhdXRv
KiBsb2FkZXIpIC0+IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB7CiAgICAgICAg
IHJldHVybiBsb2FkZXItPmlkZW50aWZpZXIoKTsKICAgICB9KTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKaW5kZXggYzc5
NmFlNTBmMTRjMTZlYzI1ZTZlMDE0OWQ3NjZiZjdkMTFlMTg3Yi4uNDA1YzczNDMwZTIxMDEyYjFl
MWFjNzg4OTY1Y2JjOTc2Nzc2MjM2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oCkBAIC00NCw3ICs0NCw2IEBAIGNsYXNz
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjsKIGNsYXNzIFdlYkZyYW1lOwogY2xhc3MgV2ViUGFn
ZTsKIGNsYXNzIFdlYlVSTFNjaGVtZVRhc2tQcm94eTsKLXR5cGVkZWYgdWludDY0X3QgUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllcjsKIAogY2xhc3MgV2ViTG9hZGVyU3RyYXRlZ3kgZmluYWwgOiBwdWJs
aWMgV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3kgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdl
YkxvYWRlclN0cmF0ZWd5KTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CkBAIC01Myw3ICs1Miw3
IEBAIHB1YmxpYzoKICAgICB+V2ViTG9hZGVyU3RyYXRlZ3koKSBmaW5hbDsKICAgICAKICAgICB2
b2lkIGxvYWRSZXNvdXJjZShXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkNhY2hlZFJlc291cmNl
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVyT3B0aW9ucyYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyPiYmKT4mJikgZmluYWw7Ci0gICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJv
bm91c2x5KFdlYkNvcmU6OkZyYW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpDbGll
bnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25zdCBX
ZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpIGZpbmFsOworICAgIHZv
aWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXZWJDb3JlOjpGcmFtZUxvYWRlciYsIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgV2ViQ29yZTo6RmV0
Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBk
YXRhKSBmaW5hbDsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxldGVkKFdlYkNvcmU6OlBhZ2UmKSBm
aW5hbDsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViQ29yZTo6RnJhbWUmKSBm
aW5hbDsKIApAQCAtNjgsMTUgKzY3LDE1IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgdXNlUGluZ0xv
YWQoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIHN0YXJ0UGluZ0xvYWQoV2ViQ29yZTo6RnJhbWUm
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFw
JiBvcmlnaW5hbFJlcXVlc3RIZWFkZXJzLCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBX
ZWJDb3JlOjpDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uLCBQaW5nTG9hZENvbXBsZXRp
b25IYW5kbGVyJiYpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoUGluZ0xvYWQodWludDY0X3Qg
cGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmJik7CisgICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJiYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJik7CiAKICAgICB2b2lkIHBy
ZWNvbm5lY3RUbyhXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViUGFnZSYsIFdlYkZyYW1l
JiwgV2ViQ29yZTo6U3RvcmVkQ3JlZGVudGlhbHNQb2xpY3ksIFByZWNvbm5lY3RDb21wbGV0aW9u
SGFuZGxlciYmID0gbnVsbHB0cik7CiAgICAgdm9pZCBwcmVjb25uZWN0VG8oV2ViQ29yZTo6RnJh
bWVMb2FkZXImLCBjb25zdCBVUkwmLCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSwg
UHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyJiYpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNo
UHJlY29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJiYpOwogCiAgICAgdm9pZCBzZXRDYXB0dXJlRXh0cmFOZXR3b3Jr
TG9hZE1ldHJpY3NFbmFibGVkKGJvb2wpIGZpbmFsOwogCi0gICAgV2ViUmVzb3VyY2VMb2FkZXIq
IHdlYlJlc291cmNlTG9hZGVyRm9ySWRlbnRpZmllcihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlk
ZW50aWZpZXIpIGNvbnN0IHsgcmV0dXJuIG1fd2ViUmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlm
aWVyKTsgfQorICAgIFdlYlJlc291cmNlTG9hZGVyKiB3ZWJSZXNvdXJjZUxvYWRlckZvcklkZW50
aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIGNvbnN0
IHsgcmV0dXJuIG1fd2ViUmVzb3VyY2VMb2FkZXJzLmdldChpZGVudGlmaWVyKTsgfQogICAgIHZv
aWQgc2NoZWR1bGVQbHVnaW5TdHJlYW1Mb2FkKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6TmV0
c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXJDbGllbnQmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
JiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8V2ViQ29yZTo6TmV0c2NhcGVQbHVnSW5T
dHJlYW1Mb2FkZXI+JiYpPiYmKTsKIAogICAgIHZvaWQgbmV0d29ya1Byb2Nlc3NDcmFzaGVkKCk7
CkBAIC05MCw4ICs4OSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIGFkZE9ubGluZVN0YXRlQ2hhbmdl
TGlzdGVuZXIoRnVuY3Rpb248dm9pZChib29sKT4mJikgZmluYWw7CiAgICAgdm9pZCBzZXRPbkxp
bmVTdGF0ZShib29sKTsKIAotICAgIHN0YXRpYyB1aW50NjRfdCBnZW5lcmF0ZUxvYWRJZGVudGlm
aWVyKCk7Ci0KICAgICB2b2lkIHNldEV4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZp
ZXJUb1Jlc3VtZShzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBl
eGlzdGluZ05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUpIHsgbV9leGlzdGlu
Z05ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWUgPSBleGlzdGluZ05ldHdvcmtS
ZXNvdXJjZUxvYWRJZGVudGlmaWVyVG9SZXN1bWU7IH0KIAogICAgIHN0YXRpYyBjb25zdGV4cHIg
U2Vjb25kcyBtZWRpYU1heGltdW1CdWZmZXJpbmdUaW1lIHsgNTBfbXMgfTsKQEAgLTEwOCwxMiAr
MTA1LDEyIEBAIHByaXZhdGU6CiAgICAgICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJyb3I7
CiAgICAgICAgIFZlY3Rvcjx1aW50OF90PiBkYXRhOwogICAgIH07Ci0gICAgc3RkOjpvcHRpb25h
bDxTeW5jTG9hZFJlc3VsdD4gdHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhh
bmRsZXIoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKKyAgICBzdGQ6Om9wdGlvbmFsPFN5bmNMb2Fk
UmVzdWx0PiB0cnlMb2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1lSGFuZGxlcihXZWJD
b3JlOjpGcmFtZUxvYWRlciYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgU3luY0xvYWRSZXN1bHQgbG9hZERh
dGFVUkxTeW5jaHJvbm91c2x5KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwogCi0g
ICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZUZyb21SZXNvdXJjZUxvYWRJZGVu
dGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIGZpbmFsOwotICAgIFZlY3Rv
cjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9h
ZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VM
b2FkSWRlbnRpZmllcikgZmluYWw7Ci0gICAgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzIG5l
dHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VM
b2FkSWRlbnRpZmllcikgZmluYWw7CisgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZUZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcikgZmluYWw7CisgICAgVmVjdG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2FjdGlvbklu
Zm9ybWF0aW9uPiBpbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRl
bnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIFdl
YkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAKICAg
ICBib29sIHNob3VsZFBlcmZvcm1TZWN1cml0eUNoZWNrcygpIGNvbnN0IGZpbmFsOwogICAgIGJv
b2wgaGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBjb25zdCBmaW5hbDsKQEAgLTEyMyw5ICsxMjAsOSBAQCBwcml2YXRlOgogICAgIHZv
aWQgc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZSYsIFdlYkNvcmU6
OkxvYWRTY2hlZHVsaW5nTW9kZSkgZmluYWw7CiAgICAgdm9pZCBwcmlvcml0aXplUmVzb3VyY2VM
b2Fkcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXIqPiYpIGZpbmFsOwog
Ci0gICAgVmVjdG9yPHVpbnQ2NF90PiBvbmdvaW5nTG9hZHMoKSBjb25zdCBmaW5hbAorICAgIFZl
Y3RvcjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG9uZ29pbmdMb2FkcygpIGNv
bnN0IGZpbmFsCiAgICAgewotICAgICAgICByZXR1cm4gV1RGOjptYXAobV93ZWJSZXNvdXJjZUxv
YWRlcnMsIFtdKGF1dG8mJiBrZXlWYWx1ZSkgLT4gdWludDY0X3QgeworICAgICAgICByZXR1cm4g
V1RGOjptYXAobV93ZWJSZXNvdXJjZUxvYWRlcnMsIFtdKGF1dG8mJiBrZXlWYWx1ZSkgLT4gV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHsKICAgICAgICAgICAgIHJldHVybiBrZXlW
YWx1ZS5rZXk7CiAgICAgICAgIH0pOwogICAgIH0KQEAgLTEzMywxMCArMTMwLDEwIEBAIHByaXZh
dGU6CiAgICAgSGFzaFNldDxSZWZQdHI8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+PiBtX2ludGVy
bmFsbHlGYWlsZWRSZXNvdXJjZUxvYWRlcnM7CiAgICAgUnVuTG9vcDo6VGltZXI8V2ViTG9hZGVy
U3RyYXRlZ3k+IG1faW50ZXJuYWxseUZhaWxlZExvYWRUaW1lcjsKICAgICAKLSAgICBIYXNoTWFw
PHVuc2lnbmVkIGxvbmcsIFJlZlB0cjxXZWJSZXNvdXJjZUxvYWRlcj4+IG1fd2ViUmVzb3VyY2VM
b2FkZXJzOwotICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgV2ViVVJMU2NoZW1lVGFza1Byb3h5
Kj4gbV91cmxTY2hlbWVUYXNrczsKLSAgICBIYXNoTWFwPHVuc2lnbmVkIGxvbmcsIFBpbmdMb2Fk
Q29tcGxldGlvbkhhbmRsZXI+IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcnM7Ci0gICAgSGFz
aE1hcDx1bnNpZ25lZCBsb25nLCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXI+IG1fcHJlY29u
bmVjdENvbXBsZXRpb25IYW5kbGVyczsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgUmVmUHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJjZUxv
YWRlcnM7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdl
YlVSTFNjaGVtZVRhc2tQcm94eSo+IG1fdXJsU2NoZW1lVGFza3M7CisgICAgSGFzaE1hcDxXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFBpbmdMb2FkQ29tcGxldGlvbkhhbmRsZXI+
IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcnM7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcj4gbV9wcmVj
b25uZWN0Q29tcGxldGlvbkhhbmRsZXJzOwogICAgIFZlY3RvcjxGdW5jdGlvbjx2b2lkKGJvb2wp
Pj4gbV9vbmxpbmVTdGF0ZUNoYW5nZUxpc3RlbmVyczsKICAgICBzdGQ6Om9wdGlvbmFsPE5ldHdv
cmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPiBtX2V4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElk
ZW50aWZpZXJUb1Jlc3VtZTsKICAgICBib29sIG1faXNPbkxpbmUgeyB0cnVlIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2Vw
dENvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVz
b3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcAppbmRleCBkMzY0ZTcwMTJkODNiZmEyOTUzOGU0
YmI3MDljN2E1N2ExYmZkNDhhLi41NmM3YmNkYzA4MjRmOTgyZTA5ZTVlZGQwZmNjMzI1Njg1OGU0
YWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNv
dXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5jcHAKQEAgLTI4LDI5ICsy
OCwyOSBAQAogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotYm9vbCBXZWJSZXNvdXJjZUludGVyY2Vw
dENvbnRyb2xsZXI6OmlzSW50ZXJjZXB0aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgY29u
c3QKK2Jvb2wgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyhX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QKIHsKICAg
ICByZXR1cm4gbV9pbnRlcmNlcHRlZFJlc3BvbnNlUXVldWUuY29udGFpbnMoaWRlbnRpZmllcik7
CiB9CiAKLXZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpiZWdpbkludGVyY2Vw
dGluZ1Jlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgV2ViUmVzb3VyY2VJ
bnRlcmNlcHRDb250cm9sbGVyOjpiZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIG1faW50ZXJjZXB0ZWRS
ZXNwb25zZVF1ZXVlLnNldChpZGVudGlmaWVyLCBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+PigpKTsK
IH0KIAotdm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmNvbnRpbnVlUmVzcG9u
c2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENv
bnRyb2xsZXI6OmNvbnRpbnVlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBxdWV1ZSA9IG1faW50ZXJjZXB0ZWRSZXNwb25z
ZVF1ZXVlLnRha2UoaWRlbnRpZmllcik7CiAgICAgZm9yIChhdXRvJiBjYWxsYmFjayA6IHF1ZXVl
KQogICAgICAgICBjYWxsYmFjaygpOwogfQogCi12b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29u
dHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2
b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZShX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX2lu
dGVyY2VwdGVkUmVzcG9uc2VRdWV1ZS5yZW1vdmUoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2Vi
UmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjpkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIEZ1bmN0aW9uPHZvaWQoKT4mJiBmdW5jdGlvbikKK3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNl
cHRDb250cm9sbGVyOjpkZWZlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgRnVuY3Rpb248dm9pZCgpPiYmIGZ1bmN0aW9uKQogewogICAgIEFTU0VSVChpc0lu
dGVyY2VwdGluZyhpZGVudGlmaWVyKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5oIGIvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVy
LmgKaW5kZXggZDcxYjkwNzNlYTQ1Yzg2MTAyZWI0ODc1ZDlmOTFjMDAxYzg5ZThmNi4uODgzNzgy
NzAwYmE5YzcxZmIyNjc2YWY3ZjYzYTZlMGMzZmVmY2I2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNl
cHRDb250cm9sbGVyLmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9E
ZXF1ZS5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+CkBAIC0zMywyMSArMzQsMjEgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIFdlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlciB7CiBwdWJsaWM6Ci0gICAgYm9vbCBpc0ludGVyY2Vw
dGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGNvbnN0OworICAgIGJvb2wgaXNJbnRlcmNl
cHRpbmcoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBjb25zdDsKIAogICAgIC8v
IFN0YXJ0IGludGVyY2VwdGluZyBhIHJlc3BvbnNlLgotICAgIHZvaWQgYmVnaW5JbnRlcmNlcHRp
bmdSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgYmVnaW5JbnRl
cmNlcHRpbmdSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAg
ICAgLy8gU3RvcCBpbnRlcmNlcHRpbmcgYSByZXNwb25zZS4gQW4gaW50ZXJjZXB0IHJlc3BvbnNl
IHdhcyBub3Qgc3VwcGxpZWQuIFNlbmQgZGVmZXJyZWQgbmV0d29ya2luZyBjYWxsYmFja3MuCi0g
ICAgdm9pZCBjb250aW51ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAg
dm9pZCBjb250aW51ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7
CiAKICAgICAvLyBTdG9wIGludGVyY2VwdGluZyBhIHJlc3BvbnNlLiBBbiBpbnRlcmNlcHQgcmVz
cG9uc2Ugd2FzIHN1cHBsaWVkLiBTZW5kIG5vIGRlZmVycmVkIG5ldHdvcmtpbmcgY2FsbGJhY2tz
LgotICAgIHZvaWQgaW50ZXJjZXB0ZWRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
OworICAgIHZvaWQgaW50ZXJjZXB0ZWRSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOwogCi0gICAgdm9pZCBkZWZlcih1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIEZ1
bmN0aW9uPHZvaWQoKT4mJik7CisgICAgdm9pZCBkZWZlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIEZ1bmN0aW9uPHZvaWQoKT4mJik7CiAKIHByaXZhdGU6Ci0gICAgSGFzaE1h
cDx1bnNpZ25lZCBsb25nLCBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+Pj4gbV9pbnRlcmNlcHRlZFJl
c3BvbnNlUXVldWU7CisgICAgSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+PiBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZTsK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGVjZDQwNTJlYWMw
MzgwMjgyNTVhNzg2MjM2ZTE5Njk4NTNhZmExZDguLmM5ZmNiMGQ3OGY5M2ZjNWYwZjgxMzY2YzBi
MTMwOThjM2YzZTA2YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
TmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTU0LDcgKzU0LDcgQEAKICNpbmNsdWRl
IDxXZWJDb3JlL1N1YnJlc291cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25I
YW5kbGVyLmg+CiAKLSNkZWZpbmUgV0VCUkVTT1VSQ0VMT0FERVJfUkVMRUFTRV9MT0coZm10LCAu
Li4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFt3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICJdIFdlYlJlc291cmNlTG9h
ZGVyOjoiIGZtdCwgdGhpcywgbV90cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0KCks
IG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1BhcmFt
ZXRlcnMucmVzb3VyY2VJRCwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgV0VCUkVTT1VSQ0VMT0FE
RVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFt3ZWJQ
YWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJ
dTY0ICJdIFdlYlJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV90cmFja2luZ1BhcmFtZXRl
cnMucGFnZUlELnRvVUludDY0KCksIG1fdHJhY2tpbmdQYXJhbWV0ZXJzLmZyYW1lSUQudG9VSW50
NjQoKSwgbV90cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRC50b1VJbnQ2NCgpLCAjI19fVkFf
QVJHU19fKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpA
QCAtODMsNyArODMsNyBAQCB1aW50NjRfdCBXZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRl
ckRlc3RpbmF0aW9uSUQoKSBjb25zdAogewogICAgIFJFTEVBU0VfQVNTRVJUKFJ1bkxvb3A6Omlz
TWFpbigpKTsKICAgICBSRUxFQVNFX0FTU0VSVChtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSk7
Ci0gICAgcmV0dXJuIG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpOworICAgIHJldHVybiBtX2Nv
cmVMb2FkZXItPmlkZW50aWZpZXIoKS50b1VJbnQ2NCgpOwogfQogCiB2b2lkIFdlYlJlc291cmNl
TG9hZGVyOjpkZXRhY2hGcm9tQ29yZUxvYWRlcigpCkBAIC0xNTMsNyArMTUzLDcgQEAgdm9pZCBX
ZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBib28KICAgICB9CiAKICAgICBpZiAoSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0OjpzaG91bGRJbnRlcmNlcHRSZXNwb25zZShtX2NvcmVMb2FkZXItPmZyYW1lKCks
IHJlc3BvbnNlKSkgewotICAgICAgICB1bnNpZ25lZCBsb25nIGludGVyY2VwdGVkUmVxdWVzdElk
ZW50aWZpZXIgPSBtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKTsKKyAgICAgICAgYXV0byBpbnRl
cmNlcHRlZFJlcXVlc3RJZGVudGlmaWVyID0gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAg
ICAgICAgIG1faW50ZXJjZXB0Q29udHJvbGxlci5iZWdpbkludGVyY2VwdGluZ1Jlc3BvbnNlKGlu
dGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIpOwogICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQ6OmludGVyY2VwdFJlc3BvbnNlKG1fY29yZUxvYWRlci0+ZnJhbWUoKSwgcmVz
cG9uc2UsIGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIsIFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gbWFrZVJlZigqdGhpcyksIGludGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIsIHBvbGljeURl
Y2lzaW9uQ29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKHBvbGljeURlY2lzaW9uQ29tcGxldGlv
bkhhbmRsZXIpXShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBpbnNwZWN0b3JSZXNwb25zZSwgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4gb3ZlcnJpZGVEYXRhKSBtdXRhYmxlIHsKICAgICAgICAgICAgIGlm
ICghbV9jb3JlTG9hZGVyIHx8ICFtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKSkgewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIu
aCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmgK
aW5kZXggMzU1MjAxYjk3MDQzNWM1NGQ1NGIzZmJmOWU0NDJhY2QyYmNiMmIxMi4uYTIyZTYyZjI4
YjVmYTRjZmM5MWFhNWU1Y2U4MmNhMjdhZTI2YWQ1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCkBAIC0zMyw2ICszMyw3
IEBACiAjaW5jbHVkZSAiV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmgiCiAjaW5jbHVk
ZSA8V2ViQ29yZS9GcmFtZUlkZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BhZ2VJZGVu
dGlmaWVyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIApA
QCAtNTAsMTUgKzUxLDEzIEBAIGNsYXNzIFJlc291cmNlUmVzcG9uc2U7CiAKIG5hbWVzcGFjZSBX
ZWJLaXQgewogCi10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7Ci0KIGNs
YXNzIFdlYlJlc291cmNlTG9hZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V2ViUmVzb3VyY2VMb2Fk
ZXI+LCBwdWJsaWMgSVBDOjpNZXNzYWdlU2VuZGVyIHsKIHB1YmxpYzoKICAgICBzdHJ1Y3QgVHJh
Y2tpbmdQYXJhbWV0ZXJzIHsKICAgICAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQYWdl
UHJveHlJRDsKICAgICAgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlEOwogICAgICAg
ICBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRDsKLSAgICAgICAgUmVzb3VyY2VMb2Fk
SWRlbnRpZmllciByZXNvdXJjZUlEIHsgMCB9OworICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRDsKICAgICB9OwogCiAgICAgc3RhdGljIFJlZjxXZWJS
ZXNvdXJjZUxvYWRlcj4gY3JlYXRlKFJlZjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4mJiwgY29u
c3QgVHJhY2tpbmdQYXJhbWV0ZXJzJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaApp
bmRleCAwNmIzMjVjNTBlNzQ0MjQxZDQ3ODUxZjEwNzk1ZDBiNmVkMDRlMzcwLi41OTk2ZTZjY2Fl
ZDhhZTc2YjRkYmIwODQ5MTliOGI0YmYwMDEzY2FiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25u
ZWN0aW9uLmgKQEAgLTEzNSw3ICsxMzUsNyBAQCBwcml2YXRlOgogICAgIHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
cGFnZUlEOyB9CiAgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXI+IGZy
YW1lSUQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2ZyYW1lSUQ7IH0KIAotICAgIGJvb2wgc2hv
dWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25l
ZCBsb25nKSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50
aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogICAgIGJvb2wgaXNTZXJ2aWNl
V29ya2VyRnJhbWVMb2FkZXJDbGllbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAK
ICAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IFVSTCYpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1f
dXNlckFnZW50OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCAwMDg4OWIw
MGM4NTc5MzU5OGI3ZmUxMzMwZWYyOWQ4NmE3N2VlNDhmLi4wZThiOTdhNjdlNTc4OGNmNTBlZGJm
MDU1Mjg0ODkxYTRlNThlYWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKQEAg
LTIyMSw3ICsyMjEsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkZXRhY2hlZEZyb21Q
YXJlbnQzKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0lu
aXRpYWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAg
V2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBA
IC0yMzUsNyArMjM1LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRp
ZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICB3ZWJQYWdlLT5h
ZGRSZXNvdXJjZVJlcXVlc3QoaWRlbnRpZmllciwgcmVxdWVzdCk7CiB9CiAKLXZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSog
d2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yNTIsNyAr
MjUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVl
c3QoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb24KICAgICB9CiB9CiAKLWJvb2wgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50TG9hZGVy
KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFt
ZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTI2MSwxMyArMjYxLDEzIEBAIGJvb2wg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQKICAgICByZXR1cm4gd2ViUGFnZS0+aW5qZWN0ZWRCdW5kbGVSZXNv
dXJjZUxvYWRDbGllbnQoKS5zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSgqd2ViUGFnZSwgbV9m
cmFtZSwgaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZywgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQordm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uo
RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikKIHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
IH0KIAogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi1ib29sIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJiBwcm90
ZWN0aW9uU3BhY2UpCitib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVB
Z2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkK
IHsKICAgICAvLyBUaGUgV2ViS2l0IDIgTmV0d29ya2luZyBwcm9jZXNzIGFza3MgdGhlIFVJUHJv
Y2VzcyBkaXJlY3RseSwgc28gdGhlIFdlYkNvbnRlbnQgcHJvY2VzcyBzaG91bGQgbmV2ZXIgcmVj
ZWl2ZSB0aGlzIGNhbGxiYWNrLgogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtMjc1LDcg
KzI3NSw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWlu
c3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
c3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgV2ViUGFnZSogd2Vi
UGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0yODQsNyArMjg0
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9u
c2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZAogICAgIHdlYlBhZ2UtPmluamVjdGVkQnVuZGxl
UmVzb3VyY2VMb2FkQ2xpZW50KCkuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoKndlYlBh
Z2UsIG1fZnJhbWUsIGlkZW50aWZpZXIsIHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpCit2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50
TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBkYXRhTGVu
Z3RoKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYg
KCF3ZWJQYWdlKQpAQCAtMzAzLDcgKzMwMyw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1CiB9
CiAjZW5kaWYKIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hM
b2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9h
ZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViUGFn
ZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0zMTMs
NyArMzEzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hM
b2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG8KICAgICB3ZWJQYWdlLT5yZW1vdmVS
ZXNvdXJjZVJlcXVlc3QoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJv
cikKIHsKICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICgh
d2ViUGFnZSkKQEAgLTg0OSw4ICs4NDksOSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9ucwogICAg
IGF1dG8qIGNvcmVGcmFtZSA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpOwogICAgIGF1dG8qIHBvbGlj
eURvY3VtZW50TG9hZGVyID0gY29yZUZyYW1lID8gY29yZUZyYW1lLT5sb2FkZXIoKS5wcm92aXNp
b25hbERvY3VtZW50TG9hZGVyKCkgOiBudWxscHRyOwogICAgIGF1dG8gbmF2aWdhdGlvbklEID0g
cG9saWN5RG9jdW1lbnRMb2FkZXIgPyBzdGF0aWNfY2FzdDxXZWJEb2N1bWVudExvYWRlciY+KCpw
b2xpY3lEb2N1bWVudExvYWRlcikubmF2aWdhdGlvbklEKCkgOiAwOwotICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgYmUgdXNpbmcgYSBzdHJvbmdseS10eXBlZCBpZGVudGlmaWVyIGZvciBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllci4KLSAgICBhdXRvIG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVy
ID0gcG9saWN5RG9jdW1lbnRMb2FkZXIgJiYgcG9saWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNv
dXJjZUxvYWRlcigpID8gcG9saWN5RG9jdW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigp
LT5pZGVudGlmaWVyKCkgOiAwOworICAgIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKKyAgICBpZiAoYXV0
byBtYWluUmVzb3VyY2VMb2FkZXIgPSBwb2xpY3lEb2N1bWVudExvYWRlciA/IHBvbGljeURvY3Vt
ZW50TG9hZGVyLT5tYWluUmVzb3VyY2VMb2FkZXIoKSA6IG51bGxwdHIpCisgICAgICAgIG1haW5S
ZXNvdXJjZUxvYWRJZGVudGlmaWVyID0gbWFpblJlc291cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7
CiAKICAgICBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlID0gcG9saWN5ID09IFdLQnVu
ZGxlUGFnZVBvbGljeUFjdGlvblVzZTsKICAgICBhdXRvIHByb3RlY3RvciA9IG1fZnJhbWUuY29w
eVJlZigpOwpAQCAtMTgwOCw3ICsxODA5LDcgQEAgUmVtb3RlQVhPYmplY3RSZWYgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKQogICAgIHJldHVybiB3ZWJQ
YWdlLT5hY2Nlc3NpYmlsaXR5UmVtb3RlT2JqZWN0KCk7CiB9CiAgICAgCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikgY29uc3QKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5TQ2Fj
aGVkVVJMUmVzcG9uc2UqIHJlc3BvbnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVk
VVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgV2ViUGFn
ZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBpZiAoIXdlYlBhZ2UpCkBAIC0xODg5
LDcgKzE4OTAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzZW5kSDJQaW5nKGNvbnN0
IFVSTCYgdXJsLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4cAogCiAgICAgTmV0d29ya1Jlc291
cmNlTG9hZFBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAgICBwYXJhbWV0ZXJzLnJlcXVlc3QgPSBS
ZXNvdXJjZVJlcXVlc3QodXJsKTsKLSAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJMb2Fk
ZXJTdHJhdGVneTo6Z2VuZXJhdGVMb2FkSWRlbnRpZmllcigpOworICAgIHBhcmFtZXRlcnMuaWRl
bnRpZmllciA9IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsK
ICAgICBwYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlEID0gd2ViUGFnZS0+d2ViUGFnZVByb3h5SWRl
bnRpZmllcigpOwogICAgIHBhcmFtZXRlcnMud2ViUGFnZUlEID0gd2ViUGFnZS0+aWRlbnRpZmll
cigpOwogICAgIHBhcmFtZXRlcnMud2ViRnJhbWVJRCA9IG1fZnJhbWUtPmZyYW1lSUQoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5kZXggNzdkYTQxMTg4MjI0OGUyYzBlYmVkYzE3Zjc4
YjQzY2I4OTBkNWE4MC4uYTY5ODVhNzgwNDRhYjJhNzYzZTQ5NGM2ODU3OTgzMzE3NmFhNzdhOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTgxLDIxICs4MSwyMSBAQCBwcml2YXRl
OgogICAgIHZvaWQgZGV0YWNoZWRGcm9tUGFyZW50MigpIGZpbmFsOwogICAgIHZvaWQgZGV0YWNo
ZWRGcm9tUGFyZW50MygpIGZpbmFsOwogICAgIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRv
SW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVu
dExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIHZv
aWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYpIGZpbmFsOwogICAgIAotICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJl
cXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9u
c2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOwotICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlh
bFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7
CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKICNpZiBVU0UoUFJPVEVDVElP
Tl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFBy
b3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7CisgICAgYm9v
bCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpCi0gICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFs
OworICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlk
RmluaXNoTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZp
bmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJy
b3ImKSBmaW5hbDsKICAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNh
Y2hlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpIGZpbmFs
OwogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKICAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNo
RGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRzKSBmaW5hbDsKQEAgLTIzOCw3
ICsyMzgsNyBAQCBwcml2YXRlOgogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFJlbW90ZUFYT2Jq
ZWN0UmVmIGFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKSBmaW5hbDsKICAgICAKLSAgICB2b2lk
IHdpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHdpbGxD
YWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKIAogICAgIE5TRGlj
dGlvbmFyeSAqZGF0YURldGVjdGlvbkNvbnRleHQoKSBmaW5hbDsKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L2lvcy9XZWJGcmFtZUxv
YWRlckNsaWVudElPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9pb3MvV2ViRnJhbWVMb2FkZXJDbGllbnRJT1MubW0KaW5kZXggZWFkNDM5MmE1NDg5ODA2NmMw
MWY1Y2MwMjg4NDI2Y2Y0ZDMwNGMwMi4uNjE3ZThmYmY4Mjg0NzY4MGNlMjhkZjU4YWQzYTkwNWNm
MmYxNzJlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L2lvcy9XZWJGcmFtZUxvYWRlckNsaWVudElPUy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkZyYW1lTG9hZGVyQ2xpZW50SU9TLm1tCkBA
IC01OCw3ICs1OCw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmZvcmNlTGF5b3V0T25S
ZXN0b3JlRnJvbUJhY2tGb3J3YXJkQ2FjaGUoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotUmV0
YWluUHRyPENGRGljdGlvbmFyeVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Q
cm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorUmV0
YWluUHRyPENGRGljdGlvbmFyeVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Q
cm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKaW5kZXggMzYyMDhi
MDNmOGNjNjM2Nzg2NzFkZGJkYjRjYTI3ZmI5YmIxNWRjMy4uMzdiMjhlM2U5ZjI1NDJlZDVmNzNi
NTJiOWUwOWIwNWI2M2I0OGE2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViRnJhbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYkZyYW1lLmNwcApAQCAtMzA0LDE0ICszMDQsMTIgQEAgdm9pZCBXZWJGcmFtZTo6Y29u
dmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKERvY3VtZW50TG9hZGVyKiBkb2N1bWVudExv
YWRlciwKICAgICBTdWJyZXNvdXJjZUxvYWRlciogbWFpblJlc291cmNlTG9hZGVyID0gZG9jdW1l
bnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpOwogCiAgICAgYXV0byYgd2ViUHJvY2VzcyA9
IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpOwotICAgIC8vIFVzZSAwIHRvIGluZGljYXRlIHRoYXQg
dGhlIHJlc291cmNlIGxvYWQgY2FuJ3QgYmUgY29udmVydGVkIGFuZCBhIG5ldyBkb3dubG9hZCBt
dXN0IGJlIHN0YXJ0ZWQuCisgICAgLy8gVXNlIHN0ZDo6bnVsbG9wdCB0byBpbmRpY2F0ZSB0aGF0
IHRoZSByZXNvdXJjZSBsb2FkIGNhbid0IGJlIGNvbnZlcnRlZCBhbmQgYSBuZXcgZG93bmxvYWQg
bXVzdCBiZSBzdGFydGVkLgogICAgIC8vIFRoaXMgY2FuIGhhcHBlbiBpZiB0aGVyZSBpcyBubyBs
b2FkZXIgYmVjYXVzZSB0aGUgbWFpbiByZXNvdXJjZSBpcyBpbiB0aGUgV2ViQ29yZSBtZW1vcnkg
Y2FjaGUsCiAgICAgLy8gb3IgYmVjYXVzZSB0aGUgY29udmVyc2lvbiB3YXMgYXR0ZW1wdGVkIHdo
ZW4gbm90IGNhbGxpbmcgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSgpLgot
ICAgIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyOworICAgIHN0ZDo6b3B0aW9u
YWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtYWluUmVzb3VyY2VMb2FkSWRl
bnRpZmllcjsKICAgICBpZiAobWFpblJlc291cmNlTG9hZGVyKQogICAgICAgICBtYWluUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllciA9IG1haW5SZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigpOwotICAg
IGVsc2UKLSAgICAgICAgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIgPSAwOwogCiAgICAgc3Rk
OjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNBcHBCb3VuZCA9IE5hdmln
YXRpbmdUb0FwcEJvdW5kRG9tYWluOjpObzsKICAgICBpc0FwcEJvdW5kID0gbV9pc05hdmlnYXRp
bmdUb0FwcEJvdW5kRG9tYWluOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcAppbmRleCAzOGI4Y2QwOTJmYTljNjAyYmE2MmQ5ZDcyYzk5NGFhODdhMzdiMTYw
Li5mMTc1ZDA5YTkwZDUyZDYyZjcwMTFkNmQ1MzVjMGExNmI3NGU5YzJmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtNDMyMSwxMCArNDMyMSwx
MCBAQCBXZWJGdWxsU2NyZWVuTWFuYWdlciogV2ViUGFnZTo6ZnVsbFNjcmVlbk1hbmFnZXIoKQog
fQogI2VuZGlmCiAKLXZvaWQgV2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UoRnJhbWVJZGVudGlm
aWVyIGZyYW1lSUQsIE1lc3NhZ2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsIG1l
c3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1aW50NjRfdCByZXF1ZXN0SUQpCit2
b2lkIFdlYlBhZ2U6OmFkZENvbnNvbGVNZXNzYWdlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBN
ZXNzYWdlU291cmNlIG1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCBtZXNzYWdlTGV2ZWwsIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJl
cXVlc3RJRCkKIHsKICAgICBpZiAoYXV0byogZnJhbWUgPSBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS53ZWJGcmFtZShmcmFtZUlEKSkKLSAgICAgICAgZnJhbWUtPmFkZENvbnNvbGVNZXNzYWdlKG1l
c3NhZ2VTb3VyY2UsIG1lc3NhZ2VMZXZlbCwgbWVzc2FnZSwgcmVxdWVzdElEKTsKKyAgICAgICAg
ZnJhbWUtPmFkZENvbnNvbGVNZXNzYWdlKG1lc3NhZ2VTb3VyY2UsIG1lc3NhZ2VMZXZlbCwgbWVz
c2FnZSwgcmVxdWVzdElELnRvVUludDY0KCkpOwogfQogCiB2b2lkIFdlYlBhZ2U6OnNlbmRDU1BW
aW9sYXRpb25SZXBvcnQoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGNvbnN0IFVSTCYgcmVwb3J0
VVJMLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlJiYgcmVwb3J0RGF0YSkKQEAgLTU1MjgsNyArNTUy
OCw3IEBAIHZvaWQgV2ViUGFnZTo6c2F2ZVBERlRvVGVtcG9yYXJ5Rm9sZGVyQW5kT3BlbldpdGhO
YXRpdmVBcHBsaWNhdGlvbihjb25zdCBTdHJpbmcmCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdl
OjphZGRSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFdlYlBhZ2U6OmFkZFJlc291cmNl
UmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIGlmICghcmVxdWVz
dC51cmwoKS5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTU1
NDMsNyArNTU0Myw3IEBAIHZvaWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyCiAgICAgICAgIHNlbmQoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6U2V0TmV0d29ya1JlcXVlc3RzSW5Qcm9ncmVzcyh0cnVlKSk7
CiB9CiAKLXZvaWQgV2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllcikKK3ZvaWQgV2ViUGFnZTo6cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV90cmFj
a2VkTmV0d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzLnJlbW92ZShpZGVudGlmaWVyKSkK
ICAgICAgICAgcmV0dXJuOwpAQCAtNjk0MCw3ICs2OTQwLDcgQEAgdm9pZCBXZWJQYWdlOjpyZWdp
c3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIGNvbnN0IFN0
cmluZyYKICAgICBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5hZGQoaGFu
ZGxlcklkZW50aWZpZXIsIHNjaGVtZVJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCkpOwogfQog
Ci12b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2
NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VS
ZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24o
dWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNvdXJj
ZVJlcXVlc3QmJiByZXF1ZXN0LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiBoYW5kbGVy
ID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVu
dGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTQ5LDcgKzY5NDksNyBAQCB2b2lk
IFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhh
bmRsZXJJZGVudGlmaWVyLCB1aQogICAgIGhhbmRsZXItPnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVzcG9uc2UpLCBXVEZNb3ZlKHJlcXVlc3QpLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1l
VGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgUmVzb3Vy
Y2VSZXF1ZXN0JiYgcmVxdWVzdCkKK3ZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFBlcmZv
cm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVz
cG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QpCiB7CiAgICAgYXV0byogaGFuZGxlciA9
IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRp
Zmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjk1Nyw3ICs2OTU3LDcgQEAgdm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW4KICAgICBoYW5kbGVyLT50YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9u
KHRhc2tJZGVudGlmaWVyLCBXVEZNb3ZlKHJlc3BvbnNlKSwgV1RGTW92ZShyZXF1ZXN0KSwgW10g
KFJlc291cmNlUmVxdWVzdCYmKSB7fSk7CiB9CiAgICAgCi12b2lkIFdlYlBhZ2U6OnVybFNjaGVt
ZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3Zv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5k
bGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRvKiBo
YW5kbGVyID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRs
ZXJJZGVudGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTY1LDcgKzY5NjUsNyBA
QCB2b2lkIFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NAogICAgIGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlUmVz
cG9uc2UodGFza0lkZW50aWZpZXIsIHJlc3BvbnNlKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxT
Y2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEpCit2b2lk
IFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVy
LCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIGRhdGEpCiB7CiAgICAgYXV0byogaGFuZGxlciA9
IG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmdldChoYW5kbGVySWRlbnRp
Zmllcik7CiAgICAgQVNTRVJUKGhhbmRsZXIpOwpAQCAtNjk3Myw3ICs2OTczLDcgQEAgdm9pZCBX
ZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50
aWZpZXIsIHVpbnQ2NF90IHQKICAgICBoYW5kbGVyLT50YXNrRGlkUmVjZWl2ZURhdGEodGFza0lk
ZW50aWZpZXIsIGRhdGEuc2l6ZSgpLCBkYXRhLmRhdGEoKSk7CiB9CiAKLXZvaWQgV2ViUGFnZTo6
dXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50
NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdl
YlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBhdXRvKiBoYW5kbGVyID0gbV9pZGVudGlm
aWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVudGlmaWVyKTsKICAg
ICBBU1NFUlQoaGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmgKaW5kZXggZjU3M2JkYTc2NTU3YmM0OWYwZmQ2MzE4N2E1YjU3NDdhZmFkMWY5OC4uNTJh
YmFkOWUwMGQzYzJiM2MxZWVhNGRlNjRlODBiNGM2YjAxMGQxYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtNDM3LDcgKzQzNyw3IEBAIHB1YmxpYzoK
ICAgICBXZWJGdWxsU2NyZWVuTWFuYWdlciogZnVsbFNjcmVlbk1hbmFnZXIoKTsKICNlbmRpZgog
Ci0gICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIE1l
c3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiwgdWludDY0X3QgcmVxdWVz
dElEID0gMCk7CisgICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIsIE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyID0geyB9KTsKICAgICB2b2lkIHNlbmRDU1BWaW9s
YXRpb25SZXBvcnQoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBVUkwmIHJlcG9ydFVS
TCwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmKTsKICAgICB2b2lkIHNlbmRDT0VQUG9saWN5SW5o
ZXJpdGVuY2VWaW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbkRhdGEmIGVtYmVkZGVyT3JpZ2luLCBjb25zdCBTdHJpbmcmIGVuZHBv
aW50LCBXZWJDb3JlOjpDT0VQRGlzcG9zaXRpb24sIGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3Qg
VVJMJiBibG9ja2VkVVJMKTsKICAgICB2b2lkIHNlbmRDT0VQQ09SUFZpb2xhdGlvbihXZWJDb3Jl
OjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgZW1i
ZWRkZXJPcmlnaW4sIGNvbnN0IFN0cmluZyYgZW5kcG9pbnQsIFdlYkNvcmU6OkNPRVBEaXNwb3Np
dGlvbiwgV2ViQ29yZTo6RmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbiwgY29uc3QgVVJMJiBibG9j
a2VkVVJMKTsKQEAgLTEwMTYsOCArMTAxNiw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGRyYXdQYWdl
c0ZvclByaW50aW5nKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgUHJpbnRJbmZvJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik+JiYp
OwogI2VuZGlmCiAKLSAgICB2b2lkIGFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICB2b2lkIHJlbW92ZVJlc291cmNl
UmVxdWVzdCh1bnNpZ25lZCBsb25nKTsKKyAgICB2b2lkIGFkZFJlc291cmNlUmVxdWVzdChXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVx
dWVzdCYpOworICAgIHZvaWQgcmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllcik7CiAKICAgICB2b2lkIHNldE1lZGlhVm9sdW1lKGZsb2F0KTsKICAg
ICB2b2lkIHNldE11dGVkKFdlYkNvcmU6Ok1lZGlhUHJvZHVjZXI6Ok11dGVkU3RhdGVGbGFncywg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKQEAgLTE4NzcsMTEgKzE4NzcsMTEgQEAgcHJp
dmF0ZToKIAogICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVIYW5kbGVyKHVpbnQ2NF90IGlkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgc2NoZW1lKTsKIAotICAgIHZvaWQgdXJsU2NoZW1lVGFza1dp
bGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7
Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgdXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVp
bnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUo
dWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrV2lsbFBl
cmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB1cmxTY2hlbWVU
YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpOworICAgIHZvaWQg
dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlk
UmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNl
Jik7CisgICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOwogCiAgICAgdm9pZCBzZXRJc1Rha2lu
Z1NuYXBzaG90c0ZvckFwcGxpY2F0aW9uU3VzcGVuc2lvbihib29sKTsKICAgICB2b2lkIHNldE5l
ZWRzRE9NV2luZG93UmVzaXplRXZlbnQoKTsKQEAgLTIxNjEsNyArMjE2MSw3IEBAIHByaXZhdGU6
CiAKICAgICB1bnNpZ25lZCBtX2NhY2hlZFBhZ2VDb3VudCB7IDAgfTsKIAotICAgIEhhc2hTZXQ8
dW5zaWduZWQgbG9uZz4gbV90cmFja2VkTmV0d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJz
OworICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtX3RyYWNr
ZWROZXR3b3JrUmVzb3VyY2VSZXF1ZXN0SWRlbnRpZmllcnM7CiAKICAgICBXZWJDb3JlOjpJbnRT
aXplIG1fbWluaW11bVNpemVGb3JBdXRvTGF5b3V0OwogICAgIFdlYkNvcmU6OkludFNpemUgbV9z
aXplVG9Db250ZW50QXV0b1NpemVNYXhpbXVtU2l6ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IDVmZGIxZDAwNGQw
MDQzNWIyZWExMTI1Nzc5ZmQyYTEwZjY2NmU0ZDAuLmM0OGM3MmE5YTYxNmYxNDRjYjM3MjdlYzZi
MTM5Yjc3YTRhZmVkZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgpAQCAtMjcsNyArMjcsNyBAQCBtZXNzYWdlcyAtPiBX
ZWJQYWdlIExlZ2FjeVJlY2VpdmVyIHsKIAogICAgIFNldEJhY2tncm91bmRDb2xvcihzdGQ6Om9w
dGlvbmFsPFdlYkNvcmU6OkNvbG9yPiBjb2xvcikKIAotICAgIEFkZENvbnNvbGVNZXNzYWdlKFdl
YkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBlbnVtOnVpbnQ4X3QgSlNDOjpNZXNzYWdl
U291cmNlIG1lc3NhZ2VTb3VyY2UsIGVudW06dWludDhfdCBKU0M6Ok1lc3NhZ2VMZXZlbCBtZXNz
YWdlTGV2ZWwsIFN0cmluZyBtZXNzYWdlLCB1aW50NjRfdCByZXF1ZXN0SUQpCisgICAgQWRkQ29u
c29sZU1lc3NhZ2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGVudW06dWludDhf
dCBKU0M6Ok1lc3NhZ2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwgZW51bTp1aW50OF90IEpTQzo6TWVz
c2FnZUxldmVsIG1lc3NhZ2VMZXZlbCwgU3RyaW5nIG1lc3NhZ2UsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciByZXF1ZXN0SUQpCiAgICAgU2VuZENTUFZpb2xhdGlvblJlcG9ydChX
ZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgVVJMIHJlcG9ydFVSTCwgSVBDOjpGb3Jt
RGF0YVJlZmVyZW5jZSByZXBvcnREYXRhKQogICAgIFNlbmRDT0VQUG9saWN5SW5oZXJpdGVuY2VW
aW9sYXRpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIHN0cnVjdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbkRhdGEgZW1iZWRkZXJPcmlnaW4sIFN0cmluZyBlbmRwb2ludCwgZW51
bTpib29sIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlvbiBkaXNwb3NpdGlvbiwgU3RyaW5nIHR5cGUs
IFVSTCBibG9ja2VkVVJMKQogICAgIFNlbmRDT0VQQ09SUFZpb2xhdGlvbihXZWJDb3JlOjpGcmFt
ZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSBl
bWJlZGRlck9yaWdpbiwgU3RyaW5nIGVuZHBvaW50LCBlbnVtOmJvb2wgV2ViQ29yZTo6Q09FUERp
c3Bvc2l0aW9uIGRpc3Bvc2l0aW9uLCBlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25z
OjpEZXN0aW5hdGlvbiBkZXN0aW5hdGlvbiwgVVJMIGJsb2NrZWRVUkwpCkBAIC01NTMsMTEgKzU1
MywxMSBAQCBHZW5lcmF0ZVN5bnRoZXRpY0VkaXRpbmdDb21tYW5kKGVudW06dWludDhfdCBXZWJL
aXQ6OlN5bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZQogCiAgICAgUmVnaXN0ZXJVUkxTY2hlbWVI
YW5kbGVyKHVpbnQ2NF90IGlkZW50aWZpZXIsIFN0cmluZyBzY2hlbWUpCiAKLSAgICBVUkxTY2hl
bWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9u
c2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpIC0+IChXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdCkgQXN5bmMKLSAgICBVUkxTY2hlbWVUYXNr
RGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRf
dCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkKLSAgICBVUkxTY2hlbWVUYXNr
RGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1aW50NjRfdCB0
YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSkKLSAgICBV
UkxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVp
bnQ2NF90IHRhc2tJZGVudGlmaWVyLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0
YSkKLSAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9y
KQorICAgIFVSTFNjaGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRs
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50
aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qg
YWN0dWFsUmVxdWVzdCkgQXN5bmMKKyAgICBVUkxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0
aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9u
c2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBwcm9wb3NlZFJlcXVlc3QpCisgICAgVVJMU2No
ZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0
YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyLCBJUEM6OlNoYXJlZEJ1ZmZlckRhdGFSZWZlcmVuY2UgZGF0
YSkKKyAgICBVUkxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciBlcnJvcikKIAogICAgIFNldElzU3VzcGVuZGVkKGJvb2wgc3Vz
cGVuZGVkKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcAppbmRleCAzNmU1NzI1MTIzMzdkNjMw
MGMyMmU4YTMyZTE3MTUxOTA0M2I1MDM3Li5jZTkyNjE3NDFiZGIyOGMwNGQ5N2QwZDcwZWE4ZWFh
MWM0ZGI0MTM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKQEAgLTYzLDcgKzYzLDcgQEAg
dm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnN0YXJ0TmV3VGFzayhSZXNvdXJjZUxvYWRl
ciYgbG9hZGVyLCBXZWJGcmFtZSYgd2UKICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5zdGFy
dExvYWRpbmcoKTsKIH0KIAotdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5j
aHJvbm91c2x5KFJlc291cmNlTG9hZElkZW50aWZpZXIgbG9hZElkZW50aWZpZXIsIFdlYkZyYW1l
JiB3ZWJGcmFtZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiYgZGF0
YSkKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojpsb2FkU3luY2hyb25vdXNseShXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbG9hZElkZW50aWZpZXIsIFdlYkZyYW1lJiB3
ZWJGcmFtZSwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkK
IHsKICAgICBkYXRhLnNocmluaygwKTsKICAgICBpZiAoIW1fd2ViUGFnZS5zZW5kU3luYyhNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKFVSTFNjaGVt
ZVRhc2tQYXJhbWV0ZXJzIHsgbV9pZGVudGlmaWVyLCBsb2FkSWRlbnRpZmllciwgcmVxdWVzdCwg
d2ViRnJhbWUuaW5mbygpIH0pLCBNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2FkU3luY2hyb25v
dXNVUkxTY2hlbWVUYXNrOjpSZXBseShyZXNwb25zZSwgZXJyb3IsIGRhdGEpKSkgewpAQCAtNzgs
NyArNzgsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6c3RvcEFsbFRhc2tzKCkK
ICAgICAgICAgbV90YXNrcy5iZWdpbigpLT52YWx1ZS0+c3RvcExvYWRpbmcoKTsKIH0KIAotdm9p
ZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWlu
dDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVj
dFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiBuZXdSZXF1ZXN0LCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKK3ZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUGVyZm9ybVJl
ZGlyZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1
dG8qIHRhc2sgPSBtX3Rhc2tzLmdldCh0YXNrSWRlbnRpZmllcik7CiAgICAgaWYgKCF0YXNrKQpA
QCAtODcsNyArODcsNyBAQCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBl
cmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCB0YXNrSWRlbnRpZmllcgogICAgIHRhc2stPmRpZFBl
cmZvcm1SZWRpcmVjdGlvbihXVEZNb3ZlKHJlZGlyZWN0UmVzcG9uc2UpLCBXVEZNb3ZlKG5ld1Jl
cXVlc3QpLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKLXZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViVVJMU2No
ZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UpCiB7CiAgICAgYXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVy
KTsKICAgICBpZiAoIXRhc2spCkBAIC05Niw3ICs5Niw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBjCiAgICAgdGFzay0+ZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNlKTsKIH0KIAotdm9pZCBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNr
SWRlbnRpZmllciwgc2l6ZV90IHNpemUsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpCit2b2lkIFdlYlVS
TFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgc2l6ZV90IHNpemUsIGNvbnN0IHVpbnQ4
X3QqIGRhdGEpCiB7CiAgICAgYXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVy
KTsKICAgICBpZiAoIXRhc2spCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwg
c2l6ZV8KICAgICB0YXNrLT5kaWRSZWNlaXZlRGF0YShzaXplLCBkYXRhKTsKIH0KIAotdm9pZCBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCB0YXNrSWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciB0YXNrSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAg
aWYgKGF1dG8gdGFzayA9IHJlbW92ZVRhc2sodGFza0lkZW50aWZpZXIpKQogICAgICAgICB0YXNr
LT5kaWRDb21wbGV0ZShlcnJvcik7CkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBXZWJVUkxTY2hl
bWVIYW5kbGVyUHJveHk6OnRhc2tEaWRTdG9wTG9hZGluZyhXZWJVUkxTY2hlbWVUYXNrUHJveHkm
IHRhc2spCiAgICAgcmVtb3ZlVGFzayh0YXNrLmlkZW50aWZpZXIoKSk7CiB9CiAKLVJlZlB0cjxX
ZWJVUkxTY2hlbWVUYXNrUHJveHk+IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFz
ayh1aW50NjRfdCBpZGVudGlmaWVyKQorUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5OjpyZW1vdmVUYXNrKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGF1dG8gdGFzayA9IG1fdGFza3MudGFrZShp
ZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2spCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oCmluZGV4IDA0
MmQ3OWM2ZTZmODQ1ZGMxYjA2YjJjYTMzODAwNzJkNDgwYmE2ZjAuLjA2OTVjNDA3NDc4M2QxMWQ2
NmNkNTAwNDE0M2NkNGFkZDE1N2Q5NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oCkBAIC0zOSw3
ICszOSw2IEBAIGNsYXNzIFJlc291cmNlUmVxdWVzdDsKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBj
bGFzcyBXZWJQYWdlOwotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwog
CiBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJV
UkxTY2hlbWVIYW5kbGVyUHJveHk+IHsKIHB1YmxpYzoKQEAgLTUyLDI2ICs1MSwyNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzdGFydE5ld1Rhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXImLCBXZWJG
cmFtZSYpOwogICAgIHZvaWQgc3RvcEFsbFRhc2tzKCk7CiAKLSAgICB2b2lkIGxvYWRTeW5jaHJv
bm91c2x5KFJlc291cmNlTG9hZElkZW50aWZpZXIsIFdlYkZyYW1lJiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImLCBWZWN0b3I8dWludDhfdD4mKTsKKyAgICB2b2lkIGxvYWRTeW5jaHJvbm91
c2x5KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViRnJhbWUmLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYsIFZlY3Rvcjx1aW50OF90PiYpOwogCiAgICAgdWludDY0X3Qg
aWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogICAgIFdlYlBhZ2Um
IHBhZ2UoKSB7IHJldHVybiBtX3dlYlBhZ2U7IH0KIAotICAgIHZvaWQgdGFza0RpZFBlcmZvcm1S
ZWRpcmVjdGlvbih1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYpOwotICAgIHZvaWQgdGFza0RpZFJlY2Vp
dmVSZXNwb25zZSh1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYpOwotICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBzaXplX3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEpOwotICAgIHZvaWQgdGFza0Rp
ZENvbXBsZXRlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJik7CisgICAgdm9pZCB0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJD
b3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmJik+JiYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVSZXNwb25zZShX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmKTsKKyAgICB2b2lkIHRhc2tEaWRSZWNlaXZlRGF0YShXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7CisgICAgdm9p
ZCB0YXNrRGlkQ29tcGxldGUoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAgICAgdm9pZCB0YXNrRGlkU3RvcExvYWRpbmco
V2ViVVJMU2NoZW1lVGFza1Byb3h5Jik7CiAKIHByaXZhdGU6CiAgICAgV2ViVVJMU2NoZW1lSGFu
ZGxlclByb3h5KFdlYlBhZ2UmLCB1aW50NjRfdCBpZGVudGlmaWVyKTsKIAotICAgIFJlZlB0cjxX
ZWJVUkxTY2hlbWVUYXNrUHJveHk+IHJlbW92ZVRhc2sodWludDY0X3QgaWRlbnRpZmllcik7Cisg
ICAgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFzayhXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiAgICAgV2ViUGFnZSYgbV93ZWJQYWdlOworICAgIC8v
IEZJWE1FOiBUaGlzIHNob3VsZCBiZSBhIHN0cm9uZ2x5IHR5cGVkIGlkZW50aWZpZXIuCiAgICAg
dWludDY0X3QgbV9pZGVudGlmaWVyIHsgMCB9OwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwgUmVm
UHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94eT4+IG1fdGFza3M7CisgICAgSGFzaE1hcDxXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZlB0cjxXZWJVUkxTY2hlbWVUYXNrUHJveHk+
PiBtX3Rhc2tzOwogfTsgLy8gY2xhc3MgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAKaW5kZXggNzU3OTlhMGM2NWQwY2Rh
ZmRlNmYyNjViMWM1NDc1NmI4NGEyMDlkOS4uYzhjNGFmN2ViZDhmMTFjZjZjOGNhN2FlN2UwN2Ew
M2I0ZDU5NDU0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCkBAIC0zOSw4ICszOSw4IEBACiAjaW5j
bHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlci5oPgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9u
SGFuZGxlci5oPgogCi0jZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19T
VEFOREFSRF9URU1QTEFURSAiW3NjaGVtZUhhbmRsZXI9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0l
IiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgdGFza0lEPSVsdV0gV2ViVVJMU2NoZW1l
VGFza1Byb3h5OjoiCi0jZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19T
VEFOREFSRF9QQVJBTUVURVJTIG1fdXJsU2NoZW1lSGFuZGxlci5pZGVudGlmaWVyKCksIHBhZ2VJ
REZyb21XZWJGcmFtZShtX2ZyYW1lKSwgZnJhbWVJREZyb21XZWJGcmFtZShtX2ZyYW1lKSwgbV9p
ZGVudGlmaWVyCisjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9YWV9SRUxFQVNFX0xPR19TVEFO
REFSRF9URU1QTEFURSAiW3NjaGVtZUhhbmRsZXI9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgdGFza0lEPSUiIFBSSXU2NCAiXSBXZWJVUkxT
Y2hlbWVUYXNrUHJveHk6OiIKKyNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0Vf
TE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwg
cGFnZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBmcmFtZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUp
LCBtX2lkZW50aWZpZXIudG9VSW50NjQoKQogI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlf
UkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssIFdFQlVSTFNDSEVNRVRB
U0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSBmbXQsIFdFQlVSTFNDSEVNRVRB
U0tQUk9YWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmgKaW5kZXggYjVlMzM0ZGZjMjMzNjQ4
ZWM1N2U4ZjYxNjNkYzE1ZmFiNTZmNmM1Yy4uNzU1MDg3OTQxODIwZmVlZmM1ZDAxMjcxNThjMDY0
Y2UyNThhMDgzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViVVJMU2NoZW1lVGFza1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VSZXF1ZXN0Lmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVl
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTU3LDcgKzU4LDcgQEAgcHVibGlj
OgogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsK
ICAgICB2b2lkIGRpZENvbXBsZXRlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKIAot
ICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmll
cjsgfQorICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkg
Y29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKIHByaXZhdGU6CiAgICAgV2ViVVJMU2No
ZW1lVGFza1Byb3h5KFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSYsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVyJiwgV2ViRnJhbWUmKTsKQEAgLTcwLDcgKzcxLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQ
dHI8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI+IG1fY29yZUxvYWRlcjsKICAgICBSZWZQdHI8V2Vi
RnJhbWU+IG1fZnJhbWU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG1fcmVxdWVzdDsK
LSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllcjsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV93YWl0aW5nRm9yQ29tcGxl
dGlvbkhhbmRsZXIgeyBmYWxzZSB9OwogICAgIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+IG1fcXVl
dWVkVGFza3M7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJDb3JlU3Vw
cG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwIGIvU291cmNlL1dlYktpdExlZ2FjeS9X
ZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCmluZGV4IDdkY2ZlMGI4
NzljYTg1NDU2OTY4MzdlZWM3Y2E4OTBmOTk4YTk5MWUuLjFlNGQyOWMwZTQxZjc4NmM2NWQ0MzFm
MzcxYjI2YzQ3NTA0OTVkMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29y
ZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKQEAgLTEw
Nyw3ICsxMDcsNyBAQCB2b2lkIFdlYlJlc291cmNlTG9hZFNjaGVkdWxlcjo6bG9hZFJlc291cmNl
KEZyYW1lJiBmcmFtZSwgQ2FjaGVkUmVzb3VyY2UmIHJlc291cgogICAgIH0pOwogfQogCi12b2lk
IFdlYlJlc291cmNlTG9hZFNjaGVkdWxlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFt
ZUxvYWRlciYgZnJhbWVMb2FkZXIsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiBv
cHRpb25zLCBjb25zdCBIVFRQSGVhZGVyTWFwJiwgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEpCit2b2lkIFdlYlJl
c291cmNlTG9hZFNjaGVkdWxlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRl
ciYgZnJhbWVMb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlv
bnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiBlcnJvciwg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKIHsKICAg
ICBhdXRvKiBkb2N1bWVudCA9IGZyYW1lTG9hZGVyLmZyYW1lKCkuZG9jdW1lbnQoKTsKICAgICBh
dXRvKiBzb3VyY2VPcmlnaW4gPSBkb2N1bWVudCA/ICZkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4o
KSA6IG51bGxwdHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBw
b3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9XZWJD
b3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuaAppbmRleCAxNjE4YjY3YTFmZjZk
NjJmODExNDI3ZTk2Yzk5ZTkzOTZhOWIwYTBiLi5lNTk1NTBmYmJiYTBmNmRjMzRjYzMzZDUxMGU4
OWU2ZTM0OThkYTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVTdXBw
b3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
V2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKQEAgLTQ1LDcgKzQ1LDcg
QEAgcHVibGljOgogICAgIFdlYlJlc291cmNlTG9hZFNjaGVkdWxlcigpOwogCiAgICAgdm9pZCBs
b2FkUmVzb3VyY2UoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZSYsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlck9w
dGlvbnMmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpTdWJyZXNvdXJj
ZUxvYWRlcj4mJik+JiYpIGZpbmFsOwotICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNs
eShXZWJDb3JlOjpGcmFtZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IFdl
YkNvcmU6OkZldGNoT3B0aW9ucyYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1
aW50OF90PiYpIGZpbmFsOworICAgIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShXZWJD
b3JlOjpGcmFtZUxvYWRlciYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBv
bGljeSwgY29uc3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhl
YWRlck1hcCYsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JikgZmluYWw7CiAgICAgdm9pZCBwYWdlTG9hZENvbXBsZXRl
ZChXZWJDb3JlOjpQYWdlJikgZmluYWw7CiAgICAgdm9pZCBicm93c2luZ0NvbnRleHRSZW1vdmVk
KFdlYkNvcmU6OkZyYW1lJikgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCmluZGV4
IDNjMjQ4MTMxZTVkYjgxOWFjMjNiNmYxOGYyOGY5YmIxMjFmNGJiYzMuLmUzZjVmOWM5ZjBmZmQ4
YWVlMmRiZjBlNzgzMjE2YmMzYzBhNzU1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApA
QCAtODIsMjggKzgyLDI4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3Vy
Y2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBmaW5h
bDsKIAotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5p
dGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIGZpbmFsOwog
Ci0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7
Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRj
aERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRp
b25DaGFsbGVuZ2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5hbDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRp
YWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRp
Y2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAg
Ym9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90
ZWN0aW9uU3BhY2UmKSBmaW5hbDsKKyAgICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90
ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwog
I2VuZGlmCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9u
YXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CiAjZW5kaWYKIAotICAgIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVu
Z3RoKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmluYWw7CisgICAgdm9p
ZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0
aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hM
b2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKSBmaW5hbDsKICNpZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCiAgICAgdm9pZCBk
aXNwYXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqZGV0ZWN0aW9uUmVzdWx0cykg
ZmluYWw7CiAjZW5kaWYKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmco
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKIAotICAgIHZvaWQgd2ls
bENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5T
Q2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgd2lsbENhY2hl
UmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOwogCiAgICAgdm9pZCBkaXNw
YXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgZmluYWw7CiAgICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVTZXJ2ZXJSZWRpcmVjdEZvclByb3Zpc2lvbmFsTG9hZCgpIGZpbmFsOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5tbQppbmRleCBmYmFlYThlYTY4NjhkYTgxMjRjMDExMmI1MGIyY2Q0
NTVlNzE1ZjY4Li43MWE3MTViMzdmYTVlNmM1Zjc0NDRlMjM3YzgyZDE1OWNlMDg4YWQxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQpAQCAtMzM2LDcgKzMzNiw3IEBAIGJvb2wgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKFdl
YkNvcmU6OkRvY3VtCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNz
aWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBXZWJWaWV3ICp3ZWJW
aWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVn
YXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRpb25zID0gV2ViVmlld0dldFJlc291
cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZpZXcpOwpAQCAtMzU2LDcgKzM1Niw3
IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgW3dlYlZpZXcgX2FkZE9iamVjdDpvYmpl
Y3QuZ2V0KCkgZm9ySWRlbnRpZmllcjppZGVudGlmaWVyXTsKIH0KIAotdm9pZCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0
UmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVx
dWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQog
ewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwog
ICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlv
bnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmll
dyk7CkBAIC0zODYsNyArMzg2LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWQKICAgICAgICAg
cmVxdWVzdC51cGRhdGVGcm9tRGVsZWdhdGVQcmVzZXJ2aW5nT2xkUHJvcGVydGllcyhXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QobmV3VVJMUmVxdWVzdCkpOwogfQogCi1ib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgp
KTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50
YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdl
YlZpZXcpOwpAQCAtMzk5LDcgKzM5OSw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNo
b3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
UmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQog
ewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwog
ICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlv
bnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmll
dyk7CkBAIC00MjAsNyArNDIwLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG8KIH0KIAogI2lm
IFVTRShQUk9URUNUSU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi1ib29sIFdlYkZyYW1lTG9hZGVy
Q2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UHJvdGVjdGlvblNwYWNlJiBwcm90ZWN0aW9uU3BhY2UpCitib29sIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25T
cGFjZSkKIHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdl
dCgpKTsKICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVt
ZW50YXRpb25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25z
KHdlYlZpZXcpOwpAQCAtNDQxLDcgKzQ0MSw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1lCiAj
ZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi1SZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5
UmVmPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQorUmV0YWlu
UHRyPENGRGljdGlvbmFyeVJlZj4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNvbm5lY3Rpb25Qcm9w
ZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBn
ZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIGlkIHJlc291cmNlID0gW3dlYlZpZXcg
X29iamVjdEZvcklkZW50aWZpZXI6aWRlbnRpZmllcl07CkBAIC00NjgsNyArNDY4LDcgQEAgYm9v
bCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkUGFpbnRCcm9rZW5JbWFnZShjb25zdCBVUkwm
IGltYWdlVVJMKSBjb25zdAogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcg
PSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJ
bXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VM
b2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC00ODYsNyArNDg2LDcgQEAg
dm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqIGwKICAgICB9CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJD
bGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2Us
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikgY29uc3QKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25z
ZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3
KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlv
bkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJ
bXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC01MDYsNyArNTA2LDcgQEAgdm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgdW4KICAgICBjb21wbGV0aW9uSGFuZGxlcihyZXNwb25zZSk7CiB9CiAKLXZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoV2Vi
Q29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBp
bnQgZGF0YUxlbmd0aCkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGgoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoKQog
ewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwog
ICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlv
bnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmll
dyk7CkBAIC01MjgsNyArNTI4LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKikKIH0KICNlbmRpZgogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUu
Z2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBs
ZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlv
bnMod2ViVmlldyk7CkBAIC01NTAsNyArNTUwLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2EK
ICAgICBzdGF0aWNfY2FzdDxXZWJEb2N1bWVudExvYWRlck1hYyo+KGxvYWRlciktPmRlY3JlYXNl
TG9hZENvdW50KGlkZW50aWZpZXIpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYgZXJy
b3IpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKFdl
YkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBlcnJvcikK
IHsKICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gZ2V0V2ViVmlldyhtX3dlYkZyYW1lLmdldCgpKTsK
ICAgICBXZWJSZXNvdXJjZURlbGVnYXRlSW1wbGVtZW50YXRpb25DYWNoZSogaW1wbGVtZW50YXRp
b25zID0gV2ViVmlld0dldFJlc291cmNlTG9hZERlbGVnYXRlSW1wbGVtZW50YXRpb25zKHdlYlZp
ZXcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1
bWVudExvYWRlck1hYy5oIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1
bWVudExvYWRlck1hYy5oCmluZGV4IGU4MDMxNGIyYTA4OTQ4NGE0YTJlNDllNjA5NzRmZTYwOTdi
MWY3OGUuLjYwMmZiYzIwZjVlMmYwMDJmYmJlODhhYmU1ZGJmYTI2YjUwMDU1NDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMu
aAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVy
TWFjLmgKQEAgLTI3LDYgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0IDxXZWJDb3JlL0RvY3VtZW50
TG9hZGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgog
I2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogI2ltcG9ydCA8d3RmL0hhc2hTZXQuaD4KIApAQCAt
NDgsOCArNDksOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZXRhY2hEYXRhU291cmNlKCk7CiAgICAg
V2ViRGF0YVNvdXJjZSAqZGF0YVNvdXJjZSgpIGNvbnN0OwogCi0gICAgdm9pZCBpbmNyZWFzZUxv
YWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOwotICAgIHZvaWQgZGVjcmVhc2VMb2Fk
Q291bnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAgICB2b2lkIGluY3JlYXNlTG9hZENv
dW50KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgdm9pZCBkZWNyZWFz
ZUxvYWRDb3VudChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogCiBwcml2YXRl
OgogICAgIFdlYkRvY3VtZW50TG9hZGVyTWFjKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFdlYkNvcmU6OlN1YnN0aXR1dGVEYXRhJik7CkBAIC02NCw1ICs2NSw1IEBAIHBy
aXZhdGU6CiAgICAgYm9vbCBtX2lzRGF0YVNvdXJjZVJldGFpbmVkOwogICAgIFJldGFpblB0cjxp
ZD4gbV9yZXNvdXJjZUxvYWREZWxlZ2F0ZTsKICAgICBSZXRhaW5QdHI8aWQ+IG1fZG93bmxvYWRE
ZWxlZ2F0ZTsKLSAgICBIYXNoU2V0PHVuc2lnbmVkIGxvbmc+IG1fbG9hZGluZ1Jlc291cmNlczsK
KyAgICBIYXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9sb2FkaW5n
UmVzb3VyY2VzOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLm1tCmluZGV4IGQyZWJjYjAwMWRmNmE3ZTc0MDUyNjcz
OTM2ZTk3NTczMzIxMGJjNzAuLjUxYjNkY2VkMzFhYjEzMTEyNTk4MTk3OThjMmZjYmRiMDljNDU0
ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1l
bnRMb2FkZXJNYWMubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJE
b2N1bWVudExvYWRlck1hYy5tbQpAQCAtOTIsNyArOTIsNyBAQCB2b2lkIFdlYkRvY3VtZW50TG9h
ZGVyTWFjOjpkZXRhY2hGcm9tRnJhbWUoKQogICAgIC8vIGZyYW1lIGlzIG5vdCBhdHRhY2hlZD8K
IH0KIAotdm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6aW5jcmVhc2VMb2FkQ291bnQodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJEb2N1bWVudExvYWRlck1hYzo6aW5jcmVhc2VM
b2FkQ291bnQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgQVNTRVJUKG1fZGF0YVNvdXJjZSk7CiAKQEAgLTEwMyw5ICsxMDMsOSBAQCB2b2lkIFdl
YkRvY3VtZW50TG9hZGVyTWFjOjppbmNyZWFzZUxvYWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIpCiAgICAgcmV0YWluRGF0YVNvdXJjZSgpOwogfQogCi12b2lkIFdlYkRvY3VtZW50TG9h
ZGVyTWFjOjpkZWNyZWFzZUxvYWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lk
IFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRDb3VudChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKLSAgICBIYXNoU2V0PHVuc2lnbmVkIGxv
bmc+OjppdGVyYXRvciBpdCA9IG1fbG9hZGluZ1Jlc291cmNlcy5maW5kKGlkZW50aWZpZXIpOwor
ICAgIGF1dG8gaXQgPSBtX2xvYWRpbmdSZXNvdXJjZXMuZmluZChpZGVudGlmaWVyKTsKICAgICAK
ICAgICAvLyBJdCBpcyB2YWxpZCBmb3IgYSBsb2FkIHRvIGJlIGNhbmNlbGxlZCBiZWZvcmUgaXQn
cyBzdGFydGVkLgogICAgIGlmIChpdCA9PSBtX2xvYWRpbmdSZXNvdXJjZXMuZW5kKCkpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRlcm5hbC5o
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaAppbmRl
eCBlMWZkZDQwMGYxYmU3NWY3ZDk1MTcwZTY3NDAzZDQ0ZWZjMTRkYWY1Li5hNDdkYTJjZjRkNzQ5
NDk2MGY1YzUwOGYyMmI3ZjE1MGEyN2Q4ZGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRlcm5hbC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgKQEAgLTQyLDYgKzQyLDcgQEAKICNpbXBv
cnQgPFdlYkNvcmUvSFRNTE1lZGlhRWxlbWVudEVudW1zLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xh
eW91dE1pbGVzdG9uZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9QbGF5YmFja1RhcmdldENsaWVudENv
bnRleHRJZGVudGlmaWVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRp
Zmllci5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaD4KICNp
bXBvcnQgPFdlYkNvcmUvVGV4dEluZGljYXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5k
aWNhdG9yV2luZG93Lmg+CkBAIC0yNTAsOSArMjUxLDExIEBAIFdlYkxheW91dE1pbGVzdG9uZXMg
a2l0TGF5b3V0TWlsZXN0b25lcyhPcHRpb25TZXQ8V2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lPik7
CiAtICh2b2lkKXJlbW92ZVBsdWdpbkluc3RhbmNlVmlld3NGb3I6KFdlYkZyYW1lKil3ZWJGcmFt
ZTsKICNlbmRpZgogCi0tICh2b2lkKV9hZGRPYmplY3Q6KGlkKW9iamVjdCBmb3JJZGVudGlmaWVy
Oih1bnNpZ25lZCBsb25nKWlkZW50aWZpZXI7Ci0tIChpZClfb2JqZWN0Rm9ySWRlbnRpZmllcjoo
dW5zaWduZWQgbG9uZylpZGVudGlmaWVyOwotLSAodm9pZClfcmVtb3ZlT2JqZWN0Rm9ySWRlbnRp
ZmllcjoodW5zaWduZWQgbG9uZylpZGVudGlmaWVyOworI2lmZGVmIF9fY3BsdXNwbHVzCistICh2
b2lkKV9hZGRPYmplY3Q6KGlkKW9iamVjdCBmb3JJZGVudGlmaWVyOihXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIpaWRlbnRpZmllcjsKKy0gKGlkKV9vYmplY3RGb3JJZGVudGlmaWVy
OihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpaWRlbnRpZmllcjsKKy0gKHZvaWQp
X3JlbW92ZU9iamVjdEZvcklkZW50aWZpZXI6KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllcilpZGVudGlmaWVyOworI2VuZGlmCiAKIC0gKHZvaWQpX3NldFpvb21NdWx0aXBsaWVyOihm
bG9hdCltdWx0aXBsaWVyIGlzVGV4dE9ubHk6KEJPT0wpaXNUZXh0T25seTsKIC0gKGZsb2F0KV96
b29tTXVsdGlwbGllcjooQk9PTClpc1RleHRPbmx5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwIGIvU291
cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
Y3BwCmluZGV4IDI4OTUzZDZmNmRiNDNhMWIzNjY0MjkyZDM2N2U2YjdlMDZjMDY0OGEuLjU4ODk5
MmQ0YWFmZTVmYzgzOWI2NTRkY2VkYTg5MmRkNzAzNTgyM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5jcHAKQEAgLTE3Nyw3ICsxNzcsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlcgog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWdu
SWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlZpZXcqIHdlYlZp
ZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWRE
ZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBAIC0xODUsMTAgKzE4NSwxMCBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1
bnNpZ25lZCBsb25nIGlkZW50aQogICAgICAgICByZXR1cm47CiAKICAgICBDT01QdHI8V2ViTXV0
YWJsZVVSTFJlcXVlc3Q+IHdlYlVSTFJlcXVlc3QoQWRvcHRDT00sIFdlYk11dGFibGVVUkxSZXF1
ZXN0OjpjcmVhdGVJbnN0YW5jZShyZXF1ZXN0KSk7Ci0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUt
PmlkZW50aWZpZXJGb3JJbml0aWFsUmVxdWVzdCh3ZWJWaWV3LCB3ZWJVUkxSZXF1ZXN0LmdldCgp
LCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksIGlkZW50aWZpZXIpOworICAgIHJlc291cmNlTG9h
ZERlbGVnYXRlLT5pZGVudGlmaWVyRm9ySW5pdGlhbFJlcXVlc3Qod2ViVmlldywgd2ViVVJMUmVx
dWVzdC5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCBpZGVudGlmaWVyLnRvVUludDY0
KCkpOwogfQogCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFs
U3RvcmFnZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIp
Citib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAg
IENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwpA
QCAtMjAwLDEzICsyMDAsMTMgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNl
Q3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW4KICAgICAgICAgcmV0
dXJuIHRydWU7CiAKICAgICBCT09MIHNob3VsZFVzZTsKLSAgICBpZiAoU1VDQ0VFREVEKHJlc291
cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uod2ViVmll
dywgaWRlbnRpZmllciwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkVXNlKSkpCisg
ICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZFVzZUNy
ZWRlbnRpYWxTdG9yYWdlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgZ2V0V2ViRGF0
YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkVXNlKSkpCiAgICAgICAgIHJldHVybiBzaG91bGRVc2U7
CiAKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqIGxv
YWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYgY2hhbGxlbmdlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJiBjaGFsbGVuZ2UpCiB7CiAgICAgQVNTRVJUKGNoYWxsZW5nZS5hdXRoZW50aWNhdGlv
bkNsaWVudCgpKTsKIApAQCAtMjE0LDcgKzIxNCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9h
CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdh
dGU7CiAgICAgaWYgKFNVQ0NFRURFRCh3ZWJWaWV3LT5yZXNvdXJjZUxvYWREZWxlZ2F0ZSgmcmVz
b3VyY2VMb2FkRGVsZWdhdGUpKSkgewogICAgICAgICBDT01QdHI8V2ViVVJMQXV0aGVudGljYXRp
b25DaGFsbGVuZ2U+IHdlYkNoYWxsZW5nZShBZG9wdENPTSwgV2ViVVJMQXV0aGVudGljYXRpb25D
aGFsbGVuZ2U6OmNyZWF0ZUluc3RhbmNlKGNoYWxsZW5nZSkpOwotICAgICAgICBpZiAoU1VDQ0VF
REVEKHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVu
Z2Uod2ViVmlldywgaWRlbnRpZmllciwgd2ViQ2hhbGxlbmdlLmdldCgpLCBnZXRXZWJEYXRhU291
cmNlKGxvYWRlcikpKSkKKyAgICAgICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0
ZS0+ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHdlYlZpZXcsIGlkZW50aWZpZXIu
dG9VSW50NjQoKSwgd2ViQ2hhbGxlbmdlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikp
KSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTIyMyw3ICsyMjMsNyBAQCB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShEb2N1bWVudExvYQogICAgIGNoYWxsZW5nZS5hdXRoZW50aWNhdGlvbkNsaWVudCgp
LT5yZWNlaXZlZFJlcXVlc3RUb0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwoY2hhbGxlbmdlKTsK
IH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9u
c2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJW
aWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2Fk
RGVsZWdhdGU7CkBAIC0yMzQsNyArMjM0LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAg
ICBDT01QdHI8V2ViVVJMUmVzcG9uc2U+IHdlYlVSTFJlZGlyZWN0UmVzcG9uc2UoQWRvcHRDT00s
IFdlYlVSTFJlc3BvbnNlOjpjcmVhdGVJbnN0YW5jZShyZWRpcmVjdFJlc3BvbnNlKSk7CiAKICAg
ICBDT01QdHI8SVdlYlVSTFJlcXVlc3Q+IG5ld1dlYlVSTFJlcXVlc3Q7Ci0gICAgaWYgKEZBSUxF
RChyZXNvdXJjZUxvYWREZWxlZ2F0ZS0+d2lsbFNlbmRSZXF1ZXN0KHdlYlZpZXcsIGlkZW50aWZp
ZXIsIHdlYlVSTFJlcXVlc3QuZ2V0KCksIHdlYlVSTFJlZGlyZWN0UmVzcG9uc2UuZ2V0KCksIGdl
dFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJm5ld1dlYlVSTFJlcXVlc3QpKSkKKyAgICBpZiAoRkFJ
TEVEKHJlc291cmNlTG9hZERlbGVnYXRlLT53aWxsU2VuZFJlcXVlc3Qod2ViVmlldywgaWRlbnRp
Zmllci50b1VJbnQ2NCgpLCB3ZWJVUkxSZXF1ZXN0LmdldCgpLCB3ZWJVUkxSZWRpcmVjdFJlc3Bv
bnNlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZuZXdXZWJVUkxSZXF1ZXN0KSkp
CiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICh3ZWJVUkxSZXF1ZXN0ID09IG5ld1dlYlVSTFJl
cXVlc3QpCkBAIC0yNTIsNyArMjUyLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWcKICAgICBy
ZXF1ZXN0ID0gbmV3V2ViVVJMUmVxdWVzdEltcGwtPnJlc291cmNlUmVxdWVzdCgpOwogfQogCi12
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1
bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0
Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAg
Q09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CkBA
IC0yNjAsMzAgKzI2MCwzMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bgogICAgICAgICByZXR1
cm47CiAKICAgICBDT01QdHI8V2ViVVJMUmVzcG9uc2U+IHdlYlVSTFJlc3BvbnNlKEFkb3B0Q09N
LCBXZWJVUkxSZXNwb25zZTo6Y3JlYXRlSW5zdGFuY2UocmVzcG9uc2UpKTsKLSAgICByZXNvdXJj
ZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIHdl
YlVSTFJlc3BvbnNlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikpOworICAgIHJlc291
cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlUmVzcG9uc2Uod2ViVmlldywgaWRlbnRpZmllci50
b1VJbnQ2NCgpLCB3ZWJVUkxSZXNwb25zZS5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIp
KTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29u
dGVudExlbmd0aChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGludCBsZW5ndGgpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJl
Y2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBpbnQgbGVuZ3RoKQogewogICAgIFdlYlZpZXcqIHdlYlZp
ZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWRE
ZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7CiAgICAgaWYgKEZBSUxFRCh3ZWJWaWV3LT5y
ZXNvdXJjZUxvYWREZWxlZ2F0ZSgmcmVzb3VyY2VMb2FkRGVsZWdhdGUpKSkKICAgICAgICAgcmV0
dXJuOwogCi0gICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVDb250ZW50TGVuZ3Ro
KHdlYlZpZXcsIGlkZW50aWZpZXIsIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsK
KyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgod2ViVmll
dywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBsZW5ndGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVy
KSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9h
ZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2
b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01Q
dHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKICAgICBp
ZiAoRkFJTEVEKHdlYlZpZXctPnJlc291cmNlTG9hZERlbGVnYXRlKCZyZXNvdXJjZUxvYWREZWxl
Z2F0ZSkpKQogICAgICAgICByZXR1cm47CiAKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlk
RmluaXNoTG9hZGluZ0Zyb21EYXRhU291cmNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIGdldFdlYkRh
dGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZEZpbmlzaExv
YWRpbmdGcm9tRGF0YVNvdXJjZSh3ZWJWaWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIGdldFdl
YkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRp
c3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJy
b3ImIGVycm9yKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3
KCk7CiAgICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVs
ZWdhdGU7CkBAIC0yOTEsMTEgKzI5MSwxMSBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbgogICAg
ICAgICByZXR1cm47CiAKICAgICBDT01QdHI8V2ViRXJyb3I+IHdlYkVycm9yKEFkb3B0Q09NLCBX
ZWJFcnJvcjo6Y3JlYXRlSW5zdGFuY2UoZXJyb3IpKTsKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0
ZS0+ZGlkRmFpbExvYWRpbmdXaXRoRXJyb3Iod2ViVmlldywgaWRlbnRpZmllciwgd2ViRXJyb3Iu
Z2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVzb3VyY2VMb2FkRGVsZWdh
dGUtPmRpZEZhaWxMb2FkaW5nV2l0aEVycm9yKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQo
KSwgd2ViRXJyb3IuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CiB9CiAKICNpZiBV
U0UoQ0ZVUkxDT05ORUNUSU9OKQotYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkQ2Fj
aGVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiBkYXRhLCBjb25zdCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKQorYm9vbCBXZWJGcmFtZUxv
YWRlckNsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRhdGEsIGNvbnN0IHVuc2lnbmVkIGxv
bmcgbG9uZyBsZW5ndGgpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndl
YlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxv
YWREZWxlZ2F0ZTsKQEAgLTMwOCw3ICszMDgsNyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkCiAK
ICAgICBDT01QdHI8SVdlYlVSTFJlc3BvbnNlPiB1cmxSZXNwb25zZShBZG9wdENPTSwgV2ViVVJM
UmVzcG9uc2U6OmNyZWF0ZUluc3RhbmNlKHJlc3BvbnNlKSk7CiAgICAgQk9PTCBzaG91bGRDYWNo
ZTsKLSAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxk
Q2FjaGVSZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCB1cmxSZXNwb25zZS5nZXQoKSwgZGF0
YSwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZzaG91bGRDYWNoZSkpKQorICAg
IGlmIChTVUNDRUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRDYWNoZVJl
c3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgdXJsUmVzcG9uc2UuZ2V0KCks
IGRhdGEsIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmc2hvdWxkQ2FjaGUpKSkK
ICAgICAgICAgcmV0dXJuIHNob3VsZENhY2hlOwogCiAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuaAppbmRleCBlYjdmMjMzY2Y0ZjJkNDNkZTE3NzZlMmIwZDM2MmZhYzJk
ZWFkNDQwLi4xZTMwMzFmOWI1MDJjM2RkODhhOGE1NDhhNDdjN2YyYjZiOTkzMGU2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTYwLDE3ICs2MCwxNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBkZXRhY2hlZEZyb21QYXJlbnQzKCkgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGNvbnZlcnRNYWlu
UmVzb3VyY2VMb2FkVG9Eb3dubG9hZChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
KSBvdmVycmlkZTsKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKLQotICAgIHZvaWQgZGlzcGF0Y2hX
aWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIG92ZXJyaWRlOwotICAgIGJvb2wgc2hvdWxk
VXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZl
Q29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRG
aW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVy
cmlkZTsKKworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0
UmVzcG9uc2UpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgb3Zl
cnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpc3Bh
dGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVy
cmlkZTsKICNpZiBVU0UoQ0ZVUkxDT05ORUNUSU9OKQotICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNw
b25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGRh
dGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxk
Q2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IHVuc2lnbmVkIGNoYXIqIGRhdGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpIG92ZXJyaWRl
OwogI2VuZGlmCiAKICAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBv
dmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>438523</attachid>
            <date>2021-09-17 15:43:46 -0700</date>
            <delta_ts>2021-09-17 17:10:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230278-20210917154345.patch</filename>
            <type>text/plain</type>
            <size>375755</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNjk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTZiNTNmZDI5ZjQ4YjUy
NTNkNGNlMzA0YzAzYjU4MWRhNjA0ZTE0Ny4uMzlhMmZjMDRmOTljNjRhYWJjYWNmMzVhZTUxNjc5
MDUwZTc3NWU4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwOCBAQAorMjAyMS0wOS0xNyAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBP
YmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
TWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBNb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZldGNoTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2Up
OgorICAgICAgICAoV2ViQ29yZTo6RmV0Y2hMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAg
ICAgICAqIE1vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzTWV0YUh0dHBFcXVpdik6CisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZpbGVSZWFkZXJM
b2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVy
TG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVSZWFkZXJM
b2FkZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRS
ZXF1ZXN0SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmdJbXBsKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmFpbExvYWRpbmdJbXBsKToKKyAgICAg
ICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6c2NyaXB0SW1wb3J0ZWRJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2
ZVNjcmlwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbCk6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25z
ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRp
b25zRGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZCk6CisgICAgICAg
IChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVTY3JpcHRSZXNw
b25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVy
Y2VwdFJlc3BvbnNlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uV2ViS2l0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2VJbnRlcm5hbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAg
ICogaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3RPZlR5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNl
aXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZp
bmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0d29ya0FnZW50Ojpk
aWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JOZXR3b3JrQWdlbnQ6OnNldEluaXRpYWxTY3JpcHRDb250ZW50KToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVRocmVh
ZGFibGVMb2FkZXJSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JOZXR3b3Jr
QWdlbnQ6OmludGVyY2VwdFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXNwb25zZSk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50
cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dl
YkNvbnNvbGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJDb25zb2xlQWdlbnQ6OmRp
ZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5oOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzT3JpZ2luUHJlZmxpZ2h0
Q2hlY2tlcjo6ZG9QcmVmbGlnaHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpblByZWZs
aWdodENoZWNrZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmZpbmlzaGVkTG9hZGluZyk6CisgICAgICAg
IChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6dHJ5TG9hZGluZ1N1YnN0aXR1dGVEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0
aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpkaXNhbGxvd0RhdGFSZXF1ZXN0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyOjphZGRTdWJyZXNvdXJjZUxvYWRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudExvYWRlcjo6bG9hZE1haW5SZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KToK
KyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFpbCk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodEZhaWx1cmUpOgorICAg
ICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVzdCk6Cisg
ICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Up
OgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxs
U2VuZFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2Vi
Q29yZTo6RW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3Rl
Y3Rpb25TcGFjZSk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpj
b25uZWN0aW9uUHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKToK
KyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmlu
aXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OkVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAgICAgICAqIGxv
YWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjp3aWxsTG9hZE1lZGlhRWxl
bWVudFVSTCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9u
YWxMb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkZWRSZXNvdXJjZUZy
b21NZW1vcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50
ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5oOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIGxv
YWRlci9Mb2FkZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJDb3Jl
OjpMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZElu
Zm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAqIGxvYWRlci9M
b2FkZXJTdHJhdGVneS5oOgorICAgICAgICAoV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3k6Om9uZ29p
bmdMb2FkcyBjb25zdCk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIGxvYWRlci9Q
aW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBpbmdMb2FkZXI6OnN0YXJ0UGluZ0xv
YWQpOgorICAgICAgICAqIGxvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyk6CisgICAgICAgIChXZWJD
b3JlOjpQcm9ncmVzc1RyYWNrZXI6OmNvbXBsZXRlUHJvZ3Jlc3MpOgorICAgICAgICAoV2ViQ29y
ZTo6UHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKToKKyAgICAgICAgKiBs
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmg6CisgICAgICAgICogbG9hZGVyL1Jlc291cmNlTG9hZE5v
dGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRS
ZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
Tm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAq
IGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcjo6cmVsZWFzZVJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cjo6d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxv
YWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXI6OmlkZW50aWZpZXIgY29u
c3QpOgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaDogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaC4KKyAg
ICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
U3VicmVzb3VyY2VMb2FkZXI6OmluaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OndpbGxTZW5kUmVxdWVzdEludGVybmFsKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJl
c291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VM
b2FkZXI6OmRpZENhbmNlbCk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGll
bnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFNlbmRE
YXRhKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ojpk
aWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
OjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkYWJsZUxvYWRlckNsaWVu
dDo6ZGlkRmluaXNoVGltaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFibGVMb2FkZXJD
bGllbnQ6Om5vdGlmeUlzRG9uZSk6CisgICAgICAgICogbG9hZGVyL1RocmVhZGFibGVMb2FkZXJD
bGllbnRXcmFwcGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRhYmxlTG9hZGVyQ2xpZW50
V3JhcHBlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZGFi
bGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYkNv
cmU6OlRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRp
b25DYW5jZWxsYXRpb24pOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJl
YWRCcmlkZ2U6Ok1haW5UaHJlYWRCcmlkZ2UpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAg
ICAgICAgKFdlYkNvcmU6OldvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAqIGxvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6ZG9uZSBjb25zdCk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnVwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OnN0YXJ0TG9hZGluZ0VudHJ5KToKKyAg
ICAgICAgKiBsb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmg6CisgICAgICAg
ICogbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdSZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjppZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRl
ciBjb25zdCk6CisgICAgICAgICogcGFnZS9FdmVudFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50U291cmNlOjpkaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBwYWdlL0V2ZW50U291
cmNlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyOjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyLmg6
CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2UpOgorICAg
ICAgICAoV2ViQ29yZTo6V29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIHdv
cmtlcnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlck9yV29ya2xldEdsb2JhbFNjb3BlOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKTogRGVsZXRl
ZC4KKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAg
ICAqIHdvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyU2NyaXB0TG9hZGVyQ2xpZW50Lmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJKb2IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckpvYjo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oOgorICAgICAgICAqIHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiB4bWwvWE1M
SHR0cFJlcXVlc3QuaDoKKwogMjAyMS0wOS0xNyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2Vy
QGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIFNjcm9sbEFuaW1hdGlvbiBhIGxpdHRsZSBtb3Jl
IGdlbmVyaWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKaW5kZXggNDljMDE0NWFlNGQ0NzE3NjJlOTJlZDY4MTMxMWIwNzBkY2Jm
OTk4My4uYWJhYmI3MDg2NTQ0YWM4NDdhY2M2NzRlMjIwNDkwOTU2ZjNlZDNkNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNzMgQEAKKzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0
ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBVc2UgT2JqZWN0SWRlbnRpZmllciBmb3IgUmVz
b3VyY2VMb2FkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIzMDI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwgQ2F0YW56YXJvLgorCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkUmVj
ZWl2ZU1lc3NhZ2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2Vzczo6cmVzb2x2ZUJsb2JSZWZlcmVuY2VzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91c0xv
YWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6bG9h
ZFBpbmcpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
cmVtb3ZlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmlzUmVzb3VyY2VMb2FkRmluaXNoZWQpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZGlkRmluaXNoUHJlY29ubmVj
dGlvbik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpj
b252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RhcnRUcmFja2luZ1Jlc291cmNlTG9hZCk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpzdG9wVHJhY2tp
bmdSZXNvdXJjZUxvYWQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzczo6ZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNrZXIpOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMpOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdv
cmtSZXNvdXJjZUxvYWRlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3MuaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OmdldE5ldHdvcmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZSk6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpnZXROZXR3b3JrTG9hZElu
dGVybWVkaWF0ZUluZm9ybWF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyk6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjphZGROZXR3b3JrTG9h
ZEluZm9ybWF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OmFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKToKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZU5ldHdvcmtMb2FkSW5mb3Jt
YXRpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
UmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyOjpSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRy
YWNrZXIpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVMb2FkRm9y
V2ViUHJvY2Vzc1RyYW5zZmVyKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJv
Y2Vzcy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2Vz
LmluOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRNYXAuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjphZGQpOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjpyZW1vdmUpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1Jlc291cmNlTG9hZE1hcDo6Z2V0IGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNv
dXJjZUxvYWRNYXA6OmNvbnRhaW5zIGNvbnN0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNv
dXJjZUxvYWRlcjo6dHJhbnNmZXJUb05ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0Ojpl
c2NhcGVJREZvckpTT04pOgorICAgICAgICAoV2ViS2l0Ojpsb2dCbG9ja2VkQ29va2llSW5mb3Jt
YXRpb24pOgorICAgICAgICAoV2ViS2l0Ojpsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKToK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZGVyOjpsb2dDb29raWVJbmZvcm1h
dGlvbik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6
CisgICAgICAgICogU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHk6CisgICAgICAgICh0eXBlc190
aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpVUkxTY2hlbWVUYXNrUGFy
YW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRl
cnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JX
ZWJQcm9jZXNzVHJhbnNmZXIpOgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQ
cm9jZXNzUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHku
Y3BwOgorICAgICAgICAoV2ViS2l0OjpQcm92aXNpb25hbFBhZ2VQcm94eTo6ZGVjaWRlUG9saWN5
Rm9yUmVzcG9uc2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm92aXNpb25hbFBhZ2VQcm94eS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlKToKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZCk6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6c3RvcFVSTFNjaGVtZVRhc2spOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RhcnRUYXNrKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJvY2Vzc0ZvclRhc2tJZGVudGlm
aWVyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6c3RvcEFs
bFRhc2tzRm9yUGFnZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXI6OnN0
b3BUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlcjo6cmVtb3ZlVGFz
a0Zyb21QYWdlTWFwKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViVVJMU2NoZW1lSGFuZGxlci5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmg6CisgICAgICAgIChXZWJL
aXQ6OldlYlVSTFNjaGVtZVRhc2s6OmlkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudC5oOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVjdGVk
QnVuZGxlOjpSZXNvdXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKToKKyAg
ICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2
ZVJlc3BvbnNlRm9yUmVzb3VyY2UpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVz
b3VyY2VMb2FkQ2xpZW50OjpkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKToKKyAg
ICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNlTG9hZENsaWVudDo6ZGlkRmluaXNo
TG9hZEZvclJlc291cmNlKToKKyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlJlc291cmNl
TG9hZENsaWVudDo6ZGlkRmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChBUEk6OkluamVj
dGVkQnVuZGxlOjpSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UpOgorICAg
ICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9J
bmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0
OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEluaXRpYXRlTG9hZEZv
clJlc291cmNlKToKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50Ojp3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6Oklu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9y
UmVzb3VyY2UpOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxv
YWRDbGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpOgorICAgICAgICAo
V2ViS2l0OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExv
YWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291
cmNlTG9hZENsaWVudDo6ZGlkRmFpbExvYWRGb3JSZXNvdXJjZSk6CisgICAgICAgIChXZWJLaXQ6
OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudDo6c2hvdWxkQ2FjaGVSZXNwb25z
ZSk6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50Lmg6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2ZU1lc3Nh
Z2UpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZEZpbmlz
aFBpbmdMb2FkKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpk
aWRGaW5pc2hQcmVjb25uZWN0aW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0
d29ya1Byb2Nlc3NDb25uZWN0aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNz
L05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2Fk
ZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkKToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3Ry
YXRlZ3k6OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6
OldlYkxvYWRlclN0cmF0ZWd5OjpyZW1vdmUpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJT
dHJhdGVneTo6dHJ5TG9hZGluZ1N5bmNocm9ub3VzbHlVc2luZ1VSTFNjaGVtZUhhbmRsZXIpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6bG9hZFJlc291cmNlU3luY2hyb25v
dXNseSk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpzdGFydFBpbmdMb2Fk
KToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFBpbmdMb2Fk
KToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnByZWNvbm5lY3RUbyk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQcmVjb25uZWN0aW9u
KToKKyAgICAgICAgKFdlYktpdDo6V2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3BvbnNlRnJvbVJlc291
cmNlTG9hZElkZW50aWZpZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6
aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJMb2FkZXJTdHJhdGVneTo6bmV0d29ya01ldHJpY3NGcm9tUmVz
b3VyY2VMb2FkSWRlbnRpZmllcik6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0cmF0ZWd5
Ojpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkxvYWRlclN0
cmF0ZWd5OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNz
L05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjppc0ludGVyY2VwdGluZyBjb25z
dCk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6YmVn
aW5JbnRlcmNlcHRpbmdSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50
ZXJjZXB0Q29udHJvbGxlcjo6Y29udGludWVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6aW50ZXJjZXB0ZWRSZXNwb25zZSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6ZGVmZXIpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIu
aDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6bWVzc2FnZVNlbmRlckRlc3RpbmF0
aW9uSUQgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUxvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VM
b2FkZXIuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVj
ZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRSZWNlaXZlQ29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVy
Q2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyk6CisgICAgICAgIChXZWJL
aXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvclJlc3BvbnNl
KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3Bv
bnNlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRI
MlBpbmcpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZTo6Y29udmVydE1haW5SZXNvdXJjZUxvYWRUb0Rvd25s
b2FkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2U6OmFkZENvbnNvbGVNZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6
cmVtb3ZlUmVzb3VyY2VSZXF1ZXN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXJsU2No
ZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
Ojp1cmxTY2hlbWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSk6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YWRkQ29u
c29sZU1lc3NhZ2UpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVy
UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6Omxv
YWRTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclBy
b3h5Ojp0YXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVVJM
U2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZVJlc3BvbnNlKToKKyAgICAgICAgKFdl
YktpdDo6V2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRDb21wbGV0ZSk6
CisgICAgICAgIChXZWJLaXQ6OldlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6cmVtb3ZlVGFzayk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5o
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3Bw
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViVVJMU2NoZW1lVGFza1Byb3h5OjppZGVudGlmaWVyIGNvbnN0
KToKKwogMjAyMS0wOS0xNyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2Fj
eS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwppbmRleCAzM2YxMDlj
ZjMwMDdmNDBmNjNlNWYzNTY2MThjNmUxZTNiOWI4ZDEzLi45MjY5YzAxNjUzYmQzOTA1ZWZhMDk4
OTU2ZmM0YmYyOGJmNjEyMGRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBA
CisyMDIxLTA5LTE3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgVXNlIE9iamVjdElkZW50aWZpZXIgZm9yIFJlc291cmNlTG9hZGVyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzAyNzgKKworICAg
ICAgICBSZXZpZXdlZCBieSBNaWNoYWVsIENhdGFuemFyby4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6CisgICAgICAgIChXZWJSZXNvdXJj
ZUxvYWRTY2hlZHVsZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkpOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oOgorCiAyMDIxLTA5LTA3ICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IG9yaWdp
biBwYXJ0aXRpb25pbmcgKHRvcC1vcmlnaW4vZnJhbWUtb3JpZ2luKSBmb3IgQnJvYWRjYXN0Q2hh
bm5lbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGUzYjQ5M2ZkYTg3OGE3OWRhY2Ni
ZjMxNTM1NzRlYjgyNjM2MWYyMTkuLmE0ZThkNzFlMDhhZmFmNmUxZTdlMzVjZmYxYTJjMDAwODEx
ZTczNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAy
MS0wOS0xNyAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisg
ICAgICAgIFVzZSBPYmplY3RJZGVudGlmaWVyIGZvciBSZXNvdXJjZUxvYWRlcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwMjc4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTWljaGFlbCBDYXRhbnphcm8uCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50Lm1tOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2ln
bklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdCk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNs
aWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpOgorICAgICAgICAoV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKToKKyAg
ICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVj
dGlvblNwYWNlKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJv
cGVydGllcyk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNl
aXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJl
c3BvbnNlIGNvbnN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcpOgorICAgICAgICAqIFdlYlZpZXcvV2ViRG9jdW1lbnRM
b2FkZXJNYWMuaDoKKyAgICAgICAgKiBXZWJWaWV3L1dlYkRvY3VtZW50TG9hZGVyTWFjLm1tOgor
ICAgICAgICAoV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KToKKyAgICAg
ICAgKFdlYkRvY3VtZW50TG9hZGVyTWFjOjpkZWNyZWFzZUxvYWRDb3VudCk6CisgICAgICAgICog
V2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaDoKKwogMjAyMS0wOS0xNCAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtIYXJkZW5pbmddIFZhbGlkYXRlIElEQlZhbHVl
J3MgYmxvYiBwYXRocyBpbiBXZWJJREJTZXJ2ZXI6OnB1dE9yQWRkKCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2lu
L0NoYW5nZUxvZwppbmRleCA3NzMyYTBlNzUxY2EyYTI2NTEzNjljNGRiNDNlNmI3MTQxYzRjNDI5
Li4yNTY2M2ZhNzU1ZWZlYzI5YzRkN2ZkOTM3ZDNlYTYzNGNmNjFjZTJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMjEtMDktMTcgIEFsZXggQ2hyaXN0
ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBVc2UgT2JqZWN0SWRl
bnRpZmllciBmb3IgUmVzb3VyY2VMb2FkZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIzMDI3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE1pY2hhZWwg
Q2F0YW56YXJvLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGll
bnQuY3BwOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZSk6CisgICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOgorICAgICAgICAoV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChX
ZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aCk6Cisg
ICAgICAgIChXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKToK
KyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKToK
KyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oOgorCiAyMDIxLTA5
LTE3ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIENv
bnZlcnQgdXNlc01vY2tTY3JvbGxBbmltYXRvciBmcm9tIGEgRGVwcmVjYXRlZEdsb2JhbFNldHRp
bmdzIHRvIGEgV2ViUHJlZmVyZW5jZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVy
cy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggYzI5OTNhMWJjMTgz
MmZlYzJjZTRjM2IyNzU5NTczOTJiNzMxNTE3NC4uYmVmOTgzNmE2MDE0ODk3YmEwZjI4YmE2YzNl
YTU3OGE2ZDRjZjEwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC04NDQsNiArODQ0LDcgQEAgc2V0
KFdlYkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGxvYWRlci9SZXNvdXJjZUxv
YWRTdGF0aXN0aWNzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VMb2FkVGltaW5nLmgKICAgICBsb2Fk
ZXIvUmVzb3VyY2VMb2FkZXIuaAorICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aAogICAgIGxvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaAogICAgIGxvYWRlci9SZXNvdXJj
ZUxvYWRlclR5cGVzLmgKICAgICBsb2FkZXIvUmVzb3VyY2VUaW1pbmdJbmZvcm1hdGlvbi5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNoTG9hZGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCmluZGV4IDg2ZjUz
NDdmZDkxMzNkYzBlYWIzNWJkZWVjMzZlNmIzOTBiOWYyZTcuLjZjYmQxZjQ5M2Q0ODA3YzUzMmMy
ODEzZWZlMTdmYzkwMTU5NWY3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
ZmV0Y2gvRmV0Y2hMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0Y2gv
RmV0Y2hMb2FkZXIuY3BwCkBAIC0xNDIsNyArMTQyLDcgQEAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
RmV0Y2hMb2FkZXI6OnN0YXJ0U3RyZWFtaW5nKCkKICAgICByZXR1cm4gZmlyc3RDaHVuazsKIH0K
IAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkUmVj
ZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCiB7CiAgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3Bv
bnNlKTsKIH0KQEAgLTE1Niw3ICsxNTYsNyBAQCB2b2lkIEZldGNoTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShjb25zdCB1aW50OF90KiB2YWx1ZSwgaW50IHNpemUpCiAgICAgbV9jb25zdW1lci0+YXBw
ZW5kKHZhbHVlLCBzaXplKTsKIH0KIAotdm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
Zyh1bnNpZ25lZCBsb25nKQordm9pZCBGZXRjaExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgbV9jbGllbnQuZGlkU3VjY2VlZCgpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9mZXRjaC9GZXRjaExvYWRlci5oCmluZGV4IGYzMTRhMDVm
Y2ZhYzYxN2MzY2JkMzJiYTkwM2Y3Y2YyMDFiOWZlNDUuLjQwNzI4ZDI1N2U4NDNjNDExNDg2ZmQ2
ZTQzODA3MDQ0MzFhY2ZjYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZmV0
Y2gvRmV0Y2hMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2ZldGNoL0ZldGNo
TG9hZGVyLmgKQEAgLTU3LDkgKzU3LDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFRo
cmVhZGFibGVMb2FkZXJDbGllbnQgQVBJLgotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVu
c2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
LCBpbnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBm
aW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwog
CiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IGUzYjgyYjZkMTgxYjliNmQ0YWEzYzRmZGNjY2M1M2NlOWY4ZThmYjEu
LjRkZGNjZTRlNjMzNTEwOWQ5N2E0NjNkZDQxYjhiZjExZTA1N2IyMDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIwMTIsNiAr
MjAxMiw3IEBACiAJCTVCMzA2OTVFMThCM0QzNDUwMDk5RDVFOCAvKiBXZWJHTERyYXdCdWZmZXJz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QjMwNjk1
QjE4QjNEMzQ1MDA5OUQ1RTggLyogV2ViR0xEcmF3QnVmZmVycy5oICovOyB9OwogCQk1QjQ2NjU2
MzI1RDE0QzBBMDAwQ0ZFMTQgLyogU2Nyb2xsaW5nRWZmZWN0c0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVCNDY2NTVGMjVEMTRDMDkw
MDBDRkUxNCAvKiBTY3JvbGxpbmdFZmZlY3RzQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVCNDY2NTY0MjVEMTRDMEEwMDBDRkUx
NCAvKiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNUI0NjY1NjAyNUQxNEMwQTAwMENGRTE0IC8qIFNjcm9sbFNu
YXBBbmltYXRvclN0YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKKwkJNUMxQjFEM0YyNkYzOTc4MDAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUMxQjFEM0QyNkYzOTc3RjAwODgyREEyIC8qIFJlc291cmNlTG9hZGVySWRlbnRpZmllci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTVDMkIxQUVD
MjIzOTdFQkMwMEI5MUNGNyAvKiBSZXNvdXJjZVJlc3BvbnNlQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMUY3OEQwQjFDMjU0MjJDMDAyNDU0
NDYgLyogUmVzb3VyY2VSZXNwb25zZUNvY29hLm1tICovOyB9OwogCQk1QzQzMDRCMTE5MUFDOTA4
MDAwRTJCQzAgLyogRVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUM0MzA0QUUxOTFBQzkwODAwMEUyQkMwIC8qIEVYVFNo
YWRlclRleHR1cmVMT0QuaCAqLzsgfTsKIAkJNUM0MzA0QjYxOTFBRUY0NjAwMEUyQkMwIC8qIEpT
RVhUU2hhZGVyVGV4dHVyZUxPRC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNUM0MzA0QjQxOTFBRUY0NjAwMEUyQkMwIC8qIEpTRVhUU2hhZGVyVGV4dHVy
ZUxPRC5oICovOyB9OwpAQCAtOTc1OSw2ICs5NzYwLDcgQEAKIAkJNUMxQjFEMjQyNkYxNUIxQTAw
ODgyREEyIC8qIFNoYXJlZFdvcmtlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBTaGFyZWRXb3JrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMxQjFEMjUy
NkYxODhEODAwODgyREEyIC8qIFdvcmtlck9wdGlvbnMuaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0
aCA9IFdvcmtlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1QzFC
MUQyNjI2RjE4QTRCMDA4ODJEQTIgLyogV29ya2VyT3B0aW9ucy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrZXJPcHRpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTVDMUIxRDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDMkVCRTAxMjU3NzE5ODkw
MEQ1NUIwNSAvKiBTZXJpYWxpemVkTkZBLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFNlcmlhbGl6ZWRORkEuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNUMyRUJF
MDMyNTc3MUE0QzAwRDU1QjA1IC8qIFNlcmlhbGl6ZWRORkEuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2VyaWFsaXplZE5GQS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDMzkzMDVEMUFBMEY2QTkwMDI5QzgxNiAvKiBERkFCeXRlY29kZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBERkFCeXRlY29kZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjc3NDAsNiArMjc3NDIsNyBAQAogCQkJCTdDMkZBNjEwMUVB
OTVBMzIwMEEwMzEwOCAvKiBSZXNvdXJjZUNyeXB0b2dyYXBoaWNEaWdlc3QuaCAqLywKIAkJCQk5
M0UyMjdERTBBRjU4OUFEMDBENDgzMjQgLyogUmVzb3VyY2VMb2FkZXIuY3BwICovLAogCQkJCTY1
NkQzNzI3MEFEQkE1REUwMEE0NTU0RCAvKiBSZXNvdXJjZUxvYWRlci5oICovLAorCQkJCTVDMUIx
RDNEMjZGMzk3N0YwMDg4MkRBMiAvKiBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaCAqLywKIAkJ
CQlEMEEzQTczMDE0MDVBMzk4MDBGQjhFRDMgLyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggKi8s
CiAJCQkJNTFBRjUwMzUxNkYxMDBGNjAwOTVCMkU4IC8qIFJlc291cmNlTG9hZGVyVHlwZXMuaCAq
LywKIAkJCQk1MUVFN0IzOTFBQTUxMjMxMDBGOTJCMjEgLyogUmVzb3VyY2VMb2FkSW5mby5jcHAg
Ki8sCkBAIC0zNDY5MSw2ICszNDY5NCw3IEBACiAJCQkJNTE0Qzc2N0EwQ0U5MjNBMTAwN0VGM0NE
IC8qIFJlc291cmNlSGFuZGxlQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk1MTRDNzY3QjBD
RTkyM0ExMDA3RUYzQ0QgLyogUmVzb3VyY2VIYW5kbGVJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNjU2RDM3M0YwQURCQTVERTAwQTQ1NTREIC8qIFJlc291cmNlTG9hZGVyLmggaW4gSGVh
ZGVycyAqLywKKwkJCQk1QzFCMUQzRjI2RjM5NzgwMDA4ODJEQTIgLyogUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlEMEEzQTczMTE0MDVBMzk4MDBGQjhFRDMg
LyogUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUFGNTAzNjE2
RjEwMEY2MDA5NUIyRTggLyogUmVzb3VyY2VMb2FkZXJUeXBlcy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJNTFFRTdCMzgxQUE1MEIwNTAwRjkyQjIxIC8qIFJlc291cmNlTG9hZEluZm8uaCBpbiBIZWFk
ZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1
bGVTY3JpcHRMb2FkZXIuaAppbmRleCA3NmQxNGRhZmFhYWQxMjI5YmVlMDNlYjcxMjk2MmIwYWI2
M2EwNWI1Li45NjM5MGEwODBlNjExNDlkYzE2Y2I4NmViOWE5MDhlYWIwZTE5NmI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJNb2R1bGVTY3JpcHRMb2Fk
ZXIuaApAQCAtNjUsNyArNjUsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFdvcmtlck1vZHVs
ZVNjcmlwdExvYWRlcihNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQmLCBEZWZlcnJlZFByb21pc2Um
LCBXb3JrZXJTY3JpcHRGZXRjaGVyJiwgUmVmUHRyPE1vZHVsZUZldGNoUGFyYW1ldGVycz4mJik7
CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgZmluYWwgeyB9CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWwgeyB9
CiAgICAgdm9pZCBub3RpZnlGaW5pc2hlZCgpIGZpbmFsOwogCiAgICAgdm9pZCBub3RpZnlDbGll
bnRGaW5pc2hlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggODU1MzQxMjA1ZjNhN2I5
NDI2ZmE3ODhjM2I1YTE3OWE4MTZhYWVkZi4uNmYxZTk5ZWFiNGRlZWYxMTIxZjAzYjkzZjZlZjEy
ZjI2ODEzZTcyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0zODMzLDEyICszODMzLDEy
IEBAIHZvaWQgRG9jdW1lbnQ6OnByb2Nlc3NNZXRhSHR0cEVxdWl2KGNvbnN0IFN0cmluZyYgZXF1
aXYsIGNvbnN0IFN0cmluZyYgY29udGVudCwKICAgICBjYXNlIEhUVFBIZWFkZXJOYW1lOjpYRnJh
bWVPcHRpb25zOgogICAgICAgICBpZiAoZnJhbWUpIHsKICAgICAgICAgICAgIEZyYW1lTG9hZGVy
JiBmcmFtZUxvYWRlciA9IGZyYW1lLT5sb2FkZXIoKTsKLSAgICAgICAgICAgIHVuc2lnbmVkIGxv
bmcgcmVxdWVzdElkZW50aWZpZXIgPSAwOworICAgICAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyOwogICAgICAgICAgICAgaWYgKGZyYW1lTG9hZGVyLmFj
dGl2ZURvY3VtZW50TG9hZGVyKCkgJiYgZnJhbWVMb2FkZXIuYWN0aXZlRG9jdW1lbnRMb2FkZXIo
KS0+bWFpblJlc291cmNlTG9hZGVyKCkpCiAgICAgICAgICAgICAgICAgcmVxdWVzdElkZW50aWZp
ZXIgPSBmcmFtZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VMb2Fk
ZXIoKS0+aWRlbnRpZmllcigpOwogCiAgICAgICAgICAgICBTdHJpbmcgbWVzc2FnZSA9ICJUaGUg
WC1GcmFtZS1PcHRpb24gJyIgKyBjb250ZW50ICsgIicgc3VwcGxpZWQgaW4gYSA8bWV0YT4gZWxl
bWVudCB3YXMgaWdub3JlZC4gWC1GcmFtZS1PcHRpb25zIG1heSBvbmx5IGJlIHByb3ZpZGVkIGJ5
IGFuIEhUVFAgaGVhZGVyIHNlbnQgd2l0aCB0aGUgZG9jdW1lbnQuIjsKLSAgICAgICAgICAgIGFk
ZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OlNlY3VyaXR5LCBNZXNzYWdlTGV2ZWw6OkVy
cm9yLCBtZXNzYWdlLCByZXF1ZXN0SWRlbnRpZmllcik7CisgICAgICAgICAgICBhZGRDb25zb2xl
TWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVz
c2FnZSwgcmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgICAgIH0KICAgICAgICAg
YnJlYWs7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxv
YWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCmlu
ZGV4IDQ0M2M1NDljMTVhNTcxZWIzYjVlNDg2NGFiNzk1M2IzNDMyODY1YTIuLmRjYzYxM2I4NWQ4
YjFlZmM0Yzg4YWU3MGE1OGQyNjE1YzdlYjk0OTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlUmVhZGVyTG9hZGVyLmNwcApAQCAtMTI2LDcgKzEyNiw3IEBAIHZvaWQgRmlsZVJlYWRl
ckxvYWRlcjo6Y2xlYW51cCgpCiAgICAgfQogfQogCi12b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRp
ZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKK3ZvaWQgRmlsZVJlYWRlckxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7
CiAgICAgaWYgKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgIT0gMjAwKSB7CiAgICAgICAgIGZh
aWxlZChodHRwU3RhdHVzQ29kZVRvRXJyb3JDb2RlKHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkp
KTsKQEAgLTIxNSw3ICsyMTUsNyBAQCB2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZFJlY2VpdmVE
YXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKQogICAgICAgICBtX2NsaWVu
dC0+ZGlkUmVjZWl2ZURhdGEoKTsKIH0KIAotdm9pZCBGaWxlUmVhZGVyTG9hZGVyOjpkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcpCit2b2lkIEZpbGVSZWFkZXJMb2FkZXI6OmRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogICAgIGlmIChtX3ZhcmlhYmxl
TGVuZ3RoICYmIG1fdG90YWxCeXRlcyA+IG1fYnl0ZXNMb2FkZWQpIHsKICAgICAgICAgbV9yYXdE
YXRhID0gbV9yYXdEYXRhLT5zbGljZSgwLCBtX2J5dGVzTG9hZGVkKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmgKaW5kZXggOWNiYjliNjExMWE3MTYyNzEzZGQ1ZGNj
ZTdmMDUzZWVjMDg1NjhkZC4uOTY4NDI3OTAzYmRlOTUwNzU1ZTc4YjdlZjUwNmMxYzgzY2Y4YmFm
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmgKQEAgLTY5LDkg
KzY5LDkgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2FuY2VsKCk7CiAKICAg
ICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50Ci0gICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2Uo
dW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOworICAgIHZv
aWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3Qg
dWludDhfdCosIGludCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2ln
bmVkIGxvbmcpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJj
ZUVycm9yJikgb3ZlcnJpZGU7CiAKICAgICBTdHJpbmcgc3RyaW5nUmVzdWx0KCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3Bw
CmluZGV4IGZlMjA2YWVhMzVlNjc5MzNlMjAxOWZjNWFmMWU5M2FmZGEwZTM4MzcuLmY5MWQ1NTFi
M2YxMDM2MDA1Nzk1NTc2NDgyYzI2ODg0MGY4OGE2MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCkBAIC01NzUsMTMg
KzU3NSwxMyBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YXBwbHlFbXVsYXRlZE1l
ZGlhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cgogICAgICAgICBwYWdlQWdlbnQtPmFw
cGx5RW11bGF0ZWRNZWRpYShtZWRpYSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjp3aWxsU2VuZFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRp
bmdBZ2VudHMsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCit2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0SW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNo
ZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2Vu
dCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBu
ZXR3b3JrQWdlbnQtPndpbGxTZW5kUmVxdWVzdChpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3Qs
IHJlZGlyZWN0UmVzcG9uc2UsIGNhY2hlZFJlc291cmNlKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9mVHlwZUltcGwoSW5zdHJ1bWVudGluZ0Fn
ZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIExvYWRUeXBlIGxv
YWRUeXBlKQordm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9m
VHlwZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCiB7CiAgICAgaWYgKGF1
dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2Vu
dCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPndpbGxTZW5kUmVxdWVzdE9mVHlwZShpZGVudGlm
aWVyLCBsb2FkZXIsIHJlcXVlc3QsIGxvYWRUeXBlKTsKQEAgLTU5Niw3ICs1OTYsNyBAQCB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hl
SW1wbChJbnN0cnVtZW50aW5nQQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZExvYWRSZXNvdXJj
ZUZyb21NZW1vcnlDYWNoZShsb2FkZXIsICpjYWNoZWRSZXNvdXJjZSk7CiB9CiAKLXZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQordm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKIHsKICAgICBpZiAo
TElLRUxZKCFpbnN0cnVtZW50aW5nQWdlbnRzLmluc3BlY3RvckVudmlyb25tZW50KCkuZGV2ZWxv
cGVyRXh0cmFzRW5hYmxlZCgpKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjA3LDI1ICs2MDcsMjUg
QEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3Bv
bnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnQKICAgICAgICAgY29uc29sZUFnZW50LT5kaWRSZWNl
aXZlUmVzcG9uc2UoaWRlbnRpZmllciwgcmVzcG9uc2UpOyAvLyBUaGlzIHNob3VsZCBjb21lIEFG
VEVSIHJlc291cmNlIG5vdGlmaWNhdGlvbiwgZnJvbnQtZW5kIHJlbGllcyBvbiB0aGlzLgogfQog
Ci12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2Fk
ZXJSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50cywg
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBkb2N1bWVudFRocmVhZGFibGVMb2FkZXIsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRS
ZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBp
bnN0cnVtZW50aW5nQWdlbnRzLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAg
ICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5l
dHdvcmtBZ2VudCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPmRpZFJlY2VpdmVUaHJlYWRhYmxl
TG9hZGVyUmVzcG9uc2UoaWRlbnRpZmllciwgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyKTsKIH0K
IAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhSW1wbChJbnN0
cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERh
dGFMZW5ndGgpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZURhdGFJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGluc3RydW1lbnRpbmdBZ2VudHMsIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxl
bmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdl
bnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAg
bmV0d29ya0FnZW50LT5kaWRSZWNlaXZlRGF0YShpZGVudGlmaWVyLCBkYXRhLCBkYXRhTGVuZ3Ro
LCBlbmNvZGVkRGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRGaW5pc2hMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5n
QWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxv
YWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlk
RmluaXNoTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYgaW5zdHJ1bWVudGluZ0FnZW50
cywgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNv
dXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgaWYgKGF1dG8qIG5ldHdvcmtBZ2Vu
dCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2VudCgpKQogICAgICAgICBu
ZXR3b3JrQWdlbnQtPmRpZEZpbmlzaExvYWRpbmcoaWRlbnRpZmllciwgbG9hZGVyLCBuZXR3b3Jr
TG9hZE1ldHJpY3MsIHJlc291cmNlTG9hZGVyKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZEZhaWxMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVt
ZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmRpZEZhaWxMb2FkaW5nSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVt
ZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYg
KExJS0VMWSghaW5zdHJ1bWVudGluZ0FnZW50cy5pbnNwZWN0b3JFbnZpcm9ubWVudCgpLmRldmVs
b3BlckV4dHJhc0VuYWJsZWQoKSkpCiAgICAgICAgIHJldHVybjsKQEAgLTY0OCw3ICs2NDgsNyBA
QCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkTG9hZFhIUlN5bmNocm9ub3VzbHlJ
bXBsKEluc3RydW1lbnRpbmdBZ2VudHMmCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+ZGlkTG9hZFhI
UlN5bmNocm9ub3VzbHkoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNj
cmlwdEltcG9ydGVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRz
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQor
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OnNjcmlwdEltcG9ydGVkSW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpCiB7CiAgICAgaWYgKGF1
dG8qIG5ldHdvcmtBZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMuZW5hYmxlZE5ldHdvcmtBZ2Vu
dCgpKQogICAgICAgICBuZXR3b3JrQWdlbnQtPnNldEluaXRpYWxTY3JpcHRDb250ZW50KGlkZW50
aWZpZXIsIHNvdXJjZVN0cmluZyk7CkBAIC02NjAsNyArNjYwLDcgQEAgdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRCeUNTUEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW4KICAgICAgICAgd2ViRGVidWdnZXJBZ2VudC0+c2NyaXB0RXhlY3V0aW9uQmxvY2tl
ZEJ5Q1NQKGRpcmVjdGl2ZVRleHQpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiBpbnN0
cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllcikKIHsKICAgICBpZiAoYXV0byogbmV0d29ya0FnZW50ID0gaW5zdHJ1bWVudGlu
Z0FnZW50cy5lbmFibGVkTmV0d29ya0FnZW50KCkpCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+ZGlk
UmVjZWl2ZVNjcmlwdFJlc3BvbnNlKGlkZW50aWZpZXIpOwpAQCAtODUwLDcgKzg1MCw3IEBAIHZv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjppbnRlcmNlcHRSZXF1ZXN0SW1wbChJbnN0cnVt
ZW50aW5nQWdlbnRzJiBpbnN0cnVtCiAgICAgICAgIG5ldHdvcmtBZ2VudC0+aW50ZXJjZXB0UmVx
dWVzdChsb2FkZXIsIFdURk1vdmUoaGFuZGxlcikpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmIGlu
c3RydW1lbnRpbmdBZ2VudHMsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQordm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlc3BvbnNlSW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzJiBpbnN0cnVtZW50aW5nQWdlbnRzLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4m
JiBoYW5kbGVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrQWdlbnQgPSBpbnN0cnVtZW50aW5n
QWdlbnRzLmVuYWJsZWROZXR3b3JrQWdlbnQoKSkKICAgICAgICAgbmV0d29ya0FnZW50LT5pbnRl
cmNlcHRSZXNwb25zZShyZXNwb25zZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5kbGVyKSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
LmgKaW5kZXggMzFmMDVjNTBmODA1ZGI1NzliOGM5MzBiYzkwYjlmNjFhOTJmYWM2OC4uYzY0NmUz
MTMxYzkxYWE5MjQyNjEwYmFjYzg2ZjViYzM5MDgyZjgyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApAQCAtNDUsNiArNDUs
NyBAQAogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvblB1YmxpYy5oIgogI2luY2x1
ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlci5oIgorI2luY2x1ZGUgIlJlc291
cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlN0b3JhZ2VBcmVhLmgiCiAjaW5jbHVk
ZSAiV2ViQW5pbWF0aW9uLmgiCiAjaW5jbHVkZSAiV29ya2VySW5zcGVjdG9yUHJveHkuaCIKQEAg
LTE4NCwzNCArMTg1LDM0IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBhcHBseVVzZXJBZ2Vu
dE92ZXJyaWRlKEZyYW1lJiwgU3RyaW5nJik7CiAgICAgc3RhdGljIHZvaWQgYXBwbHlFbXVsYXRl
ZE1lZGlhKEZyYW1lJiwgU3RyaW5nJik7CiAKLSAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVl
c3QoRnJhbWUqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwg
Y29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3Qo
RnJhbWUqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29u
c3QgQ2FjaGVkUmVzb3VyY2UqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkUmVzb3VyY2VGcm9t
TWVtb3J5Q2FjaGUoUGFnZSYsIERvY3VtZW50TG9hZGVyKiwgQ2FjaGVkUmVzb3VyY2UqKTsKLSAg
ICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSYsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlVGhyZWFkYWJs
ZUxvYWRlclJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllcik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGEoRnJhbWUqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
LCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwotICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRp
bmcoRnJhbWUqLCBEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBzdGF0aWMgdm9p
ZCBkaWRGYWlsTG9hZGluZyhGcmFtZSosIERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7Ci0KLSAgICBzdGF0aWMgdm9pZCB3aWxs
U2VuZFJlcXVlc3QoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYpOwotICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVS
ZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgdW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQg
ZGlkUmVjZWl2ZURhdGEoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKTsKLSAgICBz
dGF0aWMgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKLSAg
ICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHN0
YXRpYyB2b2lkIGRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKEZyYW1lJiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBS
ZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9h
ZGVyUmVzcG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlRGF0YShGcmFtZSosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGlu
dCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZGluZyhG
cmFtZSosIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBO
ZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHN0YXRpYyB2b2lkIGRp
ZEZhaWxMb2FkaW5nKEZyYW1lKiwgRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKworICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5k
UmVxdWVzdChXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgUmVzb3VyY2VSZXF1ZXN0Jik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291
cmNlUmVzcG9uc2UoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCBkaWRS
ZWNlaXZlRGF0YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpOworICAgIHN0YXRp
YyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYpOworICAgIHN0
YXRpYyB2b2lkIGRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKICAgICAvLyBT
b21lIG5ldHdvcmsgcmVxdWVzdHMgZG8gbm90IGdvIHRocm91Z2ggdGhlIG5vcm1hbCBuZXR3b3Jr
IGxvYWRpbmcgcGF0aC4KICAgICAvLyBUaGVzZSBuZXR3b3JrIHJlcXVlc3RzIGhhdmUgdG8gaXNz
dWUgdGhlaXIgb3duIHdpbGxTZW5kUmVxdWVzdCAvIGRpZFJlY2VpdmVSZXNwb25zZSAvIGRpZEZp
bmlzaExvYWRpbmcgLyBkaWRGYWlsTG9hZGluZwogICAgIC8vIGluc3RydW1lbnRhdGlvbiBjYWxs
cy4gU29tZSBvZiB0aGVzZSBsb2FkcyBhcmUgZm9yIHJlc291cmNlcyB0aGF0IGxhY2sgYSBDYWNo
ZWRSZXNvdXJjZTo6VHlwZS4KICAgICBlbnVtIGNsYXNzIExvYWRUeXBlIHsgUGluZywgQmVhY29u
IH07Ci0gICAgc3RhdGljIHZvaWQgd2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIExv
YWRUeXBlKTsKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUoRnJhbWUqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0
JiwgTG9hZFR5cGUpOwogCi0gICAgc3RhdGljIHZvaWQgY29udGludWVBZnRlclhGcmFtZU9wdGlv
bnNEZW5pZWQoRnJhbWUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHN0YXRpYyB2b2lkIGNvbnRpbnVlV2l0
aFBvbGljeURvd25sb2FkKEZyYW1lJiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICBzdGF0aWMgdm9pZCBjb250
aW51ZVdpdGhQb2xpY3lJZ25vcmUoRnJhbWUmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOworICAgIHN0YXRpYyB2b2lk
IGNvbnRpbnVlQWZ0ZXJYRnJhbWVPcHRpb25zRGVuaWVkKEZyYW1lJiwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAg
ICBzdGF0aWMgdm9pZCBjb250aW51ZVdpdGhQb2xpY3lEb3dubG9hZChGcmFtZSYsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
Jik7CisgICAgc3RhdGljIHZvaWQgY29udGludWVXaXRoUG9saWN5SWdub3JlKEZyYW1lJiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKTsKICAgICBzdGF0aWMgdm9pZCB3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHkoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCopOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRYSFJTeW5jaHJvbm91
c2x5KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKLSAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBv
cnRlZChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CisgICAgc3RhdGljIHZvaWQgc2NyaXB0SW1wb3J0
ZWQoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHN0YXRpYyB2b2lkIHNjcmlwdEV4ZWN1dGlv
bkJsb2NrZWRCeUNTUChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBkaXJl
Y3RpdmVUZXh0KTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2UoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgc3Rh
dGljIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQq
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOwogICAgIHN0YXRpYyB2b2lkIGRvbUNvbnRlbnRM
b2FkZWRFdmVudEZpcmVkKEZyYW1lJik7CiAgICAgc3RhdGljIHZvaWQgbG9hZEV2ZW50RmlyZWQo
RnJhbWUqKTsKICAgICBzdGF0aWMgdm9pZCBmcmFtZURldGFjaGVkRnJvbVBhcmVudChGcmFtZSYp
OwpAQCAtMjMxLDcgKzIzMiw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgYm9vbCBzaG91bGRJbnRl
cmNlcHRSZXF1ZXN0KGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAg
c3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVxdWVzdChSZXNv
dXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik+JiYpOwot
ICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYm
KTsKKyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShjb25zdCBGcmFtZSYsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+
KT4mJik7CiAKICAgICBzdGF0aWMgdm9pZCBhZGRNZXNzYWdlVG9Db25zb2xlKFBhZ2UmLCBzdGQ6
OnVuaXF1ZV9wdHI8SW5zcGVjdG9yOjpDb25zb2xlTWVzc2FnZT4pOwogICAgIHN0YXRpYyB2b2lk
IGFkZE1lc3NhZ2VUb0NvbnNvbGUoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmLCBzdGQ6OnVu
aXF1ZV9wdHI8SW5zcGVjdG9yOjpDb25zb2xlTWVzc2FnZT4pOwpAQCAtNDAzLDIwICs0MDQsMjAg
QEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9pZCBhcHBseVVzZXJBZ2VudE92ZXJyaWRlSW1wbChJ
bnN0cnVtZW50aW5nQWdlbnRzJiwgU3RyaW5nJik7CiAgICAgc3RhdGljIHZvaWQgYXBwbHlFbXVs
YXRlZE1lZGlhSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgU3RyaW5nJik7CiAKLSAgICBzdGF0
aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3Vy
Y2UqKTsKLSAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGVJbXBsKEluc3RydW1l
bnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwg
UmVzb3VyY2VSZXF1ZXN0JiwgTG9hZFR5cGUpOwotICAgIHN0YXRpYyB2b2lkIG1hcmtSZXNvdXJj
ZUFzQ2FjaGVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyKTsKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RJbXBsKEluc3RydW1lbnRpbmdB
Z2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3Vy
Y2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgY29u
c3QgQ2FjaGVkUmVzb3VyY2UqKTsKKyAgICBzdGF0aWMgdm9pZCB3aWxsU2VuZFJlcXVlc3RPZlR5
cGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0JiwgTG9hZFR5cGUpOworICAgIHN0YXRpYyB2
b2lkIG1hcmtSZXNvdXJjZUFzQ2FjaGVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgdm9pZCBkaWRMb2FkUmVzb3VyY2VGcm9t
TWVtb3J5Q2FjaGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBEb2N1bWVudExvYWRlciosIENh
Y2hlZFJlc291cmNlKik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVyKik7
Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJSZXNwb25zZUltcGwo
SW5zdHJ1bWVudGluZ0FnZW50cyYsIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZURhdGFJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4
X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpOwotICAgIHN0
YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmdJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKLSAgICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9hZGlu
Z0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CisgICAgc3RhdGljIHZvaWQgZGlk
UmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYsIFJlc291cmNlTG9hZGVyKik7CisgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZVRocmVhZGFi
bGVMb2FkZXJSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIERvY3VtZW50VGhyZWFk
YWJsZUxvYWRlciYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CisgICAgc3RhdGljIHZvaWQg
ZGlkUmVjZWl2ZURhdGFJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2Rl
ZERhdGFMZW5ndGgpOworICAgIHN0YXRpYyB2b2lkIGRpZEZpbmlzaExvYWRpbmdJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiwgY29uc3QgTmV0d29ya0xvYWRNZXRyaWNzJiwgUmVzb3VyY2VMb2FkZXIqKTsKKyAgICBzdGF0
aWMgdm9pZCBkaWRGYWlsTG9hZGluZ0ltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7
CiAgICAgc3RhdGljIHZvaWQgd2lsbExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzJik7CiAgICAgc3RhdGljIHZvaWQgZGlkTG9hZFhIUlN5bmNocm9ub3VzbHlJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMmKTsKLSAgICBzdGF0aWMgdm9pZCBzY3JpcHRJbXBvcnRlZElt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHN0YXRpYyB2b2lkIHNjcmlwdEltcG9ydGVkSW1w
bChJbnN0cnVtZW50aW5nQWdlbnRzJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBT
dHJpbmcmIHNvdXJjZVN0cmluZyk7CiAgICAgc3RhdGljIHZvaWQgc2NyaXB0RXhlY3V0aW9uQmxv
Y2tlZEJ5Q1NQSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgU3RyaW5nJiBkaXJlY3Rp
dmVUZXh0KTsKLSAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlU2NyaXB0UmVzcG9uc2VJbXBsKElu
c3RydW1lbnRpbmdBZ2VudHMmLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHN0YXRp
YyB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyYs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAgICAgc3RhdGljIHZvaWQgZG9tQ29udGVudExv
YWRlZEV2ZW50RmlyZWRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBGcmFtZSYpOwogICAgIHN0
YXRpYyB2b2lkIGxvYWRFdmVudEZpcmVkSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgRnJhbWUq
KTsKICAgICBzdGF0aWMgdm9pZCBmcmFtZURldGFjaGVkRnJvbVBhcmVudEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyYsIEZyYW1lJik7CkBAIC00MzYsNyArNDM3LDcgQEAgcHJpdmF0ZToKICAgICBz
dGF0aWMgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRz
JiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJj
ZXB0UmVzcG9uc2VJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJik7CiAgICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVxdWVzdEltcGwoSW5zdHJ1bWVudGlu
Z0FnZW50cyYsIFJlc291cmNlTG9hZGVyJiwgRnVuY3Rpb248dm9pZChjb25zdCBSZXNvdXJjZVJl
cXVlc3QmKT4mJik7Ci0gICAgc3RhdGljIHZvaWQgaW50ZXJjZXB0UmVzcG9uc2VJbXBsKEluc3Ry
dW1lbnRpbmdBZ2VudHMmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
LCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+JiYpOworICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJl
c3BvbnNlSW1wbChJbnN0cnVtZW50aW5nQWdlbnRzJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKIAogICAgIHN0YXRp
YyB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMmLCBzdGQ6
OnVuaXF1ZV9wdHI8SW5zcGVjdG9yOjpDb25zb2xlTWVzc2FnZT4pOwogCkBAIC0xMDMzLDIwICsx
MDM0LDIwIEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YXBwbHlFbXVs
YXRlZE1lZGlhKEZyYW1lJiBmcmFtZSwgU3RyaW5nJiBtCiAgICAgICAgIGFwcGx5RW11bGF0ZWRN
ZWRpYUltcGwoKmFnZW50cywgbWVkaWEpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdChGcmFtZSogZnJhbWUsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNo
ZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OndpbGxTZW5kUmVxdWVzdChGcmFtZSogZnJhbWUsIFJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNv
bnN0IENhY2hlZFJlc291cmNlKiBjYWNoZWRSZXNvdXJjZSkKIHsKICAgICBGQVNUX1JFVFVSTl9J
Rl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVu
dGluZ0FnZW50cyhmcmFtZSkpCiAgICAgICAgIHdpbGxTZW5kUmVxdWVzdEltcGwoKmFnZW50cywg
aWRlbnRpZmllciwgbG9hZGVyLCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlLCBjYWNoZWRSZXNv
dXJjZSk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNl
bmRSZXF1ZXN0KFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCitpbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdChXb3JrZXJPcldvcmts
ZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZf
Tk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgd2lsbFNlbmRSZXF1ZXN0SW1wbChpbnN0cnVtZW50
aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgcmVxdWVzdCwgUmVz
b3VyY2VSZXNwb25zZSB7IH0sIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb246OndpbGxTZW5kUmVxdWVzdE9mVHlwZShGcmFtZSogZnJhbWUsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBMb2FkVHlwZSBsb2FkVHlwZSkKK2lubGluZSB2b2lkIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKEZyYW1lKiBmcmFtZSwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCwgTG9hZFR5cGUgbG9hZFR5cGUpCiB7CiAgICAgRkFTVF9S
RVRVUk5fSUZfTk9fRlJPTlRFTkRTKHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGlu
c3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQpAQCAtMTA1OSw3NiArMTA2MCw3NiBAQCBpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlD
YWNoZShQYWdlJiBwYWdlLAogICAgIGRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZUltcGwo
aW5zdHJ1bWVudGluZ0FnZW50cyhwYWdlKSwgbG9hZGVyLCByZXNvdXJjZSk7CiB9CiAKLWlubGlu
ZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2UoRnJhbWUmIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRl
ciogcmVzb3VyY2VMb2FkZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7
CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAg
ICAgICBkaWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoKmFnZW50cywgaWRlbnRpZmllciwg
bG9hZGVyLCByZXNwb25zZSwgcmVzb3VyY2VMb2FkZXIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVSZXNvdXJjZVJlc3BvbnNlKFdvcmtlck9y
V29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2UoV29ya2VyT3JXb3Jr
bGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNjb3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgZGlkUmVj
ZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMoZ2xvYmFsU2NvcGUp
LCBpZGVudGlmaWVyLCBudWxscHRyLCByZXNwb25zZSwgbnVsbHB0cik7CiB9CiAKLWlubGluZSB2
b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVRocmVhZGFibGVMb2FkZXJS
ZXNwb25zZShEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpkaWRSZWNlaXZlVGhyZWFkYWJsZUxvYWRlclJlc3BvbnNlKERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlciYgZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9OVEVORFMo
dm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50cyhkb2N1
bWVudFRocmVhZGFibGVMb2FkZXIuZG9jdW1lbnQoKSkpCiAgICAgICAgIGRpZFJlY2VpdmVUaHJl
YWRhYmxlTG9hZGVyUmVzcG9uc2VJbXBsKCphZ2VudHMsIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRl
ciwgaWRlbnRpZmllcik7CiB9CiAgICAgCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmRpZFJlY2VpdmVEYXRhKEZyYW1lKiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRh
TGVuZ3RoKQoraW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZl
RGF0YShGcmFtZSogZnJhbWUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCB1aW50OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3Ro
KQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChh
dXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlkUmVj
ZWl2ZURhdGFJbXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGVuY29k
ZWREYXRhTGVuZ3RoKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRSZWNlaXZlRGF0YShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFM
ZW5ndGgpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVE
YXRhKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVu
Z3RoKQogewogICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGRp
ZFJlY2VpdmVEYXRhSW1wbChpbnN0cnVtZW50aW5nQWdlbnRzKGdsb2JhbFNjb3BlKSwgaWRlbnRp
ZmllciwgZGF0YSwgZGF0YUxlbmd0aCwgZGF0YUxlbmd0aCk7CiB9CiAKLWlubGluZSB2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmluaXNoTG9hZGluZyhGcmFtZSogZnJhbWUsIERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgTmV0
d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MsIFJlc291cmNlTG9hZGVyKiByZXNv
dXJjZUxvYWRlcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmlu
aXNoTG9hZGluZyhGcmFtZSogZnJhbWUsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAg
IEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOwogICAgIGlmIChhdXRvKiBhZ2Vu
dHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlkRmluaXNoTG9hZGlu
Z0ltcGwoKmFnZW50cywgaWRlbnRpZmllciwgbG9hZGVyLCBuZXR3b3JrTG9hZE1ldHJpY3MsIHJl
c291cmNlTG9hZGVyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRGaW5pc2hMb2FkaW5nKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBnbG9iYWxTY29w
ZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5l
dHdvcmtMb2FkTWV0cmljcykKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkRmluaXNoTG9hZGluZyhXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYgZ2xvYmFsU2NvcGUs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1l
dHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcykKIHsKICAgICBGQVNUX1JFVFVSTl9JRl9OT19GUk9O
VEVORFModm9pZCgpKTsKICAgICBkaWRGaW5pc2hMb2FkaW5nSW1wbChpbnN0cnVtZW50aW5nQWdl
bnRzKGdsb2JhbFNjb3BlKSwgaWRlbnRpZmllciwgbnVsbHB0ciwgbmV0d29ya0xvYWRNZXRyaWNz
LCBudWxscHRyKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpk
aWRGYWlsTG9hZGluZyhGcmFtZSogZnJhbWUsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCitpbmxpbmUg
dm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZhaWxMb2FkaW5nKEZyYW1lKiBmcmFt
ZSwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmIChhdXRvKiBhZ2Vu
dHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKICAgICAgICAgZGlkRmFpbExvYWRpbmdJ
bXBsKCphZ2VudHMsIGlkZW50aWZpZXIsIGxvYWRlciwgZXJyb3IpOwogfQogCi1pbmxpbmUgdm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZhaWxMb2FkaW5nKFdvcmtlck9yV29ya2xl
dEdsb2JhbFNjb3BlJiBnbG9iYWxTY29wZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6ZGlkRmFpbExvYWRpbmcoV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmIGdsb2JhbFNj
b3BlLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiB7CiAgICAgZGlkRmFpbExvYWRpbmdJbXBsKGluc3RydW1lbnRpbmdBZ2Vu
dHMoZ2xvYmFsU2NvcGUpLCBpZGVudGlmaWVyLCBudWxscHRyLCBlcnJvcik7CiB9CiAKLWlubGlu
ZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlv
bnNEZW5pZWQoRnJhbWUmIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50
TG9hZGVyJiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoraW5saW5l
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZUFmdGVyWEZyYW1lT3B0aW9u
c0RlbmllZChGcmFtZSYgZnJhbWUsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSkKIHsKICAgICAvLyBUcmVhdCB0aGUgc2FtZSBhcyBkaWRSZWNlaXZlUmVzcG9uc2UuCiAgICAg
aWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoZnJhbWUpKQogICAgICAgICBk
aWRSZWNlaXZlUmVzb3VyY2VSZXNwb25zZUltcGwoKmFnZW50cywgaWRlbnRpZmllciwgJmxvYWRl
ciwgcmVzcG9uc2UsIG51bGxwdHIpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OmNvbnRpbnVlV2l0aFBvbGljeURvd25sb2FkKEZyYW1lJiBmcmFtZSwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciYgbG9hZGVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6Y29udGludWVXaXRoUG9saWN5RG93bmxvYWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXImIGxvYWRlciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgLy8gVHJlYXQgdGhlIHNhbWUgYXMgZGlk
UmVjZWl2ZVJlc3BvbnNlLgogICAgIGlmIChhdXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdl
bnRzKGZyYW1lKSkKICAgICAgICAgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKCphZ2Vu
dHMsIGlkZW50aWZpZXIsICZsb2FkZXIsIHJlc3BvbnNlLCBudWxscHRyKTsKIH0KIAotaW5saW5l
IHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUo
RnJhbWUmIGZyYW1lLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyJiBs
b2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQoraW5saW5lIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpjb250aW51ZVdpdGhQb2xpY3lJZ25vcmUoRnJhbWUmIGZy
YW1lLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIm
IGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgLy8gVHJl
YXQgdGhlIHNhbWUgYXMgZGlkUmVjZWl2ZVJlc3BvbnNlLgogICAgIGlmIChhdXRvKiBhZ2VudHMg
PSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKQEAgLTExNDksNyArMTE1MCw3IEBAIGlubGlu
ZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkTG9hZFhIUlN5bmNocm9ub3VzbHko
U2NyaXB0RXhlY3V0aW9uQ29uCiAgICAgICAgIGRpZExvYWRYSFJTeW5jaHJvbm91c2x5SW1wbCgq
YWdlbnRzKTsKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3Jp
cHRJbXBvcnRlZChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0LCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKQoraW5saW5lIHZvaWQgSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpzY3JpcHRJbXBvcnRlZChTY3JpcHRFeGVjdXRpb25Db250
ZXh0JiBjb250ZXh0LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VTdHJpbmcpCiB7CiAgICAgRkFTVF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRT
KHZvaWQoKSk7CiAgICAgaWYgKGF1dG8qIGFnZW50cyA9IGluc3RydW1lbnRpbmdBZ2VudHMoY29u
dGV4dCkpCkBAIC0xMTYzLDcgKzExNjQsNyBAQCBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OnNjcmlwdEV4ZWN1dGlvbkJsb2NrZWRCeUNTUChTY3JpcHRFeGVjdXRpbwogICAg
ICAgICBzY3JpcHRFeGVjdXRpb25CbG9ja2VkQnlDU1BJbXBsKCphZ2VudHMsIGRpcmVjdGl2ZVRl
eHQpOwogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2Vp
dmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCB1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246
OmRpZFJlY2VpdmVTY3JpcHRSZXNwb25zZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBGQVNUX1JFVFVS
Tl9JRl9OT19GUk9OVEVORFModm9pZCgpKTsKICAgICBpZiAoYXV0byogYWdlbnRzID0gaW5zdHJ1
bWVudGluZ0FnZW50cyhjb250ZXh0KSkKQEAgLTEyODQsNyArMTI4NSw3IEBAIGlubGluZSB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRl
ciYgbG9hZGVyLCBGCiAgICAgICAgIGludGVyY2VwdFJlcXVlc3RJbXBsKCphZ2VudHMsIGxvYWRl
ciwgV1RGTW92ZShoYW5kbGVyKSk7CiB9CiAKLWlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6aW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYgaGFuZGxlcikKK2lubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
aW50ZXJjZXB0UmVzcG9uc2UoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRC
dWZmZXI+KT4mJiBoYW5kbGVyKQogewogICAgIEFTU0VSVChJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OnNob3VsZEludGVyY2VwdFJlc3BvbnNlKGZyYW1lLCByZXNwb25zZSkpOwogICAgIGlmIChh
dXRvKiBhZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzKGZyYW1lKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktp
dC5jcHAKaW5kZXggNzMxNjMyNzhjY2EzOTk4ZjRmMDEyMmQ1Y2IwNTc3ZGE0NmE1MDc0Ny4uNjFl
NGJjM2JhMDE5ZWUyNWU1YzhiYzIyMWRmZjYwNzdlZGRiODYzZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktp
dC5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJL
aXQ6OmludGVyY2VwdFJlcXVlc3RJbnRlcm5hbChSZXNvdXJjZUxvYWRlciYgbG8KICAgICBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmludGVyY2VwdFJlcXVlc3QobG9hZGVyLCBXVEZNb3ZlKGhh
bmRsZXIpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25XZWJLaXQ6OmludGVy
Y2VwdFJlc3BvbnNlSW50ZXJuYWwoY29uc3QgRnJhbWUmIGZyYW1lLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVmZmVyPik+
JiYgaGFuZGxlcikKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNl
cHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiBmcmFtZSwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVk
QnVmZmVyPik+JiYgaGFuZGxlcikKIHsKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Omlu
dGVyY2VwdFJlc3BvbnNlKGZyYW1lLCByZXNwb25zZSwgaWRlbnRpZmllciwgV1RGTW92ZShoYW5k
bGVyKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uV2ViS2l0LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0LmgKaW5kZXggYmZmYzg3MDgwNjQ3NjUzODExNWU4MGYy
MGRkY2E0ZTgyMjJlNjI5Yi4uZjc2MTE0Y2U5OGY0MmE3ZmY5MDZhNDhkMDQyMGI5NjMwNWQzNjkx
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb25XZWJLaXQuaApAQCAtNDMsMTMgKzQzLDEzIEBAIHB1YmxpYzoKICAgICBz
dGF0aWMgYm9vbCBzaG91bGRJbnRlcmNlcHRSZXF1ZXN0KGNvbnN0IEZyYW1lKiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0Jik7CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVzcG9uc2Uo
Y29uc3QgRnJhbWUqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgc3RhdGljIHZvaWQg
aW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYsIEZ1bmN0aW9uPHZvaWQoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0Jik+JiYpOwotICAgIHN0YXRpYyB2b2lkIGludGVyY2VwdFJlc3BvbnNlKGNv
bnN0IEZyYW1lKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVm
UHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICBzdGF0aWMgdm9pZCBpbnRlcmNlcHRSZXNwb25z
ZShjb25zdCBGcmFtZSosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGJvb2wg
c2hvdWxkSW50ZXJjZXB0UmVxdWVzdEludGVybmFsKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0Jik7CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkSW50ZXJjZXB0UmVzcG9uc2VJbnRl
cm5hbChjb25zdCBGcmFtZSYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKICAgICBzdGF0aWMg
dm9pZCBpbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VMb2FkZXImLCBGdW5jdGlvbjx2
b2lkKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpPiYmKTsKLSAgICBzdGF0aWMgdm9pZCBpbnRlcmNl
cHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsKKyAgICBzdGF0aWMg
dm9pZCBpbnRlcmNlcHRSZXNwb25zZUludGVybmFsKGNvbnN0IEZyYW1lJiwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmKTsK
IH07CiAKIGlubGluZSBib29sIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6c2hvdWxk
SW50ZXJjZXB0UmVxdWVzdChjb25zdCBGcmFtZSogZnJhbWUsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCkKQEAgLTc2LDcgKzc2LDcgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBsb2EKICAg
ICBpbnRlcmNlcHRSZXF1ZXN0SW50ZXJuYWwobG9hZGVyLCBXVEZNb3ZlKGhhbmRsZXIpKTsKIH0K
IAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRS
ZXNwb25zZShjb25zdCBGcmFtZSogZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQor
aW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uV2ViS2l0OjppbnRlcmNlcHRSZXNw
b25zZShjb25zdCBGcmFtZSogZnJhbWUsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhh
bmRsZXIpCiB7CiAgICAgQVNTRVJUKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbldlYktpdDo6c2hv
dWxkSW50ZXJjZXB0UmVzcG9uc2UoZnJhbWUsIHJlc3BvbnNlKSk7CiAgICAgaW50ZXJjZXB0UmVz
cG9uc2VJbnRlcm5hbCgqZnJhbWUsIHJlc3BvbnNlLCBpZGVudGlmaWVyLCBXVEZNb3ZlKGhhbmRs
ZXIpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVj
dG9yTmV0d29ya0FnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5z
cGVjdG9yTmV0d29ya0FnZW50LmNwcAppbmRleCA3OTQ4ODUyZGQ5YTZiYzQyYjQwMTE2OTQxY2Uw
MzQ2YzMyZTE2ZjJkLi4zMzc1N2I5ZTNjZTdlMzA0Y2I3MWZiNjRmMzNlMmVlZjA2YWFiM2NiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdv
cmtBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0
b3JOZXR3b3JrQWdlbnQuY3BwCkBAIC0xMDgsNyArMTA4LDcgQEAgcHVibGljOgogCiAgICAgfklu
c3BlY3RvclRocmVhZGFibGVMb2FkZXJDbGllbnQoKSBvdmVycmlkZSA9IGRlZmF1bHQ7CiAKLSAg
ICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZXNwb25zZSkgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
KSBvdmVycmlkZQogICAgIHsKICAgICAgICAgbV9taW1lVHlwZSA9IHJlc3BvbnNlLm1pbWVUeXBl
KCk7CiAgICAgICAgIG1fc3RhdHVzQ29kZSA9IHJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCk7CkBA
IC0xMzUsNyArMTM1LDcgQEAgcHVibGljOgogICAgICAgICBtX3Jlc3BvbnNlVGV4dC5hcHBlbmQo
bV9kZWNvZGVyLT5kZWNvZGUoZGF0YSwgZGF0YUxlbmd0aCkpOwogICAgIH0KIAotICAgIHZvaWQg
ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBvdmVycmlkZQorICAgIHZvaWQgZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlCiAgICAgewogICAg
ICAgICBpZiAobV9kZWNvZGVyKQogICAgICAgICAgICAgbV9yZXNwb25zZVRleHQuYXBwZW5kKG1f
ZGVjb2Rlci0+Zmx1c2goKSk7CkBAIC00MTYsNyArNDE2LDcgQEAgZG91YmxlIEluc3BlY3Rvck5l
dHdvcmtBZ2VudDo6dGltZXN0YW1wKCkKICAgICByZXR1cm4gbV9lbnZpcm9ubWVudC5leGVjdXRp
b25TdG9wd2F0Y2goKS5lbGFwc2VkVGltZSgpLnNlY29uZHMoKTsKIH0KIAotdm9pZCBJbnNwZWN0
b3JOZXR3b3JrQWdlbnQ6OndpbGxTZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFnZUFnZW50OjpS
ZXNvdXJjZVR5cGUgdHlwZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJl
cXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSwgSW5zcGVjdG9yUGFnZUFnZW50OjpSZXNvdXJjZVR5cGUgdHlw
ZSkKIHsKICAgICBpZiAocmVxdWVzdC5oaWRkZW5Gcm9tSW5zcGVjdG9yKCkpIHsKICAgICAgICAg
bV9oaWRkZW5SZXF1ZXN0SWRlbnRpZmllcnMuYWRkKGlkZW50aWZpZXIpOwpAQCAtNDI2LDcgKzQy
Niw3IEBAIHZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvCiAgICAgZG91YmxlIHNlbmRUaW1lc3RhbXAg
PSB0aW1lc3RhbXAoKTsKICAgICBXYWxsVGltZSB3YWxsdGltZSA9IFdhbGxUaW1lOjpub3coKTsK
IAotICAgIGF1dG8gcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRl
bnRpZmllcik7CisgICAgYXV0byByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVl
c3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIGF1dG8gZnJhbWVJZCA9IGZyYW1lSWRl
bnRpZmllcihsb2FkZXIpOwogICAgIGF1dG8gbG9hZGVySWQgPSBsb2FkZXJJZGVudGlmaWVyKGxv
YWRlcik7CiAgICAgU3RyaW5nIHRhcmdldElkID0gcmVxdWVzdC5pbml0aWF0b3JJZGVudGlmaWVy
KCk7CkBAIC00ODYsMjQgKzQ4NiwyNCBAQCBzdGF0aWMgSW5zcGVjdG9yUGFnZUFnZW50OjpSZXNv
dXJjZVR5cGUgcmVzb3VyY2VUeXBlRm9yTG9hZFR5cGUoSW5zcGVjdG9ySW5zdHJ1bQogICAgIHJl
dHVybiBJbnNwZWN0b3JQYWdlQWdlbnQ6Ok90aGVyUmVzb3VyY2U7CiB9CiAKLXZvaWQgSW5zcGVj
dG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNl
KiBjYWNoZWRSZXNvdXJjZSkKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50Ojp3aWxsU2VuZFJl
cXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYgcmVkaXJlY3RSZXNwb25zZSwgY29uc3QgQ2FjaGVkUmVzb3VyY2UqIGNhY2hlZFJlc291cmNl
KQogewogICAgIGlmICghY2FjaGVkUmVzb3VyY2UgJiYgbG9hZGVyKQogICAgICAgICBjYWNoZWRS
ZXNvdXJjZSA9IEluc3BlY3RvclBhZ2VBZ2VudDo6Y2FjaGVkUmVzb3VyY2UobG9hZGVyLT5mcmFt
ZSgpLCByZXF1ZXN0LnVybCgpKTsKICAgICB3aWxsU2VuZFJlcXVlc3QoaWRlbnRpZmllciwgbG9h
ZGVyLCByZXF1ZXN0LCByZWRpcmVjdFJlc3BvbnNlLCByZXNvdXJjZVR5cGVGb3JDYWNoZWRSZXNv
dXJjZShjYWNoZWRSZXNvdXJjZSkpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6
d2lsbFNlbmRSZXF1ZXN0T2ZUeXBlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRM
b2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OkxvYWRUeXBlIGxvYWRUeXBlKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OndpbGxTZW5kUmVxdWVzdE9mVHlwZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OkxvYWRUeXBlIGxvYWRUeXBlKQogewogICAgIHdpbGxTZW5k
UmVxdWVzdChpZGVudGlmaWVyLCBsb2FkZXIsIHJlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UoKSwg
cmVzb3VyY2VUeXBlRm9yTG9hZFR5cGUobG9hZFR5cGUpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JO
ZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNl
LCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCit2b2lkIEluc3BlY3Rvck5ldHdvcmtB
Z2VudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSwgUmVzb3VyY2VMb2FkZXIqIHJlc291cmNlTG9hZGVyKQogewogICAgIGlmIChtX2hpZGRl
blJlcXVlc3RJZGVudGlmaWVycy5jb250YWlucyhpZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6
OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgc3RkOjpvcHRpb25hbDxS
ZXNvdXJjZVJlc3BvbnNlPiByZWFsUmVzcG9uc2U7CiAgICAgaWYgKHBsYXRmb3JtU3RyYXRlZ2ll
cygpLT5sb2FkZXJTdHJhdGVneSgpLT5oYXZlUGVyZm9ybWVkU2VjdXJpdHlDaGVja3MocmVzcG9u
c2UpKSB7CkBAIC01NzUsMTIgKzU3NSwxMiBAQCB2b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbgogICAg
ICAgICBkaWRSZWNlaXZlRGF0YShpZGVudGlmaWVyLCBudWxscHRyLCBjYWNoZWRSZXNvdXJjZS0+
ZW5jb2RlZFNpemUoKSwgMCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRS
ZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEs
IGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERhdGFMZW5ndGgpCit2b2lkIEluc3BlY3Rvck5l
dHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZURhdGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERh
dGFMZW5ndGgpCiB7CiAgICAgaWYgKG1faGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLmNvbnRhaW5z
KGlkZW50aWZpZXIpKQogICAgICAgICByZXR1cm47CiAKLSAgICBTdHJpbmcgcmVxdWVzdElkID0g
SWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllcik7CisgICAgU3RyaW5nIHJl
cXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50
NjQoKSk7CiAKICAgICBpZiAoZGF0YSkgewogICAgICAgICBOZXR3b3JrUmVzb3VyY2VzRGF0YTo6
UmVzb3VyY2VEYXRhIGNvbnN0KiByZXNvdXJjZURhdGEgPSBtX3Jlc291cmNlc0RhdGEtPm1heWJl
QWRkUmVzb3VyY2VEYXRhKHJlcXVlc3RJZCwgZGF0YSwgZGF0YUxlbmd0aCk7CkBAIC01OTUsNyAr
NTk1LDcgQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVEYXRhKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgdWludDgKICAgICBtX2Zyb250ZW5kRGlzcGF0Y2hl
ci0+ZGF0YVJlY2VpdmVkKHJlcXVlc3RJZCwgdGltZXN0YW1wKCksIGRhdGFMZW5ndGgsIGVuY29k
ZWREYXRhTGVuZ3RoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZpbmlz
aExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVy
LCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcywgUmVzb3VyY2VM
b2FkZXIqKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxv
YWRlciopCiB7CiAgICAgaWYgKG1faGlkZGVuUmVxdWVzdElkZW50aWZpZXJzLnJlbW92ZShpZGVu
dGlmaWVyKSkKICAgICAgICAgcmV0dXJuOwpAQCAtNjA2LDcgKzYwNiw3IEBAIHZvaWQgSW5zcGVj
dG9yTmV0d29ya0FnZW50OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgRG9jdW1lbnRMCiAgICAgZWxzZQogICAgICAgICBlbGFwc2VkRmluaXNoVGltZSA9IHRpbWVz
dGFtcCgpOwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVx
dWVzdElkKGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0Zh
Y3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgIGlmIChsb2FkZXIg
JiYgbV9yZXNvdXJjZXNEYXRhLT5yZXNvdXJjZVR5cGUocmVxdWVzdElkKSA9PSBJbnNwZWN0b3JQ
YWdlQWdlbnQ6OkRvY3VtZW50UmVzb3VyY2UpCiAgICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+YWRk
UmVzb3VyY2VTaGFyZWRCdWZmZXIocmVxdWVzdElkLCBsb2FkZXItPmZyYW1lTG9hZGVyKCktPmRv
Y3VtZW50TG9hZGVyKCktPm1haW5SZXNvdXJjZURhdGEoKSwgbG9hZGVyLT5mcmFtZSgpLT5kb2N1
bWVudCgpLT5lbmNvZGluZygpKTsKIApAQCAtNjI4LDEyICs2MjgsMTIgQEAgdm9pZCBJbnNwZWN0
b3JOZXR3b3JrQWdlbnQ6OmRpZEZpbmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudEwKICAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+bG9hZGluZ0ZpbmlzaGVkKHJl
cXVlc3RJZCwgZWxhcHNlZEZpbmlzaFRpbWUsIHNvdXJjZU1hcHBpbmdVUkwsIFdURk1vdmUobWV0
cmljcykpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2VudDo6ZGlkRmFpbExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRGYWls
TG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2Fk
ZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgaWYgKG1faGlk
ZGVuUmVxdWVzdElkZW50aWZpZXJzLnJlbW92ZShpZGVudGlmaWVyKSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElk
KGlkZW50aWZpZXIpOworICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6
OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgaWYgKGxvYWRlciAmJiBt
X3Jlc291cmNlc0RhdGEtPnJlc291cmNlVHlwZShyZXF1ZXN0SWQpID09IEluc3BlY3RvclBhZ2VB
Z2VudDo6RG9jdW1lbnRSZXNvdXJjZSkgewogICAgICAgICBGcmFtZSogZnJhbWUgPSBsb2FkZXIt
PmZyYW1lKCk7CkBAIC02NTMsOCArNjUzLDggQEAgdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6
OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciogbG9hZGUKICAg
ICBpZiAoIWxvYWRlcikKICAgICAgICAgcmV0dXJuOwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyID0gbG9hZGVyLT5mcmFtZSgpLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVl
SWRlbnRpZmllcigpOwotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlmaWVyc0ZhY3Rvcnk6
OnJlcXVlc3RJZChpZGVudGlmaWVyKTsKKyAgICBhdXRvIGlkZW50aWZpZXIgPSBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50
aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgUHJv
dG9jb2w6Ok5ldHdvcms6OkxvYWRlcklkIGxvYWRlcklkID0gbG9hZGVySWRlbnRpZmllcihsb2Fk
ZXIpOwogICAgIFByb3RvY29sOjpOZXR3b3JrOjpGcmFtZUlkIGZyYW1lSWQgPSBmcmFtZUlkZW50
aWZpZXIobG9hZGVyKTsKIApAQCAtNjY5LDIzICs2NjksMjMgQEAgdm9pZCBJbnNwZWN0b3JOZXR3
b3JrQWdlbnQ6OmRpZExvYWRSZXNvdXJjZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciog
bG9hZGUKICAgICBtX2Zyb250ZW5kRGlzcGF0Y2hlci0+cmVxdWVzdFNlcnZlZEZyb21NZW1vcnlD
YWNoZShyZXF1ZXN0SWQsIGZyYW1lSWQsIGxvYWRlcklkLCBsb2FkZXItPnVybCgpLnN0cmluZygp
LCB0aW1lc3RhbXAoKSwgV1RGTW92ZShpbml0aWF0b3JPYmplY3QpLCBidWlsZE9iamVjdEZvckNh
Y2hlZFJlc291cmNlKCZyZXNvdXJjZSkpOwogfQogCi12b2lkIEluc3BlY3Rvck5ldHdvcmtBZ2Vu
dDo6c2V0SW5pdGlhbFNjcmlwdENvbnRlbnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25z
dCBTdHJpbmcmIHNvdXJjZVN0cmluZykKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpzZXRJ
bml0aWFsU2NyaXB0Q29udGVudChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcpCiB7Ci0gICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRS
ZXNvdXJjZUNvbnRlbnQoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllciks
IHNvdXJjZVN0cmluZyk7CisgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZUNvbnRlbnQo
SWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwgc291
cmNlU3RyaW5nKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVT
Y3JpcHRSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIEluc3BlY3Rvck5l
dHdvcmtBZ2VudDo6ZGlkUmVjZWl2ZVNjcmlwdFJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewotICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBl
KElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBJbnNwZWN0b3JQYWdl
QWdlbnQ6OlNjcmlwdFJlc291cmNlKTsKKyAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJlc291cmNl
VHlwZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUludDY0KCkp
LCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlNjcmlwdFJlc291cmNlKTsKIH0KIAotdm9pZCBJbnNwZWN0
b3JOZXR3b3JrQWdlbnQ6OmRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcikKK3ZvaWQgSW5zcGVjdG9yTmV0d29ya0FnZW50OjpkaWRSZWNlaXZlVGhy
ZWFkYWJsZUxvYWRlclJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcikKIHsK
ICAgICBTdHJpbmcgaW5pdGlhdG9yID0gZG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLm9wdGlvbnMo
KS5pbml0aWF0b3I7CiAgICAgaWYgKGluaXRpYXRvciA9PSBjYWNoZWRSZXNvdXJjZVJlcXVlc3RJ
bml0aWF0b3JzKCkuZmV0Y2gpCi0gICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VU
eXBlKElkZW50aWZpZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBJbnNwZWN0b3JQ
YWdlQWdlbnQ6OkZldGNoUmVzb3VyY2UpOworICAgICAgICBtX3Jlc291cmNlc0RhdGEtPnNldFJl
c291cmNlVHlwZShJZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyLnRvVUlu
dDY0KCkpLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OkZldGNoUmVzb3VyY2UpOwogICAgIGVsc2UgaWYg
KGluaXRpYXRvciA9PSBjYWNoZWRSZXNvdXJjZVJlcXVlc3RJbml0aWF0b3JzKCkueG1saHR0cHJl
cXVlc3QpCi0gICAgICAgIG1fcmVzb3VyY2VzRGF0YS0+c2V0UmVzb3VyY2VUeXBlKElkZW50aWZp
ZXJzRmFjdG9yeTo6cmVxdWVzdElkKGlkZW50aWZpZXIpLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlhI
UlJlc291cmNlKTsKKyAgICAgICAgbV9yZXNvdXJjZXNEYXRhLT5zZXRSZXNvdXJjZVR5cGUoSWRl
bnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllci50b1VJbnQ2NCgpKSwgSW5zcGVj
dG9yUGFnZUFnZW50OjpYSFJSZXNvdXJjZSk7CiB9CiAKIHZvaWQgSW5zcGVjdG9yTmV0d29ya0Fn
ZW50Ojp3aWxsTG9hZFhIUlN5bmNocm9ub3VzbHkoKQpAQCAtMTEyOSw3ICsxMTI5LDcgQEAgdm9p
ZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmludGVyY2VwdFJlcXVlc3QoUmVzb3VyY2VMb2FkZXIm
IGxvYWRlciwgRnVuY3Rpb248dm8KICAgICBBU1NFUlQobV9lbmFibGVkKTsKICAgICBBU1NFUlQo
bV9pbnRlcmNlcHRpb25FbmFibGVkKTsKIAotICAgIFN0cmluZyByZXF1ZXN0SWQgPSBJZGVudGlm
aWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChsb2FkZXIuaWRlbnRpZmllcigpKTsKKyAgICBTdHJpbmcg
cmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQobG9hZGVyLmlkZW50aWZp
ZXIoKS50b1VJbnQ2NCgpKTsKICAgICBpZiAobV9wZW5kaW5nSW50ZXJjZXB0UmVxdWVzdHMuY29u
dGFpbnMocmVxdWVzdElkKSkgewogICAgICAgICBoYW5kbGVyKGxvYWRlci5yZXF1ZXN0KCkpOwog
ICAgICAgICByZXR1cm47CkBAIC0xMTM4LDEyICsxMTM4LDEyIEBAIHZvaWQgSW5zcGVjdG9yTmV0
d29ya0FnZW50OjppbnRlcmNlcHRSZXF1ZXN0KFJlc291cmNlTG9hZGVyJiBsb2FkZXIsIEZ1bmN0
aW9uPHZvCiAgICAgbV9mcm9udGVuZERpc3BhdGNoZXItPnJlcXVlc3RJbnRlcmNlcHRlZChyZXF1
ZXN0SWQsIGJ1aWxkT2JqZWN0Rm9yUmVzb3VyY2VSZXF1ZXN0KGxvYWRlci5yZXF1ZXN0KCkpKTsK
IH0KIAotdm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmludGVyY2VwdFJlc3BvbnNlKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFy
ZWRCdWZmZXI+KT4mJiBoYW5kbGVyKQordm9pZCBJbnNwZWN0b3JOZXR3b3JrQWdlbnQ6OmludGVy
Y2VwdFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiwgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4pPiYmIGhhbmRsZXIpCiB7CiAg
ICAgQVNTRVJUKG1fZW5hYmxlZCk7CiAgICAgQVNTRVJUKG1faW50ZXJjZXB0aW9uRW5hYmxlZCk7
CiAKLSAgICBTdHJpbmcgcmVxdWVzdElkID0gSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQo
aWRlbnRpZmllcik7CisgICAgU3RyaW5nIHJlcXVlc3RJZCA9IElkZW50aWZpZXJzRmFjdG9yeTo6
cmVxdWVzdElkKGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgaWYgKG1fcGVuZGluZ0ludGVy
Y2VwdFJlc3BvbnNlcy5jb250YWlucyhyZXF1ZXN0SWQpKSB7CiAgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgICAgICBoYW5kbGVyKHJlc3BvbnNlLCBudWxscHRyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3Rvck5ldHdvcmtBZ2Vu
dC5oCmluZGV4IDdjZGM1ODY1ZTU4ZTlhOWEzMGVhMjUyMDI2OTJkNGI5YWE3N2IyZDYuLjRjMjVi
M2IyYWNmMDkwMmU4YmI5Njc2NGQwYmY5YmFkMzc4OWIxOGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9yTmV0d29ya0FnZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JOZXR3b3JrQWdlbnQuaApAQCAt
OTgsMTcgKzk4LDE3IEBAIHB1YmxpYzoKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24K
ICAgICB2b2lkIHdpbGxSZWNhbGN1bGF0ZVN0eWxlKCk7CiAgICAgdm9pZCBkaWRSZWNhbGN1bGF0
ZVN0eWxlKCk7Ci0gICAgdm9pZCB3aWxsU2VuZFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBEb2N1bWVudExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7Ci0gICAgdm9p
ZCB3aWxsU2VuZFJlcXVlc3RPZlR5cGUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6TG9h
ZFR5cGUpOwotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VM
b2FkZXIqKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxl
bmd0aCk7Ci0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmLCBSZXNvdXJjZUxv
YWRlciopOwotICAgIHZvaWQgZGlkRmFpbExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHdpbGxT
ZW5kUmVxdWVzdChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSwg
Y29uc3QgQ2FjaGVkUmVzb3VyY2UqKTsKKyAgICB2b2lkIHdpbGxTZW5kUmVxdWVzdE9mVHlwZShS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VSZXF1ZXN0
JiwgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpMb2FkVHlwZSk7CisgICAgdm9pZCBkaWRSZWNl
aXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgZGlkUmVj
ZWl2ZURhdGEoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoKTsKKyAgICB2b2lkIGRpZEZpbmlz
aExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0
IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBkaWRGYWls
TG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3Qg
UmVzb3VyY2VFcnJvciYpOwogICAgIHZvaWQgZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hl
KERvY3VtZW50TG9hZGVyKiwgQ2FjaGVkUmVzb3VyY2UmKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVU
aHJlYWRhYmxlTG9hZGVyUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXImKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVUaHJlYWRhYmxlTG9hZGVy
UmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudFRocmVhZGFibGVMb2Fk
ZXImKTsKICAgICB2b2lkIHdpbGxMb2FkWEhSU3luY2hyb25vdXNseSgpOwogICAgIHZvaWQgZGlk
TG9hZFhIUlN5bmNocm9ub3VzbHkoKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVTY3JpcHRSZXNwb25z
ZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgZGlkUmVjZWl2ZVNjcmlwdFJl
c3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAgICAgdm9pZCB3aWxsRGVzdHJveUNh
Y2hlZFJlc291cmNlKENhY2hlZFJlc291cmNlJik7CiAgICAgdm9pZCBkaWRDcmVhdGVXZWJTb2Nr
ZXQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBVUkwmIHJlcXVlc3RVUkwpOwogICAg
IHZvaWQgd2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CkBAIC0xMTgsMTIgKzExOCwxMiBAQCBw
dWJsaWM6CiAgICAgdm9pZCBkaWRTZW5kV2ViU29ja2V0RnJhbWUodW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCBXZWJTb2NrZXRGcmFtZSYpOwogICAgIHZvaWQgZGlkUmVjZWl2ZVdlYlNv
Y2tldEZyYW1lRXJyb3IodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmKTsK
ICAgICB2b2lkIG1haW5GcmFtZU5hdmlnYXRlZChEb2N1bWVudExvYWRlciYpOwotICAgIHZvaWQg
c2V0SW5pdGlhbFNjcmlwdENvbnRlbnQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBT
dHJpbmcmIHNvdXJjZVN0cmluZyk7CisgICAgdm9pZCBzZXRJbml0aWFsU2NyaXB0Q29udGVudChS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nKTsKICAg
ICB2b2lkIGRpZFNjaGVkdWxlU3R5bGVSZWNhbGN1bGF0aW9uKERvY3VtZW50Jik7CiAgICAgYm9v
bCB3aWxsSW50ZXJjZXB0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOwogICAgIGJvb2wgc2hvdWxk
SW50ZXJjZXB0UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBib29sIHNob3Vs
ZEludGVyY2VwdFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGlu
dGVyY2VwdFJlc3BvbnNlKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYs
IFJlZlB0cjxTaGFyZWRCdWZmZXI+KT4mJik7CisgICAgdm9pZCBpbnRlcmNlcHRSZXNwb25zZShj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBSZWZQdHI8U2hhcmVkQnVm
ZmVyPik+JiYpOwogICAgIHZvaWQgaW50ZXJjZXB0UmVxdWVzdChSZXNvdXJjZUxvYWRlciYsIEZ1
bmN0aW9uPHZvaWQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik+JiYpOwogCiAgICAgdm9pZCBzZWFy
Y2hPdGhlclJlcXVlc3RzKGNvbnN0IEpTQzo6WWFycjo6UmVndWxhckV4cHJlc3Npb24mLCBSZWY8
SlNPTjo6QXJyYXlPZjxJbnNwZWN0b3I6OlByb3RvY29sOjpQYWdlOjpTZWFyY2hSZXN1bHQ+PiYp
OwpAQCAtMTQwLDcgKzE0MCw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxk
Rm9yY2VCdWZmZXJpbmdOZXR3b3JrUmVzb3VyY2VEYXRhKCkgY29uc3QgPSAwOwogCiBwcml2YXRl
OgotICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9j
dW1lbnRMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZWRpcmVjdFJlc3BvbnNlLCBJbnNwZWN0b3JQYWdlQWdlbnQ6OlJlc291cmNlVHlwZSk7CisgICAg
dm9pZCB3aWxsU2VuZFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0
UmVzcG9uc2UsIEluc3BlY3RvclBhZ2VBZ2VudDo6UmVzb3VyY2VUeXBlKTsKIAogICAgIGJvb2wg
c2hvdWxkSW50ZXJjZXB0KFVSTCwgSW5zcGVjdG9yOjpQcm90b2NvbDo6TmV0d29yazo6TmV0d29y
a1N0YWdlKTsKICAgICB2b2lkIGNvbnRpbnVlUGVuZGluZ1JlcXVlc3RzKCk7CkBAIC0yMjYsNyAr
MjI2LDcgQEAgcHJpdmF0ZToKICAgICBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1Jlc291cmNlc0Rh
dGE+IG1fcmVzb3VyY2VzRGF0YTsKIAogICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IG1fZXh0
cmFSZXF1ZXN0SGVhZGVyczsKLSAgICBIYXNoU2V0PHVuc2lnbmVkIGxvbmc+IG1faGlkZGVuUmVx
dWVzdElkZW50aWZpZXJzOworICAgIEhhc2hTZXQ8UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBt
X2hpZGRlblJlcXVlc3RJZGVudGlmaWVyczsKIAogICAgIHN0cnVjdCBJbnRlcmNlcHQgewogICAg
ICAgICBTdHJpbmcgdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Fn
ZW50cy9XZWJDb25zb2xlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50
cy9XZWJDb25zb2xlQWdlbnQuY3BwCmluZGV4IDQ4YjlhNzE4NTNmNDQ5NGZiZjQ3ZTM4MzhhODYz
NjQ3OWU2N2RlYjMuLmJkZmY4NDM0ZGJlZjhjNTQ4NWIxNTA2ZWQyMDhhMDFjOWVjYWQyMjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29sZUFnZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2Vu
dC5jcHAKQEAgLTY1LDIyICs2NSwyMiBAQCB2b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZnJhbWVXaW5k
b3dEaXNjYXJkZWQoRE9NV2luZG93KiB3aW5kb3cpCiAgICAgc3RhdGljX2Nhc3Q8V2ViSW5qZWN0
ZWRTY3JpcHRNYW5hZ2VyJj4obV9pbmplY3RlZFNjcmlwdE1hbmFnZXIpLmRpc2NhcmRJbmplY3Rl
ZFNjcmlwdHNGb3Iod2luZG93KTsKIH0KIAotdm9pZCBXZWJDb25zb2xlQWdlbnQ6OmRpZFJlY2Vp
dmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIHJlcXVlc3RJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKK3ZvaWQgV2ViQ29uc29sZUFnZW50OjpkaWRSZWNlaXZlUmVz
cG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBpZiAocmVzcG9uc2UuaHR0cFN0YXR1
c0NvZGUoKSA+PSA0MDApIHsKICAgICAgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0cmluZygiRmFp
bGVkIHRvIGxvYWQgcmVzb3VyY2U6IHRoZSBzZXJ2ZXIgcmVzcG9uZGVkIHdpdGggYSBzdGF0dXMg
b2YgIiwgcmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSwgIiAoIiwgU2NyaXB0QXJndW1lbnRzOjp0
cnVuY2F0ZVN0cmluZ0ZvckNvbnNvbGVNZXNzYWdlKHJlc3BvbnNlLmh0dHBTdGF0dXNUZXh0KCkp
LCAnKScpOwotICAgICAgICBhZGRNZXNzYWdlVG9Db25zb2xlKG1ha2VVbmlxdWU8Q29uc29sZU1l
c3NhZ2U+KE1lc3NhZ2VTb3VyY2U6Ok5ldHdvcmssIE1lc3NhZ2VUeXBlOjpMb2csIE1lc3NhZ2VM
ZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIHJlc3BvbnNlLnVybCgpLnN0cmluZygpLCAwLCAwLCBudWxs
cHRyLCByZXF1ZXN0SWRlbnRpZmllcikpOworICAgICAgICBhZGRNZXNzYWdlVG9Db25zb2xlKG1h
a2VVbmlxdWU8Q29uc29sZU1lc3NhZ2U+KE1lc3NhZ2VTb3VyY2U6Ok5ldHdvcmssIE1lc3NhZ2VU
eXBlOjpMb2csIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIHJlc3BvbnNlLnVybCgpLnN0
cmluZygpLCAwLCAwLCBudWxscHRyLCByZXF1ZXN0SWRlbnRpZmllci50b1VJbnQ2NCgpKSk7CiAg
ICAgfQogfQogCi12b2lkIFdlYkNvbnNvbGVBZ2VudDo6ZGlkRmFpbExvYWRpbmcodW5zaWduZWQg
bG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lk
IFdlYkNvbnNvbGVBZ2VudDo6ZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHJlcXVlc3RJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICAv
LyBSZXBvcnQgZmFpbHVyZXMgb25seS4KICAgICBpZiAoZXJyb3IuaXNDYW5jZWxsYXRpb24oKSkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0cmluZygiRmFpbGVk
IHRvIGxvYWQgcmVzb3VyY2UiLCBlcnJvci5sb2NhbGl6ZWREZXNjcmlwdGlvbigpLmlzRW1wdHko
KSA/ICIiIDogIjogIiwgZXJyb3IubG9jYWxpemVkRGVzY3JpcHRpb24oKSk7Ci0gICAgYWRkTWVz
c2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNzYWdlPihNZXNzYWdlU291cmNlOjpO
ZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBtZXNzYWdlLCBl
cnJvci5mYWlsaW5nVVJMKCkuc3RyaW5nKCksIDAsIDAsIG51bGxwdHIsIHJlcXVlc3RJZGVudGlm
aWVyKSk7CisgICAgYWRkTWVzc2FnZVRvQ29uc29sZShtYWtlVW5pcXVlPENvbnNvbGVNZXNzYWdl
PihNZXNzYWdlU291cmNlOjpOZXR3b3JrLCBNZXNzYWdlVHlwZTo6TG9nLCBNZXNzYWdlTGV2ZWw6
OkVycm9yLCBtZXNzYWdlLCBlcnJvci5mYWlsaW5nVVJMKCkuc3RyaW5nKCksIDAsIDAsIG51bGxw
dHIsIHJlcXVlc3RJZGVudGlmaWVyLnRvVUludDY0KCkpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJD
b25zb2xlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvV2ViQ29uc29s
ZUFnZW50LmgKaW5kZXggMGI4ZjIwZWFjMzQzYjY2ODE3YWM5ZjBmMGM2YzhjYjIwYzliYWM3Yi4u
OTBjNzA4ZTliODAxNzEyYjY1OTQwN2FlMGMxZDY2ODY4YWVhOTRhOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9XZWJDb25zb2xlQWdlbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL1dlYkNvbnNvbGVBZ2VudC5oCkBAIC0yNiw2ICsy
Niw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkluc3BlY3RvcldlYkFnZW50QmFzZS5o
IgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1ZGUgPEphdmFT
Y3JpcHRDb3JlL0luc3BlY3RvckNvbnNvbGVBZ2VudC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CkBAIC00Myw4ICs0NCw4IEBAIHB1YmxpYzoKIAogICAgIC8vIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbgogICAgIHZvaWQgZnJhbWVXaW5kb3dEaXNjYXJkZWQoRE9NV2luZG93Kik7Ci0gICAgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgZGlkRmFpbExvYWRpbmcodW5zaWduZWQg
bG9uZyByZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQg
ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIHZvaWQgZGlkRmFpbExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGln
aHRDaGVja2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdo
dENoZWNrZXIuY3BwCmluZGV4IDBhZGNhNzBjZmExNjI5OGE3YTZjOWIzZjI4NmZhYTNkYjJjZGJl
OTUuLjhiMzFlMTczOTJhOTdiYjk2ZDM0OTdiOTI4ZWRkYTJlNjdjY2Q2ZDUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3Bw
CkBAIC01OCw3ICs1OCw3IEBAIENyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlcjo6fkNyb3NzT3Jp
Z2luUHJlZmxpZ2h0Q2hlY2tlcigpCiAgICAgICAgIG1fcmVzb3VyY2UtPnJlbW92ZUNsaWVudCgq
dGhpcyk7CiB9CiAKLXZvaWQgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjp2YWxpZGF0ZVBy
ZWZsaWdodFJlc3BvbnNlKERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYgbG9hZGVyLCBSZXNvdXJj
ZVJlcXVlc3QmJiByZXF1ZXN0LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6
OnZhbGlkYXRlUHJlZmxpZ2h0UmVzcG9uc2UoRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyJiBsb2Fk
ZXIsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBhdXRv
KiBmcmFtZSA9IGxvYWRlci5kb2N1bWVudCgpLmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkgewpA
QCAtMTQxLDcgKzE0MSw3IEBAIHZvaWQgQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyOjpkb1By
ZWZsaWdodChEb2N1bWVudFRocmVhZGFibGVMb2FkZXImIGxvYWRlciwKICAgICBSZXNvdXJjZVJl
c3BvbnNlIHJlc3BvbnNlOwogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGE7CiAKLSAgICB1
bnNpZ25lZCBpZGVudGlmaWVyID0gbG9hZGVyLmRvY3VtZW50KCkuZnJhbWUoKS0+bG9hZGVyKCku
bG9hZFJlc291cmNlU3luY2hyb25vdXNseShwcmVmbGlnaHRSZXF1ZXN0LCBDbGllbnRDcmVkZW50
aWFsUG9saWN5OjpDYW5ub3RBc2tDbGllbnRGb3JDcmVkZW50aWFscywgRmV0Y2hPcHRpb25zIHsg
fSwgeyB9LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOworICAgIGF1dG8gaWRlbnRpZmllciA9IGxv
YWRlci5kb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLmxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkocHJlZmxpZ2h0UmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeTo6Q2Fubm90QXNrQ2xp
ZW50Rm9yQ3JlZGVudGlhbHMsIEZldGNoT3B0aW9ucyB7IH0sIHsgfSwgZXJyb3IsIHJlc3BvbnNl
LCBkYXRhKTsKIAogICAgIGlmICghZXJyb3IuaXNOdWxsKCkpIHsKICAgICAgICAgLy8gSWYgdGhl
IHByZWZsaWdodCB3YXMgY2FuY2VsbGVkIGJ5IHVuZGVybHlpbmcgY29kZSwgaXQgcHJvYmFibHkg
bWVhbnMgdGhlIHJlcXVlc3Qgd2FzIGJsb2NrZWQgZHVlIHRvIHNvbWUgYWNjZXNzIGNvbnRyb2wg
cG9saWN5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJl
ZmxpZ2h0Q2hlY2tlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxp
Z2h0Q2hlY2tlci5oCmluZGV4IDJhMDM3Y2M0YjYxZTgxZmJlMmYwM2M3Mzg2YzliOGMzZGFlMDk1
Y2EuLjUzMjk4MGQzNTlkNWRlN2U3M2ViY2E3YmFiMTAxNmZiMmUwNzBhYTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmgKQEAg
LTMyLDYgKzMyLDcgQEAKIAogI2luY2x1ZGUgIkNhY2hlZFJhd1Jlc291cmNlQ2xpZW50LmgiCiAj
aW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VIYW5kbGUuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlcXVlc3QuaCIKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewpAQCAtNTcsNyArNTgsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVkaXJlY3RS
ZWNlaXZlZChDYWNoZWRSZXNvdXJjZSYsIFJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZXNvdXJjZVJlcXVlc3QmJik+JiYp
IGZpbmFsOwogCiAgICAgc3RhdGljIHZvaWQgaGFuZGxlTG9hZGluZ0ZhaWx1cmUoRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyJiwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VFcnJvciYpOwot
ICAgIHN0YXRpYyB2b2lkIHZhbGlkYXRlUHJlZmxpZ2h0UmVzcG9uc2UoRG9jdW1lbnRUaHJlYWRh
YmxlTG9hZGVyJiwgUmVzb3VyY2VSZXF1ZXN0JiYsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmKTsKKyAgICBzdGF0aWMgdm9pZCB2YWxpZGF0ZVByZWZsaWdodFJlc3BvbnNl
KERvY3VtZW50VGhyZWFkYWJsZUxvYWRlciYsIFJlc291cmNlUmVxdWVzdCYmLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKIAogICAgIERvY3VtZW50
VGhyZWFkYWJsZUxvYWRlciYgbV9sb2FkZXI7CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkUmF3UmVzb3VyY2U+IG1fcmVzb3VyY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50
TG9hZGVyLmNwcAppbmRleCAwZDJkMTQxMjIyZGU3NmZkYWJhZDZlMDRkZjcyNDY2NzRmNzBhNjRk
Li5kM2U5Y2VhZDljYjdjODJlMmQ5MDI3MDkxYWJlZTQ4ZDY1YzRlNDlhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTQ2NCw4ICs0NjQsOCBAQCB2b2lkIERv
Y3VtZW50TG9hZGVyOjpmaW5pc2hlZExvYWRpbmcoKQogICAgICAgICAvLyBiZWZvcmUgY2FsbGlu
ZyBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcgc28gdGhhdCB3ZSBkb24ndCBsYXRlciB0cnkgdG8K
ICAgICAgICAgLy8gY2FuY2VsIHRoZSBhbHJlYWR5LWZpbmlzaGVkIHN1YnN0aXR1dGUgbG9hZC4K
ICAgICAgICAgTmV0d29ya0xvYWRNZXRyaWNzIGVtcHR5TWV0cmljczsKLSAgICAgICAgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxv
YWRlcjsKLSAgICAgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9
IDA7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyID0gbV9pZGVu
dGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcjsKKyAgICAgICAgbV9pZGVudGlmaWVy
Rm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IHsgfTsKICAgICAgICAgZnJhbWVMb2FkZXIo
KS0+bm90aWZpZXIoKS5kaXNwYXRjaERpZEZpbmlzaExvYWRpbmcodGhpcywgaWRlbnRpZmllciwg
ZW1wdHlNZXRyaWNzLCBudWxscHRyKTsKICAgICB9CiAKQEAgLTg4Niw3ICs4ODYsNyBAQCBib29s
IERvY3VtZW50TG9hZGVyOjp0cnlMb2FkaW5nU3Vic3RpdHV0ZURhdGEoKQogICAgICAgICByZXR1
cm4gZmFsc2U7CiAKICAgICBET0NVTUVOVExPQURFUl9SRUxFQVNFX0xPRygic3RhcnRMb2FkaW5n
TWFpblJlc291cmNlOiBSZXR1cm5pbmcgc3Vic3RpdHV0ZSBkYXRhIik7Ci0gICAgbV9pZGVudGlm
aWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jl
c3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgbV9pZGVudGlmaWVyRm9yTG9hZFdp
dGhvdXRSZXNvdXJjZUxvYWRlciA9IFJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUo
KTsKICAgICBmcmFtZUxvYWRlcigpLT5ub3RpZmllcigpLmFzc2lnbklkZW50aWZpZXJUb0luaXRp
YWxSZXF1ZXN0KG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIsIHRoaXMs
IG1fcmVxdWVzdCk7CiAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIoKS5kaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdCh0aGlzLCBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
LCBtX3JlcXVlc3QsIFJlc291cmNlUmVzcG9uc2UoKSwgbnVsbHB0cik7CiAKQEAgLTkzOSw3ICs5
MzksNyBAQCBib29sIERvY3VtZW50TG9hZGVyOjp0cnlMb2FkaW5nUmVkaXJlY3RSZXF1ZXN0RnJv
bUFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgUmVzb3VyYwogICAgIHJldHVybiB0cnVlOwogfQogCi12
b2lkIERvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVu
dFNlY3VyaXR5UG9saWN5RGVuaWVkKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIERvY3VtZW50TG9hZGVyOjpzdG9wTG9hZGlu
Z0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVudFNlY3VyaXR5UG9saWN5RGVuaWVkKFJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkKIHsKICAgICBSZWY8RG9jdW1lbnRMb2FkZXI+IHByb3RlY3RlZFRoaXMgeyAqdGhpcyB9
OwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6Y29udGludWVBZnRlclhGcmFtZU9wdGlv
bnNEZW5pZWQoKm1fZnJhbWUsIGlkZW50aWZpZXIsICp0aGlzLCByZXNwb25zZSk7CkBAIC0xMDM3
LDcgKzEwMzcsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBDb21wbGV0aQogICAgIH0KIAogICAgIEFTU0VS
VChtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyIHx8IG1fbWFpblJlc291
cmNlKTsKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBtX2lkZW50aWZpZXJGb3JMb2Fk
V2l0aG91dFJlc291cmNlTG9hZGVyID8gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJj
ZUxvYWRlciA6IG1fbWFpblJlc291cmNlLT5pZGVudGlmaWVyKCk7CisgICAgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIgPSBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291
cmNlTG9hZGVyID8gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA6IG1f
bWFpblJlc291cmNlLT5pZGVudGlmaWVyKCk7CiAgICAgQVNTRVJUKGlkZW50aWZpZXIpOwogCiAg
ICAgaWYgKG1fc3Vic3RpdHV0ZURhdGEuaXNWYWxpZCgpIHx8ICFwbGF0Zm9ybVN0cmF0ZWdpZXMo
KS0+bG9hZGVyU3RyYXRlZ3koKS0+aGF2ZVBlcmZvcm1lZFNlY3VyaXR5Q2hlY2tzKHJlc3BvbnNl
KSkgewpAQCAtMTA1NCw3ICsxMDU0LDcgQEAgdm9pZCBEb2N1bWVudExvYWRlcjo6cmVzcG9uc2VS
ZWNlaXZlZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgQ29tcGxldGkKICAgICAg
ICAgICAgIGlmICghZnJhbWVPcHRpb25zLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICAgICAgaWYg
KGZyYW1lTG9hZGVyKCktPnNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGZyYW1l
T3B0aW9ucywgdXJsLCBpZGVudGlmaWVyKSkgewogICAgICAgICAgICAgICAgICAgICBTdHJpbmcg
bWVzc2FnZSA9ICJSZWZ1c2VkIHRvIGRpc3BsYXkgJyIgKyB1cmwuc3RyaW5nQ2VudGVyRWxsaXBz
aXplZFRvTGVuZ3RoKCkgKyAiJyBpbiBhIGZyYW1lIGJlY2F1c2UgaXQgc2V0ICdYLUZyYW1lLU9w
dGlvbnMnIHRvICciICsgZnJhbWVPcHRpb25zICsgIicuIjsKLSAgICAgICAgICAgICAgICAgICAg
bV9mcmFtZS0+ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2Vj
dXJpdHksIE1lc3NhZ2VMZXZlbDo6RXJyb3IsIG1lc3NhZ2UsIGlkZW50aWZpZXIpOworICAgICAg
ICAgICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNz
YWdlU291cmNlOjpTZWN1cml0eSwgTWVzc2FnZUxldmVsOjpFcnJvciwgbWVzc2FnZSwgaWRlbnRp
Zmllci50b1VJbnQ2NCgpKTsKICAgICAgICAgICAgICAgICAgICAgc3RvcExvYWRpbmdBZnRlclhG
cmFtZU9wdGlvbnNPckNvbnRlbnRTZWN1cml0eVBvbGljeURlbmllZChpZGVudGlmaWVyLCByZXNw
b25zZSk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICB9CkBA
IC0xMTgwLDEwICsxMTgwLDEwIEBAIGJvb2wgRG9jdW1lbnRMb2FkZXI6OmRpc2FsbG93RGF0YVJl
cXVlc3QoKSBjb25zdAogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAoYXV0byogY3Vy
cmVudERvY3VtZW50ID0gZnJhbWUoKS0+ZG9jdW1lbnQoKSkgewotICAgICAgICB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIgPSBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
ID8gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA6IG1fbWFpblJlc291
cmNlLT5pZGVudGlmaWVyKCk7CisgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyID0gbV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA/IG1faWRl
bnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgOiBtX21haW5SZXNvdXJjZS0+aWRl
bnRpZmllcigpOwogICAgICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAKLSAgICAgICAgY3VycmVu
dERvY3VtZW50LT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpTZWN1cml0eSwgTWVz
c2FnZUxldmVsOjpFcnJvciwgbWFrZVN0cmluZygiTm90IGFsbG93ZWQgdG8gbmF2aWdhdGUgdG9w
IGZyYW1lIHRvIGRhdGEgVVJMICciLCBtX3Jlc3BvbnNlLnVybCgpLnN0cmluZ0NlbnRlckVsbGlw
c2l6ZWRUb0xlbmd0aCgpLCAiJy4iKSwgaWRlbnRpZmllcik7CisgICAgICAgIGN1cnJlbnREb2N1
bWVudC0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6U2VjdXJpdHksIE1lc3NhZ2VM
ZXZlbDo6RXJyb3IsIG1ha2VTdHJpbmcoIk5vdCBhbGxvd2VkIHRvIG5hdmlnYXRlIHRvcCBmcmFt
ZSB0byBkYXRhIFVSTCAnIiwgbV9yZXNwb25zZS51cmwoKS5zdHJpbmdDZW50ZXJFbGxpcHNpemVk
VG9MZW5ndGgoKSwgIicuIiksIGlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgfQogICAgIERP
Q1VNRU5UTE9BREVSX1JFTEVBU0VfTE9HKCJjb250aW51ZUFmdGVyQ29udGVudFBvbGljeTogY2Fu
bm90IHNob3cgVVJMIik7CiAKQEAgLTIwMTYsNyArMjAxNiw3IEBAIHZvaWQgRG9jdW1lbnRMb2Fk
ZXI6OnN0b3BMb2FkaW5nU3VicmVzb3VyY2VzKCkKICAgICBBU1NFUlQobV9zdWJyZXNvdXJjZUxv
YWRlcnMuaXNFbXB0eSgpKTsKIH0KIAotdm9pZCBEb2N1bWVudExvYWRlcjo6YWRkU3VicmVzb3Vy
Y2VMb2FkZXIoUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKK3ZvaWQgRG9jdW1lbnRMb2FkZXI6OmFk
ZFN1YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyJiBsb2FkZXIpCiB7CiAgICAgLy8gVGhl
IG1haW4gcmVzb3VyY2UncyB1bmRlcmx5aW5nIFJlc291cmNlTG9hZGVyIHdpbGwgYXNrIHRvIGJl
IGFkZGVkIGhlcmUuCiAgICAgLy8gSXQgaXMgbXVjaCBzaW1wbGVyIHRvIGhhbmRsZSBzcGVjaWFs
IGNhc2luZyBvZiBtYWluIHJlc291cmNlIGxvYWRzIGlmIHdlIGRvbid0CkBAIC0yMDI1LDEyICsy
MDI1LDEyIEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNlTG9hZGVyKFJlc291
cmNlTG9hZGVyKiBsb2FkZXIpCiAgICAgLy8gaWYgd2UgYXJlIGp1c3Qgc3RhcnRpbmcgdGhlIG1h
aW4gcmVzb3VyY2UgbG9hZC4KICAgICBpZiAoIW1fZ290Rmlyc3RCeXRlKQogICAgICAgICByZXR1
cm47Ci0gICAgQVNTRVJUKGxvYWRlci0+aWRlbnRpZmllcigpKTsKLSAgICBBU1NFUlQoIW1fc3Vi
cmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlci0+aWRlbnRpZmllcigpKSk7Ci0gICAgQVNT
RVJUKCFtYWluUmVzb3VyY2VMb2FkZXIoKSB8fCBtYWluUmVzb3VyY2VMb2FkZXIoKSAhPSBsb2Fk
ZXIpOworICAgIEFTU0VSVChsb2FkZXIuaWRlbnRpZmllcigpKTsKKyAgICBBU1NFUlQoIW1fc3Vi
cmVzb3VyY2VMb2FkZXJzLmNvbnRhaW5zKGxvYWRlci5pZGVudGlmaWVyKCkpKTsKKyAgICBBU1NF
UlQoIW1haW5SZXNvdXJjZUxvYWRlcigpIHx8IG1haW5SZXNvdXJjZUxvYWRlcigpICE9ICZsb2Fk
ZXIpOwogCiAgICAgLy8gQXBwbGljYXRpb24gQ2FjaGUgbG9hZGVycyBhcmUgaGFuZGxlZCBieSB0
aGVpciBBcHBsaWNhdGlvbkNhY2hlR3JvdXAgZGlyZWN0bHkuCi0gICAgaWYgKGxvYWRlci0+b3B0
aW9ucygpLmFwcGxpY2F0aW9uQ2FjaGVNb2RlID09IEFwcGxpY2F0aW9uQ2FjaGVNb2RlOjpCeXBh
c3MpCisgICAgaWYgKGxvYWRlci5vcHRpb25zKCkuYXBwbGljYXRpb25DYWNoZU1vZGUgPT0gQXBw
bGljYXRpb25DYWNoZU1vZGU6OkJ5cGFzcykKICAgICAgICAgcmV0dXJuOwogCiAjaWYgQVNTRVJU
X0VOQUJMRUQKQEAgLTIwNDAsNyArMjA0MCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1
YnJlc291cmNlTG9hZGVyKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgY2FzZSBEb2N1bWVudDo6QWJvdXRUb0VudGVyQmFja0ZvcndhcmRDYWNoZTog
ewogICAgICAgICAgICAgLy8gQSBwYWdlIGFib3V0IHRvIGVudGVyIHRoZSBCYWNrRm9yd2FyZENh
Y2hlIHNob3VsZCBvbmx5IGJlIGFibGUgdG8gc3RhcnQgcGluZyBsb2Fkcy4KLSAgICAgICAgICAg
IGF1dG8qIGNhY2hlZFJlc291cmNlID0gZG93bmNhc3Q8U3VicmVzb3VyY2VMb2FkZXI+KGxvYWRl
ciktPmNhY2hlZFJlc291cmNlKCk7CisgICAgICAgICAgICBhdXRvKiBjYWNoZWRSZXNvdXJjZSA9
IGRvd25jYXN0PFN1YnJlc291cmNlTG9hZGVyPihsb2FkZXIpLmNhY2hlZFJlc291cmNlKCk7CiAg
ICAgICAgICAgICBBU1NFUlQoY2FjaGVkUmVzb3VyY2UgJiYgKENhY2hlZFJlc291cmNlOjpzaG91
bGRVc2VQaW5nTG9hZChjYWNoZWRSZXNvdXJjZS0+dHlwZSgpKSB8fCBjYWNoZWRSZXNvdXJjZS0+
b3B0aW9ucygpLmtlZXBBbGl2ZSkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KQEAg
LTIwNTIsNyArMjA1Miw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmFkZFN1YnJlc291cmNlTG9h
ZGVyKFJlc291cmNlTG9hZGVyKiBsb2FkZXIpCiAgICAgfQogI2VuZGlmCiAKLSAgICBtX3N1YnJl
c291cmNlTG9hZGVycy5hZGQobG9hZGVyLT5pZGVudGlmaWVyKCksIGxvYWRlcik7CisgICAgbV9z
dWJyZXNvdXJjZUxvYWRlcnMuYWRkKGxvYWRlci5pZGVudGlmaWVyKCksICZsb2FkZXIpOwogfQog
CiB2b2lkIERvY3VtZW50TG9hZGVyOjpyZW1vdmVTdWJyZXNvdXJjZUxvYWRlcihMb2FkQ29tcGxl
dGlvblR5cGUgdHlwZSwgUmVzb3VyY2VMb2FkZXIqIGxvYWRlcikKQEAgLTIyNzgsNyArMjI3OCw3
IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OmxvYWRNYWluUmVzb3VyY2UoUmVzb3VyY2VSZXF1ZXN0
JiYgcmVxdWVzdCkKICNlbmRpZgogCiAgICAgaWYgKCFtYWluUmVzb3VyY2VMb2FkZXIoKSkgewot
ICAgICAgICBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVyID0gbV9mcmFt
ZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZpZXIoKTsKKyAgICAgICAg
bV9pZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlciA9IFJlc291cmNlTG9hZGVy
SWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIo
KS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChtX2lkZW50aWZpZXJGb3JMb2FkV2l0
aG91dFJlc291cmNlTG9hZGVyLCB0aGlzLCBtYWluUmVzb3VyY2VSZXF1ZXN0LnJlc291cmNlUmVx
dWVzdCgpKTsKICAgICAgICAgZnJhbWVMb2FkZXIoKS0+bm90aWZpZXIoKS5kaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdCh0aGlzLCBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9hZGVy
LCBtYWluUmVzb3VyY2VSZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCBSZXNvdXJjZVJlc3BvbnNl
KCksIG51bGxwdHIpOwogICAgIH0KQEAgLTIzNDQsMTMgKzIzNDQsMTMgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6Y2xlYXJNYWluUmVzb3VyY2UoKQogICAgIHVucmVnaXN0ZXJUZW1wb3JhcnlTZXJ2
aWNlV29ya2VyQ2xpZW50KCk7CiB9CiAKLXZvaWQgRG9jdW1lbnRMb2FkZXI6OnN1YnJlc291cmNl
TG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRlciogbG9hZGVyKQordm9p
ZCBEb2N1bWVudExvYWRlcjo6c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0
KFJlc291cmNlTG9hZGVyJiBsb2FkZXIpCiB7Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
ID0gbG9hZGVyLT5pZGVudGlmaWVyKCk7CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIgPSBsb2FkZXIuaWRlbnRpZmllcigpOwogICAgIEFTU0VSVChpZGVudGlmaWVyKTsK
IAotICAgIGlmICghbV9tdWx0aXBhcnRTdWJyZXNvdXJjZUxvYWRlcnMuYWRkKGlkZW50aWZpZXIs
IGxvYWRlcikuaXNOZXdFbnRyeSkgewotICAgICAgICBBU1NFUlQobV9tdWx0aXBhcnRTdWJyZXNv
dXJjZUxvYWRlcnMuZ2V0KGlkZW50aWZpZXIpID09IGxvYWRlcik7CisgICAgaWYgKCFtX211bHRp
cGFydFN1YnJlc291cmNlTG9hZGVycy5hZGQoaWRlbnRpZmllciwgJmxvYWRlcikuaXNOZXdFbnRy
eSkgeworICAgICAgICBBU1NFUlQobV9tdWx0aXBhcnRTdWJyZXNvdXJjZUxvYWRlcnMuZ2V0KGlk
ZW50aWZpZXIpID09ICZsb2FkZXIpOwogICAgICAgICBBU1NFUlQoIW1fc3VicmVzb3VyY2VMb2Fk
ZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKICAgICB9IGVsc2UgewogICAgICAgICBBU1NFUlQo
bV9zdWJyZXNvdXJjZUxvYWRlcnMuY29udGFpbnMoaWRlbnRpZmllcikpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRMb2FkZXIuaAppbmRleCBhNzMxMzkyNmFjZGE1OTIxOGIwMjE1MTEwYjk3
M2E1M2ZhNGJiMmY5Li44ZWUxNGEyNGQ1N2IzNGNjN2NiZWE0Y2RjNzczMTAyNzI2ZDJlNWQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaApAQCAtNDIsNiArNDIsNyBAQAog
I2luY2x1ZGUgIkxpbmtJY29uLmgiCiAjaW5jbHVkZSAiTmF2aWdhdGlvbkFjdGlvbi5oIgogI2lu
Y2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKICNpbmNsdWRlICJSZXNv
dXJjZVJlcXVlc3QuaCIKICNpbmNsdWRlICJSZXNvdXJjZVJlc3BvbnNlLmgiCkBAIC04OSw3ICs5
MCw3IEBAIGNsYXNzIFN1YnN0aXR1dGVSZXNvdXJjZTsKIAogZW51bSBjbGFzcyBTaG91bGRDb250
aW51ZTsKIAotdXNpbmcgUmVzb3VyY2VMb2FkZXJNYXAgPSBIYXNoTWFwPHVuc2lnbmVkIGxvbmcs
IFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4+OwordXNpbmcgUmVzb3VyY2VMb2FkZXJNYXAgPSBIYXNo
TWFwPFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVmUHRyPFJlc291cmNlTG9hZGVyPj47CiAK
IGVudW0gY2xhc3MgQXV0b3BsYXlQb2xpY3kgOiB1aW50OF90IHsKICAgICBEZWZhdWx0LCAvLyBV
c2VzIHBvbGljaWVzIHNwZWNpZmllZCBpbiBkb2N1bWVudCBzZXR0aW5ncy4KQEAgLTI5NSw3ICsy
OTYsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHN0b3BMb2FkaW5nUGx1Z0lucygpOwogICAgIHZv
aWQgc3RvcExvYWRpbmdTdWJyZXNvdXJjZXMoKTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHN0
b3BMb2FkaW5nQWZ0ZXJYRnJhbWVPcHRpb25zT3JDb250ZW50U2VjdXJpdHlQb2xpY3lEZW5pZWQo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CisgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9wTG9hZGluZ0FmdGVyWEZyYW1lT3B0aW9uc09yQ29udGVu
dFNlY3VyaXR5UG9saWN5RGVuaWVkKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYpOwogCiAgICAgYm9vbCB1c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVk
KCkgY29uc3QgeyByZXR1cm4gbV91c2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkOyB9CiAgICAg
dm9pZCBzZXRVc2VyQ29udGVudEV4dGVuc2lvbnNFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX3Vz
ZXJDb250ZW50RXh0ZW5zaW9uc0VuYWJsZWQgPSBlbmFibGVkOyB9CkBAIC0zMzgsMTIgKzMzOSwx
MiBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgTW91c2VFdmVudFBvbGljeSBtb3VzZUV2
ZW50UG9saWN5KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRNb3VzZUV2ZW50UG9saWN5KE1vdXNlRXZl
bnRQb2xpY3kgcG9saWN5KSB7IG1fbW91c2VFdmVudFBvbGljeSA9IHBvbGljeTsgfQogCi0gICAg
dm9pZCBhZGRTdWJyZXNvdXJjZUxvYWRlcihSZXNvdXJjZUxvYWRlciopOworICAgIHZvaWQgYWRk
U3VicmVzb3VyY2VMb2FkZXIoUmVzb3VyY2VMb2FkZXImKTsKICAgICB2b2lkIHJlbW92ZVN1YnJl
c291cmNlTG9hZGVyKExvYWRDb21wbGV0aW9uVHlwZSwgUmVzb3VyY2VMb2FkZXIqKTsKICAgICB2
b2lkIGFkZFBsdWdJblN0cmVhbUxvYWRlcihSZXNvdXJjZUxvYWRlciYpOwogICAgIHZvaWQgcmVt
b3ZlUGx1Z0luU3RyZWFtTG9hZGVyKFJlc291cmNlTG9hZGVyJik7CiAKLSAgICB2b2lkIHN1YnJl
c291cmNlTG9hZGVyRmluaXNoZWRMb2FkaW5nT25lUGFydChSZXNvdXJjZUxvYWRlciopOworICAg
IHZvaWQgc3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KFJlc291cmNlTG9h
ZGVyJik7CiAKICAgICB2b2lkIHNldERlZmVyTWFpblJlc291cmNlRGF0YUxvYWQoYm9vbCBkZWZl
cikgeyBtX2RlZmVyTWFpblJlc291cmNlRGF0YUxvYWQgPSBkZWZlcjsgfQogICAgIApAQCAtNjEw
LDcgKzYxMSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2xvYWRpbmdNYWluUmVzb3VyY2UgeyBm
YWxzZSB9OwogICAgIERvY3VtZW50TG9hZFRpbWluZyBtX2xvYWRUaW1pbmc7CiAKLSAgICB1bnNp
Z25lZCBsb25nIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07
CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0
UmVzb3VyY2VMb2FkZXI7CiAKICAgICBEYXRhTG9hZFRva2VuIG1fZGF0YUxvYWRUb2tlbjsKICAg
ICBib29sIG1fd2FpdGluZ0ZvckNvbnRlbnRQb2xpY3kgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCA1YTlh
NTdlOTM5MDUyOGZkMzU5OWIwN2RiNjBhYzE1YjAwNjZjOTcwLi4wOGE0MzljOTBlYTU2MmRlNmU5
ODg1YzA3ODEzNGYzZGFhNDhhMGE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcApAQCAtMzk5LDcgKzM5OSw3IEBAIHZvaWQgRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpyZXNwb25zZVJlY2VpdmVkKENhY2hlZFJlc291cmNlJiBy
ZXNvdXJjZSwgY29uc3QKICAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoKTsKIH0KIAotdm9pZCBE
b2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7
CiAgICAgQVNTRVJUKG1fY2xpZW50KTsKICAgICBBU1NFUlQocmVzcG9uc2UudHlwZSgpICE9IFJl
c291cmNlUmVzcG9uc2U6OlR5cGU6OkVycm9yKTsKQEAgLTQzMyw3ICs0MzMsNyBAQCB2b2lkIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGF0YVJlY2VpdmVkKENhY2hlZFJlc291cmNlJiByZXNv
dXJjZSwgY29uc3QgdWludAogICAgIGRpZFJlY2VpdmVEYXRhKG1fcmVzb3VyY2UtPmlkZW50aWZp
ZXIoKSwgZGF0YSwgZGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyOjpkaWRSZWNlaXZlRGF0YSh1bnNpZ25lZCBsb25nLCBjb25zdCB1aW50OF90KiBkYXRhLCBp
bnQgZGF0YUxlbmd0aCkKK3ZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRSZWNlaXZl
RGF0YShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBk
YXRhTGVuZ3RoKQogewogICAgIEFTU0VSVChtX2NsaWVudCk7CiAKQEAgLTQ2OSw3ICs0NjksNyBA
QCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bm90aWZ5RmluaXNoZWQoQ2FjaGVkUmVz
b3VyY2UmIHJlc291cmNlLCBjb25zdCBOZQogICAgICAgICBkaWRGaW5pc2hMb2FkaW5nKG1fcmVz
b3VyY2UtPmlkZW50aWZpZXIoKSk7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
OjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3ZvaWQgRG9jdW1l
bnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChtX2NsaWVudCk7CiAKQEAgLTUwMyw3ICs1
MDMsNyBAQCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyh1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiAgICAgbV9jbGllbnQtPmRpZEZpbmlzaExvYWRpbmco
aWRlbnRpZmllcik7CiB9CiAKLXZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpkaWRGYWls
KHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXI6OmRpZEZhaWwoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25z
dCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBBU1NFUlQobV9jbGllbnQpOwogI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKQEAgLTUzNSw3ICs1MzUsNyBAQCB2b2lkIERvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6cHJlZmxpZ2h0U3VjY2VzcyhSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0
KQogICAgIGxvYWRSZXF1ZXN0KFdURk1vdmUoYWN0dWFsUmVxdWVzdCksIFNlY3VyaXR5Q2hlY2tQ
b2xpY3k6OlNraXBTZWN1cml0eUNoZWNrKTsKIH0KIAotdm9pZCBEb2N1bWVudFRocmVhZGFibGVM
b2FkZXI6OnByZWZsaWdodEZhaWx1cmUodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpwcmVm
bGlnaHRGYWlsdXJlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBtX3ByZWZsaWdodENoZWNrZXIgPSBzdGQ6Om51
bGxvcHQ7CiAKQEAgLTU5OCw3ICs1OTgsNyBAQCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRl
cjo6bG9hZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgU2VjdXJpdHlDaAogICAg
IFJlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGE7CiAgICAgUmVzb3VyY2VFcnJvciBlcnJvcjsKICAg
ICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlOwotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciA9IHN0ZDo6bnVtZXJpY19saW1pdHM8dW5zaWduZWQgbG9uZz46Om1heCgpOworICAgIGF1dG8g
aWRlbnRpZmllciA9IG1ha2VPYmplY3RJZGVudGlmaWVyPFJlc291cmNlTG9hZGVyPihzdGQ6Om51
bWVyaWNfbGltaXRzPHVpbnQ2NF90Pjo6bWF4KCkpOwogICAgIGlmIChhdXRvKiBmcmFtZSA9IG1f
ZG9jdW1lbnQuZnJhbWUoKSkgewogICAgICAgICBpZiAoIU1peGVkQ29udGVudENoZWNrZXI6OmNh
blJ1bkluc2VjdXJlQ29udGVudCgqZnJhbWUsIG1fZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSwg
cmVxdWVzdFVSTCkpCiAgICAgICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmgKaW5kZXggZjFiZjBlZjg0NmJlZmI1YjA1
MzVlODA0ZDUwMzQwMDMyODcxMTgwMC4uODNmYTkwOTFmMTQ3ZTM4ZDc0Y2FhNmQ4MWM1MGFjOTU3
YTIzNDIxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIuaApAQCAtMzMsNiArMzMsNyBAQAogCiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5
UG9saWN5LmgiCiAjaW5jbHVkZSAiQ3Jvc3NPcmlnaW5QcmVmbGlnaHRDaGVja2VyLmgiCisjaW5j
bHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNw
b25zZS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJs
ZUxvYWRlci5oIgpAQCAtOTEsMTUgKzkyLDE1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAg
ICAgdm9pZCBmaW5pc2hlZFRpbWluZ0ZvcldvcmtlckxvYWQoY29uc3QgUmVzb3VyY2VUaW1pbmcm
KTsKICAgICAgICAgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSYsIGNvbnN0IE5l
dHdvcmtMb2FkTWV0cmljcyYpIG92ZXJyaWRlOwogCi0gICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJl
c3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYp
OwotICAgICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgpOwotICAgICAgICB2b2lkIGRpZEZp
bmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKLSAgICAgICAgdm9pZCBkaWRG
YWlsKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOworICAg
ICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKTsKKyAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3Ro
KTsKKyAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmll
cik7CisgICAgICAgIHZvaWQgZGlkRmFpbChSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKICAgICAgICAgdm9pZCBtYWtlQ3Jvc3NPcmlnaW5BY2Nlc3NSZXF1
ZXN0KFJlc291cmNlUmVxdWVzdCYmKTsKICAgICAgICAgdm9pZCBtYWtlU2ltcGxlQ3Jvc3NPcmln
aW5BY2Nlc3NSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYmKTsKICAgICAgICAgdm9pZCBtYWtlQ3Jv
c3NPcmlnaW5BY2Nlc3NSZXF1ZXN0V2l0aFByZWZsaWdodChSZXNvdXJjZVJlcXVlc3QmJik7CiAg
ICAgICAgIHZvaWQgcHJlZmxpZ2h0U3VjY2VzcyhSZXNvdXJjZVJlcXVlc3QmJik7Ci0gICAgICAg
IHZvaWQgcHJlZmxpZ2h0RmFpbHVyZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlRXJyb3ImKTsKKyAgICAgICAgdm9pZCBwcmVmbGlnaHRGYWlsdXJlKFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogCiAgICAgICAgIHZvaWQgbG9h
ZFJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiYsIFNlY3VyaXR5Q2hlY2tQb2xpY3kpOwogICAgICAg
ICBib29sIGlzQWxsb3dlZFJlZGlyZWN0KGNvbnN0IFVSTCYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RW1wdHlDbGllbnRzLmNwcAppbmRleCBkYmNlMTc3MTc2NmIxZmMxOTgyOTg1MzEzNTk0OWFmNTE5
YjJiYmJmLi45YmVkZWM2MzZiMmI0ZmU2MTg0YTQxOWE5YWI2NTMzNDVjMTViZDczIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcApAQCAtNjczLDI2ICs2NzMsMjYgQEAgdm9p
ZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxv
YWQoRG9jdW1lbnRMb2FkZXIqLAogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6
OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcsIERvY3VtZW50
TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNs
aWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpCiB7CiB9CiAK
LWJvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKQorYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xp
ZW50OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllcikKIHsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLXZvaWQgRW1wdHlG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JikKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKQogewogfQogCi12b2lkIEVtcHR5RnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2Um
KQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQogewogfQogCiAjaWYgVVNFKFBST1RF
Q1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKIAotYm9vbCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50
OjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgY29uc3QgUHJvdGVjdGlvblNwYWNlJikKK2Jvb2wgRW1wdHlGcmFtZUxv
YWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVu
dExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUHJvdGVjdGlvblNwYWNl
JikKIHsKICAgICByZXR1cm4gZmFsc2U7CiB9CkBAIC03MDEsMjIgKzcwMSwyMiBAQCBib29sIEVt
cHR5RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3Bh
Y2UoRG9jdW1lbnRMb2FkZQogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAotUmV0YWluUHRy
PENGRGljdGlvbmFyeVJlZj4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlvblByb3Bl
cnRpZXMoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKQorUmV0YWluUHRyPENGRGljdGlv
bmFyeVJlZj4gRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlvblByb3BlcnRpZXMoRG9j
dW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuIG51
bGxwdHI7CiB9CiAKICNlbmRpZgogCi12b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3Bh
dGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikKIHsKIH0KIAotdm9pZCBFbXB0eUZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZywgaW50KQordm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBpbnQpCiB7CiB9CiAKLXZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9u
ZykKK3ZvaWQgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5n
KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKQogewogfQogCkBAIC03
MjgsNyArNzI4LDcgQEAgdm9pZCBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZp
bmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqKQogCiAjZW5kaWYKIAotdm9pZCBFbXB0eUZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5z
aWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VFcnJvciYpCit2b2lkIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKQogewogfQogCkBAIC0xMDY3LDcg
KzEwNjcsNyBAQCBSZW1vdGVBWE9iamVjdFJlZiBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OjphY2Nl
c3NpYmlsaXR5UmVtb3RlT2JqZWN0KCkKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotdm9pZCBF
bXB0eUZyYW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIE5TQ2FjaGVkVVJMUmVzcG9uc2UgKnJlc3BvbnNlLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29tcGxldGlvbkhhbmRsZXIp
IGNvbnN0Cit2b2lkIEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3Bv
bnNlICpyZXNwb25zZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNl
ICopPiYmIGNvbXBsZXRpb25IYW5kbGVyKSBjb25zdAogewogICAgIGNvbXBsZXRpb25IYW5kbGVy
KHJlc3BvbnNlKTsKIH0KQEAgLTEwNzYsNyArMTA3Niw3IEBAIHZvaWQgRW1wdHlGcmFtZUxvYWRl
ckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
LCBOCiAKICNpZiBVU0UoQ0ZVUkxDT05ORUNUSU9OKQogCi1ib29sIEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciosIHVuc2lnbmVk
IGxvbmcgbG9uZykKK2Jvb2wgRW1wdHlGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkQ2FjaGVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBsb25nIGxvbmcp
CiB7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5
RnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAwMTdlMzdlMTU0Y2UyZmZhNjRjMTgyZjFlNWJlYmUz
N2MwNGFjZTYwLi4wMjk0ZGM0MzQyMDRiNmY5YmZmMjkyNjFhMDc3OWI2OGEwNGZlYmQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlGcmFtZUxvYWRlckNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTUz
LDI1ICs1MywyNSBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBjb252ZXJ0TWFpblJlc291cmNlTG9h
ZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CiAKLSAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJU
b0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JikgZmluYWw7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFn
ZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlz
cGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBSZXNv
dXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7Ci0gICAgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJikgZmluYWw7Cisg
ICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7
CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIFJl
c291cmNlTG9hZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaFdpbGxT
ZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVz
b3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQg
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIq
LCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
JikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAgICBi
b29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKKyAgICBib29s
IGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwog
I2VuZGlmCiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZykgZmluYWw7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblBy
b3BlcnRpZXMoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFs
OwogI2VuZGlmCiAKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwot
ICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIGludCkgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExv
YWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nKSBmaW5hbDsKKyAgICB2b2lkIGRp
c3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNw
YXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBpbnQpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2Fk
aW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICNp
ZiBFTkFCTEUoREFUQV9ERVRFQ1RJT04pCiAgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaERhdGFE
ZXRlY3Rpb24oTlNBcnJheSAqKSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRG
YWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNl
RXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImKSBm
aW5hbDsKICAgICBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKERv
Y3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYsIGludCkgZmluYWw7CiAKICAgICB2b2lkIGRpc3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRF
dmVudHMoKSBmaW5hbDsKQEAgLTE4MiwxMSArMTgyLDExIEBAIHByaXZhdGU6CiAKICNpZiBQTEFU
Rk9STShDT0NPQSkKICAgICBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3NpYmlsaXR5UmVtb3RlT2Jq
ZWN0KCkgZmluYWw7Ci0gICAgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcsIE5TQ2FjaGVkVVJMUmVzcG9uc2UgKiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmKSBjb25zdCBmaW5hbDsKKyAgICB2b2lkIHdp
bGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
LCBOU0NhY2hlZFVSTFJlc3BvbnNlICosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRV
UkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CiAjZW5kaWYKIAogI2lmIFVTRShDRlVSTENP
Tk5FQ1RJT04pCi0gICAgYm9vbCBzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNo
YXIqLCB1bnNpZ25lZCBsb25nIGxvbmcpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkQ2FjaGVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIGNvbnN0IHVuc2lnbmVkIGNoYXIqLCB1bnNpZ25lZCBsb25nIGxvbmcp
IGZpbmFsOwogI2VuZGlmCiAKICAgICBSZWY8RnJhbWVOZXR3b3JraW5nQ29udGV4dD4gY3JlYXRl
TmV0d29ya2luZ0NvbnRleHQoKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
Y3BwCmluZGV4IDJhNmUxNjZlYjIyN2U1NjRiODgxZWQzMTg5YjhjMTEyNTExNGQxYTcuLmRlMGJj
MDg5ZWJjNzVmMjNhNjQxYmQzZjcyMTA1MWYzN2JjNWI0YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyLmNwcApAQCAtMTY4OSw3ICsxNjg5LDcgQEAgYm9vbCBGcmFtZUxvYWRlcjo6
d2lsbExvYWRNZWRpYUVsZW1lbnRVUkwoVVJMJiB1cmwsIE5vZGUmIGluaXRpYXRvck5vZGUpCiAg
ICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QodXJsKTsKICAgICByZXF1ZXN0LnNldEluc3BlY3Rv
ckluaXRpYXRvck5vZGVJZGVudGlmaWVyKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6aWRlbnRp
ZmllckZvck5vZGUoaW5pdGlhdG9yTm9kZSkpOwogCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIFJlc291
cmNlRXJyb3IgZXJyb3I7CiAgICAgcmVxdWVzdEZyb21EZWxlZ2F0ZShyZXF1ZXN0LCBpZGVudGlm
aWVyLCBlcnJvcik7CiAgICAgbm90aWZpZXIoKS5zZW5kUmVtYWluaW5nRGVsZWdhdGVNZXNzYWdl
cyhtX2RvY3VtZW50TG9hZGVyLmdldCgpLCBpZGVudGlmaWVyLCByZXF1ZXN0LCBSZXNvdXJjZVJl
c3BvbnNlKHVybCwgU3RyaW5nKCksIC0xLCBTdHJpbmcoKSksIDAsIC0xLCAtMSwgZXJyb3IpOwpA
QCAtMjA2OCw3ICsyMDY4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6Y29tbWl0UHJvdmlzaW9uYWxM
b2FkKCkKICAgICAgICAgLy8gU3RhcnQgcmVxdWVzdCBmb3IgdGhlIG1haW4gcmVzb3VyY2UgYW5k
IGRpc3BhdGNoIGRpZFJlY2VpdmVSZXNwb25zZSBiZWZvcmUgdGhlIGxvYWQgaXMgY29tbWl0dGVk
IGZvcgogICAgICAgICAvLyBjb25zaXN0ZW5jeSB3aXRoIGFsbCBvdGhlciBsb2Fkcy4gU2VlIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTA5MjcuCiAgICAgICAgIFJl
c291cmNlRXJyb3IgbWFpblJlc291Y2VFcnJvcjsKLSAgICAgICAgdW5zaWduZWQgbG9uZyBtYWlu
UmVzb3VyY2VJZGVudGlmaWVyOworICAgICAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbWFp
blJlc291cmNlSWRlbnRpZmllcjsKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IG1haW5SZXNvdXJj
ZVJlcXVlc3QoY2FjaGVkUGFnZS0+ZG9jdW1lbnRMb2FkZXIoKS0+cmVxdWVzdCgpKTsKICAgICAg
ICAgcmVxdWVzdEZyb21EZWxlZ2F0ZShtYWluUmVzb3VyY2VSZXF1ZXN0LCBtYWluUmVzb3VyY2VJ
ZGVudGlmaWVyLCBtYWluUmVzb3VjZUVycm9yKTsKICAgICAgICAgbm90aWZpZXIoKS5kaXNwYXRj
aERpZFJlY2VpdmVSZXNwb25zZShjYWNoZWRQYWdlLT5kb2N1bWVudExvYWRlcigpLCBtYWluUmVz
b3VyY2VJZGVudGlmaWVyLCBjYWNoZWRQYWdlLT5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgp
KTsKQEAgLTIxMzMsNyArMjEzMyw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbW1pdFByb3Zpc2lv
bmFsTG9hZCgpCiAgICAgICAgICAgICBjb25zdCBhdXRvJiByZXNwb25zZSA9IG1fZG9jdW1lbnRM
b2FkZXItPnJlc3BvbnNlcygpW2ldOwogICAgICAgICAgICAgLy8gRklYTUU6IElmIHRoZSBXZWJL
aXQgY2xpZW50IGNoYW5nZXMgb3IgY2FuY2VscyB0aGUgcmVxdWVzdCwgdGhpcyBpcyBub3QgcmVz
cGVjdGVkLgogICAgICAgICAgICAgUmVzb3VyY2VFcnJvciBlcnJvcjsKLSAgICAgICAgICAgIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllcjsKKyAgICAgICAgICAgIFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciBpZGVudGlmaWVyOwogICAgICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QocmVz
cG9uc2UudXJsKCkpOwogICAgICAgICAgICAgcmVxdWVzdEZyb21EZWxlZ2F0ZShyZXF1ZXN0LCBp
ZGVudGlmaWVyLCBlcnJvcik7CiAgICAgICAgICAgICAvLyBGSVhNRTogSWYgd2UgZ2V0IGEgcmVz
b3VyY2Ugd2l0aCBtb3JlIHRoYW4gMkIgYnl0ZXMsIHRoaXMgY29kZSB3b24ndCBkbyB0aGUgcmln
aHQgdGhpbmcuCkBAIC0zMTA2LDcgKzMxMDYsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkUG9z
dFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVmZQog
ICAgIH0pOwogfQogCi11bnNpZ25lZCBsb25nIEZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5j
aHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlv
bnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291cmNl
RXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4mIGRhdGEpCitSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgRnJhbWVMb2FkZXI6OmxvYWRS
ZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDbGll
bnRDcmVkZW50aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0
aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVy
cywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiYgZGF0YSkKIHsKICAgICBBU1NFUlQobV9mcmFtZS5kb2N1bWVudCgp
KTsKICAgICBTdHJpbmcgcmVmZXJyZXIgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZlcnJl
ckhlYWRlcihtX2ZyYW1lLmRvY3VtZW50KCktPnJlZmVycmVyUG9saWN5KCksIHJlcXVlc3QudXJs
KCksIG91dGdvaW5nUmVmZXJyZXIoKSk7CkBAIC0zMTI0LDcgKzMxMjQsNyBAQCB1bnNpZ25lZCBs
b25nIEZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcmVxdQogCiAgICAgYXBwbHlVc2VyQWdlbnRJZk5lZWRlZChpbml0aWFsUmVxdWVz
dCk7CiAKLSAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSAwOyAgICAKKyAgICBSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcjsgICAgCiAgICAgUmVzb3VyY2VSZXF1ZXN0IG5l
d1JlcXVlc3QoaW5pdGlhbFJlcXVlc3QpOwogICAgIHJlcXVlc3RGcm9tRGVsZWdhdGUobmV3UmVx
dWVzdCwgaWRlbnRpZmllciwgZXJyb3IpOwogCkBAIC0zNTg3LDE1ICszNTg3LDEyIEBAIHZvaWQg
RnJhbWVMb2FkZXI6OmNvbnRpbnVlTG9hZEFmdGVyTmV3V2luZG93UG9saWN5KGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzCiAgICAgbWFpbkZyYW1lLT5sb2FkZXIoKS5sb2FkV2l0aE5hdmln
YXRpb25BY3Rpb24ocmVxdWVzdCwgV1RGTW92ZShuZXdBY3Rpb24pLCBGcmFtZUxvYWRUeXBlOjpT
dGFuZGFyZCwgZm9ybVN0YXRlLCBhbGxvd05hdmlnYXRpb25Ub0ludmFsaWRVUkwpOwogfQogCi12
b2lkIEZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgdW5zaWduZWQgbG9uZyYgaWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2
b2lkIEZyYW1lTG9hZGVyOjpyZXF1ZXN0RnJvbURlbGVnYXRlKFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyJiBpZGVudGlmaWVyLCBSZXNvdXJjZUVycm9y
JiBlcnJvcikKIHsKICAgICBBU1NFUlQoIXJlcXVlc3QuaXNOdWxsKCkpOwogCi0gICAgaWRlbnRp
ZmllciA9IDA7Ci0gICAgaWYgKFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLnBhZ2UoKSkgewotICAgICAg
ICBpZGVudGlmaWVyID0gcGFnZS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7
Ci0gICAgICAgIG5vdGlmaWVyKCkuYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoaWRl
bnRpZmllciwgbV9kb2N1bWVudExvYWRlci5nZXQoKSwgcmVxdWVzdCk7Ci0gICAgfQorICAgIGlk
ZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CisgICAgbm90
aWZpZXIoKS5hc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChpZGVudGlmaWVyLCBtX2Rv
Y3VtZW50TG9hZGVyLmdldCgpLCByZXF1ZXN0KTsKIAogICAgIFJlc291cmNlUmVxdWVzdCBuZXdS
ZXF1ZXN0KHJlcXVlc3QpOwogICAgIG5vdGlmaWVyKCkuZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
bV9kb2N1bWVudExvYWRlci5nZXQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVzdCwgUmVzb3VyY2VS
ZXNwb25zZSgpLCBudWxscHRyKTsKQEAgLTM2MzQsNyArMzYzMSw3IEBAIHZvaWQgRnJhbWVMb2Fk
ZXI6OmxvYWRlZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKENhY2hlZFJlc291cmNlJiByZXNvdXJj
ZSwgUmVzb3VyCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXI7CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXI7CiAgICAg
cmVxdWVzdEZyb21EZWxlZ2F0ZShuZXdSZXF1ZXN0LCBpZGVudGlmaWVyLCBlcnJvcik7CiAKICAg
ICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlID0gcmVzb3VyY2UucmVzcG9uc2UoKTsKQEAgLTM2
NTEsNyArMzY0OCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmFwcGx5VXNlckFnZW50SWZOZWVkZWQo
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogICAgIH0KIH0KIAotYm9vbCBGcmFtZUxvYWRlcjo6
c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiBjb250ZW50
LCBjb25zdCBVUkwmIHVybCwgdW5zaWduZWQgbG9uZyByZXF1ZXN0SWRlbnRpZmllcikKK2Jvb2wg
RnJhbWVMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0
cmluZyYgY29udGVudCwgY29uc3QgVVJMJiB1cmwsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBy
ZXF1ZXN0SWRlbnRpZmllcikKIHsKICAgICBGcmFtZSYgdG9wRnJhbWUgPSBtX2ZyYW1lLnRyZWUo
KS50b3AoKTsKICAgICBpZiAoJm1fZnJhbWUgPT0gJnRvcEZyYW1lKQpAQCAtMzY3NSwxMCArMzY3
MiwxMCBAQCBib29sIEZyYW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0
aW9ucyhjb25zdCBTdHJpbmcmIGNvbnRlbnQsIGNvbgogICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rp
c3Bvc2l0aW9uOjpBbGxvd0FsbDoKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGNhc2UgWEZy
YW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpDb25mbGljdDoKLSAgICAgICAgbV9mcmFtZS5kb2N1bWVu
dCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpF
cnJvciwgIk11bHRpcGxlICdYLUZyYW1lLU9wdGlvbnMnIGhlYWRlcnMgd2l0aCBjb25mbGljdGlu
ZyB2YWx1ZXMgKCciICsgY29udGVudCArICInKSBlbmNvdW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIg
KyB1cmwuc3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiJy4gRmFsbGluZyBiYWNr
IHRvICdERU5ZJy4iLCByZXF1ZXN0SWRlbnRpZmllcik7CisgICAgICAgIG1fZnJhbWUuZG9jdW1l
bnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVzc2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6
RXJyb3IsICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3Rp
bmcgdmFsdWVzICgnIiArIGNvbnRlbnQgKyAiJykgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICci
ICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicuIEZhbGxpbmcgYmFj
ayB0byAnREVOWScuIiwgcmVxdWVzdElkZW50aWZpZXIudG9VSW50NjQoKSk7CiAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpJbnZhbGlkOgot
ICAgICAgICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3Vy
Y2U6OkpTLCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiSW52YWxpZCAnWC1GcmFtZS1PcHRpb25zJyBo
ZWFkZXIgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5nICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlw
c2l6ZWRUb0xlbmd0aCgpICsgIic6ICciICsgY29udGVudCArICInIGlzIG5vdCBhIHJlY29nbml6
ZWQgZGlyZWN0aXZlLiBUaGUgaGVhZGVyIHdpbGwgYmUgaWdub3JlZC4iLCByZXF1ZXN0SWRlbnRp
Zmllcik7CisgICAgICAgIG1fZnJhbWUuZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoTWVz
c2FnZVNvdXJjZTo6SlMsIE1lc3NhZ2VMZXZlbDo6RXJyb3IsICJJbnZhbGlkICdYLUZyYW1lLU9w
dGlvbnMnIGhlYWRlciBlbmNvdW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIgKyB1cmwuc3RyaW5nQ2Vu
dGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiJzogJyIgKyBjb250ZW50ICsgIicgaXMgbm90IGEg
cmVjb2duaXplZCBkaXJlY3RpdmUuIFRoZSBoZWFkZXIgd2lsbCBiZSBpZ25vcmVkLiIsIHJlcXVl
c3RJZGVudGlmaWVyLnRvVUludDY0KCkpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgY2Fz
ZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246Ok5vbmU6CiAgICAgICAgIHJldHVybiBmYWxzZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKaW5kZXggZjc1MjQxMGE4OWY1OTI3MDFjODQx
YTQyZDRhYmU0NGFkNzg5MjMxMS4uZTc0NzVhNDI0N2U5OWU2YzRiODc4MWE5NDMyMTc1YmVmYjJm
NGI0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKQEAgLTEyNyw3ICsxMjcsNyBA
QCBwdWJsaWM6CiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKSB8fCBFTkFCTEUoTUhUTUwpCiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBsb2FkQXJjaGl2ZShSZWY8QXJjaGl2ZT4mJik7CiAjZW5kaWYK
LSAgICB1bnNpZ25lZCBsb25nIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiwgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiwg
Y29uc3QgSFRUUEhlYWRlck1hcCYsIFJlc291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4mIGRhdGEpOworICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmll
ciBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENsaWVu
dENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFkZXJN
YXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFJlZlB0cjxTaGFyZWRCdWZm
ZXI+JiBkYXRhKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2hhbmdlTG9jYXRpb24oY29u
c3QgVVJMJiwgY29uc3QgU3RyaW5nJiB0YXJnZXQsIEV2ZW50KiwgY29uc3QgUmVmZXJyZXJQb2xp
Y3kmLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5LCBzdGQ6Om9wdGlvbmFsPE5ld0ZyYW1l
T3BlbmVyUG9saWN5PiA9IHN0ZDo6bnVsbG9wdCwgY29uc3QgQXRvbVN0cmluZyYgZG93bmxvYWRB
dHRyaWJ1dGUgPSBudWxsQXRvbSgpLCBjb25zdCBTeXN0ZW1QcmV2aWV3SW5mbyYgPSB7IH0sIHN0
ZDo6b3B0aW9uYWw8UHJpdmF0ZUNsaWNrTWVhc3VyZW1lbnQ+JiYgPSBzdGQ6Om51bGxvcHQpOwog
ICAgIHZvaWQgY2hhbmdlTG9jYXRpb24oRnJhbWVMb2FkUmVxdWVzdCYmLCBFdmVudCogPSBudWxs
cHRyLCBzdGQ6Om9wdGlvbmFsPFByaXZhdGVDbGlja01lYXN1cmVtZW50PiYmID0gc3RkOjpudWxs
b3B0KTsKQEAgLTI3NSw3ICsyNzUsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5VXNlckFn
ZW50SWZOZWVkZWQoUmVzb3VyY2VSZXF1ZXN0Jik7CiAKLSAgICBib29sIHNob3VsZEludGVycnVw
dExvYWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYsIGNvbnN0IFVSTCYsIHVuc2lnbmVk
IGxvbmcgcmVxdWVzdElkZW50aWZpZXIpOworICAgIGJvb2wgc2hvdWxkSW50ZXJydXB0TG9hZEZv
clhGcmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiwgY29uc3QgVVJMJiwgUmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKTsKIAogICAgIHZvaWQgY29tcGxldGVkKCk7CiAgICAgYm9vbCBhbGxBbmNlc3Rv
cnNBcmVDb21wbGV0ZSgpIGNvbnN0OyAvLyBpbmNsdWRpbmcgdGhpcwpAQCAtMzg2LDcgKzM4Niw3
IEBAIHByaXZhdGU6CiAKICAgICBib29sIHNob3VsZFJlbG9hZChjb25zdCBVUkwmIGN1cnJlbnRV
UkwsIGNvbnN0IFVSTCYgZGVzdGluYXRpb25VUkwpOwogCi0gICAgdm9pZCByZXF1ZXN0RnJvbURl
bGVnYXRlKFJlc291cmNlUmVxdWVzdCYsIHVuc2lnbmVkIGxvbmcmIGlkZW50aWZpZXIsIFJlc291
cmNlRXJyb3ImKTsKKyAgICB2b2lkIHJlcXVlc3RGcm9tRGVsZWdhdGUoUmVzb3VyY2VSZXF1ZXN0
JiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyJiwgUmVzb3VyY2VFcnJvciYpOwogCiAgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCBkZXRhY2hDaGlsZHJlbigpOwogICAgIHZvaWQgY2xvc2VBbmRSZW1v
dmVDaGlsZChGcmFtZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1l
TG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQu
aAppbmRleCAwNGExMmY3YTkzMDE1Y2NmNGVlMDczYWVlMDQwODJjYTgxMjYwN2QwLi40YTcwNmM4
N2Y1OGM4YjA4MjRlOGNlYjM2M2M2MTQ3YzI3Y2RjMzUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkxpbmtJ
Y29uLmgiCiAjaW5jbHVkZSAiUGFnZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZWdpc3RyYWJs
ZURvbWFpbi5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2luY2x1
ZGUgPHd0Zi9FeHBlY3RlZC5oPgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8
d3RmL1dhbGxUaW1lLmg+CkBAIC0xMzgsMjMgKzEzOSwyMyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIGRldGFjaGVkRnJvbVBhcmVudDIoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRldGFj
aGVkRnJvbVBhcmVudDMoKSA9IDA7CiAKLSAgICB2aXJ0dWFsIHZvaWQgYXNzaWduSWRlbnRpZmll
clRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRl
ciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgYXNzaWdu
SWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1
bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpID0gMDsKIAotICAgIHZpcnR1YWwg
dm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVkaXJlY3RSZXNwb25zZSkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VDcmVkZW50
aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgPSAw
OwotICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgQXV0
aGVudGljYXRpb25DaGFsbGVuZ2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoV2ls
bFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNl
KSA9IDA7CisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKERvY3Vt
ZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKERvY3VtZW50TG9h
ZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSYpID0gMDsKICNpZiBVU0UoUFJPVEVDVElPTl9TUEFDRV9BVVRIX0NBTExCQUNLKQotICAg
IHZpcnR1YWwgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlKERvY3Vt
ZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBQcm90ZWN0aW9uU3Bh
Y2UmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0
aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFByb3RlY3Rpb25TcGFjZSYpID0gMDsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKLSAgICB2aXJ0dWFsIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9w
ZXJ0aWVzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSA9IDA7Cisg
ICAgdmlydHVhbCBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGll
cyhEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgPSAwOwogI2VuZGlm
CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1lbnRM
b2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3Ro
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVu
dExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgPSAwOwotICAgIHZpcnR1YWwgdm9p
ZCBkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVy
SWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChEb2N1bWVudExvYWRlciosIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRp
bmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlRXJyb3ImKSA9IDA7CiAgICAgdmlydHVhbCBib29sIGRpc3BhdGNoRGlkTG9hZFJlc291cmNl
RnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jiwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIGludCBsZW5ndGgpID0gMDsKIAogICAgIHZpcnR1YWwg
dm9pZCBkaXNwYXRjaERpZERpc3BhdGNoT25sb2FkRXZlbnRzKCkgPSAwOwpAQCAtMjk4LDEzICsy
OTksMTMgQEAgcHVibGljOgogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIC8vIEFsbG93IGFuIGFj
Y2Vzc2liaWxpdHkgb2JqZWN0IHRvIHJldHJpZXZlIGEgRnJhbWUgcGFyZW50IGlmIHRoZXJlJ3Mg
bm8gUGxhdGZvcm1XaWRnZXQuCiAgICAgdmlydHVhbCBSZW1vdGVBWE9iamVjdFJlZiBhY2Nlc3Np
YmlsaXR5UmVtb3RlT2JqZWN0KCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCB3aWxsQ2FjaGVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgTlNDYWNoZWRV
UkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAq
KT4mJikgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdm9pZCB3aWxsQ2FjaGVSZXNwb25zZShEb2N1
bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25z
ZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29u
c3QgPSAwOwogICAgIHZpcnR1YWwgTlNEaWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgp
IHsgcmV0dXJuIG51bGxwdHI7IH0KICNlbmRpZgogCiAjaWYgVVNFKENGVVJMQ09OTkVDVElPTikK
ICAgICAvLyBGSVhNRTogV2luZG93cyBzaG91bGQgdXNlIHdpbGxDYWNoZVJlc3BvbnNlIC0gPGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzI1Nz4uCi0gICAgdmlydHVh
bCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFy
KiBkYXRhLCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSA9IDA7CisgICAgdmlydHVhbCBib29s
IHNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1bnNpZ25lZCBjaGFyKiBkYXRh
LCB1bnNpZ25lZCBsb25nIGxvbmcgbGVuZ3RoKSA9IDA7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGRBbHdheXNVc2VQbHVnaW5Eb2N1bWVudChjb25zdCBTdHJpbmcmIC8qbWltZVR5
cGUqLykgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVy
U3RyYXRlZ3kuY3BwCmluZGV4IDhiNTU4MWRiNGYyNjU5MzI0YTdiN2VjZWViNzI2NDEzYmZhNDkx
ZTQuLjNiYzEyZWIwZTE3NWNjZjNmNTllNDAwZDllYzhjMDIxY2Y1MjgxZDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcApAQCAtNDEsMTcgKzQxLDE3IEBAIHZvaWQg
TG9hZGVyU3RyYXRlZ3k6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKGNvbnN0IFZlY3RvcjxTdWJy
ZXNvdXJjZUxvYWRlcio+JikKIHsKIH0KIAotUmVzb3VyY2VSZXNwb25zZSBMb2FkZXJTdHJhdGVn
eTo6cmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCAvKiByZXNvdXJj
ZUxvYWRJZGVudGlmaWVyICovKQorUmVzb3VyY2VSZXNwb25zZSBMb2FkZXJTdHJhdGVneTo6cmVz
cG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
CiB7CiAgICAgcmV0dXJuIHsgfTsKIH0KIAotTmV0d29ya0xvYWRNZXRyaWNzIExvYWRlclN0cmF0
ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IC8q
IHJlc291cmNlTG9hZElkZW50aWZpZXIgKi8pCitOZXR3b3JrTG9hZE1ldHJpY3MgTG9hZGVyU3Ry
YXRlZ3k6Om5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKQogewogICAgIHJldHVybiB7IH07CiB9CiAKLVZlY3RvcjxOZXR3b3Jr
VHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gTG9hZGVyU3RyYXRlZ3k6OmludGVybWVkaWF0ZUxvYWRJ
bmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90IC8qIHJlc291cmNl
TG9hZElkZW50aWZpZXIgKi8pCitWZWN0b3I8TmV0d29ya1RyYW5zYWN0aW9uSW5mb3JtYXRpb24+
IExvYWRlclN0cmF0ZWd5OjppbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VM
b2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7CiAgICAgcmV0dXJuIHsg
fTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmgKaW5kZXggYjAxOGFmMDRk
MDVjZTNhYzM4YmI1N2Q4ZTUwYTdiMDYzZWU1MTczMy4uZTJlY2QxYWZjMzViYTZkMzEyMzg4Yzgy
OGVhNGNlMWRkYzIzYWNmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRl
clN0cmF0ZWd5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmgK
QEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJMb2FkU2NoZWR1bGluZ01vZGUuaCIKICNpbmNs
dWRlICJQYWdlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlJlc291cmNlTG9hZFByaW9yaXR5Lmgi
CisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3Vy
Y2VMb2FkZXJPcHRpb25zLmgiCiAjaW5jbHVkZSAiU3RvcmVkQ3JlZGVudGlhbHNQb2xpY3kuaCIK
ICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpAQCAtNTgsNyArNTksNyBAQCBzdHJ1Y3QgRmV0Y2hP
cHRpb25zOwogY2xhc3MgV0VCQ09SRV9FWFBPUlQgTG9hZGVyU3RyYXRlZ3kgewogcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVzb3VyY2UoRnJhbWUmLCBDYWNoZWRSZXNvdXJjZSYsIFJl
c291cmNlUmVxdWVzdCYmLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFJlZlB0cjxTdWJyZXNvdXJjZUxvYWRlcj4mJik+JiYpID0gMDsKLSAgICB2
aXJ0dWFsIHZvaWQgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgQ2xpZW50Q3JlZGVu
dGlhbFBvbGljeSwgY29uc3QgRmV0Y2hPcHRpb25zJiwgY29uc3QgSFRUUEhlYWRlck1hcCYsIFJl
c291cmNlRXJyb3ImLCBSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoRnJhbWVMb2Fk
ZXImLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIENs
aWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0aW9ucyYsIGNvbnN0IEhUVFBIZWFk
ZXJNYXAmLCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90
PiYgZGF0YSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBwYWdlTG9hZENvbXBsZXRlZChQYWdlJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBicm93c2luZ0NvbnRleHRSZW1vdmVkKEZyYW1lJikgPSAw
OwogCkBAIC04OCwxNCArODksMTQgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRQ
ZXJmb3JtU2VjdXJpdHlDaGVja3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1
YWwgYm9vbCBoYXZlUGVyZm9ybWVkU2VjdXJpdHlDaGVja3MoY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICB2aXJ0dWFsIFJlc291cmNlUmVzcG9u
c2UgcmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyKTsKLSAgICB2aXJ0dWFsIFZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZv
cm1hdGlvbj4gaW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9uRnJvbVJlc291cmNlTG9hZElkZW50
aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcik7Ci0gICAgdmlydHVhbCBOZXR3
b3JrTG9hZE1ldHJpY3MgbmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1
aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKKyAgICB2aXJ0dWFsIFJlc291cmNlUmVz
cG9uc2UgcmVzcG9uc2VGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcihSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIpOworICAgIHZpcnR1YWwgVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0
aW9uPiBpbnRlcm1lZGlhdGVMb2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmll
cihSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpOworICAgIHZpcnR1YWwgTmV0d29ya0xvYWRNZXRy
aWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyKTsKIAogICAgIHZpcnR1YWwgdm9pZCBpc1Jlc291cmNlTG9hZEZpbmlzaGVk
KENhY2hlZFJlc291cmNlJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykgPSAwOwogCiAgICAgLy8gVXNlZCBmb3IgdGVzdGluZyBvbmx5LgotICAgIHZpcnR1YWwgVmVj
dG9yPHVpbnQ2NF90PiBvbmdvaW5nTG9hZHMoKSBjb25zdCB7IHJldHVybiB7IH07IH0KKyAgICB2
aXJ0dWFsIFZlY3RvcjxSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG9uZ29pbmdMb2FkcygpIGNv
bnN0IHsgcmV0dXJuIHsgfTsgfQogCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+TG9hZGVyU3Ry
YXRlZ3koKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcAppbmRleCAzZWMzYzUxOGM3
ODhlNWNjMWY1ZjE4OGU4YzcxNTMxZjkxZGIwM2NiLi43OThhNTRiNTBiY2MxNjUyY2NmN2FlNTky
ZTFiYzRjYmQ2MzM5Yzg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xv
YWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwCkBAIC0y
MDAsNyArMjAwLDcgQEAgdm9pZCBQaW5nTG9hZGVyOjpzZW5kVmlvbGF0aW9uUmVwb3J0KEZyYW1l
JiBmcmFtZSwgY29uc3QgVVJMJiByZXBvcnRVUkwsIFJlZjxGb3IKIAogdm9pZCBQaW5nTG9hZGVy
OjpzdGFydFBpbmdMb2FkKEZyYW1lJiBmcmFtZSwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBI
VFRQSGVhZGVyTWFwJiYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVycywgU2hvdWxkRm9sbG93UmVkaXJl
Y3RzIHNob3VsZEZvbGxvd1JlZGlyZWN0cywgQ29udGVudFNlY3VyaXR5UG9saWN5SW1wb3NpdGlv
biBwb2xpY3lDaGVjaywgUmVmZXJyZXJQb2xpY3kgcmVmZXJyZXJQb2xpY3ksIHN0ZDo6b3B0aW9u
YWw8VmlvbGF0aW9uUmVwb3J0VHlwZT4gdmlvbGF0aW9uUmVwb3J0VHlwZSkKIHsKLSAgICB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIgPSBmcmFtZS5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5p
cXVlSWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IFJlc291cmNlTG9hZGVySWRl
bnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICAvLyBGSVhNRTogV2h5IGFjdGl2ZURvY3VtZW50TG9h
ZGVyPyBJIHdvdWxkIGhhdmUgZXhwZWN0ZWQgZG9jdW1lbnRMb2FkZXIoKS4KICAgICAvLyBJdCBz
ZWVtcyBsaWtlIHRoZSBQaW5nTG9hZGVyIHNob3VsZCBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1
cnJlbnQKICAgICAvLyBEb2N1bWVudCBpbiB0aGUgRnJhbWUsIGJ1dCB0aGUgYWN0aXZlRG9jdW1l
bnRMb2FkZXIgd2lsbCBiZSBhc3NvY2lhdGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVz
c1RyYWNrZXIuY3BwCmluZGV4IDBkY2I0NzU1NmQwNDg3NDg3ODY1NmU0NTljOWJhYzlhZjY0ZGNm
YmYuLmEyMTVkNmE5YjQwMjJjOWU3NzU4OGU1ZmIwN2FmZjA0MmNjNDlhMWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuY3BwCkBAIC0xODMsNyArMTgzLDcgQEAgdm9p
ZCBQcm9ncmVzc1RyYWNrZXI6OmZpbmFsUHJvZ3Jlc3NDb21wbGV0ZSgpCiAgICAgSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjpmcmFtZVN0b3BwZWRMb2FkaW5nKCpmcmFtZSk7CiB9CiAKLXZvaWQg
UHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZp
ZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBQcm9ncmVzc1RyYWNr
ZXI6OmluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBMT0coUHJvZ3Jlc3Ms
ICJQcm9ncmVzcyBpbmNyZW1lbnRlZCAoJXApIC0gdmFsdWUgJWYsIHRyYWNrZWQgZnJhbWVzICVk
LCBvcmlnaW5hdGluZyBmcmFtZSAlcCIsIHRoaXMsIG1fcHJvZ3Jlc3NWYWx1ZSwgbV9udW1Qcm9n
cmVzc1RyYWNrZWRGcmFtZXMsIG1fb3JpZ2luYXRpbmdQcm9ncmVzc0ZyYW1lLmdldCgpKTsKIApA
QCAtMjA2LDcgKzIwNiw3IEBAIHZvaWQgUHJvZ3Jlc3NUcmFja2VyOjppbmNyZW1lbnRQcm9ncmVz
cyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlCiAgICAgaXRlbS0+ZXN0
aW1hdGVkTGVuZ3RoID0gZXN0aW1hdGVkTGVuZ3RoOwogfQogCi12b2lkIFByb2dyZXNzVHJhY2tl
cjo6aW5jcmVtZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBi
eXRlc1JlY2VpdmVkKQordm9pZCBQcm9ncmVzc1RyYWNrZXI6OmluY3JlbWVudFByb2dyZXNzKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVk
KQogewogICAgIFByb2dyZXNzSXRlbSogaXRlbSA9IG1fcHJvZ3Jlc3NJdGVtcy5nZXQoaWRlbnRp
Zmllcik7CiAKQEAgLTI2Niw3ICsyNjYsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6aW5jcmVt
ZW50UHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlcwogICAg
IG1fY2xpZW50LT5kaWRDaGFuZ2VFc3RpbWF0ZWRQcm9ncmVzcygpOwogfQogCi12b2lkIFByb2dy
ZXNzVHJhY2tlcjo6Y29tcGxldGVQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2
b2lkIFByb2dyZXNzVHJhY2tlcjo6Y29tcGxldGVQcm9ncmVzcyhSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIGl0ID0gbV9wcm9ncmVzc0l0ZW1zLmZpbmQo
aWRlbnRpZmllcik7CiAKQEAgLTI4NSw2ICsyODUsNyBAQCB2b2lkIFByb2dyZXNzVHJhY2tlcjo6
Y29tcGxldGVQcm9ncmVzcyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCiAKIHVuc2lnbmVkIGxv
bmcgUHJvZ3Jlc3NUcmFja2VyOjpjcmVhdGVVbmlxdWVJZGVudGlmaWVyKCkKIHsKKyAgICAvLyBG
SVhNRTogVXNlIGEgc3Ryb25nbHkgdHlwZWQgaWRlbnRpZmllciBmb3Igd2Vic29ja2V0cyBhbmQg
cmVtb3ZlIHRoaXMuCiAgICAgcmV0dXJuICsrc191bmlxdWVJZGVudGlmaWVyOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUHJvZ3Jlc3NUcmFja2VyLmgKaW5kZXggMzE5YjBjYzgxYjk5NDYxZDhk
NWU4ZjUxOTI1ZjRlYTcwNGMwNWVlZS4uOTNhNjhhOTlkZmE4N2U0YWQ3MTkzYjg4ZWMwODY2MjNl
NmYwMjJhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Byb2dyZXNzVHJhY2tl
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Qcm9ncmVzc1RyYWNrZXIuaApAQCAtMjUs
NiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRl
bnRpZmllci5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
ICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtNTUsOSArNTYsOSBAQCBwdWJsaWM6CiAgICAg
dm9pZCBwcm9ncmVzc1N0YXJ0ZWQoRnJhbWUmKTsKICAgICB2b2lkIHByb2dyZXNzQ29tcGxldGVk
KEZyYW1lJik7CiAKLSAgICB2b2lkIGluY3JlbWVudFByb2dyZXNzKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwotICAgIHZvaWQgaW5jcmVtZW50UHJv
Z3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVkKTsK
LSAgICB2b2lkIGNvbXBsZXRlUHJvZ3Jlc3ModW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGluY3JlbWVudFByb2dyZXNzKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpOworICAgIHZvaWQgaW5jcmVtZW50UHJvZ3Jlc3MoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCB1bnNpZ25lZCBieXRlc1JlY2VpdmVkKTsKKyAgICB2b2lkIGNvbXBs
ZXRlUHJvZ3Jlc3MoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIGxvbmcgbG9uZyB0
b3RhbFBhZ2VBbmRSZXNvdXJjZUJ5dGVzVG9Mb2FkKCkgY29uc3QgeyByZXR1cm4gbV90b3RhbFBh
Z2VBbmRSZXNvdXJjZUJ5dGVzVG9Mb2FkOyB9CiAgICAgbG9uZyBsb25nIHRvdGFsQnl0ZXNSZWNl
aXZlZCgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxCeXRlc1JlY2VpdmVkOyB9CkBAIC03NCw3ICs3
NSw3IEBAIHByaXZhdGU6CiAKICAgICBVbmlxdWVSZWY8UHJvZ3Jlc3NUcmFja2VyQ2xpZW50PiBt
X2NsaWVudDsKICAgICBSZWZQdHI8RnJhbWU+IG1fb3JpZ2luYXRpbmdQcm9ncmVzc0ZyYW1lOwot
ICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgc3RkOjp1bmlxdWVfcHRyPFByb2dyZXNzSXRlbT4+
IG1fcHJvZ3Jlc3NJdGVtczsKKyAgICBIYXNoTWFwPFJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
c3RkOjp1bmlxdWVfcHRyPFByb2dyZXNzSXRlbT4+IG1fcHJvZ3Jlc3NJdGVtczsKICAgICBUaW1l
ciBtX3Byb2dyZXNzSGVhcnRiZWF0VGltZXI7CiAKICAgICBsb25nIGxvbmcgbV90b3RhbFBhZ2VB
bmRSZXNvdXJjZUJ5dGVzVG9Mb2FkIHsgMCB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWROb3RpZmllci5jcHAKaW5kZXggOWI3NmMwNTkwMmYzYzlmMjY0YzAwNzQyOGUz
NmI5OGJlZjc0OTMyZS4uMTQ3YjQ1ZTA2NDM4MTIyN2IwNTIyMDY0NDE4NTIzYzA3OWY2NGQxNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCkBA
IC01Niw3ICs1Niw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpZFJlY2VpdmVBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUxvYWRlciogbG9hCiAgICAgZGlkUmVjZWl2ZUF1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKGxvYWRlci0+aWRlbnRpZmllcigpLCBsb2FkZXItPmRvY3Vt
ZW50TG9hZGVyKCksIGN1cnJlbnRXZWJDaGFsbGVuZ2UpOwogfQogCi12b2lkIFJlc291cmNlTG9h
ZE5vdGlmaWVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSYgY3VycmVudFdlYkNoYWxsZW5nZSkKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZp
ZXI6OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgQXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmIGN1cnJlbnRXZWJDaGFsbGVuZ2UpCiB7CiAgICAgbV9mcmFtZS5sb2Fk
ZXIoKS5jbGllbnQoKS5kaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShs
b2FkZXIsIGlkZW50aWZpZXIsIGN1cnJlbnRXZWJDaGFsbGVuZ2UpOwogfQpAQCAtMTA3LDcgKzEw
Nyw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpZEZhaWxUb0xvYWQoUmVzb3VyY2VM
b2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VFCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjpkaWRGYWlsTG9hZGluZygmbV9mcmFtZSwgbG9hZGVyLT5kb2N1bWVudExvYWRlcigpLCBs
b2FkZXItPmlkZW50aWZpZXIoKSwgZXJyb3IpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlm
aWVyOjphc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCkKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmFzc2lnbklkZW50aWZpZXJUb0luaXRp
YWxSZXF1ZXN0KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExv
YWRlciogbG9hZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgYm9v
bCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyA9IGZhbHNlOwogICAgIGlmIChhdXRvKiBmcmFt
ZUxvYWRlciA9IGxvYWRlciA/IGxvYWRlci0+ZnJhbWVMb2FkZXIoKSA6IG51bGxwdHIpCkBAIC0x
MTksNyArMTE5LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6YXNzaWduSWRlbnRpZmll
clRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICBtX2ZyYW1lLmxvYWRl
cigpLmNsaWVudCgpLmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KGlkZW50aWZpZXIs
IGxvYWRlciwgcmVxdWVzdCk7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3Bh
dGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZWRpcmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3Vy
Y2UpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRp
cmVjdFJlc3BvbnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSogY2FjaGVkUmVzb3VyY2UpCiB7CiAj
aWYgVVNFKFFVSUNLX0xPT0spCiAgICAgLy8gQWx3YXlzIGFsbG93IFF1aWNrTG9vay1nZW5lcmF0
ZWQgVVJMcyBiYXNlZCBvbiB0aGUgcHJvdG9jb2wgc2NoZW1lLgpAQCAtMTUwLDcgKzE1MCw3IEBA
IHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3
aWxsU2VuZFJlcXVlc3QoJm1fZnJhbWUsIGlkZW50aWZpZXIsIGxvYWRlciwgcmVxdWVzdCwgcmVk
aXJlY3RSZXNwb25zZSwgY2FjaGVkUmVzb3VyY2UpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5v
dGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVy
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHIsIFJl
c291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6
OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
LCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgLy8gTm90aWZ5aW5nIHRo
ZSBGcmFtZUxvYWRlckNsaWVudCBtYXkgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlc3Ryb3llZC4K
ICAgICBSZWY8RnJhbWU+IHByb3RlY3QobV9mcmFtZSk7CkBAIC0xNTksNyArMTU5LDcgQEAgdm9p
ZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlUmVzcG9uc2UoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgdW4KICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJl
Y2VpdmVSZXNvdXJjZVJlc3BvbnNlKG1fZnJhbWUsIGlkZW50aWZpZXIsIGxvYWRlciwgciwgcmVz
b3VyY2VMb2FkZXIpOwogfQogCi12b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERp
ZFJlY2VpdmVEYXRhKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0
YUxlbmd0aCkKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZURh
dGEoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2RlZERh
dGFMZW5ndGgpCiB7CiAgICAgLy8gTm90aWZ5aW5nIHRoZSBGcmFtZUxvYWRlckNsaWVudCBtYXkg
Y2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlc3Ryb3llZC4KICAgICBSZWY8RnJhbWU+IHByb3RlY3Qo
bV9mcmFtZSk7CkBAIC0xNjgsNyArMTY4LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWROb3RpZmllcjo6
ZGlzcGF0Y2hEaWRSZWNlaXZlRGF0YShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ24KICAg
ICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVEYXRhKCZtX2ZyYW1lLCBpZGVu
dGlmaWVyLCBkYXRhLCBkYXRhTGVuZ3RoLCBlbmNvZGVkRGF0YUxlbmd0aCk7CiB9CiAKLXZvaWQg
UmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IE5ldHdvcmtMb2Fk
TWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJjZUxvYWRlciogcmVzb3VyY2VMb2Fk
ZXIpCit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmco
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYgbmV0d29ya0xvYWRNZXRyaWNzLCBSZXNvdXJj
ZUxvYWRlciogcmVzb3VyY2VMb2FkZXIpCiB7CiAgICAgLy8gTm90aWZ5aW5nIHRoZSBGcmFtZUxv
YWRlckNsaWVudCBtYXkgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlc3Ryb3llZC4KICAgICBSZWY8
RnJhbWU+IHByb3RlY3QobV9mcmFtZSk7CkBAIC0xNzcsNyArMTc3LDcgQEAgdm9pZCBSZXNvdXJj
ZUxvYWROb3RpZmllcjo6ZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiBs
b2FkZXIsIHVuc2kKICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEZpbmlzaExvYWRp
bmcoJm1fZnJhbWUsIGxvYWRlciwgaWRlbnRpZmllciwgbmV0d29ya0xvYWRNZXRyaWNzLCByZXNv
dXJjZUxvYWRlcik7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlk
RmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgUmVzb3VyY2VMb2FkTm90aWZp
ZXI6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9y
KQogewogICAgIC8vIE5vdGlmeWluZyB0aGUgRnJhbWVMb2FkZXJDbGllbnQgbWF5IGNhdXNlIHRo
ZSBmcmFtZSB0byBiZSBkZXN0cm95ZWQuCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0KG1fZnJhbWUp
OwpAQCAtMTg2LDcgKzE4Niw3IEBAIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNo
RGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRGYWlsTG9hZGluZygmbV9mcmFtZSwgbG9hZGVyLCBpZGVu
dGlmaWVyLCBlcnJvcik7CiB9CiAKLXZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OnNlbmRSZW1h
aW5pbmdEZWxlZ2F0ZU1lc3NhZ2VzKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5n
dGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpzZW5kUmVtYWluaW5nRGVsZWdhdGVNZXNzYWdlcyhE
b2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgY29uc3QgdWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNv
ZGVkRGF0YUxlbmd0aCwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCiB7CiAgICAgLy8gSWYg
dGhlIHJlcXVlc3QgaXMgbnVsbCwgd2lsbFNlbmRSZXF1ZXN0IGNhbmNlbGxlZCB0aGUgbG9hZC4g
V2Ugc2hvdWxkCiAgICAgLy8gb25seSBkaXNwYXRjaCBkaWRGYWlsTG9hZGluZyBpbiB0aGlzIGNh
c2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZp
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oCmluZGV4
IDFjYzQ2MzE5MmQ1MjMyMTVmYzhmZTJmYWJhYzE4ODcyYTI5ZGYxMWIuLjRkYmQ0Y2M0OWQ2NTA0
MjExODRlNjBjMjRkZDcxNGRjYmUwYmRiMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9S
ZXNvdXJjZUxvYWROb3RpZmllci5oCkBAIC0yOSw2ICsyOSw3IEBACiAKICNwcmFnbWEgb25jZQog
CisjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8b3B0aW9u
YWw+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKQEAgLTUwLDcgKzUxLDcgQEAgcHVi
bGljOgogICAgIGV4cGxpY2l0IFJlc291cmNlTG9hZE5vdGlmaWVyKEZyYW1lJik7CiAKICAgICB2
b2lkIGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShSZXNvdXJjZUxvYWRlciosIGNv
bnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7Ci0gICAgdm9pZCBkaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRl
ciosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CisgICAgdm9pZCBkaWRSZWNlaXZl
QXV0aGVudGljYXRpb25DaGFsbGVuZ2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVu
dExvYWRlciosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CiAKICAgICB2b2lkIHdp
bGxTZW5kUmVxdWVzdChSZXNvdXJjZUxvYWRlciosIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpOwogICAgIHZvaWQgZGlkUmVjZWl2ZVJl
c3BvbnNlKFJlc291cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwpAQCAtNTgs
MTggKzU5LDE4IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpZEZpbmlzaExvYWQoUmVzb3VyY2VMb2Fk
ZXIqLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJpY3MmKTsKICAgICB2b2lkIGRpZEZhaWxUb0xvYWQo
UmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKLSAgICB2b2lkIGFzc2ln
bklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICB2b2lkIGRpc3BhdGNo
V2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3Bv
bnNlLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZl
UmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmLCBSZXNvdXJjZUxvYWRlciogPSBudWxscHRyKTsKLSAgICB2b2lk
IGRpc3BhdGNoRGlkUmVjZWl2ZURhdGEoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoLCBpbnQgZW5jb2Rl
ZERhdGFMZW5ndGgpOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBOZXR3b3JrTG9hZE1ldHJp
Y3MmLCBSZXNvdXJjZUxvYWRlciopOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhE
b2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VF
cnJvciYpOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QoUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciosIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYpOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIqLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UsIGNvbnN0IENhY2hlZFJlc291cmNlKik7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYsIFJlc291cmNlTG9hZGVy
KiA9IG51bGxwdHIpOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlRGF0YShEb2N1bWVudExv
YWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgdWludDhfdCogZGF0YSwgaW50
IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCk7CisgICAgdm9pZCBkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIs
IGNvbnN0IE5ldHdvcmtMb2FkTWV0cmljcyYsIFJlc291cmNlTG9hZGVyKik7CisgICAgdm9pZCBk
aXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAKLSAgICB2b2lkIHNlbmRSZW1haW5pbmdE
ZWxlZ2F0ZU1lc3NhZ2VzKERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3Qg
dWludDhfdCogZGF0YSwgaW50IGRhdGFMZW5ndGgsIGludCBlbmNvZGVkRGF0YUxlbmd0aCwgY29u
c3QgUmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgc2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2Fn
ZXMoRG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmLCBjb25zdCB1aW50OF90KiBkYXRh
LCBpbnQgZGF0YUxlbmd0aCwgaW50IGVuY29kZWREYXRhTGVuZ3RoLCBjb25zdCBSZXNvdXJjZUVy
cm9yJik7CiAKIHByaXZhdGU6CiAgICAgRnJhbWUmIG1fZnJhbWU7Ci0gICAgc3RkOjpvcHRpb25h
bDx1bnNpZ25lZCBsb25nPiBtX2luaXRpYWxSZXF1ZXN0SWRlbnRpZmllcjsKKyAgICBzdGQ6Om9w
dGlvbmFsPFJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbV9pbml0aWFsUmVxdWVzdElkZW50aWZp
ZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jl
c291cmNlTG9hZGVyLmNwcAppbmRleCAzMGM2NTQ4NjVlZWZmODkwMjJiODA1OWVhNmY2MDdkM2I5
MDYwNWUzLi4wYTBkNDNlZDU3NTA0Y2Q4MTA1YWM4NmUwZjAzNWY2ODNjZDMyOTI4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTY3LDcgKzY3LDcgQEAKICN1
bmRlZiBSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRwogI2RlZmluZSBQQUdFX0lEICgoZnJhbWUo
KSA/IGZyYW1lKCktPnBhZ2VJRCgpLnZhbHVlX29yKFBhZ2VJZGVudGlmaWVyKCkpIDogUGFnZUlk
ZW50aWZpZXIoKSkudG9VSW50NjQoKSkKICNkZWZpbmUgRlJBTUVfSUQgKChmcmFtZSgpID8gZnJh
bWUoKS0+ZnJhbWVJRCgpLnZhbHVlX29yKEZyYW1lSWRlbnRpZmllcigpKSA6IEZyYW1lSWRlbnRp
ZmllcigpKS50b1VJbnQ2NCgpKQotI2RlZmluZSBSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhm
bXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VJRD0lIiBQUkl1NjQgIiwg
ZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291cmNlSUQ9JWx1XSBSZXNv
dXJjZUxvYWRlcjo6IiBmbXQsIHRoaXMsIFBBR0VfSUQsIEZSQU1FX0lELCBmcmFtZUxvYWRlcigp
LCBpZGVudGlmaWVyKCksICMjX19WQV9BUkdTX18pCisjZGVmaW5lIFJFU09VUkNFTE9BREVSX1JF
TEVBU0VfTE9HKGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhOZXR3b3JrLCAiJXAgLSBbcGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJ
RD0lIiBQUkl1NjQgIl0gUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFN
RV9JRCwgZnJhbWVMb2FkZXIoKSwgaWRlbnRpZmllcigpLnRvVUludDY0KCksICMjX19WQV9BUkdT
X18pCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTE2LDcgKzExNiw3IEBAIHZvaWQgUmVz
b3VyY2VMb2FkZXI6OnJlbGVhc2VSZXNvdXJjZXMoKQogCiAgICAgZmluaXNoTmV0d29ya0xvYWQo
KTsKIAotICAgIG1faWRlbnRpZmllciA9IDA7CisgICAgbV9pZGVudGlmaWVyID0geyB9OwogCiAg
ICAgbV9yZXNvdXJjZURhdGEgPSBudWxscHRyOwogICAgIG1fZGVmZXJyZWRSZXF1ZXN0ID0gUmVz
b3VyY2VSZXF1ZXN0KCk7CkBAIC0zNzMsNyArMzczLDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6
d2lsbFNlbmRSZXF1ZXN0SW50ZXJuYWwoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgY29uc3Qg
UmUKICAgICAvLyBXZSBuZWVkIGEgcmVzb3VyY2UgaWRlbnRpZmllciBmb3IgYWxsIHJlcXVlc3Rz
LCBldmVuIGlmIEZyYW1lTG9hZGVyIGlzIG5ldmVyIGdvaW5nIHRvIHNlZSBpdCAoc3VjaCBhcyB3
aXRoIENPUlMgcHJlZmxpZ2h0IHJlcXVlc3RzKS4KICAgICBib29sIGNyZWF0ZWRSZXNvdXJjZUlk
ZW50aWZpZXIgPSBmYWxzZTsKICAgICBpZiAoIW1faWRlbnRpZmllcikgewotICAgICAgICBtX2lk
ZW50aWZpZXIgPSBtX2ZyYW1lLT5wYWdlKCktPnByb2dyZXNzKCkuY3JlYXRlVW5pcXVlSWRlbnRp
ZmllcigpOworICAgICAgICBtX2lkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI6
OmdlbmVyYXRlKCk7CiAgICAgICAgIGNyZWF0ZWRSZXNvdXJjZUlkZW50aWZpZXIgPSB0cnVlOwog
ICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuaAppbmRleCA3YTRhMGQ3
ZDdmNDY0NTM2YzJjNjg4NWFmODM2OWRmMDY5NzViYjk1Li40ZmQyYmYwYmJiM2IxYmQyMTU0NWRi
NTJjMmUxY2E2NGVlNDJiOTE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
aApAQCAtMzAsNiArMzAsNyBAQAogCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGVDbGllbnQuaCIK
ICNpbmNsdWRlICJSZXNvdXJjZUxvYWRUaW1pbmcuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZXNvdXJjZUxvYWRlck9wdGlvbnMuaCIKICNpbmNs
dWRlICJSZXNvdXJjZUxvYWRlclR5cGVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0Lmgi
CkBAIC05MCw3ICs5MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0RGVmZXJzTG9h
ZGluZyhib29sKTsKICAgICBib29sIGRlZmVyc0xvYWRpbmcoKSBjb25zdCB7IHJldHVybiBtX2Rl
ZmVyc0xvYWRpbmc7IH0KIAotICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsg
cmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAgIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICBib29sIHdhc0F1
dGhlbnRpY2F0aW9uQ2hhbGxlbmdlQmxvY2tlZCgpIGNvbnN0IHsgcmV0dXJuIG1fd2FzQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2VCbG9ja2VkOyB9CiAKQEAgLTIyOCw3ICsyMjksNyBAQCBwcml2YXRl
OgogICAgIFJlc291cmNlUmVxdWVzdCBtX29yaWdpbmFsUmVxdWVzdDsgLy8gQmVmb3JlIHJlZGly
ZWN0cy4KICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX3Jlc291cmNlRGF0YTsKICAgICAKLSAg
ICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllciB7IDAgfTsKKyAgICBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgbV9pZGVudGlmaWVyOwogCiAgICAgYm9vbCBtX3JlYWNoZWRUZXJtaW5hbFN0YXRl
IHsgZmFsc2UgfTsKICAgICBib29sIG1fbm90aWZpZWRMb2FkQ29tcGxldGUgeyBmYWxzZSB9Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmll
ci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjgyN2UxNjA4OWI1ZjY1YzYyYjVkNmQxZmIwZjM0NzYzZTY3ZjYyYjcKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyLmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5j
bHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBSZXNvdXJjZUxvYWRlcjsKKwordXNpbmcgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyID0g
T2JqZWN0SWRlbnRpZmllcjxSZXNvdXJjZUxvYWRlcj47CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDFh
ZDg0MGJjZGY3ZTFmNjdkMjAyOGVlMGNlNzE4ZGMyMWNkYjQwZTEuLjYzYWFkM2NhNzNlZTkwMmVk
YmJjNGUwZTYxY2ZhZjA4NTRmNDA0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJl
c291cmNlTG9hZGVyLmNwcApAQCAtNzUsOCArNzUsOCBAQAogI2RlZmluZSBTVUJSRVNPVVJDRUxP
QURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgVU5VU0VEX1ZBUklBQkxFKHRoaXMpCiAjZGVmaW5l
IFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9HX0VSUk9SKGZtdCwgLi4uKSBVTlVTRURfVkFS
SUFCTEUodGhpcykKICNlbHNlCi0jZGVmaW5lIFNVQlJFU09VUkNFTE9BREVSX1JFTEVBU0VfTE9H
KGZtdCwgLi4uKSBSRUxFQVNFX0xPRyhSZXNvdXJjZUxvYWRpbmcsICIlcCAtIFtwYWdlSUQ9JSIg
UFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIGZyYW1lTG9hZGVyPSVwLCByZXNvdXJjZUlE
PSVsdV0gU3VicmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lELCBGUkFNRV9JRCwg
ZnJhbWVMb2FkZXIoKSwgaWRlbnRpZmllcigpLCAjI19fVkFfQVJHU19fKQotI2RlZmluZSBTVUJS
RVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0dfRVJS
T1IoUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3VyY2VJRD0lbHVdIFN1YnJlc291cmNlTG9h
ZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9JRCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50
aWZpZXIoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgU1VCUkVTT1VSQ0VMT0FERVJfUkVMRUFT
RV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKFJlc291cmNlTG9hZGluZywgIiVwIC0gW3BhZ2VJ
RD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgZnJhbWVMb2FkZXI9JXAsIHJlc291
cmNlSUQ9JSIgUFJJdTY0ICJdIFN1YnJlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgUEFHRV9J
RCwgRlJBTUVfSUQsIGZyYW1lTG9hZGVyKCksIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpLCAjI19f
VkFfQVJHU19fKQorI2RlZmluZSBTVUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPR19FUlJPUihm
bXQsIC4uLikgUkVMRUFTRV9MT0dfRVJST1IoUmVzb3VyY2VMb2FkaW5nLCAiJXAgLSBbcGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUxvYWRlcj0lcCwgcmVzb3Vy
Y2VJRD0lIiBQUkl1NjQgIl0gU3VicmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBQQUdFX0lE
LCBGUkFNRV9JRCwgZnJhbWVMb2FkZXIoKSwgaWRlbnRpZmllcigpLnRvVUludDY0KCksICMjX19W
QV9BUkdTX18pCiAjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTcyLDcgKzE3Miw3
IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmluaXQoUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVz
dCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChiCiAgICAgICAgIH0KICAgICAgICAgQVNTRVJUKCFy
ZWFjaGVkVGVybWluYWxTdGF0ZSgpKTsKICAgICAgICAgbV9zdGF0ZSA9IEluaXRpYWxpemVkOwot
ICAgICAgICBtX2RvY3VtZW50TG9hZGVyLT5hZGRTdWJyZXNvdXJjZUxvYWRlcih0aGlzKTsKKyAg
ICAgICAgbV9kb2N1bWVudExvYWRlci0+YWRkU3VicmVzb3VyY2VMb2FkZXIoKnRoaXMpOwogICAg
ICAgICBtX29yaWdpbiA9IG1fcmVzb3VyY2UtPm9yaWdpbigpOwogICAgICAgICBjb21wbGV0aW9u
SGFuZGxlcih0cnVlKTsKICAgICB9KTsKQEAgLTIxMCw3ICsyMTAsNyBAQCB2b2lkIFN1YnJlc291
cmNlTG9hZGVyOjp3aWxsU2VuZFJlcXVlc3RJbnRlcm5hbChSZXNvdXJjZVJlcXVlc3QmJiBuZXdS
ZXF1ZXN0LCBjbwogICAgICAgICB9CiAKICAgICAgICAgUmVzb3VyY2VMb2FkZXI6OndpbGxTZW5k
UmVxdWVzdEludGVybmFsKFdURk1vdmUobmV3UmVxdWVzdCksIHJlZGlyZWN0UmVzcG9uc2UsIFt0
aGlzLCBwcm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgY29tcGxldGlvbkhh
bmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgcmVkaXJlY3RSZXNwb25zZV0gKFJl
c291cmNlUmVxdWVzdCYmIHJlcXVlc3QpIG11dGFibGUgewotICAgICAgICAgICAgdHJhY2VQb2lu
dChTdWJyZXNvdXJjZUxvYWRXaWxsU3RhcnQsIGlkZW50aWZpZXIoKSwgUEFHRV9JRCwgRlJBTUVf
SUQpOworICAgICAgICAgICAgdHJhY2VQb2ludChTdWJyZXNvdXJjZUxvYWRXaWxsU3RhcnQsIGlk
ZW50aWZpZXIoKS50b1VJbnQ2NCgpLCBQQUdFX0lELCBGUkFNRV9JRCk7CiAKICAgICAgICAgICAg
IGlmIChyZWFjaGVkVGVybWluYWxTdGF0ZSgpKSB7CiAgICAgICAgICAgICAgICAgU1VCUkVTT1VS
Q0VMT0FERVJfUkVMRUFTRV9MT0coIndpbGxTZW5kUmVxdWVzdEludGVybmFsOiByZWFjaGVkIHRl
cm1pbmFsIHN0YXRlOyBjYWxsaW5nIGNvbXBsZXRpb24gaGFuZGxlciIpOwpAQCAtNDkxLDcgKzQ5
MSw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVSZXNwb25zZShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgQ29tCiAgICAgICAgICAgICAvLyBTaW5jZSBhIHN1
YnJlc291cmNlIGxvYWRlciBkb2VzIG5vdCBsb2FkIG11bHRpcGFydCBzZWN0aW9ucyBwcm9ncmVz
c2l2ZWx5LCBkYXRhIHdhcyBkZWxpdmVyZWQgdG8gdGhlIGxvYWRlciBhbGwgYXQgb25jZS4KICAg
ICAgICAgICAgIC8vIEFmdGVyIHRoZSBmaXJzdCBtdWx0aXBhcnQgc2VjdGlvbiBpcyBjb21wbGV0
ZSwgc2lnbmFsIHRvIGRlbGVnYXRlcyB0aGF0IHRoaXMgbG9hZCBpcyAiZmluaXNoZWQiCiAgICAg
ICAgICAgICBOZXR3b3JrTG9hZE1ldHJpY3MgZW1wdHlNZXRyaWNzOwotICAgICAgICAgICAgbV9k
b2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VMb2FkZXJGaW5pc2hlZExvYWRpbmdPbmVQYXJ0KHRo
aXMpOworICAgICAgICAgICAgbV9kb2N1bWVudExvYWRlci0+c3VicmVzb3VyY2VMb2FkZXJGaW5p
c2hlZExvYWRpbmdPbmVQYXJ0KCp0aGlzKTsKICAgICAgICAgICAgIGRpZEZpbmlzaExvYWRpbmdP
bmVQYXJ0KGVtcHR5TWV0cmljcyk7CiAgICAgICAgIH0KIApAQCAtNzQ1LDcgKzc0NSw3IEBAIHZv
aWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcoY29uc3QgTmV0d29ya0xvYWRN
ZXRyaWNzJiBuZXR3b3JrTG9hZE1lCiAgICAgfQogCiAgICAgaWYgKG1fcmVzb3VyY2UtPnR5cGUo
KSAhPSBDYWNoZWRSZXNvdXJjZTo6VHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICB0cmFjZVBv
aW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpKTsKKyAgICAgICAgdHJhY2VQ
b2ludChTdWJyZXNvdXJjZUxvYWREaWRFbmQsIGlkZW50aWZpZXIoKS50b1VJbnQ2NCgpKTsKIAog
ICAgIG1fc3RhdGUgPSBGaW5pc2hpbmc7CiAgICAgbV9yZXNvdXJjZS0+ZmluaXNoTG9hZGluZyhy
ZXNvdXJjZURhdGEoKSwgbmV0d29ya0xvYWRNZXRyaWNzKTsKQEAgLTc5MSw3ICs3OTEsNyBAQCB2
b2lkIFN1YnJlc291cmNlTG9hZGVyOjpkaWRGYWlsKGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9y
KQogICAgIG1fc3RhdGUgPSBGaW5pc2hpbmc7CiAKICAgICBpZiAobV9yZXNvdXJjZS0+dHlwZSgp
ICE9IENhY2hlZFJlc291cmNlOjpUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAgICAgIHRyYWNlUG9p
bnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkpOworICAgICAgICB0cmFjZVBv
aW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpLnRvVUludDY0KCkpOwogCiAg
ICAgaWYgKG1fcmVzb3VyY2UtPnJlc291cmNlVG9SZXZhbGlkYXRlKCkpCiAgICAgICAgIE1lbW9y
eUNhY2hlOjpzaW5nbGV0b24oKS5yZXZhbGlkYXRpb25GYWlsZWQoKm1fcmVzb3VyY2UpOwpAQCAt
ODQ0LDcgKzg0NCw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZENhbmNlbChjb25zdCBS
ZXNvdXJjZUVycm9yJikKICAgICBBU1NFUlQobV9yZXNvdXJjZSk7CiAKICAgICBpZiAobV9yZXNv
dXJjZS0+dHlwZSgpICE9IENhY2hlZFJlc291cmNlOjpUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAg
ICAgIHRyYWNlUG9pbnQoU3VicmVzb3VyY2VMb2FkRGlkRW5kLCBpZGVudGlmaWVyKCkpOworICAg
ICAgICB0cmFjZVBvaW50KFN1YnJlc291cmNlTG9hZERpZEVuZCwgaWRlbnRpZmllcigpLnRvVUlu
dDY0KCkpOwogCiAgICAgbV9yZXNvdXJjZS0+Y2FuY2VsTG9hZCgpOwogICAgIG5vdGlmeURvbmUo
TG9hZENvbXBsZXRpb25UeXBlOjpDYW5jZWwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9U
aHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgKaW5kZXggNjI1YmI3ZWIyZTdiNTA3MWMxZDEyYzA3NTIz
NmUxZmJlNmJlZWJhNy4uODRkNzliMGM5OWRmMTBkOTkzODBiODQ4MzE3MzcxYmMxZTg1NzNiZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGhyZWFkYWJsZUxvYWRlckNsaWVudC5oCkBA
IC0zMCwyNyArMzAsMjkgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIuaCIKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgUmVz
b3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwotICAgIGNsYXNzIFJlc291
cmNlVGltaW5nOwotCi0gICAgY2xhc3MgVGhyZWFkYWJsZUxvYWRlckNsaWVudCB7Ci0gICAgICAg
IFdURl9NQUtFX05PTkNPUFlBQkxFKFRocmVhZGFibGVMb2FkZXJDbGllbnQpOyBXVEZfTUFLRV9G
QVNUX0FMTE9DQVRFRDsKLSAgICBwdWJsaWM6Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRTZW5k
RGF0YSh1bnNpZ25lZCBsb25nIGxvbmcgLypieXRlc1NlbnQqLywgdW5zaWduZWQgbG9uZyBsb25n
IC8qdG90YWxCeXRlc1RvQmVTZW50Ki8pIHsgfQotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRS
ZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9uZyAvKmlkZW50aWZpZXIqLywgY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpIHsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29u
c3QgdWludDhfdCosIGludCAvKmRhdGFMZW5ndGgqLykgeyB9Ci0gICAgICAgIHZpcnR1YWwgdm9p
ZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgLyppZGVudGlmaWVyKi8pIHsgfQotICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJjZUVycm9yJikgeyB9Ci0gICAg
ICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hUaW1pbmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSB7
IH0KLSAgICAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUlzRG9uZShib29sKSB7IEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOyB9Ci0KLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIFRocmVhZGFibGVMb2FkZXJD
bGllbnQoKSA9IGRlZmF1bHQ7Ci0gICAgICAgIHZpcnR1YWwgflRocmVhZGFibGVMb2FkZXJDbGll
bnQoKSA9IGRlZmF1bHQ7Ci0gICAgfTsKK2NsYXNzIFJlc291cmNlRXJyb3I7CitjbGFzcyBSZXNv
dXJjZVJlc3BvbnNlOworY2xhc3MgUmVzb3VyY2VUaW1pbmc7CisKK2NsYXNzIFRocmVhZGFibGVM
b2FkZXJDbGllbnQgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFRocmVhZGFibGVMb2FkZXJD
bGllbnQpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIHZv
aWQgZGlkU2VuZERhdGEodW5zaWduZWQgbG9uZyBsb25nIC8qYnl0ZXNTZW50Ki8sIHVuc2lnbmVk
IGxvbmcgbG9uZyAvKnRvdGFsQnl0ZXNUb0JlU2VudCovKSB7IH0KKworICAgIHZpcnR1YWwgdm9p
ZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJikgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqLCBpbnQgLypkYXRhTGVuZ3RoKi8pIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRG
aW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikgeyB9CisgICAgdmlydHVhbCB2
b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBk
aWRGaW5pc2hUaW1pbmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSB7IH0KKyAgICB2aXJ0dWFsIHZv
aWQgbm90aWZ5SXNEb25lKGJvb2wpIHsgQVNTRVJUX05PVF9SRUFDSEVEKCk7IH0KKworcHJvdGVj
dGVkOgorICAgIFRocmVhZGFibGVMb2FkZXJDbGllbnQoKSA9IGRlZmF1bHQ7CisgICAgdmlydHVh
bCB+VGhyZWFkYWJsZUxvYWRlckNsaWVudCgpID0gZGVmYXVsdDsKK307CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UaHJlYWRhYmxl
TG9hZGVyQ2xpZW50V3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVM
b2FkZXJDbGllbnRXcmFwcGVyLmgKaW5kZXggOGVmZTM5Y2Y3Yjg1ZGQ5ZGQ0ZjhiNDA4YjRlYmM0
OTEwMTkwMmFhNC4uNDJhZTY0OTA5YTVlMGZlNDRjNmE1ZTAwNjBkNThjOTY0ZWM1NjA1MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnRXcmFw
cGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RocmVhZGFibGVMb2FkZXJDbGllbnRX
cmFwcGVyLmgKQEAgLTYwLDcgKzYwLDcgQEAgcHVibGljOgogICAgICAgICAgICAgbV9jbGllbnQt
PmRpZFNlbmREYXRhKGJ5dGVzU2VudCwgdG90YWxCeXRlc1RvQmVTZW50KTsKICAgICB9CiAKLSAg
ICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQorICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNl
KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSkKICAgICB7CiAgICAgICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgICAg
IG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UoaWRlbnRpZmllciwgcmVzcG9uc2UpOwpAQCAt
NzIsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZURh
dGEoZGF0YSwgZGF0YUxlbmd0aCk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5n
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgewogICAgICAgICBtX2RvbmUg
PSB0cnVlOwogICAgICAgICBpZiAobV9jbGllbnQpCkBAIC05Miw3ICs5Miw3IEBAIHB1YmxpYzoK
ICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRGYWlsKGVycm9yKTsKICAgICB9CiAKLSAgICB2b2lk
IGRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNhbmNlbGxhdGlvbih1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQorICAgIHZvaWQgZGlkUmVj
ZWl2ZUF1dGhlbnRpY2F0aW9uQ2FuY2VsbGF0aW9uKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKICAgICB7CiAgICAg
ICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlUmVzcG9u
c2UoaWRlbnRpZmllciwgcmVzcG9uc2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dv
cmtlclRocmVhZGFibGVMb2FkZXIuY3BwCmluZGV4IDQ1OGI2ODliNzRiOTg0NTQzMmRiNGIwNWQ1
NWM4NmU4YjBkMmI4YjAuLjkzMTYxYzljYzU5ODQyNDU2NTM1MDNiZWQ1NjFkYzllYzFkYzc2YmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRlci5j
cHAKQEAgLTExMyw3ICsxMTMsNyBAQCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWluVGhyZWFk
QnJpZGdlOjpNYWluVGhyZWFkQnJpZGdlKFRocmVhZGFibGVMb2FkZXJDbGllbgogICAgIDogbV93
b3JrZXJDbGllbnRXcmFwcGVyKCZ3b3JrZXJDbGllbnRXcmFwcGVyKQogICAgICwgbV9sb2FkZXJQ
cm94eShsb2FkZXJQcm94eSkKICAgICAsIG1fdGFza01vZGUodGFza01vZGUuaXNvbGF0ZWRDb3B5
KCkpCi0gICAgLCBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyKGdsb2JhbFNjb3BlLmNyZWF0ZVVu
aXF1ZUlkZW50aWZpZXIoKSkKKyAgICAsIG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXIgeyBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXI6OmdlbmVyYXRlKCkgfQogewogICAgIGF1dG8qIHNlY3VyaXR5
T3JpZ2luID0gZ2xvYmFsU2NvcGUuc2VjdXJpdHlPcmlnaW4oKTsKICAgICBhdXRvKiBjb250ZW50
U2VjdXJpdHlQb2xpY3kgPSBnbG9iYWxTY29wZS5jb250ZW50U2VjdXJpdHlQb2xpY3koKTsKQEAg
LTIyMCw3ICsyMjAsNyBAQCB2b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRC
cmlkZ2U6OmRpZFNlbmREYXRhKHVuc2lnbmVkIGxvbmcgbG9uZyBieQogICAgIH0sIG1fdGFza01v
ZGUpOwogfQogCi12b2lkIFdvcmtlclRocmVhZGFibGVMb2FkZXI6Ok1haW5UaHJlYWRCcmlkZ2U6
OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpNYWlu
VGhyZWFkQnJpZGdlOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIG1f
bG9hZGVyUHJveHkucG9zdFRhc2tGb3JNb2RlVG9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZShb
cHJvdGVjdGVkV29ya2VyQ2xpZW50V3JhcHBlciA9IG1ha2VSZWYoKm1fd29ya2VyQ2xpZW50V3Jh
cHBlciksIHdvcmtlclJlcXVlc3RJZGVudGlmaWVyID0gbV93b3JrZXJSZXF1ZXN0SWRlbnRpZmll
ciwgaWRlbnRpZmllciwgcmVzcG9uc2VEYXRhID0gcmVzcG9uc2UuY3Jvc3NUaHJlYWREYXRhKCld
IChTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KSBtdXRhYmxlIHsKICAgICAgICAgQVNT
RVJUKGNvbnRleHQuaXNXb3JrZXJHbG9iYWxTY29wZSgpIHx8IGNvbnRleHQuaXNXb3JrbGV0R2xv
YmFsU2NvcGUoKSk7CkBAIC0yNDIsNyArMjQyLDcgQEAgdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9h
ZGVyOjpNYWluVGhyZWFkQnJpZGdlOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiBkYXQK
ICAgICB9LCBtX3Rhc2tNb2RlKTsKIH0KIAotdm9pZCBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyOjpN
YWluVGhyZWFkQnJpZGdlOjpkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikKK3ZvaWQgV29ya2VyVGhyZWFkYWJsZUxvYWRlcjo6TWFpblRocmVhZEJyaWRnZTo6ZGlkRmlu
aXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBt
X2xvYWRpbmdGaW5pc2hlZCA9IHRydWU7CiAgICAgbV9sb2FkZXJQcm94eS5wb3N0VGFza0Zvck1v
ZGVUb1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlKFtwcm90ZWN0ZWRXb3JrZXJDbGllbnRXcmFw
cGVyID0gbWFrZVJlZigqbV93b3JrZXJDbGllbnRXcmFwcGVyKSwgd29ya2VyUmVxdWVzdElkZW50
aWZpZXIgPSBtX3dvcmtlclJlcXVlc3RJZGVudGlmaWVyLCBuZXR3b3JrTG9hZE1ldHJpY3MgPSBt
X25ldHdvcmtMb2FkTWV0cmljcy5pc29sYXRlZENvcHkoKSwgaWRlbnRpZmllcl0gKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQpIG11dGFibGUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Xb3JrZXJUaHJlYWRhYmxlTG9hZGVyLmgKaW5kZXggNTc2MjYwZWE3ZjkzZWZmMjNiNGI0
N2QxZWE4ZTA5MGNjZDViNDQ1Zi4uNzIzYjQ1NmVjOGU5ZTMwNmZjMThjYzhmMzZkZTZkY2Q4YWUz
MDQ3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1dvcmtlclRocmVhZGFibGVM
b2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvV29ya2VyVGhyZWFkYWJsZUxvYWRl
ci5oCkBAIC0zMSw2ICszMSw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIk5ldHdvcmtM
b2FkTWV0cmljcy5oIgorI2luY2x1ZGUgIlJlc291cmNlTG9hZGVySWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgIlRocmVhZGFibGVMb2FkZXIuaCIKICNpbmNsdWRlICJUaHJlYWRhYmxlTG9hZGVyQ2xp
ZW50LmgiCiAjaW5jbHVkZSAiVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIuaCIKQEAgLTM4
LDEwMiArMzksMTAyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIENvbnRl
bnRTZWN1cml0eVBvbGljeTsKLSAgICBjbGFzcyBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI7Ci0g
ICAgY2xhc3MgUmVzb3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci0gICAg
Y2xhc3MgU2VjdXJpdHlPcmlnaW47Ci0gICAgY2xhc3MgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2Nv
cGU7Ci0gICAgY2xhc3MgV29ya2VyTG9hZGVyUHJveHk7Ci0KLSAgICBjbGFzcyBXb3JrZXJUaHJl
YWRhYmxlTG9hZGVyIDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4s
IHB1YmxpYyBUaHJlYWRhYmxlTG9hZGVyIHsKLSAgICAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FU
RUQ7CitjbGFzcyBDb250ZW50U2VjdXJpdHlQb2xpY3k7CitjbGFzcyBEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXI7CitjbGFzcyBSZXNvdXJjZUVycm9yOworY2xhc3MgUmVzb3VyY2VSZXF1ZXN0Owor
Y2xhc3MgU2VjdXJpdHlPcmlnaW47CitjbGFzcyBXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZTsK
K2NsYXNzIFdvcmtlckxvYWRlclByb3h5OworCitjbGFzcyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVy
IDogcHVibGljIFJlZkNvdW50ZWQ8V29ya2VyVGhyZWFkYWJsZUxvYWRlcj4sIHB1YmxpYyBUaHJl
YWRhYmxlTG9hZGVyIHsKKyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAg
ICBzdGF0aWMgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdvcmtlck9yV29ya2xldEds
b2JhbFNjb3BlJiwgUmVzb3VyY2VSZXF1ZXN0JiYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmLCBj
b25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYpOworICAgIHN0YXRpYyBSZWY8V29ya2VyVGhy
ZWFkYWJsZUxvYWRlcj4gY3JlYXRlKFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlJiBXb3JrZXJP
cldvcmtsZXRHbG9iYWxTY29wZSwgVGhyZWFkYWJsZUxvYWRlckNsaWVudCYgY2xpZW50LCBjb25z
dCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBjb25zdCBUaHJl
YWRhYmxlTG9hZGVyT3B0aW9ucyYgb3B0aW9ucywgY29uc3QgU3RyaW5nJiByZWZlcnJlcikKKyAg
ICB7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFdvcmtlclRocmVhZGFibGVMb2FkZXIo
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUsIGNsaWVudCwgdGFza01vZGUsIFdURk1vdmUocmVx
dWVzdCksIG9wdGlvbnMsIHJlZmVycmVyKSk7CisgICAgfQorCisgICAgfldvcmtlclRocmVhZGFi
bGVMb2FkZXIoKTsKKworICAgIHZvaWQgY2FuY2VsKCkgb3ZlcnJpZGU7CisKKyAgICBib29sIGRv
bmUoKSBjb25zdCB7IHJldHVybiBtX3dvcmtlckNsaWVudFdyYXBwZXItPmRvbmUoKTsgfQorCisg
ICAgdm9pZCBub3RpZnlJc0RvbmUoYm9vbCBpc0RvbmUpOworCisgICAgdXNpbmcgUmVmQ291bnRl
ZDxXb3JrZXJUaHJlYWRhYmxlTG9hZGVyPjo6cmVmOworICAgIHVzaW5nIFJlZkNvdW50ZWQ8V29y
a2VyVGhyZWFkYWJsZUxvYWRlcj46OmRlcmVmOworCitwcm90ZWN0ZWQ6CisgICAgdm9pZCByZWZU
aHJlYWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyByZWYoKTsgfQorICAgIHZvaWQgZGVyZWZUaHJl
YWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyBkZXJlZigpOyB9CisKK3ByaXZhdGU6CisgICAgLy8g
Q3JlYXRlcyBhIGxvYWRlciBvbiB0aGUgbWFpbiB0aHJlYWQgYW5kIGJyaWRnZXMgY29tbXVuaWNh
dGlvbiBiZXR3ZWVuCisgICAgLy8gdGhlIG1haW4gdGhyZWFkIGFuZCB0aGUgd29ya2VyIGNvbnRl
eHQncyB0aHJlYWQgd2hlcmUgV29ya2VyVGhyZWFkYWJsZUxvYWRlciBydW5zLgorICAgIC8vCisg
ICAgLy8gUmVnYXJkaW5nIHRoZSBicmlkZ2UgYW5kIGxpZmV0aW1lcyBvZiBpdGVtcyB1c2VkIGlu
IGNhbGxiYWNrcywgdGhlcmUgYXJlIGEgZmV3IGNhc2VzOgorICAgIC8vCisgICAgLy8gYWxsIGNh
c2VzLiBBbGwgdGFza3MgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIGFy
ZSBvayBiZWNhdXNlCisgICAgLy8gICAgdGhlIGxhc3QgdGFzayBwb3N0ZWQgYWx3YXlzIGlzICJt
YWluVGhyZWFkRGVzdHJveSIsIHNvIE1haW5UaHJlYWRCcmlkZ2UgaXMKKyAgICAvLyAgICBhcm91
bmQgZm9yIGFsbCB0YXNrcyB0aGF0IHVzZSBpdCBvbiB0aGUgbWFpbiB0aHJlYWQuCisgICAgLy8K
KyAgICAvLyBjYXNlIDEuIHdvcmtlci50ZXJtaW5hdGUgaXMgY2FsbGVkLgorICAgIC8vICAgIElu
IHRoaXMgY2FzZSwgbm8gbW9yZSB0YXNrcyBhcmUgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBvYmpl
Y3QncyB0aHJlYWQgdG8gdGhlIHdvcmtlcgorICAgIC8vICAgIGNvbnRleHQncyB0aHJlYWQgLS0g
V29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGVQcm94eSBpbXBsZW1lbnRhdGlvbiBlbmZvcmNlcyB0
aGlzLgorICAgIC8vCisgICAgLy8gY2FzZSAyLiB4aHIgZ2V0cyBhYm9ydGVkIGFuZCB0aGUgd29y
a2VyIGNvbnRleHQgY29udGludWVzIHJ1bm5pbmcuCisgICAgLy8gICAgVGhlIFRocmVhZGFibGVM
b2FkZXJDbGllbnRXcmFwcGVyIGhhcyB0aGUgdW5kZXJseWluZyBjbGllbnQgY2xlYXJlZCwgc28g
bm8gbW9yZSBjYWxscworICAgIC8vICAgIGdvIHRocm91Z2ggaXQuIEFsbCB0YXNrcyBwb3N0ZWQg
ZnJvbSB0aGUgd29ya2VyIG9iamVjdCdzIHRocmVhZCB0byB0aGUgd29ya2VyIGNvbnRleHQncwor
ICAgIC8vICAgIHRocmVhZCBjb250YWluIHRoZSBSZWZQdHI8VGhyZWFkYWJsZUxvYWRlckNsaWVu
dFdyYXBwZXI+IG9iamVjdCwgc28gdGhlCisgICAgLy8gICAgVGhyZWFkYWJsZUxvYWRlckNsaWVu
dFdyYXBwZXIgaW5zdGFuY2UgaXMgdGhlcmUgdW50aWwgYWxsIHRhc2tzIGFyZSBleGVjdXRlZC4K
KyAgICBjbGFzcyBNYWluVGhyZWFkQnJpZGdlIDogcHVibGljIFRocmVhZGFibGVMb2FkZXJDbGll
bnQgewogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIHZvaWQgbG9hZFJlc291cmNlU3luY2hy
b25vdXNseShXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFJlc291cmNlUmVxdWVzdCYmLCBU
aHJlYWRhYmxlTG9hZGVyQ2xpZW50JiwgY29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmKTsK
LSAgICAgICAgc3RhdGljIFJlZjxXb3JrZXJUaHJlYWRhYmxlTG9hZGVyPiBjcmVhdGUoV29ya2Vy
T3JXb3JrbGV0R2xvYmFsU2NvcGUmIFdvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLCBUaHJlYWRh
YmxlTG9hZGVyQ2xpZW50JiBjbGllbnQsIGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNl
UmVxdWVzdCYmIHJlcXVlc3QsIGNvbnN0IFRocmVhZGFibGVMb2FkZXJPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQotICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBXb3JrZXJUaHJlYWRhYmxlTG9hZGVyKFdvcmtlck9yV29ya2xldEdsb2Jh
bFNjb3BlLCBjbGllbnQsIHRhc2tNb2RlLCBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zLCByZWZl
cnJlcikpOwotICAgICAgICB9Ci0KLSAgICAgICAgfldvcmtlclRocmVhZGFibGVMb2FkZXIoKTsK
LQotICAgICAgICB2b2lkIGNhbmNlbCgpIG92ZXJyaWRlOwotCi0gICAgICAgIGJvb2wgZG9uZSgp
IGNvbnN0IHsgcmV0dXJuIG1fd29ya2VyQ2xpZW50V3JhcHBlci0+ZG9uZSgpOyB9CisgICAgICAg
IC8vIEFsbCBleGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCisgICAgICAg
IE1haW5UaHJlYWRCcmlkZ2UoVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXImLCBXb3JrZXJM
b2FkZXJQcm94eSYsIGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVzdCYmLCBj
b25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYsIGNvbnN0IFN0cmluZyYgb3V0Z29pbmdSZWZl
cnJlciwgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmKTsKKyAgICAgICAgdm9pZCBjYW5jZWwo
KTsKKyAgICAgICAgdm9pZCBkZXN0cm95KCk7CisgICAgICAgIHZvaWQgY29tcHV0ZUlzRG9uZSgp
OwogCi0gICAgICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKTsKKyAgICBwcml2YXRl
OgorICAgICAgICAvLyBFeGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCisg
ICAgICAgIHZvaWQgY2xlYXJDbGllbnRXcmFwcGVyKCk7CisKKyAgICAgICAgLy8gQWxsIGV4ZWN1
dGVkIG9uIHRoZSBtYWluIHRocmVhZC4KKyAgICAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25l
ZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVT
ZW50KSBvdmVycmlkZTsKKyAgICAgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAg
ICAgIHZvaWQgZGlkUmVjZWl2ZURhdGEoY29uc3QgdWludDhfdCosIGludCBkYXRhTGVuZ3RoKSBv
dmVycmlkZTsKKyAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKFJlc291cmNlTG9hZGVySWRl
bnRpZmllcikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmFpbChjb25zdCBSZXNvdXJjZUVy
cm9yJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgZGlkRmluaXNoVGltaW5nKGNvbnN0IFJlc291
cmNlVGltaW5nJikgb3ZlcnJpZGU7CisgICAgICAgIHZvaWQgbm90aWZ5SXNEb25lKGJvb2wgaXNE
b25lKSBmaW5hbDsKKworICAgICAgICAvLyBPbmx5IHRvIGJlIHVzZWQgb24gdGhlIG1haW4gdGhy
ZWFkLgorICAgICAgICBSZWZQdHI8RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyPiBtX21haW5UaHJl
YWRMb2FkZXI7CisgICAgICAgIGJvb2wgbV9sb2FkaW5nRmluaXNoZWQgeyBmYWxzZSB9OworCisg
ICAgICAgIC8vIFRocmVhZGFibGVMb2FkZXJDbGllbnRXcmFwcGVyIGlzIHRvIGJlIHVzZWQgb24g
dGhlIHdvcmtlciBjb250ZXh0IHRocmVhZC4KKyAgICAgICAgLy8gVGhlIHJlZiBjb3VudGluZyBp
cyBkb25lIG9uIGVpdGhlciB0aHJlYWQuCisgICAgICAgIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVy
Q2xpZW50V3JhcHBlcj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOworCisgICAgICAgIC8vIE1heSBi
ZSB1c2VkIG9uIGVpdGhlciB0aHJlYWQuCisgICAgICAgIFdvcmtlckxvYWRlclByb3h5JiBtX2xv
YWRlclByb3h5OworCisgICAgICAgIC8vIEZvciB1c2Ugb24gdGhlIG1haW4gdGhyZWFkLgorICAg
ICAgICBTdHJpbmcgbV90YXNrTW9kZTsKKyAgICAgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IG1fd29ya2VyUmVxdWVzdElkZW50aWZpZXI7CisgICAgICAgIE5ldHdvcmtMb2FkTWV0cmljcyBt
X25ldHdvcmtMb2FkTWV0cmljczsKKyAgICB9OwogCi0gICAgICAgIHVzaW5nIFJlZkNvdW50ZWQ8
V29ya2VyVGhyZWFkYWJsZUxvYWRlcj46OnJlZjsKLSAgICAgICAgdXNpbmcgUmVmQ291bnRlZDxX
b3JrZXJUaHJlYWRhYmxlTG9hZGVyPjo6ZGVyZWY7CisgICAgV29ya2VyVGhyZWFkYWJsZUxvYWRl
cihXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFRocmVhZGFibGVMb2FkZXJDbGllbnQmLCBj
b25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgVGhyZWFkYWJs
ZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKTsKIAotICAgIHByb3RlY3Rl
ZDoKLSAgICAgICAgdm9pZCByZWZUaHJlYWRhYmxlTG9hZGVyKCkgb3ZlcnJpZGUgeyByZWYoKTsg
fQotICAgICAgICB2b2lkIGRlcmVmVGhyZWFkYWJsZUxvYWRlcigpIG92ZXJyaWRlIHsgZGVyZWYo
KTsgfQorICAgIHZvaWQgY29tcHV0ZUlzRG9uZSgpIGZpbmFsOwogCi0gICAgcHJpdmF0ZToKLSAg
ICAgICAgLy8gQ3JlYXRlcyBhIGxvYWRlciBvbiB0aGUgbWFpbiB0aHJlYWQgYW5kIGJyaWRnZXMg
Y29tbXVuaWNhdGlvbiBiZXR3ZWVuCi0gICAgICAgIC8vIHRoZSBtYWluIHRocmVhZCBhbmQgdGhl
IHdvcmtlciBjb250ZXh0J3MgdGhyZWFkIHdoZXJlIFdvcmtlclRocmVhZGFibGVMb2FkZXIgcnVu
cy4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gUmVnYXJkaW5nIHRoZSBicmlkZ2UgYW5kIGxpZmV0
aW1lcyBvZiBpdGVtcyB1c2VkIGluIGNhbGxiYWNrcywgdGhlcmUgYXJlIGEgZmV3IGNhc2VzOgot
ICAgICAgICAvLwotICAgICAgICAvLyBhbGwgY2FzZXMuIEFsbCB0YXNrcyBwb3N0ZWQgZnJvbSB0
aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQgYXJlIG9rIGJlY2F1c2UKLSAgICAgICAgLy8gICAg
dGhlIGxhc3QgdGFzayBwb3N0ZWQgYWx3YXlzIGlzICJtYWluVGhyZWFkRGVzdHJveSIsIHNvIE1h
aW5UaHJlYWRCcmlkZ2UgaXMKLSAgICAgICAgLy8gICAgYXJvdW5kIGZvciBhbGwgdGFza3MgdGhh
dCB1c2UgaXQgb24gdGhlIG1haW4gdGhyZWFkLgotICAgICAgICAvLwotICAgICAgICAvLyBjYXNl
IDEuIHdvcmtlci50ZXJtaW5hdGUgaXMgY2FsbGVkLgotICAgICAgICAvLyAgICBJbiB0aGlzIGNh
c2UsIG5vIG1vcmUgdGFza3MgYXJlIHBvc3RlZCBmcm9tIHRoZSB3b3JrZXIgb2JqZWN0J3MgdGhy
ZWFkIHRvIHRoZSB3b3JrZXIKLSAgICAgICAgLy8gICAgY29udGV4dCdzIHRocmVhZCAtLSBXb3Jr
ZXJPcldvcmtsZXRHbG9iYWxTY29wZVByb3h5IGltcGxlbWVudGF0aW9uIGVuZm9yY2VzIHRoaXMu
Ci0gICAgICAgIC8vCi0gICAgICAgIC8vIGNhc2UgMi4geGhyIGdldHMgYWJvcnRlZCBhbmQgdGhl
IHdvcmtlciBjb250ZXh0IGNvbnRpbnVlcyBydW5uaW5nLgotICAgICAgICAvLyAgICBUaGUgVGhy
ZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaGFzIHRoZSB1bmRlcmx5aW5nIGNsaWVudCBjbGVh
cmVkLCBzbyBubyBtb3JlIGNhbGxzCi0gICAgICAgIC8vICAgIGdvIHRocm91Z2ggaXQuICBBbGwg
dGFza3MgcG9zdGVkIGZyb20gdGhlIHdvcmtlciBvYmplY3QncyB0aHJlYWQgdG8gdGhlIHdvcmtl
ciBjb250ZXh0J3MKLSAgICAgICAgLy8gICAgdGhyZWFkIGNvbnRhaW4gdGhlIFJlZlB0cjxUaHJl
YWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gb2JqZWN0LCBzbyB0aGUKLSAgICAgICAgLy8gICAg
VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXIgaW5zdGFuY2UgaXMgdGhlcmUgdW50aWwgYWxs
IHRhc2tzIGFyZSBleGVjdXRlZC4KLSAgICAgICAgY2xhc3MgTWFpblRocmVhZEJyaWRnZSA6IHB1
YmxpYyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50IHsKLSAgICAgICAgcHVibGljOgotICAgICAgICAg
ICAgLy8gQWxsIGV4ZWN1dGVkIG9uIHRoZSB3b3JrZXIgY29udGV4dCdzIHRocmVhZC4KLSAgICAg
ICAgICAgIE1haW5UaHJlYWRCcmlkZ2UoVGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXImLCBX
b3JrZXJMb2FkZXJQcm94eSYsIGNvbnN0IFN0cmluZyYgdGFza01vZGUsIFJlc291cmNlUmVxdWVz
dCYmLCBjb25zdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyYsIGNvbnN0IFN0cmluZyYgb3V0Z29p
bmdSZWZlcnJlciwgV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUmKTsKLSAgICAgICAgICAgIHZv
aWQgY2FuY2VsKCk7Ci0gICAgICAgICAgICB2b2lkIGRlc3Ryb3koKTsKLSAgICAgICAgICAgIHZv
aWQgY29tcHV0ZUlzRG9uZSgpOwotCi0gICAgICAgIHByaXZhdGU6Ci0gICAgICAgICAgICAvLyBF
eGVjdXRlZCBvbiB0aGUgd29ya2VyIGNvbnRleHQncyB0aHJlYWQuCi0gICAgICAgICAgICB2b2lk
IGNsZWFyQ2xpZW50V3JhcHBlcigpOwotCi0gICAgICAgICAgICAvLyBBbGwgZXhlY3V0ZWQgb24g
dGhlIG1haW4gdGhyZWFkLgotICAgICAgICAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNpZ25lZCBs
b25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1RvQmVTZW50
KSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwotICAg
ICAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50OF90KiwgaW50IGRhdGFMZW5n
dGgpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgICAgICAgICB2b2lkIGRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwotICAgICAgICAgICAgdm9pZCBkaWRGaW5pc2hU
aW1pbmcoY29uc3QgUmVzb3VyY2VUaW1pbmcmKSBvdmVycmlkZTsKLSAgICAgICAgICAgIHZvaWQg
bm90aWZ5SXNEb25lKGJvb2wgaXNEb25lKSBmaW5hbDsKLQotICAgICAgICAgICAgLy8gT25seSB0
byBiZSB1c2VkIG9uIHRoZSBtYWluIHRocmVhZC4KLSAgICAgICAgICAgIFJlZlB0cjxEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXI+IG1fbWFpblRocmVhZExvYWRlcjsKLSAgICAgICAgICAgIGJvb2wg
bV9sb2FkaW5nRmluaXNoZWQgeyBmYWxzZSB9OwotCi0gICAgICAgICAgICAvLyBUaHJlYWRhYmxl
TG9hZGVyQ2xpZW50V3JhcHBlciBpcyB0byBiZSB1c2VkIG9uIHRoZSB3b3JrZXIgY29udGV4dCB0
aHJlYWQuCi0gICAgICAgICAgICAvLyBUaGUgcmVmIGNvdW50aW5nIGlzIGRvbmUgb24gZWl0aGVy
IHRocmVhZC4KLSAgICAgICAgICAgIFJlZlB0cjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBl
cj4gbV93b3JrZXJDbGllbnRXcmFwcGVyOwotCi0gICAgICAgICAgICAvLyBNYXkgYmUgdXNlZCBv
biBlaXRoZXIgdGhyZWFkLgotICAgICAgICAgICAgV29ya2VyTG9hZGVyUHJveHkmIG1fbG9hZGVy
UHJveHk7Ci0KLSAgICAgICAgICAgIC8vIEZvciB1c2Ugb24gdGhlIG1haW4gdGhyZWFkLgotICAg
ICAgICAgICAgU3RyaW5nIG1fdGFza01vZGU7Ci0gICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1f
d29ya2VyUmVxdWVzdElkZW50aWZpZXIgeyAwIH07Ci0gICAgICAgICAgICBOZXR3b3JrTG9hZE1l
dHJpY3MgbV9uZXR3b3JrTG9hZE1ldHJpY3M7Ci0gICAgICAgIH07Ci0KLSAgICAgICAgV29ya2Vy
VGhyZWFkYWJsZUxvYWRlcihXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZSYsIFRocmVhZGFibGVM
b2FkZXJDbGllbnQmLCBjb25zdCBTdHJpbmcmIHRhc2tNb2RlLCBSZXNvdXJjZVJlcXVlc3QmJiwg
Y29uc3QgVGhyZWFkYWJsZUxvYWRlck9wdGlvbnMmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKTsK
LQotICAgICAgICB2b2lkIGNvbXB1dGVJc0RvbmUoKSBmaW5hbDsKLQotICAgICAgICBSZWY8V29y
a2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU+IG1fV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGU7Ci0g
ICAgICAgIFJlZjxUaHJlYWRhYmxlTG9hZGVyQ2xpZW50V3JhcHBlcj4gbV93b3JrZXJDbGllbnRX
cmFwcGVyOwotICAgICAgICBNYWluVGhyZWFkQnJpZGdlJiBtX2JyaWRnZTsKLSAgICB9OworICAg
IFJlZjxXb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZT4gbV9Xb3JrZXJPcldvcmtsZXRHbG9iYWxT
Y29wZTsKKyAgICBSZWY8VGhyZWFkYWJsZUxvYWRlckNsaWVudFdyYXBwZXI+IG1fd29ya2VyQ2xp
ZW50V3JhcHBlcjsKKyAgICBNYWluVGhyZWFkQnJpZGdlJiBtX2JyaWRnZTsKK307CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBj
YWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Fw
cGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKaW5kZXggNjhmMjI0MzExMmY4Njk1ZGI2
ZmQ2OWY1ZjgzMjU3ZDc2Mjc5NjA5OS4uNGJjMmIwOTI3NWYxMzgyMDM2OWE5NGJlMDhmZmNiOGQx
MmZiOGI5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxp
Y2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hl
L0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKQEAgLTQzNyw3ICs0MzcsNyBAQCB2b2lkIEFwcGxp
Y2F0aW9uQ2FjaGVHcm91cDo6dXBkYXRlKEZyYW1lJiBmcmFtZSwgQXBwbGljYXRpb25DYWNoZVVw
ZGF0ZU9wdGlvbiB1cAogCiAgICAgYXV0byByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChVUkwgeyBt
X21hbmlmZXN0VVJMIH0sIG1fbmV3ZXN0Q2FjaGUgPyBtX25ld2VzdENhY2hlLT5tYW5pZmVzdFJl
c291cmNlKCkgOiBudWxscHRyKTsKIAotICAgIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciA9
IG1fZnJhbWUtPnBhZ2UoKS0+cHJvZ3Jlc3MoKS5jcmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7Cisg
ICAgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyID0gUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
OjpnZW5lcmF0ZSgpOwogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFNlbmRSZXF1
ZXN0KG1fZnJhbWUuZ2V0KCksIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbV9mcmFtZS0+
bG9hZGVyKCkuZG9jdW1lbnRMb2FkZXIoKSwgcmVxdWVzdCwgUmVzb3VyY2VSZXNwb25zZSB7IH0s
IG51bGxwdHIpOwogCiAgICAgbV9tYW5pZmVzdExvYWRlciA9IEFwcGxpY2F0aW9uQ2FjaGVSZXNv
dXJjZUxvYWRlcjo6Y3JlYXRlKEFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZTo6VHlwZTo6TWFuaWZl
c3QsIGRvY3VtZW50TG9hZGVyLmNhY2hlZFJlc291cmNlTG9hZGVyKCksIFdURk1vdmUocmVxdWVz
dCksIFt0aGlzXSAoYXV0byYmIHJlc291cmNlT3JFcnJvcikgewpAQCAtODk4LDcgKzg5OCw3IEBA
IHZvaWQgQXBwbGljYXRpb25DYWNoZUdyb3VwOjpzdGFydExvYWRpbmdFbnRyeSgpCiAKICAgICBh
dXRvIHJlcXVlc3QgPSBjcmVhdGVSZXF1ZXN0KFVSTCB7IHsgfSwgZmlyc3RQZW5kaW5nRW50cnlV
UkwgfSwgbV9uZXdlc3RDYWNoZSA/IG1fbmV3ZXN0Q2FjaGUtPnJlc291cmNlRm9yVVJMKGZpcnN0
UGVuZGluZ0VudHJ5VVJMKSA6IG51bGxwdHIpOwogCi0gICAgbV9jdXJyZW50UmVzb3VyY2VJZGVu
dGlmaWVyID0gbV9mcmFtZS0+cGFnZSgpLT5wcm9ncmVzcygpLmNyZWF0ZVVuaXF1ZUlkZW50aWZp
ZXIoKTsKKyAgICBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXIgPSBSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxs
U2VuZFJlcXVlc3QobV9mcmFtZS5nZXQoKSwgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyLCBt
X2ZyYW1lLT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpLCByZXF1ZXN0LCBSZXNvdXJjZVJlc3Bv
bnNlIHsgfSwgbnVsbHB0cik7CiAKICAgICBhdXRvJiBkb2N1bWVudExvYWRlciA9ICptX2ZyYW1l
LT5sb2FkZXIoKS5kb2N1bWVudExvYWRlcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5oCmluZGV4IDYzNzFmYTU4ZWJj
NjU0MDk1MDEyZTAzYTRlN2Q0ZTY0YjQwYjFiOWEuLmI5YmY4NzYzOGYzMDNhZWE5Yzg2YTY0NWVl
OGMxZjkyOTI1NjM4ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNo
ZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvYXBw
Y2FjaGUvQXBwbGljYXRpb25DYWNoZUdyb3VwLmgKQEAgLTE4MSw3ICsxODEsNyBAQCBwcml2YXRl
OgogICAgIAogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fY3VycmVudFJl
c291cmNlOwogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VMb2FkZXI+IG1fZW50
cnlMb2FkZXI7Ci0gICAgdW5zaWduZWQgbG9uZyBtX2N1cnJlbnRSZXNvdXJjZUlkZW50aWZpZXI7
CisgICAgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmll
cjsKIAogICAgIFJlZlB0cjxBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2U+IG1fbWFuaWZlc3RSZXNv
dXJjZTsKICAgICBSZWZQdHI8QXBwbGljYXRpb25DYWNoZVJlc291cmNlTG9hZGVyPiBtX21hbmlm
ZXN0TG9hZGVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJhd1Jlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdS
ZXNvdXJjZS5jcHAKaW5kZXggOTAwOWEzOWI3NWM3NWExMjE2YTdlYmE3ZDZjZmFiOWY5Njc3ZWVm
ZS4uOTJiMDgzNjk3NTg4ODQ0MDkxOTM5ZTNlZWQ3OWQ3N2YxODM5NTYyZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2UuY3BwCkBAIC00Myw3
ICs0Myw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ2FjaGVkUmF3UmVzb3VyY2U6OkNhY2hl
ZFJhd1Jlc291cmNlKENhY2hlZFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFR5cGUgdHlwZSwg
UEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBjb25zdCBDb29raWVKYXIqIGNvb2tpZUphcikKICAg
ICA6IENhY2hlZFJlc291cmNlKFdURk1vdmUocmVxdWVzdCksIHR5cGUsIHNlc3Npb25JRCwgY29v
a2llSmFyKQotICAgICwgbV9pZGVudGlmaWVyKDApCiAgICAgLCBtX2FsbG93RW5jb2RlZERhdGFS
ZXBsYWNlbWVudCh0cnVlKQogewogICAgIEFTU0VSVChpc01haW5Pck1lZGlhT3JJY29uT3JSYXdS
ZXNvdXJjZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSYXdSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jl
c291cmNlLmgKaW5kZXggZmQ0YTI2OWJkNWEyYmI2MDQ5ODVjNDdkNmIzOGE3OTMwNzZmZjk0Yi4u
ODRlMGQ4NDRkNTcxMDk5NTNhZTZiZmY2NTU2NTk5NTNlMjhiYTY5YiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmgKQEAgLTM5LDcgKzM5LDcg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0RGF0YUJ1ZmZlcmluZ1BvbGljeShEYXRhQnVmZmVyaW5n
UG9saWN5KTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIGlzIGV4cG9zZWQgZm9yIHRoZSBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb24gZm9yIHByZWZsaWdodHMgaW4gRG9jdW1lbnRUaHJlYWRhYmxlTG9h
ZGVyLiBJdCdzIGFsc28gcmVhbGx5IGxhbWUuCi0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CisgICAgUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogICAg
IHZvaWQgY2xlYXIoKTsKIApAQCAtNzMsNyArNzMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcHJl
dmlld1Jlc3BvbnNlUmVjZWl2ZWQoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogI2Vu
ZGlmCiAKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmllcjsKKyAgICBSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIGJvb2wgbV9hbGxvd0VuY29kZWREYXRhUmVw
bGFjZW1lbnQ7CiAgICAgYm9vbCBtX2luSW5jcmVtZW50YWxEYXRhTm90aWZ5IHsgZmFsc2UgfTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5k
ZXggODZmNzcyMGI4M2ViMDNlMTE4Y2VlZDZmMjM0MThiOGIyNjVkZjQyNi4uNWFiNGE0OGQyZmNi
NjBlM2M5NzMyZWZjMDBkNWNkZmI3ZjllNzUyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCkBAIC0yNjUsNyArMjY1LDcgQEAgdm9pZCBDYWNo
ZWRSZXNvdXJjZTo6bG9hZChDYWNoZWRSZXNvdXJjZUxvYWRlciYgY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIpCiAgICAgICAgIEFTU0VSVChtX29yaWdpbmFsUmVxdWVzdCk7CiAgICAgICAgIENhY2hlZFJl
c291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBwcm90ZWN0ZWRUaGlzKHRoaXMpOwogCi0gICAg
ICAgIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciA9IGZyYW1lLnBhZ2UoKS0+cHJvZ3Jlc3MoKS5j
cmVhdGVVbmlxdWVJZGVudGlmaWVyKCk7CisgICAgICAgIGF1dG8gaWRlbnRpZmllciA9IFJlc291
cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICAgICAgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsU2VuZFJlcXVlc3RPZlR5cGUoJmZyYW1lLCBpZGVudGlmaWVyLCBmcmFt
ZUxvYWRlci5hY3RpdmVEb2N1bWVudExvYWRlcigpLCByZXF1ZXN0LCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246OkxvYWRUeXBlOjpCZWFjb24pOwogCiAgICAgICAgIHBsYXRmb3JtU3RyYXRlZ2ll
cygpLT5sb2FkZXJTdHJhdGVneSgpLT5zdGFydFBpbmdMb2FkKGZyYW1lLCByZXF1ZXN0LCBtX29y
aWdpbmFsUmVxdWVzdC0+aHR0cEhlYWRlckZpZWxkcygpLCBtX29wdGlvbnMsIG1fb3B0aW9ucy5j
b250ZW50U2VjdXJpdHlQb2xpY3lJbXBvc2l0aW9uLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IFdU
Rk1vdmUocHJvdGVjdGVkVGhpcyksIHByb3RlY3RlZEZyYW1lID0gbWFrZVJlZihmcmFtZSksIGlk
ZW50aWZpZXJdIChjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmgKaW5kZXggNWY5NTY5ZWNhYjEzY2ZjMmZmYWNlN2ZmMTFlNzg2MTcyZWVlNzMwMC4u
Mzk2MDAyODMyY2MxNTNjNTkwNDc4Y2EyNTE4MTNlNmMwMzViYzI3OCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAgLTI2LDYgKzI2LDcgQEAKICNp
bmNsdWRlICJGcmFtZUxvYWRlclR5cGVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgog
I2luY2x1ZGUgIlJlc291cmNlTG9hZFByaW9yaXR5LmgiCisjaW5jbHVkZSAiUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VMb2FkZXJPcHRpb25zLmgiCiAjaW5j
bHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25zZS5oIgpA
QCAtMjg2LDcgKzI4Nyw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHRyeVJl
cGxhY2VFbmNvZGVkRGF0YShTaGFyZWRCdWZmZXImKTsKICNlbmRpZgogCi0gICAgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyRm9yTG9hZFdpdGhvdXRSZXNvdXJjZUxvYWRlcigpIGNvbnN0IHsgcmV0
dXJuIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXI7IH0KKyAgICBSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXJGb3JMb2FkV2l0aG91dFJlc291cmNlTG9h
ZGVyOyB9CiAKICAgICB2b2lkIHNldE9yaWdpbmFsUmVxdWVzdChzdGQ6OnVuaXF1ZV9wdHI8UmVz
b3VyY2VSZXF1ZXN0PiYmIG9yaWdpbmFsUmVxdWVzdCkgeyBtX29yaWdpbmFsUmVxdWVzdCA9IFdU
Rk1vdmUob3JpZ2luYWxSZXF1ZXN0KTsgfQogICAgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxSZXNv
dXJjZVJlcXVlc3Q+JiBvcmlnaW5hbFJlcXVlc3QoKSBjb25zdCB7IHJldHVybiBtX29yaWdpbmFs
UmVxdWVzdDsgfQpAQCAtMzQyLDcgKzM0Myw3IEBAIHByaXZhdGU6CiAgICAgUEFMOjpTZXNzaW9u
SUQgbV9zZXNzaW9uSUQ7CiAgICAgUmVmUHRyPGNvbnN0IENvb2tpZUphcj4gbV9jb29raWVKYXI7
CiAgICAgV2FsbFRpbWUgbV9yZXNwb25zZVRpbWVzdGFtcDsKLSAgICB1bnNpZ25lZCBsb25nIG1f
aWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2FkZXIgeyAwIH07CisgICAgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllckZvckxvYWRXaXRob3V0UmVzb3VyY2VMb2Fk
ZXI7CiAKICAgICBIYXNoTWFwPENhY2hlZFJlc291cmNlQ2xpZW50Kiwgc3RkOjp1bmlxdWVfcHRy
PENhbGxiYWNrPj4gbV9jbGllbnRzQXdhaXRpbmdDYWxsYmFjazsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50U291cmNlLmNwcAppbmRleCA3Yjc3ZTQwN2VlNWQwOGFiMzc4NGQwODk5Y2ZhMzNmMDE3N2Yw
NjQ4Li42MDI2MzFiYjdjZDEwODYwYjFhMzEyMTA0M2M5N2Q4ZWZlNDQ3NjFkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50U291cmNlLmNwcApAQCAtMTg4LDcgKzE4OCw3IEBAIGJvb2wgRXZlbnRTb3Vy
Y2U6OnJlc3BvbnNlSXNWYWxpZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkgY29u
c3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJl
c3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQor
dm9pZCBFdmVudFNvdXJjZTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgQVNTRVJUKG1f
c3RhdGUgPT0gQ09OTkVDVElORyk7CiAgICAgQVNTRVJUKG1fcmVxdWVzdEluRmxpZ2h0KTsKQEAg
LTIyMCw3ICsyMjAsNyBAQCB2b2lkIEV2ZW50U291cmNlOjpkaWRSZWNlaXZlRGF0YShjb25zdCB1
aW50OF90KiBkYXRhLCBpbnQgbGVuZ3RoKQogICAgIHBhcnNlRXZlbnRTdHJlYW0oKTsKIH0KIAot
dm9pZCBFdmVudFNvdXJjZTo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBF
dmVudFNvdXJjZTo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpCiB7
CiAgICAgQVNTRVJUKG1fc3RhdGUgPT0gT1BFTik7CiAgICAgQVNTRVJUKG1fcmVxdWVzdEluRmxp
Z2h0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRTb3VyY2UuaAppbmRleCBlMTBkOGQ5MTZmYjBmMjVmYmVh
M2Y3YWMyYWY1NWY1NzBiMjBkY2E2Li5kMDEyZDM3N2QxOTc2NzVmMGZlMTE0NWYxNzE5ZjE3ZmRk
YmZlYTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50U291cmNlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudFNvdXJjZS5oCkBAIC04Myw5ICs4Myw5IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBkb0V4cGxpY2l0TG9hZENhbmNlbGxhdGlvbigpOwogCiAgICAgLy8g
VGhyZWFkYWJsZUxvYWRlckNsaWVudAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2ln
bmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRpZFJl
Y2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVz
cG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqLCBp
bnQpIGZpbmFsOwotICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKSBmaW5h
bDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBm
aW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCiAg
ICAgLy8gQWN0aXZlRE9NT2JqZWN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlci5jcHAKaW5kZXggYzQ4
YTI5NmNjYzAyZTU3YmMyZGJkNjAxNzQ0NDU5N2NjOWFhMzBkNy4uZTk3YTA1OGRmNmM4YmQyZmFk
M2MxYTNiMjgzZGY3ZTY2OTc5NTE1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyLmNwcApAQCAt
MTk2LDcgKzE5Niw3IEBAIHZvaWQgV29ya2VyOjpub3RpZnlOZXR3b3JrU3RhdGVDaGFuZ2UoYm9v
bCBpc09uTGluZSkKICAgICBtX2NvbnRleHRQcm94eS5ub3RpZnlOZXR3b3JrU3RhdGVDaGFuZ2Uo
aXNPbkxpbmUpOwogfQogCi12b2lkIFdvcmtlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lk
IFdvcmtlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVu
dGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBjb25zdCBV
UkwmIHJlc3BvbnNlVVJMID0gcmVzcG9uc2UudXJsKCk7CiAgICAgaWYgKCFyZXNwb25zZVVSTC5w
cm90b2NvbElzQmxvYigpICYmICFyZXNwb25zZVVSTC5wcm90b2NvbElzKCJmaWxlIikgJiYgIVNl
Y3VyaXR5T3JpZ2luOjpjcmVhdGUocmVzcG9uc2VVUkwpLT5pc1VuaXF1ZSgpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyLmgKaW5kZXggYzMxZTc5YmQ1NWZmODIwOGZjN2I0MmQ3ZTk4MmJjM2Q1MWFjYjEy
My4uYmQyOWU1N2ZlNGYyYTI2NzgzNThmZWQxZTE3M2FmYzJiZDY4N2ViNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL1dvcmtlci5oCkBAIC04Nyw3ICs4Nyw3IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIG5vdGlm
eU5ldHdvcmtTdGF0ZUNoYW5nZShib29sIGlzT25saW5lKTsKIAotICAgIHZvaWQgZGlkUmVjZWl2
ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25z
ZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwogICAgIHZvaWQgbm90aWZ5
RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmNwcAppbmRleCBmYWJiZDAz
ZWIwYWRjMTIwNGUxMDQxYTEwOGUwNWI3NmU0NTQ1NTA3Li5mMTU3ZDMwOTdkZjY5ODdhNGI2MzRi
N2ZkNjMzMzllOTA5ZDg2ZTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckZvbnRMb2FkUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3Jr
ZXJGb250TG9hZFJlcXVlc3QuY3BwCkBAIC0xMDUsNyArMTA1LDcgQEAgdm9pZCBXb3JrZXJGb250
TG9hZFJlcXVlc3Q6OnNldENsaWVudChGb250TG9hZFJlcXVlc3RDbGllbnQqIGNsaWVudCkKICAg
ICB9CiB9CiAKLXZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlUmVzcG9uc2Uo
dW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdv
cmtlckZvbnRMb2FkUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKHJl
c3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgLyAxMDAgIT0gMiAmJiByZXNwb25zZS5odHRwU3RhdHVz
Q29kZSgpKQogICAgICAgICBtX2Vycm9yT2NjdXJyZWQgPSB0cnVlOwpAQCAtMTIyLDcgKzEyMiw3
IEBAIHZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRSZWNlaXZlRGF0YShjb25zdCB1aW50
OF90KiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkKICAgICBtX2RhdGEtPmFwcGVuZChkYXRhLCBkYXRh
TGVuZ3RoKTsKIH0KIAotdm9pZCBXb3JrZXJGb250TG9hZFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRp
bmcodW5zaWduZWQgbG9uZykKK3ZvaWQgV29ya2VyRm9udExvYWRSZXF1ZXN0OjpkaWRGaW5pc2hM
b2FkaW5nKFJlc291cmNlTG9hZGVySWRlbnRpZmllcikKIHsKICAgICBtX2lzTG9hZGluZyA9IGZh
bHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2Fk
UmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3Qu
aAppbmRleCAxNWM0NTEzODAwNTA0YWIwM2Q0OTE3OWJiNTRlODIwMGUyZDQ5OThkLi5hZjY5MjA2
MzAyZGMxYmFlZDU5OTA0NGU3Yjc2NWU3YmM1MDI4ZjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKQEAgLTYwLDkgKzYwLDkgQEAgcHJpdmF0
ZToKIAogICAgIGJvb2wgaXNXb3JrZXJGb250TG9hZFJlcXVlc3QoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiB0cnVlOyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25n
IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBmaW5hbDsKKyAgICB2b2lkIGRp
ZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmKSBmaW5hbDsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3Qq
IGRhdGEsIGludCBkYXRhTGVuZ3RoKSBmaW5hbDsKLSAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGRpZEZpbmlzaExvYWRp
bmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICAgICB2b2lkIGRpZEZhaWwoY29u
c3QgUmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCiAgICAgVVJMIG1fdXJsOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJPcldvcmtsZXRHbG9iYWxTY29wZS5oCmluZGV4IGU0
NzlkZGVhMDRlYTVlMWUyNjZlNTE1YWY5MmNlZDNmOTk1N2VjNTYuLmI5NzBjZGU0MWU3YzU0MTEy
MTAyNTJlNjVhMThlNDFjNmI5MzlkNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyT3JXb3JrbGV0R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL1dvcmtlck9yV29ya2xldEdsb2JhbFNjb3BlLmgKQEAgLTU0LDggKzU0LDYgQEAgcHVibGlj
OgogICAgIEpTQzo6Vk0mIHZtKCkgZmluYWw7CiAgICAgV29ya2VySW5zcGVjdG9yQ29udHJvbGxl
ciYgaW5zcGVjdG9yQ29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuICptX2luc3BlY3RvckNvbnRy
b2xsZXI7IH0KIAotICAgIHVuc2lnbmVkIGxvbmcgY3JlYXRlVW5pcXVlSWRlbnRpZmllcigpIHsg
cmV0dXJuIG1fdW5pcXVlSWRlbnRpZmllcisrOyB9Ci0KICAgICBTY3JpcHRNb2R1bGVMb2FkZXIm
IG1vZHVsZUxvYWRlcigpIHsgcmV0dXJuICptX21vZHVsZUxvYWRlcjsgfQogCiAgICAgLy8gU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC4KQEAgLTk5LDcgKzk3LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQ
dHI8V29ya2VyRXZlbnRMb29wPiBtX2V2ZW50TG9vcDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RXZl
bnRMb29wVGFza0dyb3VwPiBtX2RlZmF1bHRUYXNrR3JvdXA7CiAgICAgc3RkOjp1bmlxdWVfcHRy
PFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXI+IG1faW5zcGVjdG9yQ29udHJvbGxlcjsKLSAgICB1
bnNpZ25lZCBsb25nIG1fdW5pcXVlSWRlbnRpZmllciB7IDEgfTsKICAgICBib29sIG1faXNDbG9z
aW5nIHsgZmFsc2UgfTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyU2NyaXB0TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2Ny
aXB0TG9hZGVyLmNwcAppbmRleCA3M2FlN2FiYjcxM2M2YWY2OTQ1YjhkNTFlMGEwZTdmOTc5YjEx
NWYxLi5iZjVhNDRmZTM0OGQyZmZjZTkxNmZiMTk0OTE1ZTY3YmZkYTlhZWMxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNjcmlwdExvYWRlci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwCkBAIC0xNzgsNyArMTc4
LDcgQEAgUmVzb3VyY2VFcnJvciBXb3JrZXJTY3JpcHRMb2FkZXI6OnZhbGlkYXRlV29ya2VyUmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYKICAgICByZXR1cm4geyB9OwogfQogCi12b2lk
IFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdvcmtlclNj
cmlwdExvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBtX2Vy
cm9yID0gdmFsaWRhdGVXb3JrZXJSZXNwb25zZShyZXNwb25zZSwgbV9kZXN0aW5hdGlvbik7CiAg
ICAgaWYgKCFtX2Vycm9yLmlzTnVsbCgpKSB7CkBAIC0yMjEsNyArMjIxLDcgQEAgdm9pZCBXb3Jr
ZXJTY3JpcHRMb2FkZXI6OmRpZFJlY2VpdmVEYXRhKGNvbnN0IHVpbnQ4X3QqIGRhdGEsIGludCBs
ZW4pCiAgICAgbV9zY3JpcHQuYXBwZW5kKG1fZGVjb2Rlci0+ZGVjb2RlKGRhdGEsIGxlbikpOwog
fQogCi12b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIpCit2b2lkIFdvcmtlclNjcmlwdExvYWRlcjo6ZGlkRmluaXNoTG9hZGlu
ZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBpZiAobV9mYWls
ZWQpIHsKICAgICAgICAgbm90aWZ5RXJyb3IoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclNjcmlwdExvYWRlci5oCmluZGV4IDNlZTRkYTZjNTA2Y2JmZDZlYjg3NWQ5YzI3NDk4ZjEz
ZjNjN2ExMTkuLmVhNTM4MGZiZWVmODc1NDAzMTZhNmZhOTI3OGNjMjE3Yzg5MzE0ZTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuaApAQCAtNzUsMTIgKzc1
LDEyIEBAIHB1YmxpYzoKICAgICBjb25zdCBDZXJ0aWZpY2F0ZUluZm8mIGNlcnRpZmljYXRlSW5m
bygpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGVJbmZvOyB9CiAgICAgY29uc3QgU3RyaW5n
JiByZXNwb25zZU1JTUVUeXBlKCkgY29uc3QgeyByZXR1cm4gbV9yZXNwb25zZU1JTUVUeXBlOyB9
CiAgICAgYm9vbCBmYWlsZWQoKSBjb25zdCB7IHJldHVybiBtX2ZhaWxlZDsgfQotICAgIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQorICAg
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9p
ZGVudGlmaWVyOyB9CiAgICAgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IoKSBjb25zdCB7IHJl
dHVybiBtX2Vycm9yOyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZp
bmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAg
ICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogCiAgICAgdm9p
ZCBjYW5jZWwoKTsKQEAgLTExMCw3ICsxMTAsNyBAQCBwcml2YXRlOgogICAgIENvbnRlbnRTZWN1
cml0eVBvbGljeVJlc3BvbnNlSGVhZGVycyBtX2NvbnRlbnRTZWN1cml0eVBvbGljeTsKICAgICBT
dHJpbmcgbV9yZWZlcnJlclBvbGljeTsKICAgICBDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5IG1f
Y3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeTsKLSAgICB1bnNpZ25lZCBsb25nIG1faWRlbnRpZmll
ciB7IDAgfTsKKyAgICBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAg
IGJvb2wgbV9mYWlsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9maW5pc2hpbmcgeyBmYWxzZSB9
OwogICAgIGJvb2wgbV9pc1JlZGlyZWN0ZWQgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyU2NyaXB0TG9hZGVyQ2xpZW50LmgKaW5kZXggMjc0Y2U0OGUxZDZm
M2ZiMDY5NGQyMjU2ZDE2ZjM1ZWFhMzU5NzY1Zi4uMTViMzI1ZTQ3NWY0YzliYmI0ZjI5ODI4ODFl
NDU3ZjZjNGNmZjc2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJT
Y3JpcHRMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclNj
cmlwdExvYWRlckNsaWVudC5oCkBAIC0zMiw3ICszMiw3IEBAIGNsYXNzIFJlc291cmNlUmVzcG9u
c2U7CiAKIGNsYXNzIFdvcmtlclNjcmlwdExvYWRlckNsaWVudCB7CiBwdWJsaWM6Ci0gICAgdmly
dHVhbCB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVS
ZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2Um
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZpbmlzaGVkKCkgPSAwOwogCiBwcm90ZWN0
ZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdv
cmtlckpvYi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5jcHAKaW5kZXggODY3Yjg2OTQ3NTM0NGZjZTMzY2NkYTk5ZjdlYzkwY2Y0NzcxM2Q1Yi4u
NjllZjlkNzA3ZmM0M2Q0N2MyZTIyNjVhYTE0OTYzNGUzYmIwMThkNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2IuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmNwcApAQCAtMTQw
LDcgKzE0MCw3IEBAIFJlc291cmNlRXJyb3IgU2VydmljZVdvcmtlckpvYjo6dmFsaWRhdGVTZXJ2
aWNlV29ya2VyUmVzcG9uc2UoY29uc3QgU2VydmljZVdvcmtlCiAgICAgcmV0dXJuIHsgfTsKIH0K
IAotdm9pZCBTZXJ2aWNlV29ya2VySm9iOjpkaWRSZWNlaXZlUmVzcG9uc2UodW5zaWduZWQgbG9u
ZywgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFNlcnZpY2VXb3JrZXJK
b2I6OmRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIEFTU0VSVChtX2NyZWF0aW9uVGhyZWFk
LnB0cigpID09ICZUaHJlYWQ6OmN1cnJlbnQoKSk7CiAgICAgQVNTRVJUKCFtX2NvbXBsZXRlZCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckpvYi5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJKb2Iu
aAppbmRleCAwN2NjYjc0NzAyZTU0MDA2NTBhNjYyODU0M2U4MzNjNTQ2NGY5YmJiLi43YzU4YTQ2
YzI0MjA1ODIwYWIwMTA5YzFlNTNjYzZkZWFkYmViZjg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckpvYi5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VySm9iLmgKQEAgLTc0LDcgKzc0LDcgQEAg
cHVibGljOgogCiBwcml2YXRlOgogICAgIC8vIFdvcmtlclNjcmlwdExvYWRlckNsaWVudAotICAg
IHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOworICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlKFJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwog
ICAgIHZvaWQgbm90aWZ5RmluaXNoZWQoKSBmaW5hbDsKIAogICAgIFNlcnZpY2VXb3JrZXJKb2JD
bGllbnQmIG1fY2xpZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBS
ZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKaW5kZXgg
MjViZjgyMDA5ZTNhYTgyYzEzOGMxNzU3MDJiNjQwYTQ3YWIzZjk5YS4uNjJmNzBlZWI4MDFkODQ4
NGUxYTQ4OTVmN2QzNDZjMWI0ZTRjNzhlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUveG1s
L1hNTEh0dHBSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVl
c3QuY3BwCkBAIC05MjYsNyArOTI2LDcgQEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmFpbChj
b25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKICAgICBuZXR3b3JrRXJyb3IoKTsKIH0KIAotdm9p
ZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nKQordm9pZCBY
TUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyhSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIp
CiB7CiAgICAgYXV0byBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyk7CiAKQEAgLTk3MCw3
ICs5NzAsNyBAQCB2b2lkIFhNTEh0dHBSZXF1ZXN0OjpkaWRTZW5kRGF0YSh1bnNpZ25lZCBsb25n
IGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbgogICAgIH0KIH0KIAotdm9pZCBYTUxI
dHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkUmVjZWl2ZVJl
c3BvbnNlKFJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UpCiB7CiAgICAgbV9yZXNwb25zZSA9IHJlc3BvbnNlOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3QuaAppbmRleCBjMDRhMTY4OTYwOWI2ZmI5MWE2ODBjOThmN2UwNzMyYTc0
OGY5ZWYyLi44ZjZlODkyNjBkZWMxNjc1ZWRmY2VmNTg0YjAzMGQ4NmM3NjY4ODM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaApAQCAtMTYxLDkgKzE2MSw5IEBAIHByaXZhdGU6CiAK
ICAgICAvLyBUaHJlYWRhYmxlTG9hZGVyQ2xpZW50CiAgICAgdm9pZCBkaWRTZW5kRGF0YSh1bnNp
Z25lZCBsb25nIGxvbmcgYnl0ZXNTZW50LCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlc1Rv
QmVTZW50KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpZFJlY2VpdmVSZXNwb25zZShSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKICAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKGNvbnN0
IHVpbnQ4X3QqIGRhdGEsIGludCBkYXRhTGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZEZp
bmlzaExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICB2b2lk
IGRpZEZpbmlzaExvYWRpbmcoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKICAg
ICB2b2lkIGRpZEZhaWwoY29uc3QgUmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOwogICAgIHZvaWQg
bm90aWZ5SXNEb25lKGJvb2wpIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCmlu
ZGV4IDVkZDhiMzU2ODNkNTg4ZjFlN2Q3MmNiMTgxMjNjMjY2NzY1ZGU2MjMuLmJiMDVmMGVlNTI0
ZjU1NDcyMmUzZWFhN2VlNWRkMWIwZTFhNGU1ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3Mu
Y3BwCkBAIC0yMDYsNyArMjA2LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6ZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW8KICAgICBpZiAo
ZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6Ok5ldHdvcmtSZXNvdXJj
ZUxvYWRlcjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAgICAgICAgIFJFTEVBU0VfQVNTRVJU
KFJ1bkxvb3A6OmlzTWFpbigpKTsKICAgICAgICAgUkVMRUFTRV9BU1NFUlQoZGVjb2Rlci5kZXN0
aW5hdGlvbklEKCkpOwotICAgICAgICBpZiAoYXV0byogbG9hZGVyID0gbV9uZXR3b3JrUmVzb3Vy
Y2VMb2FkZXJzLmdldChkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRv
KiBsb2FkZXIgPSBtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuZ2V0KG1ha2VPYmplY3RJZGVudGlm
aWVyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpKQog
ICAgICAgICAgICAgbG9hZGVyLT5kaWRSZWNlaXZlTmV0d29ya1Jlc291cmNlTG9hZGVyTWVzc2Fn
ZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTQ1OSw3
ICs0NTksNyBAQCBOZXR3b3JrU2Vzc2lvbiogTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6
Om5ldHdvcmtTZXNzaW9uKCkKIAogVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVS
ZWZlcmVuY2U+PiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzb2x2ZUJsb2JSZWZl
cmVuY2VzKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiBsb2FkUGFyYW1ldGVy
cykKIHsKLSAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZXNvbHZlQmxvYlJl
ZmVyZW5jZXM6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdl
SUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0
ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJv
eHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9h
ZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlm
aWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJyZXNvbHZlQmxvYlJl
ZmVyZW5jZXM6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdl
SUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0
ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJv
eHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9h
ZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlm
aWVyLnRvVUludDY0KCkpOwogCiAgICAgYXV0byogc2Vzc2lvbiA9IG5ldHdvcmtTZXNzaW9uKCk7
CiAgICAgaWYgKCFzZXNzaW9uKQpAQCAtNDg4LDcgKzQ4OCw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxT
ZXJ2aWNlV29ya2VyRmV0Y2hUYXNrPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y3Jl
YXRlRmV0CiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnNjaGVkdWxlUmVz
b3VyY2VMb2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMs
IHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IGV4aXN0aW5nTG9h
ZGVyVG9SZXN1bWUpCiB7Ci0gICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic2No
ZWR1bGVSZXNvdXJjZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIsIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9JSIgUFJJdTY0ICIpIiwgbG9hZFBh
cmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLCBleGlzdGlu
Z0xvYWRlclRvUmVzdW1lLnZhbHVlX29yKE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHsg
fSkudG9VSW50NjQoKSk7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAic2No
ZWR1bGVSZXNvdXJjZUxvYWQ6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAi
LCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9
JSIgUFJJdTY0ICIsIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWU9JSIgUFJJdTY0ICIpIiwgbG9hZFBh
cmFtZXRlcnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2
NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0
KCksIGV4aXN0aW5nTG9hZGVyVG9SZXN1bWUudmFsdWVfb3IoTmV0d29ya1Jlc291cmNlTG9hZElk
ZW50aWZpZXIgeyB9KS50b1VJbnQ2NCgpKTsKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikK
ICAgICBhdXRvJiBzZXJ2ZXIgPSBtX25ldHdvcmtQcm9jZXNzLT5zd1NlcnZlckZvclNlc3Npb24o
bV9zZXNzaW9uSUQpOwpAQCAtNTMyLDcgKzUzMiw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OnNjaGVkdWxlUmVzb3VyY2VMb2FkKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
CiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnBlcmZvcm1TeW5jaHJvbm91
c0xvYWQoTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycywgTWVz
c2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpQZXJmb3JtU3luY2hyb25vdXNM
b2FkOjpEZWxheWVkUmVwbHkmJiByZXBseSkKIHsKLSAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9H
KExvYWRpbmcsICJwZXJmb3JtU3luY2hyb25vdXNMb2FkOiAocGFyZW50UElEPSVkLCBwYWdlUHJv
eHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2
NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiKSIsIGxvYWRQYXJhbWV0ZXJzLnBhcmVudFBJRCwg
bG9hZFBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMu
d2ViUGFnZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQo
KSwgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xP
RyhMb2FkaW5nLCAicGVyZm9ybVN5bmNocm9ub3VzTG9hZDogKHBhcmVudFBJRD0lZCwgcGFnZVBy
b3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1
NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQs
IGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJz
LndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0
KCksIGxvYWRQYXJhbWV0ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBhdXRvIGlk
ZW50aWZpZXIgPSBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyOwogICAgIFJFTEVBU0VfQVNTRVJU
KGlkZW50aWZpZXIpOwpAQCAtNTU0LDcgKzU1NCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OnRlc3RQcm9jZXNzSW5jb21pbmdTeW5jTWVzc2FnZXNXaGVuV2FpdGluZ0Zv
CiAKIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmxvYWRQaW5nKE5ldHdvcmtS
ZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYgbG9hZFBhcmFtZXRlcnMpCiB7Ci0gICAgQ09OTkVDVElP
Tl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAibG9hZFBpbmc6IChwYXJlbnRQSUQ9JWQsIHBhZ2VQcm94
eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0
ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50UElELCBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53
ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2NCgp
LCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBDT05ORUNUSU9OX1JFTEVBU0VfTE9H
KExvYWRpbmcsICJsb2FkUGluZzogKHBhcmVudFBJRD0lZCwgcGFnZVByb3h5SUQ9JSIgUFJJdTY0
ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJ
RD0lIiBQUkl1NjQgIikiLCBsb2FkUGFyYW1ldGVycy5wYXJlbnRQSUQsIGxvYWRQYXJhbWV0ZXJz
LndlYlBhZ2VQcm94eUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJ
bnQ2NCgpLCBsb2FkUGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0KCksIGxvYWRQYXJhbWV0
ZXJzLmlkZW50aWZpZXIudG9VSW50NjQoKSk7CiAKICAgICBhdXRvIGNvbXBsZXRpb25IYW5kbGVy
ID0gW2Nvbm5lY3Rpb24gPSBtX2Nvbm5lY3Rpb24sIGlkZW50aWZpZXIgPSBsb2FkUGFyYW1ldGVy
cy5pZGVudGlmaWVyXSAoY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IsIGNvbnN0IFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlKSB7CiAgICAgICAgIGNvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6
Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6RGlkRmluaXNoUGluZ0xvYWQoaWRlbnRpZmllciwg
ZXJyb3IsIHJlc3BvbnNlKSwgMCk7CkBAIC01NzQsNyArNTc0LDcgQEAgdm9pZCBOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6Y29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChIVFRQQ29va2ll
QWNjZXB0UG8KICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbjo6Q29va2llQWNjZXB0UG9saWN5Q2hhbmdlZChuZXdQb2xpY3kpLCAwKTsKIH0K
IAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZp
ZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKQordm9pZCBOZXR3b3JrQ29ubmVj
dGlvblRvV2ViUHJvY2Vzczo6cmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoaWRlbnRp
Zmllcik7CiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwpAQCAtNTg3LDcg
KzU4Nyw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnJlbW92ZUxvYWRJ
ZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIKIAogICAgIC8vIEFib3J0IHRoZSBsb2Fk
IG5vdywgYXMgdGhlIFdlYlByb2Nlc3Mgd29uJ3QgYmUgYWJsZSB0byByZXNwb25kIHRvIG1lc3Nh
Z2VzIGFueSBtb3JlIHdoaWNoIG1pZ2h0IGxlYWQKICAgICAvLyB0byBsZWFrZWQgbG9hZGVyIHJl
c291cmNlcyAoY29ubmVjdGlvbnMsIHRocmVhZHMsIGV0YykuCi0gICAgQ09OTkVDVElPTl9SRUxF
QVNFX0xPRyhMb2FkaW5nLCAicmVtb3ZlTG9hZElkZW50aWZpZXI6IFJlbW92aW5nIGlkZW50aWZp
ZXIgJSIgUFJJdTY0ICIgYW5kIGFib3J0aW5nIGNvcnJlc3BvbmRpbmcgbG9hZGVyIiwgaWRlbnRp
Zmllcik7CisgICAgQ09OTkVDVElPTl9SRUxFQVNFX0xPRyhMb2FkaW5nLCAicmVtb3ZlTG9hZElk
ZW50aWZpZXI6IFJlbW92aW5nIGlkZW50aWZpZXIgJSIgUFJJdTY0ICIgYW5kIGFib3J0aW5nIGNv
cnJlc3BvbmRpbmcgbG9hZGVyIiwgaWRlbnRpZmllci50b1VJbnQ2NCgpKTsKICAgICBsb2FkZXIt
PmFib3J0KCk7CiAgICAgQVNTRVJUKCFtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuY29udGFpbnMo
aWRlbnRpZmllcikpOwogfQpAQCAtNjI3LDkgKzYyNyw5IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M6OnNlbmRIMlBpbmcoTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMm
JiBwCiAjZW5kaWYKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJl
Y29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVy
LCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyYmIGxvYWRQYXJhbWV0ZXJzKQordm9pZCBO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cHJlY29ubmVjdFRvKHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBwcmVjb25uZWN0aW9uSWRlbnRpZmll
ciwgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmJiBsb2FkUGFyYW1ldGVycykKIHsKLSAg
ICBDT05ORUNUSU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJwcmVjb25uZWN0VG86IChwYXJlbnRQ
SUQ9JWQsIHBhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZy
YW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRl
cnMucGFyZW50UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJh
bWVJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyKTsKKyAgICBDT05ORUNU
SU9OX1JFTEVBU0VfTE9HKExvYWRpbmcsICJwcmVjb25uZWN0VG86IChwYXJlbnRQSUQ9JWQsIHBh
Z2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQYWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIg
UFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJdTY0ICIpIiwgbG9hZFBhcmFtZXRlcnMucGFyZW50
UElELCBsb2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBsb2FkUGFyYW1l
dGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJ
bnQ2NCgpLCBsb2FkUGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCkpOwogCiAgICAgQVNT
RVJUKCFsb2FkUGFyYW1ldGVycy5yZXF1ZXN0Lmh0dHBCb2R5KCkpOwogCkBAIC02NTcsMTIgKzY1
NywxMiBAQCB2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpwcmVjb25uZWN0VG8o
c3RkOjpvcHRpb25hbDx1aW50NjRfdD4gcHJlY29ubgogICAgIGNvbXBsZXRpb25IYW5kbGVyKGlu
dGVybmFsRXJyb3IobG9hZFBhcmFtZXRlcnMucmVxdWVzdC51cmwoKSkpOwogfQogCi12b2lkIE5l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjppc1Jlc291cmNlTG9hZEZpbmlzaGVkKHVpbnQ2
NF90IGxvYWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmIGNhbGxi
YWNrKQordm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6aXNSZXNvdXJjZUxvYWRG
aW5pc2hlZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgbG9hZElkZW50aWZpZXIs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spCiB7CiAgICAgY2FsbGJh
Y2soIW1fbmV0d29ya1Jlc291cmNlTG9hZGVycy5jb250YWlucyhsb2FkSWRlbnRpZmllcikpOwog
fQogCi12b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpkaWRGaW5pc2hQcmVjb25u
ZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVy
cm9yJiBlcnJvcikKK3ZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmRpZEZpbmlz
aFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5l
Y3Rpb25JZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAgICBpZiAo
IW1fY29ubmVjdGlvbi0+aXNWYWxpZCgpKQogICAgICAgICByZXR1cm47CkBAIC02ODMsNyArNjgz
LDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RhcnREb3dubG9hZChE
b3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFIKICAgICBtX25ldHdvcmtQcm9jZXNzLT5kb3du
bG9hZE1hbmFnZXIoKS5zdGFydERvd25sb2FkKG1fc2Vzc2lvbklELCBkb3dubG9hZElELCByZXF1
ZXN0LCBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluLCBzdWdnZXN0ZWROYW1lKTsKIH0KIAot
dm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y29udmVydE1haW5SZXNvdXJjZUxv
YWRUb0Rvd25sb2FkKHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBEb3dubG9h
ZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91
bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4pCit2b2lkIE5ldHdvcmtDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzOjpjb252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoc3Rk
OjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJj
ZUxvYWRJZGVudGlmaWVyLCBEb3dubG9hZElEIGRvd25sb2FkSUQsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIHN0ZDo6b3B0
aW9uYWw8TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4pCiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogCkBAIC02
OTMsNyArNjkzLDcgQEAgdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6Y29udmVy
dE1haW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKHVpbnQ2NF90IG0KICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRlciogbG9hZGVyID0gbV9uZXR3b3JrUmVz
b3VyY2VMb2FkZXJzLmdldChtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgTmV0d29y
a1Jlc291cmNlTG9hZGVyKiBsb2FkZXIgPSBtX25ldHdvcmtSZXNvdXJjZUxvYWRlcnMuZ2V0KCpt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CiAgICAgaWYgKCFsb2FkZXIpIHsKICAgICAgICAg
Ly8gSWYgd2UncmUgdHJ5aW5nIHRvIGRvd25sb2FkIGEgYmxvYiBoZXJlIGxvYWRlciBjYW4gYmUg
bnVsbC4KICAgICAgICAgcmV0dXJuOwpAQCAtMTAyOSw3ICsxMDI5LDcgQEAgdm9pZCBOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2Vzczo6cmVzZXRPcmlnaW5BY2Nlc3NBbGxvd0xpc3RzKCkKICAg
ICBTZWN1cml0eVBvbGljeTo6cmVzZXRPcmlnaW5BY2Nlc3NBbGxvd2xpc3RzKCk7CiB9CiAKLXN0
ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQoUGFnZUlkZW50aWZpZXIgcGFnZUlE
LCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wgaXNUb3BSZXNvdXJjZSkK
K3N0ZDo6b3B0aW9uYWw8TmV0d29ya0FjdGl2aXR5VHJhY2tlcj4gTmV0d29ya0Nvbm5lY3Rpb25U
b1dlYlByb2Nlc3M6OnN0YXJ0VHJhY2tpbmdSZXNvdXJjZUxvYWQoUGFnZUlkZW50aWZpZXIgcGFn
ZUlELCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgYm9vbCBp
c1RvcFJlc291cmNlKQogewogICAgIGlmIChtX3Nlc3Npb25JRC5pc0VwaGVtZXJhbCgpKQogICAg
ICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwpAQCAtMTA4MCw3ICsxMDgwLDcgQEAgc3RkOjpvcHRp
b25hbDxOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
czo6c3RhcnRUcmFja2kKICAgICByZXR1cm4gbmV3QWN0aXZpdHlUcmFja2VyLm5ldHdvcmtBY3Rp
dml0eTsKIH0KIAotdm9pZCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6c3RvcFRyYWNr
aW5nUmVzb3VyY2VMb2FkKFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29y
a0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxldGlvbkNvZGUgY29kZSkKK3ZvaWQgTmV0d29ya0Nvbm5l
Y3Rpb25Ub1dlYlByb2Nlc3M6OnN0b3BUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6
Q29tcGxldGlvbkNvZGUgY29kZSkKIHsKICAgICBhdXRvIGl0ZW1JbmRleCA9IGZpbmROZXR3b3Jr
QWN0aXZpdHlUcmFja2VyKHJlc291cmNlSUQpOwogICAgIGlmIChpdGVtSW5kZXggPT0gbm90Rm91
bmQpCkBAIC0xMTE3LDcgKzExMTcsNyBAQCBzaXplX3QgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3M6OmZpbmRSb290TmV0d29ya0FjdGl2aXR5KFBhZ2VJZGVudGlmaWVyIHBhZwogICAgIH0p
OwogfQogCi1zaXplX3QgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OmZpbmROZXR3b3Jr
QWN0aXZpdHlUcmFja2VyKFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCkKK3NpemVf
dCBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6ZmluZE5ldHdvcmtBY3Rpdml0eVRyYWNr
ZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQpCiB7CiAgICAg
cmV0dXJuIG1fbmV0d29ya0FjdGl2aXR5VHJhY2tlcnMuZmluZE1hdGNoaW5nKFsmXShjb25zdCBh
dXRvJiBpdGVtKSB7CiAgICAgICAgIHJldHVybiBpdGVtLnJlc291cmNlSUQgPT0gcmVzb3VyY2VJ
RDsKQEAgLTEyNjgsNyArMTI2OCw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nl
c3M6OnNldFJlc291cmNlTG9hZFNjaGVkdWxpbmdNb2RlKFdlYkNvcmU6OlBhZ2VJCiAgICAgc2Vz
c2lvbi0+bmV0d29ya0xvYWRTY2hlZHVsZXIoKS5zZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9k
ZShwYWdlSWRlbnRpZmllciwgbW9kZSk7CiB9CiAKLXZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OnByaW9yaXRpemVSZXNvdXJjZUxvYWRzKFZlY3RvcjxSZXNvdXJjZUxvYWRJZGVu
dGlmaWVyPiBsb2FkSWRlbnRpZmllcnMpCit2b2lkIE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzOjpwcmlvcml0aXplUmVzb3VyY2VMb2Fkcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyPiYgbG9hZElkZW50aWZpZXJzKQogewogICAgIGF1dG8qIHNlc3Np
b24gPSBuZXR3b3JrU2Vzc2lvbigpOwogICAgIGlmICghc2Vzc2lvbikKQEAgLTEyODUsNyArMTI4
NSw3IEBAIHZvaWQgTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnByaW9yaXRpemVSZXNv
dXJjZUxvYWRzKFZlY3RvcjxSZXNvdXJjZUxvYWRJCiAgICAgc2Vzc2lvbi0+bmV0d29ya0xvYWRT
Y2hlZHVsZXIoKS5wcmlvcml0aXplTG9hZHMobG9hZHMpOwogfQogCi1SZWZQdHI8TmV0d29ya1Jl
c291cmNlTG9hZGVyPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6dGFrZU5ldHdvcmtS
ZXNvdXJjZUxvYWRlcih1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKQorUmVmUHRyPE5l
dHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6OnRha2VO
ZXR3b3JrUmVzb3VyY2VMb2FkZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJl
c291cmNlTG9hZElkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFOZXR3b3JrUmVzb3VyY2VMb2FkTWFw
OjpNYXBUeXBlOjppc1ZhbGlkS2V5KHJlc291cmNlTG9hZElkZW50aWZpZXIpKQogICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MuaAppbmRleCBlOThhMmU1ZGExNWY2
YjA4ZGQyNTBiZTk4YjZmOGZhYjUzMzQxYTRjLi5kMTYxY2Y5NmM0YzVkOWFkMTMwOTQ5NjJlMTk5
MWE1ZjRlZmQ4MGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5oCkBAIC04Nyw3ICs4Nyw2IEBA
IGNsYXNzIE5ldHdvcmtTb2NrZXRTdHJlYW07CiBjbGFzcyBTZXJ2aWNlV29ya2VyRmV0Y2hUYXNr
OwogY2xhc3MgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOwogY2xhc3MgV2ViU1dTZXJ2ZXJUb0NvbnRl
eHRDb25uZWN0aW9uOwotdHlwZWRlZiB1aW50NjRfdCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyOwog
CiBuYW1lc3BhY2UgTmV0d29ya0NhY2hlIHsKIHN0cnVjdCBEYXRhS2V5OwpAQCAtMTI1LDM0ICsx
MjQsMzQgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYW51cEZvclN1c3BlbnNpb24oRnVuY3Rpb248
dm9pZCgpPiYmKTsKICAgICB2b2lkIGVuZFN1c3BlbnNpb24oKTsKIAotICAgIHZvaWQgZ2V0TmV0
d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRp
ZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3Bv
bnNlJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgdm9pZCBnZXROZXR3b3JrTG9hZEluZm9y
bWF0aW9uUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogICAgIHsKICAgICAgICAgaWYgKGF1dG8qIGluZm8g
PSBtX25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmdldChpZGVudGlmaWVyKSkKICAgICAgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihpbmZvLT5yZXNwb25zZSk7CiAgICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKHsgfSk7CiAgICAgfQogCi0gICAgdm9pZCBnZXROZXR3b3JrTG9hZElu
dGVybWVkaWF0ZUluZm9ybWF0aW9uKFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5z
YWN0aW9uSW5mb3JtYXRpb24+Jik+JiYgY29tcGxldGlvbkhhbmRsZXIpCisgICAgdm9pZCBnZXRO
ZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFZlY3Rv
cjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4mKT4mJiBjb21wbGV0aW9u
SGFuZGxlcikKICAgICB7CiAgICAgICAgIGlmIChhdXRvKiBpbmZvID0gbV9uZXR3b3JrTG9hZElu
Zm9ybWF0aW9uQnlJRC5nZXQoaWRlbnRpZmllcikpCiAgICAgICAgICAgICByZXR1cm4gY29tcGxl
dGlvbkhhbmRsZXIoaW5mby0+dHJhbnNhY3Rpb25zKTsKICAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoeyB9KTsKICAgICB9CiAKLSAgICB2b2lkIHRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0
cmljcyhSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCisgICAgdm9pZCB0YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3MoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJik+JiYgY29tcGxldGlvbkhh
bmRsZXIpCiAgICAgewogICAgICAgICBpZiAoYXV0byBpbmZvID0gbV9uZXR3b3JrTG9hZEluZm9y
bWF0aW9uQnlJRC50YWtlKGlkZW50aWZpZXIpKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRp
b25IYW5kbGVyKGluZm8tPm1ldHJpY3MpOwogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0p
OwogICAgIH0KIAotICAgIHZvaWQgYWRkTmV0d29ya0xvYWRJbmZvcm1hdGlvbihSZXNvdXJjZUxv
YWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24m
JiBpbmZvcm1hdGlvbikKKyAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb24oV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6Ok5ldHdvcmtM
b2FkSW5mb3JtYXRpb24mJiBpbmZvcm1hdGlvbikKICAgICB7CiAgICAgICAgIEFTU0VSVCghbV9u
ZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5jb250YWlucyhpZGVudGlmaWVyKSk7CiAgICAgICAg
IG1fbmV0d29ya0xvYWRJbmZvcm1hdGlvbkJ5SUQuYWRkKGlkZW50aWZpZXIsIG1ha2VVbmlxdWU8
V2ViQ29yZTo6TmV0d29ya0xvYWRJbmZvcm1hdGlvbj4oV1RGTW92ZShpbmZvcm1hdGlvbikpKTsK
ICAgICB9CiAKLSAgICB2b2lkIGFkZE5ldHdvcmtMb2FkSW5mb3JtYXRpb25NZXRyaWNzKFJlc291
cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRN
ZXRyaWNzJiBtZXRyaWNzKQorICAgIHZvaWQgYWRkTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJp
Y3MoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyYgbWV0cmljcykKICAgICB7CiAgICAgICAgIEFTU0VS
VChtX25ldHdvcmtMb2FkSW5mb3JtYXRpb25CeUlELmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKICAg
ICAgICAgbV9uZXR3b3JrTG9hZEluZm9ybWF0aW9uQnlJRC5lbnN1cmUoaWRlbnRpZmllciwgW10g
ewpAQCAtMTYwLDEzICsxNTksMTMgQEAgcHVibGljOgogICAgICAgICB9KS5pdGVyYXRvci0+dmFs
dWUtPm1ldHJpY3MgPSBtZXRyaWNzOwogICAgIH0KIAotICAgIHZvaWQgcmVtb3ZlTmV0d29ya0xv
YWRJbmZvcm1hdGlvbihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIpCisgICAgdm9p
ZCByZW1vdmVOZXR3b3JrTG9hZEluZm9ybWF0aW9uKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciBpZGVudGlmaWVyKQogICAgIHsKICAgICAgICAgbV9uZXR3b3JrTG9hZEluZm9ybWF0
aW9uQnlJRC5yZW1vdmUoaWRlbnRpZmllcik7CiAgICAgfQogCi0gICAgc3RkOjpvcHRpb25hbDxO
ZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBzdGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFdlYkNvcmU6
OlBhZ2VJZGVudGlmaWVyLCBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQsIGJvb2wg
aXNUb3BSZXNvdXJjZSk7Ci0gICAgdm9pZCBzdG9wVHJhY2tpbmdSZXNvdXJjZUxvYWQoUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlELCBOZXR3b3JrQWN0aXZpdHlUcmFja2VyOjpDb21w
bGV0aW9uQ29kZSk7CisgICAgc3RkOjpvcHRpb25hbDxOZXR3b3JrQWN0aXZpdHlUcmFja2VyPiBz
dGFydFRyYWNraW5nUmVzb3VyY2VMb2FkKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgYm9vbCBpc1RvcFJlc291cmNl
KTsKKyAgICB2b2lkIHN0b3BUcmFja2luZ1Jlc291cmNlTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRCwgTmV0d29ya0FjdGl2aXR5VHJhY2tlcjo6Q29tcGxl
dGlvbkNvZGUpOwogCiAgICAgVmVjdG9yPFJlZlB0cjxXZWJDb3JlOjpCbG9iRGF0YUZpbGVSZWZl
cmVuY2U+PiByZXNvbHZlQmxvYlJlZmVyZW5jZXMoY29uc3QgTmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMmKTsKIApAQCAtMTg3LDEyICsxODYsMTIgQEAgcHVibGljOgogICAgIHZvaWQgY29v
a2llQWNjZXB0UG9saWN5Q2hhbmdlZChXZWJDb3JlOjpIVFRQQ29va2llQWNjZXB0UG9saWN5KTsK
IAogICAgIHZvaWQgYnJvYWRjYXN0Q29uc29sZU1lc3NhZ2UoSlNDOjpNZXNzYWdlU291cmNlLCBK
U0M6Ok1lc3NhZ2VMZXZlbCwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKTsKLSAgICBSZWZQdHI8TmV0
d29ya1Jlc291cmNlTG9hZGVyPiB0YWtlTmV0d29ya1Jlc291cmNlTG9hZGVyKHVpbnQ2NF90IHJl
c291cmNlTG9hZElkZW50aWZpZXIpOworICAgIFJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+
IHRha2VOZXR3b3JrUmVzb3VyY2VMb2FkZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyKTsKIAogcHJpdmF0ZToKICAgICBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyhOZXR3
b3JrUHJvY2VzcyYsIFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyLCBQQUw6OlNlc3Npb25JRCwg
SVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKIAotICAgIHZvaWQgZGlkRmluaXNoUHJlY29u
bmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYpOworICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKICAgICBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb24qIHN0b3JhZ2VTZXNzaW9uKCk7CiAKICAgICAvLyBJUEM6OkNvbm5lY3Rpb246OkNsaWVu
dApAQCAtMjExLDE1ICsyMTAsMTUgQEAgcHJpdmF0ZToKICAgICB2b2lkIGxvYWRQaW5nKE5ldHdv
cmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgcHJlZmV0Y2hETlMoY29uc3Qg
U3RyaW5nJik7CiAgICAgdm9pZCBzZW5kSDJQaW5nKE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwZWN0ZWQ8V1RGOjpTZWNvbmRzLCBXZWJD
b3JlOjpSZXNvdXJjZUVycm9yPiYmKT4mJik7Ci0gICAgdm9pZCBwcmVjb25uZWN0VG8oc3RkOjpv
cHRpb25hbDx1aW50NjRfdD4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIE5ldHdvcmtSZXNvdXJj
ZUxvYWRQYXJhbWV0ZXJzJiYpOwotICAgIHZvaWQgaXNSZXNvdXJjZUxvYWRGaW5pc2hlZCh1aW50
NjRfdCBsb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7Cisg
ICAgdm9pZCBwcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBOZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycyYmKTsKKyAgICB2b2lkIGlzUmVzb3VyY2VMb2FkRmluaXNoZWQoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYm
KTsKIAotICAgIHZvaWQgcmVtb3ZlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkSWRlbnRpZmll
cik7CisgICAgdm9pZCByZW1vdmVMb2FkSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpOwogICAgIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXIpOwogICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlm
aWVyKTsKLSAgICB2b2lkIGNyb3NzT3JpZ2luUmVkaXJlY3RSZWNlaXZlZChSZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCBjb25zdCBVUkwmIHJlZGlyZWN0VVJMKTsKKyAgICB2b2lkIGNyb3NzT3JpZ2lu
UmVkaXJlY3RSZWNlaXZlZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0
IFVSTCYgcmVkaXJlY3RVUkwpOwogICAgIHZvaWQgc3RhcnREb3dubG9hZChEb3dubG9hZElELCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdU
b0FwcEJvdW5kRG9tYWluPiwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWROYW1lID0geyB9KTsKLSAg
ICB2b2lkIGNvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgRG93bmxvYWRJRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIHN0ZDo6b3B0aW9uYWw8
TmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4+KTsKKyAgICB2b2lkIGNvbnZlcnRNYWluUmVzb3Vy
Y2VMb2FkVG9Eb3dubG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIERvd25sb2FkSUQsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
LCBzdGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPik7CiAKICAgICB2b2lk
IHJlZ2lzdGVyVVJMU2NoZW1lc0FzQ09SU0VuYWJsZWQoVmVjdG9yPFN0cmluZz4mJiBzY2hlbWVz
KTsKIApAQCAtMzI3LDcgKzMyNiw3IEBAIHByaXZhdGU6CiAgICAgICAgIHsKICAgICAgICAgfQog
Ci0gICAgICAgIFJlc291cmNlTmV0d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpQYWdlSWRl
bnRpZmllciBwYWdlSUQsIFJlc291cmNlTG9hZElkZW50aWZpZXIgcmVzb3VyY2VJRCkKKyAgICAg
ICAgUmVzb3VyY2VOZXR3b3JrQWN0aXZpdHlUcmFja2VyKFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVy
IHBhZ2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlSUQpCiAg
ICAgICAgICAgICA6IHBhZ2VJRCB7IHBhZ2VJRCB9CiAgICAgICAgICAgICAsIHJlc291cmNlSUQg
eyByZXNvdXJjZUlEIH0KICAgICAgICAgICAgICwgbmV0d29ya0FjdGl2aXR5IHsgTmV0d29ya0Fj
dGl2aXR5VHJhY2tlcjo6TGFiZWw6OkxvYWRSZXNvdXJjZSB9CkBAIC0zMzUsNyArMzM0LDcgQEAg
cHJpdmF0ZToKICAgICAgICAgfQogCiAgICAgICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBh
Z2VJRDsKLSAgICAgICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciByZXNvdXJjZUlEIHsgMCB9Owor
ICAgICAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VJRDsKICAg
ICAgICAgYm9vbCBpc1Jvb3RBY3Rpdml0eSB7IGZhbHNlIH07CiAgICAgICAgIE5ldHdvcmtBY3Rp
dml0eVRyYWNrZXIgbmV0d29ya0FjdGl2aXR5OwogICAgIH07CkBAIC0zNDMsMTIgKzM0MiwxMiBA
QCBwcml2YXRlOgogICAgIHZvaWQgc3RvcEFsbE5ldHdvcmtBY3Rpdml0eVRyYWNraW5nKCk7CiAg
ICAgdm9pZCBzdG9wQWxsTmV0d29ya0FjdGl2aXR5VHJhY2tpbmdGb3JQYWdlKFdlYkNvcmU6OlBh
Z2VJZGVudGlmaWVyKTsKICAgICBzaXplX3QgZmluZFJvb3ROZXR3b3JrQWN0aXZpdHkoV2ViQ29y
ZTo6UGFnZUlkZW50aWZpZXIpOwotICAgIHNpemVfdCBmaW5kTmV0d29ya0FjdGl2aXR5VHJhY2tl
cihSZXNvdXJjZUxvYWRJZGVudGlmaWVyIHJlc291cmNlSUQpOworICAgIHNpemVfdCBmaW5kTmV0
d29ya0FjdGl2aXR5VHJhY2tlcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVz
b3VyY2VJRCk7CiAKICAgICB2b2lkIGhhc1VwbG9hZFN0YXRlQ2hhbmdlZChib29sKTsKIAogICAg
IHZvaWQgc2V0UmVzb3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZUlkZW50aWZp
ZXIsIFdlYkNvcmU6OkxvYWRTY2hlZHVsaW5nTW9kZSk7Ci0gICAgdm9pZCBwcmlvcml0aXplUmVz
b3VyY2VMb2FkcyhWZWN0b3I8UmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pOworICAgIHZvaWQgcHJp
b3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcj4mKTsKIAogI2lmIEVOQUJMRShBUFBMRV9QQVlfUkVNT1RFX1VJKQogICAgIFdl
YlBheW1lbnRDb29yZGluYXRvclByb3h5JiBwYXltZW50Q29vcmRpbmF0b3IoKTsKQEAgLTM3NSw3
ICszNzQsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8V2ViQ29yZTo6
QmxvYkRhdGFGaWxlUmVmZXJlbmNlPj4gbV9ibG9iRGF0YUZpbGVSZWZlcmVuY2VzOwogICAgIFZl
Y3RvcjxSZXNvdXJjZU5ldHdvcmtBY3Rpdml0eVRyYWNrZXI+IG1fbmV0d29ya0FjdGl2aXR5VHJh
Y2tlcnM7CiAKLSAgICBIYXNoTWFwPFJlc291cmNlTG9hZElkZW50aWZpZXIsIHN0ZDo6dW5pcXVl
X3B0cjxXZWJDb3JlOjpOZXR3b3JrTG9hZEluZm9ybWF0aW9uPj4gbV9uZXR3b3JrTG9hZEluZm9y
bWF0aW9uQnlJRDsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
ciwgc3RkOjp1bmlxdWVfcHRyPFdlYkNvcmU6Ok5ldHdvcmtMb2FkSW5mb3JtYXRpb24+PiBtX25l
dHdvcmtMb2FkSW5mb3JtYXRpb25CeUlEOwogCiAKICNpZiBVU0UoTElCV0VCUlRDKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrQ29ubmVjdGlvblRvV2Vi
UHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KaW5kZXggMTVkYTZhYmZjNTM4Njlm
ZDQzODYyNDc2OTZmZWE1MTFiNmE5ZGI5Mi4uNzY4MmJhOWJiMjlmZjZmMDhlYmViYjk0M2ZjODk0
NTQ2NzM0YzJlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzLm1lc3NhZ2VzLmlu
CkBAIC0yNiwxNiArMjYsMTYgQEAgbWVzc2FnZXMgLT4gTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlBy
b2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFBlcmZvcm1TeW5jaHJvbm91c0xvYWQoV2ViS2l0
OjpOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyByZXNvdXJjZUxvYWRQYXJhbWV0ZXJzKSAt
PiAoV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJvciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+IGRhdGEpIFN5bmNocm9ub3VzCiAgICAgVGVzdFBy
b2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1doZW5XYWl0aW5nRm9yU3luY1JlcGx5KFdlYktpdDo6
V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQpIC0+IChib29sIGhhbmRsZWQpIFN5bmNocm9u
b3VzCiAgICAgTG9hZFBpbmcoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycyBy
ZXNvdXJjZUxvYWRQYXJhbWV0ZXJzKQotICAgIFJlbW92ZUxvYWRJZGVudGlmaWVyKHVpbnQ2NF90
IHJlc291cmNlTG9hZElkZW50aWZpZXIpCisgICAgUmVtb3ZlTG9hZElkZW50aWZpZXIoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9hZElkZW50aWZpZXIpCiAgICAg
UGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgd2ViUGFnZUlEKQogICAg
IEJyb3dzaW5nQ29udGV4dFJlbW92ZWQoV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHdl
YlBhZ2VQcm94eUlELCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIFdlYkNvcmU6
OkZyYW1lSWRlbnRpZmllciB3ZWJGcmFtZUlEKQogICAgIFByZWZldGNoRE5TKFN0cmluZyBob3N0
bmFtZSkKICAgICBTZW5kSDJQaW5nKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRl
cnMgcGFyYW1ldGVycykgLT4gKEV4cGVjdGVkPFNlY29uZHMsIFdlYkNvcmU6OlJlc291cmNlRXJy
b3I+IHJlc3VsdCkgQXN5bmMKLSAgICBQcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4gcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBh
cmFtZXRlcnMgbG9hZFBhcmFtZXRlcnMpOwotICAgIElzUmVzb3VyY2VMb2FkRmluaXNoZWQodWlu
dDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKGJvb2wgaXNGaW5pc2hlZCkgQXN5bmMK
KyAgICBQcmVjb25uZWN0VG8oc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXI+IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJj
ZUxvYWRQYXJhbWV0ZXJzIGxvYWRQYXJhbWV0ZXJzKTsKKyAgICBJc1Jlc291cmNlTG9hZEZpbmlz
aGVkKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlm
aWVyKSAtPiAoYm9vbCBpc0ZpbmlzaGVkKSBBc3luYwogCiAgICAgU3RhcnREb3dubG9hZChXZWJL
aXQ6OkRvd25sb2FkSUQgZG93bmxvYWRJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHJlcXVl
c3QsIGVudW06Ym9vbCBzdGQ6Om9wdGlvbmFsPFdlYktpdDo6TmF2aWdhdGluZ1RvQXBwQm91bmRE
b21haW4+IGlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4sIFN0cmluZyBzdWdnZXN0ZWROYW1l
KQotICAgIENvbnZlcnRNYWluUmVzb3VyY2VMb2FkVG9Eb3dubG9hZCh1aW50NjRfdCBtYWluUmVz
b3VyY2VMb2FkSWRlbnRpZmllciwgV2ViS2l0OjpEb3dubG9hZElEIGRvd25sb2FkSUQsIFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlLCBlbnVtOmJvb2wgc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5hdmlnYXRpbmdUb0FwcEJv
dW5kRG9tYWluPiBpc05hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluKQorICAgIENvbnZlcnRNYWlu
UmVzb3VyY2VMb2FkVG9Eb3dubG9hZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIFdlYktpdDo6RG93bmxv
YWRJRCBkb3dubG9hZElELCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgZW51bTpib29sIHN0ZDo6b3B0aW9uYWw8V2Vi
S2l0OjpOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFpbj4gaXNOYXZpZ2F0aW5nVG9BcHBCb3VuZERv
bWFpbikKIAogICAgIENvb2tpZXNGb3JET00oVVJMIGZpcnN0UGFydHksIHN0cnVjdCBXZWJDb3Jl
OjpTYW1lU2l0ZUluZm8gc2FtZVNpdGVJbmZvLCBVUkwgdXJsLCBXZWJDb3JlOjpGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCwgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgcGFnZUlELCBlbnVtOmJvb2wg
V2ViQ29yZTo6SW5jbHVkZVNlY3VyZUNvb2tpZXMgaW5jbHVkZVNlY3VyZUNvb2tpZXMsIGVudW06
Ym9vbCBXZWJDb3JlOjpTaG91bGRBc2tJVFAgc2hvdWxkQXNrSVRQLCBlbnVtOmJvb2wgV2ViQ29y
ZTo6U2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcgc2hvdWxkUmVsYXhUaGlyZFBh
cnR5Q29va2llQmxvY2tpbmcpIC0+IChTdHJpbmcgY29va2llU3RyaW5nLCBib29sIGRpZEFjY2Vz
c1NlY3VyZUNvb2tpZXMpIFN5bmNocm9ub3VzCiAgICAgU2V0Q29va2llc0Zyb21ET00oVVJMIGZp
cnN0UGFydHksIHN0cnVjdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8gc2FtZVNpdGVJbmZvLCBVUkwg
dXJsLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgV2ViQ29yZTo6UGFnZUlkZW50
aWZpZXIgcGFnZUlELCBlbnVtOmJvb2wgV2ViQ29yZTo6U2hvdWxkQXNrSVRQIHNob3VsZEFza0lU
UCwgU3RyaW5nIGNvb2tpZVN0cmluZywgZW51bTpib29sIFdlYkNvcmU6OlNob3VsZFJlbGF4VGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nIHNob3VsZFJlbGF4VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5n
KQpAQCAtNzksOSArNzksOSBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgUmVtb3ZlT3JpZ2luQWNjZXNzQWxsb3dMaXN0RW50
cnkoU3RyaW5nIHNvdXJjZU9yaWdpbiwgU3RyaW5nIGRlc3RpbmF0aW9uUHJvdG9jb2wsIFN0cmlu
ZyBkZXN0aW5hdGlvbkhvc3QsIGJvb2wgYWxsb3dEZXN0aW5hdGlvblN1YmRvbWFpbnMpOwogICAg
IFJlc2V0T3JpZ2luQWNjZXNzQWxsb3dMaXN0cygpOwogCi0gICAgR2V0TmV0d29ya0xvYWRJbmZv
cm1hdGlvblJlc3BvbnNlKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpIC0+IChXZWJD
b3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKSBTeW5jaHJvbm91cwotICAgIEdldE5ldHdv
cmtMb2FkSW50ZXJtZWRpYXRlSW5mb3JtYXRpb24odWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRp
ZmllcikgLT4gKFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4g
dHJhbnNhY3Rpb25zKSBTeW5jaHJvbm91cwotICAgIFRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9u
TWV0cmljcyh1aW50NjRfdCByZXNvdXJjZUxvYWRJZGVudGlmaWVyKSAtPiAoV2ViQ29yZTo6TmV0
d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzKSBTeW5jaHJvbm91cworICAgIEdldE5ldHdv
cmtMb2FkSW5mb3JtYXRpb25SZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Ug
cmVzcG9uc2UpIFN5bmNocm9ub3VzCisgICAgR2V0TmV0d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZv
cm1hdGlvbihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2FkSWRl
bnRpZmllcikgLT4gKFZlY3RvcjxXZWJDb3JlOjpOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlv
bj4gdHJhbnNhY3Rpb25zKSBTeW5jaHJvbm91cworICAgIFRha2VOZXR3b3JrTG9hZEluZm9ybWF0
aW9uTWV0cmljcyhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcikgLT4gKFdlYkNvcmU6Ok5ldHdvcmtMb2FkTWV0cmljcyBuZXR3b3JrTWV0cmlj
cykgU3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBFc3RhYmxp
c2hTV0NvbnRleHRDb25uZWN0aW9uKFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmllciB3ZWJQ
YWdlUHJveHlJRCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gZG9tYWluKSAtPiAoKSBBc3lu
YwpAQCAtMTA4LDUgKzEwOCw1IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzIExlZ2FjeVJlY2VpdmVyIHsKICAgICBVcGRhdGVBY3RpdmVQYWdlcyhTdHJpbmcgbmFt
ZSwgVmVjdG9yPFN0cmluZz4gYWN0aXZlUGFnZXNPcmlnaW5zLCBhdWRpdF90b2tlbl90IGF1ZGl0
VG9rZW4pCiAjZW5kaWYKICAgICBTZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3Jl
OjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQsIGVudW06dWludDhfdCBXZWJDb3JlOjpMb2FkU2No
ZWR1bGluZ01vZGUgbW9kZSkKLSAgICBQcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0b3I8dWlu
dDY0X3Q+IGxvYWRJZGVudGlmaWVycykKKyAgICBQcmlvcml0aXplUmVzb3VyY2VMb2FkcyhWZWN0
b3I8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBsb2FkSWRlbnRpZmllcnMpCiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCmlu
ZGV4IDRkY2IzMmNkYjc1NzU2NGJmYjAyMzQ1NWY5ZmZjYmFhYjNkZjYxZmMuLmMzMzMyMDdhNzY2
NWIxYjNlNzQ2Yzk2OTI5MjY0YmFmZGY4Y2NjNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCkBAIC0yODQxLDkgKzI4NDEsMTIgQEAgUlRD
RGF0YUNoYW5uZWxSZW1vdGVNYW5hZ2VyUHJveHkmIE5ldHdvcmtQcm9jZXNzOjpydGNEYXRhQ2hh
bm5lbFByb3h5KCkKIH0KICNlbmRpZgogCi12b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlTG9h
ZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQ
cm9jZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlm
aWVyPik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJl
TG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3Vy
Y2VQcm9jZXNzSWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXI+IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewotICAgIEFTU0VSVChyZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKKyAg
ICBpZiAoIXJlc291cmNlTG9hZElkZW50aWZpZXIpIHsKKyAgICAgICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7CisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihzdGQ6Om51bGxvcHQpOwor
ICAgIH0KICAgICBhdXRvKiBjb25uZWN0aW9uID0gd2ViUHJvY2Vzc0Nvbm5lY3Rpb24oc291cmNl
UHJvY2Vzc0lkZW50aWZpZXIpOwogICAgIGlmICghY29ubmVjdGlvbikKICAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCk7CkBAIC0yODUyLDcgKzI4NTUsNyBAQCB2
b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2ZlcihXZWJD
b3JlOjpQcm9jZXNzSWRlbnRpZmllcgogICAgIGlmICghc2Vzc2lvbikKICAgICAgICAgcmV0dXJu
IGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCk7CiAKLSAgICBhdXRvIGxvYWRlciA9IGNv
bm5lY3Rpb24tPnRha2VOZXR3b3JrUmVzb3VyY2VMb2FkZXIocmVzb3VyY2VMb2FkSWRlbnRpZmll
cik7CisgICAgYXV0byBsb2FkZXIgPSBjb25uZWN0aW9uLT50YWtlTmV0d29ya1Jlc291cmNlTG9h
ZGVyKCpyZXNvdXJjZUxvYWRJZGVudGlmaWVyKTsKICAgICBpZiAoIWxvYWRlcikKICAgICAgICAg
cmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKHN0ZDo6bnVsbG9wdCk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaCBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAppbmRleCAxMDYwMjJjZTY4NTE5Nzgz
MGYyNjVhYWI2NTNkODRlMDBmODUxY2Q5Li5hNjRhMDFmZjRmYmQyYWVlMzY5Y2UzZDEzNWRlODc4
Yjk3NDQ1OWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJv
Y2Vzcy5oCkBAIC00MjMsNyArNDIzLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGRpZFJlY2VpdmVT
eW5jTmV0d29ya1Byb2Nlc3NNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYs
IFVuaXF1ZVJlZjxJUEM6OkVuY29kZXI+Jik7CiAgICAgdm9pZCBpbml0aWFsaXplTmV0d29ya1By
b2Nlc3MoTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmJik7CiAgICAgdm9pZCBjcmVh
dGVOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyhXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmll
ciwgUEFMOjpTZXNzaW9uSUQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxJ
UEM6OkF0dGFjaG1lbnQ+JiYsIFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQb2xpY3kpPiYmKTsK
LSAgICB2b2lkIHByZXBhcmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nl
c3NJZGVudGlmaWVyIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLCB1aW50NjRfdCByZXNvdXJjZUxv
YWRJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8TmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXI+KT4mJik7CisgICAgdm9pZCBwcmVwYXJlTG9hZEZvcldl
YlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNz
SWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXI+IHJlc291cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpv
cHRpb25hbDxOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmKTsKIAogICAgIHZvaWQg
ZmV0Y2hXZWJzaXRlRGF0YShQQUw6OlNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlw
ZT4sIE9wdGlvblNldDxXZWJzaXRlRGF0YUZldGNoT3B0aW9uPiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChXZWJzaXRlRGF0YSYmKT4mJik7CiAgICAgdm9pZCBkZWxldGVXZWJzaXRlRGF0YShQQUw6
OlNlc3Npb25JRCwgT3B0aW9uU2V0PFdlYnNpdGVEYXRhVHlwZT4sIFdhbGxUaW1lIG1vZGlmaWVk
U2luY2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCBk
NTk1ODkzNmZhZTExZWQ4YmIyYTM3M2E3ZDRmZjBiZDdmYjM0ZjUxLi45YWE5ZWFhOWYxMzFiMDFm
NjY5YjUzODg1MDAyMjZlNDM1MmExZDBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4KQEAgLTE5Niw3ICsxOTYs
NyBAQCBtZXNzYWdlcyAtPiBOZXR3b3JrUHJvY2VzcyBMZWdhY3lSZWNlaXZlciB7CiAgICAgQ2xl
YXJBcHBQcml2YWN5UmVwb3J0VGVzdGluZ0RhdGEoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKSAt
PiAoKSBBc3luYwogI2VuZGlmCiAKLSAgICBQcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zl
cihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9jZXNzSWRlbnRpZmllciwgdWlu
dDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgLT4gKHN0ZDo6b3B0aW9uYWw8V2ViS2l0OjpO
ZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4gbmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZp
ZXIpIEFzeW5jCisgICAgUHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiByZXNvdXJjZUxvYWRJZGVudGlmaWVy
KSAtPiAoc3RkOjpvcHRpb25hbDxXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
PiBuZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcikgQXN5bmMKIAogICAgIEFkZFdlYlBhZ2VO
ZXR3b3JrUGFyYW1ldGVycyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYktpdDo6V2ViUGFn
ZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIFdlYktpdDo6V2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJz
IHBhcmFtZXRlcnMpCiAgICAgUmVtb3ZlV2ViUGFnZU5ldHdvcmtQYXJhbWV0ZXJzKFBBTDo6U2Vz
c2lvbklEIHNlc3Npb25JRCwgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJRCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNl
TG9hZE1hcC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJj
ZUxvYWRNYXAuY3BwCmluZGV4IGRiOTdmNTUyZmVlN2EzODkxNjUxZjNiZGQ2ZTRhZGVlNjI0N2Ey
ZTkuLmY5YTJhYTIwZGI0MzkwNzZjNDRmMjAxYTZkYmRkYWJiM2Q3YzhjYmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZE1hcC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFw
LmNwcApAQCAtMzksNyArMzksNyBAQCBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp+TmV0d29ya1Jl
c291cmNlTG9hZE1hcCgpCiAgICAgY2xlYXIoKTsKIH0KIAotTmV0d29ya1Jlc291cmNlTG9hZE1h
cDo6TWFwVHlwZTo6QWRkUmVzdWx0IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmFkZChSZXNvdXJj
ZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+JiYg
bG9hZGVyKQorTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6TWFwVHlwZTo6QWRkUmVzdWx0IE5ldHdv
cmtSZXNvdXJjZUxvYWRNYXA6OmFkZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
aWRlbnRpZmllciwgUmVmPE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4mJiBsb2FkZXIpCiB7CiAgICAg
QVNTRVJUKCFtX2xvYWRlcnMuY29udGFpbnMoaWRlbnRpZmllcikpOwogICAgIGJvb2wgaGFzVXBs
b2FkID0gbG9hZGVyLT5vcmlnaW5hbFJlcXVlc3QoKS5oYXNVcGxvYWQoKTsKQEAgLTQ5LDcgKzQ5
LDcgQEAgTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6TWFwVHlwZTo6QWRkUmVzdWx0IE5ldHdvcmtS
ZXNvdXJjZUxvYWRNYXA6OmFkZChSZXNvdXJjZUwKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1i
b29sIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnJlbW92ZShSZXNvdXJjZUxvYWRJZGVudGlmaWVy
IGlkZW50aWZpZXIpCitib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnJlbW92ZShXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICByZXR1cm4gISF0
YWtlKGlkZW50aWZpZXIpOwogfQpAQCAtNjAsNyArNjAsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJj
ZUxvYWRNYXA6OmNsZWFyKCkKICAgICBzZXRIYXNVcGxvYWQoZmFsc2UpOwogfQogCi1SZWZQdHI8
TmV0d29ya1Jlc291cmNlTG9hZGVyPiBOZXR3b3JrUmVzb3VyY2VMb2FkTWFwOjp0YWtlKFJlc291
cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllcikKK1JlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2Fk
ZXI+IE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OnRha2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBsb2FkZXIgPSBtX2xvYWRlcnMudGFr
ZShpZGVudGlmaWVyKTsKICAgICBpZiAoIWxvYWRlcikKQEAgLTcyLDcgKzcyLDcgQEAgUmVmUHRy
PE5ldHdvcmtSZXNvdXJjZUxvYWRlcj4gTmV0d29ya1Jlc291cmNlTG9hZE1hcDo6dGFrZShSZXNv
dXJjZUxvYWRJZGVudGlmaWUKICAgICByZXR1cm4gbG9hZGVyOwogfQogCi1OZXR3b3JrUmVzb3Vy
Y2VMb2FkZXIqIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXA6OmdldChSZXNvdXJjZUxvYWRJZGVudGlm
aWVyIGlkZW50aWZpZXIpIGNvbnN0CitOZXR3b3JrUmVzb3VyY2VMb2FkZXIqIE5ldHdvcmtSZXNv
dXJjZUxvYWRNYXA6OmdldChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllcikgY29uc3QKIHsKICAgICByZXR1cm4gbV9sb2FkZXJzLmdldChpZGVudGlmaWVyKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNl
TG9hZE1hcC5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VM
b2FkTWFwLmgKaW5kZXggMGVmMjc4YzM0MDVjZGRlNmE4M2ZiZjBhYjcyZmZjNDdjMTRkMzExNy4u
NzE2MGRkZTFkNTdjMDBmMTVmYjRhYzM1ZTQxODJlM2VjYzk4NWIxOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmgKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkTWFwLmgKQEAg
LTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291
cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgogI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+CiAKQEAgLTM3LDI0ICszOCwyMiBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIGNsYXNzIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjsKIGNsYXNzIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzOwogCi10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7
Ci0KIGNsYXNzIE5ldHdvcmtSZXNvdXJjZUxvYWRNYXAgewogcHVibGljOgotICAgIHR5cGVkZWYg
SGFzaE1hcDxSZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBSZWY8TmV0d29ya1Jlc291cmNlTG9hZGVy
Pj4gTWFwVHlwZTsKKyAgICB1c2luZyBNYXBUeXBlID0gSGFzaE1hcDxXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+PjsKICAgICBOZXR3
b3JrUmVzb3VyY2VMb2FkTWFwKEZ1bmN0aW9uPHZvaWQoYm9vbCBoYXNVcGxvYWQpPiYmKTsKICAg
ICB+TmV0d29ya1Jlc291cmNlTG9hZE1hcCgpOwogCiAgICAgYm9vbCBpc0VtcHR5KCkgY29uc3Qg
eyByZXR1cm4gbV9sb2FkZXJzLmlzRW1wdHkoKTsgfQotICAgIGJvb2wgY29udGFpbnMoUmVzb3Vy
Y2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdCB7IHJldHVybiBtX2xvYWRlcnMuY29u
dGFpbnMoaWRlbnRpZmllcik7IH0KKyAgICBib29sIGNvbnRhaW5zKFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdCB7IHJldHVybiBtX2xvYWRlcnMuY29u
dGFpbnMoaWRlbnRpZmllcik7IH0KICAgICBNYXBUeXBlOjppdGVyYXRvciBiZWdpbigpIHsgcmV0
dXJuIG1fbG9hZGVycy5iZWdpbigpOyB9CiAgICAgTWFwVHlwZTo6VmFsdWVzSXRlcmF0b3JSYW5n
ZSB2YWx1ZXMoKSB7IHJldHVybiBtX2xvYWRlcnMudmFsdWVzKCk7IH0KICAgICB2b2lkIGNsZWFy
KCk7CiAKLSAgICBNYXBUeXBlOjpBZGRSZXN1bHQgYWRkKFJlc291cmNlTG9hZElkZW50aWZpZXIs
IFJlZjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+JiYpOwotICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRl
ciogZ2V0KFJlc291cmNlTG9hZElkZW50aWZpZXIpIGNvbnN0OwotICAgIGJvb2wgcmVtb3ZlKFJl
c291cmNlTG9hZElkZW50aWZpZXIpOwotICAgIFJlZlB0cjxOZXR3b3JrUmVzb3VyY2VMb2FkZXI+
IHRha2UoUmVzb3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgTWFwVHlwZTo6QWRkUmVzdWx0IGFk
ZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFJlZjxOZXR3b3JrUmVzb3VyY2VM
b2FkZXI+JiYpOworICAgIE5ldHdvcmtSZXNvdXJjZUxvYWRlciogZ2V0KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcikgY29uc3Q7CisgICAgYm9vbCByZW1vdmUoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICBSZWZQdHI8TmV0d29ya1Jlc291cmNlTG9hZGVy
PiB0YWtlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBib29sIGhh
c1VwbG9hZCgpIGNvbnN0IHsgcmV0dXJuIG1faGFzVXBsb2FkOyB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMu
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFt
ZXRlcnMuaAppbmRleCBjY2M4YjUzY2Y4ZGViOGMwYzVhYzFkZjYyMTI5MmY0YzlkZjY1ZWRjLi40
Y2I4NWNiYTIwNmI4MDI4N2Q0MmI1YmU1NmJjYzhlOTMyNjEyNTUxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkUGFy
YW1ldGVycy5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9Dcm9zc09yaWdp
bkFjY2Vzc0NvbnRyb2wuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0Nyb3NzT3JpZ2luRW1iZWRkZXJQ
b2xpY3kuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZldGNoT3B0aW9ucy5oPgorI2luY2x1ZGUgPFdl
YkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL1NlY29uZHMu
aD4KIAogbmFtZXNwYWNlIElQQyB7CkBAIC00Miw4ICs0Myw2IEBAIGNsYXNzIEVuY29kZXI7CiAK
IG5hbWVzcGFjZSBXZWJLaXQgewogCi10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50
aWZpZXI7Ci0KIGNsYXNzIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIDogcHVibGljIE5l
dHdvcmtMb2FkUGFyYW1ldGVycyB7CiBwdWJsaWM6CiAgICAgdm9pZCBlbmNvZGUoSVBDOjpFbmNv
ZGVyJikgY29uc3Q7CkBAIC01MSw3ICs1MCw3IEBAIHB1YmxpYzoKIAogICAgIFJlZlB0cjxXZWJD
b3JlOjpTZWN1cml0eU9yaWdpbj4gcGFyZW50T3JpZ2luKCkgY29uc3Q7CiAKLSAgICBtdXRhYmxl
IFJlc291cmNlTG9hZElkZW50aWZpZXIgaWRlbnRpZmllciB7IDAgfTsKKyAgICBtdXRhYmxlIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyOwogICAgIFZlY3RvcjxS
ZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4+IHJlcXVlc3RCb2R5U2FuZGJveEV4dGVuc2lvbnM7IC8v
IENyZWF0ZWQgYXV0b21hdGljYWxseSBmb3IgdGhlIHNlbmRlci4KICAgICBSZWZQdHI8U2FuZGJv
eEV4dGVuc2lvbj4gcmVzb3VyY2VTYW5kYm94RXh0ZW5zaW9uOyAvLyBDcmVhdGVkIGF1dG9tYXRp
Y2FsbHkgZm9yIHRoZSBzZW5kZXIuCiAgICAgbXV0YWJsZSBTZWNvbmRzIG1heGltdW1CdWZmZXJp
bmdUaW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDgzZTgzYmNlODRlN2Y0OTgzODhlNjkyODRlOTA4MTMy
MmViYjhjNDguLjIzODYzYmY3ZWYzNzdiNGFhNGY5Yzc2MTMyODAxMTgyZjE4NmJiNTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxv
YWRlci5jcHAKQEAgLTY2LDggKzY2LDggQEAKICNpbmNsdWRlIDxXZWJDb3JlL1ByZXZpZXdDb252
ZXJ0ZXIuaD4KICNlbmRpZgogCi0jZGVmaW5lIExPQURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikg
UkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3BhZ2VQcm94eUlEPSUiIFBSSXU2NCAiLCB3ZWJQ
YWdlSUQ9JSIgUFJJdTY0ICIsIGZyYW1lSUQ9JSIgUFJJdTY0ICIsIHJlc291cmNlSUQ9JSIgUFJJ
dTY0ICIsIGlzTWFpblJlc291cmNlPSVkLCBkZXN0aW5hdGlvbj0ldSwgaXNTeW5jaHJvbm91cz0l
ZF0gTmV0d29ya1Jlc291cmNlTG9hZGVyOjoiIGZtdCwgdGhpcywgbV9wYXJhbWV0ZXJzLndlYlBh
Z2VQcm94eUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQudG9VSW50NjQoKSwg
bV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQudG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLmlkZW50aWZp
ZXIsIGlzTWFpblJlc291cmNlKCksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3BhcmFtZXRlcnMu
b3B0aW9ucy5kZXN0aW5hdGlvbiksIGlzU3luY2hyb25vdXMoKSwgIyNfX1ZBX0FSR1NfXykKLSNk
ZWZpbmUgTE9BREVSX1JFTEVBU0VfTE9HX0VSUk9SKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJP
UihOZXR3b3JrLCAiJXAgLSBbcGFnZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQ
Ukl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNN
YWluUmVzb3VyY2U9JWQsIGRlc3RpbmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQu
dG9VSW50NjQoKSwgbV9wYXJhbWV0ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRl
cnMud2ViRnJhbWVJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllciwgaXNNYWlu
UmVzb3VyY2UoKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fcGFyYW1ldGVycy5vcHRpb25zLmRl
c3RpbmF0aW9uKSwgaXNTeW5jaHJvbm91cygpLCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBMT0FE
RVJfUkVMRUFTRV9MT0coZm10LCAuLi4pIFJFTEVBU0VfTE9HKE5ldHdvcmssICIlcCAtIFtwYWdl
UHJveHlJRD0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBS
SXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiLCBpc01haW5SZXNvdXJjZT0lZCwgZGVzdGlu
YXRpb249JXUsIGlzU3luY2hyb25vdXM9JWRdIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6IiBmbXQs
IHRoaXMsIG1fcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRl
cnMud2ViUGFnZUlELnRvVUludDY0KCksIG1fcGFyYW1ldGVycy53ZWJGcmFtZUlELnRvVUludDY0
KCksIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0KCksIGlzTWFpblJlc291cmNlKCks
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3BhcmFtZXRlcnMub3B0aW9ucy5kZXN0aW5hdGlvbiks
IGlzU3luY2hyb25vdXMoKSwgIyNfX1ZBX0FSR1NfXykKKyNkZWZpbmUgTE9BREVSX1JFTEVBU0Vf
TE9HX0VSUk9SKGZtdCwgLi4uKSBSRUxFQVNFX0xPR19FUlJPUihOZXR3b3JrLCAiJXAgLSBbcGFn
ZVByb3h5SUQ9JSIgUFJJdTY0ICIsIHdlYlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQ
Ukl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIiwgaXNNYWluUmVzb3VyY2U9JWQsIGRlc3Rp
bmF0aW9uPSV1LCBpc1N5bmNocm9ub3VzPSVkXSBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OiIgZm10
LCB0aGlzLCBtX3BhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQudG9VSW50NjQoKSwgbV9wYXJhbWV0
ZXJzLndlYlBhZ2VJRC50b1VJbnQ2NCgpLCBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRC50b1VJbnQ2
NCgpLCBtX3BhcmFtZXRlcnMuaWRlbnRpZmllci50b1VJbnQ2NCgpLCBpc01haW5SZXNvdXJjZSgp
LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9wYXJhbWV0ZXJzLm9wdGlvbnMuZGVzdGluYXRpb24p
LCBpc1N5bmNocm9ub3VzKCksICMjX19WQV9BUkdTX18pCiAKIG5hbWVzcGFjZSBXZWJLaXQgewog
dXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CkBAIC01MjQsNyArNTI0LDcgQEAgdm9pZCBOZXR3b3Jr
UmVzb3VyY2VMb2FkZXI6OmFib3J0KCkKICAgICBjbGVhbnVwKExvYWRSZXN1bHQ6OkNhbmNlbCk7
CiB9CiAKLXZvaWQgTmV0d29ya1Jlc291cmNlTG9hZGVyOjp0cmFuc2ZlclRvTmV3V2ViUHJvY2Vz
cyhOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgbmV3Q29ubmVjdGlvbiwgUmVzb3VyY2VM
b2FkSWRlbnRpZmllciBuZXdDb3JlSWRlbnRpZmllcikKK3ZvaWQgTmV0d29ya1Jlc291cmNlTG9h
ZGVyOjp0cmFuc2ZlclRvTmV3V2ViUHJvY2VzcyhOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyYgbmV3Q29ubmVjdGlvbiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIG5ld0Nv
cmVJZGVudGlmaWVyKQogewogICAgIG1fY29ubmVjdGlvbiA9IG5ld0Nvbm5lY3Rpb247CiAgICAg
bV9wYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBuZXdDb3JlSWRlbnRpZmllcjsKQEAgLTEzOTYsMTcg
KzEzOTYsOCBAQCBzdGF0aWMgU3RyaW5nIGVzY2FwZUZvckpTT04oU3RyaW5nIHMpCiAgICAgcmV0
dXJuIHMucmVwbGFjZSgnXFwnLCAiXFxcXCIpLnJlcGxhY2UoJyInLCAiXFxcIiIpOwogfQogCi1z
dGF0aWMgU3RyaW5nIGVzY2FwZUlERm9ySlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90
PiYgdmFsdWUpCi17Ci0gICAgcmV0dXJuIHZhbHVlID8gU3RyaW5nOjpudW1iZXIodmFsdWUudmFs
dWUoKSkgOiBTdHJpbmcoIk5vbmUiX3MpOwotfQotCi1zdGF0aWMgU3RyaW5nIGVzY2FwZUlERm9y
SlNPTihjb25zdCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4mIHZhbHVlKQotewotICAg
IHJldHVybiB2YWx1ZSA/IFN0cmluZzo6bnVtYmVyKHZhbHVlLT50b1VJbnQ2NCgpKSA6IFN0cmlu
ZygiTm9uZSJfcyk7Ci19Ci0KLXN0YXRpYyBTdHJpbmcgZXNjYXBlSURGb3JKU09OKGNvbnN0IHN0
ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+JiB2YWx1ZSkKK3RlbXBsYXRlPHR5cGVuYW1lIElk
ZW50aWZpZXJUeXBlPgorc3RhdGljIFN0cmluZyBlc2NhcGVJREZvckpTT04oY29uc3Qgc3RkOjpv
cHRpb25hbDxPYmplY3RJZGVudGlmaWVyPElkZW50aWZpZXJUeXBlPj4mIHZhbHVlKQogewogICAg
IHJldHVybiB2YWx1ZSA/IFN0cmluZzo6bnVtYmVyKHZhbHVlLT50b1VJbnQ2NCgpKSA6IFN0cmlu
ZygiTm9uZSJfcyk7CiB9CkBAIC0xNDIxLDcgKzE0MTIsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJj
ZUxvYWRlcjo6bG9nQ29va2llSW5mb3JtYXRpb24oKSBjb25zdAogICAgIGxvZ0Nvb2tpZUluZm9y
bWF0aW9uKG1fY29ubmVjdGlvbiwgIk5ldHdvcmtSZXNvdXJjZUxvYWRlciIsIHJlaW50ZXJwcmV0
X2Nhc3Q8Y29uc3Qgdm9pZCo+KHRoaXMpLCAqbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBvcmlnaW5h
bFJlcXVlc3QoKS5maXJzdFBhcnR5Rm9yQ29va2llcygpLCBTYW1lU2l0ZUluZm86OmNyZWF0ZShv
cmlnaW5hbFJlcXVlc3QoKSksIG9yaWdpbmFsUmVxdWVzdCgpLnVybCgpLCBvcmlnaW5hbFJlcXVl
c3QoKS5odHRwUmVmZXJyZXIoKSwgZnJhbWVJRCgpLCBwYWdlSUQoKSwgY29yZUlkZW50aWZpZXIo
KSk7CiB9CiAKLXN0YXRpYyB2b2lkIGxvZ0Jsb2NrZWRDb29raWVJbmZvcm1hdGlvbihOZXR3b3Jr
Q29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGlvbiwgY29uc3QgU3RyaW5nJiBsYWJlbCwg
Y29uc3Qgdm9pZCogbG9nZ2VkT2JqZWN0LCBjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNl
c3Npb24mIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25z
dCBTYW1lU2l0ZUluZm8mIHNhbWVTaXRlSW5mbywgY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIsIHN0ZDo6b3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiBmcmFtZUlELCBzdGQ6
Om9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiBwYWdlSUQsIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+
IGlkZW50aWZpZXIpCitzdGF0aWMgdm9pZCBsb2dCbG9ja2VkQ29va2llSW5mb3JtYXRpb24oTmV0
d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFi
ZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0b3Jh
Z2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwg
Y29uc3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBT
dHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4gZnJhbWVJRCwg
c3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gaWRlbnRpZmllcikKIHsKICAgICBBU1NFUlQo
TmV0d29ya1Jlc291cmNlTG9hZGVyOjpzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihjb25uZWN0
aW9uLCBuZXR3b3JrU3RvcmFnZVNlc3Npb24uc2Vzc2lvbklEKCkpKTsKIApAQCAtMTQ0OCw3ICsx
NDM5LDcgQEAgc3RhdGljIHZvaWQgbG9nQmxvY2tlZENvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtD
b25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW8KICN1bmRlZiBMT0NBTF9MT0dfSUZfQUxM
T1dFRAogfQogCi1zdGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbkludGVybmFsKE5ldHdv
cmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVs
LCBjb25zdCB2b2lkKiBsb2dnZWRPYmplY3QsIGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNv
bnN0IFdlYkNvcmU6OlNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBjb25zdCBVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFtZUlkZW50aWZpZXI+IGZy
YW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJRCwgc3RkOjpvcHRpb25h
bDx1aW50NjRfdD4gaWRlbnRpZmllcikKK3N0YXRpYyB2b2lkIGxvZ0Nvb2tpZUluZm9ybWF0aW9u
SW50ZXJuYWwoTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNvbm5lY3Rpb24sIGNvbnN0
IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6
TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0IFVSTCYg
Zmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6U2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNv
bnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1l
SWRlbnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlE
LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gaWRlbnRp
ZmllcikKIHsKICAgICBBU1NFUlQoTmV0d29ya1Jlc291cmNlTG9hZGVyOjpzaG91bGRMb2dDb29r
aWVJbmZvcm1hdGlvbihjb25uZWN0aW9uLCBuZXR3b3JrU3RvcmFnZVNlc3Npb24uc2Vzc2lvbklE
KCkpKTsKIApAQCAtMTUwOSw3ICsxNTAwLDcgQEAgc3RhdGljIHZvaWQgbG9nQ29va2llSW5mb3Jt
YXRpb25JbnRlcm5hbChOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYgY29ubmVjdGkKICN1
bmRlZiBMT0NBTF9MT0dfSUZfQUxMT1dFRAogfQogCi12b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRl
cjo6bG9nQ29va2llSW5mb3JtYXRpb24oTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3MmIGNv
bm5lY3Rpb24sIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwg
Y29uc3QgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBuZXR3b3JrU3RvcmFnZVNlc3Npb24sIGNvbnN0
IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgU2FtZVNpdGVJbmZvJiBzYW1lU2l0ZUluZm8sIGNvbnN0
IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPEZyYW1lSWRl
bnRpZmllcj4gZnJhbWVJRCwgc3RkOjpvcHRpb25hbDxQYWdlSWRlbnRpZmllcj4gcGFnZUlELCBz
dGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlmaWVyKQordm9pZCBOZXR3b3JrUmVzb3VyY2VM
b2FkZXI6OmxvZ0Nvb2tpZUluZm9ybWF0aW9uKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNz
JiBjb25uZWN0aW9uLCBjb25zdCBTdHJpbmcmIGxhYmVsLCBjb25zdCB2b2lkKiBsb2dnZWRPYmpl
Y3QsIGNvbnN0IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgbmV0d29ya1N0b3JhZ2VTZXNzaW9uLCBj
b25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFNhbWVTaXRlSW5mbyYgc2FtZVNpdGVJbmZvLCBj
b25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgc3RkOjpvcHRpb25hbDxGcmFt
ZUlkZW50aWZpZXI+IGZyYW1lSUQsIHN0ZDo6b3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+IHBhZ2VJ
RCwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IGlkZW50
aWZpZXIpCiB7CiAgICAgQVNTRVJUKHNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uKGNvbm5lY3Rp
b24sIG5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5zZXNzaW9uSUQoKSkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAppbmRleCBm
YjFiZjBlNWMxYWRiNDQxNzMwNWY4NjNhMGZiMWM1NmM4YzEyNDYwLi5mMjJiNGNjMzA3NGNiZDY4
MTUyY2Y0OTUzNmMwZjBlOGIzYTA0Y2YwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKQEAgLTg1LDcgKzg1LDcgQEAgcHVi
bGljOgogICAgIHZvaWQgc3RhcnQoKTsKICAgICB2b2lkIGFib3J0KCk7CiAKLSAgICB2b2lkIHRy
YW5zZmVyVG9OZXdXZWJQcm9jZXNzKE5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzJiwgUmVz
b3VyY2VMb2FkSWRlbnRpZmllcik7CisgICAgdm9pZCB0cmFuc2ZlclRvTmV3V2ViUHJvY2VzcyhO
ZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcik7CiAKICAgICAvLyBNZXNzYWdlIGhhbmRsZXJzLgogICAgIHZvaWQgZGlkUmVjZWl2
ZU5ldHdvcmtSZXNvdXJjZUxvYWRlck1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNv
ZGVyJik7CkBAIC05Nyw3ICs5Nyw3IEBAIHB1YmxpYzoKIAogICAgIE5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzJiBjb25uZWN0aW9uVG9XZWJQcm9jZXNzKCkgY29uc3QgeyByZXR1cm4gbV9j
b25uZWN0aW9uOyB9CiAgICAgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKCkgY29uc3QgeyByZXR1
cm4gbV9jb25uZWN0aW9uLT5zZXNzaW9uSUQoKTsgfQotICAgIFJlc291cmNlTG9hZElkZW50aWZp
ZXIgY29yZUlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMuaWRlbnRpZmll
cjsgfQorICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBjb3JlSWRlbnRpZmll
cigpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyOyB9CiAgICAgV2ViQ29y
ZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQoKSBjb25zdCB7IHJldHVybiBtX3BhcmFtZXRlcnMu
d2ViRnJhbWVJRDsgfQogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIHBhZ2VJRCgpIGNvbnN0
IHsgcmV0dXJuIG1fcGFyYW1ldGVycy53ZWJQYWdlSUQ7IH0KICAgICBjb25zdCBOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyYgcGFyYW1ldGVycygpIGNvbnN0IHsgcmV0dXJuIG1fcGFyYW1l
dGVyczsgfQpAQCAtMTMyLDcgKzEzMiw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShJTlRFTExJ
R0VOVF9UUkFDS0lOR19QUkVWRU5USU9OKSAmJiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKICAgICBz
dGF0aWMgYm9vbCBzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRv
V2ViUHJvY2VzcyYsIFBBTDo6U2Vzc2lvbklEKTsKLSAgICBzdGF0aWMgdm9pZCBsb2dDb29raWVJ
bmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2VzcyYsIGNvbnN0IFN0cmluZyYg
bGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0
b3JhZ2VTZXNzaW9uJiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBXZWJDb3JlOjpTYW1l
U2l0ZUluZm8mLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBzdGQ6Om9wdGlv
bmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UGFn
ZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPHVpbnQ2NF90PiBpZGVudGlmaWVyKTsKKyAgICBz
dGF0aWMgdm9pZCBsb2dDb29raWVJbmZvcm1hdGlvbihOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJv
Y2VzcyYsIGNvbnN0IFN0cmluZyYgbGFiZWwsIGNvbnN0IHZvaWQqIGxvZ2dlZE9iamVjdCwgY29u
c3QgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5
LCBjb25zdCBXZWJDb3JlOjpTYW1lU2l0ZUluZm8mLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcm
IHJlZmVycmVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4sIHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6UGFnZUlkZW50aWZpZXI+LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4pOwogI2VuZGlmCiAKICAgICB2b2lkIGRpc2FibGVF
eHRyYU5ldHdvcmtMb2FkTWV0cmljc0NhcHR1cmUoKSB7IG1fc2hvdWxkQ2FwdHVyZUV4dHJhTmV0
d29ya0xvYWRNZXRyaWNzID0gZmFsc2U7IH0KQEAgLTE1Myw3ICsxNTMsNyBAQCBwcml2YXRlOgog
CiAgICAgLy8gSVBDOjpNZXNzYWdlU2VuZGVyCiAgICAgSVBDOjpDb25uZWN0aW9uKiBtZXNzYWdl
U2VuZGVyQ29ubmVjdGlvbigpIGNvbnN0IG92ZXJyaWRlOwotICAgIHVpbnQ2NF90IG1lc3NhZ2VT
ZW5kZXJEZXN0aW5hdGlvbklEKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9wYXJhbWV0ZXJz
LmlkZW50aWZpZXI7IH0KKyAgICB1aW50NjRfdCBtZXNzYWdlU2VuZGVyRGVzdGluYXRpb25JRCgp
IGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fcGFyYW1ldGVycy5pZGVudGlmaWVyLnRvVUludDY0
KCk7IH0KIAogICAgIGJvb2wgY2FuVXNlQ2FjaGUoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JikgY29uc3Q7CiAgICAgYm9vbCBjYW5Vc2VDYWNoZWRSZWRpcmVjdChjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2Ny
aXB0cy93ZWJraXQvbWVzc2FnZXMucHkgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21l
c3NhZ2VzLnB5CmluZGV4IGRjNzYzYmYxZTgzNDRiYjVmM2QxN2U2NDQ5OTc5Zjk2MWZmZWI2ZTku
LmU1Y2ZlMGRhNzFjMTI5OTJjOTY2ODYwMGZjNzc5ZGVlYmY3MmIxNWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQpAQCAtMjk3LDYgKzI5Nyw3IEBAIGRlZiB0eXBl
c190aGF0X2Nhbm5vdF9iZV9mb3J3YXJkX2RlY2xhcmVkKCk6CiAgICAgICAgICdXZWJDb3JlOjpS
ZWFsdGltZU1lZGlhU291cmNlSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3JlOjpSZW5kZXJp
bmdNb2RlJywKICAgICAgICAgJ1dlYkNvcmU6OlJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcics
CisgICAgICAgICdXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXInLAogICAgICAgICAn
V2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VySWRlbnRpZmllcicsCiAgICAgICAgICdXZWJDb3JlOjpTZXJ2aWNlV29y
a2VySm9iSWRlbnRpZmllcicsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxT
Y2hlbWVUYXNrUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVU
YXNrUGFyYW1ldGVycy5jcHAKaW5kZXggZDVjYTNiYmZlMDgwYmU3ZTg3MDJjNTIyNTViOTViOWI4
ZWI5OWViNi4uNTczN2Q5YzgzYzE1MWI4ZTg0NjIxYTcyYjEzZmVhZGU5OGFlOWU3MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmNwcApAQCAt
NTIsNyArNTIsNyBAQCBzdGQ6Om9wdGlvbmFsPFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzPiBVUkxT
Y2hlbWVUYXNrUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6RGVjbwogICAgIGlmICghaGFuZGxlcklk
ZW50aWZpZXIpCiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAgICAgCi0gICAgc3RkOjpv
cHRpb25hbDx1aW50NjRfdD4gdGFza0lkZW50aWZpZXI7CisgICAgc3RkOjpvcHRpb25hbDxXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHRhc2tJZGVudGlmaWVyOwogICAgIGRlY29k
ZXIgPj4gdGFza0lkZW50aWZpZXI7CiAgICAgaWYgKCF0YXNrSWRlbnRpZmllcikKICAgICAgICAg
cmV0dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VS
TFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9VUkxTY2hlbWVU
YXNrUGFyYW1ldGVycy5oCmluZGV4IDY3ODIzOTZiMGY5ZDA5YjNiZWQyZWY0OWJjYmQ1Y2M5NTNj
NmQ1OTUuLjFiNGQ5ZWIyN2RkMGIxZTg2MDQ3ZjdhYzNhZDA2NzAzYzUzZjMzZmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1VSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzLmgKKysrIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMuaApAQCAtMjYsNiAr
MjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJGcmFtZUluZm9EYXRhLmgiCisjaW5j
bHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1Jlc291cmNlUmVxdWVzdC5oPgogCiBuYW1lc3BhY2UgSVBDIHsKQEAgLTM3LDcgKzM4LDcg
QEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHN0cnVjdCBVUkxTY2hlbWVUYXNrUGFyYW1ldGVycyB7
CiAgICAgdWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIgeyAwIH07Ci0gICAgdWludDY0X3QgdGFz
a0lkZW50aWZpZXIgeyAwIH07CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
IHRhc2tJZGVudGlmaWVyOwogICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0Owog
ICAgIEZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0V2ViQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcAppbmRleCAxYmM1MWRk
MWVkM2IxMTg1ZWQ3MjY1NTU5YmIxZDNhZWQ5NzkwMjZkLi5lMGE4ZWVhMzZjOWVhNmNkYTY0M2Q2
MjFlOTc4ZjdjODdkNmUxNDM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ2xpYi9XZWJLaXRXZWJDb250ZXh0LmNwcApAQCAtNjAsNiArNjAsNyBAQAogI2luY2x1
ZGUgIldlYnNpdGVEYXRhU3RvcmUuaCIKICNpbmNsdWRlICJXZWJzaXRlRGF0YVR5cGUuaCIKICNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9SZW1vdGVJbnNwZWN0b3IuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5oPgogI2luY2x1ZGUgPGdsaWIvZ2kxOG4tbGli
Lmg+CiAjaW5jbHVkZSA8bGliaW50bC5oPgogI2luY2x1ZGUgPG1lbW9yeT4KQEAgLTE5NCwxMSAr
MTk1LDEwIEBAIHByaXZhdGU6CiAgICAgV2ViS2l0VVJJU2NoZW1lUmVxdWVzdENhbGxiYWNrIG1f
Y2FsbGJhY2sgeyBudWxscHRyIH07CiAgICAgdm9pZCogbV91c2VyRGF0YSB7IG51bGxwdHIgfTsK
ICAgICBHRGVzdHJveU5vdGlmeSBtX2Rlc3Ryb3lOb3RpZnkgeyBudWxscHRyIH07Ci0gICAgSGFz
aE1hcDx1aW50NjRfdCwgR1JlZlB0cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Pj4gbV9yZXF1ZXN0
czsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgR1JlZlB0
cjxXZWJLaXRVUklTY2hlbWVSZXF1ZXN0Pj4gbV9yZXF1ZXN0czsKIH07CiAKIHR5cGVkZWYgSGFz
aE1hcDxTdHJpbmcsIFJlZlB0cjxXZWJLaXRVUklTY2hlbWVIYW5kbGVyPiA+IFVSSVNjaGVtZUhh
bmRsZXJNYXA7Ci10eXBlZGVmIEhhc2hNYXA8dWludDY0X3QsIEdSZWZQdHI8V2ViS2l0VVJJU2No
ZW1lUmVxdWVzdD4gPiBVUklTY2hlbWVSZXF1ZXN0TWFwOwogCiBjbGFzcyBXZWJLaXRBdXRvbWF0
aW9uQ2xpZW50OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3Jr
L05ldHdvcmtQcm9jZXNzUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29y
ay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcAppbmRleCAxY2RjZmNlMDZmOTVlNmI1MzEyNzVhODNl
M2VmN2YwOTY4ZmU4YTc3Li4zZjFlMmI5ZGVhNjRmY2I5NWZjNWE3YTE5YTgxMTcyYTIzZjUwMDBm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29y
a1Byb2Nlc3NQcm94eS5jcHAKQEAgLTQ3Niw5ICs0NzYsOSBAQCB2b2lkIE5ldHdvcmtQcm9jZXNz
UHJveHk6OnRlcm1pbmF0ZVVucmVzcG9uc2l2ZVNlcnZpY2VXb3JrZXJQcm9jZXNzZXMoV2ViQ29y
ZTo6UAogICAgIH0KIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZv
cldlYlByb2Nlc3NUcmFuc2ZlcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRpZmllciBzb3VyY2VQcm9j
ZXNzSWRlbnRpZmllciwgdWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVy
Pik+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnByZXBh
cmVMb2FkRm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNv
dXJjZVByb2Nlc3NJZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcj4gcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChzdGQ6Om9wdGlvbmFsPE5ldHdvcmtSZXNvdXJjZUxvYWRJZGVudGlmaWVyPik+JiYgY29t
cGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N3YXBwaW5nLCAiJXAg
LSBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpwcmVwYXJlTG9hZEZvcldlYlByb2Nlc3NUcmFuc2Zlcjog
c291cmNlUHJvY2Vzc0lkZW50aWZpZXI6ICUiIFBSSXU2NCAiLCByZXNvdXJjZUxvYWRJZGVudGlm
aWVyOiAlIiBQUkl1NjQsIHRoaXMsIHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyLnRvVUludDY0KCks
IHJlc291cmNlTG9hZElkZW50aWZpZXIpOworICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTd2FwcGlu
ZywgIiVwIC0gTmV0d29ya1Byb2Nlc3NQcm94eTo6cHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJh
bnNmZXI6IHNvdXJjZVByb2Nlc3NJZGVudGlmaWVyOiAlIiBQUkl1NjQgIiwgcmVzb3VyY2VMb2Fk
SWRlbnRpZmllcjogJSIgUFJJdTY0LCB0aGlzLCBzb3VyY2VQcm9jZXNzSWRlbnRpZmllci50b1VJ
bnQ2NCgpLCByZXNvdXJjZUxvYWRJZGVudGlmaWVyID8gcmVzb3VyY2VMb2FkSWRlbnRpZmllci0+
dG9VSW50NjQoKSA6IDApOwogICAgIGlmICghcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgewogICAg
ICAgICBjb21wbGV0aW9uSGFuZGxlcih7IH0pOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCmlu
ZGV4IDY5OWE4MjU5ZWZhZGExMmJhZWZmMWNkZThiZTEwZDEzNjg0NWVkNjIuLjQ2MGZiMzJlODEw
ZTJmZmIyYzQ5Yjg1ODk3OTI2MzZiN2JlYTBkOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCkBAIC0yMTQsNyArMjE0
LDcgQEAgcHVibGljOgogICAgIHZvaWQgdGVzdFByb2Nlc3NJbmNvbWluZ1N5bmNNZXNzYWdlc1do
ZW5XYWl0aW5nRm9yU3luY1JlcGx5KFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzc1Byb3h5OjpUZXN0UHJvY2Vzc0luY29taW5nU3luY01lc3NhZ2VzV2hlbldh
aXRpbmdGb3JTeW5jUmVwbHlEZWxheWVkUmVwbHkmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVVbnJl
c3BvbnNpdmVTZXJ2aWNlV29ya2VyUHJvY2Vzc2VzKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVy
KTsKIAotICAgIHZvaWQgcHJlcGFyZUxvYWRGb3JXZWJQcm9jZXNzVHJhbnNmZXIoV2ViQ29yZTo6
UHJvY2Vzc0lkZW50aWZpZXIgc291cmNlUHJvY2Vzc0lkZW50aWZpZXIsIHVpbnQ2NF90IHJlc291
cmNlTG9hZElkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxO
ZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmKTsKKyAgICB2b2lkIHByZXBhcmVMb2Fk
Rm9yV2ViUHJvY2Vzc1RyYW5zZmVyKFdlYkNvcmU6OlByb2Nlc3NJZGVudGlmaWVyIHNvdXJjZVBy
b2Nlc3NJZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllcj4sIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxOZXR3b3JrUmVz
b3VyY2VMb2FkSWRlbnRpZmllcj4pPiYmKTsKIAogICAgIFByb2Nlc3NUaHJvdHRsZXImIHRocm90
dGxlcigpIGZpbmFsIHsgcmV0dXJuIG1fdGhyb3R0bGVyOyB9CiAgICAgdm9pZCB1cGRhdGVQcm9j
ZXNzQXNzZXJ0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92
aXNpb25hbFBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92aXNpb25h
bFBhZ2VQcm94eS5jcHAKaW5kZXggZjY1YjhhNDg3YzJlNmMwMWNiMzA5YTNjZDg1MGE1YzNlMzNj
YjZmMC4uYjA5MTliOGNiNGE1YTQzMzJlZjg4MmRiNWE0NGEyYzM0MDkyNGJlYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmNwcApAQCAtMzMz
LDcgKzMzMyw3IEBAIHZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvck5h
dmlnYXRpb25BY3Rpb25Bc3luYyhGcmFtZUlkZW50aWZpZXIKICAgICBtX3BhZ2UuZGVjaWRlUG9s
aWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5jU2hhcmVkKG1fcHJvY2Vzcy5jb3B5UmVmKCksIG1f
d2ViUGFnZUlELCBmcmFtZUlELCBXVEZNb3ZlKGZyYW1lSW5mbyksIGlkZW50aWZpZXIsIG5hdmln
YXRpb25JRCwgV1RGTW92ZShuYXZpZ2F0aW9uQWN0aW9uRGF0YSksIFdURk1vdmUob3JpZ2luYXRp
bmdGcmFtZUluZm8pLCBvcmlnaW5hdGluZ1BhZ2VJRCwgb3JpZ2luYWxSZXF1ZXN0LCBXVEZNb3Zl
KHJlcXVlc3QpLCBXVEZNb3ZlKHJlcXVlc3RCb2R5KSwgV1RGTW92ZShyZWRpcmVjdFJlc3BvbnNl
KSwgdXNlckRhdGEsIGxpc3RlbmVySUQpOwogfQogCi12b2lkIFByb3Zpc2lvbmFsUGFnZVByb3h5
OjpkZWNpZGVQb2xpY3lGb3JSZXNwb25zZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJ
bmZvRGF0YSYmIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50
aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Ym9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRyaWJ1dGUsIGJv
b2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJE
YXRhJiB1c2VyRGF0YSkKK3ZvaWQgUHJvdmlzaW9uYWxQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZv
clJlc3BvbnNlKEZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBGcmFtZUluZm9EYXRhJiYgZnJhbWVJ
bmZvLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIgaWRlbnRpZmllciwgdWludDY0X3Qg
bmF2aWdhdGlvbklELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwg
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1F
VHlwZSwgY29uc3QgU3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJ
bmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2lu
Z0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90
IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKIHsKICAgICBpZiAoIXZhbGlk
YXRlSW5wdXQoZnJhbWVJRCwgbmF2aWdhdGlvbklEKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvdmlzaW9uYWxQYWdlUHJveHkuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb3Zpc2lvbmFsUGFnZVByb3h5LmgKaW5kZXggZDc4YzM4
ZTAwNTIwZDhjODQwZTM3MTEyOWIyZTQ1NGViODlhYTYwNy4uYTVkZWNmZjJmN2U5MjEzZDdkM2Jl
ZGEwZGJjMzZkNmQ5OTU0YzNkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
UHJvdmlzaW9uYWxQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm92
aXNpb25hbFBhZ2VQcm94eS5oCkBAIC0xMjUsNyArMTI1LDcgQEAgcHJpdmF0ZToKICAgICBib29s
IHNlbmRNZXNzYWdlKFVuaXF1ZVJlZjxJUEM6OkVuY29kZXI+JiYsIE9wdGlvblNldDxJUEM6OlNl
bmRPcHRpb24+LCBzdGQ6Om9wdGlvbmFsPHN0ZDo6cGFpcjxDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KElQQzo6RGVjb2RlciopPiwgdWludDY0X3Q+PiYmKSBmaW5hbDsKIAogICAgIHZvaWQgZGVjaWRl
UG9saWN5Rm9yTmF2aWdhdGlvbkFjdGlvbkFzeW5jKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwg
RnJhbWVJbmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90
IG5hdmlnYXRpb25JRCwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwgRnJhbWVJbmZvRGF0YSYmIG9y
aWdpbmF0aW5nRnJhbWVJbmZvLCBzdGQ6Om9wdGlvbmFsPFdlYlBhZ2VQcm94eUlkZW50aWZpZXI+
IG9yaWdpbmF0aW5nUGFnZUlELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIG9yaWdp
bmFsUmVxdWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIElQQzo6Rm9ybURhdGFSZWZl
cmVuY2UmJiByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0
UmVzcG9uc2UsIGNvbnN0IFVzZXJEYXRhJiwgdWludDY0X3QgbGlzdGVuZXJJRCk7Ci0gICAgdm9p
ZCBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIEZyYW1l
SW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZp
Z2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBk
b3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgV2ViQ29y
ZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbGlzdGVuZXJJ
RCwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFVzZXJEYXRhJik7
CisgICAgdm9pZCBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZShXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXIsIEZyYW1lSW5mb0RhdGEmJiwgV2ViQ29yZTo6UG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50
NjRfdCBuYXZpZ2F0aW9uSUQsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBjb25z
dCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3Qg
U3RyaW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRs
ZSwgV2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZv
aWQgZGlkQ2hhbmdlUHJvdmlzaW9uYWxVUkxGb3JGcmFtZShXZWJDb3JlOjpGcmFtZUlkZW50aWZp
ZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgVVJMJiYpOwogICAgIHZvaWQgZGlkUGVyZm9ybVNl
cnZlclJlZGlyZWN0KGNvbnN0IFN0cmluZyYgc291cmNlVVJMU3RyaW5nLCBjb25zdCBTdHJpbmcm
IGRlc3RpbmF0aW9uVVJMU3RyaW5nLCBXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIpOwogICAgIHZv
aWQgZGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkRm9yRnJhbWUoV2Vi
Q29yZTo6RnJhbWVJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0aW9uSUQsIFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYmLCBjb25zdCBVc2VyRGF0YSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYzExMTcxNDczZTI0ODYwOGFlOTdmMzU5NGYzOTUyNTUy
Y2FhNjAxYi4uN2VhZjc5OTRkODAwNjliYTlmMTQxZjFhZjI0Y2Q3Njk0MjY0ZGZmMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01NjMwLDEyICs1NjMwLDEy
IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oRnJh
bWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lCiAKIHZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQ
b2xpY3lGb3JSZXNwb25zZShGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYm
IGZyYW1lSW5mbywgUG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsCiAgICAgdWludDY0
X3QgbmF2aWdhdGlvbklELCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgY29uc3QgU3Ry
aW5nJiBkb3dubG9hZEF0dHJpYnV0ZSwKLSAgICBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVu
ZGxlLCBCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdy
b3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyLCB1
aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYgdXNlckRhdGEpCisgICAgYm9vbCB3
YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgQnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNp
c2lvbiBicm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZp
ZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKIHsKICAg
ICBkZWNpZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZChtX3Byb2Nlc3MuY29weVJlZigpLCBtX3dl
YlBhZ2VJRCwgZnJhbWVJRCwgV1RGTW92ZShmcmFtZUluZm8pLCBpZGVudGlmaWVyLCBuYXZpZ2F0
aW9uSUQsIHJlc3BvbnNlLCByZXF1ZXN0LCBjYW5TaG93TUlNRVR5cGUsIGRvd25sb2FkQXR0cmli
dXRlLCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0
Y2hEZWNpc2lvbiwgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIGxpc3RlbmVySUQsIHVzZXJE
YXRhKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmRlY2lkZVBvbGljeUZvclJlc3BvbnNlU2hh
cmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgUGFnZUlkZW50aWZpZXIgd2ViUGFn
ZUlELCBGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgRnJhbWVJbmZvRGF0YSYmIGZyYW1lSW5mbywg
UG9saWN5Q2hlY2tJZGVudGlmaWVyIGlkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRBdHRy
aWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIEJyb3dzaW5nQ29udGV4dEdy
b3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWlu
dDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNv
bnN0IFVzZXJEYXRhJiB1c2VyRGF0YSkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkZWNpZGVQb2xpY3lG
b3JSZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIFBhZ2VJZGVu
dGlmaWVyIHdlYlBhZ2VJRCwgRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIEZyYW1lSW5mb0RhdGEm
JiBmcmFtZUluZm8sIFBvbGljeUNoZWNrSWRlbnRpZmllciBpZGVudGlmaWVyLCB1aW50NjRfdCBu
YXZpZ2F0aW9uSUQsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBjb25zdCBSZXNv
dXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcm
IGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBCcm93
c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uIGJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNo
RGVjaXNpb24sIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
PiBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3Qg
VXNlckRhdGEmIHVzZXJEYXRhKQogewogICAgIFBhZ2VDbGllbnRQcm90ZWN0b3IgcHJvdGVjdG9y
KHBhZ2VDbGllbnQoKSk7CiAKQEAgLTEwMDAyLDcgKzEwMDAyLDcgQEAgdm9pZCBXZWJQYWdlUHJv
eHk6OnN0YXJ0VVJMU2NoZW1lVGFza1NoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nl
c3MsIFBhZ2UKICAgICBpdGVyYXRvci0+dmFsdWUtPnN0YXJ0VGFzaygqdGhpcywgcHJvY2Vzcywg
d2ViUGFnZUlELCBXVEZNb3ZlKHBhcmFtZXRlcnMpLCBudWxscHRyKTsKIH0KIAotdm9pZCBXZWJQ
YWdlUHJveHk6OnN0b3BVUkxTY2hlbWVUYXNrKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllcikKK3ZvaWQgV2ViUGFnZVByb3h5OjpzdG9wVVJMU2NoZW1l
VGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewogICAgIE1FU1NBR0VfQ0hFQ0sobV9wcm9jZXNz
LCBkZWNsdHlwZShtX3VybFNjaGVtZUhhbmRsZXJzQnlJZGVudGlmaWVyKTo6aXNWYWxpZEtleSho
YW5kbGVySWRlbnRpZmllcikpOwogICAgIGF1dG8gaXRlcmF0b3IgPSBtX3VybFNjaGVtZUhhbmRs
ZXJzQnlJZGVudGlmaWVyLmZpbmQoaGFuZGxlcklkZW50aWZpZXIpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCAzMWEzMjk2MzNkYjAxYTA5N2M3ZWEyOGY4ZDU0NjQ1
MzQ5YzYzZmMxLi5jYTA5ZTgzNzJlYzczY2Q3Mjc1ZWUwMTg2NWZiMmU3ZDk2ZGQ2MDJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTc0NSw3ICsxNzQ1LDcgQEAg
cHVibGljOgogICAgIHZvaWQgZGlkTmF2aWdhdGVXaXRoTmF2aWdhdGlvbkRhdGFTaGFyZWQoUmVm
PFdlYlByb2Nlc3NQcm94eT4mJiwgY29uc3QgV2ViTmF2aWdhdGlvbkRhdGFTdG9yZSYsIFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllcik7CiAgICAgdm9pZCBkaWRDaGFuZ2VQcm92aXNpb25hbFVSTEZv
ckZyYW1lU2hhcmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OkZyYW1lSWRlbnRp
ZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBVUkwmJik7CiAgICAgdm9pZCBkZWNpZGVQb2xp
Y3lGb3JOYXZpZ2F0aW9uQWN0aW9uQXN5bmNTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJ
bmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmln
YXRpb25JRCwgTmF2aWdhdGlvbkFjdGlvbkRhdGEmJiwgRnJhbWVJbmZvRGF0YSYmIG9yaWdpbmF0
aW5nRnJhbWVJbmZvLCBzdGQ6Om9wdGlvbmFsPFdlYlBhZ2VQcm94eUlkZW50aWZpZXI+IG9yaWdp
bmF0aW5nUGFnZUlELCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIG9yaWdpbmFsUmVx
dWVzdCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2Um
JiByZXF1ZXN0Qm9keSwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9u
c2UsIGNvbnN0IFVzZXJEYXRhJiwgdWludDY0X3QgbGlzdGVuZXJJRCk7Ci0gICAgdm9pZCBkZWNp
ZGVQb2xpY3lGb3JSZXNwb25zZVNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3Jl
OjpQYWdlSWRlbnRpZmllciwgV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBGcmFtZUluZm9EYXRh
JiYsIFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklE
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIGNvbnN0IFN0cmluZyYgZG93bmxvYWRB
dHRyaWJ1dGUsIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUsIFdlYkNvcmU6OkJyb3dz
aW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24sIHVpbnQ2NF90IG1haW5SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyLCB1aW50NjRfdCBsaXN0ZW5lcklELCBjb25zdCBVc2VyRGF0YSYpOworICAgIHZv
aWQgZGVjaWRlUG9saWN5Rm9yUmVzcG9uc2VTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwg
V2ViQ29yZTo6UGFnZUlkZW50aWZpZXIsIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJ
bmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmln
YXRpb25JRCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBTdHJpbmcmIGRv
d25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBXZWJDb3Jl
OjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIs
IHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9pZCBzdGFydFVS
TFNjaGVtZVRhc2tTaGFyZWQoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiwgV2ViQ29yZTo6UGFnZUlk
ZW50aWZpZXIsIFVSTFNjaGVtZVRhc2tQYXJhbWV0ZXJzJiYpOwogICAgIHZvaWQgbG9hZERhdGFX
aXRoTmF2aWdhdGlvblNoYXJlZChSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmLCBXZWJDb3JlOjpQYWdl
SWRlbnRpZmllciwgQVBJOjpOYXZpZ2F0aW9uJiwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwg
Y29uc3QgU3RyaW5nJiBNSU1FVHlwZSwgY29uc3QgU3RyaW5nJiBlbmNvZGluZywgY29uc3QgU3Ry
aW5nJiBiYXNlVVJMLCBBUEk6Ok9iamVjdCogdXNlckRhdGEsIFdlYkNvcmU6OlNob3VsZFRyZWF0
QXNDb250aW51aW5nTG9hZCwgc3RkOjpvcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3VuZERvbWFp
bj4sIHN0ZDo6b3B0aW9uYWw8V2Vic2l0ZVBvbGljaWVzRGF0YT4mJiwgV2ViQ29yZTo6U2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSwgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGE6OlNlc3Npb25I
aXN0b3J5VmlzaWJpbGl0eSk7CiAgICAgdm9pZCBsb2FkUmVxdWVzdFdpdGhOYXZpZ2F0aW9uU2hh
cmVkKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYsIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyLCBBUEk6
Ok5hdmlnYXRpb24mLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29yZTo6U2hvdWxk
T3BlbkV4dGVybmFsVVJMc1BvbGljeSwgQVBJOjpPYmplY3QqIHVzZXJEYXRhLCBXZWJDb3JlOjpT
aG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQsIHN0ZDo6b3B0aW9uYWw8TmF2aWdhdGluZ1RvQXBw
Qm91bmREb21haW4+LCBzdGQ6Om9wdGlvbmFsPFdlYnNpdGVQb2xpY2llc0RhdGE+JiYgPSBzdGQ6
Om51bGxvcHQsIHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IGV4
aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSA9IHN0ZDo6bnVsbG9w
dCk7CkBAIC0yMDYzLDcgKzIwNjMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGVjaWRlUG9saWN5
Rm9yTmV3V2luZG93QWN0aW9uKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJbmZvRGF0
YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIE5hdmlnYXRpb25BY3Rpb25EYXRh
JiYsCiAgICAgICAgIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBjb25zdCBTdHJpbmcmIGZy
YW1lTmFtZSwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNlckRhdGEmKTsKICAgICB2b2lk
IGRlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwgRnJhbWVJ
bmZvRGF0YSYmLCBXZWJDb3JlOjpQb2xpY3lDaGVja0lkZW50aWZpZXIsIHVpbnQ2NF90IG5hdmln
YXRpb25JRCwKLSAgICAgICAgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBT
dHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxl
LCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCB1aW50NjRfdCBt
YWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgdWludDY0X3QgbGlzdGVuZXJJRCwgY29uc3QgVXNl
ckRhdGEmKTsKKyAgICAgICAgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wgY2FuU2hvd01JTUVUeXBlLCBjb25zdCBT
dHJpbmcmIGRvd25sb2FkQXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxl
LCBXZWJDb3JlOjpCcm93c2luZ0NvbnRleHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlv
bmFsPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElk
ZW50aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIGNvbnN0IFVzZXJEYXRhJik7CiAgICAgdm9p
ZCB1bmFibGVUb0ltcGxlbWVudFBvbGljeShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImLCBjb25zdCBVc2VyRGF0YSYpOwogICAgIHZvaWQgYmVn
aW5TYWZlQnJvd3NpbmdDaGVjayhjb25zdCBVUkwmLCBib29sLCBXZWJGcmFtZVBvbGljeUxpc3Rl
bmVyUHJveHkmKTsKIApAQCAtMjQyNyw3ICsyNDI3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAg
ICAgdm9pZCBzdGFydFVSTFNjaGVtZVRhc2soVVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJik7Ci0g
ICAgdm9pZCBzdG9wVVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIpOworICAgIHZvaWQgc3RvcFVSTFNjaGVtZVRhc2sodWludDY0
X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7
CiAgICAgdm9pZCBsb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKFVSTFNjaGVtZVRhc2tQYXJh
bWV0ZXJzJiYsIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVt
ZVRhc2tEZWxheWVkUmVwbHkmJik7CiAKICAgICBib29sIGNoZWNrVVJMUmVjZWl2ZWRGcm9tQ3Vy
cmVudE9yUHJldmlvdXNXZWJQcm9jZXNzKFdlYlByb2Nlc3NQcm94eSYsIGNvbnN0IFN0cmluZyYp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CmluZGV4IDI2MWM4ZTUxNDRkZjY3MWE3NmZkYzNkYTdhNWFhODQ4ODM3ODE0NGEuLmI1Nzc3MjVm
MzBjYzI2NTJmOTgyZDI5MGM0ZjAyMGU1ZDI3ZTMwNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KQEAgLTEwNyw3ICsxMDcsNyBAQCBt
ZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogI2VuZGlmCiAKICAgICAjIFBvbGljeSBtZXNzYWdl
cwotICAgIERlY2lkZVBvbGljeUZvclJlc3BvbnNlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBm
cmFtZUlELCBzdHJ1Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6
UG9saWN5Q2hlY2tJZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2
aWdhdGlvbklELCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgYm9vbCBjYW5TaG93TUlNRVR5cGUsIFN0cmluZyBkb3du
bG9hZEF0dHJpYnV0ZSwgYm9vbCB3YXNBbGxvd2VkQnlJbmplY3RlZEJ1bmRsZSwgZW51bTp1aW50
OF90IFdlYkNvcmU6OkJyb3dzaW5nQ29udGV4dEdyb3VwU3dpdGNoRGVjaXNpb24gYnJvd3NpbmdD
b250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiwgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50
aWZpZXIsIHVpbnQ2NF90IGxpc3RlbmVySUQsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpCisg
ICAgRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1l
SUQsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xp
Y3lDaGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCB1aW50NjRfdCBuYXZpZ2F0
aW9uSUQsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCByZXF1ZXN0LCBib29sIGNhblNob3dNSU1FVHlwZSwgU3RyaW5nIGRvd25sb2Fk
QXR0cmlidXRlLCBib29sIHdhc0FsbG93ZWRCeUluamVjdGVkQnVuZGxlLCBlbnVtOnVpbnQ4X3Qg
V2ViQ29yZTo6QnJvd3NpbmdDb250ZXh0R3JvdXBTd2l0Y2hEZWNpc2lvbiBicm93c2luZ0NvbnRl
eHRHcm91cFN3aXRjaERlY2lzaW9uLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcj4gbWFpblJlc291cmNlTG9hZElkZW50aWZpZXIsIHVpbnQ2NF90IGxpc3Rl
bmVySUQsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpCiAgICAgRGVjaWRlUG9saWN5Rm9yTmF2
aWdhdGlvbkFjdGlvbkFzeW5jKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1
Y3QgV2ViS2l0OjpGcmFtZUluZm9EYXRhIGZyYW1lSW5mbywgV2ViQ29yZTo6UG9saWN5Q2hlY2tJ
ZGVudGlmaWVyIHBvbGljeUNoZWNrSWRlbnRpZmllciwgdWludDY0X3QgbmF2aWdhdGlvbklELCBz
dHJ1Y3QgV2ViS2l0OjpOYXZpZ2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwg
c3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBvcmlnaW5hdGluZ0ZyYW1lSW5mb0RhdGEsIHN0
ZDo6b3B0aW9uYWw8V2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyPiBvcmlnaW5hdGluZ1Bh
Z2VJRCwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG9yaWdpbmFsUmVxdWVzdCwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UgcmVxdWVzdEJv
ZHksIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVkaXJlY3RSZXNwb25zZSwgV2ViS2l0OjpV
c2VyRGF0YSB1c2VyRGF0YSwgdWludDY0X3QgbGlzdGVuZXJJRCkKICAgICBEZWNpZGVQb2xpY3lG
b3JOYXZpZ2F0aW9uQWN0aW9uU3luYyhXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwg
Ym9vbCBpc01haW5GcmFtZSwgc3RydWN0IFdlYktpdDo6RnJhbWVJbmZvRGF0YSBmcmFtZUluZm8s
IFdlYkNvcmU6OlBvbGljeUNoZWNrSWRlbnRpZmllciBwb2xpY3lDaGVja0lkZW50aWZpZXIsIHVp
bnQ2NF90IG5hdmlnYXRpb25JRCwgc3RydWN0IFdlYktpdDo6TmF2aWdhdGlvbkFjdGlvbkRhdGEg
bmF2aWdhdGlvbkFjdGlvbkRhdGEsIHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgb3JpZ2lu
YXRpbmdGcmFtZUluZm9EYXRhLCBzdGQ6Om9wdGlvbmFsPFdlYktpdDo6V2ViUGFnZVByb3h5SWRl
bnRpZmllcj4gb3JpZ2luYXRpbmdQYWdlSUQsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBvcmln
aW5hbFJlcXVlc3QsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBJUEM6OkZvcm1E
YXRhUmVmZXJlbmNlIHJlcXVlc3RCb2R5LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlZGly
ZWN0UmVzcG9uc2UsIFdlYktpdDo6VXNlckRhdGEgdXNlckRhdGEpIC0+IChzdHJ1Y3QgV2ViS2l0
OjpQb2xpY3lEZWNpc2lvbiBQb2xpY3lEZWNpc2lvbikgU3luY2hyb25vdXMKICAgICBEZWNpZGVQ
b2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQs
IHN0cnVjdCBXZWJLaXQ6OkZyYW1lSW5mb0RhdGEgZnJhbWVJbmZvLCBXZWJDb3JlOjpQb2xpY3lD
aGVja0lkZW50aWZpZXIgcG9saWN5Q2hlY2tJZGVudGlmaWVyLCBzdHJ1Y3QgV2ViS2l0OjpOYXZp
Z2F0aW9uQWN0aW9uRGF0YSBuYXZpZ2F0aW9uQWN0aW9uRGF0YSwgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0IHJlcXVlc3QsIFN0cmluZyBmcmFtZU5hbWUsIHVpbnQ2NF90IGxpc3RlbmVySUQsIFdl
YktpdDo6VXNlckRhdGEgdXNlckRhdGEpCkBAIC01MjEsNyArNTIxLDcgQEAgbWVzc2FnZXMgLT4g
V2ViUGFnZVByb3h5IHsKICAgICBTZXRJc1VzaW5nSGlnaFBlcmZvcm1hbmNlV2ViR0woYm9vbCBp
c1VzaW5nSGlnaFBlcmZvcm1hbmNlV2ViR0wpCiAKICAgICBTdGFydFVSTFNjaGVtZVRhc2soc3Ry
dWN0IFdlYktpdDo6VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMgcGFyYW1ldGVycykKLSAgICBTdG9w
VVJMU2NoZW1lVGFzayh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lk
ZW50aWZpZXIpCisgICAgU3RvcFVSTFNjaGVtZVRhc2sodWludDY0X3QgaGFuZGxlcklkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllcikKICAg
ICBMb2FkU3luY2hyb25vdXNVUkxTY2hlbWVUYXNrKHN0cnVjdCBXZWJLaXQ6OlVSTFNjaGVtZVRh
c2tQYXJhbWV0ZXJzIHBhcmFtZXRlcnMpIC0+IChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yLCBWZWN0b3I8dWludDhfdD4gZGF0
YSkgU3luY2hyb25vdXMKIAogI2lmIEVOQUJMRShERVZJQ0VfT1JJRU5UQVRJT04pCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCmluZGV4IGZmNjhk
NjRlMTgwMmFkZWJjNDAxNGI4YjYxNzkxYTAyZjRlNGU0YTAuLmFmOTVhMjUxMmJjNDIzM2ExZGFk
ZTlhZmViMTFjN2VhNDdmNGI3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlVSTFNjaGVtZUhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlVSTFNjaGVtZUhhbmRsZXIuY3BwCkBAIC01NSwxNCArNTUsMTQgQEAgdm9pZCBXZWJVUkxTY2hl
bWVIYW5kbGVyOjpzdGFydFRhc2soV2ViUGFnZVByb3h5JiBwYWdlLCBXZWJQcm9jZXNzUHJveHkm
IHByb2Nlc3MKICAgICBhdXRvIHJlc3VsdCA9IG1fdGFza3MuYWRkKHRhc2tJZGVudGlmaWVyLCBX
ZWJVUkxTY2hlbWVUYXNrOjpjcmVhdGUoKnRoaXMsIHBhZ2UsIHByb2Nlc3MsIHdlYlBhZ2VJRCwg
V1RGTW92ZShwYXJhbWV0ZXJzKSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpKTsKICAgICBB
U1NFUlQocmVzdWx0LmlzTmV3RW50cnkpOwogCi0gICAgYXV0byBwYWdlRW50cnkgPSBtX3Rhc2tz
QnlQYWdlSWRlbnRpZmllci5hZGQocGFnZS5pZGVudGlmaWVyKCksIEhhc2hTZXQ8dWludDY0X3Q+
KCkpOworICAgIGF1dG8gcGFnZUVudHJ5ID0gbV90YXNrc0J5UGFnZUlkZW50aWZpZXIuYWRkKHBh
Z2UuaWRlbnRpZmllcigpLCBIYXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmll
cj4oKSk7CiAgICAgQVNTRVJUKCFwYWdlRW50cnkuaXRlcmF0b3ItPnZhbHVlLmNvbnRhaW5zKHRh
c2tJZGVudGlmaWVyKSk7CiAgICAgcGFnZUVudHJ5Lml0ZXJhdG9yLT52YWx1ZS5hZGQodGFza0lk
ZW50aWZpZXIpOwogCiAgICAgcGxhdGZvcm1TdGFydFRhc2socGFnZSwgcmVzdWx0Lml0ZXJhdG9y
LT52YWx1ZSk7CiB9CiAKLVdlYlByb2Nlc3NQcm94eSogV2ViVVJMU2NoZW1lSGFuZGxlcjo6cHJv
Y2Vzc0ZvclRhc2tJZGVudGlmaWVyKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyKSBjb25zdAorV2Vi
UHJvY2Vzc1Byb3h5KiBXZWJVUkxTY2hlbWVIYW5kbGVyOjpwcm9jZXNzRm9yVGFza0lkZW50aWZp
ZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKSBjb25z
dAogewogICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6OmlzVmFsaWRLZXkodGFza0lkZW50aWZp
ZXIpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTc5LDcgKzc5LDcgQEAgdm9pZCBXZWJV
UkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBhZ2VQcm94eSYgcGFnZSwg
V2ViUHJvY2Vzc1Byb3gKICAgICAgICAgcmV0dXJuOwogCiAgICAgYXV0byYgdGFza3NCeVBhZ2Ug
PSBpdGVyYXRvci0+dmFsdWU7Ci0gICAgVmVjdG9yPHVpbnQ2NF90PiB0YXNrSWRlbnRpZmllcnNU
b1N0b3A7CisgICAgVmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gdGFz
a0lkZW50aWZpZXJzVG9TdG9wOwogICAgIHRhc2tJZGVudGlmaWVyc1RvU3RvcC5yZXNlcnZlSW5p
dGlhbENhcGFjaXR5KHRhc2tzQnlQYWdlLnNpemUoKSk7CiAgICAgZm9yIChhdXRvIHRhc2tJZGVu
dGlmaWVyIDogdGFza3NCeVBhZ2UpIHsKICAgICAgICAgaWYgKCFwcm9jZXNzIHx8IHByb2Nlc3NG
b3JUYXNrSWRlbnRpZmllcih0YXNrSWRlbnRpZmllcikgPT0gcHJvY2VzcykKQEAgLTkxLDcgKzkx
LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpzdG9wQWxsVGFza3NGb3JQYWdlKFdlYlBh
Z2VQcm94eSYgcGFnZSwgV2ViUHJvY2Vzc1Byb3gKIAogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhh
bmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFnZSwgdWludDY0X3QgdGFza0lkZW50aWZp
ZXIpCit2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnN0b3BUYXNrKFdlYlBhZ2VQcm94eSYgcGFn
ZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyKQogewog
ICAgIGlmICghZGVjbHR5cGUobV90YXNrcyk6OmlzVmFsaWRLZXkodGFza0lkZW50aWZpZXIpKQog
ICAgICAgICByZXR1cm47CkBAIC0xMTUsNyArMTE1LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVIYW5k
bGVyOjp0YXNrQ29tcGxldGVkKFdlYlVSTFNjaGVtZVRhc2smIHRhc2spCiAgICAgcGxhdGZvcm1U
YXNrQ29tcGxldGVkKHRhc2spOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXI6OnJlbW92
ZVRhc2tGcm9tUGFnZU1hcChXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJRCwgdWludDY0X3Qg
dGFza0lEKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyOjpyZW1vdmVUYXNrRnJvbVBhZ2VNYXAo
V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSUQsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRl
bnRpZmllciB0YXNrSUQpCiB7CiAgICAgYXV0byBpdGVyYXRvciA9IG1fdGFza3NCeVBhZ2VJZGVu
dGlmaWVyLmZpbmQocGFnZUlEKTsKICAgICBBU1NFUlQoaXRlcmF0b3IgIT0gbV90YXNrc0J5UGFn
ZUlkZW50aWZpZXIuZW5kKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViVVJMU2NoZW1lSGFuZGxlci5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2No
ZW1lSGFuZGxlci5oCmluZGV4IGY0ZTNkYjYwY2MzYjhlMDAwYjM0NjAzMmE5OTk3ZWVjMDE0NGQ4
ZGIuLjRjOTk2NjliYTQ0ZDkwNWEwYTI1ZDEyNTYwNWZiMTM4MDczZmRiNmIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZUhhbmRsZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxTY2hlbWVIYW5kbGVyLmgKQEAgLTI2LDYgKzI2LDcg
QEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiV2ViVVJMU2NoZW1lVGFzay5oIgorI2luY2x1
ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3RmL0hh
c2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVkLmg+CkBAIC01MSw3ICs1Miw3IEBAIHB1YmxpYzoKICAgICB1aW50NjRfdCBpZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHN0YXJ0VGFzayhX
ZWJQYWdlUHJveHkmLCBXZWJQcm9jZXNzUHJveHkmLCBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciwg
VVJMU2NoZW1lVGFza1BhcmFtZXRlcnMmJiwgU3luY0xvYWRDb21wbGV0aW9uSGFuZGxlciYmKTsK
LSAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
KTsKKyAgICB2b2lkIHN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllcik7CiAgICAgdm9pZCBzdG9wQWxsVGFza3NGb3JQ
YWdlKFdlYlBhZ2VQcm94eSYsIFdlYlByb2Nlc3NQcm94eSopOwogICAgIHZvaWQgdGFza0NvbXBs
ZXRlZChXZWJVUkxTY2hlbWVUYXNrJik7CiAKQEAgLTYzLDEzICs2NCwxMyBAQCBwcml2YXRlOgog
ICAgIHZpcnR1YWwgdm9pZCBwbGF0Zm9ybVN0b3BUYXNrKFdlYlBhZ2VQcm94eSYsIFdlYlVSTFNj
aGVtZVRhc2smKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHBsYXRmb3JtVGFza0NvbXBsZXRlZChX
ZWJVUkxTY2hlbWVUYXNrJikgeyB9OwogCi0gICAgdm9pZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAo
V2ViUGFnZVByb3h5SWRlbnRpZmllciwgdWludDY0X3QgdGFza0lEKTsKLSAgICBXZWJQcm9jZXNz
UHJveHkqIHByb2Nlc3NGb3JUYXNrSWRlbnRpZmllcih1aW50NjRfdCkgY29uc3Q7CisgICAgdm9p
ZCByZW1vdmVUYXNrRnJvbVBhZ2VNYXAoV2ViUGFnZVByb3h5SWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NG
b3JUYXNrSWRlbnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGNvbnN0
OwogCiAgICAgdWludDY0X3QgbV9pZGVudGlmaWVyOwogCi0gICAgSGFzaE1hcDx1aW50NjRfdCwg
UmVmPFdlYlVSTFNjaGVtZVRhc2s+PiBtX3Rhc2tzOwotICAgIEhhc2hNYXA8V2ViUGFnZVByb3h5
SWRlbnRpZmllciwgSGFzaFNldDx1aW50NjRfdD4+IG1fdGFza3NCeVBhZ2VJZGVudGlmaWVyOwor
ICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBSZWY8V2ViVVJM
U2NoZW1lVGFzaz4+IG1fdGFza3M7CisgICAgSGFzaE1hcDxXZWJQYWdlUHJveHlJZGVudGlmaWVy
LCBIYXNoU2V0PFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4+IG1fdGFza3NCeVBh
Z2VJZGVudGlmaWVyOwogICAgIAogICAgIFN5bmNMb2FkQ29tcGxldGlvbkhhbmRsZXIgbV9zeW5j
TG9hZENvbXBsZXRpb25IYW5kbGVyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJVUkxTY2hlbWVUYXNrLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJVUkxT
Y2hlbWVUYXNrLmgKaW5kZXggZWFjMDliZGVjYTFkZWMwY2IyMTlhYzFkMDMzMDhiMmUyNzIzMDlj
ZS4uMmE5ZTA2YTJhMmIwZmQyZDZjZGU0NDY1MTkzYjZkZjhjODAyNjRjNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViVVJMU2NoZW1lVGFzay5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlVSTFNjaGVtZVRhc2suaApAQCAtNjEsNyArNjEsNyBAQCBwdWJs
aWM6CiAKICAgICB+V2ViVVJMU2NoZW1lVGFzaygpOwogCi0gICAgdWludDY0X3QgaWRlbnRpZmll
cigpIGNvbnN0IHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1faWRlbnRpZmll
cjsgfQorICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKCkg
Y29uc3QgeyBBU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOyByZXR1cm4gbV9pZGVudGlmaWVyOyB9
CiAgICAgV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlUHJveHlJRCgpIGNvbnN0IHsgQVNTRVJU
KFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fcGFnZVByb3h5SUQ7IH0KICAgICBXZWJDb3Jl
OjpQYWdlSWRlbnRpZmllciB3ZWJQYWdlSUQoKSBjb25zdCB7IEFTU0VSVChSdW5Mb29wOjppc01h
aW4oKSk7IHJldHVybiBtX3dlYlBhZ2VJRDsgfQogICAgIFdlYlByb2Nlc3NQcm94eSogcHJvY2Vz
cygpIHsgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsgcmV0dXJuIG1fcHJvY2Vzcy5nZXQoKTsg
fQpAQCAtMTAxLDcgKzEwMSw3IEBAIHByaXZhdGU6CiAKICAgICBSZWY8V2ViVVJMU2NoZW1lSGFu
ZGxlcj4gbV91cmxTY2hlbWVIYW5kbGVyOwogICAgIFJlZlB0cjxXZWJQcm9jZXNzUHJveHk+IG1f
cHJvY2VzczsKLSAgICB1aW50NjRfdCBtX2lkZW50aWZpZXI7CisgICAgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBXZWJQYWdlUHJveHlJZGVudGlm
aWVyIG1fcGFnZVByb3h5SUQ7CiAgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgbV93ZWJQYWdl
SUQ7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IG1fcmVxdWVzdCBXVEZfR1VBUkRFRF9C
WV9MT0NLKG1fcmVxdWVzdExvY2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQVBJ
SW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmgKaW5kZXggM2Y4MjdhMDFmNDg4
MTc0NDY2NmEzNmVlN2FiYWE3MzA3MDE0MGQ0Yi4uNDVjZDYxZTcxZDg4NWNmMWY3Y2MzOGIzNTUx
YTJjNDhiZDA2ZGY1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVj
dGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCkBAIC0yNSw2ICsyNSw4IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIu
aD4KKwogbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7
CkBAIC00NSwxNCArNDcsMTQgQEAgY2xhc3MgUmVzb3VyY2VMb2FkQ2xpZW50IHsKIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIH5SZXNvdXJjZUxvYWRDbGllbnQoKSA9IGRlZmF1bHQ7CiAKLSAgICB2aXJ0
dWFsIHZvaWQgZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpXZWJQYWdlJiwgV2Vi
S2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBib29sIC8qcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcqLykgeyB9
Ci0gICAgdmlydHVhbCB2b2lkIHdpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYktpdDo6V2ViUGFn
ZSYsIFdlYktpdDo6V2ViRnJhbWUmLCB1aW50NjRfdCAvKmlkZW50aWZpZXIqLywgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIHsgfQot
ICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJLaXQ6Oldl
YlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8sIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6Oldl
YkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8sIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgp
IHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViS2l0OjpX
ZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2NF90IC8qaWRlbnRpZmllciovKSB7IH0K
LSAgICB2aXJ0dWFsIHZvaWQgZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2Um
LCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVudGlmaWVyKi8sIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2FjaGVSZXNw
b25zZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgdWludDY0X3QgLyppZGVu
dGlmaWVyKi8pIHsgcmV0dXJuIHRydWU7IH0KLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2UoV2ViS2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIHVpbnQ2
NF90IC8qaWRlbnRpZmllciovKSB7IHJldHVybiB0cnVlOyB9CisgICAgdmlydHVhbCB2b2lkIGRp
ZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYktpdDo6V2ViUGFnZSYsIFdlYktpdDo6V2ViRnJh
bWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJl
c291cmNlUmVxdWVzdCYsIGJvb2wgLypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyovKSB7IH0K
KyAgICB2aXJ0dWFsIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViS2l0OjpXZWJQYWdl
JiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShX
ZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgeyB9CisgICAg
dmlydHVhbCB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViS2l0OjpX
ZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkgeyB9CisgICAgdmlydHVhbCB2b2lkIGRpZEZp
bmlzaExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQg
ZGlkRmFpbExvYWRGb3JSZXNvdXJjZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1l
JiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZUVycm9yJikgeyB9CisgICAgdmlydHVhbCBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2Vi
S2l0OjpXZWJQYWdlJiwgV2ViS2l0OjpXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcikgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZShXZWJLaXQ6OldlYlBhZ2UmLCBXZWJLaXQ6OldlYkZyYW1lJiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBJbmplY3RlZEJ1bmRsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGliL1dlYktpdFdlYlBhZ2UuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9nbGliL1dlYktpdFdlYlBh
Z2UuY3BwCmluZGV4IGZjZTYxMWZhYTlkYTc1MjA3MmQ2MWZiYTdmZmE5MjEzYmQ1ZjM5ODguLjM3
ZDIzYTlhNDA0NjIyNGZjZTE2YWJhMjgyMmM1MDQ2ODhiN2IxMWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ2xpYi9XZWJLaXRXZWJQYWdl
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2ds
aWIvV2ViS2l0V2ViUGFnZS5jcHAKQEAgLTIzOSwxNyArMjM5LDE3IEBAIHB1YmxpYzoKICAgICB9
CiAKIHByaXZhdGU6Ci0gICAgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdl
JiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgYm9vbCkgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZEluaXRpYXRl
TG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgYm9vbCkgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIEFQSTo6RGljdGlvbmFy
eTo6TWFwVHlwZSBtZXNzYWdlOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4
KCJQYWdlIiksICZwYWdlKTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgi
RnJhbWUiKSwgJmZyYW1lKTsKLSAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgi
SWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIpKTsKKyAgICAgICAg
bWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6
Y3JlYXRlKGlkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAgICAgICBtZXNzYWdlLnNldChTdHJp
bmc6OmZyb21VVEY4KCJSZXF1ZXN0IiksIEFQSTo6VVJMUmVxdWVzdDo6Y3JlYXRlKHJlcXVlc3Qp
KTsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5qZWN0ZWRCdW5kbGUoKS0+cG9z
dE1lc3NhZ2UoU3RyaW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRJbml0aWF0ZUxvYWRGb3JSZXNv
dXJjZSIpLCBBUEk6OkRpY3Rpb25hcnk6OmNyZWF0ZShXVEZNb3ZlKG1lc3NhZ2UpKS5wdHIoKSk7
CiAgICAgfQogCi0gICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBwYWdl
LCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVzb3Vy
Y2VSZXF1ZXN0LCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc291cmNlUmVzcG9u
c2UpIG92ZXJyaWRlCisgICAgdm9pZCB3aWxsU2VuZFJlcXVlc3RGb3JGcmFtZShXZWJQYWdlJiBw
YWdlLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVkaXJlY3RSZXNvdXJjZVJlc3BvbnNlKSBvdmVycmlkZQogICAgIHsKICAgICAgICAg
R1JlZlB0cjxXZWJLaXRVUklSZXF1ZXN0PiByZXF1ZXN0ID0gYWRvcHRHUmVmKHdlYmtpdFVSSVJl
cXVlc3RDcmVhdGVGb3JSZXNvdXJjZVJlcXVlc3QocmVzb3VyY2VSZXF1ZXN0KSk7CiAgICAgICAg
IEdSZWZQdHI8V2ViS2l0VVJJUmVzcG9uc2U+IHJlZGlyZWN0UmVzcG9uc2UgPSAhcmVkaXJlY3RS
ZXNvdXJjZVJlc3BvbnNlLmlzTnVsbCgpID8gYWRvcHRHUmVmKHdlYmtpdFVSSVJlc3BvbnNlQ3Jl
YXRlRm9yUmVzb3VyY2VSZXNwb25zZShyZWRpcmVjdFJlc291cmNlUmVzcG9uc2UpKSA6IG51bGxw
dHI7CkBAIC0yNjUsMTggKzI2NSwxOCBAQCBwcml2YXRlOgogCiAgICAgICAgIEFQSTo6RGljdGlv
bmFyeTo6TWFwVHlwZSBtZXNzYWdlOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21V
VEY4KCJQYWdlIiksICZwYWdlKTsKLSAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRG
OCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIpKTsKKyAgICAg
ICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2
NDo6Y3JlYXRlKGlkZW50aWZpZXIudG9VSW50NjQoKSkpOwogICAgICAgICBtZXNzYWdlLnNldChT
dHJpbmc6OmZyb21VVEY4KCJSZXF1ZXN0IiksIEFQSTo6VVJMUmVxdWVzdDo6Y3JlYXRlKHJlc291
cmNlUmVxdWVzdCkpOwogICAgICAgICBpZiAoIXJlZGlyZWN0UmVzb3VyY2VSZXNwb25zZS5pc051
bGwoKSkKICAgICAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlJlZGlyZWN0
UmVzcG9uc2UiKSwgQVBJOjpVUkxSZXNwb25zZTo6Y3JlYXRlKHJlZGlyZWN0UmVzb3VyY2VSZXNw
b25zZSkpOwogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5pbmplY3RlZEJ1bmRsZSgp
LT5wb3N0TWVzc2FnZShTdHJpbmc6OmZyb21VVEY4KCJXZWJQYWdlLkRpZFNlbmRSZXF1ZXN0Rm9y
UmVzb3VyY2UiKSwgQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGTW92ZShtZXNzYWdlKSkucHRy
KCkpOwogICAgIH0KIAotICAgIHZvaWQgZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2Vi
UGFnZSYgcGFnZSwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkgb3ZlcnJpZGUKKyAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25z
ZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3Bv
bnNlKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1l
c3NhZ2U7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlBhZ2UiKSwgJnBh
Z2UpOwotICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiks
IEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllcikpOworICAgICAgICBtZXNzYWdlLnNldChT
dHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRp
Zmllci50b1VJbnQ2NCgpKSk7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgo
IlJlc3BvbnNlIiksIEFQSTo6VVJMUmVzcG9uc2U6OmNyZWF0ZShyZXNwb25zZSkpOwogICAgICAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5pbmplY3RlZEJ1bmRsZSgpLT5wb3N0TWVzc2FnZShT
dHJpbmc6OmZyb21VVEY4KCJXZWJQYWdlLkRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlIiks
IEFQSTo6RGljdGlvbmFyeTo6Y3JlYXRlKFdURk1vdmUobWVzc2FnZSkpLnB0cigpKTsKIApAQCAt
Mjg3LDI4ICsyODcsMjggQEAgcHJpdmF0ZToKICAgICAgICAgfQogICAgIH0KIAotICAgIHZvaWQg
ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGhGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFt
ZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpIG92ZXJyaWRl
CisgICAgdm9pZCBkaWRSZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlKFdlYlBhZ2UmIHBh
Z2UsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIHVpbnQ2NF90IGNvbnRlbnRMZW5ndGgpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBBUEk6
OkRpY3Rpb25hcnk6Ok1hcFR5cGUgbWVzc2FnZTsKICAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5n
Ojpmcm9tVVRGOCgiUGFnZSIpLCAmcGFnZSk7Ci0gICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6
ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJOjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyKSk7
CisgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIklkZW50aWZpZXIiKSwgQVBJ
OjpVSW50NjQ6OmNyZWF0ZShpZGVudGlmaWVyLnRvVUludDY0KCkpKTsKICAgICAgICAgbWVzc2Fn
ZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiQ29udGVudExlbmd0aCIpLCBBUEk6OlVJbnQ2NDo6Y3Jl
YXRlKGNvbnRlbnRMZW5ndGgpKTsKICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuaW5q
ZWN0ZWRCdW5kbGUoKS0+cG9zdE1lc3NhZ2UoU3RyaW5nOjpmcm9tVVRGOCgiV2ViUGFnZS5EaWRS
ZWNlaXZlQ29udGVudExlbmd0aEZvclJlc291cmNlIiksIEFQSTo6RGljdGlvbmFyeTo6Y3JlYXRl
KFdURk1vdmUobWVzc2FnZSkpLnB0cigpKTsKICAgICB9CiAKLSAgICB2b2lkIGRpZEZpbmlzaExv
YWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZp
ZXIpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYg
cGFnZSwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
Zmllcikgb3ZlcnJpZGUKICAgICB7CiAgICAgICAgIEFQSTo6RGljdGlvbmFyeTo6TWFwVHlwZSBt
ZXNzYWdlOwogICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJQYWdlIiksICZw
YWdlKTsKLSAgICAgICAgbWVzc2FnZS5zZXQoU3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIp
LCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50aWZpZXIpKTsKKyAgICAgICAgbWVzc2FnZS5zZXQo
U3RyaW5nOjpmcm9tVVRGOCgiSWRlbnRpZmllciIpLCBBUEk6OlVJbnQ2NDo6Y3JlYXRlKGlkZW50
aWZpZXIudG9VSW50NjQoKSkpOwogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5pbmpl
Y3RlZEJ1bmRsZSgpLT5wb3N0TWVzc2FnZShTdHJpbmc6OmZyb21VVEY4KCJXZWJQYWdlLkRpZEZp
bmlzaExvYWRGb3JSZXNvdXJjZSIpLCBBUEk6OkRpY3Rpb25hcnk6OmNyZWF0ZShXVEZNb3ZlKG1l
c3NhZ2UpKS5wdHIoKSk7CiAgICAgfQogCi0gICAgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291cmNl
KFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VFcnJvciYgZXJyb3IpIG92ZXJyaWRlCisgICAgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291
cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKSBvdmVycmlkZQog
ICAgIHsKICAgICAgICAgQVBJOjpEaWN0aW9uYXJ5OjpNYXBUeXBlIG1lc3NhZ2U7CiAgICAgICAg
IG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIlBhZ2UiKSwgJnBhZ2UpOwotICAgICAgICBt
ZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0Ojpj
cmVhdGUoaWRlbnRpZmllcikpOworICAgICAgICBtZXNzYWdlLnNldChTdHJpbmc6OmZyb21VVEY4
KCJJZGVudGlmaWVyIiksIEFQSTo6VUludDY0OjpjcmVhdGUoaWRlbnRpZmllci50b1VJbnQ2NCgp
KSk7CiAgICAgICAgIG1lc3NhZ2Uuc2V0KFN0cmluZzo6ZnJvbVVURjgoIkVycm9yIiksIEFQSTo6
RXJyb3I6OmNyZWF0ZShlcnJvcikpOwogICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5p
bmplY3RlZEJ1bmRsZSgpLT5wb3N0TWVzc2FnZShTdHJpbmc6OmZyb21VVEY4KCJXZWJQYWdlLkRp
ZEZhaWxMb2FkRm9yUmVzb3VyY2UiKSwgQVBJOjpEaWN0aW9uYXJ5OjpjcmVhdGUoV1RGTW92ZSht
ZXNzYWdlKSkucHRyKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwCmluZGV4IGI4YmQ0MTI0MzIxNGU4MGViZDZiN2M1MTE2
M2E1OTBkOTNiOTdlZjguLjA2ZDhhZGEyNTBhMzcxYmJjYTVlYjBlNjQ0MWE1MmI3MjM0NWM5Zjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQuY3BwCkBAIC0zOSwyMCArMzksMjAgQEAgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50OjpJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQoY29uc3QKICAg
ICBpbml0aWFsaXplKGNsaWVudCk7CiB9CiAKLXZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3Vy
Y2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBX
ZWJGcmFtZSYgZnJhbWUsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVxdWVzdCwgYm9vbCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZykKK3ZvaWQgSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJj
ZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJv
b2wgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRJ
bml0aWF0ZUxvYWRGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQu
ZGlkSW5pdGlhdGVMb2FkRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBp
ZGVudGlmaWVyLCB0b0FQSShyZXF1ZXN0KSwgcGFnZUlzUHJvdmlzaW9uYWxseUxvYWRpbmcsIG1f
Y2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CisgICAgbV9jbGllbnQuZGlkSW5pdGlhdGVMb2FkRm9y
UmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0
KCksIHRvQVBJKHJlcXVlc3QpLCBwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZywgbV9jbGllbnQu
YmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxv
YWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1l
JiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBj
b25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKQordm9pZCBJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBh
Z2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VS
ZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBpZiAoIW1fY2xpZW50LndpbGxTZW5k
UmVxdWVzdEZvckZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBSZWZQdHI8QVBJOjpVUkxS
ZXF1ZXN0PiByZXR1cm5lZFJlcXVlc3QgPSBhZG9wdFJlZih0b0ltcGwobV9jbGllbnQud2lsbFNl
bmRSZXF1ZXN0Rm9yRnJhbWUodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVy
LCB0b0FQSShyZXF1ZXN0KSwgdG9BUEkocmVkaXJlY3RSZXNwb25zZSksIG1fY2xpZW50LmJhc2Uu
Y2xpZW50SW5mbykpKTsKKyAgICBSZWZQdHI8QVBJOjpVUkxSZXF1ZXN0PiByZXR1cm5lZFJlcXVl
c3QgPSBhZG9wdFJlZih0b0ltcGwobV9jbGllbnQud2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUodG9B
UEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJl
cXVlc3QpLCB0b0FQSShyZWRpcmVjdFJlc3BvbnNlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZv
KSkpOwogICAgIGlmIChyZXR1cm5lZFJlcXVlc3QpIHsKICAgICAgICAgLy8gSWYgdGhlIGNsaWVu
dCByZXR1cm5lZCBhbiBIVFRQIGJvZHksIHdlIHdhbnQgdG8gdXNlIHRoYXQgaHR0cCBib2R5LiBU
aGlzIGlzIG5lZWRlZCB0byBmaXggPHJkYXI6Ly9wcm9ibGVtLzIzNzYzNTg0PgogICAgICAgICBh
dXRvJiByZXR1cm5lZFJlc291cmNlUmVxdWVzdCA9IHJldHVybmVkUmVxdWVzdC0+cmVzb3VyY2VS
ZXF1ZXN0KCk7CkBAIC02NCw1MiArNjQsNTIgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNv
dXJjZUxvYWRDbGllbnQ6OndpbGxTZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmIHBhZ2UKICAg
ICAgICAgcmVxdWVzdCA9IHsgfTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJj
ZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2Us
IFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UpCit2b2lkIEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVu
dDo6ZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUm
IGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5kaWRS
ZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGll
bnQuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJh
bWUpLCBpZGVudGlmaWVyLCB0b0FQSShyZXNwb25zZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5m
byk7CisgICAgbV9jbGllbnQuZGlkUmVjZWl2ZVJlc3BvbnNlRm9yUmVzb3VyY2UodG9BUEkoJnBh
Z2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIHRvQVBJKHJlc3BvbnNl
KSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1bmRsZVBh
Z2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2Uo
V2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCB1aW50
NjRfdCBjb250ZW50TGVuZ3RoKQordm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnQ6OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYgcGFnZSwg
V2ViRnJhbWUmIGZyYW1lLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgdWludDY0X3QgY29udGVudExlbmd0aCkKIHsKICAgICBpZiAoIW1fY2xpZW50LmRpZFJl
Y2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1f
Y2xpZW50LmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0
b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLCBjb250ZW50TGVuZ3RoLCBtX2NsaWVudC5iYXNlLmNs
aWVudEluZm8pOworICAgIG1fY2xpZW50LmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoRm9yUmVzb3Vy
Y2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIGNv
bnRlbnRMZW5ndGgsIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLXZvaWQgSW5qZWN0
ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpkaWRGaW5pc2hMb2FkRm9yUmVzb3VyY2Uo
V2ViUGFnZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyKQordm9p
ZCBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZpbmlzaExvYWRGb3JS
ZXNvdXJjZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuZGlkRmlu
aXNoTG9hZEZvclJlc291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2NsaWVudC5kaWRG
aW5pc2hMb2FkRm9yUmVzb3VyY2UodG9BUEkoJnBhZ2UpLCB0b0FQSSgmZnJhbWUpLCBpZGVudGlm
aWVyLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIG1fY2xpZW50LmRpZEZpbmlzaExv
YWRGb3JSZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIudG9V
SW50NjQoKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotdm9pZCBJbmplY3RlZEJ1
bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OmRpZEZhaWxMb2FkRm9yUmVzb3VyY2UoV2ViUGFn
ZSYgcGFnZSwgV2ViRnJhbWUmIGZyYW1lLCB1aW50NjRfdCBpZGVudGlmaWVyLCBjb25zdCBSZXNv
dXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xp
ZW50OjpkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFt
ZSwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGlmICghbV9jbGllbnQuZGlkRmFpbExvYWRGb3JS
ZXNvdXJjZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9jbGllbnQuZGlkRmFpbExvYWRGb3JS
ZXNvdXJjZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIsIHRvQVBJKGVy
cm9yKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBtX2NsaWVudC5kaWRGYWlsTG9h
ZEZvclJlc291cmNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRpZmllci50b1VJ
bnQ2NCgpLCB0b0FQSShlcnJvciksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiB9CiAKLWJv
b2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJlc3Bv
bnNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikK
K2Jvb2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRDYWNoZVJl
c3BvbnNlKFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX2NsaWVudC5zaG91bGRD
YWNoZVJlc3BvbnNlKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIHJldHVybiBtX2NsaWVu
dC5zaG91bGRDYWNoZVJlc3BvbnNlKHRvQVBJKCZwYWdlKSwgdG9BUEkoJmZyYW1lKSwgaWRlbnRp
ZmllciwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICByZXR1cm4gbV9jbGllbnQuc2hv
dWxkQ2FjaGVSZXNwb25zZSh0b0FQSSgmcGFnZSksIHRvQVBJKCZmcmFtZSksIGlkZW50aWZpZXIu
dG9VSW50NjQoKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKIH0KIAotYm9vbCBJbmplY3Rl
ZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KFdlYlBhZ2UmIHBhZ2UsIFdlYkZyYW1lJiBmcmFtZSwgdWludDY0X3QgaWRlbnRpZmllcikKK2Jv
b2wgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VMb2FkQ2xpZW50OjpzaG91bGRVc2VDcmVkZW50
aWFsU3RvcmFnZShXZWJQYWdlJiBwYWdlLCBXZWJGcmFtZSYgZnJhbWUsIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIGlmICghbV9jbGllbnQuc2hv
dWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UpCiAgICAgICAgIHJldHVybiB0cnVlOwogCi0gICAgcmV0
dXJuIG1fY2xpZW50LnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKHRvQVBJKCZwYWdlKSwgdG9B
UEkoJmZyYW1lKSwgaWRlbnRpZmllciwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICBy
ZXR1cm4gbV9jbGllbnQuc2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UodG9BUEkoJnBhZ2UpLCB0
b0FQSSgmZnJhbWUpLCBpZGVudGlmaWVyLnRvVUludDY0KCksIG1fY2xpZW50LmJhc2UuY2xpZW50
SW5mbyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVJlc291cmNl
TG9hZENsaWVudC5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oCmluZGV4IDNhZWYzZGNjZWEzOTY1
MGNkNjFmODRlZmYyODFhZDBkMjQ3YTZhZTcuLjk4ODEzZDliMTU0YmIzZDIzYmNlMzQ1NDQ0YWJk
YmViMDUyNDNhYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlUmVz
b3VyY2VMb2FkQ2xpZW50LmgKQEAgLTUxLDE0ICs1MSwxNCBAQCBjbGFzcyBJbmplY3RlZEJ1bmRs
ZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQgOiBwdWJsaWMgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UmVz
b3VyYwogcHVibGljOgogICAgIGV4cGxpY2l0IEluamVjdGVkQnVuZGxlUGFnZVJlc291cmNlTG9h
ZENsaWVudChjb25zdCBXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnRCYXNlKik7CiAKLSAg
ICB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVp
bnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGJvb2wg
LypwYWdlSXNQcm92aXNpb25hbGx5TG9hZGluZyovKSBvdmVycmlkZTsKLSAgICB2b2lkIHdpbGxT
ZW5kUmVxdWVzdEZvckZyYW1lKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZUZvclJlc291cmNl
KFdlYlBhZ2UmLCBXZWJGcmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50
TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmll
ciwgdWludDY0X3QgY29udGVudExlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGaW5pc2hM
b2FkRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikg
b3ZlcnJpZGU7Ci0gICAgdm9pZCBkaWRGYWlsTG9hZEZvclJlc291cmNlKFdlYlBhZ2UmLCBXZWJG
cmFtZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
KSBvdmVycmlkZTsKLSAgICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYsIFdlYkZy
YW1lJiwgdWludDY0X3QgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91bGRVc2VD
cmVkZW50aWFsU3RvcmFnZShXZWJQYWdlJiwgV2ViRnJhbWUmLCB1aW50NjRfdCBpZGVudGlmaWVy
KSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKFdlYlBhZ2Um
LCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgYm9vbCAvKnBhZ2VJc1Byb3Zpc2lvbmFsbHlMb2FkaW5n
Ki8pIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbFNlbmRSZXF1ZXN0Rm9yRnJhbWUoV2ViUGFnZSYs
IFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBkaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2Vi
RnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKKyAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50
TGVuZ3RoRm9yUmVzb3VyY2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCB1aW50NjRfdCBjb250ZW50TGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2
b2lkIGRpZEZpbmlzaExvYWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlkRmFpbExv
YWRGb3JSZXNvdXJjZShXZWJQYWdlJiwgV2ViRnJhbWUmLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKSBvdmVycmlkZTsKKyAg
ICBib29sIHNob3VsZENhY2hlUmVzcG9uc2UoV2ViUGFnZSYsIFdlYkZyYW1lJiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBvdmVycmlkZTsKKyAgICBib29sIHNob3VsZFVzZUNy
ZWRlbnRpYWxTdG9yYWdlKFdlYlBhZ2UmLCBXZWJGcmFtZSYsIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllcikgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3Jr
UHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4IDYwYjk1ZWQzZWJhODc5YmM0OWU3MTE1NjQxNWEx
YmYwNTljODZhNTQuLjQ3YjkxY2U4N2QzNjEzZTM1ZDU3OTQwNzk3YWRmMGIxZGQwMGE0OGIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0
d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcApAQCAtOTIsNyArOTIsNyBAQCBOZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb246On5OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKQogdm9pZCBOZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVj
dGlvbiwgSVBDOjpEZWNvZGVyJiBkZWNvZGVyKQogewogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VS
ZWNlaXZlck5hbWUoKSA9PSBNZXNzYWdlczo6V2ViUmVzb3VyY2VMb2FkZXI6Om1lc3NhZ2VSZWNl
aXZlck5hbWUoKSkgewotICAgICAgICBpZiAoYXV0byogd2ViUmVzb3VyY2VMb2FkZXIgPSBXZWJQ
cm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2FkZXJTdHJhdGVneSgpLndlYlJlc291cmNlTG9hZGVy
Rm9ySWRlbnRpZmllcihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpCisgICAgICAgIGlmIChhdXRv
KiB3ZWJSZXNvdXJjZUxvYWRlciA9IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLndlYkxvYWRlclN0
cmF0ZWd5KCkud2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKG1ha2VPYmplY3RJZGVudGlm
aWVyPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPihkZWNvZGVyLmRlc3RpbmF0aW9uSUQoKSkpKQog
ICAgICAgICAgICAgd2ViUmVzb3VyY2VMb2FkZXItPmRpZFJlY2VpdmVXZWJSZXNvdXJjZUxvYWRl
ck1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBA
IC0yMjYsMTIgKzIyNiwxMiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6d3JpdGVC
bG9ic1RvVGVtcG9yYXJ5RmlsZXNGb3JJbmRleGVkREIoY29uc3QgVmVjdAogICAgIGNvbm5lY3Rp
b24oKS5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpXcml0ZUJsb2JzVG9UZW1wb3JhcnlGaWxlc0ZvckluZGV4ZWREQihibG9iVVJMcyks
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBOZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb246OmRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwg
UmVzb3VyY2VFcnJvciYmIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCit2b2lk
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUGluZ0xvYWQoV2ViQ29yZTo6UmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3VyY2VFcnJvciYm
IGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCiB7CiAgICAgV2ViUHJvY2Vzczo6
c2luZ2xldG9uKCkud2ViTG9hZGVyU3RyYXRlZ3koKS5kaWRGaW5pc2hQaW5nTG9hZChwaW5nTG9h
ZElkZW50aWZpZXIsIFdURk1vdmUoZXJyb3IpLCBXVEZNb3ZlKHJlc3BvbnNlKSk7CiB9CiAKLXZv
aWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRGaW5pc2hQcmVjb25uZWN0aW9uKHVpbnQ2
NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCit2b2lk
IE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJDb3Jl
OjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFJlc291
cmNlRXJyb3ImJiBlcnJvcikKIHsKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJMb2Fk
ZXJTdHJhdGVneSgpLmRpZEZpbmlzaFByZWNvbm5lY3Rpb24ocHJlY29ubmVjdGlvbklkZW50aWZp
ZXIsIFdURk1vdmUoZXJyb3IpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKaW5kZXggZjgxMTk2
YWUwMTI0MDBiYjFjNmNmZmUyOGE2MmJmZmM0Y2RhNzUxNC4uZDYyZGZlNGRmNWFhNWE3Zjg0NzZh
YTE5ZmVjZjg3NGJiZjg0OWFkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKQEAgLTIzLDE0ICsy
MywxNCBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uX2gKLSNkZWZpbmUgTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1
ZGUgIlNoYXJlYWJsZVJlc291cmNlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvQ29uc29s
ZVR5cGVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9NZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlci5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvUlRDRGF0YUNoYW5uZWxJZGVudGlmaWVyLmg+CisjaW5jbHVk
ZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlcklkZW50aWZpZXIuaD4KICNpbmNsdWRlIDxXZWJDb3Jl
L1NlcnZpY2VXb3JrZXJUeXBlcy5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkBAIC01MCw4ICs1MCw2IEBAIG5hbWVzcGFjZSBX
ZWJLaXQgewogY2xhc3MgV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOwogY2xhc3MgV2ViU1dDbGll
bnRDb25uZWN0aW9uOwogCi10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7
Ci0KIGNsYXNzIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVkPE5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbj4sIElQQzo6Q29ubmVjdGlvbjo6Q2xpZW50IHsKIHB1Ymxp
YzoKICAgICBzdGF0aWMgUmVmPE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbj4gY3JlYXRlKElQQzo6
Q29ubmVjdGlvbjo6SWRlbnRpZmllciBjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6SFRU
UENvb2tpZUFjY2VwdFBvbGljeSBodHRwQ29va2llQWNjZXB0UG9saWN5KQpAQCAtOTYsOCArOTQs
OCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkQ2xvc2UoSVBDOjpDb25uZWN0aW9uJikgb3ZlcnJp
ZGU7CiAgICAgdm9pZCBkaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwg
SVBDOjpNZXNzYWdlTmFtZSkgb3ZlcnJpZGU7CiAKLSAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2Fk
KHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYmLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYpOwotICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVj
dGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3Im
JiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFByZWNv
bm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNvbm5lY3Rpb25J
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiYpOwogICAgIHZvaWQgc2V0T25MaW5l
U3RhdGUoYm9vbCBpc09uTGluZSk7CiAgICAgdm9pZCBjb29raWVBY2NlcHRQb2xpY3lDaGFuZ2Vk
KFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQb2xpY3kpOwogCkBAIC0xMjksNSArMTI3LDMgQEAg
cHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5tZXNzYWdl
cy5pbgppbmRleCBjOGI0YTE4ZjdlOTQyNDU0YjBhYTk2NjYxMmYxOTNhY2ZkYWM4NjQwLi42YmEz
MWY1NDhiOWFhNTAwMTdkNmFkNDc4MjZjNzMxODIxNmE2MzY0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24ubWVzc2Fn
ZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nl
c3NDb25uZWN0aW9uLm1lc3NhZ2VzLmluCkBAIC0yNiw4ICsyNiw4IEBAIG1lc3NhZ2VzIC0+IE5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbiBMZWdhY3lSZWNlaXZlciB7CiAgICAgRGlkQ2FjaGVSZXNv
dXJjZShXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViS2l0OjpTaGFyZWFibGVS
ZXNvdXJjZTo6SGFuZGxlIHJlc291cmNlKQogI2VuZGlmCiAKLSAgICBEaWRGaW5pc2hQaW5nTG9h
ZCh1aW50NjRfdCBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJy
b3IsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCi0gICAgRGlkRmluaXNoUHJl
Y29ubmVjdGlvbih1aW50NjRfdCBwcmVjb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciBlcnJvcikKKyAgICBEaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGVycm9yLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQorICAgIERpZEZp
bmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHByZWNv
bm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogICAgIFNl
dE9uTGluZVN0YXRlKGJvb2wgaXNPbkxpbmUpOwogICAgIENvb2tpZUFjY2VwdFBvbGljeUNoYW5n
ZWQoZW51bTp1aW50OF90IFdlYkNvcmU6OkhUVFBDb29raWVBY2NlcHRQb2xpY3kgcG9saWN5KTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVy
U3RyYXRlZ3kuY3BwCmluZGV4IDM1MjUzMTA2Y2IxZDMwMTMzOWMyYjMwZTg2MDJmNmJmMjRhM2U3
MmIuLmRhMDhmZGE5NDBhMzRmZjJmYTZhMDA2ZDY1ZGFhMWE2Yzc2ZDkwOWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5j
cHAKQEAgLTgxLDggKzgxLDggQEAKICNkZWZpbmUgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9M
T0dfRVJST1JfQkFTSUMoZm10LCAuLi4pIFJFTEVBU0VfTE9HX0VSUk9SKE5ldHdvcmssICIlcCAt
IFdlYkxvYWRlclN0cmF0ZWd5OjoiIGZtdCwgdGhpcywgIyNfX1ZBX0FSR1NfXykKIAogI2RlZmlu
ZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9URU1QTEFURSAiJXAgLSBb
cmVzb3VyY2VMb2FkZXI9JXAsIGZyYW1lTG9hZGVyPSVwLCBmcmFtZT0lcCwgd2ViUGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCByZXNvdXJjZUlEPSUiIFBSSXU2NCAiXSBX
ZWJMb2FkZXJTdHJhdGVneTo6IgotI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xP
R19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJjZUxvYWRlciwgcmVzb3VyY2VMb2Fk
ZXIuZnJhbWVMb2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQYXJhbWV0
ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2
NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAotI2RlZmluZSBXRUJMT0FERVJTVFJB
VEVHWV9XSVRIX0ZSQU1FTE9BREVSX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMgdGhp
cywgbnVsbHB0ciwgJmZyYW1lTG9hZGVyLCAmZnJhbWVMb2FkZXIuZnJhbWUoKSwgdHJhY2tpbmdQ
YXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50
b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRAorI2RlZmluZSBXRUJMT0FE
RVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTIHRoaXMsICZyZXNvdXJj
ZUxvYWRlciwgcmVzb3VyY2VMb2FkZXIuZnJhbWVMb2FkZXIoKSwgcmVzb3VyY2VMb2FkZXIuZnJh
bWUoKSwgdHJhY2tpbmdQYXJhbWV0ZXJzLnBhZ2VJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFt
ZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCB0cmFja2luZ1BhcmFtZXRlcnMucmVzb3VyY2VJRC50
b1VJbnQ2NCgpCisjZGVmaW5lIFdFQkxPQURFUlNUUkFURUdZX1dJVEhfRlJBTUVMT0FERVJfUkVM
RUFTRV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyB0aGlzLCBudWxscHRyLCAmZnJhbWVMb2FkZXIs
ICZmcmFtZUxvYWRlci5mcmFtZSgpLCB0cmFja2luZ1BhcmFtZXRlcnMucGFnZUlELnRvVUludDY0
KCksIHRyYWNraW5nUGFyYW1ldGVycy5mcmFtZUlELnRvVUludDY0KCksIHRyYWNraW5nUGFyYW1l
dGVycy5yZXNvdXJjZUlELnRvVUludDY0KCkKIAogI2RlZmluZSBXRUJMT0FERVJTVFJBVEVHWV9S
RUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgV0VCTE9BREVSU1RSQVRF
R1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVNUExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVHWV9S
RUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVURVJTLCAjI19fVkFfQVJHU19fKQogI2RlZmluZSBX
RUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19FUlJPUihmbXQsIC4uLikgUkVMRUFTRV9MT0df
RVJST1IoTmV0d29yaywgV0VCTE9BREVSU1RSQVRFR1lfUkVMRUFTRV9MT0dfU1RBTkRBUkRfVEVN
UExBVEUgZm10LCBXRUJMT0FERVJTVFJBVEVHWV9SRUxFQVNFX0xPR19TVEFOREFSRF9QQVJBTUVU
RVJTLCAjI19fVkFfQVJHU19fKQpAQCAtMTcwLDcgKzE3MCw3IEBAIHN0YXRpYyBTZWNvbmRzIG1h
eGltdW1CdWZmZXJpbmdUaW1lKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSkKIAogdm9pZCBXZWJM
b2FkZXJTdHJhdGVneTo6c2NoZWR1bGVMb2FkKFJlc291cmNlTG9hZGVyJiByZXNvdXJjZUxvYWRl
ciwgQ2FjaGVkUmVzb3VyY2UqIHJlc291cmNlLCBib29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhU
VFBTVG9IVFRQUmVkaXJlY3QpCiB7Ci0gICAgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlm
aWVyID0gcmVzb3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9
IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NFUlQoaWRlbnRpZmllcik7CiAK
ICAgICBhdXRvJiBmcmFtZUxvYWRlckNsaWVudCA9IHJlc291cmNlTG9hZGVyLmZyYW1lTG9hZGVy
KCktPmNsaWVudCgpOwpAQCAtMjk1LDcgKzI5NSw3IEBAIHN0YXRpYyB2b2lkIGFkZFBhcmFtZXRl
cnNTaGFyZWQoY29uc3QgRnJhbWUqIGZyYW1lLCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVy
CiAKIHZvaWQgV2ViTG9hZGVyU3RyYXRlZ3k6OnNjaGVkdWxlTG9hZEZyb21OZXR3b3JrUHJvY2Vz
cyhSZXNvdXJjZUxvYWRlciYgcmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYg
cmVxdWVzdCwgY29uc3QgV2ViUmVzb3VyY2VMb2FkZXI6OlRyYWNraW5nUGFyYW1ldGVycyYgdHJh
Y2tpbmdQYXJhbWV0ZXJzLCBib29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVk
aXJlY3QsIFNlY29uZHMgbWF4aW11bUJ1ZmZlcmluZ1RpbWUpCiB7Ci0gICAgUmVzb3VyY2VMb2Fk
SWRlbnRpZmllciBpZGVudGlmaWVyID0gcmVzb3VyY2VMb2FkZXIuaWRlbnRpZmllcigpOworICAg
IGF1dG8gaWRlbnRpZmllciA9IHJlc291cmNlTG9hZGVyLmlkZW50aWZpZXIoKTsKICAgICBBU1NF
UlQoaWRlbnRpZmllcik7CiAKICAgICBDb250ZW50U25pZmZpbmdQb2xpY3kgY29udGVudFNuaWZm
aW5nUG9saWN5ID0gcmVzb3VyY2VMb2FkZXIuc2hvdWxkU25pZmZDb250ZW50KCkgPyBDb250ZW50
U25pZmZpbmdQb2xpY3k6OlNuaWZmQ29udGVudCA6IENvbnRlbnRTbmlmZmluZ1BvbGljeTo6RG9O
b3RTbmlmZkNvbnRlbnQ7CkBAIC00NzMsNyArNDczLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVn
eTo6cmVtb3ZlKFJlc291cmNlTG9hZGVyKiByZXNvdXJjZUxvYWRlcikKICAgICAgICAgcmV0dXJu
OwogICAgIH0KICAgICAKLSAgICBSZXNvdXJjZUxvYWRJZGVudGlmaWVyIGlkZW50aWZpZXIgPSBy
ZXNvdXJjZUxvYWRlci0+aWRlbnRpZmllcigpOworICAgIGF1dG8gaWRlbnRpZmllciA9IHJlc291
cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7CiAgICAgaWYgKCFpZGVudGlmaWVyKSB7CiAgICAgICAg
IExPR19FUlJPUigiV2ViTG9hZGVyU3RyYXRlZ3kgcmVtb3ZpbmcgYSBSZXNvdXJjZUxvYWRlciB0
aGF0IGhhcyBubyBpZGVudGlmaWVyLiIpOwogICAgICAgICByZXR1cm47CkBAIC01NjYsNyArNTY2
LDcgQEAgV2ViTG9hZGVyU3RyYXRlZ3k6OlN5bmNMb2FkUmVzdWx0IFdlYkxvYWRlclN0cmF0ZWd5
Ojpsb2FkRGF0YVVSTFN5bmNocm9ub3VzbHkoY28KICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1z
dGQ6Om9wdGlvbmFsPFdlYkxvYWRlclN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVy
U3RyYXRlZ3k6OnRyeUxvYWRpbmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKEZy
YW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgUmVzb3VyY2VMb2FkSWRlbnRpZmllciBpZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCitzdGQ6Om9wdGlvbmFsPFdlYkxvYWRl
clN0cmF0ZWd5OjpTeW5jTG9hZFJlc3VsdD4gV2ViTG9hZGVyU3RyYXRlZ3k6OnRyeUxvYWRpbmdT
eW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKEZyYW1lTG9hZGVyJiBmcmFtZUxvYWRl
ciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICBhdXRvKiB3ZWJGcmFtZUxvYWRlckNsaWVu
dCA9IHRvV2ViRnJhbWVMb2FkZXJDbGllbnQoZnJhbWVMb2FkZXIuY2xpZW50KCkpOwogICAgIGF1
dG8qIHdlYkZyYW1lID0gd2ViRnJhbWVMb2FkZXJDbGllbnQgPyAmd2ViRnJhbWVMb2FkZXJDbGll
bnQtPndlYkZyYW1lKCkgOiBudWxscHRyOwpAQCAtNTg2LDcgKzU4Niw3IEBAIHN0ZDo6b3B0aW9u
YWw8V2ViTG9hZGVyU3RyYXRlZ3k6OlN5bmNMb2FkUmVzdWx0PiBXZWJMb2FkZXJTdHJhdGVneTo6
dHJ5TG9hZGluZ1N5CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotdm9pZCBXZWJMb2FkZXJTdHJh
dGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIs
IHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xp
Y3ksICBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmIG9y
aWdpbmFsUmVxdWVzdEhlYWRlcnMsIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQordm9pZCBXZWJMb2FkZXJTdHJh
dGVneTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShGcmFtZUxvYWRlciYgZnJhbWVMb2FkZXIs
IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVy
LCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3kg
Y2xpZW50Q3JlZGVudGlhbFBvbGljeSwgIGNvbnN0IEZldGNoT3B0aW9ucyYgb3B0aW9ucywgY29u
c3QgSFRUUEhlYWRlck1hcCYgb3JpZ2luYWxSZXF1ZXN0SGVhZGVycywgUmVzb3VyY2VFcnJvciYg
ZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8dWludDhfdD4mIGRhdGEp
CiB7CiAgICAgYXV0byogd2ViRnJhbWVMb2FkZXJDbGllbnQgPSB0b1dlYkZyYW1lTG9hZGVyQ2xp
ZW50KGZyYW1lTG9hZGVyLmNsaWVudCgpKTsKICAgICBhdXRvKiB3ZWJGcmFtZSA9IHdlYkZyYW1l
TG9hZGVyQ2xpZW50ID8gJndlYkZyYW1lTG9hZGVyQ2xpZW50LT53ZWJGcmFtZSgpIDogbnVsbHB0
cjsKQEAgLTY4MywxMiArNjgzLDYgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6YnJvd3NpbmdD
b250ZXh0UmVtb3ZlZChGcmFtZSYgZnJhbWUpCiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCku
ZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2Fn
ZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpCcm93c2luZ0NvbnRleHRSZW1vdmVk
KHBhZ2Uud2ViUGFnZVByb3h5SWRlbnRpZmllcigpLCBwYWdlLmlkZW50aWZpZXIoKSwgV2ViRnJh
bWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpLT5mcmFtZUlEKCkpLCAwKTsKIH0KIAotdWludDY0X3Qg
V2ViTG9hZGVyU3RyYXRlZ3k6OmdlbmVyYXRlTG9hZElkZW50aWZpZXIoKQotewotICAgIHN0YXRp
YyB1aW50NjRfdCBpZGVudGlmaWVyID0gMDsKLSAgICByZXR1cm4gKytpZGVudGlmaWVyOwotfQot
CiBib29sIFdlYkxvYWRlclN0cmF0ZWd5Ojp1c2VQaW5nTG9hZCgpIGNvbnN0CiB7CiAgICAgcmV0
dXJuICFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLmZldGNoQVBJS2Vl
cEFsaXZlRW5hYmxlZCgpOwpAQCAtNzEyLDcgKzcwNiw3IEBAIHZvaWQgV2ViTG9hZGVyU3RyYXRl
Z3k6OnN0YXJ0UGluZ0xvYWQoRnJhbWUmIGZyYW1lLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvCiAgICAgfQogCiAgICAgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMgbG9hZFBhcmFt
ZXRlcnM7Ci0gICAgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkxvYWRlclN0cmF0ZWd5
OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7CisgICAgbG9hZFBhcmFtZXRlcnMuaWRlbnRpZmll
ciA9IFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKICAgICBs
b2FkUGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRCA9IHdlYlBhZ2UtPndlYlBhZ2VQcm94eUlkZW50
aWZpZXIoKTsKICAgICBsb2FkUGFyYW1ldGVycy53ZWJQYWdlSUQgPSB3ZWJQYWdlLT5pZGVudGlm
aWVyKCk7CiAgICAgbG9hZFBhcmFtZXRlcnMud2ViRnJhbWVJRCA9IHdlYkZyYW1lLT5mcmFtZUlE
KCk7CkBAIC03NDksNyArNzQzLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c3RhcnRQaW5n
TG9hZChGcmFtZSYgZnJhbWUsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY28KICAgICBXZWJQ
cm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24oKS5jb25u
ZWN0aW9uKCkuc2VuZChNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M6Okxv
YWRQaW5nIHsgbG9hZFBhcmFtZXRlcnMgfSwgMCk7CiB9CiAKLXZvaWQgV2ViTG9hZGVyU3RyYXRl
Z3k6OmRpZEZpbmlzaFBpbmdMb2FkKHVpbnQ2NF90IHBpbmdMb2FkSWRlbnRpZmllciwgUmVzb3Vy
Y2VFcnJvciYmIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UpCit2b2lkIFdlYkxv
YWRlclN0cmF0ZWd5OjpkaWRGaW5pc2hQaW5nTG9hZChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgcGluZ0xvYWRJZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IsIFJlc291
cmNlUmVzcG9uc2UmJiByZXNwb25zZSkKIHsKICAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxl
ciA9IG1fcGluZ0xvYWRDb21wbGV0aW9uSGFuZGxlcnMudGFrZShwaW5nTG9hZElkZW50aWZpZXIp
KQogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKGVycm9yKSwgV1RGTW92ZShyZXNw
b25zZSkpOwpAQCAtNzg3LDEzICs3ODEsNiBAQCB2b2lkIFdlYkxvYWRlclN0cmF0ZWd5OjpwcmVj
b25uZWN0VG8oV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgV2ViUGFnZQogICAg
ICAgICAgICAgcmVxdWVzdC5zZXRJc0FwcEluaXRpYXRlZChsb2FkZXItPmxhc3ROYXZpZ2F0aW9u
V2FzQXBwSW5pdGlhdGVkKCkpOwogICAgIH0KIAotICAgIHN0ZDo6b3B0aW9uYWw8dWludDY0X3Q+
IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyOwotICAgIGlmIChjb21wbGV0aW9uSGFuZGxlcikgewot
ICAgICAgICBwcmVjb25uZWN0aW9uSWRlbnRpZmllciA9IFdlYkxvYWRlclN0cmF0ZWd5OjpnZW5l
cmF0ZUxvYWRJZGVudGlmaWVyKCk7Ci0gICAgICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9wcmVjb25u
ZWN0Q29tcGxldGlvbkhhbmRsZXJzLmFkZCgqcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpKTsKLSAgICAgICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQs
IGFkZFJlc3VsdC5pc05ld0VudHJ5KTsKLSAgICB9Ci0KICAgICBOZXR3b3JrUmVzb3VyY2VMb2Fk
UGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogICAgIHBhcmFtZXRlcnMucmVxdWVzdCA9IFdURk1vdmUo
cmVxdWVzdCk7CiAgICAgaWYgKHBhcmFtZXRlcnMucmVxdWVzdC5odHRwVXNlckFnZW50KCkuaXNF
bXB0eSgpKSB7CkBAIC04MDMsNiArNzkwLDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJl
Y29ubmVjdFRvKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBhZ2UKICAg
ICAgICAgaWYgKCF3ZWJQYWdlVXNlckFnZW50LmlzRW1wdHkoKSkKICAgICAgICAgICAgIHBhcmFt
ZXRlcnMucmVxdWVzdC5zZXRIVFRQVXNlckFnZW50KHdlYlBhZ2VVc2VyQWdlbnQpOwogICAgIH0K
KyAgICBwYXJhbWV0ZXJzLmlkZW50aWZpZXIgPSBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXI6OmdlbmVyYXRlKCk7CiAgICAgcGFyYW1ldGVycy53ZWJQYWdlUHJveHlJRCA9IHdlYlBh
Z2Uud2ViUGFnZVByb3h5SWRlbnRpZmllcigpOwogICAgIHBhcmFtZXRlcnMud2ViUGFnZUlEID0g
d2ViUGFnZS5pZGVudGlmaWVyKCk7CiAgICAgcGFyYW1ldGVycy53ZWJGcmFtZUlEID0gd2ViRnJh
bWUuZnJhbWVJRCgpOwpAQCAtODE5LDEwICs4MDcsMTkgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVn
eTo6cHJlY29ubmVjdFRvKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFdlYlBh
Z2UKICAgICBwYXJhbWV0ZXJzLmlzTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4gPSB3ZWJGcmFt
ZS5pc1RvcEZyYW1lTmF2aWdhdGluZ1RvQXBwQm91bmREb21haW4oKTsKICNlbmRpZgogCisgICAg
c3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IHByZWNvbm5l
Y3Rpb25JZGVudGlmaWVyOworICAgIGlmIChjb21wbGV0aW9uSGFuZGxlcikgeworICAgICAgICBw
cmVjb25uZWN0aW9uSWRlbnRpZmllciA9IHBhcmFtZXRlcnMuaWRlbnRpZmllcjsKKyAgICAgICAg
YXV0byBhZGRSZXN1bHQgPSBtX3ByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcnMuYWRkKCpwcmVj
b25uZWN0aW9uSWRlbnRpZmllciwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgICAg
ICBBU1NFUlRfVU5VU0VEKGFkZFJlc3VsdCwgYWRkUmVzdWx0LmlzTmV3RW50cnkpOworICAgIH0K
KworICAgIC8vIEZJWE1FOiBVc2Ugc2VuZFdpdGhBc3luY1JlcGx5IGluc3RlYWQgb2YgcHJlY29u
bmVjdGlvbklkZW50aWZpZXIKKyAgICAvLyBGSVhNRTogZG9uJ3QgdXNlIFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBmb3IgYSBwcmVjb25uZWN0aW9uIGlkZW50aWZpZXIsIHRvby4g
SXQgc2hvdWxkIGhhdmUgaXRzIG93biB0eXBlLgogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3Nh
Z2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6UHJlY29ubmVjdFRvKHByZWNvbm5l
Y3Rpb25JZGVudGlmaWVyLCBXVEZNb3ZlKHBhcmFtZXRlcnMpKSwgMCk7CiB9CiAKLXZvaWQgV2Vi
TG9hZGVyU3RyYXRlZ3k6OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24odWludDY0X3QgcHJlY29ubmVj
dGlvbklkZW50aWZpZXIsIFJlc291cmNlRXJyb3ImJiBlcnJvcikKK3ZvaWQgV2ViTG9hZGVyU3Ry
YXRlZ3k6OmRpZEZpbmlzaFByZWNvbm5lY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBSZXNvdXJjZUVycm9yJiYgZXJyb3IpCiB7
CiAgICAgaWYgKGF1dG8gY29tcGxldGlvbkhhbmRsZXIgPSBtX3ByZWNvbm5lY3RDb21wbGV0aW9u
SGFuZGxlcnMudGFrZShwcmVjb25uZWN0aW9uSWRlbnRpZmllcikpCiAgICAgICAgIGNvbXBsZXRp
b25IYW5kbGVyKFdURk1vdmUoZXJyb3IpKTsKQEAgLTg2MywyMSArODYwLDIxIEBAIHZvaWQgV2Vi
TG9hZGVyU3RyYXRlZ3k6OnNldENhcHR1cmVFeHRyYU5ldHdvcmtMb2FkTWV0cmljc0VuYWJsZWQo
Ym9vbCBlbmFibGVkKQogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbigpLmNvbm5lY3Rpb24oKS5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrQ29u
bmVjdGlvblRvV2ViUHJvY2Vzczo6U2V0Q2FwdHVyZUV4dHJhTmV0d29ya0xvYWRNZXRyaWNzRW5h
YmxlZChlbmFibGVkKSwgMCk7CiB9CiAKLVJlc291cmNlUmVzcG9uc2UgV2ViTG9hZGVyU3RyYXRl
Z3k6OnJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VM
b2FkSWRlbnRpZmllcikKK1Jlc291cmNlUmVzcG9uc2UgV2ViTG9hZGVyU3RyYXRlZ3k6OnJlc3Bv
bnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJl
c291cmNlTG9hZElkZW50aWZpZXIpCiB7CiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsK
ICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5lbnN1cmVOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rp
b24oKS5jb25uZWN0aW9uKCkuc2VuZFN5bmMoTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9X
ZWJQcm9jZXNzOjpHZXROZXR3b3JrTG9hZEluZm9ybWF0aW9uUmVzcG9uc2UgeyByZXNvdXJjZUxv
YWRJZGVudGlmaWVyIH0sIE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vzczo6
R2V0TmV0d29ya0xvYWRJbmZvcm1hdGlvblJlc3BvbnNlOjpSZXBseSB7IHJlc3BvbnNlIH0sIDAp
OwogICAgIHJldHVybiByZXNwb25zZTsKIH0KIAotVmVjdG9yPE5ldHdvcmtUcmFuc2FjdGlvbklu
Zm9ybWF0aW9uPiBXZWJMb2FkZXJTdHJhdGVneTo6aW50ZXJtZWRpYXRlTG9hZEluZm9ybWF0aW9u
RnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmll
cikKK1ZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gV2ViTG9hZGVyU3RyYXRl
Z3k6OmludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJZGVudGlmaWVy
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciByZXNvdXJjZUxvYWRJZGVudGlmaWVy
KQogewogICAgIFZlY3RvcjxOZXR3b3JrVHJhbnNhY3Rpb25JbmZvcm1hdGlvbj4gaW5mb3JtYXRp
b247CiAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25u
ZWN0aW9uKCkuY29ubmVjdGlvbigpLnNlbmRTeW5jKE1lc3NhZ2VzOjpOZXR3b3JrQ29ubmVjdGlv
blRvV2ViUHJvY2Vzczo6R2V0TmV0d29ya0xvYWRJbnRlcm1lZGlhdGVJbmZvcm1hdGlvbiB7IHJl
c291cmNlTG9hZElkZW50aWZpZXIgfSwgTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQ
cm9jZXNzOjpHZXROZXR3b3JrTG9hZEludGVybWVkaWF0ZUluZm9ybWF0aW9uOjpSZXBseSB7IGlu
Zm9ybWF0aW9uIH0sIDApOwogICAgIHJldHVybiBpbmZvcm1hdGlvbjsKIH0KIAotTmV0d29ya0xv
YWRNZXRyaWNzIFdlYkxvYWRlclN0cmF0ZWd5OjpuZXR3b3JrTWV0cmljc0Zyb21SZXNvdXJjZUxv
YWRJZGVudGlmaWVyKHVpbnQ2NF90IHJlc291cmNlTG9hZElkZW50aWZpZXIpCitOZXR3b3JrTG9h
ZE1ldHJpY3MgV2ViTG9hZGVyU3RyYXRlZ3k6Om5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHJlc291cmNlTG9h
ZElkZW50aWZpZXIpCiB7CiAgICAgTmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzOwog
ICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlv
bigpLmNvbm5lY3Rpb24oKS5zZW5kU3luYyhNZXNzYWdlczo6TmV0d29ya0Nvbm5lY3Rpb25Ub1dl
YlByb2Nlc3M6OlRha2VOZXR3b3JrTG9hZEluZm9ybWF0aW9uTWV0cmljcyB7IHJlc291cmNlTG9h
ZElkZW50aWZpZXIgfSwgTWVzc2FnZXM6Ok5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzOjpU
YWtlTmV0d29ya0xvYWRJbmZvcm1hdGlvbk1ldHJpY3M6OlJlcGx5IHsgbmV0d29ya01ldHJpY3Mg
fSwgMCk7CkBAIC05MTksNyArOTE2LDcgQEAgdm9pZCBXZWJMb2FkZXJTdHJhdGVneTo6c2V0UmVz
b3VyY2VMb2FkU2NoZWR1bGluZ01vZGUoV2ViQ29yZTo6UGFnZSYgcGFnZSwgV2ViQ28KIAogdm9p
ZCBXZWJMb2FkZXJTdHJhdGVneTo6cHJpb3JpdGl6ZVJlc291cmNlTG9hZHMoY29uc3QgVmVjdG9y
PFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyKj4mIHJlc291cmNlcykKIHsKLSAgICBhdXRvIGlk
ZW50aWZpZXJzID0gcmVzb3VyY2VzLm1hcChbXShhdXRvKiBsb2FkZXIpIC0+IFJlc291cmNlTG9h
ZElkZW50aWZpZXIgeworICAgIGF1dG8gaWRlbnRpZmllcnMgPSByZXNvdXJjZXMubWFwKFtdKGF1
dG8qIGxvYWRlcikgLT4gV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHsKICAgICAg
ICAgcmV0dXJuIGxvYWRlci0+aWRlbnRpZmllcigpOwogICAgIH0pOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuaAppbmRleCBj
Nzk2YWU1MGYxNGMxNmVjMjVlNmUwMTQ5ZDc2NmJmN2QxMWUxODdiLi40MDVjNzM0MzBlMjEwMTJi
MWUxYWM3ODg5NjVjYmM5NzY3NzYyMzY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmgKQEAgLTQ0LDcgKzQ0LDYgQEAgY2xh
c3MgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOwogY2xhc3MgV2ViRnJhbWU7CiBjbGFzcyBXZWJQ
YWdlOwogY2xhc3MgV2ViVVJMU2NoZW1lVGFza1Byb3h5OwotdHlwZWRlZiB1aW50NjRfdCBSZXNv
dXJjZUxvYWRJZGVudGlmaWVyOwogCiBjbGFzcyBXZWJMb2FkZXJTdHJhdGVneSBmaW5hbCA6IHB1
YmxpYyBXZWJDb3JlOjpMb2FkZXJTdHJhdGVneSB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUo
V2ViTG9hZGVyU3RyYXRlZ3kpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKQEAgLTUzLDcgKzUy
LDcgQEAgcHVibGljOgogICAgIH5XZWJMb2FkZXJTdHJhdGVneSgpIGZpbmFsOwogICAgIAogICAg
IHZvaWQgbG9hZFJlc291cmNlKFdlYkNvcmU6OkZyYW1lJiwgV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2UmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJPcHRpb25zJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZWZQdHI8V2ViQ29yZTo6U3Vi
cmVzb3VyY2VMb2FkZXI+JiYpPiYmKSBmaW5hbDsKLSAgICB2b2lkIGxvYWRSZXNvdXJjZVN5bmNo
cm9ub3VzbHkoV2ViQ29yZTo6RnJhbWVMb2FkZXImLCB1bnNpZ25lZCBsb25nIHJlc291cmNlTG9h
ZElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OkNs
aWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IFdlYkNvcmU6OkZldGNoT3B0aW9ucyYsIGNvbnN0
IFdlYkNvcmU6OkhUVFBIZWFkZXJNYXAmLCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkgZmluYWw7CisgICAg
dm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdlYkNvcmU6OkZyYW1lTG9hZGVyJiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBXZWJDb3JlOjpG
ZXRjaE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQSGVhZGVyTWFwJiwgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8dWludDhfdD4m
IGRhdGEpIGZpbmFsOwogICAgIHZvaWQgcGFnZUxvYWRDb21wbGV0ZWQoV2ViQ29yZTo6UGFnZSYp
IGZpbmFsOwogICAgIHZvaWQgYnJvd3NpbmdDb250ZXh0UmVtb3ZlZChXZWJDb3JlOjpGcmFtZSYp
IGZpbmFsOwogCkBAIC02OCwxNSArNjcsMTUgQEAgcHVibGljOgogCiAgICAgYm9vbCB1c2VQaW5n
TG9hZCgpIGNvbnN0IGZpbmFsOwogICAgIHZvaWQgc3RhcnRQaW5nTG9hZChXZWJDb3JlOjpGcmFt
ZSYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OkhUVFBIZWFkZXJN
YXAmIG9yaWdpbmFsUmVxdWVzdEhlYWRlcnMsIGNvbnN0IFdlYkNvcmU6OkZldGNoT3B0aW9ucyYs
IFdlYkNvcmU6OkNvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb24sIFBpbmdMb2FkQ29tcGxl
dGlvbkhhbmRsZXImJikgZmluYWw7Ci0gICAgdm9pZCBkaWRGaW5pc2hQaW5nTG9hZCh1aW50NjRf
dCBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3ImJiwgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYmKTsKKyAgICB2b2lkIGRpZEZpbmlzaFBpbmdMb2FkKFdlYkNvcmU6
OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBwaW5nTG9hZElkZW50aWZpZXIsIFdlYkNvcmU6OlJl
c291cmNlRXJyb3ImJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmKTsKIAogICAgIHZvaWQg
cHJlY29ubmVjdFRvKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBXZWJQYWdlJiwgV2ViRnJh
bWUmLCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFsc1BvbGljeSwgUHJlY29ubmVjdENvbXBsZXRp
b25IYW5kbGVyJiYgPSBudWxscHRyKTsKICAgICB2b2lkIHByZWNvbm5lY3RUbyhXZWJDb3JlOjpG
cmFtZUxvYWRlciYsIGNvbnN0IFVSTCYsIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5
LCBQcmVjb25uZWN0Q29tcGxldGlvbkhhbmRsZXImJikgZmluYWw7Ci0gICAgdm9pZCBkaWRGaW5p
c2hQcmVjb25uZWN0aW9uKHVpbnQ2NF90IHByZWNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJDb3Jl
OjpSZXNvdXJjZUVycm9yJiYpOworICAgIHZvaWQgZGlkRmluaXNoUHJlY29ubmVjdGlvbihXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgcHJlY29ubmVjdGlvbklkZW50aWZpZXIsIFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImJik7CiAKICAgICB2b2lkIHNldENhcHR1cmVFeHRyYU5ldHdv
cmtMb2FkTWV0cmljc0VuYWJsZWQoYm9vbCkgZmluYWw7CiAKLSAgICBXZWJSZXNvdXJjZUxvYWRl
ciogd2ViUmVzb3VyY2VMb2FkZXJGb3JJZGVudGlmaWVyKFJlc291cmNlTG9hZElkZW50aWZpZXIg
aWRlbnRpZmllcikgY29uc3QgeyByZXR1cm4gbV93ZWJSZXNvdXJjZUxvYWRlcnMuZ2V0KGlkZW50
aWZpZXIpOyB9CisgICAgV2ViUmVzb3VyY2VMb2FkZXIqIHdlYlJlc291cmNlTG9hZGVyRm9ySWRl
bnRpZmllcihXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikgY29u
c3QgeyByZXR1cm4gbV93ZWJSZXNvdXJjZUxvYWRlcnMuZ2V0KGlkZW50aWZpZXIpOyB9CiAgICAg
dm9pZCBzY2hlZHVsZVBsdWdpblN0cmVhbUxvYWQoV2ViQ29yZTo6RnJhbWUmLCBXZWJDb3JlOjpO
ZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlckNsaWVudCYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJlZlB0cjxXZWJDb3JlOjpOZXRzY2FwZVBsdWdJ
blN0cmVhbUxvYWRlcj4mJik+JiYpOwogCiAgICAgdm9pZCBuZXR3b3JrUHJvY2Vzc0NyYXNoZWQo
KTsKQEAgLTkwLDggKzg5LDYgQEAgcHVibGljOgogICAgIHZvaWQgYWRkT25saW5lU3RhdGVDaGFu
Z2VMaXN0ZW5lcihGdW5jdGlvbjx2b2lkKGJvb2wpPiYmKSBmaW5hbDsKICAgICB2b2lkIHNldE9u
TGluZVN0YXRlKGJvb2wpOwogCi0gICAgc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlTG9hZElkZW50
aWZpZXIoKTsKLQogICAgIHZvaWQgc2V0RXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2FkSWRlbnRp
ZmllclRvUmVzdW1lKHN0ZDo6b3B0aW9uYWw8TmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+
IGV4aXN0aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSkgeyBtX2V4aXN0
aW5nTmV0d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZSA9IGV4aXN0aW5nTmV0d29y
a1Jlc291cmNlTG9hZElkZW50aWZpZXJUb1Jlc3VtZTsgfQogCiAgICAgc3RhdGljIGNvbnN0ZXhw
ciBTZWNvbmRzIG1lZGlhTWF4aW11bUJ1ZmZlcmluZ1RpbWUgeyA1MF9tcyB9OwpAQCAtMTA4LDEy
ICsxMDUsMTIgQEAgcHJpdmF0ZToKICAgICAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBlcnJv
cjsKICAgICAgICAgVmVjdG9yPHVpbnQ4X3Q+IGRhdGE7CiAgICAgfTsKLSAgICBzdGQ6Om9wdGlv
bmFsPFN5bmNMb2FkUmVzdWx0PiB0cnlMb2FkaW5nU3luY2hyb25vdXNseVVzaW5nVVJMU2NoZW1l
SGFuZGxlcihXZWJDb3JlOjpGcmFtZUxvYWRlciYsIFJlc291cmNlTG9hZElkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAgIHN0ZDo6b3B0aW9uYWw8U3luY0xv
YWRSZXN1bHQ+IHRyeUxvYWRpbmdTeW5jaHJvbm91c2x5VXNpbmdVUkxTY2hlbWVIYW5kbGVyKFdl
YkNvcmU6OkZyYW1lTG9hZGVyJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKTsKICAgICBTeW5jTG9hZFJlc3VsdCBsb2Fk
RGF0YVVSTFN5bmNocm9ub3VzbHkoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jik7CiAK
LSAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlRnJvbVJlc291cmNlTG9hZElk
ZW50aWZpZXIodWludDY0X3QgcmVzb3VyY2VMb2FkSWRlbnRpZmllcikgZmluYWw7Ci0gICAgVmVj
dG9yPFdlYkNvcmU6Ok5ldHdvcmtUcmFuc2FjdGlvbkluZm9ybWF0aW9uPiBpbnRlcm1lZGlhdGVM
b2FkSW5mb3JtYXRpb25Gcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJj
ZUxvYWRJZGVudGlmaWVyKSBmaW5hbDsKLSAgICBXZWJDb3JlOjpOZXR3b3JrTG9hZE1ldHJpY3Mg
bmV0d29ya01ldHJpY3NGcm9tUmVzb3VyY2VMb2FkSWRlbnRpZmllcih1aW50NjRfdCByZXNvdXJj
ZUxvYWRJZGVudGlmaWVyKSBmaW5hbDsKKyAgICBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJl
c3BvbnNlRnJvbVJlc291cmNlTG9hZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyKSBmaW5hbDsKKyAgICBWZWN0b3I8V2ViQ29yZTo6TmV0d29ya1RyYW5zYWN0aW9u
SW5mb3JtYXRpb24+IGludGVybWVkaWF0ZUxvYWRJbmZvcm1hdGlvbkZyb21SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcikgZmluYWw7CisgICAg
V2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzIG5ldHdvcmtNZXRyaWNzRnJvbVJlc291cmNlTG9h
ZElkZW50aWZpZXIoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKIAog
ICAgIGJvb2wgc2hvdWxkUGVyZm9ybVNlY3VyaXR5Q2hlY2tzKCkgY29uc3QgZmluYWw7CiAgICAg
Ym9vbCBoYXZlUGVyZm9ybWVkU2VjdXJpdHlDaGVja3MoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXNwb25zZSYpIGNvbnN0IGZpbmFsOwpAQCAtMTIzLDkgKzEyMCw5IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBzZXRSZXNvdXJjZUxvYWRTY2hlZHVsaW5nTW9kZShXZWJDb3JlOjpQYWdlJiwgV2ViQ29y
ZTo6TG9hZFNjaGVkdWxpbmdNb2RlKSBmaW5hbDsKICAgICB2b2lkIHByaW9yaXRpemVSZXNvdXJj
ZUxvYWRzKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcio+JikgZmluYWw7
CiAKLSAgICBWZWN0b3I8dWludDY0X3Q+IG9uZ29pbmdMb2FkcygpIGNvbnN0IGZpbmFsCisgICAg
VmVjdG9yPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcj4gb25nb2luZ0xvYWRzKCkg
Y29uc3QgZmluYWwKICAgICB7Ci0gICAgICAgIHJldHVybiBXVEY6Om1hcChtX3dlYlJlc291cmNl
TG9hZGVycywgW10oYXV0byYmIGtleVZhbHVlKSAtPiB1aW50NjRfdCB7CisgICAgICAgIHJldHVy
biBXVEY6Om1hcChtX3dlYlJlc291cmNlTG9hZGVycywgW10oYXV0byYmIGtleVZhbHVlKSAtPiBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgewogICAgICAgICAgICAgcmV0dXJuIGtl
eVZhbHVlLmtleTsKICAgICAgICAgfSk7CiAgICAgfQpAQCAtMTMzLDEwICsxMzAsMTAgQEAgcHJp
dmF0ZToKICAgICBIYXNoU2V0PFJlZlB0cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4+IG1faW50
ZXJuYWxseUZhaWxlZFJlc291cmNlTG9hZGVyczsKICAgICBSdW5Mb29wOjpUaW1lcjxXZWJMb2Fk
ZXJTdHJhdGVneT4gbV9pbnRlcm5hbGx5RmFpbGVkTG9hZFRpbWVyOwogICAgIAotICAgIEhhc2hN
YXA8dW5zaWduZWQgbG9uZywgUmVmUHRyPFdlYlJlc291cmNlTG9hZGVyPj4gbV93ZWJSZXNvdXJj
ZUxvYWRlcnM7Ci0gICAgSGFzaE1hcDx1bnNpZ25lZCBsb25nLCBXZWJVUkxTY2hlbWVUYXNrUHJv
eHkqPiBtX3VybFNjaGVtZVRhc2tzOwotICAgIEhhc2hNYXA8dW5zaWduZWQgbG9uZywgUGluZ0xv
YWRDb21wbGV0aW9uSGFuZGxlcj4gbV9waW5nTG9hZENvbXBsZXRpb25IYW5kbGVyczsKLSAgICBI
YXNoTWFwPHVuc2lnbmVkIGxvbmcsIFByZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcj4gbV9wcmVj
b25uZWN0Q29tcGxldGlvbkhhbmRsZXJzOworICAgIEhhc2hNYXA8V2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyLCBSZWZQdHI8V2ViUmVzb3VyY2VMb2FkZXI+PiBtX3dlYlJlc291cmNl
TG9hZGVyczsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwg
V2ViVVJMU2NoZW1lVGFza1Byb3h5Kj4gbV91cmxTY2hlbWVUYXNrczsKKyAgICBIYXNoTWFwPFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUGluZ0xvYWRDb21wbGV0aW9uSGFuZGxl
cj4gbV9waW5nTG9hZENvbXBsZXRpb25IYW5kbGVyczsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgUHJlY29ubmVjdENvbXBsZXRpb25IYW5kbGVyPiBtX3By
ZWNvbm5lY3RDb21wbGV0aW9uSGFuZGxlcnM7CiAgICAgVmVjdG9yPEZ1bmN0aW9uPHZvaWQoYm9v
bCk+PiBtX29ubGluZVN0YXRlQ2hhbmdlTGlzdGVuZXJzOwogICAgIHN0ZDo6b3B0aW9uYWw8TmV0
d29ya1Jlc291cmNlTG9hZElkZW50aWZpZXI+IG1fZXhpc3RpbmdOZXR3b3JrUmVzb3VyY2VMb2Fk
SWRlbnRpZmllclRvUmVzdW1lOwogICAgIGJvb2wgbV9pc09uTGluZSB7IHRydWUgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlSW50ZXJj
ZXB0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJS
ZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuY3BwCmluZGV4IGQzNjRlNzAxMmQ4M2JmYTI5NTM4
ZTRiYjcwOWM3YTU3YTFiZmQ0OGEuLjU2YzdiY2RjMDgyNGY5ODJlMDllNWVkZDBmY2MzMjU2ODU4
ZTRhZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJl
c291cmNlSW50ZXJjZXB0Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmNwcApAQCAtMjgsMjkg
KzI4LDI5IEBACiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1ib29sIFdlYlJlc291cmNlSW50ZXJj
ZXB0Q29udHJvbGxlcjo6aXNJbnRlcmNlcHRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBj
b25zdAorYm9vbCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmlzSW50ZXJjZXB0aW5n
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAogewog
ICAgIHJldHVybiBtX2ludGVyY2VwdGVkUmVzcG9uc2VRdWV1ZS5jb250YWlucyhpZGVudGlmaWVy
KTsKIH0KIAotdm9pZCBXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmJlZ2luSW50ZXJj
ZXB0aW5nUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKQordm9pZCBXZWJSZXNvdXJj
ZUludGVyY2VwdENvbnRyb2xsZXI6OmJlZ2luSW50ZXJjZXB0aW5nUmVzcG9uc2UoV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgbV9pbnRlcmNlcHRl
ZFJlc3BvbnNlUXVldWUuc2V0KGlkZW50aWZpZXIsIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+KCkp
OwogfQogCi12b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0Q29udHJvbGxlcjo6Y29udGludWVSZXNw
b25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYlJlc291cmNlSW50ZXJjZXB0
Q29udHJvbGxlcjo6Y29udGludWVSZXNwb25zZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIHF1ZXVlID0gbV9pbnRlcmNlcHRlZFJlc3Bv
bnNlUXVldWUudGFrZShpZGVudGlmaWVyKTsKICAgICBmb3IgKGF1dG8mIGNhbGxiYWNrIDogcXVl
dWUpCiAgICAgICAgIGNhbGxiYWNrKCk7CiB9CiAKLXZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRD
b250cm9sbGVyOjppbnRlcmNlcHRlZFJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikK
K3ZvaWQgV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyOjppbnRlcmNlcHRlZFJlc3BvbnNl
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIG1f
aW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVlLnJlbW92ZShpZGVudGlmaWVyKTsKIH0KIAotdm9pZCBX
ZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXI6OmRlZmVyKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRnVuY3Rpb248dm9pZCgpPiYmIGZ1bmN0aW9uKQordm9pZCBXZWJSZXNvdXJjZUludGVy
Y2VwdENvbnRyb2xsZXI6OmRlZmVyKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBp
ZGVudGlmaWVyLCBGdW5jdGlvbjx2b2lkKCk+JiYgZnVuY3Rpb24pCiB7CiAgICAgQVNTRVJUKGlz
SW50ZXJjZXB0aW5nKGlkZW50aWZpZXIpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyLmggYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xs
ZXIuaAppbmRleCBkNzFiOTA3M2VhNDVjODYxMDJlYjQ4NzVkOWY5MWMwMDFjODllOGY2Li44ODM3
ODI3MDBiYTljNzFmYjI2NzZhZjdmNjNhNmUwYzNmZWZjYjY2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUludGVy
Y2VwdENvbnRyb2xsZXIuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8d3Rm
L0RlcXVlLmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hN
YXAuaD4KQEAgLTMzLDIxICszNCwyMSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2Vi
UmVzb3VyY2VJbnRlcmNlcHRDb250cm9sbGVyIHsKIHB1YmxpYzoKLSAgICBib29sIGlzSW50ZXJj
ZXB0aW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgY29uc3Q7CisgICAgYm9vbCBpc0ludGVy
Y2VwdGluZyhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGNvbnN0OwogCiAgICAg
Ly8gU3RhcnQgaW50ZXJjZXB0aW5nIGEgcmVzcG9uc2UuCi0gICAgdm9pZCBiZWdpbkludGVyY2Vw
dGluZ1Jlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CisgICAgdm9pZCBiZWdpbklu
dGVyY2VwdGluZ1Jlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAK
ICAgICAvLyBTdG9wIGludGVyY2VwdGluZyBhIHJlc3BvbnNlLiBBbiBpbnRlcmNlcHQgcmVzcG9u
c2Ugd2FzIG5vdCBzdXBwbGllZC4gU2VuZCBkZWZlcnJlZCBuZXR3b3JraW5nIGNhbGxiYWNrcy4K
LSAgICB2b2lkIGNvbnRpbnVlUmVzcG9uc2UodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGNvbnRpbnVlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVy
KTsKIAogICAgIC8vIFN0b3AgaW50ZXJjZXB0aW5nIGEgcmVzcG9uc2UuIEFuIGludGVyY2VwdCBy
ZXNwb25zZSB3YXMgc3VwcGxpZWQuIFNlbmQgbm8gZGVmZXJyZWQgbmV0d29ya2luZyBjYWxsYmFj
a3MuCi0gICAgdm9pZCBpbnRlcmNlcHRlZFJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cik7CisgICAgdm9pZCBpbnRlcmNlcHRlZFJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllcik7CiAKLSAgICB2b2lkIGRlZmVyKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
RnVuY3Rpb248dm9pZCgpPiYmKTsKKyAgICB2b2lkIGRlZmVyKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgRnVuY3Rpb248dm9pZCgpPiYmKTsKIAogcHJpdmF0ZToKLSAgICBIYXNo
TWFwPHVuc2lnbmVkIGxvbmcsIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4+PiBtX2ludGVyY2VwdGVk
UmVzcG9uc2VRdWV1ZTsKKyAgICBIYXNoTWFwPFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4+IG1faW50ZXJjZXB0ZWRSZXNwb25zZVF1ZXVl
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggZWNkNDA1MmVh
YzAzODAyODI1NWE3ODYyMzZlMTk2OTg1M2FmYTFkOC4uYzlmY2IwZDc4ZjkzZmM1ZjBmODEzNjZj
MGIxMzA5OGMzZjNlMDZjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmNwcApAQCAtNTQsNyArNTQsNyBAQAogI2luY2x1
ZGUgPFdlYkNvcmUvU3VicmVzb3VyY2VMb2FkZXIuaD4KICNpbmNsdWRlIDx3dGYvQ29tcGxldGlv
bkhhbmRsZXIuaD4KIAotI2RlZmluZSBXRUJSRVNPVVJDRUxPQURFUl9SRUxFQVNFX0xPRyhmbXQs
IC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3dlYlBhZ2VJRD0lIiBQUkl1NjQgIiwg
ZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQUkl1NjQgIl0gV2ViUmVzb3VyY2VM
b2FkZXI6OiIgZm10LCB0aGlzLCBtX3RyYWNraW5nUGFyYW1ldGVycy5wYWdlSUQudG9VSW50NjQo
KSwgbV90cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJbnQ2NCgpLCBtX3RyYWNraW5nUGFy
YW1ldGVycy5yZXNvdXJjZUlELCAjI19fVkFfQVJHU19fKQorI2RlZmluZSBXRUJSRVNPVVJDRUxP
QURFUl9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgIiVwIC0gW3dl
YlBhZ2VJRD0lIiBQUkl1NjQgIiwgZnJhbWVJRD0lIiBQUkl1NjQgIiwgcmVzb3VyY2VJRD0lIiBQ
Ukl1NjQgIl0gV2ViUmVzb3VyY2VMb2FkZXI6OiIgZm10LCB0aGlzLCBtX3RyYWNraW5nUGFyYW1l
dGVycy5wYWdlSUQudG9VSW50NjQoKSwgbV90cmFja2luZ1BhcmFtZXRlcnMuZnJhbWVJRC50b1VJ
bnQ2NCgpLCBtX3RyYWNraW5nUGFyYW1ldGVycy5yZXNvdXJjZUlELnRvVUludDY0KCksICMjX19W
QV9BUkdTX18pCiAKIG5hbWVzcGFjZSBXZWJLaXQgewogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CkBAIC04Myw3ICs4Myw3IEBAIHVpbnQ2NF90IFdlYlJlc291cmNlTG9hZGVyOjptZXNzYWdlU2Vu
ZGVyRGVzdGluYXRpb25JRCgpIGNvbnN0CiB7CiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6
aXNNYWluKCkpOwogICAgIFJFTEVBU0VfQVNTRVJUKG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigp
KTsKLSAgICByZXR1cm4gbV9jb3JlTG9hZGVyLT5pZGVudGlmaWVyKCk7CisgICAgcmV0dXJuIG1f
Y29yZUxvYWRlci0+aWRlbnRpZmllcigpLnRvVUludDY0KCk7CiB9CiAKIHZvaWQgV2ViUmVzb3Vy
Y2VMb2FkZXI6OmRldGFjaEZyb21Db3JlTG9hZGVyKCkKQEAgLTE1Myw3ICsxNTMsNyBAQCB2b2lk
IFdlYlJlc291cmNlTG9hZGVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNw
b25zZSYgcmVzcG9uc2UsIGJvbwogICAgIH0KIAogICAgIGlmIChJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb25XZWJLaXQ6OnNob3VsZEludGVyY2VwdFJlc3BvbnNlKG1fY29yZUxvYWRlci0+ZnJhbWUo
KSwgcmVzcG9uc2UpKSB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgaW50ZXJjZXB0ZWRSZXF1ZXN0
SWRlbnRpZmllciA9IG1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpOworICAgICAgICBhdXRvIGlu
dGVyY2VwdGVkUmVxdWVzdElkZW50aWZpZXIgPSBtX2NvcmVMb2FkZXItPmlkZW50aWZpZXIoKTsK
ICAgICAgICAgbV9pbnRlcmNlcHRDb250cm9sbGVyLmJlZ2luSW50ZXJjZXB0aW5nUmVzcG9uc2Uo
aW50ZXJjZXB0ZWRSZXF1ZXN0SWRlbnRpZmllcik7CiAgICAgICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbldlYktpdDo6aW50ZXJjZXB0UmVzcG9uc2UobV9jb3JlTG9hZGVyLT5mcmFtZSgpLCBy
ZXNwb25zZSwgaW50ZXJjZXB0ZWRSZXF1ZXN0SWRlbnRpZmllciwgW3RoaXMsIHByb3RlY3RlZFRo
aXMgPSBtYWtlUmVmKCp0aGlzKSwgaW50ZXJjZXB0ZWRSZXF1ZXN0SWRlbnRpZmllciwgcG9saWN5
RGVjaXNpb25Db21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUocG9saWN5RGVjaXNpb25Db21wbGV0
aW9uSGFuZGxlcildKGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIGluc3BlY3RvclJlc3BvbnNlLCBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBvdmVycmlkZURhdGEpIG11dGFibGUgewogICAgICAgICAgICAg
aWYgKCFtX2NvcmVMb2FkZXIgfHwgIW1fY29yZUxvYWRlci0+aWRlbnRpZmllcigpKSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRl
ci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViUmVzb3VyY2VMb2FkZXIu
aAppbmRleCAzNTUyMDFiOTcwNDM1YzU0ZDU0YjNmYmY5ZTQ0MmFjZDJiY2IyYjEyLi5hMjJlNjJm
MjhiNWZhNGNmYzkxYWE1ZTVjZTgyY2EyN2FlMjZhZDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvTmV0d29yay9XZWJSZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZGVyLmgKQEAgLTMzLDYgKzMz
LDcgQEAKICNpbmNsdWRlICJXZWJSZXNvdXJjZUludGVyY2VwdENvbnRyb2xsZXIuaCIKICNpbmNs
dWRlIDxXZWJDb3JlL0ZyYW1lSWRlbnRpZmllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGFnZUlk
ZW50aWZpZXIuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVySWRlbnRpZmllci5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgog
CkBAIC01MCwxNSArNTEsMTMgQEAgY2xhc3MgUmVzb3VyY2VSZXNwb25zZTsKIAogbmFtZXNwYWNl
IFdlYktpdCB7CiAKLXR5cGVkZWYgdWludDY0X3QgUmVzb3VyY2VMb2FkSWRlbnRpZmllcjsKLQog
Y2xhc3MgV2ViUmVzb3VyY2VMb2FkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJSZXNvdXJjZUxv
YWRlcj4sIHB1YmxpYyBJUEM6Ok1lc3NhZ2VTZW5kZXIgewogcHVibGljOgogICAgIHN0cnVjdCBU
cmFja2luZ1BhcmFtZXRlcnMgewogICAgICAgICBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHdlYlBh
Z2VQcm94eUlEOwogICAgICAgICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBwYWdlSUQ7CiAgICAg
ICAgIFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlEOwotICAgICAgICBSZXNvdXJjZUxv
YWRJZGVudGlmaWVyIHJlc291cmNlSUQgeyAwIH07CisgICAgICAgIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciByZXNvdXJjZUlEOwogICAgIH07CiAKICAgICBzdGF0aWMgUmVmPFdl
YlJlc291cmNlTG9hZGVyPiBjcmVhdGUoUmVmPFdlYkNvcmU6OlJlc291cmNlTG9hZGVyPiYmLCBj
b25zdCBUcmFja2luZ1BhcmFtZXRlcnMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmggYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5o
CmluZGV4IDA2YjMyNWM1MGU3NDQyNDFkNDc4NTFmMTA3OTVkMGI2ZWQwNGUzNzAuLjU5OTZlNmNj
YWVkOGFlNzZiNGRiYjA4NDkxOWI4YjRiZjAwMTNjYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNv
bm5lY3Rpb24uaApAQCAtMTM1LDcgKzEzNSw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjpvcHRpb25h
bDxXZWJDb3JlOjpQYWdlSWRlbnRpZmllcj4gcGFnZUlEKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
bV9wYWdlSUQ7IH0KICAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllcj4g
ZnJhbWVJRCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fZnJhbWVJRDsgfQogCi0gICAgYm9vbCBz
aG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2ln
bmVkIGxvbmcpIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KKyAgICBib29sIHNob3VsZFVzZUNyZWRl
bnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXJJZGVudGlmaWVyKSBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAgICAgYm9vbCBpc1NlcnZp
Y2VXb3JrZXJGcmFtZUxvYWRlckNsaWVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0K
IAogICAgIFN0cmluZyB1c2VyQWdlbnQoY29uc3QgVVJMJikgY29uc3QgZmluYWwgeyByZXR1cm4g
bV91c2VyQWdlbnQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IDAwODg5
YjAwYzg1NzkzNTk4YjdmZTEzMzBlZjI5ZDg2YTc3ZWU0OGYuLjBlOGI5N2E2N2U1Nzg4Y2Y1MGVk
YmYwNTUyODQ4OTFhNGU1OGVhY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApA
QCAtMjIxLDcgKzIyMSw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRldGFjaGVkRnJv
bVBhcmVudDMoKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0KQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRv
SW5pdGlhbFJlcXVlc3QoUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIERvY3Vt
ZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAg
ICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkK
QEAgLTIzNSw3ICsyMzUsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3NpZ25JZGVu
dGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aQogICAgIHdlYlBhZ2Ut
PmFkZFJlc291cmNlUmVxdWVzdChpZGVudGlmaWVyLCByZXF1ZXN0KTsKIH0KIAotdm9pZCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3QoRG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgUmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwg
Y29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkKIHsKICAgICBXZWJQYWdl
KiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTI1Miw3
ICsyNTIsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVx
dWVzdChEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbgogICAgIH0KIH0KIAotYm9vbCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1lbnRMb2Fk
ZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9h
ZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2Zy
YW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQpAQCAtMjYxLDEzICsyNjEsMTMgQEAgYm9v
bCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoRG9jdW1l
bnRMb2FkZXIqLCB1bnNpZ25lZAogICAgIHJldHVybiB3ZWJQYWdlLT5pbmplY3RlZEJ1bmRsZVJl
c291cmNlTG9hZENsaWVudCgpLnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKCp3ZWJQYWdlLCBt
X2ZyYW1lLCBpZGVudGlmaWVyKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nLCBjb25zdCBBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpCit2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZShEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29u
c3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKQogewogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwogfQogCiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLWJvb2wgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2Uo
RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nLCBjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHBy
b3RlY3Rpb25TcGFjZSkKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0
ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoRG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlvblNwYWNl
KQogewogICAgIC8vIFRoZSBXZWJLaXQgMiBOZXR3b3JraW5nIHByb2Nlc3MgYXNrcyB0aGUgVUlQ
cm9jZXNzIGRpcmVjdGx5LCBzbyB0aGUgV2ViQ29udGVudCBwcm9jZXNzIHNob3VsZCBuZXZlciBy
ZWNlaXZlIHRoaXMgY2FsbGJhY2suCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0yNzUs
NyArMjc1LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2FuQXV0aGVudGljYXRlQWdh
aW5zdFByb3RlY3Rpb25TcGFjZShEb2N1bWVudExvYWRlcioKIH0KICNlbmRpZgogCi12b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExv
YWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYg
cmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVS
ZXNwb25zZShEb2N1bWVudExvYWRlciosIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKICAgICBXZWJQYWdlKiB3
ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTI4NCw3ICsy
ODQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNw
b25zZShEb2N1bWVudExvYWRlciosIHVuc2lnbmVkCiAgICAgd2ViUGFnZS0+aW5qZWN0ZWRCdW5k
bGVSZXNvdXJjZUxvYWRDbGllbnQoKS5kaWRSZWNlaXZlUmVzcG9uc2VGb3JSZXNvdXJjZSgqd2Vi
UGFnZSwgbV9mcmFtZSwgaWRlbnRpZmllciwgcmVzcG9uc2UpOwogfQogCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkKK3ZvaWQgV2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1l
bnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgaW50IGRhdGFM
ZW5ndGgpCiB7CiAgICAgV2ViUGFnZSogd2ViUGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKICAgICBp
ZiAoIXdlYlBhZ2UpCkBAIC0zMDMsNyArMzAzLDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6ZGlzcGF0Y2hEaWRGaW5pc2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3UK
IH0KICNlbmRpZgogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlz
aExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoRG9jdW1lbnRM
b2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBXZWJQ
YWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTMx
Myw3ICszMTMsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlz
aExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsbwogICAgIHdlYlBhZ2UtPnJlbW92
ZVJlc291cmNlUmVxdWVzdChpZGVudGlmaWVyKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYgZXJyb3IpCit2b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZhaWxMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwgUmVz
b3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVy
cm9yKQogewogICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYg
KCF3ZWJQYWdlKQpAQCAtODQ5LDggKzg0OSw5IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGVjaWRlUG9saWN5Rm9yUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zCiAg
ICAgYXV0byogY29yZUZyYW1lID0gbV9mcmFtZS0+Y29yZUZyYW1lKCk7CiAgICAgYXV0byogcG9s
aWN5RG9jdW1lbnRMb2FkZXIgPSBjb3JlRnJhbWUgPyBjb3JlRnJhbWUtPmxvYWRlcigpLnByb3Zp
c2lvbmFsRG9jdW1lbnRMb2FkZXIoKSA6IG51bGxwdHI7CiAgICAgYXV0byBuYXZpZ2F0aW9uSUQg
PSBwb2xpY3lEb2N1bWVudExvYWRlciA/IHN0YXRpY19jYXN0PFdlYkRvY3VtZW50TG9hZGVyJj4o
KnBvbGljeURvY3VtZW50TG9hZGVyKS5uYXZpZ2F0aW9uSUQoKSA6IDA7Ci0gICAgLy8gRklYTUU6
IFdlIHNob3VsZCBiZSB1c2luZyBhIHN0cm9uZ2x5LXR5cGVkIGlkZW50aWZpZXIgZm9yIG1haW5S
ZXNvdXJjZUxvYWRJZGVudGlmaWVyLgotICAgIGF1dG8gbWFpblJlc291cmNlTG9hZElkZW50aWZp
ZXIgPSBwb2xpY3lEb2N1bWVudExvYWRlciAmJiBwb2xpY3lEb2N1bWVudExvYWRlci0+bWFpblJl
c291cmNlTG9hZGVyKCkgPyBwb2xpY3lEb2N1bWVudExvYWRlci0+bWFpblJlc291cmNlTG9hZGVy
KCktPmlkZW50aWZpZXIoKSA6IDA7CisgICAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJZGVudGlmaWVyOworICAgIGlmIChh
dXRvIG1haW5SZXNvdXJjZUxvYWRlciA9IHBvbGljeURvY3VtZW50TG9hZGVyID8gcG9saWN5RG9j
dW1lbnRMb2FkZXItPm1haW5SZXNvdXJjZUxvYWRlcigpIDogbnVsbHB0cikKKyAgICAgICAgbWFp
blJlc291cmNlTG9hZElkZW50aWZpZXIgPSBtYWluUmVzb3VyY2VMb2FkZXItPmlkZW50aWZpZXIo
KTsKIAogICAgIGJvb2wgd2FzQWxsb3dlZEJ5SW5qZWN0ZWRCdW5kbGUgPSBwb2xpY3kgPT0gV0tC
dW5kbGVQYWdlUG9saWN5QWN0aW9uVXNlOwogICAgIGF1dG8gcHJvdGVjdG9yID0gbV9mcmFtZS5j
b3B5UmVmKCk7CkBAIC0xODA4LDcgKzE4MDksNyBAQCBSZW1vdGVBWE9iamVjdFJlZiBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6YWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpCiAgICAgcmV0dXJuIHdl
YlBhZ2UtPmFjY2Vzc2liaWxpdHlSZW1vdGVPYmplY3QoKTsKIH0KICAgICAKLXZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OndpbGxDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiwgdW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25zZSwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBsZXRpb25IYW5k
bGVyKSBjb25zdAordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2Uo
RG9jdW1lbnRMb2FkZXIqLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgTlND
YWNoZWRVUkxSZXNwb25zZSogcmVzcG9uc2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNDYWNo
ZWRVUkxSZXNwb25zZSAqKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgY29uc3QKIHsKICAgICBXZWJQ
YWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFnZSkKQEAgLTE4
ODksNyArMTg5MCw3IEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNlbmRIMlBpbmcoY29u
c3QgVVJMJiB1cmwsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhwCiAKICAgICBOZXR3b3JrUmVz
b3VyY2VMb2FkUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogICAgIHBhcmFtZXRlcnMucmVxdWVzdCA9
IFJlc291cmNlUmVxdWVzdCh1cmwpOwotICAgIHBhcmFtZXRlcnMuaWRlbnRpZmllciA9IFdlYkxv
YWRlclN0cmF0ZWd5OjpnZW5lcmF0ZUxvYWRJZGVudGlmaWVyKCk7CisgICAgcGFyYW1ldGVycy5p
ZGVudGlmaWVyID0gV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyOjpnZW5lcmF0ZSgp
OwogICAgIHBhcmFtZXRlcnMud2ViUGFnZVByb3h5SUQgPSB3ZWJQYWdlLT53ZWJQYWdlUHJveHlJ
ZGVudGlmaWVyKCk7CiAgICAgcGFyYW1ldGVycy53ZWJQYWdlSUQgPSB3ZWJQYWdlLT5pZGVudGlm
aWVyKCk7CiAgICAgcGFyYW1ldGVycy53ZWJGcmFtZUlEID0gbV9mcmFtZS0+ZnJhbWVJRCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCA3N2RhNDExODgyMjQ4ZTJjMGViZWRjMTdm
NzhiNDNjYjg5MGQ1YTgwLi5hNjk4NWE3ODA0NGFiMmE3NjNlNDk0YzY4NTc5ODMzMTc2YWE3N2E5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtODEsMjEgKzgxLDIxIEBAIHByaXZh
dGU6CiAgICAgdm9pZCBkZXRhY2hlZEZyb21QYXJlbnQyKCkgZmluYWw7CiAgICAgdm9pZCBkZXRh
Y2hlZEZyb21QYXJlbnQzKCkgZmluYWw7CiAgICAgCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVy
VG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAg
dm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CiAgICAgCi0gICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5k
UmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZSYgcmVkaXJlY3RSZXNwb25zZSkgZmluYWw7Ci0gICAgYm9vbCBzaG91bGRVc2VDcmVkZW50
aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllcikgZmluYWw7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2Vi
Q29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5h
bDsKKyAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYpIGZpbmFsOwogI2lmIFVTRShQUk9URUNU
SU9OX1NQQUNFX0FVVEhfQ0FMTEJBQ0spCi0gICAgYm9vbCBjYW5BdXRoZW50aWNhdGVBZ2FpbnN0
UHJvdGVjdGlvblNwYWNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmKSBmaW5hbDsKKyAgICBi
b29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlByb3RlY3Rpb25TcGFjZSYpIGZpbmFsOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKLSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBjb25uZWN0aW9uUHJvcGVydGll
cyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikgZmlu
YWw7CisgICAgUmV0YWluUHRyPENGRGljdGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIpIGZpbmFsOwogI2VuZGlmCi0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRS
ZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hE
aWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyKSBmaW5hbDsKLSAgICB2b2lkIGRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlRXJyb3ImKSBmaW5hbDsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgZmluYWw7CisgICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkg
ZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIGZpbmFsOworICAg
IHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VF
cnJvciYpIGZpbmFsOwogICAgIGJvb2wgZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5
Q2FjaGUoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgaW50IGxlbmd0aCkgZmlu
YWw7CiAjaWYgRU5BQkxFKERBVEFfREVURUNUSU9OKQogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5p
c2hEYXRhRGV0ZWN0aW9uKE5TQXJyYXkgKmRldGVjdGlvblJlc3VsdHMpIGZpbmFsOwpAQCAtMjM4
LDcgKzIzOCw3IEBAIHByaXZhdGU6CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmVtb3RlQVhP
YmplY3RSZWYgYWNjZXNzaWJpbGl0eVJlbW90ZU9iamVjdCgpIGZpbmFsOwogICAgIAotICAgIHZv
aWQgd2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOworICAgIHZvaWQgd2ls
bENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRlcklkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqLCBDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYpIGNvbnN0IGZpbmFsOwogCiAgICAgTlNE
aWN0aW9uYXJ5ICpkYXRhRGV0ZWN0aW9uQ29udGV4dCgpIGZpbmFsOwogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvaW9zL1dlYkZyYW1l
TG9hZGVyQ2xpZW50SU9TLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L2lvcy9XZWJGcmFtZUxvYWRlckNsaWVudElPUy5tbQppbmRleCBlYWQ0MzkyYTU0ODk4MDY2
YzAxZjVjYzAyODg0MjZjZjRkMzA0YzAyLi42MTdlOGZiZjgyODQ3NjgwY2UyOGRmNThhZDNhOTA1
Y2YyZjE3MmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvaW9zL1dlYkZyYW1lTG9hZGVyQ2xpZW50SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9pb3MvV2ViRnJhbWVMb2FkZXJDbGllbnRJT1MubW0K
QEAgLTU4LDcgKzU4LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6Zm9yY2VMYXlvdXRP
blJlc3RvcmVGcm9tQmFja0ZvcndhcmRDYWNoZSgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi1S
ZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlv
blByb3BlcnRpZXMoRG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitS
ZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlv
blByb3BlcnRpZXMoRG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50
aWZpZXIpCiB7CiAgICAgbm90SW1wbGVtZW50ZWQoKTsKICAgICByZXR1cm4gbnVsbHB0cjsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcAppbmRleCAzNjIw
OGIwM2Y4Y2M2MzY3ODY3MWRkYmRiNGNhMjdmYjliYjE1ZGMzLi4zN2IyOGUzZTlmMjU0MmVkNWY3
M2I1MmI5ZTA5YjA1YjYzYjQ4YTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViRnJhbWUuY3BwCkBAIC0zMDQsMTQgKzMwNCwxMiBAQCB2b2lkIFdlYkZyYW1lOjpj
b252ZXJ0TWFpblJlc291cmNlTG9hZFRvRG93bmxvYWQoRG9jdW1lbnRMb2FkZXIqIGRvY3VtZW50
TG9hZGVyLAogICAgIFN1YnJlc291cmNlTG9hZGVyKiBtYWluUmVzb3VyY2VMb2FkZXIgPSBkb2N1
bWVudExvYWRlci0+bWFpblJlc291cmNlTG9hZGVyKCk7CiAKICAgICBhdXRvJiB3ZWJQcm9jZXNz
ID0gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCk7Ci0gICAgLy8gVXNlIDAgdG8gaW5kaWNhdGUgdGhh
dCB0aGUgcmVzb3VyY2UgbG9hZCBjYW4ndCBiZSBjb252ZXJ0ZWQgYW5kIGEgbmV3IGRvd25sb2Fk
IG11c3QgYmUgc3RhcnRlZC4KKyAgICAvLyBVc2Ugc3RkOjpudWxsb3B0IHRvIGluZGljYXRlIHRo
YXQgdGhlIHJlc291cmNlIGxvYWQgY2FuJ3QgYmUgY29udmVydGVkIGFuZCBhIG5ldyBkb3dubG9h
ZCBtdXN0IGJlIHN0YXJ0ZWQuCiAgICAgLy8gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZXJlIGlzIG5v
IGxvYWRlciBiZWNhdXNlIHRoZSBtYWluIHJlc291cmNlIGlzIGluIHRoZSBXZWJDb3JlIG1lbW9y
eSBjYWNoZSwKICAgICAvLyBvciBiZWNhdXNlIHRoZSBjb252ZXJzaW9uIHdhcyBhdHRlbXB0ZWQg
d2hlbiBub3QgY2FsbGluZyBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZVJlc3BvbnNlKCku
Ci0gICAgdWludDY0X3QgbWFpblJlc291cmNlTG9hZElkZW50aWZpZXI7CisgICAgc3RkOjpvcHRp
b25hbDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1haW5SZXNvdXJjZUxvYWRJ
ZGVudGlmaWVyOwogICAgIGlmIChtYWluUmVzb3VyY2VMb2FkZXIpCiAgICAgICAgIG1haW5SZXNv
dXJjZUxvYWRJZGVudGlmaWVyID0gbWFpblJlc291cmNlTG9hZGVyLT5pZGVudGlmaWVyKCk7Ci0g
ICAgZWxzZQotICAgICAgICBtYWluUmVzb3VyY2VMb2FkSWRlbnRpZmllciA9IDA7CiAKICAgICBz
dGQ6Om9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5kRG9tYWluPiBpc0FwcEJvdW5kID0gTmF2
aWdhdGluZ1RvQXBwQm91bmREb21haW46Ok5vOwogICAgIGlzQXBwQm91bmQgPSBtX2lzTmF2aWdh
dGluZ1RvQXBwQm91bmREb21haW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCmluZGV4IDM4YjhjZDA5MmZhOWM2MDJiYTYyZDlkNzJjOTk0YWE4N2EzN2Ix
NjAuLmYxNzVkMDlhOTBkNTJkNjJmNzAxMWQ2ZDUzNWMwYTE2Yjc0ZTljMmYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC00MzIxLDEwICs0MzIx
LDEwIEBAIFdlYkZ1bGxTY3JlZW5NYW5hZ2VyKiBXZWJQYWdlOjpmdWxsU2NyZWVuTWFuYWdlcigp
CiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjphZGRDb25zb2xlTWVzc2FnZShGcmFtZUlkZW50
aWZpZXIgZnJhbWVJRCwgTWVzc2FnZVNvdXJjZSBtZXNzYWdlU291cmNlLCBNZXNzYWdlTGV2ZWwg
bWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIHVpbnQ2NF90IHJlcXVlc3RJRCkK
K3ZvaWQgV2ViUGFnZTo6YWRkQ29uc29sZU1lc3NhZ2UoRnJhbWVJZGVudGlmaWVyIGZyYW1lSUQs
IE1lc3NhZ2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsIG1lc3NhZ2VMZXZlbCwg
Y29uc3QgU3RyaW5nJiBtZXNzYWdlLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIg
cmVxdWVzdElEKQogewogICAgIGlmIChhdXRvKiBmcmFtZSA9IFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLndlYkZyYW1lKGZyYW1lSUQpKQotICAgICAgICBmcmFtZS0+YWRkQ29uc29sZU1lc3NhZ2Uo
bWVzc2FnZVNvdXJjZSwgbWVzc2FnZUxldmVsLCBtZXNzYWdlLCByZXF1ZXN0SUQpOworICAgICAg
ICBmcmFtZS0+YWRkQ29uc29sZU1lc3NhZ2UobWVzc2FnZVNvdXJjZSwgbWVzc2FnZUxldmVsLCBt
ZXNzYWdlLCByZXF1ZXN0SUQudG9VSW50NjQoKSk7CiB9CiAKIHZvaWQgV2ViUGFnZTo6c2VuZENT
UFZpb2xhdGlvblJlcG9ydChGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgY29uc3QgVVJMJiByZXBv
cnRVUkwsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiByZXBvcnREYXRhKQpAQCAtNTUyOCw3ICs1
NTI4LDcgQEAgdm9pZCBXZWJQYWdlOjpzYXZlUERGVG9UZW1wb3JhcnlGb2xkZXJBbmRPcGVuV2l0
aE5hdGl2ZUFwcGxpY2F0aW9uKGNvbnN0IFN0cmluZyYKIH0KICNlbmRpZgogCi12b2lkIFdlYlBh
Z2U6OmFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgV2ViUGFnZTo6YWRkUmVzb3Vy
Y2VSZXF1ZXN0KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgaWYgKCFyZXF1
ZXN0LnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAgcmV0dXJuOwpAQCAt
NTU0Myw3ICs1NTQzLDcgQEAgdm9pZCBXZWJQYWdlOjphZGRSZXNvdXJjZVJlcXVlc3QodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXIKICAgICAgICAgc2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXROZXR3b3JrUmVxdWVzdHNJblByb2dyZXNzKHRydWUp
KTsKIH0KIAotdm9pZCBXZWJQYWdlOjpyZW1vdmVSZXNvdXJjZVJlcXVlc3QodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyKQordm9pZCBXZWJQYWdlOjpyZW1vdmVSZXNvdXJjZVJlcXVlc3QoV2ViQ29y
ZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgaWYgKCFtX3Ry
YWNrZWROZXR3b3JrUmVzb3VyY2VSZXF1ZXN0SWRlbnRpZmllcnMucmVtb3ZlKGlkZW50aWZpZXIp
KQogICAgICAgICByZXR1cm47CkBAIC02OTQwLDcgKzY5NDAsNyBAQCB2b2lkIFdlYlBhZ2U6OnJl
Z2lzdGVyVVJMU2NoZW1lSGFuZGxlcih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJgogICAgIG1faWRlbnRpZmllclRvVVJMU2NoZW1lSGFuZGxlclByb3h5TWFwLmFkZCho
YW5kbGVySWRlbnRpZmllciwgc2NoZW1lUmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS5nZXQoKSk7CiB9
CiAKLXZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWlu
dDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBSZXNvdXJj
ZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrV2lsbFBlcmZvcm1SZWRpcmVjdGlv
bih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyLCBSZXNvdXJjZVJlc3BvbnNlJiYgcmVzcG9uc2UsIFJlc291
cmNlUmVxdWVzdCYmIHJlcXVlc3QsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIGhhbmRs
ZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklk
ZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVyKTsKQEAgLTY5NDksNyArNjk0OSw3IEBAIHZv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3Qg
aGFuZGxlcklkZW50aWZpZXIsIHVpCiAgICAgaGFuZGxlci0+dGFza0RpZFBlcmZvcm1SZWRpcmVj
dGlvbih0YXNrSWRlbnRpZmllciwgV1RGTW92ZShyZXNwb25zZSksIFdURk1vdmUocmVxdWVzdCks
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBXZWJQYWdlOjp1cmxTY2hl
bWVUYXNrRGlkUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCB1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgUmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBSZXNv
dXJjZVJlcXVlc3QmJiByZXF1ZXN0KQordm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUGVy
Zm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFJlc291cmNlUmVzcG9uc2UmJiBy
ZXNwb25zZSwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCkKIHsKICAgICBhdXRvKiBoYW5kbGVy
ID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVu
dGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTU3LDcgKzY5NTcsNyBAQCB2b2lk
IFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIHVpbgogICAgIGhhbmRsZXItPnRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rp
b24odGFza0lkZW50aWZpZXIsIFdURk1vdmUocmVzcG9uc2UpLCBXVEZNb3ZlKHJlcXVlc3QpLCBb
XSAoUmVzb3VyY2VSZXF1ZXN0JiYpIHt9KTsKIH0KICAgICAKLXZvaWQgV2ViUGFnZTo6dXJsU2No
ZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQor
dm9pZCBXZWJQYWdlOjp1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhh
bmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewogICAgIGF1dG8q
IGhhbmRsZXIgPSBtX2lkZW50aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFu
ZGxlcklkZW50aWZpZXIpOwogICAgIEFTU0VSVChoYW5kbGVyKTsKQEAgLTY5NjUsNyArNjk2NSw3
IEBAIHZvaWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVSZXNwb25zZSh1aW50NjRf
dCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0CiAgICAgaGFuZGxlci0+dGFza0RpZFJlY2VpdmVS
ZXNwb25zZSh0YXNrSWRlbnRpZmllciwgcmVzcG9uc2UpOwogfQogCi12b2lkIFdlYlBhZ2U6OnVy
bFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWlu
dDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSkKK3Zv
aWQgV2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IGhhbmRsZXJJ
ZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZp
ZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSkKIHsKICAgICBhdXRvKiBoYW5kbGVy
ID0gbV9pZGVudGlmaWVyVG9VUkxTY2hlbWVIYW5kbGVyUHJveHlNYXAuZ2V0KGhhbmRsZXJJZGVu
dGlmaWVyKTsKICAgICBBU1NFUlQoaGFuZGxlcik7CkBAIC02OTczLDcgKzY5NzMsNyBAQCB2b2lk
IFdlYlBhZ2U6OnVybFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRl
bnRpZmllciwgdWludDY0X3QgdAogICAgIGhhbmRsZXItPnRhc2tEaWRSZWNlaXZlRGF0YSh0YXNr
SWRlbnRpZmllciwgZGF0YS5zaXplKCksIGRhdGEuZGF0YSgpKTsKIH0KIAotdm9pZCBXZWJQYWdl
Ojp1cmxTY2hlbWVUYXNrRGlkQ29tcGxldGUodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVp
bnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQg
V2ViUGFnZTo6dXJsU2NoZW1lVGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNv
bnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQogewogICAgIGF1dG8qIGhhbmRsZXIgPSBtX2lkZW50
aWZpZXJUb1VSTFNjaGVtZUhhbmRsZXJQcm94eU1hcC5nZXQoaGFuZGxlcklkZW50aWZpZXIpOwog
ICAgIEFTU0VSVChoYW5kbGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaAppbmRleCBmNTczYmRhNzY1NTdiYzQ5ZjBmZDYzMTg3YTViNTc0N2FmYWQxZjk4Li41
MmFiYWQ5ZTAwZDNjMmIzYzFlZWE0ZGU2NGU4MGI0YzZiMDEwZDFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC00MzcsNyArNDM3LDcgQEAgcHVibGlj
OgogICAgIFdlYkZ1bGxTY3JlZW5NYW5hZ2VyKiBmdWxsU2NyZWVuTWFuYWdlcigpOwogI2VuZGlm
CiAKLSAgICB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciwg
TWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmLCB1aW50NjRfdCByZXF1
ZXN0SUQgPSAwKTsKKyAgICB2b2lkIGFkZENvbnNvbGVNZXNzYWdlKFdlYkNvcmU6OkZyYW1lSWRl
bnRpZmllciwgTWVzc2FnZVNvdXJjZSwgTWVzc2FnZUxldmVsLCBjb25zdCBTdHJpbmcmLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgPSB7IH0pOwogICAgIHZvaWQgc2VuZENTUFZp
b2xhdGlvblJlcG9ydChXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFVSTCYgcmVwb3J0
VVJMLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlJiYpOwogICAgIHZvaWQgc2VuZENPRVBQb2xpY3lJ
bmhlcml0ZW5jZVZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIsIGNvbnN0IFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgZW1iZWRkZXJPcmlnaW4sIGNvbnN0IFN0cmluZyYgZW5k
cG9pbnQsIFdlYkNvcmU6OkNPRVBEaXNwb3NpdGlvbiwgY29uc3QgU3RyaW5nJiB0eXBlLCBjb25z
dCBVUkwmIGJsb2NrZWRVUkwpOwogICAgIHZvaWQgc2VuZENPRVBDT1JQVmlvbGF0aW9uKFdlYkNv
cmU6OkZyYW1lSWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiBl
bWJlZGRlck9yaWdpbiwgY29uc3QgU3RyaW5nJiBlbmRwb2ludCwgV2ViQ29yZTo6Q09FUERpc3Bv
c2l0aW9uLCBXZWJDb3JlOjpGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uLCBjb25zdCBVUkwmIGJs
b2NrZWRVUkwpOwpAQCAtMTAxNiw4ICsxMDE2LDggQEAgcHVibGljOgogICAgIHZvaWQgZHJhd1Bh
Z2VzRm9yUHJpbnRpbmcoV2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyLCBjb25zdCBQcmludEluZm8m
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKT4m
Jik7CiAjZW5kaWYKIAotICAgIHZvaWQgYWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcs
IGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwotICAgIHZvaWQgcmVtb3ZlUmVzb3Vy
Y2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcpOworICAgIHZvaWQgYWRkUmVzb3VyY2VSZXF1ZXN0KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VS
ZXF1ZXN0Jik7CisgICAgdm9pZCByZW1vdmVSZXNvdXJjZVJlcXVlc3QoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyKTsKIAogICAgIHZvaWQgc2V0TWVkaWFWb2x1bWUoZmxvYXQpOwog
ICAgIHZvaWQgc2V0TXV0ZWQoV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6TXV0ZWRTdGF0ZUZsYWdz
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwpAQCAtMTg3NywxMSArMTg3NywxMSBAQCBw
cml2YXRlOgogCiAgICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUhhbmRsZXIodWludDY0X3QgaWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiBzY2hlbWUpOwogCi0gICAgdm9pZCB1cmxTY2hlbWVUYXNr
V2lsbFBlcmZvcm1SZWRpcmVjdGlvbih1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0
X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYpPiYmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJl
Y3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYm
KTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpS
ZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZURhdGEo
dWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25z
dCBJUEM6OkRhdGFSZWZlcmVuY2UmKTsKLSAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRDb21wbGV0
ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tXaWxs
UGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
UmVzcG9uc2UmJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmKTsKKyAgICB2b2lkIHVybFNjaGVt
ZVRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYmLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik7CisgICAgdm9p
ZCB1cmxTY2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlm
aWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tE
aWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVu
Y2UmKTsKKyAgICB2b2lkIHVybFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVy
SWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7CiAKICAgICB2b2lkIHNldElzVGFr
aW5nU25hcHNob3RzRm9yQXBwbGljYXRpb25TdXNwZW5zaW9uKGJvb2wpOwogICAgIHZvaWQgc2V0
TmVlZHNET01XaW5kb3dSZXNpemVFdmVudCgpOwpAQCAtMjE2MSw3ICsyMTYxLDcgQEAgcHJpdmF0
ZToKIAogICAgIHVuc2lnbmVkIG1fY2FjaGVkUGFnZUNvdW50IHsgMCB9OwogCi0gICAgSGFzaFNl
dDx1bnNpZ25lZCBsb25nPiBtX3RyYWNrZWROZXR3b3JrUmVzb3VyY2VSZXF1ZXN0SWRlbnRpZmll
cnM7CisgICAgSGFzaFNldDxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXI+IG1fdHJh
Y2tlZE5ldHdvcmtSZXNvdXJjZVJlcXVlc3RJZGVudGlmaWVyczsKIAogICAgIFdlYkNvcmU6Oklu
dFNpemUgbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQ7CiAgICAgV2ViQ29yZTo6SW50U2l6ZSBt
X3NpemVUb0NvbnRlbnRBdXRvU2l6ZU1heGltdW1TaXplOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KaW5kZXggNWZkYjFkMDA0
ZDAwNDM1YjJlYTExMjU3NzlmZDJhMTBmNjY2ZTRkMC4uYzQ4YzcyYTlhNjE2ZjE0NGNiMzcyN2Vj
NmIxMzliNzdhNGFmZWRmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0yNyw3ICsyNyw3IEBAIG1lc3NhZ2VzIC0+
IFdlYlBhZ2UgTGVnYWN5UmVjZWl2ZXIgewogCiAgICAgU2V0QmFja2dyb3VuZENvbG9yKHN0ZDo6
b3B0aW9uYWw8V2ViQ29yZTo6Q29sb3I+IGNvbG9yKQogCi0gICAgQWRkQ29uc29sZU1lc3NhZ2Uo
V2ViQ29yZTo6RnJhbWVJZGVudGlmaWVyIGZyYW1lSUQsIGVudW06dWludDhfdCBKU0M6Ok1lc3Nh
Z2VTb3VyY2UgbWVzc2FnZVNvdXJjZSwgZW51bTp1aW50OF90IEpTQzo6TWVzc2FnZUxldmVsIG1l
c3NhZ2VMZXZlbCwgU3RyaW5nIG1lc3NhZ2UsIHVpbnQ2NF90IHJlcXVlc3RJRCkKKyAgICBBZGRD
b25zb2xlTWVzc2FnZShXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgZW51bTp1aW50
OF90IEpTQzo6TWVzc2FnZVNvdXJjZSBtZXNzYWdlU291cmNlLCBlbnVtOnVpbnQ4X3QgSlNDOjpN
ZXNzYWdlTGV2ZWwgbWVzc2FnZUxldmVsLCBTdHJpbmcgbWVzc2FnZSwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHJlcXVlc3RJRCkKICAgICBTZW5kQ1NQVmlvbGF0aW9uUmVwb3J0
KFdlYkNvcmU6OkZyYW1lSWRlbnRpZmllciBmcmFtZUlELCBVUkwgcmVwb3J0VVJMLCBJUEM6OkZv
cm1EYXRhUmVmZXJlbmNlIHJlcG9ydERhdGEpCiAgICAgU2VuZENPRVBQb2xpY3lJbmhlcml0ZW5j
ZVZpb2xhdGlvbihXZWJDb3JlOjpGcmFtZUlkZW50aWZpZXIgZnJhbWVJRCwgc3RydWN0IFdlYkNv
cmU6OlNlY3VyaXR5T3JpZ2luRGF0YSBlbWJlZGRlck9yaWdpbiwgU3RyaW5nIGVuZHBvaW50LCBl
bnVtOmJvb2wgV2ViQ29yZTo6Q09FUERpc3Bvc2l0aW9uIGRpc3Bvc2l0aW9uLCBTdHJpbmcgdHlw
ZSwgVVJMIGJsb2NrZWRVUkwpCiAgICAgU2VuZENPRVBDT1JQVmlvbGF0aW9uKFdlYkNvcmU6OkZy
YW1lSWRlbnRpZmllciBmcmFtZUlELCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRh
IGVtYmVkZGVyT3JpZ2luLCBTdHJpbmcgZW5kcG9pbnQsIGVudW06Ym9vbCBXZWJDb3JlOjpDT0VQ
RGlzcG9zaXRpb24gZGlzcG9zaXRpb24sIGVudW06dWludDhfdCBXZWJDb3JlOjpGZXRjaE9wdGlv
bnM6OkRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uLCBVUkwgYmxvY2tlZFVSTCkKQEAgLTU1MywxMSAr
NTUzLDExIEBAIEdlbmVyYXRlU3ludGhldGljRWRpdGluZ0NvbW1hbmQoZW51bTp1aW50OF90IFdl
YktpdDo6U3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlCiAKICAgICBSZWdpc3RlclVSTFNjaGVt
ZUhhbmRsZXIodWludDY0X3QgaWRlbnRpZmllciwgU3RyaW5nIHNjaGVtZSkKIAotICAgIFVSTFNj
aGVtZVRhc2tXaWxsUGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVy
LCB1aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCBhY3R1YWxSZXF1ZXN0KSBBc3luYwotICAgIFVSTFNjaGVtZVRh
c2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2
NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcHJvcG9zZWRSZXF1ZXN0KQotICAgIFVSTFNjaGVtZVRh
c2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIHVpbnQ2NF90
IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlKQotICAg
IFVSTFNjaGVtZVRhc2tEaWRSZWNlaXZlRGF0YSh1aW50NjRfdCBoYW5kbGVySWRlbnRpZmllciwg
dWludDY0X3QgdGFza0lkZW50aWZpZXIsIElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBk
YXRhKQotICAgIFVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgdWludDY0X3QgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZXJy
b3IpCisgICAgVVJMU2NoZW1lVGFza1dpbGxQZXJmb3JtUmVkaXJlY3Rpb24odWludDY0X3QgaGFu
ZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciB0YXNrSWRl
bnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNwb25zZSwgV2ViQ29yZTo6UmVz
b3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkgLT4gKFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCBhY3R1YWxSZXF1ZXN0KSBBc3luYworICAgIFVSTFNjaGVtZVRhc2tEaWRQZXJmb3JtUmVkaXJl
Y3Rpb24odWludDY0X3QgaGFuZGxlcklkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
SWRlbnRpZmllciB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSByZXNw
b25zZSwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0IHByb3Bvc2VkUmVxdWVzdCkKKyAgICBVUkxT
Y2hlbWVUYXNrRGlkUmVjZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIFdlYkNvcmU6
OlJlc291cmNlUmVzcG9uc2UgcmVzcG9uc2UpCisgICAgVVJMU2NoZW1lVGFza0RpZFJlY2VpdmVE
YXRhKHVpbnQ2NF90IGhhbmRsZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgdGFza0lkZW50aWZpZXIsIElQQzo6U2hhcmVkQnVmZmVyRGF0YVJlZmVyZW5jZSBk
YXRhKQorICAgIFVSTFNjaGVtZVRhc2tEaWRDb21wbGV0ZSh1aW50NjRfdCBoYW5kbGVySWRlbnRp
ZmllciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGVycm9yKQogCiAgICAgU2V0SXNTdXNwZW5kZWQoYm9vbCBz
dXNwZW5kZWQpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkuY3BwCmluZGV4IDM2ZTU3MjUxMjMzN2Q2
MzAwYzIyZThhMzJlMTcxNTE5MDQzYjUwMzcuLmNlOTI2MTc0MWJkYjI4YzA0ZDk3ZDBkNzBlYThl
YWExYzRkYjQxMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmNwcApAQCAtNjMsNyArNjMsNyBA
QCB2b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6c3RhcnROZXdUYXNrKFJlc291cmNlTG9h
ZGVyJiBsb2FkZXIsIFdlYkZyYW1lJiB3ZQogICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnN0
YXJ0TG9hZGluZygpOwogfQogCi12b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6bG9hZFN5
bmNocm9ub3VzbHkoUmVzb3VyY2VMb2FkSWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJh
bWUmIHdlYkZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVz
cG9uc2UmIHJlc3BvbnNlLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBk
YXRhKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OmxvYWRTeW5jaHJvbm91c2x5KFdl
YkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBsb2FkSWRlbnRpZmllciwgV2ViRnJhbWUm
IHdlYkZyYW1lLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRh
KQogewogICAgIGRhdGEuc2hyaW5rKDApOwogICAgIGlmICghbV93ZWJQYWdlLnNlbmRTeW5jKE1l
c3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJvbm91c1VSTFNjaGVtZVRhc2soVVJMU2No
ZW1lVGFza1BhcmFtZXRlcnMgeyBtX2lkZW50aWZpZXIsIGxvYWRJZGVudGlmaWVyLCByZXF1ZXN0
LCB3ZWJGcmFtZS5pbmZvKCkgfSksIE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvYWRTeW5jaHJv
bm91c1VSTFNjaGVtZVRhc2s6OlJlcGx5KHJlc3BvbnNlLCBlcnJvciwgZGF0YSkpKSB7CkBAIC03
OCw3ICs3OCw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpzdG9wQWxsVGFza3Mo
KQogICAgICAgICBtX3Rhc2tzLmJlZ2luKCktPnZhbHVlLT5zdG9wTG9hZGluZygpOwogfQogCi12
b2lkIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFBlcmZvcm1SZWRpcmVjdGlvbih1
aW50NjRfdCB0YXNrSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGly
ZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmIG5ld1JlcXVlc3QsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKQordm9pZCBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRQZXJmb3Jt
UmVkaXJlY3Rpb24oV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlm
aWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYgcmVkaXJlY3RSZXNwb25zZSwgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiYgbmV3UmVxdWVzdCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJik+JiYgY29tcGxldGlvbkhhbmRsZXIpCiB7CiAgICAg
YXV0byogdGFzayA9IG1fdGFza3MuZ2V0KHRhc2tJZGVudGlmaWVyKTsKICAgICBpZiAoIXRhc2sp
CkBAIC04Nyw3ICs4Nyw3IEBAIHZvaWQgV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlk
UGVyZm9ybVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyCiAgICAgdGFzay0+ZGlk
UGVyZm9ybVJlZGlyZWN0aW9uKFdURk1vdmUocmVkaXJlY3RSZXNwb25zZSksIFdURk1vdmUobmV3
UmVxdWVzdCksIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAotdm9pZCBXZWJVUkxT
Y2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgdGFza0lk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQordm9pZCBXZWJVUkxT
Y2hlbWVIYW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZp
ZXIpOwogICAgIGlmICghdGFzaykKQEAgLTk2LDcgKzk2LDcgQEAgdm9pZCBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHk6OnRhc2tEaWRSZWNlaXZlUmVzcG9uc2UodWludDY0X3QgdGFza0lkZW50aWZp
ZXIsIGMKICAgICB0YXNrLT5kaWRSZWNlaXZlUmVzcG9uc2UocmVzcG9uc2UpOwogfQogCi12b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRh
c2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWludDhfdCogZGF0YSkKK3ZvaWQgV2Vi
VVJMU2NoZW1lSGFuZGxlclByb3h5Ojp0YXNrRGlkUmVjZWl2ZURhdGEoV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIHRhc2tJZGVudGlmaWVyLCBzaXplX3Qgc2l6ZSwgY29uc3QgdWlu
dDhfdCogZGF0YSkKIHsKICAgICBhdXRvKiB0YXNrID0gbV90YXNrcy5nZXQodGFza0lkZW50aWZp
ZXIpOwogICAgIGlmICghdGFzaykKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFdlYlVSTFNjaGVt
ZUhhbmRsZXJQcm94eTo6dGFza0RpZFJlY2VpdmVEYXRhKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVy
LCBzaXplXwogICAgIHRhc2stPmRpZFJlY2VpdmVEYXRhKHNpemUsIGRhdGEpOwogfQogCi12b2lk
IFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZENvbXBsZXRlKHVpbnQ2NF90IHRhc2tJ
ZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKK3ZvaWQgV2ViVVJMU2NoZW1l
SGFuZGxlclByb3h5Ojp0YXNrRGlkQ29tcGxldGUoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyIHRhc2tJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcikKIHsKICAg
ICBpZiAoYXV0byB0YXNrID0gcmVtb3ZlVGFzayh0YXNrSWRlbnRpZmllcikpCiAgICAgICAgIHRh
c2stPmRpZENvbXBsZXRlKGVycm9yKTsKQEAgLTExNyw3ICsxMTcsNyBAQCB2b2lkIFdlYlVSTFNj
aGVtZUhhbmRsZXJQcm94eTo6dGFza0RpZFN0b3BMb2FkaW5nKFdlYlVSTFNjaGVtZVRhc2tQcm94
eSYgdGFzaykKICAgICByZW1vdmVUYXNrKHRhc2suaWRlbnRpZmllcigpKTsKIH0KIAotUmVmUHRy
PFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5OjpyZW1vdmVU
YXNrKHVpbnQ2NF90IGlkZW50aWZpZXIpCitSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiBX
ZWJVUkxTY2hlbWVIYW5kbGVyUHJveHk6OnJlbW92ZVRhc2soV2ViQ29yZTo6UmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byB0YXNrID0gbV90YXNrcy50YWtl
KGlkZW50aWZpZXIpOwogICAgIGlmICghdGFzaykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlVSTFNjaGVtZUhhbmRsZXJQcm94eS5oIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKaW5kZXgg
MDQyZDc5YzZlNmY4NDVkYzFiMDZiMmNhMzM4MDA3MmQ0ODBiYTZmMC4uMDY5NWM0MDc0NzgzZDEx
ZDY2Y2Q1MDA0MTQzY2Q0YWRkMTU3ZDk2MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5LmgKQEAgLTM5
LDcgKzM5LDYgQEAgY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwogbmFtZXNwYWNlIFdlYktpdCB7CiAK
IGNsYXNzIFdlYlBhZ2U7Ci10eXBlZGVmIHVpbnQ2NF90IFJlc291cmNlTG9hZElkZW50aWZpZXI7
CiAKIGNsYXNzIFdlYlVSTFNjaGVtZUhhbmRsZXJQcm94eSA6IHB1YmxpYyBSZWZDb3VudGVkPFdl
YlVSTFNjaGVtZUhhbmRsZXJQcm94eT4gewogcHVibGljOgpAQCAtNTIsMjYgKzUxLDI3IEBAIHB1
YmxpYzoKICAgICB2b2lkIHN0YXJ0TmV3VGFzayhXZWJDb3JlOjpSZXNvdXJjZUxvYWRlciYsIFdl
YkZyYW1lJik7CiAgICAgdm9pZCBzdG9wQWxsVGFza3MoKTsKIAotICAgIHZvaWQgbG9hZFN5bmNo
cm9ub3VzbHkoUmVzb3VyY2VMb2FkSWRlbnRpZmllciwgV2ViRnJhbWUmLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYsIFZlY3Rvcjx1aW50OF90PiYpOworICAgIHZvaWQgbG9hZFN5bmNocm9u
b3VzbHkoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJGcmFtZSYsIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yJiwgVmVjdG9yPHVpbnQ4X3Q+Jik7CiAKICAgICB1aW50NjRf
dCBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAgICAgV2ViUGFn
ZSYgcGFnZSgpIHsgcmV0dXJuIG1fd2ViUGFnZTsgfQogCi0gICAgdm9pZCB0YXNrRGlkUGVyZm9y
bVJlZGlyZWN0aW9uKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlJiYsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmKT4mJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVj
ZWl2ZVJlc3BvbnNlKHVpbnQ2NF90IHRhc2tJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlc3BvbnNlJik7Ci0gICAgdm9pZCB0YXNrRGlkUmVjZWl2ZURhdGEodWludDY0X3QgdGFz
a0lkZW50aWZpZXIsIHNpemVfdCwgY29uc3QgdWludDhfdCogZGF0YSk7Ci0gICAgdm9pZCB0YXNr
RGlkQ29tcGxldGUodWludDY0X3QgdGFza0lkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlRXJyb3ImKTsKKyAgICB2b2lkIHRhc2tEaWRQZXJmb3JtUmVkaXJlY3Rpb24oV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiYsIFdl
YkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OlJlc291cmNlUmVxdWVzdCYmKT4mJik7CisgICAgdm9pZCB0YXNrRGlkUmVjZWl2ZVJlc3BvbnNl
KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIHZvaWQgdGFza0RpZFJlY2VpdmVEYXRhKFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciwgc2l6ZV90LCBjb25zdCB1aW50OF90KiBkYXRhKTsKKyAgICB2
b2lkIHRhc2tEaWRDb21wbGV0ZShXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImKTsKICAgICB2b2lkIHRhc2tEaWRTdG9wTG9hZGlu
ZyhXZWJVUkxTY2hlbWVUYXNrUHJveHkmKTsKIAogcHJpdmF0ZToKICAgICBXZWJVUkxTY2hlbWVI
YW5kbGVyUHJveHkoV2ViUGFnZSYsIHVpbnQ2NF90IGlkZW50aWZpZXIpOwogCi0gICAgUmVmUHRy
PFdlYlVSTFNjaGVtZVRhc2tQcm94eT4gcmVtb3ZlVGFzayh1aW50NjRfdCBpZGVudGlmaWVyKTsK
KyAgICBSZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5PiByZW1vdmVUYXNrKFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKICAgICBXZWJQYWdlJiBtX3dlYlBhZ2U7CisgICAg
Ly8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGEgc3Ryb25nbHkgdHlwZWQgaWRlbnRpZmllci4KICAg
ICB1aW50NjRfdCBtX2lkZW50aWZpZXIgeyAwIH07CiAKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBS
ZWZQdHI8V2ViVVJMU2NoZW1lVGFza1Byb3h5Pj4gbV90YXNrczsKKyAgICBIYXNoTWFwPFdlYkNv
cmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgUmVmUHRyPFdlYlVSTFNjaGVtZVRhc2tQcm94
eT4+IG1fdGFza3M7CiB9OyAvLyBjbGFzcyBXZWJVUkxTY2hlbWVIYW5kbGVyUHJveHkKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmNwcAppbmRleCA3NTc5OWEwYzY1ZDBj
ZGFmZGU2ZjI2NWIxYzU0NzU2Yjg0YTIwOWQ5Li5jOGM0YWY3ZWJkOGYxMWNmNmM4Y2E3YWU3ZTA3
YTAzYjRkNTk0NTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlVSTFNjaGVtZVRhc2tQcm94eS5jcHAKQEAgLTM5LDggKzM5LDggQEAKICNp
bmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlTG9hZGVyLmg+CiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRp
b25IYW5kbGVyLmg+CiAKLSNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9H
X1NUQU5EQVJEX1RFTVBMQVRFICJbc2NoZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlE
PSUiIFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCB0YXNrSUQ9JWx1XSBXZWJVUkxTY2hl
bWVUYXNrUHJveHk6OiIKLSNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9H
X1NUQU5EQVJEX1BBUkFNRVRFUlMgbV91cmxTY2hlbWVIYW5kbGVyLmlkZW50aWZpZXIoKSwgcGFn
ZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBmcmFtZUlERnJvbVdlYkZyYW1lKG1fZnJhbWUpLCBt
X2lkZW50aWZpZXIKKyNkZWZpbmUgV0VCVVJMU0NIRU1FVEFTS1BST1hZX1JFTEVBU0VfTE9HX1NU
QU5EQVJEX1RFTVBMQVRFICJbc2NoZW1lSGFuZGxlcj0lIiBQUkl1NjQgIiwgd2ViUGFnZUlEPSUi
IFBSSXU2NCAiLCBmcmFtZUlEPSUiIFBSSXU2NCAiLCB0YXNrSUQ9JSIgUFJJdTY0ICJdIFdlYlVS
TFNjaGVtZVRhc2tQcm94eTo6IgorI2RlZmluZSBXRUJVUkxTQ0hFTUVUQVNLUFJPWFlfUkVMRUFT
RV9MT0dfU1RBTkRBUkRfUEFSQU1FVEVSUyBtX3VybFNjaGVtZUhhbmRsZXIuaWRlbnRpZmllcigp
LCBwYWdlSURGcm9tV2ViRnJhbWUobV9mcmFtZSksIGZyYW1lSURGcm9tV2ViRnJhbWUobV9mcmFt
ZSksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpCiAjZGVmaW5lIFdFQlVSTFNDSEVNRVRBU0tQUk9Y
WV9SRUxFQVNFX0xPRyhmbXQsIC4uLikgUkVMRUFTRV9MT0coTmV0d29yaywgV0VCVVJMU0NIRU1F
VEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1RFTVBMQVRFIGZtdCwgV0VCVVJMU0NIRU1F
VEFTS1BST1hZX1JFTEVBU0VfTE9HX1NUQU5EQVJEX1BBUkFNRVRFUlMsICMjX19WQV9BUkdTX18p
CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViVVJMU2NoZW1lVGFza1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAppbmRleCBiNWUzMzRkZmMyMzM2
NDhlYzU3ZThmNjE2M2RjMTVmYWI1NmY2YzVjLi43NTUwODc5NDE4MjBmZWVmYzVkMDEyNzE1OGMw
NjRjZTI1OGEwODM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJVUkxTY2hlbWVUYXNrUHJveHkuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNvdXJjZVJlcXVlc3QuaD4KICNpbmNsdWRlIDx3dGYvRGVx
dWUuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNTcsNyArNTgsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YShzaXplX3QsIGNvbnN0IHVpbnQ4X3QqIGRhdGEp
OwogICAgIHZvaWQgZGlkQ29tcGxldGUoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOwog
Ci0gICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlm
aWVyOyB9CisgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIo
KSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogcHJpdmF0ZToKICAgICBXZWJVUkxT
Y2hlbWVUYXNrUHJveHkoV2ViVVJMU2NoZW1lSGFuZGxlclByb3h5JiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXImLCBXZWJGcmFtZSYpOwpAQCAtNzAsNyArNzEsNyBAQCBwcml2YXRlOgogICAgIFJl
ZlB0cjxXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcj4gbV9jb3JlTG9hZGVyOwogICAgIFJlZlB0cjxX
ZWJGcmFtZT4gbV9mcmFtZTsKICAgICBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgbV9yZXF1ZXN0
OwotICAgIHVuc2lnbmVkIGxvbmcgbV9pZGVudGlmaWVyOworICAgIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgYm9vbCBtX3dhaXRpbmdGb3JDb21w
bGV0aW9uSGFuZGxlciB7IGZhbHNlIH07CiAgICAgRGVxdWU8RnVuY3Rpb248dm9pZCgpPj4gbV9x
dWV1ZWRUYXNrczsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dlYkNvcmVT
dXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L1dlYkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKaW5kZXggN2RjZmUw
Yjg3OWNhODU0NTY5NjgzN2VlYzdjYTg5MGY5OThhOTkxZS4uMWU0ZDI5YzBlNDFmNzg2YzY1ZDQz
MWYzNzFiMjZjNDc1MDQ5NWQwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9XZWJD
b3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvV2ViQ29yZVN1cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmNwcApAQCAt
MTA3LDcgKzEwNyw3IEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3Vy
Y2UoRnJhbWUmIGZyYW1lLCBDYWNoZWRSZXNvdXJjZSYgcmVzb3VyCiAgICAgfSk7CiB9CiAKLXZv
aWQgV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZy
YW1lTG9hZGVyJiBmcmFtZUxvYWRlciwgdW5zaWduZWQgbG9uZywgY29uc3QgUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBDbGllbnRDcmVkZW50aWFsUG9saWN5LCBjb25zdCBGZXRjaE9wdGlvbnMm
IG9wdGlvbnMsIGNvbnN0IEhUVFBIZWFkZXJNYXAmLCBSZXNvdXJjZUVycm9yJiBlcnJvciwgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFZlY3Rvcjx1aW50OF90PiYgZGF0YSkKK3ZvaWQgV2Vi
UmVzb3VyY2VMb2FkU2NoZWR1bGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KEZyYW1lTG9h
ZGVyJiBmcmFtZUxvYWRlciwgUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmIHJlcXVlc3QsIENsaWVudENyZWRlbnRpYWxQb2xpY3ksIGNvbnN0IEZldGNoT3B0
aW9ucyYgb3B0aW9ucywgY29uc3QgSFRUUEhlYWRlck1hcCYsIFJlc291cmNlRXJyb3ImIGVycm9y
LCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgVmVjdG9yPHVpbnQ4X3Q+JiBkYXRhKQogewog
ICAgIGF1dG8qIGRvY3VtZW50ID0gZnJhbWVMb2FkZXIuZnJhbWUoKS5kb2N1bWVudCgpOwogICAg
IGF1dG8qIHNvdXJjZU9yaWdpbiA9IGRvY3VtZW50ID8gJmRvY3VtZW50LT5zZWN1cml0eU9yaWdp
bigpIDogbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1
cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1dl
YkNvcmVTdXBwb3J0L1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5oCmluZGV4IDE2MThiNjdhMWZm
NmQ2MmY4MTE0MjdlOTZjOTllOTM5NmE5YjBhMGIuLmU1OTU1MGZiYmJhMGY2ZGMzNGNjMzNkNTEw
ZTg5ZTZlMzQ5OGRhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvV2ViQ29yZVN1
cHBvcnQvV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyLmgKKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9XZWJDb3JlU3VwcG9ydC9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuaApAQCAtNDUsNyArNDUs
NyBAQCBwdWJsaWM6CiAgICAgV2ViUmVzb3VyY2VMb2FkU2NoZWR1bGVyKCk7CiAKICAgICB2b2lk
IGxvYWRSZXNvdXJjZShXZWJDb3JlOjpGcmFtZSYsIFdlYkNvcmU6OkNhY2hlZFJlc291cmNlJiwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlTG9hZGVy
T3B0aW9ucyYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUmVmUHRyPFdlYkNvcmU6OlN1YnJlc291
cmNlTG9hZGVyPiYmKT4mJikgZmluYWw7Ci0gICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91
c2x5KFdlYkNvcmU6OkZyYW1lTG9hZGVyJiwgdW5zaWduZWQgbG9uZywgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgY29uc3Qg
V2ViQ29yZTo6RmV0Y2hPcHRpb25zJiwgY29uc3QgV2ViQ29yZTo6SFRUUEhlYWRlck1hcCYsIFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImLCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgVmVjdG9y
PHVpbnQ4X3Q+JikgZmluYWw7CisgICAgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdl
YkNvcmU6OkZyYW1lTG9hZGVyJiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBj
b25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFs
UG9saWN5LCBjb25zdCBXZWJDb3JlOjpGZXRjaE9wdGlvbnMmLCBjb25zdCBXZWJDb3JlOjpIVFRQ
SGVhZGVyTWFwJiwgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmLCBWZWN0b3I8dWludDhfdD4mKSBmaW5hbDsKICAgICB2b2lkIHBhZ2VMb2FkQ29tcGxl
dGVkKFdlYkNvcmU6OlBhZ2UmKSBmaW5hbDsKICAgICB2b2lkIGJyb3dzaW5nQ29udGV4dFJlbW92
ZWQoV2ViQ29yZTo6RnJhbWUmKSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaCBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKaW5k
ZXggM2MyNDgxMzFlNWRiODE5YWMyM2I2ZjE4ZjI4ZjliYjEyMWY0YmJjMy4uZTNmNWY5YzlmMGZm
ZDhhZWUyZGJmMGU3ODMyMTZiYzNjMGE3NTVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5o
CkBAIC04MiwyOCArODIsMjggQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgY29udmVydE1haW5SZXNv
dXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIGZp
bmFsOwogCi0gICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7CisgICAgdm9pZCBhc3NpZ25JZGVudGlmaWVyVG9J
bml0aWFsUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIsIFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JikgZmluYWw7
CiAKLSAgICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKSBmaW5h
bDsKLSAgICBib29sIHNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKLSAgICB2b2lkIGRpc3Bh
dGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFdlYkNvcmU6OkRvY3VtZW50TG9h
ZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZSYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hXaWxsU2VuZFJlcXVlc3Qo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZp
ZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVz
cG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpIGZpbmFsOworICAgIGJvb2wgc2hvdWxkVXNlQ3JlZGVu
dGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNv
dXJjZUxvYWRlcklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlJikgZmluYWw7CiAjaWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLSAg
ICBib29sIGNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlBy
b3RlY3Rpb25TcGFjZSYpIGZpbmFsOworICAgIGJvb2wgY2FuQXV0aGVudGljYXRlQWdhaW5zdFBy
b3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UHJvdGVjdGlvblNwYWNlJikgZmluYWw7
CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gY29ubmVjdGlvblByb3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpIGZpbmFsOworICAgIFJldGFpblB0cjxDRkRpY3Rp
b25hcnlSZWY+IGNvbm5lY3Rpb25Qcm9wZXJ0aWVzKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKSBmaW5hbDsKICNlbmRpZgogCi0gICAg
dm9pZCBkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlcios
IHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGRhdGFM
ZW5ndGgpIGZpbmFsOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2
b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwg
V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZVJlc3BvbnNlJikgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVu
Z3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgZmluYWw7CisgICAgdm9pZCBkaXNwYXRjaERpZEZpbmlz
aExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRl
cklkZW50aWZpZXIpIGZpbmFsOwogI2lmIEVOQUJMRShEQVRBX0RFVEVDVElPTikKICAgICB2b2lk
IGRpc3BhdGNoRGlkRmluaXNoRGF0YURldGVjdGlvbihOU0FycmF5ICpkZXRlY3Rpb25SZXN1bHRz
KSBmaW5hbDsKICNlbmRpZgotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOworICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGlu
ZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
ZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIGZpbmFsOwogCi0gICAgdm9pZCB3
aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
TlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CisgICAgdm9pZCB3aWxsQ2Fj
aGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgTlNDYWNoZWRVUkxSZXNwb25zZSosIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTlNDYWNoZWRVUkxSZXNwb25zZSAqKT4mJikgY29uc3QgZmluYWw7CiAKICAgICB2b2lkIGRp
c3BhdGNoRGlkRGlzcGF0Y2hPbmxvYWRFdmVudHMoKSBmaW5hbDsKICAgICB2b2lkIGRpc3BhdGNo
RGlkUmVjZWl2ZVNlcnZlclJlZGlyZWN0Rm9yUHJvdmlzaW9uYWxMb2FkKCkgZmluYWw7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50Lm1tCmluZGV4IGZiYWVhOGVhNjg2OGRhODEyNGMwMTEyYjUwYjJj
ZDQ1NWU3MTVmNjguLjcxYTcxNWIzN2ZhNWU2YzVmNzQ0NGUyMzdjODJkMTU5Y2UwODhhZDEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1l
TG9hZGVyQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCkBAIC0zMzYsNyArMzM2LDcgQEAgYm9vbCBXZWJG
cmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUo
V2ViQ29yZTo6RG9jdW0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3QodW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojph
c3NpZ25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFdlYlZpZXcgKndl
YlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVs
ZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVz
b3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2ViVmlldyk7CkBAIC0zNTYsNyArMzU2
LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6YXNzaWduSWRlbnRpZmllclRvSW5pdGlh
bFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGkKICAgICBbd2ViVmlldyBfYWRkT2JqZWN0Om9i
amVjdC5nZXQoKSBmb3JJZGVudGlmaWVyOmlkZW50aWZpZXJdOwogfQogCi12b2lkIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExv
YWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRS
ZXF1ZXN0KFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNl
TG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2Up
CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7
CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0
aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJW
aWV3KTsKQEAgLTM4Niw3ICszODYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZAogICAgICAg
ICByZXF1ZXN0LnVwZGF0ZUZyb21EZWxlZ2F0ZVByZXNlcnZpbmdPbGRQcm9wZXJ0aWVzKFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdChuZXdVUkxSZXF1ZXN0KSk7CiB9CiAKLWJvb2wgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK2Jvb2wgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0
KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1l
bnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMo
d2ViVmlldyk7CkBAIC0zOTksNyArMzk5LDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
c2hvdWxkVXNlQ3JlZGVudGlhbFN0b3JhZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGwKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hE
aWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIq
IGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZSYgY2hhbGxlbmdlKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoV2ViQ29yZTo6RG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIGNvbnN0IFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiBjaGFsbGVuZ2Up
CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7
CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0
aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJW
aWV3KTsKQEAgLTQyMCw3ICs0MjAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEbwogfQogCiAj
aWYgVVNFKFBST1RFQ1RJT05fU1BBQ0VfQVVUSF9DQUxMQkFDSykKLWJvb2wgV2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29yZTo6
RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKK2Jvb2wgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmNhbkF1dGhlbnRpY2F0ZUFnYWluc3RQcm90ZWN0aW9uU3BhY2UoV2ViQ29y
ZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlm
aWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlByb3RlY3Rpb25TcGFjZSYgcHJvdGVjdGlv
blNwYWNlKQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUu
Z2V0KCkpOwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBs
ZW1lbnRhdGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlv
bnMod2ViVmlldyk7CkBAIC00NDEsNyArNDQxLDcgQEAgYm9vbCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6Y2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25TcGFjZShXZWJDb3JlOjpEb2N1bWUK
ICNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLVJldGFpblB0cjxDRkRpY3Rpb25h
cnlSZWY+IFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpjb25uZWN0aW9uUHJvcGVydGllcyhXZWJDb3Jl
OjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCitSZXRh
aW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y29ubmVjdGlvblBy
b3BlcnRpZXMoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9
IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgaWQgcmVzb3VyY2UgPSBbd2ViVmll
dyBfb2JqZWN0Rm9ySWRlbnRpZmllcjppZGVudGlmaWVyXTsKQEAgLTQ2OCw3ICs0NjgsNyBAQCBi
b29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRQYWludEJyb2tlbkltYWdlKGNvbnN0IFVS
TCYgaW1hZ2VVUkwpIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgV2ViRnJhbWVM
b2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50
TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVy
LCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CiAgICAgV2ViVmlldyAqd2ViVmll
dyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0
ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJj
ZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTQ4Niw3ICs0ODYsNyBA
QCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciogbAogICAgIH0KIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRl
ckNsaWVudDo6d2lsbENhY2hlUmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRl
ciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBOU0NhY2hlZFVSTFJlc3BvbnNlKiByZXNwb25z
ZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0NhY2hlZFVSTFJlc3BvbnNlICopPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKSBjb25zdAordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6d2lsbENhY2hl
UmVzcG9uc2UoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5TQ2FjaGVkVVJMUmVzcG9uc2UqIHJlc3Bv
bnNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKE5TQ2FjaGVkVVJMUmVzcG9uc2UgKik+JiYgY29t
cGxldGlvbkhhbmRsZXIpIGNvbnN0CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZp
ZXcobV93ZWJGcmFtZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0
aW9uQ2FjaGUqIGltcGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0
ZUltcGxlbWVudGF0aW9ucyh3ZWJWaWV3KTsKQEAgLTUwNiw3ICs1MDYsNyBAQCB2b2lkIFdlYkZy
YW1lTG9hZGVyQ2xpZW50Ojp3aWxsQ2FjaGVSZXNwb25zZShXZWJDb3JlOjpEb2N1bWVudExvYWRl
ciogbG9hZGVyLCB1bgogICAgIGNvbXBsZXRpb25IYW5kbGVyKHJlc3BvbnNlKTsKIH0KIAotdm9p
ZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChX
ZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGludCBkYXRhTGVuZ3RoKQordm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRS
ZWNlaXZlQ29udGVudExlbmd0aChXZWJDb3JlOjpEb2N1bWVudExvYWRlciogbG9hZGVyLCBXZWJD
b3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgaW50IGRhdGFMZW5ndGgp
CiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFtZS5nZXQoKSk7
CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGltcGxlbWVudGF0
aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0aW9ucyh3ZWJW
aWV3KTsKQEAgLTUyOCw3ICs1MjgsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZEZpbmlzaERhdGFEZXRlY3Rpb24oTlNBcnJheSAqKQogfQogI2VuZGlmCiAKLXZvaWQg
V2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhXZWJDb3JlOjpE
b2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdl
YkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9j
dW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCiB7CiAgICAgV2ViVmlldyAqd2ViVmlldyA9IGdldFdlYlZpZXcobV93ZWJGcmFt
ZS5nZXQoKSk7CiAgICAgV2ViUmVzb3VyY2VEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGUqIGlt
cGxlbWVudGF0aW9ucyA9IFdlYlZpZXdHZXRSZXNvdXJjZUxvYWREZWxlZ2F0ZUltcGxlbWVudGF0
aW9ucyh3ZWJWaWV3KTsKQEAgLTU1MCw3ICs1NTAsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxv
YQogICAgIHN0YXRpY19jYXN0PFdlYkRvY3VtZW50TG9hZGVyTWFjKj4obG9hZGVyKS0+ZGVjcmVh
c2VMb2FkQ291bnQoaWRlbnRpZmllcik7CiB9CiAKLXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBl
cnJvcikKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmFpbExvYWRpbmco
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9y
KQogewogICAgIFdlYlZpZXcgKndlYlZpZXcgPSBnZXRXZWJWaWV3KG1fd2ViRnJhbWUuZ2V0KCkp
OwogICAgIFdlYlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRh
dGlvbnMgPSBXZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMod2Vi
Vmlldyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRv
Y3VtZW50TG9hZGVyTWFjLmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkRv
Y3VtZW50TG9hZGVyTWFjLmgKaW5kZXggZTgwMzE0YjJhMDg5NDg0YTRhMmU0OWU2MDk3NGZlNjA5
N2IxZjc4ZS4uNjAyZmJjMjBmNWUyZjAwMmZiYmU4OGFiZTVkYmZhMjZiNTAwNTU0NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1bWVudExvYWRlck1h
Yy5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRG9jdW1lbnRMb2Fk
ZXJNYWMuaApAQCAtMjcsNiArMjcsNyBAQAogICovCiAKICNpbXBvcnQgPFdlYkNvcmUvRG9jdW1l
bnRMb2FkZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLmg+
CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAjaW1wb3J0IDx3dGYvSGFzaFNldC5oPgogCkBA
IC00OCw4ICs0OSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGRldGFjaERhdGFTb3VyY2UoKTsKICAg
ICBXZWJEYXRhU291cmNlICpkYXRhU291cmNlKCkgY29uc3Q7CiAKLSAgICB2b2lkIGluY3JlYXNl
TG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7Ci0gICAgdm9pZCBkZWNyZWFzZUxv
YWRDb3VudCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOworICAgIHZvaWQgaW5jcmVhc2VMb2Fk
Q291bnQoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRlY3Jl
YXNlTG9hZENvdW50KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcik7CiAKIHByaXZh
dGU6CiAgICAgV2ViRG9jdW1lbnRMb2FkZXJNYWMoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1
ZXN0JiwgY29uc3QgV2ViQ29yZTo6U3Vic3RpdHV0ZURhdGEmKTsKQEAgLTY0LDUgKzY1LDUgQEAg
cHJpdmF0ZToKICAgICBib29sIG1faXNEYXRhU291cmNlUmV0YWluZWQ7CiAgICAgUmV0YWluUHRy
PGlkPiBtX3Jlc291cmNlTG9hZERlbGVnYXRlOwogICAgIFJldGFpblB0cjxpZD4gbV9kb3dubG9h
ZERlbGVnYXRlOwotICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV9sb2FkaW5nUmVzb3VyY2Vz
OworICAgIEhhc2hTZXQ8V2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyPiBtX2xvYWRp
bmdSZXNvdXJjZXM7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Vmlldy9XZWJEb2N1bWVudExvYWRlck1hYy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViRG9jdW1lbnRMb2FkZXJNYWMubW0KaW5kZXggZDJlYmNiMDAxZGY2YTdlNzQwNTI2
NzM5MzZlOTc1NzMzMjEwYmM3MC4uNTFiM2RjZWQzMWFiMTMxMTI1OTgxOTc5OGMyZmNiZGIwOWM0
NTRkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEb2N1
bWVudExvYWRlck1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YkRvY3VtZW50TG9hZGVyTWFjLm1tCkBAIC05Miw3ICs5Miw3IEBAIHZvaWQgV2ViRG9jdW1lbnRM
b2FkZXJNYWM6OmRldGFjaEZyb21GcmFtZSgpCiAgICAgLy8gZnJhbWUgaXMgbm90IGF0dGFjaGVk
PwogfQogCi12b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjppbmNyZWFzZUxvYWRDb3VudCh1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIpCit2b2lkIFdlYkRvY3VtZW50TG9hZGVyTWFjOjppbmNyZWFz
ZUxvYWRDb3VudChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikK
IHsKICAgICBBU1NFUlQobV9kYXRhU291cmNlKTsKIApAQCAtMTAzLDkgKzEwMyw5IEBAIHZvaWQg
V2ViRG9jdW1lbnRMb2FkZXJNYWM6OmluY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllcikKICAgICByZXRhaW5EYXRhU291cmNlKCk7CiB9CiAKLXZvaWQgV2ViRG9jdW1lbnRM
b2FkZXJNYWM6OmRlY3JlYXNlTG9hZENvdW50KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikKK3Zv
aWQgV2ViRG9jdW1lbnRMb2FkZXJNYWM6OmRlY3JlYXNlTG9hZENvdW50KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyKQogewotICAgIEhhc2hTZXQ8dW5zaWduZWQg
bG9uZz46Oml0ZXJhdG9yIGl0ID0gbV9sb2FkaW5nUmVzb3VyY2VzLmZpbmQoaWRlbnRpZmllcik7
CisgICAgYXV0byBpdCA9IG1fbG9hZGluZ1Jlc291cmNlcy5maW5kKGlkZW50aWZpZXIpOwogICAg
IAogICAgIC8vIEl0IGlzIHZhbGlkIGZvciBhIGxvYWQgdG8gYmUgY2FuY2VsbGVkIGJlZm9yZSBp
dCdzIHN0YXJ0ZWQuCiAgICAgaWYgKGl0ID09IG1fbG9hZGluZ1Jlc291cmNlcy5lbmQoKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFs
LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXdJbnRlcm5hbC5oCmlu
ZGV4IGUxZmRkNDAwZjFiZTc1ZjdkOTUxNzBlNjc0MDNkNDRlZmMxNGRhZjUuLmE0N2RhMmNmNGQ3
NDk0OTYwZjVjNTA4ZjIyYjdmMTUwYTI3ZDhkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlld0ludGVybmFsLmgKKysrIGIvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3SW50ZXJuYWwuaApAQCAtNDIsNiArNDIsNyBAQAogI2lt
cG9ydCA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbXBvcnQgPFdlYkNvcmUv
TGF5b3V0TWlsZXN0b25lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BsYXliYWNrVGFyZ2V0Q2xpZW50
Q29udGV4dElkZW50aWZpZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oPgog
I2ltcG9ydCA8V2ViQ29yZS9UZXh0SW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1RleHRJ
bmRpY2F0b3JXaW5kb3cuaD4KQEAgLTI1MCw5ICsyNTEsMTEgQEAgV2ViTGF5b3V0TWlsZXN0b25l
cyBraXRMYXlvdXRNaWxlc3RvbmVzKE9wdGlvblNldDxXZWJDb3JlOjpMYXlvdXRNaWxlc3RvbmU+
KTsKIC0gKHZvaWQpcmVtb3ZlUGx1Z2luSW5zdGFuY2VWaWV3c0ZvcjooV2ViRnJhbWUqKXdlYkZy
YW1lOwogI2VuZGlmCiAKLS0gKHZvaWQpX2FkZE9iamVjdDooaWQpb2JqZWN0IGZvcklkZW50aWZp
ZXI6KHVuc2lnbmVkIGxvbmcpaWRlbnRpZmllcjsKLS0gKGlkKV9vYmplY3RGb3JJZGVudGlmaWVy
Oih1bnNpZ25lZCBsb25nKWlkZW50aWZpZXI7Ci0tICh2b2lkKV9yZW1vdmVPYmplY3RGb3JJZGVu
dGlmaWVyOih1bnNpZ25lZCBsb25nKWlkZW50aWZpZXI7CisjaWZkZWYgX19jcGx1c3BsdXMKKy0g
KHZvaWQpX2FkZE9iamVjdDooaWQpb2JqZWN0IGZvcklkZW50aWZpZXI6KFdlYkNvcmU6OlJlc291
cmNlTG9hZGVySWRlbnRpZmllcilpZGVudGlmaWVyOworLSAoaWQpX29iamVjdEZvcklkZW50aWZp
ZXI6KFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllcilpZGVudGlmaWVyOworLSAodm9p
ZClfcmVtb3ZlT2JqZWN0Rm9ySWRlbnRpZmllcjooV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVu
dGlmaWVyKWlkZW50aWZpZXI7CisjZW5kaWYKIAogLSAodm9pZClfc2V0Wm9vbU11bHRpcGxpZXI6
KGZsb2F0KW11bHRpcGxpZXIgaXNUZXh0T25seTooQk9PTClpc1RleHRPbmx5OwogLSAoZmxvYXQp
X3pvb21NdWx0aXBsaWVyOihCT09MKWlzVGV4dE9ubHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5jcHAKaW5kZXggMjg5NTNkNmY2ZGI0M2ExYjM2NjQyOTJkMzY3ZTZiN2UwNmMwNjQ4YS4uNTg4
OTkyZDRhYWZlNWZjODM5YjY1NGRjZWRhODkyZGQ3MDM1ODIzYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmNwcApAQCAtMTc3LDcgKzE3Nyw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OmRpc3BhdGNoRGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVy
CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojphc3Np
Z25JZGVudGlmaWVyVG9Jbml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKK3Zv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0
KFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7CiAgICAgV2ViVmlldyogd2Vi
VmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9h
ZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKQEAgLTE4NSwxMCArMTg1LDEwIEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0
KHVuc2lnbmVkIGxvbmcgaWRlbnRpCiAgICAgICAgIHJldHVybjsKIAogICAgIENPTVB0cjxXZWJN
dXRhYmxlVVJMUmVxdWVzdD4gd2ViVVJMUmVxdWVzdChBZG9wdENPTSwgV2ViTXV0YWJsZVVSTFJl
cXVlc3Q6OmNyZWF0ZUluc3RhbmNlKHJlcXVlc3QpKTsKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0
ZS0+aWRlbnRpZmllckZvckluaXRpYWxSZXF1ZXN0KHdlYlZpZXcsIHdlYlVSTFJlcXVlc3QuZ2V0
KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgaWRlbnRpZmllcik7CisgICAgcmVzb3VyY2VM
b2FkRGVsZWdhdGUtPmlkZW50aWZpZXJGb3JJbml0aWFsUmVxdWVzdCh3ZWJWaWV3LCB3ZWJVUkxS
ZXF1ZXN0LmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksIGlkZW50aWZpZXIudG9VSW50
NjQoKSk7CiB9CiAKLWJvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRp
YWxTdG9yYWdlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
cikKK2Jvb2wgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OnNob3VsZFVzZUNyZWRlbnRpYWxTdG9yYWdl
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyKQogewogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBtX3dlYkZyYW1lLT53ZWJWaWV3KCk7CiAg
ICAgQ09NUHRyPElXZWJSZXNvdXJjZUxvYWREZWxlZ2F0ZT4gcmVzb3VyY2VMb2FkRGVsZWdhdGU7
CkBAIC0yMDAsMTMgKzIwMCwxMyBAQCBib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRV
c2VDcmVkZW50aWFsU3RvcmFnZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bgogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKIAogICAgIEJPT0wgc2hvdWxkVXNlOwotICAgIGlmIChTVUNDRUVERUQocmVz
b3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91bGRVc2VDcmVkZW50aWFsU3RvcmFnZSh3ZWJW
aWV3LCBpZGVudGlmaWVyLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZzaG91bGRVc2UpKSkK
KyAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVnYXRlUHJpdmF0ZS0+c2hvdWxkVXNl
Q3JlZGVudGlhbFN0b3JhZ2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCBnZXRXZWJE
YXRhU291cmNlKGxvYWRlciksICZzaG91bGRVc2UpKSkKICAgICAgICAgcmV0dXJuIHNob3VsZFVz
ZTsKIAogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciog
bG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlJiBjaGFsbGVuZ2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERp
ZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBS
ZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgQXV0aGVudGljYXRpb25D
aGFsbGVuZ2UmIGNoYWxsZW5nZSkKIHsKICAgICBBU1NFUlQoY2hhbGxlbmdlLmF1dGhlbnRpY2F0
aW9uQ2xpZW50KCkpOwogCkBAIC0yMTQsNyArMjE0LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNs
aWVudDo6ZGlzcGF0Y2hEaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoRG9jdW1lbnRM
b2EKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxl
Z2F0ZTsKICAgICBpZiAoU1VDQ0VFREVEKHdlYlZpZXctPnJlc291cmNlTG9hZERlbGVnYXRlKCZy
ZXNvdXJjZUxvYWREZWxlZ2F0ZSkpKSB7CiAgICAgICAgIENPTVB0cjxXZWJVUkxBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZT4gd2ViQ2hhbGxlbmdlKEFkb3B0Q09NLCBXZWJVUkxBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZTo6Y3JlYXRlSW5zdGFuY2UoY2hhbGxlbmdlKSk7Ci0gICAgICAgIGlmIChTVUND
RUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZSh3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJDaGFsbGVuZ2UuZ2V0KCksIGdldFdlYkRhdGFT
b3VyY2UobG9hZGVyKSkpKQorICAgICAgICBpZiAoU1VDQ0VFREVEKHJlc291cmNlTG9hZERlbGVn
YXRlLT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uod2ViVmlldywgaWRlbnRpZmll
ci50b1VJbnQ2NCgpLCB3ZWJDaGFsbGVuZ2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVy
KSkpKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMjIzLDcgKzIyMyw3IEBAIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKERvY3VtZW50TG9hCiAgICAgY2hhbGxlbmdlLmF1dGhlbnRpY2F0aW9uQ2xpZW50
KCktPnJlY2VpdmVkUmVxdWVzdFRvQ29udGludWVXaXRob3V0Q3JlZGVudGlhbChjaGFsbGVuZ2Up
OwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVz
dChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNw
b25zZSkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlm
aWVyLCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJl
ZGlyZWN0UmVzcG9uc2UpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndl
YlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxv
YWREZWxlZ2F0ZTsKQEAgLTIzNCw3ICsyMzQsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZwog
ICAgIENPTVB0cjxXZWJVUkxSZXNwb25zZT4gd2ViVVJMUmVkaXJlY3RSZXNwb25zZShBZG9wdENP
TSwgV2ViVVJMUmVzcG9uc2U6OmNyZWF0ZUluc3RhbmNlKHJlZGlyZWN0UmVzcG9uc2UpKTsKIAog
ICAgIENPTVB0cjxJV2ViVVJMUmVxdWVzdD4gbmV3V2ViVVJMUmVxdWVzdDsKLSAgICBpZiAoRkFJ
TEVEKHJlc291cmNlTG9hZERlbGVnYXRlLT53aWxsU2VuZFJlcXVlc3Qod2ViVmlldywgaWRlbnRp
Zmllciwgd2ViVVJMUmVxdWVzdC5nZXQoKSwgd2ViVVJMUmVkaXJlY3RSZXNwb25zZS5nZXQoKSwg
Z2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpLCAmbmV3V2ViVVJMUmVxdWVzdCkpKQorICAgIGlmIChG
QUlMRUQocmVzb3VyY2VMb2FkRGVsZWdhdGUtPndpbGxTZW5kUmVxdWVzdCh3ZWJWaWV3LCBpZGVu
dGlmaWVyLnRvVUludDY0KCksIHdlYlVSTFJlcXVlc3QuZ2V0KCksIHdlYlVSTFJlZGlyZWN0UmVz
cG9uc2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJm5ld1dlYlVSTFJlcXVlc3Qp
KSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHdlYlVSTFJlcXVlc3QgPT0gbmV3V2ViVVJM
UmVxdWVzdCkKQEAgLTI1Miw3ICsyNTIsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpk
aXNwYXRjaFdpbGxTZW5kUmVxdWVzdChEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZwogICAg
IHJlcXVlc3QgPSBuZXdXZWJVUkxSZXF1ZXN0SW1wbC0+cmVzb3VyY2VSZXF1ZXN0KCk7CiB9CiAK
LXZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKERv
Y3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCit2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxv
YWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9u
c2UpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAg
ICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsK
QEAgLTI2MCwzMCArMjYwLDMwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNo
RGlkUmVjZWl2ZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuCiAgICAgICAgIHJl
dHVybjsKIAogICAgIENPTVB0cjxXZWJVUkxSZXNwb25zZT4gd2ViVVJMUmVzcG9uc2UoQWRvcHRD
T00sIFdlYlVSTFJlc3BvbnNlOjpjcmVhdGVJbnN0YW5jZShyZXNwb25zZSkpOwotICAgIHJlc291
cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlUmVzcG9uc2Uod2ViVmlldywgaWRlbnRpZmllciwg
d2ViVVJMUmVzcG9uc2UuZ2V0KCksIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSk7CisgICAgcmVz
b3VyY2VMb2FkRGVsZWdhdGUtPmRpZFJlY2VpdmVSZXNwb25zZSh3ZWJWaWV3LCBpZGVudGlmaWVy
LnRvVUludDY0KCksIHdlYlVSTFJlc3BvbnNlLmdldCgpLCBnZXRXZWJEYXRhU291cmNlKGxvYWRl
cikpOwogfQogCi12b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVD
b250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgaW50IGxlbmd0aCkKK3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgUmVzb3VyY2VMb2Fk
ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIGludCBsZW5ndGgpCiB7CiAgICAgV2ViVmlldyogd2Vi
VmlldyA9IG1fd2ViRnJhbWUtPndlYlZpZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9h
ZERlbGVnYXRlPiByZXNvdXJjZUxvYWREZWxlZ2F0ZTsKICAgICBpZiAoRkFJTEVEKHdlYlZpZXct
PnJlc291cmNlTG9hZERlbGVnYXRlKCZyZXNvdXJjZUxvYWREZWxlZ2F0ZSkpKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkUmVjZWl2ZUNvbnRlbnRMZW5n
dGgod2ViVmlldywgaWRlbnRpZmllciwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlcikp
OworICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5kaWRSZWNlaXZlQ29udGVudExlbmd0aCh3ZWJW
aWV3LCBpZGVudGlmaWVyLnRvVUludDY0KCksIGxlbmd0aCwgZ2V0V2ViRGF0YVNvdXJjZShsb2Fk
ZXIpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGaW5pc2hM
b2FkaW5nKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcikK
K3ZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkRmluaXNoTG9hZGluZyhEb2N1
bWVudExvYWRlciogbG9hZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllcikK
IHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+d2ViVmlldygpOwogICAgIENP
TVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNlTG9hZERlbGVnYXRlOwogICAg
IGlmIChGQUlMRUQod2ViVmlldy0+cmVzb3VyY2VMb2FkRGVsZWdhdGUoJnJlc291cmNlTG9hZERl
bGVnYXRlKSkpCiAgICAgICAgIHJldHVybjsKIAotICAgIHJlc291cmNlTG9hZERlbGVnYXRlLT5k
aWRGaW5pc2hMb2FkaW5nRnJvbURhdGFTb3VyY2Uod2ViVmlldywgaWRlbnRpZmllciwgZ2V0V2Vi
RGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxlZ2F0ZS0+ZGlkRmluaXNo
TG9hZGluZ0Zyb21EYXRhU291cmNlKHdlYlZpZXcsIGlkZW50aWZpZXIudG9VSW50NjQoKSwgZ2V0
V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKIH0KIAotdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6
ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0IFJlc291cmNlRXJyb3ImIGVycm9yKQordm9pZCBXZWJGcmFt
ZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9h
ZGVyLCBSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VF
cnJvciYgZXJyb3IpCiB7CiAgICAgV2ViVmlldyogd2ViVmlldyA9IG1fd2ViRnJhbWUtPndlYlZp
ZXcoKTsKICAgICBDT01QdHI8SVdlYlJlc291cmNlTG9hZERlbGVnYXRlPiByZXNvdXJjZUxvYWRE
ZWxlZ2F0ZTsKQEAgLTI5MSwxMSArMjkxLDExIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6
OmRpc3BhdGNoRGlkRmFpbExvYWRpbmcoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduCiAg
ICAgICAgIHJldHVybjsKIAogICAgIENPTVB0cjxXZWJFcnJvcj4gd2ViRXJyb3IoQWRvcHRDT00s
IFdlYkVycm9yOjpjcmVhdGVJbnN0YW5jZShlcnJvcikpOwotICAgIHJlc291cmNlTG9hZERlbGVn
YXRlLT5kaWRGYWlsTG9hZGluZ1dpdGhFcnJvcih3ZWJWaWV3LCBpZGVudGlmaWVyLCB3ZWJFcnJv
ci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKKyAgICByZXNvdXJjZUxvYWREZWxl
Z2F0ZS0+ZGlkRmFpbExvYWRpbmdXaXRoRXJyb3Iod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2
NCgpLCB3ZWJFcnJvci5nZXQoKSwgZ2V0V2ViRGF0YVNvdXJjZShsb2FkZXIpKTsKIH0KIAogI2lm
IFVTRShDRlVSTENPTk5FQ1RJT04pCi1ib29sIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzaG91bGRD
YWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIGNvbnN0IHVuc2lnbmVkIGNo
YXIqIGRhdGEsIGNvbnN0IHVuc2lnbmVkIGxvbmcgbG9uZyBsZW5ndGgpCitib29sIFdlYkZyYW1l
TG9hZGVyQ2xpZW50OjpzaG91bGRDYWNoZVJlc3BvbnNlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIs
IFJlc291cmNlTG9hZGVySWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3Bv
bnNlJiByZXNwb25zZSwgY29uc3QgdW5zaWduZWQgY2hhciogZGF0YSwgY29uc3QgdW5zaWduZWQg
bG9uZyBsb25nIGxlbmd0aCkKIHsKICAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gbV93ZWJGcmFtZS0+
d2ViVmlldygpOwogICAgIENPTVB0cjxJV2ViUmVzb3VyY2VMb2FkRGVsZWdhdGU+IHJlc291cmNl
TG9hZERlbGVnYXRlOwpAQCAtMzA4LDcgKzMwOCw3IEBAIGJvb2wgV2ViRnJhbWVMb2FkZXJDbGll
bnQ6OnNob3VsZENhY2hlUmVzcG9uc2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQK
IAogICAgIENPTVB0cjxJV2ViVVJMUmVzcG9uc2U+IHVybFJlc3BvbnNlKEFkb3B0Q09NLCBXZWJV
UkxSZXNwb25zZTo6Y3JlYXRlSW5zdGFuY2UocmVzcG9uc2UpKTsKICAgICBCT09MIHNob3VsZENh
Y2hlOwotICAgIGlmIChTVUNDRUVERUQocmVzb3VyY2VMb2FkRGVsZWdhdGVQcml2YXRlLT5zaG91
bGRDYWNoZVJlc3BvbnNlKHdlYlZpZXcsIGlkZW50aWZpZXIsIHVybFJlc3BvbnNlLmdldCgpLCBk
YXRhLCBsZW5ndGgsIGdldFdlYkRhdGFTb3VyY2UobG9hZGVyKSwgJnNob3VsZENhY2hlKSkpCisg
ICAgaWYgKFNVQ0NFRURFRChyZXNvdXJjZUxvYWREZWxlZ2F0ZVByaXZhdGUtPnNob3VsZENhY2hl
UmVzcG9uc2Uod2ViVmlldywgaWRlbnRpZmllci50b1VJbnQ2NCgpLCB1cmxSZXNwb25zZS5nZXQo
KSwgZGF0YSwgbGVuZ3RoLCBnZXRXZWJEYXRhU291cmNlKGxvYWRlciksICZzaG91bGRDYWNoZSkp
KQogICAgICAgICByZXR1cm4gc2hvdWxkQ2FjaGU7CiAKICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5oCmluZGV4IGViN2YyMzNjZjRmMmQ0M2RlMTc3NmUyYjBkMzYyZmFj
MmRlYWQ0NDAuLjFlMzAzMWY5YjUwMmMzZGQ4OGE4YTU0OGE0N2M3ZjJiNmI5OTMwZTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuaApAQCAtNjAsMTcgKzYwLDE3IEBAIHB1YmxpYzoKICAgICB2
b2lkIGRldGFjaGVkRnJvbVBhcmVudDMoKSBvdmVycmlkZTsKIAogICAgIHZvaWQgY29udmVydE1h
aW5SZXNvdXJjZUxvYWRUb0Rvd25sb2FkKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25z
ZSYpIG92ZXJyaWRlOwotICAgIHZvaWQgYXNzaWduSWRlbnRpZmllclRvSW5pdGlhbFJlcXVlc3Qo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwotCi0gICAgdm9pZCBkaXNwYXRj
aFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVz
b3VyY2VSZXNwb25zZSYgcmVkaXJlY3RSZXNwb25zZSkgb3ZlcnJpZGU7Ci0gICAgYm9vbCBzaG91
bGRVc2VDcmVkZW50aWFsU3RvcmFnZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllcikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVk
IGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2Um
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6
OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7Ci0gICAgdm9pZCBkaXNwYXRjaERp
ZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpIG92ZXJyaWRlOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6UmVzb3VyY2VFcnJvciYpIG92ZXJyaWRlOworICAgIHZvaWQgYXNzaWduSWRlbnRpZmll
clRvSW5pdGlhbFJlcXVlc3QoV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpEb2N1bWVudExvYWRlciosIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92
ZXJyaWRlOworCisgICAgdm9pZCBkaXNwYXRjaFdpbGxTZW5kUmVxdWVzdChXZWJDb3JlOjpEb2N1
bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRpZmllciwgV2ViQ29yZTo6
UmVzb3VyY2VSZXF1ZXN0JiwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYgcmVkaXJl
Y3RSZXNwb25zZSkgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRVc2VDcmVkZW50aWFsU3RvcmFn
ZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9hZGVySWRlbnRp
Zmllcikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZShXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmKSBv
dmVycmlkZTsKKyAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OkRv
Y3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikgb3ZlcnJpZGU7CisgICAgdm9pZCBkaXNwYXRjaERp
ZFJlY2VpdmVDb250ZW50TGVuZ3RoKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkZXJJZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCkgb3ZlcnJpZGU7CisgICAg
dm9pZCBkaXNwYXRjaERpZEZpbmlzaExvYWRpbmcoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXIqLCBX
ZWJDb3JlOjpSZXNvdXJjZUxvYWRlcklkZW50aWZpZXIpIG92ZXJyaWRlOworICAgIHZvaWQgZGlz
cGF0Y2hEaWRGYWlsTG9hZGluZyhXZWJDb3JlOjpEb2N1bWVudExvYWRlciosIFdlYkNvcmU6OlJl
c291cmNlTG9hZGVySWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpIG92
ZXJyaWRlOwogI2lmIFVTRShDRlVSTENPTk5FQ1RJT04pCi0gICAgYm9vbCBzaG91bGRDYWNoZVJl
c3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29uc3QgdW5zaWduZWQgY2hhciog
ZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91
bGRDYWNoZVJlc3BvbnNlKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyKiwgV2ViQ29yZTo6UmVzb3Vy
Y2VMb2FkZXJJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJiwgY29u
c3QgdW5zaWduZWQgY2hhciogZGF0YSwgdW5zaWduZWQgbG9uZyBsb25nIGxlbmd0aCkgb3ZlcnJp
ZGU7CiAjZW5kaWYKIAogICAgIHZvaWQgZGlzcGF0Y2hEaWREaXNwYXRjaE9ubG9hZEV2ZW50cygp
IG92ZXJyaWRlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>